From 37108af1c51bf8e97d9a0781d5a904355376bc95 Mon Sep 17 00:00:00 2001 From: "ubiquity-os[bot]" Date: Wed, 9 Oct 2024 08:47:37 +0000 Subject: [PATCH 01/29] chore: updated generated configuration --- manifest.json | 108 +++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 84 insertions(+), 24 deletions(-) diff --git a/manifest.json b/manifest.json index 6e5df7d0..e82e98f6 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,9 @@ { "name": "Conversation rewards", "description": "Generate rewards for on topic conversation for closing issues as complete.", - "ubiquity:listeners": ["issues.closed"], + "ubiquity:listeners": [ + "issues.closed" + ], "configuration": { "default": {}, "type": "object", @@ -72,12 +74,17 @@ "type": "string" } }, - "required": ["model", "endpoint"] + "required": [ + "model", + "endpoint" + ] }, "multipliers": { "default": [ { - "role": ["ISSUE_SPECIFICATION"], + "role": [ + "ISSUE_SPECIFICATION" + ], "relevance": 1 } ], @@ -256,11 +263,16 @@ "type": "number" } }, - "required": ["role"] + "required": [ + "role" + ] } } }, - "required": ["openAi", "multipliers"] + "required": [ + "openAi", + "multipliers" + ] }, { "type": "null" @@ -278,7 +290,9 @@ "type": "boolean" } }, - "required": ["redeemTask"] + "required": [ + "redeemTask" + ] }, { "type": "null" @@ -308,70 +322,90 @@ "minItems": 1, "default": [ { - "role": ["ISSUE_SPECIFICATION"], + "role": [ + "ISSUE_SPECIFICATION" + ], "multiplier": 1, "rewards": { "wordValue": 0.1 } }, { - "role": ["ISSUE_AUTHOR"], + "role": [ + "ISSUE_AUTHOR" + ], "multiplier": 1, "rewards": { "wordValue": 0.2 } }, { - "role": ["ISSUE_ASSIGNEE"], + "role": [ + "ISSUE_ASSIGNEE" + ], "multiplier": 0, "rewards": { "wordValue": 0 } }, { - "role": ["ISSUE_COLLABORATOR"], + "role": [ + "ISSUE_COLLABORATOR" + ], "multiplier": 1, "rewards": { "wordValue": 0.1 } }, { - "role": ["ISSUE_CONTRIBUTOR"], + "role": [ + "ISSUE_CONTRIBUTOR" + ], "multiplier": 0.25, "rewards": { "wordValue": 0.1 } }, { - "role": ["PULL_SPECIFICATION"], + "role": [ + "PULL_SPECIFICATION" + ], "multiplier": 0, "rewards": { "wordValue": 0 } }, { - "role": ["PULL_AUTHOR"], + "role": [ + "PULL_AUTHOR" + ], "multiplier": 2, "rewards": { "wordValue": 0.2 } }, { - "role": ["PULL_ASSIGNEE"], + "role": [ + "PULL_ASSIGNEE" + ], "multiplier": 1, "rewards": { "wordValue": 0.1 } }, { - "role": ["PULL_COLLABORATOR"], + "role": [ + "PULL_COLLABORATOR" + ], "multiplier": 1, "rewards": { "wordValue": 0.1 } }, { - "role": ["PULL_CONTRIBUTOR"], + "role": [ + "PULL_CONTRIBUTOR" + ], "multiplier": 0.25, "rewards": { "wordValue": 0.1 @@ -653,7 +687,10 @@ "type": "boolean" } }, - "required": ["score", "countWords"] + "required": [ + "score", + "countWords" + ] } } }, @@ -662,10 +699,17 @@ "type": "number" } }, - "required": ["html", "wordValue"] + "required": [ + "html", + "wordValue" + ] } }, - "required": ["role", "multiplier", "rewards"] + "required": [ + "role", + "multiplier", + "rewards" + ] } }, "wordCountExponent": { @@ -673,7 +717,10 @@ "type": "number" } }, - "required": ["multipliers", "wordCountExponent"] + "required": [ + "multipliers", + "wordCountExponent" + ] }, { "type": "null" @@ -708,7 +755,10 @@ "type": "boolean" } }, - "required": ["post", "debug"] + "required": [ + "post", + "debug" + ] }, { "type": "null" @@ -741,9 +791,19 @@ "type": "number" } }, - "required": ["maxAttempts", "delayMs"] + "required": [ + "maxAttempts", + "delayMs" + ] } }, - "required": ["logLevel", "evmNetworkId", "evmPrivateEncrypted", "erc20RewardToken", "incentives", "dataCollection"] + "required": [ + "logLevel", + "evmNetworkId", + "evmPrivateEncrypted", + "erc20RewardToken", + "incentives", + "dataCollection" + ] } -} +} \ No newline at end of file From 52d78f96dfa0e09229cdbf522a51afce6ae2d726 Mon Sep 17 00:00:00 2001 From: gentlementlegen Date: Mon, 7 Oct 2024 21:32:27 +0900 Subject: [PATCH 02/29] chore: minify build --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 7e6c286f..f31ba0fc 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,7 @@ "node": ">=20.10.0" }, "scripts": { - "build": "ncc build src/index.ts", + "build": "ncc build -m src/index.ts", "test": "jest --setupFiles dotenv/config --coverage", "start": "tsx src/index.ts", "format": "run-s format:lint format:prettier format:cspell", From 85110457a9e5361c7156a00850d7d10a413cde0f Mon Sep 17 00:00:00 2001 From: "ubiquity-os[bot]" Date: Mon, 7 Oct 2024 12:33:52 +0000 Subject: [PATCH 03/29] chore: updated dist --- dist/index.js | 398422 +---------------------------------------------- 1 file changed, 249 insertions(+), 398173 deletions(-) diff --git a/dist/index.js b/dist/index.js index 346fb81d..fb0b3763 100644 --- a/dist/index.js +++ b/dist/index.js @@ -1,398217 +1,293 @@ -/******/ (() => { // webpackBootstrap -/******/ var __webpack_modules__ = ({ - -/***/ 44914: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.issue = exports.issueCommand = void 0; -const os = __importStar(__nccwpck_require__(70857)); -const utils_1 = __nccwpck_require__(30302); -/** - * Commands - * - * Command Format: - * ::name key=value,key=value::message - * - * Examples: - * ::warning::This is the message - * ::set-env name=MY_VAR::some value - */ -function issueCommand(command, properties, message) { - const cmd = new Command(command, properties, message); - process.stdout.write(cmd.toString() + os.EOL); -} -exports.issueCommand = issueCommand; -function issue(name, message = '') { - issueCommand(name, {}, message); -} -exports.issue = issue; -const CMD_STRING = '::'; -class Command { - constructor(command, properties, message) { - if (!command) { - command = 'missing.command'; - } - this.command = command; - this.properties = properties; - this.message = message; - } - toString() { - let cmdStr = CMD_STRING + this.command; - if (this.properties && Object.keys(this.properties).length > 0) { - cmdStr += ' '; - let first = true; - for (const key in this.properties) { - if (this.properties.hasOwnProperty(key)) { - const val = this.properties[key]; - if (val) { - if (first) { - first = false; - } - else { - cmdStr += ','; - } - cmdStr += `${key}=${escapeProperty(val)}`; - } - } - } - } - cmdStr += `${CMD_STRING}${escapeData(this.message)}`; - return cmdStr; - } -} -function escapeData(s) { - return (0, utils_1.toCommandValue)(s) - .replace(/%/g, '%25') - .replace(/\r/g, '%0D') - .replace(/\n/g, '%0A'); -} -function escapeProperty(s) { - return (0, utils_1.toCommandValue)(s) - .replace(/%/g, '%25') - .replace(/\r/g, '%0D') - .replace(/\n/g, '%0A') - .replace(/:/g, '%3A') - .replace(/,/g, '%2C'); -} -//# sourceMappingURL=command.js.map - -/***/ }), +(()=>{var __webpack_modules__={44914:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};Object.defineProperty(Pt,"__esModule",{value:true});Pt.issue=Pt.issueCommand=void 0;const rn=an(en(70857));const In=en(30302);function issueCommand(Wt,Pt,en){const tn=new Command(Wt,Pt,en);process.stdout.write(tn.toString()+rn.EOL)}Pt.issueCommand=issueCommand;function issue(Wt,Pt=""){issueCommand(Wt,{},Pt)}Pt.issue=issue;const sn="::";class Command{constructor(Wt,Pt,en){if(!Wt){Wt="missing.command"}this.command=Wt;this.properties=Pt;this.message=en}toString(){let Wt=sn+this.command;if(this.properties&&Object.keys(this.properties).length>0){Wt+=" ";let Pt=true;for(const en in this.properties){if(this.properties.hasOwnProperty(en)){const tn=this.properties[en];if(tn){if(Pt){Pt=false}else{Wt+=","}Wt+=`${en}=${escapeProperty(tn)}`}}}}Wt+=`${sn}${escapeData(this.message)}`;return Wt}}function escapeData(Wt){return(0,In.toCommandValue)(Wt).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}function escapeProperty(Wt){return(0,In.toCommandValue)(Wt).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}},37484:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});Pt.platform=Pt.toPlatformPath=Pt.toWin32Path=Pt.toPosixPath=Pt.markdownSummary=Pt.summary=Pt.getIDToken=Pt.getState=Pt.saveState=Pt.group=Pt.endGroup=Pt.startGroup=Pt.info=Pt.notice=Pt.warning=Pt.error=Pt.debug=Pt.isDebug=Pt.setFailed=Pt.setCommandEcho=Pt.setOutput=Pt.getBooleanInput=Pt.getMultilineInput=Pt.getInput=Pt.addPath=Pt.setSecret=Pt.exportVariable=Pt.ExitCode=void 0;const In=en(44914);const sn=en(24753);const on=en(30302);const cn=an(en(70857));const dn=an(en(16928));const un=en(35306);var pn;(function(Wt){Wt[Wt["Success"]=0]="Success";Wt[Wt["Failure"]=1]="Failure"})(pn||(Pt.ExitCode=pn={}));function exportVariable(Wt,Pt){const en=(0,on.toCommandValue)(Pt);process.env[Wt]=en;const tn=process.env["GITHUB_ENV"]||"";if(tn){return(0,sn.issueFileCommand)("ENV",(0,sn.prepareKeyValueMessage)(Wt,Pt))}(0,In.issueCommand)("set-env",{name:Wt},en)}Pt.exportVariable=exportVariable;function setSecret(Wt){(0,In.issueCommand)("add-mask",{},Wt)}Pt.setSecret=setSecret;function addPath(Wt){const Pt=process.env["GITHUB_PATH"]||"";if(Pt){(0,sn.issueFileCommand)("PATH",Wt)}else{(0,In.issueCommand)("add-path",{},Wt)}process.env["PATH"]=`${Wt}${dn.delimiter}${process.env["PATH"]}`}Pt.addPath=addPath;function getInput(Wt,Pt){const en=process.env[`INPUT_${Wt.replace(/ /g,"_").toUpperCase()}`]||"";if(Pt&&Pt.required&&!en){throw new Error(`Input required and not supplied: ${Wt}`)}if(Pt&&Pt.trimWhitespace===false){return en}return en.trim()}Pt.getInput=getInput;function getMultilineInput(Wt,Pt){const en=getInput(Wt,Pt).split("\n").filter((Wt=>Wt!==""));if(Pt&&Pt.trimWhitespace===false){return en}return en.map((Wt=>Wt.trim()))}Pt.getMultilineInput=getMultilineInput;function getBooleanInput(Wt,Pt){const en=["true","True","TRUE"];const tn=["false","False","FALSE"];const nn=getInput(Wt,Pt);if(en.includes(nn))return true;if(tn.includes(nn))return false;throw new TypeError(`Input does not meet YAML 1.2 "Core Schema" specification: ${Wt}\n`+`Support boolean input list: \`true | True | TRUE | false | False | FALSE\``)}Pt.getBooleanInput=getBooleanInput;function setOutput(Wt,Pt){const en=process.env["GITHUB_OUTPUT"]||"";if(en){return(0,sn.issueFileCommand)("OUTPUT",(0,sn.prepareKeyValueMessage)(Wt,Pt))}process.stdout.write(cn.EOL);(0,In.issueCommand)("set-output",{name:Wt},(0,on.toCommandValue)(Pt))}Pt.setOutput=setOutput;function setCommandEcho(Wt){(0,In.issue)("echo",Wt?"on":"off")}Pt.setCommandEcho=setCommandEcho;function setFailed(Wt){process.exitCode=pn.Failure;error(Wt)}Pt.setFailed=setFailed;function isDebug(){return process.env["RUNNER_DEBUG"]==="1"}Pt.isDebug=isDebug;function debug(Wt){(0,In.issueCommand)("debug",{},Wt)}Pt.debug=debug;function error(Wt,Pt={}){(0,In.issueCommand)("error",(0,on.toCommandProperties)(Pt),Wt instanceof Error?Wt.toString():Wt)}Pt.error=error;function warning(Wt,Pt={}){(0,In.issueCommand)("warning",(0,on.toCommandProperties)(Pt),Wt instanceof Error?Wt.toString():Wt)}Pt.warning=warning;function notice(Wt,Pt={}){(0,In.issueCommand)("notice",(0,on.toCommandProperties)(Pt),Wt instanceof Error?Wt.toString():Wt)}Pt.notice=notice;function info(Wt){process.stdout.write(Wt+cn.EOL)}Pt.info=info;function startGroup(Wt){(0,In.issue)("group",Wt)}Pt.startGroup=startGroup;function endGroup(){(0,In.issue)("endgroup")}Pt.endGroup=endGroup;function group(Wt,Pt){return rn(this,void 0,void 0,(function*(){startGroup(Wt);let en;try{en=yield Pt()}finally{endGroup()}return en}))}Pt.group=group;function saveState(Wt,Pt){const en=process.env["GITHUB_STATE"]||"";if(en){return(0,sn.issueFileCommand)("STATE",(0,sn.prepareKeyValueMessage)(Wt,Pt))}(0,In.issueCommand)("save-state",{name:Wt},(0,on.toCommandValue)(Pt))}Pt.saveState=saveState;function getState(Wt){return process.env[`STATE_${Wt}`]||""}Pt.getState=getState;function getIDToken(Wt){return rn(this,void 0,void 0,(function*(){return yield un.OidcClient.getIDToken(Wt)}))}Pt.getIDToken=getIDToken;var mn=en(71847);Object.defineProperty(Pt,"summary",{enumerable:true,get:function(){return mn.summary}});var bn=en(71847);Object.defineProperty(Pt,"markdownSummary",{enumerable:true,get:function(){return bn.markdownSummary}});var Gn=en(31976);Object.defineProperty(Pt,"toPosixPath",{enumerable:true,get:function(){return Gn.toPosixPath}});Object.defineProperty(Pt,"toWin32Path",{enumerable:true,get:function(){return Gn.toWin32Path}});Object.defineProperty(Pt,"toPlatformPath",{enumerable:true,get:function(){return Gn.toPlatformPath}});Pt.platform=an(en(18968))},24753:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};Object.defineProperty(Pt,"__esModule",{value:true});Pt.prepareKeyValueMessage=Pt.issueFileCommand=void 0;const rn=an(en(76982));const In=an(en(79896));const sn=an(en(70857));const on=en(30302);function issueFileCommand(Wt,Pt){const en=process.env[`GITHUB_${Wt}`];if(!en){throw new Error(`Unable to find environment variable for file command ${Wt}`)}if(!In.existsSync(en)){throw new Error(`Missing file at path: ${en}`)}In.appendFileSync(en,`${(0,on.toCommandValue)(Pt)}${sn.EOL}`,{encoding:"utf8"})}Pt.issueFileCommand=issueFileCommand;function prepareKeyValueMessage(Wt,Pt){const en=`ghadelimiter_${rn.randomUUID()}`;const tn=(0,on.toCommandValue)(Pt);if(Wt.includes(en)){throw new Error(`Unexpected input: name should not contain the delimiter "${en}"`)}if(tn.includes(en)){throw new Error(`Unexpected input: value should not contain the delimiter "${en}"`)}return`${Wt}<<${en}${sn.EOL}${tn}${sn.EOL}${en}`}Pt.prepareKeyValueMessage=prepareKeyValueMessage},35306:function(Wt,Pt,en){"use strict";var tn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});Pt.OidcClient=void 0;const nn=en(54844);const an=en(44552);const rn=en(37484);class OidcClient{static createHttpClient(Wt=true,Pt=10){const en={allowRetries:Wt,maxRetries:Pt};return new nn.HttpClient("actions/oidc-client",[new an.BearerCredentialHandler(OidcClient.getRequestToken())],en)}static getRequestToken(){const Wt=process.env["ACTIONS_ID_TOKEN_REQUEST_TOKEN"];if(!Wt){throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_TOKEN env variable")}return Wt}static getIDTokenUrl(){const Wt=process.env["ACTIONS_ID_TOKEN_REQUEST_URL"];if(!Wt){throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable")}return Wt}static getCall(Wt){var Pt;return tn(this,void 0,void 0,(function*(){const en=OidcClient.createHttpClient();const tn=yield en.getJson(Wt).catch((Wt=>{throw new Error(`Failed to get ID Token. \n \n Error Code : ${Wt.statusCode}\n \n Error Message: ${Wt.message}`)}));const nn=(Pt=tn.result)===null||Pt===void 0?void 0:Pt.value;if(!nn){throw new Error("Response json body do not have ID Token field")}return nn}))}static getIDToken(Wt){return tn(this,void 0,void 0,(function*(){try{let Pt=OidcClient.getIDTokenUrl();if(Wt){const en=encodeURIComponent(Wt);Pt=`${Pt}&audience=${en}`}(0,rn.debug)(`ID token url is ${Pt}`);const en=yield OidcClient.getCall(Pt);(0,rn.setSecret)(en);return en}catch(Wt){throw new Error(`Error message: ${Wt.message}`)}}))}}Pt.OidcClient=OidcClient},31976:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};Object.defineProperty(Pt,"__esModule",{value:true});Pt.toPlatformPath=Pt.toWin32Path=Pt.toPosixPath=void 0;const rn=an(en(16928));function toPosixPath(Wt){return Wt.replace(/[\\]/g,"/")}Pt.toPosixPath=toPosixPath;function toWin32Path(Wt){return Wt.replace(/[/]/g,"\\")}Pt.toWin32Path=toWin32Path;function toPlatformPath(Wt){return Wt.replace(/[/\\]/g,rn.sep)}Pt.toPlatformPath=toPlatformPath},18968:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var In=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt.getDetails=Pt.isLinux=Pt.isMacOS=Pt.isWindows=Pt.arch=Pt.platform=void 0;const sn=In(en(70857));const on=an(en(95236));const getWindowsInfo=()=>rn(void 0,void 0,void 0,(function*(){const{stdout:Wt}=yield on.getExecOutput('powershell -command "(Get-CimInstance -ClassName Win32_OperatingSystem).Version"',undefined,{silent:true});const{stdout:Pt}=yield on.getExecOutput('powershell -command "(Get-CimInstance -ClassName Win32_OperatingSystem).Caption"',undefined,{silent:true});return{name:Pt.trim(),version:Wt.trim()}}));const getMacOsInfo=()=>rn(void 0,void 0,void 0,(function*(){var Wt,Pt,en,tn;const{stdout:nn}=yield on.getExecOutput("sw_vers",undefined,{silent:true});const an=(Pt=(Wt=nn.match(/ProductVersion:\s*(.+)/))===null||Wt===void 0?void 0:Wt[1])!==null&&Pt!==void 0?Pt:"";const rn=(tn=(en=nn.match(/ProductName:\s*(.+)/))===null||en===void 0?void 0:en[1])!==null&&tn!==void 0?tn:"";return{name:rn,version:an}}));const getLinuxInfo=()=>rn(void 0,void 0,void 0,(function*(){const{stdout:Wt}=yield on.getExecOutput("lsb_release",["-i","-r","-s"],{silent:true});const[Pt,en]=Wt.trim().split("\n");return{name:Pt,version:en}}));Pt.platform=sn.default.platform();Pt.arch=sn.default.arch();Pt.isWindows=Pt.platform==="win32";Pt.isMacOS=Pt.platform==="darwin";Pt.isLinux=Pt.platform==="linux";function getDetails(){return rn(this,void 0,void 0,(function*(){return Object.assign(Object.assign({},yield Pt.isWindows?getWindowsInfo():Pt.isMacOS?getMacOsInfo():getLinuxInfo()),{platform:Pt.platform,arch:Pt.arch,isWindows:Pt.isWindows,isMacOS:Pt.isMacOS,isLinux:Pt.isLinux})}))}Pt.getDetails=getDetails},71847:function(Wt,Pt,en){"use strict";var tn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});Pt.summary=Pt.markdownSummary=Pt.SUMMARY_DOCS_URL=Pt.SUMMARY_ENV_VAR=void 0;const nn=en(70857);const an=en(79896);const{access:rn,appendFile:In,writeFile:sn}=an.promises;Pt.SUMMARY_ENV_VAR="GITHUB_STEP_SUMMARY";Pt.SUMMARY_DOCS_URL="https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary";class Summary{constructor(){this._buffer=""}filePath(){return tn(this,void 0,void 0,(function*(){if(this._filePath){return this._filePath}const Wt=process.env[Pt.SUMMARY_ENV_VAR];if(!Wt){throw new Error(`Unable to find environment variable for $${Pt.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`)}try{yield rn(Wt,an.constants.R_OK|an.constants.W_OK)}catch(Pt){throw new Error(`Unable to access summary file: '${Wt}'. Check if the file has correct read/write permissions.`)}this._filePath=Wt;return this._filePath}))}wrap(Wt,Pt,en={}){const tn=Object.entries(en).map((([Wt,Pt])=>` ${Wt}="${Pt}"`)).join("");if(!Pt){return`<${Wt}${tn}>`}return`<${Wt}${tn}>${Pt}`}write(Wt){return tn(this,void 0,void 0,(function*(){const Pt=!!(Wt===null||Wt===void 0?void 0:Wt.overwrite);const en=yield this.filePath();const tn=Pt?sn:In;yield tn(en,this._buffer,{encoding:"utf8"});return this.emptyBuffer()}))}clear(){return tn(this,void 0,void 0,(function*(){return this.emptyBuffer().write({overwrite:true})}))}stringify(){return this._buffer}isEmptyBuffer(){return this._buffer.length===0}emptyBuffer(){this._buffer="";return this}addRaw(Wt,Pt=false){this._buffer+=Wt;return Pt?this.addEOL():this}addEOL(){return this.addRaw(nn.EOL)}addCodeBlock(Wt,Pt){const en=Object.assign({},Pt&&{lang:Pt});const tn=this.wrap("pre",this.wrap("code",Wt),en);return this.addRaw(tn).addEOL()}addList(Wt,Pt=false){const en=Pt?"ol":"ul";const tn=Wt.map((Wt=>this.wrap("li",Wt))).join("");const nn=this.wrap(en,tn);return this.addRaw(nn).addEOL()}addTable(Wt){const Pt=Wt.map((Wt=>{const Pt=Wt.map((Wt=>{if(typeof Wt==="string"){return this.wrap("td",Wt)}const{header:Pt,data:en,colspan:tn,rowspan:nn}=Wt;const an=Pt?"th":"td";const rn=Object.assign(Object.assign({},tn&&{colspan:tn}),nn&&{rowspan:nn});return this.wrap(an,en,rn)})).join("");return this.wrap("tr",Pt)})).join("");const en=this.wrap("table",Pt);return this.addRaw(en).addEOL()}addDetails(Wt,Pt){const en=this.wrap("details",this.wrap("summary",Wt)+Pt);return this.addRaw(en).addEOL()}addImage(Wt,Pt,en){const{width:tn,height:nn}=en||{};const an=Object.assign(Object.assign({},tn&&{width:tn}),nn&&{height:nn});const rn=this.wrap("img",null,Object.assign({src:Wt,alt:Pt},an));return this.addRaw(rn).addEOL()}addHeading(Wt,Pt){const en=`h${Pt}`;const tn=["h1","h2","h3","h4","h5","h6"].includes(en)?en:"h1";const nn=this.wrap(tn,Wt);return this.addRaw(nn).addEOL()}addSeparator(){const Wt=this.wrap("hr",null);return this.addRaw(Wt).addEOL()}addBreak(){const Wt=this.wrap("br",null);return this.addRaw(Wt).addEOL()}addQuote(Wt,Pt){const en=Object.assign({},Pt&&{cite:Pt});const tn=this.wrap("blockquote",Wt,en);return this.addRaw(tn).addEOL()}addLink(Wt,Pt){const en=this.wrap("a",Wt,{href:Pt});return this.addRaw(en).addEOL()}}const on=new Summary;Pt.markdownSummary=on;Pt.summary=on},30302:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.toCommandProperties=Pt.toCommandValue=void 0;function toCommandValue(Wt){if(Wt===null||Wt===undefined){return""}else if(typeof Wt==="string"||Wt instanceof String){return Wt}return JSON.stringify(Wt)}Pt.toCommandValue=toCommandValue;function toCommandProperties(Wt){if(!Object.keys(Wt).length){return{}}return{title:Wt.title,file:Wt.file,line:Wt.startLine,endLine:Wt.endLine,col:Wt.startColumn,endColumn:Wt.endColumn}}Pt.toCommandProperties=toCommandProperties},95236:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Object.defineProperty(Wt,tn,{enumerable:true,get:function(){return Pt[en]}})}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});Pt.getExecOutput=Pt.exec=void 0;const In=en(13193);const sn=an(en(6665));function exec(Wt,Pt,en){return rn(this,void 0,void 0,(function*(){const tn=sn.argStringToArray(Wt);if(tn.length===0){throw new Error(`Parameter 'commandLine' cannot be null or empty.`)}const nn=tn[0];Pt=tn.slice(1).concat(Pt||[]);const an=new sn.ToolRunner(nn,Pt,en);return an.exec()}))}Pt.exec=exec;function getExecOutput(Wt,Pt,en){var tn,nn;return rn(this,void 0,void 0,(function*(){let an="";let rn="";const sn=new In.StringDecoder("utf8");const on=new In.StringDecoder("utf8");const cn=(tn=en===null||en===void 0?void 0:en.listeners)===null||tn===void 0?void 0:tn.stdout;const dn=(nn=en===null||en===void 0?void 0:en.listeners)===null||nn===void 0?void 0:nn.stderr;const stdErrListener=Wt=>{rn+=on.write(Wt);if(dn){dn(Wt)}};const stdOutListener=Wt=>{an+=sn.write(Wt);if(cn){cn(Wt)}};const un=Object.assign(Object.assign({},en===null||en===void 0?void 0:en.listeners),{stdout:stdOutListener,stderr:stdErrListener});const pn=yield exec(Wt,Pt,Object.assign(Object.assign({},en),{listeners:un}));an+=sn.end();rn+=on.end();return{exitCode:pn,stdout:an,stderr:rn}}))}Pt.getExecOutput=getExecOutput},6665:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Object.defineProperty(Wt,tn,{enumerable:true,get:function(){return Pt[en]}})}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});Pt.argStringToArray=Pt.ToolRunner=void 0;const In=an(en(70857));const sn=an(en(24434));const on=an(en(35317));const cn=an(en(16928));const dn=an(en(94994));const un=an(en(75207));const pn=en(53557);const mn=process.platform==="win32";class ToolRunner extends sn.EventEmitter{constructor(Wt,Pt,en){super();if(!Wt){throw new Error("Parameter 'toolPath' cannot be null or empty.")}this.toolPath=Wt;this.args=Pt||[];this.options=en||{}}_debug(Wt){if(this.options.listeners&&this.options.listeners.debug){this.options.listeners.debug(Wt)}}_getCommandString(Wt,Pt){const en=this._getSpawnFileName();const tn=this._getSpawnArgs(Wt);let nn=Pt?"":"[command]";if(mn){if(this._isCmdFile()){nn+=en;for(const Wt of tn){nn+=` ${Wt}`}}else if(Wt.windowsVerbatimArguments){nn+=`"${en}"`;for(const Wt of tn){nn+=` ${Wt}`}}else{nn+=this._windowsQuoteCmdArg(en);for(const Wt of tn){nn+=` ${this._windowsQuoteCmdArg(Wt)}`}}}else{nn+=en;for(const Wt of tn){nn+=` ${Wt}`}}return nn}_processLineBuffer(Wt,Pt,en){try{let tn=Pt+Wt.toString();let nn=tn.indexOf(In.EOL);while(nn>-1){const Wt=tn.substring(0,nn);en(Wt);tn=tn.substring(nn+In.EOL.length);nn=tn.indexOf(In.EOL)}return tn}catch(Wt){this._debug(`error processing line. Failed with error ${Wt}`);return""}}_getSpawnFileName(){if(mn){if(this._isCmdFile()){return process.env["COMSPEC"]||"cmd.exe"}}return this.toolPath}_getSpawnArgs(Wt){if(mn){if(this._isCmdFile()){let Pt=`/D /S /C "${this._windowsQuoteCmdArg(this.toolPath)}`;for(const en of this.args){Pt+=" ";Pt+=Wt.windowsVerbatimArguments?en:this._windowsQuoteCmdArg(en)}Pt+='"';return[Pt]}}return this.args}_endsWith(Wt,Pt){return Wt.endsWith(Pt)}_isCmdFile(){const Wt=this.toolPath.toUpperCase();return this._endsWith(Wt,".CMD")||this._endsWith(Wt,".BAT")}_windowsQuoteCmdArg(Wt){if(!this._isCmdFile()){return this._uvQuoteCmdArg(Wt)}if(!Wt){return'""'}const Pt=[" ","\t","&","(",")","[","]","{","}","^","=",";","!","'","+",",","`","~","|","<",">",'"'];let en=false;for(const tn of Wt){if(Pt.some((Wt=>Wt===tn))){en=true;break}}if(!en){return Wt}let tn='"';let nn=true;for(let Pt=Wt.length;Pt>0;Pt--){tn+=Wt[Pt-1];if(nn&&Wt[Pt-1]==="\\"){tn+="\\"}else if(Wt[Pt-1]==='"'){nn=true;tn+='"'}else{nn=false}}tn+='"';return tn.split("").reverse().join("")}_uvQuoteCmdArg(Wt){if(!Wt){return'""'}if(!Wt.includes(" ")&&!Wt.includes("\t")&&!Wt.includes('"')){return Wt}if(!Wt.includes('"')&&!Wt.includes("\\")){return`"${Wt}"`}let Pt='"';let en=true;for(let tn=Wt.length;tn>0;tn--){Pt+=Wt[tn-1];if(en&&Wt[tn-1]==="\\"){Pt+="\\"}else if(Wt[tn-1]==='"'){en=true;Pt+="\\"}else{en=false}}Pt+='"';return Pt.split("").reverse().join("")}_cloneExecOptions(Wt){Wt=Wt||{};const Pt={cwd:Wt.cwd||process.cwd(),env:Wt.env||process.env,silent:Wt.silent||false,windowsVerbatimArguments:Wt.windowsVerbatimArguments||false,failOnStdErr:Wt.failOnStdErr||false,ignoreReturnCode:Wt.ignoreReturnCode||false,delay:Wt.delay||1e4};Pt.outStream=Wt.outStream||process.stdout;Pt.errStream=Wt.errStream||process.stderr;return Pt}_getSpawnOptions(Wt,Pt){Wt=Wt||{};const en={};en.cwd=Wt.cwd;en.env=Wt.env;en["windowsVerbatimArguments"]=Wt.windowsVerbatimArguments||this._isCmdFile();if(Wt.windowsVerbatimArguments){en.argv0=`"${Pt}"`}return en}exec(){return rn(this,void 0,void 0,(function*(){if(!un.isRooted(this.toolPath)&&(this.toolPath.includes("/")||mn&&this.toolPath.includes("\\"))){this.toolPath=cn.resolve(process.cwd(),this.options.cwd||process.cwd(),this.toolPath)}this.toolPath=yield dn.which(this.toolPath,true);return new Promise(((Wt,Pt)=>rn(this,void 0,void 0,(function*(){this._debug(`exec tool: ${this.toolPath}`);this._debug("arguments:");for(const Wt of this.args){this._debug(` ${Wt}`)}const en=this._cloneExecOptions(this.options);if(!en.silent&&en.outStream){en.outStream.write(this._getCommandString(en)+In.EOL)}const tn=new ExecState(en,this.toolPath);tn.on("debug",(Wt=>{this._debug(Wt)}));if(this.options.cwd&&!(yield un.exists(this.options.cwd))){return Pt(new Error(`The cwd: ${this.options.cwd} does not exist!`))}const nn=this._getSpawnFileName();const an=on.spawn(nn,this._getSpawnArgs(en),this._getSpawnOptions(this.options,nn));let rn="";if(an.stdout){an.stdout.on("data",(Wt=>{if(this.options.listeners&&this.options.listeners.stdout){this.options.listeners.stdout(Wt)}if(!en.silent&&en.outStream){en.outStream.write(Wt)}rn=this._processLineBuffer(Wt,rn,(Wt=>{if(this.options.listeners&&this.options.listeners.stdline){this.options.listeners.stdline(Wt)}}))}))}let sn="";if(an.stderr){an.stderr.on("data",(Wt=>{tn.processStderr=true;if(this.options.listeners&&this.options.listeners.stderr){this.options.listeners.stderr(Wt)}if(!en.silent&&en.errStream&&en.outStream){const Pt=en.failOnStdErr?en.errStream:en.outStream;Pt.write(Wt)}sn=this._processLineBuffer(Wt,sn,(Wt=>{if(this.options.listeners&&this.options.listeners.errline){this.options.listeners.errline(Wt)}}))}))}an.on("error",(Wt=>{tn.processError=Wt.message;tn.processExited=true;tn.processClosed=true;tn.CheckComplete()}));an.on("exit",(Wt=>{tn.processExitCode=Wt;tn.processExited=true;this._debug(`Exit code ${Wt} received from tool '${this.toolPath}'`);tn.CheckComplete()}));an.on("close",(Wt=>{tn.processExitCode=Wt;tn.processExited=true;tn.processClosed=true;this._debug(`STDIO streams have closed for tool '${this.toolPath}'`);tn.CheckComplete()}));tn.on("done",((en,tn)=>{if(rn.length>0){this.emit("stdline",rn)}if(sn.length>0){this.emit("errline",sn)}an.removeAllListeners();if(en){Pt(en)}else{Wt(tn)}}));if(this.options.input){if(!an.stdin){throw new Error("child process missing stdin")}an.stdin.end(this.options.input)}}))))}))}}Pt.ToolRunner=ToolRunner;function argStringToArray(Wt){const Pt=[];let en=false;let tn=false;let nn="";function append(Wt){if(tn&&Wt!=='"'){nn+="\\"}nn+=Wt;tn=false}for(let an=0;an0){Pt.push(nn);nn=""}continue}append(rn)}if(nn.length>0){Pt.push(nn.trim())}return Pt}Pt.argStringToArray=argStringToArray;class ExecState extends sn.EventEmitter{constructor(Wt,Pt){super();this.processClosed=false;this.processError="";this.processExitCode=0;this.processExited=false;this.processStderr=false;this.delay=1e4;this.done=false;this.timeout=null;if(!Pt){throw new Error("toolPath must not be empty")}this.options=Wt;this.toolPath=Pt;if(Wt.delay){this.delay=Wt.delay}}CheckComplete(){if(this.done){return}if(this.processClosed){this._setResult()}else if(this.processExited){this.timeout=pn.setTimeout(ExecState.HandleTimeout,this.delay,this)}}_debug(Wt){this.emit("debug",Wt)}_setResult(){let Wt;if(this.processExited){if(this.processError){Wt=new Error(`There was an error when attempting to execute the process '${this.toolPath}'. This may indicate the process failed to start. Error: ${this.processError}`)}else if(this.processExitCode!==0&&!this.options.ignoreReturnCode){Wt=new Error(`The process '${this.toolPath}' failed with exit code ${this.processExitCode}`)}else if(this.processStderr&&this.options.failOnStdErr){Wt=new Error(`The process '${this.toolPath}' failed because one or more lines were written to the STDERR stream`)}}if(this.timeout){clearTimeout(this.timeout);this.timeout=null}this.done=true;this.emit("done",Wt,this.processExitCode)}static HandleTimeout(Wt){if(Wt.done){return}if(!Wt.processClosed&&Wt.processExited){const Pt=`The STDIO streams did not close within ${Wt.delay/1e3} seconds of the exit event from process '${Wt.toolPath}'. This may indicate a child process inherited the STDIO streams and has not yet exited.`;Wt._debug(Pt)}Wt._setResult()}}},51648:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Context=void 0;const tn=en(79896);const nn=en(70857);class Context{constructor(){var Wt,Pt,en;this.payload={};if(process.env.GITHUB_EVENT_PATH){if((0,tn.existsSync)(process.env.GITHUB_EVENT_PATH)){this.payload=JSON.parse((0,tn.readFileSync)(process.env.GITHUB_EVENT_PATH,{encoding:"utf8"}))}else{const Wt=process.env.GITHUB_EVENT_PATH;process.stdout.write(`GITHUB_EVENT_PATH ${Wt} does not exist${nn.EOL}`)}}this.eventName=process.env.GITHUB_EVENT_NAME;this.sha=process.env.GITHUB_SHA;this.ref=process.env.GITHUB_REF;this.workflow=process.env.GITHUB_WORKFLOW;this.action=process.env.GITHUB_ACTION;this.actor=process.env.GITHUB_ACTOR;this.job=process.env.GITHUB_JOB;this.runNumber=parseInt(process.env.GITHUB_RUN_NUMBER,10);this.runId=parseInt(process.env.GITHUB_RUN_ID,10);this.apiUrl=(Wt=process.env.GITHUB_API_URL)!==null&&Wt!==void 0?Wt:`https://api.github.com`;this.serverUrl=(Pt=process.env.GITHUB_SERVER_URL)!==null&&Pt!==void 0?Pt:`https://github.com`;this.graphqlUrl=(en=process.env.GITHUB_GRAPHQL_URL)!==null&&en!==void 0?en:`https://api.github.com/graphql`}get issue(){const Wt=this.payload;return Object.assign(Object.assign({},this.repo),{number:(Wt.issue||Wt.pull_request||Wt).number})}get repo(){if(process.env.GITHUB_REPOSITORY){const[Wt,Pt]=process.env.GITHUB_REPOSITORY.split("/");return{owner:Wt,repo:Pt}}if(this.payload.repository){return{owner:this.payload.repository.owner.login,repo:this.payload.repository.name}}throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'")}}Pt.Context=Context},93228:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};Object.defineProperty(Pt,"__esModule",{value:true});Pt.getOctokit=Pt.context=void 0;const rn=an(en(51648));const In=en(38006);Pt.context=new rn.Context;function getOctokit(Wt,Pt,...en){const tn=In.GitHub.plugin(...en);return new tn((0,In.getOctokitOptions)(Wt,Pt))}Pt.getOctokit=getOctokit},65156:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});Pt.getApiBaseUrl=Pt.getProxyFetch=Pt.getProxyAgentDispatcher=Pt.getProxyAgent=Pt.getAuthString=void 0;const In=an(en(54844));const sn=en(46752);function getAuthString(Wt,Pt){if(!Wt&&!Pt.auth){throw new Error("Parameter token or opts.auth is required")}else if(Wt&&Pt.auth){throw new Error("Parameters token and opts.auth may not both be specified")}return typeof Pt.auth==="string"?Pt.auth:`token ${Wt}`}Pt.getAuthString=getAuthString;function getProxyAgent(Wt){const Pt=new In.HttpClient;return Pt.getAgent(Wt)}Pt.getProxyAgent=getProxyAgent;function getProxyAgentDispatcher(Wt){const Pt=new In.HttpClient;return Pt.getAgentDispatcher(Wt)}Pt.getProxyAgentDispatcher=getProxyAgentDispatcher;function getProxyFetch(Wt){const Pt=getProxyAgentDispatcher(Wt);const proxyFetch=(Wt,en)=>rn(this,void 0,void 0,(function*(){return(0,sn.fetch)(Wt,Object.assign(Object.assign({},en),{dispatcher:Pt}))}));return proxyFetch}Pt.getProxyFetch=getProxyFetch;function getApiBaseUrl(){return process.env["GITHUB_API_URL"]||"https://api.github.com"}Pt.getApiBaseUrl=getApiBaseUrl},38006:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};Object.defineProperty(Pt,"__esModule",{value:true});Pt.getOctokitOptions=Pt.GitHub=Pt.defaults=Pt.context=void 0;const rn=an(en(51648));const In=an(en(65156));const sn=en(61897);const on=en(75726);const cn=en(37731);Pt.context=new rn.Context;const dn=In.getApiBaseUrl();Pt.defaults={baseUrl:dn,request:{agent:In.getProxyAgent(dn),fetch:In.getProxyFetch(dn)}};Pt.GitHub=sn.Octokit.plugin(on.restEndpointMethods,cn.paginateRest).defaults(Pt.defaults);function getOctokitOptions(Wt,Pt){const en=Object.assign({},Pt||{});const tn=In.getAuthString(Wt,en);if(tn){en.auth=tn}return en}Pt.getOctokitOptions=getOctokitOptions},37731:Wt=>{"use strict";var Pt=Object.defineProperty;var en=Object.getOwnPropertyDescriptor;var tn=Object.getOwnPropertyNames;var nn=Object.prototype.hasOwnProperty;var __export=(Wt,en)=>{for(var tn in en)Pt(Wt,tn,{get:en[tn],enumerable:true})};var __copyProps=(Wt,an,rn,In)=>{if(an&&typeof an==="object"||typeof an==="function"){for(let sn of tn(an))if(!nn.call(Wt,sn)&&sn!==rn)Pt(Wt,sn,{get:()=>an[sn],enumerable:!(In=en(an,sn))||In.enumerable})}return Wt};var __toCommonJS=Wt=>__copyProps(Pt({},"__esModule",{value:true}),Wt);var an={};__export(an,{composePaginateRest:()=>In,isPaginatingEndpoint:()=>isPaginatingEndpoint,paginateRest:()=>paginateRest,paginatingEndpoints:()=>sn});Wt.exports=__toCommonJS(an);var rn="9.2.1";function normalizePaginatedListResponse(Wt){if(!Wt.data){return{...Wt,data:[]}}const Pt="total_count"in Wt.data&&!("url"in Wt.data);if(!Pt)return Wt;const en=Wt.data.incomplete_results;const tn=Wt.data.repository_selection;const nn=Wt.data.total_count;delete Wt.data.incomplete_results;delete Wt.data.repository_selection;delete Wt.data.total_count;const an=Object.keys(Wt.data)[0];const rn=Wt.data[an];Wt.data=rn;if(typeof en!=="undefined"){Wt.data.incomplete_results=en}if(typeof tn!=="undefined"){Wt.data.repository_selection=tn}Wt.data.total_count=nn;return Wt}function iterator(Wt,Pt,en){const tn=typeof Pt==="function"?Pt.endpoint(en):Wt.request.endpoint(Pt,en);const nn=typeof Pt==="function"?Pt:Wt.request;const an=tn.method;const rn=tn.headers;let In=tn.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!In)return{done:true};try{const Wt=await nn({method:an,url:In,headers:rn});const Pt=normalizePaginatedListResponse(Wt);In=((Pt.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1];return{value:Pt}}catch(Wt){if(Wt.status!==409)throw Wt;In="";return{value:{status:200,headers:{},data:[]}}}}})}}function paginate(Wt,Pt,en,tn){if(typeof en==="function"){tn=en;en=void 0}return gather(Wt,[],iterator(Wt,Pt,en)[Symbol.asyncIterator](),tn)}function gather(Wt,Pt,en,tn){return en.next().then((nn=>{if(nn.done){return Pt}let an=false;function done(){an=true}Pt=Pt.concat(tn?tn(nn.value,done):nn.value.data);if(an){return Pt}return gather(Wt,Pt,en,tn)}))}var In=Object.assign(paginate,{iterator:iterator});var sn=["GET /advisories","GET /app/hook/deliveries","GET /app/installation-requests","GET /app/installations","GET /assignments/{assignment_id}/accepted_assignments","GET /classrooms","GET /classrooms/{classroom_id}/assignments","GET /enterprises/{enterprise}/dependabot/alerts","GET /enterprises/{enterprise}/secret-scanning/alerts","GET /events","GET /gists","GET /gists/public","GET /gists/starred","GET /gists/{gist_id}/comments","GET /gists/{gist_id}/commits","GET /gists/{gist_id}/forks","GET /installation/repositories","GET /issues","GET /licenses","GET /marketplace_listing/plans","GET /marketplace_listing/plans/{plan_id}/accounts","GET /marketplace_listing/stubbed/plans","GET /marketplace_listing/stubbed/plans/{plan_id}/accounts","GET /networks/{owner}/{repo}/events","GET /notifications","GET /organizations","GET /orgs/{org}/actions/cache/usage-by-repository","GET /orgs/{org}/actions/permissions/repositories","GET /orgs/{org}/actions/runners","GET /orgs/{org}/actions/secrets","GET /orgs/{org}/actions/secrets/{secret_name}/repositories","GET /orgs/{org}/actions/variables","GET /orgs/{org}/actions/variables/{name}/repositories","GET /orgs/{org}/blocks","GET /orgs/{org}/code-scanning/alerts","GET /orgs/{org}/codespaces","GET /orgs/{org}/codespaces/secrets","GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories","GET /orgs/{org}/copilot/billing/seats","GET /orgs/{org}/dependabot/alerts","GET /orgs/{org}/dependabot/secrets","GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories","GET /orgs/{org}/events","GET /orgs/{org}/failed_invitations","GET /orgs/{org}/hooks","GET /orgs/{org}/hooks/{hook_id}/deliveries","GET /orgs/{org}/installations","GET /orgs/{org}/invitations","GET /orgs/{org}/invitations/{invitation_id}/teams","GET /orgs/{org}/issues","GET /orgs/{org}/members","GET /orgs/{org}/members/{username}/codespaces","GET /orgs/{org}/migrations","GET /orgs/{org}/migrations/{migration_id}/repositories","GET /orgs/{org}/organization-roles/{role_id}/teams","GET /orgs/{org}/organization-roles/{role_id}/users","GET /orgs/{org}/outside_collaborators","GET /orgs/{org}/packages","GET /orgs/{org}/packages/{package_type}/{package_name}/versions","GET /orgs/{org}/personal-access-token-requests","GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories","GET /orgs/{org}/personal-access-tokens","GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories","GET /orgs/{org}/projects","GET /orgs/{org}/properties/values","GET /orgs/{org}/public_members","GET /orgs/{org}/repos","GET /orgs/{org}/rulesets","GET /orgs/{org}/rulesets/rule-suites","GET /orgs/{org}/secret-scanning/alerts","GET /orgs/{org}/security-advisories","GET /orgs/{org}/teams","GET /orgs/{org}/teams/{team_slug}/discussions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions","GET /orgs/{org}/teams/{team_slug}/invitations","GET /orgs/{org}/teams/{team_slug}/members","GET /orgs/{org}/teams/{team_slug}/projects","GET /orgs/{org}/teams/{team_slug}/repos","GET /orgs/{org}/teams/{team_slug}/teams","GET /projects/columns/{column_id}/cards","GET /projects/{project_id}/collaborators","GET /projects/{project_id}/columns","GET /repos/{owner}/{repo}/actions/artifacts","GET /repos/{owner}/{repo}/actions/caches","GET /repos/{owner}/{repo}/actions/organization-secrets","GET /repos/{owner}/{repo}/actions/organization-variables","GET /repos/{owner}/{repo}/actions/runners","GET /repos/{owner}/{repo}/actions/runs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts","GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs","GET /repos/{owner}/{repo}/actions/secrets","GET /repos/{owner}/{repo}/actions/variables","GET /repos/{owner}/{repo}/actions/workflows","GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs","GET /repos/{owner}/{repo}/activity","GET /repos/{owner}/{repo}/assignees","GET /repos/{owner}/{repo}/branches","GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations","GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs","GET /repos/{owner}/{repo}/code-scanning/alerts","GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances","GET /repos/{owner}/{repo}/code-scanning/analyses","GET /repos/{owner}/{repo}/codespaces","GET /repos/{owner}/{repo}/codespaces/devcontainers","GET /repos/{owner}/{repo}/codespaces/secrets","GET /repos/{owner}/{repo}/collaborators","GET /repos/{owner}/{repo}/comments","GET /repos/{owner}/{repo}/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/commits","GET /repos/{owner}/{repo}/commits/{commit_sha}/comments","GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls","GET /repos/{owner}/{repo}/commits/{ref}/check-runs","GET /repos/{owner}/{repo}/commits/{ref}/check-suites","GET /repos/{owner}/{repo}/commits/{ref}/status","GET /repos/{owner}/{repo}/commits/{ref}/statuses","GET /repos/{owner}/{repo}/contributors","GET /repos/{owner}/{repo}/dependabot/alerts","GET /repos/{owner}/{repo}/dependabot/secrets","GET /repos/{owner}/{repo}/deployments","GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses","GET /repos/{owner}/{repo}/environments","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps","GET /repos/{owner}/{repo}/events","GET /repos/{owner}/{repo}/forks","GET /repos/{owner}/{repo}/hooks","GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries","GET /repos/{owner}/{repo}/invitations","GET /repos/{owner}/{repo}/issues","GET /repos/{owner}/{repo}/issues/comments","GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/issues/events","GET /repos/{owner}/{repo}/issues/{issue_number}/comments","GET /repos/{owner}/{repo}/issues/{issue_number}/events","GET /repos/{owner}/{repo}/issues/{issue_number}/labels","GET /repos/{owner}/{repo}/issues/{issue_number}/reactions","GET /repos/{owner}/{repo}/issues/{issue_number}/timeline","GET /repos/{owner}/{repo}/keys","GET /repos/{owner}/{repo}/labels","GET /repos/{owner}/{repo}/milestones","GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels","GET /repos/{owner}/{repo}/notifications","GET /repos/{owner}/{repo}/pages/builds","GET /repos/{owner}/{repo}/projects","GET /repos/{owner}/{repo}/pulls","GET /repos/{owner}/{repo}/pulls/comments","GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/pulls/{pull_number}/comments","GET /repos/{owner}/{repo}/pulls/{pull_number}/commits","GET /repos/{owner}/{repo}/pulls/{pull_number}/files","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments","GET /repos/{owner}/{repo}/releases","GET /repos/{owner}/{repo}/releases/{release_id}/assets","GET /repos/{owner}/{repo}/releases/{release_id}/reactions","GET /repos/{owner}/{repo}/rules/branches/{branch}","GET /repos/{owner}/{repo}/rulesets","GET /repos/{owner}/{repo}/rulesets/rule-suites","GET /repos/{owner}/{repo}/secret-scanning/alerts","GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations","GET /repos/{owner}/{repo}/security-advisories","GET /repos/{owner}/{repo}/stargazers","GET /repos/{owner}/{repo}/subscribers","GET /repos/{owner}/{repo}/tags","GET /repos/{owner}/{repo}/teams","GET /repos/{owner}/{repo}/topics","GET /repositories","GET /repositories/{repository_id}/environments/{environment_name}/secrets","GET /repositories/{repository_id}/environments/{environment_name}/variables","GET /search/code","GET /search/commits","GET /search/issues","GET /search/labels","GET /search/repositories","GET /search/topics","GET /search/users","GET /teams/{team_id}/discussions","GET /teams/{team_id}/discussions/{discussion_number}/comments","GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /teams/{team_id}/discussions/{discussion_number}/reactions","GET /teams/{team_id}/invitations","GET /teams/{team_id}/members","GET /teams/{team_id}/projects","GET /teams/{team_id}/repos","GET /teams/{team_id}/teams","GET /user/blocks","GET /user/codespaces","GET /user/codespaces/secrets","GET /user/emails","GET /user/followers","GET /user/following","GET /user/gpg_keys","GET /user/installations","GET /user/installations/{installation_id}/repositories","GET /user/issues","GET /user/keys","GET /user/marketplace_purchases","GET /user/marketplace_purchases/stubbed","GET /user/memberships/orgs","GET /user/migrations","GET /user/migrations/{migration_id}/repositories","GET /user/orgs","GET /user/packages","GET /user/packages/{package_type}/{package_name}/versions","GET /user/public_emails","GET /user/repos","GET /user/repository_invitations","GET /user/social_accounts","GET /user/ssh_signing_keys","GET /user/starred","GET /user/subscriptions","GET /user/teams","GET /users","GET /users/{username}/events","GET /users/{username}/events/orgs/{org}","GET /users/{username}/events/public","GET /users/{username}/followers","GET /users/{username}/following","GET /users/{username}/gists","GET /users/{username}/gpg_keys","GET /users/{username}/keys","GET /users/{username}/orgs","GET /users/{username}/packages","GET /users/{username}/projects","GET /users/{username}/received_events","GET /users/{username}/received_events/public","GET /users/{username}/repos","GET /users/{username}/social_accounts","GET /users/{username}/ssh_signing_keys","GET /users/{username}/starred","GET /users/{username}/subscriptions"];function isPaginatingEndpoint(Wt){if(typeof Wt==="string"){return sn.includes(Wt)}else{return false}}function paginateRest(Wt){return{paginate:Object.assign(paginate.bind(null,Wt),{iterator:iterator.bind(null,Wt)})}}paginateRest.VERSION=rn;0&&0},75726:Wt=>{"use strict";var Pt=Object.defineProperty;var en=Object.getOwnPropertyDescriptor;var tn=Object.getOwnPropertyNames;var nn=Object.prototype.hasOwnProperty;var __export=(Wt,en)=>{for(var tn in en)Pt(Wt,tn,{get:en[tn],enumerable:true})};var __copyProps=(Wt,an,rn,In)=>{if(an&&typeof an==="object"||typeof an==="function"){for(let sn of tn(an))if(!nn.call(Wt,sn)&&sn!==rn)Pt(Wt,sn,{get:()=>an[sn],enumerable:!(In=en(an,sn))||In.enumerable})}return Wt};var __toCommonJS=Wt=>__copyProps(Pt({},"__esModule",{value:true}),Wt);var an={};__export(an,{legacyRestEndpointMethods:()=>legacyRestEndpointMethods,restEndpointMethods:()=>restEndpointMethods});Wt.exports=__toCommonJS(an);var rn="10.4.1";var In={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repositories/{repository_id}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repositories/{repository_id}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repositories/{repository_id}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repositories/{repository_id}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{cancelImport:["DELETE /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.cancelImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#cancel-an-import"}],deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getCommitAuthors:["GET /repos/{owner}/{repo}/import/authors",{},{deprecated:"octokit.rest.migrations.getCommitAuthors() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-commit-authors"}],getImportStatus:["GET /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.getImportStatus() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-an-import-status"}],getLargeFiles:["GET /repos/{owner}/{repo}/import/large_files",{},{deprecated:"octokit.rest.migrations.getLargeFiles() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-large-files"}],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],mapCommitAuthor:["PATCH /repos/{owner}/{repo}/import/authors/{author_id}",{},{deprecated:"octokit.rest.migrations.mapCommitAuthor() is deprecated, see https://docs.github.com/rest/migrations/source-imports#map-a-commit-author"}],setLfsPreference:["PATCH /repos/{owner}/{repo}/import/lfs",{},{deprecated:"octokit.rest.migrations.setLfsPreference() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-git-lfs-preference"}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],startImport:["PUT /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.startImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#start-an-import"}],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"],updateImport:["PATCH /repos/{owner}/{repo}/import",{},{deprecated:"octokit.rest.migrations.updateImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-an-import"}]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}};var sn=In;var on=new Map;for(const[Wt,Pt]of Object.entries(sn)){for(const[en,tn]of Object.entries(Pt)){const[Pt,nn,an]=tn;const[rn,In]=Pt.split(/ /);const sn=Object.assign({method:rn,url:In},nn);if(!on.has(Wt)){on.set(Wt,new Map)}on.get(Wt).set(en,{scope:Wt,methodName:en,endpointDefaults:sn,decorations:an})}}var cn={has({scope:Wt},Pt){return on.get(Wt).has(Pt)},getOwnPropertyDescriptor(Wt,Pt){return{value:this.get(Wt,Pt),configurable:true,writable:true,enumerable:true}},defineProperty(Wt,Pt,en){Object.defineProperty(Wt.cache,Pt,en);return true},deleteProperty(Wt,Pt){delete Wt.cache[Pt];return true},ownKeys({scope:Wt}){return[...on.get(Wt).keys()]},set(Wt,Pt,en){return Wt.cache[Pt]=en},get({octokit:Wt,scope:Pt,cache:en},tn){if(en[tn]){return en[tn]}const nn=on.get(Pt).get(tn);if(!nn){return void 0}const{endpointDefaults:an,decorations:rn}=nn;if(rn){en[tn]=decorate(Wt,Pt,tn,an,rn)}else{en[tn]=Wt.request.defaults(an)}return en[tn]}};function endpointsToMethods(Wt){const Pt={};for(const en of on.keys()){Pt[en]=new Proxy({octokit:Wt,scope:en,cache:{}},cn)}return Pt}function decorate(Wt,Pt,en,tn,nn){const an=Wt.request.defaults(tn);function withDecorations(...tn){let rn=an.endpoint.merge(...tn);if(nn.mapToData){rn=Object.assign({},rn,{data:rn[nn.mapToData],[nn.mapToData]:void 0});return an(rn)}if(nn.renamed){const[tn,an]=nn.renamed;Wt.log.warn(`octokit.${Pt}.${en}() has been renamed to octokit.${tn}.${an}()`)}if(nn.deprecated){Wt.log.warn(nn.deprecated)}if(nn.renamedParameters){const rn=an.endpoint.merge(...tn);for(const[tn,an]of Object.entries(nn.renamedParameters)){if(tn in rn){Wt.log.warn(`"${tn}" parameter is deprecated for "octokit.${Pt}.${en}()". Use "${an}" instead`);if(!(an in rn)){rn[an]=rn[tn]}delete rn[tn]}}return an(rn)}return an(...tn)}return Object.assign(withDecorations,an)}function restEndpointMethods(Wt){const Pt=endpointsToMethods(Wt);return{rest:Pt}}restEndpointMethods.VERSION=rn;function legacyRestEndpointMethods(Wt){const Pt=endpointsToMethods(Wt);return{...Pt,rest:Pt}}legacyRestEndpointMethods.VERSION=rn;0&&0},44552:function(Wt,Pt){"use strict";var en=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});Pt.PersonalAccessTokenCredentialHandler=Pt.BearerCredentialHandler=Pt.BasicCredentialHandler=void 0;class BasicCredentialHandler{constructor(Wt,Pt){this.username=Wt;this.password=Pt}prepareRequest(Wt){if(!Wt.headers){throw Error("The request has no headers")}Wt.headers["Authorization"]=`Basic ${Buffer.from(`${this.username}:${this.password}`).toString("base64")}`}canHandleAuthentication(){return false}handleAuthentication(){return en(this,void 0,void 0,(function*(){throw new Error("not implemented")}))}}Pt.BasicCredentialHandler=BasicCredentialHandler;class BearerCredentialHandler{constructor(Wt){this.token=Wt}prepareRequest(Wt){if(!Wt.headers){throw Error("The request has no headers")}Wt.headers["Authorization"]=`Bearer ${this.token}`}canHandleAuthentication(){return false}handleAuthentication(){return en(this,void 0,void 0,(function*(){throw new Error("not implemented")}))}}Pt.BearerCredentialHandler=BearerCredentialHandler;class PersonalAccessTokenCredentialHandler{constructor(Wt){this.token=Wt}prepareRequest(Wt){if(!Wt.headers){throw Error("The request has no headers")}Wt.headers["Authorization"]=`Basic ${Buffer.from(`PAT:${this.token}`).toString("base64")}`}canHandleAuthentication(){return false}handleAuthentication(){return en(this,void 0,void 0,(function*(){throw new Error("not implemented")}))}}Pt.PersonalAccessTokenCredentialHandler=PersonalAccessTokenCredentialHandler},54844:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});Pt.HttpClient=Pt.isHttps=Pt.HttpClientResponse=Pt.HttpClientError=Pt.getProxyUrl=Pt.MediaTypes=Pt.Headers=Pt.HttpCodes=void 0;const In=an(en(58611));const sn=an(en(65692));const on=an(en(54988));const cn=an(en(20770));const dn=en(46752);var un;(function(Wt){Wt[Wt["OK"]=200]="OK";Wt[Wt["MultipleChoices"]=300]="MultipleChoices";Wt[Wt["MovedPermanently"]=301]="MovedPermanently";Wt[Wt["ResourceMoved"]=302]="ResourceMoved";Wt[Wt["SeeOther"]=303]="SeeOther";Wt[Wt["NotModified"]=304]="NotModified";Wt[Wt["UseProxy"]=305]="UseProxy";Wt[Wt["SwitchProxy"]=306]="SwitchProxy";Wt[Wt["TemporaryRedirect"]=307]="TemporaryRedirect";Wt[Wt["PermanentRedirect"]=308]="PermanentRedirect";Wt[Wt["BadRequest"]=400]="BadRequest";Wt[Wt["Unauthorized"]=401]="Unauthorized";Wt[Wt["PaymentRequired"]=402]="PaymentRequired";Wt[Wt["Forbidden"]=403]="Forbidden";Wt[Wt["NotFound"]=404]="NotFound";Wt[Wt["MethodNotAllowed"]=405]="MethodNotAllowed";Wt[Wt["NotAcceptable"]=406]="NotAcceptable";Wt[Wt["ProxyAuthenticationRequired"]=407]="ProxyAuthenticationRequired";Wt[Wt["RequestTimeout"]=408]="RequestTimeout";Wt[Wt["Conflict"]=409]="Conflict";Wt[Wt["Gone"]=410]="Gone";Wt[Wt["TooManyRequests"]=429]="TooManyRequests";Wt[Wt["InternalServerError"]=500]="InternalServerError";Wt[Wt["NotImplemented"]=501]="NotImplemented";Wt[Wt["BadGateway"]=502]="BadGateway";Wt[Wt["ServiceUnavailable"]=503]="ServiceUnavailable";Wt[Wt["GatewayTimeout"]=504]="GatewayTimeout"})(un||(Pt.HttpCodes=un={}));var pn;(function(Wt){Wt["Accept"]="accept";Wt["ContentType"]="content-type"})(pn||(Pt.Headers=pn={}));var mn;(function(Wt){Wt["ApplicationJson"]="application/json"})(mn||(Pt.MediaTypes=mn={}));function getProxyUrl(Wt){const Pt=on.getProxyUrl(new URL(Wt));return Pt?Pt.href:""}Pt.getProxyUrl=getProxyUrl;const bn=[un.MovedPermanently,un.ResourceMoved,un.SeeOther,un.TemporaryRedirect,un.PermanentRedirect];const Gn=[un.BadGateway,un.ServiceUnavailable,un.GatewayTimeout];const hn=["OPTIONS","GET","DELETE","HEAD"];const Zn=10;const An=5;class HttpClientError extends Error{constructor(Wt,Pt){super(Wt);this.name="HttpClientError";this.statusCode=Pt;Object.setPrototypeOf(this,HttpClientError.prototype)}}Pt.HttpClientError=HttpClientError;class HttpClientResponse{constructor(Wt){this.message=Wt}readBody(){return rn(this,void 0,void 0,(function*(){return new Promise((Wt=>rn(this,void 0,void 0,(function*(){let Pt=Buffer.alloc(0);this.message.on("data",(Wt=>{Pt=Buffer.concat([Pt,Wt])}));this.message.on("end",(()=>{Wt(Pt.toString())}))}))))}))}readBodyBuffer(){return rn(this,void 0,void 0,(function*(){return new Promise((Wt=>rn(this,void 0,void 0,(function*(){const Pt=[];this.message.on("data",(Wt=>{Pt.push(Wt)}));this.message.on("end",(()=>{Wt(Buffer.concat(Pt))}))}))))}))}}Pt.HttpClientResponse=HttpClientResponse;function isHttps(Wt){const Pt=new URL(Wt);return Pt.protocol==="https:"}Pt.isHttps=isHttps;class HttpClient{constructor(Wt,Pt,en){this._ignoreSslError=false;this._allowRedirects=true;this._allowRedirectDowngrade=false;this._maxRedirects=50;this._allowRetries=false;this._maxRetries=1;this._keepAlive=false;this._disposed=false;this.userAgent=Wt;this.handlers=Pt||[];this.requestOptions=en;if(en){if(en.ignoreSslError!=null){this._ignoreSslError=en.ignoreSslError}this._socketTimeout=en.socketTimeout;if(en.allowRedirects!=null){this._allowRedirects=en.allowRedirects}if(en.allowRedirectDowngrade!=null){this._allowRedirectDowngrade=en.allowRedirectDowngrade}if(en.maxRedirects!=null){this._maxRedirects=Math.max(en.maxRedirects,0)}if(en.keepAlive!=null){this._keepAlive=en.keepAlive}if(en.allowRetries!=null){this._allowRetries=en.allowRetries}if(en.maxRetries!=null){this._maxRetries=en.maxRetries}}}options(Wt,Pt){return rn(this,void 0,void 0,(function*(){return this.request("OPTIONS",Wt,null,Pt||{})}))}get(Wt,Pt){return rn(this,void 0,void 0,(function*(){return this.request("GET",Wt,null,Pt||{})}))}del(Wt,Pt){return rn(this,void 0,void 0,(function*(){return this.request("DELETE",Wt,null,Pt||{})}))}post(Wt,Pt,en){return rn(this,void 0,void 0,(function*(){return this.request("POST",Wt,Pt,en||{})}))}patch(Wt,Pt,en){return rn(this,void 0,void 0,(function*(){return this.request("PATCH",Wt,Pt,en||{})}))}put(Wt,Pt,en){return rn(this,void 0,void 0,(function*(){return this.request("PUT",Wt,Pt,en||{})}))}head(Wt,Pt){return rn(this,void 0,void 0,(function*(){return this.request("HEAD",Wt,null,Pt||{})}))}sendStream(Wt,Pt,en,tn){return rn(this,void 0,void 0,(function*(){return this.request(Wt,Pt,en,tn)}))}getJson(Wt,Pt={}){return rn(this,void 0,void 0,(function*(){Pt[pn.Accept]=this._getExistingOrDefaultHeader(Pt,pn.Accept,mn.ApplicationJson);const en=yield this.get(Wt,Pt);return this._processResponse(en,this.requestOptions)}))}postJson(Wt,Pt,en={}){return rn(this,void 0,void 0,(function*(){const tn=JSON.stringify(Pt,null,2);en[pn.Accept]=this._getExistingOrDefaultHeader(en,pn.Accept,mn.ApplicationJson);en[pn.ContentType]=this._getExistingOrDefaultHeader(en,pn.ContentType,mn.ApplicationJson);const nn=yield this.post(Wt,tn,en);return this._processResponse(nn,this.requestOptions)}))}putJson(Wt,Pt,en={}){return rn(this,void 0,void 0,(function*(){const tn=JSON.stringify(Pt,null,2);en[pn.Accept]=this._getExistingOrDefaultHeader(en,pn.Accept,mn.ApplicationJson);en[pn.ContentType]=this._getExistingOrDefaultHeader(en,pn.ContentType,mn.ApplicationJson);const nn=yield this.put(Wt,tn,en);return this._processResponse(nn,this.requestOptions)}))}patchJson(Wt,Pt,en={}){return rn(this,void 0,void 0,(function*(){const tn=JSON.stringify(Pt,null,2);en[pn.Accept]=this._getExistingOrDefaultHeader(en,pn.Accept,mn.ApplicationJson);en[pn.ContentType]=this._getExistingOrDefaultHeader(en,pn.ContentType,mn.ApplicationJson);const nn=yield this.patch(Wt,tn,en);return this._processResponse(nn,this.requestOptions)}))}request(Wt,Pt,en,tn){return rn(this,void 0,void 0,(function*(){if(this._disposed){throw new Error("Client has already been disposed.")}const nn=new URL(Pt);let an=this._prepareRequest(Wt,nn,tn);const rn=this._allowRetries&&hn.includes(Wt)?this._maxRetries+1:1;let In=0;let sn;do{sn=yield this.requestRaw(an,en);if(sn&&sn.message&&sn.message.statusCode===un.Unauthorized){let Wt;for(const Pt of this.handlers){if(Pt.canHandleAuthentication(sn)){Wt=Pt;break}}if(Wt){return Wt.handleAuthentication(this,an,en)}else{return sn}}let Pt=this._maxRedirects;while(sn.message.statusCode&&bn.includes(sn.message.statusCode)&&this._allowRedirects&&Pt>0){const rn=sn.message.headers["location"];if(!rn){break}const In=new URL(rn);if(nn.protocol==="https:"&&nn.protocol!==In.protocol&&!this._allowRedirectDowngrade){throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.")}yield sn.readBody();if(In.hostname!==nn.hostname){for(const Wt in tn){if(Wt.toLowerCase()==="authorization"){delete tn[Wt]}}}an=this._prepareRequest(Wt,In,tn);sn=yield this.requestRaw(an,en);Pt--}if(!sn.message.statusCode||!Gn.includes(sn.message.statusCode)){return sn}In+=1;if(In{function callbackForResult(Wt,Pt){if(Wt){tn(Wt)}else if(!Pt){tn(new Error("Unknown error"))}else{en(Pt)}}this.requestRawWithCallback(Wt,Pt,callbackForResult)}))}))}requestRawWithCallback(Wt,Pt,en){if(typeof Pt==="string"){if(!Wt.options.headers){Wt.options.headers={}}Wt.options.headers["Content-Length"]=Buffer.byteLength(Pt,"utf8")}let tn=false;function handleResult(Wt,Pt){if(!tn){tn=true;en(Wt,Pt)}}const nn=Wt.httpModule.request(Wt.options,(Wt=>{const Pt=new HttpClientResponse(Wt);handleResult(undefined,Pt)}));let an;nn.on("socket",(Wt=>{an=Wt}));nn.setTimeout(this._socketTimeout||3*6e4,(()=>{if(an){an.end()}handleResult(new Error(`Request timeout: ${Wt.options.path}`))}));nn.on("error",(function(Wt){handleResult(Wt)}));if(Pt&&typeof Pt==="string"){nn.write(Pt,"utf8")}if(Pt&&typeof Pt!=="string"){Pt.on("close",(function(){nn.end()}));Pt.pipe(nn)}else{nn.end()}}getAgent(Wt){const Pt=new URL(Wt);return this._getAgent(Pt)}getAgentDispatcher(Wt){const Pt=new URL(Wt);const en=on.getProxyUrl(Pt);const tn=en&&en.hostname;if(!tn){return}return this._getProxyAgentDispatcher(Pt,en)}_prepareRequest(Wt,Pt,en){const tn={};tn.parsedUrl=Pt;const nn=tn.parsedUrl.protocol==="https:";tn.httpModule=nn?sn:In;const an=nn?443:80;tn.options={};tn.options.host=tn.parsedUrl.hostname;tn.options.port=tn.parsedUrl.port?parseInt(tn.parsedUrl.port):an;tn.options.path=(tn.parsedUrl.pathname||"")+(tn.parsedUrl.search||"");tn.options.method=Wt;tn.options.headers=this._mergeHeaders(en);if(this.userAgent!=null){tn.options.headers["user-agent"]=this.userAgent}tn.options.agent=this._getAgent(tn.parsedUrl);if(this.handlers){for(const Wt of this.handlers){Wt.prepareRequest(tn.options)}}return tn}_mergeHeaders(Wt){if(this.requestOptions&&this.requestOptions.headers){return Object.assign({},lowercaseKeys(this.requestOptions.headers),lowercaseKeys(Wt||{}))}return lowercaseKeys(Wt||{})}_getExistingOrDefaultHeader(Wt,Pt,en){let tn;if(this.requestOptions&&this.requestOptions.headers){tn=lowercaseKeys(this.requestOptions.headers)[Pt]}return Wt[Pt]||tn||en}_getAgent(Wt){let Pt;const en=on.getProxyUrl(Wt);const tn=en&&en.hostname;if(this._keepAlive&&tn){Pt=this._proxyAgent}if(!tn){Pt=this._agent}if(Pt){return Pt}const nn=Wt.protocol==="https:";let an=100;if(this.requestOptions){an=this.requestOptions.maxSockets||In.globalAgent.maxSockets}if(en&&en.hostname){const Wt={maxSockets:an,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(en.username||en.password)&&{proxyAuth:`${en.username}:${en.password}`}),{host:en.hostname,port:en.port})};let tn;const rn=en.protocol==="https:";if(nn){tn=rn?cn.httpsOverHttps:cn.httpsOverHttp}else{tn=rn?cn.httpOverHttps:cn.httpOverHttp}Pt=tn(Wt);this._proxyAgent=Pt}if(!Pt){const Wt={keepAlive:this._keepAlive,maxSockets:an};Pt=nn?new sn.Agent(Wt):new In.Agent(Wt);this._agent=Pt}if(nn&&this._ignoreSslError){Pt.options=Object.assign(Pt.options||{},{rejectUnauthorized:false})}return Pt}_getProxyAgentDispatcher(Wt,Pt){let en;if(this._keepAlive){en=this._proxyAgentDispatcher}if(en){return en}const tn=Wt.protocol==="https:";en=new dn.ProxyAgent(Object.assign({uri:Pt.href,pipelining:!this._keepAlive?0:1},(Pt.username||Pt.password)&&{token:`Basic ${Buffer.from(`${Pt.username}:${Pt.password}`).toString("base64")}`}));this._proxyAgentDispatcher=en;if(tn&&this._ignoreSslError){en.options=Object.assign(en.options.requestTls||{},{rejectUnauthorized:false})}return en}_performExponentialBackoff(Wt){return rn(this,void 0,void 0,(function*(){Wt=Math.min(Zn,Wt);const Pt=An*Math.pow(2,Wt);return new Promise((Wt=>setTimeout((()=>Wt()),Pt)))}))}_processResponse(Wt,Pt){return rn(this,void 0,void 0,(function*(){return new Promise(((en,tn)=>rn(this,void 0,void 0,(function*(){const nn=Wt.message.statusCode||0;const an={statusCode:nn,result:null,headers:{}};if(nn===un.NotFound){en(an)}function dateTimeDeserializer(Wt,Pt){if(typeof Pt==="string"){const Wt=new Date(Pt);if(!isNaN(Wt.valueOf())){return Wt}}return Pt}let rn;let In;try{In=yield Wt.readBody();if(In&&In.length>0){if(Pt&&Pt.deserializeDates){rn=JSON.parse(In,dateTimeDeserializer)}else{rn=JSON.parse(In)}an.result=rn}an.headers=Wt.message.headers}catch(Wt){}if(nn>299){let Wt;if(rn&&rn.message){Wt=rn.message}else if(In&&In.length>0){Wt=In}else{Wt=`Failed request: (${nn})`}const Pt=new HttpClientError(Wt,nn);Pt.result=an.result;tn(Pt)}else{en(an)}}))))}))}}Pt.HttpClient=HttpClient;const lowercaseKeys=Wt=>Object.keys(Wt).reduce(((Pt,en)=>(Pt[en.toLowerCase()]=Wt[en],Pt)),{})},54988:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.checkBypass=Pt.getProxyUrl=void 0;function getProxyUrl(Wt){const Pt=Wt.protocol==="https:";if(checkBypass(Wt)){return undefined}const en=(()=>{if(Pt){return process.env["https_proxy"]||process.env["HTTPS_PROXY"]}else{return process.env["http_proxy"]||process.env["HTTP_PROXY"]}})();if(en){try{return new DecodedURL(en)}catch(Wt){if(!en.startsWith("http://")&&!en.startsWith("https://"))return new DecodedURL(`http://${en}`)}}else{return undefined}}Pt.getProxyUrl=getProxyUrl;function checkBypass(Wt){if(!Wt.hostname){return false}const Pt=Wt.hostname;if(isLoopbackAddress(Pt)){return true}const en=process.env["no_proxy"]||process.env["NO_PROXY"]||"";if(!en){return false}let tn;if(Wt.port){tn=Number(Wt.port)}else if(Wt.protocol==="http:"){tn=80}else if(Wt.protocol==="https:"){tn=443}const nn=[Wt.hostname.toUpperCase()];if(typeof tn==="number"){nn.push(`${nn[0]}:${tn}`)}for(const Wt of en.split(",").map((Wt=>Wt.trim().toUpperCase())).filter((Wt=>Wt))){if(Wt==="*"||nn.some((Pt=>Pt===Wt||Pt.endsWith(`.${Wt}`)||Wt.startsWith(".")&&Pt.endsWith(`${Wt}`)))){return true}}return false}Pt.checkBypass=checkBypass;function isLoopbackAddress(Wt){const Pt=Wt.toLowerCase();return Pt==="localhost"||Pt.startsWith("127.")||Pt.startsWith("[::1]")||Pt.startsWith("[0:0:0:0:0:0:0:1]")}class DecodedURL extends URL{constructor(Wt,Pt){super(Wt,Pt);this._decodedUsername=decodeURIComponent(super.username);this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}}},75207:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Object.defineProperty(Wt,tn,{enumerable:true,get:function(){return Pt[en]}})}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var In;Object.defineProperty(Pt,"__esModule",{value:true});Pt.getCmdPath=Pt.tryGetExecutablePath=Pt.isRooted=Pt.isDirectory=Pt.exists=Pt.READONLY=Pt.UV_FS_O_EXLOCK=Pt.IS_WINDOWS=Pt.unlink=Pt.symlink=Pt.stat=Pt.rmdir=Pt.rm=Pt.rename=Pt.readlink=Pt.readdir=Pt.open=Pt.mkdir=Pt.lstat=Pt.copyFile=Pt.chmod=void 0;const sn=an(en(79896));const on=an(en(16928));In=sn.promises,Pt.chmod=In.chmod,Pt.copyFile=In.copyFile,Pt.lstat=In.lstat,Pt.mkdir=In.mkdir,Pt.open=In.open,Pt.readdir=In.readdir,Pt.readlink=In.readlink,Pt.rename=In.rename,Pt.rm=In.rm,Pt.rmdir=In.rmdir,Pt.stat=In.stat,Pt.symlink=In.symlink,Pt.unlink=In.unlink;Pt.IS_WINDOWS=process.platform==="win32";Pt.UV_FS_O_EXLOCK=268435456;Pt.READONLY=sn.constants.O_RDONLY;function exists(Wt){return rn(this,void 0,void 0,(function*(){try{yield Pt.stat(Wt)}catch(Wt){if(Wt.code==="ENOENT"){return false}throw Wt}return true}))}Pt.exists=exists;function isDirectory(Wt,en=false){return rn(this,void 0,void 0,(function*(){const tn=en?yield Pt.stat(Wt):yield Pt.lstat(Wt);return tn.isDirectory()}))}Pt.isDirectory=isDirectory;function isRooted(Wt){Wt=normalizeSeparators(Wt);if(!Wt){throw new Error('isRooted() parameter "p" cannot be empty')}if(Pt.IS_WINDOWS){return Wt.startsWith("\\")||/^[A-Z]:/i.test(Wt)}return Wt.startsWith("/")}Pt.isRooted=isRooted;function tryGetExecutablePath(Wt,en){return rn(this,void 0,void 0,(function*(){let tn=undefined;try{tn=yield Pt.stat(Wt)}catch(Pt){if(Pt.code!=="ENOENT"){console.log(`Unexpected error attempting to determine if executable file exists '${Wt}': ${Pt}`)}}if(tn&&tn.isFile()){if(Pt.IS_WINDOWS){const Pt=on.extname(Wt).toUpperCase();if(en.some((Wt=>Wt.toUpperCase()===Pt))){return Wt}}else{if(isUnixExecutable(tn)){return Wt}}}const nn=Wt;for(const an of en){Wt=nn+an;tn=undefined;try{tn=yield Pt.stat(Wt)}catch(Pt){if(Pt.code!=="ENOENT"){console.log(`Unexpected error attempting to determine if executable file exists '${Wt}': ${Pt}`)}}if(tn&&tn.isFile()){if(Pt.IS_WINDOWS){try{const en=on.dirname(Wt);const tn=on.basename(Wt).toUpperCase();for(const nn of yield Pt.readdir(en)){if(tn===nn.toUpperCase()){Wt=on.join(en,nn);break}}}catch(Pt){console.log(`Unexpected error attempting to determine the actual case of the file '${Wt}': ${Pt}`)}return Wt}else{if(isUnixExecutable(tn)){return Wt}}}}return""}))}Pt.tryGetExecutablePath=tryGetExecutablePath;function normalizeSeparators(Wt){Wt=Wt||"";if(Pt.IS_WINDOWS){Wt=Wt.replace(/\//g,"\\");return Wt.replace(/\\\\+/g,"\\")}return Wt.replace(/\/\/+/g,"/")}function isUnixExecutable(Wt){return(Wt.mode&1)>0||(Wt.mode&8)>0&&Wt.gid===process.getgid()||(Wt.mode&64)>0&&Wt.uid===process.getuid()}function getCmdPath(){var Wt;return(Wt=process.env["COMSPEC"])!==null&&Wt!==void 0?Wt:`cmd.exe`}Pt.getCmdPath=getCmdPath},94994:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Object.defineProperty(Wt,tn,{enumerable:true,get:function(){return Pt[en]}})}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});Pt.findInPath=Pt.which=Pt.mkdirP=Pt.rmRF=Pt.mv=Pt.cp=void 0;const In=en(42613);const sn=an(en(16928));const on=an(en(75207));function cp(Wt,Pt,en={}){return rn(this,void 0,void 0,(function*(){const{force:tn,recursive:nn,copySourceDirectory:an}=readCopyOptions(en);const rn=(yield on.exists(Pt))?yield on.stat(Pt):null;if(rn&&rn.isFile()&&!tn){return}const In=rn&&rn.isDirectory()&&an?sn.join(Pt,sn.basename(Wt)):Pt;if(!(yield on.exists(Wt))){throw new Error(`no such file or directory: ${Wt}`)}const cn=yield on.stat(Wt);if(cn.isDirectory()){if(!nn){throw new Error(`Failed to copy. ${Wt} is a directory, but tried to copy without recursive flag.`)}else{yield cpDirRecursive(Wt,In,0,tn)}}else{if(sn.relative(Wt,In)===""){throw new Error(`'${In}' and '${Wt}' are the same file`)}yield copyFile(Wt,In,tn)}}))}Pt.cp=cp;function mv(Wt,Pt,en={}){return rn(this,void 0,void 0,(function*(){if(yield on.exists(Pt)){let tn=true;if(yield on.isDirectory(Pt)){Pt=sn.join(Pt,sn.basename(Wt));tn=yield on.exists(Pt)}if(tn){if(en.force==null||en.force){yield rmRF(Pt)}else{throw new Error("Destination already exists")}}}yield mkdirP(sn.dirname(Pt));yield on.rename(Wt,Pt)}))}Pt.mv=mv;function rmRF(Wt){return rn(this,void 0,void 0,(function*(){if(on.IS_WINDOWS){if(/[*"<>|]/.test(Wt)){throw new Error('File path must not contain `*`, `"`, `<`, `>` or `|` on Windows')}}try{yield on.rm(Wt,{force:true,maxRetries:3,recursive:true,retryDelay:300})}catch(Wt){throw new Error(`File was unable to be removed ${Wt}`)}}))}Pt.rmRF=rmRF;function mkdirP(Wt){return rn(this,void 0,void 0,(function*(){In.ok(Wt,"a path argument must be provided");yield on.mkdir(Wt,{recursive:true})}))}Pt.mkdirP=mkdirP;function which(Wt,Pt){return rn(this,void 0,void 0,(function*(){if(!Wt){throw new Error("parameter 'tool' is required")}if(Pt){const Pt=yield which(Wt,false);if(!Pt){if(on.IS_WINDOWS){throw new Error(`Unable to locate executable file: ${Wt}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.`)}else{throw new Error(`Unable to locate executable file: ${Wt}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.`)}}return Pt}const en=yield findInPath(Wt);if(en&&en.length>0){return en[0]}return""}))}Pt.which=which;function findInPath(Wt){return rn(this,void 0,void 0,(function*(){if(!Wt){throw new Error("parameter 'tool' is required")}const Pt=[];if(on.IS_WINDOWS&&process.env["PATHEXT"]){for(const Wt of process.env["PATHEXT"].split(sn.delimiter)){if(Wt){Pt.push(Wt)}}}if(on.isRooted(Wt)){const en=yield on.tryGetExecutablePath(Wt,Pt);if(en){return[en]}return[]}if(Wt.includes(sn.sep)){return[]}const en=[];if(process.env.PATH){for(const Wt of process.env.PATH.split(sn.delimiter)){if(Wt){en.push(Wt)}}}const tn=[];for(const nn of en){const en=yield on.tryGetExecutablePath(sn.join(nn,Wt),Pt);if(en){tn.push(en)}}return tn}))}Pt.findInPath=findInPath;function readCopyOptions(Wt){const Pt=Wt.force==null?true:Wt.force;const en=Boolean(Wt.recursive);const tn=Wt.copySourceDirectory==null?true:Boolean(Wt.copySourceDirectory);return{force:Pt,recursive:en,copySourceDirectory:tn}}function cpDirRecursive(Wt,Pt,en,tn){return rn(this,void 0,void 0,(function*(){if(en>=255)return;en++;yield mkdirP(Pt);const nn=yield on.readdir(Wt);for(const an of nn){const nn=`${Wt}/${an}`;const rn=`${Pt}/${an}`;const In=yield on.lstat(nn);if(In.isDirectory()){yield cpDirRecursive(nn,rn,en,tn)}else{yield copyFile(nn,rn,tn)}}yield on.chmod(Pt,(yield on.stat(Wt)).mode)}))}function copyFile(Wt,Pt,en){return rn(this,void 0,void 0,(function*(){if((yield on.lstat(Wt)).isSymbolicLink()){try{yield on.lstat(Pt);yield on.unlink(Pt)}catch(Wt){if(Wt.code==="EPERM"){yield on.chmod(Pt,"0666");yield on.unlink(Pt)}}const en=yield on.readlink(Wt);yield on.symlink(en,Pt,on.IS_WINDOWS?"junction":null)}else if(!(yield on.exists(Pt))||en){yield on.copyFile(Wt,Pt)}}))}},90108:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="abi/5.7.0"},30097:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.defaultAbiCoder=Pt.AbiCoder=void 0;var tn=en(42006);var nn=en(61338);var an=en(76127);var rn=en(90108);var In=new an.Logger(rn.version);var sn=en(41430);var on=en(84825);var cn=en(79811);var dn=en(85238);var un=en(95837);var pn=en(45994);var mn=en(95005);var bn=en(98849);var Gn=en(99117);var hn=en(78068);var Zn=en(65186);var An=new RegExp(/^bytes([0-9]*)$/);var Wn=new RegExp(/^(u?int)([0-9]*)$/);var Nn=function(){function AbiCoder(Wt){(0,nn.defineReadOnly)(this,"coerceFunc",Wt||null)}AbiCoder.prototype._getCoder=function(Wt){var Pt=this;switch(Wt.baseType){case"address":return new on.AddressCoder(Wt.name);case"bool":return new dn.BooleanCoder(Wt.name);case"string":return new Gn.StringCoder(Wt.name);case"bytes":return new un.BytesCoder(Wt.name);case"array":return new cn.ArrayCoder(this._getCoder(Wt.arrayChildren),Wt.arrayLength,Wt.name);case"tuple":return new hn.TupleCoder((Wt.components||[]).map((function(Wt){return Pt._getCoder(Wt)})),Wt.name);case"":return new mn.NullCoder(Wt.name)}var en=Wt.type.match(Wn);if(en){var tn=parseInt(en[2]||"256");if(tn===0||tn>256||tn%8!==0){In.throwArgumentError("invalid "+en[1]+" bit length","param",Wt)}return new bn.NumberCoder(tn/8,en[1]==="int",Wt.name)}en=Wt.type.match(An);if(en){var tn=parseInt(en[1]);if(tn===0||tn>32){In.throwArgumentError("invalid bytes length","param",Wt)}return new pn.FixedBytesCoder(tn,Wt.name)}return In.throwArgumentError("invalid type","type",Wt.type)};AbiCoder.prototype._getWordSize=function(){return 32};AbiCoder.prototype._getReader=function(Wt,Pt){return new sn.Reader(Wt,this._getWordSize(),this.coerceFunc,Pt)};AbiCoder.prototype._getWriter=function(){return new sn.Writer(this._getWordSize())};AbiCoder.prototype.getDefaultValue=function(Wt){var Pt=this;var en=Wt.map((function(Wt){return Pt._getCoder(Zn.ParamType.from(Wt))}));var tn=new hn.TupleCoder(en,"_");return tn.defaultValue()};AbiCoder.prototype.encode=function(Wt,Pt){var en=this;if(Wt.length!==Pt.length){In.throwError("types/values length mismatch",an.Logger.errors.INVALID_ARGUMENT,{count:{types:Wt.length,values:Pt.length},value:{types:Wt,values:Pt}})}var tn=Wt.map((function(Wt){return en._getCoder(Zn.ParamType.from(Wt))}));var nn=new hn.TupleCoder(tn,"_");var rn=this._getWriter();nn.encode(rn,Pt);return rn.data};AbiCoder.prototype.decode=function(Wt,Pt,en){var nn=this;var an=Wt.map((function(Wt){return nn._getCoder(Zn.ParamType.from(Wt))}));var rn=new hn.TupleCoder(an,"_");return rn.decode(this._getReader((0,tn.arrayify)(Pt),en))};return AbiCoder}();Pt.AbiCoder=Nn;Pt.defaultAbiCoder=new Nn},41430:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Reader=Pt.Writer=Pt.Coder=Pt.checkResultErrors=void 0;var tn=en(42006);var nn=en(18202);var an=en(61338);var rn=en(76127);var In=en(90108);var sn=new rn.Logger(In.version);function checkResultErrors(Wt){var Pt=[];var checkErrors=function(Wt,en){if(!Array.isArray(en)){return}for(var tn in en){var nn=Wt.slice();nn.push(tn);try{checkErrors(nn,en[tn])}catch(Wt){Pt.push({path:nn,error:Wt})}}};checkErrors([],Wt);return Pt}Pt.checkResultErrors=checkResultErrors;var on=function(){function Coder(Wt,Pt,en,tn){this.name=Wt;this.type=Pt;this.localName=en;this.dynamic=tn}Coder.prototype._throwError=function(Wt,Pt){sn.throwArgumentError(Wt,this.localName,Pt)};return Coder}();Pt.Coder=on;var cn=function(){function Writer(Wt){(0,an.defineReadOnly)(this,"wordSize",Wt||32);this._data=[];this._dataLength=0;this._padding=new Uint8Array(Wt)}Object.defineProperty(Writer.prototype,"data",{get:function(){return(0,tn.hexConcat)(this._data)},enumerable:false,configurable:true});Object.defineProperty(Writer.prototype,"length",{get:function(){return this._dataLength},enumerable:false,configurable:true});Writer.prototype._writeData=function(Wt){this._data.push(Wt);this._dataLength+=Wt.length;return Wt.length};Writer.prototype.appendWriter=function(Wt){return this._writeData((0,tn.concat)(Wt._data))};Writer.prototype.writeBytes=function(Wt){var Pt=(0,tn.arrayify)(Wt);var en=Pt.length%this.wordSize;if(en){Pt=(0,tn.concat)([Pt,this._padding.slice(en)])}return this._writeData(Pt)};Writer.prototype._getValue=function(Wt){var Pt=(0,tn.arrayify)(nn.BigNumber.from(Wt));if(Pt.length>this.wordSize){sn.throwError("value out-of-bounds",rn.Logger.errors.BUFFER_OVERRUN,{length:this.wordSize,offset:Pt.length})}if(Pt.length%this.wordSize){Pt=(0,tn.concat)([this._padding.slice(Pt.length%this.wordSize),Pt])}return Pt};Writer.prototype.writeValue=function(Wt){return this._writeData(this._getValue(Wt))};Writer.prototype.writeUpdatableValue=function(){var Wt=this;var Pt=this._data.length;this._data.push(this._padding);this._dataLength+=this.wordSize;return function(en){Wt._data[Pt]=Wt._getValue(en)}};return Writer}();Pt.Writer=cn;var dn=function(){function Reader(Wt,Pt,en,nn){(0,an.defineReadOnly)(this,"_data",(0,tn.arrayify)(Wt));(0,an.defineReadOnly)(this,"wordSize",Pt||32);(0,an.defineReadOnly)(this,"_coerceFunc",en);(0,an.defineReadOnly)(this,"allowLoose",nn);this._offset=0}Object.defineProperty(Reader.prototype,"data",{get:function(){return(0,tn.hexlify)(this._data)},enumerable:false,configurable:true});Object.defineProperty(Reader.prototype,"consumed",{get:function(){return this._offset},enumerable:false,configurable:true});Reader.coerce=function(Wt,Pt){var en=Wt.match("^u?int([0-9]+)$");if(en&&parseInt(en[1])<=48){Pt=Pt.toNumber()}return Pt};Reader.prototype.coerce=function(Wt,Pt){if(this._coerceFunc){return this._coerceFunc(Wt,Pt)}return Reader.coerce(Wt,Pt)};Reader.prototype._peekBytes=function(Wt,Pt,en){var tn=Math.ceil(Pt/this.wordSize)*this.wordSize;if(this._offset+tn>this._data.length){if(this.allowLoose&&en&&this._offset+Pt<=this._data.length){tn=Pt}else{sn.throwError("data out-of-bounds",rn.Logger.errors.BUFFER_OVERRUN,{length:this._data.length,offset:this._offset+tn})}}return this._data.slice(this._offset,this._offset+tn)};Reader.prototype.subReader=function(Wt){return new Reader(this._data.slice(this._offset+Wt),this.wordSize,this._coerceFunc,this.allowLoose)};Reader.prototype.readBytes=function(Wt,Pt){var en=this._peekBytes(0,Wt,!!Pt);this._offset+=en.length;return en.slice(0,Wt)};Reader.prototype.readValue=function(){return nn.BigNumber.from(this.readBytes(this.wordSize))};return Reader}();Pt.Reader=dn},84825:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.AddressCoder=void 0;var nn=en(75745);var an=en(42006);var rn=en(41430);var In=function(Wt){tn(AddressCoder,Wt);function AddressCoder(Pt){return Wt.call(this,"address","address",Pt,false)||this}AddressCoder.prototype.defaultValue=function(){return"0x0000000000000000000000000000000000000000"};AddressCoder.prototype.encode=function(Wt,Pt){try{Pt=(0,nn.getAddress)(Pt)}catch(Wt){this._throwError(Wt.message,Pt)}return Wt.writeValue(Pt)};AddressCoder.prototype.decode=function(Wt){return(0,nn.getAddress)((0,an.hexZeroPad)(Wt.readValue().toHexString(),20))};return AddressCoder}(rn.Coder);Pt.AddressCoder=In},48775:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.AnonymousCoder=void 0;var nn=en(41430);var an=function(Wt){tn(AnonymousCoder,Wt);function AnonymousCoder(Pt){var en=Wt.call(this,Pt.name,Pt.type,undefined,Pt.dynamic)||this;en.coder=Pt;return en}AnonymousCoder.prototype.defaultValue=function(){return this.coder.defaultValue()};AnonymousCoder.prototype.encode=function(Wt,Pt){return this.coder.encode(Wt,Pt)};AnonymousCoder.prototype.decode=function(Wt){return this.coder.decode(Wt)};return AnonymousCoder}(nn.Coder);Pt.AnonymousCoder=an},79811:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.ArrayCoder=Pt.unpack=Pt.pack=void 0;var nn=en(76127);var an=en(90108);var rn=new nn.Logger(an.version);var In=en(41430);var sn=en(48775);function pack(Wt,Pt,en){var tn=null;if(Array.isArray(en)){tn=en}else if(en&&typeof en==="object"){var an={};tn=Pt.map((function(Wt){var Pt=Wt.localName;if(!Pt){rn.throwError("cannot encode object for signature with missing names",nn.Logger.errors.INVALID_ARGUMENT,{argument:"values",coder:Wt,value:en})}if(an[Pt]){rn.throwError("cannot encode object for signature with duplicate names",nn.Logger.errors.INVALID_ARGUMENT,{argument:"values",coder:Wt,value:en})}an[Pt]=true;return en[Pt]}))}else{rn.throwArgumentError("invalid tuple value","tuple",en)}if(Pt.length!==tn.length){rn.throwArgumentError("types/value length mismatch","tuple",en)}var sn=new In.Writer(Wt.wordSize);var on=new In.Writer(Wt.wordSize);var cn=[];Pt.forEach((function(Wt,Pt){var en=tn[Pt];if(Wt.dynamic){var nn=on.length;Wt.encode(on,en);var an=sn.writeUpdatableValue();cn.push((function(Wt){an(Wt+nn)}))}else{Wt.encode(sn,en)}}));cn.forEach((function(Wt){Wt(sn.length)}));var dn=Wt.appendWriter(sn);dn+=Wt.appendWriter(on);return dn}Pt.pack=pack;function unpack(Wt,Pt){var en=[];var tn=Wt.subReader(0);Pt.forEach((function(Pt){var an=null;if(Pt.dynamic){var rn=Wt.readValue();var In=tn.subReader(rn.toNumber());try{an=Pt.decode(In)}catch(Wt){if(Wt.code===nn.Logger.errors.BUFFER_OVERRUN){throw Wt}an=Wt;an.baseType=Pt.name;an.name=Pt.localName;an.type=Pt.type}}else{try{an=Pt.decode(Wt)}catch(Wt){if(Wt.code===nn.Logger.errors.BUFFER_OVERRUN){throw Wt}an=Wt;an.baseType=Pt.name;an.name=Pt.localName;an.type=Pt.type}}if(an!=undefined){en.push(an)}}));var an=Pt.reduce((function(Wt,Pt){var en=Pt.localName;if(en){if(!Wt[en]){Wt[en]=0}Wt[en]++}return Wt}),{});Pt.forEach((function(Wt,Pt){var tn=Wt.localName;if(!tn||an[tn]!==1){return}if(tn==="length"){tn="_length"}if(en[tn]!=null){return}var nn=en[Pt];if(nn instanceof Error){Object.defineProperty(en,tn,{enumerable:true,get:function(){throw nn}})}else{en[tn]=nn}}));var _loop_1=function(Wt){var Pt=en[Wt];if(Pt instanceof Error){Object.defineProperty(en,Wt,{enumerable:true,get:function(){throw Pt}})}};for(var rn=0;rn=0?en:"")+"]";var rn=en===-1||Pt.dynamic;nn=Wt.call(this,"array",an,tn,rn)||this;nn.coder=Pt;nn.length=en;return nn}ArrayCoder.prototype.defaultValue=function(){var Wt=this.coder.defaultValue();var Pt=[];for(var en=0;enWt._data.length){rn.throwError("insufficient data length",nn.Logger.errors.BUFFER_OVERRUN,{length:Wt._data.length,count:Pt})}}var en=[];for(var tn=0;tn=0||Wt==="tuple"){if(dn[Pt]){return true}}if(cn[Pt]||Pt==="payable"){sn.throwArgumentError("invalid modifier","name",Pt)}return false}function parseParamType(Wt,Pt){var en=Wt;function throwError(Pt){sn.throwArgumentError("unexpected character at position "+Pt,"param",Wt)}Wt=Wt.replace(/\s/g," ");function newNode(Wt){var en={type:"",name:"",parent:Wt,state:{allowType:true}};if(Pt){en.indexed=false}return en}var tn={type:"",name:"",state:{allowType:true}};var nn=tn;for(var an=0;an2){sn.throwArgumentError("invalid human-readable ABI signature","value",Wt)}if(!en[1].match(/^[0-9]+$/)){sn.throwArgumentError("invalid human-readable ABI signature gas","value",Wt)}Pt.gas=nn.BigNumber.from(en[1]);return en[0]}return Wt}function parseModifiers(Wt,Pt){Pt.constant=false;Pt.payable=false;Pt.stateMutability="nonpayable";Wt.split(" ").forEach((function(Wt){switch(Wt.trim()){case"constant":Pt.constant=true;break;case"payable":Pt.payable=true;Pt.stateMutability="payable";break;case"nonpayable":Pt.payable=false;Pt.stateMutability="nonpayable";break;case"pure":Pt.constant=true;Pt.stateMutability="pure";break;case"view":Pt.constant=true;Pt.stateMutability="view";break;case"external":case"public":case"":break;default:console.log("unknown modifier: "+Wt)}}))}function verifyState(Wt){var Pt={constant:false,payable:true,stateMutability:"payable"};if(Wt.stateMutability!=null){Pt.stateMutability=Wt.stateMutability;Pt.constant=Pt.stateMutability==="view"||Pt.stateMutability==="pure";if(Wt.constant!=null){if(!!Wt.constant!==Pt.constant){sn.throwArgumentError("cannot have constant function with mutability "+Pt.stateMutability,"value",Wt)}}Pt.payable=Pt.stateMutability==="payable";if(Wt.payable!=null){if(!!Wt.payable!==Pt.payable){sn.throwArgumentError("cannot have payable function with mutability "+Pt.stateMutability,"value",Wt)}}}else if(Wt.payable!=null){Pt.payable=!!Wt.payable;if(Wt.constant==null&&!Pt.payable&&Wt.type!=="constructor"){sn.throwArgumentError("unable to determine stateMutability","value",Wt)}Pt.constant=!!Wt.constant;if(Pt.constant){Pt.stateMutability="view"}else{Pt.stateMutability=Pt.payable?"payable":"nonpayable"}if(Pt.payable&&Pt.constant){sn.throwArgumentError("cannot have constant payable function","value",Wt)}}else if(Wt.constant!=null){Pt.constant=!!Wt.constant;Pt.payable=!Pt.constant;Pt.stateMutability=Pt.constant?"view":"payable"}else if(Wt.type!=="constructor"){sn.throwArgumentError("unable to determine stateMutability","value",Wt)}return Pt}var Gn=function(Wt){tn(ConstructorFragment,Wt);function ConstructorFragment(){return Wt!==null&&Wt.apply(this,arguments)||this}ConstructorFragment.prototype.format=function(Wt){if(!Wt){Wt=Pt.FormatTypes.sighash}if(!Pt.FormatTypes[Wt]){sn.throwArgumentError("invalid format type","format",Wt)}if(Wt===Pt.FormatTypes.json){return JSON.stringify({type:"constructor",stateMutability:this.stateMutability!=="nonpayable"?this.stateMutability:undefined,payable:this.payable,gas:this.gas?this.gas.toNumber():undefined,inputs:this.inputs.map((function(Pt){return JSON.parse(Pt.format(Wt))}))})}if(Wt===Pt.FormatTypes.sighash){sn.throwError("cannot format a constructor for sighash",rn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"format(sighash)"})}var en="constructor("+this.inputs.map((function(Pt){return Pt.format(Wt)})).join(Wt===Pt.FormatTypes.full?", ":",")+") ";if(this.stateMutability&&this.stateMutability!=="nonpayable"){en+=this.stateMutability+" "}return en.trim()};ConstructorFragment.from=function(Wt){if(typeof Wt==="string"){return ConstructorFragment.fromString(Wt)}return ConstructorFragment.fromObject(Wt)};ConstructorFragment.fromObject=function(Wt){if(ConstructorFragment.isConstructorFragment(Wt)){return Wt}if(Wt.type!=="constructor"){sn.throwArgumentError("invalid constructor object","value",Wt)}var Pt=verifyState(Wt);if(Pt.constant){sn.throwArgumentError("constructor cannot be constant","value",Wt)}var en={name:null,type:Wt.type,inputs:Wt.inputs?Wt.inputs.map(pn.fromObject):[],payable:Pt.payable,stateMutability:Pt.stateMutability,gas:Wt.gas?nn.BigNumber.from(Wt.gas):null};return new ConstructorFragment(on,en)};ConstructorFragment.fromString=function(Wt){var Pt={type:"constructor"};Wt=parseGas(Wt,Pt);var en=Wt.match(Wn);if(!en||en[1].trim()!=="constructor"){sn.throwArgumentError("invalid constructor string","value",Wt)}Pt.inputs=parseParams(en[2].trim(),false);parseModifiers(en[3].trim(),Pt);return ConstructorFragment.fromObject(Pt)};ConstructorFragment.isConstructorFragment=function(Wt){return Wt&&Wt._isFragment&&Wt.type==="constructor"};return ConstructorFragment}(mn);Pt.ConstructorFragment=Gn;var hn=function(Wt){tn(FunctionFragment,Wt);function FunctionFragment(){return Wt!==null&&Wt.apply(this,arguments)||this}FunctionFragment.prototype.format=function(Wt){if(!Wt){Wt=Pt.FormatTypes.sighash}if(!Pt.FormatTypes[Wt]){sn.throwArgumentError("invalid format type","format",Wt)}if(Wt===Pt.FormatTypes.json){return JSON.stringify({type:"function",name:this.name,constant:this.constant,stateMutability:this.stateMutability!=="nonpayable"?this.stateMutability:undefined,payable:this.payable,gas:this.gas?this.gas.toNumber():undefined,inputs:this.inputs.map((function(Pt){return JSON.parse(Pt.format(Wt))})),outputs:this.outputs.map((function(Pt){return JSON.parse(Pt.format(Wt))}))})}var en="";if(Wt!==Pt.FormatTypes.sighash){en+="function "}en+=this.name+"("+this.inputs.map((function(Pt){return Pt.format(Wt)})).join(Wt===Pt.FormatTypes.full?", ":",")+") ";if(Wt!==Pt.FormatTypes.sighash){if(this.stateMutability){if(this.stateMutability!=="nonpayable"){en+=this.stateMutability+" "}}else if(this.constant){en+="view "}if(this.outputs&&this.outputs.length){en+="returns ("+this.outputs.map((function(Pt){return Pt.format(Wt)})).join(", ")+") "}if(this.gas!=null){en+="@"+this.gas.toString()+" "}}return en.trim()};FunctionFragment.from=function(Wt){if(typeof Wt==="string"){return FunctionFragment.fromString(Wt)}return FunctionFragment.fromObject(Wt)};FunctionFragment.fromObject=function(Wt){if(FunctionFragment.isFunctionFragment(Wt)){return Wt}if(Wt.type!=="function"){sn.throwArgumentError("invalid function object","value",Wt)}var Pt=verifyState(Wt);var en={type:Wt.type,name:verifyIdentifier(Wt.name),constant:Pt.constant,inputs:Wt.inputs?Wt.inputs.map(pn.fromObject):[],outputs:Wt.outputs?Wt.outputs.map(pn.fromObject):[],payable:Pt.payable,stateMutability:Pt.stateMutability,gas:Wt.gas?nn.BigNumber.from(Wt.gas):null};return new FunctionFragment(on,en)};FunctionFragment.fromString=function(Wt){var Pt={type:"function"};Wt=parseGas(Wt,Pt);var en=Wt.split(" returns ");if(en.length>2){sn.throwArgumentError("invalid function string","value",Wt)}var tn=en[0].match(Wn);if(!tn){sn.throwArgumentError("invalid function signature","value",Wt)}Pt.name=tn[1].trim();if(Pt.name){verifyIdentifier(Pt.name)}Pt.inputs=parseParams(tn[2],false);parseModifiers(tn[3].trim(),Pt);if(en.length>1){var nn=en[1].match(Wn);if(nn[1].trim()!=""||nn[3].trim()!=""){sn.throwArgumentError("unexpected tokens","value",Wt)}Pt.outputs=parseParams(nn[2],false)}else{Pt.outputs=[]}return FunctionFragment.fromObject(Pt)};FunctionFragment.isFunctionFragment=function(Wt){return Wt&&Wt._isFragment&&Wt.type==="function"};return FunctionFragment}(Gn);Pt.FunctionFragment=hn;function checkForbidden(Wt){var Pt=Wt.format();if(Pt==="Error(string)"||Pt==="Panic(uint256)"){sn.throwArgumentError("cannot specify user defined "+Pt+" error","fragment",Wt)}return Wt}var Zn=function(Wt){tn(ErrorFragment,Wt);function ErrorFragment(){return Wt!==null&&Wt.apply(this,arguments)||this}ErrorFragment.prototype.format=function(Wt){if(!Wt){Wt=Pt.FormatTypes.sighash}if(!Pt.FormatTypes[Wt]){sn.throwArgumentError("invalid format type","format",Wt)}if(Wt===Pt.FormatTypes.json){return JSON.stringify({type:"error",name:this.name,inputs:this.inputs.map((function(Pt){return JSON.parse(Pt.format(Wt))}))})}var en="";if(Wt!==Pt.FormatTypes.sighash){en+="error "}en+=this.name+"("+this.inputs.map((function(Pt){return Pt.format(Wt)})).join(Wt===Pt.FormatTypes.full?", ":",")+") ";return en.trim()};ErrorFragment.from=function(Wt){if(typeof Wt==="string"){return ErrorFragment.fromString(Wt)}return ErrorFragment.fromObject(Wt)};ErrorFragment.fromObject=function(Wt){if(ErrorFragment.isErrorFragment(Wt)){return Wt}if(Wt.type!=="error"){sn.throwArgumentError("invalid error object","value",Wt)}var Pt={type:Wt.type,name:verifyIdentifier(Wt.name),inputs:Wt.inputs?Wt.inputs.map(pn.fromObject):[]};return checkForbidden(new ErrorFragment(on,Pt))};ErrorFragment.fromString=function(Wt){var Pt={type:"error"};var en=Wt.match(Wn);if(!en){sn.throwArgumentError("invalid error signature","value",Wt)}Pt.name=en[1].trim();if(Pt.name){verifyIdentifier(Pt.name)}Pt.inputs=parseParams(en[2],false);return checkForbidden(ErrorFragment.fromObject(Pt))};ErrorFragment.isErrorFragment=function(Wt){return Wt&&Wt._isFragment&&Wt.type==="error"};return ErrorFragment}(mn);Pt.ErrorFragment=Zn;function verifyType(Wt){if(Wt.match(/^uint($|[^1-9])/)){Wt="uint256"+Wt.substring(4)}else if(Wt.match(/^int($|[^1-9])/)){Wt="int256"+Wt.substring(3)}return Wt}var An=new RegExp("^[a-zA-Z$_][a-zA-Z0-9$_]*$");function verifyIdentifier(Wt){if(!Wt||!Wt.match(An)){sn.throwArgumentError('invalid identifier "'+Wt+'"',"value",Wt)}return Wt}var Wn=new RegExp("^([^)(]*)\\((.*)\\)([^)(]*)$");function splitNesting(Wt){Wt=Wt.trim();var Pt=[];var en="";var tn=0;for(var nn=0;nn{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TransactionDescription=Pt.LogDescription=Pt.checkResultErrors=Pt.Indexed=Pt.Interface=Pt.defaultAbiCoder=Pt.AbiCoder=Pt.FormatTypes=Pt.ParamType=Pt.FunctionFragment=Pt.Fragment=Pt.EventFragment=Pt.ErrorFragment=Pt.ConstructorFragment=void 0;var tn=en(65186);Object.defineProperty(Pt,"ConstructorFragment",{enumerable:true,get:function(){return tn.ConstructorFragment}});Object.defineProperty(Pt,"ErrorFragment",{enumerable:true,get:function(){return tn.ErrorFragment}});Object.defineProperty(Pt,"EventFragment",{enumerable:true,get:function(){return tn.EventFragment}});Object.defineProperty(Pt,"FormatTypes",{enumerable:true,get:function(){return tn.FormatTypes}});Object.defineProperty(Pt,"Fragment",{enumerable:true,get:function(){return tn.Fragment}});Object.defineProperty(Pt,"FunctionFragment",{enumerable:true,get:function(){return tn.FunctionFragment}});Object.defineProperty(Pt,"ParamType",{enumerable:true,get:function(){return tn.ParamType}});var nn=en(30097);Object.defineProperty(Pt,"AbiCoder",{enumerable:true,get:function(){return nn.AbiCoder}});Object.defineProperty(Pt,"defaultAbiCoder",{enumerable:true,get:function(){return nn.defaultAbiCoder}});var an=en(39472);Object.defineProperty(Pt,"checkResultErrors",{enumerable:true,get:function(){return an.checkResultErrors}});Object.defineProperty(Pt,"Indexed",{enumerable:true,get:function(){return an.Indexed}});Object.defineProperty(Pt,"Interface",{enumerable:true,get:function(){return an.Interface}});Object.defineProperty(Pt,"LogDescription",{enumerable:true,get:function(){return an.LogDescription}});Object.defineProperty(Pt,"TransactionDescription",{enumerable:true,get:function(){return an.TransactionDescription}})},39472:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.Interface=Pt.Indexed=Pt.ErrorDescription=Pt.TransactionDescription=Pt.LogDescription=Pt.checkResultErrors=void 0;var nn=en(75745);var an=en(18202);var rn=en(42006);var In=en(91839);var sn=en(56938);var on=en(61338);var cn=en(30097);var dn=en(41430);Object.defineProperty(Pt,"checkResultErrors",{enumerable:true,get:function(){return dn.checkResultErrors}});var un=en(65186);var pn=en(76127);var mn=en(90108);var bn=new pn.Logger(mn.version);var Gn=function(Wt){tn(LogDescription,Wt);function LogDescription(){return Wt!==null&&Wt.apply(this,arguments)||this}return LogDescription}(on.Description);Pt.LogDescription=Gn;var hn=function(Wt){tn(TransactionDescription,Wt);function TransactionDescription(){return Wt!==null&&Wt.apply(this,arguments)||this}return TransactionDescription}(on.Description);Pt.TransactionDescription=hn;var Zn=function(Wt){tn(ErrorDescription,Wt);function ErrorDescription(){return Wt!==null&&Wt.apply(this,arguments)||this}return ErrorDescription}(on.Description);Pt.ErrorDescription=Zn;var An=function(Wt){tn(Indexed,Wt);function Indexed(){return Wt!==null&&Wt.apply(this,arguments)||this}Indexed.isIndexed=function(Wt){return!!(Wt&&Wt._isIndexed)};return Indexed}(on.Description);Pt.Indexed=An;var Wn={"0x08c379a0":{signature:"Error(string)",name:"Error",inputs:["string"],reason:true},"0x4e487b71":{signature:"Panic(uint256)",name:"Panic",inputs:["uint256"]}};function wrapAccessError(Wt,Pt){var en=new Error("deferred error during ABI decoding triggered accessing "+Wt);en.error=Pt;return en}var Nn=function(){function Interface(Wt){var Pt=this.constructor;var en=this;var tn=[];if(typeof Wt==="string"){tn=JSON.parse(Wt)}else{tn=Wt}(0,on.defineReadOnly)(this,"fragments",tn.map((function(Wt){return un.Fragment.from(Wt)})).filter((function(Wt){return Wt!=null})));(0,on.defineReadOnly)(this,"_abiCoder",(0,on.getStatic)(Pt,"getAbiCoder")());(0,on.defineReadOnly)(this,"functions",{});(0,on.defineReadOnly)(this,"errors",{});(0,on.defineReadOnly)(this,"events",{});(0,on.defineReadOnly)(this,"structs",{});this.fragments.forEach((function(Wt){var Pt=null;switch(Wt.type){case"constructor":if(en.deploy){bn.warn("duplicate definition - constructor");return}(0,on.defineReadOnly)(en,"deploy",Wt);return;case"function":Pt=en.functions;break;case"event":Pt=en.events;break;case"error":Pt=en.errors;break;default:return}var tn=Wt.format();if(Pt[tn]){bn.warn("duplicate definition - "+tn);return}Pt[tn]=Wt}));if(!this.deploy){(0,on.defineReadOnly)(this,"deploy",un.ConstructorFragment.from({payable:false,type:"constructor"}))}(0,on.defineReadOnly)(this,"_isInterface",true)}Interface.prototype.format=function(Wt){if(!Wt){Wt=un.FormatTypes.full}if(Wt===un.FormatTypes.sighash){bn.throwArgumentError("interface does not support formatting sighash","format",Wt)}var Pt=this.fragments.map((function(Pt){return Pt.format(Wt)}));if(Wt===un.FormatTypes.json){return JSON.stringify(Pt.map((function(Wt){return JSON.parse(Wt)})))}return Pt};Interface.getAbiCoder=function(){return cn.defaultAbiCoder};Interface.getAddress=function(Wt){return(0,nn.getAddress)(Wt)};Interface.getSighash=function(Wt){return(0,rn.hexDataSlice)((0,In.id)(Wt.format()),0,4)};Interface.getEventTopic=function(Wt){return(0,In.id)(Wt.format())};Interface.prototype.getFunction=function(Wt){if((0,rn.isHexString)(Wt)){for(var Pt in this.functions){if(Wt===this.getSighash(Pt)){return this.functions[Pt]}}bn.throwArgumentError("no matching function","sighash",Wt)}if(Wt.indexOf("(")===-1){var en=Wt.trim();var tn=Object.keys(this.functions).filter((function(Wt){return Wt.split("(")[0]===en}));if(tn.length===0){bn.throwArgumentError("no matching function","name",en)}else if(tn.length>1){bn.throwArgumentError("multiple matching functions","name",en)}return this.functions[tn[0]]}var nn=this.functions[un.FunctionFragment.fromString(Wt).format()];if(!nn){bn.throwArgumentError("no matching function","signature",Wt)}return nn};Interface.prototype.getEvent=function(Wt){if((0,rn.isHexString)(Wt)){var Pt=Wt.toLowerCase();for(var en in this.events){if(Pt===this.getEventTopic(en)){return this.events[en]}}bn.throwArgumentError("no matching event","topichash",Pt)}if(Wt.indexOf("(")===-1){var tn=Wt.trim();var nn=Object.keys(this.events).filter((function(Wt){return Wt.split("(")[0]===tn}));if(nn.length===0){bn.throwArgumentError("no matching event","name",tn)}else if(nn.length>1){bn.throwArgumentError("multiple matching events","name",tn)}return this.events[nn[0]]}var an=this.events[un.EventFragment.fromString(Wt).format()];if(!an){bn.throwArgumentError("no matching event","signature",Wt)}return an};Interface.prototype.getError=function(Wt){if((0,rn.isHexString)(Wt)){var Pt=(0,on.getStatic)(this.constructor,"getSighash");for(var en in this.errors){var tn=this.errors[en];if(Wt===Pt(tn)){return this.errors[en]}}bn.throwArgumentError("no matching error","sighash",Wt)}if(Wt.indexOf("(")===-1){var nn=Wt.trim();var an=Object.keys(this.errors).filter((function(Wt){return Wt.split("(")[0]===nn}));if(an.length===0){bn.throwArgumentError("no matching error","name",nn)}else if(an.length>1){bn.throwArgumentError("multiple matching errors","name",nn)}return this.errors[an[0]]}var In=this.errors[un.FunctionFragment.fromString(Wt).format()];if(!In){bn.throwArgumentError("no matching error","signature",Wt)}return In};Interface.prototype.getSighash=function(Wt){if(typeof Wt==="string"){try{Wt=this.getFunction(Wt)}catch(Pt){try{Wt=this.getError(Wt)}catch(Wt){throw Pt}}}return(0,on.getStatic)(this.constructor,"getSighash")(Wt)};Interface.prototype.getEventTopic=function(Wt){if(typeof Wt==="string"){Wt=this.getEvent(Wt)}return(0,on.getStatic)(this.constructor,"getEventTopic")(Wt)};Interface.prototype._decodeParams=function(Wt,Pt){return this._abiCoder.decode(Wt,Pt)};Interface.prototype._encodeParams=function(Wt,Pt){return this._abiCoder.encode(Wt,Pt)};Interface.prototype.encodeDeploy=function(Wt){return this._encodeParams(this.deploy.inputs,Wt||[])};Interface.prototype.decodeErrorResult=function(Wt,Pt){if(typeof Wt==="string"){Wt=this.getError(Wt)}var en=(0,rn.arrayify)(Pt);if((0,rn.hexlify)(en.slice(0,4))!==this.getSighash(Wt)){bn.throwArgumentError("data signature does not match error "+Wt.name+".","data",(0,rn.hexlify)(en))}return this._decodeParams(Wt.inputs,en.slice(4))};Interface.prototype.encodeErrorResult=function(Wt,Pt){if(typeof Wt==="string"){Wt=this.getError(Wt)}return(0,rn.hexlify)((0,rn.concat)([this.getSighash(Wt),this._encodeParams(Wt.inputs,Pt||[])]))};Interface.prototype.decodeFunctionData=function(Wt,Pt){if(typeof Wt==="string"){Wt=this.getFunction(Wt)}var en=(0,rn.arrayify)(Pt);if((0,rn.hexlify)(en.slice(0,4))!==this.getSighash(Wt)){bn.throwArgumentError("data signature does not match function "+Wt.name+".","data",(0,rn.hexlify)(en))}return this._decodeParams(Wt.inputs,en.slice(4))};Interface.prototype.encodeFunctionData=function(Wt,Pt){if(typeof Wt==="string"){Wt=this.getFunction(Wt)}return(0,rn.hexlify)((0,rn.concat)([this.getSighash(Wt),this._encodeParams(Wt.inputs,Pt||[])]))};Interface.prototype.decodeFunctionResult=function(Wt,Pt){if(typeof Wt==="string"){Wt=this.getFunction(Wt)}var en=(0,rn.arrayify)(Pt);var tn=null;var nn="";var an=null;var In=null;var sn=null;switch(en.length%this._abiCoder._getWordSize()){case 0:try{return this._abiCoder.decode(Wt.outputs,en)}catch(dn){}break;case 4:{var on=(0,rn.hexlify)(en.slice(0,4));var cn=Wn[on];if(cn){an=this._abiCoder.decode(cn.inputs,en.slice(4));In=cn.name;sn=cn.signature;if(cn.reason){tn=an[0]}if(In==="Error"){nn="; VM Exception while processing transaction: reverted with reason string "+JSON.stringify(an[0])}else if(In==="Panic"){nn="; VM Exception while processing transaction: reverted with panic code "+an[0]}}else{try{var dn=this.getError(on);an=this._abiCoder.decode(dn.inputs,en.slice(4));In=dn.name;sn=dn.format()}catch(dn){}}break}}return bn.throwError("call revert exception"+nn,pn.Logger.errors.CALL_EXCEPTION,{method:Wt.format(),data:(0,rn.hexlify)(Pt),errorArgs:an,errorName:In,errorSignature:sn,reason:tn})};Interface.prototype.encodeFunctionResult=function(Wt,Pt){if(typeof Wt==="string"){Wt=this.getFunction(Wt)}return(0,rn.hexlify)(this._abiCoder.encode(Wt.outputs,Pt||[]))};Interface.prototype.encodeFilterTopics=function(Wt,Pt){var en=this;if(typeof Wt==="string"){Wt=this.getEvent(Wt)}if(Pt.length>Wt.inputs.length){bn.throwError("too many arguments for "+Wt.format(),pn.Logger.errors.UNEXPECTED_ARGUMENT,{argument:"values",value:Pt})}var tn=[];if(!Wt.anonymous){tn.push(this.getEventTopic(Wt))}var encodeTopic=function(Wt,Pt){if(Wt.type==="string"){return(0,In.id)(Pt)}else if(Wt.type==="bytes"){return(0,sn.keccak256)((0,rn.hexlify)(Pt))}if(Wt.type==="bool"&&typeof Pt==="boolean"){Pt=Pt?"0x01":"0x00"}if(Wt.type.match(/^u?int/)){Pt=an.BigNumber.from(Pt).toHexString()}if(Wt.type==="address"){en._abiCoder.encode(["address"],[Pt])}return(0,rn.hexZeroPad)((0,rn.hexlify)(Pt),32)};Pt.forEach((function(Pt,en){var nn=Wt.inputs[en];if(!nn.indexed){if(Pt!=null){bn.throwArgumentError("cannot filter non-indexed parameters; must be null","contract."+nn.name,Pt)}return}if(Pt==null){tn.push(null)}else if(nn.baseType==="array"||nn.baseType==="tuple"){bn.throwArgumentError("filtering with tuples or arrays not supported","contract."+nn.name,Pt)}else if(Array.isArray(Pt)){tn.push(Pt.map((function(Wt){return encodeTopic(nn,Wt)})))}else{tn.push(encodeTopic(nn,Pt))}}));while(tn.length&&tn[tn.length-1]===null){tn.pop()}return tn};Interface.prototype.encodeEventLog=function(Wt,Pt){var en=this;if(typeof Wt==="string"){Wt=this.getEvent(Wt)}var tn=[];var nn=[];var an=[];if(!Wt.anonymous){tn.push(this.getEventTopic(Wt))}if(Pt.length!==Wt.inputs.length){bn.throwArgumentError("event arguments/values mismatch","values",Pt)}Wt.inputs.forEach((function(Wt,rn){var on=Pt[rn];if(Wt.indexed){if(Wt.type==="string"){tn.push((0,In.id)(on))}else if(Wt.type==="bytes"){tn.push((0,sn.keccak256)(on))}else if(Wt.baseType==="tuple"||Wt.baseType==="array"){throw new Error("not implemented")}else{tn.push(en._abiCoder.encode([Wt.type],[on]))}}else{nn.push(Wt);an.push(on)}}));return{data:this._abiCoder.encode(nn,an),topics:tn}};Interface.prototype.decodeEventLog=function(Wt,Pt,en){if(typeof Wt==="string"){Wt=this.getEvent(Wt)}if(en!=null&&!Wt.anonymous){var tn=this.getEventTopic(Wt);if(!(0,rn.isHexString)(en[0],32)||en[0].toLowerCase()!==tn){bn.throwError("fragment/topic mismatch",pn.Logger.errors.INVALID_ARGUMENT,{argument:"topics[0]",expected:tn,value:en[0]})}en=en.slice(1)}var nn=[];var an=[];var In=[];Wt.inputs.forEach((function(Wt,Pt){if(Wt.indexed){if(Wt.type==="string"||Wt.type==="bytes"||Wt.baseType==="tuple"||Wt.baseType==="array"){nn.push(un.ParamType.fromObject({type:"bytes32",name:Wt.name}));In.push(true)}else{nn.push(Wt);In.push(false)}}else{an.push(Wt);In.push(false)}}));var sn=en!=null?this._abiCoder.decode(nn,(0,rn.concat)(en)):null;var on=this._abiCoder.decode(an,Pt,true);var cn=[];var dn=0,mn=0;Wt.inputs.forEach((function(Wt,Pt){if(Wt.indexed){if(sn==null){cn[Pt]=new An({_isIndexed:true,hash:null})}else if(In[Pt]){cn[Pt]=new An({_isIndexed:true,hash:sn[mn++]})}else{try{cn[Pt]=sn[mn++]}catch(Wt){cn[Pt]=Wt}}}else{try{cn[Pt]=on[dn++]}catch(Wt){cn[Pt]=Wt}}if(Wt.name&&cn[Wt.name]==null){var en=cn[Pt];if(en instanceof Error){Object.defineProperty(cn,Wt.name,{enumerable:true,get:function(){throw wrapAccessError("property "+JSON.stringify(Wt.name),en)}})}else{cn[Wt.name]=en}}}));var _loop_1=function(Wt){var Pt=cn[Wt];if(Pt instanceof Error){Object.defineProperty(cn,Wt,{enumerable:true,get:function(){throw wrapAccessError("index "+Wt,Pt)}})}};for(var Gn=0;Gn{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="abstract-provider/5.7.0"},12825:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();var nn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var an=this&&this.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="abstract-signer/5.7.0"},53870:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();var nn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var an=this&&this.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]=0){throw Wt}return on.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",In.Logger.errors.UNPREDICTABLE_GAS_LIMIT,{error:Wt,tx:Pt})}))}if(Pt.chainId==null){Pt.chainId=this.getChainId()}else{Pt.chainId=Promise.all([Promise.resolve(Pt.chainId),this.getChainId()]).then((function(Pt){if(Pt[1]!==0&&Pt[0]!==Pt[1]){on.throwArgumentError("chainId address mismatch","transaction",Wt)}return Pt[0]}))}return[4,(0,rn.resolveProperties)(Pt)];case 6:return[2,un.sent()]}}))}))};Signer.prototype._checkProvider=function(Wt){if(!this.provider){on.throwError("missing provider",In.Logger.errors.UNSUPPORTED_OPERATION,{operation:Wt||"_checkProvider"})}};Signer.isSigner=function(Wt){return!!(Wt&&Wt._isSigner)};return Signer}();Pt.Signer=un;var pn=function(Wt){tn(VoidSigner,Wt);function VoidSigner(Pt,en){var tn=Wt.call(this)||this;(0,rn.defineReadOnly)(tn,"address",Pt);(0,rn.defineReadOnly)(tn,"provider",en||null);return tn}VoidSigner.prototype.getAddress=function(){return Promise.resolve(this.address)};VoidSigner.prototype._fail=function(Wt,Pt){return Promise.resolve().then((function(){on.throwError(Wt,In.Logger.errors.UNSUPPORTED_OPERATION,{operation:Pt})}))};VoidSigner.prototype.signMessage=function(Wt){return this._fail("VoidSigner cannot sign messages","signMessage")};VoidSigner.prototype.signTransaction=function(Wt){return this._fail("VoidSigner cannot sign transactions","signTransaction")};VoidSigner.prototype._signTypedData=function(Wt,Pt,en){return this._fail("VoidSigner cannot sign typed data","signTypedData")};VoidSigner.prototype.connect=function(Wt){return new VoidSigner(this.address,Wt)};return VoidSigner}(un);Pt.VoidSigner=pn},80810:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="address/5.7.0"},75745:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.getCreate2Address=Pt.getContractAddress=Pt.getIcapAddress=Pt.isAddress=Pt.getAddress=void 0;var tn=en(42006);var nn=en(18202);var an=en(56938);var rn=en(37659);var In=en(76127);var sn=en(80810);var on=new In.Logger(sn.version);function getChecksumAddress(Wt){if(!(0,tn.isHexString)(Wt,20)){on.throwArgumentError("invalid address","address",Wt)}Wt=Wt.toLowerCase();var Pt=Wt.substring(2).split("");var en=new Uint8Array(40);for(var nn=0;nn<40;nn++){en[nn]=Pt[nn].charCodeAt(0)}var rn=(0,tn.arrayify)((0,an.keccak256)(en));for(var nn=0;nn<40;nn+=2){if(rn[nn>>1]>>4>=8){Pt[nn]=Pt[nn].toUpperCase()}if((rn[nn>>1]&15)>=8){Pt[nn+1]=Pt[nn+1].toUpperCase()}}return"0x"+Pt.join("")}var cn=9007199254740991;function log10(Wt){if(Math.log10){return Math.log10(Wt)}return Math.log(Wt)/Math.LN10}var dn={};for(var un=0;un<10;un++){dn[String(un)]=String(un)}for(var un=0;un<26;un++){dn[String.fromCharCode(65+un)]=String(10+un)}var pn=Math.floor(log10(cn));function ibanChecksum(Wt){Wt=Wt.toUpperCase();Wt=Wt.substring(4)+Wt.substring(0,2)+"00";var Pt=Wt.split("").map((function(Wt){return dn[Wt]})).join("");while(Pt.length>=pn){var en=Pt.substring(0,pn);Pt=parseInt(en,10)%97+Pt.substring(en.length)}var tn=String(98-parseInt(Pt,10)%97);while(tn.length<2){tn="0"+tn}return tn}function getAddress(Wt){var Pt=null;if(typeof Wt!=="string"){on.throwArgumentError("invalid address","address",Wt)}if(Wt.match(/^(0x)?[0-9a-fA-F]{40}$/)){if(Wt.substring(0,2)!=="0x"){Wt="0x"+Wt}Pt=getChecksumAddress(Wt);if(Wt.match(/([A-F].*[a-f])|([a-f].*[A-F])/)&&Pt!==Wt){on.throwArgumentError("bad address checksum","address",Wt)}}else if(Wt.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){if(Wt.substring(2,4)!==ibanChecksum(Wt)){on.throwArgumentError("bad icap checksum","address",Wt)}Pt=(0,nn._base36To16)(Wt.substring(4));while(Pt.length<40){Pt="0"+Pt}Pt=getChecksumAddress("0x"+Pt)}else{on.throwArgumentError("invalid address","address",Wt)}return Pt}Pt.getAddress=getAddress;function isAddress(Wt){try{getAddress(Wt);return true}catch(Wt){}return false}Pt.isAddress=isAddress;function getIcapAddress(Wt){var Pt=(0,nn._base16To36)(getAddress(Wt).substring(2)).toUpperCase();while(Pt.length<30){Pt="0"+Pt}return"XE"+ibanChecksum("XE00"+Pt)+Pt}Pt.getIcapAddress=getIcapAddress;function getContractAddress(Wt){var Pt=null;try{Pt=getAddress(Wt.from)}catch(Pt){on.throwArgumentError("missing from address","transaction",Wt)}var en=(0,tn.stripZeros)((0,tn.arrayify)(nn.BigNumber.from(Wt.nonce).toHexString()));return getAddress((0,tn.hexDataSlice)((0,an.keccak256)((0,rn.encode)([Pt,en])),12))}Pt.getContractAddress=getContractAddress;function getCreate2Address(Wt,Pt,en){if((0,tn.hexDataLength)(Pt)!==32){on.throwArgumentError("salt must be 32 bytes","salt",Pt)}if((0,tn.hexDataLength)(en)!==32){on.throwArgumentError("initCodeHash must be 32 bytes","initCodeHash",en)}return getAddress((0,tn.hexDataSlice)((0,an.keccak256)((0,tn.concat)(["0xff",getAddress(Wt),Pt,en])),12))}Pt.getCreate2Address=getCreate2Address},76957:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.encode=Pt.decode=void 0;var tn=en(42006);function decode(Wt){return(0,tn.arrayify)(new Uint8Array(Buffer.from(Wt,"base64")))}Pt.decode=decode;function encode(Wt){return Buffer.from((0,tn.arrayify)(Wt)).toString("base64")}Pt.encode=encode},99032:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.encode=Pt.decode=void 0;var tn=en(76957);Object.defineProperty(Pt,"decode",{enumerable:true,get:function(){return tn.decode}});Object.defineProperty(Pt,"encode",{enumerable:true,get:function(){return tn.encode}})},31426:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Base58=Pt.Base32=Pt.BaseX=void 0;var tn=en(42006);var nn=en(61338);var an=function(){function BaseX(Wt){(0,nn.defineReadOnly)(this,"alphabet",Wt);(0,nn.defineReadOnly)(this,"base",Wt.length);(0,nn.defineReadOnly)(this,"_alphabetMap",{});(0,nn.defineReadOnly)(this,"_leader",Wt.charAt(0));for(var Pt=0;Pt0){en.push(an%this.base);an=an/this.base|0}}var In="";for(var sn=0;Pt[sn]===0&&sn=0;--on){In+=this.alphabet[en[on]]}return In};BaseX.prototype.decode=function(Wt){if(typeof Wt!=="string"){throw new TypeError("Expected String")}var Pt=[];if(Wt.length===0){return new Uint8Array(Pt)}Pt.push(0);for(var en=0;en>=8}while(an>0){Pt.push(an&255);an>>=8}}for(var In=0;Wt[In]===this._leader&&In{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="bignumber/5.7.0"},11157:function(Wt,Pt,en){"use strict";var tn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt._base16To36=Pt._base36To16=Pt.BigNumber=Pt.isBigNumberish=void 0;var nn=tn(en(10633));var an=nn.default.BN;var rn=en(42006);var In=en(76127);var sn=en(6151);var on=new In.Logger(sn.version);var cn={};var dn=9007199254740991;function isBigNumberish(Wt){return Wt!=null&&(pn.isBigNumber(Wt)||typeof Wt==="number"&&Wt%1===0||typeof Wt==="string"&&!!Wt.match(/^-?[0-9]+$/)||(0,rn.isHexString)(Wt)||typeof Wt==="bigint"||(0,rn.isBytes)(Wt))}Pt.isBigNumberish=isBigNumberish;var un=false;var pn=function(){function BigNumber(Wt,Pt){if(Wt!==cn){on.throwError("cannot call constructor directly; use BigNumber.from",In.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new (BigNumber)"})}this._hex=Pt;this._isBigNumber=true;Object.freeze(this)}BigNumber.prototype.fromTwos=function(Wt){return toBigNumber(toBN(this).fromTwos(Wt))};BigNumber.prototype.toTwos=function(Wt){return toBigNumber(toBN(this).toTwos(Wt))};BigNumber.prototype.abs=function(){if(this._hex[0]==="-"){return BigNumber.from(this._hex.substring(1))}return this};BigNumber.prototype.add=function(Wt){return toBigNumber(toBN(this).add(toBN(Wt)))};BigNumber.prototype.sub=function(Wt){return toBigNumber(toBN(this).sub(toBN(Wt)))};BigNumber.prototype.div=function(Wt){var Pt=BigNumber.from(Wt);if(Pt.isZero()){throwFault("division-by-zero","div")}return toBigNumber(toBN(this).div(toBN(Wt)))};BigNumber.prototype.mul=function(Wt){return toBigNumber(toBN(this).mul(toBN(Wt)))};BigNumber.prototype.mod=function(Wt){var Pt=toBN(Wt);if(Pt.isNeg()){throwFault("division-by-zero","mod")}return toBigNumber(toBN(this).umod(Pt))};BigNumber.prototype.pow=function(Wt){var Pt=toBN(Wt);if(Pt.isNeg()){throwFault("negative-power","pow")}return toBigNumber(toBN(this).pow(Pt))};BigNumber.prototype.and=function(Wt){var Pt=toBN(Wt);if(this.isNegative()||Pt.isNeg()){throwFault("unbound-bitwise-result","and")}return toBigNumber(toBN(this).and(Pt))};BigNumber.prototype.or=function(Wt){var Pt=toBN(Wt);if(this.isNegative()||Pt.isNeg()){throwFault("unbound-bitwise-result","or")}return toBigNumber(toBN(this).or(Pt))};BigNumber.prototype.xor=function(Wt){var Pt=toBN(Wt);if(this.isNegative()||Pt.isNeg()){throwFault("unbound-bitwise-result","xor")}return toBigNumber(toBN(this).xor(Pt))};BigNumber.prototype.mask=function(Wt){if(this.isNegative()||Wt<0){throwFault("negative-width","mask")}return toBigNumber(toBN(this).maskn(Wt))};BigNumber.prototype.shl=function(Wt){if(this.isNegative()||Wt<0){throwFault("negative-width","shl")}return toBigNumber(toBN(this).shln(Wt))};BigNumber.prototype.shr=function(Wt){if(this.isNegative()||Wt<0){throwFault("negative-width","shr")}return toBigNumber(toBN(this).shrn(Wt))};BigNumber.prototype.eq=function(Wt){return toBN(this).eq(toBN(Wt))};BigNumber.prototype.lt=function(Wt){return toBN(this).lt(toBN(Wt))};BigNumber.prototype.lte=function(Wt){return toBN(this).lte(toBN(Wt))};BigNumber.prototype.gt=function(Wt){return toBN(this).gt(toBN(Wt))};BigNumber.prototype.gte=function(Wt){return toBN(this).gte(toBN(Wt))};BigNumber.prototype.isNegative=function(){return this._hex[0]==="-"};BigNumber.prototype.isZero=function(){return toBN(this).isZero()};BigNumber.prototype.toNumber=function(){try{return toBN(this).toNumber()}catch(Wt){throwFault("overflow","toNumber",this.toString())}return null};BigNumber.prototype.toBigInt=function(){try{return BigInt(this.toString())}catch(Wt){}return on.throwError("this platform does not support BigInt",In.Logger.errors.UNSUPPORTED_OPERATION,{value:this.toString()})};BigNumber.prototype.toString=function(){if(arguments.length>0){if(arguments[0]===10){if(!un){un=true;on.warn("BigNumber.toString does not accept any parameters; base-10 is assumed")}}else if(arguments[0]===16){on.throwError("BigNumber.toString does not accept any parameters; use bigNumber.toHexString()",In.Logger.errors.UNEXPECTED_ARGUMENT,{})}else{on.throwError("BigNumber.toString does not accept parameters",In.Logger.errors.UNEXPECTED_ARGUMENT,{})}}return toBN(this).toString(10)};BigNumber.prototype.toHexString=function(){return this._hex};BigNumber.prototype.toJSON=function(Wt){return{type:"BigNumber",hex:this.toHexString()}};BigNumber.from=function(Wt){if(Wt instanceof BigNumber){return Wt}if(typeof Wt==="string"){if(Wt.match(/^-?0x[0-9a-f]+$/i)){return new BigNumber(cn,toHex(Wt))}if(Wt.match(/^-?[0-9]+$/)){return new BigNumber(cn,toHex(new an(Wt)))}return on.throwArgumentError("invalid BigNumber string","value",Wt)}if(typeof Wt==="number"){if(Wt%1){throwFault("underflow","BigNumber.from",Wt)}if(Wt>=dn||Wt<=-dn){throwFault("overflow","BigNumber.from",Wt)}return BigNumber.from(String(Wt))}var Pt=Wt;if(typeof Pt==="bigint"){return BigNumber.from(Pt.toString())}if((0,rn.isBytes)(Pt)){return BigNumber.from((0,rn.hexlify)(Pt))}if(Pt){if(Pt.toHexString){var en=Pt.toHexString();if(typeof en==="string"){return BigNumber.from(en)}}else{var en=Pt._hex;if(en==null&&Pt.type==="BigNumber"){en=Pt.hex}if(typeof en==="string"){if((0,rn.isHexString)(en)||en[0]==="-"&&(0,rn.isHexString)(en.substring(1))){return BigNumber.from(en)}}}}return on.throwArgumentError("invalid BigNumber value","value",Wt)};BigNumber.isBigNumber=function(Wt){return!!(Wt&&Wt._isBigNumber)};return BigNumber}();Pt.BigNumber=pn;function toHex(Wt){if(typeof Wt!=="string"){return toHex(Wt.toString(16))}if(Wt[0]==="-"){Wt=Wt.substring(1);if(Wt[0]==="-"){on.throwArgumentError("invalid hex","value",Wt)}Wt=toHex(Wt);if(Wt==="0x00"){return Wt}return"-"+Wt}if(Wt.substring(0,2)!=="0x"){Wt="0x"+Wt}if(Wt==="0x"){return"0x00"}if(Wt.length%2){Wt="0x0"+Wt.substring(2)}while(Wt.length>4&&Wt.substring(0,4)==="0x00"){Wt="0x"+Wt.substring(4)}return Wt}function toBigNumber(Wt){return pn.from(toHex(Wt))}function toBN(Wt){var Pt=pn.from(Wt).toHexString();if(Pt[0]==="-"){return new an("-"+Pt.substring(3),16)}return new an(Pt.substring(2),16)}function throwFault(Wt,Pt,en){var tn={fault:Wt,operation:Pt};if(en!=null){tn.value=en}return on.throwError(Wt,In.Logger.errors.NUMERIC_FAULT,tn)}function _base36To16(Wt){return new an(Wt,36).toString(16)}Pt._base36To16=_base36To16;function _base16To36(Wt){return new an(Wt,16).toString(36)}Pt._base16To36=_base16To36},91297:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.FixedNumber=Pt.FixedFormat=Pt.parseFixed=Pt.formatFixed=void 0;var tn=en(42006);var nn=en(76127);var an=en(6151);var rn=new nn.Logger(an.version);var In=en(11157);var sn={};var on=In.BigNumber.from(0);var cn=In.BigNumber.from(-1);function throwFault(Wt,Pt,en,tn){var an={fault:Pt,operation:en};if(tn!==undefined){an.value=tn}return rn.throwError(Wt,nn.Logger.errors.NUMERIC_FAULT,an)}var dn="0";while(dn.length<256){dn+=dn}function getMultiplier(Wt){if(typeof Wt!=="number"){try{Wt=In.BigNumber.from(Wt).toNumber()}catch(Wt){}}if(typeof Wt==="number"&&Wt>=0&&Wt<=256&&!(Wt%1)){return"1"+dn.substring(0,Wt)}return rn.throwArgumentError("invalid decimal size","decimals",Wt)}function formatFixed(Wt,Pt){if(Pt==null){Pt=0}var en=getMultiplier(Pt);Wt=In.BigNumber.from(Wt);var tn=Wt.lt(on);if(tn){Wt=Wt.mul(cn)}var nn=Wt.mod(en).toString();while(nn.length2){rn.throwArgumentError("too many decimal points","value",Wt)}var an=nn[0],sn=nn[1];if(!an){an="0"}if(!sn){sn="0"}while(sn[sn.length-1]==="0"){sn=sn.substring(0,sn.length-1)}if(sn.length>en.length-1){throwFault("fractional component exceeds decimals","underflow","parseFixed")}if(sn===""){sn="0"}while(sn.length80){rn.throwArgumentError("invalid fixed format (decimals too large)","format.decimals",tn)}return new FixedFormat(sn,Pt,en,tn)};return FixedFormat}();Pt.FixedFormat=un;var pn=function(){function FixedNumber(Wt,Pt,en,tn){if(Wt!==sn){rn.throwError("cannot use FixedNumber constructor; use FixedNumber.from",nn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new FixedFormat"})}this.format=tn;this._hex=Pt;this._value=en;this._isFixedNumber=true;Object.freeze(this)}FixedNumber.prototype._checkFormat=function(Wt){if(this.format.name!==Wt.format.name){rn.throwArgumentError("incompatible format; use fixedNumber.toFormat","other",Wt)}};FixedNumber.prototype.addUnsafe=function(Wt){this._checkFormat(Wt);var Pt=parseFixed(this._value,this.format.decimals);var en=parseFixed(Wt._value,Wt.format.decimals);return FixedNumber.fromValue(Pt.add(en),this.format.decimals,this.format)};FixedNumber.prototype.subUnsafe=function(Wt){this._checkFormat(Wt);var Pt=parseFixed(this._value,this.format.decimals);var en=parseFixed(Wt._value,Wt.format.decimals);return FixedNumber.fromValue(Pt.sub(en),this.format.decimals,this.format)};FixedNumber.prototype.mulUnsafe=function(Wt){this._checkFormat(Wt);var Pt=parseFixed(this._value,this.format.decimals);var en=parseFixed(Wt._value,Wt.format.decimals);return FixedNumber.fromValue(Pt.mul(en).div(this.format._multiplier),this.format.decimals,this.format)};FixedNumber.prototype.divUnsafe=function(Wt){this._checkFormat(Wt);var Pt=parseFixed(this._value,this.format.decimals);var en=parseFixed(Wt._value,Wt.format.decimals);return FixedNumber.fromValue(Pt.mul(this.format._multiplier).div(en),this.format.decimals,this.format)};FixedNumber.prototype.floor=function(){var Wt=this.toString().split(".");if(Wt.length===1){Wt.push("0")}var Pt=FixedNumber.from(Wt[0],this.format);var en=!Wt[1].match(/^(0*)$/);if(this.isNegative()&&en){Pt=Pt.subUnsafe(mn.toFormat(Pt.format))}return Pt};FixedNumber.prototype.ceiling=function(){var Wt=this.toString().split(".");if(Wt.length===1){Wt.push("0")}var Pt=FixedNumber.from(Wt[0],this.format);var en=!Wt[1].match(/^(0*)$/);if(!this.isNegative()&&en){Pt=Pt.addUnsafe(mn.toFormat(Pt.format))}return Pt};FixedNumber.prototype.round=function(Wt){if(Wt==null){Wt=0}var Pt=this.toString().split(".");if(Pt.length===1){Pt.push("0")}if(Wt<0||Wt>80||Wt%1){rn.throwArgumentError("invalid decimal count","decimals",Wt)}if(Pt[1].length<=Wt){return this}var en=FixedNumber.from("1"+dn.substring(0,Wt),this.format);var tn=bn.toFormat(this.format);return this.mulUnsafe(en).addUnsafe(tn).floor().divUnsafe(en)};FixedNumber.prototype.isZero=function(){return this._value==="0.0"||this._value==="0"};FixedNumber.prototype.isNegative=function(){return this._value[0]==="-"};FixedNumber.prototype.toString=function(){return this._value};FixedNumber.prototype.toHexString=function(Wt){if(Wt==null){return this._hex}if(Wt%8){rn.throwArgumentError("invalid byte width","width",Wt)}var Pt=In.BigNumber.from(this._hex).fromTwos(this.format.width).toTwos(Wt).toHexString();return(0,tn.hexZeroPad)(Pt,Wt/8)};FixedNumber.prototype.toUnsafeFloat=function(){return parseFloat(this.toString())};FixedNumber.prototype.toFormat=function(Wt){return FixedNumber.fromString(this._value,Wt)};FixedNumber.fromValue=function(Wt,Pt,en){if(en==null&&Pt!=null&&!(0,In.isBigNumberish)(Pt)){en=Pt;Pt=null}if(Pt==null){Pt=0}if(en==null){en="fixed"}return FixedNumber.fromString(formatFixed(Wt,Pt),un.from(en))};FixedNumber.fromString=function(Wt,Pt){if(Pt==null){Pt="fixed"}var en=un.from(Pt);var nn=parseFixed(Wt,en.decimals);if(!en.signed&&nn.lt(on)){throwFault("unsigned value cannot be negative","overflow","value",Wt)}var an=null;if(en.signed){an=nn.toTwos(en.width).toHexString()}else{an=nn.toHexString();an=(0,tn.hexZeroPad)(an,en.width/8)}var rn=formatFixed(nn,en.decimals);return new FixedNumber(sn,an,rn,en)};FixedNumber.fromBytes=function(Wt,Pt){if(Pt==null){Pt="fixed"}var en=un.from(Pt);if((0,tn.arrayify)(Wt).length>en.width/8){throw new Error("overflow")}var nn=In.BigNumber.from(Wt);if(en.signed){nn=nn.fromTwos(en.width)}var an=nn.toTwos((en.signed?0:1)+en.width).toHexString();var rn=formatFixed(nn,en.decimals);return new FixedNumber(sn,an,rn,en)};FixedNumber.from=function(Wt,Pt){if(typeof Wt==="string"){return FixedNumber.fromString(Wt,Pt)}if((0,tn.isBytes)(Wt)){return FixedNumber.fromBytes(Wt,Pt)}try{return FixedNumber.fromValue(Wt,0,Pt)}catch(Wt){if(Wt.code!==nn.Logger.errors.INVALID_ARGUMENT){throw Wt}}return rn.throwArgumentError("invalid FixedNumber value","value",Wt)};FixedNumber.isFixedNumber=function(Wt){return!!(Wt&&Wt._isFixedNumber)};return FixedNumber}();Pt.FixedNumber=pn;var mn=pn.from(1);var bn=pn.from("0.5")},18202:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt._base36To16=Pt._base16To36=Pt.parseFixed=Pt.FixedNumber=Pt.FixedFormat=Pt.formatFixed=Pt.BigNumber=void 0;var tn=en(11157);Object.defineProperty(Pt,"BigNumber",{enumerable:true,get:function(){return tn.BigNumber}});var nn=en(91297);Object.defineProperty(Pt,"formatFixed",{enumerable:true,get:function(){return nn.formatFixed}});Object.defineProperty(Pt,"FixedFormat",{enumerable:true,get:function(){return nn.FixedFormat}});Object.defineProperty(Pt,"FixedNumber",{enumerable:true,get:function(){return nn.FixedNumber}});Object.defineProperty(Pt,"parseFixed",{enumerable:true,get:function(){return nn.parseFixed}});var an=en(11157);Object.defineProperty(Pt,"_base16To36",{enumerable:true,get:function(){return an._base16To36}});Object.defineProperty(Pt,"_base36To16",{enumerable:true,get:function(){return an._base36To16}})},28539:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="bytes/5.7.0"},42006:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.joinSignature=Pt.splitSignature=Pt.hexZeroPad=Pt.hexStripZeros=Pt.hexValue=Pt.hexConcat=Pt.hexDataSlice=Pt.hexDataLength=Pt.hexlify=Pt.isHexString=Pt.zeroPad=Pt.stripZeros=Pt.concat=Pt.arrayify=Pt.isBytes=Pt.isBytesLike=void 0;var tn=en(76127);var nn=en(28539);var an=new tn.Logger(nn.version);function isHexable(Wt){return!!Wt.toHexString}function addSlice(Wt){if(Wt.slice){return Wt}Wt.slice=function(){var Pt=Array.prototype.slice.call(arguments);return addSlice(new Uint8Array(Array.prototype.slice.apply(Wt,Pt)))};return Wt}function isBytesLike(Wt){return isHexString(Wt)&&!(Wt.length%2)||isBytes(Wt)}Pt.isBytesLike=isBytesLike;function isInteger(Wt){return typeof Wt==="number"&&Wt==Wt&&Wt%1===0}function isBytes(Wt){if(Wt==null){return false}if(Wt.constructor===Uint8Array){return true}if(typeof Wt==="string"){return false}if(!isInteger(Wt.length)||Wt.length<0){return false}for(var Pt=0;Pt=256){return false}}return true}Pt.isBytes=isBytes;function arrayify(Wt,Pt){if(!Pt){Pt={}}if(typeof Wt==="number"){an.checkSafeUint53(Wt,"invalid arrayify value");var en=[];while(Wt){en.unshift(Wt&255);Wt=parseInt(String(Wt/256))}if(en.length===0){en.push(0)}return addSlice(new Uint8Array(en))}if(Pt.allowMissingPrefix&&typeof Wt==="string"&&Wt.substring(0,2)!=="0x"){Wt="0x"+Wt}if(isHexable(Wt)){Wt=Wt.toHexString()}if(isHexString(Wt)){var tn=Wt.substring(2);if(tn.length%2){if(Pt.hexPad==="left"){tn="0"+tn}else if(Pt.hexPad==="right"){tn+="0"}else{an.throwArgumentError("hex data is odd-length","value",Wt)}}var en=[];for(var nn=0;nnPt){an.throwArgumentError("value out of range","value",arguments[0])}var en=new Uint8Array(Pt);en.set(Wt,Pt-Wt.length);return addSlice(en)}Pt.zeroPad=zeroPad;function isHexString(Wt,Pt){if(typeof Wt!=="string"||!Wt.match(/^0x[0-9A-Fa-f]*$/)){return false}if(Pt&&Wt.length!==2+2*Pt){return false}return true}Pt.isHexString=isHexString;var rn="0123456789abcdef";function hexlify(Wt,Pt){if(!Pt){Pt={}}if(typeof Wt==="number"){an.checkSafeUint53(Wt,"invalid hexlify value");var en="";while(Wt){en=rn[Wt&15]+en;Wt=Math.floor(Wt/16)}if(en.length){if(en.length%2){en="0"+en}return"0x"+en}return"0x00"}if(typeof Wt==="bigint"){Wt=Wt.toString(16);if(Wt.length%2){return"0x0"+Wt}return"0x"+Wt}if(Pt.allowMissingPrefix&&typeof Wt==="string"&&Wt.substring(0,2)!=="0x"){Wt="0x"+Wt}if(isHexable(Wt)){return Wt.toHexString()}if(isHexString(Wt)){if(Wt.length%2){if(Pt.hexPad==="left"){Wt="0x0"+Wt.substring(2)}else if(Pt.hexPad==="right"){Wt+="0"}else{an.throwArgumentError("hex data is odd-length","value",Wt)}}return Wt.toLowerCase()}if(isBytes(Wt)){var tn="0x";for(var nn=0;nn>4]+rn[In&15]}return tn}return an.throwArgumentError("invalid hexlify value","value",Wt)}Pt.hexlify=hexlify;function hexDataLength(Wt){if(typeof Wt!=="string"){Wt=hexlify(Wt)}else if(!isHexString(Wt)||Wt.length%2){return null}return(Wt.length-2)/2}Pt.hexDataLength=hexDataLength;function hexDataSlice(Wt,Pt,en){if(typeof Wt!=="string"){Wt=hexlify(Wt)}else if(!isHexString(Wt)||Wt.length%2){an.throwArgumentError("invalid hexData","value",Wt)}Pt=2+2*Pt;if(en!=null){return"0x"+Wt.substring(Pt,2+2*en)}return"0x"+Wt.substring(Pt)}Pt.hexDataSlice=hexDataSlice;function hexConcat(Wt){var Pt="0x";Wt.forEach((function(Wt){Pt+=hexlify(Wt).substring(2)}));return Pt}Pt.hexConcat=hexConcat;function hexValue(Wt){var Pt=hexStripZeros(hexlify(Wt,{hexPad:"left"}));if(Pt==="0x"){return"0x0"}return Pt}Pt.hexValue=hexValue;function hexStripZeros(Wt){if(typeof Wt!=="string"){Wt=hexlify(Wt)}if(!isHexString(Wt)){an.throwArgumentError("invalid hex string","value",Wt)}Wt=Wt.substring(2);var Pt=0;while(Pt2*Pt+2){an.throwArgumentError("value out of range","value",arguments[1])}while(Wt.length<2*Pt+2){Wt="0x0"+Wt.substring(2)}return Wt}Pt.hexZeroPad=hexZeroPad;function splitSignature(Wt){var Pt={r:"0x",s:"0x",_vs:"0x",recoveryParam:0,v:0,yParityAndS:"0x",compact:"0x"};if(isBytesLike(Wt)){var en=arrayify(Wt);if(en.length===64){Pt.v=27+(en[32]>>7);en[32]&=127;Pt.r=hexlify(en.slice(0,32));Pt.s=hexlify(en.slice(32,64))}else if(en.length===65){Pt.r=hexlify(en.slice(0,32));Pt.s=hexlify(en.slice(32,64));Pt.v=en[64]}else{an.throwArgumentError("invalid signature string","signature",Wt)}if(Pt.v<27){if(Pt.v===0||Pt.v===1){Pt.v+=27}else{an.throwArgumentError("signature invalid v byte","signature",Wt)}}Pt.recoveryParam=1-Pt.v%2;if(Pt.recoveryParam){en[32]|=128}Pt._vs=hexlify(en.slice(32,64))}else{Pt.r=Wt.r;Pt.s=Wt.s;Pt.v=Wt.v;Pt.recoveryParam=Wt.recoveryParam;Pt._vs=Wt._vs;if(Pt._vs!=null){var tn=zeroPad(arrayify(Pt._vs),32);Pt._vs=hexlify(tn);var nn=tn[0]>=128?1:0;if(Pt.recoveryParam==null){Pt.recoveryParam=nn}else if(Pt.recoveryParam!==nn){an.throwArgumentError("signature recoveryParam mismatch _vs","signature",Wt)}tn[0]&=127;var rn=hexlify(tn);if(Pt.s==null){Pt.s=rn}else if(Pt.s!==rn){an.throwArgumentError("signature v mismatch _vs","signature",Wt)}}if(Pt.recoveryParam==null){if(Pt.v==null){an.throwArgumentError("signature missing v and recoveryParam","signature",Wt)}else if(Pt.v===0||Pt.v===1){Pt.recoveryParam=Pt.v}else{Pt.recoveryParam=1-Pt.v%2}}else{if(Pt.v==null){Pt.v=27+Pt.recoveryParam}else{var In=Pt.v===0||Pt.v===1?Pt.v:1-Pt.v%2;if(Pt.recoveryParam!==In){an.throwArgumentError("signature recoveryParam mismatch v","signature",Wt)}}}if(Pt.r==null||!isHexString(Pt.r)){an.throwArgumentError("signature missing or invalid r","signature",Wt)}else{Pt.r=hexZeroPad(Pt.r,32)}if(Pt.s==null||!isHexString(Pt.s)){an.throwArgumentError("signature missing or invalid s","signature",Wt)}else{Pt.s=hexZeroPad(Pt.s,32)}var sn=arrayify(Pt.s);if(sn[0]>=128){an.throwArgumentError("signature s out of range","signature",Wt)}if(Pt.recoveryParam){sn[0]|=128}var on=hexlify(sn);if(Pt._vs){if(!isHexString(Pt._vs)){an.throwArgumentError("signature invalid _vs","signature",Wt)}Pt._vs=hexZeroPad(Pt._vs,32)}if(Pt._vs==null){Pt._vs=on}else if(Pt._vs!==on){an.throwArgumentError("signature _vs mismatch v and s","signature",Wt)}}Pt.yParityAndS=Pt._vs;Pt.compact=Pt.r+Pt.yParityAndS.substring(2);return Pt}Pt.splitSignature=splitSignature;function joinSignature(Wt){Wt=splitSignature(Wt);return hexlify(concat([Wt.r,Wt.s,Wt.recoveryParam?"0x1c":"0x1b"]))}Pt.joinSignature=joinSignature},89224:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.AddressZero=void 0;Pt.AddressZero="0x0000000000000000000000000000000000000000"},40662:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.MaxInt256=Pt.MinInt256=Pt.MaxUint256=Pt.WeiPerEther=Pt.Two=Pt.One=Pt.Zero=Pt.NegativeOne=void 0;var tn=en(18202);var nn=tn.BigNumber.from(-1);Pt.NegativeOne=nn;var an=tn.BigNumber.from(0);Pt.Zero=an;var rn=tn.BigNumber.from(1);Pt.One=rn;var In=tn.BigNumber.from(2);Pt.Two=In;var sn=tn.BigNumber.from("1000000000000000000");Pt.WeiPerEther=sn;var on=tn.BigNumber.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");Pt.MaxUint256=on;var cn=tn.BigNumber.from("-0x8000000000000000000000000000000000000000000000000000000000000000");Pt.MinInt256=cn;var dn=tn.BigNumber.from("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");Pt.MaxInt256=dn},35550:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.HashZero=void 0;Pt.HashZero="0x0000000000000000000000000000000000000000000000000000000000000000"},99848:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.EtherSymbol=Pt.HashZero=Pt.MaxInt256=Pt.MinInt256=Pt.MaxUint256=Pt.WeiPerEther=Pt.Two=Pt.One=Pt.Zero=Pt.NegativeOne=Pt.AddressZero=void 0;var tn=en(89224);Object.defineProperty(Pt,"AddressZero",{enumerable:true,get:function(){return tn.AddressZero}});var nn=en(40662);Object.defineProperty(Pt,"NegativeOne",{enumerable:true,get:function(){return nn.NegativeOne}});Object.defineProperty(Pt,"Zero",{enumerable:true,get:function(){return nn.Zero}});Object.defineProperty(Pt,"One",{enumerable:true,get:function(){return nn.One}});Object.defineProperty(Pt,"Two",{enumerable:true,get:function(){return nn.Two}});Object.defineProperty(Pt,"WeiPerEther",{enumerable:true,get:function(){return nn.WeiPerEther}});Object.defineProperty(Pt,"MaxUint256",{enumerable:true,get:function(){return nn.MaxUint256}});Object.defineProperty(Pt,"MinInt256",{enumerable:true,get:function(){return nn.MinInt256}});Object.defineProperty(Pt,"MaxInt256",{enumerable:true,get:function(){return nn.MaxInt256}});var an=en(35550);Object.defineProperty(Pt,"HashZero",{enumerable:true,get:function(){return an.HashZero}});var rn=en(18178);Object.defineProperty(Pt,"EtherSymbol",{enumerable:true,get:function(){return rn.EtherSymbol}})},18178:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.EtherSymbol=void 0;Pt.EtherSymbol="Ξ"},96511:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="contracts/5.7.0"},98322:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();var nn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var an=this&&this.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]1){return}Wt=Wt.substring(1);var en=Pt[0];try{if(nn[Wt]==null){(0,pn.defineReadOnly)(nn,Wt,nn[en])}}catch(Wt){}if(nn.functions[Wt]==null){(0,pn.defineReadOnly)(nn.functions,Wt,nn.functions[en])}if(nn.callStatic[Wt]==null){(0,pn.defineReadOnly)(nn.callStatic,Wt,nn.callStatic[en])}if(nn.populateTransaction[Wt]==null){(0,pn.defineReadOnly)(nn.populateTransaction,Wt,nn.populateTransaction[en])}if(nn.estimateGas[Wt]==null){(0,pn.defineReadOnly)(nn.estimateGas,Wt,nn.estimateGas[en])}}))}BaseContract.getContractAddress=function(Wt){return(0,cn.getContractAddress)(Wt)};BaseContract.getInterface=function(Wt){if(In.Interface.isInterface(Wt)){return Wt}return new In.Interface(Wt)};BaseContract.prototype.deployed=function(){return this._deployed()};BaseContract.prototype._deployed=function(Wt){var Pt=this;if(!this._deployedPromise){if(this.deployTransaction){this._deployedPromise=this.deployTransaction.wait().then((function(){return Pt}))}else{this._deployedPromise=this.provider.getCode(this.address,Wt).then((function(Wt){if(Wt==="0x"){hn.throwError("contract not deployed",bn.Logger.errors.UNSUPPORTED_OPERATION,{contractAddress:Pt.address,operation:"getDeployed"})}return Pt}))}}return this._deployedPromise};BaseContract.prototype.fallback=function(Wt){var Pt=this;if(!this.signer){hn.throwError("sending a transactions require a signer",bn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"sendTransaction(fallback)"})}var en=(0,pn.shallowCopy)(Wt||{});["from","to"].forEach((function(Wt){if(en[Wt]==null){return}hn.throwError("cannot override "+Wt,bn.Logger.errors.UNSUPPORTED_OPERATION,{operation:Wt})}));en.to=this.resolvedAddress;return this.deployed().then((function(){return Pt.signer.sendTransaction(en)}))};BaseContract.prototype.connect=function(Wt){if(typeof Wt==="string"){Wt=new on.VoidSigner(Wt,this.provider)}var Pt=new this.constructor(this.address,this.interface,Wt);if(this.deployTransaction){(0,pn.defineReadOnly)(Pt,"deployTransaction",this.deployTransaction)}return Pt};BaseContract.prototype.attach=function(Wt){return new this.constructor(Wt,this.interface,this.signer||this.provider)};BaseContract.isIndexed=function(Wt){return In.Indexed.isIndexed(Wt)};BaseContract.prototype._normalizeRunningEvent=function(Wt){if(this._runningEvents[Wt.tag]){return this._runningEvents[Wt.tag]}return Wt};BaseContract.prototype._getRunningEvent=function(Wt){if(typeof Wt==="string"){if(Wt==="error"){return this._normalizeRunningEvent(new Wn)}if(Wt==="event"){return this._normalizeRunningEvent(new An("event",null))}if(Wt==="*"){return this._normalizeRunningEvent(new gn(this.address,this.interface))}var Pt=this.interface.getEvent(Wt);return this._normalizeRunningEvent(new Nn(this.address,this.interface,Pt))}if(Wt.topics&&Wt.topics.length>0){try{var en=Wt.topics[0];if(typeof en!=="string"){throw new Error("invalid topic")}var Pt=this.interface.getEvent(en);return this._normalizeRunningEvent(new Nn(this.address,this.interface,Pt,Wt.topics))}catch(Wt){}var tn={address:this.address,topics:Wt.topics};return this._normalizeRunningEvent(new An(getEventTag(tn),tn))}return this._normalizeRunningEvent(new gn(this.address,this.interface))};BaseContract.prototype._checkRunningEvents=function(Wt){if(Wt.listenerCount()===0){delete this._runningEvents[Wt.tag];var Pt=this._wrappedEmits[Wt.tag];if(Pt&&Wt.filter){this.provider.off(Wt.filter,Pt);delete this._wrappedEmits[Wt.tag]}}};BaseContract.prototype._wrapEvent=function(Wt,Pt,en){var tn=this;var nn=(0,pn.deepCopy)(Pt);nn.removeListener=function(){if(!en){return}Wt.removeListener(en);tn._checkRunningEvents(Wt)};nn.getBlock=function(){return tn.provider.getBlock(Pt.blockHash)};nn.getTransaction=function(){return tn.provider.getTransaction(Pt.transactionHash)};nn.getTransactionReceipt=function(){return tn.provider.getTransactionReceipt(Pt.transactionHash)};Wt.prepareEvent(nn);return nn};BaseContract.prototype._addEventListener=function(Wt,Pt,en){var tn=this;if(!this.provider){hn.throwError("events require a provider or a signer with a provider",bn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"once"})}Wt.addListener(Pt,en);this._runningEvents[Wt.tag]=Wt;if(!this._wrappedEmits[Wt.tag]){var wrappedEmit=function(en){var nn=tn._wrapEvent(Wt,en,Pt);if(nn.decodeError==null){try{var an=Wt.getEmit(nn);tn.emit.apply(tn,rn([Wt.filter],an,false))}catch(Wt){nn.decodeError=Wt.error}}if(Wt.filter!=null){tn.emit("event",nn)}if(nn.decodeError!=null){tn.emit("error",nn.decodeError,nn)}};this._wrappedEmits[Wt.tag]=wrappedEmit;if(Wt.filter!=null){this.provider.on(Wt.filter,wrappedEmit)}}};BaseContract.prototype.queryFilter=function(Wt,Pt,en){var tn=this;var nn=this._getRunningEvent(Wt);var an=(0,pn.shallowCopy)(nn.filter);if(typeof Pt==="string"&&(0,un.isHexString)(Pt,32)){if(en!=null){hn.throwArgumentError("cannot specify toBlock with blockhash","toBlock",en)}an.blockHash=Pt}else{an.fromBlock=Pt!=null?Pt:0;an.toBlock=en!=null?en:"latest"}return this.provider.getLogs(an).then((function(Wt){return Wt.map((function(Wt){return tn._wrapEvent(nn,Wt,null)}))}))};BaseContract.prototype.on=function(Wt,Pt){this._addEventListener(this._getRunningEvent(Wt),Pt,false);return this};BaseContract.prototype.once=function(Wt,Pt){this._addEventListener(this._getRunningEvent(Wt),Pt,true);return this};BaseContract.prototype.emit=function(Wt){var Pt=[];for(var en=1;en0;this._checkRunningEvents(tn);return nn};BaseContract.prototype.listenerCount=function(Wt){var Pt=this;if(!this.provider){return 0}if(Wt==null){return Object.keys(this._runningEvents).reduce((function(Wt,en){return Wt+Pt._runningEvents[en].listenerCount()}),0)}return this._getRunningEvent(Wt).listenerCount()};BaseContract.prototype.listeners=function(Wt){if(!this.provider){return[]}if(Wt==null){var Pt=[];for(var en in this._runningEvents){this._runningEvents[en].listeners().forEach((function(Wt){Pt.push(Wt)}))}return Pt}return this._getRunningEvent(Wt).listeners()};BaseContract.prototype.removeAllListeners=function(Wt){if(!this.provider){return this}if(Wt==null){for(var Pt in this._runningEvents){var en=this._runningEvents[Pt];en.removeAllListeners();this._checkRunningEvents(en)}return this}var tn=this._getRunningEvent(Wt);tn.removeAllListeners();this._checkRunningEvents(tn);return this};BaseContract.prototype.off=function(Wt,Pt){if(!this.provider){return this}var en=this._getRunningEvent(Wt);en.removeListener(Pt);this._checkRunningEvents(en);return this};BaseContract.prototype.removeListener=function(Wt,Pt){return this.off(Wt,Pt)};return BaseContract}();Pt.BaseContract=yn;var vn=function(Wt){tn(Contract,Wt);function Contract(){return Wt!==null&&Wt.apply(this,arguments)||this}return Contract}(yn);Pt.Contract=vn;var Yn=function(){function ContractFactory(Wt,Pt,en){var tn=this.constructor;var nn=null;if(typeof Pt==="string"){nn=Pt}else if((0,un.isBytes)(Pt)){nn=(0,un.hexlify)(Pt)}else if(Pt&&typeof Pt.object==="string"){nn=Pt.object}else{nn="!"}if(nn.substring(0,2)!=="0x"){nn="0x"+nn}if(!(0,un.isHexString)(nn)||nn.length%2){hn.throwArgumentError("invalid bytecode","bytecode",Pt)}if(en&&!on.Signer.isSigner(en)){hn.throwArgumentError("invalid signer","signer",en)}(0,pn.defineReadOnly)(this,"bytecode",nn);(0,pn.defineReadOnly)(this,"interface",(0,pn.getStatic)(tn,"getInterface")(Wt));(0,pn.defineReadOnly)(this,"signer",en||null)}ContractFactory.prototype.getDeployTransaction=function(){var Wt=[];for(var Pt=0;Pt{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="hash/5.7.0"},92302:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.read_emoji_trie=Pt.read_zero_terminated_array=Pt.read_mapped_map=Pt.read_member_array=Pt.signed=Pt.read_compressed_payload=Pt.read_payload=Pt.decode_arithmetic=void 0;function flat(Wt,Pt){if(Pt==null){Pt=1}var en=[];var tn=en.forEach;var flatDeep=function(Wt,Pt){tn.call(Wt,(function(Wt){if(Pt>0&&Array.isArray(Wt)){flatDeep(Wt,Pt-1)}else{en.push(Wt)}}))};flatDeep(Wt,Pt);return en}function fromEntries(Wt){var Pt={};for(var en=0;en>--sn&1}var cn=31;var dn=Math.pow(2,cn);var un=dn>>>1;var pn=un>>1;var mn=dn-1;var bn=0;for(var an=0;an1){var gn=Wn+Nn>>>1;if(An>>1|read_bit();yn=yn<<1^un;vn=(vn^un)<<1|un|1}hn=yn;Zn=1+vn-yn}var Yn=en-4;return Gn.map((function(Pt){switch(Pt-Yn){case 3:return Yn+65792+(Wt[In++]<<16|Wt[In++]<<8|Wt[In++]);case 2:return Yn+256+(Wt[In++]<<8|Wt[In++]);case 1:return Yn+Wt[In++];default:return Pt-1}}))}Pt.decode_arithmetic=decode_arithmetic;function read_payload(Wt){var Pt=0;return function(){return Wt[Pt++]}}Pt.read_payload=read_payload;function read_compressed_payload(Wt){return read_payload(decode_arithmetic(Wt))}Pt.read_compressed_payload=read_compressed_payload;function signed(Wt){return Wt&1?~Wt>>1:Wt>>1}Pt.signed=signed;function read_counts(Wt,Pt){var en=Array(Wt);for(var tn=0;tn>=1;var In=nn==1;var sn=nn==2;return{branches:en,valid:an,fe0f:rn,save:In,check:sn}}}Pt.read_emoji_trie=read_emoji_trie},97666:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.getData=void 0;var tn=en(99032);var nn=en(92302);function getData(){return(0,nn.read_compressed_payload)((0,tn.decode)("AEQF2AO2DEsA2wIrAGsBRABxAN8AZwCcAEwAqgA0AGwAUgByADcATAAVAFYAIQAyACEAKAAYAFgAGwAjABQAMAAmADIAFAAfABQAKwATACoADgAbAA8AHQAYABoAGQAxADgALAAoADwAEwA9ABMAGgARAA4ADwAWABMAFgAIAA8AHgQXBYMA5BHJAS8JtAYoAe4AExozi0UAH21tAaMnBT8CrnIyhrMDhRgDygIBUAEHcoFHUPe8AXBjAewCjgDQR8IICIcEcQLwATXCDgzvHwBmBoHNAqsBdBcUAykgDhAMShskMgo8AY8jqAQfAUAfHw8BDw87MioGlCIPBwZCa4ELatMAAMspJVgsDl8AIhckSg8XAHdvTwBcIQEiDT4OPhUqbyECAEoAS34Aej8Ybx83JgT/Xw8gHxZ/7w8RICxPHA9vBw+Pfw8PHwAPFv+fAsAvCc8vEr8ivwD/EQ8Bol8OEBa/A78hrwAPCU8vESNvvwWfHwNfAVoDHr+ZAAED34YaAdJPAK7PLwSEgDLHAGo1Pz8Pvx9fUwMrpb8O/58VTzAPIBoXIyQJNF8hpwIVAT8YGAUADDNBaX3RAMomJCg9EhUeA29MABsZBTMNJipjOhc19gcIDR8bBwQHEggCWi6DIgLuAQYA+BAFCha3A5XiAEsqM7UFFgFLhAMjFTMYE1Klnw74nRVBG/ASCm0BYRN/BrsU3VoWy+S0vV8LQx+vN8gF2AC2AK5EAWwApgYDKmAAroQ0NDQ0AT+OCg7wAAIHRAbpNgVcBV0APTA5BfbPFgMLzcYL/QqqA82eBALKCjQCjqYCht0/k2+OAsXQAoP3ASTKDgDw6ACKAUYCMpIKJpRaAE4A5womABzZvs0REEKiACIQAd5QdAECAj4Ywg/wGqY2AVgAYADYvAoCGAEubA0gvAY2ALAAbpbvqpyEAGAEpgQAJgAG7gAgAEACmghUFwCqAMpAINQIwC4DthRAAPcycKgApoIdABwBfCisABoATwBqASIAvhnSBP8aH/ECeAKXAq40NjgDBTwFYQU6AXs3oABgAD4XNgmcCY1eCl5tIFZeUqGgyoNHABgAEQAaABNwWQAmABMATPMa3T34ADldyprmM1M2XociUQgLzvwAXT3xABgAEQAaABNwIGFAnADD8AAgAD4BBJWzaCcIAIEBFMAWwKoAAdq9BWAF5wLQpALEtQAKUSGkahR4GnJM+gsAwCgeFAiUAECQ0BQuL8AAIAAAADKeIheclvFqQAAETr4iAMxIARMgAMIoHhQIAn0E0pDQFC4HhznoAAAAIAI2C0/4lvFqQAAETgBJJwYCAy4ABgYAFAA8MBKYEH4eRhTkAjYeFcgACAYAeABsOqyQ5gRwDayqugEgaIIAtgoACgDmEABmBAWGme5OBJJA2m4cDeoAmITWAXwrMgOgAGwBCh6CBXYF1Tzg1wKAAFdiuABRAFwAXQBsAG8AdgBrAHYAbwCEAHEwfxQBVE5TEQADVFhTBwBDANILAqcCzgLTApQCrQL6vAAMAL8APLhNBKkE6glGKTAU4Dr4N2EYEwBCkABKk8rHAbYBmwIoAiU4Ajf/Aq4CowCAANIChzgaNBsCsTgeODcFXrgClQKdAqQBiQGYAqsCsjTsNHsfNPA0ixsAWTWiOAMFPDQSNCk2BDZHNow2TTZUNhk28Jk9VzI3QkEoAoICoQKwAqcAQAAxBV4FXbS9BW47YkIXP1ciUqs05DS/FwABUwJW11e6nHuYZmSh/RAYA8oMKvZ8KASoUAJYWAJ6ILAsAZSoqjpgA0ocBIhmDgDWAAawRDQoAAcuAj5iAHABZiR2AIgiHgCaAU68ACxuHAG0ygM8MiZIAlgBdF4GagJqAPZOHAMuBgoATkYAsABiAHgAMLoGDPj0HpKEBAAOJgAuALggTAHWAeAMEDbd20Uege0ADwAWADkAQgA9OHd+2MUQZBBhBgNNDkxxPxUQArEPqwvqERoM1irQ090ANK4H8ANYB/ADWANYB/AH8ANYB/ADWANYA1gDWBwP8B/YxRBkD00EcgWTBZAE2wiIJk4RhgctCNdUEnQjHEwDSgEBIypJITuYMxAlR0wRTQgIATZHbKx9PQNMMbBU+pCnA9AyVDlxBgMedhKlAC8PeCE1uk6DekxxpQpQT7NX9wBFBgASqwAS5gBJDSgAUCwGPQBI4zTYABNGAE2bAE3KAExdGABKaAbgAFBXAFCOAFBJABI2SWdObALDOq0//QomCZhvwHdTBkIQHCemEPgMNAG2ATwN7kvZBPIGPATKH34ZGg/OlZ0Ipi3eDO4m5C6igFsj9iqEBe5L9TzeC05RaQ9aC2YJ5DpkgU8DIgEOIowK3g06CG4Q9ArKbA3mEUYHOgPWSZsApgcCCxIdNhW2JhFirQsKOXgG/Br3C5AmsBMqev0F1BoiBk4BKhsAANAu6IWxWjJcHU9gBgQLJiPIFKlQIQ0mQLh4SRocBxYlqgKSQ3FKiFE3HpQh9zw+DWcuFFF9B/Y8BhlQC4I8n0asRQ8R0z6OPUkiSkwtBDaALDAnjAnQD4YMunxzAVoJIgmyDHITMhEYN8YIOgcaLpclJxYIIkaWYJsE+KAD9BPSAwwFQAlCBxQDthwuEy8VKgUOgSXYAvQ21i60ApBWgQEYBcwPJh/gEFFH4Q7qCJwCZgOEJewALhUiABginAhEZABgj9lTBi7MCMhqbSN1A2gU6GIRdAeSDlgHqBw0FcAc4nDJXgyGCSiksAlcAXYJmgFgBOQICjVcjKEgQmdUi1kYnCBiQUBd/QIyDGYVoES+h3kCjA9sEhwBNgF0BzoNAgJ4Ee4RbBCWCOyGBTW2M/k6JgRQIYQgEgooA1BszwsoJvoM+WoBpBJjAw00PnfvZ6xgtyUX/gcaMsZBYSHyC5NPzgydGsIYQ1QvGeUHwAP0GvQn60FYBgADpAQUOk4z7wS+C2oIjAlAAEoOpBgH2BhrCnKM0QEyjAG4mgNYkoQCcJAGOAcMAGgMiAV65gAeAqgIpAAGANADWAA6Aq4HngAaAIZCAT4DKDABIuYCkAOUCDLMAZYwAfQqBBzEDBYA+DhuSwLDsgKAa2ajBd5ZAo8CSjYBTiYEBk9IUgOwcuIA3ABMBhTgSAEWrEvMG+REAeBwLADIAPwABjYHBkIBzgH0bgC4AWALMgmjtLYBTuoqAIQAFmwB2AKKAN4ANgCA8gFUAE4FWvoF1AJQSgESMhksWGIBvAMgATQBDgB6BsyOpsoIIARuB9QCEBwV4gLvLwe2AgMi4BPOQsYCvd9WADIXUu5eZwqoCqdeaAC0YTQHMnM9UQAPH6k+yAdy/BZIiQImSwBQ5gBQQzSaNTFWSTYBpwGqKQK38AFtqwBI/wK37gK3rQK3sAK6280C0gK33AK3zxAAUEIAUD9SklKDArekArw5AEQAzAHCO147WTteO1k7XjtZO147WTteO1kDmChYI03AVU0oJqkKbV9GYewMpw3VRMk6ShPcYFJgMxPJLbgUwhXPJVcZPhq9JwYl5VUKDwUt1GYxCC00dhe9AEApaYNCY4ceMQpMHOhTklT5LRwAskujM7ANrRsWREEFSHXuYisWDwojAmSCAmJDXE6wXDchAqH4AmiZAmYKAp+FOBwMAmY8AmYnBG8EgAN/FAN+kzkHOXgYOYM6JCQCbB4CMjc4CwJtyAJtr/CLADRoRiwBaADfAOIASwYHmQyOAP8MwwAOtgJ3MAJ2o0ACeUxEAni7Hl3cRa9G9AJ8QAJ6yQJ9CgJ88UgBSH5kJQAsFklZSlwWGErNAtECAtDNSygDiFADh+dExpEzAvKiXQQDA69Lz0wuJgTQTU1NsAKLQAKK2cIcCB5EaAa4Ao44Ao5dQZiCAo7aAo5deVG1UzYLUtVUhgKT/AKTDQDqAB1VH1WwVdEHLBwplocy4nhnRTw6ApegAu+zWCKpAFomApaQApZ9nQCqWa1aCoJOADwClrYClk9cRVzSApnMApllXMtdCBoCnJw5wzqeApwXAp+cAp65iwAeEDIrEAKd8gKekwC2PmE1YfACntQCoG8BqgKeoCACnk+mY8lkKCYsAiewAiZ/AqD8AqBN2AKmMAKlzwKoAAB+AqfzaH1osgAESmodatICrOQCrK8CrWgCrQMCVx4CVd0CseLYAx9PbJgCsr4OArLpGGzhbWRtSWADJc4Ctl08QG6RAylGArhfArlIFgK5K3hwN3DiAr0aAy2zAzISAr6JcgMDM3ICvhtzI3NQAsPMAsMFc4N0TDZGdOEDPKgDPJsDPcACxX0CxkgCxhGKAshqUgLIRQLJUALJLwJkngLd03h6YniveSZL0QMYpGcDAmH1GfSVJXsMXpNevBICz2wCz20wTFTT9BSgAMeuAs90ASrrA04TfkwGAtwoAtuLAtJQA1JdA1NgAQIDVY2AikABzBfuYUZ2AILPg44C2sgC2d+EEYRKpz0DhqYAMANkD4ZyWvoAVgLfZgLeuXR4AuIw7RUB8zEoAfScAfLTiALr9ALpcXoAAur6AurlAPpIAboC7ooC652Wq5cEAu5AA4XhmHpw4XGiAvMEAGoDjheZlAL3FAORbwOSiAL3mQL52gL4Z5odmqy8OJsfA52EAv77ARwAOp8dn7QDBY4DpmsDptoA0sYDBmuhiaIGCgMMSgFgASACtgNGAJwEgLpoBgC8BGzAEowcggCEDC6kdjoAJAM0C5IKRoABZCgiAIzw3AYBLACkfng9ogigkgNmWAN6AEQCvrkEVqTGAwCsBRbAA+4iQkMCHR072jI2PTbUNsk2RjY5NvA23TZKNiU3EDcZN5I+RTxDRTBCJkK5VBYKFhZfwQCWygU3AJBRHpu+OytgNxa61A40GMsYjsn7BVwFXQVcBV0FaAVdBVwFXQVcBV0FXAVdBVwFXUsaCNyKAK4AAQUHBwKU7oICoW1e7jAEzgPxA+YDwgCkBFDAwADABKzAAOxFLhitA1UFTDeyPkM+bj51QkRCuwTQWWQ8X+0AWBYzsACNA8xwzAGm7EZ/QisoCTAbLDs6fnLfb8H2GccsbgFw13M1HAVkBW/Jxsm9CNRO8E8FDD0FBQw9FkcClOYCoMFegpDfADgcMiA2AJQACB8AsigKAIzIEAJKeBIApY5yPZQIAKQiHb4fvj5BKSRPQrZCOz0oXyxgOywfKAnGbgMClQaCAkILXgdeCD9IIGUgQj5fPoY+dT52Ao5CM0dAX9BTVG9SDzFwWTQAbxBzJF/lOEIQQglCCkKJIAls5AcClQICoKPMODEFxhi6KSAbiyfIRrMjtCgdWCAkPlFBIitCsEJRzAbMAV/OEyQzDg0OAQQEJ36i328/Mk9AybDJsQlq3tDRApUKAkFzXf1d/j9uALYP6hCoFgCTGD8kPsFKQiobrm0+zj0KSD8kPnVCRBwMDyJRTHFgMTJa5rwXQiQ2YfI/JD7BMEJEHGINTw4TOFlIRzwJO0icMQpyPyQ+wzJCRBv6DVgnKB01NgUKj2bwYzMqCoBkznBgEF+zYDIocwRIX+NgHj4HICNfh2C4CwdwFWpTG/lgUhYGAwRfv2Ts8mAaXzVgml/XYIJfuWC4HI1gUF9pYJZgMR6ilQHMAOwLAlDRefC0in4AXAEJA6PjCwc0IamOANMMCAECRQDFNRTZBgd+CwQlRA+r6+gLBDEFBnwUBXgKATIArwAGRAAHA3cDdAN2A3kDdwN9A3oDdQN7A30DfAN4A3oDfQAYEAAlAtYASwMAUAFsAHcKAHcAmgB3AHUAdQB2AHVu8UgAygDAAHcAdQB1AHYAdQALCgB3AAsAmgB3AAsCOwB3AAtu8UgAygDAAHgKAJoAdwB3AHUAdQB2AHUAeAB1AHUAdgB1bvFIAMoAwAALCgCaAHcACwB3AAsCOwB3AAtu8UgAygDAAH4ACwGgALcBpwC6AahdAu0COwLtbvFIAMoAwAALCgCaAu0ACwLtAAsCOwLtAAtu8UgAygDAA24ACwNvAAu0VsQAAzsAABCkjUIpAAsAUIusOggWcgMeBxVsGwL67U/2HlzmWOEeOgALASvuAAseAfpKUpnpGgYJDCIZM6YyARUE9ThqAD5iXQgnAJYJPnOzw0ZAEZxEKsIAkA4DhAHnTAIDxxUDK0lxCQlPYgIvIQVYJQBVqE1GakUAKGYiDToSBA1EtAYAXQJYAIF8GgMHRyAAIAjOe9YncekRAA0KACUrjwE7Ayc6AAYWAqaiKG4McEcqANoN3+Mg9TwCBhIkuCny+JwUQ29L008JluRxu3K+oAdqiHOqFH0AG5SUIfUJ5SxCGfxdipRzqTmT4V5Zb+r1Uo4Vm+NqSSEl2mNvR2JhIa8SpYO6ntdwFXHCWTCK8f2+Hxo7uiG3drDycAuKIMP5bhi06ACnqArH1rz4Rqg//lm6SgJGEVbF9xJHISaR6HxqxSnkw6shDnelHKNEfGUXSJRJ1GcsmtJw25xrZMDK9gXSm1/YMkdX4/6NKYOdtk/NQ3/NnDASjTc3fPjIjW/5sVfVObX2oTDWkr1dF9f3kxBsD3/3aQO8hPfRz+e0uEiJqt1161griu7gz8hDDwtpy+F+BWtefnKHZPAxcZoWbnznhJpy0e842j36bcNzGnIEusgGX0a8ZxsnjcSsPDZ09yZ36fCQbriHeQ72JRMILNl6ePPf2HWoVwgWAm1fb3V2sAY0+B6rAXqSwPBgseVmoqsBTSrm91+XasMYYySI8eeRxH3ZvHkMz3BQ5aJ3iUVbYPNM3/7emRtjlsMgv/9VyTsyt/mK+8fgWeT6SoFaclXqn42dAIsvAarF5vNNWHzKSkKQ/8Hfk5ZWK7r9yliOsooyBjRhfkHP4Q2DkWXQi6FG/9r/IwbmkV5T7JSopHKn1pJwm9tb5Ot0oyN1Z2mPpKXHTxx2nlK08fKk1hEYA8WgVVWL5lgx0iTv+KdojJeU23ZDjmiubXOxVXJKKi2Wjuh2HLZOFLiSC7Tls5SMh4f+Pj6xUSrNjFqLGehRNB8lC0QSLNmkJJx/wSG3MnjE9T1CkPwJI0wH2lfzwETIiVqUxg0dfu5q39Gt+hwdcxkhhNvQ4TyrBceof3Mhs/IxFci1HmHr4FMZgXEEczPiGCx0HRwzAqDq2j9AVm1kwN0mRVLWLylgtoPNapF5cY4Y1wJh/e0BBwZj44YgZrDNqvD/9Hv7GFYdUQeDJuQ3EWI4HaKqavU1XjC/n41kT4L79kqGq0kLhdTZvgP3TA3fS0ozVz+5piZsoOtIvBUFoMKbNcmBL6YxxaUAusHB38XrS8dQMnQwJfUUkpRoGr5AUeWicvBTzyK9g77+yCkf5PAysL7r/JjcZgrbvRpMW9iyaxZvKO6ceZN2EwIxKwVFPuvFuiEPGCoagbMo+SpydLrXqBzNCDGFCrO/rkcwa2xhokQZ5CdZ0AsU3JfSqJ6n5I14YA+P/uAgfhPU84Tlw7cEFfp7AEE8ey4sP12PTt4Cods1GRgDOB5xvyiR5m+Bx8O5nBCNctU8BevfV5A08x6RHd5jcwPTMDSZJOedIZ1cGQ704lxbAzqZOP05ZxaOghzSdvFBHYqomATARyAADK4elP8Ly3IrUZKfWh23Xy20uBUmLS4Pfagu9+oyVa2iPgqRP3F2CTUsvJ7+RYnN8fFZbU/HVvxvcFFDKkiTqV5UBZ3Gz54JAKByi9hkKMZJvuGgcSYXFmw08UyoQyVdfTD1/dMkCHXcTGAKeROgArsvmRrQTLUOXioOHGK2QkjHuoYFgXciZoTJd6Fs5q1QX1G+p/e26hYsEf7QZD1nnIyl/SFkNtYYmmBhpBrxl9WbY0YpHWRuw2Ll/tj9mD8P4snVzJl4F9J+1arVeTb9E5r2ILH04qStjxQNwn3m4YNqxmaNbLAqW2TN6LidwuJRqS+NXbtqxoeDXpxeGWmxzSkWxjkyCkX4NQRme6q5SAcC+M7+9ETfA/EwrzQajKakCwYyeunP6ZFlxU2oMEn1Pz31zeStW74G406ZJFCl1wAXIoUKkWotYEpOuXB1uVNxJ63dpJEqfxBeptwIHNrPz8BllZoIcBoXwgfJ+8VAUnVPvRvexnw0Ma/WiGYuJO5y8QTvEYBigFmhUxY5RqzE8OcywN/8m4UYrlaniJO75XQ6KSo9+tWHlu+hMi0UVdiKQp7NelnoZUzNaIyBPVeOwK6GNp+FfHuPOoyhaWuNvTYFkvxscMQWDh+zeFCFkgwbXftiV23ywJ4+uwRqmg9k3KzwIQpzppt8DBBOMbrqwQM5Gb05sEwdKzMiAqOloaA/lr0KA+1pr0/+HiWoiIjHA/wir2nIuS3PeU/ji3O6ZwoxcR1SZ9FhtLC5S0FIzFhbBWcGVP/KpxOPSiUoAdWUpqKH++6Scz507iCcxYI6rdMBICPJZea7OcmeFw5mObJSiqpjg2UoWNIs+cFhyDSt6geV5qgi3FunmwwDoGSMgerFOZGX1m0dMCYo5XOruxO063dwENK9DbnVM9wYFREzh4vyU1WYYJ/LRRp6oxgjqP/X5a8/4Af6p6NWkQferzBmXme0zY/4nwMJm/wd1tIqSwGz+E3xPEAOoZlJit3XddD7/BT1pllzOx+8bmQtANQ/S6fZexc6qi3W+Q2xcmXTUhuS5mpHQRvcxZUN0S5+PL9lXWUAaRZhEH8hTdAcuNMMCuVNKTEGtSUKNi3O6KhSaTzck8csZ2vWRZ+d7mW8c4IKwXIYd25S/zIftPkwPzufjEvOHWVD1m+FjpDVUTV0DGDuHj6QnaEwLu/dEgdLQOg9E1Sro9XHJ8ykLAwtPu+pxqKDuFexqON1sKQm7rwbE1E68UCfA/erovrTCG+DBSNg0l4goDQvZN6uNlbyLpcZAwj2UclycvLpIZMgv4yRlpb3YuMftozorbcGVHt/VeDV3+Fdf1TP0iuaCsPi2G4XeGhsyF1ubVDxkoJhmniQ0/jSg/eYML9KLfnCFgISWkp91eauR3IQvED0nAPXK+6hPCYs+n3+hCZbiskmVMG2da+0EsZPonUeIY8EbfusQXjsK/eFDaosbPjEfQS0RKG7yj5GG69M7MeO1HmiUYocgygJHL6M1qzUDDwUSmr99V7Sdr2F3JjQAJY+F0yH33Iv3+C9M38eML7gTgmNu/r2bUMiPvpYbZ6v1/IaESirBHNa7mPKn4dEmYg7v/+HQgPN1G79jBQ1+soydfDC2r+h2Bl/KIc5KjMK7OH6nb1jLsNf0EHVe2KBiE51ox636uyG6Lho0t3J34L5QY/ilE3mikaF4HKXG1mG1rCevT1Vv6GavltxoQe/bMrpZvRggnBxSEPEeEzkEdOxTnPXHVjUYdw8JYvjB/o7Eegc3Ma+NUxLLnsK0kJlinPmUHzHGtrk5+CAbVzFOBqpyy3QVUnzTDfC/0XD94/okH+OB+i7g9lolhWIjSnfIb+Eq43ZXOWmwvjyV/qqD+t0e+7mTEM74qP/Ozt8nmC7mRpyu63OB4KnUzFc074SqoyPUAgM+/TJGFo6T44EHnQU4X4z6qannVqgw/U7zCpwcmXV1AubIrvOmkKHazJAR55ePjp5tLBsN8vAqs3NAHdcEHOR2xQ0lsNAFzSUuxFQCFYvXLZJdOj9p4fNq6p0HBGUik2YzaI4xySy91KzhQ0+q1hjxvImRwPRf76tChlRkhRCi74NXZ9qUNeIwP+s5p+3m5nwPdNOHgSLD79n7O9m1n1uDHiMntq4nkYwV5OZ1ENbXxFd4PgrlvavZsyUO4MqYlqqn1O8W/I1dEZq5dXhrbETLaZIbC2Kj/Aa/QM+fqUOHdf0tXAQ1huZ3cmWECWSXy/43j35+Mvq9xws7JKseriZ1pEWKc8qlzNrGPUGcVgOa9cPJYIJsGnJTAUsEcDOEVULO5x0rXBijc1lgXEzQQKhROf8zIV82w8eswc78YX11KYLWQRcgHNJElBxfXr72lS2RBSl07qTKorO2uUDZr3sFhYsvnhLZn0A94KRzJ/7DEGIAhW5ZWFpL8gEwu1aLA9MuWZzNwl8Oze9Y+bX+v9gywRVnoB5I/8kXTXU3141yRLYrIOOz6SOnyHNy4SieqzkBXharjfjqq1q6tklaEbA8Qfm2DaIPs7OTq/nvJBjKfO2H9bH2cCMh1+5gspfycu8f/cuuRmtDjyqZ7uCIMyjdV3a+p3fqmXsRx4C8lujezIFHnQiVTXLXuI1XrwN3+siYYj2HHTvESUx8DlOTXpak9qFRK+L3mgJ1WsD7F4cu1aJoFoYQnu+wGDMOjJM3kiBQWHCcvhJ/HRdxodOQp45YZaOTA22Nb4XKCVxqkbwMYFhzYQYIAnCW8FW14uf98jhUG2zrKhQQ0q0CEq0t5nXyvUyvR8DvD69LU+g3i+HFWQMQ8PqZuHD+sNKAV0+M6EJC0szq7rEr7B5bQ8BcNHzvDMc9eqB5ZCQdTf80Obn4uzjwpYU7SISdtV0QGa9D3Wrh2BDQtpBKxaNFV+/Cy2P/Sv+8s7Ud0Fd74X4+o/TNztWgETUapy+majNQ68Lq3ee0ZO48VEbTZYiH1Co4OlfWef82RWeyUXo7woM03PyapGfikTnQinoNq5z5veLpeMV3HCAMTaZmA1oGLAn7XS3XYsz+XK7VMQsc4XKrmDXOLU/pSXVNUq8dIqTba///3x6LiLS6xs1xuCAYSfcQ3+rQgmu7uvf3THKt5Ooo97TqcbRqxx7EASizaQCBQllG/rYxVapMLgtLbZS64w1MDBMXX+PQpBKNwqUKOf2DDRDUXQf9EhOS0Qj4nTmlA8dzSLz/G1d+Ud8MTy/6ghhdiLpeerGY/UlDOfiuqFsMUU5/UYlP+BAmgRLuNpvrUaLlVkrqDievNVEAwF+4CoM1MZTmjxjJMsKJq+u8Zd7tNCUFy6LiyYXRJQ4VyvEQFFaCGKsxIwQkk7EzZ6LTJq2hUuPhvAW+gQnSG6J+MszC+7QCRHcnqDdyNRJ6T9xyS87A6MDutbzKGvGktpbXqtzWtXb9HsfK2cBMomjN9a4y+TaJLnXxAeX/HWzmf4cR4vALt/P4w4qgKY04ml4ZdLOinFYS6cup3G/1ie4+t1eOnpBNlqGqs75ilzkT4+DsZQxNvaSKJ//6zIbbk/M7LOhFmRc/1R+kBtz7JFGdZm/COotIdvQoXpTqP/1uqEUmCb/QWoGLMwO5ANcHzxdY48IGP5+J+zKOTBFZ4Pid+GTM+Wq12MV/H86xEJptBa6T+p3kgpwLedManBHC2GgNrFpoN2xnrMz9WFWX/8/ygSBkavq2Uv7FdCsLEYLu9LLIvAU0bNRDtzYl+/vXmjpIvuJFYjmI0im6QEYqnIeMsNjXG4vIutIGHijeAG/9EDBozKV5cldkHbLxHh25vT+ZEzbhXlqvpzKJwcEgfNwLAKFeo0/pvEE10XDB+EXRTXtSzJozQKFFAJhMxYkVaCW+E9AL7tMeU8acxidHqzb6lX4691UsDpy/LLRmT+epgW56+5Cw8tB4kMUv6s9lh3eRKbyGs+H/4mQMaYzPTf2OOdokEn+zzgvoD3FqNKk8QqGAXVsqcGdXrT62fSPkR2vROFi68A6se86UxRUk4cajfPyCC4G5wDhD+zNq4jodQ4u4n/m37Lr36n4LIAAsVr02dFi9AiwA81MYs2rm4eDlDNmdMRvEKRHfBwW5DdMNp0jPFZMeARqF/wL4XBfd+EMLBfMzpH5GH6NaW+1vrvMdg+VxDzatk3MXgO3ro3P/DpcC6+Mo4MySJhKJhSR01SGGGp5hPWmrrUgrv3lDnP+HhcI3nt3YqBoVAVTBAQT5iuhTg8nvPtd8ZeYj6w1x6RqGUBrSku7+N1+BaasZvjTk64RoIDlL8brpEcJx3OmY7jLoZsswdtmhfC/G21llXhITOwmvRDDeTTPbyASOa16cF5/A1fZAidJpqju3wYAy9avPR1ya6eNp9K8XYrrtuxlqi+bDKwlfrYdR0RRiKRVTLOH85+ZY7XSmzRpfZBJjaTa81VDcJHpZnZnSQLASGYW9l51ZV/h7eVzTi3Hv6hUsgc/51AqJRTkpbFVLXXszoBL8nBX0u/0jBLT8nH+fJePbrwURT58OY+UieRjd1vs04w0VG5VN2U6MoGZkQzKN/ptz0Q366dxoTGmj7i1NQGHi9GgnquXFYdrCfZBmeb7s0T6yrdlZH5cZuwHFyIJ/kAtGsTg0xH5taAAq44BAk1CPk9KVVbqQzrCUiFdF/6gtlPQ8bHHc1G1W92MXGZ5HEHftyLYs8mbD/9xYRUWkHmlM0zC2ilJlnNgV4bfALpQghxOUoZL7VTqtCHIaQSXm+YUMnpkXybnV+A6xlm2CVy8fn0Xlm2XRa0+zzOa21JWWmixfiPMSCZ7qA4rS93VN3pkpF1s5TonQjisHf7iU9ZGvUPOAKZcR1pbeVf/Ul7OhepGCaId9wOtqo7pJ7yLcBZ0pFkOF28y4zEI/kcUNmutBHaQpBdNM8vjCS6HZRokkeo88TBAjGyG7SR+6vUgTcyK9Imalj0kuxz0wmK+byQU11AiJFk/ya5dNduRClcnU64yGu/ieWSeOos1t3ep+RPIWQ2pyTYVbZltTbsb7NiwSi3AV+8KLWk7LxCnfZUetEM8ThnsSoGH38/nyAwFguJp8FjvlHtcWZuU4hPva0rHfr0UhOOJ/F6vS62FW7KzkmRll2HEc7oUq4fyi5T70Vl7YVIfsPHUCdHesf9Lk7WNVWO75JDkYbMI8TOW8JKVtLY9d6UJRITO8oKo0xS+o99Yy04iniGHAaGj88kEWgwv0OrHdY/nr76DOGNS59hXCGXzTKUvDl9iKpLSWYN1lxIeyywdNpTkhay74w2jFT6NS8qkjo5CxA1yfSYwp6AJIZNKIeEK5PJAW7ORgWgwp0VgzYpqovMrWxbu+DGZ6Lhie1RAqpzm8VUzKJOH3mCzWuTOLsN3VT/dv2eeYe9UjbR8YTBsLz7q60VN1sU51k+um1f8JxD5pPhbhSC8rRaB454tmh6YUWrJI3+GWY0qeWioj/tbkYITOkJaeuGt4JrJvHA+l0Gu7kY7XOaa05alMnRWVCXqFgLIwSY4uF59Ue5SU4QKuc/HamDxbr0x6csCetXGoP7Qn1Bk/J9DsynO/UD6iZ1Hyrz+jit0hDCwi/E9OjgKTbB3ZQKQ/0ZOvevfNHG0NK4Aj3Cp7NpRk07RT1i/S0EL93Ag8GRgKI9CfpajKyK6+Jj/PI1KO5/85VAwz2AwzP8FTBb075IxCXv6T9RVvWT2tUaqxDS92zrGUbWzUYk9mSs82pECH+fkqsDt93VW++4YsR/dHCYcQSYTO/KaBMDj9LSD/J/+z20Kq8XvZUAIHtm9hRPP3ItbuAu2Hm5lkPs92pd7kCxgRs0xOVBnZ13ccdA0aunrwv9SdqElJRC3g+oCu+nXyCgmXUs9yMjTMAIHfxZV+aPKcZeUBWt057Xo85Ks1Ir5gzEHCWqZEhrLZMuF11ziGtFQUds/EESajhagzcKsxamcSZxGth4UII+adPhQkUnx2WyN+4YWR+r3f8MnkyGFuR4zjzxJS8WsQYR5PTyRaD9ixa6Mh741nBHbzfjXHskGDq179xaRNrCIB1z1xRfWfjqw2pHc1zk9xlPpL8sQWAIuETZZhbnmL54rceXVNRvUiKrrqIkeogsl0XXb17ylNb0f4GA9Wd44vffEG8FSZGHEL2fbaTGRcSiCeA8PmA/f6Hz8HCS76fXUHwgwkzSwlI71ekZ7Fapmlk/KC+Hs8hUcw3N2LN5LhkVYyizYFl/uPeVP5lsoJHhhfWvvSWruCUW1ZcJOeuTbrDgywJ/qG07gZJplnTvLcYdNaH0KMYOYMGX+rB4NGPFmQsNaIwlWrfCezxre8zXBrsMT+edVLbLqN1BqB76JH4BvZTqUIMfGwPGEn+EnmTV86fPBaYbFL3DFEhjB45CewkXEAtJxk4/Ms2pPXnaRqdky0HOYdcUcE2zcXq4vaIvW2/v0nHFJH2XXe22ueDmq/18XGtELSq85j9X8q0tcNSSKJIX8FTuJF/Pf8j5PhqG2u+osvsLxYrvvfeVJL+4tkcXcr9JV7v0ERmj/X6fM3NC4j6dS1+9Umr2oPavqiAydTZPLMNRGY23LO9zAVDly7jD+70G5TPPLdhRIl4WxcYjLnM+SNcJ26FOrkrISUtPObIz5Zb3AG612krnpy15RMW+1cQjlnWFI6538qky9axd2oJmHIHP08KyP0ubGO+TQNOYuv2uh17yCIvR8VcStw7o1g0NM60sk+8Tq7YfIBJrtp53GkvzXH7OA0p8/n/u1satf/VJhtR1l8Wa6Gmaug7haSpaCaYQax6ta0mkutlb+eAOSG1aobM81D9A4iS1RRlzBBoVX6tU1S6WE2N9ORY6DfeLRC4l9Rvr5h95XDWB2mR1d4WFudpsgVYwiTwT31ljskD8ZyDOlm5DkGh9N/UB/0AI5Xvb8ZBmai2hQ4BWMqFwYnzxwB26YHSOv9WgY3JXnvoN+2R4rqGVh/LLDMtpFP+SpMGJNWvbIl5SOodbCczW2RKleksPoUeGEzrjtKHVdtZA+kfqO+rVx/iclCqwoopepvJpSTDjT+b9GWylGRF8EDbGlw6eUzmJM95Ovoz+kwLX3c2fTjFeYEsE7vUZm3mqdGJuKh2w9/QGSaqRHs99aScGOdDqkFcACoqdbBoQqqjamhH6Q9ng39JCg3lrGJwd50Qk9ovnqBTr8MME7Ps2wiVfygUmPoUBJJfJWX5Nda0nuncbFkA=="))}Pt.getData=getData},89365:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ens_normalize=Pt.ens_normalize_post_check=void 0;var tn=en(13859);var nn=en(97666);var an=(0,nn.getData)();var rn=en(92302);var In=new Set((0,rn.read_member_array)(an));var sn=new Set((0,rn.read_member_array)(an));var on=(0,rn.read_mapped_map)(an);var cn=(0,rn.read_emoji_trie)(an);var dn=45;var un=95;function explode_cp(Wt){return(0,tn.toUtf8CodePoints)(Wt)}function filter_fe0f(Wt){return Wt.filter((function(Wt){return Wt!=65039}))}function ens_normalize_post_check(Wt){for(var Pt=0,en=Wt.split(".");Pt=0;an--){if(nn[an]!==un){throw new Error("underscore only allowed at start")}}if(nn.length>=4&&nn.every((function(Wt){return Wt<128}))&&nn[2]===dn&&nn[3]===dn){throw new Error("invalid label extension")}}catch(Wt){throw new Error('Invalid label "'+tn+'": '+Wt.message)}}return Wt}Pt.ens_normalize_post_check=ens_normalize_post_check;function ens_normalize(Wt){return ens_normalize_post_check(normalize(Wt,filter_fe0f))}Pt.ens_normalize=ens_normalize;function normalize(Wt,Pt){var en=explode_cp(Wt).reverse();var tn=[];while(en.length){var nn=consume_emoji_reversed(en);if(nn){tn.push.apply(tn,Pt(nn));continue}var an=en.pop();if(In.has(an)){tn.push(an);continue}if(sn.has(an)){continue}var rn=on[an];if(rn){tn.push.apply(tn,rn);continue}throw new Error("Disallowed codepoint: 0x"+an.toString(16).toUpperCase())}return ens_normalize_post_check(nfc(String.fromCodePoint.apply(String,tn)))}function nfc(Wt){return Wt.normalize("NFC")}function consume_emoji_reversed(Wt,Pt){var en;var tn=cn;var nn;var an;var rn=[];var In=Wt.length;if(Pt)Pt.length=0;var _loop_1=function(){var sn=Wt[--In];tn=(en=tn.branches.find((function(Wt){return Wt.set.has(sn)})))===null||en===void 0?void 0:en.node;if(!tn)return"break";if(tn.save){an=sn}else if(tn.check){if(sn===an)return"break"}rn.push(sn);if(tn.fe0f){rn.push(65039);if(In>0&&Wt[In-1]==65039)In--}if(tn.valid){nn=rn.slice();if(tn.valid==2)nn.splice(1,1);if(Pt)Pt.push.apply(Pt,Wt.slice(In).reverse());Wt.length=In}};while(In){var sn=_loop_1();if(sn==="break")break}return nn}},93562:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.id=void 0;var tn=en(56938);var nn=en(13859);function id(Wt){return(0,tn.keccak256)((0,nn.toUtf8Bytes)(Wt))}Pt.id=id},91839:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt._TypedDataEncoder=Pt.hashMessage=Pt.messagePrefix=Pt.ensNormalize=Pt.isValidName=Pt.namehash=Pt.dnsEncode=Pt.id=void 0;var tn=en(93562);Object.defineProperty(Pt,"id",{enumerable:true,get:function(){return tn.id}});var nn=en(62292);Object.defineProperty(Pt,"dnsEncode",{enumerable:true,get:function(){return nn.dnsEncode}});Object.defineProperty(Pt,"isValidName",{enumerable:true,get:function(){return nn.isValidName}});Object.defineProperty(Pt,"namehash",{enumerable:true,get:function(){return nn.namehash}});var an=en(52976);Object.defineProperty(Pt,"hashMessage",{enumerable:true,get:function(){return an.hashMessage}});Object.defineProperty(Pt,"messagePrefix",{enumerable:true,get:function(){return an.messagePrefix}});var rn=en(62292);Object.defineProperty(Pt,"ensNormalize",{enumerable:true,get:function(){return rn.ensNormalize}});var In=en(64516);Object.defineProperty(Pt,"_TypedDataEncoder",{enumerable:true,get:function(){return In.TypedDataEncoder}})},52976:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.hashMessage=Pt.messagePrefix=void 0;var tn=en(42006);var nn=en(56938);var an=en(13859);Pt.messagePrefix="Ethereum Signed Message:\n";function hashMessage(Wt){if(typeof Wt==="string"){Wt=(0,an.toUtf8Bytes)(Wt)}return(0,nn.keccak256)((0,tn.concat)([(0,an.toUtf8Bytes)(Pt.messagePrefix),(0,an.toUtf8Bytes)(String(Wt.length)),Wt]))}Pt.hashMessage=hashMessage},62292:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.dnsEncode=Pt.namehash=Pt.isValidName=Pt.ensNormalize=void 0;var tn=en(42006);var nn=en(13859);var an=en(56938);var rn=en(76127);var In=en(14891);var sn=new rn.Logger(In.version);var on=en(89365);var cn=new Uint8Array(32);cn.fill(0);function checkComponent(Wt){if(Wt.length===0){throw new Error("invalid ENS name; empty component")}return Wt}function ensNameSplit(Wt){var Pt=(0,nn.toUtf8Bytes)((0,on.ens_normalize)(Wt));var en=[];if(Wt.length===0){return en}var tn=0;for(var an=0;an=Pt.length){throw new Error("invalid ENS name; empty component")}en.push(checkComponent(Pt.slice(tn)));return en}function ensNormalize(Wt){return ensNameSplit(Wt).map((function(Wt){return(0,nn.toUtf8String)(Wt)})).join(".")}Pt.ensNormalize=ensNormalize;function isValidName(Wt){try{return ensNameSplit(Wt).length!==0}catch(Wt){}return false}Pt.isValidName=isValidName;function namehash(Wt){if(typeof Wt!=="string"){sn.throwArgumentError("invalid ENS name; not a string","name",Wt)}var Pt=cn;var en=ensNameSplit(Wt);while(en.length){Pt=(0,an.keccak256)((0,tn.concat)([Pt,(0,an.keccak256)(en.pop())]))}return(0,tn.hexlify)(Pt)}Pt.namehash=namehash;function dnsEncode(Wt){return(0,tn.hexlify)((0,tn.concat)(ensNameSplit(Wt).map((function(Wt){if(Wt.length>63){throw new Error("invalid DNS encoded entry; length exceeds 63 bytes")}var Pt=new Uint8Array(Wt.length+1);Pt.set(Wt,1);Pt[0]=Pt.length-1;return Pt}))))+"00"}Pt.dnsEncode=dnsEncode},64516:function(Wt,Pt,en){"use strict";var tn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var nn=this&&this.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]256||Pt[2]&&Pt[2]!==String(tn)){un.throwArgumentError("invalid numeric width","type",Wt)}var nn=Zn.mask(en?tn-1:tn);var on=en?nn.add(hn).mul(bn):Gn;return function(Pt){var en=rn.BigNumber.from(Pt);if(en.lt(on)||en.gt(nn)){un.throwArgumentError("value out-of-bounds for "+Wt,"value",Pt)}return(0,In.hexZeroPad)(en.toTwos(256).toHexString(),32)}}}{var Pt=Wt.match(/^bytes(\d+)$/);if(Pt){var cn=parseInt(Pt[1]);if(cn===0||cn>32||Pt[1]!==String(cn)){un.throwArgumentError("invalid bytes width","type",Wt)}return function(Pt){var en=(0,In.arrayify)(Pt);if(en.length!==cn){un.throwArgumentError("invalid length for "+Wt,"value",Pt)}return hexPadRight(Pt)}}}switch(Wt){case"address":return function(Wt){return(0,In.hexZeroPad)((0,an.getAddress)(Wt),32)};case"bool":return function(Wt){return!Wt?Wn:An};case"bytes":return function(Wt){return(0,sn.keccak256)(Wt)};case"string":return function(Wt){return(0,pn.id)(Wt)}}return null}function encodeType(Wt,Pt){return Wt+"("+Pt.map((function(Wt){var Pt=Wt.name,en=Wt.type;return en+" "+Pt})).join(",")+")"}var vn=function(){function TypedDataEncoder(Wt){(0,on.defineReadOnly)(this,"types",Object.freeze((0,on.deepCopy)(Wt)));(0,on.defineReadOnly)(this,"_encoderCache",{});(0,on.defineReadOnly)(this,"_types",{});var Pt={};var en={};var tn={};Object.keys(Wt).forEach((function(Wt){Pt[Wt]={};en[Wt]=[];tn[Wt]={}}));var _loop_1=function(tn){var nn={};Wt[tn].forEach((function(an){if(nn[an.name]){un.throwArgumentError("duplicate variable name "+JSON.stringify(an.name)+" in "+JSON.stringify(tn),"types",Wt)}nn[an.name]=true;var rn=an.type.match(/^([^\x5b]*)(\x5b|$)/)[1];if(rn===tn){un.throwArgumentError("circular type reference to "+JSON.stringify(rn),"types",Wt)}var In=getBaseEncoder(rn);if(In){return}if(!en[rn]){un.throwArgumentError("unknown type "+JSON.stringify(rn),"types",Wt)}en[rn].push(tn);Pt[tn][rn]=true}))};for(var nn in Wt){_loop_1(nn)}var an=Object.keys(en).filter((function(Wt){return en[Wt].length===0}));if(an.length===0){un.throwArgumentError("missing primary type","types",Wt)}else if(an.length>1){un.throwArgumentError("ambiguous primary types or unused types: "+an.map((function(Wt){return JSON.stringify(Wt)})).join(", "),"types",Wt)}(0,on.defineReadOnly)(this,"primaryType",an[0]);function checkCircular(nn,an){if(an[nn]){un.throwArgumentError("circular type reference to "+JSON.stringify(nn),"types",Wt)}an[nn]=true;Object.keys(Pt[nn]).forEach((function(Wt){if(!en[Wt]){return}checkCircular(Wt,an);Object.keys(an).forEach((function(Pt){tn[Pt][Wt]=true}))}));delete an[nn]}checkCircular(this.primaryType,{});for(var rn in tn){var In=Object.keys(tn[rn]);In.sort();this._types[rn]=encodeType(rn,Wt[rn])+In.map((function(Pt){return encodeType(Pt,Wt[Pt])})).join("")}}TypedDataEncoder.prototype.getEncoder=function(Wt){var Pt=this._encoderCache[Wt];if(!Pt){Pt=this._encoderCache[Wt]=this._getEncoder(Wt)}return Pt};TypedDataEncoder.prototype._getEncoder=function(Wt){var Pt=this;{var en=getBaseEncoder(Wt);if(en){return en}}var tn=Wt.match(/^(.*)(\x5b(\d*)\x5d)$/);if(tn){var nn=tn[1];var an=this.getEncoder(nn);var rn=parseInt(tn[3]);return function(Wt){if(rn>=0&&Wt.length!==rn){un.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",Wt)}var en=Wt.map(an);if(Pt._types[nn]){en=en.map(sn.keccak256)}return(0,sn.keccak256)((0,In.hexConcat)(en))}}var on=this.types[Wt];if(on){var cn=(0,pn.id)(this._types[Wt]);return function(Wt){var en=on.map((function(en){var tn=en.name,nn=en.type;var an=Pt.getEncoder(nn)(Wt[tn]);if(Pt._types[nn]){return(0,sn.keccak256)(an)}return an}));en.unshift(cn);return(0,In.hexConcat)(en)}}return un.throwArgumentError("unknown type: "+Wt,"type",Wt)};TypedDataEncoder.prototype.encodeType=function(Wt){var Pt=this._types[Wt];if(!Pt){un.throwArgumentError("unknown type: "+JSON.stringify(Wt),"name",Wt)}return Pt};TypedDataEncoder.prototype.encodeData=function(Wt,Pt){return this.getEncoder(Wt)(Pt)};TypedDataEncoder.prototype.hashStruct=function(Wt,Pt){return(0,sn.keccak256)(this.encodeData(Wt,Pt))};TypedDataEncoder.prototype.encode=function(Wt){return this.encodeData(this.primaryType,Wt)};TypedDataEncoder.prototype.hash=function(Wt){return this.hashStruct(this.primaryType,Wt)};TypedDataEncoder.prototype._visit=function(Wt,Pt,en){var tn=this;{var nn=getBaseEncoder(Wt);if(nn){return en(Wt,Pt)}}var an=Wt.match(/^(.*)(\x5b(\d*)\x5d)$/);if(an){var rn=an[1];var In=parseInt(an[3]);if(In>=0&&Pt.length!==In){un.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",Pt)}return Pt.map((function(Wt){return tn._visit(rn,Wt,en)}))}var sn=this.types[Wt];if(sn){return sn.reduce((function(Wt,nn){var an=nn.name,rn=nn.type;Wt[an]=tn._visit(rn,Pt[an],en);return Wt}),{})}return un.throwArgumentError("unknown type: "+Wt,"type",Wt)};TypedDataEncoder.prototype.visit=function(Wt,Pt){return this._visit(this.primaryType,Wt,Pt)};TypedDataEncoder.from=function(Wt){return new TypedDataEncoder(Wt)};TypedDataEncoder.getPrimaryType=function(Wt){return TypedDataEncoder.from(Wt).primaryType};TypedDataEncoder.hashStruct=function(Wt,Pt,en){return TypedDataEncoder.from(Pt).hashStruct(Wt,en)};TypedDataEncoder.hashDomain=function(Wt){var Pt=[];for(var en in Wt){var tn=Nn[en];if(!tn){un.throwArgumentError("invalid typed-data domain key: "+JSON.stringify(en),"domain",Wt)}Pt.push({name:en,type:tn})}Pt.sort((function(Wt,Pt){return gn.indexOf(Wt.name)-gn.indexOf(Pt.name)}));return TypedDataEncoder.hashStruct("EIP712Domain",{EIP712Domain:Pt},Wt)};TypedDataEncoder.encode=function(Wt,Pt,en){return(0,In.hexConcat)(["0x1901",TypedDataEncoder.hashDomain(Wt),TypedDataEncoder.from(Pt).hash(en)])};TypedDataEncoder.hash=function(Wt,Pt,en){return(0,sn.keccak256)(TypedDataEncoder.encode(Wt,Pt,en))};TypedDataEncoder.resolveNames=function(Wt,Pt,en,an){return tn(this,void 0,void 0,(function(){var tn,rn,sn,cn,dn,un,pn,mn;return nn(this,(function(nn){switch(nn.label){case 0:Wt=(0,on.shallowCopy)(Wt);tn={};if(Wt.verifyingContract&&!(0,In.isHexString)(Wt.verifyingContract,20)){tn[Wt.verifyingContract]="0x"}rn=TypedDataEncoder.from(Pt);rn.visit(en,(function(Wt,Pt){if(Wt==="address"&&!(0,In.isHexString)(Pt,20)){tn[Pt]="0x"}return Pt}));sn=[];for(cn in tn)sn.push(cn);dn=0;nn.label=1;case 1:if(!(dn{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="hdnode/5.7.0"},13067:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.getAccountPath=Pt.isValidMnemonic=Pt.entropyToMnemonic=Pt.mnemonicToEntropy=Pt.mnemonicToSeed=Pt.HDNode=Pt.defaultPath=void 0;var tn=en(31426);var nn=en(42006);var an=en(18202);var rn=en(13859);var In=en(15686);var sn=en(61338);var on=en(63928);var cn=en(66935);var dn=en(62394);var un=en(78168);var pn=en(76127);var mn=en(94620);var bn=new pn.Logger(mn.version);var Gn=an.BigNumber.from("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141");var hn=(0,rn.toUtf8Bytes)("Bitcoin seed");var Zn=2147483648;function getUpperMask(Wt){return(1<=256){throw new Error("Depth too large!")}return base58check((0,nn.concat)([this.privateKey!=null?"0x0488ADE4":"0x0488B21E",(0,nn.hexlify)(this.depth),this.parentFingerprint,(0,nn.hexZeroPad)((0,nn.hexlify)(this.index),4),this.chainCode,this.privateKey!=null?(0,nn.concat)(["0x00",this.privateKey]):this.publicKey]))},enumerable:false,configurable:true});HDNode.prototype.neuter=function(){return new HDNode(An,null,this.publicKey,this.parentFingerprint,this.chainCode,this.index,this.depth,this.path)};HDNode.prototype._derive=function(Wt){if(Wt>4294967295){throw new Error("invalid index - "+String(Wt))}var Pt=this.path;if(Pt){Pt+="/"+(Wt&~Zn)}var en=new Uint8Array(37);if(Wt&Zn){if(!this.privateKey){throw new Error("cannot derive child of neutered node")}en.set((0,nn.arrayify)(this.privateKey),1);if(Pt){Pt+="'"}}else{en.set((0,nn.arrayify)(this.publicKey))}for(var tn=24;tn>=0;tn-=8){en[33+(tn>>3)]=Wt>>24-tn&255}var rn=(0,nn.arrayify)((0,cn.computeHmac)(cn.SupportedAlgorithm.sha512,this.chainCode,en));var In=rn.slice(0,32);var sn=rn.slice(32);var dn=null;var un=null;if(this.privateKey){dn=bytes32(an.BigNumber.from(In).add(this.privateKey).mod(Gn))}else{var pn=new on.SigningKey((0,nn.hexlify)(In));un=pn._addPoint(this.publicKey)}var mn=Pt;var bn=this.mnemonic;if(bn){mn=Object.freeze({phrase:bn.phrase,path:Pt,locale:bn.locale||"en"})}return new HDNode(An,dn,un,this.fingerprint,bytes32(sn),Wt,this.depth+1,mn)};HDNode.prototype.derivePath=function(Wt){var Pt=Wt.split("/");if(Pt.length===0||Pt[0]==="m"&&this.depth!==0){throw new Error("invalid path - "+Wt)}if(Pt[0]==="m"){Pt.shift()}var en=this;for(var tn=0;tn=Zn){throw new Error("invalid path index - "+nn)}en=en._derive(Zn+an)}else if(nn.match(/^[0-9]+$/)){var an=parseInt(nn);if(an>=Zn){throw new Error("invalid path index - "+nn)}en=en._derive(an)}else{throw new Error("invalid path component - "+nn)}}return en};HDNode._fromSeed=function(Wt,Pt){var en=(0,nn.arrayify)(Wt);if(en.length<16||en.length>64){throw new Error("invalid seed")}var tn=(0,nn.arrayify)((0,cn.computeHmac)(cn.SupportedAlgorithm.sha512,hn,en));return new HDNode(An,bytes32(tn.slice(0,32)),null,"0x00000000",bytes32(tn.slice(32)),0,0,Pt)};HDNode.fromMnemonic=function(Wt,Pt,en){en=getWordlist(en);Wt=entropyToMnemonic(mnemonicToEntropy(Wt,en),en);return HDNode._fromSeed(mnemonicToSeed(Wt,Pt),{phrase:Wt,path:"m",locale:en.locale})};HDNode.fromSeed=function(Wt){return HDNode._fromSeed(Wt,null)};HDNode.fromExtendedKey=function(Wt){var Pt=tn.Base58.decode(Wt);if(Pt.length!==82||base58check(Pt.slice(0,78))!==Wt){bn.throwArgumentError("invalid extended key","extendedKey","[REDACTED]")}var en=Pt[4];var an=(0,nn.hexlify)(Pt.slice(5,9));var rn=parseInt((0,nn.hexlify)(Pt.slice(9,13)).substring(2),16);var In=(0,nn.hexlify)(Pt.slice(13,45));var sn=Pt.slice(45,78);switch((0,nn.hexlify)(Pt.slice(0,4))){case"0x0488b21e":case"0x043587cf":return new HDNode(An,null,(0,nn.hexlify)(sn),an,In,rn,en,null);case"0x0488ade4":case"0x04358394 ":if(sn[0]!==0){break}return new HDNode(An,(0,nn.hexlify)(sn.slice(1)),null,an,In,rn,en,null)}return bn.throwArgumentError("invalid extended key","extendedKey","[REDACTED]")};return HDNode}();Pt.HDNode=Wn;function mnemonicToSeed(Wt,Pt){if(!Pt){Pt=""}var en=(0,rn.toUtf8Bytes)("mnemonic"+Pt,rn.UnicodeNormalizationForm.NFKD);return(0,In.pbkdf2)((0,rn.toUtf8Bytes)(Wt,rn.UnicodeNormalizationForm.NFKD),en,2048,64,"sha512")}Pt.mnemonicToSeed=mnemonicToSeed;function mnemonicToEntropy(Wt,Pt){Pt=getWordlist(Pt);bn.checkNormalize();var en=Pt.split(Wt);if(en.length%3!==0){throw new Error("invalid mnemonic")}var tn=(0,nn.arrayify)(new Uint8Array(Math.ceil(11*en.length/8)));var an=0;for(var rn=0;rn>3]|=1<<7-an%8}an++}}var on=32*en.length/3;var dn=en.length/3;var un=getUpperMask(dn);var pn=(0,nn.arrayify)((0,cn.sha256)(tn.slice(0,on/8)))[0]&un;if(pn!==(tn[tn.length-1]&un)){throw new Error("invalid checksum")}return(0,nn.hexlify)(tn.slice(0,on/8))}Pt.mnemonicToEntropy=mnemonicToEntropy;function entropyToMnemonic(Wt,Pt){Pt=getWordlist(Pt);Wt=(0,nn.arrayify)(Wt);if(Wt.length%4!==0||Wt.length<16||Wt.length>32){throw new Error("invalid entropy")}var en=[0];var tn=11;for(var an=0;an8){en[en.length-1]<<=8;en[en.length-1]|=Wt[an];tn-=8}else{en[en.length-1]<<=tn;en[en.length-1]|=Wt[an]>>8-tn;en.push(Wt[an]&getLowerMask(8-tn));tn+=3}}var rn=Wt.length/4;var In=(0,nn.arrayify)((0,cn.sha256)(Wt))[0]&getUpperMask(rn);en[en.length-1]<<=rn;en[en.length-1]|=In>>8-rn;return Pt.join(en.map((function(Wt){return Pt.getWord(Wt)})))}Pt.entropyToMnemonic=entropyToMnemonic;function isValidMnemonic(Wt,Pt){try{mnemonicToEntropy(Wt,Pt);return true}catch(Wt){}return false}Pt.isValidMnemonic=isValidMnemonic;function getAccountPath(Wt){if(typeof Wt!=="number"||Wt<0||Wt>=Zn||Wt%1){bn.throwArgumentError("invalid account index","index",Wt)}return"m/44'/60'/"+Wt+"'/0/0"}Pt.getAccountPath=getAccountPath},20771:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="json-wallets/5.7.0"},41340:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();var nn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt.decrypt=Pt.CrowdsaleAccount=void 0;var an=nn(en(63375));var rn=en(75745);var In=en(42006);var sn=en(56938);var on=en(15686);var cn=en(13859);var dn=en(61338);var un=en(76127);var pn=en(20771);var mn=new un.Logger(pn.version);var bn=en(63503);var Gn=function(Wt){tn(CrowdsaleAccount,Wt);function CrowdsaleAccount(){return Wt!==null&&Wt.apply(this,arguments)||this}CrowdsaleAccount.prototype.isCrowdsaleAccount=function(Wt){return!!(Wt&&Wt._isCrowdsaleAccount)};return CrowdsaleAccount}(dn.Description);Pt.CrowdsaleAccount=Gn;function decrypt(Wt,Pt){var en=JSON.parse(Wt);Pt=(0,bn.getPassword)(Pt);var tn=(0,rn.getAddress)((0,bn.searchPath)(en,"ethaddr"));var nn=(0,bn.looseArrayify)((0,bn.searchPath)(en,"encseed"));if(!nn||nn.length%16!==0){mn.throwArgumentError("invalid encseed","json",Wt)}var dn=(0,In.arrayify)((0,on.pbkdf2)(Pt,Pt,2e3,32,"sha256")).slice(0,16);var un=nn.slice(0,16);var pn=nn.slice(16);var hn=new an.default.ModeOfOperation.cbc(dn,un);var Zn=an.default.padding.pkcs7.strip((0,In.arrayify)(hn.decrypt(pn)));var An="";for(var Wn=0;Wn{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.decryptJsonWalletSync=Pt.decryptJsonWallet=Pt.getJsonWalletAddress=Pt.isKeystoreWallet=Pt.isCrowdsaleWallet=Pt.encryptKeystore=Pt.decryptKeystoreSync=Pt.decryptKeystore=Pt.decryptCrowdsale=void 0;var tn=en(41340);Object.defineProperty(Pt,"decryptCrowdsale",{enumerable:true,get:function(){return tn.decrypt}});var nn=en(27610);Object.defineProperty(Pt,"getJsonWalletAddress",{enumerable:true,get:function(){return nn.getJsonWalletAddress}});Object.defineProperty(Pt,"isCrowdsaleWallet",{enumerable:true,get:function(){return nn.isCrowdsaleWallet}});Object.defineProperty(Pt,"isKeystoreWallet",{enumerable:true,get:function(){return nn.isKeystoreWallet}});var an=en(1692);Object.defineProperty(Pt,"decryptKeystore",{enumerable:true,get:function(){return an.decrypt}});Object.defineProperty(Pt,"decryptKeystoreSync",{enumerable:true,get:function(){return an.decryptSync}});Object.defineProperty(Pt,"encryptKeystore",{enumerable:true,get:function(){return an.encrypt}});function decryptJsonWallet(Wt,Pt,en){if((0,nn.isCrowdsaleWallet)(Wt)){if(en){en(0)}var rn=(0,tn.decrypt)(Wt,Pt);if(en){en(1)}return Promise.resolve(rn)}if((0,nn.isKeystoreWallet)(Wt)){return(0,an.decrypt)(Wt,Pt,en)}return Promise.reject(new Error("invalid JSON wallet"))}Pt.decryptJsonWallet=decryptJsonWallet;function decryptJsonWalletSync(Wt,Pt){if((0,nn.isCrowdsaleWallet)(Wt)){return(0,tn.decrypt)(Wt,Pt)}if((0,nn.isKeystoreWallet)(Wt)){return(0,an.decryptSync)(Wt,Pt)}throw new Error("invalid JSON wallet")}Pt.decryptJsonWalletSync=decryptJsonWalletSync},27610:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.getJsonWalletAddress=Pt.isKeystoreWallet=Pt.isCrowdsaleWallet=void 0;var tn=en(75745);function isCrowdsaleWallet(Wt){var Pt=null;try{Pt=JSON.parse(Wt)}catch(Wt){return false}return Pt.encseed&&Pt.ethaddr}Pt.isCrowdsaleWallet=isCrowdsaleWallet;function isKeystoreWallet(Wt){var Pt=null;try{Pt=JSON.parse(Wt)}catch(Wt){return false}if(!Pt.version||parseInt(Pt.version)!==Pt.version||parseInt(Pt.version)!==3){return false}return true}Pt.isKeystoreWallet=isKeystoreWallet;function getJsonWalletAddress(Wt){if(isCrowdsaleWallet(Wt)){try{return(0,tn.getAddress)(JSON.parse(Wt).ethaddr)}catch(Wt){return null}}if(isKeystoreWallet(Wt)){try{return(0,tn.getAddress)(JSON.parse(Wt).address)}catch(Wt){return null}}return null}Pt.getJsonWalletAddress=getJsonWalletAddress},1692:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();var nn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var an=this&&this.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.uuidV4=Pt.searchPath=Pt.getPassword=Pt.zpad=Pt.looseArrayify=void 0;var tn=en(42006);var nn=en(13859);function looseArrayify(Wt){if(typeof Wt==="string"&&Wt.substring(0,2)!=="0x"){Wt="0x"+Wt}return(0,tn.arrayify)(Wt)}Pt.looseArrayify=looseArrayify;function zpad(Wt,Pt){Wt=String(Wt);while(Wt.length255){return false}}return true}function coerceArray(Wt,Pt){if(Wt.buffer&&ArrayBuffer.isView(Wt)&&Wt.name==="Uint8Array"){if(Pt){if(Wt.slice){Wt=Wt.slice()}else{Wt=Array.prototype.slice.call(Wt)}}return Wt}if(Array.isArray(Wt)){if(!checkInts(Wt)){throw new Error("Array contains invalid value: "+Wt)}return new Uint8Array(Wt)}if(checkInt(Wt.length)&&checkInts(Wt)){return new Uint8Array(Wt)}throw new Error("unsupported array-like object")}function createArray(Wt){return new Uint8Array(Wt)}function copyArray(Wt,Pt,en,tn,nn){if(tn!=null||nn!=null){if(Wt.slice){Wt=Wt.slice(tn,nn)}else{Wt=Array.prototype.slice.call(Wt,tn,nn)}}Pt.set(Wt,en)}var en=function(){function toBytes(Wt){var Pt=[],en=0;Wt=encodeURI(Wt);while(en191&&tn<224){Pt.push(String.fromCharCode((tn&31)<<6|Wt[en+1]&63));en+=2}else{Pt.push(String.fromCharCode((tn&15)<<12|(Wt[en+1]&63)<<6|Wt[en+2]&63));en+=3}}return Pt.join("")}return{toBytes:toBytes,fromBytes:fromBytes}}();var tn=function(){function toBytes(Wt){var Pt=[];for(var en=0;en>4]+Wt[nn&15])}return en.join("")}return{toBytes:toBytes,fromBytes:fromBytes}}();var nn={16:10,24:12,32:14};var an=[1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145];var rn=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22];var In=[82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125];var sn=[3328402341,4168907908,4000806809,4135287693,4294111757,3597364157,3731845041,2445657428,1613770832,33620227,3462883241,1445669757,3892248089,3050821474,1303096294,3967186586,2412431941,528646813,2311702848,4202528135,4026202645,2992200171,2387036105,4226871307,1101901292,3017069671,1604494077,1169141738,597466303,1403299063,3832705686,2613100635,1974974402,3791519004,1033081774,1277568618,1815492186,2118074177,4126668546,2211236943,1748251740,1369810420,3521504564,4193382664,3799085459,2883115123,1647391059,706024767,134480908,2512897874,1176707941,2646852446,806885416,932615841,168101135,798661301,235341577,605164086,461406363,3756188221,3454790438,1311188841,2142417613,3933566367,302582043,495158174,1479289972,874125870,907746093,3698224818,3025820398,1537253627,2756858614,1983593293,3084310113,2108928974,1378429307,3722699582,1580150641,327451799,2790478837,3117535592,0,3253595436,1075847264,3825007647,2041688520,3059440621,3563743934,2378943302,1740553945,1916352843,2487896798,2555137236,2958579944,2244988746,3151024235,3320835882,1336584933,3992714006,2252555205,2588757463,1714631509,293963156,2319795663,3925473552,67240454,4269768577,2689618160,2017213508,631218106,1269344483,2723238387,1571005438,2151694528,93294474,1066570413,563977660,1882732616,4059428100,1673313503,2008463041,2950355573,1109467491,537923632,3858759450,4260623118,3218264685,2177748300,403442708,638784309,3287084079,3193921505,899127202,2286175436,773265209,2479146071,1437050866,4236148354,2050833735,3362022572,3126681063,840505643,3866325909,3227541664,427917720,2655997905,2749160575,1143087718,1412049534,999329963,193497219,2353415882,3354324521,1807268051,672404540,2816401017,3160301282,369822493,2916866934,3688947771,1681011286,1949973070,336202270,2454276571,201721354,1210328172,3093060836,2680341085,3184776046,1135389935,3294782118,965841320,831886756,3554993207,4068047243,3588745010,2345191491,1849112409,3664604599,26054028,2983581028,2622377682,1235855840,3630984372,2891339514,4092916743,3488279077,3395642799,4101667470,1202630377,268961816,1874508501,4034427016,1243948399,1546530418,941366308,1470539505,1941222599,2546386513,3421038627,2715671932,3899946140,1042226977,2521517021,1639824860,227249030,260737669,3765465232,2084453954,1907733956,3429263018,2420656344,100860677,4160157185,470683154,3261161891,1781871967,2924959737,1773779408,394692241,2579611992,974986535,664706745,3655459128,3958962195,731420851,571543859,3530123707,2849626480,126783113,865375399,765172662,1008606754,361203602,3387549984,2278477385,2857719295,1344809080,2782912378,59542671,1503764984,160008576,437062935,1707065306,3622233649,2218934982,3496503480,2185314755,697932208,1512910199,504303377,2075177163,2824099068,1841019862,739644986];var on=[2781242211,2230877308,2582542199,2381740923,234877682,3184946027,2984144751,1418839493,1348481072,50462977,2848876391,2102799147,434634494,1656084439,3863849899,2599188086,1167051466,2636087938,1082771913,2281340285,368048890,3954334041,3381544775,201060592,3963727277,1739838676,4250903202,3930435503,3206782108,4149453988,2531553906,1536934080,3262494647,484572669,2923271059,1783375398,1517041206,1098792767,49674231,1334037708,1550332980,4098991525,886171109,150598129,2481090929,1940642008,1398944049,1059722517,201851908,1385547719,1699095331,1587397571,674240536,2704774806,252314885,3039795866,151914247,908333586,2602270848,1038082786,651029483,1766729511,3447698098,2682942837,454166793,2652734339,1951935532,775166490,758520603,3000790638,4004797018,4217086112,4137964114,1299594043,1639438038,3464344499,2068982057,1054729187,1901997871,2534638724,4121318227,1757008337,0,750906861,1614815264,535035132,3363418545,3988151131,3201591914,1183697867,3647454910,1265776953,3734260298,3566750796,3903871064,1250283471,1807470800,717615087,3847203498,384695291,3313910595,3617213773,1432761139,2484176261,3481945413,283769337,100925954,2180939647,4037038160,1148730428,3123027871,3813386408,4087501137,4267549603,3229630528,2315620239,2906624658,3156319645,1215313976,82966005,3747855548,3245848246,1974459098,1665278241,807407632,451280895,251524083,1841287890,1283575245,337120268,891687699,801369324,3787349855,2721421207,3431482436,959321879,1469301956,4065699751,2197585534,1199193405,2898814052,3887750493,724703513,2514908019,2696962144,2551808385,3516813135,2141445340,1715741218,2119445034,2872807568,2198571144,3398190662,700968686,3547052216,1009259540,2041044702,3803995742,487983883,1991105499,1004265696,1449407026,1316239930,504629770,3683797321,168560134,1816667172,3837287516,1570751170,1857934291,4014189740,2797888098,2822345105,2754712981,936633572,2347923833,852879335,1133234376,1500395319,3084545389,2348912013,1689376213,3533459022,3762923945,3034082412,4205598294,133428468,634383082,2949277029,2398386810,3913789102,403703816,3580869306,2297460856,1867130149,1918643758,607656988,4049053350,3346248884,1368901318,600565992,2090982877,2632479860,557719327,3717614411,3697393085,2249034635,2232388234,2430627952,1115438654,3295786421,2865522278,3633334344,84280067,33027830,303828494,2747425121,1600795957,4188952407,3496589753,2434238086,1486471617,658119965,3106381470,953803233,334231800,3005978776,857870609,3151128937,1890179545,2298973838,2805175444,3056442267,574365214,2450884487,550103529,1233637070,4289353045,2018519080,2057691103,2399374476,4166623649,2148108681,387583245,3664101311,836232934,3330556482,3100665960,3280093505,2955516313,2002398509,287182607,3413881008,4238890068,3597515707,975967766];var cn=[1671808611,2089089148,2006576759,2072901243,4061003762,1807603307,1873927791,3310653893,810573872,16974337,1739181671,729634347,4263110654,3613570519,2883997099,1989864566,3393556426,2191335298,3376449993,2106063485,4195741690,1508618841,1204391495,4027317232,2917941677,3563566036,2734514082,2951366063,2629772188,2767672228,1922491506,3227229120,3082974647,4246528509,2477669779,644500518,911895606,1061256767,4144166391,3427763148,878471220,2784252325,3845444069,4043897329,1905517169,3631459288,827548209,356461077,67897348,3344078279,593839651,3277757891,405286936,2527147926,84871685,2595565466,118033927,305538066,2157648768,3795705826,3945188843,661212711,2999812018,1973414517,152769033,2208177539,745822252,439235610,455947803,1857215598,1525593178,2700827552,1391895634,994932283,3596728278,3016654259,695947817,3812548067,795958831,2224493444,1408607827,3513301457,0,3979133421,543178784,4229948412,2982705585,1542305371,1790891114,3410398667,3201918910,961245753,1256100938,1289001036,1491644504,3477767631,3496721360,4012557807,2867154858,4212583931,1137018435,1305975373,861234739,2241073541,1171229253,4178635257,33948674,2139225727,1357946960,1011120188,2679776671,2833468328,1374921297,2751356323,1086357568,2408187279,2460827538,2646352285,944271416,4110742005,3168756668,3066132406,3665145818,560153121,271589392,4279952895,4077846003,3530407890,3444343245,202643468,322250259,3962553324,1608629855,2543990167,1154254916,389623319,3294073796,2817676711,2122513534,1028094525,1689045092,1575467613,422261273,1939203699,1621147744,2174228865,1339137615,3699352540,577127458,712922154,2427141008,2290289544,1187679302,3995715566,3100863416,339486740,3732514782,1591917662,186455563,3681988059,3762019296,844522546,978220090,169743370,1239126601,101321734,611076132,1558493276,3260915650,3547250131,2901361580,1655096418,2443721105,2510565781,3828863972,2039214713,3878868455,3359869896,928607799,1840765549,2374762893,3580146133,1322425422,2850048425,1823791212,1459268694,4094161908,3928346602,1706019429,2056189050,2934523822,135794696,3134549946,2022240376,628050469,779246638,472135708,2800834470,3032970164,3327236038,3894660072,3715932637,1956440180,522272287,1272813131,3185336765,2340818315,2323976074,1888542832,1044544574,3049550261,1722469478,1222152264,50660867,4127324150,236067854,1638122081,895445557,1475980887,3117443513,2257655686,3243809217,489110045,2662934430,3778599393,4162055160,2561878936,288563729,1773916777,3648039385,2391345038,2493985684,2612407707,505560094,2274497927,3911240169,3460925390,1442818645,678973480,3749357023,2358182796,2717407649,2306869641,219617805,3218761151,3862026214,1120306242,1756942440,1103331905,2578459033,762796589,252780047,2966125488,1425844308,3151392187,372911126];var dn=[1667474886,2088535288,2004326894,2071694838,4075949567,1802223062,1869591006,3318043793,808472672,16843522,1734846926,724270422,4278065639,3621216949,2880169549,1987484396,3402253711,2189597983,3385409673,2105378810,4210693615,1499065266,1195886990,4042263547,2913856577,3570689971,2728590687,2947541573,2627518243,2762274643,1920112356,3233831835,3082273397,4261223649,2475929149,640051788,909531756,1061110142,4160160501,3435941763,875846760,2779116625,3857003729,4059105529,1903268834,3638064043,825316194,353713962,67374088,3351728789,589522246,3284360861,404236336,2526454071,84217610,2593830191,117901582,303183396,2155911963,3806477791,3958056653,656894286,2998062463,1970642922,151591698,2206440989,741110872,437923380,454765878,1852748508,1515908788,2694904667,1381168804,993742198,3604373943,3014905469,690584402,3823320797,791638366,2223281939,1398011302,3520161977,0,3991743681,538992704,4244381667,2981218425,1532751286,1785380564,3419096717,3200178535,960056178,1246420628,1280103576,1482221744,3486468741,3503319995,4025428677,2863326543,4227536621,1128514950,1296947098,859002214,2240123921,1162203018,4193849577,33687044,2139062782,1347481760,1010582648,2678045221,2829640523,1364325282,2745433693,1077985408,2408548869,2459086143,2644360225,943212656,4126475505,3166494563,3065430391,3671750063,555836226,269496352,4294908645,4092792573,3537006015,3452783745,202118168,320025894,3974901699,1600119230,2543297077,1145359496,387397934,3301201811,2812801621,2122220284,1027426170,1684319432,1566435258,421079858,1936954854,1616945344,2172753945,1330631070,3705438115,572679748,707427924,2425400123,2290647819,1179044492,4008585671,3099120491,336870440,3739122087,1583276732,185277718,3688593069,3772791771,842159716,976899700,168435220,1229577106,101059084,606366792,1549591736,3267517855,3553849021,2897014595,1650632388,2442242105,2509612081,3840161747,2038008818,3890688725,3368567691,926374254,1835907034,2374863873,3587531953,1313788572,2846482505,1819063512,1448540844,4109633523,3941213647,1701162954,2054852340,2930698567,134748176,3132806511,2021165296,623210314,774795868,471606328,2795958615,3031746419,3334885783,3907527627,3722280097,1953799400,522133822,1263263126,3183336545,2341176845,2324333839,1886425312,1044267644,3048588401,1718004428,1212733584,50529542,4143317495,235803164,1633788866,892690282,1465383342,3115962473,2256965911,3250673817,488449850,2661202215,3789633753,4177007595,2560144171,286339874,1768537042,3654906025,2391705863,2492770099,2610673197,505291324,2273808917,3924369609,3469625735,1431699370,673740880,3755965093,2358021891,2711746649,2307489801,218961690,3217021541,3873845719,1111672452,1751693520,1094828930,2576986153,757954394,252645662,2964376443,1414855848,3149649517,370555436];var un=[1374988112,2118214995,437757123,975658646,1001089995,530400753,2902087851,1273168787,540080725,2910219766,2295101073,4110568485,1340463100,3307916247,641025152,3043140495,3736164937,632953703,1172967064,1576976609,3274667266,2169303058,2370213795,1809054150,59727847,361929877,3211623147,2505202138,3569255213,1484005843,1239443753,2395588676,1975683434,4102977912,2572697195,666464733,3202437046,4035489047,3374361702,2110667444,1675577880,3843699074,2538681184,1649639237,2976151520,3144396420,4269907996,4178062228,1883793496,2403728665,2497604743,1383856311,2876494627,1917518562,3810496343,1716890410,3001755655,800440835,2261089178,3543599269,807962610,599762354,33778362,3977675356,2328828971,2809771154,4077384432,1315562145,1708848333,101039829,3509871135,3299278474,875451293,2733856160,92987698,2767645557,193195065,1080094634,1584504582,3178106961,1042385657,2531067453,3711829422,1306967366,2438237621,1908694277,67556463,1615861247,429456164,3602770327,2302690252,1742315127,2968011453,126454664,3877198648,2043211483,2709260871,2084704233,4169408201,0,159417987,841739592,504459436,1817866830,4245618683,260388950,1034867998,908933415,168810852,1750902305,2606453969,607530554,202008497,2472011535,3035535058,463180190,2160117071,1641816226,1517767529,470948374,3801332234,3231722213,1008918595,303765277,235474187,4069246893,766945465,337553864,1475418501,2943682380,4003061179,2743034109,4144047775,1551037884,1147550661,1543208500,2336434550,3408119516,3069049960,3102011747,3610369226,1113818384,328671808,2227573024,2236228733,3535486456,2935566865,3341394285,496906059,3702665459,226906860,2009195472,733156972,2842737049,294930682,1206477858,2835123396,2700099354,1451044056,573804783,2269728455,3644379585,2362090238,2564033334,2801107407,2776292904,3669462566,1068351396,742039012,1350078989,1784663195,1417561698,4136440770,2430122216,775550814,2193862645,2673705150,1775276924,1876241833,3475313331,3366754619,270040487,3902563182,3678124923,3441850377,1851332852,3969562369,2203032232,3868552805,2868897406,566021896,4011190502,3135740889,1248802510,3936291284,699432150,832877231,708780849,3332740144,899835584,1951317047,4236429990,3767586992,866637845,4043610186,1106041591,2144161806,395441711,1984812685,1139781709,3433712980,3835036895,2664543715,1282050075,3240894392,1181045119,2640243204,25965917,4203181171,4211818798,3009879386,2463879762,3910161971,1842759443,2597806476,933301370,1509430414,3943906441,3467192302,3076639029,3776767469,2051518780,2631065433,1441952575,404016761,1942435775,1408749034,1610459739,3745345300,2017778566,3400528769,3110650942,941896748,3265478751,371049330,3168937228,675039627,4279080257,967311729,135050206,3635733660,1683407248,2076935265,3576870512,1215061108,3501741890];var pn=[1347548327,1400783205,3273267108,2520393566,3409685355,4045380933,2880240216,2471224067,1428173050,4138563181,2441661558,636813900,4233094615,3620022987,2149987652,2411029155,1239331162,1730525723,2554718734,3781033664,46346101,310463728,2743944855,3328955385,3875770207,2501218972,3955191162,3667219033,768917123,3545789473,692707433,1150208456,1786102409,2029293177,1805211710,3710368113,3065962831,401639597,1724457132,3028143674,409198410,2196052529,1620529459,1164071807,3769721975,2226875310,486441376,2499348523,1483753576,428819965,2274680428,3075636216,598438867,3799141122,1474502543,711349675,129166120,53458370,2592523643,2782082824,4063242375,2988687269,3120694122,1559041666,730517276,2460449204,4042459122,2706270690,3446004468,3573941694,533804130,2328143614,2637442643,2695033685,839224033,1973745387,957055980,2856345839,106852767,1371368976,4181598602,1033297158,2933734917,1179510461,3046200461,91341917,1862534868,4284502037,605657339,2547432937,3431546947,2003294622,3182487618,2282195339,954669403,3682191598,1201765386,3917234703,3388507166,0,2198438022,1211247597,2887651696,1315723890,4227665663,1443857720,507358933,657861945,1678381017,560487590,3516619604,975451694,2970356327,261314535,3535072918,2652609425,1333838021,2724322336,1767536459,370938394,182621114,3854606378,1128014560,487725847,185469197,2918353863,3106780840,3356761769,2237133081,1286567175,3152976349,4255350624,2683765030,3160175349,3309594171,878443390,1988838185,3704300486,1756818940,1673061617,3403100636,272786309,1075025698,545572369,2105887268,4174560061,296679730,1841768865,1260232239,4091327024,3960309330,3497509347,1814803222,2578018489,4195456072,575138148,3299409036,446754879,3629546796,4011996048,3347532110,3252238545,4270639778,915985419,3483825537,681933534,651868046,2755636671,3828103837,223377554,2607439820,1649704518,3270937875,3901806776,1580087799,4118987695,3198115200,2087309459,2842678573,3016697106,1003007129,2802849917,1860738147,2077965243,164439672,4100872472,32283319,2827177882,1709610350,2125135846,136428751,3874428392,3652904859,3460984630,3572145929,3593056380,2939266226,824852259,818324884,3224740454,930369212,2801566410,2967507152,355706840,1257309336,4148292826,243256656,790073846,2373340630,1296297904,1422699085,3756299780,3818836405,457992840,3099667487,2135319889,77422314,1560382517,1945798516,788204353,1521706781,1385356242,870912086,325965383,2358957921,2050466060,2388260884,2313884476,4006521127,901210569,3990953189,1014646705,1503449823,1062597235,2031621326,3212035895,3931371469,1533017514,350174575,2256028891,2177544179,1052338372,741876788,1606591296,1914052035,213705253,2334669897,1107234197,1899603969,3725069491,2631447780,2422494913,1635502980,1893020342,1950903388,1120974935];var mn=[2807058932,1699970625,2764249623,1586903591,1808481195,1173430173,1487645946,59984867,4199882800,1844882806,1989249228,1277555970,3623636965,3419915562,1149249077,2744104290,1514790577,459744698,244860394,3235995134,1963115311,4027744588,2544078150,4190530515,1608975247,2627016082,2062270317,1507497298,2200818878,567498868,1764313568,3359936201,2305455554,2037970062,1047239e3,1910319033,1337376481,2904027272,2892417312,984907214,1243112415,830661914,861968209,2135253587,2011214180,2927934315,2686254721,731183368,1750626376,4246310725,1820824798,4172763771,3542330227,48394827,2404901663,2871682645,671593195,3254988725,2073724613,145085239,2280796200,2779915199,1790575107,2187128086,472615631,3029510009,4075877127,3802222185,4107101658,3201631749,1646252340,4270507174,1402811438,1436590835,3778151818,3950355702,3963161475,4020912224,2667994737,273792366,2331590177,104699613,95345982,3175501286,2377486676,1560637892,3564045318,369057872,4213447064,3919042237,1137477952,2658625497,1119727848,2340947849,1530455833,4007360968,172466556,266959938,516552836,0,2256734592,3980931627,1890328081,1917742170,4294704398,945164165,3575528878,958871085,3647212047,2787207260,1423022939,775562294,1739656202,3876557655,2530391278,2443058075,3310321856,547512796,1265195639,437656594,3121275539,719700128,3762502690,387781147,218828297,3350065803,2830708150,2848461854,428169201,122466165,3720081049,1627235199,648017665,4122762354,1002783846,2117360635,695634755,3336358691,4234721005,4049844452,3704280881,2232435299,574624663,287343814,612205898,1039717051,840019705,2708326185,793451934,821288114,1391201670,3822090177,376187827,3113855344,1224348052,1679968233,2361698556,1058709744,752375421,2431590963,1321699145,3519142200,2734591178,188127444,2177869557,3727205754,2384911031,3215212461,2648976442,2450346104,3432737375,1180849278,331544205,3102249176,4150144569,2952102595,2159976285,2474404304,766078933,313773861,2570832044,2108100632,1668212892,3145456443,2013908262,418672217,3070356634,2594734927,1852171925,3867060991,3473416636,3907448597,2614737639,919489135,164948639,2094410160,2997825956,590424639,2486224549,1723872674,3157750862,3399941250,3501252752,3625268135,2555048196,3673637356,1343127501,4130281361,3599595085,2957853679,1297403050,81781910,3051593425,2283490410,532201772,1367295589,3926170974,895287692,1953757831,1093597963,492483431,3528626907,1446242576,1192455638,1636604631,209336225,344873464,1015671571,669961897,3375740769,3857572124,2973530695,3747192018,1933530610,3464042516,935293895,3454686199,2858115069,1863638845,3683022916,4085369519,3292445032,875313188,1080017571,3279033885,621591778,1233856572,2504130317,24197544,3017672716,3835484340,3247465558,2220981195,3060847922,1551124588,1463996600];var bn=[4104605777,1097159550,396673818,660510266,2875968315,2638606623,4200115116,3808662347,821712160,1986918061,3430322568,38544885,3856137295,718002117,893681702,1654886325,2975484382,3122358053,3926825029,4274053469,796197571,1290801793,1184342925,3556361835,2405426947,2459735317,1836772287,1381620373,3196267988,1948373848,3764988233,3385345166,3263785589,2390325492,1480485785,3111247143,3780097726,2293045232,548169417,3459953789,3746175075,439452389,1362321559,1400849762,1685577905,1806599355,2174754046,137073913,1214797936,1174215055,3731654548,2079897426,1943217067,1258480242,529487843,1437280870,3945269170,3049390895,3313212038,923313619,679998e3,3215307299,57326082,377642221,3474729866,2041877159,133361907,1776460110,3673476453,96392454,878845905,2801699524,777231668,4082475170,2330014213,4142626212,2213296395,1626319424,1906247262,1846563261,562755902,3708173718,1040559837,3871163981,1418573201,3294430577,114585348,1343618912,2566595609,3186202582,1078185097,3651041127,3896688048,2307622919,425408743,3371096953,2081048481,1108339068,2216610296,0,2156299017,736970802,292596766,1517440620,251657213,2235061775,2933202493,758720310,265905162,1554391400,1532285339,908999204,174567692,1474760595,4002861748,2610011675,3234156416,3693126241,2001430874,303699484,2478443234,2687165888,585122620,454499602,151849742,2345119218,3064510765,514443284,4044981591,1963412655,2581445614,2137062819,19308535,1928707164,1715193156,4219352155,1126790795,600235211,3992742070,3841024952,836553431,1669664834,2535604243,3323011204,1243905413,3141400786,4180808110,698445255,2653899549,2989552604,2253581325,3252932727,3004591147,1891211689,2487810577,3915653703,4237083816,4030667424,2100090966,865136418,1229899655,953270745,3399679628,3557504664,4118925222,2061379749,3079546586,2915017791,983426092,2022837584,1607244650,2118541908,2366882550,3635996816,972512814,3283088770,1568718495,3499326569,3576539503,621982671,2895723464,410887952,2623762152,1002142683,645401037,1494807662,2595684844,1335535747,2507040230,4293295786,3167684641,367585007,3885750714,1865862730,2668221674,2960971305,2763173681,1059270954,2777952454,2724642869,1320957812,2194319100,2429595872,2815956275,77089521,3973773121,3444575871,2448830231,1305906550,4021308739,2857194700,2516901860,3518358430,1787304780,740276417,1699839814,1592394909,2352307457,2272556026,188821243,1729977011,3687994002,274084841,3594982253,3613494426,2701949495,4162096729,322734571,2837966542,1640576439,484830689,1202797690,3537852828,4067639125,349075736,3342319475,4157467219,4255800159,1030690015,1155237496,2951971274,1757691577,607398968,2738905026,499347990,3794078908,1011452712,227885567,2818666809,213114376,3034881240,1455525988,3414450555,850817237,1817998408,3092726480];var Gn=[0,235474187,470948374,303765277,941896748,908933415,607530554,708780849,1883793496,2118214995,1817866830,1649639237,1215061108,1181045119,1417561698,1517767529,3767586992,4003061179,4236429990,4069246893,3635733660,3602770327,3299278474,3400528769,2430122216,2664543715,2362090238,2193862645,2835123396,2801107407,3035535058,3135740889,3678124923,3576870512,3341394285,3374361702,3810496343,3977675356,4279080257,4043610186,2876494627,2776292904,3076639029,3110650942,2472011535,2640243204,2403728665,2169303058,1001089995,899835584,666464733,699432150,59727847,226906860,530400753,294930682,1273168787,1172967064,1475418501,1509430414,1942435775,2110667444,1876241833,1641816226,2910219766,2743034109,2976151520,3211623147,2505202138,2606453969,2302690252,2269728455,3711829422,3543599269,3240894392,3475313331,3843699074,3943906441,4178062228,4144047775,1306967366,1139781709,1374988112,1610459739,1975683434,2076935265,1775276924,1742315127,1034867998,866637845,566021896,800440835,92987698,193195065,429456164,395441711,1984812685,2017778566,1784663195,1683407248,1315562145,1080094634,1383856311,1551037884,101039829,135050206,437757123,337553864,1042385657,807962610,573804783,742039012,2531067453,2564033334,2328828971,2227573024,2935566865,2700099354,3001755655,3168937228,3868552805,3902563182,4203181171,4102977912,3736164937,3501741890,3265478751,3433712980,1106041591,1340463100,1576976609,1408749034,2043211483,2009195472,1708848333,1809054150,832877231,1068351396,766945465,599762354,159417987,126454664,361929877,463180190,2709260871,2943682380,3178106961,3009879386,2572697195,2538681184,2236228733,2336434550,3509871135,3745345300,3441850377,3274667266,3910161971,3877198648,4110568485,4211818798,2597806476,2497604743,2261089178,2295101073,2733856160,2902087851,3202437046,2968011453,3936291284,3835036895,4136440770,4169408201,3535486456,3702665459,3467192302,3231722213,2051518780,1951317047,1716890410,1750902305,1113818384,1282050075,1584504582,1350078989,168810852,67556463,371049330,404016761,841739592,1008918595,775550814,540080725,3969562369,3801332234,4035489047,4269907996,3569255213,3669462566,3366754619,3332740144,2631065433,2463879762,2160117071,2395588676,2767645557,2868897406,3102011747,3069049960,202008497,33778362,270040487,504459436,875451293,975658646,675039627,641025152,2084704233,1917518562,1615861247,1851332852,1147550661,1248802510,1484005843,1451044056,933301370,967311729,733156972,632953703,260388950,25965917,328671808,496906059,1206477858,1239443753,1543208500,1441952575,2144161806,1908694277,1675577880,1842759443,3610369226,3644379585,3408119516,3307916247,4011190502,3776767469,4077384432,4245618683,2809771154,2842737049,3144396420,3043140495,2673705150,2438237621,2203032232,2370213795];var hn=[0,185469197,370938394,487725847,741876788,657861945,975451694,824852259,1483753576,1400783205,1315723890,1164071807,1950903388,2135319889,1649704518,1767536459,2967507152,3152976349,2801566410,2918353863,2631447780,2547432937,2328143614,2177544179,3901806776,3818836405,4270639778,4118987695,3299409036,3483825537,3535072918,3652904859,2077965243,1893020342,1841768865,1724457132,1474502543,1559041666,1107234197,1257309336,598438867,681933534,901210569,1052338372,261314535,77422314,428819965,310463728,3409685355,3224740454,3710368113,3593056380,3875770207,3960309330,4045380933,4195456072,2471224067,2554718734,2237133081,2388260884,3212035895,3028143674,2842678573,2724322336,4138563181,4255350624,3769721975,3955191162,3667219033,3516619604,3431546947,3347532110,2933734917,2782082824,3099667487,3016697106,2196052529,2313884476,2499348523,2683765030,1179510461,1296297904,1347548327,1533017514,1786102409,1635502980,2087309459,2003294622,507358933,355706840,136428751,53458370,839224033,957055980,605657339,790073846,2373340630,2256028891,2607439820,2422494913,2706270690,2856345839,3075636216,3160175349,3573941694,3725069491,3273267108,3356761769,4181598602,4063242375,4011996048,3828103837,1033297158,915985419,730517276,545572369,296679730,446754879,129166120,213705253,1709610350,1860738147,1945798516,2029293177,1239331162,1120974935,1606591296,1422699085,4148292826,4233094615,3781033664,3931371469,3682191598,3497509347,3446004468,3328955385,2939266226,2755636671,3106780840,2988687269,2198438022,2282195339,2501218972,2652609425,1201765386,1286567175,1371368976,1521706781,1805211710,1620529459,2105887268,1988838185,533804130,350174575,164439672,46346101,870912086,954669403,636813900,788204353,2358957921,2274680428,2592523643,2441661558,2695033685,2880240216,3065962831,3182487618,3572145929,3756299780,3270937875,3388507166,4174560061,4091327024,4006521127,3854606378,1014646705,930369212,711349675,560487590,272786309,457992840,106852767,223377554,1678381017,1862534868,1914052035,2031621326,1211247597,1128014560,1580087799,1428173050,32283319,182621114,401639597,486441376,768917123,651868046,1003007129,818324884,1503449823,1385356242,1333838021,1150208456,1973745387,2125135846,1673061617,1756818940,2970356327,3120694122,2802849917,2887651696,2637442643,2520393566,2334669897,2149987652,3917234703,3799141122,4284502037,4100872472,3309594171,3460984630,3545789473,3629546796,2050466060,1899603969,1814803222,1730525723,1443857720,1560382517,1075025698,1260232239,575138148,692707433,878443390,1062597235,243256656,91341917,409198410,325965383,3403100636,3252238545,3704300486,3620022987,3874428392,3990953189,4042459122,4227665663,2460449204,2578018489,2226875310,2411029155,3198115200,3046200461,2827177882,2743944855];var Zn=[0,218828297,437656594,387781147,875313188,958871085,775562294,590424639,1750626376,1699970625,1917742170,2135253587,1551124588,1367295589,1180849278,1265195639,3501252752,3720081049,3399941250,3350065803,3835484340,3919042237,4270507174,4085369519,3102249176,3051593425,2734591178,2952102595,2361698556,2177869557,2530391278,2614737639,3145456443,3060847922,2708326185,2892417312,2404901663,2187128086,2504130317,2555048196,3542330227,3727205754,3375740769,3292445032,3876557655,3926170974,4246310725,4027744588,1808481195,1723872674,1910319033,2094410160,1608975247,1391201670,1173430173,1224348052,59984867,244860394,428169201,344873464,935293895,984907214,766078933,547512796,1844882806,1627235199,2011214180,2062270317,1507497298,1423022939,1137477952,1321699145,95345982,145085239,532201772,313773861,830661914,1015671571,731183368,648017665,3175501286,2957853679,2807058932,2858115069,2305455554,2220981195,2474404304,2658625497,3575528878,3625268135,3473416636,3254988725,3778151818,3963161475,4213447064,4130281361,3599595085,3683022916,3432737375,3247465558,3802222185,4020912224,4172763771,4122762354,3201631749,3017672716,2764249623,2848461854,2331590177,2280796200,2431590963,2648976442,104699613,188127444,472615631,287343814,840019705,1058709744,671593195,621591778,1852171925,1668212892,1953757831,2037970062,1514790577,1463996600,1080017571,1297403050,3673637356,3623636965,3235995134,3454686199,4007360968,3822090177,4107101658,4190530515,2997825956,3215212461,2830708150,2779915199,2256734592,2340947849,2627016082,2443058075,172466556,122466165,273792366,492483431,1047239e3,861968209,612205898,695634755,1646252340,1863638845,2013908262,1963115311,1446242576,1530455833,1277555970,1093597963,1636604631,1820824798,2073724613,1989249228,1436590835,1487645946,1337376481,1119727848,164948639,81781910,331544205,516552836,1039717051,821288114,669961897,719700128,2973530695,3157750862,2871682645,2787207260,2232435299,2283490410,2667994737,2450346104,3647212047,3564045318,3279033885,3464042516,3980931627,3762502690,4150144569,4199882800,3070356634,3121275539,2904027272,2686254721,2200818878,2384911031,2570832044,2486224549,3747192018,3528626907,3310321856,3359936201,3950355702,3867060991,4049844452,4234721005,1739656202,1790575107,2108100632,1890328081,1402811438,1586903591,1233856572,1149249077,266959938,48394827,369057872,418672217,1002783846,919489135,567498868,752375421,209336225,24197544,376187827,459744698,945164165,895287692,574624663,793451934,1679968233,1764313568,2117360635,1933530610,1343127501,1560637892,1243112415,1192455638,3704280881,3519142200,3336358691,3419915562,3907448597,3857572124,4075877127,4294704398,3029510009,3113855344,2927934315,2744104290,2159976285,2377486676,2594734927,2544078150];var An=[0,151849742,303699484,454499602,607398968,758720310,908999204,1059270954,1214797936,1097159550,1517440620,1400849762,1817998408,1699839814,2118541908,2001430874,2429595872,2581445614,2194319100,2345119218,3034881240,3186202582,2801699524,2951971274,3635996816,3518358430,3399679628,3283088770,4237083816,4118925222,4002861748,3885750714,1002142683,850817237,698445255,548169417,529487843,377642221,227885567,77089521,1943217067,2061379749,1640576439,1757691577,1474760595,1592394909,1174215055,1290801793,2875968315,2724642869,3111247143,2960971305,2405426947,2253581325,2638606623,2487810577,3808662347,3926825029,4044981591,4162096729,3342319475,3459953789,3576539503,3693126241,1986918061,2137062819,1685577905,1836772287,1381620373,1532285339,1078185097,1229899655,1040559837,923313619,740276417,621982671,439452389,322734571,137073913,19308535,3871163981,4021308739,4104605777,4255800159,3263785589,3414450555,3499326569,3651041127,2933202493,2815956275,3167684641,3049390895,2330014213,2213296395,2566595609,2448830231,1305906550,1155237496,1607244650,1455525988,1776460110,1626319424,2079897426,1928707164,96392454,213114376,396673818,514443284,562755902,679998e3,865136418,983426092,3708173718,3557504664,3474729866,3323011204,4180808110,4030667424,3945269170,3794078908,2507040230,2623762152,2272556026,2390325492,2975484382,3092726480,2738905026,2857194700,3973773121,3856137295,4274053469,4157467219,3371096953,3252932727,3673476453,3556361835,2763173681,2915017791,3064510765,3215307299,2156299017,2307622919,2459735317,2610011675,2081048481,1963412655,1846563261,1729977011,1480485785,1362321559,1243905413,1126790795,878845905,1030690015,645401037,796197571,274084841,425408743,38544885,188821243,3613494426,3731654548,3313212038,3430322568,4082475170,4200115116,3780097726,3896688048,2668221674,2516901860,2366882550,2216610296,3141400786,2989552604,2837966542,2687165888,1202797690,1320957812,1437280870,1554391400,1669664834,1787304780,1906247262,2022837584,265905162,114585348,499347990,349075736,736970802,585122620,972512814,821712160,2595684844,2478443234,2293045232,2174754046,3196267988,3079546586,2895723464,2777952454,3537852828,3687994002,3234156416,3385345166,4142626212,4293295786,3841024952,3992742070,174567692,57326082,410887952,292596766,777231668,660510266,1011452712,893681702,1108339068,1258480242,1343618912,1494807662,1715193156,1865862730,1948373848,2100090966,2701949495,2818666809,3004591147,3122358053,2235061775,2352307457,2535604243,2653899549,3915653703,3764988233,4219352155,4067639125,3444575871,3294430577,3746175075,3594982253,836553431,953270745,600235211,718002117,367585007,484830689,133361907,251657213,2041877159,1891211689,1806599355,1654886325,1568718495,1418573201,1335535747,1184342925];function convertToInt32(Wt){var Pt=[];for(var en=0;en>2;this._Ke[sn][Pt%4]=In[Pt];this._Kd[Wt-sn][Pt%4]=In[Pt]}var on=0;var cn=tn,dn;while(cn>16&255]<<24^rn[dn>>8&255]<<16^rn[dn&255]<<8^rn[dn>>24&255]^an[on]<<24;on+=1;if(tn!=8){for(var Pt=1;Pt>8&255]<<8^rn[dn>>16&255]<<16^rn[dn>>24&255]<<24;for(var Pt=tn/2+1;Pt>2;pn=cn%4;this._Ke[un][pn]=In[Pt];this._Kd[Wt-un][pn]=In[Pt++];cn++}}for(var un=1;un>24&255]^hn[dn>>16&255]^Zn[dn>>8&255]^An[dn&255]}}};AES.prototype.encrypt=function(Wt){if(Wt.length!=16){throw new Error("invalid plaintext size (must be 16 bytes)")}var Pt=this._Ke.length-1;var en=[0,0,0,0];var tn=convertToInt32(Wt);for(var nn=0;nn<4;nn++){tn[nn]^=this._Ke[0][nn]}for(var an=1;an>24&255]^on[tn[(nn+1)%4]>>16&255]^cn[tn[(nn+2)%4]>>8&255]^dn[tn[(nn+3)%4]&255]^this._Ke[an][nn]}tn=en.slice()}var In=createArray(16),un;for(var nn=0;nn<4;nn++){un=this._Ke[Pt][nn];In[4*nn]=(rn[tn[nn]>>24&255]^un>>24)&255;In[4*nn+1]=(rn[tn[(nn+1)%4]>>16&255]^un>>16)&255;In[4*nn+2]=(rn[tn[(nn+2)%4]>>8&255]^un>>8)&255;In[4*nn+3]=(rn[tn[(nn+3)%4]&255]^un)&255}return In};AES.prototype.decrypt=function(Wt){if(Wt.length!=16){throw new Error("invalid ciphertext size (must be 16 bytes)")}var Pt=this._Kd.length-1;var en=[0,0,0,0];var tn=convertToInt32(Wt);for(var nn=0;nn<4;nn++){tn[nn]^=this._Kd[0][nn]}for(var an=1;an>24&255]^pn[tn[(nn+3)%4]>>16&255]^mn[tn[(nn+2)%4]>>8&255]^bn[tn[(nn+1)%4]&255]^this._Kd[an][nn]}tn=en.slice()}var rn=createArray(16),sn;for(var nn=0;nn<4;nn++){sn=this._Kd[Pt][nn];rn[4*nn]=(In[tn[nn]>>24&255]^sn>>24)&255;rn[4*nn+1]=(In[tn[(nn+3)%4]>>16&255]^sn>>16)&255;rn[4*nn+2]=(In[tn[(nn+2)%4]>>8&255]^sn>>8)&255;rn[4*nn+3]=(In[tn[(nn+1)%4]&255]^sn)&255}return rn};var ModeOfOperationECB=function(Wt){if(!(this instanceof ModeOfOperationECB)){throw Error("AES must be instanitated with `new`")}this.description="Electronic Code Block";this.name="ecb";this._aes=new AES(Wt)};ModeOfOperationECB.prototype.encrypt=function(Wt){Wt=coerceArray(Wt);if(Wt.length%16!==0){throw new Error("invalid plaintext size (must be multiple of 16 bytes)")}var Pt=createArray(Wt.length);var en=createArray(16);for(var tn=0;tn=0;--Pt){this._counter[Pt]=Wt%256;Wt=Wt>>8}};Counter.prototype.setBytes=function(Wt){Wt=coerceArray(Wt,true);if(Wt.length!=16){throw new Error("invalid counter bytes size (must be 16 bytes)")}this._counter=Wt};Counter.prototype.increment=function(){for(var Wt=15;Wt>=0;Wt--){if(this._counter[Wt]===255){this._counter[Wt]=0}else{this._counter[Wt]++;break}}};var ModeOfOperationCTR=function(Wt,Pt){if(!(this instanceof ModeOfOperationCTR)){throw Error("AES must be instanitated with `new`")}this.description="Counter";this.name="ctr";if(!(Pt instanceof Counter)){Pt=new Counter(Pt)}this._counter=Pt;this._remainingCounter=null;this._remainingCounterIndex=16;this._aes=new AES(Wt)};ModeOfOperationCTR.prototype.encrypt=function(Wt){var Pt=coerceArray(Wt,true);for(var en=0;en16){throw new Error("PKCS#7 padding byte out of range")}var en=Wt.length-Pt;for(var tn=0;tn{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="logger/5.7.0"},76127:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Logger=Pt.ErrorCode=Pt.LogLevel=void 0;var tn=false;var nn=false;var an={debug:1,default:2,info:2,warning:3,error:4,off:5};var rn=an["default"];var In=en(97688);var sn=null;function _checkNormalize(){try{var Wt=[];["NFD","NFC","NFKD","NFKC"].forEach((function(Pt){try{if("test".normalize(Pt)!=="test"){throw new Error("bad normalize")}}catch(en){Wt.push(Pt)}}));if(Wt.length){throw new Error("missing "+Wt.join(", "))}if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769)){throw new Error("broken implementation")}}catch(Wt){return Wt.message}return null}var on=_checkNormalize();var cn;(function(Wt){Wt["DEBUG"]="DEBUG";Wt["INFO"]="INFO";Wt["WARNING"]="WARNING";Wt["ERROR"]="ERROR";Wt["OFF"]="OFF"})(cn=Pt.LogLevel||(Pt.LogLevel={}));var dn;(function(Wt){Wt["UNKNOWN_ERROR"]="UNKNOWN_ERROR";Wt["NOT_IMPLEMENTED"]="NOT_IMPLEMENTED";Wt["UNSUPPORTED_OPERATION"]="UNSUPPORTED_OPERATION";Wt["NETWORK_ERROR"]="NETWORK_ERROR";Wt["SERVER_ERROR"]="SERVER_ERROR";Wt["TIMEOUT"]="TIMEOUT";Wt["BUFFER_OVERRUN"]="BUFFER_OVERRUN";Wt["NUMERIC_FAULT"]="NUMERIC_FAULT";Wt["MISSING_NEW"]="MISSING_NEW";Wt["INVALID_ARGUMENT"]="INVALID_ARGUMENT";Wt["MISSING_ARGUMENT"]="MISSING_ARGUMENT";Wt["UNEXPECTED_ARGUMENT"]="UNEXPECTED_ARGUMENT";Wt["CALL_EXCEPTION"]="CALL_EXCEPTION";Wt["INSUFFICIENT_FUNDS"]="INSUFFICIENT_FUNDS";Wt["NONCE_EXPIRED"]="NONCE_EXPIRED";Wt["REPLACEMENT_UNDERPRICED"]="REPLACEMENT_UNDERPRICED";Wt["UNPREDICTABLE_GAS_LIMIT"]="UNPREDICTABLE_GAS_LIMIT";Wt["TRANSACTION_REPLACED"]="TRANSACTION_REPLACED";Wt["ACTION_REJECTED"]="ACTION_REJECTED"})(dn=Pt.ErrorCode||(Pt.ErrorCode={}));var un="0123456789abcdef";var pn=function(){function Logger(Wt){Object.defineProperty(this,"version",{enumerable:true,value:Wt,writable:false})}Logger.prototype._log=function(Wt,Pt){var en=Wt.toLowerCase();if(an[en]==null){this.throwArgumentError("invalid log level name","logLevel",Wt)}if(rn>an[en]){return}console.log.apply(console,Pt)};Logger.prototype.debug=function(){var Wt=[];for(var Pt=0;Pt>4];nn+=un[Pt[an]&15]}tn.push(Wt+"=Uint8Array(0x"+nn+")")}else{tn.push(Wt+"="+JSON.stringify(Pt))}}catch(Pt){tn.push(Wt+"="+JSON.stringify(en[Wt].toString()))}}));tn.push("code="+Pt);tn.push("version="+this.version);var an=Wt;var rn="";switch(Pt){case dn.NUMERIC_FAULT:{rn="NUMERIC_FAULT";var In=Wt;switch(In){case"overflow":case"underflow":case"division-by-zero":rn+="-"+In;break;case"negative-power":case"negative-width":rn+="-unsupported";break;case"unbound-bitwise-result":rn+="-unbound-result";break}break}case dn.CALL_EXCEPTION:case dn.INSUFFICIENT_FUNDS:case dn.MISSING_NEW:case dn.NONCE_EXPIRED:case dn.REPLACEMENT_UNDERPRICED:case dn.TRANSACTION_REPLACED:case dn.UNPREDICTABLE_GAS_LIMIT:rn=Pt;break}if(rn){Wt+=" [ See: https://links.ethers.org/v5-errors-"+rn+" ]"}if(tn.length){Wt+=" ("+tn.join(", ")+")"}var sn=new Error(Wt);sn.reason=an;sn.code=Pt;Object.keys(en).forEach((function(Wt){sn[Wt]=en[Wt]}));return sn};Logger.prototype.throwError=function(Wt,Pt,en){throw this.makeError(Wt,Pt,en)};Logger.prototype.throwArgumentError=function(Wt,Pt,en){return this.throwError(Wt,Logger.errors.INVALID_ARGUMENT,{argument:Pt,value:en})};Logger.prototype.assert=function(Wt,Pt,en,tn){if(!!Wt){return}this.throwError(Pt,en,tn)};Logger.prototype.assertArgument=function(Wt,Pt,en,tn){if(!!Wt){return}this.throwArgumentError(Pt,en,tn)};Logger.prototype.checkNormalize=function(Wt){if(Wt==null){Wt="platform missing String.prototype.normalize"}if(on){this.throwError("platform missing String.prototype.normalize",Logger.errors.UNSUPPORTED_OPERATION,{operation:"String.prototype.normalize",form:on})}};Logger.prototype.checkSafeUint53=function(Wt,Pt){if(typeof Wt!=="number"){return}if(Pt==null){Pt="value not safe"}if(Wt<0||Wt>=9007199254740991){this.throwError(Pt,Logger.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:Wt})}if(Wt%1){this.throwError(Pt,Logger.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:Wt})}};Logger.prototype.checkArgumentCount=function(Wt,Pt,en){if(en){en=": "+en}else{en=""}if(WtPt){this.throwError("too many arguments"+en,Logger.errors.UNEXPECTED_ARGUMENT,{count:Wt,expectedCount:Pt})}};Logger.prototype.checkNew=function(Wt,Pt){if(Wt===Object||Wt==null){this.throwError("missing new",Logger.errors.MISSING_NEW,{name:Pt.name})}};Logger.prototype.checkAbstract=function(Wt,Pt){if(Wt===Pt){this.throwError("cannot instantiate abstract class "+JSON.stringify(Pt.name)+" directly; use a sub-class",Logger.errors.UNSUPPORTED_OPERATION,{name:Wt.name,operation:"new"})}else if(Wt===Object||Wt==null){this.throwError("missing new",Logger.errors.MISSING_NEW,{name:Pt.name})}};Logger.globalLogger=function(){if(!sn){sn=new Logger(In.version)}return sn};Logger.setCensorship=function(Wt,Pt){if(!Wt&&Pt){this.globalLogger().throwError("cannot permanently disable censorship",Logger.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}if(tn){if(!Wt){return}this.globalLogger().throwError("error censorship permanent",Logger.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}nn=!!Wt;tn=!!Pt};Logger.setLogLevel=function(Wt){var Pt=an[Wt.toLowerCase()];if(Pt==null){Logger.globalLogger().warn("invalid log level - "+Wt);return}rn=Pt};Logger.from=function(Wt){return new Logger(Wt)};Logger.errors=dn;Logger.levels=cn;return Logger}();Pt.Logger=pn},66809:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="networks/5.7.1"},23044:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.getNetwork=void 0;var tn=en(76127);var nn=en(66809);var an=new tn.Logger(nn.version);function isRenetworkable(Wt){return Wt&&typeof Wt.renetwork==="function"}function ethDefaultProvider(Wt){var func=function(Pt,en){if(en==null){en={}}var tn=[];if(Pt.InfuraProvider&&en.infura!=="-"){try{tn.push(new Pt.InfuraProvider(Wt,en.infura))}catch(Wt){}}if(Pt.EtherscanProvider&&en.etherscan!=="-"){try{tn.push(new Pt.EtherscanProvider(Wt,en.etherscan))}catch(Wt){}}if(Pt.AlchemyProvider&&en.alchemy!=="-"){try{tn.push(new Pt.AlchemyProvider(Wt,en.alchemy))}catch(Wt){}}if(Pt.PocketProvider&&en.pocket!=="-"){var nn=["goerli","ropsten","rinkeby","sepolia"];try{var an=new Pt.PocketProvider(Wt,en.pocket);if(an.network&&nn.indexOf(an.network.name)===-1){tn.push(an)}}catch(Wt){}}if(Pt.CloudflareProvider&&en.cloudflare!=="-"){try{tn.push(new Pt.CloudflareProvider(Wt))}catch(Wt){}}if(Pt.AnkrProvider&&en.ankr!=="-"){try{var nn=["ropsten"];var an=new Pt.AnkrProvider(Wt,en.ankr);if(an.network&&nn.indexOf(an.network.name)===-1){tn.push(an)}}catch(Wt){}}if(tn.length===0){return null}if(Pt.FallbackProvider){var rn=1;if(en.quorum!=null){rn=en.quorum}else if(Wt==="homestead"){rn=2}return new Pt.FallbackProvider(tn,rn)}return tn[0]};func.renetwork=function(Wt){return ethDefaultProvider(Wt)};return func}function etcDefaultProvider(Wt,Pt){var func=function(en,tn){if(en.JsonRpcProvider){return new en.JsonRpcProvider(Wt,Pt)}return null};func.renetwork=function(Pt){return etcDefaultProvider(Wt,Pt)};return func}var rn={chainId:1,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"homestead",_defaultProvider:ethDefaultProvider("homestead")};var In={chainId:3,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"ropsten",_defaultProvider:ethDefaultProvider("ropsten")};var sn={chainId:63,name:"classicMordor",_defaultProvider:etcDefaultProvider("https://www.ethercluster.com/mordor","classicMordor")};var on={unspecified:{chainId:0,name:"unspecified"},homestead:rn,mainnet:rn,morden:{chainId:2,name:"morden"},ropsten:In,testnet:In,rinkeby:{chainId:4,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"rinkeby",_defaultProvider:ethDefaultProvider("rinkeby")},kovan:{chainId:42,name:"kovan",_defaultProvider:ethDefaultProvider("kovan")},goerli:{chainId:5,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"goerli",_defaultProvider:ethDefaultProvider("goerli")},kintsugi:{chainId:1337702,name:"kintsugi"},sepolia:{chainId:11155111,name:"sepolia",_defaultProvider:ethDefaultProvider("sepolia")},classic:{chainId:61,name:"classic",_defaultProvider:etcDefaultProvider("https://www.ethercluster.com/etc","classic")},classicMorden:{chainId:62,name:"classicMorden"},classicMordor:sn,classicTestnet:sn,classicKotti:{chainId:6,name:"classicKotti",_defaultProvider:etcDefaultProvider("https://www.ethercluster.com/kotti","classicKotti")},xdai:{chainId:100,name:"xdai"},matic:{chainId:137,name:"matic",_defaultProvider:ethDefaultProvider("matic")},maticmum:{chainId:80001,name:"maticmum"},optimism:{chainId:10,name:"optimism",_defaultProvider:ethDefaultProvider("optimism")},"optimism-kovan":{chainId:69,name:"optimism-kovan"},"optimism-goerli":{chainId:420,name:"optimism-goerli"},arbitrum:{chainId:42161,name:"arbitrum"},"arbitrum-rinkeby":{chainId:421611,name:"arbitrum-rinkeby"},"arbitrum-goerli":{chainId:421613,name:"arbitrum-goerli"},bnb:{chainId:56,name:"bnb"},bnbt:{chainId:97,name:"bnbt"}};function getNetwork(Wt){if(Wt==null){return null}if(typeof Wt==="number"){for(var Pt in on){var en=on[Pt];if(en.chainId===Wt){return{name:en.name,chainId:en.chainId,ensAddress:en.ensAddress||null,_defaultProvider:en._defaultProvider||null}}}return{chainId:Wt,name:"unknown"}}if(typeof Wt==="string"){var tn=on[Wt];if(tn==null){return null}return{name:tn.name,chainId:tn.chainId,ensAddress:tn.ensAddress,_defaultProvider:tn._defaultProvider||null}}var nn=on[Wt.name];if(!nn){if(typeof Wt.chainId!=="number"){an.throwArgumentError("invalid network chainId","network",Wt)}return Wt}if(Wt.chainId!==0&&Wt.chainId!==nn.chainId){an.throwArgumentError("network chainId mismatch","network",Wt)}var rn=Wt._defaultProvider||null;if(rn==null&&nn._defaultProvider){if(isRenetworkable(nn._defaultProvider)){rn=nn._defaultProvider.renetwork(Wt)}else{rn=nn._defaultProvider}}return{name:Wt.name,chainId:nn.chainId,ensAddress:Wt.ensAddress||nn.ensAddress||null,_defaultProvider:rn}}Pt.getNetwork=getNetwork},15686:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.pbkdf2=void 0;var tn=en(5565);Object.defineProperty(Pt,"pbkdf2",{enumerable:true,get:function(){return tn.pbkdf2}})},5565:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.pbkdf2=void 0;var tn=en(76982);var nn=en(42006);function bufferify(Wt){return Buffer.from((0,nn.arrayify)(Wt))}function pbkdf2(Wt,Pt,en,an,rn){return(0,nn.hexlify)((0,tn.pbkdf2Sync)(bufferify(Wt),bufferify(Pt),en,an,rn))}Pt.pbkdf2=pbkdf2},5511:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="properties/5.7.0"},61338:function(Wt,Pt,en){"use strict";var tn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var nn=this&&this.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="providers/5.7.2"},45372:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.AlchemyProvider=Pt.AlchemyWebSocketProvider=void 0;var nn=en(61338);var an=en(24293);var rn=en(35988);var In=en(76127);var sn=en(25408);var on=new In.Logger(sn.version);var cn=en(56717);var dn="_gg7wSSi0KMBsdKnGVfHDueq6xMB9EkC";var un=function(Wt){tn(AlchemyWebSocketProvider,Wt);function AlchemyWebSocketProvider(Pt,en){var tn=this;var an=new pn(Pt,en);var rn=an.connection.url.replace(/^http/i,"ws").replace(".alchemyapi.",".ws.alchemyapi.");tn=Wt.call(this,rn,an.network)||this;(0,nn.defineReadOnly)(tn,"apiKey",an.apiKey);return tn}AlchemyWebSocketProvider.prototype.isCommunityResource=function(){return this.apiKey===dn};return AlchemyWebSocketProvider}(rn.WebSocketProvider);Pt.AlchemyWebSocketProvider=un;var pn=function(Wt){tn(AlchemyProvider,Wt);function AlchemyProvider(){return Wt!==null&&Wt.apply(this,arguments)||this}AlchemyProvider.getWebSocketProvider=function(Wt,Pt){return new un(Wt,Pt)};AlchemyProvider.getApiKey=function(Wt){if(Wt==null){return dn}if(Wt&&typeof Wt!=="string"){on.throwArgumentError("invalid apiKey","apiKey",Wt)}return Wt};AlchemyProvider.getUrl=function(Wt,Pt){var en=null;switch(Wt.name){case"homestead":en="eth-mainnet.alchemyapi.io/v2/";break;case"goerli":en="eth-goerli.g.alchemy.com/v2/";break;case"matic":en="polygon-mainnet.g.alchemy.com/v2/";break;case"maticmum":en="polygon-mumbai.g.alchemy.com/v2/";break;case"arbitrum":en="arb-mainnet.g.alchemy.com/v2/";break;case"arbitrum-goerli":en="arb-goerli.g.alchemy.com/v2/";break;case"optimism":en="opt-mainnet.g.alchemy.com/v2/";break;case"optimism-goerli":en="opt-goerli.g.alchemy.com/v2/";break;default:on.throwArgumentError("unsupported network","network",arguments[0])}return{allowGzip:true,url:"https:/"+"/"+en+Pt,throttleCallback:function(Wt,en){if(Pt===dn){(0,an.showThrottleMessage)()}return Promise.resolve(true)}}};AlchemyProvider.prototype.isCommunityResource=function(){return this.apiKey===dn};return AlchemyProvider}(cn.UrlJsonRpcProvider);Pt.AlchemyProvider=pn},32319:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.AnkrProvider=void 0;var nn=en(24293);var an=en(56717);var rn=en(76127);var In=en(25408);var sn=new rn.Logger(In.version);var on="9f7d929b018cdffb338517efa06f58359e86ff1ffd350bc889738523659e7972";function getHost(Wt){switch(Wt){case"homestead":return"rpc.ankr.com/eth/";case"ropsten":return"rpc.ankr.com/eth_ropsten/";case"rinkeby":return"rpc.ankr.com/eth_rinkeby/";case"goerli":return"rpc.ankr.com/eth_goerli/";case"matic":return"rpc.ankr.com/polygon/";case"arbitrum":return"rpc.ankr.com/arbitrum/"}return sn.throwArgumentError("unsupported network","name",Wt)}var cn=function(Wt){tn(AnkrProvider,Wt);function AnkrProvider(){return Wt!==null&&Wt.apply(this,arguments)||this}AnkrProvider.prototype.isCommunityResource=function(){return this.apiKey===on};AnkrProvider.getApiKey=function(Wt){if(Wt==null){return on}return Wt};AnkrProvider.getUrl=function(Wt,Pt){if(Pt==null){Pt=on}var en={allowGzip:true,url:"https://"+getHost(Wt.name)+Pt,throttleCallback:function(Wt,en){if(Pt.apiKey===on){(0,nn.showThrottleMessage)()}return Promise.resolve(true)}};if(Pt.projectSecret!=null){en.user="";en.password=Pt.projectSecret}return en};return AnkrProvider}(an.UrlJsonRpcProvider);Pt.AnkrProvider=cn},8090:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();var nn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var an=this&&this.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]0&&Wt[Wt.length-1]==null){Wt.pop()}return Wt.map((function(Wt){if(Array.isArray(Wt)){var Pt={};Wt.forEach((function(Wt){Pt[checkTopic(Wt)]=true}));var en=Object.keys(Pt);en.sort();return en.join("|")}else{return checkTopic(Wt)}})).join("&")}function deserializeTopics(Wt){if(Wt===""){return[]}return Wt.split(/&/g).map((function(Wt){if(Wt===""){return[]}var Pt=Wt.split("|").map((function(Wt){return Wt==="null"?null:Wt}));return Pt.length===1?Pt[0]:Pt}))}function getEventTag(Wt){if(typeof Wt==="string"){Wt=Wt.toLowerCase();if((0,dn.hexDataLength)(Wt)===32){return"tx:"+Wt}if(Wt.indexOf(":")===-1){return Wt}}else if(Array.isArray(Wt)){return"filter:*:"+serializeTopics(Wt)}else if(In.ForkEvent.isForkEvent(Wt)){gn.warn("not implemented");throw new Error("not implemented")}else if(Wt&&typeof Wt==="object"){return"filter:"+(Wt.address||"*")+":"+serializeTopics(Wt.topics||[])}throw new Error("invalid event - "+Wt)}function getTime(){return(new Date).getTime()}function stall(Wt){return new Promise((function(Pt){setTimeout(Pt,Wt)}))}var Yn=["block","network","pending","poll"];var En=function(){function Event(Wt,Pt,en){(0,bn.defineReadOnly)(this,"tag",Wt);(0,bn.defineReadOnly)(this,"listener",Pt);(0,bn.defineReadOnly)(this,"once",en);this._lastBlockNumber=-2;this._inflight=false}Object.defineProperty(Event.prototype,"event",{get:function(){switch(this.type){case"tx":return this.hash;case"filter":return this.filter}return this.tag},enumerable:false,configurable:true});Object.defineProperty(Event.prototype,"type",{get:function(){return this.tag.split(":")[0]},enumerable:false,configurable:true});Object.defineProperty(Event.prototype,"hash",{get:function(){var Wt=this.tag.split(":");if(Wt[0]!=="tx"){return null}return Wt[1]},enumerable:false,configurable:true});Object.defineProperty(Event.prototype,"filter",{get:function(){var Wt=this.tag.split(":");if(Wt[0]!=="filter"){return null}var Pt=Wt[1];var en=deserializeTopics(Wt[2]);var tn={};if(en.length>0){tn.topics=en}if(Pt&&Pt!=="*"){tn.address=Pt}return tn},enumerable:false,configurable:true});Event.prototype.pollable=function(){return this.tag.indexOf(":")>=0||Yn.indexOf(this.tag)>=0};return Event}();Pt.Event=En;var Vn={0:{symbol:"btc",p2pkh:0,p2sh:5,prefix:"bc"},2:{symbol:"ltc",p2pkh:48,p2sh:50,prefix:"ltc"},3:{symbol:"doge",p2pkh:30,p2sh:22},60:{symbol:"eth",ilk:"eth"},61:{symbol:"etc",ilk:"eth"},700:{symbol:"xdai",ilk:"eth"}};function bytes32ify(Wt){return(0,dn.hexZeroPad)(cn.BigNumber.from(Wt).toHexString(),32)}function base58Encode(Wt){return on.Base58.encode((0,dn.concat)([Wt,(0,dn.hexDataSlice)((0,Gn.sha256)((0,Gn.sha256)(Wt)),0,4)]))}var Rn=new RegExp("^(ipfs)://(.*)$","i");var wn=[new RegExp("^(https)://(.*)$","i"),new RegExp("^(data):(.*)$","i"),Rn,new RegExp("^eip155:[0-9]+/(erc[0-9]+):(.*)$","i")];function _parseString(Wt,Pt){try{return(0,hn.toUtf8String)(_parseBytes(Wt,Pt))}catch(Wt){}return null}function _parseBytes(Wt,Pt){if(Wt==="0x"){return null}var en=cn.BigNumber.from((0,dn.hexDataSlice)(Wt,Pt,Pt+32)).toNumber();var tn=cn.BigNumber.from((0,dn.hexDataSlice)(Wt,en,en+32)).toNumber();return(0,dn.hexDataSlice)(Wt,en+32,en+32+tn)}function getIpfsLink(Wt){if(Wt.match(/^ipfs:\/\/ipfs\//i)){Wt=Wt.substring(12)}else if(Wt.match(/^ipfs:\/\//i)){Wt=Wt.substring(7)}else{gn.throwArgumentError("unsupported IPFS format","link",Wt)}return"https://gateway.ipfs.io/ipfs/"+Wt}function numPad(Wt){var Pt=(0,dn.arrayify)(Wt);if(Pt.length>32){throw new Error("internal; should not happen")}var en=new Uint8Array(32);en.set(Pt,32-Pt.length);return en}function bytesPad(Wt){if(Wt.length%32===0){return Wt}var Pt=new Uint8Array(Math.ceil(Wt.length/32)*32);Pt.set(Wt);return Pt}function encodeBytes(Wt){var Pt=[];var en=0;for(var tn=0;tn=1&&an<=75){return base58Encode((0,dn.concat)([[en.p2pkh],"0x"+nn[2]]))}}}if(en.p2sh!=null){var rn=Pt.match(/^0xa9([0-9a-f][0-9a-f])([0-9a-f]*)87$/);if(rn){var In=parseInt(rn[1],16);if(rn[2].length===In*2&&In>=1&&In<=75){return base58Encode((0,dn.concat)([[en.p2sh],"0x"+rn[2]]))}}}if(en.prefix!=null){var sn=tn[1];var on=tn[0];if(on===0){if(sn!==20&&sn!==32){on=-1}}else{on=-1}if(on>=0&&tn.length===2+sn&&sn>=1&&sn<=75){var cn=An.default.toWords(tn.slice(2));cn.unshift(on);return An.default.encode(en.prefix,cn)}}return null};Resolver.prototype.getAddress=function(Wt){return nn(this,void 0,void 0,(function(){var Pt,en,tn,nn;return an(this,(function(an){switch(an.label){case 0:if(Wt==null){Wt=60}if(!(Wt===60))return[3,4];an.label=1;case 1:an.trys.push([1,3,,4]);return[4,this._fetch("0x3b3b57de")];case 2:Pt=an.sent();if(Pt==="0x"||Pt===un.HashZero){return[2,null]}return[2,this.provider.formatter.callAddress(Pt)];case 3:en=an.sent();if(en.code===Wn.Logger.errors.CALL_EXCEPTION){return[2,null]}throw en;case 4:return[4,this._fetchBytes("0xf1cb7e06",bytes32ify(Wt))];case 5:tn=an.sent();if(tn==null||tn==="0x"){return[2,null]}nn=this._getAddress(Wt,tn);if(nn==null){gn.throwError("invalid or unsupported coin data",Wn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"getAddress("+Wt+")",coinType:Wt,data:tn})}return[2,nn]}}))}))};Resolver.prototype.getAvatar=function(){return nn(this,void 0,void 0,(function(){var Wt,Pt,en,tn,nn,rn,In,sn,on,un,pn,mn,bn,Gn,hn,An,Wn,Nn,gn,yn,vn,Yn,En,Vn,Fn;return an(this,(function(an){switch(an.label){case 0:Wt=[{type:"name",content:this.name}];an.label=1;case 1:an.trys.push([1,19,,20]);return[4,this.getText("avatar")];case 2:Pt=an.sent();if(Pt==null){return[2,null]}en=0;an.label=3;case 3:if(!(en=0?null:JSON.stringify({data:nn,sender:tn});return[4,(0,Zn.fetchJson)({url:on,errorPassThrough:true},cn,(function(Wt,Pt){Wt.status=Pt.statusCode;return Wt}))];case 2:dn=an.sent();if(dn.data){return[2,dn.data]}un=dn.message||"unknown error";if(dn.status>=400&&dn.status<500){return[2,gn.throwError("response not found during CCIP fetch: "+un,Wn.Logger.errors.SERVER_ERROR,{url:sn,errorMessage:un})]}rn.push(un);an.label=3;case 3:In++;return[3,1];case 4:return[2,gn.throwError("error encountered during CCIP fetch: "+rn.map((function(Wt){return JSON.stringify(Wt)})).join(", "),Wn.Logger.errors.SERVER_ERROR,{urls:en,errorMessages:rn})]}}))}))};BaseProvider.prototype._getInternalBlockNumber=function(Wt){return nn(this,void 0,void 0,(function(){var Pt,en,tn,nn,rn;var In=this;return an(this,(function(an){switch(an.label){case 0:return[4,this._ready()];case 1:an.sent();if(!(Wt>0))return[3,7];an.label=2;case 2:if(!this._internalBlockNumber)return[3,7];Pt=this._internalBlockNumber;an.label=3;case 3:an.trys.push([3,5,,6]);return[4,Pt];case 4:en=an.sent();if(getTime()-en.respTime<=Wt){return[2,en.blockNumber]}return[3,7];case 5:tn=an.sent();if(this._internalBlockNumber===Pt){return[3,7]}return[3,6];case 6:return[3,2];case 7:nn=getTime();rn=(0,bn.resolveProperties)({blockNumber:this.perform("getBlockNumber",{}),networkError:this.getNetwork().then((function(Wt){return null}),(function(Wt){return Wt}))}).then((function(Wt){var Pt=Wt.blockNumber,en=Wt.networkError;if(en){if(In._internalBlockNumber===rn){In._internalBlockNumber=null}throw en}var tn=getTime();Pt=cn.BigNumber.from(Pt).toNumber();if(Pt1e3){gn.warn("network block skew detected; skipping block events (emitted="+this._emitted.block+" blockNumber"+en+")");this.emit("error",gn.makeError("network block skew detected",Wn.Logger.errors.NETWORK_ERROR,{blockNumber:en,event:"blockSkew",previousBlockNumber:this._emitted.block}));this.emit("block",en)}else{for(nn=this._emitted.block+1;nn<=en;nn++){this.emit("block",nn)}}if(this._emitted.block!==en){this._emitted.block=en;Object.keys(this._emitted).forEach((function(Wt){if(Wt==="block"){return}var Pt=rn._emitted[Wt];if(Pt==="pending"){return}if(en-Pt>12){delete rn._emitted[Wt]}}))}if(this._lastBlockNumber===-2){this._lastBlockNumber=en-1}this._events.forEach((function(Wt){switch(Wt.type){case"tx":{var tn=Wt.hash;var nn=rn.getTransactionReceipt(tn).then((function(Wt){if(!Wt||Wt.blockNumber==null){return null}rn._emitted["t:"+tn]=Wt.blockNumber;rn.emit(tn,Wt);return null})).catch((function(Wt){rn.emit("error",Wt)}));Pt.push(nn);break}case"filter":{if(!Wt._inflight){Wt._inflight=true;if(Wt._lastBlockNumber===-2){Wt._lastBlockNumber=en-1}var an=Wt.filter;an.fromBlock=Wt._lastBlockNumber+1;an.toBlock=en;var In=an.toBlock-rn._maxFilterBlockRange;if(In>an.fromBlock){an.fromBlock=In}if(an.fromBlock<0){an.fromBlock=0}var nn=rn.getLogs(an).then((function(Pt){Wt._inflight=false;if(Pt.length===0){return}Pt.forEach((function(Pt){if(Pt.blockNumber>Wt._lastBlockNumber){Wt._lastBlockNumber=Pt.blockNumber}rn._emitted["b:"+Pt.blockHash]=Pt.blockNumber;rn._emitted["t:"+Pt.transactionHash]=Pt.blockNumber;rn.emit(an,Pt)}))})).catch((function(Pt){rn.emit("error",Pt);Wt._inflight=false}));Pt.push(nn)}break}}}));this._lastBlockNumber=en;Promise.all(Pt).then((function(){rn.emit("didPoll",Wt)})).catch((function(Wt){rn.emit("error",Wt)}));return[2]}}))}))};BaseProvider.prototype.resetEventsBlock=function(Wt){this._lastBlockNumber=Wt-1;if(this.polling){this.poll()}};Object.defineProperty(BaseProvider.prototype,"network",{get:function(){return this._network},enumerable:false,configurable:true});BaseProvider.prototype.detectNetwork=function(){return nn(this,void 0,void 0,(function(){return an(this,(function(Wt){return[2,gn.throwError("provider does not support network detection",Wn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"provider.detectNetwork"})]}))}))};BaseProvider.prototype.getNetwork=function(){return nn(this,void 0,void 0,(function(){var Wt,Pt,en;return an(this,(function(tn){switch(tn.label){case 0:return[4,this._ready()];case 1:Wt=tn.sent();return[4,this.detectNetwork()];case 2:Pt=tn.sent();if(!(Wt.chainId!==Pt.chainId))return[3,5];if(!this.anyNetwork)return[3,4];this._network=Pt;this._lastBlockNumber=-2;this._fastBlockNumber=null;this._fastBlockNumberPromise=null;this._fastQueryDate=0;this._emitted.block=-2;this._maxInternalBlockNumber=-1024;this._internalBlockNumber=null;this.emit("network",Pt,Wt);return[4,stall(0)];case 3:tn.sent();return[2,this._network];case 4:en=gn.makeError("underlying network changed",Wn.Logger.errors.NETWORK_ERROR,{event:"changed",network:Wt,detectedNetwork:Pt});this.emit("error",en);throw en;case 5:return[2,Wt]}}))}))};Object.defineProperty(BaseProvider.prototype,"blockNumber",{get:function(){var Wt=this;this._getInternalBlockNumber(100+this.pollingInterval/2).then((function(Pt){Wt._setFastBlockNumber(Pt)}),(function(Wt){}));return this._fastBlockNumber!=null?this._fastBlockNumber:-1},enumerable:false,configurable:true});Object.defineProperty(BaseProvider.prototype,"polling",{get:function(){return this._poller!=null},set:function(Wt){var Pt=this;if(Wt&&!this._poller){this._poller=setInterval((function(){Pt.poll()}),this.pollingInterval);if(!this._bootstrapPoll){this._bootstrapPoll=setTimeout((function(){Pt.poll();Pt._bootstrapPoll=setTimeout((function(){if(!Pt._poller){Pt.poll()}Pt._bootstrapPoll=null}),Pt.pollingInterval)}),0)}}else if(!Wt&&this._poller){clearInterval(this._poller);this._poller=null}},enumerable:false,configurable:true});Object.defineProperty(BaseProvider.prototype,"pollingInterval",{get:function(){return this._pollingInterval},set:function(Wt){var Pt=this;if(typeof Wt!=="number"||Wt<=0||parseInt(String(Wt))!=Wt){throw new Error("invalid polling interval")}this._pollingInterval=Wt;if(this._poller){clearInterval(this._poller);this._poller=setInterval((function(){Pt.poll()}),this._pollingInterval)}},enumerable:false,configurable:true});BaseProvider.prototype._getFastBlockNumber=function(){var Wt=this;var Pt=getTime();if(Pt-this._fastQueryDate>2*this._pollingInterval){this._fastQueryDate=Pt;this._fastBlockNumberPromise=this.getBlockNumber().then((function(Pt){if(Wt._fastBlockNumber==null||Pt>Wt._fastBlockNumber){Wt._fastBlockNumber=Pt}return Wt._fastBlockNumber}))}return this._fastBlockNumberPromise};BaseProvider.prototype._setFastBlockNumber=function(Wt){if(this._fastBlockNumber!=null&&Wtthis._fastBlockNumber){this._fastBlockNumber=Wt;this._fastBlockNumberPromise=Promise.resolve(Wt)}};BaseProvider.prototype.waitForTransaction=function(Wt,Pt,en){return nn(this,void 0,void 0,(function(){return an(this,(function(tn){return[2,this._waitForTransaction(Wt,Pt==null?1:Pt,en||0,null)]}))}))};BaseProvider.prototype._waitForTransaction=function(Wt,Pt,en,tn){return nn(this,void 0,void 0,(function(){var rn;var In=this;return an(this,(function(sn){switch(sn.label){case 0:return[4,this.getTransactionReceipt(Wt)];case 1:rn=sn.sent();if((rn?rn.confirmations:0)>=Pt){return[2,rn]}return[2,new Promise((function(rn,sn){var on=[];var cn=false;var alreadyDone=function(){if(cn){return true}cn=true;on.forEach((function(Wt){Wt()}));return false};var minedHandler=function(Wt){if(Wt.confirmations0){var pn=setTimeout((function(){if(alreadyDone()){return}sn(gn.makeError("timeout exceeded",Wn.Logger.errors.TIMEOUT,{timeout:en}))}),en);if(pn.unref){pn.unref()}on.push((function(){clearTimeout(pn)}))}}))]}}))}))};BaseProvider.prototype.getBlockNumber=function(){return nn(this,void 0,void 0,(function(){return an(this,(function(Wt){return[2,this._getInternalBlockNumber(0)]}))}))};BaseProvider.prototype.getGasPrice=function(){return nn(this,void 0,void 0,(function(){var Wt;return an(this,(function(Pt){switch(Pt.label){case 0:return[4,this.getNetwork()];case 1:Pt.sent();return[4,this.perform("getGasPrice",{})];case 2:Wt=Pt.sent();try{return[2,cn.BigNumber.from(Wt)]}catch(Pt){return[2,gn.throwError("bad result from backend",Wn.Logger.errors.SERVER_ERROR,{method:"getGasPrice",result:Wt,error:Pt})]}return[2]}}))}))};BaseProvider.prototype.getBalance=function(Wt,Pt){return nn(this,void 0,void 0,(function(){var en,tn;return an(this,(function(nn){switch(nn.label){case 0:return[4,this.getNetwork()];case 1:nn.sent();return[4,(0,bn.resolveProperties)({address:this._getAddress(Wt),blockTag:this._getBlockTag(Pt)})];case 2:en=nn.sent();return[4,this.perform("getBalance",en)];case 3:tn=nn.sent();try{return[2,cn.BigNumber.from(tn)]}catch(Wt){return[2,gn.throwError("bad result from backend",Wn.Logger.errors.SERVER_ERROR,{method:"getBalance",params:en,result:tn,error:Wt})]}return[2]}}))}))};BaseProvider.prototype.getTransactionCount=function(Wt,Pt){return nn(this,void 0,void 0,(function(){var en,tn;return an(this,(function(nn){switch(nn.label){case 0:return[4,this.getNetwork()];case 1:nn.sent();return[4,(0,bn.resolveProperties)({address:this._getAddress(Wt),blockTag:this._getBlockTag(Pt)})];case 2:en=nn.sent();return[4,this.perform("getTransactionCount",en)];case 3:tn=nn.sent();try{return[2,cn.BigNumber.from(tn).toNumber()]}catch(Wt){return[2,gn.throwError("bad result from backend",Wn.Logger.errors.SERVER_ERROR,{method:"getTransactionCount",params:en,result:tn,error:Wt})]}return[2]}}))}))};BaseProvider.prototype.getCode=function(Wt,Pt){return nn(this,void 0,void 0,(function(){var en,tn;return an(this,(function(nn){switch(nn.label){case 0:return[4,this.getNetwork()];case 1:nn.sent();return[4,(0,bn.resolveProperties)({address:this._getAddress(Wt),blockTag:this._getBlockTag(Pt)})];case 2:en=nn.sent();return[4,this.perform("getCode",en)];case 3:tn=nn.sent();try{return[2,(0,dn.hexlify)(tn)]}catch(Wt){return[2,gn.throwError("bad result from backend",Wn.Logger.errors.SERVER_ERROR,{method:"getCode",params:en,result:tn,error:Wt})]}return[2]}}))}))};BaseProvider.prototype.getStorageAt=function(Wt,Pt,en){return nn(this,void 0,void 0,(function(){var tn,nn;return an(this,(function(an){switch(an.label){case 0:return[4,this.getNetwork()];case 1:an.sent();return[4,(0,bn.resolveProperties)({address:this._getAddress(Wt),blockTag:this._getBlockTag(en),position:Promise.resolve(Pt).then((function(Wt){return(0,dn.hexValue)(Wt)}))})];case 2:tn=an.sent();return[4,this.perform("getStorageAt",tn)];case 3:nn=an.sent();try{return[2,(0,dn.hexlify)(nn)]}catch(Wt){return[2,gn.throwError("bad result from backend",Wn.Logger.errors.SERVER_ERROR,{method:"getStorageAt",params:tn,result:nn,error:Wt})]}return[2]}}))}))};BaseProvider.prototype._wrapTransaction=function(Wt,Pt,en){var tn=this;if(Pt!=null&&(0,dn.hexDataLength)(Pt)!==32){throw new Error("invalid response - sendTransaction")}var rn=Wt;if(Pt!=null&&Wt.hash!==Pt){gn.throwError("Transaction hash mismatch from Provider.sendTransaction.",Wn.Logger.errors.UNKNOWN_ERROR,{expectedHash:Wt.hash,returnedHash:Pt})}rn.wait=function(Pt,rn){return nn(tn,void 0,void 0,(function(){var tn,nn;return an(this,(function(an){switch(an.label){case 0:if(Pt==null){Pt=1}if(rn==null){rn=0}tn=undefined;if(Pt!==0&&en!=null){tn={data:Wt.data,from:Wt.from,nonce:Wt.nonce,to:Wt.to,value:Wt.value,startBlock:en}}return[4,this._waitForTransaction(Wt.hash,Pt,rn,tn)];case 1:nn=an.sent();if(nn==null&&Pt===0){return[2,null]}this._emitted["t:"+Wt.hash]=nn.blockNumber;if(nn.status===0){gn.throwError("transaction failed",Wn.Logger.errors.CALL_EXCEPTION,{transactionHash:Wt.hash,transaction:Wt,receipt:nn})}return[2,nn]}}))}))};return rn};BaseProvider.prototype.sendTransaction=function(Wt){return nn(this,void 0,void 0,(function(){var Pt,en,tn,nn,rn;return an(this,(function(an){switch(an.label){case 0:return[4,this.getNetwork()];case 1:an.sent();return[4,Promise.resolve(Wt).then((function(Wt){return(0,dn.hexlify)(Wt)}))];case 2:Pt=an.sent();en=this.formatter.transaction(Wt);if(en.confirmations==null){en.confirmations=0}return[4,this._getInternalBlockNumber(100+2*this.pollingInterval)];case 3:tn=an.sent();an.label=4;case 4:an.trys.push([4,6,,7]);return[4,this.perform("sendTransaction",{signedTransaction:Pt})];case 5:nn=an.sent();return[2,this._wrapTransaction(en,nn,tn)];case 6:rn=an.sent();rn.transaction=en;rn.transactionHash=en.hash;throw rn;case 7:return[2]}}))}))};BaseProvider.prototype._getTransactionRequest=function(Wt){return nn(this,void 0,void 0,(function(){var Pt,en,tn,nn;var rn=this;return an(this,(function(an){switch(an.label){case 0:return[4,Wt];case 1:Pt=an.sent();en={};["from","to"].forEach((function(Wt){if(Pt[Wt]==null){return}en[Wt]=Promise.resolve(Pt[Wt]).then((function(Wt){return Wt?rn._getAddress(Wt):null}))}));["gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","value"].forEach((function(Wt){if(Pt[Wt]==null){return}en[Wt]=Promise.resolve(Pt[Wt]).then((function(Wt){return Wt?cn.BigNumber.from(Wt):null}))}));["type"].forEach((function(Wt){if(Pt[Wt]==null){return}en[Wt]=Promise.resolve(Pt[Wt]).then((function(Wt){return Wt!=null?Wt:null}))}));if(Pt.accessList){en.accessList=this.formatter.accessList(Pt.accessList)}["data"].forEach((function(Wt){if(Pt[Wt]==null){return}en[Wt]=Promise.resolve(Pt[Wt]).then((function(Wt){return Wt?(0,dn.hexlify)(Wt):null}))}));nn=(tn=this.formatter).transactionRequest;return[4,(0,bn.resolveProperties)(en)];case 2:return[2,nn.apply(tn,[an.sent()])]}}))}))};BaseProvider.prototype._getFilter=function(Wt){return nn(this,void 0,void 0,(function(){var Pt,en,tn;var nn=this;return an(this,(function(an){switch(an.label){case 0:return[4,Wt];case 1:Wt=an.sent();Pt={};if(Wt.address!=null){Pt.address=this._getAddress(Wt.address)}["blockHash","topics"].forEach((function(en){if(Wt[en]==null){return}Pt[en]=Wt[en]}));["fromBlock","toBlock"].forEach((function(en){if(Wt[en]==null){return}Pt[en]=nn._getBlockTag(Wt[en])}));tn=(en=this.formatter).filter;return[4,(0,bn.resolveProperties)(Pt)];case 2:return[2,tn.apply(en,[an.sent()])]}}))}))};BaseProvider.prototype._call=function(Wt,Pt,en){return nn(this,void 0,void 0,(function(){var tn,nn,rn,In,sn,on,un,pn,mn,bn,Gn,hn,Zn,An,Nn,yn;return an(this,(function(an){switch(an.label){case 0:if(en>=vn){gn.throwError("CCIP read exceeded maximum redirections",Wn.Logger.errors.SERVER_ERROR,{redirects:en,transaction:Wt})}tn=Wt.to;return[4,this.perform("call",{transaction:Wt,blockTag:Pt})];case 1:nn=an.sent();if(!(en>=0&&Pt==="latest"&&tn!=null&&nn.substring(0,10)==="0x556f1830"&&(0,dn.hexDataLength)(nn)%32===4))return[3,5];an.label=2;case 2:an.trys.push([2,4,,5]);rn=(0,dn.hexDataSlice)(nn,4);In=(0,dn.hexDataSlice)(rn,0,32);if(!cn.BigNumber.from(In).eq(tn)){gn.throwError("CCIP Read sender did not match",Wn.Logger.errors.CALL_EXCEPTION,{name:"OffchainLookup",signature:"OffchainLookup(address,string[],bytes,bytes4,bytes)",transaction:Wt,data:nn})}sn=[];on=cn.BigNumber.from((0,dn.hexDataSlice)(rn,32,64)).toNumber();un=cn.BigNumber.from((0,dn.hexDataSlice)(rn,on,on+32)).toNumber();pn=(0,dn.hexDataSlice)(rn,on+32);for(mn=0;mnthis._emitted.block){return[2,null]}}return[2,undefined]}if(!Pt)return[3,8];nn=null;rn=0;an.label=2;case 2:if(!(rn0};BaseProvider.prototype._stopEvent=function(Wt){this.polling=this._events.filter((function(Wt){return Wt.pollable()})).length>0};BaseProvider.prototype._addEventListener=function(Wt,Pt,en){var tn=new En(getEventTag(Wt),Pt,en);this._events.push(tn);this._startEvent(tn);return this};BaseProvider.prototype.on=function(Wt,Pt){return this._addEventListener(Wt,Pt,false)};BaseProvider.prototype.once=function(Wt,Pt){return this._addEventListener(Wt,Pt,true)};BaseProvider.prototype.emit=function(Wt){var Pt=this;var en=[];for(var tn=1;tn0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]=0){Pt.throttleRetry=true}throw Pt}return Wt.result}function getJsonResult(Wt){if(Wt&&Wt.status==0&&Wt.message=="NOTOK"&&(Wt.result||"").toLowerCase().indexOf("rate limit")>=0){var Pt=new Error("throttled response");Pt.result=JSON.stringify(Wt);Pt.throttleRetry=true;throw Pt}if(Wt.jsonrpc!="2.0"){var Pt=new Error("invalid response");Pt.result=JSON.stringify(Wt);throw Pt}if(Wt.error){var Pt=new Error(Wt.error.message||"unknown error");if(Wt.error.code){Pt.code=Wt.error.code}if(Wt.error.data){Pt.data=Wt.error.data}throw Pt}return Wt.result}function checkLogTag(Wt){if(Wt==="pending"){throw new Error("pending not supported")}if(Wt==="latest"){return Wt}return parseInt(Wt.substring(2),16)}function checkError(Wt,Pt,en){if(Wt==="call"&&Pt.code===dn.Logger.errors.SERVER_ERROR){var tn=Pt.error;if(tn&&(tn.message.match(/reverted/i)||tn.message.match(/VM execution error/i))){var nn=tn.data;if(nn){nn="0x"+nn.replace(/^.*0x/i,"")}if((0,rn.isHexString)(nn)){return nn}pn.throwError("missing revert data in call exception",dn.Logger.errors.CALL_EXCEPTION,{error:Pt,data:"0x"})}}var an=Pt.message;if(Pt.code===dn.Logger.errors.SERVER_ERROR){if(Pt.error&&typeof Pt.error.message==="string"){an=Pt.error.message}else if(typeof Pt.body==="string"){an=Pt.body}else if(typeof Pt.responseText==="string"){an=Pt.responseText}}an=(an||"").toLowerCase();if(an.match(/insufficient funds/)){pn.throwError("insufficient funds for intrinsic transaction cost",dn.Logger.errors.INSUFFICIENT_FUNDS,{error:Pt,method:Wt,transaction:en})}if(an.match(/same hash was already imported|transaction nonce is too low|nonce too low/)){pn.throwError("nonce has already been used",dn.Logger.errors.NONCE_EXPIRED,{error:Pt,method:Wt,transaction:en})}if(an.match(/another transaction with same nonce/)){pn.throwError("replacement fee too low",dn.Logger.errors.REPLACEMENT_UNDERPRICED,{error:Pt,method:Wt,transaction:en})}if(an.match(/execution failed due to an exception|execution reverted/)){pn.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",dn.Logger.errors.UNPREDICTABLE_GAS_LIMIT,{error:Pt,method:Wt,transaction:en})}throw Pt}var bn=function(Wt){tn(EtherscanProvider,Wt);function EtherscanProvider(Pt,en){var tn=Wt.call(this,Pt)||this;(0,In.defineReadOnly)(tn,"baseUrl",tn.getBaseUrl());(0,In.defineReadOnly)(tn,"apiKey",en||null);return tn}EtherscanProvider.prototype.getBaseUrl=function(){switch(this.network?this.network.name:"invalid"){case"homestead":return"https://api.etherscan.io";case"goerli":return"https://api-goerli.etherscan.io";case"sepolia":return"https://api-sepolia.etherscan.io";case"matic":return"https://api.polygonscan.com";case"maticmum":return"https://api-testnet.polygonscan.com";case"arbitrum":return"https://api.arbiscan.io";case"arbitrum-goerli":return"https://api-goerli.arbiscan.io";case"optimism":return"https://api-optimistic.etherscan.io";case"optimism-goerli":return"https://api-goerli-optimistic.etherscan.io";default:}return pn.throwArgumentError("unsupported network","network",this.network.name)};EtherscanProvider.prototype.getUrl=function(Wt,Pt){var en=Object.keys(Pt).reduce((function(Wt,en){var tn=Pt[en];if(tn!=null){Wt+="&"+en+"="+tn}return Wt}),"");var tn=this.apiKey?"&apikey="+this.apiKey:"";return this.baseUrl+"/api?module="+Wt+en+tn};EtherscanProvider.prototype.getPostUrl=function(){return this.baseUrl+"/api"};EtherscanProvider.prototype.getPostData=function(Wt,Pt){Pt.module=Wt;Pt.apikey=this.apiKey;return Pt};EtherscanProvider.prototype.fetch=function(Wt,Pt,en){return nn(this,void 0,void 0,(function(){var tn,nn,rn,sn,dn,un;var pn=this;return an(this,(function(an){switch(an.label){case 0:tn=en?this.getPostUrl():this.getUrl(Wt,Pt);nn=en?this.getPostData(Wt,Pt):null;rn=Wt==="proxy"?getJsonResult:getResult;this.emit("debug",{action:"request",request:tn,provider:this});sn={url:tn,throttleSlotInterval:1e3,throttleCallback:function(Wt,Pt){if(pn.isCommunityResource()){(0,cn.showThrottleMessage)()}return Promise.resolve(true)}};dn=null;if(nn){sn.headers={"content-type":"application/x-www-form-urlencoded; charset=UTF-8"};dn=Object.keys(nn).map((function(Wt){return Wt+"="+nn[Wt]})).join("&")}return[4,(0,on.fetchJson)(sn,dn,rn||getJsonResult)];case 1:un=an.sent();this.emit("debug",{action:"response",request:tn,response:(0,In.deepCopy)(un),provider:this});return[2,un]}}))}))};EtherscanProvider.prototype.detectNetwork=function(){return nn(this,void 0,void 0,(function(){return an(this,(function(Wt){return[2,this.network]}))}))};EtherscanProvider.prototype.perform=function(Pt,en){return nn(this,void 0,void 0,(function(){var tn,nn,rn,nn,In,sn,on,cn,un,mn,bn,Gn,hn;return an(this,(function(an){switch(an.label){case 0:tn=Pt;switch(tn){case"getBlockNumber":return[3,1];case"getGasPrice":return[3,2];case"getBalance":return[3,3];case"getTransactionCount":return[3,4];case"getCode":return[3,5];case"getStorageAt":return[3,6];case"sendTransaction":return[3,7];case"getBlock":return[3,8];case"getTransaction":return[3,9];case"getTransactionReceipt":return[3,10];case"call":return[3,11];case"estimateGas":return[3,15];case"getLogs":return[3,19];case"getEtherPrice":return[3,26]}return[3,28];case 1:return[2,this.fetch("proxy",{action:"eth_blockNumber"})];case 2:return[2,this.fetch("proxy",{action:"eth_gasPrice"})];case 3:return[2,this.fetch("account",{action:"balance",address:en.address,tag:en.blockTag})];case 4:return[2,this.fetch("proxy",{action:"eth_getTransactionCount",address:en.address,tag:en.blockTag})];case 5:return[2,this.fetch("proxy",{action:"eth_getCode",address:en.address,tag:en.blockTag})];case 6:return[2,this.fetch("proxy",{action:"eth_getStorageAt",address:en.address,position:en.position,tag:en.blockTag})];case 7:return[2,this.fetch("proxy",{action:"eth_sendRawTransaction",hex:en.signedTransaction},true).catch((function(Wt){return checkError("sendTransaction",Wt,en.signedTransaction)}))];case 8:if(en.blockTag){return[2,this.fetch("proxy",{action:"eth_getBlockByNumber",tag:en.blockTag,boolean:en.includeTransactions?"true":"false"})]}throw new Error("getBlock by blockHash not implemented");case 9:return[2,this.fetch("proxy",{action:"eth_getTransactionByHash",txhash:en.transactionHash})];case 10:return[2,this.fetch("proxy",{action:"eth_getTransactionReceipt",txhash:en.transactionHash})];case 11:if(en.blockTag!=="latest"){throw new Error("EtherscanProvider does not support blockTag for call")}nn=getTransactionPostData(en.transaction);nn.module="proxy";nn.action="eth_call";an.label=12;case 12:an.trys.push([12,14,,15]);return[4,this.fetch("proxy",nn,true)];case 13:return[2,an.sent()];case 14:rn=an.sent();return[2,checkError("call",rn,en.transaction)];case 15:nn=getTransactionPostData(en.transaction);nn.module="proxy";nn.action="eth_estimateGas";an.label=16;case 16:an.trys.push([16,18,,19]);return[4,this.fetch("proxy",nn,true)];case 17:return[2,an.sent()];case 18:In=an.sent();return[2,checkError("estimateGas",In,en.transaction)];case 19:sn={action:"getLogs"};if(en.filter.fromBlock){sn.fromBlock=checkLogTag(en.filter.fromBlock)}if(en.filter.toBlock){sn.toBlock=checkLogTag(en.filter.toBlock)}if(en.filter.address){sn.address=en.filter.address}if(en.filter.topics&&en.filter.topics.length>0){if(en.filter.topics.length>1){pn.throwError("unsupported topic count",dn.Logger.errors.UNSUPPORTED_OPERATION,{topics:en.filter.topics})}if(en.filter.topics.length===1){on=en.filter.topics[0];if(typeof on!=="string"||on.length!==66){pn.throwError("unsupported topic format",dn.Logger.errors.UNSUPPORTED_OPERATION,{topic0:on})}sn.topic0=on}}return[4,this.fetch("logs",sn)];case 20:cn=an.sent();un={};mn=0;an.label=21;case 21:if(!(mn0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]Pt){return null}return(tn+nn)/2}function serialize(Wt){if(Wt===null){return"null"}else if(typeof Wt==="number"||typeof Wt==="boolean"){return JSON.stringify(Wt)}else if(typeof Wt==="string"){return Wt}else if(In.BigNumber.isBigNumber(Wt)){return Wt.toString()}else if(Array.isArray(Wt)){return JSON.stringify(Wt.map((function(Wt){return serialize(Wt)})))}else if(typeof Wt==="object"){var Pt=Object.keys(Wt);Pt.sort();return"{"+Pt.map((function(Pt){var en=Wt[Pt];if(typeof en==="function"){en="[function]"}else{en=serialize(en)}return JSON.stringify(Pt)+":"+en})).join(",")+"}"}throw new Error("unknown value type: "+typeof Wt)}var hn=1;function stall(Wt){var Pt=null;var en=null;var tn=new Promise((function(tn){Pt=function(){if(en){clearTimeout(en);en=null}tn()};en=setTimeout(Pt,Wt)}));var wait=function(Wt){tn=tn.then(Wt);return tn};function getPromise(){return tn}return{cancel:Pt,getPromise:getPromise,wait:wait}}var Zn=[mn.Logger.errors.CALL_EXCEPTION,mn.Logger.errors.INSUFFICIENT_FUNDS,mn.Logger.errors.NONCE_EXPIRED,mn.Logger.errors.REPLACEMENT_UNDERPRICED,mn.Logger.errors.UNPREDICTABLE_GAS_LIMIT];var An=["address","args","errorArgs","errorSignature","method","transaction"];function exposeDebugConfig(Wt,Pt){var en={weight:Wt.weight};Object.defineProperty(en,"provider",{get:function(){return Wt.provider}});if(Wt.start){en.start=Wt.start}if(Pt){en.duration=Pt-Wt.start}if(Wt.done){if(Wt.error){en.error=Wt.error}else{en.result=Wt.result||null}}return en}function normalizedTally(Wt,Pt){return function(en){var tn={};en.forEach((function(Pt){var en=Wt(Pt.result);if(!tn[en]){tn[en]={count:0,result:Pt.result}}tn[en].count++}));var nn=Object.keys(tn);for(var an=0;an=Pt){return rn.result}}return undefined}}function getProcessFunc(Wt,Pt,en){var tn=serialize;switch(Pt){case"getBlockNumber":return function(Pt){var en=Pt.map((function(Wt){return Wt.result}));var tn=median(Pt.map((function(Wt){return Wt.result})),2);if(tn==null){return undefined}tn=Math.ceil(tn);if(en.indexOf(tn+1)>=0){tn++}if(tn>=Wt._highestBlockNumber){Wt._highestBlockNumber=tn}return Wt._highestBlockNumber};case"getGasPrice":return function(Wt){var Pt=Wt.map((function(Wt){return Wt.result}));Pt.sort();return Pt[Math.floor(Pt.length/2)]};case"getEtherPrice":return function(Wt){return median(Wt.map((function(Wt){return Wt.result})))};case"getBalance":case"getTransactionCount":case"getCode":case"getStorageAt":case"call":case"estimateGas":case"getLogs":break;case"getTransaction":case"getTransactionReceipt":tn=function(Wt){if(Wt==null){return null}Wt=(0,on.shallowCopy)(Wt);Wt.confirmations=-1;return serialize(Wt)};break;case"getBlock":if(en.includeTransactions){tn=function(Wt){if(Wt==null){return null}Wt=(0,on.shallowCopy)(Wt);Wt.transactions=Wt.transactions.map((function(Wt){Wt=(0,on.shallowCopy)(Wt);Wt.confirmations=-1;return Wt}));return serialize(Wt)}}else{tn=function(Wt){if(Wt==null){return null}return serialize(Wt)}}break;default:throw new Error("unknown method: "+Pt)}return normalizedTally(tn,Wt.quorum)}function waitForSync(Wt,Pt){return nn(this,void 0,void 0,(function(){var en;return an(this,(function(tn){en=Wt.provider;if(en.blockNumber!=null&&en.blockNumber>=Pt||Pt===-1){return[2,en]}return[2,(0,dn.poll)((function(){return new Promise((function(tn,nn){setTimeout((function(){if(en.blockNumber>=Pt){return tn(en)}if(Wt.cancelled){return tn(null)}return tn(undefined)}),0)}))}),{oncePoll:en})]}))}))}function getRunner(Wt,Pt,en,tn){return nn(this,void 0,void 0,(function(){var nn,rn,In;return an(this,(function(an){switch(an.label){case 0:nn=Wt.provider;rn=en;switch(rn){case"getBlockNumber":return[3,1];case"getGasPrice":return[3,1];case"getEtherPrice":return[3,2];case"getBalance":return[3,3];case"getTransactionCount":return[3,3];case"getCode":return[3,3];case"getStorageAt":return[3,6];case"getBlock":return[3,9];case"call":return[3,12];case"estimateGas":return[3,12];case"getTransaction":return[3,15];case"getTransactionReceipt":return[3,15];case"getLogs":return[3,16]}return[3,19];case 1:return[2,nn[en]()];case 2:if(nn.getEtherPrice){return[2,nn.getEtherPrice()]}return[3,19];case 3:if(!(tn.blockTag&&(0,sn.isHexString)(tn.blockTag)))return[3,5];return[4,waitForSync(Wt,Pt)];case 4:nn=an.sent();an.label=5;case 5:return[2,nn[en](tn.address,tn.blockTag||"latest")];case 6:if(!(tn.blockTag&&(0,sn.isHexString)(tn.blockTag)))return[3,8];return[4,waitForSync(Wt,Pt)];case 7:nn=an.sent();an.label=8;case 8:return[2,nn.getStorageAt(tn.address,tn.position,tn.blockTag||"latest")];case 9:if(!(tn.blockTag&&(0,sn.isHexString)(tn.blockTag)))return[3,11];return[4,waitForSync(Wt,Pt)];case 10:nn=an.sent();an.label=11;case 11:return[2,nn[tn.includeTransactions?"getBlockWithTransactions":"getBlock"](tn.blockTag||tn.blockHash)];case 12:if(!(tn.blockTag&&(0,sn.isHexString)(tn.blockTag)))return[3,14];return[4,waitForSync(Wt,Pt)];case 13:nn=an.sent();an.label=14;case 14:if(en==="call"&&tn.blockTag){return[2,nn[en](tn.transaction,tn.blockTag)]}return[2,nn[en](tn.transaction)];case 15:return[2,nn[en](tn.transactionHash)];case 16:In=tn.filter;if(!(In.fromBlock&&(0,sn.isHexString)(In.fromBlock)||In.toBlock&&(0,sn.isHexString)(In.toBlock)))return[3,18];return[4,waitForSync(Wt,Pt)];case 17:nn=an.sent();an.label=18;case 18:return[2,nn.getLogs(In)];case 19:return[2,Gn.throwError("unknown method error",mn.Logger.errors.UNKNOWN_ERROR,{method:en,params:tn})]}}))}))}var Wn=function(Wt){tn(FallbackProvider,Wt);function FallbackProvider(Pt,en){var tn=this;if(Pt.length===0){Gn.throwArgumentError("missing providers","providers",Pt)}var nn=Pt.map((function(Wt,Pt){if(rn.Provider.isProvider(Wt)){var en=(0,pn.isCommunityResource)(Wt)?2e3:750;var tn=1;return Object.freeze({provider:Wt,weight:1,stallTimeout:en,priority:tn})}var nn=(0,on.shallowCopy)(Wt);if(nn.priority==null){nn.priority=1}if(nn.stallTimeout==null){nn.stallTimeout=(0,pn.isCommunityResource)(Wt)?2e3:750}if(nn.weight==null){nn.weight=1}var an=nn.weight;if(an%1||an>512||an<1){Gn.throwArgumentError("invalid weight; must be integer in [1, 512]","providers["+Pt+"].weight",an)}return Object.freeze(nn)}));var an=nn.reduce((function(Wt,Pt){return Wt+Pt.weight}),0);if(en==null){en=an/2}else if(en>an){Gn.throwArgumentError("quorum will always fail; larger than total weight","quorum",en)}var In=checkNetworks(nn.map((function(Wt){return Wt.provider.network})));if(In==null){In=new Promise((function(Wt,Pt){setTimeout((function(){tn.detectNetwork().then(Wt,Pt)}),0)}))}tn=Wt.call(this,In)||this;(0,on.defineReadOnly)(tn,"providerConfigs",Object.freeze(nn));(0,on.defineReadOnly)(tn,"quorum",en);tn._highestBlockNumber=-1;return tn}FallbackProvider.prototype.detectNetwork=function(){return nn(this,void 0,void 0,(function(){var Wt;return an(this,(function(Pt){switch(Pt.label){case 0:return[4,Promise.all(this.providerConfigs.map((function(Wt){return Wt.provider.getNetwork()})))];case 1:Wt=Pt.sent();return[2,checkNetworks(Wt)]}}))}))};FallbackProvider.prototype.perform=function(Wt,Pt){return nn(this,void 0,void 0,(function(){var en,tn,nn,rn,In,sn,dn,un,pn,bn,Wn;var Nn=this;return an(this,(function(gn){switch(gn.label){case 0:if(!(Wt==="sendTransaction"))return[3,2];return[4,Promise.all(this.providerConfigs.map((function(Wt){return Wt.provider.sendTransaction(Pt.signedTransaction).then((function(Wt){return Wt.hash}),(function(Wt){return Wt}))})))];case 1:en=gn.sent();for(tn=0;tn=bn.quorum))return[3,5];mn=rn(pn);if(mn!==undefined){In.forEach((function(Wt){if(Wt.staller){Wt.staller.cancel()}Wt.cancelled=true}));return[2,{value:mn}]}if(!!un)return[3,4];return[4,stall(100).getPromise()];case 3:an.sent();an.label=4;case 4:un=false;an.label=5;case 5:Wn=In.reduce((function(Wt,Pt){if(!Pt.done||Pt.error==null){return Wt}var en=Pt.error.code;if(Zn.indexOf(en)>=0){if(!Wt[en]){Wt[en]={error:Pt.error,weight:0}}Wt[en].weight+=Pt.weight}return Wt}),{});Object.keys(Wn).forEach((function(Wt){var Pt=Wn[Wt];if(Pt.weight{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.showThrottleMessage=Pt.isCommunityResource=Pt.isCommunityResourcable=Pt.Formatter=void 0;var tn=en(75745);var nn=en(18202);var an=en(42006);var rn=en(99848);var In=en(61338);var sn=en(62394);var on=en(76127);var cn=en(25408);var dn=new on.Logger(cn.version);var un=function(){function Formatter(){this.formats=this.getDefaultFormats()}Formatter.prototype.getDefaultFormats=function(){var Wt=this;var Pt={};var en=this.address.bind(this);var tn=this.bigNumber.bind(this);var nn=this.blockTag.bind(this);var an=this.data.bind(this);var rn=this.hash.bind(this);var sn=this.hex.bind(this);var on=this.number.bind(this);var cn=this.type.bind(this);var strictData=function(Pt){return Wt.data(Pt,true)};Pt.transaction={hash:rn,type:cn,accessList:Formatter.allowNull(this.accessList.bind(this),null),blockHash:Formatter.allowNull(rn,null),blockNumber:Formatter.allowNull(on,null),transactionIndex:Formatter.allowNull(on,null),confirmations:Formatter.allowNull(on,null),from:en,gasPrice:Formatter.allowNull(tn),maxPriorityFeePerGas:Formatter.allowNull(tn),maxFeePerGas:Formatter.allowNull(tn),gasLimit:tn,to:Formatter.allowNull(en,null),value:tn,nonce:on,data:an,r:Formatter.allowNull(this.uint256),s:Formatter.allowNull(this.uint256),v:Formatter.allowNull(on),creates:Formatter.allowNull(en,null),raw:Formatter.allowNull(an)};Pt.transactionRequest={from:Formatter.allowNull(en),nonce:Formatter.allowNull(on),gasLimit:Formatter.allowNull(tn),gasPrice:Formatter.allowNull(tn),maxPriorityFeePerGas:Formatter.allowNull(tn),maxFeePerGas:Formatter.allowNull(tn),to:Formatter.allowNull(en),value:Formatter.allowNull(tn),data:Formatter.allowNull(strictData),type:Formatter.allowNull(on),accessList:Formatter.allowNull(this.accessList.bind(this),null)};Pt.receiptLog={transactionIndex:on,blockNumber:on,transactionHash:rn,address:en,topics:Formatter.arrayOf(rn),data:an,logIndex:on,blockHash:rn};Pt.receipt={to:Formatter.allowNull(this.address,null),from:Formatter.allowNull(this.address,null),contractAddress:Formatter.allowNull(en,null),transactionIndex:on,root:Formatter.allowNull(sn),gasUsed:tn,logsBloom:Formatter.allowNull(an),blockHash:rn,transactionHash:rn,logs:Formatter.arrayOf(this.receiptLog.bind(this)),blockNumber:on,confirmations:Formatter.allowNull(on,null),cumulativeGasUsed:tn,effectiveGasPrice:Formatter.allowNull(tn),status:Formatter.allowNull(on),type:cn};Pt.block={hash:Formatter.allowNull(rn),parentHash:rn,number:on,timestamp:on,nonce:Formatter.allowNull(sn),difficulty:this.difficulty.bind(this),gasLimit:tn,gasUsed:tn,miner:Formatter.allowNull(en),extraData:an,transactions:Formatter.allowNull(Formatter.arrayOf(rn)),baseFeePerGas:Formatter.allowNull(tn)};Pt.blockWithTransactions=(0,In.shallowCopy)(Pt.block);Pt.blockWithTransactions.transactions=Formatter.allowNull(Formatter.arrayOf(this.transactionResponse.bind(this)));Pt.filter={fromBlock:Formatter.allowNull(nn,undefined),toBlock:Formatter.allowNull(nn,undefined),blockHash:Formatter.allowNull(rn,undefined),address:Formatter.allowNull(en,undefined),topics:Formatter.allowNull(this.topics.bind(this),undefined)};Pt.filterLog={blockNumber:Formatter.allowNull(on),blockHash:Formatter.allowNull(rn),transactionIndex:on,removed:Formatter.allowNull(this.boolean.bind(this)),address:en,data:Formatter.allowFalsish(an,"0x"),topics:Formatter.arrayOf(rn),transactionHash:rn,logIndex:on};return Pt};Formatter.prototype.accessList=function(Wt){return(0,sn.accessListify)(Wt||[])};Formatter.prototype.number=function(Wt){if(Wt==="0x"){return 0}return nn.BigNumber.from(Wt).toNumber()};Formatter.prototype.type=function(Wt){if(Wt==="0x"||Wt==null){return 0}return nn.BigNumber.from(Wt).toNumber()};Formatter.prototype.bigNumber=function(Wt){return nn.BigNumber.from(Wt)};Formatter.prototype.boolean=function(Wt){if(typeof Wt==="boolean"){return Wt}if(typeof Wt==="string"){Wt=Wt.toLowerCase();if(Wt==="true"){return true}if(Wt==="false"){return false}}throw new Error("invalid boolean - "+Wt)};Formatter.prototype.hex=function(Wt,Pt){if(typeof Wt==="string"){if(!Pt&&Wt.substring(0,2)!=="0x"){Wt="0x"+Wt}if((0,an.isHexString)(Wt)){return Wt.toLowerCase()}}return dn.throwArgumentError("invalid hash","value",Wt)};Formatter.prototype.data=function(Wt,Pt){var en=this.hex(Wt,Pt);if(en.length%2!==0){throw new Error("invalid data; odd-length - "+Wt)}return en};Formatter.prototype.address=function(Wt){return(0,tn.getAddress)(Wt)};Formatter.prototype.callAddress=function(Wt){if(!(0,an.isHexString)(Wt,32)){return null}var Pt=(0,tn.getAddress)((0,an.hexDataSlice)(Wt,12));return Pt===rn.AddressZero?null:Pt};Formatter.prototype.contractAddress=function(Wt){return(0,tn.getContractAddress)(Wt)};Formatter.prototype.blockTag=function(Wt){if(Wt==null){return"latest"}if(Wt==="earliest"){return"0x0"}switch(Wt){case"earliest":return"0x0";case"latest":case"pending":case"safe":case"finalized":return Wt}if(typeof Wt==="number"||(0,an.isHexString)(Wt)){return(0,an.hexValue)(Wt)}throw new Error("invalid blockTag")};Formatter.prototype.hash=function(Wt,Pt){var en=this.hex(Wt,Pt);if((0,an.hexDataLength)(en)!==32){return dn.throwArgumentError("invalid hash","value",Wt)}return en};Formatter.prototype.difficulty=function(Wt){if(Wt==null){return null}var Pt=nn.BigNumber.from(Wt);try{return Pt.toNumber()}catch(Wt){}return null};Formatter.prototype.uint256=function(Wt){if(!(0,an.isHexString)(Wt)){throw new Error("invalid uint256")}return(0,an.hexZeroPad)(Wt,32)};Formatter.prototype._block=function(Wt,Pt){if(Wt.author!=null&&Wt.miner==null){Wt.miner=Wt.author}var en=Wt._difficulty!=null?Wt._difficulty:Wt.difficulty;var tn=Formatter.check(Pt,Wt);tn._difficulty=en==null?null:nn.BigNumber.from(en);return tn};Formatter.prototype.block=function(Wt){return this._block(Wt,this.formats.block)};Formatter.prototype.blockWithTransactions=function(Wt){return this._block(Wt,this.formats.blockWithTransactions)};Formatter.prototype.transactionRequest=function(Wt){return Formatter.check(this.formats.transactionRequest,Wt)};Formatter.prototype.transactionResponse=function(Wt){if(Wt.gas!=null&&Wt.gasLimit==null){Wt.gasLimit=Wt.gas}if(Wt.to&&nn.BigNumber.from(Wt.to).isZero()){Wt.to="0x0000000000000000000000000000000000000000"}if(Wt.input!=null&&Wt.data==null){Wt.data=Wt.input}if(Wt.to==null&&Wt.creates==null){Wt.creates=this.contractAddress(Wt)}if((Wt.type===1||Wt.type===2)&&Wt.accessList==null){Wt.accessList=[]}var Pt=Formatter.check(this.formats.transaction,Wt);if(Wt.chainId!=null){var en=Wt.chainId;if((0,an.isHexString)(en)){en=nn.BigNumber.from(en).toNumber()}Pt.chainId=en}else{var en=Wt.networkId;if(en==null&&Pt.v==null){en=Wt.chainId}if((0,an.isHexString)(en)){en=nn.BigNumber.from(en).toNumber()}if(typeof en!=="number"&&Pt.v!=null){en=(Pt.v-35)/2;if(en<0){en=0}en=parseInt(en)}if(typeof en!=="number"){en=0}Pt.chainId=en}if(Pt.blockHash&&Pt.blockHash.replace(/0/g,"")==="x"){Pt.blockHash=null}return Pt};Formatter.prototype.transaction=function(Wt){return(0,sn.parse)(Wt)};Formatter.prototype.receiptLog=function(Wt){return Formatter.check(this.formats.receiptLog,Wt)};Formatter.prototype.receipt=function(Wt){var Pt=Formatter.check(this.formats.receipt,Wt);if(Pt.root!=null){if(Pt.root.length<=4){var en=nn.BigNumber.from(Pt.root).toNumber();if(en===0||en===1){if(Pt.status!=null&&Pt.status!==en){dn.throwArgumentError("alt-root-status/status mismatch","value",{root:Pt.root,status:Pt.status})}Pt.status=en;delete Pt.root}else{dn.throwArgumentError("invalid alt-root-status","value.root",Pt.root)}}else if(Pt.root.length!==66){dn.throwArgumentError("invalid root hash","value.root",Pt.root)}}if(Pt.status!=null){Pt.byzantium=true}return Pt};Formatter.prototype.topics=function(Wt){var Pt=this;if(Array.isArray(Wt)){return Wt.map((function(Wt){return Pt.topics(Wt)}))}else if(Wt!=null){return this.hash(Wt,true)}return null};Formatter.prototype.filter=function(Wt){return Formatter.check(this.formats.filter,Wt)};Formatter.prototype.filterLog=function(Wt){return Formatter.check(this.formats.filterLog,Wt)};Formatter.check=function(Wt,Pt){var en={};for(var tn in Wt){try{var nn=Wt[tn](Pt[tn]);if(nn!==undefined){en[tn]=nn}}catch(Wt){Wt.checkKey=tn;Wt.checkValue=Pt[tn];throw Wt}}return en};Formatter.allowNull=function(Wt,Pt){return function(en){if(en==null){return Pt}return Wt(en)}};Formatter.allowFalsish=function(Wt,Pt){return function(en){if(!en){return Pt}return Wt(en)}};Formatter.arrayOf=function(Wt){return function(Pt){if(!Array.isArray(Pt)){throw new Error("not an array")}var en=[];Pt.forEach((function(Pt){en.push(Wt(Pt))}));return en}};return Formatter}();Pt.Formatter=un;function isCommunityResourcable(Wt){return Wt&&typeof Wt.isCommunityResource==="function"}Pt.isCommunityResourcable=isCommunityResourcable;function isCommunityResource(Wt){return isCommunityResourcable(Wt)&&Wt.isCommunityResource()}Pt.isCommunityResource=isCommunityResource;var pn=false;function showThrottleMessage(){if(pn){return}pn=true;console.log("========= NOTICE =========");console.log("Request-Rate Exceeded (this message will not be repeated)");console.log("");console.log("The default API keys for each service are provided as a highly-throttled,");console.log("community resource for low-traffic projects and early prototyping.");console.log("");console.log("While your application will continue to function, we highly recommended");console.log("signing up for your own API keys to improve performance, increase your");console.log("request rate/limit and enable other perks, such as metrics and advanced APIs.");console.log("");console.log("For more details: https://docs.ethers.io/api-keys/");console.log("==========================")}Pt.showThrottleMessage=showThrottleMessage},74983:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Formatter=Pt.showThrottleMessage=Pt.isCommunityResourcable=Pt.isCommunityResource=Pt.getNetwork=Pt.getDefaultProvider=Pt.JsonRpcSigner=Pt.IpcProvider=Pt.WebSocketProvider=Pt.Web3Provider=Pt.StaticJsonRpcProvider=Pt.PocketProvider=Pt.NodesmithProvider=Pt.JsonRpcBatchProvider=Pt.JsonRpcProvider=Pt.InfuraWebSocketProvider=Pt.InfuraProvider=Pt.EtherscanProvider=Pt.CloudflareProvider=Pt.AnkrProvider=Pt.AlchemyWebSocketProvider=Pt.AlchemyProvider=Pt.FallbackProvider=Pt.UrlJsonRpcProvider=Pt.Resolver=Pt.BaseProvider=Pt.Provider=void 0;var tn=en(12825);Object.defineProperty(Pt,"Provider",{enumerable:true,get:function(){return tn.Provider}});var nn=en(23044);Object.defineProperty(Pt,"getNetwork",{enumerable:true,get:function(){return nn.getNetwork}});var an=en(8090);Object.defineProperty(Pt,"BaseProvider",{enumerable:true,get:function(){return an.BaseProvider}});Object.defineProperty(Pt,"Resolver",{enumerable:true,get:function(){return an.Resolver}});var rn=en(45372);Object.defineProperty(Pt,"AlchemyProvider",{enumerable:true,get:function(){return rn.AlchemyProvider}});Object.defineProperty(Pt,"AlchemyWebSocketProvider",{enumerable:true,get:function(){return rn.AlchemyWebSocketProvider}});var In=en(32319);Object.defineProperty(Pt,"AnkrProvider",{enumerable:true,get:function(){return In.AnkrProvider}});var sn=en(83832);Object.defineProperty(Pt,"CloudflareProvider",{enumerable:true,get:function(){return sn.CloudflareProvider}});var on=en(54814);Object.defineProperty(Pt,"EtherscanProvider",{enumerable:true,get:function(){return on.EtherscanProvider}});var cn=en(46459);Object.defineProperty(Pt,"FallbackProvider",{enumerable:true,get:function(){return cn.FallbackProvider}});var dn=en(54443);Object.defineProperty(Pt,"IpcProvider",{enumerable:true,get:function(){return dn.IpcProvider}});var un=en(65936);Object.defineProperty(Pt,"InfuraProvider",{enumerable:true,get:function(){return un.InfuraProvider}});Object.defineProperty(Pt,"InfuraWebSocketProvider",{enumerable:true,get:function(){return un.InfuraWebSocketProvider}});var pn=en(30697);Object.defineProperty(Pt,"JsonRpcProvider",{enumerable:true,get:function(){return pn.JsonRpcProvider}});Object.defineProperty(Pt,"JsonRpcSigner",{enumerable:true,get:function(){return pn.JsonRpcSigner}});var mn=en(15802);Object.defineProperty(Pt,"JsonRpcBatchProvider",{enumerable:true,get:function(){return mn.JsonRpcBatchProvider}});var bn=en(62572);Object.defineProperty(Pt,"NodesmithProvider",{enumerable:true,get:function(){return bn.NodesmithProvider}});var Gn=en(29663);Object.defineProperty(Pt,"PocketProvider",{enumerable:true,get:function(){return Gn.PocketProvider}});var hn=en(56717);Object.defineProperty(Pt,"StaticJsonRpcProvider",{enumerable:true,get:function(){return hn.StaticJsonRpcProvider}});Object.defineProperty(Pt,"UrlJsonRpcProvider",{enumerable:true,get:function(){return hn.UrlJsonRpcProvider}});var Zn=en(9676);Object.defineProperty(Pt,"Web3Provider",{enumerable:true,get:function(){return Zn.Web3Provider}});var An=en(35988);Object.defineProperty(Pt,"WebSocketProvider",{enumerable:true,get:function(){return An.WebSocketProvider}});var Wn=en(24293);Object.defineProperty(Pt,"Formatter",{enumerable:true,get:function(){return Wn.Formatter}});Object.defineProperty(Pt,"isCommunityResourcable",{enumerable:true,get:function(){return Wn.isCommunityResourcable}});Object.defineProperty(Pt,"isCommunityResource",{enumerable:true,get:function(){return Wn.isCommunityResource}});Object.defineProperty(Pt,"showThrottleMessage",{enumerable:true,get:function(){return Wn.showThrottleMessage}});var Nn=en(76127);var gn=en(25408);var yn=new Nn.Logger(gn.version);function getDefaultProvider(Wt,Pt){if(Wt==null){Wt="homestead"}if(typeof Wt==="string"){var en=Wt.match(/^(ws|http)s?:/i);if(en){switch(en[1].toLowerCase()){case"http":case"https":return new pn.JsonRpcProvider(Wt);case"ws":case"wss":return new An.WebSocketProvider(Wt);default:yn.throwArgumentError("unsupported URL scheme","network",Wt)}}}var tn=(0,nn.getNetwork)(Wt);if(!tn||!tn._defaultProvider){yn.throwError("unsupported getDefaultProvider network",Nn.Logger.errors.NETWORK_ERROR,{operation:"getDefaultProvider",network:Wt})}return tn._defaultProvider({FallbackProvider:cn.FallbackProvider,AlchemyProvider:rn.AlchemyProvider,AnkrProvider:In.AnkrProvider,CloudflareProvider:sn.CloudflareProvider,EtherscanProvider:on.EtherscanProvider,InfuraProvider:un.InfuraProvider,JsonRpcProvider:pn.JsonRpcProvider,NodesmithProvider:bn.NodesmithProvider,PocketProvider:Gn.PocketProvider,Web3Provider:Zn.Web3Provider,IpcProvider:dn.IpcProvider},Pt)}Pt.getDefaultProvider=getDefaultProvider},65936:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.InfuraProvider=Pt.InfuraWebSocketProvider=void 0;var nn=en(61338);var an=en(35988);var rn=en(24293);var In=en(76127);var sn=en(25408);var on=new In.Logger(sn.version);var cn=en(56717);var dn="84842078b09946638c03157f83405213";var un=function(Wt){tn(InfuraWebSocketProvider,Wt);function InfuraWebSocketProvider(Pt,en){var tn=this;var an=new pn(Pt,en);var rn=an.connection;if(rn.password){on.throwError("INFURA WebSocket project secrets unsupported",In.Logger.errors.UNSUPPORTED_OPERATION,{operation:"InfuraProvider.getWebSocketProvider()"})}var sn=rn.url.replace(/^http/i,"ws").replace("/v3/","/ws/v3/");tn=Wt.call(this,sn,Pt)||this;(0,nn.defineReadOnly)(tn,"apiKey",an.projectId);(0,nn.defineReadOnly)(tn,"projectId",an.projectId);(0,nn.defineReadOnly)(tn,"projectSecret",an.projectSecret);return tn}InfuraWebSocketProvider.prototype.isCommunityResource=function(){return this.projectId===dn};return InfuraWebSocketProvider}(an.WebSocketProvider);Pt.InfuraWebSocketProvider=un;var pn=function(Wt){tn(InfuraProvider,Wt);function InfuraProvider(){return Wt!==null&&Wt.apply(this,arguments)||this}InfuraProvider.getWebSocketProvider=function(Wt,Pt){return new un(Wt,Pt)};InfuraProvider.getApiKey=function(Wt){var Pt={apiKey:dn,projectId:dn,projectSecret:null};if(Wt==null){return Pt}if(typeof Wt==="string"){Pt.projectId=Wt}else if(Wt.projectSecret!=null){on.assertArgument(typeof Wt.projectId==="string","projectSecret requires a projectId","projectId",Wt.projectId);on.assertArgument(typeof Wt.projectSecret==="string","invalid projectSecret","projectSecret","[REDACTED]");Pt.projectId=Wt.projectId;Pt.projectSecret=Wt.projectSecret}else if(Wt.projectId){Pt.projectId=Wt.projectId}Pt.apiKey=Pt.projectId;return Pt};InfuraProvider.getUrl=function(Wt,Pt){var en=null;switch(Wt?Wt.name:"unknown"){case"homestead":en="mainnet.infura.io";break;case"goerli":en="goerli.infura.io";break;case"sepolia":en="sepolia.infura.io";break;case"matic":en="polygon-mainnet.infura.io";break;case"maticmum":en="polygon-mumbai.infura.io";break;case"optimism":en="optimism-mainnet.infura.io";break;case"optimism-goerli":en="optimism-goerli.infura.io";break;case"arbitrum":en="arbitrum-mainnet.infura.io";break;case"arbitrum-goerli":en="arbitrum-goerli.infura.io";break;default:on.throwError("unsupported network",In.Logger.errors.INVALID_ARGUMENT,{argument:"network",value:Wt})}var tn={allowGzip:true,url:"https:/"+"/"+en+"/v3/"+Pt.projectId,throttleCallback:function(Wt,en){if(Pt.projectId===dn){(0,rn.showThrottleMessage)()}return Promise.resolve(true)}};if(Pt.projectSecret!=null){tn.user="";tn.password=Pt.projectSecret}return tn};InfuraProvider.prototype.isCommunityResource=function(){return this.projectId===dn};return InfuraProvider}(cn.UrlJsonRpcProvider);Pt.InfuraProvider=pn},54443:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.IpcProvider=void 0;var nn=en(69278);var an=en(61338);var rn=en(76127);var In=en(25408);var sn=new rn.Logger(In.version);var on=en(30697);var cn=function(Wt){tn(IpcProvider,Wt);function IpcProvider(Pt,en){var tn=this;if(Pt==null){sn.throwError("missing path",rn.Logger.errors.MISSING_ARGUMENT,{arg:"path"})}tn=Wt.call(this,"ipc://"+Pt,en)||this;(0,an.defineReadOnly)(tn,"path",Pt);return tn}IpcProvider.prototype.send=function(Wt,Pt){var en=this;var tn=JSON.stringify({method:Wt,params:Pt,id:42,jsonrpc:"2.0"});return new Promise((function(Wt,Pt){var an=Buffer.alloc(0);var rn=(0,nn.connect)(en.path);rn.on("data",(function(Wt){an=Buffer.concat([an,Wt])}));rn.on("end",(function(){try{Wt(JSON.parse(an.toString()).result);rn.destroy()}catch(Wt){Pt(Wt);rn.destroy()}}));rn.on("error",(function(Wt){Pt(Wt);rn.destroy()}));rn.write(tn);rn.end()}))};return IpcProvider}(on.JsonRpcProvider);Pt.IpcProvider=cn},15802:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.JsonRpcBatchProvider=void 0;var nn=en(61338);var an=en(72239);var rn=en(30697);var In=function(Wt){tn(JsonRpcBatchProvider,Wt);function JsonRpcBatchProvider(){return Wt!==null&&Wt.apply(this,arguments)||this}JsonRpcBatchProvider.prototype.send=function(Wt,Pt){var en=this;var tn={method:Wt,params:Pt,id:this._nextId++,jsonrpc:"2.0"};if(this._pendingBatch==null){this._pendingBatch=[]}var rn={request:tn,resolve:null,reject:null};var In=new Promise((function(Wt,Pt){rn.resolve=Wt;rn.reject=Pt}));this._pendingBatch.push(rn);if(!this._pendingBatchAggregator){this._pendingBatchAggregator=setTimeout((function(){var Wt=en._pendingBatch;en._pendingBatch=null;en._pendingBatchAggregator=null;var Pt=Wt.map((function(Wt){return Wt.request}));en.emit("debug",{action:"requestBatch",request:(0,nn.deepCopy)(Pt),provider:en});return(0,an.fetchJson)(en.connection,JSON.stringify(Pt)).then((function(tn){en.emit("debug",{action:"response",request:Pt,response:tn,provider:en});Wt.forEach((function(Wt,Pt){var en=tn[Pt];if(en.error){var nn=new Error(en.error.message);nn.code=en.error.code;nn.data=en.error.data;Wt.reject(nn)}else{Wt.resolve(en.result)}}))}),(function(tn){en.emit("debug",{action:"response",error:tn,request:Pt,provider:en});Wt.forEach((function(Wt){Wt.reject(tn)}))}))}),10)}return In};return JsonRpcBatchProvider}(rn.JsonRpcProvider);Pt.JsonRpcBatchProvider=In},30697:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();var nn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var an=this&&this.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]=0&&an.match(/gas required exceeds allowance|always failing transaction|execution reverted|revert/)){Gn.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",mn.Logger.errors.UNPREDICTABLE_GAS_LIMIT,{error:Pt,method:Wt,transaction:tn})}throw Pt}function timer(Wt){return new Promise((function(Pt){setTimeout(Pt,Wt)}))}function getResult(Wt){if(Wt.error){var Pt=new Error(Wt.error.message);Pt.code=Wt.error.code;Pt.data=Wt.error.data;throw Pt}return Wt.result}function getLowerCase(Wt){if(Wt){return Wt.toLowerCase()}return Wt}var An={};var Wn=function(Wt){tn(JsonRpcSigner,Wt);function JsonRpcSigner(Pt,en,tn){var nn=Wt.call(this)||this;if(Pt!==An){throw new Error("do not call the JsonRpcSigner constructor directly; use provider.getSigner")}(0,cn.defineReadOnly)(nn,"provider",en);if(tn==null){tn=0}if(typeof tn==="string"){(0,cn.defineReadOnly)(nn,"_address",nn.provider.formatter.address(tn));(0,cn.defineReadOnly)(nn,"_index",null)}else if(typeof tn==="number"){(0,cn.defineReadOnly)(nn,"_index",tn);(0,cn.defineReadOnly)(nn,"_address",null)}else{Gn.throwArgumentError("invalid address or index","addressOrIndex",tn)}return nn}JsonRpcSigner.prototype.connect=function(Wt){return Gn.throwError("cannot alter JSON-RPC Signer connection",mn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"connect"})};JsonRpcSigner.prototype.connectUnchecked=function(){return new Nn(An,this.provider,this._address||this._index)};JsonRpcSigner.prototype.getAddress=function(){var Wt=this;if(this._address){return Promise.resolve(this._address)}return this.provider.send("eth_accounts",[]).then((function(Pt){if(Pt.length<=Wt._index){Gn.throwError("unknown account #"+Wt._index,mn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"getAddress"})}return Wt.provider.formatter.address(Pt[Wt._index])}))};JsonRpcSigner.prototype.sendUncheckedTransaction=function(Wt){var Pt=this;Wt=(0,cn.shallowCopy)(Wt);var en=this.getAddress().then((function(Wt){if(Wt){Wt=Wt.toLowerCase()}return Wt}));if(Wt.gasLimit==null){var tn=(0,cn.shallowCopy)(Wt);tn.from=en;Wt.gasLimit=this.provider.estimateGas(tn)}if(Wt.to!=null){Wt.to=Promise.resolve(Wt.to).then((function(Wt){return nn(Pt,void 0,void 0,(function(){var Pt;return an(this,(function(en){switch(en.label){case 0:if(Wt==null){return[2,null]}return[4,this.provider.resolveName(Wt)];case 1:Pt=en.sent();if(Pt==null){Gn.throwArgumentError("provided ENS name resolves to null","tx.to",Wt)}return[2,Pt]}}))}))}))}return(0,cn.resolveProperties)({tx:(0,cn.resolveProperties)(Wt),sender:en}).then((function(en){var tn=en.tx,nn=en.sender;if(tn.from!=null){if(tn.from.toLowerCase()!==nn){Gn.throwArgumentError("from address mismatch","transaction",Wt)}}else{tn.from=nn}var an=Pt.provider.constructor.hexlifyTransaction(tn,{from:true});return Pt.provider.send("eth_sendTransaction",[an]).then((function(Wt){return Wt}),(function(Wt){if(typeof Wt.message==="string"&&Wt.message.match(/user denied/i)){Gn.throwError("user rejected transaction",mn.Logger.errors.ACTION_REJECTED,{action:"sendTransaction",transaction:tn})}return checkError("sendTransaction",Wt,an)}))}))};JsonRpcSigner.prototype.signTransaction=function(Wt){return Gn.throwError("signing transactions is unsupported",mn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"signTransaction"})};JsonRpcSigner.prototype.sendTransaction=function(Wt){return nn(this,void 0,void 0,(function(){var Pt,en,tn;var rn=this;return an(this,(function(In){switch(In.label){case 0:return[4,this.provider._getInternalBlockNumber(100+2*this.provider.pollingInterval)];case 1:Pt=In.sent();return[4,this.sendUncheckedTransaction(Wt)];case 2:en=In.sent();In.label=3;case 3:In.trys.push([3,5,,6]);return[4,(0,pn.poll)((function(){return nn(rn,void 0,void 0,(function(){var Wt;return an(this,(function(tn){switch(tn.label){case 0:return[4,this.provider.getTransaction(en)];case 1:Wt=tn.sent();if(Wt===null){return[2,undefined]}return[2,this.provider._wrapTransaction(Wt,en,Pt)]}}))}))}),{oncePoll:this.provider})];case 4:return[2,In.sent()];case 5:tn=In.sent();tn.transactionHash=en;throw tn;case 6:return[2]}}))}))};JsonRpcSigner.prototype.signMessage=function(Wt){return nn(this,void 0,void 0,(function(){var Pt,en,tn;return an(this,(function(nn){switch(nn.label){case 0:Pt=typeof Wt==="string"?(0,dn.toUtf8Bytes)(Wt):Wt;return[4,this.getAddress()];case 1:en=nn.sent();nn.label=2;case 2:nn.trys.push([2,4,,5]);return[4,this.provider.send("personal_sign",[(0,sn.hexlify)(Pt),en.toLowerCase()])];case 3:return[2,nn.sent()];case 4:tn=nn.sent();if(typeof tn.message==="string"&&tn.message.match(/user denied/i)){Gn.throwError("user rejected signing",mn.Logger.errors.ACTION_REJECTED,{action:"signMessage",from:en,messageData:Wt})}throw tn;case 5:return[2]}}))}))};JsonRpcSigner.prototype._legacySignMessage=function(Wt){return nn(this,void 0,void 0,(function(){var Pt,en,tn;return an(this,(function(nn){switch(nn.label){case 0:Pt=typeof Wt==="string"?(0,dn.toUtf8Bytes)(Wt):Wt;return[4,this.getAddress()];case 1:en=nn.sent();nn.label=2;case 2:nn.trys.push([2,4,,5]);return[4,this.provider.send("eth_sign",[en.toLowerCase(),(0,sn.hexlify)(Pt)])];case 3:return[2,nn.sent()];case 4:tn=nn.sent();if(typeof tn.message==="string"&&tn.message.match(/user denied/i)){Gn.throwError("user rejected signing",mn.Logger.errors.ACTION_REJECTED,{action:"_legacySignMessage",from:en,messageData:Wt})}throw tn;case 5:return[2]}}))}))};JsonRpcSigner.prototype._signTypedData=function(Wt,Pt,en){return nn(this,void 0,void 0,(function(){var tn,nn,rn;var In=this;return an(this,(function(an){switch(an.label){case 0:return[4,on._TypedDataEncoder.resolveNames(Wt,Pt,en,(function(Wt){return In.provider.resolveName(Wt)}))];case 1:tn=an.sent();return[4,this.getAddress()];case 2:nn=an.sent();an.label=3;case 3:an.trys.push([3,5,,6]);return[4,this.provider.send("eth_signTypedData_v4",[nn.toLowerCase(),JSON.stringify(on._TypedDataEncoder.getPayload(tn.domain,Pt,tn.value))])];case 4:return[2,an.sent()];case 5:rn=an.sent();if(typeof rn.message==="string"&&rn.message.match(/user denied/i)){Gn.throwError("user rejected signing",mn.Logger.errors.ACTION_REJECTED,{action:"_signTypedData",from:nn,messageData:{domain:tn.domain,types:Pt,value:tn.value}})}throw rn;case 6:return[2]}}))}))};JsonRpcSigner.prototype.unlock=function(Wt){return nn(this,void 0,void 0,(function(){var Pt,en;return an(this,(function(tn){switch(tn.label){case 0:Pt=this.provider;return[4,this.getAddress()];case 1:en=tn.sent();return[2,Pt.send("personal_unlockAccount",[en.toLowerCase(),Wt,null])]}}))}))};return JsonRpcSigner}(rn.Signer);Pt.JsonRpcSigner=Wn;var Nn=function(Wt){tn(UncheckedJsonRpcSigner,Wt);function UncheckedJsonRpcSigner(){return Wt!==null&&Wt.apply(this,arguments)||this}UncheckedJsonRpcSigner.prototype.sendTransaction=function(Wt){var Pt=this;return this.sendUncheckedTransaction(Wt).then((function(Wt){return{hash:Wt,nonce:null,gasLimit:null,gasPrice:null,data:null,value:null,chainId:null,confirmations:0,from:null,wait:function(en){return Pt.provider.waitForTransaction(Wt,en)}}}))};return UncheckedJsonRpcSigner}(Wn);var gn={chainId:true,data:true,gasLimit:true,gasPrice:true,nonce:true,to:true,value:true,type:true,accessList:true,maxFeePerGas:true,maxPriorityFeePerGas:true};var yn=function(Wt){tn(JsonRpcProvider,Wt);function JsonRpcProvider(Pt,en){var tn=this;var nn=en;if(nn==null){nn=new Promise((function(Wt,Pt){setTimeout((function(){tn.detectNetwork().then((function(Pt){Wt(Pt)}),(function(Wt){Pt(Wt)}))}),0)}))}tn=Wt.call(this,nn)||this;if(!Pt){Pt=(0,cn.getStatic)(tn.constructor,"defaultUrl")()}if(typeof Pt==="string"){(0,cn.defineReadOnly)(tn,"connection",Object.freeze({url:Pt}))}else{(0,cn.defineReadOnly)(tn,"connection",Object.freeze((0,cn.shallowCopy)(Pt)))}tn._nextId=42;return tn}Object.defineProperty(JsonRpcProvider.prototype,"_cache",{get:function(){if(this._eventLoopCache==null){this._eventLoopCache={}}return this._eventLoopCache},enumerable:false,configurable:true});JsonRpcProvider.defaultUrl=function(){return"http://localhost:8545"};JsonRpcProvider.prototype.detectNetwork=function(){var Wt=this;if(!this._cache["detectNetwork"]){this._cache["detectNetwork"]=this._uncachedDetectNetwork();setTimeout((function(){Wt._cache["detectNetwork"]=null}),0)}return this._cache["detectNetwork"]};JsonRpcProvider.prototype._uncachedDetectNetwork=function(){return nn(this,void 0,void 0,(function(){var Wt,Pt,en,tn;return an(this,(function(nn){switch(nn.label){case 0:return[4,timer(0)];case 1:nn.sent();Wt=null;nn.label=2;case 2:nn.trys.push([2,4,,9]);return[4,this.send("eth_chainId",[])];case 3:Wt=nn.sent();return[3,9];case 4:Pt=nn.sent();nn.label=5;case 5:nn.trys.push([5,7,,8]);return[4,this.send("net_version",[])];case 6:Wt=nn.sent();return[3,8];case 7:en=nn.sent();return[3,8];case 8:return[3,9];case 9:if(Wt!=null){tn=(0,cn.getStatic)(this.constructor,"getNetwork");try{return[2,tn(In.BigNumber.from(Wt).toNumber())]}catch(Pt){return[2,Gn.throwError("could not detect network",mn.Logger.errors.NETWORK_ERROR,{chainId:Wt,event:"invalidNetwork",serverError:Pt})]}}return[2,Gn.throwError("could not detect network",mn.Logger.errors.NETWORK_ERROR,{event:"noNetwork"})]}}))}))};JsonRpcProvider.prototype.getSigner=function(Wt){return new Wn(An,this,Wt)};JsonRpcProvider.prototype.getUncheckedSigner=function(Wt){return this.getSigner(Wt).connectUnchecked()};JsonRpcProvider.prototype.listAccounts=function(){var Wt=this;return this.send("eth_accounts",[]).then((function(Pt){return Pt.map((function(Pt){return Wt.formatter.address(Pt)}))}))};JsonRpcProvider.prototype.send=function(Wt,Pt){var en=this;var tn={method:Wt,params:Pt,id:this._nextId++,jsonrpc:"2.0"};this.emit("debug",{action:"request",request:(0,cn.deepCopy)(tn),provider:this});var nn=["eth_chainId","eth_blockNumber"].indexOf(Wt)>=0;if(nn&&this._cache[Wt]){return this._cache[Wt]}var an=(0,pn.fetchJson)(this.connection,JSON.stringify(tn),getResult).then((function(Wt){en.emit("debug",{action:"response",request:tn,response:Wt,provider:en});return Wt}),(function(Wt){en.emit("debug",{action:"response",error:Wt,request:tn,provider:en});throw Wt}));if(nn){this._cache[Wt]=an;setTimeout((function(){en._cache[Wt]=null}),0)}return an};JsonRpcProvider.prototype.prepareRequest=function(Wt,Pt){switch(Wt){case"getBlockNumber":return["eth_blockNumber",[]];case"getGasPrice":return["eth_gasPrice",[]];case"getBalance":return["eth_getBalance",[getLowerCase(Pt.address),Pt.blockTag]];case"getTransactionCount":return["eth_getTransactionCount",[getLowerCase(Pt.address),Pt.blockTag]];case"getCode":return["eth_getCode",[getLowerCase(Pt.address),Pt.blockTag]];case"getStorageAt":return["eth_getStorageAt",[getLowerCase(Pt.address),(0,sn.hexZeroPad)(Pt.position,32),Pt.blockTag]];case"sendTransaction":return["eth_sendRawTransaction",[Pt.signedTransaction]];case"getBlock":if(Pt.blockTag){return["eth_getBlockByNumber",[Pt.blockTag,!!Pt.includeTransactions]]}else if(Pt.blockHash){return["eth_getBlockByHash",[Pt.blockHash,!!Pt.includeTransactions]]}return null;case"getTransaction":return["eth_getTransactionByHash",[Pt.transactionHash]];case"getTransactionReceipt":return["eth_getTransactionReceipt",[Pt.transactionHash]];case"call":{var en=(0,cn.getStatic)(this.constructor,"hexlifyTransaction");return["eth_call",[en(Pt.transaction,{from:true}),Pt.blockTag]]}case"estimateGas":{var en=(0,cn.getStatic)(this.constructor,"hexlifyTransaction");return["eth_estimateGas",[en(Pt.transaction,{from:true})]]}case"getLogs":if(Pt.filter&&Pt.filter.address!=null){Pt.filter.address=getLowerCase(Pt.filter.address)}return["eth_getLogs",[Pt.filter]];default:break}return null};JsonRpcProvider.prototype.perform=function(Wt,Pt){return nn(this,void 0,void 0,(function(){var en,tn,nn,rn;return an(this,(function(an){switch(an.label){case 0:if(!(Wt==="call"||Wt==="estimateGas"))return[3,2];en=Pt.transaction;if(!(en&&en.type!=null&&In.BigNumber.from(en.type).isZero()))return[3,2];if(!(en.maxFeePerGas==null&&en.maxPriorityFeePerGas==null))return[3,2];return[4,this.getFeeData()];case 1:tn=an.sent();if(tn.maxFeePerGas==null&&tn.maxPriorityFeePerGas==null){Pt=(0,cn.shallowCopy)(Pt);Pt.transaction=(0,cn.shallowCopy)(en);delete Pt.transaction.type}an.label=2;case 2:nn=this.prepareRequest(Wt,Pt);if(nn==null){Gn.throwError(Wt+" not implemented",mn.Logger.errors.NOT_IMPLEMENTED,{operation:Wt})}an.label=3;case 3:an.trys.push([3,5,,6]);return[4,this.send(nn[0],nn[1])];case 4:return[2,an.sent()];case 5:rn=an.sent();return[2,checkError(Wt,rn,Pt)];case 6:return[2]}}))}))};JsonRpcProvider.prototype._startEvent=function(Pt){if(Pt.tag==="pending"){this._startPending()}Wt.prototype._startEvent.call(this,Pt)};JsonRpcProvider.prototype._startPending=function(){if(this._pendingFilter!=null){return}var Wt=this;var Pt=this.send("eth_newPendingTransactionFilter",[]);this._pendingFilter=Pt;Pt.then((function(en){function poll(){Wt.send("eth_getFilterChanges",[en]).then((function(en){if(Wt._pendingFilter!=Pt){return null}var tn=Promise.resolve();en.forEach((function(Pt){Wt._emitted["t:"+Pt.toLowerCase()]="pending";tn=tn.then((function(){return Wt.getTransaction(Pt).then((function(Pt){Wt.emit("pending",Pt);return null}))}))}));return tn.then((function(){return timer(1e3)}))})).then((function(){if(Wt._pendingFilter!=Pt){Wt.send("eth_uninstallFilter",[en]);return}setTimeout((function(){poll()}),0);return null})).catch((function(Wt){}))}poll();return en})).catch((function(Wt){}))};JsonRpcProvider.prototype._stopEvent=function(Pt){if(Pt.tag==="pending"&&this.listenerCount("pending")===0){this._pendingFilter=null}Wt.prototype._stopEvent.call(this,Pt)};JsonRpcProvider.hexlifyTransaction=function(Wt,Pt){var en=(0,cn.shallowCopy)(gn);if(Pt){for(var tn in Pt){if(Pt[tn]){en[tn]=true}}}(0,cn.checkProperties)(Wt,en);var nn={};["chainId","gasLimit","gasPrice","type","maxFeePerGas","maxPriorityFeePerGas","nonce","value"].forEach((function(Pt){if(Wt[Pt]==null){return}var en=(0,sn.hexValue)(In.BigNumber.from(Wt[Pt]));if(Pt==="gasLimit"){Pt="gas"}nn[Pt]=en}));["from","to","data"].forEach((function(Pt){if(Wt[Pt]==null){return}nn[Pt]=(0,sn.hexlify)(Wt[Pt])}));if(Wt.accessList){nn["accessList"]=(0,un.accessListify)(Wt.accessList)}return nn};return JsonRpcProvider}(hn.BaseProvider);Pt.JsonRpcProvider=yn},62572:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.NodesmithProvider=void 0;var nn=en(56717);var an=en(76127);var rn=en(25408);var In=new an.Logger(rn.version);var sn="ETHERS_JS_SHARED";var on=function(Wt){tn(NodesmithProvider,Wt);function NodesmithProvider(){return Wt!==null&&Wt.apply(this,arguments)||this}NodesmithProvider.getApiKey=function(Wt){if(Wt&&typeof Wt!=="string"){In.throwArgumentError("invalid apiKey","apiKey",Wt)}return Wt||sn};NodesmithProvider.getUrl=function(Wt,Pt){In.warn("NodeSmith will be discontinued on 2019-12-20; please migrate to another platform.");var en=null;switch(Wt.name){case"homestead":en="https://ethereum.api.nodesmith.io/v1/mainnet/jsonrpc";break;case"ropsten":en="https://ethereum.api.nodesmith.io/v1/ropsten/jsonrpc";break;case"rinkeby":en="https://ethereum.api.nodesmith.io/v1/rinkeby/jsonrpc";break;case"goerli":en="https://ethereum.api.nodesmith.io/v1/goerli/jsonrpc";break;case"kovan":en="https://ethereum.api.nodesmith.io/v1/kovan/jsonrpc";break;default:In.throwArgumentError("unsupported network","network",arguments[0])}return en+"?apiKey="+Pt};return NodesmithProvider}(nn.UrlJsonRpcProvider);Pt.NodesmithProvider=on},29663:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.PocketProvider=void 0;var nn=en(76127);var an=en(25408);var rn=new nn.Logger(an.version);var In=en(56717);var sn="62e1ad51b37b8e00394bda3b";var on=function(Wt){tn(PocketProvider,Wt);function PocketProvider(){return Wt!==null&&Wt.apply(this,arguments)||this}PocketProvider.getApiKey=function(Wt){var Pt={applicationId:null,loadBalancer:true,applicationSecretKey:null};if(Wt==null){Pt.applicationId=sn}else if(typeof Wt==="string"){Pt.applicationId=Wt}else if(Wt.applicationSecretKey!=null){Pt.applicationId=Wt.applicationId;Pt.applicationSecretKey=Wt.applicationSecretKey}else if(Wt.applicationId){Pt.applicationId=Wt.applicationId}else{rn.throwArgumentError("unsupported PocketProvider apiKey","apiKey",Wt)}return Pt};PocketProvider.getUrl=function(Wt,Pt){var en=null;switch(Wt?Wt.name:"unknown"){case"goerli":en="eth-goerli.gateway.pokt.network";break;case"homestead":en="eth-mainnet.gateway.pokt.network";break;case"kovan":en="poa-kovan.gateway.pokt.network";break;case"matic":en="poly-mainnet.gateway.pokt.network";break;case"maticmum":en="polygon-mumbai-rpc.gateway.pokt.network";break;case"rinkeby":en="eth-rinkeby.gateway.pokt.network";break;case"ropsten":en="eth-ropsten.gateway.pokt.network";break;default:rn.throwError("unsupported network",nn.Logger.errors.INVALID_ARGUMENT,{argument:"network",value:Wt})}var tn="https://"+en+"/v1/lb/"+Pt.applicationId;var an={headers:{},url:tn};if(Pt.applicationSecretKey!=null){an.user="";an.password=Pt.applicationSecretKey}return an};PocketProvider.prototype.isCommunityResource=function(){return this.applicationId===sn};return PocketProvider}(In.UrlJsonRpcProvider);Pt.PocketProvider=on},56717:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();var nn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var an=this&&this.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]{"use strict";const tn=en(9462);tn.createWebSocketStream=en(62117);tn.Server=en(72672);tn.Receiver=en(18508);tn.Sender=en(31780);Wt.exports=tn},17932:(Wt,Pt,en)=>{"use strict";const{EMPTY_BUFFER:tn}=en(83400);function concat(Wt,Pt){if(Wt.length===0)return tn;if(Wt.length===1)return Wt[0];const en=Buffer.allocUnsafe(Pt);let nn=0;for(let Pt=0;Pt{"use strict";Wt.exports={BINARY_TYPES:["nodebuffer","arraybuffer","fragments"],GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),EMPTY_BUFFER:Buffer.alloc(0),NOOP:()=>{}}},92755:Wt=>{"use strict";class Event{constructor(Wt,Pt){this.target=Pt;this.type=Wt}}class MessageEvent extends Event{constructor(Wt,Pt){super("message",Pt);this.data=Wt}}class CloseEvent extends Event{constructor(Wt,Pt,en){super("close",en);this.wasClean=en._closeFrameReceived&&en._closeFrameSent;this.reason=Pt;this.code=Wt}}class OpenEvent extends Event{constructor(Wt){super("open",Wt)}}class ErrorEvent extends Event{constructor(Wt,Pt){super("error",Pt);this.message=Wt.message;this.error=Wt}}const Pt={addEventListener(Wt,Pt,en){if(typeof Pt!=="function")return;function onMessage(Wt){Pt.call(this,new MessageEvent(Wt,this))}function onClose(Wt,en){Pt.call(this,new CloseEvent(Wt,en,this))}function onError(Wt){Pt.call(this,new ErrorEvent(Wt,this))}function onOpen(){Pt.call(this,new OpenEvent(this))}const tn=en&&en.once?"once":"on";if(Wt==="message"){onMessage._listener=Pt;this[tn](Wt,onMessage)}else if(Wt==="close"){onClose._listener=Pt;this[tn](Wt,onClose)}else if(Wt==="error"){onError._listener=Pt;this[tn](Wt,onError)}else if(Wt==="open"){onOpen._listener=Pt;this[tn](Wt,onOpen)}else{this[tn](Wt,Pt)}},removeEventListener(Wt,Pt){const en=this.listeners(Wt);for(let tn=0;tn{"use strict";const Pt=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function push(Wt,Pt,en){if(Wt[Pt]===undefined)Wt[Pt]=[en];else Wt[Pt].push(en)}function parse(Wt){const en=Object.create(null);if(Wt===undefined||Wt==="")return en;let tn=Object.create(null);let nn=false;let an=false;let rn=false;let In;let sn;let on=-1;let cn=-1;let dn=0;for(;dn{let en=Wt[Pt];if(!Array.isArray(en))en=[en];return en.map((Wt=>[Pt].concat(Object.keys(Wt).map((Pt=>{let en=Wt[Pt];if(!Array.isArray(en))en=[en];return en.map((Wt=>Wt===true?Pt:`${Pt}=${Wt}`)).join("; ")}))).join("; "))).join(", ")})).join(", ")}Wt.exports={format:format,parse:parse}},97733:Wt=>{"use strict";const Pt=Symbol("kDone");const en=Symbol("kRun");class Limiter{constructor(Wt){this[Pt]=()=>{this.pending--;this[en]()};this.concurrency=Wt||Infinity;this.jobs=[];this.pending=0}add(Wt){this.jobs.push(Wt);this[en]()}[en](){if(this.pending===this.concurrency)return;if(this.jobs.length){const Wt=this.jobs.shift();this.pending++;Wt(this[Pt])}}}Wt.exports=Limiter},88389:(Wt,Pt,en)=>{"use strict";const tn=en(43106);const nn=en(17932);const an=en(97733);const{kStatusCode:rn,NOOP:In}=en(83400);const sn=Buffer.from([0,0,255,255]);const on=Symbol("permessage-deflate");const cn=Symbol("total-length");const dn=Symbol("callback");const un=Symbol("buffers");const pn=Symbol("error");let mn;class PerMessageDeflate{constructor(Wt,Pt,en){this._maxPayload=en|0;this._options=Wt||{};this._threshold=this._options.threshold!==undefined?this._options.threshold:1024;this._isServer=!!Pt;this._deflate=null;this._inflate=null;this.params=null;if(!mn){const Wt=this._options.concurrencyLimit!==undefined?this._options.concurrencyLimit:10;mn=new an(Wt)}}static get extensionName(){return"permessage-deflate"}offer(){const Wt={};if(this._options.serverNoContextTakeover){Wt.server_no_context_takeover=true}if(this._options.clientNoContextTakeover){Wt.client_no_context_takeover=true}if(this._options.serverMaxWindowBits){Wt.server_max_window_bits=this._options.serverMaxWindowBits}if(this._options.clientMaxWindowBits){Wt.client_max_window_bits=this._options.clientMaxWindowBits}else if(this._options.clientMaxWindowBits==null){Wt.client_max_window_bits=true}return Wt}accept(Wt){Wt=this.normalizeParams(Wt);this.params=this._isServer?this.acceptAsServer(Wt):this.acceptAsClient(Wt);return this.params}cleanup(){if(this._inflate){this._inflate.close();this._inflate=null}if(this._deflate){const Wt=this._deflate[dn];this._deflate.close();this._deflate=null;if(Wt){Wt(new Error("The deflate stream was closed while data was being processed"))}}}acceptAsServer(Wt){const Pt=this._options;const en=Wt.find((Wt=>{if(Pt.serverNoContextTakeover===false&&Wt.server_no_context_takeover||Wt.server_max_window_bits&&(Pt.serverMaxWindowBits===false||typeof Pt.serverMaxWindowBits==="number"&&Pt.serverMaxWindowBits>Wt.server_max_window_bits)||typeof Pt.clientMaxWindowBits==="number"&&!Wt.client_max_window_bits){return false}return true}));if(!en){throw new Error("None of the extension offers can be accepted")}if(Pt.serverNoContextTakeover){en.server_no_context_takeover=true}if(Pt.clientNoContextTakeover){en.client_no_context_takeover=true}if(typeof Pt.serverMaxWindowBits==="number"){en.server_max_window_bits=Pt.serverMaxWindowBits}if(typeof Pt.clientMaxWindowBits==="number"){en.client_max_window_bits=Pt.clientMaxWindowBits}else if(en.client_max_window_bits===true||Pt.clientMaxWindowBits===false){delete en.client_max_window_bits}return en}acceptAsClient(Wt){const Pt=Wt[0];if(this._options.clientNoContextTakeover===false&&Pt.client_no_context_takeover){throw new Error('Unexpected parameter "client_no_context_takeover"')}if(!Pt.client_max_window_bits){if(typeof this._options.clientMaxWindowBits==="number"){Pt.client_max_window_bits=this._options.clientMaxWindowBits}}else if(this._options.clientMaxWindowBits===false||typeof this._options.clientMaxWindowBits==="number"&&Pt.client_max_window_bits>this._options.clientMaxWindowBits){throw new Error('Unexpected or invalid parameter "client_max_window_bits"')}return Pt}normalizeParams(Wt){Wt.forEach((Wt=>{Object.keys(Wt).forEach((Pt=>{let en=Wt[Pt];if(en.length>1){throw new Error(`Parameter "${Pt}" must have only a single value`)}en=en[0];if(Pt==="client_max_window_bits"){if(en!==true){const Wt=+en;if(!Number.isInteger(Wt)||Wt<8||Wt>15){throw new TypeError(`Invalid value for parameter "${Pt}": ${en}`)}en=Wt}else if(!this._isServer){throw new TypeError(`Invalid value for parameter "${Pt}": ${en}`)}}else if(Pt==="server_max_window_bits"){const Wt=+en;if(!Number.isInteger(Wt)||Wt<8||Wt>15){throw new TypeError(`Invalid value for parameter "${Pt}": ${en}`)}en=Wt}else if(Pt==="client_no_context_takeover"||Pt==="server_no_context_takeover"){if(en!==true){throw new TypeError(`Invalid value for parameter "${Pt}": ${en}`)}}else{throw new Error(`Unknown parameter "${Pt}"`)}Wt[Pt]=en}))}));return Wt}decompress(Wt,Pt,en){mn.add((tn=>{this._decompress(Wt,Pt,((Wt,Pt)=>{tn();en(Wt,Pt)}))}))}compress(Wt,Pt,en){mn.add((tn=>{this._compress(Wt,Pt,((Wt,Pt)=>{tn();en(Wt,Pt)}))}))}_decompress(Wt,Pt,en){const an=this._isServer?"client":"server";if(!this._inflate){const Wt=`${an}_max_window_bits`;const Pt=typeof this.params[Wt]!=="number"?tn.Z_DEFAULT_WINDOWBITS:this.params[Wt];this._inflate=tn.createInflateRaw({...this._options.zlibInflateOptions,windowBits:Pt});this._inflate[on]=this;this._inflate[cn]=0;this._inflate[un]=[];this._inflate.on("error",inflateOnError);this._inflate.on("data",inflateOnData)}this._inflate[dn]=en;this._inflate.write(Wt);if(Pt)this._inflate.write(sn);this._inflate.flush((()=>{const Wt=this._inflate[pn];if(Wt){this._inflate.close();this._inflate=null;en(Wt);return}const tn=nn.concat(this._inflate[un],this._inflate[cn]);if(this._inflate._readableState.endEmitted){this._inflate.close();this._inflate=null}else{this._inflate[cn]=0;this._inflate[un]=[];if(Pt&&this.params[`${an}_no_context_takeover`]){this._inflate.reset()}}en(null,tn)}))}_compress(Wt,Pt,en){const an=this._isServer?"server":"client";if(!this._deflate){const Wt=`${an}_max_window_bits`;const Pt=typeof this.params[Wt]!=="number"?tn.Z_DEFAULT_WINDOWBITS:this.params[Wt];this._deflate=tn.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:Pt});this._deflate[cn]=0;this._deflate[un]=[];this._deflate.on("error",In);this._deflate.on("data",deflateOnData)}this._deflate[dn]=en;this._deflate.write(Wt);this._deflate.flush(tn.Z_SYNC_FLUSH,(()=>{if(!this._deflate){return}let Wt=nn.concat(this._deflate[un],this._deflate[cn]);if(Pt)Wt=Wt.slice(0,Wt.length-4);this._deflate[dn]=null;this._deflate[cn]=0;this._deflate[un]=[];if(Pt&&this.params[`${an}_no_context_takeover`]){this._deflate.reset()}en(null,Wt)}))}}Wt.exports=PerMessageDeflate;function deflateOnData(Wt){this[un].push(Wt);this[cn]+=Wt.length}function inflateOnData(Wt){this[cn]+=Wt.length;if(this[on]._maxPayload<1||this[cn]<=this[on]._maxPayload){this[un].push(Wt);return}this[pn]=new RangeError("Max payload size exceeded");this[pn][rn]=1009;this.removeListener("data",inflateOnData);this.reset()}function inflateOnError(Wt){this[on]._inflate=null;Wt[rn]=1007;this[dn](Wt)}},18508:(Wt,Pt,en)=>{"use strict";const{Writable:tn}=en(2203);const nn=en(88389);const{BINARY_TYPES:an,EMPTY_BUFFER:rn,kStatusCode:In,kWebSocket:sn}=en(83400);const{concat:on,toArrayBuffer:cn,unmask:dn}=en(17932);const{isValidStatusCode:un,isValidUTF8:pn}=en(91802);const mn=0;const bn=1;const Gn=2;const hn=3;const Zn=4;const An=5;class Receiver extends tn{constructor(Wt,Pt,en,tn){super();this._binaryType=Wt||an[0];this[sn]=undefined;this._extensions=Pt||{};this._isServer=!!en;this._maxPayload=tn|0;this._bufferedBytes=0;this._buffers=[];this._compressed=false;this._payloadLength=0;this._mask=undefined;this._fragmented=0;this._masked=false;this._fin=false;this._opcode=0;this._totalPayloadLength=0;this._messageLength=0;this._fragments=[];this._state=mn;this._loop=false}_write(Wt,Pt,en){if(this._opcode===8&&this._state==mn)return en();this._bufferedBytes+=Wt.length;this._buffers.push(Wt);this.startLoop(en)}consume(Wt){this._bufferedBytes-=Wt;if(Wt===this._buffers[0].length)return this._buffers.shift();if(Wt=en.length){Pt.set(this._buffers.shift(),tn)}else{Pt.set(new Uint8Array(en.buffer,en.byteOffset,Wt),tn);this._buffers[0]=en.slice(Wt)}Wt-=en.length}while(Wt>0);return Pt}startLoop(Wt){let Pt;this._loop=true;do{switch(this._state){case mn:Pt=this.getInfo();break;case bn:Pt=this.getPayloadLength16();break;case Gn:Pt=this.getPayloadLength64();break;case hn:this.getMask();break;case Zn:Pt=this.getData(Wt);break;default:this._loop=false;return}}while(this._loop);Wt(Pt)}getInfo(){if(this._bufferedBytes<2){this._loop=false;return}const Wt=this.consume(2);if((Wt[0]&48)!==0){this._loop=false;return error(RangeError,"RSV2 and RSV3 must be clear",true,1002)}const Pt=(Wt[0]&64)===64;if(Pt&&!this._extensions[nn.extensionName]){this._loop=false;return error(RangeError,"RSV1 must be clear",true,1002)}this._fin=(Wt[0]&128)===128;this._opcode=Wt[0]&15;this._payloadLength=Wt[1]&127;if(this._opcode===0){if(Pt){this._loop=false;return error(RangeError,"RSV1 must be clear",true,1002)}if(!this._fragmented){this._loop=false;return error(RangeError,"invalid opcode 0",true,1002)}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){this._loop=false;return error(RangeError,`invalid opcode ${this._opcode}`,true,1002)}this._compressed=Pt}else if(this._opcode>7&&this._opcode<11){if(!this._fin){this._loop=false;return error(RangeError,"FIN must be set",true,1002)}if(Pt){this._loop=false;return error(RangeError,"RSV1 must be clear",true,1002)}if(this._payloadLength>125){this._loop=false;return error(RangeError,`invalid payload length ${this._payloadLength}`,true,1002)}}else{this._loop=false;return error(RangeError,`invalid opcode ${this._opcode}`,true,1002)}if(!this._fin&&!this._fragmented)this._fragmented=this._opcode;this._masked=(Wt[1]&128)===128;if(this._isServer){if(!this._masked){this._loop=false;return error(RangeError,"MASK must be set",true,1002)}}else if(this._masked){this._loop=false;return error(RangeError,"MASK must be clear",true,1002)}if(this._payloadLength===126)this._state=bn;else if(this._payloadLength===127)this._state=Gn;else return this.haveLength()}getPayloadLength16(){if(this._bufferedBytes<2){this._loop=false;return}this._payloadLength=this.consume(2).readUInt16BE(0);return this.haveLength()}getPayloadLength64(){if(this._bufferedBytes<8){this._loop=false;return}const Wt=this.consume(8);const Pt=Wt.readUInt32BE(0);if(Pt>Math.pow(2,53-32)-1){this._loop=false;return error(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",false,1009)}this._payloadLength=Pt*Math.pow(2,32)+Wt.readUInt32BE(4);return this.haveLength()}haveLength(){if(this._payloadLength&&this._opcode<8){this._totalPayloadLength+=this._payloadLength;if(this._totalPayloadLength>this._maxPayload&&this._maxPayload>0){this._loop=false;return error(RangeError,"Max payload size exceeded",false,1009)}}if(this._masked)this._state=hn;else this._state=Zn}getMask(){if(this._bufferedBytes<4){this._loop=false;return}this._mask=this.consume(4);this._state=Zn}getData(Wt){let Pt=rn;if(this._payloadLength){if(this._bufferedBytes7)return this.controlMessage(Pt);if(this._compressed){this._state=An;this.decompress(Pt,Wt);return}if(Pt.length){this._messageLength=this._totalPayloadLength;this._fragments.push(Pt)}return this.dataMessage()}decompress(Wt,Pt){const en=this._extensions[nn.extensionName];en.decompress(Wt,this._fin,((Wt,en)=>{if(Wt)return Pt(Wt);if(en.length){this._messageLength+=en.length;if(this._messageLength>this._maxPayload&&this._maxPayload>0){return Pt(error(RangeError,"Max payload size exceeded",false,1009))}this._fragments.push(en)}const tn=this.dataMessage();if(tn)return Pt(tn);this.startLoop(Pt)}))}dataMessage(){if(this._fin){const Wt=this._messageLength;const Pt=this._fragments;this._totalPayloadLength=0;this._messageLength=0;this._fragmented=0;this._fragments=[];if(this._opcode===2){let en;if(this._binaryType==="nodebuffer"){en=on(Pt,Wt)}else if(this._binaryType==="arraybuffer"){en=cn(on(Pt,Wt))}else{en=Pt}this.emit("message",en)}else{const en=on(Pt,Wt);if(!pn(en)){this._loop=false;return error(Error,"invalid UTF-8 sequence",true,1007)}this.emit("message",en.toString())}}this._state=mn}controlMessage(Wt){if(this._opcode===8){this._loop=false;if(Wt.length===0){this.emit("conclude",1005,"");this.end()}else if(Wt.length===1){return error(RangeError,"invalid payload length 1",true,1002)}else{const Pt=Wt.readUInt16BE(0);if(!un(Pt)){return error(RangeError,`invalid status code ${Pt}`,true,1002)}const en=Wt.slice(2);if(!pn(en)){return error(Error,"invalid UTF-8 sequence",true,1007)}this.emit("conclude",Pt,en.toString());this.end()}}else if(this._opcode===9){this.emit("ping",Wt)}else{this.emit("pong",Wt)}this._state=mn}}Wt.exports=Receiver;function error(Wt,Pt,en,tn){const nn=new Wt(en?`Invalid WebSocket frame: ${Pt}`:Pt);Error.captureStackTrace(nn,error);nn[In]=tn;return nn}},31780:(Wt,Pt,en)=>{"use strict";const{randomFillSync:tn}=en(76982);const nn=en(88389);const{EMPTY_BUFFER:an}=en(83400);const{isValidStatusCode:rn}=en(91802);const{mask:In,toBuffer:sn}=en(17932);const on=Buffer.alloc(4);class Sender{constructor(Wt,Pt){this._extensions=Pt||{};this._socket=Wt;this._firstFragment=true;this._compress=false;this._bufferedBytes=0;this._deflating=false;this._queue=[]}static frame(Wt,Pt){const en=Pt.mask&&Pt.readOnly;let nn=Pt.mask?6:2;let an=Wt.length;if(Wt.length>=65536){nn+=8;an=127}else if(Wt.length>125){nn+=2;an=126}const rn=Buffer.allocUnsafe(en?Wt.length+nn:nn);rn[0]=Pt.fin?Pt.opcode|128:Pt.opcode;if(Pt.rsv1)rn[0]|=64;rn[1]=an;if(an===126){rn.writeUInt16BE(Wt.length,2)}else if(an===127){rn.writeUInt32BE(0,2);rn.writeUInt32BE(Wt.length,6)}if(!Pt.mask)return[rn,Wt];tn(on,0,4);rn[1]|=128;rn[nn-4]=on[0];rn[nn-3]=on[1];rn[nn-2]=on[2];rn[nn-1]=on[3];if(en){In(Wt,on,rn,nn,Wt.length);return[rn]}In(Wt,on,Wt,0,Wt.length);return[rn,Wt]}close(Wt,Pt,en,tn){let nn;if(Wt===undefined){nn=an}else if(typeof Wt!=="number"||!rn(Wt)){throw new TypeError("First argument must be a valid error code number")}else if(Pt===undefined||Pt===""){nn=Buffer.allocUnsafe(2);nn.writeUInt16BE(Wt,0)}else{const en=Buffer.byteLength(Pt);if(en>123){throw new RangeError("The message must not be greater than 123 bytes")}nn=Buffer.allocUnsafe(2+en);nn.writeUInt16BE(Wt,0);nn.write(Pt,2)}if(this._deflating){this.enqueue([this.doClose,nn,en,tn])}else{this.doClose(nn,en,tn)}}doClose(Wt,Pt,en){this.sendFrame(Sender.frame(Wt,{fin:true,rsv1:false,opcode:8,mask:Pt,readOnly:false}),en)}ping(Wt,Pt,en){const tn=sn(Wt);if(tn.length>125){throw new RangeError("The data size must not be greater than 125 bytes")}if(this._deflating){this.enqueue([this.doPing,tn,Pt,sn.readOnly,en])}else{this.doPing(tn,Pt,sn.readOnly,en)}}doPing(Wt,Pt,en,tn){this.sendFrame(Sender.frame(Wt,{fin:true,rsv1:false,opcode:9,mask:Pt,readOnly:en}),tn)}pong(Wt,Pt,en){const tn=sn(Wt);if(tn.length>125){throw new RangeError("The data size must not be greater than 125 bytes")}if(this._deflating){this.enqueue([this.doPong,tn,Pt,sn.readOnly,en])}else{this.doPong(tn,Pt,sn.readOnly,en)}}doPong(Wt,Pt,en,tn){this.sendFrame(Sender.frame(Wt,{fin:true,rsv1:false,opcode:10,mask:Pt,readOnly:en}),tn)}send(Wt,Pt,en){const tn=sn(Wt);const an=this._extensions[nn.extensionName];let rn=Pt.binary?2:1;let In=Pt.compress;if(this._firstFragment){this._firstFragment=false;if(In&&an){In=tn.length>=an._threshold}this._compress=In}else{In=false;rn=0}if(Pt.fin)this._firstFragment=true;if(an){const Wt={fin:Pt.fin,rsv1:In,opcode:rn,mask:Pt.mask,readOnly:sn.readOnly};if(this._deflating){this.enqueue([this.dispatch,tn,this._compress,Wt,en])}else{this.dispatch(tn,this._compress,Wt,en)}}else{this.sendFrame(Sender.frame(tn,{fin:Pt.fin,rsv1:false,opcode:rn,mask:Pt.mask,readOnly:sn.readOnly}),en)}}dispatch(Wt,Pt,en,tn){if(!Pt){this.sendFrame(Sender.frame(Wt,en),tn);return}const an=this._extensions[nn.extensionName];this._bufferedBytes+=Wt.length;this._deflating=true;an.compress(Wt,en.fin,((Pt,nn)=>{if(this._socket.destroyed){const Wt=new Error("The socket was closed while data was being compressed");if(typeof tn==="function")tn(Wt);for(let Pt=0;Pt{"use strict";const{Duplex:tn}=en(2203);function emitClose(Wt){Wt.emit("close")}function duplexOnEnd(){if(!this.destroyed&&this._writableState.finished){this.destroy()}}function duplexOnError(Wt){this.removeListener("error",duplexOnError);this.destroy();if(this.listenerCount("error")===0){this.emit("error",Wt)}}function createWebSocketStream(Wt,Pt){let en=true;function receiverOnDrain(){if(en)Wt._socket.resume()}if(Wt.readyState===Wt.CONNECTING){Wt.once("open",(function open(){Wt._receiver.removeAllListeners("drain");Wt._receiver.on("drain",receiverOnDrain)}))}else{Wt._receiver.removeAllListeners("drain");Wt._receiver.on("drain",receiverOnDrain)}const nn=new tn({...Pt,autoDestroy:false,emitClose:false,objectMode:false,writableObjectMode:false});Wt.on("message",(function message(Pt){if(!nn.push(Pt)){en=false;Wt._socket.pause()}}));Wt.once("error",(function error(Wt){if(nn.destroyed)return;nn.destroy(Wt)}));Wt.once("close",(function close(){if(nn.destroyed)return;nn.push(null)}));nn._destroy=function(Pt,en){if(Wt.readyState===Wt.CLOSED){en(Pt);process.nextTick(emitClose,nn);return}let tn=false;Wt.once("error",(function error(Wt){tn=true;en(Wt)}));Wt.once("close",(function close(){if(!tn)en(Pt);process.nextTick(emitClose,nn)}));Wt.terminate()};nn._final=function(Pt){if(Wt.readyState===Wt.CONNECTING){Wt.once("open",(function open(){nn._final(Pt)}));return}if(Wt._socket===null)return;if(Wt._socket._writableState.finished){Pt();if(nn._readableState.endEmitted)nn.destroy()}else{Wt._socket.once("finish",(function finish(){Pt()}));Wt.close()}};nn._read=function(){if(Wt.readyState===Wt.OPEN&&!en){en=true;if(!Wt._receiver._writableState.needDrain)Wt._socket.resume()}};nn._write=function(Pt,en,tn){if(Wt.readyState===Wt.CONNECTING){Wt.once("open",(function open(){nn._write(Pt,en,tn)}));return}Wt.send(Pt,tn)};nn.on("end",duplexOnEnd);nn.on("error",duplexOnError);return nn}Wt.exports=createWebSocketStream},91802:(Wt,Pt,en)=>{"use strict";function isValidStatusCode(Wt){return Wt>=1e3&&Wt<=1014&&Wt!==1004&&Wt!==1005&&Wt!==1006||Wt>=3e3&&Wt<=4999}function _isValidUTF8(Wt){const Pt=Wt.length;let en=0;while(en=Pt||(Wt[en+1]&192)!==128||(Wt[en+2]&192)!==128||Wt[en]===224&&(Wt[en+1]&224)===128||Wt[en]===237&&(Wt[en+1]&224)===160){return false}en+=3}else if((Wt[en]&248)===240){if(en+3>=Pt||(Wt[en+1]&192)!==128||(Wt[en+2]&192)!==128||(Wt[en+3]&192)!==128||Wt[en]===240&&(Wt[en+1]&240)===128||Wt[en]===244&&Wt[en+1]>143||Wt[en]>244){return false}en+=4}else{return false}}return true}try{let Pt=en(62414);if(typeof Pt==="object"){Pt=Pt.Validation.isValidUTF8}Wt.exports={isValidStatusCode:isValidStatusCode,isValidUTF8(Wt){return Wt.length<150?_isValidUTF8(Wt):Pt(Wt)}}}catch(Pt){Wt.exports={isValidStatusCode:isValidStatusCode,isValidUTF8:_isValidUTF8}}},72672:(Wt,Pt,en)=>{"use strict";const tn=en(24434);const{createHash:nn}=en(76982);const{createServer:an,STATUS_CODES:rn}=en(58611);const In=en(88389);const sn=en(9462);const{format:on,parse:cn}=en(34752);const{GUID:dn,kWebSocket:un}=en(83400);const pn=/^[+/0-9A-Za-z]{22}==$/;class WebSocketServer extends tn{constructor(Wt,Pt){super();Wt={maxPayload:100*1024*1024,perMessageDeflate:false,handleProtocols:null,clientTracking:true,verifyClient:null,noServer:false,backlog:null,server:null,host:null,path:null,port:null,...Wt};if(Wt.port==null&&!Wt.server&&!Wt.noServer){throw new TypeError('One of the "port", "server", or "noServer" options must be specified')}if(Wt.port!=null){this._server=an(((Wt,Pt)=>{const en=rn[426];Pt.writeHead(426,{"Content-Length":en.length,"Content-Type":"text/plain"});Pt.end(en)}));this._server.listen(Wt.port,Wt.host,Wt.backlog,Pt)}else if(Wt.server){this._server=Wt.server}if(this._server){const Wt=this.emit.bind(this,"connection");this._removeListeners=addListeners(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(Pt,en,tn)=>{this.handleUpgrade(Pt,en,tn,Wt)}})}if(Wt.perMessageDeflate===true)Wt.perMessageDeflate={};if(Wt.clientTracking)this.clients=new Set;this.options=Wt}address(){if(this.options.noServer){throw new Error('The server is operating in "noServer" mode')}if(!this._server)return null;return this._server.address()}close(Wt){if(Wt)this.once("close",Wt);if(this.clients){for(const Wt of this.clients)Wt.terminate()}const Pt=this._server;if(Pt){this._removeListeners();this._removeListeners=this._server=null;if(this.options.port!=null){Pt.close((()=>this.emit("close")));return}}process.nextTick(emitClose,this)}shouldHandle(Wt){if(this.options.path){const Pt=Wt.url.indexOf("?");const en=Pt!==-1?Wt.url.slice(0,Pt):Wt.url;if(en!==this.options.path)return false}return true}handleUpgrade(Wt,Pt,en,tn){Pt.on("error",socketOnError);const nn=Wt.headers["sec-websocket-key"]!==undefined?Wt.headers["sec-websocket-key"].trim():false;const an=+Wt.headers["sec-websocket-version"];const rn={};if(Wt.method!=="GET"||Wt.headers.upgrade.toLowerCase()!=="websocket"||!nn||!pn.test(nn)||an!==8&&an!==13||!this.shouldHandle(Wt)){return abortHandshake(Pt,400)}if(this.options.perMessageDeflate){const en=new In(this.options.perMessageDeflate,true,this.options.maxPayload);try{const Pt=cn(Wt.headers["sec-websocket-extensions"]);if(Pt[In.extensionName]){en.accept(Pt[In.extensionName]);rn[In.extensionName]=en}}catch(Wt){return abortHandshake(Pt,400)}}if(this.options.verifyClient){const In={origin:Wt.headers[`${an===8?"sec-websocket-origin":"origin"}`],secure:!!(Wt.socket.authorized||Wt.socket.encrypted),req:Wt};if(this.options.verifyClient.length===2){this.options.verifyClient(In,((an,In,sn,on)=>{if(!an){return abortHandshake(Pt,In||401,sn,on)}this.completeUpgrade(nn,rn,Wt,Pt,en,tn)}));return}if(!this.options.verifyClient(In))return abortHandshake(Pt,401)}this.completeUpgrade(nn,rn,Wt,Pt,en,tn)}completeUpgrade(Wt,Pt,en,tn,an,rn){if(!tn.readable||!tn.writable)return tn.destroy();if(tn[un]){throw new Error("server.handleUpgrade() was called more than once with the same "+"socket, possibly due to a misconfiguration")}const cn=nn("sha1").update(Wt+dn).digest("base64");const pn=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${cn}`];const mn=new sn(null);let bn=en.headers["sec-websocket-protocol"];if(bn){bn=bn.split(",").map(trim);if(this.options.handleProtocols){bn=this.options.handleProtocols(bn,en)}else{bn=bn[0]}if(bn){pn.push(`Sec-WebSocket-Protocol: ${bn}`);mn._protocol=bn}}if(Pt[In.extensionName]){const Wt=Pt[In.extensionName].params;const en=on({[In.extensionName]:[Wt]});pn.push(`Sec-WebSocket-Extensions: ${en}`);mn._extensions=Pt}this.emit("headers",pn,en);tn.write(pn.concat("\r\n").join("\r\n"));tn.removeListener("error",socketOnError);mn.setSocket(tn,an,this.options.maxPayload);if(this.clients){this.clients.add(mn);mn.on("close",(()=>this.clients.delete(mn)))}rn(mn,en)}}Wt.exports=WebSocketServer;function addListeners(Wt,Pt){for(const en of Object.keys(Pt))Wt.on(en,Pt[en]);return function removeListeners(){for(const en of Object.keys(Pt)){Wt.removeListener(en,Pt[en])}}}function emitClose(Wt){Wt.emit("close")}function socketOnError(){this.destroy()}function abortHandshake(Wt,Pt,en,tn){if(Wt.writable){en=en||rn[Pt];tn={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(en),...tn};Wt.write(`HTTP/1.1 ${Pt} ${rn[Pt]}\r\n`+Object.keys(tn).map((Wt=>`${Wt}: ${tn[Wt]}`)).join("\r\n")+"\r\n\r\n"+en)}Wt.removeListener("error",socketOnError);Wt.destroy()}function trim(Wt){return Wt.trim()}},9462:(Wt,Pt,en)=>{"use strict";const tn=en(24434);const nn=en(65692);const an=en(58611);const rn=en(69278);const In=en(64756);const{randomBytes:sn,createHash:on}=en(76982);const{URL:cn}=en(87016);const dn=en(88389);const un=en(18508);const pn=en(31780);const{BINARY_TYPES:mn,EMPTY_BUFFER:bn,GUID:Gn,kStatusCode:hn,kWebSocket:Zn,NOOP:An}=en(83400);const{addEventListener:Wn,removeEventListener:Nn}=en(92755);const{format:gn,parse:yn}=en(34752);const{toBuffer:vn}=en(17932);const Yn=["CONNECTING","OPEN","CLOSING","CLOSED"];const En=[8,13];const Vn=30*1e3;class WebSocket extends tn{constructor(Wt,Pt,en){super();this._binaryType=mn[0];this._closeCode=1006;this._closeFrameReceived=false;this._closeFrameSent=false;this._closeMessage="";this._closeTimer=null;this._extensions={};this._protocol="";this._readyState=WebSocket.CONNECTING;this._receiver=null;this._sender=null;this._socket=null;if(Wt!==null){this._bufferedAmount=0;this._isServer=false;this._redirects=0;if(Array.isArray(Pt)){Pt=Pt.join(", ")}else if(typeof Pt==="object"&&Pt!==null){en=Pt;Pt=undefined}initAsClient(this,Wt,Pt,en)}else{this._isServer=true}}get binaryType(){return this._binaryType}set binaryType(Wt){if(!mn.includes(Wt))return;this._binaryType=Wt;if(this._receiver)this._receiver._binaryType=Wt}get bufferedAmount(){if(!this._socket)return this._bufferedAmount;return this._socket._writableState.length+this._sender._bufferedBytes}get extensions(){return Object.keys(this._extensions).join()}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(Wt,Pt,en){const tn=new un(this.binaryType,this._extensions,this._isServer,en);this._sender=new pn(Wt,this._extensions);this._receiver=tn;this._socket=Wt;tn[Zn]=this;Wt[Zn]=this;tn.on("conclude",receiverOnConclude);tn.on("drain",receiverOnDrain);tn.on("error",receiverOnError);tn.on("message",receiverOnMessage);tn.on("ping",receiverOnPing);tn.on("pong",receiverOnPong);Wt.setTimeout(0);Wt.setNoDelay();if(Pt.length>0)Wt.unshift(Pt);Wt.on("close",socketOnClose);Wt.on("data",socketOnData);Wt.on("end",socketOnEnd);Wt.on("error",socketOnError);this._readyState=WebSocket.OPEN;this.emit("open")}emitClose(){if(!this._socket){this._readyState=WebSocket.CLOSED;this.emit("close",this._closeCode,this._closeMessage);return}if(this._extensions[dn.extensionName]){this._extensions[dn.extensionName].cleanup()}this._receiver.removeAllListeners();this._readyState=WebSocket.CLOSED;this.emit("close",this._closeCode,this._closeMessage)}close(Wt,Pt){if(this.readyState===WebSocket.CLOSED)return;if(this.readyState===WebSocket.CONNECTING){const Wt="WebSocket was closed before the connection was established";return abortHandshake(this,this._req,Wt)}if(this.readyState===WebSocket.CLOSING){if(this._closeFrameSent&&this._closeFrameReceived)this._socket.end();return}this._readyState=WebSocket.CLOSING;this._sender.close(Wt,Pt,!this._isServer,(Wt=>{if(Wt)return;this._closeFrameSent=true;if(this._closeFrameReceived)this._socket.end()}));this._closeTimer=setTimeout(this._socket.destroy.bind(this._socket),Vn)}ping(Wt,Pt,en){if(this.readyState===WebSocket.CONNECTING){throw new Error("WebSocket is not open: readyState 0 (CONNECTING)")}if(typeof Wt==="function"){en=Wt;Wt=Pt=undefined}else if(typeof Pt==="function"){en=Pt;Pt=undefined}if(typeof Wt==="number")Wt=Wt.toString();if(this.readyState!==WebSocket.OPEN){sendAfterClose(this,Wt,en);return}if(Pt===undefined)Pt=!this._isServer;this._sender.ping(Wt||bn,Pt,en)}pong(Wt,Pt,en){if(this.readyState===WebSocket.CONNECTING){throw new Error("WebSocket is not open: readyState 0 (CONNECTING)")}if(typeof Wt==="function"){en=Wt;Wt=Pt=undefined}else if(typeof Pt==="function"){en=Pt;Pt=undefined}if(typeof Wt==="number")Wt=Wt.toString();if(this.readyState!==WebSocket.OPEN){sendAfterClose(this,Wt,en);return}if(Pt===undefined)Pt=!this._isServer;this._sender.pong(Wt||bn,Pt,en)}send(Wt,Pt,en){if(this.readyState===WebSocket.CONNECTING){throw new Error("WebSocket is not open: readyState 0 (CONNECTING)")}if(typeof Pt==="function"){en=Pt;Pt={}}if(typeof Wt==="number")Wt=Wt.toString();if(this.readyState!==WebSocket.OPEN){sendAfterClose(this,Wt,en);return}const tn={binary:typeof Wt!=="string",mask:!this._isServer,compress:true,fin:true,...Pt};if(!this._extensions[dn.extensionName]){tn.compress=false}this._sender.send(Wt||bn,tn,en)}terminate(){if(this.readyState===WebSocket.CLOSED)return;if(this.readyState===WebSocket.CONNECTING){const Wt="WebSocket was closed before the connection was established";return abortHandshake(this,this._req,Wt)}if(this._socket){this._readyState=WebSocket.CLOSING;this._socket.destroy()}}}Yn.forEach(((Wt,Pt)=>{const en={enumerable:true,value:Pt};Object.defineProperty(WebSocket.prototype,Wt,en);Object.defineProperty(WebSocket,Wt,en)}));["binaryType","bufferedAmount","extensions","protocol","readyState","url"].forEach((Wt=>{Object.defineProperty(WebSocket.prototype,Wt,{enumerable:true})}));["open","error","close","message"].forEach((Wt=>{Object.defineProperty(WebSocket.prototype,`on${Wt}`,{configurable:true,enumerable:true,get(){const Pt=this.listeners(Wt);for(let Wt=0;Wt{abortHandshake(Wt,An,"Opening handshake has timed out")}))}An.on("error",(Pt=>{if(An===null||An.aborted)return;An=Wt._req=null;Wt._readyState=WebSocket.CLOSING;Wt.emit("error",Pt);Wt.emitClose()}));An.on("response",(nn=>{const an=nn.headers.location;const In=nn.statusCode;if(an&&rn.followRedirects&&In>=300&&In<400){if(++Wt._redirects>rn.maxRedirects){abortHandshake(Wt,An,"Maximum redirects exceeded");return}An.abort();const nn=new cn(an,Pt);initAsClient(Wt,nn,en,tn)}else if(!Wt.emit("unexpected-response",An,nn)){abortHandshake(Wt,An,`Unexpected server response: ${nn.statusCode}`)}}));An.on("upgrade",((Pt,tn,nn)=>{Wt.emit("upgrade",Pt);if(Wt.readyState!==WebSocket.CONNECTING)return;An=Wt._req=null;const an=on("sha1").update(bn+Gn).digest("base64");if(Pt.headers["sec-websocket-accept"]!==an){abortHandshake(Wt,tn,"Invalid Sec-WebSocket-Accept header");return}const In=Pt.headers["sec-websocket-protocol"];const sn=(en||"").split(/, */);let cn;if(!en&&In){cn="Server sent a subprotocol but none was requested"}else if(en&&!In){cn="Server sent no subprotocol"}else if(In&&!sn.includes(In)){cn="Server sent an invalid subprotocol"}if(cn){abortHandshake(Wt,tn,cn);return}if(In)Wt._protocol=In;if(Zn){try{const en=yn(Pt.headers["sec-websocket-extensions"]);if(en[dn.extensionName]){Zn.accept(en[dn.extensionName]);Wt._extensions[dn.extensionName]=Zn}}catch(Pt){abortHandshake(Wt,tn,"Invalid Sec-WebSocket-Extensions header");return}}Wt.setSocket(tn,nn,rn.maxPayload)}))}function netConnect(Wt){Wt.path=Wt.socketPath;return rn.connect(Wt)}function tlsConnect(Wt){Wt.path=undefined;if(!Wt.servername&&Wt.servername!==""){Wt.servername=rn.isIP(Wt.host)?"":Wt.host}return In.connect(Wt)}function abortHandshake(Wt,Pt,en){Wt._readyState=WebSocket.CLOSING;const tn=new Error(en);Error.captureStackTrace(tn,abortHandshake);if(Pt.setHeader){Pt.abort();if(Pt.socket&&!Pt.socket.destroyed){Pt.socket.destroy()}Pt.once("abort",Wt.emitClose.bind(Wt));Wt.emit("error",tn)}else{Pt.destroy(tn);Pt.once("error",Wt.emit.bind(Wt,"error"));Pt.once("close",Wt.emitClose.bind(Wt))}}function sendAfterClose(Wt,Pt,en){if(Pt){const en=vn(Pt).length;if(Wt._socket)Wt._sender._bufferedBytes+=en;else Wt._bufferedAmount+=en}if(en){const Pt=new Error(`WebSocket is not open: readyState ${Wt.readyState} `+`(${Yn[Wt.readyState]})`);en(Pt)}}function receiverOnConclude(Wt,Pt){const en=this[Zn];en._socket.removeListener("data",socketOnData);en._socket.resume();en._closeFrameReceived=true;en._closeMessage=Pt;en._closeCode=Wt;if(Wt===1005)en.close();else en.close(Wt,Pt)}function receiverOnDrain(){this[Zn]._socket.resume()}function receiverOnError(Wt){const Pt=this[Zn];Pt._socket.removeListener("data",socketOnData);Pt._readyState=WebSocket.CLOSING;Pt._closeCode=Wt[hn];Pt.emit("error",Wt);Pt._socket.destroy()}function receiverOnFinish(){this[Zn].emitClose()}function receiverOnMessage(Wt){this[Zn].emit("message",Wt)}function receiverOnPing(Wt){const Pt=this[Zn];Pt.pong(Wt,!Pt._isServer,An);Pt.emit("ping",Wt)}function receiverOnPong(Wt){this[Zn].emit("pong",Wt)}function socketOnClose(){const Wt=this[Zn];this.removeListener("close",socketOnClose);this.removeListener("end",socketOnEnd);Wt._readyState=WebSocket.CLOSING;Wt._socket.read();Wt._receiver.end();this.removeListener("data",socketOnData);this[Zn]=undefined;clearTimeout(Wt._closeTimer);if(Wt._receiver._writableState.finished||Wt._receiver._writableState.errorEmitted){Wt.emitClose()}else{Wt._receiver.on("error",receiverOnFinish);Wt._receiver.on("finish",receiverOnFinish)}}function socketOnData(Wt){if(!this[Zn]._receiver.write(Wt)){this.pause()}}function socketOnEnd(){const Wt=this[Zn];Wt._readyState=WebSocket.CLOSING;Wt._receiver.end();this.end()}function socketOnError(){const Wt=this[Zn];this.removeListener("error",socketOnError);this.on("error",An);if(Wt){Wt._readyState=WebSocket.CLOSING;this.destroy()}}},53728:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.shuffled=Pt.randomBytes=void 0;var tn=en(90005);Object.defineProperty(Pt,"randomBytes",{enumerable:true,get:function(){return tn.randomBytes}});var nn=en(61081);Object.defineProperty(Pt,"shuffled",{enumerable:true,get:function(){return nn.shuffled}})},90005:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.randomBytes=void 0;var tn=en(76982);var nn=en(42006);function randomBytes(Wt){return(0,nn.arrayify)((0,tn.randomBytes)(Wt))}Pt.randomBytes=randomBytes},61081:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.shuffled=void 0;function shuffled(Wt){Wt=Wt.slice();for(var Pt=Wt.length-1;Pt>0;Pt--){var en=Math.floor(Math.random()*(Pt+1));var tn=Wt[Pt];Wt[Pt]=Wt[en];Wt[en]=tn}return Wt}Pt.shuffled=shuffled},23852:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="rlp/5.7.0"},37659:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.decode=Pt.encode=void 0;var tn=en(42006);var nn=en(76127);var an=en(23852);var rn=new nn.Logger(an.version);function arrayifyInteger(Wt){var Pt=[];while(Wt){Pt.unshift(Wt&255);Wt>>=8}return Pt}function unarrayifyInteger(Wt,Pt,en){var tn=0;for(var nn=0;nnPt+1+tn){rn.throwError("child data too short",nn.Logger.errors.BUFFER_OVERRUN,{})}}return{consumed:1+tn,result:an}}function _decode(Wt,Pt){if(Wt.length===0){rn.throwError("data too short",nn.Logger.errors.BUFFER_OVERRUN,{})}if(Wt[Pt]>=248){var en=Wt[Pt]-247;if(Pt+1+en>Wt.length){rn.throwError("data short segment too short",nn.Logger.errors.BUFFER_OVERRUN,{})}var an=unarrayifyInteger(Wt,Pt+1,en);if(Pt+1+en+an>Wt.length){rn.throwError("data long segment too short",nn.Logger.errors.BUFFER_OVERRUN,{})}return _decodeChildren(Wt,Pt,Pt+1+en,en+an)}else if(Wt[Pt]>=192){var In=Wt[Pt]-192;if(Pt+1+In>Wt.length){rn.throwError("data array too short",nn.Logger.errors.BUFFER_OVERRUN,{})}return _decodeChildren(Wt,Pt,Pt+1,In)}else if(Wt[Pt]>=184){var en=Wt[Pt]-183;if(Pt+1+en>Wt.length){rn.throwError("data array too short",nn.Logger.errors.BUFFER_OVERRUN,{})}var sn=unarrayifyInteger(Wt,Pt+1,en);if(Pt+1+en+sn>Wt.length){rn.throwError("data array too short",nn.Logger.errors.BUFFER_OVERRUN,{})}var on=(0,tn.hexlify)(Wt.slice(Pt+1+en,Pt+1+en+sn));return{consumed:1+en+sn,result:on}}else if(Wt[Pt]>=128){var cn=Wt[Pt]-128;if(Pt+1+cn>Wt.length){rn.throwError("data too short",nn.Logger.errors.BUFFER_OVERRUN,{})}var on=(0,tn.hexlify)(Wt.slice(Pt+1,Pt+1+cn));return{consumed:1+cn,result:on}}return{consumed:1,result:(0,tn.hexlify)(Wt[Pt])}}function decode(Wt){var Pt=(0,tn.arrayify)(Wt);var en=_decode(Pt,0);if(en.consumed!==Pt.length){rn.throwArgumentError("invalid rlp data","data",Wt)}return en.result}Pt.decode=decode},91888:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="sha2/5.7.0"},66935:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.SupportedAlgorithm=Pt.sha512=Pt.sha256=Pt.ripemd160=Pt.computeHmac=void 0;var tn=en(77943);Object.defineProperty(Pt,"computeHmac",{enumerable:true,get:function(){return tn.computeHmac}});Object.defineProperty(Pt,"ripemd160",{enumerable:true,get:function(){return tn.ripemd160}});Object.defineProperty(Pt,"sha256",{enumerable:true,get:function(){return tn.sha256}});Object.defineProperty(Pt,"sha512",{enumerable:true,get:function(){return tn.sha512}});var nn=en(27310);Object.defineProperty(Pt,"SupportedAlgorithm",{enumerable:true,get:function(){return nn.SupportedAlgorithm}})},77943:function(Wt,Pt,en){"use strict";var tn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt.computeHmac=Pt.sha512=Pt.sha256=Pt.ripemd160=void 0;var nn=en(76982);var an=tn(en(27477));var rn=en(42006);var In=en(27310);var sn=en(76127);var on=en(91888);var cn=new sn.Logger(on.version);function ripemd160(Wt){return"0x"+an.default.ripemd160().update((0,rn.arrayify)(Wt)).digest("hex")}Pt.ripemd160=ripemd160;function sha256(Wt){return"0x"+(0,nn.createHash)("sha256").update(Buffer.from((0,rn.arrayify)(Wt))).digest("hex")}Pt.sha256=sha256;function sha512(Wt){return"0x"+(0,nn.createHash)("sha512").update(Buffer.from((0,rn.arrayify)(Wt))).digest("hex")}Pt.sha512=sha512;function computeHmac(Wt,Pt,en){if(!In.SupportedAlgorithm[Wt]){cn.throwError("unsupported algorithm - "+Wt,sn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"computeHmac",algorithm:Wt})}return"0x"+(0,nn.createHmac)(Wt,Buffer.from((0,rn.arrayify)(Pt))).update(Buffer.from((0,rn.arrayify)(en))).digest("hex")}Pt.computeHmac=computeHmac},27310:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.SupportedAlgorithm=void 0;var en;(function(Wt){Wt["sha256"]="sha256";Wt["sha512"]="sha512"})(en=Pt.SupportedAlgorithm||(Pt.SupportedAlgorithm={}))},53045:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="signing-key/5.7.0"},71848:function(Wt,Pt,en){"use strict";var tn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt.EC=void 0;var nn=tn(en(57034));var an=nn.default.ec;Pt.EC=an},63928:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.computePublicKey=Pt.recoverPublicKey=Pt.SigningKey=void 0;var tn=en(71848);var nn=en(42006);var an=en(61338);var rn=en(76127);var In=en(53045);var sn=new rn.Logger(In.version);var on=null;function getCurve(){if(!on){on=new tn.EC("secp256k1")}return on}var cn=function(){function SigningKey(Wt){(0,an.defineReadOnly)(this,"curve","secp256k1");(0,an.defineReadOnly)(this,"privateKey",(0,nn.hexlify)(Wt));if((0,nn.hexDataLength)(this.privateKey)!==32){sn.throwArgumentError("invalid private key","privateKey","[[ REDACTED ]]")}var Pt=getCurve().keyFromPrivate((0,nn.arrayify)(this.privateKey));(0,an.defineReadOnly)(this,"publicKey","0x"+Pt.getPublic(false,"hex"));(0,an.defineReadOnly)(this,"compressedPublicKey","0x"+Pt.getPublic(true,"hex"));(0,an.defineReadOnly)(this,"_isSigningKey",true)}SigningKey.prototype._addPoint=function(Wt){var Pt=getCurve().keyFromPublic((0,nn.arrayify)(this.publicKey));var en=getCurve().keyFromPublic((0,nn.arrayify)(Wt));return"0x"+Pt.pub.add(en.pub).encodeCompressed("hex")};SigningKey.prototype.signDigest=function(Wt){var Pt=getCurve().keyFromPrivate((0,nn.arrayify)(this.privateKey));var en=(0,nn.arrayify)(Wt);if(en.length!==32){sn.throwArgumentError("bad digest length","digest",Wt)}var tn=Pt.sign(en,{canonical:true});return(0,nn.splitSignature)({recoveryParam:tn.recoveryParam,r:(0,nn.hexZeroPad)("0x"+tn.r.toString(16),32),s:(0,nn.hexZeroPad)("0x"+tn.s.toString(16),32)})};SigningKey.prototype.computeSharedSecret=function(Wt){var Pt=getCurve().keyFromPrivate((0,nn.arrayify)(this.privateKey));var en=getCurve().keyFromPublic((0,nn.arrayify)(computePublicKey(Wt)));return(0,nn.hexZeroPad)("0x"+Pt.derive(en.getPublic()).toString(16),32)};SigningKey.isSigningKey=function(Wt){return!!(Wt&&Wt._isSigningKey)};return SigningKey}();Pt.SigningKey=cn;function recoverPublicKey(Wt,Pt){var en=(0,nn.splitSignature)(Pt);var tn={r:(0,nn.arrayify)(en.r),s:(0,nn.arrayify)(en.s)};return"0x"+getCurve().recoverPubKey((0,nn.arrayify)(Wt),tn,en.recoveryParam).encode("hex",false)}Pt.recoverPublicKey=recoverPublicKey;function computePublicKey(Wt,Pt){var en=(0,nn.arrayify)(Wt);if(en.length===32){var tn=new cn(en);if(Pt){return"0x"+getCurve().keyFromPrivate(en).getPublic(true,"hex")}return tn.publicKey}else if(en.length===33){if(Pt){return(0,nn.hexlify)(en)}return"0x"+getCurve().keyFromPublic(en).getPublic(false,"hex")}else if(en.length===65){if(!Pt){return(0,nn.hexlify)(en)}return"0x"+getCurve().keyFromPublic(en).getPublic(true,"hex")}return sn.throwArgumentError("invalid public or private key","key","[REDACTED]")}Pt.computePublicKey=computePublicKey},31515:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="solidity/5.7.0"},18550:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.sha256=Pt.keccak256=Pt.pack=void 0;var tn=en(18202);var nn=en(42006);var an=en(56938);var rn=en(66935);var In=en(13859);var sn=new RegExp("^bytes([0-9]+)$");var on=new RegExp("^(u?int)([0-9]*)$");var cn=new RegExp("^(.*)\\[([0-9]*)\\]$");var dn="0000000000000000000000000000000000000000000000000000000000000000";var un=en(76127);var pn=en(31515);var mn=new un.Logger(pn.version);function _pack(Wt,Pt,en){switch(Wt){case"address":if(en){return(0,nn.zeroPad)(Pt,32)}return(0,nn.arrayify)(Pt);case"string":return(0,In.toUtf8Bytes)(Pt);case"bytes":return(0,nn.arrayify)(Pt);case"bool":Pt=Pt?"0x01":"0x00";if(en){return(0,nn.zeroPad)(Pt,32)}return(0,nn.arrayify)(Pt)}var an=Wt.match(on);if(an){var rn=parseInt(an[2]||"256");if(an[2]&&String(rn)!==an[2]||rn%8!==0||rn===0||rn>256){mn.throwArgumentError("invalid number type","type",Wt)}if(en){rn=256}Pt=tn.BigNumber.from(Pt).toTwos(rn);return(0,nn.zeroPad)(Pt,rn/8)}an=Wt.match(sn);if(an){var rn=parseInt(an[1]);if(String(rn)!==an[1]||rn===0||rn>32){mn.throwArgumentError("invalid bytes type","type",Wt)}if((0,nn.arrayify)(Pt).byteLength!==rn){mn.throwArgumentError("invalid value for "+Wt,"value",Pt)}if(en){return(0,nn.arrayify)((Pt+dn).substring(0,66))}return Pt}an=Wt.match(cn);if(an&&Array.isArray(Pt)){var un=an[1];var pn=parseInt(an[2]||String(Pt.length));if(pn!=Pt.length){mn.throwArgumentError("invalid array length for "+Wt,"value",Pt)}var bn=[];Pt.forEach((function(Wt){bn.push(_pack(un,Wt,true))}));return(0,nn.concat)(bn)}return mn.throwArgumentError("invalid type","type",Wt)}function pack(Wt,Pt){if(Wt.length!=Pt.length){mn.throwArgumentError("wrong number of values; expected ${ types.length }","values",Pt)}var en=[];Wt.forEach((function(Wt,tn){en.push(_pack(Wt,Pt[tn]))}));return(0,nn.hexlify)((0,nn.concat)(en))}Pt.pack=pack;function keccak256(Wt,Pt){return(0,an.keccak256)(pack(Wt,Pt))}Pt.keccak256=keccak256;function sha256(Wt,Pt){return(0,rn.sha256)(pack(Wt,Pt))}Pt.sha256=sha256},75988:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="strings/5.7.0"},94145:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.parseBytes32String=Pt.formatBytes32String=void 0;var tn=en(99848);var nn=en(42006);var an=en(91996);function formatBytes32String(Wt){var Pt=(0,an.toUtf8Bytes)(Wt);if(Pt.length>31){throw new Error("bytes32 string must be less than 32 bytes")}return(0,nn.hexlify)((0,nn.concat)([Pt,tn.HashZero]).slice(0,32))}Pt.formatBytes32String=formatBytes32String;function parseBytes32String(Wt){var Pt=(0,nn.arrayify)(Wt);if(Pt.length!==32){throw new Error("invalid bytes32 - not 32 bytes long")}if(Pt[31]!==0){throw new Error("invalid bytes32 string - no null terminator")}var en=31;while(Pt[en-1]===0){en--}return(0,an.toUtf8String)(Pt.slice(0,en))}Pt.parseBytes32String=parseBytes32String},1063:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.nameprep=Pt._nameprepTableC=Pt._nameprepTableB2=Pt._nameprepTableA1=void 0;var tn=en(91996);function bytes2(Wt){if(Wt.length%4!==0){throw new Error("bad data")}var Pt=[];for(var en=0;en=en&&Wt<=en+nn.h&&(Wt-en)%(nn.d||1)===0){if(nn.e&&nn.e.indexOf(Wt-en)!==-1){continue}return nn}}return null}var nn=createRangeTable("221,13-1b,5f-,40-10,51-f,11-3,3-3,2-2,2-4,8,2,15,2d,28-8,88,48,27-,3-5,11-20,27-,8,28,3-5,12,18,b-a,1c-4,6-16,2-d,2-2,2,1b-4,17-9,8f-,10,f,1f-2,1c-34,33-14e,4,36-,13-,6-2,1a-f,4,9-,3-,17,8,2-2,5-,2,8-,3-,4-8,2-3,3,6-,16-6,2-,7-3,3-,17,8,3,3,3-,2,6-3,3-,4-a,5,2-6,10-b,4,8,2,4,17,8,3,6-,b,4,4-,2-e,2-4,b-10,4,9-,3-,17,8,3-,5-,9-2,3-,4-7,3-3,3,4-3,c-10,3,7-2,4,5-2,3,2,3-2,3-2,4-2,9,4-3,6-2,4,5-8,2-e,d-d,4,9,4,18,b,6-3,8,4,5-6,3-8,3-3,b-11,3,9,4,18,b,6-3,8,4,5-6,3-6,2,3-3,b-11,3,9,4,18,11-3,7-,4,5-8,2-7,3-3,b-11,3,13-2,19,a,2-,8-2,2-3,7,2,9-11,4-b,3b-3,1e-24,3,2-,3,2-,2-5,5,8,4,2,2-,3,e,4-,6,2,7-,b-,3-21,49,23-5,1c-3,9,25,10-,2-2f,23,6,3,8-2,5-5,1b-45,27-9,2a-,2-3,5b-4,45-4,53-5,8,40,2,5-,8,2,5-,28,2,5-,20,2,5-,8,2,5-,8,8,18,20,2,5-,8,28,14-5,1d-22,56-b,277-8,1e-2,52-e,e,8-a,18-8,15-b,e,4,3-b,5e-2,b-15,10,b-5,59-7,2b-555,9d-3,5b-5,17-,7-,27-,7-,9,2,2,2,20-,36,10,f-,7,14-,4,a,54-3,2-6,6-5,9-,1c-10,13-1d,1c-14,3c-,10-6,32-b,240-30,28-18,c-14,a0,115-,3,66-,b-76,5,5-,1d,24,2,5-2,2,8-,35-2,19,f-10,1d-3,311-37f,1b,5a-b,d7-19,d-3,41,57-,68-4,29-3,5f,29-37,2e-2,25-c,2c-2,4e-3,30,78-3,64-,20,19b7-49,51a7-59,48e-2,38-738,2ba5-5b,222f-,3c-94,8-b,6-4,1b,6,2,3,3,6d-20,16e-f,41-,37-7,2e-2,11-f,5-b,18-,b,14,5-3,6,88-,2,bf-2,7-,7-,7-,4-2,8,8-9,8-2ff,20,5-b,1c-b4,27-,27-cbb1,f7-9,28-2,b5-221,56,48,3-,2-,3-,5,d,2,5,3,42,5-,9,8,1d,5,6,2-2,8,153-3,123-3,33-27fd,a6da-5128,21f-5df,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3,2-1d,61-ff7d");var an="ad,34f,1806,180b,180c,180d,200b,200c,200d,2060,feff".split(",").map((function(Wt){return parseInt(Wt,16)}));var rn=[{h:25,s:32,l:65},{h:30,s:32,e:[23],l:127},{h:54,s:1,e:[48],l:64,d:2},{h:14,s:1,l:57,d:2},{h:44,s:1,l:17,d:2},{h:10,s:1,e:[2,6,8],l:61,d:2},{h:16,s:1,l:68,d:2},{h:84,s:1,e:[18,24,66],l:19,d:2},{h:26,s:32,e:[17],l:435},{h:22,s:1,l:71,d:2},{h:15,s:80,l:40},{h:31,s:32,l:16},{h:32,s:1,l:80,d:2},{h:52,s:1,l:42,d:2},{h:12,s:1,l:55,d:2},{h:40,s:1,e:[38],l:15,d:2},{h:14,s:1,l:48,d:2},{h:37,s:48,l:49},{h:148,s:1,l:6351,d:2},{h:88,s:1,l:160,d:2},{h:15,s:16,l:704},{h:25,s:26,l:854},{h:25,s:32,l:55915},{h:37,s:40,l:1247},{h:25,s:-119711,l:53248},{h:25,s:-119763,l:52},{h:25,s:-119815,l:52},{h:25,s:-119867,e:[1,4,5,7,8,11,12,17],l:52},{h:25,s:-119919,l:52},{h:24,s:-119971,e:[2,7,8,17],l:52},{h:24,s:-120023,e:[2,7,13,15,16,17],l:52},{h:25,s:-120075,l:52},{h:25,s:-120127,l:52},{h:25,s:-120179,l:52},{h:25,s:-120231,l:52},{h:25,s:-120283,l:52},{h:25,s:-120335,l:52},{h:24,s:-119543,e:[17],l:56},{h:24,s:-119601,e:[17],l:58},{h:24,s:-119659,e:[17],l:58},{h:24,s:-119717,e:[17],l:58},{h:24,s:-119775,e:[17],l:58}];var In=createTable("b5:3bc,c3:ff,7:73,2:253,5:254,3:256,1:257,5:259,1:25b,3:260,1:263,2:269,1:268,5:26f,1:272,2:275,7:280,3:283,5:288,3:28a,1:28b,5:292,3f:195,1:1bf,29:19e,125:3b9,8b:3b2,1:3b8,1:3c5,3:3c6,1:3c0,1a:3ba,1:3c1,1:3c3,2:3b8,1:3b5,1bc9:3b9,1c:1f76,1:1f77,f:1f7a,1:1f7b,d:1f78,1:1f79,1:1f7c,1:1f7d,107:63,5:25b,4:68,1:68,1:68,3:69,1:69,1:6c,3:6e,4:70,1:71,1:72,1:72,1:72,7:7a,2:3c9,2:7a,2:6b,1:e5,1:62,1:63,3:65,1:66,2:6d,b:3b3,1:3c0,6:64,1b574:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3");var sn=createTable("179:1,2:1,2:1,5:1,2:1,a:4f,a:1,8:1,2:1,2:1,3:1,5:1,3:1,4:1,2:1,3:1,4:1,8:2,1:1,2:2,1:1,2:2,27:2,195:26,2:25,1:25,1:25,2:40,2:3f,1:3f,33:1,11:-6,1:-9,1ac7:-3a,6d:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,b:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,c:-8,2:-8,2:-8,2:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,49:-8,1:-8,1:-4a,1:-4a,d:-56,1:-56,1:-56,1:-56,d:-8,1:-8,f:-8,1:-8,3:-7");var on=createTable("df:00730073,51:00690307,19:02BC006E,a7:006A030C,18a:002003B9,16:03B903080301,20:03C503080301,1d7:05650582,190f:00680331,1:00740308,1:0077030A,1:0079030A,1:006102BE,b6:03C50313,2:03C503130300,2:03C503130301,2:03C503130342,2a:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,3:1F7003B9,1:03B103B9,1:03AC03B9,2:03B10342,1:03B1034203B9,5:03B103B9,6:1F7403B9,1:03B703B9,1:03AE03B9,2:03B70342,1:03B7034203B9,5:03B703B9,6:03B903080300,1:03B903080301,3:03B90342,1:03B903080342,b:03C503080300,1:03C503080301,1:03C10313,2:03C50342,1:03C503080342,b:1F7C03B9,1:03C903B9,1:03CE03B9,2:03C90342,1:03C9034203B9,5:03C903B9,ac:00720073,5b:00B00063,6:00B00066,d:006E006F,a:0073006D,1:00740065006C,1:0074006D,124f:006800700061,2:00610075,2:006F0076,b:00700061,1:006E0061,1:03BC0061,1:006D0061,1:006B0061,1:006B0062,1:006D0062,1:00670062,3:00700066,1:006E0066,1:03BC0066,4:0068007A,1:006B0068007A,1:006D0068007A,1:00670068007A,1:00740068007A,15:00700061,1:006B00700061,1:006D00700061,1:006700700061,8:00700076,1:006E0076,1:03BC0076,1:006D0076,1:006B0076,1:006D0076,1:00700077,1:006E0077,1:03BC0077,1:006D0077,1:006B0077,1:006D0077,1:006B03C9,1:006D03C9,2:00620071,3:00632215006B0067,1:0063006F002E,1:00640062,1:00670079,2:00680070,2:006B006B,1:006B006D,9:00700068,2:00700070006D,1:00700072,2:00730076,1:00770062,c723:00660066,1:00660069,1:0066006C,1:006600660069,1:00660066006C,1:00730074,1:00730074,d:05740576,1:05740565,1:0574056B,1:057E0576,1:0574056D",bytes2);var cn=createRangeTable("80-20,2a0-,39c,32,f71,18e,7f2-f,19-7,30-4,7-5,f81-b,5,a800-20ff,4d1-1f,110,fa-6,d174-7,2e84-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,2,1f-5f,ff7f-20001");function flatten(Wt){return Wt.reduce((function(Wt,Pt){Pt.forEach((function(Pt){Wt.push(Pt)}));return Wt}),[])}function _nameprepTableA1(Wt){return!!matchMap(Wt,nn)}Pt._nameprepTableA1=_nameprepTableA1;function _nameprepTableB2(Wt){var Pt=matchMap(Wt,rn);if(Pt){return[Wt+Pt.s]}var en=In[Wt];if(en){return en}var tn=sn[Wt];if(tn){return[Wt+tn[0]]}var nn=on[Wt];if(nn){return nn}return null}Pt._nameprepTableB2=_nameprepTableB2;function _nameprepTableC(Wt){return!!matchMap(Wt,cn)}Pt._nameprepTableC=_nameprepTableC;function nameprep(Wt){if(Wt.match(/^[a-z0-9-]*$/i)&&Wt.length<=59){return Wt.toLowerCase()}var Pt=(0,tn.toUtf8CodePoints)(Wt);Pt=flatten(Pt.map((function(Wt){if(an.indexOf(Wt)>=0){return[]}if(Wt>=65024&&Wt<=65039){return[]}var Pt=_nameprepTableB2(Wt);if(Pt){return Pt}return[Wt]})));Pt=(0,tn.toUtf8CodePoints)((0,tn._toUtf8String)(Pt),tn.UnicodeNormalizationForm.NFKC);Pt.forEach((function(Wt){if(_nameprepTableC(Wt)){throw new Error("STRINGPREP_CONTAINS_PROHIBITED")}}));Pt.forEach((function(Wt){if(_nameprepTableA1(Wt)){throw new Error("STRINGPREP_CONTAINS_UNASSIGNED")}}));var en=(0,tn._toUtf8String)(Pt);if(en.substring(0,1)==="-"||en.substring(2,4)==="--"||en.substring(en.length-1)==="-"){throw new Error("invalid hyphen")}return en}Pt.nameprep=nameprep},13859:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.nameprep=Pt.parseBytes32String=Pt.formatBytes32String=Pt.UnicodeNormalizationForm=Pt.Utf8ErrorReason=Pt.Utf8ErrorFuncs=Pt.toUtf8String=Pt.toUtf8CodePoints=Pt.toUtf8Bytes=Pt._toEscapedUtf8String=void 0;var tn=en(94145);Object.defineProperty(Pt,"formatBytes32String",{enumerable:true,get:function(){return tn.formatBytes32String}});Object.defineProperty(Pt,"parseBytes32String",{enumerable:true,get:function(){return tn.parseBytes32String}});var nn=en(1063);Object.defineProperty(Pt,"nameprep",{enumerable:true,get:function(){return nn.nameprep}});var an=en(91996);Object.defineProperty(Pt,"_toEscapedUtf8String",{enumerable:true,get:function(){return an._toEscapedUtf8String}});Object.defineProperty(Pt,"toUtf8Bytes",{enumerable:true,get:function(){return an.toUtf8Bytes}});Object.defineProperty(Pt,"toUtf8CodePoints",{enumerable:true,get:function(){return an.toUtf8CodePoints}});Object.defineProperty(Pt,"toUtf8String",{enumerable:true,get:function(){return an.toUtf8String}});Object.defineProperty(Pt,"UnicodeNormalizationForm",{enumerable:true,get:function(){return an.UnicodeNormalizationForm}});Object.defineProperty(Pt,"Utf8ErrorFuncs",{enumerable:true,get:function(){return an.Utf8ErrorFuncs}});Object.defineProperty(Pt,"Utf8ErrorReason",{enumerable:true,get:function(){return an.Utf8ErrorReason}})},91996:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.toUtf8CodePoints=Pt.toUtf8String=Pt._toUtf8String=Pt._toEscapedUtf8String=Pt.toUtf8Bytes=Pt.Utf8ErrorFuncs=Pt.Utf8ErrorReason=Pt.UnicodeNormalizationForm=void 0;var tn=en(42006);var nn=en(76127);var an=en(75988);var rn=new nn.Logger(an.version);var In;(function(Wt){Wt["current"]="";Wt["NFC"]="NFC";Wt["NFD"]="NFD";Wt["NFKC"]="NFKC";Wt["NFKD"]="NFKD"})(In=Pt.UnicodeNormalizationForm||(Pt.UnicodeNormalizationForm={}));var sn;(function(Wt){Wt["UNEXPECTED_CONTINUE"]="unexpected continuation byte";Wt["BAD_PREFIX"]="bad codepoint prefix";Wt["OVERRUN"]="string overrun";Wt["MISSING_CONTINUE"]="missing continuation byte";Wt["OUT_OF_RANGE"]="out of UTF-8 range";Wt["UTF16_SURROGATE"]="UTF-16 surrogate";Wt["OVERLONG"]="overlong representation"})(sn=Pt.Utf8ErrorReason||(Pt.Utf8ErrorReason={}));function errorFunc(Wt,Pt,en,tn,nn){return rn.throwArgumentError("invalid codepoint at offset "+Pt+"; "+Wt,"bytes",en)}function ignoreFunc(Wt,Pt,en,tn,nn){if(Wt===sn.BAD_PREFIX||Wt===sn.UNEXPECTED_CONTINUE){var an=0;for(var rn=Pt+1;rn>6!==2){break}an++}return an}if(Wt===sn.OVERRUN){return en.length-Pt-1}return 0}function replaceFunc(Wt,Pt,en,tn,nn){if(Wt===sn.OVERLONG){tn.push(nn);return 0}tn.push(65533);return ignoreFunc(Wt,Pt,en,tn,nn)}Pt.Utf8ErrorFuncs=Object.freeze({error:errorFunc,ignore:ignoreFunc,replace:replaceFunc});function getUtf8CodePoints(Wt,en){if(en==null){en=Pt.Utf8ErrorFuncs.error}Wt=(0,tn.arrayify)(Wt);var nn=[];var an=0;while(an>7===0){nn.push(rn);continue}var In=null;var on=null;if((rn&224)===192){In=1;on=127}else if((rn&240)===224){In=2;on=2047}else if((rn&248)===240){In=3;on=65535}else{if((rn&192)===128){an+=en(sn.UNEXPECTED_CONTINUE,an-1,Wt,nn)}else{an+=en(sn.BAD_PREFIX,an-1,Wt,nn)}continue}if(an-1+In>=Wt.length){an+=en(sn.OVERRUN,an-1,Wt,nn);continue}var cn=rn&(1<<8-In-1)-1;for(var dn=0;dn1114111){an+=en(sn.OUT_OF_RANGE,an-1-In,Wt,nn,cn);continue}if(cn>=55296&&cn<=57343){an+=en(sn.UTF16_SURROGATE,an-1-In,Wt,nn,cn);continue}if(cn<=on){an+=en(sn.OVERLONG,an-1-In,Wt,nn,cn);continue}nn.push(cn)}return nn}function toUtf8Bytes(Wt,Pt){if(Pt===void 0){Pt=In.current}if(Pt!=In.current){rn.checkNormalize();Wt=Wt.normalize(Pt)}var en=[];for(var nn=0;nn>6|192);en.push(an&63|128)}else if((an&64512)==55296){nn++;var sn=Wt.charCodeAt(nn);if(nn>=Wt.length||(sn&64512)!==56320){throw new Error("invalid utf-8 string")}var on=65536+((an&1023)<<10)+(sn&1023);en.push(on>>18|240);en.push(on>>12&63|128);en.push(on>>6&63|128);en.push(on&63|128)}else{en.push(an>>12|224);en.push(an>>6&63|128);en.push(an&63|128)}}return(0,tn.arrayify)(en)}Pt.toUtf8Bytes=toUtf8Bytes;function escapeChar(Wt){var Pt="0000"+Wt.toString(16);return"\\u"+Pt.substring(Pt.length-4)}function _toEscapedUtf8String(Wt,Pt){return'"'+getUtf8CodePoints(Wt,Pt).map((function(Wt){if(Wt<256){switch(Wt){case 8:return"\\b";case 9:return"\\t";case 10:return"\\n";case 13:return"\\r";case 34:return'\\"';case 92:return"\\\\"}if(Wt>=32&&Wt<127){return String.fromCharCode(Wt)}}if(Wt<=65535){return escapeChar(Wt)}Wt-=65536;return escapeChar((Wt>>10&1023)+55296)+escapeChar((Wt&1023)+56320)})).join("")+'"'}Pt._toEscapedUtf8String=_toEscapedUtf8String;function _toUtf8String(Wt){return Wt.map((function(Wt){if(Wt<=65535){return String.fromCharCode(Wt)}Wt-=65536;return String.fromCharCode((Wt>>10&1023)+55296,(Wt&1023)+56320)})).join("")}Pt._toUtf8String=_toUtf8String;function toUtf8String(Wt,Pt){return _toUtf8String(getUtf8CodePoints(Wt,Pt))}Pt.toUtf8String=toUtf8String;function toUtf8CodePoints(Wt,Pt){if(Pt===void 0){Pt=In.current}return getUtf8CodePoints(toUtf8Bytes(Wt,Pt))}Pt.toUtf8CodePoints=toUtf8CodePoints},63303:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="transactions/5.7.0"},62394:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Object.defineProperty(Wt,tn,{enumerable:true,get:function(){return Pt[en]}})}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};Object.defineProperty(Pt,"__esModule",{value:true});Pt.parse=Pt.serialize=Pt.accessListify=Pt.recoverAddress=Pt.computeAddress=Pt.TransactionTypes=void 0;var rn=en(75745);var In=en(18202);var sn=en(42006);var on=en(99848);var cn=en(56938);var dn=en(61338);var un=an(en(37659));var pn=en(63928);var mn=en(76127);var bn=en(63303);var Gn=new mn.Logger(bn.version);var hn;(function(Wt){Wt[Wt["legacy"]=0]="legacy";Wt[Wt["eip2930"]=1]="eip2930";Wt[Wt["eip1559"]=2]="eip1559"})(hn=Pt.TransactionTypes||(Pt.TransactionTypes={}));function handleAddress(Wt){if(Wt==="0x"){return null}return(0,rn.getAddress)(Wt)}function handleNumber(Wt){if(Wt==="0x"){return on.Zero}return In.BigNumber.from(Wt)}var Zn=[{name:"nonce",maxLength:32,numeric:true},{name:"gasPrice",maxLength:32,numeric:true},{name:"gasLimit",maxLength:32,numeric:true},{name:"to",length:20},{name:"value",maxLength:32,numeric:true},{name:"data"}];var An={chainId:true,data:true,gasLimit:true,gasPrice:true,nonce:true,to:true,type:true,value:true};function computeAddress(Wt){var Pt=(0,pn.computePublicKey)(Wt);return(0,rn.getAddress)((0,sn.hexDataSlice)((0,cn.keccak256)((0,sn.hexDataSlice)(Pt,1)),12))}Pt.computeAddress=computeAddress;function recoverAddress(Wt,Pt){return computeAddress((0,pn.recoverPublicKey)((0,sn.arrayify)(Wt),Pt))}Pt.recoverAddress=recoverAddress;function formatNumber(Wt,Pt){var en=(0,sn.stripZeros)(In.BigNumber.from(Wt).toHexString());if(en.length>32){Gn.throwArgumentError("invalid length for "+Pt,"transaction:"+Pt,Wt)}return en}function accessSetify(Wt,Pt){return{address:(0,rn.getAddress)(Wt),storageKeys:(Pt||[]).map((function(Pt,en){if((0,sn.hexDataLength)(Pt)!==32){Gn.throwArgumentError("invalid access list storageKey","accessList["+Wt+":"+en+"]",Pt)}return Pt.toLowerCase()}))}}function accessListify(Wt){if(Array.isArray(Wt)){return Wt.map((function(Wt,Pt){if(Array.isArray(Wt)){if(Wt.length>2){Gn.throwArgumentError("access list expected to be [ address, storageKeys[] ]","value["+Pt+"]",Wt)}return accessSetify(Wt[0],Wt[1])}return accessSetify(Wt.address,Wt.storageKeys)}))}var Pt=Object.keys(Wt).map((function(Pt){var en=Wt[Pt].reduce((function(Wt,Pt){Wt[Pt]=true;return Wt}),{});return accessSetify(Pt,Object.keys(en).sort())}));Pt.sort((function(Wt,Pt){return Wt.address.localeCompare(Pt.address)}));return Pt}Pt.accessListify=accessListify;function formatAccessList(Wt){return accessListify(Wt).map((function(Wt){return[Wt.address,Wt.storageKeys]}))}function _serializeEip1559(Wt,Pt){if(Wt.gasPrice!=null){var en=In.BigNumber.from(Wt.gasPrice);var tn=In.BigNumber.from(Wt.maxFeePerGas||0);if(!en.eq(tn)){Gn.throwArgumentError("mismatch EIP-1559 gasPrice != maxFeePerGas","tx",{gasPrice:en,maxFeePerGas:tn})}}var nn=[formatNumber(Wt.chainId||0,"chainId"),formatNumber(Wt.nonce||0,"nonce"),formatNumber(Wt.maxPriorityFeePerGas||0,"maxPriorityFeePerGas"),formatNumber(Wt.maxFeePerGas||0,"maxFeePerGas"),formatNumber(Wt.gasLimit||0,"gasLimit"),Wt.to!=null?(0,rn.getAddress)(Wt.to):"0x",formatNumber(Wt.value||0,"value"),Wt.data||"0x",formatAccessList(Wt.accessList||[])];if(Pt){var an=(0,sn.splitSignature)(Pt);nn.push(formatNumber(an.recoveryParam,"recoveryParam"));nn.push((0,sn.stripZeros)(an.r));nn.push((0,sn.stripZeros)(an.s))}return(0,sn.hexConcat)(["0x02",un.encode(nn)])}function _serializeEip2930(Wt,Pt){var en=[formatNumber(Wt.chainId||0,"chainId"),formatNumber(Wt.nonce||0,"nonce"),formatNumber(Wt.gasPrice||0,"gasPrice"),formatNumber(Wt.gasLimit||0,"gasLimit"),Wt.to!=null?(0,rn.getAddress)(Wt.to):"0x",formatNumber(Wt.value||0,"value"),Wt.data||"0x",formatAccessList(Wt.accessList||[])];if(Pt){var tn=(0,sn.splitSignature)(Pt);en.push(formatNumber(tn.recoveryParam,"recoveryParam"));en.push((0,sn.stripZeros)(tn.r));en.push((0,sn.stripZeros)(tn.s))}return(0,sn.hexConcat)(["0x01",un.encode(en)])}function _serialize(Wt,Pt){(0,dn.checkProperties)(Wt,An);var en=[];Zn.forEach((function(Pt){var tn=Wt[Pt.name]||[];var nn={};if(Pt.numeric){nn.hexPad="left"}tn=(0,sn.arrayify)((0,sn.hexlify)(tn,nn));if(Pt.length&&tn.length!==Pt.length&&tn.length>0){Gn.throwArgumentError("invalid length for "+Pt.name,"transaction:"+Pt.name,tn)}if(Pt.maxLength){tn=(0,sn.stripZeros)(tn);if(tn.length>Pt.maxLength){Gn.throwArgumentError("invalid length for "+Pt.name,"transaction:"+Pt.name,tn)}}en.push((0,sn.hexlify)(tn))}));var tn=0;if(Wt.chainId!=null){tn=Wt.chainId;if(typeof tn!=="number"){Gn.throwArgumentError("invalid transaction.chainId","transaction",Wt)}}else if(Pt&&!(0,sn.isBytesLike)(Pt)&&Pt.v>28){tn=Math.floor((Pt.v-35)/2)}if(tn!==0){en.push((0,sn.hexlify)(tn));en.push("0x");en.push("0x")}if(!Pt){return un.encode(en)}var nn=(0,sn.splitSignature)(Pt);var an=27+nn.recoveryParam;if(tn!==0){en.pop();en.pop();en.pop();an+=tn*2+8;if(nn.v>28&&nn.v!==an){Gn.throwArgumentError("transaction.chainId/signature.v mismatch","signature",Pt)}}else if(nn.v!==an){Gn.throwArgumentError("transaction.chainId/signature.v mismatch","signature",Pt)}en.push((0,sn.hexlify)(an));en.push((0,sn.stripZeros)((0,sn.arrayify)(nn.r)));en.push((0,sn.stripZeros)((0,sn.arrayify)(nn.s)));return un.encode(en)}function serialize(Wt,Pt){if(Wt.type==null||Wt.type===0){if(Wt.accessList!=null){Gn.throwArgumentError("untyped transactions do not support accessList; include type: 1","transaction",Wt)}return _serialize(Wt,Pt)}switch(Wt.type){case 1:return _serializeEip2930(Wt,Pt);case 2:return _serializeEip1559(Wt,Pt);default:break}return Gn.throwError("unsupported transaction type: "+Wt.type,mn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"serializeTransaction",transactionType:Wt.type})}Pt.serialize=serialize;function _parseEipSignature(Wt,Pt,en){try{var tn=handleNumber(Pt[0]).toNumber();if(tn!==0&&tn!==1){throw new Error("bad recid")}Wt.v=tn}catch(Wt){Gn.throwArgumentError("invalid v for transaction type: 1","v",Pt[0])}Wt.r=(0,sn.hexZeroPad)(Pt[1],32);Wt.s=(0,sn.hexZeroPad)(Pt[2],32);try{var nn=(0,cn.keccak256)(en(Wt));Wt.from=recoverAddress(nn,{r:Wt.r,s:Wt.s,recoveryParam:Wt.v})}catch(Wt){}}function _parseEip1559(Wt){var Pt=un.decode(Wt.slice(1));if(Pt.length!==9&&Pt.length!==12){Gn.throwArgumentError("invalid component count for transaction type: 2","payload",(0,sn.hexlify)(Wt))}var en=handleNumber(Pt[2]);var tn=handleNumber(Pt[3]);var nn={type:2,chainId:handleNumber(Pt[0]).toNumber(),nonce:handleNumber(Pt[1]).toNumber(),maxPriorityFeePerGas:en,maxFeePerGas:tn,gasPrice:null,gasLimit:handleNumber(Pt[4]),to:handleAddress(Pt[5]),value:handleNumber(Pt[6]),data:Pt[7],accessList:accessListify(Pt[8])};if(Pt.length===9){return nn}nn.hash=(0,cn.keccak256)(Wt);_parseEipSignature(nn,Pt.slice(9),_serializeEip1559);return nn}function _parseEip2930(Wt){var Pt=un.decode(Wt.slice(1));if(Pt.length!==8&&Pt.length!==11){Gn.throwArgumentError("invalid component count for transaction type: 1","payload",(0,sn.hexlify)(Wt))}var en={type:1,chainId:handleNumber(Pt[0]).toNumber(),nonce:handleNumber(Pt[1]).toNumber(),gasPrice:handleNumber(Pt[2]),gasLimit:handleNumber(Pt[3]),to:handleAddress(Pt[4]),value:handleNumber(Pt[5]),data:Pt[6],accessList:accessListify(Pt[7])};if(Pt.length===8){return en}en.hash=(0,cn.keccak256)(Wt);_parseEipSignature(en,Pt.slice(8),_serializeEip2930);return en}function _parse(Wt){var Pt=un.decode(Wt);if(Pt.length!==9&&Pt.length!==6){Gn.throwArgumentError("invalid raw transaction","rawTransaction",Wt)}var en={nonce:handleNumber(Pt[0]).toNumber(),gasPrice:handleNumber(Pt[1]),gasLimit:handleNumber(Pt[2]),to:handleAddress(Pt[3]),value:handleNumber(Pt[4]),data:Pt[5],chainId:0};if(Pt.length===6){return en}try{en.v=In.BigNumber.from(Pt[6]).toNumber()}catch(Wt){return en}en.r=(0,sn.hexZeroPad)(Pt[7],32);en.s=(0,sn.hexZeroPad)(Pt[8],32);if(In.BigNumber.from(en.r).isZero()&&In.BigNumber.from(en.s).isZero()){en.chainId=en.v;en.v=0}else{en.chainId=Math.floor((en.v-35)/2);if(en.chainId<0){en.chainId=0}var tn=en.v-27;var nn=Pt.slice(0,6);if(en.chainId!==0){nn.push((0,sn.hexlify)(en.chainId));nn.push("0x");nn.push("0x");tn-=en.chainId*2+8}var an=(0,cn.keccak256)(un.encode(nn));try{en.from=recoverAddress(an,{r:(0,sn.hexlify)(en.r),s:(0,sn.hexlify)(en.s),recoveryParam:tn})}catch(Wt){}en.hash=(0,cn.keccak256)(Wt)}en.type=null;return en}function parse(Wt){var Pt=(0,sn.arrayify)(Wt);if(Pt[0]>127){return _parse(Pt)}switch(Pt[0]){case 1:return _parseEip2930(Pt);case 2:return _parseEip1559(Pt);default:break}return Gn.throwError("unsupported transaction type: "+Pt[0],mn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"parseTransaction",transactionType:Pt[0]})}Pt.parse=parse},33755:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="units/5.7.0"},32534:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.parseEther=Pt.formatEther=Pt.parseUnits=Pt.formatUnits=Pt.commify=void 0;var tn=en(18202);var nn=en(76127);var an=en(33755);var rn=new nn.Logger(an.version);var In=["wei","kwei","mwei","gwei","szabo","finney","ether"];function commify(Wt){var Pt=String(Wt).split(".");if(Pt.length>2||!Pt[0].match(/^-?[0-9]*$/)||Pt[1]&&!Pt[1].match(/^[0-9]*$/)||Wt==="."||Wt==="-."){rn.throwArgumentError("invalid value","value",Wt)}var en=Pt[0];var tn="";if(en.substring(0,1)==="-"){tn="-";en=en.substring(1)}while(en.substring(0,1)==="0"){en=en.substring(1)}if(en===""){en="0"}var nn="";if(Pt.length===2){nn="."+(Pt[1]||"0")}while(nn.length>2&&nn[nn.length-1]==="0"){nn=nn.substring(0,nn.length-1)}var an=[];while(en.length){if(en.length<=3){an.unshift(en);break}else{var In=en.length-3;an.unshift(en.substring(In));en=en.substring(0,In)}}return tn+an.join(",")+nn}Pt.commify=commify;function formatUnits(Wt,Pt){if(typeof Pt==="string"){var en=In.indexOf(Pt);if(en!==-1){Pt=3*en}}return(0,tn.formatFixed)(Wt,Pt!=null?Pt:18)}Pt.formatUnits=formatUnits;function parseUnits(Wt,Pt){if(typeof Wt!=="string"){rn.throwArgumentError("value must be a string","value",Wt)}if(typeof Pt==="string"){var en=In.indexOf(Pt);if(en!==-1){Pt=3*en}}return(0,tn.parseFixed)(Wt,Pt!=null?Pt:18)}Pt.parseUnits=parseUnits;function formatEther(Wt){return formatUnits(Wt,18)}Pt.formatEther=formatEther;function parseEther(Wt){return parseUnits(Wt,18)}Pt.parseEther=parseEther},23867:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="wallet/5.7.0"},30806:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();var nn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var an=this&&this.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="web/5.7.1"},77730:function(Wt,Pt,en){"use strict";var tn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var nn=this&&this.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]0&&rn%1===0,"invalid connection throttle limit","connection.throttleLimit",rn);var cn=typeof Wt==="object"?Wt.throttleCallback:null;var pn=typeof Wt==="object"&&typeof Wt.throttleSlotInterval==="number"?Wt.throttleSlotInterval:100;dn.assertArgument(pn>0&&pn%1===0,"invalid connection throttle slot interval","connection.throttleSlotInterval",pn);var mn=typeof Wt==="object"?!!Wt.errorPassThrough:false;var bn={};var Gn=null;var hn={method:"GET"};var Zn=false;var An=2*60*1e3;if(typeof Wt==="string"){Gn=Wt}else if(typeof Wt==="object"){if(Wt==null||Wt.url==null){dn.throwArgumentError("missing URL","connection.url",Wt)}Gn=Wt.url;if(typeof Wt.timeout==="number"&&Wt.timeout>0){An=Wt.timeout}if(Wt.headers){for(var Wn in Wt.headers){bn[Wn.toLowerCase()]={key:Wn,value:String(Wt.headers[Wn])};if(["if-none-match","if-modified-since"].indexOf(Wn.toLowerCase())>=0){Zn=true}}}hn.allowGzip=!!Wt.allowGzip;if(Wt.user!=null&&Wt.password!=null){if(Gn.substring(0,6)!=="https:"&&Wt.allowInsecureAuthentication!==true){dn.throwError("basic authentication requires a secure https url",on.Logger.errors.INVALID_ARGUMENT,{argument:"url",url:Gn,user:Wt.user,password:"[REDACTED]"})}var Nn=Wt.user+":"+Wt.password;bn["authorization"]={key:"Authorization",value:"Basic "+(0,an.encode)((0,sn.toUtf8Bytes)(Nn))}}if(Wt.skipFetchSetup!=null){hn.skipFetchSetup=!!Wt.skipFetchSetup}if(Wt.fetchOptions!=null){hn.fetchOptions=(0,In.shallowCopy)(Wt.fetchOptions)}}var gn=new RegExp("^data:([^;:]*)?(;base64)?,(.*)$","i");var yn=Gn?Gn.match(gn):null;if(yn){try{var vn={statusCode:200,statusMessage:"OK",headers:{"content-type":yn[1]||"text/plain"},body:yn[2]?(0,an.decode)(yn[3]):unpercent(yn[3])};var Yn=vn.body;if(en){Yn=en(vn.body,vn)}return Promise.resolve(Yn)}catch(Wt){dn.throwError("processing response error",on.Logger.errors.SERVER_ERROR,{body:bodyify(yn[1],yn[2]),error:Wt,requestBody:null,requestMethod:"GET",url:Gn})}}if(Pt){hn.method="POST";hn.body=Pt;if(bn["content-type"]==null){bn["content-type"]={key:"Content-Type",value:"application/octet-stream"}}if(bn["content-length"]==null){bn["content-length"]={key:"Content-Length",value:String(Pt.length)}}}var En={};Object.keys(bn).forEach((function(Wt){var Pt=bn[Wt];En[Pt.key]=Pt.value}));hn.headers=En;var Vn=function(){var Wt=null;var Pt=new Promise((function(Pt,en){if(An){Wt=setTimeout((function(){if(Wt==null){return}Wt=null;en(dn.makeError("timeout",on.Logger.errors.TIMEOUT,{requestBody:bodyify(hn.body,En["content-type"]),requestMethod:hn.method,timeout:An,url:Gn}))}),An)}}));var cancel=function(){if(Wt==null){return}clearTimeout(Wt);Wt=null};return{promise:Pt,cancel:cancel}}();var Rn=function(){return tn(this,void 0,void 0,(function(){var Wt,Pt,tn,an,In,sn,bn,An,Wn,Nn,an,gn;return nn(this,(function(nn){switch(nn.label){case 0:Wt=0;nn.label=1;case 1:if(!(Wt=300)){Vn.cancel();dn.throwError("bad response",on.Logger.errors.SERVER_ERROR,{status:Pt.statusCode,headers:Pt.headers,body:bodyify(An,Pt.headers?Pt.headers["content-type"]:null),requestBody:bodyify(hn.body,En["content-type"]),requestMethod:hn.method,url:Gn})}if(!en)return[3,18];nn.label=11;case 11:nn.trys.push([11,13,,18]);return[4,en(An,Pt)];case 12:Wn=nn.sent();Vn.cancel();return[2,Wn];case 13:Nn=nn.sent();if(!(Nn.throttleRetry&&Wtrn){if(cancel()){tn(new Error("retry limit reached"))}return}var nn=Pt.interval*parseInt(String(Math.random()*Math.pow(2,In)));if(nnPt.ceiling){nn=Pt.ceiling}setTimeout(check,nn)}return null}),(function(Wt){if(cancel()){tn(Wt)}}))}check()}))}Pt.poll=poll},17141:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="wordlists/5.7.0"},78168:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.wordlists=Pt.Wordlist=Pt.logger=void 0;var tn=en(18210);Object.defineProperty(Pt,"logger",{enumerable:true,get:function(){return tn.logger}});Object.defineProperty(Pt,"Wordlist",{enumerable:true,get:function(){return tn.Wordlist}});var nn=en(1057);Object.defineProperty(Pt,"wordlists",{enumerable:true,get:function(){return nn.wordlists}})},53994:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.langCz=void 0;var nn=en(18210);var an="AbdikaceAbecedaAdresaAgreseAkceAktovkaAlejAlkoholAmputaceAnanasAndulkaAnekdotaAnketaAntikaAnulovatArchaAroganceAsfaltAsistentAspiraceAstmaAstronomAtlasAtletikaAtolAutobusAzylBabkaBachorBacilBaculkaBadatelBagetaBagrBahnoBakterieBaladaBaletkaBalkonBalonekBalvanBalzaBambusBankomatBarbarBaretBarmanBarokoBarvaBaterkaBatohBavlnaBazalkaBazilikaBazukaBednaBeranBesedaBestieBetonBezinkaBezmocBeztakBicyklBidloBiftekBikinyBilanceBiografBiologBitvaBizonBlahobytBlatouchBlechaBleduleBleskBlikatBliznaBlokovatBlouditBludBobekBobrBodlinaBodnoutBohatostBojkotBojovatBokorysBolestBorecBoroviceBotaBoubelBouchatBoudaBouleBouratBoxerBradavkaBramboraBrankaBratrBreptaBriketaBrkoBrlohBronzBroskevBrunetkaBrusinkaBrzdaBrzyBublinaBubnovatBuchtaBuditelBudkaBudovaBufetBujarostBukviceBuldokBulvaBundaBunkrBurzaButikBuvolBuzolaBydletBylinaBytovkaBzukotCapartCarevnaCedrCeduleCejchCejnCelaCelerCelkemCelniceCeninaCennostCenovkaCentrumCenzorCestopisCetkaChalupaChapadloCharitaChataChechtatChemieChichotChirurgChladChlebaChlubitChmelChmuraChobotChocholChodbaCholeraChomoutChopitChorobaChovChrapotChrlitChrtChrupChtivostChudinaChutnatChvatChvilkaChvostChybaChystatChytitCibuleCigaretaCihelnaCihlaCinkotCirkusCisternaCitaceCitrusCizinecCizostClonaCokolivCouvatCtitelCtnostCudnostCuketaCukrCupotCvaknoutCvalCvikCvrkotCyklistaDalekoDarebaDatelDatumDceraDebataDechovkaDecibelDeficitDeflaceDeklDekretDemokratDepreseDerbyDeskaDetektivDikobrazDiktovatDiodaDiplomDiskDisplejDivadloDivochDlahaDlouhoDluhopisDnesDobroDobytekDocentDochutitDodnesDohledDohodaDohraDojemDojniceDokladDokolaDoktorDokumentDolarDolevaDolinaDomaDominantDomluvitDomovDonutitDopadDopisDoplnitDoposudDoprovodDopustitDorazitDorostDortDosahDoslovDostatekDosudDosytaDotazDotekDotknoutDoufatDoutnatDovozceDozaduDoznatDozorceDrahotaDrakDramatikDravecDrazeDrdolDrobnostDrogerieDrozdDrsnostDrtitDrzostDubenDuchovnoDudekDuhaDuhovkaDusitDusnoDutostDvojiceDvorecDynamitEkologEkonomieElektronElipsaEmailEmiseEmoceEmpatieEpizodaEpochaEpopejEposEsejEsenceEskortaEskymoEtiketaEuforieEvoluceExekuceExkurzeExpediceExplozeExportExtraktFackaFajfkaFakultaFanatikFantazieFarmacieFavoritFazoleFederaceFejetonFenkaFialkaFigurantFilozofFiltrFinanceFintaFixaceFjordFlanelFlirtFlotilaFondFosforFotbalFotkaFotonFrakceFreskaFrontaFukarFunkceFyzikaGalejeGarantGenetikaGeologGilotinaGlazuraGlejtGolemGolfistaGotikaGrafGramofonGranuleGrepGrilGrogGroteskaGumaHadiceHadrHalaHalenkaHanbaHanopisHarfaHarpunaHavranHebkostHejkalHejnoHejtmanHektarHelmaHematomHerecHernaHesloHezkyHistorikHladovkaHlasivkyHlavaHledatHlenHlodavecHlohHloupostHltatHlubinaHluchotaHmatHmotaHmyzHnisHnojivoHnoutHoblinaHobojHochHodinyHodlatHodnotaHodovatHojnostHokejHolinkaHolkaHolubHomoleHonitbaHonoraceHoralHordaHorizontHorkoHorlivecHormonHorninaHoroskopHorstvoHospodaHostinaHotovostHoubaHoufHoupatHouskaHovorHradbaHraniceHravostHrazdaHrbolekHrdinaHrdloHrdostHrnekHrobkaHromadaHrotHroudaHrozenHrstkaHrubostHryzatHubenostHubnoutHudbaHukotHumrHusitaHustotaHvozdHybnostHydrantHygienaHymnaHysterikIdylkaIhnedIkonaIluzeImunitaInfekceInflaceInkasoInovaceInspekceInternetInvalidaInvestorInzerceIronieJablkoJachtaJahodaJakmileJakostJalovecJantarJarmarkJaroJasanJasnoJatkaJavorJazykJedinecJedleJednatelJehlanJekotJelenJelitoJemnostJenomJepiceJeseterJevitJezdecJezeroJinakJindyJinochJiskraJistotaJitrniceJizvaJmenovatJogurtJurtaKabaretKabelKabinetKachnaKadetKadidloKahanKajakKajutaKakaoKaktusKalamitaKalhotyKalibrKalnostKameraKamkolivKamnaKanibalKanoeKantorKapalinaKapelaKapitolaKapkaKapleKapotaKaprKapustaKapybaraKaramelKarotkaKartonKasaKatalogKatedraKauceKauzaKavalecKazajkaKazetaKazivostKdekolivKdesiKedlubenKempKeramikaKinoKlacekKladivoKlamKlapotKlasikaKlaunKlecKlenbaKlepatKlesnoutKlidKlimaKlisnaKloboukKlokanKlopaKloubKlubovnaKlusatKluzkostKmenKmitatKmotrKnihaKnotKoaliceKoberecKobkaKoblihaKobylaKocourKohoutKojenecKokosKoktejlKolapsKoledaKolizeKoloKomandoKometaKomikKomnataKomoraKompasKomunitaKonatKonceptKondiceKonecKonfeseKongresKoninaKonkursKontaktKonzervaKopanecKopieKopnoutKoprovkaKorbelKorektorKormidloKoroptevKorpusKorunaKorytoKorzetKosatecKostkaKotelKotletaKotoulKoukatKoupelnaKousekKouzloKovbojKozaKozorohKrabiceKrachKrajinaKralovatKrasopisKravataKreditKrejcarKresbaKrevetaKriketKritikKrizeKrkavecKrmelecKrmivoKrocanKrokKronikaKropitKroupaKrovkaKrtekKruhadloKrupiceKrutostKrvinkaKrychleKryptaKrystalKrytKudlankaKufrKujnostKuklaKulajdaKulichKulkaKulometKulturaKunaKupodivuKurtKurzorKutilKvalitaKvasinkaKvestorKynologKyselinaKytaraKyticeKytkaKytovecKyvadloLabradorLachtanLadnostLaikLakomecLamelaLampaLanovkaLasiceLasoLasturaLatinkaLavinaLebkaLeckdyLedenLedniceLedovkaLedvinaLegendaLegieLegraceLehceLehkostLehnoutLektvarLenochodLentilkaLepenkaLepidloLetadloLetecLetmoLetokruhLevhartLevitaceLevobokLibraLichotkaLidojedLidskostLihovinaLijavecLilekLimetkaLinieLinkaLinoleumListopadLitinaLitovatLobistaLodivodLogikaLogopedLokalitaLoketLomcovatLopataLopuchLordLososLotrLoudalLouhLoukaLouskatLovecLstivostLucernaLuciferLumpLuskLustraceLviceLyraLyrikaLysinaMadamMadloMagistrMahagonMajetekMajitelMajoritaMakakMakoviceMakrelaMalbaMalinaMalovatMalviceMaminkaMandleMankoMarnostMasakrMaskotMasopustMaticeMatrikaMaturitaMazanecMazivoMazlitMazurkaMdlobaMechanikMeditaceMedovinaMelasaMelounMentolkaMetlaMetodaMetrMezeraMigraceMihnoutMihuleMikinaMikrofonMilenecMilimetrMilostMimikaMincovnaMinibarMinometMinulostMiskaMistrMixovatMladostMlhaMlhovinaMlokMlsatMluvitMnichMnohemMobilMocnostModelkaModlitbaMohylaMokroMolekulaMomentkaMonarchaMonoklMonstrumMontovatMonzunMosazMoskytMostMotivaceMotorkaMotykaMouchaMoudrostMozaikaMozekMozolMramorMravenecMrkevMrtvolaMrzetMrzutostMstitelMudrcMuflonMulatMumieMuniceMusetMutaceMuzeumMuzikantMyslivecMzdaNabouratNachytatNadaceNadbytekNadhozNadobroNadpisNahlasNahnatNahodileNahraditNaivitaNajednouNajistoNajmoutNaklonitNakonecNakrmitNalevoNamazatNamluvitNanometrNaokoNaopakNaostroNapadatNapevnoNaplnitNapnoutNaposledNaprostoNaroditNarubyNarychloNasaditNasekatNaslepoNastatNatolikNavenekNavrchNavzdoryNazvatNebeNechatNeckyNedalekoNedbatNeduhNegaceNehetNehodaNejenNejprveNeklidNelibostNemilostNemocNeochotaNeonkaNepokojNerostNervNesmyslNesouladNetvorNeuronNevinaNezvykleNicotaNijakNikamNikdyNiklNikterakNitroNoclehNohaviceNominaceNoraNorekNositelNosnostNouzeNovinyNovotaNozdraNudaNudleNugetNutitNutnostNutrieNymfaObalObarvitObavaObdivObecObehnatObejmoutObezitaObhajobaObilniceObjasnitObjektObklopitOblastOblekOblibaOblohaObludaObnosObohatitObojekOboutObrazecObrnaObrubaObrysObsahObsluhaObstaratObuvObvazObvinitObvodObvykleObyvatelObzorOcasOcelOcenitOchladitOchotaOchranaOcitnoutOdbojOdbytOdchodOdcizitOdebratOdeslatOdevzdatOdezvaOdhadceOdhoditOdjetOdjinudOdkazOdkoupitOdlivOdlukaOdmlkaOdolnostOdpadOdpisOdploutOdporOdpustitOdpykatOdrazkaOdsouditOdstupOdsunOdtokOdtudOdvahaOdvetaOdvolatOdvracetOdznakOfinaOfsajdOhlasOhniskoOhradaOhrozitOhryzekOkapOkeniceOklikaOknoOkouzlitOkovyOkrasaOkresOkrsekOkruhOkupantOkurkaOkusitOlejninaOlizovatOmakOmeletaOmezitOmladinaOmlouvatOmluvaOmylOnehdyOpakovatOpasekOperaceOpiceOpilostOpisovatOporaOpoziceOpravduOprotiOrbitalOrchestrOrgieOrliceOrlojOrtelOsadaOschnoutOsikaOsivoOslavaOslepitOslnitOslovitOsnovaOsobaOsolitOspalecOstenOstrahaOstudaOstychOsvojitOteplitOtiskOtopOtrhatOtrlostOtrokOtrubyOtvorOvanoutOvarOvesOvlivnitOvoceOxidOzdobaPachatelPacientPadouchPahorekPaktPalandaPalecPalivoPalubaPamfletPamlsekPanenkaPanikaPannaPanovatPanstvoPantoflePaprikaParketaParodiePartaParukaParybaPasekaPasivitaPastelkaPatentPatronaPavoukPaznehtPazourekPeckaPedagogPejsekPekloPelotonPenaltaPendrekPenzePeriskopPeroPestrostPetardaPeticePetrolejPevninaPexesoPianistaPihaPijavicePiklePiknikPilinaPilnostPilulkaPinzetaPipetaPisatelPistolePitevnaPivnicePivovarPlacentaPlakatPlamenPlanetaPlastikaPlatitPlavidloPlazPlechPlemenoPlentaPlesPletivoPlevelPlivatPlnitPlnoPlochaPlodinaPlombaPloutPlukPlynPobavitPobytPochodPocitPoctivecPodatPodcenitPodepsatPodhledPodivitPodkladPodmanitPodnikPodobaPodporaPodrazPodstataPodvodPodzimPoeziePohankaPohnutkaPohovorPohromaPohybPointaPojistkaPojmoutPokazitPoklesPokojPokrokPokutaPokynPolednePolibekPolknoutPolohaPolynomPomaluPominoutPomlkaPomocPomstaPomysletPonechatPonorkaPonurostPopadatPopelPopisekPoplachPoprositPopsatPopudPoradcePorcePorodPoruchaPoryvPosaditPosedPosilaPoskokPoslanecPosouditPospoluPostavaPosudekPosypPotahPotkanPotleskPotomekPotravaPotupaPotvoraPoukazPoutoPouzdroPovahaPovidlaPovlakPovozPovrchPovstatPovykPovzdechPozdravPozemekPoznatekPozorPozvatPracovatPrahoryPraktikaPralesPraotecPraporekPrasePravdaPrincipPrknoProbuditProcentoProdejProfeseProhraProjektProlomitPromilePronikatPropadProrokProsbaProtonProutekProvazPrskavkaPrstenPrudkostPrutPrvekPrvohoryPsanecPsovodPstruhPtactvoPubertaPuchPudlPukavecPuklinaPukrlePultPumpaPuncPupenPusaPusinkaPustinaPutovatPutykaPyramidaPyskPytelRacekRachotRadiaceRadniceRadonRaftRagbyRaketaRakovinaRamenoRampouchRandeRarachRaritaRasovnaRastrRatolestRazanceRazidloReagovatReakceReceptRedaktorReferentReflexRejnokReklamaRekordRekrutRektorReputaceRevizeRevmaRevolverRezervaRiskovatRizikoRobotikaRodokmenRohovkaRokleRokokoRomanetoRopovodRopuchaRorejsRosolRostlinaRotmistrRotopedRotundaRoubenkaRouchoRoupRouraRovinaRovniceRozborRozchodRozdatRozeznatRozhodceRozinkaRozjezdRozkazRozlohaRozmarRozpadRozruchRozsahRoztokRozumRozvodRubrikaRuchadloRukaviceRukopisRybaRybolovRychlostRydloRypadloRytinaRyzostSadistaSahatSakoSamecSamizdatSamotaSanitkaSardinkaSasankaSatelitSazbaSazeniceSborSchovatSebrankaSeceseSedadloSedimentSedloSehnatSejmoutSekeraSektaSekundaSekvojeSemenoSenoServisSesaditSeshoraSeskokSeslatSestraSesuvSesypatSetbaSetinaSetkatSetnoutSetrvatSeverSeznamShodaShrnoutSifonSilniceSirkaSirotekSirupSituaceSkafandrSkaliskoSkanzenSkautSkeptikSkicaSkladbaSkleniceSkloSkluzSkobaSkokanSkoroSkriptaSkrzSkupinaSkvostSkvrnaSlabikaSladidloSlaninaSlastSlavnostSledovatSlepecSlevaSlezinaSlibSlinaSlizniceSlonSloupekSlovoSluchSluhaSlunceSlupkaSlzaSmaragdSmetanaSmilstvoSmlouvaSmogSmradSmrkSmrtkaSmutekSmyslSnadSnahaSnobSobotaSochaSodovkaSokolSopkaSotvaSoubojSoucitSoudceSouhlasSouladSoumrakSoupravaSousedSoutokSouvisetSpalovnaSpasitelSpisSplavSpodekSpojenecSpoluSponzorSpornostSpoustaSprchaSpustitSrandaSrazSrdceSrnaSrnecSrovnatSrpenSrstSrubStaniceStarostaStatikaStavbaStehnoStezkaStodolaStolekStopaStornoStoupatStrachStresStrhnoutStromStrunaStudnaStupniceStvolStykSubjektSubtropySucharSudostSuknoSundatSunoutSurikataSurovinaSvahSvalstvoSvetrSvatbaSvazekSvisleSvitekSvobodaSvodidloSvorkaSvrabSykavkaSykotSynekSynovecSypatSypkostSyrovostSyselSytostTabletkaTabuleTahounTajemnoTajfunTajgaTajitTajnostTaktikaTamhleTamponTancovatTanecTankerTapetaTaveninaTazatelTechnikaTehdyTekutinaTelefonTemnotaTendenceTenistaTenorTeplotaTepnaTeprveTerapieTermoskaTextilTichoTiskopisTitulekTkadlecTkaninaTlapkaTleskatTlukotTlupaTmelToaletaTopinkaTopolTorzoTouhaToulecTradiceTraktorTrampTrasaTraverzaTrefitTrestTrezorTrhavinaTrhlinaTrochuTrojiceTroskaTroubaTrpceTrpitelTrpkostTrubecTruchlitTruhliceTrusTrvatTudyTuhnoutTuhostTundraTuristaTurnajTuzemskoTvarohTvorbaTvrdostTvrzTygrTykevUbohostUbozeUbratUbrousekUbrusUbytovnaUchoUctivostUdivitUhraditUjednatUjistitUjmoutUkazatelUklidnitUklonitUkotvitUkrojitUliceUlitaUlovitUmyvadloUnavitUniformaUniknoutUpadnoutUplatnitUplynoutUpoutatUpravitUranUrazitUsednoutUsilovatUsmrtitUsnadnitUsnoutUsouditUstlatUstrnoutUtahovatUtkatUtlumitUtonoutUtopenecUtrousitUvalitUvolnitUvozovkaUzdravitUzelUzeninaUzlinaUznatVagonValchaValounVanaVandalVanilkaVaranVarhanyVarovatVcelkuVchodVdovaVedroVegetaceVejceVelbloudVeletrhVelitelVelmocVelrybaVenkovVerandaVerzeVeselkaVeskrzeVesniceVespoduVestaVeterinaVeverkaVibraceVichrVideohraVidinaVidleVilaViniceVisetVitalitaVizeVizitkaVjezdVkladVkusVlajkaVlakVlasecVlevoVlhkostVlivVlnovkaVloupatVnucovatVnukVodaVodivostVodoznakVodstvoVojenskyVojnaVojskoVolantVolbaVolitVolnoVoskovkaVozidloVozovnaVpravoVrabecVracetVrahVrataVrbaVrcholekVrhatVrstvaVrtuleVsaditVstoupitVstupVtipVybavitVybratVychovatVydatVydraVyfotitVyhledatVyhnoutVyhoditVyhraditVyhubitVyjasnitVyjetVyjmoutVyklopitVykonatVylekatVymazatVymezitVymizetVymysletVynechatVynikatVynutitVypadatVyplatitVypravitVypustitVyrazitVyrovnatVyrvatVyslovitVysokoVystavitVysunoutVysypatVytasitVytesatVytratitVyvinoutVyvolatVyvrhelVyzdobitVyznatVzaduVzbuditVzchopitVzdorVzduchVzdychatVzestupVzhledemVzkazVzlykatVznikVzorekVzpouraVztahVztekXylofonZabratZabydletZachovatZadarmoZadusitZafoukatZahltitZahoditZahradaZahynoutZajatecZajetZajistitZaklepatZakoupitZalepitZamezitZamotatZamysletZanechatZanikatZaplatitZapojitZapsatZarazitZastavitZasunoutZatajitZatemnitZatknoutZaujmoutZavalitZaveletZavinitZavolatZavrtatZazvonitZbavitZbrusuZbudovatZbytekZdalekaZdarmaZdatnostZdivoZdobitZdrojZdvihZdymadloZeleninaZemanZeminaZeptatZezaduZezdolaZhatitZhltnoutZhlubokaZhotovitZhrubaZimaZimniceZjemnitZklamatZkoumatZkratkaZkumavkaZlatoZlehkaZlobaZlomZlostZlozvykZmapovatZmarZmatekZmijeZmizetZmocnitZmodratZmrzlinaZmutovatZnakZnalostZnamenatZnovuZobrazitZotavitZoubekZoufaleZploditZpomalitZpravaZprostitZprudkaZprvuZradaZranitZrcadloZrnitostZrnoZrovnaZrychlitZrzavostZtichaZtratitZubovinaZubrZvednoutZvenkuZveselaZvonZvratZvukovodZvyk";var rn=null;function loadWords(Wt){if(rn!=null){return}rn=an.replace(/([A-Z])/g," $1").toLowerCase().substring(1).split(" ");if(nn.Wordlist.check(Wt)!=="0x25f44555f4af25b51a711136e1c7d6e50ce9f8917d39d6b1f076b2bb4d2fac1a"){rn=null;throw new Error("BIP39 Wordlist for en (English) FAILED")}}var In=function(Wt){tn(LangCz,Wt);function LangCz(){return Wt.call(this,"cz")||this}LangCz.prototype.getWord=function(Wt){loadWords(this);return rn[Wt]};LangCz.prototype.getWordIndex=function(Wt){loadWords(this);return rn.indexOf(Wt)};return LangCz}(nn.Wordlist);var sn=new In;Pt.langCz=sn;nn.Wordlist.register(sn)},73120:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.langEn=void 0;var nn=en(18210);var an="AbandonAbilityAbleAboutAboveAbsentAbsorbAbstractAbsurdAbuseAccessAccidentAccountAccuseAchieveAcidAcousticAcquireAcrossActActionActorActressActualAdaptAddAddictAddressAdjustAdmitAdultAdvanceAdviceAerobicAffairAffordAfraidAgainAgeAgentAgreeAheadAimAirAirportAisleAlarmAlbumAlcoholAlertAlienAllAlleyAllowAlmostAloneAlphaAlreadyAlsoAlterAlwaysAmateurAmazingAmongAmountAmusedAnalystAnchorAncientAngerAngleAngryAnimalAnkleAnnounceAnnualAnotherAnswerAntennaAntiqueAnxietyAnyApartApologyAppearAppleApproveAprilArchArcticAreaArenaArgueArmArmedArmorArmyAroundArrangeArrestArriveArrowArtArtefactArtistArtworkAskAspectAssaultAssetAssistAssumeAsthmaAthleteAtomAttackAttendAttitudeAttractAuctionAuditAugustAuntAuthorAutoAutumnAverageAvocadoAvoidAwakeAwareAwayAwesomeAwfulAwkwardAxisBabyBachelorBaconBadgeBagBalanceBalconyBallBambooBananaBannerBarBarelyBargainBarrelBaseBasicBasketBattleBeachBeanBeautyBecauseBecomeBeefBeforeBeginBehaveBehindBelieveBelowBeltBenchBenefitBestBetrayBetterBetweenBeyondBicycleBidBikeBindBiologyBirdBirthBitterBlackBladeBlameBlanketBlastBleakBlessBlindBloodBlossomBlouseBlueBlurBlushBoardBoatBodyBoilBombBoneBonusBookBoostBorderBoringBorrowBossBottomBounceBoxBoyBracketBrainBrandBrassBraveBreadBreezeBrickBridgeBriefBrightBringBriskBroccoliBrokenBronzeBroomBrotherBrownBrushBubbleBuddyBudgetBuffaloBuildBulbBulkBulletBundleBunkerBurdenBurgerBurstBusBusinessBusyButterBuyerBuzzCabbageCabinCableCactusCageCakeCallCalmCameraCampCanCanalCancelCandyCannonCanoeCanvasCanyonCapableCapitalCaptainCarCarbonCardCargoCarpetCarryCartCaseCashCasinoCastleCasualCatCatalogCatchCategoryCattleCaughtCauseCautionCaveCeilingCeleryCementCensusCenturyCerealCertainChairChalkChampionChangeChaosChapterChargeChaseChatCheapCheckCheeseChefCherryChestChickenChiefChildChimneyChoiceChooseChronicChuckleChunkChurnCigarCinnamonCircleCitizenCityCivilClaimClapClarifyClawClayCleanClerkCleverClickClientCliffClimbClinicClipClockClogCloseClothCloudClownClubClumpClusterClutchCoachCoastCoconutCodeCoffeeCoilCoinCollectColorColumnCombineComeComfortComicCommonCompanyConcertConductConfirmCongressConnectConsiderControlConvinceCookCoolCopperCopyCoralCoreCornCorrectCostCottonCouchCountryCoupleCourseCousinCoverCoyoteCrackCradleCraftCramCraneCrashCraterCrawlCrazyCreamCreditCreekCrewCricketCrimeCrispCriticCropCrossCrouchCrowdCrucialCruelCruiseCrumbleCrunchCrushCryCrystalCubeCultureCupCupboardCuriousCurrentCurtainCurveCushionCustomCuteCycleDadDamageDampDanceDangerDaringDashDaughterDawnDayDealDebateDebrisDecadeDecemberDecideDeclineDecorateDecreaseDeerDefenseDefineDefyDegreeDelayDeliverDemandDemiseDenialDentistDenyDepartDependDepositDepthDeputyDeriveDescribeDesertDesignDeskDespairDestroyDetailDetectDevelopDeviceDevoteDiagramDialDiamondDiaryDiceDieselDietDifferDigitalDignityDilemmaDinnerDinosaurDirectDirtDisagreeDiscoverDiseaseDishDismissDisorderDisplayDistanceDivertDivideDivorceDizzyDoctorDocumentDogDollDolphinDomainDonateDonkeyDonorDoorDoseDoubleDoveDraftDragonDramaDrasticDrawDreamDressDriftDrillDrinkDripDriveDropDrumDryDuckDumbDuneDuringDustDutchDutyDwarfDynamicEagerEagleEarlyEarnEarthEasilyEastEasyEchoEcologyEconomyEdgeEditEducateEffortEggEightEitherElbowElderElectricElegantElementElephantElevatorEliteElseEmbarkEmbodyEmbraceEmergeEmotionEmployEmpowerEmptyEnableEnactEndEndlessEndorseEnemyEnergyEnforceEngageEngineEnhanceEnjoyEnlistEnoughEnrichEnrollEnsureEnterEntireEntryEnvelopeEpisodeEqualEquipEraEraseErodeErosionErrorEruptEscapeEssayEssenceEstateEternalEthicsEvidenceEvilEvokeEvolveExactExampleExcessExchangeExciteExcludeExcuseExecuteExerciseExhaustExhibitExileExistExitExoticExpandExpectExpireExplainExposeExpressExtendExtraEyeEyebrowFabricFaceFacultyFadeFaintFaithFallFalseFameFamilyFamousFanFancyFantasyFarmFashionFatFatalFatherFatigueFaultFavoriteFeatureFebruaryFederalFeeFeedFeelFemaleFenceFestivalFetchFeverFewFiberFictionFieldFigureFileFilmFilterFinalFindFineFingerFinishFireFirmFirstFiscalFishFitFitnessFixFlagFlameFlashFlatFlavorFleeFlightFlipFloatFlockFloorFlowerFluidFlushFlyFoamFocusFogFoilFoldFollowFoodFootForceForestForgetForkFortuneForumForwardFossilFosterFoundFoxFragileFrameFrequentFreshFriendFringeFrogFrontFrostFrownFrozenFruitFuelFunFunnyFurnaceFuryFutureGadgetGainGalaxyGalleryGameGapGarageGarbageGardenGarlicGarmentGasGaspGateGatherGaugeGazeGeneralGeniusGenreGentleGenuineGestureGhostGiantGiftGiggleGingerGiraffeGirlGiveGladGlanceGlareGlassGlideGlimpseGlobeGloomGloryGloveGlowGlueGoatGoddessGoldGoodGooseGorillaGospelGossipGovernGownGrabGraceGrainGrantGrapeGrassGravityGreatGreenGridGriefGritGroceryGroupGrowGruntGuardGuessGuideGuiltGuitarGunGymHabitHairHalfHammerHamsterHandHappyHarborHardHarshHarvestHatHaveHawkHazardHeadHealthHeartHeavyHedgehogHeightHelloHelmetHelpHenHeroHiddenHighHillHintHipHireHistoryHobbyHockeyHoldHoleHolidayHollowHomeHoneyHoodHopeHornHorrorHorseHospitalHostHotelHourHoverHubHugeHumanHumbleHumorHundredHungryHuntHurdleHurryHurtHusbandHybridIceIconIdeaIdentifyIdleIgnoreIllIllegalIllnessImageImitateImmenseImmuneImpactImposeImproveImpulseInchIncludeIncomeIncreaseIndexIndicateIndoorIndustryInfantInflictInformInhaleInheritInitialInjectInjuryInmateInnerInnocentInputInquiryInsaneInsectInsideInspireInstallIntactInterestIntoInvestInviteInvolveIronIslandIsolateIssueItemIvoryJacketJaguarJarJazzJealousJeansJellyJewelJobJoinJokeJourneyJoyJudgeJuiceJumpJungleJuniorJunkJustKangarooKeenKeepKetchupKeyKickKidKidneyKindKingdomKissKitKitchenKiteKittenKiwiKneeKnifeKnockKnowLabLabelLaborLadderLadyLakeLampLanguageLaptopLargeLaterLatinLaughLaundryLavaLawLawnLawsuitLayerLazyLeaderLeafLearnLeaveLectureLeftLegLegalLegendLeisureLemonLendLengthLensLeopardLessonLetterLevelLiarLibertyLibraryLicenseLifeLiftLightLikeLimbLimitLinkLionLiquidListLittleLiveLizardLoadLoanLobsterLocalLockLogicLonelyLongLoopLotteryLoudLoungeLoveLoyalLuckyLuggageLumberLunarLunchLuxuryLyricsMachineMadMagicMagnetMaidMailMainMajorMakeMammalManManageMandateMangoMansionManualMapleMarbleMarchMarginMarineMarketMarriageMaskMassMasterMatchMaterialMathMatrixMatterMaximumMazeMeadowMeanMeasureMeatMechanicMedalMediaMelodyMeltMemberMemoryMentionMenuMercyMergeMeritMerryMeshMessageMetalMethodMiddleMidnightMilkMillionMimicMindMinimumMinorMinuteMiracleMirrorMiseryMissMistakeMixMixedMixtureMobileModelModifyMomMomentMonitorMonkeyMonsterMonthMoonMoralMoreMorningMosquitoMotherMotionMotorMountainMouseMoveMovieMuchMuffinMuleMultiplyMuscleMuseumMushroomMusicMustMutualMyselfMysteryMythNaiveNameNapkinNarrowNastyNationNatureNearNeckNeedNegativeNeglectNeitherNephewNerveNestNetNetworkNeutralNeverNewsNextNiceNightNobleNoiseNomineeNoodleNormalNorthNoseNotableNoteNothingNoticeNovelNowNuclearNumberNurseNutOakObeyObjectObligeObscureObserveObtainObviousOccurOceanOctoberOdorOffOfferOfficeOftenOilOkayOldOliveOlympicOmitOnceOneOnionOnlineOnlyOpenOperaOpinionOpposeOptionOrangeOrbitOrchardOrderOrdinaryOrganOrientOriginalOrphanOstrichOtherOutdoorOuterOutputOutsideOvalOvenOverOwnOwnerOxygenOysterOzonePactPaddlePagePairPalacePalmPandaPanelPanicPantherPaperParadeParentParkParrotPartyPassPatchPathPatientPatrolPatternPausePavePaymentPeacePeanutPearPeasantPelicanPenPenaltyPencilPeoplePepperPerfectPermitPersonPetPhonePhotoPhrasePhysicalPianoPicnicPicturePiecePigPigeonPillPilotPinkPioneerPipePistolPitchPizzaPlacePlanetPlasticPlatePlayPleasePledgePluckPlugPlungePoemPoetPointPolarPolePolicePondPonyPoolPopularPortionPositionPossiblePostPotatoPotteryPovertyPowderPowerPracticePraisePredictPreferPreparePresentPrettyPreventPricePridePrimaryPrintPriorityPrisonPrivatePrizeProblemProcessProduceProfitProgramProjectPromoteProofPropertyProsperProtectProudProvidePublicPuddingPullPulpPulsePumpkinPunchPupilPuppyPurchasePurityPurposePursePushPutPuzzlePyramidQualityQuantumQuarterQuestionQuickQuitQuizQuoteRabbitRaccoonRaceRackRadarRadioRailRainRaiseRallyRampRanchRandomRangeRapidRareRateRatherRavenRawRazorReadyRealReasonRebelRebuildRecallReceiveRecipeRecordRecycleReduceReflectReformRefuseRegionRegretRegularRejectRelaxReleaseReliefRelyRemainRememberRemindRemoveRenderRenewRentReopenRepairRepeatReplaceReportRequireRescueResembleResistResourceResponseResultRetireRetreatReturnReunionRevealReviewRewardRhythmRibRibbonRiceRichRideRidgeRifleRightRigidRingRiotRippleRiskRitualRivalRiverRoadRoastRobotRobustRocketRomanceRoofRookieRoomRoseRotateRoughRoundRouteRoyalRubberRudeRugRuleRunRunwayRuralSadSaddleSadnessSafeSailSaladSalmonSalonSaltSaluteSameSampleSandSatisfySatoshiSauceSausageSaveSayScaleScanScareScatterSceneSchemeSchoolScienceScissorsScorpionScoutScrapScreenScriptScrubSeaSearchSeasonSeatSecondSecretSectionSecuritySeedSeekSegmentSelectSellSeminarSeniorSenseSentenceSeriesServiceSessionSettleSetupSevenShadowShaftShallowShareShedShellSheriffShieldShiftShineShipShiverShockShoeShootShopShortShoulderShoveShrimpShrugShuffleShySiblingSickSideSiegeSightSignSilentSilkSillySilverSimilarSimpleSinceSingSirenSisterSituateSixSizeSkateSketchSkiSkillSkinSkirtSkullSlabSlamSleepSlenderSliceSlideSlightSlimSloganSlotSlowSlushSmallSmartSmileSmokeSmoothSnackSnakeSnapSniffSnowSoapSoccerSocialSockSodaSoftSolarSoldierSolidSolutionSolveSomeoneSongSoonSorrySortSoulSoundSoupSourceSouthSpaceSpareSpatialSpawnSpeakSpecialSpeedSpellSpendSphereSpiceSpiderSpikeSpinSpiritSplitSpoilSponsorSpoonSportSpotSpraySpreadSpringSpySquareSqueezeSquirrelStableStadiumStaffStageStairsStampStandStartStateStaySteakSteelStemStepStereoStickStillStingStockStomachStoneStoolStoryStoveStrategyStreetStrikeStrongStruggleStudentStuffStumbleStyleSubjectSubmitSubwaySuccessSuchSuddenSufferSugarSuggestSuitSummerSunSunnySunsetSuperSupplySupremeSureSurfaceSurgeSurpriseSurroundSurveySuspectSustainSwallowSwampSwapSwarmSwearSweetSwiftSwimSwingSwitchSwordSymbolSymptomSyrupSystemTableTackleTagTailTalentTalkTankTapeTargetTaskTasteTattooTaxiTeachTeamTellTenTenantTennisTentTermTestTextThankThatThemeThenTheoryThereTheyThingThisThoughtThreeThriveThrowThumbThunderTicketTideTigerTiltTimberTimeTinyTipTiredTissueTitleToastTobaccoTodayToddlerToeTogetherToiletTokenTomatoTomorrowToneTongueTonightToolToothTopTopicToppleTorchTornadoTortoiseTossTotalTouristTowardTowerTownToyTrackTradeTrafficTragicTrainTransferTrapTrashTravelTrayTreatTreeTrendTrialTribeTrickTriggerTrimTripTrophyTroubleTruckTrueTrulyTrumpetTrustTruthTryTubeTuitionTumbleTunaTunnelTurkeyTurnTurtleTwelveTwentyTwiceTwinTwistTwoTypeTypicalUglyUmbrellaUnableUnawareUncleUncoverUnderUndoUnfairUnfoldUnhappyUniformUniqueUnitUniverseUnknownUnlockUntilUnusualUnveilUpdateUpgradeUpholdUponUpperUpsetUrbanUrgeUsageUseUsedUsefulUselessUsualUtilityVacantVacuumVagueValidValleyValveVanVanishVaporVariousVastVaultVehicleVelvetVendorVentureVenueVerbVerifyVersionVeryVesselVeteranViableVibrantViciousVictoryVideoViewVillageVintageViolinVirtualVirusVisaVisitVisualVitalVividVocalVoiceVoidVolcanoVolumeVoteVoyageWageWagonWaitWalkWallWalnutWantWarfareWarmWarriorWashWaspWasteWaterWaveWayWealthWeaponWearWeaselWeatherWebWeddingWeekendWeirdWelcomeWestWetWhaleWhatWheatWheelWhenWhereWhipWhisperWideWidthWifeWildWillWinWindowWineWingWinkWinnerWinterWireWisdomWiseWishWitnessWolfWomanWonderWoodWoolWordWorkWorldWorryWorthWrapWreckWrestleWristWriteWrongYardYearYellowYouYoungYouthZebraZeroZoneZoo";var rn=null;function loadWords(Wt){if(rn!=null){return}rn=an.replace(/([A-Z])/g," $1").toLowerCase().substring(1).split(" ");if(nn.Wordlist.check(Wt)!=="0x3c8acc1e7b08d8e76f9fda015ef48dc8c710a73cb7e0f77b2c18a9b5a7adde60"){rn=null;throw new Error("BIP39 Wordlist for en (English) FAILED")}}var In=function(Wt){tn(LangEn,Wt);function LangEn(){return Wt.call(this,"en")||this}LangEn.prototype.getWord=function(Wt){loadWords(this);return rn[Wt]};LangEn.prototype.getWordIndex=function(Wt){loadWords(this);return rn.indexOf(Wt)};return LangEn}(nn.Wordlist);var sn=new In;Pt.langEn=sn;nn.Wordlist.register(sn)},78091:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.langEs=void 0;var nn=en(13859);var an=en(18210);var rn="A/bacoAbdomenAbejaAbiertoAbogadoAbonoAbortoAbrazoAbrirAbueloAbusoAcabarAcademiaAccesoAccio/nAceiteAcelgaAcentoAceptarA/cidoAclararAcne/AcogerAcosoActivoActoActrizActuarAcudirAcuerdoAcusarAdictoAdmitirAdoptarAdornoAduanaAdultoAe/reoAfectarAficio/nAfinarAfirmarA/gilAgitarAgoni/aAgostoAgotarAgregarAgrioAguaAgudoA/guilaAgujaAhogoAhorroAireAislarAjedrezAjenoAjusteAlacra/nAlambreAlarmaAlbaA/lbumAlcaldeAldeaAlegreAlejarAlertaAletaAlfilerAlgaAlgodo/nAliadoAlientoAlivioAlmaAlmejaAlmi/barAltarAltezaAltivoAltoAlturaAlumnoAlzarAmableAmanteAmapolaAmargoAmasarA/mbarA/mbitoAmenoAmigoAmistadAmorAmparoAmplioAnchoAncianoAnclaAndarAnde/nAnemiaA/nguloAnilloA/nimoAni/sAnotarAntenaAntiguoAntojoAnualAnularAnuncioA~adirA~ejoA~oApagarAparatoApetitoApioAplicarApodoAporteApoyoAprenderAprobarApuestaApuroAradoAra~aArarA/rbitroA/rbolArbustoArchivoArcoArderArdillaArduoA/reaA/ridoAriesArmoni/aArne/sAromaArpaArpo/nArregloArrozArrugaArteArtistaAsaAsadoAsaltoAscensoAsegurarAseoAsesorAsientoAsiloAsistirAsnoAsombroA/speroAstillaAstroAstutoAsumirAsuntoAtajoAtaqueAtarAtentoAteoA/ticoAtletaA/tomoAtraerAtrozAtu/nAudazAudioAugeAulaAumentoAusenteAutorAvalAvanceAvaroAveAvellanaAvenaAvestruzAvio/nAvisoAyerAyudaAyunoAzafra/nAzarAzoteAzu/carAzufreAzulBabaBaborBacheBahi/aBaileBajarBalanzaBalco/nBaldeBambu/BancoBandaBa~oBarbaBarcoBarnizBarroBa/sculaBasto/nBasuraBatallaBateri/aBatirBatutaBau/lBazarBebe/BebidaBelloBesarBesoBestiaBichoBienBingoBlancoBloqueBlusaBoaBobinaBoboBocaBocinaBodaBodegaBoinaBolaBoleroBolsaBombaBondadBonitoBonoBonsa/iBordeBorrarBosqueBoteBoti/nBo/vedaBozalBravoBrazoBrechaBreveBrilloBrincoBrisaBrocaBromaBronceBroteBrujaBruscoBrutoBuceoBucleBuenoBueyBufandaBufo/nBu/hoBuitreBultoBurbujaBurlaBurroBuscarButacaBuzo/nCaballoCabezaCabinaCabraCacaoCada/verCadenaCaerCafe/Cai/daCaima/nCajaCajo/nCalCalamarCalcioCaldoCalidadCalleCalmaCalorCalvoCamaCambioCamelloCaminoCampoCa/ncerCandilCanelaCanguroCanicaCantoCa~aCa~o/nCaobaCaosCapazCapita/nCapoteCaptarCapuchaCaraCarbo/nCa/rcelCaretaCargaCari~oCarneCarpetaCarroCartaCasaCascoCaseroCaspaCastorCatorceCatreCaudalCausaCazoCebollaCederCedroCeldaCe/lebreCelosoCe/lulaCementoCenizaCentroCercaCerdoCerezaCeroCerrarCertezaCe/spedCetroChacalChalecoChampu/ChanclaChapaCharlaChicoChisteChivoChoqueChozaChuletaChuparCiclo/nCiegoCieloCienCiertoCifraCigarroCimaCincoCineCintaCipre/sCircoCiruelaCisneCitaCiudadClamorClanClaroClaseClaveClienteClimaCli/nicaCobreCoccio/nCochinoCocinaCocoCo/digoCodoCofreCogerCoheteCoji/nCojoColaColchaColegioColgarColinaCollarColmoColumnaCombateComerComidaCo/modoCompraCondeConejoCongaConocerConsejoContarCopaCopiaCorazo/nCorbataCorchoCordo/nCoronaCorrerCoserCosmosCostaCra/neoCra/terCrearCrecerCrei/doCremaCri/aCrimenCriptaCrisisCromoCro/nicaCroquetaCrudoCruzCuadroCuartoCuatroCuboCubrirCucharaCuelloCuentoCuerdaCuestaCuevaCuidarCulebraCulpaCultoCumbreCumplirCunaCunetaCuotaCupo/nCu/pulaCurarCuriosoCursoCurvaCutisDamaDanzaDarDardoDa/tilDeberDe/bilDe/cadaDecirDedoDefensaDefinirDejarDelfi/nDelgadoDelitoDemoraDensoDentalDeporteDerechoDerrotaDesayunoDeseoDesfileDesnudoDestinoDesvi/oDetalleDetenerDeudaDi/aDiabloDiademaDiamanteDianaDiarioDibujoDictarDienteDietaDiezDifi/cilDignoDilemaDiluirDineroDirectoDirigirDiscoDise~oDisfrazDivaDivinoDobleDoceDolorDomingoDonDonarDoradoDormirDorsoDosDosisDrago/nDrogaDuchaDudaDueloDue~oDulceDu/oDuqueDurarDurezaDuroE/banoEbrioEcharEcoEcuadorEdadEdicio/nEdificioEditorEducarEfectoEficazEjeEjemploElefanteElegirElementoElevarElipseE/liteElixirElogioEludirEmbudoEmitirEmocio/nEmpateEmpe~oEmpleoEmpresaEnanoEncargoEnchufeEnci/aEnemigoEneroEnfadoEnfermoEnga~oEnigmaEnlaceEnormeEnredoEnsayoEnse~arEnteroEntrarEnvaseEnvi/oE/pocaEquipoErizoEscalaEscenaEscolarEscribirEscudoEsenciaEsferaEsfuerzoEspadaEspejoEspi/aEsposaEspumaEsqui/EstarEsteEstiloEstufaEtapaEternoE/ticaEtniaEvadirEvaluarEventoEvitarExactoExamenExcesoExcusaExentoExigirExilioExistirE/xitoExpertoExplicarExponerExtremoFa/bricaFa/bulaFachadaFa/cilFactorFaenaFajaFaldaFalloFalsoFaltarFamaFamiliaFamosoFarao/nFarmaciaFarolFarsaFaseFatigaFaunaFavorFaxFebreroFechaFelizFeoFeriaFerozFe/rtilFervorFesti/nFiableFianzaFiarFibraFiccio/nFichaFideoFiebreFielFieraFiestaFiguraFijarFijoFilaFileteFilialFiltroFinFincaFingirFinitoFirmaFlacoFlautaFlechaFlorFlotaFluirFlujoFlu/orFobiaFocaFogataFogo/nFolioFolletoFondoFormaForroFortunaForzarFosaFotoFracasoFra/gilFranjaFraseFraudeFrei/rFrenoFresaFri/oFritoFrutaFuegoFuenteFuerzaFugaFumarFuncio/nFundaFurgo/nFuriaFusilFu/tbolFuturoGacelaGafasGaitaGajoGalaGaleri/aGalloGambaGanarGanchoGangaGansoGarajeGarzaGasolinaGastarGatoGavila/nGemeloGemirGenGe/neroGenioGenteGeranioGerenteGermenGestoGiganteGimnasioGirarGiroGlaciarGloboGloriaGolGolfoGolosoGolpeGomaGordoGorilaGorraGotaGoteoGozarGradaGra/ficoGranoGrasaGratisGraveGrietaGrilloGripeGrisGritoGrosorGru/aGruesoGrumoGrupoGuanteGuapoGuardiaGuerraGui/aGui~oGuionGuisoGuitarraGusanoGustarHaberHa/bilHablarHacerHachaHadaHallarHamacaHarinaHazHaza~aHebillaHebraHechoHeladoHelioHembraHerirHermanoHe/roeHervirHieloHierroHi/gadoHigieneHijoHimnoHistoriaHocicoHogarHogueraHojaHombreHongoHonorHonraHoraHormigaHornoHostilHoyoHuecoHuelgaHuertaHuesoHuevoHuidaHuirHumanoHu/medoHumildeHumoHundirHuraca/nHurtoIconoIdealIdiomaI/doloIglesiaIglu/IgualIlegalIlusio/nImagenIma/nImitarImparImperioImponerImpulsoIncapazI/ndiceInerteInfielInformeIngenioInicioInmensoInmuneInnatoInsectoInstanteIntere/sI/ntimoIntuirInu/tilInviernoIraIrisIroni/aIslaIsloteJabali/Jabo/nJamo/nJarabeJardi/nJarraJaulaJazmi/nJefeJeringaJineteJornadaJorobaJovenJoyaJuergaJuevesJuezJugadorJugoJugueteJuicioJuncoJunglaJunioJuntarJu/piterJurarJustoJuvenilJuzgarKiloKoalaLabioLacioLacraLadoLadro/nLagartoLa/grimaLagunaLaicoLamerLa/minaLa/mparaLanaLanchaLangostaLanzaLa/pizLargoLarvaLa/stimaLataLa/texLatirLaurelLavarLazoLealLeccio/nLecheLectorLeerLegio/nLegumbreLejanoLenguaLentoLe~aLeo/nLeopardoLesio/nLetalLetraLeveLeyendaLibertadLibroLicorLi/derLidiarLienzoLigaLigeroLimaLi/miteLimo/nLimpioLinceLindoLi/neaLingoteLinoLinternaLi/quidoLisoListaLiteraLitioLitroLlagaLlamaLlantoLlaveLlegarLlenarLlevarLlorarLloverLluviaLoboLocio/nLocoLocuraLo/gicaLogroLombrizLomoLonjaLoteLuchaLucirLugarLujoLunaLunesLupaLustroLutoLuzMacetaMachoMaderaMadreMaduroMaestroMafiaMagiaMagoMai/zMaldadMaletaMallaMaloMama/MamboMamutMancoMandoManejarMangaManiqui/ManjarManoMansoMantaMa~anaMapaMa/quinaMarMarcoMareaMarfilMargenMaridoMa/rmolMarro/nMartesMarzoMasaMa/scaraMasivoMatarMateriaMatizMatrizMa/ximoMayorMazorcaMechaMedallaMedioMe/dulaMejillaMejorMelenaMelo/nMemoriaMenorMensajeMenteMenu/MercadoMerengueMe/ritoMesMeso/nMetaMeterMe/todoMetroMezclaMiedoMielMiembroMigaMilMilagroMilitarMillo/nMimoMinaMineroMi/nimoMinutoMiopeMirarMisaMiseriaMisilMismoMitadMitoMochilaMocio/nModaModeloMohoMojarMoldeMolerMolinoMomentoMomiaMonarcaMonedaMonjaMontoMo~oMoradaMorderMorenoMorirMorroMorsaMortalMoscaMostrarMotivoMoverMo/vilMozoMuchoMudarMuebleMuelaMuerteMuestraMugreMujerMulaMuletaMultaMundoMu~ecaMuralMuroMu/sculoMuseoMusgoMu/sicaMusloNa/carNacio/nNadarNaipeNaranjaNarizNarrarNasalNatalNativoNaturalNa/useaNavalNaveNavidadNecioNe/ctarNegarNegocioNegroNeo/nNervioNetoNeutroNevarNeveraNichoNidoNieblaNietoNi~ezNi~oNi/tidoNivelNoblezaNocheNo/minaNoriaNormaNorteNotaNoticiaNovatoNovelaNovioNubeNucaNu/cleoNudilloNudoNueraNueveNuezNuloNu/meroNutriaOasisObesoObispoObjetoObraObreroObservarObtenerObvioOcaOcasoOce/anoOchentaOchoOcioOcreOctavoOctubreOcultoOcuparOcurrirOdiarOdioOdiseaOesteOfensaOfertaOficioOfrecerOgroOi/doOi/rOjoOlaOleadaOlfatoOlivoOllaOlmoOlorOlvidoOmbligoOndaOnzaOpacoOpcio/nO/peraOpinarOponerOptarO/pticaOpuestoOracio/nOradorOralO/rbitaOrcaOrdenOrejaO/rganoOrgi/aOrgulloOrienteOrigenOrillaOroOrquestaOrugaOsadi/aOscuroOseznoOsoOstraOto~oOtroOvejaO/vuloO/xidoOxi/genoOyenteOzonoPactoPadrePaellaPa/ginaPagoPai/sPa/jaroPalabraPalcoPaletaPa/lidoPalmaPalomaPalparPanPanalPa/nicoPanteraPa~ueloPapa/PapelPapillaPaquetePararParcelaParedParirParoPa/rpadoParquePa/rrafoPartePasarPaseoPasio/nPasoPastaPataPatioPatriaPausaPautaPavoPayasoPeato/nPecadoPeceraPechoPedalPedirPegarPeinePelarPelda~oPeleaPeligroPellejoPeloPelucaPenaPensarPe~o/nPeo/nPeorPepinoPeque~oPeraPerchaPerderPerezaPerfilPericoPerlaPermisoPerroPersonaPesaPescaPe/simoPesta~aPe/taloPetro/leoPezPezu~aPicarPicho/nPiePiedraPiernaPiezaPijamaPilarPilotoPimientaPinoPintorPinzaPi~aPiojoPipaPirataPisarPiscinaPisoPistaPito/nPizcaPlacaPlanPlataPlayaPlazaPleitoPlenoPlomoPlumaPluralPobrePocoPoderPodioPoemaPoesi/aPoetaPolenPolici/aPolloPolvoPomadaPomeloPomoPompaPonerPorcio/nPortalPosadaPoseerPosiblePostePotenciaPotroPozoPradoPrecozPreguntaPremioPrensaPresoPrevioPrimoPri/ncipePrisio/nPrivarProaProbarProcesoProductoProezaProfesorProgramaProlePromesaProntoPropioPro/ximoPruebaPu/blicoPucheroPudorPuebloPuertaPuestoPulgaPulirPulmo/nPulpoPulsoPumaPuntoPu~alPu~oPupaPupilaPure/QuedarQuejaQuemarQuererQuesoQuietoQui/micaQuinceQuitarRa/banoRabiaRaboRacio/nRadicalRai/zRamaRampaRanchoRangoRapazRa/pidoRaptoRasgoRaspaRatoRayoRazaRazo/nReaccio/nRealidadReba~oReboteRecaerRecetaRechazoRecogerRecreoRectoRecursoRedRedondoReducirReflejoReformaRefra/nRefugioRegaloRegirReglaRegresoRehe/nReinoRei/rRejaRelatoRelevoRelieveRellenoRelojRemarRemedioRemoRencorRendirRentaRepartoRepetirReposoReptilResRescateResinaRespetoRestoResumenRetiroRetornoRetratoReunirReve/sRevistaReyRezarRicoRiegoRiendaRiesgoRifaRi/gidoRigorRinco/nRi~o/nRi/oRiquezaRisaRitmoRitoRizoRobleRoceRociarRodarRodeoRodillaRoerRojizoRojoRomeroRomperRonRoncoRondaRopaRoperoRosaRoscaRostroRotarRubi/RuborRudoRuedaRugirRuidoRuinaRuletaRuloRumboRumorRupturaRutaRutinaSa/badoSaberSabioSableSacarSagazSagradoSalaSaldoSaleroSalirSalmo/nSalo/nSalsaSaltoSaludSalvarSambaSancio/nSandi/aSanearSangreSanidadSanoSantoSapoSaqueSardinaSarte/nSastreSata/nSaunaSaxofo/nSeccio/nSecoSecretoSectaSedSeguirSeisSelloSelvaSemanaSemillaSendaSensorSe~alSe~orSepararSepiaSequi/aSerSerieSermo/nServirSesentaSesio/nSetaSetentaSeveroSexoSextoSidraSiestaSieteSigloSignoSi/labaSilbarSilencioSillaSi/mboloSimioSirenaSistemaSitioSituarSobreSocioSodioSolSolapaSoldadoSoledadSo/lidoSoltarSolucio/nSombraSondeoSonidoSonoroSonrisaSopaSoplarSoporteSordoSorpresaSorteoSoste/nSo/tanoSuaveSubirSucesoSudorSuegraSueloSue~oSuerteSufrirSujetoSulta/nSumarSuperarSuplirSuponerSupremoSurSurcoSure~oSurgirSustoSutilTabacoTabiqueTablaTabu/TacoTactoTajoTalarTalcoTalentoTallaTalo/nTama~oTamborTangoTanqueTapaTapeteTapiaTapo/nTaquillaTardeTareaTarifaTarjetaTarotTarroTartaTatuajeTauroTazaTazo/nTeatroTechoTeclaTe/cnicaTejadoTejerTejidoTelaTele/fonoTemaTemorTemploTenazTenderTenerTenisTensoTeori/aTerapiaTercoTe/rminoTernuraTerrorTesisTesoroTestigoTeteraTextoTezTibioTiburo/nTiempoTiendaTierraTiesoTigreTijeraTildeTimbreTi/midoTimoTintaTi/oTi/picoTipoTiraTiro/nTita/nTi/tereTi/tuloTizaToallaTobilloTocarTocinoTodoTogaToldoTomarTonoTontoToparTopeToqueTo/raxToreroTormentaTorneoToroTorpedoTorreTorsoTortugaTosToscoToserTo/xicoTrabajoTractorTraerTra/ficoTragoTrajeTramoTranceTratoTraumaTrazarTre/bolTreguaTreintaTrenTreparTresTribuTrigoTripaTristeTriunfoTrofeoTrompaTroncoTropaTroteTrozoTrucoTruenoTrufaTuberi/aTuboTuertoTumbaTumorTu/nelTu/nicaTurbinaTurismoTurnoTutorUbicarU/lceraUmbralUnidadUnirUniversoUnoUntarU~aUrbanoUrbeUrgenteUrnaUsarUsuarioU/tilUtopi/aUvaVacaVaci/oVacunaVagarVagoVainaVajillaValeVa/lidoValleValorVa/lvulaVampiroVaraVariarVaro/nVasoVecinoVectorVehi/culoVeinteVejezVelaVeleroVelozVenaVencerVendaVenenoVengarVenirVentaVenusVerVeranoVerboVerdeVeredaVerjaVersoVerterVi/aViajeVibrarVicioVi/ctimaVidaVi/deoVidrioViejoViernesVigorVilVillaVinagreVinoVi~edoVioli/nViralVirgoVirtudVisorVi/speraVistaVitaminaViudoVivazViveroVivirVivoVolca/nVolumenVolverVorazVotarVotoVozVueloVulgarYacerYateYeguaYemaYernoYesoYodoYogaYogurZafiroZanjaZapatoZarzaZonaZorroZumoZurdo";var In={};var sn=null;function dropDiacritic(Wt){an.logger.checkNormalize();return(0,nn.toUtf8String)(Array.prototype.filter.call((0,nn.toUtf8Bytes)(Wt.normalize("NFD").toLowerCase()),(function(Wt){return Wt>=65&&Wt<=90||Wt>=97&&Wt<=123})))}function expand(Wt){var Pt=[];Array.prototype.forEach.call((0,nn.toUtf8Bytes)(Wt),(function(Wt){if(Wt===47){Pt.push(204);Pt.push(129)}else if(Wt===126){Pt.push(110);Pt.push(204);Pt.push(131)}else{Pt.push(Wt)}}));return(0,nn.toUtf8String)(Pt)}function loadWords(Wt){if(sn!=null){return}sn=rn.replace(/([A-Z])/g," $1").toLowerCase().substring(1).split(" ").map((function(Wt){return expand(Wt)}));sn.forEach((function(Wt,Pt){In[dropDiacritic(Wt)]=Pt}));if(an.Wordlist.check(Wt)!=="0xf74fb7092aeacdfbf8959557de22098da512207fb9f109cb526994938cf40300"){sn=null;throw new Error("BIP39 Wordlist for es (Spanish) FAILED")}}var on=function(Wt){tn(LangEs,Wt);function LangEs(){return Wt.call(this,"es")||this}LangEs.prototype.getWord=function(Wt){loadWords(this);return sn[Wt]};LangEs.prototype.getWordIndex=function(Wt){loadWords(this);return In[dropDiacritic(Wt)]};return LangEs}(an.Wordlist);var cn=new on;Pt.langEs=cn;an.Wordlist.register(cn)},58079:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.langFr=void 0;var nn=en(13859);var an=en(18210);var rn="AbaisserAbandonAbdiquerAbeilleAbolirAborderAboutirAboyerAbrasifAbreuverAbriterAbrogerAbruptAbsenceAbsoluAbsurdeAbusifAbyssalAcade/mieAcajouAcarienAccablerAccepterAcclamerAccoladeAccrocheAccuserAcerbeAchatAcheterAcidulerAcierAcompteAcque/rirAcronymeActeurActifActuelAdepteAde/quatAdhe/sifAdjectifAdjugerAdmettreAdmirerAdopterAdorerAdoucirAdresseAdroitAdulteAdverbeAe/rerAe/ronefAffaireAffecterAfficheAffreuxAffublerAgacerAgencerAgileAgiterAgraferAgre/ableAgrumeAiderAiguilleAilierAimableAisanceAjouterAjusterAlarmerAlchimieAlerteAlge-breAlgueAlie/nerAlimentAlle/gerAlliageAllouerAllumerAlourdirAlpagaAltesseAlve/oleAmateurAmbiguAmbreAme/nagerAmertumeAmidonAmiralAmorcerAmourAmovibleAmphibieAmpleurAmusantAnalyseAnaphoreAnarchieAnatomieAncienAne/antirAngleAngoisseAnguleuxAnimalAnnexerAnnonceAnnuelAnodinAnomalieAnonymeAnormalAntenneAntidoteAnxieuxApaiserApe/ritifAplanirApologieAppareilAppelerApporterAppuyerAquariumAqueducArbitreArbusteArdeurArdoiseArgentArlequinArmatureArmementArmoireArmureArpenterArracherArriverArroserArsenicArte/rielArticleAspectAsphalteAspirerAssautAsservirAssietteAssocierAssurerAsticotAstreAstuceAtelierAtomeAtriumAtroceAttaqueAttentifAttirerAttraperAubaineAubergeAudaceAudibleAugurerAuroreAutomneAutrucheAvalerAvancerAvariceAvenirAverseAveugleAviateurAvideAvionAviserAvoineAvouerAvrilAxialAxiomeBadgeBafouerBagageBaguetteBaignadeBalancerBalconBaleineBalisageBambinBancaireBandageBanlieueBannie-reBanquierBarbierBarilBaronBarqueBarrageBassinBastionBatailleBateauBatterieBaudrierBavarderBeletteBe/lierBeloteBe/ne/ficeBerceauBergerBerlineBermudaBesaceBesogneBe/tailBeurreBiberonBicycleBiduleBijouBilanBilingueBillardBinaireBiologieBiopsieBiotypeBiscuitBisonBistouriBitumeBizarreBlafardBlagueBlanchirBlessantBlinderBlondBloquerBlousonBobardBobineBoireBoiserBolideBonbonBondirBonheurBonifierBonusBordureBorneBotteBoucleBoueuxBougieBoulonBouquinBourseBoussoleBoutiqueBoxeurBrancheBrasierBraveBrebisBre-cheBreuvageBricolerBrigadeBrillantBriocheBriqueBrochureBroderBronzerBrousseBroyeurBrumeBrusqueBrutalBruyantBuffleBuissonBulletinBureauBurinBustierButinerButoirBuvableBuvetteCabanonCabineCachetteCadeauCadreCafe/ineCaillouCaissonCalculerCalepinCalibreCalmerCalomnieCalvaireCamaradeCame/raCamionCampagneCanalCanetonCanonCantineCanularCapableCaporalCapriceCapsuleCapterCapucheCarabineCarboneCaresserCaribouCarnageCarotteCarreauCartonCascadeCasierCasqueCassureCauserCautionCavalierCaverneCaviarCe/dilleCeintureCe/lesteCelluleCendrierCensurerCentralCercleCe/re/bralCeriseCernerCerveauCesserChagrinChaiseChaleurChambreChanceChapitreCharbonChasseurChatonChaussonChavirerChemiseChenilleChe/quierChercherChevalChienChiffreChignonChime-reChiotChlorureChocolatChoisirChoseChouetteChromeChuteCigareCigogneCimenterCine/maCintrerCirculerCirerCirqueCiterneCitoyenCitronCivilClaironClameurClaquerClasseClavierClientClignerClimatClivageClocheClonageCloporteCobaltCobraCocasseCocotierCoderCodifierCoffreCognerCohe/sionCoifferCoincerCole-reColibriCollineColmaterColonelCombatCome/dieCommandeCompactConcertConduireConfierCongelerConnoterConsonneContactConvexeCopainCopieCorailCorbeauCordageCornicheCorpusCorrectCorte-geCosmiqueCostumeCotonCoudeCoupureCourageCouteauCouvrirCoyoteCrabeCrainteCravateCrayonCre/atureCre/diterCre/meuxCreuserCrevetteCriblerCrierCristalCrite-reCroireCroquerCrotaleCrucialCruelCrypterCubiqueCueillirCuille-reCuisineCuivreCulminerCultiverCumulerCupideCuratifCurseurCyanureCycleCylindreCyniqueDaignerDamierDangerDanseurDauphinDe/battreDe/biterDe/borderDe/briderDe/butantDe/calerDe/cembreDe/chirerDe/ciderDe/clarerDe/corerDe/crireDe/cuplerDe/daleDe/ductifDe/esseDe/fensifDe/filerDe/frayerDe/gagerDe/givrerDe/glutirDe/graferDe/jeunerDe/liceDe/logerDemanderDemeurerDe/molirDe/nicherDe/nouerDentelleDe/nuderDe/partDe/penserDe/phaserDe/placerDe/poserDe/rangerDe/roberDe/sastreDescenteDe/sertDe/signerDe/sobe/irDessinerDestrierDe/tacherDe/testerDe/tourerDe/tresseDevancerDevenirDevinerDevoirDiableDialogueDiamantDicterDiffe/rerDige/rerDigitalDigneDiluerDimancheDiminuerDioxydeDirectifDirigerDiscuterDisposerDissiperDistanceDivertirDiviserDocileDocteurDogmeDoigtDomaineDomicileDompterDonateurDonjonDonnerDopamineDortoirDorureDosageDoseurDossierDotationDouanierDoubleDouceurDouterDoyenDragonDraperDresserDribblerDroitureDuperieDuplexeDurableDurcirDynastieE/blouirE/carterE/charpeE/chelleE/clairerE/clipseE/cloreE/cluseE/coleE/conomieE/corceE/couterE/craserE/cre/merE/crivainE/crouE/cumeE/cureuilE/difierE/duquerEffacerEffectifEffigieEffortEffrayerEffusionE/galiserE/garerE/jecterE/laborerE/largirE/lectronE/le/gantE/le/phantE/le-veE/ligibleE/litismeE/logeE/luciderE/luderEmballerEmbellirEmbryonE/meraudeE/missionEmmenerE/motionE/mouvoirEmpereurEmployerEmporterEmpriseE/mulsionEncadrerEnche-reEnclaveEncocheEndiguerEndosserEndroitEnduireE/nergieEnfanceEnfermerEnfouirEngagerEnginEngloberE/nigmeEnjamberEnjeuEnleverEnnemiEnnuyeuxEnrichirEnrobageEnseigneEntasserEntendreEntierEntourerEntraverE/nume/rerEnvahirEnviableEnvoyerEnzymeE/olienE/paissirE/pargneE/patantE/pauleE/picerieE/pide/mieE/pierE/pilogueE/pineE/pisodeE/pitapheE/poqueE/preuveE/prouverE/puisantE/querreE/quipeE/rigerE/rosionErreurE/ruptionEscalierEspadonEspe-ceEspie-gleEspoirEspritEsquiverEssayerEssenceEssieuEssorerEstimeEstomacEstradeE/tage-reE/talerE/tancheE/tatiqueE/teindreE/tendoirE/ternelE/thanolE/thiqueEthnieE/tirerE/tofferE/toileE/tonnantE/tourdirE/trangeE/troitE/tudeEuphorieE/valuerE/vasionE/ventailE/videnceE/viterE/volutifE/voquerExactExage/rerExaucerExcellerExcitantExclusifExcuseExe/cuterExempleExercerExhalerExhorterExigenceExilerExisterExotiqueExpe/dierExplorerExposerExprimerExquisExtensifExtraireExulterFableFabuleuxFacetteFacileFactureFaiblirFalaiseFameuxFamilleFarceurFarfeluFarineFaroucheFascinerFatalFatigueFauconFautifFaveurFavoriFe/brileFe/conderFe/de/rerFe/linFemmeFe/murFendoirFe/odalFermerFe/roceFerveurFestivalFeuilleFeutreFe/vrierFiascoFicelerFictifFide-leFigureFilatureFiletageFilie-reFilleulFilmerFilouFiltrerFinancerFinirFioleFirmeFissureFixerFlairerFlammeFlasqueFlatteurFle/auFle-cheFleurFlexionFloconFloreFluctuerFluideFluvialFolieFonderieFongibleFontaineForcerForgeronFormulerFortuneFossileFoudreFouge-reFouillerFoulureFourmiFragileFraiseFranchirFrapperFrayeurFre/gateFreinerFrelonFre/mirFre/ne/sieFre-reFriableFrictionFrissonFrivoleFroidFromageFrontalFrotterFruitFugitifFuiteFureurFurieuxFurtifFusionFuturGagnerGalaxieGalerieGambaderGarantirGardienGarnirGarrigueGazelleGazonGe/antGe/latineGe/luleGendarmeGe/ne/ralGe/nieGenouGentilGe/ologieGe/ome-treGe/raniumGermeGestuelGeyserGibierGiclerGirafeGivreGlaceGlaiveGlisserGlobeGloireGlorieuxGolfeurGommeGonflerGorgeGorilleGoudronGouffreGoulotGoupilleGourmandGoutteGraduelGraffitiGraineGrandGrappinGratuitGravirGrenatGriffureGrillerGrimperGrognerGronderGrotteGroupeGrugerGrutierGruye-reGue/pardGuerrierGuideGuimauveGuitareGustatifGymnasteGyrostatHabitudeHachoirHalteHameauHangarHannetonHaricotHarmonieHarponHasardHe/liumHe/matomeHerbeHe/rissonHermineHe/ronHe/siterHeureuxHibernerHibouHilarantHistoireHiverHomardHommageHomoge-neHonneurHonorerHonteuxHordeHorizonHorlogeHormoneHorribleHouleuxHousseHublotHuileuxHumainHumbleHumideHumourHurlerHydromelHygie-neHymneHypnoseIdylleIgnorerIguaneIlliciteIllusionImageImbiberImiterImmenseImmobileImmuableImpactImpe/rialImplorerImposerImprimerImputerIncarnerIncendieIncidentInclinerIncoloreIndexerIndiceInductifIne/ditIneptieInexactInfiniInfligerInformerInfusionInge/rerInhalerInhiberInjecterInjureInnocentInoculerInonderInscrireInsecteInsigneInsoliteInspirerInstinctInsulterIntactIntenseIntimeIntrigueIntuitifInutileInvasionInventerInviterInvoquerIroniqueIrradierIrre/elIrriterIsolerIvoireIvresseJaguarJaillirJambeJanvierJardinJaugerJauneJavelotJetableJetonJeudiJeunesseJoindreJoncherJonglerJoueurJouissifJournalJovialJoyauJoyeuxJubilerJugementJuniorJuponJuristeJusticeJuteuxJuve/nileKayakKimonoKiosqueLabelLabialLabourerLace/rerLactoseLaguneLaineLaisserLaitierLambeauLamelleLampeLanceurLangageLanterneLapinLargeurLarmeLaurierLavaboLavoirLectureLe/galLe/gerLe/gumeLessiveLettreLevierLexiqueLe/zardLiasseLibe/rerLibreLicenceLicorneLie-geLie-vreLigatureLigoterLigueLimerLimiteLimonadeLimpideLine/aireLingotLionceauLiquideLisie-reListerLithiumLitigeLittoralLivreurLogiqueLointainLoisirLombricLoterieLouerLourdLoutreLouveLoyalLubieLucideLucratifLueurLugubreLuisantLumie-reLunaireLundiLuronLutterLuxueuxMachineMagasinMagentaMagiqueMaigreMaillonMaintienMairieMaisonMajorerMalaxerMale/ficeMalheurMaliceMalletteMammouthMandaterManiableManquantManteauManuelMarathonMarbreMarchandMardiMaritimeMarqueurMarronMartelerMascotteMassifMate/rielMatie-reMatraqueMaudireMaussadeMauveMaximalMe/chantMe/connuMe/dailleMe/decinMe/diterMe/duseMeilleurMe/langeMe/lodieMembreMe/moireMenacerMenerMenhirMensongeMentorMercrediMe/riteMerleMessagerMesureMe/talMe/te/oreMe/thodeMe/tierMeubleMiaulerMicrobeMietteMignonMigrerMilieuMillionMimiqueMinceMine/ralMinimalMinorerMinuteMiracleMiroiterMissileMixteMobileModerneMoelleuxMondialMoniteurMonnaieMonotoneMonstreMontagneMonumentMoqueurMorceauMorsureMortierMoteurMotifMoucheMoufleMoulinMoussonMoutonMouvantMultipleMunitionMurailleMure-neMurmureMuscleMuse/umMusicienMutationMuterMutuelMyriadeMyrtilleMyste-reMythiqueNageurNappeNarquoisNarrerNatationNationNatureNaufrageNautiqueNavireNe/buleuxNectarNe/fasteNe/gationNe/gligerNe/gocierNeigeNerveuxNettoyerNeuroneNeutronNeveuNicheNickelNitrateNiveauNobleNocifNocturneNoirceurNoisetteNomadeNombreuxNommerNormatifNotableNotifierNotoireNourrirNouveauNovateurNovembreNoviceNuageNuancerNuireNuisibleNume/roNuptialNuqueNutritifObe/irObjectifObligerObscurObserverObstacleObtenirObturerOccasionOccuperOce/anOctobreOctroyerOctuplerOculaireOdeurOdorantOffenserOfficierOffrirOgiveOiseauOisillonOlfactifOlivierOmbrageOmettreOnctueuxOndulerOne/reuxOniriqueOpaleOpaqueOpe/rerOpinionOpportunOpprimerOpterOptiqueOrageuxOrangeOrbiteOrdonnerOreilleOrganeOrgueilOrificeOrnementOrqueOrtieOscillerOsmoseOssatureOtarieOuraganOursonOutilOutragerOuvrageOvationOxydeOxyge-neOzonePaisiblePalacePalmare-sPalourdePalperPanachePandaPangolinPaniquerPanneauPanoramaPantalonPapayePapierPapoterPapyrusParadoxeParcelleParesseParfumerParlerParoleParrainParsemerPartagerParureParvenirPassionPaste-quePaternelPatiencePatronPavillonPavoiserPayerPaysagePeignePeintrePelagePe/licanPellePelousePeluchePendulePe/ne/trerPe/niblePensifPe/nuriePe/pitePe/plumPerdrixPerforerPe/riodePermuterPerplexePersilPertePeserPe/talePetitPe/trirPeuplePharaonPhobiePhoquePhotonPhrasePhysiquePianoPicturalPie-cePierrePieuvrePilotePinceauPipettePiquerPiroguePiscinePistonPivoterPixelPizzaPlacardPlafondPlaisirPlanerPlaquePlastronPlateauPleurerPlexusPliagePlombPlongerPluiePlumagePochettePoe/siePoe-tePointePoirierPoissonPoivrePolairePolicierPollenPolygonePommadePompierPonctuelPonde/rerPoneyPortiquePositionPosse/derPosturePotagerPoteauPotionPoucePoulainPoumonPourprePoussinPouvoirPrairiePratiquePre/cieuxPre/direPre/fixePre/ludePre/nomPre/sencePre/textePre/voirPrimitifPrincePrisonPriverProble-meProce/derProdigeProfondProgre-sProieProjeterProloguePromenerPropreProspe-reProte/gerProuesseProverbePrudencePruneauPsychosePublicPuceronPuiserPulpePulsarPunaisePunitifPupitrePurifierPuzzlePyramideQuasarQuerelleQuestionQuie/tudeQuitterQuotientRacineRaconterRadieuxRagondinRaideurRaisinRalentirRallongeRamasserRapideRasageRatisserRavagerRavinRayonnerRe/actifRe/agirRe/aliserRe/animerRecevoirRe/citerRe/clamerRe/colterRecruterReculerRecyclerRe/digerRedouterRefaireRe/flexeRe/formerRefrainRefugeRe/galienRe/gionRe/glageRe/gulierRe/ite/rerRejeterRejouerRelatifReleverReliefRemarqueReme-deRemiseRemonterRemplirRemuerRenardRenfortReniflerRenoncerRentrerRenvoiReplierReporterRepriseReptileRequinRe/serveRe/sineuxRe/soudreRespectResterRe/sultatRe/tablirRetenirRe/ticuleRetomberRetracerRe/unionRe/ussirRevancheRevivreRe/volteRe/vulsifRichesseRideauRieurRigideRigolerRincerRiposterRisibleRisqueRituelRivalRivie-reRocheuxRomanceRompreRonceRondinRoseauRosierRotatifRotorRotuleRougeRouilleRouleauRoutineRoyaumeRubanRubisRucheRuelleRugueuxRuinerRuisseauRuserRustiqueRythmeSablerSaboterSabreSacocheSafariSagesseSaisirSaladeSaliveSalonSaluerSamediSanctionSanglierSarcasmeSardineSaturerSaugrenuSaumonSauterSauvageSavantSavonnerScalpelScandaleSce/le/ratSce/narioSceptreSche/maScienceScinderScoreScrutinSculpterSe/anceSe/cableSe/cherSecouerSe/cre/terSe/datifSe/duireSeigneurSe/jourSe/lectifSemaineSemblerSemenceSe/minalSe/nateurSensibleSentenceSe/parerSe/quenceSereinSergentSe/rieuxSerrureSe/rumServiceSe/sameSe/virSevrageSextupleSide/ralSie-cleSie/gerSifflerSigleSignalSilenceSiliciumSimpleSince-reSinistreSiphonSiropSismiqueSituerSkierSocialSocleSodiumSoigneuxSoldatSoleilSolitudeSolubleSombreSommeilSomnolerSondeSongeurSonnetteSonoreSorcierSortirSosieSottiseSoucieuxSoudureSouffleSouleverSoupapeSourceSoutirerSouvenirSpacieuxSpatialSpe/cialSphe-reSpiralStableStationSternumStimulusStipulerStrictStudieuxStupeurStylisteSublimeSubstratSubtilSubvenirSucce-sSucreSuffixeSugge/rerSuiveurSulfateSuperbeSupplierSurfaceSuricateSurmenerSurpriseSursautSurvieSuspectSyllabeSymboleSyme/trieSynapseSyntaxeSyste-meTabacTablierTactileTaillerTalentTalismanTalonnerTambourTamiserTangibleTapisTaquinerTarderTarifTartineTasseTatamiTatouageTaupeTaureauTaxerTe/moinTemporelTenailleTendreTeneurTenirTensionTerminerTerneTerribleTe/tineTexteThe-meThe/orieThe/rapieThoraxTibiaTie-deTimideTirelireTiroirTissuTitaneTitreTituberTobogganTole/rantTomateToniqueTonneauToponymeTorcheTordreTornadeTorpilleTorrentTorseTortueTotemToucherTournageTousserToxineTractionTraficTragiqueTrahirTrainTrancherTravailTre-fleTremperTre/sorTreuilTriageTribunalTricoterTrilogieTriompheTriplerTriturerTrivialTromboneTroncTropicalTroupeauTuileTulipeTumulteTunnelTurbineTuteurTutoyerTuyauTympanTyphonTypiqueTyranUbuesqueUltimeUltrasonUnanimeUnifierUnionUniqueUnitaireUniversUraniumUrbainUrticantUsageUsineUsuelUsureUtileUtopieVacarmeVaccinVagabondVagueVaillantVaincreVaisseauValableValiseVallonValveVampireVanilleVapeurVarierVaseuxVassalVasteVecteurVedetteVe/ge/talVe/hiculeVeinardVe/loceVendrediVe/ne/rerVengerVenimeuxVentouseVerdureVe/rinVernirVerrouVerserVertuVestonVe/te/ranVe/tusteVexantVexerViaducViandeVictoireVidangeVide/oVignetteVigueurVilainVillageVinaigreViolonVipe-reVirementVirtuoseVirusVisageViseurVisionVisqueuxVisuelVitalVitesseViticoleVitrineVivaceVivipareVocationVoguerVoileVoisinVoitureVolailleVolcanVoltigerVolumeVoraceVortexVoterVouloirVoyageVoyelleWagonXe/nonYachtZe-breZe/nithZesteZoologie";var In=null;var sn={};function dropDiacritic(Wt){an.logger.checkNormalize();return(0,nn.toUtf8String)(Array.prototype.filter.call((0,nn.toUtf8Bytes)(Wt.normalize("NFD").toLowerCase()),(function(Wt){return Wt>=65&&Wt<=90||Wt>=97&&Wt<=123})))}function expand(Wt){var Pt=[];Array.prototype.forEach.call((0,nn.toUtf8Bytes)(Wt),(function(Wt){if(Wt===47){Pt.push(204);Pt.push(129)}else if(Wt===45){Pt.push(204);Pt.push(128)}else{Pt.push(Wt)}}));return(0,nn.toUtf8String)(Pt)}function loadWords(Wt){if(In!=null){return}In=rn.replace(/([A-Z])/g," $1").toLowerCase().substring(1).split(" ").map((function(Wt){return expand(Wt)}));In.forEach((function(Wt,Pt){sn[dropDiacritic(Wt)]=Pt}));if(an.Wordlist.check(Wt)!=="0x51deb7ae009149dc61a6bd18a918eb7ac78d2775726c68e598b92d002519b045"){In=null;throw new Error("BIP39 Wordlist for fr (French) FAILED")}}var on=function(Wt){tn(LangFr,Wt);function LangFr(){return Wt.call(this,"fr")||this}LangFr.prototype.getWord=function(Wt){loadWords(this);return In[Wt]};LangFr.prototype.getWordIndex=function(Wt){loadWords(this);return sn[dropDiacritic(Wt)]};return LangFr}(an.Wordlist);var cn=new on;Pt.langFr=cn;an.Wordlist.register(cn)},87054:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.langIt=void 0;var nn=en(18210);var an="AbacoAbbaglioAbbinatoAbeteAbissoAbolireAbrasivoAbrogatoAccadereAccennoAccusatoAcetoneAchilleAcidoAcquaAcreAcrilicoAcrobataAcutoAdagioAddebitoAddomeAdeguatoAderireAdipeAdottareAdulareAffabileAffettoAffissoAffrantoAforismaAfosoAfricanoAgaveAgenteAgevoleAggancioAgireAgitareAgonismoAgricoloAgrumetoAguzzoAlabardaAlatoAlbatroAlberatoAlboAlbumeAlceAlcolicoAlettoneAlfaAlgebraAlianteAlibiAlimentoAllagatoAllegroAllievoAllodolaAllusivoAlmenoAlogenoAlpacaAlpestreAltalenaAlternoAlticcioAltroveAlunnoAlveoloAlzareAmalgamaAmanitaAmarenaAmbitoAmbratoAmebaAmericaAmetistaAmicoAmmassoAmmendaAmmirareAmmonitoAmoreAmpioAmpliareAmuletoAnacardoAnagrafeAnalistaAnarchiaAnatraAncaAncellaAncoraAndareAndreaAnelloAngeloAngolareAngustoAnimaAnnegareAnnidatoAnnoAnnuncioAnonimoAnticipoAnziApaticoAperturaApodeApparireAppetitoAppoggioApprodoAppuntoAprileArabicaArachideAragostaAraldicaArancioAraturaArazzoArbitroArchivioArditoArenileArgentoArgineArgutoAriaArmoniaArneseArredatoArringaArrostoArsenicoArsoArteficeArzilloAsciuttoAscoltoAsepsiAsetticoAsfaltoAsinoAsolaAspiratoAsproAssaggioAsseAssolutoAssurdoAstaAstenutoAsticeAstrattoAtavicoAteismoAtomicoAtonoAttesaAttivareAttornoAttritoAttualeAusilioAustriaAutistaAutonomoAutunnoAvanzatoAvereAvvenireAvvisoAvvolgereAzioneAzotoAzzimoAzzurroBabeleBaccanoBacinoBacoBadessaBadilataBagnatoBaitaBalconeBaldoBalenaBallataBalzanoBambinoBandireBaraondaBarbaroBarcaBaritonoBarlumeBaroccoBasilicoBassoBatostaBattutoBauleBavaBavosaBeccoBeffaBelgioBelvaBendaBenevoleBenignoBenzinaBereBerlinaBetaBibitaBiciBidoneBifidoBigaBilanciaBimboBinocoloBiologoBipedeBipolareBirbanteBirraBiscottoBisestoBisnonnoBisonteBisturiBizzarroBlandoBlattaBollitoBonificoBordoBoscoBotanicoBottinoBozzoloBraccioBradipoBramaBrancaBravuraBretellaBrevettoBrezzaBrigliaBrillanteBrindareBroccoloBrodoBronzinaBrulloBrunoBubboneBucaBudinoBuffoneBuioBulboBuonoBurloneBurrascaBussolaBustaCadettoCaducoCalamaroCalcoloCalesseCalibroCalmoCaloriaCambusaCamerataCamiciaCamminoCamolaCampaleCanapaCandelaCaneCaninoCanottoCantinaCapaceCapelloCapitoloCapogiroCapperoCapraCapsulaCarapaceCarcassaCardoCarismaCarovanaCarrettoCartolinaCasaccioCascataCasermaCasoCassoneCastelloCasualeCatastaCatenaCatrameCautoCavilloCedibileCedrataCefaloCelebreCellulareCenaCenoneCentesimoCeramicaCercareCertoCerumeCervelloCesoiaCespoCetoChelaChiaroChiccaChiedereChimeraChinaChirurgoChitarraCiaoCiclismoCifrareCignoCilindroCiottoloCircaCirrosiCitricoCittadinoCiuffoCivettaCivileClassicoClinicaCloroCoccoCodardoCodiceCoerenteCognomeCollareColmatoColoreColposoColtivatoColzaComaCometaCommandoComodoComputerComuneConcisoCondurreConfermaCongelareConiugeConnessoConoscereConsumoContinuoConvegnoCopertoCopioneCoppiaCopricapoCorazzaCordataCoricatoCorniceCorollaCorpoCorredoCorsiaCorteseCosmicoCostanteCotturaCovatoCratereCravattaCreatoCredereCremosoCrescitaCretaCricetoCrinaleCrisiCriticoCroceCronacaCrostataCrucialeCruscaCucireCuculoCuginoCullatoCupolaCuratoreCursoreCurvoCuscinoCustodeDadoDainoDalmataDamerinoDanielaDannosoDanzareDatatoDavantiDavveroDebuttoDecennioDecisoDeclinoDecolloDecretoDedicatoDefinitoDeformeDegnoDelegareDelfinoDelirioDeltaDemenzaDenotatoDentroDepositoDerapataDerivareDerogaDescrittoDesertoDesiderioDesumereDetersivoDevotoDiametroDicembreDiedroDifesoDiffusoDigerireDigitaleDiluvioDinamicoDinnanziDipintoDiplomaDipoloDiradareDireDirottoDirupoDisagioDiscretoDisfareDisgeloDispostoDistanzaDisumanoDitoDivanoDiveltoDividereDivoratoDobloneDocenteDoganaleDogmaDolceDomatoDomenicaDominareDondoloDonoDormireDoteDottoreDovutoDozzinaDragoDruidoDubbioDubitareDucaleDunaDuomoDupliceDuraturoEbanoEccessoEccoEclissiEconomiaEderaEdicolaEdileEditoriaEducareEgemoniaEgliEgoismoEgregioElaboratoElargireEleganteElencatoElettoElevareElficoElicaElmoElsaElusoEmanatoEmblemaEmessoEmiroEmotivoEmozioneEmpiricoEmuloEndemicoEnduroEnergiaEnfasiEnotecaEntrareEnzimaEpatiteEpilogoEpisodioEpocaleEppureEquatoreErarioErbaErbosoEredeEremitaErigereErmeticoEroeErosivoErranteEsagonoEsameEsanimeEsaudireEscaEsempioEsercitoEsibitoEsigenteEsistereEsitoEsofagoEsortatoEsosoEspansoEspressoEssenzaEssoEstesoEstimareEstoniaEstrosoEsultareEtilicoEtnicoEtruscoEttoEuclideoEuropaEvasoEvidenzaEvitatoEvolutoEvvivaFabbricaFaccendaFachiroFalcoFamigliaFanaleFanfaraFangoFantasmaFareFarfallaFarinosoFarmacoFasciaFastosoFasulloFaticareFatoFavolosoFebbreFecolaFedeFegatoFelpaFeltroFemminaFendereFenomenoFermentoFerroFertileFessuraFestivoFettaFeudoFiabaFiduciaFifaFiguratoFiloFinanzaFinestraFinireFioreFiscaleFisicoFiumeFlaconeFlamencoFleboFlemmaFloridoFluenteFluoroFobicoFocacciaFocosoFoderatoFoglioFolataFolcloreFolgoreFondenteFoneticoFoniaFontanaForbitoForchettaForestaFormicaFornaioForoFortezzaForzareFosfatoFossoFracassoFranaFrassinoFratelloFreccettaFrenataFrescoFrigoFrollinoFrondeFrugaleFruttaFucilataFucsiaFuggenteFulmineFulvoFumanteFumettoFumosoFuneFunzioneFuocoFurboFurgoneFuroreFusoFutileGabbianoGaffeGalateoGallinaGaloppoGamberoGammaGaranziaGarboGarofanoGarzoneGasdottoGasolioGastricoGattoGaudioGazeboGazzellaGecoGelatinaGelsoGemelloGemmatoGeneGenitoreGennaioGenotipoGergoGhepardoGhiaccioGhisaGialloGildaGineproGiocareGioielloGiornoGioveGiratoGironeGittataGiudizioGiuratoGiustoGlobuloGlutineGnomoGobbaGolfGomitoGommoneGonfioGonnaGovernoGracileGradoGraficoGrammoGrandeGrattareGravosoGraziaGrecaGreggeGrifoneGrigioGrinzaGrottaGruppoGuadagnoGuaioGuantoGuardareGufoGuidareIbernatoIconaIdenticoIdillioIdoloIdraIdricoIdrogenoIgieneIgnaroIgnoratoIlareIllesoIllogicoIlludereImballoImbevutoImboccoImbutoImmaneImmersoImmolatoImpaccoImpetoImpiegoImportoImprontaInalareInarcareInattivoIncantoIncendioInchinoIncisivoInclusoIncontroIncrocioIncuboIndagineIndiaIndoleIneditoInfattiInfilareInflittoIngaggioIngegnoIngleseIngordoIngrossoInnescoInodoreInoltrareInondatoInsanoInsettoInsiemeInsonniaInsulinaIntasatoInteroIntonacoIntuitoInumidireInvalidoInveceInvitoIperboleIpnoticoIpotesiIppicaIrideIrlandaIronicoIrrigatoIrrorareIsolatoIsotopoIstericoIstitutoIstriceItaliaIterareLabbroLabirintoLaccaLaceratoLacrimaLacunaLaddoveLagoLampoLancettaLanternaLardosoLargaLaringeLastraLatenzaLatinoLattugaLavagnaLavoroLegaleLeggeroLemboLentezzaLenzaLeoneLepreLesivoLessatoLestoLetteraleLevaLevigatoLiberoLidoLievitoLillaLimaturaLimitareLimpidoLineareLinguaLiquidoLiraLiricaLiscaLiteLitigioLivreaLocandaLodeLogicaLombareLondraLongevoLoquaceLorenzoLotoLotteriaLuceLucidatoLumacaLuminosoLungoLupoLuppoloLusingaLussoLuttoMacabroMacchinaMaceroMacinatoMadamaMagicoMagliaMagneteMagroMaiolicaMalafedeMalgradoMalintesoMalsanoMaltoMalumoreManaManciaMandorlaMangiareManifestoMannaroManovraMansardaMantideManubrioMappaMaratonaMarcireMarettaMarmoMarsupioMascheraMassaiaMastinoMaterassoMatricolaMattoneMaturoMazurcaMeandroMeccanicoMecenateMedesimoMeditareMegaMelassaMelisMelodiaMeningeMenoMensolaMercurioMerendaMerloMeschinoMeseMessereMestoloMetalloMetodoMettereMiagolareMicaMicelioMicheleMicroboMidolloMieleMiglioreMilanoMiliteMimosaMineraleMiniMinoreMirinoMirtilloMiscelaMissivaMistoMisurareMitezzaMitigareMitraMittenteMnemonicoModelloModificaModuloMoganoMogioMoleMolossoMonasteroMoncoMondinaMonetarioMonileMonotonoMonsoneMontatoMonvisoMoraMordereMorsicatoMostroMotivatoMotosegaMottoMovenzaMovimentoMozzoMuccaMucosaMuffaMughettoMugnaioMulattoMulinelloMultiploMummiaMuntoMuovereMuraleMusaMuscoloMusicaMutevoleMutoNababboNaftaNanometroNarcisoNariceNarratoNascereNastrareNaturaleNauticaNaviglioNebulosaNecrosiNegativoNegozioNemmenoNeofitaNerettoNervoNessunoNettunoNeutraleNeveNevroticoNicchiaNinfaNitidoNobileNocivoNodoNomeNominaNordicoNormaleNorvegeseNostranoNotareNotiziaNotturnoNovellaNucleoNullaNumeroNuovoNutrireNuvolaNuzialeOasiObbedireObbligoObeliscoOblioOboloObsoletoOccasioneOcchioOccidenteOccorrereOccultareOcraOculatoOdiernoOdorareOffertaOffrireOffuscatoOggettoOggiOgnunoOlandeseOlfattoOliatoOlivaOlogrammaOltreOmaggioOmbelicoOmbraOmegaOmissioneOndosoOnereOniceOnnivoroOnorevoleOntaOperatoOpinioneOppostoOracoloOrafoOrdineOrecchinoOreficeOrfanoOrganicoOrigineOrizzonteOrmaOrmeggioOrnativoOrologioOrrendoOrribileOrtensiaOrticaOrzataOrzoOsareOscurareOsmosiOspedaleOspiteOssaOssidareOstacoloOsteOtiteOtreOttagonoOttimoOttobreOvaleOvestOvinoOviparoOvocitoOvunqueOvviareOzioPacchettoPacePacificoPadellaPadronePaesePagaPaginaPalazzinaPalesarePallidoPaloPaludePandoroPannelloPaoloPaonazzoPapricaParabolaParcellaParerePargoloPariParlatoParolaPartireParvenzaParzialePassivoPasticcaPataccaPatologiaPattumePavonePeccatoPedalarePedonalePeggioPelosoPenarePendicePenisolaPennutoPenombraPensarePentolaPepePepitaPerbenePercorsoPerdonatoPerforarePergamenaPeriodoPermessoPernoPerplessoPersuasoPertugioPervasoPesatorePesistaPesoPestiferoPetaloPettinePetulantePezzoPiacerePiantaPiattinoPiccinoPicozzaPiegaPietraPifferoPigiamaPigolioPigroPilaPiliferoPillolaPilotaPimpantePinetaPinnaPinoloPioggiaPiomboPiramidePireticoPiritePirolisiPitonePizzicoPlaceboPlanarePlasmaPlatanoPlenarioPochezzaPoderosoPodismoPoesiaPoggiarePolentaPoligonoPollicePolmonitePolpettaPolsoPoltronaPolverePomicePomodoroPontePopolosoPorfidoPorosoPorporaPorrePortataPosaPositivoPossessoPostulatoPotassioPoterePranzoPrassiPraticaPreclusoPredicaPrefissoPregiatoPrelievoPremerePrenotarePreparatoPresenzaPretestoPrevalsoPrimaPrincipePrivatoProblemaProcuraProdurreProfumoProgettoProlungaPromessaPronomePropostaProrogaProtesoProvaPrudentePrugnaPruritoPsichePubblicoPudicaPugilatoPugnoPulcePulitoPulsantePuntarePupazzoPupillaPuroQuadroQualcosaQuasiQuerelaQuotaRaccoltoRaddoppioRadicaleRadunatoRafficaRagazzoRagioneRagnoRamarroRamingoRamoRandagioRantolareRapatoRapinaRappresoRasaturaRaschiatoRasenteRassegnaRastrelloRataRavvedutoRealeRecepireRecintoReclutaReconditoRecuperoRedditoRedimereRegalatoRegistroRegolaRegressoRelazioneRemareRemotoRennaReplicaReprimereReputareResaResidenteResponsoRestauroReteRetinaRetoricaRettificaRevocatoRiassuntoRibadireRibelleRibrezzoRicaricaRiccoRicevereRiciclatoRicordoRicredutoRidicoloRidurreRifasareRiflessoRiformaRifugioRigareRigettatoRighelloRilassatoRilevatoRimanereRimbalzoRimedioRimorchioRinascitaRincaroRinforzoRinnovoRinomatoRinsavitoRintoccoRinunciaRinvenireRiparatoRipetutoRipienoRiportareRipresaRipulireRisataRischioRiservaRisibileRisoRispettoRistoroRisultatoRisvoltoRitardoRitegnoRitmicoRitrovoRiunioneRivaRiversoRivincitaRivoltoRizomaRobaRoboticoRobustoRocciaRocoRodaggioRodereRoditoreRogitoRollioRomanticoRompereRonzioRosolareRospoRotanteRotondoRotulaRovescioRubizzoRubricaRugaRullinoRumineRumorosoRuoloRupeRussareRusticoSabatoSabbiareSabotatoSagomaSalassoSaldaturaSalgemmaSalivareSalmoneSaloneSaltareSalutoSalvoSapereSapidoSaporitoSaracenoSarcasmoSartoSassosoSatelliteSatiraSatolloSaturnoSavanaSavioSaziatoSbadiglioSbalzoSbancatoSbarraSbattereSbavareSbendareSbirciareSbloccatoSbocciatoSbrinareSbruffoneSbuffareScabrosoScadenzaScalaScambiareScandaloScapolaScarsoScatenareScavatoSceltoScenicoScettroSchedaSchienaSciarpaScienzaScindereScippoSciroppoScivoloSclerareScodellaScolpitoScompartoSconfortoScoprireScortaScossoneScozzeseScribaScrollareScrutinioScuderiaScultoreScuolaScuroScusareSdebitareSdoganareSeccaturaSecondoSedanoSeggiolaSegnalatoSegregatoSeguitoSelciatoSelettivoSellaSelvaggioSemaforoSembrareSemeSeminatoSempreSensoSentireSepoltoSequenzaSerataSerbatoSerenoSerioSerpenteSerraglioServireSestinaSetolaSettimanaSfaceloSfaldareSfamatoSfarzosoSfaticatoSferaSfidaSfilatoSfingeSfocatoSfoderareSfogoSfoltireSforzatoSfrattoSfruttatoSfuggitoSfumareSfusoSgabelloSgarbatoSgonfiareSgorbioSgrassatoSguardoSibiloSiccomeSierraSiglaSignoreSilenzioSillabaSimboloSimpaticoSimulatoSinfoniaSingoloSinistroSinoSintesiSinusoideSiparioSismaSistoleSituatoSlittaSlogaturaSlovenoSmarritoSmemoratoSmentitoSmeraldoSmilzoSmontareSmottatoSmussatoSnellireSnervatoSnodoSobbalzoSobrioSoccorsoSocialeSodaleSoffittoSognoSoldatoSolenneSolidoSollazzoSoloSolubileSolventeSomaticoSommaSondaSonettoSonniferoSopireSoppesoSopraSorgereSorpassoSorrisoSorsoSorteggioSorvolatoSospiroSostaSottileSpadaSpallaSpargereSpatolaSpaventoSpazzolaSpecieSpedireSpegnereSpelaturaSperanzaSpessoreSpettraleSpezzatoSpiaSpigolosoSpillatoSpinosoSpiraleSplendidoSportivoSposoSprangaSprecareSpronatoSpruzzoSpuntinoSquilloSradicareSrotolatoStabileStaccoStaffaStagnareStampatoStantioStarnutoStaseraStatutoSteloSteppaSterzoStilettoStimaStirpeStivaleStizzosoStonatoStoricoStrappoStregatoStriduloStrozzareStruttoStuccareStufoStupendoSubentroSuccosoSudoreSuggeritoSugoSultanoSuonareSuperboSupportoSurgelatoSurrogatoSussurroSuturaSvagareSvedeseSveglioSvelareSvenutoSveziaSviluppoSvistaSvizzeraSvoltaSvuotareTabaccoTabulatoTacciareTaciturnoTaleTalismanoTamponeTanninoTaraTardivoTargatoTariffaTarpareTartarugaTastoTatticoTavernaTavolataTazzaTecaTecnicoTelefonoTemerarioTempoTemutoTendoneTeneroTensioneTentacoloTeoremaTermeTerrazzoTerzettoTesiTesseratoTestatoTetroTettoiaTifareTigellaTimbroTintoTipicoTipografoTiraggioTiroTitanioTitoloTitubanteTizioTizzoneToccareTollerareToltoTombolaTomoTonfoTonsillaTopazioTopologiaToppaTorbaTornareTorroneTortoraToscanoTossireTostaturaTotanoTraboccoTracheaTrafilaTragediaTralcioTramontoTransitoTrapanoTrarreTraslocoTrattatoTraveTrecciaTremolioTrespoloTributoTrichecoTrifoglioTrilloTrinceaTrioTristezzaTrituratoTrivellaTrombaTronoTroppoTrottolaTrovareTruccatoTubaturaTuffatoTulipanoTumultoTunisiaTurbareTurchinoTutaTutelaUbicatoUccelloUccisoreUdireUditivoUffaUfficioUgualeUlisseUltimatoUmanoUmileUmorismoUncinettoUngereUnghereseUnicornoUnificatoUnisonoUnitarioUnteUovoUpupaUraganoUrgenzaUrloUsanzaUsatoUscitoUsignoloUsuraioUtensileUtilizzoUtopiaVacanteVaccinatoVagabondoVagliatoValangaValgoValicoVallettaValorosoValutareValvolaVampataVangareVanitosoVanoVantaggioVanveraVaporeVaranoVarcatoVarianteVascaVedettaVedovaVedutoVegetaleVeicoloVelcroVelinaVellutoVeloceVenatoVendemmiaVentoVeraceVerbaleVergognaVerificaVeroVerrucaVerticaleVescicaVessilloVestaleVeteranoVetrinaVetustoViandanteVibranteVicendaVichingoVicinanzaVidimareVigiliaVignetoVigoreVileVillanoViminiVincitoreViolaViperaVirgolaVirologoVirulentoViscosoVisioneVispoVissutoVisuraVitaVitelloVittimaVivandaVividoViziareVoceVogaVolatileVolereVolpeVoragineVulcanoZampognaZannaZappatoZatteraZavorraZefiroZelanteZeloZenzeroZerbinoZibettoZincoZirconeZittoZollaZoticoZuccheroZufoloZuluZuppa";var rn=null;function loadWords(Wt){if(rn!=null){return}rn=an.replace(/([A-Z])/g," $1").toLowerCase().substring(1).split(" ");if(nn.Wordlist.check(Wt)!=="0x5c1362d88fd4cf614a96f3234941d29f7d37c08c5292fde03bf62c2db6ff7620"){rn=null;throw new Error("BIP39 Wordlist for it (Italian) FAILED")}}var In=function(Wt){tn(LangIt,Wt);function LangIt(){return Wt.call(this,"it")||this}LangIt.prototype.getWord=function(Wt){loadWords(this);return rn[Wt]};LangIt.prototype.getWordIndex=function(Wt){loadWords(this);return rn.indexOf(Wt)};return LangIt}(nn.Wordlist);var sn=new In;Pt.langIt=sn;nn.Wordlist.register(sn)},53670:function(Wt,Pt,en){"use strict";var tn=this&&this.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();Object.defineProperty(Pt,"__esModule",{value:true});Pt.langJa=void 0;var nn=en(42006);var an=en(13859);var rn=en(18210);var In=["AQRASRAGBAGUAIRAHBAghAURAdBAdcAnoAMEAFBAFCBKFBQRBSFBCXBCDBCHBGFBEQBpBBpQBIkBHNBeOBgFBVCBhBBhNBmOBmRBiHBiFBUFBZDBvFBsXBkFBlcBjYBwDBMBBTBBTRBWBBWXXaQXaRXQWXSRXCFXYBXpHXOQXHRXhRXuRXmXXbRXlXXwDXTRXrCXWQXWGaBWaKcaYgasFadQalmaMBacAKaRKKBKKXKKjKQRKDRKCYKCRKIDKeVKHcKlXKjHKrYNAHNBWNaRNKcNIBNIONmXNsXNdXNnBNMBNRBNrXNWDNWMNFOQABQAHQBrQXBQXFQaRQKXQKDQKOQKFQNBQNDQQgQCXQCDQGBQGDQGdQYXQpBQpQQpHQLXQHuQgBQhBQhCQuFQmXQiDQUFQZDQsFQdRQkHQbRQlOQlmQPDQjDQwXQMBQMDQcFQTBQTHQrDDXQDNFDGBDGQDGRDpFDhFDmXDZXDbRDMYDRdDTRDrXSAhSBCSBrSGQSEQSHBSVRShYShkSyQSuFSiBSdcSoESocSlmSMBSFBSFKSFNSFdSFcCByCaRCKcCSBCSRCCrCGbCEHCYXCpBCpQCIBCIHCeNCgBCgFCVECVcCmkCmwCZXCZFCdRClOClmClFCjDCjdCnXCwBCwXCcRCFQCFjGXhGNhGDEGDMGCDGCHGIFGgBGVXGVEGVRGmXGsXGdYGoSGbRGnXGwXGwDGWRGFNGFLGFOGFdGFkEABEBDEBFEXOEaBEKSENBENDEYXEIgEIkEgBEgQEgHEhFEudEuFEiBEiHEiFEZDEvBEsXEsFEdXEdREkFEbBEbRElFEPCEfkEFNYAEYAhYBNYQdYDXYSRYCEYYoYgQYgRYuRYmCYZTYdBYbEYlXYjQYRbYWRpKXpQopQnpSFpCXpIBpISphNpdBpdRpbRpcZpFBpFNpFDpFopFrLADLBuLXQLXcLaFLCXLEhLpBLpFLHXLeVLhILdHLdRLoDLbRLrXIABIBQIBCIBsIBoIBMIBRIXaIaRIKYIKRINBINuICDIGBIIDIIkIgRIxFIyQIiHIdRIbYIbRIlHIwRIMYIcRIRVITRIFBIFNIFQOABOAFOBQOaFONBONMOQFOSFOCDOGBOEQOpBOLXOIBOIFOgQOgFOyQOycOmXOsXOdIOkHOMEOMkOWWHBNHXNHXWHNXHDuHDRHSuHSRHHoHhkHmRHdRHkQHlcHlRHwBHWcgAEgAggAkgBNgBQgBEgXOgYcgLXgHjgyQgiBgsFgdagMYgWSgFQgFEVBTVXEVKBVKNVKDVKYVKRVNBVNYVDBVDxVSBVSRVCjVGNVLXVIFVhBVhcVsXVdRVbRVlRhBYhKYhDYhGShxWhmNhdahdkhbRhjohMXhTRxAXxXSxKBxNBxEQxeNxeQxhXxsFxdbxlHxjcxFBxFNxFQxFOxFoyNYyYoybcyMYuBQuBRuBruDMuCouHBudQukkuoBulVuMXuFEmCYmCRmpRmeDmiMmjdmTFmFQiADiBOiaRiKRiNBiNRiSFiGkiGFiERipRiLFiIFihYibHijBijEiMXiWBiFBiFCUBQUXFUaRUNDUNcUNRUNFUDBUSHUCDUGBUGFUEqULNULoUIRUeEUeYUgBUhFUuRUiFUsXUdFUkHUbBUjSUjYUwXUMDUcHURdUTBUrBUrXUrQZAFZXZZaRZKFZNBZQFZCXZGBZYdZpBZLDZIFZHXZHNZeQZVRZVFZmXZiBZvFZdFZkFZbHZbFZwXZcCZcRZRBvBQvBGvBLvBWvCovMYsAFsBDsaRsKFsNFsDrsSHsSFsCXsCRsEBsEHsEfspBsLBsLDsIgsIRseGsbRsFBsFQsFSdNBdSRdCVdGHdYDdHcdVbdySduDdsXdlRdwXdWYdWcdWRkBMkXOkaRkNIkNFkSFkCFkYBkpRkeNkgBkhVkmXksFklVkMBkWDkFNoBNoaQoaFoNBoNXoNaoNEoSRoEroYXoYCoYbopRopFomXojkowXorFbBEbEIbdBbjYlaRlDElMXlFDjKjjSRjGBjYBjYkjpRjLXjIBjOFjeVjbRjwBnXQnSHnpFnLXnINnMBnTRwXBwXNwXYwNFwQFwSBwGFwLXwLDweNwgBwuHwjDwnXMBXMpFMIBMeNMTHcaQcNBcDHcSFcCXcpBcLXcLDcgFcuFcnXcwXccDcTQcrFTQErXNrCHrpFrgFrbFrTHrFcWNYWNbWEHWMXWTR","ABGHABIJAEAVAYJQALZJAIaRAHNXAHdcAHbRAZJMAZJRAZTRAdVJAklmAbcNAjdRAMnRAMWYAWpRAWgRAFgBAFhBAFdcBNJBBNJDBQKBBQhcBQlmBDEJBYJkBYJTBpNBBpJFBIJBBIJDBIcABOKXBOEJBOVJBOiJBOZJBepBBeLXBeIFBegBBgGJBVJXBuocBiJRBUJQBlXVBlITBwNFBMYVBcqXBTlmBWNFBWiJBWnRBFGHBFwXXKGJXNJBXNZJXDTTXSHSXSVRXSlHXCJDXGQJXEhXXYQJXYbRXOfXXeNcXVJFXhQJXhEJXdTRXjdXXMhBXcQTXRGBXTEBXTnQXFCXXFOFXFgFaBaFaBNJaBCJaBpBaBwXaNJKaNJDaQIBaDpRaEPDaHMFamDJalEJaMZJaFaFaFNBaFQJaFLDaFVHKBCYKBEBKBHDKXaFKXGdKXEJKXpHKXIBKXZDKXwXKKwLKNacKNYJKNJoKNWcKDGdKDTRKChXKGaRKGhBKGbRKEBTKEaRKEPTKLMDKLWRKOHDKVJcKdBcKlIBKlOPKFSBKFEPKFpFNBNJNJBQNBGHNBEPNBHXNBgFNBVXNBZDNBsXNBwXNNaRNNJDNNJENNJkNDCJNDVDNGJRNJiDNZJNNsCJNJFNNFSBNFCXNFEPNFLXNFIFQJBFQCaRQJEQQLJDQLJFQIaRQOqXQHaFQHHQQVJXQVJDQhNJQmEIQZJFQsJXQJrFQWbRDJABDBYJDXNFDXCXDXLXDXZDDXsJDQqXDSJFDJCXDEPkDEqXDYmQDpSJDOCkDOGQDHEIDVJDDuDuDWEBDJFgSBNDSBSFSBGHSBIBSBTQSKVYSJQNSJQiSJCXSEqXSJYVSIiJSOMYSHAHSHaQSeCFSepQSegBSHdHSHrFShSJSJuHSJUFSkNRSrSrSWEBSFaHSJFQSFCXSFGDSFYXSFODSFgBSFVXSFhBSFxFSFkFSFbBSFMFCADdCJXBCXaFCXKFCXNFCXCXCXGBCXEJCXYBCXLDCXIBCXOPCXHXCXgBCXhBCXiBCXlDCXcHCJNBCJNFCDCJCDGBCDVXCDhBCDiDCDJdCCmNCpJFCIaRCOqXCHCHCHZJCViJCuCuCmddCJiFCdNBCdHhClEJCnUJCreSCWlgCWTRCFBFCFNBCFYBCFVFCFhFCFdSCFTBCFWDGBNBGBQFGJBCGBEqGBpBGBgQGNBEGNJYGNkOGNJRGDUFGJpQGHaBGJeNGJeEGVBlGVKjGiJDGvJHGsVJGkEBGMIJGWjNGFBFGFCXGFGBGFYXGFpBGFMFEASJEAWpEJNFECJVEIXSEIQJEOqXEOcFEeNcEHEJEHlFEJgFEhlmEmDJEmZJEiMBEUqXEoSREPBFEPXFEPKFEPSFEPEFEPpFEPLXEPIBEJPdEPcFEPTBEJnXEqlHEMpREFCXEFODEFcFYASJYJAFYBaBYBVXYXpFYDhBYCJBYJGFYYbRYeNcYJeVYiIJYZJcYvJgYvJRYJsXYsJFYMYMYreVpBNHpBEJpBwXpQxFpYEJpeNDpJeDpeSFpeCHpHUJpHbBpHcHpmUJpiiJpUJrpsJuplITpFaBpFQqpFGBpFEfpFYBpFpBpFLJpFIDpFgBpFVXpFyQpFuFpFlFpFjDpFnXpFwXpJFMpFTBLXCJLXEFLXhFLXUJLXbFLalmLNJBLSJQLCLCLGJBLLDJLHaFLeNFLeSHLeCXLepFLhaRLZsJLsJDLsJrLocaLlLlLMdbLFNBLFSBLFEHLFkFIBBFIBXFIBaQIBKXIBSFIBpHIBLXIBgBIBhBIBuHIBmXIBiFIBZXIBvFIBbFIBjQIBwXIBWFIKTRIQUJIDGFICjQIYSRIINXIJeCIVaRImEkIZJFIvJRIsJXIdCJIJoRIbBQIjYBIcqXITFVIreVIFKFIFSFIFCJIFGFIFLDIFIBIJFOIFgBIFVXIJFhIFxFIFmXIFdHIFbBIJFrIJFWOBGBOQfXOOKjOUqXOfXBOqXEOcqXORVJOFIBOFlDHBIOHXiFHNTRHCJXHIaRHHJDHHEJHVbRHZJYHbIBHRsJHRkDHWlmgBKFgBSBgBCDgBGHgBpBgBIBgBVJgBuBgBvFgKDTgQVXgDUJgGSJgOqXgmUMgZIJgTUJgWIEgFBFgFNBgFDJgFSFgFGBgFYXgJFOgFgQgFVXgFhBgFbHgJFWVJABVQKcVDgFVOfXVeDFVhaRVmGdViJYVMaRVFNHhBNDhBCXhBEqhBpFhBLXhNJBhSJRheVXhhKEhxlmhZIJhdBQhkIJhbMNhMUJhMZJxNJgxQUJxDEkxDdFxSJRxplmxeSBxeCXxeGFxeYXxepQxegBxWVcxFEQxFLXxFIBxFgBxFxDxFZtxFdcxFbBxFwXyDJXyDlcuASJuDJpuDIBuCpJuGSJuIJFueEFuZIJusJXudWEuoIBuWGJuFBcuFKEuFNFuFQFuFDJuFGJuFVJuFUtuFdHuFTBmBYJmNJYmQhkmLJDmLJomIdXmiJYmvJRmsJRmklmmMBymMuCmclmmcnQiJABiJBNiJBDiBSFiBCJiBEFiBYBiBpFiBLXiBTHiJNciDEfiCZJiECJiJEqiOkHiHKFieNDiHJQieQcieDHieSFieCXieGFieEFieIHiegFihUJixNoioNXiFaBiFKFiFNDiFEPiFYXitFOitFHiFgBiFVEiFmXiFitiFbBiFMFiFrFUCXQUIoQUIJcUHQJUeCEUHwXUUJDUUqXUdWcUcqXUrnQUFNDUFSHUFCFUFEfUFLXUtFOZBXOZXSBZXpFZXVXZEQJZEJkZpDJZOqXZeNHZeCDZUqXZFBQZFEHZFLXvBAFvBKFvBCXvBEPvBpHvBIDvBgFvBuHvQNJvFNFvFGBvFIBvJFcsXCDsXLXsXsXsXlFsXcHsQqXsJQFsEqXseIFsFEHsFjDdBxOdNpRdNJRdEJbdpJRdhZJdnSJdrjNdFNJdFQHdFhNkNJDkYaRkHNRkHSRkVbRkuMRkjSJkcqDoSJFoEiJoYZJoOfXohEBoMGQocqXbBAFbBXFbBaFbBNDbBGBbBLXbBTBbBWDbGJYbIJHbFQqbFpQlDgQlOrFlVJRjGEBjZJRnXvJnXbBnEfHnOPDngJRnxfXnUJWwXEJwNpJwDpBwEfXwrEBMDCJMDGHMDIJMLJDcQGDcQpHcqXccqNFcqCXcFCJRBSBRBGBRBEJRBpQTBNFTBQJTBpBTBVXTFABTFSBTFCFTFGBTFMDrXCJrXLDrDNJrEfHrFQJrFitWNjdWNTR","AKLJMANOPFASNJIAEJWXAYJNRAIIbRAIcdaAeEfDAgidRAdjNYAMYEJAMIbRAFNJBAFpJFBBIJYBDZJFBSiJhBGdEBBEJfXBEJqXBEJWRBpaUJBLXrXBIYJMBOcfXBeEfFBestXBjNJRBcDJOBFEqXXNvJRXDMBhXCJNYXOAWpXONJWXHDEBXeIaRXhYJDXZJSJXMDJOXcASJXFVJXaBQqXaBZJFasXdQaFSJQaFEfXaFpJHaFOqXKBNSRKXvJBKQJhXKEJQJKEJGFKINJBKIJjNKgJNSKVElmKVhEBKiJGFKlBgJKjnUJKwsJYKMFIJKFNJDKFIJFKFOfXNJBSFNJBCXNBpJFNJBvQNJBMBNJLJXNJOqXNJeCXNJeGFNdsJCNbTKFNwXUJQNFEPQDiJcQDMSJQSFpBQGMQJQJeOcQyCJEQUJEBQJFBrQFEJqDXDJFDJXpBDJXIMDGiJhDIJGRDJeYcDHrDJDVXgFDkAWpDkIgRDjDEqDMvJRDJFNFDJFIBSKclmSJQOFSJQVHSJQjDSJGJBSJGJFSECJoSHEJqSJHTBSJVJDSViJYSZJNBSJsJDSFSJFSFEfXSJFLXCBUJVCJXSBCJXpBCXVJXCJXsXCJXdFCJNJHCLIJgCHiJFCVNJMChCJhCUHEJCsJTRCJdYcCoQJCCFEfXCFIJgCFUJxCFstFGJBaQGJBIDGQJqXGYJNRGJHKFGeQqDGHEJFGJeLXGHIiJGHdBlGUJEBGkIJTGFQPDGJFEqEAGegEJIJBEJVJXEhQJTEiJNcEJZJFEJoEqEjDEqEPDsXEPGJBEPOqXEPeQFEfDiDEJfEFEfepQEfMiJEqXNBEqDIDEqeSFEqVJXEMvJRYXNJDYXEJHYKVJcYYJEBYJeEcYJUqXYFpJFYFstXpAZJMpBSJFpNBNFpeQPDpHLJDpHIJFpHgJFpeitFpHZJFpJFADpFSJFpJFCJpFOqXpFitBpJFZJLXIJFLIJgRLVNJWLVHJMLwNpJLFGJBLFLJDLFOqXLJFUJIBDJXIBGJBIJBYQIJBIBIBOqXIBcqDIEGJFILNJTIIJEBIOiJhIJeNBIJeIBIhiJIIWoTRIJFAHIJFpBIJFuHIFUtFIJFTHOSBYJOEcqXOHEJqOvBpFOkVJrObBVJOncqDOcNJkHhNJRHuHJuHdMhBgBUqXgBsJXgONJBgHNJDgHHJQgJeitgHsJXgJyNagyDJBgZJDrgsVJQgkEJNgkjSJgJFAHgFCJDgFZtMVJXNFVXQfXVJXDJVXoQJVQVJQVDEfXVDvJHVEqNFVeQfXVHpJFVHxfXVVJSRVVmaRVlIJOhCXVJhHjYkhxCJVhWVUJhWiJcxBNJIxeEqDxfXBFxcFEPxFSJFxFYJXyBDQJydaUJyFOPDuYCJYuLvJRuHLJXuZJLDuFOPDuFZJHuFcqXmKHJdmCQJcmOsVJiJAGFitLCFieOfXiestXiZJMEikNJQirXzFiFQqXiFIJFiFZJFiFvtFUHpJFUteIcUteOcUVCJkUhdHcUbEJEUJqXQUMNJhURjYkUFitFZDGJHZJIxDZJVJXZJFDJZJFpQvBNJBvBSJFvJxBrseQqDsVFVJdFLJDkEJNBkmNJYkFLJDoQJOPoGsJRoEAHBoEJfFbBQqDbBZJHbFVJXlFIJBjYIrXjeitcjjCEBjWMNBwXQfXwXOaFwDsJXwCJTRwrCZJMDNJQcDDJFcqDOPRYiJFTBsJXTQIJBTFEfXTFLJDrXEJFrEJXMrFZJFWEJdEWYTlm","ABCDEFACNJTRAMBDJdAcNJVXBLNJEBXSIdWRXErNJkXYDJMBXZJCJaXMNJaYKKVJKcKDEJqXKDcNJhKVJrNYKbgJVXKFVJSBNBYBwDNJeQfXNJeEqXNhGJWENJFiJRQlIJbEQJfXxDQqXcfXQFNDEJQFwXUJDYcnUJDJIBgQDIUJTRDJFEqDSJQSJFSJQIJFSOPeZtSJFZJHCJXQfXCTDEqFGJBSJFGJBOfXGJBcqXGJHNJDGJRLiJEJfXEqEJFEJPEFpBEJYJBZJFYBwXUJYiJMEBYJZJyTYTONJXpQMFXFpeGIDdpJFstXpJFcPDLBVSJRLHQJqXLJFZJFIJBNJDIJBUqXIBkFDJIJEJPTIYJGWRIJeQPDIJeEfHIJFsJXOqGDSFHXEJqXgJCsJCgGQJqXgdQYJEgFMFNBgJFcqDVJwXUJVJFZJchIgJCCxOEJqXxOwXUJyDJBVRuscisciJBiJBieUtqXiJFDJkiFsJXQUGEZJcUJFsJXZtXIrXZDZJDrZJFNJDZJFstXvJFQqXvJFCJEsJXQJqkhkNGBbDJdTRbYJMEBlDwXUJMEFiJFcfXNJDRcNJWMTBLJXC","BraFUtHBFSJFdbNBLJXVJQoYJNEBSJBEJfHSJHwXUJCJdAZJMGjaFVJXEJPNJBlEJfFiJFpFbFEJqIJBVJCrIBdHiJhOPFChvJVJZJNJWxGFNIFLueIBQJqUHEJfUFstOZJDrlXEASJRlXVJXSFwVJNJWD","QJEJNNJDQJEJIBSFQJEJxegBQJEJfHEPSJBmXEJFSJCDEJqXLXNJFQqXIcQsFNJFIFEJqXUJgFsJXIJBUJEJfHNFvJxEqXNJnXUJFQqD","IJBEJqXZJ"];var sn="~~AzB~X~a~KN~Q~D~S~C~G~E~Y~p~L~I~O~eH~g~V~hxyumi~~U~~Z~~v~~s~~dkoblPjfnqwMcRTr~W~~~F~~~~~Jt";var on=null;function hex(Wt){return(0,nn.hexlify)((0,an.toUtf8Bytes)(Wt))}var cn="0xe3818de38284e3818f";var dn="0xe3818de38283e3818f";function loadWords(Wt){if(on!==null){return}on=[];var Pt={};Pt[(0,an.toUtf8String)([227,130,154])]=false;Pt[(0,an.toUtf8String)([227,130,153])]=false;Pt[(0,an.toUtf8String)([227,130,133])]=(0,an.toUtf8String)([227,130,134]);Pt[(0,an.toUtf8String)([227,129,163])]=(0,an.toUtf8String)([227,129,164]);Pt[(0,an.toUtf8String)([227,130,131])]=(0,an.toUtf8String)([227,130,132]);Pt[(0,an.toUtf8String)([227,130,135])]=(0,an.toUtf8String)([227,130,136]);function normalize(Wt){var en="";for(var tn=0;tnPt){return 1}return 0}for(var en=3;en<=9;en++){var tn=In[en-3];for(var nn=0;nn=40){Wt=Wt+168-40}else if(Wt>=19){Wt=Wt+97-19}return(0,nn.toUtf8String)([225,(Wt>>6)+132,(Wt&63)+128])}var sn=null;function loadWords(Wt){if(sn!=null){return}sn=[];rn.forEach((function(Wt,Pt){Pt+=4;for(var en=0;en>2),128+cn.indexOf(rn[en*3+1]),128+cn.indexOf(rn[en*3+2])];if(Wt.locale==="zh_tw"){var pn=tn%4;for(var mn=pn;mn<3;mn++){un[mn]=cn.indexOf(In[Pt++])+(mn==0?228:128)}}sn[Wt.locale].push((0,nn.toUtf8String)(un))}if(an.Wordlist.check(Wt)!==on[Wt.locale]){sn[Wt.locale]=null;throw new Error("BIP39 Wordlist for "+Wt.locale+" (Chinese) FAILED")}}var un=function(Wt){tn(LangZh,Wt);function LangZh(Pt){return Wt.call(this,"zh_"+Pt)||this}LangZh.prototype.getWord=function(Wt){loadWords(this);return sn[this.locale][Wt]};LangZh.prototype.getWordIndex=function(Wt){loadWords(this);return sn[this.locale].indexOf(Wt)};LangZh.prototype.split=function(Wt){Wt=Wt.replace(/(?:\u3000| )+/g,"");return Wt.split("")};return LangZh}(an.Wordlist);var pn=new un("cn");Pt.langZhCn=pn;an.Wordlist.register(pn);an.Wordlist.register(pn,"zh");var mn=new un("tw");Pt.langZhTw=mn;an.Wordlist.register(mn)},18210:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Wordlist=Pt.logger=void 0;var tn=false;var nn=en(91839);var an=en(61338);var rn=en(76127);var In=en(17141);Pt.logger=new rn.Logger(In.version);var sn=function(){function Wordlist(Wt){var en=this.constructor;Pt.logger.checkAbstract(en,Wordlist);(0,an.defineReadOnly)(this,"locale",Wt)}Wordlist.prototype.split=function(Wt){return Wt.toLowerCase().split(/ +/g)};Wordlist.prototype.join=function(Wt){return Wt.join(" ")};Wordlist.check=function(Wt){var Pt=[];for(var en=0;en<2048;en++){var tn=Wt.getWord(en);if(en!==Wt.getWordIndex(tn)){return"0x"}Pt.push(tn)}return(0,nn.id)(Pt.join("\n")+"\n")};Wordlist.register=function(Wt,Pt){if(!Pt){Pt=Wt.locale}if(tn){try{var en=window;if(en._ethers&&en._ethers.wordlists){if(!en._ethers.wordlists[Pt]){(0,an.defineReadOnly)(en._ethers.wordlists,Pt,Wt)}}}catch(Wt){}}};return Wordlist}();Pt.Wordlist=sn},1057:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.wordlists=void 0;var tn=en(53994);var nn=en(73120);var an=en(78091);var rn=en(58079);var In=en(53670);var sn=en(98589);var on=en(87054);var cn=en(24829);Pt.wordlists={cz:tn.langCz,en:nn.langEn,es:an.langEs,fr:rn.langFr,it:on.langIt,ja:In.langJa,ko:sn.langKo,zh:cn.langZhCn,zh_cn:cn.langZhCn,zh_tw:cn.langZhTw}},77864:Wt=>{"use strict";var Pt=Object.defineProperty;var en=Object.getOwnPropertyDescriptor;var tn=Object.getOwnPropertyNames;var nn=Object.prototype.hasOwnProperty;var __export=(Wt,en)=>{for(var tn in en)Pt(Wt,tn,{get:en[tn],enumerable:true})};var __copyProps=(Wt,an,rn,In)=>{if(an&&typeof an==="object"||typeof an==="function"){for(let sn of tn(an))if(!nn.call(Wt,sn)&&sn!==rn)Pt(Wt,sn,{get:()=>an[sn],enumerable:!(In=en(an,sn))||In.enumerable})}return Wt};var __toCommonJS=Wt=>__copyProps(Pt({},"__esModule",{value:true}),Wt);var an={};__export(an,{createTokenAuth:()=>on});Wt.exports=__toCommonJS(an);var rn=/^v1\./;var In=/^ghs_/;var sn=/^ghu_/;async function auth(Wt){const Pt=Wt.split(/\./).length===3;const en=rn.test(Wt)||In.test(Wt);const tn=sn.test(Wt);const nn=Pt?"app":en?"installation":tn?"user-to-server":"oauth";return{type:"token",token:Wt,tokenType:nn}}function withAuthorizationPrefix(Wt){if(Wt.split(/\./).length===3){return`bearer ${Wt}`}return`token ${Wt}`}async function hook(Wt,Pt,en,tn){const nn=Pt.endpoint.merge(en,tn);nn.headers.authorization=withAuthorizationPrefix(Wt);return Pt(nn)}var on=function createTokenAuth2(Wt){if(!Wt){throw new Error("[@octokit/auth-token] No token passed to createTokenAuth")}if(typeof Wt!=="string"){throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string")}Wt=Wt.replace(/^(token|bearer) +/i,"");return Object.assign(auth.bind(null,Wt),{hook:hook.bind(null,Wt)})};0&&0},61897:(Wt,Pt,en)=>{"use strict";var tn=Object.defineProperty;var nn=Object.getOwnPropertyDescriptor;var an=Object.getOwnPropertyNames;var rn=Object.prototype.hasOwnProperty;var __export=(Wt,Pt)=>{for(var en in Pt)tn(Wt,en,{get:Pt[en],enumerable:true})};var __copyProps=(Wt,Pt,en,In)=>{if(Pt&&typeof Pt==="object"||typeof Pt==="function"){for(let sn of an(Pt))if(!rn.call(Wt,sn)&&sn!==en)tn(Wt,sn,{get:()=>Pt[sn],enumerable:!(In=nn(Pt,sn))||In.enumerable})}return Wt};var __toCommonJS=Wt=>__copyProps(tn({},"__esModule",{value:true}),Wt);var In={};__export(In,{Octokit:()=>hn});Wt.exports=__toCommonJS(In);var sn=en(33843);var on=en(52732);var cn=en(66255);var dn=en(70007);var un=en(77864);var pn="5.2.0";var noop=()=>{};var mn=console.warn.bind(console);var bn=console.error.bind(console);var Gn=`octokit-core.js/${pn} ${(0,sn.getUserAgent)()}`;var hn=class{static{this.VERSION=pn}static defaults(Wt){const Pt=class extends(this){constructor(...Pt){const en=Pt[0]||{};if(typeof Wt==="function"){super(Wt(en));return}super(Object.assign({},Wt,en,en.userAgent&&Wt.userAgent?{userAgent:`${en.userAgent} ${Wt.userAgent}`}:null))}};return Pt}static{this.plugins=[]}static plugin(...Wt){const Pt=this.plugins;const en=class extends(this){static{this.plugins=Pt.concat(Wt.filter((Wt=>!Pt.includes(Wt))))}};return en}constructor(Wt={}){const Pt=new on.Collection;const en={baseUrl:cn.request.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},Wt.request,{hook:Pt.bind(null,"request")}),mediaType:{previews:[],format:""}};en.headers["user-agent"]=Wt.userAgent?`${Wt.userAgent} ${Gn}`:Gn;if(Wt.baseUrl){en.baseUrl=Wt.baseUrl}if(Wt.previews){en.mediaType.previews=Wt.previews}if(Wt.timeZone){en.headers["time-zone"]=Wt.timeZone}this.request=cn.request.defaults(en);this.graphql=(0,dn.withCustomRequest)(this.request).defaults(en);this.log=Object.assign({debug:noop,info:noop,warn:mn,error:bn},Wt.log);this.hook=Pt;if(!Wt.authStrategy){if(!Wt.auth){this.auth=async()=>({type:"unauthenticated"})}else{const en=(0,un.createTokenAuth)(Wt.auth);Pt.wrap("request",en.hook);this.auth=en}}else{const{authStrategy:en,...tn}=Wt;const nn=en(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:tn},Wt.auth));Pt.wrap("request",nn.hook);this.auth=nn}const tn=this.constructor;for(let Pt=0;Pt{"use strict";var tn=Object.defineProperty;var nn=Object.getOwnPropertyDescriptor;var an=Object.getOwnPropertyNames;var rn=Object.prototype.hasOwnProperty;var __export=(Wt,Pt)=>{for(var en in Pt)tn(Wt,en,{get:Pt[en],enumerable:true})};var __copyProps=(Wt,Pt,en,In)=>{if(Pt&&typeof Pt==="object"||typeof Pt==="function"){for(let sn of an(Pt))if(!rn.call(Wt,sn)&&sn!==en)tn(Wt,sn,{get:()=>Pt[sn],enumerable:!(In=nn(Pt,sn))||In.enumerable})}return Wt};var __toCommonJS=Wt=>__copyProps(tn({},"__esModule",{value:true}),Wt);var In={};__export(In,{endpoint:()=>pn});Wt.exports=__toCommonJS(In);var sn=en(33843);var on="9.0.5";var cn=`octokit-endpoint.js/${on} ${(0,sn.getUserAgent)()}`;var dn={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":cn},mediaType:{format:""}};function lowercaseKeys(Wt){if(!Wt){return{}}return Object.keys(Wt).reduce(((Pt,en)=>{Pt[en.toLowerCase()]=Wt[en];return Pt}),{})}function isPlainObject(Wt){if(typeof Wt!=="object"||Wt===null)return false;if(Object.prototype.toString.call(Wt)!=="[object Object]")return false;const Pt=Object.getPrototypeOf(Wt);if(Pt===null)return true;const en=Object.prototype.hasOwnProperty.call(Pt,"constructor")&&Pt.constructor;return typeof en==="function"&&en instanceof en&&Function.prototype.call(en)===Function.prototype.call(Wt)}function mergeDeep(Wt,Pt){const en=Object.assign({},Wt);Object.keys(Pt).forEach((tn=>{if(isPlainObject(Pt[tn])){if(!(tn in Wt))Object.assign(en,{[tn]:Pt[tn]});else en[tn]=mergeDeep(Wt[tn],Pt[tn])}else{Object.assign(en,{[tn]:Pt[tn]})}}));return en}function removeUndefinedProperties(Wt){for(const Pt in Wt){if(Wt[Pt]===void 0){delete Wt[Pt]}}return Wt}function merge(Wt,Pt,en){if(typeof Pt==="string"){let[Wt,tn]=Pt.split(" ");en=Object.assign(tn?{method:Wt,url:tn}:{url:Wt},en)}else{en=Object.assign({},Pt)}en.headers=lowercaseKeys(en.headers);removeUndefinedProperties(en);removeUndefinedProperties(en.headers);const tn=mergeDeep(Wt||{},en);if(en.url==="/graphql"){if(Wt&&Wt.mediaType.previews?.length){tn.mediaType.previews=Wt.mediaType.previews.filter((Wt=>!tn.mediaType.previews.includes(Wt))).concat(tn.mediaType.previews)}tn.mediaType.previews=(tn.mediaType.previews||[]).map((Wt=>Wt.replace(/-preview/,"")))}return tn}function addQueryParameters(Wt,Pt){const en=/\?/.test(Wt)?"&":"?";const tn=Object.keys(Pt);if(tn.length===0){return Wt}return Wt+en+tn.map((Wt=>{if(Wt==="q"){return"q="+Pt.q.split("+").map(encodeURIComponent).join("+")}return`${Wt}=${encodeURIComponent(Pt[Wt])}`})).join("&")}var un=/\{[^}]+\}/g;function removeNonChars(Wt){return Wt.replace(/^\W+|\W+$/g,"").split(/,/)}function extractUrlVariableNames(Wt){const Pt=Wt.match(un);if(!Pt){return[]}return Pt.map(removeNonChars).reduce(((Wt,Pt)=>Wt.concat(Pt)),[])}function omit(Wt,Pt){const en={__proto__:null};for(const tn of Object.keys(Wt)){if(Pt.indexOf(tn)===-1){en[tn]=Wt[tn]}}return en}function encodeReserved(Wt){return Wt.split(/(%[0-9A-Fa-f]{2})/g).map((function(Wt){if(!/%[0-9A-Fa-f]/.test(Wt)){Wt=encodeURI(Wt).replace(/%5B/g,"[").replace(/%5D/g,"]")}return Wt})).join("")}function encodeUnreserved(Wt){return encodeURIComponent(Wt).replace(/[!'()*]/g,(function(Wt){return"%"+Wt.charCodeAt(0).toString(16).toUpperCase()}))}function encodeValue(Wt,Pt,en){Pt=Wt==="+"||Wt==="#"?encodeReserved(Pt):encodeUnreserved(Pt);if(en){return encodeUnreserved(en)+"="+Pt}else{return Pt}}function isDefined(Wt){return Wt!==void 0&&Wt!==null}function isKeyOperator(Wt){return Wt===";"||Wt==="&"||Wt==="?"}function getValues(Wt,Pt,en,tn){var nn=Wt[en],an=[];if(isDefined(nn)&&nn!==""){if(typeof nn==="string"||typeof nn==="number"||typeof nn==="boolean"){nn=nn.toString();if(tn&&tn!=="*"){nn=nn.substring(0,parseInt(tn,10))}an.push(encodeValue(Pt,nn,isKeyOperator(Pt)?en:""))}else{if(tn==="*"){if(Array.isArray(nn)){nn.filter(isDefined).forEach((function(Wt){an.push(encodeValue(Pt,Wt,isKeyOperator(Pt)?en:""))}))}else{Object.keys(nn).forEach((function(Wt){if(isDefined(nn[Wt])){an.push(encodeValue(Pt,nn[Wt],Wt))}}))}}else{const Wt=[];if(Array.isArray(nn)){nn.filter(isDefined).forEach((function(en){Wt.push(encodeValue(Pt,en))}))}else{Object.keys(nn).forEach((function(en){if(isDefined(nn[en])){Wt.push(encodeUnreserved(en));Wt.push(encodeValue(Pt,nn[en].toString()))}}))}if(isKeyOperator(Pt)){an.push(encodeUnreserved(en)+"="+Wt.join(","))}else if(Wt.length!==0){an.push(Wt.join(","))}}}}else{if(Pt===";"){if(isDefined(nn)){an.push(encodeUnreserved(en))}}else if(nn===""&&(Pt==="&"||Pt==="?")){an.push(encodeUnreserved(en)+"=")}else if(nn===""){an.push("")}}return an}function parseUrl(Wt){return{expand:expand.bind(null,Wt)}}function expand(Wt,Pt){var en=["+","#",".","/",";","?","&"];Wt=Wt.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,(function(Wt,tn,nn){if(tn){let Wt="";const nn=[];if(en.indexOf(tn.charAt(0))!==-1){Wt=tn.charAt(0);tn=tn.substr(1)}tn.split(/,/g).forEach((function(en){var tn=/([^:\*]*)(?::(\d+)|(\*))?/.exec(en);nn.push(getValues(Pt,Wt,tn[1],tn[2]||tn[3]))}));if(Wt&&Wt!=="+"){var an=",";if(Wt==="?"){an="&"}else if(Wt!=="#"){an=Wt}return(nn.length!==0?Wt:"")+nn.join(an)}else{return nn.join(",")}}else{return encodeReserved(nn)}}));if(Wt==="/"){return Wt}else{return Wt.replace(/\/$/,"")}}function parse(Wt){let Pt=Wt.method.toUpperCase();let en=(Wt.url||"/").replace(/:([a-z]\w+)/g,"{$1}");let tn=Object.assign({},Wt.headers);let nn;let an=omit(Wt,["method","baseUrl","url","headers","request","mediaType"]);const rn=extractUrlVariableNames(en);en=parseUrl(en).expand(an);if(!/^http/.test(en)){en=Wt.baseUrl+en}const In=Object.keys(Wt).filter((Wt=>rn.includes(Wt))).concat("baseUrl");const sn=omit(an,In);const on=/application\/octet-stream/i.test(tn.accept);if(!on){if(Wt.mediaType.format){tn.accept=tn.accept.split(/,/).map((Pt=>Pt.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${Wt.mediaType.format}`))).join(",")}if(en.endsWith("/graphql")){if(Wt.mediaType.previews?.length){const Pt=tn.accept.match(/[\w-]+(?=-preview)/g)||[];tn.accept=Pt.concat(Wt.mediaType.previews).map((Pt=>{const en=Wt.mediaType.format?`.${Wt.mediaType.format}`:"+json";return`application/vnd.github.${Pt}-preview${en}`})).join(",")}}}if(["GET","HEAD"].includes(Pt)){en=addQueryParameters(en,sn)}else{if("data"in sn){nn=sn.data}else{if(Object.keys(sn).length){nn=sn}}}if(!tn["content-type"]&&typeof nn!=="undefined"){tn["content-type"]="application/json; charset=utf-8"}if(["PATCH","PUT"].includes(Pt)&&typeof nn==="undefined"){nn=""}return Object.assign({method:Pt,url:en,headers:tn},typeof nn!=="undefined"?{body:nn}:null,Wt.request?{request:Wt.request}:null)}function endpointWithDefaults(Wt,Pt,en){return parse(merge(Wt,Pt,en))}function withDefaults(Wt,Pt){const en=merge(Wt,Pt);const tn=endpointWithDefaults.bind(null,en);return Object.assign(tn,{DEFAULTS:en,defaults:withDefaults.bind(null,en),merge:merge.bind(null,en),parse:parse})}var pn=withDefaults(null,dn);0&&0},70007:(Wt,Pt,en)=>{"use strict";var tn=Object.defineProperty;var nn=Object.getOwnPropertyDescriptor;var an=Object.getOwnPropertyNames;var rn=Object.prototype.hasOwnProperty;var __export=(Wt,Pt)=>{for(var en in Pt)tn(Wt,en,{get:Pt[en],enumerable:true})};var __copyProps=(Wt,Pt,en,In)=>{if(Pt&&typeof Pt==="object"||typeof Pt==="function"){for(let sn of an(Pt))if(!rn.call(Wt,sn)&&sn!==en)tn(Wt,sn,{get:()=>Pt[sn],enumerable:!(In=nn(Pt,sn))||In.enumerable})}return Wt};var __toCommonJS=Wt=>__copyProps(tn({},"__esModule",{value:true}),Wt);var In={};__export(In,{GraphqlResponseError:()=>pn,graphql:()=>hn,withCustomRequest:()=>withCustomRequest});Wt.exports=__toCommonJS(In);var sn=en(66255);var on=en(33843);var cn="7.1.0";var dn=en(66255);var un=en(66255);function _buildMessageForResponseErrors(Wt){return`Request failed due to following response errors:\n`+Wt.errors.map((Wt=>` - ${Wt.message}`)).join("\n")}var pn=class extends Error{constructor(Wt,Pt,en){super(_buildMessageForResponseErrors(en));this.request=Wt;this.headers=Pt;this.response=en;this.name="GraphqlResponseError";this.errors=en.errors;this.data=en.data;if(Error.captureStackTrace){Error.captureStackTrace(this,this.constructor)}}};var mn=["method","baseUrl","url","headers","request","query","mediaType"];var bn=["query","method","url"];var Gn=/\/api\/v3\/?$/;function graphql(Wt,Pt,en){if(en){if(typeof Pt==="string"&&"query"in en){return Promise.reject(new Error(`[@octokit/graphql] "query" cannot be used as variable name`))}for(const Wt in en){if(!bn.includes(Wt))continue;return Promise.reject(new Error(`[@octokit/graphql] "${Wt}" cannot be used as variable name`))}}const tn=typeof Pt==="string"?Object.assign({query:Pt},en):Pt;const nn=Object.keys(tn).reduce(((Wt,Pt)=>{if(mn.includes(Pt)){Wt[Pt]=tn[Pt];return Wt}if(!Wt.variables){Wt.variables={}}Wt.variables[Pt]=tn[Pt];return Wt}),{});const an=tn.baseUrl||Wt.endpoint.DEFAULTS.baseUrl;if(Gn.test(an)){nn.url=an.replace(Gn,"/api/graphql")}return Wt(nn).then((Wt=>{if(Wt.data.errors){const Pt={};for(const en of Object.keys(Wt.headers)){Pt[en]=Wt.headers[en]}throw new pn(nn,Pt,Wt.data)}return Wt.data.data}))}function withDefaults(Wt,Pt){const en=Wt.defaults(Pt);const newApi=(Wt,Pt)=>graphql(en,Wt,Pt);return Object.assign(newApi,{defaults:withDefaults.bind(null,en),endpoint:en.endpoint})}var hn=withDefaults(sn.request,{headers:{"user-agent":`octokit-graphql.js/${cn} ${(0,on.getUserAgent)()}`},method:"POST",url:"/graphql"});function withCustomRequest(Wt){return withDefaults(Wt,{method:"POST",url:"/graphql"})}0&&0},38082:Wt=>{"use strict";var Pt=Object.defineProperty;var en=Object.getOwnPropertyDescriptor;var tn=Object.getOwnPropertyNames;var nn=Object.prototype.hasOwnProperty;var __export=(Wt,en)=>{for(var tn in en)Pt(Wt,tn,{get:en[tn],enumerable:true})};var __copyProps=(Wt,an,rn,In)=>{if(an&&typeof an==="object"||typeof an==="function"){for(let sn of tn(an))if(!nn.call(Wt,sn)&&sn!==rn)Pt(Wt,sn,{get:()=>an[sn],enumerable:!(In=en(an,sn))||In.enumerable})}return Wt};var __toCommonJS=Wt=>__copyProps(Pt({},"__esModule",{value:true}),Wt);var an={};__export(an,{composePaginateRest:()=>In,isPaginatingEndpoint:()=>isPaginatingEndpoint,paginateRest:()=>paginateRest,paginatingEndpoints:()=>sn});Wt.exports=__toCommonJS(an);var rn="11.3.1";function normalizePaginatedListResponse(Wt){if(!Wt.data){return{...Wt,data:[]}}const Pt="total_count"in Wt.data&&!("url"in Wt.data);if(!Pt)return Wt;const en=Wt.data.incomplete_results;const tn=Wt.data.repository_selection;const nn=Wt.data.total_count;delete Wt.data.incomplete_results;delete Wt.data.repository_selection;delete Wt.data.total_count;const an=Object.keys(Wt.data)[0];const rn=Wt.data[an];Wt.data=rn;if(typeof en!=="undefined"){Wt.data.incomplete_results=en}if(typeof tn!=="undefined"){Wt.data.repository_selection=tn}Wt.data.total_count=nn;return Wt}function iterator(Wt,Pt,en){const tn=typeof Pt==="function"?Pt.endpoint(en):Wt.request.endpoint(Pt,en);const nn=typeof Pt==="function"?Pt:Wt.request;const an=tn.method;const rn=tn.headers;let In=tn.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!In)return{done:true};try{const Wt=await nn({method:an,url:In,headers:rn});const Pt=normalizePaginatedListResponse(Wt);In=((Pt.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1];return{value:Pt}}catch(Wt){if(Wt.status!==409)throw Wt;In="";return{value:{status:200,headers:{},data:[]}}}}})}}function paginate(Wt,Pt,en,tn){if(typeof en==="function"){tn=en;en=void 0}return gather(Wt,[],iterator(Wt,Pt,en)[Symbol.asyncIterator](),tn)}function gather(Wt,Pt,en,tn){return en.next().then((nn=>{if(nn.done){return Pt}let an=false;function done(){an=true}Pt=Pt.concat(tn?tn(nn.value,done):nn.value.data);if(an){return Pt}return gather(Wt,Pt,en,tn)}))}var In=Object.assign(paginate,{iterator:iterator});var sn=["GET /advisories","GET /app/hook/deliveries","GET /app/installation-requests","GET /app/installations","GET /assignments/{assignment_id}/accepted_assignments","GET /classrooms","GET /classrooms/{classroom_id}/assignments","GET /enterprises/{enterprise}/copilot/usage","GET /enterprises/{enterprise}/dependabot/alerts","GET /enterprises/{enterprise}/secret-scanning/alerts","GET /events","GET /gists","GET /gists/public","GET /gists/starred","GET /gists/{gist_id}/comments","GET /gists/{gist_id}/commits","GET /gists/{gist_id}/forks","GET /installation/repositories","GET /issues","GET /licenses","GET /marketplace_listing/plans","GET /marketplace_listing/plans/{plan_id}/accounts","GET /marketplace_listing/stubbed/plans","GET /marketplace_listing/stubbed/plans/{plan_id}/accounts","GET /networks/{owner}/{repo}/events","GET /notifications","GET /organizations","GET /orgs/{org}/actions/cache/usage-by-repository","GET /orgs/{org}/actions/permissions/repositories","GET /orgs/{org}/actions/runners","GET /orgs/{org}/actions/secrets","GET /orgs/{org}/actions/secrets/{secret_name}/repositories","GET /orgs/{org}/actions/variables","GET /orgs/{org}/actions/variables/{name}/repositories","GET /orgs/{org}/blocks","GET /orgs/{org}/code-scanning/alerts","GET /orgs/{org}/codespaces","GET /orgs/{org}/codespaces/secrets","GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories","GET /orgs/{org}/copilot/billing/seats","GET /orgs/{org}/copilot/usage","GET /orgs/{org}/dependabot/alerts","GET /orgs/{org}/dependabot/secrets","GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories","GET /orgs/{org}/events","GET /orgs/{org}/failed_invitations","GET /orgs/{org}/hooks","GET /orgs/{org}/hooks/{hook_id}/deliveries","GET /orgs/{org}/installations","GET /orgs/{org}/invitations","GET /orgs/{org}/invitations/{invitation_id}/teams","GET /orgs/{org}/issues","GET /orgs/{org}/members","GET /orgs/{org}/members/{username}/codespaces","GET /orgs/{org}/migrations","GET /orgs/{org}/migrations/{migration_id}/repositories","GET /orgs/{org}/organization-roles/{role_id}/teams","GET /orgs/{org}/organization-roles/{role_id}/users","GET /orgs/{org}/outside_collaborators","GET /orgs/{org}/packages","GET /orgs/{org}/packages/{package_type}/{package_name}/versions","GET /orgs/{org}/personal-access-token-requests","GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories","GET /orgs/{org}/personal-access-tokens","GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories","GET /orgs/{org}/projects","GET /orgs/{org}/properties/values","GET /orgs/{org}/public_members","GET /orgs/{org}/repos","GET /orgs/{org}/rulesets","GET /orgs/{org}/rulesets/rule-suites","GET /orgs/{org}/secret-scanning/alerts","GET /orgs/{org}/security-advisories","GET /orgs/{org}/team/{team_slug}/copilot/usage","GET /orgs/{org}/teams","GET /orgs/{org}/teams/{team_slug}/discussions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions","GET /orgs/{org}/teams/{team_slug}/invitations","GET /orgs/{org}/teams/{team_slug}/members","GET /orgs/{org}/teams/{team_slug}/projects","GET /orgs/{org}/teams/{team_slug}/repos","GET /orgs/{org}/teams/{team_slug}/teams","GET /projects/columns/{column_id}/cards","GET /projects/{project_id}/collaborators","GET /projects/{project_id}/columns","GET /repos/{owner}/{repo}/actions/artifacts","GET /repos/{owner}/{repo}/actions/caches","GET /repos/{owner}/{repo}/actions/organization-secrets","GET /repos/{owner}/{repo}/actions/organization-variables","GET /repos/{owner}/{repo}/actions/runners","GET /repos/{owner}/{repo}/actions/runs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts","GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs","GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs","GET /repos/{owner}/{repo}/actions/secrets","GET /repos/{owner}/{repo}/actions/variables","GET /repos/{owner}/{repo}/actions/workflows","GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs","GET /repos/{owner}/{repo}/activity","GET /repos/{owner}/{repo}/assignees","GET /repos/{owner}/{repo}/branches","GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations","GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs","GET /repos/{owner}/{repo}/code-scanning/alerts","GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances","GET /repos/{owner}/{repo}/code-scanning/analyses","GET /repos/{owner}/{repo}/codespaces","GET /repos/{owner}/{repo}/codespaces/devcontainers","GET /repos/{owner}/{repo}/codespaces/secrets","GET /repos/{owner}/{repo}/collaborators","GET /repos/{owner}/{repo}/comments","GET /repos/{owner}/{repo}/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/commits","GET /repos/{owner}/{repo}/commits/{commit_sha}/comments","GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls","GET /repos/{owner}/{repo}/commits/{ref}/check-runs","GET /repos/{owner}/{repo}/commits/{ref}/check-suites","GET /repos/{owner}/{repo}/commits/{ref}/status","GET /repos/{owner}/{repo}/commits/{ref}/statuses","GET /repos/{owner}/{repo}/contributors","GET /repos/{owner}/{repo}/dependabot/alerts","GET /repos/{owner}/{repo}/dependabot/secrets","GET /repos/{owner}/{repo}/deployments","GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses","GET /repos/{owner}/{repo}/environments","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies","GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps","GET /repos/{owner}/{repo}/environments/{environment_name}/secrets","GET /repos/{owner}/{repo}/environments/{environment_name}/variables","GET /repos/{owner}/{repo}/events","GET /repos/{owner}/{repo}/forks","GET /repos/{owner}/{repo}/hooks","GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries","GET /repos/{owner}/{repo}/invitations","GET /repos/{owner}/{repo}/issues","GET /repos/{owner}/{repo}/issues/comments","GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/issues/events","GET /repos/{owner}/{repo}/issues/{issue_number}/comments","GET /repos/{owner}/{repo}/issues/{issue_number}/events","GET /repos/{owner}/{repo}/issues/{issue_number}/labels","GET /repos/{owner}/{repo}/issues/{issue_number}/reactions","GET /repos/{owner}/{repo}/issues/{issue_number}/timeline","GET /repos/{owner}/{repo}/keys","GET /repos/{owner}/{repo}/labels","GET /repos/{owner}/{repo}/milestones","GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels","GET /repos/{owner}/{repo}/notifications","GET /repos/{owner}/{repo}/pages/builds","GET /repos/{owner}/{repo}/projects","GET /repos/{owner}/{repo}/pulls","GET /repos/{owner}/{repo}/pulls/comments","GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions","GET /repos/{owner}/{repo}/pulls/{pull_number}/comments","GET /repos/{owner}/{repo}/pulls/{pull_number}/commits","GET /repos/{owner}/{repo}/pulls/{pull_number}/files","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews","GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments","GET /repos/{owner}/{repo}/releases","GET /repos/{owner}/{repo}/releases/{release_id}/assets","GET /repos/{owner}/{repo}/releases/{release_id}/reactions","GET /repos/{owner}/{repo}/rules/branches/{branch}","GET /repos/{owner}/{repo}/rulesets","GET /repos/{owner}/{repo}/rulesets/rule-suites","GET /repos/{owner}/{repo}/secret-scanning/alerts","GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations","GET /repos/{owner}/{repo}/security-advisories","GET /repos/{owner}/{repo}/stargazers","GET /repos/{owner}/{repo}/subscribers","GET /repos/{owner}/{repo}/tags","GET /repos/{owner}/{repo}/teams","GET /repos/{owner}/{repo}/topics","GET /repositories","GET /search/code","GET /search/commits","GET /search/issues","GET /search/labels","GET /search/repositories","GET /search/topics","GET /search/users","GET /teams/{team_id}/discussions","GET /teams/{team_id}/discussions/{discussion_number}/comments","GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions","GET /teams/{team_id}/discussions/{discussion_number}/reactions","GET /teams/{team_id}/invitations","GET /teams/{team_id}/members","GET /teams/{team_id}/projects","GET /teams/{team_id}/repos","GET /teams/{team_id}/teams","GET /user/blocks","GET /user/codespaces","GET /user/codespaces/secrets","GET /user/emails","GET /user/followers","GET /user/following","GET /user/gpg_keys","GET /user/installations","GET /user/installations/{installation_id}/repositories","GET /user/issues","GET /user/keys","GET /user/marketplace_purchases","GET /user/marketplace_purchases/stubbed","GET /user/memberships/orgs","GET /user/migrations","GET /user/migrations/{migration_id}/repositories","GET /user/orgs","GET /user/packages","GET /user/packages/{package_type}/{package_name}/versions","GET /user/public_emails","GET /user/repos","GET /user/repository_invitations","GET /user/social_accounts","GET /user/ssh_signing_keys","GET /user/starred","GET /user/subscriptions","GET /user/teams","GET /users","GET /users/{username}/events","GET /users/{username}/events/orgs/{org}","GET /users/{username}/events/public","GET /users/{username}/followers","GET /users/{username}/following","GET /users/{username}/gists","GET /users/{username}/gpg_keys","GET /users/{username}/keys","GET /users/{username}/orgs","GET /users/{username}/packages","GET /users/{username}/projects","GET /users/{username}/received_events","GET /users/{username}/received_events/public","GET /users/{username}/repos","GET /users/{username}/social_accounts","GET /users/{username}/ssh_signing_keys","GET /users/{username}/starred","GET /users/{username}/subscriptions"];function isPaginatingEndpoint(Wt){if(typeof Wt==="string"){return sn.includes(Wt)}else{return false}}function paginateRest(Wt){return{paginate:Object.assign(paginate.bind(null,Wt),{iterator:iterator.bind(null,Wt)})}}paginateRest.VERSION=rn;0&&0},6966:Wt=>{"use strict";var Pt=Object.defineProperty;var en=Object.getOwnPropertyDescriptor;var tn=Object.getOwnPropertyNames;var nn=Object.prototype.hasOwnProperty;var __export=(Wt,en)=>{for(var tn in en)Pt(Wt,tn,{get:en[tn],enumerable:true})};var __copyProps=(Wt,an,rn,In)=>{if(an&&typeof an==="object"||typeof an==="function"){for(let sn of tn(an))if(!nn.call(Wt,sn)&&sn!==rn)Pt(Wt,sn,{get:()=>an[sn],enumerable:!(In=en(an,sn))||In.enumerable})}return Wt};var __toCommonJS=Wt=>__copyProps(Pt({},"__esModule",{value:true}),Wt);var an={};__export(an,{requestLog:()=>requestLog});Wt.exports=__toCommonJS(an);var rn="4.0.1";function requestLog(Wt){Wt.hook.wrap("request",((Pt,en)=>{Wt.log.debug("request",en);const tn=Date.now();const nn=Wt.request.endpoint.parse(en);const an=nn.url.replace(en.baseUrl,"");return Pt(en).then((Pt=>{Wt.log.info(`${nn.method} ${an} - ${Pt.status} in ${Date.now()-tn}ms`);return Pt})).catch((Pt=>{Wt.log.info(`${nn.method} ${an} - ${Pt.status} in ${Date.now()-tn}ms`);throw Pt}))}))}requestLog.VERSION=rn;0&&0},84935:Wt=>{"use strict";var Pt=Object.defineProperty;var en=Object.getOwnPropertyDescriptor;var tn=Object.getOwnPropertyNames;var nn=Object.prototype.hasOwnProperty;var __export=(Wt,en)=>{for(var tn in en)Pt(Wt,tn,{get:en[tn],enumerable:true})};var __copyProps=(Wt,an,rn,In)=>{if(an&&typeof an==="object"||typeof an==="function"){for(let sn of tn(an))if(!nn.call(Wt,sn)&&sn!==rn)Pt(Wt,sn,{get:()=>an[sn],enumerable:!(In=en(an,sn))||In.enumerable})}return Wt};var __toCommonJS=Wt=>__copyProps(Pt({},"__esModule",{value:true}),Wt);var an={};__export(an,{legacyRestEndpointMethods:()=>legacyRestEndpointMethods,restEndpointMethods:()=>restEndpointMethods});Wt.exports=__toCommonJS(an);var rn="13.2.2";var In={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repos/{owner}/{repo}/environments/{environment_name}/variables"],createOrUpdateEnvironmentSecret:["PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"],usageMetricsForEnterprise:["GET /enterprises/{enterprise}/copilot/usage"],usageMetricsForOrg:["GET /orgs/{org}/copilot/usage"],usageMetricsForTeam:["GET /orgs/{org}/team/{team_slug}/copilot/usage"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}"],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createCustomOrganizationRole:["POST /orgs/{org}/organization-roles"],createInvitation:["POST /orgs/{org}/invitations"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteCustomOrganizationRole:["DELETE /orgs/{org}/organization-roles/{role_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}"],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers"],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],patchCustomOrganizationRole:["PATCH /orgs/{org}/organization-roles/{role_id}"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}"],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}"],createCard:["POST /projects/columns/{column_id}/cards"],createColumn:["POST /projects/{project_id}/columns"],createForAuthenticatedUser:["POST /user/projects"],createForOrg:["POST /orgs/{org}/projects"],createForRepo:["POST /repos/{owner}/{repo}/projects"],delete:["DELETE /projects/{project_id}"],deleteCard:["DELETE /projects/columns/cards/{card_id}"],deleteColumn:["DELETE /projects/columns/{column_id}"],get:["GET /projects/{project_id}"],getCard:["GET /projects/columns/cards/{card_id}"],getColumn:["GET /projects/columns/{column_id}"],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission"],listCards:["GET /projects/columns/{column_id}/cards"],listCollaborators:["GET /projects/{project_id}/collaborators"],listColumns:["GET /projects/{project_id}/columns"],listForOrg:["GET /orgs/{org}/projects"],listForRepo:["GET /repos/{owner}/{repo}/projects"],listForUser:["GET /users/{username}/projects"],moveCard:["POST /projects/columns/cards/{card_id}/moves"],moveColumn:["POST /projects/columns/{column_id}/moves"],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}"],update:["PATCH /projects/{project_id}"],updateCard:["PATCH /projects/columns/cards/{card_id}"],updateColumn:["PATCH /projects/columns/{column_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkPrivateVulnerabilityReporting:["GET /repos/{owner}/{repo}/private-vulnerability-reporting"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createTagProtection:["POST /repos/{owner}/{repo}/tags/protection"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteTagProtection:["DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTagProtection:["GET /repos/{owner}/{repo}/tags/protection"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}};var sn=In;var on=new Map;for(const[Wt,Pt]of Object.entries(sn)){for(const[en,tn]of Object.entries(Pt)){const[Pt,nn,an]=tn;const[rn,In]=Pt.split(/ /);const sn=Object.assign({method:rn,url:In},nn);if(!on.has(Wt)){on.set(Wt,new Map)}on.get(Wt).set(en,{scope:Wt,methodName:en,endpointDefaults:sn,decorations:an})}}var cn={has({scope:Wt},Pt){return on.get(Wt).has(Pt)},getOwnPropertyDescriptor(Wt,Pt){return{value:this.get(Wt,Pt),configurable:true,writable:true,enumerable:true}},defineProperty(Wt,Pt,en){Object.defineProperty(Wt.cache,Pt,en);return true},deleteProperty(Wt,Pt){delete Wt.cache[Pt];return true},ownKeys({scope:Wt}){return[...on.get(Wt).keys()]},set(Wt,Pt,en){return Wt.cache[Pt]=en},get({octokit:Wt,scope:Pt,cache:en},tn){if(en[tn]){return en[tn]}const nn=on.get(Pt).get(tn);if(!nn){return void 0}const{endpointDefaults:an,decorations:rn}=nn;if(rn){en[tn]=decorate(Wt,Pt,tn,an,rn)}else{en[tn]=Wt.request.defaults(an)}return en[tn]}};function endpointsToMethods(Wt){const Pt={};for(const en of on.keys()){Pt[en]=new Proxy({octokit:Wt,scope:en,cache:{}},cn)}return Pt}function decorate(Wt,Pt,en,tn,nn){const an=Wt.request.defaults(tn);function withDecorations(...tn){let rn=an.endpoint.merge(...tn);if(nn.mapToData){rn=Object.assign({},rn,{data:rn[nn.mapToData],[nn.mapToData]:void 0});return an(rn)}if(nn.renamed){const[tn,an]=nn.renamed;Wt.log.warn(`octokit.${Pt}.${en}() has been renamed to octokit.${tn}.${an}()`)}if(nn.deprecated){Wt.log.warn(nn.deprecated)}if(nn.renamedParameters){const rn=an.endpoint.merge(...tn);for(const[tn,an]of Object.entries(nn.renamedParameters)){if(tn in rn){Wt.log.warn(`"${tn}" parameter is deprecated for "octokit.${Pt}.${en}()". Use "${an}" instead`);if(!(an in rn)){rn[an]=rn[tn]}delete rn[tn]}}return an(rn)}return an(...tn)}return Object.assign(withDecorations,an)}function restEndpointMethods(Wt){const Pt=endpointsToMethods(Wt);return{rest:Pt}}restEndpointMethods.VERSION=rn;function legacyRestEndpointMethods(Wt){const Pt=endpointsToMethods(Wt);return{...Pt,rest:Pt}}legacyRestEndpointMethods.VERSION=rn;0&&0},33450:(Wt,Pt,en)=>{"use strict";var tn=Object.create;var nn=Object.defineProperty;var an=Object.getOwnPropertyDescriptor;var rn=Object.getOwnPropertyNames;var In=Object.getPrototypeOf;var sn=Object.prototype.hasOwnProperty;var __export=(Wt,Pt)=>{for(var en in Pt)nn(Wt,en,{get:Pt[en],enumerable:true})};var __copyProps=(Wt,Pt,en,tn)=>{if(Pt&&typeof Pt==="object"||typeof Pt==="function"){for(let In of rn(Pt))if(!sn.call(Wt,In)&&In!==en)nn(Wt,In,{get:()=>Pt[In],enumerable:!(tn=an(Pt,In))||tn.enumerable})}return Wt};var __toESM=(Wt,Pt,en)=>(en=Wt!=null?tn(In(Wt)):{},__copyProps(Pt||!Wt||!Wt.__esModule?nn(en,"default",{value:Wt,enumerable:true}):en,Wt));var __toCommonJS=Wt=>__copyProps(nn({},"__esModule",{value:true}),Wt);var on={};__export(on,{VERSION:()=>pn,retry:()=>retry});Wt.exports=__toCommonJS(on);var cn=en(61897);async function errorRequest(Wt,Pt,en,tn){if(!en.request||!en.request.request){throw en}if(en.status>=400&&!Wt.doNotRetry.includes(en.status)){const nn=tn.request.retries!=null?tn.request.retries:Wt.retries;const an=Math.pow((tn.request.retryCount||0)+1,2);throw Pt.retry.retryRequest(en,nn,an)}throw en}var dn=__toESM(en(63251));var un=en(93708);async function wrapRequest(Wt,Pt,en,tn){const nn=new dn.default;nn.on("failed",(function(Pt,en){const nn=~~Pt.request.request.retries;const an=~~Pt.request.request.retryAfter;tn.request.retryCount=en.retryCount+1;if(nn>en.retryCount){return an*Wt.retryAfterBaseValue}}));return nn.schedule(requestWithGraphqlErrorHandling.bind(null,Wt,Pt,en),tn)}async function requestWithGraphqlErrorHandling(Wt,Pt,en,tn){const nn=await en(en,tn);if(nn.data&&nn.data.errors&&/Something went wrong while executing your query/.test(nn.data.errors[0].message)){const en=new un.RequestError(nn.data.errors[0].message,500,{request:tn,response:nn});return errorRequest(Wt,Pt,en,tn)}return nn}var pn="6.0.1";function retry(Wt,Pt){const en=Object.assign({enabled:true,retryAfterBaseValue:1e3,doNotRetry:[400,401,403,404,422,451],retries:3},Pt.retry);if(en.enabled){Wt.hook.error("request",errorRequest.bind(null,en,Wt));Wt.hook.wrap("request",wrapRequest.bind(null,en,Wt))}return{retry:{retryRequest:(Wt,Pt,en)=>{Wt.request.request=Object.assign({},Wt.request.request,{retries:Pt,retryAfter:en});return Wt}}}}retry.VERSION=pn;0&&0},93708:(Wt,Pt,en)=>{"use strict";var tn=Object.create;var nn=Object.defineProperty;var an=Object.getOwnPropertyDescriptor;var rn=Object.getOwnPropertyNames;var In=Object.getPrototypeOf;var sn=Object.prototype.hasOwnProperty;var __export=(Wt,Pt)=>{for(var en in Pt)nn(Wt,en,{get:Pt[en],enumerable:true})};var __copyProps=(Wt,Pt,en,tn)=>{if(Pt&&typeof Pt==="object"||typeof Pt==="function"){for(let In of rn(Pt))if(!sn.call(Wt,In)&&In!==en)nn(Wt,In,{get:()=>Pt[In],enumerable:!(tn=an(Pt,In))||tn.enumerable})}return Wt};var __toESM=(Wt,Pt,en)=>(en=Wt!=null?tn(In(Wt)):{},__copyProps(Pt||!Wt||!Wt.__esModule?nn(en,"default",{value:Wt,enumerable:true}):en,Wt));var __toCommonJS=Wt=>__copyProps(nn({},"__esModule",{value:true}),Wt);var on={};__export(on,{RequestError:()=>mn});Wt.exports=__toCommonJS(on);var cn=en(14150);var dn=__toESM(en(55560));var un=(0,dn.default)((Wt=>console.warn(Wt)));var pn=(0,dn.default)((Wt=>console.warn(Wt)));var mn=class extends Error{constructor(Wt,Pt,en){super(Wt);if(Error.captureStackTrace){Error.captureStackTrace(this,this.constructor)}this.name="HttpError";this.status=Pt;let tn;if("headers"in en&&typeof en.headers!=="undefined"){tn=en.headers}if("response"in en){this.response=en.response;tn=en.response.headers}const nn=Object.assign({},en.request);if(en.request.headers.authorization){nn.headers=Object.assign({},en.request.headers,{authorization:en.request.headers.authorization.replace(/ .*$/," [REDACTED]")})}nn.url=nn.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]");this.request=nn;Object.defineProperty(this,"code",{get(){un(new cn.Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`."));return Pt}});Object.defineProperty(this,"headers",{get(){pn(new cn.Deprecation("[@octokit/request-error] `error.headers` is deprecated, use `error.response.headers`."));return tn||{}}})}};0&&0},66255:(Wt,Pt,en)=>{"use strict";var tn=Object.defineProperty;var nn=Object.getOwnPropertyDescriptor;var an=Object.getOwnPropertyNames;var rn=Object.prototype.hasOwnProperty;var __export=(Wt,Pt)=>{for(var en in Pt)tn(Wt,en,{get:Pt[en],enumerable:true})};var __copyProps=(Wt,Pt,en,In)=>{if(Pt&&typeof Pt==="object"||typeof Pt==="function"){for(let sn of an(Pt))if(!rn.call(Wt,sn)&&sn!==en)tn(Wt,sn,{get:()=>Pt[sn],enumerable:!(In=nn(Pt,sn))||In.enumerable})}return Wt};var __toCommonJS=Wt=>__copyProps(tn({},"__esModule",{value:true}),Wt);var In={};__export(In,{request:()=>un});Wt.exports=__toCommonJS(In);var sn=en(54471);var on=en(33843);var cn="8.4.0";function isPlainObject(Wt){if(typeof Wt!=="object"||Wt===null)return false;if(Object.prototype.toString.call(Wt)!=="[object Object]")return false;const Pt=Object.getPrototypeOf(Wt);if(Pt===null)return true;const en=Object.prototype.hasOwnProperty.call(Pt,"constructor")&&Pt.constructor;return typeof en==="function"&&en instanceof en&&Function.prototype.call(en)===Function.prototype.call(Wt)}var dn=en(93708);function getBufferResponse(Wt){return Wt.arrayBuffer()}function fetchWrapper(Wt){var Pt,en,tn,nn;const an=Wt.request&&Wt.request.log?Wt.request.log:console;const rn=((Pt=Wt.request)==null?void 0:Pt.parseSuccessResponseBody)!==false;if(isPlainObject(Wt.body)||Array.isArray(Wt.body)){Wt.body=JSON.stringify(Wt.body)}let In={};let sn;let on;let{fetch:cn}=globalThis;if((en=Wt.request)==null?void 0:en.fetch){cn=Wt.request.fetch}if(!cn){throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing")}return cn(Wt.url,{method:Wt.method,body:Wt.body,redirect:(tn=Wt.request)==null?void 0:tn.redirect,headers:Wt.headers,signal:(nn=Wt.request)==null?void 0:nn.signal,...Wt.body&&{duplex:"half"}}).then((async Pt=>{on=Pt.url;sn=Pt.status;for(const Wt of Pt.headers){In[Wt[0]]=Wt[1]}if("deprecation"in In){const Pt=In.link&&In.link.match(/<([^>]+)>; rel="deprecation"/);const en=Pt&&Pt.pop();an.warn(`[@octokit/request] "${Wt.method} ${Wt.url}" is deprecated. It is scheduled to be removed on ${In.sunset}${en?`. See ${en}`:""}`)}if(sn===204||sn===205){return}if(Wt.method==="HEAD"){if(sn<400){return}throw new dn.RequestError(Pt.statusText,sn,{response:{url:on,status:sn,headers:In,data:void 0},request:Wt})}if(sn===304){throw new dn.RequestError("Not modified",sn,{response:{url:on,status:sn,headers:In,data:await getResponseData(Pt)},request:Wt})}if(sn>=400){const en=await getResponseData(Pt);const tn=new dn.RequestError(toErrorMessage(en),sn,{response:{url:on,status:sn,headers:In,data:en},request:Wt});throw tn}return rn?await getResponseData(Pt):Pt.body})).then((Wt=>({status:sn,url:on,headers:In,data:Wt}))).catch((Pt=>{if(Pt instanceof dn.RequestError)throw Pt;else if(Pt.name==="AbortError")throw Pt;let en=Pt.message;if(Pt.name==="TypeError"&&"cause"in Pt){if(Pt.cause instanceof Error){en=Pt.cause.message}else if(typeof Pt.cause==="string"){en=Pt.cause}}throw new dn.RequestError(en,500,{request:Wt})}))}async function getResponseData(Wt){const Pt=Wt.headers.get("content-type");if(/application\/json/.test(Pt)){return Wt.json().catch((()=>Wt.text())).catch((()=>""))}if(!Pt||/^text\/|charset=utf-8$/.test(Pt)){return Wt.text()}return getBufferResponse(Wt)}function toErrorMessage(Wt){if(typeof Wt==="string")return Wt;let Pt;if("documentation_url"in Wt){Pt=` - ${Wt.documentation_url}`}else{Pt=""}if("message"in Wt){if(Array.isArray(Wt.errors)){return`${Wt.message}: ${Wt.errors.map(JSON.stringify).join(", ")}${Pt}`}return`${Wt.message}${Pt}`}return`Unknown error: ${JSON.stringify(Wt)}`}function withDefaults(Wt,Pt){const en=Wt.defaults(Pt);const newApi=function(Wt,Pt){const tn=en.merge(Wt,Pt);if(!tn.request||!tn.request.hook){return fetchWrapper(en.parse(tn))}const request2=(Wt,Pt)=>fetchWrapper(en.parse(en.merge(Wt,Pt)));Object.assign(request2,{endpoint:en,defaults:withDefaults.bind(null,en)});return tn.request.hook(request2,tn)};return Object.assign(newApi,{endpoint:en,defaults:withDefaults.bind(null,en)})}var un=withDefaults(sn.endpoint,{headers:{"user-agent":`octokit-request.js/${cn} ${(0,on.getUserAgent)()}`}});0&&0},65772:(Wt,Pt,en)=>{"use strict";var tn=Object.defineProperty;var nn=Object.getOwnPropertyDescriptor;var an=Object.getOwnPropertyNames;var rn=Object.prototype.hasOwnProperty;var __export=(Wt,Pt)=>{for(var en in Pt)tn(Wt,en,{get:Pt[en],enumerable:true})};var __copyProps=(Wt,Pt,en,In)=>{if(Pt&&typeof Pt==="object"||typeof Pt==="function"){for(let sn of an(Pt))if(!rn.call(Wt,sn)&&sn!==en)tn(Wt,sn,{get:()=>Pt[sn],enumerable:!(In=nn(Pt,sn))||In.enumerable})}return Wt};var __toCommonJS=Wt=>__copyProps(tn({},"__esModule",{value:true}),Wt);var In={};__export(In,{Octokit:()=>pn});Wt.exports=__toCommonJS(In);var sn=en(61897);var on=en(6966);var cn=en(38082);var dn=en(84935);var un="20.1.1";var pn=sn.Octokit.plugin(on.requestLog,dn.legacyRestEndpointMethods,cn.paginateRest).defaults({userAgent:`octokit-rest.js/${un}`});0&&0},45225:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TypeCompiler=Pt.Policy=Pt.TypeCompilerTypeGuardError=Pt.TypeCompilerUnknownTypeError=Pt.TypeCheck=void 0;const tn=en(90023);const nn=en(4672);const an=en(45918);const rn=en(94526);const In=en(75743);const sn=en(73849);const on=en(48121);const cn=en(97759);const dn=en(30658);const un=en(1409);const pn=en(22346);const mn=en(19522);const bn=en(20109);class TypeCheck{constructor(Wt,Pt,en,nn){this.schema=Wt;this.references=Pt;this.checkFunc=en;this.code=nn;this.hasTransform=(0,tn.HasTransform)(Wt,Pt)}Code(){return this.code}Errors(Wt){return(0,nn.Errors)(this.schema,this.references,Wt)}Check(Wt){return this.checkFunc(Wt)}Decode(Wt){if(!this.checkFunc(Wt))throw new tn.TransformDecodeCheckError(this.schema,Wt,this.Errors(Wt).First());return this.hasTransform?(0,tn.TransformDecode)(this.schema,this.references,Wt):Wt}Encode(Wt){const Pt=this.hasTransform?(0,tn.TransformEncode)(this.schema,this.references,Wt):Wt;if(!this.checkFunc(Pt))throw new tn.TransformEncodeCheckError(this.schema,Wt,this.Errors(Wt).First());return Pt}}Pt.TypeCheck=TypeCheck;var Gn;(function(Wt){function DollarSign(Wt){return Wt===36}Wt.DollarSign=DollarSign;function IsUnderscore(Wt){return Wt===95}Wt.IsUnderscore=IsUnderscore;function IsAlpha(Wt){return Wt>=65&&Wt<=90||Wt>=97&&Wt<=122}Wt.IsAlpha=IsAlpha;function IsNumeric(Wt){return Wt>=48&&Wt<=57}Wt.IsNumeric=IsNumeric})(Gn||(Gn={}));var hn;(function(Wt){function IsFirstCharacterNumeric(Wt){if(Wt.length===0)return false;return Gn.IsNumeric(Wt.charCodeAt(0))}function IsAccessor(Wt){if(IsFirstCharacterNumeric(Wt))return false;for(let Pt=0;Pt= ${Wt.minItems}`;const an=CreateExpression(Wt.items,Pt,"value");yield`${en}.every((${tn}) => ${an})`;if((0,bn.IsSchema)(Wt.contains)||(0,mn.IsNumber)(Wt.minContains)||(0,mn.IsNumber)(Wt.maxContains)){const an=(0,bn.IsSchema)(Wt.contains)?Wt.contains:(0,pn.Never)();const rn=CreateExpression(an,Pt,"value");const In=(0,mn.IsNumber)(Wt.minContains)?[`(count >= ${Wt.minContains})`]:[];const sn=(0,mn.IsNumber)(Wt.maxContains)?[`(count <= ${Wt.maxContains})`]:[];const on=`const count = value.reduce((${nn}, ${tn}) => ${rn} ? acc + 1 : acc, 0)`;const cn=[`(count > 0)`,...In,...sn].join(" && ");yield`((${tn}) => { ${on}; return ${cn}})(${en})`}if(Wt.uniqueItems===true){const Wt=`const hashed = hash(element); if(set.has(hashed)) { return false } else { set.add(hashed) } } return true`;const Pt=`const set = new Set(); for(const element of value) { ${Wt} }`;yield`((${tn}) => { ${Pt} )(${en})`}}function*FromAsyncIterator(Wt,Pt,en){yield`(typeof value === 'object' && Symbol.asyncIterator in ${en})`}function*FromBigInt(Wt,Pt,en){yield`(typeof ${en} === 'bigint')`;if((0,mn.IsBigInt)(Wt.exclusiveMaximum))yield`${en} < BigInt(${Wt.exclusiveMaximum})`;if((0,mn.IsBigInt)(Wt.exclusiveMinimum))yield`${en} > BigInt(${Wt.exclusiveMinimum})`;if((0,mn.IsBigInt)(Wt.maximum))yield`${en} <= BigInt(${Wt.maximum})`;if((0,mn.IsBigInt)(Wt.minimum))yield`${en} >= BigInt(${Wt.minimum})`;if((0,mn.IsBigInt)(Wt.multipleOf))yield`(${en} % BigInt(${Wt.multipleOf})) === 0`}function*FromBoolean(Wt,Pt,en){yield`(typeof ${en} === 'boolean')`}function*FromConstructor(Wt,Pt,en){yield*Visit(Wt.returns,Pt,`${en}.prototype`)}function*FromDate(Wt,Pt,en){yield`(${en} instanceof Date) && Number.isFinite(${en}.getTime())`;if((0,mn.IsNumber)(Wt.exclusiveMaximumTimestamp))yield`${en}.getTime() < ${Wt.exclusiveMaximumTimestamp}`;if((0,mn.IsNumber)(Wt.exclusiveMinimumTimestamp))yield`${en}.getTime() > ${Wt.exclusiveMinimumTimestamp}`;if((0,mn.IsNumber)(Wt.maximumTimestamp))yield`${en}.getTime() <= ${Wt.maximumTimestamp}`;if((0,mn.IsNumber)(Wt.minimumTimestamp))yield`${en}.getTime() >= ${Wt.minimumTimestamp}`;if((0,mn.IsNumber)(Wt.multipleOfTimestamp))yield`(${en}.getTime() % ${Wt.multipleOfTimestamp}) === 0`}function*FromFunction(Wt,Pt,en){yield`(typeof ${en} === 'function')`}function*FromInteger(Wt,Pt,en){yield`(typeof ${en} === 'number' && Number.isInteger(${en}))`;if((0,mn.IsNumber)(Wt.exclusiveMaximum))yield`${en} < ${Wt.exclusiveMaximum}`;if((0,mn.IsNumber)(Wt.exclusiveMinimum))yield`${en} > ${Wt.exclusiveMinimum}`;if((0,mn.IsNumber)(Wt.maximum))yield`${en} <= ${Wt.maximum}`;if((0,mn.IsNumber)(Wt.minimum))yield`${en} >= ${Wt.minimum}`;if((0,mn.IsNumber)(Wt.multipleOf))yield`(${en} % ${Wt.multipleOf}) === 0`}function*FromIntersect(Wt,Pt,en){const tn=Wt.allOf.map((Wt=>CreateExpression(Wt,Pt,en))).join(" && ");if(Wt.unevaluatedProperties===false){const Pt=CreateVariable(`${new RegExp((0,dn.KeyOfPattern)(Wt))};`);const nn=`Object.getOwnPropertyNames(${en}).every(key => ${Pt}.test(key))`;yield`(${tn} && ${nn})`}else if((0,bn.IsSchema)(Wt.unevaluatedProperties)){const nn=CreateVariable(`${new RegExp((0,dn.KeyOfPattern)(Wt))};`);const an=`Object.getOwnPropertyNames(${en}).every(key => ${nn}.test(key) || ${CreateExpression(Wt.unevaluatedProperties,Pt,`${en}[key]`)})`;yield`(${tn} && ${an})`}else{yield`(${tn})`}}function*FromIterator(Wt,Pt,en){yield`(typeof value === 'object' && Symbol.iterator in ${en})`}function*FromLiteral(Wt,Pt,en){if(typeof Wt.const==="number"||typeof Wt.const==="boolean"){yield`(${en} === ${Wt.const})`}else{yield`(${en} === '${An.Escape(Wt.const)}')`}}function*FromNever(Wt,Pt,en){yield`false`}function*FromNot(Wt,Pt,en){const tn=CreateExpression(Wt.not,Pt,en);yield`(!${tn})`}function*FromNull(Wt,Pt,en){yield`(${en} === null)`}function*FromNumber(Wt,Pt,en){yield Wn.IsNumberLike(en);if((0,mn.IsNumber)(Wt.exclusiveMaximum))yield`${en} < ${Wt.exclusiveMaximum}`;if((0,mn.IsNumber)(Wt.exclusiveMinimum))yield`${en} > ${Wt.exclusiveMinimum}`;if((0,mn.IsNumber)(Wt.maximum))yield`${en} <= ${Wt.maximum}`;if((0,mn.IsNumber)(Wt.minimum))yield`${en} >= ${Wt.minimum}`;if((0,mn.IsNumber)(Wt.multipleOf))yield`(${en} % ${Wt.multipleOf}) === 0`}function*FromObject(Wt,Pt,en){yield Wn.IsObjectLike(en);if((0,mn.IsNumber)(Wt.minProperties))yield`Object.getOwnPropertyNames(${en}).length >= ${Wt.minProperties}`;if((0,mn.IsNumber)(Wt.maxProperties))yield`Object.getOwnPropertyNames(${en}).length <= ${Wt.maxProperties}`;const tn=Object.getOwnPropertyNames(Wt.properties);for(const nn of tn){const tn=hn.Encode(en,nn);const an=Wt.properties[nn];if(Wt.required&&Wt.required.includes(nn)){yield*Visit(an,Pt,tn);if((0,un.ExtendsUndefinedCheck)(an)||IsAnyOrUnknown(an))yield`('${nn}' in ${en})`}else{const Wt=CreateExpression(an,Pt,tn);yield Wn.IsExactOptionalProperty(en,nn,Wt)}}if(Wt.additionalProperties===false){if(Wt.required&&Wt.required.length===tn.length){yield`Object.getOwnPropertyNames(${en}).length === ${tn.length}`}else{const Wt=`[${tn.map((Wt=>`'${Wt}'`)).join(", ")}]`;yield`Object.getOwnPropertyNames(${en}).every(key => ${Wt}.includes(key))`}}if(typeof Wt.additionalProperties==="object"){const nn=CreateExpression(Wt.additionalProperties,Pt,`${en}[key]`);const an=`[${tn.map((Wt=>`'${Wt}'`)).join(", ")}]`;yield`(Object.getOwnPropertyNames(${en}).every(key => ${an}.includes(key) || ${nn}))`}}function*FromPromise(Wt,Pt,en){yield`(typeof value === 'object' && typeof ${en}.then === 'function')`}function*FromRecord(Wt,Pt,en){yield Wn.IsRecordLike(en);if((0,mn.IsNumber)(Wt.minProperties))yield`Object.getOwnPropertyNames(${en}).length >= ${Wt.minProperties}`;if((0,mn.IsNumber)(Wt.maxProperties))yield`Object.getOwnPropertyNames(${en}).length <= ${Wt.maxProperties}`;const[tn,nn]=Object.entries(Wt.patternProperties)[0];const an=CreateVariable(`${new RegExp(tn)}`);const rn=CreateExpression(nn,Pt,"value");const In=(0,bn.IsSchema)(Wt.additionalProperties)?CreateExpression(Wt.additionalProperties,Pt,en):Wt.additionalProperties===false?"false":"true";const sn=`(${an}.test(key) ? ${rn} : ${In})`;yield`(Object.entries(${en}).every(([key, value]) => ${sn}))`}function*FromRef(Wt,en,tn){const nn=(0,In.Deref)(Wt,en);if(Pt.functions.has(Wt.$ref))return yield`${CreateFunctionName(Wt.$ref)}(${tn})`;yield*Visit(nn,en,tn)}function*FromRegExp(Wt,Pt,en){const tn=CreateVariable(`${new RegExp(Wt.source,Wt.flags)};`);yield`(typeof ${en} === 'string')`;if((0,mn.IsNumber)(Wt.maxLength))yield`${en}.length <= ${Wt.maxLength}`;if((0,mn.IsNumber)(Wt.minLength))yield`${en}.length >= ${Wt.minLength}`;yield`${tn}.test(${en})`}function*FromString(Wt,Pt,en){yield`(typeof ${en} === 'string')`;if((0,mn.IsNumber)(Wt.maxLength))yield`${en}.length <= ${Wt.maxLength}`;if((0,mn.IsNumber)(Wt.minLength))yield`${en}.length >= ${Wt.minLength}`;if(Wt.pattern!==undefined){const Pt=CreateVariable(`${new RegExp(Wt.pattern)};`);yield`${Pt}.test(${en})`}if(Wt.format!==undefined){yield`format('${Wt.format}', ${en})`}}function*FromSymbol(Wt,Pt,en){yield`(typeof ${en} === 'symbol')`}function*FromTemplateLiteral(Wt,Pt,en){yield`(typeof ${en} === 'string')`;const tn=CreateVariable(`${new RegExp(Wt.pattern)};`);yield`${tn}.test(${en})`}function*FromThis(Wt,Pt,en){yield`${CreateFunctionName(Wt.$ref)}(${en})`}function*FromTuple(Wt,Pt,en){yield`Array.isArray(${en})`;if(Wt.items===undefined)return yield`${en}.length === 0`;yield`(${en}.length === ${Wt.maxItems})`;for(let tn=0;tnCreateExpression(Wt,Pt,en)));yield`(${tn.join(" || ")})`}function*FromUint8Array(Wt,Pt,en){yield`${en} instanceof Uint8Array`;if((0,mn.IsNumber)(Wt.maxByteLength))yield`(${en}.length <= ${Wt.maxByteLength})`;if((0,mn.IsNumber)(Wt.minByteLength))yield`(${en}.length >= ${Wt.minByteLength})`}function*FromUnknown(Wt,Pt,en){yield"true"}function*FromVoid(Wt,Pt,en){yield Wn.IsVoidLike(en)}function*FromKind(Wt,en,tn){const nn=Pt.instances.size;Pt.instances.set(nn,Wt);yield`kind('${Wt[on.Kind]}', ${nn}, ${tn})`}function*Visit(Wt,en,tn,nn=true){const an=(0,mn.IsString)(Wt.$id)?[...en,Wt]:en;const rn=Wt;if(nn&&(0,mn.IsString)(Wt.$id)){const nn=CreateFunctionName(Wt.$id);if(Pt.functions.has(nn)){return yield`${nn}(${tn})`}else{const an=CreateFunction(nn,Wt,en,"value",false);Pt.functions.set(nn,an);return yield`${nn}(${tn})`}}switch(rn[on.Kind]){case"Any":return yield*FromAny(rn,an,tn);case"Array":return yield*FromArray(rn,an,tn);case"AsyncIterator":return yield*FromAsyncIterator(rn,an,tn);case"BigInt":return yield*FromBigInt(rn,an,tn);case"Boolean":return yield*FromBoolean(rn,an,tn);case"Constructor":return yield*FromConstructor(rn,an,tn);case"Date":return yield*FromDate(rn,an,tn);case"Function":return yield*FromFunction(rn,an,tn);case"Integer":return yield*FromInteger(rn,an,tn);case"Intersect":return yield*FromIntersect(rn,an,tn);case"Iterator":return yield*FromIterator(rn,an,tn);case"Literal":return yield*FromLiteral(rn,an,tn);case"Never":return yield*FromNever(rn,an,tn);case"Not":return yield*FromNot(rn,an,tn);case"Null":return yield*FromNull(rn,an,tn);case"Number":return yield*FromNumber(rn,an,tn);case"Object":return yield*FromObject(rn,an,tn);case"Promise":return yield*FromPromise(rn,an,tn);case"Record":return yield*FromRecord(rn,an,tn);case"Ref":return yield*FromRef(rn,an,tn);case"RegExp":return yield*FromRegExp(rn,an,tn);case"String":return yield*FromString(rn,an,tn);case"Symbol":return yield*FromSymbol(rn,an,tn);case"TemplateLiteral":return yield*FromTemplateLiteral(rn,an,tn);case"This":return yield*FromThis(rn,an,tn);case"Tuple":return yield*FromTuple(rn,an,tn);case"Undefined":return yield*FromUndefined(rn,an,tn);case"Union":return yield*FromUnion(rn,an,tn);case"Uint8Array":return yield*FromUint8Array(rn,an,tn);case"Unknown":return yield*FromUnknown(rn,an,tn);case"Void":return yield*FromVoid(rn,an,tn);default:if(!cn.TypeRegistry.Has(rn[on.Kind]))throw new TypeCompilerUnknownTypeError(Wt);return yield*FromKind(rn,an,tn)}}const Pt={language:"javascript",functions:new Map,variables:new Map,instances:new Map};function CreateExpression(Wt,Pt,en,tn=true){return`(${[...Visit(Wt,Pt,en,tn)].join(" && ")})`}function CreateFunctionName(Wt){return`check_${Zn.Encode(Wt)}`}function CreateVariable(Wt){const en=`local_${Pt.variables.size}`;Pt.variables.set(en,`const ${en} = ${Wt}`);return en}function CreateFunction(Wt,Pt,en,tn,nn=true){const[an,rn]=["\n",Wt=>"".padStart(Wt," ")];const In=CreateParameter("value","any");const sn=CreateReturns("boolean");const on=[...Visit(Pt,en,tn,nn)].map((Wt=>`${rn(4)}${Wt}`)).join(` &&${an}`);return`function ${Wt}(${In})${sn} {${an}${rn(2)}return (${an}${on}${an}${rn(2)})\n}`}function CreateParameter(Wt,en){const tn=Pt.language==="typescript"?`: ${en}`:"";return`${Wt}${tn}`}function CreateReturns(Wt){return Pt.language==="typescript"?`: ${Wt}`:""}function Build(Wt,en,tn){const nn=CreateFunction("check",Wt,en,"value");const an=CreateParameter("value","any");const rn=CreateReturns("boolean");const In=[...Pt.functions.values()];const sn=[...Pt.variables.values()];const on=(0,mn.IsString)(Wt.$id)?`return function check(${an})${rn} {\n return ${CreateFunctionName(Wt.$id)}(value)\n}`:`return ${nn}`;return[...sn,...In,on].join("\n")}function Code(...Wt){const en={language:"javascript"};const[tn,nn,an]=Wt.length===2&&(0,mn.IsArray)(Wt[1])?[Wt[0],Wt[1],en]:Wt.length===2&&!(0,mn.IsArray)(Wt[1])?[Wt[0],[],Wt[1]]:Wt.length===3?[Wt[0],Wt[1],Wt[2]]:Wt.length===1?[Wt[0],[],en]:[null,[],en];Pt.language=an.language;Pt.variables.clear();Pt.functions.clear();Pt.instances.clear();if(!(0,bn.IsSchema)(tn))throw new TypeCompilerTypeGuardError(tn);for(const Wt of nn)if(!(0,bn.IsSchema)(Wt))throw new TypeCompilerTypeGuardError(Wt);return Build(tn,nn,an)}Wt.Code=Code;function Compile(Wt,en=[]){const tn=Code(Wt,en,{language:"javascript"});const nn=globalThis.Function("kind","format","hash",tn);const an=new Map(Pt.instances);function typeRegistryFunction(Wt,Pt,en){if(!cn.TypeRegistry.Has(Wt)||!an.has(Pt))return false;const tn=cn.TypeRegistry.Get(Wt);const nn=an.get(Pt);return tn(nn,en)}function formatRegistryFunction(Wt,Pt){if(!cn.FormatRegistry.Has(Wt))return false;const en=cn.FormatRegistry.Get(Wt);return en(Pt)}function hashFunction(Wt){return(0,sn.Hash)(Wt)}const rn=nn(typeRegistryFunction,formatRegistryFunction,hashFunction);return new TypeCheck(Wt,en,rn,tn)}Wt.Compile=Compile})(Nn||(Pt.TypeCompiler=Nn={}))},63706:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});Pt.ValueErrorIterator=Pt.ValueErrorType=void 0;var an=en(4672);Object.defineProperty(Pt,"ValueErrorType",{enumerable:true,get:function(){return an.ValueErrorType}});Object.defineProperty(Pt,"ValueErrorIterator",{enumerable:true,get:function(){return an.ValueErrorIterator}});nn(en(45225),Pt)},19537:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Errors=Pt.ValueErrorIterator=Pt.ValueErrorsUnknownTypeError=Pt.ValueErrorType=void 0;const tn=en(45918);const nn=en(30658);const an=en(97759);const rn=en(1409);const In=en(37746);const sn=en(94526);const on=en(75743);const cn=en(73849);const dn=en(48121);const un=en(22346);const pn=en(19522);var mn;(function(Wt){Wt[Wt["ArrayContains"]=0]="ArrayContains";Wt[Wt["ArrayMaxContains"]=1]="ArrayMaxContains";Wt[Wt["ArrayMaxItems"]=2]="ArrayMaxItems";Wt[Wt["ArrayMinContains"]=3]="ArrayMinContains";Wt[Wt["ArrayMinItems"]=4]="ArrayMinItems";Wt[Wt["ArrayUniqueItems"]=5]="ArrayUniqueItems";Wt[Wt["Array"]=6]="Array";Wt[Wt["AsyncIterator"]=7]="AsyncIterator";Wt[Wt["BigIntExclusiveMaximum"]=8]="BigIntExclusiveMaximum";Wt[Wt["BigIntExclusiveMinimum"]=9]="BigIntExclusiveMinimum";Wt[Wt["BigIntMaximum"]=10]="BigIntMaximum";Wt[Wt["BigIntMinimum"]=11]="BigIntMinimum";Wt[Wt["BigIntMultipleOf"]=12]="BigIntMultipleOf";Wt[Wt["BigInt"]=13]="BigInt";Wt[Wt["Boolean"]=14]="Boolean";Wt[Wt["DateExclusiveMaximumTimestamp"]=15]="DateExclusiveMaximumTimestamp";Wt[Wt["DateExclusiveMinimumTimestamp"]=16]="DateExclusiveMinimumTimestamp";Wt[Wt["DateMaximumTimestamp"]=17]="DateMaximumTimestamp";Wt[Wt["DateMinimumTimestamp"]=18]="DateMinimumTimestamp";Wt[Wt["DateMultipleOfTimestamp"]=19]="DateMultipleOfTimestamp";Wt[Wt["Date"]=20]="Date";Wt[Wt["Function"]=21]="Function";Wt[Wt["IntegerExclusiveMaximum"]=22]="IntegerExclusiveMaximum";Wt[Wt["IntegerExclusiveMinimum"]=23]="IntegerExclusiveMinimum";Wt[Wt["IntegerMaximum"]=24]="IntegerMaximum";Wt[Wt["IntegerMinimum"]=25]="IntegerMinimum";Wt[Wt["IntegerMultipleOf"]=26]="IntegerMultipleOf";Wt[Wt["Integer"]=27]="Integer";Wt[Wt["IntersectUnevaluatedProperties"]=28]="IntersectUnevaluatedProperties";Wt[Wt["Intersect"]=29]="Intersect";Wt[Wt["Iterator"]=30]="Iterator";Wt[Wt["Kind"]=31]="Kind";Wt[Wt["Literal"]=32]="Literal";Wt[Wt["Never"]=33]="Never";Wt[Wt["Not"]=34]="Not";Wt[Wt["Null"]=35]="Null";Wt[Wt["NumberExclusiveMaximum"]=36]="NumberExclusiveMaximum";Wt[Wt["NumberExclusiveMinimum"]=37]="NumberExclusiveMinimum";Wt[Wt["NumberMaximum"]=38]="NumberMaximum";Wt[Wt["NumberMinimum"]=39]="NumberMinimum";Wt[Wt["NumberMultipleOf"]=40]="NumberMultipleOf";Wt[Wt["Number"]=41]="Number";Wt[Wt["ObjectAdditionalProperties"]=42]="ObjectAdditionalProperties";Wt[Wt["ObjectMaxProperties"]=43]="ObjectMaxProperties";Wt[Wt["ObjectMinProperties"]=44]="ObjectMinProperties";Wt[Wt["ObjectRequiredProperty"]=45]="ObjectRequiredProperty";Wt[Wt["Object"]=46]="Object";Wt[Wt["Promise"]=47]="Promise";Wt[Wt["RegExp"]=48]="RegExp";Wt[Wt["StringFormatUnknown"]=49]="StringFormatUnknown";Wt[Wt["StringFormat"]=50]="StringFormat";Wt[Wt["StringMaxLength"]=51]="StringMaxLength";Wt[Wt["StringMinLength"]=52]="StringMinLength";Wt[Wt["StringPattern"]=53]="StringPattern";Wt[Wt["String"]=54]="String";Wt[Wt["Symbol"]=55]="Symbol";Wt[Wt["TupleLength"]=56]="TupleLength";Wt[Wt["Tuple"]=57]="Tuple";Wt[Wt["Uint8ArrayMaxByteLength"]=58]="Uint8ArrayMaxByteLength";Wt[Wt["Uint8ArrayMinByteLength"]=59]="Uint8ArrayMinByteLength";Wt[Wt["Uint8Array"]=60]="Uint8Array";Wt[Wt["Undefined"]=61]="Undefined";Wt[Wt["Union"]=62]="Union";Wt[Wt["Void"]=63]="Void"})(mn||(Pt.ValueErrorType=mn={}));class ValueErrorsUnknownTypeError extends sn.TypeBoxError{constructor(Wt){super("Unknown type");this.schema=Wt}}Pt.ValueErrorsUnknownTypeError=ValueErrorsUnknownTypeError;function EscapeKey(Wt){return Wt.replace(/~/g,"~0").replace(/\//g,"~1")}function IsDefined(Wt){return Wt!==undefined}class ValueErrorIterator{constructor(Wt){this.iterator=Wt}[Symbol.iterator](){return this.iterator}First(){const Wt=this.iterator.next();return Wt.done?undefined:Wt.value}}Pt.ValueErrorIterator=ValueErrorIterator;function Create(Wt,Pt,en,tn){return{type:Wt,schema:Pt,path:en,value:tn,message:(0,In.GetErrorFunction)()({errorType:Wt,path:en,schema:Pt,value:tn})}}function*FromAny(Wt,Pt,en,tn){}function*FromArray(Wt,Pt,en,tn){if(!(0,pn.IsArray)(tn)){return yield Create(mn.Array,Wt,en,tn)}if(IsDefined(Wt.minItems)&&!(tn.length>=Wt.minItems)){yield Create(mn.ArrayMinItems,Wt,en,tn)}if(IsDefined(Wt.maxItems)&&!(tn.length<=Wt.maxItems)){yield Create(mn.ArrayMaxItems,Wt,en,tn)}for(let nn=0;nnVisit(nn,Pt,`${en}${an}`,tn).next().done===true?Wt+1:Wt),0);if(an===0){yield Create(mn.ArrayContains,Wt,en,tn)}if((0,pn.IsNumber)(Wt.minContains)&&anWt.maxContains){yield Create(mn.ArrayMaxContains,Wt,en,tn)}}function*FromAsyncIterator(Wt,Pt,en,tn){if(!(0,pn.IsAsyncIterator)(tn))yield Create(mn.AsyncIterator,Wt,en,tn)}function*FromBigInt(Wt,Pt,en,tn){if(!(0,pn.IsBigInt)(tn))return yield Create(mn.BigInt,Wt,en,tn);if(IsDefined(Wt.exclusiveMaximum)&&!(tnWt.exclusiveMinimum)){yield Create(mn.BigIntExclusiveMinimum,Wt,en,tn)}if(IsDefined(Wt.maximum)&&!(tn<=Wt.maximum)){yield Create(mn.BigIntMaximum,Wt,en,tn)}if(IsDefined(Wt.minimum)&&!(tn>=Wt.minimum)){yield Create(mn.BigIntMinimum,Wt,en,tn)}if(IsDefined(Wt.multipleOf)&&!(tn%Wt.multipleOf===BigInt(0))){yield Create(mn.BigIntMultipleOf,Wt,en,tn)}}function*FromBoolean(Wt,Pt,en,tn){if(!(0,pn.IsBoolean)(tn))yield Create(mn.Boolean,Wt,en,tn)}function*FromConstructor(Wt,Pt,en,tn){yield*Visit(Wt.returns,Pt,en,tn.prototype)}function*FromDate(Wt,Pt,en,tn){if(!(0,pn.IsDate)(tn))return yield Create(mn.Date,Wt,en,tn);if(IsDefined(Wt.exclusiveMaximumTimestamp)&&!(tn.getTime()Wt.exclusiveMinimumTimestamp)){yield Create(mn.DateExclusiveMinimumTimestamp,Wt,en,tn)}if(IsDefined(Wt.maximumTimestamp)&&!(tn.getTime()<=Wt.maximumTimestamp)){yield Create(mn.DateMaximumTimestamp,Wt,en,tn)}if(IsDefined(Wt.minimumTimestamp)&&!(tn.getTime()>=Wt.minimumTimestamp)){yield Create(mn.DateMinimumTimestamp,Wt,en,tn)}if(IsDefined(Wt.multipleOfTimestamp)&&!(tn.getTime()%Wt.multipleOfTimestamp===0)){yield Create(mn.DateMultipleOfTimestamp,Wt,en,tn)}}function*FromFunction(Wt,Pt,en,tn){if(!(0,pn.IsFunction)(tn))yield Create(mn.Function,Wt,en,tn)}function*FromInteger(Wt,Pt,en,tn){if(!(0,pn.IsInteger)(tn))return yield Create(mn.Integer,Wt,en,tn);if(IsDefined(Wt.exclusiveMaximum)&&!(tnWt.exclusiveMinimum)){yield Create(mn.IntegerExclusiveMinimum,Wt,en,tn)}if(IsDefined(Wt.maximum)&&!(tn<=Wt.maximum)){yield Create(mn.IntegerMaximum,Wt,en,tn)}if(IsDefined(Wt.minimum)&&!(tn>=Wt.minimum)){yield Create(mn.IntegerMinimum,Wt,en,tn)}if(IsDefined(Wt.multipleOf)&&!(tn%Wt.multipleOf===0)){yield Create(mn.IntegerMultipleOf,Wt,en,tn)}}function*FromIntersect(Wt,Pt,en,tn){for(const nn of Wt.allOf){const an=Visit(nn,Pt,en,tn).next();if(!an.done){yield Create(mn.Intersect,Wt,en,tn);yield an.value}}if(Wt.unevaluatedProperties===false){const Pt=new RegExp((0,nn.KeyOfPattern)(Wt));for(const nn of Object.getOwnPropertyNames(tn)){if(!Pt.test(nn)){yield Create(mn.IntersectUnevaluatedProperties,Wt,`${en}/${nn}`,tn)}}}if(typeof Wt.unevaluatedProperties==="object"){const an=new RegExp((0,nn.KeyOfPattern)(Wt));for(const nn of Object.getOwnPropertyNames(tn)){if(!an.test(nn)){const an=Visit(Wt.unevaluatedProperties,Pt,`${en}/${nn}`,tn[nn]).next();if(!an.done)yield an.value}}}}function*FromIterator(Wt,Pt,en,tn){if(!(0,pn.IsIterator)(tn))yield Create(mn.Iterator,Wt,en,tn)}function*FromLiteral(Wt,Pt,en,tn){if(!(tn===Wt.const))yield Create(mn.Literal,Wt,en,tn)}function*FromNever(Wt,Pt,en,tn){yield Create(mn.Never,Wt,en,tn)}function*FromNot(Wt,Pt,en,tn){if(Visit(Wt.not,Pt,en,tn).next().done===true)yield Create(mn.Not,Wt,en,tn)}function*FromNull(Wt,Pt,en,tn){if(!(0,pn.IsNull)(tn))yield Create(mn.Null,Wt,en,tn)}function*FromNumber(Wt,Pt,en,nn){if(!tn.TypeSystemPolicy.IsNumberLike(nn))return yield Create(mn.Number,Wt,en,nn);if(IsDefined(Wt.exclusiveMaximum)&&!(nnWt.exclusiveMinimum)){yield Create(mn.NumberExclusiveMinimum,Wt,en,nn)}if(IsDefined(Wt.maximum)&&!(nn<=Wt.maximum)){yield Create(mn.NumberMaximum,Wt,en,nn)}if(IsDefined(Wt.minimum)&&!(nn>=Wt.minimum)){yield Create(mn.NumberMinimum,Wt,en,nn)}if(IsDefined(Wt.multipleOf)&&!(nn%Wt.multipleOf===0)){yield Create(mn.NumberMultipleOf,Wt,en,nn)}}function*FromObject(Wt,Pt,en,nn){if(!tn.TypeSystemPolicy.IsObjectLike(nn))return yield Create(mn.Object,Wt,en,nn);if(IsDefined(Wt.minProperties)&&!(Object.getOwnPropertyNames(nn).length>=Wt.minProperties)){yield Create(mn.ObjectMinProperties,Wt,en,nn)}if(IsDefined(Wt.maxProperties)&&!(Object.getOwnPropertyNames(nn).length<=Wt.maxProperties)){yield Create(mn.ObjectMaxProperties,Wt,en,nn)}const an=Array.isArray(Wt.required)?Wt.required:[];const In=Object.getOwnPropertyNames(Wt.properties);const sn=Object.getOwnPropertyNames(nn);for(const Pt of an){if(sn.includes(Pt))continue;yield Create(mn.ObjectRequiredProperty,Wt.properties[Pt],`${en}/${EscapeKey(Pt)}`,undefined)}if(Wt.additionalProperties===false){for(const Pt of sn){if(!In.includes(Pt)){yield Create(mn.ObjectAdditionalProperties,Wt,`${en}/${EscapeKey(Pt)}`,nn[Pt])}}}if(typeof Wt.additionalProperties==="object"){for(const tn of sn){if(In.includes(tn))continue;yield*Visit(Wt.additionalProperties,Pt,`${en}/${EscapeKey(tn)}`,nn[tn])}}for(const an of In){const In=Wt.properties[an];if(Wt.required&&Wt.required.includes(an)){yield*Visit(In,Pt,`${en}/${EscapeKey(an)}`,nn[an]);if((0,rn.ExtendsUndefinedCheck)(Wt)&&!(an in nn)){yield Create(mn.ObjectRequiredProperty,In,`${en}/${EscapeKey(an)}`,undefined)}}else{if(tn.TypeSystemPolicy.IsExactOptionalProperty(nn,an)){yield*Visit(In,Pt,`${en}/${EscapeKey(an)}`,nn[an])}}}}function*FromPromise(Wt,Pt,en,tn){if(!(0,pn.IsPromise)(tn))yield Create(mn.Promise,Wt,en,tn)}function*FromRecord(Wt,Pt,en,nn){if(!tn.TypeSystemPolicy.IsRecordLike(nn))return yield Create(mn.Object,Wt,en,nn);if(IsDefined(Wt.minProperties)&&!(Object.getOwnPropertyNames(nn).length>=Wt.minProperties)){yield Create(mn.ObjectMinProperties,Wt,en,nn)}if(IsDefined(Wt.maxProperties)&&!(Object.getOwnPropertyNames(nn).length<=Wt.maxProperties)){yield Create(mn.ObjectMaxProperties,Wt,en,nn)}const[an,rn]=Object.entries(Wt.patternProperties)[0];const In=new RegExp(an);for(const[Wt,tn]of Object.entries(nn)){if(In.test(Wt))yield*Visit(rn,Pt,`${en}/${EscapeKey(Wt)}`,tn)}if(typeof Wt.additionalProperties==="object"){for(const[tn,an]of Object.entries(nn)){if(!In.test(tn))yield*Visit(Wt.additionalProperties,Pt,`${en}/${EscapeKey(tn)}`,an)}}if(Wt.additionalProperties===false){for(const[Pt,tn]of Object.entries(nn)){if(In.test(Pt))continue;return yield Create(mn.ObjectAdditionalProperties,Wt,`${en}/${EscapeKey(Pt)}`,tn)}}}function*FromRef(Wt,Pt,en,tn){yield*Visit((0,on.Deref)(Wt,Pt),Pt,en,tn)}function*FromRegExp(Wt,Pt,en,tn){if(!(0,pn.IsString)(tn))return yield Create(mn.String,Wt,en,tn);if(IsDefined(Wt.minLength)&&!(tn.length>=Wt.minLength)){yield Create(mn.StringMinLength,Wt,en,tn)}if(IsDefined(Wt.maxLength)&&!(tn.length<=Wt.maxLength)){yield Create(mn.StringMaxLength,Wt,en,tn)}const nn=new RegExp(Wt.source,Wt.flags);if(!nn.test(tn)){return yield Create(mn.RegExp,Wt,en,tn)}}function*FromString(Wt,Pt,en,tn){if(!(0,pn.IsString)(tn))return yield Create(mn.String,Wt,en,tn);if(IsDefined(Wt.minLength)&&!(tn.length>=Wt.minLength)){yield Create(mn.StringMinLength,Wt,en,tn)}if(IsDefined(Wt.maxLength)&&!(tn.length<=Wt.maxLength)){yield Create(mn.StringMaxLength,Wt,en,tn)}if((0,pn.IsString)(Wt.pattern)){const Pt=new RegExp(Wt.pattern);if(!Pt.test(tn)){yield Create(mn.StringPattern,Wt,en,tn)}}if((0,pn.IsString)(Wt.format)){if(!an.FormatRegistry.Has(Wt.format)){yield Create(mn.StringFormatUnknown,Wt,en,tn)}else{const Pt=an.FormatRegistry.Get(Wt.format);if(!Pt(tn)){yield Create(mn.StringFormat,Wt,en,tn)}}}}function*FromSymbol(Wt,Pt,en,tn){if(!(0,pn.IsSymbol)(tn))yield Create(mn.Symbol,Wt,en,tn)}function*FromTemplateLiteral(Wt,Pt,en,tn){if(!(0,pn.IsString)(tn))return yield Create(mn.String,Wt,en,tn);const nn=new RegExp(Wt.pattern);if(!nn.test(tn)){yield Create(mn.StringPattern,Wt,en,tn)}}function*FromThis(Wt,Pt,en,tn){yield*Visit((0,on.Deref)(Wt,Pt),Pt,en,tn)}function*FromTuple(Wt,Pt,en,tn){if(!(0,pn.IsArray)(tn))return yield Create(mn.Tuple,Wt,en,tn);if(Wt.items===undefined&&!(tn.length===0)){return yield Create(mn.TupleLength,Wt,en,tn)}if(!(tn.length===Wt.maxItems)){return yield Create(mn.TupleLength,Wt,en,tn)}if(!Wt.items){return}for(let nn=0;nn0){yield Create(mn.Union,Wt,en,tn)}}function*FromUint8Array(Wt,Pt,en,tn){if(!(0,pn.IsUint8Array)(tn))return yield Create(mn.Uint8Array,Wt,en,tn);if(IsDefined(Wt.maxByteLength)&&!(tn.length<=Wt.maxByteLength)){yield Create(mn.Uint8ArrayMaxByteLength,Wt,en,tn)}if(IsDefined(Wt.minByteLength)&&!(tn.length>=Wt.minByteLength)){yield Create(mn.Uint8ArrayMinByteLength,Wt,en,tn)}}function*FromUnknown(Wt,Pt,en,tn){}function*FromVoid(Wt,Pt,en,nn){if(!tn.TypeSystemPolicy.IsVoidLike(nn))yield Create(mn.Void,Wt,en,nn)}function*FromKind(Wt,Pt,en,tn){const nn=an.TypeRegistry.Get(Wt[dn.Kind]);if(!nn(Wt,tn))yield Create(mn.Kind,Wt,en,tn)}function*Visit(Wt,Pt,en,tn){const nn=IsDefined(Wt.$id)?[...Pt,Wt]:Pt;const rn=Wt;switch(rn[dn.Kind]){case"Any":return yield*FromAny(rn,nn,en,tn);case"Array":return yield*FromArray(rn,nn,en,tn);case"AsyncIterator":return yield*FromAsyncIterator(rn,nn,en,tn);case"BigInt":return yield*FromBigInt(rn,nn,en,tn);case"Boolean":return yield*FromBoolean(rn,nn,en,tn);case"Constructor":return yield*FromConstructor(rn,nn,en,tn);case"Date":return yield*FromDate(rn,nn,en,tn);case"Function":return yield*FromFunction(rn,nn,en,tn);case"Integer":return yield*FromInteger(rn,nn,en,tn);case"Intersect":return yield*FromIntersect(rn,nn,en,tn);case"Iterator":return yield*FromIterator(rn,nn,en,tn);case"Literal":return yield*FromLiteral(rn,nn,en,tn);case"Never":return yield*FromNever(rn,nn,en,tn);case"Not":return yield*FromNot(rn,nn,en,tn);case"Null":return yield*FromNull(rn,nn,en,tn);case"Number":return yield*FromNumber(rn,nn,en,tn);case"Object":return yield*FromObject(rn,nn,en,tn);case"Promise":return yield*FromPromise(rn,nn,en,tn);case"Record":return yield*FromRecord(rn,nn,en,tn);case"Ref":return yield*FromRef(rn,nn,en,tn);case"RegExp":return yield*FromRegExp(rn,nn,en,tn);case"String":return yield*FromString(rn,nn,en,tn);case"Symbol":return yield*FromSymbol(rn,nn,en,tn);case"TemplateLiteral":return yield*FromTemplateLiteral(rn,nn,en,tn);case"This":return yield*FromThis(rn,nn,en,tn);case"Tuple":return yield*FromTuple(rn,nn,en,tn);case"Undefined":return yield*FromUndefined(rn,nn,en,tn);case"Union":return yield*FromUnion(rn,nn,en,tn);case"Uint8Array":return yield*FromUint8Array(rn,nn,en,tn);case"Unknown":return yield*FromUnknown(rn,nn,en,tn);case"Void":return yield*FromVoid(rn,nn,en,tn);default:if(!an.TypeRegistry.Has(rn[dn.Kind]))throw new ValueErrorsUnknownTypeError(Wt);return yield*FromKind(rn,nn,en,tn)}}function Errors(...Wt){const Pt=Wt.length===3?Visit(Wt[0],Wt[1],"",Wt[2]):Visit(Wt[0],[],"",Wt[1]);return new ValueErrorIterator(Pt)}Pt.Errors=Errors},37746:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.GetErrorFunction=Pt.SetErrorFunction=Pt.DefaultErrorFunction=void 0;const tn=en(48121);const nn=en(19537);function DefaultErrorFunction(Wt){switch(Wt.errorType){case nn.ValueErrorType.ArrayContains:return"Expected array to contain at least one matching value";case nn.ValueErrorType.ArrayMaxContains:return`Expected array to contain no more than ${Wt.schema.maxContains} matching values`;case nn.ValueErrorType.ArrayMinContains:return`Expected array to contain at least ${Wt.schema.minContains} matching values`;case nn.ValueErrorType.ArrayMaxItems:return`Expected array length to be less or equal to ${Wt.schema.maxItems}`;case nn.ValueErrorType.ArrayMinItems:return`Expected array length to be greater or equal to ${Wt.schema.minItems}`;case nn.ValueErrorType.ArrayUniqueItems:return"Expected array elements to be unique";case nn.ValueErrorType.Array:return"Expected array";case nn.ValueErrorType.AsyncIterator:return"Expected AsyncIterator";case nn.ValueErrorType.BigIntExclusiveMaximum:return`Expected bigint to be less than ${Wt.schema.exclusiveMaximum}`;case nn.ValueErrorType.BigIntExclusiveMinimum:return`Expected bigint to be greater than ${Wt.schema.exclusiveMinimum}`;case nn.ValueErrorType.BigIntMaximum:return`Expected bigint to be less or equal to ${Wt.schema.maximum}`;case nn.ValueErrorType.BigIntMinimum:return`Expected bigint to be greater or equal to ${Wt.schema.minimum}`;case nn.ValueErrorType.BigIntMultipleOf:return`Expected bigint to be a multiple of ${Wt.schema.multipleOf}`;case nn.ValueErrorType.BigInt:return"Expected bigint";case nn.ValueErrorType.Boolean:return"Expected boolean";case nn.ValueErrorType.DateExclusiveMinimumTimestamp:return`Expected Date timestamp to be greater than ${Wt.schema.exclusiveMinimumTimestamp}`;case nn.ValueErrorType.DateExclusiveMaximumTimestamp:return`Expected Date timestamp to be less than ${Wt.schema.exclusiveMaximumTimestamp}`;case nn.ValueErrorType.DateMinimumTimestamp:return`Expected Date timestamp to be greater or equal to ${Wt.schema.minimumTimestamp}`;case nn.ValueErrorType.DateMaximumTimestamp:return`Expected Date timestamp to be less or equal to ${Wt.schema.maximumTimestamp}`;case nn.ValueErrorType.DateMultipleOfTimestamp:return`Expected Date timestamp to be a multiple of ${Wt.schema.multipleOfTimestamp}`;case nn.ValueErrorType.Date:return"Expected Date";case nn.ValueErrorType.Function:return"Expected function";case nn.ValueErrorType.IntegerExclusiveMaximum:return`Expected integer to be less than ${Wt.schema.exclusiveMaximum}`;case nn.ValueErrorType.IntegerExclusiveMinimum:return`Expected integer to be greater than ${Wt.schema.exclusiveMinimum}`;case nn.ValueErrorType.IntegerMaximum:return`Expected integer to be less or equal to ${Wt.schema.maximum}`;case nn.ValueErrorType.IntegerMinimum:return`Expected integer to be greater or equal to ${Wt.schema.minimum}`;case nn.ValueErrorType.IntegerMultipleOf:return`Expected integer to be a multiple of ${Wt.schema.multipleOf}`;case nn.ValueErrorType.Integer:return"Expected integer";case nn.ValueErrorType.IntersectUnevaluatedProperties:return"Unexpected property";case nn.ValueErrorType.Intersect:return"Expected all values to match";case nn.ValueErrorType.Iterator:return"Expected Iterator";case nn.ValueErrorType.Literal:return`Expected ${typeof Wt.schema.const==="string"?`'${Wt.schema.const}'`:Wt.schema.const}`;case nn.ValueErrorType.Never:return"Never";case nn.ValueErrorType.Not:return"Value should not match";case nn.ValueErrorType.Null:return"Expected null";case nn.ValueErrorType.NumberExclusiveMaximum:return`Expected number to be less than ${Wt.schema.exclusiveMaximum}`;case nn.ValueErrorType.NumberExclusiveMinimum:return`Expected number to be greater than ${Wt.schema.exclusiveMinimum}`;case nn.ValueErrorType.NumberMaximum:return`Expected number to be less or equal to ${Wt.schema.maximum}`;case nn.ValueErrorType.NumberMinimum:return`Expected number to be greater or equal to ${Wt.schema.minimum}`;case nn.ValueErrorType.NumberMultipleOf:return`Expected number to be a multiple of ${Wt.schema.multipleOf}`;case nn.ValueErrorType.Number:return"Expected number";case nn.ValueErrorType.Object:return"Expected object";case nn.ValueErrorType.ObjectAdditionalProperties:return"Unexpected property";case nn.ValueErrorType.ObjectMaxProperties:return`Expected object to have no more than ${Wt.schema.maxProperties} properties`;case nn.ValueErrorType.ObjectMinProperties:return`Expected object to have at least ${Wt.schema.minProperties} properties`;case nn.ValueErrorType.ObjectRequiredProperty:return"Required property";case nn.ValueErrorType.Promise:return"Expected Promise";case nn.ValueErrorType.RegExp:return"Expected string to match regular expression";case nn.ValueErrorType.StringFormatUnknown:return`Unknown format '${Wt.schema.format}'`;case nn.ValueErrorType.StringFormat:return`Expected string to match '${Wt.schema.format}' format`;case nn.ValueErrorType.StringMaxLength:return`Expected string length less or equal to ${Wt.schema.maxLength}`;case nn.ValueErrorType.StringMinLength:return`Expected string length greater or equal to ${Wt.schema.minLength}`;case nn.ValueErrorType.StringPattern:return`Expected string to match '${Wt.schema.pattern}'`;case nn.ValueErrorType.String:return"Expected string";case nn.ValueErrorType.Symbol:return"Expected symbol";case nn.ValueErrorType.TupleLength:return`Expected tuple to have ${Wt.schema.maxItems||0} elements`;case nn.ValueErrorType.Tuple:return"Expected tuple";case nn.ValueErrorType.Uint8ArrayMaxByteLength:return`Expected byte length less or equal to ${Wt.schema.maxByteLength}`;case nn.ValueErrorType.Uint8ArrayMinByteLength:return`Expected byte length greater or equal to ${Wt.schema.minByteLength}`;case nn.ValueErrorType.Uint8Array:return"Expected Uint8Array";case nn.ValueErrorType.Undefined:return"Expected undefined";case nn.ValueErrorType.Union:return"Expected union value";case nn.ValueErrorType.Void:return"Expected void";case nn.ValueErrorType.Kind:return`Expected kind '${Wt.schema[tn.Kind]}'`;default:return"Unknown error type"}}Pt.DefaultErrorFunction=DefaultErrorFunction;let an=DefaultErrorFunction;function SetErrorFunction(Wt){an=Wt}Pt.SetErrorFunction=SetErrorFunction;function GetErrorFunction(){return an}Pt.GetErrorFunction=GetErrorFunction},4672:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(19537),Pt);nn(en(37746),Pt)},92018:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(57985),Pt);nn(en(94526),Pt);nn(en(75289),Pt);nn(en(51861),Pt);nn(en(50059),Pt);nn(en(97759),Pt);nn(en(89925),Pt);nn(en(48121),Pt);nn(en(56234),Pt);nn(en(59809),Pt);nn(en(32733),Pt);nn(en(52779),Pt);nn(en(37383),Pt);nn(en(89168),Pt);nn(en(87731),Pt);nn(en(29075),Pt);nn(en(86232),Pt);nn(en(76835),Pt);nn(en(89816),Pt);nn(en(3592),Pt);nn(en(63617),Pt);nn(en(10698),Pt);nn(en(40629),Pt);nn(en(14301),Pt);nn(en(72996),Pt);nn(en(89777),Pt);nn(en(33458),Pt);nn(en(5578),Pt);nn(en(32945),Pt);nn(en(30666),Pt);nn(en(71095),Pt);nn(en(30658),Pt);nn(en(24727),Pt);nn(en(76675),Pt);nn(en(22346),Pt);nn(en(9741),Pt);nn(en(4513),Pt);nn(en(46621),Pt);nn(en(13871),Pt);nn(en(56497),Pt);nn(en(31392),Pt);nn(en(80264),Pt);nn(en(96405),Pt);nn(en(53861),Pt);nn(en(59573),Pt);nn(en(4102),Pt);nn(en(51257),Pt);nn(en(59961),Pt);nn(en(81816),Pt);nn(en(29105),Pt);nn(en(34865),Pt);nn(en(83397),Pt);nn(en(47686),Pt);nn(en(89861),Pt);nn(en(94987),Pt);nn(en(2222),Pt);nn(en(94313),Pt);nn(en(69429),Pt);nn(en(69656),Pt);nn(en(90984),Pt);nn(en(60304),Pt);nn(en(82894),Pt);nn(en(91305),Pt);nn(en(37272),Pt);nn(en(41743),Pt);nn(en(41178),Pt);nn(en(79750),Pt);nn(en(20602),Pt);nn(en(55764),Pt)},45918:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(6226),Pt);nn(en(60313),Pt)},6226:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TypeSystemPolicy=void 0;const tn=en(19522);var nn;(function(Wt){Wt.ExactOptionalPropertyTypes=false;Wt.AllowArrayObject=false;Wt.AllowNaN=false;Wt.AllowNullVoid=false;function IsExactOptionalProperty(Pt,en){return Wt.ExactOptionalPropertyTypes?en in Pt:Pt[en]!==undefined}Wt.IsExactOptionalProperty=IsExactOptionalProperty;function IsObjectLike(Pt){const en=(0,tn.IsObject)(Pt);return Wt.AllowArrayObject?en:en&&!(0,tn.IsArray)(Pt)}Wt.IsObjectLike=IsObjectLike;function IsRecordLike(Wt){return IsObjectLike(Wt)&&!(Wt instanceof Date)&&!(Wt instanceof Uint8Array)}Wt.IsRecordLike=IsRecordLike;function IsNumberLike(Pt){const en=(0,tn.IsNumber)(Pt);return Wt.AllowNaN?en:en&&Number.isFinite(Pt)}Wt.IsNumberLike=IsNumberLike;function IsVoidLike(Pt){const en=(0,tn.IsUndefined)(Pt);return Wt.AllowNullVoid?en||Pt===null:en}Wt.IsVoidLike=IsVoidLike})(nn||(Pt.TypeSystemPolicy=nn={}))},60313:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TypeSystem=Pt.TypeSystemDuplicateFormat=Pt.TypeSystemDuplicateTypeKind=void 0;const tn=en(97759);const nn=en(79750);const an=en(48121);const rn=en(94526);class TypeSystemDuplicateTypeKind extends rn.TypeBoxError{constructor(Wt){super(`Duplicate type kind '${Wt}' detected`)}}Pt.TypeSystemDuplicateTypeKind=TypeSystemDuplicateTypeKind;class TypeSystemDuplicateFormat extends rn.TypeBoxError{constructor(Wt){super(`Duplicate string format '${Wt}' detected`)}}Pt.TypeSystemDuplicateFormat=TypeSystemDuplicateFormat;var In;(function(Wt){function Type(Wt,Pt){if(tn.TypeRegistry.Has(Wt))throw new TypeSystemDuplicateTypeKind(Wt);tn.TypeRegistry.Set(Wt,Pt);return(Pt={})=>(0,nn.Unsafe)({...Pt,[an.Kind]:Wt})}Wt.Type=Type;function Format(Wt,Pt){if(tn.FormatRegistry.Has(Wt))throw new TypeSystemDuplicateFormat(Wt);tn.FormatRegistry.Set(Wt,Pt);return Wt}Wt.Format=Format})(In||(Pt.TypeSystem=In={}))},71664:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Any=void 0;const tn=en(48121);function Any(Wt={}){return{...Wt,[tn.Kind]:"Any"}}Pt.Any=Any},56234:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(71664),Pt)},8480:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Array=void 0;const tn=en(45157);const nn=en(48121);function Array(Wt,Pt={}){return{...Pt,[nn.Kind]:"Array",type:"array",items:(0,tn.CloneType)(Wt)}}Pt.Array=Array},59809:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(8480),Pt)},6028:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.AsyncIterator=void 0;const tn=en(48121);const nn=en(45157);function AsyncIterator(Wt,Pt={}){return{...Pt,[tn.Kind]:"AsyncIterator",type:"AsyncIterator",items:(0,nn.CloneType)(Wt)}}Pt.AsyncIterator=AsyncIterator},32733:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(6028),Pt)},95040:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Awaited=void 0;const tn=en(32945);const nn=en(41743);const an=en(45157);const rn=en(20109);function FromRest(Wt){return Wt.map((Wt=>AwaitedResolve(Wt)))}function FromIntersect(Wt){return(0,tn.Intersect)(FromRest(Wt))}function FromUnion(Wt){return(0,nn.Union)(FromRest(Wt))}function FromPromise(Wt){return AwaitedResolve(Wt)}function AwaitedResolve(Wt){return(0,rn.IsIntersect)(Wt)?FromIntersect(Wt.allOf):(0,rn.IsUnion)(Wt)?FromUnion(Wt.anyOf):(0,rn.IsPromise)(Wt)?FromPromise(Wt.item):Wt}function Awaited(Wt,Pt={}){return(0,an.CloneType)(AwaitedResolve(Wt),Pt)}Pt.Awaited=Awaited},52779:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(95040),Pt)},81776:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.BigInt=void 0;const tn=en(48121);function BigInt(Wt={}){return{...Wt,[tn.Kind]:"BigInt",type:"bigint"}}Pt.BigInt=BigInt},37383:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(81776),Pt)},58604:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Boolean=void 0;const tn=en(48121);function Boolean(Wt={}){return{...Wt,[tn.Kind]:"Boolean",type:"boolean"}}Pt.Boolean=Boolean},89168:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(58604),Pt)},57985:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(45157),Pt);nn(en(8184),Pt)},45157:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.CloneType=Pt.CloneRest=void 0;const tn=en(8184);function CloneRest(Wt){return Wt.map((Wt=>CloneType(Wt)))}Pt.CloneRest=CloneRest;function CloneType(Wt,Pt={}){return{...(0,tn.Clone)(Wt),...Pt}}Pt.CloneType=CloneType},8184:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Clone=void 0;const tn=en(87280);function ArrayType(Wt){return Wt.map((Wt=>Visit(Wt)))}function DateType(Wt){return new Date(Wt.getTime())}function Uint8ArrayType(Wt){return new Uint8Array(Wt)}function RegExpType(Wt){return new RegExp(Wt.source,Wt.flags)}function ObjectType(Wt){const Pt=Object.getOwnPropertyNames(Wt).reduce(((Pt,en)=>({...Pt,[en]:Visit(Wt[en])})),{});const en=Object.getOwnPropertySymbols(Wt).reduce(((Pt,en)=>({...Pt,[en]:Visit(Wt[en])})),{});return{...Pt,...en}}function Visit(Wt){return tn.IsArray(Wt)?ArrayType(Wt):tn.IsDate(Wt)?DateType(Wt):tn.IsUint8Array(Wt)?Uint8ArrayType(Wt):tn.IsRegExp(Wt)?RegExpType(Wt):tn.IsObject(Wt)?ObjectType(Wt):Wt}function Clone(Wt){return Visit(Wt)}Pt.Clone=Clone},94040:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Composite=void 0;const tn=en(32945);const nn=en(89777);const an=en(30658);const rn=en(13871);const In=en(89925);const sn=en(20109);function CompositeKeys(Wt){return(0,In.SetDistinct)(Wt.reduce(((Wt,Pt)=>[...Wt,...(0,an.KeyOfPropertyKeys)(Pt)]),[]))}function FilterNever(Wt){return Wt.filter((Wt=>!(0,sn.IsNever)(Wt)))}function CompositeProperty(Wt,Pt){return FilterNever(Wt.reduce(((Wt,en)=>[...Wt,...(0,nn.IndexFromPropertyKeys)(en,[Pt])]),[]))}function CompositeProperties(Wt,Pt){return Pt.reduce(((Pt,en)=>({...Pt,[en]:(0,tn.IntersectEvaluated)(CompositeProperty(Wt,en))})),{})}function Composite(Wt,Pt={}){const en=CompositeKeys(Wt);const tn=CompositeProperties(Wt,en);const nn=(0,rn.Object)(tn,Pt);return nn}Pt.Composite=Composite},87731:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(94040),Pt)},13352:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Const=void 0;const tn=en(56234);const nn=en(37383);const an=en(89816);const rn=en(72996);const In=en(24727);const sn=en(4513);const on=en(13871);const cn=en(69656);const dn=en(82894);const un=en(4102);const pn=en(37272);const mn=en(91305);const bn=en(41178);const Gn=en(57985);const hn=en(87280);function FromArray(Wt){return Wt.map((Wt=>FromValue(Wt,false)))}function FromProperties(Wt){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((Pt,en)=>({...Pt,[en]:(0,un.Readonly)(FromValue(Wt[en],false))})),{})}function ConditionalReadonly(Wt,Pt){return Pt===true?Wt:(0,un.Readonly)(Wt)}function FromValue(Wt,Pt){return(0,hn.IsAsyncIterator)(Wt)?ConditionalReadonly((0,tn.Any)(),Pt):(0,hn.IsIterator)(Wt)?ConditionalReadonly((0,tn.Any)(),Pt):(0,hn.IsArray)(Wt)?(0,un.Readonly)((0,dn.Tuple)(FromArray(Wt))):(0,hn.IsUint8Array)(Wt)?(0,mn.Uint8Array)():(0,hn.IsDate)(Wt)?(0,an.Date)():(0,hn.IsObject)(Wt)?ConditionalReadonly((0,on.Object)(FromProperties(Wt)),Pt):(0,hn.IsFunction)(Wt)?ConditionalReadonly((0,rn.Function)([],(0,bn.Unknown)()),Pt):(0,hn.IsUndefined)(Wt)?(0,pn.Undefined)():(0,hn.IsNull)(Wt)?(0,sn.Null)():(0,hn.IsSymbol)(Wt)?(0,cn.Symbol)():(0,hn.IsBigInt)(Wt)?(0,nn.BigInt)():(0,hn.IsNumber)(Wt)?(0,In.Literal)(Wt):(0,hn.IsBoolean)(Wt)?(0,In.Literal)(Wt):(0,hn.IsString)(Wt)?(0,In.Literal)(Wt):(0,on.Object)({})}function Const(Wt,Pt={}){return(0,Gn.CloneType)(FromValue(Wt,true),Pt)}Pt.Const=Const},29075:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(13352),Pt)},24096:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ConstructorParameters=void 0;const tn=en(82894);const nn=en(45157);function ConstructorParameters(Wt,Pt={}){return(0,tn.Tuple)((0,nn.CloneRest)(Wt.parameters),{...Pt})}Pt.ConstructorParameters=ConstructorParameters},76835:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(24096),Pt)},7868:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Constructor=void 0;const tn=en(45157);const nn=en(48121);function Constructor(Wt,Pt,en){return{...en,[nn.Kind]:"Constructor",type:"Constructor",parameters:(0,tn.CloneRest)(Wt),returns:(0,tn.CloneType)(Pt)}}Pt.Constructor=Constructor},86232:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(7868),Pt)},49698:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Date=void 0;const tn=en(48121);function Date(Wt={}){return{...Wt,[tn.Kind]:"Date",type:"Date"}}Pt.Date=Date},89816:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(49698),Pt)},99648:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Deref=void 0;const tn=en(45157);const nn=en(62202);const an=en(87280);const rn=en(20109);function FromRest(Wt,Pt){return Wt.map((Wt=>Deref(Wt,Pt)))}function FromProperties(Wt,Pt){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((en,tn)=>({...en,[tn]:Deref(Wt[tn],Pt)})),{})}function FromConstructor(Wt,Pt){Wt.parameters=FromRest(Wt.parameters,Pt);Wt.returns=Deref(Wt.returns,Pt);return Wt}function FromFunction(Wt,Pt){Wt.parameters=FromRest(Wt.parameters,Pt);Wt.returns=Deref(Wt.returns,Pt);return Wt}function FromIntersect(Wt,Pt){Wt.allOf=FromRest(Wt.allOf,Pt);return Wt}function FromUnion(Wt,Pt){Wt.anyOf=FromRest(Wt.anyOf,Pt);return Wt}function FromTuple(Wt,Pt){if((0,an.IsUndefined)(Wt.items))return Wt;Wt.items=FromRest(Wt.items,Pt);return Wt}function FromArray(Wt,Pt){Wt.items=Deref(Wt.items,Pt);return Wt}function FromObject(Wt,Pt){Wt.properties=FromProperties(Wt.properties,Pt);return Wt}function FromPromise(Wt,Pt){Wt.item=Deref(Wt.item,Pt);return Wt}function FromAsyncIterator(Wt,Pt){Wt.items=Deref(Wt.items,Pt);return Wt}function FromIterator(Wt,Pt){Wt.items=Deref(Wt.items,Pt);return Wt}function FromRef(Wt,Pt){const en=Pt.find((Pt=>Pt.$id===Wt.$ref));if(en===undefined)throw Error(`Unable to dereference schema with $id ${Wt.$ref}`);const tn=(0,nn.Discard)(en,["$id"]);return Deref(tn,Pt)}function DerefResolve(Wt,Pt){return(0,rn.IsConstructor)(Wt)?FromConstructor(Wt,Pt):(0,rn.IsFunction)(Wt)?FromFunction(Wt,Pt):(0,rn.IsIntersect)(Wt)?FromIntersect(Wt,Pt):(0,rn.IsUnion)(Wt)?FromUnion(Wt,Pt):(0,rn.IsTuple)(Wt)?FromTuple(Wt,Pt):(0,rn.IsArray)(Wt)?FromArray(Wt,Pt):(0,rn.IsObject)(Wt)?FromObject(Wt,Pt):(0,rn.IsPromise)(Wt)?FromPromise(Wt,Pt):(0,rn.IsAsyncIterator)(Wt)?FromAsyncIterator(Wt,Pt):(0,rn.IsIterator)(Wt)?FromIterator(Wt,Pt):(0,rn.IsRef)(Wt)?FromRef(Wt,Pt):Wt}function Deref(Wt,Pt){return DerefResolve((0,tn.CloneType)(Wt),(0,tn.CloneRest)(Pt))}Pt.Deref=Deref},3592:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(99648),Pt)},43548:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Discard=void 0;function DiscardKey(Wt,Pt){const{[Pt]:en,...tn}=Wt;return tn}function Discard(Wt,Pt){return Pt.reduce(((Wt,Pt)=>DiscardKey(Wt,Pt)),Wt)}Pt.Discard=Discard},62202:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(43548),Pt)},41384:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Enum=void 0;const tn=en(24727);const nn=en(48121);const an=en(41743);const rn=en(87280);function Enum(Wt,Pt={}){if((0,rn.IsUndefined)(Wt))throw new Error("Enum undefined or empty");const en=globalThis.Object.getOwnPropertyNames(Wt).filter((Wt=>isNaN(Wt))).map((Pt=>Wt[Pt]));const In=[...new Set(en)];const sn=In.map((Wt=>(0,tn.Literal)(Wt)));return(0,an.Union)(sn,{...Pt,[nn.Hint]:"Enum"})}Pt.Enum=Enum},63617:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(41384),Pt)},72908:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TypeBoxError=void 0;class TypeBoxError extends Error{constructor(Wt){super(Wt)}}Pt.TypeBoxError=TypeBoxError},94526:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(72908),Pt)},87931:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ExcludeFromMappedResult=void 0;const tn=en(76675);const nn=en(43356);function FromProperties(Wt,Pt){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((en,tn)=>({...en,[tn]:(0,nn.Exclude)(Wt[tn],Pt)})),{})}function FromMappedResult(Wt,Pt){return FromProperties(Wt.properties,Pt)}function ExcludeFromMappedResult(Wt,Pt){const en=FromMappedResult(Wt,Pt);return(0,tn.MappedResult)(en)}Pt.ExcludeFromMappedResult=ExcludeFromMappedResult},5586:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ExcludeFromTemplateLiteral=void 0;const tn=en(43356);const nn=en(90984);function ExcludeFromTemplateLiteral(Wt,Pt){return(0,tn.Exclude)((0,nn.TemplateLiteralToUnion)(Wt),Pt)}Pt.ExcludeFromTemplateLiteral=ExcludeFromTemplateLiteral},43356:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Exclude=void 0;const tn=en(41743);const nn=en(22346);const an=en(40629);const rn=en(45157);const In=en(87931);const sn=en(5586);const on=en(20109);function ExcludeRest(Wt,Pt){const en=Wt.filter((Wt=>(0,an.ExtendsCheck)(Wt,Pt)===an.ExtendsResult.False));return en.length===1?en[0]:(0,tn.Union)(en)}function Exclude(Wt,Pt,en={}){if((0,on.IsTemplateLiteral)(Wt))return(0,rn.CloneType)((0,sn.ExcludeFromTemplateLiteral)(Wt,Pt),en);if((0,on.IsMappedResult)(Wt))return(0,rn.CloneType)((0,In.ExcludeFromMappedResult)(Wt,Pt),en);return(0,rn.CloneType)((0,on.IsUnion)(Wt)?ExcludeRest(Wt.anyOf,Pt):(0,an.ExtendsCheck)(Wt,Pt)!==an.ExtendsResult.False?(0,nn.Never)():Wt,en)}Pt.Exclude=Exclude},10698:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(87931),Pt);nn(en(5586),Pt);nn(en(43356),Pt)},59405:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ExtendsCheck=Pt.ExtendsResult=Pt.ExtendsResolverError=void 0;const tn=en(56234);const nn=en(72996);const an=en(46621);const rn=en(69429);const In=en(41178);const sn=en(90984);const on=en(50059);const cn=en(48121);const dn=en(94526);const un=en(75289);class ExtendsResolverError extends dn.TypeBoxError{}Pt.ExtendsResolverError=ExtendsResolverError;var pn;(function(Wt){Wt[Wt["Union"]=0]="Union";Wt[Wt["True"]=1]="True";Wt[Wt["False"]=2]="False"})(pn||(Pt.ExtendsResult=pn={}));function IntoBooleanResult(Wt){return Wt===pn.False?Wt:pn.True}function Throw(Wt){throw new ExtendsResolverError(Wt)}function IsStructuralRight(Wt){return un.TypeGuard.IsNever(Wt)||un.TypeGuard.IsIntersect(Wt)||un.TypeGuard.IsUnion(Wt)||un.TypeGuard.IsUnknown(Wt)||un.TypeGuard.IsAny(Wt)}function StructuralRight(Wt,Pt){return un.TypeGuard.IsNever(Pt)?FromNeverRight(Wt,Pt):un.TypeGuard.IsIntersect(Pt)?FromIntersectRight(Wt,Pt):un.TypeGuard.IsUnion(Pt)?FromUnionRight(Wt,Pt):un.TypeGuard.IsUnknown(Pt)?FromUnknownRight(Wt,Pt):un.TypeGuard.IsAny(Pt)?FromAnyRight(Wt,Pt):Throw("StructuralRight")}function FromAnyRight(Wt,Pt){return pn.True}function FromAny(Wt,Pt){return un.TypeGuard.IsIntersect(Pt)?FromIntersectRight(Wt,Pt):un.TypeGuard.IsUnion(Pt)&&Pt.anyOf.some((Wt=>un.TypeGuard.IsAny(Wt)||un.TypeGuard.IsUnknown(Wt)))?pn.True:un.TypeGuard.IsUnion(Pt)?pn.Union:un.TypeGuard.IsUnknown(Pt)?pn.True:un.TypeGuard.IsAny(Pt)?pn.True:pn.Union}function FromArrayRight(Wt,Pt){return un.TypeGuard.IsUnknown(Wt)?pn.False:un.TypeGuard.IsAny(Wt)?pn.Union:un.TypeGuard.IsNever(Wt)?pn.True:pn.False}function FromArray(Wt,Pt){return un.TypeGuard.IsObject(Pt)&&IsObjectArrayLike(Pt)?pn.True:IsStructuralRight(Pt)?StructuralRight(Wt,Pt):!un.TypeGuard.IsArray(Pt)?pn.False:IntoBooleanResult(Visit(Wt.items,Pt.items))}function FromAsyncIterator(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):!un.TypeGuard.IsAsyncIterator(Pt)?pn.False:IntoBooleanResult(Visit(Wt.items,Pt.items))}function FromBigInt(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):un.TypeGuard.IsRecord(Pt)?FromRecordRight(Wt,Pt):un.TypeGuard.IsBigInt(Pt)?pn.True:pn.False}function FromBooleanRight(Wt,Pt){return un.TypeGuard.IsLiteralBoolean(Wt)?pn.True:un.TypeGuard.IsBoolean(Wt)?pn.True:pn.False}function FromBoolean(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):un.TypeGuard.IsRecord(Pt)?FromRecordRight(Wt,Pt):un.TypeGuard.IsBoolean(Pt)?pn.True:pn.False}function FromConstructor(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):!un.TypeGuard.IsConstructor(Pt)?pn.False:Wt.parameters.length>Pt.parameters.length?pn.False:!Wt.parameters.every(((Wt,en)=>IntoBooleanResult(Visit(Pt.parameters[en],Wt))===pn.True))?pn.False:IntoBooleanResult(Visit(Wt.returns,Pt.returns))}function FromDate(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):un.TypeGuard.IsRecord(Pt)?FromRecordRight(Wt,Pt):un.TypeGuard.IsDate(Pt)?pn.True:pn.False}function FromFunction(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):!un.TypeGuard.IsFunction(Pt)?pn.False:Wt.parameters.length>Pt.parameters.length?pn.False:!Wt.parameters.every(((Wt,en)=>IntoBooleanResult(Visit(Pt.parameters[en],Wt))===pn.True))?pn.False:IntoBooleanResult(Visit(Wt.returns,Pt.returns))}function FromIntegerRight(Wt,Pt){return un.TypeGuard.IsLiteral(Wt)&&un.ValueGuard.IsNumber(Wt.const)?pn.True:un.TypeGuard.IsNumber(Wt)||un.TypeGuard.IsInteger(Wt)?pn.True:pn.False}function FromInteger(Wt,Pt){return un.TypeGuard.IsInteger(Pt)||un.TypeGuard.IsNumber(Pt)?pn.True:IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):un.TypeGuard.IsRecord(Pt)?FromRecordRight(Wt,Pt):pn.False}function FromIntersectRight(Wt,Pt){return Pt.allOf.every((Pt=>Visit(Wt,Pt)===pn.True))?pn.True:pn.False}function FromIntersect(Wt,Pt){return Wt.allOf.some((Wt=>Visit(Wt,Pt)===pn.True))?pn.True:pn.False}function FromIterator(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):!un.TypeGuard.IsIterator(Pt)?pn.False:IntoBooleanResult(Visit(Wt.items,Pt.items))}function FromLiteral(Wt,Pt){return un.TypeGuard.IsLiteral(Pt)&&Pt.const===Wt.const?pn.True:IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):un.TypeGuard.IsRecord(Pt)?FromRecordRight(Wt,Pt):un.TypeGuard.IsString(Pt)?FromStringRight(Wt,Pt):un.TypeGuard.IsNumber(Pt)?FromNumberRight(Wt,Pt):un.TypeGuard.IsInteger(Pt)?FromIntegerRight(Wt,Pt):un.TypeGuard.IsBoolean(Pt)?FromBooleanRight(Wt,Pt):pn.False}function FromNeverRight(Wt,Pt){return pn.False}function FromNever(Wt,Pt){return pn.True}function UnwrapTNot(Wt){let[Pt,en]=[Wt,0];while(true){if(!un.TypeGuard.IsNot(Pt))break;Pt=Pt.not;en+=1}return en%2===0?Pt:(0,In.Unknown)()}function FromNot(Wt,Pt){return un.TypeGuard.IsNot(Wt)?Visit(UnwrapTNot(Wt),Pt):un.TypeGuard.IsNot(Pt)?Visit(Wt,UnwrapTNot(Pt)):Throw("Invalid fallthrough for Not")}function FromNull(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):un.TypeGuard.IsRecord(Pt)?FromRecordRight(Wt,Pt):un.TypeGuard.IsNull(Pt)?pn.True:pn.False}function FromNumberRight(Wt,Pt){return un.TypeGuard.IsLiteralNumber(Wt)?pn.True:un.TypeGuard.IsNumber(Wt)||un.TypeGuard.IsInteger(Wt)?pn.True:pn.False}function FromNumber(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):un.TypeGuard.IsRecord(Pt)?FromRecordRight(Wt,Pt):un.TypeGuard.IsInteger(Pt)||un.TypeGuard.IsNumber(Pt)?pn.True:pn.False}function IsObjectPropertyCount(Wt,Pt){return Object.getOwnPropertyNames(Wt.properties).length===Pt}function IsObjectStringLike(Wt){return IsObjectArrayLike(Wt)}function IsObjectSymbolLike(Wt){return IsObjectPropertyCount(Wt,0)||IsObjectPropertyCount(Wt,1)&&"description"in Wt.properties&&un.TypeGuard.IsUnion(Wt.properties.description)&&Wt.properties.description.anyOf.length===2&&(un.TypeGuard.IsString(Wt.properties.description.anyOf[0])&&un.TypeGuard.IsUndefined(Wt.properties.description.anyOf[1])||un.TypeGuard.IsString(Wt.properties.description.anyOf[1])&&un.TypeGuard.IsUndefined(Wt.properties.description.anyOf[0]))}function IsObjectNumberLike(Wt){return IsObjectPropertyCount(Wt,0)}function IsObjectBooleanLike(Wt){return IsObjectPropertyCount(Wt,0)}function IsObjectBigIntLike(Wt){return IsObjectPropertyCount(Wt,0)}function IsObjectDateLike(Wt){return IsObjectPropertyCount(Wt,0)}function IsObjectUint8ArrayLike(Wt){return IsObjectArrayLike(Wt)}function IsObjectFunctionLike(Wt){const Pt=(0,an.Number)();return IsObjectPropertyCount(Wt,0)||IsObjectPropertyCount(Wt,1)&&"length"in Wt.properties&&IntoBooleanResult(Visit(Wt.properties["length"],Pt))===pn.True}function IsObjectConstructorLike(Wt){return IsObjectPropertyCount(Wt,0)}function IsObjectArrayLike(Wt){const Pt=(0,an.Number)();return IsObjectPropertyCount(Wt,0)||IsObjectPropertyCount(Wt,1)&&"length"in Wt.properties&&IntoBooleanResult(Visit(Wt.properties["length"],Pt))===pn.True}function IsObjectPromiseLike(Wt){const Pt=(0,nn.Function)([(0,tn.Any)()],(0,tn.Any)());return IsObjectPropertyCount(Wt,0)||IsObjectPropertyCount(Wt,1)&&"then"in Wt.properties&&IntoBooleanResult(Visit(Wt.properties["then"],Pt))===pn.True}function Property(Wt,Pt){return Visit(Wt,Pt)===pn.False?pn.False:un.TypeGuard.IsOptional(Wt)&&!un.TypeGuard.IsOptional(Pt)?pn.False:pn.True}function FromObjectRight(Wt,Pt){return un.TypeGuard.IsUnknown(Wt)?pn.False:un.TypeGuard.IsAny(Wt)?pn.Union:un.TypeGuard.IsNever(Wt)||un.TypeGuard.IsLiteralString(Wt)&&IsObjectStringLike(Pt)||un.TypeGuard.IsLiteralNumber(Wt)&&IsObjectNumberLike(Pt)||un.TypeGuard.IsLiteralBoolean(Wt)&&IsObjectBooleanLike(Pt)||un.TypeGuard.IsSymbol(Wt)&&IsObjectSymbolLike(Pt)||un.TypeGuard.IsBigInt(Wt)&&IsObjectBigIntLike(Pt)||un.TypeGuard.IsString(Wt)&&IsObjectStringLike(Pt)||un.TypeGuard.IsSymbol(Wt)&&IsObjectSymbolLike(Pt)||un.TypeGuard.IsNumber(Wt)&&IsObjectNumberLike(Pt)||un.TypeGuard.IsInteger(Wt)&&IsObjectNumberLike(Pt)||un.TypeGuard.IsBoolean(Wt)&&IsObjectBooleanLike(Pt)||un.TypeGuard.IsUint8Array(Wt)&&IsObjectUint8ArrayLike(Pt)||un.TypeGuard.IsDate(Wt)&&IsObjectDateLike(Pt)||un.TypeGuard.IsConstructor(Wt)&&IsObjectConstructorLike(Pt)||un.TypeGuard.IsFunction(Wt)&&IsObjectFunctionLike(Pt)?pn.True:un.TypeGuard.IsRecord(Wt)&&un.TypeGuard.IsString(RecordKey(Wt))?(()=>Pt[cn.Hint]==="Record"?pn.True:pn.False)():un.TypeGuard.IsRecord(Wt)&&un.TypeGuard.IsNumber(RecordKey(Wt))?(()=>IsObjectPropertyCount(Pt,0)?pn.True:pn.False)():pn.False}function FromObject(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsRecord(Pt)?FromRecordRight(Wt,Pt):!un.TypeGuard.IsObject(Pt)?pn.False:(()=>{for(const en of Object.getOwnPropertyNames(Pt.properties)){if(!(en in Wt.properties)&&!un.TypeGuard.IsOptional(Pt.properties[en])){return pn.False}if(un.TypeGuard.IsOptional(Pt.properties[en])){return pn.True}if(Property(Wt.properties[en],Pt.properties[en])===pn.False){return pn.False}}return pn.True})()}function FromPromise(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)&&IsObjectPromiseLike(Pt)?pn.True:!un.TypeGuard.IsPromise(Pt)?pn.False:IntoBooleanResult(Visit(Wt.item,Pt.item))}function RecordKey(Wt){return on.PatternNumberExact in Wt.patternProperties?(0,an.Number)():on.PatternStringExact in Wt.patternProperties?(0,rn.String)():Throw("Unknown record key pattern")}function RecordValue(Wt){return on.PatternNumberExact in Wt.patternProperties?Wt.patternProperties[on.PatternNumberExact]:on.PatternStringExact in Wt.patternProperties?Wt.patternProperties[on.PatternStringExact]:Throw("Unable to get record value schema")}function FromRecordRight(Wt,Pt){const[en,tn]=[RecordKey(Pt),RecordValue(Pt)];return un.TypeGuard.IsLiteralString(Wt)&&un.TypeGuard.IsNumber(en)&&IntoBooleanResult(Visit(Wt,tn))===pn.True?pn.True:un.TypeGuard.IsUint8Array(Wt)&&un.TypeGuard.IsNumber(en)?Visit(Wt,tn):un.TypeGuard.IsString(Wt)&&un.TypeGuard.IsNumber(en)?Visit(Wt,tn):un.TypeGuard.IsArray(Wt)&&un.TypeGuard.IsNumber(en)?Visit(Wt,tn):un.TypeGuard.IsObject(Wt)?(()=>{for(const Pt of Object.getOwnPropertyNames(Wt.properties)){if(Property(tn,Wt.properties[Pt])===pn.False){return pn.False}}return pn.True})():pn.False}function FromRecord(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):!un.TypeGuard.IsRecord(Pt)?pn.False:Visit(RecordValue(Wt),RecordValue(Pt))}function FromRegExp(Wt,Pt){const en=un.TypeGuard.IsRegExp(Wt)?(0,rn.String)():Wt;const tn=un.TypeGuard.IsRegExp(Pt)?(0,rn.String)():Pt;return Visit(en,tn)}function FromStringRight(Wt,Pt){return un.TypeGuard.IsLiteral(Wt)&&un.ValueGuard.IsString(Wt.const)?pn.True:un.TypeGuard.IsString(Wt)?pn.True:pn.False}function FromString(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):un.TypeGuard.IsRecord(Pt)?FromRecordRight(Wt,Pt):un.TypeGuard.IsString(Pt)?pn.True:pn.False}function FromSymbol(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):un.TypeGuard.IsRecord(Pt)?FromRecordRight(Wt,Pt):un.TypeGuard.IsSymbol(Pt)?pn.True:pn.False}function FromTemplateLiteral(Wt,Pt){return un.TypeGuard.IsTemplateLiteral(Wt)?Visit((0,sn.TemplateLiteralToUnion)(Wt),Pt):un.TypeGuard.IsTemplateLiteral(Pt)?Visit(Wt,(0,sn.TemplateLiteralToUnion)(Pt)):Throw("Invalid fallthrough for TemplateLiteral")}function IsArrayOfTuple(Wt,Pt){return un.TypeGuard.IsArray(Pt)&&Wt.items!==undefined&&Wt.items.every((Wt=>Visit(Wt,Pt.items)===pn.True))}function FromTupleRight(Wt,Pt){return un.TypeGuard.IsNever(Wt)?pn.True:un.TypeGuard.IsUnknown(Wt)?pn.False:un.TypeGuard.IsAny(Wt)?pn.Union:pn.False}function FromTuple(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)&&IsObjectArrayLike(Pt)?pn.True:un.TypeGuard.IsArray(Pt)&&IsArrayOfTuple(Wt,Pt)?pn.True:!un.TypeGuard.IsTuple(Pt)?pn.False:un.ValueGuard.IsUndefined(Wt.items)&&!un.ValueGuard.IsUndefined(Pt.items)||!un.ValueGuard.IsUndefined(Wt.items)&&un.ValueGuard.IsUndefined(Pt.items)?pn.False:un.ValueGuard.IsUndefined(Wt.items)&&!un.ValueGuard.IsUndefined(Pt.items)?pn.True:Wt.items.every(((Wt,en)=>Visit(Wt,Pt.items[en])===pn.True))?pn.True:pn.False}function FromUint8Array(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):un.TypeGuard.IsRecord(Pt)?FromRecordRight(Wt,Pt):un.TypeGuard.IsUint8Array(Pt)?pn.True:pn.False}function FromUndefined(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):un.TypeGuard.IsRecord(Pt)?FromRecordRight(Wt,Pt):un.TypeGuard.IsVoid(Pt)?FromVoidRight(Wt,Pt):un.TypeGuard.IsUndefined(Pt)?pn.True:pn.False}function FromUnionRight(Wt,Pt){return Pt.anyOf.some((Pt=>Visit(Wt,Pt)===pn.True))?pn.True:pn.False}function FromUnion(Wt,Pt){return Wt.anyOf.every((Wt=>Visit(Wt,Pt)===pn.True))?pn.True:pn.False}function FromUnknownRight(Wt,Pt){return pn.True}function FromUnknown(Wt,Pt){return un.TypeGuard.IsNever(Pt)?FromNeverRight(Wt,Pt):un.TypeGuard.IsIntersect(Pt)?FromIntersectRight(Wt,Pt):un.TypeGuard.IsUnion(Pt)?FromUnionRight(Wt,Pt):un.TypeGuard.IsAny(Pt)?FromAnyRight(Wt,Pt):un.TypeGuard.IsString(Pt)?FromStringRight(Wt,Pt):un.TypeGuard.IsNumber(Pt)?FromNumberRight(Wt,Pt):un.TypeGuard.IsInteger(Pt)?FromIntegerRight(Wt,Pt):un.TypeGuard.IsBoolean(Pt)?FromBooleanRight(Wt,Pt):un.TypeGuard.IsArray(Pt)?FromArrayRight(Wt,Pt):un.TypeGuard.IsTuple(Pt)?FromTupleRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):un.TypeGuard.IsUnknown(Pt)?pn.True:pn.False}function FromVoidRight(Wt,Pt){return un.TypeGuard.IsUndefined(Wt)?pn.True:un.TypeGuard.IsUndefined(Wt)?pn.True:pn.False}function FromVoid(Wt,Pt){return un.TypeGuard.IsIntersect(Pt)?FromIntersectRight(Wt,Pt):un.TypeGuard.IsUnion(Pt)?FromUnionRight(Wt,Pt):un.TypeGuard.IsUnknown(Pt)?FromUnknownRight(Wt,Pt):un.TypeGuard.IsAny(Pt)?FromAnyRight(Wt,Pt):un.TypeGuard.IsObject(Pt)?FromObjectRight(Wt,Pt):un.TypeGuard.IsVoid(Pt)?pn.True:pn.False}function Visit(Wt,Pt){return un.TypeGuard.IsTemplateLiteral(Wt)||un.TypeGuard.IsTemplateLiteral(Pt)?FromTemplateLiteral(Wt,Pt):un.TypeGuard.IsRegExp(Wt)||un.TypeGuard.IsRegExp(Pt)?FromRegExp(Wt,Pt):un.TypeGuard.IsNot(Wt)||un.TypeGuard.IsNot(Pt)?FromNot(Wt,Pt):un.TypeGuard.IsAny(Wt)?FromAny(Wt,Pt):un.TypeGuard.IsArray(Wt)?FromArray(Wt,Pt):un.TypeGuard.IsBigInt(Wt)?FromBigInt(Wt,Pt):un.TypeGuard.IsBoolean(Wt)?FromBoolean(Wt,Pt):un.TypeGuard.IsAsyncIterator(Wt)?FromAsyncIterator(Wt,Pt):un.TypeGuard.IsConstructor(Wt)?FromConstructor(Wt,Pt):un.TypeGuard.IsDate(Wt)?FromDate(Wt,Pt):un.TypeGuard.IsFunction(Wt)?FromFunction(Wt,Pt):un.TypeGuard.IsInteger(Wt)?FromInteger(Wt,Pt):un.TypeGuard.IsIntersect(Wt)?FromIntersect(Wt,Pt):un.TypeGuard.IsIterator(Wt)?FromIterator(Wt,Pt):un.TypeGuard.IsLiteral(Wt)?FromLiteral(Wt,Pt):un.TypeGuard.IsNever(Wt)?FromNever(Wt,Pt):un.TypeGuard.IsNull(Wt)?FromNull(Wt,Pt):un.TypeGuard.IsNumber(Wt)?FromNumber(Wt,Pt):un.TypeGuard.IsObject(Wt)?FromObject(Wt,Pt):un.TypeGuard.IsRecord(Wt)?FromRecord(Wt,Pt):un.TypeGuard.IsString(Wt)?FromString(Wt,Pt):un.TypeGuard.IsSymbol(Wt)?FromSymbol(Wt,Pt):un.TypeGuard.IsTuple(Wt)?FromTuple(Wt,Pt):un.TypeGuard.IsPromise(Wt)?FromPromise(Wt,Pt):un.TypeGuard.IsUint8Array(Wt)?FromUint8Array(Wt,Pt):un.TypeGuard.IsUndefined(Wt)?FromUndefined(Wt,Pt):un.TypeGuard.IsUnion(Wt)?FromUnion(Wt,Pt):un.TypeGuard.IsUnknown(Wt)?FromUnknown(Wt,Pt):un.TypeGuard.IsVoid(Wt)?FromVoid(Wt,Pt):Throw(`Unknown left type operand '${Wt[cn.Kind]}'`)}function ExtendsCheck(Wt,Pt){return Visit(Wt,Pt)}Pt.ExtendsCheck=ExtendsCheck},16223:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ExtendsFromMappedKey=void 0;const tn=en(76675);const nn=en(24727);const an=en(68936);function FromPropertyKey(Wt,Pt,en,tn,rn){return{[Wt]:(0,an.Extends)((0,nn.Literal)(Wt),Pt,en,tn,rn)}}function FromPropertyKeys(Wt,Pt,en,tn,nn){return Wt.reduce(((Wt,an)=>({...Wt,...FromPropertyKey(an,Pt,en,tn,nn)})),{})}function FromMappedKey(Wt,Pt,en,tn,nn){return FromPropertyKeys(Wt.keys,Pt,en,tn,nn)}function ExtendsFromMappedKey(Wt,Pt,en,nn,an){const rn=FromMappedKey(Wt,Pt,en,nn,an);return(0,tn.MappedResult)(rn)}Pt.ExtendsFromMappedKey=ExtendsFromMappedKey},64311:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ExtendsFromMappedResult=void 0;const tn=en(76675);const nn=en(68936);function FromProperties(Wt,Pt,en,tn,an){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((rn,In)=>({...rn,[In]:(0,nn.Extends)(Wt[In],Pt,en,tn,an)})),{})}function FromMappedResult(Wt,Pt,en,tn,nn){return FromProperties(Wt.properties,Pt,en,tn,nn)}function ExtendsFromMappedResult(Wt,Pt,en,nn,an){const rn=FromMappedResult(Wt,Pt,en,nn,an);return(0,tn.MappedResult)(rn)}Pt.ExtendsFromMappedResult=ExtendsFromMappedResult},1409:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ExtendsUndefinedCheck=void 0;const tn=en(48121);function Intersect(Wt){return Wt.allOf.every((Wt=>ExtendsUndefinedCheck(Wt)))}function Union(Wt){return Wt.anyOf.some((Wt=>ExtendsUndefinedCheck(Wt)))}function Not(Wt){return!ExtendsUndefinedCheck(Wt.not)}function ExtendsUndefinedCheck(Wt){return Wt[tn.Kind]==="Intersect"?Intersect(Wt):Wt[tn.Kind]==="Union"?Union(Wt):Wt[tn.Kind]==="Not"?Not(Wt):Wt[tn.Kind]==="Undefined"?true:false}Pt.ExtendsUndefinedCheck=ExtendsUndefinedCheck},68936:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Extends=void 0;const tn=en(41743);const nn=en(59405);const an=en(45157);const rn=en(16223);const In=en(64311);const sn=en(20109);function ExtendsResolve(Wt,Pt,en,an){const rn=(0,nn.ExtendsCheck)(Wt,Pt);return rn===nn.ExtendsResult.Union?(0,tn.Union)([en,an]):rn===nn.ExtendsResult.True?en:an}function Extends(Wt,Pt,en,tn,nn={}){return(0,sn.IsMappedResult)(Wt)?(0,In.ExtendsFromMappedResult)(Wt,Pt,en,tn,nn):(0,sn.IsMappedKey)(Wt)?(0,an.CloneType)((0,rn.ExtendsFromMappedKey)(Wt,Pt,en,tn,nn)):(0,an.CloneType)(ExtendsResolve(Wt,Pt,en,tn),nn)}Pt.Extends=Extends},40629:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(59405),Pt);nn(en(16223),Pt);nn(en(64311),Pt);nn(en(1409),Pt);nn(en(68936),Pt)},25023:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ExtractFromMappedResult=void 0;const tn=en(76675);const nn=en(58480);function FromProperties(Wt,Pt){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((en,tn)=>({...en,[tn]:(0,nn.Extract)(Wt[tn],Pt)})),{})}function FromMappedResult(Wt,Pt){return FromProperties(Wt.properties,Pt)}function ExtractFromMappedResult(Wt,Pt){const en=FromMappedResult(Wt,Pt);return(0,tn.MappedResult)(en)}Pt.ExtractFromMappedResult=ExtractFromMappedResult},65638:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ExtractFromTemplateLiteral=void 0;const tn=en(58480);const nn=en(90984);function ExtractFromTemplateLiteral(Wt,Pt){return(0,tn.Extract)((0,nn.TemplateLiteralToUnion)(Wt),Pt)}Pt.ExtractFromTemplateLiteral=ExtractFromTemplateLiteral},58480:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Extract=void 0;const tn=en(41743);const nn=en(22346);const an=en(40629);const rn=en(45157);const In=en(25023);const sn=en(65638);const on=en(20109);function ExtractRest(Wt,Pt){const en=Wt.filter((Wt=>(0,an.ExtendsCheck)(Wt,Pt)!==an.ExtendsResult.False));return en.length===1?en[0]:(0,tn.Union)(en)}function Extract(Wt,Pt,en={}){if((0,on.IsTemplateLiteral)(Wt))return(0,rn.CloneType)((0,sn.ExtractFromTemplateLiteral)(Wt,Pt),en);if((0,on.IsMappedResult)(Wt))return(0,rn.CloneType)((0,In.ExtractFromMappedResult)(Wt,Pt),en);return(0,rn.CloneType)((0,on.IsUnion)(Wt)?ExtractRest(Wt.anyOf,Pt):(0,an.ExtendsCheck)(Wt,Pt)!==an.ExtendsResult.False?Wt:(0,nn.Never)(),en)}Pt.Extract=Extract},14301:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(25023),Pt);nn(en(65638),Pt);nn(en(58480),Pt)},3494:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Function=void 0;const tn=en(45157);const nn=en(48121);function Function(Wt,Pt,en){return{...en,[nn.Kind]:"Function",type:"Function",parameters:(0,tn.CloneRest)(Wt),returns:(0,tn.CloneType)(Pt)}}Pt.Function=Function},72996:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(3494),Pt)},75289:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ValueGuard=Pt.TypeGuard=void 0;Pt.TypeGuard=en(20109);Pt.ValueGuard=en(87280)},20109:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.IsSchema=Pt.IsKind=Pt.IsVoid=Pt.IsUnsafe=Pt.IsUnknown=Pt.IsUint8Array=Pt.IsUnion=Pt.IsUnionLiteral=Pt.IsUndefined=Pt.IsTuple=Pt.IsTransform=Pt.IsThis=Pt.IsTemplateLiteral=Pt.IsSymbol=Pt.IsString=Pt.IsRegExp=Pt.IsRef=Pt.IsRecursive=Pt.IsRecord=Pt.IsPromise=Pt.IsObject=Pt.IsNumber=Pt.IsNull=Pt.IsNot=Pt.IsNever=Pt.IsMappedResult=Pt.IsMappedKey=Pt.IsLiteralValue=Pt.IsLiteral=Pt.IsLiteralBoolean=Pt.IsLiteralNumber=Pt.IsLiteralString=Pt.IsKindOf=Pt.IsIterator=Pt.IsIntersect=Pt.IsProperties=Pt.IsInteger=Pt.IsFunction=Pt.IsDate=Pt.IsConstructor=Pt.IsBoolean=Pt.IsBigInt=Pt.IsAsyncIterator=Pt.IsArray=Pt.IsAny=Pt.IsOptional=Pt.IsReadonly=Pt.TypeGuardUnknownTypeError=void 0;const tn=en(87280);const nn=en(48121);const an=en(94526);class TypeGuardUnknownTypeError extends an.TypeBoxError{}Pt.TypeGuardUnknownTypeError=TypeGuardUnknownTypeError;const rn=["Any","Array","AsyncIterator","BigInt","Boolean","Constructor","Date","Enum","Function","Integer","Intersect","Iterator","Literal","MappedKey","MappedResult","Not","Null","Number","Object","Promise","Record","Ref","RegExp","String","Symbol","TemplateLiteral","This","Tuple","Undefined","Union","Uint8Array","Unknown","Void"];function IsPattern(Wt){try{new RegExp(Wt);return true}catch{return false}}function IsControlCharacterFree(Wt){if(!tn.IsString(Wt))return false;for(let Pt=0;Pt=7&&en<=13||en===27||en===127){return false}}return true}function IsAdditionalProperties(Wt){return IsOptionalBoolean(Wt)||IsSchema(Wt)}function IsOptionalBigInt(Wt){return tn.IsUndefined(Wt)||tn.IsBigInt(Wt)}function IsOptionalNumber(Wt){return tn.IsUndefined(Wt)||tn.IsNumber(Wt)}function IsOptionalBoolean(Wt){return tn.IsUndefined(Wt)||tn.IsBoolean(Wt)}function IsOptionalString(Wt){return tn.IsUndefined(Wt)||tn.IsString(Wt)}function IsOptionalPattern(Wt){return tn.IsUndefined(Wt)||tn.IsString(Wt)&&IsControlCharacterFree(Wt)&&IsPattern(Wt)}function IsOptionalFormat(Wt){return tn.IsUndefined(Wt)||tn.IsString(Wt)&&IsControlCharacterFree(Wt)}function IsOptionalSchema(Wt){return tn.IsUndefined(Wt)||IsSchema(Wt)}function IsReadonly(Wt){return tn.IsObject(Wt)&&Wt[nn.ReadonlyKind]==="Readonly"}Pt.IsReadonly=IsReadonly;function IsOptional(Wt){return tn.IsObject(Wt)&&Wt[nn.OptionalKind]==="Optional"}Pt.IsOptional=IsOptional;function IsAny(Wt){return IsKindOf(Wt,"Any")&&IsOptionalString(Wt.$id)}Pt.IsAny=IsAny;function IsArray(Wt){return IsKindOf(Wt,"Array")&&Wt.type==="array"&&IsOptionalString(Wt.$id)&&IsSchema(Wt.items)&&IsOptionalNumber(Wt.minItems)&&IsOptionalNumber(Wt.maxItems)&&IsOptionalBoolean(Wt.uniqueItems)&&IsOptionalSchema(Wt.contains)&&IsOptionalNumber(Wt.minContains)&&IsOptionalNumber(Wt.maxContains)}Pt.IsArray=IsArray;function IsAsyncIterator(Wt){return IsKindOf(Wt,"AsyncIterator")&&Wt.type==="AsyncIterator"&&IsOptionalString(Wt.$id)&&IsSchema(Wt.items)}Pt.IsAsyncIterator=IsAsyncIterator;function IsBigInt(Wt){return IsKindOf(Wt,"BigInt")&&Wt.type==="bigint"&&IsOptionalString(Wt.$id)&&IsOptionalBigInt(Wt.exclusiveMaximum)&&IsOptionalBigInt(Wt.exclusiveMinimum)&&IsOptionalBigInt(Wt.maximum)&&IsOptionalBigInt(Wt.minimum)&&IsOptionalBigInt(Wt.multipleOf)}Pt.IsBigInt=IsBigInt;function IsBoolean(Wt){return IsKindOf(Wt,"Boolean")&&Wt.type==="boolean"&&IsOptionalString(Wt.$id)}Pt.IsBoolean=IsBoolean;function IsConstructor(Wt){return IsKindOf(Wt,"Constructor")&&Wt.type==="Constructor"&&IsOptionalString(Wt.$id)&&tn.IsArray(Wt.parameters)&&Wt.parameters.every((Wt=>IsSchema(Wt)))&&IsSchema(Wt.returns)}Pt.IsConstructor=IsConstructor;function IsDate(Wt){return IsKindOf(Wt,"Date")&&Wt.type==="Date"&&IsOptionalString(Wt.$id)&&IsOptionalNumber(Wt.exclusiveMaximumTimestamp)&&IsOptionalNumber(Wt.exclusiveMinimumTimestamp)&&IsOptionalNumber(Wt.maximumTimestamp)&&IsOptionalNumber(Wt.minimumTimestamp)&&IsOptionalNumber(Wt.multipleOfTimestamp)}Pt.IsDate=IsDate;function IsFunction(Wt){return IsKindOf(Wt,"Function")&&Wt.type==="Function"&&IsOptionalString(Wt.$id)&&tn.IsArray(Wt.parameters)&&Wt.parameters.every((Wt=>IsSchema(Wt)))&&IsSchema(Wt.returns)}Pt.IsFunction=IsFunction;function IsInteger(Wt){return IsKindOf(Wt,"Integer")&&Wt.type==="integer"&&IsOptionalString(Wt.$id)&&IsOptionalNumber(Wt.exclusiveMaximum)&&IsOptionalNumber(Wt.exclusiveMinimum)&&IsOptionalNumber(Wt.maximum)&&IsOptionalNumber(Wt.minimum)&&IsOptionalNumber(Wt.multipleOf)}Pt.IsInteger=IsInteger;function IsProperties(Wt){return tn.IsObject(Wt)&&Object.entries(Wt).every((([Wt,Pt])=>IsControlCharacterFree(Wt)&&IsSchema(Pt)))}Pt.IsProperties=IsProperties;function IsIntersect(Wt){return IsKindOf(Wt,"Intersect")&&(tn.IsString(Wt.type)&&Wt.type!=="object"?false:true)&&tn.IsArray(Wt.allOf)&&Wt.allOf.every((Wt=>IsSchema(Wt)&&!IsTransform(Wt)))&&IsOptionalString(Wt.type)&&(IsOptionalBoolean(Wt.unevaluatedProperties)||IsOptionalSchema(Wt.unevaluatedProperties))&&IsOptionalString(Wt.$id)}Pt.IsIntersect=IsIntersect;function IsIterator(Wt){return IsKindOf(Wt,"Iterator")&&Wt.type==="Iterator"&&IsOptionalString(Wt.$id)&&IsSchema(Wt.items)}Pt.IsIterator=IsIterator;function IsKindOf(Wt,Pt){return tn.IsObject(Wt)&&nn.Kind in Wt&&Wt[nn.Kind]===Pt}Pt.IsKindOf=IsKindOf;function IsLiteralString(Wt){return IsLiteral(Wt)&&tn.IsString(Wt.const)}Pt.IsLiteralString=IsLiteralString;function IsLiteralNumber(Wt){return IsLiteral(Wt)&&tn.IsNumber(Wt.const)}Pt.IsLiteralNumber=IsLiteralNumber;function IsLiteralBoolean(Wt){return IsLiteral(Wt)&&tn.IsBoolean(Wt.const)}Pt.IsLiteralBoolean=IsLiteralBoolean;function IsLiteral(Wt){return IsKindOf(Wt,"Literal")&&IsOptionalString(Wt.$id)&&IsLiteralValue(Wt.const)}Pt.IsLiteral=IsLiteral;function IsLiteralValue(Wt){return tn.IsBoolean(Wt)||tn.IsNumber(Wt)||tn.IsString(Wt)}Pt.IsLiteralValue=IsLiteralValue;function IsMappedKey(Wt){return IsKindOf(Wt,"MappedKey")&&tn.IsArray(Wt.keys)&&Wt.keys.every((Wt=>tn.IsNumber(Wt)||tn.IsString(Wt)))}Pt.IsMappedKey=IsMappedKey;function IsMappedResult(Wt){return IsKindOf(Wt,"MappedResult")&&IsProperties(Wt.properties)}Pt.IsMappedResult=IsMappedResult;function IsNever(Wt){return IsKindOf(Wt,"Never")&&tn.IsObject(Wt.not)&&Object.getOwnPropertyNames(Wt.not).length===0}Pt.IsNever=IsNever;function IsNot(Wt){return IsKindOf(Wt,"Not")&&IsSchema(Wt.not)}Pt.IsNot=IsNot;function IsNull(Wt){return IsKindOf(Wt,"Null")&&Wt.type==="null"&&IsOptionalString(Wt.$id)}Pt.IsNull=IsNull;function IsNumber(Wt){return IsKindOf(Wt,"Number")&&Wt.type==="number"&&IsOptionalString(Wt.$id)&&IsOptionalNumber(Wt.exclusiveMaximum)&&IsOptionalNumber(Wt.exclusiveMinimum)&&IsOptionalNumber(Wt.maximum)&&IsOptionalNumber(Wt.minimum)&&IsOptionalNumber(Wt.multipleOf)}Pt.IsNumber=IsNumber;function IsObject(Wt){return IsKindOf(Wt,"Object")&&Wt.type==="object"&&IsOptionalString(Wt.$id)&&IsProperties(Wt.properties)&&IsAdditionalProperties(Wt.additionalProperties)&&IsOptionalNumber(Wt.minProperties)&&IsOptionalNumber(Wt.maxProperties)}Pt.IsObject=IsObject;function IsPromise(Wt){return IsKindOf(Wt,"Promise")&&Wt.type==="Promise"&&IsOptionalString(Wt.$id)&&IsSchema(Wt.item)}Pt.IsPromise=IsPromise;function IsRecord(Wt){return IsKindOf(Wt,"Record")&&Wt.type==="object"&&IsOptionalString(Wt.$id)&&IsAdditionalProperties(Wt.additionalProperties)&&tn.IsObject(Wt.patternProperties)&&(Wt=>{const Pt=Object.getOwnPropertyNames(Wt.patternProperties);return Pt.length===1&&IsPattern(Pt[0])&&tn.IsObject(Wt.patternProperties)&&IsSchema(Wt.patternProperties[Pt[0]])})(Wt)}Pt.IsRecord=IsRecord;function IsRecursive(Wt){return tn.IsObject(Wt)&&nn.Hint in Wt&&Wt[nn.Hint]==="Recursive"}Pt.IsRecursive=IsRecursive;function IsRef(Wt){return IsKindOf(Wt,"Ref")&&IsOptionalString(Wt.$id)&&tn.IsString(Wt.$ref)}Pt.IsRef=IsRef;function IsRegExp(Wt){return IsKindOf(Wt,"RegExp")&&IsOptionalString(Wt.$id)&&tn.IsString(Wt.source)&&tn.IsString(Wt.flags)&&IsOptionalNumber(Wt.maxLength)&&IsOptionalNumber(Wt.minLength)}Pt.IsRegExp=IsRegExp;function IsString(Wt){return IsKindOf(Wt,"String")&&Wt.type==="string"&&IsOptionalString(Wt.$id)&&IsOptionalNumber(Wt.minLength)&&IsOptionalNumber(Wt.maxLength)&&IsOptionalPattern(Wt.pattern)&&IsOptionalFormat(Wt.format)}Pt.IsString=IsString;function IsSymbol(Wt){return IsKindOf(Wt,"Symbol")&&Wt.type==="symbol"&&IsOptionalString(Wt.$id)}Pt.IsSymbol=IsSymbol;function IsTemplateLiteral(Wt){return IsKindOf(Wt,"TemplateLiteral")&&Wt.type==="string"&&tn.IsString(Wt.pattern)&&Wt.pattern[0]==="^"&&Wt.pattern[Wt.pattern.length-1]==="$"}Pt.IsTemplateLiteral=IsTemplateLiteral;function IsThis(Wt){return IsKindOf(Wt,"This")&&IsOptionalString(Wt.$id)&&tn.IsString(Wt.$ref)}Pt.IsThis=IsThis;function IsTransform(Wt){return tn.IsObject(Wt)&&nn.TransformKind in Wt}Pt.IsTransform=IsTransform;function IsTuple(Wt){return IsKindOf(Wt,"Tuple")&&Wt.type==="array"&&IsOptionalString(Wt.$id)&&tn.IsNumber(Wt.minItems)&&tn.IsNumber(Wt.maxItems)&&Wt.minItems===Wt.maxItems&&(tn.IsUndefined(Wt.items)&&tn.IsUndefined(Wt.additionalItems)&&Wt.minItems===0||tn.IsArray(Wt.items)&&Wt.items.every((Wt=>IsSchema(Wt))))}Pt.IsTuple=IsTuple;function IsUndefined(Wt){return IsKindOf(Wt,"Undefined")&&Wt.type==="undefined"&&IsOptionalString(Wt.$id)}Pt.IsUndefined=IsUndefined;function IsUnionLiteral(Wt){return IsUnion(Wt)&&Wt.anyOf.every((Wt=>IsLiteralString(Wt)||IsLiteralNumber(Wt)))}Pt.IsUnionLiteral=IsUnionLiteral;function IsUnion(Wt){return IsKindOf(Wt,"Union")&&IsOptionalString(Wt.$id)&&tn.IsObject(Wt)&&tn.IsArray(Wt.anyOf)&&Wt.anyOf.every((Wt=>IsSchema(Wt)))}Pt.IsUnion=IsUnion;function IsUint8Array(Wt){return IsKindOf(Wt,"Uint8Array")&&Wt.type==="Uint8Array"&&IsOptionalString(Wt.$id)&&IsOptionalNumber(Wt.minByteLength)&&IsOptionalNumber(Wt.maxByteLength)}Pt.IsUint8Array=IsUint8Array;function IsUnknown(Wt){return IsKindOf(Wt,"Unknown")&&IsOptionalString(Wt.$id)}Pt.IsUnknown=IsUnknown;function IsUnsafe(Wt){return IsKindOf(Wt,"Unsafe")}Pt.IsUnsafe=IsUnsafe;function IsVoid(Wt){return IsKindOf(Wt,"Void")&&Wt.type==="void"&&IsOptionalString(Wt.$id)}Pt.IsVoid=IsVoid;function IsKind(Wt){return tn.IsObject(Wt)&&nn.Kind in Wt&&tn.IsString(Wt[nn.Kind])&&!rn.includes(Wt[nn.Kind])}Pt.IsKind=IsKind;function IsSchema(Wt){return tn.IsObject(Wt)&&(IsAny(Wt)||IsArray(Wt)||IsBoolean(Wt)||IsBigInt(Wt)||IsAsyncIterator(Wt)||IsConstructor(Wt)||IsDate(Wt)||IsFunction(Wt)||IsInteger(Wt)||IsIntersect(Wt)||IsIterator(Wt)||IsLiteral(Wt)||IsMappedKey(Wt)||IsMappedResult(Wt)||IsNever(Wt)||IsNot(Wt)||IsNull(Wt)||IsNumber(Wt)||IsObject(Wt)||IsPromise(Wt)||IsRecord(Wt)||IsRef(Wt)||IsRegExp(Wt)||IsString(Wt)||IsSymbol(Wt)||IsTemplateLiteral(Wt)||IsThis(Wt)||IsTuple(Wt)||IsUndefined(Wt)||IsUnion(Wt)||IsUint8Array(Wt)||IsUnknown(Wt)||IsUnsafe(Wt)||IsVoid(Wt)||IsKind(Wt))}Pt.IsSchema=IsSchema},87280:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.IsUndefined=Pt.IsUint8Array=Pt.IsSymbol=Pt.IsString=Pt.IsRegExp=Pt.IsObject=Pt.IsNumber=Pt.IsNull=Pt.IsIterator=Pt.IsFunction=Pt.IsDate=Pt.IsBoolean=Pt.IsBigInt=Pt.IsArray=Pt.IsAsyncIterator=void 0;function IsAsyncIterator(Wt){return IsObject(Wt)&&!IsArray(Wt)&&!IsUint8Array(Wt)&&Symbol.asyncIterator in Wt}Pt.IsAsyncIterator=IsAsyncIterator;function IsArray(Wt){return Array.isArray(Wt)}Pt.IsArray=IsArray;function IsBigInt(Wt){return typeof Wt==="bigint"}Pt.IsBigInt=IsBigInt;function IsBoolean(Wt){return typeof Wt==="boolean"}Pt.IsBoolean=IsBoolean;function IsDate(Wt){return Wt instanceof globalThis.Date}Pt.IsDate=IsDate;function IsFunction(Wt){return typeof Wt==="function"}Pt.IsFunction=IsFunction;function IsIterator(Wt){return IsObject(Wt)&&!IsArray(Wt)&&!IsUint8Array(Wt)&&Symbol.iterator in Wt}Pt.IsIterator=IsIterator;function IsNull(Wt){return Wt===null}Pt.IsNull=IsNull;function IsNumber(Wt){return typeof Wt==="number"}Pt.IsNumber=IsNumber;function IsObject(Wt){return typeof Wt==="object"&&Wt!==null}Pt.IsObject=IsObject;function IsRegExp(Wt){return Wt instanceof globalThis.RegExp}Pt.IsRegExp=IsRegExp;function IsString(Wt){return typeof Wt==="string"}Pt.IsString=IsString;function IsSymbol(Wt){return typeof Wt==="symbol"}Pt.IsSymbol=IsSymbol;function IsUint8Array(Wt){return Wt instanceof globalThis.Uint8Array}Pt.IsUint8Array=IsUint8Array;function IsUndefined(Wt){return Wt===undefined}Pt.IsUndefined=IsUndefined},74048:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Increment=void 0;function Increment(Wt){return(parseInt(Wt)+1).toString()}Pt.Increment=Increment},51861:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(74048),Pt)},89777:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(33931),Pt);nn(en(58355),Pt);nn(en(33465),Pt);nn(en(30100),Pt)},33931:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.IndexFromMappedKey=void 0;const tn=en(30100);const nn=en(76675);function MappedIndexPropertyKey(Wt,Pt,en){return{[Pt]:(0,tn.Index)(Wt,[Pt],en)}}function MappedIndexPropertyKeys(Wt,Pt,en){return Pt.reduce(((Pt,tn)=>({...Pt,...MappedIndexPropertyKey(Wt,tn,en)})),{})}function MappedIndexProperties(Wt,Pt,en){return MappedIndexPropertyKeys(Wt,Pt.keys,en)}function IndexFromMappedKey(Wt,Pt,en){const tn=MappedIndexProperties(Wt,Pt,en);return(0,nn.MappedResult)(tn)}Pt.IndexFromMappedKey=IndexFromMappedKey},58355:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.IndexFromMappedResult=void 0;const tn=en(76675);const nn=en(33465);const an=en(89777);function FromProperties(Wt,Pt,en){return globalThis.Object.getOwnPropertyNames(Pt).reduce(((tn,rn)=>({...tn,[rn]:(0,an.Index)(Wt,(0,nn.IndexPropertyKeys)(Pt[rn]),en)})),{})}function FromMappedResult(Wt,Pt,en){return FromProperties(Wt,Pt.properties,en)}function IndexFromMappedResult(Wt,Pt,en){const nn=FromMappedResult(Wt,Pt,en);return(0,tn.MappedResult)(nn)}Pt.IndexFromMappedResult=IndexFromMappedResult},33465:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.IndexPropertyKeys=void 0;const tn=en(90984);const nn=en(20109);function FromTemplateLiteral(Wt){const Pt=(0,tn.TemplateLiteralGenerate)(Wt);return Pt.map((Wt=>Wt.toString()))}function FromUnion(Wt){return Wt.reduce(((Wt,Pt)=>[...Wt,...IndexPropertyKeys(Pt)]),[])}function FromLiteral(Wt){return[Wt.toString()]}function IndexPropertyKeys(Wt){return[...new Set((0,nn.IsTemplateLiteral)(Wt)?FromTemplateLiteral(Wt):(0,nn.IsUnion)(Wt)?FromUnion(Wt.anyOf):(0,nn.IsLiteral)(Wt)?FromLiteral(Wt.const):(0,nn.IsNumber)(Wt)?["[number]"]:(0,nn.IsInteger)(Wt)?["[number]"]:[])]}Pt.IndexPropertyKeys=IndexPropertyKeys},30100:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Index=Pt.IndexFromPropertyKeys=Pt.IndexFromPropertyKey=void 0;const tn=en(22346);const nn=en(32945);const an=en(41743);const rn=en(45157);const In=en(33465);const sn=en(33931);const on=en(58355);const cn=en(20109);function FromRest(Wt,Pt){return Wt.map((Wt=>IndexFromPropertyKey(Wt,Pt)))}function FromIntersectRest(Wt){return Wt.filter((Wt=>!(0,cn.IsNever)(Wt)))}function FromIntersect(Wt,Pt){return(0,nn.IntersectEvaluated)(FromIntersectRest(FromRest(Wt,Pt)))}function FromUnionRest(Wt){return Wt.some((Wt=>(0,cn.IsNever)(Wt)))?[]:Wt}function FromUnion(Wt,Pt){return(0,an.UnionEvaluated)(FromUnionRest(FromRest(Wt,Pt)))}function FromTuple(Wt,Pt){return Pt in Wt?Wt[Pt]:Pt==="[number]"?(0,an.UnionEvaluated)(Wt):(0,tn.Never)()}function FromArray(Wt,Pt){return Pt==="[number]"?Wt:(0,tn.Never)()}function FromProperty(Wt,Pt){return Pt in Wt?Wt[Pt]:(0,tn.Never)()}function IndexFromPropertyKey(Wt,Pt){return(0,cn.IsIntersect)(Wt)?FromIntersect(Wt.allOf,Pt):(0,cn.IsUnion)(Wt)?FromUnion(Wt.anyOf,Pt):(0,cn.IsTuple)(Wt)?FromTuple(Wt.items??[],Pt):(0,cn.IsArray)(Wt)?FromArray(Wt.items,Pt):(0,cn.IsObject)(Wt)?FromProperty(Wt.properties,Pt):(0,tn.Never)()}Pt.IndexFromPropertyKey=IndexFromPropertyKey;function IndexFromPropertyKeys(Wt,Pt){return Pt.map((Pt=>IndexFromPropertyKey(Wt,Pt)))}Pt.IndexFromPropertyKeys=IndexFromPropertyKeys;function FromSchema(Wt,Pt){return(0,an.UnionEvaluated)(IndexFromPropertyKeys(Wt,Pt))}function Index(Wt,Pt,en={}){return(0,cn.IsMappedResult)(Pt)?(0,rn.CloneType)((0,on.IndexFromMappedResult)(Wt,Pt,en)):(0,cn.IsMappedKey)(Pt)?(0,rn.CloneType)((0,sn.IndexFromMappedKey)(Wt,Pt,en)):(0,cn.IsSchema)(Pt)?(0,rn.CloneType)(FromSchema(Wt,(0,In.IndexPropertyKeys)(Pt)),en):(0,rn.CloneType)(FromSchema(Wt,Pt),en)}Pt.Index=Index},33458:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(66396),Pt)},66396:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.InstanceType=void 0;const tn=en(45157);function InstanceType(Wt,Pt={}){return(0,tn.CloneType)(Wt.returns,Pt)}Pt.InstanceType=InstanceType},5578:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(27200),Pt)},27200:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Integer=void 0;const tn=en(48121);function Integer(Wt={}){return{...Wt,[tn.Kind]:"Integer",type:"integer"}}Pt.Integer=Integer},32945:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(29404),Pt);nn(en(42165),Pt);nn(en(55536),Pt)},68937:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.IntersectCreate=void 0;const tn=en(48121);const nn=en(45157);const an=en(20109);function IntersectCreate(Wt,Pt){const en=Wt.every((Wt=>(0,an.IsObject)(Wt)));const rn=(0,an.IsSchema)(Pt.unevaluatedProperties)?{unevaluatedProperties:(0,nn.CloneType)(Pt.unevaluatedProperties)}:{};return Pt.unevaluatedProperties===false||(0,an.IsSchema)(Pt.unevaluatedProperties)||en?{...Pt,...rn,[tn.Kind]:"Intersect",type:"object",allOf:(0,nn.CloneRest)(Wt)}:{...Pt,...rn,[tn.Kind]:"Intersect",allOf:(0,nn.CloneRest)(Wt)}}Pt.IntersectCreate=IntersectCreate},29404:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.IntersectEvaluated=void 0;const tn=en(48121);const nn=en(45157);const an=en(62202);const rn=en(22346);const In=en(31392);const sn=en(68937);const on=en(20109);function IsIntersectOptional(Wt){return Wt.every((Wt=>(0,on.IsOptional)(Wt)))}function RemoveOptionalFromType(Wt){return(0,an.Discard)(Wt,[tn.OptionalKind])}function RemoveOptionalFromRest(Wt){return Wt.map((Wt=>(0,on.IsOptional)(Wt)?RemoveOptionalFromType(Wt):Wt))}function ResolveIntersect(Wt,Pt){return IsIntersectOptional(Wt)?(0,In.Optional)((0,sn.IntersectCreate)(RemoveOptionalFromRest(Wt),Pt)):(0,sn.IntersectCreate)(RemoveOptionalFromRest(Wt),Pt)}function IntersectEvaluated(Wt,Pt={}){if(Wt.length===0)return(0,rn.Never)(Pt);if(Wt.length===1)return(0,nn.CloneType)(Wt[0],Pt);if(Wt.some((Wt=>(0,on.IsTransform)(Wt))))throw new Error("Cannot intersect transform types");return ResolveIntersect(Wt,Pt)}Pt.IntersectEvaluated=IntersectEvaluated},42165:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});const tn=en(48121)},55536:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Intersect=void 0;const tn=en(45157);const nn=en(22346);const an=en(68937);const rn=en(20109);function Intersect(Wt,Pt={}){if(Wt.length===0)return(0,nn.Never)(Pt);if(Wt.length===1)return(0,tn.CloneType)(Wt[0],Pt);if(Wt.some((Wt=>(0,rn.IsTransform)(Wt))))throw new Error("Cannot intersect transform types");return(0,an.IntersectCreate)(Wt,Pt)}Pt.Intersect=Intersect},87241:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Capitalize=void 0;const tn=en(25328);function Capitalize(Wt,Pt={}){return(0,tn.Intrinsic)(Wt,"Capitalize",Pt)}Pt.Capitalize=Capitalize},71095:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(87241),Pt);nn(en(98823),Pt);nn(en(25328),Pt);nn(en(51022),Pt);nn(en(54406),Pt);nn(en(24867),Pt)},98823:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.IntrinsicFromMappedKey=void 0;const tn=en(76675);const nn=en(25328);const an=en(24727);function MappedIntrinsicPropertyKey(Wt,Pt,en){return{[Wt]:(0,nn.Intrinsic)((0,an.Literal)(Wt),Pt,en)}}function MappedIntrinsicPropertyKeys(Wt,Pt,en){return Wt.reduce(((Wt,tn)=>({...Wt,...MappedIntrinsicPropertyKey(tn,Pt,en)})),{})}function MappedIntrinsicProperties(Wt,Pt,en){return MappedIntrinsicPropertyKeys(Wt["keys"],Pt,en)}function IntrinsicFromMappedKey(Wt,Pt,en){const nn=MappedIntrinsicProperties(Wt,Pt,en);return(0,tn.MappedResult)(nn)}Pt.IntrinsicFromMappedKey=IntrinsicFromMappedKey},25328:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Intrinsic=void 0;const tn=en(90984);const nn=en(98823);const an=en(24727);const rn=en(41743);const In=en(20109);function ApplyUncapitalize(Wt){const[Pt,en]=[Wt.slice(0,1),Wt.slice(1)];return[Pt.toLowerCase(),en].join("")}function ApplyCapitalize(Wt){const[Pt,en]=[Wt.slice(0,1),Wt.slice(1)];return[Pt.toUpperCase(),en].join("")}function ApplyUppercase(Wt){return Wt.toUpperCase()}function ApplyLowercase(Wt){return Wt.toLowerCase()}function FromTemplateLiteral(Wt,Pt,en){const nn=(0,tn.TemplateLiteralParseExact)(Wt.pattern);const In=(0,tn.IsTemplateLiteralExpressionFinite)(nn);if(!In)return{...Wt,pattern:FromLiteralValue(Wt.pattern,Pt)};const sn=[...(0,tn.TemplateLiteralExpressionGenerate)(nn)];const on=sn.map((Wt=>(0,an.Literal)(Wt)));const cn=FromRest(on,Pt);const dn=(0,rn.Union)(cn);return(0,tn.TemplateLiteral)([dn],en)}function FromLiteralValue(Wt,Pt){return typeof Wt==="string"?Pt==="Uncapitalize"?ApplyUncapitalize(Wt):Pt==="Capitalize"?ApplyCapitalize(Wt):Pt==="Uppercase"?ApplyUppercase(Wt):Pt==="Lowercase"?ApplyLowercase(Wt):Wt:Wt.toString()}function FromRest(Wt,Pt){return Wt.map((Wt=>Intrinsic(Wt,Pt)))}function Intrinsic(Wt,Pt,en={}){return(0,In.IsMappedKey)(Wt)?(0,nn.IntrinsicFromMappedKey)(Wt,Pt,en):(0,In.IsTemplateLiteral)(Wt)?FromTemplateLiteral(Wt,Pt,Wt):(0,In.IsUnion)(Wt)?(0,rn.Union)(FromRest(Wt.anyOf,Pt),en):(0,In.IsLiteral)(Wt)?(0,an.Literal)(FromLiteralValue(Wt.const,Pt),en):Wt}Pt.Intrinsic=Intrinsic},51022:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Lowercase=void 0;const tn=en(25328);function Lowercase(Wt,Pt={}){return(0,tn.Intrinsic)(Wt,"Lowercase",Pt)}Pt.Lowercase=Lowercase},54406:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Uncapitalize=void 0;const tn=en(25328);function Uncapitalize(Wt,Pt={}){return(0,tn.Intrinsic)(Wt,"Uncapitalize",Pt)}Pt.Uncapitalize=Uncapitalize},24867:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Uppercase=void 0;const tn=en(25328);function Uppercase(Wt,Pt={}){return(0,tn.Intrinsic)(Wt,"Uppercase",Pt)}Pt.Uppercase=Uppercase},30666:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(58698),Pt)},58698:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Iterator=void 0;const tn=en(45157);const nn=en(48121);function Iterator(Wt,Pt={}){return{...Pt,[nn.Kind]:"Iterator",type:"Iterator",items:(0,tn.CloneType)(Wt)}}Pt.Iterator=Iterator},30658:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(10079),Pt);nn(en(41461),Pt);nn(en(80176),Pt)},10079:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.KeyOfFromMappedResult=void 0;const tn=en(76675);const nn=en(80176);function FromProperties(Wt,Pt){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((en,tn)=>({...en,[tn]:(0,nn.KeyOf)(Wt[tn],Pt)})),{})}function FromMappedResult(Wt,Pt){return FromProperties(Wt.properties,Pt)}function KeyOfFromMappedResult(Wt,Pt){const en=FromMappedResult(Wt,Pt);return(0,tn.MappedResult)(en)}Pt.KeyOfFromMappedResult=KeyOfFromMappedResult},41461:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.KeyOfPattern=Pt.KeyOfPropertyKeys=void 0;const tn=en(89925);const nn=en(20109);function FromRest(Wt){return Wt.reduce(((Wt,Pt)=>[...Wt,KeyOfPropertyKeys(Pt)]),[])}function FromIntersect(Wt){const Pt=FromRest(Wt);const en=(0,tn.SetUnionMany)(Pt);return en}function FromUnion(Wt){const Pt=FromRest(Wt);const en=(0,tn.SetIntersectMany)(Pt);return en}function FromTuple(Wt){return Wt.map(((Wt,Pt)=>Pt.toString()))}function FromArray(Wt){return["[number]"]}function FromProperties(Wt){return globalThis.Object.getOwnPropertyNames(Wt)}function FromPatternProperties(Wt){if(!an)return[];const Pt=globalThis.Object.getOwnPropertyNames(Wt);return Pt.map((Wt=>Wt[0]==="^"&&Wt[Wt.length-1]==="$"?Wt.slice(1,Wt.length-1):Wt))}function KeyOfPropertyKeys(Wt){return(0,nn.IsIntersect)(Wt)?FromIntersect(Wt.allOf):(0,nn.IsUnion)(Wt)?FromUnion(Wt.anyOf):(0,nn.IsTuple)(Wt)?FromTuple(Wt.items??[]):(0,nn.IsArray)(Wt)?FromArray(Wt.items):(0,nn.IsObject)(Wt)?FromProperties(Wt.properties):(0,nn.IsRecord)(Wt)?FromPatternProperties(Wt.patternProperties):[]}Pt.KeyOfPropertyKeys=KeyOfPropertyKeys;let an=false;function KeyOfPattern(Wt){an=true;const Pt=KeyOfPropertyKeys(Wt);an=false;const en=Pt.map((Wt=>`(${Wt})`));return`^(${en.join("|")})$`}Pt.KeyOfPattern=KeyOfPattern},80176:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.KeyOf=Pt.KeyOfPropertyKeysToRest=void 0;const tn=en(24727);const nn=en(46621);const an=en(41461);const rn=en(41743);const In=en(45157);const sn=en(10079);const on=en(20109);function KeyOfPropertyKeysToRest(Wt){return Wt.map((Wt=>Wt==="[number]"?(0,nn.Number)():(0,tn.Literal)(Wt)))}Pt.KeyOfPropertyKeysToRest=KeyOfPropertyKeysToRest;function KeyOf(Wt,Pt={}){if((0,on.IsMappedResult)(Wt)){return(0,sn.KeyOfFromMappedResult)(Wt,Pt)}else{const en=(0,an.KeyOfPropertyKeys)(Wt);const tn=KeyOfPropertyKeysToRest(en);const nn=(0,rn.UnionEvaluated)(tn);return(0,In.CloneType)(nn,Pt)}}Pt.KeyOf=KeyOf},24727:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(79152),Pt)},79152:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Literal=void 0;const tn=en(48121);function Literal(Wt,Pt={}){return{...Pt,[tn.Kind]:"Literal",const:Wt,type:typeof Wt}}Pt.Literal=Literal},76675:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(55346),Pt);nn(en(19328),Pt);nn(en(12176),Pt)},55346:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.MappedKey=void 0;const tn=en(48121);function MappedKey(Wt){return{[tn.Kind]:"MappedKey",keys:Wt}}Pt.MappedKey=MappedKey},19328:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.MappedResult=void 0;const tn=en(48121);function MappedResult(Wt){return{[tn.Kind]:"MappedResult",properties:Wt}}Pt.MappedResult=MappedResult},12176:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Mapped=Pt.MappedFunctionReturnType=void 0;const tn=en(48121);const nn=en(45157);const an=en(62202);const rn=en(59809);const In=en(32733);const sn=en(86232);const on=en(72996);const cn=en(89777);const dn=en(32945);const un=en(30666);const pn=en(24727);const mn=en(13871);const bn=en(31392);const Gn=en(59573);const hn=en(4102);const Zn=en(82894);const An=en(41743);const Wn=en(89925);const Nn=en(19328);const gn=en(20109);function FromMappedResult(Wt,Pt){return Wt in Pt?FromSchemaType(Wt,Pt[Wt]):(0,Nn.MappedResult)(Pt)}function MappedKeyToKnownMappedResultProperties(Wt){return{[Wt]:(0,pn.Literal)(Wt)}}function MappedKeyToUnknownMappedResultProperties(Wt){return Wt.reduce(((Wt,Pt)=>({...Wt,[Pt]:(0,pn.Literal)(Pt)})),{})}function MappedKeyToMappedResultProperties(Wt,Pt){return(0,Wn.SetIncludes)(Pt,Wt)?MappedKeyToKnownMappedResultProperties(Wt):MappedKeyToUnknownMappedResultProperties(Pt)}function FromMappedKey(Wt,Pt){const en=MappedKeyToMappedResultProperties(Wt,Pt);return FromMappedResult(Wt,en)}function FromRest(Wt,Pt){return Pt.map((Pt=>FromSchemaType(Wt,Pt)))}function FromProperties(Wt,Pt){return globalThis.Object.getOwnPropertyNames(Pt).reduce(((en,tn)=>({...en,[tn]:FromSchemaType(Wt,Pt[tn])})),{})}function FromSchemaType(Wt,Pt){return(0,gn.IsOptional)(Pt)?(0,bn.Optional)(FromSchemaType(Wt,(0,an.Discard)(Pt,[tn.OptionalKind]))):(0,gn.IsReadonly)(Pt)?(0,hn.Readonly)(FromSchemaType(Wt,(0,an.Discard)(Pt,[tn.ReadonlyKind]))):(0,gn.IsMappedResult)(Pt)?FromMappedResult(Wt,Pt.properties):(0,gn.IsMappedKey)(Pt)?FromMappedKey(Wt,Pt.keys):(0,gn.IsConstructor)(Pt)?(0,sn.Constructor)(FromRest(Wt,Pt.parameters),FromSchemaType(Wt,Pt.returns)):(0,gn.IsFunction)(Pt)?(0,on.Function)(FromRest(Wt,Pt.parameters),FromSchemaType(Wt,Pt.returns)):(0,gn.IsAsyncIterator)(Pt)?(0,In.AsyncIterator)(FromSchemaType(Wt,Pt.items)):(0,gn.IsIterator)(Pt)?(0,un.Iterator)(FromSchemaType(Wt,Pt.items)):(0,gn.IsIntersect)(Pt)?(0,dn.Intersect)(FromRest(Wt,Pt.allOf)):(0,gn.IsUnion)(Pt)?(0,An.Union)(FromRest(Wt,Pt.anyOf)):(0,gn.IsTuple)(Pt)?(0,Zn.Tuple)(FromRest(Wt,Pt.items??[])):(0,gn.IsObject)(Pt)?(0,mn.Object)(FromProperties(Wt,Pt.properties)):(0,gn.IsArray)(Pt)?(0,rn.Array)(FromSchemaType(Wt,Pt.items)):(0,gn.IsPromise)(Pt)?(0,Gn.Promise)(FromSchemaType(Wt,Pt.item)):Pt}function MappedFunctionReturnType(Wt,Pt,en={}){return Wt.reduce(((Wt,en)=>({...Wt,[en]:FromSchemaType(en,Pt)})),{})}Pt.MappedFunctionReturnType=MappedFunctionReturnType;function Mapped(Wt,Pt,en={}){const an=(0,gn.IsSchema)(Wt)?(0,cn.IndexPropertyKeys)(Wt):Wt;const rn=Pt({[tn.Kind]:"MappedKey",keys:an});const In=MappedFunctionReturnType(an,rn);return(0,nn.CloneType)((0,mn.Object)(In),en)}Pt.Mapped=Mapped},22346:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(55348),Pt)},55348:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Never=void 0;const tn=en(48121);function Never(Wt={}){return{...Wt,[tn.Kind]:"Never",not:{}}}Pt.Never=Never},9741:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(13064),Pt)},13064:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Not=void 0;const tn=en(45157);const nn=en(48121);function Not(Wt,Pt){return{...Pt,[nn.Kind]:"Not",not:(0,tn.CloneType)(Wt)}}Pt.Not=Not},4513:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(35608),Pt)},35608:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Null=void 0;const tn=en(48121);function Null(Wt={}){return{...Wt,[tn.Kind]:"Null",type:"null"}}Pt.Null=Null},46621:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(61864),Pt)},61864:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Number=void 0;const tn=en(48121);function Number(Wt={}){return{...Wt,[tn.Kind]:"Number",type:"number"}}Pt.Number=Number},13871:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(49312),Pt)},49312:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Object=void 0;const tn=en(45157);const nn=en(48121);const an=en(20109);function _Object(Wt,Pt={}){const en=globalThis.Object.getOwnPropertyNames(Wt);const rn=en.filter((Pt=>(0,an.IsOptional)(Wt[Pt])));const In=en.filter((Wt=>!rn.includes(Wt)));const sn=(0,an.IsSchema)(Pt.additionalProperties)?{additionalProperties:(0,tn.CloneType)(Pt.additionalProperties)}:{};const on=en.reduce(((Pt,en)=>({...Pt,[en]:(0,tn.CloneType)(Wt[en])})),{});return In.length>0?{...Pt,...sn,[nn.Kind]:"Object",type:"object",properties:on,required:In}:{...Pt,...sn,[nn.Kind]:"Object",type:"object",properties:on}}Pt.Object=_Object},56497:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(52580),Pt);nn(en(60175),Pt);nn(en(49728),Pt)},52580:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.OmitFromMappedKey=void 0;const tn=en(76675);const nn=en(49728);function FromPropertyKey(Wt,Pt,en){return{[Pt]:(0,nn.Omit)(Wt,[Pt],en)}}function FromPropertyKeys(Wt,Pt,en){return Pt.reduce(((Pt,tn)=>({...Pt,...FromPropertyKey(Wt,tn,en)})),{})}function FromMappedKey(Wt,Pt,en){return FromPropertyKeys(Wt,Pt.keys,en)}function OmitFromMappedKey(Wt,Pt,en){const nn=FromMappedKey(Wt,Pt,en);return(0,tn.MappedResult)(nn)}Pt.OmitFromMappedKey=OmitFromMappedKey},60175:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.OmitFromMappedResult=void 0;const tn=en(76675);const nn=en(49728);function FromProperties(Wt,Pt,en){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((tn,an)=>({...tn,[an]:(0,nn.Omit)(Wt[an],Pt,en)})),{})}function FromMappedResult(Wt,Pt,en){return FromProperties(Wt.properties,Pt,en)}function OmitFromMappedResult(Wt,Pt,en){const nn=FromMappedResult(Wt,Pt,en);return(0,tn.MappedResult)(nn)}Pt.OmitFromMappedResult=OmitFromMappedResult},49728:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Omit=void 0;const tn=en(32945);const nn=en(41743);const an=en(13871);const rn=en(89777);const In=en(62202);const sn=en(48121);const on=en(45157);const cn=en(52580);const dn=en(60175);const un=en(20109);function FromIntersect(Wt,Pt){return Wt.map((Wt=>OmitResolve(Wt,Pt)))}function FromUnion(Wt,Pt){return Wt.map((Wt=>OmitResolve(Wt,Pt)))}function FromProperty(Wt,Pt){const{[Pt]:en,...tn}=Wt;return tn}function FromProperties(Wt,Pt){return Pt.reduce(((Wt,Pt)=>FromProperty(Wt,Pt)),Wt)}function OmitResolve(Wt,Pt){return(0,un.IsIntersect)(Wt)?(0,tn.Intersect)(FromIntersect(Wt.allOf,Pt)):(0,un.IsUnion)(Wt)?(0,nn.Union)(FromUnion(Wt.anyOf,Pt)):(0,un.IsObject)(Wt)?(0,an.Object)(FromProperties(Wt.properties,Pt)):(0,an.Object)({})}function Omit(Wt,Pt,en={}){if((0,un.IsMappedKey)(Pt))return(0,cn.OmitFromMappedKey)(Wt,Pt,en);if((0,un.IsMappedResult)(Wt))return(0,dn.OmitFromMappedResult)(Wt,Pt,en);const tn=(0,un.IsSchema)(Pt)?(0,rn.IndexPropertyKeys)(Pt):Pt;const nn=(0,In.Discard)(Wt,[sn.TransformKind,"$id","required"]);const an=(0,on.CloneType)(OmitResolve(Wt,tn),en);return{...nn,...an}}Pt.Omit=Omit},31392:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(90313),Pt);nn(en(28266),Pt)},90313:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.OptionalFromMappedResult=void 0;const tn=en(76675);const nn=en(28266);function FromProperties(Wt,Pt){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((en,tn)=>({...en,[tn]:(0,nn.Optional)(Wt[tn],Pt)})),{})}function FromMappedResult(Wt,Pt){return FromProperties(Wt.properties,Pt)}function OptionalFromMappedResult(Wt,Pt){const en=FromMappedResult(Wt,Pt);return(0,tn.MappedResult)(en)}Pt.OptionalFromMappedResult=OptionalFromMappedResult},28266:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Optional=void 0;const tn=en(48121);const nn=en(45157);const an=en(62202);const rn=en(90313);const In=en(20109);function RemoveOptional(Wt){return(0,an.Discard)((0,nn.CloneType)(Wt),[tn.OptionalKind])}function AddOptional(Wt){return{...(0,nn.CloneType)(Wt),[tn.OptionalKind]:"Optional"}}function OptionalWithFlag(Wt,Pt){return Pt===false?RemoveOptional(Wt):AddOptional(Wt)}function Optional(Wt,Pt){const en=Pt??true;return(0,In.IsMappedResult)(Wt)?(0,rn.OptionalFromMappedResult)(Wt,en):OptionalWithFlag(Wt,en)}Pt.Optional=Optional},80264:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(27405),Pt)},27405:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Parameters=void 0;const tn=en(82894);const nn=en(45157);function Parameters(Wt,Pt={}){return(0,tn.Tuple)((0,nn.CloneRest)(Wt.parameters),{...Pt})}Pt.Parameters=Parameters},96405:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(25995),Pt);nn(en(84204),Pt)},25995:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.PartialFromMappedResult=void 0;const tn=en(76675);const nn=en(84204);function FromProperties(Wt,Pt){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((en,tn)=>({...en,[tn]:(0,nn.Partial)(Wt[tn],Pt)})),{})}function FromMappedResult(Wt,Pt){return FromProperties(Wt.properties,Pt)}function PartialFromMappedResult(Wt,Pt){const en=FromMappedResult(Wt,Pt);return(0,tn.MappedResult)(en)}Pt.PartialFromMappedResult=PartialFromMappedResult},84204:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Partial=void 0;const tn=en(31392);const nn=en(13871);const an=en(32945);const rn=en(41743);const In=en(62202);const sn=en(48121);const on=en(45157);const cn=en(25995);const dn=en(20109);function FromRest(Wt){return Wt.map((Wt=>PartialResolve(Wt)))}function FromProperties(Wt){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((Pt,en)=>({...Pt,[en]:(0,tn.Optional)(Wt[en])})),{})}function PartialResolve(Wt){return(0,dn.IsIntersect)(Wt)?(0,an.Intersect)(FromRest(Wt.allOf)):(0,dn.IsUnion)(Wt)?(0,rn.Union)(FromRest(Wt.anyOf)):(0,dn.IsObject)(Wt)?(0,nn.Object)(FromProperties(Wt.properties)):(0,nn.Object)({})}function Partial(Wt,Pt={}){if((0,dn.IsMappedResult)(Wt))return(0,cn.PartialFromMappedResult)(Wt,Pt);const en=(0,In.Discard)(Wt,[sn.TransformKind,"$id","required"]);const tn=(0,on.CloneType)(PartialResolve(Wt),Pt);return{...en,...tn}}Pt.Partial=Partial},50059:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(7992),Pt)},7992:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.PatternStringExact=Pt.PatternNumberExact=Pt.PatternBooleanExact=Pt.PatternString=Pt.PatternNumber=Pt.PatternBoolean=void 0;Pt.PatternBoolean="(true|false)";Pt.PatternNumber="(0|[1-9][0-9]*)";Pt.PatternString="(.*)";Pt.PatternBooleanExact=`^${Pt.PatternBoolean}$`;Pt.PatternNumberExact=`^${Pt.PatternNumber}$`;Pt.PatternStringExact=`^${Pt.PatternString}$`},53861:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(85827),Pt);nn(en(40011),Pt);nn(en(60940),Pt)},85827:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.PickFromMappedKey=void 0;const tn=en(76675);const nn=en(60940);function FromPropertyKey(Wt,Pt,en){return{[Pt]:(0,nn.Pick)(Wt,[Pt],en)}}function FromPropertyKeys(Wt,Pt,en){return Pt.reduce(((Pt,tn)=>({...Pt,...FromPropertyKey(Wt,tn,en)})),{})}function FromMappedKey(Wt,Pt,en){return FromPropertyKeys(Wt,Pt.keys,en)}function PickFromMappedKey(Wt,Pt,en){const nn=FromMappedKey(Wt,Pt,en);return(0,tn.MappedResult)(nn)}Pt.PickFromMappedKey=PickFromMappedKey},40011:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.PickFromMappedResult=void 0;const tn=en(76675);const nn=en(60940);function FromProperties(Wt,Pt,en){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((tn,an)=>({...tn,[an]:(0,nn.Pick)(Wt[an],Pt,en)})),{})}function FromMappedResult(Wt,Pt,en){return FromProperties(Wt.properties,Pt,en)}function PickFromMappedResult(Wt,Pt,en){const nn=FromMappedResult(Wt,Pt,en);return(0,tn.MappedResult)(nn)}Pt.PickFromMappedResult=PickFromMappedResult},60940:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Pick=void 0;const tn=en(32945);const nn=en(41743);const an=en(13871);const rn=en(89777);const In=en(62202);const sn=en(48121);const on=en(45157);const cn=en(85827);const dn=en(40011);const un=en(20109);function FromIntersect(Wt,Pt){return Wt.map((Wt=>PickResolve(Wt,Pt)))}function FromUnion(Wt,Pt){return Wt.map((Wt=>PickResolve(Wt,Pt)))}function FromProperties(Wt,Pt){return Pt.reduce(((Pt,en)=>en in Wt?{...Pt,[en]:Wt[en]}:Pt),{})}function PickResolve(Wt,Pt){return(0,un.IsIntersect)(Wt)?(0,tn.Intersect)(FromIntersect(Wt.allOf,Pt)):(0,un.IsUnion)(Wt)?(0,nn.Union)(FromUnion(Wt.anyOf,Pt)):(0,un.IsObject)(Wt)?(0,an.Object)(FromProperties(Wt.properties,Pt)):(0,an.Object)({})}function Pick(Wt,Pt,en={}){if((0,un.IsMappedKey)(Pt))return(0,cn.PickFromMappedKey)(Wt,Pt,en);if((0,un.IsMappedResult)(Wt))return(0,dn.PickFromMappedResult)(Wt,Pt,en);const tn=(0,un.IsSchema)(Pt)?(0,rn.IndexPropertyKeys)(Pt):Pt;const nn=(0,In.Discard)(Wt,[sn.TransformKind,"$id","required"]);const an=(0,on.CloneType)(PickResolve(Wt,tn),en);return{...nn,...an}}Pt.Pick=Pick},59573:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(85932),Pt)},85932:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Promise=void 0;const tn=en(45157);const nn=en(48121);function Promise(Wt,Pt={}){return{...Pt,[nn.Kind]:"Promise",type:"Promise",item:(0,tn.CloneType)(Wt)}}Pt.Promise=Promise},51257:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(15600),Pt)},15600:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ReadonlyOptional=void 0;const tn=en(4102);const nn=en(31392);function ReadonlyOptional(Wt){return(0,tn.Readonly)((0,nn.Optional)(Wt))}Pt.ReadonlyOptional=ReadonlyOptional},4102:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(10725),Pt);nn(en(52902),Pt)},10725:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ReadonlyFromMappedResult=void 0;const tn=en(76675);const nn=en(52902);function FromProperties(Wt,Pt){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((en,tn)=>({...en,[tn]:(0,nn.Readonly)(Wt[tn],Pt)})),{})}function FromMappedResult(Wt,Pt){return FromProperties(Wt.properties,Pt)}function ReadonlyFromMappedResult(Wt,Pt){const en=FromMappedResult(Wt,Pt);return(0,tn.MappedResult)(en)}Pt.ReadonlyFromMappedResult=ReadonlyFromMappedResult},52902:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Readonly=void 0;const tn=en(48121);const nn=en(45157);const an=en(62202);const rn=en(10725);const In=en(20109);function RemoveReadonly(Wt){return(0,an.Discard)((0,nn.CloneType)(Wt),[tn.ReadonlyKind])}function AddReadonly(Wt){return{...(0,nn.CloneType)(Wt),[tn.ReadonlyKind]:"Readonly"}}function ReadonlyWithFlag(Wt,Pt){return Pt===false?RemoveReadonly(Wt):AddReadonly(Wt)}function Readonly(Wt,Pt){const en=Pt??true;return(0,In.IsMappedResult)(Wt)?(0,rn.ReadonlyFromMappedResult)(Wt,en):ReadonlyWithFlag(Wt,en)}Pt.Readonly=Readonly},59961:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(40580),Pt)},40580:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Record=void 0;const tn=en(13871);const nn=en(22346);const an=en(41743);const rn=en(90984);const In=en(50059);const sn=en(89777);const on=en(48121);const cn=en(45157);const dn=en(87280);const un=en(20109);function RecordCreateFromPattern(Wt,Pt,en){return{...en,[on.Kind]:"Record",type:"object",patternProperties:{[Wt]:(0,cn.CloneType)(Pt)}}}function RecordCreateFromKeys(Wt,Pt,en){const nn=Wt.reduce(((Wt,en)=>({...Wt,[en]:(0,cn.CloneType)(Pt)})),{});return(0,tn.Object)(nn,{...en,[on.Hint]:"Record"})}function FromTemplateLiteralKey(Wt,Pt,en){return(0,rn.IsTemplateLiteralFinite)(Wt)?RecordCreateFromKeys((0,sn.IndexPropertyKeys)(Wt),Pt,en):RecordCreateFromPattern(Wt.pattern,Pt,en)}function FromUnionKey(Wt,Pt,en){return RecordCreateFromKeys((0,sn.IndexPropertyKeys)((0,an.Union)(Wt)),Pt,en)}function FromLiteralKey(Wt,Pt,en){return RecordCreateFromKeys([Wt.toString()],Pt,en)}function FromRegExpKey(Wt,Pt,en){return RecordCreateFromPattern(Wt.source,Pt,en)}function FromStringKey(Wt,Pt,en){const tn=(0,dn.IsUndefined)(Wt.pattern)?In.PatternStringExact:Wt.pattern;return RecordCreateFromPattern(tn,Pt,en)}function FromIntegerKey(Wt,Pt,en){return RecordCreateFromPattern(In.PatternNumberExact,Pt,en)}function FromNumberKey(Wt,Pt,en){return RecordCreateFromPattern(In.PatternNumberExact,Pt,en)}function Record(Wt,Pt,en={}){return(0,un.IsUnion)(Wt)?FromUnionKey(Wt.anyOf,Pt,en):(0,un.IsTemplateLiteral)(Wt)?FromTemplateLiteralKey(Wt,Pt,en):(0,un.IsLiteral)(Wt)?FromLiteralKey(Wt.const,Pt,en):(0,un.IsInteger)(Wt)?FromIntegerKey(Wt,Pt,en):(0,un.IsNumber)(Wt)?FromNumberKey(Wt,Pt,en):(0,un.IsRegExp)(Wt)?FromRegExpKey(Wt,Pt,en):(0,un.IsString)(Wt)?FromStringKey(Wt,Pt,en):(0,nn.Never)(en)}Pt.Record=Record},81816:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(81636),Pt)},81636:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Recursive=void 0;const tn=en(45157);const nn=en(87280);const an=en(48121);let rn=0;function Recursive(Wt,Pt={}){if((0,nn.IsUndefined)(Pt.$id))Pt.$id=`T${rn++}`;const en=Wt({[an.Kind]:"This",$ref:`${Pt.$id}`});en.$id=Pt.$id;return(0,tn.CloneType)({...Pt,[an.Hint]:"Recursive",...en})}Pt.Recursive=Recursive},29105:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(98264),Pt)},98264:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Ref=void 0;const tn=en(48121);const nn=en(87280);function Ref(Wt,Pt={}){if((0,nn.IsString)(Wt))return{...Pt,[tn.Kind]:"Ref",$ref:Wt};if((0,nn.IsUndefined)(Wt.$id))throw new Error("Reference target type must specify an $id");return{...Pt,[tn.Kind]:"Ref",$ref:Wt.$id}}Pt.Ref=Ref},34865:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(21260),Pt)},21260:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.RegExp=void 0;const tn=en(87280);const nn=en(48121);function RegExp(Wt,Pt={}){const en=(0,tn.IsString)(Wt)?new globalThis.RegExp(Wt):Wt;return{...Pt,[nn.Kind]:"RegExp",type:"RegExp",source:en.source,flags:en.flags}}Pt.RegExp=RegExp},34964:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Get=Pt.Set=Pt.Has=Pt.Delete=Pt.Clear=Pt.Entries=void 0;const en=new Map;function Entries(){return new Map(en)}Pt.Entries=Entries;function Clear(){return en.clear()}Pt.Clear=Clear;function Delete(Wt){return en.delete(Wt)}Pt.Delete=Delete;function Has(Wt){return en.has(Wt)}Pt.Has=Has;function Set(Wt,Pt){en.set(Wt,Pt)}Pt.Set=Set;function Get(Wt){return en.get(Wt)}Pt.Get=Get},97759:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TypeRegistry=Pt.FormatRegistry=void 0;Pt.FormatRegistry=en(34964);Pt.TypeRegistry=en(80019)},80019:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Get=Pt.Set=Pt.Has=Pt.Delete=Pt.Clear=Pt.Entries=void 0;const en=new Map;function Entries(){return new Map(en)}Pt.Entries=Entries;function Clear(){return en.clear()}Pt.Clear=Clear;function Delete(Wt){return en.delete(Wt)}Pt.Delete=Delete;function Has(Wt){return en.has(Wt)}Pt.Has=Has;function Set(Wt,Pt){en.set(Wt,Pt)}Pt.Set=Set;function Get(Wt){return en.get(Wt)}Pt.Get=Get},83397:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(82211),Pt);nn(en(72964),Pt)},82211:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.RequiredFromMappedResult=void 0;const tn=en(76675);const nn=en(72964);function FromProperties(Wt,Pt){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((en,tn)=>({...en,[tn]:(0,nn.Required)(Wt[tn],Pt)})),{})}function FromMappedResult(Wt,Pt){return FromProperties(Wt.properties,Pt)}function RequiredFromMappedResult(Wt,Pt){const en=FromMappedResult(Wt,Pt);return(0,tn.MappedResult)(en)}Pt.RequiredFromMappedResult=RequiredFromMappedResult},72964:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Required=void 0;const tn=en(32945);const nn=en(41743);const an=en(13871);const rn=en(48121);const In=en(45157);const sn=en(62202);const on=en(82211);const cn=en(20109);function FromRest(Wt){return Wt.map((Wt=>RequiredResolve(Wt)))}function FromProperties(Wt){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((Pt,en)=>({...Pt,[en]:(0,sn.Discard)(Wt[en],[rn.OptionalKind])})),{})}function RequiredResolve(Wt){return(0,cn.IsIntersect)(Wt)?(0,tn.Intersect)(FromRest(Wt.allOf)):(0,cn.IsUnion)(Wt)?(0,nn.Union)(FromRest(Wt.anyOf)):(0,cn.IsObject)(Wt)?(0,an.Object)(FromProperties(Wt.properties)):(0,an.Object)({})}function Required(Wt,Pt={}){if((0,cn.IsMappedResult)(Wt)){return(0,on.RequiredFromMappedResult)(Wt,Pt)}else{const en=(0,sn.Discard)(Wt,[rn.TransformKind,"$id","required"]);const tn=(0,In.CloneType)(RequiredResolve(Wt),Pt);return{...en,...tn}}}Pt.Required=Required},47686:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(96538),Pt)},96538:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Rest=void 0;const tn=en(45157);const nn=en(20109);function RestResolve(Wt){return(0,nn.IsIntersect)(Wt)?[...Wt.allOf]:(0,nn.IsUnion)(Wt)?[...Wt.anyOf]:(0,nn.IsTuple)(Wt)?[...Wt.items??[]]:[]}function Rest(Wt){return(0,tn.CloneRest)(RestResolve(Wt))}Pt.Rest=Rest},89861:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(45316),Pt)},45316:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ReturnType=void 0;const tn=en(45157);function ReturnType(Wt,Pt={}){return(0,tn.CloneType)(Wt.returns,Pt)}Pt.ReturnType=ReturnType},85566:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true})},94987:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(85566),Pt);nn(en(49016),Pt)},49016:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});const tn=en(48121)},89925:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(36393),Pt)},36393:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.SetUnionMany=Pt.SetIntersectMany=Pt.SetComplement=Pt.SetUnion=Pt.SetIntersect=Pt.SetDistinct=Pt.SetIsSubset=Pt.SetIncludes=void 0;function SetIncludes(Wt,Pt){return Wt.includes(Pt)}Pt.SetIncludes=SetIncludes;function SetIsSubset(Wt,Pt){return Wt.every((Wt=>SetIncludes(Pt,Wt)))}Pt.SetIsSubset=SetIsSubset;function SetDistinct(Wt){return[...new Set(Wt)]}Pt.SetDistinct=SetDistinct;function SetIntersect(Wt,Pt){return Wt.filter((Wt=>Pt.includes(Wt)))}Pt.SetIntersect=SetIntersect;function SetUnion(Wt,Pt){return[...Wt,...Pt]}Pt.SetUnion=SetUnion;function SetComplement(Wt,Pt){return Wt.filter((Wt=>!Pt.includes(Wt)))}Pt.SetComplement=SetComplement;function SetIntersectManyResolve(Wt,Pt){return Wt.reduce(((Wt,Pt)=>SetIntersect(Wt,Pt)),Pt)}function SetIntersectMany(Wt){return Wt.length===1?Wt[0]:Wt.length>1?SetIntersectManyResolve(Wt.slice(1),Wt[0]):[]}Pt.SetIntersectMany=SetIntersectMany;function SetUnionMany(Wt){return Wt.reduce(((Wt,Pt)=>[...Wt,...Pt]),[])}Pt.SetUnionMany=SetUnionMany},2222:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(23230),Pt)},23230:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true})},94313:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(82416),Pt)},82416:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Strict=void 0;function Strict(Wt){return JSON.parse(JSON.stringify(Wt))}Pt.Strict=Strict},69429:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(95588),Pt)},95588:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.String=void 0;const tn=en(48121);function String(Wt={}){return{...Wt,[tn.Kind]:"String",type:"string"}}Pt.String=String},69656:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(27194),Pt)},27194:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Symbol=void 0;const tn=en(48121);function Symbol(Wt){return{...Wt,[tn.Kind]:"Symbol",type:"symbol"}}Pt.Symbol=Symbol},48121:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(51616),Pt)},51616:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Kind=Pt.Hint=Pt.OptionalKind=Pt.ReadonlyKind=Pt.TransformKind=void 0;Pt.TransformKind=Symbol.for("TypeBox.Transform");Pt.ReadonlyKind=Symbol.for("TypeBox.Readonly");Pt.OptionalKind=Symbol.for("TypeBox.Optional");Pt.Hint=Symbol.for("TypeBox.Hint");Pt.Kind=Symbol.for("TypeBox.Kind")},6313:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.IsTemplateLiteralFinite=Pt.IsTemplateLiteralExpressionFinite=Pt.TemplateLiteralFiniteError=void 0;const tn=en(31739);const nn=en(94526);class TemplateLiteralFiniteError extends nn.TypeBoxError{}Pt.TemplateLiteralFiniteError=TemplateLiteralFiniteError;function IsNumberExpression(Wt){return Wt.type==="or"&&Wt.expr.length===2&&Wt.expr[0].type==="const"&&Wt.expr[0].const==="0"&&Wt.expr[1].type==="const"&&Wt.expr[1].const==="[1-9][0-9]*"}function IsBooleanExpression(Wt){return Wt.type==="or"&&Wt.expr.length===2&&Wt.expr[0].type==="const"&&Wt.expr[0].const==="true"&&Wt.expr[1].type==="const"&&Wt.expr[1].const==="false"}function IsStringExpression(Wt){return Wt.type==="const"&&Wt.const===".*"}function IsTemplateLiteralExpressionFinite(Wt){return IsNumberExpression(Wt)||IsStringExpression(Wt)?false:IsBooleanExpression(Wt)?true:Wt.type==="and"?Wt.expr.every((Wt=>IsTemplateLiteralExpressionFinite(Wt))):Wt.type==="or"?Wt.expr.every((Wt=>IsTemplateLiteralExpressionFinite(Wt))):Wt.type==="const"?true:(()=>{throw new TemplateLiteralFiniteError(`Unknown expression type`)})()}Pt.IsTemplateLiteralExpressionFinite=IsTemplateLiteralExpressionFinite;function IsTemplateLiteralFinite(Wt){const Pt=(0,tn.TemplateLiteralParseExact)(Wt.pattern);return IsTemplateLiteralExpressionFinite(Pt)}Pt.IsTemplateLiteralFinite=IsTemplateLiteralFinite},41517:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TemplateLiteralGenerate=Pt.TemplateLiteralExpressionGenerate=Pt.TemplateLiteralGenerateError=void 0;const tn=en(6313);const nn=en(31739);const an=en(94526);class TemplateLiteralGenerateError extends an.TypeBoxError{}Pt.TemplateLiteralGenerateError=TemplateLiteralGenerateError;function*GenerateReduce(Wt){if(Wt.length===1)return yield*Wt[0];for(const Pt of Wt[0]){for(const en of GenerateReduce(Wt.slice(1))){yield`${Pt}${en}`}}}function*GenerateAnd(Wt){return yield*GenerateReduce(Wt.expr.map((Wt=>[...TemplateLiteralExpressionGenerate(Wt)])))}function*GenerateOr(Wt){for(const Pt of Wt.expr)yield*TemplateLiteralExpressionGenerate(Pt)}function*GenerateConst(Wt){return yield Wt.const}function*TemplateLiteralExpressionGenerate(Wt){return Wt.type==="and"?yield*GenerateAnd(Wt):Wt.type==="or"?yield*GenerateOr(Wt):Wt.type==="const"?yield*GenerateConst(Wt):(()=>{throw new TemplateLiteralGenerateError("Unknown expression")})()}Pt.TemplateLiteralExpressionGenerate=TemplateLiteralExpressionGenerate;function TemplateLiteralGenerate(Wt){const Pt=(0,nn.TemplateLiteralParseExact)(Wt.pattern);return(0,tn.IsTemplateLiteralExpressionFinite)(Pt)?[...TemplateLiteralExpressionGenerate(Pt)]:[]}Pt.TemplateLiteralGenerate=TemplateLiteralGenerate},90984:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(6313),Pt);nn(en(41517),Pt);nn(en(21485),Pt);nn(en(31739),Pt);nn(en(35042),Pt);nn(en(91723),Pt);nn(en(77706),Pt)},31739:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TemplateLiteralParseExact=Pt.TemplateLiteralParse=Pt.TemplateLiteralParserError=void 0;const tn=en(94526);class TemplateLiteralParserError extends tn.TypeBoxError{}Pt.TemplateLiteralParserError=TemplateLiteralParserError;function Unescape(Wt){return Wt.replace(/\\\$/g,"$").replace(/\\\*/g,"*").replace(/\\\^/g,"^").replace(/\\\|/g,"|").replace(/\\\(/g,"(").replace(/\\\)/g,")")}function IsNonEscaped(Wt,Pt,en){return Wt[Pt]===en&&Wt.charCodeAt(Pt-1)!==92}function IsOpenParen(Wt,Pt){return IsNonEscaped(Wt,Pt,"(")}function IsCloseParen(Wt,Pt){return IsNonEscaped(Wt,Pt,")")}function IsSeparator(Wt,Pt){return IsNonEscaped(Wt,Pt,"|")}function IsGroup(Wt){if(!(IsOpenParen(Wt,0)&&IsCloseParen(Wt,Wt.length-1)))return false;let Pt=0;for(let en=0;en0)tn.push(TemplateLiteralParse(Pt));en=nn+1}}const nn=Wt.slice(en);if(nn.length>0)tn.push(TemplateLiteralParse(nn));if(tn.length===0)return{type:"const",const:""};if(tn.length===1)return tn[0];return{type:"or",expr:tn}}function And(Wt){function Group(Wt,Pt){if(!IsOpenParen(Wt,Pt))throw new TemplateLiteralParserError(`TemplateLiteralParser: Index must point to open parens`);let en=0;for(let tn=Pt;tn0)Pt.push(TemplateLiteralParse(an));en=nn-1}}return Pt.length===0?{type:"const",const:""}:Pt.length===1?Pt[0]:{type:"and",expr:Pt}}function TemplateLiteralParse(Wt){return IsGroup(Wt)?TemplateLiteralParse(InGroup(Wt)):IsPrecedenceOr(Wt)?Or(Wt):IsPrecedenceAnd(Wt)?And(Wt):{type:"const",const:Unescape(Wt)}}Pt.TemplateLiteralParse=TemplateLiteralParse;function TemplateLiteralParseExact(Wt){return TemplateLiteralParse(Wt.slice(1,Wt.length-1))}Pt.TemplateLiteralParseExact=TemplateLiteralParseExact},35042:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TemplateLiteralPattern=Pt.TemplateLiteralPatternError=void 0;const tn=en(50059);const nn=en(48121);const an=en(94526);const rn=en(20109);class TemplateLiteralPatternError extends an.TypeBoxError{}Pt.TemplateLiteralPatternError=TemplateLiteralPatternError;function Escape(Wt){return Wt.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Visit(Wt,Pt){return(0,rn.IsTemplateLiteral)(Wt)?Wt.pattern.slice(1,Wt.pattern.length-1):(0,rn.IsUnion)(Wt)?`(${Wt.anyOf.map((Wt=>Visit(Wt,Pt))).join("|")})`:(0,rn.IsNumber)(Wt)?`${Pt}${tn.PatternNumber}`:(0,rn.IsInteger)(Wt)?`${Pt}${tn.PatternNumber}`:(0,rn.IsBigInt)(Wt)?`${Pt}${tn.PatternNumber}`:(0,rn.IsString)(Wt)?`${Pt}${tn.PatternString}`:(0,rn.IsLiteral)(Wt)?`${Pt}${Escape(Wt.const.toString())}`:(0,rn.IsBoolean)(Wt)?`${Pt}${tn.PatternBoolean}`:(()=>{throw new TemplateLiteralPatternError(`Unexpected Kind '${Wt[nn.Kind]}'`)})()}function TemplateLiteralPattern(Wt){return`^${Wt.map((Wt=>Visit(Wt,""))).join("")}$`}Pt.TemplateLiteralPattern=TemplateLiteralPattern},21485:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TemplateLiteralSyntax=void 0;const tn=en(24727);const nn=en(89168);const an=en(37383);const rn=en(46621);const In=en(69429);const sn=en(41743);const on=en(22346);function*FromUnion(Wt){const Pt=Wt.trim().replace(/"|'/g,"");return Pt==="boolean"?yield(0,nn.Boolean)():Pt==="number"?yield(0,rn.Number)():Pt==="bigint"?yield(0,an.BigInt)():Pt==="string"?yield(0,In.String)():yield(()=>{const Wt=Pt.split("|").map((Wt=>(0,tn.Literal)(Wt.trim())));return Wt.length===0?(0,on.Never)():Wt.length===1?Wt[0]:(0,sn.UnionEvaluated)(Wt)})()}function*FromTerminal(Wt){if(Wt[1]!=="{"){const Pt=(0,tn.Literal)("$");const en=FromSyntax(Wt.slice(1));return yield*[Pt,...en]}for(let Pt=2;Pt{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TemplateLiteral=void 0;const tn=en(21485);const nn=en(35042);const an=en(87280);const rn=en(48121);function TemplateLiteral(Wt,Pt={}){const en=(0,an.IsString)(Wt)?(0,nn.TemplateLiteralPattern)((0,tn.TemplateLiteralSyntax)(Wt)):(0,nn.TemplateLiteralPattern)(Wt);return{...Pt,[rn.Kind]:"TemplateLiteral",type:"string",pattern:en}}Pt.TemplateLiteral=TemplateLiteral},91723:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TemplateLiteralToUnion=void 0;const tn=en(41743);const nn=en(24727);const an=en(41517);function TemplateLiteralToUnion(Wt){const Pt=(0,an.TemplateLiteralGenerate)(Wt);const en=Pt.map((Wt=>(0,nn.Literal)(Wt)));return(0,tn.UnionEvaluated)(en)}Pt.TemplateLiteralToUnion=TemplateLiteralToUnion},60304:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(24256),Pt)},24256:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Transform=Pt.TransformEncodeBuilder=Pt.TransformDecodeBuilder=void 0;const tn=en(48121);const nn=en(45157);const an=en(20109);class TransformDecodeBuilder{constructor(Wt){this.schema=Wt}Decode(Wt){return new TransformEncodeBuilder(this.schema,Wt)}}Pt.TransformDecodeBuilder=TransformDecodeBuilder;class TransformEncodeBuilder{constructor(Wt,Pt){this.schema=Wt;this.decode=Pt}EncodeTransform(Wt,Pt){const Encode=en=>Pt[tn.TransformKind].Encode(Wt(en));const Decode=Wt=>this.decode(Pt[tn.TransformKind].Decode(Wt));const en={Encode:Encode,Decode:Decode};return{...Pt,[tn.TransformKind]:en}}EncodeSchema(Wt,Pt){const en={Decode:this.decode,Encode:Wt};return{...Pt,[tn.TransformKind]:en}}Encode(Wt){const Pt=(0,nn.CloneType)(this.schema);return(0,an.IsTransform)(Pt)?this.EncodeTransform(Wt,Pt):this.EncodeSchema(Wt,Pt)}}Pt.TransformEncodeBuilder=TransformEncodeBuilder;function Transform(Wt){return new TransformDecodeBuilder(Wt)}Pt.Transform=Transform},82894:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(77460),Pt)},77460:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Tuple=void 0;const tn=en(45157);const nn=en(48121);function Tuple(Wt,Pt={}){const[en,an,rn]=[false,Wt.length,Wt.length];return Wt.length>0?{...Pt,[nn.Kind]:"Tuple",type:"array",items:(0,tn.CloneRest)(Wt),additionalItems:en,minItems:an,maxItems:rn}:{...Pt,[nn.Kind]:"Tuple",type:"array",minItems:an,maxItems:rn}}Pt.Tuple=Tuple},55764:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Type=Pt.JavaScriptTypeBuilder=Pt.JsonTypeBuilder=void 0;var tn=en(62012);Object.defineProperty(Pt,"JsonTypeBuilder",{enumerable:true,get:function(){return tn.JsonTypeBuilder}});const nn=en(88274);const an=en(30977);Object.defineProperty(Pt,"JavaScriptTypeBuilder",{enumerable:true,get:function(){return an.JavaScriptTypeBuilder}});const rn=nn;Pt.Type=rn},30977:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.JavaScriptTypeBuilder=void 0;const tn=en(62012);const nn=en(32733);const an=en(52779);const rn=en(37383);const In=en(86232);const sn=en(76835);const on=en(89816);const cn=en(72996);const dn=en(33458);const un=en(30666);const pn=en(80264);const mn=en(59573);const bn=en(34865);const Gn=en(89861);const hn=en(69656);const Zn=en(91305);const An=en(37272);const Wn=en(20602);class JavaScriptTypeBuilder extends tn.JsonTypeBuilder{AsyncIterator(Wt,Pt={}){return(0,nn.AsyncIterator)(Wt,Pt)}Awaited(Wt,Pt={}){return(0,an.Awaited)(Wt,Pt)}BigInt(Wt={}){return(0,rn.BigInt)(Wt)}ConstructorParameters(Wt,Pt={}){return(0,sn.ConstructorParameters)(Wt,Pt)}Constructor(Wt,Pt,en){return(0,In.Constructor)(Wt,Pt,en)}Date(Wt={}){return(0,on.Date)(Wt)}Function(Wt,Pt,en){return(0,cn.Function)(Wt,Pt,en)}InstanceType(Wt,Pt={}){return(0,dn.InstanceType)(Wt,Pt)}Iterator(Wt,Pt={}){return(0,un.Iterator)(Wt,Pt)}Parameters(Wt,Pt={}){return(0,pn.Parameters)(Wt,Pt)}Promise(Wt,Pt={}){return(0,mn.Promise)(Wt,Pt)}RegExp(Wt,Pt={}){return(0,bn.RegExp)(Wt,Pt)}ReturnType(Wt,Pt={}){return(0,Gn.ReturnType)(Wt,Pt)}Symbol(Wt){return(0,hn.Symbol)(Wt)}Undefined(Wt={}){return(0,An.Undefined)(Wt)}Uint8Array(Wt={}){return(0,Zn.Uint8Array)(Wt)}Void(Wt={}){return(0,Wn.Void)(Wt)}}Pt.JavaScriptTypeBuilder=JavaScriptTypeBuilder},62012:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.JsonTypeBuilder=void 0;const tn=en(56234);const nn=en(59809);const an=en(89168);const rn=en(87731);const In=en(29075);const sn=en(3592);const on=en(63617);const cn=en(10698);const dn=en(40629);const un=en(14301);const pn=en(89777);const mn=en(5578);const bn=en(32945);const Gn=en(71095);const hn=en(30658);const Zn=en(24727);const An=en(76675);const Wn=en(22346);const Nn=en(9741);const gn=en(4513);const yn=en(46621);const vn=en(13871);const Yn=en(56497);const En=en(31392);const Vn=en(96405);const Rn=en(53861);const wn=en(4102);const Fn=en(51257);const Qn=en(59961);const fn=en(81816);const Hn=en(29105);const Cn=en(83397);const Xn=en(47686);const kn=en(94313);const Jn=en(69429);const Ln=en(90984);const Bn=en(60304);const xn=en(82894);const On=en(41743);const Tn=en(41178);const Un=en(79750);class JsonTypeBuilder{Strict(Wt){return(0,kn.Strict)(Wt)}ReadonlyOptional(Wt){return(0,Fn.ReadonlyOptional)(Wt)}Readonly(Wt,Pt){return(0,wn.Readonly)(Wt,Pt??true)}Optional(Wt,Pt){return(0,En.Optional)(Wt,Pt??true)}Any(Wt={}){return(0,tn.Any)(Wt)}Array(Wt,Pt={}){return(0,nn.Array)(Wt,Pt)}Boolean(Wt={}){return(0,an.Boolean)(Wt)}Capitalize(Wt,Pt={}){return(0,Gn.Capitalize)(Wt,Pt)}Composite(Wt,Pt){return(0,rn.Composite)(Wt,Pt)}Const(Wt,Pt={}){return(0,In.Const)(Wt,Pt)}Deref(Wt,Pt){return(0,sn.Deref)(Wt,Pt)}Enum(Wt,Pt={}){return(0,on.Enum)(Wt,Pt)}Exclude(Wt,Pt,en={}){return(0,cn.Exclude)(Wt,Pt,en)}Extends(Wt,Pt,en,tn,nn={}){return(0,dn.Extends)(Wt,Pt,en,tn,nn)}Extract(Wt,Pt,en={}){return(0,un.Extract)(Wt,Pt,en)}Index(Wt,Pt,en={}){return(0,pn.Index)(Wt,Pt,en)}Integer(Wt={}){return(0,mn.Integer)(Wt)}Intersect(Wt,Pt={}){return(0,bn.Intersect)(Wt,Pt)}KeyOf(Wt,Pt={}){return(0,hn.KeyOf)(Wt,Pt)}Literal(Wt,Pt={}){return(0,Zn.Literal)(Wt,Pt)}Lowercase(Wt,Pt={}){return(0,Gn.Lowercase)(Wt,Pt)}Mapped(Wt,Pt,en={}){return(0,An.Mapped)(Wt,Pt,en)}Never(Wt={}){return(0,Wn.Never)(Wt)}Not(Wt,Pt){return(0,Nn.Not)(Wt,Pt)}Null(Wt={}){return(0,gn.Null)(Wt)}Number(Wt={}){return(0,yn.Number)(Wt)}Object(Wt,Pt={}){return(0,vn.Object)(Wt,Pt)}Omit(Wt,Pt,en={}){return(0,Yn.Omit)(Wt,Pt,en)}Partial(Wt,Pt={}){return(0,Vn.Partial)(Wt,Pt)}Pick(Wt,Pt,en={}){return(0,Rn.Pick)(Wt,Pt,en)}Record(Wt,Pt,en={}){return(0,Qn.Record)(Wt,Pt,en)}Recursive(Wt,Pt={}){return(0,fn.Recursive)(Wt,Pt)}Ref(Wt,Pt={}){return(0,Hn.Ref)(Wt,Pt)}Required(Wt,Pt={}){return(0,Cn.Required)(Wt,Pt)}Rest(Wt){return(0,Xn.Rest)(Wt)}String(Wt={}){return(0,Jn.String)(Wt)}TemplateLiteral(Wt,Pt={}){return(0,Ln.TemplateLiteral)(Wt,Pt)}Transform(Wt){return(0,Bn.Transform)(Wt)}Tuple(Wt,Pt={}){return(0,xn.Tuple)(Wt,Pt)}Uncapitalize(Wt,Pt={}){return(0,Gn.Uncapitalize)(Wt,Pt)}Union(Wt,Pt={}){return(0,On.Union)(Wt,Pt)}Unknown(Wt={}){return(0,Tn.Unknown)(Wt)}Unsafe(Wt={}){return(0,Un.Unsafe)(Wt)}Uppercase(Wt,Pt={}){return(0,Gn.Uppercase)(Wt,Pt)}}Pt.JsonTypeBuilder=JsonTypeBuilder},88274:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Strict=Pt.ReturnType=Pt.Rest=Pt.Required=Pt.RegExp=Pt.Ref=Pt.Recursive=Pt.Record=Pt.ReadonlyOptional=Pt.Readonly=Pt.Promise=Pt.Pick=Pt.Partial=Pt.Parameters=Pt.Optional=Pt.Omit=Pt.Object=Pt.Number=Pt.Null=Pt.Not=Pt.Never=Pt.Mapped=Pt.Literal=Pt.KeyOf=Pt.Iterator=Pt.Uppercase=Pt.Lowercase=Pt.Uncapitalize=Pt.Capitalize=Pt.Intersect=Pt.Integer=Pt.InstanceType=Pt.Index=Pt.Function=Pt.Extract=Pt.Extends=Pt.Exclude=Pt.Enum=Pt.Deref=Pt.Date=Pt.ConstructorParameters=Pt.Constructor=Pt.Const=Pt.Composite=Pt.Boolean=Pt.BigInt=Pt.Awaited=Pt.AsyncIterator=Pt.Array=Pt.Any=void 0;Pt.Void=Pt.Unsafe=Pt.Unknown=Pt.Union=Pt.Undefined=Pt.Uint8Array=Pt.Tuple=Pt.Transform=Pt.TemplateLiteral=Pt.Symbol=Pt.String=void 0;var tn=en(56234);Object.defineProperty(Pt,"Any",{enumerable:true,get:function(){return tn.Any}});var nn=en(59809);Object.defineProperty(Pt,"Array",{enumerable:true,get:function(){return nn.Array}});var an=en(32733);Object.defineProperty(Pt,"AsyncIterator",{enumerable:true,get:function(){return an.AsyncIterator}});var rn=en(52779);Object.defineProperty(Pt,"Awaited",{enumerable:true,get:function(){return rn.Awaited}});var In=en(37383);Object.defineProperty(Pt,"BigInt",{enumerable:true,get:function(){return In.BigInt}});var sn=en(89168);Object.defineProperty(Pt,"Boolean",{enumerable:true,get:function(){return sn.Boolean}});var on=en(87731);Object.defineProperty(Pt,"Composite",{enumerable:true,get:function(){return on.Composite}});var cn=en(29075);Object.defineProperty(Pt,"Const",{enumerable:true,get:function(){return cn.Const}});var dn=en(86232);Object.defineProperty(Pt,"Constructor",{enumerable:true,get:function(){return dn.Constructor}});var un=en(76835);Object.defineProperty(Pt,"ConstructorParameters",{enumerable:true,get:function(){return un.ConstructorParameters}});var pn=en(89816);Object.defineProperty(Pt,"Date",{enumerable:true,get:function(){return pn.Date}});var mn=en(3592);Object.defineProperty(Pt,"Deref",{enumerable:true,get:function(){return mn.Deref}});var bn=en(63617);Object.defineProperty(Pt,"Enum",{enumerable:true,get:function(){return bn.Enum}});var Gn=en(10698);Object.defineProperty(Pt,"Exclude",{enumerable:true,get:function(){return Gn.Exclude}});var hn=en(40629);Object.defineProperty(Pt,"Extends",{enumerable:true,get:function(){return hn.Extends}});var Zn=en(14301);Object.defineProperty(Pt,"Extract",{enumerable:true,get:function(){return Zn.Extract}});var An=en(72996);Object.defineProperty(Pt,"Function",{enumerable:true,get:function(){return An.Function}});var Wn=en(89777);Object.defineProperty(Pt,"Index",{enumerable:true,get:function(){return Wn.Index}});var Nn=en(33458);Object.defineProperty(Pt,"InstanceType",{enumerable:true,get:function(){return Nn.InstanceType}});var gn=en(5578);Object.defineProperty(Pt,"Integer",{enumerable:true,get:function(){return gn.Integer}});var yn=en(32945);Object.defineProperty(Pt,"Intersect",{enumerable:true,get:function(){return yn.Intersect}});var vn=en(71095);Object.defineProperty(Pt,"Capitalize",{enumerable:true,get:function(){return vn.Capitalize}});Object.defineProperty(Pt,"Uncapitalize",{enumerable:true,get:function(){return vn.Uncapitalize}});Object.defineProperty(Pt,"Lowercase",{enumerable:true,get:function(){return vn.Lowercase}});Object.defineProperty(Pt,"Uppercase",{enumerable:true,get:function(){return vn.Uppercase}});var Yn=en(30666);Object.defineProperty(Pt,"Iterator",{enumerable:true,get:function(){return Yn.Iterator}});var En=en(30658);Object.defineProperty(Pt,"KeyOf",{enumerable:true,get:function(){return En.KeyOf}});var Vn=en(24727);Object.defineProperty(Pt,"Literal",{enumerable:true,get:function(){return Vn.Literal}});var Rn=en(76675);Object.defineProperty(Pt,"Mapped",{enumerable:true,get:function(){return Rn.Mapped}});var wn=en(22346);Object.defineProperty(Pt,"Never",{enumerable:true,get:function(){return wn.Never}});var Fn=en(9741);Object.defineProperty(Pt,"Not",{enumerable:true,get:function(){return Fn.Not}});var Qn=en(4513);Object.defineProperty(Pt,"Null",{enumerable:true,get:function(){return Qn.Null}});var fn=en(46621);Object.defineProperty(Pt,"Number",{enumerable:true,get:function(){return fn.Number}});var Hn=en(13871);Object.defineProperty(Pt,"Object",{enumerable:true,get:function(){return Hn.Object}});var Cn=en(56497);Object.defineProperty(Pt,"Omit",{enumerable:true,get:function(){return Cn.Omit}});var Xn=en(31392);Object.defineProperty(Pt,"Optional",{enumerable:true,get:function(){return Xn.Optional}});var kn=en(80264);Object.defineProperty(Pt,"Parameters",{enumerable:true,get:function(){return kn.Parameters}});var Jn=en(96405);Object.defineProperty(Pt,"Partial",{enumerable:true,get:function(){return Jn.Partial}});var Ln=en(53861);Object.defineProperty(Pt,"Pick",{enumerable:true,get:function(){return Ln.Pick}});var Bn=en(59573);Object.defineProperty(Pt,"Promise",{enumerable:true,get:function(){return Bn.Promise}});var xn=en(4102);Object.defineProperty(Pt,"Readonly",{enumerable:true,get:function(){return xn.Readonly}});var On=en(51257);Object.defineProperty(Pt,"ReadonlyOptional",{enumerable:true,get:function(){return On.ReadonlyOptional}});var Tn=en(59961);Object.defineProperty(Pt,"Record",{enumerable:true,get:function(){return Tn.Record}});var Un=en(81816);Object.defineProperty(Pt,"Recursive",{enumerable:true,get:function(){return Un.Recursive}});var Mn=en(29105);Object.defineProperty(Pt,"Ref",{enumerable:true,get:function(){return Mn.Ref}});var zn=en(34865);Object.defineProperty(Pt,"RegExp",{enumerable:true,get:function(){return zn.RegExp}});var Sn=en(83397);Object.defineProperty(Pt,"Required",{enumerable:true,get:function(){return Sn.Required}});var jn=en(47686);Object.defineProperty(Pt,"Rest",{enumerable:true,get:function(){return jn.Rest}});var Dn=en(89861);Object.defineProperty(Pt,"ReturnType",{enumerable:true,get:function(){return Dn.ReturnType}});var _n=en(94313);Object.defineProperty(Pt,"Strict",{enumerable:true,get:function(){return _n.Strict}});var Kn=en(69429);Object.defineProperty(Pt,"String",{enumerable:true,get:function(){return Kn.String}});var Pn=en(69656);Object.defineProperty(Pt,"Symbol",{enumerable:true,get:function(){return Pn.Symbol}});var qn=en(90984);Object.defineProperty(Pt,"TemplateLiteral",{enumerable:true,get:function(){return qn.TemplateLiteral}});var $n=en(60304);Object.defineProperty(Pt,"Transform",{enumerable:true,get:function(){return $n.Transform}});var el=en(82894);Object.defineProperty(Pt,"Tuple",{enumerable:true,get:function(){return el.Tuple}});var tl=en(91305);Object.defineProperty(Pt,"Uint8Array",{enumerable:true,get:function(){return tl.Uint8Array}});var nl=en(37272);Object.defineProperty(Pt,"Undefined",{enumerable:true,get:function(){return nl.Undefined}});var ll=en(41743);Object.defineProperty(Pt,"Union",{enumerable:true,get:function(){return ll.Union}});var al=en(41178);Object.defineProperty(Pt,"Unknown",{enumerable:true,get:function(){return al.Unknown}});var rl=en(79750);Object.defineProperty(Pt,"Unsafe",{enumerable:true,get:function(){return rl.Unsafe}});var Il=en(20602);Object.defineProperty(Pt,"Void",{enumerable:true,get:function(){return Il.Void}})},91305:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(57480),Pt)},57480:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Uint8Array=void 0;const tn=en(48121);function Uint8Array(Wt={}){return{...Wt,[tn.Kind]:"Uint8Array",type:"Uint8Array"}}Pt.Uint8Array=Uint8Array},37272:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(17112),Pt)},17112:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Undefined=void 0;const tn=en(48121);function Undefined(Wt={}){return{...Wt,[tn.Kind]:"Undefined",type:"undefined"}}Pt.Undefined=Undefined},41743:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(54204),Pt);nn(en(45269),Pt);nn(en(95248),Pt)},45481:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.UnionCreate=void 0;const tn=en(45157);const nn=en(48121);function UnionCreate(Wt,Pt){return{...Pt,[nn.Kind]:"Union",anyOf:(0,tn.CloneRest)(Wt)}}Pt.UnionCreate=UnionCreate},54204:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.UnionEvaluated=void 0;const tn=en(48121);const nn=en(45157);const an=en(62202);const rn=en(22346);const In=en(31392);const sn=en(45481);const on=en(20109);function IsUnionOptional(Wt){return Wt.some((Wt=>(0,on.IsOptional)(Wt)))}function RemoveOptionalFromRest(Wt){return Wt.map((Wt=>(0,on.IsOptional)(Wt)?RemoveOptionalFromType(Wt):Wt))}function RemoveOptionalFromType(Wt){return(0,an.Discard)(Wt,[tn.OptionalKind])}function ResolveUnion(Wt,Pt){return IsUnionOptional(Wt)?(0,In.Optional)((0,sn.UnionCreate)(RemoveOptionalFromRest(Wt),Pt)):(0,sn.UnionCreate)(RemoveOptionalFromRest(Wt),Pt)}function UnionEvaluated(Wt,Pt={}){return Wt.length===0?(0,rn.Never)(Pt):Wt.length===1?(0,nn.CloneType)(Wt[0],Pt):ResolveUnion(Wt,Pt)}Pt.UnionEvaluated=UnionEvaluated},45269:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});const tn=en(48121)},95248:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Union=void 0;const tn=en(22346);const nn=en(45157);const an=en(45481);function Union(Wt,Pt={}){return Wt.length===0?(0,tn.Never)(Pt):Wt.length===1?(0,nn.CloneType)(Wt[0],Pt):(0,an.UnionCreate)(Wt,Pt)}Pt.Union=Union},41178:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(71800),Pt)},71800:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Unknown=void 0;const tn=en(48121);function Unknown(Wt={}){return{...Wt,[tn.Kind]:"Unknown"}}Pt.Unknown=Unknown},79750:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(33134),Pt)},33134:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Unsafe=void 0;const tn=en(48121);function Unsafe(Wt={}){return{...Wt,[tn.Kind]:Wt[tn.Kind]??"Unsafe"}}Pt.Unsafe=Unsafe},20602:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(42606),Pt)},42606:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Void=void 0;const tn=en(48121);function Void(Wt={}){return{...Wt,[tn.Kind]:"Void",type:"void"}}Pt.Void=Void},70099:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Cast=Pt.ValueCastError=void 0;const tn=en(19522);const nn=en(94526);const an=en(48121);const rn=en(37029);const In=en(35323);const sn=en(66614);const on=en(75743);class ValueCastError extends nn.TypeBoxError{constructor(Wt,Pt){super(Pt);this.schema=Wt}}Pt.ValueCastError=ValueCastError;function ScoreUnion(Wt,Pt,en){if(Wt[an.Kind]==="Object"&&typeof en==="object"&&!(0,tn.IsNull)(en)){const tn=Wt;const nn=Object.getOwnPropertyNames(en);const rn=Object.entries(tn.properties);const[sn,on]=[1/rn.length,rn.length];return rn.reduce(((Wt,[tn,rn])=>{const cn=rn[an.Kind]==="Literal"&&rn.const===en[tn]?on:0;const dn=(0,In.Check)(rn,Pt,en[tn])?sn:0;const un=nn.includes(tn)?sn:0;return Wt+(cn+dn+un)}),0)}else{return(0,In.Check)(Wt,Pt,en)?1:0}}function SelectUnion(Wt,Pt,en){let[tn,nn]=[Wt.anyOf[0],0];for(const an of Wt.anyOf){const Wt=ScoreUnion(an,Pt,en);if(Wt>nn){tn=an;nn=Wt}}return tn}function CastUnion(Wt,Pt,en){if("default"in Wt){return typeof en==="function"?Wt.default:(0,sn.Clone)(Wt.default)}else{const tn=SelectUnion(Wt,Pt,en);return Cast(tn,Pt,en)}}function DefaultClone(Wt,Pt,en){return(0,In.Check)(Wt,Pt,en)?(0,sn.Clone)(en):(0,rn.Create)(Wt,Pt)}function Default(Wt,Pt,en){return(0,In.Check)(Wt,Pt,en)?en:(0,rn.Create)(Wt,Pt)}function FromArray(Wt,Pt,en){if((0,In.Check)(Wt,Pt,en))return(0,sn.Clone)(en);const nn=(0,tn.IsArray)(en)?(0,sn.Clone)(en):(0,rn.Create)(Wt,Pt);const an=(0,tn.IsNumber)(Wt.minItems)&&nn.lengthnull))]:nn;const on=(0,tn.IsNumber)(Wt.maxItems)&&an.length>Wt.maxItems?an.slice(0,Wt.maxItems):an;const cn=on.map((en=>Visit(Wt.items,Pt,en)));if(Wt.uniqueItems!==true)return cn;const dn=[...new Set(cn)];if(!(0,In.Check)(Wt,Pt,dn))throw new ValueCastError(Wt,"Array cast produced invalid data due to uniqueItems constraint");return dn}function FromConstructor(Wt,Pt,en){if((0,In.Check)(Wt,Pt,en))return(0,rn.Create)(Wt,Pt);const tn=new Set(Wt.returns.required||[]);const result=function(){};for(const[nn,an]of Object.entries(Wt.returns.properties)){if(!tn.has(nn)&&en.prototype[nn]===undefined)continue;result.prototype[nn]=Visit(an,Pt,en.prototype[nn])}return result}function FromIntersect(Wt,Pt,en){const nn=(0,rn.Create)(Wt,Pt);const an=(0,tn.IsStandardObject)(nn)&&(0,tn.IsStandardObject)(en)?{...nn,...en}:en;return(0,In.Check)(Wt,Pt,an)?an:(0,rn.Create)(Wt,Pt)}function FromNever(Wt,Pt,en){throw new ValueCastError(Wt,"Never types cannot be cast")}function FromObject(Wt,Pt,en){if((0,In.Check)(Wt,Pt,en))return en;if(en===null||typeof en!=="object")return(0,rn.Create)(Wt,Pt);const tn=new Set(Wt.required||[]);const nn={};for(const[an,rn]of Object.entries(Wt.properties)){if(!tn.has(an)&&en[an]===undefined)continue;nn[an]=Visit(rn,Pt,en[an])}if(typeof Wt.additionalProperties==="object"){const tn=Object.getOwnPropertyNames(Wt.properties);for(const an of Object.getOwnPropertyNames(en)){if(tn.includes(an))continue;nn[an]=Visit(Wt.additionalProperties,Pt,en[an])}}return nn}function FromRecord(Wt,Pt,en){if((0,In.Check)(Wt,Pt,en))return(0,sn.Clone)(en);if(en===null||typeof en!=="object"||Array.isArray(en)||en instanceof Date)return(0,rn.Create)(Wt,Pt);const tn=Object.getOwnPropertyNames(Wt.patternProperties)[0];const nn=Wt.patternProperties[tn];const an={};for(const[Wt,tn]of Object.entries(en)){an[Wt]=Visit(nn,Pt,tn)}return an}function FromRef(Wt,Pt,en){return Visit((0,on.Deref)(Wt,Pt),Pt,en)}function FromThis(Wt,Pt,en){return Visit((0,on.Deref)(Wt,Pt),Pt,en)}function FromTuple(Wt,Pt,en){if((0,In.Check)(Wt,Pt,en))return(0,sn.Clone)(en);if(!(0,tn.IsArray)(en))return(0,rn.Create)(Wt,Pt);if(Wt.items===undefined)return[];return Wt.items.map(((Wt,tn)=>Visit(Wt,Pt,en[tn])))}function FromUnion(Wt,Pt,en){return(0,In.Check)(Wt,Pt,en)?(0,sn.Clone)(en):CastUnion(Wt,Pt,en)}function Visit(Wt,Pt,en){const nn=(0,tn.IsString)(Wt.$id)?[...Pt,Wt]:Pt;const rn=Wt;switch(Wt[an.Kind]){case"Array":return FromArray(rn,nn,en);case"Constructor":return FromConstructor(rn,nn,en);case"Intersect":return FromIntersect(rn,nn,en);case"Never":return FromNever(rn,nn,en);case"Object":return FromObject(rn,nn,en);case"Record":return FromRecord(rn,nn,en);case"Ref":return FromRef(rn,nn,en);case"This":return FromThis(rn,nn,en);case"Tuple":return FromTuple(rn,nn,en);case"Union":return FromUnion(rn,nn,en);case"Date":case"Symbol":case"Uint8Array":return DefaultClone(Wt,Pt,en);default:return Default(rn,nn,en)}}function Cast(...Wt){return Wt.length===3?Visit(Wt[0],Wt[1],Wt[2]):Visit(Wt[0],[],Wt[1])}Pt.Cast=Cast},49098:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(70099),Pt)},3935:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Check=Pt.ValueCheckUnknownTypeError=void 0;const tn=en(45918);const nn=en(75743);const an=en(73849);const rn=en(48121);const In=en(30658);const sn=en(40629);const on=en(97759);const cn=en(94526);const dn=en(22346);const un=en(19522);const pn=en(20109);class ValueCheckUnknownTypeError extends cn.TypeBoxError{constructor(Wt){super(`Unknown type`);this.schema=Wt}}Pt.ValueCheckUnknownTypeError=ValueCheckUnknownTypeError;function IsAnyOrUnknown(Wt){return Wt[rn.Kind]==="Any"||Wt[rn.Kind]==="Unknown"}function IsDefined(Wt){return Wt!==undefined}function FromAny(Wt,Pt,en){return true}function FromArray(Wt,Pt,en){if(!(0,un.IsArray)(en))return false;if(IsDefined(Wt.minItems)&&!(en.length>=Wt.minItems)){return false}if(IsDefined(Wt.maxItems)&&!(en.length<=Wt.maxItems)){return false}if(!en.every((en=>Visit(Wt.items,Pt,en)))){return false}if(Wt.uniqueItems===true&&!function(){const Wt=new Set;for(const Pt of en){const en=(0,an.Hash)(Pt);if(Wt.has(en)){return false}else{Wt.add(en)}}return true}()){return false}if(!(IsDefined(Wt.contains)||(0,un.IsNumber)(Wt.minContains)||(0,un.IsNumber)(Wt.maxContains))){return true}const tn=IsDefined(Wt.contains)?Wt.contains:(0,dn.Never)();const nn=en.reduce(((Wt,en)=>Visit(tn,Pt,en)?Wt+1:Wt),0);if(nn===0){return false}if((0,un.IsNumber)(Wt.minContains)&&nnWt.maxContains){return false}return true}function FromAsyncIterator(Wt,Pt,en){return(0,un.IsAsyncIterator)(en)}function FromBigInt(Wt,Pt,en){if(!(0,un.IsBigInt)(en))return false;if(IsDefined(Wt.exclusiveMaximum)&&!(enWt.exclusiveMinimum)){return false}if(IsDefined(Wt.maximum)&&!(en<=Wt.maximum)){return false}if(IsDefined(Wt.minimum)&&!(en>=Wt.minimum)){return false}if(IsDefined(Wt.multipleOf)&&!(en%Wt.multipleOf===BigInt(0))){return false}return true}function FromBoolean(Wt,Pt,en){return(0,un.IsBoolean)(en)}function FromConstructor(Wt,Pt,en){return Visit(Wt.returns,Pt,en.prototype)}function FromDate(Wt,Pt,en){if(!(0,un.IsDate)(en))return false;if(IsDefined(Wt.exclusiveMaximumTimestamp)&&!(en.getTime()Wt.exclusiveMinimumTimestamp)){return false}if(IsDefined(Wt.maximumTimestamp)&&!(en.getTime()<=Wt.maximumTimestamp)){return false}if(IsDefined(Wt.minimumTimestamp)&&!(en.getTime()>=Wt.minimumTimestamp)){return false}if(IsDefined(Wt.multipleOfTimestamp)&&!(en.getTime()%Wt.multipleOfTimestamp===0)){return false}return true}function FromFunction(Wt,Pt,en){return(0,un.IsFunction)(en)}function FromInteger(Wt,Pt,en){if(!(0,un.IsInteger)(en)){return false}if(IsDefined(Wt.exclusiveMaximum)&&!(enWt.exclusiveMinimum)){return false}if(IsDefined(Wt.maximum)&&!(en<=Wt.maximum)){return false}if(IsDefined(Wt.minimum)&&!(en>=Wt.minimum)){return false}if(IsDefined(Wt.multipleOf)&&!(en%Wt.multipleOf===0)){return false}return true}function FromIntersect(Wt,Pt,en){const tn=Wt.allOf.every((Wt=>Visit(Wt,Pt,en)));if(Wt.unevaluatedProperties===false){const Pt=new RegExp((0,In.KeyOfPattern)(Wt));const nn=Object.getOwnPropertyNames(en).every((Wt=>Pt.test(Wt)));return tn&&nn}else if((0,pn.IsSchema)(Wt.unevaluatedProperties)){const nn=new RegExp((0,In.KeyOfPattern)(Wt));const an=Object.getOwnPropertyNames(en).every((tn=>nn.test(tn)||Visit(Wt.unevaluatedProperties,Pt,en[tn])));return tn&&an}else{return tn}}function FromIterator(Wt,Pt,en){return(0,un.IsIterator)(en)}function FromLiteral(Wt,Pt,en){return en===Wt.const}function FromNever(Wt,Pt,en){return false}function FromNot(Wt,Pt,en){return!Visit(Wt.not,Pt,en)}function FromNull(Wt,Pt,en){return(0,un.IsNull)(en)}function FromNumber(Wt,Pt,en){if(!tn.TypeSystemPolicy.IsNumberLike(en))return false;if(IsDefined(Wt.exclusiveMaximum)&&!(enWt.exclusiveMinimum)){return false}if(IsDefined(Wt.minimum)&&!(en>=Wt.minimum)){return false}if(IsDefined(Wt.maximum)&&!(en<=Wt.maximum)){return false}if(IsDefined(Wt.multipleOf)&&!(en%Wt.multipleOf===0)){return false}return true}function FromObject(Wt,Pt,en){if(!tn.TypeSystemPolicy.IsObjectLike(en))return false;if(IsDefined(Wt.minProperties)&&!(Object.getOwnPropertyNames(en).length>=Wt.minProperties)){return false}if(IsDefined(Wt.maxProperties)&&!(Object.getOwnPropertyNames(en).length<=Wt.maxProperties)){return false}const nn=Object.getOwnPropertyNames(Wt.properties);for(const an of nn){const nn=Wt.properties[an];if(Wt.required&&Wt.required.includes(an)){if(!Visit(nn,Pt,en[an])){return false}if(((0,sn.ExtendsUndefinedCheck)(nn)||IsAnyOrUnknown(nn))&&!(an in en)){return false}}else{if(tn.TypeSystemPolicy.IsExactOptionalProperty(en,an)&&!Visit(nn,Pt,en[an])){return false}}}if(Wt.additionalProperties===false){const Pt=Object.getOwnPropertyNames(en);if(Wt.required&&Wt.required.length===nn.length&&Pt.length===nn.length){return true}else{return Pt.every((Wt=>nn.includes(Wt)))}}else if(typeof Wt.additionalProperties==="object"){const tn=Object.getOwnPropertyNames(en);return tn.every((tn=>nn.includes(tn)||Visit(Wt.additionalProperties,Pt,en[tn])))}else{return true}}function FromPromise(Wt,Pt,en){return(0,un.IsPromise)(en)}function FromRecord(Wt,Pt,en){if(!tn.TypeSystemPolicy.IsRecordLike(en)){return false}if(IsDefined(Wt.minProperties)&&!(Object.getOwnPropertyNames(en).length>=Wt.minProperties)){return false}if(IsDefined(Wt.maxProperties)&&!(Object.getOwnPropertyNames(en).length<=Wt.maxProperties)){return false}const[nn,an]=Object.entries(Wt.patternProperties)[0];const rn=new RegExp(nn);const In=Object.entries(en).every((([Wt,en])=>rn.test(Wt)?Visit(an,Pt,en):true));const sn=typeof Wt.additionalProperties==="object"?Object.entries(en).every((([en,tn])=>!rn.test(en)?Visit(Wt.additionalProperties,Pt,tn):true)):true;const on=Wt.additionalProperties===false?Object.getOwnPropertyNames(en).every((Wt=>rn.test(Wt))):true;return In&&sn&&on}function FromRef(Wt,Pt,en){return Visit((0,nn.Deref)(Wt,Pt),Pt,en)}function FromRegExp(Wt,Pt,en){const tn=new RegExp(Wt.source,Wt.flags);if(IsDefined(Wt.minLength)){if(!(en.length>=Wt.minLength))return false}if(IsDefined(Wt.maxLength)){if(!(en.length<=Wt.maxLength))return false}return tn.test(en)}function FromString(Wt,Pt,en){if(!(0,un.IsString)(en)){return false}if(IsDefined(Wt.minLength)){if(!(en.length>=Wt.minLength))return false}if(IsDefined(Wt.maxLength)){if(!(en.length<=Wt.maxLength))return false}if(IsDefined(Wt.pattern)){const Pt=new RegExp(Wt.pattern);if(!Pt.test(en))return false}if(IsDefined(Wt.format)){if(!on.FormatRegistry.Has(Wt.format))return false;const Pt=on.FormatRegistry.Get(Wt.format);return Pt(en)}return true}function FromSymbol(Wt,Pt,en){return(0,un.IsSymbol)(en)}function FromTemplateLiteral(Wt,Pt,en){return(0,un.IsString)(en)&&new RegExp(Wt.pattern).test(en)}function FromThis(Wt,Pt,en){return Visit((0,nn.Deref)(Wt,Pt),Pt,en)}function FromTuple(Wt,Pt,en){if(!(0,un.IsArray)(en)){return false}if(Wt.items===undefined&&!(en.length===0)){return false}if(!(en.length===Wt.maxItems)){return false}if(!Wt.items){return true}for(let tn=0;tnVisit(Wt,Pt,en)))}function FromUint8Array(Wt,Pt,en){if(!(0,un.IsUint8Array)(en)){return false}if(IsDefined(Wt.maxByteLength)&&!(en.length<=Wt.maxByteLength)){return false}if(IsDefined(Wt.minByteLength)&&!(en.length>=Wt.minByteLength)){return false}return true}function FromUnknown(Wt,Pt,en){return true}function FromVoid(Wt,Pt,en){return tn.TypeSystemPolicy.IsVoidLike(en)}function FromKind(Wt,Pt,en){if(!on.TypeRegistry.Has(Wt[rn.Kind]))return false;const tn=on.TypeRegistry.Get(Wt[rn.Kind]);return tn(Wt,en)}function Visit(Wt,Pt,en){const tn=IsDefined(Wt.$id)?[...Pt,Wt]:Pt;const nn=Wt;switch(nn[rn.Kind]){case"Any":return FromAny(nn,tn,en);case"Array":return FromArray(nn,tn,en);case"AsyncIterator":return FromAsyncIterator(nn,tn,en);case"BigInt":return FromBigInt(nn,tn,en);case"Boolean":return FromBoolean(nn,tn,en);case"Constructor":return FromConstructor(nn,tn,en);case"Date":return FromDate(nn,tn,en);case"Function":return FromFunction(nn,tn,en);case"Integer":return FromInteger(nn,tn,en);case"Intersect":return FromIntersect(nn,tn,en);case"Iterator":return FromIterator(nn,tn,en);case"Literal":return FromLiteral(nn,tn,en);case"Never":return FromNever(nn,tn,en);case"Not":return FromNot(nn,tn,en);case"Null":return FromNull(nn,tn,en);case"Number":return FromNumber(nn,tn,en);case"Object":return FromObject(nn,tn,en);case"Promise":return FromPromise(nn,tn,en);case"Record":return FromRecord(nn,tn,en);case"Ref":return FromRef(nn,tn,en);case"RegExp":return FromRegExp(nn,tn,en);case"String":return FromString(nn,tn,en);case"Symbol":return FromSymbol(nn,tn,en);case"TemplateLiteral":return FromTemplateLiteral(nn,tn,en);case"This":return FromThis(nn,tn,en);case"Tuple":return FromTuple(nn,tn,en);case"Undefined":return FromUndefined(nn,tn,en);case"Union":return FromUnion(nn,tn,en);case"Uint8Array":return FromUint8Array(nn,tn,en);case"Unknown":return FromUnknown(nn,tn,en);case"Void":return FromVoid(nn,tn,en);default:if(!on.TypeRegistry.Has(nn[rn.Kind]))throw new ValueCheckUnknownTypeError(nn);return FromKind(nn,tn,en)}}function Check(...Wt){return Wt.length===3?Visit(Wt[0],Wt[1],Wt[2]):Visit(Wt[0],[],Wt[1])}Pt.Check=Check},35323:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(3935),Pt)},86519:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Clean=void 0;const tn=en(30658);const nn=en(35323);const an=en(66614);const rn=en(75743);const In=en(48121);const sn=en(19522);const on=en(20109);function IsCheckable(Wt){return(0,on.IsSchema)(Wt)&&Wt[In.Kind]!=="Unsafe"}function FromArray(Wt,Pt,en){if(!(0,sn.IsArray)(en))return en;return en.map((en=>Visit(Wt.items,Pt,en)))}function FromIntersect(Wt,Pt,en){const rn=Wt.unevaluatedProperties;const In=Wt.allOf.map((Wt=>Visit(Wt,Pt,(0,an.Clone)(en))));const cn=In.reduce(((Wt,Pt)=>(0,sn.IsObject)(Pt)?{...Wt,...Pt}:Pt),{});if(!(0,sn.IsObject)(en)||!(0,sn.IsObject)(cn)||!(0,on.IsSchema)(rn))return cn;const dn=(0,tn.KeyOfPropertyKeys)(Wt);for(const Wt of Object.getOwnPropertyNames(en)){if(dn.includes(Wt))continue;if((0,nn.Check)(rn,Pt,en[Wt])){cn[Wt]=Visit(rn,Pt,en[Wt])}}return cn}function FromObject(Wt,Pt,en){if(!(0,sn.IsObject)(en)||(0,sn.IsArray)(en))return en;const tn=Wt.additionalProperties;for(const an of Object.getOwnPropertyNames(en)){if(an in Wt.properties){en[an]=Visit(Wt.properties[an],Pt,en[an]);continue}if((0,on.IsSchema)(tn)&&(0,nn.Check)(tn,Pt,en[an])){en[an]=Visit(tn,Pt,en[an]);continue}delete en[an]}return en}function FromRecord(Wt,Pt,en){if(!(0,sn.IsObject)(en))return en;const tn=Wt.additionalProperties;const an=Object.keys(en);const[rn,In]=Object.entries(Wt.patternProperties)[0];const cn=new RegExp(rn);for(const Wt of an){if(cn.test(Wt)){en[Wt]=Visit(In,Pt,en[Wt]);continue}if((0,on.IsSchema)(tn)&&(0,nn.Check)(tn,Pt,en[Wt])){en[Wt]=Visit(tn,Pt,en[Wt]);continue}delete en[Wt]}return en}function FromRef(Wt,Pt,en){return Visit((0,rn.Deref)(Wt,Pt),Pt,en)}function FromThis(Wt,Pt,en){return Visit((0,rn.Deref)(Wt,Pt),Pt,en)}function FromTuple(Wt,Pt,en){if(!(0,sn.IsArray)(en))return en;if((0,sn.IsUndefined)(Wt.items))return[];const tn=Math.min(en.length,Wt.items.length);for(let nn=0;nntn?en.slice(0,tn):en}function FromUnion(Wt,Pt,en){for(const tn of Wt.anyOf){if(IsCheckable(tn)&&(0,nn.Check)(tn,Pt,en)){return Visit(tn,Pt,en)}}return en}function Visit(Wt,Pt,en){const tn=(0,sn.IsString)(Wt.$id)?[...Pt,Wt]:Pt;const nn=Wt;switch(nn[In.Kind]){case"Array":return FromArray(nn,tn,en);case"Intersect":return FromIntersect(nn,tn,en);case"Object":return FromObject(nn,tn,en);case"Record":return FromRecord(nn,tn,en);case"Ref":return FromRef(nn,tn,en);case"This":return FromThis(nn,tn,en);case"Tuple":return FromTuple(nn,tn,en);case"Union":return FromUnion(nn,tn,en);default:return en}}function Clean(...Wt){return Wt.length===3?Visit(Wt[0],Wt[1],Wt[2]):Visit(Wt[0],[],Wt[1])}Pt.Clean=Clean},30642:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(86519),Pt)},98699:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Clone=void 0;const tn=en(19522);function ObjectType(Wt){const Pt=[...Object.getOwnPropertyNames(Wt),...Object.getOwnPropertySymbols(Wt)];return Pt.reduce(((Pt,en)=>({...Pt,[en]:Clone(Wt[en])})),{})}function ArrayType(Wt){return Wt.map((Wt=>Clone(Wt)))}function TypedArrayType(Wt){return Wt.slice()}function DateType(Wt){return new Date(Wt.toISOString())}function ValueType(Wt){return Wt}function Clone(Wt){if((0,tn.IsArray)(Wt))return ArrayType(Wt);if((0,tn.IsDate)(Wt))return DateType(Wt);if((0,tn.IsStandardObject)(Wt))return ObjectType(Wt);if((0,tn.IsTypedArray)(Wt))return TypedArrayType(Wt);if((0,tn.IsValueType)(Wt))return ValueType(Wt);throw new Error("ValueClone: Unable to clone value")}Pt.Clone=Clone},66614:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(98699),Pt)},8903:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Convert=void 0;const tn=en(66614);const nn=en(35323);const an=en(75743);const rn=en(48121);const In=en(19522);function IsStringNumeric(Wt){return(0,In.IsString)(Wt)&&!isNaN(Wt)&&!isNaN(parseFloat(Wt))}function IsValueToString(Wt){return(0,In.IsBigInt)(Wt)||(0,In.IsBoolean)(Wt)||(0,In.IsNumber)(Wt)}function IsValueTrue(Wt){return Wt===true||(0,In.IsNumber)(Wt)&&Wt===1||(0,In.IsBigInt)(Wt)&&Wt===BigInt("1")||(0,In.IsString)(Wt)&&(Wt.toLowerCase()==="true"||Wt==="1")}function IsValueFalse(Wt){return Wt===false||(0,In.IsNumber)(Wt)&&(Wt===0||Object.is(Wt,-0))||(0,In.IsBigInt)(Wt)&&Wt===BigInt("0")||(0,In.IsString)(Wt)&&(Wt.toLowerCase()==="false"||Wt==="0"||Wt==="-0")}function IsTimeStringWithTimeZone(Wt){return(0,In.IsString)(Wt)&&/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i.test(Wt)}function IsTimeStringWithoutTimeZone(Wt){return(0,In.IsString)(Wt)&&/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)?$/i.test(Wt)}function IsDateTimeStringWithTimeZone(Wt){return(0,In.IsString)(Wt)&&/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i.test(Wt)}function IsDateTimeStringWithoutTimeZone(Wt){return(0,In.IsString)(Wt)&&/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)?$/i.test(Wt)}function IsDateString(Wt){return(0,In.IsString)(Wt)&&/^\d\d\d\d-[0-1]\d-[0-3]\d$/i.test(Wt)}function TryConvertLiteralString(Wt,Pt){const en=TryConvertString(Wt);return en===Pt?en:Wt}function TryConvertLiteralNumber(Wt,Pt){const en=TryConvertNumber(Wt);return en===Pt?en:Wt}function TryConvertLiteralBoolean(Wt,Pt){const en=TryConvertBoolean(Wt);return en===Pt?en:Wt}function TryConvertLiteral(Wt,Pt){return(0,In.IsString)(Wt.const)?TryConvertLiteralString(Pt,Wt.const):(0,In.IsNumber)(Wt.const)?TryConvertLiteralNumber(Pt,Wt.const):(0,In.IsBoolean)(Wt.const)?TryConvertLiteralBoolean(Pt,Wt.const):(0,tn.Clone)(Pt)}function TryConvertBoolean(Wt){return IsValueTrue(Wt)?true:IsValueFalse(Wt)?false:Wt}function TryConvertBigInt(Wt){return IsStringNumeric(Wt)?BigInt(parseInt(Wt)):(0,In.IsNumber)(Wt)?BigInt(Wt|0):IsValueFalse(Wt)?BigInt(0):IsValueTrue(Wt)?BigInt(1):Wt}function TryConvertString(Wt){return IsValueToString(Wt)?Wt.toString():(0,In.IsSymbol)(Wt)&&Wt.description!==undefined?Wt.description.toString():Wt}function TryConvertNumber(Wt){return IsStringNumeric(Wt)?parseFloat(Wt):IsValueTrue(Wt)?1:IsValueFalse(Wt)?0:Wt}function TryConvertInteger(Wt){return IsStringNumeric(Wt)?parseInt(Wt):(0,In.IsNumber)(Wt)?Wt|0:IsValueTrue(Wt)?1:IsValueFalse(Wt)?0:Wt}function TryConvertNull(Wt){return(0,In.IsString)(Wt)&&Wt.toLowerCase()==="null"?null:Wt}function TryConvertUndefined(Wt){return(0,In.IsString)(Wt)&&Wt==="undefined"?undefined:Wt}function TryConvertDate(Wt){return(0,In.IsDate)(Wt)?Wt:(0,In.IsNumber)(Wt)?new Date(Wt):IsValueTrue(Wt)?new Date(1):IsValueFalse(Wt)?new Date(0):IsStringNumeric(Wt)?new Date(parseInt(Wt)):IsTimeStringWithoutTimeZone(Wt)?new Date(`1970-01-01T${Wt}.000Z`):IsTimeStringWithTimeZone(Wt)?new Date(`1970-01-01T${Wt}`):IsDateTimeStringWithoutTimeZone(Wt)?new Date(`${Wt}.000Z`):IsDateTimeStringWithTimeZone(Wt)?new Date(Wt):IsDateString(Wt)?new Date(`${Wt}T00:00:00.000Z`):Wt}function Default(Wt){return Wt}function FromArray(Wt,Pt,en){const tn=(0,In.IsArray)(en)?en:[en];return tn.map((en=>Visit(Wt.items,Pt,en)))}function FromBigInt(Wt,Pt,en){return TryConvertBigInt(en)}function FromBoolean(Wt,Pt,en){return TryConvertBoolean(en)}function FromDate(Wt,Pt,en){return TryConvertDate(en)}function FromInteger(Wt,Pt,en){return TryConvertInteger(en)}function FromIntersect(Wt,Pt,en){return Wt.allOf.reduce(((Wt,en)=>Visit(en,Pt,Wt)),en)}function FromLiteral(Wt,Pt,en){return TryConvertLiteral(Wt,en)}function FromNull(Wt,Pt,en){return TryConvertNull(en)}function FromNumber(Wt,Pt,en){return TryConvertNumber(en)}function FromObject(Wt,Pt,en){const tn=(0,In.IsObject)(en);if(!tn)return en;return Object.getOwnPropertyNames(Wt.properties).reduce(((en,tn)=>!(0,In.IsUndefined)(en[tn])?{...en,[tn]:Visit(Wt.properties[tn],Pt,en[tn])}:{...en}),en)}function FromRecord(Wt,Pt,en){const tn=Object.getOwnPropertyNames(Wt.patternProperties)[0];const nn=Wt.patternProperties[tn];const an={};for(const[Wt,tn]of Object.entries(en)){an[Wt]=Visit(nn,Pt,tn)}return an}function FromRef(Wt,Pt,en){return Visit((0,an.Deref)(Wt,Pt),Pt,en)}function FromString(Wt,Pt,en){return TryConvertString(en)}function FromSymbol(Wt,Pt,en){return(0,In.IsString)(en)||(0,In.IsNumber)(en)?Symbol(en):en}function FromThis(Wt,Pt,en){return Visit((0,an.Deref)(Wt,Pt),Pt,en)}function FromTuple(Wt,Pt,en){const tn=(0,In.IsArray)(en)&&!(0,In.IsUndefined)(Wt.items);if(!tn)return en;return en.map(((en,tn)=>tn{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Create=Pt.ValueCreateError=void 0;const tn=en(19522);const nn=en(35323);const an=en(66614);const rn=en(75743);const In=en(90984);const sn=en(50059);const on=en(97759);const cn=en(48121);const dn=en(94526);class ValueCreateError extends dn.TypeBoxError{constructor(Wt,Pt){super(Pt);this.schema=Wt}}Pt.ValueCreateError=ValueCreateError;function FromDefault(Wt){return typeof Wt==="function"?Wt:(0,an.Clone)(Wt)}function FromAny(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{return{}}}function FromArray(Wt,Pt){if(Wt.uniqueItems===true&&!(0,tn.HasPropertyKey)(Wt,"default")){throw new ValueCreateError(Wt,"Array with the uniqueItems constraint requires a default value")}else if("contains"in Wt&&!(0,tn.HasPropertyKey)(Wt,"default")){throw new ValueCreateError(Wt,"Array with the contains constraint requires a default value")}else if("default"in Wt){return FromDefault(Wt.default)}else if(Wt.minItems!==undefined){return Array.from({length:Wt.minItems}).map((en=>Visit(Wt.items,Pt)))}else{return[]}}function FromAsyncIterator(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{return async function*(){}()}}function FromBigInt(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{return BigInt(0)}}function FromBoolean(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{return false}}function FromConstructor(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{const en=Visit(Wt.returns,Pt);if(typeof en==="object"&&!Array.isArray(en)){return class{constructor(){for(const[Wt,Pt]of Object.entries(en)){const en=this;en[Wt]=Pt}}}}else{return class{}}}}function FromDate(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else if(Wt.minimumTimestamp!==undefined){return new Date(Wt.minimumTimestamp)}else{return new Date}}function FromFunction(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{return()=>Visit(Wt.returns,Pt)}}function FromInteger(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else if(Wt.minimum!==undefined){return Wt.minimum}else{return 0}}function FromIntersect(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{const en=Wt.allOf.reduce(((Wt,en)=>{const tn=Visit(en,Pt);return typeof tn==="object"?{...Wt,...tn}:tn}),{});if(!(0,nn.Check)(Wt,Pt,en))throw new ValueCreateError(Wt,"Intersect produced invalid value. Consider using a default value.");return en}}function FromIterator(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{return function*(){}()}}function FromLiteral(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{return Wt.const}}function FromNever(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{throw new ValueCreateError(Wt,"Never types cannot be created. Consider using a default value.")}}function FromNot(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{throw new ValueCreateError(Wt,"Not types must have a default value")}}function FromNull(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{return null}}function FromNumber(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else if(Wt.minimum!==undefined){return Wt.minimum}else{return 0}}function FromObject(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{const en=new Set(Wt.required);return FromDefault(Wt.default)||Object.entries(Wt.properties).reduce(((Wt,[tn,nn])=>en.has(tn)?{...Wt,[tn]:Visit(nn,Pt)}:{...Wt}),{})}}function FromPromise(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{return Promise.resolve(Visit(Wt.item,Pt))}}function FromRecord(Wt,Pt){const[en,nn]=Object.entries(Wt.patternProperties)[0];if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else if(!(en===sn.PatternStringExact||en===sn.PatternNumberExact)){const Wt=en.slice(1,en.length-1).split("|");return Wt.reduce(((Wt,en)=>({...Wt,[en]:Visit(nn,Pt)})),{})}else{return{}}}function FromRef(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{return Visit((0,rn.Deref)(Wt,Pt),Pt)}}function FromRegExp(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{throw new ValueCreateError(Wt,"RegExp types cannot be created. Consider using a default value.")}}function FromString(Wt,Pt){if(Wt.pattern!==undefined){if(!(0,tn.HasPropertyKey)(Wt,"default")){throw new ValueCreateError(Wt,"String types with patterns must specify a default value")}else{return FromDefault(Wt.default)}}else if(Wt.format!==undefined){if(!(0,tn.HasPropertyKey)(Wt,"default")){throw new ValueCreateError(Wt,"String types with formats must specify a default value")}else{return FromDefault(Wt.default)}}else{if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else if(Wt.minLength!==undefined){return Array.from({length:Wt.minLength}).map((()=>" ")).join("")}else{return""}}}function FromSymbol(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else if("value"in Wt){return Symbol.for(Wt.value)}else{return Symbol()}}function FromTemplateLiteral(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}if(!(0,In.IsTemplateLiteralFinite)(Wt))throw new ValueCreateError(Wt,"Can only create template literals that produce a finite variants. Consider using a default value.");const en=(0,In.TemplateLiteralGenerate)(Wt);return en[0]}function FromThis(Wt,Pt){if(pn++>un)throw new ValueCreateError(Wt,"Cannot create recursive type as it appears possibly infinite. Consider using a default.");if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{return Visit((0,rn.Deref)(Wt,Pt),Pt)}}function FromTuple(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}if(Wt.items===undefined){return[]}else{return Array.from({length:Wt.minItems}).map(((en,tn)=>Visit(Wt.items[tn],Pt)))}}function FromUndefined(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{return undefined}}function FromUnion(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else if(Wt.anyOf.length===0){throw new Error("ValueCreate.Union: Cannot create Union with zero variants")}else{return Visit(Wt.anyOf[0],Pt)}}function FromUint8Array(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else if(Wt.minByteLength!==undefined){return new Uint8Array(Wt.minByteLength)}else{return new Uint8Array(0)}}function FromUnknown(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{return{}}}function FromVoid(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{return void 0}}function FromKind(Wt,Pt){if((0,tn.HasPropertyKey)(Wt,"default")){return FromDefault(Wt.default)}else{throw new Error("User defined types must specify a default value")}}function Visit(Wt,Pt){const en=(0,tn.IsString)(Wt.$id)?[...Pt,Wt]:Pt;const nn=Wt;switch(nn[cn.Kind]){case"Any":return FromAny(nn,en);case"Array":return FromArray(nn,en);case"AsyncIterator":return FromAsyncIterator(nn,en);case"BigInt":return FromBigInt(nn,en);case"Boolean":return FromBoolean(nn,en);case"Constructor":return FromConstructor(nn,en);case"Date":return FromDate(nn,en);case"Function":return FromFunction(nn,en);case"Integer":return FromInteger(nn,en);case"Intersect":return FromIntersect(nn,en);case"Iterator":return FromIterator(nn,en);case"Literal":return FromLiteral(nn,en);case"Never":return FromNever(nn,en);case"Not":return FromNot(nn,en);case"Null":return FromNull(nn,en);case"Number":return FromNumber(nn,en);case"Object":return FromObject(nn,en);case"Promise":return FromPromise(nn,en);case"Record":return FromRecord(nn,en);case"Ref":return FromRef(nn,en);case"RegExp":return FromRegExp(nn,en);case"String":return FromString(nn,en);case"Symbol":return FromSymbol(nn,en);case"TemplateLiteral":return FromTemplateLiteral(nn,en);case"This":return FromThis(nn,en);case"Tuple":return FromTuple(nn,en);case"Undefined":return FromUndefined(nn,en);case"Union":return FromUnion(nn,en);case"Uint8Array":return FromUint8Array(nn,en);case"Unknown":return FromUnknown(nn,en);case"Void":return FromVoid(nn,en);default:if(!on.TypeRegistry.Has(nn[cn.Kind]))throw new ValueCreateError(nn,"Unknown type");return FromKind(nn,en)}}const un=512;let pn=0;function Create(...Wt){pn=0;return Wt.length===2?Visit(Wt[0],Wt[1]):Visit(Wt[0],[])}Pt.Create=Create},37029:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(78981),Pt)},74475:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Default=void 0;const tn=en(35323);const nn=en(66614);const an=en(75743);const rn=en(48121);const In=en(19522);const sn=en(20109);function ValueOrDefault(Wt,Pt){return Pt===undefined&&"default"in Wt?(0,nn.Clone)(Wt.default):Pt}function IsCheckable(Wt){return(0,sn.IsSchema)(Wt)&&Wt[rn.Kind]!=="Unsafe"}function IsDefaultSchema(Wt){return(0,sn.IsSchema)(Wt)&&"default"in Wt}function FromArray(Wt,Pt,en){const tn=ValueOrDefault(Wt,en);if(!(0,In.IsArray)(tn))return tn;for(let en=0;en{const nn=Visit(en,Pt,tn);return(0,In.IsObject)(nn)?{...Wt,...nn}:nn}),{})}function FromObject(Wt,Pt,en){const tn=ValueOrDefault(Wt,en);if(!(0,In.IsObject)(tn))return tn;const nn=Wt.additionalProperties;const an=Object.getOwnPropertyNames(Wt.properties);for(const en of an){if(!IsDefaultSchema(Wt.properties[en]))continue;tn[en]=Visit(Wt.properties[en],Pt,tn[en])}if(!IsDefaultSchema(nn))return tn;for(const Wt of Object.getOwnPropertyNames(tn)){if(an.includes(Wt))continue;tn[Wt]=Visit(nn,Pt,tn[Wt])}return tn}function FromRecord(Wt,Pt,en){const tn=ValueOrDefault(Wt,en);if(!(0,In.IsObject)(tn))return tn;const nn=Wt.additionalProperties;const[an,rn]=Object.entries(Wt.patternProperties)[0];const sn=new RegExp(an);for(const Wt of Object.getOwnPropertyNames(tn)){if(!(sn.test(Wt)&&IsDefaultSchema(rn)))continue;tn[Wt]=Visit(rn,Pt,tn[Wt])}if(!IsDefaultSchema(nn))return tn;for(const Wt of Object.getOwnPropertyNames(tn)){if(sn.test(Wt))continue;tn[Wt]=Visit(nn,Pt,tn[Wt])}return tn}function FromRef(Wt,Pt,en){return Visit((0,an.Deref)(Wt,Pt),Pt,ValueOrDefault(Wt,en))}function FromThis(Wt,Pt,en){return Visit((0,an.Deref)(Wt,Pt),Pt,en)}function FromTuple(Wt,Pt,en){const tn=ValueOrDefault(Wt,en);if(!(0,In.IsArray)(tn)||(0,In.IsUndefined)(Wt.items))return tn;const[nn,an]=[Wt.items,Math.max(Wt.items.length,tn.length)];for(let Wt=0;Wt{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Patch=Pt.Diff=Pt.ValueDeltaSymbolError=Pt.ValueDeltaError=Pt.Edit=Pt.Delete=Pt.Update=Pt.Insert=void 0;const tn=en(19522);const nn=en(71054);const an=en(66614);const rn=en(94526);const In=en(24727);const sn=en(13871);const on=en(69429);const cn=en(41178);const dn=en(41743);Pt.Insert=(0,sn.Object)({type:(0,In.Literal)("insert"),path:(0,on.String)(),value:(0,cn.Unknown)()});Pt.Update=(0,sn.Object)({type:(0,In.Literal)("update"),path:(0,on.String)(),value:(0,cn.Unknown)()});Pt.Delete=(0,sn.Object)({type:(0,In.Literal)("delete"),path:(0,on.String)()});Pt.Edit=(0,dn.Union)([Pt.Insert,Pt.Update,Pt.Delete]);class ValueDeltaError extends rn.TypeBoxError{constructor(Wt,Pt){super(Pt);this.value=Wt}}Pt.ValueDeltaError=ValueDeltaError;class ValueDeltaSymbolError extends ValueDeltaError{constructor(Wt){super(Wt,"Cannot diff objects with symbol keys");this.value=Wt}}Pt.ValueDeltaSymbolError=ValueDeltaSymbolError;function CreateUpdate(Wt,Pt){return{type:"update",path:Wt,value:Pt}}function CreateInsert(Wt,Pt){return{type:"insert",path:Wt,value:Pt}}function CreateDelete(Wt){return{type:"delete",path:Wt}}function*ObjectType(Wt,Pt,en){if(!(0,tn.IsStandardObject)(en))return yield CreateUpdate(Wt,en);const nn=[...globalThis.Object.keys(Pt),...globalThis.Object.getOwnPropertySymbols(Pt)];const an=[...globalThis.Object.keys(en),...globalThis.Object.getOwnPropertySymbols(en)];for(const Pt of nn){if((0,tn.IsSymbol)(Pt))throw new ValueDeltaSymbolError(Pt);if((0,tn.IsUndefined)(en[Pt])&&an.includes(Pt))yield CreateUpdate(`${Wt}/${globalThis.String(Pt)}`,undefined)}for(const nn of an){if((0,tn.IsUndefined)(Pt[nn])||(0,tn.IsUndefined)(en[nn]))continue;if((0,tn.IsSymbol)(nn))throw new ValueDeltaSymbolError(nn);yield*Visit(`${Wt}/${globalThis.String(nn)}`,Pt[nn],en[nn])}for(const nn of an){if((0,tn.IsSymbol)(nn))throw new ValueDeltaSymbolError(nn);if((0,tn.IsUndefined)(Pt[nn]))yield CreateInsert(`${Wt}/${globalThis.String(nn)}`,en[nn])}for(const Pt of nn.reverse()){if((0,tn.IsSymbol)(Pt))throw new ValueDeltaSymbolError(Pt);if((0,tn.IsUndefined)(en[Pt])&&!an.includes(Pt))yield CreateDelete(`${Wt}/${globalThis.String(Pt)}`)}}function*ArrayType(Wt,Pt,en){if(!(0,tn.IsArray)(en))return yield CreateUpdate(Wt,en);for(let tn=0;tn=0;tn--){if(tn0&&Wt[0].path===""&&Wt[0].type==="update"}function IsIdentity(Wt){return Wt.length===0}function Patch(Wt,Pt){if(IsRootUpdate(Pt)){return(0,an.Clone)(Pt[0].value)}if(IsIdentity(Pt)){return(0,an.Clone)(Wt)}const en=(0,an.Clone)(Wt);for(const Wt of Pt){switch(Wt.type){case"insert":{nn.ValuePointer.Set(en,Wt.path,Wt.value);break}case"update":{nn.ValuePointer.Set(en,Wt.path,Wt.value);break}case"delete":{nn.ValuePointer.Delete(en,Wt.path);break}}}return en}Pt.Patch=Patch},6145:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(86179),Pt)},41239:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Deref=Pt.TypeDereferenceError=void 0;const tn=en(94526);class TypeDereferenceError extends tn.TypeBoxError{constructor(Wt){super(`Unable to dereference schema with $id '${Wt.$id}'`);this.schema=Wt}}Pt.TypeDereferenceError=TypeDereferenceError;function Deref(Wt,Pt){const en=Pt.findIndex((Pt=>Pt.$id===Wt.$ref));if(en===-1)throw new TypeDereferenceError(Wt);return Pt[en]}Pt.Deref=Deref},75743:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(41239),Pt)},24487:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Equal=void 0;const tn=en(19522);function ObjectType(Wt,Pt){if(!(0,tn.IsStandardObject)(Pt))return false;const en=[...Object.keys(Wt),...Object.getOwnPropertySymbols(Wt)];const nn=[...Object.keys(Pt),...Object.getOwnPropertySymbols(Pt)];if(en.length!==nn.length)return false;return en.every((en=>Equal(Wt[en],Pt[en])))}function DateType(Wt,Pt){return(0,tn.IsDate)(Pt)&&Wt.getTime()===Pt.getTime()}function ArrayType(Wt,Pt){if(!(0,tn.IsArray)(Pt)||Wt.length!==Pt.length)return false;return Wt.every(((Wt,en)=>Equal(Wt,Pt[en])))}function TypedArrayType(Wt,Pt){if(!(0,tn.IsTypedArray)(Pt)||Wt.length!==Pt.length||Object.getPrototypeOf(Wt).constructor.name!==Object.getPrototypeOf(Pt).constructor.name)return false;return Wt.every(((Wt,en)=>Equal(Wt,Pt[en])))}function ValueType(Wt,Pt){return Wt===Pt}function Equal(Wt,Pt){if((0,tn.IsStandardObject)(Wt))return ObjectType(Wt,Pt);if((0,tn.IsDate)(Wt))return DateType(Wt,Pt);if((0,tn.IsTypedArray)(Wt))return TypedArrayType(Wt,Pt);if((0,tn.IsArray)(Wt))return ArrayType(Wt,Pt);if((0,tn.IsValueType)(Wt))return ValueType(Wt,Pt);throw new Error("ValueEquals: Unable to compare value")}Pt.Equal=Equal},7955:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(24487),Pt)},19567:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.IsValueType=Pt.IsSymbol=Pt.IsFunction=Pt.IsString=Pt.IsBigInt=Pt.IsInteger=Pt.IsNumber=Pt.IsBoolean=Pt.IsNull=Pt.IsUndefined=Pt.IsArray=Pt.IsObject=Pt.HasPropertyKey=Pt.IsBigUint64Array=Pt.IsBigInt64Array=Pt.IsFloat64Array=Pt.IsFloat32Array=Pt.IsUint32Array=Pt.IsInt32Array=Pt.IsUint16Array=Pt.IsInt16Array=Pt.IsUint8ClampedArray=Pt.IsUint8Array=Pt.IsInt8Array=Pt.IsTypedArray=Pt.IsRegExp=Pt.IsSet=Pt.IsMap=Pt.IsDate=Pt.IsPromise=Pt.IsInstanceObject=Pt.IsStandardObject=Pt.IsIterator=Pt.IsAsyncIterator=void 0;function IsAsyncIterator(Wt){return IsObject(Wt)&&Symbol.asyncIterator in Wt}Pt.IsAsyncIterator=IsAsyncIterator;function IsIterator(Wt){return IsObject(Wt)&&Symbol.iterator in Wt}Pt.IsIterator=IsIterator;function IsStandardObject(Wt){return IsObject(Wt)&&!IsArray(Wt)&&IsFunction(Wt.constructor)&&Wt.constructor.name==="Object"}Pt.IsStandardObject=IsStandardObject;function IsInstanceObject(Wt){return IsObject(Wt)&&!IsArray(Wt)&&IsFunction(Wt.constructor)&&Wt.constructor.name!=="Object"}Pt.IsInstanceObject=IsInstanceObject;function IsPromise(Wt){return Wt instanceof Promise}Pt.IsPromise=IsPromise;function IsDate(Wt){return Wt instanceof Date&&Number.isFinite(Wt.getTime())}Pt.IsDate=IsDate;function IsMap(Wt){return Wt instanceof globalThis.Map}Pt.IsMap=IsMap;function IsSet(Wt){return Wt instanceof globalThis.Set}Pt.IsSet=IsSet;function IsRegExp(Wt){return Wt instanceof globalThis.RegExp}Pt.IsRegExp=IsRegExp;function IsTypedArray(Wt){return ArrayBuffer.isView(Wt)}Pt.IsTypedArray=IsTypedArray;function IsInt8Array(Wt){return Wt instanceof globalThis.Int8Array}Pt.IsInt8Array=IsInt8Array;function IsUint8Array(Wt){return Wt instanceof globalThis.Uint8Array}Pt.IsUint8Array=IsUint8Array;function IsUint8ClampedArray(Wt){return Wt instanceof globalThis.Uint8ClampedArray}Pt.IsUint8ClampedArray=IsUint8ClampedArray;function IsInt16Array(Wt){return Wt instanceof globalThis.Int16Array}Pt.IsInt16Array=IsInt16Array;function IsUint16Array(Wt){return Wt instanceof globalThis.Uint16Array}Pt.IsUint16Array=IsUint16Array;function IsInt32Array(Wt){return Wt instanceof globalThis.Int32Array}Pt.IsInt32Array=IsInt32Array;function IsUint32Array(Wt){return Wt instanceof globalThis.Uint32Array}Pt.IsUint32Array=IsUint32Array;function IsFloat32Array(Wt){return Wt instanceof globalThis.Float32Array}Pt.IsFloat32Array=IsFloat32Array;function IsFloat64Array(Wt){return Wt instanceof globalThis.Float64Array}Pt.IsFloat64Array=IsFloat64Array;function IsBigInt64Array(Wt){return Wt instanceof globalThis.BigInt64Array}Pt.IsBigInt64Array=IsBigInt64Array;function IsBigUint64Array(Wt){return Wt instanceof globalThis.BigUint64Array}Pt.IsBigUint64Array=IsBigUint64Array;function HasPropertyKey(Wt,Pt){return Pt in Wt}Pt.HasPropertyKey=HasPropertyKey;function IsObject(Wt){return Wt!==null&&typeof Wt==="object"}Pt.IsObject=IsObject;function IsArray(Wt){return Array.isArray(Wt)&&!ArrayBuffer.isView(Wt)}Pt.IsArray=IsArray;function IsUndefined(Wt){return Wt===undefined}Pt.IsUndefined=IsUndefined;function IsNull(Wt){return Wt===null}Pt.IsNull=IsNull;function IsBoolean(Wt){return typeof Wt==="boolean"}Pt.IsBoolean=IsBoolean;function IsNumber(Wt){return typeof Wt==="number"}Pt.IsNumber=IsNumber;function IsInteger(Wt){return IsNumber(Wt)&&Number.isInteger(Wt)}Pt.IsInteger=IsInteger;function IsBigInt(Wt){return typeof Wt==="bigint"}Pt.IsBigInt=IsBigInt;function IsString(Wt){return typeof Wt==="string"}Pt.IsString=IsString;function IsFunction(Wt){return typeof Wt==="function"}Pt.IsFunction=IsFunction;function IsSymbol(Wt){return typeof Wt==="symbol"}Pt.IsSymbol=IsSymbol;function IsValueType(Wt){return IsBigInt(Wt)||IsBoolean(Wt)||IsNull(Wt)||IsNumber(Wt)||IsString(Wt)||IsSymbol(Wt)||IsUndefined(Wt)}Pt.IsValueType=IsValueType},19522:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(19567),Pt)},59289:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Hash=Pt.ValueHashError=void 0;const tn=en(19522);const nn=en(94526);class ValueHashError extends nn.TypeBoxError{constructor(Wt){super(`Unable to hash value`);this.value=Wt}}Pt.ValueHashError=ValueHashError;var an;(function(Wt){Wt[Wt["Undefined"]=0]="Undefined";Wt[Wt["Null"]=1]="Null";Wt[Wt["Boolean"]=2]="Boolean";Wt[Wt["Number"]=3]="Number";Wt[Wt["String"]=4]="String";Wt[Wt["Object"]=5]="Object";Wt[Wt["Array"]=6]="Array";Wt[Wt["Date"]=7]="Date";Wt[Wt["Uint8Array"]=8]="Uint8Array";Wt[Wt["Symbol"]=9]="Symbol";Wt[Wt["BigInt"]=10]="BigInt"})(an||(an={}));let rn=BigInt("14695981039346656037");const[In,sn]=[BigInt("1099511628211"),BigInt("2")**BigInt("64")];const on=Array.from({length:256}).map(((Wt,Pt)=>BigInt(Pt)));const cn=new Float64Array(1);const dn=new DataView(cn.buffer);const un=new Uint8Array(cn.buffer);function*NumberToBytes(Wt){const Pt=Wt===0?1:Math.ceil(Math.floor(Math.log2(Wt)+1)/8);for(let en=0;en>8*(Pt-1-en)&255}}function ArrayType(Wt){FNV1A64(an.Array);for(const Pt of Wt){Visit(Pt)}}function BooleanType(Wt){FNV1A64(an.Boolean);FNV1A64(Wt?1:0)}function BigIntType(Wt){FNV1A64(an.BigInt);dn.setBigInt64(0,Wt);for(const Wt of un){FNV1A64(Wt)}}function DateType(Wt){FNV1A64(an.Date);Visit(Wt.getTime())}function NullType(Wt){FNV1A64(an.Null)}function NumberType(Wt){FNV1A64(an.Number);dn.setFloat64(0,Wt);for(const Wt of un){FNV1A64(Wt)}}function ObjectType(Wt){FNV1A64(an.Object);for(const Pt of globalThis.Object.keys(Wt).sort()){Visit(Pt);Visit(Wt[Pt])}}function StringType(Wt){FNV1A64(an.String);for(let Pt=0;Pt{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Mutate=Pt.ValueMutateError=void 0;const tn=en(19522);const nn=en(71054);const an=en(66614);const rn=en(94526);class ValueMutateError extends rn.TypeBoxError{constructor(Wt){super(Wt)}}Pt.ValueMutateError=ValueMutateError;function ObjectType(Wt,Pt,en,rn){if(!(0,tn.IsStandardObject)(en)){nn.ValuePointer.Set(Wt,Pt,(0,an.Clone)(rn))}else{const tn=Object.keys(en);const nn=Object.keys(rn);for(const Wt of tn){if(!nn.includes(Wt)){delete en[Wt]}}for(const Wt of nn){if(!tn.includes(Wt)){en[Wt]=null}}for(const tn of nn){Visit(Wt,`${Pt}/${tn}`,en[tn],rn[tn])}}}function ArrayType(Wt,Pt,en,rn){if(!(0,tn.IsArray)(en)){nn.ValuePointer.Set(Wt,Pt,(0,an.Clone)(rn))}else{for(let tn=0;tn{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ValuePointer=void 0;Pt.ValuePointer=en(79456)},79456:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Get=Pt.Has=Pt.Delete=Pt.Set=Pt.Format=Pt.ValuePointerRootDeleteError=Pt.ValuePointerRootSetError=void 0;const tn=en(94526);class ValuePointerRootSetError extends tn.TypeBoxError{constructor(Wt,Pt,en){super("Cannot set root value");this.value=Wt;this.path=Pt;this.update=en}}Pt.ValuePointerRootSetError=ValuePointerRootSetError;class ValuePointerRootDeleteError extends tn.TypeBoxError{constructor(Wt,Pt){super("Cannot delete root value");this.value=Wt;this.path=Pt}}Pt.ValuePointerRootDeleteError=ValuePointerRootDeleteError;function Escape(Wt){return Wt.indexOf("~")===-1?Wt:Wt.replace(/~1/g,"/").replace(/~0/g,"~")}function*Format(Wt){if(Wt==="")return;let[Pt,en]=[0,0];for(let tn=0;tn{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TransformDecode=Pt.TransformDecodeError=Pt.TransformDecodeCheckError=void 0;const tn=en(48121);const nn=en(94526);const an=en(30658);const rn=en(89777);const In=en(75743);const sn=en(35323);const on=en(19522);const cn=en(20109);class TransformDecodeCheckError extends nn.TypeBoxError{constructor(Wt,Pt,en){super(`Unable to decode value as it does not match the expected schema`);this.schema=Wt;this.value=Pt;this.error=en}}Pt.TransformDecodeCheckError=TransformDecodeCheckError;class TransformDecodeError extends nn.TypeBoxError{constructor(Wt,Pt,en,tn){super(tn instanceof Error?tn.message:"Unknown error");this.schema=Wt;this.path=Pt;this.value=en;this.error=tn}}Pt.TransformDecodeError=TransformDecodeError;function Default(Wt,Pt,en){try{return(0,cn.IsTransform)(Wt)?Wt[tn.TransformKind].Decode(en):en}catch(tn){throw new TransformDecodeError(Wt,Pt,en,tn)}}function FromArray(Wt,Pt,en,tn){return(0,on.IsArray)(tn)?Default(Wt,en,tn.map(((tn,nn)=>Visit(Wt.items,Pt,`${en}/${nn}`,tn)))):Default(Wt,en,tn)}function FromIntersect(Wt,Pt,en,tn){if(!(0,on.IsStandardObject)(tn)||(0,on.IsValueType)(tn))return Default(Wt,en,tn);const nn=(0,an.KeyOfPropertyKeys)(Wt);const In=nn.reduce(((tn,nn)=>nn in tn?{...tn,[nn]:Visit((0,rn.Index)(Wt,[nn]),Pt,`${en}/${nn}`,tn[nn])}:tn),tn);if(!(0,cn.IsTransform)(Wt.unevaluatedProperties)){return Default(Wt,en,In)}const sn=Object.getOwnPropertyNames(In);const dn=Wt.unevaluatedProperties;const un=sn.reduce(((Wt,Pt)=>!nn.includes(Pt)?{...Wt,[Pt]:Default(dn,`${en}/${Pt}`,Wt[Pt])}:Wt),In);return Default(Wt,en,un)}function FromNot(Wt,Pt,en,tn){return Default(Wt,en,Visit(Wt.not,Pt,en,tn))}function FromObject(Wt,Pt,en,tn){if(!(0,on.IsStandardObject)(tn))return Default(Wt,en,tn);const nn=(0,an.KeyOfPropertyKeys)(Wt);const rn=nn.reduce(((tn,nn)=>nn in tn?{...tn,[nn]:Visit(Wt.properties[nn],Pt,`${en}/${nn}`,tn[nn])}:tn),tn);if(!(0,cn.IsSchema)(Wt.additionalProperties)){return Default(Wt,en,rn)}const In=Object.getOwnPropertyNames(rn);const sn=Wt.additionalProperties;const dn=In.reduce(((Wt,Pt)=>!nn.includes(Pt)?{...Wt,[Pt]:Default(sn,`${en}/${Pt}`,Wt[Pt])}:Wt),rn);return Default(Wt,en,dn)}function FromRecord(Wt,Pt,en,tn){if(!(0,on.IsStandardObject)(tn))return Default(Wt,en,tn);const nn=Object.getOwnPropertyNames(Wt.patternProperties)[0];const an=new RegExp(nn);const rn=Object.getOwnPropertyNames(tn).reduce(((tn,rn)=>an.test(rn)?{...tn,[rn]:Visit(Wt.patternProperties[nn],Pt,`${en}/${rn}`,tn[rn])}:tn),tn);if(!(0,cn.IsSchema)(Wt.additionalProperties)){return Default(Wt,en,rn)}const In=Object.getOwnPropertyNames(rn);const sn=Wt.additionalProperties;const dn=In.reduce(((Wt,Pt)=>!an.test(Pt)?{...Wt,[Pt]:Default(sn,`${en}/${Pt}`,Wt[Pt])}:Wt),rn);return Default(Wt,en,dn)}function FromRef(Wt,Pt,en,tn){const nn=(0,In.Deref)(Wt,Pt);return Default(Wt,en,Visit(nn,Pt,en,tn))}function FromThis(Wt,Pt,en,tn){const nn=(0,In.Deref)(Wt,Pt);return Default(Wt,en,Visit(nn,Pt,en,tn))}function FromTuple(Wt,Pt,en,tn){return(0,on.IsArray)(tn)&&(0,on.IsArray)(Wt.items)?Default(Wt,en,Wt.items.map(((Wt,nn)=>Visit(Wt,Pt,`${en}/${nn}`,tn[nn])))):Default(Wt,en,tn)}function FromUnion(Wt,Pt,en,tn){for(const nn of Wt.anyOf){if(!(0,sn.Check)(nn,Pt,tn))continue;const an=Visit(nn,Pt,en,tn);return Default(Wt,en,an)}return Default(Wt,en,tn)}function Visit(Wt,Pt,en,nn){const an=typeof Wt.$id==="string"?[...Pt,Wt]:Pt;const rn=Wt;switch(Wt[tn.Kind]){case"Array":return FromArray(rn,an,en,nn);case"Intersect":return FromIntersect(rn,an,en,nn);case"Not":return FromNot(rn,an,en,nn);case"Object":return FromObject(rn,an,en,nn);case"Record":return FromRecord(rn,an,en,nn);case"Ref":return FromRef(rn,an,en,nn);case"Symbol":return Default(rn,en,nn);case"This":return FromThis(rn,an,en,nn);case"Tuple":return FromTuple(rn,an,en,nn);case"Union":return FromUnion(rn,an,en,nn);default:return Default(rn,en,nn)}}function TransformDecode(Wt,Pt,en){return Visit(Wt,Pt,"",en)}Pt.TransformDecode=TransformDecode},67873:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TransformEncode=Pt.TransformEncodeError=Pt.TransformEncodeCheckError=void 0;const tn=en(48121);const nn=en(94526);const an=en(30658);const rn=en(89777);const In=en(75743);const sn=en(35323);const on=en(19522);const cn=en(20109);class TransformEncodeCheckError extends nn.TypeBoxError{constructor(Wt,Pt,en){super(`The encoded value does not match the expected schema`);this.schema=Wt;this.value=Pt;this.error=en}}Pt.TransformEncodeCheckError=TransformEncodeCheckError;class TransformEncodeError extends nn.TypeBoxError{constructor(Wt,Pt,en,tn){super(`${tn instanceof Error?tn.message:"Unknown error"}`);this.schema=Wt;this.path=Pt;this.value=en;this.error=tn}}Pt.TransformEncodeError=TransformEncodeError;function Default(Wt,Pt,en){try{return(0,cn.IsTransform)(Wt)?Wt[tn.TransformKind].Encode(en):en}catch(tn){throw new TransformEncodeError(Wt,Pt,en,tn)}}function FromArray(Wt,Pt,en,tn){const nn=Default(Wt,en,tn);return(0,on.IsArray)(nn)?nn.map(((tn,nn)=>Visit(Wt.items,Pt,`${en}/${nn}`,tn))):nn}function FromIntersect(Wt,Pt,en,tn){const nn=Default(Wt,en,tn);if(!(0,on.IsStandardObject)(tn)||(0,on.IsValueType)(tn))return nn;const In=(0,an.KeyOfPropertyKeys)(Wt);const sn=In.reduce(((tn,an)=>an in nn?{...tn,[an]:Visit((0,rn.Index)(Wt,[an]),Pt,`${en}/${an}`,tn[an])}:tn),nn);if(!(0,cn.IsTransform)(Wt.unevaluatedProperties)){return Default(Wt,en,sn)}const dn=Object.getOwnPropertyNames(sn);const un=Wt.unevaluatedProperties;return dn.reduce(((Wt,Pt)=>!In.includes(Pt)?{...Wt,[Pt]:Default(un,`${en}/${Pt}`,Wt[Pt])}:Wt),sn)}function FromNot(Wt,Pt,en,tn){return Default(Wt.not,en,Default(Wt,en,tn))}function FromObject(Wt,Pt,en,tn){const nn=Default(Wt,en,tn);if(!(0,on.IsStandardObject)(tn))return nn;const rn=(0,an.KeyOfPropertyKeys)(Wt);const In=rn.reduce(((tn,nn)=>nn in tn?{...tn,[nn]:Visit(Wt.properties[nn],Pt,`${en}/${nn}`,tn[nn])}:tn),nn);if(!(0,cn.IsSchema)(Wt.additionalProperties)){return In}const sn=Object.getOwnPropertyNames(In);const dn=Wt.additionalProperties;return sn.reduce(((Wt,Pt)=>!rn.includes(Pt)?{...Wt,[Pt]:Default(dn,`${en}/${Pt}`,Wt[Pt])}:Wt),In)}function FromRecord(Wt,Pt,en,tn){const nn=Default(Wt,en,tn);if(!(0,on.IsStandardObject)(tn))return nn;const an=Object.getOwnPropertyNames(Wt.patternProperties)[0];const rn=new RegExp(an);const In=Object.getOwnPropertyNames(tn).reduce(((tn,nn)=>rn.test(nn)?{...tn,[nn]:Visit(Wt.patternProperties[an],Pt,`${en}/${nn}`,tn[nn])}:tn),nn);if(!(0,cn.IsSchema)(Wt.additionalProperties)){return Default(Wt,en,In)}const sn=Object.getOwnPropertyNames(In);const dn=Wt.additionalProperties;return sn.reduce(((Wt,Pt)=>!rn.test(Pt)?{...Wt,[Pt]:Default(dn,`${en}/${Pt}`,Wt[Pt])}:Wt),In)}function FromRef(Wt,Pt,en,tn){const nn=(0,In.Deref)(Wt,Pt);const an=Visit(nn,Pt,en,tn);return Default(Wt,en,an)}function FromThis(Wt,Pt,en,tn){const nn=(0,In.Deref)(Wt,Pt);const an=Visit(nn,Pt,en,tn);return Default(Wt,en,an)}function FromTuple(Wt,Pt,en,tn){const nn=Default(Wt,en,tn);return(0,on.IsArray)(Wt.items)?Wt.items.map(((Wt,tn)=>Visit(Wt,Pt,`${en}/${tn}`,nn[tn]))):[]}function FromUnion(Wt,Pt,en,tn){for(const nn of Wt.anyOf){if(!(0,sn.Check)(nn,Pt,tn))continue;const an=Visit(nn,Pt,en,tn);return Default(Wt,en,an)}for(const nn of Wt.anyOf){const an=Visit(nn,Pt,en,tn);if(!(0,sn.Check)(Wt,Pt,an))continue;return Default(Wt,en,an)}return Default(Wt,en,tn)}function Visit(Wt,Pt,en,nn){const an=typeof Wt.$id==="string"?[...Pt,Wt]:Pt;const rn=Wt;switch(Wt[tn.Kind]){case"Array":return FromArray(rn,an,en,nn);case"Intersect":return FromIntersect(rn,an,en,nn);case"Not":return FromNot(rn,an,en,nn);case"Object":return FromObject(rn,an,en,nn);case"Record":return FromRecord(rn,an,en,nn);case"Ref":return FromRef(rn,an,en,nn);case"This":return FromThis(rn,an,en,nn);case"Tuple":return FromTuple(rn,an,en,nn);case"Union":return FromUnion(rn,an,en,nn);default:return Default(rn,en,nn)}}function TransformEncode(Wt,Pt,en){return Visit(Wt,Pt,"",en)}Pt.TransformEncode=TransformEncode},83371:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.HasTransform=void 0;const tn=en(75743);const nn=en(48121);const an=en(20109);const rn=en(19522);function FromArray(Wt,Pt){return(0,an.IsTransform)(Wt)||Visit(Wt.items,Pt)}function FromAsyncIterator(Wt,Pt){return(0,an.IsTransform)(Wt)||Visit(Wt.items,Pt)}function FromConstructor(Wt,Pt){return(0,an.IsTransform)(Wt)||Visit(Wt.returns,Pt)||Wt.parameters.some((Wt=>Visit(Wt,Pt)))}function FromFunction(Wt,Pt){return(0,an.IsTransform)(Wt)||Visit(Wt.returns,Pt)||Wt.parameters.some((Wt=>Visit(Wt,Pt)))}function FromIntersect(Wt,Pt){return(0,an.IsTransform)(Wt)||(0,an.IsTransform)(Wt.unevaluatedProperties)||Wt.allOf.some((Wt=>Visit(Wt,Pt)))}function FromIterator(Wt,Pt){return(0,an.IsTransform)(Wt)||Visit(Wt.items,Pt)}function FromNot(Wt,Pt){return(0,an.IsTransform)(Wt)||Visit(Wt.not,Pt)}function FromObject(Wt,Pt){return(0,an.IsTransform)(Wt)||Object.values(Wt.properties).some((Wt=>Visit(Wt,Pt)))||(0,an.IsSchema)(Wt.additionalProperties)&&Visit(Wt.additionalProperties,Pt)}function FromPromise(Wt,Pt){return(0,an.IsTransform)(Wt)||Visit(Wt.item,Pt)}function FromRecord(Wt,Pt){const en=Object.getOwnPropertyNames(Wt.patternProperties)[0];const tn=Wt.patternProperties[en];return(0,an.IsTransform)(Wt)||Visit(tn,Pt)||(0,an.IsSchema)(Wt.additionalProperties)&&(0,an.IsTransform)(Wt.additionalProperties)}function FromRef(Wt,Pt){if((0,an.IsTransform)(Wt))return true;return Visit((0,tn.Deref)(Wt,Pt),Pt)}function FromThis(Wt,Pt){if((0,an.IsTransform)(Wt))return true;return Visit((0,tn.Deref)(Wt,Pt),Pt)}function FromTuple(Wt,Pt){return(0,an.IsTransform)(Wt)||!(0,rn.IsUndefined)(Wt.items)&&Wt.items.some((Wt=>Visit(Wt,Pt)))}function FromUnion(Wt,Pt){return(0,an.IsTransform)(Wt)||Wt.anyOf.some((Wt=>Visit(Wt,Pt)))}function Visit(Wt,Pt){const en=(0,rn.IsString)(Wt.$id)?[...Pt,Wt]:Pt;const tn=Wt;if(Wt.$id&&In.has(Wt.$id))return false;if(Wt.$id)In.add(Wt.$id);switch(Wt[nn.Kind]){case"Array":return FromArray(tn,en);case"AsyncIterator":return FromAsyncIterator(tn,en);case"Constructor":return FromConstructor(tn,en);case"Function":return FromFunction(tn,en);case"Intersect":return FromIntersect(tn,en);case"Iterator":return FromIterator(tn,en);case"Not":return FromNot(tn,en);case"Object":return FromObject(tn,en);case"Promise":return FromPromise(tn,en);case"Record":return FromRecord(tn,en);case"Ref":return FromRef(tn,en);case"This":return FromThis(tn,en);case"Tuple":return FromTuple(tn,en);case"Union":return FromUnion(tn,en);default:return(0,an.IsTransform)(Wt)}}const In=new Set;function HasTransform(Wt,Pt){In.clear();return Visit(Wt,Pt)}Pt.HasTransform=HasTransform},90023:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(35401),Pt);nn(en(67873),Pt);nn(en(83371),Pt)},8430:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Value=void 0;Pt.Value=en(10091)},10091:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Mutate=Pt.Patch=Pt.Hash=Pt.Diff=Pt.Equal=Pt.Errors=Pt.Encode=Pt.Default=Pt.Decode=Pt.Clone=Pt.Convert=Pt.Clean=Pt.Check=Pt.Create=Pt.Cast=void 0;const tn=en(90023);const nn=en(18567);const an=en(73849);const rn=en(7955);const In=en(49098);const sn=en(66614);const on=en(23584);const cn=en(37029);const dn=en(30642);const un=en(35323);const pn=en(5850);const mn=en(6145);const bn=en(4672);function Cast(...Wt){return In.Cast.apply(In.Cast,Wt)}Pt.Cast=Cast;function Create(...Wt){return cn.Create.apply(cn.Create,Wt)}Pt.Create=Create;function Check(...Wt){return un.Check.apply(un.Check,Wt)}Pt.Check=Check;function Clean(...Wt){return dn.Clean.apply(dn.Clean,Wt)}Pt.Clean=Clean;function Convert(...Wt){return on.Convert.apply(on.Convert,Wt)}Pt.Convert=Convert;function Clone(Wt){return(0,sn.Clone)(Wt)}Pt.Clone=Clone;function Decode(...Wt){const[Pt,en,nn]=Wt.length===3?[Wt[0],Wt[1],Wt[2]]:[Wt[0],[],Wt[1]];if(!Check(Pt,en,nn))throw new tn.TransformDecodeCheckError(Pt,nn,Errors(Pt,en,nn).First());return(0,tn.TransformDecode)(Pt,en,nn)}Pt.Decode=Decode;function Default(...Wt){return pn.Default.apply(pn.Default,Wt)}Pt.Default=Default;function Encode(...Wt){const[Pt,en,nn]=Wt.length===3?[Wt[0],Wt[1],Wt[2]]:[Wt[0],[],Wt[1]];const an=(0,tn.TransformEncode)(Pt,en,nn);if(!Check(Pt,en,an))throw new tn.TransformEncodeCheckError(Pt,an,Errors(Pt,en,an).First());return an}Pt.Encode=Encode;function Errors(...Wt){return bn.Errors.apply(bn.Errors,Wt)}Pt.Errors=Errors;function Equal(Wt,Pt){return(0,rn.Equal)(Wt,Pt)}Pt.Equal=Equal;function Diff(Wt,Pt){return(0,mn.Diff)(Wt,Pt)}Pt.Diff=Diff;function Hash(Wt){return(0,an.Hash)(Wt)}Pt.Hash=Hash;function Patch(Wt,Pt){return(0,mn.Patch)(Wt,Pt)}Pt.Patch=Patch;function Mutate(Wt,Pt){(0,nn.Mutate)(Wt,Pt)}Pt.Mutate=Mutate},68789:function(Wt,Pt,en){"use strict";var tn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});const nn=tn(en(52165));const an=nn.default;Pt["default"]=an},62495:function(Wt,Pt,en){"use strict";var tn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});const nn=tn(en(16623));const an=nn.default;Pt["default"]=an},52165:function(Wt,Pt,en){"use strict";var tn=this&&this.__rest||function(Wt,Pt){var en={};for(var tn in Wt)if(Object.prototype.hasOwnProperty.call(Wt,tn)&&Pt.indexOf(tn)<0)en[tn]=Wt[tn];if(Wt!=null&&typeof Object.getOwnPropertySymbols==="function")for(var nn=0,tn=Object.getOwnPropertySymbols(Wt);nn0){pn.forEach((Wt=>{const Pt=parseInt(Wt.split(";")[0].split("=")[1].substring(0,1));const en=JSON.parse(Wt.split(";")[1].split("=")[1]);rn[`${en}Page`]=Pt}));rn.total=parseInt(un)}return{data:Object.assign(Object.assign({},dn),rn),error:null}}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{users:[]},error:Wt}}throw Wt}}async getUserById(Wt){try{return await(0,nn._request)(this.fetch,"GET",`${this.url}/admin/users/${Wt}`,{headers:this.headers,xform:nn._userResponse})}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{user:null},error:Wt}}throw Wt}}async updateUserById(Wt,Pt){try{return await(0,nn._request)(this.fetch,"PUT",`${this.url}/admin/users/${Wt}`,{body:Pt,headers:this.headers,xform:nn._userResponse})}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{user:null},error:Wt}}throw Wt}}async deleteUser(Wt,Pt=false){try{return await(0,nn._request)(this.fetch,"DELETE",`${this.url}/admin/users/${Wt}`,{headers:this.headers,body:{should_soft_delete:Pt},xform:nn._userResponse})}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{user:null},error:Wt}}throw Wt}}async _listFactors(Wt){try{const{data:Pt,error:en}=await(0,nn._request)(this.fetch,"GET",`${this.url}/admin/users/${Wt.userId}/factors`,{headers:this.headers,xform:Wt=>({data:{factors:Wt},error:null})});return{data:Pt,error:en}}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:null,error:Wt}}throw Wt}}async _deleteFactor(Wt){try{const Pt=await(0,nn._request)(this.fetch,"DELETE",`${this.url}/admin/users/${Wt.userId}/factors/${Wt.id}`,{headers:this.headers});return{data:Pt,error:null}}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:null,error:Wt}}throw Wt}}}Pt["default"]=GoTrueAdminApi},16623:function(Wt,Pt,en){"use strict";var tn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});const nn=tn(en(52165));const an=en(26705);const rn=en(73981);const In=en(92356);const sn=en(30601);const on=en(21735);const cn=en(80512);const dn=en(41920);const un=en(28932);(0,cn.polyfillGlobalThis)();const pn={url:an.GOTRUE_URL,storageKey:an.STORAGE_KEY,autoRefreshToken:true,persistSession:true,detectSessionInUrl:true,headers:an.DEFAULT_HEADERS,flowType:"implicit",debug:false};const mn=30*1e3;const bn=3;async function lockNoOp(Wt,Pt,en){return await en()}class GoTrueClient{constructor(Wt){var Pt,en;this.memoryStorage=null;this.stateChangeEmitters=new Map;this.autoRefreshTicker=null;this.visibilityChangedCallback=null;this.refreshingDeferred=null;this.initializePromise=null;this.detectSessionInUrl=true;this.lockAcquired=false;this.pendingInLock=[];this.broadcastChannel=null;this.logger=console.log;this.insecureGetSessionWarningShown=false;this.instanceID=GoTrueClient.nextInstanceID;GoTrueClient.nextInstanceID+=1;if(this.instanceID>0&&(0,sn.isBrowser)()){console.warn("Multiple GoTrueClient instances detected in the same browser context. It is not an error, but this should be avoided as it may produce undefined behavior when used concurrently under the same storage key.")}const tn=Object.assign(Object.assign({},pn),Wt);this.logDebugMessages=!!tn.debug;if(typeof tn.debug==="function"){this.logger=tn.debug}this.persistSession=tn.persistSession;this.storageKey=tn.storageKey;this.autoRefreshToken=tn.autoRefreshToken;this.admin=new nn.default({url:tn.url,headers:tn.headers,fetch:tn.fetch});this.url=tn.url;this.headers=tn.headers;this.fetch=(0,sn.resolveFetch)(tn.fetch);this.lock=tn.lock||lockNoOp;this.detectSessionInUrl=tn.detectSessionInUrl;this.flowType=tn.flowType;if(tn.lock){this.lock=tn.lock}else if((0,sn.isBrowser)()&&((Pt=globalThis===null||globalThis===void 0?void 0:globalThis.navigator)===null||Pt===void 0?void 0:Pt.locks)){this.lock=un.navigatorLock}else{this.lock=lockNoOp}this.mfa={verify:this._verify.bind(this),enroll:this._enroll.bind(this),unenroll:this._unenroll.bind(this),challenge:this._challenge.bind(this),listFactors:this._listFactors.bind(this),challengeAndVerify:this._challengeAndVerify.bind(this),getAuthenticatorAssuranceLevel:this._getAuthenticatorAssuranceLevel.bind(this)};if(this.persistSession){if(tn.storage){this.storage=tn.storage}else{if((0,sn.supportsLocalStorage)()){this.storage=on.localStorageAdapter}else{this.memoryStorage={};this.storage=(0,on.memoryLocalStorageAdapter)(this.memoryStorage)}}}else{this.memoryStorage={};this.storage=(0,on.memoryLocalStorageAdapter)(this.memoryStorage)}if((0,sn.isBrowser)()&&globalThis.BroadcastChannel&&this.persistSession&&this.storageKey){try{this.broadcastChannel=new globalThis.BroadcastChannel(this.storageKey)}catch(Wt){console.error("Failed to create a new BroadcastChannel, multi-tab state changes will not be available",Wt)}(en=this.broadcastChannel)===null||en===void 0?void 0:en.addEventListener("message",(async Wt=>{this._debug("received broadcast notification from other tab or client",Wt);await this._notifyAllSubscribers(Wt.data.event,Wt.data.session,false)}))}this.initialize()}_debug(...Wt){if(this.logDebugMessages){this.logger(`GoTrueClient@${this.instanceID} (${dn.version}) ${(new Date).toISOString()}`,...Wt)}return this}async initialize(){if(this.initializePromise){return await this.initializePromise}this.initializePromise=(async()=>await this._acquireLock(-1,(async()=>await this._initialize())))();return await this.initializePromise}async _initialize(){try{const Wt=(0,sn.isBrowser)()?await this._isPKCEFlow():false;this._debug("#_initialize()","begin","is PKCE flow",Wt);if(Wt||this.detectSessionInUrl&&this._isImplicitGrantFlow()){const{data:Pt,error:en}=await this._getSessionFromURL(Wt);if(en){this._debug("#_initialize()","error detecting session from URL",en);if((en===null||en===void 0?void 0:en.message)==="Identity is already linked"||(en===null||en===void 0?void 0:en.message)==="Identity is already linked to another user"){return{error:en}}await this._removeSession();return{error:en}}const{session:tn,redirectType:nn}=Pt;this._debug("#_initialize()","detected session in URL",tn,"redirect type",nn);await this._saveSession(tn);setTimeout((async()=>{if(nn==="recovery"){await this._notifyAllSubscribers("PASSWORD_RECOVERY",tn)}else{await this._notifyAllSubscribers("SIGNED_IN",tn)}}),0);return{error:null}}await this._recoverAndRefresh();return{error:null}}catch(Wt){if((0,rn.isAuthError)(Wt)){return{error:Wt}}return{error:new rn.AuthUnknownError("Unexpected error during initialization",Wt)}}finally{await this._handleVisibilityChange();this._debug("#_initialize()","end")}}async signInAnonymously(Wt){var Pt,en,tn;try{await this._removeSession();const nn=await(0,In._request)(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{data:(en=(Pt=Wt===null||Wt===void 0?void 0:Wt.options)===null||Pt===void 0?void 0:Pt.data)!==null&&en!==void 0?en:{},gotrue_meta_security:{captcha_token:(tn=Wt===null||Wt===void 0?void 0:Wt.options)===null||tn===void 0?void 0:tn.captchaToken}},xform:In._sessionResponse});const{data:an,error:rn}=nn;if(rn||!an){return{data:{user:null,session:null},error:rn}}const sn=an.session;const on=an.user;if(an.session){await this._saveSession(an.session);await this._notifyAllSubscribers("SIGNED_IN",sn)}return{data:{user:on,session:sn},error:null}}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{user:null,session:null},error:Wt}}throw Wt}}async signUp(Wt){var Pt,en,tn;try{await this._removeSession();let nn;if("email"in Wt){const{email:en,password:tn,options:an}=Wt;let rn=null;let on=null;if(this.flowType==="pkce"){[rn,on]=await(0,sn.getCodeChallengeAndMethod)(this.storage,this.storageKey)}nn=await(0,In._request)(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,redirectTo:an===null||an===void 0?void 0:an.emailRedirectTo,body:{email:en,password:tn,data:(Pt=an===null||an===void 0?void 0:an.data)!==null&&Pt!==void 0?Pt:{},gotrue_meta_security:{captcha_token:an===null||an===void 0?void 0:an.captchaToken},code_challenge:rn,code_challenge_method:on},xform:In._sessionResponse})}else if("phone"in Wt){const{phone:Pt,password:an,options:rn}=Wt;nn=await(0,In._request)(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{phone:Pt,password:an,data:(en=rn===null||rn===void 0?void 0:rn.data)!==null&&en!==void 0?en:{},channel:(tn=rn===null||rn===void 0?void 0:rn.channel)!==null&&tn!==void 0?tn:"sms",gotrue_meta_security:{captcha_token:rn===null||rn===void 0?void 0:rn.captchaToken}},xform:In._sessionResponse})}else{throw new rn.AuthInvalidCredentialsError("You must provide either an email or phone number and a password")}const{data:an,error:on}=nn;if(on||!an){return{data:{user:null,session:null},error:on}}const cn=an.session;const dn=an.user;if(an.session){await this._saveSession(an.session);await this._notifyAllSubscribers("SIGNED_IN",cn)}return{data:{user:dn,session:cn},error:null}}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{user:null,session:null},error:Wt}}throw Wt}}async signInWithPassword(Wt){try{await this._removeSession();let Pt;if("email"in Wt){const{email:en,password:tn,options:nn}=Wt;Pt=await(0,In._request)(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{email:en,password:tn,gotrue_meta_security:{captcha_token:nn===null||nn===void 0?void 0:nn.captchaToken}},xform:In._sessionResponsePassword})}else if("phone"in Wt){const{phone:en,password:tn,options:nn}=Wt;Pt=await(0,In._request)(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{phone:en,password:tn,gotrue_meta_security:{captcha_token:nn===null||nn===void 0?void 0:nn.captchaToken}},xform:In._sessionResponsePassword})}else{throw new rn.AuthInvalidCredentialsError("You must provide either an email or phone number and a password")}const{data:en,error:tn}=Pt;if(tn){return{data:{user:null,session:null},error:tn}}else if(!en||!en.session||!en.user){return{data:{user:null,session:null},error:new rn.AuthInvalidTokenResponseError}}if(en.session){await this._saveSession(en.session);await this._notifyAllSubscribers("SIGNED_IN",en.session)}return{data:Object.assign({user:en.user,session:en.session},en.weak_password?{weakPassword:en.weak_password}:null),error:tn}}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{user:null,session:null},error:Wt}}throw Wt}}async signInWithOAuth(Wt){var Pt,en,tn,nn;await this._removeSession();return await this._handleProviderSignIn(Wt.provider,{redirectTo:(Pt=Wt.options)===null||Pt===void 0?void 0:Pt.redirectTo,scopes:(en=Wt.options)===null||en===void 0?void 0:en.scopes,queryParams:(tn=Wt.options)===null||tn===void 0?void 0:tn.queryParams,skipBrowserRedirect:(nn=Wt.options)===null||nn===void 0?void 0:nn.skipBrowserRedirect})}async exchangeCodeForSession(Wt){await this.initializePromise;return this._acquireLock(-1,(async()=>this._exchangeCodeForSession(Wt)))}async _exchangeCodeForSession(Wt){const Pt=await(0,sn.getItemAsync)(this.storage,`${this.storageKey}-code-verifier`);const[en,tn]=(Pt!==null&&Pt!==void 0?Pt:"").split("/");const{data:nn,error:an}=await(0,In._request)(this.fetch,"POST",`${this.url}/token?grant_type=pkce`,{headers:this.headers,body:{auth_code:Wt,code_verifier:en},xform:In._sessionResponse});await(0,sn.removeItemAsync)(this.storage,`${this.storageKey}-code-verifier`);if(an){return{data:{user:null,session:null,redirectType:null},error:an}}else if(!nn||!nn.session||!nn.user){return{data:{user:null,session:null,redirectType:null},error:new rn.AuthInvalidTokenResponseError}}if(nn.session){await this._saveSession(nn.session);await this._notifyAllSubscribers("SIGNED_IN",nn.session)}return{data:Object.assign(Object.assign({},nn),{redirectType:tn!==null&&tn!==void 0?tn:null}),error:an}}async signInWithIdToken(Wt){await this._removeSession();try{const{options:Pt,provider:en,token:tn,access_token:nn,nonce:an}=Wt;const sn=await(0,In._request)(this.fetch,"POST",`${this.url}/token?grant_type=id_token`,{headers:this.headers,body:{provider:en,id_token:tn,access_token:nn,nonce:an,gotrue_meta_security:{captcha_token:Pt===null||Pt===void 0?void 0:Pt.captchaToken}},xform:In._sessionResponse});const{data:on,error:cn}=sn;if(cn){return{data:{user:null,session:null},error:cn}}else if(!on||!on.session||!on.user){return{data:{user:null,session:null},error:new rn.AuthInvalidTokenResponseError}}if(on.session){await this._saveSession(on.session);await this._notifyAllSubscribers("SIGNED_IN",on.session)}return{data:on,error:cn}}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{user:null,session:null},error:Wt}}throw Wt}}async signInWithOtp(Wt){var Pt,en,tn,nn,an;try{await this._removeSession();if("email"in Wt){const{email:tn,options:nn}=Wt;let an=null;let rn=null;if(this.flowType==="pkce"){[an,rn]=await(0,sn.getCodeChallengeAndMethod)(this.storage,this.storageKey)}const{error:on}=await(0,In._request)(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{email:tn,data:(Pt=nn===null||nn===void 0?void 0:nn.data)!==null&&Pt!==void 0?Pt:{},create_user:(en=nn===null||nn===void 0?void 0:nn.shouldCreateUser)!==null&&en!==void 0?en:true,gotrue_meta_security:{captcha_token:nn===null||nn===void 0?void 0:nn.captchaToken},code_challenge:an,code_challenge_method:rn},redirectTo:nn===null||nn===void 0?void 0:nn.emailRedirectTo});return{data:{user:null,session:null},error:on}}if("phone"in Wt){const{phone:Pt,options:en}=Wt;const{data:rn,error:sn}=await(0,In._request)(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{phone:Pt,data:(tn=en===null||en===void 0?void 0:en.data)!==null&&tn!==void 0?tn:{},create_user:(nn=en===null||en===void 0?void 0:en.shouldCreateUser)!==null&&nn!==void 0?nn:true,gotrue_meta_security:{captcha_token:en===null||en===void 0?void 0:en.captchaToken},channel:(an=en===null||en===void 0?void 0:en.channel)!==null&&an!==void 0?an:"sms"}});return{data:{user:null,session:null,messageId:rn===null||rn===void 0?void 0:rn.message_id},error:sn}}throw new rn.AuthInvalidCredentialsError("You must provide either an email or phone number.")}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{user:null,session:null},error:Wt}}throw Wt}}async verifyOtp(Wt){var Pt,en;try{if(Wt.type!=="email_change"&&Wt.type!=="phone_change"){await this._removeSession()}let tn=undefined;let nn=undefined;if("options"in Wt){tn=(Pt=Wt.options)===null||Pt===void 0?void 0:Pt.redirectTo;nn=(en=Wt.options)===null||en===void 0?void 0:en.captchaToken}const{data:an,error:rn}=await(0,In._request)(this.fetch,"POST",`${this.url}/verify`,{headers:this.headers,body:Object.assign(Object.assign({},Wt),{gotrue_meta_security:{captcha_token:nn}}),redirectTo:tn,xform:In._sessionResponse});if(rn){throw rn}if(!an){throw new Error("An error occurred on token verification.")}const sn=an.session;const on=an.user;if(sn===null||sn===void 0?void 0:sn.access_token){await this._saveSession(sn);await this._notifyAllSubscribers(Wt.type=="recovery"?"PASSWORD_RECOVERY":"SIGNED_IN",sn)}return{data:{user:on,session:sn},error:null}}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{user:null,session:null},error:Wt}}throw Wt}}async signInWithSSO(Wt){var Pt,en,tn;try{await this._removeSession();let nn=null;let an=null;if(this.flowType==="pkce"){[nn,an]=await(0,sn.getCodeChallengeAndMethod)(this.storage,this.storageKey)}return await(0,In._request)(this.fetch,"POST",`${this.url}/sso`,{body:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},"providerId"in Wt?{provider_id:Wt.providerId}:null),"domain"in Wt?{domain:Wt.domain}:null),{redirect_to:(en=(Pt=Wt.options)===null||Pt===void 0?void 0:Pt.redirectTo)!==null&&en!==void 0?en:undefined}),((tn=Wt===null||Wt===void 0?void 0:Wt.options)===null||tn===void 0?void 0:tn.captchaToken)?{gotrue_meta_security:{captcha_token:Wt.options.captchaToken}}:null),{skip_http_redirect:true,code_challenge:nn,code_challenge_method:an}),headers:this.headers,xform:In._ssoResponse})}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:null,error:Wt}}throw Wt}}async reauthenticate(){await this.initializePromise;return await this._acquireLock(-1,(async()=>await this._reauthenticate()))}async _reauthenticate(){try{return await this._useSession((async Wt=>{const{data:{session:Pt},error:en}=Wt;if(en)throw en;if(!Pt)throw new rn.AuthSessionMissingError;const{error:tn}=await(0,In._request)(this.fetch,"GET",`${this.url}/reauthenticate`,{headers:this.headers,jwt:Pt.access_token});return{data:{user:null,session:null},error:tn}}))}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{user:null,session:null},error:Wt}}throw Wt}}async resend(Wt){try{if(Wt.type!="email_change"&&Wt.type!="phone_change"){await this._removeSession()}const Pt=`${this.url}/resend`;if("email"in Wt){const{email:en,type:tn,options:nn}=Wt;const{error:an}=await(0,In._request)(this.fetch,"POST",Pt,{headers:this.headers,body:{email:en,type:tn,gotrue_meta_security:{captcha_token:nn===null||nn===void 0?void 0:nn.captchaToken}},redirectTo:nn===null||nn===void 0?void 0:nn.emailRedirectTo});return{data:{user:null,session:null},error:an}}else if("phone"in Wt){const{phone:en,type:tn,options:nn}=Wt;const{data:an,error:rn}=await(0,In._request)(this.fetch,"POST",Pt,{headers:this.headers,body:{phone:en,type:tn,gotrue_meta_security:{captcha_token:nn===null||nn===void 0?void 0:nn.captchaToken}}});return{data:{user:null,session:null,messageId:an===null||an===void 0?void 0:an.message_id},error:rn}}throw new rn.AuthInvalidCredentialsError("You must provide either an email or phone number and a type")}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{user:null,session:null},error:Wt}}throw Wt}}async getSession(){await this.initializePromise;const Wt=await this._acquireLock(-1,(async()=>this._useSession((async Wt=>Wt))));if(Wt.data&&this.storage.isServer){if(!this.insecureGetSessionWarningShown){console.warn("Using supabase.auth.getSession() is potentially insecure as it loads data directly from the storage medium (typically cookies) which may not be authentic. Prefer using supabase.auth.getUser() instead. To suppress this warning call supabase.auth.getUser() before you call supabase.auth.getSession().");this.insecureGetSessionWarningShown=true}}return Wt}async _acquireLock(Wt,Pt){this._debug("#_acquireLock","begin",Wt);try{if(this.lockAcquired){const Wt=this.pendingInLock.length?this.pendingInLock[this.pendingInLock.length-1]:Promise.resolve();const en=(async()=>{await Wt;return await Pt()})();this.pendingInLock.push((async()=>{try{await en}catch(Wt){}})());return en}return await this.lock(`lock:${this.storageKey}`,Wt,(async()=>{this._debug("#_acquireLock","lock acquired for storage key",this.storageKey);try{this.lockAcquired=true;const Wt=Pt();this.pendingInLock.push((async()=>{try{await Wt}catch(Wt){}})());await Wt;while(this.pendingInLock.length){const Wt=[...this.pendingInLock];await Promise.all(Wt);this.pendingInLock.splice(0,Wt.length)}return await Wt}finally{this._debug("#_acquireLock","lock released for storage key",this.storageKey);this.lockAcquired=false}}))}finally{this._debug("#_acquireLock","end")}}async _useSession(Wt){this._debug("#_useSession","begin");try{const Pt=await this.__loadSession();return await Wt(Pt)}finally{this._debug("#_useSession","end")}}async __loadSession(){this._debug("#__loadSession()","begin");if(!this.lockAcquired){this._debug("#__loadSession()","used outside of an acquired lock!",(new Error).stack)}try{let Wt=null;const Pt=await(0,sn.getItemAsync)(this.storage,this.storageKey);this._debug("#getSession()","session from storage",Pt);if(Pt!==null){if(this._isValidSession(Pt)){Wt=Pt}else{this._debug("#getSession()","session from storage is not valid");await this._removeSession()}}if(!Wt){return{data:{session:null},error:null}}const en=Wt.expires_at?Wt.expires_at<=Date.now()/1e3:false;this._debug("#__loadSession()",`session has${en?"":" not"} expired`,"expires_at",Wt.expires_at);if(!en){if(this.storage.isServer){let Pt=Wt.user;delete Wt.user;Object.defineProperty(Wt,"user",{enumerable:true,get:()=>{if(!Wt.__suppressUserWarning){console.warn("Using the user object as returned from supabase.auth.getSession() or from some supabase.auth.onAuthStateChange() events could be insecure! This value comes directly from the storage medium (usually cookies on the server) and many not be authentic. Use supabase.auth.getUser() instead which authenticates the data by contacting the Supabase Auth server.")}return Pt},set:Wt=>{Pt=Wt}})}return{data:{session:Wt},error:null}}const{session:tn,error:nn}=await this._callRefreshToken(Wt.refresh_token);if(nn){return{data:{session:null},error:nn}}return{data:{session:tn},error:null}}finally{this._debug("#__loadSession()","end")}}async getUser(Wt){if(Wt){return await this._getUser(Wt)}await this.initializePromise;const Pt=await this._acquireLock(-1,(async()=>await this._getUser()));if(Pt.data&&this.storage.isServer){this.insecureGetSessionWarningShown=true}return Pt}async _getUser(Wt){try{if(Wt){return await(0,In._request)(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:Wt,xform:In._userResponse})}return await this._useSession((async Wt=>{var Pt,en;const{data:tn,error:nn}=Wt;if(nn){throw nn}return await(0,In._request)(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:(en=(Pt=tn.session)===null||Pt===void 0?void 0:Pt.access_token)!==null&&en!==void 0?en:undefined,xform:In._userResponse})}))}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{user:null},error:Wt}}throw Wt}}async updateUser(Wt,Pt={}){await this.initializePromise;return await this._acquireLock(-1,(async()=>await this._updateUser(Wt,Pt)))}async _updateUser(Wt,Pt={}){try{return await this._useSession((async en=>{const{data:tn,error:nn}=en;if(nn){throw nn}if(!tn.session){throw new rn.AuthSessionMissingError}const an=tn.session;let on=null;let cn=null;if(this.flowType==="pkce"&&Wt.email!=null){[on,cn]=await(0,sn.getCodeChallengeAndMethod)(this.storage,this.storageKey)}const{data:dn,error:un}=await(0,In._request)(this.fetch,"PUT",`${this.url}/user`,{headers:this.headers,redirectTo:Pt===null||Pt===void 0?void 0:Pt.emailRedirectTo,body:Object.assign(Object.assign({},Wt),{code_challenge:on,code_challenge_method:cn}),jwt:an.access_token,xform:In._userResponse});if(un)throw un;an.user=dn.user;await this._saveSession(an);await this._notifyAllSubscribers("USER_UPDATED",an);return{data:{user:an.user},error:null}}))}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{user:null},error:Wt}}throw Wt}}_decodeJWT(Wt){return(0,sn.decodeJWTPayload)(Wt)}async setSession(Wt){await this.initializePromise;return await this._acquireLock(-1,(async()=>await this._setSession(Wt)))}async _setSession(Wt){try{if(!Wt.access_token||!Wt.refresh_token){throw new rn.AuthSessionMissingError}const Pt=Date.now()/1e3;let en=Pt;let tn=true;let nn=null;const an=(0,sn.decodeJWTPayload)(Wt.access_token);if(an.exp){en=an.exp;tn=en<=Pt}if(tn){const{session:Pt,error:en}=await this._callRefreshToken(Wt.refresh_token);if(en){return{data:{user:null,session:null},error:en}}if(!Pt){return{data:{user:null,session:null},error:null}}nn=Pt}else{const{data:tn,error:an}=await this._getUser(Wt.access_token);if(an){throw an}nn={access_token:Wt.access_token,refresh_token:Wt.refresh_token,user:tn.user,token_type:"bearer",expires_in:en-Pt,expires_at:en};await this._saveSession(nn);await this._notifyAllSubscribers("SIGNED_IN",nn)}return{data:{user:nn.user,session:nn},error:null}}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{session:null,user:null},error:Wt}}throw Wt}}async refreshSession(Wt){await this.initializePromise;return await this._acquireLock(-1,(async()=>await this._refreshSession(Wt)))}async _refreshSession(Wt){try{return await this._useSession((async Pt=>{var en;if(!Wt){const{data:tn,error:nn}=Pt;if(nn){throw nn}Wt=(en=tn.session)!==null&&en!==void 0?en:undefined}if(!(Wt===null||Wt===void 0?void 0:Wt.refresh_token)){throw new rn.AuthSessionMissingError}const{session:tn,error:nn}=await this._callRefreshToken(Wt.refresh_token);if(nn){return{data:{user:null,session:null},error:nn}}if(!tn){return{data:{user:null,session:null},error:null}}return{data:{user:tn.user,session:tn},error:null}}))}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{user:null,session:null},error:Wt}}throw Wt}}async _getSessionFromURL(Wt){try{if(!(0,sn.isBrowser)())throw new rn.AuthImplicitGrantRedirectError("No browser detected.");if(this.flowType==="implicit"&&!this._isImplicitGrantFlow()){throw new rn.AuthImplicitGrantRedirectError("Not a valid implicit grant flow url.")}else if(this.flowType=="pkce"&&!Wt){throw new rn.AuthPKCEGrantCodeExchangeError("Not a valid PKCE flow url.")}const Pt=(0,sn.parseParametersFromURL)(window.location.href);if(Wt){if(!Pt.code)throw new rn.AuthPKCEGrantCodeExchangeError("No code detected.");const{data:Wt,error:en}=await this._exchangeCodeForSession(Pt.code);if(en)throw en;const tn=new URL(window.location.href);tn.searchParams.delete("code");window.history.replaceState(window.history.state,"",tn.toString());return{data:{session:Wt.session,redirectType:null},error:null}}if(Pt.error||Pt.error_description||Pt.error_code){throw new rn.AuthImplicitGrantRedirectError(Pt.error_description||"Error in URL with unspecified error_description",{error:Pt.error||"unspecified_error",code:Pt.error_code||"unspecified_code"})}const{provider_token:en,provider_refresh_token:tn,access_token:nn,refresh_token:an,expires_in:In,expires_at:on,token_type:cn}=Pt;if(!nn||!In||!an||!cn){throw new rn.AuthImplicitGrantRedirectError("No session defined in URL")}const dn=Math.round(Date.now()/1e3);const un=parseInt(In);let pn=dn+un;if(on){pn=parseInt(on)}const bn=pn-dn;if(bn*1e3<=mn){console.warn(`@supabase/gotrue-js: Session as retrieved from URL expires in ${bn}s, should have been closer to ${un}s`)}const Gn=pn-un;if(dn-Gn>=120){console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued over 120s ago, URL could be stale",Gn,pn,dn)}else if(dn-Gn<0){console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued in the future? Check the device clok for skew",Gn,pn,dn)}const{data:hn,error:Zn}=await this._getUser(nn);if(Zn)throw Zn;const An={provider_token:en,provider_refresh_token:tn,access_token:nn,expires_in:un,expires_at:pn,refresh_token:an,token_type:cn,user:hn.user};window.location.hash="";this._debug("#_getSessionFromURL()","clearing window.location.hash");return{data:{session:An,redirectType:Pt.type},error:null}}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:{session:null,redirectType:null},error:Wt}}throw Wt}}_isImplicitGrantFlow(){const Wt=(0,sn.parseParametersFromURL)(window.location.href);return!!((0,sn.isBrowser)()&&(Wt.access_token||Wt.error_description))}async _isPKCEFlow(){const Wt=(0,sn.parseParametersFromURL)(window.location.href);const Pt=await(0,sn.getItemAsync)(this.storage,`${this.storageKey}-code-verifier`);return!!(Wt.code&&Pt)}async signOut(Wt={scope:"global"}){await this.initializePromise;return await this._acquireLock(-1,(async()=>await this._signOut(Wt)))}async _signOut({scope:Wt}={scope:"global"}){return await this._useSession((async Pt=>{var en;const{data:tn,error:nn}=Pt;if(nn){return{error:nn}}const an=(en=tn.session)===null||en===void 0?void 0:en.access_token;if(an){const{error:Pt}=await this.admin.signOut(an,Wt);if(Pt){if(!((0,rn.isAuthApiError)(Pt)&&(Pt.status===404||Pt.status===401))){return{error:Pt}}}}if(Wt!=="others"){await this._removeSession();await(0,sn.removeItemAsync)(this.storage,`${this.storageKey}-code-verifier`);await this._notifyAllSubscribers("SIGNED_OUT",null)}return{error:null}}))}onAuthStateChange(Wt){const Pt=(0,sn.uuid)();const en={id:Pt,callback:Wt,unsubscribe:()=>{this._debug("#unsubscribe()","state change callback with id removed",Pt);this.stateChangeEmitters.delete(Pt)}};this._debug("#onAuthStateChange()","registered callback with id",Pt);this.stateChangeEmitters.set(Pt,en);(async()=>{await this.initializePromise;await this._acquireLock(-1,(async()=>{this._emitInitialSession(Pt)}))})();return{data:{subscription:en}}}async _emitInitialSession(Wt){return await this._useSession((async Pt=>{var en,tn;try{const{data:{session:tn},error:nn}=Pt;if(nn)throw nn;await((en=this.stateChangeEmitters.get(Wt))===null||en===void 0?void 0:en.callback("INITIAL_SESSION",tn));this._debug("INITIAL_SESSION","callback id",Wt,"session",tn)}catch(Pt){await((tn=this.stateChangeEmitters.get(Wt))===null||tn===void 0?void 0:tn.callback("INITIAL_SESSION",null));this._debug("INITIAL_SESSION","callback id",Wt,"error",Pt);console.error(Pt)}}))}async resetPasswordForEmail(Wt,Pt={}){let en=null;let tn=null;if(this.flowType==="pkce"){[en,tn]=await(0,sn.getCodeChallengeAndMethod)(this.storage,this.storageKey,true)}try{return await(0,In._request)(this.fetch,"POST",`${this.url}/recover`,{body:{email:Wt,code_challenge:en,code_challenge_method:tn,gotrue_meta_security:{captcha_token:Pt.captchaToken}},headers:this.headers,redirectTo:Pt.redirectTo})}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:null,error:Wt}}throw Wt}}async getUserIdentities(){var Wt;try{const{data:Pt,error:en}=await this.getUser();if(en)throw en;return{data:{identities:(Wt=Pt.user.identities)!==null&&Wt!==void 0?Wt:[]},error:null}}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:null,error:Wt}}throw Wt}}async linkIdentity(Wt){var Pt;try{const{data:en,error:tn}=await this._useSession((async Pt=>{var en,tn,nn,an,rn;const{data:sn,error:on}=Pt;if(on)throw on;const cn=await this._getUrlForProvider(`${this.url}/user/identities/authorize`,Wt.provider,{redirectTo:(en=Wt.options)===null||en===void 0?void 0:en.redirectTo,scopes:(tn=Wt.options)===null||tn===void 0?void 0:tn.scopes,queryParams:(nn=Wt.options)===null||nn===void 0?void 0:nn.queryParams,skipBrowserRedirect:true});return await(0,In._request)(this.fetch,"GET",cn,{headers:this.headers,jwt:(rn=(an=sn.session)===null||an===void 0?void 0:an.access_token)!==null&&rn!==void 0?rn:undefined})}));if(tn)throw tn;if((0,sn.isBrowser)()&&!((Pt=Wt.options)===null||Pt===void 0?void 0:Pt.skipBrowserRedirect)){window.location.assign(en===null||en===void 0?void 0:en.url)}return{data:{provider:Wt.provider,url:en===null||en===void 0?void 0:en.url},error:null}}catch(Pt){if((0,rn.isAuthError)(Pt)){return{data:{provider:Wt.provider,url:null},error:Pt}}throw Pt}}async unlinkIdentity(Wt){try{return await this._useSession((async Pt=>{var en,tn;const{data:nn,error:an}=Pt;if(an){throw an}return await(0,In._request)(this.fetch,"DELETE",`${this.url}/user/identities/${Wt.identity_id}`,{headers:this.headers,jwt:(tn=(en=nn.session)===null||en===void 0?void 0:en.access_token)!==null&&tn!==void 0?tn:undefined})}))}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:null,error:Wt}}throw Wt}}async _refreshAccessToken(Wt){const Pt=`#_refreshAccessToken(${Wt.substring(0,5)}...)`;this._debug(Pt,"begin");try{const en=Date.now();return await(0,sn.retryable)((async en=>{await(0,sn.sleep)(en*200);this._debug(Pt,"refreshing attempt",en);return await(0,In._request)(this.fetch,"POST",`${this.url}/token?grant_type=refresh_token`,{body:{refresh_token:Wt},headers:this.headers,xform:In._sessionResponse})}),((Wt,Pt,tn)=>tn&&tn.error&&(0,rn.isAuthRetryableFetchError)(tn.error)&&Date.now()+(Wt+1)*200-en{try{await en.callback(Wt,Pt)}catch(Wt){tn.push(Wt)}}));await Promise.all(nn);if(tn.length>0){for(let Wt=0;Wtthis._autoRefreshTokenTick()),mn);this.autoRefreshTicker=Wt;if(Wt&&typeof Wt==="object"&&typeof Wt.unref==="function"){Wt.unref()}else if(typeof Deno!=="undefined"&&typeof Deno.unrefTimer==="function"){Deno.unrefTimer(Wt)}setTimeout((async()=>{await this.initializePromise;await this._autoRefreshTokenTick()}),0)}async _stopAutoRefresh(){this._debug("#_stopAutoRefresh()");const Wt=this.autoRefreshTicker;this.autoRefreshTicker=null;if(Wt){clearInterval(Wt)}}async startAutoRefresh(){this._removeVisibilityChangedCallback();await this._startAutoRefresh()}async stopAutoRefresh(){this._removeVisibilityChangedCallback();await this._stopAutoRefresh()}async _autoRefreshTokenTick(){this._debug("#_autoRefreshTokenTick()","begin");try{await this._acquireLock(0,(async()=>{try{const Wt=Date.now();try{return await this._useSession((async Pt=>{const{data:{session:en}}=Pt;if(!en||!en.refresh_token||!en.expires_at){this._debug("#_autoRefreshTokenTick()","no session");return}const tn=Math.floor((en.expires_at*1e3-Wt)/mn);this._debug("#_autoRefreshTokenTick()",`access token expires in ${tn} ticks, a tick lasts ${mn}ms, refresh threshold is ${bn} ticks`);if(tn<=bn){await this._callRefreshToken(en.refresh_token)}}))}catch(Wt){console.error("Auto refresh tick failed with error. This is likely a transient error.",Wt)}}finally{this._debug("#_autoRefreshTokenTick()","end")}}))}catch(Wt){if(Wt.isAcquireTimeout||Wt instanceof un.LockAcquireTimeoutError){this._debug("auto refresh token tick lock not available")}else{throw Wt}}}async _handleVisibilityChange(){this._debug("#_handleVisibilityChange()");if(!(0,sn.isBrowser)()||!(window===null||window===void 0?void 0:window.addEventListener)){if(this.autoRefreshToken){this.startAutoRefresh()}return false}try{this.visibilityChangedCallback=async()=>await this._onVisibilityChanged(false);window===null||window===void 0?void 0:window.addEventListener("visibilitychange",this.visibilityChangedCallback);await this._onVisibilityChanged(true)}catch(Wt){console.error("_handleVisibilityChange",Wt)}}async _onVisibilityChanged(Wt){const Pt=`#_onVisibilityChanged(${Wt})`;this._debug(Pt,"visibilityState",document.visibilityState);if(document.visibilityState==="visible"){if(this.autoRefreshToken){this._startAutoRefresh()}if(!Wt){await this.initializePromise;await this._acquireLock(-1,(async()=>{if(document.visibilityState!=="visible"){this._debug(Pt,"acquired the lock to recover the session, but the browser visibilityState is no longer visible, aborting");return}await this._recoverAndRefresh()}))}}else if(document.visibilityState==="hidden"){if(this.autoRefreshToken){this._stopAutoRefresh()}}}async _getUrlForProvider(Wt,Pt,en){const tn=[`provider=${encodeURIComponent(Pt)}`];if(en===null||en===void 0?void 0:en.redirectTo){tn.push(`redirect_to=${encodeURIComponent(en.redirectTo)}`)}if(en===null||en===void 0?void 0:en.scopes){tn.push(`scopes=${encodeURIComponent(en.scopes)}`)}if(this.flowType==="pkce"){const[Wt,Pt]=await(0,sn.getCodeChallengeAndMethod)(this.storage,this.storageKey);const en=new URLSearchParams({code_challenge:`${encodeURIComponent(Wt)}`,code_challenge_method:`${encodeURIComponent(Pt)}`});tn.push(en.toString())}if(en===null||en===void 0?void 0:en.queryParams){const Wt=new URLSearchParams(en.queryParams);tn.push(Wt.toString())}if(en===null||en===void 0?void 0:en.skipBrowserRedirect){tn.push(`skip_http_redirect=${en.skipBrowserRedirect}`)}return`${Wt}?${tn.join("&")}`}async _unenroll(Wt){try{return await this._useSession((async Pt=>{var en;const{data:tn,error:nn}=Pt;if(nn){return{data:null,error:nn}}return await(0,In._request)(this.fetch,"DELETE",`${this.url}/factors/${Wt.factorId}`,{headers:this.headers,jwt:(en=tn===null||tn===void 0?void 0:tn.session)===null||en===void 0?void 0:en.access_token})}))}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:null,error:Wt}}throw Wt}}async _enroll(Wt){try{return await this._useSession((async Pt=>{var en,tn;const{data:nn,error:an}=Pt;if(an){return{data:null,error:an}}const{data:rn,error:sn}=await(0,In._request)(this.fetch,"POST",`${this.url}/factors`,{body:{friendly_name:Wt.friendlyName,factor_type:Wt.factorType,issuer:Wt.issuer},headers:this.headers,jwt:(en=nn===null||nn===void 0?void 0:nn.session)===null||en===void 0?void 0:en.access_token});if(sn){return{data:null,error:sn}}if((tn=rn===null||rn===void 0?void 0:rn.totp)===null||tn===void 0?void 0:tn.qr_code){rn.totp.qr_code=`data:image/svg+xml;utf-8,${rn.totp.qr_code}`}return{data:rn,error:null}}))}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:null,error:Wt}}throw Wt}}async _verify(Wt){return this._acquireLock(-1,(async()=>{try{return await this._useSession((async Pt=>{var en;const{data:tn,error:nn}=Pt;if(nn){return{data:null,error:nn}}const{data:an,error:rn}=await(0,In._request)(this.fetch,"POST",`${this.url}/factors/${Wt.factorId}/verify`,{body:{code:Wt.code,challenge_id:Wt.challengeId},headers:this.headers,jwt:(en=tn===null||tn===void 0?void 0:tn.session)===null||en===void 0?void 0:en.access_token});if(rn){return{data:null,error:rn}}await this._saveSession(Object.assign({expires_at:Math.round(Date.now()/1e3)+an.expires_in},an));await this._notifyAllSubscribers("MFA_CHALLENGE_VERIFIED",an);return{data:an,error:rn}}))}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}async _challenge(Wt){return this._acquireLock(-1,(async()=>{try{return await this._useSession((async Pt=>{var en;const{data:tn,error:nn}=Pt;if(nn){return{data:null,error:nn}}return await(0,In._request)(this.fetch,"POST",`${this.url}/factors/${Wt.factorId}/challenge`,{headers:this.headers,jwt:(en=tn===null||tn===void 0?void 0:tn.session)===null||en===void 0?void 0:en.access_token})}))}catch(Wt){if((0,rn.isAuthError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}async _challengeAndVerify(Wt){const{data:Pt,error:en}=await this._challenge({factorId:Wt.factorId});if(en){return{data:null,error:en}}return await this._verify({factorId:Wt.factorId,challengeId:Pt.id,code:Wt.code})}async _listFactors(){const{data:{user:Wt},error:Pt}=await this.getUser();if(Pt){return{data:null,error:Pt}}const en=(Wt===null||Wt===void 0?void 0:Wt.factors)||[];const tn=en.filter((Wt=>Wt.factor_type==="totp"&&Wt.status==="verified"));return{data:{all:en,totp:tn},error:null}}async _getAuthenticatorAssuranceLevel(){return this._acquireLock(-1,(async()=>await this._useSession((async Wt=>{var Pt,en;const{data:{session:tn},error:nn}=Wt;if(nn){return{data:null,error:nn}}if(!tn){return{data:{currentLevel:null,nextLevel:null,currentAuthenticationMethods:[]},error:null}}const an=this._decodeJWT(tn.access_token);let rn=null;if(an.aal){rn=an.aal}let In=rn;const sn=(en=(Pt=tn.user.factors)===null||Pt===void 0?void 0:Pt.filter((Wt=>Wt.status==="verified")))!==null&&en!==void 0?en:[];if(sn.length>0){In="aal2"}const on=an.amr||[];return{data:{currentLevel:rn,nextLevel:In,currentAuthenticationMethods:on},error:null}}))))}}Pt["default"]=GoTrueClient;GoTrueClient.nextInstanceID=0},31904:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};var an=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt.lockInternals=Pt.NavigatorLockAcquireTimeoutError=Pt.navigatorLock=Pt.AuthClient=Pt.AuthAdminApi=Pt.GoTrueClient=Pt.GoTrueAdminApi=void 0;const rn=an(en(52165));Pt.GoTrueAdminApi=rn.default;const In=an(en(16623));Pt.GoTrueClient=In.default;const sn=an(en(68789));Pt.AuthAdminApi=sn.default;const on=an(en(62495));Pt.AuthClient=on.default;nn(en(53737),Pt);nn(en(73981),Pt);var cn=en(28932);Object.defineProperty(Pt,"navigatorLock",{enumerable:true,get:function(){return cn.navigatorLock}});Object.defineProperty(Pt,"NavigatorLockAcquireTimeoutError",{enumerable:true,get:function(){return cn.NavigatorLockAcquireTimeoutError}});Object.defineProperty(Pt,"lockInternals",{enumerable:true,get:function(){return cn.internals}})},26705:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.API_VERSIONS=Pt.API_VERSION_HEADER_NAME=Pt.NETWORK_FAILURE=Pt.EXPIRY_MARGIN=Pt.DEFAULT_HEADERS=Pt.AUDIENCE=Pt.STORAGE_KEY=Pt.GOTRUE_URL=void 0;const tn=en(41920);Pt.GOTRUE_URL="http://localhost:9999";Pt.STORAGE_KEY="supabase.auth.token";Pt.AUDIENCE="";Pt.DEFAULT_HEADERS={"X-Client-Info":`gotrue-js/${tn.version}`};Pt.EXPIRY_MARGIN=10;Pt.NETWORK_FAILURE={MAX_RETRIES:10,RETRY_INTERVAL:2};Pt.API_VERSION_HEADER_NAME="X-Supabase-Api-Version";Pt.API_VERSIONS={"2024-01-01":{timestamp:Date.parse("2024-01-01T00:00:00.0Z"),name:"2024-01-01"}}},73981:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.isAuthWeakPasswordError=Pt.AuthWeakPasswordError=Pt.isAuthRetryableFetchError=Pt.AuthRetryableFetchError=Pt.AuthPKCEGrantCodeExchangeError=Pt.AuthImplicitGrantRedirectError=Pt.AuthInvalidCredentialsError=Pt.AuthInvalidTokenResponseError=Pt.AuthSessionMissingError=Pt.CustomAuthError=Pt.AuthUnknownError=Pt.isAuthApiError=Pt.AuthApiError=Pt.isAuthError=Pt.AuthError=void 0;class AuthError extends Error{constructor(Wt,Pt,en){super(Wt);this.__isAuthError=true;this.name="AuthError";this.status=Pt;this.code=en}}Pt.AuthError=AuthError;function isAuthError(Wt){return typeof Wt==="object"&&Wt!==null&&"__isAuthError"in Wt}Pt.isAuthError=isAuthError;class AuthApiError extends AuthError{constructor(Wt,Pt,en){super(Wt,Pt,en);this.name="AuthApiError";this.status=Pt;this.code=en}}Pt.AuthApiError=AuthApiError;function isAuthApiError(Wt){return isAuthError(Wt)&&Wt.name==="AuthApiError"}Pt.isAuthApiError=isAuthApiError;class AuthUnknownError extends AuthError{constructor(Wt,Pt){super(Wt);this.name="AuthUnknownError";this.originalError=Pt}}Pt.AuthUnknownError=AuthUnknownError;class CustomAuthError extends AuthError{constructor(Wt,Pt,en,tn){super(Wt,en,tn);this.name=Pt;this.status=en}}Pt.CustomAuthError=CustomAuthError;class AuthSessionMissingError extends CustomAuthError{constructor(){super("Auth session missing!","AuthSessionMissingError",400,undefined)}}Pt.AuthSessionMissingError=AuthSessionMissingError;class AuthInvalidTokenResponseError extends CustomAuthError{constructor(){super("Auth session or user missing","AuthInvalidTokenResponseError",500,undefined)}}Pt.AuthInvalidTokenResponseError=AuthInvalidTokenResponseError;class AuthInvalidCredentialsError extends CustomAuthError{constructor(Wt){super(Wt,"AuthInvalidCredentialsError",400,undefined)}}Pt.AuthInvalidCredentialsError=AuthInvalidCredentialsError;class AuthImplicitGrantRedirectError extends CustomAuthError{constructor(Wt,Pt=null){super(Wt,"AuthImplicitGrantRedirectError",500,undefined);this.details=null;this.details=Pt}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}Pt.AuthImplicitGrantRedirectError=AuthImplicitGrantRedirectError;class AuthPKCEGrantCodeExchangeError extends CustomAuthError{constructor(Wt,Pt=null){super(Wt,"AuthPKCEGrantCodeExchangeError",500,undefined);this.details=null;this.details=Pt}toJSON(){return{name:this.name,message:this.message,status:this.status,details:this.details}}}Pt.AuthPKCEGrantCodeExchangeError=AuthPKCEGrantCodeExchangeError;class AuthRetryableFetchError extends CustomAuthError{constructor(Wt,Pt){super(Wt,"AuthRetryableFetchError",Pt,undefined)}}Pt.AuthRetryableFetchError=AuthRetryableFetchError;function isAuthRetryableFetchError(Wt){return isAuthError(Wt)&&Wt.name==="AuthRetryableFetchError"}Pt.isAuthRetryableFetchError=isAuthRetryableFetchError;class AuthWeakPasswordError extends CustomAuthError{constructor(Wt,Pt,en){super(Wt,"AuthWeakPasswordError",Pt,"weak_password");this.reasons=en}}Pt.AuthWeakPasswordError=AuthWeakPasswordError;function isAuthWeakPasswordError(Wt){return isAuthError(Wt)&&Wt.name==="AuthWeakPasswordError"}Pt.isAuthWeakPasswordError=isAuthWeakPasswordError},92356:function(Wt,Pt,en){"use strict";var tn=this&&this.__rest||function(Wt,Pt){var en={};for(var tn in Wt)if(Object.prototype.hasOwnProperty.call(Wt,tn)&&Pt.indexOf(tn)<0)en[tn]=Wt[tn];if(Wt!=null&&typeof Object.getOwnPropertySymbols==="function")for(var nn=0,tn=Object.getOwnPropertySymbols(Wt);nnWt.msg||Wt.message||Wt.error_description||Wt.error||JSON.stringify(Wt);const In=[502,503,504];async function handleError(Wt){var Pt;if(!(0,an.looksLikeFetchResponse)(Wt)){throw new rn.AuthRetryableFetchError(_getErrorMessage(Wt),0)}if(In.includes(Wt.status)){throw new rn.AuthRetryableFetchError(_getErrorMessage(Wt),Wt.status)}let en;try{en=await Wt.json()}catch(Wt){throw new rn.AuthUnknownError(_getErrorMessage(Wt),Wt)}let tn=undefined;const sn=(0,an.parseResponseAPIVersion)(Wt);if(sn&&sn.getTime()>=nn.API_VERSIONS["2024-01-01"].timestamp&&typeof en==="object"&&en&&typeof en.code==="string"){tn=en.code}else if(typeof en==="object"&&en&&typeof en.error_code==="string"){tn=en.error_code}if(!tn){if(typeof en==="object"&&en&&typeof en.weak_password==="object"&&en.weak_password&&Array.isArray(en.weak_password.reasons)&&en.weak_password.reasons.length&&en.weak_password.reasons.reduce(((Wt,Pt)=>Wt&&typeof Pt==="string"),true)){throw new rn.AuthWeakPasswordError(_getErrorMessage(en),Wt.status,en.weak_password.reasons)}}else if(tn==="weak_password"){throw new rn.AuthWeakPasswordError(_getErrorMessage(en),Wt.status,((Pt=en.weak_password)===null||Pt===void 0?void 0:Pt.reasons)||[])}throw new rn.AuthApiError(_getErrorMessage(en),Wt.status||500,tn)}Pt.handleError=handleError;const _getRequestParams=(Wt,Pt,en,tn)=>{const nn={method:Wt,headers:(Pt===null||Pt===void 0?void 0:Pt.headers)||{}};if(Wt==="GET"){return nn}nn.headers=Object.assign({"Content-Type":"application/json;charset=UTF-8"},Pt===null||Pt===void 0?void 0:Pt.headers);nn.body=JSON.stringify(tn);return Object.assign(Object.assign({},nn),en)};async function _request(Wt,Pt,en,tn){var an;const rn=Object.assign({},tn===null||tn===void 0?void 0:tn.headers);if(!rn[nn.API_VERSION_HEADER_NAME]){rn[nn.API_VERSION_HEADER_NAME]=nn.API_VERSIONS["2024-01-01"].name}if(tn===null||tn===void 0?void 0:tn.jwt){rn["Authorization"]=`Bearer ${tn.jwt}`}const In=(an=tn===null||tn===void 0?void 0:tn.query)!==null&&an!==void 0?an:{};if(tn===null||tn===void 0?void 0:tn.redirectTo){In["redirect_to"]=tn.redirectTo}const sn=Object.keys(In).length?"?"+new URLSearchParams(In).toString():"";const on=await _handleRequest(Wt,Pt,en+sn,{headers:rn,noResolveJson:tn===null||tn===void 0?void 0:tn.noResolveJson},{},tn===null||tn===void 0?void 0:tn.body);return(tn===null||tn===void 0?void 0:tn.xform)?tn===null||tn===void 0?void 0:tn.xform(on):{data:Object.assign({},on),error:null}}Pt._request=_request;async function _handleRequest(Wt,Pt,en,tn,nn,an){const In=_getRequestParams(Pt,tn,nn,an);let sn;try{sn=await Wt(en,Object.assign(Object.assign({},In),{cache:"no-store"}))}catch(Wt){console.error(Wt);throw new rn.AuthRetryableFetchError(_getErrorMessage(Wt),0)}if(!sn.ok){await handleError(sn)}if(tn===null||tn===void 0?void 0:tn.noResolveJson){return sn}try{return await sn.json()}catch(Wt){await handleError(Wt)}}function _sessionResponse(Wt){var Pt;let en=null;if(hasSession(Wt)){en=Object.assign({},Wt);if(!Wt.expires_at){en.expires_at=(0,an.expiresAt)(Wt.expires_in)}}const tn=(Pt=Wt.user)!==null&&Pt!==void 0?Pt:Wt;return{data:{session:en,user:tn},error:null}}Pt._sessionResponse=_sessionResponse;function _sessionResponsePassword(Wt){const Pt=_sessionResponse(Wt);if(!Pt.error&&Wt.weak_password&&typeof Wt.weak_password==="object"&&Array.isArray(Wt.weak_password.reasons)&&Wt.weak_password.reasons.length&&Wt.weak_password.message&&typeof Wt.weak_password.message==="string"&&Wt.weak_password.reasons.reduce(((Wt,Pt)=>Wt&&typeof Pt==="string"),true)){Pt.data.weak_password=Wt.weak_password}return Pt}Pt._sessionResponsePassword=_sessionResponsePassword;function _userResponse(Wt){var Pt;const en=(Pt=Wt.user)!==null&&Pt!==void 0?Pt:Wt;return{data:{user:en},error:null}}Pt._userResponse=_userResponse;function _ssoResponse(Wt){return{data:Wt,error:null}}Pt._ssoResponse=_ssoResponse;function _generateLinkResponse(Wt){const{action_link:Pt,email_otp:en,hashed_token:nn,redirect_to:an,verification_type:rn}=Wt,In=tn(Wt,["action_link","email_otp","hashed_token","redirect_to","verification_type"]);const sn={action_link:Pt,email_otp:en,hashed_token:nn,redirect_to:an,verification_type:rn};const on=Object.assign({},In);return{data:{properties:sn,user:on},error:null}}Pt._generateLinkResponse=_generateLinkResponse;function _noResolveJsonResponse(Wt){return Wt}Pt._noResolveJsonResponse=_noResolveJsonResponse;function hasSession(Wt){return Wt.access_token&&Wt.refresh_token&&Wt.expires_in}},30601:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};Object.defineProperty(Pt,"__esModule",{value:true});Pt.parseResponseAPIVersion=Pt.getCodeChallengeAndMethod=Pt.generatePKCEChallenge=Pt.generatePKCEVerifier=Pt.retryable=Pt.sleep=Pt.decodeJWTPayload=Pt.Deferred=Pt.decodeBase64URL=Pt.removeItemAsync=Pt.getItemAsync=Pt.setItemAsync=Pt.looksLikeFetchResponse=Pt.resolveFetch=Pt.parseParametersFromURL=Pt.supportsLocalStorage=Pt.isBrowser=Pt.uuid=Pt.expiresAt=void 0;const rn=en(26705);function expiresAt(Wt){const Pt=Math.round(Date.now()/1e3);return Pt+Wt}Pt.expiresAt=expiresAt;function uuid(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(Wt){const Pt=Math.random()*16|0,en=Wt=="x"?Pt:Pt&3|8;return en.toString(16)}))}Pt.uuid=uuid;const isBrowser=()=>typeof document!=="undefined";Pt.isBrowser=isBrowser;const In={tested:false,writable:false};const supportsLocalStorage=()=>{if(!(0,Pt.isBrowser)()){return false}try{if(typeof globalThis.localStorage!=="object"){return false}}catch(Wt){return false}if(In.tested){return In.writable}const Wt=`lswt-${Math.random()}${Math.random()}`;try{globalThis.localStorage.setItem(Wt,Wt);globalThis.localStorage.removeItem(Wt);In.tested=true;In.writable=true}catch(Wt){In.tested=true;In.writable=false}return In.writable};Pt.supportsLocalStorage=supportsLocalStorage;function parseParametersFromURL(Wt){const Pt={};const en=new URL(Wt);if(en.hash&&en.hash[0]==="#"){try{const Wt=new URLSearchParams(en.hash.substring(1));Wt.forEach(((Wt,en)=>{Pt[en]=Wt}))}catch(Wt){}}en.searchParams.forEach(((Wt,en)=>{Pt[en]=Wt}));return Pt}Pt.parseParametersFromURL=parseParametersFromURL;const resolveFetch=Wt=>{let Pt;if(Wt){Pt=Wt}else if(typeof fetch==="undefined"){Pt=(...Wt)=>Promise.resolve().then((()=>an(en(83318)))).then((({default:Pt})=>Pt(...Wt)))}else{Pt=fetch}return(...Wt)=>Pt(...Wt)};Pt.resolveFetch=resolveFetch;const looksLikeFetchResponse=Wt=>typeof Wt==="object"&&Wt!==null&&"status"in Wt&&"ok"in Wt&&"json"in Wt&&typeof Wt.json==="function";Pt.looksLikeFetchResponse=looksLikeFetchResponse;const setItemAsync=async(Wt,Pt,en)=>{await Wt.setItem(Pt,JSON.stringify(en))};Pt.setItemAsync=setItemAsync;const getItemAsync=async(Wt,Pt)=>{const en=await Wt.getItem(Pt);if(!en){return null}try{return JSON.parse(en)}catch(Wt){return en}};Pt.getItemAsync=getItemAsync;const removeItemAsync=async(Wt,Pt)=>{await Wt.removeItem(Pt)};Pt.removeItemAsync=removeItemAsync;function decodeBase64URL(Wt){const Pt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";let en="";let tn,nn,an;let rn,In,sn,on;let cn=0;Wt=Wt.replace("-","+").replace("_","/");while(cn>4;nn=(In&15)<<4|sn>>2;an=(sn&3)<<6|on;en=en+String.fromCharCode(tn);if(sn!=64&&nn!=0){en=en+String.fromCharCode(nn)}if(on!=64&&an!=0){en=en+String.fromCharCode(an)}}return en}Pt.decodeBase64URL=decodeBase64URL;class Deferred{constructor(){this.promise=new Deferred.promiseConstructor(((Wt,Pt)=>{this.resolve=Wt;this.reject=Pt}))}}Pt.Deferred=Deferred;Deferred.promiseConstructor=Promise;function decodeJWTPayload(Wt){const Pt=/^([a-z0-9_-]{4})*($|[a-z0-9_-]{3}=?$|[a-z0-9_-]{2}(==)?$)$/i;const en=Wt.split(".");if(en.length!==3){throw new Error("JWT is not valid: not a JWT structure")}if(!Pt.test(en[1])){throw new Error("JWT is not valid: payload is not in base64url format")}const tn=en[1];return JSON.parse(decodeBase64URL(tn))}Pt.decodeJWTPayload=decodeJWTPayload;async function sleep(Wt){return await new Promise((Pt=>{setTimeout((()=>Pt(null)),Wt)}))}Pt.sleep=sleep;function retryable(Wt,Pt){const en=new Promise(((en,tn)=>{(async()=>{for(let nn=0;nnString.fromCharCode(Wt))).join("")}function base64urlencode(Wt){return btoa(Wt).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}async function generatePKCEChallenge(Wt){const Pt=typeof crypto!=="undefined"&&typeof crypto.subtle!=="undefined"&&typeof TextEncoder!=="undefined";if(!Pt){console.warn("WebCrypto API is not supported. Code challenge method will default to use plain instead of sha256.");return Wt}const en=await sha256(Wt);return base64urlencode(en)}Pt.generatePKCEChallenge=generatePKCEChallenge;async function getCodeChallengeAndMethod(Wt,en,tn=false){const nn=generatePKCEVerifier();let an=nn;if(tn){an+="/PASSWORD_RECOVERY"}await(0,Pt.setItemAsync)(Wt,`${en}-code-verifier`,an);const rn=await generatePKCEChallenge(nn);const In=nn===rn?"plain":"s256";return[rn,In]}Pt.getCodeChallengeAndMethod=getCodeChallengeAndMethod;const sn=/^2[0-9]{3}-(0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-9]|3[0-1])$/i;function parseResponseAPIVersion(Wt){const Pt=Wt.headers.get(rn.API_VERSION_HEADER_NAME);if(!Pt){return null}if(!Pt.match(sn)){return null}try{const Wt=new Date(`${Pt}T00:00:00.0Z`);return Wt}catch(Wt){return null}}Pt.parseResponseAPIVersion=parseResponseAPIVersion},21735:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.memoryLocalStorageAdapter=Pt.localStorageAdapter=void 0;const tn=en(30601);Pt.localStorageAdapter={getItem:Wt=>{if(!(0,tn.supportsLocalStorage)()){return null}return globalThis.localStorage.getItem(Wt)},setItem:(Wt,Pt)=>{if(!(0,tn.supportsLocalStorage)()){return}globalThis.localStorage.setItem(Wt,Pt)},removeItem:Wt=>{if(!(0,tn.supportsLocalStorage)()){return}globalThis.localStorage.removeItem(Wt)}};function memoryLocalStorageAdapter(Wt={}){return{getItem:Pt=>Wt[Pt]||null,setItem:(Pt,en)=>{Wt[Pt]=en},removeItem:Pt=>{delete Wt[Pt]}}}Pt.memoryLocalStorageAdapter=memoryLocalStorageAdapter},28932:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.navigatorLock=Pt.NavigatorLockAcquireTimeoutError=Pt.LockAcquireTimeoutError=Pt.internals=void 0;const tn=en(30601);Pt.internals={debug:!!(globalThis&&(0,tn.supportsLocalStorage)()&&globalThis.localStorage&&globalThis.localStorage.getItem("supabase.gotrue-js.locks.debug")==="true")};class LockAcquireTimeoutError extends Error{constructor(Wt){super(Wt);this.isAcquireTimeout=true}}Pt.LockAcquireTimeoutError=LockAcquireTimeoutError;class NavigatorLockAcquireTimeoutError extends LockAcquireTimeoutError{}Pt.NavigatorLockAcquireTimeoutError=NavigatorLockAcquireTimeoutError;async function navigatorLock(Wt,en,tn){if(Pt.internals.debug){console.log("@supabase/gotrue-js: navigatorLock: acquire lock",Wt,en)}const nn=new globalThis.AbortController;if(en>0){setTimeout((()=>{nn.abort();if(Pt.internals.debug){console.log("@supabase/gotrue-js: navigatorLock acquire timed out",Wt)}}),en)}return await globalThis.navigator.locks.request(Wt,en===0?{mode:"exclusive",ifAvailable:true}:{mode:"exclusive",signal:nn.signal},(async nn=>{if(nn){if(Pt.internals.debug){console.log("@supabase/gotrue-js: navigatorLock: acquired",Wt,nn.name)}try{return await tn()}finally{if(Pt.internals.debug){console.log("@supabase/gotrue-js: navigatorLock: released",Wt,nn.name)}}}else{if(en===0){if(Pt.internals.debug){console.log("@supabase/gotrue-js: navigatorLock: not immediately available",Wt)}throw new NavigatorLockAcquireTimeoutError(`Acquiring an exclusive Navigator LockManager lock "${Wt}" immediately failed`)}else{if(Pt.internals.debug){try{const Wt=await globalThis.navigator.locks.query();console.log("@supabase/gotrue-js: Navigator LockManager state",JSON.stringify(Wt,null," "))}catch(Wt){console.warn("@supabase/gotrue-js: Error when querying Navigator LockManager state",Wt)}}console.warn("@supabase/gotrue-js: Navigator LockManager returned a null lock when using #request without ifAvailable set to true, it appears this browser is not following the LockManager spec https://developer.mozilla.org/en-US/docs/Web/API/LockManager/request");return await tn()}}}))}Pt.navigatorLock=navigatorLock},80512:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.polyfillGlobalThis=void 0;function polyfillGlobalThis(){if(typeof globalThis==="object")return;try{Object.defineProperty(Object.prototype,"__magic__",{get:function(){return this},configurable:true});__magic__.globalThis=__magic__;delete Object.prototype.__magic__}catch(Wt){if(typeof self!=="undefined"){self.globalThis=self}}}Pt.polyfillGlobalThis=polyfillGlobalThis},53737:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true})},41920:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="2.63.0"},39149:function(Wt,Pt,en){"use strict";var tn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});Pt.FunctionsClient=void 0;const nn=en(44495);const an=en(70842);class FunctionsClient{constructor(Wt,{headers:Pt={},customFetch:en,region:tn=an.FunctionRegion.Any}={}){this.url=Wt;this.headers=Pt;this.region=tn;this.fetch=(0,nn.resolveFetch)(en)}setAuth(Wt){this.headers.Authorization=`Bearer ${Wt}`}invoke(Wt,Pt={}){var en;return tn(this,void 0,void 0,(function*(){try{const{headers:tn,method:nn,body:rn}=Pt;let In={};let{region:sn}=Pt;if(!sn){sn=this.region}if(sn&&sn!=="any"){In["x-region"]=sn}let on;if(rn&&(tn&&!Object.prototype.hasOwnProperty.call(tn,"Content-Type")||!tn)){if(typeof Blob!=="undefined"&&rn instanceof Blob||rn instanceof ArrayBuffer){In["Content-Type"]="application/octet-stream";on=rn}else if(typeof rn==="string"){In["Content-Type"]="text/plain";on=rn}else if(typeof FormData!=="undefined"&&rn instanceof FormData){on=rn}else{In["Content-Type"]="application/json";on=JSON.stringify(rn)}}const cn=yield this.fetch(`${this.url}/${Wt}`,{method:nn||"POST",headers:Object.assign(Object.assign(Object.assign({},In),this.headers),tn),body:on}).catch((Wt=>{throw new an.FunctionsFetchError(Wt)}));const dn=cn.headers.get("x-relay-error");if(dn&&dn==="true"){throw new an.FunctionsRelayError(cn)}if(!cn.ok){throw new an.FunctionsHttpError(cn)}let un=((en=cn.headers.get("Content-Type"))!==null&&en!==void 0?en:"text/plain").split(";")[0].trim();let pn;if(un==="application/json"){pn=yield cn.json()}else if(un==="application/octet-stream"){pn=yield cn.blob()}else if(un==="multipart/form-data"){pn=yield cn.formData()}else{pn=yield cn.text()}return{data:pn,error:null}}catch(Wt){return{data:null,error:Wt}}}))}}Pt.FunctionsClient=FunctionsClient},44495:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};Object.defineProperty(Pt,"__esModule",{value:true});Pt.resolveFetch=void 0;const resolveFetch=Wt=>{let Pt;if(Wt){Pt=Wt}else if(typeof fetch==="undefined"){Pt=(...Wt)=>Promise.resolve().then((()=>an(en(83318)))).then((({default:Pt})=>Pt(...Wt)))}else{Pt=fetch}return(...Wt)=>Pt(...Wt)};Pt.resolveFetch=resolveFetch},70459:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.FunctionRegion=Pt.FunctionsRelayError=Pt.FunctionsHttpError=Pt.FunctionsFetchError=Pt.FunctionsError=Pt.FunctionsClient=void 0;var tn=en(39149);Object.defineProperty(Pt,"FunctionsClient",{enumerable:true,get:function(){return tn.FunctionsClient}});var nn=en(70842);Object.defineProperty(Pt,"FunctionsError",{enumerable:true,get:function(){return nn.FunctionsError}});Object.defineProperty(Pt,"FunctionsFetchError",{enumerable:true,get:function(){return nn.FunctionsFetchError}});Object.defineProperty(Pt,"FunctionsHttpError",{enumerable:true,get:function(){return nn.FunctionsHttpError}});Object.defineProperty(Pt,"FunctionsRelayError",{enumerable:true,get:function(){return nn.FunctionsRelayError}});Object.defineProperty(Pt,"FunctionRegion",{enumerable:true,get:function(){return nn.FunctionRegion}})},70842:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.FunctionRegion=Pt.FunctionsHttpError=Pt.FunctionsRelayError=Pt.FunctionsFetchError=Pt.FunctionsError=void 0;class FunctionsError extends Error{constructor(Wt,Pt="FunctionsError",en){super(Wt);this.name=Pt;this.context=en}}Pt.FunctionsError=FunctionsError;class FunctionsFetchError extends FunctionsError{constructor(Wt){super("Failed to send a request to the Edge Function","FunctionsFetchError",Wt)}}Pt.FunctionsFetchError=FunctionsFetchError;class FunctionsRelayError extends FunctionsError{constructor(Wt){super("Relay Error invoking the Edge Function","FunctionsRelayError",Wt)}}Pt.FunctionsRelayError=FunctionsRelayError;class FunctionsHttpError extends FunctionsError{constructor(Wt){super("Edge Function returned a non-2xx status code","FunctionsHttpError",Wt)}}Pt.FunctionsHttpError=FunctionsHttpError;var en;(function(Wt){Wt["Any"]="any";Wt["ApNortheast1"]="ap-northeast-1";Wt["ApNortheast2"]="ap-northeast-2";Wt["ApSouth1"]="ap-south-1";Wt["ApSoutheast1"]="ap-southeast-1";Wt["ApSoutheast2"]="ap-southeast-2";Wt["CaCentral1"]="ca-central-1";Wt["EuCentral1"]="eu-central-1";Wt["EuWest1"]="eu-west-1";Wt["EuWest2"]="eu-west-2";Wt["EuWest3"]="eu-west-3";Wt["SaEast1"]="sa-east-1";Wt["UsEast1"]="us-east-1";Wt["UsWest1"]="us-west-1";Wt["UsWest2"]="us-west-2"})(en=Pt.FunctionRegion||(Pt.FunctionRegion={}))},83318:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});function _interopDefault(Wt){return Wt&&typeof Wt==="object"&&"default"in Wt?Wt["default"]:Wt}var tn=_interopDefault(en(2203));var nn=_interopDefault(en(58611));var an=_interopDefault(en(87016));var rn=_interopDefault(en(46308));var In=_interopDefault(en(65692));var sn=_interopDefault(en(43106));const on=tn.Readable;const cn=Symbol("buffer");const dn=Symbol("type");class Blob{constructor(){this[dn]="";const Wt=arguments[0];const Pt=arguments[1];const en=[];let tn=0;if(Wt){const Pt=Wt;const nn=Number(Pt.length);for(let Wt=0;Wt1&&arguments[1]!==undefined?arguments[1]:{},nn=en.size;let an=nn===undefined?0:nn;var rn=en.timeout;let In=rn===undefined?0:rn;if(Wt==null){Wt=null}else if(isURLSearchParams(Wt)){Wt=Buffer.from(Wt.toString())}else if(isBlob(Wt));else if(Buffer.isBuffer(Wt));else if(Object.prototype.toString.call(Wt)==="[object ArrayBuffer]"){Wt=Buffer.from(Wt)}else if(ArrayBuffer.isView(Wt)){Wt=Buffer.from(Wt.buffer,Wt.byteOffset,Wt.byteLength)}else if(Wt instanceof tn);else{Wt=Buffer.from(String(Wt))}this[pn]={body:Wt,disturbed:false,error:null};this.size=an;this.timeout=In;if(Wt instanceof tn){Wt.on("error",(function(Wt){const en=Wt.name==="AbortError"?Wt:new FetchError(`Invalid response body while trying to fetch ${Pt.url}: ${Wt.message}`,"system",Wt);Pt[pn].error=en}))}}Body.prototype={get body(){return this[pn].body},get bodyUsed(){return this[pn].disturbed},arrayBuffer(){return consumeBody.call(this).then((function(Wt){return Wt.buffer.slice(Wt.byteOffset,Wt.byteOffset+Wt.byteLength)}))},blob(){let Wt=this.headers&&this.headers.get("content-type")||"";return consumeBody.call(this).then((function(Pt){return Object.assign(new Blob([],{type:Wt.toLowerCase()}),{[cn]:Pt})}))},json(){var Wt=this;return consumeBody.call(this).then((function(Pt){try{return JSON.parse(Pt.toString())}catch(Pt){return Body.Promise.reject(new FetchError(`invalid json response body at ${Wt.url} reason: ${Pt.message}`,"invalid-json"))}}))},text(){return consumeBody.call(this).then((function(Wt){return Wt.toString()}))},buffer(){return consumeBody.call(this)},textConverted(){var Wt=this;return consumeBody.call(this).then((function(Pt){return convertBody(Pt,Wt.headers)}))}};Object.defineProperties(Body.prototype,{body:{enumerable:true},bodyUsed:{enumerable:true},arrayBuffer:{enumerable:true},blob:{enumerable:true},json:{enumerable:true},text:{enumerable:true}});Body.mixIn=function(Wt){for(const Pt of Object.getOwnPropertyNames(Body.prototype)){if(!(Pt in Wt)){const en=Object.getOwnPropertyDescriptor(Body.prototype,Pt);Object.defineProperty(Wt,Pt,en)}}};function consumeBody(){var Wt=this;if(this[pn].disturbed){return Body.Promise.reject(new TypeError(`body used already for: ${this.url}`))}this[pn].disturbed=true;if(this[pn].error){return Body.Promise.reject(this[pn].error)}let Pt=this.body;if(Pt===null){return Body.Promise.resolve(Buffer.alloc(0))}if(isBlob(Pt)){Pt=Pt.stream()}if(Buffer.isBuffer(Pt)){return Body.Promise.resolve(Pt)}if(!(Pt instanceof tn)){return Body.Promise.resolve(Buffer.alloc(0))}let en=[];let nn=0;let an=false;return new Body.Promise((function(tn,rn){let In;if(Wt.timeout){In=setTimeout((function(){an=true;rn(new FetchError(`Response timeout while trying to fetch ${Wt.url} (over ${Wt.timeout}ms)`,"body-timeout"))}),Wt.timeout)}Pt.on("error",(function(Pt){if(Pt.name==="AbortError"){an=true;rn(Pt)}else{rn(new FetchError(`Invalid response body while trying to fetch ${Wt.url}: ${Pt.message}`,"system",Pt))}}));Pt.on("data",(function(Pt){if(an||Pt===null){return}if(Wt.size&&nn+Pt.length>Wt.size){an=true;rn(new FetchError(`content size at ${Wt.url} over limit: ${Wt.size}`,"max-size"));return}nn+=Pt.length;en.push(Pt)}));Pt.on("end",(function(){if(an){return}clearTimeout(In);try{tn(Buffer.concat(en,nn))}catch(Pt){rn(new FetchError(`Could not create Buffer from response body for ${Wt.url}: ${Pt.message}`,"system",Pt))}}))}))}function convertBody(Wt,Pt){{throw new Error("The package `encoding` must be installed to use the textConverted() function")}const en=Pt.get("content-type");let tn="utf-8";let nn,an;if(en){nn=/charset=([^;]*)/i.exec(en)}an=Wt.slice(0,1024).toString();if(!nn&&an){nn=/0&&arguments[0]!==undefined?arguments[0]:undefined;this[hn]=Object.create(null);if(Wt instanceof Headers){const Pt=Wt.raw();const en=Object.keys(Pt);for(const Wt of en){for(const en of Pt[Wt]){this.append(Wt,en)}}return}if(Wt==null);else if(typeof Wt==="object"){const Pt=Wt[Symbol.iterator];if(Pt!=null){if(typeof Pt!=="function"){throw new TypeError("Header pairs must be iterable")}const en=[];for(const Pt of Wt){if(typeof Pt!=="object"||typeof Pt[Symbol.iterator]!=="function"){throw new TypeError("Each header pair must be iterable")}en.push(Array.from(Pt))}for(const Wt of en){if(Wt.length!==2){throw new TypeError("Each header pair must be a name/value tuple")}this.append(Wt[0],Wt[1])}}else{for(const Pt of Object.keys(Wt)){const en=Wt[Pt];this.append(Pt,en)}}}else{throw new TypeError("Provided initializer must be an object")}}get(Wt){Wt=`${Wt}`;validateName(Wt);const Pt=find(this[hn],Wt);if(Pt===undefined){return null}return this[hn][Pt].join(", ")}forEach(Wt){let Pt=arguments.length>1&&arguments[1]!==undefined?arguments[1]:undefined;let en=getHeaders(this);let tn=0;while(tn1&&arguments[1]!==undefined?arguments[1]:"key+value";const en=Object.keys(Wt[hn]).sort();return en.map(Pt==="key"?function(Wt){return Wt.toLowerCase()}:Pt==="value"?function(Pt){return Wt[hn][Pt].join(", ")}:function(Pt){return[Pt.toLowerCase(),Wt[hn][Pt].join(", ")]})}const Zn=Symbol("internal");function createHeadersIterator(Wt,Pt){const en=Object.create(An);en[Zn]={target:Wt,kind:Pt,index:0};return en}const An=Object.setPrototypeOf({next(){if(!this||Object.getPrototypeOf(this)!==An){throw new TypeError("Value of `this` is not a HeadersIterator")}var Wt=this[Zn];const Pt=Wt.target,en=Wt.kind,tn=Wt.index;const nn=getHeaders(Pt,en);const an=nn.length;if(tn>=an){return{value:undefined,done:true}}this[Zn].index=tn+1;return{value:nn[tn],done:false}}},Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));Object.defineProperty(An,Symbol.toStringTag,{value:"HeadersIterator",writable:false,enumerable:false,configurable:true});function exportNodeCompatibleHeaders(Wt){const Pt=Object.assign({__proto__:null},Wt[hn]);const en=find(Wt[hn],"Host");if(en!==undefined){Pt[en]=Pt[en][0]}return Pt}function createHeadersLenient(Wt){const Pt=new Headers;for(const en of Object.keys(Wt)){if(bn.test(en)){continue}if(Array.isArray(Wt[en])){for(const tn of Wt[en]){if(Gn.test(tn)){continue}if(Pt[hn][en]===undefined){Pt[hn][en]=[tn]}else{Pt[hn][en].push(tn)}}}else if(!Gn.test(Wt[en])){Pt[hn][en]=[Wt[en]]}}return Pt}const Wn=Symbol("Response internals");const Nn=nn.STATUS_CODES;class Response{constructor(){let Wt=arguments.length>0&&arguments[0]!==undefined?arguments[0]:null;let Pt=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};Body.call(this,Wt,Pt);const en=Pt.status||200;const tn=new Headers(Pt.headers);if(Wt!=null&&!tn.has("Content-Type")){const Pt=extractContentType(Wt);if(Pt){tn.append("Content-Type",Pt)}}this[Wn]={url:Pt.url,status:en,statusText:Pt.statusText||Nn[en],headers:tn,counter:Pt.counter}}get url(){return this[Wn].url||""}get status(){return this[Wn].status}get ok(){return this[Wn].status>=200&&this[Wn].status<300}get redirected(){return this[Wn].counter>0}get statusText(){return this[Wn].statusText}get headers(){return this[Wn].headers}clone(){return new Response(clone(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected})}}Body.mixIn(Response.prototype);Object.defineProperties(Response.prototype,{url:{enumerable:true},status:{enumerable:true},ok:{enumerable:true},redirected:{enumerable:true},statusText:{enumerable:true},headers:{enumerable:true},clone:{enumerable:true}});Object.defineProperty(Response.prototype,Symbol.toStringTag,{value:"Response",writable:false,enumerable:false,configurable:true});const gn=Symbol("Request internals");const yn=an.URL||rn.URL;const vn=an.parse;const Yn=an.format;function parseURL(Wt){if(/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(Wt)){Wt=new yn(Wt).toString()}return vn(Wt)}const En="destroy"in tn.Readable.prototype;function isRequest(Wt){return typeof Wt==="object"&&typeof Wt[gn]==="object"}function isAbortSignal(Wt){const Pt=Wt&&typeof Wt==="object"&&Object.getPrototypeOf(Wt);return!!(Pt&&Pt.constructor.name==="AbortSignal")}class Request{constructor(Wt){let Pt=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};let en;if(!isRequest(Wt)){if(Wt&&Wt.href){en=parseURL(Wt.href)}else{en=parseURL(`${Wt}`)}Wt={}}else{en=parseURL(Wt.url)}let tn=Pt.method||Wt.method||"GET";tn=tn.toUpperCase();if((Pt.body!=null||isRequest(Wt)&&Wt.body!==null)&&(tn==="GET"||tn==="HEAD")){throw new TypeError("Request with GET/HEAD method cannot have body")}let nn=Pt.body!=null?Pt.body:isRequest(Wt)&&Wt.body!==null?clone(Wt):null;Body.call(this,nn,{timeout:Pt.timeout||Wt.timeout||0,size:Pt.size||Wt.size||0});const an=new Headers(Pt.headers||Wt.headers||{});if(nn!=null&&!an.has("Content-Type")){const Wt=extractContentType(nn);if(Wt){an.append("Content-Type",Wt)}}let rn=isRequest(Wt)?Wt.signal:null;if("signal"in Pt)rn=Pt.signal;if(rn!=null&&!isAbortSignal(rn)){throw new TypeError("Expected signal to be an instanceof AbortSignal")}this[gn]={method:tn,redirect:Pt.redirect||Wt.redirect||"follow",headers:an,parsedURL:en,signal:rn};this.follow=Pt.follow!==undefined?Pt.follow:Wt.follow!==undefined?Wt.follow:20;this.compress=Pt.compress!==undefined?Pt.compress:Wt.compress!==undefined?Wt.compress:true;this.counter=Pt.counter||Wt.counter||0;this.agent=Pt.agent||Wt.agent}get method(){return this[gn].method}get url(){return Yn(this[gn].parsedURL)}get headers(){return this[gn].headers}get redirect(){return this[gn].redirect}get signal(){return this[gn].signal}clone(){return new Request(this)}}Body.mixIn(Request.prototype);Object.defineProperty(Request.prototype,Symbol.toStringTag,{value:"Request",writable:false,enumerable:false,configurable:true});Object.defineProperties(Request.prototype,{method:{enumerable:true},url:{enumerable:true},headers:{enumerable:true},redirect:{enumerable:true},clone:{enumerable:true},signal:{enumerable:true}});function getNodeRequestOptions(Wt){const Pt=Wt[gn].parsedURL;const en=new Headers(Wt[gn].headers);if(!en.has("Accept")){en.set("Accept","*/*")}if(!Pt.protocol||!Pt.hostname){throw new TypeError("Only absolute URLs are supported")}if(!/^https?:$/.test(Pt.protocol)){throw new TypeError("Only HTTP(S) protocols are supported")}if(Wt.signal&&Wt.body instanceof tn.Readable&&!En){throw new Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8")}let nn=null;if(Wt.body==null&&/^(POST|PUT)$/i.test(Wt.method)){nn="0"}if(Wt.body!=null){const Pt=getTotalBytes(Wt);if(typeof Pt==="number"){nn=String(Pt)}}if(nn){en.set("Content-Length",nn)}if(!en.has("User-Agent")){en.set("User-Agent","node-fetch/1.0 (+https://github.com/bitinn/node-fetch)")}if(Wt.compress&&!en.has("Accept-Encoding")){en.set("Accept-Encoding","gzip,deflate")}let an=Wt.agent;if(typeof an==="function"){an=an(Pt)}if(!en.has("Connection")&&!an){en.set("Connection","close")}return Object.assign({},Pt,{method:Wt.method,headers:exportNodeCompatibleHeaders(en),agent:an})}function AbortError(Wt){Error.call(this,Wt);this.type="aborted";this.message=Wt;Error.captureStackTrace(this,this.constructor)}AbortError.prototype=Object.create(Error.prototype);AbortError.prototype.constructor=AbortError;AbortError.prototype.name="AbortError";const Vn=an.URL||rn.URL;const Rn=tn.PassThrough;const wn=function isDomainOrSubdomain(Wt,Pt){const en=new Vn(Pt).hostname;const tn=new Vn(Wt).hostname;return en===tn||en[en.length-tn.length-1]==="."&&en.endsWith(tn)};const Fn=function isSameProtocol(Wt,Pt){const en=new Vn(Pt).protocol;const tn=new Vn(Wt).protocol;return en===tn};function fetch(Wt,Pt){if(!fetch.Promise){throw new Error("native promise missing, set fetch.Promise to your favorite alternative")}Body.Promise=fetch.Promise;return new fetch.Promise((function(en,an){const rn=new Request(Wt,Pt);const on=getNodeRequestOptions(rn);const cn=(on.protocol==="https:"?In:nn).request;const dn=rn.signal;let un=null;const pn=function abort(){let Wt=new AbortError("The user aborted a request.");an(Wt);if(rn.body&&rn.body instanceof tn.Readable){destroyStream(rn.body,Wt)}if(!un||!un.body)return;un.body.emit("error",Wt)};if(dn&&dn.aborted){pn();return}const mn=function abortAndFinalize(){pn();finalize()};const bn=cn(on);let Gn;if(dn){dn.addEventListener("abort",mn)}function finalize(){bn.abort();if(dn)dn.removeEventListener("abort",mn);clearTimeout(Gn)}if(rn.timeout){bn.once("socket",(function(Wt){Gn=setTimeout((function(){an(new FetchError(`network timeout at: ${rn.url}`,"request-timeout"));finalize()}),rn.timeout)}))}bn.on("error",(function(Wt){an(new FetchError(`request to ${rn.url} failed, reason: ${Wt.message}`,"system",Wt));if(un&&un.body){destroyStream(un.body,Wt)}finalize()}));fixResponseChunkedTransferBadEnding(bn,(function(Wt){if(dn&&dn.aborted){return}if(un&&un.body){destroyStream(un.body,Wt)}}));if(parseInt(process.version.substring(1))<14){bn.on("socket",(function(Wt){Wt.addListener("close",(function(Pt){const en=Wt.listenerCount("data")>0;if(un&&en&&!Pt&&!(dn&&dn.aborted)){const Wt=new Error("Premature close");Wt.code="ERR_STREAM_PREMATURE_CLOSE";un.body.emit("error",Wt)}}))}))}bn.on("response",(function(Wt){clearTimeout(Gn);const Pt=createHeadersLenient(Wt.headers);if(fetch.isRedirect(Wt.statusCode)){const tn=Pt.get("Location");let nn=null;try{nn=tn===null?null:new Vn(tn,rn.url).toString()}catch(Wt){if(rn.redirect!=="manual"){an(new FetchError(`uri requested responds with an invalid redirect URL: ${tn}`,"invalid-redirect"));finalize();return}}switch(rn.redirect){case"error":an(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${rn.url}`,"no-redirect"));finalize();return;case"manual":if(nn!==null){try{Pt.set("Location",nn)}catch(Wt){an(Wt)}}break;case"follow":if(nn===null){break}if(rn.counter>=rn.follow){an(new FetchError(`maximum redirect reached at: ${rn.url}`,"max-redirect"));finalize();return}const tn={headers:new Headers(rn.headers),follow:rn.follow,counter:rn.counter+1,agent:rn.agent,compress:rn.compress,method:rn.method,body:rn.body,signal:rn.signal,timeout:rn.timeout,size:rn.size};if(!wn(rn.url,nn)||!Fn(rn.url,nn)){for(const Wt of["authorization","www-authenticate","cookie","cookie2"]){tn.headers.delete(Wt)}}if(Wt.statusCode!==303&&rn.body&&getTotalBytes(rn)===null){an(new FetchError("Cannot follow redirect with body being a readable stream","unsupported-redirect"));finalize();return}if(Wt.statusCode===303||(Wt.statusCode===301||Wt.statusCode===302)&&rn.method==="POST"){tn.method="GET";tn.body=undefined;tn.headers.delete("content-length")}en(fetch(new Request(nn,tn)));finalize();return}}Wt.once("end",(function(){if(dn)dn.removeEventListener("abort",mn)}));let tn=Wt.pipe(new Rn);const nn={url:rn.url,status:Wt.statusCode,statusText:Wt.statusMessage,headers:Pt,size:rn.size,timeout:rn.timeout,counter:rn.counter};const In=Pt.get("Content-Encoding");if(!rn.compress||rn.method==="HEAD"||In===null||Wt.statusCode===204||Wt.statusCode===304){un=new Response(tn,nn);en(un);return}const on={flush:sn.Z_SYNC_FLUSH,finishFlush:sn.Z_SYNC_FLUSH};if(In=="gzip"||In=="x-gzip"){tn=tn.pipe(sn.createGunzip(on));un=new Response(tn,nn);en(un);return}if(In=="deflate"||In=="x-deflate"){const Pt=Wt.pipe(new Rn);Pt.once("data",(function(Wt){if((Wt[0]&15)===8){tn=tn.pipe(sn.createInflate())}else{tn=tn.pipe(sn.createInflateRaw())}un=new Response(tn,nn);en(un)}));Pt.on("end",(function(){if(!un){un=new Response(tn,nn);en(un)}}));return}if(In=="br"&&typeof sn.createBrotliDecompress==="function"){tn=tn.pipe(sn.createBrotliDecompress());un=new Response(tn,nn);en(un);return}un=new Response(tn,nn);en(un)}));writeToStream(bn,rn)}))}function fixResponseChunkedTransferBadEnding(Wt,Pt){let en;Wt.on("socket",(function(Wt){en=Wt}));Wt.on("response",(function(Wt){const tn=Wt.headers;if(tn["transfer-encoding"]==="chunked"&&!tn["content-length"]){Wt.once("close",(function(Wt){const tn=en&&en.listenerCount("data")>0;if(tn&&!Wt){const Wt=new Error("Premature close");Wt.code="ERR_STREAM_PREMATURE_CLOSE";Pt(Wt)}}))}}))}function destroyStream(Wt,Pt){if(Wt.destroy){Wt.destroy(Pt)}else{Wt.emit("error",Pt);Wt.end()}}fetch.isRedirect=function(Wt){return Wt===301||Wt===302||Wt===303||Wt===307||Wt===308};fetch.Promise=global.Promise;Wt.exports=Pt=fetch;Object.defineProperty(Pt,"__esModule",{value:true});Pt["default"]=Pt;Pt.Headers=Headers;Pt.Request=Request;Pt.Response=Response;Pt.FetchError=FetchError},32198:(Wt,Pt,en)=>{"use strict";var tn=en(24876);var nn=en(63370);var an={TRANSITIONAL:0,NONTRANSITIONAL:1};function normalize(Wt){return Wt.split("\0").map((function(Wt){return Wt.normalize("NFC")})).join("\0")}function findStatus(Wt){var Pt=0;var en=nn.length-1;while(Pt<=en){var tn=Math.floor((Pt+en)/2);var an=nn[tn];if(an[0][0]<=Wt&&an[0][1]>=Wt){return an}else if(an[0][0]>Wt){en=tn-1}else{Pt=tn+1}}return null}var rn=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;function countSymbols(Wt){return Wt.replace(rn,"_").length}function mapChars(Wt,Pt,en){var tn=false;var nn="";var rn=countSymbols(Wt);for(var In=0;In253||In.length===0){an.error=true}for(var sn=0;sn63||rn.length===0){an.error=true;break}}}if(an.error)return null;return rn.join(".")};Wt.exports.toUnicode=function(Wt,Pt){var en=processing(Wt,Pt,an.NONTRANSITIONAL);return{domain:en.string,error:en.error}};Wt.exports.PROCESSING_OPTIONS=an},48279:Wt=>{"use strict";var Pt={};Wt.exports=Pt;function sign(Wt){return Wt<0?-1:1}function evenRound(Wt){if(Wt%1===.5&&(Wt&1)===0){return Math.floor(Wt)}else{return Math.round(Wt)}}function createNumberConversion(Wt,Pt){if(!Pt.unsigned){--Wt}const en=Pt.unsigned?0:-Math.pow(2,Wt);const tn=Math.pow(2,Wt)-1;const nn=Pt.moduloBitLength?Math.pow(2,Pt.moduloBitLength):Math.pow(2,Wt);const an=Pt.moduloBitLength?Math.pow(2,Pt.moduloBitLength-1):Math.pow(2,Wt-1);return function(Wt,rn){if(!rn)rn={};let In=+Wt;if(rn.enforceRange){if(!Number.isFinite(In)){throw new TypeError("Argument is not a finite number")}In=sign(In)*Math.floor(Math.abs(In));if(Intn){throw new TypeError("Argument is not in byte range")}return In}if(!isNaN(In)&&rn.clamp){In=evenRound(In);if(Intn)In=tn;return In}if(!Number.isFinite(In)||In===0){return 0}In=sign(In)*Math.floor(Math.abs(In));In=In%nn;if(!Pt.unsigned&&In>=an){return In-nn}else if(Pt.unsigned){if(In<0){In+=nn}else if(In===-0){return 0}}return In}}Pt["void"]=function(){return undefined};Pt["boolean"]=function(Wt){return!!Wt};Pt["byte"]=createNumberConversion(8,{unsigned:false});Pt["octet"]=createNumberConversion(8,{unsigned:true});Pt["short"]=createNumberConversion(16,{unsigned:false});Pt["unsigned short"]=createNumberConversion(16,{unsigned:true});Pt["long"]=createNumberConversion(32,{unsigned:false});Pt["unsigned long"]=createNumberConversion(32,{unsigned:true});Pt["long long"]=createNumberConversion(32,{unsigned:false,moduloBitLength:64});Pt["unsigned long long"]=createNumberConversion(32,{unsigned:true,moduloBitLength:64});Pt["double"]=function(Wt){const Pt=+Wt;if(!Number.isFinite(Pt)){throw new TypeError("Argument is not a finite floating-point value")}return Pt};Pt["unrestricted double"]=function(Wt){const Pt=+Wt;if(isNaN(Pt)){throw new TypeError("Argument is NaN")}return Pt};Pt["float"]=Pt["double"];Pt["unrestricted float"]=Pt["unrestricted double"];Pt["DOMString"]=function(Wt,Pt){if(!Pt)Pt={};if(Pt.treatNullAsEmptyString&&Wt===null){return""}return String(Wt)};Pt["ByteString"]=function(Wt,Pt){const en=String(Wt);let tn=undefined;for(let Wt=0;(tn=en.codePointAt(Wt))!==undefined;++Wt){if(tn>255){throw new TypeError("Argument is not a valid bytestring")}}return en};Pt["USVString"]=function(Wt){const Pt=String(Wt);const en=Pt.length;const tn=[];for(let Wt=0;Wt57343){tn.push(String.fromCodePoint(nn))}else if(56320<=nn&&nn<=57343){tn.push(String.fromCodePoint(65533))}else{if(Wt===en-1){tn.push(String.fromCodePoint(65533))}else{const en=Pt.charCodeAt(Wt+1);if(56320<=en&&en<=57343){const Pt=nn&1023;const an=en&1023;tn.push(String.fromCodePoint((2<<15)+(2<<9)*Pt+an));++Wt}else{tn.push(String.fromCodePoint(65533))}}}}return tn.join("")};Pt["Date"]=function(Wt,Pt){if(!(Wt instanceof Date)){throw new TypeError("Argument is not a Date object")}if(isNaN(Wt)){return undefined}return Wt};Pt["RegExp"]=function(Wt,Pt){if(!(Wt instanceof RegExp)){Wt=new RegExp(Wt)}return Wt}},94778:(Wt,Pt,en)=>{"use strict";const tn=en(71787);Pt.implementation=class URLImpl{constructor(Wt){const Pt=Wt[0];const en=Wt[1];let nn=null;if(en!==undefined){nn=tn.basicURLParse(en);if(nn==="failure"){throw new TypeError("Invalid base URL")}}const an=tn.basicURLParse(Pt,{baseURL:nn});if(an==="failure"){throw new TypeError("Invalid URL")}this._url=an}get href(){return tn.serializeURL(this._url)}set href(Wt){const Pt=tn.basicURLParse(Wt);if(Pt==="failure"){throw new TypeError("Invalid URL")}this._url=Pt}get origin(){return tn.serializeURLOrigin(this._url)}get protocol(){return this._url.scheme+":"}set protocol(Wt){tn.basicURLParse(Wt+":",{url:this._url,stateOverride:"scheme start"})}get username(){return this._url.username}set username(Wt){if(tn.cannotHaveAUsernamePasswordPort(this._url)){return}tn.setTheUsername(this._url,Wt)}get password(){return this._url.password}set password(Wt){if(tn.cannotHaveAUsernamePasswordPort(this._url)){return}tn.setThePassword(this._url,Wt)}get host(){const Wt=this._url;if(Wt.host===null){return""}if(Wt.port===null){return tn.serializeHost(Wt.host)}return tn.serializeHost(Wt.host)+":"+tn.serializeInteger(Wt.port)}set host(Wt){if(this._url.cannotBeABaseURL){return}tn.basicURLParse(Wt,{url:this._url,stateOverride:"host"})}get hostname(){if(this._url.host===null){return""}return tn.serializeHost(this._url.host)}set hostname(Wt){if(this._url.cannotBeABaseURL){return}tn.basicURLParse(Wt,{url:this._url,stateOverride:"hostname"})}get port(){if(this._url.port===null){return""}return tn.serializeInteger(this._url.port)}set port(Wt){if(tn.cannotHaveAUsernamePasswordPort(this._url)){return}if(Wt===""){this._url.port=null}else{tn.basicURLParse(Wt,{url:this._url,stateOverride:"port"})}}get pathname(){if(this._url.cannotBeABaseURL){return this._url.path[0]}if(this._url.path.length===0){return""}return"/"+this._url.path.join("/")}set pathname(Wt){if(this._url.cannotBeABaseURL){return}this._url.path=[];tn.basicURLParse(Wt,{url:this._url,stateOverride:"path start"})}get search(){if(this._url.query===null||this._url.query===""){return""}return"?"+this._url.query}set search(Wt){const Pt=this._url;if(Wt===""){Pt.query=null;return}const en=Wt[0]==="?"?Wt.substring(1):Wt;Pt.query="";tn.basicURLParse(en,{url:Pt,stateOverride:"query"})}get hash(){if(this._url.fragment===null||this._url.fragment===""){return""}return"#"+this._url.fragment}set hash(Wt){if(Wt===""){this._url.fragment=null;return}const Pt=Wt[0]==="#"?Wt.substring(1):Wt;this._url.fragment="";tn.basicURLParse(Pt,{url:this._url,stateOverride:"fragment"})}toJSON(){return this.href}}},64375:(Wt,Pt,en)=>{"use strict";const tn=en(48279);const nn=en(75199);const an=en(94778);const rn=nn.implSymbol;function URL(Pt){if(!this||this[rn]||!(this instanceof URL)){throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.")}if(arguments.length<1){throw new TypeError("Failed to construct 'URL': 1 argument required, but only "+arguments.length+" present.")}const en=[];for(let Wt=0;Wt{"use strict";Pt.URL=en(64375)["interface"];Pt.serializeURL=en(71787).serializeURL;Pt.serializeURLOrigin=en(71787).serializeURLOrigin;Pt.basicURLParse=en(71787).basicURLParse;Pt.setTheUsername=en(71787).setTheUsername;Pt.setThePassword=en(71787).setThePassword;Pt.serializeHost=en(71787).serializeHost;Pt.serializeInteger=en(71787).serializeInteger;Pt.parseURL=en(71787).parseURL},71787:(Wt,Pt,en)=>{"use strict";const tn=en(24876);const nn=en(32198);const an={ftp:21,file:null,gopher:70,http:80,https:443,ws:80,wss:443};const rn=Symbol("failure");function countSymbols(Wt){return tn.ucs2.decode(Wt).length}function at(Wt,Pt){const en=Wt[Pt];return isNaN(en)?undefined:String.fromCodePoint(en)}function isASCIIDigit(Wt){return Wt>=48&&Wt<=57}function isASCIIAlpha(Wt){return Wt>=65&&Wt<=90||Wt>=97&&Wt<=122}function isASCIIAlphanumeric(Wt){return isASCIIAlpha(Wt)||isASCIIDigit(Wt)}function isASCIIHex(Wt){return isASCIIDigit(Wt)||Wt>=65&&Wt<=70||Wt>=97&&Wt<=102}function isSingleDot(Wt){return Wt==="."||Wt.toLowerCase()==="%2e"}function isDoubleDot(Wt){Wt=Wt.toLowerCase();return Wt===".."||Wt==="%2e."||Wt===".%2e"||Wt==="%2e%2e"}function isWindowsDriveLetterCodePoints(Wt,Pt){return isASCIIAlpha(Wt)&&(Pt===58||Pt===124)}function isWindowsDriveLetterString(Wt){return Wt.length===2&&isASCIIAlpha(Wt.codePointAt(0))&&(Wt[1]===":"||Wt[1]==="|")}function isNormalizedWindowsDriveLetterString(Wt){return Wt.length===2&&isASCIIAlpha(Wt.codePointAt(0))&&Wt[1]===":"}function containsForbiddenHostCodePoint(Wt){return Wt.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/)!==-1}function containsForbiddenHostCodePointExcludingPercent(Wt){return Wt.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/)!==-1}function isSpecialScheme(Wt){return an[Wt]!==undefined}function isSpecial(Wt){return isSpecialScheme(Wt.scheme)}function defaultPort(Wt){return an[Wt]}function percentEncode(Wt){let Pt=Wt.toString(16).toUpperCase();if(Pt.length===1){Pt="0"+Pt}return"%"+Pt}function utf8PercentEncode(Wt){const Pt=new Buffer(Wt);let en="";for(let Wt=0;Wt126}const In=new Set([32,34,35,60,62,63,96,123,125]);function isPathPercentEncode(Wt){return isC0ControlPercentEncode(Wt)||In.has(Wt)}const sn=new Set([47,58,59,61,64,91,92,93,94,124]);function isUserinfoPercentEncode(Wt){return isPathPercentEncode(Wt)||sn.has(Wt)}function percentEncodeChar(Wt,Pt){const en=String.fromCodePoint(Wt);if(Pt(Wt)){return utf8PercentEncode(en)}return en}function parseIPv4Number(Wt){let Pt=10;if(Wt.length>=2&&Wt.charAt(0)==="0"&&Wt.charAt(1).toLowerCase()==="x"){Wt=Wt.substring(2);Pt=16}else if(Wt.length>=2&&Wt.charAt(0)==="0"){Wt=Wt.substring(1);Pt=8}if(Wt===""){return 0}const en=Pt===10?/[^0-9]/:Pt===16?/[^0-9A-Fa-f]/:/[^0-7]/;if(en.test(Wt)){return rn}return parseInt(Wt,Pt)}function parseIPv4(Wt){const Pt=Wt.split(".");if(Pt[Pt.length-1]===""){if(Pt.length>1){Pt.pop()}}if(Pt.length>4){return Wt}const en=[];for(const tn of Pt){if(tn===""){return Wt}const Pt=parseIPv4Number(tn);if(Pt===rn){return Wt}en.push(Pt)}for(let Wt=0;Wt255){return rn}}if(en[en.length-1]>=Math.pow(256,5-en.length)){return rn}let tn=en.pop();let nn=0;for(const Wt of en){tn+=Wt*Math.pow(256,3-nn);++nn}return tn}function serializeIPv4(Wt){let Pt="";let en=Wt;for(let Wt=1;Wt<=4;++Wt){Pt=String(en%256)+Pt;if(Wt!==4){Pt="."+Pt}en=Math.floor(en/256)}return Pt}function parseIPv6(Wt){const Pt=[0,0,0,0,0,0,0,0];let en=0;let nn=null;let an=0;Wt=tn.ucs2.decode(Wt);if(Wt[an]===58){if(Wt[an+1]!==58){return rn}an+=2;++en;nn=en}while(an6){return rn}let tn=0;while(Wt[an]!==undefined){let nn=null;if(tn>0){if(Wt[an]===46&&tn<4){++an}else{return rn}}if(!isASCIIDigit(Wt[an])){return rn}while(isASCIIDigit(Wt[an])){const Pt=parseInt(at(Wt,an));if(nn===null){nn=Pt}else if(nn===0){return rn}else{nn=nn*10+Pt}if(nn>255){return rn}++an}Pt[en]=Pt[en]*256+nn;++tn;if(tn===2||tn===4){++en}}if(tn!==4){return rn}break}else if(Wt[an]===58){++an;if(Wt[an]===undefined){return rn}}else if(Wt[an]!==undefined){return rn}Pt[en]=tn;++en}if(nn!==null){let Wt=en-nn;en=7;while(en!==0&&Wt>0){const tn=Pt[nn+Wt-1];Pt[nn+Wt-1]=Pt[en];Pt[en]=tn;--en;--Wt}}else if(nn===null&&en!==8){return rn}return Pt}function serializeIPv6(Wt){let Pt="";const en=findLongestZeroSequence(Wt);const tn=en.idx;let nn=false;for(let en=0;en<=7;++en){if(nn&&Wt[en]===0){continue}else if(nn){nn=false}if(tn===en){const Wt=en===0?"::":":";Pt+=Wt;nn=true;continue}Pt+=Wt[en].toString(16);if(en!==7){Pt+=":"}}return Pt}function parseHost(Wt,Pt){if(Wt[0]==="["){if(Wt[Wt.length-1]!=="]"){return rn}return parseIPv6(Wt.substring(1,Wt.length-1))}if(!Pt){return parseOpaqueHost(Wt)}const en=utf8PercentDecode(Wt);const tn=nn.toASCII(en,false,nn.PROCESSING_OPTIONS.NONTRANSITIONAL,false);if(tn===null){return rn}if(containsForbiddenHostCodePoint(tn)){return rn}const an=parseIPv4(tn);if(typeof an==="number"||an===rn){return an}return tn}function parseOpaqueHost(Wt){if(containsForbiddenHostCodePointExcludingPercent(Wt)){return rn}let Pt="";const en=tn.ucs2.decode(Wt);for(let Wt=0;Wten){Pt=tn;en=nn}tn=null;nn=0}else{if(tn===null){tn=an}++nn}}if(nn>en){Pt=tn;en=nn}return{idx:Pt,len:en}}function serializeHost(Wt){if(typeof Wt==="number"){return serializeIPv4(Wt)}if(Wt instanceof Array){return"["+serializeIPv6(Wt)+"]"}return Wt}function trimControlChars(Wt){return Wt.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g,"")}function trimTabAndNewline(Wt){return Wt.replace(/\u0009|\u000A|\u000D/g,"")}function shortenPath(Wt){const Pt=Wt.path;if(Pt.length===0){return}if(Wt.scheme==="file"&&Pt.length===1&&isNormalizedWindowsDriveLetter(Pt[0])){return}Pt.pop()}function includesCredentials(Wt){return Wt.username!==""||Wt.password!==""}function cannotHaveAUsernamePasswordPort(Wt){return Wt.host===null||Wt.host===""||Wt.cannotBeABaseURL||Wt.scheme==="file"}function isNormalizedWindowsDriveLetter(Wt){return/^[A-Za-z]:$/.test(Wt)}function URLStateMachine(Wt,Pt,en,nn,an){this.pointer=0;this.input=Wt;this.base=Pt||null;this.encodingOverride=en||"utf-8";this.stateOverride=an;this.url=nn;this.failure=false;this.parseError=false;if(!this.url){this.url={scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null,cannotBeABaseURL:false};const Wt=trimControlChars(this.input);if(Wt!==this.input){this.parseError=true}this.input=Wt}const In=trimTabAndNewline(this.input);if(In!==this.input){this.parseError=true}this.input=In;this.state=an||"scheme start";this.buffer="";this.atFlag=false;this.arrFlag=false;this.passwordTokenSeenFlag=false;this.input=tn.ucs2.decode(this.input);for(;this.pointer<=this.input.length;++this.pointer){const Wt=this.input[this.pointer];const Pt=isNaN(Wt)?undefined:String.fromCodePoint(Wt);const en=this["parse "+this.state](Wt,Pt);if(!en){break}else if(en===rn){this.failure=true;break}}}URLStateMachine.prototype["parse scheme start"]=function parseSchemeStart(Wt,Pt){if(isASCIIAlpha(Wt)){this.buffer+=Pt.toLowerCase();this.state="scheme"}else if(!this.stateOverride){this.state="no scheme";--this.pointer}else{this.parseError=true;return rn}return true};URLStateMachine.prototype["parse scheme"]=function parseScheme(Wt,Pt){if(isASCIIAlphanumeric(Wt)||Wt===43||Wt===45||Wt===46){this.buffer+=Pt.toLowerCase()}else if(Wt===58){if(this.stateOverride){if(isSpecial(this.url)&&!isSpecialScheme(this.buffer)){return false}if(!isSpecial(this.url)&&isSpecialScheme(this.buffer)){return false}if((includesCredentials(this.url)||this.url.port!==null)&&this.buffer==="file"){return false}if(this.url.scheme==="file"&&(this.url.host===""||this.url.host===null)){return false}}this.url.scheme=this.buffer;this.buffer="";if(this.stateOverride){return false}if(this.url.scheme==="file"){if(this.input[this.pointer+1]!==47||this.input[this.pointer+2]!==47){this.parseError=true}this.state="file"}else if(isSpecial(this.url)&&this.base!==null&&this.base.scheme===this.url.scheme){this.state="special relative or authority"}else if(isSpecial(this.url)){this.state="special authority slashes"}else if(this.input[this.pointer+1]===47){this.state="path or authority";++this.pointer}else{this.url.cannotBeABaseURL=true;this.url.path.push("");this.state="cannot-be-a-base-URL path"}}else if(!this.stateOverride){this.buffer="";this.state="no scheme";this.pointer=-1}else{this.parseError=true;return rn}return true};URLStateMachine.prototype["parse no scheme"]=function parseNoScheme(Wt){if(this.base===null||this.base.cannotBeABaseURL&&Wt!==35){return rn}else if(this.base.cannotBeABaseURL&&Wt===35){this.url.scheme=this.base.scheme;this.url.path=this.base.path.slice();this.url.query=this.base.query;this.url.fragment="";this.url.cannotBeABaseURL=true;this.state="fragment"}else if(this.base.scheme==="file"){this.state="file";--this.pointer}else{this.state="relative";--this.pointer}return true};URLStateMachine.prototype["parse special relative or authority"]=function parseSpecialRelativeOrAuthority(Wt){if(Wt===47&&this.input[this.pointer+1]===47){this.state="special authority ignore slashes";++this.pointer}else{this.parseError=true;this.state="relative";--this.pointer}return true};URLStateMachine.prototype["parse path or authority"]=function parsePathOrAuthority(Wt){if(Wt===47){this.state="authority"}else{this.state="path";--this.pointer}return true};URLStateMachine.prototype["parse relative"]=function parseRelative(Wt){this.url.scheme=this.base.scheme;if(isNaN(Wt)){this.url.username=this.base.username;this.url.password=this.base.password;this.url.host=this.base.host;this.url.port=this.base.port;this.url.path=this.base.path.slice();this.url.query=this.base.query}else if(Wt===47){this.state="relative slash"}else if(Wt===63){this.url.username=this.base.username;this.url.password=this.base.password;this.url.host=this.base.host;this.url.port=this.base.port;this.url.path=this.base.path.slice();this.url.query="";this.state="query"}else if(Wt===35){this.url.username=this.base.username;this.url.password=this.base.password;this.url.host=this.base.host;this.url.port=this.base.port;this.url.path=this.base.path.slice();this.url.query=this.base.query;this.url.fragment="";this.state="fragment"}else if(isSpecial(this.url)&&Wt===92){this.parseError=true;this.state="relative slash"}else{this.url.username=this.base.username;this.url.password=this.base.password;this.url.host=this.base.host;this.url.port=this.base.port;this.url.path=this.base.path.slice(0,this.base.path.length-1);this.state="path";--this.pointer}return true};URLStateMachine.prototype["parse relative slash"]=function parseRelativeSlash(Wt){if(isSpecial(this.url)&&(Wt===47||Wt===92)){if(Wt===92){this.parseError=true}this.state="special authority ignore slashes"}else if(Wt===47){this.state="authority"}else{this.url.username=this.base.username;this.url.password=this.base.password;this.url.host=this.base.host;this.url.port=this.base.port;this.state="path";--this.pointer}return true};URLStateMachine.prototype["parse special authority slashes"]=function parseSpecialAuthoritySlashes(Wt){if(Wt===47&&this.input[this.pointer+1]===47){this.state="special authority ignore slashes";++this.pointer}else{this.parseError=true;this.state="special authority ignore slashes";--this.pointer}return true};URLStateMachine.prototype["parse special authority ignore slashes"]=function parseSpecialAuthorityIgnoreSlashes(Wt){if(Wt!==47&&Wt!==92){this.state="authority";--this.pointer}else{this.parseError=true}return true};URLStateMachine.prototype["parse authority"]=function parseAuthority(Wt,Pt){if(Wt===64){this.parseError=true;if(this.atFlag){this.buffer="%40"+this.buffer}this.atFlag=true;const Wt=countSymbols(this.buffer);for(let Pt=0;PtMath.pow(2,16)-1){this.parseError=true;return rn}this.url.port=Wt===defaultPort(this.url.scheme)?null:Wt;this.buffer=""}if(this.stateOverride){return false}this.state="path start";--this.pointer}else{this.parseError=true;return rn}return true};const on=new Set([47,92,63,35]);URLStateMachine.prototype["parse file"]=function parseFile(Wt){this.url.scheme="file";if(Wt===47||Wt===92){if(Wt===92){this.parseError=true}this.state="file slash"}else if(this.base!==null&&this.base.scheme==="file"){if(isNaN(Wt)){this.url.host=this.base.host;this.url.path=this.base.path.slice();this.url.query=this.base.query}else if(Wt===63){this.url.host=this.base.host;this.url.path=this.base.path.slice();this.url.query="";this.state="query"}else if(Wt===35){this.url.host=this.base.host;this.url.path=this.base.path.slice();this.url.query=this.base.query;this.url.fragment="";this.state="fragment"}else{if(this.input.length-this.pointer-1===0||!isWindowsDriveLetterCodePoints(Wt,this.input[this.pointer+1])||this.input.length-this.pointer-1>=2&&!on.has(this.input[this.pointer+2])){this.url.host=this.base.host;this.url.path=this.base.path.slice();shortenPath(this.url)}else{this.parseError=true}this.state="path";--this.pointer}}else{this.state="path";--this.pointer}return true};URLStateMachine.prototype["parse file slash"]=function parseFileSlash(Wt){if(Wt===47||Wt===92){if(Wt===92){this.parseError=true}this.state="file host"}else{if(this.base!==null&&this.base.scheme==="file"){if(isNormalizedWindowsDriveLetterString(this.base.path[0])){this.url.path.push(this.base.path[0])}else{this.url.host=this.base.host}}this.state="path";--this.pointer}return true};URLStateMachine.prototype["parse file host"]=function parseFileHost(Wt,Pt){if(isNaN(Wt)||Wt===47||Wt===92||Wt===63||Wt===35){--this.pointer;if(!this.stateOverride&&isWindowsDriveLetterString(this.buffer)){this.parseError=true;this.state="path"}else if(this.buffer===""){this.url.host="";if(this.stateOverride){return false}this.state="path start"}else{let Wt=parseHost(this.buffer,isSpecial(this.url));if(Wt===rn){return rn}if(Wt==="localhost"){Wt=""}this.url.host=Wt;if(this.stateOverride){return false}this.buffer="";this.state="path start"}}else{this.buffer+=Pt}return true};URLStateMachine.prototype["parse path start"]=function parsePathStart(Wt){if(isSpecial(this.url)){if(Wt===92){this.parseError=true}this.state="path";if(Wt!==47&&Wt!==92){--this.pointer}}else if(!this.stateOverride&&Wt===63){this.url.query="";this.state="query"}else if(!this.stateOverride&&Wt===35){this.url.fragment="";this.state="fragment"}else if(Wt!==undefined){this.state="path";if(Wt!==47){--this.pointer}}return true};URLStateMachine.prototype["parse path"]=function parsePath(Wt){if(isNaN(Wt)||Wt===47||isSpecial(this.url)&&Wt===92||!this.stateOverride&&(Wt===63||Wt===35)){if(isSpecial(this.url)&&Wt===92){this.parseError=true}if(isDoubleDot(this.buffer)){shortenPath(this.url);if(Wt!==47&&!(isSpecial(this.url)&&Wt===92)){this.url.path.push("")}}else if(isSingleDot(this.buffer)&&Wt!==47&&!(isSpecial(this.url)&&Wt===92)){this.url.path.push("")}else if(!isSingleDot(this.buffer)){if(this.url.scheme==="file"&&this.url.path.length===0&&isWindowsDriveLetterString(this.buffer)){if(this.url.host!==""&&this.url.host!==null){this.parseError=true;this.url.host=""}this.buffer=this.buffer[0]+":"}this.url.path.push(this.buffer)}this.buffer="";if(this.url.scheme==="file"&&(Wt===undefined||Wt===63||Wt===35)){while(this.url.path.length>1&&this.url.path[0]===""){this.parseError=true;this.url.path.shift()}}if(Wt===63){this.url.query="";this.state="query"}if(Wt===35){this.url.fragment="";this.state="fragment"}}else{if(Wt===37&&(!isASCIIHex(this.input[this.pointer+1])||!isASCIIHex(this.input[this.pointer+2]))){this.parseError=true}this.buffer+=percentEncodeChar(Wt,isPathPercentEncode)}return true};URLStateMachine.prototype["parse cannot-be-a-base-URL path"]=function parseCannotBeABaseURLPath(Wt){if(Wt===63){this.url.query="";this.state="query"}else if(Wt===35){this.url.fragment="";this.state="fragment"}else{if(!isNaN(Wt)&&Wt!==37){this.parseError=true}if(Wt===37&&(!isASCIIHex(this.input[this.pointer+1])||!isASCIIHex(this.input[this.pointer+2]))){this.parseError=true}if(!isNaN(Wt)){this.url.path[0]=this.url.path[0]+percentEncodeChar(Wt,isC0ControlPercentEncode)}}return true};URLStateMachine.prototype["parse query"]=function parseQuery(Wt,Pt){if(isNaN(Wt)||!this.stateOverride&&Wt===35){if(!isSpecial(this.url)||this.url.scheme==="ws"||this.url.scheme==="wss"){this.encodingOverride="utf-8"}const Pt=new Buffer(this.buffer);for(let Wt=0;Wt126||Pt[Wt]===34||Pt[Wt]===35||Pt[Wt]===60||Pt[Wt]===62){this.url.query+=percentEncode(Pt[Wt])}else{this.url.query+=String.fromCodePoint(Pt[Wt])}}this.buffer="";if(Wt===35){this.url.fragment="";this.state="fragment"}}else{if(Wt===37&&(!isASCIIHex(this.input[this.pointer+1])||!isASCIIHex(this.input[this.pointer+2]))){this.parseError=true}this.buffer+=Pt}return true};URLStateMachine.prototype["parse fragment"]=function parseFragment(Wt){if(isNaN(Wt)){}else if(Wt===0){this.parseError=true}else{if(Wt===37&&(!isASCIIHex(this.input[this.pointer+1])||!isASCIIHex(this.input[this.pointer+2]))){this.parseError=true}this.url.fragment+=percentEncodeChar(Wt,isC0ControlPercentEncode)}return true};function serializeURL(Wt,Pt){let en=Wt.scheme+":";if(Wt.host!==null){en+="//";if(Wt.username!==""||Wt.password!==""){en+=Wt.username;if(Wt.password!==""){en+=":"+Wt.password}en+="@"}en+=serializeHost(Wt.host);if(Wt.port!==null){en+=":"+Wt.port}}else if(Wt.host===null&&Wt.scheme==="file"){en+="//"}if(Wt.cannotBeABaseURL){en+=Wt.path[0]}else{for(const Pt of Wt.path){en+="/"+Pt}}if(Wt.query!==null){en+="?"+Wt.query}if(!Pt&&Wt.fragment!==null){en+="#"+Wt.fragment}return en}function serializeOrigin(Wt){let Pt=Wt.scheme+"://";Pt+=serializeHost(Wt.host);if(Wt.port!==null){Pt+=":"+Wt.port}return Pt}Wt.exports.serializeURL=serializeURL;Wt.exports.serializeURLOrigin=function(Pt){switch(Pt.scheme){case"blob":try{return Wt.exports.serializeURLOrigin(Wt.exports.parseURL(Pt.path[0]))}catch(Wt){return"null"}case"ftp":case"gopher":case"http":case"https":case"ws":case"wss":return serializeOrigin({scheme:Pt.scheme,host:Pt.host,port:Pt.port});case"file":return"file://";default:return"null"}};Wt.exports.basicURLParse=function(Wt,Pt){if(Pt===undefined){Pt={}}const en=new URLStateMachine(Wt,Pt.baseURL,Pt.encodingOverride,Pt.url,Pt.stateOverride);if(en.failure){return"failure"}return en.url};Wt.exports.setTheUsername=function(Wt,Pt){Wt.username="";const en=tn.ucs2.decode(Pt);for(let Pt=0;Pt{"use strict";Wt.exports.mixin=function mixin(Wt,Pt){const en=Object.getOwnPropertyNames(Pt);for(let tn=0;tn{var Pt,en,tn;let nn=null;let rn=null;let In=null;let sn=Wt.status;let on=Wt.statusText;if(Wt.ok){if(this.method!=="HEAD"){const Pt=await Wt.text();if(Pt===""){}else if(this.headers["Accept"]==="text/csv"){rn=Pt}else if(this.headers["Accept"]&&this.headers["Accept"].includes("application/vnd.pgrst.plan+text")){rn=Pt}else{rn=JSON.parse(Pt)}}const tn=(Pt=this.headers["Prefer"])===null||Pt===void 0?void 0:Pt.match(/count=(exact|planned|estimated)/);const an=(en=Wt.headers.get("content-range"))===null||en===void 0?void 0:en.split("/");if(tn&&an&&an.length>1){In=parseInt(an[1])}if(this.isMaybeSingle&&this.method==="GET"&&Array.isArray(rn)){if(rn.length>1){nn={code:"PGRST116",details:`Results contain ${rn.length} rows, application/vnd.pgrst.object+json requires 1 row`,hint:null,message:"JSON object requested, multiple (or no) rows returned"};rn=null;In=null;sn=406;on="Not Acceptable"}else if(rn.length===1){rn=rn[0]}else{rn=null}}}else{const Pt=await Wt.text();try{nn=JSON.parse(Pt);if(Array.isArray(nn)&&Wt.status===404){rn=[];nn=null;sn=200;on="OK"}}catch(en){if(Wt.status===404&&Pt===""){sn=204;on="No Content"}else{nn={message:Pt}}}if(nn&&this.isMaybeSingle&&((tn=nn===null||nn===void 0?void 0:nn.details)===null||tn===void 0?void 0:tn.includes("0 rows"))){nn=null;sn=200;on="OK"}if(nn&&this.shouldThrowOnError){throw new an.default(nn)}}const cn={error:nn,data:rn,count:In,status:sn,statusText:on};return cn}));if(!this.shouldThrowOnError){tn=tn.catch((Wt=>{var Pt,en,tn;return{error:{message:`${(Pt=Wt===null||Wt===void 0?void 0:Wt.name)!==null&&Pt!==void 0?Pt:"FetchError"}: ${Wt===null||Wt===void 0?void 0:Wt.message}`,details:`${(en=Wt===null||Wt===void 0?void 0:Wt.stack)!==null&&en!==void 0?en:""}`,hint:"",code:`${(tn=Wt===null||Wt===void 0?void 0:Wt.code)!==null&&tn!==void 0?tn:""}`},data:null,count:null,status:0,statusText:""}}))}return tn.then(Wt,Pt)}}Pt["default"]=PostgrestBuilder},16193:function(Wt,Pt,en){"use strict";var tn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});const nn=tn(en(14253));const an=tn(en(6377));const rn=en(88258);class PostgrestClient{constructor(Wt,{headers:Pt={},schema:en,fetch:tn}={}){this.url=Wt;this.headers=Object.assign(Object.assign({},rn.DEFAULT_HEADERS),Pt);this.schemaName=en;this.fetch=tn}from(Wt){const Pt=new URL(`${this.url}/${Wt}`);return new nn.default(Pt,{headers:Object.assign({},this.headers),schema:this.schemaName,fetch:this.fetch})}schema(Wt){return new PostgrestClient(this.url,{headers:this.headers,schema:Wt,fetch:this.fetch})}rpc(Wt,Pt={},{head:en=false,get:tn=false,count:nn}={}){let rn;const In=new URL(`${this.url}/rpc/${Wt}`);let sn;if(en){rn="HEAD";Object.entries(Pt).forEach((([Wt,Pt])=>{In.searchParams.append(Wt,`${Pt}`)}))}else if(tn){rn="GET";Object.entries(Pt).forEach((([Wt,Pt])=>{In.searchParams.append(Wt,`${Pt}`)}))}else{rn="POST";sn=Pt}const on=Object.assign({},this.headers);if(nn){on["Prefer"]=`count=${nn}`}return new an.default({method:rn,url:In,headers:on,schema:this.schemaName,body:sn,fetch:this.fetch,allowEmpty:false})}}Pt["default"]=PostgrestClient},58154:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});class PostgrestError extends Error{constructor(Wt){super(Wt.message);this.name="PostgrestError";this.details=Wt.details;this.hint=Wt.hint;this.code=Wt.code}}Pt["default"]=PostgrestError},6377:function(Wt,Pt,en){"use strict";var tn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});const nn=tn(en(77725));class PostgrestFilterBuilder extends nn.default{eq(Wt,Pt){this.url.searchParams.append(Wt,`eq.${Pt}`);return this}neq(Wt,Pt){this.url.searchParams.append(Wt,`neq.${Pt}`);return this}gt(Wt,Pt){this.url.searchParams.append(Wt,`gt.${Pt}`);return this}gte(Wt,Pt){this.url.searchParams.append(Wt,`gte.${Pt}`);return this}lt(Wt,Pt){this.url.searchParams.append(Wt,`lt.${Pt}`);return this}lte(Wt,Pt){this.url.searchParams.append(Wt,`lte.${Pt}`);return this}like(Wt,Pt){this.url.searchParams.append(Wt,`like.${Pt}`);return this}likeAllOf(Wt,Pt){this.url.searchParams.append(Wt,`like(all).{${Pt.join(",")}}`);return this}likeAnyOf(Wt,Pt){this.url.searchParams.append(Wt,`like(any).{${Pt.join(",")}}`);return this}ilike(Wt,Pt){this.url.searchParams.append(Wt,`ilike.${Pt}`);return this}ilikeAllOf(Wt,Pt){this.url.searchParams.append(Wt,`ilike(all).{${Pt.join(",")}}`);return this}ilikeAnyOf(Wt,Pt){this.url.searchParams.append(Wt,`ilike(any).{${Pt.join(",")}}`);return this}is(Wt,Pt){this.url.searchParams.append(Wt,`is.${Pt}`);return this}in(Wt,Pt){const en=Array.from(new Set(Pt)).map((Wt=>{if(typeof Wt==="string"&&new RegExp("[,()]").test(Wt))return`"${Wt}"`;else return`${Wt}`})).join(",");this.url.searchParams.append(Wt,`in.(${en})`);return this}contains(Wt,Pt){if(typeof Pt==="string"){this.url.searchParams.append(Wt,`cs.${Pt}`)}else if(Array.isArray(Pt)){this.url.searchParams.append(Wt,`cs.{${Pt.join(",")}}`)}else{this.url.searchParams.append(Wt,`cs.${JSON.stringify(Pt)}`)}return this}containedBy(Wt,Pt){if(typeof Pt==="string"){this.url.searchParams.append(Wt,`cd.${Pt}`)}else if(Array.isArray(Pt)){this.url.searchParams.append(Wt,`cd.{${Pt.join(",")}}`)}else{this.url.searchParams.append(Wt,`cd.${JSON.stringify(Pt)}`)}return this}rangeGt(Wt,Pt){this.url.searchParams.append(Wt,`sr.${Pt}`);return this}rangeGte(Wt,Pt){this.url.searchParams.append(Wt,`nxl.${Pt}`);return this}rangeLt(Wt,Pt){this.url.searchParams.append(Wt,`sl.${Pt}`);return this}rangeLte(Wt,Pt){this.url.searchParams.append(Wt,`nxr.${Pt}`);return this}rangeAdjacent(Wt,Pt){this.url.searchParams.append(Wt,`adj.${Pt}`);return this}overlaps(Wt,Pt){if(typeof Pt==="string"){this.url.searchParams.append(Wt,`ov.${Pt}`)}else{this.url.searchParams.append(Wt,`ov.{${Pt.join(",")}}`)}return this}textSearch(Wt,Pt,{config:en,type:tn}={}){let nn="";if(tn==="plain"){nn="pl"}else if(tn==="phrase"){nn="ph"}else if(tn==="websearch"){nn="w"}const an=en===undefined?"":`(${en})`;this.url.searchParams.append(Wt,`${nn}fts${an}.${Pt}`);return this}match(Wt){Object.entries(Wt).forEach((([Wt,Pt])=>{this.url.searchParams.append(Wt,`eq.${Pt}`)}));return this}not(Wt,Pt,en){this.url.searchParams.append(Wt,`not.${Pt}.${en}`);return this}or(Wt,{foreignTable:Pt,referencedTable:en=Pt}={}){const tn=en?`${en}.or`:"or";this.url.searchParams.append(tn,`(${Wt})`);return this}filter(Wt,Pt,en){this.url.searchParams.append(Wt,`${Pt}.${en}`);return this}}Pt["default"]=PostgrestFilterBuilder},14253:function(Wt,Pt,en){"use strict";var tn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});const nn=tn(en(6377));class PostgrestQueryBuilder{constructor(Wt,{headers:Pt={},schema:en,fetch:tn}){this.url=Wt;this.headers=Pt;this.schema=en;this.fetch=tn}select(Wt,{head:Pt=false,count:en}={}){const tn=Pt?"HEAD":"GET";let an=false;const rn=(Wt!==null&&Wt!==void 0?Wt:"*").split("").map((Wt=>{if(/\s/.test(Wt)&&!an){return""}if(Wt==='"'){an=!an}return Wt})).join("");this.url.searchParams.set("select",rn);if(en){this.headers["Prefer"]=`count=${en}`}return new nn.default({method:tn,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch,allowEmpty:false})}insert(Wt,{count:Pt,defaultToNull:en=true}={}){const tn="POST";const an=[];if(this.headers["Prefer"]){an.push(this.headers["Prefer"])}if(Pt){an.push(`count=${Pt}`)}if(!en){an.push("missing=default")}this.headers["Prefer"]=an.join(",");if(Array.isArray(Wt)){const Pt=Wt.reduce(((Wt,Pt)=>Wt.concat(Object.keys(Pt))),[]);if(Pt.length>0){const Wt=[...new Set(Pt)].map((Wt=>`"${Wt}"`));this.url.searchParams.set("columns",Wt.join(","))}}return new nn.default({method:tn,url:this.url,headers:this.headers,schema:this.schema,body:Wt,fetch:this.fetch,allowEmpty:false})}upsert(Wt,{onConflict:Pt,ignoreDuplicates:en=false,count:tn,defaultToNull:an=true}={}){const rn="POST";const In=[`resolution=${en?"ignore":"merge"}-duplicates`];if(Pt!==undefined)this.url.searchParams.set("on_conflict",Pt);if(this.headers["Prefer"]){In.push(this.headers["Prefer"])}if(tn){In.push(`count=${tn}`)}if(!an){In.push("missing=default")}this.headers["Prefer"]=In.join(",");if(Array.isArray(Wt)){const Pt=Wt.reduce(((Wt,Pt)=>Wt.concat(Object.keys(Pt))),[]);if(Pt.length>0){const Wt=[...new Set(Pt)].map((Wt=>`"${Wt}"`));this.url.searchParams.set("columns",Wt.join(","))}}return new nn.default({method:rn,url:this.url,headers:this.headers,schema:this.schema,body:Wt,fetch:this.fetch,allowEmpty:false})}update(Wt,{count:Pt}={}){const en="PATCH";const tn=[];if(this.headers["Prefer"]){tn.push(this.headers["Prefer"])}if(Pt){tn.push(`count=${Pt}`)}this.headers["Prefer"]=tn.join(",");return new nn.default({method:en,url:this.url,headers:this.headers,schema:this.schema,body:Wt,fetch:this.fetch,allowEmpty:false})}delete({count:Wt}={}){const Pt="DELETE";const en=[];if(Wt){en.push(`count=${Wt}`)}if(this.headers["Prefer"]){en.unshift(this.headers["Prefer"])}this.headers["Prefer"]=en.join(",");return new nn.default({method:Pt,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch,allowEmpty:false})}}Pt["default"]=PostgrestQueryBuilder},77725:function(Wt,Pt,en){"use strict";var tn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});const nn=tn(en(41455));class PostgrestTransformBuilder extends nn.default{select(Wt){let Pt=false;const en=(Wt!==null&&Wt!==void 0?Wt:"*").split("").map((Wt=>{if(/\s/.test(Wt)&&!Pt){return""}if(Wt==='"'){Pt=!Pt}return Wt})).join("");this.url.searchParams.set("select",en);if(this.headers["Prefer"]){this.headers["Prefer"]+=","}this.headers["Prefer"]+="return=representation";return this}order(Wt,{ascending:Pt=true,nullsFirst:en,foreignTable:tn,referencedTable:nn=tn}={}){const an=nn?`${nn}.order`:"order";const rn=this.url.searchParams.get(an);this.url.searchParams.set(an,`${rn?`${rn},`:""}${Wt}.${Pt?"asc":"desc"}${en===undefined?"":en?".nullsfirst":".nullslast"}`);return this}limit(Wt,{foreignTable:Pt,referencedTable:en=Pt}={}){const tn=typeof en==="undefined"?"limit":`${en}.limit`;this.url.searchParams.set(tn,`${Wt}`);return this}range(Wt,Pt,{foreignTable:en,referencedTable:tn=en}={}){const nn=typeof tn==="undefined"?"offset":`${tn}.offset`;const an=typeof tn==="undefined"?"limit":`${tn}.limit`;this.url.searchParams.set(nn,`${Wt}`);this.url.searchParams.set(an,`${Pt-Wt+1}`);return this}abortSignal(Wt){this.signal=Wt;return this}single(){this.headers["Accept"]="application/vnd.pgrst.object+json";return this}maybeSingle(){if(this.method==="GET"){this.headers["Accept"]="application/json"}else{this.headers["Accept"]="application/vnd.pgrst.object+json"}this.isMaybeSingle=true;return this}csv(){this.headers["Accept"]="text/csv";return this}geojson(){this.headers["Accept"]="application/geo+json";return this}explain({analyze:Wt=false,verbose:Pt=false,settings:en=false,buffers:tn=false,wal:nn=false,format:an="text"}={}){var rn;const In=[Wt?"analyze":null,Pt?"verbose":null,en?"settings":null,tn?"buffers":null,nn?"wal":null].filter(Boolean).join("|");const sn=(rn=this.headers["Accept"])!==null&&rn!==void 0?rn:"application/json";this.headers["Accept"]=`application/vnd.pgrst.plan+${an}; for="${sn}"; options=${In};`;if(an==="json")return this;else return this}rollback(){var Wt;if(((Wt=this.headers["Prefer"])!==null&&Wt!==void 0?Wt:"").trim().length>0){this.headers["Prefer"]+=",tx=rollback"}else{this.headers["Prefer"]="tx=rollback"}return this}returns(){return this}}Pt["default"]=PostgrestTransformBuilder},88258:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.DEFAULT_HEADERS=void 0;const tn=en(42799);Pt.DEFAULT_HEADERS={"X-Client-Info":`postgrest-js/${tn.version}`}},60927:function(Wt,Pt,en){"use strict";var tn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt.PostgrestBuilder=Pt.PostgrestTransformBuilder=Pt.PostgrestFilterBuilder=Pt.PostgrestQueryBuilder=Pt.PostgrestClient=void 0;var nn=en(16193);Object.defineProperty(Pt,"PostgrestClient",{enumerable:true,get:function(){return tn(nn).default}});var an=en(14253);Object.defineProperty(Pt,"PostgrestQueryBuilder",{enumerable:true,get:function(){return tn(an).default}});var rn=en(6377);Object.defineProperty(Pt,"PostgrestFilterBuilder",{enumerable:true,get:function(){return tn(rn).default}});var In=en(77725);Object.defineProperty(Pt,"PostgrestTransformBuilder",{enumerable:true,get:function(){return tn(In).default}});var sn=en(41455);Object.defineProperty(Pt,"PostgrestBuilder",{enumerable:true,get:function(){return tn(sn).default}})},42799:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="1.15.0"},38093:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt.REALTIME_CHANNEL_STATES=Pt.REALTIME_SUBSCRIBE_STATES=Pt.REALTIME_LISTEN_TYPES=Pt.REALTIME_POSTGRES_CHANGES_LISTEN_EVENT=void 0;const In=en(29680);const sn=rn(en(49333));const on=rn(en(99920));const cn=rn(en(98493));const dn=an(en(93429));var un;(function(Wt){Wt["ALL"]="*";Wt["INSERT"]="INSERT";Wt["UPDATE"]="UPDATE";Wt["DELETE"]="DELETE"})(un=Pt.REALTIME_POSTGRES_CHANGES_LISTEN_EVENT||(Pt.REALTIME_POSTGRES_CHANGES_LISTEN_EVENT={}));var pn;(function(Wt){Wt["BROADCAST"]="broadcast";Wt["PRESENCE"]="presence";Wt["POSTGRES_CHANGES"]="postgres_changes"})(pn=Pt.REALTIME_LISTEN_TYPES||(Pt.REALTIME_LISTEN_TYPES={}));var mn;(function(Wt){Wt["SUBSCRIBED"]="SUBSCRIBED";Wt["TIMED_OUT"]="TIMED_OUT";Wt["CLOSED"]="CLOSED";Wt["CHANNEL_ERROR"]="CHANNEL_ERROR"})(mn=Pt.REALTIME_SUBSCRIBE_STATES||(Pt.REALTIME_SUBSCRIBE_STATES={}));Pt.REALTIME_CHANNEL_STATES=In.CHANNEL_STATES;class RealtimeChannel{constructor(Wt,Pt={config:{}},en){this.topic=Wt;this.params=Pt;this.socket=en;this.bindings={};this.state=In.CHANNEL_STATES.closed;this.joinedOnce=false;this.pushBuffer=[];this.subTopic=Wt.replace(/^realtime:/i,"");this.params.config=Object.assign({broadcast:{ack:false,self:false},presence:{key:""}},Pt.config);this.timeout=this.socket.timeout;this.joinPush=new sn.default(this,In.CHANNEL_EVENTS.join,this.params,this.timeout);this.rejoinTimer=new on.default((()=>this._rejoinUntilConnected()),this.socket.reconnectAfterMs);this.joinPush.receive("ok",(()=>{this.state=In.CHANNEL_STATES.joined;this.rejoinTimer.reset();this.pushBuffer.forEach((Wt=>Wt.send()));this.pushBuffer=[]}));this._onClose((()=>{this.rejoinTimer.reset();this.socket.log("channel",`close ${this.topic} ${this._joinRef()}`);this.state=In.CHANNEL_STATES.closed;this.socket._remove(this)}));this._onError((Wt=>{if(this._isLeaving()||this._isClosed()){return}this.socket.log("channel",`error ${this.topic}`,Wt);this.state=In.CHANNEL_STATES.errored;this.rejoinTimer.scheduleTimeout()}));this.joinPush.receive("timeout",(()=>{if(!this._isJoining()){return}this.socket.log("channel",`timeout ${this.topic}`,this.joinPush.timeout);this.state=In.CHANNEL_STATES.errored;this.rejoinTimer.scheduleTimeout()}));this._on(In.CHANNEL_EVENTS.reply,{},((Wt,Pt)=>{this._trigger(this._replyEventName(Pt),Wt)}));this.presence=new cn.default(this);this.broadcastEndpointURL=this._broadcastEndpointURL()}subscribe(Wt,Pt=this.timeout){var en,tn;if(!this.socket.isConnected()){this.socket.connect()}if(this.joinedOnce){throw`tried to subscribe multiple times. 'subscribe' can only be called a single time per channel instance`}else{const{config:{broadcast:nn,presence:an}}=this.params;this._onError((Pt=>Wt&&Wt("CHANNEL_ERROR",Pt)));this._onClose((()=>Wt&&Wt("CLOSED")));const rn={};const In={broadcast:nn,presence:an,postgres_changes:(tn=(en=this.bindings.postgres_changes)===null||en===void 0?void 0:en.map((Wt=>Wt.filter)))!==null&&tn!==void 0?tn:[]};if(this.socket.accessToken){rn.access_token=this.socket.accessToken}this.updateJoinPayload(Object.assign({config:In},rn));this.joinedOnce=true;this._rejoin(Pt);this.joinPush.receive("ok",(({postgres_changes:Pt})=>{var en;this.socket.accessToken&&this.socket.setAuth(this.socket.accessToken);if(Pt===undefined){Wt&&Wt("SUBSCRIBED");return}else{const tn=this.bindings.postgres_changes;const nn=(en=tn===null||tn===void 0?void 0:tn.length)!==null&&en!==void 0?en:0;const an=[];for(let en=0;en{Wt&&Wt("CHANNEL_ERROR",new Error(JSON.stringify(Object.values(Pt).join(", ")||"error")));return})).receive("timeout",(()=>{Wt&&Wt("TIMED_OUT");return}))}return this}presenceState(){return this.presence.state}async track(Wt,Pt={}){return await this.send({type:"presence",event:"track",payload:Wt},Pt.timeout||this.timeout)}async untrack(Wt={}){return await this.send({type:"presence",event:"untrack"},Wt)}on(Wt,Pt,en){return this._on(Wt,Pt,en)}async send(Wt,Pt={}){var en,tn;if(!this._canPush()&&Wt.type==="broadcast"){const{event:nn,payload:an}=Wt;const rn={method:"POST",headers:{apikey:(en=this.socket.apiKey)!==null&&en!==void 0?en:"","Content-Type":"application/json"},body:JSON.stringify({messages:[{topic:this.subTopic,event:nn,payload:an}]})};try{const Wt=await this._fetchWithTimeout(this.broadcastEndpointURL,rn,(tn=Pt.timeout)!==null&&tn!==void 0?tn:this.timeout);if(Wt.ok){return"ok"}else{return"error"}}catch(Wt){if(Wt.name==="AbortError"){return"timed out"}else{return"error"}}}else{return new Promise((en=>{var tn,nn,an;const rn=this._push(Wt.type,Wt,Pt.timeout||this.timeout);if(Wt.type==="broadcast"&&!((an=(nn=(tn=this.params)===null||tn===void 0?void 0:tn.config)===null||nn===void 0?void 0:nn.broadcast)===null||an===void 0?void 0:an.ack)){en("ok")}rn.receive("ok",(()=>en("ok")));rn.receive("timeout",(()=>en("timed out")))}))}}updateJoinPayload(Wt){this.joinPush.updatePayload(Wt)}unsubscribe(Wt=this.timeout){this.state=In.CHANNEL_STATES.leaving;const onClose=()=>{this.socket.log("channel",`leave ${this.topic}`);this._trigger(In.CHANNEL_EVENTS.close,"leave",this._joinRef())};this.rejoinTimer.reset();this.joinPush.destroy();return new Promise((Pt=>{const en=new sn.default(this,In.CHANNEL_EVENTS.leave,{},Wt);en.receive("ok",(()=>{onClose();Pt("ok")})).receive("timeout",(()=>{onClose();Pt("timed out")})).receive("error",(()=>{Pt("error")}));en.send();if(!this._canPush()){en.trigger("ok",{})}}))}_broadcastEndpointURL(){let Wt=this.socket.endPoint;Wt=Wt.replace(/^ws/i,"http");Wt=Wt.replace(/(\/socket\/websocket|\/socket|\/websocket)\/?$/i,"");return Wt.replace(/\/+$/,"")+"/api/broadcast"}async _fetchWithTimeout(Wt,Pt,en){const tn=new AbortController;const nn=setTimeout((()=>tn.abort()),en);const an=await this.socket.fetch(Wt,Object.assign(Object.assign({},Pt),{signal:tn.signal}));clearTimeout(nn);return an}_push(Wt,Pt,en=this.timeout){if(!this.joinedOnce){throw`tried to push '${Wt}' to '${this.topic}' before joining. Use channel.subscribe() before pushing events`}let tn=new sn.default(this,Wt,Pt,en);if(this._canPush()){tn.send()}else{tn.startTimeout();this.pushBuffer.push(tn)}return tn}_onMessage(Wt,Pt,en){return Pt}_isMember(Wt){return this.topic===Wt}_joinRef(){return this.joinPush.ref}_trigger(Wt,Pt,en){var tn,nn;const an=Wt.toLocaleLowerCase();const{close:rn,error:sn,leave:on,join:cn}=In.CHANNEL_EVENTS;const dn=[rn,sn,on,cn];if(en&&dn.indexOf(an)>=0&&en!==this._joinRef()){return}let un=this._onMessage(an,Pt,en);if(Pt&&!un){throw"channel onMessage callbacks must return the payload, modified or unmodified"}if(["insert","update","delete"].includes(an)){(tn=this.bindings.postgres_changes)===null||tn===void 0?void 0:tn.filter((Wt=>{var Pt,en,tn;return((Pt=Wt.filter)===null||Pt===void 0?void 0:Pt.event)==="*"||((tn=(en=Wt.filter)===null||en===void 0?void 0:en.event)===null||tn===void 0?void 0:tn.toLocaleLowerCase())===an})).map((Wt=>Wt.callback(un,en)))}else{(nn=this.bindings[an])===null||nn===void 0?void 0:nn.filter((Wt=>{var en,tn,nn,rn,In,sn;if(["broadcast","presence","postgres_changes"].includes(an)){if("id"in Wt){const an=Wt.id;const rn=(en=Wt.filter)===null||en===void 0?void 0:en.event;return an&&((tn=Pt.ids)===null||tn===void 0?void 0:tn.includes(an))&&(rn==="*"||(rn===null||rn===void 0?void 0:rn.toLocaleLowerCase())===((nn=Pt.data)===null||nn===void 0?void 0:nn.type.toLocaleLowerCase()))}else{const en=(In=(rn=Wt===null||Wt===void 0?void 0:Wt.filter)===null||rn===void 0?void 0:rn.event)===null||In===void 0?void 0:In.toLocaleLowerCase();return en==="*"||en===((sn=Pt===null||Pt===void 0?void 0:Pt.event)===null||sn===void 0?void 0:sn.toLocaleLowerCase())}}else{return Wt.type.toLocaleLowerCase()===an}})).map((Wt=>{if(typeof un==="object"&&"ids"in un){const Wt=un.data;const{schema:Pt,table:en,commit_timestamp:tn,type:nn,errors:an}=Wt;const rn={schema:Pt,table:en,commit_timestamp:tn,eventType:nn,new:{},old:{},errors:an};un=Object.assign(Object.assign({},rn),this._getPayloadRecords(Wt))}Wt.callback(un,en)}))}}_isClosed(){return this.state===In.CHANNEL_STATES.closed}_isJoined(){return this.state===In.CHANNEL_STATES.joined}_isJoining(){return this.state===In.CHANNEL_STATES.joining}_isLeaving(){return this.state===In.CHANNEL_STATES.leaving}_replyEventName(Wt){return`chan_reply_${Wt}`}_on(Wt,Pt,en){const tn=Wt.toLocaleLowerCase();const nn={type:tn,filter:Pt,callback:en};if(this.bindings[tn]){this.bindings[tn].push(nn)}else{this.bindings[tn]=[nn]}return this}_off(Wt,Pt){const en=Wt.toLocaleLowerCase();this.bindings[en]=this.bindings[en].filter((Wt=>{var tn;return!(((tn=Wt.type)===null||tn===void 0?void 0:tn.toLocaleLowerCase())===en&&RealtimeChannel.isEqual(Wt.filter,Pt))}));return this}static isEqual(Wt,Pt){if(Object.keys(Wt).length!==Object.keys(Pt).length){return false}for(const en in Wt){if(Wt[en]!==Pt[en]){return false}}return true}_rejoinUntilConnected(){this.rejoinTimer.scheduleTimeout();if(this.socket.isConnected()){this._rejoin()}}_onClose(Wt){this._on(In.CHANNEL_EVENTS.close,{},Wt)}_onError(Wt){this._on(In.CHANNEL_EVENTS.error,{},(Pt=>Wt(Pt)))}_canPush(){return this.socket.isConnected()&&this._isJoined()}_rejoin(Wt=this.timeout){if(this._isLeaving()){return}this.socket._leaveOpenTopic(this.topic);this.state=In.CHANNEL_STATES.joining;this.joinPush.resend(Wt)}_getPayloadRecords(Wt){const Pt={new:{},old:{}};if(Wt.type==="INSERT"||Wt.type==="UPDATE"){Pt.new=dn.convertChangeData(Wt.columns,Wt.record)}if(Wt.type==="UPDATE"||Wt.type==="DELETE"){Pt.old=dn.convertChangeData(Wt.columns,Wt.old_record)}return Pt}}Pt["default"]=RealtimeChannel},73955:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});const In=en(29680);const sn=rn(en(99920));const on=rn(en(72049));const cn=rn(en(38093));const noop=()=>{};const dn=typeof WebSocket!=="undefined";class RealtimeClient{constructor(Wt,Pt){var tn;this.accessToken=null;this.apiKey=null;this.channels=[];this.endPoint="";this.headers=In.DEFAULT_HEADERS;this.params={};this.timeout=In.DEFAULT_TIMEOUT;this.heartbeatIntervalMs=3e4;this.heartbeatTimer=undefined;this.pendingHeartbeatRef=null;this.ref=0;this.logger=noop;this.conn=null;this.sendBuffer=[];this.serializer=new on.default;this.stateChangeCallbacks={open:[],close:[],error:[],message:[]};this._resolveFetch=Wt=>{let Pt;if(Wt){Pt=Wt}else if(typeof fetch==="undefined"){Pt=(...Wt)=>Promise.resolve().then((()=>an(en(83318)))).then((({default:Pt})=>Pt(...Wt)))}else{Pt=fetch}return(...Wt)=>Pt(...Wt)};this.endPoint=`${Wt}/${In.TRANSPORTS.websocket}`;if(Pt===null||Pt===void 0?void 0:Pt.transport){this.transport=Pt.transport}else{this.transport=null}if(Pt===null||Pt===void 0?void 0:Pt.params)this.params=Pt.params;if(Pt===null||Pt===void 0?void 0:Pt.headers)this.headers=Object.assign(Object.assign({},this.headers),Pt.headers);if(Pt===null||Pt===void 0?void 0:Pt.timeout)this.timeout=Pt.timeout;if(Pt===null||Pt===void 0?void 0:Pt.logger)this.logger=Pt.logger;if(Pt===null||Pt===void 0?void 0:Pt.heartbeatIntervalMs)this.heartbeatIntervalMs=Pt.heartbeatIntervalMs;const nn=(tn=Pt===null||Pt===void 0?void 0:Pt.params)===null||tn===void 0?void 0:tn.apikey;if(nn){this.accessToken=nn;this.apiKey=nn}this.reconnectAfterMs=(Pt===null||Pt===void 0?void 0:Pt.reconnectAfterMs)?Pt.reconnectAfterMs:Wt=>[1e3,2e3,5e3,1e4][Wt-1]||1e4;this.encode=(Pt===null||Pt===void 0?void 0:Pt.encode)?Pt.encode:(Wt,Pt)=>Pt(JSON.stringify(Wt));this.decode=(Pt===null||Pt===void 0?void 0:Pt.decode)?Pt.decode:this.serializer.decode.bind(this.serializer);this.reconnectTimer=new sn.default((async()=>{this.disconnect();this.connect()}),this.reconnectAfterMs);this.fetch=this._resolveFetch(Pt===null||Pt===void 0?void 0:Pt.fetch)}connect(){if(this.conn){return}if(this.transport){this.conn=new this.transport(this._endPointURL(),undefined,{headers:this.headers});return}if(dn){this.conn=new WebSocket(this._endPointURL());this.setupConnection();return}this.conn=new WSWebSocketDummy(this._endPointURL(),undefined,{close:()=>{this.conn=null}});Promise.resolve().then((()=>an(en(11354)))).then((({default:Wt})=>{this.conn=new Wt(this._endPointURL(),undefined,{headers:this.headers});this.setupConnection()}))}disconnect(Wt,Pt){if(this.conn){this.conn.onclose=function(){};if(Wt){this.conn.close(Wt,Pt!==null&&Pt!==void 0?Pt:"")}else{this.conn.close()}this.conn=null;this.heartbeatTimer&&clearInterval(this.heartbeatTimer);this.reconnectTimer.reset()}}getChannels(){return this.channels}async removeChannel(Wt){const Pt=await Wt.unsubscribe();if(this.channels.length===0){this.disconnect()}return Pt}async removeAllChannels(){const Wt=await Promise.all(this.channels.map((Wt=>Wt.unsubscribe())));this.disconnect();return Wt}log(Wt,Pt,en){this.logger(Wt,Pt,en)}connectionState(){switch(this.conn&&this.conn.readyState){case In.SOCKET_STATES.connecting:return In.CONNECTION_STATE.Connecting;case In.SOCKET_STATES.open:return In.CONNECTION_STATE.Open;case In.SOCKET_STATES.closing:return In.CONNECTION_STATE.Closing;default:return In.CONNECTION_STATE.Closed}}isConnected(){return this.connectionState()===In.CONNECTION_STATE.Open}channel(Wt,Pt={config:{}}){const en=new cn.default(`realtime:${Wt}`,Pt,this);this.channels.push(en);return en}push(Wt){const{topic:Pt,event:en,payload:tn,ref:nn}=Wt;const callback=()=>{this.encode(Wt,(Wt=>{var Pt;(Pt=this.conn)===null||Pt===void 0?void 0:Pt.send(Wt)}))};this.log("push",`${Pt} ${en} (${nn})`,tn);if(this.isConnected()){callback()}else{this.sendBuffer.push(callback)}}setAuth(Wt){this.accessToken=Wt;this.channels.forEach((Pt=>{Wt&&Pt.updateJoinPayload({access_token:Wt});if(Pt.joinedOnce&&Pt._isJoined()){Pt._push(In.CHANNEL_EVENTS.access_token,{access_token:Wt})}}))}_makeRef(){let Wt=this.ref+1;if(Wt===this.ref){this.ref=0}else{this.ref=Wt}return this.ref.toString()}_leaveOpenTopic(Wt){let Pt=this.channels.find((Pt=>Pt.topic===Wt&&(Pt._isJoined()||Pt._isJoining())));if(Pt){this.log("transport",`leaving duplicate topic "${Wt}"`);Pt.unsubscribe()}}_remove(Wt){this.channels=this.channels.filter((Pt=>Pt._joinRef()!==Wt._joinRef()))}setupConnection(){if(this.conn){this.conn.binaryType="arraybuffer";this.conn.onopen=()=>this._onConnOpen();this.conn.onerror=Wt=>this._onConnError(Wt);this.conn.onmessage=Wt=>this._onConnMessage(Wt);this.conn.onclose=Wt=>this._onConnClose(Wt)}}_endPointURL(){return this._appendParams(this.endPoint,Object.assign({},this.params,{vsn:In.VSN}))}_onConnMessage(Wt){this.decode(Wt.data,(Wt=>{let{topic:Pt,event:en,payload:tn,ref:nn}=Wt;if(nn&&nn===this.pendingHeartbeatRef||en===(tn===null||tn===void 0?void 0:tn.type)){this.pendingHeartbeatRef=null}this.log("receive",`${tn.status||""} ${Pt} ${en} ${nn&&"("+nn+")"||""}`,tn);this.channels.filter((Wt=>Wt._isMember(Pt))).forEach((Wt=>Wt._trigger(en,tn,nn)));this.stateChangeCallbacks.message.forEach((Pt=>Pt(Wt)))}))}_onConnOpen(){this.log("transport",`connected to ${this._endPointURL()}`);this._flushSendBuffer();this.reconnectTimer.reset();this.heartbeatTimer&&clearInterval(this.heartbeatTimer);this.heartbeatTimer=setInterval((()=>this._sendHeartbeat()),this.heartbeatIntervalMs);this.stateChangeCallbacks.open.forEach((Wt=>Wt()))}_onConnClose(Wt){this.log("transport","close",Wt);this._triggerChanError();this.heartbeatTimer&&clearInterval(this.heartbeatTimer);this.reconnectTimer.scheduleTimeout();this.stateChangeCallbacks.close.forEach((Pt=>Pt(Wt)))}_onConnError(Wt){this.log("transport",Wt.message);this._triggerChanError();this.stateChangeCallbacks.error.forEach((Pt=>Pt(Wt)))}_triggerChanError(){this.channels.forEach((Wt=>Wt._trigger(In.CHANNEL_EVENTS.error)))}_appendParams(Wt,Pt){if(Object.keys(Pt).length===0){return Wt}const en=Wt.match(/\?/)?"&":"?";const tn=new URLSearchParams(Pt);return`${Wt}${en}${tn}`}_flushSendBuffer(){if(this.isConnected()&&this.sendBuffer.length>0){this.sendBuffer.forEach((Wt=>Wt()));this.sendBuffer=[]}}_sendHeartbeat(){var Wt;if(!this.isConnected()){return}if(this.pendingHeartbeatRef){this.pendingHeartbeatRef=null;this.log("transport","heartbeat timeout. Attempting to re-establish connection");(Wt=this.conn)===null||Wt===void 0?void 0:Wt.close(In.WS_CLOSE_NORMAL,"hearbeat timeout");return}this.pendingHeartbeatRef=this._makeRef();this.push({topic:"phoenix",event:"heartbeat",payload:{},ref:this.pendingHeartbeatRef});this.setAuth(this.accessToken)}}Pt["default"]=RealtimeClient;class WSWebSocketDummy{constructor(Wt,Pt,en){this.binaryType="arraybuffer";this.onclose=()=>{};this.onerror=()=>{};this.onmessage=()=>{};this.onopen=()=>{};this.readyState=In.SOCKET_STATES.connecting;this.send=()=>{};this.url=null;this.url=Wt;this.close=en.close}}},98493:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.REALTIME_PRESENCE_LISTEN_EVENTS=void 0;var en;(function(Wt){Wt["SYNC"]="sync";Wt["JOIN"]="join";Wt["LEAVE"]="leave"})(en=Pt.REALTIME_PRESENCE_LISTEN_EVENTS||(Pt.REALTIME_PRESENCE_LISTEN_EVENTS={}));class RealtimePresence{constructor(Wt,Pt){this.channel=Wt;this.state={};this.pendingDiffs=[];this.joinRef=null;this.caller={onJoin:()=>{},onLeave:()=>{},onSync:()=>{}};const en=(Pt===null||Pt===void 0?void 0:Pt.events)||{state:"presence_state",diff:"presence_diff"};this.channel._on(en.state,{},(Wt=>{const{onJoin:Pt,onLeave:en,onSync:tn}=this.caller;this.joinRef=this.channel._joinRef();this.state=RealtimePresence.syncState(this.state,Wt,Pt,en);this.pendingDiffs.forEach((Wt=>{this.state=RealtimePresence.syncDiff(this.state,Wt,Pt,en)}));this.pendingDiffs=[];tn()}));this.channel._on(en.diff,{},(Wt=>{const{onJoin:Pt,onLeave:en,onSync:tn}=this.caller;if(this.inPendingSyncState()){this.pendingDiffs.push(Wt)}else{this.state=RealtimePresence.syncDiff(this.state,Wt,Pt,en);tn()}}));this.onJoin(((Wt,Pt,en)=>{this.channel._trigger("presence",{event:"join",key:Wt,currentPresences:Pt,newPresences:en})}));this.onLeave(((Wt,Pt,en)=>{this.channel._trigger("presence",{event:"leave",key:Wt,currentPresences:Pt,leftPresences:en})}));this.onSync((()=>{this.channel._trigger("presence",{event:"sync"})}))}static syncState(Wt,Pt,en,tn){const nn=this.cloneDeep(Wt);const an=this.transformState(Pt);const rn={};const In={};this.map(nn,((Wt,Pt)=>{if(!an[Wt]){In[Wt]=Pt}}));this.map(an,((Wt,Pt)=>{const en=nn[Wt];if(en){const tn=Pt.map((Wt=>Wt.presence_ref));const nn=en.map((Wt=>Wt.presence_ref));const an=Pt.filter((Wt=>nn.indexOf(Wt.presence_ref)<0));const sn=en.filter((Wt=>tn.indexOf(Wt.presence_ref)<0));if(an.length>0){rn[Wt]=an}if(sn.length>0){In[Wt]=sn}}else{rn[Wt]=Pt}}));return this.syncDiff(nn,{joins:rn,leaves:In},en,tn)}static syncDiff(Wt,Pt,en,tn){const{joins:nn,leaves:an}={joins:this.transformState(Pt.joins),leaves:this.transformState(Pt.leaves)};if(!en){en=()=>{}}if(!tn){tn=()=>{}}this.map(nn,((Pt,tn)=>{var nn;const an=(nn=Wt[Pt])!==null&&nn!==void 0?nn:[];Wt[Pt]=this.cloneDeep(tn);if(an.length>0){const en=Wt[Pt].map((Wt=>Wt.presence_ref));const tn=an.filter((Wt=>en.indexOf(Wt.presence_ref)<0));Wt[Pt].unshift(...tn)}en(Pt,an,tn)}));this.map(an,((Pt,en)=>{let nn=Wt[Pt];if(!nn)return;const an=en.map((Wt=>Wt.presence_ref));nn=nn.filter((Wt=>an.indexOf(Wt.presence_ref)<0));Wt[Pt]=nn;tn(Pt,nn,en);if(nn.length===0)delete Wt[Pt]}));return Wt}static map(Wt,Pt){return Object.getOwnPropertyNames(Wt).map((en=>Pt(en,Wt[en])))}static transformState(Wt){Wt=this.cloneDeep(Wt);return Object.getOwnPropertyNames(Wt).reduce(((Pt,en)=>{const tn=Wt[en];if("metas"in tn){Pt[en]=tn.metas.map((Wt=>{Wt["presence_ref"]=Wt["phx_ref"];delete Wt["phx_ref"];delete Wt["phx_ref_prev"];return Wt}))}else{Pt[en]=tn}return Pt}),{})}static cloneDeep(Wt){return JSON.parse(JSON.stringify(Wt))}onJoin(Wt){this.caller.onJoin=Wt}onLeave(Wt){this.caller.onLeave=Wt}onSync(Wt){this.caller.onSync=Wt}inPendingSyncState(){return!this.joinRef||this.joinRef!==this.channel._joinRef()}}Pt["default"]=RealtimePresence},36209:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt.REALTIME_CHANNEL_STATES=Pt.REALTIME_SUBSCRIBE_STATES=Pt.REALTIME_PRESENCE_LISTEN_EVENTS=Pt.REALTIME_POSTGRES_CHANGES_LISTEN_EVENT=Pt.REALTIME_LISTEN_TYPES=Pt.RealtimeClient=Pt.RealtimeChannel=Pt.RealtimePresence=void 0;const In=rn(en(73955));Pt.RealtimeClient=In.default;const sn=an(en(38093));Pt.RealtimeChannel=sn.default;Object.defineProperty(Pt,"REALTIME_LISTEN_TYPES",{enumerable:true,get:function(){return sn.REALTIME_LISTEN_TYPES}});Object.defineProperty(Pt,"REALTIME_POSTGRES_CHANGES_LISTEN_EVENT",{enumerable:true,get:function(){return sn.REALTIME_POSTGRES_CHANGES_LISTEN_EVENT}});Object.defineProperty(Pt,"REALTIME_SUBSCRIBE_STATES",{enumerable:true,get:function(){return sn.REALTIME_SUBSCRIBE_STATES}});Object.defineProperty(Pt,"REALTIME_CHANNEL_STATES",{enumerable:true,get:function(){return sn.REALTIME_CHANNEL_STATES}});const on=an(en(98493));Pt.RealtimePresence=on.default;Object.defineProperty(Pt,"REALTIME_PRESENCE_LISTEN_EVENTS",{enumerable:true,get:function(){return on.REALTIME_PRESENCE_LISTEN_EVENTS}})},29680:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.CONNECTION_STATE=Pt.TRANSPORTS=Pt.CHANNEL_EVENTS=Pt.CHANNEL_STATES=Pt.SOCKET_STATES=Pt.WS_CLOSE_NORMAL=Pt.DEFAULT_TIMEOUT=Pt.VSN=Pt.DEFAULT_HEADERS=void 0;const tn=en(38889);Pt.DEFAULT_HEADERS={"X-Client-Info":`realtime-js/${tn.version}`};Pt.VSN="1.0.0";Pt.DEFAULT_TIMEOUT=1e4;Pt.WS_CLOSE_NORMAL=1e3;var nn;(function(Wt){Wt[Wt["connecting"]=0]="connecting";Wt[Wt["open"]=1]="open";Wt[Wt["closing"]=2]="closing";Wt[Wt["closed"]=3]="closed"})(nn=Pt.SOCKET_STATES||(Pt.SOCKET_STATES={}));var an;(function(Wt){Wt["closed"]="closed";Wt["errored"]="errored";Wt["joined"]="joined";Wt["joining"]="joining";Wt["leaving"]="leaving"})(an=Pt.CHANNEL_STATES||(Pt.CHANNEL_STATES={}));var rn;(function(Wt){Wt["close"]="phx_close";Wt["error"]="phx_error";Wt["join"]="phx_join";Wt["reply"]="phx_reply";Wt["leave"]="phx_leave";Wt["access_token"]="access_token"})(rn=Pt.CHANNEL_EVENTS||(Pt.CHANNEL_EVENTS={}));var In;(function(Wt){Wt["websocket"]="websocket"})(In=Pt.TRANSPORTS||(Pt.TRANSPORTS={}));var sn;(function(Wt){Wt["Connecting"]="connecting";Wt["Open"]="open";Wt["Closing"]="closing";Wt["Closed"]="closed"})(sn=Pt.CONNECTION_STATE||(Pt.CONNECTION_STATE={}))},49333:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});const tn=en(29680);class Push{constructor(Wt,Pt,en={},nn=tn.DEFAULT_TIMEOUT){this.channel=Wt;this.event=Pt;this.payload=en;this.timeout=nn;this.sent=false;this.timeoutTimer=undefined;this.ref="";this.receivedResp=null;this.recHooks=[];this.refEvent=null}resend(Wt){this.timeout=Wt;this._cancelRefEvent();this.ref="";this.refEvent=null;this.receivedResp=null;this.sent=false;this.send()}send(){if(this._hasReceived("timeout")){return}this.startTimeout();this.sent=true;this.channel.socket.push({topic:this.channel.topic,event:this.event,payload:this.payload,ref:this.ref,join_ref:this.channel._joinRef()})}updatePayload(Wt){this.payload=Object.assign(Object.assign({},this.payload),Wt)}receive(Wt,Pt){var en;if(this._hasReceived(Wt)){Pt((en=this.receivedResp)===null||en===void 0?void 0:en.response)}this.recHooks.push({status:Wt,callback:Pt});return this}startTimeout(){if(this.timeoutTimer){return}this.ref=this.channel.socket._makeRef();this.refEvent=this.channel._replyEventName(this.ref);const callback=Wt=>{this._cancelRefEvent();this._cancelTimeout();this.receivedResp=Wt;this._matchReceive(Wt)};this.channel._on(this.refEvent,{},callback);this.timeoutTimer=setTimeout((()=>{this.trigger("timeout",{})}),this.timeout)}trigger(Wt,Pt){if(this.refEvent)this.channel._trigger(this.refEvent,{status:Wt,response:Pt})}destroy(){this._cancelRefEvent();this._cancelTimeout()}_cancelRefEvent(){if(!this.refEvent){return}this.channel._off(this.refEvent,{})}_cancelTimeout(){clearTimeout(this.timeoutTimer);this.timeoutTimer=undefined}_matchReceive({status:Wt,response:Pt}){this.recHooks.filter((Pt=>Pt.status===Wt)).forEach((Wt=>Wt.callback(Pt)))}_hasReceived(Wt){return this.receivedResp&&this.receivedResp.status===Wt}}Pt["default"]=Push},72049:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});class Serializer{constructor(){this.HEADER_LENGTH=1}decode(Wt,Pt){if(Wt.constructor===ArrayBuffer){return Pt(this._binaryDecode(Wt))}if(typeof Wt==="string"){return Pt(JSON.parse(Wt))}return Pt({})}_binaryDecode(Wt){const Pt=new DataView(Wt);const en=new TextDecoder;return this._decodeBroadcast(Wt,Pt,en)}_decodeBroadcast(Wt,Pt,en){const tn=Pt.getUint8(1);const nn=Pt.getUint8(2);let an=this.HEADER_LENGTH+2;const rn=en.decode(Wt.slice(an,an+tn));an=an+tn;const In=en.decode(Wt.slice(an,an+nn));an=an+nn;const sn=JSON.parse(en.decode(Wt.slice(an,Wt.byteLength)));return{ref:null,topic:rn,event:In,payload:sn}}}Pt["default"]=Serializer},99920:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});class Timer{constructor(Wt,Pt){this.callback=Wt;this.timerCalc=Pt;this.timer=undefined;this.tries=0;this.callback=Wt;this.timerCalc=Pt}reset(){this.tries=0;clearTimeout(this.timer)}scheduleTimeout(){clearTimeout(this.timer);this.timer=setTimeout((()=>{this.tries=this.tries+1;this.callback()}),this.timerCalc(this.tries+1))}}Pt["default"]=Timer},93429:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.toTimestampString=Pt.toArray=Pt.toJson=Pt.toNumber=Pt.toBoolean=Pt.convertCell=Pt.convertColumn=Pt.convertChangeData=Pt.PostgresTypes=void 0;var en;(function(Wt){Wt["abstime"]="abstime";Wt["bool"]="bool";Wt["date"]="date";Wt["daterange"]="daterange";Wt["float4"]="float4";Wt["float8"]="float8";Wt["int2"]="int2";Wt["int4"]="int4";Wt["int4range"]="int4range";Wt["int8"]="int8";Wt["int8range"]="int8range";Wt["json"]="json";Wt["jsonb"]="jsonb";Wt["money"]="money";Wt["numeric"]="numeric";Wt["oid"]="oid";Wt["reltime"]="reltime";Wt["text"]="text";Wt["time"]="time";Wt["timestamp"]="timestamp";Wt["timestamptz"]="timestamptz";Wt["timetz"]="timetz";Wt["tsrange"]="tsrange";Wt["tstzrange"]="tstzrange"})(en=Pt.PostgresTypes||(Pt.PostgresTypes={}));const convertChangeData=(Wt,en,tn={})=>{var nn;const an=(nn=tn.skipTypes)!==null&&nn!==void 0?nn:[];return Object.keys(en).reduce(((tn,nn)=>{tn[nn]=(0,Pt.convertColumn)(nn,Wt,en,an);return tn}),{})};Pt.convertChangeData=convertChangeData;const convertColumn=(Wt,en,tn,nn)=>{const an=en.find((Pt=>Pt.name===Wt));const rn=an===null||an===void 0?void 0:an.type;const In=tn[Wt];if(rn&&!nn.includes(rn)){return(0,Pt.convertCell)(rn,In)}return noop(In)};Pt.convertColumn=convertColumn;const convertCell=(Wt,tn)=>{if(Wt.charAt(0)==="_"){const en=Wt.slice(1,Wt.length);return(0,Pt.toArray)(tn,en)}switch(Wt){case en.bool:return(0,Pt.toBoolean)(tn);case en.float4:case en.float8:case en.int2:case en.int4:case en.int8:case en.numeric:case en.oid:return(0,Pt.toNumber)(tn);case en.json:case en.jsonb:return(0,Pt.toJson)(tn);case en.timestamp:return(0,Pt.toTimestampString)(tn);case en.abstime:case en.date:case en.daterange:case en.int4range:case en.int8range:case en.money:case en.reltime:case en.text:case en.time:case en.timestamptz:case en.timetz:case en.tsrange:case en.tstzrange:return noop(tn);default:return noop(tn)}};Pt.convertCell=convertCell;const noop=Wt=>Wt;const toBoolean=Wt=>{switch(Wt){case"t":return true;case"f":return false;default:return Wt}};Pt.toBoolean=toBoolean;const toNumber=Wt=>{if(typeof Wt==="string"){const Pt=parseFloat(Wt);if(!Number.isNaN(Pt)){return Pt}}return Wt};Pt.toNumber=toNumber;const toJson=Wt=>{if(typeof Wt==="string"){try{return JSON.parse(Wt)}catch(Pt){console.log(`JSON parse error: ${Pt}`);return Wt}}return Wt};Pt.toJson=toJson;const toArray=(Wt,en)=>{if(typeof Wt!=="string"){return Wt}const tn=Wt.length-1;const nn=Wt[tn];const an=Wt[0];if(an==="{"&&nn==="}"){let nn;const an=Wt.slice(1,tn);try{nn=JSON.parse("["+an+"]")}catch(Wt){nn=an?an.split(","):[]}return nn.map((Wt=>(0,Pt.convertCell)(en,Wt)))}return Wt};Pt.toArray=toArray;const toTimestampString=Wt=>{if(typeof Wt==="string"){return Wt.replace(" ","T")}return Wt};Pt.toTimestampString=toTimestampString},38889:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="2.9.3"},31373:function(Wt,Pt,en){"use strict";var tn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt.StorageClient=void 0;const nn=tn(en(15384));const an=tn(en(64788));class StorageClient extends an.default{constructor(Wt,Pt={},en){super(Wt,Pt,en)}from(Wt){return new nn.default(this.url,this.headers,Wt,this.fetch)}}Pt.StorageClient=StorageClient},71595:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});Pt.StorageClient=void 0;var an=en(31373);Object.defineProperty(Pt,"StorageClient",{enumerable:true,get:function(){return an.StorageClient}});nn(en(58362),Pt);nn(en(9012),Pt)},28990:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.DEFAULT_HEADERS=void 0;const tn=en(7827);Pt.DEFAULT_HEADERS={"X-Client-Info":`storage-js/${tn.version}`}},9012:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.StorageUnknownError=Pt.StorageApiError=Pt.isStorageError=Pt.StorageError=void 0;class StorageError extends Error{constructor(Wt){super(Wt);this.__isStorageError=true;this.name="StorageError"}}Pt.StorageError=StorageError;function isStorageError(Wt){return typeof Wt==="object"&&Wt!==null&&"__isStorageError"in Wt}Pt.isStorageError=isStorageError;class StorageApiError extends StorageError{constructor(Wt,Pt){super(Wt);this.name="StorageApiError";this.status=Pt}toJSON(){return{name:this.name,message:this.message,status:this.status}}}Pt.StorageApiError=StorageApiError;class StorageUnknownError extends StorageError{constructor(Wt,Pt){super(Wt);this.name="StorageUnknownError";this.originalError=Pt}}Pt.StorageUnknownError=StorageUnknownError},43183:function(Wt,Pt,en){"use strict";var tn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});Pt.remove=Pt.put=Pt.post=Pt.get=void 0;const nn=en(9012);const an=en(58954);const _getErrorMessage=Wt=>Wt.msg||Wt.message||Wt.error_description||Wt.error||JSON.stringify(Wt);const handleError=(Wt,Pt)=>tn(void 0,void 0,void 0,(function*(){const en=yield(0,an.resolveResponse)();if(Wt instanceof en){Wt.json().then((en=>{Pt(new nn.StorageApiError(_getErrorMessage(en),Wt.status||500))})).catch((Wt=>{Pt(new nn.StorageUnknownError(_getErrorMessage(Wt),Wt))}))}else{Pt(new nn.StorageUnknownError(_getErrorMessage(Wt),Wt))}}));const _getRequestParams=(Wt,Pt,en,tn)=>{const nn={method:Wt,headers:(Pt===null||Pt===void 0?void 0:Pt.headers)||{}};if(Wt==="GET"){return nn}nn.headers=Object.assign({"Content-Type":"application/json"},Pt===null||Pt===void 0?void 0:Pt.headers);nn.body=JSON.stringify(tn);return Object.assign(Object.assign({},nn),en)};function _handleRequest(Wt,Pt,en,nn,an,rn){return tn(this,void 0,void 0,(function*(){return new Promise(((tn,In)=>{Wt(en,_getRequestParams(Pt,nn,an,rn)).then((Wt=>{if(!Wt.ok)throw Wt;if(nn===null||nn===void 0?void 0:nn.noResolveJson)return Wt;return Wt.json()})).then((Wt=>tn(Wt))).catch((Wt=>handleError(Wt,In)))}))}))}function get(Wt,Pt,en,nn){return tn(this,void 0,void 0,(function*(){return _handleRequest(Wt,"GET",Pt,en,nn)}))}Pt.get=get;function post(Wt,Pt,en,nn,an){return tn(this,void 0,void 0,(function*(){return _handleRequest(Wt,"POST",Pt,nn,an,en)}))}Pt.post=post;function put(Wt,Pt,en,nn,an){return tn(this,void 0,void 0,(function*(){return _handleRequest(Wt,"PUT",Pt,nn,an,en)}))}Pt.put=put;function remove(Wt,Pt,en,nn,an){return tn(this,void 0,void 0,(function*(){return _handleRequest(Wt,"DELETE",Pt,nn,an,en)}))}Pt.remove=remove},58954:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});Pt.resolveResponse=Pt.resolveFetch=void 0;const resolveFetch=Wt=>{let Pt;if(Wt){Pt=Wt}else if(typeof fetch==="undefined"){Pt=(...Wt)=>Promise.resolve().then((()=>an(en(83318)))).then((({default:Pt})=>Pt(...Wt)))}else{Pt=fetch}return(...Wt)=>Pt(...Wt)};Pt.resolveFetch=resolveFetch;const resolveResponse=()=>rn(void 0,void 0,void 0,(function*(){if(typeof Response==="undefined"){return(yield Promise.resolve().then((()=>an(en(83318))))).Response}return Response}));Pt.resolveResponse=resolveResponse},58362:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true})},7827:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="2.5.5"},64788:function(Wt,Pt,en){"use strict";var tn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});const nn=en(28990);const an=en(9012);const rn=en(43183);const In=en(58954);class StorageBucketApi{constructor(Wt,Pt={},en){this.url=Wt;this.headers=Object.assign(Object.assign({},nn.DEFAULT_HEADERS),Pt);this.fetch=(0,In.resolveFetch)(en)}listBuckets(){return tn(this,void 0,void 0,(function*(){try{const Wt=yield(0,rn.get)(this.fetch,`${this.url}/bucket`,{headers:this.headers});return{data:Wt,error:null}}catch(Wt){if((0,an.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}getBucket(Wt){return tn(this,void 0,void 0,(function*(){try{const Pt=yield(0,rn.get)(this.fetch,`${this.url}/bucket/${Wt}`,{headers:this.headers});return{data:Pt,error:null}}catch(Wt){if((0,an.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}createBucket(Wt,Pt={public:false}){return tn(this,void 0,void 0,(function*(){try{const en=yield(0,rn.post)(this.fetch,`${this.url}/bucket`,{id:Wt,name:Wt,public:Pt.public,file_size_limit:Pt.fileSizeLimit,allowed_mime_types:Pt.allowedMimeTypes},{headers:this.headers});return{data:en,error:null}}catch(Wt){if((0,an.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}updateBucket(Wt,Pt){return tn(this,void 0,void 0,(function*(){try{const en=yield(0,rn.put)(this.fetch,`${this.url}/bucket/${Wt}`,{id:Wt,name:Wt,public:Pt.public,file_size_limit:Pt.fileSizeLimit,allowed_mime_types:Pt.allowedMimeTypes},{headers:this.headers});return{data:en,error:null}}catch(Wt){if((0,an.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}emptyBucket(Wt){return tn(this,void 0,void 0,(function*(){try{const Pt=yield(0,rn.post)(this.fetch,`${this.url}/bucket/${Wt}/empty`,{},{headers:this.headers});return{data:Pt,error:null}}catch(Wt){if((0,an.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}deleteBucket(Wt){return tn(this,void 0,void 0,(function*(){try{const Pt=yield(0,rn.remove)(this.fetch,`${this.url}/bucket/${Wt}`,{},{headers:this.headers});return{data:Pt,error:null}}catch(Wt){if((0,an.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}}Pt["default"]=StorageBucketApi},15384:function(Wt,Pt,en){"use strict";var tn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});const nn=en(9012);const an=en(43183);const rn=en(58954);const In={limit:100,offset:0,sortBy:{column:"name",order:"asc"}};const sn={cacheControl:"3600",contentType:"text/plain;charset=UTF-8",upsert:false};class StorageFileApi{constructor(Wt,Pt={},en,tn){this.url=Wt;this.headers=Pt;this.bucketId=en;this.fetch=(0,rn.resolveFetch)(tn)}uploadOrUpdate(Wt,Pt,en,an){return tn(this,void 0,void 0,(function*(){try{let tn;const nn=Object.assign(Object.assign({},sn),an);const rn=Object.assign(Object.assign({},this.headers),Wt==="POST"&&{"x-upsert":String(nn.upsert)});if(typeof Blob!=="undefined"&&en instanceof Blob){tn=new FormData;tn.append("cacheControl",nn.cacheControl);tn.append("",en)}else if(typeof FormData!=="undefined"&&en instanceof FormData){tn=en;tn.append("cacheControl",nn.cacheControl)}else{tn=en;rn["cache-control"]=`max-age=${nn.cacheControl}`;rn["content-type"]=nn.contentType}const In=this._removeEmptyFolders(Pt);const on=this._getFinalPath(In);const cn=yield this.fetch(`${this.url}/object/${on}`,Object.assign({method:Wt,body:tn,headers:rn},(nn===null||nn===void 0?void 0:nn.duplex)?{duplex:nn.duplex}:{}));const dn=yield cn.json();if(cn.ok){return{data:{path:In,id:dn.Id,fullPath:dn.Key},error:null}}else{const Wt=dn;return{data:null,error:Wt}}}catch(Wt){if((0,nn.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}upload(Wt,Pt,en){return tn(this,void 0,void 0,(function*(){return this.uploadOrUpdate("POST",Wt,Pt,en)}))}uploadToSignedUrl(Wt,Pt,en,an){return tn(this,void 0,void 0,(function*(){const tn=this._removeEmptyFolders(Wt);const rn=this._getFinalPath(tn);const In=new URL(this.url+`/object/upload/sign/${rn}`);In.searchParams.set("token",Pt);try{let Wt;const Pt=Object.assign({upsert:sn.upsert},an);const nn=Object.assign(Object.assign({},this.headers),{"x-upsert":String(Pt.upsert)});if(typeof Blob!=="undefined"&&en instanceof Blob){Wt=new FormData;Wt.append("cacheControl",Pt.cacheControl);Wt.append("",en)}else if(typeof FormData!=="undefined"&&en instanceof FormData){Wt=en;Wt.append("cacheControl",Pt.cacheControl)}else{Wt=en;nn["cache-control"]=`max-age=${Pt.cacheControl}`;nn["content-type"]=Pt.contentType}const rn=yield this.fetch(In.toString(),{method:"PUT",body:Wt,headers:nn});const on=yield rn.json();if(rn.ok){return{data:{path:tn,fullPath:on.Key},error:null}}else{const Wt=on;return{data:null,error:Wt}}}catch(Wt){if((0,nn.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}createSignedUploadUrl(Wt){return tn(this,void 0,void 0,(function*(){try{let Pt=this._getFinalPath(Wt);const en=yield(0,an.post)(this.fetch,`${this.url}/object/upload/sign/${Pt}`,{},{headers:this.headers});const tn=new URL(this.url+en.url);const rn=tn.searchParams.get("token");if(!rn){throw new nn.StorageError("No token returned by API")}return{data:{signedUrl:tn.toString(),path:Wt,token:rn},error:null}}catch(Wt){if((0,nn.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}update(Wt,Pt,en){return tn(this,void 0,void 0,(function*(){return this.uploadOrUpdate("PUT",Wt,Pt,en)}))}move(Wt,Pt){return tn(this,void 0,void 0,(function*(){try{const en=yield(0,an.post)(this.fetch,`${this.url}/object/move`,{bucketId:this.bucketId,sourceKey:Wt,destinationKey:Pt},{headers:this.headers});return{data:en,error:null}}catch(Wt){if((0,nn.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}copy(Wt,Pt){return tn(this,void 0,void 0,(function*(){try{const en=yield(0,an.post)(this.fetch,`${this.url}/object/copy`,{bucketId:this.bucketId,sourceKey:Wt,destinationKey:Pt},{headers:this.headers});return{data:{path:en.Key},error:null}}catch(Wt){if((0,nn.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}createSignedUrl(Wt,Pt,en){return tn(this,void 0,void 0,(function*(){try{let tn=this._getFinalPath(Wt);let nn=yield(0,an.post)(this.fetch,`${this.url}/object/sign/${tn}`,Object.assign({expiresIn:Pt},(en===null||en===void 0?void 0:en.transform)?{transform:en.transform}:{}),{headers:this.headers});const rn=(en===null||en===void 0?void 0:en.download)?`&download=${en.download===true?"":en.download}`:"";const In=encodeURI(`${this.url}${nn.signedURL}${rn}`);nn={signedUrl:In};return{data:nn,error:null}}catch(Wt){if((0,nn.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}createSignedUrls(Wt,Pt,en){return tn(this,void 0,void 0,(function*(){try{const tn=yield(0,an.post)(this.fetch,`${this.url}/object/sign/${this.bucketId}`,{expiresIn:Pt,paths:Wt},{headers:this.headers});const nn=(en===null||en===void 0?void 0:en.download)?`&download=${en.download===true?"":en.download}`:"";return{data:tn.map((Wt=>Object.assign(Object.assign({},Wt),{signedUrl:Wt.signedURL?encodeURI(`${this.url}${Wt.signedURL}${nn}`):null}))),error:null}}catch(Wt){if((0,nn.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}download(Wt,Pt){return tn(this,void 0,void 0,(function*(){const en=typeof(Pt===null||Pt===void 0?void 0:Pt.transform)!=="undefined";const tn=en?"render/image/authenticated":"object";const rn=this.transformOptsToQueryString((Pt===null||Pt===void 0?void 0:Pt.transform)||{});const In=rn?`?${rn}`:"";try{const Pt=this._getFinalPath(Wt);const en=yield(0,an.get)(this.fetch,`${this.url}/${tn}/${Pt}${In}`,{headers:this.headers,noResolveJson:true});const nn=yield en.blob();return{data:nn,error:null}}catch(Wt){if((0,nn.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}getPublicUrl(Wt,Pt){const en=this._getFinalPath(Wt);const tn=[];const nn=(Pt===null||Pt===void 0?void 0:Pt.download)?`download=${Pt.download===true?"":Pt.download}`:"";if(nn!==""){tn.push(nn)}const an=typeof(Pt===null||Pt===void 0?void 0:Pt.transform)!=="undefined";const rn=an?"render/image":"object";const In=this.transformOptsToQueryString((Pt===null||Pt===void 0?void 0:Pt.transform)||{});if(In!==""){tn.push(In)}let sn=tn.join("&");if(sn!==""){sn=`?${sn}`}return{data:{publicUrl:encodeURI(`${this.url}/${rn}/public/${en}${sn}`)}}}remove(Wt){return tn(this,void 0,void 0,(function*(){try{const Pt=yield(0,an.remove)(this.fetch,`${this.url}/object/${this.bucketId}`,{prefixes:Wt},{headers:this.headers});return{data:Pt,error:null}}catch(Wt){if((0,nn.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}list(Wt,Pt,en){return tn(this,void 0,void 0,(function*(){try{const tn=Object.assign(Object.assign(Object.assign({},In),Pt),{prefix:Wt||""});const nn=yield(0,an.post)(this.fetch,`${this.url}/object/list/${this.bucketId}`,tn,{headers:this.headers},en);return{data:nn,error:null}}catch(Wt){if((0,nn.isStorageError)(Wt)){return{data:null,error:Wt}}throw Wt}}))}_getFinalPath(Wt){return`${this.bucketId}/${Wt}`}_removeEmptyFolders(Wt){return Wt.replace(/^\/|\/$/g,"").replace(/\/+/g,"/")}transformOptsToQueryString(Wt){const Pt=[];if(Wt.width){Pt.push(`width=${Wt.width}`)}if(Wt.height){Pt.push(`height=${Wt.height}`)}if(Wt.resize){Pt.push(`resize=${Wt.resize}`)}if(Wt.format){Pt.push(`format=${Wt.format}`)}if(Wt.quality){Pt.push(`quality=${Wt.quality}`)}return Pt.join("&")}}Pt["default"]=StorageFileApi},61619:function(Wt,Pt,en){"use strict";var tn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});const nn=en(70459);const an=en(60927);const rn=en(36209);const In=en(71595);const sn=en(23597);const on=en(73248);const cn=en(87301);const dn=en(15253);class SupabaseClient{constructor(Wt,Pt,en){var tn,nn,rn,In,dn,un,pn,mn;this.supabaseUrl=Wt;this.supabaseKey=Pt;if(!Wt)throw new Error("supabaseUrl is required.");if(!Pt)throw new Error("supabaseKey is required.");const bn=(0,cn.stripTrailingSlash)(Wt);this.realtimeUrl=`${bn}/realtime/v1`.replace(/^http/i,"ws");this.authUrl=`${bn}/auth/v1`;this.storageUrl=`${bn}/storage/v1`;this.functionsUrl=`${bn}/functions/v1`;const Gn=`sb-${new URL(this.authUrl).hostname.split(".")[0]}-auth-token`;const hn={db:sn.DEFAULT_DB_OPTIONS,realtime:sn.DEFAULT_REALTIME_OPTIONS,auth:Object.assign(Object.assign({},sn.DEFAULT_AUTH_OPTIONS),{storageKey:Gn}),global:sn.DEFAULT_GLOBAL_OPTIONS};const Zn=(0,cn.applySettingDefaults)(en!==null&&en!==void 0?en:{},hn);this.storageKey=(nn=(tn=Zn.auth)===null||tn===void 0?void 0:tn.storageKey)!==null&&nn!==void 0?nn:"";this.headers=(In=(rn=Zn.global)===null||rn===void 0?void 0:rn.headers)!==null&&In!==void 0?In:{};this.auth=this._initSupabaseAuthClient((dn=Zn.auth)!==null&&dn!==void 0?dn:{},this.headers,(un=Zn.global)===null||un===void 0?void 0:un.fetch);this.fetch=(0,on.fetchWithAuth)(Pt,this._getAccessToken.bind(this),(pn=Zn.global)===null||pn===void 0?void 0:pn.fetch);this.realtime=this._initRealtimeClient(Object.assign({headers:this.headers},Zn.realtime));this.rest=new an.PostgrestClient(`${bn}/rest/v1`,{headers:this.headers,schema:(mn=Zn.db)===null||mn===void 0?void 0:mn.schema,fetch:this.fetch});this._listenForAuthEvents()}get functions(){return new nn.FunctionsClient(this.functionsUrl,{headers:this.headers,customFetch:this.fetch})}get storage(){return new In.StorageClient(this.storageUrl,this.headers,this.fetch)}from(Wt){return this.rest.from(Wt)}schema(Wt){return this.rest.schema(Wt)}rpc(Wt,Pt={},en={}){return this.rest.rpc(Wt,Pt,en)}channel(Wt,Pt={config:{}}){return this.realtime.channel(Wt,Pt)}getChannels(){return this.realtime.getChannels()}removeChannel(Wt){return this.realtime.removeChannel(Wt)}removeAllChannels(){return this.realtime.removeAllChannels()}_getAccessToken(){var Wt,Pt;return tn(this,void 0,void 0,(function*(){const{data:en}=yield this.auth.getSession();return(Pt=(Wt=en.session)===null||Wt===void 0?void 0:Wt.access_token)!==null&&Pt!==void 0?Pt:null}))}_initSupabaseAuthClient({autoRefreshToken:Wt,persistSession:Pt,detectSessionInUrl:en,storage:tn,storageKey:nn,flowType:an,debug:rn},In,sn){const on={Authorization:`Bearer ${this.supabaseKey}`,apikey:`${this.supabaseKey}`};return new dn.SupabaseAuthClient({url:this.authUrl,headers:Object.assign(Object.assign({},on),In),storageKey:nn,autoRefreshToken:Wt,persistSession:Pt,detectSessionInUrl:en,storage:tn,flowType:an,debug:rn,fetch:sn})}_initRealtimeClient(Wt){return new rn.RealtimeClient(this.realtimeUrl,Object.assign(Object.assign({},Wt),{params:Object.assign({apikey:this.supabaseKey},Wt===null||Wt===void 0?void 0:Wt.params)}))}_listenForAuthEvents(){let Wt=this.auth.onAuthStateChange(((Wt,Pt)=>{this._handleTokenChanged(Wt,"CLIENT",Pt===null||Pt===void 0?void 0:Pt.access_token)}));return Wt}_handleTokenChanged(Wt,Pt,en){if((Wt==="TOKEN_REFRESHED"||Wt==="SIGNED_IN")&&this.changedAccessToken!==en){this.realtime.setAuth(en!==null&&en!==void 0?en:null);this.changedAccessToken=en}else if(Wt==="SIGNED_OUT"){this.realtime.setAuth(this.supabaseKey);if(Pt=="STORAGE")this.auth.signOut();this.changedAccessToken=undefined}}}Pt["default"]=SupabaseClient},85036:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};var an=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt.createClient=Pt.SupabaseClient=Pt.FunctionRegion=Pt.FunctionsError=Pt.FunctionsRelayError=Pt.FunctionsFetchError=Pt.FunctionsHttpError=void 0;const rn=an(en(61619));nn(en(31904),Pt);var In=en(70459);Object.defineProperty(Pt,"FunctionsHttpError",{enumerable:true,get:function(){return In.FunctionsHttpError}});Object.defineProperty(Pt,"FunctionsFetchError",{enumerable:true,get:function(){return In.FunctionsFetchError}});Object.defineProperty(Pt,"FunctionsRelayError",{enumerable:true,get:function(){return In.FunctionsRelayError}});Object.defineProperty(Pt,"FunctionsError",{enumerable:true,get:function(){return In.FunctionsError}});Object.defineProperty(Pt,"FunctionRegion",{enumerable:true,get:function(){return In.FunctionRegion}});nn(en(36209),Pt);var sn=en(61619);Object.defineProperty(Pt,"SupabaseClient",{enumerable:true,get:function(){return an(sn).default}});const createClient=(Wt,Pt,en)=>new rn.default(Wt,Pt,en);Pt.createClient=createClient},15253:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.SupabaseAuthClient=void 0;const tn=en(31904);class SupabaseAuthClient extends tn.AuthClient{constructor(Wt){super(Wt)}}Pt.SupabaseAuthClient=SupabaseAuthClient},23597:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.DEFAULT_REALTIME_OPTIONS=Pt.DEFAULT_AUTH_OPTIONS=Pt.DEFAULT_DB_OPTIONS=Pt.DEFAULT_GLOBAL_OPTIONS=Pt.DEFAULT_HEADERS=void 0;const tn=en(50116);let nn="";if(typeof Deno!=="undefined"){nn="deno"}else if(typeof document!=="undefined"){nn="web"}else if(typeof navigator!=="undefined"&&navigator.product==="ReactNative"){nn="react-native"}else{nn="node"}Pt.DEFAULT_HEADERS={"X-Client-Info":`supabase-js-${nn}/${tn.version}`};Pt.DEFAULT_GLOBAL_OPTIONS={headers:Pt.DEFAULT_HEADERS};Pt.DEFAULT_DB_OPTIONS={schema:"public"};Pt.DEFAULT_AUTH_OPTIONS={autoRefreshToken:true,persistSession:true,detectSessionInUrl:true,flowType:"implicit"};Pt.DEFAULT_REALTIME_OPTIONS={}},73248:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};Object.defineProperty(Pt,"__esModule",{value:true});Pt.fetchWithAuth=Pt.resolveHeadersConstructor=Pt.resolveFetch=void 0;const In=an(en(83318));const resolveFetch=Wt=>{let Pt;if(Wt){Pt=Wt}else if(typeof fetch==="undefined"){Pt=In.default}else{Pt=fetch}return(...Wt)=>Pt(...Wt)};Pt.resolveFetch=resolveFetch;const resolveHeadersConstructor=()=>{if(typeof Headers==="undefined"){return In.Headers}return Headers};Pt.resolveHeadersConstructor=resolveHeadersConstructor;const fetchWithAuth=(Wt,en,tn)=>{const nn=(0,Pt.resolveFetch)(tn);const an=(0,Pt.resolveHeadersConstructor)();return(Pt,tn)=>rn(void 0,void 0,void 0,(function*(){var rn;const In=(rn=yield en())!==null&&rn!==void 0?rn:Wt;let sn=new an(tn===null||tn===void 0?void 0:tn.headers);if(!sn.has("apikey")){sn.set("apikey",Wt)}if(!sn.has("Authorization")){sn.set("Authorization",`Bearer ${In}`)}return nn(Pt,Object.assign(Object.assign({},tn),{headers:sn}))}))};Pt.fetchWithAuth=fetchWithAuth},87301:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.applySettingDefaults=Pt.isBrowser=Pt.stripTrailingSlash=Pt.uuid=void 0;function uuid(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(Wt){var Pt=Math.random()*16|0,en=Wt=="x"?Pt:Pt&3|8;return en.toString(16)}))}Pt.uuid=uuid;function stripTrailingSlash(Wt){return Wt.replace(/\/$/,"")}Pt.stripTrailingSlash=stripTrailingSlash;const isBrowser=()=>typeof window!=="undefined";Pt.isBrowser=isBrowser;function applySettingDefaults(Wt,Pt){const{db:en,auth:tn,realtime:nn,global:an}=Wt;const{db:rn,auth:In,realtime:sn,global:on}=Pt;return{db:Object.assign(Object.assign({},rn),en),auth:Object.assign(Object.assign({},In),tn),realtime:Object.assign(Object.assign({},sn),nn),global:Object.assign(Object.assign({},on),an)}}Pt.applySettingDefaults=applySettingDefaults},50116:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="2.42.0"},64360:(Wt,Pt,en)=>{"use strict";var tn=Object.create;var nn=Object.defineProperty;var an=Object.getOwnPropertyDescriptor;var rn=Object.getOwnPropertyNames;var In=Object.getPrototypeOf;var sn=Object.prototype.hasOwnProperty;var __commonJS=(Wt,Pt)=>function __require(){return Pt||(0,Wt[rn(Wt)[0]])((Pt={exports:{}}).exports,Pt),Pt.exports};var __export=(Wt,Pt)=>{for(var en in Pt)nn(Wt,en,{get:Pt[en],enumerable:true})};var __copyProps=(Wt,Pt,en,tn)=>{if(Pt&&typeof Pt==="object"||typeof Pt==="function"){for(let In of rn(Pt))if(!sn.call(Wt,In)&&In!==en)nn(Wt,In,{get:()=>Pt[In],enumerable:!(tn=an(Pt,In))||tn.enumerable})}return Wt};var __toESM=(Wt,Pt,en)=>(en=Wt!=null?tn(In(Wt)):{},__copyProps(Pt||!Wt||!Wt.__esModule?nn(en,"default",{value:Wt,enumerable:true}):en,Wt));var __toCommonJS=Wt=>__copyProps(nn({},"__esModule",{value:true}),Wt);var on=__commonJS({"node_modules/bn.js/lib/bn.js"(Wt,Pt){"use strict";(function(Wt,Pt){"use strict";function assert(Wt,Pt){if(!Wt)throw new Error(Pt||"Assertion failed")}function inherits2(Wt,Pt){Wt.super_=Pt;var TempCtor=function(){};TempCtor.prototype=Pt.prototype;Wt.prototype=new TempCtor;Wt.prototype.constructor=Wt}function BN(Wt,Pt,en){if(BN.isBN(Wt)){return Wt}this.negative=0;this.words=null;this.length=0;this.red=null;if(Wt!==null){if(Pt==="le"||Pt==="be"){en=Pt;Pt=10}this._init(Wt||0,Pt||10,en||"be")}}if(typeof Wt==="object"){Wt.exports=BN}else{Pt.BN=BN}BN.BN=BN;BN.wordSize=26;var tn;try{if(typeof window!=="undefined"&&typeof window.Buffer!=="undefined"){tn=window.Buffer}else{tn=en(20181).Buffer}}catch(Wt){}BN.isBN=function isBN(Wt){if(Wt instanceof BN){return true}return Wt!==null&&typeof Wt==="object"&&Wt.constructor.wordSize===BN.wordSize&&Array.isArray(Wt.words)};BN.max=function max(Wt,Pt){if(Wt.cmp(Pt)>0)return Wt;return Pt};BN.min=function min(Wt,Pt){if(Wt.cmp(Pt)<0)return Wt;return Pt};BN.prototype._init=function init(Wt,Pt,en){if(typeof Wt==="number"){return this._initNumber(Wt,Pt,en)}if(typeof Wt==="object"){return this._initArray(Wt,Pt,en)}if(Pt==="hex"){Pt=16}assert(Pt===(Pt|0)&&Pt>=2&&Pt<=36);Wt=Wt.toString().replace(/\s+/g,"");var tn=0;if(Wt[0]==="-"){tn++;this.negative=1}if(tn=0;tn-=3){an=Wt[tn]|Wt[tn-1]<<8|Wt[tn-2]<<16;this.words[nn]|=an<>>26-rn&67108863;rn+=24;if(rn>=26){rn-=26;nn++}}}else if(en==="le"){for(tn=0,nn=0;tn>>26-rn&67108863;rn+=24;if(rn>=26){rn-=26;nn++}}}return this._strip()};function parseHex4Bits(Wt,Pt){var en=Wt.charCodeAt(Pt);if(en>=48&&en<=57){return en-48}else if(en>=65&&en<=70){return en-55}else if(en>=97&&en<=102){return en-87}else{assert(false,"Invalid character in "+Wt)}}function parseHexByte(Wt,Pt,en){var tn=parseHex4Bits(Wt,en);if(en-1>=Pt){tn|=parseHex4Bits(Wt,en-1)<<4}return tn}BN.prototype._parseHex=function _parseHex(Wt,Pt,en){this.length=Math.ceil((Wt.length-Pt)/6);this.words=new Array(this.length);for(var tn=0;tn=Pt;tn-=2){rn=parseHexByte(Wt,Pt,tn)<=18){nn-=18;an+=1;this.words[an]|=rn>>>26}else{nn+=8}}}else{var In=Wt.length-Pt;for(tn=In%2===0?Pt+1:Pt;tn=18){nn-=18;an+=1;this.words[an]|=rn>>>26}else{nn+=8}}}this._strip()};function parseBase(Wt,Pt,en,tn){var nn=0;var an=0;var rn=Math.min(Wt.length,en);for(var In=Pt;In=49){an=sn-49+10}else if(sn>=17){an=sn-17+10}else{an=sn}assert(sn>=0&&an1&&this.words[this.length-1]===0){this.length--}return this._normSign()};BN.prototype._normSign=function _normSign(){if(this.length===1&&this.words[0]===0){this.negative=0}return this};if(typeof Symbol!=="undefined"&&typeof Symbol.for==="function"){try{BN.prototype[Symbol.for("nodejs.util.inspect.custom")]=inspect}catch(Wt){BN.prototype.inspect=inspect}}else{BN.prototype.inspect=inspect}function inspect(){return(this.red?""}var nn=["","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"];var an=[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];var rn=[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];BN.prototype.toString=function toString3(Wt,Pt){Wt=Wt||10;Pt=Pt|0||1;var en;if(Wt===16||Wt==="hex"){en="";var tn=0;var In=0;for(var sn=0;sn>>24-tn&16777215;tn+=2;if(tn>=26){tn-=26;sn--}if(In!==0||sn!==this.length-1){en=nn[6-cn.length]+cn+en}else{en=cn+en}}if(In!==0){en=In.toString(16)+en}while(en.length%Pt!==0){en="0"+en}if(this.negative!==0){en="-"+en}return en}if(Wt===(Wt|0)&&Wt>=2&&Wt<=36){var dn=an[Wt];var un=rn[Wt];en="";var pn=this.clone();pn.negative=0;while(!pn.isZero()){var mn=pn.modrn(un).toString(Wt);pn=pn.idivn(un);if(!pn.isZero()){en=nn[dn-mn.length]+mn+en}else{en=mn+en}}if(this.isZero()){en="0"+en}while(en.length%Pt!==0){en="0"+en}if(this.negative!==0){en="-"+en}return en}assert(false,"Base should be between 2 and 36")};BN.prototype.toNumber=function toNumber(){var Wt=this.words[0];if(this.length===2){Wt+=this.words[1]*67108864}else if(this.length===3&&this.words[2]===1){Wt+=4503599627370496+this.words[1]*67108864}else if(this.length>2){assert(false,"Number can only safely store up to 53 bits")}return this.negative!==0?-Wt:Wt};BN.prototype.toJSON=function toJSON2(){return this.toString(16,2)};if(tn){BN.prototype.toBuffer=function toBuffer(Wt,Pt){return this.toArrayLike(tn,Wt,Pt)}}BN.prototype.toArray=function toArray2(Wt,Pt){return this.toArrayLike(Array,Wt,Pt)};var In=function allocate2(Wt,Pt){if(Wt.allocUnsafe){return Wt.allocUnsafe(Pt)}return new Wt(Pt)};BN.prototype.toArrayLike=function toArrayLike(Wt,Pt,en){this._strip();var tn=this.byteLength();var nn=en||Math.max(1,tn);assert(tn<=nn,"byte array longer than desired length");assert(nn>0,"Requested array length <= 0");var an=In(Wt,nn);var rn=Pt==="le"?"LE":"BE";this["_toArrayLike"+rn](an,tn);return an};BN.prototype._toArrayLikeLE=function _toArrayLikeLE(Wt,Pt){var en=0;var tn=0;for(var nn=0,an=0;nn>8&255}if(en>16&255}if(an===6){if(en>24&255}tn=0;an=0}else{tn=rn>>>24;an+=2}}if(en=0){Wt[en--]=rn>>8&255}if(en>=0){Wt[en--]=rn>>16&255}if(an===6){if(en>=0){Wt[en--]=rn>>24&255}tn=0;an=0}else{tn=rn>>>24;an+=2}}if(en>=0){Wt[en--]=tn;while(en>=0){Wt[en--]=0}}};if(Math.clz32){BN.prototype._countBits=function _countBits(Wt){return 32-Math.clz32(Wt)}}else{BN.prototype._countBits=function _countBits(Wt){var Pt=Wt;var en=0;if(Pt>=4096){en+=13;Pt>>>=13}if(Pt>=64){en+=7;Pt>>>=7}if(Pt>=8){en+=4;Pt>>>=4}if(Pt>=2){en+=2;Pt>>>=2}return en+Pt}}BN.prototype._zeroBits=function _zeroBits(Wt){if(Wt===0)return 26;var Pt=Wt;var en=0;if((Pt&8191)===0){en+=13;Pt>>>=13}if((Pt&127)===0){en+=7;Pt>>>=7}if((Pt&15)===0){en+=4;Pt>>>=4}if((Pt&3)===0){en+=2;Pt>>>=2}if((Pt&1)===0){en++}return en};BN.prototype.bitLength=function bitLength(){var Wt=this.words[this.length-1];var Pt=this._countBits(Wt);return(this.length-1)*26+Pt};function toBitArray(Wt){var Pt=new Array(Wt.bitLength());for(var en=0;en>>nn&1}return Pt}BN.prototype.zeroBits=function zeroBits(){if(this.isZero())return 0;var Wt=0;for(var Pt=0;PtWt.length)return this.clone().ior(Wt);return Wt.clone().ior(this)};BN.prototype.uor=function uor(Wt){if(this.length>Wt.length)return this.clone().iuor(Wt);return Wt.clone().iuor(this)};BN.prototype.iuand=function iuand(Wt){var Pt;if(this.length>Wt.length){Pt=Wt}else{Pt=this}for(var en=0;enWt.length)return this.clone().iand(Wt);return Wt.clone().iand(this)};BN.prototype.uand=function uand(Wt){if(this.length>Wt.length)return this.clone().iuand(Wt);return Wt.clone().iuand(this)};BN.prototype.iuxor=function iuxor(Wt){var Pt;var en;if(this.length>Wt.length){Pt=this;en=Wt}else{Pt=Wt;en=this}for(var tn=0;tnWt.length)return this.clone().ixor(Wt);return Wt.clone().ixor(this)};BN.prototype.uxor=function uxor(Wt){if(this.length>Wt.length)return this.clone().iuxor(Wt);return Wt.clone().iuxor(this)};BN.prototype.inotn=function inotn(Wt){assert(typeof Wt==="number"&&Wt>=0);var Pt=Math.ceil(Wt/26)|0;var en=Wt%26;this._expand(Pt);if(en>0){Pt--}for(var tn=0;tn0){this.words[tn]=~this.words[tn]&67108863>>26-en}return this._strip()};BN.prototype.notn=function notn(Wt){return this.clone().inotn(Wt)};BN.prototype.setn=function setn(Wt,Pt){assert(typeof Wt==="number"&&Wt>=0);var en=Wt/26|0;var tn=Wt%26;this._expand(en+1);if(Pt){this.words[en]=this.words[en]|1<Wt.length){en=this;tn=Wt}else{en=Wt;tn=this}var nn=0;for(var an=0;an>>26}for(;nn!==0&&an>>26}this.length=en.length;if(nn!==0){this.words[this.length]=nn;this.length++}else if(en!==this){for(;anWt.length)return this.clone().iadd(Wt);return Wt.clone().iadd(this)};BN.prototype.isub=function isub(Wt){if(Wt.negative!==0){Wt.negative=0;var Pt=this.iadd(Wt);Wt.negative=1;return Pt._normSign()}else if(this.negative!==0){this.negative=0;this.iadd(Wt);this.negative=1;return this._normSign()}var en=this.cmp(Wt);if(en===0){this.negative=0;this.length=1;this.words[0]=0;return this}var tn,nn;if(en>0){tn=this;nn=Wt}else{tn=Wt;nn=this}var an=0;for(var rn=0;rn>26;this.words[rn]=Pt&67108863}for(;an!==0&&rn>26;this.words[rn]=Pt&67108863}if(an===0&&rn>>26;var dn=sn&67108863;var un=Math.min(on,Pt.length-1);for(var pn=Math.max(0,on-Wt.length+1);pn<=un;pn++){var mn=on-pn|0;nn=Wt.words[mn]|0;an=Pt.words[pn]|0;rn=nn*an+dn;cn+=rn/67108864|0;dn=rn&67108863}en.words[on]=dn|0;sn=cn|0}if(sn!==0){en.words[on]=sn|0}else{en.length--}return en._strip()}var sn=function comb10MulTo2(Wt,Pt,en){var tn=Wt.words;var nn=Pt.words;var an=en.words;var rn=0;var In;var sn;var on;var cn=tn[0]|0;var dn=cn&8191;var un=cn>>>13;var pn=tn[1]|0;var mn=pn&8191;var bn=pn>>>13;var Gn=tn[2]|0;var hn=Gn&8191;var Zn=Gn>>>13;var An=tn[3]|0;var Wn=An&8191;var Nn=An>>>13;var gn=tn[4]|0;var yn=gn&8191;var vn=gn>>>13;var Yn=tn[5]|0;var En=Yn&8191;var Vn=Yn>>>13;var Rn=tn[6]|0;var wn=Rn&8191;var Fn=Rn>>>13;var Qn=tn[7]|0;var fn=Qn&8191;var Hn=Qn>>>13;var Cn=tn[8]|0;var Xn=Cn&8191;var kn=Cn>>>13;var Jn=tn[9]|0;var Ln=Jn&8191;var Bn=Jn>>>13;var xn=nn[0]|0;var On=xn&8191;var Tn=xn>>>13;var Un=nn[1]|0;var Mn=Un&8191;var zn=Un>>>13;var Sn=nn[2]|0;var jn=Sn&8191;var Dn=Sn>>>13;var _n=nn[3]|0;var Kn=_n&8191;var Pn=_n>>>13;var qn=nn[4]|0;var $n=qn&8191;var el=qn>>>13;var tl=nn[5]|0;var nl=tl&8191;var ll=tl>>>13;var al=nn[6]|0;var rl=al&8191;var Il=al>>>13;var sl=nn[7]|0;var ol=sl&8191;var cl=sl>>>13;var il=nn[8]|0;var dl=il&8191;var ul=il>>>13;var pl=nn[9]|0;var ml=pl&8191;var bl=pl>>>13;en.negative=Wt.negative^Pt.negative;en.length=19;In=Math.imul(dn,On);sn=Math.imul(dn,Tn);sn=sn+Math.imul(un,On)|0;on=Math.imul(un,Tn);var Gl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Gl>>>26)|0;Gl&=67108863;In=Math.imul(mn,On);sn=Math.imul(mn,Tn);sn=sn+Math.imul(bn,On)|0;on=Math.imul(bn,Tn);In=In+Math.imul(dn,Mn)|0;sn=sn+Math.imul(dn,zn)|0;sn=sn+Math.imul(un,Mn)|0;on=on+Math.imul(un,zn)|0;var hl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(hl>>>26)|0;hl&=67108863;In=Math.imul(hn,On);sn=Math.imul(hn,Tn);sn=sn+Math.imul(Zn,On)|0;on=Math.imul(Zn,Tn);In=In+Math.imul(mn,Mn)|0;sn=sn+Math.imul(mn,zn)|0;sn=sn+Math.imul(bn,Mn)|0;on=on+Math.imul(bn,zn)|0;In=In+Math.imul(dn,jn)|0;sn=sn+Math.imul(dn,Dn)|0;sn=sn+Math.imul(un,jn)|0;on=on+Math.imul(un,Dn)|0;var Zl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Zl>>>26)|0;Zl&=67108863;In=Math.imul(Wn,On);sn=Math.imul(Wn,Tn);sn=sn+Math.imul(Nn,On)|0;on=Math.imul(Nn,Tn);In=In+Math.imul(hn,Mn)|0;sn=sn+Math.imul(hn,zn)|0;sn=sn+Math.imul(Zn,Mn)|0;on=on+Math.imul(Zn,zn)|0;In=In+Math.imul(mn,jn)|0;sn=sn+Math.imul(mn,Dn)|0;sn=sn+Math.imul(bn,jn)|0;on=on+Math.imul(bn,Dn)|0;In=In+Math.imul(dn,Kn)|0;sn=sn+Math.imul(dn,Pn)|0;sn=sn+Math.imul(un,Kn)|0;on=on+Math.imul(un,Pn)|0;var Al=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Al>>>26)|0;Al&=67108863;In=Math.imul(yn,On);sn=Math.imul(yn,Tn);sn=sn+Math.imul(vn,On)|0;on=Math.imul(vn,Tn);In=In+Math.imul(Wn,Mn)|0;sn=sn+Math.imul(Wn,zn)|0;sn=sn+Math.imul(Nn,Mn)|0;on=on+Math.imul(Nn,zn)|0;In=In+Math.imul(hn,jn)|0;sn=sn+Math.imul(hn,Dn)|0;sn=sn+Math.imul(Zn,jn)|0;on=on+Math.imul(Zn,Dn)|0;In=In+Math.imul(mn,Kn)|0;sn=sn+Math.imul(mn,Pn)|0;sn=sn+Math.imul(bn,Kn)|0;on=on+Math.imul(bn,Pn)|0;In=In+Math.imul(dn,$n)|0;sn=sn+Math.imul(dn,el)|0;sn=sn+Math.imul(un,$n)|0;on=on+Math.imul(un,el)|0;var Wl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Wl>>>26)|0;Wl&=67108863;In=Math.imul(En,On);sn=Math.imul(En,Tn);sn=sn+Math.imul(Vn,On)|0;on=Math.imul(Vn,Tn);In=In+Math.imul(yn,Mn)|0;sn=sn+Math.imul(yn,zn)|0;sn=sn+Math.imul(vn,Mn)|0;on=on+Math.imul(vn,zn)|0;In=In+Math.imul(Wn,jn)|0;sn=sn+Math.imul(Wn,Dn)|0;sn=sn+Math.imul(Nn,jn)|0;on=on+Math.imul(Nn,Dn)|0;In=In+Math.imul(hn,Kn)|0;sn=sn+Math.imul(hn,Pn)|0;sn=sn+Math.imul(Zn,Kn)|0;on=on+Math.imul(Zn,Pn)|0;In=In+Math.imul(mn,$n)|0;sn=sn+Math.imul(mn,el)|0;sn=sn+Math.imul(bn,$n)|0;on=on+Math.imul(bn,el)|0;In=In+Math.imul(dn,nl)|0;sn=sn+Math.imul(dn,ll)|0;sn=sn+Math.imul(un,nl)|0;on=on+Math.imul(un,ll)|0;var Nl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Nl>>>26)|0;Nl&=67108863;In=Math.imul(wn,On);sn=Math.imul(wn,Tn);sn=sn+Math.imul(Fn,On)|0;on=Math.imul(Fn,Tn);In=In+Math.imul(En,Mn)|0;sn=sn+Math.imul(En,zn)|0;sn=sn+Math.imul(Vn,Mn)|0;on=on+Math.imul(Vn,zn)|0;In=In+Math.imul(yn,jn)|0;sn=sn+Math.imul(yn,Dn)|0;sn=sn+Math.imul(vn,jn)|0;on=on+Math.imul(vn,Dn)|0;In=In+Math.imul(Wn,Kn)|0;sn=sn+Math.imul(Wn,Pn)|0;sn=sn+Math.imul(Nn,Kn)|0;on=on+Math.imul(Nn,Pn)|0;In=In+Math.imul(hn,$n)|0;sn=sn+Math.imul(hn,el)|0;sn=sn+Math.imul(Zn,$n)|0;on=on+Math.imul(Zn,el)|0;In=In+Math.imul(mn,nl)|0;sn=sn+Math.imul(mn,ll)|0;sn=sn+Math.imul(bn,nl)|0;on=on+Math.imul(bn,ll)|0;In=In+Math.imul(dn,rl)|0;sn=sn+Math.imul(dn,Il)|0;sn=sn+Math.imul(un,rl)|0;on=on+Math.imul(un,Il)|0;var gl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(gl>>>26)|0;gl&=67108863;In=Math.imul(fn,On);sn=Math.imul(fn,Tn);sn=sn+Math.imul(Hn,On)|0;on=Math.imul(Hn,Tn);In=In+Math.imul(wn,Mn)|0;sn=sn+Math.imul(wn,zn)|0;sn=sn+Math.imul(Fn,Mn)|0;on=on+Math.imul(Fn,zn)|0;In=In+Math.imul(En,jn)|0;sn=sn+Math.imul(En,Dn)|0;sn=sn+Math.imul(Vn,jn)|0;on=on+Math.imul(Vn,Dn)|0;In=In+Math.imul(yn,Kn)|0;sn=sn+Math.imul(yn,Pn)|0;sn=sn+Math.imul(vn,Kn)|0;on=on+Math.imul(vn,Pn)|0;In=In+Math.imul(Wn,$n)|0;sn=sn+Math.imul(Wn,el)|0;sn=sn+Math.imul(Nn,$n)|0;on=on+Math.imul(Nn,el)|0;In=In+Math.imul(hn,nl)|0;sn=sn+Math.imul(hn,ll)|0;sn=sn+Math.imul(Zn,nl)|0;on=on+Math.imul(Zn,ll)|0;In=In+Math.imul(mn,rl)|0;sn=sn+Math.imul(mn,Il)|0;sn=sn+Math.imul(bn,rl)|0;on=on+Math.imul(bn,Il)|0;In=In+Math.imul(dn,ol)|0;sn=sn+Math.imul(dn,cl)|0;sn=sn+Math.imul(un,ol)|0;on=on+Math.imul(un,cl)|0;var yl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(yl>>>26)|0;yl&=67108863;In=Math.imul(Xn,On);sn=Math.imul(Xn,Tn);sn=sn+Math.imul(kn,On)|0;on=Math.imul(kn,Tn);In=In+Math.imul(fn,Mn)|0;sn=sn+Math.imul(fn,zn)|0;sn=sn+Math.imul(Hn,Mn)|0;on=on+Math.imul(Hn,zn)|0;In=In+Math.imul(wn,jn)|0;sn=sn+Math.imul(wn,Dn)|0;sn=sn+Math.imul(Fn,jn)|0;on=on+Math.imul(Fn,Dn)|0;In=In+Math.imul(En,Kn)|0;sn=sn+Math.imul(En,Pn)|0;sn=sn+Math.imul(Vn,Kn)|0;on=on+Math.imul(Vn,Pn)|0;In=In+Math.imul(yn,$n)|0;sn=sn+Math.imul(yn,el)|0;sn=sn+Math.imul(vn,$n)|0;on=on+Math.imul(vn,el)|0;In=In+Math.imul(Wn,nl)|0;sn=sn+Math.imul(Wn,ll)|0;sn=sn+Math.imul(Nn,nl)|0;on=on+Math.imul(Nn,ll)|0;In=In+Math.imul(hn,rl)|0;sn=sn+Math.imul(hn,Il)|0;sn=sn+Math.imul(Zn,rl)|0;on=on+Math.imul(Zn,Il)|0;In=In+Math.imul(mn,ol)|0;sn=sn+Math.imul(mn,cl)|0;sn=sn+Math.imul(bn,ol)|0;on=on+Math.imul(bn,cl)|0;In=In+Math.imul(dn,dl)|0;sn=sn+Math.imul(dn,ul)|0;sn=sn+Math.imul(un,dl)|0;on=on+Math.imul(un,ul)|0;var vl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(vl>>>26)|0;vl&=67108863;In=Math.imul(Ln,On);sn=Math.imul(Ln,Tn);sn=sn+Math.imul(Bn,On)|0;on=Math.imul(Bn,Tn);In=In+Math.imul(Xn,Mn)|0;sn=sn+Math.imul(Xn,zn)|0;sn=sn+Math.imul(kn,Mn)|0;on=on+Math.imul(kn,zn)|0;In=In+Math.imul(fn,jn)|0;sn=sn+Math.imul(fn,Dn)|0;sn=sn+Math.imul(Hn,jn)|0;on=on+Math.imul(Hn,Dn)|0;In=In+Math.imul(wn,Kn)|0;sn=sn+Math.imul(wn,Pn)|0;sn=sn+Math.imul(Fn,Kn)|0;on=on+Math.imul(Fn,Pn)|0;In=In+Math.imul(En,$n)|0;sn=sn+Math.imul(En,el)|0;sn=sn+Math.imul(Vn,$n)|0;on=on+Math.imul(Vn,el)|0;In=In+Math.imul(yn,nl)|0;sn=sn+Math.imul(yn,ll)|0;sn=sn+Math.imul(vn,nl)|0;on=on+Math.imul(vn,ll)|0;In=In+Math.imul(Wn,rl)|0;sn=sn+Math.imul(Wn,Il)|0;sn=sn+Math.imul(Nn,rl)|0;on=on+Math.imul(Nn,Il)|0;In=In+Math.imul(hn,ol)|0;sn=sn+Math.imul(hn,cl)|0;sn=sn+Math.imul(Zn,ol)|0;on=on+Math.imul(Zn,cl)|0;In=In+Math.imul(mn,dl)|0;sn=sn+Math.imul(mn,ul)|0;sn=sn+Math.imul(bn,dl)|0;on=on+Math.imul(bn,ul)|0;In=In+Math.imul(dn,ml)|0;sn=sn+Math.imul(dn,bl)|0;sn=sn+Math.imul(un,ml)|0;on=on+Math.imul(un,bl)|0;var Yl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Yl>>>26)|0;Yl&=67108863;In=Math.imul(Ln,Mn);sn=Math.imul(Ln,zn);sn=sn+Math.imul(Bn,Mn)|0;on=Math.imul(Bn,zn);In=In+Math.imul(Xn,jn)|0;sn=sn+Math.imul(Xn,Dn)|0;sn=sn+Math.imul(kn,jn)|0;on=on+Math.imul(kn,Dn)|0;In=In+Math.imul(fn,Kn)|0;sn=sn+Math.imul(fn,Pn)|0;sn=sn+Math.imul(Hn,Kn)|0;on=on+Math.imul(Hn,Pn)|0;In=In+Math.imul(wn,$n)|0;sn=sn+Math.imul(wn,el)|0;sn=sn+Math.imul(Fn,$n)|0;on=on+Math.imul(Fn,el)|0;In=In+Math.imul(En,nl)|0;sn=sn+Math.imul(En,ll)|0;sn=sn+Math.imul(Vn,nl)|0;on=on+Math.imul(Vn,ll)|0;In=In+Math.imul(yn,rl)|0;sn=sn+Math.imul(yn,Il)|0;sn=sn+Math.imul(vn,rl)|0;on=on+Math.imul(vn,Il)|0;In=In+Math.imul(Wn,ol)|0;sn=sn+Math.imul(Wn,cl)|0;sn=sn+Math.imul(Nn,ol)|0;on=on+Math.imul(Nn,cl)|0;In=In+Math.imul(hn,dl)|0;sn=sn+Math.imul(hn,ul)|0;sn=sn+Math.imul(Zn,dl)|0;on=on+Math.imul(Zn,ul)|0;In=In+Math.imul(mn,ml)|0;sn=sn+Math.imul(mn,bl)|0;sn=sn+Math.imul(bn,ml)|0;on=on+Math.imul(bn,bl)|0;var El=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(El>>>26)|0;El&=67108863;In=Math.imul(Ln,jn);sn=Math.imul(Ln,Dn);sn=sn+Math.imul(Bn,jn)|0;on=Math.imul(Bn,Dn);In=In+Math.imul(Xn,Kn)|0;sn=sn+Math.imul(Xn,Pn)|0;sn=sn+Math.imul(kn,Kn)|0;on=on+Math.imul(kn,Pn)|0;In=In+Math.imul(fn,$n)|0;sn=sn+Math.imul(fn,el)|0;sn=sn+Math.imul(Hn,$n)|0;on=on+Math.imul(Hn,el)|0;In=In+Math.imul(wn,nl)|0;sn=sn+Math.imul(wn,ll)|0;sn=sn+Math.imul(Fn,nl)|0;on=on+Math.imul(Fn,ll)|0;In=In+Math.imul(En,rl)|0;sn=sn+Math.imul(En,Il)|0;sn=sn+Math.imul(Vn,rl)|0;on=on+Math.imul(Vn,Il)|0;In=In+Math.imul(yn,ol)|0;sn=sn+Math.imul(yn,cl)|0;sn=sn+Math.imul(vn,ol)|0;on=on+Math.imul(vn,cl)|0;In=In+Math.imul(Wn,dl)|0;sn=sn+Math.imul(Wn,ul)|0;sn=sn+Math.imul(Nn,dl)|0;on=on+Math.imul(Nn,ul)|0;In=In+Math.imul(hn,ml)|0;sn=sn+Math.imul(hn,bl)|0;sn=sn+Math.imul(Zn,ml)|0;on=on+Math.imul(Zn,bl)|0;var Vl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Vl>>>26)|0;Vl&=67108863;In=Math.imul(Ln,Kn);sn=Math.imul(Ln,Pn);sn=sn+Math.imul(Bn,Kn)|0;on=Math.imul(Bn,Pn);In=In+Math.imul(Xn,$n)|0;sn=sn+Math.imul(Xn,el)|0;sn=sn+Math.imul(kn,$n)|0;on=on+Math.imul(kn,el)|0;In=In+Math.imul(fn,nl)|0;sn=sn+Math.imul(fn,ll)|0;sn=sn+Math.imul(Hn,nl)|0;on=on+Math.imul(Hn,ll)|0;In=In+Math.imul(wn,rl)|0;sn=sn+Math.imul(wn,Il)|0;sn=sn+Math.imul(Fn,rl)|0;on=on+Math.imul(Fn,Il)|0;In=In+Math.imul(En,ol)|0;sn=sn+Math.imul(En,cl)|0;sn=sn+Math.imul(Vn,ol)|0;on=on+Math.imul(Vn,cl)|0;In=In+Math.imul(yn,dl)|0;sn=sn+Math.imul(yn,ul)|0;sn=sn+Math.imul(vn,dl)|0;on=on+Math.imul(vn,ul)|0;In=In+Math.imul(Wn,ml)|0;sn=sn+Math.imul(Wn,bl)|0;sn=sn+Math.imul(Nn,ml)|0;on=on+Math.imul(Nn,bl)|0;var Rl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Rl>>>26)|0;Rl&=67108863;In=Math.imul(Ln,$n);sn=Math.imul(Ln,el);sn=sn+Math.imul(Bn,$n)|0;on=Math.imul(Bn,el);In=In+Math.imul(Xn,nl)|0;sn=sn+Math.imul(Xn,ll)|0;sn=sn+Math.imul(kn,nl)|0;on=on+Math.imul(kn,ll)|0;In=In+Math.imul(fn,rl)|0;sn=sn+Math.imul(fn,Il)|0;sn=sn+Math.imul(Hn,rl)|0;on=on+Math.imul(Hn,Il)|0;In=In+Math.imul(wn,ol)|0;sn=sn+Math.imul(wn,cl)|0;sn=sn+Math.imul(Fn,ol)|0;on=on+Math.imul(Fn,cl)|0;In=In+Math.imul(En,dl)|0;sn=sn+Math.imul(En,ul)|0;sn=sn+Math.imul(Vn,dl)|0;on=on+Math.imul(Vn,ul)|0;In=In+Math.imul(yn,ml)|0;sn=sn+Math.imul(yn,bl)|0;sn=sn+Math.imul(vn,ml)|0;on=on+Math.imul(vn,bl)|0;var wl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(wl>>>26)|0;wl&=67108863;In=Math.imul(Ln,nl);sn=Math.imul(Ln,ll);sn=sn+Math.imul(Bn,nl)|0;on=Math.imul(Bn,ll);In=In+Math.imul(Xn,rl)|0;sn=sn+Math.imul(Xn,Il)|0;sn=sn+Math.imul(kn,rl)|0;on=on+Math.imul(kn,Il)|0;In=In+Math.imul(fn,ol)|0;sn=sn+Math.imul(fn,cl)|0;sn=sn+Math.imul(Hn,ol)|0;on=on+Math.imul(Hn,cl)|0;In=In+Math.imul(wn,dl)|0;sn=sn+Math.imul(wn,ul)|0;sn=sn+Math.imul(Fn,dl)|0;on=on+Math.imul(Fn,ul)|0;In=In+Math.imul(En,ml)|0;sn=sn+Math.imul(En,bl)|0;sn=sn+Math.imul(Vn,ml)|0;on=on+Math.imul(Vn,bl)|0;var Fl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Fl>>>26)|0;Fl&=67108863;In=Math.imul(Ln,rl);sn=Math.imul(Ln,Il);sn=sn+Math.imul(Bn,rl)|0;on=Math.imul(Bn,Il);In=In+Math.imul(Xn,ol)|0;sn=sn+Math.imul(Xn,cl)|0;sn=sn+Math.imul(kn,ol)|0;on=on+Math.imul(kn,cl)|0;In=In+Math.imul(fn,dl)|0;sn=sn+Math.imul(fn,ul)|0;sn=sn+Math.imul(Hn,dl)|0;on=on+Math.imul(Hn,ul)|0;In=In+Math.imul(wn,ml)|0;sn=sn+Math.imul(wn,bl)|0;sn=sn+Math.imul(Fn,ml)|0;on=on+Math.imul(Fn,bl)|0;var Ql=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Ql>>>26)|0;Ql&=67108863;In=Math.imul(Ln,ol);sn=Math.imul(Ln,cl);sn=sn+Math.imul(Bn,ol)|0;on=Math.imul(Bn,cl);In=In+Math.imul(Xn,dl)|0;sn=sn+Math.imul(Xn,ul)|0;sn=sn+Math.imul(kn,dl)|0;on=on+Math.imul(kn,ul)|0;In=In+Math.imul(fn,ml)|0;sn=sn+Math.imul(fn,bl)|0;sn=sn+Math.imul(Hn,ml)|0;on=on+Math.imul(Hn,bl)|0;var fl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(fl>>>26)|0;fl&=67108863;In=Math.imul(Ln,dl);sn=Math.imul(Ln,ul);sn=sn+Math.imul(Bn,dl)|0;on=Math.imul(Bn,ul);In=In+Math.imul(Xn,ml)|0;sn=sn+Math.imul(Xn,bl)|0;sn=sn+Math.imul(kn,ml)|0;on=on+Math.imul(kn,bl)|0;var Hl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Hl>>>26)|0;Hl&=67108863;In=Math.imul(Ln,ml);sn=Math.imul(Ln,bl);sn=sn+Math.imul(Bn,ml)|0;on=Math.imul(Bn,bl);var Cl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Cl>>>26)|0;Cl&=67108863;an[0]=Gl;an[1]=hl;an[2]=Zl;an[3]=Al;an[4]=Wl;an[5]=Nl;an[6]=gl;an[7]=yl;an[8]=vl;an[9]=Yl;an[10]=El;an[11]=Vl;an[12]=Rl;an[13]=wl;an[14]=Fl;an[15]=Ql;an[16]=fl;an[17]=Hl;an[18]=Cl;if(rn!==0){an[19]=rn;en.length++}return en};if(!Math.imul){sn=smallMulTo}function bigMulTo(Wt,Pt,en){en.negative=Pt.negative^Wt.negative;en.length=Wt.length+Pt.length;var tn=0;var nn=0;for(var an=0;an>>26)|0;nn+=rn>>>26;rn&=67108863}en.words[an]=In;tn=rn;rn=nn}if(tn!==0){en.words[an]=tn}else{en.length--}return en._strip()}function jumboMulTo(Wt,Pt,en){return bigMulTo(Wt,Pt,en)}BN.prototype.mulTo=function mulTo(Wt,Pt){var en;var tn=this.length+Wt.length;if(this.length===10&&Wt.length===10){en=sn(this,Wt,Pt)}else if(tn<63){en=smallMulTo(this,Wt,Pt)}else if(tn<1024){en=bigMulTo(this,Wt,Pt)}else{en=jumboMulTo(this,Wt,Pt)}return en};function FFTM(Wt,Pt){this.x=Wt;this.y=Pt}FFTM.prototype.makeRBT=function makeRBT(Wt){var Pt=new Array(Wt);var en=BN.prototype._countBits(Wt)-1;for(var tn=0;tn>=1}return tn};FFTM.prototype.permute=function permute(Wt,Pt,en,tn,nn,an){for(var rn=0;rn>>1){nn++}return 1<>>13;en[2*an+1]=nn&8191;nn=nn>>>13}for(an=2*Pt;an>=26;en+=nn/67108864|0;en+=an>>>26;this.words[tn]=an&67108863}if(en!==0){this.words[tn]=en;this.length++}return Pt?this.ineg():this};BN.prototype.muln=function muln(Wt){return this.clone().imuln(Wt)};BN.prototype.sqr=function sqr(){return this.mul(this)};BN.prototype.isqr=function isqr(){return this.imul(this.clone())};BN.prototype.pow=function pow(Wt){var Pt=toBitArray(Wt);if(Pt.length===0)return new BN(1);var en=this;for(var tn=0;tn=0);var Pt=Wt%26;var en=(Wt-Pt)/26;var tn=67108863>>>26-Pt<<26-Pt;var nn;if(Pt!==0){var an=0;for(nn=0;nn>>26-Pt}if(an){this.words[nn]=an;this.length++}}if(en!==0){for(nn=this.length-1;nn>=0;nn--){this.words[nn+en]=this.words[nn]}for(nn=0;nn=0);var tn;if(Pt){tn=(Pt-Pt%26)/26}else{tn=0}var nn=Wt%26;var an=Math.min((Wt-nn)/26,this.length);var rn=67108863^67108863>>>nn<an){this.length-=an;for(sn=0;sn=0&&(on!==0||sn>=tn);sn--){var cn=this.words[sn]|0;this.words[sn]=on<<26-nn|cn>>>nn;on=cn&rn}if(In&&on!==0){In.words[In.length++]=on}if(this.length===0){this.words[0]=0;this.length=1}return this._strip()};BN.prototype.ishrn=function ishrn(Wt,Pt,en){assert(this.negative===0);return this.iushrn(Wt,Pt,en)};BN.prototype.shln=function shln(Wt){return this.clone().ishln(Wt)};BN.prototype.ushln=function ushln(Wt){return this.clone().iushln(Wt)};BN.prototype.shrn=function shrn(Wt){return this.clone().ishrn(Wt)};BN.prototype.ushrn=function ushrn(Wt){return this.clone().iushrn(Wt)};BN.prototype.testn=function testn(Wt){assert(typeof Wt==="number"&&Wt>=0);var Pt=Wt%26;var en=(Wt-Pt)/26;var tn=1<=0);var Pt=Wt%26;var en=(Wt-Pt)/26;assert(this.negative===0,"imaskn works only with positive numbers");if(this.length<=en){return this}if(Pt!==0){en++}this.length=Math.min(en,this.length);if(Pt!==0){var tn=67108863^67108863>>>Pt<=67108864;Pt++){this.words[Pt]-=67108864;if(Pt===this.length-1){this.words[Pt+1]=1}else{this.words[Pt+1]++}}this.length=Math.max(this.length,Pt+1);return this};BN.prototype.isubn=function isubn(Wt){assert(typeof Wt==="number");assert(Wt<67108864);if(Wt<0)return this.iaddn(-Wt);if(this.negative!==0){this.negative=0;this.iaddn(Wt);this.negative=1;return this}this.words[0]-=Wt;if(this.length===1&&this.words[0]<0){this.words[0]=-this.words[0];this.negative=1}else{for(var Pt=0;Pt>26)-(In/67108864|0);this.words[nn+en]=an&67108863}for(;nn>26;this.words[nn+en]=an&67108863}if(rn===0)return this._strip();assert(rn===-1);rn=0;for(nn=0;nn>26;this.words[nn]=an&67108863}this.negative=1;return this._strip()};BN.prototype._wordDiv=function _wordDiv(Wt,Pt){var en=this.length-Wt.length;var tn=this.clone();var nn=Wt;var an=nn.words[nn.length-1]|0;var rn=this._countBits(an);en=26-rn;if(en!==0){nn=nn.ushln(en);tn.iushln(en);an=nn.words[nn.length-1]|0}var In=tn.length-nn.length;var sn;if(Pt!=="mod"){sn=new BN(null);sn.length=In+1;sn.words=new Array(sn.length);for(var on=0;on=0;dn--){var un=(tn.words[nn.length+dn]|0)*67108864+(tn.words[nn.length+dn-1]|0);un=Math.min(un/an|0,67108863);tn._ishlnsubmul(nn,un,dn);while(tn.negative!==0){un--;tn.negative=0;tn._ishlnsubmul(nn,1,dn);if(!tn.isZero()){tn.negative^=1}}if(sn){sn.words[dn]=un}}if(sn){sn._strip()}tn._strip();if(Pt!=="div"&&en!==0){tn.iushrn(en)}return{div:sn||null,mod:tn}};BN.prototype.divmod=function divmod(Wt,Pt,en){assert(!Wt.isZero());if(this.isZero()){return{div:new BN(0),mod:new BN(0)}}var tn,nn,an;if(this.negative!==0&&Wt.negative===0){an=this.neg().divmod(Wt,Pt);if(Pt!=="mod"){tn=an.div.neg()}if(Pt!=="div"){nn=an.mod.neg();if(en&&nn.negative!==0){nn.iadd(Wt)}}return{div:tn,mod:nn}}if(this.negative===0&&Wt.negative!==0){an=this.divmod(Wt.neg(),Pt);if(Pt!=="mod"){tn=an.div.neg()}return{div:tn,mod:an.mod}}if((this.negative&Wt.negative)!==0){an=this.neg().divmod(Wt.neg(),Pt);if(Pt!=="div"){nn=an.mod.neg();if(en&&nn.negative!==0){nn.isub(Wt)}}return{div:an.div,mod:nn}}if(Wt.length>this.length||this.cmp(Wt)<0){return{div:new BN(0),mod:this}}if(Wt.length===1){if(Pt==="div"){return{div:this.divn(Wt.words[0]),mod:null}}if(Pt==="mod"){return{div:null,mod:new BN(this.modrn(Wt.words[0]))}}return{div:this.divn(Wt.words[0]),mod:new BN(this.modrn(Wt.words[0]))}}return this._wordDiv(Wt,Pt)};BN.prototype.div=function div(Wt){return this.divmod(Wt,"div",false).div};BN.prototype.mod=function mod(Wt){return this.divmod(Wt,"mod",false).mod};BN.prototype.umod=function umod(Wt){return this.divmod(Wt,"mod",true).mod};BN.prototype.divRound=function divRound(Wt){var Pt=this.divmod(Wt);if(Pt.mod.isZero())return Pt.div;var en=Pt.div.negative!==0?Pt.mod.isub(Wt):Pt.mod;var tn=Wt.ushrn(1);var nn=Wt.andln(1);var an=en.cmp(tn);if(an<0||nn===1&&an===0)return Pt.div;return Pt.div.negative!==0?Pt.div.isubn(1):Pt.div.iaddn(1)};BN.prototype.modrn=function modrn(Wt){var Pt=Wt<0;if(Pt)Wt=-Wt;assert(Wt<=67108863);var en=(1<<26)%Wt;var tn=0;for(var nn=this.length-1;nn>=0;nn--){tn=(en*tn+(this.words[nn]|0))%Wt}return Pt?-tn:tn};BN.prototype.modn=function modn(Wt){return this.modrn(Wt)};BN.prototype.idivn=function idivn(Wt){var Pt=Wt<0;if(Pt)Wt=-Wt;assert(Wt<=67108863);var en=0;for(var tn=this.length-1;tn>=0;tn--){var nn=(this.words[tn]|0)+en*67108864;this.words[tn]=nn/Wt|0;en=nn%Wt}this._strip();return Pt?this.ineg():this};BN.prototype.divn=function divn(Wt){return this.clone().idivn(Wt)};BN.prototype.egcd=function egcd(Wt){assert(Wt.negative===0);assert(!Wt.isZero());var Pt=this;var en=Wt.clone();if(Pt.negative!==0){Pt=Pt.umod(Wt)}else{Pt=Pt.clone()}var tn=new BN(1);var nn=new BN(0);var an=new BN(0);var rn=new BN(1);var In=0;while(Pt.isEven()&&en.isEven()){Pt.iushrn(1);en.iushrn(1);++In}var sn=en.clone();var on=Pt.clone();while(!Pt.isZero()){for(var cn=0,dn=1;(Pt.words[0]&dn)===0&&cn<26;++cn,dn<<=1);if(cn>0){Pt.iushrn(cn);while(cn-- >0){if(tn.isOdd()||nn.isOdd()){tn.iadd(sn);nn.isub(on)}tn.iushrn(1);nn.iushrn(1)}}for(var un=0,pn=1;(en.words[0]&pn)===0&&un<26;++un,pn<<=1);if(un>0){en.iushrn(un);while(un-- >0){if(an.isOdd()||rn.isOdd()){an.iadd(sn);rn.isub(on)}an.iushrn(1);rn.iushrn(1)}}if(Pt.cmp(en)>=0){Pt.isub(en);tn.isub(an);nn.isub(rn)}else{en.isub(Pt);an.isub(tn);rn.isub(nn)}}return{a:an,b:rn,gcd:en.iushln(In)}};BN.prototype._invmp=function _invmp(Wt){assert(Wt.negative===0);assert(!Wt.isZero());var Pt=this;var en=Wt.clone();if(Pt.negative!==0){Pt=Pt.umod(Wt)}else{Pt=Pt.clone()}var tn=new BN(1);var nn=new BN(0);var an=en.clone();while(Pt.cmpn(1)>0&&en.cmpn(1)>0){for(var rn=0,In=1;(Pt.words[0]&In)===0&&rn<26;++rn,In<<=1);if(rn>0){Pt.iushrn(rn);while(rn-- >0){if(tn.isOdd()){tn.iadd(an)}tn.iushrn(1)}}for(var sn=0,on=1;(en.words[0]&on)===0&&sn<26;++sn,on<<=1);if(sn>0){en.iushrn(sn);while(sn-- >0){if(nn.isOdd()){nn.iadd(an)}nn.iushrn(1)}}if(Pt.cmp(en)>=0){Pt.isub(en);tn.isub(nn)}else{en.isub(Pt);nn.isub(tn)}}var cn;if(Pt.cmpn(1)===0){cn=tn}else{cn=nn}if(cn.cmpn(0)<0){cn.iadd(Wt)}return cn};BN.prototype.gcd=function gcd(Wt){if(this.isZero())return Wt.abs();if(Wt.isZero())return this.abs();var Pt=this.clone();var en=Wt.clone();Pt.negative=0;en.negative=0;for(var tn=0;Pt.isEven()&&en.isEven();tn++){Pt.iushrn(1);en.iushrn(1)}do{while(Pt.isEven()){Pt.iushrn(1)}while(en.isEven()){en.iushrn(1)}var nn=Pt.cmp(en);if(nn<0){var an=Pt;Pt=en;en=an}else if(nn===0||en.cmpn(1)===0){break}Pt.isub(en)}while(true);return en.iushln(tn)};BN.prototype.invm=function invm(Wt){return this.egcd(Wt).a.umod(Wt)};BN.prototype.isEven=function isEven(){return(this.words[0]&1)===0};BN.prototype.isOdd=function isOdd(){return(this.words[0]&1)===1};BN.prototype.andln=function andln(Wt){return this.words[0]&Wt};BN.prototype.bincn=function bincn(Wt){assert(typeof Wt==="number");var Pt=Wt%26;var en=(Wt-Pt)/26;var tn=1<>>26;rn&=67108863;this.words[an]=rn}if(nn!==0){this.words[an]=nn;this.length++}return this};BN.prototype.isZero=function isZero(){return this.length===1&&this.words[0]===0};BN.prototype.cmpn=function cmpn(Wt){var Pt=Wt<0;if(this.negative!==0&&!Pt)return-1;if(this.negative===0&&Pt)return 1;this._strip();var en;if(this.length>1){en=1}else{if(Pt){Wt=-Wt}assert(Wt<=67108863,"Number is too big");var tn=this.words[0]|0;en=tn===Wt?0:tnWt.length)return 1;if(this.length=0;en--){var tn=this.words[en]|0;var nn=Wt.words[en]|0;if(tn===nn)continue;if(tnnn){Pt=1}break}return Pt};BN.prototype.gtn=function gtn(Wt){return this.cmpn(Wt)===1};BN.prototype.gt=function gt(Wt){return this.cmp(Wt)===1};BN.prototype.gten=function gten(Wt){return this.cmpn(Wt)>=0};BN.prototype.gte=function gte(Wt){return this.cmp(Wt)>=0};BN.prototype.ltn=function ltn(Wt){return this.cmpn(Wt)===-1};BN.prototype.lt=function lt(Wt){return this.cmp(Wt)===-1};BN.prototype.lten=function lten(Wt){return this.cmpn(Wt)<=0};BN.prototype.lte=function lte(Wt){return this.cmp(Wt)<=0};BN.prototype.eqn=function eqn(Wt){return this.cmpn(Wt)===0};BN.prototype.eq=function eq(Wt){return this.cmp(Wt)===0};BN.red=function red(Wt){return new Red(Wt)};BN.prototype.toRed=function toRed(Wt){assert(!this.red,"Already a number in reduction context");assert(this.negative===0,"red works only with positives");return Wt.convertTo(this)._forceRed(Wt)};BN.prototype.fromRed=function fromRed(){assert(this.red,"fromRed works only with numbers in reduction context");return this.red.convertFrom(this)};BN.prototype._forceRed=function _forceRed(Wt){this.red=Wt;return this};BN.prototype.forceRed=function forceRed(Wt){assert(!this.red,"Already a number in reduction context");return this._forceRed(Wt)};BN.prototype.redAdd=function redAdd(Wt){assert(this.red,"redAdd works only with red numbers");return this.red.add(this,Wt)};BN.prototype.redIAdd=function redIAdd(Wt){assert(this.red,"redIAdd works only with red numbers");return this.red.iadd(this,Wt)};BN.prototype.redSub=function redSub(Wt){assert(this.red,"redSub works only with red numbers");return this.red.sub(this,Wt)};BN.prototype.redISub=function redISub(Wt){assert(this.red,"redISub works only with red numbers");return this.red.isub(this,Wt)};BN.prototype.redShl=function redShl(Wt){assert(this.red,"redShl works only with red numbers");return this.red.shl(this,Wt)};BN.prototype.redMul=function redMul(Wt){assert(this.red,"redMul works only with red numbers");this.red._verify2(this,Wt);return this.red.mul(this,Wt)};BN.prototype.redIMul=function redIMul(Wt){assert(this.red,"redMul works only with red numbers");this.red._verify2(this,Wt);return this.red.imul(this,Wt)};BN.prototype.redSqr=function redSqr(){assert(this.red,"redSqr works only with red numbers");this.red._verify1(this);return this.red.sqr(this)};BN.prototype.redISqr=function redISqr(){assert(this.red,"redISqr works only with red numbers");this.red._verify1(this);return this.red.isqr(this)};BN.prototype.redSqrt=function redSqrt(){assert(this.red,"redSqrt works only with red numbers");this.red._verify1(this);return this.red.sqrt(this)};BN.prototype.redInvm=function redInvm(){assert(this.red,"redInvm works only with red numbers");this.red._verify1(this);return this.red.invm(this)};BN.prototype.redNeg=function redNeg(){assert(this.red,"redNeg works only with red numbers");this.red._verify1(this);return this.red.neg(this)};BN.prototype.redPow=function redPow(Wt){assert(this.red&&!Wt.red,"redPow(normalNum)");this.red._verify1(this);return this.red.pow(this,Wt)};var on={k256:null,p224:null,p192:null,p25519:null};function MPrime(Wt,Pt){this.name=Wt;this.p=new BN(Pt,16);this.n=this.p.bitLength();this.k=new BN(1).iushln(this.n).isub(this.p);this.tmp=this._tmp()}MPrime.prototype._tmp=function _tmp(){var Wt=new BN(null);Wt.words=new Array(Math.ceil(this.n/13));return Wt};MPrime.prototype.ireduce=function ireduce(Wt){var Pt=Wt;var en;do{this.split(Pt,this.tmp);Pt=this.imulK(Pt);Pt=Pt.iadd(this.tmp);en=Pt.bitLength()}while(en>this.n);var tn=en0){Pt.isub(this.p)}else{if(Pt.strip!==void 0){Pt.strip()}else{Pt._strip()}}return Pt};MPrime.prototype.split=function split(Wt,Pt){Wt.iushrn(this.n,0,Pt)};MPrime.prototype.imulK=function imulK(Wt){return Wt.imul(this.k)};function K256(){MPrime.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}inherits2(K256,MPrime);K256.prototype.split=function split(Wt,Pt){var en=4194303;var tn=Math.min(Wt.length,9);for(var nn=0;nn>>22;an=rn}an>>>=22;Wt.words[nn-10]=an;if(an===0&&Wt.length>10){Wt.length-=10}else{Wt.length-=9}};K256.prototype.imulK=function imulK(Wt){Wt.words[Wt.length]=0;Wt.words[Wt.length+1]=0;Wt.length+=2;var Pt=0;for(var en=0;en>>=26;Wt.words[en]=nn;Pt=tn}if(Pt!==0){Wt.words[Wt.length++]=Pt}return Wt};BN._prime=function prime(Wt){if(on[Wt])return on[Wt];var Pt;if(Wt==="k256"){Pt=new K256}else if(Wt==="p224"){Pt=new P224}else if(Wt==="p192"){Pt=new P192}else if(Wt==="p25519"){Pt=new P25519}else{throw new Error("Unknown prime "+Wt)}on[Wt]=Pt;return Pt};function Red(Wt){if(typeof Wt==="string"){var Pt=BN._prime(Wt);this.m=Pt.p;this.prime=Pt}else{assert(Wt.gtn(1),"modulus must be greater than 1");this.m=Wt;this.prime=null}}Red.prototype._verify1=function _verify1(Wt){assert(Wt.negative===0,"red works only with positives");assert(Wt.red,"red works only with red numbers")};Red.prototype._verify2=function _verify2(Wt,Pt){assert((Wt.negative|Pt.negative)===0,"red works only with positives");assert(Wt.red&&Wt.red===Pt.red,"red works only with red numbers")};Red.prototype.imod=function imod(Wt){if(this.prime)return this.prime.ireduce(Wt)._forceRed(this);move(Wt,Wt.umod(this.m)._forceRed(this));return Wt};Red.prototype.neg=function neg(Wt){if(Wt.isZero()){return Wt.clone()}return this.m.sub(Wt)._forceRed(this)};Red.prototype.add=function add(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.add(Pt);if(en.cmp(this.m)>=0){en.isub(this.m)}return en._forceRed(this)};Red.prototype.iadd=function iadd(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.iadd(Pt);if(en.cmp(this.m)>=0){en.isub(this.m)}return en};Red.prototype.sub=function sub(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.sub(Pt);if(en.cmpn(0)<0){en.iadd(this.m)}return en._forceRed(this)};Red.prototype.isub=function isub(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.isub(Pt);if(en.cmpn(0)<0){en.iadd(this.m)}return en};Red.prototype.shl=function shl(Wt,Pt){this._verify1(Wt);return this.imod(Wt.ushln(Pt))};Red.prototype.imul=function imul(Wt,Pt){this._verify2(Wt,Pt);return this.imod(Wt.imul(Pt))};Red.prototype.mul=function mul(Wt,Pt){this._verify2(Wt,Pt);return this.imod(Wt.mul(Pt))};Red.prototype.isqr=function isqr(Wt){return this.imul(Wt,Wt.clone())};Red.prototype.sqr=function sqr(Wt){return this.mul(Wt,Wt)};Red.prototype.sqrt=function sqrt(Wt){if(Wt.isZero())return Wt.clone();var Pt=this.m.andln(3);assert(Pt%2===1);if(Pt===3){var en=this.m.add(new BN(1)).iushrn(2);return this.pow(Wt,en)}var tn=this.m.subn(1);var nn=0;while(!tn.isZero()&&tn.andln(1)===0){nn++;tn.iushrn(1)}assert(!tn.isZero());var an=new BN(1).toRed(this);var rn=an.redNeg();var In=this.m.subn(1).iushrn(1);var sn=this.m.bitLength();sn=new BN(2*sn*sn).toRed(this);while(this.pow(sn,In).cmp(rn)!==0){sn.redIAdd(rn)}var on=this.pow(sn,tn);var cn=this.pow(Wt,tn.addn(1).iushrn(1));var dn=this.pow(Wt,tn);var un=nn;while(dn.cmp(an)!==0){var pn=dn;for(var mn=0;pn.cmp(an)!==0;mn++){pn=pn.redSqr()}assert(mn=0;nn--){var on=Pt.words[nn];for(var cn=sn-1;cn>=0;cn--){var dn=on>>cn&1;if(an!==tn[0]){an=this.sqr(an)}if(dn===0&&rn===0){In=0;continue}rn<<=1;rn|=dn;In++;if(In!==en&&(nn!==0||cn!==0))continue;an=this.mul(an,tn[rn]);In=0;rn=0}sn=26}return an};Red.prototype.convertTo=function convertTo(Wt){var Pt=Wt.umod(this.m);return Pt===Wt?Pt.clone():Pt};Red.prototype.convertFrom=function convertFrom(Wt){var Pt=Wt.clone();Pt.red=null;return Pt};BN.mont=function mont(Wt){return new Mont(Wt)};function Mont(Wt){Red.call(this,Wt);this.shift=this.m.bitLength();if(this.shift%26!==0){this.shift+=26-this.shift%26}this.r=new BN(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)}inherits2(Mont,Red);Mont.prototype.convertTo=function convertTo(Wt){return this.imod(Wt.ushln(this.shift))};Mont.prototype.convertFrom=function convertFrom(Wt){var Pt=this.imod(Wt.mul(this.rinv));Pt.red=null;return Pt};Mont.prototype.imul=function imul(Wt,Pt){if(Wt.isZero()||Pt.isZero()){Wt.words[0]=0;Wt.length=1;return Wt}var en=Wt.imul(Pt);var tn=en.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);var nn=en.isub(tn).iushrn(this.shift);var an=nn;if(nn.cmp(this.m)>=0){an=nn.isub(this.m)}else if(nn.cmpn(0)<0){an=nn.iadd(this.m)}return an._forceRed(this)};Mont.prototype.mul=function mul(Wt,Pt){if(Wt.isZero()||Pt.isZero())return new BN(0)._forceRed(this);var en=Wt.mul(Pt);var tn=en.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);var nn=en.isub(tn).iushrn(this.shift);var an=nn;if(nn.cmp(this.m)>=0){an=nn.isub(this.m)}else if(nn.cmpn(0)<0){an=nn.iadd(this.m)}return an._forceRed(this)};Mont.prototype.invm=function invm(Wt){var Pt=this.imod(Wt._invmp(this.m).mul(this.r2));return Pt._forceRed(this)}})(typeof Pt==="undefined"||Pt,Wt)}});var cn=__commonJS({"node_modules/@ethersproject/logger/lib/_version.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.version=void 0;Wt.version="logger/5.7.0"}});var dn=__commonJS({"node_modules/@ethersproject/logger/lib/index.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.Logger=Wt.ErrorCode=Wt.LogLevel=void 0;var Pt=false;var en=false;var tn={debug:1,default:2,info:2,warning:3,error:4,off:5};var nn=tn["default"];var an=cn();var rn=null;function _checkNormalize(){try{var Wt=[];["NFD","NFC","NFKD","NFKC"].forEach((function(Pt){try{if("test".normalize(Pt)!=="test"){throw new Error("bad normalize")}}catch(en){Wt.push(Pt)}}));if(Wt.length){throw new Error("missing "+Wt.join(", "))}if(String.fromCharCode(233).normalize("NFD")!==String.fromCharCode(101,769)){throw new Error("broken implementation")}}catch(Wt){return Wt.message}return null}var In=_checkNormalize();var sn;(function(Wt){Wt["DEBUG"]="DEBUG";Wt["INFO"]="INFO";Wt["WARNING"]="WARNING";Wt["ERROR"]="ERROR";Wt["OFF"]="OFF"})(sn=Wt.LogLevel||(Wt.LogLevel={}));var on;(function(Wt){Wt["UNKNOWN_ERROR"]="UNKNOWN_ERROR";Wt["NOT_IMPLEMENTED"]="NOT_IMPLEMENTED";Wt["UNSUPPORTED_OPERATION"]="UNSUPPORTED_OPERATION";Wt["NETWORK_ERROR"]="NETWORK_ERROR";Wt["SERVER_ERROR"]="SERVER_ERROR";Wt["TIMEOUT"]="TIMEOUT";Wt["BUFFER_OVERRUN"]="BUFFER_OVERRUN";Wt["NUMERIC_FAULT"]="NUMERIC_FAULT";Wt["MISSING_NEW"]="MISSING_NEW";Wt["INVALID_ARGUMENT"]="INVALID_ARGUMENT";Wt["MISSING_ARGUMENT"]="MISSING_ARGUMENT";Wt["UNEXPECTED_ARGUMENT"]="UNEXPECTED_ARGUMENT";Wt["CALL_EXCEPTION"]="CALL_EXCEPTION";Wt["INSUFFICIENT_FUNDS"]="INSUFFICIENT_FUNDS";Wt["NONCE_EXPIRED"]="NONCE_EXPIRED";Wt["REPLACEMENT_UNDERPRICED"]="REPLACEMENT_UNDERPRICED";Wt["UNPREDICTABLE_GAS_LIMIT"]="UNPREDICTABLE_GAS_LIMIT";Wt["TRANSACTION_REPLACED"]="TRANSACTION_REPLACED";Wt["ACTION_REJECTED"]="ACTION_REJECTED"})(on=Wt.ErrorCode||(Wt.ErrorCode={}));var dn="0123456789abcdef";var un=function(){function Logger2(Wt){Object.defineProperty(this,"version",{enumerable:true,value:Wt,writable:false})}Logger2.prototype._log=function(Wt,Pt){var en=Wt.toLowerCase();if(tn[en]==null){this.throwArgumentError("invalid log level name","logLevel",Wt)}if(nn>tn[en]){return}console.log.apply(console,Pt)};Logger2.prototype.debug=function(){var Wt=[];for(var Pt=0;Pt>4];en+=dn[Pt[an]&15]}nn.push(Wt+"=Uint8Array(0x"+en+")")}else{nn.push(Wt+"="+JSON.stringify(Pt))}}catch(Pt){nn.push(Wt+"="+JSON.stringify(tn[Wt].toString()))}}));nn.push("code="+Pt);nn.push("version="+this.version);var an=Wt;var rn="";switch(Pt){case on.NUMERIC_FAULT:{rn="NUMERIC_FAULT";var In=Wt;switch(In){case"overflow":case"underflow":case"division-by-zero":rn+="-"+In;break;case"negative-power":case"negative-width":rn+="-unsupported";break;case"unbound-bitwise-result":rn+="-unbound-result";break}break}case on.CALL_EXCEPTION:case on.INSUFFICIENT_FUNDS:case on.MISSING_NEW:case on.NONCE_EXPIRED:case on.REPLACEMENT_UNDERPRICED:case on.TRANSACTION_REPLACED:case on.UNPREDICTABLE_GAS_LIMIT:rn=Pt;break}if(rn){Wt+=" [ See: https://links.ethers.org/v5-errors-"+rn+" ]"}if(nn.length){Wt+=" ("+nn.join(", ")+")"}var sn=new Error(Wt);sn.reason=an;sn.code=Pt;Object.keys(tn).forEach((function(Wt){sn[Wt]=tn[Wt]}));return sn};Logger2.prototype.throwError=function(Wt,Pt,en){throw this.makeError(Wt,Pt,en)};Logger2.prototype.throwArgumentError=function(Wt,Pt,en){return this.throwError(Wt,Logger2.errors.INVALID_ARGUMENT,{argument:Pt,value:en})};Logger2.prototype.assert=function(Wt,Pt,en,tn){if(!!Wt){return}this.throwError(Pt,en,tn)};Logger2.prototype.assertArgument=function(Wt,Pt,en,tn){if(!!Wt){return}this.throwArgumentError(Pt,en,tn)};Logger2.prototype.checkNormalize=function(Wt){if(Wt==null){Wt="platform missing String.prototype.normalize"}if(In){this.throwError("platform missing String.prototype.normalize",Logger2.errors.UNSUPPORTED_OPERATION,{operation:"String.prototype.normalize",form:In})}};Logger2.prototype.checkSafeUint53=function(Wt,Pt){if(typeof Wt!=="number"){return}if(Pt==null){Pt="value not safe"}if(Wt<0||Wt>=9007199254740991){this.throwError(Pt,Logger2.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"out-of-safe-range",value:Wt})}if(Wt%1){this.throwError(Pt,Logger2.errors.NUMERIC_FAULT,{operation:"checkSafeInteger",fault:"non-integer",value:Wt})}};Logger2.prototype.checkArgumentCount=function(Wt,Pt,en){if(en){en=": "+en}else{en=""}if(WtPt){this.throwError("too many arguments"+en,Logger2.errors.UNEXPECTED_ARGUMENT,{count:Wt,expectedCount:Pt})}};Logger2.prototype.checkNew=function(Wt,Pt){if(Wt===Object||Wt==null){this.throwError("missing new",Logger2.errors.MISSING_NEW,{name:Pt.name})}};Logger2.prototype.checkAbstract=function(Wt,Pt){if(Wt===Pt){this.throwError("cannot instantiate abstract class "+JSON.stringify(Pt.name)+" directly; use a sub-class",Logger2.errors.UNSUPPORTED_OPERATION,{name:Wt.name,operation:"new"})}else if(Wt===Object||Wt==null){this.throwError("missing new",Logger2.errors.MISSING_NEW,{name:Pt.name})}};Logger2.globalLogger=function(){if(!rn){rn=new Logger2(an.version)}return rn};Logger2.setCensorship=function(Wt,tn){if(!Wt&&tn){this.globalLogger().throwError("cannot permanently disable censorship",Logger2.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}if(Pt){if(!Wt){return}this.globalLogger().throwError("error censorship permanent",Logger2.errors.UNSUPPORTED_OPERATION,{operation:"setCensorship"})}en=!!Wt;Pt=!!tn};Logger2.setLogLevel=function(Wt){var Pt=tn[Wt.toLowerCase()];if(Pt==null){Logger2.globalLogger().warn("invalid log level - "+Wt);return}nn=Pt};Logger2.from=function(Wt){return new Logger2(Wt)};Logger2.errors=on;Logger2.levels=sn;return Logger2}();Wt.Logger=un}});var un=__commonJS({"node_modules/@ethersproject/bytes/lib/_version.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.version=void 0;Wt.version="bytes/5.7.0"}});var pn=__commonJS({"node_modules/@ethersproject/bytes/lib/index.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.joinSignature=Wt.splitSignature=Wt.hexZeroPad=Wt.hexStripZeros=Wt.hexValue=Wt.hexConcat=Wt.hexDataSlice=Wt.hexDataLength=Wt.hexlify=Wt.isHexString=Wt.zeroPad=Wt.stripZeros=Wt.concat=Wt.arrayify=Wt.isBytes=Wt.isBytesLike=void 0;var Pt=dn();var en=un();var tn=new Pt.Logger(en.version);function isHexable(Wt){return!!Wt.toHexString}function addSlice(Wt){if(Wt.slice){return Wt}Wt.slice=function(){var Pt=Array.prototype.slice.call(arguments);return addSlice(new Uint8Array(Array.prototype.slice.apply(Wt,Pt)))};return Wt}function isBytesLike(Wt){return isHexString(Wt)&&!(Wt.length%2)||isBytes(Wt)}Wt.isBytesLike=isBytesLike;function isInteger(Wt){return typeof Wt==="number"&&Wt==Wt&&Wt%1===0}function isBytes(Wt){if(Wt==null){return false}if(Wt.constructor===Uint8Array){return true}if(typeof Wt==="string"){return false}if(!isInteger(Wt.length)||Wt.length<0){return false}for(var Pt=0;Pt=256){return false}}return true}Wt.isBytes=isBytes;function arrayify(Wt,Pt){if(!Pt){Pt={}}if(typeof Wt==="number"){tn.checkSafeUint53(Wt,"invalid arrayify value");var en=[];while(Wt){en.unshift(Wt&255);Wt=parseInt(String(Wt/256))}if(en.length===0){en.push(0)}return addSlice(new Uint8Array(en))}if(Pt.allowMissingPrefix&&typeof Wt==="string"&&Wt.substring(0,2)!=="0x"){Wt="0x"+Wt}if(isHexable(Wt)){Wt=Wt.toHexString()}if(isHexString(Wt)){var nn=Wt.substring(2);if(nn.length%2){if(Pt.hexPad==="left"){nn="0"+nn}else if(Pt.hexPad==="right"){nn+="0"}else{tn.throwArgumentError("hex data is odd-length","value",Wt)}}var en=[];for(var an=0;anPt){tn.throwArgumentError("value out of range","value",arguments[0])}var en=new Uint8Array(Pt);en.set(Wt,Pt-Wt.length);return addSlice(en)}Wt.zeroPad=zeroPad;function isHexString(Wt,Pt){if(typeof Wt!=="string"||!Wt.match(/^0x[0-9A-Fa-f]*$/)){return false}if(Pt&&Wt.length!==2+2*Pt){return false}return true}Wt.isHexString=isHexString;var nn="0123456789abcdef";function hexlify(Wt,Pt){if(!Pt){Pt={}}if(typeof Wt==="number"){tn.checkSafeUint53(Wt,"invalid hexlify value");var en="";while(Wt){en=nn[Wt&15]+en;Wt=Math.floor(Wt/16)}if(en.length){if(en.length%2){en="0"+en}return"0x"+en}return"0x00"}if(typeof Wt==="bigint"){Wt=Wt.toString(16);if(Wt.length%2){return"0x0"+Wt}return"0x"+Wt}if(Pt.allowMissingPrefix&&typeof Wt==="string"&&Wt.substring(0,2)!=="0x"){Wt="0x"+Wt}if(isHexable(Wt)){return Wt.toHexString()}if(isHexString(Wt)){if(Wt.length%2){if(Pt.hexPad==="left"){Wt="0x0"+Wt.substring(2)}else if(Pt.hexPad==="right"){Wt+="0"}else{tn.throwArgumentError("hex data is odd-length","value",Wt)}}return Wt.toLowerCase()}if(isBytes(Wt)){var an="0x";for(var rn=0;rn>4]+nn[In&15]}return an}return tn.throwArgumentError("invalid hexlify value","value",Wt)}Wt.hexlify=hexlify;function hexDataLength(Wt){if(typeof Wt!=="string"){Wt=hexlify(Wt)}else if(!isHexString(Wt)||Wt.length%2){return null}return(Wt.length-2)/2}Wt.hexDataLength=hexDataLength;function hexDataSlice(Wt,Pt,en){if(typeof Wt!=="string"){Wt=hexlify(Wt)}else if(!isHexString(Wt)||Wt.length%2){tn.throwArgumentError("invalid hexData","value",Wt)}Pt=2+2*Pt;if(en!=null){return"0x"+Wt.substring(Pt,2+2*en)}return"0x"+Wt.substring(Pt)}Wt.hexDataSlice=hexDataSlice;function hexConcat(Wt){var Pt="0x";Wt.forEach((function(Wt){Pt+=hexlify(Wt).substring(2)}));return Pt}Wt.hexConcat=hexConcat;function hexValue(Wt){var Pt=hexStripZeros(hexlify(Wt,{hexPad:"left"}));if(Pt==="0x"){return"0x0"}return Pt}Wt.hexValue=hexValue;function hexStripZeros(Wt){if(typeof Wt!=="string"){Wt=hexlify(Wt)}if(!isHexString(Wt)){tn.throwArgumentError("invalid hex string","value",Wt)}Wt=Wt.substring(2);var Pt=0;while(Pt2*Pt+2){tn.throwArgumentError("value out of range","value",arguments[1])}while(Wt.length<2*Pt+2){Wt="0x0"+Wt.substring(2)}return Wt}Wt.hexZeroPad=hexZeroPad;function splitSignature(Wt){var Pt={r:"0x",s:"0x",_vs:"0x",recoveryParam:0,v:0,yParityAndS:"0x",compact:"0x"};if(isBytesLike(Wt)){var en=arrayify(Wt);if(en.length===64){Pt.v=27+(en[32]>>7);en[32]&=127;Pt.r=hexlify(en.slice(0,32));Pt.s=hexlify(en.slice(32,64))}else if(en.length===65){Pt.r=hexlify(en.slice(0,32));Pt.s=hexlify(en.slice(32,64));Pt.v=en[64]}else{tn.throwArgumentError("invalid signature string","signature",Wt)}if(Pt.v<27){if(Pt.v===0||Pt.v===1){Pt.v+=27}else{tn.throwArgumentError("signature invalid v byte","signature",Wt)}}Pt.recoveryParam=1-Pt.v%2;if(Pt.recoveryParam){en[32]|=128}Pt._vs=hexlify(en.slice(32,64))}else{Pt.r=Wt.r;Pt.s=Wt.s;Pt.v=Wt.v;Pt.recoveryParam=Wt.recoveryParam;Pt._vs=Wt._vs;if(Pt._vs!=null){var nn=zeroPad(arrayify(Pt._vs),32);Pt._vs=hexlify(nn);var an=nn[0]>=128?1:0;if(Pt.recoveryParam==null){Pt.recoveryParam=an}else if(Pt.recoveryParam!==an){tn.throwArgumentError("signature recoveryParam mismatch _vs","signature",Wt)}nn[0]&=127;var rn=hexlify(nn);if(Pt.s==null){Pt.s=rn}else if(Pt.s!==rn){tn.throwArgumentError("signature v mismatch _vs","signature",Wt)}}if(Pt.recoveryParam==null){if(Pt.v==null){tn.throwArgumentError("signature missing v and recoveryParam","signature",Wt)}else if(Pt.v===0||Pt.v===1){Pt.recoveryParam=Pt.v}else{Pt.recoveryParam=1-Pt.v%2}}else{if(Pt.v==null){Pt.v=27+Pt.recoveryParam}else{var In=Pt.v===0||Pt.v===1?Pt.v:1-Pt.v%2;if(Pt.recoveryParam!==In){tn.throwArgumentError("signature recoveryParam mismatch v","signature",Wt)}}}if(Pt.r==null||!isHexString(Pt.r)){tn.throwArgumentError("signature missing or invalid r","signature",Wt)}else{Pt.r=hexZeroPad(Pt.r,32)}if(Pt.s==null||!isHexString(Pt.s)){tn.throwArgumentError("signature missing or invalid s","signature",Wt)}else{Pt.s=hexZeroPad(Pt.s,32)}var sn=arrayify(Pt.s);if(sn[0]>=128){tn.throwArgumentError("signature s out of range","signature",Wt)}if(Pt.recoveryParam){sn[0]|=128}var on=hexlify(sn);if(Pt._vs){if(!isHexString(Pt._vs)){tn.throwArgumentError("signature invalid _vs","signature",Wt)}Pt._vs=hexZeroPad(Pt._vs,32)}if(Pt._vs==null){Pt._vs=on}else if(Pt._vs!==on){tn.throwArgumentError("signature _vs mismatch v and s","signature",Wt)}}Pt.yParityAndS=Pt._vs;Pt.compact=Pt.r+Pt.yParityAndS.substring(2);return Pt}Wt.splitSignature=splitSignature;function joinSignature(Wt){Wt=splitSignature(Wt);return hexlify(concat([Wt.r,Wt.s,Wt.recoveryParam?"0x1c":"0x1b"]))}Wt.joinSignature=joinSignature}});var mn=__commonJS({"node_modules/@ethersproject/bignumber/lib/_version.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.version=void 0;Wt.version="bignumber/5.7.0"}});var bn=__commonJS({"node_modules/@ethersproject/bignumber/lib/bignumber.js"(Wt){"use strict";var Pt=Wt&&Wt.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Wt,"__esModule",{value:true});Wt._base16To36=Wt._base36To16=Wt.BigNumber=Wt.isBigNumberish=void 0;var en=Pt(on());var tn=en.default.BN;var nn=pn();var an=dn();var rn=mn();var In=new an.Logger(rn.version);var sn={};var cn=9007199254740991;function isBigNumberish(Wt){return Wt!=null&&(bn.isBigNumber(Wt)||typeof Wt==="number"&&Wt%1===0||typeof Wt==="string"&&!!Wt.match(/^-?[0-9]+$/)||(0,nn.isHexString)(Wt)||typeof Wt==="bigint"||(0,nn.isBytes)(Wt))}Wt.isBigNumberish=isBigNumberish;var un=false;var bn=function(){function BigNumber2(Wt,Pt){if(Wt!==sn){In.throwError("cannot call constructor directly; use BigNumber.from",an.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new (BigNumber)"})}this._hex=Pt;this._isBigNumber=true;Object.freeze(this)}BigNumber2.prototype.fromTwos=function(Wt){return toBigNumber(toBN(this).fromTwos(Wt))};BigNumber2.prototype.toTwos=function(Wt){return toBigNumber(toBN(this).toTwos(Wt))};BigNumber2.prototype.abs=function(){if(this._hex[0]==="-"){return BigNumber2.from(this._hex.substring(1))}return this};BigNumber2.prototype.add=function(Wt){return toBigNumber(toBN(this).add(toBN(Wt)))};BigNumber2.prototype.sub=function(Wt){return toBigNumber(toBN(this).sub(toBN(Wt)))};BigNumber2.prototype.div=function(Wt){var Pt=BigNumber2.from(Wt);if(Pt.isZero()){throwFault("division-by-zero","div")}return toBigNumber(toBN(this).div(toBN(Wt)))};BigNumber2.prototype.mul=function(Wt){return toBigNumber(toBN(this).mul(toBN(Wt)))};BigNumber2.prototype.mod=function(Wt){var Pt=toBN(Wt);if(Pt.isNeg()){throwFault("division-by-zero","mod")}return toBigNumber(toBN(this).umod(Pt))};BigNumber2.prototype.pow=function(Wt){var Pt=toBN(Wt);if(Pt.isNeg()){throwFault("negative-power","pow")}return toBigNumber(toBN(this).pow(Pt))};BigNumber2.prototype.and=function(Wt){var Pt=toBN(Wt);if(this.isNegative()||Pt.isNeg()){throwFault("unbound-bitwise-result","and")}return toBigNumber(toBN(this).and(Pt))};BigNumber2.prototype.or=function(Wt){var Pt=toBN(Wt);if(this.isNegative()||Pt.isNeg()){throwFault("unbound-bitwise-result","or")}return toBigNumber(toBN(this).or(Pt))};BigNumber2.prototype.xor=function(Wt){var Pt=toBN(Wt);if(this.isNegative()||Pt.isNeg()){throwFault("unbound-bitwise-result","xor")}return toBigNumber(toBN(this).xor(Pt))};BigNumber2.prototype.mask=function(Wt){if(this.isNegative()||Wt<0){throwFault("negative-width","mask")}return toBigNumber(toBN(this).maskn(Wt))};BigNumber2.prototype.shl=function(Wt){if(this.isNegative()||Wt<0){throwFault("negative-width","shl")}return toBigNumber(toBN(this).shln(Wt))};BigNumber2.prototype.shr=function(Wt){if(this.isNegative()||Wt<0){throwFault("negative-width","shr")}return toBigNumber(toBN(this).shrn(Wt))};BigNumber2.prototype.eq=function(Wt){return toBN(this).eq(toBN(Wt))};BigNumber2.prototype.lt=function(Wt){return toBN(this).lt(toBN(Wt))};BigNumber2.prototype.lte=function(Wt){return toBN(this).lte(toBN(Wt))};BigNumber2.prototype.gt=function(Wt){return toBN(this).gt(toBN(Wt))};BigNumber2.prototype.gte=function(Wt){return toBN(this).gte(toBN(Wt))};BigNumber2.prototype.isNegative=function(){return this._hex[0]==="-"};BigNumber2.prototype.isZero=function(){return toBN(this).isZero()};BigNumber2.prototype.toNumber=function(){try{return toBN(this).toNumber()}catch(Wt){throwFault("overflow","toNumber",this.toString())}return null};BigNumber2.prototype.toBigInt=function(){try{return BigInt(this.toString())}catch(Wt){}return In.throwError("this platform does not support BigInt",an.Logger.errors.UNSUPPORTED_OPERATION,{value:this.toString()})};BigNumber2.prototype.toString=function(){if(arguments.length>0){if(arguments[0]===10){if(!un){un=true;In.warn("BigNumber.toString does not accept any parameters; base-10 is assumed")}}else if(arguments[0]===16){In.throwError("BigNumber.toString does not accept any parameters; use bigNumber.toHexString()",an.Logger.errors.UNEXPECTED_ARGUMENT,{})}else{In.throwError("BigNumber.toString does not accept parameters",an.Logger.errors.UNEXPECTED_ARGUMENT,{})}}return toBN(this).toString(10)};BigNumber2.prototype.toHexString=function(){return this._hex};BigNumber2.prototype.toJSON=function(Wt){return{type:"BigNumber",hex:this.toHexString()}};BigNumber2.from=function(Wt){if(Wt instanceof BigNumber2){return Wt}if(typeof Wt==="string"){if(Wt.match(/^-?0x[0-9a-f]+$/i)){return new BigNumber2(sn,toHex(Wt))}if(Wt.match(/^-?[0-9]+$/)){return new BigNumber2(sn,toHex(new tn(Wt)))}return In.throwArgumentError("invalid BigNumber string","value",Wt)}if(typeof Wt==="number"){if(Wt%1){throwFault("underflow","BigNumber.from",Wt)}if(Wt>=cn||Wt<=-cn){throwFault("overflow","BigNumber.from",Wt)}return BigNumber2.from(String(Wt))}var Pt=Wt;if(typeof Pt==="bigint"){return BigNumber2.from(Pt.toString())}if((0,nn.isBytes)(Pt)){return BigNumber2.from((0,nn.hexlify)(Pt))}if(Pt){if(Pt.toHexString){var en=Pt.toHexString();if(typeof en==="string"){return BigNumber2.from(en)}}else{var en=Pt._hex;if(en==null&&Pt.type==="BigNumber"){en=Pt.hex}if(typeof en==="string"){if((0,nn.isHexString)(en)||en[0]==="-"&&(0,nn.isHexString)(en.substring(1))){return BigNumber2.from(en)}}}}return In.throwArgumentError("invalid BigNumber value","value",Wt)};BigNumber2.isBigNumber=function(Wt){return!!(Wt&&Wt._isBigNumber)};return BigNumber2}();Wt.BigNumber=bn;function toHex(Wt){if(typeof Wt!=="string"){return toHex(Wt.toString(16))}if(Wt[0]==="-"){Wt=Wt.substring(1);if(Wt[0]==="-"){In.throwArgumentError("invalid hex","value",Wt)}Wt=toHex(Wt);if(Wt==="0x00"){return Wt}return"-"+Wt}if(Wt.substring(0,2)!=="0x"){Wt="0x"+Wt}if(Wt==="0x"){return"0x00"}if(Wt.length%2){Wt="0x0"+Wt.substring(2)}while(Wt.length>4&&Wt.substring(0,4)==="0x00"){Wt="0x"+Wt.substring(4)}return Wt}function toBigNumber(Wt){return bn.from(toHex(Wt))}function toBN(Wt){var Pt=bn.from(Wt).toHexString();if(Pt[0]==="-"){return new tn("-"+Pt.substring(3),16)}return new tn(Pt.substring(2),16)}function throwFault(Wt,Pt,en){var tn={fault:Wt,operation:Pt};if(en!=null){tn.value=en}return In.throwError(Wt,an.Logger.errors.NUMERIC_FAULT,tn)}function _base36To16(Wt){return new tn(Wt,36).toString(16)}Wt._base36To16=_base36To16;function _base16To36(Wt){return new tn(Wt,16).toString(36)}Wt._base16To36=_base16To36}});var Gn=__commonJS({"node_modules/@ethersproject/bignumber/lib/fixednumber.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.FixedNumber=Wt.FixedFormat=Wt.parseFixed=Wt.formatFixed=void 0;var Pt=pn();var en=dn();var tn=mn();var nn=new en.Logger(tn.version);var an=bn();var rn={};var In=an.BigNumber.from(0);var sn=an.BigNumber.from(-1);function throwFault(Wt,Pt,tn,an){var rn={fault:Pt,operation:tn};if(an!==void 0){rn.value=an}return nn.throwError(Wt,en.Logger.errors.NUMERIC_FAULT,rn)}var on="0";while(on.length<256){on+=on}function getMultiplier(Wt){if(typeof Wt!=="number"){try{Wt=an.BigNumber.from(Wt).toNumber()}catch(Wt){}}if(typeof Wt==="number"&&Wt>=0&&Wt<=256&&!(Wt%1)){return"1"+on.substring(0,Wt)}return nn.throwArgumentError("invalid decimal size","decimals",Wt)}function formatFixed(Wt,Pt){if(Pt==null){Pt=0}var en=getMultiplier(Pt);Wt=an.BigNumber.from(Wt);var tn=Wt.lt(In);if(tn){Wt=Wt.mul(sn)}var nn=Wt.mod(en).toString();while(nn.length2){nn.throwArgumentError("too many decimal points","value",Wt)}var In=rn[0],on=rn[1];if(!In){In="0"}if(!on){on="0"}while(on[on.length-1]==="0"){on=on.substring(0,on.length-1)}if(on.length>en.length-1){throwFault("fractional component exceeds decimals","underflow","parseFixed")}if(on===""){on="0"}while(on.length80){nn.throwArgumentError("invalid fixed format (decimals too large)","format.decimals",tn)}return new FixedFormat2(rn,Pt,en,tn)};return FixedFormat2}();Wt.FixedFormat=cn;var un=function(){function FixedNumber2(Wt,Pt,tn,an){if(Wt!==rn){nn.throwError("cannot use FixedNumber constructor; use FixedNumber.from",en.Logger.errors.UNSUPPORTED_OPERATION,{operation:"new FixedFormat"})}this.format=an;this._hex=Pt;this._value=tn;this._isFixedNumber=true;Object.freeze(this)}FixedNumber2.prototype._checkFormat=function(Wt){if(this.format.name!==Wt.format.name){nn.throwArgumentError("incompatible format; use fixedNumber.toFormat","other",Wt)}};FixedNumber2.prototype.addUnsafe=function(Wt){this._checkFormat(Wt);var Pt=parseFixed(this._value,this.format.decimals);var en=parseFixed(Wt._value,Wt.format.decimals);return FixedNumber2.fromValue(Pt.add(en),this.format.decimals,this.format)};FixedNumber2.prototype.subUnsafe=function(Wt){this._checkFormat(Wt);var Pt=parseFixed(this._value,this.format.decimals);var en=parseFixed(Wt._value,Wt.format.decimals);return FixedNumber2.fromValue(Pt.sub(en),this.format.decimals,this.format)};FixedNumber2.prototype.mulUnsafe=function(Wt){this._checkFormat(Wt);var Pt=parseFixed(this._value,this.format.decimals);var en=parseFixed(Wt._value,Wt.format.decimals);return FixedNumber2.fromValue(Pt.mul(en).div(this.format._multiplier),this.format.decimals,this.format)};FixedNumber2.prototype.divUnsafe=function(Wt){this._checkFormat(Wt);var Pt=parseFixed(this._value,this.format.decimals);var en=parseFixed(Wt._value,Wt.format.decimals);return FixedNumber2.fromValue(Pt.mul(this.format._multiplier).div(en),this.format.decimals,this.format)};FixedNumber2.prototype.floor=function(){var Wt=this.toString().split(".");if(Wt.length===1){Wt.push("0")}var Pt=FixedNumber2.from(Wt[0],this.format);var en=!Wt[1].match(/^(0*)$/);if(this.isNegative()&&en){Pt=Pt.subUnsafe(Gn.toFormat(Pt.format))}return Pt};FixedNumber2.prototype.ceiling=function(){var Wt=this.toString().split(".");if(Wt.length===1){Wt.push("0")}var Pt=FixedNumber2.from(Wt[0],this.format);var en=!Wt[1].match(/^(0*)$/);if(!this.isNegative()&&en){Pt=Pt.addUnsafe(Gn.toFormat(Pt.format))}return Pt};FixedNumber2.prototype.round=function(Wt){if(Wt==null){Wt=0}var Pt=this.toString().split(".");if(Pt.length===1){Pt.push("0")}if(Wt<0||Wt>80||Wt%1){nn.throwArgumentError("invalid decimal count","decimals",Wt)}if(Pt[1].length<=Wt){return this}var en=FixedNumber2.from("1"+on.substring(0,Wt),this.format);var tn=hn.toFormat(this.format);return this.mulUnsafe(en).addUnsafe(tn).floor().divUnsafe(en)};FixedNumber2.prototype.isZero=function(){return this._value==="0.0"||this._value==="0"};FixedNumber2.prototype.isNegative=function(){return this._value[0]==="-"};FixedNumber2.prototype.toString=function(){return this._value};FixedNumber2.prototype.toHexString=function(Wt){if(Wt==null){return this._hex}if(Wt%8){nn.throwArgumentError("invalid byte width","width",Wt)}var en=an.BigNumber.from(this._hex).fromTwos(this.format.width).toTwos(Wt).toHexString();return(0,Pt.hexZeroPad)(en,Wt/8)};FixedNumber2.prototype.toUnsafeFloat=function(){return parseFloat(this.toString())};FixedNumber2.prototype.toFormat=function(Wt){return FixedNumber2.fromString(this._value,Wt)};FixedNumber2.fromValue=function(Wt,Pt,en){if(en==null&&Pt!=null&&!(0,an.isBigNumberish)(Pt)){en=Pt;Pt=null}if(Pt==null){Pt=0}if(en==null){en="fixed"}return FixedNumber2.fromString(formatFixed(Wt,Pt),cn.from(en))};FixedNumber2.fromString=function(Wt,en){if(en==null){en="fixed"}var tn=cn.from(en);var nn=parseFixed(Wt,tn.decimals);if(!tn.signed&&nn.lt(In)){throwFault("unsigned value cannot be negative","overflow","value",Wt)}var an=null;if(tn.signed){an=nn.toTwos(tn.width).toHexString()}else{an=nn.toHexString();an=(0,Pt.hexZeroPad)(an,tn.width/8)}var sn=formatFixed(nn,tn.decimals);return new FixedNumber2(rn,an,sn,tn)};FixedNumber2.fromBytes=function(Wt,en){if(en==null){en="fixed"}var tn=cn.from(en);if((0,Pt.arrayify)(Wt).length>tn.width/8){throw new Error("overflow")}var nn=an.BigNumber.from(Wt);if(tn.signed){nn=nn.fromTwos(tn.width)}var In=nn.toTwos((tn.signed?0:1)+tn.width).toHexString();var sn=formatFixed(nn,tn.decimals);return new FixedNumber2(rn,In,sn,tn)};FixedNumber2.from=function(Wt,tn){if(typeof Wt==="string"){return FixedNumber2.fromString(Wt,tn)}if((0,Pt.isBytes)(Wt)){return FixedNumber2.fromBytes(Wt,tn)}try{return FixedNumber2.fromValue(Wt,0,tn)}catch(Wt){if(Wt.code!==en.Logger.errors.INVALID_ARGUMENT){throw Wt}}return nn.throwArgumentError("invalid FixedNumber value","value",Wt)};FixedNumber2.isFixedNumber=function(Wt){return!!(Wt&&Wt._isFixedNumber)};return FixedNumber2}();Wt.FixedNumber=un;var Gn=un.from(1);var hn=un.from("0.5")}});var hn=__commonJS({"node_modules/@ethersproject/bignumber/lib/index.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt._base36To16=Wt._base16To36=Wt.parseFixed=Wt.FixedNumber=Wt.FixedFormat=Wt.formatFixed=Wt.BigNumber=void 0;var Pt=bn();Object.defineProperty(Wt,"BigNumber",{enumerable:true,get:function(){return Pt.BigNumber}});var en=Gn();Object.defineProperty(Wt,"formatFixed",{enumerable:true,get:function(){return en.formatFixed}});Object.defineProperty(Wt,"FixedFormat",{enumerable:true,get:function(){return en.FixedFormat}});Object.defineProperty(Wt,"FixedNumber",{enumerable:true,get:function(){return en.FixedNumber}});Object.defineProperty(Wt,"parseFixed",{enumerable:true,get:function(){return en.parseFixed}});var tn=bn();Object.defineProperty(Wt,"_base16To36",{enumerable:true,get:function(){return tn._base16To36}});Object.defineProperty(Wt,"_base36To16",{enumerable:true,get:function(){return tn._base36To16}})}});var Zn=__commonJS({"node_modules/@ethersproject/properties/lib/_version.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.version=void 0;Wt.version="properties/5.7.0"}});var An=__commonJS({"node_modules/@ethersproject/properties/lib/index.js"(Wt){"use strict";var Pt=Wt&&Wt.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var en=Wt&&Wt.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]0){tn.push(an%this.base);an=an/this.base|0}}var In="";for(var sn=0;en[sn]===0&&sn=0;--on){In+=this.alphabet[tn[on]]}return In};BaseX2.prototype.decode=function(Wt){if(typeof Wt!=="string"){throw new TypeError("Expected String")}var en=[];if(Wt.length===0){return new Uint8Array(en)}en.push(0);for(var tn=0;tn>=8}while(an>0){en.push(an&255);an>>=8}}for(var In=0;Wt[In]===this._leader&&In>5;this.byteCount=this.blockCount<<2;this.outputBlocks=en>>5;this.extraBytes=(en&31)>>3;for(var tn=0;tn<50;++tn){this.s[tn]=0}}Keccak.prototype.update=function(Pt){if(this.finalized){throw new Error(en)}var tn,nn=typeof Pt;if(nn!=="string"){if(nn==="object"){if(Pt===null){throw new Error(Wt)}else if(on&&Pt.constructor===ArrayBuffer){Pt=new Uint8Array(Pt)}else if(!Array.isArray(Pt)){if(!on||!ArrayBuffer.isView(Pt)){throw new Error(Wt)}}}else{throw new Error(Wt)}tn=true}var an=this.blocks,rn=this.byteCount,In=Pt.length,sn=this.blockCount,cn=0,dn=this.s,un,pn;while(cn>2]|=Pt[cn]<>2]|=pn<>2]|=(192|pn>>6)<>2]|=(128|pn&63)<=57344){an[un>>2]|=(224|pn>>12)<>2]|=(128|pn>>6&63)<>2]|=(128|pn&63)<>2]|=(240|pn>>18)<>2]|=(128|pn>>12&63)<>2]|=(128|pn>>6&63)<>2]|=(128|pn&63)<=rn){this.start=un-rn;this.block=an[sn];for(un=0;un>8;en=Wt&255;while(en>0){nn.unshift(en);Wt=Wt>>8;en=Wt&255;++tn}if(Pt){nn.push(tn)}else{nn.unshift(tn)}this.update(nn);return nn.length};Keccak.prototype.encodeString=function(Pt){var en,tn=typeof Pt;if(tn!=="string"){if(tn==="object"){if(Pt===null){throw new Error(Wt)}else if(on&&Pt.constructor===ArrayBuffer){Pt=new Uint8Array(Pt)}else if(!Array.isArray(Pt)){if(!on||!ArrayBuffer.isView(Pt)){throw new Error(Wt)}}}else{throw new Error(Wt)}en=true}var nn=0,an=Pt.length;if(en){nn=an}else{for(var rn=0;rn=57344){nn+=3}else{In=65536+((In&1023)<<10|Pt.charCodeAt(++rn)&1023);nn+=4}}}nn+=this.encode(nn*8);this.update(Pt);return nn};Keccak.prototype.bytepad=function(Wt,Pt){var en=this.encode(Pt);for(var tn=0;tn>2]|=this.padding[Pt&3];if(this.lastByteIndex===this.byteCount){Wt[0]=Wt[en];for(Pt=1;Pt>4&15]+cn[In&15]+cn[In>>12&15]+cn[In>>8&15]+cn[In>>20&15]+cn[In>>16&15]+cn[In>>28&15]+cn[In>>24&15]}if(an%Wt===0){f(Pt);nn=0}}if(tn){In=Pt[nn];rn+=cn[In>>4&15]+cn[In&15];if(tn>1){rn+=cn[In>>12&15]+cn[In>>8&15]}if(tn>2){rn+=cn[In>>20&15]+cn[In>>16&15]}}return rn};Keccak.prototype.arrayBuffer=function(){this.finalize();var Wt=this.blockCount,Pt=this.s,en=this.outputBlocks,tn=this.extraBytes,nn=0,an=0;var rn=this.outputBits>>3;var In;if(tn){In=new ArrayBuffer(en+1<<2)}else{In=new ArrayBuffer(rn)}var sn=new Uint32Array(In);while(an>8&255;rn[In+2]=sn>>16&255;rn[In+3]=sn>>24&255}if(an%Wt===0){f(Pt)}}if(tn){In=an<<2;sn=Pt[nn];rn[In]=sn&255;if(tn>1){rn[In+1]=sn>>8&255}if(tn>2){rn[In+2]=sn>>16&255}}return rn};function Kmac(Wt,Pt,en){Keccak.call(this,Wt,Pt,en)}Kmac.prototype=new Keccak;Kmac.prototype.finalize=function(){this.encode(this.outputBits,true);return Keccak.prototype.finalize.call(this)};var f=function(Wt){var Pt,en,tn,nn,an,rn,In,sn,on,cn,dn,un,pn,mn,bn,hn,Zn,An,Wn,Nn,gn,yn,vn,Yn,En,Vn,Rn,wn,Fn,Qn,fn,Hn,Cn,Xn,kn,Jn,Ln,Bn,xn,On,Tn,Un,Mn,zn,Sn,jn,Dn,_n,Kn,Pn,qn,$n,el,tl,nl,ll,al,rl,Il,sl,ol,cl,il;for(tn=0;tn<48;tn+=2){nn=Wt[0]^Wt[10]^Wt[20]^Wt[30]^Wt[40];an=Wt[1]^Wt[11]^Wt[21]^Wt[31]^Wt[41];rn=Wt[2]^Wt[12]^Wt[22]^Wt[32]^Wt[42];In=Wt[3]^Wt[13]^Wt[23]^Wt[33]^Wt[43];sn=Wt[4]^Wt[14]^Wt[24]^Wt[34]^Wt[44];on=Wt[5]^Wt[15]^Wt[25]^Wt[35]^Wt[45];cn=Wt[6]^Wt[16]^Wt[26]^Wt[36]^Wt[46];dn=Wt[7]^Wt[17]^Wt[27]^Wt[37]^Wt[47];un=Wt[8]^Wt[18]^Wt[28]^Wt[38]^Wt[48];pn=Wt[9]^Wt[19]^Wt[29]^Wt[39]^Wt[49];Pt=un^(rn<<1|In>>>31);en=pn^(In<<1|rn>>>31);Wt[0]^=Pt;Wt[1]^=en;Wt[10]^=Pt;Wt[11]^=en;Wt[20]^=Pt;Wt[21]^=en;Wt[30]^=Pt;Wt[31]^=en;Wt[40]^=Pt;Wt[41]^=en;Pt=nn^(sn<<1|on>>>31);en=an^(on<<1|sn>>>31);Wt[2]^=Pt;Wt[3]^=en;Wt[12]^=Pt;Wt[13]^=en;Wt[22]^=Pt;Wt[23]^=en;Wt[32]^=Pt;Wt[33]^=en;Wt[42]^=Pt;Wt[43]^=en;Pt=rn^(cn<<1|dn>>>31);en=In^(dn<<1|cn>>>31);Wt[4]^=Pt;Wt[5]^=en;Wt[14]^=Pt;Wt[15]^=en;Wt[24]^=Pt;Wt[25]^=en;Wt[34]^=Pt;Wt[35]^=en;Wt[44]^=Pt;Wt[45]^=en;Pt=sn^(un<<1|pn>>>31);en=on^(pn<<1|un>>>31);Wt[6]^=Pt;Wt[7]^=en;Wt[16]^=Pt;Wt[17]^=en;Wt[26]^=Pt;Wt[27]^=en;Wt[36]^=Pt;Wt[37]^=en;Wt[46]^=Pt;Wt[47]^=en;Pt=cn^(nn<<1|an>>>31);en=dn^(an<<1|nn>>>31);Wt[8]^=Pt;Wt[9]^=en;Wt[18]^=Pt;Wt[19]^=en;Wt[28]^=Pt;Wt[29]^=en;Wt[38]^=Pt;Wt[39]^=en;Wt[48]^=Pt;Wt[49]^=en;mn=Wt[0];bn=Wt[1];jn=Wt[11]<<4|Wt[10]>>>28;Dn=Wt[10]<<4|Wt[11]>>>28;wn=Wt[20]<<3|Wt[21]>>>29;Fn=Wt[21]<<3|Wt[20]>>>29;sl=Wt[31]<<9|Wt[30]>>>23;ol=Wt[30]<<9|Wt[31]>>>23;Un=Wt[40]<<18|Wt[41]>>>14;Mn=Wt[41]<<18|Wt[40]>>>14;Xn=Wt[2]<<1|Wt[3]>>>31;kn=Wt[3]<<1|Wt[2]>>>31;hn=Wt[13]<<12|Wt[12]>>>20;Zn=Wt[12]<<12|Wt[13]>>>20;_n=Wt[22]<<10|Wt[23]>>>22;Kn=Wt[23]<<10|Wt[22]>>>22;Qn=Wt[33]<<13|Wt[32]>>>19;fn=Wt[32]<<13|Wt[33]>>>19;cl=Wt[42]<<2|Wt[43]>>>30;il=Wt[43]<<2|Wt[42]>>>30;tl=Wt[5]<<30|Wt[4]>>>2;nl=Wt[4]<<30|Wt[5]>>>2;Jn=Wt[14]<<6|Wt[15]>>>26;Ln=Wt[15]<<6|Wt[14]>>>26;An=Wt[25]<<11|Wt[24]>>>21;Wn=Wt[24]<<11|Wt[25]>>>21;Pn=Wt[34]<<15|Wt[35]>>>17;qn=Wt[35]<<15|Wt[34]>>>17;Hn=Wt[45]<<29|Wt[44]>>>3;Cn=Wt[44]<<29|Wt[45]>>>3;Yn=Wt[6]<<28|Wt[7]>>>4;En=Wt[7]<<28|Wt[6]>>>4;ll=Wt[17]<<23|Wt[16]>>>9;al=Wt[16]<<23|Wt[17]>>>9;Bn=Wt[26]<<25|Wt[27]>>>7;xn=Wt[27]<<25|Wt[26]>>>7;Nn=Wt[36]<<21|Wt[37]>>>11;gn=Wt[37]<<21|Wt[36]>>>11;$n=Wt[47]<<24|Wt[46]>>>8;el=Wt[46]<<24|Wt[47]>>>8;zn=Wt[8]<<27|Wt[9]>>>5;Sn=Wt[9]<<27|Wt[8]>>>5;Vn=Wt[18]<<20|Wt[19]>>>12;Rn=Wt[19]<<20|Wt[18]>>>12;rl=Wt[29]<<7|Wt[28]>>>25;Il=Wt[28]<<7|Wt[29]>>>25;On=Wt[38]<<8|Wt[39]>>>24;Tn=Wt[39]<<8|Wt[38]>>>24;yn=Wt[48]<<14|Wt[49]>>>18;vn=Wt[49]<<14|Wt[48]>>>18;Wt[0]=mn^~hn&An;Wt[1]=bn^~Zn&Wn;Wt[10]=Yn^~Vn&wn;Wt[11]=En^~Rn&Fn;Wt[20]=Xn^~Jn&Bn;Wt[21]=kn^~Ln&xn;Wt[30]=zn^~jn&_n;Wt[31]=Sn^~Dn&Kn;Wt[40]=tl^~ll&rl;Wt[41]=nl^~al&Il;Wt[2]=hn^~An&Nn;Wt[3]=Zn^~Wn&gn;Wt[12]=Vn^~wn&Qn;Wt[13]=Rn^~Fn&fn;Wt[22]=Jn^~Bn&On;Wt[23]=Ln^~xn&Tn;Wt[32]=jn^~_n&Pn;Wt[33]=Dn^~Kn&qn;Wt[42]=ll^~rl&sl;Wt[43]=al^~Il&ol;Wt[4]=An^~Nn&yn;Wt[5]=Wn^~gn&vn;Wt[14]=wn^~Qn&Hn;Wt[15]=Fn^~fn&Cn;Wt[24]=Bn^~On&Un;Wt[25]=xn^~Tn&Mn;Wt[34]=_n^~Pn&$n;Wt[35]=Kn^~qn⪙Wt[44]=rl^~sl&cl;Wt[45]=Il^~ol&il;Wt[6]=Nn^~yn&mn;Wt[7]=gn^~vn&bn;Wt[16]=Qn^~Hn&Yn;Wt[17]=fn^~Cn&En;Wt[26]=On^~Un&Xn;Wt[27]=Tn^~Mn&kn;Wt[36]=Pn^~$n&zn;Wt[37]=qn^~el&Sn;Wt[46]=sl^~cl&tl;Wt[47]=ol^~il&nl;Wt[8]=yn^~mn&hn;Wt[9]=vn^~bn&Zn;Wt[18]=Hn^~Yn&Vn;Wt[19]=Cn^~En&Rn;Wt[28]=Un^~Xn&Jn;Wt[29]=Mn^~kn&Ln;Wt[38]=$n^~zn&jn;Wt[39]=el^~Sn&Dn;Wt[48]=cl^~tl≪Wt[49]=il^~nl&al;Wt[0]^=Gn[tn];Wt[1]^=Gn[tn+1]}};if(In){Pt.exports=gn}else{for(vn=0;vn>6!==2){break}an++}return an}if(Wt===rn.OVERRUN){return en.length-Pt-1}return 0}function replaceFunc(Wt,Pt,en,tn,nn){if(Wt===rn.OVERLONG){tn.push(nn);return 0}tn.push(65533);return ignoreFunc(Wt,Pt,en,tn,nn)}Wt.Utf8ErrorFuncs=Object.freeze({error:errorFunc,ignore:ignoreFunc,replace:replaceFunc});function getUtf8CodePoints(en,tn){if(tn==null){tn=Wt.Utf8ErrorFuncs.error}en=(0,Pt.arrayify)(en);var nn=[];var an=0;while(an>7===0){nn.push(In);continue}var sn=null;var on=null;if((In&224)===192){sn=1;on=127}else if((In&240)===224){sn=2;on=2047}else if((In&248)===240){sn=3;on=65535}else{if((In&192)===128){an+=tn(rn.UNEXPECTED_CONTINUE,an-1,en,nn)}else{an+=tn(rn.BAD_PREFIX,an-1,en,nn)}continue}if(an-1+sn>=en.length){an+=tn(rn.OVERRUN,an-1,en,nn);continue}var cn=In&(1<<8-sn-1)-1;for(var dn=0;dn1114111){an+=tn(rn.OUT_OF_RANGE,an-1-sn,en,nn,cn);continue}if(cn>=55296&&cn<=57343){an+=tn(rn.UTF16_SURROGATE,an-1-sn,en,nn,cn);continue}if(cn<=on){an+=tn(rn.OVERLONG,an-1-sn,en,nn,cn);continue}nn.push(cn)}return nn}function toUtf8Bytes(Wt,en){if(en===void 0){en=an.current}if(en!=an.current){nn.checkNormalize();Wt=Wt.normalize(en)}var tn=[];for(var rn=0;rn>6|192);tn.push(In&63|128)}else if((In&64512)==55296){rn++;var sn=Wt.charCodeAt(rn);if(rn>=Wt.length||(sn&64512)!==56320){throw new Error("invalid utf-8 string")}var on=65536+((In&1023)<<10)+(sn&1023);tn.push(on>>18|240);tn.push(on>>12&63|128);tn.push(on>>6&63|128);tn.push(on&63|128)}else{tn.push(In>>12|224);tn.push(In>>6&63|128);tn.push(In&63|128)}}return(0,Pt.arrayify)(tn)}Wt.toUtf8Bytes=toUtf8Bytes;function escapeChar(Wt){var Pt="0000"+Wt.toString(16);return"\\u"+Pt.substring(Pt.length-4)}function _toEscapedUtf8String(Wt,Pt){return'"'+getUtf8CodePoints(Wt,Pt).map((function(Wt){if(Wt<256){switch(Wt){case 8:return"\\b";case 9:return"\\t";case 10:return"\\n";case 13:return"\\r";case 34:return'\\"';case 92:return"\\\\"}if(Wt>=32&&Wt<127){return String.fromCharCode(Wt)}}if(Wt<=65535){return escapeChar(Wt)}Wt-=65536;return escapeChar((Wt>>10&1023)+55296)+escapeChar((Wt&1023)+56320)})).join("")+'"'}Wt._toEscapedUtf8String=_toEscapedUtf8String;function _toUtf8String(Wt){return Wt.map((function(Wt){if(Wt<=65535){return String.fromCharCode(Wt)}Wt-=65536;return String.fromCharCode((Wt>>10&1023)+55296,(Wt&1023)+56320)})).join("")}Wt._toUtf8String=_toUtf8String;function toUtf8String(Wt,Pt){return _toUtf8String(getUtf8CodePoints(Wt,Pt))}Wt.toUtf8String=toUtf8String;function toUtf8CodePoints(Wt,Pt){if(Pt===void 0){Pt=an.current}return getUtf8CodePoints(toUtf8Bytes(Wt,Pt))}Wt.toUtf8CodePoints=toUtf8CodePoints}});var kn=__commonJS({"node_modules/@ethersproject/strings/lib/bytes32.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.parseBytes32String=Wt.formatBytes32String=void 0;var Pt=Qn();var en=pn();var tn=Xn();function formatBytes32String(Wt){var nn=(0,tn.toUtf8Bytes)(Wt);if(nn.length>31){throw new Error("bytes32 string must be less than 32 bytes")}return(0,en.hexlify)((0,en.concat)([nn,Pt.HashZero]).slice(0,32))}Wt.formatBytes32String=formatBytes32String;function parseBytes32String(Wt){var Pt=(0,en.arrayify)(Wt);if(Pt.length!==32){throw new Error("invalid bytes32 - not 32 bytes long")}if(Pt[31]!==0){throw new Error("invalid bytes32 string - no null terminator")}var nn=31;while(Pt[nn-1]===0){nn--}return(0,tn.toUtf8String)(Pt.slice(0,nn))}Wt.parseBytes32String=parseBytes32String}});var Jn=__commonJS({"node_modules/@ethersproject/strings/lib/idna.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.nameprep=Wt._nameprepTableC=Wt._nameprepTableB2=Wt._nameprepTableA1=void 0;var Pt=Xn();function bytes2(Wt){if(Wt.length%4!==0){throw new Error("bad data")}var Pt=[];for(var en=0;en=en&&Wt<=en+nn.h&&(Wt-en)%(nn.d||1)===0){if(nn.e&&nn.e.indexOf(Wt-en)!==-1){continue}return nn}}return null}var en=createRangeTable("221,13-1b,5f-,40-10,51-f,11-3,3-3,2-2,2-4,8,2,15,2d,28-8,88,48,27-,3-5,11-20,27-,8,28,3-5,12,18,b-a,1c-4,6-16,2-d,2-2,2,1b-4,17-9,8f-,10,f,1f-2,1c-34,33-14e,4,36-,13-,6-2,1a-f,4,9-,3-,17,8,2-2,5-,2,8-,3-,4-8,2-3,3,6-,16-6,2-,7-3,3-,17,8,3,3,3-,2,6-3,3-,4-a,5,2-6,10-b,4,8,2,4,17,8,3,6-,b,4,4-,2-e,2-4,b-10,4,9-,3-,17,8,3-,5-,9-2,3-,4-7,3-3,3,4-3,c-10,3,7-2,4,5-2,3,2,3-2,3-2,4-2,9,4-3,6-2,4,5-8,2-e,d-d,4,9,4,18,b,6-3,8,4,5-6,3-8,3-3,b-11,3,9,4,18,b,6-3,8,4,5-6,3-6,2,3-3,b-11,3,9,4,18,11-3,7-,4,5-8,2-7,3-3,b-11,3,13-2,19,a,2-,8-2,2-3,7,2,9-11,4-b,3b-3,1e-24,3,2-,3,2-,2-5,5,8,4,2,2-,3,e,4-,6,2,7-,b-,3-21,49,23-5,1c-3,9,25,10-,2-2f,23,6,3,8-2,5-5,1b-45,27-9,2a-,2-3,5b-4,45-4,53-5,8,40,2,5-,8,2,5-,28,2,5-,20,2,5-,8,2,5-,8,8,18,20,2,5-,8,28,14-5,1d-22,56-b,277-8,1e-2,52-e,e,8-a,18-8,15-b,e,4,3-b,5e-2,b-15,10,b-5,59-7,2b-555,9d-3,5b-5,17-,7-,27-,7-,9,2,2,2,20-,36,10,f-,7,14-,4,a,54-3,2-6,6-5,9-,1c-10,13-1d,1c-14,3c-,10-6,32-b,240-30,28-18,c-14,a0,115-,3,66-,b-76,5,5-,1d,24,2,5-2,2,8-,35-2,19,f-10,1d-3,311-37f,1b,5a-b,d7-19,d-3,41,57-,68-4,29-3,5f,29-37,2e-2,25-c,2c-2,4e-3,30,78-3,64-,20,19b7-49,51a7-59,48e-2,38-738,2ba5-5b,222f-,3c-94,8-b,6-4,1b,6,2,3,3,6d-20,16e-f,41-,37-7,2e-2,11-f,5-b,18-,b,14,5-3,6,88-,2,bf-2,7-,7-,7-,4-2,8,8-9,8-2ff,20,5-b,1c-b4,27-,27-cbb1,f7-9,28-2,b5-221,56,48,3-,2-,3-,5,d,2,5,3,42,5-,9,8,1d,5,6,2-2,8,153-3,123-3,33-27fd,a6da-5128,21f-5df,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3,2-1d,61-ff7d");var tn="ad,34f,1806,180b,180c,180d,200b,200c,200d,2060,feff".split(",").map((function(Wt){return parseInt(Wt,16)}));var nn=[{h:25,s:32,l:65},{h:30,s:32,e:[23],l:127},{h:54,s:1,e:[48],l:64,d:2},{h:14,s:1,l:57,d:2},{h:44,s:1,l:17,d:2},{h:10,s:1,e:[2,6,8],l:61,d:2},{h:16,s:1,l:68,d:2},{h:84,s:1,e:[18,24,66],l:19,d:2},{h:26,s:32,e:[17],l:435},{h:22,s:1,l:71,d:2},{h:15,s:80,l:40},{h:31,s:32,l:16},{h:32,s:1,l:80,d:2},{h:52,s:1,l:42,d:2},{h:12,s:1,l:55,d:2},{h:40,s:1,e:[38],l:15,d:2},{h:14,s:1,l:48,d:2},{h:37,s:48,l:49},{h:148,s:1,l:6351,d:2},{h:88,s:1,l:160,d:2},{h:15,s:16,l:704},{h:25,s:26,l:854},{h:25,s:32,l:55915},{h:37,s:40,l:1247},{h:25,s:-119711,l:53248},{h:25,s:-119763,l:52},{h:25,s:-119815,l:52},{h:25,s:-119867,e:[1,4,5,7,8,11,12,17],l:52},{h:25,s:-119919,l:52},{h:24,s:-119971,e:[2,7,8,17],l:52},{h:24,s:-120023,e:[2,7,13,15,16,17],l:52},{h:25,s:-120075,l:52},{h:25,s:-120127,l:52},{h:25,s:-120179,l:52},{h:25,s:-120231,l:52},{h:25,s:-120283,l:52},{h:25,s:-120335,l:52},{h:24,s:-119543,e:[17],l:56},{h:24,s:-119601,e:[17],l:58},{h:24,s:-119659,e:[17],l:58},{h:24,s:-119717,e:[17],l:58},{h:24,s:-119775,e:[17],l:58}];var an=createTable("b5:3bc,c3:ff,7:73,2:253,5:254,3:256,1:257,5:259,1:25b,3:260,1:263,2:269,1:268,5:26f,1:272,2:275,7:280,3:283,5:288,3:28a,1:28b,5:292,3f:195,1:1bf,29:19e,125:3b9,8b:3b2,1:3b8,1:3c5,3:3c6,1:3c0,1a:3ba,1:3c1,1:3c3,2:3b8,1:3b5,1bc9:3b9,1c:1f76,1:1f77,f:1f7a,1:1f7b,d:1f78,1:1f79,1:1f7c,1:1f7d,107:63,5:25b,4:68,1:68,1:68,3:69,1:69,1:6c,3:6e,4:70,1:71,1:72,1:72,1:72,7:7a,2:3c9,2:7a,2:6b,1:e5,1:62,1:63,3:65,1:66,2:6d,b:3b3,1:3c0,6:64,1b574:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3");var rn=createTable("179:1,2:1,2:1,5:1,2:1,a:4f,a:1,8:1,2:1,2:1,3:1,5:1,3:1,4:1,2:1,3:1,4:1,8:2,1:1,2:2,1:1,2:2,27:2,195:26,2:25,1:25,1:25,2:40,2:3f,1:3f,33:1,11:-6,1:-9,1ac7:-3a,6d:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,b:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,c:-8,2:-8,2:-8,2:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,49:-8,1:-8,1:-4a,1:-4a,d:-56,1:-56,1:-56,1:-56,d:-8,1:-8,f:-8,1:-8,3:-7");var In=createTable("df:00730073,51:00690307,19:02BC006E,a7:006A030C,18a:002003B9,16:03B903080301,20:03C503080301,1d7:05650582,190f:00680331,1:00740308,1:0077030A,1:0079030A,1:006102BE,b6:03C50313,2:03C503130300,2:03C503130301,2:03C503130342,2a:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,3:1F7003B9,1:03B103B9,1:03AC03B9,2:03B10342,1:03B1034203B9,5:03B103B9,6:1F7403B9,1:03B703B9,1:03AE03B9,2:03B70342,1:03B7034203B9,5:03B703B9,6:03B903080300,1:03B903080301,3:03B90342,1:03B903080342,b:03C503080300,1:03C503080301,1:03C10313,2:03C50342,1:03C503080342,b:1F7C03B9,1:03C903B9,1:03CE03B9,2:03C90342,1:03C9034203B9,5:03C903B9,ac:00720073,5b:00B00063,6:00B00066,d:006E006F,a:0073006D,1:00740065006C,1:0074006D,124f:006800700061,2:00610075,2:006F0076,b:00700061,1:006E0061,1:03BC0061,1:006D0061,1:006B0061,1:006B0062,1:006D0062,1:00670062,3:00700066,1:006E0066,1:03BC0066,4:0068007A,1:006B0068007A,1:006D0068007A,1:00670068007A,1:00740068007A,15:00700061,1:006B00700061,1:006D00700061,1:006700700061,8:00700076,1:006E0076,1:03BC0076,1:006D0076,1:006B0076,1:006D0076,1:00700077,1:006E0077,1:03BC0077,1:006D0077,1:006B0077,1:006D0077,1:006B03C9,1:006D03C9,2:00620071,3:00632215006B0067,1:0063006F002E,1:00640062,1:00670079,2:00680070,2:006B006B,1:006B006D,9:00700068,2:00700070006D,1:00700072,2:00730076,1:00770062,c723:00660066,1:00660069,1:0066006C,1:006600660069,1:00660066006C,1:00730074,1:00730074,d:05740576,1:05740565,1:0574056B,1:057E0576,1:0574056D",bytes2);var sn=createRangeTable("80-20,2a0-,39c,32,f71,18e,7f2-f,19-7,30-4,7-5,f81-b,5,a800-20ff,4d1-1f,110,fa-6,d174-7,2e84-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,2,1f-5f,ff7f-20001");function flatten(Wt){return Wt.reduce((function(Wt,Pt){Pt.forEach((function(Pt){Wt.push(Pt)}));return Wt}),[])}function _nameprepTableA1(Wt){return!!matchMap(Wt,en)}Wt._nameprepTableA1=_nameprepTableA1;function _nameprepTableB2(Wt){var Pt=matchMap(Wt,nn);if(Pt){return[Wt+Pt.s]}var en=an[Wt];if(en){return en}var tn=rn[Wt];if(tn){return[Wt+tn[0]]}var sn=In[Wt];if(sn){return sn}return null}Wt._nameprepTableB2=_nameprepTableB2;function _nameprepTableC(Wt){return!!matchMap(Wt,sn)}Wt._nameprepTableC=_nameprepTableC;function nameprep(Wt){if(Wt.match(/^[a-z0-9-]*$/i)&&Wt.length<=59){return Wt.toLowerCase()}var en=(0,Pt.toUtf8CodePoints)(Wt);en=flatten(en.map((function(Wt){if(tn.indexOf(Wt)>=0){return[]}if(Wt>=65024&&Wt<=65039){return[]}var Pt=_nameprepTableB2(Wt);if(Pt){return Pt}return[Wt]})));en=(0,Pt.toUtf8CodePoints)((0,Pt._toUtf8String)(en),Pt.UnicodeNormalizationForm.NFKC);en.forEach((function(Wt){if(_nameprepTableC(Wt)){throw new Error("STRINGPREP_CONTAINS_PROHIBITED")}}));en.forEach((function(Wt){if(_nameprepTableA1(Wt)){throw new Error("STRINGPREP_CONTAINS_UNASSIGNED")}}));var nn=(0,Pt._toUtf8String)(en);if(nn.substring(0,1)==="-"||nn.substring(2,4)==="--"||nn.substring(nn.length-1)==="-"){throw new Error("invalid hyphen")}return nn}Wt.nameprep=nameprep}});var Ln=__commonJS({"node_modules/@ethersproject/strings/lib/index.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.nameprep=Wt.parseBytes32String=Wt.formatBytes32String=Wt.UnicodeNormalizationForm=Wt.Utf8ErrorReason=Wt.Utf8ErrorFuncs=Wt.toUtf8String=Wt.toUtf8CodePoints=Wt.toUtf8Bytes=Wt._toEscapedUtf8String=void 0;var Pt=kn();Object.defineProperty(Wt,"formatBytes32String",{enumerable:true,get:function(){return Pt.formatBytes32String}});Object.defineProperty(Wt,"parseBytes32String",{enumerable:true,get:function(){return Pt.parseBytes32String}});var en=Jn();Object.defineProperty(Wt,"nameprep",{enumerable:true,get:function(){return en.nameprep}});var tn=Xn();Object.defineProperty(Wt,"_toEscapedUtf8String",{enumerable:true,get:function(){return tn._toEscapedUtf8String}});Object.defineProperty(Wt,"toUtf8Bytes",{enumerable:true,get:function(){return tn.toUtf8Bytes}});Object.defineProperty(Wt,"toUtf8CodePoints",{enumerable:true,get:function(){return tn.toUtf8CodePoints}});Object.defineProperty(Wt,"toUtf8String",{enumerable:true,get:function(){return tn.toUtf8String}});Object.defineProperty(Wt,"UnicodeNormalizationForm",{enumerable:true,get:function(){return tn.UnicodeNormalizationForm}});Object.defineProperty(Wt,"Utf8ErrorFuncs",{enumerable:true,get:function(){return tn.Utf8ErrorFuncs}});Object.defineProperty(Wt,"Utf8ErrorReason",{enumerable:true,get:function(){return tn.Utf8ErrorReason}})}});var Bn=__commonJS({"node_modules/@ethersproject/hash/lib/id.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.id=void 0;var Pt=Hn();var en=Ln();function id(Wt){return(0,Pt.keccak256)((0,en.toUtf8Bytes)(Wt))}Wt.id=id}});var xn=__commonJS({"node_modules/@ethersproject/hash/lib/_version.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.version=void 0;Wt.version="hash/5.7.0"}});var On=__commonJS({"node_modules/@ethersproject/hash/lib/ens-normalize/decoder.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.read_emoji_trie=Wt.read_zero_terminated_array=Wt.read_mapped_map=Wt.read_member_array=Wt.signed=Wt.read_compressed_payload=Wt.read_payload=Wt.decode_arithmetic=void 0;function flat(Wt,Pt){if(Pt==null){Pt=1}var en=[];var tn=en.forEach;var flatDeep=function(Wt,Pt){tn.call(Wt,(function(Wt){if(Pt>0&&Array.isArray(Wt)){flatDeep(Wt,Pt-1)}else{en.push(Wt)}}))};flatDeep(Wt,Pt);return en}function fromEntries(Wt){var Pt={};for(var en=0;en>--sn&1}var cn=31;var dn=Math.pow(2,cn);var un=dn>>>1;var pn=un>>1;var mn=dn-1;var bn=0;for(var an=0;an1){var gn=Wn+Nn>>>1;if(An>>1|read_bit();yn=yn<<1^un;vn=(vn^un)<<1|un|1}hn=yn;Zn=1+vn-yn}var Yn=en-4;return Gn.map((function(Pt){switch(Pt-Yn){case 3:return Yn+65792+(Wt[In++]<<16|Wt[In++]<<8|Wt[In++]);case 2:return Yn+256+(Wt[In++]<<8|Wt[In++]);case 1:return Yn+Wt[In++];default:return Pt-1}}))}Wt.decode_arithmetic=decode_arithmetic;function read_payload(Wt){var Pt=0;return function(){return Wt[Pt++]}}Wt.read_payload=read_payload;function read_compressed_payload(Wt){return read_payload(decode_arithmetic(Wt))}Wt.read_compressed_payload=read_compressed_payload;function signed(Wt){return Wt&1?~Wt>>1:Wt>>1}Wt.signed=signed;function read_counts(Wt,Pt){var en=Array(Wt);for(var tn=0;tn>=1;var In=nn==1;var sn=nn==2;return{branches:en,valid:an,fe0f:rn,save:In,check:sn}}}Wt.read_emoji_trie=read_emoji_trie}});var Tn=__commonJS({"node_modules/@ethersproject/hash/lib/ens-normalize/include.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.getData=void 0;var Pt=Yn();var en=On();function getData(){return(0,en.read_compressed_payload)((0,Pt.decode)("AEQF2AO2DEsA2wIrAGsBRABxAN8AZwCcAEwAqgA0AGwAUgByADcATAAVAFYAIQAyACEAKAAYAFgAGwAjABQAMAAmADIAFAAfABQAKwATACoADgAbAA8AHQAYABoAGQAxADgALAAoADwAEwA9ABMAGgARAA4ADwAWABMAFgAIAA8AHgQXBYMA5BHJAS8JtAYoAe4AExozi0UAH21tAaMnBT8CrnIyhrMDhRgDygIBUAEHcoFHUPe8AXBjAewCjgDQR8IICIcEcQLwATXCDgzvHwBmBoHNAqsBdBcUAykgDhAMShskMgo8AY8jqAQfAUAfHw8BDw87MioGlCIPBwZCa4ELatMAAMspJVgsDl8AIhckSg8XAHdvTwBcIQEiDT4OPhUqbyECAEoAS34Aej8Ybx83JgT/Xw8gHxZ/7w8RICxPHA9vBw+Pfw8PHwAPFv+fAsAvCc8vEr8ivwD/EQ8Bol8OEBa/A78hrwAPCU8vESNvvwWfHwNfAVoDHr+ZAAED34YaAdJPAK7PLwSEgDLHAGo1Pz8Pvx9fUwMrpb8O/58VTzAPIBoXIyQJNF8hpwIVAT8YGAUADDNBaX3RAMomJCg9EhUeA29MABsZBTMNJipjOhc19gcIDR8bBwQHEggCWi6DIgLuAQYA+BAFCha3A5XiAEsqM7UFFgFLhAMjFTMYE1Klnw74nRVBG/ASCm0BYRN/BrsU3VoWy+S0vV8LQx+vN8gF2AC2AK5EAWwApgYDKmAAroQ0NDQ0AT+OCg7wAAIHRAbpNgVcBV0APTA5BfbPFgMLzcYL/QqqA82eBALKCjQCjqYCht0/k2+OAsXQAoP3ASTKDgDw6ACKAUYCMpIKJpRaAE4A5womABzZvs0REEKiACIQAd5QdAECAj4Ywg/wGqY2AVgAYADYvAoCGAEubA0gvAY2ALAAbpbvqpyEAGAEpgQAJgAG7gAgAEACmghUFwCqAMpAINQIwC4DthRAAPcycKgApoIdABwBfCisABoATwBqASIAvhnSBP8aH/ECeAKXAq40NjgDBTwFYQU6AXs3oABgAD4XNgmcCY1eCl5tIFZeUqGgyoNHABgAEQAaABNwWQAmABMATPMa3T34ADldyprmM1M2XociUQgLzvwAXT3xABgAEQAaABNwIGFAnADD8AAgAD4BBJWzaCcIAIEBFMAWwKoAAdq9BWAF5wLQpALEtQAKUSGkahR4GnJM+gsAwCgeFAiUAECQ0BQuL8AAIAAAADKeIheclvFqQAAETr4iAMxIARMgAMIoHhQIAn0E0pDQFC4HhznoAAAAIAI2C0/4lvFqQAAETgBJJwYCAy4ABgYAFAA8MBKYEH4eRhTkAjYeFcgACAYAeABsOqyQ5gRwDayqugEgaIIAtgoACgDmEABmBAWGme5OBJJA2m4cDeoAmITWAXwrMgOgAGwBCh6CBXYF1Tzg1wKAAFdiuABRAFwAXQBsAG8AdgBrAHYAbwCEAHEwfxQBVE5TEQADVFhTBwBDANILAqcCzgLTApQCrQL6vAAMAL8APLhNBKkE6glGKTAU4Dr4N2EYEwBCkABKk8rHAbYBmwIoAiU4Ajf/Aq4CowCAANIChzgaNBsCsTgeODcFXrgClQKdAqQBiQGYAqsCsjTsNHsfNPA0ixsAWTWiOAMFPDQSNCk2BDZHNow2TTZUNhk28Jk9VzI3QkEoAoICoQKwAqcAQAAxBV4FXbS9BW47YkIXP1ciUqs05DS/FwABUwJW11e6nHuYZmSh/RAYA8oMKvZ8KASoUAJYWAJ6ILAsAZSoqjpgA0ocBIhmDgDWAAawRDQoAAcuAj5iAHABZiR2AIgiHgCaAU68ACxuHAG0ygM8MiZIAlgBdF4GagJqAPZOHAMuBgoATkYAsABiAHgAMLoGDPj0HpKEBAAOJgAuALggTAHWAeAMEDbd20Uege0ADwAWADkAQgA9OHd+2MUQZBBhBgNNDkxxPxUQArEPqwvqERoM1irQ090ANK4H8ANYB/ADWANYB/AH8ANYB/ADWANYA1gDWBwP8B/YxRBkD00EcgWTBZAE2wiIJk4RhgctCNdUEnQjHEwDSgEBIypJITuYMxAlR0wRTQgIATZHbKx9PQNMMbBU+pCnA9AyVDlxBgMedhKlAC8PeCE1uk6DekxxpQpQT7NX9wBFBgASqwAS5gBJDSgAUCwGPQBI4zTYABNGAE2bAE3KAExdGABKaAbgAFBXAFCOAFBJABI2SWdObALDOq0//QomCZhvwHdTBkIQHCemEPgMNAG2ATwN7kvZBPIGPATKH34ZGg/OlZ0Ipi3eDO4m5C6igFsj9iqEBe5L9TzeC05RaQ9aC2YJ5DpkgU8DIgEOIowK3g06CG4Q9ArKbA3mEUYHOgPWSZsApgcCCxIdNhW2JhFirQsKOXgG/Br3C5AmsBMqev0F1BoiBk4BKhsAANAu6IWxWjJcHU9gBgQLJiPIFKlQIQ0mQLh4SRocBxYlqgKSQ3FKiFE3HpQh9zw+DWcuFFF9B/Y8BhlQC4I8n0asRQ8R0z6OPUkiSkwtBDaALDAnjAnQD4YMunxzAVoJIgmyDHITMhEYN8YIOgcaLpclJxYIIkaWYJsE+KAD9BPSAwwFQAlCBxQDthwuEy8VKgUOgSXYAvQ21i60ApBWgQEYBcwPJh/gEFFH4Q7qCJwCZgOEJewALhUiABginAhEZABgj9lTBi7MCMhqbSN1A2gU6GIRdAeSDlgHqBw0FcAc4nDJXgyGCSiksAlcAXYJmgFgBOQICjVcjKEgQmdUi1kYnCBiQUBd/QIyDGYVoES+h3kCjA9sEhwBNgF0BzoNAgJ4Ee4RbBCWCOyGBTW2M/k6JgRQIYQgEgooA1BszwsoJvoM+WoBpBJjAw00PnfvZ6xgtyUX/gcaMsZBYSHyC5NPzgydGsIYQ1QvGeUHwAP0GvQn60FYBgADpAQUOk4z7wS+C2oIjAlAAEoOpBgH2BhrCnKM0QEyjAG4mgNYkoQCcJAGOAcMAGgMiAV65gAeAqgIpAAGANADWAA6Aq4HngAaAIZCAT4DKDABIuYCkAOUCDLMAZYwAfQqBBzEDBYA+DhuSwLDsgKAa2ajBd5ZAo8CSjYBTiYEBk9IUgOwcuIA3ABMBhTgSAEWrEvMG+REAeBwLADIAPwABjYHBkIBzgH0bgC4AWALMgmjtLYBTuoqAIQAFmwB2AKKAN4ANgCA8gFUAE4FWvoF1AJQSgESMhksWGIBvAMgATQBDgB6BsyOpsoIIARuB9QCEBwV4gLvLwe2AgMi4BPOQsYCvd9WADIXUu5eZwqoCqdeaAC0YTQHMnM9UQAPH6k+yAdy/BZIiQImSwBQ5gBQQzSaNTFWSTYBpwGqKQK38AFtqwBI/wK37gK3rQK3sAK6280C0gK33AK3zxAAUEIAUD9SklKDArekArw5AEQAzAHCO147WTteO1k7XjtZO147WTteO1kDmChYI03AVU0oJqkKbV9GYewMpw3VRMk6ShPcYFJgMxPJLbgUwhXPJVcZPhq9JwYl5VUKDwUt1GYxCC00dhe9AEApaYNCY4ceMQpMHOhTklT5LRwAskujM7ANrRsWREEFSHXuYisWDwojAmSCAmJDXE6wXDchAqH4AmiZAmYKAp+FOBwMAmY8AmYnBG8EgAN/FAN+kzkHOXgYOYM6JCQCbB4CMjc4CwJtyAJtr/CLADRoRiwBaADfAOIASwYHmQyOAP8MwwAOtgJ3MAJ2o0ACeUxEAni7Hl3cRa9G9AJ8QAJ6yQJ9CgJ88UgBSH5kJQAsFklZSlwWGErNAtECAtDNSygDiFADh+dExpEzAvKiXQQDA69Lz0wuJgTQTU1NsAKLQAKK2cIcCB5EaAa4Ao44Ao5dQZiCAo7aAo5deVG1UzYLUtVUhgKT/AKTDQDqAB1VH1WwVdEHLBwplocy4nhnRTw6ApegAu+zWCKpAFomApaQApZ9nQCqWa1aCoJOADwClrYClk9cRVzSApnMApllXMtdCBoCnJw5wzqeApwXAp+cAp65iwAeEDIrEAKd8gKekwC2PmE1YfACntQCoG8BqgKeoCACnk+mY8lkKCYsAiewAiZ/AqD8AqBN2AKmMAKlzwKoAAB+AqfzaH1osgAESmodatICrOQCrK8CrWgCrQMCVx4CVd0CseLYAx9PbJgCsr4OArLpGGzhbWRtSWADJc4Ctl08QG6RAylGArhfArlIFgK5K3hwN3DiAr0aAy2zAzISAr6JcgMDM3ICvhtzI3NQAsPMAsMFc4N0TDZGdOEDPKgDPJsDPcACxX0CxkgCxhGKAshqUgLIRQLJUALJLwJkngLd03h6YniveSZL0QMYpGcDAmH1GfSVJXsMXpNevBICz2wCz20wTFTT9BSgAMeuAs90ASrrA04TfkwGAtwoAtuLAtJQA1JdA1NgAQIDVY2AikABzBfuYUZ2AILPg44C2sgC2d+EEYRKpz0DhqYAMANkD4ZyWvoAVgLfZgLeuXR4AuIw7RUB8zEoAfScAfLTiALr9ALpcXoAAur6AurlAPpIAboC7ooC652Wq5cEAu5AA4XhmHpw4XGiAvMEAGoDjheZlAL3FAORbwOSiAL3mQL52gL4Z5odmqy8OJsfA52EAv77ARwAOp8dn7QDBY4DpmsDptoA0sYDBmuhiaIGCgMMSgFgASACtgNGAJwEgLpoBgC8BGzAEowcggCEDC6kdjoAJAM0C5IKRoABZCgiAIzw3AYBLACkfng9ogigkgNmWAN6AEQCvrkEVqTGAwCsBRbAA+4iQkMCHR072jI2PTbUNsk2RjY5NvA23TZKNiU3EDcZN5I+RTxDRTBCJkK5VBYKFhZfwQCWygU3AJBRHpu+OytgNxa61A40GMsYjsn7BVwFXQVcBV0FaAVdBVwFXQVcBV0FXAVdBVwFXUsaCNyKAK4AAQUHBwKU7oICoW1e7jAEzgPxA+YDwgCkBFDAwADABKzAAOxFLhitA1UFTDeyPkM+bj51QkRCuwTQWWQ8X+0AWBYzsACNA8xwzAGm7EZ/QisoCTAbLDs6fnLfb8H2GccsbgFw13M1HAVkBW/Jxsm9CNRO8E8FDD0FBQw9FkcClOYCoMFegpDfADgcMiA2AJQACB8AsigKAIzIEAJKeBIApY5yPZQIAKQiHb4fvj5BKSRPQrZCOz0oXyxgOywfKAnGbgMClQaCAkILXgdeCD9IIGUgQj5fPoY+dT52Ao5CM0dAX9BTVG9SDzFwWTQAbxBzJF/lOEIQQglCCkKJIAls5AcClQICoKPMODEFxhi6KSAbiyfIRrMjtCgdWCAkPlFBIitCsEJRzAbMAV/OEyQzDg0OAQQEJ36i328/Mk9AybDJsQlq3tDRApUKAkFzXf1d/j9uALYP6hCoFgCTGD8kPsFKQiobrm0+zj0KSD8kPnVCRBwMDyJRTHFgMTJa5rwXQiQ2YfI/JD7BMEJEHGINTw4TOFlIRzwJO0icMQpyPyQ+wzJCRBv6DVgnKB01NgUKj2bwYzMqCoBkznBgEF+zYDIocwRIX+NgHj4HICNfh2C4CwdwFWpTG/lgUhYGAwRfv2Ts8mAaXzVgml/XYIJfuWC4HI1gUF9pYJZgMR6ilQHMAOwLAlDRefC0in4AXAEJA6PjCwc0IamOANMMCAECRQDFNRTZBgd+CwQlRA+r6+gLBDEFBnwUBXgKATIArwAGRAAHA3cDdAN2A3kDdwN9A3oDdQN7A30DfAN4A3oDfQAYEAAlAtYASwMAUAFsAHcKAHcAmgB3AHUAdQB2AHVu8UgAygDAAHcAdQB1AHYAdQALCgB3AAsAmgB3AAsCOwB3AAtu8UgAygDAAHgKAJoAdwB3AHUAdQB2AHUAeAB1AHUAdgB1bvFIAMoAwAALCgCaAHcACwB3AAsCOwB3AAtu8UgAygDAAH4ACwGgALcBpwC6AahdAu0COwLtbvFIAMoAwAALCgCaAu0ACwLtAAsCOwLtAAtu8UgAygDAA24ACwNvAAu0VsQAAzsAABCkjUIpAAsAUIusOggWcgMeBxVsGwL67U/2HlzmWOEeOgALASvuAAseAfpKUpnpGgYJDCIZM6YyARUE9ThqAD5iXQgnAJYJPnOzw0ZAEZxEKsIAkA4DhAHnTAIDxxUDK0lxCQlPYgIvIQVYJQBVqE1GakUAKGYiDToSBA1EtAYAXQJYAIF8GgMHRyAAIAjOe9YncekRAA0KACUrjwE7Ayc6AAYWAqaiKG4McEcqANoN3+Mg9TwCBhIkuCny+JwUQ29L008JluRxu3K+oAdqiHOqFH0AG5SUIfUJ5SxCGfxdipRzqTmT4V5Zb+r1Uo4Vm+NqSSEl2mNvR2JhIa8SpYO6ntdwFXHCWTCK8f2+Hxo7uiG3drDycAuKIMP5bhi06ACnqArH1rz4Rqg//lm6SgJGEVbF9xJHISaR6HxqxSnkw6shDnelHKNEfGUXSJRJ1GcsmtJw25xrZMDK9gXSm1/YMkdX4/6NKYOdtk/NQ3/NnDASjTc3fPjIjW/5sVfVObX2oTDWkr1dF9f3kxBsD3/3aQO8hPfRz+e0uEiJqt1161griu7gz8hDDwtpy+F+BWtefnKHZPAxcZoWbnznhJpy0e842j36bcNzGnIEusgGX0a8ZxsnjcSsPDZ09yZ36fCQbriHeQ72JRMILNl6ePPf2HWoVwgWAm1fb3V2sAY0+B6rAXqSwPBgseVmoqsBTSrm91+XasMYYySI8eeRxH3ZvHkMz3BQ5aJ3iUVbYPNM3/7emRtjlsMgv/9VyTsyt/mK+8fgWeT6SoFaclXqn42dAIsvAarF5vNNWHzKSkKQ/8Hfk5ZWK7r9yliOsooyBjRhfkHP4Q2DkWXQi6FG/9r/IwbmkV5T7JSopHKn1pJwm9tb5Ot0oyN1Z2mPpKXHTxx2nlK08fKk1hEYA8WgVVWL5lgx0iTv+KdojJeU23ZDjmiubXOxVXJKKi2Wjuh2HLZOFLiSC7Tls5SMh4f+Pj6xUSrNjFqLGehRNB8lC0QSLNmkJJx/wSG3MnjE9T1CkPwJI0wH2lfzwETIiVqUxg0dfu5q39Gt+hwdcxkhhNvQ4TyrBceof3Mhs/IxFci1HmHr4FMZgXEEczPiGCx0HRwzAqDq2j9AVm1kwN0mRVLWLylgtoPNapF5cY4Y1wJh/e0BBwZj44YgZrDNqvD/9Hv7GFYdUQeDJuQ3EWI4HaKqavU1XjC/n41kT4L79kqGq0kLhdTZvgP3TA3fS0ozVz+5piZsoOtIvBUFoMKbNcmBL6YxxaUAusHB38XrS8dQMnQwJfUUkpRoGr5AUeWicvBTzyK9g77+yCkf5PAysL7r/JjcZgrbvRpMW9iyaxZvKO6ceZN2EwIxKwVFPuvFuiEPGCoagbMo+SpydLrXqBzNCDGFCrO/rkcwa2xhokQZ5CdZ0AsU3JfSqJ6n5I14YA+P/uAgfhPU84Tlw7cEFfp7AEE8ey4sP12PTt4Cods1GRgDOB5xvyiR5m+Bx8O5nBCNctU8BevfV5A08x6RHd5jcwPTMDSZJOedIZ1cGQ704lxbAzqZOP05ZxaOghzSdvFBHYqomATARyAADK4elP8Ly3IrUZKfWh23Xy20uBUmLS4Pfagu9+oyVa2iPgqRP3F2CTUsvJ7+RYnN8fFZbU/HVvxvcFFDKkiTqV5UBZ3Gz54JAKByi9hkKMZJvuGgcSYXFmw08UyoQyVdfTD1/dMkCHXcTGAKeROgArsvmRrQTLUOXioOHGK2QkjHuoYFgXciZoTJd6Fs5q1QX1G+p/e26hYsEf7QZD1nnIyl/SFkNtYYmmBhpBrxl9WbY0YpHWRuw2Ll/tj9mD8P4snVzJl4F9J+1arVeTb9E5r2ILH04qStjxQNwn3m4YNqxmaNbLAqW2TN6LidwuJRqS+NXbtqxoeDXpxeGWmxzSkWxjkyCkX4NQRme6q5SAcC+M7+9ETfA/EwrzQajKakCwYyeunP6ZFlxU2oMEn1Pz31zeStW74G406ZJFCl1wAXIoUKkWotYEpOuXB1uVNxJ63dpJEqfxBeptwIHNrPz8BllZoIcBoXwgfJ+8VAUnVPvRvexnw0Ma/WiGYuJO5y8QTvEYBigFmhUxY5RqzE8OcywN/8m4UYrlaniJO75XQ6KSo9+tWHlu+hMi0UVdiKQp7NelnoZUzNaIyBPVeOwK6GNp+FfHuPOoyhaWuNvTYFkvxscMQWDh+zeFCFkgwbXftiV23ywJ4+uwRqmg9k3KzwIQpzppt8DBBOMbrqwQM5Gb05sEwdKzMiAqOloaA/lr0KA+1pr0/+HiWoiIjHA/wir2nIuS3PeU/ji3O6ZwoxcR1SZ9FhtLC5S0FIzFhbBWcGVP/KpxOPSiUoAdWUpqKH++6Scz507iCcxYI6rdMBICPJZea7OcmeFw5mObJSiqpjg2UoWNIs+cFhyDSt6geV5qgi3FunmwwDoGSMgerFOZGX1m0dMCYo5XOruxO063dwENK9DbnVM9wYFREzh4vyU1WYYJ/LRRp6oxgjqP/X5a8/4Af6p6NWkQferzBmXme0zY/4nwMJm/wd1tIqSwGz+E3xPEAOoZlJit3XddD7/BT1pllzOx+8bmQtANQ/S6fZexc6qi3W+Q2xcmXTUhuS5mpHQRvcxZUN0S5+PL9lXWUAaRZhEH8hTdAcuNMMCuVNKTEGtSUKNi3O6KhSaTzck8csZ2vWRZ+d7mW8c4IKwXIYd25S/zIftPkwPzufjEvOHWVD1m+FjpDVUTV0DGDuHj6QnaEwLu/dEgdLQOg9E1Sro9XHJ8ykLAwtPu+pxqKDuFexqON1sKQm7rwbE1E68UCfA/erovrTCG+DBSNg0l4goDQvZN6uNlbyLpcZAwj2UclycvLpIZMgv4yRlpb3YuMftozorbcGVHt/VeDV3+Fdf1TP0iuaCsPi2G4XeGhsyF1ubVDxkoJhmniQ0/jSg/eYML9KLfnCFgISWkp91eauR3IQvED0nAPXK+6hPCYs+n3+hCZbiskmVMG2da+0EsZPonUeIY8EbfusQXjsK/eFDaosbPjEfQS0RKG7yj5GG69M7MeO1HmiUYocgygJHL6M1qzUDDwUSmr99V7Sdr2F3JjQAJY+F0yH33Iv3+C9M38eML7gTgmNu/r2bUMiPvpYbZ6v1/IaESirBHNa7mPKn4dEmYg7v/+HQgPN1G79jBQ1+soydfDC2r+h2Bl/KIc5KjMK7OH6nb1jLsNf0EHVe2KBiE51ox636uyG6Lho0t3J34L5QY/ilE3mikaF4HKXG1mG1rCevT1Vv6GavltxoQe/bMrpZvRggnBxSEPEeEzkEdOxTnPXHVjUYdw8JYvjB/o7Eegc3Ma+NUxLLnsK0kJlinPmUHzHGtrk5+CAbVzFOBqpyy3QVUnzTDfC/0XD94/okH+OB+i7g9lolhWIjSnfIb+Eq43ZXOWmwvjyV/qqD+t0e+7mTEM74qP/Ozt8nmC7mRpyu63OB4KnUzFc074SqoyPUAgM+/TJGFo6T44EHnQU4X4z6qannVqgw/U7zCpwcmXV1AubIrvOmkKHazJAR55ePjp5tLBsN8vAqs3NAHdcEHOR2xQ0lsNAFzSUuxFQCFYvXLZJdOj9p4fNq6p0HBGUik2YzaI4xySy91KzhQ0+q1hjxvImRwPRf76tChlRkhRCi74NXZ9qUNeIwP+s5p+3m5nwPdNOHgSLD79n7O9m1n1uDHiMntq4nkYwV5OZ1ENbXxFd4PgrlvavZsyUO4MqYlqqn1O8W/I1dEZq5dXhrbETLaZIbC2Kj/Aa/QM+fqUOHdf0tXAQ1huZ3cmWECWSXy/43j35+Mvq9xws7JKseriZ1pEWKc8qlzNrGPUGcVgOa9cPJYIJsGnJTAUsEcDOEVULO5x0rXBijc1lgXEzQQKhROf8zIV82w8eswc78YX11KYLWQRcgHNJElBxfXr72lS2RBSl07qTKorO2uUDZr3sFhYsvnhLZn0A94KRzJ/7DEGIAhW5ZWFpL8gEwu1aLA9MuWZzNwl8Oze9Y+bX+v9gywRVnoB5I/8kXTXU3141yRLYrIOOz6SOnyHNy4SieqzkBXharjfjqq1q6tklaEbA8Qfm2DaIPs7OTq/nvJBjKfO2H9bH2cCMh1+5gspfycu8f/cuuRmtDjyqZ7uCIMyjdV3a+p3fqmXsRx4C8lujezIFHnQiVTXLXuI1XrwN3+siYYj2HHTvESUx8DlOTXpak9qFRK+L3mgJ1WsD7F4cu1aJoFoYQnu+wGDMOjJM3kiBQWHCcvhJ/HRdxodOQp45YZaOTA22Nb4XKCVxqkbwMYFhzYQYIAnCW8FW14uf98jhUG2zrKhQQ0q0CEq0t5nXyvUyvR8DvD69LU+g3i+HFWQMQ8PqZuHD+sNKAV0+M6EJC0szq7rEr7B5bQ8BcNHzvDMc9eqB5ZCQdTf80Obn4uzjwpYU7SISdtV0QGa9D3Wrh2BDQtpBKxaNFV+/Cy2P/Sv+8s7Ud0Fd74X4+o/TNztWgETUapy+majNQ68Lq3ee0ZO48VEbTZYiH1Co4OlfWef82RWeyUXo7woM03PyapGfikTnQinoNq5z5veLpeMV3HCAMTaZmA1oGLAn7XS3XYsz+XK7VMQsc4XKrmDXOLU/pSXVNUq8dIqTba///3x6LiLS6xs1xuCAYSfcQ3+rQgmu7uvf3THKt5Ooo97TqcbRqxx7EASizaQCBQllG/rYxVapMLgtLbZS64w1MDBMXX+PQpBKNwqUKOf2DDRDUXQf9EhOS0Qj4nTmlA8dzSLz/G1d+Ud8MTy/6ghhdiLpeerGY/UlDOfiuqFsMUU5/UYlP+BAmgRLuNpvrUaLlVkrqDievNVEAwF+4CoM1MZTmjxjJMsKJq+u8Zd7tNCUFy6LiyYXRJQ4VyvEQFFaCGKsxIwQkk7EzZ6LTJq2hUuPhvAW+gQnSG6J+MszC+7QCRHcnqDdyNRJ6T9xyS87A6MDutbzKGvGktpbXqtzWtXb9HsfK2cBMomjN9a4y+TaJLnXxAeX/HWzmf4cR4vALt/P4w4qgKY04ml4ZdLOinFYS6cup3G/1ie4+t1eOnpBNlqGqs75ilzkT4+DsZQxNvaSKJ//6zIbbk/M7LOhFmRc/1R+kBtz7JFGdZm/COotIdvQoXpTqP/1uqEUmCb/QWoGLMwO5ANcHzxdY48IGP5+J+zKOTBFZ4Pid+GTM+Wq12MV/H86xEJptBa6T+p3kgpwLedManBHC2GgNrFpoN2xnrMz9WFWX/8/ygSBkavq2Uv7FdCsLEYLu9LLIvAU0bNRDtzYl+/vXmjpIvuJFYjmI0im6QEYqnIeMsNjXG4vIutIGHijeAG/9EDBozKV5cldkHbLxHh25vT+ZEzbhXlqvpzKJwcEgfNwLAKFeo0/pvEE10XDB+EXRTXtSzJozQKFFAJhMxYkVaCW+E9AL7tMeU8acxidHqzb6lX4691UsDpy/LLRmT+epgW56+5Cw8tB4kMUv6s9lh3eRKbyGs+H/4mQMaYzPTf2OOdokEn+zzgvoD3FqNKk8QqGAXVsqcGdXrT62fSPkR2vROFi68A6se86UxRUk4cajfPyCC4G5wDhD+zNq4jodQ4u4n/m37Lr36n4LIAAsVr02dFi9AiwA81MYs2rm4eDlDNmdMRvEKRHfBwW5DdMNp0jPFZMeARqF/wL4XBfd+EMLBfMzpH5GH6NaW+1vrvMdg+VxDzatk3MXgO3ro3P/DpcC6+Mo4MySJhKJhSR01SGGGp5hPWmrrUgrv3lDnP+HhcI3nt3YqBoVAVTBAQT5iuhTg8nvPtd8ZeYj6w1x6RqGUBrSku7+N1+BaasZvjTk64RoIDlL8brpEcJx3OmY7jLoZsswdtmhfC/G21llXhITOwmvRDDeTTPbyASOa16cF5/A1fZAidJpqju3wYAy9avPR1ya6eNp9K8XYrrtuxlqi+bDKwlfrYdR0RRiKRVTLOH85+ZY7XSmzRpfZBJjaTa81VDcJHpZnZnSQLASGYW9l51ZV/h7eVzTi3Hv6hUsgc/51AqJRTkpbFVLXXszoBL8nBX0u/0jBLT8nH+fJePbrwURT58OY+UieRjd1vs04w0VG5VN2U6MoGZkQzKN/ptz0Q366dxoTGmj7i1NQGHi9GgnquXFYdrCfZBmeb7s0T6yrdlZH5cZuwHFyIJ/kAtGsTg0xH5taAAq44BAk1CPk9KVVbqQzrCUiFdF/6gtlPQ8bHHc1G1W92MXGZ5HEHftyLYs8mbD/9xYRUWkHmlM0zC2ilJlnNgV4bfALpQghxOUoZL7VTqtCHIaQSXm+YUMnpkXybnV+A6xlm2CVy8fn0Xlm2XRa0+zzOa21JWWmixfiPMSCZ7qA4rS93VN3pkpF1s5TonQjisHf7iU9ZGvUPOAKZcR1pbeVf/Ul7OhepGCaId9wOtqo7pJ7yLcBZ0pFkOF28y4zEI/kcUNmutBHaQpBdNM8vjCS6HZRokkeo88TBAjGyG7SR+6vUgTcyK9Imalj0kuxz0wmK+byQU11AiJFk/ya5dNduRClcnU64yGu/ieWSeOos1t3ep+RPIWQ2pyTYVbZltTbsb7NiwSi3AV+8KLWk7LxCnfZUetEM8ThnsSoGH38/nyAwFguJp8FjvlHtcWZuU4hPva0rHfr0UhOOJ/F6vS62FW7KzkmRll2HEc7oUq4fyi5T70Vl7YVIfsPHUCdHesf9Lk7WNVWO75JDkYbMI8TOW8JKVtLY9d6UJRITO8oKo0xS+o99Yy04iniGHAaGj88kEWgwv0OrHdY/nr76DOGNS59hXCGXzTKUvDl9iKpLSWYN1lxIeyywdNpTkhay74w2jFT6NS8qkjo5CxA1yfSYwp6AJIZNKIeEK5PJAW7ORgWgwp0VgzYpqovMrWxbu+DGZ6Lhie1RAqpzm8VUzKJOH3mCzWuTOLsN3VT/dv2eeYe9UjbR8YTBsLz7q60VN1sU51k+um1f8JxD5pPhbhSC8rRaB454tmh6YUWrJI3+GWY0qeWioj/tbkYITOkJaeuGt4JrJvHA+l0Gu7kY7XOaa05alMnRWVCXqFgLIwSY4uF59Ue5SU4QKuc/HamDxbr0x6csCetXGoP7Qn1Bk/J9DsynO/UD6iZ1Hyrz+jit0hDCwi/E9OjgKTbB3ZQKQ/0ZOvevfNHG0NK4Aj3Cp7NpRk07RT1i/S0EL93Ag8GRgKI9CfpajKyK6+Jj/PI1KO5/85VAwz2AwzP8FTBb075IxCXv6T9RVvWT2tUaqxDS92zrGUbWzUYk9mSs82pECH+fkqsDt93VW++4YsR/dHCYcQSYTO/KaBMDj9LSD/J/+z20Kq8XvZUAIHtm9hRPP3ItbuAu2Hm5lkPs92pd7kCxgRs0xOVBnZ13ccdA0aunrwv9SdqElJRC3g+oCu+nXyCgmXUs9yMjTMAIHfxZV+aPKcZeUBWt057Xo85Ks1Ir5gzEHCWqZEhrLZMuF11ziGtFQUds/EESajhagzcKsxamcSZxGth4UII+adPhQkUnx2WyN+4YWR+r3f8MnkyGFuR4zjzxJS8WsQYR5PTyRaD9ixa6Mh741nBHbzfjXHskGDq179xaRNrCIB1z1xRfWfjqw2pHc1zk9xlPpL8sQWAIuETZZhbnmL54rceXVNRvUiKrrqIkeogsl0XXb17ylNb0f4GA9Wd44vffEG8FSZGHEL2fbaTGRcSiCeA8PmA/f6Hz8HCS76fXUHwgwkzSwlI71ekZ7Fapmlk/KC+Hs8hUcw3N2LN5LhkVYyizYFl/uPeVP5lsoJHhhfWvvSWruCUW1ZcJOeuTbrDgywJ/qG07gZJplnTvLcYdNaH0KMYOYMGX+rB4NGPFmQsNaIwlWrfCezxre8zXBrsMT+edVLbLqN1BqB76JH4BvZTqUIMfGwPGEn+EnmTV86fPBaYbFL3DFEhjB45CewkXEAtJxk4/Ms2pPXnaRqdky0HOYdcUcE2zcXq4vaIvW2/v0nHFJH2XXe22ueDmq/18XGtELSq85j9X8q0tcNSSKJIX8FTuJF/Pf8j5PhqG2u+osvsLxYrvvfeVJL+4tkcXcr9JV7v0ERmj/X6fM3NC4j6dS1+9Umr2oPavqiAydTZPLMNRGY23LO9zAVDly7jD+70G5TPPLdhRIl4WxcYjLnM+SNcJ26FOrkrISUtPObIz5Zb3AG612krnpy15RMW+1cQjlnWFI6538qky9axd2oJmHIHP08KyP0ubGO+TQNOYuv2uh17yCIvR8VcStw7o1g0NM60sk+8Tq7YfIBJrtp53GkvzXH7OA0p8/n/u1satf/VJhtR1l8Wa6Gmaug7haSpaCaYQax6ta0mkutlb+eAOSG1aobM81D9A4iS1RRlzBBoVX6tU1S6WE2N9ORY6DfeLRC4l9Rvr5h95XDWB2mR1d4WFudpsgVYwiTwT31ljskD8ZyDOlm5DkGh9N/UB/0AI5Xvb8ZBmai2hQ4BWMqFwYnzxwB26YHSOv9WgY3JXnvoN+2R4rqGVh/LLDMtpFP+SpMGJNWvbIl5SOodbCczW2RKleksPoUeGEzrjtKHVdtZA+kfqO+rVx/iclCqwoopepvJpSTDjT+b9GWylGRF8EDbGlw6eUzmJM95Ovoz+kwLX3c2fTjFeYEsE7vUZm3mqdGJuKh2w9/QGSaqRHs99aScGOdDqkFcACoqdbBoQqqjamhH6Q9ng39JCg3lrGJwd50Qk9ovnqBTr8MME7Ps2wiVfygUmPoUBJJfJWX5Nda0nuncbFkA=="))}Wt.getData=getData}});var Un=__commonJS({"node_modules/@ethersproject/hash/lib/ens-normalize/lib.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.ens_normalize=Wt.ens_normalize_post_check=void 0;var Pt=Ln();var en=Tn();var tn=(0,en.getData)();var nn=On();var an=new Set((0,nn.read_member_array)(tn));var rn=new Set((0,nn.read_member_array)(tn));var In=(0,nn.read_mapped_map)(tn);var sn=(0,nn.read_emoji_trie)(tn);var on=45;var cn=95;function explode_cp(Wt){return(0,Pt.toUtf8CodePoints)(Wt)}function filter_fe0f(Wt){return Wt.filter((function(Wt){return Wt!=65039}))}function ens_normalize_post_check(Wt){for(var Pt=0,en=Wt.split(".");Pt=0;an--){if(nn[an]!==cn){throw new Error("underscore only allowed at start")}}if(nn.length>=4&&nn.every((function(Wt){return Wt<128}))&&nn[2]===on&&nn[3]===on){throw new Error("invalid label extension")}}catch(Wt){throw new Error('Invalid label "'+tn+'": '+Wt.message)}}return Wt}Wt.ens_normalize_post_check=ens_normalize_post_check;function ens_normalize(Wt){return ens_normalize_post_check(normalize(Wt,filter_fe0f))}Wt.ens_normalize=ens_normalize;function normalize(Wt,Pt){var en=explode_cp(Wt).reverse();var tn=[];while(en.length){var nn=consume_emoji_reversed(en);if(nn){tn.push.apply(tn,Pt(nn));continue}var sn=en.pop();if(an.has(sn)){tn.push(sn);continue}if(rn.has(sn)){continue}var on=In[sn];if(on){tn.push.apply(tn,on);continue}throw new Error("Disallowed codepoint: 0x"+sn.toString(16).toUpperCase())}return ens_normalize_post_check(nfc(String.fromCodePoint.apply(String,tn)))}function nfc(Wt){return Wt.normalize("NFC")}function consume_emoji_reversed(Wt,Pt){var en;var tn=sn;var nn;var an;var rn=[];var In=Wt.length;if(Pt)Pt.length=0;var _loop_1=function(){var sn=Wt[--In];tn=(en=tn.branches.find((function(Wt){return Wt.set.has(sn)})))===null||en===void 0?void 0:en.node;if(!tn)return"break";if(tn.save){an=sn}else if(tn.check){if(sn===an)return"break"}rn.push(sn);if(tn.fe0f){rn.push(65039);if(In>0&&Wt[In-1]==65039)In--}if(tn.valid){nn=rn.slice();if(tn.valid==2)nn.splice(1,1);if(Pt)Pt.push.apply(Pt,Wt.slice(In).reverse());Wt.length=In}};while(In){var on=_loop_1();if(on==="break")break}return nn}}});var Mn=__commonJS({"node_modules/@ethersproject/hash/lib/namehash.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.dnsEncode=Wt.namehash=Wt.isValidName=Wt.ensNormalize=void 0;var Pt=pn();var en=Ln();var tn=Hn();var nn=dn();var an=xn();var rn=new nn.Logger(an.version);var In=Un();var sn=new Uint8Array(32);sn.fill(0);function checkComponent(Wt){if(Wt.length===0){throw new Error("invalid ENS name; empty component")}return Wt}function ensNameSplit(Wt){var Pt=(0,en.toUtf8Bytes)((0,In.ens_normalize)(Wt));var tn=[];if(Wt.length===0){return tn}var nn=0;for(var an=0;an=Pt.length){throw new Error("invalid ENS name; empty component")}tn.push(checkComponent(Pt.slice(nn)));return tn}function ensNormalize(Wt){return ensNameSplit(Wt).map((function(Wt){return(0,en.toUtf8String)(Wt)})).join(".")}Wt.ensNormalize=ensNormalize;function isValidName(Wt){try{return ensNameSplit(Wt).length!==0}catch(Wt){}return false}Wt.isValidName=isValidName;function namehash(Wt){if(typeof Wt!=="string"){rn.throwArgumentError("invalid ENS name; not a string","name",Wt)}var en=sn;var nn=ensNameSplit(Wt);while(nn.length){en=(0,tn.keccak256)((0,Pt.concat)([en,(0,tn.keccak256)(nn.pop())]))}return(0,Pt.hexlify)(en)}Wt.namehash=namehash;function dnsEncode(Wt){return(0,Pt.hexlify)((0,Pt.concat)(ensNameSplit(Wt).map((function(Wt){if(Wt.length>63){throw new Error("invalid DNS encoded entry; length exceeds 63 bytes")}var Pt=new Uint8Array(Wt.length+1);Pt.set(Wt,1);Pt[0]=Pt.length-1;return Pt}))))+"00"}Wt.dnsEncode=dnsEncode}});var zn=__commonJS({"node_modules/@ethersproject/hash/lib/message.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.hashMessage=Wt.messagePrefix=void 0;var Pt=pn();var en=Hn();var tn=Ln();Wt.messagePrefix="Ethereum Signed Message:\n";function hashMessage(nn){if(typeof nn==="string"){nn=(0,tn.toUtf8Bytes)(nn)}return(0,en.keccak256)((0,Pt.concat)([(0,tn.toUtf8Bytes)(Wt.messagePrefix),(0,tn.toUtf8Bytes)(String(nn.length)),nn]))}Wt.hashMessage=hashMessage}});var Sn=__commonJS({"node_modules/@ethersproject/rlp/lib/_version.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.version=void 0;Wt.version="rlp/5.7.0"}});var jn=__commonJS({"node_modules/@ethersproject/rlp/lib/index.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.decode=Wt.encode=void 0;var Pt=pn();var en=dn();var tn=Sn();var nn=new en.Logger(tn.version);function arrayifyInteger(Wt){var Pt=[];while(Wt){Pt.unshift(Wt&255);Wt>>=8}return Pt}function unarrayifyInteger(Wt,Pt,en){var tn=0;for(var nn=0;nnPt+1+an){nn.throwError("child data too short",en.Logger.errors.BUFFER_OVERRUN,{})}}return{consumed:1+an,result:rn}}function _decode(Wt,tn){if(Wt.length===0){nn.throwError("data too short",en.Logger.errors.BUFFER_OVERRUN,{})}if(Wt[tn]>=248){var an=Wt[tn]-247;if(tn+1+an>Wt.length){nn.throwError("data short segment too short",en.Logger.errors.BUFFER_OVERRUN,{})}var rn=unarrayifyInteger(Wt,tn+1,an);if(tn+1+an+rn>Wt.length){nn.throwError("data long segment too short",en.Logger.errors.BUFFER_OVERRUN,{})}return _decodeChildren(Wt,tn,tn+1+an,an+rn)}else if(Wt[tn]>=192){var In=Wt[tn]-192;if(tn+1+In>Wt.length){nn.throwError("data array too short",en.Logger.errors.BUFFER_OVERRUN,{})}return _decodeChildren(Wt,tn,tn+1,In)}else if(Wt[tn]>=184){var an=Wt[tn]-183;if(tn+1+an>Wt.length){nn.throwError("data array too short",en.Logger.errors.BUFFER_OVERRUN,{})}var sn=unarrayifyInteger(Wt,tn+1,an);if(tn+1+an+sn>Wt.length){nn.throwError("data array too short",en.Logger.errors.BUFFER_OVERRUN,{})}var on=(0,Pt.hexlify)(Wt.slice(tn+1+an,tn+1+an+sn));return{consumed:1+an+sn,result:on}}else if(Wt[tn]>=128){var cn=Wt[tn]-128;if(tn+1+cn>Wt.length){nn.throwError("data too short",en.Logger.errors.BUFFER_OVERRUN,{})}var on=(0,Pt.hexlify)(Wt.slice(tn+1,tn+1+cn));return{consumed:1+cn,result:on}}return{consumed:1,result:(0,Pt.hexlify)(Wt[tn])}}function decode(Wt){var en=(0,Pt.arrayify)(Wt);var tn=_decode(en,0);if(tn.consumed!==en.length){nn.throwArgumentError("invalid rlp data","data",Wt)}return tn.result}Wt.decode=decode}});var Dn=__commonJS({"node_modules/@ethersproject/address/lib/_version.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.version=void 0;Wt.version="address/5.7.0"}});var _n=__commonJS({"node_modules/@ethersproject/address/lib/index.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.getCreate2Address=Wt.getContractAddress=Wt.getIcapAddress=Wt.isAddress=Wt.getAddress=void 0;var Pt=pn();var en=hn();var tn=Hn();var nn=jn();var an=dn();var rn=Dn();var In=new an.Logger(rn.version);function getChecksumAddress(Wt){if(!(0,Pt.isHexString)(Wt,20)){In.throwArgumentError("invalid address","address",Wt)}Wt=Wt.toLowerCase();var en=Wt.substring(2).split("");var nn=new Uint8Array(40);for(var an=0;an<40;an++){nn[an]=en[an].charCodeAt(0)}var rn=(0,Pt.arrayify)((0,tn.keccak256)(nn));for(var an=0;an<40;an+=2){if(rn[an>>1]>>4>=8){en[an]=en[an].toUpperCase()}if((rn[an>>1]&15)>=8){en[an+1]=en[an+1].toUpperCase()}}return"0x"+en.join("")}var sn=9007199254740991;function log10(Wt){if(Math.log10){return Math.log10(Wt)}return Math.log(Wt)/Math.LN10}var on={};for(cn=0;cn<10;cn++){on[String(cn)]=String(cn)}var cn;for(cn=0;cn<26;cn++){on[String.fromCharCode(65+cn)]=String(10+cn)}var cn;var un=Math.floor(log10(sn));function ibanChecksum(Wt){Wt=Wt.toUpperCase();Wt=Wt.substring(4)+Wt.substring(0,2)+"00";var Pt=Wt.split("").map((function(Wt){return on[Wt]})).join("");while(Pt.length>=un){var en=Pt.substring(0,un);Pt=parseInt(en,10)%97+Pt.substring(en.length)}var tn=String(98-parseInt(Pt,10)%97);while(tn.length<2){tn="0"+tn}return tn}function getAddress(Wt){var Pt=null;if(typeof Wt!=="string"){In.throwArgumentError("invalid address","address",Wt)}if(Wt.match(/^(0x)?[0-9a-fA-F]{40}$/)){if(Wt.substring(0,2)!=="0x"){Wt="0x"+Wt}Pt=getChecksumAddress(Wt);if(Wt.match(/([A-F].*[a-f])|([a-f].*[A-F])/)&&Pt!==Wt){In.throwArgumentError("bad address checksum","address",Wt)}}else if(Wt.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)){if(Wt.substring(2,4)!==ibanChecksum(Wt)){In.throwArgumentError("bad icap checksum","address",Wt)}Pt=(0,en._base36To16)(Wt.substring(4));while(Pt.length<40){Pt="0"+Pt}Pt=getChecksumAddress("0x"+Pt)}else{In.throwArgumentError("invalid address","address",Wt)}return Pt}Wt.getAddress=getAddress;function isAddress(Wt){try{getAddress(Wt);return true}catch(Wt){}return false}Wt.isAddress=isAddress;function getIcapAddress(Wt){var Pt=(0,en._base16To36)(getAddress(Wt).substring(2)).toUpperCase();while(Pt.length<30){Pt="0"+Pt}return"XE"+ibanChecksum("XE00"+Pt)+Pt}Wt.getIcapAddress=getIcapAddress;function getContractAddress(Wt){var an=null;try{an=getAddress(Wt.from)}catch(Pt){In.throwArgumentError("missing from address","transaction",Wt)}var rn=(0,Pt.stripZeros)((0,Pt.arrayify)(en.BigNumber.from(Wt.nonce).toHexString()));return getAddress((0,Pt.hexDataSlice)((0,tn.keccak256)((0,nn.encode)([an,rn])),12))}Wt.getContractAddress=getContractAddress;function getCreate2Address(Wt,en,nn){if((0,Pt.hexDataLength)(en)!==32){In.throwArgumentError("salt must be 32 bytes","salt",en)}if((0,Pt.hexDataLength)(nn)!==32){In.throwArgumentError("initCodeHash must be 32 bytes","initCodeHash",nn)}return getAddress((0,Pt.hexDataSlice)((0,tn.keccak256)((0,Pt.concat)(["0xff",getAddress(Wt),en,nn])),12))}Wt.getCreate2Address=getCreate2Address}});var Kn=__commonJS({"node_modules/@ethersproject/hash/lib/typed-data.js"(Wt){"use strict";var Pt=Wt&&Wt.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var en=Wt&&Wt.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]256||Pt[2]&&Pt[2]!==String(In)){cn.throwArgumentError("invalid numeric width","type",Wt)}var sn=Wn.mask(en?In-1:In);var on=en?sn.add(Zn).mul(bn):Gn;return function(Pt){var en=nn.BigNumber.from(Pt);if(en.lt(on)||en.gt(sn)){cn.throwArgumentError("value out-of-bounds for "+Wt,"value",Pt)}return(0,an.hexZeroPad)(en.toTwos(256).toHexString(),32)}}}{var Pt=Wt.match(/^bytes(\d+)$/);if(Pt){var dn=parseInt(Pt[1]);if(dn===0||dn>32||Pt[1]!==String(dn)){cn.throwArgumentError("invalid bytes width","type",Wt)}return function(Pt){var en=(0,an.arrayify)(Pt);if(en.length!==dn){cn.throwArgumentError("invalid length for "+Wt,"value",Pt)}return hexPadRight(Pt)}}}switch(Wt){case"address":return function(Wt){return(0,an.hexZeroPad)((0,tn.getAddress)(Wt),32)};case"bool":return function(Wt){return!Wt?gn:Nn};case"bytes":return function(Wt){return(0,rn.keccak256)(Wt)};case"string":return function(Wt){return(0,un.id)(Wt)}}return null}function encodeType(Wt,Pt){return Wt+"("+Pt.map((function(Wt){var Pt=Wt.name,en=Wt.type;return en+" "+Pt})).join(",")+")"}var En=function(){function TypedDataEncoder2(Wt){(0,In.defineReadOnly)(this,"types",Object.freeze((0,In.deepCopy)(Wt)));(0,In.defineReadOnly)(this,"_encoderCache",{});(0,In.defineReadOnly)(this,"_types",{});var Pt={};var en={};var tn={};Object.keys(Wt).forEach((function(Wt){Pt[Wt]={};en[Wt]=[];tn[Wt]={}}));var _loop_1=function(tn){var nn={};Wt[tn].forEach((function(an){if(nn[an.name]){cn.throwArgumentError("duplicate variable name "+JSON.stringify(an.name)+" in "+JSON.stringify(tn),"types",Wt)}nn[an.name]=true;var rn=an.type.match(/^([^\x5b]*)(\x5b|$)/)[1];if(rn===tn){cn.throwArgumentError("circular type reference to "+JSON.stringify(rn),"types",Wt)}var In=getBaseEncoder(rn);if(In){return}if(!en[rn]){cn.throwArgumentError("unknown type "+JSON.stringify(rn),"types",Wt)}en[rn].push(tn);Pt[tn][rn]=true}))};for(var nn in Wt){_loop_1(nn)}var an=Object.keys(en).filter((function(Wt){return en[Wt].length===0}));if(an.length===0){cn.throwArgumentError("missing primary type","types",Wt)}else if(an.length>1){cn.throwArgumentError("ambiguous primary types or unused types: "+an.map((function(Wt){return JSON.stringify(Wt)})).join(", "),"types",Wt)}(0,In.defineReadOnly)(this,"primaryType",an[0]);function checkCircular(nn,an){if(an[nn]){cn.throwArgumentError("circular type reference to "+JSON.stringify(nn),"types",Wt)}an[nn]=true;Object.keys(Pt[nn]).forEach((function(Wt){if(!en[Wt]){return}checkCircular(Wt,an);Object.keys(an).forEach((function(Pt){tn[Pt][Wt]=true}))}));delete an[nn]}checkCircular(this.primaryType,{});for(var rn in tn){var sn=Object.keys(tn[rn]);sn.sort();this._types[rn]=encodeType(rn,Wt[rn])+sn.map((function(Pt){return encodeType(Pt,Wt[Pt])})).join("")}}TypedDataEncoder2.prototype.getEncoder=function(Wt){var Pt=this._encoderCache[Wt];if(!Pt){Pt=this._encoderCache[Wt]=this._getEncoder(Wt)}return Pt};TypedDataEncoder2.prototype._getEncoder=function(Wt){var Pt=this;{var en=getBaseEncoder(Wt);if(en){return en}}var tn=Wt.match(/^(.*)(\x5b(\d*)\x5d)$/);if(tn){var nn=tn[1];var In=this.getEncoder(nn);var sn=parseInt(tn[3]);return function(Wt){if(sn>=0&&Wt.length!==sn){cn.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",Wt)}var en=Wt.map(In);if(Pt._types[nn]){en=en.map(rn.keccak256)}return(0,rn.keccak256)((0,an.hexConcat)(en))}}var on=this.types[Wt];if(on){var dn=(0,un.id)(this._types[Wt]);return function(Wt){var en=on.map((function(en){var tn=en.name,nn=en.type;var an=Pt.getEncoder(nn)(Wt[tn]);if(Pt._types[nn]){return(0,rn.keccak256)(an)}return an}));en.unshift(dn);return(0,an.hexConcat)(en)}}return cn.throwArgumentError("unknown type: "+Wt,"type",Wt)};TypedDataEncoder2.prototype.encodeType=function(Wt){var Pt=this._types[Wt];if(!Pt){cn.throwArgumentError("unknown type: "+JSON.stringify(Wt),"name",Wt)}return Pt};TypedDataEncoder2.prototype.encodeData=function(Wt,Pt){return this.getEncoder(Wt)(Pt)};TypedDataEncoder2.prototype.hashStruct=function(Wt,Pt){return(0,rn.keccak256)(this.encodeData(Wt,Pt))};TypedDataEncoder2.prototype.encode=function(Wt){return this.encodeData(this.primaryType,Wt)};TypedDataEncoder2.prototype.hash=function(Wt){return this.hashStruct(this.primaryType,Wt)};TypedDataEncoder2.prototype._visit=function(Wt,Pt,en){var tn=this;{var nn=getBaseEncoder(Wt);if(nn){return en(Wt,Pt)}}var an=Wt.match(/^(.*)(\x5b(\d*)\x5d)$/);if(an){var rn=an[1];var In=parseInt(an[3]);if(In>=0&&Pt.length!==In){cn.throwArgumentError("array length mismatch; expected length ${ arrayLength }","value",Pt)}return Pt.map((function(Wt){return tn._visit(rn,Wt,en)}))}var sn=this.types[Wt];if(sn){return sn.reduce((function(Wt,nn){var an=nn.name,rn=nn.type;Wt[an]=tn._visit(rn,Pt[an],en);return Wt}),{})}return cn.throwArgumentError("unknown type: "+Wt,"type",Wt)};TypedDataEncoder2.prototype.visit=function(Wt,Pt){return this._visit(this.primaryType,Wt,Pt)};TypedDataEncoder2.from=function(Wt){return new TypedDataEncoder2(Wt)};TypedDataEncoder2.getPrimaryType=function(Wt){return TypedDataEncoder2.from(Wt).primaryType};TypedDataEncoder2.hashStruct=function(Wt,Pt,en){return TypedDataEncoder2.from(Pt).hashStruct(Wt,en)};TypedDataEncoder2.hashDomain=function(Wt){var Pt=[];for(var en in Wt){var tn=yn[en];if(!tn){cn.throwArgumentError("invalid typed-data domain key: "+JSON.stringify(en),"domain",Wt)}Pt.push({name:en,type:tn})}Pt.sort((function(Wt,Pt){return vn.indexOf(Wt.name)-vn.indexOf(Pt.name)}));return TypedDataEncoder2.hashStruct("EIP712Domain",{EIP712Domain:Pt},Wt)};TypedDataEncoder2.encode=function(Wt,Pt,en){return(0,an.hexConcat)(["0x1901",TypedDataEncoder2.hashDomain(Wt),TypedDataEncoder2.from(Pt).hash(en)])};TypedDataEncoder2.hash=function(Wt,Pt,en){return(0,rn.keccak256)(TypedDataEncoder2.encode(Wt,Pt,en))};TypedDataEncoder2.resolveNames=function(Wt,tn,nn,rn){return Pt(this,void 0,void 0,(function(){var Pt,sn,on,cn,dn,un,pn,mn;return en(this,(function(en){switch(en.label){case 0:Wt=(0,In.shallowCopy)(Wt);Pt={};if(Wt.verifyingContract&&!(0,an.isHexString)(Wt.verifyingContract,20)){Pt[Wt.verifyingContract]="0x"}sn=TypedDataEncoder2.from(tn);sn.visit(nn,(function(Wt,en){if(Wt==="address"&&!(0,an.isHexString)(en,20)){Pt[en]="0x"}return en}));on=[];for(cn in Pt)on.push(cn);dn=0;en.label=1;case 1:if(!(dn=Wt.length){return false}return(Wt.charCodeAt(Pt+1)&64512)===56320}function toArray2(Wt,Pt){if(Array.isArray(Wt))return Wt.slice();if(!Wt)return[];var en=[];if(typeof Wt==="string"){if(!Pt){var tn=0;for(var nn=0;nn>6|192;en[tn++]=an&63|128}else if(isSurrogatePair(Wt,nn)){an=65536+((an&1023)<<10)+(Wt.charCodeAt(++nn)&1023);en[tn++]=an>>18|240;en[tn++]=an>>12&63|128;en[tn++]=an>>6&63|128;en[tn++]=an&63|128}else{en[tn++]=an>>12|224;en[tn++]=an>>6&63|128;en[tn++]=an&63|128}}}else if(Pt==="hex"){Wt=Wt.replace(/[^a-z0-9]+/gi,"");if(Wt.length%2!==0)Wt="0"+Wt;for(nn=0;nn>>24|Wt>>>8&65280|Wt<<8&16711680|(Wt&255)<<24;return Pt>>>0}Wt.htonl=htonl;function toHex32(Wt,Pt){var en="";for(var tn=0;tn>>0}return rn}Wt.join32=join32;function split32(Wt,Pt){var en=new Array(Wt.length*4);for(var tn=0,nn=0;tn>>24;en[nn+1]=an>>>16&255;en[nn+2]=an>>>8&255;en[nn+3]=an&255}else{en[nn+3]=an>>>24;en[nn+2]=an>>>16&255;en[nn+1]=an>>>8&255;en[nn]=an&255}}return en}Wt.split32=split32;function rotr32(Wt,Pt){return Wt>>>Pt|Wt<<32-Pt}Wt.rotr32=rotr32;function rotl32(Wt,Pt){return Wt<>>32-Pt}Wt.rotl32=rotl32;function sum32(Wt,Pt){return Wt+Pt>>>0}Wt.sum32=sum32;function sum32_3(Wt,Pt,en){return Wt+Pt+en>>>0}Wt.sum32_3=sum32_3;function sum32_4(Wt,Pt,en,tn){return Wt+Pt+en+tn>>>0}Wt.sum32_4=sum32_4;function sum32_5(Wt,Pt,en,tn,nn){return Wt+Pt+en+tn+nn>>>0}Wt.sum32_5=sum32_5;function sum64(Wt,Pt,en,tn){var nn=Wt[Pt];var an=Wt[Pt+1];var rn=tn+an>>>0;var In=(rn>>0;Wt[Pt+1]=rn}Wt.sum64=sum64;function sum64_hi(Wt,Pt,en,tn){var nn=Pt+tn>>>0;var an=(nn>>0}Wt.sum64_hi=sum64_hi;function sum64_lo(Wt,Pt,en,tn){var nn=Pt+tn;return nn>>>0}Wt.sum64_lo=sum64_lo;function sum64_4_hi(Wt,Pt,en,tn,nn,an,rn,In){var sn=0;var on=Pt;on=on+tn>>>0;sn+=on>>0;sn+=on>>0;sn+=on>>0}Wt.sum64_4_hi=sum64_4_hi;function sum64_4_lo(Wt,Pt,en,tn,nn,an,rn,In){var sn=Pt+tn+an+In;return sn>>>0}Wt.sum64_4_lo=sum64_4_lo;function sum64_5_hi(Wt,Pt,en,tn,nn,an,rn,In,sn,on){var cn=0;var dn=Pt;dn=dn+tn>>>0;cn+=dn>>0;cn+=dn>>0;cn+=dn>>0;cn+=dn>>0}Wt.sum64_5_hi=sum64_5_hi;function sum64_5_lo(Wt,Pt,en,tn,nn,an,rn,In,sn,on){var cn=Pt+tn+an+In+on;return cn>>>0}Wt.sum64_5_lo=sum64_5_lo;function rotr64_hi(Wt,Pt,en){var tn=Pt<<32-en|Wt>>>en;return tn>>>0}Wt.rotr64_hi=rotr64_hi;function rotr64_lo(Wt,Pt,en){var tn=Wt<<32-en|Pt>>>en;return tn>>>0}Wt.rotr64_lo=rotr64_lo;function shr64_hi(Wt,Pt,en){return Wt>>>en}Wt.shr64_hi=shr64_hi;function shr64_lo(Wt,Pt,en){var tn=Wt<<32-en|Pt>>>en;return tn>>>0}Wt.shr64_lo=shr64_lo}});var nl=__commonJS({"node_modules/hash.js/lib/hash/common.js"(Wt){"use strict";var Pt=tl();var en=qn();function BlockHash(){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}Wt.BlockHash=BlockHash;BlockHash.prototype.update=function update(Wt,en){Wt=Pt.toArray(Wt,en);if(!this.pending)this.pending=Wt;else this.pending=this.pending.concat(Wt);this.pendingTotal+=Wt.length;if(this.pending.length>=this._delta8){Wt=this.pending;var tn=Wt.length%this._delta8;this.pending=Wt.slice(Wt.length-tn,Wt.length);if(this.pending.length===0)this.pending=null;Wt=Pt.join32(Wt,0,Wt.length-tn,this.endian);for(var nn=0;nn>>24&255;tn[nn++]=Wt>>>16&255;tn[nn++]=Wt>>>8&255;tn[nn++]=Wt&255}else{tn[nn++]=Wt&255;tn[nn++]=Wt>>>8&255;tn[nn++]=Wt>>>16&255;tn[nn++]=Wt>>>24&255;tn[nn++]=0;tn[nn++]=0;tn[nn++]=0;tn[nn++]=0;for(an=8;an>>3}Wt.g0_256=g0_256;function g1_256(Wt){return en(Wt,17)^en(Wt,19)^Wt>>>10}Wt.g1_256=g1_256}});var al=__commonJS({"node_modules/hash.js/lib/hash/sha/1.js"(Wt,Pt){"use strict";var en=tl();var tn=nl();var nn=ll();var an=en.rotl32;var rn=en.sum32;var In=en.sum32_5;var sn=nn.ft_1;var on=tn.BlockHash;var cn=[1518500249,1859775393,2400959708,3395469782];function SHA1(){if(!(this instanceof SHA1))return new SHA1;on.call(this);this.h=[1732584193,4023233417,2562383102,271733878,3285377520];this.W=new Array(80)}en.inherits(SHA1,on);Pt.exports=SHA1;SHA1.blockSize=512;SHA1.outSize=160;SHA1.hmacStrength=80;SHA1.padLength=64;SHA1.prototype._update=function _update(Wt,Pt){var en=this.W;for(var tn=0;tn<16;tn++)en[tn]=Wt[Pt+tn];for(;tnthis.blockSize)Wt=(new this.Hash).update(Wt).digest();tn(Wt.length<=this.blockSize);for(var Pt=Wt.length;Pt0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]0&&dn%1===0,"invalid connection throttle limit","connection.throttleLimit",dn);var un=typeof Wt==="object"?Wt.throttleCallback:null;var pn=typeof Wt==="object"&&typeof Wt.throttleSlotInterval==="number"?Wt.throttleSlotInterval:100;on.assertArgument(pn>0&&pn%1===0,"invalid connection throttle slot interval","connection.throttleSlotInterval",pn);var mn=typeof Wt==="object"?!!Wt.errorPassThrough:false;var bn={};var Gn=null;var hn={method:"GET"};var Zn=false;var An=2*60*1e3;if(typeof Wt==="string"){Gn=Wt}else if(typeof Wt==="object"){if(Wt==null||Wt.url==null){on.throwArgumentError("missing URL","connection.url",Wt)}Gn=Wt.url;if(typeof Wt.timeout==="number"&&Wt.timeout>0){An=Wt.timeout}if(Wt.headers){for(var Wn in Wt.headers){bn[Wn.toLowerCase()]={key:Wn,value:String(Wt.headers[Wn])};if(["if-none-match","if-modified-since"].indexOf(Wn.toLowerCase())>=0){Zn=true}}}hn.allowGzip=!!Wt.allowGzip;if(Wt.user!=null&&Wt.password!=null){if(Gn.substring(0,6)!=="https:"&&Wt.allowInsecureAuthentication!==true){on.throwError("basic authentication requires a secure https url",In.Logger.errors.INVALID_ARGUMENT,{argument:"url",url:Gn,user:Wt.user,password:"[REDACTED]"})}var Nn=Wt.user+":"+Wt.password;bn["authorization"]={key:"Authorization",value:"Basic "+(0,tn.encode)((0,rn.toUtf8Bytes)(Nn))}}if(Wt.skipFetchSetup!=null){hn.skipFetchSetup=!!Wt.skipFetchSetup}if(Wt.fetchOptions!=null){hn.fetchOptions=(0,an.shallowCopy)(Wt.fetchOptions)}}var gn=new RegExp("^data:([^;:]*)?(;base64)?,(.*)$","i");var yn=Gn?Gn.match(gn):null;if(yn){try{var vn={statusCode:200,statusMessage:"OK",headers:{"content-type":yn[1]||"text/plain"},body:yn[2]?(0,tn.decode)(yn[3]):unpercent(yn[3])};var Yn=vn.body;if(sn){Yn=sn(vn.body,vn)}return Promise.resolve(Yn)}catch(Wt){on.throwError("processing response error",In.Logger.errors.SERVER_ERROR,{body:bodyify(yn[1],yn[2]),error:Wt,requestBody:null,requestMethod:"GET",url:Gn})}}if(nn){hn.method="POST";hn.body=nn;if(bn["content-type"]==null){bn["content-type"]={key:"Content-Type",value:"application/octet-stream"}}if(bn["content-length"]==null){bn["content-length"]={key:"Content-Length",value:String(nn.length)}}}var En={};Object.keys(bn).forEach((function(Wt){var Pt=bn[Wt];En[Pt.key]=Pt.value}));hn.headers=En;var Vn=function(){var Wt=null;var Pt=new Promise((function(Pt,en){if(An){Wt=setTimeout((function(){if(Wt==null){return}Wt=null;en(on.makeError("timeout",In.Logger.errors.TIMEOUT,{requestBody:bodyify(hn.body,En["content-type"]),requestMethod:hn.method,timeout:An,url:Gn}))}),An)}}));var cancel=function(){if(Wt==null){return}clearTimeout(Wt);Wt=null};return{promise:Pt,cancel:cancel}}();var Rn=function(){return Pt(this,void 0,void 0,(function(){var Wt,Pt,tn,nn,an,rn,bn,An,Wn,Nn,nn,gn;return en(this,(function(en){switch(en.label){case 0:Wt=0;en.label=1;case 1:if(!(Wt=300)){Vn.cancel();on.throwError("bad response",In.Logger.errors.SERVER_ERROR,{status:Pt.statusCode,headers:Pt.headers,body:bodyify(An,Pt.headers?Pt.headers["content-type"]:null),requestBody:bodyify(hn.body,En["content-type"]),requestMethod:hn.method,url:Gn})}if(!sn)return[3,18];en.label=11;case 11:en.trys.push([11,13,,18]);return[4,sn(An,Pt)];case 12:Wn=en.sent();Vn.cancel();return[2,Wn];case 13:Nn=en.sent();if(!(Nn.throttleRetry&&Wtrn){if(cancel()){tn(new Error("retry limit reached"))}return}var nn=Pt.interval*parseInt(String(Math.random()*Math.pow(2,In)));if(nnPt.ceiling){nn=Pt.ceiling}setTimeout(check,nn)}return null}),(function(Wt){if(cancel()){tn(Wt)}}))}check()}))}Wt.poll=poll}});var Wl=__commonJS({"node_modules/bech32/index.js"(Wt,Pt){"use strict";var en="qpzry9x8gf2tvdw0s3jn54khce6mua7l";var tn={};for(an=0;an>25;return(Wt&33554431)<<5^-(Pt>>0&1)&996825010^-(Pt>>1&1)&642813549^-(Pt>>2&1)&513874426^-(Pt>>3&1)&1027748829^-(Pt>>4&1)&705979059}function prefixChk(Wt){var Pt=1;for(var en=0;en126)return"Invalid prefix ("+Wt+")";Pt=polymodStep(Pt)^tn>>5}Pt=polymodStep(Pt);for(en=0;entn)throw new TypeError("Exceeds length limit");Wt=Wt.toLowerCase();var nn=prefixChk(Wt);if(typeof nn==="string")throw new Error(nn);var an=Wt+"1";for(var rn=0;rn>5!==0)throw new Error("Non 5-bit word");nn=polymodStep(nn)^In;an+=en.charAt(In)}for(rn=0;rn<6;++rn){nn=polymodStep(nn)}nn^=1;for(rn=0;rn<6;++rn){var sn=nn>>(5-rn)*5&31;an+=en.charAt(sn)}return an}function __decode(Wt,Pt){Pt=Pt||90;if(Wt.length<8)return Wt+" too short";if(Wt.length>Pt)return"Exceeds length limit";var en=Wt.toLowerCase();var nn=Wt.toUpperCase();if(Wt!==en&&Wt!==nn)return"Mixed-case string "+Wt;Wt=en;var an=Wt.lastIndexOf("1");if(an===-1)return"No separator character for "+Wt;if(an===0)return"Missing prefix for "+Wt;var rn=Wt.slice(0,an);var In=Wt.slice(an+1);if(In.length<6)return"Data too short";var sn=prefixChk(rn);if(typeof sn==="string")return sn;var on=[];for(var cn=0;cn=In.length)continue;on.push(un)}if(sn!==1)return"Invalid checksum for "+Wt;return{prefix:rn,words:on}}function decodeUnsafe(){var Wt=__decode.apply(null,arguments);if(typeof Wt==="object")return Wt}function decode(Wt){var Pt=__decode.apply(null,arguments);if(typeof Pt==="object")return Pt;throw new Error(Pt)}function convert(Wt,Pt,en,tn){var nn=0;var an=0;var rn=(1<=en){an-=en;In.push(nn>>an&rn)}}if(tn){if(an>0){In.push(nn<=Pt)return"Excess padding";if(nn<",license:"MIT",bugs:{url:"https://github.com/indutny/elliptic/issues"},homepage:"https://github.com/indutny/elliptic",devDependencies:{brfs:"^2.0.2",coveralls:"^3.1.0",eslint:"^7.6.0",grunt:"^1.2.1","grunt-browserify":"^5.3.0","grunt-cli":"^1.3.2","grunt-contrib-connect":"^3.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^5.0.0","grunt-mocha-istanbul":"^5.0.2","grunt-saucelabs":"^9.0.1",istanbul:"^0.4.5",mocha:"^8.0.1"},dependencies:{"bn.js":"^4.11.9",brorand:"^1.1.0","hash.js":"^1.0.0","hmac-drbg":"^1.0.1",inherits:"^2.0.4","minimalistic-assert":"^1.0.1","minimalistic-crypto-utils":"^1.0.1"}}}});var yl=__commonJS({"node_modules/elliptic/node_modules/bn.js/lib/bn.js"(Wt,Pt){"use strict";(function(Wt,Pt){"use strict";function assert(Wt,Pt){if(!Wt)throw new Error(Pt||"Assertion failed")}function inherits2(Wt,Pt){Wt.super_=Pt;var TempCtor=function(){};TempCtor.prototype=Pt.prototype;Wt.prototype=new TempCtor;Wt.prototype.constructor=Wt}function BN(Wt,Pt,en){if(BN.isBN(Wt)){return Wt}this.negative=0;this.words=null;this.length=0;this.red=null;if(Wt!==null){if(Pt==="le"||Pt==="be"){en=Pt;Pt=10}this._init(Wt||0,Pt||10,en||"be")}}if(typeof Wt==="object"){Wt.exports=BN}else{Pt.BN=BN}BN.BN=BN;BN.wordSize=26;var tn;try{if(typeof window!=="undefined"&&typeof window.Buffer!=="undefined"){tn=window.Buffer}else{tn=en(20181).Buffer}}catch(Wt){}BN.isBN=function isBN(Wt){if(Wt instanceof BN){return true}return Wt!==null&&typeof Wt==="object"&&Wt.constructor.wordSize===BN.wordSize&&Array.isArray(Wt.words)};BN.max=function max(Wt,Pt){if(Wt.cmp(Pt)>0)return Wt;return Pt};BN.min=function min(Wt,Pt){if(Wt.cmp(Pt)<0)return Wt;return Pt};BN.prototype._init=function init(Wt,Pt,en){if(typeof Wt==="number"){return this._initNumber(Wt,Pt,en)}if(typeof Wt==="object"){return this._initArray(Wt,Pt,en)}if(Pt==="hex"){Pt=16}assert(Pt===(Pt|0)&&Pt>=2&&Pt<=36);Wt=Wt.toString().replace(/\s+/g,"");var tn=0;if(Wt[0]==="-"){tn++;this.negative=1}if(tn=0;tn-=3){an=Wt[tn]|Wt[tn-1]<<8|Wt[tn-2]<<16;this.words[nn]|=an<>>26-rn&67108863;rn+=24;if(rn>=26){rn-=26;nn++}}}else if(en==="le"){for(tn=0,nn=0;tn>>26-rn&67108863;rn+=24;if(rn>=26){rn-=26;nn++}}}return this.strip()};function parseHex4Bits(Wt,Pt){var en=Wt.charCodeAt(Pt);if(en>=65&&en<=70){return en-55}else if(en>=97&&en<=102){return en-87}else{return en-48&15}}function parseHexByte(Wt,Pt,en){var tn=parseHex4Bits(Wt,en);if(en-1>=Pt){tn|=parseHex4Bits(Wt,en-1)<<4}return tn}BN.prototype._parseHex=function _parseHex(Wt,Pt,en){this.length=Math.ceil((Wt.length-Pt)/6);this.words=new Array(this.length);for(var tn=0;tn=Pt;tn-=2){rn=parseHexByte(Wt,Pt,tn)<=18){nn-=18;an+=1;this.words[an]|=rn>>>26}else{nn+=8}}}else{var In=Wt.length-Pt;for(tn=In%2===0?Pt+1:Pt;tn=18){nn-=18;an+=1;this.words[an]|=rn>>>26}else{nn+=8}}}this.strip()};function parseBase(Wt,Pt,en,tn){var nn=0;var an=Math.min(Wt.length,en);for(var rn=Pt;rn=49){nn+=In-49+10}else if(In>=17){nn+=In-17+10}else{nn+=In}}return nn}BN.prototype._parseBase=function _parseBase(Wt,Pt,en){this.words=[0];this.length=1;for(var tn=0,nn=1;nn<=67108863;nn*=Pt){tn++}tn--;nn=nn/Pt|0;var an=Wt.length-en;var rn=an%tn;var In=Math.min(an,an-rn)+en;var sn=0;for(var on=en;on1&&this.words[this.length-1]===0){this.length--}return this._normSign()};BN.prototype._normSign=function _normSign(){if(this.length===1&&this.words[0]===0){this.negative=0}return this};BN.prototype.inspect=function inspect(){return(this.red?""};var nn=["","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"];var an=[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];var rn=[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];BN.prototype.toString=function toString3(Wt,Pt){Wt=Wt||10;Pt=Pt|0||1;var en;if(Wt===16||Wt==="hex"){en="";var tn=0;var In=0;for(var sn=0;sn>>24-tn&16777215;if(In!==0||sn!==this.length-1){en=nn[6-cn.length]+cn+en}else{en=cn+en}tn+=2;if(tn>=26){tn-=26;sn--}}if(In!==0){en=In.toString(16)+en}while(en.length%Pt!==0){en="0"+en}if(this.negative!==0){en="-"+en}return en}if(Wt===(Wt|0)&&Wt>=2&&Wt<=36){var dn=an[Wt];var un=rn[Wt];en="";var pn=this.clone();pn.negative=0;while(!pn.isZero()){var mn=pn.modn(un).toString(Wt);pn=pn.idivn(un);if(!pn.isZero()){en=nn[dn-mn.length]+mn+en}else{en=mn+en}}if(this.isZero()){en="0"+en}while(en.length%Pt!==0){en="0"+en}if(this.negative!==0){en="-"+en}return en}assert(false,"Base should be between 2 and 36")};BN.prototype.toNumber=function toNumber(){var Wt=this.words[0];if(this.length===2){Wt+=this.words[1]*67108864}else if(this.length===3&&this.words[2]===1){Wt+=4503599627370496+this.words[1]*67108864}else if(this.length>2){assert(false,"Number can only safely store up to 53 bits")}return this.negative!==0?-Wt:Wt};BN.prototype.toJSON=function toJSON2(){return this.toString(16)};BN.prototype.toBuffer=function toBuffer(Wt,Pt){assert(typeof tn!=="undefined");return this.toArrayLike(tn,Wt,Pt)};BN.prototype.toArray=function toArray2(Wt,Pt){return this.toArrayLike(Array,Wt,Pt)};BN.prototype.toArrayLike=function toArrayLike(Wt,Pt,en){var tn=this.byteLength();var nn=en||Math.max(1,tn);assert(tn<=nn,"byte array longer than desired length");assert(nn>0,"Requested array length <= 0");this.strip();var an=Pt==="le";var rn=new Wt(nn);var In,sn;var on=this.clone();if(!an){for(sn=0;sn=4096){en+=13;Pt>>>=13}if(Pt>=64){en+=7;Pt>>>=7}if(Pt>=8){en+=4;Pt>>>=4}if(Pt>=2){en+=2;Pt>>>=2}return en+Pt}}BN.prototype._zeroBits=function _zeroBits(Wt){if(Wt===0)return 26;var Pt=Wt;var en=0;if((Pt&8191)===0){en+=13;Pt>>>=13}if((Pt&127)===0){en+=7;Pt>>>=7}if((Pt&15)===0){en+=4;Pt>>>=4}if((Pt&3)===0){en+=2;Pt>>>=2}if((Pt&1)===0){en++}return en};BN.prototype.bitLength=function bitLength(){var Wt=this.words[this.length-1];var Pt=this._countBits(Wt);return(this.length-1)*26+Pt};function toBitArray(Wt){var Pt=new Array(Wt.bitLength());for(var en=0;en>>nn}return Pt}BN.prototype.zeroBits=function zeroBits(){if(this.isZero())return 0;var Wt=0;for(var Pt=0;PtWt.length)return this.clone().ior(Wt);return Wt.clone().ior(this)};BN.prototype.uor=function uor(Wt){if(this.length>Wt.length)return this.clone().iuor(Wt);return Wt.clone().iuor(this)};BN.prototype.iuand=function iuand(Wt){var Pt;if(this.length>Wt.length){Pt=Wt}else{Pt=this}for(var en=0;enWt.length)return this.clone().iand(Wt);return Wt.clone().iand(this)};BN.prototype.uand=function uand(Wt){if(this.length>Wt.length)return this.clone().iuand(Wt);return Wt.clone().iuand(this)};BN.prototype.iuxor=function iuxor(Wt){var Pt;var en;if(this.length>Wt.length){Pt=this;en=Wt}else{Pt=Wt;en=this}for(var tn=0;tnWt.length)return this.clone().ixor(Wt);return Wt.clone().ixor(this)};BN.prototype.uxor=function uxor(Wt){if(this.length>Wt.length)return this.clone().iuxor(Wt);return Wt.clone().iuxor(this)};BN.prototype.inotn=function inotn(Wt){assert(typeof Wt==="number"&&Wt>=0);var Pt=Math.ceil(Wt/26)|0;var en=Wt%26;this._expand(Pt);if(en>0){Pt--}for(var tn=0;tn0){this.words[tn]=~this.words[tn]&67108863>>26-en}return this.strip()};BN.prototype.notn=function notn(Wt){return this.clone().inotn(Wt)};BN.prototype.setn=function setn(Wt,Pt){assert(typeof Wt==="number"&&Wt>=0);var en=Wt/26|0;var tn=Wt%26;this._expand(en+1);if(Pt){this.words[en]=this.words[en]|1<Wt.length){en=this;tn=Wt}else{en=Wt;tn=this}var nn=0;for(var an=0;an>>26}for(;nn!==0&&an>>26}this.length=en.length;if(nn!==0){this.words[this.length]=nn;this.length++}else if(en!==this){for(;anWt.length)return this.clone().iadd(Wt);return Wt.clone().iadd(this)};BN.prototype.isub=function isub(Wt){if(Wt.negative!==0){Wt.negative=0;var Pt=this.iadd(Wt);Wt.negative=1;return Pt._normSign()}else if(this.negative!==0){this.negative=0;this.iadd(Wt);this.negative=1;return this._normSign()}var en=this.cmp(Wt);if(en===0){this.negative=0;this.length=1;this.words[0]=0;return this}var tn,nn;if(en>0){tn=this;nn=Wt}else{tn=Wt;nn=this}var an=0;for(var rn=0;rn>26;this.words[rn]=Pt&67108863}for(;an!==0&&rn>26;this.words[rn]=Pt&67108863}if(an===0&&rn>>26;var dn=sn&67108863;var un=Math.min(on,Pt.length-1);for(var pn=Math.max(0,on-Wt.length+1);pn<=un;pn++){var mn=on-pn|0;nn=Wt.words[mn]|0;an=Pt.words[pn]|0;rn=nn*an+dn;cn+=rn/67108864|0;dn=rn&67108863}en.words[on]=dn|0;sn=cn|0}if(sn!==0){en.words[on]=sn|0}else{en.length--}return en.strip()}var In=function comb10MulTo2(Wt,Pt,en){var tn=Wt.words;var nn=Pt.words;var an=en.words;var rn=0;var In;var sn;var on;var cn=tn[0]|0;var dn=cn&8191;var un=cn>>>13;var pn=tn[1]|0;var mn=pn&8191;var bn=pn>>>13;var Gn=tn[2]|0;var hn=Gn&8191;var Zn=Gn>>>13;var An=tn[3]|0;var Wn=An&8191;var Nn=An>>>13;var gn=tn[4]|0;var yn=gn&8191;var vn=gn>>>13;var Yn=tn[5]|0;var En=Yn&8191;var Vn=Yn>>>13;var Rn=tn[6]|0;var wn=Rn&8191;var Fn=Rn>>>13;var Qn=tn[7]|0;var fn=Qn&8191;var Hn=Qn>>>13;var Cn=tn[8]|0;var Xn=Cn&8191;var kn=Cn>>>13;var Jn=tn[9]|0;var Ln=Jn&8191;var Bn=Jn>>>13;var xn=nn[0]|0;var On=xn&8191;var Tn=xn>>>13;var Un=nn[1]|0;var Mn=Un&8191;var zn=Un>>>13;var Sn=nn[2]|0;var jn=Sn&8191;var Dn=Sn>>>13;var _n=nn[3]|0;var Kn=_n&8191;var Pn=_n>>>13;var qn=nn[4]|0;var $n=qn&8191;var el=qn>>>13;var tl=nn[5]|0;var nl=tl&8191;var ll=tl>>>13;var al=nn[6]|0;var rl=al&8191;var Il=al>>>13;var sl=nn[7]|0;var ol=sl&8191;var cl=sl>>>13;var il=nn[8]|0;var dl=il&8191;var ul=il>>>13;var pl=nn[9]|0;var ml=pl&8191;var bl=pl>>>13;en.negative=Wt.negative^Pt.negative;en.length=19;In=Math.imul(dn,On);sn=Math.imul(dn,Tn);sn=sn+Math.imul(un,On)|0;on=Math.imul(un,Tn);var Gl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Gl>>>26)|0;Gl&=67108863;In=Math.imul(mn,On);sn=Math.imul(mn,Tn);sn=sn+Math.imul(bn,On)|0;on=Math.imul(bn,Tn);In=In+Math.imul(dn,Mn)|0;sn=sn+Math.imul(dn,zn)|0;sn=sn+Math.imul(un,Mn)|0;on=on+Math.imul(un,zn)|0;var hl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(hl>>>26)|0;hl&=67108863;In=Math.imul(hn,On);sn=Math.imul(hn,Tn);sn=sn+Math.imul(Zn,On)|0;on=Math.imul(Zn,Tn);In=In+Math.imul(mn,Mn)|0;sn=sn+Math.imul(mn,zn)|0;sn=sn+Math.imul(bn,Mn)|0;on=on+Math.imul(bn,zn)|0;In=In+Math.imul(dn,jn)|0;sn=sn+Math.imul(dn,Dn)|0;sn=sn+Math.imul(un,jn)|0;on=on+Math.imul(un,Dn)|0;var Zl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Zl>>>26)|0;Zl&=67108863;In=Math.imul(Wn,On);sn=Math.imul(Wn,Tn);sn=sn+Math.imul(Nn,On)|0;on=Math.imul(Nn,Tn);In=In+Math.imul(hn,Mn)|0;sn=sn+Math.imul(hn,zn)|0;sn=sn+Math.imul(Zn,Mn)|0;on=on+Math.imul(Zn,zn)|0;In=In+Math.imul(mn,jn)|0;sn=sn+Math.imul(mn,Dn)|0;sn=sn+Math.imul(bn,jn)|0;on=on+Math.imul(bn,Dn)|0;In=In+Math.imul(dn,Kn)|0;sn=sn+Math.imul(dn,Pn)|0;sn=sn+Math.imul(un,Kn)|0;on=on+Math.imul(un,Pn)|0;var Al=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Al>>>26)|0;Al&=67108863;In=Math.imul(yn,On);sn=Math.imul(yn,Tn);sn=sn+Math.imul(vn,On)|0;on=Math.imul(vn,Tn);In=In+Math.imul(Wn,Mn)|0;sn=sn+Math.imul(Wn,zn)|0;sn=sn+Math.imul(Nn,Mn)|0;on=on+Math.imul(Nn,zn)|0;In=In+Math.imul(hn,jn)|0;sn=sn+Math.imul(hn,Dn)|0;sn=sn+Math.imul(Zn,jn)|0;on=on+Math.imul(Zn,Dn)|0;In=In+Math.imul(mn,Kn)|0;sn=sn+Math.imul(mn,Pn)|0;sn=sn+Math.imul(bn,Kn)|0;on=on+Math.imul(bn,Pn)|0;In=In+Math.imul(dn,$n)|0;sn=sn+Math.imul(dn,el)|0;sn=sn+Math.imul(un,$n)|0;on=on+Math.imul(un,el)|0;var Wl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Wl>>>26)|0;Wl&=67108863;In=Math.imul(En,On);sn=Math.imul(En,Tn);sn=sn+Math.imul(Vn,On)|0;on=Math.imul(Vn,Tn);In=In+Math.imul(yn,Mn)|0;sn=sn+Math.imul(yn,zn)|0;sn=sn+Math.imul(vn,Mn)|0;on=on+Math.imul(vn,zn)|0;In=In+Math.imul(Wn,jn)|0;sn=sn+Math.imul(Wn,Dn)|0;sn=sn+Math.imul(Nn,jn)|0;on=on+Math.imul(Nn,Dn)|0;In=In+Math.imul(hn,Kn)|0;sn=sn+Math.imul(hn,Pn)|0;sn=sn+Math.imul(Zn,Kn)|0;on=on+Math.imul(Zn,Pn)|0;In=In+Math.imul(mn,$n)|0;sn=sn+Math.imul(mn,el)|0;sn=sn+Math.imul(bn,$n)|0;on=on+Math.imul(bn,el)|0;In=In+Math.imul(dn,nl)|0;sn=sn+Math.imul(dn,ll)|0;sn=sn+Math.imul(un,nl)|0;on=on+Math.imul(un,ll)|0;var Nl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Nl>>>26)|0;Nl&=67108863;In=Math.imul(wn,On);sn=Math.imul(wn,Tn);sn=sn+Math.imul(Fn,On)|0;on=Math.imul(Fn,Tn);In=In+Math.imul(En,Mn)|0;sn=sn+Math.imul(En,zn)|0;sn=sn+Math.imul(Vn,Mn)|0;on=on+Math.imul(Vn,zn)|0;In=In+Math.imul(yn,jn)|0;sn=sn+Math.imul(yn,Dn)|0;sn=sn+Math.imul(vn,jn)|0;on=on+Math.imul(vn,Dn)|0;In=In+Math.imul(Wn,Kn)|0;sn=sn+Math.imul(Wn,Pn)|0;sn=sn+Math.imul(Nn,Kn)|0;on=on+Math.imul(Nn,Pn)|0;In=In+Math.imul(hn,$n)|0;sn=sn+Math.imul(hn,el)|0;sn=sn+Math.imul(Zn,$n)|0;on=on+Math.imul(Zn,el)|0;In=In+Math.imul(mn,nl)|0;sn=sn+Math.imul(mn,ll)|0;sn=sn+Math.imul(bn,nl)|0;on=on+Math.imul(bn,ll)|0;In=In+Math.imul(dn,rl)|0;sn=sn+Math.imul(dn,Il)|0;sn=sn+Math.imul(un,rl)|0;on=on+Math.imul(un,Il)|0;var gl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(gl>>>26)|0;gl&=67108863;In=Math.imul(fn,On);sn=Math.imul(fn,Tn);sn=sn+Math.imul(Hn,On)|0;on=Math.imul(Hn,Tn);In=In+Math.imul(wn,Mn)|0;sn=sn+Math.imul(wn,zn)|0;sn=sn+Math.imul(Fn,Mn)|0;on=on+Math.imul(Fn,zn)|0;In=In+Math.imul(En,jn)|0;sn=sn+Math.imul(En,Dn)|0;sn=sn+Math.imul(Vn,jn)|0;on=on+Math.imul(Vn,Dn)|0;In=In+Math.imul(yn,Kn)|0;sn=sn+Math.imul(yn,Pn)|0;sn=sn+Math.imul(vn,Kn)|0;on=on+Math.imul(vn,Pn)|0;In=In+Math.imul(Wn,$n)|0;sn=sn+Math.imul(Wn,el)|0;sn=sn+Math.imul(Nn,$n)|0;on=on+Math.imul(Nn,el)|0;In=In+Math.imul(hn,nl)|0;sn=sn+Math.imul(hn,ll)|0;sn=sn+Math.imul(Zn,nl)|0;on=on+Math.imul(Zn,ll)|0;In=In+Math.imul(mn,rl)|0;sn=sn+Math.imul(mn,Il)|0;sn=sn+Math.imul(bn,rl)|0;on=on+Math.imul(bn,Il)|0;In=In+Math.imul(dn,ol)|0;sn=sn+Math.imul(dn,cl)|0;sn=sn+Math.imul(un,ol)|0;on=on+Math.imul(un,cl)|0;var yl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(yl>>>26)|0;yl&=67108863;In=Math.imul(Xn,On);sn=Math.imul(Xn,Tn);sn=sn+Math.imul(kn,On)|0;on=Math.imul(kn,Tn);In=In+Math.imul(fn,Mn)|0;sn=sn+Math.imul(fn,zn)|0;sn=sn+Math.imul(Hn,Mn)|0;on=on+Math.imul(Hn,zn)|0;In=In+Math.imul(wn,jn)|0;sn=sn+Math.imul(wn,Dn)|0;sn=sn+Math.imul(Fn,jn)|0;on=on+Math.imul(Fn,Dn)|0;In=In+Math.imul(En,Kn)|0;sn=sn+Math.imul(En,Pn)|0;sn=sn+Math.imul(Vn,Kn)|0;on=on+Math.imul(Vn,Pn)|0;In=In+Math.imul(yn,$n)|0;sn=sn+Math.imul(yn,el)|0;sn=sn+Math.imul(vn,$n)|0;on=on+Math.imul(vn,el)|0;In=In+Math.imul(Wn,nl)|0;sn=sn+Math.imul(Wn,ll)|0;sn=sn+Math.imul(Nn,nl)|0;on=on+Math.imul(Nn,ll)|0;In=In+Math.imul(hn,rl)|0;sn=sn+Math.imul(hn,Il)|0;sn=sn+Math.imul(Zn,rl)|0;on=on+Math.imul(Zn,Il)|0;In=In+Math.imul(mn,ol)|0;sn=sn+Math.imul(mn,cl)|0;sn=sn+Math.imul(bn,ol)|0;on=on+Math.imul(bn,cl)|0;In=In+Math.imul(dn,dl)|0;sn=sn+Math.imul(dn,ul)|0;sn=sn+Math.imul(un,dl)|0;on=on+Math.imul(un,ul)|0;var vl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(vl>>>26)|0;vl&=67108863;In=Math.imul(Ln,On);sn=Math.imul(Ln,Tn);sn=sn+Math.imul(Bn,On)|0;on=Math.imul(Bn,Tn);In=In+Math.imul(Xn,Mn)|0;sn=sn+Math.imul(Xn,zn)|0;sn=sn+Math.imul(kn,Mn)|0;on=on+Math.imul(kn,zn)|0;In=In+Math.imul(fn,jn)|0;sn=sn+Math.imul(fn,Dn)|0;sn=sn+Math.imul(Hn,jn)|0;on=on+Math.imul(Hn,Dn)|0;In=In+Math.imul(wn,Kn)|0;sn=sn+Math.imul(wn,Pn)|0;sn=sn+Math.imul(Fn,Kn)|0;on=on+Math.imul(Fn,Pn)|0;In=In+Math.imul(En,$n)|0;sn=sn+Math.imul(En,el)|0;sn=sn+Math.imul(Vn,$n)|0;on=on+Math.imul(Vn,el)|0;In=In+Math.imul(yn,nl)|0;sn=sn+Math.imul(yn,ll)|0;sn=sn+Math.imul(vn,nl)|0;on=on+Math.imul(vn,ll)|0;In=In+Math.imul(Wn,rl)|0;sn=sn+Math.imul(Wn,Il)|0;sn=sn+Math.imul(Nn,rl)|0;on=on+Math.imul(Nn,Il)|0;In=In+Math.imul(hn,ol)|0;sn=sn+Math.imul(hn,cl)|0;sn=sn+Math.imul(Zn,ol)|0;on=on+Math.imul(Zn,cl)|0;In=In+Math.imul(mn,dl)|0;sn=sn+Math.imul(mn,ul)|0;sn=sn+Math.imul(bn,dl)|0;on=on+Math.imul(bn,ul)|0;In=In+Math.imul(dn,ml)|0;sn=sn+Math.imul(dn,bl)|0;sn=sn+Math.imul(un,ml)|0;on=on+Math.imul(un,bl)|0;var Yl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Yl>>>26)|0;Yl&=67108863;In=Math.imul(Ln,Mn);sn=Math.imul(Ln,zn);sn=sn+Math.imul(Bn,Mn)|0;on=Math.imul(Bn,zn);In=In+Math.imul(Xn,jn)|0;sn=sn+Math.imul(Xn,Dn)|0;sn=sn+Math.imul(kn,jn)|0;on=on+Math.imul(kn,Dn)|0;In=In+Math.imul(fn,Kn)|0;sn=sn+Math.imul(fn,Pn)|0;sn=sn+Math.imul(Hn,Kn)|0;on=on+Math.imul(Hn,Pn)|0;In=In+Math.imul(wn,$n)|0;sn=sn+Math.imul(wn,el)|0;sn=sn+Math.imul(Fn,$n)|0;on=on+Math.imul(Fn,el)|0;In=In+Math.imul(En,nl)|0;sn=sn+Math.imul(En,ll)|0;sn=sn+Math.imul(Vn,nl)|0;on=on+Math.imul(Vn,ll)|0;In=In+Math.imul(yn,rl)|0;sn=sn+Math.imul(yn,Il)|0;sn=sn+Math.imul(vn,rl)|0;on=on+Math.imul(vn,Il)|0;In=In+Math.imul(Wn,ol)|0;sn=sn+Math.imul(Wn,cl)|0;sn=sn+Math.imul(Nn,ol)|0;on=on+Math.imul(Nn,cl)|0;In=In+Math.imul(hn,dl)|0;sn=sn+Math.imul(hn,ul)|0;sn=sn+Math.imul(Zn,dl)|0;on=on+Math.imul(Zn,ul)|0;In=In+Math.imul(mn,ml)|0;sn=sn+Math.imul(mn,bl)|0;sn=sn+Math.imul(bn,ml)|0;on=on+Math.imul(bn,bl)|0;var El=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(El>>>26)|0;El&=67108863;In=Math.imul(Ln,jn);sn=Math.imul(Ln,Dn);sn=sn+Math.imul(Bn,jn)|0;on=Math.imul(Bn,Dn);In=In+Math.imul(Xn,Kn)|0;sn=sn+Math.imul(Xn,Pn)|0;sn=sn+Math.imul(kn,Kn)|0;on=on+Math.imul(kn,Pn)|0;In=In+Math.imul(fn,$n)|0;sn=sn+Math.imul(fn,el)|0;sn=sn+Math.imul(Hn,$n)|0;on=on+Math.imul(Hn,el)|0;In=In+Math.imul(wn,nl)|0;sn=sn+Math.imul(wn,ll)|0;sn=sn+Math.imul(Fn,nl)|0;on=on+Math.imul(Fn,ll)|0;In=In+Math.imul(En,rl)|0;sn=sn+Math.imul(En,Il)|0;sn=sn+Math.imul(Vn,rl)|0;on=on+Math.imul(Vn,Il)|0;In=In+Math.imul(yn,ol)|0;sn=sn+Math.imul(yn,cl)|0;sn=sn+Math.imul(vn,ol)|0;on=on+Math.imul(vn,cl)|0;In=In+Math.imul(Wn,dl)|0;sn=sn+Math.imul(Wn,ul)|0;sn=sn+Math.imul(Nn,dl)|0;on=on+Math.imul(Nn,ul)|0;In=In+Math.imul(hn,ml)|0;sn=sn+Math.imul(hn,bl)|0;sn=sn+Math.imul(Zn,ml)|0;on=on+Math.imul(Zn,bl)|0;var Vl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Vl>>>26)|0;Vl&=67108863;In=Math.imul(Ln,Kn);sn=Math.imul(Ln,Pn);sn=sn+Math.imul(Bn,Kn)|0;on=Math.imul(Bn,Pn);In=In+Math.imul(Xn,$n)|0;sn=sn+Math.imul(Xn,el)|0;sn=sn+Math.imul(kn,$n)|0;on=on+Math.imul(kn,el)|0;In=In+Math.imul(fn,nl)|0;sn=sn+Math.imul(fn,ll)|0;sn=sn+Math.imul(Hn,nl)|0;on=on+Math.imul(Hn,ll)|0;In=In+Math.imul(wn,rl)|0;sn=sn+Math.imul(wn,Il)|0;sn=sn+Math.imul(Fn,rl)|0;on=on+Math.imul(Fn,Il)|0;In=In+Math.imul(En,ol)|0;sn=sn+Math.imul(En,cl)|0;sn=sn+Math.imul(Vn,ol)|0;on=on+Math.imul(Vn,cl)|0;In=In+Math.imul(yn,dl)|0;sn=sn+Math.imul(yn,ul)|0;sn=sn+Math.imul(vn,dl)|0;on=on+Math.imul(vn,ul)|0;In=In+Math.imul(Wn,ml)|0;sn=sn+Math.imul(Wn,bl)|0;sn=sn+Math.imul(Nn,ml)|0;on=on+Math.imul(Nn,bl)|0;var Rl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Rl>>>26)|0;Rl&=67108863;In=Math.imul(Ln,$n);sn=Math.imul(Ln,el);sn=sn+Math.imul(Bn,$n)|0;on=Math.imul(Bn,el);In=In+Math.imul(Xn,nl)|0;sn=sn+Math.imul(Xn,ll)|0;sn=sn+Math.imul(kn,nl)|0;on=on+Math.imul(kn,ll)|0;In=In+Math.imul(fn,rl)|0;sn=sn+Math.imul(fn,Il)|0;sn=sn+Math.imul(Hn,rl)|0;on=on+Math.imul(Hn,Il)|0;In=In+Math.imul(wn,ol)|0;sn=sn+Math.imul(wn,cl)|0;sn=sn+Math.imul(Fn,ol)|0;on=on+Math.imul(Fn,cl)|0;In=In+Math.imul(En,dl)|0;sn=sn+Math.imul(En,ul)|0;sn=sn+Math.imul(Vn,dl)|0;on=on+Math.imul(Vn,ul)|0;In=In+Math.imul(yn,ml)|0;sn=sn+Math.imul(yn,bl)|0;sn=sn+Math.imul(vn,ml)|0;on=on+Math.imul(vn,bl)|0;var wl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(wl>>>26)|0;wl&=67108863;In=Math.imul(Ln,nl);sn=Math.imul(Ln,ll);sn=sn+Math.imul(Bn,nl)|0;on=Math.imul(Bn,ll);In=In+Math.imul(Xn,rl)|0;sn=sn+Math.imul(Xn,Il)|0;sn=sn+Math.imul(kn,rl)|0;on=on+Math.imul(kn,Il)|0;In=In+Math.imul(fn,ol)|0;sn=sn+Math.imul(fn,cl)|0;sn=sn+Math.imul(Hn,ol)|0;on=on+Math.imul(Hn,cl)|0;In=In+Math.imul(wn,dl)|0;sn=sn+Math.imul(wn,ul)|0;sn=sn+Math.imul(Fn,dl)|0;on=on+Math.imul(Fn,ul)|0;In=In+Math.imul(En,ml)|0;sn=sn+Math.imul(En,bl)|0;sn=sn+Math.imul(Vn,ml)|0;on=on+Math.imul(Vn,bl)|0;var Fl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Fl>>>26)|0;Fl&=67108863;In=Math.imul(Ln,rl);sn=Math.imul(Ln,Il);sn=sn+Math.imul(Bn,rl)|0;on=Math.imul(Bn,Il);In=In+Math.imul(Xn,ol)|0;sn=sn+Math.imul(Xn,cl)|0;sn=sn+Math.imul(kn,ol)|0;on=on+Math.imul(kn,cl)|0;In=In+Math.imul(fn,dl)|0;sn=sn+Math.imul(fn,ul)|0;sn=sn+Math.imul(Hn,dl)|0;on=on+Math.imul(Hn,ul)|0;In=In+Math.imul(wn,ml)|0;sn=sn+Math.imul(wn,bl)|0;sn=sn+Math.imul(Fn,ml)|0;on=on+Math.imul(Fn,bl)|0;var Ql=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Ql>>>26)|0;Ql&=67108863;In=Math.imul(Ln,ol);sn=Math.imul(Ln,cl);sn=sn+Math.imul(Bn,ol)|0;on=Math.imul(Bn,cl);In=In+Math.imul(Xn,dl)|0;sn=sn+Math.imul(Xn,ul)|0;sn=sn+Math.imul(kn,dl)|0;on=on+Math.imul(kn,ul)|0;In=In+Math.imul(fn,ml)|0;sn=sn+Math.imul(fn,bl)|0;sn=sn+Math.imul(Hn,ml)|0;on=on+Math.imul(Hn,bl)|0;var fl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(fl>>>26)|0;fl&=67108863;In=Math.imul(Ln,dl);sn=Math.imul(Ln,ul);sn=sn+Math.imul(Bn,dl)|0;on=Math.imul(Bn,ul);In=In+Math.imul(Xn,ml)|0;sn=sn+Math.imul(Xn,bl)|0;sn=sn+Math.imul(kn,ml)|0;on=on+Math.imul(kn,bl)|0;var Hl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Hl>>>26)|0;Hl&=67108863;In=Math.imul(Ln,ml);sn=Math.imul(Ln,bl);sn=sn+Math.imul(Bn,ml)|0;on=Math.imul(Bn,bl);var Cl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Cl>>>26)|0;Cl&=67108863;an[0]=Gl;an[1]=hl;an[2]=Zl;an[3]=Al;an[4]=Wl;an[5]=Nl;an[6]=gl;an[7]=yl;an[8]=vl;an[9]=Yl;an[10]=El;an[11]=Vl;an[12]=Rl;an[13]=wl;an[14]=Fl;an[15]=Ql;an[16]=fl;an[17]=Hl;an[18]=Cl;if(rn!==0){an[19]=rn;en.length++}return en};if(!Math.imul){In=smallMulTo}function bigMulTo(Wt,Pt,en){en.negative=Pt.negative^Wt.negative;en.length=Wt.length+Pt.length;var tn=0;var nn=0;for(var an=0;an>>26)|0;nn+=rn>>>26;rn&=67108863}en.words[an]=In;tn=rn;rn=nn}if(tn!==0){en.words[an]=tn}else{en.length--}return en.strip()}function jumboMulTo(Wt,Pt,en){var tn=new FFTM;return tn.mulp(Wt,Pt,en)}BN.prototype.mulTo=function mulTo(Wt,Pt){var en;var tn=this.length+Wt.length;if(this.length===10&&Wt.length===10){en=In(this,Wt,Pt)}else if(tn<63){en=smallMulTo(this,Wt,Pt)}else if(tn<1024){en=bigMulTo(this,Wt,Pt)}else{en=jumboMulTo(this,Wt,Pt)}return en};function FFTM(Wt,Pt){this.x=Wt;this.y=Pt}FFTM.prototype.makeRBT=function makeRBT(Wt){var Pt=new Array(Wt);var en=BN.prototype._countBits(Wt)-1;for(var tn=0;tn>=1}return tn};FFTM.prototype.permute=function permute(Wt,Pt,en,tn,nn,an){for(var rn=0;rn>>1){nn++}return 1<>>13;en[2*an+1]=nn&8191;nn=nn>>>13}for(an=2*Pt;an>=26;Pt+=tn/67108864|0;Pt+=nn>>>26;this.words[en]=nn&67108863}if(Pt!==0){this.words[en]=Pt;this.length++}return this};BN.prototype.muln=function muln(Wt){return this.clone().imuln(Wt)};BN.prototype.sqr=function sqr(){return this.mul(this)};BN.prototype.isqr=function isqr(){return this.imul(this.clone())};BN.prototype.pow=function pow(Wt){var Pt=toBitArray(Wt);if(Pt.length===0)return new BN(1);var en=this;for(var tn=0;tn=0);var Pt=Wt%26;var en=(Wt-Pt)/26;var tn=67108863>>>26-Pt<<26-Pt;var nn;if(Pt!==0){var an=0;for(nn=0;nn>>26-Pt}if(an){this.words[nn]=an;this.length++}}if(en!==0){for(nn=this.length-1;nn>=0;nn--){this.words[nn+en]=this.words[nn]}for(nn=0;nn=0);var tn;if(Pt){tn=(Pt-Pt%26)/26}else{tn=0}var nn=Wt%26;var an=Math.min((Wt-nn)/26,this.length);var rn=67108863^67108863>>>nn<an){this.length-=an;for(sn=0;sn=0&&(on!==0||sn>=tn);sn--){var cn=this.words[sn]|0;this.words[sn]=on<<26-nn|cn>>>nn;on=cn&rn}if(In&&on!==0){In.words[In.length++]=on}if(this.length===0){this.words[0]=0;this.length=1}return this.strip()};BN.prototype.ishrn=function ishrn(Wt,Pt,en){assert(this.negative===0);return this.iushrn(Wt,Pt,en)};BN.prototype.shln=function shln(Wt){return this.clone().ishln(Wt)};BN.prototype.ushln=function ushln(Wt){return this.clone().iushln(Wt)};BN.prototype.shrn=function shrn(Wt){return this.clone().ishrn(Wt)};BN.prototype.ushrn=function ushrn(Wt){return this.clone().iushrn(Wt)};BN.prototype.testn=function testn(Wt){assert(typeof Wt==="number"&&Wt>=0);var Pt=Wt%26;var en=(Wt-Pt)/26;var tn=1<=0);var Pt=Wt%26;var en=(Wt-Pt)/26;assert(this.negative===0,"imaskn works only with positive numbers");if(this.length<=en){return this}if(Pt!==0){en++}this.length=Math.min(en,this.length);if(Pt!==0){var tn=67108863^67108863>>>Pt<=67108864;Pt++){this.words[Pt]-=67108864;if(Pt===this.length-1){this.words[Pt+1]=1}else{this.words[Pt+1]++}}this.length=Math.max(this.length,Pt+1);return this};BN.prototype.isubn=function isubn(Wt){assert(typeof Wt==="number");assert(Wt<67108864);if(Wt<0)return this.iaddn(-Wt);if(this.negative!==0){this.negative=0;this.iaddn(Wt);this.negative=1;return this}this.words[0]-=Wt;if(this.length===1&&this.words[0]<0){this.words[0]=-this.words[0];this.negative=1}else{for(var Pt=0;Pt>26)-(In/67108864|0);this.words[nn+en]=an&67108863}for(;nn>26;this.words[nn+en]=an&67108863}if(rn===0)return this.strip();assert(rn===-1);rn=0;for(nn=0;nn>26;this.words[nn]=an&67108863}this.negative=1;return this.strip()};BN.prototype._wordDiv=function _wordDiv(Wt,Pt){var en=this.length-Wt.length;var tn=this.clone();var nn=Wt;var an=nn.words[nn.length-1]|0;var rn=this._countBits(an);en=26-rn;if(en!==0){nn=nn.ushln(en);tn.iushln(en);an=nn.words[nn.length-1]|0}var In=tn.length-nn.length;var sn;if(Pt!=="mod"){sn=new BN(null);sn.length=In+1;sn.words=new Array(sn.length);for(var on=0;on=0;dn--){var un=(tn.words[nn.length+dn]|0)*67108864+(tn.words[nn.length+dn-1]|0);un=Math.min(un/an|0,67108863);tn._ishlnsubmul(nn,un,dn);while(tn.negative!==0){un--;tn.negative=0;tn._ishlnsubmul(nn,1,dn);if(!tn.isZero()){tn.negative^=1}}if(sn){sn.words[dn]=un}}if(sn){sn.strip()}tn.strip();if(Pt!=="div"&&en!==0){tn.iushrn(en)}return{div:sn||null,mod:tn}};BN.prototype.divmod=function divmod(Wt,Pt,en){assert(!Wt.isZero());if(this.isZero()){return{div:new BN(0),mod:new BN(0)}}var tn,nn,an;if(this.negative!==0&&Wt.negative===0){an=this.neg().divmod(Wt,Pt);if(Pt!=="mod"){tn=an.div.neg()}if(Pt!=="div"){nn=an.mod.neg();if(en&&nn.negative!==0){nn.iadd(Wt)}}return{div:tn,mod:nn}}if(this.negative===0&&Wt.negative!==0){an=this.divmod(Wt.neg(),Pt);if(Pt!=="mod"){tn=an.div.neg()}return{div:tn,mod:an.mod}}if((this.negative&Wt.negative)!==0){an=this.neg().divmod(Wt.neg(),Pt);if(Pt!=="div"){nn=an.mod.neg();if(en&&nn.negative!==0){nn.isub(Wt)}}return{div:an.div,mod:nn}}if(Wt.length>this.length||this.cmp(Wt)<0){return{div:new BN(0),mod:this}}if(Wt.length===1){if(Pt==="div"){return{div:this.divn(Wt.words[0]),mod:null}}if(Pt==="mod"){return{div:null,mod:new BN(this.modn(Wt.words[0]))}}return{div:this.divn(Wt.words[0]),mod:new BN(this.modn(Wt.words[0]))}}return this._wordDiv(Wt,Pt)};BN.prototype.div=function div(Wt){return this.divmod(Wt,"div",false).div};BN.prototype.mod=function mod(Wt){return this.divmod(Wt,"mod",false).mod};BN.prototype.umod=function umod(Wt){return this.divmod(Wt,"mod",true).mod};BN.prototype.divRound=function divRound(Wt){var Pt=this.divmod(Wt);if(Pt.mod.isZero())return Pt.div;var en=Pt.div.negative!==0?Pt.mod.isub(Wt):Pt.mod;var tn=Wt.ushrn(1);var nn=Wt.andln(1);var an=en.cmp(tn);if(an<0||nn===1&&an===0)return Pt.div;return Pt.div.negative!==0?Pt.div.isubn(1):Pt.div.iaddn(1)};BN.prototype.modn=function modn(Wt){assert(Wt<=67108863);var Pt=(1<<26)%Wt;var en=0;for(var tn=this.length-1;tn>=0;tn--){en=(Pt*en+(this.words[tn]|0))%Wt}return en};BN.prototype.idivn=function idivn(Wt){assert(Wt<=67108863);var Pt=0;for(var en=this.length-1;en>=0;en--){var tn=(this.words[en]|0)+Pt*67108864;this.words[en]=tn/Wt|0;Pt=tn%Wt}return this.strip()};BN.prototype.divn=function divn(Wt){return this.clone().idivn(Wt)};BN.prototype.egcd=function egcd(Wt){assert(Wt.negative===0);assert(!Wt.isZero());var Pt=this;var en=Wt.clone();if(Pt.negative!==0){Pt=Pt.umod(Wt)}else{Pt=Pt.clone()}var tn=new BN(1);var nn=new BN(0);var an=new BN(0);var rn=new BN(1);var In=0;while(Pt.isEven()&&en.isEven()){Pt.iushrn(1);en.iushrn(1);++In}var sn=en.clone();var on=Pt.clone();while(!Pt.isZero()){for(var cn=0,dn=1;(Pt.words[0]&dn)===0&&cn<26;++cn,dn<<=1);if(cn>0){Pt.iushrn(cn);while(cn-- >0){if(tn.isOdd()||nn.isOdd()){tn.iadd(sn);nn.isub(on)}tn.iushrn(1);nn.iushrn(1)}}for(var un=0,pn=1;(en.words[0]&pn)===0&&un<26;++un,pn<<=1);if(un>0){en.iushrn(un);while(un-- >0){if(an.isOdd()||rn.isOdd()){an.iadd(sn);rn.isub(on)}an.iushrn(1);rn.iushrn(1)}}if(Pt.cmp(en)>=0){Pt.isub(en);tn.isub(an);nn.isub(rn)}else{en.isub(Pt);an.isub(tn);rn.isub(nn)}}return{a:an,b:rn,gcd:en.iushln(In)}};BN.prototype._invmp=function _invmp(Wt){assert(Wt.negative===0);assert(!Wt.isZero());var Pt=this;var en=Wt.clone();if(Pt.negative!==0){Pt=Pt.umod(Wt)}else{Pt=Pt.clone()}var tn=new BN(1);var nn=new BN(0);var an=en.clone();while(Pt.cmpn(1)>0&&en.cmpn(1)>0){for(var rn=0,In=1;(Pt.words[0]&In)===0&&rn<26;++rn,In<<=1);if(rn>0){Pt.iushrn(rn);while(rn-- >0){if(tn.isOdd()){tn.iadd(an)}tn.iushrn(1)}}for(var sn=0,on=1;(en.words[0]&on)===0&&sn<26;++sn,on<<=1);if(sn>0){en.iushrn(sn);while(sn-- >0){if(nn.isOdd()){nn.iadd(an)}nn.iushrn(1)}}if(Pt.cmp(en)>=0){Pt.isub(en);tn.isub(nn)}else{en.isub(Pt);nn.isub(tn)}}var cn;if(Pt.cmpn(1)===0){cn=tn}else{cn=nn}if(cn.cmpn(0)<0){cn.iadd(Wt)}return cn};BN.prototype.gcd=function gcd(Wt){if(this.isZero())return Wt.abs();if(Wt.isZero())return this.abs();var Pt=this.clone();var en=Wt.clone();Pt.negative=0;en.negative=0;for(var tn=0;Pt.isEven()&&en.isEven();tn++){Pt.iushrn(1);en.iushrn(1)}do{while(Pt.isEven()){Pt.iushrn(1)}while(en.isEven()){en.iushrn(1)}var nn=Pt.cmp(en);if(nn<0){var an=Pt;Pt=en;en=an}else if(nn===0||en.cmpn(1)===0){break}Pt.isub(en)}while(true);return en.iushln(tn)};BN.prototype.invm=function invm(Wt){return this.egcd(Wt).a.umod(Wt)};BN.prototype.isEven=function isEven(){return(this.words[0]&1)===0};BN.prototype.isOdd=function isOdd(){return(this.words[0]&1)===1};BN.prototype.andln=function andln(Wt){return this.words[0]&Wt};BN.prototype.bincn=function bincn(Wt){assert(typeof Wt==="number");var Pt=Wt%26;var en=(Wt-Pt)/26;var tn=1<>>26;rn&=67108863;this.words[an]=rn}if(nn!==0){this.words[an]=nn;this.length++}return this};BN.prototype.isZero=function isZero(){return this.length===1&&this.words[0]===0};BN.prototype.cmpn=function cmpn(Wt){var Pt=Wt<0;if(this.negative!==0&&!Pt)return-1;if(this.negative===0&&Pt)return 1;this.strip();var en;if(this.length>1){en=1}else{if(Pt){Wt=-Wt}assert(Wt<=67108863,"Number is too big");var tn=this.words[0]|0;en=tn===Wt?0:tnWt.length)return 1;if(this.length=0;en--){var tn=this.words[en]|0;var nn=Wt.words[en]|0;if(tn===nn)continue;if(tnnn){Pt=1}break}return Pt};BN.prototype.gtn=function gtn(Wt){return this.cmpn(Wt)===1};BN.prototype.gt=function gt(Wt){return this.cmp(Wt)===1};BN.prototype.gten=function gten(Wt){return this.cmpn(Wt)>=0};BN.prototype.gte=function gte(Wt){return this.cmp(Wt)>=0};BN.prototype.ltn=function ltn(Wt){return this.cmpn(Wt)===-1};BN.prototype.lt=function lt(Wt){return this.cmp(Wt)===-1};BN.prototype.lten=function lten(Wt){return this.cmpn(Wt)<=0};BN.prototype.lte=function lte(Wt){return this.cmp(Wt)<=0};BN.prototype.eqn=function eqn(Wt){return this.cmpn(Wt)===0};BN.prototype.eq=function eq(Wt){return this.cmp(Wt)===0};BN.red=function red(Wt){return new Red(Wt)};BN.prototype.toRed=function toRed(Wt){assert(!this.red,"Already a number in reduction context");assert(this.negative===0,"red works only with positives");return Wt.convertTo(this)._forceRed(Wt)};BN.prototype.fromRed=function fromRed(){assert(this.red,"fromRed works only with numbers in reduction context");return this.red.convertFrom(this)};BN.prototype._forceRed=function _forceRed(Wt){this.red=Wt;return this};BN.prototype.forceRed=function forceRed(Wt){assert(!this.red,"Already a number in reduction context");return this._forceRed(Wt)};BN.prototype.redAdd=function redAdd(Wt){assert(this.red,"redAdd works only with red numbers");return this.red.add(this,Wt)};BN.prototype.redIAdd=function redIAdd(Wt){assert(this.red,"redIAdd works only with red numbers");return this.red.iadd(this,Wt)};BN.prototype.redSub=function redSub(Wt){assert(this.red,"redSub works only with red numbers");return this.red.sub(this,Wt)};BN.prototype.redISub=function redISub(Wt){assert(this.red,"redISub works only with red numbers");return this.red.isub(this,Wt)};BN.prototype.redShl=function redShl(Wt){assert(this.red,"redShl works only with red numbers");return this.red.shl(this,Wt)};BN.prototype.redMul=function redMul(Wt){assert(this.red,"redMul works only with red numbers");this.red._verify2(this,Wt);return this.red.mul(this,Wt)};BN.prototype.redIMul=function redIMul(Wt){assert(this.red,"redMul works only with red numbers");this.red._verify2(this,Wt);return this.red.imul(this,Wt)};BN.prototype.redSqr=function redSqr(){assert(this.red,"redSqr works only with red numbers");this.red._verify1(this);return this.red.sqr(this)};BN.prototype.redISqr=function redISqr(){assert(this.red,"redISqr works only with red numbers");this.red._verify1(this);return this.red.isqr(this)};BN.prototype.redSqrt=function redSqrt(){assert(this.red,"redSqrt works only with red numbers");this.red._verify1(this);return this.red.sqrt(this)};BN.prototype.redInvm=function redInvm(){assert(this.red,"redInvm works only with red numbers");this.red._verify1(this);return this.red.invm(this)};BN.prototype.redNeg=function redNeg(){assert(this.red,"redNeg works only with red numbers");this.red._verify1(this);return this.red.neg(this)};BN.prototype.redPow=function redPow(Wt){assert(this.red&&!Wt.red,"redPow(normalNum)");this.red._verify1(this);return this.red.pow(this,Wt)};var sn={k256:null,p224:null,p192:null,p25519:null};function MPrime(Wt,Pt){this.name=Wt;this.p=new BN(Pt,16);this.n=this.p.bitLength();this.k=new BN(1).iushln(this.n).isub(this.p);this.tmp=this._tmp()}MPrime.prototype._tmp=function _tmp(){var Wt=new BN(null);Wt.words=new Array(Math.ceil(this.n/13));return Wt};MPrime.prototype.ireduce=function ireduce(Wt){var Pt=Wt;var en;do{this.split(Pt,this.tmp);Pt=this.imulK(Pt);Pt=Pt.iadd(this.tmp);en=Pt.bitLength()}while(en>this.n);var tn=en0){Pt.isub(this.p)}else{if(Pt.strip!==void 0){Pt.strip()}else{Pt._strip()}}return Pt};MPrime.prototype.split=function split(Wt,Pt){Wt.iushrn(this.n,0,Pt)};MPrime.prototype.imulK=function imulK(Wt){return Wt.imul(this.k)};function K256(){MPrime.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}inherits2(K256,MPrime);K256.prototype.split=function split(Wt,Pt){var en=4194303;var tn=Math.min(Wt.length,9);for(var nn=0;nn>>22;an=rn}an>>>=22;Wt.words[nn-10]=an;if(an===0&&Wt.length>10){Wt.length-=10}else{Wt.length-=9}};K256.prototype.imulK=function imulK(Wt){Wt.words[Wt.length]=0;Wt.words[Wt.length+1]=0;Wt.length+=2;var Pt=0;for(var en=0;en>>=26;Wt.words[en]=nn;Pt=tn}if(Pt!==0){Wt.words[Wt.length++]=Pt}return Wt};BN._prime=function prime(Wt){if(sn[Wt])return sn[Wt];var Pt;if(Wt==="k256"){Pt=new K256}else if(Wt==="p224"){Pt=new P224}else if(Wt==="p192"){Pt=new P192}else if(Wt==="p25519"){Pt=new P25519}else{throw new Error("Unknown prime "+Wt)}sn[Wt]=Pt;return Pt};function Red(Wt){if(typeof Wt==="string"){var Pt=BN._prime(Wt);this.m=Pt.p;this.prime=Pt}else{assert(Wt.gtn(1),"modulus must be greater than 1");this.m=Wt;this.prime=null}}Red.prototype._verify1=function _verify1(Wt){assert(Wt.negative===0,"red works only with positives");assert(Wt.red,"red works only with red numbers")};Red.prototype._verify2=function _verify2(Wt,Pt){assert((Wt.negative|Pt.negative)===0,"red works only with positives");assert(Wt.red&&Wt.red===Pt.red,"red works only with red numbers")};Red.prototype.imod=function imod(Wt){if(this.prime)return this.prime.ireduce(Wt)._forceRed(this);return Wt.umod(this.m)._forceRed(this)};Red.prototype.neg=function neg(Wt){if(Wt.isZero()){return Wt.clone()}return this.m.sub(Wt)._forceRed(this)};Red.prototype.add=function add(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.add(Pt);if(en.cmp(this.m)>=0){en.isub(this.m)}return en._forceRed(this)};Red.prototype.iadd=function iadd(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.iadd(Pt);if(en.cmp(this.m)>=0){en.isub(this.m)}return en};Red.prototype.sub=function sub(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.sub(Pt);if(en.cmpn(0)<0){en.iadd(this.m)}return en._forceRed(this)};Red.prototype.isub=function isub(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.isub(Pt);if(en.cmpn(0)<0){en.iadd(this.m)}return en};Red.prototype.shl=function shl(Wt,Pt){this._verify1(Wt);return this.imod(Wt.ushln(Pt))};Red.prototype.imul=function imul(Wt,Pt){this._verify2(Wt,Pt);return this.imod(Wt.imul(Pt))};Red.prototype.mul=function mul(Wt,Pt){this._verify2(Wt,Pt);return this.imod(Wt.mul(Pt))};Red.prototype.isqr=function isqr(Wt){return this.imul(Wt,Wt.clone())};Red.prototype.sqr=function sqr(Wt){return this.mul(Wt,Wt)};Red.prototype.sqrt=function sqrt(Wt){if(Wt.isZero())return Wt.clone();var Pt=this.m.andln(3);assert(Pt%2===1);if(Pt===3){var en=this.m.add(new BN(1)).iushrn(2);return this.pow(Wt,en)}var tn=this.m.subn(1);var nn=0;while(!tn.isZero()&&tn.andln(1)===0){nn++;tn.iushrn(1)}assert(!tn.isZero());var an=new BN(1).toRed(this);var rn=an.redNeg();var In=this.m.subn(1).iushrn(1);var sn=this.m.bitLength();sn=new BN(2*sn*sn).toRed(this);while(this.pow(sn,In).cmp(rn)!==0){sn.redIAdd(rn)}var on=this.pow(sn,tn);var cn=this.pow(Wt,tn.addn(1).iushrn(1));var dn=this.pow(Wt,tn);var un=nn;while(dn.cmp(an)!==0){var pn=dn;for(var mn=0;pn.cmp(an)!==0;mn++){pn=pn.redSqr()}assert(mn=0;nn--){var on=Pt.words[nn];for(var cn=sn-1;cn>=0;cn--){var dn=on>>cn&1;if(an!==tn[0]){an=this.sqr(an)}if(dn===0&&rn===0){In=0;continue}rn<<=1;rn|=dn;In++;if(In!==en&&(nn!==0||cn!==0))continue;an=this.mul(an,tn[rn]);In=0;rn=0}sn=26}return an};Red.prototype.convertTo=function convertTo(Wt){var Pt=Wt.umod(this.m);return Pt===Wt?Pt.clone():Pt};Red.prototype.convertFrom=function convertFrom(Wt){var Pt=Wt.clone();Pt.red=null;return Pt};BN.mont=function mont(Wt){return new Mont(Wt)};function Mont(Wt){Red.call(this,Wt);this.shift=this.m.bitLength();if(this.shift%26!==0){this.shift+=26-this.shift%26}this.r=new BN(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)}inherits2(Mont,Red);Mont.prototype.convertTo=function convertTo(Wt){return this.imod(Wt.ushln(this.shift))};Mont.prototype.convertFrom=function convertFrom(Wt){var Pt=this.imod(Wt.mul(this.rinv));Pt.red=null;return Pt};Mont.prototype.imul=function imul(Wt,Pt){if(Wt.isZero()||Pt.isZero()){Wt.words[0]=0;Wt.length=1;return Wt}var en=Wt.imul(Pt);var tn=en.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);var nn=en.isub(tn).iushrn(this.shift);var an=nn;if(nn.cmp(this.m)>=0){an=nn.isub(this.m)}else if(nn.cmpn(0)<0){an=nn.iadd(this.m)}return an._forceRed(this)};Mont.prototype.mul=function mul(Wt,Pt){if(Wt.isZero()||Pt.isZero())return new BN(0)._forceRed(this);var en=Wt.mul(Pt);var tn=en.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);var nn=en.isub(tn).iushrn(this.shift);var an=nn;if(nn.cmp(this.m)>=0){an=nn.isub(this.m)}else if(nn.cmpn(0)<0){an=nn.iadd(this.m)}return an._forceRed(this)};Mont.prototype.invm=function invm(Wt){var Pt=this.imod(Wt._invmp(this.m).mul(this.r2));return Pt._forceRed(this)}})(typeof Pt==="undefined"||Pt,Wt)}});var vl=__commonJS({"node_modules/minimalistic-crypto-utils/lib/utils.js"(Wt){"use strict";var Pt=Wt;function toArray2(Wt,Pt){if(Array.isArray(Wt))return Wt.slice();if(!Wt)return[];var en=[];if(typeof Wt!=="string"){for(var tn=0;tn>8;var rn=nn&255;if(an)en.push(an,rn);else en.push(rn)}}return en}Pt.toArray=toArray2;function zero2(Wt){if(Wt.length===1)return"0"+Wt;else return Wt}Pt.zero2=zero2;function toHex(Wt){var Pt="";for(var en=0;en(nn>>1)-1)In=(nn>>1)-sn;else In=sn;an.isubn(In)}else{In=0}tn[rn]=In;an.iushrn(1)}return tn}Pt.getNAF=getNAF;function getJSF(Wt,Pt){var en=[[],[]];Wt=Wt.clone();Pt=Pt.clone();var tn=0;var nn=0;var an;while(Wt.cmpn(-tn)>0||Pt.cmpn(-nn)>0){var rn=Wt.andln(3)+tn&3;var In=Pt.andln(3)+nn&3;if(rn===3)rn=-1;if(In===3)In=-1;var sn;if((rn&1)===0){sn=0}else{an=Wt.andln(7)+tn&7;if((an===3||an===5)&&In===2)sn=-rn;else sn=rn}en[0].push(sn);var on;if((In&1)===0){on=0}else{an=Pt.andln(7)+nn&7;if((an===3||an===5)&&rn===2)on=-In;else on=In}en[1].push(on);if(2*tn===sn+1)tn=1-tn;if(2*nn===on+1)nn=1-nn;Wt.iushrn(1);Pt.iushrn(1)}return en}Pt.getJSF=getJSF;function cachedProperty(Wt,Pt,en){var tn="_"+Pt;Wt.prototype[Pt]=function cachedProperty2(){return this[tn]!==void 0?this[tn]:this[tn]=en.call(this)}}Pt.cachedProperty=cachedProperty;function parseBytes(Wt){return typeof Wt==="string"?Pt.toArray(Wt,"hex"):Wt}Pt.parseBytes=parseBytes;function intFromLE(Wt){return new en(Wt,"hex","le")}Pt.intFromLE=intFromLE}});var El=__commonJS({"node_modules/brorand/index.js"(Wt,Pt){"use strict";var tn;Pt.exports=function rand(Wt){if(!tn)tn=new Rand(null);return tn.generate(Wt)};function Rand(Wt){this.rand=Wt}Pt.exports.Rand=Rand;Rand.prototype.generate=function generate(Wt){return this._rand(Wt)};Rand.prototype._rand=function _rand(Wt){if(this.rand.getBytes)return this.rand.getBytes(Wt);var Pt=new Uint8Array(Wt);for(var en=0;en0){this.redN=null}else{this._maxwellTrick=true;this.redN=this.n.toRed(this.red)}}Pt.exports=BaseCurve;BaseCurve.prototype.point=function point(){throw new Error("Not implemented")};BaseCurve.prototype.validate=function validate(){throw new Error("Not implemented")};BaseCurve.prototype._fixedNafMul=function _fixedNafMul(Wt,Pt){rn(Wt.precomputed);var en=Wt._getDoubles();var tn=nn(Pt,1,this._bitLength);var an=(1<=sn;cn--)on=(on<<1)+tn[cn];In.push(on)}var dn=this.jpoint(null,null,null);var un=this.jpoint(null,null,null);for(var pn=an;pn>0;pn--){for(sn=0;sn=0;on--){for(var cn=0;on>=0&&In[on]===0;on--)cn++;if(on>=0)cn++;sn=sn.dblp(cn);if(on<0)break;var dn=In[on];rn(dn!==0);if(Wt.type==="affine"){if(dn>0)sn=sn.mixedAdd(an[dn-1>>1]);else sn=sn.mixedAdd(an[-dn-1>>1].neg())}else{if(dn>0)sn=sn.add(an[dn-1>>1]);else sn=sn.add(an[-dn-1>>1].neg())}}return Wt.type==="affine"?sn.toP():sn};BaseCurve.prototype._wnafMulAdd=function _wnafMulAdd(Wt,Pt,en,tn,rn){var In=this._wnafT1;var sn=this._wnafT2;var on=this._wnafT3;var cn=0;var dn;var un;var pn;for(dn=0;dn=1;dn-=2){var bn=dn-1;var Gn=dn;if(In[bn]!==1||In[Gn]!==1){on[bn]=nn(en[bn],In[bn],this._bitLength);on[Gn]=nn(en[Gn],In[Gn],this._bitLength);cn=Math.max(on[bn].length,cn);cn=Math.max(on[Gn].length,cn);continue}var hn=[Pt[bn],null,null,Pt[Gn]];if(Pt[bn].y.cmp(Pt[Gn].y)===0){hn[1]=Pt[bn].add(Pt[Gn]);hn[2]=Pt[bn].toJ().mixedAdd(Pt[Gn].neg())}else if(Pt[bn].y.cmp(Pt[Gn].y.redNeg())===0){hn[1]=Pt[bn].toJ().mixedAdd(Pt[Gn]);hn[2]=Pt[bn].add(Pt[Gn].neg())}else{hn[1]=Pt[bn].toJ().mixedAdd(Pt[Gn]);hn[2]=Pt[bn].toJ().mixedAdd(Pt[Gn].neg())}var Zn=[-3,-1,-5,-7,0,7,5,1,3];var An=an(en[bn],en[Gn]);cn=Math.max(An[0].length,cn);on[bn]=new Array(cn);on[Gn]=new Array(cn);for(un=0;un=0;dn--){var vn=0;while(dn>=0){var Yn=true;for(un=0;un=0)vn++;gn=gn.dblp(vn);if(dn<0)break;for(un=0;un0)pn=sn[un][En-1>>1];else if(En<0)pn=sn[un][-En-1>>1].neg();if(pn.type==="affine")gn=gn.mixedAdd(pn);else gn=gn.add(pn)}}for(dn=0;dn=Math.ceil((Wt.bitLength()+1)/Pt.step)};BasePoint.prototype._getDoubles=function _getDoubles(Wt,Pt){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;var en=[this];var tn=this;for(var nn=0;nn=0){pn=on;mn=cn}if(dn.negative){dn=dn.neg();un=un.neg()}if(pn.negative){pn=pn.neg();mn=mn.neg()}return[{a:dn,b:un},{a:pn,b:mn}]};ShortCurve.prototype._endoSplit=function _endoSplit(Wt){var Pt=this.endo.basis;var en=Pt[0];var tn=Pt[1];var nn=tn.b.mul(Wt).divRound(this.n);var an=en.b.neg().mul(Wt).divRound(this.n);var rn=nn.mul(en.a);var In=an.mul(tn.a);var sn=nn.mul(en.b);var on=an.mul(tn.b);var cn=Wt.sub(rn).sub(In);var dn=sn.add(on).neg();return{k1:cn,k2:dn}};ShortCurve.prototype.pointFromX=function pointFromX(Wt,Pt){Wt=new tn(Wt,16);if(!Wt.red)Wt=Wt.toRed(this.red);var en=Wt.redSqr().redMul(Wt).redIAdd(Wt.redMul(this.a)).redIAdd(this.b);var nn=en.redSqrt();if(nn.redSqr().redSub(en).cmp(this.zero)!==0)throw new Error("invalid point");var an=nn.fromRed().isOdd();if(Pt&&!an||!Pt&&an)nn=nn.redNeg();return this.point(Wt,nn)};ShortCurve.prototype.validate=function validate(Wt){if(Wt.inf)return true;var Pt=Wt.x;var en=Wt.y;var tn=this.a.redMul(Pt);var nn=Pt.redSqr().redMul(Pt).redIAdd(tn).redIAdd(this.b);return en.redSqr().redISub(nn).cmpn(0)===0};ShortCurve.prototype._endoWnafMulAdd=function _endoWnafMulAdd(Wt,Pt,en){var tn=this._endoWnafT1;var nn=this._endoWnafT2;for(var an=0;an";return""};Point.prototype.isInfinity=function isInfinity(){return this.inf};Point.prototype.add=function add(Wt){if(this.inf)return Wt;if(Wt.inf)return this;if(this.eq(Wt))return this.dbl();if(this.neg().eq(Wt))return this.curve.point(null,null);if(this.x.cmp(Wt.x)===0)return this.curve.point(null,null);var Pt=this.y.redSub(Wt.y);if(Pt.cmpn(0)!==0)Pt=Pt.redMul(this.x.redSub(Wt.x).redInvm());var en=Pt.redSqr().redISub(this.x).redISub(Wt.x);var tn=Pt.redMul(this.x.redSub(en)).redISub(this.y);return this.curve.point(en,tn)};Point.prototype.dbl=function dbl(){if(this.inf)return this;var Wt=this.y.redAdd(this.y);if(Wt.cmpn(0)===0)return this.curve.point(null,null);var Pt=this.curve.a;var en=this.x.redSqr();var tn=Wt.redInvm();var nn=en.redAdd(en).redIAdd(en).redIAdd(Pt).redMul(tn);var an=nn.redSqr().redISub(this.x.redAdd(this.x));var rn=nn.redMul(this.x.redSub(an)).redISub(this.y);return this.curve.point(an,rn)};Point.prototype.getX=function getX(){return this.x.fromRed()};Point.prototype.getY=function getY(){return this.y.fromRed()};Point.prototype.mul=function mul(Wt){Wt=new tn(Wt,16);if(this.isInfinity())return this;else if(this._hasDoubles(Wt))return this.curve._fixedNafMul(this,Wt);else if(this.curve.endo)return this.curve._endoWnafMulAdd([this],[Wt]);else return this.curve._wnafMul(this,Wt)};Point.prototype.mulAdd=function mulAdd(Wt,Pt,en){var tn=[this,Pt];var nn=[Wt,en];if(this.curve.endo)return this.curve._endoWnafMulAdd(tn,nn);else return this.curve._wnafMulAdd(1,tn,nn,2)};Point.prototype.jmulAdd=function jmulAdd(Wt,Pt,en){var tn=[this,Pt];var nn=[Wt,en];if(this.curve.endo)return this.curve._endoWnafMulAdd(tn,nn,true);else return this.curve._wnafMulAdd(1,tn,nn,2,true)};Point.prototype.eq=function eq(Wt){return this===Wt||this.inf===Wt.inf&&(this.inf||this.x.cmp(Wt.x)===0&&this.y.cmp(Wt.y)===0)};Point.prototype.neg=function neg(Wt){if(this.inf)return this;var Pt=this.curve.point(this.x,this.y.redNeg());if(Wt&&this.precomputed){var en=this.precomputed;var negate=function(Wt){return Wt.neg()};Pt.precomputed={naf:en.naf&&{wnd:en.naf.wnd,points:en.naf.points.map(negate)},doubles:en.doubles&&{step:en.doubles.step,points:en.doubles.points.map(negate)}}}return Pt};Point.prototype.toJ=function toJ(){if(this.inf)return this.curve.jpoint(null,null,null);var Wt=this.curve.jpoint(this.x,this.y,this.curve.one);return Wt};function JPoint(Wt,Pt,en,nn){an.BasePoint.call(this,Wt,"jacobian");if(Pt===null&&en===null&&nn===null){this.x=this.curve.one;this.y=this.curve.one;this.z=new tn(0)}else{this.x=new tn(Pt,16);this.y=new tn(en,16);this.z=new tn(nn,16)}if(!this.x.red)this.x=this.x.toRed(this.curve.red);if(!this.y.red)this.y=this.y.toRed(this.curve.red);if(!this.z.red)this.z=this.z.toRed(this.curve.red);this.zOne=this.z===this.curve.one}nn(JPoint,an.BasePoint);ShortCurve.prototype.jpoint=function jpoint(Wt,Pt,en){return new JPoint(this,Wt,Pt,en)};JPoint.prototype.toP=function toP(){if(this.isInfinity())return this.curve.point(null,null);var Wt=this.z.redInvm();var Pt=Wt.redSqr();var en=this.x.redMul(Pt);var tn=this.y.redMul(Pt).redMul(Wt);return this.curve.point(en,tn)};JPoint.prototype.neg=function neg(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)};JPoint.prototype.add=function add(Wt){if(this.isInfinity())return Wt;if(Wt.isInfinity())return this;var Pt=Wt.z.redSqr();var en=this.z.redSqr();var tn=this.x.redMul(Pt);var nn=Wt.x.redMul(en);var an=this.y.redMul(Pt.redMul(Wt.z));var rn=Wt.y.redMul(en.redMul(this.z));var In=tn.redSub(nn);var sn=an.redSub(rn);if(In.cmpn(0)===0){if(sn.cmpn(0)!==0)return this.curve.jpoint(null,null,null);else return this.dbl()}var on=In.redSqr();var cn=on.redMul(In);var dn=tn.redMul(on);var un=sn.redSqr().redIAdd(cn).redISub(dn).redISub(dn);var pn=sn.redMul(dn.redISub(un)).redISub(an.redMul(cn));var mn=this.z.redMul(Wt.z).redMul(In);return this.curve.jpoint(un,pn,mn)};JPoint.prototype.mixedAdd=function mixedAdd(Wt){if(this.isInfinity())return Wt.toJ();if(Wt.isInfinity())return this;var Pt=this.z.redSqr();var en=this.x;var tn=Wt.x.redMul(Pt);var nn=this.y;var an=Wt.y.redMul(Pt).redMul(this.z);var rn=en.redSub(tn);var In=nn.redSub(an);if(rn.cmpn(0)===0){if(In.cmpn(0)!==0)return this.curve.jpoint(null,null,null);else return this.dbl()}var sn=rn.redSqr();var on=sn.redMul(rn);var cn=en.redMul(sn);var dn=In.redSqr().redIAdd(on).redISub(cn).redISub(cn);var un=In.redMul(cn.redISub(dn)).redISub(nn.redMul(on));var pn=this.z.redMul(rn);return this.curve.jpoint(dn,un,pn)};JPoint.prototype.dblp=function dblp(Wt){if(Wt===0)return this;if(this.isInfinity())return this;if(!Wt)return this.dbl();var Pt;if(this.curve.zeroA||this.curve.threeA){var en=this;for(Pt=0;Pt=0)return false;en.redIAdd(nn);if(this.x.cmp(en)===0)return true}};JPoint.prototype.inspect=function inspect(){if(this.isInfinity())return"";return""};JPoint.prototype.isInfinity=function isInfinity(){return this.z.cmpn(0)===0}}});var wl=__commonJS({"node_modules/elliptic/lib/elliptic/curve/mont.js"(Wt,Pt){"use strict";var en=yl();var tn=el();var nn=Vl();var an=Yl();function MontCurve(Wt){nn.call(this,"mont",Wt);this.a=new en(Wt.a,16).toRed(this.red);this.b=new en(Wt.b,16).toRed(this.red);this.i4=new en(4).toRed(this.red).redInvm();this.two=new en(2).toRed(this.red);this.a24=this.i4.redMul(this.a.redAdd(this.two))}tn(MontCurve,nn);Pt.exports=MontCurve;MontCurve.prototype.validate=function validate(Wt){var Pt=Wt.normalize().x;var en=Pt.redSqr();var tn=en.redMul(Pt).redAdd(en.redMul(this.a)).redAdd(Pt);var nn=tn.redSqrt();return nn.redSqr().cmp(tn)===0};function Point(Wt,Pt,tn){nn.BasePoint.call(this,Wt,"projective");if(Pt===null&&tn===null){this.x=this.curve.one;this.z=this.curve.zero}else{this.x=new en(Pt,16);this.z=new en(tn,16);if(!this.x.red)this.x=this.x.toRed(this.curve.red);if(!this.z.red)this.z=this.z.toRed(this.curve.red)}}tn(Point,nn.BasePoint);MontCurve.prototype.decodePoint=function decodePoint(Wt,Pt){return this.point(an.toArray(Wt,Pt),1)};MontCurve.prototype.point=function point(Wt,Pt){return new Point(this,Wt,Pt)};MontCurve.prototype.pointFromJSON=function pointFromJSON(Wt){return Point.fromJSON(this,Wt)};Point.prototype.precompute=function precompute(){};Point.prototype._encode=function _encode(){return this.getX().toArray("be",this.curve.p.byteLength())};Point.fromJSON=function fromJSON(Wt,Pt){return new Point(Wt,Pt[0],Pt[1]||Wt.one)};Point.prototype.inspect=function inspect(){if(this.isInfinity())return"";return""};Point.prototype.isInfinity=function isInfinity(){return this.z.cmpn(0)===0};Point.prototype.dbl=function dbl(){var Wt=this.x.redAdd(this.z);var Pt=Wt.redSqr();var en=this.x.redSub(this.z);var tn=en.redSqr();var nn=Pt.redSub(tn);var an=Pt.redMul(tn);var rn=nn.redMul(tn.redAdd(this.curve.a24.redMul(nn)));return this.curve.point(an,rn)};Point.prototype.add=function add(){throw new Error("Not supported on Montgomery curve")};Point.prototype.diffAdd=function diffAdd(Wt,Pt){var en=this.x.redAdd(this.z);var tn=this.x.redSub(this.z);var nn=Wt.x.redAdd(Wt.z);var an=Wt.x.redSub(Wt.z);var rn=an.redMul(en);var In=nn.redMul(tn);var sn=Pt.z.redMul(rn.redAdd(In).redSqr());var on=Pt.x.redMul(rn.redISub(In).redSqr());return this.curve.point(sn,on)};Point.prototype.mul=function mul(Wt){var Pt=Wt.clone();var en=this;var tn=this.curve.point(null,null);var nn=this;for(var an=[];Pt.cmpn(0)!==0;Pt.iushrn(1))an.push(Pt.andln(1));for(var rn=an.length-1;rn>=0;rn--){if(an[rn]===0){en=en.diffAdd(tn,nn);tn=tn.dbl()}else{tn=en.diffAdd(tn,nn);en=en.dbl()}}return tn};Point.prototype.mulAdd=function mulAdd(){throw new Error("Not supported on Montgomery curve")};Point.prototype.jumlAdd=function jumlAdd(){throw new Error("Not supported on Montgomery curve")};Point.prototype.eq=function eq(Wt){return this.getX().cmp(Wt.getX())===0};Point.prototype.normalize=function normalize(){this.x=this.x.redMul(this.z.redInvm());this.z=this.curve.one;return this};Point.prototype.getX=function getX(){this.normalize();return this.x.fromRed()}}});var Fl=__commonJS({"node_modules/elliptic/lib/elliptic/curve/edwards.js"(Wt,Pt){"use strict";var en=Yl();var tn=yl();var nn=el();var an=Vl();var rn=en.assert;function EdwardsCurve(Wt){this.twisted=(Wt.a|0)!==1;this.mOneA=this.twisted&&(Wt.a|0)===-1;this.extended=this.mOneA;an.call(this,"edwards",Wt);this.a=new tn(Wt.a,16).umod(this.red.m);this.a=this.a.toRed(this.red);this.c=new tn(Wt.c,16).toRed(this.red);this.c2=this.c.redSqr();this.d=new tn(Wt.d,16).toRed(this.red);this.dd=this.d.redAdd(this.d);rn(!this.twisted||this.c.fromRed().cmpn(1)===0);this.oneC=(Wt.c|0)===1}nn(EdwardsCurve,an);Pt.exports=EdwardsCurve;EdwardsCurve.prototype._mulA=function _mulA(Wt){if(this.mOneA)return Wt.redNeg();else return this.a.redMul(Wt)};EdwardsCurve.prototype._mulC=function _mulC(Wt){if(this.oneC)return Wt;else return this.c.redMul(Wt)};EdwardsCurve.prototype.jpoint=function jpoint(Wt,Pt,en,tn){return this.point(Wt,Pt,en,tn)};EdwardsCurve.prototype.pointFromX=function pointFromX(Wt,Pt){Wt=new tn(Wt,16);if(!Wt.red)Wt=Wt.toRed(this.red);var en=Wt.redSqr();var nn=this.c2.redSub(this.a.redMul(en));var an=this.one.redSub(this.c2.redMul(this.d).redMul(en));var rn=nn.redMul(an.redInvm());var In=rn.redSqrt();if(In.redSqr().redSub(rn).cmp(this.zero)!==0)throw new Error("invalid point");var sn=In.fromRed().isOdd();if(Pt&&!sn||!Pt&&sn)In=In.redNeg();return this.point(Wt,In)};EdwardsCurve.prototype.pointFromY=function pointFromY(Wt,Pt){Wt=new tn(Wt,16);if(!Wt.red)Wt=Wt.toRed(this.red);var en=Wt.redSqr();var nn=en.redSub(this.c2);var an=en.redMul(this.d).redMul(this.c2).redSub(this.a);var rn=nn.redMul(an.redInvm());if(rn.cmp(this.zero)===0){if(Pt)throw new Error("invalid point");else return this.point(this.zero,Wt)}var In=rn.redSqrt();if(In.redSqr().redSub(rn).cmp(this.zero)!==0)throw new Error("invalid point");if(In.fromRed().isOdd()!==Pt)In=In.redNeg();return this.point(In,Wt)};EdwardsCurve.prototype.validate=function validate(Wt){if(Wt.isInfinity())return true;Wt.normalize();var Pt=Wt.x.redSqr();var en=Wt.y.redSqr();var tn=Pt.redMul(this.a).redAdd(en);var nn=this.c2.redMul(this.one.redAdd(this.d.redMul(Pt).redMul(en)));return tn.cmp(nn)===0};function Point(Wt,Pt,en,nn,rn){an.BasePoint.call(this,Wt,"projective");if(Pt===null&&en===null&&nn===null){this.x=this.curve.zero;this.y=this.curve.one;this.z=this.curve.one;this.t=this.curve.zero;this.zOne=true}else{this.x=new tn(Pt,16);this.y=new tn(en,16);this.z=nn?new tn(nn,16):this.curve.one;this.t=rn&&new tn(rn,16);if(!this.x.red)this.x=this.x.toRed(this.curve.red);if(!this.y.red)this.y=this.y.toRed(this.curve.red);if(!this.z.red)this.z=this.z.toRed(this.curve.red);if(this.t&&!this.t.red)this.t=this.t.toRed(this.curve.red);this.zOne=this.z===this.curve.one;if(this.curve.extended&&!this.t){this.t=this.x.redMul(this.y);if(!this.zOne)this.t=this.t.redMul(this.z.redInvm())}}}nn(Point,an.BasePoint);EdwardsCurve.prototype.pointFromJSON=function pointFromJSON(Wt){return Point.fromJSON(this,Wt)};EdwardsCurve.prototype.point=function point(Wt,Pt,en,tn){return new Point(this,Wt,Pt,en,tn)};Point.fromJSON=function fromJSON(Wt,Pt){return new Point(Wt,Pt[0],Pt[1],Pt[2])};Point.prototype.inspect=function inspect(){if(this.isInfinity())return"";return""};Point.prototype.isInfinity=function isInfinity(){return this.x.cmpn(0)===0&&(this.y.cmp(this.z)===0||this.zOne&&this.y.cmp(this.curve.c)===0)};Point.prototype._extDbl=function _extDbl(){var Wt=this.x.redSqr();var Pt=this.y.redSqr();var en=this.z.redSqr();en=en.redIAdd(en);var tn=this.curve._mulA(Wt);var nn=this.x.redAdd(this.y).redSqr().redISub(Wt).redISub(Pt);var an=tn.redAdd(Pt);var rn=an.redSub(en);var In=tn.redSub(Pt);var sn=nn.redMul(rn);var on=an.redMul(In);var cn=nn.redMul(In);var dn=rn.redMul(an);return this.curve.point(sn,on,dn,cn)};Point.prototype._projDbl=function _projDbl(){var Wt=this.x.redAdd(this.y).redSqr();var Pt=this.x.redSqr();var en=this.y.redSqr();var tn;var nn;var an;var rn;var In;var sn;if(this.curve.twisted){rn=this.curve._mulA(Pt);var on=rn.redAdd(en);if(this.zOne){tn=Wt.redSub(Pt).redSub(en).redMul(on.redSub(this.curve.two));nn=on.redMul(rn.redSub(en));an=on.redSqr().redSub(on).redSub(on)}else{In=this.z.redSqr();sn=on.redSub(In).redISub(In);tn=Wt.redSub(Pt).redISub(en).redMul(sn);nn=on.redMul(rn.redSub(en));an=on.redMul(sn)}}else{rn=Pt.redAdd(en);In=this.curve._mulC(this.z).redSqr();sn=rn.redSub(In).redSub(In);tn=this.curve._mulC(Wt.redISub(rn)).redMul(sn);nn=this.curve._mulC(rn).redMul(Pt.redISub(en));an=rn.redMul(sn)}return this.curve.point(tn,nn,an)};Point.prototype.dbl=function dbl(){if(this.isInfinity())return this;if(this.curve.extended)return this._extDbl();else return this._projDbl()};Point.prototype._extAdd=function _extAdd(Wt){var Pt=this.y.redSub(this.x).redMul(Wt.y.redSub(Wt.x));var en=this.y.redAdd(this.x).redMul(Wt.y.redAdd(Wt.x));var tn=this.t.redMul(this.curve.dd).redMul(Wt.t);var nn=this.z.redMul(Wt.z.redAdd(Wt.z));var an=en.redSub(Pt);var rn=nn.redSub(tn);var In=nn.redAdd(tn);var sn=en.redAdd(Pt);var on=an.redMul(rn);var cn=In.redMul(sn);var dn=an.redMul(sn);var un=rn.redMul(In);return this.curve.point(on,cn,un,dn)};Point.prototype._projAdd=function _projAdd(Wt){var Pt=this.z.redMul(Wt.z);var en=Pt.redSqr();var tn=this.x.redMul(Wt.x);var nn=this.y.redMul(Wt.y);var an=this.curve.d.redMul(tn).redMul(nn);var rn=en.redSub(an);var In=en.redAdd(an);var sn=this.x.redAdd(this.y).redMul(Wt.x.redAdd(Wt.y)).redISub(tn).redISub(nn);var on=Pt.redMul(rn).redMul(sn);var cn;var dn;if(this.curve.twisted){cn=Pt.redMul(In).redMul(nn.redSub(this.curve._mulA(tn)));dn=rn.redMul(In)}else{cn=Pt.redMul(In).redMul(nn.redSub(tn));dn=this.curve._mulC(rn).redMul(In)}return this.curve.point(on,cn,dn)};Point.prototype.add=function add(Wt){if(this.isInfinity())return Wt;if(Wt.isInfinity())return this;if(this.curve.extended)return this._extAdd(Wt);else return this._projAdd(Wt)};Point.prototype.mul=function mul(Wt){if(this._hasDoubles(Wt))return this.curve._fixedNafMul(this,Wt);else return this.curve._wnafMul(this,Wt)};Point.prototype.mulAdd=function mulAdd(Wt,Pt,en){return this.curve._wnafMulAdd(1,[this,Pt],[Wt,en],2,false)};Point.prototype.jmulAdd=function jmulAdd(Wt,Pt,en){return this.curve._wnafMulAdd(1,[this,Pt],[Wt,en],2,true)};Point.prototype.normalize=function normalize(){if(this.zOne)return this;var Wt=this.z.redInvm();this.x=this.x.redMul(Wt);this.y=this.y.redMul(Wt);if(this.t)this.t=this.t.redMul(Wt);this.z=this.curve.one;this.zOne=true;return this};Point.prototype.neg=function neg(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())};Point.prototype.getX=function getX(){this.normalize();return this.x.fromRed()};Point.prototype.getY=function getY(){this.normalize();return this.y.fromRed()};Point.prototype.eq=function eq(Wt){return this===Wt||this.getX().cmp(Wt.getX())===0&&this.getY().cmp(Wt.getY())===0};Point.prototype.eqXToP=function eqXToP(Wt){var Pt=Wt.toRed(this.curve.red).redMul(this.z);if(this.x.cmp(Pt)===0)return true;var en=Wt.clone();var tn=this.curve.redN.redMul(this.z);for(;;){en.iadd(this.curve.n);if(en.cmp(this.curve.p)>=0)return false;Pt.redIAdd(tn);if(this.x.cmp(Pt)===0)return true}};Point.prototype.toP=Point.prototype.normalize;Point.prototype.mixedAdd=Point.prototype.add}});var Ql=__commonJS({"node_modules/elliptic/lib/elliptic/curve/index.js"(Wt){"use strict";var Pt=Wt;Pt.base=Vl();Pt.short=Rl();Pt.mont=wl();Pt.edwards=Fl()}});var fl=__commonJS({"node_modules/elliptic/lib/elliptic/precomputed/secp256k1.js"(Wt,Pt){"use strict";Pt.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"]]}}}});var Hl=__commonJS({"node_modules/elliptic/lib/elliptic/curves.js"(Wt){"use strict";var Pt=Wt;var en=ul();var tn=Ql();var nn=Yl();var an=nn.assert;function PresetCurve(Wt){if(Wt.type==="short")this.curve=new tn.short(Wt);else if(Wt.type==="edwards")this.curve=new tn.edwards(Wt);else this.curve=new tn.mont(Wt);this.g=this.curve.g;this.n=this.curve.n;this.hash=Wt.hash;an(this.g.validate(),"Invalid curve");an(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}Pt.PresetCurve=PresetCurve;function defineCurve(Wt,en){Object.defineProperty(Pt,Wt,{configurable:true,enumerable:true,get:function(){var tn=new PresetCurve(en);Object.defineProperty(Pt,Wt,{configurable:true,enumerable:true,value:tn});return tn}})}defineCurve("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:en.sha256,gRed:false,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]});defineCurve("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:en.sha256,gRed:false,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]});defineCurve("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:en.sha256,gRed:false,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]});defineCurve("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:en.sha384,gRed:false,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"]});defineCurve("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:en.sha512,gRed:false,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"]});defineCurve("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:en.sha256,gRed:false,g:["9"]});defineCurve("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:en.sha256,gRed:false,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});var rn;try{rn=fl()}catch(Wt){rn=void 0}defineCurve("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:en.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:false,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",rn]})}});var Cl=__commonJS({"node_modules/hmac-drbg/lib/hmac-drbg.js"(Wt,Pt){"use strict";var en=ul();var tn=vl();var nn=qn();function HmacDRBG(Wt){if(!(this instanceof HmacDRBG))return new HmacDRBG(Wt);this.hash=Wt.hash;this.predResist=!!Wt.predResist;this.outLen=this.hash.outSize;this.minEntropy=Wt.minEntropy||this.hash.hmacStrength;this._reseed=null;this.reseedInterval=null;this.K=null;this.V=null;var Pt=tn.toArray(Wt.entropy,Wt.entropyEnc||"hex");var en=tn.toArray(Wt.nonce,Wt.nonceEnc||"hex");var an=tn.toArray(Wt.pers,Wt.persEnc||"hex");nn(Pt.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits");this._init(Pt,en,an)}Pt.exports=HmacDRBG;HmacDRBG.prototype._init=function init(Wt,Pt,en){var tn=Wt.concat(Pt).concat(en);this.K=new Array(this.outLen/8);this.V=new Array(this.outLen/8);for(var nn=0;nn=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits");this._update(Wt.concat(en||[]));this._reseed=1};HmacDRBG.prototype.generate=function generate(Wt,Pt,en,nn){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");if(typeof Pt!=="string"){nn=en;en=Pt;Pt=null}if(en){en=tn.toArray(en,nn||"hex");this._update(en)}var an=[];while(an.length"}}});var kl=__commonJS({"node_modules/elliptic/lib/elliptic/ec/signature.js"(Wt,Pt){"use strict";var en=yl();var tn=Yl();var nn=tn.assert;function Signature(Wt,Pt){if(Wt instanceof Signature)return Wt;if(this._importDER(Wt,Pt))return;nn(Wt.r&&Wt.s,"Signature without r or s");this.r=new en(Wt.r,16);this.s=new en(Wt.s,16);if(Wt.recoveryParam===void 0)this.recoveryParam=null;else this.recoveryParam=Wt.recoveryParam}Pt.exports=Signature;function Position(){this.place=0}function getLength(Wt,Pt){var en=Wt[Pt.place++];if(!(en&128)){return en}var tn=en&15;if(tn===0||tn>4){return false}var nn=0;for(var an=0,rn=Pt.place;an>>=0}if(nn<=127){return false}Pt.place=rn;return nn}function rmPadding(Wt){var Pt=0;var en=Wt.length-1;while(!Wt[Pt]&&!(Wt[Pt+1]&128)&&Pt>>3);Wt.push(en|128);while(--en){Wt.push(Pt>>>(en<<3)&255)}Wt.push(Pt)}Signature.prototype.toDER=function toDER(Wt){var Pt=this.r.toArray();var en=this.s.toArray();if(Pt[0]&128)Pt=[0].concat(Pt);if(en[0]&128)en=[0].concat(en);Pt=rmPadding(Pt);en=rmPadding(en);while(!en[0]&&!(en[1]&128)){en=en.slice(1)}var nn=[2];constructLength(nn,Pt.length);nn=nn.concat(Pt);nn.push(2);constructLength(nn,en.length);var an=nn.concat(en);var rn=[48];constructLength(rn,an.length);rn=rn.concat(an);return tn.encode(rn,Wt)}}});var Jl=__commonJS({"node_modules/elliptic/lib/elliptic/ec/index.js"(Wt,Pt){"use strict";var en=yl();var tn=Cl();var nn=Yl();var an=Hl();var rn=El();var In=nn.assert;var sn=Xl();var on=kl();function EC(Wt){if(!(this instanceof EC))return new EC(Wt);if(typeof Wt==="string"){In(Object.prototype.hasOwnProperty.call(an,Wt),"Unknown curve "+Wt);Wt=an[Wt]}if(Wt instanceof an.PresetCurve)Wt={curve:Wt};this.curve=Wt.curve.curve;this.n=this.curve.n;this.nh=this.n.ushrn(1);this.g=this.curve.g;this.g=Wt.curve.g;this.g.precompute(Wt.curve.n.bitLength()+1);this.hash=Wt.hash||Wt.curve.hash}Pt.exports=EC;EC.prototype.keyPair=function keyPair(Wt){return new sn(this,Wt)};EC.prototype.keyFromPrivate=function keyFromPrivate(Wt,Pt){return sn.fromPrivate(this,Wt,Pt)};EC.prototype.keyFromPublic=function keyFromPublic(Wt,Pt){return sn.fromPublic(this,Wt,Pt)};EC.prototype.genKeyPair=function genKeyPair(Wt){if(!Wt)Wt={};var Pt=new tn({hash:this.hash,pers:Wt.pers,persEnc:Wt.persEnc||"utf8",entropy:Wt.entropy||rn(this.hash.hmacStrength),entropyEnc:Wt.entropy&&Wt.entropyEnc||"utf8",nonce:this.n.toArray()});var nn=this.n.byteLength();var an=this.n.sub(new en(2));for(;;){var In=new en(Pt.generate(nn));if(In.cmp(an)>0)continue;In.iaddn(1);return this.keyFromPrivate(In)}};EC.prototype._truncateToN=function _truncateToN(Wt,Pt){var en=Wt.byteLength()*8-this.n.bitLength();if(en>0)Wt=Wt.ushrn(en);if(!Pt&&Wt.cmp(this.n)>=0)return Wt.sub(this.n);else return Wt};EC.prototype.sign=function sign(Wt,Pt,nn,an){if(typeof nn==="object"){an=nn;nn=null}if(!an)an={};Pt=this.keyFromPrivate(Pt,nn);Wt=this._truncateToN(new en(Wt,16));var rn=this.n.byteLength();var In=Pt.getPrivate().toArray("be",rn);var sn=Wt.toArray("be",rn);var cn=new tn({hash:this.hash,entropy:In,nonce:sn,pers:an.pers,persEnc:an.persEnc||"utf8"});var dn=this.n.sub(new en(1));for(var un=0;;un++){var pn=an.k?an.k(un):new en(cn.generate(this.n.byteLength()));pn=this._truncateToN(pn,true);if(pn.cmpn(1)<=0||pn.cmp(dn)>=0)continue;var mn=this.g.mul(pn);if(mn.isInfinity())continue;var bn=mn.getX();var Gn=bn.umod(this.n);if(Gn.cmpn(0)===0)continue;var hn=pn.invm(this.n).mul(Gn.mul(Pt.getPrivate()).iadd(Wt));hn=hn.umod(this.n);if(hn.cmpn(0)===0)continue;var Zn=(mn.getY().isOdd()?1:0)|(bn.cmp(Gn)!==0?2:0);if(an.canonical&&hn.cmp(this.nh)>0){hn=this.n.sub(hn);Zn^=1}return new on({r:Gn,s:hn,recoveryParam:Zn})}};EC.prototype.verify=function verify(Wt,Pt,tn,nn){Wt=this._truncateToN(new en(Wt,16));tn=this.keyFromPublic(tn,nn);Pt=new on(Pt,"hex");var an=Pt.r;var rn=Pt.s;if(an.cmpn(1)<0||an.cmp(this.n)>=0)return false;if(rn.cmpn(1)<0||rn.cmp(this.n)>=0)return false;var In=rn.invm(this.n);var sn=In.mul(Wt).umod(this.n);var cn=In.mul(an).umod(this.n);var dn;if(!this.curve._maxwellTrick){dn=this.g.mulAdd(sn,tn.getPublic(),cn);if(dn.isInfinity())return false;return dn.getX().umod(this.n).cmp(an)===0}dn=this.g.jmulAdd(sn,tn.getPublic(),cn);if(dn.isInfinity())return false;return dn.eqXToP(an)};EC.prototype.recoverPubKey=function(Wt,Pt,tn,nn){In((3&tn)===tn,"The recovery param is more than two bits");Pt=new on(Pt,nn);var an=this.n;var rn=new en(Wt);var sn=Pt.r;var cn=Pt.s;var dn=tn&1;var un=tn>>1;if(sn.cmp(this.curve.p.umod(this.curve.n))>=0&&un)throw new Error("Unable to find sencond key candinate");if(un)sn=this.curve.pointFromX(sn.add(this.curve.n),dn);else sn=this.curve.pointFromX(sn,dn);var pn=Pt.r.invm(an);var mn=an.sub(rn).mul(pn).umod(an);var bn=cn.mul(pn).umod(an);return this.g.mulAdd(mn,sn,bn)};EC.prototype.getKeyRecoveryParam=function(Wt,Pt,en,tn){Pt=new on(Pt,tn);if(Pt.recoveryParam!==null)return Pt.recoveryParam;for(var nn=0;nn<4;nn++){var an;try{an=this.recoverPubKey(Wt,Pt,nn)}catch(Wt){continue}if(an.eq(en))return nn}throw new Error("Unable to find valid recovery factor")}}});var Ll=__commonJS({"node_modules/elliptic/lib/elliptic/eddsa/key.js"(Wt,Pt){"use strict";var en=Yl();var tn=en.assert;var nn=en.parseBytes;var an=en.cachedProperty;function KeyPair(Wt,Pt){this.eddsa=Wt;this._secret=nn(Pt.secret);if(Wt.isPoint(Pt.pub))this._pub=Pt.pub;else this._pubBytes=nn(Pt.pub)}KeyPair.fromPublic=function fromPublic(Wt,Pt){if(Pt instanceof KeyPair)return Pt;return new KeyPair(Wt,{pub:Pt})};KeyPair.fromSecret=function fromSecret(Wt,Pt){if(Pt instanceof KeyPair)return Pt;return new KeyPair(Wt,{secret:Pt})};KeyPair.prototype.secret=function secret(){return this._secret};an(KeyPair,"pubBytes",(function pubBytes(){return this.eddsa.encodePoint(this.pub())}));an(KeyPair,"pub",(function pub(){if(this._pubBytes)return this.eddsa.decodePoint(this._pubBytes);return this.eddsa.g.mul(this.priv())}));an(KeyPair,"privBytes",(function privBytes(){var Wt=this.eddsa;var Pt=this.hash();var en=Wt.encodingLength-1;var tn=Pt.slice(0,Wt.encodingLength);tn[0]&=248;tn[en]&=127;tn[en]|=64;return tn}));an(KeyPair,"priv",(function priv(){return this.eddsa.decodeInt(this.privBytes())}));an(KeyPair,"hash",(function hash(){return this.eddsa.hash().update(this.secret()).digest()}));an(KeyPair,"messagePrefix",(function messagePrefix(){return this.hash().slice(this.eddsa.encodingLength)}));KeyPair.prototype.sign=function sign(Wt){tn(this._secret,"KeyPair can only verify");return this.eddsa.sign(Wt,this)};KeyPair.prototype.verify=function verify(Wt,Pt){return this.eddsa.verify(Wt,Pt,this)};KeyPair.prototype.getSecret=function getSecret(Wt){tn(this._secret,"KeyPair is public only");return en.encode(this.secret(),Wt)};KeyPair.prototype.getPublic=function getPublic(Wt){return en.encode(this.pubBytes(),Wt)};Pt.exports=KeyPair}});var Bl=__commonJS({"node_modules/elliptic/lib/elliptic/eddsa/signature.js"(Wt,Pt){"use strict";var en=yl();var tn=Yl();var nn=tn.assert;var an=tn.cachedProperty;var rn=tn.parseBytes;function Signature(Wt,Pt){this.eddsa=Wt;if(typeof Pt!=="object")Pt=rn(Pt);if(Array.isArray(Pt)){Pt={R:Pt.slice(0,Wt.encodingLength),S:Pt.slice(Wt.encodingLength)}}nn(Pt.R&&Pt.S,"Signature without R or S");if(Wt.isPoint(Pt.R))this._R=Pt.R;if(Pt.S instanceof en)this._S=Pt.S;this._Rencoded=Array.isArray(Pt.R)?Pt.R:Pt.Rencoded;this._Sencoded=Array.isArray(Pt.S)?Pt.S:Pt.Sencoded}an(Signature,"S",(function S(){return this.eddsa.decodeInt(this.Sencoded())}));an(Signature,"R",(function R(){return this.eddsa.decodePoint(this.Rencoded())}));an(Signature,"Rencoded",(function Rencoded(){return this.eddsa.encodePoint(this.R())}));an(Signature,"Sencoded",(function Sencoded(){return this.eddsa.encodeInt(this.S())}));Signature.prototype.toBytes=function toBytes(){return this.Rencoded().concat(this.Sencoded())};Signature.prototype.toHex=function toHex(){return tn.encode(this.toBytes(),"hex").toUpperCase()};Pt.exports=Signature}});var xl=__commonJS({"node_modules/elliptic/lib/elliptic/eddsa/index.js"(Wt,Pt){"use strict";var en=ul();var tn=Hl();var nn=Yl();var an=nn.assert;var rn=nn.parseBytes;var In=Ll();var sn=Bl();function EDDSA(Wt){an(Wt==="ed25519","only tested with ed25519 so far");if(!(this instanceof EDDSA))return new EDDSA(Wt);Wt=tn[Wt].curve;this.curve=Wt;this.g=Wt.g;this.g.precompute(Wt.n.bitLength()+1);this.pointClass=Wt.point().constructor;this.encodingLength=Math.ceil(Wt.n.bitLength()/8);this.hash=en.sha512}Pt.exports=EDDSA;EDDSA.prototype.sign=function sign(Wt,Pt){Wt=rn(Wt);var en=this.keyFromSecret(Pt);var tn=this.hashInt(en.messagePrefix(),Wt);var nn=this.g.mul(tn);var an=this.encodePoint(nn);var In=this.hashInt(an,en.pubBytes(),Wt).mul(en.priv());var sn=tn.add(In).umod(this.curve.n);return this.makeSignature({R:nn,S:sn,Rencoded:an})};EDDSA.prototype.verify=function verify(Wt,Pt,en){Wt=rn(Wt);Pt=this.makeSignature(Pt);var tn=this.keyFromPublic(en);var nn=this.hashInt(Pt.Rencoded(),tn.pubBytes(),Wt);var an=this.g.mul(Pt.S());var In=Pt.R().add(tn.pub().mul(nn));return In.eq(an)};EDDSA.prototype.hashInt=function hashInt(){var Wt=this.hash();for(var Pt=0;Pt32){Gn.throwArgumentError("invalid length for "+Pt,"transaction:"+Pt,Wt)}return en}function accessSetify(Wt,Pt){return{address:(0,nn.getAddress)(Wt),storageKeys:(Pt||[]).map((function(Pt,en){if((0,rn.hexDataLength)(Pt)!==32){Gn.throwArgumentError("invalid access list storageKey","accessList["+Wt+":"+en+"]",Pt)}return Pt.toLowerCase()}))}}function accessListify(Wt){if(Array.isArray(Wt)){return Wt.map((function(Wt,Pt){if(Array.isArray(Wt)){if(Wt.length>2){Gn.throwArgumentError("access list expected to be [ address, storageKeys[] ]","value["+Pt+"]",Wt)}return accessSetify(Wt[0],Wt[1])}return accessSetify(Wt.address,Wt.storageKeys)}))}var Pt=Object.keys(Wt).map((function(Pt){var en=Wt[Pt].reduce((function(Wt,Pt){Wt[Pt]=true;return Wt}),{});return accessSetify(Pt,Object.keys(en).sort())}));Pt.sort((function(Wt,Pt){return Wt.address.localeCompare(Pt.address)}));return Pt}Wt.accessListify=accessListify;function formatAccessList(Wt){return accessListify(Wt).map((function(Wt){return[Wt.address,Wt.storageKeys]}))}function _serializeEip1559(Wt,Pt){if(Wt.gasPrice!=null){var en=an.BigNumber.from(Wt.gasPrice);var tn=an.BigNumber.from(Wt.maxFeePerGas||0);if(!en.eq(tn)){Gn.throwArgumentError("mismatch EIP-1559 gasPrice != maxFeePerGas","tx",{gasPrice:en,maxFeePerGas:tn})}}var In=[formatNumber(Wt.chainId||0,"chainId"),formatNumber(Wt.nonce||0,"nonce"),formatNumber(Wt.maxPriorityFeePerGas||0,"maxPriorityFeePerGas"),formatNumber(Wt.maxFeePerGas||0,"maxFeePerGas"),formatNumber(Wt.gasLimit||0,"gasLimit"),Wt.to!=null?(0,nn.getAddress)(Wt.to):"0x",formatNumber(Wt.value||0,"value"),Wt.data||"0x",formatAccessList(Wt.accessList||[])];if(Pt){var sn=(0,rn.splitSignature)(Pt);In.push(formatNumber(sn.recoveryParam,"recoveryParam"));In.push((0,rn.stripZeros)(sn.r));In.push((0,rn.stripZeros)(sn.s))}return(0,rn.hexConcat)(["0x02",cn.encode(In)])}function _serializeEip2930(Wt,Pt){var en=[formatNumber(Wt.chainId||0,"chainId"),formatNumber(Wt.nonce||0,"nonce"),formatNumber(Wt.gasPrice||0,"gasPrice"),formatNumber(Wt.gasLimit||0,"gasLimit"),Wt.to!=null?(0,nn.getAddress)(Wt.to):"0x",formatNumber(Wt.value||0,"value"),Wt.data||"0x",formatAccessList(Wt.accessList||[])];if(Pt){var tn=(0,rn.splitSignature)(Pt);en.push(formatNumber(tn.recoveryParam,"recoveryParam"));en.push((0,rn.stripZeros)(tn.r));en.push((0,rn.stripZeros)(tn.s))}return(0,rn.hexConcat)(["0x01",cn.encode(en)])}function _serialize(Wt,Pt){(0,on.checkProperties)(Wt,Nn);var en=[];Wn.forEach((function(Pt){var tn=Wt[Pt.name]||[];var nn={};if(Pt.numeric){nn.hexPad="left"}tn=(0,rn.arrayify)((0,rn.hexlify)(tn,nn));if(Pt.length&&tn.length!==Pt.length&&tn.length>0){Gn.throwArgumentError("invalid length for "+Pt.name,"transaction:"+Pt.name,tn)}if(Pt.maxLength){tn=(0,rn.stripZeros)(tn);if(tn.length>Pt.maxLength){Gn.throwArgumentError("invalid length for "+Pt.name,"transaction:"+Pt.name,tn)}}en.push((0,rn.hexlify)(tn))}));var tn=0;if(Wt.chainId!=null){tn=Wt.chainId;if(typeof tn!=="number"){Gn.throwArgumentError("invalid transaction.chainId","transaction",Wt)}}else if(Pt&&!(0,rn.isBytesLike)(Pt)&&Pt.v>28){tn=Math.floor((Pt.v-35)/2)}if(tn!==0){en.push((0,rn.hexlify)(tn));en.push("0x");en.push("0x")}if(!Pt){return cn.encode(en)}var nn=(0,rn.splitSignature)(Pt);var an=27+nn.recoveryParam;if(tn!==0){en.pop();en.pop();en.pop();an+=tn*2+8;if(nn.v>28&&nn.v!==an){Gn.throwArgumentError("transaction.chainId/signature.v mismatch","signature",Pt)}}else if(nn.v!==an){Gn.throwArgumentError("transaction.chainId/signature.v mismatch","signature",Pt)}en.push((0,rn.hexlify)(an));en.push((0,rn.stripZeros)((0,rn.arrayify)(nn.r)));en.push((0,rn.stripZeros)((0,rn.arrayify)(nn.s)));return cn.encode(en)}function serialize(Wt,Pt){if(Wt.type==null||Wt.type===0){if(Wt.accessList!=null){Gn.throwArgumentError("untyped transactions do not support accessList; include type: 1","transaction",Wt)}return _serialize(Wt,Pt)}switch(Wt.type){case 1:return _serializeEip2930(Wt,Pt);case 2:return _serializeEip1559(Wt,Pt);default:break}return Gn.throwError("unsupported transaction type: "+Wt.type,mn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"serializeTransaction",transactionType:Wt.type})}Wt.serialize=serialize;function _parseEipSignature(Wt,Pt,en){try{var tn=handleNumber(Pt[0]).toNumber();if(tn!==0&&tn!==1){throw new Error("bad recid")}Wt.v=tn}catch(Wt){Gn.throwArgumentError("invalid v for transaction type: 1","v",Pt[0])}Wt.r=(0,rn.hexZeroPad)(Pt[1],32);Wt.s=(0,rn.hexZeroPad)(Pt[2],32);try{var nn=(0,sn.keccak256)(en(Wt));Wt.from=recoverAddress(nn,{r:Wt.r,s:Wt.s,recoveryParam:Wt.v})}catch(Wt){}}function _parseEip1559(Wt){var Pt=cn.decode(Wt.slice(1));if(Pt.length!==9&&Pt.length!==12){Gn.throwArgumentError("invalid component count for transaction type: 2","payload",(0,rn.hexlify)(Wt))}var en=handleNumber(Pt[2]);var tn=handleNumber(Pt[3]);var nn={type:2,chainId:handleNumber(Pt[0]).toNumber(),nonce:handleNumber(Pt[1]).toNumber(),maxPriorityFeePerGas:en,maxFeePerGas:tn,gasPrice:null,gasLimit:handleNumber(Pt[4]),to:handleAddress(Pt[5]),value:handleNumber(Pt[6]),data:Pt[7],accessList:accessListify(Pt[8])};if(Pt.length===9){return nn}nn.hash=(0,sn.keccak256)(Wt);_parseEipSignature(nn,Pt.slice(9),_serializeEip1559);return nn}function _parseEip2930(Wt){var Pt=cn.decode(Wt.slice(1));if(Pt.length!==8&&Pt.length!==11){Gn.throwArgumentError("invalid component count for transaction type: 1","payload",(0,rn.hexlify)(Wt))}var en={type:1,chainId:handleNumber(Pt[0]).toNumber(),nonce:handleNumber(Pt[1]).toNumber(),gasPrice:handleNumber(Pt[2]),gasLimit:handleNumber(Pt[3]),to:handleAddress(Pt[4]),value:handleNumber(Pt[5]),data:Pt[6],accessList:accessListify(Pt[7])};if(Pt.length===8){return en}en.hash=(0,sn.keccak256)(Wt);_parseEipSignature(en,Pt.slice(8),_serializeEip2930);return en}function _parse(Wt){var Pt=cn.decode(Wt);if(Pt.length!==9&&Pt.length!==6){Gn.throwArgumentError("invalid raw transaction","rawTransaction",Wt)}var en={nonce:handleNumber(Pt[0]).toNumber(),gasPrice:handleNumber(Pt[1]),gasLimit:handleNumber(Pt[2]),to:handleAddress(Pt[3]),value:handleNumber(Pt[4]),data:Pt[5],chainId:0};if(Pt.length===6){return en}try{en.v=an.BigNumber.from(Pt[6]).toNumber()}catch(Wt){return en}en.r=(0,rn.hexZeroPad)(Pt[7],32);en.s=(0,rn.hexZeroPad)(Pt[8],32);if(an.BigNumber.from(en.r).isZero()&&an.BigNumber.from(en.s).isZero()){en.chainId=en.v;en.v=0}else{en.chainId=Math.floor((en.v-35)/2);if(en.chainId<0){en.chainId=0}var tn=en.v-27;var nn=Pt.slice(0,6);if(en.chainId!==0){nn.push((0,rn.hexlify)(en.chainId));nn.push("0x");nn.push("0x");tn-=en.chainId*2+8}var In=(0,sn.keccak256)(cn.encode(nn));try{en.from=recoverAddress(In,{r:(0,rn.hexlify)(en.r),s:(0,rn.hexlify)(en.s),recoveryParam:tn})}catch(Wt){}en.hash=(0,sn.keccak256)(Wt)}en.type=null;return en}function parse(Wt){var Pt=(0,rn.arrayify)(Wt);if(Pt[0]>127){return _parse(Pt)}switch(Pt[0]){case 1:return _parseEip2930(Pt);case 2:return _parseEip1559(Pt);default:break}return Gn.throwError("unsupported transaction type: "+Pt[0],mn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"parseTransaction",transactionType:Pt[0]})}Wt.parse=parse}});var jl=__commonJS({"node_modules/@ethersproject/providers/lib/formatter.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.showThrottleMessage=Wt.isCommunityResource=Wt.isCommunityResourcable=Wt.Formatter=void 0;var Pt=_n();var en=hn();var tn=pn();var nn=Qn();var an=An();var rn=Sl();var In=dn();var sn=Nl();var on=new In.Logger(sn.version);var cn=function(){function Formatter2(){this.formats=this.getDefaultFormats()}Formatter2.prototype.getDefaultFormats=function(){var Wt=this;var Pt={};var en=this.address.bind(this);var tn=this.bigNumber.bind(this);var nn=this.blockTag.bind(this);var rn=this.data.bind(this);var In=this.hash.bind(this);var sn=this.hex.bind(this);var on=this.number.bind(this);var cn=this.type.bind(this);var strictData=function(Pt){return Wt.data(Pt,true)};Pt.transaction={hash:In,type:cn,accessList:Formatter2.allowNull(this.accessList.bind(this),null),blockHash:Formatter2.allowNull(In,null),blockNumber:Formatter2.allowNull(on,null),transactionIndex:Formatter2.allowNull(on,null),confirmations:Formatter2.allowNull(on,null),from:en,gasPrice:Formatter2.allowNull(tn),maxPriorityFeePerGas:Formatter2.allowNull(tn),maxFeePerGas:Formatter2.allowNull(tn),gasLimit:tn,to:Formatter2.allowNull(en,null),value:tn,nonce:on,data:rn,r:Formatter2.allowNull(this.uint256),s:Formatter2.allowNull(this.uint256),v:Formatter2.allowNull(on),creates:Formatter2.allowNull(en,null),raw:Formatter2.allowNull(rn)};Pt.transactionRequest={from:Formatter2.allowNull(en),nonce:Formatter2.allowNull(on),gasLimit:Formatter2.allowNull(tn),gasPrice:Formatter2.allowNull(tn),maxPriorityFeePerGas:Formatter2.allowNull(tn),maxFeePerGas:Formatter2.allowNull(tn),to:Formatter2.allowNull(en),value:Formatter2.allowNull(tn),data:Formatter2.allowNull(strictData),type:Formatter2.allowNull(on),accessList:Formatter2.allowNull(this.accessList.bind(this),null)};Pt.receiptLog={transactionIndex:on,blockNumber:on,transactionHash:In,address:en,topics:Formatter2.arrayOf(In),data:rn,logIndex:on,blockHash:In};Pt.receipt={to:Formatter2.allowNull(this.address,null),from:Formatter2.allowNull(this.address,null),contractAddress:Formatter2.allowNull(en,null),transactionIndex:on,root:Formatter2.allowNull(sn),gasUsed:tn,logsBloom:Formatter2.allowNull(rn),blockHash:In,transactionHash:In,logs:Formatter2.arrayOf(this.receiptLog.bind(this)),blockNumber:on,confirmations:Formatter2.allowNull(on,null),cumulativeGasUsed:tn,effectiveGasPrice:Formatter2.allowNull(tn),status:Formatter2.allowNull(on),type:cn};Pt.block={hash:Formatter2.allowNull(In),parentHash:In,number:on,timestamp:on,nonce:Formatter2.allowNull(sn),difficulty:this.difficulty.bind(this),gasLimit:tn,gasUsed:tn,miner:Formatter2.allowNull(en),extraData:rn,transactions:Formatter2.allowNull(Formatter2.arrayOf(In)),baseFeePerGas:Formatter2.allowNull(tn)};Pt.blockWithTransactions=(0,an.shallowCopy)(Pt.block);Pt.blockWithTransactions.transactions=Formatter2.allowNull(Formatter2.arrayOf(this.transactionResponse.bind(this)));Pt.filter={fromBlock:Formatter2.allowNull(nn,void 0),toBlock:Formatter2.allowNull(nn,void 0),blockHash:Formatter2.allowNull(In,void 0),address:Formatter2.allowNull(en,void 0),topics:Formatter2.allowNull(this.topics.bind(this),void 0)};Pt.filterLog={blockNumber:Formatter2.allowNull(on),blockHash:Formatter2.allowNull(In),transactionIndex:on,removed:Formatter2.allowNull(this.boolean.bind(this)),address:en,data:Formatter2.allowFalsish(rn,"0x"),topics:Formatter2.arrayOf(In),transactionHash:In,logIndex:on};return Pt};Formatter2.prototype.accessList=function(Wt){return(0,rn.accessListify)(Wt||[])};Formatter2.prototype.number=function(Wt){if(Wt==="0x"){return 0}return en.BigNumber.from(Wt).toNumber()};Formatter2.prototype.type=function(Wt){if(Wt==="0x"||Wt==null){return 0}return en.BigNumber.from(Wt).toNumber()};Formatter2.prototype.bigNumber=function(Wt){return en.BigNumber.from(Wt)};Formatter2.prototype.boolean=function(Wt){if(typeof Wt==="boolean"){return Wt}if(typeof Wt==="string"){Wt=Wt.toLowerCase();if(Wt==="true"){return true}if(Wt==="false"){return false}}throw new Error("invalid boolean - "+Wt)};Formatter2.prototype.hex=function(Wt,Pt){if(typeof Wt==="string"){if(!Pt&&Wt.substring(0,2)!=="0x"){Wt="0x"+Wt}if((0,tn.isHexString)(Wt)){return Wt.toLowerCase()}}return on.throwArgumentError("invalid hash","value",Wt)};Formatter2.prototype.data=function(Wt,Pt){var en=this.hex(Wt,Pt);if(en.length%2!==0){throw new Error("invalid data; odd-length - "+Wt)}return en};Formatter2.prototype.address=function(Wt){return(0,Pt.getAddress)(Wt)};Formatter2.prototype.callAddress=function(Wt){if(!(0,tn.isHexString)(Wt,32)){return null}var en=(0,Pt.getAddress)((0,tn.hexDataSlice)(Wt,12));return en===nn.AddressZero?null:en};Formatter2.prototype.contractAddress=function(Wt){return(0,Pt.getContractAddress)(Wt)};Formatter2.prototype.blockTag=function(Wt){if(Wt==null){return"latest"}if(Wt==="earliest"){return"0x0"}switch(Wt){case"earliest":return"0x0";case"latest":case"pending":case"safe":case"finalized":return Wt}if(typeof Wt==="number"||(0,tn.isHexString)(Wt)){return(0,tn.hexValue)(Wt)}throw new Error("invalid blockTag")};Formatter2.prototype.hash=function(Wt,Pt){var en=this.hex(Wt,Pt);if((0,tn.hexDataLength)(en)!==32){return on.throwArgumentError("invalid hash","value",Wt)}return en};Formatter2.prototype.difficulty=function(Wt){if(Wt==null){return null}var Pt=en.BigNumber.from(Wt);try{return Pt.toNumber()}catch(Wt){}return null};Formatter2.prototype.uint256=function(Wt){if(!(0,tn.isHexString)(Wt)){throw new Error("invalid uint256")}return(0,tn.hexZeroPad)(Wt,32)};Formatter2.prototype._block=function(Wt,Pt){if(Wt.author!=null&&Wt.miner==null){Wt.miner=Wt.author}var tn=Wt._difficulty!=null?Wt._difficulty:Wt.difficulty;var nn=Formatter2.check(Pt,Wt);nn._difficulty=tn==null?null:en.BigNumber.from(tn);return nn};Formatter2.prototype.block=function(Wt){return this._block(Wt,this.formats.block)};Formatter2.prototype.blockWithTransactions=function(Wt){return this._block(Wt,this.formats.blockWithTransactions)};Formatter2.prototype.transactionRequest=function(Wt){return Formatter2.check(this.formats.transactionRequest,Wt)};Formatter2.prototype.transactionResponse=function(Wt){if(Wt.gas!=null&&Wt.gasLimit==null){Wt.gasLimit=Wt.gas}if(Wt.to&&en.BigNumber.from(Wt.to).isZero()){Wt.to="0x0000000000000000000000000000000000000000"}if(Wt.input!=null&&Wt.data==null){Wt.data=Wt.input}if(Wt.to==null&&Wt.creates==null){Wt.creates=this.contractAddress(Wt)}if((Wt.type===1||Wt.type===2)&&Wt.accessList==null){Wt.accessList=[]}var Pt=Formatter2.check(this.formats.transaction,Wt);if(Wt.chainId!=null){var nn=Wt.chainId;if((0,tn.isHexString)(nn)){nn=en.BigNumber.from(nn).toNumber()}Pt.chainId=nn}else{var nn=Wt.networkId;if(nn==null&&Pt.v==null){nn=Wt.chainId}if((0,tn.isHexString)(nn)){nn=en.BigNumber.from(nn).toNumber()}if(typeof nn!=="number"&&Pt.v!=null){nn=(Pt.v-35)/2;if(nn<0){nn=0}nn=parseInt(nn)}if(typeof nn!=="number"){nn=0}Pt.chainId=nn}if(Pt.blockHash&&Pt.blockHash.replace(/0/g,"")==="x"){Pt.blockHash=null}return Pt};Formatter2.prototype.transaction=function(Wt){return(0,rn.parse)(Wt)};Formatter2.prototype.receiptLog=function(Wt){return Formatter2.check(this.formats.receiptLog,Wt)};Formatter2.prototype.receipt=function(Wt){var Pt=Formatter2.check(this.formats.receipt,Wt);if(Pt.root!=null){if(Pt.root.length<=4){var tn=en.BigNumber.from(Pt.root).toNumber();if(tn===0||tn===1){if(Pt.status!=null&&Pt.status!==tn){on.throwArgumentError("alt-root-status/status mismatch","value",{root:Pt.root,status:Pt.status})}Pt.status=tn;delete Pt.root}else{on.throwArgumentError("invalid alt-root-status","value.root",Pt.root)}}else if(Pt.root.length!==66){on.throwArgumentError("invalid root hash","value.root",Pt.root)}}if(Pt.status!=null){Pt.byzantium=true}return Pt};Formatter2.prototype.topics=function(Wt){var Pt=this;if(Array.isArray(Wt)){return Wt.map((function(Wt){return Pt.topics(Wt)}))}else if(Wt!=null){return this.hash(Wt,true)}return null};Formatter2.prototype.filter=function(Wt){return Formatter2.check(this.formats.filter,Wt)};Formatter2.prototype.filterLog=function(Wt){return Formatter2.check(this.formats.filterLog,Wt)};Formatter2.check=function(Wt,Pt){var en={};for(var tn in Wt){try{var nn=Wt[tn](Pt[tn]);if(nn!==void 0){en[tn]=nn}}catch(Wt){Wt.checkKey=tn;Wt.checkValue=Pt[tn];throw Wt}}return en};Formatter2.allowNull=function(Wt,Pt){return function(en){if(en==null){return Pt}return Wt(en)}};Formatter2.allowFalsish=function(Wt,Pt){return function(en){if(!en){return Pt}return Wt(en)}};Formatter2.arrayOf=function(Wt){return function(Pt){if(!Array.isArray(Pt)){throw new Error("not an array")}var en=[];Pt.forEach((function(Pt){en.push(Wt(Pt))}));return en}};return Formatter2}();Wt.Formatter=cn;function isCommunityResourcable(Wt){return Wt&&typeof Wt.isCommunityResource==="function"}Wt.isCommunityResourcable=isCommunityResourcable;function isCommunityResource(Wt){return isCommunityResourcable(Wt)&&Wt.isCommunityResource()}Wt.isCommunityResource=isCommunityResource;var un=false;function showThrottleMessage(){if(un){return}un=true;console.log("========= NOTICE =========");console.log("Request-Rate Exceeded (this message will not be repeated)");console.log("");console.log("The default API keys for each service are provided as a highly-throttled,");console.log("community resource for low-traffic projects and early prototyping.");console.log("");console.log("While your application will continue to function, we highly recommended");console.log("signing up for your own API keys to improve performance, increase your");console.log("request rate/limit and enable other perks, such as metrics and advanced APIs.");console.log("");console.log("For more details: https://docs.ethers.io/api-keys/");console.log("==========================")}Wt.showThrottleMessage=showThrottleMessage}});var Dl=__commonJS({"node_modules/@ethersproject/providers/lib/base-provider.js"(Wt){"use strict";var Pt=Wt&&Wt.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();var en=Wt&&Wt.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var tn=Wt&&Wt.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]0&&Wt[Wt.length-1]==null){Wt.pop()}return Wt.map((function(Wt){if(Array.isArray(Wt)){var Pt={};Wt.forEach((function(Wt){Pt[checkTopic(Wt)]=true}));var en=Object.keys(Pt);en.sort();return en.join("|")}else{return checkTopic(Wt)}})).join("&")}function deserializeTopics(Wt){if(Wt===""){return[]}return Wt.split(/&/g).map((function(Wt){if(Wt===""){return[]}var Pt=Wt.split("|").map((function(Wt){return Wt==="null"?null:Wt}));return Pt.length===1?Pt[0]:Pt}))}function getEventTag(Wt){if(typeof Wt==="string"){Wt=Wt.toLowerCase();if((0,on.hexDataLength)(Wt)===32){return"tx:"+Wt}if(Wt.indexOf(":")===-1){return Wt}}else if(Array.isArray(Wt)){return"filter:*:"+serializeTopics(Wt)}else if(an.ForkEvent.isForkEvent(Wt)){Rn.warn("not implemented");throw new Error("not implemented")}else if(Wt&&typeof Wt==="object"){return"filter:"+(Wt.address||"*")+":"+serializeTopics(Wt.topics||[])}throw new Error("invalid event - "+Wt)}function getTime(){return(new Date).getTime()}function stall(Wt){return new Promise((function(Pt){setTimeout(Pt,Wt)}))}var fn=["block","network","pending","poll"];var Hn=function(){function Event2(Wt,Pt,en){(0,bn.defineReadOnly)(this,"tag",Wt);(0,bn.defineReadOnly)(this,"listener",Pt);(0,bn.defineReadOnly)(this,"once",en);this._lastBlockNumber=-2;this._inflight=false}Object.defineProperty(Event2.prototype,"event",{get:function(){switch(this.type){case"tx":return this.hash;case"filter":return this.filter}return this.tag},enumerable:false,configurable:true});Object.defineProperty(Event2.prototype,"type",{get:function(){return this.tag.split(":")[0]},enumerable:false,configurable:true});Object.defineProperty(Event2.prototype,"hash",{get:function(){var Wt=this.tag.split(":");if(Wt[0]!=="tx"){return null}return Wt[1]},enumerable:false,configurable:true});Object.defineProperty(Event2.prototype,"filter",{get:function(){var Wt=this.tag.split(":");if(Wt[0]!=="filter"){return null}var Pt=Wt[1];var en=deserializeTopics(Wt[2]);var tn={};if(en.length>0){tn.topics=en}if(Pt&&Pt!=="*"){tn.address=Pt}return tn},enumerable:false,configurable:true});Event2.prototype.pollable=function(){return this.tag.indexOf(":")>=0||fn.indexOf(this.tag)>=0};return Event2}();Wt.Event=Hn;var Cn={0:{symbol:"btc",p2pkh:0,p2sh:5,prefix:"bc"},2:{symbol:"ltc",p2pkh:48,p2sh:50,prefix:"ltc"},3:{symbol:"doge",p2pkh:30,p2sh:22},60:{symbol:"eth",ilk:"eth"},61:{symbol:"etc",ilk:"eth"},700:{symbol:"xdai",ilk:"eth"}};function bytes32ify(Wt){return(0,on.hexZeroPad)(sn.BigNumber.from(Wt).toHexString(),32)}function base58Encode(Wt){return In.Base58.encode((0,on.concat)([Wt,(0,on.hexDataSlice)((0,Gn.sha256)((0,Gn.sha256)(Wt)),0,4)]))}var Xn=new RegExp("^(ipfs)://(.*)$","i");var kn=[new RegExp("^(https)://(.*)$","i"),new RegExp("^(data):(.*)$","i"),Xn,new RegExp("^eip155:[0-9]+/(erc[0-9]+):(.*)$","i")];function _parseString(Wt,Pt){try{return(0,Zn.toUtf8String)(_parseBytes(Wt,Pt))}catch(Wt){}return null}function _parseBytes(Wt,Pt){if(Wt==="0x"){return null}var en=sn.BigNumber.from((0,on.hexDataSlice)(Wt,Pt,Pt+32)).toNumber();var tn=sn.BigNumber.from((0,on.hexDataSlice)(Wt,en,en+32)).toNumber();return(0,on.hexDataSlice)(Wt,en+32,en+32+tn)}function getIpfsLink(Wt){if(Wt.match(/^ipfs:\/\/ipfs\//i)){Wt=Wt.substring(12)}else if(Wt.match(/^ipfs:\/\//i)){Wt=Wt.substring(7)}else{Rn.throwArgumentError("unsupported IPFS format","link",Wt)}return"https://gateway.ipfs.io/ipfs/"+Wt}function numPad(Wt){var Pt=(0,on.arrayify)(Wt);if(Pt.length>32){throw new Error("internal; should not happen")}var en=new Uint8Array(32);en.set(Pt,32-Pt.length);return en}function bytesPad(Wt){if(Wt.length%32===0){return Wt}var Pt=new Uint8Array(Math.ceil(Wt.length/32)*32);Pt.set(Wt);return Pt}function encodeBytes(Wt){var Pt=[];var en=0;for(var tn=0;tn=1&&an<=75){return base58Encode((0,on.concat)([[en.p2pkh],"0x"+nn[2]]))}}}if(en.p2sh!=null){var rn=Pt.match(/^0xa9([0-9a-f][0-9a-f])([0-9a-f]*)87$/);if(rn){var In=parseInt(rn[1],16);if(rn[2].length===In*2&&In>=1&&In<=75){return base58Encode((0,on.concat)([[en.p2sh],"0x"+rn[2]]))}}}if(en.prefix!=null){var sn=tn[1];var cn=tn[0];if(cn===0){if(sn!==20&&sn!==32){cn=-1}}else{cn=-1}if(cn>=0&&tn.length===2+sn&&sn>=1&&sn<=75){var dn=gn.default.toWords(tn.slice(2));dn.unshift(cn);return gn.default.encode(en.prefix,dn)}}return null};Resolver2.prototype.getAddress=function(Wt){return en(this,void 0,void 0,(function(){var Pt,en,nn,an;return tn(this,(function(tn){switch(tn.label){case 0:if(Wt==null){Wt=60}if(!(Wt===60))return[3,4];tn.label=1;case 1:tn.trys.push([1,3,,4]);return[4,this._fetch("0x3b3b57de")];case 2:Pt=tn.sent();if(Pt==="0x"||Pt===cn.HashZero){return[2,null]}return[2,this.provider.formatter.callAddress(Pt)];case 3:en=tn.sent();if(en.code===vn.Logger.errors.CALL_EXCEPTION){return[2,null]}throw en;case 4:return[4,this._fetchBytes("0xf1cb7e06",bytes32ify(Wt))];case 5:nn=tn.sent();if(nn==null||nn==="0x"){return[2,null]}an=this._getAddress(Wt,nn);if(an==null){Rn.throwError("invalid or unsupported coin data",vn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"getAddress("+Wt+")",coinType:Wt,data:nn})}return[2,an]}}))}))};Resolver2.prototype.getAvatar=function(){return en(this,void 0,void 0,(function(){var Wt,Pt,en,nn,an,rn,In,cn,dn,un,pn,mn,bn,Gn,hn,Zn,An,Nn,gn,yn,vn,Yn,En,Vn,Rn;return tn(this,(function(tn){switch(tn.label){case 0:Wt=[{type:"name",content:this.name}];tn.label=1;case 1:tn.trys.push([1,19,,20]);return[4,this.getText("avatar")];case 2:Pt=tn.sent();if(Pt==null){return[2,null]}en=0;tn.label=3;case 3:if(!(en=0?null:JSON.stringify({data:an,sender:en});return[4,(0,Wn.fetchJson)({url:on,errorPassThrough:true},cn,(function(Wt,Pt){Wt.status=Pt.statusCode;return Wt}))];case 2:dn=tn.sent();if(dn.data){return[2,dn.data]}un=dn.message||"unknown error";if(dn.status>=400&&dn.status<500){return[2,Rn.throwError("response not found during CCIP fetch: "+un,vn.Logger.errors.SERVER_ERROR,{url:sn,errorMessage:un})]}rn.push(un);tn.label=3;case 3:In++;return[3,1];case 4:return[2,Rn.throwError("error encountered during CCIP fetch: "+rn.map((function(Wt){return JSON.stringify(Wt)})).join(", "),vn.Logger.errors.SERVER_ERROR,{urls:nn,errorMessages:rn})]}}))}))};BaseProvider2.prototype._getInternalBlockNumber=function(Wt){return en(this,void 0,void 0,(function(){var Pt,en,nn,an,rn;var In=this;return tn(this,(function(tn){switch(tn.label){case 0:return[4,this._ready()];case 1:tn.sent();if(!(Wt>0))return[3,7];tn.label=2;case 2:if(!this._internalBlockNumber)return[3,7];Pt=this._internalBlockNumber;tn.label=3;case 3:tn.trys.push([3,5,,6]);return[4,Pt];case 4:en=tn.sent();if(getTime()-en.respTime<=Wt){return[2,en.blockNumber]}return[3,7];case 5:nn=tn.sent();if(this._internalBlockNumber===Pt){return[3,7]}return[3,6];case 6:return[3,2];case 7:an=getTime();rn=(0,bn.resolveProperties)({blockNumber:this.perform("getBlockNumber",{}),networkError:this.getNetwork().then((function(Wt){return null}),(function(Wt){return Wt}))}).then((function(Wt){var Pt=Wt.blockNumber,en=Wt.networkError;if(en){if(In._internalBlockNumber===rn){In._internalBlockNumber=null}throw en}var tn=getTime();Pt=sn.BigNumber.from(Pt).toNumber();if(Pt1e3){Rn.warn("network block skew detected; skipping block events (emitted="+this._emitted.block+" blockNumber"+en+")");this.emit("error",Rn.makeError("network block skew detected",vn.Logger.errors.NETWORK_ERROR,{blockNumber:en,event:"blockSkew",previousBlockNumber:this._emitted.block}));this.emit("block",en)}else{for(an=this._emitted.block+1;an<=en;an++){this.emit("block",an)}}if(this._emitted.block!==en){this._emitted.block=en;Object.keys(this._emitted).forEach((function(Wt){if(Wt==="block"){return}var Pt=rn._emitted[Wt];if(Pt==="pending"){return}if(en-Pt>12){delete rn._emitted[Wt]}}))}if(this._lastBlockNumber===-2){this._lastBlockNumber=en-1}this._events.forEach((function(Wt){switch(Wt.type){case"tx":{var tn=Wt.hash;var nn=rn.getTransactionReceipt(tn).then((function(Wt){if(!Wt||Wt.blockNumber==null){return null}rn._emitted["t:"+tn]=Wt.blockNumber;rn.emit(tn,Wt);return null})).catch((function(Wt){rn.emit("error",Wt)}));Pt.push(nn);break}case"filter":{if(!Wt._inflight){Wt._inflight=true;if(Wt._lastBlockNumber===-2){Wt._lastBlockNumber=en-1}var an=Wt.filter;an.fromBlock=Wt._lastBlockNumber+1;an.toBlock=en;var In=an.toBlock-rn._maxFilterBlockRange;if(In>an.fromBlock){an.fromBlock=In}if(an.fromBlock<0){an.fromBlock=0}var nn=rn.getLogs(an).then((function(Pt){Wt._inflight=false;if(Pt.length===0){return}Pt.forEach((function(Pt){if(Pt.blockNumber>Wt._lastBlockNumber){Wt._lastBlockNumber=Pt.blockNumber}rn._emitted["b:"+Pt.blockHash]=Pt.blockNumber;rn._emitted["t:"+Pt.transactionHash]=Pt.blockNumber;rn.emit(an,Pt)}))})).catch((function(Pt){rn.emit("error",Pt);Wt._inflight=false}));Pt.push(nn)}break}}}));this._lastBlockNumber=en;Promise.all(Pt).then((function(){rn.emit("didPoll",Wt)})).catch((function(Wt){rn.emit("error",Wt)}));return[2]}}))}))};BaseProvider2.prototype.resetEventsBlock=function(Wt){this._lastBlockNumber=Wt-1;if(this.polling){this.poll()}};Object.defineProperty(BaseProvider2.prototype,"network",{get:function(){return this._network},enumerable:false,configurable:true});BaseProvider2.prototype.detectNetwork=function(){return en(this,void 0,void 0,(function(){return tn(this,(function(Wt){return[2,Rn.throwError("provider does not support network detection",vn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"provider.detectNetwork"})]}))}))};BaseProvider2.prototype.getNetwork=function(){return en(this,void 0,void 0,(function(){var Wt,Pt,en;return tn(this,(function(tn){switch(tn.label){case 0:return[4,this._ready()];case 1:Wt=tn.sent();return[4,this.detectNetwork()];case 2:Pt=tn.sent();if(!(Wt.chainId!==Pt.chainId))return[3,5];if(!this.anyNetwork)return[3,4];this._network=Pt;this._lastBlockNumber=-2;this._fastBlockNumber=null;this._fastBlockNumberPromise=null;this._fastQueryDate=0;this._emitted.block=-2;this._maxInternalBlockNumber=-1024;this._internalBlockNumber=null;this.emit("network",Pt,Wt);return[4,stall(0)];case 3:tn.sent();return[2,this._network];case 4:en=Rn.makeError("underlying network changed",vn.Logger.errors.NETWORK_ERROR,{event:"changed",network:Wt,detectedNetwork:Pt});this.emit("error",en);throw en;case 5:return[2,Wt]}}))}))};Object.defineProperty(BaseProvider2.prototype,"blockNumber",{get:function(){var Wt=this;this._getInternalBlockNumber(100+this.pollingInterval/2).then((function(Pt){Wt._setFastBlockNumber(Pt)}),(function(Wt){}));return this._fastBlockNumber!=null?this._fastBlockNumber:-1},enumerable:false,configurable:true});Object.defineProperty(BaseProvider2.prototype,"polling",{get:function(){return this._poller!=null},set:function(Wt){var Pt=this;if(Wt&&!this._poller){this._poller=setInterval((function(){Pt.poll()}),this.pollingInterval);if(!this._bootstrapPoll){this._bootstrapPoll=setTimeout((function(){Pt.poll();Pt._bootstrapPoll=setTimeout((function(){if(!Pt._poller){Pt.poll()}Pt._bootstrapPoll=null}),Pt.pollingInterval)}),0)}}else if(!Wt&&this._poller){clearInterval(this._poller);this._poller=null}},enumerable:false,configurable:true});Object.defineProperty(BaseProvider2.prototype,"pollingInterval",{get:function(){return this._pollingInterval},set:function(Wt){var Pt=this;if(typeof Wt!=="number"||Wt<=0||parseInt(String(Wt))!=Wt){throw new Error("invalid polling interval")}this._pollingInterval=Wt;if(this._poller){clearInterval(this._poller);this._poller=setInterval((function(){Pt.poll()}),this._pollingInterval)}},enumerable:false,configurable:true});BaseProvider2.prototype._getFastBlockNumber=function(){var Wt=this;var Pt=getTime();if(Pt-this._fastQueryDate>2*this._pollingInterval){this._fastQueryDate=Pt;this._fastBlockNumberPromise=this.getBlockNumber().then((function(Pt){if(Wt._fastBlockNumber==null||Pt>Wt._fastBlockNumber){Wt._fastBlockNumber=Pt}return Wt._fastBlockNumber}))}return this._fastBlockNumberPromise};BaseProvider2.prototype._setFastBlockNumber=function(Wt){if(this._fastBlockNumber!=null&&Wtthis._fastBlockNumber){this._fastBlockNumber=Wt;this._fastBlockNumberPromise=Promise.resolve(Wt)}};BaseProvider2.prototype.waitForTransaction=function(Wt,Pt,nn){return en(this,void 0,void 0,(function(){return tn(this,(function(en){return[2,this._waitForTransaction(Wt,Pt==null?1:Pt,nn||0,null)]}))}))};BaseProvider2.prototype._waitForTransaction=function(Wt,Pt,nn,an){return en(this,void 0,void 0,(function(){var rn;var In=this;return tn(this,(function(sn){switch(sn.label){case 0:return[4,this.getTransactionReceipt(Wt)];case 1:rn=sn.sent();if((rn?rn.confirmations:0)>=Pt){return[2,rn]}return[2,new Promise((function(rn,sn){var on=[];var cn=false;var alreadyDone=function(){if(cn){return true}cn=true;on.forEach((function(Wt){Wt()}));return false};var minedHandler=function(Wt){if(Wt.confirmations0){var pn=setTimeout((function(){if(alreadyDone()){return}sn(Rn.makeError("timeout exceeded",vn.Logger.errors.TIMEOUT,{timeout:nn}))}),nn);if(pn.unref){pn.unref()}on.push((function(){clearTimeout(pn)}))}}))]}}))}))};BaseProvider2.prototype.getBlockNumber=function(){return en(this,void 0,void 0,(function(){return tn(this,(function(Wt){return[2,this._getInternalBlockNumber(0)]}))}))};BaseProvider2.prototype.getGasPrice=function(){return en(this,void 0,void 0,(function(){var Wt;return tn(this,(function(Pt){switch(Pt.label){case 0:return[4,this.getNetwork()];case 1:Pt.sent();return[4,this.perform("getGasPrice",{})];case 2:Wt=Pt.sent();try{return[2,sn.BigNumber.from(Wt)]}catch(Pt){return[2,Rn.throwError("bad result from backend",vn.Logger.errors.SERVER_ERROR,{method:"getGasPrice",result:Wt,error:Pt})]}return[2]}}))}))};BaseProvider2.prototype.getBalance=function(Wt,Pt){return en(this,void 0,void 0,(function(){var en,nn;return tn(this,(function(tn){switch(tn.label){case 0:return[4,this.getNetwork()];case 1:tn.sent();return[4,(0,bn.resolveProperties)({address:this._getAddress(Wt),blockTag:this._getBlockTag(Pt)})];case 2:en=tn.sent();return[4,this.perform("getBalance",en)];case 3:nn=tn.sent();try{return[2,sn.BigNumber.from(nn)]}catch(Wt){return[2,Rn.throwError("bad result from backend",vn.Logger.errors.SERVER_ERROR,{method:"getBalance",params:en,result:nn,error:Wt})]}return[2]}}))}))};BaseProvider2.prototype.getTransactionCount=function(Wt,Pt){return en(this,void 0,void 0,(function(){var en,nn;return tn(this,(function(tn){switch(tn.label){case 0:return[4,this.getNetwork()];case 1:tn.sent();return[4,(0,bn.resolveProperties)({address:this._getAddress(Wt),blockTag:this._getBlockTag(Pt)})];case 2:en=tn.sent();return[4,this.perform("getTransactionCount",en)];case 3:nn=tn.sent();try{return[2,sn.BigNumber.from(nn).toNumber()]}catch(Wt){return[2,Rn.throwError("bad result from backend",vn.Logger.errors.SERVER_ERROR,{method:"getTransactionCount",params:en,result:nn,error:Wt})]}return[2]}}))}))};BaseProvider2.prototype.getCode=function(Wt,Pt){return en(this,void 0,void 0,(function(){var en,nn;return tn(this,(function(tn){switch(tn.label){case 0:return[4,this.getNetwork()];case 1:tn.sent();return[4,(0,bn.resolveProperties)({address:this._getAddress(Wt),blockTag:this._getBlockTag(Pt)})];case 2:en=tn.sent();return[4,this.perform("getCode",en)];case 3:nn=tn.sent();try{return[2,(0,on.hexlify)(nn)]}catch(Wt){return[2,Rn.throwError("bad result from backend",vn.Logger.errors.SERVER_ERROR,{method:"getCode",params:en,result:nn,error:Wt})]}return[2]}}))}))};BaseProvider2.prototype.getStorageAt=function(Wt,Pt,nn){return en(this,void 0,void 0,(function(){var en,an;return tn(this,(function(tn){switch(tn.label){case 0:return[4,this.getNetwork()];case 1:tn.sent();return[4,(0,bn.resolveProperties)({address:this._getAddress(Wt),blockTag:this._getBlockTag(nn),position:Promise.resolve(Pt).then((function(Wt){return(0,on.hexValue)(Wt)}))})];case 2:en=tn.sent();return[4,this.perform("getStorageAt",en)];case 3:an=tn.sent();try{return[2,(0,on.hexlify)(an)]}catch(Wt){return[2,Rn.throwError("bad result from backend",vn.Logger.errors.SERVER_ERROR,{method:"getStorageAt",params:en,result:an,error:Wt})]}return[2]}}))}))};BaseProvider2.prototype._wrapTransaction=function(Wt,Pt,nn){var an=this;if(Pt!=null&&(0,on.hexDataLength)(Pt)!==32){throw new Error("invalid response - sendTransaction")}var rn=Wt;if(Pt!=null&&Wt.hash!==Pt){Rn.throwError("Transaction hash mismatch from Provider.sendTransaction.",vn.Logger.errors.UNKNOWN_ERROR,{expectedHash:Wt.hash,returnedHash:Pt})}rn.wait=function(Pt,rn){return en(an,void 0,void 0,(function(){var en,an;return tn(this,(function(tn){switch(tn.label){case 0:if(Pt==null){Pt=1}if(rn==null){rn=0}en=void 0;if(Pt!==0&&nn!=null){en={data:Wt.data,from:Wt.from,nonce:Wt.nonce,to:Wt.to,value:Wt.value,startBlock:nn}}return[4,this._waitForTransaction(Wt.hash,Pt,rn,en)];case 1:an=tn.sent();if(an==null&&Pt===0){return[2,null]}this._emitted["t:"+Wt.hash]=an.blockNumber;if(an.status===0){Rn.throwError("transaction failed",vn.Logger.errors.CALL_EXCEPTION,{transactionHash:Wt.hash,transaction:Wt,receipt:an})}return[2,an]}}))}))};return rn};BaseProvider2.prototype.sendTransaction=function(Wt){return en(this,void 0,void 0,(function(){var Pt,en,nn,an,rn;return tn(this,(function(tn){switch(tn.label){case 0:return[4,this.getNetwork()];case 1:tn.sent();return[4,Promise.resolve(Wt).then((function(Wt){return(0,on.hexlify)(Wt)}))];case 2:Pt=tn.sent();en=this.formatter.transaction(Wt);if(en.confirmations==null){en.confirmations=0}return[4,this._getInternalBlockNumber(100+2*this.pollingInterval)];case 3:nn=tn.sent();tn.label=4;case 4:tn.trys.push([4,6,,7]);return[4,this.perform("sendTransaction",{signedTransaction:Pt})];case 5:an=tn.sent();return[2,this._wrapTransaction(en,an,nn)];case 6:rn=tn.sent();rn.transaction=en;rn.transactionHash=en.hash;throw rn;case 7:return[2]}}))}))};BaseProvider2.prototype._getTransactionRequest=function(Wt){return en(this,void 0,void 0,(function(){var Pt,en,nn,an;var rn=this;return tn(this,(function(tn){switch(tn.label){case 0:return[4,Wt];case 1:Pt=tn.sent();en={};["from","to"].forEach((function(Wt){if(Pt[Wt]==null){return}en[Wt]=Promise.resolve(Pt[Wt]).then((function(Wt){return Wt?rn._getAddress(Wt):null}))}));["gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","value"].forEach((function(Wt){if(Pt[Wt]==null){return}en[Wt]=Promise.resolve(Pt[Wt]).then((function(Wt){return Wt?sn.BigNumber.from(Wt):null}))}));["type"].forEach((function(Wt){if(Pt[Wt]==null){return}en[Wt]=Promise.resolve(Pt[Wt]).then((function(Wt){return Wt!=null?Wt:null}))}));if(Pt.accessList){en.accessList=this.formatter.accessList(Pt.accessList)}["data"].forEach((function(Wt){if(Pt[Wt]==null){return}en[Wt]=Promise.resolve(Pt[Wt]).then((function(Wt){return Wt?(0,on.hexlify)(Wt):null}))}));an=(nn=this.formatter).transactionRequest;return[4,(0,bn.resolveProperties)(en)];case 2:return[2,an.apply(nn,[tn.sent()])]}}))}))};BaseProvider2.prototype._getFilter=function(Wt){return en(this,void 0,void 0,(function(){var Pt,en,nn;var an=this;return tn(this,(function(tn){switch(tn.label){case 0:return[4,Wt];case 1:Wt=tn.sent();Pt={};if(Wt.address!=null){Pt.address=this._getAddress(Wt.address)}["blockHash","topics"].forEach((function(en){if(Wt[en]==null){return}Pt[en]=Wt[en]}));["fromBlock","toBlock"].forEach((function(en){if(Wt[en]==null){return}Pt[en]=an._getBlockTag(Wt[en])}));nn=(en=this.formatter).filter;return[4,(0,bn.resolveProperties)(Pt)];case 2:return[2,nn.apply(en,[tn.sent()])]}}))}))};BaseProvider2.prototype._call=function(Wt,Pt,nn){return en(this,void 0,void 0,(function(){var en,an,rn,In,cn,dn,un,pn,mn,bn,Gn,hn,Zn,An,Wn,Nn;return tn(this,(function(tn){switch(tn.label){case 0:if(nn>=Fn){Rn.throwError("CCIP read exceeded maximum redirections",vn.Logger.errors.SERVER_ERROR,{redirects:nn,transaction:Wt})}en=Wt.to;return[4,this.perform("call",{transaction:Wt,blockTag:Pt})];case 1:an=tn.sent();if(!(nn>=0&&Pt==="latest"&&en!=null&&an.substring(0,10)==="0x556f1830"&&(0,on.hexDataLength)(an)%32===4))return[3,5];tn.label=2;case 2:tn.trys.push([2,4,,5]);rn=(0,on.hexDataSlice)(an,4);In=(0,on.hexDataSlice)(rn,0,32);if(!sn.BigNumber.from(In).eq(en)){Rn.throwError("CCIP Read sender did not match",vn.Logger.errors.CALL_EXCEPTION,{name:"OffchainLookup",signature:"OffchainLookup(address,string[],bytes,bytes4,bytes)",transaction:Wt,data:an})}cn=[];dn=sn.BigNumber.from((0,on.hexDataSlice)(rn,32,64)).toNumber();un=sn.BigNumber.from((0,on.hexDataSlice)(rn,dn,dn+32)).toNumber();pn=(0,on.hexDataSlice)(rn,dn+32);for(mn=0;mnthis._emitted.block){return[2,null]}}return[2,void 0]}if(!Pt)return[3,8];en=null;rn=0;tn.label=2;case 2:if(!(rn0};BaseProvider2.prototype._stopEvent=function(Wt){this.polling=this._events.filter((function(Wt){return Wt.pollable()})).length>0};BaseProvider2.prototype._addEventListener=function(Wt,Pt,en){var tn=new Hn(getEventTag(Wt),Pt,en);this._events.push(tn);this._startEvent(tn);return this};BaseProvider2.prototype.on=function(Wt,Pt){return this._addEventListener(Wt,Pt,false)};BaseProvider2.prototype.once=function(Wt,Pt){return this._addEventListener(Wt,Pt,true)};BaseProvider2.prototype.emit=function(Wt){var Pt=this;var en=[];for(var tn=1;tn0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]=0){throw Wt}return In.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",an.Logger.errors.UNPREDICTABLE_GAS_LIMIT,{error:Wt,tx:Pt})}))}if(Pt.chainId==null){Pt.chainId=this.getChainId()}else{Pt.chainId=Promise.all([Promise.resolve(Pt.chainId),this.getChainId()]).then((function(Pt){if(Pt[1]!==0&&Pt[0]!==Pt[1]){In.throwArgumentError("chainId address mismatch","transaction",Wt)}return Pt[0]}))}return[4,(0,nn.resolveProperties)(Pt)];case 6:return[2,un.sent()]}}))}))};Signer2.prototype._checkProvider=function(Wt){if(!this.provider){In.throwError("missing provider",an.Logger.errors.UNSUPPORTED_OPERATION,{operation:Wt||"_checkProvider"})}};Signer2.isSigner=function(Wt){return!!(Wt&&Wt._isSigner)};return Signer2}();Wt.Signer=cn;var un=function(Wt){Pt(VoidSigner2,Wt);function VoidSigner2(Pt,en){var tn=Wt.call(this)||this;(0,nn.defineReadOnly)(tn,"address",Pt);(0,nn.defineReadOnly)(tn,"provider",en||null);return tn}VoidSigner2.prototype.getAddress=function(){return Promise.resolve(this.address)};VoidSigner2.prototype._fail=function(Wt,Pt){return Promise.resolve().then((function(){In.throwError(Wt,an.Logger.errors.UNSUPPORTED_OPERATION,{operation:Pt})}))};VoidSigner2.prototype.signMessage=function(Wt){return this._fail("VoidSigner cannot sign messages","signMessage")};VoidSigner2.prototype.signTransaction=function(Wt){return this._fail("VoidSigner cannot sign transactions","signTransaction")};VoidSigner2.prototype._signTypedData=function(Wt,Pt,en){return this._fail("VoidSigner cannot sign typed data","signTypedData")};VoidSigner2.prototype.connect=function(Wt){return new VoidSigner2(this.address,Wt)};return VoidSigner2}(cn);Wt.VoidSigner=un}});var Pl=__commonJS({"node_modules/@ethersproject/providers/lib/json-rpc-provider.js"(Wt){"use strict";var Pt=Wt&&Wt.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();var en=Wt&&Wt.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var tn=Wt&&Wt.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]=0&&an.match(/gas required exceeds allowance|always failing transaction|execution reverted|revert/)){Gn.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",mn.Logger.errors.UNPREDICTABLE_GAS_LIMIT,{error:Pt,method:Wt,transaction:tn})}throw Pt}function timer(Wt){return new Promise((function(Pt){setTimeout(Pt,Wt)}))}function getResult(Wt){if(Wt.error){var Pt=new Error(Wt.error.message);Pt.code=Wt.error.code;Pt.data=Wt.error.data;throw Pt}return Wt.result}function getLowerCase(Wt){if(Wt){return Wt.toLowerCase()}return Wt}var Nn={};var gn=function(Wt){Pt(JsonRpcSigner2,Wt);function JsonRpcSigner2(Pt,en,tn){var nn=Wt.call(this)||this;if(Pt!==Nn){throw new Error("do not call the JsonRpcSigner constructor directly; use provider.getSigner")}(0,sn.defineReadOnly)(nn,"provider",en);if(tn==null){tn=0}if(typeof tn==="string"){(0,sn.defineReadOnly)(nn,"_address",nn.provider.formatter.address(tn));(0,sn.defineReadOnly)(nn,"_index",null)}else if(typeof tn==="number"){(0,sn.defineReadOnly)(nn,"_index",tn);(0,sn.defineReadOnly)(nn,"_address",null)}else{Gn.throwArgumentError("invalid address or index","addressOrIndex",tn)}return nn}JsonRpcSigner2.prototype.connect=function(Wt){return Gn.throwError("cannot alter JSON-RPC Signer connection",mn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"connect"})};JsonRpcSigner2.prototype.connectUnchecked=function(){return new yn(Nn,this.provider,this._address||this._index)};JsonRpcSigner2.prototype.getAddress=function(){var Wt=this;if(this._address){return Promise.resolve(this._address)}return this.provider.send("eth_accounts",[]).then((function(Pt){if(Pt.length<=Wt._index){Gn.throwError("unknown account #"+Wt._index,mn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"getAddress"})}return Wt.provider.formatter.address(Pt[Wt._index])}))};JsonRpcSigner2.prototype.sendUncheckedTransaction=function(Wt){var Pt=this;Wt=(0,sn.shallowCopy)(Wt);var nn=this.getAddress().then((function(Wt){if(Wt){Wt=Wt.toLowerCase()}return Wt}));if(Wt.gasLimit==null){var an=(0,sn.shallowCopy)(Wt);an.from=nn;Wt.gasLimit=this.provider.estimateGas(an)}if(Wt.to!=null){Wt.to=Promise.resolve(Wt.to).then((function(Wt){return en(Pt,void 0,void 0,(function(){var Pt;return tn(this,(function(en){switch(en.label){case 0:if(Wt==null){return[2,null]}return[4,this.provider.resolveName(Wt)];case 1:Pt=en.sent();if(Pt==null){Gn.throwArgumentError("provided ENS name resolves to null","tx.to",Wt)}return[2,Pt]}}))}))}))}return(0,sn.resolveProperties)({tx:(0,sn.resolveProperties)(Wt),sender:nn}).then((function(en){var tn=en.tx,nn=en.sender;if(tn.from!=null){if(tn.from.toLowerCase()!==nn){Gn.throwArgumentError("from address mismatch","transaction",Wt)}}else{tn.from=nn}var an=Pt.provider.constructor.hexlifyTransaction(tn,{from:true});return Pt.provider.send("eth_sendTransaction",[an]).then((function(Wt){return Wt}),(function(Wt){if(typeof Wt.message==="string"&&Wt.message.match(/user denied/i)){Gn.throwError("user rejected transaction",mn.Logger.errors.ACTION_REJECTED,{action:"sendTransaction",transaction:tn})}return checkError("sendTransaction",Wt,an)}))}))};JsonRpcSigner2.prototype.signTransaction=function(Wt){return Gn.throwError("signing transactions is unsupported",mn.Logger.errors.UNSUPPORTED_OPERATION,{operation:"signTransaction"})};JsonRpcSigner2.prototype.sendTransaction=function(Wt){return en(this,void 0,void 0,(function(){var Pt,nn,an;var rn=this;return tn(this,(function(In){switch(In.label){case 0:return[4,this.provider._getInternalBlockNumber(100+2*this.provider.pollingInterval)];case 1:Pt=In.sent();return[4,this.sendUncheckedTransaction(Wt)];case 2:nn=In.sent();In.label=3;case 3:In.trys.push([3,5,,6]);return[4,(0,un.poll)((function(){return en(rn,void 0,void 0,(function(){var Wt;return tn(this,(function(en){switch(en.label){case 0:return[4,this.provider.getTransaction(nn)];case 1:Wt=en.sent();if(Wt===null){return[2,void 0]}return[2,this.provider._wrapTransaction(Wt,nn,Pt)]}}))}))}),{oncePoll:this.provider})];case 4:return[2,In.sent()];case 5:an=In.sent();an.transactionHash=nn;throw an;case 6:return[2]}}))}))};JsonRpcSigner2.prototype.signMessage=function(Wt){return en(this,void 0,void 0,(function(){var Pt,en,nn;return tn(this,(function(tn){switch(tn.label){case 0:Pt=typeof Wt==="string"?(0,on.toUtf8Bytes)(Wt):Wt;return[4,this.getAddress()];case 1:en=tn.sent();tn.label=2;case 2:tn.trys.push([2,4,,5]);return[4,this.provider.send("personal_sign",[(0,rn.hexlify)(Pt),en.toLowerCase()])];case 3:return[2,tn.sent()];case 4:nn=tn.sent();if(typeof nn.message==="string"&&nn.message.match(/user denied/i)){Gn.throwError("user rejected signing",mn.Logger.errors.ACTION_REJECTED,{action:"signMessage",from:en,messageData:Wt})}throw nn;case 5:return[2]}}))}))};JsonRpcSigner2.prototype._legacySignMessage=function(Wt){return en(this,void 0,void 0,(function(){var Pt,en,nn;return tn(this,(function(tn){switch(tn.label){case 0:Pt=typeof Wt==="string"?(0,on.toUtf8Bytes)(Wt):Wt;return[4,this.getAddress()];case 1:en=tn.sent();tn.label=2;case 2:tn.trys.push([2,4,,5]);return[4,this.provider.send("eth_sign",[en.toLowerCase(),(0,rn.hexlify)(Pt)])];case 3:return[2,tn.sent()];case 4:nn=tn.sent();if(typeof nn.message==="string"&&nn.message.match(/user denied/i)){Gn.throwError("user rejected signing",mn.Logger.errors.ACTION_REJECTED,{action:"_legacySignMessage",from:en,messageData:Wt})}throw nn;case 5:return[2]}}))}))};JsonRpcSigner2.prototype._signTypedData=function(Wt,Pt,nn){return en(this,void 0,void 0,(function(){var en,an,rn;var sn=this;return tn(this,(function(tn){switch(tn.label){case 0:return[4,In._TypedDataEncoder.resolveNames(Wt,Pt,nn,(function(Wt){return sn.provider.resolveName(Wt)}))];case 1:en=tn.sent();return[4,this.getAddress()];case 2:an=tn.sent();tn.label=3;case 3:tn.trys.push([3,5,,6]);return[4,this.provider.send("eth_signTypedData_v4",[an.toLowerCase(),JSON.stringify(In._TypedDataEncoder.getPayload(en.domain,Pt,en.value))])];case 4:return[2,tn.sent()];case 5:rn=tn.sent();if(typeof rn.message==="string"&&rn.message.match(/user denied/i)){Gn.throwError("user rejected signing",mn.Logger.errors.ACTION_REJECTED,{action:"_signTypedData",from:an,messageData:{domain:en.domain,types:Pt,value:en.value}})}throw rn;case 6:return[2]}}))}))};JsonRpcSigner2.prototype.unlock=function(Wt){return en(this,void 0,void 0,(function(){var Pt,en;return tn(this,(function(tn){switch(tn.label){case 0:Pt=this.provider;return[4,this.getAddress()];case 1:en=tn.sent();return[2,Pt.send("personal_unlockAccount",[en.toLowerCase(),Wt,null])]}}))}))};return JsonRpcSigner2}(nn.Signer);Wt.JsonRpcSigner=gn;var yn=function(Wt){Pt(UncheckedJsonRpcSigner2,Wt);function UncheckedJsonRpcSigner2(){return Wt!==null&&Wt.apply(this,arguments)||this}UncheckedJsonRpcSigner2.prototype.sendTransaction=function(Wt){var Pt=this;return this.sendUncheckedTransaction(Wt).then((function(Wt){return{hash:Wt,nonce:null,gasLimit:null,gasPrice:null,data:null,value:null,chainId:null,confirmations:0,from:null,wait:function(en){return Pt.provider.waitForTransaction(Wt,en)}}}))};return UncheckedJsonRpcSigner2}(gn);var vn={chainId:true,data:true,gasLimit:true,gasPrice:true,nonce:true,to:true,value:true,type:true,accessList:true,maxFeePerGas:true,maxPriorityFeePerGas:true};var Yn=function(Wt){Pt(JsonRpcProvider3,Wt);function JsonRpcProvider3(Pt,en){var tn=this;var nn=en;if(nn==null){nn=new Promise((function(Wt,Pt){setTimeout((function(){tn.detectNetwork().then((function(Pt){Wt(Pt)}),(function(Wt){Pt(Wt)}))}),0)}))}tn=Wt.call(this,nn)||this;if(!Pt){Pt=(0,sn.getStatic)(tn.constructor,"defaultUrl")()}if(typeof Pt==="string"){(0,sn.defineReadOnly)(tn,"connection",Object.freeze({url:Pt}))}else{(0,sn.defineReadOnly)(tn,"connection",Object.freeze((0,sn.shallowCopy)(Pt)))}tn._nextId=42;return tn}Object.defineProperty(JsonRpcProvider3.prototype,"_cache",{get:function(){if(this._eventLoopCache==null){this._eventLoopCache={}}return this._eventLoopCache},enumerable:false,configurable:true});JsonRpcProvider3.defaultUrl=function(){return"http://localhost:8545"};JsonRpcProvider3.prototype.detectNetwork=function(){var Wt=this;if(!this._cache["detectNetwork"]){this._cache["detectNetwork"]=this._uncachedDetectNetwork();setTimeout((function(){Wt._cache["detectNetwork"]=null}),0)}return this._cache["detectNetwork"]};JsonRpcProvider3.prototype._uncachedDetectNetwork=function(){return en(this,void 0,void 0,(function(){var Wt,Pt,en,nn;return tn(this,(function(tn){switch(tn.label){case 0:return[4,timer(0)];case 1:tn.sent();Wt=null;tn.label=2;case 2:tn.trys.push([2,4,,9]);return[4,this.send("eth_chainId",[])];case 3:Wt=tn.sent();return[3,9];case 4:Pt=tn.sent();tn.label=5;case 5:tn.trys.push([5,7,,8]);return[4,this.send("net_version",[])];case 6:Wt=tn.sent();return[3,8];case 7:en=tn.sent();return[3,8];case 8:return[3,9];case 9:if(Wt!=null){nn=(0,sn.getStatic)(this.constructor,"getNetwork");try{return[2,nn(an.BigNumber.from(Wt).toNumber())]}catch(Pt){return[2,Gn.throwError("could not detect network",mn.Logger.errors.NETWORK_ERROR,{chainId:Wt,event:"invalidNetwork",serverError:Pt})]}}return[2,Gn.throwError("could not detect network",mn.Logger.errors.NETWORK_ERROR,{event:"noNetwork"})]}}))}))};JsonRpcProvider3.prototype.getSigner=function(Wt){return new gn(Nn,this,Wt)};JsonRpcProvider3.prototype.getUncheckedSigner=function(Wt){return this.getSigner(Wt).connectUnchecked()};JsonRpcProvider3.prototype.listAccounts=function(){var Wt=this;return this.send("eth_accounts",[]).then((function(Pt){return Pt.map((function(Pt){return Wt.formatter.address(Pt)}))}))};JsonRpcProvider3.prototype.send=function(Wt,Pt){var en=this;var tn={method:Wt,params:Pt,id:this._nextId++,jsonrpc:"2.0"};this.emit("debug",{action:"request",request:(0,sn.deepCopy)(tn),provider:this});var nn=["eth_chainId","eth_blockNumber"].indexOf(Wt)>=0;if(nn&&this._cache[Wt]){return this._cache[Wt]}var an=(0,un.fetchJson)(this.connection,JSON.stringify(tn),getResult).then((function(Wt){en.emit("debug",{action:"response",request:tn,response:Wt,provider:en});return Wt}),(function(Wt){en.emit("debug",{action:"response",error:Wt,request:tn,provider:en});throw Wt}));if(nn){this._cache[Wt]=an;setTimeout((function(){en._cache[Wt]=null}),0)}return an};JsonRpcProvider3.prototype.prepareRequest=function(Wt,Pt){switch(Wt){case"getBlockNumber":return["eth_blockNumber",[]];case"getGasPrice":return["eth_gasPrice",[]];case"getBalance":return["eth_getBalance",[getLowerCase(Pt.address),Pt.blockTag]];case"getTransactionCount":return["eth_getTransactionCount",[getLowerCase(Pt.address),Pt.blockTag]];case"getCode":return["eth_getCode",[getLowerCase(Pt.address),Pt.blockTag]];case"getStorageAt":return["eth_getStorageAt",[getLowerCase(Pt.address),(0,rn.hexZeroPad)(Pt.position,32),Pt.blockTag]];case"sendTransaction":return["eth_sendRawTransaction",[Pt.signedTransaction]];case"getBlock":if(Pt.blockTag){return["eth_getBlockByNumber",[Pt.blockTag,!!Pt.includeTransactions]]}else if(Pt.blockHash){return["eth_getBlockByHash",[Pt.blockHash,!!Pt.includeTransactions]]}return null;case"getTransaction":return["eth_getTransactionByHash",[Pt.transactionHash]];case"getTransactionReceipt":return["eth_getTransactionReceipt",[Pt.transactionHash]];case"call":{var en=(0,sn.getStatic)(this.constructor,"hexlifyTransaction");return["eth_call",[en(Pt.transaction,{from:true}),Pt.blockTag]]}case"estimateGas":{var en=(0,sn.getStatic)(this.constructor,"hexlifyTransaction");return["eth_estimateGas",[en(Pt.transaction,{from:true})]]}case"getLogs":if(Pt.filter&&Pt.filter.address!=null){Pt.filter.address=getLowerCase(Pt.filter.address)}return["eth_getLogs",[Pt.filter]];default:break}return null};JsonRpcProvider3.prototype.perform=function(Wt,Pt){return en(this,void 0,void 0,(function(){var en,nn,rn,In;return tn(this,(function(tn){switch(tn.label){case 0:if(!(Wt==="call"||Wt==="estimateGas"))return[3,2];en=Pt.transaction;if(!(en&&en.type!=null&&an.BigNumber.from(en.type).isZero()))return[3,2];if(!(en.maxFeePerGas==null&&en.maxPriorityFeePerGas==null))return[3,2];return[4,this.getFeeData()];case 1:nn=tn.sent();if(nn.maxFeePerGas==null&&nn.maxPriorityFeePerGas==null){Pt=(0,sn.shallowCopy)(Pt);Pt.transaction=(0,sn.shallowCopy)(en);delete Pt.transaction.type}tn.label=2;case 2:rn=this.prepareRequest(Wt,Pt);if(rn==null){Gn.throwError(Wt+" not implemented",mn.Logger.errors.NOT_IMPLEMENTED,{operation:Wt})}tn.label=3;case 3:tn.trys.push([3,5,,6]);return[4,this.send(rn[0],rn[1])];case 4:return[2,tn.sent()];case 5:In=tn.sent();return[2,checkError(Wt,In,Pt)];case 6:return[2]}}))}))};JsonRpcProvider3.prototype._startEvent=function(Pt){if(Pt.tag==="pending"){this._startPending()}Wt.prototype._startEvent.call(this,Pt)};JsonRpcProvider3.prototype._startPending=function(){if(this._pendingFilter!=null){return}var Wt=this;var Pt=this.send("eth_newPendingTransactionFilter",[]);this._pendingFilter=Pt;Pt.then((function(en){function poll(){Wt.send("eth_getFilterChanges",[en]).then((function(en){if(Wt._pendingFilter!=Pt){return null}var tn=Promise.resolve();en.forEach((function(Pt){Wt._emitted["t:"+Pt.toLowerCase()]="pending";tn=tn.then((function(){return Wt.getTransaction(Pt).then((function(Pt){Wt.emit("pending",Pt);return null}))}))}));return tn.then((function(){return timer(1e3)}))})).then((function(){if(Wt._pendingFilter!=Pt){Wt.send("eth_uninstallFilter",[en]);return}setTimeout((function(){poll()}),0);return null})).catch((function(Wt){}))}poll();return en})).catch((function(Wt){}))};JsonRpcProvider3.prototype._stopEvent=function(Pt){if(Pt.tag==="pending"&&this.listenerCount("pending")===0){this._pendingFilter=null}Wt.prototype._stopEvent.call(this,Pt)};JsonRpcProvider3.hexlifyTransaction=function(Wt,Pt){var en=(0,sn.shallowCopy)(vn);if(Pt){for(var tn in Pt){if(Pt[tn]){en[tn]=true}}}(0,sn.checkProperties)(Wt,en);var nn={};["chainId","gasLimit","gasPrice","type","maxFeePerGas","maxPriorityFeePerGas","nonce","value"].forEach((function(Pt){if(Wt[Pt]==null){return}var en=(0,rn.hexValue)(an.BigNumber.from(Wt[Pt]));if(Pt==="gasLimit"){Pt="gas"}nn[Pt]=en}));["from","to","data"].forEach((function(Pt){if(Wt[Pt]==null){return}nn[Pt]=(0,rn.hexlify)(Wt[Pt])}));if(Wt.accessList){nn["accessList"]=(0,cn.accessListify)(Wt.accessList)}return nn};return JsonRpcProvider3}(Zn.BaseProvider);Wt.JsonRpcProvider=Yn}});var ql=__commonJS({"node_modules/ws/lib/constants.js"(Wt,Pt){"use strict";Pt.exports={BINARY_TYPES:["nodebuffer","arraybuffer","fragments"],GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),EMPTY_BUFFER:Buffer.alloc(0),NOOP:()=>{}}}});var $l=__commonJS({"node_modules/ws/lib/buffer-util.js"(Wt,Pt){"use strict";var{EMPTY_BUFFER:tn}=ql();function concat(Wt,Pt){if(Wt.length===0)return tn;if(Wt.length===1)return Wt[0];const en=Buffer.allocUnsafe(Pt);let nn=0;for(let Pt=0;Pt{this.pending--;this[tn]()};this.concurrency=Wt||Infinity;this.jobs=[];this.pending=0}add(Wt){this.jobs.push(Wt);this[tn]()}[tn](){if(this.pending===this.concurrency)return;if(this.jobs.length){const Wt=this.jobs.shift();this.pending++;Wt(this[en])}}};Pt.exports=nn}});var Qr=__commonJS({"node_modules/ws/lib/permessage-deflate.js"(Wt,Pt){"use strict";var tn=en(43106);var nn=$l();var an=Zr();var{kStatusCode:rn,NOOP:In}=ql();var sn=Buffer.from([0,0,255,255]);var on=Symbol("permessage-deflate");var cn=Symbol("total-length");var dn=Symbol("callback");var un=Symbol("buffers");var pn=Symbol("error");var mn;var bn=class{constructor(Wt,Pt,en){this._maxPayload=en|0;this._options=Wt||{};this._threshold=this._options.threshold!==void 0?this._options.threshold:1024;this._isServer=!!Pt;this._deflate=null;this._inflate=null;this.params=null;if(!mn){const Wt=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;mn=new an(Wt)}}static get extensionName(){return"permessage-deflate"}offer(){const Wt={};if(this._options.serverNoContextTakeover){Wt.server_no_context_takeover=true}if(this._options.clientNoContextTakeover){Wt.client_no_context_takeover=true}if(this._options.serverMaxWindowBits){Wt.server_max_window_bits=this._options.serverMaxWindowBits}if(this._options.clientMaxWindowBits){Wt.client_max_window_bits=this._options.clientMaxWindowBits}else if(this._options.clientMaxWindowBits==null){Wt.client_max_window_bits=true}return Wt}accept(Wt){Wt=this.normalizeParams(Wt);this.params=this._isServer?this.acceptAsServer(Wt):this.acceptAsClient(Wt);return this.params}cleanup(){if(this._inflate){this._inflate.close();this._inflate=null}if(this._deflate){const Wt=this._deflate[dn];this._deflate.close();this._deflate=null;if(Wt){Wt(new Error("The deflate stream was closed while data was being processed"))}}}acceptAsServer(Wt){const Pt=this._options;const en=Wt.find((Wt=>{if(Pt.serverNoContextTakeover===false&&Wt.server_no_context_takeover||Wt.server_max_window_bits&&(Pt.serverMaxWindowBits===false||typeof Pt.serverMaxWindowBits==="number"&&Pt.serverMaxWindowBits>Wt.server_max_window_bits)||typeof Pt.clientMaxWindowBits==="number"&&!Wt.client_max_window_bits){return false}return true}));if(!en){throw new Error("None of the extension offers can be accepted")}if(Pt.serverNoContextTakeover){en.server_no_context_takeover=true}if(Pt.clientNoContextTakeover){en.client_no_context_takeover=true}if(typeof Pt.serverMaxWindowBits==="number"){en.server_max_window_bits=Pt.serverMaxWindowBits}if(typeof Pt.clientMaxWindowBits==="number"){en.client_max_window_bits=Pt.clientMaxWindowBits}else if(en.client_max_window_bits===true||Pt.clientMaxWindowBits===false){delete en.client_max_window_bits}return en}acceptAsClient(Wt){const Pt=Wt[0];if(this._options.clientNoContextTakeover===false&&Pt.client_no_context_takeover){throw new Error('Unexpected parameter "client_no_context_takeover"')}if(!Pt.client_max_window_bits){if(typeof this._options.clientMaxWindowBits==="number"){Pt.client_max_window_bits=this._options.clientMaxWindowBits}}else if(this._options.clientMaxWindowBits===false||typeof this._options.clientMaxWindowBits==="number"&&Pt.client_max_window_bits>this._options.clientMaxWindowBits){throw new Error('Unexpected or invalid parameter "client_max_window_bits"')}return Pt}normalizeParams(Wt){Wt.forEach((Wt=>{Object.keys(Wt).forEach((Pt=>{let en=Wt[Pt];if(en.length>1){throw new Error(`Parameter "${Pt}" must have only a single value`)}en=en[0];if(Pt==="client_max_window_bits"){if(en!==true){const Wt=+en;if(!Number.isInteger(Wt)||Wt<8||Wt>15){throw new TypeError(`Invalid value for parameter "${Pt}": ${en}`)}en=Wt}else if(!this._isServer){throw new TypeError(`Invalid value for parameter "${Pt}": ${en}`)}}else if(Pt==="server_max_window_bits"){const Wt=+en;if(!Number.isInteger(Wt)||Wt<8||Wt>15){throw new TypeError(`Invalid value for parameter "${Pt}": ${en}`)}en=Wt}else if(Pt==="client_no_context_takeover"||Pt==="server_no_context_takeover"){if(en!==true){throw new TypeError(`Invalid value for parameter "${Pt}": ${en}`)}}else{throw new Error(`Unknown parameter "${Pt}"`)}Wt[Pt]=en}))}));return Wt}decompress(Wt,Pt,en){mn.add((tn=>{this._decompress(Wt,Pt,((Wt,Pt)=>{tn();en(Wt,Pt)}))}))}compress(Wt,Pt,en){mn.add((tn=>{this._compress(Wt,Pt,((Wt,Pt)=>{tn();en(Wt,Pt)}))}))}_decompress(Wt,Pt,en){const an=this._isServer?"client":"server";if(!this._inflate){const Wt=`${an}_max_window_bits`;const Pt=typeof this.params[Wt]!=="number"?tn.Z_DEFAULT_WINDOWBITS:this.params[Wt];this._inflate=tn.createInflateRaw({...this._options.zlibInflateOptions,windowBits:Pt});this._inflate[on]=this;this._inflate[cn]=0;this._inflate[un]=[];this._inflate.on("error",inflateOnError);this._inflate.on("data",inflateOnData)}this._inflate[dn]=en;this._inflate.write(Wt);if(Pt)this._inflate.write(sn);this._inflate.flush((()=>{const Wt=this._inflate[pn];if(Wt){this._inflate.close();this._inflate=null;en(Wt);return}const tn=nn.concat(this._inflate[un],this._inflate[cn]);if(this._inflate._readableState.endEmitted){this._inflate.close();this._inflate=null}else{this._inflate[cn]=0;this._inflate[un]=[];if(Pt&&this.params[`${an}_no_context_takeover`]){this._inflate.reset()}}en(null,tn)}))}_compress(Wt,Pt,en){const an=this._isServer?"server":"client";if(!this._deflate){const Wt=`${an}_max_window_bits`;const Pt=typeof this.params[Wt]!=="number"?tn.Z_DEFAULT_WINDOWBITS:this.params[Wt];this._deflate=tn.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:Pt});this._deflate[cn]=0;this._deflate[un]=[];this._deflate.on("error",In);this._deflate.on("data",deflateOnData)}this._deflate[dn]=en;this._deflate.write(Wt);this._deflate.flush(tn.Z_SYNC_FLUSH,(()=>{if(!this._deflate){return}let Wt=nn.concat(this._deflate[un],this._deflate[cn]);if(Pt)Wt=Wt.slice(0,Wt.length-4);this._deflate[dn]=null;this._deflate[cn]=0;this._deflate[un]=[];if(Pt&&this.params[`${an}_no_context_takeover`]){this._deflate.reset()}en(null,Wt)}))}};Pt.exports=bn;function deflateOnData(Wt){this[un].push(Wt);this[cn]+=Wt.length}function inflateOnData(Wt){this[cn]+=Wt.length;if(this[on]._maxPayload<1||this[cn]<=this[on]._maxPayload){this[un].push(Wt);return}this[pn]=new RangeError("Max payload size exceeded");this[pn][rn]=1009;this.removeListener("data",inflateOnData);this.reset()}function inflateOnError(Wt){this[on]._inflate=null;Wt[rn]=1007;this[dn](Wt)}}});var Jr=__commonJS({"node_modules/ws/lib/validation.js"(Wt,Pt){"use strict";function isValidStatusCode(Wt){return Wt>=1e3&&Wt<=1014&&Wt!==1004&&Wt!==1005&&Wt!==1006||Wt>=3e3&&Wt<=4999}function _isValidUTF8(Wt){const Pt=Wt.length;let en=0;while(en=Pt||(Wt[en+1]&192)!==128||(Wt[en+2]&192)!==128||Wt[en]===224&&(Wt[en+1]&224)===128||Wt[en]===237&&(Wt[en+1]&224)===160){return false}en+=3}else if((Wt[en]&248)===240){if(en+3>=Pt||(Wt[en+1]&192)!==128||(Wt[en+2]&192)!==128||(Wt[en+3]&192)!==128||Wt[en]===240&&(Wt[en+1]&240)===128||Wt[en]===244&&Wt[en+1]>143||Wt[en]>244){return false}en+=4}else{return false}}return true}try{let Wt=en(62414);if(typeof Wt==="object"){Wt=Wt.Validation.isValidUTF8}Pt.exports={isValidStatusCode:isValidStatusCode,isValidUTF8(Pt){return Pt.length<150?_isValidUTF8(Pt):Wt(Pt)}}}catch(Wt){Pt.exports={isValidStatusCode:isValidStatusCode,isValidUTF8:_isValidUTF8}}}});var zr=__commonJS({"node_modules/ws/lib/receiver.js"(Wt,Pt){"use strict";var{Writable:tn}=en(2203);var nn=Qr();var{BINARY_TYPES:an,EMPTY_BUFFER:rn,kStatusCode:In,kWebSocket:sn}=ql();var{concat:on,toArrayBuffer:cn,unmask:dn}=$l();var{isValidStatusCode:un,isValidUTF8:pn}=Jr();var mn=0;var bn=1;var Gn=2;var hn=3;var Zn=4;var An=5;var Wn=class extends tn{constructor(Wt,Pt,en,tn){super();this._binaryType=Wt||an[0];this[sn]=void 0;this._extensions=Pt||{};this._isServer=!!en;this._maxPayload=tn|0;this._bufferedBytes=0;this._buffers=[];this._compressed=false;this._payloadLength=0;this._mask=void 0;this._fragmented=0;this._masked=false;this._fin=false;this._opcode=0;this._totalPayloadLength=0;this._messageLength=0;this._fragments=[];this._state=mn;this._loop=false}_write(Wt,Pt,en){if(this._opcode===8&&this._state==mn)return en();this._bufferedBytes+=Wt.length;this._buffers.push(Wt);this.startLoop(en)}consume(Wt){this._bufferedBytes-=Wt;if(Wt===this._buffers[0].length)return this._buffers.shift();if(Wt=en.length){Pt.set(this._buffers.shift(),tn)}else{Pt.set(new Uint8Array(en.buffer,en.byteOffset,Wt),tn);this._buffers[0]=en.slice(Wt)}Wt-=en.length}while(Wt>0);return Pt}startLoop(Wt){let Pt;this._loop=true;do{switch(this._state){case mn:Pt=this.getInfo();break;case bn:Pt=this.getPayloadLength16();break;case Gn:Pt=this.getPayloadLength64();break;case hn:this.getMask();break;case Zn:Pt=this.getData(Wt);break;default:this._loop=false;return}}while(this._loop);Wt(Pt)}getInfo(){if(this._bufferedBytes<2){this._loop=false;return}const Wt=this.consume(2);if((Wt[0]&48)!==0){this._loop=false;return error(RangeError,"RSV2 and RSV3 must be clear",true,1002)}const Pt=(Wt[0]&64)===64;if(Pt&&!this._extensions[nn.extensionName]){this._loop=false;return error(RangeError,"RSV1 must be clear",true,1002)}this._fin=(Wt[0]&128)===128;this._opcode=Wt[0]&15;this._payloadLength=Wt[1]&127;if(this._opcode===0){if(Pt){this._loop=false;return error(RangeError,"RSV1 must be clear",true,1002)}if(!this._fragmented){this._loop=false;return error(RangeError,"invalid opcode 0",true,1002)}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){this._loop=false;return error(RangeError,`invalid opcode ${this._opcode}`,true,1002)}this._compressed=Pt}else if(this._opcode>7&&this._opcode<11){if(!this._fin){this._loop=false;return error(RangeError,"FIN must be set",true,1002)}if(Pt){this._loop=false;return error(RangeError,"RSV1 must be clear",true,1002)}if(this._payloadLength>125){this._loop=false;return error(RangeError,`invalid payload length ${this._payloadLength}`,true,1002)}}else{this._loop=false;return error(RangeError,`invalid opcode ${this._opcode}`,true,1002)}if(!this._fin&&!this._fragmented)this._fragmented=this._opcode;this._masked=(Wt[1]&128)===128;if(this._isServer){if(!this._masked){this._loop=false;return error(RangeError,"MASK must be set",true,1002)}}else if(this._masked){this._loop=false;return error(RangeError,"MASK must be clear",true,1002)}if(this._payloadLength===126)this._state=bn;else if(this._payloadLength===127)this._state=Gn;else return this.haveLength()}getPayloadLength16(){if(this._bufferedBytes<2){this._loop=false;return}this._payloadLength=this.consume(2).readUInt16BE(0);return this.haveLength()}getPayloadLength64(){if(this._bufferedBytes<8){this._loop=false;return}const Wt=this.consume(8);const Pt=Wt.readUInt32BE(0);if(Pt>Math.pow(2,53-32)-1){this._loop=false;return error(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",false,1009)}this._payloadLength=Pt*Math.pow(2,32)+Wt.readUInt32BE(4);return this.haveLength()}haveLength(){if(this._payloadLength&&this._opcode<8){this._totalPayloadLength+=this._payloadLength;if(this._totalPayloadLength>this._maxPayload&&this._maxPayload>0){this._loop=false;return error(RangeError,"Max payload size exceeded",false,1009)}}if(this._masked)this._state=hn;else this._state=Zn}getMask(){if(this._bufferedBytes<4){this._loop=false;return}this._mask=this.consume(4);this._state=Zn}getData(Wt){let Pt=rn;if(this._payloadLength){if(this._bufferedBytes7)return this.controlMessage(Pt);if(this._compressed){this._state=An;this.decompress(Pt,Wt);return}if(Pt.length){this._messageLength=this._totalPayloadLength;this._fragments.push(Pt)}return this.dataMessage()}decompress(Wt,Pt){const en=this._extensions[nn.extensionName];en.decompress(Wt,this._fin,((Wt,en)=>{if(Wt)return Pt(Wt);if(en.length){this._messageLength+=en.length;if(this._messageLength>this._maxPayload&&this._maxPayload>0){return Pt(error(RangeError,"Max payload size exceeded",false,1009))}this._fragments.push(en)}const tn=this.dataMessage();if(tn)return Pt(tn);this.startLoop(Pt)}))}dataMessage(){if(this._fin){const Wt=this._messageLength;const Pt=this._fragments;this._totalPayloadLength=0;this._messageLength=0;this._fragmented=0;this._fragments=[];if(this._opcode===2){let en;if(this._binaryType==="nodebuffer"){en=on(Pt,Wt)}else if(this._binaryType==="arraybuffer"){en=cn(on(Pt,Wt))}else{en=Pt}this.emit("message",en)}else{const en=on(Pt,Wt);if(!pn(en)){this._loop=false;return error(Error,"invalid UTF-8 sequence",true,1007)}this.emit("message",en.toString())}}this._state=mn}controlMessage(Wt){if(this._opcode===8){this._loop=false;if(Wt.length===0){this.emit("conclude",1005,"");this.end()}else if(Wt.length===1){return error(RangeError,"invalid payload length 1",true,1002)}else{const Pt=Wt.readUInt16BE(0);if(!un(Pt)){return error(RangeError,`invalid status code ${Pt}`,true,1002)}const en=Wt.slice(2);if(!pn(en)){return error(Error,"invalid UTF-8 sequence",true,1007)}this.emit("conclude",Pt,en.toString());this.end()}}else if(this._opcode===9){this.emit("ping",Wt)}else{this.emit("pong",Wt)}this._state=mn}};Pt.exports=Wn;function error(Wt,Pt,en,tn){const nn=new Wt(en?`Invalid WebSocket frame: ${Pt}`:Pt);Error.captureStackTrace(nn,error);nn[In]=tn;return nn}}});var jr=__commonJS({"node_modules/ws/lib/sender.js"(Wt,Pt){"use strict";var{randomFillSync:tn}=en(76982);var nn=Qr();var{EMPTY_BUFFER:an}=ql();var{isValidStatusCode:rn}=Jr();var{mask:In,toBuffer:sn}=$l();var on=Buffer.alloc(4);var cn=class _Sender{constructor(Wt,Pt){this._extensions=Pt||{};this._socket=Wt;this._firstFragment=true;this._compress=false;this._bufferedBytes=0;this._deflating=false;this._queue=[]}static frame(Wt,Pt){const en=Pt.mask&&Pt.readOnly;let nn=Pt.mask?6:2;let an=Wt.length;if(Wt.length>=65536){nn+=8;an=127}else if(Wt.length>125){nn+=2;an=126}const rn=Buffer.allocUnsafe(en?Wt.length+nn:nn);rn[0]=Pt.fin?Pt.opcode|128:Pt.opcode;if(Pt.rsv1)rn[0]|=64;rn[1]=an;if(an===126){rn.writeUInt16BE(Wt.length,2)}else if(an===127){rn.writeUInt32BE(0,2);rn.writeUInt32BE(Wt.length,6)}if(!Pt.mask)return[rn,Wt];tn(on,0,4);rn[1]|=128;rn[nn-4]=on[0];rn[nn-3]=on[1];rn[nn-2]=on[2];rn[nn-1]=on[3];if(en){In(Wt,on,rn,nn,Wt.length);return[rn]}In(Wt,on,Wt,0,Wt.length);return[rn,Wt]}close(Wt,Pt,en,tn){let nn;if(Wt===void 0){nn=an}else if(typeof Wt!=="number"||!rn(Wt)){throw new TypeError("First argument must be a valid error code number")}else if(Pt===void 0||Pt===""){nn=Buffer.allocUnsafe(2);nn.writeUInt16BE(Wt,0)}else{const en=Buffer.byteLength(Pt);if(en>123){throw new RangeError("The message must not be greater than 123 bytes")}nn=Buffer.allocUnsafe(2+en);nn.writeUInt16BE(Wt,0);nn.write(Pt,2)}if(this._deflating){this.enqueue([this.doClose,nn,en,tn])}else{this.doClose(nn,en,tn)}}doClose(Wt,Pt,en){this.sendFrame(_Sender.frame(Wt,{fin:true,rsv1:false,opcode:8,mask:Pt,readOnly:false}),en)}ping(Wt,Pt,en){const tn=sn(Wt);if(tn.length>125){throw new RangeError("The data size must not be greater than 125 bytes")}if(this._deflating){this.enqueue([this.doPing,tn,Pt,sn.readOnly,en])}else{this.doPing(tn,Pt,sn.readOnly,en)}}doPing(Wt,Pt,en,tn){this.sendFrame(_Sender.frame(Wt,{fin:true,rsv1:false,opcode:9,mask:Pt,readOnly:en}),tn)}pong(Wt,Pt,en){const tn=sn(Wt);if(tn.length>125){throw new RangeError("The data size must not be greater than 125 bytes")}if(this._deflating){this.enqueue([this.doPong,tn,Pt,sn.readOnly,en])}else{this.doPong(tn,Pt,sn.readOnly,en)}}doPong(Wt,Pt,en,tn){this.sendFrame(_Sender.frame(Wt,{fin:true,rsv1:false,opcode:10,mask:Pt,readOnly:en}),tn)}send(Wt,Pt,en){const tn=sn(Wt);const an=this._extensions[nn.extensionName];let rn=Pt.binary?2:1;let In=Pt.compress;if(this._firstFragment){this._firstFragment=false;if(In&&an){In=tn.length>=an._threshold}this._compress=In}else{In=false;rn=0}if(Pt.fin)this._firstFragment=true;if(an){const Wt={fin:Pt.fin,rsv1:In,opcode:rn,mask:Pt.mask,readOnly:sn.readOnly};if(this._deflating){this.enqueue([this.dispatch,tn,this._compress,Wt,en])}else{this.dispatch(tn,this._compress,Wt,en)}}else{this.sendFrame(_Sender.frame(tn,{fin:Pt.fin,rsv1:false,opcode:rn,mask:Pt.mask,readOnly:sn.readOnly}),en)}}dispatch(Wt,Pt,en,tn){if(!Pt){this.sendFrame(_Sender.frame(Wt,en),tn);return}const an=this._extensions[nn.extensionName];this._bufferedBytes+=Wt.length;this._deflating=true;an.compress(Wt,en.fin,((Pt,nn)=>{if(this._socket.destroyed){const Wt=new Error("The socket was closed while data was being compressed");if(typeof tn==="function")tn(Wt);for(let Pt=0;Pt{let en=Wt[Pt];if(!Array.isArray(en))en=[en];return en.map((Wt=>[Pt].concat(Object.keys(Wt).map((Pt=>{let en=Wt[Pt];if(!Array.isArray(en))en=[en];return en.map((Wt=>Wt===true?Pt:`${Pt}=${Wt}`)).join("; ")}))).join("; "))).join(", ")})).join(", ")}Pt.exports={format:format,parse:parse}}});var uI=__commonJS({"node_modules/ws/lib/websocket.js"(Wt,Pt){"use strict";var tn=en(24434);var nn=en(65692);var an=en(58611);var rn=en(69278);var In=en(64756);var{randomBytes:sn,createHash:on}=en(76982);var{URL:cn}=en(87016);var dn=Qr();var un=zr();var pn=jr();var{BINARY_TYPES:mn,EMPTY_BUFFER:bn,GUID:Gn,kStatusCode:hn,kWebSocket:Zn,NOOP:An}=ql();var{addEventListener:Wn,removeEventListener:Nn}=$r();var{format:gn,parse:yn}=lI();var{toBuffer:vn}=$l();var Yn=["CONNECTING","OPEN","CLOSING","CLOSED"];var En=[8,13];var Vn=30*1e3;var Rn=class _WebSocket extends tn{constructor(Wt,Pt,en){super();this._binaryType=mn[0];this._closeCode=1006;this._closeFrameReceived=false;this._closeFrameSent=false;this._closeMessage="";this._closeTimer=null;this._extensions={};this._protocol="";this._readyState=_WebSocket.CONNECTING;this._receiver=null;this._sender=null;this._socket=null;if(Wt!==null){this._bufferedAmount=0;this._isServer=false;this._redirects=0;if(Array.isArray(Pt)){Pt=Pt.join(", ")}else if(typeof Pt==="object"&&Pt!==null){en=Pt;Pt=void 0}initAsClient(this,Wt,Pt,en)}else{this._isServer=true}}get binaryType(){return this._binaryType}set binaryType(Wt){if(!mn.includes(Wt))return;this._binaryType=Wt;if(this._receiver)this._receiver._binaryType=Wt}get bufferedAmount(){if(!this._socket)return this._bufferedAmount;return this._socket._writableState.length+this._sender._bufferedBytes}get extensions(){return Object.keys(this._extensions).join()}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(Wt,Pt,en){const tn=new un(this.binaryType,this._extensions,this._isServer,en);this._sender=new pn(Wt,this._extensions);this._receiver=tn;this._socket=Wt;tn[Zn]=this;Wt[Zn]=this;tn.on("conclude",receiverOnConclude);tn.on("drain",receiverOnDrain);tn.on("error",receiverOnError);tn.on("message",receiverOnMessage);tn.on("ping",receiverOnPing);tn.on("pong",receiverOnPong);Wt.setTimeout(0);Wt.setNoDelay();if(Pt.length>0)Wt.unshift(Pt);Wt.on("close",socketOnClose);Wt.on("data",socketOnData);Wt.on("end",socketOnEnd);Wt.on("error",socketOnError);this._readyState=_WebSocket.OPEN;this.emit("open")}emitClose(){if(!this._socket){this._readyState=_WebSocket.CLOSED;this.emit("close",this._closeCode,this._closeMessage);return}if(this._extensions[dn.extensionName]){this._extensions[dn.extensionName].cleanup()}this._receiver.removeAllListeners();this._readyState=_WebSocket.CLOSED;this.emit("close",this._closeCode,this._closeMessage)}close(Wt,Pt){if(this.readyState===_WebSocket.CLOSED)return;if(this.readyState===_WebSocket.CONNECTING){const Wt="WebSocket was closed before the connection was established";return abortHandshake(this,this._req,Wt)}if(this.readyState===_WebSocket.CLOSING){if(this._closeFrameSent&&this._closeFrameReceived)this._socket.end();return}this._readyState=_WebSocket.CLOSING;this._sender.close(Wt,Pt,!this._isServer,(Wt=>{if(Wt)return;this._closeFrameSent=true;if(this._closeFrameReceived)this._socket.end()}));this._closeTimer=setTimeout(this._socket.destroy.bind(this._socket),Vn)}ping(Wt,Pt,en){if(this.readyState===_WebSocket.CONNECTING){throw new Error("WebSocket is not open: readyState 0 (CONNECTING)")}if(typeof Wt==="function"){en=Wt;Wt=Pt=void 0}else if(typeof Pt==="function"){en=Pt;Pt=void 0}if(typeof Wt==="number")Wt=Wt.toString();if(this.readyState!==_WebSocket.OPEN){sendAfterClose(this,Wt,en);return}if(Pt===void 0)Pt=!this._isServer;this._sender.ping(Wt||bn,Pt,en)}pong(Wt,Pt,en){if(this.readyState===_WebSocket.CONNECTING){throw new Error("WebSocket is not open: readyState 0 (CONNECTING)")}if(typeof Wt==="function"){en=Wt;Wt=Pt=void 0}else if(typeof Pt==="function"){en=Pt;Pt=void 0}if(typeof Wt==="number")Wt=Wt.toString();if(this.readyState!==_WebSocket.OPEN){sendAfterClose(this,Wt,en);return}if(Pt===void 0)Pt=!this._isServer;this._sender.pong(Wt||bn,Pt,en)}send(Wt,Pt,en){if(this.readyState===_WebSocket.CONNECTING){throw new Error("WebSocket is not open: readyState 0 (CONNECTING)")}if(typeof Pt==="function"){en=Pt;Pt={}}if(typeof Wt==="number")Wt=Wt.toString();if(this.readyState!==_WebSocket.OPEN){sendAfterClose(this,Wt,en);return}const tn={binary:typeof Wt!=="string",mask:!this._isServer,compress:true,fin:true,...Pt};if(!this._extensions[dn.extensionName]){tn.compress=false}this._sender.send(Wt||bn,tn,en)}terminate(){if(this.readyState===_WebSocket.CLOSED)return;if(this.readyState===_WebSocket.CONNECTING){const Wt="WebSocket was closed before the connection was established";return abortHandshake(this,this._req,Wt)}if(this._socket){this._readyState=_WebSocket.CLOSING;this._socket.destroy()}}};Yn.forEach(((Wt,Pt)=>{const en={enumerable:true,value:Pt};Object.defineProperty(Rn.prototype,Wt,en);Object.defineProperty(Rn,Wt,en)}));["binaryType","bufferedAmount","extensions","protocol","readyState","url"].forEach((Wt=>{Object.defineProperty(Rn.prototype,Wt,{enumerable:true})}));["open","error","close","message"].forEach((Wt=>{Object.defineProperty(Rn.prototype,`on${Wt}`,{configurable:true,enumerable:true,get(){const Pt=this.listeners(Wt);for(let Wt=0;Wt{abortHandshake(Wt,An,"Opening handshake has timed out")}))}An.on("error",(Pt=>{if(An===null||An.aborted)return;An=Wt._req=null;Wt._readyState=Rn.CLOSING;Wt.emit("error",Pt);Wt.emitClose()}));An.on("response",(nn=>{const an=nn.headers.location;const In=nn.statusCode;if(an&&rn.followRedirects&&In>=300&&In<400){if(++Wt._redirects>rn.maxRedirects){abortHandshake(Wt,An,"Maximum redirects exceeded");return}An.abort();const nn=new cn(an,Pt);initAsClient(Wt,nn,en,tn)}else if(!Wt.emit("unexpected-response",An,nn)){abortHandshake(Wt,An,`Unexpected server response: ${nn.statusCode}`)}}));An.on("upgrade",((Pt,tn,nn)=>{Wt.emit("upgrade",Pt);if(Wt.readyState!==Rn.CONNECTING)return;An=Wt._req=null;const an=on("sha1").update(bn+Gn).digest("base64");if(Pt.headers["sec-websocket-accept"]!==an){abortHandshake(Wt,tn,"Invalid Sec-WebSocket-Accept header");return}const In=Pt.headers["sec-websocket-protocol"];const sn=(en||"").split(/, */);let cn;if(!en&&In){cn="Server sent a subprotocol but none was requested"}else if(en&&!In){cn="Server sent no subprotocol"}else if(In&&!sn.includes(In)){cn="Server sent an invalid subprotocol"}if(cn){abortHandshake(Wt,tn,cn);return}if(In)Wt._protocol=In;if(Zn){try{const en=yn(Pt.headers["sec-websocket-extensions"]);if(en[dn.extensionName]){Zn.accept(en[dn.extensionName]);Wt._extensions[dn.extensionName]=Zn}}catch(Pt){abortHandshake(Wt,tn,"Invalid Sec-WebSocket-Extensions header");return}}Wt.setSocket(tn,nn,rn.maxPayload)}))}function netConnect(Wt){Wt.path=Wt.socketPath;return rn.connect(Wt)}function tlsConnect(Wt){Wt.path=void 0;if(!Wt.servername&&Wt.servername!==""){Wt.servername=rn.isIP(Wt.host)?"":Wt.host}return In.connect(Wt)}function abortHandshake(Wt,Pt,en){Wt._readyState=Rn.CLOSING;const tn=new Error(en);Error.captureStackTrace(tn,abortHandshake);if(Pt.setHeader){Pt.abort();if(Pt.socket&&!Pt.socket.destroyed){Pt.socket.destroy()}Pt.once("abort",Wt.emitClose.bind(Wt));Wt.emit("error",tn)}else{Pt.destroy(tn);Pt.once("error",Wt.emit.bind(Wt,"error"));Pt.once("close",Wt.emitClose.bind(Wt))}}function sendAfterClose(Wt,Pt,en){if(Pt){const en=vn(Pt).length;if(Wt._socket)Wt._sender._bufferedBytes+=en;else Wt._bufferedAmount+=en}if(en){const Pt=new Error(`WebSocket is not open: readyState ${Wt.readyState} (${Yn[Wt.readyState]})`);en(Pt)}}function receiverOnConclude(Wt,Pt){const en=this[Zn];en._socket.removeListener("data",socketOnData);en._socket.resume();en._closeFrameReceived=true;en._closeMessage=Pt;en._closeCode=Wt;if(Wt===1005)en.close();else en.close(Wt,Pt)}function receiverOnDrain(){this[Zn]._socket.resume()}function receiverOnError(Wt){const Pt=this[Zn];Pt._socket.removeListener("data",socketOnData);Pt._readyState=Rn.CLOSING;Pt._closeCode=Wt[hn];Pt.emit("error",Wt);Pt._socket.destroy()}function receiverOnFinish(){this[Zn].emitClose()}function receiverOnMessage(Wt){this[Zn].emit("message",Wt)}function receiverOnPing(Wt){const Pt=this[Zn];Pt.pong(Wt,!Pt._isServer,An);Pt.emit("ping",Wt)}function receiverOnPong(Wt){this[Zn].emit("pong",Wt)}function socketOnClose(){const Wt=this[Zn];this.removeListener("close",socketOnClose);this.removeListener("end",socketOnEnd);Wt._readyState=Rn.CLOSING;Wt._socket.read();Wt._receiver.end();this.removeListener("data",socketOnData);this[Zn]=void 0;clearTimeout(Wt._closeTimer);if(Wt._receiver._writableState.finished||Wt._receiver._writableState.errorEmitted){Wt.emitClose()}else{Wt._receiver.on("error",receiverOnFinish);Wt._receiver.on("finish",receiverOnFinish)}}function socketOnData(Wt){if(!this[Zn]._receiver.write(Wt)){this.pause()}}function socketOnEnd(){const Wt=this[Zn];Wt._readyState=Rn.CLOSING;Wt._receiver.end();this.end()}function socketOnError(){const Wt=this[Zn];this.removeListener("error",socketOnError);this.on("error",An);if(Wt){Wt._readyState=Rn.CLOSING;this.destroy()}}}});var mI=__commonJS({"node_modules/ws/lib/stream.js"(Wt,Pt){"use strict";var{Duplex:tn}=en(2203);function emitClose(Wt){Wt.emit("close")}function duplexOnEnd(){if(!this.destroyed&&this._writableState.finished){this.destroy()}}function duplexOnError(Wt){this.removeListener("error",duplexOnError);this.destroy();if(this.listenerCount("error")===0){this.emit("error",Wt)}}function createWebSocketStream(Wt,Pt){let en=true;function receiverOnDrain(){if(en)Wt._socket.resume()}if(Wt.readyState===Wt.CONNECTING){Wt.once("open",(function open(){Wt._receiver.removeAllListeners("drain");Wt._receiver.on("drain",receiverOnDrain)}))}else{Wt._receiver.removeAllListeners("drain");Wt._receiver.on("drain",receiverOnDrain)}const nn=new tn({...Pt,autoDestroy:false,emitClose:false,objectMode:false,writableObjectMode:false});Wt.on("message",(function message(Pt){if(!nn.push(Pt)){en=false;Wt._socket.pause()}}));Wt.once("error",(function error(Wt){if(nn.destroyed)return;nn.destroy(Wt)}));Wt.once("close",(function close(){if(nn.destroyed)return;nn.push(null)}));nn._destroy=function(Pt,en){if(Wt.readyState===Wt.CLOSED){en(Pt);process.nextTick(emitClose,nn);return}let tn=false;Wt.once("error",(function error(Wt){tn=true;en(Wt)}));Wt.once("close",(function close(){if(!tn)en(Pt);process.nextTick(emitClose,nn)}));Wt.terminate()};nn._final=function(Pt){if(Wt.readyState===Wt.CONNECTING){Wt.once("open",(function open(){nn._final(Pt)}));return}if(Wt._socket===null)return;if(Wt._socket._writableState.finished){Pt();if(nn._readableState.endEmitted)nn.destroy()}else{Wt._socket.once("finish",(function finish(){Pt()}));Wt.close()}};nn._read=function(){if(Wt.readyState===Wt.OPEN&&!en){en=true;if(!Wt._receiver._writableState.needDrain)Wt._socket.resume()}};nn._write=function(Pt,en,tn){if(Wt.readyState===Wt.CONNECTING){Wt.once("open",(function open(){nn._write(Pt,en,tn)}));return}Wt.send(Pt,tn)};nn.on("end",duplexOnEnd);nn.on("error",duplexOnError);return nn}Pt.exports=createWebSocketStream}});var ZI=__commonJS({"node_modules/ws/lib/websocket-server.js"(Wt,Pt){"use strict";var tn=en(24434);var{createHash:nn}=en(76982);var{createServer:an,STATUS_CODES:rn}=en(58611);var In=Qr();var sn=uI();var{format:on,parse:cn}=lI();var{GUID:dn,kWebSocket:un}=ql();var pn=/^[+/0-9A-Za-z]{22}==$/;var mn=class extends tn{constructor(Wt,Pt){super();Wt={maxPayload:100*1024*1024,perMessageDeflate:false,handleProtocols:null,clientTracking:true,verifyClient:null,noServer:false,backlog:null,server:null,host:null,path:null,port:null,...Wt};if(Wt.port==null&&!Wt.server&&!Wt.noServer){throw new TypeError('One of the "port", "server", or "noServer" options must be specified')}if(Wt.port!=null){this._server=an(((Wt,Pt)=>{const en=rn[426];Pt.writeHead(426,{"Content-Length":en.length,"Content-Type":"text/plain"});Pt.end(en)}));this._server.listen(Wt.port,Wt.host,Wt.backlog,Pt)}else if(Wt.server){this._server=Wt.server}if(this._server){const Wt=this.emit.bind(this,"connection");this._removeListeners=addListeners(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(Pt,en,tn)=>{this.handleUpgrade(Pt,en,tn,Wt)}})}if(Wt.perMessageDeflate===true)Wt.perMessageDeflate={};if(Wt.clientTracking)this.clients=new Set;this.options=Wt}address(){if(this.options.noServer){throw new Error('The server is operating in "noServer" mode')}if(!this._server)return null;return this._server.address()}close(Wt){if(Wt)this.once("close",Wt);if(this.clients){for(const Wt of this.clients)Wt.terminate()}const Pt=this._server;if(Pt){this._removeListeners();this._removeListeners=this._server=null;if(this.options.port!=null){Pt.close((()=>this.emit("close")));return}}process.nextTick(emitClose,this)}shouldHandle(Wt){if(this.options.path){const Pt=Wt.url.indexOf("?");const en=Pt!==-1?Wt.url.slice(0,Pt):Wt.url;if(en!==this.options.path)return false}return true}handleUpgrade(Wt,Pt,en,tn){Pt.on("error",socketOnError);const nn=Wt.headers["sec-websocket-key"]!==void 0?Wt.headers["sec-websocket-key"].trim():false;const an=+Wt.headers["sec-websocket-version"];const rn={};if(Wt.method!=="GET"||Wt.headers.upgrade.toLowerCase()!=="websocket"||!nn||!pn.test(nn)||an!==8&&an!==13||!this.shouldHandle(Wt)){return abortHandshake(Pt,400)}if(this.options.perMessageDeflate){const en=new In(this.options.perMessageDeflate,true,this.options.maxPayload);try{const Pt=cn(Wt.headers["sec-websocket-extensions"]);if(Pt[In.extensionName]){en.accept(Pt[In.extensionName]);rn[In.extensionName]=en}}catch(Wt){return abortHandshake(Pt,400)}}if(this.options.verifyClient){const In={origin:Wt.headers[`${an===8?"sec-websocket-origin":"origin"}`],secure:!!(Wt.socket.authorized||Wt.socket.encrypted),req:Wt};if(this.options.verifyClient.length===2){this.options.verifyClient(In,((an,In,sn,on)=>{if(!an){return abortHandshake(Pt,In||401,sn,on)}this.completeUpgrade(nn,rn,Wt,Pt,en,tn)}));return}if(!this.options.verifyClient(In))return abortHandshake(Pt,401)}this.completeUpgrade(nn,rn,Wt,Pt,en,tn)}completeUpgrade(Wt,Pt,en,tn,an,rn){if(!tn.readable||!tn.writable)return tn.destroy();if(tn[un]){throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration")}const cn=nn("sha1").update(Wt+dn).digest("base64");const pn=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${cn}`];const mn=new sn(null);let bn=en.headers["sec-websocket-protocol"];if(bn){bn=bn.split(",").map(trim2);if(this.options.handleProtocols){bn=this.options.handleProtocols(bn,en)}else{bn=bn[0]}if(bn){pn.push(`Sec-WebSocket-Protocol: ${bn}`);mn._protocol=bn}}if(Pt[In.extensionName]){const Wt=Pt[In.extensionName].params;const en=on({[In.extensionName]:[Wt]});pn.push(`Sec-WebSocket-Extensions: ${en}`);mn._extensions=Pt}this.emit("headers",pn,en);tn.write(pn.concat("\r\n").join("\r\n"));tn.removeListener("error",socketOnError);mn.setSocket(tn,an,this.options.maxPayload);if(this.clients){this.clients.add(mn);mn.on("close",(()=>this.clients.delete(mn)))}rn(mn,en)}};Pt.exports=mn;function addListeners(Wt,Pt){for(const en of Object.keys(Pt))Wt.on(en,Pt[en]);return function removeListeners(){for(const en of Object.keys(Pt)){Wt.removeListener(en,Pt[en])}}}function emitClose(Wt){Wt.emit("close")}function socketOnError(){this.destroy()}function abortHandshake(Wt,Pt,en,tn){if(Wt.writable){en=en||rn[Pt];tn={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(en),...tn};Wt.write(`HTTP/1.1 ${Pt} ${rn[Pt]}\r\n`+Object.keys(tn).map((Wt=>`${Wt}: ${tn[Wt]}`)).join("\r\n")+"\r\n\r\n"+en)}Wt.removeListener("error",socketOnError);Wt.destroy()}function trim2(Wt){return Wt.trim()}}});var WI=__commonJS({"node_modules/ws/index.js"(Wt,Pt){"use strict";var en=uI();en.createWebSocketStream=mI();en.Server=ZI();en.Receiver=zr();en.Sender=jr();Pt.exports=en}});var vI=__commonJS({"node_modules/@ethersproject/providers/lib/ws.js"(Wt){"use strict";var Pt=Wt&&Wt.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Wt,"__esModule",{value:true});Wt.WebSocket=void 0;var en=Pt(WI());Wt.WebSocket=en.default}});var VI=__commonJS({"node_modules/@ethersproject/providers/lib/websocket-provider.js"(Wt){"use strict";var Pt=Wt&&Wt.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();var en=Wt&&Wt.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var tn=Wt&&Wt.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]=0){Pt.throttleRetry=true}throw Pt}return Wt.result}function getJsonResult(Wt){if(Wt&&Wt.status==0&&Wt.message=="NOTOK"&&(Wt.result||"").toLowerCase().indexOf("rate limit")>=0){var Pt=new Error("throttled response");Pt.result=JSON.stringify(Wt);Pt.throttleRetry=true;throw Pt}if(Wt.jsonrpc!="2.0"){var Pt=new Error("invalid response");Pt.result=JSON.stringify(Wt);throw Pt}if(Wt.error){var Pt=new Error(Wt.error.message||"unknown error");if(Wt.error.code){Pt.code=Wt.error.code}if(Wt.error.data){Pt.data=Wt.error.data}throw Pt}return Wt.result}function checkLogTag(Wt){if(Wt==="pending"){throw new Error("pending not supported")}if(Wt==="latest"){return Wt}return parseInt(Wt.substring(2),16)}function checkError(Wt,Pt,en){if(Wt==="call"&&Pt.code===on.Logger.errors.SERVER_ERROR){var tn=Pt.error;if(tn&&(tn.message.match(/reverted/i)||tn.message.match(/VM execution error/i))){var an=tn.data;if(an){an="0x"+an.replace(/^.*0x/i,"")}if((0,nn.isHexString)(an)){return an}un.throwError("missing revert data in call exception",on.Logger.errors.CALL_EXCEPTION,{error:Pt,data:"0x"})}}var rn=Pt.message;if(Pt.code===on.Logger.errors.SERVER_ERROR){if(Pt.error&&typeof Pt.error.message==="string"){rn=Pt.error.message}else if(typeof Pt.body==="string"){rn=Pt.body}else if(typeof Pt.responseText==="string"){rn=Pt.responseText}}rn=(rn||"").toLowerCase();if(rn.match(/insufficient funds/)){un.throwError("insufficient funds for intrinsic transaction cost",on.Logger.errors.INSUFFICIENT_FUNDS,{error:Pt,method:Wt,transaction:en})}if(rn.match(/same hash was already imported|transaction nonce is too low|nonce too low/)){un.throwError("nonce has already been used",on.Logger.errors.NONCE_EXPIRED,{error:Pt,method:Wt,transaction:en})}if(rn.match(/another transaction with same nonce/)){un.throwError("replacement fee too low",on.Logger.errors.REPLACEMENT_UNDERPRICED,{error:Pt,method:Wt,transaction:en})}if(rn.match(/execution failed due to an exception|execution reverted/)){un.throwError("cannot estimate gas; transaction may fail or may require manual gas limit",on.Logger.errors.UNPREDICTABLE_GAS_LIMIT,{error:Pt,method:Wt,transaction:en})}throw Pt}var bn=function(Wt){Pt(EtherscanProvider2,Wt);function EtherscanProvider2(Pt,en){var tn=Wt.call(this,Pt)||this;(0,an.defineReadOnly)(tn,"baseUrl",tn.getBaseUrl());(0,an.defineReadOnly)(tn,"apiKey",en||null);return tn}EtherscanProvider2.prototype.getBaseUrl=function(){switch(this.network?this.network.name:"invalid"){case"homestead":return"https://api.etherscan.io";case"goerli":return"https://api-goerli.etherscan.io";case"sepolia":return"https://api-sepolia.etherscan.io";case"matic":return"https://api.polygonscan.com";case"maticmum":return"https://api-testnet.polygonscan.com";case"arbitrum":return"https://api.arbiscan.io";case"arbitrum-goerli":return"https://api-goerli.arbiscan.io";case"optimism":return"https://api-optimistic.etherscan.io";case"optimism-goerli":return"https://api-goerli-optimistic.etherscan.io";default:}return un.throwArgumentError("unsupported network","network",this.network.name)};EtherscanProvider2.prototype.getUrl=function(Wt,Pt){var en=Object.keys(Pt).reduce((function(Wt,en){var tn=Pt[en];if(tn!=null){Wt+="&"+en+"="+tn}return Wt}),"");var tn=this.apiKey?"&apikey="+this.apiKey:"";return this.baseUrl+"/api?module="+Wt+en+tn};EtherscanProvider2.prototype.getPostUrl=function(){return this.baseUrl+"/api"};EtherscanProvider2.prototype.getPostData=function(Wt,Pt){Pt.module=Wt;Pt.apikey=this.apiKey;return Pt};EtherscanProvider2.prototype.fetch=function(Wt,Pt,nn){return en(this,void 0,void 0,(function(){var en,rn,on,cn,dn,un;var pn=this;return tn(this,(function(tn){switch(tn.label){case 0:en=nn?this.getPostUrl():this.getUrl(Wt,Pt);rn=nn?this.getPostData(Wt,Pt):null;on=Wt==="proxy"?getJsonResult:getResult;this.emit("debug",{action:"request",request:en,provider:this});cn={url:en,throttleSlotInterval:1e3,throttleCallback:function(Wt,Pt){if(pn.isCommunityResource()){(0,sn.showThrottleMessage)()}return Promise.resolve(true)}};dn=null;if(rn){cn.headers={"content-type":"application/x-www-form-urlencoded; charset=UTF-8"};dn=Object.keys(rn).map((function(Wt){return Wt+"="+rn[Wt]})).join("&")}return[4,(0,In.fetchJson)(cn,dn,on||getJsonResult)];case 1:un=tn.sent();this.emit("debug",{action:"response",request:en,response:(0,an.deepCopy)(un),provider:this});return[2,un]}}))}))};EtherscanProvider2.prototype.detectNetwork=function(){return en(this,void 0,void 0,(function(){return tn(this,(function(Wt){return[2,this.network]}))}))};EtherscanProvider2.prototype.perform=function(Pt,nn){return en(this,void 0,void 0,(function(){var en,an,rn,an,In,sn,cn,dn,pn,mn,bn,Gn,hn;return tn(this,(function(tn){switch(tn.label){case 0:en=Pt;switch(en){case"getBlockNumber":return[3,1];case"getGasPrice":return[3,2];case"getBalance":return[3,3];case"getTransactionCount":return[3,4];case"getCode":return[3,5];case"getStorageAt":return[3,6];case"sendTransaction":return[3,7];case"getBlock":return[3,8];case"getTransaction":return[3,9];case"getTransactionReceipt":return[3,10];case"call":return[3,11];case"estimateGas":return[3,15];case"getLogs":return[3,19];case"getEtherPrice":return[3,26]}return[3,28];case 1:return[2,this.fetch("proxy",{action:"eth_blockNumber"})];case 2:return[2,this.fetch("proxy",{action:"eth_gasPrice"})];case 3:return[2,this.fetch("account",{action:"balance",address:nn.address,tag:nn.blockTag})];case 4:return[2,this.fetch("proxy",{action:"eth_getTransactionCount",address:nn.address,tag:nn.blockTag})];case 5:return[2,this.fetch("proxy",{action:"eth_getCode",address:nn.address,tag:nn.blockTag})];case 6:return[2,this.fetch("proxy",{action:"eth_getStorageAt",address:nn.address,position:nn.position,tag:nn.blockTag})];case 7:return[2,this.fetch("proxy",{action:"eth_sendRawTransaction",hex:nn.signedTransaction},true).catch((function(Wt){return checkError("sendTransaction",Wt,nn.signedTransaction)}))];case 8:if(nn.blockTag){return[2,this.fetch("proxy",{action:"eth_getBlockByNumber",tag:nn.blockTag,boolean:nn.includeTransactions?"true":"false"})]}throw new Error("getBlock by blockHash not implemented");case 9:return[2,this.fetch("proxy",{action:"eth_getTransactionByHash",txhash:nn.transactionHash})];case 10:return[2,this.fetch("proxy",{action:"eth_getTransactionReceipt",txhash:nn.transactionHash})];case 11:if(nn.blockTag!=="latest"){throw new Error("EtherscanProvider does not support blockTag for call")}an=getTransactionPostData(nn.transaction);an.module="proxy";an.action="eth_call";tn.label=12;case 12:tn.trys.push([12,14,,15]);return[4,this.fetch("proxy",an,true)];case 13:return[2,tn.sent()];case 14:rn=tn.sent();return[2,checkError("call",rn,nn.transaction)];case 15:an=getTransactionPostData(nn.transaction);an.module="proxy";an.action="eth_estimateGas";tn.label=16;case 16:tn.trys.push([16,18,,19]);return[4,this.fetch("proxy",an,true)];case 17:return[2,tn.sent()];case 18:In=tn.sent();return[2,checkError("estimateGas",In,nn.transaction)];case 19:sn={action:"getLogs"};if(nn.filter.fromBlock){sn.fromBlock=checkLogTag(nn.filter.fromBlock)}if(nn.filter.toBlock){sn.toBlock=checkLogTag(nn.filter.toBlock)}if(nn.filter.address){sn.address=nn.filter.address}if(nn.filter.topics&&nn.filter.topics.length>0){if(nn.filter.topics.length>1){un.throwError("unsupported topic count",on.Logger.errors.UNSUPPORTED_OPERATION,{topics:nn.filter.topics})}if(nn.filter.topics.length===1){cn=nn.filter.topics[0];if(typeof cn!=="string"||cn.length!==66){un.throwError("unsupported topic format",on.Logger.errors.UNSUPPORTED_OPERATION,{topic0:cn})}sn.topic0=cn}}return[4,this.fetch("logs",sn)];case 20:dn=tn.sent();pn={};mn=0;tn.label=21;case 21:if(!(mn0;Pt--){var en=Math.floor(Math.random()*(Pt+1));var tn=Wt[Pt];Wt[Pt]=Wt[en];Wt[en]=tn}return Wt}Wt.shuffled=shuffled}});var PI=__commonJS({"node_modules/@ethersproject/random/lib/index.js"(Wt){"use strict";Object.defineProperty(Wt,"__esModule",{value:true});Wt.shuffled=Wt.randomBytes=void 0;var Pt=zI();Object.defineProperty(Wt,"randomBytes",{enumerable:true,get:function(){return Pt.randomBytes}});var en=jI();Object.defineProperty(Wt,"shuffled",{enumerable:true,get:function(){return en.shuffled}})}});var qI=__commonJS({"node_modules/@ethersproject/providers/lib/fallback-provider.js"(Wt){"use strict";var Pt=Wt&&Wt.__extends||function(){var extendStatics=function(Wt,Pt){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Wt,Pt){Wt.__proto__=Pt}||function(Wt,Pt){for(var en in Pt)if(Object.prototype.hasOwnProperty.call(Pt,en))Wt[en]=Pt[en]};return extendStatics(Wt,Pt)};return function(Wt,Pt){if(typeof Pt!=="function"&&Pt!==null)throw new TypeError("Class extends value "+String(Pt)+" is not a constructor or null");extendStatics(Wt,Pt);function __(){this.constructor=Wt}Wt.prototype=Pt===null?Object.create(Pt):(__.prototype=Pt.prototype,new __)}}();var en=Wt&&Wt.__awaiter||function(Wt,Pt,en,tn){function adopt(Wt){return Wt instanceof en?Wt:new en((function(Pt){Pt(Wt)}))}return new(en||(en=Promise))((function(en,nn){function fulfilled(Wt){try{step(tn.next(Wt))}catch(Wt){nn(Wt)}}function rejected(Wt){try{step(tn["throw"](Wt))}catch(Wt){nn(Wt)}}function step(Wt){Wt.done?en(Wt.value):adopt(Wt.value).then(fulfilled,rejected)}step((tn=tn.apply(Wt,Pt||[])).next())}))};var tn=Wt&&Wt.__generator||function(Wt,Pt){var en={label:0,sent:function(){if(an[0]&1)throw an[1];return an[1]},trys:[],ops:[]},tn,nn,an,rn;return rn={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(rn[Symbol.iterator]=function(){return this}),rn;function verb(Wt){return function(Pt){return step([Wt,Pt])}}function step(rn){if(tn)throw new TypeError("Generator is already executing.");while(en)try{if(tn=1,nn&&(an=rn[0]&2?nn["return"]:rn[0]?nn["throw"]||((an=nn["return"])&&an.call(nn),0):nn.next)&&!(an=an.call(nn,rn[1])).done)return an;if(nn=0,an)rn=[rn[0]&2,an.value];switch(rn[0]){case 0:case 1:an=rn;break;case 4:en.label++;return{value:rn[1],done:false};case 5:en.label++;nn=rn[1];rn=[0];continue;case 7:rn=en.ops.pop();en.trys.pop();continue;default:if(!(an=en.trys,an=an.length>0&&an[an.length-1])&&(rn[0]===6||rn[0]===2)){en=0;continue}if(rn[0]===3&&(!an||rn[1]>an[0]&&rn[1]Pt){return null}return(tn+nn)/2}function serialize(Wt){if(Wt===null){return"null"}else if(typeof Wt==="number"||typeof Wt==="boolean"){return JSON.stringify(Wt)}else if(typeof Wt==="string"){return Wt}else if(an.BigNumber.isBigNumber(Wt)){return Wt.toString()}else if(Array.isArray(Wt)){return JSON.stringify(Wt.map((function(Wt){return serialize(Wt)})))}else if(typeof Wt==="object"){var Pt=Object.keys(Wt);Pt.sort();return"{"+Pt.map((function(Pt){var en=Wt[Pt];if(typeof en==="function"){en="[function]"}else{en=serialize(en)}return JSON.stringify(Pt)+":"+en})).join(",")+"}"}throw new Error("unknown value type: "+typeof Wt)}var Zn=1;function stall(Wt){var Pt=null;var en=null;var tn=new Promise((function(tn){Pt=function(){if(en){clearTimeout(en);en=null}tn()};en=setTimeout(Pt,Wt)}));var wait=function(Wt){tn=tn.then(Wt);return tn};function getPromise(){return tn}return{cancel:Pt,getPromise:getPromise,wait:wait}}var Wn=[mn.Logger.errors.CALL_EXCEPTION,mn.Logger.errors.INSUFFICIENT_FUNDS,mn.Logger.errors.NONCE_EXPIRED,mn.Logger.errors.REPLACEMENT_UNDERPRICED,mn.Logger.errors.UNPREDICTABLE_GAS_LIMIT];var gn=["address","args","errorArgs","errorSignature","method","transaction"];function exposeDebugConfig(Wt,Pt){var en={weight:Wt.weight};Object.defineProperty(en,"provider",{get:function(){return Wt.provider}});if(Wt.start){en.start=Wt.start}if(Pt){en.duration=Pt-Wt.start}if(Wt.done){if(Wt.error){en.error=Wt.error}else{en.result=Wt.result||null}}return en}function normalizedTally(Wt,Pt){return function(en){var tn={};en.forEach((function(Pt){var en=Wt(Pt.result);if(!tn[en]){tn[en]={count:0,result:Pt.result}}tn[en].count++}));var nn=Object.keys(tn);for(var an=0;an=Pt){return rn.result}}return void 0}}function getProcessFunc(Wt,Pt,en){var tn=serialize;switch(Pt){case"getBlockNumber":return function(Pt){var en=Pt.map((function(Wt){return Wt.result}));var tn=median(Pt.map((function(Wt){return Wt.result})),2);if(tn==null){return void 0}tn=Math.ceil(tn);if(en.indexOf(tn+1)>=0){tn++}if(tn>=Wt._highestBlockNumber){Wt._highestBlockNumber=tn}return Wt._highestBlockNumber};case"getGasPrice":return function(Wt){var Pt=Wt.map((function(Wt){return Wt.result}));Pt.sort();return Pt[Math.floor(Pt.length/2)]};case"getEtherPrice":return function(Wt){return median(Wt.map((function(Wt){return Wt.result})))};case"getBalance":case"getTransactionCount":case"getCode":case"getStorageAt":case"call":case"estimateGas":case"getLogs":break;case"getTransaction":case"getTransactionReceipt":tn=function(Wt){if(Wt==null){return null}Wt=(0,In.shallowCopy)(Wt);Wt.confirmations=-1;return serialize(Wt)};break;case"getBlock":if(en.includeTransactions){tn=function(Wt){if(Wt==null){return null}Wt=(0,In.shallowCopy)(Wt);Wt.transactions=Wt.transactions.map((function(Wt){Wt=(0,In.shallowCopy)(Wt);Wt.confirmations=-1;return Wt}));return serialize(Wt)}}else{tn=function(Wt){if(Wt==null){return null}return serialize(Wt)}}break;default:throw new Error("unknown method: "+Pt)}return normalizedTally(tn,Wt.quorum)}function waitForSync(Wt,Pt){return en(this,void 0,void 0,(function(){var en;return tn(this,(function(tn){en=Wt.provider;if(en.blockNumber!=null&&en.blockNumber>=Pt||Pt===-1){return[2,en]}return[2,(0,on.poll)((function(){return new Promise((function(tn,nn){setTimeout((function(){if(en.blockNumber>=Pt){return tn(en)}if(Wt.cancelled){return tn(null)}return tn(void 0)}),0)}))}),{oncePoll:en})]}))}))}function getRunner(Wt,Pt,nn,an){return en(this,void 0,void 0,(function(){var en,In,sn;return tn(this,(function(tn){switch(tn.label){case 0:en=Wt.provider;In=nn;switch(In){case"getBlockNumber":return[3,1];case"getGasPrice":return[3,1];case"getEtherPrice":return[3,2];case"getBalance":return[3,3];case"getTransactionCount":return[3,3];case"getCode":return[3,3];case"getStorageAt":return[3,6];case"getBlock":return[3,9];case"call":return[3,12];case"estimateGas":return[3,12];case"getTransaction":return[3,15];case"getTransactionReceipt":return[3,15];case"getLogs":return[3,16]}return[3,19];case 1:return[2,en[nn]()];case 2:if(en.getEtherPrice){return[2,en.getEtherPrice()]}return[3,19];case 3:if(!(an.blockTag&&(0,rn.isHexString)(an.blockTag)))return[3,5];return[4,waitForSync(Wt,Pt)];case 4:en=tn.sent();tn.label=5;case 5:return[2,en[nn](an.address,an.blockTag||"latest")];case 6:if(!(an.blockTag&&(0,rn.isHexString)(an.blockTag)))return[3,8];return[4,waitForSync(Wt,Pt)];case 7:en=tn.sent();tn.label=8;case 8:return[2,en.getStorageAt(an.address,an.position,an.blockTag||"latest")];case 9:if(!(an.blockTag&&(0,rn.isHexString)(an.blockTag)))return[3,11];return[4,waitForSync(Wt,Pt)];case 10:en=tn.sent();tn.label=11;case 11:return[2,en[an.includeTransactions?"getBlockWithTransactions":"getBlock"](an.blockTag||an.blockHash)];case 12:if(!(an.blockTag&&(0,rn.isHexString)(an.blockTag)))return[3,14];return[4,waitForSync(Wt,Pt)];case 13:en=tn.sent();tn.label=14;case 14:if(nn==="call"&&an.blockTag){return[2,en[nn](an.transaction,an.blockTag)]}return[2,en[nn](an.transaction)];case 15:return[2,en[nn](an.transactionHash)];case 16:sn=an.filter;if(!(sn.fromBlock&&(0,rn.isHexString)(sn.fromBlock)||sn.toBlock&&(0,rn.isHexString)(sn.toBlock)))return[3,18];return[4,waitForSync(Wt,Pt)];case 17:en=tn.sent();tn.label=18;case 18:return[2,en.getLogs(sn)];case 19:return[2,Gn.throwError("unknown method error",mn.Logger.errors.UNKNOWN_ERROR,{method:nn,params:an})]}}))}))}var yn=function(Wt){Pt(FallbackProvider2,Wt);function FallbackProvider2(Pt,en){var tn=this;if(Pt.length===0){Gn.throwArgumentError("missing providers","providers",Pt)}var an=Pt.map((function(Wt,Pt){if(nn.Provider.isProvider(Wt)){var en=(0,un.isCommunityResource)(Wt)?2e3:750;var tn=1;return Object.freeze({provider:Wt,weight:1,stallTimeout:en,priority:tn})}var an=(0,In.shallowCopy)(Wt);if(an.priority==null){an.priority=1}if(an.stallTimeout==null){an.stallTimeout=(0,un.isCommunityResource)(Wt)?2e3:750}if(an.weight==null){an.weight=1}var rn=an.weight;if(rn%1||rn>512||rn<1){Gn.throwArgumentError("invalid weight; must be integer in [1, 512]","providers["+Pt+"].weight",rn)}return Object.freeze(an)}));var rn=an.reduce((function(Wt,Pt){return Wt+Pt.weight}),0);if(en==null){en=rn/2}else if(en>rn){Gn.throwArgumentError("quorum will always fail; larger than total weight","quorum",en)}var sn=checkNetworks(an.map((function(Wt){return Wt.provider.network})));if(sn==null){sn=new Promise((function(Wt,Pt){setTimeout((function(){tn.detectNetwork().then(Wt,Pt)}),0)}))}tn=Wt.call(this,sn)||this;(0,In.defineReadOnly)(tn,"providerConfigs",Object.freeze(an));(0,In.defineReadOnly)(tn,"quorum",en);tn._highestBlockNumber=-1;return tn}FallbackProvider2.prototype.detectNetwork=function(){return en(this,void 0,void 0,(function(){var Wt;return tn(this,(function(Pt){switch(Pt.label){case 0:return[4,Promise.all(this.providerConfigs.map((function(Wt){return Wt.provider.getNetwork()})))];case 1:Wt=Pt.sent();return[2,checkNetworks(Wt)]}}))}))};FallbackProvider2.prototype.perform=function(Wt,Pt){return en(this,void 0,void 0,(function(){var en,nn,an,rn,on,cn,dn,un,pn,bn,hn;var An=this;return tn(this,(function(Nn){switch(Nn.label){case 0:if(!(Wt==="sendTransaction"))return[3,2];return[4,Promise.all(this.providerConfigs.map((function(Wt){return Wt.provider.sendTransaction(Pt.signedTransaction).then((function(Wt){return Wt.hash}),(function(Wt){return Wt}))})))];case 1:en=Nn.sent();for(nn=0;nn=bn.quorum))return[3,5];mn=rn(pn);if(mn!==void 0){on.forEach((function(Wt){if(Wt.staller){Wt.staller.cancel()}Wt.cancelled=true}));return[2,{value:mn}]}if(!!un)return[3,4];return[4,stall(100).getPromise()];case 3:tn.sent();tn.label=4;case 4:un=false;tn.label=5;case 5:hn=on.reduce((function(Wt,Pt){if(!Pt.done||Pt.error==null){return Wt}var en=Pt.error.code;if(Wn.indexOf(en)>=0){if(!Wt[en]){Wt[en]={error:Pt.error,weight:0}}Wt[en].weight+=Pt.weight}return Wt}),{});Object.keys(hn).forEach((function(Wt){var Pt=hn[Wt];if(Pt.weightcn||on===cn&&en[sn].substr(0,12)==="application/")){continue}}en[sn]=nn}}))}}});var ds=__commonJS({"node_modules/asynckit/lib/defer.js"(Wt,Pt){"use strict";Pt.exports=defer;function defer(Wt){var Pt=typeof setImmediate=="function"?setImmediate:typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:null;if(Pt){Pt(Wt)}else{setTimeout(Wt,0)}}}});var us=__commonJS({"node_modules/asynckit/lib/async.js"(Wt,Pt){"use strict";var en=ds();Pt.exports=async;function async(Wt){var Pt=false;en((function(){Pt=true}));return function async_callback(tn,nn){if(Pt){Wt(tn,nn)}else{en((function nextTick_callback(){Wt(tn,nn)}))}}}}});var ps=__commonJS({"node_modules/asynckit/lib/abort.js"(Wt,Pt){"use strict";Pt.exports=abort;function abort(Wt){Object.keys(Wt.jobs).forEach(clean.bind(Wt));Wt.jobs={}}function clean(Wt){if(typeof this.jobs[Wt]=="function"){this.jobs[Wt]()}}}});var ms=__commonJS({"node_modules/asynckit/lib/iterate.js"(Wt,Pt){"use strict";var en=us();var tn=ps();Pt.exports=iterate;function iterate(Wt,Pt,en,nn){var an=en["keyedList"]?en["keyedList"][en.index]:en.index;en.jobs[an]=runJob(Pt,an,Wt[an],(function(Wt,Pt){if(!(an in en.jobs)){return}delete en.jobs[an];if(Wt){tn(en)}else{en.results[an]=Pt}nn(Wt,en.results)}))}function runJob(Wt,Pt,tn,nn){var an;if(Wt.length==2){an=Wt(tn,en(nn))}else{an=Wt(tn,Pt,en(nn))}return an}}});var bs=__commonJS({"node_modules/asynckit/lib/state.js"(Wt,Pt){"use strict";Pt.exports=state;function state(Wt,Pt){var en=!Array.isArray(Wt),tn={index:0,keyedList:en||Pt?Object.keys(Wt):null,jobs:{},results:en?{}:[],size:en?Object.keys(Wt).length:Wt.length};if(Pt){tn.keyedList.sort(en?Pt:function(en,tn){return Pt(Wt[en],Wt[tn])})}return tn}}});var Gs=__commonJS({"node_modules/asynckit/lib/terminator.js"(Wt,Pt){"use strict";var en=ps();var tn=us();Pt.exports=terminator;function terminator(Wt){if(!Object.keys(this.jobs).length){return}this.index=this.size;en(this);tn(Wt)(null,this.results)}}});var hs=__commonJS({"node_modules/asynckit/parallel.js"(Wt,Pt){"use strict";var en=ms();var tn=bs();var nn=Gs();Pt.exports=parallel;function parallel(Wt,Pt,an){var rn=tn(Wt);while(rn.index<(rn["keyedList"]||Wt).length){en(Wt,Pt,rn,(function(Wt,Pt){if(Wt){an(Wt,Pt);return}if(Object.keys(rn.jobs).length===0){an(null,rn.results);return}}));rn.index++}return nn.bind(rn,an)}}});var Zs=__commonJS({"node_modules/asynckit/serialOrdered.js"(Wt,Pt){"use strict";var en=ms();var tn=bs();var nn=Gs();Pt.exports=serialOrdered;Pt.exports.ascending=ascending;Pt.exports.descending=descending;function serialOrdered(Wt,Pt,an,rn){var In=tn(Wt,an);en(Wt,Pt,In,(function iteratorHandler(tn,nn){if(tn){rn(tn,nn);return}In.index++;if(In.index<(In["keyedList"]||Wt).length){en(Wt,Pt,In,iteratorHandler);return}rn(null,In.results)}));return nn.bind(In,rn)}function ascending(Wt,Pt){return WtPt?1:0}function descending(Wt,Pt){return-1*ascending(Wt,Pt)}}});var As=__commonJS({"node_modules/asynckit/serial.js"(Wt,Pt){"use strict";var en=Zs();Pt.exports=serial;function serial(Wt,Pt,tn){return en(Wt,Pt,null,tn)}}});var Ws=__commonJS({"node_modules/asynckit/index.js"(Wt,Pt){"use strict";Pt.exports={parallel:hs(),serial:As(),serialOrdered:Zs()}}});var Ns=__commonJS({"node_modules/form-data/lib/populate.js"(Wt,Pt){"use strict";Pt.exports=function(Wt,Pt){Object.keys(Pt).forEach((function(en){Wt[en]=Wt[en]||Pt[en]}));return Wt}}});var gs=__commonJS({"node_modules/form-data/lib/form_data.js"(Wt,Pt){"use strict";var tn=ss();var nn=en(39023);var an=en(16928);var rn=en(58611);var In=en(65692);var sn=en(87016).parse;var on=en(79896);var cn=en(2203).Stream;var dn=is();var un=Ws();var pn=Ns();Pt.exports=FormData3;nn.inherits(FormData3,tn);function FormData3(Wt){if(!(this instanceof FormData3)){return new FormData3(Wt)}this._overheadLength=0;this._valueLength=0;this._valuesToMeasure=[];tn.call(this);Wt=Wt||{};for(var Pt in Wt){this[Pt]=Wt[Pt]}}FormData3.LINE_BREAK="\r\n";FormData3.DEFAULT_CONTENT_TYPE="application/octet-stream";FormData3.prototype.append=function(Wt,Pt,en){en=en||{};if(typeof en=="string"){en={filename:en}}var an=tn.prototype.append.bind(this);if(typeof Pt=="number"){Pt=""+Pt}if(nn.isArray(Pt)){this._error(new Error("Arrays are not supported."));return}var rn=this._multiPartHeader(Wt,Pt,en);var In=this._multiPartFooter();an(rn);an(Pt);an(In);this._trackLength(rn,Pt,en)};FormData3.prototype._trackLength=function(Wt,Pt,en){var tn=0;if(en.knownLength!=null){tn+=+en.knownLength}else if(Buffer.isBuffer(Pt)){tn=Pt.length}else if(typeof Pt==="string"){tn=Buffer.byteLength(Pt)}this._valueLength+=tn;this._overheadLength+=Buffer.byteLength(Wt)+FormData3.LINE_BREAK.length;if(!Pt||!Pt.path&&!(Pt.readable&&Pt.hasOwnProperty("httpVersion"))&&!(Pt instanceof cn)){return}if(!en.knownLength){this._valuesToMeasure.push(Pt)}};FormData3.prototype._lengthRetriever=function(Wt,Pt){if(Wt.hasOwnProperty("fd")){if(Wt.end!=void 0&&Wt.end!=Infinity&&Wt.start!=void 0){Pt(null,Wt.end+1-(Wt.start?Wt.start:0))}else{on.stat(Wt.path,(function(en,tn){var nn;if(en){Pt(en);return}nn=tn.size-(Wt.start?Wt.start:0);Pt(null,nn)}))}}else if(Wt.hasOwnProperty("httpVersion")){Pt(null,+Wt.headers["content-length"])}else if(Wt.hasOwnProperty("httpModule")){Wt.on("response",(function(en){Wt.pause();Pt(null,+en.headers["content-length"])}));Wt.resume()}else{Pt("Unknown stream")}};FormData3.prototype._multiPartHeader=function(Wt,Pt,en){if(typeof en.header=="string"){return en.header}var tn=this._getContentDisposition(Pt,en);var nn=this._getContentType(Pt,en);var an="";var rn={"Content-Disposition":["form-data",'name="'+Wt+'"'].concat(tn||[]),"Content-Type":[].concat(nn||[])};if(typeof en.header=="object"){pn(rn,en.header)}var In;for(var sn in rn){if(!rn.hasOwnProperty(sn))continue;In=rn[sn];if(In==null){continue}if(!Array.isArray(In)){In=[In]}if(In.length){an+=sn+": "+In.join("; ")+FormData3.LINE_BREAK}}return"--"+this.getBoundary()+FormData3.LINE_BREAK+an+FormData3.LINE_BREAK};FormData3.prototype._getContentDisposition=function(Wt,Pt){var en,tn;if(typeof Pt.filepath==="string"){en=an.normalize(Pt.filepath).replace(/\\/g,"/")}else if(Pt.filename||Wt.name||Wt.path){en=an.basename(Pt.filename||Wt.name||Wt.path)}else if(Wt.readable&&Wt.hasOwnProperty("httpVersion")){en=an.basename(Wt.client._httpMessage.path||"")}if(en){tn='filename="'+en+'"'}return tn};FormData3.prototype._getContentType=function(Wt,Pt){var en=Pt.contentType;if(!en&&Wt.name){en=dn.lookup(Wt.name)}if(!en&&Wt.path){en=dn.lookup(Wt.path)}if(!en&&Wt.readable&&Wt.hasOwnProperty("httpVersion")){en=Wt.headers["content-type"]}if(!en&&(Pt.filepath||Pt.filename)){en=dn.lookup(Pt.filepath||Pt.filename)}if(!en&&typeof Wt=="object"){en=FormData3.DEFAULT_CONTENT_TYPE}return en};FormData3.prototype._multiPartFooter=function(){return function(Wt){var Pt=FormData3.LINE_BREAK;var en=this._streams.length===0;if(en){Pt+=this._lastBoundary()}Wt(Pt)}.bind(this)};FormData3.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+FormData3.LINE_BREAK};FormData3.prototype.getHeaders=function(Wt){var Pt;var en={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(Pt in Wt){if(Wt.hasOwnProperty(Pt)){en[Pt.toLowerCase()]=Wt[Pt]}}return en};FormData3.prototype.setBoundary=function(Wt){this._boundary=Wt};FormData3.prototype.getBoundary=function(){if(!this._boundary){this._generateBoundary()}return this._boundary};FormData3.prototype.getBuffer=function(){var Wt=new Buffer.alloc(0);var Pt=this.getBoundary();for(var en=0,tn=this._streams.length;en0){return parse(Wt)}else if(en==="number"&&isFinite(Wt)){return Pt.long?fmtLong(Wt):fmtShort(Wt)}throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(Wt))};function parse(Wt){Wt=String(Wt);if(Wt.length>100){return}var Pt=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(Wt);if(!Pt){return}var sn=parseFloat(Pt[1]);var on=(Pt[2]||"ms").toLowerCase();switch(on){case"years":case"year":case"yrs":case"yr":case"y":return sn*In;case"weeks":case"week":case"w":return sn*rn;case"days":case"day":case"d":return sn*an;case"hours":case"hour":case"hrs":case"hr":case"h":return sn*nn;case"minutes":case"minute":case"mins":case"min":case"m":return sn*tn;case"seconds":case"second":case"secs":case"sec":case"s":return sn*en;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return sn;default:return void 0}}function fmtShort(Wt){var Pt=Math.abs(Wt);if(Pt>=an){return Math.round(Wt/an)+"d"}if(Pt>=nn){return Math.round(Wt/nn)+"h"}if(Pt>=tn){return Math.round(Wt/tn)+"m"}if(Pt>=en){return Math.round(Wt/en)+"s"}return Wt+"ms"}function fmtLong(Wt){var Pt=Math.abs(Wt);if(Pt>=an){return plural(Wt,Pt,an,"day")}if(Pt>=nn){return plural(Wt,Pt,nn,"hour")}if(Pt>=tn){return plural(Wt,Pt,tn,"minute")}if(Pt>=en){return plural(Wt,Pt,en,"second")}return Wt+" ms"}function plural(Wt,Pt,en,tn){var nn=Pt>=en*1.5;return Math.round(Wt/en)+" "+tn+(nn?"s":"")}}});var Ys=__commonJS({"node_modules/debug/src/common.js"(Wt,Pt){"use strict";function setup(Wt){createDebug.debug=createDebug;createDebug.default=createDebug;createDebug.coerce=coerce;createDebug.disable=disable;createDebug.enable=enable;createDebug.enabled=enabled;createDebug.humanize=vs();createDebug.destroy=destroy;Object.keys(Wt).forEach((Pt=>{createDebug[Pt]=Wt[Pt]}));createDebug.names=[];createDebug.skips=[];createDebug.formatters={};function selectColor(Wt){let Pt=0;for(let en=0;en{if(Pt==="%%"){return"%"}an++;const nn=createDebug.formatters[tn];if(typeof nn==="function"){const tn=Wt[an];Pt=nn.call(en,tn);Wt.splice(an,1);an--}return Pt}));createDebug.formatArgs.call(en,Wt);const rn=en.log||createDebug.log;rn.apply(en,Wt)}debug.namespace=Wt;debug.useColors=createDebug.useColors();debug.color=createDebug.selectColor(Wt);debug.extend=extend2;debug.destroy=createDebug.destroy;Object.defineProperty(debug,"enabled",{enumerable:true,configurable:false,get:()=>{if(en!==null){return en}if(tn!==createDebug.namespaces){tn=createDebug.namespaces;nn=createDebug.enabled(Wt)}return nn},set:Wt=>{en=Wt}});if(typeof createDebug.init==="function"){createDebug.init(debug)}return debug}function extend2(Wt,Pt){const en=createDebug(this.namespace+(typeof Pt==="undefined"?":":Pt)+Wt);en.log=this.log;return en}function enable(Wt){createDebug.save(Wt);createDebug.namespaces=Wt;createDebug.names=[];createDebug.skips=[];let Pt;const en=(typeof Wt==="string"?Wt:"").split(/[\s,]+/);const tn=en.length;for(Pt=0;Pt"-"+Wt))].join(",");createDebug.enable("");return Wt}function enabled(Wt){if(Wt[Wt.length-1]==="*"){return true}let Pt;let en;for(Pt=0,en=createDebug.skips.length;Pt{let Wt=false;return()=>{if(!Wt){Wt=true;console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}}})();Wt.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"];function useColors(){if(typeof window!=="undefined"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)){return true}if(typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)){return false}let Wt;return typeof document!=="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!=="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!=="undefined"&&navigator.userAgent&&(Wt=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(Wt[1],10)>=31||typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function formatArgs(Wt){Wt[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+Wt[0]+(this.useColors?"%c ":" ")+"+"+Pt.exports.humanize(this.diff);if(!this.useColors){return}const en="color: "+this.color;Wt.splice(1,0,en,"color: inherit");let tn=0;let nn=0;Wt[0].replace(/%[a-zA-Z%]/g,(Wt=>{if(Wt==="%%"){return}tn++;if(Wt==="%c"){nn=tn}}));Wt.splice(nn,0,en)}Wt.log=console.debug||console.log||(()=>{});function save(Pt){try{if(Pt){Wt.storage.setItem("debug",Pt)}else{Wt.storage.removeItem("debug")}}catch(Wt){}}function load(){let Pt;try{Pt=Wt.storage.getItem("debug")}catch(Wt){}if(!Pt&&typeof process!=="undefined"&&"env"in process){Pt=process.env.DEBUG}return Pt}function localstorage(){try{return localStorage}catch(Wt){}}Pt.exports=Ys()(Wt);var{formatters:en}=Pt.exports;en.j=function(Wt){try{return JSON.stringify(Wt)}catch(Wt){return"[UnexpectedJSONParseError]: "+Wt.message}}}});var Vs=__commonJS({"node_modules/has-flag/index.js"(Wt,Pt){"use strict";Pt.exports=(Wt,Pt=process.argv)=>{const en=Wt.startsWith("-")?"":Wt.length===1?"-":"--";const tn=Pt.indexOf(en+Wt);const nn=Pt.indexOf("--");return tn!==-1&&(nn===-1||tn=2,has16m:Wt>=3}}function supportsColor(Wt,Pt){if(In===0){return 0}if(an("color=16m")||an("color=full")||an("color=truecolor")){return 3}if(an("color=256")){return 2}if(Wt&&!Pt&&In===void 0){return 0}const en=In||0;if(rn.TERM==="dumb"){return en}if(process.platform==="win32"){const Wt=tn.release().split(".");if(Number(Wt[0])>=10&&Number(Wt[2])>=10586){return Number(Wt[2])>=14931?3:2}return 1}if("CI"in rn){if(["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some((Wt=>Wt in rn))||rn.CI_NAME==="codeship"){return 1}return en}if("TEAMCITY_VERSION"in rn){return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(rn.TEAMCITY_VERSION)?1:0}if(rn.COLORTERM==="truecolor"){return 3}if("TERM_PROGRAM"in rn){const Wt=parseInt((rn.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(rn.TERM_PROGRAM){case"iTerm.app":return Wt>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(rn.TERM)){return 2}if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(rn.TERM)){return 1}if("COLORTERM"in rn){return 1}return en}function getSupportLevel(Wt){const Pt=supportsColor(Wt,Wt&&Wt.isTTY);return translateLevel(Pt)}Pt.exports={supportsColor:getSupportLevel,stdout:translateLevel(supportsColor(true,nn.isatty(1))),stderr:translateLevel(supportsColor(true,nn.isatty(2)))}}});var ws=__commonJS({"node_modules/debug/src/node.js"(Wt,Pt){"use strict";var tn=en(52018);var nn=en(39023);Wt.init=init;Wt.log=log;Wt.formatArgs=formatArgs;Wt.save=save;Wt.load=load;Wt.useColors=useColors;Wt.destroy=nn.deprecate((()=>{}),"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Wt.colors=[6,2,3,4,5,1];try{const Pt=Rs();if(Pt&&(Pt.stderr||Pt).level>=2){Wt.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221]}}catch(Wt){}Wt.inspectOpts=Object.keys(process.env).filter((Wt=>/^debug_/i.test(Wt))).reduce(((Wt,Pt)=>{const en=Pt.substring(6).toLowerCase().replace(/_([a-z])/g,((Wt,Pt)=>Pt.toUpperCase()));let tn=process.env[Pt];if(/^(yes|on|true|enabled)$/i.test(tn)){tn=true}else if(/^(no|off|false|disabled)$/i.test(tn)){tn=false}else if(tn==="null"){tn=null}else{tn=Number(tn)}Wt[en]=tn;return Wt}),{});function useColors(){return"colors"in Wt.inspectOpts?Boolean(Wt.inspectOpts.colors):tn.isatty(process.stderr.fd)}function formatArgs(Wt){const{namespace:en,useColors:tn}=this;if(tn){const tn=this.color;const nn="[3"+(tn<8?tn:"8;5;"+tn);const an=` ${nn};1m${en} `;Wt[0]=an+Wt[0].split("\n").join("\n"+an);Wt.push(nn+"m+"+Pt.exports.humanize(this.diff)+"")}else{Wt[0]=getDate()+en+" "+Wt[0]}}function getDate(){if(Wt.inspectOpts.hideDate){return""}return(new Date).toISOString()+" "}function log(...Pt){return process.stderr.write(nn.formatWithOptions(Wt.inspectOpts,...Pt)+"\n")}function save(Wt){if(Wt){process.env.DEBUG=Wt}else{delete process.env.DEBUG}}function load(){return process.env.DEBUG}function init(Pt){Pt.inspectOpts={};const en=Object.keys(Wt.inspectOpts);for(let tn=0;tnWt.trim())).join(" ")};an.O=function(Wt){this.inspectOpts.colors=this.useColors;return nn.inspect(Wt,this.inspectOpts)}}});var Fs=__commonJS({"node_modules/debug/src/index.js"(Wt,Pt){"use strict";if(typeof process==="undefined"||process.type==="renderer"||process.browser===true||process.__nwjs){Pt.exports=Es()}else{Pt.exports=ws()}}});var Qs=__commonJS({"node_modules/follow-redirects/debug.js"(Wt,Pt){"use strict";var en;Pt.exports=function(){if(!en){try{en=Fs()("follow-redirects")}catch(Wt){}if(typeof en!=="function"){en=function(){}}}en.apply(null,arguments)}}});var fs=__commonJS({"node_modules/follow-redirects/index.js"(Wt,Pt){"use strict";var tn=en(87016);var nn=tn.URL;var an=en(58611);var rn=en(65692);var In=en(2203).Writable;var sn=en(42613);var on=Qs();var cn=false;try{sn(new nn)}catch(Wt){cn=Wt.code==="ERR_INVALID_URL"}var dn=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"];var un=["abort","aborted","connect","error","socket","timeout"];var pn=Object.create(null);un.forEach((function(Wt){pn[Wt]=function(Pt,en,tn){this._redirectable.emit(Wt,Pt,en,tn)}}));var mn=createErrorType("ERR_INVALID_URL","Invalid URL",TypeError);var bn=createErrorType("ERR_FR_REDIRECTION_FAILURE","Redirected request failed");var Gn=createErrorType("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",bn);var hn=createErrorType("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit");var Zn=createErrorType("ERR_STREAM_WRITE_AFTER_END","write after end");var An=In.prototype.destroy||noop2;function RedirectableRequest(Wt,Pt){In.call(this);this._sanitizeOptions(Wt);this._options=Wt;this._ended=false;this._ending=false;this._redirectCount=0;this._redirects=[];this._requestBodyLength=0;this._requestBodyBuffers=[];if(Pt){this.on("response",Pt)}var en=this;this._onNativeResponse=function(Wt){try{en._processResponse(Wt)}catch(Wt){en.emit("error",Wt instanceof bn?Wt:new bn({cause:Wt}))}};this._performRequest()}RedirectableRequest.prototype=Object.create(In.prototype);RedirectableRequest.prototype.abort=function(){destroyRequest(this._currentRequest);this._currentRequest.abort();this.emit("abort")};RedirectableRequest.prototype.destroy=function(Wt){destroyRequest(this._currentRequest,Wt);An.call(this,Wt);return this};RedirectableRequest.prototype.write=function(Wt,Pt,en){if(this._ending){throw new Zn}if(!isString2(Wt)&&!isBuffer2(Wt)){throw new TypeError("data should be a string, Buffer or Uint8Array")}if(isFunction2(Pt)){en=Pt;Pt=null}if(Wt.length===0){if(en){en()}return}if(this._requestBodyLength+Wt.length<=this._options.maxBodyLength){this._requestBodyLength+=Wt.length;this._requestBodyBuffers.push({data:Wt,encoding:Pt});this._currentRequest.write(Wt,Pt,en)}else{this.emit("error",new hn);this.abort()}};RedirectableRequest.prototype.end=function(Wt,Pt,en){if(isFunction2(Wt)){en=Wt;Wt=Pt=null}else if(isFunction2(Pt)){en=Pt;Pt=null}if(!Wt){this._ended=this._ending=true;this._currentRequest.end(null,null,en)}else{var tn=this;var nn=this._currentRequest;this.write(Wt,Pt,(function(){tn._ended=true;nn.end(null,null,en)}));this._ending=true}};RedirectableRequest.prototype.setHeader=function(Wt,Pt){this._options.headers[Wt]=Pt;this._currentRequest.setHeader(Wt,Pt)};RedirectableRequest.prototype.removeHeader=function(Wt){delete this._options.headers[Wt];this._currentRequest.removeHeader(Wt)};RedirectableRequest.prototype.setTimeout=function(Wt,Pt){var en=this;function destroyOnTimeout(Pt){Pt.setTimeout(Wt);Pt.removeListener("timeout",Pt.destroy);Pt.addListener("timeout",Pt.destroy)}function startTimer(Pt){if(en._timeout){clearTimeout(en._timeout)}en._timeout=setTimeout((function(){en.emit("timeout");clearTimer()}),Wt);destroyOnTimeout(Pt)}function clearTimer(){if(en._timeout){clearTimeout(en._timeout);en._timeout=null}en.removeListener("abort",clearTimer);en.removeListener("error",clearTimer);en.removeListener("response",clearTimer);en.removeListener("close",clearTimer);if(Pt){en.removeListener("timeout",Pt)}if(!en.socket){en._currentRequest.removeListener("socket",startTimer)}}if(Pt){this.on("timeout",Pt)}if(this.socket){startTimer(this.socket)}else{this._currentRequest.once("socket",startTimer)}this.on("socket",destroyOnTimeout);this.on("abort",clearTimer);this.on("error",clearTimer);this.on("response",clearTimer);this.on("close",clearTimer);return this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach((function(Wt){RedirectableRequest.prototype[Wt]=function(Pt,en){return this._currentRequest[Wt](Pt,en)}}));["aborted","connection","socket"].forEach((function(Wt){Object.defineProperty(RedirectableRequest.prototype,Wt,{get:function(){return this._currentRequest[Wt]}})}));RedirectableRequest.prototype._sanitizeOptions=function(Wt){if(!Wt.headers){Wt.headers={}}if(Wt.host){if(!Wt.hostname){Wt.hostname=Wt.host}delete Wt.host}if(!Wt.pathname&&Wt.path){var Pt=Wt.path.indexOf("?");if(Pt<0){Wt.pathname=Wt.path}else{Wt.pathname=Wt.path.substring(0,Pt);Wt.search=Wt.path.substring(Pt)}}};RedirectableRequest.prototype._performRequest=function(){var Wt=this._options.protocol;var Pt=this._options.nativeProtocols[Wt];if(!Pt){throw new TypeError("Unsupported protocol "+Wt)}if(this._options.agents){var en=Wt.slice(0,-1);this._options.agent=this._options.agents[en]}var nn=this._currentRequest=Pt.request(this._options,this._onNativeResponse);nn._redirectable=this;for(var an of un){nn.on(an,pn[an])}this._currentUrl=/^\//.test(this._options.path)?tn.format(this._options):this._options.path;if(this._isRedirect){var rn=0;var In=this;var sn=this._requestBodyBuffers;(function writeNext(Wt){if(nn===In._currentRequest){if(Wt){In.emit("error",Wt)}else if(rn=400){Wt.responseUrl=this._currentUrl;Wt.redirects=this._redirects;this.emit("response",Wt);this._requestBodyBuffers=[];return}destroyRequest(this._currentRequest);Wt.destroy();if(++this._redirectCount>this._options.maxRedirects){throw new Gn}var nn;var an=this._options.beforeRedirect;if(an){nn=Object.assign({Host:Wt.req.getHeader("host")},this._options.headers)}var rn=this._options.method;if((Pt===301||Pt===302)&&this._options.method==="POST"||Pt===303&&!/^(?:GET|HEAD)$/.test(this._options.method)){this._options.method="GET";this._requestBodyBuffers=[];removeMatchingHeaders(/^content-/i,this._options.headers)}var In=removeMatchingHeaders(/^host$/i,this._options.headers);var sn=parseUrl(this._currentUrl);var cn=In||sn.host;var dn=/^\w+:/.test(en)?this._currentUrl:tn.format(Object.assign(sn,{host:cn}));var un=resolveUrl(en,dn);on("redirecting to",un.href);this._isRedirect=true;spreadUrlObject(un,this._options);if(un.protocol!==sn.protocol&&un.protocol!=="https:"||un.host!==cn&&!isSubdomain(un.host,cn)){removeMatchingHeaders(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers)}if(isFunction2(an)){var pn={headers:Wt.headers,statusCode:Pt};var mn={url:dn,method:rn,headers:nn};an(this._options,pn,mn);this._sanitizeOptions(this._options)}this._performRequest()};function wrap(Wt){var Pt={maxRedirects:21,maxBodyLength:10*1024*1024};var en={};Object.keys(Wt).forEach((function(tn){var nn=tn+":";var an=en[nn]=Wt[tn];var rn=Pt[tn]=Object.create(an);function request(Wt,tn,an){if(isURL(Wt)){Wt=spreadUrlObject(Wt)}else if(isString2(Wt)){Wt=spreadUrlObject(parseUrl(Wt))}else{an=tn;tn=validateUrl(Wt);Wt={protocol:nn}}if(isFunction2(tn)){an=tn;tn=null}tn=Object.assign({maxRedirects:Pt.maxRedirects,maxBodyLength:Pt.maxBodyLength},Wt,tn);tn.nativeProtocols=en;if(!isString2(tn.host)&&!isString2(tn.hostname)){tn.hostname="::1"}sn.equal(tn.protocol,nn,"protocol mismatch");on("options",tn);return new RedirectableRequest(tn,an)}function get(Wt,Pt,en){var tn=rn.request(Wt,Pt,en);tn.end();return tn}Object.defineProperties(rn,{request:{value:request,configurable:true,enumerable:true,writable:true},get:{value:get,configurable:true,enumerable:true,writable:true}})}));return Pt}function noop2(){}function parseUrl(Wt){var Pt;if(cn){Pt=new nn(Wt)}else{Pt=validateUrl(tn.parse(Wt));if(!isString2(Pt.protocol)){throw new mn({input:Wt})}}return Pt}function resolveUrl(Wt,Pt){return cn?new nn(Wt,Pt):parseUrl(tn.resolve(Pt,Wt))}function validateUrl(Wt){if(/^\[/.test(Wt.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(Wt.hostname)){throw new mn({input:Wt.href||Wt})}if(/^\[/.test(Wt.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(Wt.host)){throw new mn({input:Wt.href||Wt})}return Wt}function spreadUrlObject(Wt,Pt){var en=Pt||{};for(var tn of dn){en[tn]=Wt[tn]}if(en.hostname.startsWith("[")){en.hostname=en.hostname.slice(1,-1)}if(en.port!==""){en.port=Number(en.port)}en.path=en.search?en.pathname+en.search:en.pathname;return en}function removeMatchingHeaders(Wt,Pt){var en;for(var tn in Pt){if(Wt.test(tn)){en=Pt[tn];delete Pt[tn]}}return en===null||typeof en==="undefined"?void 0:String(en).trim()}function createErrorType(Wt,Pt,en){function CustomError(en){Error.captureStackTrace(this,this.constructor);Object.assign(this,en||{});this.code=Wt;this.message=this.cause?Pt+": "+this.cause.message:Pt}CustomError.prototype=new(en||Error);Object.defineProperties(CustomError.prototype,{constructor:{value:CustomError,enumerable:false},name:{value:"Error ["+Wt+"]",enumerable:false}});return CustomError}function destroyRequest(Wt,Pt){for(var en of un){Wt.removeListener(en,pn[en])}Wt.on("error",noop2);Wt.destroy(Pt)}function isSubdomain(Wt,Pt){sn(isString2(Wt)&&isString2(Pt));var en=Wt.length-Pt.length-1;return en>0&&Wt[en]==="."&&Wt.endsWith(Pt)}function isString2(Wt){return typeof Wt==="string"||Wt instanceof String}function isFunction2(Wt){return typeof Wt==="function"}function isBuffer2(Wt){return typeof Wt==="object"&&"length"in Wt}function isURL(Wt){return nn&&Wt instanceof nn}Pt.exports=wrap({http:an,https:rn});Pt.exports.wrap=wrap}});var Hs={};__export(Hs,{LOCAL_HOST:()=>Os,PrettyLogs:()=>_s,RPCHandler:()=>Xi,RPCService:()=>fi,StorageService:()=>Hi,getNetworkCurrency:()=>getNetworkCurrency,getNetworkData:()=>getNetworkData,getNetworkExplorer:()=>getNetworkExplorer,getNetworkFaucets:()=>getNetworkFaucets,getNetworkId:()=>getNetworkId,getNetworkName:()=>getNetworkName,getNetworkRpcs:()=>getNetworkRpcs,networkCurrencies:()=>js,networkExplorers:()=>Ss,networkIds:()=>Us,networkNames:()=>Ms,networkRpcs:()=>zs,nftAddress:()=>xs,permit2Address:()=>Bs});Wt.exports=__toCommonJS(Hs);var Cs={1:"ethereum-mainnet",2:"expanse-network",3:"ropsten",4:"rinkeby",5:"goerli",7:"thaichain",8:"ubiq",9:"ubiq-network-testnet",10:"op-mainnet",11:"metadium-mainnet",12:"metadium-testnet",13:"diode-testnet-staging",14:"flare-mainnet",15:"diode-prenet",16:"songbird-testnet-coston",17:"thaichain-2.0-thaifi",18:"thundercore-testnet",19:"songbird-canary-network",20:"elastos-smart-chain",21:"elastos-smart-chain-testnet",22:"ela-did-sidechain-mainnet",23:"ela-did-sidechain-testnet",24:"kardiachain-mainnet",25:"cronos-mainnet",26:"genesis-l1-testnet",27:"shibachain",29:"genesis-l1",30:"rootstock-mainnet",31:"rootstock-testnet",32:"gooddata-testnet",33:"gooddata-mainnet",34:"securechain-mainnet",35:"tbwg-chain",36:"dxchain-mainnet",37:"xpla-mainnet",38:"valorbit",39:"u2u-solaris-mainnet",40:"telos-evm-mainnet",41:"telos-evm-testnet",42:"lukso-mainnet",43:"darwinia-pangolin-testnet",44:"crab-network",45:"darwinia-pangoro-testnet",46:"darwinia-network",47:"acria-intellichain",48:"ennothem-mainnet-proterozoic",49:"ennothem-testnet-pioneer",50:"xdc-network",51:"xdc-apothem-network",52:"coinex-smart-chain-mainnet",53:"coinex-smart-chain-testnet",54:"openpiece-mainnet",55:"zyx-mainnet",56:"bnb-smart-chain-mainnet",57:"syscoin-mainnet",58:"ontology-mainnet",60:"gochain",61:"ethereum-classic",63:"mordor-testnet",64:"ellaism",65:"okexchain-testnet",66:"okxchain-mainnet",67:"dbchain-testnet",68:"soterone-mainnet",69:"optimism-kovan",70:"hoo-smart-chain",71:"conflux-espace-(testnet)",72:"dxchain-testnet",73:"fncy",74:"idchain-mainnet",75:"decimal-smart-chain-mainnet",76:"mix",77:"poa-network-sokol",78:"primuschain-mainnet",79:"zenith-mainnet",80:"genechain",81:"japan-open-chain-mainnet",82:"meter-mainnet",83:"meter-testnet",84:"linqto-devnet",85:"gatechain-testnet",86:"gatechain-mainnet",87:"nova-network",88:"viction",89:"viction-testnet",90:"garizon-stage0",91:"garizon-stage1",92:"garizon-stage2",93:"garizon-stage3",94:"swissdlt",95:"camdl-mainnet",96:"bitkub-chain",97:"bnb-smart-chain-testnet",98:"six-protocol",99:"poa-network-core",100:"gnosis",101:"etherinc",102:"web3games-testnet",103:"worldland-mainnet",104:"kaiba-lightning-chain-testnet",105:"web3games-devnet",106:"velas-evm-mainnet",107:"nebula-testnet",108:"thundercore-mainnet",109:"shibarium",110:"proton-testnet",111:"etherlite-chain",112:"coinbit-mainnet",113:"dehvo",114:"flare-testnet-coston2",117:"uptick-mainnet",118:"arcology-testnet",119:"enuls-mainnet",120:"enuls-testnet",121:"realchain-mainnet",122:"fuse-mainnet",123:"fuse-sparknet",124:"decentralized-web-mainnet",125:"oychain-testnet",126:"oychain-mainnet",127:"factory-127-mainnet",128:"huobi-eco-chain-mainnet",129:"innovator-chain",131:"engram-testnet",132:"namefi-chain-mainnet",133:"hashkey-chain-testnet",134:"iexec-sidechain",135:"alyx-chain-testnet",136:"deamchain-mainnet",137:"polygon-mainnet",138:"defi-oracle-meta-mainnet",139:"woopchain-mainnet",140:"eternal-mainnet",141:"openpiece-testnet",142:"dax-chain",144:"phi-network-v2",145:"soraai-testnet",147:"flag-mainnet",148:"shimmerevm",150:"six-protocol-testnet",151:"redbelly-network-mainnet",152:"redbelly-network-devnet",153:"redbelly-network-testnet",154:"redbelly-network-tge",155:"tenet-testnet",156:"oeblock-testnet",157:"puppynet-shibarium",158:"roburna-mainnet",159:"roburna-testnet",160:"armonia-eva-chain-mainnet",161:"armonia-eva-chain-testnet",162:"lightstreams-testnet",163:"lightstreams-mainnet",164:"omni-omega",166:"omni",167:"atoshi-testnet",168:"aioz-network",169:"manta-pacific-mainnet",170:"hoo-smart-chain-testnet",172:"latam-blockchain-resil-testnet",176:"dc-mainnet",178:"abey-testnet",179:"abey-mainnet",180:"ame-chain-mainnet",181:"waterfall-network",184:"dojima-testnet",185:"mint-mainnet",186:"seele-mainnet",187:"dojima",188:"bmc-mainnet",189:"bmc-testnet",190:"cmdao-bbq-chain",191:"filefilego",193:"crypto-emergency",195:"x-layer-testnet",196:"x-layer-mainnet",197:"neutrinos-testnet",198:"bitchain-mainnet",199:"bittorrent-chain-mainnet",200:"arbitrum-on-xdai",201:"moac-testnet",202:"edgeless-testnet",204:"opbnb-mainnet",205:"ekaash",206:"vinuchain-testnet",207:"vinuchain-network",208:"structx-mainnet",210:"bitnet",211:"freight-trust-network",212:"mapo-makalu",213:"b2-hub-mainnet",214:"shinarium-mainnet",217:"siriusnet-v2",220:"scalind-testnet",221:"blockex-mainnet",223:"b2-mainnet",224:"viridis-testnet",225:"lachain-mainnet",226:"lachain-testnet",228:"mind-network-mainnet",230:"swapdex",233:"ethernity-testnet",234:"protojumbo-testnet",236:"deamchain-testnet",242:"plinga-mainnet",246:"energy-web-chain",248:"oasys-mainnet",250:"fantom-opera",252:"fraxtal",254:"swan-chain-mainnet",255:"kroma",256:"huobi-eco-chain-testnet",258:"setheum",259:"neonlink-mainnet",261:"guru-network-testnet",262:"sur-blockchain-network",266:"neura",267:"neura-testnet",268:"neura-devnet",269:"high-performance-blockchain",271:"egoncoin-mainnet",274:"lachain",278:"xfair.ai-mainnet",279:"bpx-blockchain",282:"cronos-zkevm-testnet",288:"boba-network",291:"orderly-mainnet",295:"hedera-mainnet",296:"hedera-testnet",297:"hedera-previewnet",298:"hedera-localnet",300:"zksync-sepolia-testnet",302:"zkcandy-sepolia-testnet",303:"neurochain-testnet",305:"zksats-mainnet",307:"lovely-network-testnet",308:"furtheon",309:"wyzth-testnet",311:"omax-mainnet",313:"neurochain-mainnet",314:"filecoin---mainnet",321:"kcc-mainnet",322:"kcc-testnet",323:"cosvm-mainnet",324:"zksync-mainnet",325:"grvt-mainnet",326:"grvt-sepolia-testnet",333:"web3q-mainnet",335:"dfk-chain-test",336:"shiden",338:"cronos-testnet",345:"tsc-mainnet",360:"shape",361:"theta-mainnet",363:"theta-sapphire-testnet",364:"theta-amber-testnet",365:"theta-testnet",369:"pulsechain",371:"consta-testnet",380:"zkamoeba-testnet",381:"zkamoeba-mainnet",385:"lisinski",388:"cronos-zkevm-mainnet",395:"camdl-testnet",397:"near-mainnet",398:"near-testnet",399:"nativ3-mainnet",400:"hyperonchain-testnet",401:"ozone-chain-testnet",404:"syndr-l3",411:"pepe-chain-mainnet",416:"sx-network-mainnet",418:"latestnet",420:"optimism-goerli-testnet",422:"viridis-mainnet",424:"pgn-(public-goods-network)",427:"zeeth-chain",428:"geso-verse",434:"boyaa-mainnet",443:"ten-testnet",444:"synapse-chain-testnet",456:"arzio-chain",462:"areon-network-testnet",463:"areon-network-mainnet",480:"world-chain",499:"rupaya",500:"camino-c-chain",501:"columbus-test-network",510:"syndicate-chain",512:"double-a-chain-mainnet",513:"double-a-chain-testnet",516:"gear-zero-network-mainnet",520:"xt-smart-chain-mainnet",529:"firechain-mainnet",530:"f(x)core-mainnet-network",534:"candle",537:"optrust-mainnet",542:"pawchain-testnet",545:"testnet",555:"vela1-chain-mainnet",558:"tao-network",568:"dogechain-testnet",570:"rollux-mainnet",571:"metachain-mainnet",579:"filenova-mainnet",592:"astar",595:"acala-mandala-testnet-tc9",596:"karura-network-testnet",597:"acala-network-testnet",600:"meshnyan-testnet",601:"vine-testnet",610:"darwin-devnet",612:"eiob-mainnet",614:"graphlinq-blockchain-mainnet",624:"binary-mainnet",625:"binary-sepolia",634:"avocado",646:"previewnet",647:"sx-network-testnet",648:"endurance-smart-chain-mainnet",653:"kalichain-testnet",654:"kalichain",662:"ultronsmartchain",666:"pixie-chain-testnet",667:"laos-arrakis",668:"juncachain",669:"juncachain-testnet",686:"karura-network",690:"redstone",700:"star-social-testnet",701:"darwinia-koi-testnet",707:"blockchain-station-mainnet",708:"blockchain-station-testnet",710:"highbury",713:"vrcscan-mainnet",719:"shibarium-beta",721:"lycan-chain",727:"blucrates",730:"lovely-network-mainnet",741:"vention-smart-chain-testnet",742:"script-testnet",747:"mainnet",766:"ql1",776:"openchain-testnet",777:"cheapeth",786:"maal-chain",787:"acala-network",788:"aerochain-testnet",789:"patex",799:"rupaya-testnet",800:"lucid-blockchain",803:"haic",808:"portal-fantasy-chain-test",810:"haven1-testnet",813:"qitmeer-network-mainnet",814:"firechain-zkevm",818:"beone-chain-mainnet",820:"callisto-mainnet",822:"runic-chain-testnet",831:"checkdot-blockchain-devnet",841:"taraxa-mainnet",842:"taraxa-testnet",852:"hongkong-mainnet",859:"zeeth-chain-dev",868:"fantasia-chain-mainnet",876:"bandai-namco-research-verse-mainnet",877:"dexit-network",880:"ambros-chain-mainnet",888:"wanchain",898:"maxi-chain-testnet",899:"maxi-chain-mainnet",900:"garizon-testnet-stage0",901:"garizon-testnet-stage1",902:"garizon-testnet-stage2",903:"garizon-testnet-stage3",909:"portal-fantasy-chain",910:"decentrabone-layer1-testnet",911:"taproot-mainnet",917:"rinia-testnet",919:"mode-testnet",927:"yidark-chain-mainnet",943:"pulsechain-testnet-v4",956:"munode-testnet",957:"lyra-chain",963:"btc20-smart-chain",969:"ethxy",970:"oort-mainnet",971:"oort-huygens",972:"oort-ascraeus",977:"nepal-blockchain-network",979:"ethxy-testnet",980:"top-mainnet-evm",985:"memo-smart-chain-mainnet",987:"binarychain-mainnet",989:"top-mainnet",990:"eliberty-mainnet",995:"5irechain-mainnet",996:"bifrost-polkadot-mainnet",997:"5irechain-thunder",998:"lucky-network",999:"wanchain-testnet",1e3:"gton-mainnet",1001:"kaia-testnet-kairos",1003:"tectum-emission-token",1004:"t-ekta",1007:"newton-testnet",1008:"eurus-mainnet",1009:"jumbochain-mainnet",1010:"evrice-network",1011:"rebus-mainnet",1012:"newton",1022:"sakura",1023:"clover-testnet",1024:"clv-parachain",1028:"bittorrent-chain-testnet",1030:"conflux-espace",1031:"proxy-network-testnet",1038:"bronos-testnet",1039:"bronos-mainnet",1073:"shimmerevm-testnet",1075:"iota-evm-testnet",1079:"mintara-testnet",1080:"mintara-mainnet",1088:"metis-andromeda-mainnet",1089:"humans.ai-mainnet",1099:"moac-mainnet",1100:"dymension",1101:"polygon-zkevm",1107:"blxq-testnet",1108:"blxq-mainnet",1111:"wemix3.0-mainnet",1112:"wemix3.0-testnet",1113:"b2-hub-testnet",1115:"core-blockchain-testnet",1116:"core-blockchain-mainnet",1117:"dogcoin-mainnet",1123:"b2-testnet",1130:"defichain-evm-network-mainnet",1131:"defichain-evm-network-testnet",1133:"defimetachain-changi-testnet",1135:"lisk",1138:"amstar-testnet",1139:"mathchain",1140:"mathchain-testnet",1147:"flag-testnet",1149:"symplexia-smart-chain",1170:"origin-testnet",1177:"smart-host-teknoloji-testnet",1188:"clubmos-mainnet",1197:"iora-chain",1200:"cuckoo-chain",1201:"evanesco-testnet",1202:"world-trade-technical-chain-mainnet",1209:"saitablockchain(sbc)",1210:"cuckoo-sepolia",1213:"popcateum-mainnet",1214:"enterchain-mainnet",1221:"cycle-network-testnet",1223:"cycle-network-testnet-jellyfish",1225:"hybrid-testnet",1227:"bitcoin-protocol-testnet",1229:"exzo-network-mainnet",1230:"ultron-testnet",1231:"ultron-mainnet",1234:"step-network",1235:"itx-mainnet",1243:"arc-mainnet",1244:"arc-testnet",1246:"om-platform-mainnet",1248:"dogether-mainnet",1252:"cic-chain-testnet",1280:"halo-mainnet",1284:"moonbeam",1285:"moonriver",1287:"moonbase-alpha",1288:"moonrock",1291:"swisstronik-testnet",1311:"dos-fuji-subnet",1313:"jaiho-chain",1314:"alyx-mainnet",1319:"aia-mainnet",1320:"aia-testnet",1328:"sei-testnet",1329:"sei-network",1337:"geth-testnet",1338:"elysium-testnet",1339:"elysium-mainnet",1343:"blitz-subnet",1353:"cic-chain-mainnet",1369:"zafirium-mainnet",1370:"ramestta-mainnet",1377:"pingaksha-testnet",1379:"kalar-chain",1388:"amstar-mainnet",1392:"joseon-mainnet",1414:"silicon-zkevm-sepolia-testnet",1433:"rikeza-network-mainnet",1440:"living-assets-mainnet",1442:"polygon-zkevm-testnet",1452:"gil-testnet",1453:"metachain-istanbul",1455:"ctex-scan-blockchain",1456:"zkbase-mainnet",1490:"vitruveo-mainnet",1499:"idos-games-chain-testnet",1501:"bevm-canary",1506:"sherpax-mainnet",1507:"sherpax-testnet",1515:"beagle-messaging-chain",1559:"tenet",1570:"starchain-testnet",1578:"starchain",1617:"ethereum-inscription-mainnet",1618:"catecoin-chain-mainnet",1620:"atheios",1625:"gravity-alpha-mainnet",1648:"pivotal-mainnet",1657:"btachain",1662:"liquichain",1663:"horizen-gobi-testnet",1686:"mint-testnet",1687:"mint-sepolia-testnet",1688:"ludan-mainnet",1701:"anytype-evm-chain",1707:"tbsi-mainnet",1708:"tbsi-testnet",1717:"doric-network",1718:"palette-chain-mainnet",1729:"reya-network",1740:"metal-l2-testnet",1750:"metal-l2",1773:"partychain",1777:"gauss-mainnet",1789:"zkbase-sepolia-testnet",1804:"kerleano",1807:"rabbit-analog-testnet-chain",1811:"lif3-chain-testnet",1818:"cube-chain-mainnet",1819:"cube-chain-testnet",1821:"ruby-smart-chain-mainnet",1856:"teslafunds",1875:"whitechain",1881:"gitshock-cartenz-testnet",1890:"lightlink-phoenix-mainnet",1891:"lightlink-pegasus-testnet",1898:"bon-network",1899:"redefi-layer-2",1904:"sports-chain-network",1907:"bitcichain-mainnet",1908:"bitcichain-testnet",1909:"merkle-scan",1911:"scalind",1912:"ruby-smart-chain-testnet",1918:"upb-crescdi-testnet",1945:"onus-chain-testnet",1951:"d-chain-mainnet",1953:"selendra-network-testnet",1954:"dexilla-testnet",1956:"aiw3-testnet",1961:"selendra-network-mainnet",1967:"eleanor",1969:"super-smart-chain-testnet",1970:"super-smart-chain-mainnet",1971:"atelier",1972:"redecoin",1975:"onus-chain-mainnet",1984:"eurus-testnet",1985:"satoshie",1986:"satoshie-testnet",1987:"ethergem",1992:"hubble-exchange",1993:"b3-sepolia-testnet",1994:"ekta",1995:"edexa-testnet",1996:"sanko",1997:"kyoto",1998:"kyoto-testnet",2e3:"dogechain-mainnet",2001:"milkomeda-c1-mainnet",2002:"milkomeda-a1-mainnet",2004:"metalink-network",2008:"cloudwalk-testnet",2009:"cloudwalk-mainnet",2013:"panarchy",2014:"now-chain-testnet",2016:"mainnetz-mainnet",2017:"adiri",2018:"publicmint-devnet",2019:"publicmint-testnet",2020:"publicmint-mainnet",2021:"edgeware-edgeevm-mainnet",2022:"beresheet-bereevm-testnet",2023:"taycan-testnet",2024:"swan-saturn-testnet",2025:"rangers-protocol-mainnet",2026:"edgeless-network",2031:"centrifuge",2032:"catalyst",2035:"phala-network",2037:"kiwi-subnet",2038:"shrapnel-testnet",2039:"aleph-zero-testnet",2040:"vanar-mainnet",2043:"neuroweb",2044:"shrapnel-subnet",2045:"aiw3-mainnet",2047:"stratos-testnet",2048:"stratos",2049:"movo-smart-chain-mainnet",2077:"quokkacoin-mainnet",2088:"altair",2100:"ecoball-mainnet",2101:"ecoball-testnet-espuma",2109:"exosama-network",2112:"uchain-mainnet",2121:"catena-mainnet",2122:"metaplayerone-mainnet",2124:"metaplayerone-dubai-testnet",2136:"bigshortbets-testnet",2137:"bigshortbets",2138:"defi-oracle-meta-testnet",2140:"oneness-network",2141:"oneness-testnet",2151:"bosagora-mainnet",2152:"findora-mainnet",2153:"findora-testnet",2154:"findora-forge",2162:"animechain-testnet",2199:"moonsama-network",2202:"antofy-mainnet",2203:"bitcoin-evm",2213:"evanesco-mainnet",2221:"kava-testnet",2222:"kava",2223:"vchain-mainnet",2241:"krest-network",2300:"bomb-chain",2306:"ebro-network",2309:"arevia",2311:"chronicle-vesuvius---lit-protocol-testnet",2323:"soma-network-testnet",2330:"altcoinchain",2331:"rss3-vsl-sepolia-testnet",2332:"soma-network-mainnet",2340:"atleta-olympia",2342:"omnia-chain",2355:"silicon-zkevm",2358:"kroma-sepolia",2370:"nexis-network-testnet",2399:"bomb-chain-testnet",2400:"tcg-verse-mainnet",2410:"karak-mainnet",2415:"xodex",2425:"king-of-legends-mainnet",2442:"polygon-zkevm-cardona-testnet",2458:"hybrid-chain-network-testnet",2468:"hybrid-chain-network-mainnet",2484:"unicorn-ultra-nebulas-testnet",2522:"fraxtal-testnet",2525:"inevm-mainnet",2559:"kortho-mainnet",2569:"techpay-mainnet",2606:"pocrnet",2611:"redlight-chain-mainnet",2612:"ezchain-c-chain-mainnet",2613:"ezchain-c-chain-testnet",2625:"whitechain-testnet",2648:"ailayer-testnet",2649:"ailayer-mainnet",2662:"apex",2710:"morph-testnet",2718:"k-laos",2730:"xr-sepolia",2731:"elizabeth-testnet",2748:"nanon",2777:"gm-network-mainnet",2810:"morph-holesky",2882:"chips-network",2907:"elux-chain",2911:"hychain",2941:"xenon-chain-testnet",2999:"bityuan-mainnet",3e3:"cennznet-rata",3001:"cennznet-nikau",3003:"canxium-mainnet",3011:"playa3ull-games",3031:"orlando-chain",3033:"rebus-testnet",3068:"bifrost-mainnet",3073:"movement-evm",3084:"xl-network-testnet",3100:"immu3-evm",3102:"vulture-evm-beta",3109:"satoshivm-alpha-mainnet",3110:"satoshivm-testnet",3269:"dubxcoin-network",3270:"dubxcoin-testnet",3306:"debounce-subnet-testnet",3331:"zcore-testnet",3333:"ethstorage-testnet",3334:"web3q-galileo",3335:"ethstorage-mainnet",3338:"peaq",3400:"paribu-net-mainnet",3424:"evolve-mainnet",3434:"securechain-testnet",3456:"layeredge-testnet",3490:"gtcscan",3500:"paribu-net-testnet",3501:"jfin-chain",3601:"pandoproject-mainnet",3602:"pandoproject-testnet",3630:"tycooncoin",3636:"botanix-testnet",3637:"botanix-mainnet",3639:"ichain-network",3645:"ichain-testnet",3666:"jouleverse-mainnet",3690:"bittex-mainnet",3693:"empire-network",3698:"senjepowers-testnet",3699:"senjepowers-mainnet",3737:"crossbell",3776:"astar-zkevm",3797:"alveychain-mainnet",3799:"tangle-testnet",3885:"firechain-zkevm-ghostrider",3888:"kalychain-mainnet",3889:"kalychain-testnet",3912:"drac-network",3939:"dos-tesnet",3966:"dyno-mainnet",3967:"dyno-testnet",3993:"apex-testnet",3999:"yuanchain-mainnet",4e3:"ozone-chain-mainnet",4001:"peperium-chain-testnet",4002:"fantom-testnet",4003:"x1-fastnet",4040:"carbonium-testnet-network",4048:"gan-testnet",4058:"bahamut-ocean",4061:"nahmii-3-mainnet",4062:"nahmii-3-testnet",4078:"muster-mainnet",4080:"tobe-chain",4090:"fastex-chain-(bahamut)-oasis-testnet",4096:"bitindi-testnet",4099:"bitindi-mainnet",4102:"aioz-network-testnet",4139:"humans.ai-testnet",4141:"tipboxcoin-testnet",4157:"crossfi-testnet",4162:"sx-rollup",4181:"phi-network-v1",4200:"merlin-mainnet",4201:"lukso-testnet",4202:"lisk-sepolia-testnet",4242:"nexi-mainnet",4243:"nexi-v2-mainnet",4337:"beam",4400:"credit-smart-chain-mainnet",4444:"htmlcoin-mainnet",4460:"orderly-sepolia-testnet",4488:"hydra-chain",4544:"emoney-network-testnet",4613:"very-mainnet",4653:"gold-chain",4689:"iotex-network-mainnet",4690:"iotex-network-testnet",4759:"meverse-chain-testnet",4777:"blackfort-exchange-network-testnet",4801:"world-chain-sepolia-testnet",4893:"globel-chain",4918:"venidium-testnet",4919:"venidium-mainnet",4999:"blackfort-exchange-network",5e3:"mantle",5001:"mantle-testnet",5002:"treasurenet-mainnet-alpha",5003:"mantle-sepolia-testnet",5005:"treasurenet-testnet",5039:"onigiri-test-subnet",5040:"onigiri-subnet",5051:"nollie-skatechain-testnet",5100:"syndicate-testnet",5101:"syndicate-frame-chain",5102:"sic-testnet",5103:"coordinape-testnet",5104:"charmverse-testnet",5105:"superloyalty-testnet",5106:"azra-testnet",5112:"ham",5151:"mechain-testnet",5165:"bahamut",5169:"smart-layer-network",5177:"tlchain-network-mainnet",5197:"eraswap-mainnet",5234:"humanode-mainnet",5315:"uzmi-network-mainnet",5317:"optrust-testnet",5321:"itx-testnet",5333:"netsbo",5353:"tritanium-testnet",5372:"settlus-testnet",5424:"edexa-mainnet",5439:"egochain",5522:"vex-evm-testnet",5551:"nahmii-2-mainnet",5555:"chain-verse-mainnet",5611:"opbnb-testnet",5615:"arcturus-testneet",5616:"arcturus-chain-testnet",5656:"qie-blockchain",5675:"filenova-testnet",5678:"tanssi-demo",5700:"syscoin-tanenbaum-testnet",5729:"hika-network-testnet",5758:"satoshichain-testnet",5777:"ganache",5845:"tangle",5851:"ontology-testnet",5858:"chang-chain-foundation-mainnet",5869:"wegochain-rubidium-mainnet",6e3:"bouncebit-testnet",6001:"bouncebit-mainnet",6065:"tres-testnet",6066:"tres-mainnet",6102:"cascadia-testnet",6118:"uptn-testnet",6119:"uptn",6283:"laos",6321:"aura-euphoria-testnet",6322:"aura-mainnet",6363:"digit-soul-smart-chain",6398:"connext-sepolia",6502:"peerpay",6550:"flamma-testnet",6552:"scolcoin-weichain-testnet",6565:"fox-testnet-network",6626:"pixie-chain-mainnet",6660:"latest-chain-testnet",6661:"cybria-mainnet",6666:"cybria-testnet",6678:"edge-matrix-chain",6688:"irishub",6699:"ox-chain",6701:"paxb-mainnet",6779:"compverse-mainnet",6789:"gold-smart-chain-mainnet",6805:"race-mainnet",6806:"race-testnet",6868:"pools-mainnet",6969:"tomb-chain-mainnet",6999:"polysmartchain",7e3:"zetachain-mainnet",7001:"zetachain-testnet",7007:"bst-chain",7027:"ella-the-heart",7070:"planq-mainnet",7077:"planq-atlas-testnet",7100:"nume",7118:"help-the-homeless",7171:"bitrock-mainnet",7222:"nibiru-devnet-3",7244:"zeus-testnet",7300:"xpla-verse",7331:"klyntar",7332:"horizen-eon-mainnet",7341:"shyft-mainnet",7484:"raba-network-mainnet",7518:"meverse-chain-mainnet",7560:"cyber-mainnet",7575:"adil-testnet",7576:"adil-chain-v2-mainnet",7668:"the-root-network---mainnet",7672:"the-root-network---porcini-testnet",7700:"canto",7701:"canto-tesnet",7771:"bitrock-testnet",7774:"gdcc-mainnet",7775:"gdcc-testnet",7776:"pandasea-mainnet",7777:"rise-of-the-warbots-testnet",7778:"orenium-mainnet-protocol",7798:"openex-long-testnet",7860:"maalchain-testnet",7862:"maalchain-v2",7863:"maalchain-testnet-v2",7878:"hazlor-testnet",7887:"kinto-mainnet",7895:"ardenium-athena",7923:"dot-blox",7924:"mo-mainnet",7979:"dos-chain",8e3:"teleport",8001:"teleport-testnet",8008:"polynomial",8029:"mdgl-testnet",8047:"boat-mainnet",8054:"karak-sepolia",8080:"shardeum-liberty-1.x",8081:"shardeum-liberty-2.x",8082:"shardeum-sphinx-1.x",8086:"bitcoin-chain",8087:"e-dollar",8098:"streamux-blockchain",8131:"qitmeer-network-testnet",8132:"qitmeer-network-mixnet",8133:"qitmeer-network-privnet",8134:"amana",8135:"flana",8136:"mizana",8181:"testnet-beone-chain",8192:"torus-mainnet",8194:"torus-testnet",8217:"kaia-mainnet",8227:"space-subnet",8272:"blockton-blockchain",8285:"korthotest",8329:"lorenzo",8333:"b3",8387:"dracones-financial-services",8453:"base",8545:"chakra-testnet",8654:"toki-network",8655:"toki-testnet",8668:"hela-official-runtime-mainnet",8723:"tool-global-mainnet",8724:"tool-global-testnet",8726:"storagechain-mainnet",8727:"storagechain-testnet",8732:"bullions-smart-chain",8738:"alph-network",8768:"tmy-chain",8822:"iota-evm",8844:"hydra-chain-testnet",8848:"maro-blockchain-mainnet",8866:"superlumio",8869:"lif3-chain",8880:"unique",8881:"quartz-by-unique",8882:"opal-testnet-by-unique",8883:"sapphire-by-unique",8886:"avenium-testnet",8888:"xanachain",8889:"vyvo-smart-chain",8890:"orenium-testnet-protocol",8898:"mammoth-mainnet",8899:"jibchain-l1",8911:"algen",8912:"algen-testnet",8921:"algen-layer2",8922:"algen-layer2-testnet",8989:"giant-mammoth-mainnet",8995:"bloxberg",9e3:"evmos-testnet",9001:"evmos",9007:"shido-testnet-block",9008:"shido-mainnet-block",9012:"berylbit-mainnet",9024:"nexa-testnet-block",9025:"nexa-mainnet-block",9069:"apex-fusion---nexus-mainnet",9070:"apex-fusion---nexus-testnet",9100:"genesis-coin",9223:"codefin-mainnet",9339:"dogcoin-testnet",9372:"oasys-testnet",9393:"dela-sepolia-testnet",9395:"evoke-mainnet",9496:"weavevm-testnet",9527:"rangers-protocol-testnet-robin",9528:"qeasyweb3-testnet",9559:"neonlink-testnet",9700:"oort-mainnetdev",9728:"boba-bnb-testnet",9768:"mainnetz-testnet",9779:"pepenetwork-mainnet",9789:"tabi-testnet",9790:"carbon-evm",9792:"carbon-evm-testnet",9797:"optimusz7-mainnet",9818:"imperium-testnet",9819:"imperium-mainnet",9876:"binarychain-testnet",9888:"dogelayer-mainnet",9898:"larissa-chain",9911:"espento-mainnet",9977:"mind-smart-chain-testnet",9980:"combo-mainnet",9981:"volley-mainnet",9990:"agung-network",9996:"mind-smart-chain-mainnet",9997:"altlayer-testnet",9998:"ztc-mainnet",9999:"myown-testnet",1e4:"smart-bitcoin-cash",10001:"smart-bitcoin-cash-testnet",10024:"gon-chain",10081:"japan-open-chain-testnet",10086:"sjatsh",10096:"metanova-verse",10101:"blockchain-genesis-mainnet",10200:"gnosis-chiado-testnet",10201:"maxxchain-mainnet",10222:"glscan",10242:"arthera-mainnet",10243:"arthera-testnet",10248:"0xtade",10321:"tao-evm-mainnet",10324:"tao-evm-testnet",10395:"worldland-testnet",10507:"numbers-mainnet",10508:"numbers-testnet",10823:"cryptocoinpay",10849:"lamina1",10850:"lamina1-identity",10946:"quadrans-blockchain",10947:"quadrans-blockchain-testnet",11011:"shape-sepolia-testnet",11110:"astra",11111:"wagmi",11115:"astra-testnet",11119:"hashbit-mainnet",11124:"abstract-testnet",11221:"shine-chain",11227:"jiritsu-testnet-subnet",11235:"haqq-network",11437:"shyft-testnet",11501:"bevm-mainnet",11503:"bevm-testnet",11521:"satschain",11612:"sardis-testnet",11822:"artela-testnet",11891:"polygon-supernet-arianee",12001:"fuse-testnet",12009:"satoshichain-mainnet",12020:"aternos",12051:"singularity-zero-testnet",12052:"singularity-zero-mainnet",12123:"brc-chain-mainnet",12306:"fibonacci-mainnet",12321:"blg-testnet",12324:"l3x-protocol",12325:"l3x-protocol-testnet",12345:"step-testnet",12553:"rss3-vsl-mainnet",12715:"rikeza-network-testnet",12781:"playdapp-testnet",12890:"quantum-chain-testnet",12898:"playfair-testnet-subnet",13e3:"sps",13308:"credit-smart-chain",13337:"beam-testnet",13371:"immutable-zkevm",13381:"phoenix-mainnet",13396:"masa",13473:"immutable-zkevm-testnet",13505:"gravity-alpha-testnet-sepolia",13600:"kronobit-mainnet",13812:"susono",14e3:"sps-testnet",14324:"evolve-testnet",14333:"vitruveo-testnet",14801:"vana-satori-testnet",14853:"humanode-testnet-5-israfel",15003:"immutable-zkevm-devnet",15257:"poodl-testnet",15259:"poodl-mainnet",15430:"kymtc-mainnet",15551:"loopnetwork-mainnet",15555:"trust-evm-testnet",15557:"eos-evm-network-testnet",16e3:"metadot-mainnet",16001:"metadot-testnet",16116:"defiverse-mainnet",16166:"cypherium-mainnet",16180:"plyr-phi",16350:"incentiv-devnet",16481:"pivotal-sepolia",16507:"genesys-mainnet",16600:"0g-newton-testnet",16688:"irishub-testnet",16718:"airdao-mainnet",16888:"ivar-chain-testnet",17e3:"holesky",17069:"garnet-holesky",17071:"onchain-points",17117:"defiverse-testnet",17171:"g8chain-mainnet",17172:"eclipse-subnet",17180:"palette-chain-testnet",17217:"konet-mainnet",17777:"eos-evm-network",18e3:"frontier-of-dreams-testnet",18122:"smart-trade-networks",18159:"proof-of-memes",18181:"g8chain-testnet",18233:"unreal",18686:"mxc-zkevm-moonchain",18888:"titan-(tkx)",18889:"titan-(tkx)-testnet",19011:"home-verse-mainnet",19077:"blockx-atlantis-testnet",19191:"blockx-mainnet",19224:"decentraconnect-social",19527:"magnet-network",19600:"lbry-mainnet",19845:"btcix-network",20001:"camelark-mainnet",20041:"niza-chain-mainnet",20073:"niza-chain-testnet",20729:"callisto-testnet",20736:"p12-chain",20765:"jono11-subnet",21004:"c4ei",21133:"all-about-healthy",21223:"dcpay-mainnet",21224:"dcpay-testnet",21337:"cennznet-azalea",21363:"lestnet",21816:"omchain-mainnet",21912:"bsl-mainnet",22023:"taycan",22040:"airdao-testnet",22222:"nautilus-mainnet",22324:"goldxchain-testnet",22776:"map-protocol",23006:"antofy-testnet",23118:"opside-testnet",23294:"oasis-sapphire",23295:"oasis-sapphire-testnet",23451:"dreyerx-mainnet",23452:"dreyerx-testnet",23888:"blast-testnet",24076:"kymtc-testnet",24484:"webchain",24734:"mintme.com-coin",25186:"liquidlayer-mainnet",25839:"alveychain-testnet",25888:"hammer-chain-mainnet",25925:"bitkub-chain-testnet",26026:"ferrum-testnet",26482:"ducatusx-testnet",26483:"ducatusx",26600:"hertz-network-mainnet",26863:"oasischain-mainnet",27181:"klaos-nova",27483:"nanon-sepolia",27827:"zeroone-mainnet-subnet",28516:"vizing-testnet",28518:"vizing-mainnet",28528:"optimism-bedrock-(goerli-alpha-testnet)",28882:"boba-sepolia",29112:"hychain-testnet",29223:"nexa-metanet",29536:"kaichain-testnet",29548:"mch-verse-mainnet",30067:"piece-testnet",30088:"miyou-mainnet",30103:"cerium-testnet",30730:"movement-evm-legacy",30731:"movement-evm-devnet",30732:"movement-evm-testnet",31102:"ethersocial-network",31223:"cloudtx-mainnet",31224:"cloudtx-testnet",31337:"gochain-testnet",31414:"evoke-testnet",31753:"xchain-mainnet",31754:"xchain-testnet",32001:"w3gamez-holesky-testnet",32382:"santiment-intelligence-network",32520:"bitgert-mainnet",32659:"fusion-mainnet",32769:"zilliqa-evm",32990:"zilliqa-evm-isolated-server",33033:"entangle-mainnet",33101:"zilliqa-evm-testnet",33103:"zilliqa-2-evm-proto-testnet",33111:"curtis",33133:"entangle-testnet",33210:"cloudverse-subnet",33333:"aves-mainnet",33385:"zilliqa-evm-devnet",33401:"slingshot",33469:"zilliqa-2-evm-devnet",33979:"funki",34443:"mode",34504:"zeus-mainnet",35011:"j2o-taro",35441:"q-mainnet",35443:"q-testnet",38400:"connectormanager",38401:"connectormanager-robin",39656:"prm-mainnet",39797:"energi-mainnet",39815:"oho-mainnet",41455:"aleph-zero-evm",41500:"opulent-x-beta",42069:"pegglecoin",42072:"agentlayer-testnet",42161:"arbitrum-one",42170:"arbitrum-nova",42220:"celo-mainnet",42261:"oasis-emerald-testnet",42262:"oasis-emerald",42355:"goldxchain-mainnet",42421:"assetchain-testnet",42766:"zkfair-mainnet",42793:"etherlink-mainnet",42801:"gesoten-verse-testnet",42888:"kinto-testnet",43110:"athereum",43111:"hemi-network",43113:"avalanche-fuji-testnet",43114:"avalanche-c-chain",43851:"zkfair-testnet",44444:"frenchain",44445:"quantum-network",44787:"celo-alfajores-testnet",45e3:"autobahn-network",45454:"swamps-l2",45510:"deelance-mainnet",45513:"blessnet",46688:"fusion-testnet",47763:"neo-x-mainnet",47803:"redefi-layer-1",47805:"rei-network",48795:"space-subnet-testnet",48899:"zircuit-testnet",48900:"zircuit-mainnet",49049:"wireshape-floripa-testnet",49088:"bifrost-testnet",49321:"gunz-testnet",49797:"energi-testnet",50001:"liveplex-oracleevm",50005:"yooldo-verse-mainnet",50006:"yooldo-verse-testnet",50021:"gton-testnet",51178:"lumoz-testnet-alpha",51712:"sardis-mainnet",52014:"electroneum-mainnet",53277:"doid",53302:"superseed-sepolia-testnet",53457:"dodochain-testnet",53935:"dfk-chain",54211:"haqq-chain-testnet",54321:"toronet-testnet",55004:"titan",55551:"photon-aurora-testnet",55555:"rei-chain-mainnet",55556:"rei-chain-testnet",55614:"flamma-mainnet",56026:"lambda-chain-mainnet",56288:"boba-bnb-mainnet",56400:"testnet-zeroone-subnet",56789:"velo-labs-mainnet",56797:"doid-testnet",57e3:"rollux-testnet",57451:"coinsec-network",58008:"sepolia-pgn-(public-goods-network)",59140:"linea-goerli",59141:"linea-sepolia",59144:"linea",59902:"metis-sepolia-testnet",59971:"genesys-code-mainnet",6e4:"thinkium-testnet-chain-0",60001:"thinkium-testnet-chain-1",60002:"thinkium-testnet-chain-2",60103:"thinkium-testnet-chain-103",60808:"bob",61022:"orange-chain-mainnet",61406:"kaichain",61800:"axelchain-dev-net",61803:"etica-mainnet",61916:"doken-super-chain-mainnet",62049:"optopia-testnet",62050:"optopia-mainnet",62298:"citrea-devnet",62320:"celo-baklava-testnet",62621:"multivac-mainnet",62831:"plyr-tau-testnet",62850:"laos-sigma-testnet",63e3:"ecredits-mainnet",63001:"ecredits-testnet",65349:"cratd2c-testnet",65357:"vecno-mainnet",65450:"scolcoin-mainnet",65536:"automata-mainnet",66988:"janus-testnet",67588:"cosmic-chain",68770:"dm2-verse-mainnet",69420:"condrieu",7e4:"thinkium-mainnet-chain-0",70001:"thinkium-mainnet-chain-1",70002:"thinkium-mainnet-chain-2",70103:"thinkium-mainnet-chain-103",70700:"proof-of-play---apex",71111:"guapcoinx",71393:"polyjuice-testnet",71401:"godwoken-testnet-v1",71402:"godwoken-mainnet",72778:"caga-crypto-ankara-testnet",72992:"grok-chain-mainnet",73114:"icb-testnet",73115:"icb-network",73799:"energy-web-volta-testnet",73927:"mixin-virtual-machine",75e3:"resincoin-mainnet",75512:"geek-verse-mainnet",75513:"geek-verse-testnet",77001:"borachain-mainnet",77238:"foundry-chain-testnet",77612:"vention-smart-chain-mainnet",77677:"cycle-network-mainnet-sailboat",77777:"toronet-mainnet",78110:"firenze-test-network",78281:"dragonfly-mainnet-(hexapod)",78430:"amplify-subnet",78431:"bulletin-subnet",78432:"conduit-subnet",78600:"vanguard",79879:"gold-smart-chain-testnet",80001:"mumbai",80002:"amoy",80008:"polynomia-sepolia",80084:"berachain-bartio",80085:"berachain-artio",80096:"hizoco-mainnet",81041:"nordek-mainnet",81341:"amana-testnet",81342:"amana-mixnet",81343:"amana-privnet",81351:"flana-testnet",81352:"flana-mixnet",81353:"flana-privnet",81361:"mizana-testnet",81362:"mizana-mixnet",81363:"mizana-privnet",81457:"blast",81720:"quantum-chain-mainnet",82459:"smart-layer-network-testnet",83144:"xprotocol-testnet",83278:"esa",83872:"zedxion",84531:"base-goerli-testnet",84532:"base-sepolia-testnet",84886:"aerie-network",85449:"cybertrust",88002:"nautilus-proteus-testnet",88559:"inoai",88800:"zkasino-mainnet",88817:"unit-zero-testnet",88819:"unit-zero-stagenet",88882:"chiliz-spicy-testnet",88888:"chiliz-chain-mainnet",90001:"f(x)core-testnet-network",90210:"beverly-hills",90354:"camp-testnet",91002:"nautilus-trition-chain",91120:"metadap-enterprise-mainnet",91715:"combo-testnet",92001:"lambda-testnet",93572:"liquidlayer-testnet",93747:"stratovm-testnet",96970:"mantis-testnet-(hexapod)",97435:"slingshot-testnet",97531:"green-chain-testnet",97970:"optimusz7-testnet",98881:"ebi-chain",99099:"eliberty-testnet",99876:"edge-matrix-chain-testnet",99998:"ub-smart-chain(testnet)",99999:"ub-smart-chain",1e5:"quarkchain-mainnet-root",100001:"quarkchain-mainnet-shard-0",100002:"quarkchain-mainnet-shard-1",100003:"quarkchain-mainnet-shard-2",100004:"quarkchain-mainnet-shard-3",100005:"quarkchain-mainnet-shard-4",100006:"quarkchain-mainnet-shard-5",100007:"quarkchain-mainnet-shard-6",100008:"quarkchain-mainnet-shard-7",100009:"vechain",100010:"vechain-testnet",100011:"quarkchain-l2-mainnet",101010:"global-trust-network",102031:"creditcoin-testnet",103090:"crystaleum",103454:"masa-testnet",104566:"kaspaclassic-mainnet",105105:"stratis-mainnet",108801:"brochain-mainnet",11e4:"quarkchain-devnet-root",110001:"quarkchain-devnet-shard-0",110002:"quarkchain-devnet-shard-1",110003:"quarkchain-devnet-shard-2",110004:"quarkchain-devnet-shard-3",110005:"quarkchain-devnet-shard-4",110006:"quarkchain-devnet-shard-5",110007:"quarkchain-devnet-shard-6",110008:"quarkchain-devnet-shard-7",110011:"quarkchain-l2-testnet",110110:"mars-credit",111e3:"siberium-test-network",111111:"siberium-network",111188:"re.al",112358:"metachain-one-mainnet",119139:"metadap-enterprise-testnet",123321:"gemchain",123456:"adil-devnet",128123:"etherlink-testnet",131313:"odyssey-chain-(testnet)",131419:"etnd-chain-mainnets",132902:"form-testnet",141319:"magape-testnet",142857:"icplaza-mainnet",161212:"playfi-mainnet",165279:"eclat-mainnet",167e3:"taiko-mainnet",167008:"taiko-katla-l2",167009:"taiko-hekla-l2",175177:"chronicle---lit-protocol-testnet",175188:"chronicle-yellowstone---lit-protocol-testnet",188710:"bitica-chain-mainnet",188881:"condor-test-network",192940:"mind-network-testnet",199991:"mazze-testnet",2e5:"xfair.ai-testnet",200101:"milkomeda-c1-testnet",200202:"milkomeda-a1-testnet",200625:"akroma",200810:"bitlayer-testnet",200901:"bitlayer-mainnet",201018:"alaya-mainnet",201030:"alaya-dev-testnet",201804:"mythical-chain",202020:"decimal-smart-chain-testnet",202212:"x1-devnet",202401:"ymtech-besu-testnet",202624:"jellie",204005:"x1-network",205205:"auroria-testnet",210049:"gitagi-atlas-testnet",210425:"platon-mainnet",220315:"mas-mainnet",221230:"reapchain-mainnet",221231:"reapchain-testnet",222222:"hydradx",222555:"deepl-mainnet",222666:"deepl-testnet",224168:"taf-eco-chain-mainnet",224422:"conet-sebolia-testnet",224433:"conet-holesky",229772:"abyss-protocol",230315:"hashkey-chain-testnet(discard)",234666:"haymo-testnet",240515:"orange-chain-testnet",246529:"artis-sigma1",246785:"artis-testnet-tau1",247253:"saakuru-testnet",256256:"cmp-mainnet",262371:"eclat-testnet",266256:"gear-zero-network-testnet",271271:"egoncoin-testnet",281121:"social-smart-chain-mainnet",282828:"zillion-sepolia-testnet",292003:"cipherem-testnet",309075:"one-world-chain-mainnet",313313:"saharaai-testnet",314159:"filecoin---calibration-testnet",322202:"parex-mainnet",323213:"bloom-genesis-testnet",327126:"waba-chain-testnet",328527:"nal-mainnet",330844:"ttcoin-smart-chain-mainnet",333313:"bloom-genesis-mainnet",333331:"aves-testnet",333333:"nativ3-testnet",333666:"oone-chain-testnet",333777:"oone-chain-devnet",333888:"polis-testnet",333999:"polis-mainnet",336655:"upchain-testnet",336666:"upchain-mainnet",355110:"bitfinity-network-mainnet",355113:"bitfinity-network-testnet",360890:"lavita-mainnet",363636:"digit-soul-smart-chain-2",373737:"hapchain-testnet",381931:"metal-c-chain",381932:"metal-tahoe-c-chain",404040:"tipboxcoin-mainnet",413413:"aie-testnet",420420:"kekchain",420666:"kekchain-(kektest)",420692:"alterium-l2-testnet",421611:"arbitrum-rinkeby",421613:"arbitrum-goerli",421614:"arbitrum-sepolia",424242:"fastex-chain-testnet",431140:"markr-go",432201:"dexalot-subnet-testnet",432204:"dexalot-subnet",444444:"syndr-l3-sepolia",444900:"weelink-testnet",471100:"patex-sepolia-testnet",473861:"ultra-pro-mainnet",474142:"openchain-mainnet",486487:"gobbl-testnet",49e4:"autonomys-testnet-nova-domain",504441:"playdapp-network",512512:"cmp-testnet",513100:"dischain",526916:"docoin-community-chain",534351:"scroll-sepolia-testnet",534352:"scroll",534849:"shinarium-beta",535037:"beaneco-smartchain",552981:"one-world-chain-testnet",555555:"pentagon-testnet",555666:"eclipse-testnet",622277:"hypra-mainnet",622463:"atlas",641230:"bear-network-chain-mainnet",651940:"all-mainnet",656476:"open-campus-codex",660279:"xai-mainnet",666666:"vision---vpioneer-test-chain",666888:"hela-official-runtime-testnet",686868:"won-network",696969:"galadriel-devnet",710420:"tiltyard-mainnet-subnet",713715:"sei-devnet",721529:"eram-mainnet",743111:"hemi-sepolia",751230:"bear-network-chain-testnet",752024:"ternoa-testnet",761412:"miexs-smartchain",764984:"lamina1-testnet",767368:"lamina1-identity-testnet",776877:"modularium",800001:"octaspace",808080:"biz-smart-chain-testnet",808813:"bob-sepolia",810180:"zklink-nova-mainnet",810181:"zklink-nova-sepolia-testnet",810182:"zklink-nova-goerli-testnet",820522:"tsc-testnet",827431:"curve-mainnet",839320:"prm-testnet",84e4:"runevm-testnet",846e3:"4goodnetwork",855456:"dodao",879151:"blocx-mainnet",888882:"rexx-mainnet",888888:"vision---mainnet",9e5:"posichain-mainnet-shard-0",91e4:"posichain-testnet-shard-0",912559:"astria-evm-dusknet",92e4:"posichain-devnet-shard-0",920001:"posichain-devnet-shard-1",923018:"fncy-testnet",955081:"jono12-subnet",955305:"eluvio-content-fabric",978657:"treasure-ruby",984122:"forma",984123:"forma-sketchpad",988207:"ecrox-chain-mainnet",998899:"supernet-testnet",999999:"amchain",1100789:"netmind-chain-testnet",1127469:"tiltyard-subnet",1234567:"sharecle-mainnet",1261120:"zkatana",1313114:"etho-protocol",1313500:"xerom",1337702:"kintsugi",1337802:"kiln",1337803:"zhejiang",1398243:"automata-testnet",1612127:"playfi-albireo-testnet",1637450:"xterio-testnet",1731313:"turkey-demo-dev",2021398:"debank-testnet",2099156:"plian-mainnet-main",2206132:"platon-dev-testnet2",2611555:"dpu-chain",2702128:"xterio-chain",3132023:"saharaai-network",3141592:"filecoin---butterfly-testnet",3397901:"funki-sepolia-sandbox",3441005:"manta-pacific-testnet",3441006:"manta-pacific-sepolia-testnet",4000003:"altlayer-zero-gas-network",4281033:"worlds-caldera",4444444:"altar-testnet",4457845:"zero-testnet-(sepolia)",5112023:"numblock-chain",5167003:"mxc-wannsee-zkevm-testnet",5167004:"moonchain-geneva-testnet",5201420:"electroneum-testnet",5318008:"reactive-kopli",5555555:"imversed-mainnet",5555558:"imversed-testnet",6038361:"astar-zkyoto",6666665:"safe(anwang)-mainnet",6666666:"safe(anwang)-testnet",7225878:"saakuru-mainnet",7355310:"openvessel",7668378:"ql1-testnet",7762959:"musicoin",7777777:"zora",8007736:"plian-mainnet-subchain-1",8008135:"fhenix-helium",8080808:"hokum",8601152:"waterfall-8-test-network",8794598:"hapchain",8888881:"quarix-testnet",8888888:"quarix",9322252:"xcap",9322253:"milvine",9999999:"fluence",10067275:"plian-testnet-subchain-1",10101010:"soverun-mainnet",10241024:"alienx-mainnet",10241025:"alienx-hal-testnet",11145513:"blessnet-sepolia",11155111:"sepolia",11155420:"op-sepolia-testnet",12052024:"memento-testnet",12227332:"neox-testnet-t4",13068200:"coti-devnet",13371337:"pepchain-churchill",14288640:"anduschain-mainnet",16658437:"plian-testnet-main",17000920:"lambda-chain-testnet",18071918:"mande-network-mainnet",18289463:"iolite",19850818:"deepbrainchain-testnet",19880818:"deepbrainchain-mainnet",20180427:"stability-testnet",20180430:"smartmesh-mainnet",20181205:"quarkblockchain",20201022:"pego-network",20230825:"vcity-testnet",20240324:"debank-sepolia-testnet",20240603:"dbk-chain",20241133:"swan-proxima-testnet",20482050:"hokum-testnet",22052002:"excelon-mainnet",27082017:"excoincial-chain-volta-testnet",27082022:"excoincial-chain-mainnet",28122024:"ancient8-testnet",28945486:"auxilium-network-mainnet",29032022:"flachain-mainnet",31415926:"filecoin---local-testnet",35855456:"joys-digital-mainnet",37084624:"skale-nebula-hub-testnet",39916801:"kingdom-chain",43214913:"maistestsubnet",52164803:"fluence-testnet",61717561:"aquachain",65010003:"autonity-bakerloo-(yamuna)-testnet",65100003:"autonity-piccadilly-(yamuna)-testnet",68840142:"frame-testnet",77787778:"0xhash-testnet",79479957:"sx-toronto-rollup",88558801:"backstop-testnet",88888888:"t.e.a.m-blockchain",94204209:"polygon-blackberry",99415706:"joys-digital-testnet",1e8:"ethos",108160679:"oraichain-mainnet",111557560:"cyber-testnet",123420111:"op-celestia-raspberry",161221135:"plume-testnet",168587773:"blast-sepolia-testnet",192837465:"gather-mainnet-network",222000222:"kanazawa",245022926:"neon-evm-devnet",245022929:"neon-evm-devnet-rollup",245022934:"neon-evm-mainnet",278611351:"razor-skale-chain",311752642:"oneledger-mainnet",328527624:"nal-sepolia-testnet",333000333:"meld",356256156:"gather-testnet-network",476462898:"skopje-testnet",486217935:"gather-devnet-network",531050104:"sophon-testnet",666666666:"degen-chain",888888888:"ancient8",889910245:"ptcescan-testnet",889910246:"ptcescan-mainnet",974399131:"skale-calypso-hub-testnet",999999999:"zora-sepolia-testnet",1020352220:"skale-titan-hub-testnet",1122334455:"ipos-network",1146703430:"cyberdecknet",1273227453:"human-protocol",1313161554:"aurora-mainnet",1313161555:"aurora-testnet",1313161556:"aurora-betanet",1313161560:"powergold",1350216234:"skale-titan-hub",1351057110:"chaos-(skale-testnet)",1380012617:"rari-chain-mainnet",1380996178:"raptorchain",1444673419:"skale-europa-hub-testnet",1482601649:"skale-nebula-hub",1511670449:"gpt-mainnet",1564830818:"skale-calypso-hub",16666e5:"harmony-mainnet-shard-0",1666600001:"harmony-mainnet-shard-1",16667e5:"harmony-testnet-shard-0",1666700001:"harmony-testnet-shard-1",16669e5:"harmony-devnet-shard-0",1666900001:"harmony-devnet-shard-1",1802203764:"kakarot-sepolia",1903648807:"gemuchain-testnet",1918988905:"rari-chain-testnet",2021121117:"datahopper",2046399126:"skale-europa-hub",3125659152:"pirl",4216137055:"oneledger-testnet-frankenstein",11297108109:"palm",11297108099:"palm-testnet",28872323069:"gitswarm-test-network",37714555429:"xai-testnet-v2",88153591557:"arbitrum-blueberry",107107114116:"kakarot-sepolia-deprecated",111222333444:"alphabet-mainnet",123420000220:"fluence-stage",197710212030:"ntity-mainnet",197710212031:"haradev-testnet",202402181627:"gm-network-testnet",383414847825:"zeniq",666301171999:"pdc-mainnet",6022140761023:"molereum-network",2713017997578e3:"dchain-testnet",2716446429837e3:"dchain"};var Xs={1:[],2:[],3:["http://fauceth.komputing.org?chain=3&address=${ADDRESS}","https://faucet.ropsten.be?${ADDRESS}"],4:["http://fauceth.komputing.org?chain=4&address=${ADDRESS}","https://faucet.rinkeby.io"],5:["http://fauceth.komputing.org?chain=5&address=${ADDRESS}","https://goerli-faucet.slock.it?address=${ADDRESS}","https://faucet.goerli.mudit.blog"],7:[],8:[],9:[],10:[],11:[],12:[],13:[],14:[],15:[],16:["https://faucet.flare.network"],17:[],18:["https://faucet-testnet.thundercore.com"],19:[],20:[],21:["https://esc-faucet.elastos.io/"],22:[],23:[],24:[],25:[],26:[],27:[],29:[],30:[],31:["https://faucet.rsk.co/"],32:[],33:[],34:[],35:[],36:[],37:[],38:[],39:[],40:[],41:["https://app.telos.net/testnet/developers"],42:[],43:["https://docs.darwinia.network/pangolin-testnet-1e9ac8b09e874e8abd6a7f18c096ca6a"],44:[],45:["https://docs.darwinia.network/pangoro-testnet-70cfec5dc9ca42759959ba3803edaec2"],46:[],47:[],48:[],49:[],50:[],51:["https://faucet.apothem.network"],52:[],53:[],54:[],55:[],56:[],57:["https://faucet.syscoin.org"],58:[],60:[],61:[],63:["https://easy.hebeswap.com/#/faucet","https://faucet.mordortest.net"],64:[],65:["https://www.okex.com/drawdex"],66:[],67:[],68:[],69:["http://fauceth.komputing.org?chain=69&address=${ADDRESS}"],70:[],71:["https://faucet.confluxnetwork.org"],72:["https://faucet.dxscan.io"],73:["https://faucet-testnet.fncy.world"],74:[],75:[],76:[],77:[],78:[],79:[],80:[],81:[],82:["https://faucet.meter.io"],83:["https://faucet-warringstakes.meter.io"],84:[],85:["https://www.gatescan.org/testnet/faucet"],86:["https://www.gatescan.org/faucet"],87:[],88:[],89:[],90:[],91:[],92:[],93:[],94:[],95:["https://faucet.camdl.gov.kh/"],96:[],97:["https://testnet.bnbchain.org/faucet-smart"],98:[],99:[],100:["https://gnosisfaucet.com","https://stakely.io/faucet/gnosis-chain-xdai","https://faucet.prussia.dev/xdai"],101:[],102:[],103:[],104:[],105:[],106:[],107:["https://faucet.novanetwork.io"],108:[],109:[],110:[],111:["https://etherlite.org/faucets"],112:[],113:["https://buy.dehvo.com"],114:["https://faucet.flare.network"],117:[],118:[],119:[],120:["http://faucet.nuls.io"],121:[],122:[],123:["https://get.fusespark.io"],124:[],125:["https://faucet.oychain.io"],126:[],127:[],128:[],129:[],131:[],132:[],133:[],134:[],135:["https://faucet.alyxchain.com"],136:[],137:[],138:[],139:[],140:[],141:[],142:[],144:[],145:[],147:[],148:[],150:["https://faucet.sixprotocol.net"],151:[],152:[],153:[],154:[],155:["https://faucet.testnet.tenet.org"],156:[],157:["https://beta.shibariumtech.com/faucet"],158:[],159:[],160:[],161:[],162:["https://discuss.lightstreams.network/t/request-test-tokens"],163:[],164:[],166:[],167:[],168:[],169:[],170:["https://faucet-testnet.hscscan.com/"],172:["https://faucet.latam-blockchain.com"],176:[],178:["https://testnet-faucet.abeychain.com"],179:[],180:[],181:[],184:[],185:[],186:[],187:[],188:[],189:[],190:[],191:[],193:[],195:["https://www.okx.com/xlayer/faucet"],196:[],197:["https://neutrinoschain.com/faucet"],198:[],199:[],200:[],201:[],202:[],204:[],205:[],206:[],207:[],208:[],210:[],211:["http://faucet.freight.sh"],212:["https://faucet.mapprotocol.io"],213:[],214:[],217:[],220:["https://faucet.scalind.com"],221:[],223:[],224:["https://faucet.vrd.network"],225:[],226:[],228:[],230:[],233:[],234:["https://protojumbo.jumbochain.org/faucet-smart"],236:["https://faucet.deamchain.com"],242:[],246:[],248:[],250:[],252:[],254:[],255:[],256:["https://scan-testnet.hecochain.com/faucet"],258:[],259:[],261:["https://v2.dex.guru/season-pass/faucet"],262:[],266:[],267:["https://testnet.neuraprotocol.io/faucet"],268:[],269:["https://myhpbwallet.com/"],271:[],274:[],278:[],279:[],282:["https://zkevm.cronos.org/faucet"],288:[],291:[],295:[],296:["https://portal.hedera.com"],297:["https://portal.hedera.com"],298:[],300:[],302:[],303:[],305:[],307:["https://faucet.lovely.network"],308:[],309:[],311:["https://faucet.omaxray.com/"],313:[],314:[],321:[],322:["https://faucet-testnet.kcc.network"],323:[],324:[],325:[],326:[],333:[],335:[],336:[],338:["https://cronos.org/faucet"],345:[],360:[],361:[],363:[],364:[],365:[],369:[],371:[],380:[],381:[],385:["https://pipa.lisinski.online"],388:[],395:["https://faucet.testnet.camdl.gov.kh/"],397:[],398:[],399:[],400:["https://faucet.hyperonchain.com"],401:[],404:[],411:[],416:[],418:["https://faucet.lachain.network"],420:[],422:[],424:[],427:[],428:[],434:[],443:[],444:[],456:[],462:[],463:[],480:[],499:[],500:[],501:[],510:[],512:[],513:["https://scan-testnet.acuteangle.com/faucet"],516:[],520:["https://xsc.pub/faucet"],529:[],530:[],534:[],537:[],542:[],545:["https://testnet-faucet.onflow.org"],555:[],558:[],568:["https://faucet.dogechain.dog"],570:["https://rollux.id/faucetapp"],571:[],579:[],592:[],595:[],596:[],597:[],600:[],601:["https://vne.network/rose"],610:["https://devnet-rpc.darwinchain.ai/faucet"],612:[],614:[],624:[],625:[],634:[],646:["https://previewnet-faucet.onflow.org"],647:["https://faucet.toronto.sx.technology"],648:[],653:[],654:[],662:[],666:["https://chain.pixie.xyz/faucet"],667:[],668:[],669:["https://faucet-testnet.juncachain.com"],686:[],690:[],700:[],701:[],707:[],708:["https://faucet.bcsdev.io"],710:[],713:[],719:[],721:[],727:[],730:[],741:["https://faucet.vention.network"],742:[],747:[],766:[],776:["https://faucet.openchain.info/"],777:[],786:[],787:[],788:["https://faucet.aerochain.id/"],789:[],799:["https://faucet.testnet.rupaya.io"],800:["https://faucet.lucidcoin.io"],803:[],808:[],810:["https://www.haven1.org/faucet"],813:[],814:[],818:[],820:[],822:["https://faucet.runic.build"],831:[],841:[],842:[],852:[],859:[],868:[],876:[],877:["https://faucet.dexit.network"],880:[],888:[],898:["https://faucet.maxi.network"],899:[],900:["https://faucet-testnet.garizon.com"],901:["https://faucet-testnet.garizon.com"],902:["https://faucet-testnet.garizon.com"],903:["https://faucet-testnet.garizon.com"],909:[],910:[],911:[],917:["https://faucet.thefirechain.com"],919:["https://sepoliafaucet.com/"],927:[],943:["https://faucet.v4.testnet.pulsechain.com/"],956:[],957:[],963:[],969:[],970:[],971:[],972:[],977:["https://faucet.nepalblockchain.network"],979:[],980:[],985:["https://faucet.metamemo.one/"],987:[],989:[],990:["https://faucet.eliberty.ngo"],995:[],996:[],997:["https://explorer.5ire.network/faucet"],998:[],999:[],1e3:[],1001:["https://faucet.kaia.io"],1003:[],1004:[],1007:[],1008:[],1009:[],1010:[],1011:[],1012:[],1022:[],1023:[],1024:[],1028:[],1030:[],1031:[],1038:["https://faucet.bronos.org"],1039:[],1073:["https://evm-toolkit.evm.testnet.shimmer.network","https://evm-faucet.testnet.shimmer.network"],1075:["https://evm-toolkit.evm.testnet.iotaledger.net"],1079:[],1080:[],1088:[],1089:[],1099:[],1100:[],1101:[],1107:[],1108:[],1111:[],1112:["https://wallet.test.wemix.com/faucet"],1113:[],1115:["https://scan.test.btcs.network/faucet"],1116:[],1117:["https://faucet.dogcoin.network"],1123:[],1130:[],1131:[],1133:["http://tc04.mydefichain.com/faucet"],1135:[],1138:[],1139:[],1140:["https://scan.boka.network/#/Galois/faucet"],1147:["https://faucet.flagscan.xyz"],1149:[],1170:[],1177:[],1188:[],1197:[],1200:[],1201:[],1202:[],1209:[],1210:["https://cuckoo.network/portal/faucet/"],1213:[],1214:[],1221:[],1223:[],1225:[],1227:[],1229:[],1230:[],1231:[],1234:[],1235:[],1243:[],1244:["https://faucet.archiechain.io"],1246:[],1248:[],1252:["https://cicfaucet.com"],1280:[],1284:[],1285:[],1287:[],1288:[],1291:["https://faucet.testnet.swisstronik.com"],1311:[],1313:[],1314:[],1319:[],1320:["https://aia-faucet-testnet.aiachain.org"],1328:["https://atlantic-2.app.sei.io/faucet"],1329:[],1337:[],1338:[],1339:[],1343:[],1353:[],1369:[],1370:[],1377:[],1379:[],1388:[],1392:[],1414:[],1433:[],1440:[],1442:[],1452:[],1453:["https://istanbul-faucet.metachain.dev"],1455:["https://faucet.ctexscan.com"],1456:[],1490:[],1499:[],1501:[],1506:[],1507:[],1515:["https://faucet.beagle.chat/"],1559:[],1570:[],1578:[],1617:[],1618:[],1620:[],1625:[],1648:[],1657:[],1662:[],1663:["https://faucet.horizen.io"],1686:[],1687:[],1688:[],1701:["https://evm.anytype.io/faucet"],1707:[],1708:["https://faucet.blockchain.or.th"],1717:[],1718:[],1729:[],1740:[],1750:[],1773:[],1777:[],1789:[],1804:["https://github.com/ethereum-pocr/kerleano/blob/main/docs/faucet.md"],1807:["https://analogfaucet.com"],1811:[],1818:[],1819:["https://faucet.cube.network"],1821:[],1856:[],1875:[],1881:[],1890:[],1891:["https://faucet.pegasus.lightlink.io/"],1898:[],1899:[],1904:[],1907:[],1908:["https://faucet.bitcichain.com"],1909:[],1911:[],1912:["https://claim-faucet.rubychain.io/"],1918:[],1945:[],1951:[],1953:[],1954:[],1956:[],1961:[],1967:["https://faucet.metatime.com/eleanor"],1969:["https://testnet.scschain.com"],1970:[],1971:[],1972:[],1975:[],1984:[],1985:[],1986:[],1987:[],1992:[],1993:[],1994:[],1995:["https://faucet.edexa.com/"],1996:[],1997:[],1998:["https://faucet.kyotoprotocol.io"],2e3:[],2001:[],2002:[],2004:[],2008:[],2009:[],2013:[],2014:["https://faucet.nowchain.co"],2016:[],2017:["https://telcoin.network/faucet"],2018:[],2019:[],2020:[],2021:[],2022:[],2023:["https://ttaycan-faucet.hupayx.io/"],2024:[],2025:[],2026:[],2031:[],2032:[],2035:[],2037:[],2038:[],2039:[],2040:[],2043:[],2044:[],2045:[],2047:[],2048:[],2049:[],2077:[],2088:[],2100:[],2101:[],2109:[],2112:[],2121:[],2122:[],2124:[],2136:[],2137:[],2138:[],2140:[],2141:[],2151:[],2152:[],2153:[],2154:[],2162:[],2199:["https://multiverse.moonsama.com/faucet"],2202:["https://faucet.antofy.io"],2203:[],2213:[],2221:["https://faucet.kava.io"],2222:[],2223:[],2241:[],2300:[],2306:[],2309:[],2311:["https://developer.litprotocol.com/support/intro"],2323:["https://faucet.somanetwork.io"],2330:[],2331:[],2332:["https://airdrop.somanetwork.io"],2340:["https://app-olympia.atleta.network/faucet"],2342:["https://www.omniaverse.io"],2355:[],2358:[],2370:["https://evm-faucet.nexis.network"],2399:["https://faucet.bombchain-testnet.ankr.com/"],2400:[],2410:[],2415:[],2425:[],2442:[],2458:["https://faucet-testnet.hybridchain.ai"],2468:["https://faucet-testnet.hybridchain.ai"],2484:["https://faucet.uniultra.xyz"],2522:[],2525:[],2559:[],2569:[],2606:[],2611:[],2612:[],2613:["https://testnet-faucet.ezchain.com"],2625:["https://testnet.whitechain.io/faucet"],2648:[],2649:[],2662:[],2710:[],2718:[],2730:[],2731:[],2748:[],2777:[],2810:[],2882:[],2907:[],2911:[],2941:["https://xfaucet.xenonchain.com"],2999:[],3e3:["https://app-faucet.centrality.me"],3001:["https://app-faucet.centrality.me"],3003:[],3011:[],3031:[],3033:[],3068:[],3073:[],3084:[],3100:[],3102:[],3109:[],3110:[],3269:[],3270:["https://faucet.arabianchain.org/"],3306:[],3331:["https://faucet.zcore.cash"],3333:[],3334:[],3335:[],3338:[],3400:[],3424:[],3434:["https://faucet.securechain.ai"],3456:["https://testnet-faucet.layeredge.io"],3490:[],3500:["https://faucet.paribuscan.com"],3501:[],3601:[],3602:[],3630:[],3636:["https://faucet.botanixlabs.dev"],3637:["https://faucet.btxtestchain.com"],3639:[],3645:[],3666:[],3690:[],3693:[],3698:["https://faucet.senjepowersscan.com"],3699:["https://faucet.senjepowersscan.com"],3737:["https://faucet.crossbell.io"],3776:[],3797:[],3799:["https://faucet.tangle.tools"],3885:["zkevm-faucet.thefirechain.com"],3888:[],3889:[],3912:["https://www.dracscan.io/faucet"],3939:[],3966:["https://faucet.dynoscan.io"],3967:["https://faucet.dynoscan.io"],3993:["https://sepoliafaucet.com/"],3999:[],4e3:[],4001:[],4002:["https://faucet.fantom.network"],4003:[],4040:["https://getfaucet.carbonium.network"],4048:[],4058:[],4061:[],4062:[],4078:[],4080:[],4090:["https://faucet.oasis.fastexchain.com"],4096:["https://faucet.bitindi.org"],4099:["https://faucet.bitindi.org"],4102:[],4139:[],4141:["https://faucet.tipboxcoin.net"],4157:[],4162:[],4181:[],4200:[],4201:["https://faucet.testnet.lukso.network"],4202:["https://app.optimism.io/faucet"],4242:[],4243:[],4337:["https://faucet.onbeam.com"],4400:[],4444:["https://gruvin.me/htmlcoin"],4460:[],4488:[],4544:["https://faucet.emoney.network/faucet"],4613:[],4653:[],4689:[],4690:["https://faucet.iotex.io/"],4759:[],4777:[],4801:[],4893:[],4918:[],4919:[],4999:[],5e3:[],5001:["https://faucet.testnet.mantle.xyz"],5002:[],5003:["https://faucet.sepolia.mantle.xyz"],5005:[],5039:[],5040:[],5051:[],5100:[],5101:[],5102:[],5103:[],5104:[],5105:[],5106:[],5112:[],5151:["https://faucet.mechain.tech"],5165:[],5169:[],5177:[],5197:[],5234:[],5315:[],5317:[],5321:[],5333:[],5353:["https://faucet.tritanium.network"],5372:["https://faucet.settlus.io"],5424:[],5439:[],5522:["https://t.me/vexfaucetbot"],5551:[],5555:[],5611:["https://testnet.bnbchain.org/faucet-smart"],5615:["https://faucet.arcturuschain.io"],5616:[],5656:[],5675:[],5678:[],5700:["https://faucet.tanenbaum.io"],5729:[],5758:["https://faucet.satoshichain.io"],5777:[],5845:[],5851:["https://developer.ont.io/"],5858:[],5869:[],6e3:[],6001:[],6065:["http://faucet.tresleches.finance:8080"],6066:[],6102:["https://www.cascadia.foundation/faucet"],6118:[],6119:[],6283:[],6321:["https://aura.faucetme.pro"],6322:[],6363:[],6398:[],6502:[],6550:[],6552:["https://faucet.scolcoin.com"],6565:["https://faucet.foxchain.app"],6626:[],6660:["http://faucet.latestchain.io"],6661:[],6666:["https://faucet.cybascan.io"],6678:[],6688:[],6699:[],6701:[],6779:[],6789:["https://faucet.goldsmartchain.com"],6805:[],6806:["https://faucet.racetestnet.io/"],6868:[],6969:[],6999:[],7e3:[],7001:["https://www.zetachain.com/docs/reference/apps/get-testnet-zeta/"],7007:[],7027:[],7070:[],7077:[],7100:[],7118:[],7171:[],7222:[],7244:["https://faucet.zeuschainscan.io"],7300:[],7331:[],7332:[],7341:[],7484:[],7518:[],7560:[],7575:["https://testnet-faucet.adil-scan.io"],7576:[],7668:[],7672:[],7700:[],7701:[],7771:["https://faucet.bit-rock.io"],7774:[],7775:[],7776:[],7777:[],7778:[],7798:["https://long.hub.openex.network/faucet"],7860:["https://faucet-testnet.maalscan.io/"],7862:[],7863:["https://faucet-new-testnet.maalscan.io/"],7878:["https://faucet.hazlor.com"],7887:[],7895:["https://faucet-athena.ardescan.com/"],7923:[],7924:["https://faucet.mochain.app/"],7979:[],8e3:[],8001:["https://chain-docs.teleport.network/testnet/faucet.html"],8008:[],8029:[],8047:[],8054:[],8080:["https://faucet.liberty10.shardeum.org"],8081:["https://faucet.liberty20.shardeum.org"],8082:["https://faucet-sphinx.shardeum.org/"],8086:[],8087:[],8098:[],8131:["https://faucet.qitmeer.io"],8132:[],8133:[],8134:[],8135:[],8136:[],8181:["https://testnet.beonescan.com/faucet"],8192:[],8194:[],8217:[],8227:[],8272:["https://faucet.blocktonscan.com/"],8285:[],8329:[],8333:[],8387:[],8453:[],8545:[],8654:[],8655:[],8668:[],8723:[],8724:["https://testnet-explorer.wolot.io"],8726:[],8727:[],8732:[],8738:[],8768:["https://faucet.tmychain.org/"],8822:[],8844:["https://app.testnet.hydrachain.org/faucet"],8848:[],8866:[],8869:[],8880:[],8881:[],8882:["https://t.me/unique2faucet_opal_bot"],8883:[],8886:["https://faucet-testnet.avenium.io"],8888:[],8889:[],8890:["https://faucetcoin.orenium.org"],8898:["https://faucet.mmtscan.io/"],8899:[],8911:[],8912:[],8921:[],8922:[],8989:[],8995:["https://faucet.bloxberg.org/"],9e3:["https://faucet.evmos.dev"],9001:[],9007:["https://testnet.shidoscan.com/faucet"],9008:[],9012:["https://t.me/BerylBit"],9024:["https://testnet.nexablockscan.io/faucet"],9025:[],9069:[],9070:[],9100:[],9223:[],9339:["https://faucet.dogcoin.network"],9372:[],9393:[],9395:[],9496:[],9527:["https://robin-faucet.rangersprotocol.com"],9528:["http://faucet.qeasyweb3.com"],9559:["https://faucet.neonlink.io/"],9700:[],9728:[],9768:["https://faucet.mainnetz.io"],9779:[],9789:["https://faucet.testnet.tabichain.com"],9790:[],9792:[],9797:[],9818:["https://faucet.imperiumchain.com/"],9819:["https://faucet.imperiumchain.com/"],9876:["https://faucet.testnet.binarychain.org"],9888:[],9898:[],9911:[],9977:["https://faucet.mindchain.info/"],9980:[],9981:[],9990:[],9996:[],9997:[],9998:[],9999:[],1e4:[],10001:[],10024:[],10081:[],10086:[],10096:[],10101:[],10200:["https://gnosisfaucet.com"],10201:["https://faucet.maxxchain.org"],10222:[],10242:[],10243:["https://faucet.arthera.net"],10248:[],10321:[],10324:["https://faucet.taoevm.io"],10395:[],10507:[],10508:["https://faucet.avax.network/?subnet=num","https://faucet.num.network"],10823:[],10849:[],10850:[],10946:[],10947:["https://faucetpage.quadrans.io"],11011:[],11110:[],11111:["https://faucet.avax.network/?subnet=wagmi"],11115:["https://faucet.astranaut.dev"],11119:[],11124:["https://faucet.triangleplatform.com/abstract/testnet"],11221:[],11227:[],11235:[],11437:[],11501:[],11503:[],11521:[],11612:["https://faucet.sardisnetwork.com"],11822:[],11891:[],12001:["https://faucet.flash.fuse.io"],12009:[],12020:["https://faucet.aternoschain.com"],12051:["https://nft.singularity.gold"],12052:["https://zeroscan.singularity.gold"],12123:["https://faucet.brcchain.io"],12306:["https://test.fibochain.org/faucets"],12321:["https://faucet.blgchain.com"],12324:[],12325:[],12345:["https://faucet.step.network"],12553:[],12715:[],12781:[],12890:[],12898:[],13e3:[],13308:[],13337:["https://faucet.avax.network/?subnet=beam","https://faucet.onbeam.com"],13371:["https://docs.immutable.com/docs/zkEVM/guides/faucet"],13381:[],13396:[],13473:["https://docs.immutable.com/docs/zkEVM/guides/faucet"],13505:[],13600:[],13812:[],14e3:[],14324:["https://faucet.evolveblockchain.io"],14333:["https://faucet.vitruveo.xyz"],14801:["https://faucet.vana.org"],14853:["https://t.me/HumanodeTestnet5FaucetBot"],15003:["https://docs.immutable.com/docs/zkEVM/guides/faucet"],15257:["https://faucet.poodl.org"],15259:[],15430:[],15551:[],15555:["https://faucet.testnet-dev.trust.one/"],15557:[],16e3:[],16001:["https://faucet.metadot.network/"],16116:[],16166:[],16180:[],16350:["https://faucet.incentiv-dev.ankr.network"],16481:[],16507:[],16600:["https://faucet.0g.ai"],16688:[],16718:[],16888:["https://tfaucet.ivarex.com/"],17e3:["https://faucet.holesky.ethpandaops.io","https://holesky-faucet.pk910.de"],17069:[],17071:[],17117:[],17171:["https://faucet.oneg8.network"],17172:[],17180:[],17217:[],17777:[],18e3:[],18122:[],18159:[],18181:["https://faucet.oneg8.network"],18233:[],18686:[],18888:[],18889:[],19011:[],19077:["https://ping.blockxnet.com/blockx-atlantis-testnet/faucet"],19191:["https://ping.blockxnet.com/blockx/faucet"],19224:[],19527:[],19600:[],19845:[],20001:[],20041:[],20073:[],20729:["https://faucet.callisto.network/"],20736:[],20765:[],21004:["https://play.google.com/store/apps/details?id=net.c4ei.fps2"],21133:["https://t.me/c4eiAirdrop"],21223:[],21224:["https://faucet.dcpay.io"],21337:[],21363:[],21816:[],21912:[],22023:[],22040:[],22222:[],22324:["https://faucet.goldxchain.io"],22776:[],23006:["https://faucet.antofy.io"],23118:["https://faucet.opside.network"],23294:[],23295:[],23451:[],23452:[],23888:[],24076:["https://faucet.kymaticscan.online"],24484:[],24734:[],25186:[],25839:["https://faucet.alveytestnet.com"],25888:[],25925:["https://faucet.bitkubchain.com"],26026:["https://testnet.faucet.ferrumnetwork.io"],26482:[],26483:[],26600:[],26863:["http://faucet.oasischain.io"],27181:[],27483:[],27827:[],28516:[],28518:[],28528:[],28882:["https://www.l2faucet.com/boba"],29112:[],29223:[],29536:["https://faucet.kaichain.net"],29548:[],30067:["https://piecenetwork.com/faucet"],30088:[],30103:[],30730:[],30731:[],30732:[],31102:[],31223:[],31224:["https://faucet.cloudtx.finance"],31337:[],31414:["https://faucet.evokescan.org"],31753:[],31754:["https://xchainfaucet.net"],32001:[],32382:[],32520:[],32659:[],32769:[],32990:["https://dev-wallet.zilliqa.com/faucet?network=isolated_server"],33033:[],33101:["https://dev-wallet.zilliqa.com/faucet?network=testnet"],33103:["https://faucet.zq2-prototestnet.zilliqa.com"],33111:["https://curtis.hub.caldera.xyz"],33133:[],33210:[],33333:[],33385:["https://faucet.devnet.zilliqa.com/"],33401:[],33469:["https://faucet.zq2-devnet.zilliqa.com"],33979:[],34443:[],34504:[],35011:[],35441:[],35443:[],38400:[],38401:["https://robin-faucet.rangersprotocol.com"],39656:[],39797:[],39815:[],41455:[],41500:[],42069:[],42072:[],42161:[],42170:[],42220:[],42261:["https://faucet.testnet.oasis.io/"],42262:[],42355:[],42421:["https://faucet.assetchain.org"],42766:[],42793:[],42801:[],42888:[],43110:["http://athfaucet.ava.network//?address=${ADDRESS}"],43111:[],43113:["https://faucet.avax-test.network/"],43114:[],43851:[],44444:[],44445:[],44787:["https://celo.org/developers/faucet","https://cauldron.pretoriaresearchlab.io/alfajores-faucet"],45e3:[],45454:[],45510:["https://faucet.deelance.com"],45513:[],46688:[],47763:[],47803:[],47805:[],48795:[],48899:[],48900:[],49049:[],49088:[],49321:[],49797:[],50001:[],50005:[],50006:[],50021:[],51178:[],51712:["https://faucet.sardisnetwork.com"],52014:[],53277:[],53302:["https://sepoliafaucet.com"],53457:[],53935:[],54211:["https://testedge2.haqq.network"],54321:[],55004:[],55551:["https://photonchain.io/testnet2"],55555:["http://kururu.finance/faucet?chainId=55555"],55556:["http://kururu.finance/faucet?chainId=55556"],55614:[],56026:[],56288:[],56400:[],56789:["https://nova-faucet.velo.org"],56797:[],57e3:["https://rollux.id/faucetapp"],57451:[],58008:[],59140:["https://faucetlink.to/goerli"],59141:[],59144:[],59902:["https://sepolia.faucet.metisdevops.link"],59971:[],6e4:["https://www.thinkiumdev.net/faucet"],60001:["https://www.thinkiumdev.net/faucet"],60002:["https://www.thinkiumdev.net/faucet"],60103:["https://www.thinkiumdev.net/faucet"],60808:[],61022:[],61406:[],61800:[],61803:["http://faucet.etica-stats.org/"],61916:[],62049:[],62050:[],62298:["https://citrea.xyz/bridge"],62320:["https://docs.google.com/forms/d/e/1FAIpQLSdfr1BwUTYepVmmvfVUDRCwALejZ-TUva2YujNpvrEmPAX2pg/viewform","https://cauldron.pretoriaresearchlab.io/baklava-faucet"],62621:[],62831:["https://faucet.avax.network/?subnet=plyr"],62850:[],63e3:[],63001:["https://faucet.tst.ecredits.com"],65349:[],65357:[],65450:[],65536:[],66988:[],67588:[],68770:[],69420:["https://faucet.condrieu.ethdevops.io"],7e4:[],70001:[],70002:[],70103:[],70700:[],71111:[],71393:["https://faucet.nervos.org/"],71401:["https://testnet.bridge.godwoken.io"],71402:[],72778:[],72992:[],73114:[],73115:[],73799:["https://voltafaucet.energyweb.org"],73927:[],75e3:[],75512:[],75513:[],77001:[],77238:["https://faucet.foundryscan.org"],77612:["https://faucet.vention.network"],77677:[],77777:[],78110:[],78281:[],78430:[],78431:[],78432:[],78600:["https://faucet.vanarchain.com"],79879:["https://faucet.goldsmartchain.com"],80001:["https://faucet.polygon.technology/"],80002:["https://faucet.polygon.technology/"],80008:[],80084:["https://bartio.faucet.berachain.com"],80085:["https://artio.faucet.berachain.com"],80096:[],81041:[],81341:[],81342:[],81343:[],81351:[],81352:[],81353:[],81361:[],81362:[],81363:[],81457:[],81720:[],82459:[],83144:["https://xprotocol.org/faucets"],83278:[],83872:[],84531:["https://www.coinbase.com/faucets/base-ethereum-goerli-faucet"],84532:[],84886:[],85449:[],88002:["https://proteusfaucet.nautchain.xyz"],88559:[],88800:[],88817:[],88819:[],88882:["https://spicy-faucet.chiliz.com","https://tatum.io/faucets/chiliz"],88888:["https://spicy-faucet.chiliz.com","https://tatum.io/faucets/chiliz"],90001:[],90210:["https://faucet.beverlyhills.ethdevops.io"],90354:["https://www.campnetwork.xyz/faucet"],91002:["https://faucet.eclipse.builders"],91120:[],91715:[],92001:["https://faucet.lambda.top"],93572:["https://claim.liquidlayer.network"],93747:[],96970:["https://mantis.switch.ch/faucet","https://mantis.kore-technologies.ch/faucet","https://mantis.phoenix-systems.io/faucet","https://mantis.block-spirit.ch/faucet"],97435:[],97531:[],97970:["https://faucet.optimusz7.com"],98881:[],99099:["https://faucet.eliberty.ngo"],99876:[],99998:[],99999:[],1e5:[],100001:[],100002:[],100003:[],100004:[],100005:[],100006:[],100007:[],100008:[],100009:[],100010:["https://faucet.vecha.in"],100011:[],101010:[],102031:[],103090:[],103454:[],104566:[],105105:[],108801:[],11e4:[],110001:[],110002:[],110003:[],110004:[],110005:[],110006:[],110007:[],110008:[],110011:[],110110:[],111e3:[],111111:[],111188:[],112358:[],119139:[],123321:[],123456:[],128123:["https://faucet.etherlink.com"],131313:["https://faucet.dioneprotocol.com/"],131419:[],132902:["https://info.form.network/faucet"],141319:[],142857:[],161212:[],165279:[],167e3:[],167008:[],167009:[],175177:["https://faucet.litprotocol.com"],175188:["https://developer.litprotocol.com/support/intro"],188710:[],188881:["https://faucet.condor.systems"],192940:[],199991:["https://faucet.mazze.io/"],2e5:[],200101:[],200202:[],200625:[],200810:["https://www.bitlayer.org/faucet"],200901:[],201018:[],201030:["https://faucet.alaya.network/faucet/?id=f93426c0887f11eb83b900163e06151c"],201804:[],202020:[],202212:[],202401:[],202624:[],204005:[],205205:["https://auroria.faucet.stratisevm.com"],210049:[],210425:[],220315:[],221230:[],221231:["http://faucet.reapchain.com"],222222:[],222555:[],222666:["https://faucet.deeplnetwork.org"],224168:[],224422:[],224433:[],229772:["https://faucet.abyssprotocol.ai/"],230315:["https://testnet.hashkeychain/faucet"],234666:[],240515:[],246529:[],246785:[],247253:[],256256:[],262371:["https://faucet.eclatscan.com"],266256:[],271271:["https://faucet.egonscan.com"],281121:[],282828:[],292003:[],309075:[],313313:[],314159:["https://faucet.calibration.fildev.network/"],322202:[],323213:["https://faucet.bloomgenesis.com"],327126:[],328527:[],330844:["https://faucet.tscscan.com"],333313:[],333331:[],333333:[],333666:["https://apps-test.adigium.com/faucet"],333777:["https://apps-test.adigium.com/faucet"],333888:["https://faucet.polis.tech"],333999:["https://faucet.polis.tech"],336655:["https://faucet-testnet.uniport.network"],336666:[],355110:[],355113:["https://bitfinity.network/faucet"],360890:[],363636:[],373737:[],381931:[],381932:[],404040:["https://faucet.tipboxcoin.net"],413413:[],420420:[],420666:[],420692:[],421611:["http://fauceth.komputing.org?chain=421611&address=${ADDRESS}"],421613:[],421614:[],424242:[],431140:[],432201:["https://faucet.avax.network/?subnet=dexalot"],432204:[],444444:[],444900:["https://faucet.weelink.gw002.oneitfarm.com"],471100:[],473861:[],474142:[],486487:["https://faucet.gobbl.io"],49e4:[],504441:[],512512:["https://dev.caduceus.foundation/testNetwork"],513100:[],526916:[],534351:[],534352:[],534849:["https://faucet.shinarium.org"],535037:[],552981:["https://faucet.oneworldchain.org"],555555:["https://bridge-testnet.pentagon.games"],555666:[],622277:[],622463:[],641230:[],651940:[],656476:[],660279:[],666666:["https://vpioneerfaucet.visionscan.org"],666888:["https://testnet-faucet.helachain.com"],686868:["https://faucet.wondollars.org"],696969:["https://docs.galadriel.com/faucet"],710420:[],713715:["https://sei-faucet.nima.enterprises","https://sei-evm.faucetme.pro"],721529:[],743111:[],751230:["https://faucet.bearnetwork.net"],752024:["https://faucet.zkevm.ternoa.network"],761412:[],764984:[],767368:[],776877:[],800001:[],808080:[],808813:[],810180:[],810181:[],810182:[],820522:[],827431:[],839320:["https://faucet.prmscan.org"],84e4:["https://faucet.runevm.io/"],846e3:[],855456:[],879151:[],888882:[],888888:[],9e5:[],91e4:["https://faucet.posichain.org/"],912559:["https://faucet.evm.dusk-3.devnet.astria.org/"],92e4:["https://faucet.posichain.org/"],920001:["https://faucet.posichain.org/"],923018:["https://faucet-testnet.fncy.world"],955081:[],955305:[],978657:["https://portal.treasure.lol/faucet"],984122:[],984123:[],988207:[],998899:["https://faucet.chaingames.io"],999999:[],1100789:[],1127469:[],1234567:[],1261120:[],1313114:[],1313500:[],1337702:["http://fauceth.komputing.org?chain=1337702&address=${ADDRESS}","https://faucet.kintsugi.themerge.dev"],1337802:["https://faucet.kiln.themerge.dev","https://kiln-faucet.pk910.de","https://kilnfaucet.com"],1337803:["https://faucet.zhejiang.ethpandaops.io","https://zhejiang-faucet.pk910.de"],1398243:[],1612127:[],1637450:[],1731313:[],2021398:[],2099156:[],2206132:["https://devnet2faucet.platon.network/faucet"],2611555:[],2702128:[],3132023:[],3141592:["https://faucet.butterfly.fildev.network"],3397901:[],3441005:[],3441006:[],4000003:[],4281033:[],4444444:["https://sepoliafaucet.com/"],4457845:[],5112023:[],5167003:[],5167004:[],5201420:[],5318008:["https://dev.reactive.network/docs/kopli-testnet#faucet"],5555555:[],5555558:[],6038361:[],6666665:[],6666666:[],7225878:[],7355310:[],7668378:["https://faucet.qom.one"],7762959:[],7777777:[],8007736:[],8008135:["https://get-helium.fhenix.zone"],8080808:[],8601152:["https://faucet.testnet8.waterfall.network"],8794598:[],8888881:[],8888888:[],9322252:[],9322253:[],9999999:[],10067275:[],10101010:["https://faucet.soverun.com"],10241024:[],10241025:[],11145513:["https://blessnet-sepolia-testnet.hub.caldera.xyz"],11155111:["http://fauceth.komputing.org?chain=11155111&address=${ADDRESS}"],11155420:["https://app.optimism.io/faucet"],12052024:[],12227332:[],13068200:["https://faucet.coti.io"],13371337:[],14288640:[],16658437:[],17000920:[],18071918:[],18289463:[],19850818:[],19880818:[],20180427:[],20180430:[],20181205:[],20201022:[],20230825:[],20240324:[],20240603:[],20241133:[],20482050:[],22052002:[],27082017:["https://faucet.exlscan.com"],27082022:[],28122024:[],28945486:[],29032022:[],31415926:[],35855456:[],37084624:["https://www.sfuelstation.com/"],39916801:[],43214913:[],52164803:[],61717561:["https://aquacha.in/faucet"],65010003:["https://faucet.autonity.org/"],65100003:[],68840142:["https://faucet.triangleplatform.com/frame/testnet"],77787778:[],79479957:["https://faucet.toronto.sx.technology"],88558801:[],88888888:[],94204209:[],99415706:["https://faucet.joys.digital/"],1e8:["https://faucet.ethos.cool"],108160679:[],111557560:[],123420111:[],161221135:[],168587773:["https://faucet.quicknode.com/blast/sepolia"],192837465:[],222000222:[],245022926:["https://neonfaucet.org"],245022929:[],245022934:[],278611351:["https://faucet.razorscan.io/"],311752642:[],328527624:[],333000333:[],356256156:[],476462898:["https://skopje-faucet.gptprotocol.io"],486217935:[],531050104:[],666666666:[],888888888:[],889910245:["https://faucet.ptcscan.io/"],889910246:[],974399131:["https://www.sfuelstation.com/"],999999999:[],1020352220:["https://www.sfuelstation.com/"],1122334455:[],1146703430:[],1273227453:["https://dashboard.humanprotocol.org/faucet"],1313161554:[],1313161555:[],1313161556:[],1313161560:[],1350216234:["https://sfuel.skale.network/"],1351057110:["https://sfuel.skale.network/staging/chaos"],1380012617:[],1380996178:[],1444673419:["https://www.sfuelstation.com/"],1482601649:["https://sfuel.skale.network/"],1511670449:[],1564830818:["https://sfuel.dirtroad.dev"],16666e5:[],1666600001:[],16667e5:["https://faucet.pops.one"],1666700001:["https://faucet.pops.one"],16669e5:[],1666900001:[],1802203764:[],1903648807:["https://faucet.gemuchain.io/"],1918988905:[],2021121117:[],2046399126:["https://ruby.exchange/faucet.html","https://sfuel.mylilius.com/"],3125659152:[],4216137055:["https://frankenstein-faucet.oneledger.network"],11297108109:[],11297108099:[],28872323069:[],37714555429:[],88153591557:[],107107114116:[],111222333444:[],123420000220:[],197710212030:[],197710212031:[],202402181627:[],383414847825:["https://faucet.zeniq.net/"],666301171999:[],6022140761023:[],2713017997578e3:[],2716446429837e3:[]};var ks={1:[{name:"etherscan",url:"https://etherscan.io",standard:"EIP3091"},{name:"blockscout",url:"https://eth.blockscout.com",icon:"blockscout",standard:"EIP3091"},{name:"dexguru",url:"https://ethereum.dex.guru",icon:"dexguru",standard:"EIP3091"}],3:[{name:"etherscan",url:"https://ropsten.etherscan.io",standard:"EIP3091"}],4:[{name:"etherscan-rinkeby",url:"https://rinkeby.etherscan.io",standard:"EIP3091"}],5:[{name:"etherscan-goerli",url:"https://goerli.etherscan.io",standard:"EIP3091"},{name:"blockscout-goerli",url:"https://eth-goerli.blockscout.com",icon:"blockscout",standard:"EIP3091"}],7:[{name:"Thaichain Explorer",url:"https://exp.thaichain.org",standard:"EIP3091"}],8:[{name:"ubiqscan",url:"https://ubiqscan.io",standard:"EIP3091"}],10:[{name:"etherscan",url:"https://optimistic.etherscan.io",standard:"EIP3091"},{name:"blockscout",url:"https://optimism.blockscout.com",icon:"blockscout",standard:"EIP3091"},{name:"dexguru",url:"https://optimism.dex.guru",icon:"dexguru",standard:"EIP3091"}],14:[{name:"blockscout",url:"https://flare-explorer.flare.network",standard:"EIP3091"},{name:"flarescan",url:"https://mainnet.flarescan.com",standard:"EIP3091"}],16:[{name:"blockscout",url:"https://coston-explorer.flare.network",standard:"EIP3091"},{name:"flarescan",url:"https://coston.testnet.flarescan.com",standard:"EIP3091"}],18:[{name:"thundercore-blockscout-testnet",url:"https://explorer-testnet.thundercore.com",standard:"EIP3091"}],19:[{name:"blockscout",url:"https://songbird-explorer.flare.network",standard:"EIP3091"},{name:"flarescan",url:"https://songbird.flarescan.com",standard:"EIP3091"}],20:[{name:"elastos esc explorer",url:"https://esc.elastos.io",standard:"EIP3091"}],21:[{name:"elastos esc explorer",url:"https://esc-testnet.elastos.io",standard:"EIP3091"}],25:[{name:"Cronos Explorer",url:"https://explorer.cronos.org",standard:"none"}],26:[{name:"Genesis L1 testnet explorer",url:"https://testnet.genesisl1.org",standard:"none"}],27:[{name:"Shiba Explorer",url:"https://exp.shibchain.org",standard:"none"}],29:[{name:"Genesis L1 blockchain explorer",url:"https://explorer.genesisl1.org",standard:"none"}],30:[{name:"Rootstock Explorer",url:"https://explorer.rsk.co",standard:"EIP3091"},{name:"blockscout",url:"https://rootstock.blockscout.com",icon:"blockscout",standard:"EIP3091"}],31:[{name:"RSK Testnet Explorer",url:"https://explorer.testnet.rsk.co",standard:"EIP3091"}],34:[{name:"SecureChain Mainnet",url:"https://explorer.securechain.ai",standard:"EIP3091"}],36:[{name:"dxscan",url:"https://dxscan.io",standard:"EIP3091"}],37:[{name:"XPLA Explorer",url:"https://explorer.xpla.io/mainnet",standard:"EIP3091"}],39:[{icon:"u2u",name:"U2U Explorer",url:"https://u2uscan.xyz",standard:"EIP3091"}],40:[{name:"teloscan",url:"https://teloscan.io",standard:"EIP3091"}],41:[{name:"teloscan",url:"https://testnet.teloscan.io",standard:"EIP3091"}],42:[{name:"Blockscout",url:"https://explorer.execution.mainnet.lukso.network",standard:"EIP3091"}],43:[{name:"subscan",url:"https://pangolin.subscan.io",standard:"EIP3091"}],44:[{name:"blockscout",url:"https://crab-scan.darwinia.network",standard:"EIP3091"}],45:[{name:"subscan",url:"https://pangoro.subscan.io",standard:"none"}],46:[{name:"blockscout",url:"https://explorer.darwinia.network",standard:"EIP3091"}],47:[{name:"Acria IntelliChain-Explorer",url:"https://explorer.acria.ai",standard:"EIP3091"}],48:[{name:"etmpscan",url:"https://etmscan.network",icon:"etmp",standard:"EIP3091"}],49:[{name:"etmp",url:"https://pioneer.etmscan.network",standard:"EIP3091"}],50:[{name:"xdcscan",url:"https://xdcscan.io",icon:"blocksscan",standard:"EIP3091"},{name:"blocksscan",url:"https://xdc.blocksscan.io",icon:"blocksscan",standard:"EIP3091"}],51:[{name:"xdcscan",url:"https://apothem.xinfinscan.com",icon:"blocksscan",standard:"EIP3091"},{name:"blocksscan",url:"https://apothem.blocksscan.io",icon:"blocksscan",standard:"EIP3091"}],52:[{name:"coinexscan",url:"https://www.coinex.net",standard:"none"}],53:[{name:"coinexscan",url:"https://testnet.coinex.net",standard:"none"}],54:[{name:"Belly Scan",url:"https://bellyscan.com",standard:"none"}],55:[{name:"zyxscan",url:"https://zyxscan.com",standard:"none"}],56:[{name:"bscscan",url:"https://bscscan.com",standard:"EIP3091"},{name:"dexguru",url:"https://bnb.dex.guru",icon:"dexguru",standard:"EIP3091"}],57:[{name:"Syscoin Block Explorer",url:"https://explorer.syscoin.org",standard:"EIP3091"}],58:[{name:"explorer",url:"https://explorer.ont.io",standard:"EIP3091"}],60:[{name:"GoChain Explorer",url:"https://explorer.gochain.io",standard:"EIP3091"}],61:[{name:"blockscout-ethereum-classic",url:"https://etc.blockscout.com",standard:"EIP3091"},{name:"etcnetworkinfo-blockscout-ethereum-classic",url:"https://explorer-blockscout.etc-network.info",standard:"none"},{name:"etcnetworkinfo-alethio-ethereum-classic",url:"https://explorer-alethio.etc-network.info",standard:"none"},{name:"etcnetworkinfo-expedition-ethereum-classic",url:"https://explorer-expedition.etc-network.info",standard:"none"},{name:"hebeblock-ethereum-classic",url:"https://etcerscan.com",standard:"EIP3091"},{name:"oklink-ethereum-classic",url:"https://www.oklink.com/etc",standard:"EIP3091"},{name:"tokenview-ethereum-classic",url:"https://etc.tokenview.io",standard:"EIP3091"}],63:[{name:"blockscout-mordor",url:"https://etc-mordor.blockscout.com",standard:"EIP3091"},{name:"etcnetworkinfo-expedition-mordor",url:"https://explorer-expedition.etc-network.info/?network=Ethereum+Classic+at+etc-network.info+GETH+Mordor",standard:"none"}],65:[{name:"OKLink",url:"https://www.oklink.com/okexchain-test",standard:"EIP3091"}],66:[{name:"OKLink",url:"https://www.oklink.com/en/okc",standard:"EIP3091"}],69:[{name:"etherscan",url:"https://kovan-optimistic.etherscan.io",standard:"EIP3091"}],70:[{name:"hooscan",url:"https://www.hooscan.com",standard:"EIP3091"}],71:[{name:"Conflux Scan",url:"https://evmtestnet.confluxscan.net",standard:"none"}],73:[{name:"fncy scan",url:"https://fncyscan.fncy.world",icon:"fncy",standard:"EIP3091"}],74:[{name:"explorer",url:"https://explorer.idchain.one",standard:"EIP3091"}],75:[{name:"DSC Explorer Mainnet",url:"https://explorer.decimalchain.com",icon:"dsc",standard:"EIP3091"}],77:[{name:"blockscout",url:"https://blockscout.com/poa/sokol",icon:"blockscout",standard:"EIP3091"}],79:[{name:"zenith scan",url:"https://scan.zenithchain.co",standard:"EIP3091"}],80:[{name:"GeneChain Scan",url:"https://scan.genechain.io",standard:"EIP3091"}],81:[{name:"Block Explorer",url:"https://explorer.japanopenchain.org",standard:"EIP3091",icon:"joc"}],82:[{name:"Meter Mainnet Scan",url:"https://scan.meter.io",standard:"EIP3091"}],83:[{name:"Meter Testnet Scan",url:"https://scan-warringstakes.meter.io",standard:"EIP3091"}],84:[{name:"Linqto Devnet Explorer",url:"https://explorer.linqto-dev.com",standard:"EIP3091"}],85:[{name:"GateScan",url:"https://www.gatescan.org/testnet",standard:"EIP3091"}],86:[{name:"GateScan",url:"https://www.gatescan.org",standard:"EIP3091"}],87:[{name:"novanetwork",url:"https://explorer.novanetwork.io",standard:"EIP3091"}],90:[{name:"explorer",url:"https://explorer.garizon.com",icon:"garizon",standard:"EIP3091"}],91:[{name:"explorer",url:"https://explorer.garizon.com",icon:"garizon",standard:"EIP3091"}],92:[{name:"explorer",url:"https://explorer.garizon.com",icon:"garizon",standard:"EIP3091"}],93:[{name:"explorer",url:"https://explorer.garizon.com",icon:"garizon",standard:"EIP3091"}],94:[{name:"SwissDLT Explorer",url:"https://explorer.swissdlt.ch",icon:"bcts",standard:"EIP3091"}],95:[{name:"CamDL Block Explorer",url:"https://explorer.camdl.gov.kh",standard:"EIP3091"}],96:[{name:"Bitkub Chain Explorer",url:"https://bkcscan.com",standard:"none",icon:"bkc"}],97:[{name:"bscscan-testnet",url:"https://testnet.bscscan.com",standard:"EIP3091"}],98:[{name:"SIX Scan",url:"https://sixscan.io/sixnet",standard:"none",icon:"six"}],99:[{name:"blockscout",url:"https://blockscout.com/poa/core",icon:"blockscout",standard:"EIP3091"}],100:[{name:"gnosisscan",url:"https://gnosisscan.io",standard:"EIP3091"},{name:"blockscout",url:"https://gnosis.blockscout.com",icon:"blockscout",standard:"EIP3091"},{name:"dexguru",url:"https://gnosis.dex.guru",icon:"dexguru",standard:"EIP3091"}],103:[{name:"Worldland Explorer",url:"https://scan.worldland.foundation",standard:"EIP3091"}],104:[{name:"kaibascan",url:"https://kaibascan.io",icon:"kaibascan",standard:"EIP3091"}],105:[{name:"Web3Games Explorer",url:"https://explorer-devnet.web3games.org",standard:"none"}],106:[{name:"Velas Explorer",url:"https://evmexplorer.velas.com",standard:"EIP3091"}],107:[{name:"nebulatestnet",url:"https://explorer.novanetwork.io",standard:"EIP3091"}],108:[{name:"thundercore-viewblock",url:"https://viewblock.io/thundercore",standard:"EIP3091"}],109:[{name:"shibariumscan",url:"https://www.shibariumscan.io",standard:"none"}],112:[{name:"blockscout",url:"https://coinbit-explorer.chain.sbcrypto.app",icon:"blockscout",standard:"EIP3091"}],113:[{name:"Dehvo Explorer",url:"https://explorer.dehvo.com",standard:"EIP3091"}],114:[{name:"blockscout",url:"https://coston2-explorer.flare.network",standard:"EIP3091"},{name:"flarescan",url:"https://coston2.testnet.flarescan.com",standard:"EIP3091"}],117:[{name:"Uptick Explorer",url:"https://evm-explorer.uptick.network",icon:"uptick",standard:"none"}],118:[{name:"arcology",url:"https://testnet.arcology.network/explorer",standard:"none"}],119:[{name:"enulsscan",url:"https://evmscan.nuls.io",icon:"enuls",standard:"EIP3091"}],120:[{name:"enulsscan",url:"https://beta.evmscan.nuls.io",icon:"enuls",standard:"EIP3091"}],121:[{name:"realscan",url:"https://rclscan.com",standard:"EIP3091"}],122:[{name:"blockscout",url:"https://explorer.fuse.io",icon:"blockscout",standard:"EIP3091"}],125:[{name:"OYchain Testnet Explorer",url:"https://explorer.testnet.oychain.io",standard:"none"}],126:[{name:"OYchain Mainnet Explorer",url:"https://explorer.oychain.io",standard:"none"}],128:[{name:"hecoinfo",url:"https://hecoinfo.com",standard:"EIP3091"}],129:[{name:"Innovator Explorer",url:"https://evm.innovatorchain.com",icon:"blockscout",standard:"none"}],131:[{name:"blockscout",url:"https://tokioscan-v2.engram.tech",icon:"engram",standard:"EIP3091"}],133:[{name:"blockscout",url:"https://hashkeychain-testnet-explorer.alt.technology",icon:"blockscout",standard:"EIP3091"}],134:[{name:"blockscout",url:"https://blockscout.bellecour.iex.ec",icon:"blockscout",standard:"EIP3091"}],135:[{name:"alyx testnet scan",url:"https://testnet.alyxscan.com",standard:"EIP3091"}],136:[{name:"Deamchain Block Explorer",url:"https://scan.deamchain.com",standard:"EIP3091",icon:"deam"}],137:[{name:"polygonscan",url:"https://polygonscan.com",standard:"EIP3091"},{name:"dexguru",url:"https://polygon.dex.guru",icon:"dexguru",standard:"EIP3091"}],138:[{name:"Blockscout Explorer",url:"https://blockscout.defi-oracle.io",standard:"none"},{name:"Quorum Explorer",url:"https://explorer.defi-oracle.io",standard:"none"}],139:[{name:"wikiwoop",url:"https://explorer.wikiwoop.com",standard:"EIP3091"}],141:[{name:"Belly Scan",url:"https://testnet.bellyscan.com",standard:"none"}],144:[{name:"Phiscan",url:"https://phiscan.com",icon:"phi",standard:"none"}],145:[{name:"blockscout",url:"https://explorer.soraai.bot",icon:"blockscout",standard:"EIP3091"}],147:[{name:"Flag Mainnet Explorer",url:"https://flagscan.xyz",standard:"EIP3091"}],148:[{name:"explorer",url:"https://explorer.evm.shimmer.network",icon:"shimmerevm",standard:"EIP3091"}],150:[{name:"SIX Scan fivenet",url:"https://sixscan.io/fivenet",standard:"none",icon:"six"}],153:[{name:"Redbelly Network Testnet Explorer",url:"https://explorer.testnet.redbelly.network",standard:"none"}],155:[{name:"TenetScan Testnet",url:"https://testnet.tenetscan.io",icon:"tenet",standard:"EIP3091"}],156:[{name:"OEScan explorer",url:"https://testnet.oescan.io",standard:"EIP3091"}],157:[{name:"puppyscan",url:"https://puppyscan.shib.io",standard:"none"}],158:[{name:"Rbascan Explorer",url:"https://rbascan.com",standard:"EIP3091"}],159:[{name:"Rbascan Testnet Explorer",url:"https://testnet.rbascan.com",standard:"EIP3091"}],161:[{name:"blockscout - evascan",url:"https://testnet.evascan.io",standard:"EIP3091"}],164:[{name:"Omni EVM and cross-chain Explorer",url:"https://omega.omniscan.network",standard:"EIP3091"}],167:[{name:"atoshiscan",url:"https://scan.atoverse.info",standard:"EIP3091"}],168:[{name:"AIOZ Network Explorer",url:"https://explorer.aioz.network",standard:"EIP3091"}],169:[{name:"manta-pacific Explorer",url:"https://pacific-explorer.manta.network",standard:"EIP3091"}],176:[{name:"dcscan",url:"https://exp.dcnetio.cloud",standard:"none"}],178:[{name:"abeyscan-testnet",url:"https://testnet.abeyscan.com",standard:"EIP3091"}],179:[{name:"abeyscan",url:"https://abeyscan.com",standard:"EIP3091"}],180:[{name:"AME Scan",url:"https://amescan.io",standard:"EIP3091"}],184:[{name:"Dojima Testnet Explorer",url:"https://explorer-test.dojima.network",standard:"none"}],185:[{name:"blockscout",url:"https://explorer.mintchain.io",icon:"mint",standard:"EIP3091"}],186:[{name:"seeleview",url:"https://seeleview.net",standard:"none"}],187:[{name:"Dojima Explorer",url:"https://explorer.dojima.network",standard:"none"}],188:[{name:"Blockmeta",url:"https://bmc.blockmeta.com",standard:"none"}],189:[{name:"Blockmeta",url:"https://bmctestnet.blockmeta.com",standard:"none"}],190:[{name:"bbqchain-explorer",url:"https://bbqchain-exp.commudao.xyz",standard:"EIP3091"}],193:[{name:"cemscan",url:"https://cemscan.com",standard:"EIP3091"}],195:[{name:"OKLink",url:"https://www.oklink.com/xlayer-test",standard:"EIP3091"}],196:[{name:"OKLink",url:"https://www.oklink.com/xlayer",standard:"EIP3091"}],197:[{name:"blockscout",url:"https://testnet.neutrinoschain.com",standard:"EIP3091"}],198:[{name:"Bitchain Scan",url:"https://explorer.bitchain.biz",standard:"EIP3091"}],199:[{name:"BitTorrent Chain Explorer",url:"https://bttcscan.com",standard:"EIP3091"}],200:[{name:"blockscout",url:"https://blockscout.com/xdai/arbitrum",standard:"EIP3091"}],201:[{name:"moac testnet explorer",url:"https://testnet.moac.io",standard:"none"}],202:[{name:"Edgeless Explorer",url:"https://testnet.explorer.edgeless.network",standard:"EIP3091"}],204:[{name:"opbnbscan",url:"https://mainnet.opbnbscan.com",standard:"EIP3091"}],206:[{name:"VinuScan Testnet",url:"https://testnet.vinuscan.com",icon:"vinuscan-testnet",standard:"none"}],207:[{name:"VinuScan",url:"https://vinuscan.com",icon:"vinuscan",standard:"none"}],210:[{name:"Bitnet Explorer",url:"https://btnscan.com",standard:"EIP3091"}],212:[{name:"maposcan",url:"https://testnet.maposcan.io",standard:"EIP3091"}],213:[{name:"B2 Hub Mainnet Explorer",url:"https://hub-explorer.bsquared.network",icon:"bsquare",standard:"EIP3091"}],214:[{name:"shinascan",url:"https://shinascan.shinarium.org",standard:"EIP3091"}],217:[{name:"siriusnet explorer",url:"https://scan.siriusnet.io",standard:"none"}],220:[{name:"scalind",url:"https://explorer-sepolia.scalind.com",standard:"EIP3091"}],221:[{name:"BlockEx Scan",url:"http://explorer.blockex.biz",standard:"EIP3091"}],223:[{name:"blockscout",url:"https://explorer.bsquared.network",icon:"bsquare",standard:"EIP3091"}],224:[{name:"Viridis Testnet",url:"https://testnet.vrd.network",standard:"EIP3091"}],225:[{name:"blockscout",url:"https://scan.lachain.io",standard:"EIP3091"}],226:[{name:"blockscout",url:"https://scan-test.lachain.io",standard:"EIP3091"}],230:[{name:"SwapDEX",url:"https://evm.swapdex.network",standard:"none"}],233:[{name:"Ethernity Testnet Explorer",url:"https://testnet.ernscan.io",standard:"EIP3091"}],234:[{name:"ProtoJumbo",url:"https://protojumbo.jumbochain.org",standard:"EIP3091"}],236:[{name:"Deamchain Testnet Explorer",url:"https://testnet-scan.deamchain.com",standard:"EIP3091",icon:"deam"}],242:[{name:"plgscan",url:"https://www.plgscan.com",standard:"EIP3091"}],246:[{name:"blockscout",url:"https://explorer.energyweb.org",standard:"none"}],248:[{name:"blockscout",url:"https://explorer.oasys.games",standard:"EIP3091"}],250:[{name:"ftmscan",url:"https://ftmscan.com",icon:"ftmscan",standard:"EIP3091"},{name:"dexguru",url:"https://fantom.dex.guru",icon:"dexguru",standard:"EIP3091"}],252:[{name:"fraxscan",url:"https://fraxscan.com",standard:"EIP3091"}],254:[{name:"Swanchain Explorer",url:"https://swanscan.io",standard:"EIP3091"}],255:[{name:"blockscout",url:"https://blockscout.kroma.network",icon:"blockscout",standard:"EIP3091"}],259:[{name:"Neon Blockchain Explorer",url:"https://scan.neonlink.io",standard:"EIP3091",icon:"neonlink"}],261:[{name:"guruscan",url:"https://scan.gurunetwork.ai",standard:"EIP3091"}],262:[{name:"Surnet Explorer",url:"https://explorer.surnet.org",icon:"SUR",standard:"EIP3091"}],267:[{name:"ankrscan-neura",url:"https://testnet.explorer.neuraprotocol.io",icon:"neura",standard:"EIP3091"},{name:"blockscout",url:"https://explorer.neura-testnet.ankr.com",icon:"blockscout",standard:"EIP3091"}],269:[{name:"hscan",url:"https://hscan.org",standard:"EIP3091"}],271:[{name:"EgonCoin Mainnet",url:"https://egonscan.com",standard:"EIP3091"}],274:[{name:"LaChain Explorer",url:"https://explorer.lachain.network",standard:"EIP3091"}],282:[{name:"Cronos zkEVM Testnet Explorer",url:"https://explorer.zkevm.cronos.org/testnet",standard:"none"}],288:[{name:"Bobascan",url:"https://bobascan.com",standard:"none"}],291:[{name:"orderlyscout",url:"https://explorer.orderly.network",icon:"blockscout",standard:"EIP3091"}],295:[{name:"HashScan",url:"https://hashscan.io/mainnet",standard:"EIP3091"},{name:"Arkhia Explorer",url:"https://explorer.arkhia.io",standard:"none"},{name:"DragonGlass",url:"https://app.dragonglass.me",standard:"none"},{name:"Hedera Explorer",url:"https://hederaexplorer.io",standard:"none"},{name:"Ledger Works Explore",url:"https://explore.lworks.io",standard:"none"}],296:[{name:"HashScan",url:"https://hashscan.io/testnet",standard:"EIP3091"},{name:"Arkhia Explorer",url:"https://explorer.arkhia.io",standard:"none"},{name:"DragonGlass",url:"https://app.dragonglass.me",standard:"none"},{name:"Hedera Explorer",url:"https://hederaexplorer.io",standard:"none"},{name:"Ledger Works Explore",url:"https://explore.lworks.io",standard:"none"}],297:[{name:"HashScan",url:"https://hashscan.io/previewnet",standard:"EIP3091"}],300:[{name:"zkSync Block Explorer",url:"https://sepolia.explorer.zksync.io",icon:"zksync-era",standard:"EIP3091"}],302:[{name:"zkCandy Block Explorer",url:"https://sepolia.explorer.zkcandy.io",icon:"zkcandy",standard:"EIP3091"}],303:[{name:"neuroscan",url:"https://testnet.ncnscan.com",standard:"EIP3091"}],305:[{name:"blockscout",url:"https://explorer.zksats.io",icon:"zksats",standard:"EIP3091"}],307:[{name:"Lovely Network Testnet",url:"https://tscan.lovely.network",standard:"EIP3091"}],308:[{name:"furthscan",url:"http://furthscan.com",standard:"EIP3091"}],309:[{name:"wyzth",url:"http://24.199.108.65:4000",icon:"wyzth",standard:"EIP3091"}],311:[{name:"Omax Chain Explorer",url:"https://omaxray.com",icon:"omaxray",standard:"EIP3091"}],313:[{name:"neuroscan",url:"https://ncnscan.com",standard:"EIP3091"}],314:[{name:"Filfox",url:"https://filfox.info/en",standard:"none"},{name:"Beryx",url:"https://beryx.zondax.ch",standard:"none"},{name:"Glif Explorer",url:"https://explorer.glif.io",standard:"EIP3091"},{name:"Dev.storage",url:"https://dev.storage",standard:"none"},{name:"Filscan",url:"https://filscan.io",standard:"none"},{name:"Filscout",url:"https://filscout.io/en",standard:"none"}],321:[{name:"KCC Explorer",url:"https://explorer.kcc.io/en",standard:"EIP3091"}],322:[{name:"kcc-scan-testnet",url:"https://scan-testnet.kcc.network",standard:"EIP3091"}],323:[{name:"Blockscout",url:"https://explorer.cosvm.net",icon:"blockscout",standard:"EIP3091"}],324:[{name:"zkSync Era Block Explorer",url:"https://explorer.zksync.io",icon:"zksync-era",standard:"EIP3091"}],333:[{name:"w3q-mainnet",url:"https://explorer.mainnet.web3q.io",standard:"EIP3091"}],335:[{name:"ethernal",url:"https://explorer-test.dfkchain.com",icon:"ethereum",standard:"none"}],336:[{name:"subscan",url:"https://shiden.subscan.io",standard:"none",icon:"subscan"},{name:"blockscout",url:"https://blockscout.com/shiden",icon:"blockscout",standard:"EIP3091"}],338:[{name:"Cronos Testnet Explorer",url:"https://explorer.cronos.org/testnet",standard:"none"}],345:[{name:"tscscan",url:"https://www.tscscan.io",icon:"netxscan",standard:"none"}],361:[{name:"Theta Mainnet Explorer",url:"https://explorer.thetatoken.org",standard:"EIP3091"}],363:[{name:"Theta Sapphire Testnet Explorer",url:"https://guardian-testnet-sapphire-explorer.thetatoken.org",standard:"EIP3091"}],364:[{name:"Theta Amber Testnet Explorer",url:"https://guardian-testnet-amber-explorer.thetatoken.org",standard:"EIP3091"}],365:[{name:"Theta Testnet Explorer",url:"https://testnet-explorer.thetatoken.org",standard:"EIP3091"}],369:[{name:"blockscout",url:"https://scan.pulsechain.com",icon:"blockscout",standard:"EIP3091"},{name:"otterscan",url:"https://otter.pulsechain.com",standard:"EIP3091"}],371:[{name:"blockscout",url:"https://explorer-testnet.theconsta.com",standard:"EIP3091"}],380:[{name:"ZKAmoeba Test Explorer",url:"https://testnetexplorer.zkamoeba.com",icon:"zkamoeba-micro",standard:"EIP3091"}],381:[{name:"ZKAmoeba Explorer",url:"https://explorer.zkamoeba.com",icon:"zkamoeba-micro",standard:"EIP3091"}],388:[{name:"Cronos zkEVM (Mainnet) Chain Explorer",url:"https://explorer.zkevm.cronos.org",standard:"none"}],395:[{name:"CamDL Testnet Explorer",url:"https://explorer.testnet.camdl.gov.kh",standard:"EIP3091"}],397:[{name:"Near Blocks",url:"https://nearblocks.io",standard:"none"}],398:[{name:"Near blocks",url:"https://testnet.nearblocks.io",standard:"none"}],399:[{name:"N3scan",url:"https://scan.nativ3.network",standard:"EIP3091"}],400:[{name:"blockscout",url:"https://testnet.hyperonchain.com",icon:"hyperonchain",standard:"EIP3091"}],401:[{name:"OZONE Scan",url:"https://testnet.ozonescan.io",standard:"EIP3091"}],404:[{name:"Syndr L3 Explorer",url:"https://explorer.syndr.com",standard:"EIP3091"}],411:[{name:"pepechain explorer",url:"https://explorer.pepe-chain.vip",standard:"EIP3091"}],416:[{name:"SX Network Explorer",url:"https://explorer.sx.technology",standard:"EIP3091"}],418:[{name:"LaTestnet Explorer",url:"https://testexplorer.lachain.network",standard:"EIP3091"}],420:[{name:"blockscout",url:"https://optimism-goerli.blockscout.com",icon:"blockscout",standard:"EIP3091"}],422:[{name:"Viridis Mainnet",url:"https://explorer.vrd.network",standard:"EIP3091"}],424:[{name:"blockscout",url:"https://explorer.publicgoods.network",icon:"blockscout",standard:"EIP3091"}],427:[{name:"Zeeth Explorer",url:"https://explorer.zeeth.io",standard:"none"}],428:[{name:"Geso Verse Explorer",url:"https://explorer.verse.gesoten.com",standard:"EIP3091"}],434:[{name:"Boyaa explorer",url:"https://explorer.mainnet.boyaa.network",standard:"EIP3091"}],443:[{name:"Ten Sepolia Rollup Explorer",url:"https://tenscan.io",standard:"none"}],444:[{name:"Synapse Chain Sepolia",url:"https://sepolia.synapsescan.com",standard:"EIP3091"}],456:[{name:"ARZIO Scan",url:"https://scan.arzio.co",standard:"EIP3091"}],462:[{name:"AreonScan",url:"https://areonscan.com",standard:"none"}],463:[{name:"AreonScan",url:"https://areonscan.com",standard:"none"}],500:[{name:"blockexplorer",url:"https://suite.camino.network/explorer",standard:"none"}],501:[{name:"blockexplorer",url:"https://suite.camino.network/explorer",standard:"none"}],512:[{name:"aacscan",url:"https://scan.acuteangle.com",standard:"EIP3091"}],513:[{name:"aacscan-testnet",url:"https://scan-testnet.acuteangle.com",standard:"EIP3091"}],520:[{name:"xscscan",url:"https://xscscan.pub",standard:"EIP3091"}],530:[{name:"FunctionX Explorer",url:"https://fx-evm.functionx.io",standard:"EIP3091"}],534:[{name:"candleexplorer",url:"https://candleexplorer.com",standard:"EIP3091"}],537:[{name:"OpTrust explorer",url:"https://scan.optrust.io",icon:"optrust",standard:"none"}],542:[{name:"PAWCHAIN Testnet",url:"https://pawscan.io",standard:"none"}],545:[{name:"FlowScan: Testnet",url:"https://evm-testnet.flowscan.io",standard:"EIP3091"}],555:[{name:"Vela1 Chain Mainnet Explorer",url:"https://exp.velaverse.io",standard:"EIP3091"}],568:[{name:"dogechain testnet explorer",url:"https://explorer-testnet.dogechain.dog",standard:"EIP3091"}],570:[{name:"Rollux Explorer",url:"https://explorer.rollux.com",standard:"EIP3091"}],571:[{name:"MetaExplorer",url:"https://explorer.metatime.com",standard:"EIP3091"}],579:[{name:"filenova explorer",url:"https://scan.filenova.org",icon:"filenova",standard:"none"}],592:[{name:"subscan",url:"https://astar.subscan.io",standard:"none",icon:"subscan"},{name:"blockscout",url:"https://blockscout.com/astar",icon:"blockscout",standard:"EIP3091"}],595:[{name:"blockscout",url:"https://blockscout.mandala.aca-staging.network",standard:"EIP3091"}],596:[{name:"blockscout",url:"https://blockscout.karura-testnet.aca-staging.network",standard:"EIP3091"}],597:[{name:"blockscout",url:"https://blockscout.acala-dev.aca-dev.network",standard:"EIP3091"}],601:[{name:"Vine Explorer",url:"https://vne.network/rose",standard:"none",icon:"vine"}],610:[{name:"Darwin Explorer",url:"https://explorer.darwinchain.ai",icon:"darwin",standard:"none"}],612:[{name:"EIOB Explorer",url:"https://explorer.eiob.xyz",standard:"none"}],614:[{name:"GLQ Explorer",url:"https://explorer.graphlinq.io",standard:"none"}],624:[{name:"Tracehawk",url:"https://explorer.thebinaryholdings.com",standard:"none"}],625:[{name:"Tracehawk",url:"https://explorer.sepolia.thebinaryholdings.com",standard:"none"}],634:[{name:"avoscan",url:"https://avoscan.co",icon:"avocado",standard:"none"}],646:[{name:"EVM on Flow Block Explorer (PreviewNet)",url:"https://eth.flowscan.io",standard:"EIP3091"}],647:[{name:"SX Network Toronto Explorer",url:"https://explorer.toronto.sx.technology",standard:"EIP3091"}],648:[{name:"Endurance Scan",url:"https://explorer.endurance.fusionist.io",standard:"EIP3091"}],653:[{name:"kalichain explorer",url:"https://explorer.kalichain.com",standard:"EIP3091"}],654:[{name:"kalichain explorer",url:"https://explorer.kalichain.com",standard:"EIP3091"}],662:[{name:"ultronsmartchain explorer",url:"https://scan.ultronsmartchain.io",standard:"EIP3091"}],667:[{name:"blockscout",url:"https://arrakis.gorengine.com",icon:"laos",standard:"EIP3091"}],668:[{name:"JuncaScan",url:"https://scan.juncachain.com",standard:"EIP3091"}],669:[{name:"JuncaScan",url:"https://scan-testnet.juncachain.com",standard:"EIP3091"}],686:[{name:"blockscout",url:"https://blockscout.karura.network",standard:"EIP3091"}],690:[{name:"blockscout",url:"https://explorer.redstone.xyz",icon:"blockscout",standard:"EIP3091"}],700:[{name:"starscan",url:"https://avastar.info",standard:"EIP3091"}],701:[{name:"blockscout",url:"https://koi-scan.darwinia.network",standard:"EIP3091"}],707:[{name:"BlockChain Station Explorer",url:"https://explorer.bcsdev.io",standard:"EIP3091"}],708:[{name:"BlockChain Station Explorer",url:"https://testnet.bcsdev.io",standard:"EIP3091"}],710:[{name:"Furya EVM Explorer",url:"https://explorer.furya.io",standard:"EIP3091",icon:"highbury"}],713:[{name:"vrcscan",url:"https://vrcscan.com",standard:"EIP3091"},{name:"dxbscan",url:"https://dxb.vrcscan.com",standard:"EIP3091"}],719:[{name:"shibscan",url:"https://puppyscan.shib.io",standard:"EIP3091"}],721:[{name:"blockscout",url:"https://explorer.lycanchain.com",standard:"EIP3091"}],730:[{name:"Lovely Network Mainnet",url:"https://scan.lovely.network",standard:"EIP3091"}],741:[{name:"ventionscan",url:"https://testnet.ventionscan.io",standard:"EIP3091"}],742:[{name:"Script Explorer",url:"https://explorer.script.tv",standard:"none"}],747:[{name:"Flow Diver",url:"https://flowdiver.io",standard:"none"}],766:[{name:"QL1 Mainnet Explorer",url:"https://mainnet.qom.one",icon:"qom",standard:"EIP3091"}],776:[{name:"OPEN CHAIN TESTNET",url:"https://testnet.openchain.info",standard:"none"}],786:[{name:"maalscan",url:"https://maalscan.io",standard:"EIP3091"}],787:[{name:"blockscout",url:"https://blockscout.acala.network",standard:"EIP3091"}],788:[{name:"aeroscan",url:"https://testnet.aeroscan.id",standard:"EIP3091"}],789:[{name:"patexscan",url:"https://patexscan.io",icon:"patex",standard:"EIP3091"}],799:[{name:"rupayascan",url:"https://scan.testnet.rupaya.io",standard:"EIP3091"}],800:[{name:"Lucid Explorer",url:"https://explorer.lucidcoin.io",standard:"none"}],810:[{name:"Haven1 Explorer",url:"https://testnet-explorer.haven1.org",icon:"haven1",standard:"EIP3091"}],813:[{name:"meerscan",icon:"meer",url:"https://qng.qitmeer.io",standard:"EIP3091"},{name:"meerscan",icon:"meer",url:"https://qng.meerscan.io",standard:"EIP3091"}],818:[{name:"BeOne Chain Mainnet",url:"https://beonescan.com",standard:"EIP3091"}],822:[{name:"RunicScan",url:"https://scan.runic.build",icon:"runic-testnet",standard:"EIP3091"}],831:[{name:"CDT Explorer",url:"https://explorer.checkdot.io",standard:"none"}],841:[{name:"Taraxa Explorer",url:"https://explorer.mainnet.taraxa.io",standard:"none"}],842:[{name:"Taraxa Explorer",url:"https://explorer.testnet.taraxa.io",standard:"none"}],852:[{name:"HongKong Mainnet Explorer",url:"http://47.238.205.52",standard:"none"}],859:[{name:"Zeeth Explorer Dev",url:"https://explorer.dev.zeeth.io",standard:"none"}],868:[{name:"FSCScan",url:"https://explorer.fantasiachain.com",standard:"EIP3091"}],876:[{name:"Bandai Namco Research Verse Explorer",url:"https://explorer.main.oasvrs.bnken.net",standard:"EIP3091"}],877:[{name:"dxtscan",url:"https://dxtscan.com",standard:"EIP3091"}],880:[{name:"Ambros Chain Explorer",url:"https://ambrosscan.com",standard:"none"}],888:[{name:"wanscan",icon:"wanchain",url:"https://wanscan.org",standard:"EIP3091"}],898:[{name:"Maxi Chain Testnet Explorer",url:"https://testnet.maxi.network",standard:"EIP3091"}],899:[{name:"Maxi Chain Mainnet Explorer",url:"https://mainnet.maxi.network",standard:"EIP3091"}],900:[{name:"explorer",url:"https://explorer-testnet.garizon.com",icon:"garizon",standard:"EIP3091"}],901:[{name:"explorer",url:"https://explorer-testnet.garizon.com",icon:"garizon",standard:"EIP3091"}],902:[{name:"explorer",url:"https://explorer-testnet.garizon.com",icon:"garizon",standard:"EIP3091"}],903:[{name:"explorer",url:"https://explorer-testnet.garizon.com",icon:"garizon",standard:"EIP3091"}],911:[{name:"TAPROOT Scan",url:"https://scan.taprootchain.io",icon:"taproot",standard:"EIP3091"}],917:[{name:"FireScan",url:"https://rinia.firescan.io",standard:"EIP3091"}],919:[{name:"modescout",url:"https://sepolia.explorer.mode.network",standard:"none"}],927:[{name:"Yidarkscan",url:"https://yidarkscan.com",standard:"EIP3091"}],943:[{name:"blockscout",url:"https://scan.v4.testnet.pulsechain.com",icon:"blockscout",standard:"EIP3091"},{name:"blockscout",url:"https://otter-testnet-pulsechain.g4mm4.io",standard:"EIP3091"}],957:[{name:"Lyra Explorer",url:"https://explorer.lyra.finance",icon:"lyra",standard:"EIP3091"}],963:[{name:"blockscout",url:"https://scan.bitcoincode.technology",standard:"EIP3091"}],969:[{name:"EthXY Network Explorer",url:"https://explorer.ethxy.com",standard:"EIP3091"}],970:[{name:"Oort Mainnet Explorer",url:"https://mainnet-scan.oortech.com",standard:"none",icon:"oort"}],972:[{name:"Oort Ascraeus Explorer",url:"https://ascraeus-scan.oortech.com",standard:"none",icon:"oort"}],979:[{name:"EthXY Testnet Network Explorer",url:"https://explorer.testnet.ethxy.com",standard:"EIP3091"}],980:[{name:"topscan.dev",url:"https://www.topscan.io",standard:"none"}],985:[{name:"Memo Mainnet Explorer",url:"https://scan.metamemo.one:8080",icon:"memo",standard:"EIP3091"}],987:[{name:"BinaryChain Explorer",url:"https://explorer.binarychain.org",standard:"EIP3091"}],989:[{name:"topscan.dev",url:"https://www.topscan.io",standard:"none"}],990:[{name:"eLiberty Mainnet",url:"https://explorer.eliberty.ngo",standard:"EIP3091"}],995:[{name:"5ireChain Explorer",url:"https://5irescan.io",standard:"none",icon:"5ireChain"}],997:[{name:"5ireChain Explorer",url:"https://explorer.5ire.network",standard:"none",icon:"5ireChain"}],998:[{name:"blockscout",url:"https://explorer.luckynetwork.org",standard:"none"},{name:"expedition",url:"https://lnscan.org",standard:"none"}],999:[{name:"wanscan",icon:"wanchain",url:"https://testnet.wanscan.org",standard:"EIP3091"}],1e3:[{name:"GTON Network Explorer",url:"https://explorer.gton.network",standard:"EIP3091"}],1001:[{name:"Klaytnscope",url:"https://baobab.klaytnscope.com",standard:"EIP3091"},{name:"Klaytnfinder",url:"https://baobab.klaytnfinder.io",standard:"EIP3091"}],1003:[{name:"Tectum explorer",url:"https://explorer.tectum.io",icon:"Tettoken256",standard:"EIP3091"}],1004:[{name:"test-ektascan",url:"https://test.ektascan.io",icon:"ekta",standard:"EIP3091"}],1008:[{name:"eurusexplorer",url:"https://explorer.eurus.network",icon:"eurus",standard:"none"}],1009:[{name:"Jumboscan",url:"https://jumboscan.jumbochain.org",standard:"EIP3091"}],1011:[{name:"Rebus EVM Explorer (Blockscout)",url:"https://evm.rebuschain.com",icon:"rebus",standard:"none"},{name:"Rebus Cosmos Explorer (ping.pub)",url:"https://cosmos.rebuschain.com",icon:"rebus",standard:"none"}],1028:[{name:"testbttcscan",url:"https://testscan.bittorrentchain.io",standard:"none"}],1030:[{name:"Conflux Scan",url:"https://evm.confluxscan.net",standard:"none"}],1031:[{name:"proxy network testnet",url:"http://testnet-explorer.theproxy.network",standard:"EIP3091"}],1038:[{name:"Bronos Testnet Explorer",url:"https://tbroscan.bronos.org",standard:"none",icon:"bronos"}],1039:[{name:"Bronos Explorer",url:"https://broscan.bronos.org",standard:"none",icon:"bronos"}],1073:[{name:"explorer",url:"https://explorer.evm.testnet.shimmer.network",standard:"EIP3091"}],1075:[{name:"explorer",url:"https://explorer.evm.testnet.iotaledger.net",standard:"EIP3091"}],1079:[{name:"explorer",url:"https://subnets-test.avax.network/mintara",standard:"EIP3091"}],1080:[{name:"explorer",url:"https://subnets.avax.network/mintara",standard:"EIP3091"}],1088:[{name:"blockscout",url:"https://andromeda-explorer.metis.io",standard:"EIP3091"}],1089:[{name:"explorer.guru",url:"https://humans.explorers.guru",icon:"humans",standard:"none"}],1099:[{name:"moac explorer",url:"https://explorer.moac.io",standard:"none"}],1100:[{name:"dym.fyi",url:"https://dym.fyi",standard:"EIP3091"}],1101:[{name:"blockscout",url:"https://zkevm.polygonscan.com",icon:"zkevm",standard:"EIP3091"}],1107:[{name:"BLXq Explorer",url:"https://explorer.blx.org",icon:"blxq",standard:"none"}],1108:[{name:"BLXq Explorer",url:"https://explorer.blxq.org",icon:"blxq",standard:"EIP3091"}],1111:[{name:"WEMIX Block Explorer",url:"https://explorer.wemix.com",standard:"EIP3091"}],1112:[{name:"WEMIX Testnet Microscope",url:"https://microscope.test.wemix.com",standard:"EIP3091"}],1113:[{name:"B2 Hub Habitat Testnet Explorer",url:"https://testnet-hub-explorer.bsquared.network",icon:"bsquare",standard:"EIP3091"}],1115:[{name:"Core Scan Testnet",url:"https://scan.test.btcs.network",icon:"core",standard:"EIP3091"}],1116:[{name:"Core Scan",url:"https://scan.coredao.org",icon:"core",standard:"EIP3091"}],1117:[{name:"Dogcoin",url:"https://explorer.dogcoin.network",standard:"EIP3091"}],1123:[{name:"blockscout",url:"https://testnet-explorer.bsquared.network",icon:"bsquare",standard:"EIP3091"}],1133:[{name:"MetaScan",url:"https://meta.defiscan.live",standard:"EIP3091"}],1135:[{name:"blockscout",url:"https://blockscout.lisk.com",icon:"blockscout",standard:"EIP3091"}],1138:[{name:"amstarscan-testnet",url:"https://testnet.amstarscan.com",standard:"EIP3091"}],1147:[{name:"Flag Testnet Explorer",url:"https://testnet-explorer.flagscan.xyz",standard:"EIP3091"}],1149:[{name:"Plexchain Explorer",url:"https://explorer.plexfinance.us",icon:"plexchain",standard:"EIP3091"}],1170:[{name:"Origin Explorer",url:"https://evm-explorer.origin.uptick.network",icon:"origin",standard:"none"}],1177:[{name:"Smart Host Teknoloji TESTNET Explorer",url:"https://s2.tl.web.tr:4000",icon:"smarthost",standard:"EIP3091"}],1188:[{name:"mosscan",url:"https://www.mosscan.com",icon:"clubmos",standard:"none"}],1197:[{name:"ioraexplorer",url:"https://explorer.iorachain.com",standard:"EIP3091"}],1200:[{name:"Cuckoo Chain Explorer",url:"https://scan.cuckoo.network",standard:"EIP3091"}],1202:[{name:"WTTScout",url:"https://explorer.cadaut.com",standard:"EIP3091"}],1209:[{name:"Saitascan explorer",url:"https://saitascan.io",standard:"none",icon:"SaitaBlockChain(SBC)"}],1210:[{name:"Cuckoo Sepolia Explorer",url:"https://testnet-scan.cuckoo.network",standard:"EIP3091"}],1213:[{name:"popcateum explorer",url:"https://explorer.popcateum.org",standard:"none"}],1214:[{name:"Enter Explorer - Expenter",url:"https://explorer.entercoin.net",icon:"enter",standard:"EIP3091"}],1225:[{name:"Hybrid Testnet",url:"https://explorer.buildonhybrid.com",standard:"EIP3091"}],1227:[{name:"BTCP explorer",url:"https://explorer.btcprotocol.io",standard:"EIP3091"}],1229:[{name:"blockscout",url:"https://exzoscan.io",standard:"EIP3091"}],1230:[{name:"Ultron Testnet Explorer",url:"https://explorer.ultron-dev.io",icon:"ultron",standard:"none"}],1231:[{name:"Ultron Explorer",url:"https://ulxscan.com",icon:"ultron",standard:"none"}],1234:[{name:"StepScan",url:"https://stepscan.io",icon:"step",standard:"EIP3091"}],1235:[{name:"ITX Mainnet Explorer (Blockscout)",url:"https://explorer.itxchain.com",standard:"EIP3091"}],1243:[{name:"archiescan",url:"https://app.archiescan.io",standard:"none"}],1244:[{name:"archiescan",url:"https://testnet.archiescan.io",standard:"none"}],1246:[{name:"OMSCAN - Expenter",url:"https://omscan.omplatform.com",standard:"none"}],1248:[{name:"DogetherExplorer",url:"https://explorer.dogether.dog",standard:"EIP3091"}],1252:[{name:"CICscan",url:"https://testnet.cicscan.com",icon:"cicchain",standard:"EIP3091"}],1280:[{name:"HALOexplorer",url:"https://browser.halo.land",standard:"none"}],1284:[{name:"moonscan",url:"https://moonbeam.moonscan.io",standard:"none"}],1285:[{name:"moonscan",url:"https://moonriver.moonscan.io",standard:"none"}],1287:[{name:"moonscan",url:"https://moonbase.moonscan.io",standard:"none"}],1291:[{name:"Swisstronik Scout",url:"https://explorer-evm.testnet.swisstronik.com",standard:"none"}],1311:[{name:"dos-testnet",url:"https://test.doscan.io",standard:"EIP3091"}],1313:[{name:"JaiHo Chain Explorer",url:"https://jaihochain.com",standard:"EIP3091"}],1314:[{name:"alyxscan",url:"https://www.alyxscan.com",standard:"EIP3091"}],1319:[{name:"AIA Chain Explorer Mainnet",url:"https://aiascan.com",standard:"EIP3091"}],1320:[{name:"AIA Chain Explorer Testnet",url:"https://testnet.aiascan.com",standard:"EIP3091"}],1328:[{name:"Seitrace",url:"https://seitrace.com",standard:"EIP3091"}],1329:[{name:"Seitrace",url:"https://seitrace.com",standard:"EIP3091"}],1338:[{name:"Elysium testnet explorer",url:"https://elysium-explorer.vulcanforged.com",standard:"none"}],1339:[{name:"Elysium mainnet explorer",url:"https://explorer.elysiumchain.tech",standard:"none"}],1343:[{name:"BLITZ Explorer",url:"https://subnets-test.avax.network/blitz",standard:"EIP3091"}],1353:[{name:"CICscan",url:"https://cicscan.com",icon:"cicchain",standard:"EIP3091"}],1369:[{name:"zafirium-explorer",url:"https://explorer.zakumi.io",standard:"none"}],1370:[{name:"ramascan",url:"https://ramascan.com",icon:"ramestta",standard:"EIP3091"}],1377:[{name:"Pingaksha",url:"https://pingaksha.ramascan.com",icon:"ramestta",standard:"EIP3091"}],1379:[{name:"kalarscan",url:"https://explorer.kalarchain.tech",icon:"kalarscan",standard:"EIP3091"}],1388:[{name:"amstarscan",url:"https://mainnet.amstarscan.com",standard:"EIP3091"}],1392:[{name:"BlockExplorer",url:"https://www.blockexplorer.com",standard:"EIP3091"}],1433:[{name:"Rikeza Blockchain explorer",url:"https://rikscan.com",standard:"EIP3091"}],1442:[{name:"Polygon zkEVM explorer",url:"https://explorer.public.zkevm-test.net",standard:"EIP3091"}],1452:[{name:"GIL Explorer",url:"https://explorer.giltestnet.com",standard:"EIP3091"}],1453:[{name:"MetaExplorer",url:"https://istanbul-explorer.metachain.dev",standard:"EIP3091"}],1455:[{name:"Ctex Scan Explorer",url:"https://ctexscan.com",standard:"none"}],1456:[{name:"ZKbase Block Explorer",url:"https://explorer.zkbase.app",icon:"zkbase",standard:"EIP3091"}],1490:[{name:"Vitruveo Explorer",url:"https://explorer.vitruveo.xyz",icon:"vitruveo",standard:"EIP3091"}],1499:[{name:"IGC-Scan",url:"https://igcscan.com",standard:"EIP3091"}],1501:[{name:"bevm canary scan",url:"https://scan-canary.bevm.io",standard:"none"}],1506:[{name:"Sherpax Mainnet Explorer",url:"https://evm.sherpax.io",standard:"none"}],1507:[{name:"Sherpax Testnet Explorer",url:"https://evm-pre.sherpax.io",standard:"none"}],1515:[{name:"Beagle Messaging Chain Explorer",url:"https://eth.beagle.chat",standard:"EIP3091"}],1559:[{name:"TenetScan Mainnet",url:"https://tenetscan.io",icon:"tenet",standard:"EIP3091"}],1570:[{name:"StarCHAIN Explorer",url:"https://testnet.starchainscan.io",standard:"EIP3091"}],1578:[{name:"StarCHAIN Explorer",url:"https://starchainscan.io",standard:"EIP3091"}],1617:[{name:"Ethereum Inscription Explorer",url:"https://explorer.etins.org",standard:"none"}],1625:[{name:"Gravity Alpha Mainnet Explorer",url:"https://explorer.gravity.xyz",standard:"EIP3091"}],1648:[{name:"Pivotal Scan",url:"https://pivotalscan.xyz",standard:"EIP3091"}],1662:[{name:"Liquichain Mainnet",url:"https://mainnet.liquichain.io",standard:"EIP3091"}],1663:[{name:"Gobi Testnet Block Explorer",url:"https://gobi-explorer.horizen.io",icon:"eon",standard:"EIP3091"}],1686:[{name:"blockscout",url:"https://testnet-explorer.mintchain.io",icon:"mintTestnet",standard:"EIP3091"}],1687:[{name:"blockscout",url:"https://sepolia-testnet-explorer.mintchain.io",icon:"mintTestnet",standard:"EIP3091"}],1701:[{name:"Anytype Explorer",url:"https://explorer.anytype.io",icon:"any",standard:"EIP3091"}],1707:[{name:"blockscout",url:"https://exp.blockchain.or.th",standard:"EIP3091"}],1708:[{name:"blockscout",url:"https://exp.testnet.blockchain.or.th",standard:"EIP3091"}],1717:[{name:"Doric Explorer",url:"https://explorer.doric.network",standard:"EIP3091"}],1718:[{name:"Palettescan",url:"https://palettescan.com",icon:"PLT",standard:"none"}],1729:[{name:"Reya Network Explorer",url:"https://explorer.reya.network",standard:"EIP3091"}],1740:[{name:"blockscout",url:"https://testnet.explorer.metall2.com",icon:"blockscout",standard:"EIP3091"}],1750:[{name:"blockscout",url:"https://explorer.metall2.com",icon:"blockscout",standard:"EIP3091"}],1773:[{name:"PartyExplorer",url:"https://partyexplorer.co",icon:"grams",standard:"EIP3091"}],1777:[{name:"Gauss Explorer",url:"https://explorer.gaussgang.com",standard:"EIP3091"}],1789:[{name:"ZKbase Block Explorer",url:"https://sepolia-explorer.zkbase.app",icon:"zkbase",standard:"EIP3091"}],1804:[{name:"Lite Explorer",url:"https://ethereum-pocr.github.io/explorer/kerleano",icon:"pocr",standard:"EIP3091"}],1807:[{name:"blockscout",url:"https://rabbit.analogscan.com",standard:"none"}],1811:[{name:"lif3scout",url:"https://testnet.lif3scout.com",standard:"none"}],1818:[{name:"cube-scan",url:"https://cubescan.network",standard:"EIP3091"}],1819:[{name:"cubetest-scan",url:"https://testnet.cubescan.network",standard:"EIP3091"}],1821:[{name:"RUBY Smart Chain MAINNET Explorer",icon:"ruby",url:"https://rubyscan.net",standard:"none"}],1875:[{name:"whitechain-explorer",url:"https://explorer.whitechain.io",standard:"EIP3091"}],1881:[{name:"blockscout",url:"https://scan.cartenz.works",standard:"EIP3091"}],1890:[{name:"phoenix",url:"https://phoenix.lightlink.io",icon:"lightlink",standard:"EIP3091"}],1891:[{name:"pegasus",url:"https://pegasus.lightlink.io",icon:"lightlink",standard:"EIP3091"}],1898:[{name:"explorer",url:"https://explorer.boyanet.org:4001",standard:"EIP3091"}],1899:[{name:"ReDeFi Scan",url:"https://scanlayer2.redefi.world",standard:"EIP3091"}],1904:[{name:"blockscout",url:"https://explorer.sportschainnetwork.xyz",standard:"EIP3091"}],1907:[{name:"Bitci Explorer",url:"https://bitciexplorer.com",standard:"EIP3091"}],1908:[{name:"Bitci Explorer Testnet",url:"https://testnet.bitciexplorer.com",standard:"EIP3091"}],1909:[{name:"blockscout",url:"https://merklescan.com",standard:"none"}],1911:[{name:"scalind",url:"https://explorer.scalind.com",standard:"EIP3091"}],1912:[{name:"RUBY Smart Chain Testnet Explorer",icon:"ruby",url:"https://testnet.rubyscan.net",standard:"none"}],1945:[{name:"Onus explorer testnet",url:"https://explorer-testnet.onuschain.io",icon:"onus",standard:"EIP3091"}],1954:[{name:"dos-mainnet",url:"https://exp.dexilla.com",standard:"EIP3091"}],1956:[{name:"aiw3 testnet scan",url:"https://scan-testnet.aiw3.io",standard:"none"}],1961:[{name:"Selendra Scan",url:"https://scan.selendra.org",standard:"none"}],1967:[{name:"metaexplorer-eleanor",url:"https://explorer.metatime.com/eleanor",standard:"EIP3091"}],1969:[{name:"blockscout",url:"https://testnetscan.scschain.com",standard:"EIP3091"}],1970:[{name:"blockscout",url:"https://scan.scschain.com",standard:"EIP3091"}],1972:[{name:"RedeCoin Explorer",url:"https://explorer3.redecoin.eu",standard:"none"}],1975:[{name:"Onus explorer mainnet",url:"https://explorer.onuschain.io",icon:"onus",standard:"EIP3091"}],1984:[{name:"testnetexplorer",url:"https://testnetexplorer.eurus.network",icon:"eurus",standard:"none"}],1985:[{name:"mainnetexplorer",url:"http://explore.satosh.ie",icon:"satoshie",standard:"none"}],1986:[{name:"testnetexplorer",url:"http://explore-testnet.satosh.ie",icon:"satoshie",standard:"none"}],1992:[{name:"routescan",url:"https://explorer.hubble.exchange",standard:"EIP3091"}],1993:[{name:"Blockscout",url:"https://sepolia.explorer.b3.fun",standard:"EIP3091"}],1994:[{name:"ektascan",url:"https://ektascan.io",icon:"ekta",standard:"EIP3091"}],1995:[{name:"edexa-testnet",url:"https://explorer.testnet.edexa.network",standard:"EIP3091"}],1996:[{name:"Sanko Explorer",url:"https://explorer.sanko.xyz",standard:"EIP3091"}],1997:[{name:"Kyotoscan",url:"https://kyotoscan.io",standard:"EIP3091"}],1998:[{name:"Kyotoscan",url:"https://testnet.kyotoscan.io",standard:"EIP3091"}],2e3:[{name:"dogechain explorer",url:"https://explorer.dogechain.dog",standard:"EIP3091"}],2001:[{name:"Blockscout",url:"https://explorer-mainnet-cardano-evm.c1.milkomeda.com",standard:"none"}],2002:[{name:"Blockscout",url:"https://explorer-mainnet-algorand-rollup.a1.milkomeda.com",standard:"none"}],2004:[{name:"MetaScan",url:"http://twoto3.com:3000",standard:"none"}],2008:[{name:"CloudWalk Testnet Explorer",url:"https://explorer.testnet.cloudwalk.io",standard:"none"}],2009:[{name:"CloudWalk Mainnet Explorer",url:"https://explorer.mainnet.cloudwalk.io",standard:"none"}],2014:[{name:"nowscan",url:"https://testnet.nowscan.io",standard:"EIP3091"}],2016:[{name:"MainnetZ",url:"https://explorer.mainnetz.io",standard:"EIP3091"}],2017:[{name:"telscan",url:"https://telscan.io",icon:"telcoin",standard:"EIP3091"}],2018:[{name:"PublicMint Explorer",url:"https://explorer.dev.publicmint.io",standard:"EIP3091"}],2019:[{name:"PublicMint Explorer",url:"https://explorer.tst.publicmint.io",standard:"EIP3091"}],2020:[{name:"PublicMint Explorer",url:"https://explorer.publicmint.io",standard:"EIP3091"}],2021:[{name:"Edgscan EdgeEVM explorer by Bharathcoorg",url:"https://edgscan.live",standard:"EIP3091"},{name:"Edgscan EdgeWASM explorer by Bharathcoorg",url:"https://edgscan.ink",standard:"none",icon:"edgscan"}],2022:[{name:"Edgscan by Bharathcoorg",url:"https://testnet.edgscan.live",standard:"EIP3091"}],2023:[{name:"Taycan Explorer(Blockscout)",url:"https://evmscan-test.hupayx.io",standard:"none",icon:"shuffle"},{name:"Taycan Cosmos Explorer",url:"https://cosmoscan-test.hupayx.io",standard:"none",icon:"shuffle"}],2025:[{name:"rangersscan",url:"https://scan.rangersprotocol.com",standard:"none"}],2026:[{name:"Edgeless Explorer",url:"https://explorer.edgeless.network",standard:"EIP3091"}],2031:[{name:"subscan",url:"https://centrifuge.subscan.io",standard:"EIP3091",icon:"subscan"}],2037:[{name:"KIWI Explorer",url:"https://subnets-test.avax.network/kiwi",standard:"EIP3091"}],2038:[{name:"SHRAPNEL Explorer",url:"https://subnets-test.avax.network/shrapnel",standard:"EIP3091"}],2039:[{name:"Aleph Zero Testnet",url:"https://test.azero.dev/#/explorer",icon:"aleph",standard:"none"}],2040:[{name:"Vanar Explorer",url:"https://explorer.vanarchain.com",icon:"vanar",standard:"EIP3091"}],2047:[{name:"Stratos EVM Explorer (Blockscout)",url:"https://web3-explorer-mesos.thestratos.org",standard:"none"},{name:"Stratos Cosmos Explorer (BigDipper)",url:"https://big-dipper-mesos.thestratos.org",standard:"none"}],2048:[{name:"Stratos EVM Explorer (Blockscout)",url:"https://web3-explorer.thestratos.org",standard:"none"},{name:"Stratos Cosmos Explorer (BigDipper)",url:"https://explorer.thestratos.org",standard:"none"}],2049:[{name:"movoscan",url:"https://movoscan.com",icon:"movoscan",standard:"none"}],2077:[{name:"blockscout",url:"https://explorer.qkacoin.org",standard:"EIP3091"}],2100:[{name:"Ecoball Explorer",url:"https://scan.ecoball.org",standard:"EIP3091"}],2101:[{name:"Ecoball Testnet Explorer",url:"https://espuma-scan.ecoball.org",standard:"EIP3091"}],2109:[{name:"blockscout",url:"https://explorer.exosama.com",icon:"blockscout",standard:"EIP3091"}],2112:[{name:"uchain.info",url:"https://uchain.info",standard:"EIP3091"}],2121:[{name:"catenascan",url:"https://catenascan.com",standard:"EIP3091"}],2122:[{name:"Metad Scan",url:"https://scan.metaplayer.one",icon:"metad",standard:"EIP3091"}],2124:[{name:"MP1Scan",url:"https://dubai.mp1scan.io",standard:"EIP3091"}],2136:[{name:"Polkadot.js",url:"https://polkadot.js.org/apps/?rpc=wss://test-market.bigsb.network#/explorer",standard:"none"}],2138:[{name:"Quorum Explorer",url:"https://public-2138.defi-oracle.io",standard:"none"}],2140:[{name:"oneness-mainnet",url:"https://scan.onenesslabs.io",standard:"EIP3091"}],2141:[{name:"oneness-testnet",url:"https://scan.testnet.onenesslabs.io",standard:"EIP3091"}],2151:[{name:"BOASCAN",url:"https://boascan.io",icon:"agora",standard:"EIP3091"}],2152:[{name:"findorascan",url:"https://evm.findorascan.io",standard:"EIP3091"}],2153:[{name:"findorascan",url:"https://testnet-anvil.evm.findorascan.io",standard:"EIP3091"}],2154:[{name:"findorascan",url:"https://testnet-forge.evm.findorascan.io",standard:"EIP3091"}],2162:[{name:"blockscout",url:"https://explorer.kanda.animechain.ai",standard:"EIP3091"}],2199:[{name:"blockscout",url:"https://explorer.moonsama.com",icon:"blockscout",standard:"EIP3091"}],2202:[{name:"Antofy Mainnet",url:"https://antofyscan.com",standard:"EIP3091"}],2203:[{name:"Explorer",url:"https://explorer.bitcoinevm.com",icon:"ebtc",standard:"none"}],2213:[{name:"Evanesco Explorer",url:"https://explorer.evanesco.org",standard:"none"}],2221:[{name:"Kava Testnet Explorer",url:"http://testnet.kavascan.com",standard:"EIP3091",icon:"kava"}],2222:[{name:"Kava EVM Explorer",url:"https://kavascan.com",standard:"EIP3091",icon:"kava"}],2223:[{name:"VChain Scan",url:"https://scan.vcex.xyz",standard:"EIP3091"}],2241:[{name:"Polkadot.js",url:"https://polkadot.js.org/apps/?rpc=wss://wss-krest.peaq.network#/explorer",standard:"none"},{name:"Subscan",url:"https://krest.subscan.io",standard:"none"}],2300:[{name:"bombscan",icon:"bomb",url:"https://bombscan.com",standard:"EIP3091"}],2311:[{name:"Lit Chronicle Vesuvius Explorer",url:"https://vesuvius-explorer.litprotocol.com",icon:"lit",standard:"EIP3091"}],2323:[{name:"SOMA Testnet Explorer",icon:"soma",url:"https://testnet.somascan.io",standard:"none"}],2330:[{name:"expedition",url:"http://expedition.altcoinchain.org",icon:"altcoinchain",standard:"none"}],2331:[{name:"RSS3 VSL Sepolia Testnet Scan",url:"https://scan.testnet.rss3.io",standard:"EIP3091"}],2332:[{name:"SOMA Explorer Mainnet",icon:"soma",url:"https://somascan.io",standard:"none"}],2340:[{name:"Atleta Olympia Explorer",icon:"atleta",url:"https://blockscout.atleta.network",standard:"none"},{name:"Atleta Olympia Polka Explorer",icon:"atleta",url:"https://polkadot-explorer.atleta.network/#/explorer",standard:"none"}],2342:[{name:"OmniaVerse Explorer",url:"https://scan.omniaverse.io",standard:"EIP3091"}],2358:[{name:"blockscout",url:"https://blockscout.sepolia.kroma.network",icon:"kroma",standard:"EIP3091"}],2370:[{name:"Nexis Testnet Explorer",url:"https://evm-testnet.nexscan.io",standard:"EIP3091"}],2399:[{name:"bombscan-testnet",icon:"bomb",url:"https://explorer.bombchain-testnet.ankr.com",standard:"EIP3091"}],2400:[{name:"TCG Verse Explorer",url:"https://explorer.tcgverse.xyz",standard:"EIP3091"}],2410:[{name:"Karak Mainnet Explorer",url:"https://explorer.karak.network",standard:"EIP3091"}],2415:[{name:"XODEX Explorer",url:"https://explorer.xo-dex.com",standard:"EIP3091",icon:"xodex"}],2425:[{name:"King Of Legends Mainnet Explorer",url:"https://kingscan.org",icon:"kol",standard:"EIP3091"}],2442:[{name:"polygonscan",url:"https://cardona-zkevm.polygonscan.com",standard:"EIP3091"}],2458:[{name:"Hybrid Chain Explorer Testnet",icon:"hybrid",url:"https://testnet.hybridscan.ai",standard:"none"}],2468:[{name:"Hybrid Chain Explorer Mainnet",icon:"hybrid",url:"https://hybridscan.ai",standard:"none"}],2484:[{icon:"u2u_nebulas",name:"U2U Explorer",url:"https://testnet.u2uscan.xyz",standard:"EIP3091"}],2522:[{name:"fraxscan",url:"https://holesky.fraxscan.com",standard:"EIP3091"}],2569:[{name:"tpcscan",url:"https://tpcscan.com",icon:"techpay",standard:"EIP3091"}],2606:[{name:"Lite Explorer",url:"https://ethereum-pocr.github.io/explorer/pocrnet",icon:"pocr",standard:"EIP3091"}],2611:[{name:"REDLC Explorer",url:"https://redlightscan.finance",standard:"EIP3091"}],2612:[{name:"ezchain",url:"https://cchain-explorer.ezchain.com",standard:"EIP3091"}],2613:[{name:"ezchain",url:"https://testnet-cchain-explorer.ezchain.com",standard:"EIP3091"}],2625:[{name:"whitechain-testnet-explorer",url:"https://testnet.whitechain.io",standard:"EIP3091"}],2648:[{name:"blockscout",url:"https://testnet-explorer.ailayer.xyz",icon:"ailayer",standard:"EIP3091"}],2649:[{name:"blockscout",url:"https://mainnet-explorer.ailayer.xyz",icon:"ailayer",standard:"EIP3091"}],2710:[{name:"Morph Testnet Explorer",url:"https://explorer-testnet.morphl2.io",standard:"EIP3091"}],2718:[{name:"blockscout",url:"https://blockscout.klaos.laosfoundation.io",icon:"k-laos",standard:"EIP3091"}],2730:[{name:"XR Sepolia Explorer",url:"https://xr-sepolia-testnet.explorer.caldera.xyz",icon:"blockscout",standard:"EIP3091"}],2731:[{name:"Time Network Explorer",url:"https://testnet-scanner.timenetwork.io",standard:"none",icon:"timenet"}],2748:[{name:"Nanon Rollup Explorer",url:"https://explorer.nanon.network",standard:"EIP3091"}],2777:[{name:"GM Network Mainnet Explorer",url:"https://scan.gmnetwork.ai",standard:"EIP3091"}],2810:[{name:"Morph Holesky Testnet Explorer",url:"https://explorer-holesky.morphl2.io",standard:"EIP3091"}],2907:[{name:"blockscout",url:"https://eluxscan.com",standard:"none"}],2911:[{name:"blockscout",url:"https://explorer.hychain.com",icon:"hychain",standard:"EIP3091"}],2941:[{name:"Xenon testnet Explorer",url:"https://testnet.xenonchain.com",standard:"none"}],2999:[{name:"BitYuan Block Chain Explorer",url:"https://mainnet.bityuan.com",standard:"none"}],3001:[{name:"UNcover",url:"https://www.uncoverexplorer.com/?network=Nikau",standard:"none"}],3003:[{name:"canxium explorer",url:"https://explorer.canxium.org",standard:"none"}],3011:[{name:"PLAYA3ULL GAMES Explorer",url:"https://3011.routescan.io",icon:"playa3ull",standard:"EIP3091"}],3031:[{name:"Orlando (ORL) Explorer",url:"https://orlscan.com",icon:"orl",standard:"EIP3091"}],3033:[{name:"Rebus EVM Explorer (Blockscout)",url:"https://evm.testnet.rebus.money",icon:"rebus",standard:"none"},{name:"Rebus Cosmos Explorer (ping.pub)",url:"https://testnet.rebus.money/rebustestnet",icon:"rebus",standard:"none"}],3068:[{name:"explorer-thebifrost",url:"https://explorer.mainnet.bifrostnetwork.com",standard:"EIP3091"}],3073:[{name:"mevm explorer",url:"https://explorer.movementlabs.xyz",standard:"none"}],3084:[{name:"XL Network Explorer",url:"https://subnets-test.avax.network/xlnetworkt",standard:"EIP3091"}],3306:[{name:"Debounce Devnet Explorer",url:"https://explorer.debounce.network",standard:"EIP3091"}],3334:[{name:"w3q-galileo",url:"https://explorer.galileo.web3q.io",standard:"EIP3091"}],3338:[{name:"Subscan",url:"https://peaq.subscan.io",standard:"none"}],3400:[{name:"Paribu Net Explorer",url:"https://explorer.paribu.network",standard:"EIP3091"}],3424:[{name:"Evolve Mainnet Explorer",url:"https://evoexplorer.com",standard:"EIP3091"}],3434:[{name:"SecureChain",url:"https://testnet.securechain.ai",standard:"EIP3091"}],3456:[{name:"LayerEdge Testnet Explorer",url:"https://testnet-explorer.layeredge.io",icon:"layerEdge",standard:"EIP3091"}],3490:[{name:"GTCScan Explorer",url:"https://gtcscan.io",standard:"none",icon:"gtc"}],3500:[{name:"Paribu Net Testnet Explorer",url:"https://testnet.paribuscan.com",standard:"EIP3091"}],3501:[{name:"JFIN Chain Explorer",url:"https://exp.jfinchain.com",standard:"EIP3091"}],3601:[{name:"Pando Mainnet Explorer",url:"https://explorer.pandoproject.org",standard:"none"}],3602:[{name:"Pando Testnet Explorer",url:"https://testnet.explorer.pandoproject.org",standard:"none"}],3636:[{name:"3xpl",url:"https://3xpl.com/botanix",standard:"EIP3091"},{name:"Blockscout",url:"https://blockscout.botanixlabs.dev",standard:"EIP3091"}],3637:[{name:"Botanix",url:"https://btxtestchain.com",standard:"EIP3091"}],3639:[{name:"iChainscan",url:"https://ichainscan.com",standard:"EIP3091"}],3645:[{name:"iChainscan",url:"https://test.ichainscan.com",standard:"EIP3091"}],3666:[{name:"jscan",url:"https://jscan.jnsdao.com",standard:"EIP3091"}],3690:[{name:"bittexscan",url:"https://bittexscan.com",standard:"EIP3091"}],3693:[{name:"Empire Explorer",url:"https://explorer.empirenetwork.io",standard:"none"}],3698:[{name:"SenjePowers",url:"https://testnet.senjepowersscan.com",standard:"EIP3091"}],3699:[{name:"SenjePowers",url:"https://senjepowersscan.com",standard:"EIP3091"}],3737:[{name:"Crossbell Explorer",url:"https://scan.crossbell.io",standard:"EIP3091"}],3776:[{name:"Blockscout Astar zkEVM explorer",url:"https://astar-zkevm.explorer.startale.com",standard:"EIP3091"}],3797:[{name:"AlveyScan",url:"https://alveyscan.com",icon:"alveychain",standard:"EIP3091"}],3799:[{name:"ttntscan",url:"https://testnet-explorer.tangle.tools",icon:"blockscout",standard:"EIP3091"}],3888:[{name:"KalyScan",url:"https://kalyscan.io",standard:"EIP3091"}],3889:[{name:"KalyScan",url:"https://testnet.kalyscan.io",standard:"EIP3091"}],3912:[{name:"DRAC_Network Scan",url:"https://www.dracscan.io",standard:"EIP3091"}],3939:[{name:"DOScan-Test",url:"https://test.doscan.io",icon:"doschain",standard:"EIP3091"}],3966:[{name:"DYNO Explorer",url:"https://dynoscan.io",standard:"EIP3091"}],3967:[{name:"DYNO Explorer",url:"https://testnet.dynoscan.io",standard:"EIP3091"}],3993:[{name:"blockscout",url:"https://exp-testnet.apexlayer.xyz",standard:"EIP3091"}],3999:[{name:"YuanChain Explorer",url:"https://mainnet.yuan.org",standard:"none"}],4e3:[{name:"OZONE Scan",url:"https://ozonescan.io",standard:"EIP3091"}],4001:[{name:"Peperium Chain Explorer",url:"https://scan-testnet.peperium.io",icon:"peperium",standard:"EIP3091"}],4002:[{name:"ftmscan",url:"https://testnet.ftmscan.com",icon:"ftmscan",standard:"EIP3091"}],4003:[{name:"Blockscout",url:"https://explorer.x1-fastnet.xen.network",icon:"blockscout",standard:"EIP3091"}],4040:[{name:"Carbonium Network tesnet Explorer",icon:"cbr",url:"https://testnet.carboniumscan.com",standard:"none"}],4048:[{name:"ganscan",url:"https://ganscan.gpu.net",standard:"none"}],4058:[{name:"blockscout",url:"https://ocean.ftnscan.com",standard:"none"}],4061:[{name:"Nahmii 3 Mainnet Explorer",url:"https://explorer.nahmii.io",icon:"nahmii",standard:"EIP3091"}],4062:[{name:"Nahmii 3 Testnet Explorer",url:"https://explorer.testnet.nahmii.io",icon:"nahmii",standard:"EIP3091"}],4078:[{name:"Musterscan",url:"https://muster-explorer.alt.technology",standard:"EIP3091"}],4080:[{name:"tobescan",url:"https://tobescan.com",standard:"EIP3091"}],4090:[{name:"blockscout",url:"https://oasis.ftnscan.com",standard:"none"}],4096:[{name:"Bitindi",url:"https://testnet.bitindiscan.com",standard:"EIP3091"}],4099:[{name:"Bitindi",url:"https://bitindiscan.com",standard:"EIP3091"}],4102:[{name:"AIOZ Network Testnet Explorer",url:"https://testnet.explorer.aioz.network",standard:"EIP3091"}],4141:[{name:"Tipboxcoin",url:"https://testnet.tipboxcoin.net",standard:"EIP3091"}],4157:[{name:"CrossFi Testnet Scan",url:"https://test.xfiscan.com",standard:"EIP3091",icon:"crossfi"}],4162:[{name:"SX L2 Explorer",url:"https://explorerl2.sx.technology",standard:"EIP3091",icon:"SX"}],4181:[{name:"PHI Explorer",url:"https://explorer.phi.network",icon:"phi",standard:"none"}],4200:[{name:"L2scan",url:"https://scan.merlinchain.io",icon:"merlin",standard:"EIP3091"}],4201:[{name:"Blockscout",url:"https://explorer.execution.testnet.lukso.network",standard:"none"}],4202:[{name:"liskscout",url:"https://sepolia-blockscout.lisk.com",icon:"blockscout",standard:"EIP3091"}],4242:[{name:"nexiscan",url:"https://www.nexiscan.com",standard:"EIP3091"}],4243:[{name:"nexiscan",url:"https://www.nexiscan.com",standard:"EIP3091"}],4337:[{name:"Beam Explorer",url:"https://subnets.avax.network/beam",standard:"EIP3091"}],4400:[{name:"Creditscan",url:"https://scan.creditsmartchain.com",icon:"credit",standard:"EIP3091"}],4444:[{name:"htmlcoin",url:"https://explorer.htmlcoin.com",icon:"htmlcoin",standard:"none"}],4460:[{name:"basescout",url:"https://explorerl2new-orderly-l2-4460-sepolia-8tc3sd7dvy.t.conduit.xyz",icon:"blockscout",standard:"EIP3091"}],4544:[{name:"EMoney ethscan",url:"https://ethscan.emoney.network",icon:"emoney",standard:"EIP3091"}],4613:[{name:"VERY explorer",url:"https://www.veryscan.io",standard:"none"}],4689:[{name:"iotexscan",url:"https://iotexscan.io",standard:"EIP3091"}],4690:[{name:"testnet iotexscan",url:"https://testnet.iotexscan.io",standard:"EIP3091"}],4759:[{name:"MEVerse Chain Testnet Explorer",url:"https://testnet.meversescan.io",standard:"none",icon:"meverse"}],4777:[{name:"blockscout",url:"https://testnet-explorer.blackfort.network",icon:"blockscout",standard:"EIP3091"}],4893:[{name:"blockscout",url:"https://gcscan.io",standard:"none"}],4918:[{name:"Venidium EVM Testnet Explorer",url:"https://evm-testnet.venidiumexplorer.com",standard:"EIP3091"}],4919:[{name:"Venidium Explorer",url:"https://evm.venidiumexplorer.com",standard:"EIP3091"}],4999:[{name:"blockscout",url:"https://explorer.blackfort.network",icon:"blockscout",standard:"EIP3091"}],5e3:[{name:"mantlescan",url:"https://mantlescan.xyz",standard:"EIP3091"},{name:"Mantle Explorer",url:"https://explorer.mantle.xyz",standard:"EIP3091"}],5001:[{name:"Mantle Testnet Explorer",url:"https://explorer.testnet.mantle.xyz",standard:"EIP3091"}],5002:[{name:"Treasurenet EVM BlockExplorer",url:"https://evmexplorer.treasurenet.io",icon:"treasurenet",standard:"none"}],5003:[{name:"blockscout",url:"https://explorer.sepolia.mantle.xyz",standard:"EIP3091"}],5005:[{name:"Treasurenet EVM BlockExplorer",url:"https://evmexplorer.testnet.treasurenet.io",icon:"treasurenet",standard:"none"}],5039:[{name:"ONIGIRI Explorer",url:"https://subnets-test.avax.network/onigiri",standard:"EIP3091"}],5040:[{name:"ONIGIRI Explorer",url:"https://subnets.avax.network/onigiri",standard:"EIP3091"}],5051:[{name:"Nollie Skate Chain Testnet Explorer",url:"https://nolliescan.skatechain.org",standard:"EIP3091"}],5102:[{name:"blockscout",url:"https://explorerl2new-sic-testnet-zvr7tlkzsi.t.conduit.xyz",standard:"EIP3091"}],5106:[{name:"blockscout",url:"https://explorerl2new-azra-testnet-6hz86owb1n.t.conduit.xyz",standard:"EIP3091"}],5112:[{name:"blockscout",url:"https://explorer.ham.fun",icon:"blockscout",standard:"EIP3091"}],5151:[{name:"MeChain Scan",url:"https://testnet-scan.mechain.tech",icon:"mechain",standard:"EIP3091"}],5165:[{name:"blockscout",url:"https://ftnscan.com",standard:"none"}],5169:[{name:"SLN Mainnet Explorer",url:"https://explorer.main.smartlayer.network",standard:"EIP3091"}],5177:[{name:"TLChain Explorer",url:"https://explorer.tlchain.network",standard:"none"}],5234:[{name:"Subscan",url:"https://humanode.subscan.io",standard:"EIP3091",icon:"subscan"}],5317:[{name:"OpTrust Testnet explorer",url:"https://scantest.optrust.io",icon:"optrust",standard:"none"}],5321:[{name:"ITX Testnet Explorer (Blockscout)",url:"https://explorer.testnet.itxchain.com",standard:"EIP3091"}],5333:[{name:"netsbo",url:"https://explorer.netsbo.io",icon:"netsbo",standard:"none"}],5353:[{name:"TRITANIUM Testnet Explorer",icon:"tritanium",url:"https://testnet.tritanium.network",standard:"none"}],5372:[{name:"Settlus Scan",url:"https://testnet.settlus.network",standard:"EIP3091"}],5424:[{name:"edexa-mainnet",url:"https://explorer.edexa.network",standard:"EIP3091"}],5439:[{name:"egoscan",url:"https://egoscan.io",standard:"EIP3091"}],5522:[{name:"Vexascan-EVM-TestNet",url:"https://testnet.vexascan.com/evmexplorer",standard:"EIP3091"}],5551:[{name:"Nahmii 2 Mainnet Explorer",url:"https://explorer.n2.nahmii.io",icon:"nahmii",standard:"EIP3091"}],5555:[{name:"Chain Verse Explorer",url:"https://explorer.chainverse.info",standard:"EIP3091"}],5611:[{name:"bscscan-opbnb-testnet",url:"https://opbnb-testnet.bscscan.com",standard:"EIP3091"},{name:"opbnbscan",url:"https://opbnbscan.com",standard:"EIP3091"}],5615:[{name:"explorer-arcturus-testnet",url:"https://testnet.arcscan.net",standard:"EIP3091"}],5656:[{name:"QIE Explorer",url:"https://mainnet.qiblockchain.online",standard:"EIP3091"}],5675:[{name:"filenova testnet explorer",url:"https://scantest.filenova.org",icon:"filenova",standard:"none"}],5678:[{name:"BlockScout",url:"https://3001-blockscout.a.dancebox.tanssi.network",standard:"EIP3091"}],5700:[{name:"Syscoin Testnet Block Explorer",url:"https://tanenbaum.io",standard:"EIP3091"}],5729:[{name:"Hika Network Testnet Explorer",url:"https://scan-testnet.hika.network",standard:"none"}],5758:[{name:"SatoshiChain Testnet Explorer",url:"https://testnet.satoshiscan.io",standard:"EIP3091"}],5845:[{name:"Tangle EVM Explorer",url:"https://explorer.tangle.tools",standard:"EIP3091",icon:"tangle"}],5851:[{name:"explorer",url:"https://explorer.ont.io/testnet",standard:"EIP3091"}],5858:[{name:"CTH Scan",url:"https://cthscan.com",standard:"EIP3091",icon:"blockscout"}],5869:[{name:"wegoscan2",url:"https://scan2.wegochain.io",standard:"EIP3091"}],6e3:[{name:"BBScan Testnet Explorer",url:"https://bbscan.io",standard:"none"}],6001:[{name:"BBScan Mainnet Explorer",url:"https://bbscan.io",standard:"none"}],6065:[{name:"treslechesexplorer",url:"https://explorer-test.tresleches.finance",icon:"treslechesexplorer",standard:"EIP3091"}],6066:[{name:"treslechesexplorer",url:"https://explorer.tresleches.finance",icon:"treslechesexplorer",standard:"EIP3091"}],6102:[{name:"Cascadia EVM Explorer",url:"https://explorer.cascadia.foundation",standard:"none",icon:"cascadia"},{name:"Cascadia Cosmos Explorer",url:"https://validator.cascadia.foundation",standard:"none",icon:"cascadia"}],6118:[{name:"UPTN Testnet Explorer",url:"https://testnet.explorer.uptn.io",standard:"EIP3091"}],6119:[{name:"UPTN Explorer",url:"https://explorer.uptn.io",standard:"EIP3091"}],6283:[{name:"blockscout",url:"https://blockscout.laos.laosfoundation.io",icon:"blockscout",standard:"EIP3091"}],6321:[{name:"Aurascan Explorer",url:"https://euphoria.aurascan.io",standard:"none",icon:"aura"}],6322:[{name:"Aurascan Explorer",url:"https://aurascan.io",standard:"none",icon:"aura"}],6398:[{name:"Connext Sepolia",url:"https://connext-sepolia.blockscout.com",icon:"connext",standard:"none"}],6550:[{name:"flascan",url:"https://testnet.flascan.net",standard:"EIP3091"}],6552:[{name:"Scolscan Testnet Explorer",url:"https://testnet-explorer.scolcoin.com",standard:"EIP3091"}],6565:[{name:"FOX Testnet Explorer",icon:"fox",url:"https://testnet.foxscan.app",standard:"none"}],6626:[{name:"blockscout",url:"https://scan.chain.pixie.xyz",standard:"none"}],6660:[{name:"Latest Chain",url:"http://testnet.latestchain.io",standard:"EIP3091"}],6661:[{name:"Cybria Explorer",url:"https://cybascan.io",icon:"cybascan",standard:"EIP3091"}],6666:[{name:"Cybria Explorer",url:"https://explorer.cybascan.io",icon:"cybascan",standard:"EIP3091"}],6678:[{name:"blockscout",url:"https://emcscan.com",standard:"EIP3091"}],6688:[{name:"IRISHub Cosmos Explorer (IOBScan)",url:"https://irishub.iobscan.io",standard:"none",icon:"irishub"}],6701:[{name:"PAXB Explorer",url:"https://scan.paxb.io",icon:"paxb",standard:"EIP3091"}],6779:[{name:"cpvscan",url:"https://scan.compverse.io",standard:"EIP3091"}],6789:[{name:"Gold Smart Chain",url:"https://mainnet.goldsmartchain.com",standard:"EIP3091"}],6805:[{name:"blockscout",url:"https://racescan.io",icon:"blockscout",standard:"EIP3091"}],6806:[{name:"blockscout",url:"https://testnet.racescan.io",icon:"blockscout",standard:"EIP3091"}],6868:[{name:"poolsscan",url:"https://scan.poolsmobility.com",icon:"POOLS",standard:"EIP3091"}],6969:[{name:"tombscout",url:"https://tombscout.com",standard:"none"}],7e3:[{name:"ZetaChain Mainnet Explorer",url:"https://explorer.zetachain.com",standard:"none"}],7001:[{name:"ZetaScan",url:"https://athens.explorer.zetachain.com",standard:"none"},{name:"Blockscout",url:"https://zetachain-athens-3.blockscout.com",icon:"blockscout",standard:"EIP3091"}],7007:[{name:"blockscout",url:"https://bstscan.com",standard:"EIP3091"}],7027:[{name:"Ella",url:"https://ella.network",standard:"EIP3091"}],7070:[{name:"Planq EVM Explorer (Blockscout)",url:"https://evm.planq.network",standard:"none"},{name:"Planq Cosmos Explorer (BigDipper)",url:"https://explorer.planq.network",standard:"none"}],7100:[{name:"numeexplorer",url:"https://explorer.numecrypto.com",icon:"nume",standard:"none"}],7171:[{name:"Bitrock Explorer",url:"https://explorer.bit-rock.io",standard:"EIP3091"}],7244:[{name:"ZEUS Testnet Explorer",url:"https://testnet-explorer.zeuschainscan.io",icon:"zeusicon",standard:"EIP3091"}],7300:[{name:"XPLA Verse Explorer",url:"https://explorer-xpla-verse.xpla.dev",standard:"EIP3091"}],7332:[{name:"Horizen EON Block Explorer",url:"https://eon-explorer.horizenlabs.io",icon:"eon",standard:"EIP3091"}],7341:[{name:"Shyft BX",url:"https://bx.shyft.network",standard:"EIP3091"}],7484:[{name:"raba",url:"https://x.raba.app/explorer",standard:"none"}],7518:[{name:"MEVerse Chain Explorer",url:"https://www.meversescan.io",standard:"none",icon:"meverse"}],7560:[{name:"Cyber Mainnet Explorer",url:"https://cyberscan.co",standard:"EIP3091"}],7575:[{name:"ADIL Testnet Explorer",url:"https://testnet.adilchain-scan.io",standard:"EIP3091"}],7576:[{name:"ADIL Mainnet Explorer",url:"https://adilchain-scan.io",standard:"EIP3091"}],7668:[{name:"rootnet",url:"https://explorer.rootnet.live",standard:"EIP3091"}],7672:[{name:"rootnet",url:"https://explorer.rootnet.cloud",standard:"EIP3091"}],7700:[{name:"Canto Explorer (OKLink)",url:"https://www.oklink.com/canto",standard:"EIP3091"},{name:"Canto EVM Explorer (Blockscout)",url:"https://tuber.build",standard:"EIP3091"},{name:"dexguru",url:"https://canto.dex.guru",icon:"dexguru",standard:"EIP3091"}],7701:[{name:"Canto Testnet EVM Explorer (Blockscout)",url:"https://testnet.tuber.build",standard:"none"},{name:"dexguru",url:"https://canto-test.dex.guru",icon:"dexguru",standard:"EIP3091"}],7771:[{name:"Bitrock Testnet Explorer",url:"https://testnetscan.bit-rock.io",standard:"EIP3091"}],7774:[{name:"GDCC",url:"https://gdccscan.io",standard:"none"}],7775:[{name:"GDCC",url:"https://testnet.gdccscan.io",standard:"none"}],7776:[{name:"Tracehawk",url:"https://pandaseascan.com",standard:"none"}],7777:[{name:"avascan",url:"https://testnet.avascan.info/blockchain/2mZ9doojfwHzXN3VXDQELKnKyZYxv7833U8Yq5eTfFx3hxJtiy",standard:"none"}],7778:[{name:"ORE Mainnet Explorer",icon:"ore",url:"https://oreniumscan.org",standard:"none"}],7798:[{name:"OpenEX Long Testnet Explorer",url:"https://scan.long.openex.network",icon:"oex",standard:"EIP3091"}],7860:[{name:"maalscan testnet",url:"https://testnet.maalscan.io",standard:"EIP3091"}],7862:[{name:"maalscan",url:"https://maalscan.io",standard:"EIP3091"}],7863:[{name:"maalscan testnet",url:"https://new-testnet.maalscan.io",standard:"EIP3091"}],7878:[{name:"Hazlor Testnet Explorer",url:"https://explorer.hazlor.com",standard:"none"}],7887:[{name:"Kinto Explorer",url:"https://explorer.kinto.xyz",icon:"kinto",standard:"EIP3091"}],7895:[{name:"ARDENIUM Athena Explorer",icon:"ard",url:"https://testnet.ardscan.com",standard:"none"}],7923:[{name:"blockscout",url:"https://explorer.dotblox.io",standard:"none"}],7924:[{name:"MO Explorer",url:"https://moscan.app",standard:"none"}],7979:[{name:"DOScan",url:"https://doscan.io",icon:"doschain",standard:"EIP3091"}],8e3:[{name:"Teleport EVM Explorer (Blockscout)",url:"https://evm-explorer.teleport.network",standard:"none",icon:"teleport"},{name:"Teleport Cosmos Explorer (Big Dipper)",url:"https://explorer.teleport.network",standard:"none",icon:"teleport"}],8001:[{name:"Teleport EVM Explorer (Blockscout)",url:"https://evm-explorer.testnet.teleport.network",standard:"none",icon:"teleport"},{name:"Teleport Cosmos Explorer (Big Dipper)",url:"https://explorer.testnet.teleport.network",standard:"none",icon:"teleport"}],8008:[{name:"Polynomial Explorer",url:"https://polynomialscan.io",standard:"none",icon:"polynomial"}],8047:[{name:"BOAT Mainnet Explorer",url:"https://scan.come.boats",icon:"boat",standard:"EIP3091"}],8054:[{name:"Karak Sepolia Explorer",url:"https://explorer.sepolia.karak.network",standard:"EIP3091"}],8080:[{name:"Shardeum Scan",url:"https://explorer-liberty10.shardeum.org",standard:"EIP3091"}],8081:[{name:"Shardeum Scan",url:"https://explorer-liberty20.shardeum.org",standard:"EIP3091"}],8082:[{name:"Shardeum Scan",url:"https://explorer-sphinx.shardeum.org",standard:"EIP3091"}],8131:[{name:"meerscan testnet",icon:"meer",url:"https://testnet-qng.qitmeer.io",standard:"EIP3091"}],8181:[{name:"Testnet BeOne Chain",url:"https://testnet.beonescan.com",icon:"beonechain",standard:"none"}],8192:[{name:"blockscout",url:"https://toruscan.com",icon:"blockscout",standard:"EIP3091"}],8194:[{name:"blockscout",url:"https://testnet.toruscan.com",icon:"blockscout",standard:"EIP3091"}],8217:[{name:"Klaytnscope",url:"https://scope.klaytn.com",standard:"EIP3091"},{name:"Klaytnfinder",url:"https://klaytnfinder.io",standard:"EIP3091"}],8227:[{name:"SPACE Explorer",url:"https://subnets.avax.network/space",standard:"EIP3091"}],8272:[{name:"Blockton Explorer",url:"https://blocktonscan.com",standard:"none"}],8329:[{name:"Lorenzo Explorer",url:"https://scan.lorenzo-protocol.xyz",standard:"none",icon:"lorenzo"}],8333:[{name:"Blockscout",url:"https://explorer.b3.fun",standard:"EIP3091"}],8453:[{name:"basescan",url:"https://basescan.org",standard:"none"},{name:"basescout",url:"https://base.blockscout.com",icon:"blockscout",standard:"EIP3091"},{name:"dexguru",url:"https://base.dex.guru",icon:"dexguru",standard:"EIP3091"}],8668:[{name:"Hela Official Runtime Mainnet Explorer",url:"https://mainnet-blockexplorer.helachain.com",standard:"EIP3091"}],8723:[{name:"OLO Block Explorer",url:"https://www.olo.network",standard:"EIP3091"}],8726:[{name:"Storscan",url:"https://explorer-storagechain.invo.zone/?network=StorageChain",standard:"none"}],8727:[{name:"Storscan",url:"https://explorer-storagechain.invo.zone/?network=StorageChain%20Testnet",standard:"none"}],8732:[{name:"Bullionscan",url:"https://bullionscan.org",standard:"EIP3091"}],8738:[{name:"alphscan",url:"https://explorer.alph.network",standard:"EIP3091"}],8822:[{name:"explorer",url:"https://explorer.evm.iota.org",icon:"iotaevm",standard:"EIP3091"}],8844:[{name:"Hydra Chain Testnet explorer",url:"https://hydragon.hydrachain.org",icon:"hydra",standard:"EIP3091"}],8848:[{name:"MARO Scan",url:"https://scan.ma.ro/#",standard:"none"}],8866:[{name:"Lumio explorer",url:"https://explorer.lumio.io",standard:"none"}],8869:[{name:"lif3scout",url:"https://lif3scout.com",standard:"none"}],8880:[{name:"Unique Scan",url:"https://uniquescan.io/unique",standard:"none"}],8881:[{name:"Unique Scan / Quartz",url:"https://uniquescan.io/quartz",standard:"none"}],8882:[{name:"Unique Scan / Opal",url:"https://uniquescan.io/opal",standard:"none"}],8883:[{name:"Unique Scan / Sapphire",url:"https://uniquescan.io/sapphire",standard:"none"}],8886:[{name:"Avenium Explorer Testnet",icon:"avenium",url:"https://testnet.avescan.net",standard:"none"}],8888:[{name:"XANAChain",url:"https://xanachain.xana.net",standard:"EIP3091"}],8890:[{name:"ORE Testnet Explorer",icon:"ore",url:"https://testnet.oreniumscan.org",standard:"none"}],8898:[{name:"mmtscan",url:"https://mmtscan.io",standard:"EIP3091",icon:"mmt"}],8899:[{name:"JIBCHAIN Explorer",url:"https://exp-l1.jibchain.net",standard:"EIP3091"}],8911:[{name:"algscan",url:"https://scan.algen.network",icon:"alg",standard:"EIP3091"}],8912:[{name:"algscan",url:"https://scan.test.algen.network",icon:"alg",standard:"EIP3091"}],8921:[{name:"algl2scan",url:"https://scan.alg2.algen.network",icon:"algl2",standard:"EIP3091"}],8922:[{name:"algl2scan",url:"https://scan.alg2-test.algen.network",icon:"algl2",standard:"EIP3091"}],8989:[{name:"gmmtscan",url:"https://scan.gmmtchain.io",standard:"EIP3091",icon:"gmmt"}],9e3:[{name:"Evmos Explorer (Escan)",url:"https://testnet.escan.live",standard:"none",icon:"evmos"}],9001:[{name:"Evmos Explorer (Escan)",url:"https://escan.live",standard:"none",icon:"evmos"}],9007:[{name:"Shidoblock Testnet Explorer",url:"https://testnet.shidoscan.com",standard:"none",icon:"shidoChain"}],9008:[{name:"Shidoblock Mainnet Explorer",url:"https://shidoscan.com",standard:"none",icon:"shidoChain"}],9012:[{name:"berylbit-explorer",url:"https://explorer.berylbit.io",standard:"EIP3091"}],9024:[{name:"Nexablock Testnet Explorer",url:"https://testnet.nexablockscan.io",standard:"none",icon:"nexaChain"}],9025:[{name:"Nexablock Mainnet Explorer",url:"https://nexablockscan.io",standard:"none",icon:"nexaChain"}],9223:[{name:"Codefin Net Explorer",url:"https://explorer.codefin.pro",standard:"EIP3091"}],9339:[{name:"Dogcoin",url:"https://testnet.dogcoin.network",standard:"EIP3091"}],9372:[{name:"blockscout",url:"https://explorer.testnet.oasys.games",standard:"EIP3091"}],9393:[{name:"basescout",url:"https://sepolia-delascan.deperp.com",icon:"blockscout",standard:"EIP3091"}],9395:[{name:"Evoke SmartChain Explorer",url:"https://explorer.evokescan.org",standard:"EIP3091"}],9496:[{name:"WeaveVM Explorer",url:"https://explorer.wvm.dev",standard:"EIP3091"}],9527:[{name:"rangersscan-robin",url:"https://robin-rangersscan.rangersprotocol.com",standard:"none"}],9528:[{name:"QEasyWeb3 Explorer",url:"https://www.qeasyweb3.com",standard:"EIP3091"}],9559:[{name:"Neon Blockchain Explorer",url:"https://testnet-scan.neonlink.io",standard:"EIP3091",icon:"neonlink"}],9700:[{name:"Oort MainnetDev Scan",url:"https://dev-scan.oortech.com",standard:"none",icon:"oort"}],9728:[{name:"Boba BNB Testnet block explorer",url:"https://testnet.bobascan.com",standard:"none"}],9768:[{name:"MainnetZ",url:"https://testnet.mainnetz.io",standard:"EIP3091"}],9779:[{name:"Pepe Explorer",url:"https://explorer.pepenetwork.io",icon:"pepenetwork",standard:"none"}],9789:[{name:"Tabi Testnet Explorer",url:"https://testnet.tabiscan.com",standard:"none"}],9797:[{name:"OptimusZ7 Mainnet Explorer",url:"https://explorer.optimusz7.com",standard:"EIP3091"}],9818:[{name:"IMPERIUM TESTNET Explorer",icon:"timp",url:"https://network.impscan.com",standard:"none"}],9819:[{name:"IMPERIUM Explorer",icon:"imp",url:"https://impscan.com",standard:"none"}],9876:[{name:"BinaryChain Testnet Explorer",url:"https://explorer.testnet.binarychain.org",standard:"EIP3091"}],9888:[{name:"Dogelayer mainnet explorer",url:"https://dl-explorer.dogelayer.org",standard:"EIP3091"}],9898:[{name:"Larissa Scan",url:"https://scan.larissa.network",standard:"EIP3091"}],9911:[{name:"escscan",url:"https://escscan.com",icon:"espento",standard:"EIP3091"}],9977:[{name:"Mind Chain explorer",url:"https://testnet.mindscan.info",standard:"EIP3091"}],9980:[{name:"combotrace explorer",url:"https://combotrace.nodereal.io",standard:"EIP3091"}],9981:[{name:"Volley Mainnet Explorer",url:"https://volleyscan.io",standard:"EIP3091"}],9990:[{name:"Polkadot.js",url:"https://polkadot.js.org/apps/?rpc=wss://wsspc1-qa.agung.peaq.network#/explorer",standard:"none"},{name:"Subscan",url:"https://agung.subscan.io",standard:"none"}],9996:[{name:"Mind Chain explorer",url:"https://mainnet.mindscan.info",standard:"EIP3091"}],9997:[{name:"blockscout",url:"https://testnet-rollup-explorer.altlayer.io",icon:"blockscout",standard:"EIP3091"}],10024:[{name:"Gon Explorer",url:"https://gonscan.com",standard:"none"}],10081:[{name:"Testnet Block Explorer",url:"https://explorer.testnet.japanopenchain.org",standard:"EIP3091"}],10096:[{name:"Blockscout",url:"https://explorer.metanovaverse.com",standard:"EIP3091"},{name:"Cosmos Explorer (Ping)",url:"https://ping.metanovaverse.com/metanovaverse",standard:"none"}],10200:[{name:"blockscout-chiadochain",url:"https://blockscout.chiadochain.net",icon:"blockscout",standard:"EIP3091"},{name:"blockscout",url:"https://gnosis-chiado.blockscout.com",icon:"blockscout",standard:"EIP3091"}],10201:[{name:"MaxxChain Block Explorer",url:"https://explorer.maxxchain.org",standard:"EIP3091"}],10222:[{name:"GLScan Explorer",url:"https://glscan.io",standard:"none",icon:"glc"}],10242:[{name:"blockscout",url:"https://explorer.arthera.net",icon:"blockscout",standard:"EIP3091"}],10243:[{name:"blockscout",url:"https://explorer-test.arthera.net",icon:"blockscout",standard:"EIP3091"}],10248:[{name:"0xtrade Scan",url:"https://www.0xtscan.com",standard:"none"}],10321:[{name:"TAO Mainnet Explorer",url:"https://taoscan.org",standard:"EIP3091"}],10324:[{name:"TAO Testnet Explorer",url:"https://testnet.taoscan.org",standard:"EIP3091"}],10395:[{name:"Worldland Explorer",url:"https://testscan.worldland.foundation",standard:"EIP3091"}],10507:[{name:"ethernal",url:"https://mainnet.num.network",standard:"EIP3091"}],10508:[{name:"ethernal",url:"https://testnet.num.network",standard:"EIP3091"}],10823:[{name:"CCP Explorer",url:"https://cryptocoinpay.info",standard:"EIP3091"}],10849:[{name:"Lamina1 Explorer",url:"https://subnets.avax.network/lamina1",standard:"EIP3091"}],10850:[{name:"Lamina1 Identity Explorer",url:"https://subnets.avax.network/lamina1id",standard:"EIP3091"}],10946:[{name:"explorer",url:"https://explorer.quadrans.io",icon:"quadrans",standard:"EIP3091"}],10947:[{name:"explorer",url:"https://explorer.testnet.quadrans.io",icon:"quadrans",standard:"EIP3091"}],11011:[{name:"blockscout",url:"https://shape-sepolia-explorer.alchemy.com",standard:"EIP3091"}],11110:[{name:"Astra EVM Explorer (Blockscout)",url:"https://explorer.astranaut.io",standard:"none",icon:"astra"},{name:"Astra PingPub Explorer",url:"https://ping.astranaut.io/astra",standard:"none",icon:"astra"}],11111:[{name:"Avalanche Subnet Explorer",url:"https://subnets-test.avax.network/wagmi",standard:"EIP3091"}],11115:[{name:"Astra EVM Explorer",url:"https://explorer.astranaut.dev",standard:"EIP3091",icon:"astra"},{name:"Astra PingPub Explorer",url:"https://ping.astranaut.dev/astra",standard:"none",icon:"astra"}],11119:[{name:"hashbitscan",url:"https://explorer.hashbit.org",standard:"EIP3091"}],11124:[{name:"Abstract Block Explorer",url:"https://explorer.testnet.abs.xyz",standard:"none"}],11221:[{name:"shinescan",url:"https://shinescan.io",icon:"shine",standard:"none"}],11227:[{name:"JIRITSUTES Explorer",url:"https://subnets-test.avax.network/jiritsutes",standard:"EIP3091"}],11235:[{name:"Mainnet HAQQ Explorer",url:"https://explorer.haqq.network",standard:"EIP3091"}],11437:[{name:"Shyft Testnet BX",url:"https://bx.testnet.shyft.network",standard:"EIP3091"}],11501:[{name:"bevm mainnet scan",url:"https://scan-mainnet.bevm.io",standard:"none"}],11503:[{name:"bevm testnet scan",url:"https://scan-testnet.bevm.io",standard:"none"}],11521:[{name:"satschain scan",url:"https://scan-satschain.bevm.io",standard:"none"}],11612:[{name:"Sardis",url:"https://testnet.sardisnetwork.com",standard:"EIP3091"}],11822:[{name:"ArtelaScan",url:"https://betanet-scan.artela.network",standard:"EIP3091"}],11891:[{name:"Polygon Supernet Arianee Explorer",url:"https://polygonsupernet.explorer.arianee.net",standard:"EIP3091"}],12001:[{name:"Blockscout",url:"https://explorer.flash.fuse.io",standard:"none"}],12009:[{name:"SatoshiChain Explorer",url:"https://satoshiscan.io",standard:"EIP3091"}],12020:[{name:"blockscout",url:"https://explorer.aternoschain.com",icon:"blockscout",standard:"EIP3091"}],12051:[{name:"zeroscan",url:"https://betaenv.singularity.gold:18002",standard:"EIP3091"}],12052:[{name:"zeroscan",url:"https://zeroscan.singularity.gold",standard:"EIP3091"}],12123:[{name:"BRC Chain Explorer",url:"https://scan.brcchain.io",standard:"EIP3091"}],12306:[{name:"fiboscan",url:"https://scan.fibochain.org",standard:"EIP3091"}],12324:[{name:"L3X Mainnet Explorer",url:"https://explorer.l3x.com",standard:"EIP3091"}],12325:[{name:"L3X Testnet Explorer",url:"https://explorer-testnet.l3x.com",standard:"EIP3091"}],12345:[{name:"StepScan",url:"https://testnet.stepscan.io",icon:"step",standard:"EIP3091"}],12553:[{name:"RSS3 VSL Scan",url:"https://scan.rss3.io",standard:"EIP3091"}],12715:[{name:"Rikeza Blockchain explorer",url:"https://testnet.rikscan.com",standard:"EIP3091"}],12781:[{name:"Playdapp Testnet Explorer",url:"https://subnets-test.avax.network/playdappte",standard:"EIP3091"}],12890:[{name:"Quantum Scan Testnet",url:"https://testnet.quantumscan.org",standard:"EIP3091"}],12898:[{name:"Avalanche Subnet Explorer",url:"https://subnets-test.avax.network/letsplayfair",standard:"EIP3091"}],13e3:[{name:"SPS Explorer",url:"http://spsscan.ssquad.games",standard:"EIP3091"}],13308:[{name:"Creditscan",url:"https://scan.creditsmartchain.com",icon:"credit",standard:"EIP3091"}],13337:[{name:"Beam Explorer",url:"https://subnets-test.avax.network/beam",standard:"EIP3091"}],13371:[{name:"Immutable explorer",url:"https://explorer.immutable.com",standard:"EIP3091",icon:"immutable"}],13381:[{name:"phoenixplorer",url:"https://phoenixplorer.com",standard:"EIP3091"}],13396:[{name:"Masa Explorer",url:"https://subnets.avax.network/masa",standard:"EIP3091"}],13473:[{name:"Immutable Testnet explorer",url:"https://explorer.testnet.immutable.com",standard:"EIP3091",icon:"immutable"}],13505:[{name:"Gravity Alpha Testnet Sepolia Explorer",url:"https://explorer-sepolia.gravity.xyz",standard:"EIP3091"}],13600:[{name:"qbitscan",url:"https://explorer.qbitscan.com",icon:"kronobit",standard:"EIP3091"}],13812:[{name:"Susono",url:"http://explorer.opn.network",standard:"none"}],14e3:[{name:"SPS Test Explorer",url:"https://explorer.3sps.net",standard:"EIP3091"}],14324:[{name:"Evolve Testnet Explorer",url:"https://testnet.evolveblockchain.io",standard:"EIP3091"}],14333:[{name:"Vitruveo Testnet Explorer",url:"https://test-explorer.vitruveo.xyz",icon:"vitruveo",standard:"EIP3091"}],14801:[{name:"satoriscan",url:"https://satori.vanascan.io",standard:"EIP3091"}],15003:[{name:"Immutable Devnet explorer",url:"https://explorer.dev.immutable.com",standard:"EIP3091",icon:"immutable"}],15257:[{name:"Poodl Testnet Explorer",url:"https://testnet.poodl.org",standard:"EIP3091"}],15259:[{name:"Poodl Mainnet Explorer",url:"https://explorer.poodl.org",standard:"EIP3091"}],15430:[{name:"KYMTC Mainnet Explorer",url:"https://kymaticscan.online",icon:"kymtc",standard:"EIP3091"}],15551:[{name:"loopscan",url:"http://explorer.mainnetloop.com",standard:"none"}],15555:[{name:"Trust EVM Explorer",url:"https://trustscan.one",standard:"EIP3091"}],15557:[{name:"EOS EVM Explorer",url:"https://explorer.testnet.evm.eosnetwork.com",standard:"EIP3091"}],16116:[{name:"DeFiVerse Explorer",url:"https://scan.defi-verse.org",icon:"defiverse",standard:"EIP3091"}],16166:[{name:"Testnet Block Explorer",url:"https://cypherium.tryethernal.com",standard:"EIP3091"}],16180:[{name:"Avalanche Subnet Explorer",url:"https://subnets.avax.network/plyr",standard:"EIP3091"}],16481:[{name:"Pivotal Scan",url:"https://sepolia.pivotalscan.xyz",standard:"EIP3091"}],16507:[{name:"GchainExplorer",url:"https://gchainexplorer.genesys.network",standard:"EIP3091"}],16600:[{name:"0G Chain Explorer",url:"https://chainscan-newton.0g.ai",standard:"none"}],16688:[{name:"IRISHub Testnet Cosmos Explorer (IOBScan)",url:"https://nyancat.iobscan.io",standard:"none",icon:"nyancat"}],16718:[{name:"AirDAO Network Explorer",url:"https://airdao.io/explorer",standard:"none"}],16888:[{name:"ivarscan",url:"https://testnet.ivarscan.com",standard:"EIP3091"}],17e3:[{name:"Holesky Explorer",url:"https://holesky.beaconcha.in",icon:"ethereum",standard:"EIP3091"},{name:"otterscan-holesky",url:"https://holesky.otterscan.io",icon:"ethereum",standard:"EIP3091"},{name:"Holesky Etherscan",url:"https://holesky.etherscan.io",icon:"ethereum",standard:"EIP3091"}],17069:[{name:"blockscout",url:"https://explorer.garnetchain.com",icon:"blockscout",standard:"EIP3091"}],17071:[{name:"blockscout",url:"https://explorer.onchainpoints.xyz",icon:"blockscout",standard:"EIP3091"}],17117:[{name:"DeFiVerse Testnet Explorer",url:"https://scan-testnet.defi-verse.org",icon:"defiverse",standard:"EIP3091"}],17171:[{name:"G8Chain",url:"https://mainnet.oneg8.network",standard:"EIP3091"}],17172:[{name:"ECLIPSE Explorer",url:"https://subnets-test.avax.network/eclipse",standard:"EIP3091"}],17180:[{name:"Palettescan",url:"https://testnet.palettescan.com",icon:"PLT",standard:"none"}],17217:[{name:"konet-explorer",url:"https://explorer.kon-wallet.com",standard:"EIP3091"}],17777:[{name:"EOS EVM Explorer",url:"https://explorer.evm.eosnetwork.com",standard:"EIP3091"}],18e3:[{name:"Game Network",url:"https://explorer.fod.games",standard:"EIP3091"}],18122:[{name:"stnscan",url:"https://stnscan.com",icon:"stn",standard:"none"}],18159:[{name:"explorer-proofofmemes",url:"https://memescan.io",standard:"EIP3091"}],18181:[{name:"G8Chain",url:"https://testnet.oneg8.network",standard:"EIP3091"}],18233:[{name:"blockscout",url:"https://unreal.blockscout.com",icon:"unreal",standard:"EIP3091"}],18686:[{name:"MXC zkEVM Moonchain",url:"https://explorer.moonchain.com",standard:"EIP3091"}],18888:[{name:"Titan Explorer",url:"https://tkxscan.io/Titan",standard:"none",icon:"titan_tkx"}],18889:[{name:"Titan Explorer",url:"https://titan-testnet-explorer-light.titanlab.io/Titan%20Testnet",standard:"none",icon:"titan_tkx"}],19011:[{name:"HOME Verse Explorer",url:"https://explorer.oasys.homeverse.games",standard:"EIP3091"}],19077:[{name:"BlockX EVM Explorer (Blockscout)",url:"https://testnet-explorer.blockxnet.com",standard:"EIP3091"},{name:"BlockX Cosmos Explorer (Ping)",url:"https://ping.blockxnet.com/blockx-atlantis-testnet",standard:"none"}],19191:[{name:"BlockX EVM Explorer (Blockscout)",url:"https://explorer.blockxnet.com",standard:"EIP3091"},{name:"BlockX Cosmos Explorer (Ping)",url:"https://ping.blockxnet.com/blockx",standard:"none"}],19224:[{name:"Decentraconnect Social",url:"https://decentraconnect.io",standard:"EIP3091"}],19600:[{name:"LBRY Block Explorer",url:"https://explorer.lbry.com",icon:"lbry",standard:"none"}],19845:[{name:"BTCIXScan",url:"https://btcixscan.com",standard:"none"}],20001:[{name:"CamelarkScan",url:"https://scan.camelark.com",standard:"EIP3091"}],20041:[{name:"NizaScan",url:"https://nizascan.io",standard:"EIP3091"}],20073:[{name:"NizaScan",url:"https://testnet.nizascan.io",standard:"EIP3091"}],20736:[{name:"P12 Chain Explorer",url:"https://explorer.p12.games",standard:"EIP3091"}],20765:[{name:"JONO11 Explorer",url:"https://subnets-test.avax.network/jono11",standard:"EIP3091"}],21004:[{name:"C4EI sirato",url:"https://exp.c4ei.net",icon:"c4ei",standard:"none"}],21133:[{name:"AAH Blockscout",url:"https://exp.c4ex.net",icon:"aah",standard:"EIP3091"}],21223:[{name:"DCpay Mainnet Explorer",url:"https://mainnet.dcpay.io",standard:"EIP3091"}],21224:[{name:"DCpay Testnet Explorer",url:"https://testnet.dcpay.io",standard:"EIP3091"}],21337:[{name:"UNcover",url:"https://uncoverexplorer.com",standard:"none"}],21363:[{name:"Lestnet Explorer",url:"https://explore.lestnet.org",icon:"blockscout",standard:"EIP3091"}],21816:[{name:"omChain Explorer",url:"https://explorer.omchain.io",standard:"EIP3091"}],21912:[{name:"BSL Mainnet Explorer",url:"https://scan.nftruth.io",standard:"EIP3091"}],22023:[{name:"Taycan Explorer(Blockscout)",url:"https://taycan-evmscan.hupayx.io",standard:"none",icon:"shuffle"},{name:"Taycan Cosmos Explorer(BigDipper)",url:"https://taycan-cosmoscan.hupayx.io",standard:"none",icon:"shuffle"}],22040:[{name:"AirDAO Network Explorer",url:"https://testnet.airdao.io/explorer",standard:"none"}],22222:[{name:"Nautscan",url:"https://nautscan.com",standard:"EIP3091",icon:"nautilus"}],22324:[{name:"GoldXChain Testnet Explorer",url:"https://testnet-explorer.goldxchain.io",standard:"EIP3091"}],22776:[{name:"maposcan",url:"https://maposcan.io",standard:"EIP3091"}],23006:[{name:"Antofy Testnet",url:"https://test.antofyscan.com",standard:"EIP3091"}],23118:[{name:"opsideInfo",url:"https://opside.info",standard:"EIP3091"}],23294:[{name:"Oasis Sapphire Explorer",url:"https://explorer.oasis.io/mainnet/sapphire",standard:"EIP3091"}],23295:[{name:"Oasis Sapphire Testnet Explorer",url:"https://explorer.oasis.io/testnet/sapphire",standard:"EIP3091"}],23451:[{name:"drxscan",url:"https://scan.dreyerx.com",icon:"dreyerx",standard:"EIP3091"}],23452:[{name:"drxscan",url:"https://testnet-scan.dreyerx.com",icon:"dreyerx",standard:"EIP3091"}],23888:[{name:"Blast Testnet",url:"http://testnet-explorer.blastblockchain.com",standard:"EIP3091"}],24076:[{name:"KYMTC Testnet Explorer",url:"https://testnet-explorer.kymaticscan.online",icon:"kymtc",standard:"EIP3091"}],25186:[{name:"LiquidLayer Mainnet Explorer",url:"https://scan.liquidlayer.network",standard:"EIP3091"}],25839:[{name:"AlveyScan Testnet",url:"https://alveytestnet.com",icon:"alveychain",standard:"EIP3091"}],25888:[{name:"Hammer Chain Explorer",url:"https://www.hammerchain.io",standard:"none"}],25925:[{name:"bkcscan-testnet",url:"https://testnet.bkcscan.com",standard:"none",icon:"bkc"}],26026:[{name:"polkadotjs",url:"https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Ftestnet.dev.svcs.ferrumnetwork.io#/explorer",standard:"none"}],26482:[{name:"Blockscout",url:"https://explorer-testnet.ducatusx.com",icon:"blockscout",standard:"EIP3091"}],26483:[{name:"Blockscout",url:"https://explorer.ducatusx.com",icon:"blockscout",standard:"EIP3091"}],26600:[{name:"Hertz Scan",url:"https://hertzscan.com",icon:"hertz-network",standard:"EIP3091"}],26863:[{name:"OasisChain Explorer",url:"https://scan.oasischain.io",standard:"EIP3091"}],27181:[{name:"blockscout",url:"https://blockscout.klaosnova.laosfoundation.io",icon:"k-laos",standard:"EIP3091"}],27483:[{name:"Nanon Sepolia Rollup Testnet Explorer",url:"https://sepolia-explorer.nanon.network",standard:"EIP3091"}],27827:[{name:"ZEROONEMAI Explorer",url:"https://subnets.avax.network/zeroonemai",standard:"EIP3091"}],28516:[{name:"blockscout",url:"https://explorer-sepolia.vizing.com",icon:"vizing",standard:"EIP3091"}],28518:[{name:"blockscout",url:"https://explorer.vizing.com",icon:"vizing",standard:"EIP3091"}],28528:[{name:"blockscout",url:"https://blockscout.com/optimism/bedrock-alpha",standard:"EIP3091"}],28882:[{name:"Bobascan",url:"https://testnet.bobascan.com",standard:"none"}],29112:[{name:"blockscout",url:"https://testnet.explorer.hychain.com",icon:"hychain",standard:"EIP3091"}],29223:[{name:"NexaShell",url:"https://nexa.sh",standard:"none",icon:"nexashell"}],29536:[{name:"KaiChain Explorer",url:"https://testnet-explorer.kaichain.net",standard:"EIP3091"}],29548:[{name:"MCH Verse Explorer",url:"https://explorer.oasys.mycryptoheroes.net",standard:"EIP3091"}],30067:[{name:"Piece Scan",url:"https://testnet-scan.piecenetwork.com",standard:"EIP3091"}],30088:[{name:"MiYou block explorer",url:"https://myscan.miyou.io",standard:"EIP3091"}],30103:[{name:"canxium explorer",url:"https://cerium-explorer.canxium.net",standard:"none"}],30730:[{name:"mevm explorer",url:"https://explorer.movementlabs.xyz",standard:"none"}],30731:[{name:"mevm explorer",url:"https://explorer.movementlabs.xyz",standard:"none"}],30732:[{name:"mevm explorer",url:"https://explorer.testnet.imola.movementlabs.xyz",standard:"none"}],31223:[{name:"cloudtxscan",url:"https://scan.cloudtx.finance",standard:"EIP3091"}],31224:[{name:"cloudtxexplorer",url:"https://explorer.cloudtx.finance",standard:"EIP3091"}],31337:[{name:"GoChain Testnet Explorer",url:"https://testnet-explorer.gochain.io",standard:"EIP3091"}],31414:[{name:"Evoke SmartChain Testnet Explorer",url:"https://testnet-explorer.evokescan.org",standard:"EIP3091"}],31753:[{name:"Xchain Mainnet Explorer",url:"https://xchainscan.com",standard:"EIP3091"}],31754:[{name:"Xchain Testnet Explorer",url:"https://xchaintest.net",standard:"EIP3091"}],32001:[{name:"W3Gamez Holesky Explorer",url:"https://w3gamez-holesky.web3games.com",icon:"web3games",standard:"EIP3091"}],32382:[{name:"Santiment Intelligence Explorer",url:"https://app-explorer-pos.sanr.app",standard:"none"}],32520:[{name:"Brise Scan",url:"https://brisescan.com",icon:"brise",standard:"EIP3091"}],32659:[{name:"fsnscan",url:"https://fsnscan.com",icon:"fsnscan",standard:"EIP3091"}],32769:[{name:"Zilliqa EVM Explorer",url:"https://evmx.zilliqa.com",standard:"none"}],32990:[{name:"Zilliqa EVM Isolated Server Explorer",url:"https://devex.zilliqa.com/?network=https://zilliqa-isolated-server.zilliqa.com",standard:"none"}],33033:[{name:"Entangle Mainnet Explorer",url:"https://explorer.entangle.fi",standard:"none"}],33101:[{name:"Zilliqa EVM Explorer",url:"https://evmx.zilliqa.com",standard:"none"}],33103:[{name:"Zilliqa 2 EVM proto-testnet explorer",url:"https://explorer.zq2-prototestnet.zilliqa.com",standard:"EIP3091"}],33111:[{name:"Curtis Explorer",url:"https://explorer.curtis.apechain.com",standard:"EIP3091"}],33210:[{name:"CLOUDVERSE Explorer",url:"https://subnets.avax.network/cloudverse",standard:"EIP3091"}],33333:[{name:"avescan",url:"https://avescan.io",icon:"avescan",standard:"EIP3091"}],33385:[{name:"Zilliqa EVM Devnet Explorer",url:"https://otterscan.devnet.zilliqa.com",standard:"EIP3091"}],33401:[{name:"SlingShot Explorer",url:"https://explore.slingshotdao.com",icon:"slingshot",standard:"EIP3091"}],33469:[{name:"Zilliqa-2 EVM Devnet Explorer",url:"https://explorer.zq2-devnet.zilliqa.com",standard:"EIP3091"}],33979:[{name:"FunkiScan",url:"https://funkiscan.io",standard:"none"},{name:"Funki Mainnet Explorer",url:"https://funki.superscan.network",standard:"none"}],34443:[{name:"modescout",url:"https://explorer.mode.network",standard:"none"}],34504:[{name:"ZEUS Mainnet Explorer",url:"https://zeuschainscan.io",icon:"zeusicon",standard:"EIP3091"}],35011:[{name:"J2O Taro Explorer",url:"https://exp.j2o.io",icon:"j2otaro",standard:"EIP3091"}],35441:[{name:"Q explorer",url:"https://explorer.q.org",icon:"q",standard:"EIP3091"}],35443:[{name:"Q explorer",url:"https://explorer.qtestnet.org",icon:"q",standard:"EIP3091"}],38400:[{name:"rangersscan",url:"https://scan.rangersprotocol.com",standard:"none"}],38401:[{name:"rangersscan-robin",url:"https://robin-rangersscan.rangersprotocol.com",standard:"none"}],39656:[{name:"Primal Network",url:"https://prmscan.org",standard:"EIP3091"}],39815:[{name:"ohoscan",url:"https://ohoscan.com",icon:"ohoscan",standard:"EIP3091"}],41455:[{name:"Aleph Zero EVM Mainnet Explorer",url:"https://evm-explorer.alephzero.org",icon:"aleph-zero",standard:"none"}],41500:[{name:"Opulent-X BETA Explorer",url:"https://explorer.opulent-x.com",standard:"none"}],42072:[{name:"AgentLayer Testnet Explorer",url:"https://testnet-explorer.agentlayer.xyz",standard:"EIP3091"}],42161:[{name:"Arbiscan",url:"https://arbiscan.io",standard:"EIP3091"},{name:"Arbitrum Explorer",url:"https://explorer.arbitrum.io",standard:"EIP3091"},{name:"dexguru",url:"https://arbitrum.dex.guru",icon:"dexguru",standard:"EIP3091"}],42170:[{name:"Arbitrum Nova Chain Explorer",url:"https://nova-explorer.arbitrum.io",icon:"blockscout",standard:"EIP3091"},{name:"dexguru",url:"https://nova.dex.guru",icon:"dexguru",standard:"EIP3091"}],42220:[{name:"Celoscan",url:"https://celoscan.io",standard:"EIP3091"},{name:"blockscout",url:"https://explorer.celo.org",standard:"none"}],42261:[{name:"Oasis Emerald Testnet Explorer",url:"https://explorer.oasis.io/testnet/emerald",standard:"EIP3091"}],42262:[{name:"Oasis Emerald Explorer",url:"https://explorer.oasis.io/mainnet/emerald",standard:"EIP3091"}],42355:[{name:"GoldXChain Explorer",url:"https://explorer.goldxchain.io",standard:"EIP3091"}],42421:[{name:"Asset Chain Testnet Explorer",url:"https://scan-testnet.assetchain.org",standard:"EIP3091"}],42766:[{name:"blockscout",url:"https://scan.zkfair.io",icon:"zkfair",standard:"EIP3091"}],42793:[{name:"Etherlink Explorer",url:"https://explorer.etherlink.com",standard:"EIP3091"}],42801:[{name:"Gesoten Verse Testnet Explorer",url:"https://explorer.testnet.verse.gesoten.com",standard:"EIP3091"}],42888:[{name:"kintoscan",url:"http://35.215.120.180:4000",standard:"EIP3091"}],43113:[{name:"snowtrace",url:"https://testnet.snowtrace.io",standard:"EIP3091"}],43114:[{name:"snowtrace",url:"https://snowtrace.io",standard:"EIP3091"}],43851:[{name:"ZKFair Testnet Info",url:"https://testnet-scan.zkfair.io",icon:"zkfair",standard:"EIP3091"}],44444:[{name:"blockscout",url:"https://frenscan.io",icon:"fren",standard:"EIP3091"}],44445:[{name:"Quantum Explorer",url:"https://qtm.avescoin.io",icon:"quantum",standard:"EIP3091"}],44787:[{name:"Alfajoresscan",url:"https://alfajores.celoscan.io",standard:"EIP3091"}],45e3:[{name:"autobahn explorer",url:"https://explorer.autobahn.network",icon:"autobahn",standard:"EIP3091"}],45454:[{name:"blockscout",url:"https://swamps-explorer.tc.l2aas.com",icon:"blockscout",standard:"EIP3091"}],45510:[{name:"Deelance Mainnet Explorer",url:"https://deescan.com",standard:"EIP3091"}],45513:[{name:"blockscout",url:"https://blessnet.calderaexplorer.xyz",icon:"bless",standard:"EIP3091"}],46688:[{name:"fsnscan",url:"https://testnet.fsnscan.com",icon:"fsnscan",standard:"EIP3091"}],47763:[{name:"Neo X - Explorer",url:"https://xexplorer.neo.org",standard:"EIP3091"}],47803:[{name:"ReDeFi Scan",url:"https://scanlayer1.redefi.world",standard:"EIP3091"}],47805:[{name:"rei-scan",url:"https://scan.rei.network",standard:"none"}],48795:[{name:"SPACE Explorer",url:"https://subnets-test.avax.network/space",standard:"EIP3091"}],48899:[{name:"Zircuit",url:"https://explorer.testnet.zircuit.com",icon:"zircuit",standard:"none"}],48900:[{name:"Zircuit",url:"https://explorer.zircuit.com",icon:"zircuit",standard:"none"}],49049:[{name:"Wire Explorer",url:"https://floripa-explorer.wireshape.org",standard:"EIP3091"}],49088:[{name:"explorer-thebifrost",url:"https://explorer.testnet.bifrostnetwork.com",standard:"EIP3091"}],49321:[{name:"blockscout",url:"https://testnet.gunzscan.io",standard:"EIP3091"}],50005:[{name:"Yooldo Verse Explorer",url:"https://explorer.yooldo-verse.xyz",standard:"EIP3091"}],50006:[{name:"Yooldo Verse Explorer",url:"https://explorer.testnet.yooldo-verse.xyz",standard:"EIP3091"}],50021:[{name:"GTON Testnet Network Explorer",url:"https://explorer.testnet.gton.network",standard:"EIP3091"}],51178:[{name:"LumozTestnetInfo",url:"https://lumoz.info",icon:"opside-new",standard:"EIP3091"}],51712:[{name:"Sardis",url:"https://contract-mainnet.sardisnetwork.com",standard:"EIP3091"}],52014:[{name:"blockscout",url:"https://blockexplorer.electroneum.com",icon:"electroneum",standard:"EIP3091"}],53277:[{name:"DOID Scan",url:"https://scan.doid.tech",icon:"doid",standard:"EIP3091"}],53302:[{name:"seedscout",url:"https://sepolia-explorer.superseed.xyz",standard:"EIP3091"}],53457:[{name:"DODOchain Testnet (Sepolia) Explorer",url:"https://testnet-scan.dodochain.com",icon:"dodochain_testnet",standard:"EIP3091"}],53935:[{name:"ethernal",url:"https://explorer.dfkchain.com",icon:"ethereum",standard:"none"}],54211:[{name:"TestEdge HAQQ Explorer",url:"https://explorer.testedge2.haqq.network",standard:"EIP3091"}],54321:[{name:"toronet_explorer",url:"https://testnet.toronet.org",standard:"none"}],55004:[{name:"blockscout",url:"https://explorer.titan.tokamak.network",standard:"EIP3091"}],55551:[{name:"photon_testnet2_explorer",url:"https://testnet2.photonchain.io",standard:"none"}],55555:[{name:"reiscan",url:"https://reiscan.com",standard:"EIP3091"}],55556:[{name:"reiscan",url:"https://testnet.reiscan.com",standard:"EIP3091"}],55614:[{name:"flascan",url:"https://flascan.net",standard:"EIP3091"}],56026:[{name:"Lambda Chain Mainnet Explorer",url:"https://scan.lambda.im",standard:"EIP3091"}],56288:[{name:"Boba BNB block explorer",url:"https://bobascan.com",standard:"none"}],56400:[{name:"TESTNETZER Explorer",url:"https://subnets-test.avax.network/testnetzer",standard:"EIP3091"}],56789:[{name:"novascan",url:"https://novascan.velo.org",standard:"EIP3091"}],56797:[{name:"DOID Testnet Scan",url:"https://scan.testnet.doid.tech",icon:"doid",standard:"EIP3091"}],57e3:[{name:"Rollux Testnet Explorer",url:"https://rollux.tanenbaum.io",standard:"EIP3091"}],57451:[{name:"coinsecnetwork",url:"https://explorer.coinsec.network",standard:"EIP3091"}],58008:[{name:"blockscout",url:"https://explorer.sepolia.publicgoods.network",icon:"blockscout",standard:"EIP3091"}],59140:[{name:"Etherscan",url:"https://goerli.lineascan.build",standard:"EIP3091",icon:"linea"},{name:"Blockscout",url:"https://explorer.goerli.linea.build",standard:"EIP3091",icon:"linea"}],59141:[{name:"Etherscan",url:"https://sepolia.lineascan.build",standard:"EIP3091",icon:"linea"},{name:"Blockscout",url:"https://explorer.sepolia.linea.build",standard:"EIP3091",icon:"linea"}],59144:[{name:"Etherscan",url:"https://lineascan.build",standard:"EIP3091",icon:"linea"},{name:"Blockscout",url:"https://explorer.linea.build",standard:"EIP3091",icon:"linea"},{name:"L2scan",url:"https://linea.l2scan.co",standard:"EIP3091",icon:"linea"}],59902:[{name:"blockscout",url:"https://sepolia-explorer.metisdevops.link",standard:"EIP3091"}],59971:[{name:"Genesys Scan",url:"https://genesysscan.io",icon:"genesyscode",standard:"none"}],6e4:[{name:"thinkiumscan",url:"https://test0.thinkiumscan.net",standard:"EIP3091"}],60001:[{name:"thinkiumscan",url:"https://test1.thinkiumscan.net",standard:"EIP3091"}],60002:[{name:"thinkiumscan",url:"https://test2.thinkiumscan.net",standard:"EIP3091"}],60103:[{name:"thinkiumscan",url:"https://test103.thinkiumscan.net",standard:"EIP3091"}],60808:[{name:"bobscout",url:"https://explorer.gobob.xyz",icon:"blockscout",standard:"EIP3091"}],61022:[{name:"Blockscout",url:"https://scan.orangechain.xyz",icon:"orange",standard:"EIP3091"}],61406:[{name:"KaiChain Explorer",url:"https://explorer.kaichain.net",standard:"EIP3091"}],61800:[{name:"AxelChain Dev-Net Explorer",url:"https://devexplorer2.viacube.com",standard:"EIP3091"}],61803:[{name:"eticascan",url:"https://eticascan.org",standard:"EIP3091"},{name:"eticastats",url:"http://explorer.etica-stats.org",standard:"EIP3091"}],61916:[{name:"DSC Scan",url:"https://explore.doken.dev",icon:"doken",standard:"EIP3091"}],62049:[{name:"optopia-testnet-scan",url:"https://scan-testnet.optopia.ai",icon:"optopia",standard:"EIP3091"}],62050:[{name:"optopia-scan",url:"https://scan.optopia.ai",icon:"optopia",standard:"EIP3091"}],62298:[{name:"Citrea Devnet Explorer",url:"https://explorer.devnet.citrea.xyz",icon:"citrea",standard:"EIP3091"}],62621:[{name:"MultiVAC Explorer",url:"https://e.mtv.ac",standard:"none"}],62831:[{name:"Avalanche Subnet Testnet Explorer",url:"https://subnets-test.avax.network/plyr",standard:"EIP3091"}],62850:[{name:"blockscout",url:"https://sigma.explorer.laosnetwork.io",icon:"blockscout",standard:"EIP3091"}],63e3:[{name:"eCredits MainNet Explorer",url:"https://explorer.ecredits.com",icon:"ecredits",standard:"EIP3091"}],63001:[{name:"eCredits TestNet Explorer",url:"https://explorer.tst.ecredits.com",icon:"ecredits",standard:"EIP3091"}],65349:[{name:"Blockscout",url:"https://explorer-testnet.cratd2csmartchain.io",icon:"blockscout",standard:"EIP3091"}],65357:[{name:"vecno",url:"https://explorer.vecno.org",icon:"blockscout",standard:"EIP3091"}],65450:[{name:"Scolscan Explorer",url:"https://explorer.scolcoin.com",standard:"EIP3091"}],66988:[{name:"JanusNetwork Testnet Explorer",url:"https://beta.scan.janusnetwork.io",standard:"none"}],68770:[{name:"DM2Verse Explorer",url:"https://explorer.dm2verse.dmm.com",standard:"EIP3091"}],69420:[{name:"Condrieu explorer",url:"https://explorer.condrieu.ethdevops.io",standard:"none"}],7e4:[{name:"thinkiumscan",url:"https://chain0.thinkiumscan.net",standard:"EIP3091"}],70001:[{name:"thinkiumscan",url:"https://chain1.thinkiumscan.net",standard:"EIP3091"}],70002:[{name:"thinkiumscan",url:"https://chain2.thinkiumscan.net",standard:"EIP3091"}],70103:[{name:"thinkiumscan",url:"https://chain103.thinkiumscan.net",standard:"EIP3091"}],70700:[{name:"Proof of Play Apex Explorer",url:"https://explorer.apex.proofofplay.com",icon:"pop-apex",standard:"EIP3091"}],71111:[{name:"GuapcoinX Explorer",url:"http://explorer.guapcoinx.com",standard:"none",icon:"guapcoinx"}],71401:[{name:"GWScan Block Explorer",url:"https://v1.testnet.gwscan.com",standard:"none"}],71402:[{name:"GWScan Block Explorer",url:"https://v1.gwscan.com",standard:"none"}],72778:[{name:"ankara",url:"https://explorer.ankara-cagacrypto.com",standard:"EIP3091"}],72992:[{name:"GrokScan",url:"https://mainnet-explorer.grokchain.dev",standard:"none"}],73114:[{name:"ICB Tesnet Explorer",url:"https://testnet.icbscan.io",standard:"EIP3091"}],73115:[{name:"ICB Explorer",url:"https://icbscan.io",standard:"EIP3091"}],73927:[{name:"mvmscan",url:"https://scan.mvm.dev",icon:"mvm",standard:"EIP3091"}],75e3:[{name:"ResinScan",url:"https://explorer.resincoin.dev",standard:"none"}],75512:[{name:"Geek Explorer",url:"https://explorer.geekout-pte.com",standard:"EIP3091"}],75513:[{name:"Geek Testnet Explorer",url:"https://explorer-testnet.geekout-pte.com",standard:"EIP3091"}],77001:[{name:"BORAchainscope",url:"https://scope.boraportal.com",standard:"EIP3091"}],77238:[{name:"Foundry Scan Testnet",url:"https://testnet-explorer.foundryscan.org",standard:"EIP3091"}],77612:[{name:"ventionscan",url:"https://ventionscan.io",standard:"EIP3091"}],77777:[{name:"toronet_explorer",url:"https://toronet.org/explorer",standard:"none"}],78281:[{name:"Dragonfly Blockscout",url:"https://blockscout.dragonfly.hexapod.network",icon:"blockscout",standard:"EIP3091"}],78430:[{name:"AMPLIFY Explorer",url:"https://subnets-test.avax.network/amplify",standard:"EIP3091"}],78431:[{name:"BULLETIN Explorer",url:"https://subnets-test.avax.network/bulletin",standard:"EIP3091"}],78432:[{name:"CONDUIT Explorer",url:"https://subnets-test.avax.network/conduit",standard:"EIP3091"}],78600:[{name:"Vanguard Explorer",url:"https://explorer-vanguard.vanarchain.com",icon:"vanguard",standard:"EIP3091"}],79879:[{name:"Gold Smart Chain",url:"https://testnet.goldsmartchain.com",standard:"EIP3091"}],80001:[{name:"polygonscan",url:"https://mumbai.polygonscan.com",standard:"EIP3091"}],80002:[{name:"polygonamoy",url:"https://www.oklink.com/amoy",standard:"EIP3091"}],80008:[{name:"Polynomial Sepolia Explorer",url:"https://sepolia.polynomialscan.io",standard:"none",icon:"polynomialSepolia"}],80084:[{name:"Beratrail",url:"https://bartio.beratrail.io",icon:"berachain",standard:"none"}],80085:[{name:"Beratrail",url:"https://artio.beratrail.io",icon:"berachain",standard:"none"}],80096:[{name:"blockscout",url:"https://hizoco.net:38443",standard:"none"}],81041:[{name:"nordek",url:"https://nordekscan.com",standard:"EIP3091"}],81457:[{name:"Blastscan",url:"https://blastscan.io",icon:"blast",standard:"EIP3091"},{name:"Blast Explorer",url:"https://blastexplorer.io",icon:"blast",standard:"EIP3091"}],81720:[{name:"Quantum Scan Mainnet",url:"https://quantumscan.org",standard:"EIP3091"}],82459:[{name:"SLN Testnet Explorer",url:"https://explorer.test.smartlayer.network",standard:"EIP3091"}],83144:[{name:"Blockscout",url:"https://explorer.testnet.xprotocol.org",standard:"EIP3091"}],83872:[{name:"Zedscan",url:"http://zedscan.net",standard:"EIP3091"}],84531:[{name:"basescan",url:"https://goerli.basescan.org",standard:"none"},{name:"basescout",url:"https://base-goerli.blockscout.com",icon:"blockscout",standard:"EIP3091"},{name:"dexguru",url:"https://base-goerli.dex.guru",icon:"dexguru",standard:"EIP3091"}],84532:[{name:"basescout",url:"https://base-sepolia.blockscout.com",icon:"blockscout",standard:"EIP3091"}],84886:[{name:"Aerie Explorer",url:"https://explorer.aerielab.io",icon:"aerie",standard:"EIP3091"}],88002:[{name:"Nautscan",url:"https://proteus.nautscan.com",standard:"EIP3091",icon:"nautilus"}],88559:[{name:"inoai.live",url:"https://inoai.live",standard:"EIP3091"}],88800:[{name:"Tracehawk",url:"https://explorer.zkas.zeeve.net",standard:"none"}],88817:[{name:"explorer-testnet",url:"https://explorer-testnet.unit0.dev",standard:"EIP3091"}],88819:[{name:"explorer-stagenet",url:"https://explorer-stagenet.unit0.dev",standard:"EIP3091"}],88882:[{name:"spicy-explorer",url:"https://testnet.chiliscan.com",standard:"EIP3091"}],88888:[{name:"chiliscan",url:"https://chiliscan.com",standard:"EIP3091"},{name:"chilizscan",url:"https://scan.chiliz.com",standard:"EIP3091"}],90210:[{name:"Beverly Hills explorer",url:"https://explorer.beverlyhills.ethdevops.io",standard:"none"}],90354:[{name:"blockscout",url:"https://explorerl2new-camp-network-4xje7wy105.t.conduit.xyz",icon:"blockscout",standard:"EIP3091"}],91002:[{name:"Nautscan",url:"https://triton.nautscan.com",standard:"EIP3091"}],91120:[{name:"MetaDAP Enterprise Mainnet explorer",url:"https://explorer.chain.metadap.io",standard:"none"}],91715:[{name:"combotrace explorer",url:"https://combotrace-testnet.nodereal.io",standard:"EIP3091"}],92001:[{name:"Lambda EVM Explorer",url:"https://explorer.lambda.top",standard:"EIP3091",icon:"lambda"}],93572:[{name:"LiquidLayer Testnet Explorer",url:"https://testnet-scan.liquidlayer.network",standard:"EIP3091"}],93747:[{name:"StratoVM Block Explorer",url:"https://explorer.stratovm.io",standard:"none"}],96970:[{name:"Mantis Blockscout",url:"https://blockscout.mantis.hexapod.network",icon:"blockscout",standard:"EIP3091"}],97435:[{name:"SlingShot Test Explorer",url:"https://explorer-dependent-emerald-whippet-gh6kch3nen.t.conduit.xyz",icon:"slingshot",standard:"EIP3091"}],97531:[{name:"Green Chain Explorer",url:"https://explorer.greenchain.app",standard:"EIP3091"}],97970:[{name:"OptimusZ7 Testnet Explorer",url:"https://testnet.optimusz7.com",standard:"EIP3091"}],99099:[{name:"eLiberty Testnet",url:"https://testnet.eliberty.ngo",standard:"EIP3091"}],99876:[{name:"blockscout",url:"https://testnet.emcscan.com",standard:"EIP3091"}],100001:[{name:"quarkchain-mainnet",url:"https://mainnet.quarkchain.io/0",standard:"EIP3091"}],100002:[{name:"quarkchain-mainnet",url:"https://mainnet.quarkchain.io/1",standard:"EIP3091"}],100003:[{name:"quarkchain-mainnet",url:"https://mainnet.quarkchain.io/2",standard:"EIP3091"}],100004:[{name:"quarkchain-mainnet",url:"https://mainnet.quarkchain.io/3",standard:"EIP3091"}],100005:[{name:"quarkchain-mainnet",url:"https://mainnet.quarkchain.io/4",standard:"EIP3091"}],100006:[{name:"quarkchain-mainnet",url:"https://mainnet.quarkchain.io/5",standard:"EIP3091"}],100007:[{name:"quarkchain-mainnet",url:"https://mainnet.quarkchain.io/6",standard:"EIP3091"}],100008:[{name:"quarkchain-mainnet",url:"https://mainnet.quarkchain.io/7",standard:"EIP3091"}],100009:[{name:"VeChain Stats",url:"https://vechainstats.com",standard:"none"},{name:"VeChain Explorer",url:"https://explore.vechain.org",standard:"none"}],100010:[{name:"VeChain Explorer",url:"https://explore-testnet.vechain.org",standard:"none"}],101010:[{name:"blockscout",url:"https://stability.blockscout.com",standard:"EIP3091"}],102031:[{name:"blockscout",url:"https://creditcoin-testnet.blockscout.com",icon:"blockscout",standard:"EIP3091"}],103090:[{name:"blockscout",url:"https://scan.crystaleum.org",icon:"crystal",standard:"EIP3091"}],103454:[{name:"Masa Testnet Explorer",url:"https://subnets-test.avax.network/masatestnet",standard:"EIP3091"}],104566:[{name:"KaspaClassic Explorer",url:"https://explorer.kaspaclassic.world",standard:"none"}],105105:[{name:"Stratis Explorer",url:"https://explorer.stratisevm.com",standard:"EIP3091"}],108801:[{name:"BROChain Explorer",url:"https://explorer.brochain.org",standard:"EIP3091"}],110001:[{name:"quarkchain-devnet",url:"https://devnet.quarkchain.io/0",standard:"EIP3091"}],110002:[{name:"quarkchain-devnet",url:"https://devnet.quarkchain.io/1",standard:"EIP3091"}],110003:[{name:"quarkchain-devnet",url:"https://devnet.quarkchain.io/2",standard:"EIP3091"}],110004:[{name:"quarkchain-devnet",url:"https://devnet.quarkchain.io/3",standard:"EIP3091"}],110005:[{name:"quarkchain-devnet",url:"https://devnet.quarkchain.io/4",standard:"EIP3091"}],110006:[{name:"quarkchain-devnet",url:"https://devnet.quarkchain.io/5",standard:"EIP3091"}],110007:[{name:"quarkchain-devnet",url:"https://devnet.quarkchain.io/6",standard:"EIP3091"}],110008:[{name:"quarkchain-devnet",url:"https://devnet.quarkchain.io/7",standard:"EIP3091"}],111e3:[{name:"Siberium Testnet Explorer - blockscout",url:"https://explorer.test.siberium.net",icon:"siberium",standard:"EIP3091"}],111111:[{name:"Siberium Mainnet Explorer - blockscout - 1",url:"https://explorer.main.siberium.net",icon:"siberium",standard:"EIP3091"},{name:"Siberium Mainnet Explorer - blockscout - 2",url:"https://explorer.main.siberium.net.ru",icon:"siberium",standard:"EIP3091"}],111188:[{name:"blockscout",url:"https://explorer.re.al",icon:"real",standard:"EIP3091"}],112358:[{name:"blockscout",url:"https://explorer.metachain.one",icon:"blockscout",standard:"EIP3091"}],119139:[{name:"MetaDAP Enterprise Testnet explorer",url:"https://explorer.testnet.chain.metadap.io",standard:"none"}],123321:[{name:"Gemchain Scan",url:"https://scan.gemchain.org",standard:"EIP3091"}],123456:[{name:"ADIL Devnet Explorer",url:"https://devnet.adilchain-scan.io",standard:"EIP3091"}],128123:[{name:"Etherlink Testnet Explorer",url:"https://testnet-explorer.etherlink.com",standard:"EIP3091"}],131419:[{name:"etndscan",url:"https://scan.etnd.pro",icon:"ETND",standard:"none"}],132902:[{name:"Form Testnet explorer",url:"https://testnet-explorer.form.network",standard:"EIP3091"}],141319:[{name:"etherscan",url:"http://testnet-api.magape.io:81",icon:"magape",standard:"EIP3091"}],142857:[{name:"ICPlaza",url:"https://browsemainnet.ic-plaza.org/index",standard:"none"}],165279:[{name:"Eclat Mainnet Explorer",url:"https://eclatscan.com",standard:"EIP3091"}],167e3:[{name:"etherscan",url:"https://taikoscan.io",standard:"EIP3091"}],167008:[{name:"blockscout",url:"https://explorer.katla.taiko.xyz",standard:"EIP3091"}],167009:[{name:"blockscout",url:"https://blockscoutapi.hekla.taiko.xyz",standard:"EIP3091"},{name:"routescan",url:"https://hekla.taikoscan.network",standard:"EIP3091"}],175177:[{name:"Lit Chronicle Explorer",url:"https://chain.litprotocol.com",icon:"lit",standard:"EIP3091"}],175188:[{name:"Lit Chronicle Yellowstone Explorer",url:"https://yellowstone-explorer.litprotocol.com",icon:"lit",standard:"EIP3091"}],188710:[{name:"Bitica DPOS Blockchain Explorer",url:"https://biticablockchain.com",standard:"none"}],188881:[{name:"CondorScan",url:"https://explorer.condor.systems",standard:"none"}],199991:[{name:"MAZZE Testnet Explorer",url:"https://mazzescan.io",standard:"none"}],200101:[{name:"Blockscout",url:"https://explorer-devnet-cardano-evm.c1.milkomeda.com",standard:"none"}],200202:[{name:"Blockscout",url:"https://explorer-devnet-algorand-rollup.a1.milkomeda.com",standard:"none"}],200810:[{name:"bitlayer testnet scan",url:"https://testnet.btrscan.com",standard:"EIP3091"}],200901:[{name:"bitlayer mainnet scan",url:"https://www.btrscan.com",standard:"EIP3091"}],201018:[{name:"alaya explorer",url:"https://scan.alaya.network",standard:"none"}],201030:[{name:"alaya explorer",url:"https://devnetscan.alaya.network",standard:"none"}],201804:[{name:"Mythical Chain Explorer",url:"https://explorer.mythicalgames.com",icon:"mythical",standard:"EIP3091"}],202020:[{name:"DSC Explorer Testnet",url:"https://testnet.explorer.decimalchain.com",icon:"dsc",standard:"EIP3091"}],202212:[{name:"Blockscout",url:"https://explorer.x1-devnet.xen.network",icon:"blockscout",standard:"EIP3091"}],202401:[{name:"YMTECH-BESU Chainlens",url:"http://39.119.118.198",standard:"none"}],202624:[{name:"Jellie Blockchain Explorer",url:"https://jellie.twala.io",standard:"EIP3091",icon:"twala"}],204005:[{name:"Blockscout",url:"https://explorer.x1-testnet.xen.network",icon:"blockscout",standard:"EIP3091"}],205205:[{name:"Auroria Testnet Explorer",url:"https://auroria.explorer.stratisevm.com",standard:"EIP3091"}],210425:[{name:"PlatON explorer",url:"https://scan.platon.network",standard:"none"}],220315:[{name:"explorer masnet",url:"https://explorer.masnet.ai",standard:"EIP3091"}],221230:[{name:"Reapchain Dashboard",url:"https://dashboard.reapchain.org",icon:"reapchain",standard:"none"}],221231:[{name:"Reapchain Testnet Dashboard",url:"https://test-dashboard.reapchain.org",icon:"reapchain",standard:"none"}],222222:[{name:"blockscout",url:"https://explorer.evm.hydration.cloud",standard:"EIP3091"}],222555:[{name:"DeepL Mainnet Explorer",url:"https://scan.deeplnetwork.org",icon:"deepl",standard:"EIP3091"}],222666:[{name:"DeepL Testnet Explorer",url:"https://testnet-scan.deeplnetwork.org",icon:"deepl",standard:"EIP3091"}],224168:[{name:"Taf ECO Chain Mainnet",url:"https://ecoscan.tafchain.com",standard:"EIP3091"}],224422:[{name:"CONET Scan",url:"https://scan.conet.network",standard:"EIP3091"}],224433:[{name:"CONET Holesky Scan",url:"https://scan.conet.network",standard:"EIP3091"}],229772:[{name:"blockscout",url:"https://testnet.abyssprotocol.ai",icon:"blockscout",standard:"EIP3091"}],230315:[{name:"HashKey Chain Testnet Explorer",url:"https://testnet.hashkeyscan.io",standard:"none"}],240515:[{name:"Blockscout",url:"https://testnet-scan.orangechain.xyz",icon:"orange",standard:"EIP3091"}],247253:[{name:"saakuru-explorer-testnet",url:"https://explorer-testnet.saakuru.network",standard:"EIP3091"}],256256:[{name:"Mainnet Scan",url:"https://mainnet.scan.caduceus.foundation",standard:"none"}],262371:[{name:"Eclat Testnet Explorer",url:"https://testnet-explorer.eclatscan.com",standard:"EIP3091"}],271271:[{name:"EgonCoin Testnet",url:"https://testnet.egonscan.com",standard:"EIP3091"}],282828:[{name:"zillscout",url:"https://sepolia.zillnet.io",icon:"zillion",standard:"EIP3091"}],292003:[{name:"Cipherscan Testnet Explorer",icon:"cipherscan",url:"https://cipherscan.net",standard:"EIP3091"}],309075:[{name:"One World Chain Mainnet Explorer",url:"https://mainnet.oneworldchain.org",standard:"EIP3091"}],313313:[{name:"Testnet Scan",url:"https://explorer.saharaa.info",standard:"EIP3091"}],314159:[{name:"Filscan - Calibration",url:"https://calibration.filscan.io",standard:"none"},{name:"Filscout - Calibration",url:"https://calibration.filscout.com/en",standard:"none"},{name:"Filfox - Calibration",url:"https://calibration.filfox.info",standard:"none"},{name:"Glif Explorer - Calibration",url:"https://explorer.glif.io/?network=calibration",standard:"none"},{name:"Beryx",url:"https://beryx.zondax.ch",standard:"none"}],322202:[{name:"Parex Mainnet Explorer",url:"https://scan.parex.network",icon:"parexmain",standard:"EIP3091"}],323213:[{name:"Bloom Genesis Testnet",url:"https://testnet.bloomgenesis.com",standard:"EIP3091"}],327126:[{name:"blockscout",url:"https://explorer.wabaworld.com",standard:"none"}],328527:[{name:"Nal Network Explorer",url:"https://scan.nal.network",standard:"EIP3091"}],330844:[{name:"TTcoin Smart Chain Explorer",url:"https://tscscan.com",standard:"EIP3091",icon:"tscscan"}],333313:[{name:"Bloom Genesis Mainnet",url:"https://explorer.bloomgenesis.com",standard:"EIP3091"}],333331:[{name:"avescan",url:"https://testnet.avescoin.io",icon:"avescan",standard:"EIP3091"}],333333:[{name:"Nativ3 Test Explorer",url:"https://scantest.nativ3.network",standard:"EIP3091"}],333666:[{name:"blockscout",url:"https://testnet.oonescan.com",standard:"none"}],333777:[{name:"blockscout",url:"https://dev.oonescan.com",standard:"none"}],336655:[{name:"UPchain Testnet Explorer",url:"https://explorer-testnet.uniport.network",icon:"up",standard:"EIP3091"}],336666:[{name:"UPchain Mainnet Explorer",url:"https://explorer.uniport.network",icon:"up",standard:"EIP3091"}],355110:[{name:"Bitfinity Mainnet Block Explorer",url:"https://explorer.mainnet.bitfinity.network",icon:"bitfinity",standard:"EIP3091"}],355113:[{name:"Bitfinity Testnet Block Explorer",url:"https://explorer.testnet.bitfinity.network",icon:"bitfinity",standard:"EIP3091"},{name:"Bitfinity Testnet Block Explorer",url:"https://bitfinity-test.dex.guru",icon:"dexguru",standard:"EIP3091"}],360890:[{name:"LAVITA Mainnet Explorer",url:"https://tsub360890-explorer.thetatoken.org",icon:"lavita",standard:"EIP3091"}],363636:[{name:"Digit Soul Explorer",url:"https://dgs-exp.digitsoul.co.th",standard:"EIP3091"}],373737:[{name:"HAP EVM Explorer (Blockscout)",url:"https://blockscout-test.hap.land",standard:"none",icon:"hap"}],381931:[{name:"metalscan",url:"https://metalscan.io",standard:"EIP3091"}],381932:[{name:"metalscan",url:"https://tahoe.metalscan.io",standard:"EIP3091"}],404040:[{name:"Tipboxcoin",url:"https://tipboxcoin.net",standard:"EIP3091"}],413413:[{name:"aiescan-testnet",icon:"aie",url:"https://testnet.aiescan.io",standard:"none"}],420420:[{name:"blockscout",url:"https://mainnet-explorer.kekchain.com",icon:"kek",standard:"EIP3091"}],420666:[{name:"blockscout",url:"https://testnet-explorer.kekchain.com",icon:"kek",standard:"EIP3091"}],420692:[{name:"Alterium L2 Testnet Explorer",url:"https://l2-testnet.altscan.org",standard:"EIP3091"}],421611:[{name:"arbiscan-testnet",url:"https://testnet.arbiscan.io",standard:"EIP3091"},{name:"arbitrum-rinkeby",url:"https://rinkeby-explorer.arbitrum.io",standard:"EIP3091"}],421613:[{name:"Arbitrum Goerli Arbiscan",url:"https://goerli.arbiscan.io",standard:"EIP3091"}],421614:[{name:"Arbitrum Sepolia Rollup Testnet Explorer",url:"https://sepolia-explorer.arbitrum.io",standard:"EIP3091"}],424242:[{name:"blockscout",url:"https://testnet.ftnscan.com",standard:"none"}],432201:[{name:"Avalanche Subnet Testnet Explorer",url:"https://subnets-test.avax.network/dexalot",standard:"EIP3091"}],432204:[{name:"Avalanche Subnet Explorer",url:"https://subnets.avax.network/dexalot",standard:"EIP3091"}],444444:[{name:"Syndr L3 Sepolia Testnet Explorer",url:"https://sepolia-explorer.syndr.com",standard:"EIP3091"}],444900:[{name:"weelink-testnet",url:"https://weelink.cloud/#/blockView/overview",standard:"none"}],473861:[{name:"ultraproscan",url:"https://ultraproscan.io",icon:"ultrapro",standard:"EIP3091"}],474142:[{name:"SIDE SCAN",url:"https://sidescan.luniverse.io/1641349324562974539",standard:"none"}],486487:[{name:"Gobbl Testnet Explorer",url:"https://explorer.gobbl.io",standard:"EIP3091"}],49e4:[{name:"astral",url:"https://nova.subspace.network",icon:"blockscout",standard:"EIP3091"}],504441:[{name:"Playdapp Explorer",url:"https://subnets.avax.network/playdappne",standard:"EIP3091"}],512512:[{name:"Galaxy Scan",url:"https://galaxy.scan.caduceus.foundation",standard:"none"}],513100:[{name:"DisChain",url:"https://www.oklink.com/dis",standard:"EIP3091"}],526916:[{name:"DoCoin Community Chain Explorer",url:"https://explorer.docoin.shop",standard:"EIP3091"}],534351:[{name:"Scroll Sepolia Etherscan",url:"https://sepolia.scrollscan.com",standard:"EIP3091"}],534352:[{name:"Scrollscan",url:"https://scrollscan.com",standard:"EIP3091"}],534849:[{name:"shinascan",url:"https://shinascan.shinarium.org",standard:"EIP3091"}],535037:[{name:"bescscan",url:"https://Bescscan.io",standard:"EIP3091"}],552981:[{name:"One World Chain Testnet Explorer",url:"https://testnet.oneworldchain.org",standard:"EIP3091"}],555555:[{name:"Pentagon Testnet Explorer",url:"https://explorer-testnet.pentagon.games",icon:"pentagon",standard:"EIP3091"}],555666:[{name:"ECLIPSE Explorer",url:"https://subnets-test.avax.network/eclipsecha",standard:"EIP3091"}],622277:[{name:"hypra",url:"https://explorer.hypra.network",icon:"blockscout",standard:"EIP3091"}],622463:[{name:"Atlas Testnet Scan",url:"https://explorer.testnet.atl.network",icon:"atlas",standard:"EIP3091"}],641230:[{name:"brnkscan",url:"https://brnkscan.bearnetwork.net",standard:"EIP3091"}],651940:[{name:"Alltra SmartChain Explorer",url:"https://alltra.global",standard:"EIP3091"}],656476:[{name:"Open Campus Codex",url:"https://opencampus-codex.blockscout.com",icon:"open-campus-codex",standard:"none"}],660279:[{name:"Blockscout",url:"https://explorer.xai-chain.net",standard:"EIP3091"}],666888:[{name:"Hela Official Runtime Testnet Explorer",url:"https://testnet-blockexplorer.helachain.com",standard:"EIP3091"}],686868:[{name:"Won Explorer",url:"https://scan.wonnetwork.org",standard:"EIP3091"}],696969:[{name:"Galadriel Explorer",url:"https://explorer.galadriel.com",standard:"none"}],710420:[{name:"TILTYARD Explorer",url:"https://subnets.avax.network/tiltyard",standard:"EIP3091"}],713715:[{name:"Seistream",url:"https://seistream.app",standard:"none"},{name:"Seitrace",url:"https://seitrace.com",standard:"EIP3091"}],721529:[{name:"Eramscan",url:"https://eramscan.com",standard:"EIP3091"}],743111:[{name:"blockscout",url:"https://testnet.explorer.hemi.xyz",icon:"blockscout",standard:"EIP3091"}],751230:[{name:"brnktestscan",url:"https://brnktest-scan.bearnetwork.net",standard:"EIP3091"}],752024:[{name:"Tracehawk",url:"https://explorer.zkevm.ternoa.network",standard:"none"}],761412:[{name:"Miexs Smartchain Explorer",url:"https://miexs.com",standard:"EIP3091"}],764984:[{name:"Lamina1 Test Explorer",url:"https://subnets-test.avax.network/lamina1tes",standard:"EIP3091"}],767368:[{name:"Lamina1 Identity Testnet Explorer",url:"https://subnets-test.avax.network/lamina1id",standard:"EIP3091"}],776877:[{name:"Tanssi Explorer",url:"https://tanssi-evmexplorer.netlify.app/?rpcUrl=https://fraa-dancebox-3035-rpc.a.dancebox.tanssi.network",standard:"none"}],800001:[{name:"blockscout",url:"https://explorer.octa.space",icon:"blockscout",standard:"EIP3091"}],808080:[{name:"BIZ Smart Chain Testnet Explorer",url:"https://testnet.btscan.io",standard:"EIP3091"}],808813:[{name:"bobscout",url:"https://bob-sepolia.explorer.gobob.xyz",icon:"blockscout",standard:"EIP3091"}],810180:[{name:"zkLink Nova Block Explorer",url:"https://explorer.zklink.io",icon:"zklink-nova",standard:"EIP3091"}],810181:[{name:"zkLink Nova Block Explorer",url:"https://sepolia.explorer.zklink.io",icon:"zklink-nova",standard:"EIP3091"}],810182:[{name:"zkLink Nova Block Explorer",url:"https://goerli.explorer.zklink.io",icon:"zklink-nova",standard:"EIP3091"}],820522:[{name:"tscscan",url:"https://testnet.tscscan.io",icon:"netxscan",standard:"none"}],827431:[{name:"CURVE Mainnet",url:"https://curvescan.io",standard:"EIP3091"}],839320:[{name:"Primal Network Testnet",url:"https://testnet-explorer.prmscan.org",standard:"EIP3091"}],84e4:[{name:"Tracehawk",url:"https://explorer.runevm.io",standard:"none"}],855456:[{name:"Dodao Explorer",url:"https://tanssi-evmexplorer.netlify.app/?rpcUrl=https://fraa-dancebox-3041-rpc.a.dancebox.tanssi.network",icon:"dodao",standard:"EIP3091"}],879151:[{name:"BlocX Mainnet Explorer",url:"https://explorer.blxscan.com",icon:"blx",standard:"none"}],888882:[{name:"REXX Mainnet Explorer",url:"https://rexxnetwork.com",standard:"EIP3091"}],888888:[{name:"Visionscan",url:"https://www.visionscan.org",standard:"EIP3091"}],9e5:[{name:"Posichain Explorer",url:"https://explorer.posichain.org",standard:"EIP3091"}],91e4:[{name:"Posichain Explorer Testnet",url:"https://explorer-testnet.posichain.org",standard:"EIP3091"}],912559:[{name:"Astria EVM Dusknet Explorer",url:"https://explorer.evm.dusk-3.devnet.astria.org",standard:"EIP3091"}],92e4:[{name:"Posichain Explorer Devnet",url:"https://explorer-devnet.posichain.org",standard:"EIP3091"}],920001:[{name:"Posichain Explorer Devnet",url:"https://explorer-devnet.posichain.org",standard:"EIP3091"}],923018:[{name:"fncy scan testnet",url:"https://fncyscan-testnet.fncy.world",icon:"fncy",standard:"EIP3091"}],955081:[{name:"JONO12 Explorer",url:"https://subnets-test.avax.network/jono12",standard:"EIP3091"}],955305:[{name:"blockscout",url:"https://explorer.eluv.io",standard:"EIP3091"}],978657:[{name:"treasurescan",url:"https://testnet.treasurescan.io",icon:"treasure",standard:"EIP3091"}],984122:[{name:"blockscout",url:"https://explorer.forma.art",icon:"blockscout",standard:"EIP3091"}],984123:[{name:"blockscout",url:"https://explorer.sketchpad-1.forma.art",icon:"blockscout",standard:"EIP3091"}],988207:[{name:"Ecrox Chain Explorer",url:"https://ecroxscan.com",standard:"EIP3091"}],998899:[{name:"supernet-testnet-explorer",url:"https://testnet-explorer.supernet.chaingames.io",standard:"EIP3091"}],999999:[{name:"AMCAmChain explorer",url:"https://explorer.amchain.net",standard:"none"}],1100789:[{name:"NetMind Testnet Explorer",url:"https://testbrower.protago-dev.com",icon:"netmind",standard:"EIP3091"}],1127469:[{name:"TILTYARD Explorer",url:"http://testnet-explorer.tiltyard.gg",standard:"EIP3091"}],1234567:[{name:"Etherscan",url:"https://etherscan.io",standard:"none",icon:"sharecle"}],1261120:[{name:"Blockscout zKatana chain explorer",url:"https://zkatana.blockscout.com",standard:"EIP3091"},{name:"Startale zKatana chain explorer",url:"https://zkatana.explorer.startale.com",standard:"EIP3091"}],1313114:[{name:"blockscout",url:"https://explorer.ethoprotocol.com",standard:"none"}],1337702:[{name:"kintsugi explorer",url:"https://explorer.kintsugi.themerge.dev",standard:"EIP3091"}],1337802:[{name:"Kiln Explorer",url:"https://explorer.kiln.themerge.dev",icon:"ethereum",standard:"EIP3091"}],1337803:[{name:"Zhejiang Explorer",url:"https://zhejiang.beaconcha.in",icon:"ethereum",standard:"EIP3091"}],1398243:[{name:"Automata Testnet Explorer",url:"https://automata-testnet-explorer.alt.technology",standard:"EIP3091"}],1612127:[{name:"PlayFi Block Explorer",url:"https://albireo-explorer.playfi.ai",standard:"EIP3091"}],1637450:[{name:"Xterio Testnet Explorer",url:"https://testnet.xterscan.io",standard:"EIP3091"}],2021398:[{name:"DeBank Chain Explorer",url:"https://explorer.testnet.debank.com",standard:"EIP3091"}],2099156:[{name:"piscan",url:"https://piscan.plian.org/pchain",standard:"EIP3091"}],2206132:[{name:"PlatON explorer",url:"https://devnet2scan.platon.network",standard:"none"}],2702128:[{name:"Xterio Chain Explorer",url:"https://eth.xterscan.io",standard:"EIP3091"}],3397901:[{name:"Funki Sepolia Sandbox Explorer",url:"https://sepolia-sandbox.funkichain.com",standard:"none"}],3441005:[{name:"manta-testnet Explorer",url:"https://manta-testnet.calderaexplorer.xyz",standard:"EIP3091"}],3441006:[{name:"manta-testnet Explorer",url:"https://pacific-explorer.sepolia-testnet.manta.network",standard:"EIP3091"}],4000003:[{name:"blockscout",url:"https://zero-explorer.alt.technology",icon:"blockscout",standard:"EIP3091"}],4444444:[{name:"altar testnet explorer",url:"https://altar-explorer.ceremonies.ai",standard:"none"}],4457845:[{name:"ZERO Testnet Explorer",url:"https://explorer.zero.network",standard:"EIP3091"}],5112023:[{name:"NumBlock Explorer",url:"https://mainnet.numblock.org",standard:"none",icon:"NumBlock"}],5167003:[{name:"MXC Wannsee zkEVM Testnet",url:"https://wannsee-explorer.mxc.com",standard:"EIP3091"}],5167004:[{name:"Moonchain Geneva Testnet",url:"https://geneva-explorer.moonchain.com",standard:"EIP3091"}],5201420:[{name:"blockscout",url:"https://blockexplorer.thesecurityteam.rocks",icon:"electroneum",standard:"EIP3091"}],5318008:[{name:"reactscan",url:"https://kopli.reactscan.net",standard:"none"}],5555555:[{name:"Imversed EVM explorer (Blockscout)",url:"https://txe.imversed.network",icon:"imversed",standard:"EIP3091"},{name:"Imversed Cosmos Explorer (Big Dipper)",url:"https://tex-c.imversed.com",icon:"imversed",standard:"none"}],5555558:[{name:"Imversed EVM Explorer (Blockscout)",url:"https://txe-test.imversed.network",icon:"imversed",standard:"EIP3091"},{name:"Imversed Cosmos Explorer (Big Dipper)",url:"https://tex-t.imversed.com",icon:"imversed",standard:"none"}],6038361:[{name:"Blockscout zKyoto explorer",url:"https://astar-zkyoto.blockscout.com",standard:"EIP3091"}],6666665:[{name:"Safe(AnWang) Explorer",url:"http://safe4.anwang.com",icon:"safe-anwang",standard:"EIP3091"}],6666666:[{name:"Safe(AnWang) Testnet Explorer",url:"http://safe4-testnet.anwang.com",icon:"safe-anwang",standard:"EIP3091"}],7225878:[{name:"saakuru-explorer",url:"https://explorer.saakuru.network",standard:"EIP3091"}],7355310:[{name:"openvessel-mainnet",url:"https://mainnet-explorer.openvessel.io",standard:"none"}],7668378:[{name:"QL1 Testnet Explorer",url:"https://testnet.qom.one",icon:"qom",standard:"EIP3091"}],7777777:[{name:"Zora Network Explorer",url:"https://explorer.zora.energy",standard:"EIP3091"}],8007736:[{name:"piscan",url:"https://piscan.plian.org/child_0",standard:"EIP3091"}],8008135:[{name:"Fhenix Helium Explorer (Blockscout)",url:"https://explorer.helium.fhenix.zone",standard:"EIP3091"}],8080808:[{name:"Hokum Explorer",url:"https://explorer.hokum.gg",standard:"EIP3091"}],8794598:[{name:"HAP EVM Explorer (Blockscout)",url:"https://blockscout.hap.land",standard:"none",icon:"hap"}],9322252:[{name:"blockscout",url:"https://xcap-mainnet.explorer.xcap.network",icon:"blockscout",standard:"EIP3091"}],9322253:[{name:"blockscout",url:"https://xcap-milvine.explorer.xcap.network",icon:"blockscout",standard:"EIP3091"}],9999999:[{name:"blockscout",url:"https://blockscout.mainnet.fluence.dev",standard:"EIP3091"}],10067275:[{name:"piscan",url:"https://testnet.plian.org/child_test",standard:"EIP3091"}],10101010:[{name:"Soverun",url:"https://explorer.soverun.com",standard:"EIP3091"}],10241024:[{name:"AlienXChain Explorer",url:"https://explorer.alienxchain.io",standard:"EIP3091"}],10241025:[{name:"Hal Explorer",url:"https://hal-explorer.alienxchain.io",standard:"EIP3091"}],11145513:[{name:"blockscout",url:"https://blessnet-sepolia-testnet.explorer.caldera.xyz",icon:"bless",standard:"EIP3091"}],11155111:[{name:"etherscan-sepolia",url:"https://sepolia.etherscan.io",standard:"EIP3091"},{name:"otterscan-sepolia",url:"https://sepolia.otterscan.io",standard:"EIP3091"}],11155420:[{name:"opscout",url:"https://optimism-sepolia.blockscout.com",icon:"blockscout",standard:"EIP3091"}],12052024:[{name:"Tracehawk",url:"https://test-explorer.mementoblockchain.com",standard:"none"}],12227332:[{name:"neox-scan",url:"https://testnet.scan.banelabs.org",standard:"EIP3091"}],13068200:[{name:"coti devnet explorer",url:"https://explorer-devnet.coti.io",icon:"ethernal",standard:"EIP3091"}],14288640:[{name:"anduschain explorer",url:"https://explorer.anduschain.io",icon:"daon",standard:"none"}],16658437:[{name:"piscan",url:"https://testnet.plian.org/testnet",standard:"EIP3091"}],17000920:[{name:"Lambda Chain Testnet Explorer",url:"https://testscan.lambda.im",standard:"EIP3091"}],18071918:[{name:"FYI",url:"https://dym.fyi/r/mande",icon:"fyi",standard:"EIP3091"}],19850818:[{name:"DeepBrainChain Testnet",url:"https://blockscout-testnet.dbcscan.io",icon:"dbc",standard:"EIP3091"}],19880818:[{name:"DeepBrainChain Mainnet",url:"https://blockscout.dbcscan.io",icon:"dbc",standard:"EIP3091"}],20180427:[{name:"blockscout",url:"https://stability-testnet.blockscout.com",standard:"EIP3091"}],20180430:[{name:"spectrum",url:"https://spectrum.pub",standard:"none"}],20181205:[{name:"qkiscan",url:"https://qkiscan.io",standard:"EIP3091"}],20201022:[{name:"Pego Network Explorer",url:"https://scan.pego.network",standard:"EIP3091"}],20230825:[{name:"Vcity Explorer",url:"https://scan.vcity.app",icon:"vcity",standard:"EIP3091"}],20240324:[{name:"DeBank Chain Explorer",url:"https://sepolia-explorer.testnet.debank.com",standard:"EIP3091"}],20240603:[{name:"DBK Chain Explorer",url:"https://scan.dbkchain.io",standard:"EIP3091"}],20241133:[{name:"Swan Proxima Chain explorer",url:"https://proxima-explorer.swanchain.io",standard:"EIP3091"}],20482050:[{name:"Hokum Explorer",url:"https://testnet-explorer.hokum.gg",standard:"EIP3091"}],22052002:[{name:"Excelon explorer",url:"https://explorer.excelon.io",standard:"EIP3091"}],27082017:[{name:"exlscan",url:"https://testnet-explorer.exlscan.com",icon:"exl",standard:"EIP3091"}],27082022:[{name:"exlscan",url:"https://exlscan.com",icon:"exl",standard:"EIP3091"}],28122024:[{name:"scan-testnet",url:"https://scanv2-testnet.ancient8.gg",standard:"EIP3091"}],29032022:[{name:"FLXExplorer",url:"https://explorer.flaexchange.top",standard:"EIP3091"}],37084624:[{name:"Blockscout",url:"https://lanky-ill-funny-testnet.explorer.testnet.skalenodes.com",standard:"EIP3091"}],39916801:[{name:"TravelSong",url:"https://www.beastkingdom.io/travelsong",standard:"EIP3091"}],43214913:[{name:"maistesntet",url:"http://174.138.9.169:3006/?network=maistesntet",standard:"none"}],52164803:[{name:"blockscout",url:"https://blockscout.testnet.fluence.dev",standard:"EIP3091"}],65010003:[{name:"autonity-blockscout",url:"https://bakerloo.autonity.org",standard:"EIP3091"}],65100003:[{name:"autonity-blockscout",url:"https://piccadilly.autonity.org",standard:"EIP3091"}],68840142:[{name:"Frame Testnet Explorer",url:"https://explorer.testnet.frame.xyz",standard:"EIP3091"}],77787778:[{name:"blockscout",url:"https://test.0xhashscan.io",icon:"blockscout",standard:"EIP3091"}],79479957:[{name:"SX Toronto L2 Explorer",url:"https://explorerl2.toronto.sx.technology",standard:"EIP3091",icon:"SX"}],88888888:[{name:"teamscan",url:"https://teamblockchain.team",standard:"EIP3091"}],94204209:[{name:"blockscout",url:"https://polygon-blackberry.gelatoscout.com",icon:"blockscout",standard:"EIP3091"}],1e8:[{name:"ethos scan",url:"https://scan.ethos.cool",icon:"ethos",standard:"EIP3091"}],111557560:[{name:"Cyber Testnet Explorer",url:"https://testnet.cyberscan.co",standard:"EIP3091"}],123420111:[{name:"blockscout",url:"https://opcelestia-raspberry.gelatoscout.com",icon:"blockscout",standard:"EIP3091"}],161221135:[{name:"Blockscout",url:"https://testnet-explorer.plumenetwork.xyz",icon:"blockscout",standard:"EIP3091"}],168587773:[{name:"Blast Sepolia Explorer",url:"https://testnet.blastscan.io",icon:"blast",standard:"EIP3091"}],192837465:[{name:"Blockscout",url:"https://explorer.gather.network",icon:"gather",standard:"none"}],222000222:[{name:"explorer",url:"https://testnet.meldscan.io",icon:"meld",standard:"EIP3091"},{name:"explorer",url:"https://subnets-test.avax.network/meld",icon:"meld",standard:"EIP3091"}],245022926:[{name:"neonscan",url:"https://devnet.neonscan.org",standard:"EIP3091"},{name:"blockscout",url:"https://neon-devnet.blockscout.com",icon:"blockscout",standard:"EIP3091"}],245022934:[{name:"neonscan",url:"https://neonscan.org",standard:"EIP3091"},{name:"native",url:"https://neon.blockscout.com",standard:"EIP3091"}],278611351:[{name:"turbulent-unique-scheat",url:"https://turbulent-unique-scheat.explorer.mainnet.skalenodes.com",standard:"EIP3091"}],311752642:[{name:"OneLedger Block Explorer",url:"https://mainnet-explorer.oneledger.network",standard:"EIP3091"}],328527624:[{name:"Nal Sepolia Testnet Network Explorer",url:"https://testnet-scan.nal.network",standard:"EIP3091"}],333000333:[{name:"explorer",url:"https://meldscan.io",icon:"meld",standard:"EIP3091"},{name:"explorer",url:"https://subnets.avax.network/meld",icon:"meld",standard:"EIP3091"}],356256156:[{name:"Blockscout",url:"https://testnet-explorer.gather.network",icon:"gather",standard:"none"}],476462898:[{name:"blockscout",url:"https://skopje-explorer.gptprotocol.io",standard:"EIP3091",icon:"blockscout"}],486217935:[{name:"Blockscout",url:"https://devnet-explorer.gather.network",standard:"none"}],531050104:[{name:"Sophon Testnet",url:"https://explorer.testnet.sophon.xyz",icon:"sophon-testnet",standard:"none"}],888888888:[{name:"Ancient8 Explorer",url:"https://scan.ancient8.gg",standard:"EIP3091"}],889910245:[{name:"PTCESCAN Testnet Explorer",url:"https://explorer-testnet.ptcscan.io",standard:"EIP3091"}],889910246:[{name:"PTCESCAN Explorer",url:"https://ptcscan.io",standard:"EIP3091"}],974399131:[{name:"Blockscout",url:"https://giant-half-dual-testnet.explorer.testnet.skalenodes.com",standard:"EIP3091"}],999999999:[{name:"Zora Sepolia Testnet Network Explorer",url:"https://sepolia.explorer.zora.energy",standard:"EIP3091"}],1020352220:[{name:"Blockscout",url:"https://aware-fake-trim-testnet.explorer.testnet.skalenodes.com",standard:"EIP3091"}],1146703430:[{name:"CybEthExplorer",url:"http://cybeth1.cyberdeck.eu:8000",icon:"cyberdeck",standard:"none"}],1273227453:[{name:"Blockscout",url:"https://wan-red-ain.explorer.mainnet.skalenodes.com",icon:"human",standard:"EIP3091"}],1313161554:[{name:"aurorascan.dev",url:"https://aurorascan.dev",standard:"EIP3091"}],1313161555:[{name:"aurorascan.dev",url:"https://testnet.aurorascan.dev",standard:"EIP3091"}],1313161560:[{name:"PowerGold explorer",url:"https://explorer.powergold.aurora.dev",standard:"EIP3091"}],1350216234:[{name:"Blockscout",url:"https://parallel-stormy-spica.explorer.mainnet.skalenodes.com",standard:"EIP3091"}],1351057110:[{name:"Blockscout",url:"https://staging-fast-active-bellatrix.explorer.staging-v3.skalenodes.com",icon:"chaos",standard:"EIP3091"}],1380012617:[{name:"rarichain-explorer",url:"https://mainnet.explorer.rarichain.org",standard:"EIP3091"}],1380996178:[{name:"RaptorChain Explorer",url:"https://explorer.raptorchain.io",icon:"raptorchain_explorer",standard:"EIP3091"}],1444673419:[{name:"Blockscout",url:"https://juicy-low-small-testnet.explorer.testnet.skalenodes.com",standard:"EIP3091"}],1482601649:[{name:"Blockscout",url:"https://green-giddy-denebola.explorer.mainnet.skalenodes.com",standard:"EIP3091"}],1511670449:[{name:"blockscout",url:"https://explorer.gptprotocol.io",standard:"EIP3091",icon:"blockscout"}],1564830818:[{name:"Blockscout",url:"https://honorable-steel-rasalhague.explorer.mainnet.skalenodes.com",standard:"EIP3091"}],16666e5:[{name:"Harmony Block Explorer",url:"https://explorer.harmony.one",standard:"EIP3091"}],1666600001:[{name:"Harmony Block Explorer",url:"https://explorer.harmony.one/blocks/shard/1",standard:"none"}],16667e5:[{name:"Harmony Testnet Block Explorer",url:"https://explorer.testnet.harmony.one",standard:"EIP3091"}],1666700001:[{name:"Harmony Block Explorer",url:"https://explorer.testnet.harmony.one",standard:"none"}],1802203764:[{name:"Kakarot Scan",url:"https://sepolia.kakarotscan.org",standard:"EIP3091"},{name:"Kakarot Explorer",url:"https://sepolia-explorer.kakarot.org",standard:"EIP3091"}],1903648807:[{name:"Gemuchain Explorer (Blockscout)",url:"https://gemutest-explorer.gemuchain.io",standard:"EIP3091"}],1918988905:[{name:"rarichain-testnet-explorer",url:"https://explorer.rarichain.org",standard:"EIP3091"}],2046399126:[{name:"Blockscout",url:"https://elated-tan-skat.explorer.mainnet.skalenodes.com",standard:"EIP3091"}],4216137055:[{name:"OneLedger Block Explorer",url:"https://frankenstein-explorer.oneledger.network",standard:"EIP3091"}],11297108109:[{name:"Chainlens",url:"https://palm.chainlens.com",standard:"EIP3091"},{name:"Dora",url:"https://www.ondora.xyz/network/palm",standard:"none"}],11297108099:[{name:"Chainlens",url:"https://testnet.palm.chainlens.com",standard:"EIP3091"},{name:"Dora",url:"https://www.ondora.xyz/network/palm-testnet",standard:"none"}],37714555429:[{name:"Blockscout",url:"https://testnet-explorer-v2.xai-chain.net",standard:"EIP3091"}],88153591557:[{name:"blockscout",url:"https://arb-blueberry.gelatoscout.com",icon:"blockscout",standard:"EIP3091"}],111222333444:[{name:"Alphabet Explorer",url:"https://scan.alphabetnetwork.org",standard:"EIP3091"}],123420000220:[{name:"blockscout",url:"https://blockscout-123420000220.raas-testnet.gelato.digital",standard:"EIP3091"}],197710212030:[{name:"Ntity Blockscout",url:"https://blockscout.ntity.io",icon:"ntity",standard:"EIP3091"}],197710212031:[{name:"Ntity Haradev Blockscout",url:"https://blockscout.haradev.com",icon:"ntity",standard:"EIP3091"}],202402181627:[{name:"gmnetwork-testnet",url:"https://gmnetwork-testnet-explorer.alt.technology",standard:"EIP3091"}],383414847825:[{name:"zeniq-smart-chain-explorer",url:"https://smart.zeniq.net",standard:"EIP3091"}],666301171999:[{name:"ipdcscan",url:"https://scan.ipdc.io",standard:"EIP3091"}],2713017997578e3:[{name:"dchaint scan",url:"https://dchaintestnet-2713017997578000-1.testnet.sagaexplorer.io",standard:"EIP3091"}],2716446429837e3:[{name:"dchain scan",url:"https://dchain-2716446429837000-1.sagaexplorer.io",standard:"EIP3091"}]};var Js={1:{name:"Ether",symbol:"ETH",decimals:18},2:{name:"Expanse Network Ether",symbol:"EXP",decimals:18},3:{name:"Ropsten Ether",symbol:"ETH",decimals:18},4:{name:"Rinkeby Ether",symbol:"ETH",decimals:18},5:{name:"Goerli Ether",symbol:"ETH",decimals:18},7:{name:"ThaiChain Ether",symbol:"TCH",decimals:18},8:{name:"Ubiq Ether",symbol:"UBQ",decimals:18},9:{name:"Ubiq Testnet Ether",symbol:"TUBQ",decimals:18},10:{name:"Ether",symbol:"ETH",decimals:18},11:{name:"Metadium Mainnet Ether",symbol:"META",decimals:18},12:{name:"Metadium Testnet Ether",symbol:"KAL",decimals:18},13:{name:"Staging Diodes",symbol:"sDIODE",decimals:18},14:{name:"Flare",symbol:"FLR",decimals:18},15:{name:"Diodes",symbol:"DIODE",decimals:18},16:{name:"Coston Flare",symbol:"CFLR",decimals:18},17:{name:"Thaifi Ether",symbol:"TFI",decimals:18},18:{name:"ThunderCore Testnet Token",symbol:"TST",decimals:18},19:{name:"Songbird",symbol:"SGB",decimals:18},20:{name:"Elastos",symbol:"ELA",decimals:18},21:{name:"Elastos",symbol:"tELA",decimals:18},22:{name:"Elastos",symbol:"ELA",decimals:18},23:{name:"Elastos",symbol:"tELA",decimals:18},24:{name:"KardiaChain",symbol:"KAI",decimals:18},25:{name:"Cronos",symbol:"CRO",decimals:18},26:{name:"L1 testcoin",symbol:"L1test",decimals:18},27:{name:"SHIBA INU COIN",symbol:"SHIB",decimals:18},29:{name:"L1 coin",symbol:"L1",decimals:18},30:{name:"Smart Bitcoin",symbol:"RBTC",decimals:18},31:{name:"Testnet Smart Bitcoin",symbol:"tRBTC",decimals:18},32:{name:"GoodData Testnet Ether",symbol:"GooD",decimals:18},33:{name:"GoodData Mainnet Ether",symbol:"GooD",decimals:18},34:{name:"SecureChain",symbol:"SCAI",decimals:18},35:{name:"TBWG Ether",symbol:"TBG",decimals:18},36:{name:"Dxchain",symbol:"DX",decimals:18},37:{name:"XPLA",symbol:"XPLA",decimals:18},38:{name:"Valorbit",symbol:"VAL",decimals:18},39:{name:"Unicorn Ultra",symbol:"U2U",decimals:18},40:{name:"Telos",symbol:"TLOS",decimals:18},41:{name:"Telos",symbol:"TLOS",decimals:18},42:{name:"LUKSO",symbol:"LYX",decimals:18},43:{name:"Pangolin Network Native Token",symbol:"PRING",decimals:18},44:{name:"Crab Network Native Token",symbol:"CRAB",decimals:18},45:{name:"Pangoro Network Native Token",symbol:"ORING",decimals:18},46:{name:"Darwinia Network Native Token",symbol:"RING",decimals:18},47:{name:"ACRIA",symbol:"ACRIA",decimals:18},48:{name:"Ennothem",symbol:"ETMP",decimals:18},49:{name:"Ennothem",symbol:"ETMP",decimals:18},50:{name:"XinFin",symbol:"XDC",decimals:18},51:{name:"XinFin",symbol:"TXDC",decimals:18},52:{name:"CoinEx Chain Native Token",symbol:"cet",decimals:18},53:{name:"CoinEx Chain Test Native Token",symbol:"cett",decimals:18},54:{name:"Belly",symbol:"BELLY",decimals:18},55:{name:"Zyx",symbol:"ZYX",decimals:18},56:{name:"BNB Chain Native Token",symbol:"BNB",decimals:18},57:{name:"Syscoin",symbol:"SYS",decimals:18},58:{name:"ONG",symbol:"ONG",decimals:18},60:{name:"GoChain Ether",symbol:"GO",decimals:18},61:{name:"Ether",symbol:"ETC",decimals:18},63:{name:"Mordor Ether",symbol:"METC",decimals:18},64:{name:"Ellaism Ether",symbol:"ELLA",decimals:18},65:{name:"OKExChain Global Utility Token in testnet",symbol:"OKT",decimals:18},66:{name:"OKXChain Global Utility Token",symbol:"OKT",decimals:18},67:{name:"DBChain Testnet",symbol:"DBM",decimals:18},68:{name:"SoterOne Mainnet Ether",symbol:"SOTER",decimals:18},69:{name:"Kovan Ether",symbol:"ETH",decimals:18},70:{name:"Hoo Smart Chain Native Token",symbol:"HOO",decimals:18},71:{name:"CFX",symbol:"CFX",decimals:18},72:{name:"DxChain Testnet",symbol:"DX",decimals:18},73:{name:"FNCY",symbol:"FNCY",decimals:18},74:{name:"EIDI",symbol:"EIDI",decimals:18},75:{name:"Decimal",symbol:"DEL",decimals:18},76:{name:"Mix Ether",symbol:"MIX",decimals:18},77:{name:"POA Sokol Ether",symbol:"SPOA",decimals:18},78:{name:"Primus Ether",symbol:"PETH",decimals:18},79:{name:"ZENITH",symbol:"ZENITH",decimals:18},80:{name:"RNA",symbol:"RNA",decimals:18},81:{name:"Japan Open Chain Token",symbol:"JOC",decimals:18},82:{name:"Meter",symbol:"MTR",decimals:18},83:{name:"Meter",symbol:"MTR",decimals:18},84:{name:"XRP",symbol:"XRP",decimals:18},85:{name:"GateToken",symbol:"GT",decimals:18},86:{name:"GateToken",symbol:"GT",decimals:18},87:{name:"Supernova",symbol:"SNT",decimals:18},88:{name:"Viction",symbol:"VIC",decimals:18},89:{name:"Viction",symbol:"VIC",decimals:18},90:{name:"Garizon",symbol:"GAR",decimals:18},91:{name:"Garizon",symbol:"GAR",decimals:18},92:{name:"Garizon",symbol:"GAR",decimals:18},93:{name:"Garizon",symbol:"GAR",decimals:18},94:{name:"BCTS",symbol:"BCTS",decimals:18},95:{name:"CADL",symbol:"CADL",decimals:18},96:{name:"Bitkub Coin",symbol:"KUB",decimals:18},97:{name:"BNB Chain Native Token",symbol:"tBNB",decimals:18},98:{name:"SIX evm token",symbol:"SIX",decimals:18},99:{name:"POA Network Core Ether",symbol:"POA",decimals:18},100:{name:"xDAI",symbol:"XDAI",decimals:18},101:{name:"EtherInc Ether",symbol:"ETI",decimals:18},102:{name:"Web3Games",symbol:"W3G",decimals:18},103:{name:"Worldland",symbol:"WLC",decimals:18},104:{name:"Kaiba Testnet Token",symbol:"tKAIBA",decimals:18},105:{name:"Web3Games",symbol:"W3G",decimals:18},106:{name:"Velas",symbol:"VLX",decimals:18},107:{name:"Nebula X",symbol:"NBX",decimals:18},108:{name:"ThunderCore Token",symbol:"TT",decimals:18},109:{name:"BONE Shibarium",symbol:"BONE",decimals:18},110:{name:"Proton",symbol:"XPR",decimals:4},111:{name:"EtherLite",symbol:"ETL",decimals:18},112:{name:"Gas IDR",symbol:"GIDR",decimals:18},113:{name:"Dehvo",symbol:"Deh",decimals:18},114:{name:"Coston2 Flare",symbol:"C2FLR",decimals:18},117:{name:"Uptick",symbol:"UPTICK",decimals:18},118:{name:"Arcology Coin",symbol:"Acol",decimals:18},119:{name:"NULS",symbol:"NULS",decimals:18},120:{name:"NULS",symbol:"NULS",decimals:18},121:{name:"Realchain",symbol:"REAL",decimals:18},122:{name:"Fuse",symbol:"FUSE",decimals:18},123:{name:"Spark",symbol:"SPARK",decimals:18},124:{name:"Decentralized Web Utility",symbol:"DWU",decimals:18},125:{name:"OYchain Token",symbol:"OY",decimals:18},126:{name:"OYchain Token",symbol:"OY",decimals:18},127:{name:"Factory 127 Token",symbol:"FETH",decimals:18},128:{name:"Huobi ECO Chain Native Token",symbol:"HT",decimals:18},129:{name:"INOV8",symbol:"INOV8",decimals:18},131:{name:"Engram Tokio Testnet",symbol:"tGRAM",decimals:18},132:{name:"Namefi Coin",symbol:"NFIC",decimals:18},133:{name:"HashKey EcoPoints",symbol:"HSK",decimals:18},134:{name:"xRLC",symbol:"xRLC",decimals:18},135:{name:"Alyx Testnet Native Token",symbol:"ALYX",decimals:18},136:{name:"Deamchain Native Token",symbol:"DEAM",decimals:18},137:{name:"MATIC",symbol:"MATIC",decimals:18},138:{name:"Ether",symbol:"ETH",decimals:18},139:{name:"WoopCoin",symbol:"WOOC",decimals:18},140:{name:"Eternal",symbol:"Eter",decimals:18},141:{name:"Belly",symbol:"BELLY",decimals:18},142:{name:"Prodax",symbol:"DAX",decimals:18},144:{name:"PHI",symbol:"Φ",decimals:18},145:{name:"SoraETH",symbol:"SETH",decimals:18},147:{name:"Flag",symbol:"FLAG",decimals:18},148:{name:"SMR",symbol:"SMR",decimals:18},150:{name:"SIX testnet evm token",symbol:"tSIX",decimals:18},151:{name:"Redbelly Network Coin",symbol:"RBNT",decimals:18},152:{name:"Redbelly Network Coin",symbol:"RBNT",decimals:18},153:{name:"Redbelly Network Coin",symbol:"RBNT",decimals:18},154:{name:"Redbelly Network Coin",symbol:"RBNT",decimals:18},155:{name:"TENET",symbol:"TENET",decimals:18},156:{name:"OEBlock",symbol:"OEB",decimals:18},157:{name:"BONE",symbol:"BONE",decimals:18},158:{name:"Roburna",symbol:"RBA",decimals:18},159:{name:"Roburna",symbol:"RBAT",decimals:18},160:{name:"Armonia Multichain Native Token",symbol:"AMAX",decimals:18},161:{name:"Armonia Multichain Native Token",symbol:"AMAX",decimals:18},162:{name:"Lightstreams PHT",symbol:"PHT",decimals:18},163:{name:"Lightstreams PHT",symbol:"PHT",decimals:18},164:{name:"Omni",symbol:"OMNI",decimals:18},166:{name:"Omni",symbol:"OMNI",decimals:18},167:{name:"ATOSHI",symbol:"ATOS",decimals:18},168:{name:"AIOZ",symbol:"AIOZ",decimals:18},169:{name:"Ether",symbol:"ETH",decimals:18},170:{name:"HOO",symbol:"HOO",decimals:18},172:{name:"Latam-Blockchain Resil Test Native Token",symbol:"usd",decimals:18},176:{name:"DC Native Token",symbol:"DCT",decimals:18},178:{name:"ABEY",symbol:"tABEY",decimals:18},179:{name:"ABEY",symbol:"ABEY",decimals:18},180:{name:"AME",symbol:"AME",decimals:18},181:{name:"WATER",symbol:"WATER",decimals:18},184:{name:"Dojima",symbol:"DOJ",decimals:18},185:{name:"Ether",symbol:"ETH",decimals:18},186:{name:"Seele",symbol:"Seele",decimals:18},187:{name:"Dojima",symbol:"DOJ",decimals:18},188:{name:"BTM",symbol:"BTM",decimals:18},189:{name:"BTM",symbol:"BTM",decimals:18},190:{name:"CommuDAO",symbol:"CMD",decimals:18},191:{name:"FFG",symbol:"FFG",decimals:18},193:{name:"Crypto Emergency",symbol:"CEM",decimals:18},195:{name:"X Layer Global Utility Token in testnet",symbol:"OKB",decimals:18},196:{name:"X Layer Global Utility Token",symbol:"OKB",decimals:18},197:{name:"Neutrinos",symbol:"NEUTR",decimals:18},198:{name:"Bitcoin",symbol:"BTC",decimals:18},199:{name:"BitTorrent",symbol:"BTT",decimals:18},200:{name:"xDAI",symbol:"xDAI",decimals:18},201:{name:"MOAC",symbol:"mc",decimals:18},202:{name:"Edgeless Wrapped Eth",symbol:"EwEth",decimals:18},204:{name:"BNB Chain Native Token",symbol:"BNB",decimals:18},205:{name:"Global Mobile Money Gateway",symbol:"$EKH",decimals:18},206:{name:"VinuChain",symbol:"VC",decimals:18},207:{name:"VinuChain",symbol:"VC",decimals:18},208:{name:"Notes",symbol:"utx",decimals:18},210:{name:"Bitnet",symbol:"BTN",decimals:18},211:{name:"Freight Trust Native",symbol:"0xF",decimals:18},212:{name:"Makalu MAPO",symbol:"MAPO",decimals:18},213:{name:"BSquared Token",symbol:"B2",decimals:18},214:{name:"Shina Inu",symbol:"SHI",decimals:18},217:{name:"MCD",symbol:"MCD",decimals:18},220:{name:"Sepolia Ether",symbol:"ETH",decimals:18},221:{name:"BlockEx",symbol:"XBE",decimals:18},223:{name:"Bitcoin",symbol:"BTC",decimals:18},224:{name:"Viridis Token",symbol:"VRD",decimals:18},225:{name:"LA",symbol:"LA",decimals:18},226:{name:"TLA",symbol:"TLA",decimals:18},228:{name:"FHE",symbol:"FHE",decimals:18},230:{name:"SwapDEX",symbol:"SDX",decimals:18},233:{name:"Ether",symbol:"ETH",decimals:18},234:{name:"JNFTC",symbol:"JNFTC",decimals:18},236:{name:"Deamchain Native Token",symbol:"DEAM",decimals:18},242:{name:"Plinga",symbol:"PLINGA",decimals:18},246:{name:"Energy Web Token",symbol:"EWT",decimals:18},248:{name:"OAS",symbol:"OAS",decimals:18},250:{name:"Fantom",symbol:"FTM",decimals:18},252:{name:"Frax Ether",symbol:"frxETH",decimals:18},254:{name:"Ether",symbol:"ETH",decimals:18},255:{name:"Ether",symbol:"ETH",decimals:18},256:{name:"Huobi ECO Chain Test Native Token",symbol:"htt",decimals:18},258:{name:"Setheum",symbol:"SETM",decimals:18},259:{name:"Neonlink Native Token",symbol:"NEON",decimals:18},261:{name:"testGURU",symbol:"tGURU",decimals:18},262:{name:"Suren",symbol:"SRN",decimals:18},266:{name:"Ankr",symbol:"ANKR",decimals:18},267:{name:"Testnet Ankr",symbol:"ANKR",decimals:18},268:{name:"Devnet Ankr",symbol:"ANKR",decimals:18},269:{name:"High Performance Blockchain Ether",symbol:"HPB",decimals:18},271:{name:"EgonCoin",symbol:"EGON",decimals:18},274:{name:"LaCoin",symbol:"LAC",decimals:18},278:{name:"FAI",symbol:"FAI",decimals:18},279:{name:"BPX",symbol:"BPX",decimals:18},282:{name:"Cronos zkEVM Test Coin",symbol:"zkTCRO",decimals:18},288:{name:"Ether",symbol:"ETH",decimals:18},291:{name:"Ether",symbol:"ETH",decimals:18},295:{name:"hbar",symbol:"HBAR",decimals:18},296:{name:"hbar",symbol:"HBAR",decimals:18},297:{name:"hbar",symbol:"HBAR",decimals:18},298:{name:"hbar",symbol:"HBAR",decimals:18},300:{name:"Ether",symbol:"ETH",decimals:18},302:{name:"Ether",symbol:"ETH",decimals:18},303:{name:"Neurochain",symbol:"tNCN",decimals:18},305:{name:"BTC",symbol:"BTC",decimals:18},307:{name:"Lovely",symbol:"LOVELY",decimals:18},308:{name:"Furtheon",symbol:"FTH",decimals:18},309:{name:"Wyzth",symbol:"WYZ",decimals:18},311:{name:"OMAX COIN",symbol:"OMAX",decimals:18},313:{name:"Neurochain",symbol:"NCN",decimals:18},314:{name:"filecoin",symbol:"FIL",decimals:18},321:{name:"KuCoin Token",symbol:"KCS",decimals:18},322:{name:"KuCoin Testnet Token",symbol:"tKCS",decimals:18},323:{name:"Cosvm",symbol:"CVM",decimals:18},324:{name:"Ether",symbol:"ETH",decimals:18},325:{name:"ETH",symbol:"ETH",decimals:18},326:{name:"ETH",symbol:"ETH",decimals:18},333:{name:"Web3Q",symbol:"W3Q",decimals:18},335:{name:"Jewel",symbol:"JEWEL",decimals:18},336:{name:"Shiden",symbol:"SDN",decimals:18},338:{name:"Cronos Test Coin",symbol:"TCRO",decimals:18},345:{name:"TAS",symbol:"TAS",decimals:18},360:{name:"Ether",symbol:"ETH",decimals:18},361:{name:"Theta Fuel",symbol:"TFUEL",decimals:18},363:{name:"Theta Fuel",symbol:"TFUEL",decimals:18},364:{name:"Theta Fuel",symbol:"TFUEL",decimals:18},365:{name:"Theta Fuel",symbol:"TFUEL",decimals:18},369:{name:"Pulse",symbol:"PLS",decimals:18},371:{name:"tCNT",symbol:"tCNT",decimals:18},380:{name:"filecoin",symbol:"FIL",decimals:18},381:{name:"filecoin",symbol:"FIL",decimals:18},385:{name:"Lisinski Ether",symbol:"LISINS",decimals:18},388:{name:"Cronos zkEVM CRO",symbol:"zkCRO",decimals:18},395:{name:"CADL",symbol:"CADL",decimals:18},397:{name:"NEAR",symbol:"NEAR",decimals:18},398:{name:"Testnet NEAR",symbol:"NEAR",decimals:18},399:{name:"USNT",symbol:"USNT",decimals:18},400:{name:"HyperonChain",symbol:"HPN",decimals:18},401:{name:"OZONE",symbol:"OZO",decimals:18},404:{name:"Ether",symbol:"ETH",decimals:18},411:{name:"Pepe",symbol:"PEPE",decimals:18},416:{name:"SX Network",symbol:"SX",decimals:18},418:{name:"Test LaCoin",symbol:"TLA",decimals:18},420:{name:"Goerli Ether",symbol:"ETH",decimals:18},422:{name:"Viridis Token",symbol:"VRD",decimals:18},424:{name:"Ether",symbol:"ETH",decimals:18},427:{name:"Zeeth Token",symbol:"ZTH",decimals:18},428:{name:"OAS",symbol:"OAS",decimals:18},434:{name:"Boyaa mainnet native coin",symbol:"BYC",decimals:18},443:{name:"Sepolia Ether",symbol:"ETH",decimals:18},444:{name:"Sepolia ETH",symbol:"ETH",decimals:18},456:{name:"ARZIO",symbol:"AZO",decimals:18},462:{name:"Areon",symbol:"TAREA",decimals:18},463:{name:"Areon",symbol:"AREA",decimals:18},480:{name:"Ether",symbol:"ETH",decimals:18},499:{name:"Rupaya",symbol:"RUPX",decimals:18},500:{name:"Camino",symbol:"CAM",decimals:18},501:{name:"Camino",symbol:"CAM",decimals:18},510:{name:"Ether",symbol:"ETH",decimals:18},512:{name:"Acuteangle Native Token",symbol:"AAC",decimals:18},513:{name:"Acuteangle Native Token",symbol:"AAC",decimals:18},516:{name:"Gear Zero Network Native Token",symbol:"GZN",decimals:18},520:{name:"XT Smart Chain Native Token",symbol:"XT",decimals:18},529:{name:"Firechain",symbol:"FIRE",decimals:18},530:{name:"Function X",symbol:"FX",decimals:18},534:{name:"CANDLE",symbol:"CNDL",decimals:18},537:{name:"BSC",symbol:"BNB",decimals:18},542:{name:"PAW",symbol:"PAW",decimals:18},545:{name:"FLOW",symbol:"FLOW",decimals:18},555:{name:"CLASS COIN",symbol:"CLASS",decimals:18},558:{name:"Tao",symbol:"TAO",decimals:18},568:{name:"Dogecoin",symbol:"DOGE",decimals:18},570:{name:"Syscoin",symbol:"SYS",decimals:18},571:{name:"Metatime Coin",symbol:"MTC",decimals:18},579:{name:"Filecoin",symbol:"FIL",decimals:18},592:{name:"Astar",symbol:"ASTR",decimals:18},595:{name:"Acala Mandala Token",symbol:"mACA",decimals:18},596:{name:"Karura Token",symbol:"KAR",decimals:18},597:{name:"Acala Token",symbol:"ACA",decimals:18},600:{name:"Meshnyan Testnet Native Token",symbol:"MESHT",decimals:18},601:{name:"VINE",symbol:"VNE",decimals:18},610:{name:"Darwin Devnet token",symbol:"DNA",decimals:18},612:{name:"EIOB",symbol:"EIOB",decimals:18},614:{name:"GLQ",symbol:"GLQ",decimals:18},624:{name:"Binary Token",symbol:"BNRY",decimals:18},625:{name:"Test BNRY",symbol:"BNRY",decimals:18},634:{name:"USDC",symbol:"USDC",decimals:18},646:{name:"FLOW",symbol:"FLOW",decimals:18},647:{name:"SX Network",symbol:"SX",decimals:18},648:{name:"Endurance Chain Native Token",symbol:"ACE",decimals:18},653:{name:"kalis",symbol:"KALIS",decimals:18},654:{name:"kalis",symbol:"KALIS",decimals:18},662:{name:"ulc",symbol:"ULC",decimals:18},666:{name:"Pixie Chain Testnet Native Token",symbol:"PCTT",decimals:18},667:{name:"LAOS",symbol:"LAOS",decimals:18},668:{name:"JuncaChain Native Token",symbol:"JGC",decimals:18},669:{name:"JuncaChain Testnet Native Token",symbol:"JGCT",decimals:18},686:{name:"Karura Token",symbol:"KAR",decimals:18},690:{name:"Ether",symbol:"ETH",decimals:18},700:{name:"Social",symbol:"SNS",decimals:18},701:{name:"Koi Network Native Token",symbol:"KRING",decimals:18},707:{name:"BCS Token",symbol:"BCS",decimals:18},708:{name:"BCS Testnet Token",symbol:"tBCS",decimals:18},710:{name:"Fury",symbol:"FURY",decimals:18},713:{name:"VRC Chain",symbol:"VRC",decimals:18},719:{name:"BONE",symbol:"BONE",decimals:18},721:{name:"Lycan",symbol:"LYC",decimals:18},727:{name:"Blucrates",symbol:"BLU",decimals:18},730:{name:"Lovely",symbol:"LOVELY",decimals:18},741:{name:"VNT",symbol:"VNT",decimals:18},742:{name:"Script",symbol:"SPAY",decimals:18},747:{name:"FLOW",symbol:"FLOW",decimals:18},766:{name:"Shiba Predator",symbol:"QOM",decimals:18},776:{name:"Openchain Testnet",symbol:"TOPC",decimals:18},777:{name:"cTH",symbol:"cTH",decimals:18},786:{name:"MAAL",symbol:"MAAL",decimals:18},787:{name:"Acala Token",symbol:"ACA",decimals:18},788:{name:"Aerochain Testnet",symbol:"TAero",decimals:18},789:{name:"Ether",symbol:"ETH",decimals:18},799:{name:"Test Rupaya",symbol:"TRUPX",decimals:18},800:{name:"LUCID",symbol:"LUCID",decimals:18},803:{name:"Haicoin",symbol:"HAIC",decimals:18},808:{name:"Portal Fantasy Token",symbol:"PFT",decimals:18},810:{name:"Haven1",symbol:"H1",decimals:18},813:{name:"Qitmeer",symbol:"MEER",decimals:18},814:{name:"Ether",symbol:"ETH",decimals:18},818:{name:"BeOne Chain Mainnet",symbol:"BOC",decimals:18},820:{name:"Callisto",symbol:"CLO",decimals:18},822:{name:"Bitcoin",symbol:"rBTC",decimals:18},831:{name:"CDT",symbol:"CDT",decimals:18},841:{name:"Tara",symbol:"TARA",decimals:18},842:{name:"Tara",symbol:"TARA",decimals:18},852:{name:"HongKong",symbol:"HK",decimals:18},859:{name:"Zeeth Token",symbol:"ZTH",decimals:18},868:{name:"FST",symbol:"FST",decimals:18},876:{name:"OAS",symbol:"OAS",decimals:18},877:{name:"Dexit network",symbol:"DXT",decimals:18},880:{name:"AMBROS",symbol:"AMBROS",decimals:18},888:{name:"Wancoin",symbol:"WAN",decimals:18},898:{name:"MAXI GAS",symbol:"MGAS",decimals:18},899:{name:"MAXI GAS",symbol:"MGAS",decimals:18},900:{name:"Garizon",symbol:"GAR",decimals:18},901:{name:"Garizon",symbol:"GAR",decimals:18},902:{name:"Garizon",symbol:"GAR",decimals:18},903:{name:"Garizon",symbol:"GAR",decimals:18},909:{name:"Portal Fantasy Token",symbol:"PFT",decimals:18},910:{name:"DecentraBone",symbol:"DBONE",decimals:18},911:{name:"TBTC",symbol:"TBTC",decimals:18},917:{name:"Firechain",symbol:"FIRE",decimals:18},919:{name:"Sepolia Ether",symbol:"ETH",decimals:18},927:{name:"Yidark",symbol:"YDK",decimals:18},943:{name:"Test Pulse",symbol:"tPLS",decimals:18},956:{name:"Ether",symbol:"ETH",decimals:18},957:{name:"Ether",symbol:"ETH",decimals:18},963:{name:"BTCC",symbol:"BTCC",decimals:18},969:{name:"Settled EthXY Token",symbol:"SEXY",decimals:18},970:{name:"Oort",symbol:"OORT",decimals:18},971:{name:"Oort",symbol:"CCN",decimals:18},972:{name:"Oort",symbol:"CCNA",decimals:18},977:{name:"Nepal Blockchain Network Ether",symbol:"YETI",decimals:18},979:{name:"Settled EthXY Token",symbol:"SEXY",decimals:18},980:{name:"Ether",symbol:"ETH",decimals:18},985:{name:"Memo",symbol:"CMEMO",decimals:18},987:{name:"BINARY",symbol:"BNRY",decimals:18},989:{name:"TOP",symbol:"TOP",decimals:6},990:{name:"eLiberty",symbol:"$EL",decimals:18},995:{name:"5ire Token",symbol:"5IRE",decimals:18},996:{name:"Wrapped ETH",symbol:"WETH",decimals:18},997:{name:"5ire Testnet Token",symbol:"T5IRE",decimals:18},998:{name:"Lucky",symbol:"L99",decimals:18},999:{name:"Wancoin",symbol:"WAN",decimals:18},1e3:{name:"GCD",symbol:"GCD",decimals:18},1001:{name:"KAIA",symbol:"KLAY",decimals:18},1003:{name:"Tectum",symbol:"TET",decimals:8},1004:{name:"T-EKTA",symbol:"T-EKTA",decimals:18},1007:{name:"Newton",symbol:"NEW",decimals:18},1008:{name:"Eurus",symbol:"EUN",decimals:18},1009:{name:"JNFTC",symbol:"JNFTC",decimals:18},1010:{name:"Evrice",symbol:"EVC",decimals:18},1011:{name:"Rebus",symbol:"REBUS",decimals:18},1012:{name:"Newton",symbol:"NEW",decimals:18},1022:{name:"Sakura",symbol:"SKU",decimals:18},1023:{name:"Clover",symbol:"CLV",decimals:18},1024:{name:"CLV",symbol:"CLV",decimals:18},1028:{name:"BitTorrent",symbol:"BTT",decimals:18},1030:{name:"CFX",symbol:"CFX",decimals:18},1031:{name:"PRX",symbol:"PRX",decimals:18},1038:{name:"tBRO",symbol:"tBRO",decimals:18},1039:{name:"BRO",symbol:"BRO",decimals:18},1073:{name:"SMR",symbol:"SMR",decimals:18},1075:{name:"IOTA",symbol:"IOTA",decimals:18},1079:{name:"MINTARA",symbol:"MNTR",decimals:18},1080:{name:"MINTARA",symbol:"MNTR",decimals:18},1088:{name:"Metis",symbol:"METIS",decimals:18},1089:{name:"HEART",symbol:"HEART",decimals:18},1099:{name:"MOAC",symbol:"mc",decimals:18},1100:{name:"DYM",symbol:"DYM",decimals:18},1101:{name:"Ether",symbol:"ETH",decimals:18},1107:{name:"BLXQ",symbol:"BLXQ",decimals:18},1108:{name:"BLXQ",symbol:"BLXQ",decimals:18},1111:{name:"WEMIX",symbol:"WEMIX",decimals:18},1112:{name:"TestnetWEMIX",symbol:"tWEMIX",decimals:18},1113:{name:"BSquared Token",symbol:"B2",decimals:18},1115:{name:"Core Blockchain Testnet Native Token",symbol:"tCORE",decimals:18},1116:{name:"Core Blockchain Native Token",symbol:"CORE",decimals:18},1117:{name:"Dogcoin",symbol:"DOGS",decimals:18},1123:{name:"Bitcoin",symbol:"BTC",decimals:18},1130:{name:"DeFiChain",symbol:"DFI",decimals:18},1131:{name:"DeFiChain",symbol:"DFI",decimals:18},1133:{name:"DeFiChain Token",symbol:"DFI",decimals:18},1135:{name:"Ether",symbol:"ETH",decimals:18},1138:{name:"SINSO",symbol:"SINSO",decimals:18},1139:{name:"MathChain",symbol:"MATH",decimals:18},1140:{name:"MathChain",symbol:"MATH",decimals:18},1147:{name:"Flag Testnet",symbol:"FLAG",decimals:18},1149:{name:"Plex Native Token",symbol:"PLEX",decimals:18},1170:{name:"Origin",symbol:"UOC",decimals:18},1177:{name:"Smart Host Teknoloji TESTNET",symbol:"tSHT",decimals:18},1188:{name:"ClubMos",symbol:"MOS",decimals:18},1197:{name:"Iora",symbol:"IORA",decimals:18},1200:{name:"CuckooAI",symbol:"CAI",decimals:18},1201:{name:"AVIS",symbol:"AVIS",decimals:18},1202:{name:"World Trade Token",symbol:"WTT",decimals:18},1209:{name:"SaitaBlockChain(SBC)",symbol:"STC",decimals:18},1210:{name:"CuckooAI",symbol:"CAI",decimals:18},1213:{name:"Popcat",symbol:"POP",decimals:18},1214:{name:"EnterCoin",symbol:"ENTER",decimals:18},1221:{name:"Ether",symbol:"ETH",decimals:18},1223:{name:"Ether",symbol:"ETH",decimals:18},1225:{name:"Hybrid",symbol:"HYB",decimals:18},1227:{name:"BTC Protocol",symbol:"BTCP",decimals:18},1229:{name:"Exzo",symbol:"XZO",decimals:18},1230:{name:"Ultron",symbol:"ULX",decimals:18},1231:{name:"Ultron",symbol:"ULX",decimals:18},1234:{name:"FITFI",symbol:"FITFI",decimals:18},1235:{name:"ITX",symbol:"ITX",decimals:18},1243:{name:"ARC",symbol:"ARC",decimals:18},1244:{name:"ARC",symbol:"ARC",decimals:18},1246:{name:"OMCOIN",symbol:"OM",decimals:18},1248:{name:"Dogether",symbol:"dogeth",decimals:18},1252:{name:"Crazy Internet Coin",symbol:"CICT",decimals:18},1280:{name:"HALO",symbol:"HO",decimals:18},1284:{name:"Glimmer",symbol:"GLMR",decimals:18},1285:{name:"Moonriver",symbol:"MOVR",decimals:18},1287:{name:"Dev",symbol:"DEV",decimals:18},1288:{name:"Rocs",symbol:"ROC",decimals:18},1291:{name:"Swisstronik",symbol:"SWTR",decimals:18},1311:{name:"Dos Native Token",symbol:"DOS",decimals:18},1313:{name:"JaiHo",symbol:"JaiHo",decimals:18},1314:{name:"Alyx Chain Native Token",symbol:"ALYX",decimals:18},1319:{name:"AIA Mainnet",symbol:"AIA",decimals:18},1320:{name:"AIA Testnet",symbol:"AIA",decimals:18},1328:{name:"Sei",symbol:"SEI",decimals:18},1329:{name:"Sei",symbol:"SEI",decimals:18},1337:{name:"Geth Testnet Ether",symbol:"ETH",decimals:18},1338:{name:"LAVA",symbol:"LAVA",decimals:18},1339:{name:"LAVA",symbol:"LAVA",decimals:18},1343:{name:"BLITZ GAS",symbol:"BGAS",decimals:18},1353:{name:"Crazy Internet Coin",symbol:"CIC",decimals:18},1369:{name:"Zakumi Chain Native Token",symbol:"ZAFIC",decimals:18},1370:{name:"Rama",symbol:"RAMA",decimals:18},1377:{name:"Rama",symbol:"tRAMA",decimals:18},1379:{name:"Kalar",symbol:"KLC",decimals:18},1388:{name:"SINSO",symbol:"SINSO",decimals:18},1392:{name:"Joseon Mun",symbol:"JSM",decimals:18},1414:{name:"Sepolia Ether",symbol:"ETH",decimals:18},1433:{name:"Rikeza",symbol:"RIK",decimals:18},1440:{name:"LAS",symbol:"LAS",decimals:18},1442:{name:"Ether",symbol:"ETH",decimals:18},1452:{name:"GANG",symbol:"GANG",decimals:18},1453:{name:"Metatime Coin",symbol:"MTC",decimals:18},1455:{name:"CTEX",symbol:"CTEX",decimals:18},1456:{name:"Ether",symbol:"ETH",decimals:18},1490:{name:"Vitruveo Coin",symbol:"VTRU",decimals:18},1499:{name:"iDos Games Coin",symbol:"IGC",decimals:18},1501:{name:"BTC",symbol:"BTC",decimals:18},1506:{name:"KSX",symbol:"KSX",decimals:18},1507:{name:"KSX",symbol:"KSX",decimals:18},1515:{name:"Beagle",symbol:"BG",decimals:18},1559:{name:"TENET",symbol:"TENET",decimals:18},1570:{name:"STARX",symbol:"STARX",decimals:18},1578:{name:"STARX",symbol:"STARX",decimals:18},1617:{name:"Ethereum Inscription",symbol:"ETINS",decimals:18},1618:{name:"Catecoin",symbol:"CATE",decimals:18},1620:{name:"Atheios Ether",symbol:"ATH",decimals:18},1625:{name:"Gravity",symbol:"G",decimals:18},1648:{name:"Pivotal Plus",symbol:"PLUS",decimals:18},1657:{name:"Bitcoin Asset",symbol:"BTA",decimals:18},1662:{name:"Licoin",symbol:"LCN",decimals:18},1663:{name:"Testnet Zen",symbol:"tZEN",decimals:18},1686:{name:"Sepolia Ether",symbol:"ETH",decimals:18},1687:{name:"Sepolia Ether",symbol:"ETH",decimals:18},1688:{name:"LUDAN",symbol:"LUDAN",decimals:18},1701:{name:"ANY",symbol:"ANY",decimals:18},1707:{name:"Jinda",symbol:"JINDA",decimals:18},1708:{name:"Jinda",symbol:"JINDA",decimals:18},1717:{name:"Doric Native Token",symbol:"DRC",decimals:18},1718:{name:"Palette Token",symbol:"PLT",decimals:18},1729:{name:"Ether",symbol:"ETH",decimals:18},1740:{name:"ETH",symbol:"ETH",decimals:18},1750:{name:"ETH",symbol:"ETH",decimals:18},1773:{name:"Grams",symbol:"GRAMS",decimals:18},1777:{name:"GANG",symbol:"GANG",decimals:18},1789:{name:"Ether",symbol:"ETH",decimals:18},1804:{name:"Climate awaReness Coin",symbol:"CRC",decimals:18},1807:{name:"Rabbit Analog Test Chain Native Token ",symbol:"rAna",decimals:18},1811:{name:"LIF3",symbol:"LIF3",decimals:18},1818:{name:"Cube Chain Native Token",symbol:"CUBE",decimals:18},1819:{name:"Cube Chain Test Native Token",symbol:"CUBET",decimals:18},1821:{name:"RUBY Smart Chain Native Token",symbol:"RUBY",decimals:18},1856:{name:"Teslafunds Ether",symbol:"TSF",decimals:18},1875:{name:"WhiteBIT Coin",symbol:"WBT",decimals:18},1881:{name:"Gitshock Cartenz",symbol:"tGTFX",decimals:18},1890:{name:"Ethereum",symbol:"ETH",decimals:18},1891:{name:"Ethereum",symbol:"ETH",decimals:18},1898:{name:"BOYACoin",symbol:"BOY",decimals:18},1899:{name:"RED",symbol:"RED",decimals:18},1904:{name:"SCN",symbol:"SCN",decimals:18},1907:{name:"Bitci",symbol:"BITCI",decimals:18},1908:{name:"Test Bitci",symbol:"TBITCI",decimals:18},1909:{name:"Merkle",symbol:"MRK",decimals:18},1911:{name:"Ether",symbol:"ETH",decimals:18},1912:{name:"RUBY Smart Chain Native Token",symbol:"tRUBY",decimals:18},1918:{name:"UPBEth",symbol:"UPBEth",decimals:18},1945:{name:"ONUS",symbol:"ONUS",decimals:18},1951:{name:"DOINX",symbol:"DOINX",decimals:18},1953:{name:"Selendra",symbol:"tSEL",decimals:18},1954:{name:"Dexilla Native Token",symbol:"DXZ",decimals:18},1956:{name:"BTC",symbol:"BTC",decimals:18},1961:{name:"Selendra",symbol:"SEL",decimals:18},1967:{name:"Eleanor Metacoin",symbol:"MTC",decimals:18},1969:{name:"Super Chain Native Token",symbol:"TSCS",decimals:18},1970:{name:"Super Chain Native Token",symbol:"SCS",decimals:18},1971:{name:"ATLR",symbol:"ATLR",decimals:18},1972:{name:"RedeCoin",symbol:"REDEV2",decimals:18},1975:{name:"ONUS",symbol:"ONUS",decimals:18},1984:{name:"Eurus",symbol:"EUN",decimals:18},1985:{name:"Tushy Token",symbol:"TUSHY",decimals:18},1986:{name:"Tushy Token",symbol:"TUSHY",decimals:18},1987:{name:"EtherGem Ether",symbol:"EGEM",decimals:18},1992:{name:"USD Coin",symbol:"USDC",decimals:18},1993:{name:"ETH",symbol:"ETH",decimals:18},1994:{name:"EKTA",symbol:"EKTA",decimals:18},1995:{name:"EDEXA",symbol:"EDX",decimals:18},1996:{name:"DMT",symbol:"DMT",decimals:18},1997:{name:"Kyoto",symbol:"KYOTO",decimals:18},1998:{name:"Kyoto",symbol:"KYOTO",decimals:18},2e3:{name:"Dogecoin",symbol:"DOGE",decimals:18},2001:{name:"milkAda",symbol:"mADA",decimals:18},2002:{name:"milkALGO",symbol:"mALGO",decimals:18},2004:{name:"MetaLink",symbol:"MTL",decimals:18},2008:{name:"CloudWalk Native Token",symbol:"CWN",decimals:18},2009:{name:"CloudWalk Native Token",symbol:"CWN",decimals:18},2013:{name:"GAS",symbol:"GAS",decimals:18},2014:{name:"NOW Coin",symbol:"NOW",decimals:18},2016:{name:"MainnetZ",symbol:"NetZ",decimals:18},2017:{name:"Telcoin",symbol:"TEL",decimals:18},2018:{name:"USD",symbol:"USD",decimals:18},2019:{name:"USD",symbol:"USD",decimals:18},2020:{name:"USD",symbol:"USD",decimals:18},2021:{name:"Edgeware",symbol:"EDG",decimals:18},2022:{name:"Testnet EDG",symbol:"tEDG",decimals:18},2023:{name:"test-Shuffle",symbol:"tSFL",decimals:18},2024:{name:"SWANETH",symbol:"sETH",decimals:18},2025:{name:"Rangers Protocol Gas",symbol:"RPG",decimals:18},2026:{name:"Edgeless Wrapped Eth",symbol:"EwEth",decimals:18},2031:{name:"Centrifuge",symbol:"CFG",decimals:18},2032:{name:"Catalyst CFG",symbol:"NCFG",decimals:18},2035:{name:"Phala",symbol:"PHA",decimals:18},2037:{name:"Shrapgas",symbol:"SHRAP",decimals:18},2038:{name:"SHRAPG",symbol:"SHRAPG",decimals:18},2039:{name:"TZERO",symbol:"TZERO",decimals:18},2040:{name:"VANRY",symbol:"VANRY",decimals:18},2043:{name:"NeuroWeb Token",symbol:"NEURO",decimals:12},2044:{name:"Shrapnel Gas Token",symbol:"SHRAPG",decimals:18},2045:{name:"BTC",symbol:"BTC",decimals:18},2047:{name:"STOS",symbol:"STOS",decimals:18},2048:{name:"STOS",symbol:"STOS",decimals:18},2049:{name:"Movo Smart Chain",symbol:"MOVO",decimals:18},2077:{name:"Qkacoin",symbol:"QKA",decimals:18},2088:{name:"Altair",symbol:"AIR",decimals:18},2100:{name:"Ecoball Coin",symbol:"ECO",decimals:18},2101:{name:"Espuma Coin",symbol:"ECO",decimals:18},2109:{name:"Sama Token",symbol:"SAMA",decimals:18},2112:{name:"UCASH",symbol:"UCASH",decimals:18},2121:{name:"Catena",symbol:"CMCX",decimals:18},2122:{name:"METAD",symbol:"METAD",decimals:18},2124:{name:"Metaunit",symbol:"MEU",decimals:18},2136:{name:"Dolarz",symbol:"Dolarz",decimals:18},2137:{name:"USD Coin",symbol:"USDC",decimals:18},2138:{name:"testEther",symbol:"tETH",decimals:18},2140:{name:"BTC",symbol:"BTC",decimals:18},2141:{name:"BTC",symbol:"BTC",decimals:18},2151:{name:"BOSAGORA",symbol:"BOA",decimals:18},2152:{name:"FRA",symbol:"FRA",decimals:18},2153:{name:"FRA",symbol:"FRA",decimals:18},2154:{name:"FRA",symbol:"FRA",decimals:18},2162:{name:"Coin",symbol:"COIN",decimals:18},2199:{name:"Sama Token",symbol:"SAMA",decimals:18},2202:{name:"Antofy",symbol:"ABN",decimals:18},2203:{name:"Bitcoin",symbol:"BTC",decimals:18},2213:{name:"EVA",symbol:"EVA",decimals:18},2221:{name:"TKava",symbol:"TKAVA",decimals:18},2222:{name:"Kava",symbol:"KAVA",decimals:18},2223:{name:"VNDT",symbol:"VNDT",decimals:18},2241:{name:"Krest",symbol:"KRST",decimals:18},2300:{name:"BOMB Token",symbol:"BOMB",decimals:18},2306:{name:"Ebro",symbol:"ebro",decimals:18},2309:{name:"Arev",symbol:"ARÉV",decimals:18},2311:{name:"Test LPX",symbol:"tstLPX",decimals:18},2323:{name:"SMA",symbol:"tSMA",decimals:18},2330:{name:"Altcoin",symbol:"ALT",decimals:18},2331:{name:"RSS3",symbol:"RSS3",decimals:18},2332:{name:"Soma Native Token",symbol:"SMA",decimals:18},2340:{name:"Atla",symbol:"ATLA",decimals:18},2342:{name:"Omnia",symbol:"OMNIA",decimals:18},2355:{name:"Ether",symbol:"ETH",decimals:18},2358:{name:"Sepolia Ether",symbol:"ETH",decimals:18},2370:{name:"Nexis",symbol:"NZT",decimals:18},2399:{name:"BOMB Token",symbol:"tBOMB",decimals:18},2400:{name:"OAS",symbol:"OAS",decimals:18},2410:{name:"Ether",symbol:"ETH",decimals:18},2415:{name:"XODEX Native Token",symbol:"XODEX",decimals:18},2425:{name:"King Of Legends",symbol:"KCC",decimals:18},2442:{name:"Ether",symbol:"ETH",decimals:18},2458:{name:"Hybrid Chain Native Token",symbol:"tHRC",decimals:18},2468:{name:"Hybrid Chain Native Token",symbol:"HRC",decimals:18},2484:{name:"Unicorn Ultra Nebulas Testnet",symbol:"U2U",decimals:18},2522:{name:"Frax Ether",symbol:"frxETH",decimals:18},2525:{name:"Injective",symbol:"INJ",decimals:18},2559:{name:"KorthoChain",symbol:"KTO",decimals:11},2569:{name:"TechPay",symbol:"TPC",decimals:18},2606:{name:"Climate awaReness Coin",symbol:"CRC",decimals:18},2611:{name:"Redlight Coin",symbol:"REDLC",decimals:18},2612:{name:"EZChain",symbol:"EZC",decimals:18},2613:{name:"EZChain",symbol:"EZC",decimals:18},2625:{name:"WhiteBIT Coin",symbol:"WBT",decimals:18},2648:{name:"BTC",symbol:"BTC",decimals:18},2649:{name:"BTC",symbol:"BTC",decimals:18},2662:{name:"Ether",symbol:"ETH",decimals:18},2710:{name:"Ether",symbol:"ETH",decimals:18},2718:{name:"KLAOS",symbol:"KLAOS",decimals:18},2730:{name:"tXR",symbol:"tXR",decimals:18},2731:{name:"TIME",symbol:"TIME",decimals:18},2748:{name:"Ether",symbol:"ETH",decimals:18},2777:{name:"Ether",symbol:"ETH",decimals:18},2810:{name:"Ether",symbol:"ETH",decimals:18},2882:{name:"IOTA",symbol:"IOTA",decimals:18},2907:{name:"Elux Chain",symbol:"ELUX",decimals:18},2911:{name:"TOPIA",symbol:"TOPIA",decimals:18},2941:{name:"Xenon Testnet",symbol:"tXEN",decimals:18},2999:{name:"BTY",symbol:"BTY",decimals:18},3e3:{name:"CPAY",symbol:"CPAY",decimals:18},3001:{name:"CPAY",symbol:"CPAY",decimals:18},3003:{name:"Canxium",symbol:"CAU",decimals:18},3011:{name:"3ULL",symbol:"3ULL",decimals:18},3031:{name:"Orlando",symbol:"ORL",decimals:18},3033:{name:"Rebus",symbol:"REBUS",decimals:18},3068:{name:"Bifrost",symbol:"BFC",decimals:18},3073:{name:"Move",symbol:"MOVE",decimals:18},3084:{name:"XLNetwork",symbol:"XLN",decimals:18},3100:{name:"IMMU",symbol:"IMMU",decimals:18},3102:{name:"VFI",symbol:"VFI",decimals:18},3109:{name:"BTC",symbol:"BTC",decimals:18},3110:{name:"BTC",symbol:"BTC",decimals:18},3269:{name:"Dubxcoin mainnet",symbol:"DUBX",decimals:18},3270:{name:"Dubxcoin testnet",symbol:"TDUBX",decimals:18},3306:{name:"Debounce Network",symbol:"DB",decimals:18},3331:{name:"ZCore",symbol:"ZCR",decimals:18},3333:{name:"Ether",symbol:"ETH",decimals:18},3334:{name:"Web3Q",symbol:"W3Q",decimals:18},3335:{name:"Ether",symbol:"ETH",decimals:18},3338:{name:"peaq",symbol:"PEAQ",decimals:18},3400:{name:"PRB",symbol:"PRB",decimals:18},3424:{name:"Evolve",symbol:"EVO",decimals:18},3434:{name:"SCAI",symbol:"SCAI",decimals:18},3456:{name:"Bitcoin",symbol:"BTC",decimals:18},3490:{name:"GTC",symbol:"GTC",decimals:18},3500:{name:"PRB",symbol:"PRB",decimals:18},3501:{name:"JFIN Coin",symbol:"JFIN",decimals:18},3601:{name:"pando-token",symbol:"PTX",decimals:18},3602:{name:"pando-token",symbol:"PTX",decimals:18},3630:{name:"Tycooncoin",symbol:"TYCO",decimals:18},3636:{name:"Botanix",symbol:"BTC",decimals:18},3637:{name:"Botanix",symbol:"BTC",decimals:18},3639:{name:"ISLAMICOIN",symbol:"ISLAMI",decimals:18},3645:{name:"ISLAMICOIN",symbol:"ISLAMI",decimals:18},3666:{name:"J",symbol:"J",decimals:18},3690:{name:"Bittex",symbol:"BTX",decimals:18},3693:{name:"Empire",symbol:"EMPIRE",decimals:18},3698:{name:"SenjePowers",symbol:"SPC",decimals:18},3699:{name:"SenjePowers",symbol:"SPC",decimals:18},3737:{name:"Crossbell Token",symbol:"CSB",decimals:18},3776:{name:"Ether",symbol:"ETH",decimals:18},3797:{name:"AlveyCoin",symbol:"ALV",decimals:18},3799:{name:"Testnet Tangle Network Token",symbol:"tTNT",decimals:18},3885:{name:"Ether",symbol:"ETH",decimals:18},3888:{name:"KalyCoin",symbol:"KLC",decimals:18},3889:{name:"KalyCoin",symbol:"KLC",decimals:18},3912:{name:"DRAC",symbol:"DRAC",decimals:18},3939:{name:"DOS",symbol:"DOS",decimals:18},3966:{name:"DYNO Token",symbol:"DYNO",decimals:18},3967:{name:"DYNO Token",symbol:"tDYNO",decimals:18},3993:{name:"Sepolia Ether",symbol:"ETH",decimals:18},3999:{name:"YCC",symbol:"YCC",decimals:18},4e3:{name:"OZONE",symbol:"OZO",decimals:18},4001:{name:"Peperium Chain Testnet",symbol:"PERIUM",decimals:18},4002:{name:"Fantom",symbol:"FTM",decimals:18},4003:{name:"XN",symbol:"XN",decimals:18},4040:{name:"Carbonium",symbol:"tCBR",decimals:18},4048:{name:"GP Token",symbol:"GP",decimals:18},4058:{name:"FTN",symbol:"FTN",decimals:18},4061:{name:"Ether",symbol:"ETH",decimals:18},4062:{name:"Sepolia Ether",symbol:"ETH",decimals:18},4078:{name:"Ether",symbol:"ETH",decimals:18},4080:{name:"Tobe Coin",symbol:"TBC",decimals:18},4090:{name:"FTN",symbol:"FTN",decimals:18},4096:{name:"BNI",symbol:"$BNI",decimals:18},4099:{name:"BNI",symbol:"$BNI",decimals:18},4102:{name:"testAIOZ",symbol:"AIOZ",decimals:18},4139:{name:"HEART",symbol:"HEART",decimals:18},4141:{name:"Tipboxcoin",symbol:"TPBX",decimals:18},4157:{name:"XFI",symbol:"XFI",decimals:18},4162:{name:"SX Network",symbol:"SX",decimals:18},4181:{name:"PHI",symbol:"Φ",decimals:18},4200:{name:"BTC",symbol:"BTC",decimals:18},4201:{name:"TestLYX",symbol:"LYXt",decimals:18},4202:{name:"Sepolia Ether",symbol:"ETH",decimals:18},4242:{name:"Nexi",symbol:"NEXI",decimals:18},4243:{name:"NexiV2",symbol:"NEXI",decimals:18},4337:{name:"Beam",symbol:"BEAM",decimals:18},4400:{name:"Credit",symbol:"CREDIT",decimals:18},4444:{name:"Htmlcoin",symbol:"HTML",decimals:8},4460:{name:"Sepolia Ether",symbol:"ETH",decimals:18},4488:{name:"Hydra",symbol:"HYDRA",decimals:18},4544:{name:"Emoney Network",symbol:"EMYC",decimals:18},4613:{name:"VERY",symbol:"VERY",decimals:18},4653:{name:"Ether",symbol:"ETH",decimals:18},4689:{name:"IoTeX",symbol:"IOTX",decimals:18},4690:{name:"IoTeX",symbol:"IOTX",decimals:18},4759:{name:"MEVerse",symbol:"MEV",decimals:18},4777:{name:"BlackFort Testnet Token",symbol:"TBXN",decimals:18},4801:{name:"Sepolia Ether",symbol:"ETH",decimals:18},4893:{name:"Globel Chain",symbol:"GC",decimals:18},4918:{name:"Venidium",symbol:"XVM",decimals:18},4919:{name:"Venidium",symbol:"XVM",decimals:18},4999:{name:"BlackFort Token",symbol:"BXN",decimals:18},5e3:{name:"Mantle",symbol:"MNT",decimals:18},5001:{name:"Testnet Mantle",symbol:"MNT",decimals:18},5002:{name:"UNIT",symbol:"UNIT",decimals:18},5003:{name:"Sepolia Mantle",symbol:"MNT",decimals:18},5005:{name:"UNIT",symbol:"UNIT",decimals:18},5039:{name:"ONIGIRI",symbol:"ONGR",decimals:18},5040:{name:"ONIGIRI",symbol:"ONGR",decimals:18},5051:{name:"Ether",symbol:"ETH",decimals:18},5100:{name:"S-Ether",symbol:"ETH",decimals:18},5101:{name:"Ether",symbol:"ETH",decimals:18},5102:{name:"ETH",symbol:"ETH",decimals:18},5103:{name:"ETH",symbol:"ETH",decimals:18},5104:{name:"ETH",symbol:"ETH",decimals:18},5105:{name:"ETH",symbol:"ETH",decimals:18},5106:{name:"ETH",symbol:"ETH",decimals:18},5112:{name:"Ether",symbol:"ETH",decimals:18},5151:{name:"ZKME",symbol:"ZKME",decimals:18},5165:{name:"FTN",symbol:"FTN",decimals:18},5169:{name:"Service Unit Token",symbol:"SU",decimals:18},5177:{name:"TLChain Network",symbol:"TLC",decimals:18},5197:{name:"EraSwap",symbol:"ES",decimals:18},5234:{name:"eHMND",symbol:"eHMND",decimals:18},5315:{name:"UZMI",symbol:"UZMI",decimals:18},5317:{name:"TestBSC",symbol:"tBNB",decimals:18},5321:{name:"ITX",symbol:"ITX",decimals:18},5333:{name:"Netsbo",symbol:"NETS",decimals:18},5353:{name:"Tritanium Native Token",symbol:"tTRN",decimals:18},5372:{name:"Setl",symbol:"SETL",decimals:18},5424:{name:"EDEXA",symbol:"EDX",decimals:18},5439:{name:"EGAX",symbol:"EGAX",decimals:18},5522:{name:"VEX EVM TESTNET",symbol:"VEX",decimals:18},5551:{name:"Ether",symbol:"ETH",decimals:18},5555:{name:"Oasys",symbol:"OAS",decimals:18},5611:{name:"BNB Chain Native Token",symbol:"tBNB",decimals:18},5615:{name:"tARC",symbol:"tARC",decimals:18},5616:{name:"Test Arct",symbol:"tARCT",decimals:18},5656:{name:"QIE Blockchain",symbol:"QIE",decimals:18},5675:{name:"Test Filecoin",symbol:"tFIL",decimals:18},5678:{name:"TANGO",symbol:"TANGO",decimals:18},5700:{name:"Testnet Syscoin",symbol:"tSYS",decimals:18},5729:{name:"Hik Token",symbol:"HIK",decimals:18},5758:{name:"SatoshiChain Coin",symbol:"SATS",decimals:18},5777:{name:"Ganache Test Ether",symbol:"ETH",decimals:18},5845:{name:"Tangle",symbol:"TNT",decimals:18},5851:{name:"ONG",symbol:"ONG",decimals:18},5858:{name:"Chang Coin Thailand",symbol:"CTH",decimals:18},5869:{name:"Rubid",symbol:"RBD",decimals:18},6e3:{name:"BounceBit",symbol:"BB",decimals:18},6001:{name:"BounceBit",symbol:"BB",decimals:18},6065:{name:"TRES",symbol:"TRES",decimals:18},6066:{name:"TRES",symbol:"TRES",decimals:18},6102:{name:"CC",symbol:"tCC",decimals:18},6118:{name:"UPTN",symbol:"UPTN",decimals:18},6119:{name:"UPTN",symbol:"UPTN",decimals:18},6283:{name:"LAOS",symbol:"LAOS",decimals:18},6321:{name:"test-EAura",symbol:"eAura",decimals:18},6322:{name:"Aura",symbol:"AURA",decimals:18},6363:{name:"Digit Coin",symbol:"DGC",decimals:18},6398:{name:"ETH",symbol:"ETH",decimals:18},6502:{name:"Peerpay",symbol:"P2P",decimals:18},6550:{name:"Flamma",symbol:"FLA",decimals:18},6552:{name:"Scolcoin",symbol:"SCOL",decimals:18},6565:{name:"FOX Native Token",symbol:"tFOX",decimals:18},6626:{name:"Pixie Chain Native Token",symbol:"PIX",decimals:18},6660:{name:"Latest",symbol:"LATEST",decimals:18},6661:{name:"Cybria",symbol:"CYBA",decimals:18},6666:{name:"Cybria",symbol:"CYBA",decimals:18},6678:{name:"Edge Matrix Chain Token",symbol:"EMC",decimals:18},6688:{name:"Eris",symbol:"ERIS",decimals:18},6699:{name:"OX",symbol:"OX",decimals:18},6701:{name:"PAXB",symbol:"PAXB",decimals:18},6779:{name:"compverse",symbol:"CPV",decimals:18},6789:{name:"Standard in Gold",symbol:"STAND",decimals:18},6805:{name:"Ether",symbol:"ETH",decimals:18},6806:{name:"Sepolia Ether",symbol:"ETH",decimals:18},6868:{name:"POOLS Native Token",symbol:"POOLS",decimals:18},6969:{name:"Tomb",symbol:"TOMB",decimals:18},6999:{name:"PSC",symbol:"PSC",decimals:18},7e3:{name:"Zeta",symbol:"ZETA",decimals:18},7001:{name:"Zeta",symbol:"ZETA",decimals:18},7007:{name:"BST Chain",symbol:"BSTC",decimals:18},7027:{name:"Ella",symbol:"ELLA",decimals:18},7070:{name:"Planq",symbol:"PLQ",decimals:18},7077:{name:"Planq",symbol:"tPLQ",decimals:18},7100:{name:"Dai Stablecoin",symbol:"DAI",decimals:18},7118:{name:"Help The Homeless Coin",symbol:"HTH",decimals:18},7171:{name:"BITROCK",symbol:"BROCK",decimals:18},7222:{name:"NIBI",symbol:"NIBI",decimals:18},7244:{name:"The ZEUS Token",symbol:"ZEUS",decimals:18},7300:{name:"OAS",symbol:"OAS",decimals:18},7331:{name:"KLYNTAR",symbol:"KLY",decimals:18},7332:{name:"Zencash",symbol:"ZEN",decimals:18},7341:{name:"Shyft",symbol:"SHYFT",decimals:18},7484:{name:"Raba",symbol:"RABA",decimals:18},7518:{name:"MEVerse",symbol:"MEV",decimals:18},7560:{name:"Ether",symbol:"ETH",decimals:18},7575:{name:"Testnet ADIL",symbol:"ADIL",decimals:18},7576:{name:"ADIL",symbol:"ADIL",decimals:18},7668:{name:"XRP",symbol:"XRP",decimals:6},7672:{name:"XRP",symbol:"XRP",decimals:6},7700:{name:"Canto",symbol:"CANTO",decimals:18},7701:{name:"Testnet Canto",symbol:"CANTO",decimals:18},7771:{name:"BITROCK",symbol:"BROCK",decimals:18},7774:{name:"GDCC",symbol:"GDCC",decimals:18},7775:{name:"GDCC",symbol:"GDCC",decimals:18},7776:{name:"PandaSea Coin",symbol:"PANDA",decimals:18},7777:{name:"Nano Machines",symbol:"NMAC",decimals:18},7778:{name:"ORENIUM",symbol:"ORE",decimals:18},7798:{name:"USDT Testnet",symbol:"USDT",decimals:18},7860:{name:"MAAL",symbol:"MAAL",decimals:18},7862:{name:"MAAL",symbol:"MAAL",decimals:18},7863:{name:"MAAL",symbol:"MAAL",decimals:18},7878:{name:"Hazlor Test Coin",symbol:"TSCAS",decimals:18},7887:{name:"Ethereum",symbol:"ETH",decimals:18},7895:{name:"ARD",symbol:"tARD",decimals:18},7923:{name:"Dot Blox",symbol:"DTBX",decimals:18},7924:{name:"MO",symbol:"MO",decimals:18},7979:{name:"DOS",symbol:"DOS",decimals:18},8e3:{name:"Tele",symbol:"TELE",decimals:18},8001:{name:"Tele",symbol:"TELE",decimals:18},8008:{name:"Ether",symbol:"ETH",decimals:18},8029:{name:"MDGL Token",symbol:"MDGLT",decimals:18},8047:{name:"Best Of All Time Token",symbol:"BOAT",decimals:18},8054:{name:"Ether",symbol:"ETH",decimals:18},8080:{name:"Shardeum SHM",symbol:"SHM",decimals:18},8081:{name:"Shardeum SHM",symbol:"SHM",decimals:18},8082:{name:"Shardeum SHM",symbol:"SHM",decimals:18},8086:{name:"Bitcoin",symbol:"BTC",decimals:18},8087:{name:"E-Dollar",symbol:"USD",decimals:18},8098:{name:"StreamuX",symbol:"SmuX",decimals:18},8131:{name:"Qitmeer Testnet",symbol:"MEER-T",decimals:18},8132:{name:"Qitmeer Mixnet",symbol:"MEER-M",decimals:18},8133:{name:"Qitmeer Privnet",symbol:"MEER-P",decimals:18},8134:{name:"Amana Mainnet",symbol:"MEER",decimals:18},8135:{name:"Flana Mainnet",symbol:"MEER",decimals:18},8136:{name:"Mizana Mainnet",symbol:"MEER",decimals:18},8181:{name:"Testnet BeOne Chain",symbol:"tBOC",decimals:18},8192:{name:"TQF",symbol:"TQF",decimals:18},8194:{name:"tTQF",symbol:"TTQF",decimals:18},8217:{name:"KAIA",symbol:"KLAY",decimals:18},8227:{name:"FUEL",symbol:"FUEL",decimals:18},8272:{name:"BLOCKTON",symbol:"BTON",decimals:18},8285:{name:"Kortho Test",symbol:"KTO",decimals:11},8329:{name:"Lorenzo stBTC",symbol:"stBTC",decimals:18},8333:{name:"ETH",symbol:"ETH",decimals:18},8387:{name:"Functionally Universal Coin Kind",symbol:"FUCK",decimals:18},8453:{name:"Ether",symbol:"ETH",decimals:18},8545:{name:"Chakra",symbol:"CKR",decimals:18},8654:{name:"Toki",symbol:"TOKI",decimals:18},8655:{name:"Toki",symbol:"TOKI",decimals:18},8668:{name:"Hela HLUSD",symbol:"HLUSD",decimals:18},8723:{name:"TOOL Global",symbol:"OLO",decimals:18},8724:{name:"TOOL Global",symbol:"OLO",decimals:18},8726:{name:"Storagechain",symbol:"STOR",decimals:18},8727:{name:"Storagechain",symbol:"STOR",decimals:18},8732:{name:"Bullions",symbol:"BLN",decimals:18},8738:{name:"Alph Network",symbol:"ALPH",decimals:18},8768:{name:"TMY",symbol:"TMY",decimals:18},8822:{name:"IOTA",symbol:"IOTA",decimals:18},8844:{name:"tHydra",symbol:"tHYDRA",decimals:18},8848:{name:"MARO",symbol:"MARO",decimals:18},8866:{name:"Ether",symbol:"ETH",decimals:18},8869:{name:"LIF3",symbol:"LIF3",decimals:18},8880:{name:"Unique",symbol:"UNQ",decimals:18},8881:{name:"Quartz",symbol:"QTZ",decimals:18},8882:{name:"Opal",symbol:"UNQ",decimals:18},8883:{name:"Quartz",symbol:"QTZ",decimals:18},8886:{name:"Ave Native Token",symbol:"tAVE",decimals:18},8888:{name:"XETA",symbol:"XETA",decimals:18},8889:{name:"VSC",symbol:"VSC",decimals:18},8890:{name:"ORENIUM",symbol:"tORE",decimals:18},8898:{name:"Mammoth Token",symbol:"MMT",decimals:18},8899:{name:"JIBCOIN",symbol:"JBC",decimals:18},8911:{name:"ALG",symbol:"ALG",decimals:18},8912:{name:"ALG",symbol:"ALG",decimals:18},8921:{name:"ALG",symbol:"ALG",decimals:18},8922:{name:"ALG",symbol:"ALG",decimals:18},8989:{name:"Giant Mammoth Coin",symbol:"GMMT",decimals:18},8995:{name:"BERG",symbol:"U+25B3",decimals:18},9e3:{name:"test-Evmos",symbol:"tEVMOS",decimals:18},9001:{name:"Evmos",symbol:"EVMOS",decimals:18},9007:{name:"Shido Testnet Token",symbol:"SHIDO",decimals:18},9008:{name:"Shido Mainnet Token",symbol:"SHIDO",decimals:18},9012:{name:"BerylBit Chain Native Token",symbol:"BRB",decimals:18},9024:{name:"Nexa Testnet Token",symbol:"NEXB",decimals:18},9025:{name:"Nexa Mainnet Token",symbol:"NEXB",decimals:18},9069:{name:"Apex Fusion Token",symbol:"AP3X",decimals:18},9070:{name:"Apex Fusion Token",symbol:"tAP3X",decimals:18},9100:{name:"GN Coin",symbol:"GNC",decimals:18},9223:{name:"Codefin",symbol:"COF",decimals:18},9339:{name:"Dogcoin",symbol:"DOGS",decimals:18},9372:{name:"OAS",symbol:"OAS",decimals:18},9393:{name:"Sepolia Ether",symbol:"ETH",decimals:18},9395:{name:"MTHN",symbol:"MTHN",decimals:18},9496:{name:"Testnet WeaveVM Token",symbol:"tWVM",decimals:18},9527:{name:"Rangers Protocol Gas",symbol:"tRPG",decimals:18},9528:{name:"QET",symbol:"QET",decimals:18},9559:{name:"Neonlink Native Token",symbol:"tNEON",decimals:18},9700:{name:"Oort",symbol:"OORT",decimals:18},9728:{name:"Boba Token",symbol:"BOBA",decimals:18},9768:{name:"MainnetZ",symbol:"NetZ",decimals:18},9779:{name:"Pepe",symbol:"WPEPE",decimals:18},9789:{name:"Tabi",symbol:"TABI",decimals:18},9790:{name:"swth",symbol:"SWTH",decimals:18},9792:{name:"swth",symbol:"SWTH",decimals:18},9797:{name:"OptimusZ7",symbol:"OZ7",decimals:18},9818:{name:"tIMP",symbol:"tIMP",decimals:18},9819:{name:"IMP",symbol:"IMP",decimals:18},9876:{name:"BINARY",symbol:"BNRY",decimals:18},9888:{name:"Dogecoin",symbol:"DOGE",decimals:18},9898:{name:"Larissa",symbol:"LRS",decimals:18},9911:{name:"ESPENTO",symbol:"SPENT",decimals:18},9977:{name:"MIND Coin",symbol:"tMIND",decimals:18},9980:{name:"BNB Chain Native Token",symbol:"BNB",decimals:18},9981:{name:"V2X",symbol:"V2X",decimals:18},9990:{name:"Agung",symbol:"AGNG",decimals:18},9996:{name:"MIND Coin",symbol:"MIND",decimals:18},9997:{name:"Ether",symbol:"ETH",decimals:18},9998:{name:"Ztcer",symbol:"ZTC",decimals:5},9999:{name:"MYN",symbol:"MYN",decimals:18},1e4:{name:"Bitcoin Cash",symbol:"BCH",decimals:18},10001:{name:"Bitcoin Cash Test Token",symbol:"BCHT",decimals:18},10024:{name:"Gon Token",symbol:"GT",decimals:18},10081:{name:"Japan Open Chain Testnet Token",symbol:"JOCT",decimals:18},10086:{name:"Ether",symbol:"ETH",decimals:18},10096:{name:"MNV",symbol:"MNV",decimals:18},10101:{name:"GEN",symbol:"GEN",decimals:18},10200:{name:"Chiado xDAI",symbol:"XDAI",decimals:18},10201:{name:"Power",symbol:"PWR",decimals:18},10222:{name:"GLC",symbol:"GLC",decimals:18},10242:{name:"Arthera",symbol:"AA",decimals:18},10243:{name:"Arthera",symbol:"AA",decimals:18},10248:{name:"0XT",symbol:"0XT",decimals:18},10321:{name:"TAO",symbol:"TAO",decimals:18},10324:{name:"TAO",symbol:"TAO",decimals:18},10395:{name:"Worldland",symbol:"WLC",decimals:18},10507:{name:"NUM Token",symbol:"NUM",decimals:18},10508:{name:"NUM Token",symbol:"NUM",decimals:18},10823:{name:"CryptoCoinPay",symbol:"CCP",decimals:18},10849:{name:"L1",symbol:"L1",decimals:18},10850:{name:"L1 ID",symbol:"L1ID",decimals:18},10946:{name:"Quadrans Coin",symbol:"QDC",decimals:18},10947:{name:"Quadrans Testnet Coin",symbol:"tQDC",decimals:18},11011:{name:"Sepolia Ether",symbol:"ETH",decimals:18},11110:{name:"Astra",symbol:"ASA",decimals:18},11111:{name:"WAGMI",symbol:"WGM",decimals:18},11115:{name:"test-Astra",symbol:"tASA",decimals:18},11119:{name:"HashBit Native Token",symbol:"HBIT",decimals:18},11124:{name:"ETH",symbol:"ETH",decimals:18},11221:{name:"Shine",symbol:"SC20",decimals:18},11227:{name:"JIRI",symbol:"TZW",decimals:18},11235:{name:"Islamic Coin",symbol:"ISLM",decimals:18},11437:{name:"Shyft Test Token",symbol:"SHYFTT",decimals:18},11501:{name:"BTC",symbol:"BTC",decimals:18},11503:{name:"BTC",symbol:"BTC",decimals:18},11521:{name:"SATS",symbol:"SATS",decimals:18},11612:{name:"Sardis",symbol:"SRDX",decimals:18},11822:{name:"ART",symbol:"ART",decimals:18},11891:{name:"Arianee",symbol:"ARIA20",decimals:18},12001:{name:"Ether",symbol:"ETH",decimals:18},12009:{name:"SatoshiChain Coin",symbol:"SATS",decimals:18},12020:{name:"Aternos",symbol:"ATR",decimals:18},12051:{name:"ZERO",symbol:"tZERO",decimals:18},12052:{name:"ZERO",symbol:"ZERO",decimals:18},12123:{name:"BRC Chain mainnet native token",symbol:"BRC",decimals:18},12306:{name:"FIBONACCI UTILITY TOKEN",symbol:"FIBO",decimals:18},12321:{name:"Blg",symbol:"BLG",decimals:18},12324:{name:"Ether",symbol:"ETH",decimals:18},12325:{name:"Ether",symbol:"ETH",decimals:18},12345:{name:"FITFI",symbol:"FITFI",decimals:18},12553:{name:"RSS3",symbol:"RSS3",decimals:18},12715:{name:"Rikeza",symbol:"RIK",decimals:18},12781:{name:"Playdapp",symbol:"PDA",decimals:18},12890:{name:"Quantum Chain",symbol:"tQNET",decimals:18},12898:{name:"BTLT Token",symbol:"BTLT",decimals:18},13e3:{name:"ECG",symbol:"ECG",decimals:18},13308:{name:"Credit",symbol:"CREDIT",decimals:18},13337:{name:"Beam",symbol:"BEAM",decimals:18},13371:{name:"IMX",symbol:"IMX",decimals:18},13381:{name:"Phoenix",symbol:"PHX",decimals:18},13396:{name:"Masa Token",symbol:"MASA",decimals:18},13473:{name:"Test IMX",symbol:"tIMX",decimals:18},13505:{name:"Sepolia Gravity",symbol:"G",decimals:18},13600:{name:"Kronobit",symbol:"KNB",decimals:18},13812:{name:"Susono",symbol:"OPN",decimals:18},14e3:{name:"ECG",symbol:"ECG",decimals:18},14324:{name:"Evolve",symbol:"EVO",decimals:18},14333:{name:"Vitruveo Test Coin",symbol:"tVTRU",decimals:18},14801:{name:"DAT",symbol:"DAT",decimals:18},14853:{name:"eHMND",symbol:"eHMND",decimals:18},15003:{name:"Dev IMX",symbol:"dIMX",decimals:18},15257:{name:"Poodl",symbol:"POODL",decimals:18},15259:{name:"Poodl",symbol:"POODL",decimals:18},15430:{name:"KYMTC",symbol:"KYMTC",decimals:18},15551:{name:"LOOP",symbol:"LOOP",decimals:18},15555:{name:"Trust EVM",symbol:"EVM",decimals:18},15557:{name:"EOS",symbol:"EOS",decimals:18},16e3:{name:"MetaDot Token",symbol:"MTT",decimals:18},16001:{name:"MetaDot Token TestNet",symbol:"MTTest",decimals:18},16116:{name:"Oasys",symbol:"OAS",decimals:18},16166:{name:"Cypherium",symbol:"CPH",decimals:18},16180:{name:"PLYR",symbol:"PLYR",decimals:18},16350:{name:"Testnet INC",symbol:"INC",decimals:18},16481:{name:"Pivotal Plus",symbol:"PLUS",decimals:18},16507:{name:"Genesys",symbol:"GSYS",decimals:18},16600:{name:"A0GI",symbol:"A0GI",decimals:18},16688:{name:"Eris",symbol:"ERIS",decimals:18},16718:{name:"Amber",symbol:"AMB",decimals:18},16888:{name:"tIvar",symbol:"tIVAR",decimals:18},17e3:{name:"Testnet ETH",symbol:"ETH",decimals:18},17069:{name:"Ether",symbol:"ETH",decimals:18},17071:{name:"OnchainPoints.xyz",symbol:"POP",decimals:18},17117:{name:"Oasys",symbol:"OAS",decimals:18},17171:{name:"G8Chain",symbol:"G8C",decimals:18},17172:{name:"Eclipse",symbol:"ECLP",decimals:16},17180:{name:"Palette Token",symbol:"PLT",decimals:18},17217:{name:"KONET",symbol:"KONET",decimals:18},17777:{name:"EOS",symbol:"EOS",decimals:18},18e3:{name:"ZKST",symbol:"ZKST",decimals:18},18122:{name:"STN",symbol:"STN",decimals:18},18159:{name:"Proof Of Memes",symbol:"POM",decimals:18},18181:{name:"G8Coin",symbol:"G8C",decimals:18},18233:{name:"unreal Ether",symbol:"reETH",decimals:18},18686:{name:"MXC zkEVM Moonchain",symbol:"MXC",decimals:18},18888:{name:"Titan tkx",symbol:"TKX",decimals:18},18889:{name:"Titan tkx",symbol:"TKX",decimals:18},19011:{name:"OAS",symbol:"OAS",decimals:18},19077:{name:"BCX",symbol:"BCX",decimals:18},19191:{name:"BCX",symbol:"BCX",decimals:18},19224:{name:"Decentraconnect Social",symbol:"DCSM",decimals:18},19527:{name:"Magnet Network",symbol:"DOT",decimals:18},19600:{name:"LBRY Credits",symbol:"LBC",decimals:8},19845:{name:"BTCIX Network",symbol:"BTCIX",decimals:18},20001:{name:"EthereumPoW",symbol:"ETHW",decimals:18},20041:{name:"Niza Global",symbol:"NIZA",decimals:18},20073:{name:"Niza Global",symbol:"NIZA",decimals:18},20729:{name:"Callisto",symbol:"CLO",decimals:18},20736:{name:"Hooked P2",symbol:"hP2",decimals:18},20765:{name:"Jono11 Token",symbol:"JONO",decimals:18},21004:{name:"C4EI",symbol:"C4EI",decimals:18},21133:{name:"AAH",symbol:"AAH",decimals:18},21223:{name:"DCP",symbol:"DCP",decimals:18},21224:{name:"DCP",symbol:"DCP",decimals:18},21337:{name:"CPAY",symbol:"CPAY",decimals:18},21363:{name:"Lestnet Ether",symbol:"LETH",decimals:18},21816:{name:"omChain",symbol:"OMC",decimals:18},21912:{name:"Origin NFT",symbol:"ONF",decimals:18},22023:{name:"shuffle",symbol:"SFL",decimals:18},22040:{name:"Amber",symbol:"AMB",decimals:18},22222:{name:"Zebec",symbol:"ZBC",decimals:18},22324:{name:"GoldX",symbol:"GOLDX",decimals:18},22776:{name:"MAPO",symbol:"MAPO",decimals:18},23006:{name:"Antofy",symbol:"ABN",decimals:18},23118:{name:"IDE",symbol:"IDE",decimals:18},23294:{name:"Sapphire Rose",symbol:"ROSE",decimals:18},23295:{name:"Sapphire Test Rose",symbol:"TEST",decimals:18},23451:{name:"DreyerX",symbol:"DRX",decimals:18},23452:{name:"DreyerX",symbol:"DRX",decimals:18},23888:{name:"Ether",symbol:"ETH",decimals:18},24076:{name:"KYMTC",symbol:"KYMTC",decimals:18},24484:{name:"Webchain Ether",symbol:"WEB",decimals:18},24734:{name:"MintMe.com Coin",symbol:"MINTME",decimals:18},25186:{name:"LiquidLayer",symbol:"LILA",decimals:18},25839:{name:"AlveyCoin Testnet",symbol:"tALV",decimals:18},25888:{name:"GOLDT",symbol:"GOLDT",decimals:18},25925:{name:"Bitkub Coin",symbol:"tKUB",decimals:18},26026:{name:"Ferrum",symbol:"tFRM",decimals:18},26482:{name:"DUCX",symbol:"DUCX",decimals:18},26483:{name:"DUCX",symbol:"DUCX",decimals:18},26600:{name:"Hertz",symbol:"HTZ",decimals:18},26863:{name:"OAC",symbol:"OAC",decimals:18},27181:{name:"KLAOS",symbol:"KLAOS",decimals:18},27483:{name:"Sepolia Ether",symbol:"ETH",decimals:18},27827:{name:"ZERO",symbol:"ZERO",decimals:18},28516:{name:"Ether",symbol:"ETH",decimals:18},28518:{name:"Ether",symbol:"ETH",decimals:18},28528:{name:"Goerli Ether",symbol:"ETH",decimals:18},28882:{name:"Ether",symbol:"ETH",decimals:18},29112:{name:"TOPIA",symbol:"TOPIA",decimals:18},29223:{name:"Nexa",symbol:"NEXA",decimals:18},29536:{name:"KaiChain Testnet Native Token",symbol:"KEC",decimals:18},29548:{name:"OAS",symbol:"OAS",decimals:18},30067:{name:"ECE",symbol:"ECE",decimals:18},30088:{name:"Miyou",symbol:"MY",decimals:18},30103:{name:"Canxium",symbol:"CAU",decimals:18},30730:{name:"Move",symbol:"MOVE",decimals:18},30731:{name:"Move",symbol:"MOVE",decimals:18},30732:{name:"Move",symbol:"MOVE",decimals:18},31102:{name:"Ethersocial Network Ether",symbol:"ESN",decimals:18},31223:{name:"CloudTx",symbol:"CLD",decimals:18},31224:{name:"CloudTx",symbol:"CLD",decimals:18},31337:{name:"GoChain Coin",symbol:"GO",decimals:18},31414:{name:"MTHN Testnet",symbol:"MTHN",decimals:18},31753:{name:"Intdestcoin",symbol:"INTD",decimals:18},31754:{name:"Intdestcoin Testnet",symbol:"INTD",decimals:18},32001:{name:"W3Gamez Testnet Ether",symbol:"ETH",decimals:18},32382:{name:"SANR",symbol:"SANR",decimals:18},32520:{name:"Bitrise Token",symbol:"Brise",decimals:18},32659:{name:"Fusion",symbol:"FSN",decimals:18},32769:{name:"Zilliqa",symbol:"ZIL",decimals:18},32990:{name:"Zilliqa",symbol:"ZIL",decimals:18},33033:{name:"Entangle",symbol:"NGL",decimals:18},33101:{name:"Zilliqa",symbol:"ZIL",decimals:18},33103:{name:"Zilliqa",symbol:"ZIL",decimals:18},33111:{name:"ApeCoin",symbol:"APE",decimals:18},33133:{name:"Entangle",symbol:"NGL",decimals:18},33210:{name:"XCLOUD",symbol:"XCLOUD",decimals:18},33333:{name:"Aves",symbol:"AVS",decimals:18},33385:{name:"Zilliqa",symbol:"ZIL",decimals:18},33401:{name:"Sling",symbol:"SLING",decimals:18},33469:{name:"Zilliqa",symbol:"ZIL",decimals:18},33979:{name:"Ether",symbol:"ETH",decimals:18},34443:{name:"Ether",symbol:"ETH",decimals:18},34504:{name:"The ZEUS Token",symbol:"ZEUS",decimals:18},35011:{name:"TARO Coin",symbol:"taro",decimals:18},35441:{name:"QGOV",symbol:"QGOV",decimals:18},35443:{name:"Q token",symbol:"Q",decimals:18},38400:{name:"Rangers Protocol Gas",symbol:"cmRPG",decimals:18},38401:{name:"Rangers Protocol Gas",symbol:"ttRPG",decimals:18},39656:{name:"Primal Network",symbol:"PRM",decimals:18},39797:{name:"Energi",symbol:"NRG",decimals:18},39815:{name:"OHO",symbol:"OHO",decimals:18},41455:{name:"Aleph Zero",symbol:"AZERO",decimals:18},41500:{name:"Oxyn Gas",symbol:"OXYN",decimals:18},42069:{name:"pegglecoin",symbol:"peggle",decimals:18},42072:{name:"Agent",symbol:"AGENT",decimals:18},42161:{name:"Ether",symbol:"ETH",decimals:18},42170:{name:"Ether",symbol:"ETH",decimals:18},42220:{name:"CELO",symbol:"CELO",decimals:18},42261:{name:"Emerald Rose",symbol:"ROSE",decimals:18},42262:{name:"Emerald Rose",symbol:"ROSE",decimals:18},42355:{name:"GoldX",symbol:"GOLDX",decimals:18},42421:{name:"Real World Asset",symbol:"RWA",decimals:18},42766:{name:"USDC Token",symbol:"USDC",decimals:18},42793:{name:"tez",symbol:"XTZ",decimals:18},42801:{name:"OAS",symbol:"OAS",decimals:18},42888:{name:"Ether",symbol:"ETH",decimals:18},43110:{name:"Athereum Ether",symbol:"ATH",decimals:18},43111:{name:"Ether",symbol:"ETH",decimals:18},43113:{name:"Avalanche",symbol:"AVAX",decimals:18},43114:{name:"Avalanche",symbol:"AVAX",decimals:18},43851:{name:"USDC Token",symbol:"USDC",decimals:18},44444:{name:"FREN",symbol:"FREN",decimals:18},44445:{name:"Quantum",symbol:"QTM",decimals:18},44787:{name:"CELO",symbol:"CELO",decimals:18},45e3:{name:"TXL",symbol:"TXL",decimals:18},45454:{name:"SWP",symbol:"SWP",decimals:18},45510:{name:"Deelance",symbol:"DEE",decimals:18},45513:{name:"Bless",symbol:"BLESS",decimals:18},46688:{name:"Testnet Fusion",symbol:"T-FSN",decimals:18},47763:{name:"Gas",symbol:"GAS",decimals:18},47803:{name:"BAX",symbol:"BAX",decimals:18},47805:{name:"REI",symbol:"REI",decimals:18},48795:{name:"FUEL",symbol:"FUEL",decimals:18},48899:{name:"ETH",symbol:"ETH",decimals:18},48900:{name:"ETH",symbol:"ETH",decimals:18},49049:{name:"WIRE",symbol:"WIRE",decimals:18},49088:{name:"Bifrost",symbol:"BFC",decimals:18},49321:{name:"GUN",symbol:"GUN",decimals:18},49797:{name:"Energi",symbol:"NRG",decimals:18},50001:{name:"Ether",symbol:"ETH",decimals:18},50005:{name:"OAS",symbol:"OAS",decimals:18},50006:{name:"OAS",symbol:"OAS",decimals:18},50021:{name:"GCD",symbol:"GCD",decimals:18},51178:{name:"Lumoz Test Token",symbol:"MOZ",decimals:18},51712:{name:"Sardis",symbol:"SRDX",decimals:18},52014:{name:"Electroneum",symbol:"ETN",decimals:18},53277:{name:"DOID",symbol:"DOID",decimals:18},53302:{name:"Sepolia Ether",symbol:"ETH",decimals:18},53457:{name:"DODO",symbol:"DODO",decimals:18},53935:{name:"Jewel",symbol:"JEWEL",decimals:18},54211:{name:"Islamic Coin",symbol:"ISLMT",decimals:18},54321:{name:"Toroe",symbol:"TOROE",decimals:18},55004:{name:"Ether",symbol:"ETH",decimals:18},55551:{name:"Photon",symbol:"PTON",decimals:18},55555:{name:"Rei",symbol:"REI",decimals:18},55556:{name:"tRei",symbol:"tREI",decimals:18},55614:{name:"Flamma",symbol:"FLA",decimals:18},56026:{name:"ETH",symbol:"ETH",decimals:18},56288:{name:"Boba Token",symbol:"BOBA",decimals:18},56400:{name:"ZERO",symbol:"ZERO",decimals:18},56789:{name:"Nova",symbol:"NOVA",decimals:18},56797:{name:"DOID",symbol:"DOID",decimals:18},57e3:{name:"Testnet Syscoin",symbol:"TSYS",decimals:18},57451:{name:"COINSEC",symbol:"SEC",decimals:18},58008:{name:"Sepolia Ether",symbol:"ETH",decimals:18},59140:{name:"Linea Ether",symbol:"ETH",decimals:18},59141:{name:"Linea Ether",symbol:"ETH",decimals:18},59144:{name:"Linea Ether",symbol:"ETH",decimals:18},59902:{name:"tMetis",symbol:"tMETIS",decimals:18},59971:{name:"GenesysCode",symbol:"GCODE",decimals:18},6e4:{name:"TKM",symbol:"TKM",decimals:18},60001:{name:"TKM",symbol:"TKM",decimals:18},60002:{name:"TKM",symbol:"TKM",decimals:18},60103:{name:"TKM",symbol:"TKM",decimals:18},60808:{name:"Ether",symbol:"ETH",decimals:18},61022:{name:"BTC",symbol:"BTC",decimals:18},61406:{name:"KaiChain Native Token",symbol:"KEC",decimals:18},61800:{name:"Axelium",symbol:"AIUM",decimals:18},61803:{name:"EGAZ",symbol:"EGAZ",decimals:18},61916:{name:"DoKEN",symbol:"DKN",decimals:18},62049:{name:"Ether",symbol:"ETH",decimals:18},62050:{name:"Ether",symbol:"ETH",decimals:18},62298:{name:"Citrea BTC",symbol:"cBTC",decimals:18},62320:{name:"CELO",symbol:"CELO",decimals:18},62621:{name:"MultiVAC",symbol:"MTV",decimals:18},62831:{name:"PLYR",symbol:"PLYR",decimals:18},62850:{name:"SIGMA",symbol:"SIGMA",decimals:18},63e3:{name:"eCredits",symbol:"ECS",decimals:18},63001:{name:"eCredits",symbol:"ECS",decimals:18},65349:{name:"CRATD2C",symbol:"CRAT",decimals:18},65357:{name:"Vecno",symbol:"VE",decimals:18},65450:{name:"Scolcoin",symbol:"SCOL",decimals:18},65536:{name:"ATA",symbol:"ATA",decimals:18},66988:{name:"Janus",symbol:"JNS",decimals:18},67588:{name:"Cosmic Chain",symbol:"COSMIC",decimals:18},68770:{name:"OAS",symbol:"OAS",decimals:18},69420:{name:"Condrieu Testnet Ether",symbol:"CTE",decimals:18},7e4:{name:"TKM",symbol:"TKM",decimals:18},70001:{name:"TKM",symbol:"TKM",decimals:18},70002:{name:"TKM",symbol:"TKM",decimals:18},70103:{name:"TKM",symbol:"TKM",decimals:18},70700:{name:"Ether",symbol:"ETH",decimals:18},71111:{name:"GuapcoinX",symbol:"GuapX",decimals:18},71393:{name:"CKB",symbol:"CKB",decimals:8},71401:{name:"pCKB",symbol:"pCKB",decimals:18},71402:{name:"pCKB",symbol:"pCKB",decimals:18},72778:{name:"Caga",symbol:"CAGA",decimals:18},72992:{name:"Groc",symbol:"GROC",decimals:18},73114:{name:"ICB Testnet Token",symbol:"ICBT",decimals:18},73115:{name:"ICB Native Token",symbol:"ICBX",decimals:18},73799:{name:"Volta Token",symbol:"VT",decimals:18},73927:{name:"Ether",symbol:"ETH",decimals:18},75e3:{name:"Ether",symbol:"RESIN",decimals:18},75512:{name:"OAS",symbol:"OAS",decimals:18},75513:{name:"OAS",symbol:"OAS",decimals:18},77001:{name:"BORA",symbol:"BORA",decimals:18},77238:{name:"Foundry Chain Testnet",symbol:"tFNC",decimals:18},77612:{name:"VNT",symbol:"VNT",decimals:18},77677:{name:"Ether",symbol:"ETH",decimals:18},77777:{name:"Toroe",symbol:"TOROE",decimals:18},78110:{name:"Firenze Ether",symbol:"FIN",decimals:18},78281:{name:"Dragonfly",symbol:"DFLY",decimals:18},78430:{name:"AMP",symbol:"AMP",decimals:18},78431:{name:"BLT",symbol:"BLT",decimals:18},78432:{name:"CON",symbol:"CON",decimals:18},78600:{name:"Vanguard Vanry",symbol:"VANRY",decimals:18},79879:{name:"Standard in Gold",symbol:"STAND",decimals:18},80001:{name:"MATIC",symbol:"MATIC",decimals:18},80002:{name:"MATIC",symbol:"MATIC",decimals:18},80008:{name:"Ether",symbol:"ETH",decimals:18},80084:{name:"BERA Token",symbol:"BERA",decimals:18},80085:{name:"BERA Token",symbol:"BERA",decimals:18},80096:{name:"Hizoco",symbol:"HZC",decimals:18},81041:{name:"NRK",symbol:"NRK",decimals:18},81341:{name:"Amana Testnet",symbol:"MEER-T",decimals:18},81342:{name:"Amana Mixnet",symbol:"MEER-M",decimals:18},81343:{name:"Amana Privnet",symbol:"MEER-P",decimals:18},81351:{name:"Flana Testnet",symbol:"MEER-T",decimals:18},81352:{name:"Flana Mixnet",symbol:"MEER-M",decimals:18},81353:{name:"Flana Privnet",symbol:"MEER-P",decimals:18},81361:{name:"Mizana Testnet",symbol:"MEER-T",decimals:18},81362:{name:"Mizana Mixnet",symbol:"MEER-M",decimals:18},81363:{name:"Mizana Privnet",symbol:"MEER-P",decimals:18},81457:{name:"Ether",symbol:"ETH",decimals:18},81720:{name:"Quantum Chain",symbol:"QNET",decimals:18},82459:{name:"Service Unit Token",symbol:"SU",decimals:18},83144:{name:"KICK Testnet Token",symbol:"KICK",decimals:18},83278:{name:"Esa",symbol:"Esa",decimals:18},83872:{name:"Zedxion",symbol:"ZEDX",decimals:9},84531:{name:"Goerli Ether",symbol:"ETH",decimals:18},84532:{name:"Sepolia Ether",symbol:"ETH",decimals:18},84886:{name:"Aerie",symbol:"AER",decimals:18},85449:{name:"Cyber Trust",symbol:"CYBER",decimals:18},88002:{name:"Zebec Test Token",symbol:"tZBC",decimals:18},88559:{name:"InoAi",symbol:"INO",decimals:18},88800:{name:"ZKAS",symbol:"ZKAS",decimals:18},88817:{name:"UNIT0",symbol:"UNIT0",decimals:18},88819:{name:"UNIT0",symbol:"UNIT0",decimals:18},88882:{name:"Chiliz",symbol:"CHZ",decimals:18},88888:{name:"Chiliz",symbol:"CHZ",decimals:18},90001:{name:"Function X",symbol:"FX",decimals:18},90210:{name:"Beverly Hills Testnet Ether",symbol:"BVE",decimals:18},90354:{name:"Ethereum",symbol:"ETH",decimals:18},91002:{name:"Nautilus Zebec Testnet Tokens",symbol:"tZBC",decimals:18},91120:{name:"DAP",symbol:"DAP",decimals:18},91715:{name:"BNB Chain Native Token",symbol:"tcBNB",decimals:18},92001:{name:"test-Lamb",symbol:"LAMB",decimals:18},93572:{name:"LiquidLayer Testnet",symbol:"LILA",decimals:18},93747:{name:"SVM",symbol:"SVM",decimals:18},96970:{name:"Mantis",symbol:"MANTIS",decimals:18},97435:{name:"Sling Test",symbol:"SLINGT",decimals:18},97531:{name:"GREEN",symbol:"GREEN",decimals:18},97970:{name:"OptimusZ7",symbol:"OZ7",decimals:18},98881:{name:"Ether",symbol:"ETH",decimals:18},99099:{name:"eLiberty",symbol:"$EL",decimals:18},99876:{name:"Edge Matrix Chain Token",symbol:"EMC",decimals:18},99998:{name:"UBC",symbol:"UBC",decimals:18},99999:{name:"UBC",symbol:"UBC",decimals:18},1e5:{name:"QKC",symbol:"QKC",decimals:18},100001:{name:"QKC",symbol:"QKC",decimals:18},100002:{name:"QKC",symbol:"QKC",decimals:18},100003:{name:"QKC",symbol:"QKC",decimals:18},100004:{name:"QKC",symbol:"QKC",decimals:18},100005:{name:"QKC",symbol:"QKC",decimals:18},100006:{name:"QKC",symbol:"QKC",decimals:18},100007:{name:"QKC",symbol:"QKC",decimals:18},100008:{name:"QKC",symbol:"QKC",decimals:18},100009:{name:"VeChain",symbol:"VET",decimals:18},100010:{name:"VeChain",symbol:"VET",decimals:18},100011:{name:"QKC",symbol:"QKC",decimals:18},101010:{name:"FREE",symbol:"FREE",decimals:18},102031:{name:"Testnet CTC",symbol:"tCTC",decimals:18},103090:{name:"CRFI",symbol:"◈",decimals:18},103454:{name:"Masa Token",symbol:"MASA",decimals:18},104566:{name:"KaspaClassic",symbol:"CAS",decimals:18},105105:{name:"Stratis",symbol:"STRAX",decimals:18},108801:{name:"Brother",symbol:"BRO",decimals:18},11e4:{name:"QKC",symbol:"QKC",decimals:18},110001:{name:"QKC",symbol:"QKC",decimals:18},110002:{name:"QKC",symbol:"QKC",decimals:18},110003:{name:"QKC",symbol:"QKC",decimals:18},110004:{name:"QKC",symbol:"QKC",decimals:18},110005:{name:"QKC",symbol:"QKC",decimals:18},110006:{name:"QKC",symbol:"QKC",decimals:18},110007:{name:"QKC",symbol:"QKC",decimals:18},110008:{name:"QKC",symbol:"QKC",decimals:18},110011:{name:"QKC",symbol:"QKC",decimals:18},110110:{name:"Mars Credit",symbol:"MARS",decimals:18},111e3:{name:"TestSIBR",symbol:"SIBR",decimals:18},111111:{name:"Siberium",symbol:"SIBR",decimals:18},111188:{name:"re.al Ether",symbol:"reETH",decimals:18},112358:{name:"Metao",symbol:"METAO",decimals:18},119139:{name:"DAP",symbol:"DAP",decimals:18},123321:{name:"GEM",symbol:"GEM",decimals:18},123456:{name:"Devnet ADIL",symbol:"ADIL",decimals:18},128123:{name:"tez",symbol:"XTZ",decimals:18},131313:{name:"DIONE",symbol:"DIONE",decimals:18},131419:{name:"ETND",symbol:"ETND",decimals:18},132902:{name:"Ether",symbol:"ETH",decimals:18},141319:{name:"MagApe",symbol:"MAG",decimals:18},142857:{name:"ict",symbol:"ict",decimals:18},161212:{name:"Play",symbol:"PLAY",decimals:18},165279:{name:"Eclat",symbol:"ECLAT",decimals:18},167e3:{name:"Ether",symbol:"ETH",decimals:18},167008:{name:"Ether",symbol:"ETH",decimals:18},167009:{name:"Ether",symbol:"ETH",decimals:18},175177:{name:"Test LIT",symbol:"tstLIT",decimals:18},175188:{name:"Test LPX",symbol:"tstLPX",decimals:18},188710:{name:"Bitica Coin",symbol:"BDCC",decimals:18},188881:{name:"Condor Native Token",symbol:"CONDOR",decimals:18},192940:{name:"FHE",symbol:"FHE",decimals:18},199991:{name:"MAZZE Testnet",symbol:"MAZZE",decimals:18},2e5:{name:"FAI",symbol:"FAI",decimals:18},200101:{name:"milkTAda",symbol:"mTAda",decimals:18},200202:{name:"milkTAlgo",symbol:"mTAlgo",decimals:18},200625:{name:"Akroma Ether",symbol:"AKA",decimals:18},200810:{name:"BTC",symbol:"BTC",decimals:18},200901:{name:"BTC",symbol:"BTC",decimals:18},201018:{name:"ATP",symbol:"atp",decimals:18},201030:{name:"ATP",symbol:"atp",decimals:18},201804:{name:"Mythos",symbol:"MYTH",decimals:18},202020:{name:"Decimal",symbol:"tDEL",decimals:18},202212:{name:"XN",symbol:"XN",decimals:18},202401:{name:"ETH",symbol:"ETH",decimals:18},202624:{name:"Twala Coin",symbol:"TWL",decimals:18},204005:{name:"XN",symbol:"XN",decimals:18},205205:{name:"Auroria Stratis",symbol:"tSTRAX",decimals:18},210049:{name:"GitAGI",symbol:"tGAGI",decimals:18},210425:{name:"LAT",symbol:"lat",decimals:18},220315:{name:"Master Bank",symbol:"MAS",decimals:18},221230:{name:"Reap",symbol:"REAP",decimals:18},221231:{name:"test-Reap",symbol:"tREAP",decimals:18},222222:{name:"Wrapped ETH",symbol:"WETH",decimals:18},222555:{name:"DeepL",symbol:"DEEPL",decimals:18},222666:{name:"DeepL",symbol:"DEEPL",decimals:18},224168:{name:"Taf ECO Chain Mainnet",symbol:"TAFECO",decimals:18},224422:{name:"CONET Sebolia",symbol:"CONET",decimals:18},224433:{name:"CONET Holesky",symbol:"CONET",decimals:18},229772:{name:"AbyssETH",symbol:"aETH",decimals:18},230315:{name:"HashKey Token",symbol:"tHSK",decimals:18},234666:{name:"HAYMO",symbol:"HYM",decimals:18},240515:{name:"BTC",symbol:"BTC",decimals:18},246529:{name:"ARTIS sigma1 Ether",symbol:"ATS",decimals:18},246785:{name:"ARTIS tau1 Ether",symbol:"tATS",decimals:18},247253:{name:"OAS",symbol:"OAS",decimals:18},256256:{name:"Caduceus Token",symbol:"CMP",decimals:18},262371:{name:"Eclat Testnet",symbol:"ECLAT",decimals:18},266256:{name:"Gear Zero Network Native Token",symbol:"GZN",decimals:18},271271:{name:"EgonCoin",symbol:"EGON",decimals:18},281121:{name:"SoChain",symbol:"$OC",decimals:18},282828:{name:"Sepolia Ether",symbol:"ETH",decimals:18},292003:{name:"CIP",symbol:"CIP",decimals:18},309075:{name:"OWCT",symbol:"OWCT",decimals:18},313313:{name:"SAHARA",symbol:"SAH",decimals:18},314159:{name:"testnet filecoin",symbol:"tFIL",decimals:18},322202:{name:"PAREX",symbol:"PRX",decimals:18},323213:{name:"Bloom",symbol:"BGBC",decimals:18},327126:{name:"WABA",symbol:"WABA",decimals:18},328527:{name:"Ether",symbol:"ETH",decimals:18},330844:{name:"TTcoin",symbol:"TC",decimals:18},333313:{name:"Bloom",symbol:"BGBC",decimals:18},333331:{name:"AvesT",symbol:"AVST",decimals:18},333333:{name:"USNT",symbol:"USNT",decimals:18},333666:{name:"tOONE",symbol:"tOONE",decimals:18},333777:{name:"tOONE",symbol:"tOONE",decimals:18},333888:{name:"tPolis",symbol:"tPOLIS",decimals:18},333999:{name:"Polis",symbol:"POLIS",decimals:18},336655:{name:"UBTC",symbol:"UBTC",decimals:18},336666:{name:"UBTC",symbol:"UBTC",decimals:18},355110:{name:"Bitfinity Token",symbol:"BFT",decimals:18},355113:{name:"Bitfinity Token",symbol:"BFT",decimals:18},360890:{name:"vTFUEL",symbol:"vTFUEL",decimals:18},363636:{name:"Digit Coin",symbol:"DGC",decimals:18},373737:{name:"HAP",symbol:"HAP",decimals:18},381931:{name:"Metal",symbol:"METAL",decimals:18},381932:{name:"Metal",symbol:"METAL",decimals:18},404040:{name:"Tipboxcoin",symbol:"TPBX",decimals:18},413413:{name:"AIE",symbol:"AIE",decimals:18},420420:{name:"KEK",symbol:"KEK",decimals:18},420666:{name:"tKEK",symbol:"tKEK",decimals:18},420692:{name:"Alterium ETH",symbol:"AltETH",decimals:18},421611:{name:"Arbitrum Rinkeby Ether",symbol:"ETH",decimals:18},421613:{name:"Arbitrum Goerli Ether",symbol:"AGOR",decimals:18},421614:{name:"Sepolia Ether",symbol:"ETH",decimals:18},424242:{name:"FTN",symbol:"FTN",decimals:18},431140:{name:"Avalanche",symbol:"AVAX",decimals:18},432201:{name:"Dexalot",symbol:"ALOT",decimals:18},432204:{name:"Dexalot",symbol:"ALOT",decimals:18},444444:{name:"Sepolia Ether",symbol:"ETH",decimals:18},444900:{name:"Weelink Chain Token",symbol:"tWLK",decimals:18},471100:{name:"Sepolia Ether",symbol:"ETH",decimals:18},473861:{name:"Ultra Pro",symbol:"UPRO",decimals:18},474142:{name:"OpenCoin",symbol:"OPC",decimals:10},486487:{name:"Gobbl Token",symbol:"GOBBL",decimals:18},49e4:{name:"Test Auto Coin",symbol:"TATC",decimals:18},504441:{name:"Playdapp",symbol:"PDA",decimals:18},512512:{name:"Caduceus Testnet Token",symbol:"CMP",decimals:18},513100:{name:"DisChain",symbol:"DIS",decimals:18},526916:{name:"DO",symbol:"DCT",decimals:18},534351:{name:"Ether",symbol:"ETH",decimals:18},534352:{name:"Ether",symbol:"ETH",decimals:18},534849:{name:"Shina Inu",symbol:"SHI",decimals:18},535037:{name:"BeanEco SmartChain",symbol:"BESC",decimals:18},552981:{name:"OWCT",symbol:"OWCT",decimals:18},555555:{name:"Pentagon",symbol:"PEN",decimals:18},555666:{name:"Eclipse",symbol:"ECLPS",decimals:18},622277:{name:"Hypra",symbol:"HYP",decimals:18},622463:{name:"TON",symbol:"TON",decimals:18},641230:{name:"Bear Network Chain Native Token",symbol:"BRNKC",decimals:18},651940:{name:"ALL",symbol:"ALL",decimals:18},656476:{name:"EDU",symbol:"EDU",decimals:18},660279:{name:"Xai",symbol:"XAI",decimals:18},666666:{name:"VS",symbol:"VS",decimals:18},666888:{name:"Hela HLUSD",symbol:"HLUSD",decimals:18},686868:{name:"Won",symbol:"WON",decimals:18},696969:{name:"Galadriel Devnet token",symbol:"GAL",decimals:18},710420:{name:"TILT",symbol:"TILT",decimals:18},713715:{name:"Sei",symbol:"SEI",decimals:18},721529:{name:"ERAM",symbol:"ERAM",decimals:18},743111:{name:"Sepolia Ether",symbol:"ETH",decimals:18},751230:{name:"Bear Network Chain Testnet Token",symbol:"tBRNKC",decimals:18},752024:{name:"Capsule Coin",symbol:"CAPS",decimals:18},761412:{name:"Miexs Coin",symbol:"MIX",decimals:18},764984:{name:"Lamina1 Test",symbol:"L1T",decimals:18},767368:{name:"L1ID Test",symbol:"L1IDT",decimals:18},776877:{name:"Modularium",symbol:"MDM",decimals:18},800001:{name:"OctaSpace",symbol:"OCTA",decimals:18},808080:{name:"tBIZT",symbol:"tBIZT",decimals:18},808813:{name:"Sepolia Ether",symbol:"ETH",decimals:18},810180:{name:"Ether",symbol:"ETH",decimals:18},810181:{name:"Ether",symbol:"ETH",decimals:18},810182:{name:"Ether",symbol:"ETH",decimals:18},820522:{name:"TAS",symbol:"tTAS",decimals:18},827431:{name:"Curve",symbol:"CURVE",decimals:18},839320:{name:"Primal Network",symbol:"PRM",decimals:18},84e4:{name:"Test Bitcoin",symbol:"tBTC",decimals:8},846e3:{name:"APTA",symbol:"APTA",decimals:18},855456:{name:"Dodao",symbol:"DODAO",decimals:18},879151:{name:"BlocX",symbol:"BLX",decimals:18},888882:{name:"REXX",symbol:"REXX",decimals:18},888888:{name:"VS",symbol:"VS",decimals:18},9e5:{name:"Posichain Native Token",symbol:"POSI",decimals:18},91e4:{name:"Posichain Native Token",symbol:"POSI",decimals:18},912559:{name:"RIA",symbol:"RIA",decimals:18},92e4:{name:"Posichain Native Token",symbol:"POSI",decimals:18},920001:{name:"Posichain Native Token",symbol:"POSI",decimals:18},923018:{name:"FNCY",symbol:"FNCY",decimals:18},955081:{name:"Jono12 Token",symbol:"JONO",decimals:18},955305:{name:"ELV",symbol:"ELV",decimals:18},978657:{name:"Testnet MAGIC",symbol:"MAGIC",decimals:18},984122:{name:"TIA",symbol:"TIA",decimals:18},984123:{name:"TIA",symbol:"TIA",decimals:18},988207:{name:"ECROX COIN",symbol:"ECROX",decimals:18},998899:{name:"CHAIN",symbol:"CHAIN",decimals:18},999999:{name:"AMC",symbol:"AMC",decimals:18},1100789:{name:"NMT",symbol:"NMT",decimals:18},1127469:{name:"Tiltyard Token",symbol:"TILTG",decimals:18},1234567:{name:"SHARECLE COIN",symbol:"SHR",decimals:18},1261120:{name:"Sepolia Ether",symbol:"ETH",decimals:18},1313114:{name:"Etho Protocol",symbol:"ETHO",decimals:18},1313500:{name:"Xerom Ether",symbol:"XERO",decimals:18},1337702:{name:"kintsugi Ethere",symbol:"kiETH",decimals:18},1337802:{name:"Testnet ETH",symbol:"ETH",decimals:18},1337803:{name:"Testnet ETH",symbol:"ETH",decimals:18},1398243:{name:"ATA",symbol:"ATA",decimals:18},1612127:{name:"Ether",symbol:"ETH",decimals:18},1637450:{name:"tBNB",symbol:"tBNB",decimals:18},1731313:{name:"Ether",symbol:"ETH",decimals:18},2021398:{name:"DeBank USD",symbol:"USD",decimals:18},2099156:{name:"Plian Token",symbol:"PI",decimals:18},2206132:{name:"LAT",symbol:"lat",decimals:18},2611555:{name:"DGC",symbol:"DGC",decimals:18},2702128:{name:"ETH",symbol:"ETH",decimals:18},3132023:{name:"SAHARA",symbol:"SAH",decimals:18},3141592:{name:"testnet filecoin",symbol:"tFIL",decimals:18},3397901:{name:"Ether",symbol:"ETH",decimals:18},3441005:{name:"Manta",symbol:"MANTA",decimals:18},3441006:{name:"Ether",symbol:"ETH",decimals:18},4000003:{name:"ZERO",symbol:"ZERO",decimals:18},4281033:{name:"Ether",symbol:"ETH",decimals:18},4444444:{name:"Sepolia Ether",symbol:"ETH",decimals:18},4457845:{name:"Ether",symbol:"ETH",decimals:18},5112023:{name:"NUMB Token",symbol:"NUMB",decimals:18},5167003:{name:"MXC Wannsee zkEVM Testnet",symbol:"MXC",decimals:18},5167004:{name:"Moonchain Geneva Testnet",symbol:"MXC",decimals:18},5201420:{name:"Electroneum",symbol:"ETN",decimals:18},5318008:{name:"Kopli React",symbol:"REACT",decimals:18},5555555:{name:"Imversed Token",symbol:"IMV",decimals:18},5555558:{name:"Imversed Token",symbol:"IMV",decimals:18},6038361:{name:"Sepolia Ether",symbol:"ETH",decimals:18},6666665:{name:"SAFE(AnWang)",symbol:"SAFE",decimals:18},6666666:{name:"SAFE(AnWang)",symbol:"SAFE",decimals:18},7225878:{name:"OAS",symbol:"OAS",decimals:18},7355310:{name:"Vessel ETH",symbol:"VETH",decimals:18},7668378:{name:"Shiba Predator",symbol:"QOM",decimals:18},7762959:{name:"Musicoin",symbol:"MUSIC",decimals:18},7777777:{name:"Ether",symbol:"ETH",decimals:18},8007736:{name:"Plian Token",symbol:"PI",decimals:18},8008135:{name:"tFHE",symbol:"tFHE",decimals:18},8080808:{name:"Ether",symbol:"ETH",decimals:18},8601152:{name:"WATER",symbol:"WATER",decimals:18},8794598:{name:"HAP",symbol:"HAP",decimals:18},8888881:{name:"QARE",symbol:"QARE",decimals:18},8888888:{name:"QARE",symbol:"QARE",decimals:18},9322252:{name:"Gas",symbol:"GAS",decimals:18},9322253:{name:"Gas",symbol:"GAS",decimals:18},9999999:{name:"FLT",symbol:"FLT",decimals:18},10067275:{name:"Plian Token",symbol:"TPI",decimals:18},10101010:{name:"Soverun",symbol:"SVRN",decimals:18},10241024:{name:"Ethereum",symbol:"ETH",decimals:18},10241025:{name:"Ethereum",symbol:"ETH",decimals:18},11145513:{name:"Bless",symbol:"BLESS",decimals:18},11155111:{name:"Sepolia Ether",symbol:"ETH",decimals:18},11155420:{name:"Sepolia Ether",symbol:"ETH",decimals:18},12052024:{name:"Ether",symbol:"ETH",decimals:18},12227332:{name:"Gas",symbol:"GAS",decimals:18},13068200:{name:"COTI2",symbol:"COTI2",decimals:18},13371337:{name:"PepChain Churchill Ether",symbol:"TPEP",decimals:18},14288640:{name:"DAON",symbol:"DEB",decimals:18},16658437:{name:"Plian Testnet Token",symbol:"TPI",decimals:18},17000920:{name:"ETH",symbol:"ETH",decimals:18},18071918:{name:"Mand",symbol:"MAND",decimals:18},18289463:{name:"IOLite Ether",symbol:"ILT",decimals:18},19850818:{name:"DeepBrainChain",symbol:"DBC",decimals:18},19880818:{name:"DeepBrainChain",symbol:"DBC",decimals:18},20180427:{name:"FREE",symbol:"FREE",decimals:18},20180430:{name:"SmartMesh Native Token",symbol:"SMT",decimals:18},20181205:{name:"quarkblockchain Native Token",symbol:"QKI",decimals:18},20201022:{name:"Pego Native Token",symbol:"PG",decimals:18},20230825:{name:"Testnet Vcity Token",symbol:"VCITY",decimals:18},20240324:{name:"DeBank USD",symbol:"USD",decimals:18},20240603:{name:"Ether",symbol:"ETH",decimals:18},20241133:{name:"SWANETH",symbol:"sETH",decimals:18},20482050:{name:"Ether",symbol:"ETH",decimals:18},22052002:{name:"Excelon",symbol:"xlon",decimals:18},27082017:{name:"TExlcoin",symbol:"TEXL",decimals:18},27082022:{name:"Exlcoin",symbol:"EXL",decimals:18},28122024:{name:"Ether",symbol:"ETH",decimals:18},28945486:{name:"Auxilium coin",symbol:"AUX",decimals:18},29032022:{name:"Flacoin",symbol:"FLA",decimals:18},31415926:{name:"testnet filecoin",symbol:"tFIL",decimals:18},35855456:{name:"JOYS",symbol:"JOYS",decimals:18},37084624:{name:"sFUEL",symbol:"sFUEL",decimals:18},39916801:{name:"Kozi",symbol:"KOZI",decimals:18},43214913:{name:"maistestsubnet",symbol:"MAI",decimals:18},52164803:{name:"tFLT",symbol:"tFLT",decimals:18},61717561:{name:"Aquachain Ether",symbol:"AQUA",decimals:18},65010003:{name:"Bakerloo Auton",symbol:"ATN",decimals:18},65100003:{name:"Piccadilly Auton",symbol:"ATN",decimals:18},68840142:{name:"Sepolia Ether",symbol:"ETH",decimals:18},77787778:{name:"0xHash",symbol:"HETH",decimals:18},79479957:{name:"SX Network",symbol:"SX",decimals:18},88558801:{name:"Backstop Testnet 1",symbol:"ZBS",decimals:18},88888888:{name:"TEAM",symbol:"$TEAM",decimals:18},94204209:{name:"Sepolia Ether",symbol:"ETH",decimals:18},99415706:{name:"TOYS",symbol:"TOYS",decimals:18},1e8:{name:"ETHOS",symbol:"ETHOS",decimals:18},108160679:{name:"Oraichain Token",symbol:"ORAI",decimals:18},111557560:{name:"Sepolia Ether",symbol:"ETH",decimals:18},123420111:{name:"Sepolia Ether",symbol:"ETH",decimals:18},161221135:{name:"Plume Sepolia Ether",symbol:"ETH",decimals:18},168587773:{name:"Sepolia Ether",symbol:"ETH",decimals:18},192837465:{name:"Gather",symbol:"GTH",decimals:18},222000222:{name:"gMeld",symbol:"gMELD",decimals:18},245022926:{name:"Neon",symbol:"NEON",decimals:18},245022929:{name:"Neon",symbol:"NEON",decimals:18},245022934:{name:"Neon",symbol:"NEON",decimals:18},278611351:{name:"sFuel",symbol:"SFUEL",decimals:18},311752642:{name:"OLT",symbol:"OLT",decimals:18},328527624:{name:"Sepolia Ether",symbol:"ETH",decimals:18},333000333:{name:"gMeld",symbol:"gMELD",decimals:18},356256156:{name:"Gather",symbol:"GTH",decimals:18},476462898:{name:"SkpGPT",symbol:"SkpGPT",decimals:18},486217935:{name:"Gather",symbol:"GTH",decimals:18},531050104:{name:"ETH",symbol:"ETH",decimals:18},666666666:{name:"DEGEN",symbol:"DEGEN",decimals:18},888888888:{name:"Ether",symbol:"ETH",decimals:18},889910245:{name:"PTCE",symbol:"PTCE",decimals:18},889910246:{name:"PTCE",symbol:"PTCE",decimals:18},974399131:{name:"sFUEL",symbol:"sFUEL",decimals:18},999999999:{name:"Sepolia Ether",symbol:"ETH",decimals:18},1020352220:{name:"sFUEL",symbol:"sFUEL",decimals:18},1122334455:{name:"IPOS Network Ether",symbol:"IPOS",decimals:18},1146703430:{name:"Cyb",symbol:"CYB",decimals:18},1273227453:{name:"sFUEL",symbol:"sFUEL",decimals:18},1313161554:{name:"Ether",symbol:"ETH",decimals:18},1313161555:{name:"Ether",symbol:"ETH",decimals:18},1313161556:{name:"Ether",symbol:"ETH",decimals:18},1313161560:{name:"Ether",symbol:"ETH",decimals:18},1350216234:{name:"sFUEL",symbol:"sFUEL",decimals:18},1351057110:{name:"sFUEL",symbol:"sFUEL",decimals:18},1380012617:{name:"Ethereum",symbol:"ETH",decimals:18},1380996178:{name:"Raptor",symbol:"RPTR",decimals:18},1444673419:{name:"sFUEL",symbol:"sFUEL",decimals:18},1482601649:{name:"sFUEL",symbol:"sFUEL",decimals:18},1511670449:{name:"GPT",symbol:"GPT",decimals:18},1564830818:{name:"sFUEL",symbol:"sFUEL",decimals:18},16666e5:{name:"ONE",symbol:"ONE",decimals:18},1666600001:{name:"ONE",symbol:"ONE",decimals:18},16667e5:{name:"ONE",symbol:"ONE",decimals:18},1666700001:{name:"ONE",symbol:"ONE",decimals:18},16669e5:{name:"ONE",symbol:"ONE",decimals:18},1666900001:{name:"ONE",symbol:"ONE",decimals:18},1802203764:{name:"Ether",symbol:"ETH",decimals:18},1903648807:{name:"Gemuchain",symbol:"GEMU",decimals:18},1918988905:{name:"Ethereum",symbol:"ETH",decimals:18},2021121117:{name:"DataHoppers",symbol:"HOP",decimals:18},2046399126:{name:"sFUEL",symbol:"sFUEL",decimals:18},3125659152:{name:"Pirl Ether",symbol:"PIRL",decimals:18},4216137055:{name:"OLT",symbol:"OLT",decimals:18},11297108109:{name:"PALM",symbol:"PALM",decimals:18},11297108099:{name:"PALM",symbol:"PALM",decimals:18},28872323069:{name:"GitSwarm Ether",symbol:"GS-ETH",decimals:18},37714555429:{name:"sXai",symbol:"sXAI",decimals:18},88153591557:{name:"GelatoCGT",symbol:"CGT",decimals:18},107107114116:{name:"Ether",symbol:"ETH",decimals:18},111222333444:{name:"ALT",symbol:"ALT",decimals:18},123420000220:{name:"tFLT",symbol:"tFLT",decimals:18},197710212030:{name:"Ntity",symbol:"NTT",decimals:18},197710212031:{name:"Ntity Haradev",symbol:"NTTH",decimals:18},202402181627:{name:"Ether",symbol:"ETH",decimals:18},383414847825:{name:"Zeniq",symbol:"ZENIQ",decimals:18},666301171999:{name:"PDC",symbol:"PDC",decimals:18},6022140761023:{name:"Molereum Ether",symbol:"MOLE",decimals:18},2713017997578e3:{name:"Ether",symbol:"ETH",decimals:18},2716446429837e3:{name:"Ether",symbol:"ETH",decimals:18}};var Ls={1:[{url:"https://eth.llamarpc.com",tracking:"none",trackingDetails:"LlamaNodes is open-source and does not track or store user information that transits through our RPCs (location, IP, wallet, etc). To learn more, have a look at the public Privacy Policy in our docs: https://llamanodes.notion.site/Privacy-Practices-f20fd8fdd02a469d9d4f42a5989bb936",isOpenSource:true},{url:"https://endpoints.omniatech.io/v1/eth/mainnet/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://rpc.ankr.com/eth",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://go.getblock.io/d7dab8149ec04390aaa923ff2768f914",tracking:"none",trackingDetails:"We automatically collect certain information through cookies and similar technologies when you visit, use or navigate Website. This information does not reveal your specific identity (like your name or contact information) and does not allow to identify you. However, it may include device and usage information, such as your IP address, browser and device characteristics, its type and version, operating system, language preferences, referring URLs, device name, country, location, information about how and when you use our Website, information about your interaction in our emails, and other technical and statistical information. This information is primarily needed to maintain the security and operation of our Website, and for our internal analytics and reporting purposes.Specifically, as the RPC provider, we do not log and store your IP address, country, location and similar data. https://getblock.io/privacy-policy/"},{url:"https://eth-mainnet.nodereal.io/v1/1659dfb40aa24bbb8153a677b98064d7",tracking:"yes",trackingDetails:`We may automatically record certain information about how you use our Sites (we refer to this information as "Log Data"). Log Data may include information such as a user's Internet Protocol (IP) address, device and browser type, operating system, the pages or features of our Sites to which a user browsed and the time spent on those pages or features, the frequency with which the Sites are used by a user, search terms, the links on our Sites that a user clicked on or used, and other statistics. We use this information to administer the Service and we analyze (and may engage third parties to analyze) this information to improve and enhance the Service by expanding its features and functionality and tailoring it to our users' needs and preferences. https://nodereal.io/terms`},{url:"https://ethereum-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://ethereum-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://1rpc.io/eth",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://rpc.builder0x69.io",tracking:"none",trackingDetails:"Private transactions / MM RPC: https://twitter.com/builder0x69"},{url:"https://rpc.mevblocker.io",tracking:"none",trackingDetails:"Privacy notice: MEV Blocker RPC does not store any kind of user information (i.e. IP, location, user agent, etc.) in any data bases. Only transactions are preserved to be displayed via status endpoint like https://rpc.mevblocker.io/tx/0x627b09d5a9954a810cd3c34b23694439da40558a41b0d87970f2c3420634a229. Connect to MEV Blocker via https://rpc.mevblocker.io"},{url:"https://rpc.flashbots.net",tracking:"none",trackingDetails:"Privacy notice: Flashbots Protect RPC does not track any kind of user information (i.e. IP, location, etc.). No user information is ever stored or even logged. https://docs.flashbots.net/flashbots-protect/rpc/quick-start"},{url:"https://virginia.rpc.blxrbdn.com",tracking:"yes",trackingDetails:"We may collect information that is publicly available in a blockchain when providing our services, such as: Public wallet identifier of the sender and recipient of a transaction, Unique identifier for a transaction, Date and time of a transaction, Transaction value, along with associated costs, Status of a transaction (such as whether the transaction is complete, in-progress, or resulted in an error) https://bloxroute.com/wp-content/uploads/2021/12/bloXroute-Privacy-Policy-04-01-2019-Final.pdf"},{url:"https://uk.rpc.blxrbdn.com",tracking:"yes",trackingDetails:"We may collect information that is publicly available in a blockchain when providing our services, such as: Public wallet identifier of the sender and recipient of a transaction, Unique identifier for a transaction, Date and time of a transaction, Transaction value, along with associated costs, Status of a transaction (such as whether the transaction is complete, in-progress, or resulted in an error) https://bloxroute.com/wp-content/uploads/2021/12/bloXroute-Privacy-Policy-04-01-2019-Final.pdf"},{url:"https://singapore.rpc.blxrbdn.com",tracking:"yes",trackingDetails:"We may collect information that is publicly available in a blockchain when providing our services, such as: Public wallet identifier of the sender and recipient of a transaction, Unique identifier for a transaction, Date and time of a transaction, Transaction value, along with associated costs, Status of a transaction (such as whether the transaction is complete, in-progress, or resulted in an error) https://bloxroute.com/wp-content/uploads/2021/12/bloXroute-Privacy-Policy-04-01-2019-Final.pdf"},{url:"https://eth.rpc.blxrbdn.com",tracking:"yes",trackingDetails:"We may collect information that is publicly available in a blockchain when providing our services, such as: Public wallet identifier of the sender and recipient of a transaction, Unique identifier for a transaction, Date and time of a transaction, Transaction value, along with associated costs, Status of a transaction (such as whether the transaction is complete, in-progress, or resulted in an error) https://bloxroute.com/wp-content/uploads/2021/12/bloXroute-Privacy-Policy-04-01-2019-Final.pdf"},{url:"https://cloudflare-eth.com",tracking:"yes",trackingDetails:"Just as when you visit and interact with most websites and services delivered via the Internet, when you visit our Websites, including the Cloudflare Community Forum, we gather certain information and store it in log files. This information may include but is not limited to Internet Protocol (IP) addresses, system configuration information, URLs of referring pages, and locale and language preferences. https://www.cloudflare.com/privacypolicy/"},{url:"https://eth-mainnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://api.securerpc.com/v1",tracking:"unspecified"},{url:"https://openapi.bitstack.com/v1/wNFxbiJyQsSeLrX8RRCHi7NpRxrlErZk/DjShIqLishPCTB9HiMkPHXjUM9CNM9Na/ETH/mainnet",tracking:"yes",trackingDetails:"Information about your computer hardware and software may be automatically collected by BitStack. This information can include: your IP address, browser type, domain names, access times and referring website addresses. https://bitstack.com/#/privacy"},{url:"https://eth-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://eth-mainnet-public.unifra.io",tracking:"limited",trackingDetails:"Regarding the RPC(remote procedure call) data, we do not collect request data or request origin. We temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days. Only the amounts of RPC requests of users are recorded for accounting and billing purposes within longer time. https://unifra.io/"},{url:"https://ethereum.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://rpc.payload.de",tracking:"none",trackingDetails:"Sent transactions are private: https://payload.de/docs. By default, no data is collected when using the RPC endpoint. If provided by the user, the public address for authentication is captured when using the RPC endpoint in order to prioritize requests under high load. This information is optional and solely provided at the user's discretion. https://payload.de/privacy/"},{url:"https://api.zmok.io/mainnet/oaen6dy8ff6hju9k",tracking:"none",trackingDetails:'API requests - we do NOT store any usage data, additionally, we do not store your logs. No KYC - "Darknet" style of sign-up/sign-in. Only provider that provides Ethereum endpoints as TOR/Onion hidden service. Analytical data are stored only on the landing page/web. https://zmok.io/privacy-policy'},{url:"https://eth-mainnet.g.alchemy.com/v2/demo",tracking:"yes",trackingDetails:"We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy"},{url:"https://eth.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://core.gashawk.io/rpc",tracking:"yes",trackingDetails:"Sign-in with Ethereum on https://www.gashawk.io required prior to use. We may collect information that is publicly available in a blockchain when providing our services, such as: Public wallet identifier of the sender and recipient of a transaction, Unique identifier for a transaction, Date and time of a transaction, Transaction value, along with associated costs, Status of a transaction (such as whether the transaction is complete, in-progress, or resulted in an error), read the terms of service https://www.gashawk.io/#/terms and the privacy policy https://www.gashawk.io/#/privacy."},{url:"https://mainnet.eth.cloud.ava.do"},{url:"https://ethereumnodelight.app.runonflux.io"},{url:"https://eth-mainnet.rpcfast.com?api_key=xbhWBI1Wkguk8SNMu1bvvLurPGLXmgwYeC4S6g2H7WdwFigZSmPWVZRxrskEQwIf"},{url:"https://main-light.eth.linkpool.io"},{url:"https://rpc.eth.gateway.fm",tracking:"yes",trackingDetails:"When you use our services or visit our websites, we may log your device’s IP address for debugging and security reasons. We may retain this information for up to twelve months"},{url:"https://rpc.chain49.com/ethereum?api_key=14d1a8b86d8a4b4797938332394203dc",tracking:"yes",trackingDetails:"We collect device information and request metadata like IP address and User Agent for the purpose of load balancing and rate limiting. More info: https://chain49.com/privacy-policy"},{url:"https://eth.meowrpc.com",tracking:"none",trackingDetails:"With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com"},{url:"https://eth.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://mainnet.gateway.tenderly.co",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://rpc.tenderly.co/fork/c63af728-a183-4cfb-b24e-a92801463484",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://gateway.tenderly.co/public/mainnet",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://api.zan.top/node/v1/eth/mainnet/public",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"},{url:"https://eth-mainnet.diamondswap.org/rpc",tracking:"limited",trackingDetails:"We record limited metadata from requests. This data is stored for a maximum of 90 days and is solely used for debugging, identifying suspicious activity, and generating analytics."},{url:"https://rpc.notadegen.com/eth"},{url:"https://eth.merkle.io",tracking:"none",trackingDetails:"merkle does not track or store user information that transits through our RPCs (location, IP, wallet, etc)."},{url:"https://rpc.lokibuilder.xyz/wallet",tracking:"none",trackingDetails:"Private transactions. No tracking of any kind (no IPs, location, wallet etc.): https://lokibuilder.xyz/privacy"},{url:"https://services.tokenview.io/vipapi/nodeservice/eth?apikey=qVHq2o6jpaakcw3lRstl",tracking:"yes",trackingDetails:"Information about your computer hardware and software may be automatically collected by Tokenview. This information can include such details as your IP address, browser type, domain names, access times, etc.https://services.tokenview.io/en/protocol"},{url:"https://eth.nodeconnect.org",tracking:"yes",trackingDetails:"We may collect information about how you interact with our Service. This may include information about your operating system, IP address, and browser type : https://nodeconnect.org/privacy.txt"},{url:"https://api.stateless.solutions/ethereum/v1/0ec6cac0-ecac-4247-8a41-1e685deadfe4",tracking:"none",trackingDetails:"Through any of our RPC API endpoints, whether public or private, we do not collect personal identifiers such as IP addresses, request origins, or specific request data. https://www.stateless.solutions/api-usage-privacy-policy"},{url:"https://rpc.polysplit.cloud/v1/chain/1",tracking:"none",trackingDetails:"When you use our Service, we does not track the IP address or other user info.https://polysplit.cloud/privacy"},{url:"https://rpc.tornadoeth.cash/eth",tracking:"none",trackingDetails:"TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy"},{url:"https://rpc.tornadoeth.cash/mev",tracking:"none",trackingDetails:"TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy"},{url:"https://eth1.lava.build/lava-referer-ed07f753-8c19-4309-b632-5a4a421aa589",tracking:"yes",trackingDetails:"We, our service providers, and our business partners may automatically log information about you, your computer or mobile device, and your interaction over time with the Service..., such as: Device data, ...your computer or mobile device's operating system type and version, manufacturer and model, browser type, screen resolution, RAM and disk size, CPU usage, device type (e.g., phone, tablet), IP address, unique identifiers (including identifiers used for advertising purposes), language settings, mobile device carrier, radio/network information (e.g., Wi-Fi, LTE, 3G), and general location information such as city, state or geographic area. https://www.lavanet.xyz/privacy-policy"},{url:"https://eth1.lava.build/lava-referer-16223de7-12c0-49f3-8d87-e5f1e6a0eb3b",tracking:"yes",trackingDetails:"We, our service providers, and our business partners may automatically log information about you, your computer or mobile device, and your interaction over time with the Service..., such as: Device data, ...your computer or mobile device's operating system type and version, manufacturer and model, browser type, screen resolution, RAM and disk size, CPU usage, device type (e.g., phone, tablet), IP address, unique identifiers (including identifiers used for advertising purposes), language settings, mobile device carrier, radio/network information (e.g., Wi-Fi, LTE, 3G), and general location information such as city, state or geographic area. https://www.lavanet.xyz/privacy-policy"},{url:"https://api.mycryptoapi.com/eth"},{url:"wss://mainnet.gateway.tenderly.co"},{url:"https://rpc.blocknative.com/boost"},{url:"https://rpc.flashbots.net/fast"},{url:"https://rpc.mevblocker.io/fast"},{url:"https://rpc.mevblocker.io/noreverts"},{url:"https://rpc.mevblocker.io/fullprivacy"},{url:"wss://eth.drpc.org"}],2:[{url:"https://node.eggs.cool"},{url:"https://node.expanse.tech"}],3:[{url:"https://rpc.ankr.com/eth_ropsten"},{url:"https://ropsten.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161"}],4:[{url:"https://rpc.ankr.com/eth_rinkeby"},{url:"https://rinkeby.infura.io/3/9aa3d95b3bc440fa88ea12eaa4456161"}],5:[{url:"https://rpc.ankr.com/eth_goerli",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://endpoints.omniatech.io/v1/eth/goerli/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://goerli.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161",tracking:"limited",trackingDetails:"We collect wallet and IP address information. The purpose of this collection is to ensure successful transaction propagation, execution, and other important service functionality such as load balancing and DDoS protection. IP addresses and wallet address data relating to a transaction are not stored together or in a way that allows our systems to associate those two pieces of data. We retain and delete user data such as IP address and wallet address pursuant to our data retention policy. https://consensys.net/blog/news/consensys-data-retention-update/"},{url:"https://eth-goerli.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://eth-goerli.g.alchemy.com/v2/demo",tracking:"yes",trackingDetails:"We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy"},{url:"https://goerli.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://eth-goerli.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://rpc.goerli.eth.gateway.fm",tracking:"yes",trackingDetails:"When you use our services or visit our websites, we may log your device’s IP address for debugging and security reasons. We may retain this information for up to twelve months"},{url:"https://ethereum-goerli-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://ethereum-goerli-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://goerli.gateway.tenderly.co",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://gateway.tenderly.co/public/goerli",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://api.zan.top/node/v1/eth/goerli/public",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"},{url:"https://builder-rpc1.0xblockswap.com",tracking:"yes",trackingDetails:"Blockswap RPC does not track any kind of user information at the builder RPC level (i.e. IP, location, etc.) nor is any information logged. All blocks are encrypted when passed between proposers, builders, relayers, and Ethereum. It does not transmit any transactions to the relayer. We use analytical cookies to see which content on the Site is highly frequented and also to analyze if content should be updated or improved. These cookies process and save data like your browser type, referrer URLs, operating system, date/time stamp, views and clicks on the Site, and your (truncated) IP address. For more information please visit: https://docs.pon.network/pon/privacy"},{url:"https://builder-rpc2.0xblockswap.com",tracking:"yes",trackingDetails:"Blockswap RPC does not track any kind of user information at the builder RPC level (i.e. IP, location, etc.) nor is any information logged. All blocks are encrypted when passed between proposers, builders, relayers, and Ethereum. It does not transmit any transactions to the relayer. We use analytical cookies to see which content on the Site is highly frequented and also to analyze if content should be updated or improved. These cookies process and save data like your browser type, referrer URLs, operating system, date/time stamp, views and clicks on the Site, and your (truncated) IP address. For more information please visit: https://docs.pon.network/pon/privacy"},{url:"https://rpc.tornadoeth.cash/goerli",tracking:"none",trackingDetails:"TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy"},{url:"https://rpc.goerli.mudit.blog"},{url:"wss://goerli.gateway.tenderly.co"}],7:[{url:"https://rpc.dome.cloud"},{url:"https://rpc.thaichain.org"}],8:[{url:"https://rpc.octano.dev"},{url:"https://pyrus2.ubiqscan.io"}],10:[{url:"https://optimism.llamarpc.com",tracking:"none",trackingDetails:"LlamaNodes is open-source and does not track or store user information that transits through our RPCs (location, IP, wallet, etc). To learn more, have a look at the public Privacy Policy in our docs: https://llamanodes.notion.site/Privacy-Practices-f20fd8fdd02a469d9d4f42a5989bb936",isOpenSource:true},{url:"https://mainnet.optimism.io"},{url:"https://optimism-mainnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://rpc.ankr.com/optimism",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://1rpc.io/op",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://op-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://opt-mainnet.g.alchemy.com/v2/demo",tracking:"yes",trackingDetails:"We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy"},{url:"https://optimism.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://endpoints.omniatech.io/v1/op/mainnet/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://optimism.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://rpc.optimism.gateway.fm",tracking:"yes",trackingDetails:"When you use our services or visit our websites, we may log your device’s IP address for debugging and security reasons. We may retain this information for up to twelve months"},{url:"https://optimism-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://optimism-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://optimism.meowrpc.com",tracking:"none",trackingDetails:"With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com"},{url:"https://api.zan.top/node/v1/opt/mainnet/public",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"},{url:"https://optimism.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://optimism.gateway.tenderly.co",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://gateway.tenderly.co/public/optimism",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://api.stateless.solutions/optimism/v1/f373feb1-c8e4-41c9-bb74-2c691988dd34",tracking:"none",trackingDetails:"Through any of our RPC API endpoints, whether public or private, we do not collect personal identifiers such as IP addresses, request origins, or specific request data. https://www.stateless.solutions/api-usage-privacy-policy"},{url:"https://rpc.tornadoeth.cash/optimism",tracking:"none",trackingDetails:"TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy"},{url:"wss://optimism.gateway.tenderly.co"},{url:"wss://optimism.drpc.org"}],11:[{url:"https://api.metadium.com/dev"},{url:"https://api.metadium.com/prod"}],12:[{url:"https://api.metadium.com/dev"}],13:[{url:"https://staging.diode.io:8443"},{url:"wss://staging.diode.io:8443/ws"}],14:[{url:"https://flare-api.flare.network/ext/C/rpc"},{url:"https://flare.rpc.thirdweb.com"},{url:"https://flare-bundler.etherspot.io"},{url:"https://rpc.ankr.com/flare"},{url:"https://01-gravelines-003-01.rpc.tatum.io/ext/bc/C/rpc"},{url:"https://01-vinthill-003-02.rpc.tatum.io/ext/bc/C/rpc"},{url:"https://rpc.ftso.au/flare"},{url:"https://flare.enosys.global/ext/C/rpc"},{url:"https://flare.solidifi.app/ext/C/rpc"}],15:[{url:"https://prenet.diode.io:8443"},{url:"wss://prenet.diode.io:8443/ws"}],16:[{url:"https://coston-api.flare.network/ext/C/rpc"},{url:"https://songbird-testnet-coston.rpc.thirdweb.com"},{url:"https://01-gravelines-004-01.rpc.tatum.io/ext/bc/C/rpc"},{url:"https://02-chicago-004-02.rpc.tatum.io/ext/bc/C/rpc"},{url:"https://02-tokyo-004-03.rpc.tatum.io/ext/bc/C/rpc"},{url:"https://coston.enosys.global/ext/C/rpc"}],17:[{url:"https://rpc.thaifi.com"}],18:[{url:"https://testnet-rpc.thundercore.com"},{url:"https://thundercore-testnet.drpc.org"},{url:"wss://thundercore-testnet.drpc.org"}],19:[{url:"https://songbird.towolabs.com/rpc"},{url:"https://songbird-api.flare.network/ext/C/rpc"},{url:"https://01-gravelines-006-01.rpc.tatum.io/ext/bc/C/rpc"},{url:"https://01-vinthill-006-02.rpc.tatum.io/ext/bc/C/rpc"},{url:"https://02-tokyo-006-03.rpc.tatum.io/ext/bc/C/rpc"},{url:"https://rpc.ftso.au/songbird"},{url:"https://songbird.enosys.global/ext/C/rpc"},{url:"https://songbird.solidifi.app/ext/C/rpc"}],20:[{url:"https://api.elastos.io/esc"},{url:"https://api.trinity-tech.io/esc"},{url:"https://api.elastos.io/eth"}],21:[{url:"https://api-testnet.elastos.io/eth"}],22:[{url:"https://api.trinity-tech.io/eid"},{url:"https://api.elastos.io/eid"}],24:[{url:"https://rpc.kardiachain.io"}],25:[{url:"https://evm.cronos.org"},{url:"https://cronos-rpc.elk.finance"},{url:"https://cronos.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://cronos-evm-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://cronos-evm-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://1rpc.io/cro",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://cronos.drpc.org"},{url:"wss://cronos.drpc.org"}],26:[{url:"https://testrpc.genesisl1.org"}],27:[{url:"https://rpc.shibachain.net"},{url:"https://rpc.shibchain.org"}],29:[{url:"https://rpc.genesisl1.org"}],30:[{url:"https://public-node.rsk.co"},{url:"https://mycrypto.rsk.co"}],31:[{url:"https://public-node.testnet.rsk.co"},{url:"https://mycrypto.testnet.rsk.co"}],32:[{url:"https://test2.goodata.io"}],33:[{url:"https://rpc.goodata.io"}],34:[{url:"https://mainnet-rpc.scai.network"}],35:[{url:"https://rpc.tbwg.io"}],36:[{url:"https://mainnet.dxchain.com"}],37:[{url:"https://dimension-evm-rpc.xpla.dev"}],38:[{url:"https://rpc.valorbit.com/v2"}],39:[{url:"https://rpc-mainnet.uniultra.xyz"}],40:[{url:"https://mainnet.telos.net/evm"},{url:"https://rpc1.eu.telos.net/evm"},{url:"https://rpc1.us.telos.net/evm"},{url:"https://rpc2.us.telos.net/evm"},{url:"https://api.kainosbp.com/evm"},{url:"https://rpc2.eu.telos.net/evm"},{url:"https://evm.teloskorea.com/evm"},{url:"https://rpc2.teloskorea.com/evm"},{url:"https://rpc01.us.telosunlimited.io/evm"},{url:"https://rpc02.us.telosunlimited.io/evm"},{url:"https://1rpc.io/telos/evm",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://telos.drpc.org"},{url:"wss://telos.drpc.org"}],41:[{url:"https://testnet.telos.net/evm"},{url:"https://telos-testnet.drpc.org"},{url:"wss://telos-testnet.drpc.org"}],42:[{url:"https://rpc.mainnet.lukso.network"},{url:"wss://ws-rpc.mainnet.lukso.network"}],43:[{url:"https://pangolin-rpc.darwinia.network"}],44:[{url:"https://crab.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://crab-rpc.darwinia.network"},{url:"https://crab-rpc.dcdao.box"}],45:[{url:"https://pangoro-rpc.darwinia.network"}],46:[{url:"https://rpc.darwinia.network"},{url:"https://darwinia-rpc.dcdao.box"},{url:"https://darwinia-rpc.dwellir.com"}],47:[{url:"https://aic.acria.ai"}],48:[{url:"https://rpc.etm.network"}],49:[{url:"https://rpc.pioneer.etm.network"}],50:[{url:"https://rpc.xdcrpc.com"},{url:"https://rpc1.xinfin.network"},{url:"https://erpc.xinfin.network"},{url:"https://rpc.xinfin.network"},{url:"https://erpc.xdcrpc.com"},{url:"https://rpc.xdc.org"},{url:"https://rpc.ankr.com/xdc",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://rpc-xdc.icecreamswap.com"}],51:[{url:"https://rpc.apothem.network"},{url:"https://erpc.apothem.network"},{url:"https://apothem.xdcrpc.com"}],52:[{url:"https://rpc.coinex.net"},{url:"https://rpc1.coinex.net"},{url:"https://rpc2.coinex.net"},{url:"https://rpc3.coinex.net"},{url:"https://rpc4.coinex.net"}],53:[{url:"https://testnet-rpc.coinex.net"}],54:[{url:"https://mainnet.openpiece.io"}],55:[{url:"https://rpc-1.zyx.network"},{url:"https://rpc-2.zyx.network"},{url:"https://rpc-3.zyx.network"},{url:"https://rpc-5.zyx.network"},{url:"https://rpc-4.zyx.network"},{url:"https://rpc-6.zyx.network"}],56:[{url:"https://binance.llamarpc.com",tracking:"none",trackingDetails:"LlamaNodes is open-source and does not track or store user information that transits through our RPCs (location, IP, wallet, etc). To learn more, have a look at the public Privacy Policy in our docs: https://llamanodes.notion.site/Privacy-Practices-f20fd8fdd02a469d9d4f42a5989bb936",isOpenSource:true},{url:"https://bsc-dataseed.bnbchain.org"},{url:"https://bsc-dataseed1.defibit.io"},{url:"https://bsc-dataseed1.ninicoin.io"},{url:"https://bsc-dataseed2.defibit.io"},{url:"https://bsc-dataseed3.defibit.io"},{url:"https://bsc-dataseed4.defibit.io"},{url:"https://bsc-dataseed2.ninicoin.io"},{url:"https://bsc-dataseed3.ninicoin.io"},{url:"https://bsc-dataseed4.ninicoin.io"},{url:"https://bsc-dataseed1.bnbchain.org"},{url:"https://bsc-dataseed2.bnbchain.org"},{url:"https://bsc-dataseed3.bnbchain.org"},{url:"https://bsc-dataseed4.bnbchain.org"},{url:"https://bsc-dataseed6.dict.life"},{url:"https://rpc-bsc.48.club",tracking:"limited",trackingDetails:"IP addresses will be read for rate-limit purpose without being actively stored at application layer. Also notice that we don't actively purge user footprint in lower-level protocol."},{url:"https://koge-rpc-bsc.48.club",tracking:"limited",trackingDetails:"IP addresses will be read for rate-limit purpose without being actively stored at application layer. Also notice that we don't actively purge user footprint in lower-level protocol."},{url:"https://endpoints.omniatech.io/v1/bsc/mainnet/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://bsc-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://bsc-mainnet.nodereal.io/v1/64a9df0874fb4a93b9d0a3849de012d3",tracking:"yes",trackingDetails:`We may automatically record certain information about how you use our Sites (we refer to this information as "Log Data"). Log Data may include information such as a user's Internet Protocol (IP) address, device and browser type, operating system, the pages or features of our Sites to which a user browsed and the time spent on those pages or features, the frequency with which the Sites are used by a user, search terms, the links on our Sites that a user clicked on or used, and other statistics. We use this information to administer the Service and we analyze (and may engage third parties to analyze) this information to improve and enhance the Service by expanding its features and functionality and tailoring it to our users' needs and preferences. https://nodereal.io/terms`},{url:"https://rpc.ankr.com/bsc",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://getblock.io/nodes/bsc",tracking:"limited",trackingDetails:"We automatically collect certain information through cookies and similar technologies when you visit, use or navigate Website. This information does not reveal your specific identity (like your name or contact information) and does not allow to identify you. However, it may include device and usage information, such as your IP address, browser and device characteristics, its type and version, operating system, language preferences, referring URLs, device name, country, location, information about how and when you use our Website, information about your interaction in our emails, and other technical and statistical information. This information is primarily needed to maintain the security and operation of our Website, and for our internal analytics and reporting purposes.Specifically, as the RPC provider, we do not log and store your IP address, country, location and similar data. https://getblock.io/privacy-policy/"},{url:"https://bscrpc.com"},{url:"https://bsc.rpcgator.com"},{url:"https://binance.nodereal.io",tracking:"yes",trackingDetails:`We may automatically record certain information about how you use our Sites (we refer to this information as "Log Data"). Log Data may include information such as a user's Internet Protocol (IP) address, device and browser type, operating system, the pages or features of our Sites to which a user browsed and the time spent on those pages or features, the frequency with which the Sites are used by a user, search terms, the links on our Sites that a user clicked on or used, and other statistics. We use this information to administer the Service and we analyze (and may engage third parties to analyze) this information to improve and enhance the Service by expanding its features and functionality and tailoring it to our users' needs and preferences. https://nodereal.io/terms`},{url:"https://bsc-mainnet.rpcfast.com?api_key=xbhWBI1Wkguk8SNMu1bvvLurPGLXmgwYeC4S6g2H7WdwFigZSmPWVZRxrskEQwIf"},{url:"https://nodes.vefinetwork.org/smartchain"},{url:"https://1rpc.io/bnb",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://bsc.rpc.blxrbdn.com",tracking:"yes",trackingDetails:"We may collect information that is publicly available in a blockchain when providing our services, such as: Public wallet identifier of the sender and recipient of a transaction, Unique identifier for a transaction, Date and time of a transaction, Transaction value, along with associated costs, Status of a transaction (such as whether the transaction is complete, in-progress, or resulted in an error) https://bloxroute.com/wp-content/uploads/2021/12/bloXroute-Privacy-Policy-04-01-2019-Final.pdf"},{url:"https://bsc.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://bnb.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://bsc-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://bsc-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://bsc-mainnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://bsc.meowrpc.com",tracking:"none",trackingDetails:"With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com"},{url:"https://api.zan.top/node/v1/bsc/mainnet/public",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"},{url:"https://bsc.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://services.tokenview.io/vipapi/nodeservice/bsc?apikey=qVHq2o6jpaakcw3lRstl",tracking:"yes",trackingDetails:"Information about your computer hardware and software may be automatically collected by Tokenview. This information can include such details as your IP address, browser type, domain names, access times, etc.https://services.tokenview.io/en/protocol"},{url:"https://rpc.polysplit.cloud/v1/chain/56",tracking:"none",trackingDetails:"When you use our Service, we does not track the IP address or other user info.https://polysplit.cloud/privacy"},{url:"https://rpc.tornadoeth.cash/bsc",tracking:"none",trackingDetails:"TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy"},{url:"wss://bsc-ws-node.nariox.org"}],57:[{url:"https://rpc.syscoin.org"},{url:"https://rpc.ankr.com/syscoin",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://syscoin-evm-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://syscoin-evm-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://rpc.ankr.com/syscoin/${ANKR_API_KEY}"},{url:"https://syscoin.public-rpc.com"},{url:"wss://rpc.syscoin.org/wss"},{url:"https://syscoin-evm.publicnode.com"},{url:"wss://syscoin-evm.publicnode.com"}],58:[{url:"https://dappnode1.ont.io:10339"},{url:"https://dappnode2.ont.io:10339"},{url:"https://dappnode3.ont.io:10339"},{url:"https://dappnode4.ont.io:10339"},{url:"http://dappnode1.ont.io:20339"},{url:"http://dappnode2.ont.io:20339"},{url:"http://dappnode3.ont.io:20339"},{url:"http://dappnode4.ont.io:20339"}],60:[{url:"https://rpc.gochain.io"}],61:[{url:"https://etc.mytokenpocket.vip"},{url:"https://rpc.etcinscribe.com"},{url:"https://etc.etcdesktop.com"},{url:"https://besu-de.etc-network.info",tracking:"limited",trackingDetails:"We do use analytics at 3rd party tracking websites (Google Analytics & Google Search Console) the following interactions with our systems are automatically logged when you access our services, such as your Internet Protocol (IP) address as well as accessed services and pages(Packet details are discarded / not logged!). Data redemption is varying based on traffic, but deleted after 31 days."},{url:"https://geth-de.etc-network.info",tracking:"limited",trackingDetails:"We do use analytics at 3rd party tracking websites (Google Analytics & Google Search Console) the following interactions with our systems are automatically logged when you access our services, such as your Internet Protocol (IP) address as well as accessed services and pages(Packet details are discarded / not logged!). Data redemption is varying based on traffic, but deleted after 31 days."},{url:"https://besu-at.etc-network.info",tracking:"limited",trackingDetails:"We do use analytics at 3rd party tracking websites (Google Analytics & Google Search Console) the following interactions with our systems are automatically logged when you access our services, such as your Internet Protocol (IP) address as well as accessed services and pages(Packet details are discarded / not logged!). Data redemption is varying based on traffic, but deleted after 31 days."},{url:"https://geth-at.etc-network.info",tracking:"limited",trackingDetails:"We do use analytics at 3rd party tracking websites (Google Analytics & Google Search Console) the following interactions with our systems are automatically logged when you access our services, such as your Internet Protocol (IP) address as well as accessed services and pages(Packet details are discarded / not logged!). Data redemption is varying based on traffic, but deleted after 31 days."},{url:"https://services.tokenview.io/vipapi/nodeservice/etc?apikey=qVHq2o6jpaakcw3lRstl",tracking:"yes",trackingDetails:"Information about your computer hardware and software may be automatically collected by Tokenview. This information can include such details as your IP address, browser type, domain names, access times, etc.https://services.tokenview.io/en/protocol"},{url:"https://etc.rivet.link",tracking:"none",trackingDetails:"We collect End Users’ information when they use our Customers’ web3-enabled websites, web applications, and APIs. This information may include but is not limited to IP addresses, system configuration information, and other information about traffic to and from Customers’ websites (collectively, “Log Data”). We collect and use Log Data to operate, maintain, and improve our Services in performance of our obligations under our Customer agreements.https://rivet.cloud/privacy-policy"}],63:[{url:"https://rpc.mordor.etccooperative.org"},{url:"https://geth-mordor.etc-network.info",tracking:"limited",trackingDetails:"We do use analytics at 3rd party tracking websites (Google Analytics & Google Search Console) the following interactions with our systems are automatically logged when you access our services, such as your Internet Protocol (IP) address as well as accessed services and pages(Packet details are discarded / not logged!). Data redemption is varying based on traffic, but deleted after 31 days."}],64:[{url:"https://jsonrpc.ellaism.org"}],65:[{url:"https://exchaintestrpc.okex.org"}],66:[{url:"https://exchainrpc.okex.org"},{url:"https://oktc-mainnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://okt-chain.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://1rpc.io/oktc",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://okc-mainnet.gateway.pokt.network/v1/lb/6275309bea1b320039c893ff"}],67:[{url:"http://test-rpc.dbmbp.com"}],68:[{url:"https://rpc.soter.one"}],69:[{url:"https://kovan.optimism.io"}],70:[{url:"https://http-mainnet.hoosmartchain.com"},{url:"https://http-mainnet2.hoosmartchain.com"},{url:"wss://ws-mainnet.hoosmartchain.com"},{url:"wss://ws-mainnet2.hoosmartchain.com"}],71:[{url:"https://evmtestnet.confluxrpc.com"}],72:[{url:"https://testnet-http.dxchain.com"}],73:[{url:"https://fncy-seed1.fncy.world"}],74:[{url:"https://idchain.one/rpc"},{url:"wss://idchain.one/ws"}],75:[{url:"https://node.decimalchain.com/web3"},{url:"https://node1-mainnet.decimalchain.com/web3"},{url:"https://node2-mainnet.decimalchain.com/web3"},{url:"https://node3-mainnet.decimalchain.com/web3"},{url:"https://node4-mainnet.decimalchain.com/web3"}],76:[{url:"https://rpc2.mix-blockchain.org:8647"}],77:[{url:"https://sokol.poa.network"},{url:"wss://sokol.poa.network/wss"},{url:"ws://sokol.poa.network:8546"}],78:[{url:"https://ethnode.primusmoney.com/mainnet"}],79:[{url:"https://dataserver-us-1.zenithchain.co"},{url:"https://dataserver-asia-3.zenithchain.co"},{url:"https://dataserver-asia-4.zenithchain.co"},{url:"https://dataserver-asia-2.zenithchain.co"},{url:"https://dataserver-asia-5.zenithchain.co"},{url:"https://dataserver-asia-6.zenithchain.co"},{url:"https://dataserver-asia-7.zenithchain.co"}],80:[{url:"website:https://genechain.io/en/index.html"},{url:"https://rpc.genechain.io"}],81:[{url:"https://rpc-1.japanopenchain.org:8545"},{url:"https://rpc-2.japanopenchain.org:8545"},{url:"https://rpc-3.japanopenchain.org"}],82:[{url:"https://rpc.meter.io"},{url:"https://rpc-meter.jellypool.xyz",tracking:"yes",trackingDetails:"The information collected by log files include internet protocol (IP) addresses, browser type, Internet Service Provider (ISP), date and time stamp, referring/exit pages, and possibly the number of clicks. These are not linked to any information that is personally identifiable. The purpose of the information is for analyzing trends, administering the site, tracking users' movement on the website, and gathering demographic information. https://www.jellypool.xyz/privacy/"},{url:"https://meter.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"}],83:[{url:"https://rpctest.meter.io"}],84:[{url:"https://linqto-dev.com"}],85:[{url:"https://testnet.gatenode.cc"}],86:[{url:"https://evm.gatenode.cc"}],87:[{url:"https://rpc.novanetwork.io:9070",tracking:"none",trackingDetails:"Only strictly functional data is automatically collected by the RPC. None of this data is directly exported or used for commercial purposes."},{url:"https://dev.rpc.novanetwork.io",tracking:"none",trackingDetails:"Only strictly functional data is automatically collected by the RPC. None of this data is directly exported or used for commercial purposes."},{url:"https://connect.novanetwork.io"},{url:"https://0x57.redjackstudio.com"}],88:[{url:"https://rpc.tomochain.com"},{url:"https://viction.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://rpc.viction.xyz"}],89:[{url:"https://rpc-testnet.viction.xyz"}],90:[{url:"https://s0.garizon.net/rpc"}],91:[{url:"https://s1.garizon.net/rpc"}],92:[{url:"https://s2.garizon.net/rpc"}],93:[{url:"https://s3.garizon.net/rpc"}],94:[{url:"https://rpc.swissdlt.ch"}],95:[{url:"https://rpc1.camdl.gov.kh"}],96:[{url:"https://rpc.bitkubchain.io"},{url:"wss://wss.bitkubchain.io"}],97:[{url:"https://endpoints.omniatech.io/v1/bsc/testnet/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://bsctestapi.terminet.io/rpc"},{url:"https://bsc-testnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://bsc-testnet-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://bsc-testnet-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://api.zan.top/node/v1/bsc/testnet/public",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"},{url:"https://bsc-testnet.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://data-seed-prebsc-1-s1.bnbchain.org:8545"},{url:"https://data-seed-prebsc-2-s1.bnbchain.org:8545"},{url:"https://data-seed-prebsc-1-s2.bnbchain.org:8545"},{url:"https://data-seed-prebsc-2-s2.bnbchain.org:8545"},{url:"https://data-seed-prebsc-1-s3.bnbchain.org:8545"},{url:"https://data-seed-prebsc-2-s3.bnbchain.org:8545"}],98:[{url:"https://sixnet-rpc-evm.sixprotocol.net"}],99:[{url:"https://core.poanetwork.dev"},{url:"https://core.poa.network"}],100:[{url:"https://rpc.gnosischain.com"},{url:"https://xdai-archive.blockscout.com"},{url:"https://gnosis-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://rpc.gnosis.gateway.fm",tracking:"yes",trackingDetails:"When you use our services or visit our websites, we may log your device’s IP address for debugging and security reasons. We may retain this information for up to twelve months"},{url:"https://gnosis-mainnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://rpc.ankr.com/gnosis",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://rpc.ap-southeast-1.gateway.fm/v4/gnosis/non-archival/mainnet",tracking:"yes",trackingDetails:"When you use our services or visit our websites, we may log your device’s IP address for debugging and security reasons. We may retain this information for up to twelve months"},{url:"https://gnosis.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://gnosis.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://gnosis.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://endpoints.omniatech.io/v1/gnosis/mainnet/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://gnosis-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://gnosis-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://1rpc.io/gnosis",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://rpc.tornadoeth.cash/gnosis",tracking:"none",trackingDetails:"TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy"},{url:"https://gnosischain-rpc.gateway.pokt.network"},{url:"https://web3endpoints.com/gnosischain-mainnet"},{url:"https://gnosis.oat.farm"},{url:"wss://rpc.gnosischain.com/wss"}],101:[{url:"https://api.einc.io/jsonrpc/mainnet"}],102:[{url:"https://testnet-rpc-0.web3games.org/evm"},{url:"https://testnet-rpc-1.web3games.org/evm"},{url:"https://testnet-rpc-2.web3games.org/evm"}],103:[{url:"https://seoul.worldland.foundation"},{url:"https://seoul2.worldland.foundation"}],104:[{url:"https://klc.live"}],105:[{url:"https://devnet.web3games.org/evm"}],106:[{url:"https://evmexplorer.velas.com/rpc"},{url:"https://velas-mainnet.rpcfast.com?api_key=xbhWBI1Wkguk8SNMu1bvvLurPGLXmgwYeC4S6g2H7WdwFigZSmPWVZRxrskEQwIf"},{url:"https://explorer.velas.com/rpc"}],107:[{url:"https://testnet.rpc.novanetwork.io"}],108:[{url:"https://mainnet-rpc.thundercore.com"},{url:"https://mainnet-rpc.thundertoken.net"},{url:"https://mainnet-rpc.thundercore.io"}],109:[{url:"https://www.shibrpc.com"}],110:[{url:"https://protontestnet.greymass.com"}],111:[{url:"https://rpc.etherlite.org"}],112:[{url:"https://coinbit-rpc-mainnet.chain.sbcrypto.app"}],113:[{url:"https://connect.dehvo.com"},{url:"https://rpc.dehvo.com"},{url:"https://rpc1.dehvo.com"},{url:"https://rpc2.dehvo.com"}],114:[{url:"https://coston2-api.flare.network/ext/C/rpc"},{url:"https://flare-testnet-coston2.rpc.thirdweb.com"},{url:"https://flaretestnet-bundler.etherspot.io"},{url:"https://01-gravelines-005-01.rpc.tatum.io/ext/bc/C/rpc"},{url:"https://02-chicago-005-02.rpc.tatum.io/ext/bc/C/rpc"},{url:"https://02-tokyo-005-03.rpc.tatum.io/ext/bc/C/rpc"},{url:"https://coston2.enosys.global/ext/C/rpc"}],117:[{url:"https://json-rpc.uptick.network"}],118:[{url:"https://testnet.arcology.network/rpc"}],119:[{url:"https://evmapi.nuls.io"},{url:"https://evmapi2.nuls.io"}],120:[{url:"https://beta.evmapi.nuls.io"},{url:"https://beta.evmapi2.nuls.io"}],121:[{url:"https://rcl-dataseed1.rclsidechain.com"},{url:"https://rcl-dataseed2.rclsidechain.com"},{url:"https://rcl-dataseed3.rclsidechain.com"},{url:"https://rcl-dataseed4.rclsidechain.com"},{url:"wss://rcl-dataseed1.rclsidechain.com/v1"},{url:"wss://rcl-dataseed2.rclsidechain.com/v1"},{url:"wss://rcl-dataseed3.rclsidechain.com/v1"},{url:"wss://rcl-dataseed4.rclsidechain.com/v1"}],122:[{url:"https://rpc.fuse.io"},{url:"https://fuse-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://fuse-mainnet.chainstacklabs.com",tracking:"yes",trackingDetails:"We process certain personal data to provide you with the core functionality of our Services. Specifically, when you are: Using the Chainstack Console, we process your name, surname, email address (your account identifier), organization name, IP address, all HTTP headers (most importantly User-Agent), cookies; Using the Chainstack Blockchain infrastructure, we process nodes' token stored in Chainstack Vault, IP address and HTTP headers, request body, API token in Chainstack Vault.https://chainstack.com/privacy/"},{url:"https://fuse.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://fuse.liquify.com",tracking:"yes",trackingDetails:"What data do we collect? Information collected automatically from your device, including IP address, device type,operating system, browser-type, broad geographic location and other technical information.https://www.liquify.io/privacy_policy.pdf"},{url:"https://fuse.drpc.org"},{url:"wss://fuse.drpc.org"}],123:[{url:"https://rpc.fusespark.io"}],124:[{url:"https://decentralized-web.tech/dw_rpc.php"}],125:[{url:"https://rpc.testnet.oychain.io"}],126:[{url:"https://rpc.mainnet.oychain.io"},{url:"https://rpc.oychain.io"}],128:[{url:"https://http-mainnet.hecochain.com"},{url:"https://http-mainnet-node.huobichain.com"},{url:"https://hecoapi.terminet.io/rpc"},{url:"wss://ws-mainnet.hecochain.com"}],129:[{url:"https://rpc.innovatorchain.com"}],131:[{url:"https://tokioswift.engram.tech"},{url:"https://tokio-archive.engram.tech"}],132:[{url:"https://rpc.chain.namefi.io"}],133:[{url:"https://hashkeychain-testnet.alt.technology"}],134:[{url:"https://bellecour.iex.ec"}],135:[{url:"https://testnet-rpc.alyxchain.com"}],136:[{url:"https://mainnet.deamchain.com"}],137:[{url:"https://polygon.llamarpc.com",tracking:"none",trackingDetails:"LlamaNodes is open-source and does not track or store user information that transits through our RPCs (location, IP, wallet, etc). To learn more, have a look at the public Privacy Policy in our docs: https://llamanodes.notion.site/Privacy-Practices-f20fd8fdd02a469d9d4f42a5989bb936",isOpenSource:true},{url:"https://rpc-mainnet.maticvigil.com"},{url:"https://endpoints.omniatech.io/v1/matic/mainnet/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://polygon-rpc.com"},{url:"https://rpc-mainnet.matic.network"},{url:"https://rpc-mainnet.matic.quiknode.pro",tracking:"yes",trackingDetails:"Information about your computer hardware and software may be automatically collected by QuickNode. This information can include such details as your IP address, browser type, domain names, access times and referring website addresses.https://www.quicknode.com/privacy"},{url:"https://matic-mainnet-full-rpc.bwarelabs.com"},{url:"https://matic-mainnet-archive-rpc.bwarelabs.com"},{url:"https://polygon-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://rpc.ankr.com/polygon",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://polygon-mainnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://polygonapi.terminet.io/rpc"},{url:"https://1rpc.io/matic",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://polygon-mainnet.rpcfast.com?api_key=xbhWBI1Wkguk8SNMu1bvvLurPGLXmgwYeC4S6g2H7WdwFigZSmPWVZRxrskEQwIf"},{url:"https://polygon-bor-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://polygon-bor-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://polygon-mainnet-public.unifra.io"},{url:"https://polygon-mainnet.g.alchemy.com/v2/demo",tracking:"yes",trackingDetails:"We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy"},{url:"https://polygon.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://polygon.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://polygon.rpc.blxrbdn.com",tracking:"yes",trackingDetails:"We may collect information that is publicly available in a blockchain when providing our services, such as: Public wallet identifier of the sender and recipient of a transaction, Unique identifier for a transaction, Date and time of a transaction, Transaction value, along with associated costs, Status of a transaction (such as whether the transaction is complete, in-progress, or resulted in an error) https://bloxroute.com/wp-content/uploads/2021/12/bloXroute-Privacy-Policy-04-01-2019-Final.pdf"},{url:"https://polygon.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://polygon.gateway.tenderly.co",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://gateway.tenderly.co/public/polygon",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://api.zan.top/node/v1/polygon/mainnet/public",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"},{url:"https://polygon.meowrpc.com",tracking:"none",trackingDetails:"With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com"},{url:"https://getblock.io/nodes/matic",tracking:"none",trackingDetails:"We automatically collect certain information through cookies and similar technologies when you visit, use or navigate Website. This information does not reveal your specific identity (like your name or contact information) and does not allow to identify you. However, it may include device and usage information, such as your IP address, browser and device characteristics, its type and version, operating system, language preferences, referring URLs, device name, country, location, information about how and when you use our Website, information about your interaction in our emails, and other technical and statistical information. This information is primarily needed to maintain the security and operation of our Website, and for our internal analytics and reporting purposes.Specifically, as the RPC provider, we do not log and store your IP address, country, location and similar data. https://getblock.io/privacy-policy/"},{url:"https://api.stateless.solutions/polygon/v1/5850f066-209e-4e3c-a294-0757a4eb34b3",tracking:"none",trackingDetails:"Through any of our RPC API endpoints, whether public or private, we do not collect personal identifiers such as IP addresses, request origins, or specific request data. https://www.stateless.solutions/api-usage-privacy-policy"},{url:"https://rpc.tornadoeth.cash/polygon",tracking:"none",trackingDetails:"TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy"},{url:"https://matic-mainnet.chainstacklabs.com"},{url:"wss://polygon.gateway.tenderly.co"},{url:"wss://polygon.drpc.org"}],138:[{url:"https://rpc.defi-oracle.io"},{url:"wss://wss.defi-oracle.io"}],139:[{url:"https://rpc.woop.ai/rpc"}],140:[{url:"https://mainnet.eternalcoin.io/v1"},{url:"ws://mainnet.eternalcoin.io/v1/ws"}],141:[{url:"https://testnet.openpiece.io"}],142:[{url:"https://rpc.prodax.io"}],144:[{url:"https://connect.phi.network"}],145:[{url:"https://rpc-testnet.soraai.bot"}],147:[{url:"https://mainnet-rpc.flagscan.xyz"}],148:[{url:"https://json-rpc.evm.shimmer.network"}],150:[{url:"https://rpc-evm.fivenet.sixprotocol.net"}],153:[{url:"https://governors.testnet.redbelly.network"}],155:[{url:"https://rpc.testnet.tenet.org"}],156:[{url:"https://testnet-rpc.oeblock.com"}],157:[{url:"https://puppynet.shibrpc.com"}],158:[{url:"https://dataseed.roburna.com"}],159:[{url:"https://preseed-testnet-1.roburna.com"}],160:[{url:"https://evascan.io/api/eth-rpc"}],161:[{url:"https://testnet.evascan.io/api/eth-rpc"}],162:[{url:"https://node.sirius.lightstreams.io"}],163:[{url:"https://node.mainnet.lightstreams.io"}],164:[{url:"https://omega.omni.network"},{url:"wss://wss.omega.omni.network"}],167:[{url:"https://node.atoshi.io"},{url:"https://node2.atoshi.io"},{url:"https://node3.atoshi.io"}],168:[{url:"https://eth-dataseed.aioz.network"}],169:[{url:"https://pacific-rpc.manta.network/http"},{url:"https://1rpc.io/manta",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://manta-pacific.drpc.org"},{url:"wss://manta-pacific.drpc.org"}],170:[{url:"https://http-testnet.hoosmartchain.com"}],172:[{url:"https://rpc.latam-blockchain.com"},{url:"wss://ws.latam-blockchain.com"}],176:[{url:"https://rpc.dcnetio.cloud"},{url:"wss://ws.dcnetio.cloud"}],178:[{url:"https://testrpc.abeychain.com"}],179:[{url:"https://rpc.abeychain.com"}],180:[{url:"https://node1.amechain.io"}],181:[{url:"https://rpc.waterfall.network"}],184:[{url:"https://rpc-test-d11k.dojima.network"}],185:[{url:"https://rpc.mintchain.io"},{url:"https://global.rpc.mintchain.io"},{url:"https://asia.rpc.mintchain.io"}],186:[{url:"https://rpc.seelen.pro"}],187:[{url:"https://rpc-d11k.dojima.network"}],188:[{url:"https://mainnet.bmcchain.com"}],189:[{url:"https://testnet.bmcchain.com"}],190:[{url:"https://bbqchain-rpc.commudao.xyz"}],191:[{url:"https://rpc.filefilego.com/rpc"}],193:[{url:"https://cemchain.com"}],195:[{url:"https://x1-testnet.blockpi.network/v1/rpc/public ",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://testrpc.xlayer.tech"},{url:"https://xlayertestrpc.okx.com"}],196:[{url:"https://rpc.xlayer.tech"},{url:"https://xlayerrpc.okx.com"}],197:[{url:"https://testnet-rpc.neutrinoschain.com"}],198:[{url:"https://rpc.bitchain.biz"}],199:[{url:"https://rpc.bittorrentchain.io"},{url:"https://rpc.bt.io"},{url:"https://bittorrent.drpc.org"},{url:"wss://bittorrent.drpc.org"}],200:[{url:"https://arbitrum.xdaichain.com"}],201:[{url:"https://gateway.moac.io/testnet"}],202:[{url:"https://testnet.rpc.edgeless.network/http"}],204:[{url:"https://opbnb-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://opbnb-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://1rpc.io/opbnb",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://opbnb-mainnet-rpc.bnbchain.org"},{url:"https://opbnb-mainnet.nodereal.io/v1/64a9df0874fb4a93b9d0a3849de012d3"},{url:"wss://opbnb-mainnet.nodereal.io/ws/v1/64a9df0874fb4a93b9d0a3849de012d3"},{url:"https://opbnb-mainnet.nodereal.io/v1/e9a36765eb8a40b9bd12e680a1fd2bc5"},{url:"wss://opbnb-mainnet.nodereal.io/ws/v1/e9a36765eb8a40b9bd12e680a1fd2bc5"},{url:"https://opbnb.drpc.org"},{url:"wss://opbnb.drpc.org"}],205:[{url:"https://mainnet.ekaash.biz"}],206:[{url:"https://vinufoundation-rpc.com"}],207:[{url:"https://vinuchain-rpc.com"}],208:[{url:"https://mainnet.structx.io"}],210:[{url:"https://rpc.bitnet.money"},{url:"https://rpc.btnscan.com"}],211:[{url:"http://13.57.207.168:3435"},{url:"https://app.freighttrust.net/ftn/${API_KEY}"}],212:[{url:"https://testnet-rpc.maplabs.io"}],213:[{url:"https://hub-rpc.bsquared.network"}],214:[{url:"https://mainnet.shinarium.org"}],217:[{url:"https://rpc2.siriusnet.io"}],220:[{url:"https://rpc-sepolia.scalind.com"}],221:[{url:"https://rpc.blockex.biz"}],223:[{url:"https://mainnet.b2-rpc.com"},{url:"https://rpc.bsquared.network"},{url:"https://b2-mainnet.alt.technology"},{url:"https://b2-mainnet-public.s.chainbase.com"},{url:"https://rpc.ankr.com/b2"}],224:[{url:"https://testnet-rpc.vrd.network"}],225:[{url:"https://rpc-mainnet.lachain.io"}],226:[{url:"https://rpc-testnet.lachain.io"}],228:[{url:"https://rpc_mainnet.mindnetwork.xyz"},{url:"wss://rpc_mainnet.mindnetwork.xyz"}],230:[{url:"https://rpc.swapdex.network"},{url:"wss://ss.swapdex.network"}],233:[{url:"https://testnet.ethernitychain.io"}],234:[{url:"https://testnode.jumbochain.org"}],236:[{url:"https://testnet.deamchain.com"}],242:[{url:"https://rpcurl.mainnet.plgchain.com"},{url:"https://rpcurl.plgchain.blockchain.evmnode.online"},{url:"https://rpcurl.mainnet.plgchain.plinga.technology"}],246:[{url:"https://rpc.energyweb.org"},{url:"wss://rpc.energyweb.org/ws"}],248:[{url:"https://oasys.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://oasys-mainnet.gateway.pokt.network/v1/lb/c967bd31"},{url:"https://oasys-mainnet-archival.gateway.pokt.network/v1/lb/c967bd31"},{url:"https://rpc.mainnet.oasys.games"}],250:[{url:"https://rpcapi.fantom.network"},{url:"https://endpoints.omniatech.io/v1/fantom/mainnet/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://fantom-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://rpc.ftm.tools"},{url:"https://rpc.ankr.com/fantom",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://rpc.fantom.network"},{url:"https://rpc2.fantom.network"},{url:"https://rpc3.fantom.network"},{url:"https://fantom-mainnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://1rpc.io/ftm",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://fantom.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://fantom-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://fantom-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://fantom.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://rpc.fantom.gateway.fm",tracking:"yes",trackingDetails:"When you use our services or visit our websites, we may log your device’s IP address for debugging and security reasons. We may retain this information for up to twelve months"},{url:"https://fantom.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"wss://fantom.drpc.org"}],252:[{url:"https://rpc.frax.com"}],254:[{url:"https://mainnet-rpc01.swanchain.io"}],255:[{url:"https://1rpc.io/kroma",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://api.kroma.network"},{url:"https://rpc-kroma.rockx.com"}],256:[{url:"https://hecotestapi.terminet.io/rpc"},{url:"https://http-testnet.hecochain.com"},{url:"wss://ws-testnet.hecochain.com"}],259:[{url:"https://mainnet.neonlink.io"}],261:[{url:"https://rpc.gurunetwork.ai/archive/261"}],262:[{url:"https://sur.nilin.org"}],267:[{url:"https://rpc.ankr.com/neura_testnet"}],269:[{url:"https://hpbnode.com"},{url:"wss://ws.hpbnode.com"}],271:[{url:"https://rpc.egonscan.com"}],274:[{url:"https://rpc1.mainnet.lachain.network"},{url:"https://rpc2.mainnet.lachain.network"},{url:"https://lachain.rpc-nodes.cedalio.dev"}],278:[{url:"https://rpc_mainnet.xfair.ai"},{url:"wss://rpc_mainnet.xfair.ai"}],279:[{url:"https://rpc.mainnet.bpxchain.cc"},{url:"https://bpx-dataseed.infinex.cc"}],282:[{url:"https://testnet.zkevm.cronos.org"}],288:[{url:"https://mainnet.boba.network"},{url:"https://boba-ethereum.gateway.tenderly.co",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://gateway.tenderly.co/public/boba-ethereum",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://1rpc.io/boba/eth",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://replica.boba.network"},{url:"wss://boba-ethereum.gateway.tenderly.co"},{url:"wss://gateway.tenderly.co/public/boba-ethereum"},{url:"https://boba-eth.drpc.org"},{url:"wss://boba-eth.drpc.org"}],291:[{url:"https://rpc.orderly.network"},{url:"https://l2-orderly-mainnet-0.t.conduit.xyz"}],295:[{url:"https://mainnet.hashio.io/api"}],296:[{url:"https://testnet.hashio.io/api"}],297:[{url:"https://previewnet.hashio.io/api"}],300:[{url:"https://zksync-era-sepolia.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://sepolia.era.zksync.dev"},{url:"https://zksync-sepolia.drpc.org"},{url:"wss://zksync-sepolia.drpc.org"}],302:[{url:"https://sepolia.rpc.zkcandy.io"}],303:[{url:"https://nc-rpc-test1.neurochain.io"}],305:[{url:"https://mainnet.zksats.io"}],307:[{url:"https://trpc.lovely.network"}],308:[{url:"https://rpc.furtheon.org"}],309:[{url:"https://rpc-testnet3.wyzthchain.org"}],311:[{url:"https://mainapi.omaxray.com"}],313:[{url:"https://nc-rpc-prd1.neurochain.io"},{url:"https://nc-rpc-prd2.neurochain.io"}],314:[{url:"https://api.node.glif.io"},{url:"https://node.filutils.com/rpc/v1"},{url:"https://rpc.ankr.com/filecoin",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://filecoin.chainup.net/rpc/v1",tracking:"limited",trackingDetails:"We only collect user IP addresses for the purpose of rate limiting. For more information, please visit https://docs.chainupcloud.com/introduction/products/blockchain-api."},{url:"https://infura.sftproject.io/filecoin/rpc/v1",tracking:"yes",trackingDetails:"Information collected automatically may include usage details, IP addresses, and information collected through cookies and other tracking technologies"},{url:"https://api.chain.love/rpc/v1"},{url:"https://filecoin-mainnet.chainstacklabs.com/rpc/v1"},{url:"https://filfox.info/rpc/v1"},{url:"https://filecoin.drpc.org"},{url:"wss://filecoin.drpc.org"}],321:[{url:"https://rpc-mainnet.kcc.network"},{url:"https://kcc.mytokenpocket.vip"},{url:"https://kcc-rpc.com"},{url:"https://services.tokenview.io/vipapi/nodeservice/kcs?apikey=qVHq2o6jpaakcw3lRstl",tracking:"yes",trackingDetails:"Information about your computer hardware and software may be automatically collected by Tokenview. This information can include such details as your IP address, browser type, domain names, access times, etc.https://services.tokenview.io/en/protocol"},{url:"https://public-rpc.blockpi.io/http/kcc"}],322:[{url:"https://rpc-testnet.kcc.network"}],323:[{url:"https://rpc.cosvm.net"}],324:[{url:"https://zksync-era.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://zksync.meowrpc.com",tracking:"none",trackingDetails:"With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com"},{url:"https://zksync.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://1rpc.io/zksync2-era",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://mainnet.era.zksync.io"},{url:"wss://zksync.drpc.org"}],333:[{url:"https://mainnet.web3q.io:8545"}],335:[{url:"https://subnets.avax.network/defi-kingdoms/dfk-chain-testnet/rpc"}],336:[{url:"https://rpc.shiden.astar.network:8545"},{url:"https://shiden.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://shiden-rpc.dwellir.com",tracking:"limited",trackingDetails:"Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy"},{url:"wss://shiden-rpc.dwellir.com",tracking:"limited",trackingDetails:"Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy"},{url:"https://shiden.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"wss://shiden.api.onfinality.io/public-ws"},{url:"wss://shiden.public.blastapi.io"}],338:[{url:"https://evm-t3.cronos.org"},{url:"https://cronos-testnet.drpc.org"},{url:"wss://cronos-testnet.drpc.org"}],345:[{url:"https://rpc01.trias.one"}],361:[{url:"https://eth-rpc-api.thetatoken.org/rpc"}],363:[{url:"https://eth-rpc-api-sapphire.thetatoken.org/rpc"}],364:[{url:"https://eth-rpc-api-amber.thetatoken.org/rpc"}],365:[{url:"https://eth-rpc-api-testnet.thetatoken.org/rpc"}],369:[{url:"https://rpc.pulsechain.com"},{url:"https://pulse-s.projectpi.xyz",tracking:"none",trackingDetails:"When you use Project Pi as an RPC provider we will not store your IP address or any data for more than 24 hours. IP addresses are not connected or correlated to wallet addresses"},{url:"https://pulsechain-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://pulsechain-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://rpc-pulsechain.g4mm4.io"},{url:"https://evex.cloud/pulserpc"},{url:"wss://evex.cloud/pulsews"},{url:"wss://rpc.pulsechain.com"},{url:"wss://rpc-pulsechain.g4mm4.io"}],371:[{url:"https://rpc-testnet.theconsta.com"}],380:[{url:"https://rpc.testnet.zkamoeba.com:4050"},{url:"https://rpc1.testnet.zkamoeba.com:4050"}],381:[{url:"https://rpc.mainnet.zkamoeba.com/rpc"}],385:[{url:"https://rpc-bitfalls1.lisinski.online"}],388:[{url:"https://mainnet.zkevm.cronos.org"}],395:[{url:"https://rpc1.testnet.camdl.gov.kh"}],399:[{url:"https://rpc.nativ3.network"},{url:"wss://ws.nativ3.network"}],400:[{url:"https://testnet-rpc.hyperonchain.com"}],401:[{url:"https://node1.testnet.ozonechain.io"}],404:[{url:"https://rpc.syndr.com"},{url:"wss://rpc.syndr.com/ws"}],411:[{url:"https://rpc.pepe-chain.vip"}],416:[{url:"https://rpc.sx.technology"}],418:[{url:"https://rpc.testnet.lachain.network"},{url:"https://lachain-testnet.rpc-nodes.cedalio.dev"}],420:[{url:"https://endpoints.omniatech.io/v1/op/goerli/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://opt-goerli.g.alchemy.com/v2/demo",tracking:"yes",trackingDetails:"We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy"},{url:"https://optimism-goerli.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://rpc.goerli.optimism.gateway.fm",tracking:"yes",trackingDetails:"When you use our services or visit our websites, we may log your device’s IP address for debugging and security reasons. We may retain this information for up to twelve months"},{url:"https://optimism-goerli-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://optimism-goerli-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://api.zan.top/node/v1/opt/goerli/public",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"},{url:"https://optimism-goerli.gateway.tenderly.co",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://gateway.tenderly.co/public/optimism-goerli",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://goerli.optimism.io"},{url:"wss://optimism-goerli.gateway.tenderly.co"},{url:"https://optimism-testnet.drpc.org"},{url:"wss://optimism-testnet.drpc.org"}],422:[{url:"https://mainnet-rpc.vrd.network"}],424:[{url:"https://rpc.publicgoods.network"}],427:[{url:"https://rpc.zeeth.io"}],428:[{url:"https://rpc.verse.gesoten.com"}],434:[{url:"https://evm-rpc.mainnet.boyaa.network"}],443:[{url:"https://testnet.ten.xyz"}],444:[{url:"https://sepolia.synapseprotocol.com"}],456:[{url:"https://chain-rpc.arzio.co"}],462:[{url:"https://testnet-rpc.areon.network"},{url:"https://testnet-rpc2.areon.network"},{url:"https://testnet-rpc3.areon.network"},{url:"https://testnet-rpc4.areon.network"},{url:"https://testnet-rpc5.areon.network"}],463:[{url:"https://mainnet-rpc.areon.network"},{url:"https://mainnet-rpc2.areon.network"},{url:"https://mainnet-rpc3.areon.network"},{url:"https://mainnet-rpc4.areon.network"},{url:"https://mainnet-rpc5.areon.network"}],500:[{url:"https://api.camino.network/ext/bc/C/rpc"}],501:[{url:"https://columbus.camino.network/ext/bc/C/rpc"}],510:[{url:"https://rpc-mainnet.syndicate.io"}],512:[{url:"https://rpc.acuteangle.com"}],513:[{url:"https://rpc-testnet.acuteangle.com"}],516:[{url:"https://gzn.linksme.info"}],520:[{url:"https://datarpc1.xsc.pub"},{url:"https://datarpc2.xsc.pub"},{url:"https://datarpc3.xsc.pub"}],529:[{url:"https://rpc-mainnet.thefirechain.com"}],530:[{url:"https://fx-json-web3.portfolio-x.xyz:8545"},{url:"https://fx-json-web3.functionx.io:8545"}],534:[{url:"https://candle-rpc.com"},{url:"https://rpc.cndlchain.com"}],537:[{url:"https://rpc.optrust.io"}],542:[{url:"https://pawchainx.com"}],545:[{url:"https://testnet.evm.nodes.onflow.org"}],555:[{url:"https://rpc.velaverse.io"}],558:[{url:"https://rpc.tao.network"},{url:"https://rpc.testnet.tao.network"},{url:"http://rpc.testnet.tao.network:8545"},{url:"wss://rpc.tao.network"}],568:[{url:"https://rpc-testnet.dogechain.dog"}],570:[{url:"wss://rpc.rollux.com/wss"},{url:"https://rpc.rollux.com"},{url:"https://rollux.rpc.syscoin.org"},{url:"wss://rollux.rpc.syscoin.org/wss"},{url:"https://rpc.ankr.com/rollux"}],571:[{url:"https://rpc.metatime.com"}],579:[{url:"https://rpc.filenova.org"}],592:[{url:"https://evm.astar.network"},{url:"https://rpc.astar.network:8545"},{url:"https://astar.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://getblock.io/nodes/bsc",tracking:"none",trackingDetails:"We automatically collect certain information through cookies and similar technologies when you visit, use or navigate Website. This information does not reveal your specific identity (like your name or contact information) and does not allow to identify you. However, it may include device and usage information, such as your IP address, browser and device characteristics, its type and version, operating system, language preferences, referring URLs, device name, country, location, information about how and when you use our Website, information about your interaction in our emails, and other technical and statistical information. This information is primarily needed to maintain the security and operation of our Website, and for our internal analytics and reporting purposes.Specifically, as the RPC provider, we do not log and store your IP address, country, location and similar data. https://getblock.io/privacy-policy/"},{url:"https://1rpc.io/astr",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://astar-mainnet.g.alchemy.com/v2/demo",tracking:"yes",trackingDetails:"We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy"},{url:"https://astar.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"wss://astar.api.onfinality.io/public-ws",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://astar-rpc.dwellir.com",tracking:"limited",trackingDetails:"Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy"},{url:"wss://astar-rpc.dwellir.com",tracking:"limited",trackingDetails:"Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy"}],595:[{url:"https://eth-rpc-tc9.aca-staging.network"},{url:"wss://eth-rpc-tc9.aca-staging.network"}],596:[{url:"https://eth-rpc-karura-testnet.aca-staging.network"},{url:"wss://eth-rpc-karura-testnet.aca-staging.network"}],597:[{url:"https://eth-rpc-acala-testnet.aca-staging.network"},{url:"wss://eth-rpc-acala-testnet.aca-staging.network"}],601:[{url:"https://rpc-testnet.vne.network"}],610:[{url:"https://devnet-rpc.darwinchain.ai"}],612:[{url:"https://rpc.eiob.xyz"}],614:[{url:"https://glq-dataseed.graphlinq.io"}],624:[{url:"https://rpc.zero.thebinaryholdings.com"}],625:[{url:"https://rpc.testnet.thebinaryholdings.com"}],634:[{url:"https://rpc.avocado.instadapp.io"}],646:[{url:"https://previewnet.evm.nodes.onflow.org"}],647:[{url:"https://rpc.toronto.sx.technology"}],648:[{url:"https://rpc-endurance.fusionist.io"}],653:[{url:"https://rpc.kalichain.com"}],654:[{url:"https://mainnet.kalichain.com"}],662:[{url:"https://rpc.ultronsmartchain.io"}],666:[{url:"https://http-testnet.chain.pixie.xyz"},{url:"wss://ws-testnet.chain.pixie.xyz"}],667:[{url:"https://arrakis.gorengine.com/own"},{url:"wss://arrakis.gorengine.com/own"}],668:[{url:"https://rpc.juncachain.com"}],669:[{url:"https://rpc-testnet.juncachain.com"},{url:"wss://ws-testnet.juncachain.com"}],686:[{url:"https://eth-rpc-karura.aca-staging.network"},{url:"https://rpc.evm.karura.network"},{url:"https://karura.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://eth-rpc-karura.aca-api.network"},{url:"wss://eth-rpc-karura.aca-api.network"}],690:[{url:"https://rpc.redstonechain.com"},{url:"wss://rpc.redstonechain.com"}],700:[{url:"https://avastar.cc/ext/bc/C/rpc"}],701:[{url:"https://koi-rpc.darwinia.network"}],707:[{url:"https://rpc-mainnet.bcsdev.io"},{url:"wss://rpc-ws-mainnet.bcsdev.io"}],708:[{url:"https://rpc-testnet.bcsdev.io"},{url:"wss://rpc-ws-testnet.bcsdev.io"}],710:[{url:"https://highbury.furya.io"},{url:"https://rest.furya.io"}],713:[{url:"https://rpc-mainnet-5.vrcscan.com"},{url:"https://rpc-mainnet-6.vrcscan.com"},{url:"https://rpc-mainnet-7.vrcscan.com"},{url:"https://rpc-mainnet-8.vrcscan.com"}],719:[{url:"https://puppynet.shibrpc.com"}],721:[{url:"https://rpc.lycanchain.com"},{url:"https://us-east.lycanchain.com"},{url:"https://us-west.lycanchain.com"},{url:"https://eu-north.lycanchain.com"},{url:"https://eu-west.lycanchain.com"},{url:"https://asia-southeast.lycanchain.com"}],727:[{url:"https://data.bluchain.pro"}],730:[{url:"https://rpc.lovely.network"}],741:[{url:"https://node-testnet.vention.network"}],742:[{url:"https://testeth-rpc-api.script.tv/rpc"}],747:[{url:"https://mainnet.evm.nodes.onflow.org"}],766:[{url:"https://rpc.qom.one"}],777:[{url:"https://node.cheapeth.org/rpc"}],786:[{url:"https://node1-mainnet.maalscan.io"},{url:"https://node2-mainnet.maalscan.io"},{url:"https://node3-mainnet.maalscan.io"}],787:[{url:"https://eth-rpc-acala.aca-staging.network"},{url:"https://rpc.evm.acala.network"},{url:"https://eth-rpc-acala.aca-api.network"},{url:"wss://eth-rpc-acala.aca-api.network"}],788:[{url:"https://testnet-rpc.aerochain.id"}],789:[{url:"https://rpc.patex.io"}],799:[{url:"https://rpc.testnet.rupaya.io"}],800:[{url:"https://rpc.lucidcoin.io"}],803:[{url:"https://orig.haichain.io"}],808:[{url:"https://subnets.avax.network/portal-fantasy/testnet/rpc"}],810:[{url:"https://testnet-rpc.haven1.org"}],813:[{url:"https://mainnet.meerlabs.com"},{url:"https://evm-dataseed1.meerscan.io"},{url:"https://evm-dataseed2.meerscan.io"},{url:"https://evm-dataseed3.meerscan.io"},{url:"https://evm-dataseed.meerscan.com"},{url:"https://qng.rpc.qitmeer.io"},{url:"https://rpc.dimai.ai"},{url:"https://rpc.woowow.io"}],814:[{url:"https://rpc-zkevm.thefirechain.com"}],818:[{url:"https://dataseed1.beonechain.com"},{url:"https://dataseed2.beonechain.com"},{url:"https://dataseed-us1.beonechain.com"},{url:"https://dataseed-us2.beonechain.com"},{url:"https://dataseed-uk1.beonechain.com"},{url:"https://dataseed-uk2.beonechain.com"}],820:[{url:"https://rpc.callisto.network"},{url:"https://clo-geth.0xinfra.com"}],822:[{url:"https://rpc-testnet.runic.build"}],831:[{url:"https://devnet.checkdot.io"}],841:[{url:"https://rpc.mainnet.taraxa.io"}],842:[{url:"https://rpc.testnet.taraxa.io"}],852:[{url:"https://eth.jegotrip.net"}],859:[{url:"https://rpc.dev.zeeth.io"}],868:[{url:"https://mainnet-data1.fantasiachain.com"},{url:"https://mainnet-data2.fantasiachain.com"},{url:"https://mainnet-data3.fantasiachain.com"}],876:[{url:"https://rpc.main.oasvrs.bnken.net"}],877:[{url:"https://dxt.dexit.network"}],880:[{url:"https://api.ambros.network"}],888:[{url:"https://gwan-ssl.wandevs.org:56891"},{url:"https://gwan2-ssl.wandevs.org"}],898:[{url:"https://rpc-testnet.maxi.network"}],899:[{url:"https://rpc.maxi.network"}],900:[{url:"https://s0-testnet.garizon.net/rpc"}],901:[{url:"https://s1-testnet.garizon.net/rpc"}],902:[{url:"https://s2-testnet.garizon.net/rpc"}],903:[{url:"https://s3-testnet.garizon.net/rpc"}],910:[{url:"https://layer1test.decentrabone.com"}],911:[{url:"https://rpc.taprootchain.io"}],917:[{url:"https://rinia-rpc1.thefirechain.com"}],919:[{url:"https://sepolia.mode.network"}],927:[{url:"https://rpc.yidark.io"}],943:[{url:"https://pulsetest-s.projectpi.xyz",tracking:"none",trackingDetails:"When you use Project Pi as an RPC provider we will not store your IP address or any data for more than 24 hours. IP addresses are not connected or correlated to wallet addresses"},{url:"https://pulsechain-testnet-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://pulsechain-testnet-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://rpc.v4.testnet.pulsechain.com"},{url:"wss://rpc.v4.testnet.pulsechain.com"},{url:"https://rpc-testnet-pulsechain.g4mm4.io"},{url:"wss://rpc-testnet-pulsechain.g4mm4.io"}],957:[{url:"https://rpc.lyra.finance"}],963:[{url:"https://rpc.bitcoincode.technology"}],969:[{url:"https://rpc.ethxy.com"}],970:[{url:"https://mainnet-rpc.oortech.com"}],972:[{url:"https://ascraeus-rpc.oortech.com"}],977:[{url:"https://api.nepalblockchain.dev"},{url:"https://api.nepalblockchain.network"}],979:[{url:"https://rpc.testnet.ethxy.com"}],980:[{url:"https://ethapi.topnetwork.org"}],985:[{url:"https://chain.metamemo.one:8501"},{url:"wss://chain.metamemo.one:16801"}],987:[{url:"https://rpc.binarychain.org"}],990:[{url:"https://rpc.eliberty.ngo"}],995:[{url:"https://rpc.5ire.network"}],996:[{url:"https://hk.p.bifrost-rpc.liebi.com"}],997:[{url:"https://rpc-testnet.5ire.network"}],998:[{url:"https://rpc.luckynetwork.org"},{url:"wss://ws.lnscan.org"},{url:"https://rpc.lnscan.org"}],999:[{url:"https://gwan-ssl.wandevs.org:46891"}],1e3:[{url:"https://rpc.gton.network"}],1001:[{url:"https://public-en-baobab.klaytn.net"},{url:"https://klaytn-baobab-rpc.allthatnode.com:8551",tracking:"yes",trackingDetails:"In addition to the Personal Information, the Billing Information, and the Geolocational Information..., we automatically collect certain information when you use the Platform or Website: IP addresses, browser type and language...; information about a mobile device, including universally unique ID (“UUID”), platform type and version (e.g., iOS or Android), carrier and country location, hardware and processor information, and network type; and activity and usage information occurring via the Platform or Website.https://www.allthatnode.com/privacypolicy.dsrv"},{url:"https://rpc.ankr.com/klaytn_testnet",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://klaytn-baobab.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://klaytn.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://public-en.kairos.node.kaia.io"}],1003:[{url:"https://rpc.softnote.com",tracking:"yes",trackingDetails:"CrispMind collects personal information and uses cookies for site operation, analysis, and enhancement, with no control over third-party cookies.https://softnote.com/privacy/"}],1004:[{url:"https://test.ekta.io:8545"}],1007:[{url:"https://rpc1.newchain.newtonproject.org"}],1008:[{url:"https://mainnet.eurus.network"}],1009:[{url:"https://rpcpriv.jumbochain.org"}],1010:[{url:"https://meta.evrice.com"}],1011:[{url:"https://apievm.rebuschain.com/rpc"}],1012:[{url:"https://global.rpc.mainnet.newtonproject.org"}],1024:[{url:"https://api-para.clover.finance"}],1028:[{url:"https://testrpc.bittorrentchain.io"}],1030:[{url:"https://evm.confluxrpc.com"},{url:"https://conflux-espace-public.unifra.io"}],1031:[{url:"http://128.199.94.183:8041"}],1038:[{url:"https://evm-testnet.bronos.org"}],1073:[{url:"https://json-rpc.evm.testnet.shimmer.network"}],1075:[{url:"https://json-rpc.evm.testnet.iotaledger.net"}],1079:[{url:"https://subnets.avax.network/mintara/testnet/rpc"}],1080:[{url:"https://subnets.avax.network/mintara/mainnet/rpc"}],1088:[{url:"https://andromeda.metis.io/?owner=1088"},{url:"https://metis-mainnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://metis.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://metis-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://metis.drpc.org"},{url:"wss://metis.drpc.org"}],1089:[{url:"https://humans-mainnet-evm.itrocket.net",tracking:"none",trackingDetails:"We do not track, store or process any personal data. You can check our privacy policy here: https://itrocket.net/privacy-policy/"},{url:"https://jsonrpc.humans.nodestake.top"},{url:"https://humans-evm-rpc.staketab.org:443"},{url:"https://evm.humans.stakepool.dev.br"},{url:"https://mainnet-humans-evm.konsortech.xyz"},{url:"https://evm-rpc.mainnet.humans.zone"},{url:"https://json-rpc.humans.bh.rocks"},{url:"https://evm-rpc.humans.huginn.tech"}],1100:[{url:"https://jsonrpc.dymension.nodestake.org"},{url:"https://evm-archive.dymd.bitszn.com"},{url:"https://dymension.liquify.com/json-rpc"},{url:"https://dymension-evm.kynraze.com"},{url:"https://dymension-evm.blockpi.network/v1/rpc/public"},{url:"https://dymension-evm-rpc.publicnode.com"},{url:"wss://dymension-evm-rpc.publicnode.com"}],1101:[{url:"https://rpc.ankr.com/polygon_zkevm",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://rpc.polygon-zkevm.gateway.fm",tracking:"yes",trackingDetails:"When you use our services or visit our websites, we may log your device’s IP address for debugging and security reasons. We may retain this information for up to twelve months"},{url:"https://1rpc.io/polygon/zkevm",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://polygon-zkevm.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://polygon-zkevm-mainnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://api.zan.top/node/v1/polygonzkevm/mainnet/public",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"},{url:"https://polygon-zkevm.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://zkevm-rpc.com"},{url:"wss://polygon-zkevm.drpc.org"}],1107:[{url:"https://testnetq1.blx.org"}],1108:[{url:"https://mainnet.blxq.org"}],1111:[{url:"https://api.wemix.com"},{url:"wss://ws.wemix.com"}],1112:[{url:"https://api.test.wemix.com"},{url:"wss://ws.test.wemix.com"}],1113:[{url:"https://testnet-hub-rpc.bsquared.network"}],1115:[{url:"https://rpc.test.btcs.network"}],1116:[{url:"https://rpc.coredao.org"},{url:"https://core.public.infstones.com"},{url:"https://1rpc.io/core",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://rpc.ankr.com/core",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://rpc-core.icecreamswap.com"},{url:"https://core.drpc.org"},{url:"wss://core.drpc.org"}],1117:[{url:"https://mainnet-rpc.dogcoin.me"}],1123:[{url:"https://b2-testnet.alt.technology"},{url:"https://rpc.ankr.com/b2_testnet"},{url:"https://testnet-rpc.bsquared.network"}],1130:[{url:"https://dmc.mydefichain.com/mainnet"},{url:"https://dmc01.mydefichain.com/mainnet"}],1131:[{url:"https://dmc.mydefichain.com/testnet"},{url:"https://dmc01.mydefichain.com/testnet"},{url:"https://eth.testnet.ocean.jellyfishsdk.com"}],1133:[{url:"https://dmc.mydefichain.com/changi"},{url:"https://testnet-dmc.mydefichain.com:20551"}],1135:[{url:"https://rpc.api.lisk.com"}],1138:[{url:"https://testnet-rpc.amstarscan.com"}],1139:[{url:"https://mathchain.maiziqianbao.net/rpc"},{url:"https://mathchain-asia.maiziqianbao.net/rpc"},{url:"https://mathchain-us.maiziqianbao.net/rpc"}],1140:[{url:"https://galois-hk.maiziqianbao.net/rpc"}],1147:[{url:"https://testnet-rpc.flagscan.xyz"}],1149:[{url:"https://plex-rpc.plexfinance.us"}],1170:[{url:"https://json-rpc.origin.uptick.network"}],1177:[{url:"https://s2.tl.web.tr:4041"}],1188:[{url:"https://mainnet.mosscan.com"}],1197:[{url:"https://dataseed.iorachain.com"}],1200:[{url:"https://mainnet-rpc.cuckoo.network"},{url:"wss://mainnet-rpc.cuckoo.network"}],1201:[{url:"https://seed5.evanesco.org:8547"}],1202:[{url:"https://rpc.cadaut.com"},{url:"wss://rpc.cadaut.com/ws"}],1209:[{url:"https://rpc-nodes.saitascan.io"}],1210:[{url:"https://testnet-rpc.cuckoo.network"},{url:"wss://testnet-rpc.cuckoo.network"}],1213:[{url:"https://dataseed.popcateum.org"}],1214:[{url:"https://tapi.entercoin.net"}],1221:[{url:"https://rpc-testnet.cyclenetwork.io"}],1223:[{url:"https://jellyfish-rpc-testnet.cyclenetwork.io"}],1225:[{url:"https://hybrid-testnet.rpc.caldera.xyz/http"},{url:"wss://hybrid-testnet.rpc.caldera.xyz/ws"}],1227:[{url:"https://testnet-chain.btcprotocol.io"}],1229:[{url:"https://mainnet.exzo.technology"}],1230:[{url:"https://ultron-dev.io"}],1231:[{url:"https://ultron-rpc.net"}],1234:[{url:"https://rpc.step.network"}],1235:[{url:"https://rpc.itxchain.com"}],1243:[{url:"https://rpc-main-1.archiechain.io"}],1244:[{url:"https://rpc-test-1.archiechain.io"}],1246:[{url:"https://rpc-cnx.omplatform.com"}],1248:[{url:"https://rpc.dogether.dog"}],1252:[{url:"https://testapi.cicscan.com"}],1280:[{url:"https://nodes.halo.land"}],1284:[{url:"https://rpc.api.moonbeam.network"},{url:"https://moonbeam.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"wss://moonbeam.api.onfinality.io/public-ws",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://moonbeam.unitedbloc.com:3000",tracking:"yes",trackingDetails:"UnitedBloc does not collect or store any PII information. UnitedBloc does use IP addresses and transaction requests solely for service management purposes. Performance measurements such as rate limiting and routing rules require the analysis of IP addresses and response time measurements require the analysis of transaction requests. UnitedBloc does not and will never use RPC requests to front run transactions."},{url:"wss://moonbeam.unitedbloc.com:3001",tracking:"yes",trackingDetails:"UnitedBloc does not collect or store any PII information. UnitedBloc does use IP addresses and transaction requests solely for service management purposes. Performance measurements such as rate limiting and routing rules require the analysis of IP addresses and response time measurements require the analysis of transaction requests. UnitedBloc does not and will never use RPC requests to front run transactions."},{url:"https://moonbeam.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://rpc.ankr.com/moonbeam",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://1rpc.io/glmr",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://moonbeam-rpc.dwellir.com",tracking:"limited",trackingDetails:"Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy"},{url:"wss://moonbeam-rpc.dwellir.com",tracking:"limited",trackingDetails:"Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy"},{url:"https://endpoints.omniatech.io/v1/moonbeam/mainnet/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://moonbeam-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://moonbeam-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://wss.api.moonbeam.network"},{url:"wss://moonbeam.public.blastapi.io"},{url:"https://moonbeam.unitedbloc.com"},{url:"wss://moonbeam.unitedbloc.com"},{url:"https://moonbeam.drpc.org"},{url:"wss://moonbeam.drpc.org"}],1285:[{url:"wss://moonriver.api.onfinality.io/public-ws",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://moonriver.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://moonriver.unitedbloc.com:2000",tracking:"yes",trackingDetails:"UnitedBloc does not collect or store any PII information. UnitedBloc does use IP addresses and transaction requests solely for service management purposes. Performance measurements such as rate limiting and routing rules require the analysis of IP addresses and response time measurements require the analysis of transaction requests. UnitedBloc does not and will never use RPC requests to front run transactions."},{url:"wss://moonriver.unitedbloc.com:2001",tracking:"yes",trackingDetails:"UnitedBloc does not collect or store any PII information. UnitedBloc does use IP addresses and transaction requests solely for service management purposes. Performance measurements such as rate limiting and routing rules require the analysis of IP addresses and response time measurements require the analysis of transaction requests. UnitedBloc does not and will never use RPC requests to front run transactions."},{url:"https://moonriver.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://moonriver-rpc.dwellir.com",tracking:"limited",trackingDetails:"Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy"},{url:"wss://moonriver-rpc.dwellir.com",tracking:"limited",trackingDetails:"Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy"},{url:"https://moonriver-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://moonriver-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://rpc.api.moonriver.moonbeam.network"},{url:"wss://wss.api.moonriver.moonbeam.network"},{url:"wss://moonriver.public.blastapi.io"},{url:"https://moonriver.unitedbloc.com"},{url:"wss://moonriver.unitedbloc.com"},{url:"https://moonriver.drpc.org"},{url:"wss://moonriver.drpc.org"}],1287:[{url:"https://rpc.testnet.moonbeam.network"},{url:"https://moonbase.unitedbloc.com:1000",tracking:"yes",trackingDetails:"UnitedBloc does not collect or store any PII information. UnitedBloc does use IP addresses and transaction requests solely for service management purposes. Performance measurements such as rate limiting and routing rules require the analysis of IP addresses and response time measurements require the analysis of transaction requests. UnitedBloc does not and will never use RPC requests to front run transactions."},{url:"wss://moonbase.unitedbloc.com:1001",tracking:"yes",trackingDetails:"UnitedBloc does not collect or store any PII information. UnitedBloc does use IP addresses and transaction requests solely for service management purposes. Performance measurements such as rate limiting and routing rules require the analysis of IP addresses and response time measurements require the analysis of transaction requests. UnitedBloc does not and will never use RPC requests to front run transactions."},{url:"https://moonbase-alpha.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://moonbeam-alpha.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"wss://moonbeam-alpha.api.onfinality.io/public-ws",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://rpc.api.moonbase.moonbeam.network"},{url:"wss://wss.api.moonbase.moonbeam.network"},{url:"wss://moonbase-alpha.public.blastapi.io"},{url:"https://moonbase-rpc.dwellir.com"},{url:"wss://moonbase-rpc.dwellir.com"},{url:"https://moonbase.unitedbloc.com"},{url:"wss://moonbase.unitedbloc.com"},{url:"https://moonbase-alpha.drpc.org"},{url:"wss://moonbase-alpha.drpc.org"}],1288:[{url:"https://rpc.api.moonrock.moonbeam.network"},{url:"wss://wss.api.moonrock.moonbeam.network"}],1291:[{url:"https://json-rpc.testnet.swisstronik.com"}],1311:[{url:"https://test.doschain.com/jsonrpc"}],1313:[{url:"https://rpc.jaihochain.com"}],1314:[{url:"https://rpc.alyxchain.com"}],1319:[{url:"https://aia-dataseed1.aiachain.org"},{url:"https://aia-dataseed2.aiachain.org"},{url:"https://aia-dataseed3.aiachain.org"},{url:"https://aia-dataseed4.aiachain.org"}],1320:[{url:"https://aia-dataseed1-testnet.aiachain.org"}],1328:[{url:"https://evm-rpc-testnet.sei-apis.com"},{url:"wss://evm-ws-testnet.sei-apis.com"}],1329:[{url:"https://evm-rpc.sei-apis.com"},{url:"wss://evm-ws.sei-apis.com"}],1337:[{url:"http://127.0.0.1:8545"}],1338:[{url:"https://rpc.atlantischain.network"},{url:"https://elysium-test-rpc.vulcanforged.com"}],1339:[{url:"https://rpc.elysiumchain.tech"},{url:"https://rpc.elysiumchain.us"}],1343:[{url:"https://subnets.avax.network/blitz/testnet/rpc"}],1353:[{url:"https://xapi.cicscan.com"}],1369:[{url:"https://mainnet.zakumi.io"}],1370:[{url:"https://blockchain.ramestta.com"},{url:"https://blockchain2.ramestta.com"}],1377:[{url:"https://testnet.ramestta.com"}],1379:[{url:"https://rpc-api.kalarchain.tech"}],1388:[{url:"https://mainnet-rpc.amstarscan.com"}],1392:[{url:"https://rpc.modchain.net/blockchain.joseon.com/rpc"}],1433:[{url:"https://rpc.rikscan.com"}],1440:[{url:"https://beta.mainnet.livingassets.io/rpc",tracking:"limited",trackingDetails:"The Living Assets network does not store any personal data provided by its users. The network solely communicates on-chain signatures generated by web3 compatible wallets. However, it is possible that clients utilizing the network may necessitate supplementary information from their users to fulfill Know Your Customer obligations. In such cases, explicit consent from the users is mandatory, following standard procedures."},{url:"https://gamma.mainnet.livingassets.io/rpc",tracking:"limited",trackingDetails:"The Living Assets network does not store any personal data provided by its users. The network solely communicates on-chain signatures generated by web3 compatible wallets. However, it is possible that clients utilizing the network may necessitate supplementary information from their users to fulfill Know Your Customer obligations. In such cases, explicit consent from the users is mandatory, following standard procedures."}],1442:[{url:"https://api.zan.top/node/v1/polygonzkevm/testnet/public",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"},{url:"https://polygon-zkevm-testnet.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://rpc.public.zkevm-test.net"},{url:"https://polygon-zkevm-testnet.drpc.org"},{url:"wss://polygon-zkevm-testnet.drpc.org"}],1452:[{url:"https://rpc.giltestnet.com"}],1453:[{url:"https://istanbul-rpc.metachain.dev"}],1455:[{url:"https://mainnet-rpc.ctexscan.com"}],1456:[{url:"https://mainnet-rpc.zkbase.app"}],1490:[{url:"https://rpc.vitruveo.xyz"}],1499:[{url:"https://rpc-testnet.idos.games"}],1501:[{url:"https://rpc-canary-1.bevm.io"},{url:"https://rpc-canary-2.bevm.io"}],1506:[{url:"https://mainnet.sherpax.io/rpc"}],1507:[{url:"https://sherpax-testnet.chainx.org/rpc"}],1515:[{url:"https://beagle.chat/eth"}],1559:[{url:"https://rpc.tenet.org"},{url:"https://tenet-evm.publicnode.com"},{url:"wss://tenet-evm.publicnode.com"}],1570:[{url:"https://testnet-rpc1.starworksglobal.com"}],1578:[{url:"https://rpc.starworksglobal.com"}],1617:[{url:"https://rpc.etins.org"}],1618:[{url:"https://send.catechain.com"}],1620:[{url:"https://rpc.atheios.org"}],1625:[{url:"https://rpc.gravity.xyz"}],1648:[{url:"https://mainnet.pivotalprotocol.com"}],1657:[{url:"https://dataseed1.btachain.com"}],1663:[{url:"https://gobi-rpc.horizenlabs.io/ethv1"},{url:"https://rpc.ankr.com/horizen_gobi_testnet"}],1686:[{url:"https://testnet-rpc.mintchain.io"}],1687:[{url:"https://sepolia-testnet-rpc.mintchain.io"}],1688:[{url:"https://rpc.ludan.org"}],1701:[{url:"https://geth.anytype.io"}],1707:[{url:"https://rpc.blockchain.or.th"}],1708:[{url:"https://rpc.testnet.blockchain.or.th"}],1717:[{url:"https://mainnet.doric.network"}],1718:[{url:"https://palette-rpc.com:22000"}],1729:[{url:"https://rpc.reya.network"},{url:"wss://ws.reya.network"}],1740:[{url:"https://testnet.rpc.metall2.com"}],1750:[{url:"https://rpc.metall2.com"}],1773:[{url:"https://tea.mining4people.com/rpc"},{url:"http://172.104.194.36:8545"}],1777:[{url:"https://rpc.gaussgang.com"}],1789:[{url:"https://sepolia-rpc.zkbase.app"}],1804:[{url:"https://cacib-saturn-test.francecentral.cloudapp.azure.com"},{url:"wss://cacib-saturn-test.francecentral.cloudapp.azure.com:9443"}],1807:[{url:"https://rabbit.analog-rpc.com"}],1811:[{url:"https://testnet-evm.lif3.com"}],1818:[{url:"https://http-mainnet.cube.network"},{url:"wss://ws-mainnet.cube.network"},{url:"https://http-mainnet-sg.cube.network"},{url:"wss://ws-mainnet-sg.cube.network"},{url:"https://http-mainnet-us.cube.network"},{url:"wss://ws-mainnet-us.cube.network"}],1819:[{url:"https://http-testnet.cube.network"},{url:"wss://ws-testnet.cube.network"},{url:"https://http-testnet-sg.cube.network"},{url:"wss://ws-testnet-sg.cube.network"},{url:"https://http-testnet-jp.cube.network"},{url:"wss://ws-testnet-jp.cube.network"},{url:"https://http-testnet-us.cube.network"},{url:"wss://ws-testnet-us.cube.network"}],1821:[{url:"https://mainnet-data.rubychain.io"},{url:"https://mainnet.rubychain.io"}],1856:[{url:"rpcWorking:false"},{url:"https://tsfapi.europool.me"}],1875:[{url:"https://rpc.whitechain.io"}],1881:[{url:"https://rpc.cartenz.works",tracking:"none",trackingDetails:"We do not collect any personal data from our users. Our platform is built on blockchain technology, which ensures that all transactions are recorded on a public ledger that is accessible to all users. However, this information is anonymous and cannot be linked to any specific individual. https://docs.gitshock.com/users-guide/privacy-policy"}],1890:[{url:"https://replicator.phoenix.lightlink.io/rpc/v1"}],1891:[{url:"https://replicator.pegasus.lightlink.io/rpc/v1"}],1898:[{url:"http://rpc.boyanet.org:8545"},{url:"ws://rpc.boyanet.org:8546"}],1899:[{url:"https://layer2.redefi.world"}],1904:[{url:"https://rpc.sportschainnetwork.xyz"}],1907:[{url:"https://rpc.bitci.com"}],1908:[{url:"https://testnet.bitcichain.com"}],1909:[{url:"https://marklechain-rpc.merklescan.com"}],1911:[{url:"https://rpc.scalind.com"}],1912:[{url:"https://testnet-rchain.rubychain.io"}],1918:[{url:"https://testnet.crescdi.pub.ro"}],1945:[{url:"https://rpc-testnet.onuschain.io"}],1951:[{url:"https://mainnet.d-chain.network/ext/bc/2ZiR1Bro5E59siVuwdNuRFzqL95NkvkbzyLBdrsYR9BLSHV7H4/rpc"}],1953:[{url:"https://rpc0-testnet.selendra.org"},{url:"https://rpc1-testnet.selendra.org"}],1954:[{url:"https://rpc.dexilla.com"}],1956:[{url:"https://rpc-testnet.aiw3.io"}],1961:[{url:"https://rpc0.selendra.org"},{url:"https://rpc1.selendra.org"}],1967:[{url:"https://rpc.metatime.com/eleanor"},{url:"wss://ws.metatime.com/eleanor"}],1969:[{url:"https://testnetrpc.scschain.com"}],1970:[{url:"https://rpc.scschain.com"}],1971:[{url:"https://1971.network/atlr"},{url:"wss://1971.network/atlr"}],1972:[{url:"https://rpc2.redecoin.eu"}],1975:[{url:"https://rpc.onuschain.io"},{url:"wss://ws.onuschain.io"}],1984:[{url:"https://testnet.eurus.network"}],1985:[{url:"http://rpc.satosh.ie"}],1986:[{url:"http://testnet.satosh.ie"}],1987:[{url:"https://jsonrpc.egem.io/custom"}],1992:[{url:"https://rpc.hubble.exchange"},{url:"wss://ws-rpc.hubble.exchange"}],1993:[{url:"https://sepolia.b3.fun"}],1994:[{url:"https://main.ekta.io"}],1995:[{url:"https://testnet.edexa.network/rpc"},{url:"https://io-dataseed1.testnet.edexa.io-market.com/rpc"}],1996:[{url:"https://mainnet.sanko.xyz"}],1997:[{url:"https://rpc.kyotochain.io"}],1998:[{url:"https://rpc.testnet.kyotoprotocol.io:8545"}],2e3:[{url:"https://rpc.dogechain.dog"},{url:"https://rpc-us.dogechain.dog"},{url:"https://rpc-sg.dogechain.dog"},{url:"https://rpc.dogechain.dog"},{url:"https://rpc01-sg.dogechain.dog"},{url:"https://rpc02-sg.dogechain.dog"},{url:"https://rpc03-sg.dogechain.dog"},{url:"https://dogechain.ankr.com",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://dogechain-sj.ankr.com",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://rpc.ankr.com/dogechain"}],2001:[{url:"https://rpc-mainnet-cardano-evm.c1.milkomeda.com"},{url:"wss://rpc-mainnet-cardano-evm.c1.milkomeda.com"}],2002:[{url:"https://rpc-mainnet-algorand-rollup.a1.milkomeda.com"},{url:"wss://rpc-mainnet-algorand-rollup.a1.milkomeda.com/ws"}],2004:[{url:"http://77.237.237.69:9933"}],2013:[{url:"https://polytopia.org:8545"}],2014:[{url:"https://rpc-testnet.nowscan.io"}],2016:[{url:"https://eu-rpc.mainnetz.io"},{url:"https://mainnet-rpc.mainnetz.io"}],2017:[{url:"https://rpc.telcoin.network"},{url:"https://adiri.tel"},{url:"https://node1.telcoin.network"},{url:"https://node2.telcoin.network"},{url:"https://node3.telcoin.network"},{url:"https://node4.telcoin.network"}],2018:[{url:"https://rpc.dev.publicmint.io:8545"}],2019:[{url:"https://rpc.tst.publicmint.io:8545"}],2020:[{url:"https://rpc.publicmint.io:8545"}],2021:[{url:"https://mainnet2.edgewa.re/evm"},{url:"https://mainnet3.edgewa.re/evm"},{url:"https://edgeware-evm.jelliedowl.net"},{url:"https://edgeware.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://edgeware-evm0.jelliedowl.net"},{url:"https://edgeware-evm1.jelliedowl.net"},{url:"https://edgeware-evm2.jelliedowl.net"},{url:"https://edgeware-evm3.jelliedowl.net"},{url:"wss://edgeware.jelliedowl.net"},{url:"wss://edgeware-rpc0.jelliedowl.net"},{url:"wss://edgeware-rpc1.jelliedowl.net"},{url:"wss://edgeware-rpc2.jelliedowl.net"},{url:"wss://edgeware-rpc3.jelliedowl.net"}],2022:[{url:"https://beresheet-evm.jelliedowl.net"},{url:"wss://beresheet.jelliedowl.net"}],2023:[{url:"https://test-taycan.hupayx.io"}],2024:[{url:"https://saturn-rpc.swanchain.io"}],2025:[{url:"https://mainnet.rangersprotocol.com/api/jsonrpc"}],2026:[{url:"https://rpc.edgeless.network/http"}],2031:[{url:"https://fullnode.centrifuge.io"},{url:"wss://fullnode.centrifuge.io"},{url:"https://centrifuge-parachain.api.onfinality.io/public"},{url:"wss://centrifuge-parachain.api.onfinality.io/public-ws"},{url:"https://centrifuge-rpc.dwellir.com"},{url:"wss://centrifuge-rpc.dwellir.com"},{url:"https://rpc-centrifuge.luckyfriday.io"},{url:"wss://rpc-centrifuge.luckyfriday.io"}],2032:[{url:"wss://fullnode.catalyst.cntrfg.com"}],2037:[{url:"https://subnets.avax.network/kiwi/testnet/rpc"}],2038:[{url:"https://subnets.avax.network/shrapnel/testnet/rpc"}],2039:[{url:"https://rpc.alephzero-testnet.gelato.digital"},{url:"wss://rpc.alephzero-testnet.gelato.digital"}],2040:[{url:"https://rpc.vanarchain.com"},{url:"wss://ws.vanarchain.com"}],2043:[{url:"https://astrosat.origintrail.network"},{url:"wss://parachain-rpc.origin-trail.network"}],2044:[{url:"https://subnets.avax.network/shrapnel/mainnet/rpc"}],2047:[{url:"https://web3-rpc-mesos.thestratos.org"}],2048:[{url:"https://web3-rpc.thestratos.org"}],2049:[{url:"https://msc-rpc.movoscan.com"},{url:"https://msc-rpc.movochain.org"},{url:"https://msc-rpc.movoswap.com"}],2077:[{url:"http://rpc.qkacoin.org:8548"},{url:"https://rpc.qkacoin.org"}],2088:[{url:"wss://fullnode.altair.centrifuge.io"},{url:"wss://altair.api.onfinality.io/public-ws"}],2100:[{url:"https://api.ecoball.org/ecoball"}],2101:[{url:"https://api.ecoball.org/espuma"}],2109:[{url:"https://rpc.exosama.com"},{url:"wss://rpc.exosama.com"}],2112:[{url:"https://rpc.uchain.link"}],2121:[{url:"https://rpc1.catenarpc.com"}],2122:[{url:"https://rpc.metaplayer.one"}],2124:[{url:"https://rpc-dubai.mp1network.com"}],2136:[{url:"https://test-market.bigsb.network"},{url:"wss://test-market.bigsb.network"}],2137:[{url:"https://market.bigsb.io"},{url:"wss://market.bigsb.io"}],2138:[{url:"https://rpc.public-2138.defi-oracle.io"},{url:"wss://rpc.public-2138.defi-oracle.io"}],2140:[{url:"https://rpc.onenesslabs.io"}],2141:[{url:"https://rpc.testnet.onenesslabs.io"}],2151:[{url:"https://mainnet.bosagora.org"},{url:"https://rpc.bosagora.org"}],2152:[{url:"https://rpc-mainnet.findora.org"}],2153:[{url:"https://prod-testnet.prod.findora.org:8545"}],2154:[{url:"https://prod-forge.prod.findora.org:8545"}],2162:[{url:"https://rpc.kanda.animechain.ai"}],2199:[{url:"https://rpc.moonsama.com"},{url:"wss://rpc.moonsama.com/ws"}],2202:[{url:"https://rpc.antofy.io"}],2203:[{url:"https://connect.bitcoinevm.com"}],2213:[{url:"https://seed4.evanesco.org:8546"}],2221:[{url:"https://evm.testnet.kava.io"},{url:"https://kava-evm-testnet.rpc.thirdweb.com"},{url:"wss://wevm.testnet.kava.io"},{url:"https://kava-testnet.drpc.org"},{url:"wss://kava-testnet.drpc.org"}],2222:[{url:"https://evm.kava.io"},{url:"https://kava.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://kava-evm-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://kava-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"wss://kava-evm-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://evm.kava.chainstacklabs.com",tracking:"yes",trackingDetails:"We process certain personal data to provide you with the core functionality of our Services. Specifically, when you are: Using the Chainstack Console, we process your name, surname, email address (your account identifier), organization name, IP address, all HTTP headers (most importantly User-Agent), cookies; Using the Chainstack Blockchain infrastructure, we process nodes' token stored in Chainstack Vault, IP address and HTTP headers, request body, API token in Chainstack Vault.https://chainstack.com/privacy/"},{url:"wss://wevm.kava.chainstacklabs.com",tracking:"yes",trackingDetails:"We process certain personal data to provide you with the core functionality of our Services. Specifically, when you are: Using the Chainstack Console, we process your name, surname, email address (your account identifier), organization name, IP address, all HTTP headers (most importantly User-Agent), cookies; Using the Chainstack Blockchain infrastructure, we process nodes' token stored in Chainstack Vault, IP address and HTTP headers, request body, API token in Chainstack Vault.https://chainstack.com/privacy/"},{url:"https://rpc.ankr.com/kava_evm",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://evm.kava-rpc.com",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://kava-rpc.gateway.pokt.network"},{url:"https://kava-evm.rpc.thirdweb.com"},{url:"wss://wevm.kava.io"},{url:"wss://wevm.kava-rpc.com"},{url:"https://kava.drpc.org"},{url:"wss://kava.drpc.org"}],2223:[{url:"https://bc.vcex.xyz"}],2241:[{url:"https://erpc-krest.peaq.network"},{url:"https://krest.unitedbloc.com"}],2300:[{url:"https://rpc.bombchain.com"}],2306:[{url:"https://greendinoswap.com"}],2311:[{url:"https://vesuvius-rpc.litprotocol.com"}],2323:[{url:"https://data-testnet-v1.somanetwork.io",tracking:"yes",trackingDetails:"At SomaNetwork Mainnet Or Testnet, we are committed to protecting your privacy and ensuring the security of your data. This privacy policy summary outlines how we handle and protect your personal information when using our SomaNetwork Mainnet and Testnet services. Please note that this is a summary, and the full privacy policy should be reviewed for complete details soma. 1.We will collect your mobile device information, operation records, transaction records, wallet address and other personal information. https://soma-network.gitbook.io/soma-network/privacy-policy"},{url:"https://block-testnet-v1.somanetwork.io",tracking:"yes",trackingDetails:"At SomaNetwork Mainnet Or Testnet, we are committed to protecting your privacy and ensuring the security of your data. This privacy policy summary outlines how we handle and protect your personal information when using our SomaNetwork Mainnet and Testnet services. Please note that this is a summary, and the full privacy policy should be reviewed for complete details soma. 1.We will collect your mobile device information, operation records, transaction records, wallet address and other personal information. https://soma-network.gitbook.io/soma-network/privacy-policy"},{url:"https://testnet-au-server-2.somanetwork.io"},{url:"https://testnet-au-server-1.somanetwork.io"},{url:"https://testnet-sg-server-1.somanetwork.io"},{url:"https://testnet-sg-server-2.somanetwork.io"}],2330:[{url:"https://rpc0.altcoinchain.org/rpc"}],2331:[{url:"https://rpc.testnet.rss3.io"}],2332:[{url:"https://data-mainnet-v1.somanetwork.io",tracking:"yes",trackingDetails:"At SomaNetwork Mainnet Or Testnet, we are committed to protecting your privacy and ensuring the security of your data. This privacy policy summary outlines how we handle and protect your personal information when using our SomaNetwork Mainnet and Testnet services. Please note that this is a summary, and the full privacy policy should be reviewed for complete details soma. 1.We will collect your mobile device information, operation records, transaction records, wallet address and other personal information. https://soma-network.gitbook.io/soma-network/privacy-policy"},{url:"https://block-mainnet-v1.somanetwork.io",tracking:"yes",trackingDetails:"At SomaNetwork Mainnet Or Testnet, we are committed to protecting your privacy and ensuring the security of your data. This privacy policy summary outlines how we handle and protect your personal information when using our SomaNetwork Mainnet and Testnet services. Please note that this is a summary, and the full privacy policy should be reviewed for complete details soma. 1.We will collect your mobile device information, operation records, transaction records, wallet address and other personal information. https://soma-network.gitbook.io/soma-network/privacy-policy"},{url:"https://id-mainnet.somanetwork.io"},{url:"https://hk-mainnet.somanetwork.io"},{url:"https://sg-mainnet.somanetwork.io"}],2340:[{url:"wss://testnet-rpc.atleta.network:9944"},{url:"https://testnet-rpc.atleta.network:9944"},{url:"https://testnet-rpc.atleta.network"}],2342:[{url:"https://rpc.omniaverse.io"}],2358:[{url:"https://api.sepolia.kroma.network"}],2370:[{url:"https://evm-testnet.nexis.network"}],2399:[{url:"https://bombchain-testnet.ankr.com/bas_full_rpc_1"}],2400:[{url:"https://rpc.tcgverse.xyz"}],2410:[{url:"https://rpc.karak.network"}],2415:[{url:"https://mainnet.xo-dex.com/rpc"},{url:"https://xo-dex.io"}],2425:[{url:"https://rpc-mainnet.kinggamer.org"}],2442:[{url:"https://rpc.cardona.zkevm-rpc.com"}],2458:[{url:"https://rpc-testnet.hybridchain.ai",tracking:"yes",trackingDetails:"HybridChain may automatically collect information regarding your computer hardware and software. This data can encompass details like your IP address, browser type, domain names, access times, and referring website addresses. This collection is in line with HybridChain's privacy policy and aims to optimize service provision and enhance user experience.https://docs.hybridchain.ai/privacy-policy"}],2468:[{url:"https://coredata-mainnet.hybridchain.ai",tracking:"yes",trackingDetails:"HybridChain may automatically collect information regarding your computer hardware and software. This data can encompass details like your IP address, browser type, domain names, access times, and referring website addresses. This collection is in line with HybridChain's privacy policy and aims to optimize service provision and enhance user experience.https://docs.hybridchain.ai/privacy-policy"},{url:"https://rpc-mainnet.hybridchain.ai",tracking:"yes",trackingDetails:"HybridChain may automatically collect information regarding your computer hardware and software. This data can encompass details like your IP address, browser type, domain names, access times, and referring website addresses. This collection is in line with HybridChain's privacy policy and aims to optimize service provision and enhance user experience.https://docs.hybridchain.ai/privacy-policy"}],2484:[{url:"https://rpc-nebulas-testnet.uniultra.xyz"}],2522:[{url:"https://rpc.testnet.frax.com"}],2525:[{url:"https://mainnet.rpc.inevm.com/http"}],2559:[{url:"https://www.kortho-chain.com"}],2569:[{url:"https://api.techpay.io"}],2606:[{url:"https://pocrnet.westeurope.cloudapp.azure.com/http"},{url:"wss://pocrnet.westeurope.cloudapp.azure.com/ws"}],2611:[{url:"https://dataseed2.redlightscan.finance"}],2612:[{url:"https://api.ezchain.com/ext/bc/C/rpc"}],2613:[{url:"https://testnet-api.ezchain.com/ext/bc/C/rpc"}],2625:[{url:"https://rpc-testnet.whitechain.io"}],2648:[{url:"https://testnet-rpc.ailayer.xyz"},{url:"wss://testnet-rpc.ailayer.xyz"}],2649:[{url:"https://mainnet-rpc.ailayer.xyz"},{url:"wss://mainnet-rpc.ailayer.xyz"}],2710:[{url:"https://rpc-testnet.morphl2.io"}],2718:[{url:"https://rpc.klaos.laosfoundation.io"},{url:"wss://rpc.klaos.laosfoundation.io"}],2730:[{url:"https://xr-sepolia-testnet.rpc.caldera.xyz/http"}],2731:[{url:"https://testnet-rpc.timenetwork.io"}],2748:[{url:"https://rpc.nanon.network"}],2777:[{url:"https://rpc.gmnetwork.ai"}],2810:[{url:"https://rpc-quicknode-holesky.morphl2.io"},{url:"wss://rpc-quicknode-holesky.morphl2.io"},{url:"https://rpc-holesky.morphl2.io"}],2882:[{url:"https://node.chips.ooo/wasp/api/v1/chains/iota1pp3d3mnap3ufmgqnjsnw344sqmf5svjh26y2khnmc89sv6788y3r207a8fn/evm"}],2907:[{url:"https://rpc.eluxscan.com"}],2911:[{url:"https://rpc.hychain.com/http"}],2941:[{url:"https://testnet-chain.xenonchain.com"},{url:"https://testnet-dev.xenonchain.com"}],2999:[{url:"https://mainnet.bityuan.com/eth"}],3001:[{url:"https://nikau.centrality.me/public"}],3003:[{url:"https://rpc.canxium.org"}],3011:[{url:"https://api.mainnet.playa3ull.games"}],3031:[{url:"https://rpc-testnet.orlchain.com"}],3033:[{url:"https://testnet.rebus.money/rpc"}],3068:[{url:"https://public-01.mainnet.bifrostnetwork.com/rpc"},{url:"https://public-02.mainnet.bifrostnetwork.com/rpc"}],3084:[{url:"https://subnets.avax.network/xlnetworkt/testnet/rpc"},{url:"wss://subnets.avax.network/xlnetworkt/testnet/ws"}],3100:[{url:"https://fraa-flashbox-2800-rpc.a.stagenet.tanssi.network"},{url:"wss://fraa-flashbox-2800-rpc.a.stagenet.tanssi.network"}],3102:[{url:"https://fraa-dancebox-3050-rpc.a.dancebox.tanssi.network"},{url:"wss://fraa-dancebox-3050-rpc.a.dancebox.tanssi.network"}],3109:[{url:"https://alpha-rpc-node-http.svmscan.io"}],3110:[{url:"https://test-rpc-node-http.svmscan.io"}],3269:[{url:"https://rpcmain.arabianchain.org"}],3270:[{url:"https://rpctestnet.arabianchain.org"}],3306:[{url:"https://dev-rpc.debounce.network"}],3331:[{url:"https://rpc-testnet.zcore.cash"}],3333:[{url:"http://testnet.ethstorage.io:9540"}],3334:[{url:"https://galileo.web3q.io:8545"}],3335:[{url:"http://mainnet.ethstorage.io:9540"}],3338:[{url:"https://peaq.api.onfinality.io/public"},{url:"https://peaq-rpc.dwellir.com"},{url:"https://peaq-rpc.publicnode.com"},{url:"https://evm.peaq.network"}],3400:[{url:"https://rpc.paribu.network"}],3424:[{url:"https://rpc.evolveblockchain.io"}],3434:[{url:"https://testnet-rpc.securechain.ai"}],3456:[{url:"https://testnet-rpc.layeredge.io"}],3490:[{url:"https://gtc-dataseed.gtcscan.io"}],3500:[{url:"https://rpc.testnet.paribuscan.com"}],3501:[{url:"https://rpc.jfinchain.com"},{url:"https://rpc.jfinchain.com",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"}],3601:[{url:"https://eth-rpc-api.pandoproject.org/rpc"}],3602:[{url:"https://testnet.ethrpc.pandoproject.org/rpc"}],3630:[{url:"https://mainnet-rpc.tycoscan.com"}],3636:[{url:"https://node.botanixlabs.dev"}],3637:[{url:"https://rpc.btxtestchain.com"}],3639:[{url:"https://rpc.ichainscan.com"}],3645:[{url:"https://istanbul.ichainscan.com"}],3666:[{url:"https://rpc.jnsdao.com:8503"}],3690:[{url:"https://rpc1.bittexscan.info"},{url:"https://rpc2.bittexscan.info"}],3693:[{url:"https://rpc.empirenetwork.io"}],3698:[{url:"https://testnet-rpc.senjepowersscan.com"}],3699:[{url:"https://rpc.senjepowersscan.com"}],3737:[{url:"https://rpc.crossbell.io"}],3776:[{url:"https://rpc.startale.com/astar-zkevm"}],3797:[{url:"https://elves-core1.alvey.io"},{url:"https://elves-core2.alvey.io"},{url:"https://elves-core3.alvey.io"}],3799:[{url:"https://testnet-rpc.tangle.tools"},{url:"https://testnet-rpc-archive.tangle.tools"},{url:"wss://testnet-rpc.tangle.tools"},{url:"wss://testnet-rpc-archive.tangle.tools"}],3885:[{url:"https://rpc-zkevm-ghostrider.thefirechain.com"}],3888:[{url:"https://rpc.kalychain.io/rpc"}],3889:[{url:"https://testnetrpc.kalychain.io/rpc"}],3912:[{url:"https://www.dracscan.com/rpc"}],3939:[{url:"https://test.doschain.com"}],3966:[{url:"https://api.dynoprotocol.com"}],3967:[{url:"https://tapi.dynoprotocol.com"}],3993:[{url:"https://rpc-testnet.apexlayer.xyz"}],3999:[{url:"https://mainnet.yuan.org/eth"}],4e3:[{url:"https://node1.ozonechain.io"}],4001:[{url:"https://rpc-testnet.peperium.io"}],4002:[{url:"https://rpc.testnet.fantom.network"},{url:"https://endpoints.omniatech.io/v1/fantom/testnet/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://rpc.ankr.com/fantom_testnet",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://fantom-testnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://fantom-testnet-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://fantom-testnet-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://fantom.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://fantom-testnet.drpc.org"},{url:"wss://fantom-testnet.drpc.org"}],4003:[{url:"https://x1-fastnet.xen.network"}],4040:[{url:"https://rpc-dev.carbonium.network"},{url:"https://server-testnet.carbonium.network"}],4048:[{url:"https://rpc.gpu.net"}],4058:[{url:"https://rpc1.ocean.bahamutchain.com"}],4061:[{url:"https://rpc.n3.nahmii.io"}],4062:[{url:"https://rpc.testnet.nahmii.io"}],4078:[{url:"https://muster.alt.technology"}],4080:[{url:"https://rpc.tobescan.com"}],4090:[{url:"https://rpc1.oasis.bahamutchain.com"}],4096:[{url:"https://testnet-rpc.bitindi.org"}],4099:[{url:"https://mainnet-rpc.bitindi.org"}],4102:[{url:"https://eth-ds.testnet.aioz.network"}],4139:[{url:"https://humans-testnet-evm.itrocket.net",tracking:"none",trackingDetails:"We do not track, store or process any personal data. You can check our privacy policy here: https://itrocket.net/privacy-policy/"},{url:"https://evm-rpc.testnet.humans.zone"}],4141:[{url:"https://testnet-rpc.tipboxcoin.net"}],4157:[{url:"https://rpc.testnet.ms"}],4162:[{url:"https://rpc.sx-rollup.gelato.digital"}],4181:[{url:"https://rpc1.phi.network"},{url:"https://rpc2.phi.network"}],4200:[{url:"https://rpc.merlinchain.io"},{url:"https://merlin-mainnet-enterprise.unifra.io"},{url:"https://rpc-merlin.rockx.com"}],4201:[{url:"https://rpc.testnet.lukso.network"},{url:"wss://ws-rpc.testnet.lukso.network"}],4202:[{url:"https://rpc.sepolia-api.lisk.com"}],4242:[{url:"https://rpc.chain.nexi.technology"},{url:"https://chain.nexilix.com"},{url:"https://chain.nexi.evmnode.online"}],4243:[{url:"https://chain.nexiv2.nexilix.com"},{url:"https://rpc.chainv1.nexi.technology"}],4337:[{url:"https://build.onbeam.com/rpc"},{url:"wss://build.onbeam.com/ws"},{url:"https://subnets.avax.network/beam/mainnet/rpc"},{url:"wss://subnets.avax.network/beam/mainnet/ws"}],4400:[{url:"https://rpc.creditsmartchain.com"}],4444:[{url:"https://janus.htmlcoin.dev/janus"},{url:"https://janus.htmlcoin.com/api"}],4460:[{url:"https://l2-orderly-l2-4460-sepolia-8tc3sd7dvy.t.conduit.xyz"}],4544:[{url:"https://testnet.emoney.network"}],4613:[{url:"https://rpc.verylabs.io"}],4653:[{url:"https://chain-rpc.gold.dev"}],4689:[{url:"https://rpc.ankr.com/iotex",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://babel-api.mainnet.iotex.io"},{url:"https://babel-api.mainnet.iotex.one"},{url:"https://babel-api.fastblocks.io"},{url:"https://iotexrpc.com",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://iotex-network.rpc.thirdweb.com",tracking:"yes",trackingDetails:"Server logs automatically record information and details about your online interactions with us. For example, server logs may record information about your visit to our Site on a particular time and day and collect information such as your device ID and IP address.https://thirdweb.com/privacy"},{url:"https://iotex.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"}],4690:[{url:"https://babel-api.testnet.iotex.io"}],4759:[{url:"https://rpc.meversetestnet.io"}],4777:[{url:"https://testnet.blackfort.network/rpc"}],4893:[{url:"https://rpc.gcscan.io"}],4918:[{url:"https://rpc-evm-testnet.venidium.io"}],4919:[{url:"https://rpc.venidium.io"}],4999:[{url:"https://mainnet.blackfort.network/rpc"},{url:"https://mainnet-1.blackfort.network/rpc"},{url:"https://mainnet-2.blackfort.network/rpc"},{url:"https://mainnet-3.blackfort.network/rpc"}],5e3:[{url:"https://mantle-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://mantle-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://mantle-mainnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://mantle.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://rpc.ankr.com/mantle",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://1rpc.io/mantle",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://rpc.mantle.xyz"}],5001:[{url:"https://rpc.testnet.mantle.xyz"}],5002:[{url:"https://node0.treasurenet.io"},{url:"https://node1.treasurenet.io"},{url:"https://node2.treasurenet.io"},{url:"https://node3.treasurenet.io"}],5003:[{url:"https://rpc.sepolia.mantle.xyz"}],5005:[{url:"https://node0.testnet.treasurenet.io"},{url:"https://node1.testnet.treasurenet.io"},{url:"https://node2.testnet.treasurenet.io"},{url:"https://node3.testnet.treasurenet.io"}],5039:[{url:"https://subnets.avax.network/onigiri/testnet/rpc"}],5040:[{url:"https://subnets.avax.network/onigiri/mainnet/rpc"}],5051:[{url:"https://nollie-rpc.skatechain.org"}],5100:[{url:"https://rpc-testnet.syndicate.io"}],5101:[{url:"https://rpc-frame.syndicate.io"}],5102:[{url:"https://rpc-sic-testnet-zvr7tlkzsi.t.conduit.xyz"}],5103:[{url:"https://rpc-coordinape-testnet-vs9se3oc4v.t.conduit.xyz"}],5104:[{url:"https://rpc-charmverse-testnet-g6blnaebes.t.conduit.xyz"}],5105:[{url:"https://rpc-superloyalty-testnet-1m5gwjbsv1.t.conduit.xyz"}],5106:[{url:"https://rpc-azra-testnet-6hz86owb1n.t.conduit.xyz"}],5112:[{url:"https://rpc.ham.fun"}],5151:[{url:"https://testnet-rpc.mechain.tech"}],5165:[{url:"https://bahamut-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://bahamut-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://rpc1.bahamut.io"},{url:"https://rpc2.bahamut.io"},{url:"wss://ws1.sahara.bahamutchain.com"},{url:"wss://ws2.sahara.bahamutchain.com"}],5169:[{url:"https://rpc.main.smartlayer.network"}],5177:[{url:"https://mainnet-rpc.tlxscan.com"}],5197:[{url:"https://mainnet.eraswap.network"},{url:"https://rpc-mumbai.mainnet.eraswap.network"}],5234:[{url:"https://explorer-rpc-http.mainnet.stages.humanode.io"}],5315:[{url:"https://network.uzmigames.com.br"}],5317:[{url:"https://rpctest.optrust.io"}],5321:[{url:"https://rpc.testnet.itxchain.com"}],5333:[{url:"https://rpc1.netsbo.io"},{url:"https://rpc2.netsbo.io"}],5353:[{url:"https://nodetestnet-station-one.tritanium.network"},{url:"https://nodetestnet-station-two.tritanium.network"}],5372:[{url:"https://settlus-test-eth.settlus.io"}],5424:[{url:"https://mainnet.edexa.network/rpc"},{url:"https://mainnet.edexa.com/rpc"},{url:"https://io-dataseed1.mainnet.edexa.io-market.com/rpc"}],5439:[{url:"https://mainnet.egochain.org"}],5522:[{url:"https://testnet.vexascan.com/evmapi"}],5551:[{url:"https://l2.nahmii.io"}],5555:[{url:"https://rpc.chainverse.info"}],5611:[{url:"https://opbnb-testnet-rpc.bnbchain.org"},{url:"https://opbnb-testnet.nodereal.io/v1/64a9df0874fb4a93b9d0a3849de012d3"},{url:"wss://opbnb-testnet.nodereal.io/ws/v1/64a9df0874fb4a93b9d0a3849de012d3"},{url:"https://opbnb-testnet.nodereal.io/v1/e9a36765eb8a40b9bd12e680a1fd2bc5"},{url:"wss://opbnb-testnet.nodereal.io/ws/v1/e9a36765eb8a40b9bd12e680a1fd2bc5"},{url:"https://opbnb-testnet-rpc.publicnode.com"},{url:"wss://opbnb-testnet-rpc.publicnode.com"}],5615:[{url:"https://rpc-testnet.arcturuschain.io"}],5616:[{url:"http://185.99.196.3:8545"}],5656:[{url:"https://rpc-main1.qiblockchain.online"},{url:"https://rpc-main2.qiblockchain.online"}],5675:[{url:"https://rpctest.filenova.org"}],5678:[{url:"https://fraa-dancebox-3001-rpc.a.dancebox.tanssi.network"},{url:"wss://fraa-dancebox-3001-rpc.a.dancebox.tanssi.network"}],5700:[{url:"https://syscoin-tanenbaum-evm-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://syscoin-tanenbaum-evm-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://rollux.rpc.tanenbaum.io"},{url:"wss://rollux.rpc.tanenbaum.io/wss"},{url:"https://rpc.tanenbaum.io"},{url:"wss://rpc.tanenbaum.io/wss"},{url:"https://syscoin-tanenbaum-evm.publicnode.com"},{url:"wss://syscoin-tanenbaum-evm.publicnode.com"}],5729:[{url:"https://rpc-testnet.hika.network"}],5758:[{url:"https://testnet-rpc.satoshichain.io"}],5777:[{url:"https://127.0.0.1:7545"}],5845:[{url:"https://rpc.tangle.tools"},{url:"wss://rpc.tangle.tools"}],5851:[{url:"http://polaris1.ont.io:20339"},{url:"http://polaris2.ont.io:20339"},{url:"http://polaris3.ont.io:20339"},{url:"http://polaris4.ont.io:20339"},{url:"https://polaris1.ont.io:10339"},{url:"https://polaris2.ont.io:10339"},{url:"https://polaris3.ont.io:10339"},{url:"https://polaris4.ont.io:10339"}],5858:[{url:"https://rpc.cthscan.com"}],5869:[{url:"https://proxy.wegochain.io"},{url:"http://wallet.wegochain.io:7764"}],6e3:[{url:"https://fullnode-testnet.bouncebitapi.com"}],6001:[{url:"https://fullnode-mainnet.bouncebitapi.com"}],6065:[{url:"https://rpc-test.tresleches.finance"}],6066:[{url:"https://rpc.tresleches.finance"},{url:"https://rpc.treschain.io"}],6102:[{url:"https://testnet.cascadia.foundation"}],6118:[{url:"https://node-api.alp.uptn.io/v1/ext/rpc"}],6119:[{url:"https://node-api.uptn.io/v1/ext/rpc"}],6283:[{url:"https://rpc.laos.laosfoundation.io"},{url:"wss://rpc.laos.laosfoundation.io"}],6321:[{url:"https://jsonrpc.euphoria.aura.network"}],6322:[{url:"https://jsonrpc.aura.network"}],6363:[{url:"https://dsc-rpc.digitsoul.co.th"}],6398:[{url:"https://rpc.connext-sepolia.gelato.digital"}],6502:[{url:"https://peerpay.su.gy/p2p"}],6550:[{url:"https://testnetrpc.flamma.network"}],6552:[{url:"https://testnet-rpc.scolcoin.com"}],6565:[{url:"https://rpc-testnet-v1.foxchain.app"},{url:"https://rpc2-testnet-v1.foxchain.app"},{url:"https://rpc3-testnet-v1.foxchain.app"}],6626:[{url:"https://http-mainnet.chain.pixie.xyz"},{url:"wss://ws-mainnet.chain.pixie.xyz"}],6660:[{url:"https://testnet-rpc.latestcoin.io"}],6661:[{url:"https://rpc-mainnet.cybria.io"}],6666:[{url:"https://l2-rpc.cybascan.io"}],6678:[{url:"https://rpc1-mainnet.emc.network"}],6688:[{url:"https://iris-evm-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://iris-evm-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://evmrpc.irishub-1.irisnet.org"},{url:"https://iris-evm.publicnode.com"},{url:"wss://iris-evm.publicnode.com"}],6699:[{url:"https://rpc.oxscan.io"}],6701:[{url:"https://chain.paxb.io"}],6779:[{url:"https://rpc.compverse.io"},{url:"https://rpc-useast1.compverse.io"}],6789:[{url:"https://rpc-mainnet.goldsmartchain.com"}],6805:[{url:"https://racemainnet.io"}],6806:[{url:"https://racetestnet.io"}],6868:[{url:"https://rpc.poolsmobility.com"}],6969:[{url:"https://rpc.tombchain.com"}],6999:[{url:"https://seed0.polysmartchain.com"},{url:"https://seed1.polysmartchain.com"},{url:"https://seed2.polysmartchain.com"}],7e3:[{url:"https://zetachain-evm.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://zetachain-mainnet-archive.allthatnode.com:8545",tracking:"yes",trackingDetails:"In addition to the Personal Information, the Billing Information, and the Geolocational Information..., we automatically collect certain information when you use the Platform or Website: IP addresses, browser type and language...; information about a mobile device, including universally unique ID (“UUID”), platform type and version (e.g., iOS or Android), carrier and country location, hardware and processor information, and network type; and activity and usage information occurring via the Platform or Website.https://www.allthatnode.com/privacypolicy.dsrv"},{url:"wss://zetachain-mainnet-archive.allthatnode.com:8546",tracking:"yes",trackingDetails:"In addition to the Personal Information, the Billing Information, and the Geolocational Information..., we automatically collect certain information when you use the Platform or Website: IP addresses, browser type and language...; information about a mobile device, including universally unique ID (“UUID”), platform type and version (e.g., iOS or Android), carrier and country location, hardware and processor information, and network type; and activity and usage information occurring via the Platform or Website.https://www.allthatnode.com/privacypolicy.dsrv"},{url:"https://zeta.rpcgrid.com",tracking:"none",trackingDetails:"Only strictly functional data is automatically collected by the RPC. None of this data is directly exported or used for commercial purposes. https://rpcgrid.com/privacy-policy"},{url:"wss://zeta.rpcgrid.com",tracking:"none",trackingDetails:"Only strictly functional data is automatically collected by the RPC. None of this data is directly exported or used for commercial purposes. https://rpcgrid.com/privacy-policy"},{url:"https://zetachain-mainnet.g.allthatnode.com/archive/evm"},{url:"https://zeta-chain.drpc.org"},{url:"https://zetachain-mainnet.public.blastapi.io"},{url:"https://7000.rpc.thirdweb.com"}],7001:[{url:"https://zetachain-athens-evm.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://zetachain-testnet.public.blastapi.io"},{url:"https://zetachain-athens.g.allthatnode.com/archive/evm"},{url:"https://7001.rpc.thirdweb.com"},{url:"https://zeta-chain-testnet.drpc.org"}],7007:[{url:"https://rpc.bstchain.io"}],7027:[{url:"https://rpc.ella.network"}],7070:[{url:"https://planq-rpc.nodies.app"},{url:"https://jsonrpc.planq.nodestake.top"},{url:"https://evm-rpc.planq.network"}],7077:[{url:"https://evm-rpc-atlas.planq.network"}],7100:[{url:"https://rpc.numecrypto.com"}],7171:[{url:"https://connect.bit-rock.io"},{url:"https://brockrpc.io"}],7222:[{url:"https://evm-rpc.devnet-3.nibiru.fi"}],7244:[{url:"https://testnet-rpc.zeuschainscan.io"}],7300:[{url:"https://rpc-xpla-verse.xpla.dev"}],7331:[{url:"https://evm.klyntar.org/kly_evm_rpc"},{url:"https://evm.klyntarscan.org/kly_evm_rpc"}],7332:[{url:"https://eon-rpc.horizenlabs.io/ethv1"},{url:"https://rpc.ankr.com/horizen_eon"}],7341:[{url:"https://rpc.shyft.network"}],7484:[{url:"https://rpc.x.raba.app"},{url:"wss://rpc.x.raba.app/ws"}],7518:[{url:"https://rpc.meversemainnet.io"}],7560:[{url:"https://cyber.alt.technology"},{url:"wss://cyber-ws.alt.technology"},{url:"https://rpc.cyber.co"},{url:"wss://rpc.cyber.co"}],7575:[{url:"https://testnet.adilchain-rpc.io"}],7576:[{url:"https://adilchain-rpc.io"}],7668:[{url:"https://root.rootnet.live/archive"},{url:"wss://root.rootnet.live/archive/ws"}],7672:[{url:"https://porcini.rootnet.app/archive"},{url:"wss://porcini.rootnet.app/archive/ws"}],7700:[{url:"https://canto.gravitychain.io"},{url:"https://canto.evm.chandrastation.com"},{url:"https://jsonrpc.canto.nodestake.top"},{url:"https://canto.dexvaults.com"},{url:"wss://canto.gravitychain.io:8546"},{url:"wss://canto.dexvaults.com/ws"},{url:"https://canto-rpc.ansybl.io"},{url:"https://canto.slingshot.finance"},{url:"https://mainnode.plexnode.org:8545"}],7701:[{url:"https://testnet-archive.plexnode.wtf"}],7771:[{url:"https://testnet.bit-rock.io"}],7774:[{url:"https://mainnet-rpc-1.gdccscan.io"}],7775:[{url:"https://testnet-rpc1.gdccscan.io"}],7776:[{url:"https://rpc1.pandasea.io"}],7777:[{url:"https://testnet1.rotw.games"},{url:"https://testnet2.rotw.games"},{url:"https://testnet3.rotw.games"},{url:"https://testnet4.rotw.games"},{url:"https://testnet5.rotw.games"},{url:"https://testnet1.riseofthewarbots.com"},{url:"https://testnet2.riseofthewarbots.com"},{url:"https://testnet3.riseofthewarbots.com"},{url:"https://testnet4.riseofthewarbots.com"},{url:"https://testnet5.riseofthewarbots.com"}],7778:[{url:"https://validator-mainnet.orenium.org"},{url:"https://rpc-oracle-mainnet.orenium.org"},{url:"https://portalmainnet.orenium.org"}],7798:[{url:"https://long.rpc.openex.network"}],7860:[{url:"https://node1.maalscan.io"},{url:"https://rpc-bntest.maalscan.io"}],7862:[{url:"https://node1-mainnet-new.maalscan.io"},{url:"https://node2-mainnet-new.maalscan.io"},{url:"https://node3-mainnet-new.maalscan.io"}],7863:[{url:"https://node-testnet.maalscan.io"},{url:"https://node2-testnet.maalscan.io"}],7878:[{url:"https://hatlas.rpc.hazlor.com:8545"},{url:"wss://hatlas.rpc.hazlor.com:8546"}],7887:[{url:"https://rpc.kinto.xyz/http"},{url:"https://kinto-mainnet.calderachain.xyz/http"}],7895:[{url:"https://rpc-athena.ardescan.com",tracking:"yes",trackingDetails:" (ARD) Ardenium Athena, we prioritize the protection of your privacy and the security of your data. This privacy policy summary provides an overview of how we handle and safeguard your personal information when you use our Ardenium Athena Explorer Blockchain services. However, please note that this is only a summary, and for complete details, we encourage you to review the full privacy policy available at soma, Information Collection: When you use our services, we may collect personal information, such as mobile device details, operation records, transaction records, wallet addresses, and other relevant data. For a more comprehensive understanding, please refer to our full privacy policy at https://docs.ardenium.wiki/ardenium-network/disclaimer."}],7923:[{url:"https://rpc.dotblox.io"}],7924:[{url:"https://mainnet-rpc.mochain.app"}],7979:[{url:"https://main.doschain.com"}],8e3:[{url:"https://dataseed.testnet.teleport.network"},{url:"https://evm-rpc.teleport.network"}],8001:[{url:"https://evm-rpc.testnet.teleport.network"}],8008:[{url:"https://rpc.polynomial.fi"}],8029:[{url:"https://testnet.mdgl.io"}],8047:[{url:"https://rpc0.come.boat"}],8054:[{url:"https://rpc.sepolia.karak.network"}],8080:[{url:"https://liberty10.shardeum.org"}],8081:[{url:"https://dapps.shardeum.org",tracking:"yes",trackingDetails:"Shardeum follows a standard procedure of using log files. These files log visitors when they visit websites... The information collected by log files includes IP addresses, browser type, ISP, date and time stamp, referring/exit pages, and potentially the number of clicks.https://shardeum.org/privacy-policy/"},{url:"https://liberty20.shardeum.org"}],8082:[{url:"https://sphinx.shardeum.org",tracking:"yes",trackingDetails:"Shardeum follows a standard procedure of using log files. These files log visitors when they visit websites... The information collected by log files includes IP addresses, browser type, ISP, date and time stamp, referring/exit pages, and potentially the number of clicks.https://shardeum.org/privacy-policy/"}],8086:[{url:"https://rpc.biteth.org"}],8087:[{url:"https://rpc.e-dollar.org"}],8098:[{url:"https://u0ma6t6heb:KDNwOsRDGcyM2Oeui1p431Bteb4rvcWkuPgQNHwB4FM@u0xy4x6x82-u0e2mg517m-rpc.us0-aws.kaleido.io"}],8131:[{url:"https://testnet.meerlabs.com"},{url:"https://testnet-qng.rpc.qitmeer.io"},{url:"https://meer.testnet.meerfans.club"}],8181:[{url:"https://pre-boc1.beonechain.com"}],8192:[{url:"https://rpc.toruschain.com"}],8194:[{url:"https://rpc.testnet.toruschain.com"}],8217:[{url:"https://public-en-cypress.klaytn.net"},{url:"https://klaytn-mainnet-rpc.allthatnode.com:8551",tracking:"yes",trackingDetails:"In addition to the Personal Information, the Billing Information, and the Geolocational Information..., we automatically collect certain information when you use the Platform or Website: IP addresses, browser type and language...; information about a mobile device, including universally unique ID (“UUID”), platform type and version (e.g., iOS or Android), carrier and country location, hardware and processor information, and network type; and activity and usage information occurring via the Platform or Website.https://www.allthatnode.com/privacypolicy.dsrv"},{url:"https://rpc.ankr.com/klaytn ",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://klaytn.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://klaytn.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://1rpc.io/klay",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://klaytn-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://klaytn.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://public-en.node.kaia.io"}],8227:[{url:"https://subnets.avax.network/space/mainnet/rpc"}],8272:[{url:"https://rpc.blocktonscan.com"}],8285:[{url:"https://www.krotho-test.net"}],8329:[{url:"https://rpc.lorenzo-protocol.xyz"}],8333:[{url:"https://mainnet-rpc.b3.fun"}],8387:[{url:"https://api.dracones.net"}],8453:[{url:"https://base.llamarpc.com",tracking:"none",trackingDetails:"LlamaNodes is open-source and does not track or store user information that transits through our RPCs (location, IP, wallet, etc). To learn more, have a look at the public Privacy Policy in our docs: https://llamanodes.notion.site/Privacy-Practices-f20fd8fdd02a469d9d4f42a5989bb936",isOpenSource:true},{url:"https://mainnet.base.org"},{url:"https://developer-access-mainnet.base.org"},{url:"https://base-mainnet.diamondswap.org/rpc",tracking:"limited",trackingDetails:"We record limited metadata from requests. This data is stored for a maximum of 90 days and is solely used for debugging, identifying suspicious activity, and generating analytics."},{url:"https://base.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://1rpc.io/base",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://base-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://base.meowrpc.com",tracking:"none",trackingDetails:"With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com"},{url:"https://base-mainnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://base.gateway.tenderly.co",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://gateway.tenderly.co/public/base",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://rpc.notadegen.com/base"},{url:"https://base-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://base-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://base.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://endpoints.omniatech.io/v1/base/mainnet/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://base.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"wss://base.gateway.tenderly.co"}],8545:[{url:"https://rpcv1-dn-1.chakrachain.io"}],8654:[{url:"https://mainnet.buildwithtoki.com/v0/rpc"}],8655:[{url:"https://testnet.buildwithtoki.com/v0/rpc"}],8668:[{url:"https://mainnet-rpc.helachain.com"}],8723:[{url:"https://mainnet-web3.wolot.io"}],8724:[{url:"https://testnet-web3.wolot.io"}],8726:[{url:"https://mainnet-validator.storagechain.io"}],8727:[{url:"https://testnet-validator.storagechain.io"}],8732:[{url:"https://rpc.bullionsx.org"}],8738:[{url:"https://rpc.alph.network"},{url:"wss://rpc.alph.network"}],8768:[{url:"https://node1.tmyblockchain.org/rpc"}],8822:[{url:"https://json-rpc.evm.iotaledger.net"},{url:"https://ws.json-rpc.evm.iotaledger.net"}],8844:[{url:"https://rpc.testnet.hydrachain.org"}],8848:[{url:"https://rpc-mainnet.ma.ro"}],8866:[{url:"https://mainnet.lumio.io"}],8869:[{url:"https://rpc.lif3.com"}],8880:[{url:"https://rpc.unique.network"},{url:"https://eu-rpc.unique.network"},{url:"https://asia-rpc.unique.network"},{url:"https://us-rpc.unique.network"}],8881:[{url:"https://rpc-quartz.unique.network"},{url:"https://quartz.api.onfinality.io/public-ws"},{url:"https://eu-rpc-quartz.unique.network"},{url:"https://asia-rpc-quartz.unique.network"},{url:"https://us-rpc-quartz.unique.network"}],8882:[{url:"https://rpc-opal.unique.network"},{url:"https://us-rpc-opal.unique.network"},{url:"https://eu-rpc-opal.unique.network"},{url:"https://asia-rpc-opal.unique.network"}],8883:[{url:"https://rpc-sapphire.unique.network"},{url:"https://us-rpc-sapphire.unique.network"},{url:"https://eu-rpc-sapphire.unique.network"},{url:"https://asia-rpc-sapphire.unique.network"}],8886:[{url:"https://eu-testnet.avenium.io"},{url:"https://connect-testnet.avenium.io"}],8888:[{url:"https://mainnet.xana.net/rpc"}],8889:[{url:"https://vsc-dataseed.vyvo.org:8889"}],8890:[{url:"https://rpc-dev-testnet.orenium.org"},{url:"https://rpc-testnet.orenium.org"},{url:"https://rpc-orc.oredex.finance"},{url:"https://testnet-rpc.oredex.finance"},{url:"https://oredex-node.oredex.finance"}],8898:[{url:"https://dataseed.mmtscan.io"},{url:"https://dataseed1.mmtscan.io"},{url:"https://dataseed2.mmtscan.io"}],8899:[{url:"https://rpc-l1.jibchain.net"},{url:"https://jib-rpc.inan.in.th"},{url:"https://rpc-l1.jbc.aomwara.in.th"},{url:"https://rpc-l1.jbc.xpool.pw"},{url:"https://rpc-l1.inan.in.th"}],8911:[{url:"https://rpc.algen.network"}],8912:[{url:"https://rpc.test.algen.network"}],8921:[{url:"https://rpc.alg2.algen.network"}],8922:[{url:"https://rpc.alg2-test.algen.network"}],8989:[{url:"https://rpc-asia.gmmtchain.io"}],8995:[{url:"https://core.bloxberg.org"}],9e3:[{url:"https://evmos-testnet-json.qubelabs.io"},{url:"https://evmos-tjson.antrixy.org"},{url:"https://evmos-testnet-rpc.kingsuper.services"},{url:"https://rpc.evmos.test.theamsolutions.info"},{url:"https://api.evmos-test.theamsolutions.info"},{url:"https://rpc.evmos.testnet.node75.org"},{url:"https://rpc-evm.testnet.evmos.dragonstake.io"},{url:"https://evmos-testnet-rpc.stake-town.com"},{url:"https://evmos-testnet-jsonrpc.stake-town.com"},{url:"https://api.evmos-test.theamsolutions.info"},{url:"https://jsonrpc-t.evmos.nodestake.top"},{url:"https://evmos-testnet-jsonrpc.autostake.com"},{url:"https://evmos-testnet-jsonrpc.alkadeta.com"},{url:"https://evm-rpc.evmost.silentvalidator.com"},{url:"https://testnet-evm-rpc-evmos.hoodrun.io"},{url:"https://alphab.ai/rpc/eth/evmos_testnet"},{url:"https://t-evmos-jsonrpc.kalia.network"},{url:"https://jsonrpc-evmos-testnet.mzonder.com"},{url:"https://evmos-testnet.lava.build/lava-referer-16223de7-12c0-49f3-8d87-e5f1e6a0eb3b"},{url:"https://evmos-testnet.lava.build"},{url:"https://eth.bd.evmos.dev:8545"},{url:"https://evmos-testnet-evm-rpc.publicnode.com"},{url:"wss://evmos-testnet-evm-rpc.publicnode.com"}],9001:[{url:"https://evmos.lava.build",tracking:"yes",trackingDetails:"We, our service providers, and our business partners may automatically log information about you, your computer or mobile device, and your interaction over time with the Service..., such as: Device data, ...your computer or mobile device's operating system type and version, manufacturer and model, browser type, screen resolution, RAM and disk size, CPU usage, device type (e.g., phone, tablet), IP address, unique identifiers (including identifiers used for advertising purposes), language settings, mobile device carrier, radio/network information (e.g., Wi-Fi, LTE, 3G), and general location information such as city, state or geographic area. https://www.lavanet.xyz/privacy-policy"},{url:"https://evmos-mainnet-jsonrpc.autostake.com",tracking:"limited",trackingDetails:"When you browse our marketing pages, we’ll track that for statistical purposes (like conversion rates and to test new designs). We also store any information you volunteer, like surveys, for as long as it makes sense.https://autostake.com/privacy-policy"},{url:"https://evmos-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://evmos-mainnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://evmos-evm-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://evmos-evm-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://jsonrpc-evmos.goldenratiostaking.net"},{url:"https://evmos.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://evmos-jsonrpc.cyphercore.io",tracking:"yes",trackingDetails:"We collect information about you in various ways when you use our website. This includes information you provide directly to us, information we collect automatically, and information we obtain from third-party sources.https://cyphercore.io/privacy-policy/"},{url:"https://eth.bd.evmos.org:8545"},{url:"https://evmos-json-rpc.stakely.io"},{url:"https://jsonrpc-evmos-ia.cosmosia.notional.ventures"},{url:"https://json-rpc.evmos.blockhunters.org"},{url:"https://evmos-json-rpc.agoranodes.com"},{url:"https://evmos-json.antrixy.org"},{url:"https://jsonrpc.evmos.nodestake.top"},{url:"https://evmos-jsonrpc.alkadeta.com"},{url:"https://evmos-json.qubelabs.io"},{url:"https://evmos-rpc.theamsolutions.info"},{url:"https://evmos-api.theamsolutions.info"},{url:"https://evmos-jsonrpc.theamsolutions.info"},{url:"https://evm-rpc-evmos.hoodrun.io"},{url:"https://evmos-json-rpc.0base.dev"},{url:"https://json-rpc.evmos.tcnetwork.io"},{url:"https://rpc-evm.evmos.dragonstake.io"},{url:"https://evmosevm.rpc.stakin-nodes.com"},{url:"https://evmos-jsonrpc.stake-town.com"},{url:"https://json-rpc-evmos.mainnet.validatrium.club"},{url:"https://rpc-evmos.imperator.co"},{url:"https://evm-rpc.evmos.silentvalidator.com"},{url:"https://alphab.ai/rpc/eth/evmos"},{url:"https://evmos-jsonrpc.kalia.network"},{url:"https://jsonrpc-evmos.mzonder.com"},{url:"https://evmos.lava.build/lava-referer-16223de7-12c0-49f3-8d87-e5f1e6a0eb3b",tracking:"yes",trackingDetails:"We, our service providers, and our business partners may automatically log information about you, your computer or mobile device, and your interaction over time with the Service..., such as: Device data, ...your computer or mobile device's operating system type and version, manufacturer and model, browser type, screen resolution, RAM and disk size, CPU usage, device type (e.g., phone, tablet), IP address, unique identifiers (including identifiers used for advertising purposes), language settings, mobile device carrier, radio/network information (e.g., Wi-Fi, LTE, 3G), and general location information such as city, state or geographic area. https://www.lavanet.xyz/privacy-policy"},{url:"wss://evmos.lava.build/websocket"}],9007:[{url:"https://rpc-testnet-nodes.shidoscan.com"},{url:"wss://wss-testnet-nodes.shidoscan.com"}],9008:[{url:"https://rpc-nodes.shidoscan.com"},{url:"wss://wss-nodes.shidoscan.com"},{url:"https://rpc-delta-nodes.shidoscan.com"},{url:"wss://wss-delta-nodes.shidoscan.com"}],9012:[{url:"https://mainnet.berylbit.io"}],9024:[{url:"https://rpc-testnet-nodes.nexablockscan.io"}],9025:[{url:"https://rpc-nodes.nexablockscan.io"},{url:"wss://wss-nodes.nexablockscan.io"},{url:"https://rpc-nodes-delta.nexablockscan.io"}],9069:[{url:"https://rpc.nexus.mainnet.apexfusion.org"}],9070:[{url:"https://rpc.nexus.testnet.apexfusion.org"}],9100:[{url:"rpcWorking:false"},{url:"https://genesis-gn.com"},{url:"wss://genesis-gn.com"}],9223:[{url:"https://chain-rpc.codefin.pro"}],9339:[{url:"https://testnet-rpc.dogcoin.me"}],9372:[{url:"https://rpc.testnet.oasys.games"}],9393:[{url:"https://sepolia-dela.deperp.com"}],9395:[{url:"https://mainnet-rpc.evokescan.org"}],9496:[{url:"https://testnet.wvm.dev"},{url:"https://testnet-rpc.wvm.dev"}],9527:[{url:"https://robin.rangersprotocol.com/api/jsonrpc"}],9528:[{url:"https://qeasyweb3.com"}],9559:[{url:"https://testnet.neonlink.io"}],9700:[{url:"https://dev-rpc.oortech.com"}],9728:[{url:"https://testnet.bnb.boba.network"},{url:"wss://wss.testnet.bnb.boba.network"},{url:"https://replica.testnet.bnb.boba.network"},{url:"wss://replica-wss.testnet.bnb.boba.network"},{url:"https://boba-bnb-testnet.gateway.tenderly.co"},{url:"wss://boba-bnb-testnet.gateway.tenderly.co"}],9768:[{url:"https://testnet-rpc.mainnetz.io"}],9779:[{url:"https://rpc-mainnet.pepenetwork.io"}],9789:[{url:"https://rpc.testnet.tabichain.com"}],9790:[{url:"https://evm-api.carbon.network"}],9792:[{url:"https://test-evm-api.carbon.network"}],9797:[{url:"https://rpc.optimusz7.com"}],9818:[{url:"https://data-aws-testnet.imperiumchain.com"},{url:"https://data-aws2-testnet.imperiumchain.com"}],9819:[{url:"https://data-aws-mainnet.imperiumchain.com"},{url:"https://data-aws2-mainnet.imperiumchain.com"}],9876:[{url:"https://rpctestnet.binarychain.org"}],9888:[{url:"https://dl-rpc.dogelayer.org"}],9898:[{url:"https://rpc.larissa.network"}],9911:[{url:"https://rpc.escscan.com"}],9977:[{url:"https://testnet-msc.mindchain.info"},{url:"wss://testnet-msc.mindchain.info/ws"}],9980:[{url:"https://rpc.combonetwork.io"}],9981:[{url:"https://main-rpc.volleychain.com"}],9990:[{url:"https://rpcpc1-qa.agung.peaq.network"}],9996:[{url:"https://rpc-msc.mindchain.info"},{url:"https://seednode.mindchain.info"},{url:"https://archive.mindchain.info"},{url:"https://mind-smart-chain.rpc.thirdweb.com"},{url:"wss://archive.mindchain.info/ws"},{url:"wss://seednode.mindchain.info/ws"}],9997:[{url:"https://testnet-rollup-api.altlayer.io"}],9998:[{url:"https://zitcoin.us"}],9999:[{url:"https://geth.dev.bccloud.net"}],1e4:[{url:"https://smartbch.fountainhead.cash/mainnet"},{url:"https://global.uat.cash"},{url:"https://rpc.uatvo.com"},{url:"https://smartbch.greyh.at"},{url:"https://rpc-mainnet.smartbch.org"},{url:"https://smartbch.devops.cash/mainnet"}],10001:[{url:"https://rpc-testnet.smartbch.org"},{url:"https://smartbch.devops.cash/testnet"}],10024:[{url:"https://node1.testnet.gaiaopen.network"},{url:"https://node1.mainnet.gon.network"},{url:"https://node2.mainnet.gon.network"},{url:"https://node3.mainnet.gon.network"},{url:"https://node4.mainnet.gon.network"}],10081:[{url:"https://rpc-1.testnet.japanopenchain.org:8545"},{url:"https://rpc-2.testnet.japanopenchain.org:8545"},{url:"https://rpc-3.testnet.japanopenchain.org"}],10086:[{url:"http://geth.free.idcfengye.com"}],10096:[{url:"https://web3.metanovaverse.com"}],10101:[{url:"https://eu.mainnet.xixoio.com"},{url:"https://us.mainnet.xixoio.com"},{url:"https://asia.mainnet.xixoio.com"}],10200:[{url:"https://rpc.chiadochain.net"},{url:"https://rpc.chiado.gnosis.gateway.fm",tracking:"yes",trackingDetails:"When you use our services or visit our websites, we may log your device’s IP address for debugging and security reasons. We may retain this information for up to twelve months"},{url:" https://endpoints.omniatech.io/v1/gnosis/chiado/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://gnosis-chiado-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://gnosis-chiado-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://1rpc.io/gnosis",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"wss://rpc.chiadochain.net/wss"},{url:"https://gnosis-chiado.drpc.org"},{url:"wss://gnosis-chiado.drpc.org"}],10201:[{url:"https://rpc.maxxchain.org"},{url:"https://rpc1.maxxchain.org"},{url:"https://rpc2.maxxchain.org"}],10222:[{url:"https://glc-dataseed.glscan.io"}],10242:[{url:"https://rpc.arthera.net"}],10243:[{url:"https://rpc-test.arthera.net"}],10248:[{url:"https://node.0xtchain.com"}],10321:[{url:"https://rpc.taoevm.io"}],10324:[{url:"https://testnet-rpc.taoevm.io"}],10395:[{url:"https://gwangju.worldland.foundation"}],10507:[{url:"https://mainnetrpc.num.network"}],10508:[{url:"https://testnetrpc.num.network"}],10823:[{url:"http://node106.cryptocoinpay.info:8545"},{url:"ws://node106.cryptocoinpay.info:8546"}],10849:[{url:"https://subnets.avax.network/lamina1/mainnet/rpc"}],10850:[{url:"https://subnets.avax.network/lamina1id/mainnet/rpc"}],10946:[{url:"https://rpc.quadrans.io"},{url:"https://rpcna.quadrans.io"},{url:"https://rpceu.quadrans.io"}],10947:[{url:"https://rpctest.quadrans.io"},{url:"https://rpctest2.quadrans.io"}],11011:[{url:"https://sepolia.shape.network"}],11110:[{url:"https://rpc.astranaut.io"},{url:"https://rpc1.astranaut.io"}],11111:[{url:"https://api.trywagmi.xyz/rpc"},{url:"https://subnets.avax.network/wagmi/wagmi-chain-testnet/rpc"}],11115:[{url:"https://rpc.astranaut.dev"}],11119:[{url:"https://mainnet-rpc.hashbit.org"},{url:"https://rpc.hashbit.org"}],11124:[{url:"https://api.testnet.abs.xyz"}],11221:[{url:"https://rpc.shinescan.io"}],11227:[{url:"https://subnets.avax.network/jiritsutes/testnet/rpc"}],11235:[{url:"https://haqq-evm-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://haqq-evm-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://rpc.eth.haqq.network"},{url:"https://haqq.drpc.org"},{url:"wss://haqq.drpc.org"}],11501:[{url:"https://rpc-mainnet-1.bevm.io"},{url:"https://rpc-mainnet-2.bevm.io"}],11503:[{url:"https://testnet.bevm.io"}],11521:[{url:"https://rpc-satschain-1.bevm.io"}],11612:[{url:"https://testnet-rpc.sardisnetwork.com"}],11822:[{url:"https://betanet-rpc1.artela.network"}],11891:[{url:"https://rpc.polygonsupernet.public.arianee.net"}],12001:[{url:"https://rpc.flash.fuse.io"}],12009:[{url:"https://mainnet-rpc.satoshichain.io"}],12020:[{url:"https://rpc.aternoschain.com"}],12051:[{url:"https://betaenv.singularity.gold:18545"}],12052:[{url:"https://zerorpc.singularity.gold"}],12123:[{url:"https://rpc.brcchain.io"}],12306:[{url:"https://node1.fibo-api.asia"},{url:"https://node2.fibo-api.asia"},{url:"https://node3.fibo-api.asia"},{url:"https://node4.fibo-api.asia"},{url:"https://node5.fibo-api.asia"},{url:"https://node6.fibo-api.asia"},{url:"https://node7.fibo-api.asia"},{url:"https://node1.fibo-rpc.asia"},{url:"https://node2.fibo-rpc.asia"},{url:"https://node3.fibo-rpc.asia"},{url:"https://node4.fibo-rpc.asia"},{url:"https://node5.fibo-rpc.asia"},{url:"https://node6.fibo-rpc.asia"},{url:"https://node7.fibo-rpc.asia"}],12321:[{url:"https://rpc.blgchain.com"}],12324:[{url:"https://rpc-mainnet.l3x.com"}],12325:[{url:"https://rpc-testnet.l3x.com"}],12345:[{url:"https://rpc.testnet.step.network"}],12553:[{url:"https://rpc.rss3.io"}],12715:[{url:"https://testnet-rpc.rikscan.com"}],12781:[{url:"https://subnets.avax.network/playdappte/testnet/rpc"}],12890:[{url:"https://testnet-rpc.quantumscan.org"}],12898:[{url:"https://rpc.letsplayfair.ai/ext/bc/2hhXFNp1jR4RuqvCmWQnBtt9CZnCmmyGr7TNTkxt7XY7pAzHMY/rpc"}],13e3:[{url:"https://rpc.ssquad.games"}],13308:[{url:"https://rpc.creditsmartchain.com"}],13337:[{url:"https://build.onbeam.com/rpc/testnet"},{url:"wss://build.onbeam.com/ws/testnet"},{url:"https://subnets.avax.network/beam/testnet/rpc"},{url:"wss://subnets.avax.network/beam/testnet/ws"}],13371:[{url:"https://rpc.immutable.com"},{url:"https://immutable-zkevm.drpc.org"},{url:"wss://immutable-zkevm.drpc.org"}],13381:[{url:"https://rpc.phoenixplorer.com"}],13396:[{url:"https://subnets.avax.network/masanetwork/mainnet/rpc"}],13473:[{url:"https://rpc.testnet.immutable.com"},{url:"https://immutable-zkevm-testnet.drpc.org"},{url:"wss://immutable-zkevm-testnet.drpc.org"}],13505:[{url:"https://rpc-sepolia.gravity.xyz"}],13600:[{url:"https://mainnet-rpc.qbitscan.com"}],13812:[{url:"https://gateway.opn.network/node/ext/bc/2VsZe5DstWw2bfgdx3YbjKcMsJnNDjni95sZorBEdk9L9Qr9Fr/rpc"}],14e3:[{url:"https://www.3sps.net"}],14324:[{url:"https://testnet-rpc.evolveblockchain.io"}],14333:[{url:"https://test-rpc.vitruveo.xyz"}],14801:[{url:"http://rpc.satori.vana.org"}],14853:[{url:"https://explorer-rpc-http.testnet5.stages.humanode.io"}],15003:[{url:"https://rpc.dev.immutable.com"}],15257:[{url:"https://testnet-rpc.poodl.org"}],15259:[{url:"https://rpc.poodl.org"}],15430:[{url:"https://mainnet-rpc.kymaticscan.online"}],15551:[{url:"https://api.mainnetloop.com",tracking:"limited",trackingDetails:"Loop Network follows a standard procedure of using log files. These files log visitors when they visit websites. All hosting companies do this and a part of hosting services' analytics. The information collected by log files include internet protocol (IP) addresses, browser type, Internet Service Provider (ISP), date and time stamp, referring/exit pages, and possibly the number of clicks. https://www.getloop.network/privacypolicy"}],15555:[{url:"https://api.testnet-dev.trust.one"}],15557:[{url:"https://api.testnet.evm.eosnetwork.com",tracking:"yes",trackingDetails:"We collect information about your device and internet connection, including the device’s unique device identifier, IP address, operating system, and browser type, mobile network information"}],16e3:[{url:"https://mainnet.metadot.network"}],16001:[{url:"https://testnet.metadot.network"}],16116:[{url:"https://rpc.defi-verse.org"}],16166:[{url:"https://pubnodes.cypherium.io/rpc"}],16180:[{url:"https://subnets.avax.network/plyr/mainnet/rpc"}],16350:[{url:"https://rpc.ankr.com/incentiv_devnet"}],16481:[{url:"https://sepolia.pivotalprotocol.com"}],16507:[{url:"https://rpc.genesys.network"}],16600:[{url:"https://rpc-testnet.0g.ai"}],16688:[{url:"https://evmrpc.nyancat.irisnet.org"}],16718:[{url:"https://network.ambrosus.io"}],16888:[{url:"https://testnet-rpc.ivarex.com"}],17e3:[{url:"https://ethereum-holesky-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://etherem-holesky-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://1rpc.io/holesky",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://ethereum-holesky.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://holesky-rpc.nocturnode.tech",tracking:"none",trackingDetails:"As a fundamental practice, we do not collect, store, or process any personal information from our users. This non-collection policy ensures absolute data security and privacy for our users.https://nocturnode.tech/privacy"},{url:"https://rpc.holesky.ethpandaops.io"},{url:"wss://ethereum-holesky-rpc.publicnode.com"},{url:"https://holesky.drpc.org"},{url:"wss://holesky.drpc.org"},{url:"https://rpc-holesky.rockx.com"}],17069:[{url:"https://rpc.garnetchain.com"},{url:"wss://rpc.garnetchain.com"}],17071:[{url:"https://rpc.onchainpoints.xyz"},{url:"https://rpc-onchain-points-8n0qkkpr2j.t.conduit.xyz/{CONDUIT_API_KEY}"}],17117:[{url:"https://rpc-testnet.defi-verse.org"}],17171:[{url:"https://mainnet-rpc.oneg8.network"}],17172:[{url:"https://subnets.avax.network/eclipse/testnet/rpc"}],17180:[{url:"https://palette-opennet.com:22000"}],17217:[{url:"https://api.kon-wallet.com"}],17777:[{url:"https://api.evm.eosnetwork.com",tracking:"yes",trackingDetails:"We collect information about your device and internet connection, including the device’s unique device identifier, IP address, operating system, and browser type, mobile network information"}],18e3:[{url:"https://rpc.fod.games"}],18122:[{url:"https://beefledgerwallet.com:8544"}],18159:[{url:"https://mainnet-rpc.memescan.io"},{url:"https://mainnet-rpc2.memescan.io"},{url:"https://mainnet-rpc3.memescan.io"},{url:"https://mainnet-rpc4.memescan.io"}],18181:[{url:"https://testnet-rpc.oneg8.network"}],18233:[{url:"https://rpc.unreal-orbit.gelato.digital"},{url:"wss://ws.unreal-orbit.gelato.digital"}],18686:[{url:"https://rpc.mxc.com"}],18888:[{url:"https://titan-json-rpc.titanlab.io"},{url:"https://titan-json-rpc-tokyo.titanlab.io"},{url:"https://titan-json-rpc-seoul.titanlab.io"},{url:"https://titan-json-rpc-hongkong.titanlab.io"}],18889:[{url:"https://titan-testnet-json-rpc.titanlab.io"},{url:"https://titan-testnet-json-rpc-1.titanlab.io"},{url:"https://titan-testnet-json-rpc-2.titanlab.io"}],19011:[{url:"https://rpc.mainnet.oasys.homeverse.games"}],19077:[{url:"https://atlantis-web3.blockxnet.com"}],19191:[{url:"https://web3.blockxnet.com"}],19224:[{url:"https://rpc.decentraconnect.io"}],19527:[{url:"https://magnet-rpc.magport.io"}],19600:[{url:"https://lbry.nl/rpc"}],19845:[{url:"https://seed.btcix.org/rpc"}],20001:[{url:"https://mainnet-http-rpc.camelark.com"}],20041:[{url:"https://nizascan.io/rpc"}],20073:[{url:"https://testnet.nizascan.io/rpc"}],20729:[{url:"https://testnet-rpc.callisto.network"}],20736:[{url:"https://rpc-chain.p12.games"}],20765:[{url:"https://subnets.avax.network/jono11/testnet/rpc"}],21004:[{url:"https://rpc.c4ei.net"}],21133:[{url:"https://rpc.c4ex.net"}],21223:[{url:"https://rpc.dcpay.io"}],21224:[{url:"https://testnet-rpc.dcpay.io"}],21337:[{url:"https://cennznet.unfrastructure.io/public"}],21363:[{url:"https://service.lestnet.org"}],21816:[{url:"https://seed.omlira.com"},{url:"https://seed.omchain.io"}],21912:[{url:"http://rpc-mainnet.nftruth.io:8545"},{url:"ws://rpc-mainnet.nftruth.io:8645"}],22023:[{url:"https://taycan-rpc.hupayx.io:8545"}],22040:[{url:"https://network.ambrosus-test.io"}],22222:[{url:"https://api.nautilus.nautchain.xyz"}],22324:[{url:"https://testnet-rpc.goldxchain.io"}],22776:[{url:"https://rpc.maplabs.io"}],23006:[{url:"https://testnet-rpc.antofy.io"}],23118:[{url:"https://testrpc.opside.network"}],23294:[{url:"https://1rpc.io/oasis/sapphire",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://sapphire.oasis.io"},{url:"wss://sapphire.oasis.io/ws"}],23295:[{url:"https://testnet.sapphire.oasis.io"},{url:"wss://testnet.sapphire.oasis.io/ws"}],23451:[{url:"https://rpc.dreyerx.com"}],23452:[{url:"https://testnet-rpc.dreyerx.com"}],23888:[{url:"http://testnet-rpc.blastblockchain.com"}],24076:[{url:"https://testnet-rpc.kymaticscan.online"}],24734:[{url:"https://node1.mintme.com"}],25186:[{url:"https://mainnet.liquidlayer.network"}],25839:[{url:"https://testnet-rpc.alvey.io"}],25888:[{url:"https://www.hammerchain.io/rpc"}],25925:[{url:"https://rpc-testnet.bitkubchain.io"},{url:"wss://wss-testnet.bitkubchain.io"}],26026:[{url:"http://testnet.dev.svcs.ferrumnetwork.io:9933"}],26482:[{url:"https://ducx-testnet-node1.rocknblock.io"},{url:"https://ducx-testnet-node2.rocknblock.io"}],26483:[{url:"https://ducx-mainnet-node1.rocknblock.io"},{url:"https://ducx-mainnet-node2.rocknblock.io"},{url:"https://ducx-mainnet-node3.rocknblock.io"}],26600:[{url:"https://mainnet-rpc.hertzscan.com"}],26863:[{url:"https://rpc1.oasischain.io"},{url:"https://rpc2.oasischain.io"},{url:"https://rpc3.oasischain.io"}],27181:[{url:"https://rpc.klaosnova.laosfoundation.io"},{url:"wss://rpc.klaosnova.laosfoundation.io"}],27483:[{url:"https://sepolia-rpc.nanon.network"}],27827:[{url:"https://subnets.avax.network/zeroonemai/mainnet/rpc"}],28516:[{url:"https://rpc-sepolia.vizing.com"}],28518:[{url:"https://rpc.vizing.com"}],28528:[{url:"https://alpha-1-replica-0.bedrock-goerli.optimism.io"},{url:"https://alpha-1-replica-1.bedrock-goerli.optimism.io"},{url:"https://alpha-1-replica-2.bedrock-goerli.optimism.io"},{url:"https://alpha-1-replica-2.bedrock-goerli.optimism.io"}],28882:[{url:"https://sepolia.boba.network"},{url:"https://boba-sepolia.gateway.tenderly.co"},{url:"https://gateway.tenderly.co/public/boba-sepolia"},{url:"wss://boba-sepolia.gateway.tenderly.co"},{url:"wss://gateway.tenderly.co/public/boba-sepolia"}],29112:[{url:"https://testnet-rpc.hychain.com/http"}],29223:[{url:"https://nexa.sh/metanet"}],29536:[{url:"https://testnet-rpc.kaichain.net"}],29548:[{url:"https://rpc.oasys.mycryptoheroes.net"}],30067:[{url:"https://testnet-rpc0.piecenetwork.com"}],30088:[{url:"https://blockchain.miyou.io"},{url:"https://blockchain.miyoulab.com"}],30103:[{url:"https://cerium-rpc.canxium.net"}],30732:[{url:"https://mevm.testnet.imola.movementlabs.xyz"}],31102:[{url:"rpcWorking:false"},{url:"https://api.esn.gonspool.com"}],31223:[{url:"https://mainnet-rpc.cloudtx.finance"}],31224:[{url:"https://testnet-rpc.cloudtx.finance"}],31337:[{url:"https://testnet-rpc.gochain.io"}],31414:[{url:"https://testnet-rpc.evokescan.org"}],31753:[{url:"https://rpc.xchainscan.com"}],31754:[{url:"https://rpc.xchaintest.net"}],32001:[{url:"https://rpc-holesky.w3gamez.network"}],32382:[{url:"https://node.sanr.app"}],32520:[{url:"https://rpc.icecreamswap.com"},{url:"https://nodes.vefinetwork.org/bitgert"},{url:"https://flux-rpc.brisescan.com"},{url:"https://flux-rpc1.brisescan.com"},{url:"https://flux-rpc2.brisescan.com"},{url:"https://rpc-1.chainrpc.com"},{url:"https://rpc-2.chainrpc.com"},{url:"https://node1.serverrpc.com"},{url:"https://node2.serverrpc.com"},{url:"https://mainnet-rpc.brisescan.com"},{url:"https://chainrpc.com"},{url:"https://serverrpc.com"}],32659:[{url:"https://mainnet.fusionnetwork.io"},{url:"wss://mainnet.fusionnetwork.io"}],32769:[{url:"https://api.zilliqa.com"}],32990:[{url:"https://zilliqa-isolated-server.zilliqa.com"}],33033:[{url:"https://json-rpc.entangle.fi"}],33101:[{url:"https://dev-api.zilliqa.com"}],33103:[{url:"https://api.zq2-prototestnet.zilliqa.com"}],33111:[{url:"https://rpc.curtis.apechain.com"}],33133:[{url:"https://evm-testnet.entangle.fi"}],33210:[{url:"https://subnets.avax.network/cloudverse/mainnet/rpc"}],33333:[{url:"https://rpc.avescoin.io"}],33385:[{url:"https://api.devnet.zilliqa.com"}],33401:[{url:"https://rpc.slingshotdao.com"}],33469:[{url:"https://api.zq2-devnet.zilliqa.com"}],33979:[{url:"https://rpc-mainnet.funkichain.com"},{url:"wss://rpc-mainnet.funkichain.com"}],34443:[{url:"https://1rpc.io/mode",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://mainnet.mode.network"},{url:"https://mode.drpc.org"},{url:"wss://mode.drpc.org"}],34504:[{url:"https://mainnet-rpc.zeuschainscan.io"}],35011:[{url:"https://rpc.j2o.io",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"}],35441:[{url:"https://rpc.q.org",tracking:"limited",trackingDetails:"Our system records data and information about the computer used by the user automatically and with every visit on our website. The following data are collected: Information regarding the type and version of internet browser used to access the website, Operating system, IP address, Date and time of each access, Web page from which the user was redirected to our page, Web pages and resources that were visited, The data mentioned above are saved for a maximum time period of 30 days.https://q.org/privacy-policy"}],35443:[{url:"https://rpc.qtestnet.org"}],38400:[{url:"https://cm.rangersprotocol.com/api/jsonrpc"}],38401:[{url:"https://robin-cm.rangersprotocol.com/api/jsonrpc"}],39656:[{url:"https://mainnet-rpc.prmscan.org"}],39797:[{url:"https://nodeapi.energi.network"},{url:"https://explorer.energi.network/api/eth-rpc"}],39815:[{url:"https://mainnet.oho.ai"},{url:"https://mainnet-rpc.ohoscan.com"},{url:"https://mainnet-rpc2.ohoscan.com"}],41455:[{url:"https://rpc.alephzero.raas.gelato.cloud"},{url:"wss://ws.alephzero.raas.gelato.cloud"}],41500:[{url:"https://connect.opulent-x.com"}],42069:[{url:"rpcWorking:false"}],42072:[{url:"https://testnet-rpc.agentlayer.xyz"}],42161:[{url:"https://arbitrum.llamarpc.com",tracking:"none",trackingDetails:"LlamaNodes is open-source and does not track or store user information that transits through our RPCs (location, IP, wallet, etc). To learn more, have a look at the public Privacy Policy in our docs: https://llamanodes.notion.site/Privacy-Practices-f20fd8fdd02a469d9d4f42a5989bb936",isOpenSource:true},{url:"https://arb1.arbitrum.io/rpc"},{url:"https://rpc.ankr.com/arbitrum",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://1rpc.io/arb",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://arb-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://arb-mainnet.g.alchemy.com/v2/demo",tracking:"yes",trackingDetails:"We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy"},{url:"https://arbitrum.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://arbitrum-one.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://endpoints.omniatech.io/v1/arbitrum/one/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://arb-mainnet-public.unifra.io",tracking:"limited",trackingDetails:"Regarding the RPC(remote procedure call) data, we do not collect request data or request origin. We temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days. Only the amounts of RPC requests of users are recorded for accounting and billing purposes within longer time. https://unifra.io/"},{url:"https://rpc.arb1.arbitrum.gateway.fm",tracking:"yes",trackingDetails:"When you use our services or visit our websites, we may log your device’s IP address for debugging and security reasons. We may retain this information for up to twelve months"},{url:"https://arbitrum-one-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://arbitrum-one-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://arbitrum.meowrpc.com",tracking:"none",trackingDetails:"With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com"},{url:"https://api.zan.top/node/v1/arb/one/public",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"},{url:"https://arbitrum.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://rpc.tornadoeth.cash/arbitrum",tracking:"none",trackingDetails:"TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy"},{url:"https://arb-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}"},{url:"https://arbitrum-one.publicnode.com"},{url:"wss://arbitrum-one.publicnode.com"}],42170:[{url:"https://nova.arbitrum.io/rpc"},{url:"https://arbitrum-nova.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://arbitrum-nova.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://arbitrum-nova-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://arbitrum-nova-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://arbitrum-nova.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://arbitrum-nova.publicnode.com"},{url:"wss://arbitrum-nova.publicnode.com"}],42220:[{url:"https://forno.celo.org"},{url:"https://rpc.ankr.com/celo",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://1rpc.io/celo",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://celo.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"wss://forno.celo.org/ws"}],42261:[{url:"https://testnet.emerald.oasis.io"},{url:"wss://testnet.emerald.oasis.io/ws"}],42262:[{url:"https://emerald.oasis.dev"},{url:"https://1rpc.io/oasis/emerald",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://emerald.oasis.io"},{url:"wss://emerald.oasis.io/ws"}],42355:[{url:"https://mainnet-rpc.goldxchain.io"}],42421:[{url:"https://enugu-rpc.assetchain.org"}],42766:[{url:"https://rpc.zkfair.io"}],42793:[{url:"https://node.mainnet.etherlink.com"}],42801:[{url:"https://rpc.testnet.verse.gesoten.com"}],42888:[{url:"http://35.215.120.180:8545"}],43110:[{url:"rpcWorking:false"},{url:"https://ava.network:21015/ext/evm/rpc"}],43113:[{url:"https://api.avax-test.network/ext/bc/C/rpc"},{url:"https://endpoints.omniatech.io/v1/avax/fuji/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://rpc.ankr.com/avalanche_fuji",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://rpc.ankr.com/avalanche_fuji-c",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://avalanchetestapi.terminet.io/ext/bc/C/rpc"},{url:"https://ava-testnet.public.blastapi.io/ext/bc/C/rpc",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://avalanche-fuji-c-chain-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://avalanche-fuji-c-chain-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://avalanche-fuji.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://api.zan.top/node/v1/avax/fuji/public/ext/bc/C/rpc",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"}],43114:[{url:"https://api.avax.network/ext/bc/C/rpc"},{url:"https://avalanche.public-rpc.com"},{url:"https://rpc.ankr.com/avalanche",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://blastapi.io/public-api/avalanche",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://ava-mainnet.public.blastapi.io/ext/bc/C/rpc",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://avalancheapi.terminet.io/ext/bc/C/rpc"},{url:"https://avalanche-c-chain-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://avalanche-c-chain-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://1rpc.io/avax/c",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://avalanche.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://avax-pokt.nodies.app/ext/bc/C/rpc",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://avalanche.api.onfinality.io/public/ext/bc/C/rpc",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://endpoints.omniatech.io/v1/avax/mainnet/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://avax.meowrpc.com",tracking:"none",trackingDetails:"With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com"},{url:"https://api.zan.top/node/v1/avax/mainnet/public/ext/bc/C/rpc",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"},{url:"https://avalanche.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://rpc.tornadoeth.cash/avax",tracking:"none",trackingDetails:"TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy"}],43851:[{url:"https://testnet-rpc.zkfair.io"}],44444:[{url:"https://rpc-02.frenscan.io"}],44445:[{url:"https://rpcqtm.avescoin.io"}],44787:[{url:"https://alfajores-forno.celo-testnet.org"},{url:"wss://alfajores-forno.celo-testnet.org/ws"}],45e3:[{url:"https://rpc.autobahn.network"}],45454:[{url:"https://swamps.tc.l2aas.com"}],45510:[{url:"https://rpc.deelance.com"}],45513:[{url:"https://blessnet.calderachain.xyz/http"},{url:"wss://blessnet.calderachain.xyz/ws"}],46688:[{url:"https://testnet.fusionnetwork.io"},{url:"wss://testnet.fusionnetwork.io"}],47763:[{url:"https://mainnet-1.rpc.banelabs.org"},{url:"https://mainnet-2.rpc.banelabs.org"}],47803:[{url:"https://layer1.redefi.world"}],47805:[{url:"https://rpc.rei.network"},{url:"wss://rpc.rei.network"}],48795:[{url:"https://subnets.avax.network/space/testnet/rpc"}],48899:[{url:"http://zircuit1-testnet.p2pify.com"}],48900:[{url:"https://zircuit1-mainnet.p2pify.com"}],49049:[{url:"https://rpc-floripa.wireshape.org"},{url:"https://wireshape-floripa-testnet.rpc.thirdweb.com"}],49088:[{url:"https://public-01.testnet.bifrostnetwork.com/rpc"},{url:"https://public-02.testnet.bifrostnetwork.com/rpc"}],49321:[{url:"https://rpc.gunz.dev/ext/bc/ryk9vkvNuKtewME2PeCgybo9sdWXGmCkBrrx4VPuZPdVdAak8/rpc"}],49797:[{url:"https://nodeapi.test.energi.network"}],50001:[{url:"https://rpc.oracle.liveplex.io"},{url:"https://rpc.oracle.liveplex.io",tracking:"yes",trackingDetails:"Usage Data is collected automatically when using the Service. Usage Data may include information such as Your Device's Internet Protocol address (e.g., IP address), browser type, browser version, the pages of our Service that You visit, the time and date of Your visit, the time spent on those pages, unique device identifiers and other diagnostic data. When You access the Service by or through a mobile device, we may collect certain information automatically, including, but not limited to, the type of mobile device You use, Your mobile device unique ID, the IP address of Your mobile device, Your mobile operating system, the type of mobile Internet browser You use, unique device identifiers and other diagnostic data. We may also collect information that Your browser sends whenever You visit our Service or when You access the Service by or through a mobile device. https://www.liveplex.io/privacypolicy.html"}],50005:[{url:"https://rpc.yooldo-verse.xyz"}],50006:[{url:"https://rpc.testnet.yooldo-verse.xyz"}],50021:[{url:"https://testnet.gton.network"}],51178:[{url:"https://alpha-us-http-geth.lumoz.org"},{url:"https://alpha-hk-http-geth.lumoz.org"}],51712:[{url:"https://mainnet-rpc.sardisnetwork.com"}],52014:[{url:"https://rpc.electroneum.com"}],53277:[{url:"https://rpc.doid.tech"}],53302:[{url:"https://sepolia.superseed.xyz"},{url:"wss://sepolia.superseed.xyz"}],53457:[{url:"https://dodochain-testnet.alt.technology"},{url:"wss://dodochain-testnet.alt.technology/ws"}],53935:[{url:"https://avax-pokt.nodies.app/ext/bc/q2aTwKuyzgs8pynF7UXBZCU7DejbZbZ6EUyHr3JQzYgwNPUPi/rpc",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://dfkchain.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://subnets.avax.network/defi-kingdoms/dfk-chain/rpc"}],54211:[{url:"https://rpc.eth.testedge2.haqq.network"}],54321:[{url:"http://testnet.toronet.org/rpc"}],55004:[{url:"https://rpc.titan.tokamak.network"},{url:"wss://rpc.titan.tokamak.network"}],55551:[{url:"https://rpc-test2.photonchain.io"}],55555:[{url:"https://rei-rpc.moonrhythm.io"}],55556:[{url:"https://rei-testnet-rpc.moonrhythm.io"}],55614:[{url:"https://rpc.flamma.network"}],56026:[{url:"https://nrpc.lambda.im"}],56288:[{url:"https://bnb.boba.network"},{url:"https://boba-bnb.gateway.tenderly.co"},{url:"https://gateway.tenderly.co/public/boba-bnb"},{url:"https://replica.bnb.boba.network"},{url:"wss://boba-bnb.gateway.tenderly.co"},{url:"wss://gateway.tenderly.co/public/boba-bnb"}],56400:[{url:"https://subnets.avax.network/testnetzer/testnet/rpc"}],56789:[{url:"https://nova.velo.org"}],56797:[{url:"https://rpc.testnet.doid.tech"}],57e3:[{url:"https://rpc-tanenbaum.rollux.com"},{url:"https://rpc.ankr.com/rollux_testnet/${ANKR_API_KEY}"},{url:"wss://rpc-tanenbaum.rollux.com/wss"},{url:"https://rollux.rpc.tanenbaum.io"},{url:"wss://rollux.rpc.tanenbaum.io/wss"}],57451:[{url:"https://mainnet-rpc.coinsec.network"}],58008:[{url:"https://sepolia.publicgoods.network"}],59140:[{url:"https://linea-goerli.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://rpc.goerli.linea.build"},{url:"wss://rpc.goerli.linea.build"}],59141:[{url:"https://rpc.sepolia.linea.build"},{url:"wss://rpc.sepolia.linea.build"},{url:"https://linea-sepolia.infura.io/v3/${INFURA_API_KEY}"},{url:"wss://linea-sepolia.infura.io/ws/v3/${INFURA_API_KEY}"}],59144:[{url:"https://linea.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://1rpc.io/linea",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://linea.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://linea.decubate.com",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata should remain private to users and other parties should not be able to access or collect it. Decubate doesn't store any data related to the user using the RPC. https://docs.decubate.com/rpc-privacy/"},{url:"https://rpc.linea.build"},{url:"wss://rpc.linea.build"}],59902:[{url:"https://sepolia.metisdevops.link"}],59971:[{url:"https://mainnet.genesyscode.io"}],6e4:[{url:"https://test.thinkiumrpc.net"}],60001:[{url:"https://test1.thinkiumrpc.net"}],60002:[{url:"https://test2.thinkiumrpc.net"}],60103:[{url:"https://test103.thinkiumrpc.net"}],60808:[{url:"https://rpc.gobob.xyz"},{url:"wss://rpc.gobob.xyz"},{url:"https://bob-mainnet.public.blastapi.io"},{url:"wss://bob-mainnet.public.blastapi.io"}],61022:[{url:"https://rpc.orangechain.xyz"},{url:"https://hk-rpc.orangechain.xyz"}],61406:[{url:"https://mainnet-rpc.kaichain.net"}],61800:[{url:"https://aium-rpc-dev.viacube.com"}],61803:[{url:"https://eticamainnet.eticascan.org"},{url:"https://eticamainnet.eticaprotocol.org"}],61916:[{url:"https://sgrpc.doken.dev"},{url:"https://nyrpc.doken.dev"},{url:"https://ukrpc.doken.dev"}],62049:[{url:"https://rpc-testnet.optopia.ai"}],62050:[{url:"https://rpc-mainnet.optopia.ai"},{url:"https://rpc-mainnet-2.optopia.ai"}],62298:[{url:"https://rpc.devnet.citrea.xyz"}],62320:[{url:"https://baklava-forno.celo-testnet.org"}],62621:[{url:"https://rpc.mtv.ac"},{url:"https://rpc-eu.mtv.ac"}],62831:[{url:"https://subnets.avax.network/plyr/testnet/rpc"}],62850:[{url:"https://rpc.laossigma.laosfoundation.io"},{url:"wss://rpc.laossigma.laosfoundation.io"}],63e3:[{url:"https://rpc.ecredits.com"}],63001:[{url:"https://rpc.tst.ecredits.com"}],65349:[{url:"https://cratd2c-testnet-node1.cratd2csmartchain.io"},{url:"https://cratd2c-testnet-node2.cratd2csmartchain.io"}],65357:[{url:"https://rpc.vecno.org"}],65450:[{url:"https://mainnet-rpc.scolcoin.com"}],66988:[{url:"https://rpc.test.janusnetwork.io"}],67588:[{url:"http://testnet.cosmicchain.site:3344"}],68770:[{url:"https://rpc.dm2verse.dmm.com"}],69420:[{url:"https://rpc.condrieu.ethdevops.io:8545"}],7e4:[{url:"https://proxy.thinkiumrpc.net"}],70001:[{url:"https://proxy1.thinkiumrpc.net"}],70002:[{url:"https://proxy2.thinkiumrpc.net"}],70103:[{url:"https://proxy103.thinkiumrpc.net"}],70700:[{url:"https://rpc.apex.proofofplay.com"}],71111:[{url:"https://rpc-mainnet.guapcoinx.com"},{url:"https://rpc-mainnet-1.guapcoinx.com"},{url:"https://rpc-mainnet-2.guapcoinx.com"}],71393:[{url:"https://godwoken-testnet-web3-rpc.ckbapp.dev"},{url:"ws://godwoken-testnet-web3-rpc.ckbapp.dev/ws"}],71401:[{url:"https://godwoken-testnet-v1.ckbapp.dev"},{url:"https://v1.testnet.godwoken.io/rpc"}],71402:[{url:"https://v1.mainnet.godwoken.io/rpc"}],72778:[{url:"https://www.ankara-cagacrypto.com"},{url:"wss://wss.ankara-cagacrypto.com"}],72992:[{url:"https://mainnet-rpc.grokchain.dev"}],73114:[{url:"https://rpc1-testnet.icbnetwork.info"},{url:"https://rpc2-testnet.icbnetwork.info"}],73115:[{url:"https://rpc1-mainnet.icbnetwork.info"},{url:"https://rpc2-mainnet.icbnetwork.info"}],73799:[{url:"https://volta-rpc.energyweb.org"},{url:"wss://volta-rpc.energyweb.org/ws"}],73927:[{url:"https://geth.mvm.dev"}],75512:[{url:"https://rpc.geekout-pte.com"}],75513:[{url:"https://rpc-testnet.geekout-pte.com"}],77001:[{url:"https://public-node.api.boraportal.com/bora/mainnet"},{url:"https://public-node.api.boraportal.io/bora/mainnet"}],77238:[{url:"https://testnet-rpc.foundryscan.org"}],77612:[{url:"https://mainnet-rpc.vention.network"}],77677:[{url:"https://sailboat-rpc-mainnet.cyclenetwork.io"}],77777:[{url:"https://www.toronet.org/rpc2"}],78110:[{url:"https://ethnode.primusmoney.com/firenze"}],78281:[{url:"https://dragonfly-rpc.switch.ch"},{url:"https://dragonfly-rpc.kore-technologies.ch"},{url:"https://dragonfly-rpc.phoenix-systems.io"},{url:"https://dragonfly-rpc.block-spirit.ch"}],78430:[{url:"https://subnets.avax.network/amplify/testnet/rpc"}],78431:[{url:"https://subnets.avax.network/bulletin/testnet/rpc"}],78432:[{url:"https://subnets.avax.network/conduit/testnet/rpc"}],78600:[{url:"https://rpc-vanguard.vanarchain.com"},{url:"wss://ws-vanguard.vanarchain.com"}],79879:[{url:"https://rpc-testnet.goldsmartchain.com"}],80001:[{url:"https://rpc-mumbai.maticvigil.com"},{url:"https://endpoints.omniatech.io/v1/matic/mumbai/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://rpc.ankr.com/polygon_mumbai",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://polygontestapi.terminet.io/rpc"},{url:"https://polygon-testnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://polygon-mumbai.g.alchemy.com/v2/demo",tracking:"yes",trackingDetails:"We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy"},{url:"https://polygon-mumbai.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://polygon-mumbai-bor-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://polygon-mumbai-bor-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://polygon-mumbai-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://polygon-mumbai.gateway.tenderly.co",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://gateway.tenderly.co/public/polygon-mumbai",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://api.zan.top/node/v1/polygon/mumbai/public",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"},{url:"https://polygon-mumbai.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"wss://polygon-mumbai.gateway.tenderly.co"}],80002:[{url:"https://rpc-amoy.polygon.technology"},{url:"https://polygon-amoy-bor-rpc.publicnode.com"},{url:"wss://polygon-amoy-bor-rpc.publicnode.com"}],80008:[{url:"https://rpc.sepolia.polynomial.fi"}],80084:[{url:"https://bartio.rpc.berachain.com"},{url:"https://bera-testnet.nodeinfra.com"},{url:"https://bartio.rpc.b-harvest.io"}],80085:[{url:"https://artio.rpc.berachain.com"},{url:"https://rpc.ankr.com/berachain_testnet"}],80096:[{url:"https://hizoco.net/rpc"}],81041:[{url:"https://mainnet-rpc.nordekscan.com"}],81457:[{url:"https://rpc.blast.io"},{url:"https://blast.din.dev/rpc"},{url:"https://blastl2-mainnet.public.blastapi.io"},{url:"https://blast.blockpi.network/v1/rpc/public"},{url:"https://blast.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://rpc.ankr.com/blast",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://blast-rpc.publicnode.com"}],81720:[{url:"https://rpc.quantumscan.org"}],82459:[{url:"https://rpc.test.smartlayer.network"}],83144:[{url:"https://rpc.testnet.xprotocol.org"}],83278:[{url:"http://65.108.151.70:8545"}],83872:[{url:"https://mainnet-rpc.zedscan.net"}],84531:[{url:"https://base-goerli.diamondswap.org/rpc",tracking:"limited",trackingDetails:"We record limited metadata from requests. This data is stored for a maximum of 90 days and is solely used for debugging, identifying suspicious activity, and generating analytics."},{url:"https://base-goerli.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://1rpc.io/base-goerli",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://base-goerli.gateway.tenderly.co",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://gateway.tenderly.co/public/base-goerli",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://base-goerli-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://base-goerli-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://endpoints.omniatech.io/v1/base/goerli/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://goerli.base.org"},{url:"wss://base-goerli.gateway.tenderly.co"}],84532:[{url:"https://rpc.notadegen.com/base/sepolia"},{url:"https://base-sepolia.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://sepolia.base.org"},{url:"https://base-sepolia-rpc.publicnode.com"},{url:"wss://base-sepolia-rpc.publicnode.com"}],84886:[{url:"https://mainnet.aerielab.io"}],85449:[{url:"http://testnet.cybertrust.space:48501"}],88002:[{url:"https://api.proteus.nautchain.xyz/solana"}],88559:[{url:"https://inoai-network.com"}],88800:[{url:"https://rpc.zkas.zeeve.net"}],88817:[{url:"https://rpc-testnet.unit0.dev"}],88819:[{url:"https://rpc-stagenet.unit0.dev"}],88882:[{url:"https://spicy-rpc.chiliz.com"}],88888:[{url:"https://rpc.chiliz.com"},{url:"https://rpc.ankr.com/chiliz"},{url:"https://chiliz.publicnode.com"}],90001:[{url:"https://testnet-fx-json-web3.functionx.io:8545"}],90210:[{url:"https://rpc.beverlyhills.ethdevops.io:8545"}],90354:[{url:"https://rpc-camp-network-4xje7wy105.t.conduit.xyz"}],91002:[{url:"https://triton.api.nautchain.xyz"}],91120:[{url:"https://rpc.chain.metadap.io"},{url:"wss://rpc-ws.chain.metadap.io"}],91715:[{url:"https://test-rpc.combonetwork.io"}],92001:[{url:"https://evm.lambda.top"}],93572:[{url:"https://testnet.liquidlayer.network"}],93747:[{url:"https://rpc.stratovm.io"}],96970:[{url:"https://mantis-rpc.switch.ch"},{url:"https://mantis-rpc.kore-technologies.ch"},{url:"https://mantis-rpc.phoenix-systems.io"}],97435:[{url:"https://rpc-dependent-emerald-whippet-gh6kch3nen.t.conduit.xyz"}],97531:[{url:"https://node.greenchain.app/rpc"}],97970:[{url:"https://testnet-rpc.optimusz7.com"}],98881:[{url:"https://rpc.ebi.xyz"}],99099:[{url:"https://testnet-rpc.eliberty.ngo"}],99876:[{url:"https://rpc1-testnet.emc.network"}],99998:[{url:"https://testnet.rpc.uschain.network"}],99999:[{url:"https://rpc.uschain.network"}],1e5:[{url:"http://jrpc.mainnet.quarkchain.io:38391"}],100001:[{url:"http://eth-jrpc.mainnet.quarkchain.io:39000"},{url:"https://mainnet-s0-ethapi.quarkchain.io"}],100002:[{url:"http://eth-jrpc.mainnet.quarkchain.io:39001"},{url:"https://mainnet-s1-ethapi.quarkchain.io"}],100003:[{url:"http://eth-jrpc.mainnet.quarkchain.io:39002"},{url:"https://mainnet-s2-ethapi.quarkchain.io"}],100004:[{url:"http://eth-jrpc.mainnet.quarkchain.io:39003"},{url:"https://mainnet-s3-ethapi.quarkchain.io"}],100005:[{url:"http://eth-jrpc.mainnet.quarkchain.io:39004"},{url:"https://mainnet-s4-ethapi.quarkchain.io"}],100006:[{url:"http://eth-jrpc.mainnet.quarkchain.io:39005"},{url:"https://mainnet-s5-ethapi.quarkchain.io"}],100007:[{url:"http://eth-jrpc.mainnet.quarkchain.io:39006"},{url:"https://mainnet-s6-ethapi.quarkchain.io"}],100008:[{url:"http://eth-jrpc.mainnet.quarkchain.io:39007"},{url:"https://mainnet-s7-ethapi.quarkchain.io"}],100009:[{url:"https://rpc-mainnet.vechain.energy"}],100010:[{url:"https://rpc-testnet.vechain.energy"}],100011:[{url:"https://mainnet-l2-ethapi.quarkchain.io"}],101010:[{url:"https://gtn.stabilityprotocol.com"}],102031:[{url:"https://rpc.cc3-testnet.creditcoin.network"}],103090:[{url:"https://evm.cryptocurrencydevs.org"},{url:"https://rpc.crystaleum.org"}],103454:[{url:"https://subnets.avax.network/masatestne/testnet/rpc"}],104566:[{url:"https://api.kaspaclassic.world"},{url:"http://80.178.101.118:8000"}],105105:[{url:"https://rpc.stratisevm.com"}],108801:[{url:"rpcWorking:false"},{url:"https://rpc.brochain.org"},{url:"http://rpc.brochain.org"},{url:"https://rpc.brochain.org/mainnet"},{url:"http://rpc.brochain.org/mainnet"}],11e4:[{url:"rpcWorking:false"},{url:"http://jrpc.devnet.quarkchain.io:38391"}],110001:[{url:"http://eth-jrpc.devnet.quarkchain.io:39900"},{url:"https://devnet-s0-ethapi.quarkchain.io"}],110002:[{url:"http://eth-jrpc.devnet.quarkchain.io:39901"},{url:"https://devnet-s1-ethapi.quarkchain.io"}],110003:[{url:"http://eth-jrpc.devnet.quarkchain.io:39902"},{url:"https://devnet-s2-ethapi.quarkchain.io"}],110004:[{url:"http://eth-jrpc.devnet.quarkchain.io:39903"},{url:"https://devnet-s3-ethapi.quarkchain.io"}],110005:[{url:"http://eth-jrpc.devnet.quarkchain.io:39904"},{url:"https://devnet-s4-ethapi.quarkchain.io"}],110006:[{url:"http://eth-jrpc.devnet.quarkchain.io:39905"},{url:"https://devnet-s5-ethapi.quarkchain.io"}],110007:[{url:"http://eth-jrpc.devnet.quarkchain.io:39906"},{url:"https://devnet-s6-ethapi.quarkchain.io"}],110008:[{url:"http://eth-jrpc.devnet.quarkchain.io:39907"},{url:"https://devnet-s7-ethapi.quarkchain.io"}],110011:[{url:"https://testnet-l2-ethapi.quarkchain.io"}],110110:[{url:"https://node99-production-dd5f.up.railway.app:443"},{url:"https://rpc.marscredit.xyz:443"}],111e3:[{url:"https://rpc.test.siberium.net"}],111111:[{url:"https://rpc.main.siberium.net"},{url:"https://rpc.main.siberium.net.ru"}],111188:[{url:"https://tangible-real.gateway.tenderly.co"},{url:"wss://tangible-real.gateway.tenderly.co"},{url:"https://real.drpc.org"},{url:"wss://real.drpc.org"}],112358:[{url:"https://rpc.metachain.one"},{url:"https://rpc2.metachain.one"}],119139:[{url:"https://rpc.testnet.chain.metadap.io"},{url:"wss://rpc-ws.testnet.chain.metadap.io"}],123321:[{url:"https://evm-rpc.gemchain.org"}],123456:[{url:"https://devnet.adilchain-rpc.io"}],128123:[{url:"https://node.ghostnet.etherlink.com"}],131313:[{url:"https://testnode.dioneprotocol.com/ext/bc/D/rpc"}],131419:[{url:"https://rpc.node1.etnd.pro"}],132902:[{url:"https://testnet-rpc.form.network/http"},{url:"wss://testnet-rpc.form.network/ws"}],141319:[{url:"https://testnet-api.magape.io/chain"}],142857:[{url:"https://rpc1.icplaza.pro",tracking:"yes",trackingDetails:"Please be aware that we collect your following information for the purpose of satisfying your needs in ICPlaza services(...) 1.We will collect your mobile device information, operation records, transaction records, wallet address and other personal information. https://www.icplaza.pro/privacy-policy"},{url:"https://rpcmainnet.ic-plaza.org"}],165279:[{url:"https://mainnet-rpc.eclatscan.com"}],167e3:[{url:"https://rpc.mainnet.taiko.xyz"},{url:"wss://ws.mainnet.taiko.xyz"}],167008:[{url:"https://taiko-katla.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://rpc.katla.taiko.xyz"},{url:"wss://ws.katla.taiko.xyz"},{url:"https://taiko-katla.drpc.org"},{url:"wss://taiko-katla.drpc.org"}],167009:[{url:"https://rpc.hekla.taiko.xyz"},{url:"wss://ws.hekla.taiko.xyz"}],175177:[{url:"https://chain-rpc.litprotocol.com/http"}],175188:[{url:"https://yellowstone-rpc.litprotocol.com"}],188710:[{url:"https://mainnet-rpc.biticablockchain.com"}],188881:[{url:"https://testnet.condor.systems/rpc"}],192940:[{url:"https://rpc-testnet.mindnetwork.xyz"},{url:"wss://rpc-testnet.mindnetwork.xyz"}],199991:[{url:"https://testnet-rpc.mazze.io"}],2e5:[{url:"https://rpc_testnet.xfair.ai"},{url:"wss://rpc_testnet.xfair.ai"}],200101:[{url:"https://rpc-devnet-cardano-evm.c1.milkomeda.com"},{url:"wss://rpc-devnet-cardano-evm.c1.milkomeda.com"}],200202:[{url:"https://rpc-devnet-algorand-rollup.a1.milkomeda.com"}],200625:[{url:"https://boot2.akroma.org"},{url:"https://remote.akroma.io"}],200810:[{url:"https://testnet-rpc.bitlayer.org"},{url:"wss://testnet-ws.bitlayer.org"},{url:"https://testnet-rpc.bitlayer-rpc.com"},{url:"wss://testnet-ws.bitlayer-rpc.com"},{url:"https://rpc.ankr.com/bitlayer_testnet"}],200901:[{url:"https://rpc.bitlayer.org"},{url:"https://rpc.bitlayer-rpc.com"},{url:"https://rpc.ankr.com/bitlayer"},{url:"https://rpc-bitlayer.rockx.com"},{url:"wss://ws.bitlayer.org"},{url:"wss://ws.bitlayer-rpc.com"}],201018:[{url:"https://openapi.alaya.network/rpc"},{url:"wss://openapi.alaya.network/ws"}],201030:[{url:"https://devnetopenapi.alaya.network/rpc"},{url:"wss://devnetopenapi.alaya.network/ws"}],201804:[{url:"https://chain-rpc.mythicalgames.com"}],202020:[{url:"https://testnet-val.decimalchain.com/web3"}],202212:[{url:"https://x1-devnet.xen.network"}],202401:[{url:"http://39.119.118.216:8545"}],202624:[{url:"https://jellie-rpc.twala.io"},{url:"wss://jellie-rpc-wss.twala.io"}],204005:[{url:"https://x1-testnet.xen.network"}],205205:[{url:"https://auroria.rpc.stratisevm.com"}],210049:[{url:"https://rpc.gitagi.org"}],210425:[{url:"https://openapi2.platon.network/rpc"},{url:"wss://openapi2.platon.network/ws"}],220315:[{url:"http://node.masnet.ai:8545"}],221230:[{url:"https://eth.reapchain.org"}],221231:[{url:"https://test-eth.reapchain.org"}],222222:[{url:"https://rpc.hydradx.cloud"},{url:"wss://rpc.hydradx.cloud"}],222555:[{url:"https://rpc.deeplnetwork.org"}],222666:[{url:"https://testnet.deeplnetwork.org"}],224168:[{url:"https://mainnet.tafchain.com/v1"}],224422:[{url:"https://rpc1.conet.network"}],224433:[{url:"https://rpc.conet.network"}],229772:[{url:"https://testnet.rpc.abyssprotocol.ai"}],230315:[{url:"https://testnet.hashkeychain/rpc"}],234666:[{url:"https://testnet1.haymo.network"}],240515:[{url:"https://testnet-rpc.orangechain.xyz"}],246529:[{url:"https://rpc.sigma1.artis.network"}],246785:[{url:"https://rpc.tau1.artis.network"}],247253:[{url:"https://rpc-testnet.saakuru.network"}],256256:[{url:"https://mainnet.block.caduceus.foundation"},{url:"wss://mainnet.block.caduceus.foundation"}],262371:[{url:"https://testnet-rpc.eclatscan.com"}],266256:[{url:"https://gzn-test.linksme.info"}],271271:[{url:"https://rpctest.egonscan.com"}],281121:[{url:"rpcWorking:false"},{url:"https://socialsmartchain.digitalnext.business"}],282828:[{url:"https://sepolia.zillnet.io/rpc"}],292003:[{url:"https://testnet.cipherem.com"}],309075:[{url:"https://mainnet-rpc.oneworldchain.org"}],313313:[{url:"https://testnet.saharalabs.ai"}],314159:[{url:"https://filecoin-calibration.chainup.net/rpc/v1",tracking:"limited",trackingDetails:"We only collect user IP addresses for the purpose of rate limiting. For more information, please visit https://docs.chainupcloud.com/introduction/products/blockchain-api."},{url:"https://api.calibration.node.glif.io/rpc/v1"},{url:"https://rpc.ankr.com/filecoin_testnet"},{url:"https://filecoin-calibration.chainstacklabs.com/rpc/v1"},{url:"https://calibration.filfox.info/rpc/v1"},{url:"https://filecoin-calibration.drpc.org"},{url:"wss://filecoin-calibration.drpc.org"}],322202:[{url:"https://mainnet-rpc.parex.network"}],323213:[{url:"https://testnet-rpc.bloomgenesis.com"}],327126:[{url:"https://rpc.wabaworld.com"}],328527:[{url:"https://rpc.nal.network"},{url:"wss://wss.nal.network"}],330844:[{url:"https://mainnet-rpc.tscscan.com"}],333313:[{url:"https://mainnet-rpc.bloomgenesis.com"}],333331:[{url:"https://test.rpc.avescoin.io"}],333333:[{url:"https://rpctest.nativ3.network"},{url:"wss://wstest.nativ3.network"}],333666:[{url:"https://rpc.testnet.oonechain.com"}],333777:[{url:"https://rpc.dev.oonechain.com"}],333888:[{url:"https://sparta-rpc.polis.tech"}],333999:[{url:"https://rpc.polis.tech"}],336655:[{url:"https://rpc-testnet.uniport.network"}],336666:[{url:"https://rpc.uniport.network"}],355110:[{url:"https://mainnet.bitfinity.network"}],355113:[{url:"https://testnet.bitfinity.network"}],360890:[{url:"https://tsub360890-eth-rpc.thetatoken.org/rpc"}],363636:[{url:"https://dgs-rpc.digitsoul.co.th"}],373737:[{url:"https://jsonrpc-test.hap.land"}],381931:[{url:"https://api.metalblockchain.org/ext/bc/C/rpc"}],381932:[{url:"https://tahoe.metalblockchain.org/ext/bc/C/rpc"}],404040:[{url:"https://mainnet-rpc.tipboxcoin.net"}],413413:[{url:"https://rpc1-testnet.aiechain.io"}],420420:[{url:"https://mainnet.kekchain.com"},{url:"https://rpc2.kekchain.com"},{url:"https://kek.interchained.org"},{url:"https://kekchain.interchained.org"}],420666:[{url:"https://testnet.kekchain.com"}],420692:[{url:"https://l2-testnet-rpc.altscan.org"}],421611:[{url:"https://rinkeby.arbitrum.io/rpc"}],421613:[{url:"https://endpoints.omniatech.io/v1/arbitrum/goerli/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://arb-goerli.g.alchemy.com/v2/demo",tracking:"yes",trackingDetails:"We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy"},{url:"https://arbitrum-goerli.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://rpc.goerli.arbitrum.gateway.fm",tracking:"yes",trackingDetails:"When you use our services or visit our websites, we may log your device’s IP address for debugging and security reasons. We may retain this information for up to twelve months"},{url:"https://arbitrum-goerli-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://arbitrum-goerli-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://api.zan.top/node/v1/arb/goerli/public",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"},{url:"https://api.stateless.solutions/arbitrum-one/v1/77abba85-53e4-4430-a332-a46deb9900ea",tracking:"none",trackingDetails:"Through any of our RPC API endpoints, whether public or private, we do not collect personal identifiers such as IP addresses, request origins, or specific request data. https://www.stateless.solutions/api-usage-privacy-policy"},{url:"https://goerli-rollup.arbitrum.io/rpc"},{url:"https://arbitrum-goerli.publicnode.com"},{url:"wss://arbitrum-goerli.publicnode.com"}],421614:[{url:"https://arbitrum-sepolia.blockpi.network/v1/rpc/public ",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://sepolia-rollup.arbitrum.io/rpc"}],424242:[{url:"https://rpc.testnet.fastexchain.com"}],431140:[{url:"https://rpc.markr.io/ext",tracking:"none",trackingDetails:"We only collect the minimum necessary information to provide our blockchain RPC service (caching). We do not use your data for commercial purposes. Any collected data is short-term and will be automatically deleted within 24 hours if not actively used. https://www.markr.io/privacy-policy"}],432201:[{url:"https://subnets.avax.network/dexalot/testnet/rpc"}],432204:[{url:"https://subnets.avax.network/dexalot/mainnet/rpc"}],444444:[{url:"https://sepolia.syndr.com/http"},{url:"wss://sepolia.syndr.com/ws"}],444900:[{url:"https://weelinknode1c.gw002.oneitfarm.com"}],471100:[{url:"https://test-rpc.patex.io"}],473861:[{url:"https://mainnet-rpc.ultraproscan.io"}],474142:[{url:"https://baas-rpc.luniverse.io:18545?lChainId=1641349324562974539"}],486487:[{url:"https://rpc.gobbl.io"}],49e4:[{url:"https://nova-0.gemini-3h.subspace.network/ws"}],504441:[{url:"https://subnets.avax.network/playdappne/mainnet/rpc"}],512512:[{url:"https://galaxy.block.caduceus.foundation"},{url:"wss://galaxy.block.caduceus.foundation"}],513100:[{url:"https://rpc.dischain.xyz"}],526916:[{url:"https://rpc.docoin.shop"}],534351:[{url:"https://scroll-sepolia.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://scroll-testnet-public.unifra.io",tracking:"limited",trackingDetails:"Regarding the RPC(remote procedure call) data, we do not collect request data or request origin. We temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days. Only the amounts of RPC requests of users are recorded for accounting and billing purposes within longer time. https://unifra.io/"},{url:"https://rpc.ankr.com/scroll_sepolia_testnet",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://scroll-public.scroll-testnet.quiknode.pro",tracking:"yes",trackingDetails:"Information about your computer hardware and software may be automatically collected by QuickNode. This information can include such details as your IP address, browser type, domain names, access times and referring website addresses.https://www.quicknode.com/privacy"},{url:"https://scroll-sepolia.chainstacklabs.com",tracking:"yes",trackingDetails:"We process certain personal data to provide you with the core functionality of our Services. Specifically, when you are: Using the Chainstack Console, we process your name, surname, email address (your account identifier), organization name, IP address, all HTTP headers (most importantly User-Agent), cookies; Using the Chainstack Blockchain infrastructure, we process nodes' token stored in Chainstack Vault, IP address and HTTP headers, request body, API token in Chainstack Vault.https://chainstack.com/privacy/"},{url:"https://scroll-sepolia.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://scroll-testnet.rpc.grove.city/v1/a7a7c8e2",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"http://scroll-sepolia-rpc.01no.de:8545"},{url:"https://sepolia-rpc.scroll.io"}],534352:[{url:"https://rpc.scroll.io"},{url:"https://rpc-scroll.icecreamswap.com"},{url:"https://scroll-mainnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://scroll-mainnet-public.unifra.io",tracking:"limited",trackingDetails:"Regarding the RPC(remote procedure call) data, we do not collect request data or request origin. We temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days. Only the amounts of RPC requests of users are recorded for accounting and billing purposes within longer time. https://unifra.io/"},{url:"https://scroll.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://1rpc.io/scroll",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://scroll.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"https://scroll-mainnet.rpc.grove.city/v1/a7a7c8e2",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://rpc.ankr.com/scroll"},{url:"https://scroll-mainnet.chainstacklabs.com"}],534849:[{url:"https://rpc.shinarium.org"}],535037:[{url:"https://mainnet-rpc.bescscan.io"}],552981:[{url:"https://testnet-rpc.oneworldchain.org"}],555555:[{url:"https://rpc-testnet.pentagon.games"}],555666:[{url:"https://subnets.avax.network/eclipsecha/testnet/rpc"}],622277:[{url:"https://rpc.hypra.network"},{url:"https://rpc.rethereum.org"},{url:"https://rethereum.rpc.restratagem.com"},{url:"https://rpc.rthcentral.org"},{url:"https://hypra.rpc.thirdweb.com"}],622463:[{url:"https://rpc.testnet.atl.network"}],641230:[{url:"https://brnkc-mainnet.bearnetwork.net"},{url:"https://brnkc-mainnet1.bearnetwork.net"}],651940:[{url:"https://mainnet-rpc.alltra.global"}],656476:[{url:"https://rpc.open-campus-codex.gelato.digital"}],660279:[{url:"https://xai-chain.net/rpc"}],666666:[{url:"https://vpioneer.infragrid.v.network/ethereum/compatible"}],666888:[{url:"https://testnet-rpc.helachain.com"}],686868:[{url:"https://rpc.wonnetwork.org"}],696969:[{url:"https://devnet.galadriel.com"}],710420:[{url:"https://subnets.avax.network/tiltyard/mainnet/rpc"}],713715:[{url:"https://evm-rpc-arctic-1.sei-apis.com"},{url:"https://evm-rpc.arctic-1.seinetwork.io"}],721529:[{url:"https://mainnet-rpc.eramscan.com"}],743111:[{url:"https://testnet.rpc.hemi.network/rpc"}],751230:[{url:"https://brnkc-test.bearnetwork.net"}],752024:[{url:"https://rpc.zkevm.ternoa.network"}],761412:[{url:"https://mainnet-rpc.miexs.com"}],764984:[{url:"https://subnets.avax.network/lamina1tes/testnet/rpc"}],767368:[{url:"https://subnets.avax.network/lamina1id/testnet/rpc"}],776877:[{url:"https://fraa-dancebox-3035-rpc.a.dancebox.tanssi.network"}],800001:[{url:"https://rpc.octa.space"},{url:"wss://rpc.octa.space"}],808080:[{url:"https://rpc-testnet.bizex.io"}],808813:[{url:"https://bob-sepolia.rpc.gobob.xyz"},{url:"wss://bob-sepolia.rpc.gobob.xyz"}],810180:[{url:"https://rpc.zklink.io"},{url:"wss://rpc.zklink.io"}],810181:[{url:"https://sepolia.rpc.zklink.io"},{url:"wss://sepolia.rpc.zklink.io"}],810182:[{url:"https://goerli.rpc.zklink.io"},{url:"wss://goerli.rpc.zklink.io"}],820522:[{url:"https://testnet.tscscan.io/testrpc"}],827431:[{url:"https://mainnet-rpc.curvescan.io"}],839320:[{url:"https://testnet-rpc.prmscan.org"}],84e4:[{url:"https://rpc.runevm.io"}],846e3:[{url:"https://chain.deptofgood.com"}],855456:[{url:"https://fraa-dancebox-3041-rpc.a.dancebox.tanssi.network"},{url:"wss://fraa-dancebox-3041-rpc.a.dancebox.tanssi.network"}],879151:[{url:"https://mainnet-rpc.blxscan.com"}],888882:[{url:"https://rpc.rexxnetwork.com"}],888888:[{url:"https://infragrid.v.network/ethereum/compatible"}],9e5:[{url:"https://api.posichain.org"},{url:"https://api.s0.posichain.org"}],91e4:[{url:"https://api.s0.t.posichain.org"}],912559:[{url:"https://rpc.evm.dusk-3.devnet.astria.org"}],92e4:[{url:"https://api.s0.d.posichain.org"}],920001:[{url:"https://api.s1.d.posichain.org"}],923018:[{url:"https://fncy-testnet-seed.fncy.world"}],955081:[{url:"https://subnets.avax.network/jono12/testnet/rpc"}],955305:[{url:"https://host-76-74-28-226.contentfabric.io/eth"},{url:"https://host-76-74-28-232.contentfabric.io/eth"},{url:"https://host-76-74-29-2.contentfabric.io/eth"},{url:"https://host-76-74-29-8.contentfabric.io/eth"},{url:"https://host-76-74-29-34.contentfabric.io/eth"},{url:"https://host-76-74-29-35.contentfabric.io/eth"},{url:"https://host-154-14-211-98.contentfabric.io/eth"},{url:"https://host-154-14-192-66.contentfabric.io/eth"},{url:"https://host-60-240-133-202.contentfabric.io/eth"},{url:"https://host-64-235-250-98.contentfabric.io/eth"}],978657:[{url:"https://rpc-testnet.treasure.lol/http"},{url:"wss://rpc-testnet.treasure.lol/ws"}],984122:[{url:"https://rpc.forma.art"}],984123:[{url:"https://rpc.sketchpad-1.forma.art"}],988207:[{url:"https://mainnet-rpc.ecroxscan.com"}],998899:[{url:"https://testnet-rpc.supernet.chaingames.io"}],999999:[{url:"https://node1.amchain.net"}],1100789:[{url:"https://testblock.protago-dev.com"}],1127469:[{url:"https://subnets.avax.network/tiltyard/testnet/rpc"}],1234567:[{url:"https://mainnet.sharecle.com"}],1261120:[{url:"https://rpc.zkatana.gelato.digital"},{url:"https://rpc.startale.com/zkatana"},{url:"https://astar-zkatana.drpc.org"},{url:"wss://astar-zkatana.drpc.org"}],1313114:[{url:"https://rpc.ethoprotocol.com"}],1313500:[{url:"https://rpc.xerom.org"}],1337702:[{url:"https://rpc.kintsugi.themerge.dev"}],1337802:[{url:"https://rpc.kiln.themerge.dev"}],1337803:[{url:"https://rpc.zhejiang.ethpandaops.io"}],1398243:[{url:"https://automata-testnet.alt.technology"}],1612127:[{url:"https://albireo-rpc.playfi.ai"}],1637450:[{url:"https://xterio-testnet.alt.technology"}],1731313:[{url:"https://devchain-poa.huabeizhenxuan.com"}],2021398:[{url:"http://rpc.testnet.debank.com"}],2099156:[{url:"https://mainnet.plian.io/pchain"}],2206132:[{url:"https://devnet2openapi.platon.network/rpc"},{url:"wss://devnet2openapi.platon.network/ws"}],2611555:[{url:"https://sc-rpc.dpu.ac.th"}],2702128:[{url:"https://xterio-eth.alt.technology"}],3132023:[{url:"https://mainnet.saharalabs.ai"}],3397901:[{url:"https://funki-testnet.alt.technology"}],3441005:[{url:"https://manta-testnet.calderachain.xyz/http"},{url:"https://manta-pacific-testnet.drpc.org"},{url:"wss://manta-pacific-testnet.drpc.org"}],3441006:[{url:"https://pacific-rpc.sepolia-testnet.manta.network/http"}],4000003:[{url:"https://zero.alt.technology"}],4281033:[{url:"https://worlds-test.calderachain.xyz/http"}],4444444:[{url:"https://altar-rpc.ceremonies.ai"}],4457845:[{url:"https://rpc.zerion.io/v1/zero-sepolia"}],5112023:[{url:"https://rpc-mainnet.numblock.org"}],5167003:[{url:"https://wannsee-rpc.mxc.com"}],5167004:[{url:"https://geneva-rpc.moonchain.com"}],5201420:[{url:"https://testnet-rpc.electroneum.com"}],5318008:[{url:"https://kopli-rpc.reactive.network"},{url:"http://kopli-rpc.rkt.ink"}],5555555:[{url:"https://jsonrpc.imversed.network"},{url:"https://ws-jsonrpc.imversed.network"}],5555558:[{url:"https://jsonrpc-test.imversed.network"},{url:"https://ws-jsonrpc-test.imversed.network"}],6038361:[{url:"https://rpc.startale.com/zkyoto"},{url:"https://rpc.zkyoto.gelato.digital"}],6666665:[{url:"https://rpc.anwang.com"}],6666666:[{url:"https://rpc-testnet.anwang.com"}],7225878:[{url:"https://rpc.saakuru.network"}],7355310:[{url:"https://mainnet-external.openvessel.io"}],7668378:[{url:"https://rpc.testnet.qom.one"}],7762959:[{url:"https://mewapi.musicoin.tw"}],7777777:[{url:"https://rpc.zora.energy"}],8007736:[{url:"https://mainnet.plian.io/child_0"}],8008135:[{url:"https://api.helium.fhenix.zone"}],8080808:[{url:"https://mainnet.hokum.gg"}],8601152:[{url:"https://rpc.testnet8.waterfall.network"}],8794598:[{url:"https://jsonrpc.hap.land"}],9322252:[{url:"https://xcap-mainnet.relay.xcap.network/znzvh2ueyvm2yts5fv5gnul395jbkfb2/rpc1"}],9322253:[{url:"https://xcap-milvine.relay.xcap.network/zj5l55ftsgi027kz4nf14vs8d89inego/rpc1"}],9999999:[{url:"https://rpc.mainnet.fluence.dev"},{url:"wss://ws.mainnet.fluence.dev"}],10067275:[{url:"https://testnet.plian.io/child_test"}],10101010:[{url:"https://mainnet-rpc.soverun.com"}],10241024:[{url:"https://rpc.alienxchain.io/http"}],10241025:[{url:"https://hal-rpc.alienxchain.io/http"},{url:"https://hal.rpc.caldera.xyz/http"}],11145513:[{url:"https://blessnet-sepolia-testnet.rpc.caldera.xyz/http"},{url:"wss://blessnet-sepolia-testnet.rpc.caldera.xyz/ws"}],11155111:[{url:"https://eth-sepolia.g.alchemy.com/v2/demo",tracking:"yes",trackingDetails:"We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy"},{url:"https://endpoints.omniatech.io/v1/eth/sepolia/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://ethereum-sepolia.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://eth-sepolia.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"},{url:"https://eth-sepolia-public.unifra.io",tracking:"limited",trackingDetails:"Regarding the RPC(remote procedure call) data, we do not collect request data or request origin. We temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days. Only the amounts of RPC requests of users are recorded for accounting and billing purposes within longer time. https://unifra.io/"},{url:"https://sepolia.gateway.tenderly.co",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://gateway.tenderly.co/public/sepolia",tracking:"yes",trackingDetails:"Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy"},{url:"https://sphinx.shardeum.org",tracking:"yes",trackingDetails:"Shardeum follows a standard procedure of using log files. These files log visitors when they visit websites... The information collected by log files includes IP addresses, browser type, ISP, date and time stamp, referring/exit pages, and potentially the number of clicks.https://shardeum.org/privacy-policy/"},{url:"https://dapps.shardeum.org",tracking:"yes",trackingDetails:"Shardeum follows a standard procedure of using log files. These files log visitors when they visit websites... The information collected by log files includes IP addresses, browser type, ISP, date and time stamp, referring/exit pages, and potentially the number of clicks.https://shardeum.org/privacy-policy/"},{url:"https://api.zan.top/node/v1/eth/sepolia/public",tracking:"limited",trackingDetails:"ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario ——we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf"},{url:"https://rpc.notadegen.com/eth/sepolia"},{url:"https://ethereum-sepolia-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"wss://ethereum-sepolia-rpc.publicnode.com",tracking:"none",trackingDetails:"We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy"},{url:"https://1rpc.io/sepolia",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://eth-sepolia.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://rpc.sepolia.org"},{url:"https://rpc2.sepolia.org"},{url:"https://rpc-sepolia.rockx.com"},{url:"https://rpc.sepolia.ethpandaops.io"},{url:"wss://sepolia.gateway.tenderly.co"},{url:"https://sepolia.drpc.org"},{url:"wss://sepolia.drpc.org"}],11155420:[{url:"https://optimism-sepolia.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://sepolia.optimism.io"},{url:"https://optimism-sepolia.drpc.org"},{url:"wss://optimism-sepolia.drpc.org"}],12052024:[{url:"https://test-rpc.mementoblockchain.com/IRkghvI3FfEArEJMr4zC/rpc"}],12227332:[{url:"https://testnet.rpc.banelabs.org"}],13068200:[{url:"https://devnet.coti.io/rpc"}],13371337:[{url:"https://churchill-rpc.pepchain.io"}],14288640:[{url:"https://rpc.anduschain.io/rpc"},{url:"wss://rpc.anduschain.io/ws"}],16658437:[{url:"https://testnet.plian.io/testnet"}],17000920:[{url:"https://testnrpc.lambda.im"}],18071918:[{url:"https://mande-mainnet.public.blastapi.io"}],18289463:[{url:"https://net.iolite.io"}],19850818:[{url:"https://rpc-testnet.dbcwallet.io"}],19880818:[{url:"https://rpc.dbcwallet.io"}],20180427:[{url:"https://free.testnet.stabilityprotocol.com"}],20180430:[{url:"https://jsonapi1.smartmesh.cn"}],20181205:[{url:"https://hz.rpc.qkiscan.cn"},{url:"https://rpc1.qkiscan.cn"},{url:"https://rpc2.qkiscan.cn"},{url:"https://rpc3.qkiscan.cn"},{url:"https://rpc1.qkiscan.io"},{url:"https://rpc2.qkiscan.io"},{url:"https://rpc3.qkiscan.io"},{url:"https://jp.rpc.qkiscan.io"}],20201022:[{url:"https://pegorpc.com"},{url:"https://node1.pegorpc.com"},{url:"https://node2.pegorpc.com"},{url:"https://node3.pegorpc.com"}],20230825:[{url:"https://testnet.vcity.app"}],20240324:[{url:"https://sepolia-rpc.testnet.debank.com"}],20240603:[{url:"https://rpc.mainnet.dbkchain.io"}],20241133:[{url:"https://rpc-proxima.swanchain.io"}],20482050:[{url:"https://testnet.hokum.gg"}],22052002:[{url:"https://edgewallet1.xlon.org"}],27082017:[{url:"https://testnet-rpc.exlscan.com"}],27082022:[{url:"https://rpc.exlscan.com"}],28122024:[{url:"https://rpcv2-testnet.ancient8.gg"}],28945486:[{url:"https://rpc.auxilium.global"}],29032022:[{url:"https://flachain.flaexchange.top"}],35855456:[{url:"https://node.joys.digital"}],37084624:[{url:"https://testnet.skalenodes.com/v1/lanky-ill-funny-testnet"},{url:"wss://testnet.skalenodes.com/v1/ws/lanky-ill-funny-testnet"}],39916801:[{url:"https://kingdomchain.observer/rpc"}],43214913:[{url:"http://174.138.9.169:9650/ext/bc/VUKSzFZKckx4PoZF9gX5QAqLPxbLzvu1vcssPG5QuodaJtdHT/rpc"}],52164803:[{url:"https://rpc.testnet.fluence.dev"},{url:"wss://ws.testnet.fluence.dev"}],61717561:[{url:"https://c.onical.org"},{url:"https://tx.aquacha.in/api"}],65010003:[{url:"https://rpc1.bakerloo.autonity.org"},{url:"wss://rpc1.bakerloo.autonity.org/ws"}],65100003:[{url:"https://rpc1.piccadilly.autonity.org"},{url:"wss://rpc1.piccadilly.autonity.org/ws"}],68840142:[{url:"https://rpc.testnet.frame.xyz/http"}],77787778:[{url:"https://rpc-test.0xhash.io"}],79479957:[{url:"https://rpc.sx-rollup-testnet.t.raas.gelato.cloud"}],88558801:[{url:"https://testnet.rpc.backstop.technology"}],88888888:[{url:"https://rpc.teamblockchain.team",tracking:"none",trackingDetails:"We only store and track data that will be publicly available on the blockchain, and do not collect or retain any other user data. https://policy.teamblockchain.team/"}],94204209:[{url:"https://rpc.polygon-blackberry.gelato.digital"},{url:"wss://ws.polygon-blackberry.gelato.digital"}],99415706:[{url:"https://toys.joys.cash"}],1e8:[{url:"https://rpc.ethos.cool"}],108160679:[{url:"https://evm.orai.io"}],111557560:[{url:"https://cyber-testnet.alt.technology"},{url:"wss://cyber-testnet.alt.technology/ws"},{url:"https://rpc.testnet.cyber.co"},{url:"wss://rpc.testnet.cyber.co"}],123420111:[{url:"https://rpc.opcelestia-raspberry.gelato.digital"},{url:"wss://ws.opcelestia-raspberry.gelato.digital"}],161221135:[{url:"https://testnet-rpc.plumenetwork.xyz/http"},{url:"wss://testnet-rpc.plumenetwork.xyz/ws"}],168587773:[{url:"https://blast-sepolia.blockpi.network/v1/rpc/public",tracking:"limited",trackingDetails:"We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy"},{url:"https://sepolia.blast.io"},{url:"https://blast-sepolia.drpc.org"},{url:"wss://blast-sepolia.drpc.org"}],192837465:[{url:"https://mainnet.gather.network"}],222000222:[{url:"https://testnet-rpc.meld.com"}],245022926:[{url:"https://devnet.neonevm.org"},{url:"https://neon-evm-devnet.drpc.org"},{url:"wss://neon-evm-devnet.drpc.org"}],245022929:[{url:"https://devnet.rollup.neonevm.org"}],245022934:[{url:"https://neon-proxy-mainnet.solana.p2p.org"},{url:"https://neon-mainnet.everstake.one"},{url:"https://neon-evm.drpc.org"},{url:"wss://neon-evm.drpc.org"}],278611351:[{url:"https://mainnet.skalenodes.com/v1/turbulent-unique-scheat"}],311752642:[{url:"https://mainnet-rpc.oneledger.network"}],328527624:[{url:"https://testnet-rpc.nal.network"}],333000333:[{url:"https://rpc-1.meld.com"}],356256156:[{url:"https://testnet.gather.network"}],476462898:[{url:"https://skopje-rpc.gptprotocol.io"}],486217935:[{url:"https://devnet.gather.network"}],531050104:[{url:"https://rpc.testnet.sophon.xyz"}],666666666:[{url:"https://rpc.degen.tips"}],888888888:[{url:"https://rpc.ancient8.gg"}],889910245:[{url:"https://rpc-testnet.ptcscan.io"}],889910246:[{url:"https://rpc.ptcscan.io"}],974399131:[{url:"https://testnet.skalenodes.com/v1/giant-half-dual-testnet"}],999999999:[{url:"https://sepolia.rpc.zora.energy"}],1020352220:[{url:"https://testnet.skalenodes.com/v1/aware-fake-trim-testnet"},{url:"wss://testnet.skalenodes.com/v1/ws/aware-fake-trim-testnet"}],1122334455:[{url:"https://rpc.iposlab.com"},{url:"https://rpc2.iposlab.com"}],1146703430:[{url:"http://cybeth1.cyberdeck.eu:8545"}],1273227453:[{url:"https://mainnet.skalenodes.com/v1/wan-red-ain"}],1313161554:[{url:"https://mainnet.aurora.dev"},{url:"https://endpoints.omniatech.io/v1/aurora/mainnet/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://1rpc.io/aurora",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://aurora.drpc.org",tracking:"none",trackingDetails:"Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy"},{url:"wss://aurora.drpc.org"}],1313161555:[{url:"https://endpoints.omniatech.io/v1/aurora/testnet/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://testnet.aurora.dev"},{url:"https://aurora-testnet.drpc.org"},{url:"wss://aurora-testnet.drpc.org"}],1313161560:[{url:"https://powergold.aurora.dev"}],1350216234:[{url:"https://mainnet.skalenodes.com/v1/parallel-stormy-spica"},{url:"wss://mainnet.skalenodes.com/v1/ws/parallel-stormy-spica"}],1351057110:[{url:"https://staging-v3.skalenodes.com/v1/staging-fast-active-bellatrix"}],1380012617:[{url:"https://rari.calderachain.xyz/http"}],1380996178:[{url:"https://rpc.raptorchain.io/web3"}],1444673419:[{url:"https://testnet.skalenodes.com/v1/juicy-low-small-testnet"}],1482601649:[{url:"https://mainnet.skalenodes.com/v1/green-giddy-denebola"},{url:"wss://mainnet-proxy.skalenodes.com/v1/ws/green-giddy-denebola"}],1511670449:[{url:"https://rpc.gptprotocol.io"}],1564830818:[{url:"https://mainnet.skalenodes.com/v1/honorable-steel-rasalhague"}],16666e5:[{url:"https://api.harmony.one"},{url:"https://a.api.s0.t.hmny.io"},{url:"https://api.s0.t.hmny.io"},{url:"https://rpc.ankr.com/harmony",tracking:"limited",trackingDetails:"For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/"},{url:"https://harmony.api.onfinality.io/public",tracking:"limited",trackingDetails:"For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/"},{url:"https://1rpc.io/one",tracking:"none",trackingDetails:"With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking"},{url:"https://hmyone-pokt.nodies.app",tracking:"none",trackingDetails:"What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/"},{url:"https://endpoints.omniatech.io/v1/harmony/mainnet-0/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://harmony-0.drpc.org"},{url:"wss://harmony-0.drpc.org"}],1666600001:[{url:"https://s1.api.harmony.one"},{url:"https://api.s1.t.hmny.io"},{url:"https://harmony-1.drpc.org"},{url:"wss://harmony-1.drpc.org"}],16667e5:[{url:"https://endpoints.omniatech.io/v1/harmony/testnet-0/public",tracking:"none",trackingDetails:"All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data"},{url:"https://api.s0.b.hmny.io"}],1666700001:[{url:"https://api.s1.b.hmny.io"}],16669e5:[{url:"https://api.s0.ps.hmny.io"}],1666900001:[{url:"https://api.s1.ps.hmny.io"}],1802203764:[{url:"https://sepolia-rpc.kakarot.org"}],1903648807:[{url:"https://gemutest-rpc.gemuchain.io"}],1918988905:[{url:"https://testnet.rpc.rarichain.org/http"}],2021121117:[{url:"https://23.92.21.121:8545"}],2046399126:[{url:"https://mainnet.skalenodes.com/v1/elated-tan-skat"},{url:"wss://mainnet.skalenodes.com/v1/elated-tan-skat"}],3125659152:[{url:"https://wallrpc.pirl.io"}],4216137055:[{url:"https://frankenstein-rpc.oneledger.network"}],11297108109:[{url:"https://palm-mainnet.infura.io/v3/3a961d6501e54add9a41aa53f15de99b",tracking:"limited",trackingDetails:"We collect wallet and IP address information. The purpose of this collection is to ensure successful transaction propagation, execution, and other important service functionality such as load balancing and DDoS protection. IP addresses and wallet address data relating to a transaction are not stored together or in a way that allows our systems to associate those two pieces of data. We retain and delete user data such as IP address and wallet address pursuant to our data retention policy. https://consensys.net/blog/news/consensys-data-retention-update/"},{url:"https://palm-mainnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"}],11297108099:[{url:"https://palm-testnet.public.blastapi.io",tracking:"limited",trackingDetails:"All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy"}],28872323069:[{url:"https://testnet.gitswarm.com:2096"}],37714555429:[{url:"https://testnet-v2.xai-chain.net/rpc"}],88153591557:[{url:"https://rpc.arb-blueberry.gelato.digital"},{url:"wss://ws.arb-blueberry.gelato.digital"}],111222333444:[{url:"https://londonpublic.alphabetnetwork.org"},{url:"wss://londonpublic.alphabetnetwork.org/ws"},{url:"https://main-rpc.com"},{url:"wss://main-rpc.com/ws"}],123420000220:[{url:"https://rpc-123420000220.raas-testnet.gelato.digital"},{url:"wss://ws-123420000220.raas-testnet.gelato.digital"}],197710212030:[{url:"https://rpc.ntity.io"}],197710212031:[{url:"https://blockchain.haradev.com"}],202402181627:[{url:"https://gmnetwork-testnet.alt.technology"}],383414847825:[{url:"https://smart.zeniq.network:9545"}],666301171999:[{url:"https://mainnet.ipdc.io"}],6022140761023:[{url:"https://molereum.jdubedition.com"}],2713017997578e3:[{url:"https://dchaintestnet-2713017997578000-1.jsonrpc.testnet.sagarpc.io"}],2716446429837e3:[{url:"https://dchain-2716446429837000-1.jsonrpc.sagarpc.io"}]};var Bs="0x000000000022D473030F116dDEE9F6B43aC78BA3";var xs="0xAa1bfC0e51969415d64d6dE74f27CDa0587e645b";var Os="http://127.0.0.1:8545";var Ts="http://127.0.0.1:8546";var Us={...{...Cs},31337:"anvil",1337:"hardhat"};var Ms=Object.fromEntries(Object.entries(Us).map((([Wt,Pt])=>[Pt,Wt])));Reflect.deleteProperty(Ms,"geth-testnet");Reflect.deleteProperty(Ms,"gochain-testnet");var zs=Object.fromEntries(Object.entries(Ms).map((([,Wt])=>{const Pt=Ls[Wt];return[Wt,{rpcs:Pt}]})));var Ss=Object.fromEntries(Object.entries(Ms).map((([,Wt])=>{const Pt=ks[Wt];return[Wt,Pt]})));var js=Object.fromEntries(Object.entries(Js).map((([Wt,Pt])=>[Wt,Pt])));function getNetworkName(Wt){const Pt=Us[Wt];if(!Pt){console.error(`Unknown network ID: ${Wt}`)}return Pt??"Unknown Network"}function getNetworkId(Wt){const Pt=Ms[Wt];if(!Pt){console.error(`Unknown network name: ${Wt}`)}return Pt??-1}function getNetworkFaucets(Wt){const Pt=Xs[Wt];if(!Pt){console.error(`There may not be any faucets for network ID: ${Wt}`)}return Pt??[]}function getNetworkExplorer(Wt){const Pt=Ss[Wt];if(!Pt){console.error(`There may not be any explorers for network ID: ${Wt}`)}return Pt??[]}function getNetworkRpcs(Wt){const Pt=zs[Wt];if(!Pt){console.error(`There may not be any RPCs for network ID: ${Wt}`)}return Pt??[]}function getNetworkCurrency(Wt){const Pt=js[Wt];if(!Pt){console.error(`There may not be a currency for network ID: ${Wt}`)}return Pt??{name:"Unknown Token",symbol:"UNK",decimals:18}}function getNetworkData(Wt){return{name:getNetworkName(Wt),id:Wt,rpcs:getNetworkRpcs(Wt),currency:getNetworkCurrency(Wt),explorers:getNetworkExplorer(Wt),faucets:getNetworkFaucets(Wt)}}var Ds=__toESM(rs());function getRpcUrls(Wt){const Pt=[];Wt.forEach((Wt=>{if(typeof Wt=="string"){Pt.push(Wt)}else{Pt.push(Wt.url)}}));return Pt}var _s=class{constructor(){this.ok=this.ok.bind(this);this.info=this.info.bind(this);this.error=this.error.bind(this);this.fatal=this.fatal.bind(this);this.debug=this.debug.bind(this);this.verbose=this.verbose.bind(this)}log(Wt,Pt,en){this._logWithStack(Wt,Pt,en)}fatal(Wt,Pt){this._logWithStack(Ps.FATAL,Wt,Pt)}error(Wt,Pt){this._logWithStack(Ps.ERROR,Wt,Pt)}ok(Wt,Pt){this._logWithStack("ok",Wt,Pt)}info(Wt,Pt){this._logWithStack(Ps.INFO,Wt,Pt)}debug(Wt,Pt){this._logWithStack(Ps.DEBUG,Wt,Pt)}verbose(Wt,Pt){this._logWithStack(Ps.VERBOSE,Wt,Pt)}getStackTrace(){try{throw new Error}catch(Wt){return Wt.stack?.split("\n")}}_logWithStack(Wt,Pt,en){if(!en){this._log(Wt,Pt);return}else if(typeof en==="string"){this._log(Wt,`${Pt} - ${en}`);return}else if(typeof en==="object"&&!(en.error||en?.stack)){this._log(Wt,`${Pt} ${!this._isEmpty(en)?JSON.stringify(en,null,2):""}`);return}const tn=en;let nn=tn?.error?.stack||tn?.stack;const an=this.getStackTrace();if(an){an.splice(0,4);nn=an.filter((Wt=>Wt.includes(".ts:"))).join("\n")}const rn={...tn};delete rn.message;delete rn.name;delete rn.stack;if(!this._isEmpty(rn)){this._log(Wt,rn)}if(nn&&typeof nn=="string"){const Pt=this._formatStackTrace(nn,1);const en=this._colorizeText(Pt,Ks.dim);this._log(Wt,en)}else if(nn&&Array.isArray(nn)){const Pt=this._formatStackTrace(nn.join("\n"),1);const en=this._colorizeText(Pt,Ks.dim);this._log(Wt,en)}}_colorizeText(Wt,Pt){if(!Pt){throw new Error(`Invalid color: ${Pt}`)}return Pt.concat(Wt).concat(Ks.reset)}_formatStackTrace(Wt,Pt=0,en=""){const tn=Wt.split("\n");for(let Wt=0;Wt`${en}${Wt.replace(/\s*at\s*/," ↳ ")}`)).join("\n")}_isEmpty(Wt){return!Reflect.ownKeys(Wt).some((Pt=>typeof Wt[String(Pt)]!=="function"))}_log(Wt,Pt){const en={fatal:"×",ok:"✓",error:"⚠",info:"›",debug:"››",verbose:"💬",none:""};const tn=en[Wt];const nn=typeof Pt==="string"?Pt:JSON.stringify(Pt,null,2);if(!nn||nn==="{}"||nn.trim()===""){return}const an=nn.split("\n");const rn=an.map(((Wt,Pt)=>{const en=Pt===0?`\t${tn}`:`\t${" ".repeat(tn.length)}`;return`${en} ${Wt}`})).join("\n");const In=rn;const sn={fatal:["error",Ks.fgRed],ok:["log",Ks.fgGreen],error:["warn",Ks.fgYellow],info:["info",Ks.dim],debug:["debug",Ks.fgMagenta],verbose:["debug",Ks.dim],none:["log",Ks.reset]};const on=console[sn[Wt][0]];if(typeof on==="function"&&In.length>0){on(this._colorizeText(In,sn[Wt][1]))}else{throw new Error(In)}}};var Ks={reset:"",bright:"",dim:"",underscore:"",blink:"",reverse:"",hidden:"",fgBlack:"",fgRed:"",fgGreen:"",fgYellow:"",fgBlue:"",fgMagenta:"",fgCyan:"",fgWhite:"",bgBlack:"",bgRed:"",bgGreen:"",bgYellow:"",bgBlue:"",bgMagenta:"",bgCyan:"",bgWhite:""};var Ps={FATAL:"fatal",ERROR:"error",INFO:"info",VERBOSE:"verbose",DEBUG:"debug",NONE:"none"};function bind(Wt,Pt){return function wrap(){return Wt.apply(Pt,arguments)}}var{toString:qs}=Object.prototype;var{getPrototypeOf:$s}=Object;var eo=(Wt=>Pt=>{const en=qs.call(Pt);return Wt[en]||(Wt[en]=en.slice(8,-1).toLowerCase())})(Object.create(null));var kindOfTest=Wt=>{Wt=Wt.toLowerCase();return Pt=>eo(Pt)===Wt};var typeOfTest=Wt=>Pt=>typeof Pt===Wt;var{isArray:to}=Array;var no=typeOfTest("undefined");function isBuffer(Wt){return Wt!==null&&!no(Wt)&&Wt.constructor!==null&&!no(Wt.constructor)&&ro(Wt.constructor.isBuffer)&&Wt.constructor.isBuffer(Wt)}var lo=kindOfTest("ArrayBuffer");function isArrayBufferView(Wt){let Pt;if(typeof ArrayBuffer!=="undefined"&&ArrayBuffer.isView){Pt=ArrayBuffer.isView(Wt)}else{Pt=Wt&&Wt.buffer&&lo(Wt.buffer)}return Pt}var ao=typeOfTest("string");var ro=typeOfTest("function");var Io=typeOfTest("number");var isObject=Wt=>Wt!==null&&typeof Wt==="object";var isBoolean=Wt=>Wt===true||Wt===false;var isPlainObject=Wt=>{if(eo(Wt)!=="object"){return false}const Pt=$s(Wt);return(Pt===null||Pt===Object.prototype||Object.getPrototypeOf(Pt)===null)&&!(Symbol.toStringTag in Wt)&&!(Symbol.iterator in Wt)};var so=kindOfTest("Date");var oo=kindOfTest("File");var co=kindOfTest("Blob");var io=kindOfTest("FileList");var isStream=Wt=>isObject(Wt)&&ro(Wt.pipe);var isFormData=Wt=>{let Pt;return Wt&&(typeof FormData==="function"&&Wt instanceof FormData||ro(Wt.append)&&((Pt=eo(Wt))==="formdata"||Pt==="object"&&ro(Wt.toString)&&Wt.toString()==="[object FormData]"))};var uo=kindOfTest("URLSearchParams");var[po,mo,bo,Go]=["ReadableStream","Request","Response","Headers"].map(kindOfTest);var trim=Wt=>Wt.trim?Wt.trim():Wt.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function forEach(Wt,Pt,{allOwnKeys:en=false}={}){if(Wt===null||typeof Wt==="undefined"){return}let tn;let nn;if(typeof Wt!=="object"){Wt=[Wt]}if(to(Wt)){for(tn=0,nn=Wt.length;tn0){nn=en[tn];if(Pt===nn.toLowerCase()){return nn}}return null}var ho=(()=>{if(typeof globalThis!=="undefined")return globalThis;return typeof self!=="undefined"?self:typeof window!=="undefined"?window:global})();var isContextDefined=Wt=>!no(Wt)&&Wt!==ho;function merge(){const{caseless:Wt}=isContextDefined(this)&&this||{};const Pt={};const assignValue=(en,tn)=>{const nn=Wt&&findKey(Pt,tn)||tn;if(isPlainObject(Pt[nn])&&isPlainObject(en)){Pt[nn]=merge(Pt[nn],en)}else if(isPlainObject(en)){Pt[nn]=merge({},en)}else if(to(en)){Pt[nn]=en.slice()}else{Pt[nn]=en}};for(let Wt=0,Pt=arguments.length;Wt{forEach(Pt,((Pt,tn)=>{if(en&&ro(Pt)){Wt[tn]=bind(Pt,en)}else{Wt[tn]=Pt}}),{allOwnKeys:tn});return Wt};var stripBOM=Wt=>{if(Wt.charCodeAt(0)===65279){Wt=Wt.slice(1)}return Wt};var inherits=(Wt,Pt,en,tn)=>{Wt.prototype=Object.create(Pt.prototype,tn);Wt.prototype.constructor=Wt;Object.defineProperty(Wt,"super",{value:Pt.prototype});en&&Object.assign(Wt.prototype,en)};var toFlatObject=(Wt,Pt,en,tn)=>{let nn;let an;let rn;const In={};Pt=Pt||{};if(Wt==null)return Pt;do{nn=Object.getOwnPropertyNames(Wt);an=nn.length;while(an-- >0){rn=nn[an];if((!tn||tn(rn,Wt,Pt))&&!In[rn]){Pt[rn]=Wt[rn];In[rn]=true}}Wt=en!==false&&$s(Wt)}while(Wt&&(!en||en(Wt,Pt))&&Wt!==Object.prototype);return Pt};var endsWith=(Wt,Pt,en)=>{Wt=String(Wt);if(en===void 0||en>Wt.length){en=Wt.length}en-=Pt.length;const tn=Wt.indexOf(Pt,en);return tn!==-1&&tn===en};var toArray=Wt=>{if(!Wt)return null;if(to(Wt))return Wt;let Pt=Wt.length;if(!Io(Pt))return null;const en=new Array(Pt);while(Pt-- >0){en[Pt]=Wt[Pt]}return en};var Zo=(Wt=>Pt=>Wt&&Pt instanceof Wt)(typeof Uint8Array!=="undefined"&&$s(Uint8Array));var forEachEntry=(Wt,Pt)=>{const en=Wt&&Wt[Symbol.iterator];const tn=en.call(Wt);let nn;while((nn=tn.next())&&!nn.done){const en=nn.value;Pt.call(Wt,en[0],en[1])}};var matchAll=(Wt,Pt)=>{let en;const tn=[];while((en=Wt.exec(Pt))!==null){tn.push(en)}return tn};var Ao=kindOfTest("HTMLFormElement");var toCamelCase=Wt=>Wt.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function replacer(Wt,Pt,en){return Pt.toUpperCase()+en}));var Wo=(({hasOwnProperty:Wt})=>(Pt,en)=>Wt.call(Pt,en))(Object.prototype);var No=kindOfTest("RegExp");var reduceDescriptors=(Wt,Pt)=>{const en=Object.getOwnPropertyDescriptors(Wt);const tn={};forEach(en,((en,nn)=>{let an;if((an=Pt(en,nn,Wt))!==false){tn[nn]=an||en}}));Object.defineProperties(Wt,tn)};var freezeMethods=Wt=>{reduceDescriptors(Wt,((Pt,en)=>{if(ro(Wt)&&["arguments","caller","callee"].indexOf(en)!==-1){return false}const tn=Wt[en];if(!ro(tn))return;Pt.enumerable=false;if("writable"in Pt){Pt.writable=false;return}if(!Pt.set){Pt.set=()=>{throw Error("Can not rewrite read-only method '"+en+"'")}}}))};var toObjectSet=(Wt,Pt)=>{const en={};const define2=Wt=>{Wt.forEach((Wt=>{en[Wt]=true}))};to(Wt)?define2(Wt):define2(String(Wt).split(Pt));return en};var noop=()=>{};var toFiniteNumber=(Wt,Pt)=>Wt!=null&&Number.isFinite(Wt=+Wt)?Wt:Pt;var go="abcdefghijklmnopqrstuvwxyz";var yo="0123456789";var vo={DIGIT:yo,ALPHA:go,ALPHA_DIGIT:go+go.toUpperCase()+yo};var generateString=(Wt=16,Pt=vo.ALPHA_DIGIT)=>{let en="";const{length:tn}=Pt;while(Wt--){en+=Pt[Math.random()*tn|0]}return en};function isSpecCompliantForm(Wt){return!!(Wt&&ro(Wt.append)&&Wt[Symbol.toStringTag]==="FormData"&&Wt[Symbol.iterator])}var toJSONObject=Wt=>{const Pt=new Array(10);const visit=(Wt,en)=>{if(isObject(Wt)){if(Pt.indexOf(Wt)>=0){return}if(!("toJSON"in Wt)){Pt[en]=Wt;const tn=to(Wt)?[]:{};forEach(Wt,((Wt,Pt)=>{const nn=visit(Wt,en+1);!no(nn)&&(tn[Pt]=nn)}));Pt[en]=void 0;return tn}}return Wt};return visit(Wt,0)};var Yo=kindOfTest("AsyncFunction");var isThenable=Wt=>Wt&&(isObject(Wt)||ro(Wt))&&ro(Wt.then)&&ro(Wt.catch);var Eo={isArray:to,isArrayBuffer:lo,isBuffer:isBuffer,isFormData:isFormData,isArrayBufferView:isArrayBufferView,isString:ao,isNumber:Io,isBoolean:isBoolean,isObject:isObject,isPlainObject:isPlainObject,isReadableStream:po,isRequest:mo,isResponse:bo,isHeaders:Go,isUndefined:no,isDate:so,isFile:oo,isBlob:co,isRegExp:No,isFunction:ro,isStream:isStream,isURLSearchParams:uo,isTypedArray:Zo,isFileList:io,forEach:forEach,merge:merge,extend:extend,trim:trim,stripBOM:stripBOM,inherits:inherits,toFlatObject:toFlatObject,kindOf:eo,kindOfTest:kindOfTest,endsWith:endsWith,toArray:toArray,forEachEntry:forEachEntry,matchAll:matchAll,isHTMLForm:Ao,hasOwnProperty:Wo,hasOwnProp:Wo,reduceDescriptors:reduceDescriptors,freezeMethods:freezeMethods,toObjectSet:toObjectSet,toCamelCase:toCamelCase,noop:noop,toFiniteNumber:toFiniteNumber,findKey:findKey,global:ho,isContextDefined:isContextDefined,ALPHABET:vo,generateString:generateString,isSpecCompliantForm:isSpecCompliantForm,toJSONObject:toJSONObject,isAsyncFn:Yo,isThenable:isThenable};function AxiosError(Wt,Pt,en,tn,nn){Error.call(this);if(Error.captureStackTrace){Error.captureStackTrace(this,this.constructor)}else{this.stack=(new Error).stack}this.message=Wt;this.name="AxiosError";Pt&&(this.code=Pt);en&&(this.config=en);tn&&(this.request=tn);nn&&(this.response=nn)}Eo.inherits(AxiosError,Error,{toJSON:function toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Eo.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var Vo=AxiosError.prototype;var Ro={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((Wt=>{Ro[Wt]={value:Wt}}));Object.defineProperties(AxiosError,Ro);Object.defineProperty(Vo,"isAxiosError",{value:true});AxiosError.from=(Wt,Pt,en,tn,nn,an)=>{const rn=Object.create(Vo);Eo.toFlatObject(Wt,rn,(function filter2(Wt){return Wt!==Error.prototype}),(Wt=>Wt!=="isAxiosError"));AxiosError.call(rn,Wt.message,Pt,en,tn,nn);rn.cause=Wt;rn.name=Wt.name;an&&Object.assign(rn,an);return rn};var wo=AxiosError;var Fo=__toESM(gs(),1);var Qo=Fo.default;function isVisitable(Wt){return Eo.isPlainObject(Wt)||Eo.isArray(Wt)}function removeBrackets(Wt){return Eo.endsWith(Wt,"[]")?Wt.slice(0,-2):Wt}function renderKey(Wt,Pt,en){if(!Wt)return Pt;return Wt.concat(Pt).map((function each(Wt,Pt){Wt=removeBrackets(Wt);return!en&&Pt?"["+Wt+"]":Wt})).join(en?".":"")}function isFlatArray(Wt){return Eo.isArray(Wt)&&!Wt.some(isVisitable)}var fo=Eo.toFlatObject(Eo,{},null,(function filter(Wt){return/^is[A-Z]/.test(Wt)}));function toFormData(Wt,Pt,en){if(!Eo.isObject(Wt)){throw new TypeError("target must be an object")}Pt=Pt||new(Qo||FormData);en=Eo.toFlatObject(en,{metaTokens:true,dots:false,indexes:false},false,(function defined(Wt,Pt){return!Eo.isUndefined(Pt[Wt])}));const tn=en.metaTokens;const nn=en.visitor||defaultVisitor;const an=en.dots;const rn=en.indexes;const In=en.Blob||typeof Blob!=="undefined"&&Blob;const sn=In&&Eo.isSpecCompliantForm(Pt);if(!Eo.isFunction(nn)){throw new TypeError("visitor must be a function")}function convertValue(Wt){if(Wt===null)return"";if(Eo.isDate(Wt)){return Wt.toISOString()}if(!sn&&Eo.isBlob(Wt)){throw new wo("Blob is not supported. Use a Buffer instead.")}if(Eo.isArrayBuffer(Wt)||Eo.isTypedArray(Wt)){return sn&&typeof Blob==="function"?new Blob([Wt]):Buffer.from(Wt)}return Wt}function defaultVisitor(Wt,en,nn){let In=Wt;if(Wt&&!nn&&typeof Wt==="object"){if(Eo.endsWith(en,"{}")){en=tn?en:en.slice(0,-2);Wt=JSON.stringify(Wt)}else if(Eo.isArray(Wt)&&isFlatArray(Wt)||(Eo.isFileList(Wt)||Eo.endsWith(en,"[]"))&&(In=Eo.toArray(Wt))){en=removeBrackets(en);In.forEach((function each(Wt,tn){!(Eo.isUndefined(Wt)||Wt===null)&&Pt.append(rn===true?renderKey([en],tn,an):rn===null?en:en+"[]",convertValue(Wt))}));return false}}if(isVisitable(Wt)){return true}Pt.append(renderKey(nn,en,an),convertValue(Wt));return false}const on=[];const cn=Object.assign(fo,{defaultVisitor:defaultVisitor,convertValue:convertValue,isVisitable:isVisitable});function build(Wt,en){if(Eo.isUndefined(Wt))return;if(on.indexOf(Wt)!==-1){throw Error("Circular reference detected in "+en.join("."))}on.push(Wt);Eo.forEach(Wt,(function each(Wt,tn){const an=!(Eo.isUndefined(Wt)||Wt===null)&&nn.call(Pt,Wt,Eo.isString(tn)?tn.trim():tn,en,cn);if(an===true){build(Wt,en?en.concat(tn):[tn])}}));on.pop()}if(!Eo.isObject(Wt)){throw new TypeError("data must be an object")}build(Wt);return Pt}var Ho=toFormData;function encode(Wt){const Pt={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(Wt).replace(/[!'()~]|%20|%00/g,(function replacer(Wt){return Pt[Wt]}))}function AxiosURLSearchParams(Wt,Pt){this._pairs=[];Wt&&Ho(Wt,this,Pt)}var Co=AxiosURLSearchParams.prototype;Co.append=function append(Wt,Pt){this._pairs.push([Wt,Pt])};Co.toString=function toString2(Wt){const Pt=Wt?function(Pt){return Wt.call(this,Pt,encode)}:encode;return this._pairs.map((function each(Wt){return Pt(Wt[0])+"="+Pt(Wt[1])}),"").join("&")};var Xo=AxiosURLSearchParams;function encode2(Wt){return encodeURIComponent(Wt).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function buildURL(Wt,Pt,en){if(!Pt){return Wt}const tn=en&&en.encode||encode2;const nn=en&&en.serialize;let an;if(nn){an=nn(Pt,en)}else{an=Eo.isURLSearchParams(Pt)?Pt.toString():new Xo(Pt,en).toString(tn)}if(an){const Pt=Wt.indexOf("#");if(Pt!==-1){Wt=Wt.slice(0,Pt)}Wt+=(Wt.indexOf("?")===-1?"?":"&")+an}return Wt}var ko=class{constructor(){this.handlers=[]}use(Wt,Pt,en){this.handlers.push({fulfilled:Wt,rejected:Pt,synchronous:en?en.synchronous:false,runWhen:en?en.runWhen:null});return this.handlers.length-1}eject(Wt){if(this.handlers[Wt]){this.handlers[Wt]=null}}clear(){if(this.handlers){this.handlers=[]}}forEach(Wt){Eo.forEach(this.handlers,(function forEachHandler(Pt){if(Pt!==null){Wt(Pt)}}))}};var Jo=ko;var Lo={silentJSONParsing:true,forcedJSONParsing:true,clarifyTimeoutError:false};var Bo=__toESM(en(87016),1);var xo=Bo.default.URLSearchParams;var Oo={isNode:true,classes:{URLSearchParams:xo,FormData:Qo,Blob:typeof Blob!=="undefined"&&Blob||null},protocols:["http","https","file","data"]};var To={};__export(To,{hasBrowserEnv:()=>Uo,hasStandardBrowserEnv:()=>Mo,hasStandardBrowserWebWorkerEnv:()=>zo,origin:()=>So});var Uo=typeof window!=="undefined"&&typeof document!=="undefined";var Mo=(Wt=>Uo&&["ReactNative","NativeScript","NS"].indexOf(Wt)<0)(typeof navigator!=="undefined"&&navigator.product);var zo=(()=>typeof WorkerGlobalScope!=="undefined"&&self instanceof WorkerGlobalScope&&typeof self.importScripts==="function")();var So=Uo&&window.location.href||"http://localhost";var jo={...To,...Oo};function toURLEncodedForm(Wt,Pt){return Ho(Wt,new jo.classes.URLSearchParams,Object.assign({visitor:function(Wt,Pt,en,tn){if(jo.isNode&&Eo.isBuffer(Wt)){this.append(Pt,Wt.toString("base64"));return false}return tn.defaultVisitor.apply(this,arguments)}},Pt))}function parsePropPath(Wt){return Eo.matchAll(/\w+|\[(\w*)]/g,Wt).map((Wt=>Wt[0]==="[]"?"":Wt[1]||Wt[0]))}function arrayToObject(Wt){const Pt={};const en=Object.keys(Wt);let tn;const nn=en.length;let an;for(tn=0;tn=Wt.length;nn=!nn&&Eo.isArray(en)?en.length:nn;if(rn){if(Eo.hasOwnProp(en,nn)){en[nn]=[en[nn],Pt]}else{en[nn]=Pt}return!an}if(!en[nn]||!Eo.isObject(en[nn])){en[nn]=[]}const In=buildPath(Wt,Pt,en[nn],tn);if(In&&Eo.isArray(en[nn])){en[nn]=arrayToObject(en[nn])}return!an}if(Eo.isFormData(Wt)&&Eo.isFunction(Wt.entries)){const Pt={};Eo.forEachEntry(Wt,((Wt,en)=>{buildPath(parsePropPath(Wt),en,Pt,0)}));return Pt}return null}var Do=formDataToJSON;function stringifySafely(Wt,Pt,en){if(Eo.isString(Wt)){try{(Pt||JSON.parse)(Wt);return Eo.trim(Wt)}catch(Wt){if(Wt.name!=="SyntaxError"){throw Wt}}}return(en||JSON.stringify)(Wt)}var _o={transitional:Lo,adapter:["xhr","http","fetch"],transformRequest:[function transformRequest(Wt,Pt){const en=Pt.getContentType()||"";const tn=en.indexOf("application/json")>-1;const nn=Eo.isObject(Wt);if(nn&&Eo.isHTMLForm(Wt)){Wt=new FormData(Wt)}const an=Eo.isFormData(Wt);if(an){return tn?JSON.stringify(Do(Wt)):Wt}if(Eo.isArrayBuffer(Wt)||Eo.isBuffer(Wt)||Eo.isStream(Wt)||Eo.isFile(Wt)||Eo.isBlob(Wt)||Eo.isReadableStream(Wt)){return Wt}if(Eo.isArrayBufferView(Wt)){return Wt.buffer}if(Eo.isURLSearchParams(Wt)){Pt.setContentType("application/x-www-form-urlencoded;charset=utf-8",false);return Wt.toString()}let rn;if(nn){if(en.indexOf("application/x-www-form-urlencoded")>-1){return toURLEncodedForm(Wt,this.formSerializer).toString()}if((rn=Eo.isFileList(Wt))||en.indexOf("multipart/form-data")>-1){const Pt=this.env&&this.env.FormData;return Ho(rn?{"files[]":Wt}:Wt,Pt&&new Pt,this.formSerializer)}}if(nn||tn){Pt.setContentType("application/json",false);return stringifySafely(Wt)}return Wt}],transformResponse:[function transformResponse(Wt){const Pt=this.transitional||_o.transitional;const en=Pt&&Pt.forcedJSONParsing;const tn=this.responseType==="json";if(Eo.isResponse(Wt)||Eo.isReadableStream(Wt)){return Wt}if(Wt&&Eo.isString(Wt)&&(en&&!this.responseType||tn)){const en=Pt&&Pt.silentJSONParsing;const nn=!en&&tn;try{return JSON.parse(Wt)}catch(Wt){if(nn){if(Wt.name==="SyntaxError"){throw wo.from(Wt,wo.ERR_BAD_RESPONSE,this,null,this.response)}throw Wt}}}return Wt}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:jo.classes.FormData,Blob:jo.classes.Blob},validateStatus:function validateStatus(Wt){return Wt>=200&&Wt<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Eo.forEach(["delete","get","head","post","put","patch"],(Wt=>{_o.headers[Wt]={}}));var Ko=_o;var Po=Eo.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]);var parseHeaders_default=Wt=>{const Pt={};let en;let tn;let nn;Wt&&Wt.split("\n").forEach((function parser(Wt){nn=Wt.indexOf(":");en=Wt.substring(0,nn).trim().toLowerCase();tn=Wt.substring(nn+1).trim();if(!en||Pt[en]&&Po[en]){return}if(en==="set-cookie"){if(Pt[en]){Pt[en].push(tn)}else{Pt[en]=[tn]}}else{Pt[en]=Pt[en]?Pt[en]+", "+tn:tn}}));return Pt};var qo=Symbol("internals");function normalizeHeader(Wt){return Wt&&String(Wt).trim().toLowerCase()}function normalizeValue(Wt){if(Wt===false||Wt==null){return Wt}return Eo.isArray(Wt)?Wt.map(normalizeValue):String(Wt)}function parseTokens(Wt){const Pt=Object.create(null);const en=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let tn;while(tn=en.exec(Wt)){Pt[tn[1]]=tn[2]}return Pt}var isValidHeaderName=Wt=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(Wt.trim());function matchHeaderValue(Wt,Pt,en,tn,nn){if(Eo.isFunction(tn)){return tn.call(this,Pt,en)}if(nn){Pt=en}if(!Eo.isString(Pt))return;if(Eo.isString(tn)){return Pt.indexOf(tn)!==-1}if(Eo.isRegExp(tn)){return tn.test(Pt)}}function formatHeader(Wt){return Wt.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((Wt,Pt,en)=>Pt.toUpperCase()+en))}function buildAccessors(Wt,Pt){const en=Eo.toCamelCase(" "+Pt);["get","set","has"].forEach((tn=>{Object.defineProperty(Wt,tn+en,{value:function(Wt,en,nn){return this[tn].call(this,Pt,Wt,en,nn)},configurable:true})}))}var $o=class{constructor(Wt){Wt&&this.set(Wt)}set(Wt,Pt,en){const tn=this;function setHeader(Wt,Pt,en){const nn=normalizeHeader(Pt);if(!nn){throw new Error("header name must be a non-empty string")}const an=Eo.findKey(tn,nn);if(!an||tn[an]===void 0||en===true||en===void 0&&tn[an]!==false){tn[an||Pt]=normalizeValue(Wt)}}const setHeaders=(Wt,Pt)=>Eo.forEach(Wt,((Wt,en)=>setHeader(Wt,en,Pt)));if(Eo.isPlainObject(Wt)||Wt instanceof this.constructor){setHeaders(Wt,Pt)}else if(Eo.isString(Wt)&&(Wt=Wt.trim())&&!isValidHeaderName(Wt)){setHeaders(parseHeaders_default(Wt),Pt)}else if(Eo.isHeaders(Wt)){for(const[Pt,tn]of Wt.entries()){setHeader(tn,Pt,en)}}else{Wt!=null&&setHeader(Pt,Wt,en)}return this}get(Wt,Pt){Wt=normalizeHeader(Wt);if(Wt){const en=Eo.findKey(this,Wt);if(en){const Wt=this[en];if(!Pt){return Wt}if(Pt===true){return parseTokens(Wt)}if(Eo.isFunction(Pt)){return Pt.call(this,Wt,en)}if(Eo.isRegExp(Pt)){return Pt.exec(Wt)}throw new TypeError("parser must be boolean|regexp|function")}}}has(Wt,Pt){Wt=normalizeHeader(Wt);if(Wt){const en=Eo.findKey(this,Wt);return!!(en&&this[en]!==void 0&&(!Pt||matchHeaderValue(this,this[en],en,Pt)))}return false}delete(Wt,Pt){const en=this;let tn=false;function deleteHeader(Wt){Wt=normalizeHeader(Wt);if(Wt){const nn=Eo.findKey(en,Wt);if(nn&&(!Pt||matchHeaderValue(en,en[nn],nn,Pt))){delete en[nn];tn=true}}}if(Eo.isArray(Wt)){Wt.forEach(deleteHeader)}else{deleteHeader(Wt)}return tn}clear(Wt){const Pt=Object.keys(this);let en=Pt.length;let tn=false;while(en--){const nn=Pt[en];if(!Wt||matchHeaderValue(this,this[nn],nn,Wt,true)){delete this[nn];tn=true}}return tn}normalize(Wt){const Pt=this;const en={};Eo.forEach(this,((tn,nn)=>{const an=Eo.findKey(en,nn);if(an){Pt[an]=normalizeValue(tn);delete Pt[nn];return}const rn=Wt?formatHeader(nn):String(nn).trim();if(rn!==nn){delete Pt[nn]}Pt[rn]=normalizeValue(tn);en[rn]=true}));return this}concat(...Wt){return this.constructor.concat(this,...Wt)}toJSON(Wt){const Pt=Object.create(null);Eo.forEach(this,((en,tn)=>{en!=null&&en!==false&&(Pt[tn]=Wt&&Eo.isArray(en)?en.join(", "):en)}));return Pt}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([Wt,Pt])=>Wt+": "+Pt)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(Wt){return Wt instanceof this?Wt:new this(Wt)}static concat(Wt,...Pt){const en=new this(Wt);Pt.forEach((Wt=>en.set(Wt)));return en}static accessor(Wt){const Pt=this[qo]=this[qo]={accessors:{}};const en=Pt.accessors;const tn=this.prototype;function defineAccessor(Wt){const Pt=normalizeHeader(Wt);if(!en[Pt]){buildAccessors(tn,Wt);en[Pt]=true}}Eo.isArray(Wt)?Wt.forEach(defineAccessor):defineAccessor(Wt);return this}};$o.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);Eo.reduceDescriptors($o.prototype,(({value:Wt},Pt)=>{let en=Pt[0].toUpperCase()+Pt.slice(1);return{get:()=>Wt,set(Wt){this[en]=Wt}}}));Eo.freezeMethods($o);var ec=$o;function transformData(Wt,Pt){const en=this||Ko;const tn=Pt||en;const nn=ec.from(tn.headers);let an=tn.data;Eo.forEach(Wt,(function transform(Wt){an=Wt.call(en,an,nn.normalize(),Pt?Pt.status:void 0)}));nn.normalize();return an}function isCancel(Wt){return!!(Wt&&Wt.__CANCEL__)}function CanceledError(Wt,Pt,en){wo.call(this,Wt==null?"canceled":Wt,wo.ERR_CANCELED,Pt,en);this.name="CanceledError"}Eo.inherits(CanceledError,wo,{__CANCEL__:true});var tc=CanceledError;function settle(Wt,Pt,en){const tn=en.config.validateStatus;if(!en.status||!tn||tn(en.status)){Wt(en)}else{Pt(new wo("Request failed with status code "+en.status,[wo.ERR_BAD_REQUEST,wo.ERR_BAD_RESPONSE][Math.floor(en.status/100)-4],en.config,en.request,en))}}function isAbsoluteURL(Wt){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(Wt)}function combineURLs(Wt,Pt){return Pt?Wt.replace(/\/?\/$/,"")+"/"+Pt.replace(/^\/+/,""):Wt}function buildFullPath(Wt,Pt){if(Wt&&!isAbsoluteURL(Pt)){return combineURLs(Wt,Pt)}return Pt}var nc=__toESM(ys(),1);var lc=__toESM(en(58611),1);var ac=__toESM(en(65692),1);var rc=__toESM(en(39023),1);var Ic=__toESM(fs(),1);var sc=__toESM(en(43106),1);var oc="1.7.2";function parseProtocol(Wt){const Pt=/^([-+\w]{1,25})(:?\/\/|:)/.exec(Wt);return Pt&&Pt[1]||""}var cc=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function fromDataURI(Wt,Pt,en){const tn=en&&en.Blob||jo.classes.Blob;const nn=parseProtocol(Wt);if(Pt===void 0&&tn){Pt=true}if(nn==="data"){Wt=nn.length?Wt.slice(nn.length+1):Wt;const en=cc.exec(Wt);if(!en){throw new wo("Invalid URL",wo.ERR_INVALID_URL)}const an=en[1];const rn=en[2];const In=en[3];const sn=Buffer.from(decodeURIComponent(In),rn?"base64":"utf8");if(Pt){if(!tn){throw new wo("Blob is not supported",wo.ERR_NOT_SUPPORT)}return new tn([sn],{type:an})}return sn}throw new wo("Unsupported protocol "+nn,wo.ERR_NOT_SUPPORT)}var ic=__toESM(en(2203),1);var dc=__toESM(en(2203),1);function throttle(Wt,Pt){let en=0;const tn=1e3/Pt;let nn=null;return function throttled(){const Pt=this===true;const an=Date.now();if(Pt||an-en>tn){if(nn){clearTimeout(nn);nn=null}en=an;return Wt.apply(null,arguments)}if(!nn){nn=setTimeout((()=>{nn=null;en=Date.now();return Wt.apply(null,arguments)}),tn-(an-en))}}}var uc=throttle;function speedometer(Wt,Pt){Wt=Wt||10;const en=new Array(Wt);const tn=new Array(Wt);let nn=0;let an=0;let rn;Pt=Pt!==void 0?Pt:1e3;return function push(In){const sn=Date.now();const on=tn[an];if(!rn){rn=sn}en[nn]=In;tn[nn]=sn;let cn=an;let dn=0;while(cn!==nn){dn+=en[cn++];cn=cn%Wt}nn=(nn+1)%Wt;if(nn===an){an=(an+1)%Wt}if(sn-rn!Eo.isUndefined(Pt[Wt])));super({readableHighWaterMark:Wt.chunkSize});const Pt=this;const en=this[mc]={length:Wt.length,timeWindow:Wt.timeWindow,ticksRate:Wt.ticksRate,chunkSize:Wt.chunkSize,maxRate:Wt.maxRate,minChunkSize:Wt.minChunkSize,bytesSeen:0,isCaptured:false,notifiedBytesLoaded:0,ts:Date.now(),bytes:0,onReadCallback:null};const tn=pc(en.ticksRate*Wt.samplesCount,en.timeWindow);this.on("newListener",(Wt=>{if(Wt==="progress"){if(!en.isCaptured){en.isCaptured=true}}}));let nn=0;en.updateProgress=uc((function throttledHandler(){const Wt=en.length;const an=en.bytesSeen;const rn=an-nn;if(!rn||Pt.destroyed)return;const In=tn(rn);nn=an;process.nextTick((()=>{Pt.emit("progress",{loaded:an,total:Wt,progress:Wt?an/Wt:void 0,bytes:rn,rate:In?In:void 0,estimated:In&&Wt&&an<=Wt?(Wt-an)/In:void 0,lengthComputable:Wt!=null})}))}),en.ticksRate);const onFinish=()=>{en.updateProgress.call(true)};this.once("end",onFinish);this.once("error",onFinish)}_read(Wt){const Pt=this[mc];if(Pt.onReadCallback){Pt.onReadCallback()}return super._read(Wt)}_transform(Wt,Pt,en){const tn=this;const nn=this[mc];const an=nn.maxRate;const rn=this.readableHighWaterMark;const In=nn.timeWindow;const sn=1e3/In;const on=an/sn;const cn=nn.minChunkSize!==false?Math.max(nn.minChunkSize,on*.01):0;function pushChunk(Wt,Pt){const en=Buffer.byteLength(Wt);nn.bytesSeen+=en;nn.bytes+=en;if(nn.isCaptured){nn.updateProgress()}if(tn.push(Wt)){process.nextTick(Pt)}else{nn.onReadCallback=()=>{nn.onReadCallback=null;process.nextTick(Pt)}}}const transformChunk=(Wt,Pt)=>{const en=Buffer.byteLength(Wt);let tn=null;let sn=rn;let dn;let un=0;if(an){const Wt=Date.now();if(!nn.ts||(un=Wt-nn.ts)>=In){nn.ts=Wt;dn=on-nn.bytes;nn.bytes=dn<0?-dn:0;un=0}dn=on-nn.bytes}if(an){if(dn<=0){return setTimeout((()=>{Pt(null,Wt)}),In-un)}if(dnsn&&en-sn>cn){tn=Wt.subarray(sn);Wt=Wt.subarray(0,sn)}pushChunk(Wt,tn?()=>{process.nextTick(Pt,null,tn)}:Pt)};transformChunk(Wt,(function transformNextChunk(Wt,Pt){if(Wt){return en(Wt)}if(Pt){transformChunk(Pt,transformNextChunk)}else{en(null)}}))}setLength(Wt){this[mc].length=+Wt;return this}};var Gc=bc;var hc=en(24434);var Zc=en(39023);var Ac=en(2203);var{asyncIterator:Wc}=Symbol;var readBlob=async function*(Wt){if(Wt.stream){yield*Wt.stream()}else if(Wt.arrayBuffer){yield await Wt.arrayBuffer()}else if(Wt[Wc]){yield*Wt[Wc]()}else{yield Wt}};var Nc=readBlob;var gc=Eo.ALPHABET.ALPHA_DIGIT+"-_";var yc=new Zc.TextEncoder;var vc="\r\n";var Yc=yc.encode(vc);var Ec=2;var Vc=class{constructor(Wt,Pt){const{escapeName:en}=this.constructor;const tn=Eo.isString(Pt);let nn=`Content-Disposition: form-data; name="${en(Wt)}"${!tn&&Pt.name?`; filename="${en(Pt.name)}"`:""}${vc}`;if(tn){Pt=yc.encode(String(Pt).replace(/\r?\n|\r\n?/g,vc))}else{nn+=`Content-Type: ${Pt.type||"application/octet-stream"}${vc}`}this.headers=yc.encode(nn+vc);this.contentLength=tn?Pt.byteLength:Pt.size;this.size=this.headers.byteLength+this.contentLength+Ec;this.name=Wt;this.value=Pt}async*encode(){yield this.headers;const{value:Wt}=this;if(Eo.isTypedArray(Wt)){yield Wt}else{yield*Nc(Wt)}yield Yc}static escapeName(Wt){return String(Wt).replace(/[\r\n"]/g,(Wt=>({"\r":"%0D","\n":"%0A",'"':"%22"}[Wt])))}};var formDataToStream=(Wt,Pt,en)=>{const{tag:tn="form-data-boundary",size:nn=25,boundary:an=tn+"-"+Eo.generateString(nn,gc)}=en||{};if(!Eo.isFormData(Wt)){throw TypeError("FormData instance required")}if(an.length<1||an.length>70){throw Error("boundary must be 10-70 characters long")}const rn=yc.encode("--"+an+vc);const In=yc.encode("--"+an+"--"+vc+vc);let sn=In.byteLength;const on=Array.from(Wt.entries()).map((([Wt,Pt])=>{const en=new Vc(Wt,Pt);sn+=en.size;return en}));sn+=rn.byteLength*on.length;sn=Eo.toFiniteNumber(sn);const cn={"Content-Type":`multipart/form-data; boundary=${an}`};if(Number.isFinite(sn)){cn["Content-Length"]=sn}Pt&&Pt(cn);return Ac.Readable.from(async function*(){for(const Wt of on){yield rn;yield*Wt.encode()}yield In}())};var Rc=formDataToStream;var wc=__toESM(en(2203),1);var Fc=class extends wc.default.Transform{__transform(Wt,Pt,en){this.push(Wt);en()}_transform(Wt,Pt,en){if(Wt.length!==0){this._transform=this.__transform;if(Wt[0]!==120){const Wt=Buffer.alloc(2);Wt[0]=120;Wt[1]=156;this.push(Wt,Pt)}}this.__transform(Wt,Pt,en)}};var Qc=Fc;var callbackify=(Wt,Pt)=>Eo.isAsyncFn(Wt)?function(...en){const tn=en.pop();Wt.apply(this,en).then((Wt=>{try{Pt?tn(null,...Pt(Wt)):tn(null,Wt)}catch(Wt){tn(Wt)}}),tn)}:Wt;var fc=callbackify;var Hc={flush:sc.default.constants.Z_SYNC_FLUSH,finishFlush:sc.default.constants.Z_SYNC_FLUSH};var Cc={flush:sc.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:sc.default.constants.BROTLI_OPERATION_FLUSH};var Xc=Eo.isFunction(sc.default.createBrotliDecompress);var{http:kc,https:Jc}=Ic.default;var Lc=/https:?/;var Bc=jo.protocols.map((Wt=>Wt+":"));function dispatchBeforeRedirect(Wt,Pt){if(Wt.beforeRedirects.proxy){Wt.beforeRedirects.proxy(Wt)}if(Wt.beforeRedirects.config){Wt.beforeRedirects.config(Wt,Pt)}}function setProxy(Wt,Pt,en){let tn=Pt;if(!tn&&tn!==false){const Wt=(0,nc.getProxyForUrl)(en);if(Wt){tn=new URL(Wt)}}if(tn){if(tn.username){tn.auth=(tn.username||"")+":"+(tn.password||"")}if(tn.auth){if(tn.auth.username||tn.auth.password){tn.auth=(tn.auth.username||"")+":"+(tn.auth.password||"")}const Pt=Buffer.from(tn.auth,"utf8").toString("base64");Wt.headers["Proxy-Authorization"]="Basic "+Pt}Wt.headers.host=Wt.hostname+(Wt.port?":"+Wt.port:"");const Pt=tn.hostname||tn.host;Wt.hostname=Pt;Wt.host=Pt;Wt.port=tn.port;Wt.path=en;if(tn.protocol){Wt.protocol=tn.protocol.includes(":")?tn.protocol:`${tn.protocol}:`}}Wt.beforeRedirects.proxy=function beforeRedirect(Wt){setProxy(Wt,Pt,Wt.href)}}var xc=typeof process!=="undefined"&&Eo.kindOf(process)==="process";var wrapAsync=Wt=>new Promise(((Pt,en)=>{let tn;let nn;const done=(Wt,Pt)=>{if(nn)return;nn=true;tn&&tn(Wt,Pt)};const _resolve=Wt=>{done(Wt);Pt(Wt)};const _reject=Wt=>{done(Wt,true);en(Wt)};Wt(_resolve,_reject,(Wt=>tn=Wt)).catch(_reject)}));var resolveFamily=({address:Wt,family:Pt})=>{if(!Eo.isString(Wt)){throw TypeError("address must be a string")}return{address:Wt,family:Pt||(Wt.indexOf(".")<0?6:4)}};var buildAddressEntry=(Wt,Pt)=>resolveFamily(Eo.isObject(Wt)?Wt:{address:Wt,family:Pt});var Oc=xc&&function httpAdapter(Wt){return wrapAsync((async function dispatchHttpRequest(Pt,en,tn){let{data:nn,lookup:an,family:rn}=Wt;const{responseType:In,responseEncoding:sn}=Wt;const on=Wt.method.toUpperCase();let cn;let dn=false;let un;if(an){const Wt=fc(an,(Wt=>Eo.isArray(Wt)?Wt:[Wt]));an=(Pt,en,tn)=>{Wt(Pt,en,((Wt,Pt,nn)=>{if(Wt){return tn(Wt)}const an=Eo.isArray(Pt)?Pt.map((Wt=>buildAddressEntry(Wt))):[buildAddressEntry(Pt,nn)];en.all?tn(Wt,an):tn(Wt,an[0].address,an[0].family)}))}}const pn=new hc.EventEmitter;const onFinished=()=>{if(Wt.cancelToken){Wt.cancelToken.unsubscribe(abort)}if(Wt.signal){Wt.signal.removeEventListener("abort",abort)}pn.removeAllListeners()};tn(((Wt,Pt)=>{cn=true;if(Pt){dn=true;onFinished()}}));function abort(Pt){pn.emit("abort",!Pt||Pt.type?new tc(null,Wt,un):Pt)}pn.once("abort",en);if(Wt.cancelToken||Wt.signal){Wt.cancelToken&&Wt.cancelToken.subscribe(abort);if(Wt.signal){Wt.signal.aborted?abort():Wt.signal.addEventListener("abort",abort)}}const mn=buildFullPath(Wt.baseURL,Wt.url);const bn=new URL(mn,"http://localhost");const Gn=bn.protocol||Bc[0];if(Gn==="data:"){let tn;if(on!=="GET"){return settle(Pt,en,{status:405,statusText:"method not allowed",headers:{},config:Wt})}try{tn=fromDataURI(Wt.url,In==="blob",{Blob:Wt.env&&Wt.env.Blob})}catch(Pt){throw wo.from(Pt,wo.ERR_BAD_REQUEST,Wt)}if(In==="text"){tn=tn.toString(sn);if(!sn||sn==="utf8"){tn=Eo.stripBOM(tn)}}else if(In==="stream"){tn=ic.default.Readable.from(tn)}return settle(Pt,en,{data:tn,status:200,statusText:"OK",headers:new ec,config:Wt})}if(Bc.indexOf(Gn)===-1){return en(new wo("Unsupported protocol "+Gn,wo.ERR_BAD_REQUEST,Wt))}const hn=ec.from(Wt.headers).normalize();hn.set("User-Agent","axios/"+oc,false);const Zn=Wt.onDownloadProgress;const An=Wt.onUploadProgress;const Wn=Wt.maxRate;let Nn=void 0;let gn=void 0;if(Eo.isSpecCompliantForm(nn)){const Wt=hn.getContentType(/boundary=([-_\w\d]{10,70})/i);nn=Rc(nn,(Wt=>{hn.set(Wt)}),{tag:`axios-${oc}-boundary`,boundary:Wt&&Wt[1]||void 0})}else if(Eo.isFormData(nn)&&Eo.isFunction(nn.getHeaders)){hn.set(nn.getHeaders());if(!hn.hasContentLength()){try{const Wt=await rc.default.promisify(nn.getLength).call(nn);Number.isFinite(Wt)&&Wt>=0&&hn.setContentLength(Wt)}catch(Wt){}}}else if(Eo.isBlob(nn)){nn.size&&hn.setContentType(nn.type||"application/octet-stream");hn.setContentLength(nn.size||0);nn=ic.default.Readable.from(Nc(nn))}else if(nn&&!Eo.isStream(nn)){if(Buffer.isBuffer(nn)){}else if(Eo.isArrayBuffer(nn)){nn=Buffer.from(new Uint8Array(nn))}else if(Eo.isString(nn)){nn=Buffer.from(nn,"utf-8")}else{return en(new wo("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",wo.ERR_BAD_REQUEST,Wt))}hn.setContentLength(nn.length,false);if(Wt.maxBodyLength>-1&&nn.length>Wt.maxBodyLength){return en(new wo("Request body larger than maxBodyLength limit",wo.ERR_BAD_REQUEST,Wt))}}const yn=Eo.toFiniteNumber(hn.getContentLength());if(Eo.isArray(Wn)){Nn=Wn[0];gn=Wn[1]}else{Nn=gn=Wn}if(nn&&(An||Nn)){if(!Eo.isStream(nn)){nn=ic.default.Readable.from(nn,{objectMode:false})}nn=ic.default.pipeline([nn,new Gc({length:yn,maxRate:Eo.toFiniteNumber(Nn)})],Eo.noop);An&&nn.on("progress",(Wt=>{An(Object.assign(Wt,{upload:true}))}))}let vn=void 0;if(Wt.auth){const Pt=Wt.auth.username||"";const en=Wt.auth.password||"";vn=Pt+":"+en}if(!vn&&bn.username){const Wt=bn.username;const Pt=bn.password;vn=Wt+":"+Pt}vn&&hn.delete("authorization");let Yn;try{Yn=buildURL(bn.pathname+bn.search,Wt.params,Wt.paramsSerializer).replace(/^\?/,"")}catch(Pt){const tn=new Error(Pt.message);tn.config=Wt;tn.url=Wt.url;tn.exists=true;return en(tn)}hn.set("Accept-Encoding","gzip, compress, deflate"+(Xc?", br":""),false);const En={path:Yn,method:on,headers:hn.toJSON(),agents:{http:Wt.httpAgent,https:Wt.httpsAgent},auth:vn,protocol:Gn,family:rn,beforeRedirect:dispatchBeforeRedirect,beforeRedirects:{}};!Eo.isUndefined(an)&&(En.lookup=an);if(Wt.socketPath){En.socketPath=Wt.socketPath}else{En.hostname=bn.hostname;En.port=bn.port;setProxy(En,Wt.proxy,Gn+"//"+bn.hostname+(bn.port?":"+bn.port:"")+En.path)}let Vn;const Rn=Lc.test(En.protocol);En.agent=Rn?Wt.httpsAgent:Wt.httpAgent;if(Wt.transport){Vn=Wt.transport}else if(Wt.maxRedirects===0){Vn=Rn?ac.default:lc.default}else{if(Wt.maxRedirects){En.maxRedirects=Wt.maxRedirects}if(Wt.beforeRedirect){En.beforeRedirects.config=Wt.beforeRedirect}Vn=Rn?Jc:kc}if(Wt.maxBodyLength>-1){En.maxBodyLength=Wt.maxBodyLength}else{En.maxBodyLength=Infinity}if(Wt.insecureHTTPParser){En.insecureHTTPParser=Wt.insecureHTTPParser}un=Vn.request(En,(function handleResponse(tn){if(un.destroyed)return;const nn=[tn];const an=+tn.headers["content-length"];if(Zn){const Wt=new Gc({length:Eo.toFiniteNumber(an),maxRate:Eo.toFiniteNumber(gn)});Zn&&Wt.on("progress",(Wt=>{Zn(Object.assign(Wt,{download:true}))}));nn.push(Wt)}let rn=tn;const cn=tn.req||un;if(Wt.decompress!==false&&tn.headers["content-encoding"]){if(on==="HEAD"||tn.statusCode===204){delete tn.headers["content-encoding"]}switch((tn.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":nn.push(sc.default.createUnzip(Hc));delete tn.headers["content-encoding"];break;case"deflate":nn.push(new Qc);nn.push(sc.default.createUnzip(Hc));delete tn.headers["content-encoding"];break;case"br":if(Xc){nn.push(sc.default.createBrotliDecompress(Cc));delete tn.headers["content-encoding"]}}}rn=nn.length>1?ic.default.pipeline(nn,Eo.noop):nn[0];const mn=ic.default.finished(rn,(()=>{mn();onFinished()}));const bn={status:tn.statusCode,statusText:tn.statusMessage,headers:new ec(tn.headers),config:Wt,request:cn};if(In==="stream"){bn.data=rn;settle(Pt,en,bn)}else{const tn=[];let nn=0;rn.on("data",(function handleStreamData(Pt){tn.push(Pt);nn+=Pt.length;if(Wt.maxContentLength>-1&&nn>Wt.maxContentLength){dn=true;rn.destroy();en(new wo("maxContentLength size of "+Wt.maxContentLength+" exceeded",wo.ERR_BAD_RESPONSE,Wt,cn))}}));rn.on("aborted",(function handlerStreamAborted(){if(dn){return}const Pt=new wo("maxContentLength size of "+Wt.maxContentLength+" exceeded",wo.ERR_BAD_RESPONSE,Wt,cn);rn.destroy(Pt);en(Pt)}));rn.on("error",(function handleStreamError(Pt){if(un.destroyed)return;en(wo.from(Pt,null,Wt,cn))}));rn.on("end",(function handleStreamEnd(){try{let Wt=tn.length===1?tn[0]:Buffer.concat(tn);if(In!=="arraybuffer"){Wt=Wt.toString(sn);if(!sn||sn==="utf8"){Wt=Eo.stripBOM(Wt)}}bn.data=Wt}catch(Pt){return en(wo.from(Pt,null,Wt,bn.request,bn))}settle(Pt,en,bn)}))}pn.once("abort",(Wt=>{if(!rn.destroyed){rn.emit("error",Wt);rn.destroy()}}))}));pn.once("abort",(Wt=>{en(Wt);un.destroy(Wt)}));un.on("error",(function handleRequestError(Pt){en(wo.from(Pt,null,Wt,un))}));un.on("socket",(function handleRequestSocket(Wt){Wt.setKeepAlive(true,1e3*60)}));if(Wt.timeout){const Pt=parseInt(Wt.timeout,10);if(Number.isNaN(Pt)){en(new wo("error trying to parse `config.timeout` to int",wo.ERR_BAD_OPTION_VALUE,Wt,un));return}un.setTimeout(Pt,(function handleRequestTimeout(){if(cn)return;let Pt=Wt.timeout?"timeout of "+Wt.timeout+"ms exceeded":"timeout exceeded";const tn=Wt.transitional||Lo;if(Wt.timeoutErrorMessage){Pt=Wt.timeoutErrorMessage}en(new wo(Pt,tn.clarifyTimeoutError?wo.ETIMEDOUT:wo.ECONNABORTED,Wt,un));abort()}))}if(Eo.isStream(nn)){let Pt=false;let en=false;nn.on("end",(()=>{Pt=true}));nn.once("error",(Wt=>{en=true;un.destroy(Wt)}));nn.on("close",(()=>{if(!Pt&&!en){abort(new tc("Request stream has been aborted",Wt,un))}}));nn.pipe(un)}else{un.end(nn)}}))};var progressEventReducer_default=(Wt,Pt,en=3)=>{let tn=0;const nn=pc(50,250);return uc((en=>{const an=en.loaded;const rn=en.lengthComputable?en.total:void 0;const In=an-tn;const sn=nn(In);const on=an<=rn;tn=an;const cn={loaded:an,total:rn,progress:rn?an/rn:void 0,bytes:In,rate:sn?sn:void 0,estimated:sn&&rn&&on?(rn-an)/sn:void 0,event:en,lengthComputable:rn!=null};cn[Pt?"download":"upload"]=true;Wt(cn)}),en)};var Tc=jo.hasStandardBrowserEnv?function standardBrowserEnv(){const Wt=/(msie|trident)/i.test(navigator.userAgent);const Pt=document.createElement("a");let en;function resolveURL(en){let tn=en;if(Wt){Pt.setAttribute("href",tn);tn=Pt.href}Pt.setAttribute("href",tn);return{href:Pt.href,protocol:Pt.protocol?Pt.protocol.replace(/:$/,""):"",host:Pt.host,search:Pt.search?Pt.search.replace(/^\?/,""):"",hash:Pt.hash?Pt.hash.replace(/^#/,""):"",hostname:Pt.hostname,port:Pt.port,pathname:Pt.pathname.charAt(0)==="/"?Pt.pathname:"/"+Pt.pathname}}en=resolveURL(window.location.href);return function isURLSameOrigin(Wt){const Pt=Eo.isString(Wt)?resolveURL(Wt):Wt;return Pt.protocol===en.protocol&&Pt.host===en.host}}():function nonStandardBrowserEnv(){return function isURLSameOrigin(){return true}}();var Uc=jo.hasStandardBrowserEnv?{write(Wt,Pt,en,tn,nn,an){const rn=[Wt+"="+encodeURIComponent(Pt)];Eo.isNumber(en)&&rn.push("expires="+new Date(en).toGMTString());Eo.isString(tn)&&rn.push("path="+tn);Eo.isString(nn)&&rn.push("domain="+nn);an===true&&rn.push("secure");document.cookie=rn.join("; ")},read(Wt){const Pt=document.cookie.match(new RegExp("(^|;\\s*)("+Wt+")=([^;]*)"));return Pt?decodeURIComponent(Pt[3]):null},remove(Wt){this.write(Wt,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};var headersToObject=Wt=>Wt instanceof ec?{...Wt}:Wt;function mergeConfig(Wt,Pt){Pt=Pt||{};const en={};function getMergedValue(Wt,Pt,en){if(Eo.isPlainObject(Wt)&&Eo.isPlainObject(Pt)){return Eo.merge.call({caseless:en},Wt,Pt)}else if(Eo.isPlainObject(Pt)){return Eo.merge({},Pt)}else if(Eo.isArray(Pt)){return Pt.slice()}return Pt}function mergeDeepProperties(Wt,Pt,en){if(!Eo.isUndefined(Pt)){return getMergedValue(Wt,Pt,en)}else if(!Eo.isUndefined(Wt)){return getMergedValue(void 0,Wt,en)}}function valueFromConfig2(Wt,Pt){if(!Eo.isUndefined(Pt)){return getMergedValue(void 0,Pt)}}function defaultToConfig2(Wt,Pt){if(!Eo.isUndefined(Pt)){return getMergedValue(void 0,Pt)}else if(!Eo.isUndefined(Wt)){return getMergedValue(void 0,Wt)}}function mergeDirectKeys(en,tn,nn){if(nn in Pt){return getMergedValue(en,tn)}else if(nn in Wt){return getMergedValue(void 0,en)}}const tn={url:valueFromConfig2,method:valueFromConfig2,data:valueFromConfig2,baseURL:defaultToConfig2,transformRequest:defaultToConfig2,transformResponse:defaultToConfig2,paramsSerializer:defaultToConfig2,timeout:defaultToConfig2,timeoutMessage:defaultToConfig2,withCredentials:defaultToConfig2,withXSRFToken:defaultToConfig2,adapter:defaultToConfig2,responseType:defaultToConfig2,xsrfCookieName:defaultToConfig2,xsrfHeaderName:defaultToConfig2,onUploadProgress:defaultToConfig2,onDownloadProgress:defaultToConfig2,decompress:defaultToConfig2,maxContentLength:defaultToConfig2,maxBodyLength:defaultToConfig2,beforeRedirect:defaultToConfig2,transport:defaultToConfig2,httpAgent:defaultToConfig2,httpsAgent:defaultToConfig2,cancelToken:defaultToConfig2,socketPath:defaultToConfig2,responseEncoding:defaultToConfig2,validateStatus:mergeDirectKeys,headers:(Wt,Pt)=>mergeDeepProperties(headersToObject(Wt),headersToObject(Pt),true)};Eo.forEach(Object.keys(Object.assign({},Wt,Pt)),(function computeConfigValue(nn){const an=tn[nn]||mergeDeepProperties;const rn=an(Wt[nn],Pt[nn],nn);Eo.isUndefined(rn)&&an!==mergeDirectKeys||(en[nn]=rn)}));return en}var resolveConfig_default=Wt=>{const Pt=mergeConfig({},Wt);let{data:en,withXSRFToken:tn,xsrfHeaderName:nn,xsrfCookieName:an,headers:rn,auth:In}=Pt;Pt.headers=rn=ec.from(rn);Pt.url=buildURL(buildFullPath(Pt.baseURL,Pt.url),Wt.params,Wt.paramsSerializer);if(In){rn.set("Authorization","Basic "+btoa((In.username||"")+":"+(In.password?unescape(encodeURIComponent(In.password)):"")))}let sn;if(Eo.isFormData(en)){if(jo.hasStandardBrowserEnv||jo.hasStandardBrowserWebWorkerEnv){rn.setContentType(void 0)}else if((sn=rn.getContentType())!==false){const[Wt,...Pt]=sn?sn.split(";").map((Wt=>Wt.trim())).filter(Boolean):[];rn.setContentType([Wt||"multipart/form-data",...Pt].join("; "))}}if(jo.hasStandardBrowserEnv){tn&&Eo.isFunction(tn)&&(tn=tn(Pt));if(tn||tn!==false&&Tc(Pt.url)){const Wt=nn&&an&&Uc.read(an);if(Wt){rn.set(nn,Wt)}}}return Pt};var Mc=typeof XMLHttpRequest!=="undefined";var zc=Mc&&function(Wt){return new Promise((function dispatchXhrRequest(Pt,en){const tn=resolveConfig_default(Wt);let nn=tn.data;const an=ec.from(tn.headers).normalize();let{responseType:rn}=tn;let In;function done(){if(tn.cancelToken){tn.cancelToken.unsubscribe(In)}if(tn.signal){tn.signal.removeEventListener("abort",In)}}let sn=new XMLHttpRequest;sn.open(tn.method.toUpperCase(),tn.url,true);sn.timeout=tn.timeout;function onloadend(){if(!sn){return}const tn=ec.from("getAllResponseHeaders"in sn&&sn.getAllResponseHeaders());const nn=!rn||rn==="text"||rn==="json"?sn.responseText:sn.response;const an={data:nn,status:sn.status,statusText:sn.statusText,headers:tn,config:Wt,request:sn};settle((function _resolve(Wt){Pt(Wt);done()}),(function _reject(Wt){en(Wt);done()}),an);sn=null}if("onloadend"in sn){sn.onloadend=onloadend}else{sn.onreadystatechange=function handleLoad(){if(!sn||sn.readyState!==4){return}if(sn.status===0&&!(sn.responseURL&&sn.responseURL.indexOf("file:")===0)){return}setTimeout(onloadend)}}sn.onabort=function handleAbort(){if(!sn){return}en(new wo("Request aborted",wo.ECONNABORTED,tn,sn));sn=null};sn.onerror=function handleError(){en(new wo("Network Error",wo.ERR_NETWORK,tn,sn));sn=null};sn.ontimeout=function handleTimeout(){let Wt=tn.timeout?"timeout of "+tn.timeout+"ms exceeded":"timeout exceeded";const Pt=tn.transitional||Lo;if(tn.timeoutErrorMessage){Wt=tn.timeoutErrorMessage}en(new wo(Wt,Pt.clarifyTimeoutError?wo.ETIMEDOUT:wo.ECONNABORTED,tn,sn));sn=null};nn===void 0&&an.setContentType(null);if("setRequestHeader"in sn){Eo.forEach(an.toJSON(),(function setRequestHeader(Wt,Pt){sn.setRequestHeader(Pt,Wt)}))}if(!Eo.isUndefined(tn.withCredentials)){sn.withCredentials=!!tn.withCredentials}if(rn&&rn!=="json"){sn.responseType=tn.responseType}if(typeof tn.onDownloadProgress==="function"){sn.addEventListener("progress",progressEventReducer_default(tn.onDownloadProgress,true))}if(typeof tn.onUploadProgress==="function"&&sn.upload){sn.upload.addEventListener("progress",progressEventReducer_default(tn.onUploadProgress))}if(tn.cancelToken||tn.signal){In=Pt=>{if(!sn){return}en(!Pt||Pt.type?new tc(null,Wt,sn):Pt);sn.abort();sn=null};tn.cancelToken&&tn.cancelToken.subscribe(In);if(tn.signal){tn.signal.aborted?In():tn.signal.addEventListener("abort",In)}}const on=parseProtocol(tn.url);if(on&&jo.protocols.indexOf(on)===-1){en(new wo("Unsupported protocol "+on+":",wo.ERR_BAD_REQUEST,Wt));return}sn.send(nn||null)}))};var composeSignals=(Wt,Pt)=>{let en=new AbortController;let tn;const onabort=function(Wt){if(!tn){tn=true;unsubscribe();const Pt=Wt instanceof Error?Wt:this.reason;en.abort(Pt instanceof wo?Pt:new tc(Pt instanceof Error?Pt.message:Pt))}};let nn=Pt&&setTimeout((()=>{onabort(new wo(`timeout ${Pt} of ms exceeded`,wo.ETIMEDOUT))}),Pt);const unsubscribe=()=>{if(Wt){nn&&clearTimeout(nn);nn=null;Wt.forEach((Wt=>{Wt&&(Wt.removeEventListener?Wt.removeEventListener("abort",onabort):Wt.unsubscribe(onabort))}));Wt=null}};Wt.forEach((Wt=>Wt&&Wt.addEventListener&&Wt.addEventListener("abort",onabort)));const{signal:an}=en;an.unsubscribe=unsubscribe;return[an,()=>{nn&&clearTimeout(nn);nn=null}]};var Sc=composeSignals;var streamChunk=function*(Wt,Pt){let en=Wt.byteLength;if(!Pt||en{const an=readBytes(Wt,Pt,nn);let rn=0;return new ReadableStream({type:"bytes",async pull(Wt){const{done:Pt,value:nn}=await an.next();if(Pt){Wt.close();tn();return}let In=nn.byteLength;en&&en(rn+=In);Wt.enqueue(new Uint8Array(nn))},cancel(Wt){tn(Wt);return an.return()}},{highWaterMark:2})};var fetchProgressDecorator=(Wt,Pt)=>{const en=Wt!=null;return tn=>setTimeout((()=>Pt({lengthComputable:en,total:Wt,loaded:tn})))};var jc=typeof fetch==="function"&&typeof Request==="function"&&typeof Response==="function";var Dc=jc&&typeof ReadableStream==="function";var _c=jc&&(typeof TextEncoder==="function"?(Wt=>Pt=>Wt.encode(Pt))(new TextEncoder):async Wt=>new Uint8Array(await new Response(Wt).arrayBuffer()));var Kc=Dc&&(()=>{let Wt=false;const Pt=new Request(jo.origin,{body:new ReadableStream,method:"POST",get duplex(){Wt=true;return"half"}}).headers.has("Content-Type");return Wt&&!Pt})();var Pc=64*1024;var qc=Dc&&!!(()=>{try{return Eo.isReadableStream(new Response("").body)}catch(Wt){}})();var $c={stream:qc&&(Wt=>Wt.body)};jc&&(Wt=>{["text","arrayBuffer","blob","formData","stream"].forEach((Pt=>{!$c[Pt]&&($c[Pt]=Eo.isFunction(Wt[Pt])?Wt=>Wt[Pt]():(Wt,en)=>{throw new wo(`Response type '${Pt}' is not supported`,wo.ERR_NOT_SUPPORT,en)})}))})(new Response);var getBodyLength=async Wt=>{if(Wt==null){return 0}if(Eo.isBlob(Wt)){return Wt.size}if(Eo.isSpecCompliantForm(Wt)){return(await new Request(Wt).arrayBuffer()).byteLength}if(Eo.isArrayBufferView(Wt)){return Wt.byteLength}if(Eo.isURLSearchParams(Wt)){Wt=Wt+""}if(Eo.isString(Wt)){return(await _c(Wt)).byteLength}};var resolveBodyLength=async(Wt,Pt)=>{const en=Eo.toFiniteNumber(Wt.getContentLength());return en==null?getBodyLength(Pt):en};var ei=jc&&(async Wt=>{let{url:Pt,method:en,data:tn,signal:nn,cancelToken:an,timeout:rn,onDownloadProgress:In,onUploadProgress:sn,responseType:on,headers:cn,withCredentials:dn="same-origin",fetchOptions:un}=resolveConfig_default(Wt);on=on?(on+"").toLowerCase():"text";let[pn,mn]=nn||an||rn?Sc([nn,an],rn):[];let bn,Gn;const onFinish=()=>{!bn&&setTimeout((()=>{pn&&pn.unsubscribe()}));bn=true};let hn;try{if(sn&&Kc&&en!=="get"&&en!=="head"&&(hn=await resolveBodyLength(cn,tn))!==0){let Wt=new Request(Pt,{method:"POST",body:tn,duplex:"half"});let en;if(Eo.isFormData(tn)&&(en=Wt.headers.get("content-type"))){cn.setContentType(en)}if(Wt.body){tn=trackStream(Wt.body,Pc,fetchProgressDecorator(hn,progressEventReducer_default(sn)),null,_c)}}if(!Eo.isString(dn)){dn=dn?"cors":"omit"}Gn=new Request(Pt,{...un,signal:pn,method:en.toUpperCase(),headers:cn.normalize().toJSON(),body:tn,duplex:"half",withCredentials:dn});let nn=await fetch(Gn);const an=qc&&(on==="stream"||on==="response");if(qc&&(In||an)){const Wt={};["status","statusText","headers"].forEach((Pt=>{Wt[Pt]=nn[Pt]}));const Pt=Eo.toFiniteNumber(nn.headers.get("content-length"));nn=new Response(trackStream(nn.body,Pc,In&&fetchProgressDecorator(Pt,progressEventReducer_default(In,true)),an&&onFinish,_c),Wt)}on=on||"text";let rn=await $c[Eo.findKey($c,on)||"text"](nn,Wt);!an&&onFinish();mn&&mn();return await new Promise(((Pt,en)=>{settle(Pt,en,{data:rn,headers:ec.from(nn.headers),status:nn.status,statusText:nn.statusText,config:Wt,request:Gn})}))}catch(Pt){onFinish();if(Pt&&Pt.name==="TypeError"&&/fetch/i.test(Pt.message)){throw Object.assign(new wo("Network Error",wo.ERR_NETWORK,Wt,Gn),{cause:Pt.cause||Pt})}throw wo.from(Pt,Pt&&Pt.code,Wt,Gn)}});var ti={http:Oc,xhr:zc,fetch:ei};Eo.forEach(ti,((Wt,Pt)=>{if(Wt){try{Object.defineProperty(Wt,"name",{value:Pt})}catch(Wt){}Object.defineProperty(Wt,"adapterName",{value:Pt})}}));var renderReason=Wt=>`- ${Wt}`;var isResolvedHandle=Wt=>Eo.isFunction(Wt)||Wt===null||Wt===false;var ni={getAdapter:Wt=>{Wt=Eo.isArray(Wt)?Wt:[Wt];const{length:Pt}=Wt;let en;let tn;const nn={};for(let an=0;an`adapter ${Wt} `+(Pt===false?"is not supported by the environment":"is not available in the build")));let en=Pt?Wt.length>1?"since :\n"+Wt.map(renderReason).join("\n"):" "+renderReason(Wt[0]):"as no adapter specified";throw new wo(`There is no suitable adapter to dispatch the request `+en,"ERR_NOT_SUPPORT")}return tn},adapters:ti};function throwIfCancellationRequested(Wt){if(Wt.cancelToken){Wt.cancelToken.throwIfRequested()}if(Wt.signal&&Wt.signal.aborted){throw new tc(null,Wt)}}function dispatchRequest(Wt){throwIfCancellationRequested(Wt);Wt.headers=ec.from(Wt.headers);Wt.data=transformData.call(Wt,Wt.transformRequest);if(["post","put","patch"].indexOf(Wt.method)!==-1){Wt.headers.setContentType("application/x-www-form-urlencoded",false)}const Pt=ni.getAdapter(Wt.adapter||Ko.adapter);return Pt(Wt).then((function onAdapterResolution(Pt){throwIfCancellationRequested(Wt);Pt.data=transformData.call(Wt,Wt.transformResponse,Pt);Pt.headers=ec.from(Pt.headers);return Pt}),(function onAdapterRejection(Pt){if(!isCancel(Pt)){throwIfCancellationRequested(Wt);if(Pt&&Pt.response){Pt.response.data=transformData.call(Wt,Wt.transformResponse,Pt.response);Pt.response.headers=ec.from(Pt.response.headers)}}return Promise.reject(Pt)}))}var li={};["object","boolean","number","function","string","symbol"].forEach(((Wt,Pt)=>{li[Wt]=function validator(en){return typeof en===Wt||"a"+(Pt<1?"n ":" ")+Wt}}));var ai={};li.transitional=function transitional(Wt,Pt,en){function formatMessage(Wt,Pt){return"[Axios v"+oc+"] Transitional option '"+Wt+"'"+Pt+(en?". "+en:"")}return(en,tn,nn)=>{if(Wt===false){throw new wo(formatMessage(tn," has been removed"+(Pt?" in "+Pt:"")),wo.ERR_DEPRECATED)}if(Pt&&!ai[tn]){ai[tn]=true;console.warn(formatMessage(tn," has been deprecated since v"+Pt+" and will be removed in the near future"))}return Wt?Wt(en,tn,nn):true}};function assertOptions(Wt,Pt,en){if(typeof Wt!=="object"){throw new wo("options must be an object",wo.ERR_BAD_OPTION_VALUE)}const tn=Object.keys(Wt);let nn=tn.length;while(nn-- >0){const an=tn[nn];const rn=Pt[an];if(rn){const Pt=Wt[an];const en=Pt===void 0||rn(Pt,an,Wt);if(en!==true){throw new wo("option "+an+" must be "+en,wo.ERR_BAD_OPTION_VALUE)}continue}if(en!==true){throw new wo("Unknown option "+an,wo.ERR_BAD_OPTION)}}}var ri={assertOptions:assertOptions,validators:li};var Ii=ri.validators;var si=class{constructor(Wt){this.defaults=Wt;this.interceptors={request:new Jo,response:new Jo}}async request(Wt,Pt){try{return await this._request(Wt,Pt)}catch(Wt){if(Wt instanceof Error){let Pt;Error.captureStackTrace?Error.captureStackTrace(Pt={}):Pt=new Error;const en=Pt.stack?Pt.stack.replace(/^.+\n/,""):"";try{if(!Wt.stack){Wt.stack=en}else if(en&&!String(Wt.stack).endsWith(en.replace(/^.+\n.+\n/,""))){Wt.stack+="\n"+en}}catch(Wt){}}throw Wt}}_request(Wt,Pt){if(typeof Wt==="string"){Pt=Pt||{};Pt.url=Wt}else{Pt=Wt||{}}Pt=mergeConfig(this.defaults,Pt);const{transitional:en,paramsSerializer:tn,headers:nn}=Pt;if(en!==void 0){ri.assertOptions(en,{silentJSONParsing:Ii.transitional(Ii.boolean),forcedJSONParsing:Ii.transitional(Ii.boolean),clarifyTimeoutError:Ii.transitional(Ii.boolean)},false)}if(tn!=null){if(Eo.isFunction(tn)){Pt.paramsSerializer={serialize:tn}}else{ri.assertOptions(tn,{encode:Ii.function,serialize:Ii.function},true)}}Pt.method=(Pt.method||this.defaults.method||"get").toLowerCase();let an=nn&&Eo.merge(nn.common,nn[Pt.method]);nn&&Eo.forEach(["delete","get","head","post","put","patch","common"],(Wt=>{delete nn[Wt]}));Pt.headers=ec.concat(an,nn);const rn=[];let In=true;this.interceptors.request.forEach((function unshiftRequestInterceptors(Wt){if(typeof Wt.runWhen==="function"&&Wt.runWhen(Pt)===false){return}In=In&&Wt.synchronous;rn.unshift(Wt.fulfilled,Wt.rejected)}));const sn=[];this.interceptors.response.forEach((function pushResponseInterceptors(Wt){sn.push(Wt.fulfilled,Wt.rejected)}));let on;let cn=0;let dn;if(!In){const Wt=[dispatchRequest.bind(this),void 0];Wt.unshift.apply(Wt,rn);Wt.push.apply(Wt,sn);dn=Wt.length;on=Promise.resolve(Pt);while(cn{if(!en._listeners)return;let Pt=en._listeners.length;while(Pt-- >0){en._listeners[Pt](Wt)}en._listeners=null}));this.promise.then=Wt=>{let Pt;const tn=new Promise((Wt=>{en.subscribe(Wt);Pt=Wt})).then(Wt);tn.cancel=function reject(){en.unsubscribe(Pt)};return tn};Wt((function cancel(Wt,tn,nn){if(en.reason){return}en.reason=new tc(Wt,tn,nn);Pt(en.reason)}))}throwIfRequested(){if(this.reason){throw this.reason}}subscribe(Wt){if(this.reason){Wt(this.reason);return}if(this._listeners){this._listeners.push(Wt)}else{this._listeners=[Wt]}}unsubscribe(Wt){if(!this._listeners){return}const Pt=this._listeners.indexOf(Wt);if(Pt!==-1){this._listeners.splice(Pt,1)}}static source(){let Wt;const Pt=new _CancelToken((function executor(Pt){Wt=Pt}));return{token:Pt,cancel:Wt}}};var ii=ci;function spread(Wt){return function wrap(Pt){return Wt.apply(null,Pt)}}function isAxiosError(Wt){return Eo.isObject(Wt)&&Wt.isAxiosError===true}var di={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(di).forEach((([Wt,Pt])=>{di[Pt]=Wt}));var ui=di;function createInstance(Wt){const Pt=new oi(Wt);const en=bind(oi.prototype.request,Pt);Eo.extend(en,oi.prototype,Pt,{allOwnKeys:true});Eo.extend(en,Pt,null,{allOwnKeys:true});en.create=function create(Pt){return createInstance(mergeConfig(Wt,Pt))};return en}var pi=createInstance(Ko);pi.Axios=oi;pi.CanceledError=tc;pi.CancelToken=ii;pi.isCancel=isCancel;pi.VERSION=oc;pi.toFormData=Ho;pi.AxiosError=wo;pi.Cancel=pi.CanceledError;pi.all=function all(Wt){return Promise.all(Wt)};pi.spread=spread;pi.isAxiosError=isAxiosError;pi.mergeConfig=mergeConfig;pi.AxiosHeaders=ec;pi.formToJSON=Wt=>Do(Eo.isHTMLForm(Wt)?new FormData(Wt):Wt);pi.getAdapter=ni.getAdapter;pi.HttpStatusCode=ui;pi.default=pi;var mi=pi;var{Axios:bi,AxiosError:Gi,CanceledError:hi,isCancel:Zi,CancelToken:Ai,VERSION:Wi,all:Ni,Cancel:gi,isAxiosError:yi,spread:vi,toFormData:Yi,AxiosHeaders:Ei,HttpStatusCode:Vi,formToJSON:Ri,getAdapter:wi,mergeConfig:Fi}=mi;var Qi=JSON.stringify({jsonrpc:"2.0",method:"eth_getBlockByNumber",params:["latest",false],id:1});var fi=class _RPCService{static async makeRpcRequest(Wt,Pt,en){const tn=mi.create({timeout:Pt,headers:en});const nn=performance.now();try{await tn.post(Wt,Qi);return{rpcUrl:Wt,duration:performance.now()-nn,success:true}}catch(Pt){if(Pt instanceof Gi){const en=Pt.code==="ECONNABORTED";return{rpcUrl:Wt,success:false,duration:en?performance.now()-nn:0,error:en?"timeout":Pt.message}}return{rpcUrl:Wt,success:false,duration:0,error:`${Pt}`}}}static async testRpcPerformance(Wt,Pt,en,tn,nn){async function requestEndpoint(Wt){try{return await _RPCService.makeRpcRequest(Wt,nn,tn)}catch(Pt){console.error(`Failed to reach endpoint. ${Pt}`);throw new Error(Wt)}}const an=en.map((Wt=>requestEndpoint(Wt)));const rn=await Promise.allSettled(an);rn.forEach((tn=>{if(tn.status==="fulfilled"&&tn.value.success){Pt[`${Wt}__${tn.value.rpcUrl}`]=tn.value.duration}else if(tn.status==="fulfilled"){const Wt=tn.value;const Pt=en.indexOf(Wt.rpcUrl);if(Pt>-1){en.splice(Pt,1)}}}));return{latencies:Pt,runtimeRpcs:en}}static async findFastestRpc(Wt,Pt){try{const en=Object.entries(Wt).filter((([Wt])=>Wt.startsWith(`${Pt}__`))).reduce(((Wt,[Pt,en])=>{Wt[Pt]=en;return Wt}),{});return Object.keys(en).reduce(((Wt,Pt)=>en[Wt]0&&parseInt(an,16)>0&&rn.match(/[0-9|a-f|A-F|x]/gm)?.join("").length===66}catch(Wt){return false}}};var Hi=class{static getLatencies(Wt,Pt){if(Wt==="browser"){if(this.bypassForTests())return{};const Wt=JSON.parse(localStorage.getItem("rpcLatencies")||"{}");return Object.keys(Wt).reduce(((en,tn)=>{if(tn.startsWith(`${Pt}__`)){en[tn]=Wt[tn]}return en}),{})}return{}}static getRefreshLatencies(Wt){if(Wt==="browser"){if(this.bypassForTests())return 0;const Wt=JSON.parse(localStorage.getItem("refreshLatencies")||"0");if(typeof Wt==="number"){return Wt}else{return 0}}return 0}static setLatencies(Wt,Pt){if(Wt==="browser"){if(this.bypassForTests())return;localStorage.setItem("rpcLatencies",JSON.stringify(Pt))}}static setRefreshLatencies(Wt,Pt){if(Wt==="browser"){if(this.bypassForTests())return;localStorage.setItem("refreshLatencies",JSON.stringify(Pt))}}static bypassForTests(){if(typeof localStorage==="undefined"){console.log("Passing test because localStorage is not defined.");return true}}};var Ci="No RPCs available";function shuffleArray(Wt){for(let Pt=Wt.length-1;Pt>0;Pt--){const en=Math.floor(Math.random()*(Pt+1));[Wt[Pt],Wt[en]]=[Wt[en],Wt[Pt]]}}var Xi=class _RPCHandler{static _instance=null;_provider=null;_networkId;_networkName;_env="node";_rpcTimeout=Number.MAX_SAFE_INTEGER;_cacheRefreshCycles=10;_refreshLatencies=0;_autoStorage=false;_runtimeRpcs=[];_latencies={};_networkRpcs;_proxySettings={disabled:false,retryCount:3,retryDelay:100,logTier:"ok",logger:new _s,strictLogs:true,moduleName:"RPCHandler"};constructor(Wt){this._networkId=Wt.networkId;this._networkRpcs=this._filterRpcs(zs[this._networkId].rpcs,Wt.tracking||"yes");this._networkName=Us[this._networkId];this._initialize(Wt);this.log.bind(this);this.metadataMaker.bind(this);this.createProviderProxy.bind(this);this.getProvider.bind(this);this.getFastestRpcProvider.bind(this);this.getLatencies.bind(this);this.getRefreshLatencies.bind(this);this.getCacheRefreshCycles.bind(this);this.getRuntimeRpcs.bind(this);this.getNetworkId.bind(this);this.getNetworkName.bind(this);this.getNetworkRpcs.bind(this);this.testRpcPerformance.bind(this)}async getFirstAvailableRpcProvider(){const Wt=[...zs[this._networkId].rpcs];shuffleArray(Wt);for(const Pt of Wt){try{const Wt=await fi.makeRpcRequest(Pt.url,this._rpcTimeout,{"Content-Type":"application/json"});if(Wt.success){return new Ds.JsonRpcProvider({url:Pt.url,skipFetchSetup:true},Number(this._networkId))}else{console.error(`Failed to reach endpoint ${Pt.url}. ${Wt.error}`)}}catch(Wt){console.error(`Failed to reach endpoint ${Pt.url}. ${Wt}`)}}return null}async getFastestRpcProvider(){let Wt=await this.testRpcPerformance();if(Wt&&Wt?.connection.url.includes("localhost")&&!(this._networkId==="31337"||this._networkId==="1337")){Wt=await this.testRpcPerformance()}this._provider=this.createProviderProxy(Wt,this);this.log("ok",`[${this.proxySettings.moduleName}] Provider initialized: `,{provider:this._provider?.connection.url});this.log("info",`[${this.proxySettings.moduleName}]`,{latencies:this._latencies});return this._provider}get proxySettings(){return this._proxySettings}set proxySettings(Wt){this._proxySettings=Wt}createProviderProxy(Wt,Pt){if(this.proxySettings.disabled)return Wt;return new Proxy(Wt,{get:function(Wt,en){if(typeof Wt[en]!=="function"){return Wt[en]}if(typeof Wt[en]==="function"){return async function(...tn){try{const nn=await Wt[en](...tn);if(nn){Pt.log("verbose",`[${Pt.proxySettings.moduleName}] Successfully called provider method ${en}`,Pt.metadataMaker(nn,en,tn,{rpc:Wt.connection.url}));return nn}}catch(nn){Pt.log("error",`[${Pt.proxySettings.moduleName}] Failed to call provider method ${en}, retrying...`,Pt.metadataMaker(nn,en,tn,{rpc:Wt.connection.url}))}const nn=Pt.getLatencies();const an=Object.entries(nn).sort(((Wt,Pt)=>Wt[1]-Pt[1]));if(!an.length){throw Pt.log("fatal",`[${Pt.proxySettings.moduleName}] ${Ci}`,Pt.metadataMaker(new Error(Ci),"createProviderProxy",tn,{sortedLatencies:an,networks:Pt._networkRpcs}))}Pt.log("debug",`[${Pt.proxySettings.moduleName}] Current provider failed, retrying with next fastest provider...`,Pt.metadataMaker({},en,tn));let rn=Pt._proxySettings.retryCount;let In;let sn=null;while(rn>0){for(const[Wt]of an){Pt.log("debug",`[${Pt.proxySettings.moduleName}] Connected to: ${Wt}`);try{In=new Ds.JsonRpcProvider({url:Wt.split("__")[1],skipFetchSetup:true},Number(Pt._networkId));const nn=await In[en](...tn);if(nn){Pt.log("verbose",`[${Pt.proxySettings.moduleName}] Successfully called provider method ${en}`,Pt.metadataMaker(nn,en,tn,{rpc:Wt}));sn=nn;rn=0}}catch(Wt){if(rn===1){Pt.log("fatal",`[${Pt.proxySettings.moduleName}] Failed to call provider method ${en} after ${Pt._proxySettings.retryCount} attempts`,Pt.metadataMaker(Wt,en,tn));throw Wt}else{Pt.log("debug",`[${Pt.proxySettings.moduleName}] Retrying in ${Pt._proxySettings.retryDelay}ms...`);Pt.log("debug",`[${Pt.proxySettings.moduleName}] Call number: ${Pt._proxySettings.retryCount-rn+1}`);await new Promise((Wt=>setTimeout(Wt,Pt._proxySettings.retryDelay)))}}}if(sn){break}rn--}return sn}}return Wt[en]}})}populateRuntimeFromNetwork(Wt){return Wt.map((Wt=>{if(Wt.startsWith(`${this._networkId}__`)){return Wt.split("__")[1]}return Wt}))}async testRpcPerformance(){const Wt=Object.keys(this._latencies).filter((Wt=>Wt.startsWith(`${this._networkId}__`))).length<=1||this._refreshLatencies>=this._cacheRefreshCycles;if(Wt){this._runtimeRpcs=getRpcUrls(this._networkRpcs);this._refreshLatencies=0}else if(this._latencies&&Object.keys(this._latencies).length>0){this._runtimeRpcs=this.populateRuntimeFromNetwork(Object.keys(this._latencies))}else if(this._runtimeRpcs.length===0){this._runtimeRpcs=getRpcUrls(this._networkRpcs)}await this._testRpcPerformance();const Pt=await fi.findFastestRpc(this._latencies,this._networkId);if(!Pt){throw this.log("fatal",`[${this.proxySettings.moduleName}] Failed to find fastest RPC`,this.metadataMaker(new Error(Ci),"testRpcPerformance",[],{latencies:this._latencies,networkId:this._networkId}))}this._provider=this.createProviderProxy(new Ds.JsonRpcProvider({url:Pt,skipFetchSetup:true},Number(this._networkId)),this);if(this._autoStorage){Hi.setLatencies(this._env,this._latencies);Hi.setRefreshLatencies(this._env,this._refreshLatencies)}if(!this._provider){throw this.log("fatal",`[${this.proxySettings.moduleName}] Failed to create provider`,this.metadataMaker(new Error("No provider available"),"testRpcPerformance",[],{latencies:this._latencies,fastestRpcUrl:Pt}))}return this._provider}getProvider(){if(!this._provider){throw this.log("fatal",`[${this.proxySettings.moduleName}] Provider is not initialized`,this.metadataMaker(new Error("Provider is not initialized"),"getProvider",[],{networkRpcs:this._networkRpcs,runtimeRpcs:this._runtimeRpcs,latencies:this._latencies}))}return this._provider}static getInstance(Wt){if(!_RPCHandler._instance){if(!Wt){throw new Error("Config is required to initialize RPCHandler")}_RPCHandler._instance=new _RPCHandler(Wt)}return _RPCHandler._instance}clearInstance(){_RPCHandler._instance=null}getRuntimeRpcs(){return this._runtimeRpcs}getNetworkId(){return this._networkId}getNetworkName(){return this._networkName}getNetworkRpcs(){return this._networkRpcs}getLatencies(){return this._latencies}getRefreshLatencies(){return this._refreshLatencies}getCacheRefreshCycles(){return this._cacheRefreshCycles}async _testRpcPerformance(){const{latencies:Wt,runtimeRpcs:Pt}=await fi.testRpcPerformance(this._networkId,this._latencies,this._runtimeRpcs,{"Content-Type":"application/json"},this._rpcTimeout);this._runtimeRpcs=Pt;this._latencies=Wt;this._refreshLatencies++;Hi.setLatencies(this._env,this._latencies);Hi.setRefreshLatencies(this._env,this._refreshLatencies)}metadataMaker(Wt,Pt,en,tn){const nn=Wt instanceof Error?Wt:void 0;if(nn){return{error:nn,method:Pt,args:en,metadata:tn}}else{return{method:Pt,args:en,metadata:tn}}}log(Wt,Pt,en){if(!this._proxySettings?.logger){this.proxySettings.logger=new _s}let tn=this._proxySettings?.logTier;if(!tn){this.proxySettings.logTier="ok";tn=this.proxySettings.logTier}else if(tn==="none"){return}const nn=this.proxySettings.strictLogs;if(nn&&tn===Wt){this.proxySettings.logger?.[Wt](Pt,en)}else if(tn==="verbose"||!nn){this.proxySettings.logger?.log(Wt,Pt,en)}}_updateConfig(Wt){if(Wt.proxySettings){this._proxySettings={...this._proxySettings,...Wt.proxySettings,logger:Wt.proxySettings.logger||this.proxySettings.logger,logTier:Wt.proxySettings.logTier||this.proxySettings.logTier}}if(Wt.networkName){this._networkName=Wt.networkName}if(Wt.cacheRefreshCycles){this._cacheRefreshCycles=Wt.cacheRefreshCycles}if(Wt.rpcTimeout){this._rpcTimeout=Wt.rpcTimeout}if(Wt.autoStorage){this._autoStorage=true;this._latencies=Hi.getLatencies(this._env,this._networkId);this._refreshLatencies=Hi.getRefreshLatencies(this._env)}}_filterRpcs(Wt,Pt){return Wt.filter((Wt=>{if(Pt=="yes"){return true}else if(Pt=="limited"){return Wt.tracking=="limited"||Wt.tracking=="none"}else if(Pt=="none"){return Wt.tracking=="none"}return false}))}_initialize(Wt){this._env=typeof window==="undefined"?"node":"browser";if(Wt.networkRpcs&&Wt.networkRpcs.length>0){if(this._networkId==="31337"||this._networkId==="1337"){this._networkRpcs=[{url:Os},{url:Ts}]}else if(this._networkRpcs?.length>0){this._networkRpcs=[...this._networkRpcs,...Wt.networkRpcs]}else{this._networkRpcs=Wt.networkRpcs}}if(Wt.runtimeRpcs&&Wt.runtimeRpcs.length>0){if(this._networkId==="31337"||this._networkId==="1337"){this._runtimeRpcs=[`${Os}`,`${Ts}`,...Wt.runtimeRpcs]}else if(this._runtimeRpcs?.length>0){this._runtimeRpcs=[...this._runtimeRpcs,...Wt.runtimeRpcs]}else{this._runtimeRpcs=Wt.runtimeRpcs}}this._updateConfig(Wt)}};0&&0; +/*! Bundled license information: -/***/ 37484: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { +js-sha3/src/sha3.js: + (** + * [js-sha3]{@link https://github.com/emn178/js-sha3} + * + * @version 0.8.0 + * @author Chen, Yi-Cyuan [emn178@gmail.com] + * @copyright Chen, Yi-Cyuan 2015-2018 + * @license MIT + *) -"use strict"; +mime-db/index.js: + (*! + * mime-db + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015-2022 Douglas Christopher Wilson + * MIT Licensed + *) -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.platform = exports.toPlatformPath = exports.toWin32Path = exports.toPosixPath = exports.markdownSummary = exports.summary = exports.getIDToken = exports.getState = exports.saveState = exports.group = exports.endGroup = exports.startGroup = exports.info = exports.notice = exports.warning = exports.error = exports.debug = exports.isDebug = exports.setFailed = exports.setCommandEcho = exports.setOutput = exports.getBooleanInput = exports.getMultilineInput = exports.getInput = exports.addPath = exports.setSecret = exports.exportVariable = exports.ExitCode = void 0; -const command_1 = __nccwpck_require__(44914); -const file_command_1 = __nccwpck_require__(24753); -const utils_1 = __nccwpck_require__(30302); -const os = __importStar(__nccwpck_require__(70857)); -const path = __importStar(__nccwpck_require__(16928)); -const oidc_utils_1 = __nccwpck_require__(35306); -/** - * The code to exit an action - */ -var ExitCode; -(function (ExitCode) { - /** - * A code indicating that the action was successful - */ - ExitCode[ExitCode["Success"] = 0] = "Success"; - /** - * A code indicating that the action was a failure - */ - ExitCode[ExitCode["Failure"] = 1] = "Failure"; -})(ExitCode || (exports.ExitCode = ExitCode = {})); -//----------------------------------------------------------------------- -// Variables -//----------------------------------------------------------------------- +mime-types/index.js: + (*! + * mime-types + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + *) +*/},92140:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.version=void 0;Pt.version="ethers/5.7.2"},18778:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Object.defineProperty(Wt,tn,{enumerable:true,get:function(){return Pt[en]}})}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};Object.defineProperty(Pt,"__esModule",{value:true});Pt.Wordlist=Pt.version=Pt.wordlists=Pt.utils=Pt.logger=Pt.errors=Pt.constants=Pt.FixedNumber=Pt.BigNumber=Pt.ContractFactory=Pt.Contract=Pt.BaseContract=Pt.providers=Pt.getDefaultProvider=Pt.VoidSigner=Pt.Wallet=Pt.Signer=void 0;var rn=en(98322);Object.defineProperty(Pt,"BaseContract",{enumerable:true,get:function(){return rn.BaseContract}});Object.defineProperty(Pt,"Contract",{enumerable:true,get:function(){return rn.Contract}});Object.defineProperty(Pt,"ContractFactory",{enumerable:true,get:function(){return rn.ContractFactory}});var In=en(18202);Object.defineProperty(Pt,"BigNumber",{enumerable:true,get:function(){return In.BigNumber}});Object.defineProperty(Pt,"FixedNumber",{enumerable:true,get:function(){return In.FixedNumber}});var sn=en(53870);Object.defineProperty(Pt,"Signer",{enumerable:true,get:function(){return sn.Signer}});Object.defineProperty(Pt,"VoidSigner",{enumerable:true,get:function(){return sn.VoidSigner}});var on=en(30806);Object.defineProperty(Pt,"Wallet",{enumerable:true,get:function(){return on.Wallet}});var cn=an(en(99848));Pt.constants=cn;var dn=an(en(74983));Pt.providers=dn;var un=en(74983);Object.defineProperty(Pt,"getDefaultProvider",{enumerable:true,get:function(){return un.getDefaultProvider}});var pn=en(78168);Object.defineProperty(Pt,"Wordlist",{enumerable:true,get:function(){return pn.Wordlist}});Object.defineProperty(Pt,"wordlists",{enumerable:true,get:function(){return pn.wordlists}});var mn=an(en(73446));Pt.utils=mn;var bn=en(76127);Object.defineProperty(Pt,"errors",{enumerable:true,get:function(){return bn.ErrorCode}});var Gn=en(92140);Object.defineProperty(Pt,"version",{enumerable:true,get:function(){return Gn.version}});var hn=new bn.Logger(Gn.version);Pt.logger=hn},16475:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Object.defineProperty(Wt,tn,{enumerable:true,get:function(){return Pt[en]}})}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};Object.defineProperty(Pt,"__esModule",{value:true});Pt.Wordlist=Pt.version=Pt.wordlists=Pt.utils=Pt.logger=Pt.errors=Pt.constants=Pt.FixedNumber=Pt.BigNumber=Pt.ContractFactory=Pt.Contract=Pt.BaseContract=Pt.providers=Pt.getDefaultProvider=Pt.VoidSigner=Pt.Wallet=Pt.Signer=Pt.ethers=void 0;var rn=an(en(18778));Pt.ethers=rn;try{var In=window;if(In._ethers==null){In._ethers=rn}}catch(Wt){}var sn=en(18778);Object.defineProperty(Pt,"Signer",{enumerable:true,get:function(){return sn.Signer}});Object.defineProperty(Pt,"Wallet",{enumerable:true,get:function(){return sn.Wallet}});Object.defineProperty(Pt,"VoidSigner",{enumerable:true,get:function(){return sn.VoidSigner}});Object.defineProperty(Pt,"getDefaultProvider",{enumerable:true,get:function(){return sn.getDefaultProvider}});Object.defineProperty(Pt,"providers",{enumerable:true,get:function(){return sn.providers}});Object.defineProperty(Pt,"BaseContract",{enumerable:true,get:function(){return sn.BaseContract}});Object.defineProperty(Pt,"Contract",{enumerable:true,get:function(){return sn.Contract}});Object.defineProperty(Pt,"ContractFactory",{enumerable:true,get:function(){return sn.ContractFactory}});Object.defineProperty(Pt,"BigNumber",{enumerable:true,get:function(){return sn.BigNumber}});Object.defineProperty(Pt,"FixedNumber",{enumerable:true,get:function(){return sn.FixedNumber}});Object.defineProperty(Pt,"constants",{enumerable:true,get:function(){return sn.constants}});Object.defineProperty(Pt,"errors",{enumerable:true,get:function(){return sn.errors}});Object.defineProperty(Pt,"logger",{enumerable:true,get:function(){return sn.logger}});Object.defineProperty(Pt,"utils",{enumerable:true,get:function(){return sn.utils}});Object.defineProperty(Pt,"wordlists",{enumerable:true,get:function(){return sn.wordlists}});Object.defineProperty(Pt,"version",{enumerable:true,get:function(){return sn.version}});Object.defineProperty(Pt,"Wordlist",{enumerable:true,get:function(){return sn.Wordlist}})},73446:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Object.defineProperty(Wt,tn,{enumerable:true,get:function(){return Pt[en]}})}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};Object.defineProperty(Pt,"__esModule",{value:true});Pt.formatBytes32String=Pt.Utf8ErrorFuncs=Pt.toUtf8String=Pt.toUtf8CodePoints=Pt.toUtf8Bytes=Pt._toEscapedUtf8String=Pt.nameprep=Pt.hexDataSlice=Pt.hexDataLength=Pt.hexZeroPad=Pt.hexValue=Pt.hexStripZeros=Pt.hexConcat=Pt.isHexString=Pt.hexlify=Pt.base64=Pt.base58=Pt.TransactionDescription=Pt.LogDescription=Pt.Interface=Pt.SigningKey=Pt.HDNode=Pt.defaultPath=Pt.isBytesLike=Pt.isBytes=Pt.zeroPad=Pt.stripZeros=Pt.concat=Pt.arrayify=Pt.shallowCopy=Pt.resolveProperties=Pt.getStatic=Pt.defineReadOnly=Pt.deepCopy=Pt.checkProperties=Pt.poll=Pt.fetchJson=Pt._fetchData=Pt.RLP=Pt.Logger=Pt.checkResultErrors=Pt.FormatTypes=Pt.ParamType=Pt.FunctionFragment=Pt.EventFragment=Pt.ErrorFragment=Pt.ConstructorFragment=Pt.Fragment=Pt.defaultAbiCoder=Pt.AbiCoder=void 0;Pt.Indexed=Pt.Utf8ErrorReason=Pt.UnicodeNormalizationForm=Pt.SupportedAlgorithm=Pt.mnemonicToSeed=Pt.isValidMnemonic=Pt.entropyToMnemonic=Pt.mnemonicToEntropy=Pt.getAccountPath=Pt.verifyTypedData=Pt.verifyMessage=Pt.recoverPublicKey=Pt.computePublicKey=Pt.recoverAddress=Pt.computeAddress=Pt.getJsonWalletAddress=Pt.TransactionTypes=Pt.serializeTransaction=Pt.parseTransaction=Pt.accessListify=Pt.joinSignature=Pt.splitSignature=Pt.soliditySha256=Pt.solidityKeccak256=Pt.solidityPack=Pt.shuffled=Pt.randomBytes=Pt.sha512=Pt.sha256=Pt.ripemd160=Pt.keccak256=Pt.computeHmac=Pt.commify=Pt.parseUnits=Pt.formatUnits=Pt.parseEther=Pt.formatEther=Pt.isAddress=Pt.getCreate2Address=Pt.getContractAddress=Pt.getIcapAddress=Pt.getAddress=Pt._TypedDataEncoder=Pt.id=Pt.isValidName=Pt.namehash=Pt.hashMessage=Pt.dnsEncode=Pt.parseBytes32String=void 0;var rn=en(30219);Object.defineProperty(Pt,"AbiCoder",{enumerable:true,get:function(){return rn.AbiCoder}});Object.defineProperty(Pt,"checkResultErrors",{enumerable:true,get:function(){return rn.checkResultErrors}});Object.defineProperty(Pt,"ConstructorFragment",{enumerable:true,get:function(){return rn.ConstructorFragment}});Object.defineProperty(Pt,"defaultAbiCoder",{enumerable:true,get:function(){return rn.defaultAbiCoder}});Object.defineProperty(Pt,"ErrorFragment",{enumerable:true,get:function(){return rn.ErrorFragment}});Object.defineProperty(Pt,"EventFragment",{enumerable:true,get:function(){return rn.EventFragment}});Object.defineProperty(Pt,"FormatTypes",{enumerable:true,get:function(){return rn.FormatTypes}});Object.defineProperty(Pt,"Fragment",{enumerable:true,get:function(){return rn.Fragment}});Object.defineProperty(Pt,"FunctionFragment",{enumerable:true,get:function(){return rn.FunctionFragment}});Object.defineProperty(Pt,"Indexed",{enumerable:true,get:function(){return rn.Indexed}});Object.defineProperty(Pt,"Interface",{enumerable:true,get:function(){return rn.Interface}});Object.defineProperty(Pt,"LogDescription",{enumerable:true,get:function(){return rn.LogDescription}});Object.defineProperty(Pt,"ParamType",{enumerable:true,get:function(){return rn.ParamType}});Object.defineProperty(Pt,"TransactionDescription",{enumerable:true,get:function(){return rn.TransactionDescription}});var In=en(75745);Object.defineProperty(Pt,"getAddress",{enumerable:true,get:function(){return In.getAddress}});Object.defineProperty(Pt,"getCreate2Address",{enumerable:true,get:function(){return In.getCreate2Address}});Object.defineProperty(Pt,"getContractAddress",{enumerable:true,get:function(){return In.getContractAddress}});Object.defineProperty(Pt,"getIcapAddress",{enumerable:true,get:function(){return In.getIcapAddress}});Object.defineProperty(Pt,"isAddress",{enumerable:true,get:function(){return In.isAddress}});var sn=an(en(99032));Pt.base64=sn;var on=en(31426);Object.defineProperty(Pt,"base58",{enumerable:true,get:function(){return on.Base58}});var cn=en(42006);Object.defineProperty(Pt,"arrayify",{enumerable:true,get:function(){return cn.arrayify}});Object.defineProperty(Pt,"concat",{enumerable:true,get:function(){return cn.concat}});Object.defineProperty(Pt,"hexConcat",{enumerable:true,get:function(){return cn.hexConcat}});Object.defineProperty(Pt,"hexDataSlice",{enumerable:true,get:function(){return cn.hexDataSlice}});Object.defineProperty(Pt,"hexDataLength",{enumerable:true,get:function(){return cn.hexDataLength}});Object.defineProperty(Pt,"hexlify",{enumerable:true,get:function(){return cn.hexlify}});Object.defineProperty(Pt,"hexStripZeros",{enumerable:true,get:function(){return cn.hexStripZeros}});Object.defineProperty(Pt,"hexValue",{enumerable:true,get:function(){return cn.hexValue}});Object.defineProperty(Pt,"hexZeroPad",{enumerable:true,get:function(){return cn.hexZeroPad}});Object.defineProperty(Pt,"isBytes",{enumerable:true,get:function(){return cn.isBytes}});Object.defineProperty(Pt,"isBytesLike",{enumerable:true,get:function(){return cn.isBytesLike}});Object.defineProperty(Pt,"isHexString",{enumerable:true,get:function(){return cn.isHexString}});Object.defineProperty(Pt,"joinSignature",{enumerable:true,get:function(){return cn.joinSignature}});Object.defineProperty(Pt,"zeroPad",{enumerable:true,get:function(){return cn.zeroPad}});Object.defineProperty(Pt,"splitSignature",{enumerable:true,get:function(){return cn.splitSignature}});Object.defineProperty(Pt,"stripZeros",{enumerable:true,get:function(){return cn.stripZeros}});var dn=en(91839);Object.defineProperty(Pt,"_TypedDataEncoder",{enumerable:true,get:function(){return dn._TypedDataEncoder}});Object.defineProperty(Pt,"dnsEncode",{enumerable:true,get:function(){return dn.dnsEncode}});Object.defineProperty(Pt,"hashMessage",{enumerable:true,get:function(){return dn.hashMessage}});Object.defineProperty(Pt,"id",{enumerable:true,get:function(){return dn.id}});Object.defineProperty(Pt,"isValidName",{enumerable:true,get:function(){return dn.isValidName}});Object.defineProperty(Pt,"namehash",{enumerable:true,get:function(){return dn.namehash}});var un=en(13067);Object.defineProperty(Pt,"defaultPath",{enumerable:true,get:function(){return un.defaultPath}});Object.defineProperty(Pt,"entropyToMnemonic",{enumerable:true,get:function(){return un.entropyToMnemonic}});Object.defineProperty(Pt,"getAccountPath",{enumerable:true,get:function(){return un.getAccountPath}});Object.defineProperty(Pt,"HDNode",{enumerable:true,get:function(){return un.HDNode}});Object.defineProperty(Pt,"isValidMnemonic",{enumerable:true,get:function(){return un.isValidMnemonic}});Object.defineProperty(Pt,"mnemonicToEntropy",{enumerable:true,get:function(){return un.mnemonicToEntropy}});Object.defineProperty(Pt,"mnemonicToSeed",{enumerable:true,get:function(){return un.mnemonicToSeed}});var pn=en(3582);Object.defineProperty(Pt,"getJsonWalletAddress",{enumerable:true,get:function(){return pn.getJsonWalletAddress}});var mn=en(56938);Object.defineProperty(Pt,"keccak256",{enumerable:true,get:function(){return mn.keccak256}});var bn=en(76127);Object.defineProperty(Pt,"Logger",{enumerable:true,get:function(){return bn.Logger}});var Gn=en(66935);Object.defineProperty(Pt,"computeHmac",{enumerable:true,get:function(){return Gn.computeHmac}});Object.defineProperty(Pt,"ripemd160",{enumerable:true,get:function(){return Gn.ripemd160}});Object.defineProperty(Pt,"sha256",{enumerable:true,get:function(){return Gn.sha256}});Object.defineProperty(Pt,"sha512",{enumerable:true,get:function(){return Gn.sha512}});var hn=en(18550);Object.defineProperty(Pt,"solidityKeccak256",{enumerable:true,get:function(){return hn.keccak256}});Object.defineProperty(Pt,"solidityPack",{enumerable:true,get:function(){return hn.pack}});Object.defineProperty(Pt,"soliditySha256",{enumerable:true,get:function(){return hn.sha256}});var Zn=en(53728);Object.defineProperty(Pt,"randomBytes",{enumerable:true,get:function(){return Zn.randomBytes}});Object.defineProperty(Pt,"shuffled",{enumerable:true,get:function(){return Zn.shuffled}});var An=en(61338);Object.defineProperty(Pt,"checkProperties",{enumerable:true,get:function(){return An.checkProperties}});Object.defineProperty(Pt,"deepCopy",{enumerable:true,get:function(){return An.deepCopy}});Object.defineProperty(Pt,"defineReadOnly",{enumerable:true,get:function(){return An.defineReadOnly}});Object.defineProperty(Pt,"getStatic",{enumerable:true,get:function(){return An.getStatic}});Object.defineProperty(Pt,"resolveProperties",{enumerable:true,get:function(){return An.resolveProperties}});Object.defineProperty(Pt,"shallowCopy",{enumerable:true,get:function(){return An.shallowCopy}});var Wn=an(en(37659));Pt.RLP=Wn;var Nn=en(63928);Object.defineProperty(Pt,"computePublicKey",{enumerable:true,get:function(){return Nn.computePublicKey}});Object.defineProperty(Pt,"recoverPublicKey",{enumerable:true,get:function(){return Nn.recoverPublicKey}});Object.defineProperty(Pt,"SigningKey",{enumerable:true,get:function(){return Nn.SigningKey}});var gn=en(13859);Object.defineProperty(Pt,"formatBytes32String",{enumerable:true,get:function(){return gn.formatBytes32String}});Object.defineProperty(Pt,"nameprep",{enumerable:true,get:function(){return gn.nameprep}});Object.defineProperty(Pt,"parseBytes32String",{enumerable:true,get:function(){return gn.parseBytes32String}});Object.defineProperty(Pt,"_toEscapedUtf8String",{enumerable:true,get:function(){return gn._toEscapedUtf8String}});Object.defineProperty(Pt,"toUtf8Bytes",{enumerable:true,get:function(){return gn.toUtf8Bytes}});Object.defineProperty(Pt,"toUtf8CodePoints",{enumerable:true,get:function(){return gn.toUtf8CodePoints}});Object.defineProperty(Pt,"toUtf8String",{enumerable:true,get:function(){return gn.toUtf8String}});Object.defineProperty(Pt,"Utf8ErrorFuncs",{enumerable:true,get:function(){return gn.Utf8ErrorFuncs}});var yn=en(62394);Object.defineProperty(Pt,"accessListify",{enumerable:true,get:function(){return yn.accessListify}});Object.defineProperty(Pt,"computeAddress",{enumerable:true,get:function(){return yn.computeAddress}});Object.defineProperty(Pt,"parseTransaction",{enumerable:true,get:function(){return yn.parse}});Object.defineProperty(Pt,"recoverAddress",{enumerable:true,get:function(){return yn.recoverAddress}});Object.defineProperty(Pt,"serializeTransaction",{enumerable:true,get:function(){return yn.serialize}});Object.defineProperty(Pt,"TransactionTypes",{enumerable:true,get:function(){return yn.TransactionTypes}});var vn=en(32534);Object.defineProperty(Pt,"commify",{enumerable:true,get:function(){return vn.commify}});Object.defineProperty(Pt,"formatEther",{enumerable:true,get:function(){return vn.formatEther}});Object.defineProperty(Pt,"parseEther",{enumerable:true,get:function(){return vn.parseEther}});Object.defineProperty(Pt,"formatUnits",{enumerable:true,get:function(){return vn.formatUnits}});Object.defineProperty(Pt,"parseUnits",{enumerable:true,get:function(){return vn.parseUnits}});var Yn=en(30806);Object.defineProperty(Pt,"verifyMessage",{enumerable:true,get:function(){return Yn.verifyMessage}});Object.defineProperty(Pt,"verifyTypedData",{enumerable:true,get:function(){return Yn.verifyTypedData}});var En=en(72239);Object.defineProperty(Pt,"_fetchData",{enumerable:true,get:function(){return En._fetchData}});Object.defineProperty(Pt,"fetchJson",{enumerable:true,get:function(){return En.fetchJson}});Object.defineProperty(Pt,"poll",{enumerable:true,get:function(){return En.poll}});var Vn=en(66935);Object.defineProperty(Pt,"SupportedAlgorithm",{enumerable:true,get:function(){return Vn.SupportedAlgorithm}});var Rn=en(13859);Object.defineProperty(Pt,"UnicodeNormalizationForm",{enumerable:true,get:function(){return Rn.UnicodeNormalizationForm}});Object.defineProperty(Pt,"Utf8ErrorReason",{enumerable:true,get:function(){return Rn.Utf8ErrorReason}})},10221:(Wt,Pt,en)=>{"use strict";if(process.env.NODE_ENV==="production"){Wt.exports=en(42600)}else{Wt.exports=en(10948)}},10948:(Wt,Pt,en)=>{"use strict";var tn;tn={value:true};function _interopDefault(Wt){return Wt&&typeof Wt==="object"&&"default"in Wt?Wt["default"]:Wt}var nn=_interopDefault(en(9889));var an=en(91839);var rn=en(18202);var In=en(98322);var sn="0x000000000022D473030F116dDEE9F6B43aC78BA3";function permit2Address(Wt){switch(Wt){case 324:return"0x0000000000225e31D15943971F47aD3022F714Fa";default:return sn}}var on=rn.BigNumber.from("0xffffffffffff");var cn=rn.BigNumber.from("0xffffffffffffffffffffffffffffffffffffffff");var dn=rn.BigNumber.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var un=cn;var pn=on;var mn=on;var bn=dn;var Gn=dn;var hn=dn;var Zn=rn.BigNumber.from(0);var An="Permit2";function permit2Domain(Wt,Pt){return{name:An,chainId:Pt,verifyingContract:Wt}}var Wn=[{name:"token",type:"address"},{name:"amount",type:"uint160"},{name:"expiration",type:"uint48"},{name:"nonce",type:"uint48"}];var Nn={PermitSingle:[{name:"details",type:"PermitDetails"},{name:"spender",type:"address"},{name:"sigDeadline",type:"uint256"}],PermitDetails:Wn};var gn={PermitBatch:[{name:"details",type:"PermitDetails[]"},{name:"spender",type:"address"},{name:"sigDeadline",type:"uint256"}],PermitDetails:Wn};function isPermit(Wt){return!Array.isArray(Wt.details)}var yn=function(){function AllowanceTransfer(){}AllowanceTransfer.getPermitData=function getPermitData(Wt,Pt,en){!hn.gte(Wt.sigDeadline)?nn(false,"SIG_DEADLINE_OUT_OF_RANGE"):void 0;var tn=permit2Domain(Pt,en);if(isPermit(Wt)){validatePermitDetails(Wt.details);return{domain:tn,types:Nn,values:Wt}}else{Wt.details.forEach(validatePermitDetails);return{domain:tn,types:gn,values:Wt}}};AllowanceTransfer.hash=function hash$1(Wt,Pt,en){var tn=AllowanceTransfer.getPermitData(Wt,Pt,en),nn=tn.domain,rn=tn.types,In=tn.values;return an._TypedDataEncoder.hash(nn,rn,In)};return AllowanceTransfer}();function validatePermitDetails(Wt){!mn.gte(Wt.nonce)?nn(false,"NONCE_OUT_OF_RANGE"):void 0;!un.gte(Wt.amount)?nn(false,"AMOUNT_OUT_OF_RANGE"):void 0;!pn.gte(Wt.expiration)?nn(false,"EXPIRATION_OUT_OF_RANGE"):void 0}function _regeneratorRuntime(){_regeneratorRuntime=function(){return Pt};var Wt,Pt={},en=Object.prototype,tn=en.hasOwnProperty,nn=Object.defineProperty||function(Wt,Pt,en){Wt[Pt]=en.value},an="function"==typeof Symbol?Symbol:{},rn=an.iterator||"@@iterator",In=an.asyncIterator||"@@asyncIterator",sn=an.toStringTag||"@@toStringTag";function define(Wt,Pt,en){return Object.defineProperty(Wt,Pt,{value:en,enumerable:!0,configurable:!0,writable:!0}),Wt[Pt]}try{define({},"")}catch(Wt){define=function(Wt,Pt,en){return Wt[Pt]=en}}function wrap(Wt,Pt,en,tn){var an=Pt&&Pt.prototype instanceof Generator?Pt:Generator,rn=Object.create(an.prototype),In=new Context(tn||[]);return nn(rn,"_invoke",{value:makeInvokeMethod(Wt,en,In)}),rn}function tryCatch(Wt,Pt,en){try{return{type:"normal",arg:Wt.call(Pt,en)}}catch(Wt){return{type:"throw",arg:Wt}}}Pt.wrap=wrap;var on="suspendedStart",cn="suspendedYield",dn="executing",un="completed",pn={};function Generator(){}function GeneratorFunction(){}function GeneratorFunctionPrototype(){}var mn={};define(mn,rn,(function(){return this}));var bn=Object.getPrototypeOf,Gn=bn&&bn(bn(values([])));Gn&&Gn!==en&&tn.call(Gn,rn)&&(mn=Gn);var hn=GeneratorFunctionPrototype.prototype=Generator.prototype=Object.create(mn);function defineIteratorMethods(Wt){["next","throw","return"].forEach((function(Pt){define(Wt,Pt,(function(Wt){return this._invoke(Pt,Wt)}))}))}function AsyncIterator(Wt,Pt){function invoke(en,nn,an,rn){var In=tryCatch(Wt[en],Wt,nn);if("throw"!==In.type){var sn=In.arg,on=sn.value;return on&&"object"==typeof on&&tn.call(on,"__await")?Pt.resolve(on.__await).then((function(Wt){invoke("next",Wt,an,rn)}),(function(Wt){invoke("throw",Wt,an,rn)})):Pt.resolve(on).then((function(Wt){sn.value=Wt,an(sn)}),(function(Wt){return invoke("throw",Wt,an,rn)}))}rn(In.arg)}var en;nn(this,"_invoke",{value:function(Wt,tn){function callInvokeWithMethodAndArg(){return new Pt((function(Pt,en){invoke(Wt,tn,Pt,en)}))}return en=en?en.then(callInvokeWithMethodAndArg,callInvokeWithMethodAndArg):callInvokeWithMethodAndArg()}})}function makeInvokeMethod(Pt,en,tn){var nn=on;return function(an,rn){if(nn===dn)throw new Error("Generator is already running");if(nn===un){if("throw"===an)throw rn;return{value:Wt,done:!0}}for(tn.method=an,tn.arg=rn;;){var In=tn.delegate;if(In){var sn=maybeInvokeDelegate(In,tn);if(sn){if(sn===pn)continue;return sn}}if("next"===tn.method)tn.sent=tn._sent=tn.arg;else if("throw"===tn.method){if(nn===on)throw nn=un,tn.arg;tn.dispatchException(tn.arg)}else"return"===tn.method&&tn.abrupt("return",tn.arg);nn=dn;var mn=tryCatch(Pt,en,tn);if("normal"===mn.type){if(nn=tn.done?un:cn,mn.arg===pn)continue;return{value:mn.arg,done:tn.done}}"throw"===mn.type&&(nn=un,tn.method="throw",tn.arg=mn.arg)}}}function maybeInvokeDelegate(Pt,en){var tn=en.method,nn=Pt.iterator[tn];if(nn===Wt)return en.delegate=null,"throw"===tn&&Pt.iterator.return&&(en.method="return",en.arg=Wt,maybeInvokeDelegate(Pt,en),"throw"===en.method)||"return"!==tn&&(en.method="throw",en.arg=new TypeError("The iterator does not provide a '"+tn+"' method")),pn;var an=tryCatch(nn,Pt.iterator,en.arg);if("throw"===an.type)return en.method="throw",en.arg=an.arg,en.delegate=null,pn;var rn=an.arg;return rn?rn.done?(en[Pt.resultName]=rn.value,en.next=Pt.nextLoc,"return"!==en.method&&(en.method="next",en.arg=Wt),en.delegate=null,pn):rn:(en.method="throw",en.arg=new TypeError("iterator result is not an object"),en.delegate=null,pn)}function pushTryEntry(Wt){var Pt={tryLoc:Wt[0]};1 in Wt&&(Pt.catchLoc=Wt[1]),2 in Wt&&(Pt.finallyLoc=Wt[2],Pt.afterLoc=Wt[3]),this.tryEntries.push(Pt)}function resetTryEntry(Wt){var Pt=Wt.completion||{};Pt.type="normal",delete Pt.arg,Wt.completion=Pt}function Context(Wt){this.tryEntries=[{tryLoc:"root"}],Wt.forEach(pushTryEntry,this),this.reset(!0)}function values(Pt){if(Pt||""===Pt){var en=Pt[rn];if(en)return en.call(Pt);if("function"==typeof Pt.next)return Pt;if(!isNaN(Pt.length)){var nn=-1,an=function next(){for(;++nn=0;--nn){var an=this.tryEntries[nn],rn=an.completion;if("root"===an.tryLoc)return handle("end");if(an.tryLoc<=this.prev){var In=tn.call(an,"catchLoc"),sn=tn.call(an,"finallyLoc");if(In&&sn){if(this.prev=0;--en){var nn=this.tryEntries[en];if(nn.tryLoc<=this.prev&&tn.call(nn,"finallyLoc")&&this.prev=0;--Pt){var en=this.tryEntries[Pt];if(en.finallyLoc===Wt)return this.complete(en.completion,en.afterLoc),resetTryEntry(en),pn}},catch:function(Wt){for(var Pt=this.tryEntries.length-1;Pt>=0;--Pt){var en=this.tryEntries[Pt];if(en.tryLoc===Wt){var tn=en.completion;if("throw"===tn.type){var nn=tn.arg;resetTryEntry(en)}return nn}}throw new Error("illegal catch attempt")},delegateYield:function(Pt,en,tn){return this.delegate={iterator:values(Pt),resultName:en,nextLoc:tn},"next"===this.method&&(this.arg=Wt),pn}},Pt}function asyncGeneratorStep(Wt,Pt,en,tn,nn,an,rn){try{var In=Wt[an](rn);var sn=In.value}catch(Wt){en(Wt);return}if(In.done){Pt(sn)}else{Promise.resolve(sn).then(tn,nn)}}function _asyncToGenerator(Wt){return function(){var Pt=this,en=arguments;return new Promise((function(tn,nn){var an=Wt.apply(Pt,en);function _next(Wt){asyncGeneratorStep(an,tn,nn,_next,_throw,"next",Wt)}function _throw(Wt){asyncGeneratorStep(an,tn,nn,_next,_throw,"throw",Wt)}_next(undefined)}))}}function _extends(){_extends=Object.assign?Object.assign.bind():function(Wt){for(var Pt=1;Pt{"use strict";var tn;tn={value:!0};var nn,an=(nn=en(9889))&&"object"==typeof nn&&"default"in nn?nn.default:nn,rn=en(91839),In=en(18202),sn=en(98322),on=In.BigNumber.from("0xffffffffffff"),cn=In.BigNumber.from("0xffffffffffffffffffffffffffffffffffffffff"),dn=In.BigNumber.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),un=cn,pn=on,mn=on,bn=dn,Gn=dn,hn=dn,Zn=In.BigNumber.from(0);function f(Wt,Pt){return{name:"Permit2",chainId:Pt,verifyingContract:Wt}}var An=[{name:"token",type:"address"},{name:"amount",type:"uint160"},{name:"expiration",type:"uint48"},{name:"nonce",type:"uint48"}],Wn={PermitSingle:[{name:"details",type:"PermitDetails"},{name:"spender",type:"address"},{name:"sigDeadline",type:"uint256"}],PermitDetails:An},Nn={PermitBatch:[{name:"details",type:"PermitDetails[]"},{name:"spender",type:"address"},{name:"sigDeadline",type:"uint256"}],PermitDetails:An},gn=function(){function e(){}return e.getPermitData=function(Wt,Pt,en){hn.gte(Wt.sigDeadline)||an(!1);var tn=f(Pt,en);return function(Wt){return!Array.isArray(Wt.details)}(Wt)?(w(Wt.details),{domain:tn,types:Wn,values:Wt}):(Wt.details.forEach(w),{domain:tn,types:Nn,values:Wt})},e.hash=function(Wt,Pt,en){var tn=e.getPermitData(Wt,Pt,en);return rn._TypedDataEncoder.hash(tn.domain,tn.types,tn.values)},e}();function w(Wt){mn.gte(Wt.nonce)||an(!1),un.gte(Wt.amount)||an(!1),pn.gte(Wt.expiration)||an(!1)}function x(){x=function(){return Pt};var Wt,Pt={},en=Object.prototype,tn=en.hasOwnProperty,nn=Object.defineProperty||function(Wt,Pt,en){Wt[Pt]=en.value},an="function"==typeof Symbol?Symbol:{},rn=an.iterator||"@@iterator",In=an.asyncIterator||"@@asyncIterator",sn=an.toStringTag||"@@toStringTag";function u(Wt,Pt,en){return Object.defineProperty(Wt,Pt,{value:en,enumerable:!0,configurable:!0,writable:!0}),Wt[Pt]}try{u({},"")}catch(Wt){u=function(Wt,Pt,en){return Wt[Pt]=en}}function y(Wt,Pt,en,tn){var an=Object.create((Pt&&Pt.prototype instanceof h?Pt:h).prototype),rn=new L(tn||[]);return nn(an,"_invoke",{value:E(Wt,en,rn)}),an}function d(Wt,Pt,en){try{return{type:"normal",arg:Wt.call(Pt,en)}}catch(Wt){return{type:"throw",arg:Wt}}}Pt.wrap=y;var on="suspendedStart",cn="executing",dn="completed",un={};function h(){}function T(){}function v(){}var pn={};u(pn,rn,(function(){return this}));var mn=Object.getPrototypeOf,bn=mn&&mn(mn(N([])));bn&&bn!==en&&tn.call(bn,rn)&&(pn=bn);var Gn=v.prototype=h.prototype=Object.create(pn);function k(Wt){["next","throw","return"].forEach((function(Pt){u(Wt,Pt,(function(Wt){return this._invoke(Pt,Wt)}))}))}function A(Wt,Pt){function n(en,nn,an,rn){var In=d(Wt[en],Wt,nn);if("throw"!==In.type){var sn=In.arg,on=sn.value;return on&&"object"==typeof on&&tn.call(on,"__await")?Pt.resolve(on.__await).then((function(Wt){n("next",Wt,an,rn)}),(function(Wt){n("throw",Wt,an,rn)})):Pt.resolve(on).then((function(Wt){sn.value=Wt,an(sn)}),(function(Wt){return n("throw",Wt,an,rn)}))}rn(In.arg)}var en;nn(this,"_invoke",{value:function(Wt,tn){function a(){return new Pt((function(Pt,en){n(Wt,tn,Pt,en)}))}return en=en?en.then(a,a):a()}})}function E(Pt,en,tn){var nn=on;return function(an,rn){if(nn===cn)throw new Error("Generator is already running");if(nn===dn){if("throw"===an)throw rn;return{value:Wt,done:!0}}for(tn.method=an,tn.arg=rn;;){var In=tn.delegate;if(In){var sn=D(In,tn);if(sn){if(sn===un)continue;return sn}}if("next"===tn.method)tn.sent=tn._sent=tn.arg;else if("throw"===tn.method){if(nn===on)throw nn=dn,tn.arg;tn.dispatchException(tn.arg)}else"return"===tn.method&&tn.abrupt("return",tn.arg);nn=cn;var pn=d(Pt,en,tn);if("normal"===pn.type){if(nn=tn.done?dn:"suspendedYield",pn.arg===un)continue;return{value:pn.arg,done:tn.done}}"throw"===pn.type&&(nn=dn,tn.method="throw",tn.arg=pn.arg)}}}function D(Pt,en){var tn=en.method,nn=Pt.iterator[tn];if(nn===Wt)return en.delegate=null,"throw"===tn&&Pt.iterator.return&&(en.method="return",en.arg=Wt,D(Pt,en),"throw"===en.method)||"return"!==tn&&(en.method="throw",en.arg=new TypeError("The iterator does not provide a '"+tn+"' method")),un;var an=d(nn,Pt.iterator,en.arg);if("throw"===an.type)return en.method="throw",en.arg=an.arg,en.delegate=null,un;var rn=an.arg;return rn?rn.done?(en[Pt.resultName]=rn.value,en.next=Pt.nextLoc,"return"!==en.method&&(en.method="next",en.arg=Wt),en.delegate=null,un):rn:(en.method="throw",en.arg=new TypeError("iterator result is not an object"),en.delegate=null,un)}function S(Wt){var Pt={tryLoc:Wt[0]};1 in Wt&&(Pt.catchLoc=Wt[1]),2 in Wt&&(Pt.finallyLoc=Wt[2],Pt.afterLoc=Wt[3]),this.tryEntries.push(Pt)}function I(Wt){var Pt=Wt.completion||{};Pt.type="normal",delete Pt.arg,Wt.completion=Pt}function L(Wt){this.tryEntries=[{tryLoc:"root"}],Wt.forEach(S,this),this.reset(!0)}function N(Pt){if(Pt||""===Pt){var en=Pt[rn];if(en)return en.call(Pt);if("function"==typeof Pt.next)return Pt;if(!isNaN(Pt.length)){var nn=-1,an=function n(){for(;++nn=0;--nn){var an=this.tryEntries[nn],rn=an.completion;if("root"===an.tryLoc)return a("end");if(an.tryLoc<=this.prev){var In=tn.call(an,"catchLoc"),sn=tn.call(an,"finallyLoc");if(In&&sn){if(this.prev=0;--en){var nn=this.tryEntries[en];if(nn.tryLoc<=this.prev&&tn.call(nn,"finallyLoc")&&this.prev=0;--Pt){var en=this.tryEntries[Pt];if(en.finallyLoc===Wt)return this.complete(en.completion,en.afterLoc),I(en),un}},catch:function(Wt){for(var Pt=this.tryEntries.length-1;Pt>=0;--Pt){var en=this.tryEntries[Pt];if(en.tryLoc===Wt){var tn=en.completion;if("throw"===tn.type){var nn=tn.arg;I(en)}return nn}}throw new Error("illegal catch attempt")},delegateYield:function(Pt,en,tn){return this.delegate={iterator:N(Pt),resultName:en,nextLoc:tn},"next"===this.method&&(this.arg=Wt),un}},Pt}function b(Wt,Pt,en,tn,nn,an,rn){try{var In=Wt[an](rn),sn=In.value}catch(Wt){return void en(Wt)}In.done?Pt(sn):Promise.resolve(sn).then(tn,nn)}function P(Wt){return function(){var Pt=this,en=arguments;return new Promise((function(tn,nn){var an=Wt.apply(Pt,en);function s(Wt){b(an,tn,nn,s,o,"next",Wt)}function o(Wt){b(an,tn,nn,s,o,"throw",Wt)}s(void 0)}))}}function k(){return(k=Object.assign?Object.assign.bind():function(Wt){for(var Pt=1;Pt{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});var tn=en(16577);class AbortSignal extends tn.EventTarget{constructor(){super();throw new TypeError("AbortSignal cannot be constructed directly")}get aborted(){const Wt=nn.get(this);if(typeof Wt!=="boolean"){throw new TypeError(`Expected 'this' to be an 'AbortSignal' object, but got ${this===null?"null":typeof this}`)}return Wt}}tn.defineEventAttribute(AbortSignal.prototype,"abort");function createAbortSignal(){const Wt=Object.create(AbortSignal.prototype);tn.EventTarget.call(Wt);nn.set(Wt,false);return Wt}function abortSignal(Wt){if(nn.get(Wt)!==false){return}nn.set(Wt,true);Wt.dispatchEvent({type:"abort"})}const nn=new WeakMap;Object.defineProperties(AbortSignal.prototype,{aborted:{enumerable:true}});if(typeof Symbol==="function"&&typeof Symbol.toStringTag==="symbol"){Object.defineProperty(AbortSignal.prototype,Symbol.toStringTag,{configurable:true,value:"AbortSignal"})}class AbortController{constructor(){an.set(this,createAbortSignal())}get signal(){return getSignal(this)}abort(){abortSignal(getSignal(this))}}const an=new WeakMap;function getSignal(Wt){const Pt=an.get(Wt);if(Pt==null){throw new TypeError(`Expected 'this' to be an 'AbortController' object, but got ${Wt===null?"null":typeof Wt}`)}return Pt}Object.defineProperties(AbortController.prototype,{signal:{enumerable:true},abort:{enumerable:true}});if(typeof Symbol==="function"&&typeof Symbol.toStringTag==="symbol"){Object.defineProperty(AbortController.prototype,Symbol.toStringTag,{configurable:true,value:"AbortController"})}Pt.AbortController=AbortController;Pt.AbortSignal=AbortSignal;Pt["default"]=AbortController;Wt.exports=AbortController;Wt.exports.AbortController=Wt.exports["default"]=AbortController;Wt.exports.AbortSignal=AbortSignal},15183:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};Object.defineProperty(Pt,"__esModule",{value:true});Pt.req=Pt.json=Pt.toBuffer=void 0;const rn=an(en(58611));const In=an(en(65692));async function toBuffer(Wt){let Pt=0;const en=[];for await(const tn of Wt){Pt+=tn.length;en.push(tn)}return Buffer.concat(en,Pt)}Pt.toBuffer=toBuffer;async function json(Wt){const Pt=await toBuffer(Wt);const en=Pt.toString("utf8");try{return JSON.parse(en)}catch(Wt){const Pt=Wt;Pt.message+=` (input: ${en})`;throw Pt}}Pt.json=json;function req(Wt,Pt={}){const en=typeof Wt==="string"?Wt:Wt.href;const tn=(en.startsWith("https:")?In:rn).request(Wt,Pt);const nn=new Promise(((Wt,Pt)=>{tn.once("response",Wt).once("error",Pt).end()}));tn.then=nn.then.bind(nn);return tn}Pt.req=req},98894:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});Pt.Agent=void 0;const In=an(en(69278));const sn=an(en(58611));const on=en(65692);rn(en(15183),Pt);const cn=Symbol("AgentBaseInternalState");class Agent extends sn.Agent{constructor(Wt){super(Wt);this[cn]={}}isSecureEndpoint(Wt){if(Wt){if(typeof Wt.secureEndpoint==="boolean"){return Wt.secureEndpoint}if(typeof Wt.protocol==="string"){return Wt.protocol==="https:"}}const{stack:Pt}=new Error;if(typeof Pt!=="string")return false;return Pt.split("\n").some((Wt=>Wt.indexOf("(https.js:")!==-1||Wt.indexOf("node:https:")!==-1))}incrementSockets(Wt){if(this.maxSockets===Infinity&&this.maxTotalSockets===Infinity){return null}if(!this.sockets[Wt]){this.sockets[Wt]=[]}const Pt=new In.Socket({writable:false});this.sockets[Wt].push(Pt);this.totalSocketCount++;return Pt}decrementSockets(Wt,Pt){if(!this.sockets[Wt]||Pt===null){return}const en=this.sockets[Wt];const tn=en.indexOf(Pt);if(tn!==-1){en.splice(tn,1);this.totalSocketCount--;if(en.length===0){delete this.sockets[Wt]}}}getName(Wt){const Pt=typeof Wt.secureEndpoint==="boolean"?Wt.secureEndpoint:this.isSecureEndpoint(Wt);if(Pt){return on.Agent.prototype.getName.call(this,Wt)}return super.getName(Wt)}createSocket(Wt,Pt,en){const tn={...Pt,secureEndpoint:this.isSecureEndpoint(Pt)};const nn=this.getName(tn);const an=this.incrementSockets(nn);Promise.resolve().then((()=>this.connect(Wt,tn))).then((rn=>{this.decrementSockets(nn,an);if(rn instanceof sn.Agent){return rn.addRequest(Wt,tn)}this[cn].currentSocket=rn;super.createSocket(Wt,Pt,en)}),(Wt=>{this.decrementSockets(nn,an);en(Wt)}))}createConnection(){const Wt=this[cn].currentSocket;this[cn].currentSocket=undefined;if(!Wt){throw new Error("No socket was returned in the `connect()` function")}return Wt}get defaultPort(){return this[cn].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(Wt){if(this[cn]){this[cn].defaultPort=Wt}}get protocol(){return this[cn].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(Wt){if(this[cn]){this[cn].protocol=Wt}}}Pt.Agent=Agent},3873:(Wt,Pt,en)=>{"use strict";Wt.exports=en(12532);Wt.exports.HttpsAgent=en(10414);Wt.exports.constants=en(16160)},12532:(Wt,Pt,en)=>{"use strict";const tn=en(58611).Agent;const nn=en(33724);const an=en(39023).debuglog("agentkeepalive");const{INIT_SOCKET:rn,CURRENT_ID:In,CREATE_ID:sn,SOCKET_CREATED_TIME:on,SOCKET_NAME:cn,SOCKET_REQUEST_COUNT:dn,SOCKET_REQUEST_FINISHED_COUNT:un}=en(16160);let pn=1;const mn=parseInt(process.version.split(".",1)[0].substring(1));if(mn>=11&&mn<=12){pn=2}else if(mn>=13){pn=3}function deprecate(Wt){console.log("[agentkeepalive:deprecated] %s",Wt)}class Agent extends tn{constructor(Wt){Wt=Wt||{};Wt.keepAlive=Wt.keepAlive!==false;if(Wt.freeSocketTimeout===undefined){Wt.freeSocketTimeout=4e3}if(Wt.keepAliveTimeout){deprecate("options.keepAliveTimeout is deprecated, please use options.freeSocketTimeout instead");Wt.freeSocketTimeout=Wt.keepAliveTimeout;delete Wt.keepAliveTimeout}if(Wt.freeSocketKeepAliveTimeout){deprecate("options.freeSocketKeepAliveTimeout is deprecated, please use options.freeSocketTimeout instead");Wt.freeSocketTimeout=Wt.freeSocketKeepAliveTimeout;delete Wt.freeSocketKeepAliveTimeout}if(Wt.timeout===undefined){Wt.timeout=Math.max(Wt.freeSocketTimeout*2,8e3)}Wt.timeout=nn(Wt.timeout);Wt.freeSocketTimeout=nn(Wt.freeSocketTimeout);Wt.socketActiveTTL=Wt.socketActiveTTL?nn(Wt.socketActiveTTL):0;super(Wt);this[In]=0;this.createSocketCount=0;this.createSocketCountLastCheck=0;this.createSocketErrorCount=0;this.createSocketErrorCountLastCheck=0;this.closeSocketCount=0;this.closeSocketCountLastCheck=0;this.errorSocketCount=0;this.errorSocketCountLastCheck=0;this.requestCount=0;this.requestCountLastCheck=0;this.timeoutSocketCount=0;this.timeoutSocketCountLastCheck=0;this.on("free",(Wt=>{const Pt=this.calcSocketTimeout(Wt);if(Pt>0&&Wt.timeout!==Pt){Wt.setTimeout(Pt)}}))}get freeSocketKeepAliveTimeout(){deprecate("agent.freeSocketKeepAliveTimeout is deprecated, please use agent.options.freeSocketTimeout instead");return this.options.freeSocketTimeout}get timeout(){deprecate("agent.timeout is deprecated, please use agent.options.timeout instead");return this.options.timeout}get socketActiveTTL(){deprecate("agent.socketActiveTTL is deprecated, please use agent.options.socketActiveTTL instead");return this.options.socketActiveTTL}calcSocketTimeout(Wt){let Pt=this.options.freeSocketTimeout;const en=this.options.socketActiveTTL;if(en){const tn=Date.now()-Wt[on];const nn=en-tn;if(nn<=0){return nn}if(Pt&&nn{if(en)return;en=true;if(tn){this.createSocketErrorCount++;return Pt(tn)}this[rn](nn,Wt);Pt(tn,nn)};const tn=super.createConnection(Wt,onNewCreate);if(tn)onNewCreate(null,tn);return tn}get statusChanged(){const Wt=this.createSocketCount!==this.createSocketCountLastCheck||this.createSocketErrorCount!==this.createSocketErrorCountLastCheck||this.closeSocketCount!==this.closeSocketCountLastCheck||this.errorSocketCount!==this.errorSocketCountLastCheck||this.timeoutSocketCount!==this.timeoutSocketCountLastCheck||this.requestCount!==this.requestCountLastCheck;if(Wt){this.createSocketCountLastCheck=this.createSocketCount;this.createSocketErrorCountLastCheck=this.createSocketErrorCount;this.closeSocketCountLastCheck=this.closeSocketCount;this.errorSocketCountLastCheck=this.errorSocketCount;this.timeoutSocketCountLastCheck=this.timeoutSocketCount;this.requestCountLastCheck=this.requestCount}return Wt}getCurrentStatus(){return{createSocketCount:this.createSocketCount,createSocketErrorCount:this.createSocketErrorCount,closeSocketCount:this.closeSocketCount,errorSocketCount:this.errorSocketCount,timeoutSocketCount:this.timeoutSocketCount,requestCount:this.requestCount,freeSockets:inspect(this.freeSockets),sockets:inspect(this.sockets),requests:inspect(this.requests)}}}function getSocketTimeout(Wt){return Wt.timeout||Wt._idleTimeout}function installListeners(Wt,Pt,en){an("%s create, timeout %sms",Pt[cn],getSocketTimeout(Pt));function onFree(){if(!Pt._httpMessage&&Pt[dn]===1)return;Pt[un]++;Wt.requestCount++;an("%s(requests: %s, finished: %s) free",Pt[cn],Pt[dn],Pt[un]);const tn=Wt.getName(en);if(Pt.writable&&Wt.requests[tn]&&Wt.requests[tn].length){Pt[dn]++;an("%s(requests: %s, finished: %s) will be reuse on agent free event",Pt[cn],Pt[dn],Pt[un])}}Pt.on("free",onFree);function onClose(en){an("%s(requests: %s, finished: %s) close, isError: %s",Pt[cn],Pt[dn],Pt[un],en);Wt.closeSocketCount++}Pt.on("close",onClose);function onTimeout(){const tn=Pt.listeners("timeout").length;const nn=getSocketTimeout(Pt);const rn=Pt._httpMessage;const In=rn&&rn.listeners("timeout").length||0;an("%s(requests: %s, finished: %s) timeout after %sms, listeners %s, defaultTimeoutListenerCount %s, hasHttpRequest %s, HttpRequest timeoutListenerCount %s",Pt[cn],Pt[dn],Pt[un],nn,tn,pn,!!rn,In);if(an.enabled){an("timeout listeners: %s",Pt.listeners("timeout").map((Wt=>Wt.name)).join(", "))}Wt.timeoutSocketCount++;const sn=Wt.getName(en);if(Wt.freeSockets[sn]&&Wt.freeSockets[sn].indexOf(Pt)!==-1){Pt.destroy();Wt.removeSocket(Pt,en);an("%s is free, destroy quietly",Pt[cn])}else{if(In===0){const tn=new Error("Socket timeout");tn.code="ERR_SOCKET_TIMEOUT";tn.timeout=nn;Pt.destroy(tn);Wt.removeSocket(Pt,en);an("%s destroy with timeout error",Pt[cn])}}}Pt.on("timeout",onTimeout);function onError(en){const tn=Pt.listeners("error").length;an("%s(requests: %s, finished: %s) error: %s, listenerCount: %s",Pt[cn],Pt[dn],Pt[un],en,tn);Wt.errorSocketCount++;if(tn===1){an("%s emit uncaught error event",Pt[cn]);Pt.removeListener("error",onError);Pt.emit("error",en)}}Pt.on("error",onError);function onRemove(){an("%s(requests: %s, finished: %s) agentRemove",Pt[cn],Pt[dn],Pt[un]);Pt.removeListener("close",onClose);Pt.removeListener("error",onError);Pt.removeListener("free",onFree);Pt.removeListener("timeout",onTimeout);Pt.removeListener("agentRemove",onRemove)}Pt.on("agentRemove",onRemove)}Wt.exports=Agent;function inspect(Wt){const Pt={};for(const en in Wt){Pt[en]=Wt[en].length}return Pt}},16160:Wt=>{"use strict";Wt.exports={CURRENT_ID:Symbol("agentkeepalive#currentId"),CREATE_ID:Symbol("agentkeepalive#createId"),INIT_SOCKET:Symbol("agentkeepalive#initSocket"),CREATE_HTTPS_CONNECTION:Symbol("agentkeepalive#createHttpsConnection"),SOCKET_CREATED_TIME:Symbol("agentkeepalive#socketCreatedTime"),SOCKET_NAME:Symbol("agentkeepalive#socketName"),SOCKET_REQUEST_COUNT:Symbol("agentkeepalive#socketRequestCount"),SOCKET_REQUEST_FINISHED_COUNT:Symbol("agentkeepalive#socketRequestFinishedCount")}},10414:(Wt,Pt,en)=>{"use strict";const tn=en(65692).Agent;const nn=en(12532);const{INIT_SOCKET:an,CREATE_HTTPS_CONNECTION:rn}=en(16160);class HttpsAgent extends nn{constructor(Wt){super(Wt);this.defaultPort=443;this.protocol="https:";this.maxCachedSessions=this.options.maxCachedSessions;if(this.maxCachedSessions===undefined){this.maxCachedSessions=100}this._sessionCache={map:{},list:[]}}createConnection(Wt,Pt){const en=this[rn](Wt,Pt);this[an](en,Wt);return en}}HttpsAgent.prototype[rn]=tn.prototype.createConnection;["getName","_getSession","_cacheSession","_evictSession"].forEach((function(Wt){if(typeof tn.prototype[Wt]==="function"){HttpsAgent.prototype[Wt]=tn.prototype[Wt]}}));Wt.exports=HttpsAgent},31324:(Wt,Pt,en)=>{Wt.exports={parallel:en(83857),serial:en(31054),serialOrdered:en(53961)}},24818:Wt=>{Wt.exports=abort;function abort(Wt){Object.keys(Wt.jobs).forEach(clean.bind(Wt));Wt.jobs={}}function clean(Wt){if(typeof this.jobs[Wt]=="function"){this.jobs[Wt]()}}},78452:(Wt,Pt,en)=>{var tn=en(6819);Wt.exports=async;function async(Wt){var Pt=false;tn((function(){Pt=true}));return function async_callback(en,nn){if(Pt){Wt(en,nn)}else{tn((function nextTick_callback(){Wt(en,nn)}))}}}},6819:Wt=>{Wt.exports=defer;function defer(Wt){var Pt=typeof setImmediate=="function"?setImmediate:typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:null;if(Pt){Pt(Wt)}else{setTimeout(Wt,0)}}},24902:(Wt,Pt,en)=>{var tn=en(78452),nn=en(24818);Wt.exports=iterate;function iterate(Wt,Pt,en,tn){var an=en["keyedList"]?en["keyedList"][en.index]:en.index;en.jobs[an]=runJob(Pt,an,Wt[an],(function(Wt,Pt){if(!(an in en.jobs)){return}delete en.jobs[an];if(Wt){nn(en)}else{en.results[an]=Pt}tn(Wt,en.results)}))}function runJob(Wt,Pt,en,nn){var an;if(Wt.length==2){an=Wt(en,tn(nn))}else{an=Wt(en,Pt,tn(nn))}return an}},81721:Wt=>{Wt.exports=state;function state(Wt,Pt){var en=!Array.isArray(Wt),tn={index:0,keyedList:en||Pt?Object.keys(Wt):null,jobs:{},results:en?{}:[],size:en?Object.keys(Wt).length:Wt.length};if(Pt){tn.keyedList.sort(en?Pt:function(en,tn){return Pt(Wt[en],Wt[tn])})}return tn}},33351:(Wt,Pt,en)=>{var tn=en(24818),nn=en(78452);Wt.exports=terminator;function terminator(Wt){if(!Object.keys(this.jobs).length){return}this.index=this.size;tn(this);nn(Wt)(null,this.results)}},83857:(Wt,Pt,en)=>{var tn=en(24902),nn=en(81721),an=en(33351);Wt.exports=parallel;function parallel(Wt,Pt,en){var rn=nn(Wt);while(rn.index<(rn["keyedList"]||Wt).length){tn(Wt,Pt,rn,(function(Wt,Pt){if(Wt){en(Wt,Pt);return}if(Object.keys(rn.jobs).length===0){en(null,rn.results);return}}));rn.index++}return an.bind(rn,en)}},31054:(Wt,Pt,en)=>{var tn=en(53961);Wt.exports=serial;function serial(Wt,Pt,en){return tn(Wt,Pt,null,en)}},53961:(Wt,Pt,en)=>{var tn=en(24902),nn=en(81721),an=en(33351);Wt.exports=serialOrdered;Wt.exports.ascending=ascending;Wt.exports.descending=descending;function serialOrdered(Wt,Pt,en,rn){var In=nn(Wt,en);tn(Wt,Pt,In,(function iteratorHandler(en,nn){if(en){rn(en,nn);return}In.index++;if(In.index<(In["keyedList"]||Wt).length){tn(Wt,Pt,In,iteratorHandler);return}rn(null,In.results)}));return an.bind(In,rn)}function ascending(Wt,Pt){return WtPt?1:0}function descending(Wt,Pt){return-1*ascending(Wt,Pt)}},38793:(Wt,Pt)=>{"use strict";Pt.byteLength=byteLength;Pt.toByteArray=toByteArray;Pt.fromByteArray=fromByteArray;var en=[];var tn=[];var nn=typeof Uint8Array!=="undefined"?Uint8Array:Array;var an="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(var rn=0,In=an.length;rn0){throw new Error("Invalid string. Length must be a multiple of 4")}var en=Wt.indexOf("=");if(en===-1)en=Pt;var tn=en===Pt?0:4-en%4;return[en,tn]}function byteLength(Wt){var Pt=getLens(Wt);var en=Pt[0];var tn=Pt[1];return(en+tn)*3/4-tn}function _byteLength(Wt,Pt,en){return(Pt+en)*3/4-en}function toByteArray(Wt){var Pt;var en=getLens(Wt);var an=en[0];var rn=en[1];var In=new nn(_byteLength(Wt,an,rn));var sn=0;var on=rn>0?an-4:an;var cn;for(cn=0;cn>16&255;In[sn++]=Pt>>8&255;In[sn++]=Pt&255}if(rn===2){Pt=tn[Wt.charCodeAt(cn)]<<2|tn[Wt.charCodeAt(cn+1)]>>4;In[sn++]=Pt&255}if(rn===1){Pt=tn[Wt.charCodeAt(cn)]<<10|tn[Wt.charCodeAt(cn+1)]<<4|tn[Wt.charCodeAt(cn+2)]>>2;In[sn++]=Pt>>8&255;In[sn++]=Pt&255}return In}function tripletToBase64(Wt){return en[Wt>>18&63]+en[Wt>>12&63]+en[Wt>>6&63]+en[Wt&63]}function encodeChunk(Wt,Pt,en){var tn;var nn=[];for(var an=Pt;ansn?sn:In+rn))}if(nn===1){Pt=Wt[tn-1];an.push(en[Pt>>2]+en[Pt<<4&63]+"==")}else if(nn===2){Pt=(Wt[tn-2]<<8)+Wt[tn-1];an.push(en[Pt>>10]+en[Pt>>4&63]+en[Pt<<2&63]+"=")}return an.join("")}},15051:Wt=>{"use strict";var Pt="qpzry9x8gf2tvdw0s3jn54khce6mua7l";var en={};for(var tn=0;tn>25;return(Wt&33554431)<<5^-(Pt>>0&1)&996825010^-(Pt>>1&1)&642813549^-(Pt>>2&1)&513874426^-(Pt>>3&1)&1027748829^-(Pt>>4&1)&705979059}function prefixChk(Wt){var Pt=1;for(var en=0;en126)return"Invalid prefix ("+Wt+")";Pt=polymodStep(Pt)^tn>>5}Pt=polymodStep(Pt);for(en=0;entn)throw new TypeError("Exceeds length limit");Wt=Wt.toLowerCase();var nn=prefixChk(Wt);if(typeof nn==="string")throw new Error(nn);var an=Wt+"1";for(var rn=0;rn>5!==0)throw new Error("Non 5-bit word");nn=polymodStep(nn)^In;an+=Pt.charAt(In)}for(rn=0;rn<6;++rn){nn=polymodStep(nn)}nn^=1;for(rn=0;rn<6;++rn){var sn=nn>>(5-rn)*5&31;an+=Pt.charAt(sn)}return an}function __decode(Wt,Pt){Pt=Pt||90;if(Wt.length<8)return Wt+" too short";if(Wt.length>Pt)return"Exceeds length limit";var tn=Wt.toLowerCase();var nn=Wt.toUpperCase();if(Wt!==tn&&Wt!==nn)return"Mixed-case string "+Wt;Wt=tn;var an=Wt.lastIndexOf("1");if(an===-1)return"No separator character for "+Wt;if(an===0)return"Missing prefix for "+Wt;var rn=Wt.slice(0,an);var In=Wt.slice(an+1);if(In.length<6)return"Data too short";var sn=prefixChk(rn);if(typeof sn==="string")return sn;var on=[];for(var cn=0;cn=In.length)continue;on.push(un)}if(sn!==1)return"Invalid checksum for "+Wt;return{prefix:rn,words:on}}function decodeUnsafe(){var Wt=__decode.apply(null,arguments);if(typeof Wt==="object")return Wt}function decode(Wt){var Pt=__decode.apply(null,arguments);if(typeof Pt==="object")return Pt;throw new Error(Pt)}function convert(Wt,Pt,en,tn){var nn=0;var an=0;var rn=(1<=en){an-=en;In.push(nn>>an&rn)}}if(tn){if(an>0){In.push(nn<=Pt)return"Excess padding";if(nn<{var tn=en(11063);var nn=en(22027);var an=en(59934);var rn=Function.bind;var In=rn.bind(rn);function bindApi(Wt,Pt,en){var tn=In(an,null).apply(null,en?[Pt,en]:[Pt]);Wt.api={remove:tn};Wt.remove=tn;["before","error","after","wrap"].forEach((function(tn){var an=en?[Pt,tn,en]:[Pt,tn];Wt[tn]=Wt.api[tn]=In(nn,null).apply(null,an)}))}function HookSingular(){var Wt="h";var Pt={registry:{}};var en=tn.bind(null,Pt,Wt);bindApi(en,Pt,Wt);return en}function HookCollection(){var Wt={registry:{}};var Pt=tn.bind(null,Wt);bindApi(Pt,Wt);return Pt}var sn=false;function Hook(){if(!sn){console.warn('[before-after-hook]: "Hook()" repurposing warning, use "Hook.Collection()". Read more: https://git.io/upgrade-before-after-hook-to-1.4');sn=true}return HookCollection()}Hook.Singular=HookSingular.bind();Hook.Collection=HookCollection.bind();Wt.exports=Hook;Wt.exports.Hook=Hook;Wt.exports.Singular=Hook.Singular;Wt.exports.Collection=Hook.Collection},22027:Wt=>{Wt.exports=addHook;function addHook(Wt,Pt,en,tn){var nn=tn;if(!Wt.registry[en]){Wt.registry[en]=[]}if(Pt==="before"){tn=function(Wt,Pt){return Promise.resolve().then(nn.bind(null,Pt)).then(Wt.bind(null,Pt))}}if(Pt==="after"){tn=function(Wt,Pt){var en;return Promise.resolve().then(Wt.bind(null,Pt)).then((function(Wt){en=Wt;return nn(en,Pt)})).then((function(){return en}))}}if(Pt==="error"){tn=function(Wt,Pt){return Promise.resolve().then(Wt.bind(null,Pt)).catch((function(Wt){return nn(Wt,Pt)}))}}Wt.registry[en].push({hook:tn,orig:nn})}},11063:Wt=>{Wt.exports=register;function register(Wt,Pt,en,tn){if(typeof en!=="function"){throw new Error("method for before hook must be a function")}if(!tn){tn={}}if(Array.isArray(Pt)){return Pt.reverse().reduce((function(Pt,en){return register.bind(null,Wt,en,Pt,tn)}),en)()}return Promise.resolve().then((function(){if(!Wt.registry[Pt]){return en(tn)}return Wt.registry[Pt].reduce((function(Wt,Pt){return Pt.hook.bind(null,Wt,tn)}),en)()}))}},59934:Wt=>{Wt.exports=removeHook;function removeHook(Wt,Pt,en){if(!Wt.registry[Pt]){return}var tn=Wt.registry[Pt].map((function(Wt){return Wt.orig})).indexOf(en);if(tn===-1){return}Wt.registry[Pt].splice(tn,1)}},10633:function(Wt,Pt,en){Wt=en.nmd(Wt);(function(Wt,Pt){"use strict";function assert(Wt,Pt){if(!Wt)throw new Error(Pt||"Assertion failed")}function inherits(Wt,Pt){Wt.super_=Pt;var TempCtor=function(){};TempCtor.prototype=Pt.prototype;Wt.prototype=new TempCtor;Wt.prototype.constructor=Wt}function BN(Wt,Pt,en){if(BN.isBN(Wt)){return Wt}this.negative=0;this.words=null;this.length=0;this.red=null;if(Wt!==null){if(Pt==="le"||Pt==="be"){en=Pt;Pt=10}this._init(Wt||0,Pt||10,en||"be")}}if(typeof Wt==="object"){Wt.exports=BN}else{Pt.BN=BN}BN.BN=BN;BN.wordSize=26;var tn;try{if(typeof window!=="undefined"&&typeof window.Buffer!=="undefined"){tn=window.Buffer}else{tn=en(20181).Buffer}}catch(Wt){}BN.isBN=function isBN(Wt){if(Wt instanceof BN){return true}return Wt!==null&&typeof Wt==="object"&&Wt.constructor.wordSize===BN.wordSize&&Array.isArray(Wt.words)};BN.max=function max(Wt,Pt){if(Wt.cmp(Pt)>0)return Wt;return Pt};BN.min=function min(Wt,Pt){if(Wt.cmp(Pt)<0)return Wt;return Pt};BN.prototype._init=function init(Wt,Pt,en){if(typeof Wt==="number"){return this._initNumber(Wt,Pt,en)}if(typeof Wt==="object"){return this._initArray(Wt,Pt,en)}if(Pt==="hex"){Pt=16}assert(Pt===(Pt|0)&&Pt>=2&&Pt<=36);Wt=Wt.toString().replace(/\s+/g,"");var tn=0;if(Wt[0]==="-"){tn++;this.negative=1}if(tn=0;tn-=3){an=Wt[tn]|Wt[tn-1]<<8|Wt[tn-2]<<16;this.words[nn]|=an<>>26-rn&67108863;rn+=24;if(rn>=26){rn-=26;nn++}}}else if(en==="le"){for(tn=0,nn=0;tn>>26-rn&67108863;rn+=24;if(rn>=26){rn-=26;nn++}}}return this._strip()};function parseHex4Bits(Wt,Pt){var en=Wt.charCodeAt(Pt);if(en>=48&&en<=57){return en-48}else if(en>=65&&en<=70){return en-55}else if(en>=97&&en<=102){return en-87}else{assert(false,"Invalid character in "+Wt)}}function parseHexByte(Wt,Pt,en){var tn=parseHex4Bits(Wt,en);if(en-1>=Pt){tn|=parseHex4Bits(Wt,en-1)<<4}return tn}BN.prototype._parseHex=function _parseHex(Wt,Pt,en){this.length=Math.ceil((Wt.length-Pt)/6);this.words=new Array(this.length);for(var tn=0;tn=Pt;tn-=2){rn=parseHexByte(Wt,Pt,tn)<=18){nn-=18;an+=1;this.words[an]|=rn>>>26}else{nn+=8}}}else{var In=Wt.length-Pt;for(tn=In%2===0?Pt+1:Pt;tn=18){nn-=18;an+=1;this.words[an]|=rn>>>26}else{nn+=8}}}this._strip()};function parseBase(Wt,Pt,en,tn){var nn=0;var an=0;var rn=Math.min(Wt.length,en);for(var In=Pt;In=49){an=sn-49+10}else if(sn>=17){an=sn-17+10}else{an=sn}assert(sn>=0&&an1&&this.words[this.length-1]===0){this.length--}return this._normSign()};BN.prototype._normSign=function _normSign(){if(this.length===1&&this.words[0]===0){this.negative=0}return this};if(typeof Symbol!=="undefined"&&typeof Symbol.for==="function"){try{BN.prototype[Symbol.for("nodejs.util.inspect.custom")]=inspect}catch(Wt){BN.prototype.inspect=inspect}}else{BN.prototype.inspect=inspect}function inspect(){return(this.red?""}var nn=["","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"];var an=[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];var rn=[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];BN.prototype.toString=function toString(Wt,Pt){Wt=Wt||10;Pt=Pt|0||1;var en;if(Wt===16||Wt==="hex"){en="";var tn=0;var In=0;for(var sn=0;sn>>24-tn&16777215;tn+=2;if(tn>=26){tn-=26;sn--}if(In!==0||sn!==this.length-1){en=nn[6-cn.length]+cn+en}else{en=cn+en}}if(In!==0){en=In.toString(16)+en}while(en.length%Pt!==0){en="0"+en}if(this.negative!==0){en="-"+en}return en}if(Wt===(Wt|0)&&Wt>=2&&Wt<=36){var dn=an[Wt];var un=rn[Wt];en="";var pn=this.clone();pn.negative=0;while(!pn.isZero()){var mn=pn.modrn(un).toString(Wt);pn=pn.idivn(un);if(!pn.isZero()){en=nn[dn-mn.length]+mn+en}else{en=mn+en}}if(this.isZero()){en="0"+en}while(en.length%Pt!==0){en="0"+en}if(this.negative!==0){en="-"+en}return en}assert(false,"Base should be between 2 and 36")};BN.prototype.toNumber=function toNumber(){var Wt=this.words[0];if(this.length===2){Wt+=this.words[1]*67108864}else if(this.length===3&&this.words[2]===1){Wt+=4503599627370496+this.words[1]*67108864}else if(this.length>2){assert(false,"Number can only safely store up to 53 bits")}return this.negative!==0?-Wt:Wt};BN.prototype.toJSON=function toJSON(){return this.toString(16,2)};if(tn){BN.prototype.toBuffer=function toBuffer(Wt,Pt){return this.toArrayLike(tn,Wt,Pt)}}BN.prototype.toArray=function toArray(Wt,Pt){return this.toArrayLike(Array,Wt,Pt)};var In=function allocate(Wt,Pt){if(Wt.allocUnsafe){return Wt.allocUnsafe(Pt)}return new Wt(Pt)};BN.prototype.toArrayLike=function toArrayLike(Wt,Pt,en){this._strip();var tn=this.byteLength();var nn=en||Math.max(1,tn);assert(tn<=nn,"byte array longer than desired length");assert(nn>0,"Requested array length <= 0");var an=In(Wt,nn);var rn=Pt==="le"?"LE":"BE";this["_toArrayLike"+rn](an,tn);return an};BN.prototype._toArrayLikeLE=function _toArrayLikeLE(Wt,Pt){var en=0;var tn=0;for(var nn=0,an=0;nn>8&255}if(en>16&255}if(an===6){if(en>24&255}tn=0;an=0}else{tn=rn>>>24;an+=2}}if(en=0){Wt[en--]=rn>>8&255}if(en>=0){Wt[en--]=rn>>16&255}if(an===6){if(en>=0){Wt[en--]=rn>>24&255}tn=0;an=0}else{tn=rn>>>24;an+=2}}if(en>=0){Wt[en--]=tn;while(en>=0){Wt[en--]=0}}};if(Math.clz32){BN.prototype._countBits=function _countBits(Wt){return 32-Math.clz32(Wt)}}else{BN.prototype._countBits=function _countBits(Wt){var Pt=Wt;var en=0;if(Pt>=4096){en+=13;Pt>>>=13}if(Pt>=64){en+=7;Pt>>>=7}if(Pt>=8){en+=4;Pt>>>=4}if(Pt>=2){en+=2;Pt>>>=2}return en+Pt}}BN.prototype._zeroBits=function _zeroBits(Wt){if(Wt===0)return 26;var Pt=Wt;var en=0;if((Pt&8191)===0){en+=13;Pt>>>=13}if((Pt&127)===0){en+=7;Pt>>>=7}if((Pt&15)===0){en+=4;Pt>>>=4}if((Pt&3)===0){en+=2;Pt>>>=2}if((Pt&1)===0){en++}return en};BN.prototype.bitLength=function bitLength(){var Wt=this.words[this.length-1];var Pt=this._countBits(Wt);return(this.length-1)*26+Pt};function toBitArray(Wt){var Pt=new Array(Wt.bitLength());for(var en=0;en>>nn&1}return Pt}BN.prototype.zeroBits=function zeroBits(){if(this.isZero())return 0;var Wt=0;for(var Pt=0;PtWt.length)return this.clone().ior(Wt);return Wt.clone().ior(this)};BN.prototype.uor=function uor(Wt){if(this.length>Wt.length)return this.clone().iuor(Wt);return Wt.clone().iuor(this)};BN.prototype.iuand=function iuand(Wt){var Pt;if(this.length>Wt.length){Pt=Wt}else{Pt=this}for(var en=0;enWt.length)return this.clone().iand(Wt);return Wt.clone().iand(this)};BN.prototype.uand=function uand(Wt){if(this.length>Wt.length)return this.clone().iuand(Wt);return Wt.clone().iuand(this)};BN.prototype.iuxor=function iuxor(Wt){var Pt;var en;if(this.length>Wt.length){Pt=this;en=Wt}else{Pt=Wt;en=this}for(var tn=0;tnWt.length)return this.clone().ixor(Wt);return Wt.clone().ixor(this)};BN.prototype.uxor=function uxor(Wt){if(this.length>Wt.length)return this.clone().iuxor(Wt);return Wt.clone().iuxor(this)};BN.prototype.inotn=function inotn(Wt){assert(typeof Wt==="number"&&Wt>=0);var Pt=Math.ceil(Wt/26)|0;var en=Wt%26;this._expand(Pt);if(en>0){Pt--}for(var tn=0;tn0){this.words[tn]=~this.words[tn]&67108863>>26-en}return this._strip()};BN.prototype.notn=function notn(Wt){return this.clone().inotn(Wt)};BN.prototype.setn=function setn(Wt,Pt){assert(typeof Wt==="number"&&Wt>=0);var en=Wt/26|0;var tn=Wt%26;this._expand(en+1);if(Pt){this.words[en]=this.words[en]|1<Wt.length){en=this;tn=Wt}else{en=Wt;tn=this}var nn=0;for(var an=0;an>>26}for(;nn!==0&&an>>26}this.length=en.length;if(nn!==0){this.words[this.length]=nn;this.length++}else if(en!==this){for(;anWt.length)return this.clone().iadd(Wt);return Wt.clone().iadd(this)};BN.prototype.isub=function isub(Wt){if(Wt.negative!==0){Wt.negative=0;var Pt=this.iadd(Wt);Wt.negative=1;return Pt._normSign()}else if(this.negative!==0){this.negative=0;this.iadd(Wt);this.negative=1;return this._normSign()}var en=this.cmp(Wt);if(en===0){this.negative=0;this.length=1;this.words[0]=0;return this}var tn,nn;if(en>0){tn=this;nn=Wt}else{tn=Wt;nn=this}var an=0;for(var rn=0;rn>26;this.words[rn]=Pt&67108863}for(;an!==0&&rn>26;this.words[rn]=Pt&67108863}if(an===0&&rn>>26;var dn=sn&67108863;var un=Math.min(on,Pt.length-1);for(var pn=Math.max(0,on-Wt.length+1);pn<=un;pn++){var mn=on-pn|0;nn=Wt.words[mn]|0;an=Pt.words[pn]|0;rn=nn*an+dn;cn+=rn/67108864|0;dn=rn&67108863}en.words[on]=dn|0;sn=cn|0}if(sn!==0){en.words[on]=sn|0}else{en.length--}return en._strip()}var sn=function comb10MulTo(Wt,Pt,en){var tn=Wt.words;var nn=Pt.words;var an=en.words;var rn=0;var In;var sn;var on;var cn=tn[0]|0;var dn=cn&8191;var un=cn>>>13;var pn=tn[1]|0;var mn=pn&8191;var bn=pn>>>13;var Gn=tn[2]|0;var hn=Gn&8191;var Zn=Gn>>>13;var An=tn[3]|0;var Wn=An&8191;var Nn=An>>>13;var gn=tn[4]|0;var yn=gn&8191;var vn=gn>>>13;var Yn=tn[5]|0;var En=Yn&8191;var Vn=Yn>>>13;var Rn=tn[6]|0;var wn=Rn&8191;var Fn=Rn>>>13;var Qn=tn[7]|0;var fn=Qn&8191;var Hn=Qn>>>13;var Cn=tn[8]|0;var Xn=Cn&8191;var kn=Cn>>>13;var Jn=tn[9]|0;var Ln=Jn&8191;var Bn=Jn>>>13;var xn=nn[0]|0;var On=xn&8191;var Tn=xn>>>13;var Un=nn[1]|0;var Mn=Un&8191;var zn=Un>>>13;var Sn=nn[2]|0;var jn=Sn&8191;var Dn=Sn>>>13;var _n=nn[3]|0;var Kn=_n&8191;var Pn=_n>>>13;var qn=nn[4]|0;var $n=qn&8191;var el=qn>>>13;var tl=nn[5]|0;var nl=tl&8191;var ll=tl>>>13;var al=nn[6]|0;var rl=al&8191;var Il=al>>>13;var sl=nn[7]|0;var ol=sl&8191;var cl=sl>>>13;var il=nn[8]|0;var dl=il&8191;var ul=il>>>13;var pl=nn[9]|0;var ml=pl&8191;var bl=pl>>>13;en.negative=Wt.negative^Pt.negative;en.length=19;In=Math.imul(dn,On);sn=Math.imul(dn,Tn);sn=sn+Math.imul(un,On)|0;on=Math.imul(un,Tn);var Gl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Gl>>>26)|0;Gl&=67108863;In=Math.imul(mn,On);sn=Math.imul(mn,Tn);sn=sn+Math.imul(bn,On)|0;on=Math.imul(bn,Tn);In=In+Math.imul(dn,Mn)|0;sn=sn+Math.imul(dn,zn)|0;sn=sn+Math.imul(un,Mn)|0;on=on+Math.imul(un,zn)|0;var hl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(hl>>>26)|0;hl&=67108863;In=Math.imul(hn,On);sn=Math.imul(hn,Tn);sn=sn+Math.imul(Zn,On)|0;on=Math.imul(Zn,Tn);In=In+Math.imul(mn,Mn)|0;sn=sn+Math.imul(mn,zn)|0;sn=sn+Math.imul(bn,Mn)|0;on=on+Math.imul(bn,zn)|0;In=In+Math.imul(dn,jn)|0;sn=sn+Math.imul(dn,Dn)|0;sn=sn+Math.imul(un,jn)|0;on=on+Math.imul(un,Dn)|0;var Zl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Zl>>>26)|0;Zl&=67108863;In=Math.imul(Wn,On);sn=Math.imul(Wn,Tn);sn=sn+Math.imul(Nn,On)|0;on=Math.imul(Nn,Tn);In=In+Math.imul(hn,Mn)|0;sn=sn+Math.imul(hn,zn)|0;sn=sn+Math.imul(Zn,Mn)|0;on=on+Math.imul(Zn,zn)|0;In=In+Math.imul(mn,jn)|0;sn=sn+Math.imul(mn,Dn)|0;sn=sn+Math.imul(bn,jn)|0;on=on+Math.imul(bn,Dn)|0;In=In+Math.imul(dn,Kn)|0;sn=sn+Math.imul(dn,Pn)|0;sn=sn+Math.imul(un,Kn)|0;on=on+Math.imul(un,Pn)|0;var Al=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Al>>>26)|0;Al&=67108863;In=Math.imul(yn,On);sn=Math.imul(yn,Tn);sn=sn+Math.imul(vn,On)|0;on=Math.imul(vn,Tn);In=In+Math.imul(Wn,Mn)|0;sn=sn+Math.imul(Wn,zn)|0;sn=sn+Math.imul(Nn,Mn)|0;on=on+Math.imul(Nn,zn)|0;In=In+Math.imul(hn,jn)|0;sn=sn+Math.imul(hn,Dn)|0;sn=sn+Math.imul(Zn,jn)|0;on=on+Math.imul(Zn,Dn)|0;In=In+Math.imul(mn,Kn)|0;sn=sn+Math.imul(mn,Pn)|0;sn=sn+Math.imul(bn,Kn)|0;on=on+Math.imul(bn,Pn)|0;In=In+Math.imul(dn,$n)|0;sn=sn+Math.imul(dn,el)|0;sn=sn+Math.imul(un,$n)|0;on=on+Math.imul(un,el)|0;var Wl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Wl>>>26)|0;Wl&=67108863;In=Math.imul(En,On);sn=Math.imul(En,Tn);sn=sn+Math.imul(Vn,On)|0;on=Math.imul(Vn,Tn);In=In+Math.imul(yn,Mn)|0;sn=sn+Math.imul(yn,zn)|0;sn=sn+Math.imul(vn,Mn)|0;on=on+Math.imul(vn,zn)|0;In=In+Math.imul(Wn,jn)|0;sn=sn+Math.imul(Wn,Dn)|0;sn=sn+Math.imul(Nn,jn)|0;on=on+Math.imul(Nn,Dn)|0;In=In+Math.imul(hn,Kn)|0;sn=sn+Math.imul(hn,Pn)|0;sn=sn+Math.imul(Zn,Kn)|0;on=on+Math.imul(Zn,Pn)|0;In=In+Math.imul(mn,$n)|0;sn=sn+Math.imul(mn,el)|0;sn=sn+Math.imul(bn,$n)|0;on=on+Math.imul(bn,el)|0;In=In+Math.imul(dn,nl)|0;sn=sn+Math.imul(dn,ll)|0;sn=sn+Math.imul(un,nl)|0;on=on+Math.imul(un,ll)|0;var Nl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Nl>>>26)|0;Nl&=67108863;In=Math.imul(wn,On);sn=Math.imul(wn,Tn);sn=sn+Math.imul(Fn,On)|0;on=Math.imul(Fn,Tn);In=In+Math.imul(En,Mn)|0;sn=sn+Math.imul(En,zn)|0;sn=sn+Math.imul(Vn,Mn)|0;on=on+Math.imul(Vn,zn)|0;In=In+Math.imul(yn,jn)|0;sn=sn+Math.imul(yn,Dn)|0;sn=sn+Math.imul(vn,jn)|0;on=on+Math.imul(vn,Dn)|0;In=In+Math.imul(Wn,Kn)|0;sn=sn+Math.imul(Wn,Pn)|0;sn=sn+Math.imul(Nn,Kn)|0;on=on+Math.imul(Nn,Pn)|0;In=In+Math.imul(hn,$n)|0;sn=sn+Math.imul(hn,el)|0;sn=sn+Math.imul(Zn,$n)|0;on=on+Math.imul(Zn,el)|0;In=In+Math.imul(mn,nl)|0;sn=sn+Math.imul(mn,ll)|0;sn=sn+Math.imul(bn,nl)|0;on=on+Math.imul(bn,ll)|0;In=In+Math.imul(dn,rl)|0;sn=sn+Math.imul(dn,Il)|0;sn=sn+Math.imul(un,rl)|0;on=on+Math.imul(un,Il)|0;var gl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(gl>>>26)|0;gl&=67108863;In=Math.imul(fn,On);sn=Math.imul(fn,Tn);sn=sn+Math.imul(Hn,On)|0;on=Math.imul(Hn,Tn);In=In+Math.imul(wn,Mn)|0;sn=sn+Math.imul(wn,zn)|0;sn=sn+Math.imul(Fn,Mn)|0;on=on+Math.imul(Fn,zn)|0;In=In+Math.imul(En,jn)|0;sn=sn+Math.imul(En,Dn)|0;sn=sn+Math.imul(Vn,jn)|0;on=on+Math.imul(Vn,Dn)|0;In=In+Math.imul(yn,Kn)|0;sn=sn+Math.imul(yn,Pn)|0;sn=sn+Math.imul(vn,Kn)|0;on=on+Math.imul(vn,Pn)|0;In=In+Math.imul(Wn,$n)|0;sn=sn+Math.imul(Wn,el)|0;sn=sn+Math.imul(Nn,$n)|0;on=on+Math.imul(Nn,el)|0;In=In+Math.imul(hn,nl)|0;sn=sn+Math.imul(hn,ll)|0;sn=sn+Math.imul(Zn,nl)|0;on=on+Math.imul(Zn,ll)|0;In=In+Math.imul(mn,rl)|0;sn=sn+Math.imul(mn,Il)|0;sn=sn+Math.imul(bn,rl)|0;on=on+Math.imul(bn,Il)|0;In=In+Math.imul(dn,ol)|0;sn=sn+Math.imul(dn,cl)|0;sn=sn+Math.imul(un,ol)|0;on=on+Math.imul(un,cl)|0;var yl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(yl>>>26)|0;yl&=67108863;In=Math.imul(Xn,On);sn=Math.imul(Xn,Tn);sn=sn+Math.imul(kn,On)|0;on=Math.imul(kn,Tn);In=In+Math.imul(fn,Mn)|0;sn=sn+Math.imul(fn,zn)|0;sn=sn+Math.imul(Hn,Mn)|0;on=on+Math.imul(Hn,zn)|0;In=In+Math.imul(wn,jn)|0;sn=sn+Math.imul(wn,Dn)|0;sn=sn+Math.imul(Fn,jn)|0;on=on+Math.imul(Fn,Dn)|0;In=In+Math.imul(En,Kn)|0;sn=sn+Math.imul(En,Pn)|0;sn=sn+Math.imul(Vn,Kn)|0;on=on+Math.imul(Vn,Pn)|0;In=In+Math.imul(yn,$n)|0;sn=sn+Math.imul(yn,el)|0;sn=sn+Math.imul(vn,$n)|0;on=on+Math.imul(vn,el)|0;In=In+Math.imul(Wn,nl)|0;sn=sn+Math.imul(Wn,ll)|0;sn=sn+Math.imul(Nn,nl)|0;on=on+Math.imul(Nn,ll)|0;In=In+Math.imul(hn,rl)|0;sn=sn+Math.imul(hn,Il)|0;sn=sn+Math.imul(Zn,rl)|0;on=on+Math.imul(Zn,Il)|0;In=In+Math.imul(mn,ol)|0;sn=sn+Math.imul(mn,cl)|0;sn=sn+Math.imul(bn,ol)|0;on=on+Math.imul(bn,cl)|0;In=In+Math.imul(dn,dl)|0;sn=sn+Math.imul(dn,ul)|0;sn=sn+Math.imul(un,dl)|0;on=on+Math.imul(un,ul)|0;var vl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(vl>>>26)|0;vl&=67108863;In=Math.imul(Ln,On);sn=Math.imul(Ln,Tn);sn=sn+Math.imul(Bn,On)|0;on=Math.imul(Bn,Tn);In=In+Math.imul(Xn,Mn)|0;sn=sn+Math.imul(Xn,zn)|0;sn=sn+Math.imul(kn,Mn)|0;on=on+Math.imul(kn,zn)|0;In=In+Math.imul(fn,jn)|0;sn=sn+Math.imul(fn,Dn)|0;sn=sn+Math.imul(Hn,jn)|0;on=on+Math.imul(Hn,Dn)|0;In=In+Math.imul(wn,Kn)|0;sn=sn+Math.imul(wn,Pn)|0;sn=sn+Math.imul(Fn,Kn)|0;on=on+Math.imul(Fn,Pn)|0;In=In+Math.imul(En,$n)|0;sn=sn+Math.imul(En,el)|0;sn=sn+Math.imul(Vn,$n)|0;on=on+Math.imul(Vn,el)|0;In=In+Math.imul(yn,nl)|0;sn=sn+Math.imul(yn,ll)|0;sn=sn+Math.imul(vn,nl)|0;on=on+Math.imul(vn,ll)|0;In=In+Math.imul(Wn,rl)|0;sn=sn+Math.imul(Wn,Il)|0;sn=sn+Math.imul(Nn,rl)|0;on=on+Math.imul(Nn,Il)|0;In=In+Math.imul(hn,ol)|0;sn=sn+Math.imul(hn,cl)|0;sn=sn+Math.imul(Zn,ol)|0;on=on+Math.imul(Zn,cl)|0;In=In+Math.imul(mn,dl)|0;sn=sn+Math.imul(mn,ul)|0;sn=sn+Math.imul(bn,dl)|0;on=on+Math.imul(bn,ul)|0;In=In+Math.imul(dn,ml)|0;sn=sn+Math.imul(dn,bl)|0;sn=sn+Math.imul(un,ml)|0;on=on+Math.imul(un,bl)|0;var Yl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Yl>>>26)|0;Yl&=67108863;In=Math.imul(Ln,Mn);sn=Math.imul(Ln,zn);sn=sn+Math.imul(Bn,Mn)|0;on=Math.imul(Bn,zn);In=In+Math.imul(Xn,jn)|0;sn=sn+Math.imul(Xn,Dn)|0;sn=sn+Math.imul(kn,jn)|0;on=on+Math.imul(kn,Dn)|0;In=In+Math.imul(fn,Kn)|0;sn=sn+Math.imul(fn,Pn)|0;sn=sn+Math.imul(Hn,Kn)|0;on=on+Math.imul(Hn,Pn)|0;In=In+Math.imul(wn,$n)|0;sn=sn+Math.imul(wn,el)|0;sn=sn+Math.imul(Fn,$n)|0;on=on+Math.imul(Fn,el)|0;In=In+Math.imul(En,nl)|0;sn=sn+Math.imul(En,ll)|0;sn=sn+Math.imul(Vn,nl)|0;on=on+Math.imul(Vn,ll)|0;In=In+Math.imul(yn,rl)|0;sn=sn+Math.imul(yn,Il)|0;sn=sn+Math.imul(vn,rl)|0;on=on+Math.imul(vn,Il)|0;In=In+Math.imul(Wn,ol)|0;sn=sn+Math.imul(Wn,cl)|0;sn=sn+Math.imul(Nn,ol)|0;on=on+Math.imul(Nn,cl)|0;In=In+Math.imul(hn,dl)|0;sn=sn+Math.imul(hn,ul)|0;sn=sn+Math.imul(Zn,dl)|0;on=on+Math.imul(Zn,ul)|0;In=In+Math.imul(mn,ml)|0;sn=sn+Math.imul(mn,bl)|0;sn=sn+Math.imul(bn,ml)|0;on=on+Math.imul(bn,bl)|0;var El=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(El>>>26)|0;El&=67108863;In=Math.imul(Ln,jn);sn=Math.imul(Ln,Dn);sn=sn+Math.imul(Bn,jn)|0;on=Math.imul(Bn,Dn);In=In+Math.imul(Xn,Kn)|0;sn=sn+Math.imul(Xn,Pn)|0;sn=sn+Math.imul(kn,Kn)|0;on=on+Math.imul(kn,Pn)|0;In=In+Math.imul(fn,$n)|0;sn=sn+Math.imul(fn,el)|0;sn=sn+Math.imul(Hn,$n)|0;on=on+Math.imul(Hn,el)|0;In=In+Math.imul(wn,nl)|0;sn=sn+Math.imul(wn,ll)|0;sn=sn+Math.imul(Fn,nl)|0;on=on+Math.imul(Fn,ll)|0;In=In+Math.imul(En,rl)|0;sn=sn+Math.imul(En,Il)|0;sn=sn+Math.imul(Vn,rl)|0;on=on+Math.imul(Vn,Il)|0;In=In+Math.imul(yn,ol)|0;sn=sn+Math.imul(yn,cl)|0;sn=sn+Math.imul(vn,ol)|0;on=on+Math.imul(vn,cl)|0;In=In+Math.imul(Wn,dl)|0;sn=sn+Math.imul(Wn,ul)|0;sn=sn+Math.imul(Nn,dl)|0;on=on+Math.imul(Nn,ul)|0;In=In+Math.imul(hn,ml)|0;sn=sn+Math.imul(hn,bl)|0;sn=sn+Math.imul(Zn,ml)|0;on=on+Math.imul(Zn,bl)|0;var Vl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Vl>>>26)|0;Vl&=67108863;In=Math.imul(Ln,Kn);sn=Math.imul(Ln,Pn);sn=sn+Math.imul(Bn,Kn)|0;on=Math.imul(Bn,Pn);In=In+Math.imul(Xn,$n)|0;sn=sn+Math.imul(Xn,el)|0;sn=sn+Math.imul(kn,$n)|0;on=on+Math.imul(kn,el)|0;In=In+Math.imul(fn,nl)|0;sn=sn+Math.imul(fn,ll)|0;sn=sn+Math.imul(Hn,nl)|0;on=on+Math.imul(Hn,ll)|0;In=In+Math.imul(wn,rl)|0;sn=sn+Math.imul(wn,Il)|0;sn=sn+Math.imul(Fn,rl)|0;on=on+Math.imul(Fn,Il)|0;In=In+Math.imul(En,ol)|0;sn=sn+Math.imul(En,cl)|0;sn=sn+Math.imul(Vn,ol)|0;on=on+Math.imul(Vn,cl)|0;In=In+Math.imul(yn,dl)|0;sn=sn+Math.imul(yn,ul)|0;sn=sn+Math.imul(vn,dl)|0;on=on+Math.imul(vn,ul)|0;In=In+Math.imul(Wn,ml)|0;sn=sn+Math.imul(Wn,bl)|0;sn=sn+Math.imul(Nn,ml)|0;on=on+Math.imul(Nn,bl)|0;var Rl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Rl>>>26)|0;Rl&=67108863;In=Math.imul(Ln,$n);sn=Math.imul(Ln,el);sn=sn+Math.imul(Bn,$n)|0;on=Math.imul(Bn,el);In=In+Math.imul(Xn,nl)|0;sn=sn+Math.imul(Xn,ll)|0;sn=sn+Math.imul(kn,nl)|0;on=on+Math.imul(kn,ll)|0;In=In+Math.imul(fn,rl)|0;sn=sn+Math.imul(fn,Il)|0;sn=sn+Math.imul(Hn,rl)|0;on=on+Math.imul(Hn,Il)|0;In=In+Math.imul(wn,ol)|0;sn=sn+Math.imul(wn,cl)|0;sn=sn+Math.imul(Fn,ol)|0;on=on+Math.imul(Fn,cl)|0;In=In+Math.imul(En,dl)|0;sn=sn+Math.imul(En,ul)|0;sn=sn+Math.imul(Vn,dl)|0;on=on+Math.imul(Vn,ul)|0;In=In+Math.imul(yn,ml)|0;sn=sn+Math.imul(yn,bl)|0;sn=sn+Math.imul(vn,ml)|0;on=on+Math.imul(vn,bl)|0;var wl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(wl>>>26)|0;wl&=67108863;In=Math.imul(Ln,nl);sn=Math.imul(Ln,ll);sn=sn+Math.imul(Bn,nl)|0;on=Math.imul(Bn,ll);In=In+Math.imul(Xn,rl)|0;sn=sn+Math.imul(Xn,Il)|0;sn=sn+Math.imul(kn,rl)|0;on=on+Math.imul(kn,Il)|0;In=In+Math.imul(fn,ol)|0;sn=sn+Math.imul(fn,cl)|0;sn=sn+Math.imul(Hn,ol)|0;on=on+Math.imul(Hn,cl)|0;In=In+Math.imul(wn,dl)|0;sn=sn+Math.imul(wn,ul)|0;sn=sn+Math.imul(Fn,dl)|0;on=on+Math.imul(Fn,ul)|0;In=In+Math.imul(En,ml)|0;sn=sn+Math.imul(En,bl)|0;sn=sn+Math.imul(Vn,ml)|0;on=on+Math.imul(Vn,bl)|0;var Fl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Fl>>>26)|0;Fl&=67108863;In=Math.imul(Ln,rl);sn=Math.imul(Ln,Il);sn=sn+Math.imul(Bn,rl)|0;on=Math.imul(Bn,Il);In=In+Math.imul(Xn,ol)|0;sn=sn+Math.imul(Xn,cl)|0;sn=sn+Math.imul(kn,ol)|0;on=on+Math.imul(kn,cl)|0;In=In+Math.imul(fn,dl)|0;sn=sn+Math.imul(fn,ul)|0;sn=sn+Math.imul(Hn,dl)|0;on=on+Math.imul(Hn,ul)|0;In=In+Math.imul(wn,ml)|0;sn=sn+Math.imul(wn,bl)|0;sn=sn+Math.imul(Fn,ml)|0;on=on+Math.imul(Fn,bl)|0;var Ql=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Ql>>>26)|0;Ql&=67108863;In=Math.imul(Ln,ol);sn=Math.imul(Ln,cl);sn=sn+Math.imul(Bn,ol)|0;on=Math.imul(Bn,cl);In=In+Math.imul(Xn,dl)|0;sn=sn+Math.imul(Xn,ul)|0;sn=sn+Math.imul(kn,dl)|0;on=on+Math.imul(kn,ul)|0;In=In+Math.imul(fn,ml)|0;sn=sn+Math.imul(fn,bl)|0;sn=sn+Math.imul(Hn,ml)|0;on=on+Math.imul(Hn,bl)|0;var fl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(fl>>>26)|0;fl&=67108863;In=Math.imul(Ln,dl);sn=Math.imul(Ln,ul);sn=sn+Math.imul(Bn,dl)|0;on=Math.imul(Bn,ul);In=In+Math.imul(Xn,ml)|0;sn=sn+Math.imul(Xn,bl)|0;sn=sn+Math.imul(kn,ml)|0;on=on+Math.imul(kn,bl)|0;var Hl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Hl>>>26)|0;Hl&=67108863;In=Math.imul(Ln,ml);sn=Math.imul(Ln,bl);sn=sn+Math.imul(Bn,ml)|0;on=Math.imul(Bn,bl);var Cl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Cl>>>26)|0;Cl&=67108863;an[0]=Gl;an[1]=hl;an[2]=Zl;an[3]=Al;an[4]=Wl;an[5]=Nl;an[6]=gl;an[7]=yl;an[8]=vl;an[9]=Yl;an[10]=El;an[11]=Vl;an[12]=Rl;an[13]=wl;an[14]=Fl;an[15]=Ql;an[16]=fl;an[17]=Hl;an[18]=Cl;if(rn!==0){an[19]=rn;en.length++}return en};if(!Math.imul){sn=smallMulTo}function bigMulTo(Wt,Pt,en){en.negative=Pt.negative^Wt.negative;en.length=Wt.length+Pt.length;var tn=0;var nn=0;for(var an=0;an>>26)|0;nn+=rn>>>26;rn&=67108863}en.words[an]=In;tn=rn;rn=nn}if(tn!==0){en.words[an]=tn}else{en.length--}return en._strip()}function jumboMulTo(Wt,Pt,en){return bigMulTo(Wt,Pt,en)}BN.prototype.mulTo=function mulTo(Wt,Pt){var en;var tn=this.length+Wt.length;if(this.length===10&&Wt.length===10){en=sn(this,Wt,Pt)}else if(tn<63){en=smallMulTo(this,Wt,Pt)}else if(tn<1024){en=bigMulTo(this,Wt,Pt)}else{en=jumboMulTo(this,Wt,Pt)}return en};function FFTM(Wt,Pt){this.x=Wt;this.y=Pt}FFTM.prototype.makeRBT=function makeRBT(Wt){var Pt=new Array(Wt);var en=BN.prototype._countBits(Wt)-1;for(var tn=0;tn>=1}return tn};FFTM.prototype.permute=function permute(Wt,Pt,en,tn,nn,an){for(var rn=0;rn>>1){nn++}return 1<>>13;en[2*an+1]=nn&8191;nn=nn>>>13}for(an=2*Pt;an>=26;en+=nn/67108864|0;en+=an>>>26;this.words[tn]=an&67108863}if(en!==0){this.words[tn]=en;this.length++}return Pt?this.ineg():this};BN.prototype.muln=function muln(Wt){return this.clone().imuln(Wt)};BN.prototype.sqr=function sqr(){return this.mul(this)};BN.prototype.isqr=function isqr(){return this.imul(this.clone())};BN.prototype.pow=function pow(Wt){var Pt=toBitArray(Wt);if(Pt.length===0)return new BN(1);var en=this;for(var tn=0;tn=0);var Pt=Wt%26;var en=(Wt-Pt)/26;var tn=67108863>>>26-Pt<<26-Pt;var nn;if(Pt!==0){var an=0;for(nn=0;nn>>26-Pt}if(an){this.words[nn]=an;this.length++}}if(en!==0){for(nn=this.length-1;nn>=0;nn--){this.words[nn+en]=this.words[nn]}for(nn=0;nn=0);var tn;if(Pt){tn=(Pt-Pt%26)/26}else{tn=0}var nn=Wt%26;var an=Math.min((Wt-nn)/26,this.length);var rn=67108863^67108863>>>nn<an){this.length-=an;for(sn=0;sn=0&&(on!==0||sn>=tn);sn--){var cn=this.words[sn]|0;this.words[sn]=on<<26-nn|cn>>>nn;on=cn&rn}if(In&&on!==0){In.words[In.length++]=on}if(this.length===0){this.words[0]=0;this.length=1}return this._strip()};BN.prototype.ishrn=function ishrn(Wt,Pt,en){assert(this.negative===0);return this.iushrn(Wt,Pt,en)};BN.prototype.shln=function shln(Wt){return this.clone().ishln(Wt)};BN.prototype.ushln=function ushln(Wt){return this.clone().iushln(Wt)};BN.prototype.shrn=function shrn(Wt){return this.clone().ishrn(Wt)};BN.prototype.ushrn=function ushrn(Wt){return this.clone().iushrn(Wt)};BN.prototype.testn=function testn(Wt){assert(typeof Wt==="number"&&Wt>=0);var Pt=Wt%26;var en=(Wt-Pt)/26;var tn=1<=0);var Pt=Wt%26;var en=(Wt-Pt)/26;assert(this.negative===0,"imaskn works only with positive numbers");if(this.length<=en){return this}if(Pt!==0){en++}this.length=Math.min(en,this.length);if(Pt!==0){var tn=67108863^67108863>>>Pt<=67108864;Pt++){this.words[Pt]-=67108864;if(Pt===this.length-1){this.words[Pt+1]=1}else{this.words[Pt+1]++}}this.length=Math.max(this.length,Pt+1);return this};BN.prototype.isubn=function isubn(Wt){assert(typeof Wt==="number");assert(Wt<67108864);if(Wt<0)return this.iaddn(-Wt);if(this.negative!==0){this.negative=0;this.iaddn(Wt);this.negative=1;return this}this.words[0]-=Wt;if(this.length===1&&this.words[0]<0){this.words[0]=-this.words[0];this.negative=1}else{for(var Pt=0;Pt>26)-(In/67108864|0);this.words[nn+en]=an&67108863}for(;nn>26;this.words[nn+en]=an&67108863}if(rn===0)return this._strip();assert(rn===-1);rn=0;for(nn=0;nn>26;this.words[nn]=an&67108863}this.negative=1;return this._strip()};BN.prototype._wordDiv=function _wordDiv(Wt,Pt){var en=this.length-Wt.length;var tn=this.clone();var nn=Wt;var an=nn.words[nn.length-1]|0;var rn=this._countBits(an);en=26-rn;if(en!==0){nn=nn.ushln(en);tn.iushln(en);an=nn.words[nn.length-1]|0}var In=tn.length-nn.length;var sn;if(Pt!=="mod"){sn=new BN(null);sn.length=In+1;sn.words=new Array(sn.length);for(var on=0;on=0;dn--){var un=(tn.words[nn.length+dn]|0)*67108864+(tn.words[nn.length+dn-1]|0);un=Math.min(un/an|0,67108863);tn._ishlnsubmul(nn,un,dn);while(tn.negative!==0){un--;tn.negative=0;tn._ishlnsubmul(nn,1,dn);if(!tn.isZero()){tn.negative^=1}}if(sn){sn.words[dn]=un}}if(sn){sn._strip()}tn._strip();if(Pt!=="div"&&en!==0){tn.iushrn(en)}return{div:sn||null,mod:tn}};BN.prototype.divmod=function divmod(Wt,Pt,en){assert(!Wt.isZero());if(this.isZero()){return{div:new BN(0),mod:new BN(0)}}var tn,nn,an;if(this.negative!==0&&Wt.negative===0){an=this.neg().divmod(Wt,Pt);if(Pt!=="mod"){tn=an.div.neg()}if(Pt!=="div"){nn=an.mod.neg();if(en&&nn.negative!==0){nn.iadd(Wt)}}return{div:tn,mod:nn}}if(this.negative===0&&Wt.negative!==0){an=this.divmod(Wt.neg(),Pt);if(Pt!=="mod"){tn=an.div.neg()}return{div:tn,mod:an.mod}}if((this.negative&Wt.negative)!==0){an=this.neg().divmod(Wt.neg(),Pt);if(Pt!=="div"){nn=an.mod.neg();if(en&&nn.negative!==0){nn.isub(Wt)}}return{div:an.div,mod:nn}}if(Wt.length>this.length||this.cmp(Wt)<0){return{div:new BN(0),mod:this}}if(Wt.length===1){if(Pt==="div"){return{div:this.divn(Wt.words[0]),mod:null}}if(Pt==="mod"){return{div:null,mod:new BN(this.modrn(Wt.words[0]))}}return{div:this.divn(Wt.words[0]),mod:new BN(this.modrn(Wt.words[0]))}}return this._wordDiv(Wt,Pt)};BN.prototype.div=function div(Wt){return this.divmod(Wt,"div",false).div};BN.prototype.mod=function mod(Wt){return this.divmod(Wt,"mod",false).mod};BN.prototype.umod=function umod(Wt){return this.divmod(Wt,"mod",true).mod};BN.prototype.divRound=function divRound(Wt){var Pt=this.divmod(Wt);if(Pt.mod.isZero())return Pt.div;var en=Pt.div.negative!==0?Pt.mod.isub(Wt):Pt.mod;var tn=Wt.ushrn(1);var nn=Wt.andln(1);var an=en.cmp(tn);if(an<0||nn===1&&an===0)return Pt.div;return Pt.div.negative!==0?Pt.div.isubn(1):Pt.div.iaddn(1)};BN.prototype.modrn=function modrn(Wt){var Pt=Wt<0;if(Pt)Wt=-Wt;assert(Wt<=67108863);var en=(1<<26)%Wt;var tn=0;for(var nn=this.length-1;nn>=0;nn--){tn=(en*tn+(this.words[nn]|0))%Wt}return Pt?-tn:tn};BN.prototype.modn=function modn(Wt){return this.modrn(Wt)};BN.prototype.idivn=function idivn(Wt){var Pt=Wt<0;if(Pt)Wt=-Wt;assert(Wt<=67108863);var en=0;for(var tn=this.length-1;tn>=0;tn--){var nn=(this.words[tn]|0)+en*67108864;this.words[tn]=nn/Wt|0;en=nn%Wt}this._strip();return Pt?this.ineg():this};BN.prototype.divn=function divn(Wt){return this.clone().idivn(Wt)};BN.prototype.egcd=function egcd(Wt){assert(Wt.negative===0);assert(!Wt.isZero());var Pt=this;var en=Wt.clone();if(Pt.negative!==0){Pt=Pt.umod(Wt)}else{Pt=Pt.clone()}var tn=new BN(1);var nn=new BN(0);var an=new BN(0);var rn=new BN(1);var In=0;while(Pt.isEven()&&en.isEven()){Pt.iushrn(1);en.iushrn(1);++In}var sn=en.clone();var on=Pt.clone();while(!Pt.isZero()){for(var cn=0,dn=1;(Pt.words[0]&dn)===0&&cn<26;++cn,dn<<=1);if(cn>0){Pt.iushrn(cn);while(cn-- >0){if(tn.isOdd()||nn.isOdd()){tn.iadd(sn);nn.isub(on)}tn.iushrn(1);nn.iushrn(1)}}for(var un=0,pn=1;(en.words[0]&pn)===0&&un<26;++un,pn<<=1);if(un>0){en.iushrn(un);while(un-- >0){if(an.isOdd()||rn.isOdd()){an.iadd(sn);rn.isub(on)}an.iushrn(1);rn.iushrn(1)}}if(Pt.cmp(en)>=0){Pt.isub(en);tn.isub(an);nn.isub(rn)}else{en.isub(Pt);an.isub(tn);rn.isub(nn)}}return{a:an,b:rn,gcd:en.iushln(In)}};BN.prototype._invmp=function _invmp(Wt){assert(Wt.negative===0);assert(!Wt.isZero());var Pt=this;var en=Wt.clone();if(Pt.negative!==0){Pt=Pt.umod(Wt)}else{Pt=Pt.clone()}var tn=new BN(1);var nn=new BN(0);var an=en.clone();while(Pt.cmpn(1)>0&&en.cmpn(1)>0){for(var rn=0,In=1;(Pt.words[0]&In)===0&&rn<26;++rn,In<<=1);if(rn>0){Pt.iushrn(rn);while(rn-- >0){if(tn.isOdd()){tn.iadd(an)}tn.iushrn(1)}}for(var sn=0,on=1;(en.words[0]&on)===0&&sn<26;++sn,on<<=1);if(sn>0){en.iushrn(sn);while(sn-- >0){if(nn.isOdd()){nn.iadd(an)}nn.iushrn(1)}}if(Pt.cmp(en)>=0){Pt.isub(en);tn.isub(nn)}else{en.isub(Pt);nn.isub(tn)}}var cn;if(Pt.cmpn(1)===0){cn=tn}else{cn=nn}if(cn.cmpn(0)<0){cn.iadd(Wt)}return cn};BN.prototype.gcd=function gcd(Wt){if(this.isZero())return Wt.abs();if(Wt.isZero())return this.abs();var Pt=this.clone();var en=Wt.clone();Pt.negative=0;en.negative=0;for(var tn=0;Pt.isEven()&&en.isEven();tn++){Pt.iushrn(1);en.iushrn(1)}do{while(Pt.isEven()){Pt.iushrn(1)}while(en.isEven()){en.iushrn(1)}var nn=Pt.cmp(en);if(nn<0){var an=Pt;Pt=en;en=an}else if(nn===0||en.cmpn(1)===0){break}Pt.isub(en)}while(true);return en.iushln(tn)};BN.prototype.invm=function invm(Wt){return this.egcd(Wt).a.umod(Wt)};BN.prototype.isEven=function isEven(){return(this.words[0]&1)===0};BN.prototype.isOdd=function isOdd(){return(this.words[0]&1)===1};BN.prototype.andln=function andln(Wt){return this.words[0]&Wt};BN.prototype.bincn=function bincn(Wt){assert(typeof Wt==="number");var Pt=Wt%26;var en=(Wt-Pt)/26;var tn=1<>>26;rn&=67108863;this.words[an]=rn}if(nn!==0){this.words[an]=nn;this.length++}return this};BN.prototype.isZero=function isZero(){return this.length===1&&this.words[0]===0};BN.prototype.cmpn=function cmpn(Wt){var Pt=Wt<0;if(this.negative!==0&&!Pt)return-1;if(this.negative===0&&Pt)return 1;this._strip();var en;if(this.length>1){en=1}else{if(Pt){Wt=-Wt}assert(Wt<=67108863,"Number is too big");var tn=this.words[0]|0;en=tn===Wt?0:tnWt.length)return 1;if(this.length=0;en--){var tn=this.words[en]|0;var nn=Wt.words[en]|0;if(tn===nn)continue;if(tnnn){Pt=1}break}return Pt};BN.prototype.gtn=function gtn(Wt){return this.cmpn(Wt)===1};BN.prototype.gt=function gt(Wt){return this.cmp(Wt)===1};BN.prototype.gten=function gten(Wt){return this.cmpn(Wt)>=0};BN.prototype.gte=function gte(Wt){return this.cmp(Wt)>=0};BN.prototype.ltn=function ltn(Wt){return this.cmpn(Wt)===-1};BN.prototype.lt=function lt(Wt){return this.cmp(Wt)===-1};BN.prototype.lten=function lten(Wt){return this.cmpn(Wt)<=0};BN.prototype.lte=function lte(Wt){return this.cmp(Wt)<=0};BN.prototype.eqn=function eqn(Wt){return this.cmpn(Wt)===0};BN.prototype.eq=function eq(Wt){return this.cmp(Wt)===0};BN.red=function red(Wt){return new Red(Wt)};BN.prototype.toRed=function toRed(Wt){assert(!this.red,"Already a number in reduction context");assert(this.negative===0,"red works only with positives");return Wt.convertTo(this)._forceRed(Wt)};BN.prototype.fromRed=function fromRed(){assert(this.red,"fromRed works only with numbers in reduction context");return this.red.convertFrom(this)};BN.prototype._forceRed=function _forceRed(Wt){this.red=Wt;return this};BN.prototype.forceRed=function forceRed(Wt){assert(!this.red,"Already a number in reduction context");return this._forceRed(Wt)};BN.prototype.redAdd=function redAdd(Wt){assert(this.red,"redAdd works only with red numbers");return this.red.add(this,Wt)};BN.prototype.redIAdd=function redIAdd(Wt){assert(this.red,"redIAdd works only with red numbers");return this.red.iadd(this,Wt)};BN.prototype.redSub=function redSub(Wt){assert(this.red,"redSub works only with red numbers");return this.red.sub(this,Wt)};BN.prototype.redISub=function redISub(Wt){assert(this.red,"redISub works only with red numbers");return this.red.isub(this,Wt)};BN.prototype.redShl=function redShl(Wt){assert(this.red,"redShl works only with red numbers");return this.red.shl(this,Wt)};BN.prototype.redMul=function redMul(Wt){assert(this.red,"redMul works only with red numbers");this.red._verify2(this,Wt);return this.red.mul(this,Wt)};BN.prototype.redIMul=function redIMul(Wt){assert(this.red,"redMul works only with red numbers");this.red._verify2(this,Wt);return this.red.imul(this,Wt)};BN.prototype.redSqr=function redSqr(){assert(this.red,"redSqr works only with red numbers");this.red._verify1(this);return this.red.sqr(this)};BN.prototype.redISqr=function redISqr(){assert(this.red,"redISqr works only with red numbers");this.red._verify1(this);return this.red.isqr(this)};BN.prototype.redSqrt=function redSqrt(){assert(this.red,"redSqrt works only with red numbers");this.red._verify1(this);return this.red.sqrt(this)};BN.prototype.redInvm=function redInvm(){assert(this.red,"redInvm works only with red numbers");this.red._verify1(this);return this.red.invm(this)};BN.prototype.redNeg=function redNeg(){assert(this.red,"redNeg works only with red numbers");this.red._verify1(this);return this.red.neg(this)};BN.prototype.redPow=function redPow(Wt){assert(this.red&&!Wt.red,"redPow(normalNum)");this.red._verify1(this);return this.red.pow(this,Wt)};var on={k256:null,p224:null,p192:null,p25519:null};function MPrime(Wt,Pt){this.name=Wt;this.p=new BN(Pt,16);this.n=this.p.bitLength();this.k=new BN(1).iushln(this.n).isub(this.p);this.tmp=this._tmp()}MPrime.prototype._tmp=function _tmp(){var Wt=new BN(null);Wt.words=new Array(Math.ceil(this.n/13));return Wt};MPrime.prototype.ireduce=function ireduce(Wt){var Pt=Wt;var en;do{this.split(Pt,this.tmp);Pt=this.imulK(Pt);Pt=Pt.iadd(this.tmp);en=Pt.bitLength()}while(en>this.n);var tn=en0){Pt.isub(this.p)}else{if(Pt.strip!==undefined){Pt.strip()}else{Pt._strip()}}return Pt};MPrime.prototype.split=function split(Wt,Pt){Wt.iushrn(this.n,0,Pt)};MPrime.prototype.imulK=function imulK(Wt){return Wt.imul(this.k)};function K256(){MPrime.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}inherits(K256,MPrime);K256.prototype.split=function split(Wt,Pt){var en=4194303;var tn=Math.min(Wt.length,9);for(var nn=0;nn>>22;an=rn}an>>>=22;Wt.words[nn-10]=an;if(an===0&&Wt.length>10){Wt.length-=10}else{Wt.length-=9}};K256.prototype.imulK=function imulK(Wt){Wt.words[Wt.length]=0;Wt.words[Wt.length+1]=0;Wt.length+=2;var Pt=0;for(var en=0;en>>=26;Wt.words[en]=nn;Pt=tn}if(Pt!==0){Wt.words[Wt.length++]=Pt}return Wt};BN._prime=function prime(Wt){if(on[Wt])return on[Wt];var prime;if(Wt==="k256"){prime=new K256}else if(Wt==="p224"){prime=new P224}else if(Wt==="p192"){prime=new P192}else if(Wt==="p25519"){prime=new P25519}else{throw new Error("Unknown prime "+Wt)}on[Wt]=prime;return prime};function Red(Wt){if(typeof Wt==="string"){var Pt=BN._prime(Wt);this.m=Pt.p;this.prime=Pt}else{assert(Wt.gtn(1),"modulus must be greater than 1");this.m=Wt;this.prime=null}}Red.prototype._verify1=function _verify1(Wt){assert(Wt.negative===0,"red works only with positives");assert(Wt.red,"red works only with red numbers")};Red.prototype._verify2=function _verify2(Wt,Pt){assert((Wt.negative|Pt.negative)===0,"red works only with positives");assert(Wt.red&&Wt.red===Pt.red,"red works only with red numbers")};Red.prototype.imod=function imod(Wt){if(this.prime)return this.prime.ireduce(Wt)._forceRed(this);move(Wt,Wt.umod(this.m)._forceRed(this));return Wt};Red.prototype.neg=function neg(Wt){if(Wt.isZero()){return Wt.clone()}return this.m.sub(Wt)._forceRed(this)};Red.prototype.add=function add(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.add(Pt);if(en.cmp(this.m)>=0){en.isub(this.m)}return en._forceRed(this)};Red.prototype.iadd=function iadd(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.iadd(Pt);if(en.cmp(this.m)>=0){en.isub(this.m)}return en};Red.prototype.sub=function sub(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.sub(Pt);if(en.cmpn(0)<0){en.iadd(this.m)}return en._forceRed(this)};Red.prototype.isub=function isub(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.isub(Pt);if(en.cmpn(0)<0){en.iadd(this.m)}return en};Red.prototype.shl=function shl(Wt,Pt){this._verify1(Wt);return this.imod(Wt.ushln(Pt))};Red.prototype.imul=function imul(Wt,Pt){this._verify2(Wt,Pt);return this.imod(Wt.imul(Pt))};Red.prototype.mul=function mul(Wt,Pt){this._verify2(Wt,Pt);return this.imod(Wt.mul(Pt))};Red.prototype.isqr=function isqr(Wt){return this.imul(Wt,Wt.clone())};Red.prototype.sqr=function sqr(Wt){return this.mul(Wt,Wt)};Red.prototype.sqrt=function sqrt(Wt){if(Wt.isZero())return Wt.clone();var Pt=this.m.andln(3);assert(Pt%2===1);if(Pt===3){var en=this.m.add(new BN(1)).iushrn(2);return this.pow(Wt,en)}var tn=this.m.subn(1);var nn=0;while(!tn.isZero()&&tn.andln(1)===0){nn++;tn.iushrn(1)}assert(!tn.isZero());var an=new BN(1).toRed(this);var rn=an.redNeg();var In=this.m.subn(1).iushrn(1);var sn=this.m.bitLength();sn=new BN(2*sn*sn).toRed(this);while(this.pow(sn,In).cmp(rn)!==0){sn.redIAdd(rn)}var on=this.pow(sn,tn);var cn=this.pow(Wt,tn.addn(1).iushrn(1));var dn=this.pow(Wt,tn);var un=nn;while(dn.cmp(an)!==0){var pn=dn;for(var mn=0;pn.cmp(an)!==0;mn++){pn=pn.redSqr()}assert(mn=0;nn--){var on=Pt.words[nn];for(var cn=sn-1;cn>=0;cn--){var dn=on>>cn&1;if(an!==tn[0]){an=this.sqr(an)}if(dn===0&&rn===0){In=0;continue}rn<<=1;rn|=dn;In++;if(In!==en&&(nn!==0||cn!==0))continue;an=this.mul(an,tn[rn]);In=0;rn=0}sn=26}return an};Red.prototype.convertTo=function convertTo(Wt){var Pt=Wt.umod(this.m);return Pt===Wt?Pt.clone():Pt};Red.prototype.convertFrom=function convertFrom(Wt){var Pt=Wt.clone();Pt.red=null;return Pt};BN.mont=function mont(Wt){return new Mont(Wt)};function Mont(Wt){Red.call(this,Wt);this.shift=this.m.bitLength();if(this.shift%26!==0){this.shift+=26-this.shift%26}this.r=new BN(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)}inherits(Mont,Red);Mont.prototype.convertTo=function convertTo(Wt){return this.imod(Wt.ushln(this.shift))};Mont.prototype.convertFrom=function convertFrom(Wt){var Pt=this.imod(Wt.mul(this.rinv));Pt.red=null;return Pt};Mont.prototype.imul=function imul(Wt,Pt){if(Wt.isZero()||Pt.isZero()){Wt.words[0]=0;Wt.length=1;return Wt}var en=Wt.imul(Pt);var tn=en.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);var nn=en.isub(tn).iushrn(this.shift);var an=nn;if(nn.cmp(this.m)>=0){an=nn.isub(this.m)}else if(nn.cmpn(0)<0){an=nn.iadd(this.m)}return an._forceRed(this)};Mont.prototype.mul=function mul(Wt,Pt){if(Wt.isZero()||Pt.isZero())return new BN(0)._forceRed(this);var en=Wt.mul(Pt);var tn=en.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);var nn=en.isub(tn).iushrn(this.shift);var an=nn;if(nn.cmp(this.m)>=0){an=nn.isub(this.m)}else if(nn.cmpn(0)<0){an=nn.iadd(this.m)}return an._forceRed(this)};Mont.prototype.invm=function invm(Wt){var Pt=this.imod(Wt._invmp(this.m).mul(this.r2));return Pt._forceRed(this)}})(false||Wt,this)},63251:function(Wt){(function(Pt,en){true?Wt.exports=en():0})(this,(function(){"use strict";var Wt=typeof globalThis!=="undefined"?globalThis:typeof window!=="undefined"?window:typeof global!=="undefined"?global:typeof self!=="undefined"?self:{};function getCjsExportFromNamespace(Wt){return Wt&&Wt["default"]||Wt}var load=function(Wt,Pt,en={}){var tn,nn,an;for(tn in Pt){an=Pt[tn];en[tn]=(nn=Wt[tn])!=null?nn:an}return en};var overwrite=function(Wt,Pt,en={}){var tn,nn;for(tn in Wt){nn=Wt[tn];if(Pt[tn]!==void 0){en[tn]=nn}}return en};var Pt={load:load,overwrite:overwrite};var en;en=class DLList{constructor(Wt,Pt){this.incr=Wt;this.decr=Pt;this._first=null;this._last=null;this.length=0}push(Wt){var Pt;this.length++;if(typeof this.incr==="function"){this.incr()}Pt={value:Wt,prev:this._last,next:null};if(this._last!=null){this._last.next=Pt;this._last=Pt}else{this._first=this._last=Pt}return void 0}shift(){var Wt;if(this._first==null){return}else{this.length--;if(typeof this.decr==="function"){this.decr()}}Wt=this._first.value;if((this._first=this._first.next)!=null){this._first.prev=null}else{this._last=null}return Wt}first(){if(this._first!=null){return this._first.value}}getArray(){var Wt,Pt,en;Wt=this._first;en=[];while(Wt!=null){en.push((Pt=Wt,Wt=Wt.next,Pt.value))}return en}forEachShift(Wt){var Pt;Pt=this.shift();while(Pt!=null){Wt(Pt),Pt=this.shift()}return void 0}debug(){var Wt,Pt,en,tn,nn;Wt=this._first;nn=[];while(Wt!=null){nn.push((Pt=Wt,Wt=Wt.next,{value:Pt.value,prev:(en=Pt.prev)!=null?en.value:void 0,next:(tn=Pt.next)!=null?tn.value:void 0}))}return nn}};var tn=en;var nn;nn=class Events{constructor(Wt){this.instance=Wt;this._events={};if(this.instance.on!=null||this.instance.once!=null||this.instance.removeAllListeners!=null){throw new Error("An Emitter already exists for this object")}this.instance.on=(Wt,Pt)=>this._addListener(Wt,"many",Pt);this.instance.once=(Wt,Pt)=>this._addListener(Wt,"once",Pt);this.instance.removeAllListeners=(Wt=null)=>{if(Wt!=null){return delete this._events[Wt]}else{return this._events={}}}}_addListener(Wt,Pt,en){var tn;if((tn=this._events)[Wt]==null){tn[Wt]=[]}this._events[Wt].push({cb:en,status:Pt});return this.instance}listenerCount(Wt){if(this._events[Wt]!=null){return this._events[Wt].length}else{return 0}}async trigger(Wt,...Pt){var en,tn;try{if(Wt!=="debug"){this.trigger("debug",`Event triggered: ${Wt}`,Pt)}if(this._events[Wt]==null){return}this._events[Wt]=this._events[Wt].filter((function(Wt){return Wt.status!=="none"}));tn=this._events[Wt].map((async Wt=>{var en,tn;if(Wt.status==="none"){return}if(Wt.status==="once"){Wt.status="none"}try{tn=typeof Wt.cb==="function"?Wt.cb(...Pt):void 0;if(typeof(tn!=null?tn.then:void 0)==="function"){return await tn}else{return tn}}catch(Wt){en=Wt;{this.trigger("error",en)}return null}}));return(await Promise.all(tn)).find((function(Wt){return Wt!=null}))}catch(Wt){en=Wt;{this.trigger("error",en)}return null}}};var an=nn;var rn,In,sn;rn=tn;In=an;sn=class Queues{constructor(Wt){var Pt;this.Events=new In(this);this._length=0;this._lists=function(){var en,tn,nn;nn=[];for(Pt=en=1,tn=Wt;1<=tn?en<=tn:en>=tn;Pt=1<=tn?++en:--en){nn.push(new rn((()=>this.incr()),(()=>this.decr())))}return nn}.call(this)}incr(){if(this._length++===0){return this.Events.trigger("leftzero")}}decr(){if(--this._length===0){return this.Events.trigger("zero")}}push(Wt){return this._lists[Wt.options.priority].push(Wt)}queued(Wt){if(Wt!=null){return this._lists[Wt].length}else{return this._length}}shiftAll(Wt){return this._lists.forEach((function(Pt){return Pt.forEachShift(Wt)}))}getFirst(Wt=this._lists){var Pt,en,tn;for(Pt=0,en=Wt.length;Pt0){return tn}}return[]}shiftLastFrom(Wt){return this.getFirst(this._lists.slice(Wt).reverse()).shift()}};var on=sn;var cn;cn=class BottleneckError extends Error{};var dn=cn;var un,pn,mn,bn,Gn;bn=10;pn=5;Gn=Pt;un=dn;mn=class Job{constructor(Wt,Pt,en,tn,nn,an,rn,In){this.task=Wt;this.args=Pt;this.rejectOnDrop=nn;this.Events=an;this._states=rn;this.Promise=In;this.options=Gn.load(en,tn);this.options.priority=this._sanitizePriority(this.options.priority);if(this.options.id===tn.id){this.options.id=`${this.options.id}-${this._randomIndex()}`}this.promise=new this.Promise(((Wt,Pt)=>{this._resolve=Wt;this._reject=Pt}));this.retryCount=0}_sanitizePriority(Wt){var Pt;Pt=~~Wt!==Wt?pn:Wt;if(Pt<0){return 0}else if(Pt>bn-1){return bn-1}else{return Pt}}_randomIndex(){return Math.random().toString(36).slice(2)}doDrop({error:Wt,message:Pt="This job has been dropped by Bottleneck"}={}){if(this._states.remove(this.options.id)){if(this.rejectOnDrop){this._reject(Wt!=null?Wt:new un(Pt))}this.Events.trigger("dropped",{args:this.args,options:this.options,task:this.task,promise:this.promise});return true}else{return false}}_assertStatus(Wt){var Pt;Pt=this._states.jobStatus(this.options.id);if(!(Pt===Wt||Wt==="DONE"&&Pt===null)){throw new un(`Invalid job status ${Pt}, expected ${Wt}. Please open an issue at https://github.com/SGrondin/bottleneck/issues`)}}doReceive(){this._states.start(this.options.id);return this.Events.trigger("received",{args:this.args,options:this.options})}doQueue(Wt,Pt){this._assertStatus("RECEIVED");this._states.next(this.options.id);return this.Events.trigger("queued",{args:this.args,options:this.options,reachedHWM:Wt,blocked:Pt})}doRun(){if(this.retryCount===0){this._assertStatus("QUEUED");this._states.next(this.options.id)}else{this._assertStatus("EXECUTING")}return this.Events.trigger("scheduled",{args:this.args,options:this.options})}async doExecute(Wt,Pt,en,tn){var nn,an,rn;if(this.retryCount===0){this._assertStatus("RUNNING");this._states.next(this.options.id)}else{this._assertStatus("EXECUTING")}an={args:this.args,options:this.options,retryCount:this.retryCount};this.Events.trigger("executing",an);try{rn=await(Wt!=null?Wt.schedule(this.options,this.task,...this.args):this.task(...this.args));if(Pt()){this.doDone(an);await tn(this.options,an);this._assertStatus("DONE");return this._resolve(rn)}}catch(Wt){nn=Wt;return this._onFailure(nn,an,Pt,en,tn)}}doExpire(Wt,Pt,en){var tn,nn;if(this._states.jobStatus(this.options.id==="RUNNING")){this._states.next(this.options.id)}this._assertStatus("EXECUTING");nn={args:this.args,options:this.options,retryCount:this.retryCount};tn=new un(`This job timed out after ${this.options.expiration} ms.`);return this._onFailure(tn,nn,Wt,Pt,en)}async _onFailure(Wt,Pt,en,tn,nn){var an,rn;if(en()){an=await this.Events.trigger("failed",Wt,Pt);if(an!=null){rn=~~an;this.Events.trigger("retry",`Retrying ${this.options.id} after ${rn} ms`,Pt);this.retryCount++;return tn(rn)}else{this.doDone(Pt);await nn(this.options,Pt);this._assertStatus("DONE");return this._reject(Wt)}}}doDone(Wt){this._assertStatus("EXECUTING");this._states.next(this.options.id);return this.Events.trigger("done",Wt)}};var hn=mn;var Zn,An,Wn;Wn=Pt;Zn=dn;An=class LocalDatastore{constructor(Wt,Pt,en){this.instance=Wt;this.storeOptions=Pt;this.clientId=this.instance._randomIndex();Wn.load(en,en,this);this._nextRequest=this._lastReservoirRefresh=this._lastReservoirIncrease=Date.now();this._running=0;this._done=0;this._unblockTime=0;this.ready=this.Promise.resolve();this.clients={};this._startHeartbeat()}_startHeartbeat(){var Wt;if(this.heartbeat==null&&(this.storeOptions.reservoirRefreshInterval!=null&&this.storeOptions.reservoirRefreshAmount!=null||this.storeOptions.reservoirIncreaseInterval!=null&&this.storeOptions.reservoirIncreaseAmount!=null)){return typeof(Wt=this.heartbeat=setInterval((()=>{var Wt,Pt,en,tn,nn;tn=Date.now();if(this.storeOptions.reservoirRefreshInterval!=null&&tn>=this._lastReservoirRefresh+this.storeOptions.reservoirRefreshInterval){this._lastReservoirRefresh=tn;this.storeOptions.reservoir=this.storeOptions.reservoirRefreshAmount;this.instance._drainAll(this.computeCapacity())}if(this.storeOptions.reservoirIncreaseInterval!=null&&tn>=this._lastReservoirIncrease+this.storeOptions.reservoirIncreaseInterval){({reservoirIncreaseAmount:Wt,reservoirIncreaseMaximum:en,reservoir:nn}=this.storeOptions);this._lastReservoirIncrease=tn;Pt=en!=null?Math.min(Wt,en-nn):Wt;if(Pt>0){this.storeOptions.reservoir+=Pt;return this.instance._drainAll(this.computeCapacity())}}}),this.heartbeatInterval)).unref==="function"?Wt.unref():void 0}else{return clearInterval(this.heartbeat)}}async __publish__(Wt){await this.yieldLoop();return this.instance.Events.trigger("message",Wt.toString())}async __disconnect__(Wt){await this.yieldLoop();clearInterval(this.heartbeat);return this.Promise.resolve()}yieldLoop(Wt=0){return new this.Promise((function(Pt,en){return setTimeout(Pt,Wt)}))}computePenalty(){var Wt;return(Wt=this.storeOptions.penalty)!=null?Wt:15*this.storeOptions.minTime||5e3}async __updateSettings__(Wt){await this.yieldLoop();Wn.overwrite(Wt,Wt,this.storeOptions);this._startHeartbeat();this.instance._drainAll(this.computeCapacity());return true}async __running__(){await this.yieldLoop();return this._running}async __queued__(){await this.yieldLoop();return this.instance.queued()}async __done__(){await this.yieldLoop();return this._done}async __groupCheck__(Wt){await this.yieldLoop();return this._nextRequest+this.timeout=Wt}check(Wt,Pt){return this.conditionsCheck(Wt)&&this._nextRequest-Pt<=0}async __check__(Wt){var Pt;await this.yieldLoop();Pt=Date.now();return this.check(Wt,Pt)}async __register__(Wt,Pt,en){var tn,nn;await this.yieldLoop();tn=Date.now();if(this.conditionsCheck(Pt)){this._running+=Pt;if(this.storeOptions.reservoir!=null){this.storeOptions.reservoir-=Pt}nn=Math.max(this._nextRequest-tn,0);this._nextRequest=tn+nn+this.storeOptions.minTime;return{success:true,wait:nn,reservoir:this.storeOptions.reservoir}}else{return{success:false}}}strategyIsBlock(){return this.storeOptions.strategy===3}async __submit__(Wt,Pt){var en,tn,nn;await this.yieldLoop();if(this.storeOptions.maxConcurrent!=null&&Pt>this.storeOptions.maxConcurrent){throw new Zn(`Impossible to add a job having a weight of ${Pt} to a limiter having a maxConcurrent setting of ${this.storeOptions.maxConcurrent}`)}tn=Date.now();nn=this.storeOptions.highWater!=null&&Wt===this.storeOptions.highWater&&!this.check(Pt,tn);en=this.strategyIsBlock()&&(nn||this.isBlocked(tn));if(en){this._unblockTime=tn+this.computePenalty();this._nextRequest=this._unblockTime+this.storeOptions.minTime;this.instance._dropAllQueued()}return{reachedHWM:nn,blocked:en,strategy:this.storeOptions.strategy}}async __free__(Wt,Pt){await this.yieldLoop();this._running-=Pt;this._done+=Pt;this.instance._drainAll(this.computeCapacity());return{running:this._running}}};var Nn=An;var gn,yn;gn=dn;yn=class States{constructor(Wt){this.status=Wt;this._jobs={};this.counts=this.status.map((function(){return 0}))}next(Wt){var Pt,en;Pt=this._jobs[Wt];en=Pt+1;if(Pt!=null&&en{Wt[this.status[en]]=Pt;return Wt}),{})}};var vn=yn;var Yn,En;Yn=tn;En=class Sync{constructor(Wt,Pt){this.schedule=this.schedule.bind(this);this.name=Wt;this.Promise=Pt;this._running=0;this._queue=new Yn}isEmpty(){return this._queue.length===0}async _tryToRun(){var Wt,Pt,en,tn,nn,an,rn;if(this._running<1&&this._queue.length>0){this._running++;({task:rn,args:Wt,resolve:nn,reject:tn}=this._queue.shift());Pt=await async function(){try{an=await rn(...Wt);return function(){return nn(an)}}catch(Wt){en=Wt;return function(){return tn(en)}}}();this._running--;this._tryToRun();return Pt()}}schedule(Wt,...Pt){var en,tn,nn;nn=tn=null;en=new this.Promise((function(Wt,Pt){nn=Wt;return tn=Pt}));this._queue.push({task:Wt,args:Pt,resolve:nn,reject:tn});this._tryToRun();return en}};var Vn=En;var Rn="2.19.5";var wn={version:Rn};var Fn=Object.freeze({version:Rn,default:wn});var require$$2=()=>console.log("You must import the full version of Bottleneck in order to use this feature.");var require$$3=()=>console.log("You must import the full version of Bottleneck in order to use this feature.");var require$$4=()=>console.log("You must import the full version of Bottleneck in order to use this feature.");var Qn,fn,Hn,Cn,Xn,kn;kn=Pt;Qn=an;Cn=require$$2;Hn=require$$3;Xn=require$$4;fn=function(){class Group{constructor(Wt={}){this.deleteKey=this.deleteKey.bind(this);this.limiterOptions=Wt;kn.load(this.limiterOptions,this.defaults,this);this.Events=new Qn(this);this.instances={};this.Bottleneck=tl;this._startAutoCleanup();this.sharedConnection=this.connection!=null;if(this.connection==null){if(this.limiterOptions.datastore==="redis"){this.connection=new Cn(Object.assign({},this.limiterOptions,{Events:this.Events}))}else if(this.limiterOptions.datastore==="ioredis"){this.connection=new Hn(Object.assign({},this.limiterOptions,{Events:this.Events}))}}}key(Wt=""){var Pt;return(Pt=this.instances[Wt])!=null?Pt:(()=>{var Pt;Pt=this.instances[Wt]=new this.Bottleneck(Object.assign(this.limiterOptions,{id:`${this.id}-${Wt}`,timeout:this.timeout,connection:this.connection}));this.Events.trigger("created",Pt,Wt);return Pt})()}async deleteKey(Wt=""){var Pt,en;en=this.instances[Wt];if(this.connection){Pt=await this.connection.__runCommand__(["del",...Xn.allKeys(`${this.id}-${Wt}`)])}if(en!=null){delete this.instances[Wt];await en.disconnect()}return en!=null||Pt>0}limiters(){var Wt,Pt,en,tn;Pt=this.instances;en=[];for(Wt in Pt){tn=Pt[Wt];en.push({key:Wt,limiter:tn})}return en}keys(){return Object.keys(this.instances)}async clusterKeys(){var Wt,Pt,en,tn,nn,an,rn,In,sn;if(this.connection==null){return this.Promise.resolve(this.keys())}an=[];Wt=null;sn=`b_${this.id}-`.length;Pt="_settings".length;while(Wt!==0){[In,en]=await this.connection.__runCommand__(["scan",Wt!=null?Wt:0,"match",`b_${this.id}-*_settings`,"count",1e4]);Wt=~~In;for(tn=0,rn=en.length;tn{var Wt,Pt,en,tn,nn,an;nn=Date.now();en=this.instances;tn=[];for(Pt in en){an=en[Pt];try{if(await an._store.__groupCheck__(nn)){tn.push(this.deleteKey(Pt))}else{tn.push(void 0)}}catch(Pt){Wt=Pt;tn.push(an.Events.trigger("error",Wt))}}return tn}),this.timeout/2)).unref==="function"?Wt.unref():void 0}updateSettings(Wt={}){kn.overwrite(Wt,this.defaults,this);kn.overwrite(Wt,Wt,this.limiterOptions);if(Wt.timeout!=null){return this._startAutoCleanup()}}disconnect(Wt=true){var Pt;if(!this.sharedConnection){return(Pt=this.connection)!=null?Pt.disconnect(Wt):void 0}}}Group.prototype.defaults={timeout:1e3*60*5,connection:null,Promise:Promise,id:"group-key"};return Group}.call(Wt);var Jn=fn;var Ln,Bn,xn;xn=Pt;Bn=an;Ln=function(){class Batcher{constructor(Wt={}){this.options=Wt;xn.load(this.options,this.defaults,this);this.Events=new Bn(this);this._arr=[];this._resetPromise();this._lastFlush=Date.now()}_resetPromise(){return this._promise=new this.Promise(((Wt,Pt)=>this._resolve=Wt))}_flush(){clearTimeout(this._timeout);this._lastFlush=Date.now();this._resolve();this.Events.trigger("batch",this._arr);this._arr=[];return this._resetPromise()}add(Wt){var Pt;this._arr.push(Wt);Pt=this._promise;if(this._arr.length===this.maxSize){this._flush()}else if(this.maxTime!=null&&this._arr.length===1){this._timeout=setTimeout((()=>this._flush()),this.maxTime)}return Pt}}Batcher.prototype.defaults={maxTime:null,maxSize:null,Promise:Promise};return Batcher}.call(Wt);var On=Ln;var require$$4$1=()=>console.log("You must import the full version of Bottleneck in order to use this feature.");var Tn=getCjsExportFromNamespace(Fn);var Un,Mn,zn,Sn,jn,Dn,_n,Kn,Pn,qn,$n,el=[].splice;Dn=10;Mn=5;$n=Pt;_n=on;Sn=hn;jn=Nn;Kn=require$$4$1;zn=an;Pn=vn;qn=Vn;Un=function(){class Bottleneck{constructor(Wt={},...Pt){var en,tn;this._addToQueue=this._addToQueue.bind(this);this._validateOptions(Wt,Pt);$n.load(Wt,this.instanceDefaults,this);this._queues=new _n(Dn);this._scheduled={};this._states=new Pn(["RECEIVED","QUEUED","RUNNING","EXECUTING"].concat(this.trackDoneStatus?["DONE"]:[]));this._limiter=null;this.Events=new zn(this);this._submitLock=new qn("submit",this.Promise);this._registerLock=new qn("register",this.Promise);tn=$n.load(Wt,this.storeDefaults,{});this._store=function(){if(this.datastore==="redis"||this.datastore==="ioredis"||this.connection!=null){en=$n.load(Wt,this.redisStoreDefaults,{});return new Kn(this,tn,en)}else if(this.datastore==="local"){en=$n.load(Wt,this.localStoreDefaults,{});return new jn(this,tn,en)}else{throw new Bottleneck.prototype.BottleneckError(`Invalid datastore type: ${this.datastore}`)}}.call(this);this._queues.on("leftzero",(()=>{var Wt;return(Wt=this._store.heartbeat)!=null?typeof Wt.ref==="function"?Wt.ref():void 0:void 0}));this._queues.on("zero",(()=>{var Wt;return(Wt=this._store.heartbeat)!=null?typeof Wt.unref==="function"?Wt.unref():void 0:void 0}))}_validateOptions(Wt,Pt){if(!(Wt!=null&&typeof Wt==="object"&&Pt.length===0)){throw new Bottleneck.prototype.BottleneckError("Bottleneck v2 takes a single object argument. Refer to https://github.com/SGrondin/bottleneck#upgrading-to-v2 if you're upgrading from Bottleneck v1.")}}ready(){return this._store.ready}clients(){return this._store.clients}channel(){return`b_${this.id}`}channel_client(){return`b_${this.id}_${this._store.clientId}`}publish(Wt){return this._store.__publish__(Wt)}disconnect(Wt=true){return this._store.__disconnect__(Wt)}chain(Wt){this._limiter=Wt;return this}queued(Wt){return this._queues.queued(Wt)}clusterQueued(){return this._store.__queued__()}empty(){return this.queued()===0&&this._submitLock.isEmpty()}running(){return this._store.__running__()}done(){return this._store.__done__()}jobStatus(Wt){return this._states.jobStatus(Wt)}jobs(Wt){return this._states.statusJobs(Wt)}counts(){return this._states.statusCounts()}_randomIndex(){return Math.random().toString(36).slice(2)}check(Wt=1){return this._store.__check__(Wt)}_clearGlobalState(Wt){if(this._scheduled[Wt]!=null){clearTimeout(this._scheduled[Wt].expiration);delete this._scheduled[Wt];return true}else{return false}}async _free(Wt,Pt,en,tn){var nn,an;try{({running:an}=await this._store.__free__(Wt,en.weight));this.Events.trigger("debug",`Freed ${en.id}`,tn);if(an===0&&this.empty()){return this.Events.trigger("idle")}}catch(Wt){nn=Wt;return this.Events.trigger("error",nn)}}_run(Wt,Pt,en){var tn,nn,an;Pt.doRun();tn=this._clearGlobalState.bind(this,Wt);an=this._run.bind(this,Wt,Pt);nn=this._free.bind(this,Wt,Pt);return this._scheduled[Wt]={timeout:setTimeout((()=>Pt.doExecute(this._limiter,tn,an,nn)),en),expiration:Pt.options.expiration!=null?setTimeout((function(){return Pt.doExpire(tn,an,nn)}),en+Pt.options.expiration):void 0,job:Pt}}_drainOne(Wt){return this._registerLock.schedule((()=>{var Pt,en,tn,nn,an;if(this.queued()===0){return this.Promise.resolve(null)}an=this._queues.getFirst();({options:nn,args:Pt}=tn=an.first());if(Wt!=null&&nn.weight>Wt){return this.Promise.resolve(null)}this.Events.trigger("debug",`Draining ${nn.id}`,{args:Pt,options:nn});en=this._randomIndex();return this._store.__register__(en,nn.weight,nn.expiration).then((({success:Wt,wait:rn,reservoir:In})=>{var sn;this.Events.trigger("debug",`Drained ${nn.id}`,{success:Wt,args:Pt,options:nn});if(Wt){an.shift();sn=this.empty();if(sn){this.Events.trigger("empty")}if(In===0){this.Events.trigger("depleted",sn)}this._run(en,tn,rn);return this.Promise.resolve(nn.weight)}else{return this.Promise.resolve(null)}}))}))}_drainAll(Wt,Pt=0){return this._drainOne(Wt).then((en=>{var tn;if(en!=null){tn=Wt!=null?Wt-en:Wt;return this._drainAll(tn,Pt+en)}else{return this.Promise.resolve(Pt)}})).catch((Wt=>this.Events.trigger("error",Wt)))}_dropAllQueued(Wt){return this._queues.shiftAll((function(Pt){return Pt.doDrop({message:Wt})}))}stop(Wt={}){var Pt,en;Wt=$n.load(Wt,this.stopDefaults);en=Wt=>{var Pt;Pt=()=>{var Pt;Pt=this._states.counts;return Pt[0]+Pt[1]+Pt[2]+Pt[3]===Wt};return new this.Promise(((Wt,en)=>{if(Pt()){return Wt()}else{return this.on("done",(()=>{if(Pt()){this.removeAllListeners("done");return Wt()}}))}}))};Pt=Wt.dropWaitingJobs?(this._run=function(Pt,en){return en.doDrop({message:Wt.dropErrorMessage})},this._drainOne=()=>this.Promise.resolve(null),this._registerLock.schedule((()=>this._submitLock.schedule((()=>{var Pt,tn,nn;tn=this._scheduled;for(Pt in tn){nn=tn[Pt];if(this.jobStatus(nn.job.options.id)==="RUNNING"){clearTimeout(nn.timeout);clearTimeout(nn.expiration);nn.job.doDrop({message:Wt.dropErrorMessage})}}this._dropAllQueued(Wt.dropErrorMessage);return en(0)}))))):this.schedule({priority:Dn-1,weight:0},(()=>en(1)));this._receive=function(Pt){return Pt._reject(new Bottleneck.prototype.BottleneckError(Wt.enqueueErrorMessage))};this.stop=()=>this.Promise.reject(new Bottleneck.prototype.BottleneckError("stop() has already been called"));return Pt}async _addToQueue(Wt){var Pt,en,tn,nn,an,rn,In;({args:Pt,options:nn}=Wt);try{({reachedHWM:an,blocked:en,strategy:In}=await this._store.__submit__(this.queued(),nn.weight))}catch(en){tn=en;this.Events.trigger("debug",`Could not queue ${nn.id}`,{args:Pt,options:nn,error:tn});Wt.doDrop({error:tn});return false}if(en){Wt.doDrop();return true}else if(an){rn=In===Bottleneck.prototype.strategy.LEAK?this._queues.shiftLastFrom(nn.priority):In===Bottleneck.prototype.strategy.OVERFLOW_PRIORITY?this._queues.shiftLastFrom(nn.priority+1):In===Bottleneck.prototype.strategy.OVERFLOW?Wt:void 0;if(rn!=null){rn.doDrop()}if(rn==null||In===Bottleneck.prototype.strategy.OVERFLOW){if(rn==null){Wt.doDrop()}return an}}Wt.doQueue(an,en);this._queues.push(Wt);await this._drainAll();return an}_receive(Wt){if(this._states.jobStatus(Wt.options.id)!=null){Wt._reject(new Bottleneck.prototype.BottleneckError(`A job with the same id already exists (id=${Wt.options.id})`));return false}else{Wt.doReceive();return this._submitLock.schedule(this._addToQueue,Wt)}}submit(...Wt){var Pt,en,tn,nn,an,rn,In;if(typeof Wt[0]==="function"){an=Wt,[en,...Wt]=an,[Pt]=el.call(Wt,-1);nn=$n.load({},this.jobDefaults)}else{rn=Wt,[nn,en,...Wt]=rn,[Pt]=el.call(Wt,-1);nn=$n.load(nn,this.jobDefaults)}In=(...Wt)=>new this.Promise((function(Pt,tn){return en(...Wt,(function(...Wt){return(Wt[0]!=null?tn:Pt)(Wt)}))}));tn=new Sn(In,Wt,nn,this.jobDefaults,this.rejectOnDrop,this.Events,this._states,this.Promise);tn.promise.then((function(Wt){return typeof Pt==="function"?Pt(...Wt):void 0})).catch((function(Wt){if(Array.isArray(Wt)){return typeof Pt==="function"?Pt(...Wt):void 0}else{return typeof Pt==="function"?Pt(Wt):void 0}}));return this._receive(tn)}schedule(...Wt){var Pt,en,tn;if(typeof Wt[0]==="function"){[tn,...Wt]=Wt;en={}}else{[en,tn,...Wt]=Wt}Pt=new Sn(tn,Wt,en,this.jobDefaults,this.rejectOnDrop,this.Events,this._states,this.Promise);this._receive(Pt);return Pt.promise}wrap(Wt){var Pt,en;Pt=this.schedule.bind(this);en=function(...en){return Pt(Wt.bind(this),...en)};en.withOptions=function(en,...tn){return Pt(en,Wt,...tn)};return en}async updateSettings(Wt={}){await this._store.__updateSettings__($n.overwrite(Wt,this.storeDefaults));$n.overwrite(Wt,this.instanceDefaults,this);return this}currentReservoir(){return this._store.__currentReservoir__()}incrementReservoir(Wt=0){return this._store.__incrementReservoir__(Wt)}}Bottleneck.default=Bottleneck;Bottleneck.Events=zn;Bottleneck.version=Bottleneck.prototype.version=Tn.version;Bottleneck.strategy=Bottleneck.prototype.strategy={LEAK:1,OVERFLOW:2,OVERFLOW_PRIORITY:4,BLOCK:3};Bottleneck.BottleneckError=Bottleneck.prototype.BottleneckError=dn;Bottleneck.Group=Bottleneck.prototype.Group=Jn;Bottleneck.RedisConnection=Bottleneck.prototype.RedisConnection=require$$2;Bottleneck.IORedisConnection=Bottleneck.prototype.IORedisConnection=require$$3;Bottleneck.Batcher=Bottleneck.prototype.Batcher=On;Bottleneck.prototype.jobDefaults={priority:Mn,weight:1,expiration:null,id:""};Bottleneck.prototype.storeDefaults={maxConcurrent:null,minTime:0,highWater:null,strategy:Bottleneck.prototype.strategy.LEAK,penalty:null,reservoir:null,reservoirRefreshInterval:null,reservoirRefreshAmount:null,reservoirIncreaseInterval:null,reservoirIncreaseAmount:null,reservoirIncreaseMaximum:null};Bottleneck.prototype.localStoreDefaults={Promise:Promise,timeout:null,heartbeatInterval:250};Bottleneck.prototype.redisStoreDefaults={Promise:Promise,timeout:null,heartbeatInterval:5e3,clientTimeout:1e4,Redis:null,clientOptions:{},clusterNodes:null,clearDatastore:false,connection:null};Bottleneck.prototype.instanceDefaults={datastore:"local",connection:null,id:"",rejectOnDrop:true,trackDoneStatus:false,Promise:Promise};Bottleneck.prototype.stopDefaults={enqueueErrorMessage:"This limiter has been stopped and cannot accept new jobs.",dropWaitingJobs:true,dropErrorMessage:"This limiter has been stopped."};return Bottleneck}.call(Wt);var tl=Un;var nl=tl;return nl}))},49586:(Wt,Pt,en)=>{var tn;Wt.exports=function rand(Wt){if(!tn)tn=new Rand(null);return tn.generate(Wt)};function Rand(Wt){this.rand=Wt}Wt.exports.Rand=Rand;Rand.prototype.generate=function generate(Wt){return this._rand(Wt)};Rand.prototype._rand=function _rand(Wt){if(this.rand.getBytes)return this.rand.getBytes(Wt);var Pt=new Uint8Array(Wt);for(var en=0;en{var tn=en(39023);var nn=en(2203).Stream;var an=en(72710);Wt.exports=CombinedStream;function CombinedStream(){this.writable=false;this.readable=true;this.dataSize=0;this.maxDataSize=2*1024*1024;this.pauseStreams=true;this._released=false;this._streams=[];this._currentStream=null;this._insideLoop=false;this._pendingNext=false}tn.inherits(CombinedStream,nn);CombinedStream.create=function(Wt){var Pt=new this;Wt=Wt||{};for(var en in Wt){Pt[en]=Wt[en]}return Pt};CombinedStream.isStreamLike=function(Wt){return typeof Wt!=="function"&&typeof Wt!=="string"&&typeof Wt!=="boolean"&&typeof Wt!=="number"&&!Buffer.isBuffer(Wt)};CombinedStream.prototype.append=function(Wt){var Pt=CombinedStream.isStreamLike(Wt);if(Pt){if(!(Wt instanceof an)){var en=an.create(Wt,{maxDataSize:Infinity,pauseStream:this.pauseStreams});Wt.on("data",this._checkDataSize.bind(this));Wt=en}this._handleErrors(Wt);if(this.pauseStreams){Wt.pause()}}this._streams.push(Wt);return this};CombinedStream.prototype.pipe=function(Wt,Pt){nn.prototype.pipe.call(this,Wt,Pt);this.resume();return Wt};CombinedStream.prototype._getNext=function(){this._currentStream=null;if(this._insideLoop){this._pendingNext=true;return}this._insideLoop=true;try{do{this._pendingNext=false;this._realGetNext()}while(this._pendingNext)}finally{this._insideLoop=false}};CombinedStream.prototype._realGetNext=function(){var Wt=this._streams.shift();if(typeof Wt=="undefined"){this.end();return}if(typeof Wt!=="function"){this._pipeNext(Wt);return}var Pt=Wt;Pt(function(Wt){var Pt=CombinedStream.isStreamLike(Wt);if(Pt){Wt.on("data",this._checkDataSize.bind(this));this._handleErrors(Wt)}this._pipeNext(Wt)}.bind(this))};CombinedStream.prototype._pipeNext=function(Wt){this._currentStream=Wt;var Pt=CombinedStream.isStreamLike(Wt);if(Pt){Wt.on("end",this._getNext.bind(this));Wt.pipe(this,{end:false});return}var en=Wt;this.write(en);this._getNext()};CombinedStream.prototype._handleErrors=function(Wt){var Pt=this;Wt.on("error",(function(Wt){Pt._emitError(Wt)}))};CombinedStream.prototype.write=function(Wt){this.emit("data",Wt)};CombinedStream.prototype.pause=function(){if(!this.pauseStreams){return}if(this.pauseStreams&&this._currentStream&&typeof this._currentStream.pause=="function")this._currentStream.pause();this.emit("pause")};CombinedStream.prototype.resume=function(){if(!this._released){this._released=true;this.writable=true;this._getNext()}if(this.pauseStreams&&this._currentStream&&typeof this._currentStream.resume=="function")this._currentStream.resume();this.emit("resume")};CombinedStream.prototype.end=function(){this._reset();this.emit("end")};CombinedStream.prototype.destroy=function(){this._reset();this.emit("close")};CombinedStream.prototype._reset=function(){this.writable=false;this._streams=[];this._currentStream=null};CombinedStream.prototype._checkDataSize=function(){this._updateDataSize();if(this.dataSize<=this.maxDataSize){return}var Wt="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(new Error(Wt))};CombinedStream.prototype._updateDataSize=function(){this.dataSize=0;var Wt=this;this._streams.forEach((function(Pt){if(!Pt.dataSize){return}Wt.dataSize+=Pt.dataSize}));if(this._currentStream&&this._currentStream.dataSize){this.dataSize+=this._currentStream.dataSize}};CombinedStream.prototype._emitError=function(Wt){this._reset();this.emit("error",Wt)}},99712:(Wt,Pt,en)=>{"use strict";var tn=en(97900);var nn=en(65170);var an=en(28660);var rn=en(25985);var{dashedToCamelCase:In}=en(87800);var sn=en(93322);var on=function CSSStyleDeclaration(Wt){this._values={};this._importants={};this._length=0;this._onChange=Wt;this._setInProgress=false};on.prototype={constructor:on,getPropertyValue:function(Wt){if(!this._values.hasOwnProperty(Wt)){return""}return this._values[Wt].toString()},setProperty:function(Wt,Pt,en){if(Pt===undefined){return}if(Pt===null||Pt===""){this.removeProperty(Wt);return}var tn=Wt.indexOf("--")===0;if(tn){this._setProperty(Wt,Pt,en);return}var rn=Wt.toLowerCase();if(!nn.has(rn)&&!an.has(rn)){return}this[rn]=Pt;this._importants[rn]=en},_setProperty:function(Wt,Pt,en){if(Pt===undefined){return}if(Pt===null||Pt===""){this.removeProperty(Wt);return}var tn;if(this._onChange){tn=this.cssText}if(this._values[Wt]){var nn=Array.prototype.indexOf.call(this,Wt);if(nn<0){this[this._length]=Wt;this._length++}}else{this[this._length]=Wt;this._length++}this._values[Wt]=Pt;this._importants[Wt]=en;if(this._onChange&&this.cssText!==tn&&!this._setInProgress){this._onChange(this.cssText)}},removeProperty:function(Wt){if(!this._values.hasOwnProperty(Wt)){return""}var Pt=this._values[Wt];delete this._values[Wt];delete this._importants[Wt];var en=Array.prototype.indexOf.call(this,Wt);if(en<0){return Pt}Array.prototype.splice.call(this,en,1);if(this._onChange){this._onChange(this.cssText)}return Pt},getPropertyPriority:function(Wt){return this._importants[Wt]||""},getPropertyCSSValue:function(){return},getPropertyShorthand:function(){return},isPropertyImplicit:function(){return},item:function(Wt){Wt=parseInt(Wt,10);if(Wt<0||Wt>=this._length){return""}return this[Wt]}};Object.defineProperties(on.prototype,{cssText:{get:function(){var Wt=[];var Pt;var en;var tn;var nn;for(Pt=0;Pt{"use strict";var tn=en(73040);Wt.exports=new Set(["background-position-x","background-position-y","background-repeat-x","background-repeat-y","color-interpolation","color-profile","color-rendering","css-float","enable-background","fill","fill-opacity","fill-rule","glyph-orientation-horizontal","image-rendering","kerning","marker","marker-end","marker-mid","marker-offset","marker-start","marks","pointer-events","shape-rendering","size","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-line-through","text-line-through-color","text-line-through-mode","text-line-through-style","text-line-through-width","text-overline","text-overline-color","text-overline-mode","text-overline-style","text-overline-width","text-rendering","text-underline","text-underline-color","text-underline-mode","text-underline-style","text-underline-width","unicode-range","vector-effect"].concat(tn))},65170:Wt=>{"use strict";Wt.exports=new Set(["-webkit-line-clamp","accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","anchor-scope","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","azimuth","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","baseline-shift","baseline-source","block-ellipsis","block-size","bookmark-label","bookmark-level","bookmark-state","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-boundary","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","box-snap","break-after","break-before","break-inside","caption-side","caret","caret-color","caret-shape","clear","clip","clip-path","clip-rule","color","color-adjust","color-interpolation-filters","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","continue","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","elevation","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow-from","flow-into","font","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","font-width","footnote-display","footnote-policy","forced-color-adjust","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphenate-limit-last","hyphenate-limit-lines","hyphenate-limit-zone","hyphens","image-orientation","image-rendering","image-resolution","initial-letter","initial-letter-align","initial-letter-wrap","inline-size","inline-sizing","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","left","letter-spacing","lighting-color","line-break","line-clamp","line-fit-edge","line-grid","line-height","line-padding","line-snap","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker-side","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-lines","max-width","min-block-size","min-height","min-inline-size","min-intrinsic-sizing","min-width","mix-blend-mode","nav-down","nav-left","nav-right","nav-up","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-clip-margin-block","overflow-clip-margin-block-end","overflow-clip-margin-block-start","overflow-clip-margin-bottom","overflow-clip-margin-inline","overflow-clip-margin-inline-end","overflow-clip-margin-inline-start","overflow-clip-margin-left","overflow-clip-margin-right","overflow-clip-margin-top","overflow-inline","overflow-wrap","overflow-x","overflow-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","place-content","place-items","place-self","play-during","position","position-anchor","position-try","position-try-options","position-try-order","print-color-adjust","quotes","region-fragment","resize","rest","rest-after","rest-before","richness","right","rotate","row-gap","ruby-align","ruby-merge","ruby-overhang","ruby-position","running","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-inside","shape-margin","shape-outside","spatial-navigation-action","spatial-navigation-contain","spatial-navigation-function","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","text-align","text-align-all","text-align-last","text-autospace","text-box","text-box-edge","text-box-trim","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-box","text-decoration-skip-ink","text-decoration-skip-inset","text-decoration-skip-self","text-decoration-skip-spaces","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-skip","text-emphasis-style","text-group-align","text-indent","text-justify","text-orientation","text-overflow","text-shadow","text-spacing","text-spacing-trim","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-select","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","white-space-collapse","white-space-trim","widows","width","will-change","word-break","word-space-transform","word-spacing","word-wrap","wrap-after","wrap-before","wrap-flow","wrap-inside","wrap-through","writing-mode","z-index"])},73040:Wt=>{"use strict";Wt.exports=["animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","aspect-ratio","backface-visibility","background-clip","background-composite","background-origin","background-size","border-after","border-after-color","border-after-style","border-after-width","border-before","border-before-color","border-before-style","border-before-width","border-end","border-end-color","border-end-style","border-end-width","border-fit","border-horizontal-spacing","border-image","border-radius","border-start","border-start-color","border-start-style","border-start-width","border-vertical-spacing","box-align","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-reflect","box-shadow","color-correction","column-axis","column-break-after","column-break-before","column-break-inside","column-count","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","columns","column-span","column-width","filter","flex-align","flex-direction","flex-flow","flex-item-align","flex-line-pack","flex-order","flex-pack","flex-wrap","flow-from","flow-into","font-feature-settings","font-kerning","font-size-delta","font-smoothing","font-variant-ligatures","highlight","hyphenate-character","hyphenate-limit-after","hyphenate-limit-before","hyphenate-limit-lines","hyphens","line-align","line-box-contain","line-break","line-clamp","line-grid","line-snap","locale","logical-height","logical-width","margin-after","margin-after-collapse","margin-before","margin-before-collapse","margin-bottom-collapse","margin-collapse","margin-end","margin-start","margin-top-collapse","marquee","marquee-direction","marquee-increment","marquee-repetition","marquee-speed","marquee-style","mask","mask-attachment","mask-box-image","mask-box-image-outset","mask-box-image-repeat","mask-box-image-slice","mask-box-image-source","mask-box-image-width","mask-clip","mask-composite","mask-image","mask-origin","mask-position","mask-position-x","mask-position-y","mask-repeat","mask-repeat-x","mask-repeat-y","mask-size","match-nearest-mail-blockquote-color","max-logical-height","max-logical-width","min-logical-height","min-logical-width","nbsp-mode","overflow-scrolling","padding-after","padding-before","padding-end","padding-start","perspective","perspective-origin","perspective-origin-x","perspective-origin-y","print-color-adjust","region-break-after","region-break-before","region-break-inside","region-overflow","rtl-ordering","svg-shadow","tap-highlight-color","text-combine","text-decorations-in-effect","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-fill-color","text-orientation","text-security","text-size-adjust","text-stroke","text-stroke-color","text-stroke-width","transform","transform-origin","transform-origin-x","transform-origin-y","transform-origin-z","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","user-drag","user-modify","user-select","wrap","wrap-flow","wrap-margin","wrap-padding","wrap-shape-inside","wrap-shape-outside","wrap-through","writing-mode","zoom"].map((Wt=>"webkit-"+Wt))},4525:Wt=>{"use strict";Wt.exports.POSITION_AT_SHORTHAND={first:0,second:1}},25985:Wt=>{"use strict";Wt.exports=new Set(["azimuth","background","background-attachment","background-color","background-image","background-position","background-repeat","border","border-bottom","border-bottom-color","border-bottom-style","border-bottom-width","border-collapse","border-color","border-left","border-left-color","border-left-style","border-left-width","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-style","border-top-width","border-width","bottom","clear","clip","color","css-float","flex","flex-basis","flex-grow","flex-shrink","float","flood-color","font","font-family","font-size","font-style","font-variant","font-weight","height","left","lighting-color","line-height","margin","margin-bottom","margin-left","margin-right","margin-top","opacity","outline-color","padding","padding-bottom","padding-left","padding-right","padding-top","right","stop-color","text-line-through-color","text-overline-color","text-underline-color","top","webkit-border-after-color","webkit-border-before-color","webkit-border-end-color","webkit-border-start-color","webkit-column-rule-color","webkit-match-nearest-mail-blockquote-color","webkit-tap-highlight-color","webkit-text-emphasis-color","webkit-text-fill-color","webkit-text-stroke-color","width"])},87800:(Wt,Pt,en)=>{"use strict";const tn=en(13680);const{hslToRgb:nn}=en(84907);Pt.TYPES={INTEGER:1,NUMBER:2,LENGTH:3,PERCENT:4,URL:5,COLOR:6,STRING:7,ANGLE:8,KEYWORD:9,NULL_OR_EMPTY_STR:10,CALC:11};var an=/^[-+]?[0-9]+$/;var rn=/^[-+]?[0-9]*\.?[0-9]+$/;var In=/^(0|[-+]?[0-9]*\.?[0-9]+(in|cm|em|mm|pt|pc|px|ex|rem|vh|vw|ch))$/;var sn=/^[-+]?[0-9]*\.?[0-9]+%$/;var on=/^url\(\s*([^)]*)\s*\)$/;var cn=/^("[^"]*"|'[^']*')$/;var dn=/^#([0-9a-fA-F]{3,4}){1,2}$/;var un=/^rgb\(([^)]*)\)$/;var pn=/^rgba\(([^)]*)\)$/;var mn=/^calc\(([^)]*)\)$/;var bn=/^hsla?\(\s*(-?\d+|-?\d*.\d+)\s*,\s*(-?\d+|-?\d*.\d+)%\s*,\s*(-?\d+|-?\d*.\d+)%\s*(,\s*(-?\d+|-?\d*.\d+)\s*)?\)/;var Gn=/^([-+]?[0-9]*\.?[0-9]+)(deg|grad|rad)$/;Pt.valueType=function valueType(Wt){if(Wt===""||Wt===null){return Pt.TYPES.NULL_OR_EMPTY_STR}if(typeof Wt==="number"){Wt=Wt.toString()}if(typeof Wt!=="string"){return undefined}if(an.test(Wt)){return Pt.TYPES.INTEGER}if(rn.test(Wt)){return Pt.TYPES.NUMBER}if(In.test(Wt)){return Pt.TYPES.LENGTH}if(sn.test(Wt)){return Pt.TYPES.PERCENT}if(on.test(Wt)){return Pt.TYPES.URL}if(mn.test(Wt)){return Pt.TYPES.CALC}if(cn.test(Wt)){return Pt.TYPES.STRING}if(Gn.test(Wt)){return Pt.TYPES.ANGLE}if(dn.test(Wt)){return Pt.TYPES.COLOR}var en=un.exec(Wt);var nn;if(en!==null){nn=en[1].split(/\s*,\s*/);if(nn.length!==3){return undefined}if(nn.every(sn.test.bind(sn))||nn.every(an.test.bind(an))){return Pt.TYPES.COLOR}return undefined}en=pn.exec(Wt);if(en!==null){nn=en[1].split(/\s*,\s*/);if(nn.length!==4){return undefined}if(nn.slice(0,3).every(sn.test.bind(sn))||nn.slice(0,3).every(an.test.bind(an))){if(rn.test(nn[3])){return Pt.TYPES.COLOR}}return undefined}if(bn.test(Wt)){return Pt.TYPES.COLOR}Wt=Wt.toLowerCase();if(tn.includes(Wt)){return Pt.TYPES.COLOR}switch(Wt){case"activeborder":case"activecaption":case"appworkspace":case"background":case"buttonface":case"buttonhighlight":case"buttonshadow":case"buttontext":case"captiontext":case"graytext":case"highlight":case"highlighttext":case"inactiveborder":case"inactivecaption":case"inactivecaptiontext":case"infobackground":case"infotext":case"menu":case"menutext":case"scrollbar":case"threeddarkshadow":case"threedface":case"threedhighlight":case"threedlightshadow":case"threedshadow":case"window":case"windowframe":case"windowtext":return Pt.TYPES.COLOR;default:return Pt.TYPES.KEYWORD}};Pt.parseInteger=function parseInteger(Wt){var en=Pt.valueType(Wt);if(en===Pt.TYPES.NULL_OR_EMPTY_STR){return Wt}if(en!==Pt.TYPES.INTEGER){return undefined}return String(parseInt(Wt,10))};Pt.parseNumber=function parseNumber(Wt){var en=Pt.valueType(Wt);if(en===Pt.TYPES.NULL_OR_EMPTY_STR){return Wt}if(en!==Pt.TYPES.NUMBER&&en!==Pt.TYPES.INTEGER){return undefined}return String(parseFloat(Wt))};Pt.parseLength=function parseLength(Wt){if(Wt===0||Wt==="0"){return"0px"}var en=Pt.valueType(Wt);if(en===Pt.TYPES.NULL_OR_EMPTY_STR){return Wt}if(en!==Pt.TYPES.LENGTH){return undefined}return Wt};Pt.parsePercent=function parsePercent(Wt){if(Wt===0||Wt==="0"){return"0%"}var en=Pt.valueType(Wt);if(en===Pt.TYPES.NULL_OR_EMPTY_STR){return Wt}if(en!==Pt.TYPES.PERCENT){return undefined}return Wt};Pt.parseMeasurement=function parseMeasurement(Wt){var en=Pt.valueType(Wt);if(en===Pt.TYPES.CALC){return Wt}var tn=Pt.parseLength(Wt);if(tn!==undefined){return tn}return Pt.parsePercent(Wt)};Pt.parseUrl=function parseUrl(Wt){var en=Pt.valueType(Wt);if(en===Pt.TYPES.NULL_OR_EMPTY_STR){return Wt}var tn=on.exec(Wt);if(!tn){return undefined}var nn=tn[1];if((nn[0]==='"'||nn[0]==="'")&&nn[0]!==nn[nn.length-1]){return undefined}if(nn[0]==='"'||nn[0]==="'"){nn=nn.substr(1,nn.length-2)}var an;for(an=0;an=Wt.length){return undefined}return Wt};Pt.parseColor=function parseColor(Wt){var en=Pt.valueType(Wt);if(en===Pt.TYPES.NULL_OR_EMPTY_STR){return Wt}var tn,In,on,cn,mn,Gn,hn=1;var Zn;var An=dn.exec(Wt);if(An){var Wn=Wt.substr(1);var Nn=Wt.substr(1);if(Nn.length===3||Nn.length===4){Nn=Nn[0]+Nn[0]+Nn[1]+Nn[1]+Nn[2]+Nn[2];if(Wn.length===4){Nn=Nn+Wn[3]+Wn[3]}}tn=parseInt(Nn.substr(0,2),16);In=parseInt(Nn.substr(2,2),16);on=parseInt(Nn.substr(4,2),16);if(Nn.length===8){var gn=Nn.substr(6,2);var yn=Number((parseInt(gn,16)/255).toFixed(3));return"rgba("+tn+", "+In+", "+on+", "+yn+")"}return"rgb("+tn+", "+In+", "+on+")"}An=un.exec(Wt);if(An){Zn=An[1].split(/\s*,\s*/);if(Zn.length!==3){return undefined}if(Zn.every(sn.test.bind(sn))){tn=Math.floor(parseFloat(Zn[0].slice(0,-1))*255/100);In=Math.floor(parseFloat(Zn[1].slice(0,-1))*255/100);on=Math.floor(parseFloat(Zn[2].slice(0,-1))*255/100)}else if(Zn.every(an.test.bind(an))){tn=parseInt(Zn[0],10);In=parseInt(Zn[1],10);on=parseInt(Zn[2],10)}else{return undefined}tn=Math.min(255,Math.max(0,tn));In=Math.min(255,Math.max(0,In));on=Math.min(255,Math.max(0,on));return"rgb("+tn+", "+In+", "+on+")"}An=pn.exec(Wt);if(An){Zn=An[1].split(/\s*,\s*/);if(Zn.length!==4){return undefined}if(Zn.slice(0,3).every(sn.test.bind(sn))){tn=Math.floor(parseFloat(Zn[0].slice(0,-1))*255/100);In=Math.floor(parseFloat(Zn[1].slice(0,-1))*255/100);on=Math.floor(parseFloat(Zn[2].slice(0,-1))*255/100);hn=parseFloat(Zn[3])}else if(Zn.slice(0,3).every(an.test.bind(an))){tn=parseInt(Zn[0],10);In=parseInt(Zn[1],10);on=parseInt(Zn[2],10);hn=parseFloat(Zn[3])}else{return undefined}if(isNaN(hn)){hn=1}tn=Math.min(255,Math.max(0,tn));In=Math.min(255,Math.max(0,In));on=Math.min(255,Math.max(0,on));hn=Math.min(1,Math.max(0,hn));if(hn===1){return"rgb("+tn+", "+In+", "+on+")"}return"rgba("+tn+", "+In+", "+on+", "+hn+")"}An=bn.exec(Wt);if(An){const[,Wt,Pt,en,tn=""]=An;const an=parseFloat(tn.replace(",","").trim());if(!Wt||!Pt||!en){return undefined}cn=parseFloat(Wt);mn=parseInt(Pt,10);Gn=parseInt(en,10);if(an&&rn.test(an)){hn=parseFloat(an)}const[In,sn,on]=nn(cn,mn/100,Gn/100);if(!tn||hn===1){return"rgb("+In+", "+sn+", "+on+")"}return"rgba("+In+", "+sn+", "+on+", "+hn+")"}if(en===Pt.TYPES.COLOR){return Wt}return undefined};Pt.parseAngle=function parseAngle(Wt){var en=Pt.valueType(Wt);if(en===Pt.TYPES.NULL_OR_EMPTY_STR){return Wt}if(en!==Pt.TYPES.ANGLE){return undefined}var tn=Gn.exec(Wt);var nn=parseFloat(tn[1]);if(tn[2]==="rad"){nn*=180/Math.PI}else if(tn[2]==="grad"){nn*=360/400}while(nn<0){nn+=360}while(nn>360){nn-=360}return nn+"deg"};Pt.parseKeyword=function parseKeyword(Wt,en){var tn=Pt.valueType(Wt);if(tn===Pt.TYPES.NULL_OR_EMPTY_STR){return Wt}if(tn!==Pt.TYPES.KEYWORD){return undefined}Wt=Wt.toString().toLowerCase();var nn;for(nn=0;nn4){return undefined}if(!rn.every(en)){return undefined}rn=rn.map((function(Wt){return tn(Wt)}));this._setProperty(Wt+Pt,rn.join(" "));if(rn.length===1){rn[1]=rn[0]}if(rn.length===2){rn[2]=rn[0]}if(rn.length===3){rn[3]=rn[1]}for(var In=0;In<4;In++){var sn=Wt+"-"+nn[In]+Pt;this.removeProperty(sn);if(rn[In]!==""){this._values[sn]=rn[In]}}return an}};Pt.subImplicitSetter=function(Wt,Pt,en,tn){var nn=Wt+"-"+Pt;var an=[Wt+"-top",Wt+"-right",Wt+"-bottom",Wt+"-left"];return function(Pt){if(typeof Pt==="number"){Pt=Pt.toString()}if(Pt===null){Pt=""}if(typeof Pt!=="string"){return undefined}if(!en(Pt)){return undefined}Pt=tn(Pt);this._setProperty(nn,Pt);var rn=this.getPropertyPriority(Wt);var In=an.map((Wt=>this._values[Wt]));var sn=an.map((Wt=>this.getPropertyPriority(Wt)));if(In.every((Wt=>Wt!==""&&Wt!=null))&&sn.every((Wt=>Wt===sn[0]))&&sn[0]===rn){for(var on=0;on{"use strict";var tn=en(87800);var nn=en(4525);var an;an={set:function(Wt){var Pt=tn.valueType(Wt);if(Pt===tn.TYPES.ANGLE){return this._setProperty("azimuth",tn.parseAngle(Wt))}if(Pt===tn.TYPES.KEYWORD){var en=Wt.toLowerCase().trim().split(/\s+/);var nn=false;if(en.length>2){return}var an=en.indexOf("behind");nn=an!==-1;if(en.length===2){if(!nn){return}en.splice(an,1)}if(en[0]==="leftwards"||en[0]==="rightwards"){if(nn){return}return this._setProperty("azimuth",en[0])}if(en[0]==="behind"){return this._setProperty("azimuth","180deg")}switch(en[0]){case"left-side":return this._setProperty("azimuth","270deg");case"far-left":return this._setProperty("azimuth",(nn?240:300)+"deg");case"left":return this._setProperty("azimuth",(nn?220:320)+"deg");case"center-left":return this._setProperty("azimuth",(nn?200:340)+"deg");case"center":return this._setProperty("azimuth",(nn?180:0)+"deg");case"center-right":return this._setProperty("azimuth",(nn?160:20)+"deg");case"right":return this._setProperty("azimuth",(nn?140:40)+"deg");case"far-right":return this._setProperty("azimuth",(nn?120:60)+"deg");case"right-side":return this._setProperty("azimuth","90deg");default:return}}},get:function(){return this.getPropertyValue("azimuth")},enumerable:true,configurable:true};var rn,In;var sn=function parse(Wt){var Pt=tn.parseColor(Wt);if(Pt!==undefined){return Pt}if(tn.valueType(Wt)===tn.TYPES.KEYWORD&&(Wt.toLowerCase()==="transparent"||Wt.toLowerCase()==="inherit")){return Wt}return undefined};rn=function isValid(Wt){return sn(Wt)!==undefined};In={set:function(Wt){var Pt=sn(Wt);if(Pt===undefined){return}this._setProperty("background-color",Pt)},get:function(){return this.getPropertyValue("background-color")},enumerable:true,configurable:true};var on,cn;var dn=function parse(Wt){var Pt=tn.parseUrl(Wt);if(Pt!==undefined){return Pt}if(tn.valueType(Wt)===tn.TYPES.KEYWORD&&(Wt.toLowerCase()==="none"||Wt.toLowerCase()==="inherit")){return Wt}return undefined};on=function isValid(Wt){return dn(Wt)!==undefined};cn={set:function(Wt){this._setProperty("background-image",dn(Wt))},get:function(){return this.getPropertyValue("background-image")},enumerable:true,configurable:true};var un,pn;var mn=function parse(Wt){if(tn.valueType(Wt)===tn.TYPES.KEYWORD&&(Wt.toLowerCase()==="repeat"||Wt.toLowerCase()==="repeat-x"||Wt.toLowerCase()==="repeat-y"||Wt.toLowerCase()==="no-repeat"||Wt.toLowerCase()==="inherit")){return Wt}return undefined};un=function isValid(Wt){return mn(Wt)!==undefined};pn={set:function(Wt){this._setProperty("background-repeat",mn(Wt))},get:function(){return this.getPropertyValue("background-repeat")},enumerable:true,configurable:true};var bn,Gn;var hn=bn=function isValid(Wt){return tn.valueType(Wt)===tn.TYPES.KEYWORD&&(Wt.toLowerCase()==="scroll"||Wt.toLowerCase()==="fixed"||Wt.toLowerCase()==="inherit")};Gn={set:function(Wt){if(!hn(Wt)){return}this._setProperty("background-attachment",Wt)},get:function(){return this.getPropertyValue("background-attachment")},enumerable:true,configurable:true};var Zn,An;var Wn=["top","center","bottom","left","right"];var Nn=function parse(Wt){if(Wt===""||Wt===null){return undefined}var Pt=Wt.split(/\s+/);if(Pt.length>2||Pt.length<1){return undefined}var en=[];Pt.forEach((function(Wt,Pt){en[Pt]=tn.valueType(Wt)}));if(Pt.length===1){if(en[0]===tn.TYPES.LENGTH||en[0]===tn.TYPES.PERCENT){return Wt}if(en[0]===tn.TYPES.KEYWORD){if(Wn.indexOf(Wt.toLowerCase())!==-1||Wt.toLowerCase()==="inherit"){return Wt}}return undefined}if((en[0]===tn.TYPES.LENGTH||en[0]===tn.TYPES.PERCENT)&&(en[1]===tn.TYPES.LENGTH||en[1]===tn.TYPES.PERCENT)){return Wt}if(en[0]!==tn.TYPES.KEYWORD||en[1]!==tn.TYPES.KEYWORD){return undefined}if(Wn.indexOf(Pt[0])!==-1&&Wn.indexOf(Pt[1])!==-1){return Wt}return undefined};Zn=function isValid(Wt){return Nn(Wt)!==undefined};An={set:function(Wt){this._setProperty("background-position",Nn(Wt))},get:function(){return this.getPropertyValue("background-position")},enumerable:true,configurable:true};var gn;var yn={"background-color":{isValid:rn,definition:In},"background-image":{isValid:on,definition:cn},"background-repeat":{isValid:un,definition:pn},"background-attachment":{isValid:bn,definition:Gn},"background-position":{isValid:Zn,definition:An}};gn={set:tn.shorthandSetter("background",yn),get:tn.shorthandGetter("background",yn),enumerable:true,configurable:true};var vn,Yn;var En=["thin","medium","thick"];vn=function parse(Wt){var Pt=tn.parseLength(Wt);if(Pt!==undefined){return true}if(typeof Wt!=="string"){return false}if(Wt===""){return true}Wt=Wt.toLowerCase();if(En.indexOf(Wt)===-1){return false}return true};var Vn=vn;var borderWidth_local_var_parser=function(Wt){var Pt=tn.parseLength(Wt);if(Pt!==undefined){return Pt}if(Vn(Wt)){return Wt.toLowerCase()}return undefined};Yn={set:tn.implicitSetter("border","width",Vn,borderWidth_local_var_parser),get:function(){return this.getPropertyValue("border-width")},enumerable:true,configurable:true};var Rn,wn;var Fn=["none","hidden","dotted","dashed","solid","double","groove","ridge","inset","outset"];Rn=function parse(Wt){return typeof Wt==="string"&&(Wt===""||Fn.indexOf(Wt)!==-1)};var Qn=Rn;var borderStyle_local_var_parser=function(Wt){if(Qn(Wt)){return Wt.toLowerCase()}return undefined};wn={set:tn.implicitSetter("border","style",Qn,borderStyle_local_var_parser),get:function(){return this.getPropertyValue("border-style")},enumerable:true,configurable:true};var fn,Hn;fn=function parse(Wt){if(typeof Wt!=="string"){return false}return Wt===""||Wt.toLowerCase()==="transparent"||tn.valueType(Wt)===tn.TYPES.COLOR};var Cn=fn;var borderColor_local_var_parser=function(Wt){if(Cn(Wt)){return Wt.toLowerCase()}return undefined};Hn={set:tn.implicitSetter("border","color",Cn,borderColor_local_var_parser),get:function(){return this.getPropertyValue("border-color")},enumerable:true,configurable:true};var Xn;var kn={"border-width":{isValid:vn,definition:Yn},"border-style":{isValid:Rn,definition:wn},"border-color":{isValid:fn,definition:Hn}};var Jn=tn.shorthandSetter("border",kn);var Ln=tn.shorthandGetter("border",kn);Xn={set:function(Wt){if(Wt.toString().toLowerCase()==="none"){Wt=""}Jn.call(this,Wt);this.removeProperty("border-top");this.removeProperty("border-left");this.removeProperty("border-right");this.removeProperty("border-bottom");this._values["border-top"]=this._values.border;this._values["border-left"]=this._values.border;this._values["border-right"]=this._values.border;this._values["border-bottom"]=this._values.border},get:Ln,enumerable:true,configurable:true};var Bn,xn;var On=Bn=vn;xn={set:function(Wt){if(On(Wt)){this._setProperty("border-bottom-width",Wt)}},get:function(){return this.getPropertyValue("border-bottom-width")},enumerable:true,configurable:true};var Tn,Un;Tn=Rn;Un={set:function(Wt){if(Rn(Wt)){if(Wt.toLowerCase()==="none"){Wt="";this.removeProperty("border-bottom-width")}this._setProperty("border-bottom-style",Wt)}},get:function(){return this.getPropertyValue("border-bottom-style")},enumerable:true,configurable:true};var Mn,zn;var Sn=Mn=fn;zn={set:function(Wt){if(Sn(Wt)){this._setProperty("border-bottom-color",Wt)}},get:function(){return this.getPropertyValue("border-bottom-color")},enumerable:true,configurable:true};var jn;var Dn={"border-bottom-width":{isValid:Bn,definition:xn},"border-bottom-style":{isValid:Tn,definition:Un},"border-bottom-color":{isValid:Mn,definition:zn}};jn={set:tn.shorthandSetter("border-bottom",Dn),get:tn.shorthandGetter("border-bottom",Dn),enumerable:true,configurable:true};var _n;var Kn=function parse(Wt){if(tn.valueType(Wt)===tn.TYPES.KEYWORD&&(Wt.toLowerCase()==="collapse"||Wt.toLowerCase()==="separate"||Wt.toLowerCase()==="inherit")){return Wt}return undefined};_n={set:function(Wt){this._setProperty("border-collapse",Kn(Wt))},get:function(){return this.getPropertyValue("border-collapse")},enumerable:true,configurable:true};var Pn,qn;var $n=Pn=vn;qn={set:function(Wt){if($n(Wt)){this._setProperty("border-left-width",Wt)}},get:function(){return this.getPropertyValue("border-left-width")},enumerable:true,configurable:true};var el,tl;el=Rn;tl={set:function(Wt){if(Rn(Wt)){if(Wt.toLowerCase()==="none"){Wt="";this.removeProperty("border-left-width")}this._setProperty("border-left-style",Wt)}},get:function(){return this.getPropertyValue("border-left-style")},enumerable:true,configurable:true};var nl,ll;var al=nl=fn;ll={set:function(Wt){if(al(Wt)){this._setProperty("border-left-color",Wt)}},get:function(){return this.getPropertyValue("border-left-color")},enumerable:true,configurable:true};var rl;var Il={"border-left-width":{isValid:Pn,definition:qn},"border-left-style":{isValid:el,definition:tl},"border-left-color":{isValid:nl,definition:ll}};rl={set:tn.shorthandSetter("border-left",Il),get:tn.shorthandGetter("border-left",Il),enumerable:true,configurable:true};var sl,ol;var cl=sl=vn;ol={set:function(Wt){if(cl(Wt)){this._setProperty("border-right-width",Wt)}},get:function(){return this.getPropertyValue("border-right-width")},enumerable:true,configurable:true};var il,dl;il=Rn;dl={set:function(Wt){if(Rn(Wt)){if(Wt.toLowerCase()==="none"){Wt="";this.removeProperty("border-right-width")}this._setProperty("border-right-style",Wt)}},get:function(){return this.getPropertyValue("border-right-style")},enumerable:true,configurable:true};var ul,pl;var ml=ul=fn;pl={set:function(Wt){if(ml(Wt)){this._setProperty("border-right-color",Wt)}},get:function(){return this.getPropertyValue("border-right-color")},enumerable:true,configurable:true};var bl;var Gl={"border-right-width":{isValid:sl,definition:ol},"border-right-style":{isValid:il,definition:dl},"border-right-color":{isValid:ul,definition:pl}};bl={set:tn.shorthandSetter("border-right",Gl),get:tn.shorthandGetter("border-right",Gl),enumerable:true,configurable:true};var hl;var Zl=function parse(Wt){if(Wt===""||Wt===null){return undefined}if(Wt===0){return"0px"}if(Wt.toLowerCase()==="inherit"){return Wt}var Pt=Wt.split(/\s+/);if(Pt.length!==1&&Pt.length!==2){return undefined}Pt.forEach((function(Wt){if(tn.valueType(Wt)!==tn.TYPES.LENGTH){return undefined}}));return Wt};hl={set:function(Wt){this._setProperty("border-spacing",Zl(Wt))},get:function(){return this.getPropertyValue("border-spacing")},enumerable:true,configurable:true};var Al,Wl;Al=vn;Wl={set:function(Wt){if(vn(Wt)){this._setProperty("border-top-width",Wt)}},get:function(){return this.getPropertyValue("border-top-width")},enumerable:true,configurable:true};var Nl,gl;Nl=Rn;gl={set:function(Wt){if(Rn(Wt)){if(Wt.toLowerCase()==="none"){Wt="";this.removeProperty("border-top-width")}this._setProperty("border-top-style",Wt)}},get:function(){return this.getPropertyValue("border-top-style")},enumerable:true,configurable:true};var yl,vl;var Yl=yl=fn;vl={set:function(Wt){if(Yl(Wt)){this._setProperty("border-top-color",Wt)}},get:function(){return this.getPropertyValue("border-top-color")},enumerable:true,configurable:true};var El;var Vl={"border-top-width":{isValid:Al,definition:Wl},"border-top-style":{isValid:Nl,definition:gl},"border-top-color":{isValid:yl,definition:vl}};El={set:tn.shorthandSetter("border-top",Vl),get:tn.shorthandGetter("border-top",Vl),enumerable:true,configurable:true};var Rl;Rl={set:function(Wt){this._setProperty("bottom",tn.parseMeasurement(Wt))},get:function(){return this.getPropertyValue("bottom")},enumerable:true,configurable:true};var wl;var Fl=["none","left","right","both","inherit"];wl={set:function(Wt){this._setProperty("clear",tn.parseKeyword(Wt,Fl))},get:function(){return this.getPropertyValue("clear")},enumerable:true,configurable:true};var Ql;var fl=/^rect\((.*)\)$/i;var clip_local_var_parse=function(Wt){if(Wt===""||Wt===null){return Wt}if(typeof Wt!=="string"){return undefined}Wt=Wt.toLowerCase();if(Wt==="auto"||Wt==="inherit"){return Wt}var Pt=Wt.match(fl);if(!Pt){return undefined}var en=Pt[1].split(/\s*,\s*/);if(en.length!==4){return undefined}var nn=en.every((function(Wt,Pt){var nn=tn.parseMeasurement(Wt);en[Pt]=nn;return nn!==undefined}));if(!nn){return undefined}en=en.join(", ");return Wt.replace(Pt[1],en)};Ql={set:function(Wt){this._setProperty("clip",clip_local_var_parse(Wt))},get:function(){return this.getPropertyValue("clip")},enumerable:true,configurable:true};var Hl;Hl={set:function(Wt){this._setProperty("color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("color")},enumerable:true,configurable:true};var Cl;Cl={set:function(Wt){this._setProperty("float",Wt)},get:function(){return this.getPropertyValue("float")},enumerable:true,configurable:true};var Xl,kl;Xl=function isValid(Wt,Pt){return tn.parseNumber(Wt)!==undefined&&Pt===nn.POSITION_AT_SHORTHAND.first};kl={set:function(Wt){this._setProperty("flex-grow",tn.parseNumber(Wt))},get:function(){return this.getPropertyValue("flex-grow")},enumerable:true,configurable:true};var Jl,Ll;Jl=function isValid(Wt,Pt){return tn.parseNumber(Wt)!==undefined&&Pt===nn.POSITION_AT_SHORTHAND.second};Ll={set:function(Wt){this._setProperty("flex-shrink",tn.parseNumber(Wt))},get:function(){return this.getPropertyValue("flex-shrink")},enumerable:true,configurable:true};var Bl,xl;function flexBasis_local_fn_parse(Wt){if(String(Wt).toLowerCase()==="auto"){return"auto"}if(String(Wt).toLowerCase()==="inherit"){return"inherit"}return tn.parseMeasurement(Wt)}Bl=function isValid(Wt){return flexBasis_local_fn_parse(Wt)!==undefined};xl={set:function(Wt){this._setProperty("flex-basis",flexBasis_local_fn_parse(Wt))},get:function(){return this.getPropertyValue("flex-basis")},enumerable:true,configurable:true};var Ol,Tl;var Ul={"flex-grow":{isValid:Xl,definition:kl},"flex-shrink":{isValid:Jl,definition:Ll},"flex-basis":{isValid:Bl,definition:xl}};var Ml=tn.shorthandSetter("flex",Ul);Ol=function isValid(Wt){return tn.shorthandParser(Wt,Ul)!==undefined};Tl={set:function(Wt){var Pt=String(Wt).trim().toLowerCase();if(Pt==="none"){Ml.call(this,"0 0 auto");return}if(Pt==="initial"){Ml.call(this,"0 1 auto");return}if(Pt==="auto"){this.removeProperty("flex-grow");this.removeProperty("flex-shrink");this.setProperty("flex-basis",Pt);return}Ml.call(this,Wt)},get:tn.shorthandGetter("flex",Ul),enumerable:true,configurable:true};var zl;zl={set:function(Wt){this._setProperty("float",Wt)},get:function(){return this.getPropertyValue("float")},enumerable:true,configurable:true};var Sl;Sl={set:function(Wt){this._setProperty("flood-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("flood-color")},enumerable:true,configurable:true};var jl,Dl;var _l=/\s*,\s*/;jl=function isValid(Wt){if(Wt===""||Wt===null){return true}var Pt=Wt.split(_l);var en=Pt.length;var nn;var an;for(nn=0;nnWt.toLowerCase()===Pt));return nn?Pt:tn.parseMeasurement(Wt)}Pl={set:function(Wt){this._setProperty("font-size",fontSize_local_fn_parse(Wt))},get:function(){return this.getPropertyValue("font-size")},enumerable:true,configurable:true};var Zr,Qr;var Jr=["normal","italic","oblique","inherit"];Zr=function(Wt){return Jr.indexOf(Wt.toLowerCase())!==-1};Qr={set:function(Wt){this._setProperty("font-style",Wt)},get:function(){return this.getPropertyValue("font-style")},enumerable:true,configurable:true};var zr,jr;var $r=["normal","small-caps","inherit"];zr=function isValid(Wt){return $r.indexOf(Wt.toLowerCase())!==-1};jr={set:function(Wt){this._setProperty("font-variant",Wt)},get:function(){return this.getPropertyValue("font-variant")},enumerable:true,configurable:true};var lI,uI;var mI=["normal","bold","bolder","lighter","100","200","300","400","500","600","700","800","900","inherit"];lI=function isValid(Wt){return mI.indexOf(Wt.toLowerCase())!==-1};uI={set:function(Wt){this._setProperty("font-weight",Wt)},get:function(){return this.getPropertyValue("font-weight")},enumerable:true,configurable:true};var ZI,WI;ZI=function isValid(Wt){var Pt=tn.valueType(Wt);return Pt===tn.TYPES.KEYWORD&&Wt.toLowerCase()==="normal"||Wt.toLowerCase()==="inherit"||Pt===tn.TYPES.NUMBER||Pt===tn.TYPES.LENGTH||Pt===tn.TYPES.PERCENT};WI={set:function(Wt){this._setProperty("line-height",Wt)},get:function(){return this.getPropertyValue("line-height")},enumerable:true,configurable:true};var vI;var VI={"font-family":{isValid:jl,definition:Dl},"font-size":{isValid:Kl,definition:Pl},"font-style":{isValid:Zr,definition:Qr},"font-variant":{isValid:zr,definition:jr},"font-weight":{isValid:lI,definition:uI},"line-height":{isValid:ZI,definition:WI}};var XI=["caption","icon","menu","message-box","small-caption","status-bar","inherit"];var LI=tn.shorthandSetter("font",VI);vI={set:function(Wt){var Pt=tn.shorthandParser(Wt,VI);if(Pt!==undefined){return LI.call(this,Wt)}if(tn.valueType(Wt)===tn.TYPES.KEYWORD&&XI.indexOf(Wt.toLowerCase())!==-1){this._setProperty("font",Wt)}},get:tn.shorthandGetter("font",VI),enumerable:true,configurable:true};var xI;function height_local_fn_parse(Wt){if(String(Wt).toLowerCase()==="auto"){return"auto"}if(String(Wt).toLowerCase()==="inherit"){return"inherit"}return tn.parseMeasurement(Wt)}xI={set:function(Wt){this._setProperty("height",height_local_fn_parse(Wt))},get:function(){return this.getPropertyValue("height")},enumerable:true,configurable:true};var OI;OI={set:function(Wt){this._setProperty("left",tn.parseMeasurement(Wt))},get:function(){return this.getPropertyValue("left")},enumerable:true,configurable:true};var TI;TI={set:function(Wt){this._setProperty("lighting-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("lighting-color")},enumerable:true,configurable:true};var zI,jI,PI;var qI=tn.TYPES;var margin_local_var_isValid=function(Wt){if(Wt.toLowerCase()==="auto"){return true}var Pt=tn.valueType(Wt);return Pt===qI.NULL_OR_EMPTY_STR||Pt===qI.LENGTH||Pt===qI.PERCENT||Pt===qI.CALC||Pt===qI.INTEGER&&(Wt==="0"||Wt===0)};var margin_local_var_parser=function(Wt){var Pt=Wt.toLowerCase();if(Pt==="auto"){return Pt}return tn.parseMeasurement(Wt)};var $I=tn.implicitSetter("margin","",margin_local_var_isValid,margin_local_var_parser);var es=tn.implicitSetter("margin","",(function(){return true}),(function(Wt){return Wt}));zI={set:function(Wt){if(typeof Wt==="number"){Wt=String(Wt)}if(Wt===null){Wt=""}if(typeof Wt!=="string"){return}var Pt=Wt.toLowerCase();switch(Pt){case"inherit":case"initial":case"unset":case"":es.call(this,Pt);break;default:$I.call(this,Wt);break}},get:function(){return this.getPropertyValue("margin")},enumerable:true,configurable:true};jI=margin_local_var_isValid;PI=margin_local_var_parser;var ts;ts={set:tn.subImplicitSetter("margin","bottom",{definition:zI,isValid:jI,parser:PI}.isValid,{definition:zI,isValid:jI,parser:PI}.parser),get:function(){return this.getPropertyValue("margin-bottom")},enumerable:true,configurable:true};var ns;ns={set:tn.subImplicitSetter("margin","left",{definition:zI,isValid:jI,parser:PI}.isValid,{definition:zI,isValid:jI,parser:PI}.parser),get:function(){return this.getPropertyValue("margin-left")},enumerable:true,configurable:true};var ls;ls={set:tn.subImplicitSetter("margin","right",{definition:zI,isValid:jI,parser:PI}.isValid,{definition:zI,isValid:jI,parser:PI}.parser),get:function(){return this.getPropertyValue("margin-right")},enumerable:true,configurable:true};var as;as={set:tn.subImplicitSetter("margin","top",{definition:zI,isValid:jI,parser:PI}.isValid,{definition:zI,isValid:jI,parser:PI}.parser),get:function(){return this.getPropertyValue("margin-top")},enumerable:true,configurable:true};var rs;rs={set:function(Wt){this._setProperty("opacity",tn.parseNumber(Wt))},get:function(){return this.getPropertyValue("opacity")},enumerable:true,configurable:true};var Is;Is={set:function(Wt){this._setProperty("outline-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("outline-color")},enumerable:true,configurable:true};var ss,os,cs;var is=tn.TYPES;var padding_local_var_isValid=function(Wt){var Pt=tn.valueType(Wt);return Pt===is.NULL_OR_EMPTY_STR||Pt===is.LENGTH||Pt===is.PERCENT||Pt===is.CALC||Pt===is.INTEGER&&(Wt==="0"||Wt===0)};var padding_local_var_parser=function(Wt){return tn.parseMeasurement(Wt)};var ds=tn.implicitSetter("padding","",padding_local_var_isValid,padding_local_var_parser);var us=tn.implicitSetter("padding","",(function(){return true}),(function(Wt){return Wt}));ss={set:function(Wt){if(typeof Wt==="number"){Wt=String(Wt)}if(Wt===null){Wt=""}if(typeof Wt!=="string"){return}var Pt=Wt.toLowerCase();switch(Pt){case"inherit":case"initial":case"unset":case"":us.call(this,Pt);break;default:ds.call(this,Wt);break}},get:function(){return this.getPropertyValue("padding")},enumerable:true,configurable:true};os=padding_local_var_isValid;cs=padding_local_var_parser;var ps;ps={set:tn.subImplicitSetter("padding","bottom",{definition:ss,isValid:os,parser:cs}.isValid,{definition:ss,isValid:os,parser:cs}.parser),get:function(){return this.getPropertyValue("padding-bottom")},enumerable:true,configurable:true};var ms;ms={set:tn.subImplicitSetter("padding","left",{definition:ss,isValid:os,parser:cs}.isValid,{definition:ss,isValid:os,parser:cs}.parser),get:function(){return this.getPropertyValue("padding-left")},enumerable:true,configurable:true};var bs;bs={set:tn.subImplicitSetter("padding","right",{definition:ss,isValid:os,parser:cs}.isValid,{definition:ss,isValid:os,parser:cs}.parser),get:function(){return this.getPropertyValue("padding-right")},enumerable:true,configurable:true};var Gs;Gs={set:tn.subImplicitSetter("padding","top",{definition:ss,isValid:os,parser:cs}.isValid,{definition:ss,isValid:os,parser:cs}.parser),get:function(){return this.getPropertyValue("padding-top")},enumerable:true,configurable:true};var hs;hs={set:function(Wt){this._setProperty("right",tn.parseMeasurement(Wt))},get:function(){return this.getPropertyValue("right")},enumerable:true,configurable:true};var Zs;Zs={set:function(Wt){this._setProperty("stop-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("stop-color")},enumerable:true,configurable:true};var As;As={set:function(Wt){this._setProperty("text-line-through-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("text-line-through-color")},enumerable:true,configurable:true};var Ws;Ws={set:function(Wt){this._setProperty("text-overline-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("text-overline-color")},enumerable:true,configurable:true};var Ns;Ns={set:function(Wt){this._setProperty("text-underline-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("text-underline-color")},enumerable:true,configurable:true};var gs;gs={set:function(Wt){this._setProperty("top",tn.parseMeasurement(Wt))},get:function(){return this.getPropertyValue("top")},enumerable:true,configurable:true};var ys;ys={set:function(Wt){this._setProperty("-webkit-border-after-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("-webkit-border-after-color")},enumerable:true,configurable:true};var vs;vs={set:function(Wt){this._setProperty("-webkit-border-before-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("-webkit-border-before-color")},enumerable:true,configurable:true};var Ys;Ys={set:function(Wt){this._setProperty("-webkit-border-end-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("-webkit-border-end-color")},enumerable:true,configurable:true};var Es;Es={set:function(Wt){this._setProperty("-webkit-border-start-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("-webkit-border-start-color")},enumerable:true,configurable:true};var Vs;Vs={set:function(Wt){this._setProperty("-webkit-column-rule-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("-webkit-column-rule-color")},enumerable:true,configurable:true};var Rs;Rs={set:function(Wt){this._setProperty("-webkit-match-nearest-mail-blockquote-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("-webkit-match-nearest-mail-blockquote-color")},enumerable:true,configurable:true};var ws;ws={set:function(Wt){this._setProperty("-webkit-tap-highlight-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("-webkit-tap-highlight-color")},enumerable:true,configurable:true};var Fs;Fs={set:function(Wt){this._setProperty("-webkit-text-emphasis-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("-webkit-text-emphasis-color")},enumerable:true,configurable:true};var Qs;Qs={set:function(Wt){this._setProperty("-webkit-text-fill-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("-webkit-text-fill-color")},enumerable:true,configurable:true};var fs;fs={set:function(Wt){this._setProperty("-webkit-text-stroke-color",tn.parseColor(Wt))},get:function(){return this.getPropertyValue("-webkit-text-stroke-color")},enumerable:true,configurable:true};var Hs;function width_local_fn_parse(Wt){if(String(Wt).toLowerCase()==="auto"){return"auto"}if(String(Wt).toLowerCase()==="inherit"){return"inherit"}return tn.parseMeasurement(Wt)}Hs={set:function(Wt){this._setProperty("width",width_local_fn_parse(Wt))},get:function(){return this.getPropertyValue("width")},enumerable:true,configurable:true};Wt.exports=function(Wt){Object.defineProperties(Wt,{azimuth:an,backgroundColor:In,"background-color":In,backgroundImage:cn,"background-image":cn,backgroundRepeat:pn,"background-repeat":pn,backgroundAttachment:Gn,"background-attachment":Gn,backgroundPosition:An,"background-position":An,background:gn,borderWidth:Yn,"border-width":Yn,borderStyle:wn,"border-style":wn,borderColor:Hn,"border-color":Hn,border:Xn,borderBottomWidth:xn,"border-bottom-width":xn,borderBottomStyle:Un,"border-bottom-style":Un,borderBottomColor:zn,"border-bottom-color":zn,borderBottom:jn,"border-bottom":jn,borderCollapse:_n,"border-collapse":_n,borderLeftWidth:qn,"border-left-width":qn,borderLeftStyle:tl,"border-left-style":tl,borderLeftColor:ll,"border-left-color":ll,borderLeft:rl,"border-left":rl,borderRightWidth:ol,"border-right-width":ol,borderRightStyle:dl,"border-right-style":dl,borderRightColor:pl,"border-right-color":pl,borderRight:bl,"border-right":bl,borderSpacing:hl,"border-spacing":hl,borderTopWidth:Wl,"border-top-width":Wl,borderTopStyle:gl,"border-top-style":gl,borderTopColor:vl,"border-top-color":vl,borderTop:El,"border-top":El,bottom:Rl,clear:wl,clip:Ql,color:Hl,cssFloat:Cl,"css-float":Cl,flexGrow:kl,"flex-grow":kl,flexShrink:Ll,"flex-shrink":Ll,flexBasis:xl,"flex-basis":xl,flex:Tl,float:zl,floodColor:Sl,"flood-color":Sl,fontFamily:Dl,"font-family":Dl,fontSize:Pl,"font-size":Pl,fontStyle:Qr,"font-style":Qr,fontVariant:jr,"font-variant":jr,fontWeight:uI,"font-weight":uI,lineHeight:WI,"line-height":WI,font:vI,height:xI,left:OI,lightingColor:TI,"lighting-color":TI,margin:zI,marginBottom:ts,"margin-bottom":ts,marginLeft:ns,"margin-left":ns,marginRight:ls,"margin-right":ls,marginTop:as,"margin-top":as,opacity:rs,outlineColor:Is,"outline-color":Is,padding:ss,paddingBottom:ps,"padding-bottom":ps,paddingLeft:ms,"padding-left":ms,paddingRight:bs,"padding-right":bs,paddingTop:Gs,"padding-top":Gs,right:hs,stopColor:Zs,"stop-color":Zs,textLineThroughColor:As,"text-line-through-color":As,textOverlineColor:Ws,"text-overline-color":Ws,textUnderlineColor:Ns,"text-underline-color":Ns,top:gs,webkitBorderAfterColor:ys,"webkit-border-after-color":ys,webkitBorderBeforeColor:vs,"webkit-border-before-color":vs,webkitBorderEndColor:Ys,"webkit-border-end-color":Ys,webkitBorderStartColor:Es,"webkit-border-start-color":Es,webkitColumnRuleColor:Vs,"webkit-column-rule-color":Vs,webkitMatchNearestMailBlockquoteColor:Rs,"webkit-match-nearest-mail-blockquote-color":Rs,webkitTapHighlightColor:ws,"webkit-tap-highlight-color":ws,webkitTextEmphasisColor:Fs,"webkit-text-emphasis-color":Fs,webkitTextFillColor:Qs,"webkit-text-fill-color":Qs,webkitTextStrokeColor:fs,"webkit-text-stroke-color":fs,width:Hs})}},84907:(Wt,Pt)=>{"use strict";const en=360;const tn=12;const nn=255;Pt.hslToRgb=(Wt,Pt,an)=>{Wt=Wt%en;if(Wt<0){Wt+=en}function f(nn){const rn=(nn+Wt/(en/tn))%tn;const In=Pt*Math.min(an,1-an);return an-In*Math.max(-1,Math.min(rn-3,9-rn,1))}return[f(0),f(8),f(4)].map((Wt=>Math.round(Wt*nn)))}},93322:Wt=>{"use strict";Wt.exports=function getBasicPropertyDescriptor(Wt){return{set:function(Pt){this._setProperty(Wt,Pt)},get:function(){return this.getPropertyValue(Wt)},enumerable:true,configurable:true}}},11140:(Wt,Pt,en)=>{var tn={CSSRule:en(77813).CSSRule,CSSGroupingRule:en(4644).CSSGroupingRule};tn.CSSConditionRule=function CSSConditionRule(){tn.CSSGroupingRule.call(this);this.cssRules=[]};tn.CSSConditionRule.prototype=new tn.CSSGroupingRule;tn.CSSConditionRule.prototype.constructor=tn.CSSConditionRule;tn.CSSConditionRule.prototype.conditionText="";tn.CSSConditionRule.prototype.cssText="";Pt.CSSConditionRule=tn.CSSConditionRule},67294:(Wt,Pt,en)=>{var tn={CSSRule:en(77813).CSSRule,CSSGroupingRule:en(4644).CSSGroupingRule,CSSConditionRule:en(11140).CSSConditionRule};tn.CSSContainerRule=function CSSContainerRule(){tn.CSSConditionRule.call(this)};tn.CSSContainerRule.prototype=new tn.CSSConditionRule;tn.CSSContainerRule.prototype.constructor=tn.CSSContainerRule;tn.CSSContainerRule.prototype.type=17;Object.defineProperties(tn.CSSContainerRule.prototype,{conditionText:{get:function(){return this.containerText},set:function(Wt){this.containerText=Wt},configurable:true,enumerable:true},cssText:{get:function(){var Wt=[];for(var Pt=0,en=this.cssRules.length;Pt{var tn={CSSRule:en(77813).CSSRule,MatcherList:en(4570).MatcherList};tn.CSSDocumentRule=function CSSDocumentRule(){tn.CSSRule.call(this);this.matcher=new tn.MatcherList;this.cssRules=[]};tn.CSSDocumentRule.prototype=new tn.CSSRule;tn.CSSDocumentRule.prototype.constructor=tn.CSSDocumentRule;tn.CSSDocumentRule.prototype.type=10;Object.defineProperty(tn.CSSDocumentRule.prototype,"cssText",{get:function(){var Wt=[];for(var Pt=0,en=this.cssRules.length;Pt{var tn={CSSStyleDeclaration:en(80692).CSSStyleDeclaration,CSSRule:en(77813).CSSRule};tn.CSSFontFaceRule=function CSSFontFaceRule(){tn.CSSRule.call(this);this.style=new tn.CSSStyleDeclaration;this.style.parentRule=this};tn.CSSFontFaceRule.prototype=new tn.CSSRule;tn.CSSFontFaceRule.prototype.constructor=tn.CSSFontFaceRule;tn.CSSFontFaceRule.prototype.type=5;Object.defineProperty(tn.CSSFontFaceRule.prototype,"cssText",{get:function(){return"@font-face {"+this.style.cssText+"}"}});Pt.CSSFontFaceRule=tn.CSSFontFaceRule},4644:(Wt,Pt,en)=>{var tn={CSSRule:en(77813).CSSRule,parse:en(13759).parse};tn.CSSGroupingRule=function CSSGroupingRule(){tn.CSSRule.call(this);this.cssRules=[]};tn.CSSGroupingRule.prototype=new tn.CSSRule;tn.CSSGroupingRule.prototype.constructor=tn.CSSGroupingRule;tn.CSSGroupingRule.prototype.insertRule=function insertRule(Wt,Pt){if(Pt<0||Pt>this.cssRules.length){throw new RangeError("INDEX_SIZE_ERR")}var en=tn.parse(Wt).cssRules[0];en.parentRule=this;this.cssRules.splice(Pt,0,en);return Pt};tn.CSSGroupingRule.prototype.deleteRule=function deleteRule(Wt){if(Wt<0||Wt>=this.cssRules.length){throw new RangeError("INDEX_SIZE_ERR")}this.cssRules.splice(Wt,1)[0].parentRule=null};Pt.CSSGroupingRule=tn.CSSGroupingRule},24455:(Wt,Pt,en)=>{var tn={CSSRule:en(77813).CSSRule};tn.CSSHostRule=function CSSHostRule(){tn.CSSRule.call(this);this.cssRules=[]};tn.CSSHostRule.prototype=new tn.CSSRule;tn.CSSHostRule.prototype.constructor=tn.CSSHostRule;tn.CSSHostRule.prototype.type=1001;Object.defineProperty(tn.CSSHostRule.prototype,"cssText",{get:function(){var Wt=[];for(var Pt=0,en=this.cssRules.length;Pt{var tn={CSSRule:en(77813).CSSRule,CSSStyleSheet:en(94883).CSSStyleSheet,MediaList:en(92044).MediaList};tn.CSSImportRule=function CSSImportRule(){tn.CSSRule.call(this);this.href="";this.media=new tn.MediaList;this.styleSheet=new tn.CSSStyleSheet};tn.CSSImportRule.prototype=new tn.CSSRule;tn.CSSImportRule.prototype.constructor=tn.CSSImportRule;tn.CSSImportRule.prototype.type=3;Object.defineProperty(tn.CSSImportRule.prototype,"cssText",{get:function(){var Wt=this.media.mediaText;return"@import url("+this.href+")"+(Wt?" "+Wt:"")+";"},set:function(Wt){var Pt=0;var en="";var tn="";var nn;for(var an;an=Wt.charAt(Pt);Pt++){switch(an){case" ":case"\t":case"\r":case"\n":case"\f":if(en==="after-import"){en="url"}else{tn+=an}break;case"@":if(!en&&Wt.indexOf("@import",Pt)===Pt){en="after-import";Pt+="import".length;tn=""}break;case"u":if(en==="url"&&Wt.indexOf("url(",Pt)===Pt){nn=Wt.indexOf(")",Pt+1);if(nn===-1){throw Pt+': ")" not found'}Pt+="url(".length;var rn=Wt.slice(Pt,nn);if(rn[0]===rn[rn.length-1]){if(rn[0]==='"'||rn[0]==="'"){rn=rn.slice(1,-1)}}this.href=rn;Pt=nn;en="media"}break;case'"':if(en==="url"){nn=Wt.indexOf('"',Pt+1);if(!nn){throw Pt+": '\"' not found"}this.href=Wt.slice(Pt+1,nn);Pt=nn;en="media"}break;case"'":if(en==="url"){nn=Wt.indexOf("'",Pt+1);if(!nn){throw Pt+': "\'" not found'}this.href=Wt.slice(Pt+1,nn);Pt=nn;en="media"}break;case";":if(en==="media"){if(tn){this.media.mediaText=tn.trim()}}break;default:if(en==="media"){tn+=an}break}}}});Pt.CSSImportRule=tn.CSSImportRule},67529:(Wt,Pt,en)=>{var tn={CSSRule:en(77813).CSSRule,CSSStyleDeclaration:en(80692).CSSStyleDeclaration};tn.CSSKeyframeRule=function CSSKeyframeRule(){tn.CSSRule.call(this);this.keyText="";this.style=new tn.CSSStyleDeclaration;this.style.parentRule=this};tn.CSSKeyframeRule.prototype=new tn.CSSRule;tn.CSSKeyframeRule.prototype.constructor=tn.CSSKeyframeRule;tn.CSSKeyframeRule.prototype.type=8;Object.defineProperty(tn.CSSKeyframeRule.prototype,"cssText",{get:function(){return this.keyText+" {"+this.style.cssText+"} "}});Pt.CSSKeyframeRule=tn.CSSKeyframeRule},46212:(Wt,Pt,en)=>{var tn={CSSRule:en(77813).CSSRule};tn.CSSKeyframesRule=function CSSKeyframesRule(){tn.CSSRule.call(this);this.name="";this.cssRules=[]};tn.CSSKeyframesRule.prototype=new tn.CSSRule;tn.CSSKeyframesRule.prototype.constructor=tn.CSSKeyframesRule;tn.CSSKeyframesRule.prototype.type=7;Object.defineProperty(tn.CSSKeyframesRule.prototype,"cssText",{get:function(){var Wt=[];for(var Pt=0,en=this.cssRules.length;Pt{var tn={CSSRule:en(77813).CSSRule,CSSGroupingRule:en(4644).CSSGroupingRule,CSSConditionRule:en(11140).CSSConditionRule,MediaList:en(92044).MediaList};tn.CSSMediaRule=function CSSMediaRule(){tn.CSSConditionRule.call(this);this.media=new tn.MediaList};tn.CSSMediaRule.prototype=new tn.CSSConditionRule;tn.CSSMediaRule.prototype.constructor=tn.CSSMediaRule;tn.CSSMediaRule.prototype.type=4;Object.defineProperties(tn.CSSMediaRule.prototype,{conditionText:{get:function(){return this.media.mediaText},set:function(Wt){this.media.mediaText=Wt},configurable:true,enumerable:true},cssText:{get:function(){var Wt=[];for(var Pt=0,en=this.cssRules.length;Pt{var en={};en.CSSRule=function CSSRule(){this.parentRule=null;this.parentStyleSheet=null};en.CSSRule.UNKNOWN_RULE=0;en.CSSRule.STYLE_RULE=1;en.CSSRule.CHARSET_RULE=2;en.CSSRule.IMPORT_RULE=3;en.CSSRule.MEDIA_RULE=4;en.CSSRule.FONT_FACE_RULE=5;en.CSSRule.PAGE_RULE=6;en.CSSRule.KEYFRAMES_RULE=7;en.CSSRule.KEYFRAME_RULE=8;en.CSSRule.MARGIN_RULE=9;en.CSSRule.NAMESPACE_RULE=10;en.CSSRule.COUNTER_STYLE_RULE=11;en.CSSRule.SUPPORTS_RULE=12;en.CSSRule.DOCUMENT_RULE=13;en.CSSRule.FONT_FEATURE_VALUES_RULE=14;en.CSSRule.VIEWPORT_RULE=15;en.CSSRule.REGION_STYLE_RULE=16;en.CSSRule.CONTAINER_RULE=17;en.CSSRule.STARTING_STYLE_RULE=1002;en.CSSRule.prototype={constructor:en.CSSRule};Pt.CSSRule=en.CSSRule},30192:(Wt,Pt,en)=>{var tn={CSSRule:en(77813).CSSRule};tn.CSSStartingStyleRule=function CSSStartingStyleRule(){tn.CSSRule.call(this);this.cssRules=[]};tn.CSSStartingStyleRule.prototype=new tn.CSSRule;tn.CSSStartingStyleRule.prototype.constructor=tn.CSSStartingStyleRule;tn.CSSStartingStyleRule.prototype.type=1002;Object.defineProperty(tn.CSSStartingStyleRule.prototype,"cssText",{get:function(){var Wt=[];for(var Pt=0,en=this.cssRules.length;Pt{var tn={};tn.CSSStyleDeclaration=function CSSStyleDeclaration(){this.length=0;this.parentRule=null;this._importants={}};tn.CSSStyleDeclaration.prototype={constructor:tn.CSSStyleDeclaration,getPropertyValue:function(Wt){return this[Wt]||""},setProperty:function(Wt,Pt,en){if(this[Wt]){var tn=Array.prototype.indexOf.call(this,Wt);if(tn<0){this[this.length]=Wt;this.length++}}else{this[this.length]=Wt;this.length++}this[Wt]=Pt+"";this._importants[Wt]=en},removeProperty:function(Wt){if(!(Wt in this)){return""}var Pt=Array.prototype.indexOf.call(this,Wt);if(Pt<0){return""}var en=this[Wt];this[Wt]="";Array.prototype.splice.call(this,Pt,1);return en},getPropertyCSSValue:function(){},getPropertyPriority:function(Wt){return this._importants[Wt]||""},getPropertyShorthand:function(){},isPropertyImplicit:function(){},get cssText(){var Wt=[];for(var Pt=0,en=this.length;Pt{var tn={CSSStyleDeclaration:en(80692).CSSStyleDeclaration,CSSRule:en(77813).CSSRule};tn.CSSStyleRule=function CSSStyleRule(){tn.CSSRule.call(this);this.selectorText="";this.style=new tn.CSSStyleDeclaration;this.style.parentRule=this};tn.CSSStyleRule.prototype=new tn.CSSRule;tn.CSSStyleRule.prototype.constructor=tn.CSSStyleRule;tn.CSSStyleRule.prototype.type=1;Object.defineProperty(tn.CSSStyleRule.prototype,"cssText",{get:function(){var Wt;if(this.selectorText){Wt=this.selectorText+" {"+this.style.cssText+"}"}else{Wt=""}return Wt},set:function(Wt){var Pt=tn.CSSStyleRule.parse(Wt);this.style=Pt.style;this.selectorText=Pt.selectorText}});tn.CSSStyleRule.parse=function(Wt){var Pt=0;var en="selector";var nn;var an=Pt;var rn="";var In={selector:true,value:true};var sn=new tn.CSSStyleRule;var on,cn="";for(var dn;dn=Wt.charAt(Pt);Pt++){switch(dn){case" ":case"\t":case"\r":case"\n":case"\f":if(In[en]){switch(Wt.charAt(Pt-1)){case" ":case"\t":case"\r":case"\n":case"\f":break;default:rn+=" ";break}}break;case'"':an=Pt+1;nn=Wt.indexOf('"',an)+1;if(!nn){throw'" is missing'}rn+=Wt.slice(Pt,nn);Pt=nn-1;break;case"'":an=Pt+1;nn=Wt.indexOf("'",an)+1;if(!nn){throw"' is missing"}rn+=Wt.slice(Pt,nn);Pt=nn-1;break;case"/":if(Wt.charAt(Pt+1)==="*"){Pt+=2;nn=Wt.indexOf("*/",Pt);if(nn===-1){throw new SyntaxError("Missing */")}else{Pt=nn+1}}else{rn+=dn}break;case"{":if(en==="selector"){sn.selectorText=rn.trim();rn="";en="name"}break;case":":if(en==="name"){on=rn.trim();rn="";en="value"}else{rn+=dn}break;case"!":if(en==="value"&&Wt.indexOf("!important",Pt)===Pt){cn="important";Pt+="important".length}else{rn+=dn}break;case";":if(en==="value"){sn.style.setProperty(on,rn.trim(),cn);cn="";rn="";en="name"}else{rn+=dn}break;case"}":if(en==="value"){sn.style.setProperty(on,rn.trim(),cn);cn="";rn=""}else if(en==="name"){break}else{rn+=dn}en="selector";break;default:rn+=dn;break}}return sn};Pt.CSSStyleRule=tn.CSSStyleRule},94883:(Wt,Pt,en)=>{var tn={StyleSheet:en(84742).StyleSheet,CSSStyleRule:en(59060).CSSStyleRule};tn.CSSStyleSheet=function CSSStyleSheet(){tn.StyleSheet.call(this);this.cssRules=[]};tn.CSSStyleSheet.prototype=new tn.StyleSheet;tn.CSSStyleSheet.prototype.constructor=tn.CSSStyleSheet;tn.CSSStyleSheet.prototype.insertRule=function(Wt,Pt){if(Pt<0||Pt>this.cssRules.length){throw new RangeError("INDEX_SIZE_ERR")}var en=tn.parse(Wt).cssRules[0];en.parentStyleSheet=this;this.cssRules.splice(Pt,0,en);return Pt};tn.CSSStyleSheet.prototype.deleteRule=function(Wt){if(Wt<0||Wt>=this.cssRules.length){throw new RangeError("INDEX_SIZE_ERR")}this.cssRules.splice(Wt,1)};tn.CSSStyleSheet.prototype.toString=function(){var Wt="";var Pt=this.cssRules;for(var en=0;en{var tn={CSSRule:en(77813).CSSRule,CSSGroupingRule:en(4644).CSSGroupingRule,CSSConditionRule:en(11140).CSSConditionRule};tn.CSSSupportsRule=function CSSSupportsRule(){tn.CSSConditionRule.call(this)};tn.CSSSupportsRule.prototype=new tn.CSSConditionRule;tn.CSSSupportsRule.prototype.constructor=tn.CSSSupportsRule;tn.CSSSupportsRule.prototype.type=12;Object.defineProperty(tn.CSSSupportsRule.prototype,"cssText",{get:function(){var Wt=[];for(var Pt=0,en=this.cssRules.length;Pt{var en={};en.CSSValue=function CSSValue(){};en.CSSValue.prototype={constructor:en.CSSValue,set cssText(Wt){var Pt=this._getConstructorName();throw new Error('DOMException: property "cssText" of "'+Pt+'" is readonly and can not be replaced with "'+Wt+'"!')},get cssText(){var Wt=this._getConstructorName();throw new Error('getter "cssText" of "'+Wt+'" is not implemented!')},_getConstructorName:function(){var Wt=this.constructor.toString(),Pt=Wt.match(/function\s([^\(]+)/),en=Pt[1];return en}};Pt.CSSValue=en.CSSValue},73648:(Wt,Pt,en)=>{var tn={CSSValue:en(57366).CSSValue};tn.CSSValueExpression=function CSSValueExpression(Wt,Pt){this._token=Wt;this._idx=Pt};tn.CSSValueExpression.prototype=new tn.CSSValue;tn.CSSValueExpression.prototype.constructor=tn.CSSValueExpression;tn.CSSValueExpression.prototype.parse=function(){var Wt=this._token,Pt=this._idx;var en="",tn="",nn="",an,rn=[];for(;;++Pt){en=Wt.charAt(Pt);if(en===""){nn="css expression error: unfinished expression!";break}switch(en){case"(":rn.push(en);tn+=en;break;case")":rn.pop(en);tn+=en;break;case"/":if(an=this._parseJSComment(Wt,Pt)){if(an.error){nn="css expression error: unfinished comment in expression!"}else{Pt=an.idx}}else if(an=this._parseJSRexExp(Wt,Pt)){Pt=an.idx;tn+=an.text}else{tn+=en}break;case"'":case'"':an=this._parseJSString(Wt,Pt,en);if(an){Pt=an.idx;tn+=an.text}else{tn+=en}break;default:tn+=en;break}if(nn){break}if(rn.length===0){break}}var In;if(nn){In={error:nn}}else{In={idx:Pt,expression:tn}}return In};tn.CSSValueExpression.prototype._parseJSComment=function(Wt,Pt){var en=Wt.charAt(Pt+1),tn;if(en==="/"||en==="*"){var nn=Pt,an,rn;if(en==="/"){rn="\n"}else if(en==="*"){rn="*/"}an=Wt.indexOf(rn,nn+1+1);if(an!==-1){an=an+rn.length-1;tn=Wt.substring(Pt,an+1);return{idx:an,text:tn}}else{var In="css expression error: unfinished comment in expression!";return{error:In}}}else{return false}};tn.CSSValueExpression.prototype._parseJSString=function(Wt,Pt,en){var tn=this._findMatchedIdx(Wt,Pt,en),nn;if(tn===-1){return false}else{nn=Wt.substring(Pt,tn+en.length);return{idx:tn,text:nn}}};tn.CSSValueExpression.prototype._parseJSRexExp=function(Wt,Pt){var en=Wt.substring(0,Pt).replace(/\s+$/,""),tn=[/^$/,/\($/,/\[$/,/\!$/,/\+$/,/\-$/,/\*$/,/\/\s+/,/\%$/,/\=$/,/\>$/,/<$/,/\&$/,/\|$/,/\^$/,/\~$/,/\?$/,/\,$/,/delete$/,/in$/,/instanceof$/,/new$/,/typeof$/,/void$/];var nn=tn.some((function(Wt){return Wt.test(en)}));if(!nn){return false}else{var an="/";return this._parseJSString(Wt,Pt,an)}};tn.CSSValueExpression.prototype._findMatchedIdx=function(Wt,Pt,en){var tn=Pt,nn;var an=-1;while(true){nn=Wt.indexOf(en,tn+1);if(nn===-1){nn=an;break}else{var rn=Wt.substring(Pt+1,nn),In=rn.match(/\\+$/);if(!In||In[0]%2===0){break}else{tn=nn}}}var sn=Wt.indexOf("\n",Pt+1);if(sn{var en={};en.MatcherList=function MatcherList(){this.length=0};en.MatcherList.prototype={constructor:en.MatcherList,get matcherText(){return Array.prototype.join.call(this,", ")},set matcherText(Wt){var Pt=Wt.split(",");var en=this.length=Pt.length;for(var tn=0;tn{var en={};en.MediaList=function MediaList(){this.length=0};en.MediaList.prototype={constructor:en.MediaList,get mediaText(){return Array.prototype.join.call(this,", ")},set mediaText(Wt){var Pt=Wt.split(",");var en=this.length=Pt.length;for(var tn=0;tn{var en={};en.StyleSheet=function StyleSheet(){this.parentStyleSheet=null};Pt.StyleSheet=en.StyleSheet},96849:(Wt,Pt,en)=>{var tn={CSSStyleSheet:en(94883).CSSStyleSheet,CSSRule:en(77813).CSSRule,CSSStyleRule:en(59060).CSSStyleRule,CSSGroupingRule:en(4644).CSSGroupingRule,CSSConditionRule:en(11140).CSSConditionRule,CSSMediaRule:en(11049).CSSMediaRule,CSSContainerRule:en(67294).CSSContainerRule,CSSSupportsRule:en(90673).CSSSupportsRule,CSSStyleDeclaration:en(80692).CSSStyleDeclaration,CSSKeyframeRule:en(67529).CSSKeyframeRule,CSSKeyframesRule:en(46212).CSSKeyframesRule};tn.clone=function clone(Wt){var Pt=new tn.CSSStyleSheet;var en=Wt.cssRules;if(!en){return Pt}for(var nn=0,an=en.length;nn{"use strict";Pt.CSSStyleDeclaration=en(80692).CSSStyleDeclaration;Pt.CSSRule=en(77813).CSSRule;Pt.CSSGroupingRule=en(4644).CSSGroupingRule;Pt.CSSConditionRule=en(11140).CSSConditionRule;Pt.CSSStyleRule=en(59060).CSSStyleRule;Pt.MediaList=en(92044).MediaList;Pt.CSSMediaRule=en(11049).CSSMediaRule;Pt.CSSContainerRule=en(67294).CSSContainerRule;Pt.CSSSupportsRule=en(90673).CSSSupportsRule;Pt.CSSImportRule=en(99420).CSSImportRule;Pt.CSSFontFaceRule=en(57865).CSSFontFaceRule;Pt.CSSHostRule=en(24455).CSSHostRule;Pt.CSSStartingStyleRule=en(30192).CSSStartingStyleRule;Pt.StyleSheet=en(84742).StyleSheet;Pt.CSSStyleSheet=en(94883).CSSStyleSheet;Pt.CSSKeyframesRule=en(46212).CSSKeyframesRule;Pt.CSSKeyframeRule=en(67529).CSSKeyframeRule;Pt.MatcherList=en(4570).MatcherList;Pt.CSSDocumentRule=en(72696).CSSDocumentRule;Pt.CSSValue=en(57366).CSSValue;Pt.CSSValueExpression=en(73648).CSSValueExpression;Pt.parse=en(13759).parse;Pt.clone=en(96849).clone},13759:(Wt,Pt,en)=>{var tn={};tn.parse=function parse(Wt){var Pt=0;var en="before-selector";var nn;var an="";var rn=0;var In={selector:true,value:true,"value-parenthesis":true,atRule:true,"importRule-begin":true,importRule:true,atBlock:true,containerBlock:true,conditionBlock:true,"documentRule-begin":true};var sn=new tn.CSSStyleSheet;var on=sn;var cn;var dn=[];var un=false;var pn;var mn,bn="",Gn,hn,Zn,An,Wn,Nn,gn,yn,vn,Yn;var En=/@(-(?:\w+-)+)?keyframes/g;var parseError=function(en){var tn=Wt.substring(0,Pt).split("\n");var nn=tn.length;var an=tn.pop().length+1;var rn=new Error(en+" (line "+nn+", char "+an+")");rn.line=nn;rn["char"]=an;rn.styleSheet=sn;throw rn};for(var Vn;Vn=Wt.charAt(Pt);Pt++){switch(Vn){case" ":case"\t":case"\r":case"\n":case"\f":if(In[en]){an+=Vn}break;case'"':nn=Pt+1;do{nn=Wt.indexOf('"',nn)+1;if(!nn){parseError('Unmatched "')}}while(Wt[nn-2]==="\\");an+=Wt.slice(Pt,nn);Pt=nn-1;switch(en){case"before-value":en="value";break;case"importRule-begin":en="importRule";break}break;case"'":nn=Pt+1;do{nn=Wt.indexOf("'",nn)+1;if(!nn){parseError("Unmatched '")}}while(Wt[nn-2]==="\\");an+=Wt.slice(Pt,nn);Pt=nn-1;switch(en){case"before-value":en="value";break;case"importRule-begin":en="importRule";break}break;case"/":if(Wt.charAt(Pt+1)==="*"){Pt+=2;nn=Wt.indexOf("*/",Pt);if(nn===-1){parseError("Missing */")}else{Pt=nn+1}}else{an+=Vn}if(en==="importRule-begin"){an+=" ";en="importRule"}break;case"@":if(Wt.indexOf("@-moz-document",Pt)===Pt){en="documentRule-begin";yn=new tn.CSSDocumentRule;yn.__starts=Pt;Pt+="-moz-document".length;an="";break}else if(Wt.indexOf("@media",Pt)===Pt){en="atBlock";hn=new tn.CSSMediaRule;hn.__starts=Pt;Pt+="media".length;an="";break}else if(Wt.indexOf("@container",Pt)===Pt){en="containerBlock";Zn=new tn.CSSContainerRule;Zn.__starts=Pt;Pt+="container".length;an="";break}else if(Wt.indexOf("@supports",Pt)===Pt){en="conditionBlock";An=new tn.CSSSupportsRule;An.__starts=Pt;Pt+="supports".length;an="";break}else if(Wt.indexOf("@host",Pt)===Pt){en="hostRule-begin";Pt+="host".length;vn=new tn.CSSHostRule;vn.__starts=Pt;an="";break}else if(Wt.indexOf("@starting-style",Pt)===Pt){en="startingStyleRule-begin";Pt+="starting-style".length;Yn=new tn.CSSStartingStyleRule;Yn.__starts=Pt;an="";break}else if(Wt.indexOf("@import",Pt)===Pt){en="importRule-begin";Pt+="import".length;an+="@import";break}else if(Wt.indexOf("@font-face",Pt)===Pt){en="fontFaceRule-begin";Pt+="font-face".length;Nn=new tn.CSSFontFaceRule;Nn.__starts=Pt;an="";break}else{En.lastIndex=Pt;var Rn=En.exec(Wt);if(Rn&&Rn.index===Pt){en="keyframesRule-begin";gn=new tn.CSSKeyframesRule;gn.__starts=Pt;gn._vendorPrefix=Rn[1];Pt+=Rn[0].length-1;an="";break}else if(en==="selector"){en="atRule"}}an+=Vn;break;case"{":if(en==="selector"||en==="atRule"){Gn.selectorText=an.trim();Gn.style.__starts=Pt;an="";en="before-name"}else if(en==="atBlock"){hn.media.mediaText=an.trim();if(cn){dn.push(cn)}on=cn=hn;hn.parentStyleSheet=sn;an="";en="before-selector"}else if(en==="containerBlock"){Zn.containerText=an.trim();if(cn){dn.push(cn)}on=cn=Zn;Zn.parentStyleSheet=sn;an="";en="before-selector"}else if(en==="conditionBlock"){An.conditionText=an.trim();if(cn){dn.push(cn)}on=cn=An;An.parentStyleSheet=sn;an="";en="before-selector"}else if(en==="hostRule-begin"){if(cn){dn.push(cn)}on=cn=vn;vn.parentStyleSheet=sn;an="";en="before-selector"}else if(en==="startingStyleRule-begin"){if(cn){dn.push(cn)}on=cn=Yn;Yn.parentStyleSheet=sn;an="";en="before-selector"}else if(en==="fontFaceRule-begin"){if(cn){Nn.parentRule=cn}Nn.parentStyleSheet=sn;Gn=Nn;an="";en="before-name"}else if(en==="keyframesRule-begin"){gn.name=an.trim();if(cn){dn.push(cn);gn.parentRule=cn}gn.parentStyleSheet=sn;on=cn=gn;an="";en="keyframeRule-begin"}else if(en==="keyframeRule-begin"){Gn=new tn.CSSKeyframeRule;Gn.keyText=an.trim();Gn.__starts=Pt;an="";en="before-name"}else if(en==="documentRule-begin"){yn.matcher.matcherText=an.trim();if(cn){dn.push(cn);yn.parentRule=cn}on=cn=yn;yn.parentStyleSheet=sn;an="";en="before-selector"}break;case":":if(en==="name"){mn=an.trim();an="";en="before-value"}else{an+=Vn}break;case"(":if(en==="value"){if(an.trim()==="expression"){var wn=new tn.CSSValueExpression(Wt,Pt).parse();if(wn.error){parseError(wn.error)}else{an+=wn.expression;Pt=wn.idx}}else{en="value-parenthesis";rn=1;an+=Vn}}else if(en==="value-parenthesis"){rn++;an+=Vn}else{an+=Vn}break;case")":if(en==="value-parenthesis"){rn--;if(rn===0)en="value"}an+=Vn;break;case"!":if(en==="value"&&Wt.indexOf("!important",Pt)===Pt){bn="important";Pt+="important".length}else{an+=Vn}break;case";":switch(en){case"value":Gn.style.setProperty(mn,an.trim(),bn);bn="";an="";en="before-name";break;case"atRule":an="";en="before-selector";break;case"importRule":Wn=new tn.CSSImportRule;Wn.parentStyleSheet=Wn.styleSheet.parentStyleSheet=sn;Wn.cssText=an+Vn;sn.cssRules.push(Wn);an="";en="before-selector";break;default:an+=Vn;break}break;case"}":switch(en){case"value":Gn.style.setProperty(mn,an.trim(),bn);bn="";case"before-name":case"name":Gn.__ends=Pt+1;if(cn){Gn.parentRule=cn}Gn.parentStyleSheet=sn;on.cssRules.push(Gn);an="";if(on.constructor===tn.CSSKeyframesRule){en="keyframeRule-begin"}else{en="before-selector"}break;case"keyframeRule-begin":case"before-selector":case"selector":if(!cn){parseError("Unexpected }")}un=dn.length>0;while(dn.length>0){cn=dn.pop();if(cn.constructor.name==="CSSMediaRule"||cn.constructor.name==="CSSSupportsRule"||cn.constructor.name==="CSSContainerRule"||cn.constructor.name==="CSSStartingStyleRule"){pn=on;on=cn;on.cssRules.push(pn);break}if(dn.length===0){un=false}}if(!un){on.__ends=Pt+1;sn.cssRules.push(on);on=sn;cn=null}an="";en="before-selector";break}break;default:switch(en){case"before-selector":en="selector";Gn=new tn.CSSStyleRule;Gn.__starts=Pt;break;case"before-name":en="name";break;case"before-value":en="value";break;case"importRule-begin":en="importRule";break}an+=Vn;break}}return sn};Pt.parse=tn.parse;tn.CSSStyleSheet=en(94883).CSSStyleSheet;tn.CSSStyleRule=en(59060).CSSStyleRule;tn.CSSImportRule=en(99420).CSSImportRule;tn.CSSGroupingRule=en(4644).CSSGroupingRule;tn.CSSMediaRule=en(11049).CSSMediaRule;tn.CSSContainerRule=en(67294).CSSContainerRule;tn.CSSConditionRule=en(11140).CSSConditionRule;tn.CSSSupportsRule=en(90673).CSSSupportsRule;tn.CSSFontFaceRule=en(57865).CSSFontFaceRule;tn.CSSHostRule=en(24455).CSSHostRule;tn.CSSStartingStyleRule=en(30192).CSSStartingStyleRule;tn.CSSStyleDeclaration=en(80692).CSSStyleDeclaration;tn.CSSKeyframeRule=en(67529).CSSKeyframeRule;tn.CSSKeyframesRule=en(46212).CSSKeyframesRule;tn.CSSValueExpression=en(73648).CSSValueExpression;tn.CSSDocumentRule=en(72696).CSSDocumentRule},32946:(Wt,Pt,en)=>{"use strict";const tn=en(59344);const{parseURL:nn,serializeURL:an,percentDecodeString:rn}=en(78012);const{stripLeadingAndTrailingASCIIWhitespace:In,isomorphicDecode:sn,forgivingBase64Decode:on}=en(92424);Wt.exports=Pt=>{const en=nn(Pt);if(en===null){return null}return Wt.exports.fromURLRecord(en)};Wt.exports.fromURLRecord=Wt=>{if(Wt.scheme!=="data"){return null}const Pt=an(Wt,true).substring("data:".length);let en=0;let nn="";while(en{"use strict";Pt.stripLeadingAndTrailingASCIIWhitespace=Wt=>Wt.replace(/^[ \t\n\f\r]+/u,"").replace(/[ \t\n\f\r]+$/u,"");Pt.isomorphicDecode=Wt=>Array.from(Wt,(Wt=>String.fromCodePoint(Wt))).join("");Pt.forgivingBase64Decode=Wt=>{let Pt;try{Pt=atob(Wt)}catch{return null}return Uint8Array.from(Pt,(Wt=>Wt.codePointAt(0)))}},6110:(Wt,Pt,en)=>{Pt.formatArgs=formatArgs;Pt.save=save;Pt.load=load;Pt.useColors=useColors;Pt.storage=localstorage();Pt.destroy=(()=>{let Wt=false;return()=>{if(!Wt){Wt=true;console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}}})();Pt.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"];function useColors(){if(typeof window!=="undefined"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)){return true}if(typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)){return false}let Wt;return typeof document!=="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!=="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!=="undefined"&&navigator.userAgent&&(Wt=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(Wt[1],10)>=31||typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function formatArgs(Pt){Pt[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+Pt[0]+(this.useColors?"%c ":" ")+"+"+Wt.exports.humanize(this.diff);if(!this.useColors){return}const en="color: "+this.color;Pt.splice(1,0,en,"color: inherit");let tn=0;let nn=0;Pt[0].replace(/%[a-zA-Z%]/g,(Wt=>{if(Wt==="%%"){return}tn++;if(Wt==="%c"){nn=tn}}));Pt.splice(nn,0,en)}Pt.log=console.debug||console.log||(()=>{});function save(Wt){try{if(Wt){Pt.storage.setItem("debug",Wt)}else{Pt.storage.removeItem("debug")}}catch(Wt){}}function load(){let Wt;try{Wt=Pt.storage.getItem("debug")}catch(Wt){}if(!Wt&&typeof process!=="undefined"&&"env"in process){Wt=process.env.DEBUG}return Wt}function localstorage(){try{return localStorage}catch(Wt){}}Wt.exports=en(40897)(Pt);const{formatters:tn}=Wt.exports;tn.j=function(Wt){try{return JSON.stringify(Wt)}catch(Wt){return"[UnexpectedJSONParseError]: "+Wt.message}}},40897:(Wt,Pt,en)=>{function setup(Wt){createDebug.debug=createDebug;createDebug.default=createDebug;createDebug.coerce=coerce;createDebug.disable=disable;createDebug.enable=enable;createDebug.enabled=enabled;createDebug.humanize=en(70744);createDebug.destroy=destroy;Object.keys(Wt).forEach((Pt=>{createDebug[Pt]=Wt[Pt]}));createDebug.names=[];createDebug.skips=[];createDebug.formatters={};function selectColor(Wt){let Pt=0;for(let en=0;en{if(Pt==="%%"){return"%"}an++;const nn=createDebug.formatters[tn];if(typeof nn==="function"){const tn=Wt[an];Pt=nn.call(en,tn);Wt.splice(an,1);an--}return Pt}));createDebug.formatArgs.call(en,Wt);const rn=en.log||createDebug.log;rn.apply(en,Wt)}debug.namespace=Wt;debug.useColors=createDebug.useColors();debug.color=createDebug.selectColor(Wt);debug.extend=extend;debug.destroy=createDebug.destroy;Object.defineProperty(debug,"enabled",{enumerable:true,configurable:false,get:()=>{if(en!==null){return en}if(tn!==createDebug.namespaces){tn=createDebug.namespaces;nn=createDebug.enabled(Wt)}return nn},set:Wt=>{en=Wt}});if(typeof createDebug.init==="function"){createDebug.init(debug)}return debug}function extend(Wt,Pt){const en=createDebug(this.namespace+(typeof Pt==="undefined"?":":Pt)+Wt);en.log=this.log;return en}function enable(Wt){createDebug.save(Wt);createDebug.namespaces=Wt;createDebug.names=[];createDebug.skips=[];let Pt;const en=(typeof Wt==="string"?Wt:"").split(/[\s,]+/);const tn=en.length;for(Pt=0;Pt"-"+Wt))].join(",");createDebug.enable("");return Wt}function enabled(Wt){if(Wt[Wt.length-1]==="*"){return true}let Pt;let en;for(Pt=0,en=createDebug.skips.length;Pt{if(typeof process==="undefined"||process.type==="renderer"||process.browser===true||process.__nwjs){Wt.exports=en(6110)}else{Wt.exports=en(95108)}},95108:(Wt,Pt,en)=>{const tn=en(52018);const nn=en(39023);Pt.init=init;Pt.log=log;Pt.formatArgs=formatArgs;Pt.save=save;Pt.load=load;Pt.useColors=useColors;Pt.destroy=nn.deprecate((()=>{}),"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Pt.colors=[6,2,3,4,5,1];try{const Wt=en(21450);if(Wt&&(Wt.stderr||Wt).level>=2){Pt.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221]}}catch(Wt){}Pt.inspectOpts=Object.keys(process.env).filter((Wt=>/^debug_/i.test(Wt))).reduce(((Wt,Pt)=>{const en=Pt.substring(6).toLowerCase().replace(/_([a-z])/g,((Wt,Pt)=>Pt.toUpperCase()));let tn=process.env[Pt];if(/^(yes|on|true|enabled)$/i.test(tn)){tn=true}else if(/^(no|off|false|disabled)$/i.test(tn)){tn=false}else if(tn==="null"){tn=null}else{tn=Number(tn)}Wt[en]=tn;return Wt}),{});function useColors(){return"colors"in Pt.inspectOpts?Boolean(Pt.inspectOpts.colors):tn.isatty(process.stderr.fd)}function formatArgs(Pt){const{namespace:en,useColors:tn}=this;if(tn){const tn=this.color;const nn="[3"+(tn<8?tn:"8;5;"+tn);const an=` ${nn};1m${en} `;Pt[0]=an+Pt[0].split("\n").join("\n"+an);Pt.push(nn+"m+"+Wt.exports.humanize(this.diff)+"")}else{Pt[0]=getDate()+en+" "+Pt[0]}}function getDate(){if(Pt.inspectOpts.hideDate){return""}return(new Date).toISOString()+" "}function log(...Wt){return process.stderr.write(nn.formatWithOptions(Pt.inspectOpts,...Wt)+"\n")}function save(Wt){if(Wt){process.env.DEBUG=Wt}else{delete process.env.DEBUG}}function load(){return process.env.DEBUG}function init(Wt){Wt.inspectOpts={};const en=Object.keys(Pt.inspectOpts);for(let tn=0;tnWt.trim())).join(" ")};an.O=function(Wt){this.inspectOpts.colors=this.useColors;return nn.inspect(Wt,this.inspectOpts)}},92183:function(Wt){(function(Pt){"use strict"; +/*! + * decimal.js v10.4.3 + * An arbitrary-precision Decimal type for JavaScript. + * https://github.com/MikeMcl/decimal.js + * Copyright (c) 2022 Michael Mclaughlin + * MIT Licence + */var en=9e15,tn=1e9,nn="0123456789abcdef",an="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",rn="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",In={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-en,maxE:en,crypto:false},sn,on,cn,dn,un=true,pn="[DecimalError] ",mn=pn+"Invalid argument: ",bn=pn+"Precision limit exceeded",Gn=pn+"crypto unavailable",hn="[object Decimal]",Zn=Math.floor,An=Math.pow,Wn=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,Nn=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,gn=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,yn=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,vn=1e7,Yn=7,En=9007199254740991,Vn=an.length-1,Rn=rn.length-1,wn={toStringTag:hn};wn.absoluteValue=wn.abs=function(){var Wt=new this.constructor(this);if(Wt.s<0)Wt.s=1;return finalise(Wt)};wn.ceil=function(){return finalise(new this.constructor(this),this.e+1,2)};wn.clampedTo=wn.clamp=function(Wt,Pt){var en,tn=this,nn=tn.constructor;Wt=new nn(Wt);Pt=new nn(Pt);if(!Wt.s||!Pt.s)return new nn(NaN);if(Wt.gt(Pt))throw Error(mn+Pt);en=tn.cmp(Wt);return en<0?Wt:tn.cmp(Pt)>0?Pt:new nn(tn)};wn.comparedTo=wn.cmp=function(Wt){var Pt,en,tn,nn,an=this,rn=an.d,In=(Wt=new an.constructor(Wt)).d,sn=an.s,on=Wt.s;if(!rn||!In){return!sn||!on?NaN:sn!==on?sn:rn===In?0:!rn^sn<0?1:-1}if(!rn[0]||!In[0])return rn[0]?sn:In[0]?-on:0;if(sn!==on)return sn;if(an.e!==Wt.e)return an.e>Wt.e^sn<0?1:-1;tn=rn.length;nn=In.length;for(Pt=0,en=tnIn[Pt]^sn<0?1:-1}return tn===nn?0:tn>nn^sn<0?1:-1};wn.cosine=wn.cos=function(){var Wt,Pt,en=this,tn=en.constructor;if(!en.d)return new tn(NaN);if(!en.d[0])return new tn(1);Wt=tn.precision;Pt=tn.rounding;tn.precision=Wt+Math.max(en.e,en.sd())+Yn;tn.rounding=1;en=cosine(tn,toLessThanHalfPi(tn,en));tn.precision=Wt;tn.rounding=Pt;return finalise(dn==2||dn==3?en.neg():en,Wt,Pt,true)};wn.cubeRoot=wn.cbrt=function(){var Wt,Pt,en,tn,nn,an,rn,In,sn,on,cn=this,dn=cn.constructor;if(!cn.isFinite()||cn.isZero())return new dn(cn);un=false;an=cn.s*An(cn.s*cn,1/3);if(!an||Math.abs(an)==1/0){en=digitsToString(cn.d);Wt=cn.e;if(an=(Wt-en.length+1)%3)en+=an==1||an==-2?"0":"00";an=An(en,1/3);Wt=Zn((Wt+1)/3)-(Wt%3==(Wt<0?-1:2));if(an==1/0){en="5e"+Wt}else{en=an.toExponential();en=en.slice(0,en.indexOf("e")+1)+Wt}tn=new dn(en);tn.s=cn.s}else{tn=new dn(an.toString())}rn=(Wt=dn.precision)+3;for(;;){In=tn;sn=In.times(In).times(In);on=sn.plus(cn);tn=Fn(on.plus(cn).times(In),on.plus(sn),rn+2,1);if(digitsToString(In.d).slice(0,rn)===(en=digitsToString(tn.d)).slice(0,rn)){en=en.slice(rn-3,rn+1);if(en=="9999"||!nn&&en=="4999"){if(!nn){finalise(In,Wt+1,0);if(In.times(In).times(In).eq(cn)){tn=In;break}}rn+=4;nn=1}else{if(!+en||!+en.slice(1)&&en.charAt(0)=="5"){finalise(tn,Wt+1,1);Pt=!tn.times(tn).times(tn).eq(cn)}break}}}un=true;return finalise(tn,Wt,dn.rounding,Pt)};wn.decimalPlaces=wn.dp=function(){var Wt,Pt=this.d,en=NaN;if(Pt){Wt=Pt.length-1;en=(Wt-Zn(this.e/Yn))*Yn;Wt=Pt[Wt];if(Wt)for(;Wt%10==0;Wt/=10)en--;if(en<0)en=0}return en};wn.dividedBy=wn.div=function(Wt){return Fn(this,new this.constructor(Wt))};wn.dividedToIntegerBy=wn.divToInt=function(Wt){var Pt=this,en=Pt.constructor;return finalise(Fn(Pt,new en(Wt),0,1,1),en.precision,en.rounding)};wn.equals=wn.eq=function(Wt){return this.cmp(Wt)===0};wn.floor=function(){return finalise(new this.constructor(this),this.e+1,3)};wn.greaterThan=wn.gt=function(Wt){return this.cmp(Wt)>0};wn.greaterThanOrEqualTo=wn.gte=function(Wt){var Pt=this.cmp(Wt);return Pt==1||Pt===0};wn.hyperbolicCosine=wn.cosh=function(){var Wt,Pt,en,tn,nn,an=this,rn=an.constructor,In=new rn(1);if(!an.isFinite())return new rn(an.s?1/0:NaN);if(an.isZero())return In;en=rn.precision;tn=rn.rounding;rn.precision=en+Math.max(an.e,an.sd())+4;rn.rounding=1;nn=an.d.length;if(nn<32){Wt=Math.ceil(nn/3);Pt=(1/tinyPow(4,Wt)).toString()}else{Wt=16;Pt="2.3283064365386962890625e-10"}an=taylorSeries(rn,1,an.times(Pt),new rn(1),true);var sn,on=Wt,cn=new rn(8);for(;on--;){sn=an.times(an);an=In.minus(sn.times(cn.minus(sn.times(cn))))}return finalise(an,rn.precision=en,rn.rounding=tn,true)};wn.hyperbolicSine=wn.sinh=function(){var Wt,Pt,en,tn,nn=this,an=nn.constructor;if(!nn.isFinite()||nn.isZero())return new an(nn);Pt=an.precision;en=an.rounding;an.precision=Pt+Math.max(nn.e,nn.sd())+4;an.rounding=1;tn=nn.d.length;if(tn<3){nn=taylorSeries(an,2,nn,nn,true)}else{Wt=1.4*Math.sqrt(tn);Wt=Wt>16?16:Wt|0;nn=nn.times(1/tinyPow(5,Wt));nn=taylorSeries(an,2,nn,nn,true);var rn,In=new an(5),sn=new an(16),on=new an(20);for(;Wt--;){rn=nn.times(nn);nn=nn.times(In.plus(rn.times(sn.times(rn).plus(on))))}}an.precision=Pt;an.rounding=en;return finalise(nn,Pt,en,true)};wn.hyperbolicTangent=wn.tanh=function(){var Wt,Pt,en=this,tn=en.constructor;if(!en.isFinite())return new tn(en.s);if(en.isZero())return new tn(en);Wt=tn.precision;Pt=tn.rounding;tn.precision=Wt+7;tn.rounding=1;return Fn(en.sinh(),en.cosh(),tn.precision=Wt,tn.rounding=Pt)};wn.inverseCosine=wn.acos=function(){var Wt,Pt=this,en=Pt.constructor,tn=Pt.abs().cmp(1),nn=en.precision,an=en.rounding;if(tn!==-1){return tn===0?Pt.isNeg()?getPi(en,nn,an):new en(0):new en(NaN)}if(Pt.isZero())return getPi(en,nn+4,an).times(.5);en.precision=nn+6;en.rounding=1;Pt=Pt.asin();Wt=getPi(en,nn+4,an).times(.5);en.precision=nn;en.rounding=an;return Wt.minus(Pt)};wn.inverseHyperbolicCosine=wn.acosh=function(){var Wt,Pt,en=this,tn=en.constructor;if(en.lte(1))return new tn(en.eq(1)?0:NaN);if(!en.isFinite())return new tn(en);Wt=tn.precision;Pt=tn.rounding;tn.precision=Wt+Math.max(Math.abs(en.e),en.sd())+4;tn.rounding=1;un=false;en=en.times(en).minus(1).sqrt().plus(en);un=true;tn.precision=Wt;tn.rounding=Pt;return en.ln()};wn.inverseHyperbolicSine=wn.asinh=function(){var Wt,Pt,en=this,tn=en.constructor;if(!en.isFinite()||en.isZero())return new tn(en);Wt=tn.precision;Pt=tn.rounding;tn.precision=Wt+2*Math.max(Math.abs(en.e),en.sd())+6;tn.rounding=1;un=false;en=en.times(en).plus(1).sqrt().plus(en);un=true;tn.precision=Wt;tn.rounding=Pt;return en.ln()};wn.inverseHyperbolicTangent=wn.atanh=function(){var Wt,Pt,en,tn,nn=this,an=nn.constructor;if(!nn.isFinite())return new an(NaN);if(nn.e>=0)return new an(nn.abs().eq(1)?nn.s/0:nn.isZero()?nn:NaN);Wt=an.precision;Pt=an.rounding;tn=nn.sd();if(Math.max(tn,Wt)<2*-nn.e-1)return finalise(new an(nn),Wt,Pt,true);an.precision=en=tn-nn.e;nn=Fn(nn.plus(1),new an(1).minus(nn),en+Wt,1);an.precision=Wt+4;an.rounding=1;nn=nn.ln();an.precision=Wt;an.rounding=Pt;return nn.times(.5)};wn.inverseSine=wn.asin=function(){var Wt,Pt,en,tn,nn=this,an=nn.constructor;if(nn.isZero())return new an(nn);Pt=nn.abs().cmp(1);en=an.precision;tn=an.rounding;if(Pt!==-1){if(Pt===0){Wt=getPi(an,en+4,tn).times(.5);Wt.s=nn.s;return Wt}return new an(NaN)}an.precision=en+6;an.rounding=1;nn=nn.div(new an(1).minus(nn.times(nn)).sqrt().plus(1)).atan();an.precision=en;an.rounding=tn;return nn.times(2)};wn.inverseTangent=wn.atan=function(){var Wt,Pt,en,tn,nn,an,rn,In,sn,on=this,cn=on.constructor,dn=cn.precision,pn=cn.rounding;if(!on.isFinite()){if(!on.s)return new cn(NaN);if(dn+4<=Rn){rn=getPi(cn,dn+4,pn).times(.5);rn.s=on.s;return rn}}else if(on.isZero()){return new cn(on)}else if(on.abs().eq(1)&&dn+4<=Rn){rn=getPi(cn,dn+4,pn).times(.25);rn.s=on.s;return rn}cn.precision=In=dn+10;cn.rounding=1;en=Math.min(28,In/Yn+2|0);for(Wt=en;Wt;--Wt)on=on.div(on.times(on).plus(1).sqrt().plus(1));un=false;Pt=Math.ceil(In/Yn);tn=1;sn=on.times(on);rn=new cn(on);nn=on;for(;Wt!==-1;){nn=nn.times(sn);an=rn.minus(nn.div(tn+=2));nn=nn.times(sn);rn=an.plus(nn.div(tn+=2));if(rn.d[Pt]!==void 0)for(Wt=Pt;rn.d[Wt]===an.d[Wt]&&Wt--;);}if(en)rn=rn.times(2<this.d.length-2};wn.isNaN=function(){return!this.s};wn.isNegative=wn.isNeg=function(){return this.s<0};wn.isPositive=wn.isPos=function(){return this.s>0};wn.isZero=function(){return!!this.d&&this.d[0]===0};wn.lessThan=wn.lt=function(Wt){return this.cmp(Wt)<0};wn.lessThanOrEqualTo=wn.lte=function(Wt){return this.cmp(Wt)<1};wn.logarithm=wn.log=function(Wt){var Pt,en,tn,nn,an,rn,In,sn,on=this,cn=on.constructor,dn=cn.precision,pn=cn.rounding,mn=5;if(Wt==null){Wt=new cn(10);Pt=true}else{Wt=new cn(Wt);en=Wt.d;if(Wt.s<0||!en||!en[0]||Wt.eq(1))return new cn(NaN);Pt=Wt.eq(10)}en=on.d;if(on.s<0||!en||!en[0]||on.eq(1)){return new cn(en&&!en[0]?-1/0:on.s!=1?NaN:en?0:1/0)}if(Pt){if(en.length>1){an=true}else{for(nn=en[0];nn%10===0;)nn/=10;an=nn!==1}}un=false;In=dn+mn;rn=naturalLogarithm(on,In);tn=Pt?getLn10(cn,In+10):naturalLogarithm(Wt,In);sn=Fn(rn,tn,In,1);if(checkRoundingDigits(sn.d,nn=dn,pn)){do{In+=10;rn=naturalLogarithm(on,In);tn=Pt?getLn10(cn,In+10):naturalLogarithm(Wt,In);sn=Fn(rn,tn,In,1);if(!an){if(+digitsToString(sn.d).slice(nn+1,nn+15)+1==1e14){sn=finalise(sn,dn+1,0)}break}}while(checkRoundingDigits(sn.d,nn+=10,pn))}un=true;return finalise(sn,dn,pn)};wn.minus=wn.sub=function(Wt){var Pt,en,tn,nn,an,rn,In,sn,on,cn,dn,pn,mn=this,bn=mn.constructor;Wt=new bn(Wt);if(!mn.d||!Wt.d){if(!mn.s||!Wt.s)Wt=new bn(NaN);else if(mn.d)Wt.s=-Wt.s;else Wt=new bn(Wt.d||mn.s!==Wt.s?mn:NaN);return Wt}if(mn.s!=Wt.s){Wt.s=-Wt.s;return mn.plus(Wt)}on=mn.d;pn=Wt.d;In=bn.precision;sn=bn.rounding;if(!on[0]||!pn[0]){if(pn[0])Wt.s=-Wt.s;else if(on[0])Wt=new bn(mn);else return new bn(sn===3?-0:0);return un?finalise(Wt,In,sn):Wt}en=Zn(Wt.e/Yn);cn=Zn(mn.e/Yn);on=on.slice();an=cn-en;if(an){dn=an<0;if(dn){Pt=on;an=-an;rn=pn.length}else{Pt=pn;en=cn;rn=on.length}tn=Math.max(Math.ceil(In/Yn),rn)+2;if(an>tn){an=tn;Pt.length=1}Pt.reverse();for(tn=an;tn--;)Pt.push(0);Pt.reverse()}else{tn=on.length;rn=pn.length;dn=tn0;--tn)on[rn++]=0;for(tn=pn.length;tn>an;){if(on[--tn]rn?an+1:rn+1;if(nn>rn){nn=rn;en.length=1}en.reverse();for(;nn--;)en.push(0);en.reverse()}rn=on.length;nn=cn.length;if(rn-nn<0){nn=rn;en=cn;cn=on;on=en}for(Pt=0;nn;){Pt=(on[--nn]=on[nn]+cn[nn]+Pt)/vn|0;on[nn]%=vn}if(Pt){on.unshift(Pt);++tn}for(rn=on.length;on[--rn]==0;)on.pop();Wt.d=on;Wt.e=getBase10Exponent(on,tn);return un?finalise(Wt,In,sn):Wt};wn.precision=wn.sd=function(Wt){var Pt,en=this;if(Wt!==void 0&&Wt!==!!Wt&&Wt!==1&&Wt!==0)throw Error(mn+Wt);if(en.d){Pt=getPrecision(en.d);if(Wt&&en.e+1>Pt)Pt=en.e+1}else{Pt=NaN}return Pt};wn.round=function(){var Wt=this,Pt=Wt.constructor;return finalise(new Pt(Wt),Wt.e+1,Pt.rounding)};wn.sine=wn.sin=function(){var Wt,Pt,en=this,tn=en.constructor;if(!en.isFinite())return new tn(NaN);if(en.isZero())return new tn(en);Wt=tn.precision;Pt=tn.rounding;tn.precision=Wt+Math.max(en.e,en.sd())+Yn;tn.rounding=1;en=sine(tn,toLessThanHalfPi(tn,en));tn.precision=Wt;tn.rounding=Pt;return finalise(dn>2?en.neg():en,Wt,Pt,true)};wn.squareRoot=wn.sqrt=function(){var Wt,Pt,en,tn,nn,an,rn=this,In=rn.d,sn=rn.e,on=rn.s,cn=rn.constructor;if(on!==1||!In||!In[0]){return new cn(!on||on<0&&(!In||In[0])?NaN:In?rn:1/0)}un=false;on=Math.sqrt(+rn);if(on==0||on==1/0){Pt=digitsToString(In);if((Pt.length+sn)%2==0)Pt+="0";on=Math.sqrt(Pt);sn=Zn((sn+1)/2)-(sn<0||sn%2);if(on==1/0){Pt="5e"+sn}else{Pt=on.toExponential();Pt=Pt.slice(0,Pt.indexOf("e")+1)+sn}tn=new cn(Pt)}else{tn=new cn(on.toString())}en=(sn=cn.precision)+3;for(;;){an=tn;tn=an.plus(Fn(rn,an,en+2,1)).times(.5);if(digitsToString(an.d).slice(0,en)===(Pt=digitsToString(tn.d)).slice(0,en)){Pt=Pt.slice(en-3,en+1);if(Pt=="9999"||!nn&&Pt=="4999"){if(!nn){finalise(an,sn+1,0);if(an.times(an).eq(rn)){tn=an;break}}en+=4;nn=1}else{if(!+Pt||!+Pt.slice(1)&&Pt.charAt(0)=="5"){finalise(tn,sn+1,1);Wt=!tn.times(tn).eq(rn)}break}}}un=true;return finalise(tn,sn,cn.rounding,Wt)};wn.tangent=wn.tan=function(){var Wt,Pt,en=this,tn=en.constructor;if(!en.isFinite())return new tn(NaN);if(en.isZero())return new tn(en);Wt=tn.precision;Pt=tn.rounding;tn.precision=Wt+10;tn.rounding=1;en=en.sin();en.s=1;en=Fn(en,new tn(1).minus(en.times(en)).sqrt(),Wt+10,0);tn.precision=Wt;tn.rounding=Pt;return finalise(dn==2||dn==4?en.neg():en,Wt,Pt,true)};wn.times=wn.mul=function(Wt){var Pt,en,tn,nn,an,rn,In,sn,on,cn=this,dn=cn.constructor,pn=cn.d,mn=(Wt=new dn(Wt)).d;Wt.s*=cn.s;if(!pn||!pn[0]||!mn||!mn[0]){return new dn(!Wt.s||pn&&!pn[0]&&!mn||mn&&!mn[0]&&!pn?NaN:!pn||!mn?Wt.s/0:Wt.s*0)}en=Zn(cn.e/Yn)+Zn(Wt.e/Yn);sn=pn.length;on=mn.length;if(sn=0;){Pt=0;for(nn=sn+tn;nn>tn;){In=an[nn]+mn[tn]*pn[nn-tn-1]+Pt;an[nn--]=In%vn|0;Pt=In/vn|0}an[nn]=(an[nn]+Pt)%vn|0}for(;!an[--rn];)an.pop();if(Pt)++en;else an.shift();Wt.d=an;Wt.e=getBase10Exponent(an,en);return un?finalise(Wt,dn.precision,dn.rounding):Wt};wn.toBinary=function(Wt,Pt){return toStringBinary(this,2,Wt,Pt)};wn.toDecimalPlaces=wn.toDP=function(Wt,Pt){var en=this,nn=en.constructor;en=new nn(en);if(Wt===void 0)return en;checkInt32(Wt,0,tn);if(Pt===void 0)Pt=nn.rounding;else checkInt32(Pt,0,8);return finalise(en,Wt+en.e+1,Pt)};wn.toExponential=function(Wt,Pt){var en,nn=this,an=nn.constructor;if(Wt===void 0){en=finiteToString(nn,true)}else{checkInt32(Wt,0,tn);if(Pt===void 0)Pt=an.rounding;else checkInt32(Pt,0,8);nn=finalise(new an(nn),Wt+1,Pt);en=finiteToString(nn,true,Wt+1)}return nn.isNeg()&&!nn.isZero()?"-"+en:en};wn.toFixed=function(Wt,Pt){var en,nn,an=this,rn=an.constructor;if(Wt===void 0){en=finiteToString(an)}else{checkInt32(Wt,0,tn);if(Pt===void 0)Pt=rn.rounding;else checkInt32(Pt,0,8);nn=finalise(new rn(an),Wt+an.e+1,Pt);en=finiteToString(nn,false,Wt+nn.e+1)}return an.isNeg()&&!an.isZero()?"-"+en:en};wn.toFraction=function(Wt){var Pt,en,tn,nn,an,rn,In,sn,on,cn,dn,pn,bn=this,Gn=bn.d,hn=bn.constructor;if(!Gn)return new hn(bn);on=en=new hn(1);tn=sn=new hn(0);Pt=new hn(tn);an=Pt.e=getPrecision(Gn)-bn.e-1;rn=an%Yn;Pt.d[0]=An(10,rn<0?Yn+rn:rn);if(Wt==null){Wt=an>0?Pt:on}else{In=new hn(Wt);if(!In.isInt()||In.lt(on))throw Error(mn+In);Wt=In.gt(Pt)?an>0?Pt:on:In}un=false;In=new hn(digitsToString(Gn));cn=hn.precision;hn.precision=an=Gn.length*Yn*2;for(;;){dn=Fn(In,Pt,0,1,1);nn=en.plus(dn.times(tn));if(nn.cmp(Wt)==1)break;en=tn;tn=nn;nn=on;on=sn.plus(dn.times(nn));sn=nn;nn=Pt;Pt=In.minus(dn.times(nn));In=nn}nn=Fn(Wt.minus(en),tn,0,1,1);sn=sn.plus(nn.times(on));en=en.plus(nn.times(tn));sn.s=on.s=bn.s;pn=Fn(on,tn,an,1).minus(bn).abs().cmp(Fn(sn,en,an,1).minus(bn).abs())<1?[on,tn]:[sn,en];hn.precision=cn;un=true;return pn};wn.toHexadecimal=wn.toHex=function(Wt,Pt){return toStringBinary(this,16,Wt,Pt)};wn.toNearest=function(Wt,Pt){var en=this,tn=en.constructor;en=new tn(en);if(Wt==null){if(!en.d)return en;Wt=new tn(1);Pt=tn.rounding}else{Wt=new tn(Wt);if(Pt===void 0){Pt=tn.rounding}else{checkInt32(Pt,0,8)}if(!en.d)return Wt.s?en:Wt;if(!Wt.d){if(Wt.s)Wt.s=en.s;return Wt}}if(Wt.d[0]){un=false;en=Fn(en,Wt,0,Pt,1).times(Wt);un=true;finalise(en)}else{Wt.s=en.s;en=Wt}return en};wn.toNumber=function(){return+this};wn.toOctal=function(Wt,Pt){return toStringBinary(this,8,Wt,Pt)};wn.toPower=wn.pow=function(Wt){var Pt,en,tn,nn,an,rn,In=this,sn=In.constructor,on=+(Wt=new sn(Wt));if(!In.d||!Wt.d||!In.d[0]||!Wt.d[0])return new sn(An(+In,on));In=new sn(In);if(In.eq(1))return In;tn=sn.precision;an=sn.rounding;if(Wt.eq(1))return finalise(In,tn,an);Pt=Zn(Wt.e/Yn);if(Pt>=Wt.d.length-1&&(en=on<0?-on:on)<=En){nn=intPow(sn,In,en,tn);return Wt.s<0?new sn(1).div(nn):finalise(nn,tn,an)}rn=In.s;if(rn<0){if(Ptsn.maxE+1||Pt0?rn/0:0);un=false;sn.rounding=In.s=1;en=Math.min(12,(Pt+"").length);nn=naturalExponential(Wt.times(naturalLogarithm(In,tn+en)),tn);if(nn.d){nn=finalise(nn,tn+5,1);if(checkRoundingDigits(nn.d,tn,an)){Pt=tn+10;nn=finalise(naturalExponential(Wt.times(naturalLogarithm(In,Pt+en)),Pt),Pt+5,1);if(+digitsToString(nn.d).slice(tn+1,tn+15)+1==1e14){nn=finalise(nn,tn+1,0)}}}nn.s=rn;un=true;sn.rounding=an;return finalise(nn,tn,an)};wn.toPrecision=function(Wt,Pt){var en,nn=this,an=nn.constructor;if(Wt===void 0){en=finiteToString(nn,nn.e<=an.toExpNeg||nn.e>=an.toExpPos)}else{checkInt32(Wt,1,tn);if(Pt===void 0)Pt=an.rounding;else checkInt32(Pt,0,8);nn=finalise(new an(nn),Wt,Pt);en=finiteToString(nn,Wt<=nn.e||nn.e<=an.toExpNeg,Wt)}return nn.isNeg()&&!nn.isZero()?"-"+en:en};wn.toSignificantDigits=wn.toSD=function(Wt,Pt){var en=this,nn=en.constructor;if(Wt===void 0){Wt=nn.precision;Pt=nn.rounding}else{checkInt32(Wt,1,tn);if(Pt===void 0)Pt=nn.rounding;else checkInt32(Pt,0,8)}return finalise(new nn(en),Wt,Pt)};wn.toString=function(){var Wt=this,Pt=Wt.constructor,en=finiteToString(Wt,Wt.e<=Pt.toExpNeg||Wt.e>=Pt.toExpPos);return Wt.isNeg()&&!Wt.isZero()?"-"+en:en};wn.truncated=wn.trunc=function(){return finalise(new this.constructor(this),this.e+1,1)};wn.valueOf=wn.toJSON=function(){var Wt=this,Pt=Wt.constructor,en=finiteToString(Wt,Wt.e<=Pt.toExpNeg||Wt.e>=Pt.toExpPos);return Wt.isNeg()?"-"+en:en};function digitsToString(Wt){var Pt,en,tn,nn=Wt.length-1,an="",rn=Wt[0];if(nn>0){an+=rn;for(Pt=1;Pten){throw Error(mn+Wt)}}function checkRoundingDigits(Wt,Pt,en,tn){var nn,an,rn,In;for(an=Wt[0];an>=10;an/=10)--Pt;if(--Pt<0){Pt+=Yn;nn=0}else{nn=Math.ceil((Pt+1)/Yn);Pt%=Yn}an=An(10,Yn-Pt);In=Wt[nn]%an|0;if(tn==null){if(Pt<3){if(Pt==0)In=In/100|0;else if(Pt==1)In=In/10|0;rn=en<4&&In==99999||en>3&&In==49999||In==5e4||In==0}else{rn=(en<4&&In+1==an||en>3&&In+1==an/2)&&(Wt[nn+1]/an/100|0)==An(10,Pt-2)-1||(In==an/2||In==0)&&(Wt[nn+1]/an/100|0)==0}}else{if(Pt<4){if(Pt==0)In=In/1e3|0;else if(Pt==1)In=In/100|0;else if(Pt==2)In=In/10|0;rn=(tn||en<4)&&In==9999||!tn&&en>3&&In==4999}else{rn=((tn||en<4)&&In+1==an||!tn&&en>3&&In+1==an/2)&&(Wt[nn+1]/an/1e3|0)==An(10,Pt-3)-1}}return rn}function convertBase(Wt,Pt,en){var tn,an=[0],rn,In=0,sn=Wt.length;for(;Inen-1){if(an[tn+1]===void 0)an[tn+1]=0;an[tn+1]+=an[tn]/en|0;an[tn]%=en}}}return an.reverse()}function cosine(Wt,Pt){var en,tn,nn;if(Pt.isZero())return Pt;tn=Pt.d.length;if(tn<32){en=Math.ceil(tn/3);nn=(1/tinyPow(4,en)).toString()}else{en=16;nn="2.3283064365386962890625e-10"}Wt.precision+=en;Pt=taylorSeries(Wt,1,Pt.times(nn),new Wt(1));for(var an=en;an--;){var rn=Pt.times(Pt);Pt=rn.times(rn).minus(rn).times(8).plus(1)}Wt.precision-=en;return Pt}var Fn=function(){function multiplyInteger(Wt,Pt,en){var tn,nn=0,an=Wt.length;for(Wt=Wt.slice();an--;){tn=Wt[an]*Pt+nn;Wt[an]=tn%en|0;nn=tn/en|0}if(nn)Wt.unshift(nn);return Wt}function compare(Wt,Pt,en,tn){var nn,an;if(en!=tn){an=en>tn?1:-1}else{for(nn=an=0;nnPt[nn]?1:-1;break}}}return an}function subtract(Wt,Pt,en,tn){var nn=0;for(;en--;){Wt[en]-=nn;nn=Wt[en]1;)Wt.shift()}return function(Wt,Pt,en,tn,nn,an){var rn,In,sn,cn,dn,un,pn,mn,bn,Gn,hn,An,Wn,Nn,gn,yn,En,Vn,Rn,wn,Fn=Wt.constructor,Qn=Wt.s==Pt.s?1:-1,fn=Wt.d,Hn=Pt.d;if(!fn||!fn[0]||!Hn||!Hn[0]){return new Fn(!Wt.s||!Pt.s||(fn?Hn&&fn[0]==Hn[0]:!Hn)?NaN:fn&&fn[0]==0||!Hn?Qn*0:Qn/0)}if(an){dn=1;In=Wt.e-Pt.e}else{an=vn;dn=Yn;In=Zn(Wt.e/dn)-Zn(Pt.e/dn)}Rn=Hn.length;En=fn.length;bn=new Fn(Qn);Gn=bn.d=[];for(sn=0;Hn[sn]==(fn[sn]||0);sn++);if(Hn[sn]>(fn[sn]||0))In--;if(en==null){Nn=en=Fn.precision;tn=Fn.rounding}else if(nn){Nn=en+(Wt.e-Pt.e)+1}else{Nn=en}if(Nn<0){Gn.push(1);un=true}else{Nn=Nn/dn+2|0;sn=0;if(Rn==1){cn=0;Hn=Hn[0];Nn++;for(;(sn1){Hn=multiplyInteger(Hn,cn,an);fn=multiplyInteger(fn,cn,an);Rn=Hn.length;En=fn.length}yn=Rn;hn=fn.slice(0,Rn);An=hn.length;for(;An=an/2)++Vn;do{cn=0;rn=compare(Hn,hn,Rn,An);if(rn<0){Wn=hn[0];if(Rn!=An)Wn=Wn*an+(hn[1]||0);cn=Wn/Vn|0;if(cn>1){if(cn>=an)cn=an-1;pn=multiplyInteger(Hn,cn,an);mn=pn.length;An=hn.length;rn=compare(pn,hn,mn,An);if(rn==1){cn--;subtract(pn,Rn=10;cn/=10)sn++;bn.e=sn+In*dn-1;finalise(bn,nn?en+bn.e+1:en,tn,un)}return bn}}();function finalise(Wt,Pt,en,tn){var nn,an,rn,In,sn,on,cn,dn,pn,mn=Wt.constructor;e:if(Pt!=null){dn=Wt.d;if(!dn)return Wt;for(nn=1,In=dn[0];In>=10;In/=10)nn++;an=Pt-nn;if(an<0){an+=Yn;rn=Pt;cn=dn[pn=0];sn=cn/An(10,nn-rn-1)%10|0}else{pn=Math.ceil((an+1)/Yn);In=dn.length;if(pn>=In){if(tn){for(;In++<=pn;)dn.push(0);cn=sn=0;nn=1;an%=Yn;rn=an-Yn+1}else{break e}}else{cn=In=dn[pn];for(nn=1;In>=10;In/=10)nn++;an%=Yn;rn=an-Yn+nn;sn=rn<0?0:cn/An(10,nn-rn-1)%10|0}}tn=tn||Pt<0||dn[pn+1]!==void 0||(rn<0?cn:cn%An(10,nn-rn-1));on=en<4?(sn||tn)&&(en==0||en==(Wt.s<0?3:2)):sn>5||sn==5&&(en==4||tn||en==6&&(an>0?rn>0?cn/An(10,nn-rn):0:dn[pn-1])%10&1||en==(Wt.s<0?8:7));if(Pt<1||!dn[0]){dn.length=0;if(on){Pt-=Wt.e+1;dn[0]=An(10,(Yn-Pt%Yn)%Yn);Wt.e=-Pt||0}else{dn[0]=Wt.e=0}return Wt}if(an==0){dn.length=pn;In=1;pn--}else{dn.length=pn+1;In=An(10,Yn-an);dn[pn]=rn>0?(cn/An(10,nn-rn)%An(10,rn)|0)*In:0}if(on){for(;;){if(pn==0){for(an=1,rn=dn[0];rn>=10;rn/=10)an++;rn=dn[0]+=In;for(In=1;rn>=10;rn/=10)In++;if(an!=In){Wt.e++;if(dn[0]==vn)dn[0]=1}break}else{dn[pn]+=In;if(dn[pn]!=vn)break;dn[pn--]=0;In=1}}}for(an=dn.length;dn[--an]===0;)dn.pop()}if(un){if(Wt.e>mn.maxE){Wt.d=null;Wt.e=NaN}else if(Wt.e0){an=an.charAt(0)+"."+an.slice(1)+getZeroString(tn)}else if(rn>1){an=an.charAt(0)+"."+an.slice(1)}an=an+(Wt.e<0?"e":"e+")+Wt.e}else if(nn<0){an="0."+getZeroString(-nn-1)+an;if(en&&(tn=en-rn)>0)an+=getZeroString(tn)}else if(nn>=rn){an+=getZeroString(nn+1-rn);if(en&&(tn=en-nn-1)>0)an=an+"."+getZeroString(tn)}else{if((tn=nn+1)0){if(nn+1===rn)an+=".";an+=getZeroString(tn)}}return an}function getBase10Exponent(Wt,Pt){var en=Wt[0];for(Pt*=Yn;en>=10;en/=10)Pt++;return Pt}function getLn10(Wt,Pt,en){if(Pt>Vn){un=true;if(en)Wt.precision=en;throw Error(bn)}return finalise(new Wt(an),Pt,1,true)}function getPi(Wt,Pt,en){if(Pt>Rn)throw Error(bn);return finalise(new Wt(rn),Pt,en,true)}function getPrecision(Wt){var Pt=Wt.length-1,en=Pt*Yn+1;Pt=Wt[Pt];if(Pt){for(;Pt%10==0;Pt/=10)en--;for(Pt=Wt[0];Pt>=10;Pt/=10)en++}return en}function getZeroString(Wt){var Pt="";for(;Wt--;)Pt+="0";return Pt}function intPow(Wt,Pt,en,tn){var nn,an=new Wt(1),rn=Math.ceil(tn/Yn+4);un=false;for(;;){if(en%2){an=an.times(Pt);if(truncate(an.d,rn))nn=true}en=Zn(en/2);if(en===0){en=an.d.length-1;if(nn&&an.d[en]===0)++an.d[en];break}Pt=Pt.times(Pt);truncate(Pt.d,rn)}un=true;return an}function isOdd(Wt){return Wt.d[Wt.d.length-1]&1}function maxOrMin(Wt,Pt,en){var tn,nn=new Wt(Pt[0]),an=0;for(;++an17){return new pn(Wt.d?!Wt.d[0]?1:Wt.s<0?0:1/0:Wt.s?Wt.s<0?0:Wt:0/0)}if(Pt==null){un=false;sn=bn}else{sn=Pt}In=new pn(.03125);while(Wt.e>-2){Wt=Wt.times(In);dn+=5}tn=Math.log(An(2,dn))/Math.LN10*2+5|0;sn+=tn;en=an=rn=new pn(1);pn.precision=sn;for(;;){an=finalise(an.times(Wt),sn,1);en=en.times(++cn);In=rn.plus(Fn(an,en,sn,1));if(digitsToString(In.d).slice(0,sn)===digitsToString(rn.d).slice(0,sn)){nn=dn;while(nn--)rn=finalise(rn.times(rn),sn,1);if(Pt==null){if(on<3&&checkRoundingDigits(rn.d,sn-tn,mn,on)){pn.precision=sn+=10;en=an=In=new pn(1);cn=0;on++}else{return finalise(rn,pn.precision=bn,mn,un=true)}}else{pn.precision=bn;return rn}}rn=In}}function naturalLogarithm(Wt,Pt){var en,tn,nn,an,rn,In,sn,on,cn,dn,pn,mn=1,bn=10,Gn=Wt,hn=Gn.d,Zn=Gn.constructor,An=Zn.rounding,Wn=Zn.precision;if(Gn.s<0||!hn||!hn[0]||!Gn.e&&hn[0]==1&&hn.length==1){return new Zn(hn&&!hn[0]?-1/0:Gn.s!=1?NaN:hn?0:Gn)}if(Pt==null){un=false;cn=Wn}else{cn=Pt}Zn.precision=cn+=bn;en=digitsToString(hn);tn=en.charAt(0);if(Math.abs(an=Gn.e)<15e14){while(tn<7&&tn!=1||tn==1&&en.charAt(1)>3){Gn=Gn.times(Wt);en=digitsToString(Gn.d);tn=en.charAt(0);mn++}an=Gn.e;if(tn>1){Gn=new Zn("0."+en);an++}else{Gn=new Zn(tn+"."+en.slice(1))}}else{on=getLn10(Zn,cn+2,Wn).times(an+"");Gn=naturalLogarithm(new Zn(tn+"."+en.slice(1)),cn-bn).plus(on);Zn.precision=Wn;return Pt==null?finalise(Gn,Wn,An,un=true):Gn}dn=Gn;sn=rn=Gn=Fn(Gn.minus(1),Gn.plus(1),cn,1);pn=finalise(Gn.times(Gn),cn,1);nn=3;for(;;){rn=finalise(rn.times(pn),cn,1);on=sn.plus(Fn(rn,new Zn(nn),cn,1));if(digitsToString(on.d).slice(0,cn)===digitsToString(sn.d).slice(0,cn)){sn=sn.times(2);if(an!==0)sn=sn.plus(getLn10(Zn,cn+2,Wn).times(an+""));sn=Fn(sn,new Zn(mn),cn,1);if(Pt==null){if(checkRoundingDigits(sn.d,cn-bn,An,In)){Zn.precision=cn+=bn;on=rn=Gn=Fn(dn.minus(1),dn.plus(1),cn,1);pn=finalise(Gn.times(Gn),cn,1);nn=In=1}else{return finalise(sn,Zn.precision=Wn,An,un=true)}}else{Zn.precision=Wn;return sn}}sn=on;nn+=2}}function nonFiniteToString(Wt){return String(Wt.s*Wt.s/0)}function parseDecimal(Wt,Pt){var en,tn,nn;if((en=Pt.indexOf("."))>-1)Pt=Pt.replace(".","");if((tn=Pt.search(/e/i))>0){if(en<0)en=tn;en+=+Pt.slice(tn+1);Pt=Pt.substring(0,tn)}else if(en<0){en=Pt.length}for(tn=0;Pt.charCodeAt(tn)===48;tn++);for(nn=Pt.length;Pt.charCodeAt(nn-1)===48;--nn);Pt=Pt.slice(tn,nn);if(Pt){nn-=tn;Wt.e=en=en-tn-1;Wt.d=[];tn=(en+1)%Yn;if(en<0)tn+=Yn;if(tnWt.constructor.maxE){Wt.d=null;Wt.e=NaN}else if(Wt.e-1){Pt=Pt.replace(/(\d)_(?=\d)/g,"$1");if(yn.test(Pt))return parseDecimal(Wt,Pt)}else if(Pt==="Infinity"||Pt==="NaN"){if(!+Pt)Wt.s=NaN;Wt.e=NaN;Wt.d=null;return Wt}if(Nn.test(Pt)){en=16;Pt=Pt.toLowerCase()}else if(Wn.test(Pt)){en=2}else if(gn.test(Pt)){en=8}else{throw Error(mn+Pt)}an=Pt.search(/p/i);if(an>0){on=+Pt.slice(an+1);Pt=Pt.substring(2,an)}else{Pt=Pt.slice(2)}an=Pt.indexOf(".");rn=an>=0;tn=Wt.constructor;if(rn){Pt=Pt.replace(".","");In=Pt.length;an=In-an;nn=intPow(tn,new tn(en),an,an*2)}cn=convertBase(Pt,en,vn);dn=cn.length-1;for(an=dn;cn[an]===0;--an)cn.pop();if(an<0)return new tn(Wt.s*0);Wt.e=getBase10Exponent(cn,dn);Wt.d=cn;un=false;if(rn)Wt=Fn(Wt,nn,In*4);if(on)Wt=Wt.times(Math.abs(on)<54?An(2,on):sn.pow(2,on));un=true;return Wt}function sine(Wt,Pt){var en,tn=Pt.d.length;if(tn<3){return Pt.isZero()?Pt:taylorSeries(Wt,2,Pt,Pt)}en=1.4*Math.sqrt(tn);en=en>16?16:en|0;Pt=Pt.times(1/tinyPow(5,en));Pt=taylorSeries(Wt,2,Pt,Pt);var nn,an=new Wt(5),rn=new Wt(16),In=new Wt(20);for(;en--;){nn=Pt.times(Pt);Pt=Pt.times(an.plus(nn.times(rn.times(nn).minus(In))))}return Pt}function taylorSeries(Wt,Pt,en,tn,nn){var an,rn,In,sn,on=1,cn=Wt.precision,dn=Math.ceil(cn/Yn);un=false;sn=en.times(en);In=new Wt(tn);for(;;){rn=Fn(In.times(sn),new Wt(Pt++*Pt++),cn,1);In=nn?tn.plus(rn):tn.minus(rn);tn=Fn(rn.times(sn),new Wt(Pt++*Pt++),cn,1);rn=In.plus(tn);if(rn.d[dn]!==void 0){for(an=dn;rn.d[an]===In.d[an]&&an--;);if(an==-1)break}an=In;In=tn;tn=rn;rn=an;on++}un=true;rn.d.length=dn+1;return rn}function tinyPow(Wt,Pt){var en=Wt;while(--Pt)en*=Wt;return en}function toLessThanHalfPi(Wt,Pt){var en,tn=Pt.s<0,nn=getPi(Wt,Wt.precision,1),an=nn.times(.5);Pt=Pt.abs();if(Pt.lte(an)){dn=tn?4:1;return Pt}en=Pt.divToInt(nn);if(en.isZero()){dn=tn?3:2}else{Pt=Pt.minus(en.times(nn));if(Pt.lte(an)){dn=isOdd(en)?tn?2:3:tn?4:1;return Pt}dn=isOdd(en)?tn?1:4:tn?3:2}return Pt.minus(nn).abs()}function toStringBinary(Wt,Pt,en,an){var rn,In,sn,cn,dn,un,pn,mn,bn,Gn=Wt.constructor,hn=en!==void 0;if(hn){checkInt32(en,1,tn);if(an===void 0)an=Gn.rounding;else checkInt32(an,0,8)}else{en=Gn.precision;an=Gn.rounding}if(!Wt.isFinite()){pn=nonFiniteToString(Wt)}else{pn=finiteToString(Wt);sn=pn.indexOf(".");if(hn){rn=2;if(Pt==16){en=en*4-3}else if(Pt==8){en=en*3-2}}else{rn=Pt}if(sn>=0){pn=pn.replace(".","");bn=new Gn(1);bn.e=pn.length-sn;bn.d=convertBase(finiteToString(bn),10,rn);bn.e=bn.d.length}mn=convertBase(pn,10,rn);In=dn=mn.length;for(;mn[--dn]==0;)mn.pop();if(!mn[0]){pn=hn?"0p+0":"0"}else{if(sn<0){In--}else{Wt=new Gn(Wt);Wt.d=mn;Wt.e=In;Wt=Fn(Wt,bn,en,an,0,rn);mn=Wt.d;In=Wt.e;un=on}sn=mn[en];cn=rn/2;un=un||mn[en+1]!==void 0;un=an<4?(sn!==void 0||un)&&(an===0||an===(Wt.s<0?3:2)):sn>cn||sn===cn&&(an===4||un||an===6&&mn[en-1]&1||an===(Wt.s<0?8:7));mn.length=en;if(un){for(;++mn[--en]>rn-1;){mn[en]=0;if(!en){++In;mn.unshift(1)}}}for(dn=mn.length;!mn[dn-1];--dn);for(sn=0,pn="";sn1){if(Pt==16||Pt==8){sn=Pt==16?4:3;for(--dn;dn%sn;dn++)pn+="0";mn=convertBase(pn,rn,Pt);for(dn=mn.length;!mn[dn-1];--dn);for(sn=1,pn="1.";sndn)for(In-=dn;In--;)pn+="0";else if(InPt){Wt.length=Pt;return true}}function abs(Wt){return new this(Wt).abs()}function acos(Wt){return new this(Wt).acos()}function acosh(Wt){return new this(Wt).acosh()}function add(Wt,Pt){return new this(Wt).plus(Pt)}function asin(Wt){return new this(Wt).asin()}function asinh(Wt){return new this(Wt).asinh()}function atan(Wt){return new this(Wt).atan()}function atanh(Wt){return new this(Wt).atanh()}function atan2(Wt,Pt){Wt=new this(Wt);Pt=new this(Pt);var en,tn=this.precision,nn=this.rounding,an=tn+4;if(!Wt.s||!Pt.s){en=new this(NaN)}else if(!Wt.d&&!Pt.d){en=getPi(this,an,1).times(Pt.s>0?.25:.75);en.s=Wt.s}else if(!Pt.d||Wt.isZero()){en=Pt.s<0?getPi(this,tn,nn):new this(0);en.s=Wt.s}else if(!Wt.d||Pt.isZero()){en=getPi(this,an,1).times(.5);en.s=Wt.s}else if(Pt.s<0){this.precision=an;this.rounding=1;en=this.atan(Fn(Wt,Pt,an,1));Pt=getPi(this,an,1);this.precision=tn;this.rounding=nn;en=Wt.s<0?en.minus(Pt):en.plus(Pt)}else{en=this.atan(Fn(Wt,Pt,an,1))}return en}function cbrt(Wt){return new this(Wt).cbrt()}function ceil(Wt){return finalise(Wt=new this(Wt),Wt.e+1,2)}function clamp(Wt,Pt,en){return new this(Wt).clamp(Pt,en)}function config(Wt){if(!Wt||typeof Wt!=="object")throw Error(pn+"Object expected");var Pt,nn,an,rn=Wt.defaults===true,sn=["precision",1,tn,"rounding",0,8,"toExpNeg",-en,0,"toExpPos",0,en,"maxE",0,en,"minE",-en,0,"modulo",0,9];for(Pt=0;Pt=sn[Pt+1]&&an<=sn[Pt+2])this[nn]=an;else throw Error(mn+nn+": "+an)}}if(nn="crypto",rn)this[nn]=In[nn];if((an=Wt[nn])!==void 0){if(an===true||an===false||an===0||an===1){if(an){if(typeof crypto!="undefined"&&crypto&&(crypto.getRandomValues||crypto.randomBytes)){this[nn]=true}else{throw Error(Gn)}}else{this[nn]=false}}else{throw Error(mn+nn+": "+an)}}return this}function cos(Wt){return new this(Wt).cos()}function cosh(Wt){return new this(Wt).cosh()}function clone(Wt){var Pt,en,tn;function Decimal(Wt){var Pt,en,tn,nn=this;if(!(nn instanceof Decimal))return new Decimal(Wt);nn.constructor=Decimal;if(isDecimalInstance(Wt)){nn.s=Wt.s;if(un){if(!Wt.d||Wt.e>Decimal.maxE){nn.e=NaN;nn.d=null}else if(Wt.e=10;en/=10)Pt++;if(un){if(Pt>Decimal.maxE){nn.e=NaN;nn.d=null}else if(Pt=429e7){Pt[rn]=crypto.getRandomValues(new Uint32Array(1))[0]}else{sn[rn++]=an%1e7}}}else if(crypto.randomBytes){Pt=crypto.randomBytes(nn*=4);for(;rn=214e7){crypto.randomBytes(4).copy(Pt,rn)}else{sn.push(an%1e7);rn+=4}}rn=nn/4}else{throw Error(Gn)}nn=sn[--rn];Wt%=Yn;if(nn&&Wt){an=An(10,Yn-Wt);sn[rn]=(nn/an|0)*an}for(;sn[rn]===0;rn--)sn.pop();if(rn<0){en=0;sn=[0]}else{en=-1;for(;sn[0]===0;en-=Yn)sn.shift();for(nn=1,an=sn[0];an>=10;an/=10)nn++;if(nn{var tn=en(2203).Stream;var nn=en(39023);Wt.exports=DelayedStream;function DelayedStream(){this.source=null;this.dataSize=0;this.maxDataSize=1024*1024;this.pauseStream=true;this._maxDataSizeExceeded=false;this._released=false;this._bufferedEvents=[]}nn.inherits(DelayedStream,tn);DelayedStream.create=function(Wt,Pt){var en=new this;Pt=Pt||{};for(var tn in Pt){en[tn]=Pt[tn]}en.source=Wt;var nn=Wt.emit;Wt.emit=function(){en._handleEmit(arguments);return nn.apply(Wt,arguments)};Wt.on("error",(function(){}));if(en.pauseStream){Wt.pause()}return en};Object.defineProperty(DelayedStream.prototype,"readable",{configurable:true,enumerable:true,get:function(){return this.source.readable}});DelayedStream.prototype.setEncoding=function(){return this.source.setEncoding.apply(this.source,arguments)};DelayedStream.prototype.resume=function(){if(!this._released){this.release()}this.source.resume()};DelayedStream.prototype.pause=function(){this.source.pause()};DelayedStream.prototype.release=function(){this._released=true;this._bufferedEvents.forEach(function(Wt){this.emit.apply(this,Wt)}.bind(this));this._bufferedEvents=[]};DelayedStream.prototype.pipe=function(){var Wt=tn.prototype.pipe.apply(this,arguments);this.resume();return Wt};DelayedStream.prototype._handleEmit=function(Wt){if(this._released){this.emit.apply(this,Wt);return}if(Wt[0]==="data"){this.dataSize+=Wt[1].length;this._checkIfMaxDataSizeExceeded()}this._bufferedEvents.push(Wt)};DelayedStream.prototype._checkIfMaxDataSizeExceeded=function(){if(this._maxDataSizeExceeded){return}if(this.dataSize<=this.maxDataSize){return}this._maxDataSizeExceeded=true;var Wt="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this.emit("error",new Error(Wt))}},14150:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});class Deprecation extends Error{constructor(Wt){super(Wt);if(Error.captureStackTrace){Error.captureStackTrace(this,this.constructor)}this.name="Deprecation"}}Pt.Deprecation=Deprecation},52874:(Wt,Pt,en)=>{(function(){en(18889).config(Object.assign({},en(39990),en(4531)(process.argv)))})()},4531:Wt=>{const Pt=/^dotenv_config_(encoding|path|debug|override|DOTENV_KEY)=(.+)$/;Wt.exports=function optionMatcher(Wt){return Wt.reduce((function(Wt,en){const tn=en.match(Pt);if(tn){Wt[tn[1]]=tn[2]}return Wt}),{})}},39990:Wt=>{const Pt={};if(process.env.DOTENV_CONFIG_ENCODING!=null){Pt.encoding=process.env.DOTENV_CONFIG_ENCODING}if(process.env.DOTENV_CONFIG_PATH!=null){Pt.path=process.env.DOTENV_CONFIG_PATH}if(process.env.DOTENV_CONFIG_DEBUG!=null){Pt.debug=process.env.DOTENV_CONFIG_DEBUG}if(process.env.DOTENV_CONFIG_OVERRIDE!=null){Pt.override=process.env.DOTENV_CONFIG_OVERRIDE}if(process.env.DOTENV_CONFIG_DOTENV_KEY!=null){Pt.DOTENV_KEY=process.env.DOTENV_CONFIG_DOTENV_KEY}Wt.exports=Pt},18889:(Wt,Pt,en)=>{const tn=en(79896);const nn=en(16928);const an=en(70857);const rn=en(76982);const In=en(80056);const sn=In.version;const on=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/gm;function parse(Wt){const Pt={};let en=Wt.toString();en=en.replace(/\r\n?/gm,"\n");let tn;while((tn=on.exec(en))!=null){const Wt=tn[1];let en=tn[2]||"";en=en.trim();const nn=en[0];en=en.replace(/^(['"`])([\s\S]*)\1$/gm,"$2");if(nn==='"'){en=en.replace(/\\n/g,"\n");en=en.replace(/\\r/g,"\r")}Pt[Wt]=en}return Pt}function _parseVault(Wt){const Pt=_vaultPath(Wt);const en=cn.configDotenv({path:Pt});if(!en.parsed){const Wt=new Error(`MISSING_DATA: Cannot parse ${Pt} for an unknown reason`);Wt.code="MISSING_DATA";throw Wt}const tn=_dotenvKey(Wt).split(",");const nn=tn.length;let an;for(let Wt=0;Wt=nn){throw Pt}}}return cn.parse(an)}function _log(Wt){console.log(`[dotenv@${sn}][INFO] ${Wt}`)}function _warn(Wt){console.log(`[dotenv@${sn}][WARN] ${Wt}`)}function _debug(Wt){console.log(`[dotenv@${sn}][DEBUG] ${Wt}`)}function _dotenvKey(Wt){if(Wt&&Wt.DOTENV_KEY&&Wt.DOTENV_KEY.length>0){return Wt.DOTENV_KEY}if(process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0){return process.env.DOTENV_KEY}return""}function _instructions(Wt,Pt){let en;try{en=new URL(Pt)}catch(Wt){if(Wt.code==="ERR_INVALID_URL"){const Wt=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");Wt.code="INVALID_DOTENV_KEY";throw Wt}throw Wt}const tn=en.password;if(!tn){const Wt=new Error("INVALID_DOTENV_KEY: Missing key part");Wt.code="INVALID_DOTENV_KEY";throw Wt}const nn=en.searchParams.get("environment");if(!nn){const Wt=new Error("INVALID_DOTENV_KEY: Missing environment part");Wt.code="INVALID_DOTENV_KEY";throw Wt}const an=`DOTENV_VAULT_${nn.toUpperCase()}`;const rn=Wt.parsed[an];if(!rn){const Wt=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${an} in your .env.vault file.`);Wt.code="NOT_FOUND_DOTENV_ENVIRONMENT";throw Wt}return{ciphertext:rn,key:tn}}function _vaultPath(Wt){let Pt=null;if(Wt&&Wt.path&&Wt.path.length>0){if(Array.isArray(Wt.path)){for(const en of Wt.path){if(tn.existsSync(en)){Pt=en.endsWith(".vault")?en:`${en}.vault`}}}else{Pt=Wt.path.endsWith(".vault")?Wt.path:`${Wt.path}.vault`}}else{Pt=nn.resolve(process.cwd(),".env.vault")}if(tn.existsSync(Pt)){return Pt}return null}function _resolveHome(Wt){return Wt[0]==="~"?nn.join(an.homedir(),Wt.slice(1)):Wt}function _configVault(Wt){_log("Loading env from encrypted .env.vault");const Pt=cn._parseVault(Wt);let en=process.env;if(Wt&&Wt.processEnv!=null){en=Wt.processEnv}cn.populate(en,Pt,Wt);return{parsed:Pt}}function configDotenv(Wt){const Pt=nn.resolve(process.cwd(),".env");let en="utf8";const an=Boolean(Wt&&Wt.debug);if(Wt&&Wt.encoding){en=Wt.encoding}else{if(an){_debug("No encoding is specified. UTF-8 is used by default")}}let rn=[Pt];if(Wt&&Wt.path){if(!Array.isArray(Wt.path)){rn=[_resolveHome(Wt.path)]}else{rn=[];for(const Pt of Wt.path){rn.push(_resolveHome(Pt))}}}let In;const sn={};for(const Pt of rn){try{const nn=cn.parse(tn.readFileSync(Pt,{encoding:en}));cn.populate(sn,nn,Wt)}catch(Wt){if(an){_debug(`Failed to load ${Pt} ${Wt.message}`)}In=Wt}}let on=process.env;if(Wt&&Wt.processEnv!=null){on=Wt.processEnv}cn.populate(on,sn,Wt);if(In){return{parsed:sn,error:In}}else{return{parsed:sn}}}function config(Wt){if(_dotenvKey(Wt).length===0){return cn.configDotenv(Wt)}const Pt=_vaultPath(Wt);if(!Pt){_warn(`You set DOTENV_KEY but you are missing a .env.vault file at ${Pt}. Did you forget to build it?`);return cn.configDotenv(Wt)}return cn._configVault(Wt)}function decrypt(Wt,Pt){const en=Buffer.from(Pt.slice(-64),"hex");let tn=Buffer.from(Wt,"base64");const nn=tn.subarray(0,12);const an=tn.subarray(-16);tn=tn.subarray(12,-16);try{const Wt=rn.createDecipheriv("aes-256-gcm",en,nn);Wt.setAuthTag(an);return`${Wt.update(tn)}${Wt.final()}`}catch(Wt){const Pt=Wt instanceof RangeError;const en=Wt.message==="Invalid key length";const tn=Wt.message==="Unsupported state or unable to authenticate data";if(Pt||en){const Wt=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");Wt.code="INVALID_DOTENV_KEY";throw Wt}else if(tn){const Wt=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");Wt.code="DECRYPTION_FAILED";throw Wt}else{throw Wt}}}function populate(Wt,Pt,en={}){const tn=Boolean(en&&en.debug);const nn=Boolean(en&&en.override);if(typeof Pt!=="object"){const Wt=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");Wt.code="OBJECT_REQUIRED";throw Wt}for(const en of Object.keys(Pt)){if(Object.prototype.hasOwnProperty.call(Wt,en)){if(nn===true){Wt[en]=Pt[en]}if(tn){if(nn===true){_debug(`"${en}" is already defined and WAS overwritten`)}else{_debug(`"${en}" is already defined and was NOT overwritten`)}}}else{Wt[en]=Pt[en]}}}const cn={configDotenv:configDotenv,_configVault:_configVault,_parseVault:_parseVault,config:config,decrypt:decrypt,parse:parse,populate:populate};Wt.exports.configDotenv=cn.configDotenv;Wt.exports._configVault=cn._configVault;Wt.exports._parseVault=cn._parseVault;Wt.exports.config=cn.config;Wt.exports.decrypt=cn.decrypt;Wt.exports.parse=cn.parse;Wt.exports.populate=cn.populate;Wt.exports=cn},57034:(Wt,Pt,en)=>{"use strict";var tn=Pt;tn.version=en(1636).rE;tn.utils=en(5028);tn.rand=en(49586);tn.curve=en(57773);tn.curves=en(30997);tn.ec=en(75070);tn.eddsa=en(93225)},58088:(Wt,Pt,en)=>{"use strict";var tn=en(7967);var nn=en(5028);var an=nn.getNAF;var rn=nn.getJSF;var In=nn.assert;function BaseCurve(Wt,Pt){this.type=Wt;this.p=new tn(Pt.p,16);this.red=Pt.prime?tn.red(Pt.prime):tn.mont(this.p);this.zero=new tn(0).toRed(this.red);this.one=new tn(1).toRed(this.red);this.two=new tn(2).toRed(this.red);this.n=Pt.n&&new tn(Pt.n,16);this.g=Pt.g&&this.pointFromJSON(Pt.g,Pt.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 en=this.n&&this.p.div(this.n);if(!en||en.cmpn(100)>0){this.redN=null}else{this._maxwellTrick=true;this.redN=this.n.toRed(this.red)}}Wt.exports=BaseCurve;BaseCurve.prototype.point=function point(){throw new Error("Not implemented")};BaseCurve.prototype.validate=function validate(){throw new Error("Not implemented")};BaseCurve.prototype._fixedNafMul=function _fixedNafMul(Wt,Pt){In(Wt.precomputed);var en=Wt._getDoubles();var tn=an(Pt,1,this._bitLength);var nn=(1<=sn;cn--)on=(on<<1)+tn[cn];rn.push(on)}var dn=this.jpoint(null,null,null);var un=this.jpoint(null,null,null);for(var pn=nn;pn>0;pn--){for(sn=0;sn=0;on--){for(var cn=0;on>=0&&rn[on]===0;on--)cn++;if(on>=0)cn++;sn=sn.dblp(cn);if(on<0)break;var dn=rn[on];In(dn!==0);if(Wt.type==="affine"){if(dn>0)sn=sn.mixedAdd(nn[dn-1>>1]);else sn=sn.mixedAdd(nn[-dn-1>>1].neg())}else{if(dn>0)sn=sn.add(nn[dn-1>>1]);else sn=sn.add(nn[-dn-1>>1].neg())}}return Wt.type==="affine"?sn.toP():sn};BaseCurve.prototype._wnafMulAdd=function _wnafMulAdd(Wt,Pt,en,tn,nn){var In=this._wnafT1;var sn=this._wnafT2;var on=this._wnafT3;var cn=0;var dn;var un;var pn;for(dn=0;dn=1;dn-=2){var bn=dn-1;var Gn=dn;if(In[bn]!==1||In[Gn]!==1){on[bn]=an(en[bn],In[bn],this._bitLength);on[Gn]=an(en[Gn],In[Gn],this._bitLength);cn=Math.max(on[bn].length,cn);cn=Math.max(on[Gn].length,cn);continue}var hn=[Pt[bn],null,null,Pt[Gn]];if(Pt[bn].y.cmp(Pt[Gn].y)===0){hn[1]=Pt[bn].add(Pt[Gn]);hn[2]=Pt[bn].toJ().mixedAdd(Pt[Gn].neg())}else if(Pt[bn].y.cmp(Pt[Gn].y.redNeg())===0){hn[1]=Pt[bn].toJ().mixedAdd(Pt[Gn]);hn[2]=Pt[bn].add(Pt[Gn].neg())}else{hn[1]=Pt[bn].toJ().mixedAdd(Pt[Gn]);hn[2]=Pt[bn].toJ().mixedAdd(Pt[Gn].neg())}var Zn=[-3,-1,-5,-7,0,7,5,1,3];var An=rn(en[bn],en[Gn]);cn=Math.max(An[0].length,cn);on[bn]=new Array(cn);on[Gn]=new Array(cn);for(un=0;un=0;dn--){var vn=0;while(dn>=0){var Yn=true;for(un=0;un=0)vn++;gn=gn.dblp(vn);if(dn<0)break;for(un=0;un0)pn=sn[un][En-1>>1];else if(En<0)pn=sn[un][-En-1>>1].neg();if(pn.type==="affine")gn=gn.mixedAdd(pn);else gn=gn.add(pn)}}for(dn=0;dn=Math.ceil((Wt.bitLength()+1)/Pt.step)};BasePoint.prototype._getDoubles=function _getDoubles(Wt,Pt){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;var en=[this];var tn=this;for(var nn=0;nn{"use strict";var tn=en(5028);var nn=en(7967);var an=en(39598);var rn=en(58088);var In=tn.assert;function EdwardsCurve(Wt){this.twisted=(Wt.a|0)!==1;this.mOneA=this.twisted&&(Wt.a|0)===-1;this.extended=this.mOneA;rn.call(this,"edwards",Wt);this.a=new nn(Wt.a,16).umod(this.red.m);this.a=this.a.toRed(this.red);this.c=new nn(Wt.c,16).toRed(this.red);this.c2=this.c.redSqr();this.d=new nn(Wt.d,16).toRed(this.red);this.dd=this.d.redAdd(this.d);In(!this.twisted||this.c.fromRed().cmpn(1)===0);this.oneC=(Wt.c|0)===1}an(EdwardsCurve,rn);Wt.exports=EdwardsCurve;EdwardsCurve.prototype._mulA=function _mulA(Wt){if(this.mOneA)return Wt.redNeg();else return this.a.redMul(Wt)};EdwardsCurve.prototype._mulC=function _mulC(Wt){if(this.oneC)return Wt;else return this.c.redMul(Wt)};EdwardsCurve.prototype.jpoint=function jpoint(Wt,Pt,en,tn){return this.point(Wt,Pt,en,tn)};EdwardsCurve.prototype.pointFromX=function pointFromX(Wt,Pt){Wt=new nn(Wt,16);if(!Wt.red)Wt=Wt.toRed(this.red);var en=Wt.redSqr();var tn=this.c2.redSub(this.a.redMul(en));var an=this.one.redSub(this.c2.redMul(this.d).redMul(en));var rn=tn.redMul(an.redInvm());var In=rn.redSqrt();if(In.redSqr().redSub(rn).cmp(this.zero)!==0)throw new Error("invalid point");var sn=In.fromRed().isOdd();if(Pt&&!sn||!Pt&&sn)In=In.redNeg();return this.point(Wt,In)};EdwardsCurve.prototype.pointFromY=function pointFromY(Wt,Pt){Wt=new nn(Wt,16);if(!Wt.red)Wt=Wt.toRed(this.red);var en=Wt.redSqr();var tn=en.redSub(this.c2);var an=en.redMul(this.d).redMul(this.c2).redSub(this.a);var rn=tn.redMul(an.redInvm());if(rn.cmp(this.zero)===0){if(Pt)throw new Error("invalid point");else return this.point(this.zero,Wt)}var In=rn.redSqrt();if(In.redSqr().redSub(rn).cmp(this.zero)!==0)throw new Error("invalid point");if(In.fromRed().isOdd()!==Pt)In=In.redNeg();return this.point(In,Wt)};EdwardsCurve.prototype.validate=function validate(Wt){if(Wt.isInfinity())return true;Wt.normalize();var Pt=Wt.x.redSqr();var en=Wt.y.redSqr();var tn=Pt.redMul(this.a).redAdd(en);var nn=this.c2.redMul(this.one.redAdd(this.d.redMul(Pt).redMul(en)));return tn.cmp(nn)===0};function Point(Wt,Pt,en,tn,an){rn.BasePoint.call(this,Wt,"projective");if(Pt===null&&en===null&&tn===null){this.x=this.curve.zero;this.y=this.curve.one;this.z=this.curve.one;this.t=this.curve.zero;this.zOne=true}else{this.x=new nn(Pt,16);this.y=new nn(en,16);this.z=tn?new nn(tn,16):this.curve.one;this.t=an&&new nn(an,16);if(!this.x.red)this.x=this.x.toRed(this.curve.red);if(!this.y.red)this.y=this.y.toRed(this.curve.red);if(!this.z.red)this.z=this.z.toRed(this.curve.red);if(this.t&&!this.t.red)this.t=this.t.toRed(this.curve.red);this.zOne=this.z===this.curve.one;if(this.curve.extended&&!this.t){this.t=this.x.redMul(this.y);if(!this.zOne)this.t=this.t.redMul(this.z.redInvm())}}}an(Point,rn.BasePoint);EdwardsCurve.prototype.pointFromJSON=function pointFromJSON(Wt){return Point.fromJSON(this,Wt)};EdwardsCurve.prototype.point=function point(Wt,Pt,en,tn){return new Point(this,Wt,Pt,en,tn)};Point.fromJSON=function fromJSON(Wt,Pt){return new Point(Wt,Pt[0],Pt[1],Pt[2])};Point.prototype.inspect=function inspect(){if(this.isInfinity())return"";return""};Point.prototype.isInfinity=function isInfinity(){return this.x.cmpn(0)===0&&(this.y.cmp(this.z)===0||this.zOne&&this.y.cmp(this.curve.c)===0)};Point.prototype._extDbl=function _extDbl(){var Wt=this.x.redSqr();var Pt=this.y.redSqr();var en=this.z.redSqr();en=en.redIAdd(en);var tn=this.curve._mulA(Wt);var nn=this.x.redAdd(this.y).redSqr().redISub(Wt).redISub(Pt);var an=tn.redAdd(Pt);var rn=an.redSub(en);var In=tn.redSub(Pt);var sn=nn.redMul(rn);var on=an.redMul(In);var cn=nn.redMul(In);var dn=rn.redMul(an);return this.curve.point(sn,on,dn,cn)};Point.prototype._projDbl=function _projDbl(){var Wt=this.x.redAdd(this.y).redSqr();var Pt=this.x.redSqr();var en=this.y.redSqr();var tn;var nn;var an;var rn;var In;var sn;if(this.curve.twisted){rn=this.curve._mulA(Pt);var on=rn.redAdd(en);if(this.zOne){tn=Wt.redSub(Pt).redSub(en).redMul(on.redSub(this.curve.two));nn=on.redMul(rn.redSub(en));an=on.redSqr().redSub(on).redSub(on)}else{In=this.z.redSqr();sn=on.redSub(In).redISub(In);tn=Wt.redSub(Pt).redISub(en).redMul(sn);nn=on.redMul(rn.redSub(en));an=on.redMul(sn)}}else{rn=Pt.redAdd(en);In=this.curve._mulC(this.z).redSqr();sn=rn.redSub(In).redSub(In);tn=this.curve._mulC(Wt.redISub(rn)).redMul(sn);nn=this.curve._mulC(rn).redMul(Pt.redISub(en));an=rn.redMul(sn)}return this.curve.point(tn,nn,an)};Point.prototype.dbl=function dbl(){if(this.isInfinity())return this;if(this.curve.extended)return this._extDbl();else return this._projDbl()};Point.prototype._extAdd=function _extAdd(Wt){var Pt=this.y.redSub(this.x).redMul(Wt.y.redSub(Wt.x));var en=this.y.redAdd(this.x).redMul(Wt.y.redAdd(Wt.x));var tn=this.t.redMul(this.curve.dd).redMul(Wt.t);var nn=this.z.redMul(Wt.z.redAdd(Wt.z));var an=en.redSub(Pt);var rn=nn.redSub(tn);var In=nn.redAdd(tn);var sn=en.redAdd(Pt);var on=an.redMul(rn);var cn=In.redMul(sn);var dn=an.redMul(sn);var un=rn.redMul(In);return this.curve.point(on,cn,un,dn)};Point.prototype._projAdd=function _projAdd(Wt){var Pt=this.z.redMul(Wt.z);var en=Pt.redSqr();var tn=this.x.redMul(Wt.x);var nn=this.y.redMul(Wt.y);var an=this.curve.d.redMul(tn).redMul(nn);var rn=en.redSub(an);var In=en.redAdd(an);var sn=this.x.redAdd(this.y).redMul(Wt.x.redAdd(Wt.y)).redISub(tn).redISub(nn);var on=Pt.redMul(rn).redMul(sn);var cn;var dn;if(this.curve.twisted){cn=Pt.redMul(In).redMul(nn.redSub(this.curve._mulA(tn)));dn=rn.redMul(In)}else{cn=Pt.redMul(In).redMul(nn.redSub(tn));dn=this.curve._mulC(rn).redMul(In)}return this.curve.point(on,cn,dn)};Point.prototype.add=function add(Wt){if(this.isInfinity())return Wt;if(Wt.isInfinity())return this;if(this.curve.extended)return this._extAdd(Wt);else return this._projAdd(Wt)};Point.prototype.mul=function mul(Wt){if(this._hasDoubles(Wt))return this.curve._fixedNafMul(this,Wt);else return this.curve._wnafMul(this,Wt)};Point.prototype.mulAdd=function mulAdd(Wt,Pt,en){return this.curve._wnafMulAdd(1,[this,Pt],[Wt,en],2,false)};Point.prototype.jmulAdd=function jmulAdd(Wt,Pt,en){return this.curve._wnafMulAdd(1,[this,Pt],[Wt,en],2,true)};Point.prototype.normalize=function normalize(){if(this.zOne)return this;var Wt=this.z.redInvm();this.x=this.x.redMul(Wt);this.y=this.y.redMul(Wt);if(this.t)this.t=this.t.redMul(Wt);this.z=this.curve.one;this.zOne=true;return this};Point.prototype.neg=function neg(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())};Point.prototype.getX=function getX(){this.normalize();return this.x.fromRed()};Point.prototype.getY=function getY(){this.normalize();return this.y.fromRed()};Point.prototype.eq=function eq(Wt){return this===Wt||this.getX().cmp(Wt.getX())===0&&this.getY().cmp(Wt.getY())===0};Point.prototype.eqXToP=function eqXToP(Wt){var Pt=Wt.toRed(this.curve.red).redMul(this.z);if(this.x.cmp(Pt)===0)return true;var en=Wt.clone();var tn=this.curve.redN.redMul(this.z);for(;;){en.iadd(this.curve.n);if(en.cmp(this.curve.p)>=0)return false;Pt.redIAdd(tn);if(this.x.cmp(Pt)===0)return true}};Point.prototype.toP=Point.prototype.normalize;Point.prototype.mixedAdd=Point.prototype.add},57773:(Wt,Pt,en)=>{"use strict";var tn=Pt;tn.base=en(58088);tn.short=en(23639);tn.mont=en(71047);tn.edwards=en(79981)},71047:(Wt,Pt,en)=>{"use strict";var tn=en(7967);var nn=en(39598);var an=en(58088);var rn=en(5028);function MontCurve(Wt){an.call(this,"mont",Wt);this.a=new tn(Wt.a,16).toRed(this.red);this.b=new tn(Wt.b,16).toRed(this.red);this.i4=new tn(4).toRed(this.red).redInvm();this.two=new tn(2).toRed(this.red);this.a24=this.i4.redMul(this.a.redAdd(this.two))}nn(MontCurve,an);Wt.exports=MontCurve;MontCurve.prototype.validate=function validate(Wt){var Pt=Wt.normalize().x;var en=Pt.redSqr();var tn=en.redMul(Pt).redAdd(en.redMul(this.a)).redAdd(Pt);var nn=tn.redSqrt();return nn.redSqr().cmp(tn)===0};function Point(Wt,Pt,en){an.BasePoint.call(this,Wt,"projective");if(Pt===null&&en===null){this.x=this.curve.one;this.z=this.curve.zero}else{this.x=new tn(Pt,16);this.z=new tn(en,16);if(!this.x.red)this.x=this.x.toRed(this.curve.red);if(!this.z.red)this.z=this.z.toRed(this.curve.red)}}nn(Point,an.BasePoint);MontCurve.prototype.decodePoint=function decodePoint(Wt,Pt){return this.point(rn.toArray(Wt,Pt),1)};MontCurve.prototype.point=function point(Wt,Pt){return new Point(this,Wt,Pt)};MontCurve.prototype.pointFromJSON=function pointFromJSON(Wt){return Point.fromJSON(this,Wt)};Point.prototype.precompute=function precompute(){};Point.prototype._encode=function _encode(){return this.getX().toArray("be",this.curve.p.byteLength())};Point.fromJSON=function fromJSON(Wt,Pt){return new Point(Wt,Pt[0],Pt[1]||Wt.one)};Point.prototype.inspect=function inspect(){if(this.isInfinity())return"";return""};Point.prototype.isInfinity=function isInfinity(){return this.z.cmpn(0)===0};Point.prototype.dbl=function dbl(){var Wt=this.x.redAdd(this.z);var Pt=Wt.redSqr();var en=this.x.redSub(this.z);var tn=en.redSqr();var nn=Pt.redSub(tn);var an=Pt.redMul(tn);var rn=nn.redMul(tn.redAdd(this.curve.a24.redMul(nn)));return this.curve.point(an,rn)};Point.prototype.add=function add(){throw new Error("Not supported on Montgomery curve")};Point.prototype.diffAdd=function diffAdd(Wt,Pt){var en=this.x.redAdd(this.z);var tn=this.x.redSub(this.z);var nn=Wt.x.redAdd(Wt.z);var an=Wt.x.redSub(Wt.z);var rn=an.redMul(en);var In=nn.redMul(tn);var sn=Pt.z.redMul(rn.redAdd(In).redSqr());var on=Pt.x.redMul(rn.redISub(In).redSqr());return this.curve.point(sn,on)};Point.prototype.mul=function mul(Wt){var Pt=Wt.clone();var en=this;var tn=this.curve.point(null,null);var nn=this;for(var an=[];Pt.cmpn(0)!==0;Pt.iushrn(1))an.push(Pt.andln(1));for(var rn=an.length-1;rn>=0;rn--){if(an[rn]===0){en=en.diffAdd(tn,nn);tn=tn.dbl()}else{tn=en.diffAdd(tn,nn);en=en.dbl()}}return tn};Point.prototype.mulAdd=function mulAdd(){throw new Error("Not supported on Montgomery curve")};Point.prototype.jumlAdd=function jumlAdd(){throw new Error("Not supported on Montgomery curve")};Point.prototype.eq=function eq(Wt){return this.getX().cmp(Wt.getX())===0};Point.prototype.normalize=function normalize(){this.x=this.x.redMul(this.z.redInvm());this.z=this.curve.one;return this};Point.prototype.getX=function getX(){this.normalize();return this.x.fromRed()}},23639:(Wt,Pt,en)=>{"use strict";var tn=en(5028);var nn=en(7967);var an=en(39598);var rn=en(58088);var In=tn.assert;function ShortCurve(Wt){rn.call(this,"short",Wt);this.a=new nn(Wt.a,16).toRed(this.red);this.b=new nn(Wt.b,16).toRed(this.red);this.tinv=this.two.redInvm();this.zeroA=this.a.fromRed().cmpn(0)===0;this.threeA=this.a.fromRed().sub(this.p).cmpn(-3)===0;this.endo=this._getEndomorphism(Wt);this._endoWnafT1=new Array(4);this._endoWnafT2=new Array(4)}an(ShortCurve,rn);Wt.exports=ShortCurve;ShortCurve.prototype._getEndomorphism=function _getEndomorphism(Wt){if(!this.zeroA||!this.g||!this.n||this.p.modn(3)!==1)return;var Pt;var en;if(Wt.beta){Pt=new nn(Wt.beta,16).toRed(this.red)}else{var tn=this._getEndoRoots(this.p);Pt=tn[0].cmp(tn[1])<0?tn[0]:tn[1];Pt=Pt.toRed(this.red)}if(Wt.lambda){en=new nn(Wt.lambda,16)}else{var an=this._getEndoRoots(this.n);if(this.g.mul(an[0]).x.cmp(this.g.x.redMul(Pt))===0){en=an[0]}else{en=an[1];In(this.g.mul(en).x.cmp(this.g.x.redMul(Pt))===0)}}var rn;if(Wt.basis){rn=Wt.basis.map((function(Wt){return{a:new nn(Wt.a,16),b:new nn(Wt.b,16)}}))}else{rn=this._getEndoBasis(en)}return{beta:Pt,lambda:en,basis:rn}};ShortCurve.prototype._getEndoRoots=function _getEndoRoots(Wt){var Pt=Wt===this.p?this.red:nn.mont(Wt);var en=new nn(2).toRed(Pt).redInvm();var tn=en.redNeg();var an=new nn(3).toRed(Pt).redNeg().redSqrt().redMul(en);var rn=tn.redAdd(an).fromRed();var In=tn.redSub(an).fromRed();return[rn,In]};ShortCurve.prototype._getEndoBasis=function _getEndoBasis(Wt){var Pt=this.n.ushrn(Math.floor(this.n.bitLength()/2));var en=Wt;var tn=this.n.clone();var an=new nn(1);var rn=new nn(0);var In=new nn(0);var sn=new nn(1);var on;var cn;var dn;var un;var pn;var mn;var bn;var Gn=0;var hn;var Zn;while(en.cmpn(0)!==0){var An=tn.div(en);hn=tn.sub(An.mul(en));Zn=In.sub(An.mul(an));var Wn=sn.sub(An.mul(rn));if(!dn&&hn.cmp(Pt)<0){on=bn.neg();cn=an;dn=hn.neg();un=Zn}else if(dn&&++Gn===2){break}bn=hn;tn=en;en=hn;In=an;an=Zn;sn=rn;rn=Wn}pn=hn.neg();mn=Zn;var Nn=dn.sqr().add(un.sqr());var gn=pn.sqr().add(mn.sqr());if(gn.cmp(Nn)>=0){pn=on;mn=cn}if(dn.negative){dn=dn.neg();un=un.neg()}if(pn.negative){pn=pn.neg();mn=mn.neg()}return[{a:dn,b:un},{a:pn,b:mn}]};ShortCurve.prototype._endoSplit=function _endoSplit(Wt){var Pt=this.endo.basis;var en=Pt[0];var tn=Pt[1];var nn=tn.b.mul(Wt).divRound(this.n);var an=en.b.neg().mul(Wt).divRound(this.n);var rn=nn.mul(en.a);var In=an.mul(tn.a);var sn=nn.mul(en.b);var on=an.mul(tn.b);var cn=Wt.sub(rn).sub(In);var dn=sn.add(on).neg();return{k1:cn,k2:dn}};ShortCurve.prototype.pointFromX=function pointFromX(Wt,Pt){Wt=new nn(Wt,16);if(!Wt.red)Wt=Wt.toRed(this.red);var en=Wt.redSqr().redMul(Wt).redIAdd(Wt.redMul(this.a)).redIAdd(this.b);var tn=en.redSqrt();if(tn.redSqr().redSub(en).cmp(this.zero)!==0)throw new Error("invalid point");var an=tn.fromRed().isOdd();if(Pt&&!an||!Pt&&an)tn=tn.redNeg();return this.point(Wt,tn)};ShortCurve.prototype.validate=function validate(Wt){if(Wt.inf)return true;var Pt=Wt.x;var en=Wt.y;var tn=this.a.redMul(Pt);var nn=Pt.redSqr().redMul(Pt).redIAdd(tn).redIAdd(this.b);return en.redSqr().redISub(nn).cmpn(0)===0};ShortCurve.prototype._endoWnafMulAdd=function _endoWnafMulAdd(Wt,Pt,en){var tn=this._endoWnafT1;var nn=this._endoWnafT2;for(var an=0;an";return""};Point.prototype.isInfinity=function isInfinity(){return this.inf};Point.prototype.add=function add(Wt){if(this.inf)return Wt;if(Wt.inf)return this;if(this.eq(Wt))return this.dbl();if(this.neg().eq(Wt))return this.curve.point(null,null);if(this.x.cmp(Wt.x)===0)return this.curve.point(null,null);var Pt=this.y.redSub(Wt.y);if(Pt.cmpn(0)!==0)Pt=Pt.redMul(this.x.redSub(Wt.x).redInvm());var en=Pt.redSqr().redISub(this.x).redISub(Wt.x);var tn=Pt.redMul(this.x.redSub(en)).redISub(this.y);return this.curve.point(en,tn)};Point.prototype.dbl=function dbl(){if(this.inf)return this;var Wt=this.y.redAdd(this.y);if(Wt.cmpn(0)===0)return this.curve.point(null,null);var Pt=this.curve.a;var en=this.x.redSqr();var tn=Wt.redInvm();var nn=en.redAdd(en).redIAdd(en).redIAdd(Pt).redMul(tn);var an=nn.redSqr().redISub(this.x.redAdd(this.x));var rn=nn.redMul(this.x.redSub(an)).redISub(this.y);return this.curve.point(an,rn)};Point.prototype.getX=function getX(){return this.x.fromRed()};Point.prototype.getY=function getY(){return this.y.fromRed()};Point.prototype.mul=function mul(Wt){Wt=new nn(Wt,16);if(this.isInfinity())return this;else if(this._hasDoubles(Wt))return this.curve._fixedNafMul(this,Wt);else if(this.curve.endo)return this.curve._endoWnafMulAdd([this],[Wt]);else return this.curve._wnafMul(this,Wt)};Point.prototype.mulAdd=function mulAdd(Wt,Pt,en){var tn=[this,Pt];var nn=[Wt,en];if(this.curve.endo)return this.curve._endoWnafMulAdd(tn,nn);else return this.curve._wnafMulAdd(1,tn,nn,2)};Point.prototype.jmulAdd=function jmulAdd(Wt,Pt,en){var tn=[this,Pt];var nn=[Wt,en];if(this.curve.endo)return this.curve._endoWnafMulAdd(tn,nn,true);else return this.curve._wnafMulAdd(1,tn,nn,2,true)};Point.prototype.eq=function eq(Wt){return this===Wt||this.inf===Wt.inf&&(this.inf||this.x.cmp(Wt.x)===0&&this.y.cmp(Wt.y)===0)};Point.prototype.neg=function neg(Wt){if(this.inf)return this;var Pt=this.curve.point(this.x,this.y.redNeg());if(Wt&&this.precomputed){var en=this.precomputed;var negate=function(Wt){return Wt.neg()};Pt.precomputed={naf:en.naf&&{wnd:en.naf.wnd,points:en.naf.points.map(negate)},doubles:en.doubles&&{step:en.doubles.step,points:en.doubles.points.map(negate)}}}return Pt};Point.prototype.toJ=function toJ(){if(this.inf)return this.curve.jpoint(null,null,null);var Wt=this.curve.jpoint(this.x,this.y,this.curve.one);return Wt};function JPoint(Wt,Pt,en,tn){rn.BasePoint.call(this,Wt,"jacobian");if(Pt===null&&en===null&&tn===null){this.x=this.curve.one;this.y=this.curve.one;this.z=new nn(0)}else{this.x=new nn(Pt,16);this.y=new nn(en,16);this.z=new nn(tn,16)}if(!this.x.red)this.x=this.x.toRed(this.curve.red);if(!this.y.red)this.y=this.y.toRed(this.curve.red);if(!this.z.red)this.z=this.z.toRed(this.curve.red);this.zOne=this.z===this.curve.one}an(JPoint,rn.BasePoint);ShortCurve.prototype.jpoint=function jpoint(Wt,Pt,en){return new JPoint(this,Wt,Pt,en)};JPoint.prototype.toP=function toP(){if(this.isInfinity())return this.curve.point(null,null);var Wt=this.z.redInvm();var Pt=Wt.redSqr();var en=this.x.redMul(Pt);var tn=this.y.redMul(Pt).redMul(Wt);return this.curve.point(en,tn)};JPoint.prototype.neg=function neg(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)};JPoint.prototype.add=function add(Wt){if(this.isInfinity())return Wt;if(Wt.isInfinity())return this;var Pt=Wt.z.redSqr();var en=this.z.redSqr();var tn=this.x.redMul(Pt);var nn=Wt.x.redMul(en);var an=this.y.redMul(Pt.redMul(Wt.z));var rn=Wt.y.redMul(en.redMul(this.z));var In=tn.redSub(nn);var sn=an.redSub(rn);if(In.cmpn(0)===0){if(sn.cmpn(0)!==0)return this.curve.jpoint(null,null,null);else return this.dbl()}var on=In.redSqr();var cn=on.redMul(In);var dn=tn.redMul(on);var un=sn.redSqr().redIAdd(cn).redISub(dn).redISub(dn);var pn=sn.redMul(dn.redISub(un)).redISub(an.redMul(cn));var mn=this.z.redMul(Wt.z).redMul(In);return this.curve.jpoint(un,pn,mn)};JPoint.prototype.mixedAdd=function mixedAdd(Wt){if(this.isInfinity())return Wt.toJ();if(Wt.isInfinity())return this;var Pt=this.z.redSqr();var en=this.x;var tn=Wt.x.redMul(Pt);var nn=this.y;var an=Wt.y.redMul(Pt).redMul(this.z);var rn=en.redSub(tn);var In=nn.redSub(an);if(rn.cmpn(0)===0){if(In.cmpn(0)!==0)return this.curve.jpoint(null,null,null);else return this.dbl()}var sn=rn.redSqr();var on=sn.redMul(rn);var cn=en.redMul(sn);var dn=In.redSqr().redIAdd(on).redISub(cn).redISub(cn);var un=In.redMul(cn.redISub(dn)).redISub(nn.redMul(on));var pn=this.z.redMul(rn);return this.curve.jpoint(dn,un,pn)};JPoint.prototype.dblp=function dblp(Wt){if(Wt===0)return this;if(this.isInfinity())return this;if(!Wt)return this.dbl();var Pt;if(this.curve.zeroA||this.curve.threeA){var en=this;for(Pt=0;Pt=0)return false;en.redIAdd(nn);if(this.x.cmp(en)===0)return true}};JPoint.prototype.inspect=function inspect(){if(this.isInfinity())return"";return""};JPoint.prototype.isInfinity=function isInfinity(){return this.z.cmpn(0)===0}},30997:(Wt,Pt,en)=>{"use strict";var tn=Pt;var nn=en(27477);var an=en(57773);var rn=en(5028);var In=rn.assert;function PresetCurve(Wt){if(Wt.type==="short")this.curve=new an.short(Wt);else if(Wt.type==="edwards")this.curve=new an.edwards(Wt);else this.curve=new an.mont(Wt);this.g=this.curve.g;this.n=this.curve.n;this.hash=Wt.hash;In(this.g.validate(),"Invalid curve");In(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}tn.PresetCurve=PresetCurve;function defineCurve(Wt,Pt){Object.defineProperty(tn,Wt,{configurable:true,enumerable:true,get:function(){var en=new PresetCurve(Pt);Object.defineProperty(tn,Wt,{configurable:true,enumerable:true,value:en});return en}})}defineCurve("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:nn.sha256,gRed:false,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]});defineCurve("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:nn.sha256,gRed:false,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]});defineCurve("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:nn.sha256,gRed:false,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]});defineCurve("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:nn.sha384,gRed:false,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"]});defineCurve("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:nn.sha512,gRed:false,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"]});defineCurve("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:nn.sha256,gRed:false,g:["9"]});defineCurve("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:nn.sha256,gRed:false,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});var sn;try{sn=en(82252)}catch(Wt){sn=undefined}defineCurve("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:nn.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:false,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",sn]})},75070:(Wt,Pt,en)=>{"use strict";var tn=en(7967);var nn=en(63768);var an=en(5028);var rn=en(30997);var In=en(49586);var sn=an.assert;var on=en(53993);var cn=en(24816);function EC(Wt){if(!(this instanceof EC))return new EC(Wt);if(typeof Wt==="string"){sn(Object.prototype.hasOwnProperty.call(rn,Wt),"Unknown curve "+Wt);Wt=rn[Wt]}if(Wt instanceof rn.PresetCurve)Wt={curve:Wt};this.curve=Wt.curve.curve;this.n=this.curve.n;this.nh=this.n.ushrn(1);this.g=this.curve.g;this.g=Wt.curve.g;this.g.precompute(Wt.curve.n.bitLength()+1);this.hash=Wt.hash||Wt.curve.hash}Wt.exports=EC;EC.prototype.keyPair=function keyPair(Wt){return new on(this,Wt)};EC.prototype.keyFromPrivate=function keyFromPrivate(Wt,Pt){return on.fromPrivate(this,Wt,Pt)};EC.prototype.keyFromPublic=function keyFromPublic(Wt,Pt){return on.fromPublic(this,Wt,Pt)};EC.prototype.genKeyPair=function genKeyPair(Wt){if(!Wt)Wt={};var Pt=new nn({hash:this.hash,pers:Wt.pers,persEnc:Wt.persEnc||"utf8",entropy:Wt.entropy||In(this.hash.hmacStrength),entropyEnc:Wt.entropy&&Wt.entropyEnc||"utf8",nonce:this.n.toArray()});var en=this.n.byteLength();var an=this.n.sub(new tn(2));for(;;){var rn=new tn(Pt.generate(en));if(rn.cmp(an)>0)continue;rn.iaddn(1);return this.keyFromPrivate(rn)}};EC.prototype._truncateToN=function _truncateToN(Wt,Pt){var en=Wt.byteLength()*8-this.n.bitLength();if(en>0)Wt=Wt.ushrn(en);if(!Pt&&Wt.cmp(this.n)>=0)return Wt.sub(this.n);else return Wt};EC.prototype.sign=function sign(Wt,Pt,en,an){if(typeof en==="object"){an=en;en=null}if(!an)an={};Pt=this.keyFromPrivate(Pt,en);Wt=this._truncateToN(new tn(Wt,16));var rn=this.n.byteLength();var In=Pt.getPrivate().toArray("be",rn);var sn=Wt.toArray("be",rn);var on=new nn({hash:this.hash,entropy:In,nonce:sn,pers:an.pers,persEnc:an.persEnc||"utf8"});var dn=this.n.sub(new tn(1));for(var un=0;;un++){var pn=an.k?an.k(un):new tn(on.generate(this.n.byteLength()));pn=this._truncateToN(pn,true);if(pn.cmpn(1)<=0||pn.cmp(dn)>=0)continue;var mn=this.g.mul(pn);if(mn.isInfinity())continue;var bn=mn.getX();var Gn=bn.umod(this.n);if(Gn.cmpn(0)===0)continue;var hn=pn.invm(this.n).mul(Gn.mul(Pt.getPrivate()).iadd(Wt));hn=hn.umod(this.n);if(hn.cmpn(0)===0)continue;var Zn=(mn.getY().isOdd()?1:0)|(bn.cmp(Gn)!==0?2:0);if(an.canonical&&hn.cmp(this.nh)>0){hn=this.n.sub(hn);Zn^=1}return new cn({r:Gn,s:hn,recoveryParam:Zn})}};EC.prototype.verify=function verify(Wt,Pt,en,nn){Wt=this._truncateToN(new tn(Wt,16));en=this.keyFromPublic(en,nn);Pt=new cn(Pt,"hex");var an=Pt.r;var rn=Pt.s;if(an.cmpn(1)<0||an.cmp(this.n)>=0)return false;if(rn.cmpn(1)<0||rn.cmp(this.n)>=0)return false;var In=rn.invm(this.n);var sn=In.mul(Wt).umod(this.n);var on=In.mul(an).umod(this.n);var dn;if(!this.curve._maxwellTrick){dn=this.g.mulAdd(sn,en.getPublic(),on);if(dn.isInfinity())return false;return dn.getX().umod(this.n).cmp(an)===0}dn=this.g.jmulAdd(sn,en.getPublic(),on);if(dn.isInfinity())return false;return dn.eqXToP(an)};EC.prototype.recoverPubKey=function(Wt,Pt,en,nn){sn((3&en)===en,"The recovery param is more than two bits");Pt=new cn(Pt,nn);var an=this.n;var rn=new tn(Wt);var In=Pt.r;var on=Pt.s;var dn=en&1;var un=en>>1;if(In.cmp(this.curve.p.umod(this.curve.n))>=0&&un)throw new Error("Unable to find sencond key candinate");if(un)In=this.curve.pointFromX(In.add(this.curve.n),dn);else In=this.curve.pointFromX(In,dn);var pn=Pt.r.invm(an);var mn=an.sub(rn).mul(pn).umod(an);var bn=on.mul(pn).umod(an);return this.g.mulAdd(mn,In,bn)};EC.prototype.getKeyRecoveryParam=function(Wt,Pt,en,tn){Pt=new cn(Pt,tn);if(Pt.recoveryParam!==null)return Pt.recoveryParam;for(var nn=0;nn<4;nn++){var an;try{an=this.recoverPubKey(Wt,Pt,nn)}catch(Wt){continue}if(an.eq(en))return nn}throw new Error("Unable to find valid recovery factor")}},53993:(Wt,Pt,en)=>{"use strict";var tn=en(7967);var nn=en(5028);var an=nn.assert;function KeyPair(Wt,Pt){this.ec=Wt;this.priv=null;this.pub=null;if(Pt.priv)this._importPrivate(Pt.priv,Pt.privEnc);if(Pt.pub)this._importPublic(Pt.pub,Pt.pubEnc)}Wt.exports=KeyPair;KeyPair.fromPublic=function fromPublic(Wt,Pt,en){if(Pt instanceof KeyPair)return Pt;return new KeyPair(Wt,{pub:Pt,pubEnc:en})};KeyPair.fromPrivate=function fromPrivate(Wt,Pt,en){if(Pt instanceof KeyPair)return Pt;return new KeyPair(Wt,{priv:Pt,privEnc:en})};KeyPair.prototype.validate=function validate(){var Wt=this.getPublic();if(Wt.isInfinity())return{result:false,reason:"Invalid public key"};if(!Wt.validate())return{result:false,reason:"Public key is not a point"};if(!Wt.mul(this.ec.curve.n).isInfinity())return{result:false,reason:"Public key * N != O"};return{result:true,reason:null}};KeyPair.prototype.getPublic=function getPublic(Wt,Pt){if(typeof Wt==="string"){Pt=Wt;Wt=null}if(!this.pub)this.pub=this.ec.g.mul(this.priv);if(!Pt)return this.pub;return this.pub.encode(Pt,Wt)};KeyPair.prototype.getPrivate=function getPrivate(Wt){if(Wt==="hex")return this.priv.toString(16,2);else return this.priv};KeyPair.prototype._importPrivate=function _importPrivate(Wt,Pt){this.priv=new tn(Wt,Pt||16);this.priv=this.priv.umod(this.ec.curve.n)};KeyPair.prototype._importPublic=function _importPublic(Wt,Pt){if(Wt.x||Wt.y){if(this.ec.curve.type==="mont"){an(Wt.x,"Need x coordinate")}else if(this.ec.curve.type==="short"||this.ec.curve.type==="edwards"){an(Wt.x&&Wt.y,"Need both x and y coordinate")}this.pub=this.ec.curve.point(Wt.x,Wt.y);return}this.pub=this.ec.curve.decodePoint(Wt,Pt)};KeyPair.prototype.derive=function derive(Wt){if(!Wt.validate()){an(Wt.validate(),"public point not validated")}return Wt.mul(this.priv).getX()};KeyPair.prototype.sign=function sign(Wt,Pt,en){return this.ec.sign(Wt,this,Pt,en)};KeyPair.prototype.verify=function verify(Wt,Pt){return this.ec.verify(Wt,Pt,this)};KeyPair.prototype.inspect=function inspect(){return""}},24816:(Wt,Pt,en)=>{"use strict";var tn=en(7967);var nn=en(5028);var an=nn.assert;function Signature(Wt,Pt){if(Wt instanceof Signature)return Wt;if(this._importDER(Wt,Pt))return;an(Wt.r&&Wt.s,"Signature without r or s");this.r=new tn(Wt.r,16);this.s=new tn(Wt.s,16);if(Wt.recoveryParam===undefined)this.recoveryParam=null;else this.recoveryParam=Wt.recoveryParam}Wt.exports=Signature;function Position(){this.place=0}function getLength(Wt,Pt){var en=Wt[Pt.place++];if(!(en&128)){return en}var tn=en&15;if(tn===0||tn>4){return false}var nn=0;for(var an=0,rn=Pt.place;an>>=0}if(nn<=127){return false}Pt.place=rn;return nn}function rmPadding(Wt){var Pt=0;var en=Wt.length-1;while(!Wt[Pt]&&!(Wt[Pt+1]&128)&&Pt>>3);Wt.push(en|128);while(--en){Wt.push(Pt>>>(en<<3)&255)}Wt.push(Pt)}Signature.prototype.toDER=function toDER(Wt){var Pt=this.r.toArray();var en=this.s.toArray();if(Pt[0]&128)Pt=[0].concat(Pt);if(en[0]&128)en=[0].concat(en);Pt=rmPadding(Pt);en=rmPadding(en);while(!en[0]&&!(en[1]&128)){en=en.slice(1)}var tn=[2];constructLength(tn,Pt.length);tn=tn.concat(Pt);tn.push(2);constructLength(tn,en.length);var an=tn.concat(en);var rn=[48];constructLength(rn,an.length);rn=rn.concat(an);return nn.encode(rn,Wt)}},93225:(Wt,Pt,en)=>{"use strict";var tn=en(27477);var nn=en(30997);var an=en(5028);var rn=an.assert;var In=an.parseBytes;var sn=en(83898);var on=en(52303);function EDDSA(Wt){rn(Wt==="ed25519","only tested with ed25519 so far");if(!(this instanceof EDDSA))return new EDDSA(Wt);Wt=nn[Wt].curve;this.curve=Wt;this.g=Wt.g;this.g.precompute(Wt.n.bitLength()+1);this.pointClass=Wt.point().constructor;this.encodingLength=Math.ceil(Wt.n.bitLength()/8);this.hash=tn.sha512}Wt.exports=EDDSA;EDDSA.prototype.sign=function sign(Wt,Pt){Wt=In(Wt);var en=this.keyFromSecret(Pt);var tn=this.hashInt(en.messagePrefix(),Wt);var nn=this.g.mul(tn);var an=this.encodePoint(nn);var rn=this.hashInt(an,en.pubBytes(),Wt).mul(en.priv());var sn=tn.add(rn).umod(this.curve.n);return this.makeSignature({R:nn,S:sn,Rencoded:an})};EDDSA.prototype.verify=function verify(Wt,Pt,en){Wt=In(Wt);Pt=this.makeSignature(Pt);var tn=this.keyFromPublic(en);var nn=this.hashInt(Pt.Rencoded(),tn.pubBytes(),Wt);var an=this.g.mul(Pt.S());var rn=Pt.R().add(tn.pub().mul(nn));return rn.eq(an)};EDDSA.prototype.hashInt=function hashInt(){var Wt=this.hash();for(var Pt=0;Pt{"use strict";var tn=en(5028);var nn=tn.assert;var an=tn.parseBytes;var rn=tn.cachedProperty;function KeyPair(Wt,Pt){this.eddsa=Wt;this._secret=an(Pt.secret);if(Wt.isPoint(Pt.pub))this._pub=Pt.pub;else this._pubBytes=an(Pt.pub)}KeyPair.fromPublic=function fromPublic(Wt,Pt){if(Pt instanceof KeyPair)return Pt;return new KeyPair(Wt,{pub:Pt})};KeyPair.fromSecret=function fromSecret(Wt,Pt){if(Pt instanceof KeyPair)return Pt;return new KeyPair(Wt,{secret:Pt})};KeyPair.prototype.secret=function secret(){return this._secret};rn(KeyPair,"pubBytes",(function pubBytes(){return this.eddsa.encodePoint(this.pub())}));rn(KeyPair,"pub",(function pub(){if(this._pubBytes)return this.eddsa.decodePoint(this._pubBytes);return this.eddsa.g.mul(this.priv())}));rn(KeyPair,"privBytes",(function privBytes(){var Wt=this.eddsa;var Pt=this.hash();var en=Wt.encodingLength-1;var tn=Pt.slice(0,Wt.encodingLength);tn[0]&=248;tn[en]&=127;tn[en]|=64;return tn}));rn(KeyPair,"priv",(function priv(){return this.eddsa.decodeInt(this.privBytes())}));rn(KeyPair,"hash",(function hash(){return this.eddsa.hash().update(this.secret()).digest()}));rn(KeyPair,"messagePrefix",(function messagePrefix(){return this.hash().slice(this.eddsa.encodingLength)}));KeyPair.prototype.sign=function sign(Wt){nn(this._secret,"KeyPair can only verify");return this.eddsa.sign(Wt,this)};KeyPair.prototype.verify=function verify(Wt,Pt){return this.eddsa.verify(Wt,Pt,this)};KeyPair.prototype.getSecret=function getSecret(Wt){nn(this._secret,"KeyPair is public only");return tn.encode(this.secret(),Wt)};KeyPair.prototype.getPublic=function getPublic(Wt){return tn.encode(this.pubBytes(),Wt)};Wt.exports=KeyPair},52303:(Wt,Pt,en)=>{"use strict";var tn=en(7967);var nn=en(5028);var an=nn.assert;var rn=nn.cachedProperty;var In=nn.parseBytes;function Signature(Wt,Pt){this.eddsa=Wt;if(typeof Pt!=="object")Pt=In(Pt);if(Array.isArray(Pt)){Pt={R:Pt.slice(0,Wt.encodingLength),S:Pt.slice(Wt.encodingLength)}}an(Pt.R&&Pt.S,"Signature without R or S");if(Wt.isPoint(Pt.R))this._R=Pt.R;if(Pt.S instanceof tn)this._S=Pt.S;this._Rencoded=Array.isArray(Pt.R)?Pt.R:Pt.Rencoded;this._Sencoded=Array.isArray(Pt.S)?Pt.S:Pt.Sencoded}rn(Signature,"S",(function S(){return this.eddsa.decodeInt(this.Sencoded())}));rn(Signature,"R",(function R(){return this.eddsa.decodePoint(this.Rencoded())}));rn(Signature,"Rencoded",(function Rencoded(){return this.eddsa.encodePoint(this.R())}));rn(Signature,"Sencoded",(function Sencoded(){return this.eddsa.encodeInt(this.S())}));Signature.prototype.toBytes=function toBytes(){return this.Rencoded().concat(this.Sencoded())};Signature.prototype.toHex=function toHex(){return nn.encode(this.toBytes(),"hex").toUpperCase()};Wt.exports=Signature},82252:Wt=>{Wt.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"]]}}},5028:(Wt,Pt,en)=>{"use strict";var tn=Pt;var nn=en(7967);var an=en(63798);var rn=en(88660);tn.assert=an;tn.toArray=rn.toArray;tn.zero2=rn.zero2;tn.toHex=rn.toHex;tn.encode=rn.encode;function getNAF(Wt,Pt,en){var tn=new Array(Math.max(Wt.bitLength(),en)+1);tn.fill(0);var nn=1<(nn>>1)-1)In=(nn>>1)-sn;else In=sn;an.isubn(In)}else{In=0}tn[rn]=In;an.iushrn(1)}return tn}tn.getNAF=getNAF;function getJSF(Wt,Pt){var en=[[],[]];Wt=Wt.clone();Pt=Pt.clone();var tn=0;var nn=0;var an;while(Wt.cmpn(-tn)>0||Pt.cmpn(-nn)>0){var rn=Wt.andln(3)+tn&3;var In=Pt.andln(3)+nn&3;if(rn===3)rn=-1;if(In===3)In=-1;var sn;if((rn&1)===0){sn=0}else{an=Wt.andln(7)+tn&7;if((an===3||an===5)&&In===2)sn=-rn;else sn=rn}en[0].push(sn);var on;if((In&1)===0){on=0}else{an=Pt.andln(7)+nn&7;if((an===3||an===5)&&rn===2)on=-In;else on=In}en[1].push(on);if(2*tn===sn+1)tn=1-tn;if(2*nn===on+1)nn=1-nn;Wt.iushrn(1);Pt.iushrn(1)}return en}tn.getJSF=getJSF;function cachedProperty(Wt,Pt,en){var tn="_"+Pt;Wt.prototype[Pt]=function cachedProperty(){return this[tn]!==undefined?this[tn]:this[tn]=en.call(this)}}tn.cachedProperty=cachedProperty;function parseBytes(Wt){return typeof Wt==="string"?tn.toArray(Wt,"hex"):Wt}tn.parseBytes=parseBytes;function intFromLE(Wt){return new nn(Wt,"hex","le")}tn.intFromLE=intFromLE},7967:function(Wt,Pt,en){Wt=en.nmd(Wt);(function(Wt,Pt){"use strict";function assert(Wt,Pt){if(!Wt)throw new Error(Pt||"Assertion failed")}function inherits(Wt,Pt){Wt.super_=Pt;var TempCtor=function(){};TempCtor.prototype=Pt.prototype;Wt.prototype=new TempCtor;Wt.prototype.constructor=Wt}function BN(Wt,Pt,en){if(BN.isBN(Wt)){return Wt}this.negative=0;this.words=null;this.length=0;this.red=null;if(Wt!==null){if(Pt==="le"||Pt==="be"){en=Pt;Pt=10}this._init(Wt||0,Pt||10,en||"be")}}if(typeof Wt==="object"){Wt.exports=BN}else{Pt.BN=BN}BN.BN=BN;BN.wordSize=26;var tn;try{if(typeof window!=="undefined"&&typeof window.Buffer!=="undefined"){tn=window.Buffer}else{tn=en(20181).Buffer}}catch(Wt){}BN.isBN=function isBN(Wt){if(Wt instanceof BN){return true}return Wt!==null&&typeof Wt==="object"&&Wt.constructor.wordSize===BN.wordSize&&Array.isArray(Wt.words)};BN.max=function max(Wt,Pt){if(Wt.cmp(Pt)>0)return Wt;return Pt};BN.min=function min(Wt,Pt){if(Wt.cmp(Pt)<0)return Wt;return Pt};BN.prototype._init=function init(Wt,Pt,en){if(typeof Wt==="number"){return this._initNumber(Wt,Pt,en)}if(typeof Wt==="object"){return this._initArray(Wt,Pt,en)}if(Pt==="hex"){Pt=16}assert(Pt===(Pt|0)&&Pt>=2&&Pt<=36);Wt=Wt.toString().replace(/\s+/g,"");var tn=0;if(Wt[0]==="-"){tn++;this.negative=1}if(tn=0;tn-=3){an=Wt[tn]|Wt[tn-1]<<8|Wt[tn-2]<<16;this.words[nn]|=an<>>26-rn&67108863;rn+=24;if(rn>=26){rn-=26;nn++}}}else if(en==="le"){for(tn=0,nn=0;tn>>26-rn&67108863;rn+=24;if(rn>=26){rn-=26;nn++}}}return this.strip()};function parseHex4Bits(Wt,Pt){var en=Wt.charCodeAt(Pt);if(en>=65&&en<=70){return en-55}else if(en>=97&&en<=102){return en-87}else{return en-48&15}}function parseHexByte(Wt,Pt,en){var tn=parseHex4Bits(Wt,en);if(en-1>=Pt){tn|=parseHex4Bits(Wt,en-1)<<4}return tn}BN.prototype._parseHex=function _parseHex(Wt,Pt,en){this.length=Math.ceil((Wt.length-Pt)/6);this.words=new Array(this.length);for(var tn=0;tn=Pt;tn-=2){rn=parseHexByte(Wt,Pt,tn)<=18){nn-=18;an+=1;this.words[an]|=rn>>>26}else{nn+=8}}}else{var In=Wt.length-Pt;for(tn=In%2===0?Pt+1:Pt;tn=18){nn-=18;an+=1;this.words[an]|=rn>>>26}else{nn+=8}}}this.strip()};function parseBase(Wt,Pt,en,tn){var nn=0;var an=Math.min(Wt.length,en);for(var rn=Pt;rn=49){nn+=In-49+10}else if(In>=17){nn+=In-17+10}else{nn+=In}}return nn}BN.prototype._parseBase=function _parseBase(Wt,Pt,en){this.words=[0];this.length=1;for(var tn=0,nn=1;nn<=67108863;nn*=Pt){tn++}tn--;nn=nn/Pt|0;var an=Wt.length-en;var rn=an%tn;var In=Math.min(an,an-rn)+en;var sn=0;for(var on=en;on1&&this.words[this.length-1]===0){this.length--}return this._normSign()};BN.prototype._normSign=function _normSign(){if(this.length===1&&this.words[0]===0){this.negative=0}return this};BN.prototype.inspect=function inspect(){return(this.red?""};var nn=["","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"];var an=[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];var rn=[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];BN.prototype.toString=function toString(Wt,Pt){Wt=Wt||10;Pt=Pt|0||1;var en;if(Wt===16||Wt==="hex"){en="";var tn=0;var In=0;for(var sn=0;sn>>24-tn&16777215;if(In!==0||sn!==this.length-1){en=nn[6-cn.length]+cn+en}else{en=cn+en}tn+=2;if(tn>=26){tn-=26;sn--}}if(In!==0){en=In.toString(16)+en}while(en.length%Pt!==0){en="0"+en}if(this.negative!==0){en="-"+en}return en}if(Wt===(Wt|0)&&Wt>=2&&Wt<=36){var dn=an[Wt];var un=rn[Wt];en="";var pn=this.clone();pn.negative=0;while(!pn.isZero()){var mn=pn.modn(un).toString(Wt);pn=pn.idivn(un);if(!pn.isZero()){en=nn[dn-mn.length]+mn+en}else{en=mn+en}}if(this.isZero()){en="0"+en}while(en.length%Pt!==0){en="0"+en}if(this.negative!==0){en="-"+en}return en}assert(false,"Base should be between 2 and 36")};BN.prototype.toNumber=function toNumber(){var Wt=this.words[0];if(this.length===2){Wt+=this.words[1]*67108864}else if(this.length===3&&this.words[2]===1){Wt+=4503599627370496+this.words[1]*67108864}else if(this.length>2){assert(false,"Number can only safely store up to 53 bits")}return this.negative!==0?-Wt:Wt};BN.prototype.toJSON=function toJSON(){return this.toString(16)};BN.prototype.toBuffer=function toBuffer(Wt,Pt){assert(typeof tn!=="undefined");return this.toArrayLike(tn,Wt,Pt)};BN.prototype.toArray=function toArray(Wt,Pt){return this.toArrayLike(Array,Wt,Pt)};BN.prototype.toArrayLike=function toArrayLike(Wt,Pt,en){var tn=this.byteLength();var nn=en||Math.max(1,tn);assert(tn<=nn,"byte array longer than desired length");assert(nn>0,"Requested array length <= 0");this.strip();var an=Pt==="le";var rn=new Wt(nn);var In,sn;var on=this.clone();if(!an){for(sn=0;sn=4096){en+=13;Pt>>>=13}if(Pt>=64){en+=7;Pt>>>=7}if(Pt>=8){en+=4;Pt>>>=4}if(Pt>=2){en+=2;Pt>>>=2}return en+Pt}}BN.prototype._zeroBits=function _zeroBits(Wt){if(Wt===0)return 26;var Pt=Wt;var en=0;if((Pt&8191)===0){en+=13;Pt>>>=13}if((Pt&127)===0){en+=7;Pt>>>=7}if((Pt&15)===0){en+=4;Pt>>>=4}if((Pt&3)===0){en+=2;Pt>>>=2}if((Pt&1)===0){en++}return en};BN.prototype.bitLength=function bitLength(){var Wt=this.words[this.length-1];var Pt=this._countBits(Wt);return(this.length-1)*26+Pt};function toBitArray(Wt){var Pt=new Array(Wt.bitLength());for(var en=0;en>>nn}return Pt}BN.prototype.zeroBits=function zeroBits(){if(this.isZero())return 0;var Wt=0;for(var Pt=0;PtWt.length)return this.clone().ior(Wt);return Wt.clone().ior(this)};BN.prototype.uor=function uor(Wt){if(this.length>Wt.length)return this.clone().iuor(Wt);return Wt.clone().iuor(this)};BN.prototype.iuand=function iuand(Wt){var Pt;if(this.length>Wt.length){Pt=Wt}else{Pt=this}for(var en=0;enWt.length)return this.clone().iand(Wt);return Wt.clone().iand(this)};BN.prototype.uand=function uand(Wt){if(this.length>Wt.length)return this.clone().iuand(Wt);return Wt.clone().iuand(this)};BN.prototype.iuxor=function iuxor(Wt){var Pt;var en;if(this.length>Wt.length){Pt=this;en=Wt}else{Pt=Wt;en=this}for(var tn=0;tnWt.length)return this.clone().ixor(Wt);return Wt.clone().ixor(this)};BN.prototype.uxor=function uxor(Wt){if(this.length>Wt.length)return this.clone().iuxor(Wt);return Wt.clone().iuxor(this)};BN.prototype.inotn=function inotn(Wt){assert(typeof Wt==="number"&&Wt>=0);var Pt=Math.ceil(Wt/26)|0;var en=Wt%26;this._expand(Pt);if(en>0){Pt--}for(var tn=0;tn0){this.words[tn]=~this.words[tn]&67108863>>26-en}return this.strip()};BN.prototype.notn=function notn(Wt){return this.clone().inotn(Wt)};BN.prototype.setn=function setn(Wt,Pt){assert(typeof Wt==="number"&&Wt>=0);var en=Wt/26|0;var tn=Wt%26;this._expand(en+1);if(Pt){this.words[en]=this.words[en]|1<Wt.length){en=this;tn=Wt}else{en=Wt;tn=this}var nn=0;for(var an=0;an>>26}for(;nn!==0&&an>>26}this.length=en.length;if(nn!==0){this.words[this.length]=nn;this.length++}else if(en!==this){for(;anWt.length)return this.clone().iadd(Wt);return Wt.clone().iadd(this)};BN.prototype.isub=function isub(Wt){if(Wt.negative!==0){Wt.negative=0;var Pt=this.iadd(Wt);Wt.negative=1;return Pt._normSign()}else if(this.negative!==0){this.negative=0;this.iadd(Wt);this.negative=1;return this._normSign()}var en=this.cmp(Wt);if(en===0){this.negative=0;this.length=1;this.words[0]=0;return this}var tn,nn;if(en>0){tn=this;nn=Wt}else{tn=Wt;nn=this}var an=0;for(var rn=0;rn>26;this.words[rn]=Pt&67108863}for(;an!==0&&rn>26;this.words[rn]=Pt&67108863}if(an===0&&rn>>26;var dn=sn&67108863;var un=Math.min(on,Pt.length-1);for(var pn=Math.max(0,on-Wt.length+1);pn<=un;pn++){var mn=on-pn|0;nn=Wt.words[mn]|0;an=Pt.words[pn]|0;rn=nn*an+dn;cn+=rn/67108864|0;dn=rn&67108863}en.words[on]=dn|0;sn=cn|0}if(sn!==0){en.words[on]=sn|0}else{en.length--}return en.strip()}var In=function comb10MulTo(Wt,Pt,en){var tn=Wt.words;var nn=Pt.words;var an=en.words;var rn=0;var In;var sn;var on;var cn=tn[0]|0;var dn=cn&8191;var un=cn>>>13;var pn=tn[1]|0;var mn=pn&8191;var bn=pn>>>13;var Gn=tn[2]|0;var hn=Gn&8191;var Zn=Gn>>>13;var An=tn[3]|0;var Wn=An&8191;var Nn=An>>>13;var gn=tn[4]|0;var yn=gn&8191;var vn=gn>>>13;var Yn=tn[5]|0;var En=Yn&8191;var Vn=Yn>>>13;var Rn=tn[6]|0;var wn=Rn&8191;var Fn=Rn>>>13;var Qn=tn[7]|0;var fn=Qn&8191;var Hn=Qn>>>13;var Cn=tn[8]|0;var Xn=Cn&8191;var kn=Cn>>>13;var Jn=tn[9]|0;var Ln=Jn&8191;var Bn=Jn>>>13;var xn=nn[0]|0;var On=xn&8191;var Tn=xn>>>13;var Un=nn[1]|0;var Mn=Un&8191;var zn=Un>>>13;var Sn=nn[2]|0;var jn=Sn&8191;var Dn=Sn>>>13;var _n=nn[3]|0;var Kn=_n&8191;var Pn=_n>>>13;var qn=nn[4]|0;var $n=qn&8191;var el=qn>>>13;var tl=nn[5]|0;var nl=tl&8191;var ll=tl>>>13;var al=nn[6]|0;var rl=al&8191;var Il=al>>>13;var sl=nn[7]|0;var ol=sl&8191;var cl=sl>>>13;var il=nn[8]|0;var dl=il&8191;var ul=il>>>13;var pl=nn[9]|0;var ml=pl&8191;var bl=pl>>>13;en.negative=Wt.negative^Pt.negative;en.length=19;In=Math.imul(dn,On);sn=Math.imul(dn,Tn);sn=sn+Math.imul(un,On)|0;on=Math.imul(un,Tn);var Gl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Gl>>>26)|0;Gl&=67108863;In=Math.imul(mn,On);sn=Math.imul(mn,Tn);sn=sn+Math.imul(bn,On)|0;on=Math.imul(bn,Tn);In=In+Math.imul(dn,Mn)|0;sn=sn+Math.imul(dn,zn)|0;sn=sn+Math.imul(un,Mn)|0;on=on+Math.imul(un,zn)|0;var hl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(hl>>>26)|0;hl&=67108863;In=Math.imul(hn,On);sn=Math.imul(hn,Tn);sn=sn+Math.imul(Zn,On)|0;on=Math.imul(Zn,Tn);In=In+Math.imul(mn,Mn)|0;sn=sn+Math.imul(mn,zn)|0;sn=sn+Math.imul(bn,Mn)|0;on=on+Math.imul(bn,zn)|0;In=In+Math.imul(dn,jn)|0;sn=sn+Math.imul(dn,Dn)|0;sn=sn+Math.imul(un,jn)|0;on=on+Math.imul(un,Dn)|0;var Zl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Zl>>>26)|0;Zl&=67108863;In=Math.imul(Wn,On);sn=Math.imul(Wn,Tn);sn=sn+Math.imul(Nn,On)|0;on=Math.imul(Nn,Tn);In=In+Math.imul(hn,Mn)|0;sn=sn+Math.imul(hn,zn)|0;sn=sn+Math.imul(Zn,Mn)|0;on=on+Math.imul(Zn,zn)|0;In=In+Math.imul(mn,jn)|0;sn=sn+Math.imul(mn,Dn)|0;sn=sn+Math.imul(bn,jn)|0;on=on+Math.imul(bn,Dn)|0;In=In+Math.imul(dn,Kn)|0;sn=sn+Math.imul(dn,Pn)|0;sn=sn+Math.imul(un,Kn)|0;on=on+Math.imul(un,Pn)|0;var Al=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Al>>>26)|0;Al&=67108863;In=Math.imul(yn,On);sn=Math.imul(yn,Tn);sn=sn+Math.imul(vn,On)|0;on=Math.imul(vn,Tn);In=In+Math.imul(Wn,Mn)|0;sn=sn+Math.imul(Wn,zn)|0;sn=sn+Math.imul(Nn,Mn)|0;on=on+Math.imul(Nn,zn)|0;In=In+Math.imul(hn,jn)|0;sn=sn+Math.imul(hn,Dn)|0;sn=sn+Math.imul(Zn,jn)|0;on=on+Math.imul(Zn,Dn)|0;In=In+Math.imul(mn,Kn)|0;sn=sn+Math.imul(mn,Pn)|0;sn=sn+Math.imul(bn,Kn)|0;on=on+Math.imul(bn,Pn)|0;In=In+Math.imul(dn,$n)|0;sn=sn+Math.imul(dn,el)|0;sn=sn+Math.imul(un,$n)|0;on=on+Math.imul(un,el)|0;var Wl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Wl>>>26)|0;Wl&=67108863;In=Math.imul(En,On);sn=Math.imul(En,Tn);sn=sn+Math.imul(Vn,On)|0;on=Math.imul(Vn,Tn);In=In+Math.imul(yn,Mn)|0;sn=sn+Math.imul(yn,zn)|0;sn=sn+Math.imul(vn,Mn)|0;on=on+Math.imul(vn,zn)|0;In=In+Math.imul(Wn,jn)|0;sn=sn+Math.imul(Wn,Dn)|0;sn=sn+Math.imul(Nn,jn)|0;on=on+Math.imul(Nn,Dn)|0;In=In+Math.imul(hn,Kn)|0;sn=sn+Math.imul(hn,Pn)|0;sn=sn+Math.imul(Zn,Kn)|0;on=on+Math.imul(Zn,Pn)|0;In=In+Math.imul(mn,$n)|0;sn=sn+Math.imul(mn,el)|0;sn=sn+Math.imul(bn,$n)|0;on=on+Math.imul(bn,el)|0;In=In+Math.imul(dn,nl)|0;sn=sn+Math.imul(dn,ll)|0;sn=sn+Math.imul(un,nl)|0;on=on+Math.imul(un,ll)|0;var Nl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Nl>>>26)|0;Nl&=67108863;In=Math.imul(wn,On);sn=Math.imul(wn,Tn);sn=sn+Math.imul(Fn,On)|0;on=Math.imul(Fn,Tn);In=In+Math.imul(En,Mn)|0;sn=sn+Math.imul(En,zn)|0;sn=sn+Math.imul(Vn,Mn)|0;on=on+Math.imul(Vn,zn)|0;In=In+Math.imul(yn,jn)|0;sn=sn+Math.imul(yn,Dn)|0;sn=sn+Math.imul(vn,jn)|0;on=on+Math.imul(vn,Dn)|0;In=In+Math.imul(Wn,Kn)|0;sn=sn+Math.imul(Wn,Pn)|0;sn=sn+Math.imul(Nn,Kn)|0;on=on+Math.imul(Nn,Pn)|0;In=In+Math.imul(hn,$n)|0;sn=sn+Math.imul(hn,el)|0;sn=sn+Math.imul(Zn,$n)|0;on=on+Math.imul(Zn,el)|0;In=In+Math.imul(mn,nl)|0;sn=sn+Math.imul(mn,ll)|0;sn=sn+Math.imul(bn,nl)|0;on=on+Math.imul(bn,ll)|0;In=In+Math.imul(dn,rl)|0;sn=sn+Math.imul(dn,Il)|0;sn=sn+Math.imul(un,rl)|0;on=on+Math.imul(un,Il)|0;var gl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(gl>>>26)|0;gl&=67108863;In=Math.imul(fn,On);sn=Math.imul(fn,Tn);sn=sn+Math.imul(Hn,On)|0;on=Math.imul(Hn,Tn);In=In+Math.imul(wn,Mn)|0;sn=sn+Math.imul(wn,zn)|0;sn=sn+Math.imul(Fn,Mn)|0;on=on+Math.imul(Fn,zn)|0;In=In+Math.imul(En,jn)|0;sn=sn+Math.imul(En,Dn)|0;sn=sn+Math.imul(Vn,jn)|0;on=on+Math.imul(Vn,Dn)|0;In=In+Math.imul(yn,Kn)|0;sn=sn+Math.imul(yn,Pn)|0;sn=sn+Math.imul(vn,Kn)|0;on=on+Math.imul(vn,Pn)|0;In=In+Math.imul(Wn,$n)|0;sn=sn+Math.imul(Wn,el)|0;sn=sn+Math.imul(Nn,$n)|0;on=on+Math.imul(Nn,el)|0;In=In+Math.imul(hn,nl)|0;sn=sn+Math.imul(hn,ll)|0;sn=sn+Math.imul(Zn,nl)|0;on=on+Math.imul(Zn,ll)|0;In=In+Math.imul(mn,rl)|0;sn=sn+Math.imul(mn,Il)|0;sn=sn+Math.imul(bn,rl)|0;on=on+Math.imul(bn,Il)|0;In=In+Math.imul(dn,ol)|0;sn=sn+Math.imul(dn,cl)|0;sn=sn+Math.imul(un,ol)|0;on=on+Math.imul(un,cl)|0;var yl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(yl>>>26)|0;yl&=67108863;In=Math.imul(Xn,On);sn=Math.imul(Xn,Tn);sn=sn+Math.imul(kn,On)|0;on=Math.imul(kn,Tn);In=In+Math.imul(fn,Mn)|0;sn=sn+Math.imul(fn,zn)|0;sn=sn+Math.imul(Hn,Mn)|0;on=on+Math.imul(Hn,zn)|0;In=In+Math.imul(wn,jn)|0;sn=sn+Math.imul(wn,Dn)|0;sn=sn+Math.imul(Fn,jn)|0;on=on+Math.imul(Fn,Dn)|0;In=In+Math.imul(En,Kn)|0;sn=sn+Math.imul(En,Pn)|0;sn=sn+Math.imul(Vn,Kn)|0;on=on+Math.imul(Vn,Pn)|0;In=In+Math.imul(yn,$n)|0;sn=sn+Math.imul(yn,el)|0;sn=sn+Math.imul(vn,$n)|0;on=on+Math.imul(vn,el)|0;In=In+Math.imul(Wn,nl)|0;sn=sn+Math.imul(Wn,ll)|0;sn=sn+Math.imul(Nn,nl)|0;on=on+Math.imul(Nn,ll)|0;In=In+Math.imul(hn,rl)|0;sn=sn+Math.imul(hn,Il)|0;sn=sn+Math.imul(Zn,rl)|0;on=on+Math.imul(Zn,Il)|0;In=In+Math.imul(mn,ol)|0;sn=sn+Math.imul(mn,cl)|0;sn=sn+Math.imul(bn,ol)|0;on=on+Math.imul(bn,cl)|0;In=In+Math.imul(dn,dl)|0;sn=sn+Math.imul(dn,ul)|0;sn=sn+Math.imul(un,dl)|0;on=on+Math.imul(un,ul)|0;var vl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(vl>>>26)|0;vl&=67108863;In=Math.imul(Ln,On);sn=Math.imul(Ln,Tn);sn=sn+Math.imul(Bn,On)|0;on=Math.imul(Bn,Tn);In=In+Math.imul(Xn,Mn)|0;sn=sn+Math.imul(Xn,zn)|0;sn=sn+Math.imul(kn,Mn)|0;on=on+Math.imul(kn,zn)|0;In=In+Math.imul(fn,jn)|0;sn=sn+Math.imul(fn,Dn)|0;sn=sn+Math.imul(Hn,jn)|0;on=on+Math.imul(Hn,Dn)|0;In=In+Math.imul(wn,Kn)|0;sn=sn+Math.imul(wn,Pn)|0;sn=sn+Math.imul(Fn,Kn)|0;on=on+Math.imul(Fn,Pn)|0;In=In+Math.imul(En,$n)|0;sn=sn+Math.imul(En,el)|0;sn=sn+Math.imul(Vn,$n)|0;on=on+Math.imul(Vn,el)|0;In=In+Math.imul(yn,nl)|0;sn=sn+Math.imul(yn,ll)|0;sn=sn+Math.imul(vn,nl)|0;on=on+Math.imul(vn,ll)|0;In=In+Math.imul(Wn,rl)|0;sn=sn+Math.imul(Wn,Il)|0;sn=sn+Math.imul(Nn,rl)|0;on=on+Math.imul(Nn,Il)|0;In=In+Math.imul(hn,ol)|0;sn=sn+Math.imul(hn,cl)|0;sn=sn+Math.imul(Zn,ol)|0;on=on+Math.imul(Zn,cl)|0;In=In+Math.imul(mn,dl)|0;sn=sn+Math.imul(mn,ul)|0;sn=sn+Math.imul(bn,dl)|0;on=on+Math.imul(bn,ul)|0;In=In+Math.imul(dn,ml)|0;sn=sn+Math.imul(dn,bl)|0;sn=sn+Math.imul(un,ml)|0;on=on+Math.imul(un,bl)|0;var Yl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Yl>>>26)|0;Yl&=67108863;In=Math.imul(Ln,Mn);sn=Math.imul(Ln,zn);sn=sn+Math.imul(Bn,Mn)|0;on=Math.imul(Bn,zn);In=In+Math.imul(Xn,jn)|0;sn=sn+Math.imul(Xn,Dn)|0;sn=sn+Math.imul(kn,jn)|0;on=on+Math.imul(kn,Dn)|0;In=In+Math.imul(fn,Kn)|0;sn=sn+Math.imul(fn,Pn)|0;sn=sn+Math.imul(Hn,Kn)|0;on=on+Math.imul(Hn,Pn)|0;In=In+Math.imul(wn,$n)|0;sn=sn+Math.imul(wn,el)|0;sn=sn+Math.imul(Fn,$n)|0;on=on+Math.imul(Fn,el)|0;In=In+Math.imul(En,nl)|0;sn=sn+Math.imul(En,ll)|0;sn=sn+Math.imul(Vn,nl)|0;on=on+Math.imul(Vn,ll)|0;In=In+Math.imul(yn,rl)|0;sn=sn+Math.imul(yn,Il)|0;sn=sn+Math.imul(vn,rl)|0;on=on+Math.imul(vn,Il)|0;In=In+Math.imul(Wn,ol)|0;sn=sn+Math.imul(Wn,cl)|0;sn=sn+Math.imul(Nn,ol)|0;on=on+Math.imul(Nn,cl)|0;In=In+Math.imul(hn,dl)|0;sn=sn+Math.imul(hn,ul)|0;sn=sn+Math.imul(Zn,dl)|0;on=on+Math.imul(Zn,ul)|0;In=In+Math.imul(mn,ml)|0;sn=sn+Math.imul(mn,bl)|0;sn=sn+Math.imul(bn,ml)|0;on=on+Math.imul(bn,bl)|0;var El=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(El>>>26)|0;El&=67108863;In=Math.imul(Ln,jn);sn=Math.imul(Ln,Dn);sn=sn+Math.imul(Bn,jn)|0;on=Math.imul(Bn,Dn);In=In+Math.imul(Xn,Kn)|0;sn=sn+Math.imul(Xn,Pn)|0;sn=sn+Math.imul(kn,Kn)|0;on=on+Math.imul(kn,Pn)|0;In=In+Math.imul(fn,$n)|0;sn=sn+Math.imul(fn,el)|0;sn=sn+Math.imul(Hn,$n)|0;on=on+Math.imul(Hn,el)|0;In=In+Math.imul(wn,nl)|0;sn=sn+Math.imul(wn,ll)|0;sn=sn+Math.imul(Fn,nl)|0;on=on+Math.imul(Fn,ll)|0;In=In+Math.imul(En,rl)|0;sn=sn+Math.imul(En,Il)|0;sn=sn+Math.imul(Vn,rl)|0;on=on+Math.imul(Vn,Il)|0;In=In+Math.imul(yn,ol)|0;sn=sn+Math.imul(yn,cl)|0;sn=sn+Math.imul(vn,ol)|0;on=on+Math.imul(vn,cl)|0;In=In+Math.imul(Wn,dl)|0;sn=sn+Math.imul(Wn,ul)|0;sn=sn+Math.imul(Nn,dl)|0;on=on+Math.imul(Nn,ul)|0;In=In+Math.imul(hn,ml)|0;sn=sn+Math.imul(hn,bl)|0;sn=sn+Math.imul(Zn,ml)|0;on=on+Math.imul(Zn,bl)|0;var Vl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Vl>>>26)|0;Vl&=67108863;In=Math.imul(Ln,Kn);sn=Math.imul(Ln,Pn);sn=sn+Math.imul(Bn,Kn)|0;on=Math.imul(Bn,Pn);In=In+Math.imul(Xn,$n)|0;sn=sn+Math.imul(Xn,el)|0;sn=sn+Math.imul(kn,$n)|0;on=on+Math.imul(kn,el)|0;In=In+Math.imul(fn,nl)|0;sn=sn+Math.imul(fn,ll)|0;sn=sn+Math.imul(Hn,nl)|0;on=on+Math.imul(Hn,ll)|0;In=In+Math.imul(wn,rl)|0;sn=sn+Math.imul(wn,Il)|0;sn=sn+Math.imul(Fn,rl)|0;on=on+Math.imul(Fn,Il)|0;In=In+Math.imul(En,ol)|0;sn=sn+Math.imul(En,cl)|0;sn=sn+Math.imul(Vn,ol)|0;on=on+Math.imul(Vn,cl)|0;In=In+Math.imul(yn,dl)|0;sn=sn+Math.imul(yn,ul)|0;sn=sn+Math.imul(vn,dl)|0;on=on+Math.imul(vn,ul)|0;In=In+Math.imul(Wn,ml)|0;sn=sn+Math.imul(Wn,bl)|0;sn=sn+Math.imul(Nn,ml)|0;on=on+Math.imul(Nn,bl)|0;var Rl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Rl>>>26)|0;Rl&=67108863;In=Math.imul(Ln,$n);sn=Math.imul(Ln,el);sn=sn+Math.imul(Bn,$n)|0;on=Math.imul(Bn,el);In=In+Math.imul(Xn,nl)|0;sn=sn+Math.imul(Xn,ll)|0;sn=sn+Math.imul(kn,nl)|0;on=on+Math.imul(kn,ll)|0;In=In+Math.imul(fn,rl)|0;sn=sn+Math.imul(fn,Il)|0;sn=sn+Math.imul(Hn,rl)|0;on=on+Math.imul(Hn,Il)|0;In=In+Math.imul(wn,ol)|0;sn=sn+Math.imul(wn,cl)|0;sn=sn+Math.imul(Fn,ol)|0;on=on+Math.imul(Fn,cl)|0;In=In+Math.imul(En,dl)|0;sn=sn+Math.imul(En,ul)|0;sn=sn+Math.imul(Vn,dl)|0;on=on+Math.imul(Vn,ul)|0;In=In+Math.imul(yn,ml)|0;sn=sn+Math.imul(yn,bl)|0;sn=sn+Math.imul(vn,ml)|0;on=on+Math.imul(vn,bl)|0;var wl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(wl>>>26)|0;wl&=67108863;In=Math.imul(Ln,nl);sn=Math.imul(Ln,ll);sn=sn+Math.imul(Bn,nl)|0;on=Math.imul(Bn,ll);In=In+Math.imul(Xn,rl)|0;sn=sn+Math.imul(Xn,Il)|0;sn=sn+Math.imul(kn,rl)|0;on=on+Math.imul(kn,Il)|0;In=In+Math.imul(fn,ol)|0;sn=sn+Math.imul(fn,cl)|0;sn=sn+Math.imul(Hn,ol)|0;on=on+Math.imul(Hn,cl)|0;In=In+Math.imul(wn,dl)|0;sn=sn+Math.imul(wn,ul)|0;sn=sn+Math.imul(Fn,dl)|0;on=on+Math.imul(Fn,ul)|0;In=In+Math.imul(En,ml)|0;sn=sn+Math.imul(En,bl)|0;sn=sn+Math.imul(Vn,ml)|0;on=on+Math.imul(Vn,bl)|0;var Fl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Fl>>>26)|0;Fl&=67108863;In=Math.imul(Ln,rl);sn=Math.imul(Ln,Il);sn=sn+Math.imul(Bn,rl)|0;on=Math.imul(Bn,Il);In=In+Math.imul(Xn,ol)|0;sn=sn+Math.imul(Xn,cl)|0;sn=sn+Math.imul(kn,ol)|0;on=on+Math.imul(kn,cl)|0;In=In+Math.imul(fn,dl)|0;sn=sn+Math.imul(fn,ul)|0;sn=sn+Math.imul(Hn,dl)|0;on=on+Math.imul(Hn,ul)|0;In=In+Math.imul(wn,ml)|0;sn=sn+Math.imul(wn,bl)|0;sn=sn+Math.imul(Fn,ml)|0;on=on+Math.imul(Fn,bl)|0;var Ql=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Ql>>>26)|0;Ql&=67108863;In=Math.imul(Ln,ol);sn=Math.imul(Ln,cl);sn=sn+Math.imul(Bn,ol)|0;on=Math.imul(Bn,cl);In=In+Math.imul(Xn,dl)|0;sn=sn+Math.imul(Xn,ul)|0;sn=sn+Math.imul(kn,dl)|0;on=on+Math.imul(kn,ul)|0;In=In+Math.imul(fn,ml)|0;sn=sn+Math.imul(fn,bl)|0;sn=sn+Math.imul(Hn,ml)|0;on=on+Math.imul(Hn,bl)|0;var fl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(fl>>>26)|0;fl&=67108863;In=Math.imul(Ln,dl);sn=Math.imul(Ln,ul);sn=sn+Math.imul(Bn,dl)|0;on=Math.imul(Bn,ul);In=In+Math.imul(Xn,ml)|0;sn=sn+Math.imul(Xn,bl)|0;sn=sn+Math.imul(kn,ml)|0;on=on+Math.imul(kn,bl)|0;var Hl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Hl>>>26)|0;Hl&=67108863;In=Math.imul(Ln,ml);sn=Math.imul(Ln,bl);sn=sn+Math.imul(Bn,ml)|0;on=Math.imul(Bn,bl);var Cl=(rn+In|0)+((sn&8191)<<13)|0;rn=(on+(sn>>>13)|0)+(Cl>>>26)|0;Cl&=67108863;an[0]=Gl;an[1]=hl;an[2]=Zl;an[3]=Al;an[4]=Wl;an[5]=Nl;an[6]=gl;an[7]=yl;an[8]=vl;an[9]=Yl;an[10]=El;an[11]=Vl;an[12]=Rl;an[13]=wl;an[14]=Fl;an[15]=Ql;an[16]=fl;an[17]=Hl;an[18]=Cl;if(rn!==0){an[19]=rn;en.length++}return en};if(!Math.imul){In=smallMulTo}function bigMulTo(Wt,Pt,en){en.negative=Pt.negative^Wt.negative;en.length=Wt.length+Pt.length;var tn=0;var nn=0;for(var an=0;an>>26)|0;nn+=rn>>>26;rn&=67108863}en.words[an]=In;tn=rn;rn=nn}if(tn!==0){en.words[an]=tn}else{en.length--}return en.strip()}function jumboMulTo(Wt,Pt,en){var tn=new FFTM;return tn.mulp(Wt,Pt,en)}BN.prototype.mulTo=function mulTo(Wt,Pt){var en;var tn=this.length+Wt.length;if(this.length===10&&Wt.length===10){en=In(this,Wt,Pt)}else if(tn<63){en=smallMulTo(this,Wt,Pt)}else if(tn<1024){en=bigMulTo(this,Wt,Pt)}else{en=jumboMulTo(this,Wt,Pt)}return en};function FFTM(Wt,Pt){this.x=Wt;this.y=Pt}FFTM.prototype.makeRBT=function makeRBT(Wt){var Pt=new Array(Wt);var en=BN.prototype._countBits(Wt)-1;for(var tn=0;tn>=1}return tn};FFTM.prototype.permute=function permute(Wt,Pt,en,tn,nn,an){for(var rn=0;rn>>1){nn++}return 1<>>13;en[2*an+1]=nn&8191;nn=nn>>>13}for(an=2*Pt;an>=26;Pt+=tn/67108864|0;Pt+=nn>>>26;this.words[en]=nn&67108863}if(Pt!==0){this.words[en]=Pt;this.length++}return this};BN.prototype.muln=function muln(Wt){return this.clone().imuln(Wt)};BN.prototype.sqr=function sqr(){return this.mul(this)};BN.prototype.isqr=function isqr(){return this.imul(this.clone())};BN.prototype.pow=function pow(Wt){var Pt=toBitArray(Wt);if(Pt.length===0)return new BN(1);var en=this;for(var tn=0;tn=0);var Pt=Wt%26;var en=(Wt-Pt)/26;var tn=67108863>>>26-Pt<<26-Pt;var nn;if(Pt!==0){var an=0;for(nn=0;nn>>26-Pt}if(an){this.words[nn]=an;this.length++}}if(en!==0){for(nn=this.length-1;nn>=0;nn--){this.words[nn+en]=this.words[nn]}for(nn=0;nn=0);var tn;if(Pt){tn=(Pt-Pt%26)/26}else{tn=0}var nn=Wt%26;var an=Math.min((Wt-nn)/26,this.length);var rn=67108863^67108863>>>nn<an){this.length-=an;for(sn=0;sn=0&&(on!==0||sn>=tn);sn--){var cn=this.words[sn]|0;this.words[sn]=on<<26-nn|cn>>>nn;on=cn&rn}if(In&&on!==0){In.words[In.length++]=on}if(this.length===0){this.words[0]=0;this.length=1}return this.strip()};BN.prototype.ishrn=function ishrn(Wt,Pt,en){assert(this.negative===0);return this.iushrn(Wt,Pt,en)};BN.prototype.shln=function shln(Wt){return this.clone().ishln(Wt)};BN.prototype.ushln=function ushln(Wt){return this.clone().iushln(Wt)};BN.prototype.shrn=function shrn(Wt){return this.clone().ishrn(Wt)};BN.prototype.ushrn=function ushrn(Wt){return this.clone().iushrn(Wt)};BN.prototype.testn=function testn(Wt){assert(typeof Wt==="number"&&Wt>=0);var Pt=Wt%26;var en=(Wt-Pt)/26;var tn=1<=0);var Pt=Wt%26;var en=(Wt-Pt)/26;assert(this.negative===0,"imaskn works only with positive numbers");if(this.length<=en){return this}if(Pt!==0){en++}this.length=Math.min(en,this.length);if(Pt!==0){var tn=67108863^67108863>>>Pt<=67108864;Pt++){this.words[Pt]-=67108864;if(Pt===this.length-1){this.words[Pt+1]=1}else{this.words[Pt+1]++}}this.length=Math.max(this.length,Pt+1);return this};BN.prototype.isubn=function isubn(Wt){assert(typeof Wt==="number");assert(Wt<67108864);if(Wt<0)return this.iaddn(-Wt);if(this.negative!==0){this.negative=0;this.iaddn(Wt);this.negative=1;return this}this.words[0]-=Wt;if(this.length===1&&this.words[0]<0){this.words[0]=-this.words[0];this.negative=1}else{for(var Pt=0;Pt>26)-(In/67108864|0);this.words[nn+en]=an&67108863}for(;nn>26;this.words[nn+en]=an&67108863}if(rn===0)return this.strip();assert(rn===-1);rn=0;for(nn=0;nn>26;this.words[nn]=an&67108863}this.negative=1;return this.strip()};BN.prototype._wordDiv=function _wordDiv(Wt,Pt){var en=this.length-Wt.length;var tn=this.clone();var nn=Wt;var an=nn.words[nn.length-1]|0;var rn=this._countBits(an);en=26-rn;if(en!==0){nn=nn.ushln(en);tn.iushln(en);an=nn.words[nn.length-1]|0}var In=tn.length-nn.length;var sn;if(Pt!=="mod"){sn=new BN(null);sn.length=In+1;sn.words=new Array(sn.length);for(var on=0;on=0;dn--){var un=(tn.words[nn.length+dn]|0)*67108864+(tn.words[nn.length+dn-1]|0);un=Math.min(un/an|0,67108863);tn._ishlnsubmul(nn,un,dn);while(tn.negative!==0){un--;tn.negative=0;tn._ishlnsubmul(nn,1,dn);if(!tn.isZero()){tn.negative^=1}}if(sn){sn.words[dn]=un}}if(sn){sn.strip()}tn.strip();if(Pt!=="div"&&en!==0){tn.iushrn(en)}return{div:sn||null,mod:tn}};BN.prototype.divmod=function divmod(Wt,Pt,en){assert(!Wt.isZero());if(this.isZero()){return{div:new BN(0),mod:new BN(0)}}var tn,nn,an;if(this.negative!==0&&Wt.negative===0){an=this.neg().divmod(Wt,Pt);if(Pt!=="mod"){tn=an.div.neg()}if(Pt!=="div"){nn=an.mod.neg();if(en&&nn.negative!==0){nn.iadd(Wt)}}return{div:tn,mod:nn}}if(this.negative===0&&Wt.negative!==0){an=this.divmod(Wt.neg(),Pt);if(Pt!=="mod"){tn=an.div.neg()}return{div:tn,mod:an.mod}}if((this.negative&Wt.negative)!==0){an=this.neg().divmod(Wt.neg(),Pt);if(Pt!=="div"){nn=an.mod.neg();if(en&&nn.negative!==0){nn.isub(Wt)}}return{div:an.div,mod:nn}}if(Wt.length>this.length||this.cmp(Wt)<0){return{div:new BN(0),mod:this}}if(Wt.length===1){if(Pt==="div"){return{div:this.divn(Wt.words[0]),mod:null}}if(Pt==="mod"){return{div:null,mod:new BN(this.modn(Wt.words[0]))}}return{div:this.divn(Wt.words[0]),mod:new BN(this.modn(Wt.words[0]))}}return this._wordDiv(Wt,Pt)};BN.prototype.div=function div(Wt){return this.divmod(Wt,"div",false).div};BN.prototype.mod=function mod(Wt){return this.divmod(Wt,"mod",false).mod};BN.prototype.umod=function umod(Wt){return this.divmod(Wt,"mod",true).mod};BN.prototype.divRound=function divRound(Wt){var Pt=this.divmod(Wt);if(Pt.mod.isZero())return Pt.div;var en=Pt.div.negative!==0?Pt.mod.isub(Wt):Pt.mod;var tn=Wt.ushrn(1);var nn=Wt.andln(1);var an=en.cmp(tn);if(an<0||nn===1&&an===0)return Pt.div;return Pt.div.negative!==0?Pt.div.isubn(1):Pt.div.iaddn(1)};BN.prototype.modn=function modn(Wt){assert(Wt<=67108863);var Pt=(1<<26)%Wt;var en=0;for(var tn=this.length-1;tn>=0;tn--){en=(Pt*en+(this.words[tn]|0))%Wt}return en};BN.prototype.idivn=function idivn(Wt){assert(Wt<=67108863);var Pt=0;for(var en=this.length-1;en>=0;en--){var tn=(this.words[en]|0)+Pt*67108864;this.words[en]=tn/Wt|0;Pt=tn%Wt}return this.strip()};BN.prototype.divn=function divn(Wt){return this.clone().idivn(Wt)};BN.prototype.egcd=function egcd(Wt){assert(Wt.negative===0);assert(!Wt.isZero());var Pt=this;var en=Wt.clone();if(Pt.negative!==0){Pt=Pt.umod(Wt)}else{Pt=Pt.clone()}var tn=new BN(1);var nn=new BN(0);var an=new BN(0);var rn=new BN(1);var In=0;while(Pt.isEven()&&en.isEven()){Pt.iushrn(1);en.iushrn(1);++In}var sn=en.clone();var on=Pt.clone();while(!Pt.isZero()){for(var cn=0,dn=1;(Pt.words[0]&dn)===0&&cn<26;++cn,dn<<=1);if(cn>0){Pt.iushrn(cn);while(cn-- >0){if(tn.isOdd()||nn.isOdd()){tn.iadd(sn);nn.isub(on)}tn.iushrn(1);nn.iushrn(1)}}for(var un=0,pn=1;(en.words[0]&pn)===0&&un<26;++un,pn<<=1);if(un>0){en.iushrn(un);while(un-- >0){if(an.isOdd()||rn.isOdd()){an.iadd(sn);rn.isub(on)}an.iushrn(1);rn.iushrn(1)}}if(Pt.cmp(en)>=0){Pt.isub(en);tn.isub(an);nn.isub(rn)}else{en.isub(Pt);an.isub(tn);rn.isub(nn)}}return{a:an,b:rn,gcd:en.iushln(In)}};BN.prototype._invmp=function _invmp(Wt){assert(Wt.negative===0);assert(!Wt.isZero());var Pt=this;var en=Wt.clone();if(Pt.negative!==0){Pt=Pt.umod(Wt)}else{Pt=Pt.clone()}var tn=new BN(1);var nn=new BN(0);var an=en.clone();while(Pt.cmpn(1)>0&&en.cmpn(1)>0){for(var rn=0,In=1;(Pt.words[0]&In)===0&&rn<26;++rn,In<<=1);if(rn>0){Pt.iushrn(rn);while(rn-- >0){if(tn.isOdd()){tn.iadd(an)}tn.iushrn(1)}}for(var sn=0,on=1;(en.words[0]&on)===0&&sn<26;++sn,on<<=1);if(sn>0){en.iushrn(sn);while(sn-- >0){if(nn.isOdd()){nn.iadd(an)}nn.iushrn(1)}}if(Pt.cmp(en)>=0){Pt.isub(en);tn.isub(nn)}else{en.isub(Pt);nn.isub(tn)}}var cn;if(Pt.cmpn(1)===0){cn=tn}else{cn=nn}if(cn.cmpn(0)<0){cn.iadd(Wt)}return cn};BN.prototype.gcd=function gcd(Wt){if(this.isZero())return Wt.abs();if(Wt.isZero())return this.abs();var Pt=this.clone();var en=Wt.clone();Pt.negative=0;en.negative=0;for(var tn=0;Pt.isEven()&&en.isEven();tn++){Pt.iushrn(1);en.iushrn(1)}do{while(Pt.isEven()){Pt.iushrn(1)}while(en.isEven()){en.iushrn(1)}var nn=Pt.cmp(en);if(nn<0){var an=Pt;Pt=en;en=an}else if(nn===0||en.cmpn(1)===0){break}Pt.isub(en)}while(true);return en.iushln(tn)};BN.prototype.invm=function invm(Wt){return this.egcd(Wt).a.umod(Wt)};BN.prototype.isEven=function isEven(){return(this.words[0]&1)===0};BN.prototype.isOdd=function isOdd(){return(this.words[0]&1)===1};BN.prototype.andln=function andln(Wt){return this.words[0]&Wt};BN.prototype.bincn=function bincn(Wt){assert(typeof Wt==="number");var Pt=Wt%26;var en=(Wt-Pt)/26;var tn=1<>>26;rn&=67108863;this.words[an]=rn}if(nn!==0){this.words[an]=nn;this.length++}return this};BN.prototype.isZero=function isZero(){return this.length===1&&this.words[0]===0};BN.prototype.cmpn=function cmpn(Wt){var Pt=Wt<0;if(this.negative!==0&&!Pt)return-1;if(this.negative===0&&Pt)return 1;this.strip();var en;if(this.length>1){en=1}else{if(Pt){Wt=-Wt}assert(Wt<=67108863,"Number is too big");var tn=this.words[0]|0;en=tn===Wt?0:tnWt.length)return 1;if(this.length=0;en--){var tn=this.words[en]|0;var nn=Wt.words[en]|0;if(tn===nn)continue;if(tnnn){Pt=1}break}return Pt};BN.prototype.gtn=function gtn(Wt){return this.cmpn(Wt)===1};BN.prototype.gt=function gt(Wt){return this.cmp(Wt)===1};BN.prototype.gten=function gten(Wt){return this.cmpn(Wt)>=0};BN.prototype.gte=function gte(Wt){return this.cmp(Wt)>=0};BN.prototype.ltn=function ltn(Wt){return this.cmpn(Wt)===-1};BN.prototype.lt=function lt(Wt){return this.cmp(Wt)===-1};BN.prototype.lten=function lten(Wt){return this.cmpn(Wt)<=0};BN.prototype.lte=function lte(Wt){return this.cmp(Wt)<=0};BN.prototype.eqn=function eqn(Wt){return this.cmpn(Wt)===0};BN.prototype.eq=function eq(Wt){return this.cmp(Wt)===0};BN.red=function red(Wt){return new Red(Wt)};BN.prototype.toRed=function toRed(Wt){assert(!this.red,"Already a number in reduction context");assert(this.negative===0,"red works only with positives");return Wt.convertTo(this)._forceRed(Wt)};BN.prototype.fromRed=function fromRed(){assert(this.red,"fromRed works only with numbers in reduction context");return this.red.convertFrom(this)};BN.prototype._forceRed=function _forceRed(Wt){this.red=Wt;return this};BN.prototype.forceRed=function forceRed(Wt){assert(!this.red,"Already a number in reduction context");return this._forceRed(Wt)};BN.prototype.redAdd=function redAdd(Wt){assert(this.red,"redAdd works only with red numbers");return this.red.add(this,Wt)};BN.prototype.redIAdd=function redIAdd(Wt){assert(this.red,"redIAdd works only with red numbers");return this.red.iadd(this,Wt)};BN.prototype.redSub=function redSub(Wt){assert(this.red,"redSub works only with red numbers");return this.red.sub(this,Wt)};BN.prototype.redISub=function redISub(Wt){assert(this.red,"redISub works only with red numbers");return this.red.isub(this,Wt)};BN.prototype.redShl=function redShl(Wt){assert(this.red,"redShl works only with red numbers");return this.red.shl(this,Wt)};BN.prototype.redMul=function redMul(Wt){assert(this.red,"redMul works only with red numbers");this.red._verify2(this,Wt);return this.red.mul(this,Wt)};BN.prototype.redIMul=function redIMul(Wt){assert(this.red,"redMul works only with red numbers");this.red._verify2(this,Wt);return this.red.imul(this,Wt)};BN.prototype.redSqr=function redSqr(){assert(this.red,"redSqr works only with red numbers");this.red._verify1(this);return this.red.sqr(this)};BN.prototype.redISqr=function redISqr(){assert(this.red,"redISqr works only with red numbers");this.red._verify1(this);return this.red.isqr(this)};BN.prototype.redSqrt=function redSqrt(){assert(this.red,"redSqrt works only with red numbers");this.red._verify1(this);return this.red.sqrt(this)};BN.prototype.redInvm=function redInvm(){assert(this.red,"redInvm works only with red numbers");this.red._verify1(this);return this.red.invm(this)};BN.prototype.redNeg=function redNeg(){assert(this.red,"redNeg works only with red numbers");this.red._verify1(this);return this.red.neg(this)};BN.prototype.redPow=function redPow(Wt){assert(this.red&&!Wt.red,"redPow(normalNum)");this.red._verify1(this);return this.red.pow(this,Wt)};var sn={k256:null,p224:null,p192:null,p25519:null};function MPrime(Wt,Pt){this.name=Wt;this.p=new BN(Pt,16);this.n=this.p.bitLength();this.k=new BN(1).iushln(this.n).isub(this.p);this.tmp=this._tmp()}MPrime.prototype._tmp=function _tmp(){var Wt=new BN(null);Wt.words=new Array(Math.ceil(this.n/13));return Wt};MPrime.prototype.ireduce=function ireduce(Wt){var Pt=Wt;var en;do{this.split(Pt,this.tmp);Pt=this.imulK(Pt);Pt=Pt.iadd(this.tmp);en=Pt.bitLength()}while(en>this.n);var tn=en0){Pt.isub(this.p)}else{if(Pt.strip!==undefined){Pt.strip()}else{Pt._strip()}}return Pt};MPrime.prototype.split=function split(Wt,Pt){Wt.iushrn(this.n,0,Pt)};MPrime.prototype.imulK=function imulK(Wt){return Wt.imul(this.k)};function K256(){MPrime.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}inherits(K256,MPrime);K256.prototype.split=function split(Wt,Pt){var en=4194303;var tn=Math.min(Wt.length,9);for(var nn=0;nn>>22;an=rn}an>>>=22;Wt.words[nn-10]=an;if(an===0&&Wt.length>10){Wt.length-=10}else{Wt.length-=9}};K256.prototype.imulK=function imulK(Wt){Wt.words[Wt.length]=0;Wt.words[Wt.length+1]=0;Wt.length+=2;var Pt=0;for(var en=0;en>>=26;Wt.words[en]=nn;Pt=tn}if(Pt!==0){Wt.words[Wt.length++]=Pt}return Wt};BN._prime=function prime(Wt){if(sn[Wt])return sn[Wt];var prime;if(Wt==="k256"){prime=new K256}else if(Wt==="p224"){prime=new P224}else if(Wt==="p192"){prime=new P192}else if(Wt==="p25519"){prime=new P25519}else{throw new Error("Unknown prime "+Wt)}sn[Wt]=prime;return prime};function Red(Wt){if(typeof Wt==="string"){var Pt=BN._prime(Wt);this.m=Pt.p;this.prime=Pt}else{assert(Wt.gtn(1),"modulus must be greater than 1");this.m=Wt;this.prime=null}}Red.prototype._verify1=function _verify1(Wt){assert(Wt.negative===0,"red works only with positives");assert(Wt.red,"red works only with red numbers")};Red.prototype._verify2=function _verify2(Wt,Pt){assert((Wt.negative|Pt.negative)===0,"red works only with positives");assert(Wt.red&&Wt.red===Pt.red,"red works only with red numbers")};Red.prototype.imod=function imod(Wt){if(this.prime)return this.prime.ireduce(Wt)._forceRed(this);return Wt.umod(this.m)._forceRed(this)};Red.prototype.neg=function neg(Wt){if(Wt.isZero()){return Wt.clone()}return this.m.sub(Wt)._forceRed(this)};Red.prototype.add=function add(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.add(Pt);if(en.cmp(this.m)>=0){en.isub(this.m)}return en._forceRed(this)};Red.prototype.iadd=function iadd(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.iadd(Pt);if(en.cmp(this.m)>=0){en.isub(this.m)}return en};Red.prototype.sub=function sub(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.sub(Pt);if(en.cmpn(0)<0){en.iadd(this.m)}return en._forceRed(this)};Red.prototype.isub=function isub(Wt,Pt){this._verify2(Wt,Pt);var en=Wt.isub(Pt);if(en.cmpn(0)<0){en.iadd(this.m)}return en};Red.prototype.shl=function shl(Wt,Pt){this._verify1(Wt);return this.imod(Wt.ushln(Pt))};Red.prototype.imul=function imul(Wt,Pt){this._verify2(Wt,Pt);return this.imod(Wt.imul(Pt))};Red.prototype.mul=function mul(Wt,Pt){this._verify2(Wt,Pt);return this.imod(Wt.mul(Pt))};Red.prototype.isqr=function isqr(Wt){return this.imul(Wt,Wt.clone())};Red.prototype.sqr=function sqr(Wt){return this.mul(Wt,Wt)};Red.prototype.sqrt=function sqrt(Wt){if(Wt.isZero())return Wt.clone();var Pt=this.m.andln(3);assert(Pt%2===1);if(Pt===3){var en=this.m.add(new BN(1)).iushrn(2);return this.pow(Wt,en)}var tn=this.m.subn(1);var nn=0;while(!tn.isZero()&&tn.andln(1)===0){nn++;tn.iushrn(1)}assert(!tn.isZero());var an=new BN(1).toRed(this);var rn=an.redNeg();var In=this.m.subn(1).iushrn(1);var sn=this.m.bitLength();sn=new BN(2*sn*sn).toRed(this);while(this.pow(sn,In).cmp(rn)!==0){sn.redIAdd(rn)}var on=this.pow(sn,tn);var cn=this.pow(Wt,tn.addn(1).iushrn(1));var dn=this.pow(Wt,tn);var un=nn;while(dn.cmp(an)!==0){var pn=dn;for(var mn=0;pn.cmp(an)!==0;mn++){pn=pn.redSqr()}assert(mn=0;nn--){var on=Pt.words[nn];for(var cn=sn-1;cn>=0;cn--){var dn=on>>cn&1;if(an!==tn[0]){an=this.sqr(an)}if(dn===0&&rn===0){In=0;continue}rn<<=1;rn|=dn;In++;if(In!==en&&(nn!==0||cn!==0))continue;an=this.mul(an,tn[rn]);In=0;rn=0}sn=26}return an};Red.prototype.convertTo=function convertTo(Wt){var Pt=Wt.umod(this.m);return Pt===Wt?Pt.clone():Pt};Red.prototype.convertFrom=function convertFrom(Wt){var Pt=Wt.clone();Pt.red=null;return Pt};BN.mont=function mont(Wt){return new Mont(Wt)};function Mont(Wt){Red.call(this,Wt);this.shift=this.m.bitLength();if(this.shift%26!==0){this.shift+=26-this.shift%26}this.r=new BN(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)}inherits(Mont,Red);Mont.prototype.convertTo=function convertTo(Wt){return this.imod(Wt.ushln(this.shift))};Mont.prototype.convertFrom=function convertFrom(Wt){var Pt=this.imod(Wt.mul(this.rinv));Pt.red=null;return Pt};Mont.prototype.imul=function imul(Wt,Pt){if(Wt.isZero()||Pt.isZero()){Wt.words[0]=0;Wt.length=1;return Wt}var en=Wt.imul(Pt);var tn=en.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);var nn=en.isub(tn).iushrn(this.shift);var an=nn;if(nn.cmp(this.m)>=0){an=nn.isub(this.m)}else if(nn.cmpn(0)<0){an=nn.iadd(this.m)}return an._forceRed(this)};Mont.prototype.mul=function mul(Wt,Pt){if(Wt.isZero()||Pt.isZero())return new BN(0)._forceRed(this);var en=Wt.mul(Pt);var tn=en.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);var nn=en.isub(tn).iushrn(this.shift);var an=nn;if(nn.cmp(this.m)>=0){an=nn.isub(this.m)}else if(nn.cmpn(0)<0){an=nn.iadd(this.m)}return an._forceRed(this)};Mont.prototype.invm=function invm(Wt){var Pt=this.imod(Wt._invmp(this.m).mul(this.r2));return Pt._forceRed(this)}})(false||Wt,this)},31469:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt.decodeXML=Pt.decodeHTMLStrict=Pt.decodeHTMLAttribute=Pt.decodeHTML=Pt.determineBranch=Pt.EntityDecoder=Pt.DecodingMode=Pt.BinTrieFlags=Pt.fromCodePoint=Pt.replaceCodePoint=Pt.decodeCodePoint=Pt.xmlDecodeTree=Pt.htmlDecodeTree=void 0;var In=rn(en(90828));Pt.htmlDecodeTree=In.default;var sn=rn(en(62060));Pt.xmlDecodeTree=sn.default;var on=an(en(74487));Pt.decodeCodePoint=on.default;var cn=en(74487);Object.defineProperty(Pt,"replaceCodePoint",{enumerable:true,get:function(){return cn.replaceCodePoint}});Object.defineProperty(Pt,"fromCodePoint",{enumerable:true,get:function(){return cn.fromCodePoint}});var dn;(function(Wt){Wt[Wt["NUM"]=35]="NUM";Wt[Wt["SEMI"]=59]="SEMI";Wt[Wt["EQUALS"]=61]="EQUALS";Wt[Wt["ZERO"]=48]="ZERO";Wt[Wt["NINE"]=57]="NINE";Wt[Wt["LOWER_A"]=97]="LOWER_A";Wt[Wt["LOWER_F"]=102]="LOWER_F";Wt[Wt["LOWER_X"]=120]="LOWER_X";Wt[Wt["LOWER_Z"]=122]="LOWER_Z";Wt[Wt["UPPER_A"]=65]="UPPER_A";Wt[Wt["UPPER_F"]=70]="UPPER_F";Wt[Wt["UPPER_Z"]=90]="UPPER_Z"})(dn||(dn={}));var un=32;var pn;(function(Wt){Wt[Wt["VALUE_LENGTH"]=49152]="VALUE_LENGTH";Wt[Wt["BRANCH_LENGTH"]=16256]="BRANCH_LENGTH";Wt[Wt["JUMP_TABLE"]=127]="JUMP_TABLE"})(pn=Pt.BinTrieFlags||(Pt.BinTrieFlags={}));function isNumber(Wt){return Wt>=dn.ZERO&&Wt<=dn.NINE}function isHexadecimalCharacter(Wt){return Wt>=dn.UPPER_A&&Wt<=dn.UPPER_F||Wt>=dn.LOWER_A&&Wt<=dn.LOWER_F}function isAsciiAlphaNumeric(Wt){return Wt>=dn.UPPER_A&&Wt<=dn.UPPER_Z||Wt>=dn.LOWER_A&&Wt<=dn.LOWER_Z||isNumber(Wt)}function isEntityInAttributeInvalidEnd(Wt){return Wt===dn.EQUALS||isAsciiAlphaNumeric(Wt)}var mn;(function(Wt){Wt[Wt["EntityStart"]=0]="EntityStart";Wt[Wt["NumericStart"]=1]="NumericStart";Wt[Wt["NumericDecimal"]=2]="NumericDecimal";Wt[Wt["NumericHex"]=3]="NumericHex";Wt[Wt["NamedEntity"]=4]="NamedEntity"})(mn||(mn={}));var bn;(function(Wt){Wt[Wt["Legacy"]=0]="Legacy";Wt[Wt["Strict"]=1]="Strict";Wt[Wt["Attribute"]=2]="Attribute"})(bn=Pt.DecodingMode||(Pt.DecodingMode={}));var Gn=function(){function EntityDecoder(Wt,Pt,en){this.decodeTree=Wt;this.emitCodePoint=Pt;this.errors=en;this.state=mn.EntityStart;this.consumed=1;this.result=0;this.treeIndex=0;this.excess=1;this.decodeMode=bn.Strict}EntityDecoder.prototype.startEntity=function(Wt){this.decodeMode=Wt;this.state=mn.EntityStart;this.result=0;this.treeIndex=0;this.excess=1;this.consumed=1};EntityDecoder.prototype.write=function(Wt,Pt){switch(this.state){case mn.EntityStart:{if(Wt.charCodeAt(Pt)===dn.NUM){this.state=mn.NumericStart;this.consumed+=1;return this.stateNumericStart(Wt,Pt+1)}this.state=mn.NamedEntity;return this.stateNamedEntity(Wt,Pt)}case mn.NumericStart:{return this.stateNumericStart(Wt,Pt)}case mn.NumericDecimal:{return this.stateNumericDecimal(Wt,Pt)}case mn.NumericHex:{return this.stateNumericHex(Wt,Pt)}case mn.NamedEntity:{return this.stateNamedEntity(Wt,Pt)}}};EntityDecoder.prototype.stateNumericStart=function(Wt,Pt){if(Pt>=Wt.length){return-1}if((Wt.charCodeAt(Pt)|un)===dn.LOWER_X){this.state=mn.NumericHex;this.consumed+=1;return this.stateNumericHex(Wt,Pt+1)}this.state=mn.NumericDecimal;return this.stateNumericDecimal(Wt,Pt)};EntityDecoder.prototype.addToNumericResult=function(Wt,Pt,en,tn){if(Pt!==en){var nn=en-Pt;this.result=this.result*Math.pow(tn,nn)+parseInt(Wt.substr(Pt,nn),tn);this.consumed+=nn}};EntityDecoder.prototype.stateNumericHex=function(Wt,Pt){var en=Pt;while(Pt>14;for(;Pt>14;if(nn!==0){if(an===dn.SEMI){return this.emitNamedEntityData(this.treeIndex,nn,this.consumed+this.excess)}if(this.decodeMode!==bn.Strict){this.result=this.treeIndex;this.consumed+=this.excess;this.excess=0}}}return-1};EntityDecoder.prototype.emitNotTerminatedNamedEntity=function(){var Wt;var Pt=this,en=Pt.result,tn=Pt.decodeTree;var nn=(tn[en]&pn.VALUE_LENGTH)>>14;this.emitNamedEntityData(en,nn,this.consumed);(Wt=this.errors)===null||Wt===void 0?void 0:Wt.missingSemicolonAfterCharacterReference();return this.consumed};EntityDecoder.prototype.emitNamedEntityData=function(Wt,Pt,en){var tn=this.decodeTree;this.emitCodePoint(Pt===1?tn[Wt]&~pn.VALUE_LENGTH:tn[Wt+1],en);if(Pt===3){this.emitCodePoint(tn[Wt+2],en)}return en};EntityDecoder.prototype.end=function(){var Wt;switch(this.state){case mn.NamedEntity:{return this.result!==0&&(this.decodeMode!==bn.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0}case mn.NumericDecimal:{return this.emitNumericEntity(0,2)}case mn.NumericHex:{return this.emitNumericEntity(0,3)}case mn.NumericStart:{(Wt=this.errors)===null||Wt===void 0?void 0:Wt.absenceOfDigitsInNumericCharacterReference(this.consumed);return 0}case mn.EntityStart:{return 0}}};return EntityDecoder}();Pt.EntityDecoder=Gn;function getDecoder(Wt){var Pt="";var en=new Gn(Wt,(function(Wt){return Pt+=(0,on.fromCodePoint)(Wt)}));return function decodeWithTrie(Wt,tn){var nn=0;var an=0;while((an=Wt.indexOf("&",an))>=0){Pt+=Wt.slice(nn,an);en.startEntity(tn);var rn=en.write(Wt,an+1);if(rn<0){nn=an+en.end();break}nn=an+rn;an=rn===0?nn+1:nn}var In=Pt+Wt.slice(nn);Pt="";return In}}function determineBranch(Wt,Pt,en,tn){var nn=(Pt&pn.BRANCH_LENGTH)>>7;var an=Pt&pn.JUMP_TABLE;if(nn===0){return an!==0&&tn===an?en:-1}if(an){var rn=tn-an;return rn<0||rn>=nn?-1:Wt[en+rn]-1}var In=en;var sn=In+nn-1;while(In<=sn){var on=In+sn>>>1;var cn=Wt[on];if(cntn){sn=on-1}else{return Wt[on+nn]}}return-1}Pt.determineBranch=determineBranch;var hn=getDecoder(In.default);var Zn=getDecoder(sn.default);function decodeHTML(Wt,Pt){if(Pt===void 0){Pt=bn.Legacy}return hn(Wt,Pt)}Pt.decodeHTML=decodeHTML;function decodeHTMLAttribute(Wt){return hn(Wt,bn.Attribute)}Pt.decodeHTMLAttribute=decodeHTMLAttribute;function decodeHTMLStrict(Wt){return hn(Wt,bn.Strict)}Pt.decodeHTMLStrict=decodeHTMLStrict;function decodeXML(Wt){return Zn(Wt,bn.Strict)}Pt.decodeXML=decodeXML},74487:(Wt,Pt)=>{"use strict";var en;Object.defineProperty(Pt,"__esModule",{value:true});Pt.replaceCodePoint=Pt.fromCodePoint=void 0;var tn=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]);Pt.fromCodePoint=(en=String.fromCodePoint)!==null&&en!==void 0?en:function(Wt){var Pt="";if(Wt>65535){Wt-=65536;Pt+=String.fromCharCode(Wt>>>10&1023|55296);Wt=56320|Wt&1023}Pt+=String.fromCharCode(Wt);return Pt};function replaceCodePoint(Wt){var Pt;if(Wt>=55296&&Wt<=57343||Wt>1114111){return 65533}return(Pt=tn.get(Wt))!==null&&Pt!==void 0?Pt:Wt}Pt.replaceCodePoint=replaceCodePoint;function decodeCodePoint(Wt){return(0,Pt.fromCodePoint)(replaceCodePoint(Wt))}Pt["default"]=decodeCodePoint},6104:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.escapeText=Pt.escapeAttribute=Pt.escapeUTF8=Pt.escape=Pt.encodeXML=Pt.getCodePoint=Pt.xmlReplacer=void 0;Pt.xmlReplacer=/["&'<>$\x80-\uFFFF]/g;var en=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"]]);Pt.getCodePoint=String.prototype.codePointAt!=null?function(Wt,Pt){return Wt.codePointAt(Pt)}:function(Wt,Pt){return(Wt.charCodeAt(Pt)&64512)===55296?(Wt.charCodeAt(Pt)-55296)*1024+Wt.charCodeAt(Pt+1)-56320+65536:Wt.charCodeAt(Pt)};function encodeXML(Wt){var tn="";var nn=0;var an;while((an=Pt.xmlReplacer.exec(Wt))!==null){var rn=an.index;var In=Wt.charCodeAt(rn);var sn=en.get(In);if(sn!==undefined){tn+=Wt.substring(nn,rn)+sn;nn=rn+1}else{tn+="".concat(Wt.substring(nn,rn),"&#x").concat((0,Pt.getCodePoint)(Wt,rn).toString(16),";");nn=Pt.xmlReplacer.lastIndex+=Number((In&64512)===55296)}}return tn+Wt.substr(nn)}Pt.encodeXML=encodeXML;Pt.escape=encodeXML;function getEscaper(Wt,Pt){return function escape(en){var tn;var nn=0;var an="";while(tn=Wt.exec(en)){if(nn!==tn.index){an+=en.substring(nn,tn.index)}an+=Pt.get(tn[0].charCodeAt(0));nn=tn.index+1}return an+en.substring(nn)}}Pt.escapeUTF8=getEscaper(/[&<>'"]/g,en);Pt.escapeAttribute=getEscaper(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]]));Pt.escapeText=getEscaper(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]))},90828:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt["default"]=new Uint16Array('ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉Dzኀ\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭍᭒\0᯽\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\0\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧‪‬\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥ⵲ⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\0\0⵼\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\0⹽\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\0\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map((function(Wt){return Wt.charCodeAt(0)})))},62060:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt["default"]=new Uint16Array("Ȁaglq\tɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map((function(Wt){return Wt.charCodeAt(0)})))},16577:(Wt,Pt)=>{"use strict"; /** - * Sets env variable for this action and future actions in the job - * @param name the name of the variable to set - * @param val the value of the variable. Non-string values will be converted to a string via JSON.stringify - */ -// eslint-disable-next-line @typescript-eslint/no-explicit-any -function exportVariable(name, val) { - const convertedVal = (0, utils_1.toCommandValue)(val); - process.env[name] = convertedVal; - const filePath = process.env['GITHUB_ENV'] || ''; - if (filePath) { - return (0, file_command_1.issueFileCommand)('ENV', (0, file_command_1.prepareKeyValueMessage)(name, val)); - } - (0, command_1.issueCommand)('set-env', { name }, convertedVal); -} -exports.exportVariable = exportVariable; + * @author Toru Nagashima + * @copyright 2015 Toru Nagashima. All rights reserved. + * See LICENSE file in root directory for full license. + */Object.defineProperty(Pt,"__esModule",{value:true});const en=new WeakMap;const tn=new WeakMap;function pd(Wt){const Pt=en.get(Wt);console.assert(Pt!=null,"'this' is expected an Event object, but got",Wt);return Pt}function setCancelFlag(Wt){if(Wt.passiveListener!=null){if(typeof console!=="undefined"&&typeof console.error==="function"){console.error("Unable to preventDefault inside passive event listener invocation.",Wt.passiveListener)}return}if(!Wt.event.cancelable){return}Wt.canceled=true;if(typeof Wt.event.preventDefault==="function"){Wt.event.preventDefault()}}function Event(Wt,Pt){en.set(this,{eventTarget:Wt,event:Pt,eventPhase:2,currentTarget:Wt,canceled:false,stopped:false,immediateStopped:false,passiveListener:null,timeStamp:Pt.timeStamp||Date.now()});Object.defineProperty(this,"isTrusted",{value:false,enumerable:true});const tn=Object.keys(Pt);for(let Wt=0;Wt0){const Wt=new Array(arguments.length);for(let Pt=0;Pt{var tn=en(35630);var nn=en(39023);var an=en(16928);var rn=en(58611);var In=en(65692);var sn=en(87016).parse;var on=en(79896);var cn=en(2203).Stream;var dn=en(14096);var un=en(31324);var pn=en(11835);Wt.exports=FormData;nn.inherits(FormData,tn);function FormData(Wt){if(!(this instanceof FormData)){return new FormData(Wt)}this._overheadLength=0;this._valueLength=0;this._valuesToMeasure=[];tn.call(this);Wt=Wt||{};for(var Pt in Wt){this[Pt]=Wt[Pt]}}FormData.LINE_BREAK="\r\n";FormData.DEFAULT_CONTENT_TYPE="application/octet-stream";FormData.prototype.append=function(Wt,Pt,en){en=en||{};if(typeof en=="string"){en={filename:en}}var an=tn.prototype.append.bind(this);if(typeof Pt=="number"){Pt=""+Pt}if(nn.isArray(Pt)){this._error(new Error("Arrays are not supported."));return}var rn=this._multiPartHeader(Wt,Pt,en);var In=this._multiPartFooter();an(rn);an(Pt);an(In);this._trackLength(rn,Pt,en)};FormData.prototype._trackLength=function(Wt,Pt,en){var tn=0;if(en.knownLength!=null){tn+=+en.knownLength}else if(Buffer.isBuffer(Pt)){tn=Pt.length}else if(typeof Pt==="string"){tn=Buffer.byteLength(Pt)}this._valueLength+=tn;this._overheadLength+=Buffer.byteLength(Wt)+FormData.LINE_BREAK.length;if(!Pt||!Pt.path&&!(Pt.readable&&Pt.hasOwnProperty("httpVersion"))&&!(Pt instanceof cn)){return}if(!en.knownLength){this._valuesToMeasure.push(Pt)}};FormData.prototype._lengthRetriever=function(Wt,Pt){if(Wt.hasOwnProperty("fd")){if(Wt.end!=undefined&&Wt.end!=Infinity&&Wt.start!=undefined){Pt(null,Wt.end+1-(Wt.start?Wt.start:0))}else{on.stat(Wt.path,(function(en,tn){var nn;if(en){Pt(en);return}nn=tn.size-(Wt.start?Wt.start:0);Pt(null,nn)}))}}else if(Wt.hasOwnProperty("httpVersion")){Pt(null,+Wt.headers["content-length"])}else if(Wt.hasOwnProperty("httpModule")){Wt.on("response",(function(en){Wt.pause();Pt(null,+en.headers["content-length"])}));Wt.resume()}else{Pt("Unknown stream")}};FormData.prototype._multiPartHeader=function(Wt,Pt,en){if(typeof en.header=="string"){return en.header}var tn=this._getContentDisposition(Pt,en);var nn=this._getContentType(Pt,en);var an="";var rn={"Content-Disposition":["form-data",'name="'+Wt+'"'].concat(tn||[]),"Content-Type":[].concat(nn||[])};if(typeof en.header=="object"){pn(rn,en.header)}var In;for(var sn in rn){if(!rn.hasOwnProperty(sn))continue;In=rn[sn];if(In==null){continue}if(!Array.isArray(In)){In=[In]}if(In.length){an+=sn+": "+In.join("; ")+FormData.LINE_BREAK}}return"--"+this.getBoundary()+FormData.LINE_BREAK+an+FormData.LINE_BREAK};FormData.prototype._getContentDisposition=function(Wt,Pt){var en,tn;if(typeof Pt.filepath==="string"){en=an.normalize(Pt.filepath).replace(/\\/g,"/")}else if(Pt.filename||Wt.name||Wt.path){en=an.basename(Pt.filename||Wt.name||Wt.path)}else if(Wt.readable&&Wt.hasOwnProperty("httpVersion")){en=an.basename(Wt.client._httpMessage.path||"")}if(en){tn='filename="'+en+'"'}return tn};FormData.prototype._getContentType=function(Wt,Pt){var en=Pt.contentType;if(!en&&Wt.name){en=dn.lookup(Wt.name)}if(!en&&Wt.path){en=dn.lookup(Wt.path)}if(!en&&Wt.readable&&Wt.hasOwnProperty("httpVersion")){en=Wt.headers["content-type"]}if(!en&&(Pt.filepath||Pt.filename)){en=dn.lookup(Pt.filepath||Pt.filename)}if(!en&&typeof Wt=="object"){en=FormData.DEFAULT_CONTENT_TYPE}return en};FormData.prototype._multiPartFooter=function(){return function(Wt){var Pt=FormData.LINE_BREAK;var en=this._streams.length===0;if(en){Pt+=this._lastBoundary()}Wt(Pt)}.bind(this)};FormData.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+FormData.LINE_BREAK};FormData.prototype.getHeaders=function(Wt){var Pt;var en={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(Pt in Wt){if(Wt.hasOwnProperty(Pt)){en[Pt.toLowerCase()]=Wt[Pt]}}return en};FormData.prototype.setBoundary=function(Wt){this._boundary=Wt};FormData.prototype.getBoundary=function(){if(!this._boundary){this._generateBoundary()}return this._boundary};FormData.prototype.getBuffer=function(){var Wt=new Buffer.alloc(0);var Pt=this.getBoundary();for(var en=0,tn=this._streams.length;en{Wt.exports=function(Wt,Pt){Object.keys(Pt).forEach((function(en){Wt[en]=Wt[en]||Pt[en]}));return Wt}},83813:Wt=>{"use strict";Wt.exports=(Wt,Pt=process.argv)=>{const en=Wt.startsWith("-")?"":Wt.length===1?"-":"--";const tn=Pt.indexOf(en+Wt);const nn=Pt.indexOf("--");return tn!==-1&&(nn===-1||tn{var tn=Pt;tn.utils=en(23215);tn.common=en(77265);tn.sha=en(10316);tn.ripemd=en(38831);tn.hmac=en(96535);tn.sha1=tn.sha.sha1;tn.sha256=tn.sha.sha256;tn.sha224=tn.sha.sha224;tn.sha384=tn.sha.sha384;tn.sha512=tn.sha.sha512;tn.ripemd160=tn.ripemd.ripemd160},77265:(Wt,Pt,en)=>{"use strict";var tn=en(23215);var nn=en(63798);function BlockHash(){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}Pt.BlockHash=BlockHash;BlockHash.prototype.update=function update(Wt,Pt){Wt=tn.toArray(Wt,Pt);if(!this.pending)this.pending=Wt;else this.pending=this.pending.concat(Wt);this.pendingTotal+=Wt.length;if(this.pending.length>=this._delta8){Wt=this.pending;var en=Wt.length%this._delta8;this.pending=Wt.slice(Wt.length-en,Wt.length);if(this.pending.length===0)this.pending=null;Wt=tn.join32(Wt,0,Wt.length-en,this.endian);for(var nn=0;nn>>24&255;tn[nn++]=Wt>>>16&255;tn[nn++]=Wt>>>8&255;tn[nn++]=Wt&255}else{tn[nn++]=Wt&255;tn[nn++]=Wt>>>8&255;tn[nn++]=Wt>>>16&255;tn[nn++]=Wt>>>24&255;tn[nn++]=0;tn[nn++]=0;tn[nn++]=0;tn[nn++]=0;for(an=8;an{"use strict";var tn=en(23215);var nn=en(63798);function Hmac(Wt,Pt,en){if(!(this instanceof Hmac))return new Hmac(Wt,Pt,en);this.Hash=Wt;this.blockSize=Wt.blockSize/8;this.outSize=Wt.outSize/8;this.inner=null;this.outer=null;this._init(tn.toArray(Pt,en))}Wt.exports=Hmac;Hmac.prototype._init=function init(Wt){if(Wt.length>this.blockSize)Wt=(new this.Hash).update(Wt).digest();nn(Wt.length<=this.blockSize);for(var Pt=Wt.length;Pt{"use strict";var tn=en(23215);var nn=en(77265);var an=tn.rotl32;var rn=tn.sum32;var In=tn.sum32_3;var sn=tn.sum32_4;var on=nn.BlockHash;function RIPEMD160(){if(!(this instanceof RIPEMD160))return new RIPEMD160;on.call(this);this.h=[1732584193,4023233417,2562383102,271733878,3285377520];this.endian="little"}tn.inherits(RIPEMD160,on);Pt.ripemd160=RIPEMD160;RIPEMD160.blockSize=512;RIPEMD160.outSize=160;RIPEMD160.hmacStrength=192;RIPEMD160.padLength=64;RIPEMD160.prototype._update=function update(Wt,Pt){var en=this.h[0];var tn=this.h[1];var nn=this.h[2];var on=this.h[3];var mn=this.h[4];var bn=en;var Gn=tn;var hn=nn;var Zn=on;var An=mn;for(var Wn=0;Wn<80;Wn++){var Nn=rn(an(sn(en,f(Wn,tn,nn,on),Wt[cn[Wn]+Pt],K(Wn)),un[Wn]),mn);en=mn;mn=on;on=an(nn,10);nn=tn;tn=Nn;Nn=rn(an(sn(bn,f(79-Wn,Gn,hn,Zn),Wt[dn[Wn]+Pt],Kh(Wn)),pn[Wn]),An);bn=An;An=Zn;Zn=an(hn,10);hn=Gn;Gn=Nn}Nn=In(this.h[1],nn,Zn);this.h[1]=In(this.h[2],on,An);this.h[2]=In(this.h[3],mn,bn);this.h[3]=In(this.h[4],en,Gn);this.h[4]=In(this.h[0],tn,hn);this.h[0]=Nn};RIPEMD160.prototype._digest=function digest(Wt){if(Wt==="hex")return tn.toHex32(this.h,"little");else return tn.split32(this.h,"little")};function f(Wt,Pt,en,tn){if(Wt<=15)return Pt^en^tn;else if(Wt<=31)return Pt&en|~Pt&tn;else if(Wt<=47)return(Pt|~en)^tn;else if(Wt<=63)return Pt&tn|en&~tn;else return Pt^(en|~tn)}function K(Wt){if(Wt<=15)return 0;else if(Wt<=31)return 1518500249;else if(Wt<=47)return 1859775393;else if(Wt<=63)return 2400959708;else return 2840853838}function Kh(Wt){if(Wt<=15)return 1352829926;else if(Wt<=31)return 1548603684;else if(Wt<=47)return 1836072691;else if(Wt<=63)return 2053994217;else return 0}var cn=[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];var dn=[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];var un=[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];var pn=[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]},10316:(Wt,Pt,en)=>{"use strict";Pt.sha1=en(2576);Pt.sha224=en(33239);Pt.sha256=en(27190);Pt.sha384=en(1926);Pt.sha512=en(82423)},2576:(Wt,Pt,en)=>{"use strict";var tn=en(23215);var nn=en(77265);var an=en(49562);var rn=tn.rotl32;var In=tn.sum32;var sn=tn.sum32_5;var on=an.ft_1;var cn=nn.BlockHash;var dn=[1518500249,1859775393,2400959708,3395469782];function SHA1(){if(!(this instanceof SHA1))return new SHA1;cn.call(this);this.h=[1732584193,4023233417,2562383102,271733878,3285377520];this.W=new Array(80)}tn.inherits(SHA1,cn);Wt.exports=SHA1;SHA1.blockSize=512;SHA1.outSize=160;SHA1.hmacStrength=80;SHA1.padLength=64;SHA1.prototype._update=function _update(Wt,Pt){var en=this.W;for(var tn=0;tn<16;tn++)en[tn]=Wt[Pt+tn];for(;tn{"use strict";var tn=en(23215);var nn=en(27190);function SHA224(){if(!(this instanceof SHA224))return new SHA224;nn.call(this);this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}tn.inherits(SHA224,nn);Wt.exports=SHA224;SHA224.blockSize=512;SHA224.outSize=224;SHA224.hmacStrength=192;SHA224.padLength=64;SHA224.prototype._digest=function digest(Wt){if(Wt==="hex")return tn.toHex32(this.h.slice(0,7),"big");else return tn.split32(this.h.slice(0,7),"big")}},27190:(Wt,Pt,en)=>{"use strict";var tn=en(23215);var nn=en(77265);var an=en(49562);var rn=en(63798);var In=tn.sum32;var sn=tn.sum32_4;var on=tn.sum32_5;var cn=an.ch32;var dn=an.maj32;var un=an.s0_256;var pn=an.s1_256;var mn=an.g0_256;var bn=an.g1_256;var Gn=nn.BlockHash;var hn=[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 SHA256(){if(!(this instanceof SHA256))return new SHA256;Gn.call(this);this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225];this.k=hn;this.W=new Array(64)}tn.inherits(SHA256,Gn);Wt.exports=SHA256;SHA256.blockSize=512;SHA256.outSize=256;SHA256.hmacStrength=192;SHA256.padLength=64;SHA256.prototype._update=function _update(Wt,Pt){var en=this.W;for(var tn=0;tn<16;tn++)en[tn]=Wt[Pt+tn];for(;tn{"use strict";var tn=en(23215);var nn=en(82423);function SHA384(){if(!(this instanceof SHA384))return new SHA384;nn.call(this);this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}tn.inherits(SHA384,nn);Wt.exports=SHA384;SHA384.blockSize=1024;SHA384.outSize=384;SHA384.hmacStrength=192;SHA384.padLength=128;SHA384.prototype._digest=function digest(Wt){if(Wt==="hex")return tn.toHex32(this.h.slice(0,12),"big");else return tn.split32(this.h.slice(0,12),"big")}},82423:(Wt,Pt,en)=>{"use strict";var tn=en(23215);var nn=en(77265);var an=en(63798);var rn=tn.rotr64_hi;var In=tn.rotr64_lo;var sn=tn.shr64_hi;var on=tn.shr64_lo;var cn=tn.sum64;var dn=tn.sum64_hi;var un=tn.sum64_lo;var pn=tn.sum64_4_hi;var mn=tn.sum64_4_lo;var bn=tn.sum64_5_hi;var Gn=tn.sum64_5_lo;var hn=nn.BlockHash;var Zn=[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 SHA512(){if(!(this instanceof SHA512))return new SHA512;hn.call(this);this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209];this.k=Zn;this.W=new Array(160)}tn.inherits(SHA512,hn);Wt.exports=SHA512;SHA512.blockSize=1024;SHA512.outSize=512;SHA512.hmacStrength=192;SHA512.padLength=128;SHA512.prototype._prepareBlock=function _prepareBlock(Wt,Pt){var en=this.W;for(var tn=0;tn<32;tn++)en[tn]=Wt[Pt+tn];for(;tn{"use strict";var tn=en(23215);var nn=tn.rotr32;function ft_1(Wt,Pt,en,tn){if(Wt===0)return ch32(Pt,en,tn);if(Wt===1||Wt===3)return p32(Pt,en,tn);if(Wt===2)return maj32(Pt,en,tn)}Pt.ft_1=ft_1;function ch32(Wt,Pt,en){return Wt&Pt^~Wt&en}Pt.ch32=ch32;function maj32(Wt,Pt,en){return Wt&Pt^Wt&en^Pt&en}Pt.maj32=maj32;function p32(Wt,Pt,en){return Wt^Pt^en}Pt.p32=p32;function s0_256(Wt){return nn(Wt,2)^nn(Wt,13)^nn(Wt,22)}Pt.s0_256=s0_256;function s1_256(Wt){return nn(Wt,6)^nn(Wt,11)^nn(Wt,25)}Pt.s1_256=s1_256;function g0_256(Wt){return nn(Wt,7)^nn(Wt,18)^Wt>>>3}Pt.g0_256=g0_256;function g1_256(Wt){return nn(Wt,17)^nn(Wt,19)^Wt>>>10}Pt.g1_256=g1_256},23215:(Wt,Pt,en)=>{"use strict";var tn=en(63798);var nn=en(39598);Pt.inherits=nn;function isSurrogatePair(Wt,Pt){if((Wt.charCodeAt(Pt)&64512)!==55296){return false}if(Pt<0||Pt+1>=Wt.length){return false}return(Wt.charCodeAt(Pt+1)&64512)===56320}function toArray(Wt,Pt){if(Array.isArray(Wt))return Wt.slice();if(!Wt)return[];var en=[];if(typeof Wt==="string"){if(!Pt){var tn=0;for(var nn=0;nn>6|192;en[tn++]=an&63|128}else if(isSurrogatePair(Wt,nn)){an=65536+((an&1023)<<10)+(Wt.charCodeAt(++nn)&1023);en[tn++]=an>>18|240;en[tn++]=an>>12&63|128;en[tn++]=an>>6&63|128;en[tn++]=an&63|128}else{en[tn++]=an>>12|224;en[tn++]=an>>6&63|128;en[tn++]=an&63|128}}}else if(Pt==="hex"){Wt=Wt.replace(/[^a-z0-9]+/gi,"");if(Wt.length%2!==0)Wt="0"+Wt;for(nn=0;nn>>24|Wt>>>8&65280|Wt<<8&16711680|(Wt&255)<<24;return Pt>>>0}Pt.htonl=htonl;function toHex32(Wt,Pt){var en="";for(var tn=0;tn>>0}return rn}Pt.join32=join32;function split32(Wt,Pt){var en=new Array(Wt.length*4);for(var tn=0,nn=0;tn>>24;en[nn+1]=an>>>16&255;en[nn+2]=an>>>8&255;en[nn+3]=an&255}else{en[nn+3]=an>>>24;en[nn+2]=an>>>16&255;en[nn+1]=an>>>8&255;en[nn]=an&255}}return en}Pt.split32=split32;function rotr32(Wt,Pt){return Wt>>>Pt|Wt<<32-Pt}Pt.rotr32=rotr32;function rotl32(Wt,Pt){return Wt<>>32-Pt}Pt.rotl32=rotl32;function sum32(Wt,Pt){return Wt+Pt>>>0}Pt.sum32=sum32;function sum32_3(Wt,Pt,en){return Wt+Pt+en>>>0}Pt.sum32_3=sum32_3;function sum32_4(Wt,Pt,en,tn){return Wt+Pt+en+tn>>>0}Pt.sum32_4=sum32_4;function sum32_5(Wt,Pt,en,tn,nn){return Wt+Pt+en+tn+nn>>>0}Pt.sum32_5=sum32_5;function sum64(Wt,Pt,en,tn){var nn=Wt[Pt];var an=Wt[Pt+1];var rn=tn+an>>>0;var In=(rn>>0;Wt[Pt+1]=rn}Pt.sum64=sum64;function sum64_hi(Wt,Pt,en,tn){var nn=Pt+tn>>>0;var an=(nn>>0}Pt.sum64_hi=sum64_hi;function sum64_lo(Wt,Pt,en,tn){var nn=Pt+tn;return nn>>>0}Pt.sum64_lo=sum64_lo;function sum64_4_hi(Wt,Pt,en,tn,nn,an,rn,In){var sn=0;var on=Pt;on=on+tn>>>0;sn+=on>>0;sn+=on>>0;sn+=on>>0}Pt.sum64_4_hi=sum64_4_hi;function sum64_4_lo(Wt,Pt,en,tn,nn,an,rn,In){var sn=Pt+tn+an+In;return sn>>>0}Pt.sum64_4_lo=sum64_4_lo;function sum64_5_hi(Wt,Pt,en,tn,nn,an,rn,In,sn,on){var cn=0;var dn=Pt;dn=dn+tn>>>0;cn+=dn>>0;cn+=dn>>0;cn+=dn>>0;cn+=dn>>0}Pt.sum64_5_hi=sum64_5_hi;function sum64_5_lo(Wt,Pt,en,tn,nn,an,rn,In,sn,on){var cn=Pt+tn+an+In+on;return cn>>>0}Pt.sum64_5_lo=sum64_5_lo;function rotr64_hi(Wt,Pt,en){var tn=Pt<<32-en|Wt>>>en;return tn>>>0}Pt.rotr64_hi=rotr64_hi;function rotr64_lo(Wt,Pt,en){var tn=Wt<<32-en|Pt>>>en;return tn>>>0}Pt.rotr64_lo=rotr64_lo;function shr64_hi(Wt,Pt,en){return Wt>>>en}Pt.shr64_hi=shr64_hi;function shr64_lo(Wt,Pt,en){var tn=Wt<<32-en|Pt>>>en;return tn>>>0}Pt.shr64_lo=shr64_lo},63768:(Wt,Pt,en)=>{"use strict";var tn=en(27477);var nn=en(88660);var an=en(63798);function HmacDRBG(Wt){if(!(this instanceof HmacDRBG))return new HmacDRBG(Wt);this.hash=Wt.hash;this.predResist=!!Wt.predResist;this.outLen=this.hash.outSize;this.minEntropy=Wt.minEntropy||this.hash.hmacStrength;this._reseed=null;this.reseedInterval=null;this.K=null;this.V=null;var Pt=nn.toArray(Wt.entropy,Wt.entropyEnc||"hex");var en=nn.toArray(Wt.nonce,Wt.nonceEnc||"hex");var tn=nn.toArray(Wt.pers,Wt.persEnc||"hex");an(Pt.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits");this._init(Pt,en,tn)}Wt.exports=HmacDRBG;HmacDRBG.prototype._init=function init(Wt,Pt,en){var tn=Wt.concat(Pt).concat(en);this.K=new Array(this.outLen/8);this.V=new Array(this.outLen/8);for(var nn=0;nn=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits");this._update(Wt.concat(en||[]));this._reseed=1};HmacDRBG.prototype.generate=function generate(Wt,Pt,en,tn){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");if(typeof Pt!=="string"){tn=en;en=Pt;Pt=null}if(en){en=nn.toArray(en,tn||"hex");this._update(en)}var an=[];while(an.length{"use strict";const tn=en(86476);Wt.exports=(Wt,{transportLayerEncodingLabel:Pt,defaultEncoding:en="windows-1252"}={})=>{let nn=tn.getBOMEncoding(Wt);if(nn===null&&Pt!==undefined){nn=tn.labelToName(Pt)}if(nn===null){nn=prescanMetaCharset(Wt)}if(nn===null){nn=en}return nn};function prescanMetaCharset(Wt){const Pt=Math.min(Wt.byteLength,1024);for(let en=0;en=65&&an<=90||an>=97&&an<=122){for(en+=2;en=65&&tn<=90){nn+=String.fromCharCode(tn+32)}else{nn+=String.fromCharCode(tn)}}tn=Wt[Pt];if(isSpaceCharacter(tn)){for(Pt++;Pt=65&&tn<=90){an+=String.fromCharCode(tn+32)}else{an+=String.fromCharCode(tn)}}}if(tn===62){return{attr:{name:nn,value:an},i:Pt}}if(tn>=65&&tn<=90){an+=String.fromCharCode(tn+32)}else{an+=String.fromCharCode(tn)}for(Pt++;Pt=65&&tn<=90){an+=String.fromCharCode(tn+32)}else{an+=String.fromCharCode(tn)}}}return{i:Pt}}function extractCharacterEncodingFromMeta(Wt){let Pt=0;while(true){const en=Wt.substring(Pt).search(/charset/iu);if(en===-1){return null}let tn=Pt+en+"charset".length;while(isSpaceCharacter(Wt[tn].charCodeAt(0))){++tn}if(Wt[tn]!=="="){Pt=tn-1;continue}++tn;while(isSpaceCharacter(Wt[tn].charCodeAt(0))){++tn}Pt=tn;break}if(Wt[Pt]==='"'||Wt[Pt]==="'"){const en=Wt.indexOf(Wt[Pt],Pt+1);if(en!==-1){return tn.labelToName(Wt.substring(Pt+1,en))}return null}if(Wt.length===Pt+1){return null}const en=Wt.substring(Pt+1).search(/\x09|\x0A|\x0C|\x0D|\x20|;/u);const nn=en===-1?Wt.length:Pt+en+1;return tn.labelToName(Wt.substring(Pt,nn))}function isSpaceCharacter(Wt){return Wt===9||Wt===10||Wt===12||Wt===13||Wt===32}},81970:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt.HttpProxyAgent=void 0;const In=an(en(69278));const sn=an(en(64756));const on=rn(en(2830));const cn=en(24434);const dn=en(98894);const un=en(87016);const pn=(0,on.default)("http-proxy-agent");class HttpProxyAgent extends dn.Agent{constructor(Wt,Pt){super(Pt);this.proxy=typeof Wt==="string"?new un.URL(Wt):Wt;this.proxyHeaders=Pt?.headers??{};pn("Creating new HttpProxyAgent instance: %o",this.proxy.href);const en=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,"");const tn=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={...Pt?omit(Pt,"headers"):null,host:en,port:tn}}addRequest(Wt,Pt){Wt._header=null;this.setRequestProps(Wt,Pt);super.addRequest(Wt,Pt)}setRequestProps(Wt,Pt){const{proxy:en}=this;const tn=Pt.secureEndpoint?"https:":"http:";const nn=Wt.getHeader("host")||"localhost";const an=`${tn}//${nn}`;const rn=new un.URL(Wt.path,an);if(Pt.port!==80){rn.port=String(Pt.port)}Wt.path=String(rn);const In=typeof this.proxyHeaders==="function"?this.proxyHeaders():{...this.proxyHeaders};if(en.username||en.password){const Wt=`${decodeURIComponent(en.username)}:${decodeURIComponent(en.password)}`;In["Proxy-Authorization"]=`Basic ${Buffer.from(Wt).toString("base64")}`}if(!In["Proxy-Connection"]){In["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close"}for(const Pt of Object.keys(In)){const en=In[Pt];if(en){Wt.setHeader(Pt,en)}}}async connect(Wt,Pt){Wt._header=null;if(!Wt.path.includes("://")){this.setRequestProps(Wt,Pt)}let en;let tn;pn("Regenerating stored HTTP header string for request");Wt._implicitHeader();if(Wt.outputData&&Wt.outputData.length>0){pn("Patching connection write() output buffer with updated header");en=Wt.outputData[0].data;tn=en.indexOf("\r\n\r\n")+4;Wt.outputData[0].data=Wt._header+en.substring(tn);pn("Output buffer: %o",Wt.outputData[0].data)}let nn;if(this.proxy.protocol==="https:"){pn("Creating `tls.Socket`: %o",this.connectOpts);nn=sn.connect(this.connectOpts)}else{pn("Creating `net.Socket`: %o",this.connectOpts);nn=In.connect(this.connectOpts)}await(0,cn.once)(nn,"connect");return nn}}HttpProxyAgent.protocols=["http","https"];Pt.HttpProxyAgent=HttpProxyAgent;function omit(Wt,...Pt){const en={};let tn;for(tn in Wt){if(!Pt.includes(tn)){en[tn]=Wt[tn]}}return en}},3669:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__setModuleDefault||(Object.create?function(Wt,Pt){Object.defineProperty(Wt,"default",{enumerable:true,value:Pt})}:function(Wt,Pt){Wt["default"]=Pt});var an=this&&this.__importStar||function(Wt){if(Wt&&Wt.__esModule)return Wt;var Pt={};if(Wt!=null)for(var en in Wt)if(en!=="default"&&Object.prototype.hasOwnProperty.call(Wt,en))tn(Pt,Wt,en);nn(Pt,Wt);return Pt};var rn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt.HttpsProxyAgent=void 0;const In=an(en(69278));const sn=an(en(64756));const on=rn(en(42613));const cn=rn(en(2830));const dn=en(98894);const un=en(87016);const pn=en(37943);const mn=(0,cn.default)("https-proxy-agent");class HttpsProxyAgent extends dn.Agent{constructor(Wt,Pt){super(Pt);this.options={path:undefined};this.proxy=typeof Wt==="string"?new un.URL(Wt):Wt;this.proxyHeaders=Pt?.headers??{};mn("Creating new HttpsProxyAgent instance: %o",this.proxy.href);const en=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,"");const tn=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...Pt?omit(Pt,"headers"):null,host:en,port:tn}}async connect(Wt,Pt){const{proxy:en}=this;if(!Pt.host){throw new TypeError('No "host" provided')}let tn;if(en.protocol==="https:"){mn("Creating `tls.Socket`: %o",this.connectOpts);const Wt=this.connectOpts.servername||this.connectOpts.host;tn=sn.connect({...this.connectOpts,servername:Wt})}else{mn("Creating `net.Socket`: %o",this.connectOpts);tn=In.connect(this.connectOpts)}const nn=typeof this.proxyHeaders==="function"?this.proxyHeaders():{...this.proxyHeaders};const an=In.isIPv6(Pt.host)?`[${Pt.host}]`:Pt.host;let rn=`CONNECT ${an}:${Pt.port} HTTP/1.1\r\n`;if(en.username||en.password){const Wt=`${decodeURIComponent(en.username)}:${decodeURIComponent(en.password)}`;nn["Proxy-Authorization"]=`Basic ${Buffer.from(Wt).toString("base64")}`}nn.Host=`${an}:${Pt.port}`;if(!nn["Proxy-Connection"]){nn["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close"}for(const Wt of Object.keys(nn)){rn+=`${Wt}: ${nn[Wt]}\r\n`}const cn=(0,pn.parseProxyResponse)(tn);tn.write(`${rn}\r\n`);const{connect:dn,buffered:un}=await cn;Wt.emit("proxyConnect",dn);this.emit("proxyConnect",dn,Wt);if(dn.statusCode===200){Wt.once("socket",resume);if(Pt.secureEndpoint){mn("Upgrading socket connection to TLS");const Wt=Pt.servername||Pt.host;return sn.connect({...omit(Pt,"host","path","port"),socket:tn,servername:Wt})}return tn}tn.destroy();const bn=new In.Socket({writable:false});bn.readable=true;Wt.once("socket",(Wt=>{mn("Replaying proxy buffer for failed request");(0,on.default)(Wt.listenerCount("data")>0);Wt.push(un);Wt.push(null)}));return bn}}HttpsProxyAgent.protocols=["http","https"];Pt.HttpsProxyAgent=HttpsProxyAgent;function resume(Wt){Wt.resume()}function omit(Wt,...Pt){const en={};let tn;for(tn in Wt){if(!Pt.includes(tn)){en[tn]=Wt[tn]}}return en}},37943:function(Wt,Pt,en){"use strict";var tn=this&&this.__importDefault||function(Wt){return Wt&&Wt.__esModule?Wt:{default:Wt}};Object.defineProperty(Pt,"__esModule",{value:true});Pt.parseProxyResponse=void 0;const nn=tn(en(2830));const an=(0,nn.default)("https-proxy-agent:parse-proxy-response");function parseProxyResponse(Wt){return new Promise(((Pt,en)=>{let tn=0;const nn=[];function read(){const Pt=Wt.read();if(Pt)ondata(Pt);else Wt.once("readable",read)}function cleanup(){Wt.removeListener("end",onend);Wt.removeListener("error",onerror);Wt.removeListener("readable",read)}function onend(){cleanup();an("onend");en(new Error("Proxy connection ended before receiving CONNECT response"))}function onerror(Wt){cleanup();an("onerror %o",Wt);en(Wt)}function ondata(rn){nn.push(rn);tn+=rn.length;const In=Buffer.concat(nn,tn);const sn=In.indexOf("\r\n\r\n");if(sn===-1){an("have not received end of HTTP headers yet...");read();return}const on=In.slice(0,sn).toString("ascii").split("\r\n");const cn=on.shift();if(!cn){Wt.destroy();return en(new Error("No header received from proxy CONNECT response"))}const dn=cn.split(" ");const un=+dn[1];const pn=dn.slice(2).join(" ");const mn={};for(const Pt of on){if(!Pt)continue;const tn=Pt.indexOf(":");if(tn===-1){Wt.destroy();return en(new Error(`Invalid header from proxy CONNECT response: "${Pt}"`))}const nn=Pt.slice(0,tn).toLowerCase();const an=Pt.slice(tn+1).trimStart();const rn=mn[nn];if(typeof rn==="string"){mn[nn]=[rn,an]}else if(Array.isArray(rn)){rn.push(an)}else{mn[nn]=an}}an("got proxy server response: %o %o",cn,mn);cleanup();Pt({connect:{statusCode:un,statusText:pn,headers:mn},buffered:In})}Wt.on("error",onerror);Wt.on("end",onend);read()}))}Pt.parseProxyResponse=parseProxyResponse},33724:(Wt,Pt,en)=>{"use strict"; +/*! + * humanize-ms - index.js + * Copyright(c) 2014 dead_horse + * MIT Licensed + */var tn=en(39023);var nn=en(70744);Wt.exports=function(Wt){if(typeof Wt==="number")return Wt;var Pt=nn(Wt);if(Pt===undefined){var en=new Error(tn.format("humanize-ms(%j) result undefined",Wt));console.warn(en.stack)}return Pt}},7978:(Wt,Pt,en)=>{"use strict";var tn=en(12803).Buffer;Pt._dbcs=DBCSCodec;var nn=-1,an=-2,rn=-10,In=-1e3,sn=new Array(256),on=-1;for(var cn=0;cn<256;cn++)sn[cn]=nn;function DBCSCodec(Wt,Pt){this.encodingName=Wt.encodingName;if(!Wt)throw new Error("DBCS codec is called without the data.");if(!Wt.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var en=Wt.table();this.decodeTables=[];this.decodeTables[0]=sn.slice(0);this.decodeTableSeq=[];for(var tn=0;tnIn){throw new Error("gb18030 decode tables conflict at byte 2")}var pn=this.decodeTables[In-dn[un]];for(var mn=129;mn<=254;mn++){if(pn[mn]===nn){pn[mn]=In-on}else if(pn[mn]===In-on){continue}else if(pn[mn]>In){throw new Error("gb18030 decode tables conflict at byte 3")}var bn=this.decodeTables[In-pn[mn]];for(var Gn=48;Gn<=57;Gn++){if(bn[Gn]===nn)bn[Gn]=an}}}}}this.defaultCharUnicode=Pt.defaultCharUnicode;this.encodeTable=[];this.encodeTableSeq=[];var hn={};if(Wt.encodeSkipVals)for(var tn=0;tn0;Wt>>>=8)Pt.push(Wt&255);if(Pt.length==0)Pt.push(0);var en=this.decodeTables[0];for(var tn=Pt.length-1;tn>0;tn--){var an=en[Pt[tn]];if(an==nn){en[Pt[tn]]=In-this.decodeTables.length;this.decodeTables.push(en=sn.slice(0))}else if(an<=In){en=this.decodeTables[In-an]}else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+Wt.toString(16))}return en};DBCSCodec.prototype._addDecodeChunk=function(Wt){var Pt=parseInt(Wt[0],16);var en=this._getDecodeTrieNode(Pt);Pt=Pt&255;for(var tn=1;tn255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+Wt[0]+": too long"+Pt)};DBCSCodec.prototype._getEncodeBucket=function(Wt){var Pt=Wt>>8;if(this.encodeTable[Pt]===undefined)this.encodeTable[Pt]=sn.slice(0);return this.encodeTable[Pt]};DBCSCodec.prototype._setEncodeChar=function(Wt,Pt){var en=this._getEncodeBucket(Wt);var tn=Wt&255;if(en[tn]<=rn)this.encodeTableSeq[rn-en[tn]][on]=Pt;else if(en[tn]==nn)en[tn]=Pt};DBCSCodec.prototype._setEncodeSequence=function(Wt,Pt){var en=Wt[0];var tn=this._getEncodeBucket(en);var an=en&255;var In;if(tn[an]<=rn){In=this.encodeTableSeq[rn-tn[an]]}else{In={};if(tn[an]!==nn)In[on]=tn[an];tn[an]=rn-this.encodeTableSeq.length;this.encodeTableSeq.push(In)}for(var sn=1;sn=0){this._setEncodeChar(on,cn);nn=true}else if(on<=In){var dn=In-on;if(!an[dn]){var un=cn<<8>>>0;if(this._fillEncodeTable(dn,un,en))nn=true;else an[dn]=true}}else if(on<=rn){this._setEncodeSequence(this.decodeTableSeq[rn-on],cn);nn=true}}return nn};function DBCSEncoder(Wt,Pt){this.leadSurrogate=-1;this.seqObj=undefined;this.encodeTable=Pt.encodeTable;this.encodeTableSeq=Pt.encodeTableSeq;this.defaultCharSingleByte=Pt.defCharSB;this.gb18030=Pt.gb18030}DBCSEncoder.prototype.write=function(Wt){var Pt=tn.alloc(Wt.length*(this.gb18030?4:3)),en=this.leadSurrogate,an=this.seqObj,In=-1,sn=0,cn=0;while(true){if(In===-1){if(sn==Wt.length)break;var dn=Wt.charCodeAt(sn++)}else{var dn=In;In=-1}if(55296<=dn&&dn<57344){if(dn<56320){if(en===-1){en=dn;continue}else{en=dn;dn=nn}}else{if(en!==-1){dn=65536+(en-55296)*1024+(dn-56320);en=-1}else{dn=nn}}}else if(en!==-1){In=dn;dn=nn;en=-1}var un=nn;if(an!==undefined&&dn!=nn){var pn=an[dn];if(typeof pn==="object"){an=pn;continue}else if(typeof pn=="number"){un=pn}else if(pn==undefined){pn=an[on];if(pn!==undefined){un=pn;In=dn}else{}}an=undefined}else if(dn>=0){var mn=this.encodeTable[dn>>8];if(mn!==undefined)un=mn[dn&255];if(un<=rn){an=this.encodeTableSeq[rn-un];continue}if(un==nn&&this.gb18030){var bn=findIdx(this.gb18030.uChars,dn);if(bn!=-1){var un=this.gb18030.gbChars[bn]+(dn-this.gb18030.uChars[bn]);Pt[cn++]=129+Math.floor(un/12600);un=un%12600;Pt[cn++]=48+Math.floor(un/1260);un=un%1260;Pt[cn++]=129+Math.floor(un/10);un=un%10;Pt[cn++]=48+un;continue}}}if(un===nn)un=this.defaultCharSingleByte;if(un<256){Pt[cn++]=un}else if(un<65536){Pt[cn++]=un>>8;Pt[cn++]=un&255}else if(un<16777216){Pt[cn++]=un>>16;Pt[cn++]=un>>8&255;Pt[cn++]=un&255}else{Pt[cn++]=un>>>24;Pt[cn++]=un>>>16&255;Pt[cn++]=un>>>8&255;Pt[cn++]=un&255}}this.seqObj=an;this.leadSurrogate=en;return Pt.slice(0,cn)};DBCSEncoder.prototype.end=function(){if(this.leadSurrogate===-1&&this.seqObj===undefined)return;var Wt=tn.alloc(10),Pt=0;if(this.seqObj){var en=this.seqObj[on];if(en!==undefined){if(en<256){Wt[Pt++]=en}else{Wt[Pt++]=en>>8;Wt[Pt++]=en&255}}else{}this.seqObj=undefined}if(this.leadSurrogate!==-1){Wt[Pt++]=this.defaultCharSingleByte;this.leadSurrogate=-1}return Wt.slice(0,Pt)};DBCSEncoder.prototype.findIdx=findIdx;function DBCSDecoder(Wt,Pt){this.nodeIdx=0;this.prevBytes=[];this.decodeTables=Pt.decodeTables;this.decodeTableSeq=Pt.decodeTableSeq;this.defaultCharUnicode=Pt.defaultCharUnicode;this.gb18030=Pt.gb18030}DBCSDecoder.prototype.write=function(Wt){var Pt=tn.alloc(Wt.length*2),en=this.nodeIdx,sn=this.prevBytes,on=this.prevBytes.length,cn=-this.prevBytes.length,dn;for(var un=0,pn=0;un=0?Wt[un]:sn[un+on];var dn=this.decodeTables[en][mn];if(dn>=0){}else if(dn===nn){dn=this.defaultCharUnicode.charCodeAt(0);un=cn}else if(dn===an){if(un>=3){var bn=(Wt[un-3]-129)*12600+(Wt[un-2]-48)*1260+(Wt[un-1]-129)*10+(mn-48)}else{var bn=(sn[un-3+on]-129)*12600+((un-2>=0?Wt[un-2]:sn[un-2+on])-48)*1260+((un-1>=0?Wt[un-1]:sn[un-1+on])-129)*10+(mn-48)}var Gn=findIdx(this.gb18030.gbChars,bn);dn=this.gb18030.uChars[Gn]+bn-this.gb18030.gbChars[Gn]}else if(dn<=In){en=In-dn;continue}else if(dn<=rn){var hn=this.decodeTableSeq[rn-dn];for(var Zn=0;Zn>8}dn=hn[hn.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+dn+" at "+en+"/"+mn);if(dn>=65536){dn-=65536;var An=55296|dn>>10;Pt[pn++]=An&255;Pt[pn++]=An>>8;dn=56320|dn&1023}Pt[pn++]=dn&255;Pt[pn++]=dn>>8;en=0;cn=un+1}this.nodeIdx=en;this.prevBytes=cn>=0?Array.prototype.slice.call(Wt,cn):sn.slice(cn+on).concat(Array.prototype.slice.call(Wt));return Pt.slice(0,pn).toString("ucs2")};DBCSDecoder.prototype.end=function(){var Wt="";while(this.prevBytes.length>0){Wt+=this.defaultCharUnicode;var Pt=this.prevBytes.slice(1);this.prevBytes=[];this.nodeIdx=0;if(Pt.length>0)Wt+=this.write(Pt)}this.prevBytes=[];this.nodeIdx=0;return Wt};function findIdx(Wt,Pt){if(Wt[0]>Pt)return-1;var en=0,tn=Wt.length;while(en>1);if(Wt[nn]<=Pt)en=nn;else tn=nn}return en}},11802:(Wt,Pt,en)=>{"use strict";Wt.exports={shiftjis:{type:"_dbcs",table:function(){return en(40679)},encodeAdd:{"¥":92,"‾":126},encodeSkipVals:[{from:60736,to:63808}]},csshiftjis:"shiftjis",mskanji:"shiftjis",sjis:"shiftjis",windows31j:"shiftjis",ms31j:"shiftjis",xsjis:"shiftjis",windows932:"shiftjis",ms932:"shiftjis",932:"shiftjis",cp932:"shiftjis",eucjp:{type:"_dbcs",table:function(){return en(56406)},encodeAdd:{"¥":92,"‾":126}},gb2312:"cp936",gb231280:"cp936",gb23121980:"cp936",csgb2312:"cp936",csiso58gb231280:"cp936",euccn:"cp936",windows936:"cp936",ms936:"cp936",936:"cp936",cp936:{type:"_dbcs",table:function(){return en(74488)}},gbk:{type:"_dbcs",table:function(){return en(74488).concat(en(55914))}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return en(74488).concat(en(55914))},gb18030:function(){return en(99129)},encodeSkipVals:[128],encodeAdd:{"€":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return en(21166)}},cseuckr:"cp949",csksc56011987:"cp949",euckr:"cp949",isoir149:"cp949",korean:"cp949",ksc56011987:"cp949",ksc56011989:"cp949",ksc5601:"cp949",windows950:"cp950",ms950:"cp950",950:"cp950",cp950:{type:"_dbcs",table:function(){return en(72324)}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return en(72324).concat(en(43267))},encodeSkipVals:[36457,36463,36478,36523,36532,36557,36560,36695,36713,36718,36811,36862,36973,36986,37060,37084,37105,37311,37551,37552,37553,37554,37585,37959,38090,38361,38652,39285,39798,39800,39803,39878,39902,39916,39926,40002,40019,40034,40040,40043,40055,40124,40125,40144,40279,40282,40388,40431,40443,40617,40687,40701,40800,40907,41079,41180,41183,36812,37576,38468,38637,41636,41637,41639,41638,41676,41678]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}},27585:(Wt,Pt,en)=>{"use strict";var tn=[en(72356),en(62021),en(8771),en(28231),en(82473),en(97083),en(69487),en(7978),en(11802)];for(var nn=0;nn{"use strict";var tn=en(12803).Buffer;Wt.exports={utf8:{type:"_internal",bomAware:true},cesu8:{type:"_internal",bomAware:true},unicode11utf8:"utf8",ucs2:{type:"_internal",bomAware:true},utf16le:"ucs2",binary:{type:"_internal"},base64:{type:"_internal"},hex:{type:"_internal"},_internal:InternalCodec};function InternalCodec(Wt,Pt){this.enc=Wt.encodingName;this.bomAware=Wt.bomAware;if(this.enc==="base64")this.encoder=InternalEncoderBase64;else if(this.enc==="cesu8"){this.enc="utf8";this.encoder=InternalEncoderCesu8;if(tn.from("eda0bdedb2a9","hex").toString()!=="💩"){this.decoder=InternalDecoderCesu8;this.defaultCharUnicode=Pt.defaultCharUnicode}}}InternalCodec.prototype.encoder=InternalEncoder;InternalCodec.prototype.decoder=InternalDecoder;var nn=en(13193).StringDecoder;if(!nn.prototype.end)nn.prototype.end=function(){};function InternalDecoder(Wt,Pt){this.decoder=new nn(Pt.enc)}InternalDecoder.prototype.write=function(Wt){if(!tn.isBuffer(Wt)){Wt=tn.from(Wt)}return this.decoder.write(Wt)};InternalDecoder.prototype.end=function(){return this.decoder.end()};function InternalEncoder(Wt,Pt){this.enc=Pt.enc}InternalEncoder.prototype.write=function(Wt){return tn.from(Wt,this.enc)};InternalEncoder.prototype.end=function(){};function InternalEncoderBase64(Wt,Pt){this.prevStr=""}InternalEncoderBase64.prototype.write=function(Wt){Wt=this.prevStr+Wt;var Pt=Wt.length-Wt.length%4;this.prevStr=Wt.slice(Pt);Wt=Wt.slice(0,Pt);return tn.from(Wt,"base64")};InternalEncoderBase64.prototype.end=function(){return tn.from(this.prevStr,"base64")};function InternalEncoderCesu8(Wt,Pt){}InternalEncoderCesu8.prototype.write=function(Wt){var Pt=tn.alloc(Wt.length*3),en=0;for(var nn=0;nn>>6);Pt[en++]=128+(an&63)}else{Pt[en++]=224+(an>>>12);Pt[en++]=128+(an>>>6&63);Pt[en++]=128+(an&63)}}return Pt.slice(0,en)};InternalEncoderCesu8.prototype.end=function(){};function InternalDecoderCesu8(Wt,Pt){this.acc=0;this.contBytes=0;this.accBytes=0;this.defaultCharUnicode=Pt.defaultCharUnicode}InternalDecoderCesu8.prototype.write=function(Wt){var Pt=this.acc,en=this.contBytes,tn=this.accBytes,nn="";for(var an=0;an0){nn+=this.defaultCharUnicode;en=0}if(rn<128){nn+=String.fromCharCode(rn)}else if(rn<224){Pt=rn&31;en=1;tn=1}else if(rn<240){Pt=rn&15;en=2;tn=1}else{nn+=this.defaultCharUnicode}}else{if(en>0){Pt=Pt<<6|rn&63;en--;tn++;if(en===0){if(tn===2&&Pt<128&&Pt>0)nn+=this.defaultCharUnicode;else if(tn===3&&Pt<2048)nn+=this.defaultCharUnicode;else nn+=String.fromCharCode(Pt)}}else{nn+=this.defaultCharUnicode}}}this.acc=Pt;this.contBytes=en;this.accBytes=tn;return nn};InternalDecoderCesu8.prototype.end=function(){var Wt=0;if(this.contBytes>0)Wt+=this.defaultCharUnicode;return Wt}},82473:(Wt,Pt,en)=>{"use strict";var tn=en(12803).Buffer;Pt._sbcs=SBCSCodec;function SBCSCodec(Wt,Pt){if(!Wt)throw new Error("SBCS codec is called without the data.");if(!Wt.chars||Wt.chars.length!==128&&Wt.chars.length!==256)throw new Error("Encoding '"+Wt.type+"' has incorrect 'chars' (must be of len 128 or 256)");if(Wt.chars.length===128){var en="";for(var nn=0;nn<128;nn++)en+=String.fromCharCode(nn);Wt.chars=en+Wt.chars}this.decodeBuf=tn.from(Wt.chars,"ucs2");var an=tn.alloc(65536,Pt.defaultCharSingleByte.charCodeAt(0));for(var nn=0;nn{"use strict";Wt.exports={437:"cp437",737:"cp737",775:"cp775",850:"cp850",852:"cp852",855:"cp855",856:"cp856",857:"cp857",858:"cp858",860:"cp860",861:"cp861",862:"cp862",863:"cp863",864:"cp864",865:"cp865",866:"cp866",869:"cp869",874:"windows874",922:"cp922",1046:"cp1046",1124:"cp1124",1125:"cp1125",1129:"cp1129",1133:"cp1133",1161:"cp1161",1162:"cp1162",1163:"cp1163",1250:"windows1250",1251:"windows1251",1252:"windows1252",1253:"windows1253",1254:"windows1254",1255:"windows1255",1256:"windows1256",1257:"windows1257",1258:"windows1258",28591:"iso88591",28592:"iso88592",28593:"iso88593",28594:"iso88594",28595:"iso88595",28596:"iso88596",28597:"iso88597",28598:"iso88598",28599:"iso88599",28600:"iso885910",28601:"iso885911",28603:"iso885913",28604:"iso885914",28605:"iso885915",28606:"iso885916",windows874:{type:"_sbcs",chars:"€����…�����������‘’“”•–—�������� กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����"},win874:"windows874",cp874:"windows874",windows1250:{type:"_sbcs",chars:"€�‚�„…†‡�‰Š‹ŚŤŽŹ�‘’“”•–—�™š›śťžź ˇ˘Ł¤Ą¦§¨©Ş«¬­®Ż°±˛ł´µ¶·¸ąş»Ľ˝ľżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙"},win1250:"windows1250",cp1250:"windows1250",windows1251:{type:"_sbcs",chars:"ЂЃ‚ѓ„…†‡€‰Љ‹ЊЌЋЏђ‘’“”•–—�™љ›њќћџ ЎўЈ¤Ґ¦§Ё©Є«¬­®Ї°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя"},win1251:"windows1251",cp1251:"windows1251",windows1252:{type:"_sbcs",chars:"€�‚ƒ„…†‡ˆ‰Š‹Œ�Ž��‘’“”•–—˜™š›œ�žŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ"},win1252:"windows1252",cp1252:"windows1252",windows1253:{type:"_sbcs",chars:"€�‚ƒ„…†‡�‰�‹�����‘’“”•–—�™�›���� ΅Ά£¤¥¦§¨©�«¬­®―°±²³΄µ¶·ΈΉΊ»Ό½ΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ�ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ�"},win1253:"windows1253",cp1253:"windows1253",windows1254:{type:"_sbcs",chars:"€�‚ƒ„…†‡ˆ‰Š‹Œ����‘’“”•–—˜™š›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ"},win1254:"windows1254",cp1254:"windows1254",windows1255:{type:"_sbcs",chars:"€�‚ƒ„…†‡ˆ‰�‹�����‘’“”•–—˜™�›���� ¡¢£₪¥¦§¨©×«¬­®¯°±²³´µ¶·¸¹÷»¼½¾¿ְֱֲֳִֵֶַָֹֺֻּֽ־ֿ׀ׁׂ׃װױײ׳״�������אבגדהוזחטיךכלםמןנסעףפץצקרשת��‎‏�"},win1255:"windows1255",cp1255:"windows1255",windows1256:{type:"_sbcs",chars:"€پ‚ƒ„…†‡ˆ‰ٹ‹Œچژڈگ‘’“”•–—ک™ڑ›œ‌‍ں ،¢£¤¥¦§¨©ھ«¬­®¯°±²³´µ¶·¸¹؛»¼½¾؟ہءآأؤإئابةتثجحخدذرزسشصض×طظعغـفقكàلâمنهوçèéêëىيîïًٌٍَôُِ÷ّùْûü‎‏ے"},win1256:"windows1256",cp1256:"windows1256",windows1257:{type:"_sbcs",chars:"€�‚�„…†‡�‰�‹�¨ˇ¸�‘’“”•–—�™�›�¯˛� �¢£¤�¦§Ø©Ŗ«¬­®Æ°±²³´µ¶·ø¹ŗ»¼½¾æĄĮĀĆÄÅĘĒČÉŹĖĢĶĪĻŠŃŅÓŌÕÖ×ŲŁŚŪÜŻŽßąįāćäåęēčéźėģķīļšńņóōõö÷ųłśūüżž˙"},win1257:"windows1257",cp1257:"windows1257",windows1258:{type:"_sbcs",chars:"€�‚ƒ„…†‡ˆ‰�‹Œ����‘’“”•–—˜™�›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖ×ØÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ"},win1258:"windows1258",cp1258:"windows1258",iso88591:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ"},cp28591:"iso88591",iso88592:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ą˘Ł¤ĽŚ§¨ŠŞŤŹ­ŽŻ°ą˛ł´ľśˇ¸šşťź˝žżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙"},cp28592:"iso88592",iso88593:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ħ˘£¤�Ĥ§¨İŞĞĴ­�Ż°ħ²³´µĥ·¸ışğĵ½�żÀÁÂ�ÄĊĈÇÈÉÊËÌÍÎÏ�ÑÒÓÔĠÖ×ĜÙÚÛÜŬŜßàáâ�äċĉçèéêëìíîï�ñòóôġö÷ĝùúûüŭŝ˙"},cp28593:"iso88593",iso88594:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĸŖ¤ĨĻ§¨ŠĒĢŦ­Ž¯°ą˛ŗ´ĩļˇ¸šēģŧŊžŋĀÁÂÃÄÅÆĮČÉĘËĖÍÎĪĐŅŌĶÔÕÖ×ØŲÚÛÜŨŪßāáâãäåæįčéęëėíîīđņōķôõö÷øųúûüũū˙"},cp28594:"iso88594",iso88595:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ЁЂЃЄЅІЇЈЉЊЋЌ­ЎЏАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя№ёђѓєѕіїјљњћќ§ўџ"},cp28595:"iso88595",iso88596:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ���¤�������،­�������������؛���؟�ءآأؤإئابةتثجحخدذرزسشصضطظعغ�����ـفقكلمنهوىيًٌٍَُِّْ�������������"},cp28596:"iso88596",iso88597:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ‘’£€₯¦§¨©ͺ«¬­�―°±²³΄΅Ά·ΈΉΊ»Ό½ΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ�ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ�"},cp28597:"iso88597",iso88598:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ �¢£¤¥¦§¨©×«¬­®¯°±²³´µ¶·¸¹÷»¼½¾��������������������������������‗אבגדהוזחטיךכלםמןנסעףפץצקרשת��‎‏�"},cp28598:"iso88598",iso88599:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ"},cp28599:"iso88599",iso885910:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĒĢĪĨĶ§ĻĐŠŦŽ­ŪŊ°ąēģīĩķ·ļđšŧž―ūŋĀÁÂÃÄÅÆĮČÉĘËĖÍÎÏÐŅŌÓÔÕÖŨØŲÚÛÜÝÞßāáâãäåæįčéęëėíîïðņōóôõöũøųúûüýþĸ"},cp28600:"iso885910",iso885911:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����"},cp28601:"iso885911",iso885913:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ”¢£¤„¦§Ø©Ŗ«¬­®Æ°±²³“µ¶·ø¹ŗ»¼½¾æĄĮĀĆÄÅĘĒČÉŹĖĢĶĪĻŠŃŅÓŌÕÖ×ŲŁŚŪÜŻŽßąįāćäåęēčéźėģķīļšńņóōõö÷ųłśūüżž’"},cp28603:"iso885913",iso885914:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ḃḃ£ĊċḊ§Ẁ©ẂḋỲ­®ŸḞḟĠġṀṁ¶ṖẁṗẃṠỳẄẅṡÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏŴÑÒÓÔÕÖṪØÙÚÛÜÝŶßàáâãäåæçèéêëìíîïŵñòóôõöṫøùúûüýŷÿ"},cp28604:"iso885914",iso885915:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£€¥Š§š©ª«¬­®¯°±²³Žµ¶·ž¹º»ŒœŸ¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ"},cp28605:"iso885915",iso885916:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄąŁ€„Š§š©Ș«Ź­źŻ°±ČłŽ”¶·žčș»ŒœŸżÀÁÂĂÄĆÆÇÈÉÊËÌÍÎÏĐŃÒÓÔŐÖŚŰÙÚÛÜĘȚßàáâăäćæçèéêëìíîïđńòóôőöśűùúûüęțÿ"},cp28606:"iso885916",cp437:{type:"_sbcs",chars:"ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "},ibm437:"cp437",csibm437:"cp437",cp737:{type:"_sbcs",chars:"ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπρσςτυφχψ░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀ωάέήϊίόύϋώΆΈΉΊΌΎΏ±≥≤ΪΫ÷≈°∙·√ⁿ²■ "},ibm737:"cp737",csibm737:"cp737",cp775:{type:"_sbcs",chars:"ĆüéāäģåćłēŖŗīŹÄÅÉæÆōöĢ¢ŚśÖÜø£ØפĀĪóŻżź”¦©®¬½¼Ł«»░▒▓│┤ĄČĘĖ╣║╗╝ĮŠ┐└┴┬├─┼ŲŪ╚╔╩╦╠═╬Žąčęėįšųūž┘┌█▄▌▐▀ÓßŌŃõÕµńĶķĻļņĒŅ’­±“¾¶§÷„°∙·¹³²■ "},ibm775:"cp775",csibm775:"cp775",cp850:{type:"_sbcs",chars:"ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø׃áíóúñѪº¿®¬½¼¡«»░▒▓│┤ÁÂÀ©╣║╗╝¢¥┐└┴┬├─┼ãÃ╚╔╩╦╠═╬¤ðÐÊËÈıÍÎÏ┘┌█▄¦Ì▀ÓßÔÒõÕµþÞÚÛÙýݯ´­±‗¾¶§÷¸°¨·¹³²■ "},ibm850:"cp850",csibm850:"cp850",cp852:{type:"_sbcs",chars:"ÇüéâäůćçłëŐőîŹÄĆÉĹĺôöĽľŚśÖÜŤťŁ×čáíóúĄąŽžĘ꬟Ⱥ«»░▒▓│┤ÁÂĚŞ╣║╗╝Żż┐└┴┬├─┼Ăă╚╔╩╦╠═╬¤đĐĎËďŇÍÎě┘┌█▄ŢŮ▀ÓßÔŃńňŠšŔÚŕŰýÝţ´­˝˛ˇ˘§÷¸°¨˙űŘř■ "},ibm852:"cp852",csibm852:"cp852",cp855:{type:"_sbcs",chars:"ђЂѓЃёЁєЄѕЅіІїЇјЈљЉњЊћЋќЌўЎџЏюЮъЪаАбБцЦдДеЕфФгГ«»░▒▓│┤хХиИ╣║╗╝йЙ┐└┴┬├─┼кК╚╔╩╦╠═╬¤лЛмМнНоОп┘┌█▄Пя▀ЯрРсСтТуУжЖвВьЬ№­ыЫзЗшШэЭщЩчЧ§■ "},ibm855:"cp855",csibm855:"cp855",cp856:{type:"_sbcs",chars:"אבגדהוזחטיךכלםמןנסעףפץצקרשת�£�×����������®¬½¼�«»░▒▓│┤���©╣║╗╝¢¥┐└┴┬├─┼��╚╔╩╦╠═╬¤���������┘┌█▄¦�▀������µ�������¯´­±‗¾¶§÷¸°¨·¹³²■ "},ibm856:"cp856",csibm856:"cp856",cp857:{type:"_sbcs",chars:"ÇüéâäàåçêëèïîıÄÅÉæÆôöòûùİÖÜø£ØŞşáíóúñÑĞ𿮬½¼¡«»░▒▓│┤ÁÂÀ©╣║╗╝¢¥┐└┴┬├─┼ãÃ╚╔╩╦╠═╬¤ºªÊËÈ�ÍÎÏ┘┌█▄¦Ì▀ÓßÔÒõÕµ�×ÚÛÙìÿ¯´­±�¾¶§÷¸°¨·¹³²■ "},ibm857:"cp857",csibm857:"cp857",cp858:{type:"_sbcs",chars:"ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø׃áíóúñѪº¿®¬½¼¡«»░▒▓│┤ÁÂÀ©╣║╗╝¢¥┐└┴┬├─┼ãÃ╚╔╩╦╠═╬¤ðÐÊËÈ€ÍÎÏ┘┌█▄¦Ì▀ÓßÔÒõÕµþÞÚÛÙýݯ´­±‗¾¶§÷¸°¨·¹³²■ "},ibm858:"cp858",csibm858:"cp858",cp860:{type:"_sbcs",chars:"ÇüéâãàÁçêÊèÍÔìÃÂÉÀÈôõòÚùÌÕÜ¢£Ù₧ÓáíóúñѪº¿Ò¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "},ibm860:"cp860",csibm860:"cp860",cp861:{type:"_sbcs",chars:"ÇüéâäàåçêëèÐðÞÄÅÉæÆôöþûÝýÖÜø£Ø₧ƒáíóúÁÍÓÚ¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "},ibm861:"cp861",csibm861:"cp861",cp862:{type:"_sbcs",chars:"אבגדהוזחטיךכלםמןנסעףפץצקרשת¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "},ibm862:"cp862",csibm862:"cp862",cp863:{type:"_sbcs",chars:"ÇüéâÂà¶çêëèïî‗À§ÉÈÊôËÏûù¤ÔÜ¢£ÙÛƒ¦´óú¨¸³¯Î⌐¬½¼¾«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "},ibm863:"cp863",csibm863:"cp863",cp864:{type:"_sbcs",chars:"\0\b\t\n\v\f\r !\"#$٪&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~°·∙√▒─│┼┤┬├┴┐┌└┘β∞φ±½¼≈«»ﻷﻸ��ﻻﻼ� ­ﺂ£¤ﺄ��ﺎﺏﺕﺙ،ﺝﺡﺥ٠١٢٣٤٥٦٧٨٩ﻑ؛ﺱﺵﺹ؟¢ﺀﺁﺃﺅﻊﺋﺍﺑﺓﺗﺛﺟﺣﺧﺩﺫﺭﺯﺳﺷﺻﺿﻁﻅﻋﻏ¦¬÷×ﻉـﻓﻗﻛﻟﻣﻧﻫﻭﻯﻳﺽﻌﻎﻍﻡﹽّﻥﻩﻬﻰﻲﻐﻕﻵﻶﻝﻙﻱ■�"},ibm864:"cp864",csibm864:"cp864",cp865:{type:"_sbcs",chars:"ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø₧ƒáíóúñѪº¿⌐¬½¼¡«¤░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "},ibm865:"cp865",csibm865:"cp865",cp866:{type:"_sbcs",chars:"АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀рстуфхцчшщъыьэюяЁёЄєЇїЎў°∙·√№¤■ "},ibm866:"cp866",csibm866:"cp866",cp869:{type:"_sbcs",chars:"������Ά�·¬¦‘’Έ―ΉΊΪΌ��ΎΫ©Ώ²³ά£έήίϊΐόύΑΒΓΔΕΖΗ½ΘΙ«»░▒▓│┤ΚΛΜΝ╣║╗╝ΞΟ┐└┴┬├─┼ΠΡ╚╔╩╦╠═╬ΣΤΥΦΧΨΩαβγ┘┌█▄δε▀ζηθικλμνξοπρσςτ΄­±υφχ§ψ΅°¨ωϋΰώ■ "},ibm869:"cp869",csibm869:"cp869",cp922:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®‾°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏŠÑÒÓÔÕÖ×ØÙÚÛÜÝŽßàáâãäåæçèéêëìíîïšñòóôõö÷øùúûüýžÿ"},ibm922:"cp922",csibm922:"cp922",cp1046:{type:"_sbcs",chars:"ﺈ×÷ﹱˆ■│─┐┌└┘ﹹﹻﹽﹿﹷﺊﻰﻳﻲﻎﻏﻐﻶﻸﻺﻼ ¤ﺋﺑﺗﺛﺟﺣ،­ﺧﺳ٠١٢٣٤٥٦٧٨٩ﺷ؛ﺻﺿﻊ؟ﻋءآأؤإئابةتثجحخدذرزسشصضطﻇعغﻌﺂﺄﺎﻓـفقكلمنهوىيًٌٍَُِّْﻗﻛﻟﻵﻷﻹﻻﻣﻧﻬﻩ�"},ibm1046:"cp1046",csibm1046:"cp1046",cp1124:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ЁЂҐЄЅІЇЈЉЊЋЌ­ЎЏАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя№ёђґєѕіїјљњћќ§ўџ"},ibm1124:"cp1124",csibm1124:"cp1124",cp1125:{type:"_sbcs",chars:"АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀рстуфхцчшщъыьэюяЁёҐґЄєІіЇї·√№¤■ "},ibm1125:"cp1125",csibm1125:"cp1125",cp1129:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§œ©ª«¬­®¯°±²³Ÿµ¶·Œ¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖ×ØÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ"},ibm1129:"cp1129",csibm1129:"cp1129",cp1133:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ກຂຄງຈສຊຍດຕຖທນບປຜຝພຟມຢຣລວຫອຮ���ຯະາຳິີຶືຸູຼັົຽ���ເແໂໃໄ່້໊໋໌ໍໆ�ໜໝ₭����������������໐໑໒໓໔໕໖໗໘໙��¢¬¦�"},ibm1133:"cp1133",csibm1133:"cp1133",cp1161:{type:"_sbcs",chars:"��������������������������������่กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู้๊๋€฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛¢¬¦ "},ibm1161:"cp1161",csibm1161:"cp1161",cp1162:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����"},ibm1162:"cp1162",csibm1162:"cp1162",cp1163:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£€¥¦§œ©ª«¬­®¯°±²³Ÿµ¶·Œ¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖ×ØÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ"},ibm1163:"cp1163",csibm1163:"cp1163",maccroatian:{type:"_sbcs",chars:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®Š™´¨≠ŽØ∞±≤≥∆µ∂∑∏š∫ªºΩžø¿¡¬√ƒ≈Ć«Č… ÀÃÕŒœĐ—“”‘’÷◊�©⁄¤‹›Æ»–·‚„‰ÂćÁčÈÍÎÏÌÓÔđÒÚÛÙıˆ˜¯πË˚¸Êæˇ"},maccyrillic:{type:"_sbcs",chars:"АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°¢£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµ∂ЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю¤"},macgreek:{type:"_sbcs",chars:"Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦­ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ�"},maciceland:{type:"_sbcs",chars:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüÝ°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ"},macroman:{type:"_sbcs",chars:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ"},macromania:{type:"_sbcs",chars:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ĂŞ∞±≤≥¥µ∂∑∏π∫ªºΩăş¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›Ţţ‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ"},macthai:{type:"_sbcs",chars:"«»…“”�•‘’� กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู\ufeff​–—฿เแโใไๅๆ็่้๊๋์ํ™๏๐๑๒๓๔๕๖๗๘๙®©����"},macturkish:{type:"_sbcs",chars:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙ�ˆ˜¯˘˙˚¸˝˛ˇ"},macukraine:{type:"_sbcs",chars:"АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°Ґ£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµґЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю¤"},koi8r:{type:"_sbcs",chars:"─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ё╓╔╕╖╗╘╙╚╛╜╝╞╟╠╡Ё╢╣╤╥╦╧╨╩╪╫╬©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ"},koi8u:{type:"_sbcs",chars:"─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ёє╔ії╗╘╙╚╛ґ╝╞╟╠╡ЁЄ╣ІЇ╦╧╨╩╪Ґ╬©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ"},koi8ru:{type:"_sbcs",chars:"─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ёє╔ії╗╘╙╚╛ґў╞╟╠╡ЁЄ╣ІЇ╦╧╨╩╪ҐЎ©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ"},koi8t:{type:"_sbcs",chars:"қғ‚Ғ„…†‡�‰ҳ‹ҲҷҶ�Қ‘’“”•–—�™�›�����ӯӮё¤ӣ¦§���«¬­®�°±²Ё�Ӣ¶·�№�»���©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ"},armscii8:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ �և։)(»«—.՝,-֊…՜՛՞ԱաԲբԳգԴդԵեԶզԷէԸըԹթԺժԻիԼլԽխԾծԿկՀհՁձՂղՃճՄմՅյՆնՇշՈոՉչՊպՋջՌռՍսՎվՏտՐրՑցՒւՓփՔքՕօՖֆ՚�"},rk1048:{type:"_sbcs",chars:"ЂЃ‚ѓ„…†‡€‰Љ‹ЊҚҺЏђ‘’“”•–—�™љ›њқһџ ҰұӘ¤Ө¦§Ё©Ғ«¬­®Ү°±Ііөµ¶·ё№ғ»әҢңүАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя"},tcvn:{type:"_sbcs",chars:"\0ÚỤỪỬỮ\b\t\n\v\f\rỨỰỲỶỸÝỴ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÀẢÃÁẠẶẬÈẺẼÉẸỆÌỈĨÍỊÒỎÕÓỌỘỜỞỠỚỢÙỦŨ ĂÂÊÔƠƯĐăâêôơưđẶ̀̀̉̃́àảãáạẲằẳẵắẴẮẦẨẪẤỀặầẩẫấậèỂẻẽéẹềểễếệìỉỄẾỒĩíịòỔỏõóọồổỗốộờởỡớợùỖủũúụừửữứựỳỷỹýỵỐ"},georgianacademy:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿აბგდევზთიკლმნოპჟრსტუფქღყშჩცძწჭხჯჰჱჲჳჴჵჶçèéêëìíîïðñòóôõö÷øùúûüýþÿ"},georgianps:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿აბგდევზჱთიკლმნჲოპჟრსტჳუფქღყშჩცძწჭხჴჯჰჵæçèéêëìíîïðñòóôõö÷øùúûüýþÿ"},pt154:{type:"_sbcs",chars:"ҖҒӮғ„…ҶҮҲүҠӢҢҚҺҸҗ‘’“”•–—ҳҷҡӣңқһҹ ЎўЈӨҘҰ§Ё©Ә«¬ӯ®Ҝ°ұІіҙө¶·ё№ә»јҪҫҝАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя"},viscii:{type:"_sbcs",chars:"\0ẲẴẪ\b\t\n\v\f\rỶỸỴ !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ẠẮẰẶẤẦẨẬẼẸẾỀỂỄỆỐỒỔỖỘỢỚỜỞỊỎỌỈỦŨỤỲÕắằặấầẩậẽẹếềểễệốồổỗỠƠộờởịỰỨỪỬơớƯÀÁÂÃẢĂẳẵÈÉÊẺÌÍĨỳĐứÒÓÔạỷừửÙÚỹỵÝỡưàáâãảăữẫèéêẻìíĩỉđựòóôõỏọụùúũủýợỮ"},iso646cn:{type:"_sbcs",chars:"\0\b\t\n\v\f\r !\"#¥%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}‾��������������������������������������������������������������������������������������������������������������������������������"},iso646jp:{type:"_sbcs",chars:"\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[¥]^_`abcdefghijklmnopqrstuvwxyz{|}‾��������������������������������������������������������������������������������������������������������������������������������"},hproman8:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ÀÂÈÊËÎÏ´ˋˆ¨˜ÙÛ₤¯Ýý°ÇçÑñ¡¿¤£¥§ƒ¢âêôûáéóúàèòùäëöüÅîØÆåíøæÄìÖÜÉïßÔÁÃãÐðÍÌÓÒÕõŠšÚŸÿÞþ·µ¶¾—¼½ªº«■»±�"},macintosh:{type:"_sbcs",chars:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ"},ascii:{type:"_sbcs",chars:"��������������������������������������������������������������������������������������������������������������������������������"},tis620:{type:"_sbcs",chars:"���������������������������������กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����"}}},97083:Wt=>{"use strict";Wt.exports={10029:"maccenteuro",maccenteuro:{type:"_sbcs",chars:"ÄĀāÉĄÖÜáąČäčĆć鏟ĎíďĒēĖóėôöõúĚěü†°Ę£§•¶ß®©™ę¨≠ģĮįĪ≤≥īĶ∂∑łĻļĽľĹĺŅņѬ√ńŇ∆«»… ňŐÕőŌ–—“”‘’÷◊ōŔŕŘ‹›řŖŗŠ‚„šŚśÁŤťÍŽžŪÓÔūŮÚůŰűŲųÝýķŻŁżĢˇ"},808:"cp808",ibm808:"cp808",cp808:{type:"_sbcs",chars:"АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀рстуфхцчшщъыьэюяЁёЄєЇїЎў°∙·√№€■ "},mik:{type:"_sbcs",chars:"АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя└┴┬├─┼╣║╚╔╩╦╠═╬┐░▒▓│┤№§╗╝┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "},cp720:{type:"_sbcs",chars:"€éâ„à†çêëèïّْô¤ـûùءآأؤ£إئابةتثجحخدذرزسشص«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀ضطظعغفµقكلمنهوىي≡ًٌٍَُِ≈°∙·√ⁿ²■ "},ascii8bit:"ascii",usascii:"ascii",ansix34:"ascii",ansix341968:"ascii",ansix341986:"ascii",csascii:"ascii",cp367:"ascii",ibm367:"ascii",isoir6:"ascii",iso646us:"ascii",iso646irv:"ascii",us:"ascii",latin1:"iso88591",latin2:"iso88592",latin3:"iso88593",latin4:"iso88594",latin5:"iso88599",latin6:"iso885910",latin7:"iso885913",latin8:"iso885914",latin9:"iso885915",latin10:"iso885916",csisolatin1:"iso88591",csisolatin2:"iso88592",csisolatin3:"iso88593",csisolatin4:"iso88594",csisolatincyrillic:"iso88595",csisolatinarabic:"iso88596",csisolatingreek:"iso88597",csisolatinhebrew:"iso88598",csisolatin5:"iso88599",csisolatin6:"iso885910",l1:"iso88591",l2:"iso88592",l3:"iso88593",l4:"iso88594",l5:"iso88599",l6:"iso885910",l7:"iso885913",l8:"iso885914",l9:"iso885915",l10:"iso885916",isoir14:"iso646jp",isoir57:"iso646cn",isoir100:"iso88591",isoir101:"iso88592",isoir109:"iso88593",isoir110:"iso88594",isoir144:"iso88595",isoir127:"iso88596",isoir126:"iso88597",isoir138:"iso88598",isoir148:"iso88599",isoir157:"iso885910",isoir166:"tis620",isoir179:"iso885913",isoir199:"iso885914",isoir203:"iso885915",isoir226:"iso885916",cp819:"iso88591",ibm819:"iso88591",cyrillic:"iso88595",arabic:"iso88596",arabic8:"iso88596",ecma114:"iso88596",asmo708:"iso88596",greek:"iso88597",greek8:"iso88597",ecma118:"iso88597",elot928:"iso88597",hebrew:"iso88598",hebrew8:"iso88598",turkish:"iso88599",turkish8:"iso88599",thai:"iso885911",thai8:"iso885911",celtic:"iso885914",celtic8:"iso885914",isoceltic:"iso885914",tis6200:"tis620",tis62025291:"tis620",tis62025330:"tis620",1e4:"macroman",10006:"macgreek",10007:"maccyrillic",10079:"maciceland",10081:"macturkish",cspc8codepage437:"cp437",cspc775baltic:"cp775",cspc850multilingual:"cp850",cspcp852:"cp852",cspc862latinhebrew:"cp862",cpgr:"cp869",msee:"cp1250",mscyrl:"cp1251",msansi:"cp1252",msgreek:"cp1253",msturk:"cp1254",mshebr:"cp1255",msarab:"cp1256",winbaltrim:"cp1257",cp20866:"koi8r",20866:"koi8r",ibm878:"koi8r",cskoi8r:"koi8r",cp21866:"koi8u",21866:"koi8u",ibm1168:"koi8u",strk10482002:"rk1048",tcvn5712:"tcvn",tcvn57121:"tcvn",gb198880:"iso646cn",cn:"iso646cn",csiso14jisc6220ro:"iso646jp",jisc62201969ro:"iso646jp",jp:"iso646jp",cshproman8:"hproman8",r8:"hproman8",roman8:"hproman8",xroman8:"hproman8",ibm1051:"hproman8",mac:"macintosh",csmacintosh:"macintosh"}},8771:(Wt,Pt,en)=>{"use strict";var tn=en(12803).Buffer;Pt.utf16be=Utf16BECodec;function Utf16BECodec(){}Utf16BECodec.prototype.encoder=Utf16BEEncoder;Utf16BECodec.prototype.decoder=Utf16BEDecoder;Utf16BECodec.prototype.bomAware=true;function Utf16BEEncoder(){}Utf16BEEncoder.prototype.write=function(Wt){var Pt=tn.from(Wt,"ucs2");for(var en=0;en=100){break e}}}}if(an>nn)return"utf-16be";if(an{"use strict";var tn=en(12803).Buffer;Pt._utf32=Utf32Codec;function Utf32Codec(Wt,Pt){this.iconv=Pt;this.bomAware=true;this.isLE=Wt.isLE}Pt.utf32le={type:"_utf32",isLE:true};Pt.utf32be={type:"_utf32",isLE:false};Pt.ucs4le="utf32le";Pt.ucs4be="utf32be";Utf32Codec.prototype.encoder=Utf32Encoder;Utf32Codec.prototype.decoder=Utf32Decoder;function Utf32Encoder(Wt,Pt){this.isLE=Pt.isLE;this.highSurrogate=0}Utf32Encoder.prototype.write=function(Wt){var Pt=tn.from(Wt,"ucs2");var en=tn.alloc(Pt.length*2);var nn=this.isLE?en.writeUInt32LE:en.writeUInt32BE;var an=0;for(var rn=0;rn0){for(;Pt1114111){en=tn}if(en>=65536){en-=65536;var nn=55296|en>>10;Wt[Pt++]=nn&255;Wt[Pt++]=nn>>8;var en=56320|en&1023}Wt[Pt++]=en&255;Wt[Pt++]=en>>8;return Pt}Utf32Decoder.prototype.end=function(){this.overflow.length=0};Pt.utf32=Utf32AutoCodec;Pt.ucs4="utf32";function Utf32AutoCodec(Wt,Pt){this.iconv=Pt}Utf32AutoCodec.prototype.encoder=Utf32AutoEncoder;Utf32AutoCodec.prototype.decoder=Utf32AutoDecoder;function Utf32AutoEncoder(Wt,Pt){Wt=Wt||{};if(Wt.addBOM===undefined)Wt.addBOM=true;this.encoder=Pt.iconv.getEncoder(Wt.defaultEncoding||"utf-32le",Wt)}Utf32AutoEncoder.prototype.write=function(Wt){return this.encoder.write(Wt)};Utf32AutoEncoder.prototype.end=function(){return this.encoder.end()};function Utf32AutoDecoder(Wt,Pt){this.decoder=null;this.initialBufs=[];this.initialBufsLen=0;this.options=Wt||{};this.iconv=Pt.iconv}Utf32AutoDecoder.prototype.write=function(Wt){if(!this.decoder){this.initialBufs.push(Wt);this.initialBufsLen+=Wt.length;if(this.initialBufsLen<32)return"";var Pt=detectEncoding(this.initialBufs,this.options.defaultEncoding);this.decoder=this.iconv.getDecoder(Pt,this.options);var en="";for(var tn=0;tn16)an++;if(en[3]!==0||en[2]>16)nn++;if(en[0]===0&&en[1]===0&&(en[2]!==0||en[3]!==0))In++;if((en[0]!==0||en[1]!==0)&&en[2]===0&&en[3]===0)rn++;en.length=0;tn++;if(tn>=100){break e}}}}if(In-an>rn-nn)return"utf-32be";if(In-an{"use strict";var tn=en(12803).Buffer;Pt.utf7=Utf7Codec;Pt.unicode11utf7="utf7";function Utf7Codec(Wt,Pt){this.iconv=Pt}Utf7Codec.prototype.encoder=Utf7Encoder;Utf7Codec.prototype.decoder=Utf7Decoder;Utf7Codec.prototype.bomAware=true;var nn=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function Utf7Encoder(Wt,Pt){this.iconv=Pt.iconv}Utf7Encoder.prototype.write=function(Wt){return tn.from(Wt.replace(nn,function(Wt){return"+"+(Wt==="+"?"":this.iconv.encode(Wt,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};Utf7Encoder.prototype.end=function(){};function Utf7Decoder(Wt,Pt){this.iconv=Pt.iconv;this.inBase64=false;this.base64Accum=""}var an=/[A-Za-z0-9\/+]/;var rn=[];for(var In=0;In<256;In++)rn[In]=an.test(String.fromCharCode(In));var sn="+".charCodeAt(0),on="-".charCodeAt(0),cn="&".charCodeAt(0);Utf7Decoder.prototype.write=function(Wt){var Pt="",en=0,nn=this.inBase64,an=this.base64Accum;for(var In=0;In0)Wt=this.iconv.decode(tn.from(this.base64Accum,"base64"),"utf16-be");this.inBase64=false;this.base64Accum="";return Wt};Pt.utf7imap=Utf7IMAPCodec;function Utf7IMAPCodec(Wt,Pt){this.iconv=Pt}Utf7IMAPCodec.prototype.encoder=Utf7IMAPEncoder;Utf7IMAPCodec.prototype.decoder=Utf7IMAPDecoder;Utf7IMAPCodec.prototype.bomAware=true;function Utf7IMAPEncoder(Wt,Pt){this.iconv=Pt.iconv;this.inBase64=false;this.base64Accum=tn.alloc(6);this.base64AccumIdx=0}Utf7IMAPEncoder.prototype.write=function(Wt){var Pt=this.inBase64,en=this.base64Accum,nn=this.base64AccumIdx,an=tn.alloc(Wt.length*5+10),rn=0;for(var In=0;In0){rn+=an.write(en.slice(0,nn).toString("base64").replace(/\//g,",").replace(/=+$/,""),rn);nn=0}an[rn++]=on;Pt=false}if(!Pt){an[rn++]=sn;if(sn===cn)an[rn++]=on}}else{if(!Pt){an[rn++]=cn;Pt=true}if(Pt){en[nn++]=sn>>8;en[nn++]=sn&255;if(nn==en.length){rn+=an.write(en.toString("base64").replace(/\//g,","),rn);nn=0}}}}this.inBase64=Pt;this.base64AccumIdx=nn;return an.slice(0,rn)};Utf7IMAPEncoder.prototype.end=function(){var Wt=tn.alloc(10),Pt=0;if(this.inBase64){if(this.base64AccumIdx>0){Pt+=Wt.write(this.base64Accum.slice(0,this.base64AccumIdx).toString("base64").replace(/\//g,",").replace(/=+$/,""),Pt);this.base64AccumIdx=0}Wt[Pt++]=on;this.inBase64=false}return Wt.slice(0,Pt)};function Utf7IMAPDecoder(Wt,Pt){this.iconv=Pt.iconv;this.inBase64=false;this.base64Accum=""}var dn=rn.slice();dn[",".charCodeAt(0)]=true;Utf7IMAPDecoder.prototype.write=function(Wt){var Pt="",en=0,nn=this.inBase64,an=this.base64Accum;for(var rn=0;rn0)Wt=this.iconv.decode(tn.from(this.base64Accum,"base64"),"utf16-be");this.inBase64=false;this.base64Accum="";return Wt}},74250:(Wt,Pt)=>{"use strict";var en="\ufeff";Pt.PrependBOM=PrependBOMWrapper;function PrependBOMWrapper(Wt,Pt){this.encoder=Wt;this.addBOM=true}PrependBOMWrapper.prototype.write=function(Wt){if(this.addBOM){Wt=en+Wt;this.addBOM=false}return this.encoder.write(Wt)};PrependBOMWrapper.prototype.end=function(){return this.encoder.end()};Pt.StripBOM=StripBOMWrapper;function StripBOMWrapper(Wt,Pt){this.decoder=Wt;this.pass=false;this.options=Pt||{}}StripBOMWrapper.prototype.write=function(Wt){var Pt=this.decoder.write(Wt);if(this.pass||!Pt)return Pt;if(Pt[0]===en){Pt=Pt.slice(1);if(typeof this.options.stripBOM==="function")this.options.stripBOM()}this.pass=true;return Pt};StripBOMWrapper.prototype.end=function(){return this.decoder.end()}},31748:(Wt,Pt,en)=>{"use strict";var tn=en(12803).Buffer;var nn=en(74250),an=Wt.exports;an.encodings=null;an.defaultCharUnicode="�";an.defaultCharSingleByte="?";an.encode=function encode(Wt,Pt,en){Wt=""+(Wt||"");var nn=an.getEncoder(Pt,en);var rn=nn.write(Wt);var In=nn.end();return In&&In.length>0?tn.concat([rn,In]):rn};an.decode=function decode(Wt,Pt,en){if(typeof Wt==="string"){if(!an.skipDecodeWarning){console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding");an.skipDecodeWarning=true}Wt=tn.from(""+(Wt||""),"binary")}var nn=an.getDecoder(Pt,en);var rn=nn.write(Wt);var In=nn.end();return In?rn+In:rn};an.encodingExists=function encodingExists(Wt){try{an.getCodec(Wt);return true}catch(Wt){return false}};an.toEncoding=an.encode;an.fromEncoding=an.decode;an._codecDataCache={};an.getCodec=function getCodec(Wt){if(!an.encodings)an.encodings=en(27585);var Pt=an._canonicalizeEncoding(Wt);var tn={};while(true){var nn=an._codecDataCache[Pt];if(nn)return nn;var rn=an.encodings[Pt];switch(typeof rn){case"string":Pt=rn;break;case"object":for(var In in rn)tn[In]=rn[In];if(!tn.encodingName)tn.encodingName=Pt;Pt=rn.type;break;case"function":if(!tn.encodingName)tn.encodingName=Pt;nn=new rn(tn,an);an._codecDataCache[tn.encodingName]=nn;return nn;default:throw new Error("Encoding not recognized: '"+Wt+"' (searched as: '"+Pt+"')")}}};an._canonicalizeEncoding=function(Wt){return(""+Wt).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};an.getEncoder=function getEncoder(Wt,Pt){var en=an.getCodec(Wt),tn=new en.encoder(Pt,en);if(en.bomAware&&Pt&&Pt.addBOM)tn=new nn.PrependBOM(tn,Pt);return tn};an.getDecoder=function getDecoder(Wt,Pt){var en=an.getCodec(Wt),tn=new en.decoder(Pt,en);if(en.bomAware&&!(Pt&&Pt.stripBOM===false))tn=new nn.StripBOM(tn,Pt);return tn};an.enableStreamingAPI=function enableStreamingAPI(Wt){if(an.supportsStreams)return;var Pt=en(42281)(Wt);an.IconvLiteEncoderStream=Pt.IconvLiteEncoderStream;an.IconvLiteDecoderStream=Pt.IconvLiteDecoderStream;an.encodeStream=function encodeStream(Wt,Pt){return new an.IconvLiteEncoderStream(an.getEncoder(Wt,Pt),Pt)};an.decodeStream=function decodeStream(Wt,Pt){return new an.IconvLiteDecoderStream(an.getDecoder(Wt,Pt),Pt)};an.supportsStreams=true};var rn;try{rn=en(2203)}catch(Wt){}if(rn&&rn.Transform){an.enableStreamingAPI(rn)}else{an.encodeStream=an.decodeStream=function(){throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.")}}if(false){}},42281:(Wt,Pt,en)=>{"use strict";var tn=en(12803).Buffer;Wt.exports=function(Wt){var Pt=Wt.Transform;function IconvLiteEncoderStream(Wt,en){this.conv=Wt;en=en||{};en.decodeStrings=false;Pt.call(this,en)}IconvLiteEncoderStream.prototype=Object.create(Pt.prototype,{constructor:{value:IconvLiteEncoderStream}});IconvLiteEncoderStream.prototype._transform=function(Wt,Pt,en){if(typeof Wt!="string")return en(new Error("Iconv encoding stream needs strings as its input."));try{var tn=this.conv.write(Wt);if(tn&&tn.length)this.push(tn);en()}catch(Wt){en(Wt)}};IconvLiteEncoderStream.prototype._flush=function(Wt){try{var Pt=this.conv.end();if(Pt&&Pt.length)this.push(Pt);Wt()}catch(Pt){Wt(Pt)}};IconvLiteEncoderStream.prototype.collect=function(Wt){var Pt=[];this.on("error",Wt);this.on("data",(function(Wt){Pt.push(Wt)}));this.on("end",(function(){Wt(null,tn.concat(Pt))}));return this};function IconvLiteDecoderStream(Wt,en){this.conv=Wt;en=en||{};en.encoding=this.encoding="utf8";Pt.call(this,en)}IconvLiteDecoderStream.prototype=Object.create(Pt.prototype,{constructor:{value:IconvLiteDecoderStream}});IconvLiteDecoderStream.prototype._transform=function(Wt,Pt,en){if(!tn.isBuffer(Wt)&&!(Wt instanceof Uint8Array))return en(new Error("Iconv decoding stream needs buffers as its input."));try{var nn=this.conv.write(Wt);if(nn&&nn.length)this.push(nn,this.encoding);en()}catch(Wt){en(Wt)}};IconvLiteDecoderStream.prototype._flush=function(Wt){try{var Pt=this.conv.end();if(Pt&&Pt.length)this.push(Pt,this.encoding);Wt()}catch(Pt){Wt(Pt)}};IconvLiteDecoderStream.prototype.collect=function(Wt){var Pt="";this.on("error",Wt);this.on("data",(function(Wt){Pt+=Wt}));this.on("end",(function(){Wt(null,Pt)}));return this};return{IconvLiteEncoderStream:IconvLiteEncoderStream,IconvLiteDecoderStream:IconvLiteDecoderStream}}},39598:(Wt,Pt,en)=>{try{var tn=en(39023);if(typeof tn.inherits!=="function")throw"";Wt.exports=tn.inherits}catch(Pt){Wt.exports=en(26589)}},26589:Wt=>{if(typeof Object.create==="function"){Wt.exports=function inherits(Wt,Pt){if(Pt){Wt.super_=Pt;Wt.prototype=Object.create(Pt.prototype,{constructor:{value:Wt,enumerable:false,writable:true,configurable:true}})}}}else{Wt.exports=function inherits(Wt,Pt){if(Pt){Wt.super_=Pt;var TempCtor=function(){};TempCtor.prototype=Pt.prototype;Wt.prototype=new TempCtor;Wt.prototype.constructor=Wt}}}},93132:Wt=>{var Pt=/^[a-z](?:[\.0-9_a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*-(?:[\x2D\.0-9_a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*$/;var isPotentialCustomElementName=function(Wt){return Pt.test(Wt)};Wt.exports=isPotentialCustomElementName},22157:Wt=>{ /** - * Registers a secret which will get masked from logs - * @param secret value of the secret + * [js-sha3]{@link https://github.com/emn178/js-sha3} + * + * @version 0.8.0 + * @author Chen, Yi-Cyuan [emn178@gmail.com] + * @copyright Chen, Yi-Cyuan 2015-2018 + * @license MIT */ -function setSecret(secret) { - (0, command_1.issueCommand)('add-mask', {}, secret); -} -exports.setSecret = setSecret; -/** - * Prepends inputPath to the PATH (for this action and future actions) - * @param inputPath +(function(){"use strict";var Pt="input is invalid type";var en="finalize already called";var tn=typeof window==="object";var nn=tn?window:{};if(nn.JS_SHA3_NO_WINDOW){tn=false}var an=!tn&&typeof self==="object";var rn=!nn.JS_SHA3_NO_NODE_JS&&typeof process==="object"&&process.versions&&process.versions.node;if(rn){nn=global}else if(an){nn=self}var In=!nn.JS_SHA3_NO_COMMON_JS&&"object"==="object"&&Wt.exports;var sn=typeof define==="function"&&define.amd;var on=!nn.JS_SHA3_NO_ARRAY_BUFFER&&typeof ArrayBuffer!=="undefined";var cn="0123456789abcdef".split("");var dn=[31,7936,2031616,520093696];var un=[4,1024,262144,67108864];var pn=[1,256,65536,16777216];var mn=[6,1536,393216,100663296];var bn=[0,8,16,24];var Gn=[1,0,32898,0,32906,2147483648,2147516416,2147483648,32907,0,2147483649,0,2147516545,2147483648,32777,2147483648,138,0,136,0,2147516425,0,2147483658,0,2147516555,0,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,2147483648,32778,0,2147483658,2147483648,2147516545,2147483648,32896,2147483648,2147483649,0,2147516424,2147483648];var hn=[224,256,384,512];var Zn=[128,256];var An=["hex","buffer","arrayBuffer","array","digest"];var Wn={128:168,256:136};if(nn.JS_SHA3_NO_NODE_JS||!Array.isArray){Array.isArray=function(Wt){return Object.prototype.toString.call(Wt)==="[object Array]"}}if(on&&(nn.JS_SHA3_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)){ArrayBuffer.isView=function(Wt){return typeof Wt==="object"&&Wt.buffer&&Wt.buffer.constructor===ArrayBuffer}}var createOutputMethod=function(Wt,Pt,en){return function(tn){return new Keccak(Wt,Pt,Wt).update(tn)[en]()}};var createShakeOutputMethod=function(Wt,Pt,en){return function(tn,nn){return new Keccak(Wt,Pt,nn).update(tn)[en]()}};var createCshakeOutputMethod=function(Wt,Pt,en){return function(Pt,tn,nn,an){return gn["cshake"+Wt].update(Pt,tn,nn,an)[en]()}};var createKmacOutputMethod=function(Wt,Pt,en){return function(Pt,tn,nn,an){return gn["kmac"+Wt].update(Pt,tn,nn,an)[en]()}};var createOutputMethods=function(Wt,Pt,en,tn){for(var nn=0;nn>5;this.byteCount=this.blockCount<<2;this.outputBlocks=en>>5;this.extraBytes=(en&31)>>3;for(var tn=0;tn<50;++tn){this.s[tn]=0}}Keccak.prototype.update=function(Wt){if(this.finalized){throw new Error(en)}var tn,nn=typeof Wt;if(nn!=="string"){if(nn==="object"){if(Wt===null){throw new Error(Pt)}else if(on&&Wt.constructor===ArrayBuffer){Wt=new Uint8Array(Wt)}else if(!Array.isArray(Wt)){if(!on||!ArrayBuffer.isView(Wt)){throw new Error(Pt)}}}else{throw new Error(Pt)}tn=true}var an=this.blocks,rn=this.byteCount,In=Wt.length,sn=this.blockCount,cn=0,dn=this.s,un,pn;while(cn>2]|=Wt[cn]<>2]|=pn<>2]|=(192|pn>>6)<>2]|=(128|pn&63)<=57344){an[un>>2]|=(224|pn>>12)<>2]|=(128|pn>>6&63)<>2]|=(128|pn&63)<>2]|=(240|pn>>18)<>2]|=(128|pn>>12&63)<>2]|=(128|pn>>6&63)<>2]|=(128|pn&63)<=rn){this.start=un-rn;this.block=an[sn];for(un=0;un>8;en=Wt&255;while(en>0){nn.unshift(en);Wt=Wt>>8;en=Wt&255;++tn}if(Pt){nn.push(tn)}else{nn.unshift(tn)}this.update(nn);return nn.length};Keccak.prototype.encodeString=function(Wt){var en,tn=typeof Wt;if(tn!=="string"){if(tn==="object"){if(Wt===null){throw new Error(Pt)}else if(on&&Wt.constructor===ArrayBuffer){Wt=new Uint8Array(Wt)}else if(!Array.isArray(Wt)){if(!on||!ArrayBuffer.isView(Wt)){throw new Error(Pt)}}}else{throw new Error(Pt)}en=true}var nn=0,an=Wt.length;if(en){nn=an}else{for(var rn=0;rn=57344){nn+=3}else{In=65536+((In&1023)<<10|Wt.charCodeAt(++rn)&1023);nn+=4}}}nn+=this.encode(nn*8);this.update(Wt);return nn};Keccak.prototype.bytepad=function(Wt,Pt){var en=this.encode(Pt);for(var tn=0;tn>2]|=this.padding[Pt&3];if(this.lastByteIndex===this.byteCount){Wt[0]=Wt[en];for(Pt=1;Pt>4&15]+cn[In&15]+cn[In>>12&15]+cn[In>>8&15]+cn[In>>20&15]+cn[In>>16&15]+cn[In>>28&15]+cn[In>>24&15]}if(an%Wt===0){f(Pt);nn=0}}if(tn){In=Pt[nn];rn+=cn[In>>4&15]+cn[In&15];if(tn>1){rn+=cn[In>>12&15]+cn[In>>8&15]}if(tn>2){rn+=cn[In>>20&15]+cn[In>>16&15]}}return rn};Keccak.prototype.arrayBuffer=function(){this.finalize();var Wt=this.blockCount,Pt=this.s,en=this.outputBlocks,tn=this.extraBytes,nn=0,an=0;var rn=this.outputBits>>3;var In;if(tn){In=new ArrayBuffer(en+1<<2)}else{In=new ArrayBuffer(rn)}var sn=new Uint32Array(In);while(an>8&255;rn[In+2]=sn>>16&255;rn[In+3]=sn>>24&255}if(an%Wt===0){f(Pt)}}if(tn){In=an<<2;sn=Pt[nn];rn[In]=sn&255;if(tn>1){rn[In+1]=sn>>8&255}if(tn>2){rn[In+2]=sn>>16&255}}return rn};function Kmac(Wt,Pt,en){Keccak.call(this,Wt,Pt,en)}Kmac.prototype=new Keccak;Kmac.prototype.finalize=function(){this.encode(this.outputBits,true);return Keccak.prototype.finalize.call(this)};var f=function(Wt){var Pt,en,tn,nn,an,rn,In,sn,on,cn,dn,un,pn,mn,bn,hn,Zn,An,Wn,Nn,gn,yn,vn,Yn,En,Vn,Rn,wn,Fn,Qn,fn,Hn,Cn,Xn,kn,Jn,Ln,Bn,xn,On,Tn,Un,Mn,zn,Sn,jn,Dn,_n,Kn,Pn,qn,$n,el,tl,nl,ll,al,rl,Il,sl,ol,cl,il;for(tn=0;tn<48;tn+=2){nn=Wt[0]^Wt[10]^Wt[20]^Wt[30]^Wt[40];an=Wt[1]^Wt[11]^Wt[21]^Wt[31]^Wt[41];rn=Wt[2]^Wt[12]^Wt[22]^Wt[32]^Wt[42];In=Wt[3]^Wt[13]^Wt[23]^Wt[33]^Wt[43];sn=Wt[4]^Wt[14]^Wt[24]^Wt[34]^Wt[44];on=Wt[5]^Wt[15]^Wt[25]^Wt[35]^Wt[45];cn=Wt[6]^Wt[16]^Wt[26]^Wt[36]^Wt[46];dn=Wt[7]^Wt[17]^Wt[27]^Wt[37]^Wt[47];un=Wt[8]^Wt[18]^Wt[28]^Wt[38]^Wt[48];pn=Wt[9]^Wt[19]^Wt[29]^Wt[39]^Wt[49];Pt=un^(rn<<1|In>>>31);en=pn^(In<<1|rn>>>31);Wt[0]^=Pt;Wt[1]^=en;Wt[10]^=Pt;Wt[11]^=en;Wt[20]^=Pt;Wt[21]^=en;Wt[30]^=Pt;Wt[31]^=en;Wt[40]^=Pt;Wt[41]^=en;Pt=nn^(sn<<1|on>>>31);en=an^(on<<1|sn>>>31);Wt[2]^=Pt;Wt[3]^=en;Wt[12]^=Pt;Wt[13]^=en;Wt[22]^=Pt;Wt[23]^=en;Wt[32]^=Pt;Wt[33]^=en;Wt[42]^=Pt;Wt[43]^=en;Pt=rn^(cn<<1|dn>>>31);en=In^(dn<<1|cn>>>31);Wt[4]^=Pt;Wt[5]^=en;Wt[14]^=Pt;Wt[15]^=en;Wt[24]^=Pt;Wt[25]^=en;Wt[34]^=Pt;Wt[35]^=en;Wt[44]^=Pt;Wt[45]^=en;Pt=sn^(un<<1|pn>>>31);en=on^(pn<<1|un>>>31);Wt[6]^=Pt;Wt[7]^=en;Wt[16]^=Pt;Wt[17]^=en;Wt[26]^=Pt;Wt[27]^=en;Wt[36]^=Pt;Wt[37]^=en;Wt[46]^=Pt;Wt[47]^=en;Pt=cn^(nn<<1|an>>>31);en=dn^(an<<1|nn>>>31);Wt[8]^=Pt;Wt[9]^=en;Wt[18]^=Pt;Wt[19]^=en;Wt[28]^=Pt;Wt[29]^=en;Wt[38]^=Pt;Wt[39]^=en;Wt[48]^=Pt;Wt[49]^=en;mn=Wt[0];bn=Wt[1];jn=Wt[11]<<4|Wt[10]>>>28;Dn=Wt[10]<<4|Wt[11]>>>28;wn=Wt[20]<<3|Wt[21]>>>29;Fn=Wt[21]<<3|Wt[20]>>>29;sl=Wt[31]<<9|Wt[30]>>>23;ol=Wt[30]<<9|Wt[31]>>>23;Un=Wt[40]<<18|Wt[41]>>>14;Mn=Wt[41]<<18|Wt[40]>>>14;Xn=Wt[2]<<1|Wt[3]>>>31;kn=Wt[3]<<1|Wt[2]>>>31;hn=Wt[13]<<12|Wt[12]>>>20;Zn=Wt[12]<<12|Wt[13]>>>20;_n=Wt[22]<<10|Wt[23]>>>22;Kn=Wt[23]<<10|Wt[22]>>>22;Qn=Wt[33]<<13|Wt[32]>>>19;fn=Wt[32]<<13|Wt[33]>>>19;cl=Wt[42]<<2|Wt[43]>>>30;il=Wt[43]<<2|Wt[42]>>>30;tl=Wt[5]<<30|Wt[4]>>>2;nl=Wt[4]<<30|Wt[5]>>>2;Jn=Wt[14]<<6|Wt[15]>>>26;Ln=Wt[15]<<6|Wt[14]>>>26;An=Wt[25]<<11|Wt[24]>>>21;Wn=Wt[24]<<11|Wt[25]>>>21;Pn=Wt[34]<<15|Wt[35]>>>17;qn=Wt[35]<<15|Wt[34]>>>17;Hn=Wt[45]<<29|Wt[44]>>>3;Cn=Wt[44]<<29|Wt[45]>>>3;Yn=Wt[6]<<28|Wt[7]>>>4;En=Wt[7]<<28|Wt[6]>>>4;ll=Wt[17]<<23|Wt[16]>>>9;al=Wt[16]<<23|Wt[17]>>>9;Bn=Wt[26]<<25|Wt[27]>>>7;xn=Wt[27]<<25|Wt[26]>>>7;Nn=Wt[36]<<21|Wt[37]>>>11;gn=Wt[37]<<21|Wt[36]>>>11;$n=Wt[47]<<24|Wt[46]>>>8;el=Wt[46]<<24|Wt[47]>>>8;zn=Wt[8]<<27|Wt[9]>>>5;Sn=Wt[9]<<27|Wt[8]>>>5;Vn=Wt[18]<<20|Wt[19]>>>12;Rn=Wt[19]<<20|Wt[18]>>>12;rl=Wt[29]<<7|Wt[28]>>>25;Il=Wt[28]<<7|Wt[29]>>>25;On=Wt[38]<<8|Wt[39]>>>24;Tn=Wt[39]<<8|Wt[38]>>>24;yn=Wt[48]<<14|Wt[49]>>>18;vn=Wt[49]<<14|Wt[48]>>>18;Wt[0]=mn^~hn&An;Wt[1]=bn^~Zn&Wn;Wt[10]=Yn^~Vn&wn;Wt[11]=En^~Rn&Fn;Wt[20]=Xn^~Jn&Bn;Wt[21]=kn^~Ln&xn;Wt[30]=zn^~jn&_n;Wt[31]=Sn^~Dn&Kn;Wt[40]=tl^~ll&rl;Wt[41]=nl^~al&Il;Wt[2]=hn^~An&Nn;Wt[3]=Zn^~Wn&gn;Wt[12]=Vn^~wn&Qn;Wt[13]=Rn^~Fn&fn;Wt[22]=Jn^~Bn&On;Wt[23]=Ln^~xn&Tn;Wt[32]=jn^~_n&Pn;Wt[33]=Dn^~Kn&qn;Wt[42]=ll^~rl&sl;Wt[43]=al^~Il&ol;Wt[4]=An^~Nn&yn;Wt[5]=Wn^~gn&vn;Wt[14]=wn^~Qn&Hn;Wt[15]=Fn^~fn&Cn;Wt[24]=Bn^~On&Un;Wt[25]=xn^~Tn&Mn;Wt[34]=_n^~Pn&$n;Wt[35]=Kn^~qn⪙Wt[44]=rl^~sl&cl;Wt[45]=Il^~ol&il;Wt[6]=Nn^~yn&mn;Wt[7]=gn^~vn&bn;Wt[16]=Qn^~Hn&Yn;Wt[17]=fn^~Cn&En;Wt[26]=On^~Un&Xn;Wt[27]=Tn^~Mn&kn;Wt[36]=Pn^~$n&zn;Wt[37]=qn^~el&Sn;Wt[46]=sl^~cl&tl;Wt[47]=ol^~il&nl;Wt[8]=yn^~mn&hn;Wt[9]=vn^~bn&Zn;Wt[18]=Hn^~Yn&Vn;Wt[19]=Cn^~En&Rn;Wt[28]=Un^~Xn&Jn;Wt[29]=Mn^~kn&Ln;Wt[38]=$n^~zn&jn;Wt[39]=el^~Sn&Dn;Wt[48]=cl^~tl≪Wt[49]=il^~nl&al;Wt[0]^=Gn[tn];Wt[1]^=Gn[tn+1]}};if(In){Wt.exports=gn}else{for(vn=0;vn{"use strict";var tn;const nn=en(16928);const an=en(79896).promises;const rn=en(69154);const In=en(96684);const sn=en(45528);const on=en(78012);const cn=en(86476);const{URL:dn}=en(78012);const un=en(59344);const pn=en(87094);const mn=en(68224);const{createWindow:bn}=en(30398);const{parseIntoDocument:Gn}=en(13430);const{fragmentSerialization:hn}=en(49446);const Zn=en(79414);const An=en(13858);class CookieJar extends In.CookieJar{constructor(Wt,Pt){super(Wt,{looseMode:true,...Pt})}}const Wn=Symbol("window");let Nn=null;class JSDOM{constructor(Wt="",Pt={}){const en=new un(Pt.contentType===undefined?"text/html":Pt.contentType);const{html:tn,encoding:nn}=normalizeHTML(Wt,en);Pt=transformOptions(Pt,nn,en);this[Wn]=bn(Pt.windowOptions);const an=pn.implForWrapper(this[Wn]._document);Pt.beforeParse(this[Wn]._globalProxy);Gn(tn,an);an.close()}get window(){return this[Wn]._globalProxy}get virtualConsole(){return this[Wn]._virtualConsole}get cookieJar(){return pn.implForWrapper(this[Wn]._document)._cookieJar}serialize(){return hn(pn.implForWrapper(this[Wn]._document),{requireWellFormed:false})}nodeLocation(Wt){if(!pn.implForWrapper(this[Wn]._document)._parseOptions.sourceCodeLocationInfo){throw new Error("Location information was not saved for this jsdom. Use includeNodeLocations during creation.")}return pn.implForWrapper(Wt).sourceCodeLocation}getInternalVMContext(){if(!rn.isContext(this[Wn])){throw new TypeError("This jsdom was not configured to allow script running. "+"Use the runScripts option during creation.")}return this[Wn]}reconfigure(Wt){if("windowTop"in Wt){this[Wn]._top=Wt.windowTop}if("url"in Wt){const Pt=pn.implForWrapper(this[Wn]._document);const en=on.parseURL(Wt.url);if(en===null){throw new TypeError(`Could not parse "${Wt.url}" as a URL`)}Pt._URL=en;Pt._origin=on.serializeURLOrigin(Pt._URL);this[Wn]._sessionHistory.currentEntry.url=en}}static fragment(Wt=""){if(!Nn){Nn=(new JSDOM).window.document}const Pt=Nn.createElement("template");Pt.innerHTML=Wt;return Pt.content}static fromURL(Wt,Pt={}){return Promise.resolve().then((()=>{const en=new dn(Wt);const tn=en.hash;en.hash="";Wt=en.href;Pt=normalizeFromURLOptions(Pt);const nn=resourcesToResourceLoader(Pt.resources);const an=nn.constructor===An?new Zn:nn;const rn=an.fetch(Wt,{accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",cookieJar:Pt.cookieJar,referrer:Pt.referrer});return rn.then((Wt=>{const en=rn.response;Pt=Object.assign(Pt,{url:rn.href+tn,contentType:en.headers["content-type"],referrer:rn.getHeader("referer")??undefined});return new JSDOM(Wt,Pt)}))}))}static async fromFile(Wt,Pt={}){Pt=normalizeFromFileOptions(Wt,Pt);const en=await an.readFile(Wt);return new JSDOM(en,Pt)}}function normalizeFromURLOptions(Wt){if(Wt.url!==undefined){throw new TypeError("Cannot supply a url option when using fromURL")}if(Wt.contentType!==undefined){throw new TypeError("Cannot supply a contentType option when using fromURL")}const Pt={...Wt};if(Wt.referrer!==undefined){Pt.referrer=new dn(Wt.referrer).href}if(Wt.cookieJar===undefined){Pt.cookieJar=new CookieJar}return Pt}function normalizeFromFileOptions(Wt,Pt){const en={...Pt};if(en.contentType===undefined){const Pt=nn.extname(Wt);if(Pt===".xhtml"||Pt===".xht"||Pt===".xml"){en.contentType="application/xhtml+xml"}}if(en.url===undefined){en.url=new dn("file:"+nn.resolve(Wt))}return en}function transformOptions(Wt,Pt,en){const tn={windowOptions:{url:"about:blank",referrer:"",contentType:"text/html",parsingMode:"html",parseOptions:{sourceCodeLocationInfo:false,scriptingEnabled:false},runScripts:undefined,encoding:Pt,pretendToBeVisual:false,storageQuota:5e6,resourceLoader:undefined,virtualConsole:undefined,cookieJar:undefined},beforeParse(){}};if(!en.isHTML()&&!en.isXML()){throw new RangeError(`The given content type of "${Wt.contentType}" was not a HTML or XML content type`)}tn.windowOptions.contentType=en.essence;tn.windowOptions.parsingMode=en.isHTML()?"html":"xml";if(Wt.url!==undefined){tn.windowOptions.url=new dn(Wt.url).href}if(Wt.referrer!==undefined){tn.windowOptions.referrer=new dn(Wt.referrer).href}if(Wt.includeNodeLocations){if(tn.windowOptions.parsingMode==="xml"){throw new TypeError("Cannot set includeNodeLocations to true with an XML content type")}tn.windowOptions.parseOptions={sourceCodeLocationInfo:true}}tn.windowOptions.cookieJar=Wt.cookieJar===undefined?new CookieJar:Wt.cookieJar;tn.windowOptions.virtualConsole=Wt.virtualConsole===undefined?(new mn).sendTo(console):Wt.virtualConsole;if(!(tn.windowOptions.virtualConsole instanceof mn)){throw new TypeError("virtualConsole must be an instance of VirtualConsole")}tn.windowOptions.resourceLoader=resourcesToResourceLoader(Wt.resources);if(Wt.runScripts!==undefined){tn.windowOptions.runScripts=String(Wt.runScripts);if(tn.windowOptions.runScripts==="dangerously"){tn.windowOptions.parseOptions.scriptingEnabled=true}else if(tn.windowOptions.runScripts!=="outside-only"){throw new RangeError(`runScripts must be undefined, "dangerously", or "outside-only"`)}}if(Wt.beforeParse!==undefined){tn.beforeParse=Wt.beforeParse}if(Wt.pretendToBeVisual!==undefined){tn.windowOptions.pretendToBeVisual=Boolean(Wt.pretendToBeVisual)}if(Wt.storageQuota!==undefined){tn.windowOptions.storageQuota=Number(Wt.storageQuota)}return tn}function normalizeHTML(Wt,Pt){let en="UTF-8";if(ArrayBuffer.isView(Wt)){Wt=Buffer.from(Wt.buffer,Wt.byteOffset,Wt.byteLength)}else if(Wt instanceof ArrayBuffer){Wt=Buffer.from(Wt)}if(Buffer.isBuffer(Wt)){en=sn(Wt,{defaultEncoding:Pt.isXML()?"UTF-8":"windows-1252",transportLayerEncodingLabel:Pt.parameters.get("charset")});Wt=cn.decode(Wt,en)}else{Wt=String(Wt)}return{html:Wt,encoding:en}}function resourcesToResourceLoader(Wt){switch(Wt){case undefined:{return new An}case"usable":{return new Zn}default:{if(!(Wt instanceof Zn)){throw new TypeError("resources must be an instance of ResourceLoader")}return Wt}}}Pt.un=JSDOM;tn=mn;tn=CookieJar;tn=Zn;tn=In},30398:(Wt,Pt,en)=>{"use strict";const tn=en(69154);const nn=en(37125);const{CSSStyleDeclaration:an}=en(99712);const rn=en(8172);const{installInterfaces:In}=en(96533);const{define:sn,mixin:on}=en(35702);const cn=en(41423);const dn=en(29122);const un=en(69117);const pn=en(25295);const mn=en(98574);const bn=en(54414);const{fireAPageTransitionEvent:Gn}=en(24639);const hn=en(59397);const Zn=en(32065);const An=en(16694);const Wn=en(87094);const Nn=en(14764).implementation;const gn=en(21183);const yn=en(33111);const vn=en(18516);const Yn=en(60618);const En=en(7569);const Vn=en(42235);const Rn=en(19346);const wn=en(90778);const Fn=en(1417);const Qn=en(12323);const{getCurrentEventHandlerValue:fn}=en(15676);const{fireAnEvent:Hn}=en(83350);const Cn=en(1072);const{getDeclarationForElement:Xn,getResolvedValue:kn,propertiesWithResolvedValueImplemented:Jn,SHADOW_DOM_PSEUDO_REGEXP:Ln}=en(86024);const Bn=en(46193);const xn=en(75282);const On=en(27206).implementation;const Tn=en(64473).implementation;const Un=new Set(["abort","autocomplete","autocompleteerror","blur","cancel","canplay","canplaythrough","change","click","close","contextmenu","cuechange","dblclick","drag","dragend","dragenter","dragleave","dragover","dragstart","drop","durationchange","emptied","ended","focus","input","invalid","keydown","keypress","keyup","load","loadeddata","loadedmetadata","loadstart","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","wheel","pause","play","playing","progress","ratechange","reset","resize","scroll","securitypolicyviolation","seeked","seeking","select","sort","stalled","submit","suspend","timeupdate","toggle","volumechange","waiting","afterprint","beforeprint","hashchange","languagechange","message","messageerror","offline","online","pagehide","pageshow","popstate","rejectionhandled","storage","unhandledrejection","unload"]);Pt.createWindow=function(Wt){return new Window(Wt)};const Mn=Object.entries(xn).filter((([Wt])=>Wt in global));function setupWindow(Wt,{runScripts:Pt}){if(Pt==="outside-only"||Pt==="dangerously"){contextifyWindow(Wt);for(const[Pt,en]of Mn){const nn={...en,value:tn.runInContext(Pt,Wt)};Object.defineProperty(Wt,Pt,nn)}}else{for(const[Pt,en]of Mn){const tn={...en,value:global[Pt]};Object.defineProperty(Wt,Pt,tn)}}In(Wt,["Window"]);const en=Wt.EventTarget;const nn=function Window(){throw new TypeError("Illegal constructor")};Object.setPrototypeOf(nn,en);Object.defineProperty(Wt,"Window",{configurable:true,writable:true,value:nn});const an=Object.create(en.prototype);Object.defineProperties(an,{constructor:{value:nn,writable:true,configurable:true},[Symbol.toStringTag]:{value:"Window",configurable:true}});nn.prototype=an;Object.setPrototypeOf(Wt,an);dn.setup(Wt,Wt);on(Wt,Tn.prototype);on(Wt,On.prototype);Wt._initGlobalEvents();Object.defineProperty(Wt,"onbeforeunload",{configurable:true,enumerable:true,get(){return Wn.tryWrapperForImpl(fn(this,"beforeunload"))},set(Pt){if(!Wn.isObject(Pt)){Pt=null}else{Pt=mn.convert(Wt,Pt,{context:"Failed to set the 'onbeforeunload' property on 'Window': The provided value"})}this._setEventHandlerFor("beforeunload",Pt)}});Object.defineProperty(Wt,"onerror",{configurable:true,enumerable:true,get(){return Wn.tryWrapperForImpl(fn(this,"error"))},set(Pt){if(!Wn.isObject(Pt)){Pt=null}else{Pt=bn.convert(Wt,Pt,{context:"Failed to set the 'onerror' property on 'Window': The provided value"})}this._setEventHandlerFor("error",Pt)}});for(const Pt of Un){Object.defineProperty(Wt,`on${Pt}`,{configurable:true,enumerable:true,get(){return Wn.tryWrapperForImpl(fn(this,Pt))},set(en){if(!Wn.isObject(en)){en=null}else{en=un.convert(Wt,en,{context:`Failed to set the 'on${Pt}' property on 'Window': The provided value`})}this._setEventHandlerFor(Pt,en)}})}Wt._globalObject=Wt}function makeReplaceablePropertyDescriptor(Wt,Pt){const en={set(en){Object.defineProperty(Pt,Wt,{configurable:true,enumerable:true,writable:true,value:en})}};Object.defineProperty(en.set,"name",{value:`set ${Wt}`});return en}function Window(Wt){setupWindow(this,{runScripts:Wt.runScripts});const Pt=performance.now();const en=this;this._resourceLoader=Wt.resourceLoader;this._globalProxy=this;Object.defineProperty(Wn.implForWrapper(this),Wn.wrapperSymbol,{get:()=>this._globalProxy});this._document=yn.createWrapper(en,{parsingMode:Wt.parsingMode,contentType:Wt.contentType,encoding:Wt.encoding,cookieJar:Wt.cookieJar,url:Wt.url,lastModified:Wt.lastModified,referrer:Wt.referrer,parseOptions:Wt.parseOptions,defaultView:this._globalProxy,global:this,parentOrigin:Wt.parentOrigin},{alwaysUseDocumentClass:true});if(tn.isContext(en)){const Pn=Wn.implForWrapper(en._document);Pn._defaultView=en._globalProxy=tn.runInContext("this",en)}const In=Wn.implForWrapper(this._document)._origin;this._origin=In;this._sessionHistory=new Cn({document:Wn.implForWrapper(this._document),url:Wn.implForWrapper(this._document)._URL,stateObject:null},this);this._virtualConsole=Wt.virtualConsole;this._runScripts=Wt.runScripts;this._parent=this._top=this._globalProxy;this._frameElement=null;this._length=0;this._currentEvent=undefined;this._pretendToBeVisual=Wt.pretendToBeVisual;this._storageQuota=Wt.storageQuota;if(Wt.commonForOrigin&&Wt.commonForOrigin[In]){this._commonForOrigin=Wt.commonForOrigin}else{this._commonForOrigin={[In]:{localStorageArea:new Map,sessionStorageArea:new Map,windowsInSameOrigin:[this]}}}this._currentOriginData=this._commonForOrigin[In];this._localStorage=wn.create(en,[],{associatedWindow:this,storageArea:this._currentOriginData.localStorageArea,type:"localStorage",url:this._document.documentURI,storageQuota:this._storageQuota});this._sessionStorage=wn.create(en,[],{associatedWindow:this,storageArea:this._currentOriginData.sessionStorageArea,type:"sessionStorage",url:this._document.documentURI,storageQuota:this._storageQuota});this._selection=Fn.createImpl(en);this.getSelection=function(){return en._selection};const on=gn.create(en);const dn=gn.create(en);const un=gn.create(en);const mn=gn.create(en);const bn=gn.create(en);const fn=gn.create(en);const xn=vn.create(en);const On=Yn.create(en,[],{userAgent:this._resourceLoader._userAgent});const Tn=En.create(en,[],{timeOrigin:performance.timeOrigin+Pt,nowAtTimeOrigin:Pt});const Un=Vn.create(en);const Mn=Rn.create(en);this._customElementRegistry=Bn.create(en);sn(this,{get length(){return en._length},get window(){return en._globalProxy},get frameElement(){return Wn.wrapperForImpl(en._frameElement)},get frames(){return en._globalProxy},get self(){return en._globalProxy},get parent(){return en._parent},get top(){return en._top},get document(){return en._document},get external(){return xn},get location(){return Wn.wrapperForImpl(Wn.implForWrapper(en._document)._location)},set location(Wt){Reflect.set(en.location,"href",Wt)},get history(){return Wn.wrapperForImpl(Wn.implForWrapper(en._document)._history)},get navigator(){return On},get locationbar(){return on},get menubar(){return dn},get personalbar(){return un},get scrollbars(){return mn},get statusbar(){return bn},get toolbar(){return fn},get performance(){return Tn},get screen(){return Un},get crypto(){return Mn},get origin(){return en._origin},get localStorage(){if(Wn.implForWrapper(this._document)._origin==="null"){throw An.create(en,["localStorage is not available for opaque origins","SecurityError"])}return this._localStorage},get sessionStorage(){if(Wn.implForWrapper(this._document)._origin==="null"){throw An.create(en,["sessionStorage is not available for opaque origins","SecurityError"])}return this._sessionStorage},get customElements(){return this._customElementRegistry},get event(){return en._currentEvent?Wn.wrapperForImpl(en._currentEvent):undefined}});Object.defineProperties(this,{self:makeReplaceablePropertyDescriptor("self",en),locationbar:makeReplaceablePropertyDescriptor("locationbar",en),menubar:makeReplaceablePropertyDescriptor("menubar",en),personalbar:makeReplaceablePropertyDescriptor("personalbar",en),scrollbars:makeReplaceablePropertyDescriptor("scrollbars",en),statusbar:makeReplaceablePropertyDescriptor("statusbar",en),toolbar:makeReplaceablePropertyDescriptor("toolbar",en),frames:makeReplaceablePropertyDescriptor("frames",en),parent:makeReplaceablePropertyDescriptor("parent",en),external:makeReplaceablePropertyDescriptor("external",en),length:makeReplaceablePropertyDescriptor("length",en),screen:makeReplaceablePropertyDescriptor("screen",en),origin:makeReplaceablePropertyDescriptor("origin",en),event:makeReplaceablePropertyDescriptor("event",en),window:{configurable:false},document:{configurable:false},location:{configurable:false},top:{configurable:false}});hn.initializeWindow(this,this._globalProxy);const zn=new Map;let Sn=0;this.setTimeout=function(Wt,Pt=0,...tn){if(typeof Wt!=="function"){Wt=nn.DOMString(Wt)}Pt=nn.long(Pt);return timerInitializationSteps(Wt,Pt,tn,{methodContext:en,repeat:false})};this.setInterval=function(Wt,Pt=0,...tn){if(typeof Wt!=="function"){Wt=nn.DOMString(Wt)}Pt=nn.long(Pt);return timerInitializationSteps(Wt,Pt,tn,{methodContext:en,repeat:true})};this.clearTimeout=function(Wt=0){Wt=nn.long(Wt);const Pt=zn.get(Wt);if(Pt){clearTimeout(Pt);zn.delete(Wt)}};this.clearInterval=function(Wt=0){Wt=nn.long(Wt);const Pt=zn.get(Wt);if(Pt){clearTimeout(Pt);zn.delete(Wt)}};function timerInitializationSteps(Wt,Pt,nn,{methodContext:an,repeat:rn,previousHandle:In}){if(!an._document){return 0}const sn=an._globalProxy;const on=In!==undefined?In:++Sn;function task(){if(!zn.has(on)){return}try{if(typeof Wt==="function"){Wt.apply(sn,nn)}else if(en._runScripts==="dangerously"){tn.runInContext(Wt,en,{filename:en.location.href,displayErrors:false})}}catch(Wt){Qn(en,Wt,en.location.href)}if(zn.has(on)){if(rn){timerInitializationSteps(Wt,Pt,nn,{methodContext:an,repeat:true,previousHandle:on})}else{zn.delete(on)}}}if(Pt<0){Pt=0}const cn=setTimeout(task,Pt);zn.set(on,cn);return on}this.queueMicrotask=function(Wt){Wt=pn.convert(this,Wt);queueMicrotask((()=>{try{Wt()}catch(Wt){Qn(en,Wt,en.location.href)}}))};let jn=0;const Dn=new Map;let _n=null;let Kn=0;if(this._pretendToBeVisual){this.requestAnimationFrame=function(Wt){Wt=pn.convert(this,Wt);const en=++jn;Dn.set(en,Wt);++Kn;if(Kn===1){_n=setInterval((()=>{runAnimationFrameCallbacks(performance.now()-Pt)}),1e3/60)}return en};this.cancelAnimationFrame=function(Wt){Wt=nn["unsigned long"](Wt);removeAnimationFrameCallback(Wt)};function runAnimationFrameCallbacks(Wt){const Pt=[...Dn.keys()];for(const tn of Pt){if(Dn.has(tn)){const Pt=Dn.get(tn);removeAnimationFrameCallback(tn);try{Pt(Wt)}catch(Wt){Qn(en,Wt,en.location.href)}}}}function removeAnimationFrameCallback(Wt){if(Dn.has(Wt)){--Kn;if(Kn===0){clearInterval(_n)}}Dn.delete(Wt)}}function stopAllTimers(){for(const Wt of zn.values()){clearTimeout(Wt)}zn.clear();clearInterval(_n)}function Option(Wt,Pt,tn,an){if(Wt===undefined){Wt=""}Wt=nn.DOMString(Wt);if(Pt!==undefined){Pt=nn.DOMString(Pt)}tn=nn.boolean(tn);an=nn.boolean(an);const rn=en._document.createElement("option");const In=Wn.implForWrapper(rn);if(Wt!==""){In.text=Wt}if(Pt!==undefined){In.setAttributeNS(null,"value",Pt)}if(tn){In.setAttributeNS(null,"selected","")}In._selectedness=an;return rn}Object.defineProperty(Option,"prototype",{value:this.HTMLOptionElement.prototype,configurable:false,enumerable:false,writable:false});Object.defineProperty(en,"Option",{value:Option,configurable:true,enumerable:false,writable:true});function Image(...Wt){const Pt=en._document.createElement("img");const tn=Wn.implForWrapper(Pt);if(Wt.length>0){tn.setAttributeNS(null,"width",String(Wt[0]))}if(Wt.length>1){tn.setAttributeNS(null,"height",String(Wt[1]))}return Pt}Object.defineProperty(Image,"prototype",{value:this.HTMLImageElement.prototype,configurable:false,enumerable:false,writable:false});Object.defineProperty(en,"Image",{value:Image,configurable:true,enumerable:false,writable:true});function Audio(Wt){const Pt=en._document.createElement("audio");const tn=Wn.implForWrapper(Pt);tn.setAttributeNS(null,"preload","auto");if(Wt!==undefined){tn.setAttributeNS(null,"src",String(Wt))}return Pt}Object.defineProperty(Audio,"prototype",{value:this.HTMLAudioElement.prototype,configurable:false,enumerable:false,writable:false});Object.defineProperty(en,"Audio",{value:Audio,configurable:true,enumerable:false,writable:true});this.postMessage=Zn(en);this.atob=function(Wt){try{return atob(Wt)}catch(Wt){throw An.create(en,["The string to be decoded contains invalid characters.","InvalidCharacterError"])}};this.btoa=function(Wt){try{return btoa(Wt)}catch(Wt){throw An.create(en,["The string to be encoded contains invalid characters.","InvalidCharacterError"])}};this.stop=function(){const Wt=Wn.implForWrapper(this._document)._requestManager;if(Wt){Wt.close()}};this.close=function(){for(let Wt=0;Wt{en.setProperty(Wt,In.getPropertyValue(Wt),In.getPropertyPriority(Wt))}));const sn=Object.keys(Jn);tn.call(sn,(Pt=>{en.setProperty(Pt,kn(Wt,Pt))}));return en};this.getSelection=function(){return en._document.getSelection()};this.captureEvents=function(){};this.releaseEvents=function(){};function wrapConsoleMethod(Wt){return(...Pt)=>{en._virtualConsole.emit(Wt,...Pt)}}this.console={assert:wrapConsoleMethod("assert"),clear:wrapConsoleMethod("clear"),count:wrapConsoleMethod("count"),countReset:wrapConsoleMethod("countReset"),debug:wrapConsoleMethod("debug"),dir:wrapConsoleMethod("dir"),dirxml:wrapConsoleMethod("dirxml"),error:wrapConsoleMethod("error"),group:wrapConsoleMethod("group"),groupCollapsed:wrapConsoleMethod("groupCollapsed"),groupEnd:wrapConsoleMethod("groupEnd"),info:wrapConsoleMethod("info"),log:wrapConsoleMethod("log"),table:wrapConsoleMethod("table"),time:wrapConsoleMethod("time"),timeLog:wrapConsoleMethod("timeLog"),timeEnd:wrapConsoleMethod("timeEnd"),trace:wrapConsoleMethod("trace"),warn:wrapConsoleMethod("warn")};function notImplementedMethod(Wt){return function(){rn(Wt,en)}}sn(this,{name:"",status:"",devicePixelRatio:1,innerWidth:1024,innerHeight:768,outerWidth:1024,outerHeight:768,pageXOffset:0,pageYOffset:0,screenX:0,screenLeft:0,screenY:0,screenTop:0,scrollX:0,scrollY:0,alert:notImplementedMethod("window.alert"),blur:notImplementedMethod("window.blur"),confirm:notImplementedMethod("window.confirm"),focus:notImplementedMethod("window.focus"),moveBy:notImplementedMethod("window.moveBy"),moveTo:notImplementedMethod("window.moveTo"),open:notImplementedMethod("window.open"),print:notImplementedMethod("window.print"),prompt:notImplementedMethod("window.prompt"),resizeBy:notImplementedMethod("window.resizeBy"),resizeTo:notImplementedMethod("window.resizeTo"),scroll:notImplementedMethod("window.scroll"),scrollBy:notImplementedMethod("window.scrollBy"),scrollTo:notImplementedMethod("window.scrollTo")});process.nextTick((()=>{if(!en.document){return}if(en.document.readyState==="complete"){Hn("load",en,undefined,{},true)}else{en.document.addEventListener("load",(()=>{Hn("load",en,undefined,{},true);if(!en._document){return}const Wt=Wn.implForWrapper(en._document);if(!Wt._pageShowingFlag){Wt._pageShowingFlag=true;Gn("pageshow",en,false)}}))}}))}function contextifyWindow(Wt){if(tn.isContext(Wt)){return}tn.createContext(Wt)}},77078:Wt=>{Wt.exports=`\n/*\n * The default style sheet used to render HTML.\n *\n * Copyright (C) 2000 Lars Knoll (knoll@kde.org)\n * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.\n *\n * This library is free software; you can redistribute it and/or\n * modify it under the terms of the GNU Library General Public\n * License as published by the Free Software Foundation; either\n * version 2 of the License, or (at your option) any later version.\n *\n * This library is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\n * Library General Public License for more details.\n *\n * You should have received a copy of the GNU Library General Public License\n * along with this library; see the file COPYING.LIB. If not, write to\n * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,\n * Boston, MA 02110-1301, USA.\n *\n */\n\n@namespace "http://www.w3.org/1999/xhtml";\n\nhtml {\n display: block\n}\n\n:root {\n scroll-blocks-on: start-touch wheel-event\n}\n\n/* children of the element all have display:none */\nhead {\n display: none\n}\n\nmeta {\n display: none\n}\n\ntitle {\n display: none\n}\n\nlink {\n display: none\n}\n\nstyle {\n display: none\n}\n\nscript {\n display: none\n}\n\n/* generic block-level elements */\n\nbody {\n display: block;\n margin: 8px\n}\n\np {\n display: block;\n -webkit-margin-before: 1__qem;\n -webkit-margin-after: 1__qem;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n}\n\ndiv {\n display: block\n}\n\nlayer {\n display: block\n}\n\narticle, aside, footer, header, hgroup, main, nav, section {\n display: block\n}\n\nmarquee {\n display: inline-block;\n}\n\naddress {\n display: block\n}\n\nblockquote {\n display: block;\n -webkit-margin-before: 1__qem;\n -webkit-margin-after: 1em;\n -webkit-margin-start: 40px;\n -webkit-margin-end: 40px;\n}\n\nfigcaption {\n display: block\n}\n\nfigure {\n display: block;\n -webkit-margin-before: 1em;\n -webkit-margin-after: 1em;\n -webkit-margin-start: 40px;\n -webkit-margin-end: 40px;\n}\n\nq {\n display: inline\n}\n\n/* nwmatcher does not support ::before and ::after, so we can't render q\ncorrectly: https://html.spec.whatwg.org/multipage/rendering.html#phrasing-content-3\nTODO: add q::before and q::after selectors\n*/\n\ncenter {\n display: block;\n /* special centering to be able to emulate the html4/netscape behaviour */\n text-align: -webkit-center\n}\n\nhr {\n display: block;\n -webkit-margin-before: 0.5em;\n -webkit-margin-after: 0.5em;\n -webkit-margin-start: auto;\n -webkit-margin-end: auto;\n border-style: inset;\n border-width: 1px;\n box-sizing: border-box\n}\n\nmap {\n display: inline\n}\n\nvideo {\n object-fit: contain;\n}\n\n/* heading elements */\n\nh1 {\n display: block;\n font-size: 2em;\n -webkit-margin-before: 0.67__qem;\n -webkit-margin-after: 0.67em;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n font-weight: bold\n}\n\narticle h1,\naside h1,\nnav h1,\nsection h1 {\n font-size: 1.5em;\n -webkit-margin-before: 0.83__qem;\n -webkit-margin-after: 0.83em;\n}\n\narticle article h1,\narticle aside h1,\narticle nav h1,\narticle section h1,\naside article h1,\naside aside h1,\naside nav h1,\naside section h1,\nnav article h1,\nnav aside h1,\nnav nav h1,\nnav section h1,\nsection article h1,\nsection aside h1,\nsection nav h1,\nsection section h1 {\n font-size: 1.17em;\n -webkit-margin-before: 1__qem;\n -webkit-margin-after: 1em;\n}\n\n/* Remaining selectors are deleted because nwmatcher does not support\n:matches() and expanding the selectors manually would be far too verbose.\nAlso see https://html.spec.whatwg.org/multipage/rendering.html#sections-and-headings\nTODO: rewrite to use :matches() when nwmatcher supports it.\n*/\n\nh2 {\n display: block;\n font-size: 1.5em;\n -webkit-margin-before: 0.83__qem;\n -webkit-margin-after: 0.83em;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n font-weight: bold\n}\n\nh3 {\n display: block;\n font-size: 1.17em;\n -webkit-margin-before: 1__qem;\n -webkit-margin-after: 1em;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n font-weight: bold\n}\n\nh4 {\n display: block;\n -webkit-margin-before: 1.33__qem;\n -webkit-margin-after: 1.33em;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n font-weight: bold\n}\n\nh5 {\n display: block;\n font-size: .83em;\n -webkit-margin-before: 1.67__qem;\n -webkit-margin-after: 1.67em;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n font-weight: bold\n}\n\nh6 {\n display: block;\n font-size: .67em;\n -webkit-margin-before: 2.33__qem;\n -webkit-margin-after: 2.33em;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n font-weight: bold\n}\n\n/* tables */\n\ntable {\n display: table;\n border-collapse: separate;\n border-spacing: 2px;\n border-color: gray\n}\n\nthead {\n display: table-header-group;\n vertical-align: middle;\n border-color: inherit\n}\n\ntbody {\n display: table-row-group;\n vertical-align: middle;\n border-color: inherit\n}\n\ntfoot {\n display: table-footer-group;\n vertical-align: middle;\n border-color: inherit\n}\n\n/* for tables without table section elements (can happen with XHTML or dynamically created tables) */\ntable > tr {\n vertical-align: middle;\n}\n\ncol {\n display: table-column\n}\n\ncolgroup {\n display: table-column-group\n}\n\ntr {\n display: table-row;\n vertical-align: inherit;\n border-color: inherit\n}\n\ntd, th {\n display: table-cell;\n vertical-align: inherit\n}\n\nth {\n font-weight: bold\n}\n\ncaption {\n display: table-caption;\n text-align: -webkit-center\n}\n\n/* lists */\n\nul, menu, dir {\n display: block;\n list-style-type: disc;\n -webkit-margin-before: 1__qem;\n -webkit-margin-after: 1em;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n -webkit-padding-start: 40px\n}\n\nol {\n display: block;\n list-style-type: decimal;\n -webkit-margin-before: 1__qem;\n -webkit-margin-after: 1em;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n -webkit-padding-start: 40px\n}\n\nli {\n display: list-item;\n text-align: -webkit-match-parent;\n}\n\nul ul, ol ul {\n list-style-type: circle\n}\n\nol ol ul, ol ul ul, ul ol ul, ul ul ul {\n list-style-type: square\n}\n\ndd {\n display: block;\n -webkit-margin-start: 40px\n}\n\ndl {\n display: block;\n -webkit-margin-before: 1__qem;\n -webkit-margin-after: 1em;\n -webkit-margin-start: 0;\n -webkit-margin-end: 0;\n}\n\ndt {\n display: block\n}\n\nol ul, ul ol, ul ul, ol ol {\n -webkit-margin-before: 0;\n -webkit-margin-after: 0\n}\n\n/* form elements */\n\nform {\n display: block;\n margin-top: 0__qem;\n}\n\nlabel {\n cursor: default;\n}\n\nlegend {\n display: block;\n -webkit-padding-start: 2px;\n -webkit-padding-end: 2px;\n border: none\n}\n\nfieldset {\n display: block;\n -webkit-margin-start: 2px;\n -webkit-margin-end: 2px;\n -webkit-padding-before: 0.35em;\n -webkit-padding-start: 0.75em;\n -webkit-padding-end: 0.75em;\n -webkit-padding-after: 0.625em;\n border: 2px groove ThreeDFace;\n min-width: -webkit-min-content;\n}\n\nbutton {\n -webkit-appearance: button;\n}\n\n/* Form controls don't go vertical. */\ninput, textarea, select, button, meter, progress {\n -webkit-writing-mode: horizontal-tb !important;\n}\n\ninput, textarea, select, button {\n margin: 0__qem;\n font: -webkit-small-control;\n text-rendering: auto; /* FIXME: Remove when tabs work with optimizeLegibility. */\n color: initial;\n letter-spacing: normal;\n word-spacing: normal;\n line-height: normal;\n text-transform: none;\n text-indent: 0;\n text-shadow: none;\n display: inline-block;\n text-align: start;\n}\n\n/* TODO: Add " i" to attribute matchers to support case-insensitive matching */\ninput[type="hidden"] {\n display: none\n}\n\ninput {\n -webkit-appearance: textfield;\n padding: 1px;\n background-color: white;\n border: 2px inset;\n -webkit-rtl-ordering: logical;\n -webkit-user-select: text;\n cursor: auto;\n}\n\ninput[type="search"] {\n -webkit-appearance: searchfield;\n box-sizing: border-box;\n}\n\nselect {\n border-radius: 5px;\n}\n\ntextarea {\n -webkit-appearance: textarea;\n background-color: white;\n border: 1px solid;\n -webkit-rtl-ordering: logical;\n -webkit-user-select: text;\n flex-direction: column;\n resize: auto;\n cursor: auto;\n padding: 2px;\n white-space: pre-wrap;\n word-wrap: break-word;\n}\n\ninput[type="password"] {\n -webkit-text-security: disc !important;\n}\n\ninput[type="hidden"], input[type="image"], input[type="file"] {\n -webkit-appearance: initial;\n padding: initial;\n background-color: initial;\n border: initial;\n}\n\ninput[type="file"] {\n align-items: baseline;\n color: inherit;\n text-align: start !important;\n}\n\ninput[type="radio"], input[type="checkbox"] {\n margin: 3px 0.5ex;\n padding: initial;\n background-color: initial;\n border: initial;\n}\n\ninput[type="button"], input[type="submit"], input[type="reset"] {\n -webkit-appearance: push-button;\n -webkit-user-select: none;\n white-space: pre\n}\n\ninput[type="button"], input[type="submit"], input[type="reset"], button {\n align-items: flex-start;\n text-align: center;\n cursor: default;\n color: ButtonText;\n padding: 2px 6px 3px 6px;\n border: 2px outset ButtonFace;\n background-color: ButtonFace;\n box-sizing: border-box\n}\n\ninput[type="range"] {\n -webkit-appearance: slider-horizontal;\n padding: initial;\n border: initial;\n margin: 2px;\n color: #909090;\n}\n\ninput[type="button"]:disabled, input[type="submit"]:disabled, input[type="reset"]:disabled,\nbutton:disabled, select:disabled, optgroup:disabled, option:disabled,\nselect[disabled]>option {\n color: GrayText\n}\n\ninput[type="button"]:active, input[type="submit"]:active, input[type="reset"]:active, button:active {\n border-style: inset\n}\n\ninput[type="button"]:active:disabled, input[type="submit"]:active:disabled, input[type="reset"]:active:disabled, button:active:disabled {\n border-style: outset\n}\n\ndatalist {\n display: none\n}\n\narea {\n display: inline;\n cursor: pointer;\n}\n\nparam {\n display: none\n}\n\ninput[type="checkbox"] {\n -webkit-appearance: checkbox;\n box-sizing: border-box;\n}\n\ninput[type="radio"] {\n -webkit-appearance: radio;\n box-sizing: border-box;\n}\n\ninput[type="color"] {\n -webkit-appearance: square-button;\n width: 44px;\n height: 23px;\n background-color: ButtonFace;\n /* Same as native_theme_base. */\n border: 1px #a9a9a9 solid;\n padding: 1px 2px;\n}\n\ninput[type="color"][list] {\n -webkit-appearance: menulist;\n width: 88px;\n height: 23px\n}\n\nselect {\n -webkit-appearance: menulist;\n box-sizing: border-box;\n align-items: center;\n border: 1px solid;\n white-space: pre;\n -webkit-rtl-ordering: logical;\n color: black;\n background-color: white;\n cursor: default;\n}\n\noptgroup {\n font-weight: bolder;\n display: block;\n}\n\noption {\n font-weight: normal;\n display: block;\n padding: 0 2px 1px 2px;\n white-space: pre;\n min-height: 1.2em;\n}\n\noutput {\n display: inline;\n}\n\n/* meter */\n\nmeter {\n -webkit-appearance: meter;\n box-sizing: border-box;\n display: inline-block;\n height: 1em;\n width: 5em;\n vertical-align: -0.2em;\n}\n\n/* progress */\n\nprogress {\n -webkit-appearance: progress-bar;\n box-sizing: border-box;\n display: inline-block;\n height: 1em;\n width: 10em;\n vertical-align: -0.2em;\n}\n\n/* inline elements */\n\nu, ins {\n text-decoration: underline\n}\n\nstrong, b {\n font-weight: bold\n}\n\ni, cite, em, var, address, dfn {\n font-style: italic\n}\n\ntt, code, kbd, samp {\n font-family: monospace\n}\n\npre, xmp, plaintext, listing {\n display: block;\n font-family: monospace;\n white-space: pre;\n margin: 1__qem 0\n}\n\nmark {\n background-color: yellow;\n color: black\n}\n\nbig {\n font-size: larger\n}\n\nsmall {\n font-size: smaller\n}\n\ns, strike, del {\n text-decoration: line-through\n}\n\nsub {\n vertical-align: sub;\n font-size: smaller\n}\n\nsup {\n vertical-align: super;\n font-size: smaller\n}\n\nnobr {\n white-space: nowrap\n}\n\n/* states */\n\n:focus {\n outline: auto 5px -webkit-focus-ring-color\n}\n\n/* Read-only text fields do not show a focus ring but do still receive focus */\nhtml:focus, body:focus, input[readonly]:focus {\n outline: none\n}\n\nembed:focus, iframe:focus, object:focus {\n outline: none\n}\n\ninput:focus, textarea:focus, select:focus {\n outline-offset: -2px\n}\n\ninput[type="button"]:focus,\ninput[type="checkbox"]:focus,\ninput[type="file"]:focus,\ninput[type="hidden"]:focus,\ninput[type="image"]:focus,\ninput[type="radio"]:focus,\ninput[type="reset"]:focus,\ninput[type="search"]:focus,\ninput[type="submit"]:focus {\n outline-offset: 0\n}\n\n/* HTML5 ruby elements */\n\nruby, rt {\n text-indent: 0; /* blocks used for ruby rendering should not trigger this */\n}\n\nrt {\n line-height: normal;\n -webkit-text-emphasis: none;\n}\n\nruby > rt {\n display: block;\n font-size: 50%;\n text-align: start;\n}\n\nruby > rp {\n display: none;\n}\n\n/* other elements */\n\nnoframes {\n display: none\n}\n\nframeset, frame {\n display: block\n}\n\nframeset {\n border-color: inherit\n}\n\niframe {\n border: 2px inset\n}\n\ndetails {\n display: block\n}\n\nsummary {\n display: block\n}\n\ntemplate {\n display: none\n}\n\nbdi, output {\n unicode-bidi: -webkit-isolate;\n}\n\nbdo {\n unicode-bidi: bidi-override;\n}\n\ntextarea[dir=auto] {\n unicode-bidi: -webkit-plaintext;\n}\n\ndialog:not([open]) {\n display: none\n}\n\ndialog {\n position: absolute;\n left: 0;\n right: 0;\n width: -webkit-fit-content;\n height: -webkit-fit-content;\n margin: auto;\n border: solid;\n padding: 1em;\n background: white;\n color: black\n}\n\n[hidden] {\n display: none\n}\n\n/* noscript is handled internally, as it depends on settings. */\n\n`},8172:Wt=>{"use strict";Wt.exports=function(Wt,Pt){if(!Pt){return}const en=new Error(`Not implemented: ${Wt}`);en.type="not implemented";Pt._virtualConsole.emit("jsdomError",en)}},78221:(Wt,Pt,en)=>{"use strict";const tn=en(50069);const{createElement:nn}=en(94202);const{HTML_NS:an}=en(98071);const rn=en(80842);const In=en(98938);const sn=en(40196);const on=en(22918);const cn=en(69936);const dn=en(7206);const un=en(70329);const{customElementReactionsStack:pn,invokeCEReactions:mn,lookupCEDefinition:bn}=en(8348);class JSDOMParse5Adapter{constructor(Wt,Pt={}){this._documentImpl=Wt;this._globalObject=Wt._globalObject;this._fragment=Pt.fragment||false;this._currentElement=undefined}_ownerDocument(){const{_currentElement:Wt}=this;if(Wt){return Wt.localName==="template"&&Wt.namespaceURI===an?Wt.content._ownerDocument:Wt._ownerDocument}return this._documentImpl}createDocument(){return this._documentImpl}createDocumentFragment(){const Wt=this._ownerDocument();return In.createImpl(this._globalObject,[],{ownerDocument:Wt})}createElement(Wt,Pt,en){const tn=this._ownerDocument();const an=en.find((Wt=>Wt.name==="is"));const rn=an?an.value:null;const In=bn(tn,Pt,Wt);let sn=false;if(In!==null&&!this._fragment){sn=true}if(sn){tn._throwOnDynamicMarkupInsertionCounter++;pn.push([])}const on=nn(tn,Wt,Pt,null,rn,sn);this.adoptAttributes(on,en);if(sn){const Wt=pn.pop();mn(Wt);tn._throwOnDynamicMarkupInsertionCounter--}if("_parserInserted"in on){on._parserInserted=true}return on}createCommentNode(Wt){const Pt=this._ownerDocument();return on.createImpl(this._globalObject,[],{data:Wt,ownerDocument:Pt})}appendChild(Wt,Pt){Wt._append(Pt)}insertBefore(Wt,Pt,en){Wt._insert(Pt,en)}setTemplateContent(Wt,Pt){const{_ownerDocument:en,_host:tn}=Wt._templateContents;Pt._ownerDocument=en;Pt._host=tn;Wt._templateContents=Pt}setDocumentType(Wt,Pt,en,tn){const nn=this._ownerDocument();const an=rn.createImpl(this._globalObject,[],{name:Pt,publicId:en,systemId:tn,ownerDocument:nn});Wt._append(an)}setDocumentMode(Wt,Pt){Wt._mode=Pt}detachNode(Wt){Wt.remove()}insertText(Wt,Pt){const{lastChild:en}=Wt;if(en&&en.nodeType===dn.TEXT_NODE){en.data+=Pt}else{const en=this._ownerDocument();const tn=sn.createImpl(this._globalObject,[],{data:Pt,ownerDocument:en});Wt._append(tn)}}insertTextBefore(Wt,Pt,en){const{previousSibling:tn}=en;if(tn&&tn.nodeType===dn.TEXT_NODE){tn.data+=Pt}else{const tn=this._ownerDocument();const nn=sn.createImpl(this._globalObject,[],{data:Pt,ownerDocument:tn});Wt._append(nn,en)}}adoptAttributes(Wt,Pt){for(const en of Pt){const Pt=en.prefix===""?null:en.prefix;cn.setAttributeValue(Wt,en.name,en.value,Pt,en.namespace)}}onItemPush(Wt){this._currentElement=Wt;Wt._pushedOnStackOfOpenElements?.()}onItemPop(Wt,Pt){this._currentElement=Pt;Wt._poppedOffStackOfOpenElements?.()}}Object.assign(JSDOMParse5Adapter.prototype,un);function parseFragment(Wt,Pt){const en=Pt.localName==="template"&&Pt.namespaceURI===an?Pt.content._ownerDocument:Pt._ownerDocument;const nn={...en._parseOptions,sourceCodeLocationInfo:false,treeAdapter:new JSDOMParse5Adapter(en,{fragment:true})};return tn.parseFragment(Pt,Wt,nn)}function parseIntoDocument(Wt,Pt){const en={...Pt._parseOptions,treeAdapter:new JSDOMParse5Adapter(Pt)};return tn.parse(Wt,en)}Wt.exports={parseFragment:parseFragment,parseIntoDocument:parseIntoDocument}},13430:(Wt,Pt,en)=>{"use strict";const tn=en(12779);const nn=en(78221);function parseFragment(Wt,Pt){const{_parsingMode:en}=Pt._ownerDocument;let an;if(en==="html"){an=nn.parseFragment}else if(en==="xml"){an=tn.parseFragment}return an(Wt,Pt)}function parseIntoDocument(Wt,Pt){const{_parsingMode:en}=Pt;let an;if(en==="html"){an=nn.parseIntoDocument}else if(en==="xml"){an=tn.parseIntoDocument}return an(Wt,Pt)}Wt.exports={parseFragment:parseFragment,parseIntoDocument:parseIntoDocument}},12779:(Wt,Pt,en)=>{"use strict";const{SaxesParser:tn}=en(59800);const nn=en(16694);const{createElement:an}=en(94202);const rn=en(98938);const In=en(80842);const sn=en(37711);const on=en(22918);const cn=en(34786);const dn=en(40196);const un=en(69936);const{HTML_NS:pn}=en(98071);const mn=//i;const bn=/]+)/i;function parseDocType(Wt,Pt,en){if(mn.test(en)){return createDocumentType(Wt,Pt,"html","","")}const tn=bn.exec(en);if(tn){return createDocumentType(Wt,Pt,tn[1],tn[2],tn[3])}const nn=Gn.exec(en);if(nn){return createDocumentType(Wt,Pt,nn[1],"",nn[2])}const an=hn.exec(en)[1]||"html";return createDocumentType(Wt,Pt,an,"","")}function createDocumentType(Wt,Pt,en,tn,nn){return In.createImpl(Wt,[],{ownerDocument:Pt,name:en,publicId:tn,systemId:nn})}function isHTMLTemplateElement(Wt){return Wt.tagName==="template"&&Wt.namespaceURI===pn}function createParser(Wt,Pt,en){const rn=new tn({...en,xmlns:true,defaultXMLVersion:"1.0",forceXMLVersion:true});const In=[Wt];function getOwnerDocument(){const Wt=In[In.length-1];return isHTMLTemplateElement(Wt)?Wt._templateContents._ownerDocument:Wt._ownerDocument}function appendChild(Wt){const Pt=In[In.length-1];if(isHTMLTemplateElement(Pt)){Pt._templateContents._insert(Wt,null)}else{Pt._insert(Wt,null)}}rn.on("text",en.fragment?Wt=>{const en=getOwnerDocument();appendChild(dn.createImpl(Pt,[],{data:Wt,ownerDocument:en}))}:Wt=>{if(In.length>1){const en=getOwnerDocument();appendChild(dn.createImpl(Pt,[],{data:Wt,ownerDocument:en}))}});rn.on("cdata",(Wt=>{const en=getOwnerDocument();appendChild(sn.createImpl(Pt,[],{data:Wt,ownerDocument:en}))}));rn.on("opentag",(Wt=>{const{local:Pt,attributes:en}=Wt;const tn=getOwnerDocument();const nn=Wt.uri===""?null:Wt.uri;const rn=Wt.prefix===""?null:Wt.prefix;const sn=en.is===undefined?null:en.is.value;const on=an(tn,Pt,nn,rn,sn,true);if(Pt==="script"&&nn===pn){on._parserInserted=true}for(const Wt of Object.keys(en)){const{prefix:Pt,local:tn,uri:nn,value:an}=en[Wt];un.setAttributeValue(on,tn,an,Pt===""?null:Pt,nn===""?null:nn)}appendChild(on);In.push(on)}));rn.on("closetag",(()=>{const Wt=In.pop();if(Wt.localName==="script"&&Wt.namespaceURI===pn){Wt._eval()}}));rn.on("comment",(Wt=>{const en=getOwnerDocument();appendChild(on.createImpl(Pt,[],{data:Wt,ownerDocument:en}))}));rn.on("processinginstruction",(({target:Wt,body:en})=>{const tn=getOwnerDocument();appendChild(cn.createImpl(Pt,[],{target:Wt,data:en,ownerDocument:tn}))}));rn.on("doctype",(Wt=>{const en=getOwnerDocument();appendChild(parseDocType(Pt,en,``));const tn=//g;let nn;while(nn=tn.exec(Wt)){const[,Wt,Pt]=nn;if(!(Wt in rn.ENTITIES)){rn.ENTITIES[Wt]=Pt}}}));rn.on("error",(Wt=>{throw nn.create(Pt,[Wt.message,"SyntaxError"])}));return rn}function parseFragment(Wt,Pt){const{_globalObject:en,_ownerDocument:tn}=Pt;const nn=rn.createImpl(en,[],{ownerDocument:tn});const an=createParser(nn,en,{fragment:true,resolvePrefix(Wt){return Pt.lookupNamespaceURI(Wt)||undefined}});an.write(Wt).close();return nn}function parseIntoDocument(Wt,Pt){const{_globalObject:en}=Pt;const tn=createParser(Pt,en,{fileName:Pt.location&&Pt.location.href});tn.write(Wt).close();return Pt}Wt.exports={parseFragment:parseFragment,parseIntoDocument:parseIntoDocument}},76177:Wt=>{"use strict";class QueueItem{constructor(Wt,Pt,en){this.onLoad=Wt;this.onError=Pt;this.data=null;this.error=null;this.dependentItem=en}}Wt.exports=class AsyncResourceQueue{constructor(){this.items=new Set;this.dependentItems=new Set}count(){return this.items.size+this.dependentItems.size}_notify(){if(this._listener){this._listener()}}_check(Wt){let Pt;if(Wt.onError&&Wt.error){Pt=Wt.onError(Wt.error)}else if(Wt.onLoad&&Wt.data){Pt=Wt.onLoad(Wt.data)}Pt.then((()=>{this.items.delete(Wt);this.dependentItems.delete(Wt);if(this.count()===0){this._notify()}}))}setListener(Wt){this._listener=Wt}push(Wt,Pt,en,tn){const nn=this;const an=new QueueItem(Pt,en,tn);nn.items.add(an);return Wt.then((Wt=>{an.data=Wt;if(tn&&!tn.finished){nn.dependentItems.add(an);return nn.items.delete(an)}if(Pt){return nn._check(an)}nn.items.delete(an);if(nn.count()===0){nn._notify()}return null})).catch((Wt=>{an.error=Wt;if(tn&&!tn.finished){nn.dependentItems.add(an);return nn.items.delete(an)}if(en){return nn._check(an)}nn.items.delete(an);if(nn.count()===0){nn._notify()}return null}))}notifyItem(Wt){for(const Pt of this.dependentItems){if(Pt.dependentItem===Wt){this._check(Pt)}}}}},13858:(Wt,Pt,en)=>{"use strict";const tn=en(79414);Wt.exports=class NoOpResourceLoader extends tn{fetch(){return null}}},1846:(Wt,Pt,en)=>{"use strict";const tn=en(87094);const{fireAnEvent:nn}=en(83350);Wt.exports=class PerDocumentResourceLoader{constructor(Wt){this._document=Wt;this._defaultEncoding=Wt._encoding;this._resourceLoader=Wt._defaultView?Wt._defaultView._resourceLoader:null;this._requestManager=Wt._requestManager;this._queue=Wt._queue;this._deferQueue=Wt._deferQueue;this._asyncQueue=Wt._asyncQueue}fetch(Wt,{element:Pt,onLoad:en,onError:an}){const rn=this._resourceLoader.fetch(Wt,{cookieJar:this._document._cookieJar,element:tn.wrapperForImpl(Pt),referrer:this._document.URL});if(rn===null){return null}this._requestManager.add(rn);const onErrorWrapped=en=>{this._requestManager.remove(rn);if(an){an(en)}nn("error",Pt);const tn=new Error(`Could not load ${Pt.localName}: "${Wt}"`);tn.type="resource loading";tn.detail=en;this._document._defaultView._virtualConsole.emit("jsdomError",tn);return Promise.resolve()};const onLoadWrapped=tn=>{this._requestManager.remove(rn);this._addCookies(Wt,rn.response?rn.response.headers:{});try{const Wt=en?en(tn):undefined;return Promise.resolve(Wt).then((()=>{nn("load",Pt);return Promise.resolve()})).catch((Wt=>onErrorWrapped(Wt)))}catch(Wt){return onErrorWrapped(Wt)}};if(Pt.localName==="script"&&Pt.hasAttributeNS(null,"async")){this._asyncQueue.push(rn,onLoadWrapped,onErrorWrapped,this._queue.getLastScript())}else if(Pt.localName==="script"&&Pt.hasAttributeNS(null,"defer")&&this._document.readyState!=="interactive"){this._deferQueue.push(rn,onLoadWrapped,onErrorWrapped,false,Pt)}else{this._queue.push(rn,onLoadWrapped,onErrorWrapped,false,Pt)}return rn}_addCookies(Wt,Pt){let en=Pt["set-cookie"];if(!en){return}if(!Array.isArray(en)){en=[en]}en.forEach((Pt=>{this._document._cookieJar.setCookieSync(Pt,Wt,{http:true,ignoreError:true})}))}}},36577:Wt=>{"use strict";Wt.exports=class RequestManager{constructor(){this.openedRequests=[]}add(Wt){this.openedRequests.push(Wt)}remove(Wt){const Pt=this.openedRequests.indexOf(Wt);if(Pt!==-1){this.openedRequests.splice(Pt,1)}}close(){for(const Wt of this.openedRequests){Wt.abort()}this.openedRequests=[]}size(){return this.openedRequests.length}}},79414:(Wt,Pt,en)=>{"use strict";const tn=en(79896);const{fileURLToPath:nn}=en(87016);const{parseURL:an}=en(78012);const rn=en(32946).fromURLRecord;const In=en(92949).rE;const sn=en(96577);const on=en(13907);const cn=Object.prototype.toString.call(process)!=="[object process]";Wt.exports=class ResourceLoader{constructor({strictSSL:Wt=true,proxy:Pt=undefined,userAgent:en=`Mozilla/5.0 (${process.platform||"unknown OS"}) AppleWebKit/537.36 `+`(KHTML, like Gecko) jsdom/${In}`}={}){this._strictSSL=Wt;this._proxy=Pt;this._userAgent=en}_readDataURL(Wt){const Pt=rn(Wt);let en;const tn=new Promise((Wt=>{en=setTimeout(Wt,0,Buffer.from(Pt.body))}));tn.abort=()=>{if(en!==undefined){clearTimeout(en)}};return tn}_readFile(Wt){let Pt,en;const nn=new Promise(((nn,an)=>{Pt=tn.createReadStream(Wt);let rn=Buffer.alloc(0);en=an;Pt.on("error",an);Pt.on("data",(Wt=>{rn=Buffer.concat([rn,Wt])}));Pt.on("end",(()=>{nn(rn)}))}));nn.abort=()=>{Pt.destroy();const Wt=new Error("request canceled by user");Wt.isAbortError=true;en(Wt)};return nn}fetch(Wt,{accept:Pt,cookieJar:en,referrer:tn}={}){const rn=an(Wt);if(!rn){return Promise.reject(new Error(`Tried to fetch invalid URL ${Wt}`))}switch(rn.scheme){case"data":{return this._readDataURL(rn)}case"http":case"https":{const nn=sn(this._proxy,this._strictSSL);const an={"User-Agent":this._userAgent,"Accept-Language":"en","Accept-Encoding":"gzip",Accept:Pt||"*/*"};if(tn&&!cn){an.Referer=tn}const rn=new on(Wt,{followRedirects:true,cookieJar:en,agents:nn},{headers:an});const In=new Promise(((Wt,Pt)=>{const en=[];rn.once("response",(Wt=>{In.response=Wt;const{statusCode:en}=Wt;if(en<200||en>299){rn.abort();Pt(new Error(`Resource was not loaded. Status: ${en}`))}}));rn.on("data",(Wt=>{en.push(Wt)}));rn.on("end",(()=>Wt(Buffer.concat(en))));rn.on("error",Pt)}));rn.on("end",(()=>{In.href=rn.currentURL}));In.abort=rn.abort.bind(rn);In.getHeader=Wt=>an[Wt]||rn.getHeader(Wt);rn.end();return In}case"file":{try{return this._readFile(nn(Wt))}catch(Wt){return Promise.reject(Wt)}}default:{return Promise.reject(new Error(`Tried to fetch URL ${Wt} with invalid scheme ${rn.scheme}`))}}}}},10406:Wt=>{"use strict";Wt.exports=class ResourceQueue{constructor({paused:Wt,asyncQueue:Pt}={}){this.paused=Boolean(Wt);this._asyncQueue=Pt}getLastScript(){let Wt=this.tail;while(Wt){if(Wt.isScript){return Wt}Wt=Wt.prev}return null}_moreScripts(){let Wt=false;let Pt=this.tail;while(Pt&&!Wt){Wt=Pt.isScript;Pt=Pt.prev}return Wt}_notify(){if(this._listener){this._listener()}}setListener(Wt){this._listener=Wt}push(Wt,Pt,en,tn,nn){const an=nn?nn.localName==="script":false;if(!Wt){if(an&&!this._moreScripts()){return Pt()}Wt=Promise.resolve()}const rn=this;const In={isScript:an,err:null,element:nn,fired:false,data:null,keepLast:tn,prev:rn.tail,check(){if(!rn.paused&&!this.prev&&this.fired){let Wt;if(this.err&&en){Wt=en(this.err)}if(!this.err&&Pt){Wt=Pt(this.data)}Promise.resolve(Wt).then((()=>{if(this.next){this.next.prev=null;this.next.check()}else{rn.tail=null;rn._notify()}this.finished=true;if(rn._asyncQueue){rn._asyncQueue.notifyItem(this)}}))}}};if(rn.tail){if(rn.tail.keepLast){if(rn.tail.prev){rn.tail.prev.next=In}In.prev=rn.tail.prev;rn.tail.prev=In;In.next=rn.tail}else{rn.tail.next=In;rn.tail=In}}else{rn.tail=In}return Wt.then((Wt=>{In.fired=1;In.data=Wt;In.check()})).catch((Wt=>{In.fired=true;In.err=Wt;In.check()}))}resume(){if(!this.paused){return}this.paused=false;let Wt=this.tail;while(Wt&&Wt.prev){Wt=Wt.prev}if(Wt){Wt.check()}}}},56973:(Wt,Pt,en)=>{"use strict";const tn=en(28144);const nn=en(99712);Pt.addToCore=Wt=>{Wt.StyleSheet=tn.StyleSheet;Wt.MediaList=tn.MediaList;Wt.CSSStyleSheet=tn.CSSStyleSheet;Wt.CSSRule=tn.CSSRule;Wt.CSSStyleRule=tn.CSSStyleRule;Wt.CSSMediaRule=tn.CSSMediaRule;Wt.CSSImportRule=tn.CSSImportRule;Wt.CSSStyleDeclaration=nn.CSSStyleDeclaration}},30060:Wt=>{Wt.exports=Wt=>{var Pt={};function getNodeName(Wt){return Wt.constructor.name==="Attr"?Wt.name:Wt.nodeName}var en=Pt.Stream=function Stream(Wt){this.original=this.str=Wt;this.peeked=null;this.prev=null;this.prevprev=null};en.prototype={peek:function(){if(this.peeked)return this.peeked;var Wt=this.re.exec(this.str);if(!Wt)return null;this.str=this.str.substr(Wt[0].length);return this.peeked=Wt[1]},peek2:function(){this.peek();var Wt=this.re.exec(this.str);if(!Wt)return null;return Wt[1]},pop:function(){var Wt=this.peek();this.peeked=null;this.prevprev=this.prev;this.prev=Wt;return Wt},trypop:function(Wt){var Pt=this.peek();if(Pt===Wt)return this.pop();if(Array.isArray(Wt)){for(var en=0;en=|[*/|+\\-=<>]";var In='"[^"]*"|'+"'[^']*'";var sn="[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+";var on="\\$"+nn;var cn="\\*|"+tn+":\\*|"+nn;var dn="[ \t\r\n]*";var un="comment|text|processing-instruction|node";var pn=new RegExp("^"+dn+"("+sn+"|"+an+"|"+cn+"|"+rn+"|"+In+"|"+on+")");en.prototype.re=pn;en.prototype.startsWithNcNameRe=new RegExp("^"+tn);en.prototype.isQnameRe=new RegExp("^"+nn+"$");en.prototype.isNumberRe=new RegExp("^"+sn+"$")})();var tn=Pt.parse=function parse(Wt,Pt){var en=orExpr(Wt,Pt);var tn,nn=[];while(tn=Wt.pop()){nn.push(tn)}if(nn.length)throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Wt.position()+": Unparsed tokens: "+nn.join(" "));return en};function binaryL(Wt,Pt,en,tn){var nn=Wt(Pt,en);if(nn==null)return null;var an;while(an=Pt.trypop(tn)){var rn=Wt(Pt,en);if(rn==null)throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Pt.position()+": Expected something after "+an);nn=en.node(an,nn,rn)}return nn}function binaryR(Wt,Pt,en,tn){var nn=Wt(Pt,en);if(nn==null)return null;var an=Pt.trypop(tn);if(an){var rn=binaryR(Pt,en);if(rn==null)throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Pt.position()+": Expected something after "+an);return en.node(an,nn,rn)}else{return nn}}function locationPath(Wt,Pt){return absoluteLocationPath(Wt,Pt)||relativeLocationPath(null,Wt,Pt)}function absoluteLocationPath(Wt,Pt){var en=Wt.peek();if("/"===en||"//"===en){var tn=Pt.node("Root");return relativeLocationPath(tn,Wt,Pt,true)}else{return null}}function relativeLocationPath(Wt,Pt,en,tn){if(null==Wt){Wt=step(Pt,en);if(null==Wt)return Wt}var nn;while(nn=Pt.trypop(["/","//"])){if("//"===nn){Wt=en.node("/",Wt,en.node("Axis","descendant-or-self","node",undefined))}var an=step(Pt,en);if(null==an&&"/"===nn&&tn)return Wt;else tn=false;if(null==an)throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Pt.position()+": Expected step after "+nn);Wt=en.node("/",Wt,an)}return Wt}function step(Wt,Pt){var en=Wt.trypop([".",".."]);if("."===en)return Pt.node("Axis","self","node");if(".."===en)return Pt.node("Axis","parent","node");var tn=axisSpecifier(Wt,Pt);var nn=nodeTypeTest(Wt,Pt);var an;if(null==nn)an=nodeNameTest(Wt,Pt);if(null==tn&&null==nn&&null==an)return null;if(null==nn&&null==an)throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Wt.position()+": Expected nodeTest after axisSpecifier "+tn);if(null==tn)tn="child";if(null==nn){if("attribute"===tn)nn="attribute";else if("namespace"===tn)nn="namespace";else nn="element"}var rn=Pt.node("Axis",tn,nn,an);var In;while(null!=(In=predicate(rn,Wt,Pt))){rn=In}return rn}function axisSpecifier(Wt,Pt){var en=Wt.trypop("@");if(null!=en)return"attribute";var tn=Wt.trypopaxisname();if(null!=tn){var nn=Wt.trypop("::");if(null==nn)throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Wt.position()+": Should not happen. Should be ::.");return tn}}function nodeTypeTest(Wt,Pt){if("("!==Wt.peek2()){return null}var en=Wt.trypop(["comment","text","processing-instruction","node"]);if(null!=en){if(null==Wt.trypop("("))throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Wt.position()+": Should not happen.");var tn=undefined;if(en=="processing-instruction"){tn=Wt.trypopliteral()}if(null==Wt.trypop(")"))throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Wt.position()+": Expected close parens.");return en}}function nodeNameTest(Wt,Pt){var en=Wt.trypopnametest();if(en!=null)return en;else return null}function predicate(Wt,Pt,en){if(null==Pt.trypop("["))return null;var tn=orExpr(Pt,en);if(null==tn)throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Pt.position()+": Expected expression after [");if(null==Pt.trypop("]"))throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Pt.position()+": Expected ] after expression.");return en.node("Predicate",Wt,tn)}function primaryExpr(Wt,Pt){var en=Wt.trypopliteral();if(null==en)en=Wt.trypopnumber();if(null!=en){return en}var tn=Wt.trypopvarref();if(null!=tn)return Pt.node("VariableReference",tn);var nn=functionCall(Wt,Pt);if(null!=nn){return nn}if(Wt.trypop("(")){var an=orExpr(Wt,Pt);if(null==an)throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Wt.position()+": Expected expression after (.");if(null==Wt.trypop(")"))throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Wt.position()+": Expected ) after expression.");return an}return null}function functionCall(Wt,Pt){var en=Wt.trypopfuncname(Wt,Pt);if(null==en)return null;if(null==Wt.trypop("("))throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Wt.position()+": Expected ( ) after function name.");var tn=[];var nn=true;while(null==Wt.trypop(")")){if(!nn&&null==Wt.trypop(","))throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Wt.position()+": Expected , between arguments of the function.");nn=false;var an=orExpr(Wt,Pt);if(an==null)throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Wt.position()+": Expected expression as argument of function.");tn.push(an)}return Pt.node("FunctionCall",en,tn)}function unionExpr(Wt,Pt){return binaryL(pathExpr,Wt,Pt,"|")}function pathExpr(Wt,Pt){var en=filterExpr(Wt,Pt);if(null==en){var tn=locationPath(Wt,Pt);if(null==tn){throw new Error;throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Wt.position()+": The expression shouldn't be empty...")}return Pt.node("PathExpr",tn)}var nn=relativeLocationPath(en,Wt,Pt,false);if(en===nn)return nn;else return Pt.node("PathExpr",nn)}function filterExpr(Wt,Pt){var en=primaryExpr(Wt,Pt);if(en==null)return null;var tn,nn=en;while(null!=(tn=predicate(nn,Wt,Pt))){nn=tn}return nn}function orExpr(Wt,Pt){var en=(Wt.peeked||"")+Wt.str;var tn=binaryL(andExpr,Wt,Pt,"or");var nn=(Wt.peeked||"")+Wt.str;return tn}function andExpr(Wt,Pt){return binaryL(equalityExpr,Wt,Pt,"and")}function equalityExpr(Wt,Pt){return binaryL(relationalExpr,Wt,Pt,["=","!="])}function relationalExpr(Wt,Pt){return binaryL(additiveExpr,Wt,Pt,["<",">","<=",">="])}function additiveExpr(Wt,Pt){return binaryL(multiplicativeExpr,Wt,Pt,["+","-"])}function multiplicativeExpr(Wt,Pt){return binaryL(unaryExpr,Wt,Pt,["*","div","mod"])}function unaryExpr(Wt,Pt){if(Wt.trypop("-")){var en=unaryExpr(Wt,Pt);if(null==en)throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+Wt.position()+": Expected unary expression after -");return Pt.node("UnaryMinus",en)}else return unionExpr(Wt,Pt)}var nn={node:function(){return Array.prototype.slice.call(arguments)}};function optimize(Wt){}function NodeMultiSet(Wt){this.nodes=[];this.pos=[];this.lasts=[];this.nextPos=[];this.seriesIndexes=[];this.isReverseAxis=Wt;this._pushToNodes=Wt?Array.prototype.unshift:Array.prototype.push}NodeMultiSet.prototype={pushSeries:function pushSeries(){this.nextPos.push(1);this.seriesIndexes.push(this.nodes.length)},popSeries:function popSeries(){console.assert(0=0;sn--){if(rn===In[sn]){an.pushSeries();In.splice(sn,sn+1);pn++}}if(pn&&nn.matches(rn)){an.addNode(rn)}}console.assert(0===In.length);for(var sn=0;sn=0;mn--){if(null==rn.pos[un][mn]){rn.pos[un].splice(mn,mn+1)}else{pn.unshift(sn[mn]-1)}}}return rn}function descendantDfs(Wt,Pt,en,tn,nn,an,rn){while(0=0;--on){rn.nodes.splice(In[on],In[on],sn[on]);rn.pos.splice(In[on],In[on],[1]);rn.lasts.splice(In[on],In[on],[1])}return rn}function ancestorHelper(Wt,Pt,en,tn,nn){var an=new NodeMatcher(Pt,en,tn);var rn=[];for(var In=0;In0;--In){if(sn===rn[In][rn[In].length-1]){mn.push(rn[In].length);bn.push(dn[In]);rn[In].pop();if(0===rn[In].length){rn.splice(In,In+1);dn.splice(In,In+1)}}}if(0===rn[0].length){rn.shift();dn.shift()}pn.nodes.push(sn);pn.pos.push(mn);pn.lasts.push(bn)}return pn}function addressVector(Wt){var Pt=[Wt];if(null!=Wt.ownerElement){Wt=Wt.ownerElement;Pt.push(-1)}while(null!=Wt){var en=0;while(null!=Wt.previousSibling){Wt=Wt.previousSibling;en++}Pt.push(en);Wt=Wt.parentNode}return Pt}function addressComparator(Wt,Pt){var en=Math.min(Wt.length-1,Pt.length-1),tn=Wt.length,nn=Pt.length;if(Wt[0]===Pt[0])return 0;var an;for(var rn=0;rn0){rn.push(tn);tn=null;an=null}else if(getNodeName(en)getNodeName(tn)){rn.push(tn);tn=null;an=null}else if(en!==tn){rn.push(tn);tn=null;an=null}else{console.assert(en===tn,In);tn=null;an=null}}while(en){rn.push(en);en=Wt.shift()}while(tn){rn.push(tn);tn=Pt.shift()}return rn}function comparisonHelper(Wt,Pt,en,tn){var nn;if(tn)nn=In.number;else nn="boolean"===typeof Pt||"boolean"===typeof en?In["boolean"]:"number"===typeof Pt||"number"===typeof en?In.number:In.string;if("object"===typeof Pt&&"object"===typeof en){var an={};for(var rn=0;rn0&&parent===an[an.length-1])continue;an.push(parent);rn.push([1])}return{nodes:an,pos:rn,lasts:rn}},preceding:function preceding(Wt,Pt,en,tn){return precedingHelper(Wt,Pt,en,tn)},"preceding-sibling":function precedingSibling(Wt,Pt,en,tn){return followingSiblingHelper(Wt,Pt,en,tn,Array.prototype.pop,(function(){return this[this.length-1]}),(function(Wt){return Wt.previousSibling}),false,true)},self:function self(Wt,Pt,en,tn){var nn=[],an=[];var rn=new NodeMatcher(Pt,en,tn);for(var In=0;In0:!!Wt},last:function last(){console.assert(Array.isArray(this.pos));console.assert(Array.isArray(this.lasts));console.assert(1===this.pos.length);console.assert(1===this.lasts.length);console.assert(1===this.lasts[0].length);return this.lasts[0][0]},position:function position(){console.assert(Array.isArray(this.pos));console.assert(Array.isArray(this.lasts));console.assert(1===this.pos.length);console.assert(1===this.lasts.length);console.assert(1===this.pos[0].length);return this.pos[0][0]},count:function count(Wt){if("object"!==typeof Wt)throw new pn(pn.INVALID_EXPRESSION_ERR,"Position "+stream.position()+": Function count(node-set) "+"got wrong argument type: "+Wt);return Wt.nodes.length},id:function id(Wt){var Pt={nodes:[]};var en=this.nodes[0].ownerDocument||this.nodes[0];console.assert(en);var tn;if("object"===typeof Wt){tn=[];for(var nn=0;nn":function(Wt,Pt){return comparisonHelper((function(Wt,Pt){return In.number(Wt)>In.number(Pt)}),Wt,Pt,true)},">=":function(Wt,Pt){return comparisonHelper((function(Wt,Pt){return In.number(Wt)>=In.number(Pt)}),Wt,Pt,true)},and:function(Wt,Pt){return In["boolean"](Wt)&&In["boolean"](Pt)},or:function(Wt,Pt){return In["boolean"](Wt)||In["boolean"](Pt)},"|":function(Wt,Pt){return{nodes:mergeNodeLists(Wt.nodes,Pt.nodes)}},"=":function(Wt,Pt){if("object"===typeof Wt&&"object"===typeof Pt){var en={};for(var tn=0;tn{"use strict";const tn=en(78845);class AbortControllerImpl{constructor(Wt){this.signal=tn.createImpl(Wt,[])}abort(Wt){this.signal._signalAbort(Wt)}}Wt.exports={implementation:AbortControllerImpl}},3793:(Wt,Pt,en)=>{"use strict";const{setupForSimpleEventAccessors:tn}=en(15676);const{fireAnEvent:nn}=en(83350);const an=en(92697).implementation;const rn=en(78845);const In=en(16694);class AbortSignalImpl extends an{constructor(Wt,Pt,en){super(Wt,Pt,en);this._ownerDocument=Wt.document;this.reason=undefined;this.abortAlgorithms=new Set}get aborted(){return this.reason!==undefined}throwIfAborted(){if(this.aborted){throw this.reason}}static abort(Wt,Pt){const en=rn.createImpl(Wt,[]);if(Pt!==undefined){en.reason=Pt}else{en.reason=In.create(Wt,["The operation was aborted.","AbortError"])}return en}static timeout(Wt,Pt){const en=rn.createImpl(Wt,[]);Wt.setTimeout((()=>{en._signalAbort(In.create(Wt,["The operation timed out.","TimeoutError"]))}),Pt);return en}_signalAbort(Wt){if(this.aborted){return}if(Wt!==undefined){this.reason=Wt}else{this.reason=In.create(this._globalObject,["The operation was aborted.","AbortError"])}for(const Wt of this.abortAlgorithms){Wt()}this.abortAlgorithms.clear();nn("abort",this)}_addAlgorithm(Wt){if(this.aborted){return}this.abortAlgorithms.add(Wt)}_removeAlgorithm(Wt){this.abortAlgorithms.delete(Wt)}}tn(AbortSignalImpl.prototype,["abort"]);Wt.exports={implementation:AbortSignalImpl}},69936:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const{HTML_NS:nn}=en(98071);const{asciiLowercase:an}=en(97205);const{queueAttributeMutationRecord:rn}=en(69358);const{enqueueCECallbackReaction:In}=en(8348);Pt.hasAttribute=function(Wt,Pt){return Wt._attributeList.includes(Pt)};Pt.hasAttributeByName=function(Wt,Pt){return Wt._attributesByNameMap.has(Pt)};Pt.hasAttributeByNameNS=function(Wt,Pt,en){return Wt._attributeList.some((Wt=>Wt._localName===en&&Wt._namespace===Pt))};Pt.changeAttribute=(Wt,Pt,en)=>{const{_localName:tn,_namespace:nn,_value:an}=Pt;rn(Wt,tn,nn,an);if(Wt._ceState==="custom"){In(Wt,"attributeChangedCallback",[tn,an,en,nn])}Pt._value=en;Wt._attrModified(Pt._qualifiedName,en,an)};Pt.appendAttribute=function(Wt,Pt){const{_localName:en,_namespace:tn,_value:nn}=Pt;rn(Wt,en,tn,null);if(Wt._ceState==="custom"){In(Wt,"attributeChangedCallback",[en,null,nn,tn])}const an=Wt._attributeList;an.push(Pt);Pt._element=Wt;const sn=Pt._qualifiedName;const on=Wt._attributesByNameMap;let cn=on.get(sn);if(!cn){cn=[];on.set(sn,cn)}cn.push(Pt);Wt._attrModified(sn,nn,null)};Pt.removeAttribute=function(Wt,Pt){const{_localName:en,_namespace:tn,_value:nn}=Pt;rn(Wt,en,tn,nn);if(Wt._ceState==="custom"){In(Wt,"attributeChangedCallback",[en,nn,null,tn])}const an=Wt._attributeList;for(let en=0;en{const tn=Wt._element;if(tn===null){Wt._value=en}else{Pt.changeAttribute(tn,Wt,en)}};Pt.removeAttributeByName=function(Wt,en){const tn=Pt.getAttributeByName(Wt,en);if(tn!==null){Pt.removeAttribute(Wt,tn)}return tn};Pt.removeAttributeByNameNS=function(Wt,en,tn){const nn=Pt.getAttributeByNameNS(Wt,en,tn);if(nn!==null){Pt.removeAttribute(Wt,nn)}return nn};Pt.attributeNames=function(Wt){return Wt._attributeList.map((Wt=>Wt._qualifiedName))};Pt.hasAttributes=function(Wt){return Wt._attributeList.length>0}},5371:(Wt,Pt,en)=>{"use strict";const{setAnExistingAttributeValue:tn}=en(69936);const nn=en(52746).implementation;const{ATTRIBUTE_NODE:an}=en(7206);Pt.implementation=class AttrImpl extends nn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._namespace=en.namespace!==undefined?en.namespace:null;this._namespacePrefix=en.namespacePrefix!==undefined?en.namespacePrefix:null;this._localName=en.localName;this._value=en.value!==undefined?en.value:"";this._element=en.element!==undefined?en.element:null;this.nodeType=an;this.specified=true}get namespaceURI(){return this._namespace}get prefix(){return this._namespacePrefix}get localName(){return this._localName}get name(){return this._qualifiedName}get nodeName(){return this._qualifiedName}get value(){return this._value}set value(Wt){tn(this,Wt)}get ownerElement(){return this._element}get _qualifiedName(){if(this._namespacePrefix===null){return this._localName}return this._namespacePrefix+":"+this._localName}}},84817:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(87094);const an=en(69936);const{HTML_NS:rn}=en(98071);Pt.implementation=class NamedNodeMapImpl{constructor(Wt,Pt,en){this._element=en.element;this._globalObject=Wt}get _attributeList(){return this._element._attributeList}get[nn.supportedPropertyIndices](){return this._attributeList.keys()}get length(){return this._attributeList.length}item(Wt){if(Wt>=this._attributeList.length){return null}return this._attributeList[Wt]}get[nn.supportedPropertyNames](){const Wt=new Set(this._attributeList.map((Wt=>Wt._qualifiedName)));const Pt=this._element;if(Pt._namespaceURI===rn&&Pt._ownerDocument._parsingMode==="html"){for(const Pt of Wt){const en=Pt.toLowerCase();if(en!==Pt){Wt.delete(Pt)}}}return Wt}getNamedItem(Wt){return an.getAttributeByName(this._element,Wt)}getNamedItemNS(Wt,Pt){return an.getAttributeByNameNS(this._element,Wt,Pt)}setNamedItem(Wt){return an.setAttribute(this._element,Wt)}setNamedItemNS(Wt){return an.setAttribute(this._element,Wt)}removeNamedItem(Wt){const Pt=an.removeAttributeByName(this._element,Wt);if(Pt===null){throw tn.create(this._globalObject,["Tried to remove an attribute that was not present","NotFoundError"])}return Pt}removeNamedItemNS(Wt,Pt){const en=an.removeAttributeByNameNS(this._element,Wt,Pt);if(en===null){throw tn.create(this._globalObject,["Tried to remove an attribute that was not present","NotFoundError"])}return en}}},95449:(Wt,Pt,en)=>{"use strict";const tn=en(47180);const{isDisabled:nn}=en(10588);const{closest:an}=en(83521);const{fireAnEvent:rn}=en(83350);Pt.D=class DefaultConstraintValidationImpl{get willValidate(){return this._isCandidateForConstraintValidation()}get validity(){if(!this._validity){this._validity=tn.createImpl(this._globalObject,[],{element:this})}return this._validity}checkValidity(){if(!this._isCandidateForConstraintValidation()){return true}if(this._satisfiesConstraints()){return true}rn("invalid",this,undefined,{cancelable:true});return false}setCustomValidity(Wt){this._customValidityErrorMessage=Wt}reportValidity(){return this.checkValidity()}get validationMessage(){const{validity:Wt}=this;if(!this._isCandidateForConstraintValidation()||this._satisfiesConstraints()){return""}const Pt=Wt.customError;if(Pt){return this._customValidityErrorMessage}return"Constraints not satisfied"}_isCandidateForConstraintValidation(){return!nn(this)&&an(this,"datalist")===null&&!this._barredFromConstraintValidationSpecialization()}_isBarredFromConstraintValidation(){return!this._isCandidateForConstraintValidation()}_satisfiesConstraints(){return this.validity.valid}}},93399:(Wt,Pt)=>{"use strict";Pt.implementation=class ValidityStateImpl{constructor(Wt,Pt,en){const{element:tn,state:nn={}}=en;this._element=tn;this._state=nn}get badInput(){return this._failsConstraint("badInput")}get customError(){return this._element._customValidityErrorMessage!==""}get patternMismatch(){return this._failsConstraint("patternMismatch")}get rangeOverflow(){return this._failsConstraint("rangeOverflow")}get rangeUnderflow(){return this._failsConstraint("rangeUnderflow")}get stepMismatch(){return this._failsConstraint("stepMismatch")}get tooLong(){return this._failsConstraint("tooLong")}get tooShort(){return this._failsConstraint("tooShort")}get typeMismatch(){return this._failsConstraint("typeMismatch")}get valueMissing(){return this._failsConstraint("valueMissing")}_failsConstraint(Wt){const Pt=this._state[Wt];if(Pt){return Pt()}return false}get valid(){return!(this.badInput||this.valueMissing||this.customError||this.patternMismatch||this.rangeOverflow||this.rangeUnderflow||this.stepMismatch||this.tooLong||this.tooShort||this.typeMismatch)}}},32001:(Wt,Pt,en)=>{"use strict";const tn=en(76982);const nn=en(16694);class CryptoImpl{constructor(Wt){this._globalObject=Wt}getRandomValues(Wt){const Pt=getTypedArrayTypeName(Wt);if(!(Pt==="Int8Array"||Pt==="Uint8Array"||Pt==="Uint8ClampedArray"||Pt==="Int16Array"||Pt==="Uint16Array"||Pt==="Int32Array"||Pt==="Uint32Array"||Pt==="BigInt64Array"||Pt==="BigUint64Array")){throw nn.create(this._globalObject,[`getRandomValues() only accepts integer typed arrays`,"TypeMismatchError"])}if(Wt.byteLength>65536){throw nn.create(this._globalObject,[`getRandomValues() cannot generate more than 65536 bytes of random values; `+`${Wt.byteLength} bytes were requested`,"QuotaExceededError"])}tn.randomFillSync(Wt);return Wt}randomUUID(){return tn.randomUUID()}}Pt.implementation=CryptoImpl;function getTypedArrayTypeName(Wt){const Pt=Wt.constructor;const en=[Pt.name];let tn=Object.getPrototypeOf(Pt);while(tn){en.push(tn.name);tn=Object.getPrototypeOf(tn)}while(en.length>0&&en[en.length-1]!=="TypedArray"){en.pop()}en.reverse();return en[1]}},86096:(Wt,Pt,en)=>{"use strict";const tn=en(87094);Pt.implementation=class StyleSheetList{constructor(){this._list=[]}get length(){return this._list.length}item(Wt){const Pt=this._list[Wt];return Pt!==undefined?Pt:null}get[tn.supportedPropertyIndices](){return this._list.keys()}_add(Wt){const{_list:Pt}=this;if(!Pt.includes(Wt)){Pt.push(Wt)}}_remove(Wt){const{_list:Pt}=this;const en=Pt.indexOf(Wt);if(en>=0){Pt.splice(en,1)}}}},1742:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(16694);const an=en(7206);const{HTML_NS:rn}=en(98071);const{getHTMLElementInterface:In}=en(94202);const{shadowIncludingInclusiveDescendantsIterator:sn}=en(60470);const{isValidCustomElementName:on,tryUpgradeElement:cn,enqueueCEUpgradeReaction:dn}=en(8348);const un=en(87094);const pn=en(25295);const mn=en(76312);const bn=["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"];function convertToSequenceDOMString(Wt){if(!Wt||!Wt[Symbol.iterator]){throw new TypeError("Invalid Sequence")}return Array.from(Wt,tn.DOMString)}function isConstructor(Wt){if(typeof Wt!=="function"){return false}try{const Pt=new Proxy(Wt,{construct(){return{}}});new Pt;return true}catch{return false}}class CustomElementRegistryImpl{constructor(Wt){this._customElementDefinitions=[];this._elementDefinitionIsRunning=false;this._whenDefinedPromiseMap=Object.create(null);this._globalObject=Wt}define(Wt,Pt,en){const{_globalObject:tn}=this;const an=Pt.objectReference;if(!isConstructor(an)){throw new TypeError("Constructor argument is not a constructor.")}if(!on(Wt)){throw nn.create(tn,["Name argument is not a valid custom element name.","SyntaxError"])}const cn=this._customElementDefinitions.some((Pt=>Pt.name===Wt));if(cn){throw nn.create(tn,["This name has already been registered in the registry.","NotSupportedError"])}const Gn=this._customElementDefinitions.some((Wt=>Wt.objectReference===an));if(Gn){throw nn.create(tn,["This constructor has already been registered in the registry.","NotSupportedError"])}let hn=Wt;let Zn=null;if(en!==undefined&&en.extends){Zn=en.extends}if(Zn!==null){if(on(Zn)){throw nn.create(tn,["Option extends value can't be a valid custom element name.","NotSupportedError"])}const Wt=In(Zn);if(Wt===mn){throw nn.create(tn,[`${Zn} is an HTMLUnknownElement.`,"NotSupportedError"])}hn=Zn}if(this._elementDefinitionIsRunning){throw nn.create(tn,["Invalid nested custom element definition.","NotSupportedError"])}this._elementDefinitionIsRunning=true;let An=false;let Wn=false;let Nn=[];const gn={connectedCallback:null,disconnectedCallback:null,adoptedCallback:null,attributeChangedCallback:null};let yn;try{const{prototype:Wt}=an;if(typeof Wt!=="object"){throw new TypeError("Invalid constructor prototype.")}for(const Pt of bn){const en=Wt[Pt];if(en!==undefined){gn[Pt]=pn.convert(tn,en,{context:`The lifecycle callback "${Pt}"`})}}if(gn.attributeChangedCallback!==null){const Wt=an.observedAttributes;if(Wt!==undefined){Nn=convertToSequenceDOMString(Wt)}}let Pt=[];const en=an.disabledFeatures;if(en){Pt=convertToSequenceDOMString(en)}An=Pt.includes("internals");Wn=Pt.includes("shadow")}catch(Wt){yn=Wt}finally{this._elementDefinitionIsRunning=false}if(yn!==undefined){throw yn}const vn={name:Wt,localName:hn,constructor:Pt,objectReference:an,observedAttributes:Nn,lifecycleCallbacks:gn,disableShadow:Wn,disableInternals:An,constructionStack:[]};this._customElementDefinitions.push(vn);const Yn=un.implForWrapper(this._globalObject._document);const En=[];for(const Pt of sn(Yn)){if(Pt._namespaceURI===rn&&Pt._localName===hn&&(Zn===null||Pt._isValue===Wt)){En.push(Pt)}}for(const Wt of En){dn(Wt,vn)}if(this._whenDefinedPromiseMap[Wt]!==undefined){this._whenDefinedPromiseMap[Wt].resolve(an);delete this._whenDefinedPromiseMap[Wt]}}get(Wt){const Pt=this._customElementDefinitions.find((Pt=>Pt.name===Wt));return Pt&&Pt.objectReference}whenDefined(Wt){if(!on(Wt)){return Promise.reject(nn.create(this._globalObject,["Name argument is not a valid custom element name.","SyntaxError"]))}const Pt=this._customElementDefinitions.find((Pt=>Pt.name===Wt));if(Pt){return Promise.resolve(Pt.objectReference)}if(this._whenDefinedPromiseMap[Wt]===undefined){let Pt;const en=new Promise((Wt=>{Pt=Wt}));this._whenDefinedPromiseMap[Wt]={promise:en,resolve:Pt}}return this._whenDefinedPromiseMap[Wt].promise}upgrade(Wt){for(const Pt of sn(Wt)){if(Pt.nodeType===an.ELEMENT_NODE){cn(Pt)}}}}Wt.exports={implementation:CustomElementRegistryImpl}},72742:Wt=>{"use strict";class ElementInternalsImpl{constructor(Wt,Pt,{targetElement:en}){this._targetElement=en}get shadowRoot(){const Wt=this._targetElement._shadowRoot;if(!Wt||!Wt._availableToElementInternals){return null}return Wt}_reflectGetTheElement(){return this._targetElement}_reflectGetTheContentAttribute(Wt){return this._targetElement._internalContentAttributeMap.get(Wt)??null}_reflectSetTheContentAttribute(Wt,Pt){this._targetElement._internalContentAttributeMap.set(Wt,Pt)}_reflectDeleteTheContentAttribute(Wt){this._targetElement._internalContentAttributeMap.delete(Wt)}}Wt.exports={implementation:ElementInternalsImpl}},33111:(Wt,Pt,en)=>{"use strict";const tn=en(63399);const nn=en(18946);const{wrapperForImpl:an}=en(87094);Pt.createImpl=(Wt,Pt,{alwaysUseDocumentClass:en=false}={})=>{if(Pt.parsingMode==="xml"&&!en){return tn.createImpl(Wt,[],{options:Pt})}return nn.createImpl(Wt,[],{options:Pt})};Pt.createWrapper=(...Wt)=>an(Pt.createImpl(...Wt))},67352:(Wt,Pt,en)=>{"use strict";const{parseIntoDocument:tn}=en(13430);const nn=en(87094);const an=en(18946);Pt.implementation=class DOMParserImpl{constructor(Wt){this._globalObject=Wt}parseFromString(Wt,Pt){switch(String(Pt)){case"text/html":{return this.createScriptingDisabledDocument("html",Pt,Wt)}case"text/xml":case"application/xml":case"application/xhtml+xml":case"image/svg+xml":{try{return this.createScriptingDisabledDocument("xml",Pt,Wt)}catch(Wt){const en=this.createScriptingDisabledDocument("xml",Pt);const tn=en.createElementNS("http://www.mozilla.org/newlayout/xml/parsererror.xml","parsererror");tn.textContent=Wt.message;en.appendChild(tn);return en}}default:throw new TypeError("Invalid contentType")}}createScriptingDisabledDocument(Wt,Pt,en){const rn=an.createImpl(this._globalObject,[],{options:{parsingMode:Wt,encoding:"UTF-8",contentType:Pt,readyState:"complete",scriptingDisabled:true,url:nn.implForWrapper(this._globalObject._document).URL}});if(en!==undefined){tn(en,rn)}return rn}}},97066:(Wt,Pt,en)=>{"use strict";const{parseFragment:tn}=en(13430);const{HTML_NS:nn}=en(98071);const{isShadowRoot:an}=en(60470);const rn=en(7206);const{fragmentSerialization:In}=en(49446);Pt.D=class InnerHTMLImpl{get innerHTML(){return In(this,{outer:false,requireWellFormed:true,globalObject:this._globalObject})}set innerHTML(Wt){const Pt=an(this)?this.host:this;const en=tn(Wt,Pt);let In=this;if(this.nodeType===rn.ELEMENT_NODE&&this.localName==="template"&&this.namespaceURI===nn){In=this._templateContents}In._replaceAll(en)}}},22534:(Wt,Pt,en)=>{"use strict";const tn=en(3481);const nn=en(16694);const an=en(87094);Pt.implementation=class XMLSerializerImpl{constructor(Wt){this._globalObject=Wt}serializeToString(Wt){try{return tn(an.wrapperForImpl(Wt),{requireWellFormed:false})}catch(Wt){throw nn.create(this._globalObject,[Wt.message,"InvalidStateError"])}}}},70329:(Wt,Pt,en)=>{"use strict";const tn=en(7206);const{domSymbolTree:nn}=en(38542);Pt.getFirstChild=Wt=>Wt.firstChild;Pt.getChildNodes=Wt=>nn.childrenToArray(Wt);Pt.getParentNode=Wt=>Wt.parentNode;Pt.getAttrList=Wt=>{const Pt=[...Wt._attributeList];if(Wt._isValue&&Pt.every((Wt=>Wt.name!=="is"))){Pt.unshift({name:"is",namespace:null,prefix:null,value:Wt._isValue})}return Pt};Pt.getTagName=Wt=>Wt._qualifiedName;Pt.getNamespaceURI=Wt=>Wt.namespaceURI;Pt.getTextNodeContent=Pt.getCommentNodeContent=Wt=>Wt.data;Pt.getDocumentTypeNodeName=Wt=>Wt.name;Pt.getDocumentTypeNodePublicId=Wt=>Wt.publicId;Pt.getDocumentTypeNodeSystemId=Wt=>Wt.systemId;Pt.getTemplateContent=Wt=>Wt._templateContents;Pt.getDocumentMode=Wt=>Wt._mode;Pt.isTextNode=Wt=>Wt.nodeType===tn.TEXT_NODE;Pt.isCommentNode=Wt=>Wt.nodeType===tn.COMMENT_NODE;Pt.isDocumentTypeNode=Wt=>Wt.nodeType===tn.DOCUMENT_TYPE_NODE;Pt.isElementNode=Wt=>Wt.nodeType===tn.ELEMENT_NODE;Pt.setNodeSourceCodeLocation=(Wt,Pt)=>{Wt.sourceCodeLocation=Pt};Pt.getNodeSourceCodeLocation=Wt=>Wt.sourceCodeLocation;Pt.updateNodeSourceCodeLocation=(Wt,Pt)=>{Object.assign(Wt.sourceCodeLocation,Pt)}},49446:(Wt,Pt,en)=>{"use strict";const tn=en(3481);const nn=en(50069);const an=en(16694);const rn=en(87094);const In=en(70329);const sn=en(7206);Wt.exports.fragmentSerialization=(Wt,{outer:Pt,requireWellFormed:en,globalObject:on})=>{const cn=Wt.nodeType===sn.DOCUMENT_NODE?Wt:Wt._ownerDocument;if(cn._parsingMode==="html"){const en={...cn._parseOptions,treeAdapter:In};return Pt?nn.serializeOuter(Wt,en):nn.serialize(Wt,en)}const dn=Pt?[Wt]:Wt.childNodes;try{let Wt="";for(let Pt=0;Pt{"use strict";const tn=en(23934).implementation;const nn=en(80321);class CloseEventImpl extends tn{}CloseEventImpl.defaultInit=nn.convert(undefined,undefined);Pt.implementation=CloseEventImpl},89076:(Wt,Pt,en)=>{"use strict";const tn=en(1412).implementation;const nn=en(30155);class CompositionEventImpl extends tn{initCompositionEvent(Wt,Pt,en,tn,nn){if(this._dispatchFlag){return}this.initUIEvent(Wt,Pt,en,tn,0);this.data=nn}}CompositionEventImpl.defaultInit=nn.convert(undefined,undefined);Wt.exports={implementation:CompositionEventImpl}},80769:(Wt,Pt,en)=>{"use strict";const tn=en(23934).implementation;const nn=en(87404);class CustomEventImpl extends tn{initCustomEvent(Wt,Pt,en,tn){if(this._dispatchFlag){return}this.initEvent(Wt,Pt,en);this.detail=tn}}CustomEventImpl.defaultInit=nn.convert(undefined,undefined);Wt.exports={implementation:CustomEventImpl}},23472:(Wt,Pt,en)=>{"use strict";const tn=en(23934).implementation;const nn=en(92439);class ErrorEventImpl extends tn{}ErrorEventImpl.defaultInit=nn.convert(undefined,undefined);Wt.exports={implementation:ErrorEventImpl}},23934:(Wt,Pt,en)=>{"use strict";const tn=en(87094);const nn=en(31893);class EventImpl{constructor(Wt,Pt,en){const[tn,nn=this.constructor.defaultInit]=Pt;this.type=tn;this.bubbles=false;this.cancelable=false;for(const Wt in nn){if(Wt in this.constructor.defaultInit){this[Wt]=nn[Wt]}}for(const Wt in this.constructor.defaultInit){if(!(Wt in this)){this[Wt]=this.constructor.defaultInit[Wt]}}this.target=null;this.currentTarget=null;this.eventPhase=0;this._globalObject=Wt;this._initializedFlag=true;this._stopPropagationFlag=false;this._stopImmediatePropagationFlag=false;this._canceledFlag=false;this._inPassiveListenerFlag=false;this._dispatchFlag=false;this._path=[];this.isTrusted=en.isTrusted||false;this.timeStamp=Date.now()}_setTheCanceledFlag(){if(this.cancelable&&!this._inPassiveListenerFlag){this._canceledFlag=true}}get srcElement(){return this.target}get returnValue(){return!this._canceledFlag}set returnValue(Wt){if(Wt===false){this._setTheCanceledFlag()}}get defaultPrevented(){return this._canceledFlag}stopPropagation(){this._stopPropagationFlag=true}get cancelBubble(){return this._stopPropagationFlag}set cancelBubble(Wt){if(Wt){this._stopPropagationFlag=true}}stopImmediatePropagation(){this._stopPropagationFlag=true;this._stopImmediatePropagationFlag=true}preventDefault(){this._setTheCanceledFlag()}composedPath(){const Wt=[];const{currentTarget:Pt,_path:en}=this;if(en.length===0){return Wt}Wt.push(Pt);let nn=0;let an=0;for(let Wt=en.length-1;Wt>=0;Wt--){const{item:rn,rootOfClosedTree:In,slotInClosedTree:sn}=en[Wt];if(In){an++}if(rn===tn.implForWrapper(Pt)){nn=Wt;break}if(sn){an--}}let rn=an;let In=an;for(let Pt=nn-1;Pt>=0;Pt--){const{item:nn,rootOfClosedTree:an,slotInClosedTree:sn}=en[Pt];if(an){rn++}if(rn<=In){Wt.unshift(tn.wrapperForImpl(nn))}if(sn){rn--;if(rn{"use strict";class EventModifierMixinImpl{getModifierState(Wt){if(Wt==="Control"){return Boolean(this.ctrlKey)}if(["Alt","Meta","Shift"].includes(Wt)){return Boolean(this[`${Wt.toLowerCase()}Key`])}return Boolean(this[`modifier${Wt}`])}}Pt.D=EventModifierMixinImpl},92697:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(12323);const an=en(87094);const{nodeRoot:rn}=en(39471);const{isNode:In,isShadowRoot:sn,isSlotable:on,getEventTargetParent:cn,isShadowInclusiveAncestor:dn,retarget:un}=en(60470);const pn=en(8002);const mn={NONE:0,CAPTURING_PHASE:1,AT_TARGET:2,BUBBLING_PHASE:3};class EventTargetImpl{constructor(Wt){this._globalObject=Wt;this._eventListeners=Object.create(null)}addEventListener(Wt,Pt,en){en=normalizeEventHandlerOptions(en,["capture","once","passive"]);if(en.signal!==null&&en.signal.aborted){return}if(Pt===null){return}if(!this._eventListeners[Wt]){this._eventListeners[Wt]=[]}for(let tn=0;tn{this.removeEventListener(Wt,Pt,en)}))}}removeEventListener(Wt,Pt,en){en=normalizeEventHandlerOptions(en,["capture"]);if(Pt===null){return}if(!this._eventListeners[Wt]){return}for(let tn=0;tn=0&&Nn===-1;Pt--){if(Wt._path[Pt].target!==null){Nn=Pt}}const gn=Wt._path[Nn];tn=In(gn.target)&&sn(rn(gn.target))||In(gn.relatedTarget)&&sn(rn(gn.relatedTarget));if(nn!==null&&nn._legacyPreActivationBehavior){nn._legacyPreActivationBehavior()}for(let Pt=Wt._path.length-1;Pt>=0;--Pt){const en=Wt._path[Pt];if(en.target!==null){Wt.eventPhase=mn.AT_TARGET}else{Wt.eventPhase=mn.CAPTURING_PHASE}invokeEventListeners(en,Wt,"capturing")}for(let Pt=0;Pt=0;Wt--){const en=Pt._path[Wt];if(en.target){Pt.target=en.target;break}}Pt.relatedTarget=an.wrapperForImpl(Wt.relatedTarget);if(Pt._stopPropagationFlag){return}Pt.currentTarget=an.wrapperForImpl(Wt.item);const nn=Wt.item._eventListeners;innerInvokeEventListeners(Pt,nn,en,Wt.itemInShadowTree)}function innerInvokeEventListeners(Wt,Pt,en,tn){let rn=false;const{type:In,target:sn}=Wt;const on=an.wrapperForImpl(sn);if(!Pt||!Pt[In]){return rn}const cn=Pt[In].slice();for(let an=0;anWt!=="capture"))}for(const tn of Pt){en[tn]=Boolean(Wt[tn])}if(Wt.signal!==undefined){en.signal=Wt.signal}return en}function appendToEventPath(Wt,Pt,en,tn,nn,an){const on=In(Pt)&&sn(rn(Pt));const cn=sn(Pt)&&Pt.mode==="closed";Wt._path.push({item:Pt,itemInShadowTree:on,target:en,relatedTarget:tn,touchTargets:nn,rootOfClosedTree:cn,slotInClosedTree:an})}},35334:(Wt,Pt,en)=>{"use strict";const tn=en(1412).implementation;const nn=en(24237);class FocusEventImpl extends tn{}FocusEventImpl.defaultInit=nn.convert(undefined,undefined);Pt.implementation=FocusEventImpl},44694:(Wt,Pt,en)=>{"use strict";const tn=en(23934).implementation;const nn=en(57061);class HashChangeEventImpl extends tn{}HashChangeEventImpl.defaultInit=nn.convert(undefined,undefined);Wt.exports={implementation:HashChangeEventImpl}},8010:(Wt,Pt,en)=>{"use strict";const tn=en(1412).implementation;const nn=en(18929);class InputEventImpl extends tn{}InputEventImpl.defaultInit=nn.convert(undefined,undefined);Wt.exports={implementation:InputEventImpl}},26839:(Wt,Pt,en)=>{"use strict";const{mixin:tn}=en(35702);const nn=en(80220).D;const an=en(1412).implementation;const rn=en(38602);class KeyboardEventImpl extends an{initKeyboardEvent(Wt,Pt,en,tn,nn,an,rn,In,sn,on){if(this._dispatchFlag){return}this.initUIEvent(Wt,Pt,en,tn,0);this.key=nn;this.location=an;this.ctrlKey=rn;this.altKey=In;this.shiftKey=sn;this.metaKey=on}}tn(KeyboardEventImpl.prototype,nn.prototype);KeyboardEventImpl.defaultInit=rn.convert(undefined,undefined);Wt.exports={implementation:KeyboardEventImpl}},44613:(Wt,Pt,en)=>{"use strict";const tn=en(23934).implementation;const nn=en(83688);class MessageEventImpl extends tn{initMessageEvent(Wt,Pt,en,tn,nn,an,rn,In){if(this._dispatchFlag){return}this.initEvent(Wt,Pt,en);this.data=tn;this.origin=nn;this.lastEventId=an;this.source=rn;this.ports=In}}MessageEventImpl.defaultInit=nn.convert(undefined,undefined);Wt.exports={implementation:MessageEventImpl}},95889:(Wt,Pt,en)=>{"use strict";const{mixin:tn}=en(35702);const nn=en(80220).D;const an=en(1412).implementation;const rn=en(5316);class MouseEventImpl extends an{get x(){return this.clientX}get y(){return this.clientY}get pageX(){return this.clientX}get pageY(){return this.clientY}get offsetX(){return this.pageX}get offsetY(){return this.pageY}initMouseEvent(Wt,Pt,en,tn,nn,an,rn,In,sn,on,cn,dn,un,pn,mn){if(this._dispatchFlag){return}this.initUIEvent(Wt,Pt,en,tn,nn);this.screenX=an;this.screenY=rn;this.clientX=In;this.clientY=sn;this.ctrlKey=on;this.altKey=cn;this.shiftKey=dn;this.metaKey=un;this.button=pn;this.relatedTarget=mn}}tn(MouseEventImpl.prototype,nn.prototype);MouseEventImpl.defaultInit=rn.convert(undefined,undefined);Wt.exports={implementation:MouseEventImpl}},43402:(Wt,Pt,en)=>{"use strict";const tn=en(23934).implementation;const nn=en(92457);class PageTransitionEventImpl extends tn{initPageTransitionEvent(Wt,Pt,en,tn){if(this._dispatchFlag){return}this.initEvent(Wt,Pt,en);this.persisted=tn}}PageTransitionEventImpl.defaultInit=nn.convert(undefined,undefined);Pt.implementation=PageTransitionEventImpl},22374:(Wt,Pt,en)=>{"use strict";const tn=en(23934).implementation;const nn=en(34685);class PopStateEventImpl extends tn{}PopStateEventImpl.defaultInit=nn.convert(undefined,undefined);Pt.implementation=PopStateEventImpl},91561:(Wt,Pt,en)=>{"use strict";const tn=en(23934).implementation;const nn=en(10140);class ProgressEventImpl extends tn{}ProgressEventImpl.defaultInit=nn.convert(undefined,undefined);Wt.exports={implementation:ProgressEventImpl}},60563:(Wt,Pt,en)=>{"use strict";const tn=en(23934).implementation;const nn=en(38089);class StorageEventImpl extends tn{initStorageEvent(Wt,Pt,en,tn,nn,an,rn,In){if(this._dispatchFlag){return}this.initEvent(Wt,Pt,en);this.key=tn;this.oldValue=nn;this.newValue=an;this.url=rn;this.storageArea=In}}StorageEventImpl.defaultInit=nn.convert(undefined,undefined);Wt.exports={implementation:StorageEventImpl}},68710:(Wt,Pt,en)=>{"use strict";const tn=en(23934).implementation;const nn=en(17189);class SubmitEventImpl extends tn{}SubmitEventImpl.defaultInit=nn.convert(undefined,undefined);Wt.exports={implementation:SubmitEventImpl}},85861:(Wt,Pt,en)=>{"use strict";const tn=en(1412).implementation;const nn=en(93616);class TouchEventImpl extends tn{}TouchEventImpl.defaultInit=nn.convert(undefined,undefined);Wt.exports={implementation:TouchEventImpl}},1412:(Wt,Pt,en)=>{"use strict";const tn=en(87094);const nn=en(27019);const an=en(23934).implementation;function isWindow(Wt){if(typeof Wt!=="object"){return false}const Pt=tn.wrapperForImpl(Wt);if(typeof Pt==="object"){return Pt===Pt._globalProxy}return isWindow(tn.implForWrapper(Wt))}class UIEventImpl extends an{constructor(Wt,Pt,en){const tn=Pt[1];if(tn&&tn.view!==null&&tn.view!==undefined){if(!isWindow(tn.view)){throw new TypeError(`Failed to construct '${new.target.name.replace(/Impl$/,"")}': member view is not of `+"type Window.")}}super(Wt,Pt,en)}initUIEvent(Wt,Pt,en,tn,nn){if(tn!==null){if(!isWindow(tn)){throw new TypeError(`Failed to execute 'initUIEvent' on '${this.constructor.name.replace(/Impl$/,"")}': `+"parameter 4 is not of type 'Window'.")}}if(this._dispatchFlag){return}this.initEvent(Wt,Pt,en);this.view=tn;this.detail=nn}}UIEventImpl.defaultInit=nn.convert(undefined,undefined);Wt.exports={implementation:UIEventImpl}},84829:(Wt,Pt,en)=>{"use strict";const tn=en(95889).implementation;const nn=en(50816);class WheelEventImpl extends tn{}WheelEventImpl.defaultInit=nn.convert(undefined,undefined);Wt.exports={implementation:WheelEventImpl}},77275:(Wt,Pt,en)=>{"use strict";const{isForbidden:tn,isForbiddenResponse:nn,isPrivilegedNoCORSRequest:an,isNoCORSSafelistedRequest:rn,isCORSWhitelisted:In}=en(30409);const sn=en(55974);function assertName(Wt){if(!Wt.match(/^[!#$%&'*+\-.^`|~\w]+$/)){throw new TypeError("name is invalid")}}function assertValue(Wt){if(Wt.match(/[\0\r\n]/)){throw new TypeError("value is invalid")}}function normalizeValue(Wt){return Wt.replace(/^[\n\r\t ]+|[\n\r\t ]+$/g,"")}class HeadersImpl{constructor(Wt,Pt){this.guard="none";this.headersList=new sn;if(Pt[0]){this._fill(Pt[0])}}_fill(Wt){if(Array.isArray(Wt)){for(const Pt of Wt){if(Pt.length!==2){throw new TypeError("init is invalid")}this.append(Pt[0],Pt[1])}}else{for(const Pt of Object.keys(Wt)){this.append(Pt,Wt[Pt])}}}has(Wt){assertName(Wt);return this.headersList.contains(Wt)}get(Wt){assertName(Wt);return this.headersList.get(Wt)}_removePrivilegedNoCORSHeaders(){this.headersList.delete("range")}append(Wt,Pt){Pt=normalizeValue(Pt);assertName(Wt);assertValue(Pt);switch(this.guard){case"immutable":throw new TypeError("Headers is immutable");case"request":if(tn(Wt)){return}break;case"request-no-cors":{let en=this.get(Wt);if(en===null){en=Pt}else{en+=`, ${Pt}`}if(!In(Wt,Pt)){return}break}case"response":if(nn(Wt)){return}break}this.headersList.append(Wt,Pt);this._removePrivilegedNoCORSHeaders()}set(Wt,Pt){Pt=normalizeValue(Pt);assertName(Wt);assertValue(Pt);switch(this.guard){case"immutable":throw new TypeError("Headers is immutable");case"request":if(tn(Wt)){return}break;case"request-no-cors":{if(!In(Wt,Pt)){return}break}case"response":if(nn(Wt)){return}break}this.headersList.set(Wt,Pt);this._removePrivilegedNoCORSHeaders()}delete(Wt){assertName(Wt);switch(this.guard){case"immutable":throw new TypeError("Headers is immutable");case"request":if(tn(Wt)){return}break;case"request-no-cors":{if(!rn(Wt)&&!an(Wt)){return}break}case"response":if(nn(Wt)){return}break}this.headersList.delete(Wt);this._removePrivilegedNoCORSHeaders()}*[Symbol.iterator](){for(const Wt of this.headersList.sortAndCombine()){yield Wt}}}Pt.implementation=HeadersImpl},55974:Wt=>{"use strict";class HeaderList{constructor(){this.headers=new Map}append(Wt,Pt){const en=this.headers.get(Wt.toLowerCase());if(en){Wt=en[0].name;en.push({name:Wt,value:Pt})}else{this.headers.set(Wt.toLowerCase(),[{name:Wt,value:Pt}])}}contains(Wt){return this.headers.has(Wt.toLowerCase())}get(Wt){Wt=Wt.toLowerCase();const Pt=this.headers.get(Wt);if(!Pt){return null}return Pt.map((Wt=>Wt.value)).join(", ")}delete(Wt){this.headers.delete(Wt.toLowerCase())}set(Wt,Pt){const en=Wt.toLowerCase();this.headers.delete(en);this.headers.set(en,[{name:Wt,value:Pt}])}sortAndCombine(){const Wt=[...this.headers.keys()].sort();return Wt.map((Wt=>[Wt,this.get(Wt)]))}}Wt.exports=HeaderList},30409:(Wt,Pt,en)=>{"use strict";const tn=en(59344);const nn=new Set(["range"]);function isPrivilegedNoCORSRequest(Wt){return nn.has(Wt.toLowerCase())}const an=new Set([`accept`,`accept-language`,`content-language`,`content-type`]);function isNoCORSSafelistedRequest(Wt){return an.has(Wt.toLowerCase())}const rn=new Set([`accept-charset`,`accept-encoding`,`access-control-request-headers`,`access-control-request-method`,`connection`,`content-length`,`cookie`,`cookie2`,`date`,`dnt`,`expect`,`host`,`keep-alive`,`origin`,`referer`,`te`,`trailer`,`transfer-encoding`,`upgrade`,`via`]);function isForbidden(Wt){Wt=Wt.toLowerCase();return rn.has(Wt)||Wt.startsWith("proxy-")||Wt.startsWith("sec-")}const In=new Set(["set-cookie","set-cookie2"]);function isForbiddenResponse(Wt){return In.has(Wt.toLowerCase())}const sn=/[\x00-\x08\x0A-\x1F"():<>?@[\\\]{}\x7F]/;function isCORSWhitelisted(Wt,Pt){Wt=Wt.toLowerCase();switch(Wt){case"accept":if(Pt.match(sn)){return false}break;case"accept-language":case"content-language":if(Pt.match(/[^\x30-\x39\x41-\x5A\x61-\x7A *,\-.;=]/)){return false}break;case"content-type":{if(Pt.match(sn)){return false}const Wt=tn.parse(Pt);if(Wt===null){return false}if(!["application/x-www-form-urlencoded","multipart/form-data","text/plain"].includes(Wt.essence)){return false}break}default:return false}if(Buffer.from(Pt).length>128){return false}return true}Wt.exports={isPrivilegedNoCORSRequest:isPrivilegedNoCORSRequest,isNoCORSSafelistedRequest:isNoCORSSafelistedRequest,isForbidden:isForbidden,isForbiddenResponse:isForbiddenResponse,isCORSWhitelisted:isCORSWhitelisted}},23369:(Wt,Pt,en)=>{"use strict";const tn=en(42960);const{isArrayBuffer:nn}=en(87094);function convertLineEndingsToNative(Wt){return Wt.replace(/\r\n|\r|\n/g,"\n")}Pt.implementation=class BlobImpl{constructor(Wt,Pt){const en=Pt[0];const an=Pt[1];const rn=[];if(en!==undefined){for(const Wt of en){let Pt;if(nn(Wt)){Pt=Buffer.from(Wt)}else if(ArrayBuffer.isView(Wt)){Pt=Buffer.from(Wt.buffer,Wt.byteOffset,Wt.byteLength)}else if(tn.isImpl(Wt)){Pt=Wt._buffer}else{let en=Wt;if(an.endings==="native"){en=convertLineEndingsToNative(Wt)}Pt=Buffer.from(en)}rn.push(Pt)}}this._buffer=Buffer.concat(rn);this._globalObject=Wt;this.type=an.type;if(/[^\u0020-\u007E]/.test(this.type)){this.type=""}else{this.type=this.type.toLowerCase()}}get size(){return this._buffer.length}slice(Wt,Pt,en){const{size:nn}=this;let an,rn,In;if(Wt===undefined){an=0}else if(Wt<0){an=Math.max(nn+Wt,0)}else{an=Math.min(Wt,nn)}if(Pt===undefined){rn=nn}else if(Pt<0){rn=Math.max(nn+Pt,0)}else{rn=Math.min(Pt,nn)}if(en===undefined){In=""}else{In=en}const sn=Math.max(rn-an,0);const on=this._buffer;const cn=on.slice(an,an+sn);const dn=tn.createImpl(this._globalObject,[[],{type:In}],{});dn._buffer=cn;return dn}}},78202:(Wt,Pt,en)=>{"use strict";const tn=en(23369).implementation;Pt.implementation=class FileImpl extends tn{constructor(Wt,[Pt,en,tn],nn){super(Wt,[Pt,tn],nn);this.name=en;this.lastModified="lastModified"in tn?tn.lastModified:Date.now()}}},95346:(Wt,Pt,en)=>{"use strict";const tn=en(87094);Pt.implementation=class FileListImpl extends Array{constructor(){super(0)}item(Wt){return this[Wt]||null}get[tn.supportedPropertyIndices](){return this.keys()}}},78135:(Wt,Pt,en)=>{"use strict";const tn=en(86476);const nn=en(59344);const an=en(16694);const rn=en(92697).implementation;const In=en(90442);const{setupForSimpleEventAccessors:sn}=en(15676);const{fireAnEvent:on}=en(83350);const{copyToArrayBufferInNewRealm:cn}=en(71179);const dn=Object.freeze({EMPTY:0,LOADING:1,DONE:2});const un=["loadstart","progress","load","abort","error","loadend"];class FileReaderImpl extends rn{constructor(Wt,Pt,en){super(Wt,Pt,en);this.error=null;this.readyState=dn.EMPTY;this.result=null;this._globalObject=Wt;this._ownerDocument=Wt.document;this._terminated=false}readAsArrayBuffer(Wt){this._readFile(Wt,"buffer")}readAsBinaryString(Wt){this._readFile(Wt,"binaryString")}readAsDataURL(Wt){this._readFile(Wt,"dataURL")}readAsText(Wt,Pt){this._readFile(Wt,"text",tn.labelToName(Pt)||"UTF-8")}abort(){if(this.readyState===dn.EMPTY||this.readyState===dn.DONE){this.result=null;return}if(this.readyState===dn.LOADING){this.readyState=dn.DONE;this.result=null}this._terminated=true;this._fireProgressEvent("abort");this._fireProgressEvent("loadend")}_fireProgressEvent(Wt,Pt){on(Wt,this,In,Pt)}_readFile(Wt,Pt,en){if(this.readyState===dn.LOADING){throw an.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}this.readyState=dn.LOADING;setImmediate((()=>{if(this._terminated){this._terminated=false;return}this._fireProgressEvent("loadstart");let an=Wt._buffer;if(!an){an=Buffer.alloc(0)}this._fireProgressEvent("progress",{lengthComputable:!isNaN(Wt.size),total:Wt.size,loaded:an.length});setImmediate((()=>{if(this._terminated){this._terminated=false;return}switch(Pt){case"binaryString":{this.result=an.toString("binary");break}case"dataURL":{const Pt=nn.parse(Wt.type)||"application/octet-stream";this.result=`data:${Pt};base64,${an.toString("base64")}`;break}case"text":{this.result=tn.decode(an,en);break}case"buffer":default:{this.result=cn(an,this._globalObject);break}}this.readyState=dn.DONE;this._fireProgressEvent("load");this._fireProgressEvent("loadend")}))}))}}sn(FileReaderImpl.prototype,un);Pt.implementation=FileReaderImpl},92325:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="AbortController";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'AbortController'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["AbortController"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class AbortController{constructor(){return Pt.setup(Object.create(new.target.prototype),Wt,undefined)}abort(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'abort' called on an object that is not a valid instance of AbortController.")}const nn=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["any"](Pt,{context:"Failed to execute 'abort' on 'AbortController': parameter 1",globals:Wt})}nn.push(Pt)}return en[an].abort(...nn)}get signal(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get signal' called on an object that is not a valid instance of AbortController.")}return nn.getSameObject(this,"signal",(()=>nn.tryWrapperForImpl(en[an]["signal"])))}}Object.defineProperties(AbortController.prototype,{abort:{enumerable:true},signal:{enumerable:true},[Symbol.toStringTag]:{value:"AbortController",configurable:true}});rn[In]=AbortController;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:AbortController})};const on=en(62937)},78845:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(69117);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(29122);const on="AbortSignal";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'AbortSignal'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["AbortSignal"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class AbortSignal extends Wt.EventTarget{constructor(){throw new Wt.TypeError("Illegal constructor")}throwIfAborted(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'throwIfAborted' called on an object that is not a valid instance of AbortSignal.")}return en[rn].throwIfAborted()}get aborted(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get aborted' called on an object that is not a valid instance of AbortSignal.")}return en[rn]["aborted"]}get reason(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get reason' called on an object that is not a valid instance of AbortSignal.")}return en[rn]["reason"]}get onabort(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onabort' called on an object that is not a valid instance of AbortSignal.")}return nn.tryWrapperForImpl(en[rn]["onabort"])}set onabort(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onabort' called on an object that is not a valid instance of AbortSignal.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onabort' property on 'AbortSignal': The provided value"})}tn[rn]["onabort"]=en}static abort(){const Pt=[];{let en=arguments[0];if(en!==undefined){en=tn["any"](en,{context:"Failed to execute 'abort' on 'AbortSignal': parameter 1",globals:Wt})}Pt.push(en)}return nn.tryWrapperForImpl(dn.implementation.abort(Wt,...Pt))}static timeout(Pt){if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'timeout' on 'AbortSignal': 1 argument required, but only ${arguments.length} present.`)}const en=[];{let Pt=arguments[0];Pt=tn["unsigned long long"](Pt,{context:"Failed to execute 'timeout' on 'AbortSignal': parameter 1",globals:Wt,enforceRange:true});en.push(Pt)}return nn.tryWrapperForImpl(dn.implementation.timeout(Wt,...en))}}Object.defineProperties(AbortSignal.prototype,{throwIfAborted:{enumerable:true},aborted:{enumerable:true},reason:{enumerable:true},onabort:{enumerable:true},[Symbol.toStringTag]:{value:"AbortSignal",configurable:true}});Object.defineProperties(AbortSignal,{abort:{enumerable:true},timeout:{enumerable:true}});In[on]=AbortSignal;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:AbortSignal})};const dn=en(3793)},77632:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="AbstractRange";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'AbstractRange'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["AbstractRange"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class AbstractRange{constructor(){throw new Wt.TypeError("Illegal constructor")}get startContainer(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get startContainer' called on an object that is not a valid instance of AbstractRange.")}return nn.tryWrapperForImpl(en[an]["startContainer"])}get startOffset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get startOffset' called on an object that is not a valid instance of AbstractRange.")}return en[an]["startOffset"]}get endContainer(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get endContainer' called on an object that is not a valid instance of AbstractRange.")}return nn.tryWrapperForImpl(en[an]["endContainer"])}get endOffset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get endOffset' called on an object that is not a valid instance of AbstractRange.")}return en[an]["endOffset"]}get collapsed(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get collapsed' called on an object that is not a valid instance of AbstractRange.")}return en[an]["collapsed"]}}Object.defineProperties(AbstractRange.prototype,{startContainer:{enumerable:true},startOffset:{enumerable:true},endContainer:{enumerable:true},endOffset:{enumerable:true},collapsed:{enumerable:true},[Symbol.toStringTag]:{value:"AbstractRange",configurable:true}});tn[In]=AbstractRange;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:AbstractRange})};const on=en(63891)},95158:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(78845);const rn=en(61537);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{rn._convertInherit(Wt,Pt,en,{context:nn});{const an="once";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'once' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="passive";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'passive' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const tn="signal";let rn=Pt===undefined||Pt===null?undefined:Pt[tn];if(rn!==undefined){rn=an.convert(Wt,rn,{context:nn+" has member 'signal' that"});en[tn]=rn}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},34894:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{{const an="flatten";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'flatten' that",globals:Wt});en[an]=rn}else{en[an]=false}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},17552:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(8348).ceReactionsPreSteps;const rn=en(8348).ceReactionsPostSteps;const In=nn.implSymbol;const sn=nn.ctorRegistrySymbol;const on=en(24171);const cn="Attr";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,In)&&Wt[In]instanceof un.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof un.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Attr'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[sn]["Attr"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{on._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,In,{value:new un.implementation(en,tn,an),configurable:true});Wt[In][nn.wrapperSymbol]=Wt;if(un.init){un.init(Wt[In])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,In,{value:Object.create(un.implementation.prototype),configurable:true});tn[In][nn.wrapperSymbol]=tn;if(un.init){un.init(tn[In])}return tn[In]};const dn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>dn.has(Wt)))){return}const sn=nn.initCtorRegistry(Wt);class Attr extends Wt.Node{constructor(){throw new Wt.TypeError("Illegal constructor")}get namespaceURI(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get namespaceURI' called on an object that is not a valid instance of Attr.")}return en[In]["namespaceURI"]}get prefix(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get prefix' called on an object that is not a valid instance of Attr.")}return en[In]["prefix"]}get localName(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get localName' called on an object that is not a valid instance of Attr.")}return en[In]["localName"]}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of Attr.")}return en[In]["name"]}get value(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get value' called on an object that is not a valid instance of Attr.")}an(Wt);try{return en[In]["value"]}finally{rn(Wt)}}set value(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set value' called on an object that is not a valid instance of Attr.")}en=tn["DOMString"](en,{context:"Failed to set the 'value' property on 'Attr': The provided value",globals:Wt});an(Wt);try{nn[In]["value"]=en}finally{rn(Wt)}}get ownerElement(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ownerElement' called on an object that is not a valid instance of Attr.")}return nn.tryWrapperForImpl(en[In]["ownerElement"])}get specified(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get specified' called on an object that is not a valid instance of Attr.")}return en[In]["specified"]}}Object.defineProperties(Attr.prototype,{namespaceURI:{enumerable:true},prefix:{enumerable:true},localName:{enumerable:true},name:{enumerable:true},value:{enumerable:true},ownerElement:{enumerable:true},specified:{enumerable:true},[Symbol.toStringTag]:{value:"Attr",configurable:true}});sn[cn]=Attr;Object.defineProperty(Wt,cn,{configurable:true,writable:true,value:Attr})};const un=en(5371)},21183:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="BarProp";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'BarProp'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["BarProp"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class BarProp{constructor(){throw new Wt.TypeError("Illegal constructor")}get visible(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get visible' called on an object that is not a valid instance of BarProp.")}return en[an]["visible"]}}Object.defineProperties(BarProp.prototype,{visible:{enumerable:true},[Symbol.toStringTag]:{value:"BarProp",configurable:true}});tn[In]=BarProp;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:BarProp})};const on=en(55357)},32334:(Wt,Pt)=>{"use strict";const en=new Set(["blob","arraybuffer"]);Pt.enumerationValues=en;Pt.convert=(Wt,Pt,{context:tn="The provided value"}={})=>{const nn=`${Pt}`;if(!en.has(nn)){throw new Wt.TypeError(`${tn} '${nn}' is not a valid enumeration value for BinaryType`)}return nn}},42960:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(71675);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn="Blob";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Blob'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["Blob"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new cn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(cn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[rn])}return tn[rn]};const on=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>on.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class Blob{constructor(){const en=[];{let an=arguments[0];if(an!==undefined){if(!nn.isObject(an)){throw new Wt.TypeError("Failed to construct 'Blob': parameter 1"+" is not an iterable object.")}else{const en=[];const rn=an;for(let an of rn){if(Pt.is(an)){an=nn.implForWrapper(an)}else if(nn.isArrayBuffer(an)){}else if(ArrayBuffer.isView(an)){}else{an=tn["USVString"](an,{context:"Failed to construct 'Blob': parameter 1"+"'s element",globals:Wt})}en.push(an)}an=en}}en.push(an)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'Blob': parameter 2"});en.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,en)}slice(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'slice' called on an object that is not a valid instance of Blob.")}const an=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["long long"](Pt,{context:"Failed to execute 'slice' on 'Blob': parameter 1",globals:Wt,clamp:true})}an.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["long long"](Pt,{context:"Failed to execute 'slice' on 'Blob': parameter 2",globals:Wt,clamp:true})}an.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to execute 'slice' on 'Blob': parameter 3",globals:Wt})}an.push(Pt)}return nn.tryWrapperForImpl(en[rn].slice(...an))}get size(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get size' called on an object that is not a valid instance of Blob.")}return en[rn]["size"]}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of Blob.")}return en[rn]["type"]}}Object.defineProperties(Blob.prototype,{slice:{enumerable:true},size:{enumerable:true},type:{enumerable:true},[Symbol.toStringTag]:{value:"Blob",configurable:true}});In[sn]=Blob;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:Blob})};const cn=en(23369)},12283:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt.convert=(Wt,Pt,{context:en="The provided value"}={})=>{if(typeof Pt!=="function"){throw new Wt.TypeError(en+" is not a function")}function invokeTheCallbackFunction(Wt){const en=nn.tryWrapperForImpl(this);let tn;Wt=nn.tryWrapperForImpl(Wt);tn=Reflect.apply(Pt,en,[Wt])}invokeTheCallbackFunction.construct=Wt=>{Wt=nn.tryWrapperForImpl(Wt);let en=Reflect.construct(Pt,[Wt])};invokeTheCallbackFunction[nn.wrapperSymbol]=Pt;invokeTheCallbackFunction.objectReference=Pt;return invokeTheCallbackFunction}},71675:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(15992);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{{const tn="endings";let rn=Pt===undefined||Pt===null?undefined:Pt[tn];if(rn!==undefined){rn=an.convert(Wt,rn,{context:nn+" has member 'endings' that"});en[tn]=rn}else{en[tn]="transparent"}}{const an="type";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["DOMString"](rn,{context:nn+" has member 'type' that",globals:Wt});en[an]=rn}else{en[an]=""}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},37711:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In=en(40196);const sn="CDATASection";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'CDATASection'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["CDATASection"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{In._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const on=new Set(["Window"]);Pt.install=(Wt,Pt)=>{if(!Pt.some((Wt=>on.has(Wt)))){return}const en=nn.initCtorRegistry(Wt);class CDATASection extends Wt.Text{constructor(){throw new Wt.TypeError("Illegal constructor")}}Object.defineProperties(CDATASection.prototype,{[Symbol.toStringTag]:{value:"CDATASection",configurable:true}});en[sn]=CDATASection;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:CDATASection})};const cn=en(40590)},30052:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(24171);const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn="CharacterData";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof un.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof un.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'CharacterData'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["CharacterData"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{an._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new un.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(un.init){un.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(un.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(un.init){un.init(tn[sn])}return tn[sn]};const dn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>dn.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class CharacterData extends Wt.Node{constructor(){throw new Wt.TypeError("Illegal constructor")}substringData(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'substringData' called on an object that is not a valid instance of CharacterData.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'substringData' on 'CharacterData': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'substringData' on 'CharacterData': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'substringData' on 'CharacterData': parameter 2",globals:Wt});rn.push(Pt)}return an[sn].substringData(...rn)}appendData(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'appendData' called on an object that is not a valid instance of CharacterData.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'appendData' on 'CharacterData': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'appendData' on 'CharacterData': parameter 1",globals:Wt});an.push(Pt)}return nn[sn].appendData(...an)}insertData(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'insertData' called on an object that is not a valid instance of CharacterData.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'insertData' on 'CharacterData': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'insertData' on 'CharacterData': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'insertData' on 'CharacterData': parameter 2",globals:Wt});rn.push(Pt)}return an[sn].insertData(...rn)}deleteData(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'deleteData' called on an object that is not a valid instance of CharacterData.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'deleteData' on 'CharacterData': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'deleteData' on 'CharacterData': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'deleteData' on 'CharacterData': parameter 2",globals:Wt});rn.push(Pt)}return an[sn].deleteData(...rn)}replaceData(en,nn,an){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'replaceData' called on an object that is not a valid instance of CharacterData.")}if(arguments.length<3){throw new Wt.TypeError(`Failed to execute 'replaceData' on 'CharacterData': 3 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'replaceData' on 'CharacterData': parameter 1",globals:Wt});In.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'replaceData' on 'CharacterData': parameter 2",globals:Wt});In.push(Pt)}{let Pt=arguments[2];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'replaceData' on 'CharacterData': parameter 3",globals:Wt});In.push(Pt)}return rn[sn].replaceData(...In)}before(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'before' called on an object that is not a valid instance of CharacterData.")}const on=[];for(let Pt=0;Pt{"use strict";const tn=en(37125);const nn=en(87094);const an=en(80321);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(94431);const on="CloseEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'CloseEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["CloseEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class CloseEvent extends Wt.Event{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'CloseEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'CloseEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'CloseEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}get wasClean(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get wasClean' called on an object that is not a valid instance of CloseEvent.")}return en[rn]["wasClean"]}get code(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get code' called on an object that is not a valid instance of CloseEvent.")}return en[rn]["code"]}get reason(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get reason' called on an object that is not a valid instance of CloseEvent.")}return en[rn]["reason"]}}Object.defineProperties(CloseEvent.prototype,{wasClean:{enumerable:true},code:{enumerable:true},reason:{enumerable:true},[Symbol.toStringTag]:{value:"CloseEvent",configurable:true}});In[on]=CloseEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:CloseEvent})};const dn=en(53642)},80321:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(31893);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:nn});{const an="code";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unsigned short"](rn,{context:nn+" has member 'code' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="reason";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["USVString"](rn,{context:nn+" has member 'reason' that",globals:Wt});en[an]=rn}else{en[an]=""}}{const an="wasClean";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'wasClean' that",globals:Wt});en[an]=rn}else{en[an]=false}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},22918:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In=en(30052);const sn="Comment";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Comment'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["Comment"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{In._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const on=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>on.has(Wt)))){return}const an=nn.initCtorRegistry(Wt);class Comment extends Wt.CharacterData{constructor(){const en=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to construct 'Comment': parameter 1",globals:Wt})}else{Pt=""}en.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,en)}}Object.defineProperties(Comment.prototype,{[Symbol.toStringTag]:{value:"Comment",configurable:true}});an[sn]=Comment;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:Comment})};const cn=en(72773)},2921:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(30155);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(38921);const on="CompositionEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'CompositionEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["CompositionEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class CompositionEvent extends Wt.UIEvent{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'CompositionEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'CompositionEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'CompositionEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}initCompositionEvent(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'initCompositionEvent' called on an object that is not a valid instance of CompositionEvent.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'initCompositionEvent' on 'CompositionEvent': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initCompositionEvent' on 'CompositionEvent': parameter 1",globals:Wt});In.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initCompositionEvent' on 'CompositionEvent': parameter 2",globals:Wt})}else{Pt=false}In.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initCompositionEvent' on 'CompositionEvent': parameter 3",globals:Wt})}else{Pt=false}In.push(Pt)}{let Wt=arguments[3];if(Wt!==undefined){if(Wt===null||Wt===undefined){Wt=null}else{Wt=nn.tryImplForWrapper(Wt)}}else{Wt=null}In.push(Wt)}{let Pt=arguments[4];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initCompositionEvent' on 'CompositionEvent': parameter 5",globals:Wt})}else{Pt=""}In.push(Pt)}return an[rn].initCompositionEvent(...In)}get data(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get data' called on an object that is not a valid instance of CompositionEvent.")}return en[rn]["data"]}}Object.defineProperties(CompositionEvent.prototype,{initCompositionEvent:{enumerable:true},data:{enumerable:true},[Symbol.toStringTag]:{value:"CompositionEvent",configurable:true}});In[on]=CompositionEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:CompositionEvent})};const dn=en(89076)},30155:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(27019);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:nn});{const an="data";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["DOMString"](rn,{context:nn+" has member 'data' that",globals:Wt});en[an]=rn}else{en[an]=""}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},19346:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="Crypto";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Crypto'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["Crypto"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class Crypto{constructor(){throw new Wt.TypeError("Illegal constructor")}getRandomValues(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'getRandomValues' called on an object that is not a valid instance of Crypto.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getRandomValues' on 'Crypto': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];if(ArrayBuffer.isView(Pt)){}else{throw new Wt.TypeError("Failed to execute 'getRandomValues' on 'Crypto': parameter 1"+" is not of any supported type.")}nn.push(Pt)}return tn[an].getRandomValues(...nn)}randomUUID(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'randomUUID' called on an object that is not a valid instance of Crypto.")}return en[an].randomUUID()}}Object.defineProperties(Crypto.prototype,{getRandomValues:{enumerable:true},randomUUID:{enumerable:true},[Symbol.toStringTag]:{value:"Crypto",configurable:true}});tn[In]=Crypto;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:Crypto})};const on=en(32001)},30292:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt.convert=(Wt,Pt,{context:en="The provided value"}={})=>{if(typeof Pt!=="function"){throw new Wt.TypeError(en+" is not a function")}function invokeTheCallbackFunction(){const an=nn.tryWrapperForImpl(this);let rn;rn=Reflect.apply(Pt,an,[]);rn=tn["any"](rn,{context:en,globals:Wt});return rn}invokeTheCallbackFunction.construct=()=>{let nn=Reflect.construct(Pt,[]);nn=tn["any"](nn,{context:en,globals:Wt});return nn};invokeTheCallbackFunction[nn.wrapperSymbol]=Pt;invokeTheCallbackFunction.objectReference=Pt;return invokeTheCallbackFunction}},46193:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(30292);const rn=en(93202);const In=en(8348).ceReactionsPreSteps;const sn=en(8348).ceReactionsPostSteps;const on=en(24171);const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un="CustomElementRegistry";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof mn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof mn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'CustomElementRegistry'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["CustomElementRegistry"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new mn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(mn.init){mn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(mn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(mn.init){mn.init(tn[cn])}return tn[cn]};const pn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>pn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class CustomElementRegistry{constructor(){throw new Wt.TypeError("Illegal constructor")}define(en,nn){const on=this!==null&&this!==undefined?this:Wt;if(!Pt.is(on)){throw new Wt.TypeError("'define' called on an object that is not a valid instance of CustomElementRegistry.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'define' on 'CustomElementRegistry': 2 arguments required, but only ${arguments.length} present.`)}const dn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'define' on 'CustomElementRegistry': parameter 1",globals:Wt});dn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'define' on 'CustomElementRegistry': parameter 2"});dn.push(Pt)}{let Pt=arguments[2];Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'define' on 'CustomElementRegistry': parameter 3"});dn.push(Pt)}In(Wt);try{return on[cn].define(...dn)}finally{sn(Wt)}}get(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'get' called on an object that is not a valid instance of CustomElementRegistry.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'get' on 'CustomElementRegistry': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'get' on 'CustomElementRegistry': parameter 1",globals:Wt});an.push(Pt)}return nn[cn].get(...an)}whenDefined(en){try{const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'whenDefined' called on an object that is not a valid instance of CustomElementRegistry.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'whenDefined' on 'CustomElementRegistry': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'whenDefined' on 'CustomElementRegistry': parameter 1",globals:Wt});an.push(Pt)}return nn.tryWrapperForImpl(en[cn].whenDefined(...an))}catch(Pt){return Wt.Promise.reject(Pt)}}upgrade(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'upgrade' called on an object that is not a valid instance of CustomElementRegistry.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'upgrade' on 'CustomElementRegistry': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=on.convert(Wt,Pt,{context:"Failed to execute 'upgrade' on 'CustomElementRegistry': parameter 1"});nn.push(Pt)}In(Wt);try{return tn[cn].upgrade(...nn)}finally{sn(Wt)}}}Object.defineProperties(CustomElementRegistry.prototype,{define:{enumerable:true},get:{enumerable:true},whenDefined:{enumerable:true},upgrade:{enumerable:true},[Symbol.toStringTag]:{value:"CustomElementRegistry",configurable:true}});dn[un]=CustomElementRegistry;Object.defineProperty(Wt,un,{configurable:true,writable:true,value:CustomElementRegistry})};const mn=en(1742)},73050:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(87404);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(94431);const on="CustomEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'CustomEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["CustomEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class CustomEvent extends Wt.Event{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'CustomEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'CustomEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'CustomEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}initCustomEvent(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'initCustomEvent' called on an object that is not a valid instance of CustomEvent.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'initCustomEvent' on 'CustomEvent': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initCustomEvent' on 'CustomEvent': parameter 1",globals:Wt});an.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initCustomEvent' on 'CustomEvent': parameter 2",globals:Wt})}else{Pt=false}an.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initCustomEvent' on 'CustomEvent': parameter 3",globals:Wt})}else{Pt=false}an.push(Pt)}{let Pt=arguments[3];if(Pt!==undefined){Pt=tn["any"](Pt,{context:"Failed to execute 'initCustomEvent' on 'CustomEvent': parameter 4",globals:Wt})}else{Pt=null}an.push(Pt)}return nn[rn].initCustomEvent(...an)}get detail(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get detail' called on an object that is not a valid instance of CustomEvent.")}return en[rn]["detail"]}}Object.defineProperties(CustomEvent.prototype,{initCustomEvent:{enumerable:true},detail:{enumerable:true},[Symbol.toStringTag]:{value:"CustomEvent",configurable:true}});In[on]=CustomEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:CustomEvent})};const dn=en(80769)},87404:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(31893);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:nn});{const an="detail";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["any"](rn,{context:nn+" has member 'detail' that",globals:Wt});en[an]=rn}else{en[an]=null}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},16694:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="DOMException";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'DOMException'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["DOMException"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class DOMException{constructor(){const en=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to construct 'DOMException': parameter 1",globals:Wt})}else{Pt=""}en.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to construct 'DOMException': parameter 2",globals:Wt})}else{Pt="Error"}en.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,en)}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of DOMException.")}return en[an]["name"]}get message(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get message' called on an object that is not a valid instance of DOMException.")}return en[an]["message"]}get code(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get code' called on an object that is not a valid instance of DOMException.")}return en[an]["code"]}}Object.defineProperties(DOMException.prototype,{name:{enumerable:true},message:{enumerable:true},code:{enumerable:true},[Symbol.toStringTag]:{value:"DOMException",configurable:true},INDEX_SIZE_ERR:{value:1,enumerable:true},DOMSTRING_SIZE_ERR:{value:2,enumerable:true},HIERARCHY_REQUEST_ERR:{value:3,enumerable:true},WRONG_DOCUMENT_ERR:{value:4,enumerable:true},INVALID_CHARACTER_ERR:{value:5,enumerable:true},NO_DATA_ALLOWED_ERR:{value:6,enumerable:true},NO_MODIFICATION_ALLOWED_ERR:{value:7,enumerable:true},NOT_FOUND_ERR:{value:8,enumerable:true},NOT_SUPPORTED_ERR:{value:9,enumerable:true},INUSE_ATTRIBUTE_ERR:{value:10,enumerable:true},INVALID_STATE_ERR:{value:11,enumerable:true},SYNTAX_ERR:{value:12,enumerable:true},INVALID_MODIFICATION_ERR:{value:13,enumerable:true},NAMESPACE_ERR:{value:14,enumerable:true},INVALID_ACCESS_ERR:{value:15,enumerable:true},VALIDATION_ERR:{value:16,enumerable:true},TYPE_MISMATCH_ERR:{value:17,enumerable:true},SECURITY_ERR:{value:18,enumerable:true},NETWORK_ERR:{value:19,enumerable:true},ABORT_ERR:{value:20,enumerable:true},URL_MISMATCH_ERR:{value:21,enumerable:true},QUOTA_EXCEEDED_ERR:{value:22,enumerable:true},TIMEOUT_ERR:{value:23,enumerable:true},INVALID_NODE_TYPE_ERR:{value:24,enumerable:true},DATA_CLONE_ERR:{value:25,enumerable:true}});Object.defineProperties(DOMException,{INDEX_SIZE_ERR:{value:1,enumerable:true},DOMSTRING_SIZE_ERR:{value:2,enumerable:true},HIERARCHY_REQUEST_ERR:{value:3,enumerable:true},WRONG_DOCUMENT_ERR:{value:4,enumerable:true},INVALID_CHARACTER_ERR:{value:5,enumerable:true},NO_DATA_ALLOWED_ERR:{value:6,enumerable:true},NO_MODIFICATION_ALLOWED_ERR:{value:7,enumerable:true},NOT_FOUND_ERR:{value:8,enumerable:true},NOT_SUPPORTED_ERR:{value:9,enumerable:true},INUSE_ATTRIBUTE_ERR:{value:10,enumerable:true},INVALID_STATE_ERR:{value:11,enumerable:true},SYNTAX_ERR:{value:12,enumerable:true},INVALID_MODIFICATION_ERR:{value:13,enumerable:true},NAMESPACE_ERR:{value:14,enumerable:true},INVALID_ACCESS_ERR:{value:15,enumerable:true},VALIDATION_ERR:{value:16,enumerable:true},TYPE_MISMATCH_ERR:{value:17,enumerable:true},SECURITY_ERR:{value:18,enumerable:true},NETWORK_ERR:{value:19,enumerable:true},ABORT_ERR:{value:20,enumerable:true},URL_MISMATCH_ERR:{value:21,enumerable:true},QUOTA_EXCEEDED_ERR:{value:22,enumerable:true},TIMEOUT_ERR:{value:23,enumerable:true},INVALID_NODE_TYPE_ERR:{value:24,enumerable:true},DATA_CLONE_ERR:{value:25,enumerable:true}});rn[In]=DOMException;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:DOMException})};const on=en(64629)},26017:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(80842);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn="DOMImplementation";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'DOMImplementation'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["DOMImplementation"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new cn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(cn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[rn])}return tn[rn]};const on=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>on.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class DOMImplementation{constructor(){throw new Wt.TypeError("Illegal constructor")}createDocumentType(en,an,In){const sn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(sn)){throw new Wt.TypeError("'createDocumentType' called on an object that is not a valid instance of DOMImplementation.")}if(arguments.length<3){throw new Wt.TypeError(`Failed to execute 'createDocumentType' on 'DOMImplementation': 3 arguments required, but only ${arguments.length} present.`)}const on=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createDocumentType' on 'DOMImplementation': parameter 1",globals:Wt});on.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createDocumentType' on 'DOMImplementation': parameter 2",globals:Wt});on.push(Pt)}{let Pt=arguments[2];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createDocumentType' on 'DOMImplementation': parameter 3",globals:Wt});on.push(Pt)}return nn.tryWrapperForImpl(sn[rn].createDocumentType(...on))}createDocument(en,In){const sn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(sn)){throw new Wt.TypeError("'createDocument' called on an object that is not a valid instance of DOMImplementation.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'createDocument' on 'DOMImplementation': 2 arguments required, but only ${arguments.length} present.`)}const on=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createDocument' on 'DOMImplementation': parameter 1",globals:Wt})}on.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createDocument' on 'DOMImplementation': parameter 2",globals:Wt,treatNullAsEmptyString:true});on.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{Pt=an.convert(Wt,Pt,{context:"Failed to execute 'createDocument' on 'DOMImplementation': parameter 3"})}}else{Pt=null}on.push(Pt)}return nn.tryWrapperForImpl(sn[rn].createDocument(...on))}createHTMLDocument(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'createHTMLDocument' called on an object that is not a valid instance of DOMImplementation.")}const an=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createHTMLDocument' on 'DOMImplementation': parameter 1",globals:Wt})}an.push(Pt)}return nn.tryWrapperForImpl(en[rn].createHTMLDocument(...an))}hasFeature(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'hasFeature' called on an object that is not a valid instance of DOMImplementation.")}return en[rn].hasFeature()}}Object.defineProperties(DOMImplementation.prototype,{createDocumentType:{enumerable:true},createDocument:{enumerable:true},createHTMLDocument:{enumerable:true},hasFeature:{enumerable:true},[Symbol.toStringTag]:{value:"DOMImplementation",configurable:true}});In[sn]=DOMImplementation;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:DOMImplementation})};const cn=en(6423)},93136:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(36521);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn="DOMParser";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'DOMParser'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["DOMParser"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new cn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(cn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[rn])}return tn[rn]};const on=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>on.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class DOMParser{constructor(){return Pt.setup(Object.create(new.target.prototype),Wt,undefined)}parseFromString(en,In){const sn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(sn)){throw new Wt.TypeError("'parseFromString' called on an object that is not a valid instance of DOMParser.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'parseFromString' on 'DOMParser': 2 arguments required, but only ${arguments.length} present.`)}const on=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'parseFromString' on 'DOMParser': parameter 1",globals:Wt});on.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'parseFromString' on 'DOMParser': parameter 2"});on.push(Pt)}return nn.tryWrapperForImpl(sn[rn].parseFromString(...on))}}Object.defineProperties(DOMParser.prototype,{parseFromString:{enumerable:true},[Symbol.toStringTag]:{value:"DOMParser",configurable:true}});In[sn]=DOMParser;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:DOMParser})};const cn=en(67352)},8469:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(46199);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(59163);const on="DOMRect";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'DOMRect'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["DOMRect"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class DOMRect extends Wt.DOMRectReadOnly{constructor(){const en=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["unrestricted double"](Pt,{context:"Failed to construct 'DOMRect': parameter 1",globals:Wt})}else{Pt=0}en.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["unrestricted double"](Pt,{context:"Failed to construct 'DOMRect': parameter 2",globals:Wt})}else{Pt=0}en.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["unrestricted double"](Pt,{context:"Failed to construct 'DOMRect': parameter 3",globals:Wt})}else{Pt=0}en.push(Pt)}{let Pt=arguments[3];if(Pt!==undefined){Pt=tn["unrestricted double"](Pt,{context:"Failed to construct 'DOMRect': parameter 4",globals:Wt})}else{Pt=0}en.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,en)}get x(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get x' called on an object that is not a valid instance of DOMRect.")}return en[rn]["x"]}set x(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set x' called on an object that is not a valid instance of DOMRect.")}en=tn["unrestricted double"](en,{context:"Failed to set the 'x' property on 'DOMRect': The provided value",globals:Wt});nn[rn]["x"]=en}get y(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get y' called on an object that is not a valid instance of DOMRect.")}return en[rn]["y"]}set y(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set y' called on an object that is not a valid instance of DOMRect.")}en=tn["unrestricted double"](en,{context:"Failed to set the 'y' property on 'DOMRect': The provided value",globals:Wt});nn[rn]["y"]=en}get width(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get width' called on an object that is not a valid instance of DOMRect.")}return en[rn]["width"]}set width(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set width' called on an object that is not a valid instance of DOMRect.")}en=tn["unrestricted double"](en,{context:"Failed to set the 'width' property on 'DOMRect': The provided value",globals:Wt});nn[rn]["width"]=en}get height(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get height' called on an object that is not a valid instance of DOMRect.")}return en[rn]["height"]}set height(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set height' called on an object that is not a valid instance of DOMRect.")}en=tn["unrestricted double"](en,{context:"Failed to set the 'height' property on 'DOMRect': The provided value",globals:Wt});nn[rn]["height"]=en}static fromRect(){const Pt=[];{let en=arguments[0];en=an.convert(Wt,en,{context:"Failed to execute 'fromRect' on 'DOMRect': parameter 1"});Pt.push(en)}return nn.tryWrapperForImpl(dn.implementation.fromRect(Wt,...Pt))}}Object.defineProperties(DOMRect.prototype,{x:{enumerable:true},y:{enumerable:true},width:{enumerable:true},height:{enumerable:true},[Symbol.toStringTag]:{value:"DOMRect",configurable:true}});Object.defineProperties(DOMRect,{fromRect:{enumerable:true}});In[on]=DOMRect;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:DOMRect})};const dn=en(78467)},46199:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{{const an="height";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unrestricted double"](rn,{context:nn+" has member 'height' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="width";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unrestricted double"](rn,{context:nn+" has member 'width' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="x";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unrestricted double"](rn,{context:nn+" has member 'x' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="y";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unrestricted double"](rn,{context:nn+" has member 'y' that",globals:Wt});en[an]=rn}else{en[an]=0}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},59163:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(46199);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn="DOMRectReadOnly";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'DOMRectReadOnly'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["DOMRectReadOnly"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new cn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(cn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[rn])}return tn[rn]};const on=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>on.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class DOMRectReadOnly{constructor(){const en=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["unrestricted double"](Pt,{context:"Failed to construct 'DOMRectReadOnly': parameter 1",globals:Wt})}else{Pt=0}en.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["unrestricted double"](Pt,{context:"Failed to construct 'DOMRectReadOnly': parameter 2",globals:Wt})}else{Pt=0}en.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["unrestricted double"](Pt,{context:"Failed to construct 'DOMRectReadOnly': parameter 3",globals:Wt})}else{Pt=0}en.push(Pt)}{let Pt=arguments[3];if(Pt!==undefined){Pt=tn["unrestricted double"](Pt,{context:"Failed to construct 'DOMRectReadOnly': parameter 4",globals:Wt})}else{Pt=0}en.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,en)}toJSON(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'toJSON' called on an object that is not a valid instance of DOMRectReadOnly.")}return en[rn].toJSON()}get x(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get x' called on an object that is not a valid instance of DOMRectReadOnly.")}return en[rn]["x"]}get y(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get y' called on an object that is not a valid instance of DOMRectReadOnly.")}return en[rn]["y"]}get width(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get width' called on an object that is not a valid instance of DOMRectReadOnly.")}return en[rn]["width"]}get height(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get height' called on an object that is not a valid instance of DOMRectReadOnly.")}return en[rn]["height"]}get top(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get top' called on an object that is not a valid instance of DOMRectReadOnly.")}return en[rn]["top"]}get right(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get right' called on an object that is not a valid instance of DOMRectReadOnly.")}return en[rn]["right"]}get bottom(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get bottom' called on an object that is not a valid instance of DOMRectReadOnly.")}return en[rn]["bottom"]}get left(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get left' called on an object that is not a valid instance of DOMRectReadOnly.")}return en[rn]["left"]}static fromRect(){const Pt=[];{let en=arguments[0];en=an.convert(Wt,en,{context:"Failed to execute 'fromRect' on 'DOMRectReadOnly': parameter 1"});Pt.push(en)}return nn.tryWrapperForImpl(cn.implementation.fromRect(Wt,...Pt))}}Object.defineProperties(DOMRectReadOnly.prototype,{toJSON:{enumerable:true},x:{enumerable:true},y:{enumerable:true},width:{enumerable:true},height:{enumerable:true},top:{enumerable:true},right:{enumerable:true},bottom:{enumerable:true},left:{enumerable:true},[Symbol.toStringTag]:{value:"DOMRectReadOnly",configurable:true}});Object.defineProperties(DOMRectReadOnly,{fromRect:{enumerable:true}});In[sn]=DOMRectReadOnly;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:DOMRectReadOnly})};const cn=en(82025)},94258:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(8348).ceReactionsPreSteps;const rn=en(8348).ceReactionsPostSteps;const In=nn.implSymbol;const sn=nn.ctorRegistrySymbol;const on="DOMStringMap";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,In)&&Wt[In]instanceof un.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof un.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'DOMStringMap'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[sn]["DOMStringMap"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=dn.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);dn.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,In,{value:new un.implementation(en,tn,an),configurable:true});Wt=makeProxy(Wt,en);Wt[In][nn.wrapperSymbol]=Wt;if(un.init){un.init(Wt[In])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,In,{value:Object.create(un.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[In][nn.wrapperSymbol]=tn;if(un.init){un.init(tn[In])}return tn[In]};const cn=new Set(["Window"]);Pt.install=(Wt,Pt)=>{if(!Pt.some((Wt=>cn.has(Wt)))){return}const en=nn.initCtorRegistry(Wt);class DOMStringMap{constructor(){throw new Wt.TypeError("Illegal constructor")}}Object.defineProperties(DOMStringMap.prototype,{[Symbol.toStringTag]:{value:"DOMStringMap",configurable:true}});en[on]=DOMStringMap;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:DOMStringMap})};const dn=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[In][nn.supportedPropertyNames]){if(!nn.hasOwn(Wt,en)){Pt.add(`${en}`)}}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;const tn=Wt[In][nn.namedGet](Pt);if(tn!==undefined&&!nn.hasOwn(Wt,Pt)&&!en){return{writable:true,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,sn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,sn)}if(Wt[In][nn.wrapperSymbol]===sn){const sn=this._globalObject;if(typeof Pt==="string"){let on=en;on=tn["DOMString"](on,{context:"Failed to set the '"+Pt+"' property on 'DOMStringMap': The provided value",globals:sn});an(sn);try{const en=!(Wt[In][nn.namedGet](Pt)!==undefined);if(en){Wt[In][nn.namedSetNew](Pt,on)}else{Wt[In][nn.namedSetExisting](Pt,on)}}finally{rn(sn)}return true}}let on;if(on===undefined){on=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(on===undefined){const tn=Reflect.getPrototypeOf(Wt);if(tn!==null){return Reflect.set(tn,Pt,en,sn)}on={writable:true,enumerable:true,configurable:true,value:undefined}}if(!on.writable){return false}if(!nn.isObject(sn)){return false}const cn=Reflect.getOwnPropertyDescriptor(sn,Pt);let dn;if(cn!==undefined){if(cn.get||cn.set){return false}if(!cn.writable){return false}dn={value:en}}else{dn={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(sn,Pt,dn)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const sn=this._globalObject;if(en.get||en.set){return false}let on=en.value;on=tn["DOMString"](on,{context:"Failed to set the '"+Pt+"' property on 'DOMStringMap': The provided value",globals:sn});an(sn);try{const en=!(Wt[In][nn.namedGet](Pt)!==undefined);if(en){Wt[In][nn.namedSetNew](Pt,on)}else{Wt[In][nn.namedSetExisting](Pt,on)}}finally{rn(sn)}return true}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(Wt[In][nn.namedGet](Pt)!==undefined&&!nn.hasOwn(Wt,Pt)){an(en);try{Wt[In][nn.namedDelete](Pt);return true}finally{rn(en)}}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const un=en(45073)},24406:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(8348).ceReactionsPreSteps;const rn=en(8348).ceReactionsPostSteps;const In=nn.implSymbol;const sn=nn.ctorRegistrySymbol;const on="DOMTokenList";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,In)&&Wt[In]instanceof un.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof un.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'DOMTokenList'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[sn]["DOMTokenList"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=dn.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);dn.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,In,{value:new un.implementation(en,tn,an),configurable:true});Wt=makeProxy(Wt,en);Wt[In][nn.wrapperSymbol]=Wt;if(un.init){un.init(Wt[In])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,In,{value:Object.create(un.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[In][nn.wrapperSymbol]=tn;if(un.init){un.init(tn[In])}return tn[In]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const sn=nn.initCtorRegistry(Wt);class DOMTokenList{constructor(){throw new Wt.TypeError("Illegal constructor")}item(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'item' called on an object that is not a valid instance of DOMTokenList.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'item' on 'DOMTokenList': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'item' on 'DOMTokenList': parameter 1",globals:Wt});an.push(Pt)}return nn[In].item(...an)}contains(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'contains' called on an object that is not a valid instance of DOMTokenList.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'contains' on 'DOMTokenList': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'contains' on 'DOMTokenList': parameter 1",globals:Wt});an.push(Pt)}return nn[In].contains(...an)}add(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'add' called on an object that is not a valid instance of DOMTokenList.")}const nn=[];for(let Pt=0;Pt>>0;const an=Wt[In].item(tn);if(an!==null){return{writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(an)}}en=true}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,tn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,tn)}if(Wt[In][nn.wrapperSymbol]===tn){const Wt=this._globalObject}let an;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;const tn=Wt[In].item(en);if(tn!==null){an={writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}}if(an===undefined){an=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(an===undefined){const nn=Reflect.getPrototypeOf(Wt);if(nn!==null){return Reflect.set(nn,Pt,en,tn)}an={writable:true,enumerable:true,configurable:true,value:undefined}}if(!an.writable){return false}if(!nn.isObject(tn)){return false}const rn=Reflect.getOwnPropertyDescriptor(tn,Pt);let sn;if(rn!==undefined){if(rn.get||rn.set){return false}if(!rn.writable){return false}sn={value:en}}else{sn={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(tn,Pt,sn)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){return false}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;return!(Wt[In].item(en)!==null)}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const un=en(55621)},18946:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(41234);const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=en(24171);const on=en(7921);const cn=en(48708);const dn=en(69117);const un=en(54414);const pn=nn.implSymbol;const mn=nn.ctorRegistrySymbol;const bn="Document";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,pn)&&Wt[pn]instanceof Zn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof Zn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Document'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[mn]["Document"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};function getUnforgeables(Wt){let en=Gn.get(Wt);if(en===undefined){en=Object.create(null);nn.define(en,{get location(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get location' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["location"])},set location(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set location' called on an object that is not a valid instance of Document.")}const an=tn["location"];if(!nn.isObject(an)){throw new Wt.TypeError("Property 'location' is not an object")}Reflect.set(an,"href",en)}});Object.defineProperties(en,{location:{configurable:false}});Gn.set(Wt,en)}return en}Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt);nn.define(Wt,getUnforgeables(Pt))};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,pn,{value:new Zn.implementation(en,tn,an),configurable:true});Wt[pn][nn.wrapperSymbol]=Wt;if(Zn.init){Zn.init(Wt[pn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,pn,{value:Object.create(Zn.implementation.prototype),configurable:true});tn[pn][nn.wrapperSymbol]=tn;if(Zn.init){Zn.init(tn[pn])}return tn[pn]};const Gn=new WeakMap;const hn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>hn.has(Wt)))){return}const mn=nn.initCtorRegistry(Wt);class Document extends Wt.Node{constructor(){return Pt.setup(Object.create(new.target.prototype),Wt,undefined)}getElementsByTagName(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'getElementsByTagName' called on an object that is not a valid instance of Document.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getElementsByTagName' on 'Document': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getElementsByTagName' on 'Document': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[pn].getElementsByTagName(...rn))}getElementsByTagNameNS(en,an){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'getElementsByTagNameNS' called on an object that is not a valid instance of Document.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'getElementsByTagNameNS' on 'Document': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getElementsByTagNameNS' on 'Document': parameter 1",globals:Wt})}In.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getElementsByTagNameNS' on 'Document': parameter 2",globals:Wt});In.push(Pt)}return nn.tryWrapperForImpl(rn[pn].getElementsByTagNameNS(...In))}getElementsByClassName(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'getElementsByClassName' called on an object that is not a valid instance of Document.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getElementsByClassName' on 'Document': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getElementsByClassName' on 'Document': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[pn].getElementsByClassName(...rn))}createElement(en){const sn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(sn)){throw new Wt.TypeError("'createElement' called on an object that is not a valid instance of Document.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'createElement' on 'Document': 1 argument required, but only ${arguments.length} present.`)}const on=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createElement' on 'Document': parameter 1",globals:Wt});on.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=an.convert(Wt,Pt,{context:"Failed to execute 'createElement' on 'Document': parameter 2"})}else if(nn.isObject(Pt)){Pt=an.convert(Wt,Pt,{context:"Failed to execute 'createElement' on 'Document': parameter 2"+" dictionary"})}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createElement' on 'Document': parameter 2",globals:Wt})}}on.push(Pt)}rn(Wt);try{return nn.tryWrapperForImpl(sn[pn].createElement(...on))}finally{In(Wt)}}createElementNS(en,sn){const on=this!==null&&this!==undefined?this:Wt;if(!Pt.is(on)){throw new Wt.TypeError("'createElementNS' called on an object that is not a valid instance of Document.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'createElementNS' on 'Document': 2 arguments required, but only ${arguments.length} present.`)}const cn=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createElementNS' on 'Document': parameter 1",globals:Wt})}cn.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createElementNS' on 'Document': parameter 2",globals:Wt});cn.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=an.convert(Wt,Pt,{context:"Failed to execute 'createElementNS' on 'Document': parameter 3"})}else if(nn.isObject(Pt)){Pt=an.convert(Wt,Pt,{context:"Failed to execute 'createElementNS' on 'Document': parameter 3"+" dictionary"})}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createElementNS' on 'Document': parameter 3",globals:Wt})}}cn.push(Pt)}rn(Wt);try{return nn.tryWrapperForImpl(on[pn].createElementNS(...cn))}finally{In(Wt)}}createDocumentFragment(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'createDocumentFragment' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn].createDocumentFragment())}createTextNode(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'createTextNode' called on an object that is not a valid instance of Document.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'createTextNode' on 'Document': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createTextNode' on 'Document': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[pn].createTextNode(...rn))}createCDATASection(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'createCDATASection' called on an object that is not a valid instance of Document.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'createCDATASection' on 'Document': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createCDATASection' on 'Document': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[pn].createCDATASection(...rn))}createComment(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'createComment' called on an object that is not a valid instance of Document.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'createComment' on 'Document': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createComment' on 'Document': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[pn].createComment(...rn))}createProcessingInstruction(en,an){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'createProcessingInstruction' called on an object that is not a valid instance of Document.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'createProcessingInstruction' on 'Document': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createProcessingInstruction' on 'Document': parameter 1",globals:Wt});In.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createProcessingInstruction' on 'Document': parameter 2",globals:Wt});In.push(Pt)}return nn.tryWrapperForImpl(rn[pn].createProcessingInstruction(...In))}importNode(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'importNode' called on an object that is not a valid instance of Document.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'importNode' on 'Document': 1 argument required, but only ${arguments.length} present.`)}const on=[];{let Pt=arguments[0];Pt=sn.convert(Wt,Pt,{context:"Failed to execute 'importNode' on 'Document': parameter 1"});on.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'importNode' on 'Document': parameter 2",globals:Wt})}else{Pt=false}on.push(Pt)}rn(Wt);try{return nn.tryWrapperForImpl(an[pn].importNode(...on))}finally{In(Wt)}}adoptNode(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'adoptNode' called on an object that is not a valid instance of Document.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'adoptNode' on 'Document': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=sn.convert(Wt,Pt,{context:"Failed to execute 'adoptNode' on 'Document': parameter 1"});an.push(Pt)}rn(Wt);try{return nn.tryWrapperForImpl(tn[pn].adoptNode(...an))}finally{In(Wt)}}createAttribute(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'createAttribute' called on an object that is not a valid instance of Document.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'createAttribute' on 'Document': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createAttribute' on 'Document': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[pn].createAttribute(...rn))}createAttributeNS(en,an){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'createAttributeNS' called on an object that is not a valid instance of Document.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'createAttributeNS' on 'Document': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createAttributeNS' on 'Document': parameter 1",globals:Wt})}In.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createAttributeNS' on 'Document': parameter 2",globals:Wt});In.push(Pt)}return nn.tryWrapperForImpl(rn[pn].createAttributeNS(...In))}createEvent(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'createEvent' called on an object that is not a valid instance of Document.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'createEvent' on 'Document': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createEvent' on 'Document': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[pn].createEvent(...rn))}createRange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'createRange' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn].createRange())}createNodeIterator(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'createNodeIterator' called on an object that is not a valid instance of Document.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'createNodeIterator' on 'Document': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=sn.convert(Wt,Pt,{context:"Failed to execute 'createNodeIterator' on 'Document': parameter 1"});rn.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'createNodeIterator' on 'Document': parameter 2",globals:Wt})}else{Pt=4294967295}rn.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{Pt=on.convert(Wt,Pt,{context:"Failed to execute 'createNodeIterator' on 'Document': parameter 3"})}}else{Pt=null}rn.push(Pt)}return nn.tryWrapperForImpl(an[pn].createNodeIterator(...rn))}createTreeWalker(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'createTreeWalker' called on an object that is not a valid instance of Document.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'createTreeWalker' on 'Document': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=sn.convert(Wt,Pt,{context:"Failed to execute 'createTreeWalker' on 'Document': parameter 1"});rn.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'createTreeWalker' on 'Document': parameter 2",globals:Wt})}else{Pt=4294967295}rn.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{Pt=on.convert(Wt,Pt,{context:"Failed to execute 'createTreeWalker' on 'Document': parameter 3"})}}else{Pt=null}rn.push(Pt)}return nn.tryWrapperForImpl(an[pn].createTreeWalker(...rn))}getElementsByName(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'getElementsByName' called on an object that is not a valid instance of Document.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getElementsByName' on 'Document': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getElementsByName' on 'Document': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[pn].getElementsByName(...rn))}open(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'open' called on an object that is not a valid instance of Document.")}const an=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to execute 'open' on 'Document': parameter 1",globals:Wt})}else{Pt="text/html"}an.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to execute 'open' on 'Document': parameter 2",globals:Wt})}else{Pt=""}an.push(Pt)}rn(Wt);try{return nn.tryWrapperForImpl(en[pn].open(...an))}finally{In(Wt)}}close(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'close' called on an object that is not a valid instance of Document.")}rn(Wt);try{return en[pn].close()}finally{In(Wt)}}write(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'write' called on an object that is not a valid instance of Document.")}const nn=[];for(let Pt=0;Ptnn.tryWrapperForImpl(en[pn]["implementation"])))}get URL(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get URL' called on an object that is not a valid instance of Document.")}return en[pn]["URL"]}get documentURI(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get documentURI' called on an object that is not a valid instance of Document.")}return en[pn]["documentURI"]}get compatMode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get compatMode' called on an object that is not a valid instance of Document.")}return en[pn]["compatMode"]}get characterSet(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get characterSet' called on an object that is not a valid instance of Document.")}return en[pn]["characterSet"]}get charset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get charset' called on an object that is not a valid instance of Document.")}return en[pn]["charset"]}get inputEncoding(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get inputEncoding' called on an object that is not a valid instance of Document.")}return en[pn]["inputEncoding"]}get contentType(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get contentType' called on an object that is not a valid instance of Document.")}return en[pn]["contentType"]}get doctype(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get doctype' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["doctype"])}get documentElement(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get documentElement' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["documentElement"])}get referrer(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get referrer' called on an object that is not a valid instance of Document.")}return en[pn]["referrer"]}get cookie(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get cookie' called on an object that is not a valid instance of Document.")}return en[pn]["cookie"]}set cookie(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set cookie' called on an object that is not a valid instance of Document.")}en=tn["USVString"](en,{context:"Failed to set the 'cookie' property on 'Document': The provided value",globals:Wt});nn[pn]["cookie"]=en}get lastModified(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get lastModified' called on an object that is not a valid instance of Document.")}return en[pn]["lastModified"]}get readyState(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get readyState' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["readyState"])}get title(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get title' called on an object that is not a valid instance of Document.")}rn(Wt);try{return en[pn]["title"]}finally{In(Wt)}}set title(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set title' called on an object that is not a valid instance of Document.")}en=tn["DOMString"](en,{context:"Failed to set the 'title' property on 'Document': The provided value",globals:Wt});rn(Wt);try{nn[pn]["title"]=en}finally{In(Wt)}}get dir(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get dir' called on an object that is not a valid instance of Document.")}rn(Wt);try{return en[pn]["dir"]}finally{In(Wt)}}set dir(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set dir' called on an object that is not a valid instance of Document.")}en=tn["DOMString"](en,{context:"Failed to set the 'dir' property on 'Document': The provided value",globals:Wt});rn(Wt);try{nn[pn]["dir"]=en}finally{In(Wt)}}get body(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get body' called on an object that is not a valid instance of Document.")}rn(Wt);try{return nn.tryWrapperForImpl(en[pn]["body"])}finally{In(Wt)}}set body(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set body' called on an object that is not a valid instance of Document.")}if(en===null||en===undefined){en=null}else{en=cn.convert(Wt,en,{context:"Failed to set the 'body' property on 'Document': The provided value"})}rn(Wt);try{tn[pn]["body"]=en}finally{In(Wt)}}get head(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get head' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["head"])}get images(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get images' called on an object that is not a valid instance of Document.")}return nn.getSameObject(this,"images",(()=>nn.tryWrapperForImpl(en[pn]["images"])))}get embeds(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get embeds' called on an object that is not a valid instance of Document.")}return nn.getSameObject(this,"embeds",(()=>nn.tryWrapperForImpl(en[pn]["embeds"])))}get plugins(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get plugins' called on an object that is not a valid instance of Document.")}return nn.getSameObject(this,"plugins",(()=>nn.tryWrapperForImpl(en[pn]["plugins"])))}get links(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get links' called on an object that is not a valid instance of Document.")}return nn.getSameObject(this,"links",(()=>nn.tryWrapperForImpl(en[pn]["links"])))}get forms(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get forms' called on an object that is not a valid instance of Document.")}return nn.getSameObject(this,"forms",(()=>nn.tryWrapperForImpl(en[pn]["forms"])))}get scripts(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get scripts' called on an object that is not a valid instance of Document.")}return nn.getSameObject(this,"scripts",(()=>nn.tryWrapperForImpl(en[pn]["scripts"])))}get currentScript(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get currentScript' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["currentScript"])}get defaultView(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get defaultView' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["defaultView"])}get onreadystatechange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){return}return nn.tryWrapperForImpl(en[pn]["onreadystatechange"])}set onreadystatechange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){return}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onreadystatechange' property on 'Document': The provided value"})}tn[pn]["onreadystatechange"]=en}get anchors(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get anchors' called on an object that is not a valid instance of Document.")}return nn.getSameObject(this,"anchors",(()=>nn.tryWrapperForImpl(en[pn]["anchors"])))}get applets(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get applets' called on an object that is not a valid instance of Document.")}return nn.getSameObject(this,"applets",(()=>nn.tryWrapperForImpl(en[pn]["applets"])))}get styleSheets(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get styleSheets' called on an object that is not a valid instance of Document.")}return nn.getSameObject(this,"styleSheets",(()=>nn.tryWrapperForImpl(en[pn]["styleSheets"])))}get hidden(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hidden' called on an object that is not a valid instance of Document.")}return en[pn]["hidden"]}get visibilityState(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get visibilityState' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["visibilityState"])}get onvisibilitychange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onvisibilitychange' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onvisibilitychange"])}set onvisibilitychange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onvisibilitychange' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onvisibilitychange' property on 'Document': The provided value"})}tn[pn]["onvisibilitychange"]=en}get onabort(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onabort' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onabort"])}set onabort(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onabort' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onabort' property on 'Document': The provided value"})}tn[pn]["onabort"]=en}get onauxclick(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onauxclick' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onauxclick"])}set onauxclick(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onauxclick' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onauxclick' property on 'Document': The provided value"})}tn[pn]["onauxclick"]=en}get onbeforeinput(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforeinput' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onbeforeinput"])}set onbeforeinput(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforeinput' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onbeforeinput' property on 'Document': The provided value"})}tn[pn]["onbeforeinput"]=en}get onbeforematch(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforematch' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onbeforematch"])}set onbeforematch(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforematch' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onbeforematch' property on 'Document': The provided value"})}tn[pn]["onbeforematch"]=en}get onbeforetoggle(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforetoggle' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onbeforetoggle"])}set onbeforetoggle(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforetoggle' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onbeforetoggle' property on 'Document': The provided value"})}tn[pn]["onbeforetoggle"]=en}get onblur(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onblur' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onblur"])}set onblur(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onblur' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onblur' property on 'Document': The provided value"})}tn[pn]["onblur"]=en}get oncancel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncancel' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["oncancel"])}set oncancel(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncancel' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'oncancel' property on 'Document': The provided value"})}tn[pn]["oncancel"]=en}get oncanplay(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncanplay' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["oncanplay"])}set oncanplay(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncanplay' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'oncanplay' property on 'Document': The provided value"})}tn[pn]["oncanplay"]=en}get oncanplaythrough(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncanplaythrough' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["oncanplaythrough"])}set oncanplaythrough(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncanplaythrough' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'oncanplaythrough' property on 'Document': The provided value"})}tn[pn]["oncanplaythrough"]=en}get onchange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onchange' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onchange"])}set onchange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onchange' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onchange' property on 'Document': The provided value"})}tn[pn]["onchange"]=en}get onclick(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onclick' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onclick"])}set onclick(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onclick' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onclick' property on 'Document': The provided value"})}tn[pn]["onclick"]=en}get onclose(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onclose' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onclose"])}set onclose(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onclose' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onclose' property on 'Document': The provided value"})}tn[pn]["onclose"]=en}get oncontextlost(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncontextlost' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["oncontextlost"])}set oncontextlost(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncontextlost' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'oncontextlost' property on 'Document': The provided value"})}tn[pn]["oncontextlost"]=en}get oncontextmenu(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncontextmenu' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["oncontextmenu"])}set oncontextmenu(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncontextmenu' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'oncontextmenu' property on 'Document': The provided value"})}tn[pn]["oncontextmenu"]=en}get oncontextrestored(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncontextrestored' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["oncontextrestored"])}set oncontextrestored(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncontextrestored' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'oncontextrestored' property on 'Document': The provided value"})}tn[pn]["oncontextrestored"]=en}get oncopy(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncopy' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["oncopy"])}set oncopy(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncopy' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'oncopy' property on 'Document': The provided value"})}tn[pn]["oncopy"]=en}get oncuechange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncuechange' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["oncuechange"])}set oncuechange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncuechange' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'oncuechange' property on 'Document': The provided value"})}tn[pn]["oncuechange"]=en}get oncut(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncut' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["oncut"])}set oncut(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncut' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'oncut' property on 'Document': The provided value"})}tn[pn]["oncut"]=en}get ondblclick(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondblclick' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ondblclick"])}set ondblclick(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondblclick' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ondblclick' property on 'Document': The provided value"})}tn[pn]["ondblclick"]=en}get ondrag(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondrag' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ondrag"])}set ondrag(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondrag' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ondrag' property on 'Document': The provided value"})}tn[pn]["ondrag"]=en}get ondragend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragend' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ondragend"])}set ondragend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragend' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ondragend' property on 'Document': The provided value"})}tn[pn]["ondragend"]=en}get ondragenter(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragenter' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ondragenter"])}set ondragenter(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragenter' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ondragenter' property on 'Document': The provided value"})}tn[pn]["ondragenter"]=en}get ondragleave(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragleave' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ondragleave"])}set ondragleave(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragleave' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ondragleave' property on 'Document': The provided value"})}tn[pn]["ondragleave"]=en}get ondragover(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragover' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ondragover"])}set ondragover(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragover' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ondragover' property on 'Document': The provided value"})}tn[pn]["ondragover"]=en}get ondragstart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragstart' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ondragstart"])}set ondragstart(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragstart' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ondragstart' property on 'Document': The provided value"})}tn[pn]["ondragstart"]=en}get ondrop(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondrop' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ondrop"])}set ondrop(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondrop' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ondrop' property on 'Document': The provided value"})}tn[pn]["ondrop"]=en}get ondurationchange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondurationchange' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ondurationchange"])}set ondurationchange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondurationchange' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ondurationchange' property on 'Document': The provided value"})}tn[pn]["ondurationchange"]=en}get onemptied(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onemptied' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onemptied"])}set onemptied(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onemptied' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onemptied' property on 'Document': The provided value"})}tn[pn]["onemptied"]=en}get onended(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onended' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onended"])}set onended(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onended' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onended' property on 'Document': The provided value"})}tn[pn]["onended"]=en}get onerror(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onerror' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onerror"])}set onerror(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onerror' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=un.convert(Wt,en,{context:"Failed to set the 'onerror' property on 'Document': The provided value"})}tn[pn]["onerror"]=en}get onfocus(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onfocus' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onfocus"])}set onfocus(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onfocus' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onfocus' property on 'Document': The provided value"})}tn[pn]["onfocus"]=en}get onformdata(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onformdata' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onformdata"])}set onformdata(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onformdata' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onformdata' property on 'Document': The provided value"})}tn[pn]["onformdata"]=en}get oninput(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oninput' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["oninput"])}set oninput(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oninput' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'oninput' property on 'Document': The provided value"})}tn[pn]["oninput"]=en}get oninvalid(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oninvalid' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["oninvalid"])}set oninvalid(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oninvalid' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'oninvalid' property on 'Document': The provided value"})}tn[pn]["oninvalid"]=en}get onkeydown(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onkeydown' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onkeydown"])}set onkeydown(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onkeydown' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onkeydown' property on 'Document': The provided value"})}tn[pn]["onkeydown"]=en}get onkeypress(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onkeypress' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onkeypress"])}set onkeypress(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onkeypress' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onkeypress' property on 'Document': The provided value"})}tn[pn]["onkeypress"]=en}get onkeyup(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onkeyup' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onkeyup"])}set onkeyup(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onkeyup' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onkeyup' property on 'Document': The provided value"})}tn[pn]["onkeyup"]=en}get onload(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onload' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onload"])}set onload(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onload' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onload' property on 'Document': The provided value"})}tn[pn]["onload"]=en}get onloadeddata(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onloadeddata' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onloadeddata"])}set onloadeddata(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onloadeddata' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onloadeddata' property on 'Document': The provided value"})}tn[pn]["onloadeddata"]=en}get onloadedmetadata(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onloadedmetadata' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onloadedmetadata"])}set onloadedmetadata(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onloadedmetadata' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onloadedmetadata' property on 'Document': The provided value"})}tn[pn]["onloadedmetadata"]=en}get onloadstart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onloadstart' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onloadstart"])}set onloadstart(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onloadstart' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onloadstart' property on 'Document': The provided value"})}tn[pn]["onloadstart"]=en}get onmousedown(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmousedown' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onmousedown"])}set onmousedown(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmousedown' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onmousedown' property on 'Document': The provided value"})}tn[pn]["onmousedown"]=en}get onmouseenter(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){return}return nn.tryWrapperForImpl(en[pn]["onmouseenter"])}set onmouseenter(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){return}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onmouseenter' property on 'Document': The provided value"})}tn[pn]["onmouseenter"]=en}get onmouseleave(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){return}return nn.tryWrapperForImpl(en[pn]["onmouseleave"])}set onmouseleave(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){return}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onmouseleave' property on 'Document': The provided value"})}tn[pn]["onmouseleave"]=en}get onmousemove(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmousemove' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onmousemove"])}set onmousemove(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmousemove' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onmousemove' property on 'Document': The provided value"})}tn[pn]["onmousemove"]=en}get onmouseout(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmouseout' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onmouseout"])}set onmouseout(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmouseout' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onmouseout' property on 'Document': The provided value"})}tn[pn]["onmouseout"]=en}get onmouseover(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmouseover' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onmouseover"])}set onmouseover(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmouseover' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onmouseover' property on 'Document': The provided value"})}tn[pn]["onmouseover"]=en}get onmouseup(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmouseup' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onmouseup"])}set onmouseup(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmouseup' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onmouseup' property on 'Document': The provided value"})}tn[pn]["onmouseup"]=en}get onpaste(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpaste' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onpaste"])}set onpaste(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpaste' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onpaste' property on 'Document': The provided value"})}tn[pn]["onpaste"]=en}get onpause(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpause' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onpause"])}set onpause(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpause' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onpause' property on 'Document': The provided value"})}tn[pn]["onpause"]=en}get onplay(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onplay' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onplay"])}set onplay(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onplay' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onplay' property on 'Document': The provided value"})}tn[pn]["onplay"]=en}get onplaying(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onplaying' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onplaying"])}set onplaying(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onplaying' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onplaying' property on 'Document': The provided value"})}tn[pn]["onplaying"]=en}get onprogress(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onprogress' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onprogress"])}set onprogress(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onprogress' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onprogress' property on 'Document': The provided value"})}tn[pn]["onprogress"]=en}get onratechange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onratechange' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onratechange"])}set onratechange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onratechange' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onratechange' property on 'Document': The provided value"})}tn[pn]["onratechange"]=en}get onreset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onreset' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onreset"])}set onreset(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onreset' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onreset' property on 'Document': The provided value"})}tn[pn]["onreset"]=en}get onresize(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onresize' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onresize"])}set onresize(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onresize' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onresize' property on 'Document': The provided value"})}tn[pn]["onresize"]=en}get onscroll(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onscroll' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onscroll"])}set onscroll(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onscroll' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onscroll' property on 'Document': The provided value"})}tn[pn]["onscroll"]=en}get onscrollend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onscrollend' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onscrollend"])}set onscrollend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onscrollend' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onscrollend' property on 'Document': The provided value"})}tn[pn]["onscrollend"]=en}get onsecuritypolicyviolation(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onsecuritypolicyviolation' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onsecuritypolicyviolation"])}set onsecuritypolicyviolation(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onsecuritypolicyviolation' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onsecuritypolicyviolation' property on 'Document': The provided value"})}tn[pn]["onsecuritypolicyviolation"]=en}get onseeked(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onseeked' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onseeked"])}set onseeked(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onseeked' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onseeked' property on 'Document': The provided value"})}tn[pn]["onseeked"]=en}get onseeking(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onseeking' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onseeking"])}set onseeking(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onseeking' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onseeking' property on 'Document': The provided value"})}tn[pn]["onseeking"]=en}get onselect(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onselect' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onselect"])}set onselect(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onselect' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onselect' property on 'Document': The provided value"})}tn[pn]["onselect"]=en}get onslotchange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onslotchange' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onslotchange"])}set onslotchange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onslotchange' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onslotchange' property on 'Document': The provided value"})}tn[pn]["onslotchange"]=en}get onstalled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onstalled' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onstalled"])}set onstalled(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onstalled' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onstalled' property on 'Document': The provided value"})}tn[pn]["onstalled"]=en}get onsubmit(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onsubmit' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onsubmit"])}set onsubmit(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onsubmit' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onsubmit' property on 'Document': The provided value"})}tn[pn]["onsubmit"]=en}get onsuspend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onsuspend' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onsuspend"])}set onsuspend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onsuspend' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onsuspend' property on 'Document': The provided value"})}tn[pn]["onsuspend"]=en}get ontimeupdate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontimeupdate' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ontimeupdate"])}set ontimeupdate(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontimeupdate' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ontimeupdate' property on 'Document': The provided value"})}tn[pn]["ontimeupdate"]=en}get ontoggle(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontoggle' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ontoggle"])}set ontoggle(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontoggle' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ontoggle' property on 'Document': The provided value"})}tn[pn]["ontoggle"]=en}get onvolumechange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onvolumechange' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onvolumechange"])}set onvolumechange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onvolumechange' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onvolumechange' property on 'Document': The provided value"})}tn[pn]["onvolumechange"]=en}get onwaiting(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwaiting' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onwaiting"])}set onwaiting(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwaiting' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onwaiting' property on 'Document': The provided value"})}tn[pn]["onwaiting"]=en}get onwebkitanimationend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwebkitanimationend' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onwebkitanimationend"])}set onwebkitanimationend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwebkitanimationend' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onwebkitanimationend' property on 'Document': The provided value"})}tn[pn]["onwebkitanimationend"]=en}get onwebkitanimationiteration(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwebkitanimationiteration' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onwebkitanimationiteration"])}set onwebkitanimationiteration(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwebkitanimationiteration' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onwebkitanimationiteration' property on 'Document': The provided value"})}tn[pn]["onwebkitanimationiteration"]=en}get onwebkitanimationstart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwebkitanimationstart' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onwebkitanimationstart"])}set onwebkitanimationstart(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwebkitanimationstart' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onwebkitanimationstart' property on 'Document': The provided value"})}tn[pn]["onwebkitanimationstart"]=en}get onwebkittransitionend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwebkittransitionend' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onwebkittransitionend"])}set onwebkittransitionend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwebkittransitionend' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onwebkittransitionend' property on 'Document': The provided value"})}tn[pn]["onwebkittransitionend"]=en}get onwheel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwheel' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["onwheel"])}set onwheel(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwheel' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'onwheel' property on 'Document': The provided value"})}tn[pn]["onwheel"]=en}get ontouchstart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontouchstart' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ontouchstart"])}set ontouchstart(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontouchstart' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ontouchstart' property on 'Document': The provided value"})}tn[pn]["ontouchstart"]=en}get ontouchend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontouchend' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ontouchend"])}set ontouchend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontouchend' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ontouchend' property on 'Document': The provided value"})}tn[pn]["ontouchend"]=en}get ontouchmove(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontouchmove' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ontouchmove"])}set ontouchmove(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontouchmove' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ontouchmove' property on 'Document': The provided value"})}tn[pn]["ontouchmove"]=en}get ontouchcancel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontouchcancel' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["ontouchcancel"])}set ontouchcancel(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontouchcancel' called on an object that is not a valid instance of Document.")}if(!nn.isObject(en)){en=null}else{en=dn.convert(Wt,en,{context:"Failed to set the 'ontouchcancel' property on 'Document': The provided value"})}tn[pn]["ontouchcancel"]=en}get activeElement(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get activeElement' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["activeElement"])}get children(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get children' called on an object that is not a valid instance of Document.")}return nn.getSameObject(this,"children",(()=>nn.tryWrapperForImpl(en[pn]["children"])))}get firstElementChild(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get firstElementChild' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["firstElementChild"])}get lastElementChild(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get lastElementChild' called on an object that is not a valid instance of Document.")}return nn.tryWrapperForImpl(en[pn]["lastElementChild"])}get childElementCount(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get childElementCount' called on an object that is not a valid instance of Document.")}return en[pn]["childElementCount"]}}Object.defineProperties(Document.prototype,{getElementsByTagName:{enumerable:true},getElementsByTagNameNS:{enumerable:true},getElementsByClassName:{enumerable:true},createElement:{enumerable:true},createElementNS:{enumerable:true},createDocumentFragment:{enumerable:true},createTextNode:{enumerable:true},createCDATASection:{enumerable:true},createComment:{enumerable:true},createProcessingInstruction:{enumerable:true},importNode:{enumerable:true},adoptNode:{enumerable:true},createAttribute:{enumerable:true},createAttributeNS:{enumerable:true},createEvent:{enumerable:true},createRange:{enumerable:true},createNodeIterator:{enumerable:true},createTreeWalker:{enumerable:true},getElementsByName:{enumerable:true},open:{enumerable:true},close:{enumerable:true},write:{enumerable:true},writeln:{enumerable:true},hasFocus:{enumerable:true},clear:{enumerable:true},captureEvents:{enumerable:true},releaseEvents:{enumerable:true},getSelection:{enumerable:true},getElementById:{enumerable:true},prepend:{enumerable:true},append:{enumerable:true},replaceChildren:{enumerable:true},querySelector:{enumerable:true},querySelectorAll:{enumerable:true},implementation:{enumerable:true},URL:{enumerable:true},documentURI:{enumerable:true},compatMode:{enumerable:true},characterSet:{enumerable:true},charset:{enumerable:true},inputEncoding:{enumerable:true},contentType:{enumerable:true},doctype:{enumerable:true},documentElement:{enumerable:true},referrer:{enumerable:true},cookie:{enumerable:true},lastModified:{enumerable:true},readyState:{enumerable:true},title:{enumerable:true},dir:{enumerable:true},body:{enumerable:true},head:{enumerable:true},images:{enumerable:true},embeds:{enumerable:true},plugins:{enumerable:true},links:{enumerable:true},forms:{enumerable:true},scripts:{enumerable:true},currentScript:{enumerable:true},defaultView:{enumerable:true},onreadystatechange:{enumerable:true},anchors:{enumerable:true},applets:{enumerable:true},styleSheets:{enumerable:true},hidden:{enumerable:true},visibilityState:{enumerable:true},onvisibilitychange:{enumerable:true},onabort:{enumerable:true},onauxclick:{enumerable:true},onbeforeinput:{enumerable:true},onbeforematch:{enumerable:true},onbeforetoggle:{enumerable:true},onblur:{enumerable:true},oncancel:{enumerable:true},oncanplay:{enumerable:true},oncanplaythrough:{enumerable:true},onchange:{enumerable:true},onclick:{enumerable:true},onclose:{enumerable:true},oncontextlost:{enumerable:true},oncontextmenu:{enumerable:true},oncontextrestored:{enumerable:true},oncopy:{enumerable:true},oncuechange:{enumerable:true},oncut:{enumerable:true},ondblclick:{enumerable:true},ondrag:{enumerable:true},ondragend:{enumerable:true},ondragenter:{enumerable:true},ondragleave:{enumerable:true},ondragover:{enumerable:true},ondragstart:{enumerable:true},ondrop:{enumerable:true},ondurationchange:{enumerable:true},onemptied:{enumerable:true},onended:{enumerable:true},onerror:{enumerable:true},onfocus:{enumerable:true},onformdata:{enumerable:true},oninput:{enumerable:true},oninvalid:{enumerable:true},onkeydown:{enumerable:true},onkeypress:{enumerable:true},onkeyup:{enumerable:true},onload:{enumerable:true},onloadeddata:{enumerable:true},onloadedmetadata:{enumerable:true},onloadstart:{enumerable:true},onmousedown:{enumerable:true},onmouseenter:{enumerable:true},onmouseleave:{enumerable:true},onmousemove:{enumerable:true},onmouseout:{enumerable:true},onmouseover:{enumerable:true},onmouseup:{enumerable:true},onpaste:{enumerable:true},onpause:{enumerable:true},onplay:{enumerable:true},onplaying:{enumerable:true},onprogress:{enumerable:true},onratechange:{enumerable:true},onreset:{enumerable:true},onresize:{enumerable:true},onscroll:{enumerable:true},onscrollend:{enumerable:true},onsecuritypolicyviolation:{enumerable:true},onseeked:{enumerable:true},onseeking:{enumerable:true},onselect:{enumerable:true},onslotchange:{enumerable:true},onstalled:{enumerable:true},onsubmit:{enumerable:true},onsuspend:{enumerable:true},ontimeupdate:{enumerable:true},ontoggle:{enumerable:true},onvolumechange:{enumerable:true},onwaiting:{enumerable:true},onwebkitanimationend:{enumerable:true},onwebkitanimationiteration:{enumerable:true},onwebkitanimationstart:{enumerable:true},onwebkittransitionend:{enumerable:true},onwheel:{enumerable:true},ontouchstart:{enumerable:true},ontouchend:{enumerable:true},ontouchmove:{enumerable:true},ontouchcancel:{enumerable:true},activeElement:{enumerable:true},children:{enumerable:true},firstElementChild:{enumerable:true},lastElementChild:{enumerable:true},childElementCount:{enumerable:true},[Symbol.toStringTag]:{value:"Document",configurable:true},[Symbol.unscopables]:{value:{prepend:true,append:true,replaceChildren:true,__proto__:null},configurable:true}});mn[bn]=Document;Object.defineProperty(Wt,bn,{configurable:true,writable:true,value:Document})};const Zn=en(34641)},98938:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(24171);const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn="DocumentFragment";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof un.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof un.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'DocumentFragment'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["DocumentFragment"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{an._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new un.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(un.init){un.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(un.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(un.init){un.init(tn[sn])}return tn[sn]};const dn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>dn.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class DocumentFragment extends Wt.Node{constructor(){return Pt.setup(Object.create(new.target.prototype),Wt,undefined)}getElementById(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'getElementById' called on an object that is not a valid instance of DocumentFragment.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getElementById' on 'DocumentFragment': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getElementById' on 'DocumentFragment': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[sn].getElementById(...rn))}prepend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'prepend' called on an object that is not a valid instance of DocumentFragment.")}const on=[];for(let Pt=0;Ptnn.tryWrapperForImpl(en[sn]["children"])))}get firstElementChild(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get firstElementChild' called on an object that is not a valid instance of DocumentFragment.")}return nn.tryWrapperForImpl(en[sn]["firstElementChild"])}get lastElementChild(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get lastElementChild' called on an object that is not a valid instance of DocumentFragment.")}return nn.tryWrapperForImpl(en[sn]["lastElementChild"])}get childElementCount(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get childElementCount' called on an object that is not a valid instance of DocumentFragment.")}return en[sn]["childElementCount"]}}Object.defineProperties(DocumentFragment.prototype,{getElementById:{enumerable:true},prepend:{enumerable:true},append:{enumerable:true},replaceChildren:{enumerable:true},querySelector:{enumerable:true},querySelectorAll:{enumerable:true},children:{enumerable:true},firstElementChild:{enumerable:true},lastElementChild:{enumerable:true},childElementCount:{enumerable:true},[Symbol.toStringTag]:{value:"DocumentFragment",configurable:true},[Symbol.unscopables]:{value:{prepend:true,append:true,replaceChildren:true,__proto__:null},configurable:true}});on[cn]=DocumentFragment;Object.defineProperty(Wt,cn,{configurable:true,writable:true,value:DocumentFragment})};const un=en(98089)},80842:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(24171);const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn="DocumentType";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof un.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof un.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'DocumentType'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["DocumentType"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{an._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new un.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(un.init){un.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(un.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(un.init){un.init(tn[sn])}return tn[sn]};const dn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>dn.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class DocumentType extends Wt.Node{constructor(){throw new Wt.TypeError("Illegal constructor")}before(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'before' called on an object that is not a valid instance of DocumentType.")}const on=[];for(let Pt=0;Pt{"use strict";const tn=en(37125);const nn=en(87094);const an=en(8348).ceReactionsPreSteps;const rn=en(8348).ceReactionsPostSteps;const In=en(17552);const sn=en(82921);const on=en(24171);const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un="Element";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof mn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof mn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Element'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["Element"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{on._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new mn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(mn.init){mn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(mn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(mn.init){mn.init(tn[cn])}return tn[cn]};const pn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>pn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class Element extends Wt.Node{constructor(){throw new Wt.TypeError("Illegal constructor")}hasAttributes(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'hasAttributes' called on an object that is not a valid instance of Element.")}return en[cn].hasAttributes()}getAttributeNames(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'getAttributeNames' called on an object that is not a valid instance of Element.")}return nn.tryWrapperForImpl(en[cn].getAttributeNames())}getAttribute(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'getAttribute' called on an object that is not a valid instance of Element.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getAttribute' on 'Element': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getAttribute' on 'Element': parameter 1",globals:Wt});an.push(Pt)}return nn[cn].getAttribute(...an)}getAttributeNS(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'getAttributeNS' called on an object that is not a valid instance of Element.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'getAttributeNS' on 'Element': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getAttributeNS' on 'Element': parameter 1",globals:Wt})}rn.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getAttributeNS' on 'Element': parameter 2",globals:Wt});rn.push(Pt)}return an[cn].getAttributeNS(...rn)}setAttribute(en,nn){const In=this!==null&&this!==undefined?this:Wt;if(!Pt.is(In)){throw new Wt.TypeError("'setAttribute' called on an object that is not a valid instance of Element.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'setAttribute' on 'Element': 2 arguments required, but only ${arguments.length} present.`)}const sn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setAttribute' on 'Element': parameter 1",globals:Wt});sn.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setAttribute' on 'Element': parameter 2",globals:Wt});sn.push(Pt)}an(Wt);try{return In[cn].setAttribute(...sn)}finally{rn(Wt)}}setAttributeNS(en,nn,In){const sn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(sn)){throw new Wt.TypeError("'setAttributeNS' called on an object that is not a valid instance of Element.")}if(arguments.length<3){throw new Wt.TypeError(`Failed to execute 'setAttributeNS' on 'Element': 3 arguments required, but only ${arguments.length} present.`)}const on=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setAttributeNS' on 'Element': parameter 1",globals:Wt})}on.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setAttributeNS' on 'Element': parameter 2",globals:Wt});on.push(Pt)}{let Pt=arguments[2];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setAttributeNS' on 'Element': parameter 3",globals:Wt});on.push(Pt)}an(Wt);try{return sn[cn].setAttributeNS(...on)}finally{rn(Wt)}}removeAttribute(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'removeAttribute' called on an object that is not a valid instance of Element.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'removeAttribute' on 'Element': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'removeAttribute' on 'Element': parameter 1",globals:Wt});In.push(Pt)}an(Wt);try{return nn[cn].removeAttribute(...In)}finally{rn(Wt)}}removeAttributeNS(en,nn){const In=this!==null&&this!==undefined?this:Wt;if(!Pt.is(In)){throw new Wt.TypeError("'removeAttributeNS' called on an object that is not a valid instance of Element.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'removeAttributeNS' on 'Element': 2 arguments required, but only ${arguments.length} present.`)}const sn=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'removeAttributeNS' on 'Element': parameter 1",globals:Wt})}sn.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'removeAttributeNS' on 'Element': parameter 2",globals:Wt});sn.push(Pt)}an(Wt);try{return In[cn].removeAttributeNS(...sn)}finally{rn(Wt)}}toggleAttribute(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'toggleAttribute' called on an object that is not a valid instance of Element.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'toggleAttribute' on 'Element': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'toggleAttribute' on 'Element': parameter 1",globals:Wt});In.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'toggleAttribute' on 'Element': parameter 2",globals:Wt})}In.push(Pt)}an(Wt);try{return nn[cn].toggleAttribute(...In)}finally{rn(Wt)}}hasAttribute(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'hasAttribute' called on an object that is not a valid instance of Element.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'hasAttribute' on 'Element': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'hasAttribute' on 'Element': parameter 1",globals:Wt});an.push(Pt)}return nn[cn].hasAttribute(...an)}hasAttributeNS(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'hasAttributeNS' called on an object that is not a valid instance of Element.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'hasAttributeNS' on 'Element': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'hasAttributeNS' on 'Element': parameter 1",globals:Wt})}rn.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'hasAttributeNS' on 'Element': parameter 2",globals:Wt});rn.push(Pt)}return an[cn].hasAttributeNS(...rn)}getAttributeNode(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'getAttributeNode' called on an object that is not a valid instance of Element.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getAttributeNode' on 'Element': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getAttributeNode' on 'Element': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[cn].getAttributeNode(...rn))}getAttributeNodeNS(en,an){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'getAttributeNodeNS' called on an object that is not a valid instance of Element.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'getAttributeNodeNS' on 'Element': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getAttributeNodeNS' on 'Element': parameter 1",globals:Wt})}In.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getAttributeNodeNS' on 'Element': parameter 2",globals:Wt});In.push(Pt)}return nn.tryWrapperForImpl(rn[cn].getAttributeNodeNS(...In))}setAttributeNode(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'setAttributeNode' called on an object that is not a valid instance of Element.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setAttributeNode' on 'Element': 1 argument required, but only ${arguments.length} present.`)}const sn=[];{let Pt=arguments[0];Pt=In.convert(Wt,Pt,{context:"Failed to execute 'setAttributeNode' on 'Element': parameter 1"});sn.push(Pt)}an(Wt);try{return nn.tryWrapperForImpl(tn[cn].setAttributeNode(...sn))}finally{rn(Wt)}}setAttributeNodeNS(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'setAttributeNodeNS' called on an object that is not a valid instance of Element.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setAttributeNodeNS' on 'Element': 1 argument required, but only ${arguments.length} present.`)}const sn=[];{let Pt=arguments[0];Pt=In.convert(Wt,Pt,{context:"Failed to execute 'setAttributeNodeNS' on 'Element': parameter 1"});sn.push(Pt)}an(Wt);try{return nn.tryWrapperForImpl(tn[cn].setAttributeNodeNS(...sn))}finally{rn(Wt)}}removeAttributeNode(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'removeAttributeNode' called on an object that is not a valid instance of Element.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'removeAttributeNode' on 'Element': 1 argument required, but only ${arguments.length} present.`)}const sn=[];{let Pt=arguments[0];Pt=In.convert(Wt,Pt,{context:"Failed to execute 'removeAttributeNode' on 'Element': parameter 1"});sn.push(Pt)}an(Wt);try{return nn.tryWrapperForImpl(tn[cn].removeAttributeNode(...sn))}finally{rn(Wt)}}attachShadow(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'attachShadow' called on an object that is not a valid instance of Element.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'attachShadow' on 'Element': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=sn.convert(Wt,Pt,{context:"Failed to execute 'attachShadow' on 'Element': parameter 1"});an.push(Pt)}return nn.tryWrapperForImpl(tn[cn].attachShadow(...an))}closest(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'closest' called on an object that is not a valid instance of Element.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'closest' on 'Element': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'closest' on 'Element': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[cn].closest(...rn))}matches(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'matches' called on an object that is not a valid instance of Element.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'matches' on 'Element': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'matches' on 'Element': parameter 1",globals:Wt});an.push(Pt)}return nn[cn].matches(...an)}webkitMatchesSelector(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'webkitMatchesSelector' called on an object that is not a valid instance of Element.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'webkitMatchesSelector' on 'Element': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'webkitMatchesSelector' on 'Element': parameter 1",globals:Wt});an.push(Pt)}return nn[cn].webkitMatchesSelector(...an)}getElementsByTagName(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'getElementsByTagName' called on an object that is not a valid instance of Element.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getElementsByTagName' on 'Element': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getElementsByTagName' on 'Element': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[cn].getElementsByTagName(...rn))}getElementsByTagNameNS(en,an){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'getElementsByTagNameNS' called on an object that is not a valid instance of Element.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'getElementsByTagNameNS' on 'Element': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getElementsByTagNameNS' on 'Element': parameter 1",globals:Wt})}In.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getElementsByTagNameNS' on 'Element': parameter 2",globals:Wt});In.push(Pt)}return nn.tryWrapperForImpl(rn[cn].getElementsByTagNameNS(...In))}getElementsByClassName(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'getElementsByClassName' called on an object that is not a valid instance of Element.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getElementsByClassName' on 'Element': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getElementsByClassName' on 'Element': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[cn].getElementsByClassName(...rn))}insertAdjacentElement(en,In){const sn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(sn)){throw new Wt.TypeError("'insertAdjacentElement' called on an object that is not a valid instance of Element.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'insertAdjacentElement' on 'Element': 2 arguments required, but only ${arguments.length} present.`)}const on=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'insertAdjacentElement' on 'Element': parameter 1",globals:Wt});on.push(Pt)}{let en=arguments[1];en=Pt.convert(Wt,en,{context:"Failed to execute 'insertAdjacentElement' on 'Element': parameter 2"});on.push(en)}an(Wt);try{return nn.tryWrapperForImpl(sn[cn].insertAdjacentElement(...on))}finally{rn(Wt)}}insertAdjacentText(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'insertAdjacentText' called on an object that is not a valid instance of Element.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'insertAdjacentText' on 'Element': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'insertAdjacentText' on 'Element': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'insertAdjacentText' on 'Element': parameter 2",globals:Wt});rn.push(Pt)}return an[cn].insertAdjacentText(...rn)}insertAdjacentHTML(en,nn){const In=this!==null&&this!==undefined?this:Wt;if(!Pt.is(In)){throw new Wt.TypeError("'insertAdjacentHTML' called on an object that is not a valid instance of Element.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'insertAdjacentHTML' on 'Element': 2 arguments required, but only ${arguments.length} present.`)}const sn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'insertAdjacentHTML' on 'Element': parameter 1",globals:Wt});sn.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'insertAdjacentHTML' on 'Element': parameter 2",globals:Wt});sn.push(Pt)}an(Wt);try{return In[cn].insertAdjacentHTML(...sn)}finally{rn(Wt)}}getClientRects(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'getClientRects' called on an object that is not a valid instance of Element.")}return nn.tryWrapperForImpl(en[cn].getClientRects())}getBoundingClientRect(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'getBoundingClientRect' called on an object that is not a valid instance of Element.")}return nn.tryWrapperForImpl(en[cn].getBoundingClientRect())}before(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'before' called on an object that is not a valid instance of Element.")}const In=[];for(let Pt=0;Ptnn.tryWrapperForImpl(en[cn]["classList"])))}set classList(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set classList' called on an object that is not a valid instance of Element.")}const an=tn["classList"];if(!nn.isObject(an)){throw new Wt.TypeError("Property 'classList' is not an object")}Reflect.set(an,"value",en)}get slot(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get slot' called on an object that is not a valid instance of Element.")}an(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("slot");return Wt===null?"":Wt}finally{rn(Wt)}}set slot(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set slot' called on an object that is not a valid instance of Element.")}en=tn["DOMString"](en,{context:"Failed to set the 'slot' property on 'Element': The provided value",globals:Wt});an(Wt);try{nn[cn]._reflectSetTheContentAttribute("slot",en)}finally{rn(Wt)}}get attributes(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get attributes' called on an object that is not a valid instance of Element.")}return nn.getSameObject(this,"attributes",(()=>nn.tryWrapperForImpl(en[cn]["attributes"])))}get shadowRoot(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get shadowRoot' called on an object that is not a valid instance of Element.")}return nn.tryWrapperForImpl(en[cn]["shadowRoot"])}get outerHTML(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get outerHTML' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]["outerHTML"]}finally{rn(Wt)}}set outerHTML(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set outerHTML' called on an object that is not a valid instance of Element.")}en=tn["DOMString"](en,{context:"Failed to set the 'outerHTML' property on 'Element': The provided value",globals:Wt,treatNullAsEmptyString:true});an(Wt);try{nn[cn]["outerHTML"]=en}finally{rn(Wt)}}get scrollTop(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get scrollTop' called on an object that is not a valid instance of Element.")}return en[cn]["scrollTop"]}set scrollTop(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set scrollTop' called on an object that is not a valid instance of Element.")}en=tn["unrestricted double"](en,{context:"Failed to set the 'scrollTop' property on 'Element': The provided value",globals:Wt});nn[cn]["scrollTop"]=en}get scrollLeft(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get scrollLeft' called on an object that is not a valid instance of Element.")}return en[cn]["scrollLeft"]}set scrollLeft(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set scrollLeft' called on an object that is not a valid instance of Element.")}en=tn["unrestricted double"](en,{context:"Failed to set the 'scrollLeft' property on 'Element': The provided value",globals:Wt});nn[cn]["scrollLeft"]=en}get scrollWidth(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get scrollWidth' called on an object that is not a valid instance of Element.")}return en[cn]["scrollWidth"]}get scrollHeight(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get scrollHeight' called on an object that is not a valid instance of Element.")}return en[cn]["scrollHeight"]}get clientTop(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get clientTop' called on an object that is not a valid instance of Element.")}return en[cn]["clientTop"]}get clientLeft(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get clientLeft' called on an object that is not a valid instance of Element.")}return en[cn]["clientLeft"]}get clientWidth(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get clientWidth' called on an object that is not a valid instance of Element.")}return en[cn]["clientWidth"]}get clientHeight(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get clientHeight' called on an object that is not a valid instance of Element.")}return en[cn]["clientHeight"]}get innerHTML(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get innerHTML' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]["innerHTML"]}finally{rn(Wt)}}set innerHTML(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set innerHTML' called on an object that is not a valid instance of Element.")}en=tn["DOMString"](en,{context:"Failed to set the 'innerHTML' property on 'Element': The provided value",globals:Wt,treatNullAsEmptyString:true});an(Wt);try{nn[cn]["innerHTML"]=en}finally{rn(Wt)}}get role(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get role' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("role")}finally{rn(Wt)}}set role(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set role' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'role' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("role")}else{nn[cn]._reflectSetTheContentAttribute("role",en)}}finally{rn(Wt)}}get ariaAtomic(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaAtomic' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-atomic")}finally{rn(Wt)}}set ariaAtomic(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaAtomic' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaAtomic' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-atomic")}else{nn[cn]._reflectSetTheContentAttribute("aria-atomic",en)}}finally{rn(Wt)}}get ariaAutoComplete(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaAutoComplete' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-autocomplete")}finally{rn(Wt)}}set ariaAutoComplete(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaAutoComplete' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaAutoComplete' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-autocomplete")}else{nn[cn]._reflectSetTheContentAttribute("aria-autocomplete",en)}}finally{rn(Wt)}}get ariaBusy(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaBusy' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-busy")}finally{rn(Wt)}}set ariaBusy(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaBusy' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaBusy' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-busy")}else{nn[cn]._reflectSetTheContentAttribute("aria-busy",en)}}finally{rn(Wt)}}get ariaChecked(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaChecked' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-checked")}finally{rn(Wt)}}set ariaChecked(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaChecked' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaChecked' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-checked")}else{nn[cn]._reflectSetTheContentAttribute("aria-checked",en)}}finally{rn(Wt)}}get ariaColCount(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaColCount' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-colcount")}finally{rn(Wt)}}set ariaColCount(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaColCount' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaColCount' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-colcount")}else{nn[cn]._reflectSetTheContentAttribute("aria-colcount",en)}}finally{rn(Wt)}}get ariaColIndex(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaColIndex' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-colindex")}finally{rn(Wt)}}set ariaColIndex(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaColIndex' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaColIndex' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-colindex")}else{nn[cn]._reflectSetTheContentAttribute("aria-colindex",en)}}finally{rn(Wt)}}get ariaColIndexText(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaColIndexText' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-colindextext")}finally{rn(Wt)}}set ariaColIndexText(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaColIndexText' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaColIndexText' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-colindextext")}else{nn[cn]._reflectSetTheContentAttribute("aria-colindextext",en)}}finally{rn(Wt)}}get ariaColSpan(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaColSpan' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-colspan")}finally{rn(Wt)}}set ariaColSpan(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaColSpan' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaColSpan' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-colspan")}else{nn[cn]._reflectSetTheContentAttribute("aria-colspan",en)}}finally{rn(Wt)}}get ariaCurrent(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaCurrent' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-current")}finally{rn(Wt)}}set ariaCurrent(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaCurrent' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaCurrent' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-current")}else{nn[cn]._reflectSetTheContentAttribute("aria-current",en)}}finally{rn(Wt)}}get ariaDescription(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaDescription' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-description")}finally{rn(Wt)}}set ariaDescription(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaDescription' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaDescription' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-description")}else{nn[cn]._reflectSetTheContentAttribute("aria-description",en)}}finally{rn(Wt)}}get ariaDisabled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaDisabled' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-disabled")}finally{rn(Wt)}}set ariaDisabled(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaDisabled' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaDisabled' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-disabled")}else{nn[cn]._reflectSetTheContentAttribute("aria-disabled",en)}}finally{rn(Wt)}}get ariaExpanded(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaExpanded' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-expanded")}finally{rn(Wt)}}set ariaExpanded(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaExpanded' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaExpanded' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-expanded")}else{nn[cn]._reflectSetTheContentAttribute("aria-expanded",en)}}finally{rn(Wt)}}get ariaHasPopup(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaHasPopup' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-haspopup")}finally{rn(Wt)}}set ariaHasPopup(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaHasPopup' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaHasPopup' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-haspopup")}else{nn[cn]._reflectSetTheContentAttribute("aria-haspopup",en)}}finally{rn(Wt)}}get ariaHidden(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaHidden' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-hidden")}finally{rn(Wt)}}set ariaHidden(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaHidden' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaHidden' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-hidden")}else{nn[cn]._reflectSetTheContentAttribute("aria-hidden",en)}}finally{rn(Wt)}}get ariaInvalid(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaInvalid' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-invalid")}finally{rn(Wt)}}set ariaInvalid(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaInvalid' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaInvalid' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-invalid")}else{nn[cn]._reflectSetTheContentAttribute("aria-invalid",en)}}finally{rn(Wt)}}get ariaKeyShortcuts(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaKeyShortcuts' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-keyshortcuts")}finally{rn(Wt)}}set ariaKeyShortcuts(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaKeyShortcuts' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaKeyShortcuts' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-keyshortcuts")}else{nn[cn]._reflectSetTheContentAttribute("aria-keyshortcuts",en)}}finally{rn(Wt)}}get ariaLabel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaLabel' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-label")}finally{rn(Wt)}}set ariaLabel(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaLabel' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaLabel' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-label")}else{nn[cn]._reflectSetTheContentAttribute("aria-label",en)}}finally{rn(Wt)}}get ariaLevel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaLevel' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-level")}finally{rn(Wt)}}set ariaLevel(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaLevel' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaLevel' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-level")}else{nn[cn]._reflectSetTheContentAttribute("aria-level",en)}}finally{rn(Wt)}}get ariaLive(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaLive' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-live")}finally{rn(Wt)}}set ariaLive(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaLive' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaLive' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-live")}else{nn[cn]._reflectSetTheContentAttribute("aria-live",en)}}finally{rn(Wt)}}get ariaModal(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaModal' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-modal")}finally{rn(Wt)}}set ariaModal(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaModal' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaModal' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-modal")}else{nn[cn]._reflectSetTheContentAttribute("aria-modal",en)}}finally{rn(Wt)}}get ariaMultiLine(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaMultiLine' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-multiline")}finally{rn(Wt)}}set ariaMultiLine(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaMultiLine' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaMultiLine' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-multiline")}else{nn[cn]._reflectSetTheContentAttribute("aria-multiline",en)}}finally{rn(Wt)}}get ariaMultiSelectable(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaMultiSelectable' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-multiselectable")}finally{rn(Wt)}}set ariaMultiSelectable(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaMultiSelectable' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaMultiSelectable' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-multiselectable")}else{nn[cn]._reflectSetTheContentAttribute("aria-multiselectable",en)}}finally{rn(Wt)}}get ariaOrientation(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaOrientation' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-orientation")}finally{rn(Wt)}}set ariaOrientation(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaOrientation' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaOrientation' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-orientation")}else{nn[cn]._reflectSetTheContentAttribute("aria-orientation",en)}}finally{rn(Wt)}}get ariaPlaceholder(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaPlaceholder' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-placeholder")}finally{rn(Wt)}}set ariaPlaceholder(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaPlaceholder' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaPlaceholder' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-placeholder")}else{nn[cn]._reflectSetTheContentAttribute("aria-placeholder",en)}}finally{rn(Wt)}}get ariaPosInSet(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaPosInSet' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-posinset")}finally{rn(Wt)}}set ariaPosInSet(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaPosInSet' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaPosInSet' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-posinset")}else{nn[cn]._reflectSetTheContentAttribute("aria-posinset",en)}}finally{rn(Wt)}}get ariaPressed(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaPressed' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-pressed")}finally{rn(Wt)}}set ariaPressed(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaPressed' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaPressed' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-pressed")}else{nn[cn]._reflectSetTheContentAttribute("aria-pressed",en)}}finally{rn(Wt)}}get ariaReadOnly(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaReadOnly' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-readonly")}finally{rn(Wt)}}set ariaReadOnly(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaReadOnly' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaReadOnly' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-readonly")}else{nn[cn]._reflectSetTheContentAttribute("aria-readonly",en)}}finally{rn(Wt)}}get ariaRequired(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaRequired' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-required")}finally{rn(Wt)}}set ariaRequired(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaRequired' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaRequired' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-required")}else{nn[cn]._reflectSetTheContentAttribute("aria-required",en)}}finally{rn(Wt)}}get ariaRoleDescription(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaRoleDescription' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-roledescription")}finally{rn(Wt)}}set ariaRoleDescription(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaRoleDescription' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaRoleDescription' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-roledescription")}else{nn[cn]._reflectSetTheContentAttribute("aria-roledescription",en)}}finally{rn(Wt)}}get ariaRowCount(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaRowCount' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-rowcount")}finally{rn(Wt)}}set ariaRowCount(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaRowCount' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaRowCount' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-rowcount")}else{nn[cn]._reflectSetTheContentAttribute("aria-rowcount",en)}}finally{rn(Wt)}}get ariaRowIndex(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaRowIndex' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-rowindex")}finally{rn(Wt)}}set ariaRowIndex(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaRowIndex' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaRowIndex' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-rowindex")}else{nn[cn]._reflectSetTheContentAttribute("aria-rowindex",en)}}finally{rn(Wt)}}get ariaRowIndexText(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaRowIndexText' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-rowindextext")}finally{rn(Wt)}}set ariaRowIndexText(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaRowIndexText' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaRowIndexText' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-rowindextext")}else{nn[cn]._reflectSetTheContentAttribute("aria-rowindextext",en)}}finally{rn(Wt)}}get ariaRowSpan(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaRowSpan' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-rowspan")}finally{rn(Wt)}}set ariaRowSpan(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaRowSpan' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaRowSpan' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-rowspan")}else{nn[cn]._reflectSetTheContentAttribute("aria-rowspan",en)}}finally{rn(Wt)}}get ariaSelected(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaSelected' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-selected")}finally{rn(Wt)}}set ariaSelected(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaSelected' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaSelected' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-selected")}else{nn[cn]._reflectSetTheContentAttribute("aria-selected",en)}}finally{rn(Wt)}}get ariaSetSize(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaSetSize' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-setsize")}finally{rn(Wt)}}set ariaSetSize(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaSetSize' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaSetSize' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-setsize")}else{nn[cn]._reflectSetTheContentAttribute("aria-setsize",en)}}finally{rn(Wt)}}get ariaSort(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaSort' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-sort")}finally{rn(Wt)}}set ariaSort(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaSort' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaSort' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-sort")}else{nn[cn]._reflectSetTheContentAttribute("aria-sort",en)}}finally{rn(Wt)}}get ariaValueMax(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaValueMax' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-valuemax")}finally{rn(Wt)}}set ariaValueMax(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaValueMax' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaValueMax' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-valuemax")}else{nn[cn]._reflectSetTheContentAttribute("aria-valuemax",en)}}finally{rn(Wt)}}get ariaValueMin(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaValueMin' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-valuemin")}finally{rn(Wt)}}set ariaValueMin(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaValueMin' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaValueMin' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-valuemin")}else{nn[cn]._reflectSetTheContentAttribute("aria-valuemin",en)}}finally{rn(Wt)}}get ariaValueNow(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaValueNow' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-valuenow")}finally{rn(Wt)}}set ariaValueNow(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaValueNow' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaValueNow' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-valuenow")}else{nn[cn]._reflectSetTheContentAttribute("aria-valuenow",en)}}finally{rn(Wt)}}get ariaValueText(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaValueText' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-valuetext")}finally{rn(Wt)}}set ariaValueText(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaValueText' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaValueText' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-valuetext")}else{nn[cn]._reflectSetTheContentAttribute("aria-valuetext",en)}}finally{rn(Wt)}}get ariaRelevant(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaRelevant' called on an object that is not a valid instance of Element.")}an(Wt);try{return en[cn]._reflectGetTheContentAttribute("aria-relevant")}finally{rn(Wt)}}set ariaRelevant(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaRelevant' called on an object that is not a valid instance of Element.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaRelevant' property on 'Element': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("aria-relevant")}else{nn[cn]._reflectSetTheContentAttribute("aria-relevant",en)}}finally{rn(Wt)}}get previousElementSibling(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get previousElementSibling' called on an object that is not a valid instance of Element.")}return nn.tryWrapperForImpl(en[cn]["previousElementSibling"])}get nextElementSibling(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get nextElementSibling' called on an object that is not a valid instance of Element.")}return nn.tryWrapperForImpl(en[cn]["nextElementSibling"])}get children(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get children' called on an object that is not a valid instance of Element.")}return nn.getSameObject(this,"children",(()=>nn.tryWrapperForImpl(en[cn]["children"])))}get firstElementChild(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get firstElementChild' called on an object that is not a valid instance of Element.")}return nn.tryWrapperForImpl(en[cn]["firstElementChild"])}get lastElementChild(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get lastElementChild' called on an object that is not a valid instance of Element.")}return nn.tryWrapperForImpl(en[cn]["lastElementChild"])}get childElementCount(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get childElementCount' called on an object that is not a valid instance of Element.")}return en[cn]["childElementCount"]}get assignedSlot(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get assignedSlot' called on an object that is not a valid instance of Element.")}return nn.tryWrapperForImpl(en[cn]["assignedSlot"])}}Object.defineProperties(Element.prototype,{hasAttributes:{enumerable:true},getAttributeNames:{enumerable:true},getAttribute:{enumerable:true},getAttributeNS:{enumerable:true},setAttribute:{enumerable:true},setAttributeNS:{enumerable:true},removeAttribute:{enumerable:true},removeAttributeNS:{enumerable:true},toggleAttribute:{enumerable:true},hasAttribute:{enumerable:true},hasAttributeNS:{enumerable:true},getAttributeNode:{enumerable:true},getAttributeNodeNS:{enumerable:true},setAttributeNode:{enumerable:true},setAttributeNodeNS:{enumerable:true},removeAttributeNode:{enumerable:true},attachShadow:{enumerable:true},closest:{enumerable:true},matches:{enumerable:true},webkitMatchesSelector:{enumerable:true},getElementsByTagName:{enumerable:true},getElementsByTagNameNS:{enumerable:true},getElementsByClassName:{enumerable:true},insertAdjacentElement:{enumerable:true},insertAdjacentText:{enumerable:true},insertAdjacentHTML:{enumerable:true},getClientRects:{enumerable:true},getBoundingClientRect:{enumerable:true},before:{enumerable:true},after:{enumerable:true},replaceWith:{enumerable:true},remove:{enumerable:true},prepend:{enumerable:true},append:{enumerable:true},replaceChildren:{enumerable:true},querySelector:{enumerable:true},querySelectorAll:{enumerable:true},namespaceURI:{enumerable:true},prefix:{enumerable:true},localName:{enumerable:true},tagName:{enumerable:true},id:{enumerable:true},className:{enumerable:true},classList:{enumerable:true},slot:{enumerable:true},attributes:{enumerable:true},shadowRoot:{enumerable:true},outerHTML:{enumerable:true},scrollTop:{enumerable:true},scrollLeft:{enumerable:true},scrollWidth:{enumerable:true},scrollHeight:{enumerable:true},clientTop:{enumerable:true},clientLeft:{enumerable:true},clientWidth:{enumerable:true},clientHeight:{enumerable:true},innerHTML:{enumerable:true},role:{enumerable:true},ariaAtomic:{enumerable:true},ariaAutoComplete:{enumerable:true},ariaBusy:{enumerable:true},ariaChecked:{enumerable:true},ariaColCount:{enumerable:true},ariaColIndex:{enumerable:true},ariaColIndexText:{enumerable:true},ariaColSpan:{enumerable:true},ariaCurrent:{enumerable:true},ariaDescription:{enumerable:true},ariaDisabled:{enumerable:true},ariaExpanded:{enumerable:true},ariaHasPopup:{enumerable:true},ariaHidden:{enumerable:true},ariaInvalid:{enumerable:true},ariaKeyShortcuts:{enumerable:true},ariaLabel:{enumerable:true},ariaLevel:{enumerable:true},ariaLive:{enumerable:true},ariaModal:{enumerable:true},ariaMultiLine:{enumerable:true},ariaMultiSelectable:{enumerable:true},ariaOrientation:{enumerable:true},ariaPlaceholder:{enumerable:true},ariaPosInSet:{enumerable:true},ariaPressed:{enumerable:true},ariaReadOnly:{enumerable:true},ariaRequired:{enumerable:true},ariaRoleDescription:{enumerable:true},ariaRowCount:{enumerable:true},ariaRowIndex:{enumerable:true},ariaRowIndexText:{enumerable:true},ariaRowSpan:{enumerable:true},ariaSelected:{enumerable:true},ariaSetSize:{enumerable:true},ariaSort:{enumerable:true},ariaValueMax:{enumerable:true},ariaValueMin:{enumerable:true},ariaValueNow:{enumerable:true},ariaValueText:{enumerable:true},ariaRelevant:{enumerable:true},previousElementSibling:{enumerable:true},nextElementSibling:{enumerable:true},children:{enumerable:true},firstElementChild:{enumerable:true},lastElementChild:{enumerable:true},childElementCount:{enumerable:true},assignedSlot:{enumerable:true},[Symbol.toStringTag]:{value:"Element",configurable:true},[Symbol.unscopables]:{value:{slot:true,before:true,after:true,replaceWith:true,remove:true,prepend:true,append:true,replaceChildren:true,__proto__:null},configurable:true}});dn[un]=Element;Object.defineProperty(Wt,un,{configurable:true,writable:true,value:Element})};const mn=en(54782)},41234:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{{const an="is";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["DOMString"](rn,{context:nn+" has member 'is' that",globals:Wt});en[an]=rn}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},93202:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{{const an="extends";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["DOMString"](rn,{context:nn+" has member 'extends' that",globals:Wt});en[an]=rn}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},1745:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(8348).ceReactionsPreSteps;const rn=en(8348).ceReactionsPostSteps;const In=nn.implSymbol;const sn=nn.ctorRegistrySymbol;const on="ElementInternals";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,In)&&Wt[In]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'ElementInternals'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[sn]["ElementInternals"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,In,{value:new dn.implementation(en,tn,an),configurable:true});Wt[In][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[In])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,In,{value:Object.create(dn.implementation.prototype),configurable:true});tn[In][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[In])}return tn[In]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const sn=nn.initCtorRegistry(Wt);class ElementInternals{constructor(){throw new Wt.TypeError("Illegal constructor")}get shadowRoot(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get shadowRoot' called on an object that is not a valid instance of ElementInternals.")}return nn.tryWrapperForImpl(en[In]["shadowRoot"])}get role(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get role' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("role")}finally{rn(Wt)}}set role(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set role' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'role' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("role")}else{nn[In]._reflectSetTheContentAttribute("role",en)}}finally{rn(Wt)}}get ariaAtomic(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaAtomic' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-atomic")}finally{rn(Wt)}}set ariaAtomic(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaAtomic' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaAtomic' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-atomic")}else{nn[In]._reflectSetTheContentAttribute("aria-atomic",en)}}finally{rn(Wt)}}get ariaAutoComplete(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaAutoComplete' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-autocomplete")}finally{rn(Wt)}}set ariaAutoComplete(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaAutoComplete' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaAutoComplete' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-autocomplete")}else{nn[In]._reflectSetTheContentAttribute("aria-autocomplete",en)}}finally{rn(Wt)}}get ariaBusy(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaBusy' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-busy")}finally{rn(Wt)}}set ariaBusy(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaBusy' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaBusy' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-busy")}else{nn[In]._reflectSetTheContentAttribute("aria-busy",en)}}finally{rn(Wt)}}get ariaChecked(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaChecked' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-checked")}finally{rn(Wt)}}set ariaChecked(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaChecked' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaChecked' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-checked")}else{nn[In]._reflectSetTheContentAttribute("aria-checked",en)}}finally{rn(Wt)}}get ariaColCount(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaColCount' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-colcount")}finally{rn(Wt)}}set ariaColCount(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaColCount' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaColCount' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-colcount")}else{nn[In]._reflectSetTheContentAttribute("aria-colcount",en)}}finally{rn(Wt)}}get ariaColIndex(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaColIndex' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-colindex")}finally{rn(Wt)}}set ariaColIndex(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaColIndex' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaColIndex' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-colindex")}else{nn[In]._reflectSetTheContentAttribute("aria-colindex",en)}}finally{rn(Wt)}}get ariaColIndexText(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaColIndexText' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-colindextext")}finally{rn(Wt)}}set ariaColIndexText(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaColIndexText' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaColIndexText' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-colindextext")}else{nn[In]._reflectSetTheContentAttribute("aria-colindextext",en)}}finally{rn(Wt)}}get ariaColSpan(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaColSpan' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-colspan")}finally{rn(Wt)}}set ariaColSpan(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaColSpan' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaColSpan' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-colspan")}else{nn[In]._reflectSetTheContentAttribute("aria-colspan",en)}}finally{rn(Wt)}}get ariaCurrent(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaCurrent' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-current")}finally{rn(Wt)}}set ariaCurrent(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaCurrent' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaCurrent' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-current")}else{nn[In]._reflectSetTheContentAttribute("aria-current",en)}}finally{rn(Wt)}}get ariaDescription(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaDescription' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-description")}finally{rn(Wt)}}set ariaDescription(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaDescription' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaDescription' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-description")}else{nn[In]._reflectSetTheContentAttribute("aria-description",en)}}finally{rn(Wt)}}get ariaDisabled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaDisabled' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-disabled")}finally{rn(Wt)}}set ariaDisabled(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaDisabled' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaDisabled' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-disabled")}else{nn[In]._reflectSetTheContentAttribute("aria-disabled",en)}}finally{rn(Wt)}}get ariaExpanded(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaExpanded' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-expanded")}finally{rn(Wt)}}set ariaExpanded(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaExpanded' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaExpanded' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-expanded")}else{nn[In]._reflectSetTheContentAttribute("aria-expanded",en)}}finally{rn(Wt)}}get ariaHasPopup(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaHasPopup' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-haspopup")}finally{rn(Wt)}}set ariaHasPopup(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaHasPopup' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaHasPopup' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-haspopup")}else{nn[In]._reflectSetTheContentAttribute("aria-haspopup",en)}}finally{rn(Wt)}}get ariaHidden(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaHidden' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-hidden")}finally{rn(Wt)}}set ariaHidden(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaHidden' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaHidden' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-hidden")}else{nn[In]._reflectSetTheContentAttribute("aria-hidden",en)}}finally{rn(Wt)}}get ariaInvalid(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaInvalid' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-invalid")}finally{rn(Wt)}}set ariaInvalid(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaInvalid' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaInvalid' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-invalid")}else{nn[In]._reflectSetTheContentAttribute("aria-invalid",en)}}finally{rn(Wt)}}get ariaKeyShortcuts(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaKeyShortcuts' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-keyshortcuts")}finally{rn(Wt)}}set ariaKeyShortcuts(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaKeyShortcuts' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaKeyShortcuts' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-keyshortcuts")}else{nn[In]._reflectSetTheContentAttribute("aria-keyshortcuts",en)}}finally{rn(Wt)}}get ariaLabel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaLabel' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-label")}finally{rn(Wt)}}set ariaLabel(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaLabel' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaLabel' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-label")}else{nn[In]._reflectSetTheContentAttribute("aria-label",en)}}finally{rn(Wt)}}get ariaLevel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaLevel' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-level")}finally{rn(Wt)}}set ariaLevel(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaLevel' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaLevel' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-level")}else{nn[In]._reflectSetTheContentAttribute("aria-level",en)}}finally{rn(Wt)}}get ariaLive(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaLive' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-live")}finally{rn(Wt)}}set ariaLive(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaLive' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaLive' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-live")}else{nn[In]._reflectSetTheContentAttribute("aria-live",en)}}finally{rn(Wt)}}get ariaModal(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaModal' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-modal")}finally{rn(Wt)}}set ariaModal(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaModal' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaModal' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-modal")}else{nn[In]._reflectSetTheContentAttribute("aria-modal",en)}}finally{rn(Wt)}}get ariaMultiLine(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaMultiLine' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-multiline")}finally{rn(Wt)}}set ariaMultiLine(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaMultiLine' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaMultiLine' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-multiline")}else{nn[In]._reflectSetTheContentAttribute("aria-multiline",en)}}finally{rn(Wt)}}get ariaMultiSelectable(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaMultiSelectable' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-multiselectable")}finally{rn(Wt)}}set ariaMultiSelectable(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaMultiSelectable' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaMultiSelectable' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-multiselectable")}else{nn[In]._reflectSetTheContentAttribute("aria-multiselectable",en)}}finally{rn(Wt)}}get ariaOrientation(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaOrientation' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-orientation")}finally{rn(Wt)}}set ariaOrientation(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaOrientation' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaOrientation' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-orientation")}else{nn[In]._reflectSetTheContentAttribute("aria-orientation",en)}}finally{rn(Wt)}}get ariaPlaceholder(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaPlaceholder' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-placeholder")}finally{rn(Wt)}}set ariaPlaceholder(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaPlaceholder' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaPlaceholder' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-placeholder")}else{nn[In]._reflectSetTheContentAttribute("aria-placeholder",en)}}finally{rn(Wt)}}get ariaPosInSet(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaPosInSet' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-posinset")}finally{rn(Wt)}}set ariaPosInSet(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaPosInSet' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaPosInSet' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-posinset")}else{nn[In]._reflectSetTheContentAttribute("aria-posinset",en)}}finally{rn(Wt)}}get ariaPressed(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaPressed' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-pressed")}finally{rn(Wt)}}set ariaPressed(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaPressed' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaPressed' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-pressed")}else{nn[In]._reflectSetTheContentAttribute("aria-pressed",en)}}finally{rn(Wt)}}get ariaReadOnly(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaReadOnly' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-readonly")}finally{rn(Wt)}}set ariaReadOnly(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaReadOnly' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaReadOnly' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-readonly")}else{nn[In]._reflectSetTheContentAttribute("aria-readonly",en)}}finally{rn(Wt)}}get ariaRequired(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaRequired' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-required")}finally{rn(Wt)}}set ariaRequired(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaRequired' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaRequired' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-required")}else{nn[In]._reflectSetTheContentAttribute("aria-required",en)}}finally{rn(Wt)}}get ariaRoleDescription(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaRoleDescription' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-roledescription")}finally{rn(Wt)}}set ariaRoleDescription(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaRoleDescription' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaRoleDescription' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-roledescription")}else{nn[In]._reflectSetTheContentAttribute("aria-roledescription",en)}}finally{rn(Wt)}}get ariaRowCount(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaRowCount' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-rowcount")}finally{rn(Wt)}}set ariaRowCount(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaRowCount' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaRowCount' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-rowcount")}else{nn[In]._reflectSetTheContentAttribute("aria-rowcount",en)}}finally{rn(Wt)}}get ariaRowIndex(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaRowIndex' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-rowindex")}finally{rn(Wt)}}set ariaRowIndex(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaRowIndex' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaRowIndex' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-rowindex")}else{nn[In]._reflectSetTheContentAttribute("aria-rowindex",en)}}finally{rn(Wt)}}get ariaRowIndexText(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaRowIndexText' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-rowindextext")}finally{rn(Wt)}}set ariaRowIndexText(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaRowIndexText' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaRowIndexText' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-rowindextext")}else{nn[In]._reflectSetTheContentAttribute("aria-rowindextext",en)}}finally{rn(Wt)}}get ariaRowSpan(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaRowSpan' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-rowspan")}finally{rn(Wt)}}set ariaRowSpan(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaRowSpan' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaRowSpan' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-rowspan")}else{nn[In]._reflectSetTheContentAttribute("aria-rowspan",en)}}finally{rn(Wt)}}get ariaSelected(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaSelected' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-selected")}finally{rn(Wt)}}set ariaSelected(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaSelected' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaSelected' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-selected")}else{nn[In]._reflectSetTheContentAttribute("aria-selected",en)}}finally{rn(Wt)}}get ariaSetSize(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaSetSize' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-setsize")}finally{rn(Wt)}}set ariaSetSize(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaSetSize' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaSetSize' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-setsize")}else{nn[In]._reflectSetTheContentAttribute("aria-setsize",en)}}finally{rn(Wt)}}get ariaSort(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaSort' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-sort")}finally{rn(Wt)}}set ariaSort(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaSort' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaSort' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-sort")}else{nn[In]._reflectSetTheContentAttribute("aria-sort",en)}}finally{rn(Wt)}}get ariaValueMax(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaValueMax' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-valuemax")}finally{rn(Wt)}}set ariaValueMax(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaValueMax' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaValueMax' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-valuemax")}else{nn[In]._reflectSetTheContentAttribute("aria-valuemax",en)}}finally{rn(Wt)}}get ariaValueMin(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaValueMin' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-valuemin")}finally{rn(Wt)}}set ariaValueMin(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaValueMin' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaValueMin' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-valuemin")}else{nn[In]._reflectSetTheContentAttribute("aria-valuemin",en)}}finally{rn(Wt)}}get ariaValueNow(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaValueNow' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-valuenow")}finally{rn(Wt)}}set ariaValueNow(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaValueNow' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaValueNow' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-valuenow")}else{nn[In]._reflectSetTheContentAttribute("aria-valuenow",en)}}finally{rn(Wt)}}get ariaValueText(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaValueText' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-valuetext")}finally{rn(Wt)}}set ariaValueText(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaValueText' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaValueText' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-valuetext")}else{nn[In]._reflectSetTheContentAttribute("aria-valuetext",en)}}finally{rn(Wt)}}get ariaRelevant(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ariaRelevant' called on an object that is not a valid instance of ElementInternals.")}an(Wt);try{return en[In]._reflectGetTheContentAttribute("aria-relevant")}finally{rn(Wt)}}set ariaRelevant(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ariaRelevant' called on an object that is not a valid instance of ElementInternals.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'ariaRelevant' property on 'ElementInternals': The provided value",globals:Wt})}an(Wt);try{if(en===null){nn[In]._reflectDeleteTheContentAttribute("aria-relevant")}else{nn[In]._reflectSetTheContentAttribute("aria-relevant",en)}}finally{rn(Wt)}}}Object.defineProperties(ElementInternals.prototype,{shadowRoot:{enumerable:true},role:{enumerable:true},ariaAtomic:{enumerable:true},ariaAutoComplete:{enumerable:true},ariaBusy:{enumerable:true},ariaChecked:{enumerable:true},ariaColCount:{enumerable:true},ariaColIndex:{enumerable:true},ariaColIndexText:{enumerable:true},ariaColSpan:{enumerable:true},ariaCurrent:{enumerable:true},ariaDescription:{enumerable:true},ariaDisabled:{enumerable:true},ariaExpanded:{enumerable:true},ariaHasPopup:{enumerable:true},ariaHidden:{enumerable:true},ariaInvalid:{enumerable:true},ariaKeyShortcuts:{enumerable:true},ariaLabel:{enumerable:true},ariaLevel:{enumerable:true},ariaLive:{enumerable:true},ariaModal:{enumerable:true},ariaMultiLine:{enumerable:true},ariaMultiSelectable:{enumerable:true},ariaOrientation:{enumerable:true},ariaPlaceholder:{enumerable:true},ariaPosInSet:{enumerable:true},ariaPressed:{enumerable:true},ariaReadOnly:{enumerable:true},ariaRequired:{enumerable:true},ariaRoleDescription:{enumerable:true},ariaRowCount:{enumerable:true},ariaRowIndex:{enumerable:true},ariaRowIndexText:{enumerable:true},ariaRowSpan:{enumerable:true},ariaSelected:{enumerable:true},ariaSetSize:{enumerable:true},ariaSort:{enumerable:true},ariaValueMax:{enumerable:true},ariaValueMin:{enumerable:true},ariaValueNow:{enumerable:true},ariaValueText:{enumerable:true},ariaRelevant:{enumerable:true},[Symbol.toStringTag]:{value:"ElementInternals",configurable:true}});sn[on]=ElementInternals;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:ElementInternals})};const dn=en(72742)},15992:(Wt,Pt)=>{"use strict";const en=new Set(["transparent","native"]);Pt.enumerationValues=en;Pt.convert=(Wt,Pt,{context:tn="The provided value"}={})=>{const nn=`${Pt}`;if(!en.has(nn)){throw new Wt.TypeError(`${tn} '${nn}' is not a valid enumeration value for EndingType`)}return nn}},89045:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(92439);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(94431);const on="ErrorEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'ErrorEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["ErrorEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class ErrorEvent extends Wt.Event{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'ErrorEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'ErrorEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'ErrorEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}get message(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get message' called on an object that is not a valid instance of ErrorEvent.")}return en[rn]["message"]}get filename(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get filename' called on an object that is not a valid instance of ErrorEvent.")}return en[rn]["filename"]}get lineno(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get lineno' called on an object that is not a valid instance of ErrorEvent.")}return en[rn]["lineno"]}get colno(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get colno' called on an object that is not a valid instance of ErrorEvent.")}return en[rn]["colno"]}get error(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get error' called on an object that is not a valid instance of ErrorEvent.")}return en[rn]["error"]}}Object.defineProperties(ErrorEvent.prototype,{message:{enumerable:true},filename:{enumerable:true},lineno:{enumerable:true},colno:{enumerable:true},error:{enumerable:true},[Symbol.toStringTag]:{value:"ErrorEvent",configurable:true}});In[on]=ErrorEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:ErrorEvent})};const dn=en(23472)},92439:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(31893);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:nn});{const an="colno";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unsigned long"](rn,{context:nn+" has member 'colno' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="error";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["any"](rn,{context:nn+" has member 'error' that",globals:Wt});en[an]=rn}else{en[an]=null}}{const an="filename";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["USVString"](rn,{context:nn+" has member 'filename' that",globals:Wt});en[an]=rn}else{en[an]=""}}{const an="lineno";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unsigned long"](rn,{context:nn+" has member 'lineno' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="message";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["DOMString"](rn,{context:nn+" has member 'message' that",globals:Wt});en[an]=rn}else{en[an]=""}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},94431:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(31893);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn="Event";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Event'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["Event"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};function getUnforgeables(Wt){let en=on.get(Wt);if(en===undefined){en=Object.create(null);nn.define(en,{get isTrusted(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get isTrusted' called on an object that is not a valid instance of Event.")}return en[rn]["isTrusted"]}});Object.defineProperties(en,{isTrusted:{configurable:false}});on.set(Wt,en)}return en}Pt._internalSetup=(Wt,Pt)=>{nn.define(Wt,getUnforgeables(Pt))};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const on=new WeakMap;const cn=new Set(["Window","Worker","AudioWorklet"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class Event{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'Event': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'Event': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'Event': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}composedPath(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'composedPath' called on an object that is not a valid instance of Event.")}return nn.tryWrapperForImpl(en[rn].composedPath())}stopPropagation(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'stopPropagation' called on an object that is not a valid instance of Event.")}return en[rn].stopPropagation()}stopImmediatePropagation(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'stopImmediatePropagation' called on an object that is not a valid instance of Event.")}return en[rn].stopImmediatePropagation()}preventDefault(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'preventDefault' called on an object that is not a valid instance of Event.")}return en[rn].preventDefault()}initEvent(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'initEvent' called on an object that is not a valid instance of Event.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'initEvent' on 'Event': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initEvent' on 'Event': parameter 1",globals:Wt});an.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initEvent' on 'Event': parameter 2",globals:Wt})}else{Pt=false}an.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initEvent' on 'Event': parameter 3",globals:Wt})}else{Pt=false}an.push(Pt)}return nn[rn].initEvent(...an)}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of Event.")}return en[rn]["type"]}get target(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get target' called on an object that is not a valid instance of Event.")}return nn.tryWrapperForImpl(en[rn]["target"])}get srcElement(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get srcElement' called on an object that is not a valid instance of Event.")}return nn.tryWrapperForImpl(en[rn]["srcElement"])}get currentTarget(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get currentTarget' called on an object that is not a valid instance of Event.")}return nn.tryWrapperForImpl(en[rn]["currentTarget"])}get eventPhase(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get eventPhase' called on an object that is not a valid instance of Event.")}return en[rn]["eventPhase"]}get cancelBubble(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get cancelBubble' called on an object that is not a valid instance of Event.")}return en[rn]["cancelBubble"]}set cancelBubble(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set cancelBubble' called on an object that is not a valid instance of Event.")}en=tn["boolean"](en,{context:"Failed to set the 'cancelBubble' property on 'Event': The provided value",globals:Wt});nn[rn]["cancelBubble"]=en}get bubbles(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get bubbles' called on an object that is not a valid instance of Event.")}return en[rn]["bubbles"]}get cancelable(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get cancelable' called on an object that is not a valid instance of Event.")}return en[rn]["cancelable"]}get returnValue(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get returnValue' called on an object that is not a valid instance of Event.")}return en[rn]["returnValue"]}set returnValue(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set returnValue' called on an object that is not a valid instance of Event.")}en=tn["boolean"](en,{context:"Failed to set the 'returnValue' property on 'Event': The provided value",globals:Wt});nn[rn]["returnValue"]=en}get defaultPrevented(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get defaultPrevented' called on an object that is not a valid instance of Event.")}return en[rn]["defaultPrevented"]}get composed(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get composed' called on an object that is not a valid instance of Event.")}return en[rn]["composed"]}get timeStamp(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get timeStamp' called on an object that is not a valid instance of Event.")}return en[rn]["timeStamp"]}}Object.defineProperties(Event.prototype,{composedPath:{enumerable:true},stopPropagation:{enumerable:true},stopImmediatePropagation:{enumerable:true},preventDefault:{enumerable:true},initEvent:{enumerable:true},type:{enumerable:true},target:{enumerable:true},srcElement:{enumerable:true},currentTarget:{enumerable:true},eventPhase:{enumerable:true},cancelBubble:{enumerable:true},bubbles:{enumerable:true},cancelable:{enumerable:true},returnValue:{enumerable:true},defaultPrevented:{enumerable:true},composed:{enumerable:true},timeStamp:{enumerable:true},[Symbol.toStringTag]:{value:"Event",configurable:true},NONE:{value:0,enumerable:true},CAPTURING_PHASE:{value:1,enumerable:true},AT_TARGET:{value:2,enumerable:true},BUBBLING_PHASE:{value:3,enumerable:true}});Object.defineProperties(Event,{NONE:{value:0,enumerable:true},CAPTURING_PHASE:{value:1,enumerable:true},AT_TARGET:{value:2,enumerable:true},BUBBLING_PHASE:{value:3,enumerable:true}});In[sn]=Event;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:Event})};const dn=en(23934)},69117:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt.convert=(Wt,Pt,{context:en="The provided value"}={})=>{function invokeTheCallbackFunction(an){const rn=nn.tryWrapperForImpl(this);let In;if(typeof Pt==="function"){an=nn.tryWrapperForImpl(an);In=Reflect.apply(Pt,rn,[an])}In=tn["any"](In,{context:en,globals:Wt});return In}invokeTheCallbackFunction.construct=an=>{an=nn.tryWrapperForImpl(an);let rn=Reflect.construct(Pt,[an]);rn=tn["any"](rn,{context:en,globals:Wt});return rn};invokeTheCallbackFunction[nn.wrapperSymbol]=Pt;invokeTheCallbackFunction.objectReference=Pt;return invokeTheCallbackFunction}},31893:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{{const an="bubbles";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'bubbles' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="cancelable";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'cancelable' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="composed";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'composed' that",globals:Wt});en[an]=rn}else{en[an]=false}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},85375:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt.convert=(Wt,Pt,{context:en="The provided value"}={})=>{if(!nn.isObject(Pt)){throw new Wt.TypeError(`${en} is not an object.`)}function callTheUserObjectsOperation(tn){let an=nn.tryWrapperForImpl(this);let rn=Pt;let In=rn;if(typeof rn!=="function"){In=rn["handleEvent"];if(typeof In!=="function"){throw new Wt.TypeError(`${en} does not correctly implement EventListener.`)}an=rn}tn=nn.tryWrapperForImpl(tn);let sn=Reflect.apply(In,an,[tn])}callTheUserObjectsOperation[nn.wrapperSymbol]=Pt;callTheUserObjectsOperation.objectReference=Pt;return callTheUserObjectsOperation};Pt.install=(Wt,Pt)=>{}},61537:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{{const an="capture";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'capture' that",globals:Wt});en[an]=rn}else{en[an]=false}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},6588:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(27019);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:nn});{const an="altKey";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'altKey' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="ctrlKey";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'ctrlKey' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="metaKey";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'metaKey' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="modifierAltGraph";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'modifierAltGraph' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="modifierCapsLock";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'modifierCapsLock' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="modifierFn";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'modifierFn' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="modifierFnLock";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'modifierFnLock' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="modifierHyper";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'modifierHyper' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="modifierNumLock";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'modifierNumLock' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="modifierScrollLock";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'modifierScrollLock' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="modifierSuper";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'modifierSuper' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="modifierSymbol";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'modifierSymbol' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="modifierSymbolLock";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'modifierSymbolLock' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="shiftKey";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'shiftKey' that",globals:Wt});en[an]=rn}else{en[an]=false}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},29122:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(85375);const rn=en(95158);const In=en(61537);const sn=en(94431);const on=nn.implSymbol;const cn=nn.ctorRegistrySymbol;const dn="EventTarget";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,on)&&Wt[on]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'EventTarget'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[cn]["EventTarget"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,on,{value:new pn.implementation(en,tn,an),configurable:true});Wt[on][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[on])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,on,{value:Object.create(pn.implementation.prototype),configurable:true});tn[on][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[on])}return tn[on]};const un=new Set(["Window","Worker","AudioWorklet"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const cn=nn.initCtorRegistry(Wt);class EventTarget{constructor(){return Pt.setup(Object.create(new.target.prototype),Wt,undefined)}addEventListener(en,In){const sn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(sn)){throw new Wt.TypeError("'addEventListener' called on an object that is not a valid instance of EventTarget.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'addEventListener' on 'EventTarget': 2 arguments required, but only ${arguments.length} present.`)}const cn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'addEventListener' on 'EventTarget': parameter 1",globals:Wt});cn.push(Pt)}{let Pt=arguments[1];if(Pt===null||Pt===undefined){Pt=null}else{Pt=an.convert(Wt,Pt,{context:"Failed to execute 'addEventListener' on 'EventTarget': parameter 2"})}cn.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'addEventListener' on 'EventTarget': parameter 3"})}else if(nn.isObject(Pt)){Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'addEventListener' on 'EventTarget': parameter 3"+" dictionary"})}else if(typeof Pt==="boolean"){Pt=tn["boolean"](Pt,{context:"Failed to execute 'addEventListener' on 'EventTarget': parameter 3",globals:Wt})}else{Pt=tn["boolean"](Pt,{context:"Failed to execute 'addEventListener' on 'EventTarget': parameter 3",globals:Wt})}}cn.push(Pt)}return sn[on].addEventListener(...cn)}removeEventListener(en,rn){const sn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(sn)){throw new Wt.TypeError("'removeEventListener' called on an object that is not a valid instance of EventTarget.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'removeEventListener' on 'EventTarget': 2 arguments required, but only ${arguments.length} present.`)}const cn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'removeEventListener' on 'EventTarget': parameter 1",globals:Wt});cn.push(Pt)}{let Pt=arguments[1];if(Pt===null||Pt===undefined){Pt=null}else{Pt=an.convert(Wt,Pt,{context:"Failed to execute 'removeEventListener' on 'EventTarget': parameter 2"})}cn.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=In.convert(Wt,Pt,{context:"Failed to execute 'removeEventListener' on 'EventTarget': parameter 3"})}else if(nn.isObject(Pt)){Pt=In.convert(Wt,Pt,{context:"Failed to execute 'removeEventListener' on 'EventTarget': parameter 3"+" dictionary"})}else if(typeof Pt==="boolean"){Pt=tn["boolean"](Pt,{context:"Failed to execute 'removeEventListener' on 'EventTarget': parameter 3",globals:Wt})}else{Pt=tn["boolean"](Pt,{context:"Failed to execute 'removeEventListener' on 'EventTarget': parameter 3",globals:Wt})}}cn.push(Pt)}return sn[on].removeEventListener(...cn)}dispatchEvent(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'dispatchEvent' called on an object that is not a valid instance of EventTarget.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'dispatchEvent' on 'EventTarget': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=sn.convert(Wt,Pt,{context:"Failed to execute 'dispatchEvent' on 'EventTarget': parameter 1"});nn.push(Pt)}return tn[on].dispatchEvent(...nn)}}Object.defineProperties(EventTarget.prototype,{addEventListener:{enumerable:true},removeEventListener:{enumerable:true},dispatchEvent:{enumerable:true},[Symbol.toStringTag]:{value:"EventTarget",configurable:true}});cn[dn]=EventTarget;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:EventTarget})};const pn=en(92697)},18516:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="External";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'External'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["External"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class External{constructor(){throw new Wt.TypeError("Illegal constructor")}AddSearchProvider(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'AddSearchProvider' called on an object that is not a valid instance of External.")}return en[an].AddSearchProvider()}IsSearchProviderInstalled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'IsSearchProviderInstalled' called on an object that is not a valid instance of External.")}return en[an].IsSearchProviderInstalled()}}Object.defineProperties(External.prototype,{AddSearchProvider:{enumerable:true},IsSearchProviderInstalled:{enumerable:true},[Symbol.toStringTag]:{value:"External",configurable:true}});tn[In]=External;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:External})};const on=en(72990)},96689:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(42960);const rn=en(92384);const In=nn.implSymbol;const sn=nn.ctorRegistrySymbol;const on="File";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,In)&&Wt[In]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'File'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[sn]["File"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{an._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,In,{value:new dn.implementation(en,tn,an),configurable:true});Wt[In][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[In])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,In,{value:Object.create(dn.implementation.prototype),configurable:true});tn[In][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[In])}return tn[In]};const cn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const sn=nn.initCtorRegistry(Wt);class File extends Wt.Blob{constructor(en,In){if(arguments.length<2){throw new Wt.TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`)}const sn=[];{let Pt=arguments[0];if(!nn.isObject(Pt)){throw new Wt.TypeError("Failed to construct 'File': parameter 1"+" is not an iterable object.")}else{const en=[];const rn=Pt;for(let Pt of rn){if(an.is(Pt)){Pt=nn.implForWrapper(Pt)}else if(nn.isArrayBuffer(Pt)){}else if(ArrayBuffer.isView(Pt)){}else{Pt=tn["USVString"](Pt,{context:"Failed to construct 'File': parameter 1"+"'s element",globals:Wt})}en.push(Pt)}Pt=en}sn.push(Pt)}{let Pt=arguments[1];Pt=tn["USVString"](Pt,{context:"Failed to construct 'File': parameter 2",globals:Wt});sn.push(Pt)}{let Pt=arguments[2];Pt=rn.convert(Wt,Pt,{context:"Failed to construct 'File': parameter 3"});sn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,sn)}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of File.")}return en[In]["name"]}get lastModified(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get lastModified' called on an object that is not a valid instance of File.")}return en[In]["lastModified"]}}Object.defineProperties(File.prototype,{name:{enumerable:true},lastModified:{enumerable:true},[Symbol.toStringTag]:{value:"File",configurable:true}});sn[on]=File;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:File})};const dn=en(78202)},12373:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="FileList";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'FileList'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["FileList"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=on.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);on.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt=makeProxy(Wt,en);Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const sn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class FileList{constructor(){throw new Wt.TypeError("Illegal constructor")}item(en){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'item' called on an object that is not a valid instance of FileList.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'item' on 'FileList': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'item' on 'FileList': parameter 1",globals:Wt});In.push(Pt)}return nn.tryWrapperForImpl(rn[an].item(...In))}get length(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get length' called on an object that is not a valid instance of FileList.")}return en[an]["length"]}}Object.defineProperties(FileList.prototype,{item:{enumerable:true},length:{enumerable:true},[Symbol.toStringTag]:{value:"FileList",configurable:true},[Symbol.iterator]:{value:Wt.Array.prototype[Symbol.iterator],configurable:true,writable:true}});rn[In]=FileList;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:FileList})};const on=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[an][nn.supportedPropertyIndices]){Pt.add(`${en}`)}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;if(nn.isArrayIndexPropName(Pt)){const tn=Pt>>>0;const rn=Wt[an].item(tn);if(rn!==null){return{writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(rn)}}en=true}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,tn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,tn)}if(Wt[an][nn.wrapperSymbol]===tn){const Wt=this._globalObject}let rn;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;const tn=Wt[an].item(en);if(tn!==null){rn={writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}}if(rn===undefined){rn=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(rn===undefined){const nn=Reflect.getPrototypeOf(Wt);if(nn!==null){return Reflect.set(nn,Pt,en,tn)}rn={writable:true,enumerable:true,configurable:true,value:undefined}}if(!rn.writable){return false}if(!nn.isObject(tn)){return false}const In=Reflect.getOwnPropertyDescriptor(tn,Pt);let sn;if(In!==undefined){if(In.get||In.set){return false}if(!In.writable){return false}sn={value:en}}else{sn={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(tn,Pt,sn)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){return false}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;return!(Wt[an].item(en)!==null)}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const cn=en(95346)},92384:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(71675);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:nn});{const an="lastModified";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["long long"](rn,{context:nn+" has member 'lastModified' that",globals:Wt});en[an]=rn}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},49962:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(42960);const rn=en(69117);const In=nn.implSymbol;const sn=nn.ctorRegistrySymbol;const on=en(29122);const cn="FileReader";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,In)&&Wt[In]instanceof un.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof un.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'FileReader'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[sn]["FileReader"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{on._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,In,{value:new un.implementation(en,tn,an),configurable:true});Wt[In][nn.wrapperSymbol]=Wt;if(un.init){un.init(Wt[In])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,In,{value:Object.create(un.implementation.prototype),configurable:true});tn[In][nn.wrapperSymbol]=tn;if(un.init){un.init(tn[In])}return tn[In]};const dn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>dn.has(Wt)))){return}const sn=nn.initCtorRegistry(Wt);class FileReader extends Wt.EventTarget{constructor(){return Pt.setup(Object.create(new.target.prototype),Wt,undefined)}readAsArrayBuffer(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'readAsArrayBuffer' called on an object that is not a valid instance of FileReader.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'readAsArrayBuffer' on 'FileReader': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'readAsArrayBuffer' on 'FileReader': parameter 1"});nn.push(Pt)}return tn[In].readAsArrayBuffer(...nn)}readAsBinaryString(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'readAsBinaryString' called on an object that is not a valid instance of FileReader.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'readAsBinaryString' on 'FileReader': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'readAsBinaryString' on 'FileReader': parameter 1"});nn.push(Pt)}return tn[In].readAsBinaryString(...nn)}readAsText(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'readAsText' called on an object that is not a valid instance of FileReader.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'readAsText' on 'FileReader': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'readAsText' on 'FileReader': parameter 1"});rn.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to execute 'readAsText' on 'FileReader': parameter 2",globals:Wt})}rn.push(Pt)}return nn[In].readAsText(...rn)}readAsDataURL(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'readAsDataURL' called on an object that is not a valid instance of FileReader.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'readAsDataURL' on 'FileReader': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'readAsDataURL' on 'FileReader': parameter 1"});nn.push(Pt)}return tn[In].readAsDataURL(...nn)}abort(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'abort' called on an object that is not a valid instance of FileReader.")}return en[In].abort()}get readyState(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get readyState' called on an object that is not a valid instance of FileReader.")}return en[In]["readyState"]}get result(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get result' called on an object that is not a valid instance of FileReader.")}return nn.tryWrapperForImpl(en[In]["result"])}get error(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get error' called on an object that is not a valid instance of FileReader.")}return nn.tryWrapperForImpl(en[In]["error"])}get onloadstart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onloadstart' called on an object that is not a valid instance of FileReader.")}return nn.tryWrapperForImpl(en[In]["onloadstart"])}set onloadstart(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onloadstart' called on an object that is not a valid instance of FileReader.")}if(!nn.isObject(en)){en=null}else{en=rn.convert(Wt,en,{context:"Failed to set the 'onloadstart' property on 'FileReader': The provided value"})}tn[In]["onloadstart"]=en}get onprogress(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onprogress' called on an object that is not a valid instance of FileReader.")}return nn.tryWrapperForImpl(en[In]["onprogress"])}set onprogress(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onprogress' called on an object that is not a valid instance of FileReader.")}if(!nn.isObject(en)){en=null}else{en=rn.convert(Wt,en,{context:"Failed to set the 'onprogress' property on 'FileReader': The provided value"})}tn[In]["onprogress"]=en}get onload(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onload' called on an object that is not a valid instance of FileReader.")}return nn.tryWrapperForImpl(en[In]["onload"])}set onload(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onload' called on an object that is not a valid instance of FileReader.")}if(!nn.isObject(en)){en=null}else{en=rn.convert(Wt,en,{context:"Failed to set the 'onload' property on 'FileReader': The provided value"})}tn[In]["onload"]=en}get onabort(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onabort' called on an object that is not a valid instance of FileReader.")}return nn.tryWrapperForImpl(en[In]["onabort"])}set onabort(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onabort' called on an object that is not a valid instance of FileReader.")}if(!nn.isObject(en)){en=null}else{en=rn.convert(Wt,en,{context:"Failed to set the 'onabort' property on 'FileReader': The provided value"})}tn[In]["onabort"]=en}get onerror(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onerror' called on an object that is not a valid instance of FileReader.")}return nn.tryWrapperForImpl(en[In]["onerror"])}set onerror(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onerror' called on an object that is not a valid instance of FileReader.")}if(!nn.isObject(en)){en=null}else{en=rn.convert(Wt,en,{context:"Failed to set the 'onerror' property on 'FileReader': The provided value"})}tn[In]["onerror"]=en}get onloadend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onloadend' called on an object that is not a valid instance of FileReader.")}return nn.tryWrapperForImpl(en[In]["onloadend"])}set onloadend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onloadend' called on an object that is not a valid instance of FileReader.")}if(!nn.isObject(en)){en=null}else{en=rn.convert(Wt,en,{context:"Failed to set the 'onloadend' property on 'FileReader': The provided value"})}tn[In]["onloadend"]=en}}Object.defineProperties(FileReader.prototype,{readAsArrayBuffer:{enumerable:true},readAsBinaryString:{enumerable:true},readAsText:{enumerable:true},readAsDataURL:{enumerable:true},abort:{enumerable:true},readyState:{enumerable:true},result:{enumerable:true},error:{enumerable:true},onloadstart:{enumerable:true},onprogress:{enumerable:true},onload:{enumerable:true},onabort:{enumerable:true},onerror:{enumerable:true},onloadend:{enumerable:true},[Symbol.toStringTag]:{value:"FileReader",configurable:true},EMPTY:{value:0,enumerable:true},LOADING:{value:1,enumerable:true},DONE:{value:2,enumerable:true}});Object.defineProperties(FileReader,{EMPTY:{value:0,enumerable:true},LOADING:{value:1,enumerable:true},DONE:{value:2,enumerable:true}});sn[cn]=FileReader;Object.defineProperty(Wt,cn,{configurable:true,writable:true,value:FileReader})};const un=en(78135)},32103:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(24237);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(38921);const on="FocusEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'FocusEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["FocusEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class FocusEvent extends Wt.UIEvent{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'FocusEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'FocusEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'FocusEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}get relatedTarget(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get relatedTarget' called on an object that is not a valid instance of FocusEvent.")}return nn.tryWrapperForImpl(en[rn]["relatedTarget"])}}Object.defineProperties(FocusEvent.prototype,{relatedTarget:{enumerable:true},[Symbol.toStringTag]:{value:"FocusEvent",configurable:true}});In[on]=FocusEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:FocusEvent})};const dn=en(35334)},24237:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(29122);const rn=en(27019);Pt._convertInherit=(Wt,Pt,en,{context:tn="The provided value"}={})=>{rn._convertInherit(Wt,Pt,en,{context:tn});{const nn="relatedTarget";let rn=Pt===undefined||Pt===null?undefined:Pt[nn];if(rn!==undefined){if(rn===null||rn===undefined){rn=null}else{rn=an.convert(Wt,rn,{context:tn+" has member 'relatedTarget' that"})}en[nn]=rn}else{en[nn]=null}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},48241:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(618);const rn=en(48708);const In=en(42960);const sn=en(25295);const on=nn.newObjectInRealm;const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un="FormData";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof mn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof mn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'FormData'.`)};Pt.createDefaultIterator=(Wt,Pt,en)=>{const tn=Wt[dn];const an=tn["FormData Iterator"];const rn=Object.create(an);Object.defineProperty(rn,nn.iterInternalSymbol,{value:{target:Pt,kind:en,index:0},configurable:true});return rn};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["FormData"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new mn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(mn.init){mn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(mn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(mn.init){mn.init(tn[cn])}return tn[cn]};const pn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>pn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class FormData{constructor(){const en=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=an.convert(Wt,Pt,{context:"Failed to construct 'FormData': parameter 1"})}en.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{Pt=rn.convert(Wt,Pt,{context:"Failed to construct 'FormData': parameter 2"})}}else{Pt=null}en.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,en)}append(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'append' called on an object that is not a valid instance of FormData.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'append' on 'FormData': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];switch(arguments.length){case 2:{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'append' on 'FormData': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];if(In.is(Pt)){{let Pt=arguments[1];Pt=In.convert(Wt,Pt,{context:"Failed to execute 'append' on 'FormData': parameter 2"});rn.push(Pt)}}else{{let Pt=arguments[1];Pt=tn["USVString"](Pt,{context:"Failed to execute 'append' on 'FormData': parameter 2",globals:Wt});rn.push(Pt)}}}break;default:{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'append' on 'FormData': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=In.convert(Wt,Pt,{context:"Failed to execute 'append' on 'FormData': parameter 2"});rn.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["USVString"](Pt,{context:"Failed to execute 'append' on 'FormData': parameter 3",globals:Wt})}rn.push(Pt)}}return an[cn].append(...rn)}delete(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'delete' called on an object that is not a valid instance of FormData.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'delete' on 'FormData': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'delete' on 'FormData': parameter 1",globals:Wt});an.push(Pt)}return nn[cn].delete(...an)}get(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'get' called on an object that is not a valid instance of FormData.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'get' on 'FormData': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'get' on 'FormData': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[cn].get(...rn))}getAll(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'getAll' called on an object that is not a valid instance of FormData.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getAll' on 'FormData': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'getAll' on 'FormData': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[cn].getAll(...rn))}has(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'has' called on an object that is not a valid instance of FormData.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'has' on 'FormData': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'has' on 'FormData': parameter 1",globals:Wt});an.push(Pt)}return nn[cn].has(...an)}set(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'set' called on an object that is not a valid instance of FormData.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'set' on 'FormData': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];switch(arguments.length){case 2:{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'set' on 'FormData': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];if(In.is(Pt)){{let Pt=arguments[1];Pt=In.convert(Wt,Pt,{context:"Failed to execute 'set' on 'FormData': parameter 2"});rn.push(Pt)}}else{{let Pt=arguments[1];Pt=tn["USVString"](Pt,{context:"Failed to execute 'set' on 'FormData': parameter 2",globals:Wt});rn.push(Pt)}}}break;default:{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'set' on 'FormData': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=In.convert(Wt,Pt,{context:"Failed to execute 'set' on 'FormData': parameter 2"});rn.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["USVString"](Pt,{context:"Failed to execute 'set' on 'FormData': parameter 3",globals:Wt})}rn.push(Pt)}}return an[cn].set(...rn)}keys(){if(!Pt.is(this)){throw new Wt.TypeError("'keys' called on an object that is not a valid instance of FormData.")}return Pt.createDefaultIterator(Wt,this,"key")}values(){if(!Pt.is(this)){throw new Wt.TypeError("'values' called on an object that is not a valid instance of FormData.")}return Pt.createDefaultIterator(Wt,this,"value")}entries(){if(!Pt.is(this)){throw new Wt.TypeError("'entries' called on an object that is not a valid instance of FormData.")}return Pt.createDefaultIterator(Wt,this,"key+value")}forEach(en){if(!Pt.is(this)){throw new Wt.TypeError("'forEach' called on an object that is not a valid instance of FormData.")}if(arguments.length<1){throw new Wt.TypeError("Failed to execute 'forEach' on 'iterable': 1 argument required, but only 0 present.")}en=sn.convert(Wt,en,{context:"Failed to execute 'forEach' on 'iterable': The callback provided as parameter 1"});const tn=arguments[1];let an=Array.from(this[cn]);let rn=0;while(rn=In){return on(Wt,{value:undefined,done:true})}const sn=rn[an];Pt.index=an+1;return on(Wt,nn.iteratorResult(sn.map(nn.tryWrapperForImpl),tn))}});Object.defineProperty(Wt,un,{configurable:true,writable:true,value:FormData})};const mn=en(52703)},25295:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt.convert=(Wt,Pt,{context:en="The provided value"}={})=>{if(typeof Pt!=="function"){throw new Wt.TypeError(en+" is not a function")}function invokeTheCallbackFunction(...an){const rn=nn.tryWrapperForImpl(this);let In;for(let Wt=0;Wt{for(let Wt=0;Wt{"use strict";const tn=en(37125);const nn=en(87094);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{{const an="composed";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'composed' that",globals:Wt});en[an]=rn}else{en[an]=false}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},68403:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLAnchorElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLAnchorElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLAnchorElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLAnchorElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get target(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get target' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("target");return Wt===null?"":Wt}finally{In(Wt)}}set target(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set target' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'target' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("target",en)}finally{In(Wt)}}get download(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get download' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("download");return Wt===null?"":Wt}finally{In(Wt)}}set download(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set download' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'download' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("download",en)}finally{In(Wt)}}get rel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rel' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("rel");return Wt===null?"":Wt}finally{In(Wt)}}set rel(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set rel' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'rel' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("rel",en)}finally{In(Wt)}}get relList(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get relList' called on an object that is not a valid instance of HTMLAnchorElement.")}return nn.getSameObject(this,"relList",(()=>nn.tryWrapperForImpl(en[sn]["relList"])))}set relList(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set relList' called on an object that is not a valid instance of HTMLAnchorElement.")}const an=tn["relList"];if(!nn.isObject(an)){throw new Wt.TypeError("Property 'relList' is not an object")}Reflect.set(an,"value",en)}get hreflang(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hreflang' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("hreflang");return Wt===null?"":Wt}finally{In(Wt)}}set hreflang(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set hreflang' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'hreflang' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("hreflang",en)}finally{In(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("type");return Wt===null?"":Wt}finally{In(Wt)}}set type(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set type' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'type' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("type",en)}finally{In(Wt)}}get text(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get text' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{return en[sn]["text"]}finally{In(Wt)}}set text(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set text' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'text' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["text"]=en}finally{In(Wt)}}get coords(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get coords' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("coords");return Wt===null?"":Wt}finally{In(Wt)}}set coords(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set coords' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'coords' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("coords",en)}finally{In(Wt)}}get charset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get charset' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("charset");return Wt===null?"":Wt}finally{In(Wt)}}set charset(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set charset' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'charset' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("charset",en)}finally{In(Wt)}}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{In(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("name",en)}finally{In(Wt)}}get rev(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rev' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("rev");return Wt===null?"":Wt}finally{In(Wt)}}set rev(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set rev' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'rev' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("rev",en)}finally{In(Wt)}}get shape(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get shape' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("shape");return Wt===null?"":Wt}finally{In(Wt)}}set shape(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set shape' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'shape' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("shape",en)}finally{In(Wt)}}get href(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get href' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{return en[sn]["href"]}finally{In(Wt)}}set href(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set href' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["USVString"](en,{context:"Failed to set the 'href' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["href"]=en}finally{In(Wt)}}toString(){const en=this;if(!Pt.is(en)){throw new Wt.TypeError("'toString' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{return en[sn]["href"]}finally{In(Wt)}}get origin(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get origin' called on an object that is not a valid instance of HTMLAnchorElement.")}return en[sn]["origin"]}get protocol(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get protocol' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{return en[sn]["protocol"]}finally{In(Wt)}}set protocol(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set protocol' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["USVString"](en,{context:"Failed to set the 'protocol' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["protocol"]=en}finally{In(Wt)}}get username(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get username' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{return en[sn]["username"]}finally{In(Wt)}}set username(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set username' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["USVString"](en,{context:"Failed to set the 'username' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["username"]=en}finally{In(Wt)}}get password(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get password' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{return en[sn]["password"]}finally{In(Wt)}}set password(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set password' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["USVString"](en,{context:"Failed to set the 'password' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["password"]=en}finally{In(Wt)}}get host(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get host' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{return en[sn]["host"]}finally{In(Wt)}}set host(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set host' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["USVString"](en,{context:"Failed to set the 'host' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["host"]=en}finally{In(Wt)}}get hostname(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hostname' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{return en[sn]["hostname"]}finally{In(Wt)}}set hostname(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set hostname' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["USVString"](en,{context:"Failed to set the 'hostname' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["hostname"]=en}finally{In(Wt)}}get port(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get port' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{return en[sn]["port"]}finally{In(Wt)}}set port(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set port' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["USVString"](en,{context:"Failed to set the 'port' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["port"]=en}finally{In(Wt)}}get pathname(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get pathname' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{return en[sn]["pathname"]}finally{In(Wt)}}set pathname(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set pathname' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["USVString"](en,{context:"Failed to set the 'pathname' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["pathname"]=en}finally{In(Wt)}}get search(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get search' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{return en[sn]["search"]}finally{In(Wt)}}set search(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set search' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["USVString"](en,{context:"Failed to set the 'search' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["search"]=en}finally{In(Wt)}}get hash(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hash' called on an object that is not a valid instance of HTMLAnchorElement.")}rn(Wt);try{return en[sn]["hash"]}finally{In(Wt)}}set hash(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set hash' called on an object that is not a valid instance of HTMLAnchorElement.")}en=tn["USVString"](en,{context:"Failed to set the 'hash' property on 'HTMLAnchorElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["hash"]=en}finally{In(Wt)}}}Object.defineProperties(HTMLAnchorElement.prototype,{target:{enumerable:true},download:{enumerable:true},rel:{enumerable:true},relList:{enumerable:true},hreflang:{enumerable:true},type:{enumerable:true},text:{enumerable:true},coords:{enumerable:true},charset:{enumerable:true},name:{enumerable:true},rev:{enumerable:true},shape:{enumerable:true},href:{enumerable:true},toString:{enumerable:true},origin:{enumerable:true},protocol:{enumerable:true},username:{enumerable:true},password:{enumerable:true},host:{enumerable:true},hostname:{enumerable:true},port:{enumerable:true},pathname:{enumerable:true},search:{enumerable:true},hash:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLAnchorElement",configurable:true}});on[dn]=HTMLAnchorElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLAnchorElement})};const pn=en(49786)},13915:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLAreaElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLAreaElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLAreaElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLAreaElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get alt(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get alt' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("alt");return Wt===null?"":Wt}finally{In(Wt)}}set alt(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set alt' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'alt' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("alt",en)}finally{In(Wt)}}get coords(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get coords' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("coords");return Wt===null?"":Wt}finally{In(Wt)}}set coords(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set coords' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'coords' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("coords",en)}finally{In(Wt)}}get shape(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get shape' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("shape");return Wt===null?"":Wt}finally{In(Wt)}}set shape(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set shape' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'shape' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("shape",en)}finally{In(Wt)}}get target(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get target' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("target");return Wt===null?"":Wt}finally{In(Wt)}}set target(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set target' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'target' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("target",en)}finally{In(Wt)}}get rel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rel' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("rel");return Wt===null?"":Wt}finally{In(Wt)}}set rel(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set rel' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'rel' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("rel",en)}finally{In(Wt)}}get relList(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get relList' called on an object that is not a valid instance of HTMLAreaElement.")}return nn.getSameObject(this,"relList",(()=>nn.tryWrapperForImpl(en[sn]["relList"])))}set relList(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set relList' called on an object that is not a valid instance of HTMLAreaElement.")}const an=tn["relList"];if(!nn.isObject(an)){throw new Wt.TypeError("Property 'relList' is not an object")}Reflect.set(an,"value",en)}get noHref(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get noHref' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("nohref")!==null}finally{In(Wt)}}set noHref(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set noHref' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["boolean"](en,{context:"Failed to set the 'noHref' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("nohref","")}else{nn[sn]._reflectDeleteTheContentAttribute("nohref")}}finally{In(Wt)}}get href(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get href' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{return en[sn]["href"]}finally{In(Wt)}}set href(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set href' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["USVString"](en,{context:"Failed to set the 'href' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["href"]=en}finally{In(Wt)}}toString(){const en=this;if(!Pt.is(en)){throw new Wt.TypeError("'toString' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{return en[sn]["href"]}finally{In(Wt)}}get origin(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get origin' called on an object that is not a valid instance of HTMLAreaElement.")}return en[sn]["origin"]}get protocol(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get protocol' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{return en[sn]["protocol"]}finally{In(Wt)}}set protocol(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set protocol' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["USVString"](en,{context:"Failed to set the 'protocol' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["protocol"]=en}finally{In(Wt)}}get username(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get username' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{return en[sn]["username"]}finally{In(Wt)}}set username(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set username' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["USVString"](en,{context:"Failed to set the 'username' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["username"]=en}finally{In(Wt)}}get password(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get password' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{return en[sn]["password"]}finally{In(Wt)}}set password(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set password' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["USVString"](en,{context:"Failed to set the 'password' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["password"]=en}finally{In(Wt)}}get host(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get host' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{return en[sn]["host"]}finally{In(Wt)}}set host(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set host' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["USVString"](en,{context:"Failed to set the 'host' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["host"]=en}finally{In(Wt)}}get hostname(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hostname' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{return en[sn]["hostname"]}finally{In(Wt)}}set hostname(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set hostname' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["USVString"](en,{context:"Failed to set the 'hostname' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["hostname"]=en}finally{In(Wt)}}get port(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get port' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{return en[sn]["port"]}finally{In(Wt)}}set port(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set port' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["USVString"](en,{context:"Failed to set the 'port' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["port"]=en}finally{In(Wt)}}get pathname(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get pathname' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{return en[sn]["pathname"]}finally{In(Wt)}}set pathname(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set pathname' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["USVString"](en,{context:"Failed to set the 'pathname' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["pathname"]=en}finally{In(Wt)}}get search(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get search' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{return en[sn]["search"]}finally{In(Wt)}}set search(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set search' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["USVString"](en,{context:"Failed to set the 'search' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["search"]=en}finally{In(Wt)}}get hash(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hash' called on an object that is not a valid instance of HTMLAreaElement.")}rn(Wt);try{return en[sn]["hash"]}finally{In(Wt)}}set hash(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set hash' called on an object that is not a valid instance of HTMLAreaElement.")}en=tn["USVString"](en,{context:"Failed to set the 'hash' property on 'HTMLAreaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["hash"]=en}finally{In(Wt)}}}Object.defineProperties(HTMLAreaElement.prototype,{alt:{enumerable:true},coords:{enumerable:true},shape:{enumerable:true},target:{enumerable:true},rel:{enumerable:true},relList:{enumerable:true},noHref:{enumerable:true},href:{enumerable:true},toString:{enumerable:true},origin:{enumerable:true},protocol:{enumerable:true},username:{enumerable:true},password:{enumerable:true},host:{enumerable:true},hostname:{enumerable:true},port:{enumerable:true},pathname:{enumerable:true},search:{enumerable:true},hash:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLAreaElement",configurable:true}});on[dn]=HTMLAreaElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLAreaElement})};const pn=en(35962)},41952:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(1366);const on="HTMLAudioElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLAudioElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["HTMLAudioElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,Pt)=>{if(!Pt.some((Wt=>cn.has(Wt)))){return}const en=nn.initCtorRegistry(Wt);class HTMLAudioElement extends Wt.HTMLMediaElement{constructor(){return an(Wt,on,new.target)}}Object.defineProperties(HTMLAudioElement.prototype,{[Symbol.toStringTag]:{value:"HTMLAudioElement",configurable:true}});en[on]=HTMLAudioElement;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:HTMLAudioElement})};const dn=en(98867)},29044:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLBRElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLBRElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLBRElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLBRElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get clear(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get clear' called on an object that is not a valid instance of HTMLBRElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("clear");return Wt===null?"":Wt}finally{In(Wt)}}set clear(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set clear' called on an object that is not a valid instance of HTMLBRElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'clear' property on 'HTMLBRElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("clear",en)}finally{In(Wt)}}}Object.defineProperties(HTMLBRElement.prototype,{clear:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLBRElement",configurable:true}});on[dn]=HTMLBRElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLBRElement})};const pn=en(64775)},65735:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLBaseElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLBaseElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLBaseElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLBaseElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get href(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get href' called on an object that is not a valid instance of HTMLBaseElement.")}rn(Wt);try{return en[sn]["href"]}finally{In(Wt)}}set href(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set href' called on an object that is not a valid instance of HTMLBaseElement.")}en=tn["USVString"](en,{context:"Failed to set the 'href' property on 'HTMLBaseElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["href"]=en}finally{In(Wt)}}get target(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get target' called on an object that is not a valid instance of HTMLBaseElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("target");return Wt===null?"":Wt}finally{In(Wt)}}set target(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set target' called on an object that is not a valid instance of HTMLBaseElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'target' property on 'HTMLBaseElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("target",en)}finally{In(Wt)}}}Object.defineProperties(HTMLBaseElement.prototype,{href:{enumerable:true},target:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLBaseElement",configurable:true}});on[dn]=HTMLBaseElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLBaseElement})};const pn=en(99254)},83220:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=en(69117);const on=en(98574);const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(48708);const pn="HTMLBodyElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLBodyElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLBodyElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLBodyElement extends Wt.HTMLElement{constructor(){return an(Wt,pn,new.target)}get text(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get text' called on an object that is not a valid instance of HTMLBodyElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("text");return Wt===null?"":Wt}finally{In(Wt)}}set text(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set text' called on an object that is not a valid instance of HTMLBodyElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'text' property on 'HTMLBodyElement': The provided value",globals:Wt,treatNullAsEmptyString:true});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("text",en)}finally{In(Wt)}}get link(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get link' called on an object that is not a valid instance of HTMLBodyElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("link");return Wt===null?"":Wt}finally{In(Wt)}}set link(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set link' called on an object that is not a valid instance of HTMLBodyElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'link' property on 'HTMLBodyElement': The provided value",globals:Wt,treatNullAsEmptyString:true});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("link",en)}finally{In(Wt)}}get vLink(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get vLink' called on an object that is not a valid instance of HTMLBodyElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("vlink");return Wt===null?"":Wt}finally{In(Wt)}}set vLink(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set vLink' called on an object that is not a valid instance of HTMLBodyElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'vLink' property on 'HTMLBodyElement': The provided value",globals:Wt,treatNullAsEmptyString:true});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("vlink",en)}finally{In(Wt)}}get aLink(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get aLink' called on an object that is not a valid instance of HTMLBodyElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("alink");return Wt===null?"":Wt}finally{In(Wt)}}set aLink(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set aLink' called on an object that is not a valid instance of HTMLBodyElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'aLink' property on 'HTMLBodyElement': The provided value",globals:Wt,treatNullAsEmptyString:true});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("alink",en)}finally{In(Wt)}}get bgColor(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get bgColor' called on an object that is not a valid instance of HTMLBodyElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("bgcolor");return Wt===null?"":Wt}finally{In(Wt)}}set bgColor(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set bgColor' called on an object that is not a valid instance of HTMLBodyElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'bgColor' property on 'HTMLBodyElement': The provided value",globals:Wt,treatNullAsEmptyString:true});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("bgcolor",en)}finally{In(Wt)}}get background(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get background' called on an object that is not a valid instance of HTMLBodyElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("background");return Wt===null?"":Wt}finally{In(Wt)}}set background(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set background' called on an object that is not a valid instance of HTMLBodyElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'background' property on 'HTMLBodyElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("background",en)}finally{In(Wt)}}get onafterprint(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onafterprint' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onafterprint"])}set onafterprint(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onafterprint' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onafterprint' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onafterprint"]=en}get onbeforeprint(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforeprint' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onbeforeprint"])}set onbeforeprint(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforeprint' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onbeforeprint' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onbeforeprint"]=en}get onbeforeunload(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforeunload' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onbeforeunload"])}set onbeforeunload(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforeunload' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=on.convert(Wt,en,{context:"Failed to set the 'onbeforeunload' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onbeforeunload"]=en}get onhashchange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onhashchange' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onhashchange"])}set onhashchange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onhashchange' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onhashchange' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onhashchange"]=en}get onlanguagechange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onlanguagechange' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onlanguagechange"])}set onlanguagechange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onlanguagechange' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onlanguagechange' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onlanguagechange"]=en}get onmessage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmessage' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onmessage"])}set onmessage(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmessage' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onmessage' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onmessage"]=en}get onmessageerror(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmessageerror' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onmessageerror"])}set onmessageerror(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmessageerror' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onmessageerror' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onmessageerror"]=en}get onoffline(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onoffline' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onoffline"])}set onoffline(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onoffline' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onoffline' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onoffline"]=en}get ononline(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ononline' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["ononline"])}set ononline(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ononline' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ononline' property on 'HTMLBodyElement': The provided value"})}tn[cn]["ononline"]=en}get onpagehide(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpagehide' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onpagehide"])}set onpagehide(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpagehide' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onpagehide' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onpagehide"]=en}get onpageshow(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpageshow' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onpageshow"])}set onpageshow(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpageshow' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onpageshow' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onpageshow"]=en}get onpopstate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpopstate' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onpopstate"])}set onpopstate(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpopstate' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onpopstate' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onpopstate"]=en}get onrejectionhandled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onrejectionhandled' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onrejectionhandled"])}set onrejectionhandled(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onrejectionhandled' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onrejectionhandled' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onrejectionhandled"]=en}get onstorage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onstorage' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onstorage"])}set onstorage(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onstorage' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onstorage' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onstorage"]=en}get onunhandledrejection(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onunhandledrejection' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onunhandledrejection"])}set onunhandledrejection(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onunhandledrejection' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onunhandledrejection' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onunhandledrejection"]=en}get onunload(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onunload' called on an object that is not a valid instance of HTMLBodyElement.")}return nn.tryWrapperForImpl(en[cn]["onunload"])}set onunload(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onunload' called on an object that is not a valid instance of HTMLBodyElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onunload' property on 'HTMLBodyElement': The provided value"})}tn[cn]["onunload"]=en}}Object.defineProperties(HTMLBodyElement.prototype,{text:{enumerable:true},link:{enumerable:true},vLink:{enumerable:true},aLink:{enumerable:true},bgColor:{enumerable:true},background:{enumerable:true},onafterprint:{enumerable:true},onbeforeprint:{enumerable:true},onbeforeunload:{enumerable:true},onhashchange:{enumerable:true},onlanguagechange:{enumerable:true},onmessage:{enumerable:true},onmessageerror:{enumerable:true},onoffline:{enumerable:true},ononline:{enumerable:true},onpagehide:{enumerable:true},onpageshow:{enumerable:true},onpopstate:{enumerable:true},onrejectionhandled:{enumerable:true},onstorage:{enumerable:true},onunhandledrejection:{enumerable:true},onunload:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLBodyElement",configurable:true}});dn[pn]=HTMLBodyElement;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLBodyElement})};const bn=en(57063)},22544:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLButtonElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLButtonElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLButtonElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLButtonElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}checkValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'checkValidity' called on an object that is not a valid instance of HTMLButtonElement.")}return en[sn].checkValidity()}reportValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'reportValidity' called on an object that is not a valid instance of HTMLButtonElement.")}return en[sn].reportValidity()}setCustomValidity(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'setCustomValidity' called on an object that is not a valid instance of HTMLButtonElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setCustomValidity' on 'HTMLButtonElement': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setCustomValidity' on 'HTMLButtonElement': parameter 1",globals:Wt});an.push(Pt)}return nn[sn].setCustomValidity(...an)}get autofocus(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get autofocus' called on an object that is not a valid instance of HTMLButtonElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("autofocus")!==null}finally{In(Wt)}}set autofocus(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set autofocus' called on an object that is not a valid instance of HTMLButtonElement.")}en=tn["boolean"](en,{context:"Failed to set the 'autofocus' property on 'HTMLButtonElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("autofocus","")}else{nn[sn]._reflectDeleteTheContentAttribute("autofocus")}}finally{In(Wt)}}get disabled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get disabled' called on an object that is not a valid instance of HTMLButtonElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("disabled")!==null}finally{In(Wt)}}set disabled(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set disabled' called on an object that is not a valid instance of HTMLButtonElement.")}en=tn["boolean"](en,{context:"Failed to set the 'disabled' property on 'HTMLButtonElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("disabled","")}else{nn[sn]._reflectDeleteTheContentAttribute("disabled")}}finally{In(Wt)}}get form(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get form' called on an object that is not a valid instance of HTMLButtonElement.")}return nn.tryWrapperForImpl(en[sn]["form"])}get formNoValidate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get formNoValidate' called on an object that is not a valid instance of HTMLButtonElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("formnovalidate")!==null}finally{In(Wt)}}set formNoValidate(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set formNoValidate' called on an object that is not a valid instance of HTMLButtonElement.")}en=tn["boolean"](en,{context:"Failed to set the 'formNoValidate' property on 'HTMLButtonElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("formnovalidate","")}else{nn[sn]._reflectDeleteTheContentAttribute("formnovalidate")}}finally{In(Wt)}}get formTarget(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get formTarget' called on an object that is not a valid instance of HTMLButtonElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("formtarget");return Wt===null?"":Wt}finally{In(Wt)}}set formTarget(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set formTarget' called on an object that is not a valid instance of HTMLButtonElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'formTarget' property on 'HTMLButtonElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("formtarget",en)}finally{In(Wt)}}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLButtonElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{In(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLButtonElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLButtonElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("name",en)}finally{In(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLButtonElement.")}rn(Wt);try{return en[sn]["type"]}finally{In(Wt)}}set type(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set type' called on an object that is not a valid instance of HTMLButtonElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'type' property on 'HTMLButtonElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["type"]=en}finally{In(Wt)}}get value(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get value' called on an object that is not a valid instance of HTMLButtonElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("value");return Wt===null?"":Wt}finally{In(Wt)}}set value(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set value' called on an object that is not a valid instance of HTMLButtonElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'value' property on 'HTMLButtonElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("value",en)}finally{In(Wt)}}get willValidate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get willValidate' called on an object that is not a valid instance of HTMLButtonElement.")}return en[sn]["willValidate"]}get validity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get validity' called on an object that is not a valid instance of HTMLButtonElement.")}return nn.tryWrapperForImpl(en[sn]["validity"])}get validationMessage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get validationMessage' called on an object that is not a valid instance of HTMLButtonElement.")}return en[sn]["validationMessage"]}get labels(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get labels' called on an object that is not a valid instance of HTMLButtonElement.")}return nn.tryWrapperForImpl(en[sn]["labels"])}}Object.defineProperties(HTMLButtonElement.prototype,{checkValidity:{enumerable:true},reportValidity:{enumerable:true},setCustomValidity:{enumerable:true},autofocus:{enumerable:true},disabled:{enumerable:true},form:{enumerable:true},formNoValidate:{enumerable:true},formTarget:{enumerable:true},name:{enumerable:true},type:{enumerable:true},value:{enumerable:true},willValidate:{enumerable:true},validity:{enumerable:true},validationMessage:{enumerable:true},labels:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLButtonElement",configurable:true}});on[dn]=HTMLButtonElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLButtonElement})};const pn=en(3403)},22312:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(12283);const In=en(8348).ceReactionsPreSteps;const sn=en(8348).ceReactionsPostSteps;const on=nn.implSymbol;const cn=nn.ctorRegistrySymbol;const dn=en(48708);const un="HTMLCanvasElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,on)&&Wt[on]instanceof mn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof mn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLCanvasElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[cn]["HTMLCanvasElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{dn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,on,{value:new mn.implementation(en,tn,an),configurable:true});Wt[on][nn.wrapperSymbol]=Wt;if(mn.init){mn.init(Wt[on])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,on,{value:Object.create(mn.implementation.prototype),configurable:true});tn[on][nn.wrapperSymbol]=tn;if(mn.init){mn.init(tn[on])}return tn[on]};const pn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>pn.has(Wt)))){return}const cn=nn.initCtorRegistry(Wt);class HTMLCanvasElement extends Wt.HTMLElement{constructor(){return an(Wt,un,new.target)}getContext(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'getContext' called on an object that is not a valid instance of HTMLCanvasElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getContext' on 'HTMLCanvasElement': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getContext' on 'HTMLCanvasElement': parameter 1",globals:Wt});rn.push(Pt)}for(let Pt=1;Pt{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="HTMLCollection";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLCollection'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["HTMLCollection"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=on.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);on.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt=makeProxy(Wt,en);Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class HTMLCollection{constructor(){throw new Wt.TypeError("Illegal constructor")}item(en){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'item' called on an object that is not a valid instance of HTMLCollection.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'item' on 'HTMLCollection': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'item' on 'HTMLCollection': parameter 1",globals:Wt});In.push(Pt)}return nn.tryWrapperForImpl(rn[an].item(...In))}namedItem(en){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'namedItem' called on an object that is not a valid instance of HTMLCollection.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'namedItem' on 'HTMLCollection': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'namedItem' on 'HTMLCollection': parameter 1",globals:Wt});In.push(Pt)}return nn.tryWrapperForImpl(rn[an].namedItem(...In))}get length(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get length' called on an object that is not a valid instance of HTMLCollection.")}return en[an]["length"]}}Object.defineProperties(HTMLCollection.prototype,{item:{enumerable:true},namedItem:{enumerable:true},length:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLCollection",configurable:true},[Symbol.iterator]:{value:Wt.Array.prototype[Symbol.iterator],configurable:true,writable:true}});rn[In]=HTMLCollection;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:HTMLCollection})};const on=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[an][nn.supportedPropertyIndices]){Pt.add(`${en}`)}for(const en of Wt[an][nn.supportedPropertyNames]){if(!(en in Wt)){Pt.add(`${en}`)}}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;if(nn.isArrayIndexPropName(Pt)){const tn=Pt>>>0;const rn=Wt[an].item(tn);if(rn!==null){return{writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(rn)}}en=true}const tn=Wt[an].namedItem(Pt);if(tn!==null&&!(Pt in Wt)&&!en){return{writable:false,enumerable:false,configurable:true,value:nn.tryWrapperForImpl(tn)}}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,tn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,tn)}if(Wt[an][nn.wrapperSymbol]===tn){const Wt=this._globalObject}let rn;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;const tn=Wt[an].item(en);if(tn!==null){rn={writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}}if(rn===undefined){rn=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(rn===undefined){const nn=Reflect.getPrototypeOf(Wt);if(nn!==null){return Reflect.set(nn,Pt,en,tn)}rn={writable:true,enumerable:true,configurable:true,value:undefined}}if(!rn.writable){return false}if(!nn.isObject(tn)){return false}const In=Reflect.getOwnPropertyDescriptor(tn,Pt);let sn;if(In!==undefined){if(In.get||In.set){return false}if(!In.writable){return false}sn={value:en}}else{sn={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(tn,Pt,sn)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){return false}if(!nn.hasOwn(Wt,Pt)){const en=!(Wt[an].namedItem(Pt)!==null);if(!en){return false}}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;return!(Wt[an].item(en)!==null)}if(Wt[an].namedItem(Pt)!==null&&!(Pt in Wt)){return false}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const cn=en(76041)},12334:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLDListElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLDListElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLDListElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLDListElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get compact(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get compact' called on an object that is not a valid instance of HTMLDListElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("compact")!==null}finally{In(Wt)}}set compact(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set compact' called on an object that is not a valid instance of HTMLDListElement.")}en=tn["boolean"](en,{context:"Failed to set the 'compact' property on 'HTMLDListElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("compact","")}else{nn[sn]._reflectDeleteTheContentAttribute("compact")}}finally{In(Wt)}}}Object.defineProperties(HTMLDListElement.prototype,{compact:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLDListElement",configurable:true}});on[dn]=HTMLDListElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLDListElement})};const pn=en(83341)},74452:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLDataElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLDataElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLDataElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLDataElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get value(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get value' called on an object that is not a valid instance of HTMLDataElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("value");return Wt===null?"":Wt}finally{In(Wt)}}set value(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set value' called on an object that is not a valid instance of HTMLDataElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'value' property on 'HTMLDataElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("value",en)}finally{In(Wt)}}}Object.defineProperties(HTMLDataElement.prototype,{value:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLDataElement",configurable:true}});on[dn]=HTMLDataElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLDataElement})};const pn=en(2615)},89272:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(48708);const on="HTMLDataListElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLDataListElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["HTMLDataListElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class HTMLDataListElement extends Wt.HTMLElement{constructor(){return an(Wt,on,new.target)}get options(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get options' called on an object that is not a valid instance of HTMLDataListElement.")}return nn.getSameObject(this,"options",(()=>nn.tryWrapperForImpl(en[rn]["options"])))}}Object.defineProperties(HTMLDataListElement.prototype,{options:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLDataListElement",configurable:true}});tn[on]=HTMLDataListElement;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:HTMLDataListElement})};const dn=en(31483)},88796:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLDetailsElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLDetailsElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLDetailsElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLDetailsElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get open(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get open' called on an object that is not a valid instance of HTMLDetailsElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("open")!==null}finally{In(Wt)}}set open(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set open' called on an object that is not a valid instance of HTMLDetailsElement.")}en=tn["boolean"](en,{context:"Failed to set the 'open' property on 'HTMLDetailsElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("open","")}else{nn[sn]._reflectDeleteTheContentAttribute("open")}}finally{In(Wt)}}}Object.defineProperties(HTMLDetailsElement.prototype,{open:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLDetailsElement",configurable:true}});on[dn]=HTMLDetailsElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLDetailsElement})};const pn=en(19175)},55328:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLDialogElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLDialogElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLDialogElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLDialogElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get open(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get open' called on an object that is not a valid instance of HTMLDialogElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("open")!==null}finally{In(Wt)}}set open(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set open' called on an object that is not a valid instance of HTMLDialogElement.")}en=tn["boolean"](en,{context:"Failed to set the 'open' property on 'HTMLDialogElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("open","")}else{nn[sn]._reflectDeleteTheContentAttribute("open")}}finally{In(Wt)}}}Object.defineProperties(HTMLDialogElement.prototype,{open:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLDialogElement",configurable:true}});on[dn]=HTMLDialogElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLDialogElement})};const pn=en(96563)},69559:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLDirectoryElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLDirectoryElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLDirectoryElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLDirectoryElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get compact(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get compact' called on an object that is not a valid instance of HTMLDirectoryElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("compact")!==null}finally{In(Wt)}}set compact(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set compact' called on an object that is not a valid instance of HTMLDirectoryElement.")}en=tn["boolean"](en,{context:"Failed to set the 'compact' property on 'HTMLDirectoryElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("compact","")}else{nn[sn]._reflectDeleteTheContentAttribute("compact")}}finally{In(Wt)}}}Object.defineProperties(HTMLDirectoryElement.prototype,{compact:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLDirectoryElement",configurable:true}});on[dn]=HTMLDirectoryElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLDirectoryElement})};const pn=en(69158)},32567:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLDivElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLDivElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLDivElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLDivElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLDivElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{In(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLDivElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLDivElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("align",en)}finally{In(Wt)}}}Object.defineProperties(HTMLDivElement.prototype,{align:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLDivElement",configurable:true}});on[dn]=HTMLDivElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLDivElement})};const pn=en(93702)},48708:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=en(69117);const on=en(54414);const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(41423);const pn="HTMLElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLElement extends Wt.Element{constructor(){return an(Wt,pn,new.target)}click(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'click' called on an object that is not a valid instance of HTMLElement.")}return en[cn].click()}attachInternals(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'attachInternals' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn].attachInternals())}focus(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'focus' called on an object that is not a valid instance of HTMLElement.")}return en[cn].focus()}blur(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'blur' called on an object that is not a valid instance of HTMLElement.")}return en[cn].blur()}get title(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get title' called on an object that is not a valid instance of HTMLElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("title");return Wt===null?"":Wt}finally{In(Wt)}}set title(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set title' called on an object that is not a valid instance of HTMLElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'title' property on 'HTMLElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("title",en)}finally{In(Wt)}}get lang(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get lang' called on an object that is not a valid instance of HTMLElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("lang");return Wt===null?"":Wt}finally{In(Wt)}}set lang(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set lang' called on an object that is not a valid instance of HTMLElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'lang' property on 'HTMLElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("lang",en)}finally{In(Wt)}}get translate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get translate' called on an object that is not a valid instance of HTMLElement.")}rn(Wt);try{return en[cn]["translate"]}finally{In(Wt)}}set translate(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set translate' called on an object that is not a valid instance of HTMLElement.")}en=tn["boolean"](en,{context:"Failed to set the 'translate' property on 'HTMLElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]["translate"]=en}finally{In(Wt)}}get dir(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get dir' called on an object that is not a valid instance of HTMLElement.")}rn(Wt);try{return en[cn]["dir"]}finally{In(Wt)}}set dir(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set dir' called on an object that is not a valid instance of HTMLElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'dir' property on 'HTMLElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]["dir"]=en}finally{In(Wt)}}get hidden(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hidden' called on an object that is not a valid instance of HTMLElement.")}rn(Wt);try{return en[cn]._reflectGetTheContentAttribute("hidden")!==null}finally{In(Wt)}}set hidden(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set hidden' called on an object that is not a valid instance of HTMLElement.")}en=tn["boolean"](en,{context:"Failed to set the 'hidden' property on 'HTMLElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[cn]._reflectSetTheContentAttribute("hidden","")}else{nn[cn]._reflectDeleteTheContentAttribute("hidden")}}finally{In(Wt)}}get accessKey(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get accessKey' called on an object that is not a valid instance of HTMLElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("accesskey");return Wt===null?"":Wt}finally{In(Wt)}}set accessKey(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set accessKey' called on an object that is not a valid instance of HTMLElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'accessKey' property on 'HTMLElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("accesskey",en)}finally{In(Wt)}}get draggable(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get draggable' called on an object that is not a valid instance of HTMLElement.")}rn(Wt);try{return en[cn]["draggable"]}finally{In(Wt)}}set draggable(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set draggable' called on an object that is not a valid instance of HTMLElement.")}en=tn["boolean"](en,{context:"Failed to set the 'draggable' property on 'HTMLElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]["draggable"]=en}finally{In(Wt)}}get offsetParent(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get offsetParent' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["offsetParent"])}get offsetTop(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get offsetTop' called on an object that is not a valid instance of HTMLElement.")}return en[cn]["offsetTop"]}get offsetLeft(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get offsetLeft' called on an object that is not a valid instance of HTMLElement.")}return en[cn]["offsetLeft"]}get offsetWidth(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get offsetWidth' called on an object that is not a valid instance of HTMLElement.")}return en[cn]["offsetWidth"]}get offsetHeight(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get offsetHeight' called on an object that is not a valid instance of HTMLElement.")}return en[cn]["offsetHeight"]}get style(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get style' called on an object that is not a valid instance of HTMLElement.")}return nn.getSameObject(this,"style",(()=>nn.tryWrapperForImpl(en[cn]["style"])))}set style(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set style' called on an object that is not a valid instance of HTMLElement.")}const an=tn["style"];if(!nn.isObject(an)){throw new Wt.TypeError("Property 'style' is not an object")}Reflect.set(an,"cssText",en)}get onabort(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onabort' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onabort"])}set onabort(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onabort' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onabort' property on 'HTMLElement': The provided value"})}tn[cn]["onabort"]=en}get onauxclick(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onauxclick' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onauxclick"])}set onauxclick(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onauxclick' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onauxclick' property on 'HTMLElement': The provided value"})}tn[cn]["onauxclick"]=en}get onbeforeinput(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforeinput' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onbeforeinput"])}set onbeforeinput(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforeinput' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onbeforeinput' property on 'HTMLElement': The provided value"})}tn[cn]["onbeforeinput"]=en}get onbeforematch(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforematch' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onbeforematch"])}set onbeforematch(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforematch' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onbeforematch' property on 'HTMLElement': The provided value"})}tn[cn]["onbeforematch"]=en}get onbeforetoggle(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforetoggle' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onbeforetoggle"])}set onbeforetoggle(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforetoggle' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onbeforetoggle' property on 'HTMLElement': The provided value"})}tn[cn]["onbeforetoggle"]=en}get onblur(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onblur' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onblur"])}set onblur(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onblur' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onblur' property on 'HTMLElement': The provided value"})}tn[cn]["onblur"]=en}get oncancel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncancel' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["oncancel"])}set oncancel(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncancel' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'oncancel' property on 'HTMLElement': The provided value"})}tn[cn]["oncancel"]=en}get oncanplay(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncanplay' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["oncanplay"])}set oncanplay(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncanplay' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'oncanplay' property on 'HTMLElement': The provided value"})}tn[cn]["oncanplay"]=en}get oncanplaythrough(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncanplaythrough' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["oncanplaythrough"])}set oncanplaythrough(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncanplaythrough' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'oncanplaythrough' property on 'HTMLElement': The provided value"})}tn[cn]["oncanplaythrough"]=en}get onchange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onchange' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onchange"])}set onchange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onchange' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onchange' property on 'HTMLElement': The provided value"})}tn[cn]["onchange"]=en}get onclick(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onclick' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onclick"])}set onclick(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onclick' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onclick' property on 'HTMLElement': The provided value"})}tn[cn]["onclick"]=en}get onclose(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onclose' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onclose"])}set onclose(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onclose' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onclose' property on 'HTMLElement': The provided value"})}tn[cn]["onclose"]=en}get oncontextlost(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncontextlost' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["oncontextlost"])}set oncontextlost(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncontextlost' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'oncontextlost' property on 'HTMLElement': The provided value"})}tn[cn]["oncontextlost"]=en}get oncontextmenu(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncontextmenu' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["oncontextmenu"])}set oncontextmenu(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncontextmenu' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'oncontextmenu' property on 'HTMLElement': The provided value"})}tn[cn]["oncontextmenu"]=en}get oncontextrestored(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncontextrestored' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["oncontextrestored"])}set oncontextrestored(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncontextrestored' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'oncontextrestored' property on 'HTMLElement': The provided value"})}tn[cn]["oncontextrestored"]=en}get oncopy(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncopy' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["oncopy"])}set oncopy(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncopy' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'oncopy' property on 'HTMLElement': The provided value"})}tn[cn]["oncopy"]=en}get oncuechange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncuechange' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["oncuechange"])}set oncuechange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncuechange' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'oncuechange' property on 'HTMLElement': The provided value"})}tn[cn]["oncuechange"]=en}get oncut(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncut' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["oncut"])}set oncut(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncut' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'oncut' property on 'HTMLElement': The provided value"})}tn[cn]["oncut"]=en}get ondblclick(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondblclick' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ondblclick"])}set ondblclick(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondblclick' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ondblclick' property on 'HTMLElement': The provided value"})}tn[cn]["ondblclick"]=en}get ondrag(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondrag' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ondrag"])}set ondrag(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondrag' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ondrag' property on 'HTMLElement': The provided value"})}tn[cn]["ondrag"]=en}get ondragend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragend' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ondragend"])}set ondragend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragend' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ondragend' property on 'HTMLElement': The provided value"})}tn[cn]["ondragend"]=en}get ondragenter(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragenter' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ondragenter"])}set ondragenter(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragenter' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ondragenter' property on 'HTMLElement': The provided value"})}tn[cn]["ondragenter"]=en}get ondragleave(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragleave' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ondragleave"])}set ondragleave(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragleave' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ondragleave' property on 'HTMLElement': The provided value"})}tn[cn]["ondragleave"]=en}get ondragover(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragover' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ondragover"])}set ondragover(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragover' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ondragover' property on 'HTMLElement': The provided value"})}tn[cn]["ondragover"]=en}get ondragstart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragstart' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ondragstart"])}set ondragstart(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragstart' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ondragstart' property on 'HTMLElement': The provided value"})}tn[cn]["ondragstart"]=en}get ondrop(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondrop' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ondrop"])}set ondrop(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondrop' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ondrop' property on 'HTMLElement': The provided value"})}tn[cn]["ondrop"]=en}get ondurationchange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondurationchange' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ondurationchange"])}set ondurationchange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondurationchange' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ondurationchange' property on 'HTMLElement': The provided value"})}tn[cn]["ondurationchange"]=en}get onemptied(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onemptied' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onemptied"])}set onemptied(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onemptied' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onemptied' property on 'HTMLElement': The provided value"})}tn[cn]["onemptied"]=en}get onended(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onended' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onended"])}set onended(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onended' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onended' property on 'HTMLElement': The provided value"})}tn[cn]["onended"]=en}get onerror(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onerror' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onerror"])}set onerror(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onerror' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=on.convert(Wt,en,{context:"Failed to set the 'onerror' property on 'HTMLElement': The provided value"})}tn[cn]["onerror"]=en}get onfocus(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onfocus' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onfocus"])}set onfocus(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onfocus' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onfocus' property on 'HTMLElement': The provided value"})}tn[cn]["onfocus"]=en}get onformdata(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onformdata' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onformdata"])}set onformdata(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onformdata' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onformdata' property on 'HTMLElement': The provided value"})}tn[cn]["onformdata"]=en}get oninput(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oninput' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["oninput"])}set oninput(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oninput' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'oninput' property on 'HTMLElement': The provided value"})}tn[cn]["oninput"]=en}get oninvalid(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oninvalid' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["oninvalid"])}set oninvalid(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oninvalid' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'oninvalid' property on 'HTMLElement': The provided value"})}tn[cn]["oninvalid"]=en}get onkeydown(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onkeydown' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onkeydown"])}set onkeydown(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onkeydown' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onkeydown' property on 'HTMLElement': The provided value"})}tn[cn]["onkeydown"]=en}get onkeypress(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onkeypress' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onkeypress"])}set onkeypress(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onkeypress' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onkeypress' property on 'HTMLElement': The provided value"})}tn[cn]["onkeypress"]=en}get onkeyup(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onkeyup' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onkeyup"])}set onkeyup(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onkeyup' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onkeyup' property on 'HTMLElement': The provided value"})}tn[cn]["onkeyup"]=en}get onload(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onload' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onload"])}set onload(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onload' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onload' property on 'HTMLElement': The provided value"})}tn[cn]["onload"]=en}get onloadeddata(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onloadeddata' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onloadeddata"])}set onloadeddata(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onloadeddata' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onloadeddata' property on 'HTMLElement': The provided value"})}tn[cn]["onloadeddata"]=en}get onloadedmetadata(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onloadedmetadata' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onloadedmetadata"])}set onloadedmetadata(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onloadedmetadata' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onloadedmetadata' property on 'HTMLElement': The provided value"})}tn[cn]["onloadedmetadata"]=en}get onloadstart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onloadstart' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onloadstart"])}set onloadstart(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onloadstart' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onloadstart' property on 'HTMLElement': The provided value"})}tn[cn]["onloadstart"]=en}get onmousedown(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmousedown' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onmousedown"])}set onmousedown(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmousedown' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onmousedown' property on 'HTMLElement': The provided value"})}tn[cn]["onmousedown"]=en}get onmouseenter(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){return}return nn.tryWrapperForImpl(en[cn]["onmouseenter"])}set onmouseenter(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){return}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onmouseenter' property on 'HTMLElement': The provided value"})}tn[cn]["onmouseenter"]=en}get onmouseleave(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){return}return nn.tryWrapperForImpl(en[cn]["onmouseleave"])}set onmouseleave(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){return}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onmouseleave' property on 'HTMLElement': The provided value"})}tn[cn]["onmouseleave"]=en}get onmousemove(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmousemove' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onmousemove"])}set onmousemove(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmousemove' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onmousemove' property on 'HTMLElement': The provided value"})}tn[cn]["onmousemove"]=en}get onmouseout(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmouseout' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onmouseout"])}set onmouseout(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmouseout' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onmouseout' property on 'HTMLElement': The provided value"})}tn[cn]["onmouseout"]=en}get onmouseover(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmouseover' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onmouseover"])}set onmouseover(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmouseover' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onmouseover' property on 'HTMLElement': The provided value"})}tn[cn]["onmouseover"]=en}get onmouseup(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmouseup' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onmouseup"])}set onmouseup(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmouseup' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onmouseup' property on 'HTMLElement': The provided value"})}tn[cn]["onmouseup"]=en}get onpaste(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpaste' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onpaste"])}set onpaste(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpaste' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onpaste' property on 'HTMLElement': The provided value"})}tn[cn]["onpaste"]=en}get onpause(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpause' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onpause"])}set onpause(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpause' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onpause' property on 'HTMLElement': The provided value"})}tn[cn]["onpause"]=en}get onplay(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onplay' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onplay"])}set onplay(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onplay' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onplay' property on 'HTMLElement': The provided value"})}tn[cn]["onplay"]=en}get onplaying(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onplaying' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onplaying"])}set onplaying(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onplaying' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onplaying' property on 'HTMLElement': The provided value"})}tn[cn]["onplaying"]=en}get onprogress(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onprogress' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onprogress"])}set onprogress(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onprogress' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onprogress' property on 'HTMLElement': The provided value"})}tn[cn]["onprogress"]=en}get onratechange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onratechange' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onratechange"])}set onratechange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onratechange' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onratechange' property on 'HTMLElement': The provided value"})}tn[cn]["onratechange"]=en}get onreset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onreset' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onreset"])}set onreset(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onreset' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onreset' property on 'HTMLElement': The provided value"})}tn[cn]["onreset"]=en}get onresize(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onresize' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onresize"])}set onresize(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onresize' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onresize' property on 'HTMLElement': The provided value"})}tn[cn]["onresize"]=en}get onscroll(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onscroll' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onscroll"])}set onscroll(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onscroll' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onscroll' property on 'HTMLElement': The provided value"})}tn[cn]["onscroll"]=en}get onscrollend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onscrollend' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onscrollend"])}set onscrollend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onscrollend' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onscrollend' property on 'HTMLElement': The provided value"})}tn[cn]["onscrollend"]=en}get onsecuritypolicyviolation(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onsecuritypolicyviolation' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onsecuritypolicyviolation"])}set onsecuritypolicyviolation(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onsecuritypolicyviolation' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onsecuritypolicyviolation' property on 'HTMLElement': The provided value"})}tn[cn]["onsecuritypolicyviolation"]=en}get onseeked(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onseeked' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onseeked"])}set onseeked(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onseeked' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onseeked' property on 'HTMLElement': The provided value"})}tn[cn]["onseeked"]=en}get onseeking(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onseeking' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onseeking"])}set onseeking(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onseeking' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onseeking' property on 'HTMLElement': The provided value"})}tn[cn]["onseeking"]=en}get onselect(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onselect' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onselect"])}set onselect(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onselect' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onselect' property on 'HTMLElement': The provided value"})}tn[cn]["onselect"]=en}get onslotchange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onslotchange' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onslotchange"])}set onslotchange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onslotchange' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onslotchange' property on 'HTMLElement': The provided value"})}tn[cn]["onslotchange"]=en}get onstalled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onstalled' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onstalled"])}set onstalled(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onstalled' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onstalled' property on 'HTMLElement': The provided value"})}tn[cn]["onstalled"]=en}get onsubmit(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onsubmit' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onsubmit"])}set onsubmit(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onsubmit' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onsubmit' property on 'HTMLElement': The provided value"})}tn[cn]["onsubmit"]=en}get onsuspend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onsuspend' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onsuspend"])}set onsuspend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onsuspend' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onsuspend' property on 'HTMLElement': The provided value"})}tn[cn]["onsuspend"]=en}get ontimeupdate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontimeupdate' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ontimeupdate"])}set ontimeupdate(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontimeupdate' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ontimeupdate' property on 'HTMLElement': The provided value"})}tn[cn]["ontimeupdate"]=en}get ontoggle(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontoggle' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ontoggle"])}set ontoggle(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontoggle' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ontoggle' property on 'HTMLElement': The provided value"})}tn[cn]["ontoggle"]=en}get onvolumechange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onvolumechange' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onvolumechange"])}set onvolumechange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onvolumechange' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onvolumechange' property on 'HTMLElement': The provided value"})}tn[cn]["onvolumechange"]=en}get onwaiting(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwaiting' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onwaiting"])}set onwaiting(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwaiting' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onwaiting' property on 'HTMLElement': The provided value"})}tn[cn]["onwaiting"]=en}get onwebkitanimationend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwebkitanimationend' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onwebkitanimationend"])}set onwebkitanimationend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwebkitanimationend' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onwebkitanimationend' property on 'HTMLElement': The provided value"})}tn[cn]["onwebkitanimationend"]=en}get onwebkitanimationiteration(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwebkitanimationiteration' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onwebkitanimationiteration"])}set onwebkitanimationiteration(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwebkitanimationiteration' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onwebkitanimationiteration' property on 'HTMLElement': The provided value"})}tn[cn]["onwebkitanimationiteration"]=en}get onwebkitanimationstart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwebkitanimationstart' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onwebkitanimationstart"])}set onwebkitanimationstart(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwebkitanimationstart' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onwebkitanimationstart' property on 'HTMLElement': The provided value"})}tn[cn]["onwebkitanimationstart"]=en}get onwebkittransitionend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwebkittransitionend' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onwebkittransitionend"])}set onwebkittransitionend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwebkittransitionend' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onwebkittransitionend' property on 'HTMLElement': The provided value"})}tn[cn]["onwebkittransitionend"]=en}get onwheel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwheel' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["onwheel"])}set onwheel(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwheel' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onwheel' property on 'HTMLElement': The provided value"})}tn[cn]["onwheel"]=en}get ontouchstart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontouchstart' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ontouchstart"])}set ontouchstart(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontouchstart' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ontouchstart' property on 'HTMLElement': The provided value"})}tn[cn]["ontouchstart"]=en}get ontouchend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontouchend' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ontouchend"])}set ontouchend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontouchend' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ontouchend' property on 'HTMLElement': The provided value"})}tn[cn]["ontouchend"]=en}get ontouchmove(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontouchmove' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ontouchmove"])}set ontouchmove(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontouchmove' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ontouchmove' property on 'HTMLElement': The provided value"})}tn[cn]["ontouchmove"]=en}get ontouchcancel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontouchcancel' called on an object that is not a valid instance of HTMLElement.")}return nn.tryWrapperForImpl(en[cn]["ontouchcancel"])}set ontouchcancel(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontouchcancel' called on an object that is not a valid instance of HTMLElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ontouchcancel' property on 'HTMLElement': The provided value"})}tn[cn]["ontouchcancel"]=en}get dataset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get dataset' called on an object that is not a valid instance of HTMLElement.")}return nn.getSameObject(this,"dataset",(()=>nn.tryWrapperForImpl(en[cn]["dataset"])))}get nonce(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get nonce' called on an object that is not a valid instance of HTMLElement.")}const tn=en[cn]._reflectGetTheContentAttribute("nonce");return tn===null?"":tn}set nonce(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set nonce' called on an object that is not a valid instance of HTMLElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'nonce' property on 'HTMLElement': The provided value",globals:Wt});nn[cn]._reflectSetTheContentAttribute("nonce",en)}get tabIndex(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get tabIndex' called on an object that is not a valid instance of HTMLElement.")}rn(Wt);try{return en[cn]["tabIndex"]}finally{In(Wt)}}set tabIndex(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set tabIndex' called on an object that is not a valid instance of HTMLElement.")}en=tn["long"](en,{context:"Failed to set the 'tabIndex' property on 'HTMLElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]["tabIndex"]=en}finally{In(Wt)}}}Object.defineProperties(HTMLElement.prototype,{click:{enumerable:true},attachInternals:{enumerable:true},focus:{enumerable:true},blur:{enumerable:true},title:{enumerable:true},lang:{enumerable:true},translate:{enumerable:true},dir:{enumerable:true},hidden:{enumerable:true},accessKey:{enumerable:true},draggable:{enumerable:true},offsetParent:{enumerable:true},offsetTop:{enumerable:true},offsetLeft:{enumerable:true},offsetWidth:{enumerable:true},offsetHeight:{enumerable:true},style:{enumerable:true},onabort:{enumerable:true},onauxclick:{enumerable:true},onbeforeinput:{enumerable:true},onbeforematch:{enumerable:true},onbeforetoggle:{enumerable:true},onblur:{enumerable:true},oncancel:{enumerable:true},oncanplay:{enumerable:true},oncanplaythrough:{enumerable:true},onchange:{enumerable:true},onclick:{enumerable:true},onclose:{enumerable:true},oncontextlost:{enumerable:true},oncontextmenu:{enumerable:true},oncontextrestored:{enumerable:true},oncopy:{enumerable:true},oncuechange:{enumerable:true},oncut:{enumerable:true},ondblclick:{enumerable:true},ondrag:{enumerable:true},ondragend:{enumerable:true},ondragenter:{enumerable:true},ondragleave:{enumerable:true},ondragover:{enumerable:true},ondragstart:{enumerable:true},ondrop:{enumerable:true},ondurationchange:{enumerable:true},onemptied:{enumerable:true},onended:{enumerable:true},onerror:{enumerable:true},onfocus:{enumerable:true},onformdata:{enumerable:true},oninput:{enumerable:true},oninvalid:{enumerable:true},onkeydown:{enumerable:true},onkeypress:{enumerable:true},onkeyup:{enumerable:true},onload:{enumerable:true},onloadeddata:{enumerable:true},onloadedmetadata:{enumerable:true},onloadstart:{enumerable:true},onmousedown:{enumerable:true},onmouseenter:{enumerable:true},onmouseleave:{enumerable:true},onmousemove:{enumerable:true},onmouseout:{enumerable:true},onmouseover:{enumerable:true},onmouseup:{enumerable:true},onpaste:{enumerable:true},onpause:{enumerable:true},onplay:{enumerable:true},onplaying:{enumerable:true},onprogress:{enumerable:true},onratechange:{enumerable:true},onreset:{enumerable:true},onresize:{enumerable:true},onscroll:{enumerable:true},onscrollend:{enumerable:true},onsecuritypolicyviolation:{enumerable:true},onseeked:{enumerable:true},onseeking:{enumerable:true},onselect:{enumerable:true},onslotchange:{enumerable:true},onstalled:{enumerable:true},onsubmit:{enumerable:true},onsuspend:{enumerable:true},ontimeupdate:{enumerable:true},ontoggle:{enumerable:true},onvolumechange:{enumerable:true},onwaiting:{enumerable:true},onwebkitanimationend:{enumerable:true},onwebkitanimationiteration:{enumerable:true},onwebkitanimationstart:{enumerable:true},onwebkittransitionend:{enumerable:true},onwheel:{enumerable:true},ontouchstart:{enumerable:true},ontouchend:{enumerable:true},ontouchmove:{enumerable:true},ontouchcancel:{enumerable:true},dataset:{enumerable:true},nonce:{enumerable:true},tabIndex:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLElement",configurable:true}});dn[pn]=HTMLElement;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLElement})};const bn=en(95927)},28393:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(30962).parseURLToResultingURLRecord;const In=en(78012).serializeURL;const sn=en(8348).ceReactionsPreSteps;const on=en(8348).ceReactionsPostSteps;const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(48708);const pn="HTMLEmbedElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLEmbedElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLEmbedElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLEmbedElement extends Wt.HTMLElement{constructor(){return an(Wt,pn,new.target)}get src(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get src' called on an object that is not a valid instance of HTMLEmbedElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("src");if(Wt===null){return""}const Pt=rn(Wt,en[cn]._ownerDocument);if(Pt!==null){return In(Pt)}return tn.USVString(Wt)}finally{on(Wt)}}set src(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set src' called on an object that is not a valid instance of HTMLEmbedElement.")}en=tn["USVString"](en,{context:"Failed to set the 'src' property on 'HTMLEmbedElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("src",en)}finally{on(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLEmbedElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("type");return Wt===null?"":Wt}finally{on(Wt)}}set type(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set type' called on an object that is not a valid instance of HTMLEmbedElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'type' property on 'HTMLEmbedElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("type",en)}finally{on(Wt)}}get width(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get width' called on an object that is not a valid instance of HTMLEmbedElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("width");return Wt===null?"":Wt}finally{on(Wt)}}set width(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set width' called on an object that is not a valid instance of HTMLEmbedElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'width' property on 'HTMLEmbedElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("width",en)}finally{on(Wt)}}get height(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get height' called on an object that is not a valid instance of HTMLEmbedElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("height");return Wt===null?"":Wt}finally{on(Wt)}}set height(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set height' called on an object that is not a valid instance of HTMLEmbedElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'height' property on 'HTMLEmbedElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("height",en)}finally{on(Wt)}}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLEmbedElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{on(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLEmbedElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLEmbedElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("align",en)}finally{on(Wt)}}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLEmbedElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{on(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLEmbedElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLEmbedElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("name",en)}finally{on(Wt)}}}Object.defineProperties(HTMLEmbedElement.prototype,{src:{enumerable:true},type:{enumerable:true},width:{enumerable:true},height:{enumerable:true},align:{enumerable:true},name:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLEmbedElement",configurable:true}});dn[pn]=HTMLEmbedElement;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLEmbedElement})};const bn=en(4012)},56092:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLFieldSetElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLFieldSetElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLFieldSetElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLFieldSetElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}checkValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'checkValidity' called on an object that is not a valid instance of HTMLFieldSetElement.")}return en[sn].checkValidity()}reportValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'reportValidity' called on an object that is not a valid instance of HTMLFieldSetElement.")}return en[sn].reportValidity()}setCustomValidity(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'setCustomValidity' called on an object that is not a valid instance of HTMLFieldSetElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setCustomValidity' on 'HTMLFieldSetElement': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setCustomValidity' on 'HTMLFieldSetElement': parameter 1",globals:Wt});an.push(Pt)}return nn[sn].setCustomValidity(...an)}get disabled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get disabled' called on an object that is not a valid instance of HTMLFieldSetElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("disabled")!==null}finally{In(Wt)}}set disabled(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set disabled' called on an object that is not a valid instance of HTMLFieldSetElement.")}en=tn["boolean"](en,{context:"Failed to set the 'disabled' property on 'HTMLFieldSetElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("disabled","")}else{nn[sn]._reflectDeleteTheContentAttribute("disabled")}}finally{In(Wt)}}get form(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get form' called on an object that is not a valid instance of HTMLFieldSetElement.")}return nn.tryWrapperForImpl(en[sn]["form"])}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLFieldSetElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{In(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLFieldSetElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLFieldSetElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("name",en)}finally{In(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLFieldSetElement.")}return en[sn]["type"]}get elements(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get elements' called on an object that is not a valid instance of HTMLFieldSetElement.")}return nn.getSameObject(this,"elements",(()=>nn.tryWrapperForImpl(en[sn]["elements"])))}get willValidate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get willValidate' called on an object that is not a valid instance of HTMLFieldSetElement.")}return en[sn]["willValidate"]}get validity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get validity' called on an object that is not a valid instance of HTMLFieldSetElement.")}return nn.getSameObject(this,"validity",(()=>nn.tryWrapperForImpl(en[sn]["validity"])))}get validationMessage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get validationMessage' called on an object that is not a valid instance of HTMLFieldSetElement.")}return en[sn]["validationMessage"]}}Object.defineProperties(HTMLFieldSetElement.prototype,{checkValidity:{enumerable:true},reportValidity:{enumerable:true},setCustomValidity:{enumerable:true},disabled:{enumerable:true},form:{enumerable:true},name:{enumerable:true},type:{enumerable:true},elements:{enumerable:true},willValidate:{enumerable:true},validity:{enumerable:true},validationMessage:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLFieldSetElement",configurable:true}});on[dn]=HTMLFieldSetElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLFieldSetElement})};const pn=en(59615)},75431:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLFontElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLFontElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLFontElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLFontElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get color(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get color' called on an object that is not a valid instance of HTMLFontElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("color");return Wt===null?"":Wt}finally{In(Wt)}}set color(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set color' called on an object that is not a valid instance of HTMLFontElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'color' property on 'HTMLFontElement': The provided value",globals:Wt,treatNullAsEmptyString:true});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("color",en)}finally{In(Wt)}}get face(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get face' called on an object that is not a valid instance of HTMLFontElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("face");return Wt===null?"":Wt}finally{In(Wt)}}set face(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set face' called on an object that is not a valid instance of HTMLFontElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'face' property on 'HTMLFontElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("face",en)}finally{In(Wt)}}get size(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get size' called on an object that is not a valid instance of HTMLFontElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("size");return Wt===null?"":Wt}finally{In(Wt)}}set size(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set size' called on an object that is not a valid instance of HTMLFontElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'size' property on 'HTMLFontElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("size",en)}finally{In(Wt)}}}Object.defineProperties(HTMLFontElement.prototype,{color:{enumerable:true},face:{enumerable:true},size:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLFontElement",configurable:true}});on[dn]=HTMLFontElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLFontElement})};const pn=en(49758)},59470:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In=en(13506);const sn="HTMLFormControlsCollection";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLFormControlsCollection'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["HTMLFormControlsCollection"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=cn.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);cn.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{In._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new dn.implementation(en,tn,rn),configurable:true});Wt=makeProxy(Wt,en);Wt[an][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(dn.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[an][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[an])}return tn[an]};const on=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>on.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class HTMLFormControlsCollection extends Wt.HTMLCollection{constructor(){throw new Wt.TypeError("Illegal constructor")}namedItem(en){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'namedItem' called on an object that is not a valid instance of HTMLFormControlsCollection.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'namedItem' on 'HTMLFormControlsCollection': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'namedItem' on 'HTMLFormControlsCollection': parameter 1",globals:Wt});In.push(Pt)}return nn.tryWrapperForImpl(rn[an].namedItem(...In))}}Object.defineProperties(HTMLFormControlsCollection.prototype,{namedItem:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLFormControlsCollection",configurable:true},[Symbol.iterator]:{value:Wt.Array.prototype[Symbol.iterator],configurable:true,writable:true}});rn[sn]=HTMLFormControlsCollection;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:HTMLFormControlsCollection})};const cn=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[an][nn.supportedPropertyIndices]){Pt.add(`${en}`)}for(const en of Wt[an][nn.supportedPropertyNames]){if(!(en in Wt)){Pt.add(`${en}`)}}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;if(nn.isArrayIndexPropName(Pt)){const tn=Pt>>>0;const rn=Wt[an].item(tn);if(rn!==null){return{writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(rn)}}en=true}const tn=Wt[an].namedItem(Pt);if(tn!==null&&!(Pt in Wt)&&!en){return{writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,tn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,tn)}if(Wt[an][nn.wrapperSymbol]===tn){const Wt=this._globalObject}let rn;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;const tn=Wt[an].item(en);if(tn!==null){rn={writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}}if(rn===undefined){rn=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(rn===undefined){const nn=Reflect.getPrototypeOf(Wt);if(nn!==null){return Reflect.set(nn,Pt,en,tn)}rn={writable:true,enumerable:true,configurable:true,value:undefined}}if(!rn.writable){return false}if(!nn.isObject(tn)){return false}const In=Reflect.getOwnPropertyDescriptor(tn,Pt);let sn;if(In!==undefined){if(In.get||In.set){return false}if(!In.writable){return false}sn={value:en}}else{sn={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(tn,Pt,sn)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){return false}if(!nn.hasOwn(Wt,Pt)){const en=!(Wt[an].namedItem(Pt)!==null);if(!en){return false}}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;return!(Wt[an].item(en)!==null)}if(Wt[an].namedItem(Pt)!==null&&!(Pt in Wt)){return false}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const dn=en(12085)},618:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(48708);const In=en(8348).ceReactionsPreSteps;const sn=en(8348).ceReactionsPostSteps;const on=nn.implSymbol;const cn=nn.ctorRegistrySymbol;const dn="HTMLFormElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,on)&&Wt[on]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLFormElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[cn]["HTMLFormElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{rn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,on,{value:new pn.implementation(en,tn,an),configurable:true});Wt[on][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[on])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,on,{value:Object.create(pn.implementation.prototype),configurable:true});tn[on][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[on])}return tn[on]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const cn=nn.initCtorRegistry(Wt);class HTMLFormElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}submit(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'submit' called on an object that is not a valid instance of HTMLFormElement.")}return en[on].submit()}requestSubmit(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'requestSubmit' called on an object that is not a valid instance of HTMLFormElement.")}const tn=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'requestSubmit' on 'HTMLFormElement': parameter 1"})}tn.push(Pt)}return en[on].requestSubmit(...tn)}reset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'reset' called on an object that is not a valid instance of HTMLFormElement.")}In(Wt);try{return en[on].reset()}finally{sn(Wt)}}checkValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'checkValidity' called on an object that is not a valid instance of HTMLFormElement.")}return en[on].checkValidity()}reportValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'reportValidity' called on an object that is not a valid instance of HTMLFormElement.")}return en[on].reportValidity()}get acceptCharset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get acceptCharset' called on an object that is not a valid instance of HTMLFormElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("accept-charset");return Wt===null?"":Wt}finally{sn(Wt)}}set acceptCharset(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set acceptCharset' called on an object that is not a valid instance of HTMLFormElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'acceptCharset' property on 'HTMLFormElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("accept-charset",en)}finally{sn(Wt)}}get action(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get action' called on an object that is not a valid instance of HTMLFormElement.")}In(Wt);try{return en[on]["action"]}finally{sn(Wt)}}set action(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set action' called on an object that is not a valid instance of HTMLFormElement.")}en=tn["USVString"](en,{context:"Failed to set the 'action' property on 'HTMLFormElement': The provided value",globals:Wt});In(Wt);try{nn[on]["action"]=en}finally{sn(Wt)}}get enctype(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get enctype' called on an object that is not a valid instance of HTMLFormElement.")}In(Wt);try{return en[on]["enctype"]}finally{sn(Wt)}}set enctype(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set enctype' called on an object that is not a valid instance of HTMLFormElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'enctype' property on 'HTMLFormElement': The provided value",globals:Wt});In(Wt);try{nn[on]["enctype"]=en}finally{sn(Wt)}}get method(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get method' called on an object that is not a valid instance of HTMLFormElement.")}In(Wt);try{return en[on]["method"]}finally{sn(Wt)}}set method(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set method' called on an object that is not a valid instance of HTMLFormElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'method' property on 'HTMLFormElement': The provided value",globals:Wt});In(Wt);try{nn[on]["method"]=en}finally{sn(Wt)}}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLFormElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{sn(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLFormElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLFormElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("name",en)}finally{sn(Wt)}}get noValidate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get noValidate' called on an object that is not a valid instance of HTMLFormElement.")}In(Wt);try{return en[on]._reflectGetTheContentAttribute("novalidate")!==null}finally{sn(Wt)}}set noValidate(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set noValidate' called on an object that is not a valid instance of HTMLFormElement.")}en=tn["boolean"](en,{context:"Failed to set the 'noValidate' property on 'HTMLFormElement': The provided value",globals:Wt});In(Wt);try{if(en){nn[on]._reflectSetTheContentAttribute("novalidate","")}else{nn[on]._reflectDeleteTheContentAttribute("novalidate")}}finally{sn(Wt)}}get target(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get target' called on an object that is not a valid instance of HTMLFormElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("target");return Wt===null?"":Wt}finally{sn(Wt)}}set target(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set target' called on an object that is not a valid instance of HTMLFormElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'target' property on 'HTMLFormElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("target",en)}finally{sn(Wt)}}get elements(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get elements' called on an object that is not a valid instance of HTMLFormElement.")}return nn.getSameObject(this,"elements",(()=>nn.tryWrapperForImpl(en[on]["elements"])))}get length(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get length' called on an object that is not a valid instance of HTMLFormElement.")}return en[on]["length"]}}Object.defineProperties(HTMLFormElement.prototype,{submit:{enumerable:true},requestSubmit:{enumerable:true},reset:{enumerable:true},checkValidity:{enumerable:true},reportValidity:{enumerable:true},acceptCharset:{enumerable:true},action:{enumerable:true},enctype:{enumerable:true},method:{enumerable:true},name:{enumerable:true},noValidate:{enumerable:true},target:{enumerable:true},elements:{enumerable:true},length:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLFormElement",configurable:true}});cn[dn]=HTMLFormElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLFormElement})};const pn=en(70161)},58713:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=en(30962).parseURLToResultingURLRecord;const on=en(78012).serializeURL;const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(48708);const pn="HTMLFrameElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLFrameElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLFrameElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLFrameElement extends Wt.HTMLElement{constructor(){return an(Wt,pn,new.target)}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLFrameElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{In(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLFrameElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLFrameElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("name",en)}finally{In(Wt)}}get scrolling(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get scrolling' called on an object that is not a valid instance of HTMLFrameElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("scrolling");return Wt===null?"":Wt}finally{In(Wt)}}set scrolling(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set scrolling' called on an object that is not a valid instance of HTMLFrameElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'scrolling' property on 'HTMLFrameElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("scrolling",en)}finally{In(Wt)}}get src(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get src' called on an object that is not a valid instance of HTMLFrameElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("src");if(Wt===null){return""}const Pt=sn(Wt,en[cn]._ownerDocument);if(Pt!==null){return on(Pt)}return tn.USVString(Wt)}finally{In(Wt)}}set src(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set src' called on an object that is not a valid instance of HTMLFrameElement.")}en=tn["USVString"](en,{context:"Failed to set the 'src' property on 'HTMLFrameElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("src",en)}finally{In(Wt)}}get frameBorder(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get frameBorder' called on an object that is not a valid instance of HTMLFrameElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("frameborder");return Wt===null?"":Wt}finally{In(Wt)}}set frameBorder(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set frameBorder' called on an object that is not a valid instance of HTMLFrameElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'frameBorder' property on 'HTMLFrameElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("frameborder",en)}finally{In(Wt)}}get longDesc(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get longDesc' called on an object that is not a valid instance of HTMLFrameElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("longdesc");if(Wt===null){return""}const Pt=sn(Wt,en[cn]._ownerDocument);if(Pt!==null){return on(Pt)}return tn.USVString(Wt)}finally{In(Wt)}}set longDesc(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set longDesc' called on an object that is not a valid instance of HTMLFrameElement.")}en=tn["USVString"](en,{context:"Failed to set the 'longDesc' property on 'HTMLFrameElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("longdesc",en)}finally{In(Wt)}}get noResize(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get noResize' called on an object that is not a valid instance of HTMLFrameElement.")}rn(Wt);try{return en[cn]._reflectGetTheContentAttribute("noresize")!==null}finally{In(Wt)}}set noResize(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set noResize' called on an object that is not a valid instance of HTMLFrameElement.")}en=tn["boolean"](en,{context:"Failed to set the 'noResize' property on 'HTMLFrameElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[cn]._reflectSetTheContentAttribute("noresize","")}else{nn[cn]._reflectDeleteTheContentAttribute("noresize")}}finally{In(Wt)}}get contentDocument(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get contentDocument' called on an object that is not a valid instance of HTMLFrameElement.")}return nn.tryWrapperForImpl(en[cn]["contentDocument"])}get contentWindow(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get contentWindow' called on an object that is not a valid instance of HTMLFrameElement.")}return nn.tryWrapperForImpl(en[cn]["contentWindow"])}get marginHeight(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get marginHeight' called on an object that is not a valid instance of HTMLFrameElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("marginheight");return Wt===null?"":Wt}finally{In(Wt)}}set marginHeight(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set marginHeight' called on an object that is not a valid instance of HTMLFrameElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'marginHeight' property on 'HTMLFrameElement': The provided value",globals:Wt,treatNullAsEmptyString:true});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("marginheight",en)}finally{In(Wt)}}get marginWidth(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get marginWidth' called on an object that is not a valid instance of HTMLFrameElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("marginwidth");return Wt===null?"":Wt}finally{In(Wt)}}set marginWidth(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set marginWidth' called on an object that is not a valid instance of HTMLFrameElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'marginWidth' property on 'HTMLFrameElement': The provided value",globals:Wt,treatNullAsEmptyString:true});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("marginwidth",en)}finally{In(Wt)}}}Object.defineProperties(HTMLFrameElement.prototype,{name:{enumerable:true},scrolling:{enumerable:true},src:{enumerable:true},frameBorder:{enumerable:true},longDesc:{enumerable:true},noResize:{enumerable:true},contentDocument:{enumerable:true},contentWindow:{enumerable:true},marginHeight:{enumerable:true},marginWidth:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLFrameElement",configurable:true}});dn[pn]=HTMLFrameElement;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLFrameElement})};const bn=en(7700)},83849:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=en(69117);const on=en(98574);const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(48708);const pn="HTMLFrameSetElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLFrameSetElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLFrameSetElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLFrameSetElement extends Wt.HTMLElement{constructor(){return an(Wt,pn,new.target)}get cols(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get cols' called on an object that is not a valid instance of HTMLFrameSetElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("cols");return Wt===null?"":Wt}finally{In(Wt)}}set cols(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set cols' called on an object that is not a valid instance of HTMLFrameSetElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'cols' property on 'HTMLFrameSetElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("cols",en)}finally{In(Wt)}}get rows(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rows' called on an object that is not a valid instance of HTMLFrameSetElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("rows");return Wt===null?"":Wt}finally{In(Wt)}}set rows(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set rows' called on an object that is not a valid instance of HTMLFrameSetElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'rows' property on 'HTMLFrameSetElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("rows",en)}finally{In(Wt)}}get onafterprint(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onafterprint' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onafterprint"])}set onafterprint(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onafterprint' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onafterprint' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onafterprint"]=en}get onbeforeprint(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforeprint' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onbeforeprint"])}set onbeforeprint(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforeprint' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onbeforeprint' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onbeforeprint"]=en}get onbeforeunload(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforeunload' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onbeforeunload"])}set onbeforeunload(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforeunload' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=on.convert(Wt,en,{context:"Failed to set the 'onbeforeunload' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onbeforeunload"]=en}get onhashchange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onhashchange' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onhashchange"])}set onhashchange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onhashchange' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onhashchange' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onhashchange"]=en}get onlanguagechange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onlanguagechange' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onlanguagechange"])}set onlanguagechange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onlanguagechange' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onlanguagechange' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onlanguagechange"]=en}get onmessage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmessage' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onmessage"])}set onmessage(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmessage' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onmessage' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onmessage"]=en}get onmessageerror(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmessageerror' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onmessageerror"])}set onmessageerror(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmessageerror' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onmessageerror' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onmessageerror"]=en}get onoffline(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onoffline' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onoffline"])}set onoffline(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onoffline' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onoffline' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onoffline"]=en}get ononline(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ononline' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["ononline"])}set ononline(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ononline' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'ononline' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["ononline"]=en}get onpagehide(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpagehide' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onpagehide"])}set onpagehide(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpagehide' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onpagehide' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onpagehide"]=en}get onpageshow(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpageshow' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onpageshow"])}set onpageshow(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpageshow' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onpageshow' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onpageshow"]=en}get onpopstate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpopstate' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onpopstate"])}set onpopstate(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpopstate' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onpopstate' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onpopstate"]=en}get onrejectionhandled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onrejectionhandled' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onrejectionhandled"])}set onrejectionhandled(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onrejectionhandled' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onrejectionhandled' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onrejectionhandled"]=en}get onstorage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onstorage' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onstorage"])}set onstorage(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onstorage' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onstorage' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onstorage"]=en}get onunhandledrejection(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onunhandledrejection' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onunhandledrejection"])}set onunhandledrejection(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onunhandledrejection' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onunhandledrejection' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onunhandledrejection"]=en}get onunload(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onunload' called on an object that is not a valid instance of HTMLFrameSetElement.")}return nn.tryWrapperForImpl(en[cn]["onunload"])}set onunload(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onunload' called on an object that is not a valid instance of HTMLFrameSetElement.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onunload' property on 'HTMLFrameSetElement': The provided value"})}tn[cn]["onunload"]=en}}Object.defineProperties(HTMLFrameSetElement.prototype,{cols:{enumerable:true},rows:{enumerable:true},onafterprint:{enumerable:true},onbeforeprint:{enumerable:true},onbeforeunload:{enumerable:true},onhashchange:{enumerable:true},onlanguagechange:{enumerable:true},onmessage:{enumerable:true},onmessageerror:{enumerable:true},onoffline:{enumerable:true},ononline:{enumerable:true},onpagehide:{enumerable:true},onpageshow:{enumerable:true},onpopstate:{enumerable:true},onrejectionhandled:{enumerable:true},onstorage:{enumerable:true},onunhandledrejection:{enumerable:true},onunload:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLFrameSetElement",configurable:true}});dn[pn]=HTMLFrameSetElement;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLFrameSetElement})};const bn=en(67660)},11610:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLHRElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLHRElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLHRElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLHRElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLHRElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{In(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLHRElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLHRElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("align",en)}finally{In(Wt)}}get color(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get color' called on an object that is not a valid instance of HTMLHRElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("color");return Wt===null?"":Wt}finally{In(Wt)}}set color(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set color' called on an object that is not a valid instance of HTMLHRElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'color' property on 'HTMLHRElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("color",en)}finally{In(Wt)}}get noShade(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get noShade' called on an object that is not a valid instance of HTMLHRElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("noshade")!==null}finally{In(Wt)}}set noShade(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set noShade' called on an object that is not a valid instance of HTMLHRElement.")}en=tn["boolean"](en,{context:"Failed to set the 'noShade' property on 'HTMLHRElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("noshade","")}else{nn[sn]._reflectDeleteTheContentAttribute("noshade")}}finally{In(Wt)}}get size(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get size' called on an object that is not a valid instance of HTMLHRElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("size");return Wt===null?"":Wt}finally{In(Wt)}}set size(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set size' called on an object that is not a valid instance of HTMLHRElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'size' property on 'HTMLHRElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("size",en)}finally{In(Wt)}}get width(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get width' called on an object that is not a valid instance of HTMLHRElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("width");return Wt===null?"":Wt}finally{In(Wt)}}set width(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set width' called on an object that is not a valid instance of HTMLHRElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'width' property on 'HTMLHRElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("width",en)}finally{In(Wt)}}}Object.defineProperties(HTMLHRElement.prototype,{align:{enumerable:true},color:{enumerable:true},noShade:{enumerable:true},size:{enumerable:true},width:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLHRElement",configurable:true}});on[dn]=HTMLHRElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLHRElement})};const pn=en(46505)},51382:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(48708);const on="HTMLHeadElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLHeadElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["HTMLHeadElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,Pt)=>{if(!Pt.some((Wt=>cn.has(Wt)))){return}const en=nn.initCtorRegistry(Wt);class HTMLHeadElement extends Wt.HTMLElement{constructor(){return an(Wt,on,new.target)}}Object.defineProperties(HTMLHeadElement.prototype,{[Symbol.toStringTag]:{value:"HTMLHeadElement",configurable:true}});en[on]=HTMLHeadElement;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:HTMLHeadElement})};const dn=en(69573)},39564:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLHeadingElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLHeadingElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLHeadingElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLHeadingElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLHeadingElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{In(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLHeadingElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLHeadingElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("align",en)}finally{In(Wt)}}}Object.defineProperties(HTMLHeadingElement.prototype,{align:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLHeadingElement",configurable:true}});on[dn]=HTMLHeadingElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLHeadingElement})};const pn=en(77031)},40031:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLHtmlElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLHtmlElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLHtmlElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLHtmlElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get version(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get version' called on an object that is not a valid instance of HTMLHtmlElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("version");return Wt===null?"":Wt}finally{In(Wt)}}set version(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set version' called on an object that is not a valid instance of HTMLHtmlElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'version' property on 'HTMLHtmlElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("version",en)}finally{In(Wt)}}}Object.defineProperties(HTMLHtmlElement.prototype,{version:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLHtmlElement",configurable:true}});on[dn]=HTMLHtmlElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLHtmlElement})};const pn=en(48366)},58720:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(30962).parseURLToResultingURLRecord;const In=en(78012).serializeURL;const sn=en(8348).ceReactionsPreSteps;const on=en(8348).ceReactionsPostSteps;const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(48708);const pn="HTMLIFrameElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLIFrameElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLIFrameElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLIFrameElement extends Wt.HTMLElement{constructor(){return an(Wt,pn,new.target)}getSVGDocument(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'getSVGDocument' called on an object that is not a valid instance of HTMLIFrameElement.")}return nn.tryWrapperForImpl(en[cn].getSVGDocument())}get src(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get src' called on an object that is not a valid instance of HTMLIFrameElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("src");if(Wt===null){return""}const Pt=rn(Wt,en[cn]._ownerDocument);if(Pt!==null){return In(Pt)}return tn.USVString(Wt)}finally{on(Wt)}}set src(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set src' called on an object that is not a valid instance of HTMLIFrameElement.")}en=tn["USVString"](en,{context:"Failed to set the 'src' property on 'HTMLIFrameElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("src",en)}finally{on(Wt)}}get srcdoc(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get srcdoc' called on an object that is not a valid instance of HTMLIFrameElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("srcdoc");return Wt===null?"":Wt}finally{on(Wt)}}set srcdoc(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set srcdoc' called on an object that is not a valid instance of HTMLIFrameElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'srcdoc' property on 'HTMLIFrameElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("srcdoc",en)}finally{on(Wt)}}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLIFrameElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{on(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLIFrameElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLIFrameElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("name",en)}finally{on(Wt)}}get allowFullscreen(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get allowFullscreen' called on an object that is not a valid instance of HTMLIFrameElement.")}sn(Wt);try{return en[cn]._reflectGetTheContentAttribute("allowfullscreen")!==null}finally{on(Wt)}}set allowFullscreen(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set allowFullscreen' called on an object that is not a valid instance of HTMLIFrameElement.")}en=tn["boolean"](en,{context:"Failed to set the 'allowFullscreen' property on 'HTMLIFrameElement': The provided value",globals:Wt});sn(Wt);try{if(en){nn[cn]._reflectSetTheContentAttribute("allowfullscreen","")}else{nn[cn]._reflectDeleteTheContentAttribute("allowfullscreen")}}finally{on(Wt)}}get width(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get width' called on an object that is not a valid instance of HTMLIFrameElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("width");return Wt===null?"":Wt}finally{on(Wt)}}set width(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set width' called on an object that is not a valid instance of HTMLIFrameElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'width' property on 'HTMLIFrameElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("width",en)}finally{on(Wt)}}get height(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get height' called on an object that is not a valid instance of HTMLIFrameElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("height");return Wt===null?"":Wt}finally{on(Wt)}}set height(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set height' called on an object that is not a valid instance of HTMLIFrameElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'height' property on 'HTMLIFrameElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("height",en)}finally{on(Wt)}}get contentDocument(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get contentDocument' called on an object that is not a valid instance of HTMLIFrameElement.")}return nn.tryWrapperForImpl(en[cn]["contentDocument"])}get contentWindow(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get contentWindow' called on an object that is not a valid instance of HTMLIFrameElement.")}return nn.tryWrapperForImpl(en[cn]["contentWindow"])}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLIFrameElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{on(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLIFrameElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLIFrameElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("align",en)}finally{on(Wt)}}get scrolling(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get scrolling' called on an object that is not a valid instance of HTMLIFrameElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("scrolling");return Wt===null?"":Wt}finally{on(Wt)}}set scrolling(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set scrolling' called on an object that is not a valid instance of HTMLIFrameElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'scrolling' property on 'HTMLIFrameElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("scrolling",en)}finally{on(Wt)}}get frameBorder(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get frameBorder' called on an object that is not a valid instance of HTMLIFrameElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("frameborder");return Wt===null?"":Wt}finally{on(Wt)}}set frameBorder(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set frameBorder' called on an object that is not a valid instance of HTMLIFrameElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'frameBorder' property on 'HTMLIFrameElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("frameborder",en)}finally{on(Wt)}}get longDesc(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get longDesc' called on an object that is not a valid instance of HTMLIFrameElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("longdesc");if(Wt===null){return""}const Pt=rn(Wt,en[cn]._ownerDocument);if(Pt!==null){return In(Pt)}return tn.USVString(Wt)}finally{on(Wt)}}set longDesc(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set longDesc' called on an object that is not a valid instance of HTMLIFrameElement.")}en=tn["USVString"](en,{context:"Failed to set the 'longDesc' property on 'HTMLIFrameElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("longdesc",en)}finally{on(Wt)}}get marginHeight(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get marginHeight' called on an object that is not a valid instance of HTMLIFrameElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("marginheight");return Wt===null?"":Wt}finally{on(Wt)}}set marginHeight(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set marginHeight' called on an object that is not a valid instance of HTMLIFrameElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'marginHeight' property on 'HTMLIFrameElement': The provided value",globals:Wt,treatNullAsEmptyString:true});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("marginheight",en)}finally{on(Wt)}}get marginWidth(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get marginWidth' called on an object that is not a valid instance of HTMLIFrameElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("marginwidth");return Wt===null?"":Wt}finally{on(Wt)}}set marginWidth(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set marginWidth' called on an object that is not a valid instance of HTMLIFrameElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'marginWidth' property on 'HTMLIFrameElement': The provided value",globals:Wt,treatNullAsEmptyString:true});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("marginwidth",en)}finally{on(Wt)}}}Object.defineProperties(HTMLIFrameElement.prototype,{getSVGDocument:{enumerable:true},src:{enumerable:true},srcdoc:{enumerable:true},name:{enumerable:true},allowFullscreen:{enumerable:true},width:{enumerable:true},height:{enumerable:true},contentDocument:{enumerable:true},contentWindow:{enumerable:true},align:{enumerable:true},scrolling:{enumerable:true},frameBorder:{enumerable:true},longDesc:{enumerable:true},marginHeight:{enumerable:true},marginWidth:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLIFrameElement",configurable:true}});dn[pn]=HTMLIFrameElement;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLIFrameElement})};const bn=en(73531)},32741:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=en(30962).parseURLToResultingURLRecord;const on=en(78012).serializeURL;const cn=en(97205).parseNonNegativeInteger;const dn=nn.implSymbol;const un=nn.ctorRegistrySymbol;const pn=en(48708);const mn="HTMLImageElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,dn)&&Wt[dn]instanceof Gn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof Gn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLImageElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[un]["HTMLImageElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{pn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,dn,{value:new Gn.implementation(en,tn,an),configurable:true});Wt[dn][nn.wrapperSymbol]=Wt;if(Gn.init){Gn.init(Wt[dn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,dn,{value:Object.create(Gn.implementation.prototype),configurable:true});tn[dn][nn.wrapperSymbol]=tn;if(Gn.init){Gn.init(tn[dn])}return tn[dn]};const bn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>bn.has(Wt)))){return}const un=nn.initCtorRegistry(Wt);class HTMLImageElement extends Wt.HTMLElement{constructor(){return an(Wt,mn,new.target)}get alt(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get alt' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("alt");return Wt===null?"":Wt}finally{In(Wt)}}set alt(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set alt' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'alt' property on 'HTMLImageElement': The provided value",globals:Wt});rn(Wt);try{nn[dn]._reflectSetTheContentAttribute("alt",en)}finally{In(Wt)}}get src(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get src' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("src");if(Wt===null){return""}const Pt=sn(Wt,en[dn]._ownerDocument);if(Pt!==null){return on(Pt)}return tn.USVString(Wt)}finally{In(Wt)}}set src(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set src' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["USVString"](en,{context:"Failed to set the 'src' property on 'HTMLImageElement': The provided value",globals:Wt});rn(Wt);try{nn[dn]._reflectSetTheContentAttribute("src",en)}finally{In(Wt)}}get srcset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get srcset' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("srcset");return Wt===null?"":tn.USVString(Wt)}finally{In(Wt)}}set srcset(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set srcset' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["USVString"](en,{context:"Failed to set the 'srcset' property on 'HTMLImageElement': The provided value",globals:Wt});rn(Wt);try{nn[dn]._reflectSetTheContentAttribute("srcset",en)}finally{In(Wt)}}get sizes(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get sizes' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("sizes");return Wt===null?"":Wt}finally{In(Wt)}}set sizes(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set sizes' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'sizes' property on 'HTMLImageElement': The provided value",globals:Wt});rn(Wt);try{nn[dn]._reflectSetTheContentAttribute("sizes",en)}finally{In(Wt)}}get crossOrigin(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get crossOrigin' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{return en[dn]._reflectGetTheContentAttribute("crossorigin")}finally{In(Wt)}}set crossOrigin(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set crossOrigin' called on an object that is not a valid instance of HTMLImageElement.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'crossOrigin' property on 'HTMLImageElement': The provided value",globals:Wt})}rn(Wt);try{if(en===null){nn[dn]._reflectDeleteTheContentAttribute("crossorigin")}else{nn[dn]._reflectSetTheContentAttribute("crossorigin",en)}}finally{In(Wt)}}get useMap(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get useMap' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("usemap");return Wt===null?"":Wt}finally{In(Wt)}}set useMap(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set useMap' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'useMap' property on 'HTMLImageElement': The provided value",globals:Wt});rn(Wt);try{nn[dn]._reflectSetTheContentAttribute("usemap",en)}finally{In(Wt)}}get isMap(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get isMap' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{return en[dn]._reflectGetTheContentAttribute("ismap")!==null}finally{In(Wt)}}set isMap(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set isMap' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["boolean"](en,{context:"Failed to set the 'isMap' property on 'HTMLImageElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[dn]._reflectSetTheContentAttribute("ismap","")}else{nn[dn]._reflectDeleteTheContentAttribute("ismap")}}finally{In(Wt)}}get width(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get width' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{return en[dn]["width"]}finally{In(Wt)}}set width(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set width' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'width' property on 'HTMLImageElement': The provided value",globals:Wt});rn(Wt);try{nn[dn]["width"]=en}finally{In(Wt)}}get height(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get height' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{return en[dn]["height"]}finally{In(Wt)}}set height(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set height' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'height' property on 'HTMLImageElement': The provided value",globals:Wt});rn(Wt);try{nn[dn]["height"]=en}finally{In(Wt)}}get naturalWidth(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get naturalWidth' called on an object that is not a valid instance of HTMLImageElement.")}return en[dn]["naturalWidth"]}get naturalHeight(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get naturalHeight' called on an object that is not a valid instance of HTMLImageElement.")}return en[dn]["naturalHeight"]}get complete(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get complete' called on an object that is not a valid instance of HTMLImageElement.")}return en[dn]["complete"]}get currentSrc(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get currentSrc' called on an object that is not a valid instance of HTMLImageElement.")}return en[dn]["currentSrc"]}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{In(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLImageElement': The provided value",globals:Wt});rn(Wt);try{nn[dn]._reflectSetTheContentAttribute("name",en)}finally{In(Wt)}}get lowsrc(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get lowsrc' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("lowsrc");if(Wt===null){return""}const Pt=sn(Wt,en[dn]._ownerDocument);if(Pt!==null){return on(Pt)}return tn.USVString(Wt)}finally{In(Wt)}}set lowsrc(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set lowsrc' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["USVString"](en,{context:"Failed to set the 'lowsrc' property on 'HTMLImageElement': The provided value",globals:Wt});rn(Wt);try{nn[dn]._reflectSetTheContentAttribute("lowsrc",en)}finally{In(Wt)}}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{In(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLImageElement': The provided value",globals:Wt});rn(Wt);try{nn[dn]._reflectSetTheContentAttribute("align",en)}finally{In(Wt)}}get hspace(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hspace' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{let Wt=en[dn]._reflectGetTheContentAttribute("hspace");if(Wt!==null){Wt=cn(Wt);if(Wt!==null&&Wt>=0&&Wt<=2147483647){return Wt}}return 0}finally{In(Wt)}}set hspace(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set hspace' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'hspace' property on 'HTMLImageElement': The provided value",globals:Wt});rn(Wt);try{const Wt=en<=2147483647&&en>=0?en:0;nn[dn]._reflectSetTheContentAttribute("hspace",String(Wt))}finally{In(Wt)}}get vspace(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get vspace' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{let Wt=en[dn]._reflectGetTheContentAttribute("vspace");if(Wt!==null){Wt=cn(Wt);if(Wt!==null&&Wt>=0&&Wt<=2147483647){return Wt}}return 0}finally{In(Wt)}}set vspace(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set vspace' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'vspace' property on 'HTMLImageElement': The provided value",globals:Wt});rn(Wt);try{const Wt=en<=2147483647&&en>=0?en:0;nn[dn]._reflectSetTheContentAttribute("vspace",String(Wt))}finally{In(Wt)}}get longDesc(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get longDesc' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("longdesc");if(Wt===null){return""}const Pt=sn(Wt,en[dn]._ownerDocument);if(Pt!==null){return on(Pt)}return tn.USVString(Wt)}finally{In(Wt)}}set longDesc(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set longDesc' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["USVString"](en,{context:"Failed to set the 'longDesc' property on 'HTMLImageElement': The provided value",globals:Wt});rn(Wt);try{nn[dn]._reflectSetTheContentAttribute("longdesc",en)}finally{In(Wt)}}get border(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get border' called on an object that is not a valid instance of HTMLImageElement.")}rn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("border");return Wt===null?"":Wt}finally{In(Wt)}}set border(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set border' called on an object that is not a valid instance of HTMLImageElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'border' property on 'HTMLImageElement': The provided value",globals:Wt,treatNullAsEmptyString:true});rn(Wt);try{nn[dn]._reflectSetTheContentAttribute("border",en)}finally{In(Wt)}}}Object.defineProperties(HTMLImageElement.prototype,{alt:{enumerable:true},src:{enumerable:true},srcset:{enumerable:true},sizes:{enumerable:true},crossOrigin:{enumerable:true},useMap:{enumerable:true},isMap:{enumerable:true},width:{enumerable:true},height:{enumerable:true},naturalWidth:{enumerable:true},naturalHeight:{enumerable:true},complete:{enumerable:true},currentSrc:{enumerable:true},name:{enumerable:true},lowsrc:{enumerable:true},align:{enumerable:true},hspace:{enumerable:true},vspace:{enumerable:true},longDesc:{enumerable:true},border:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLImageElement",configurable:true}});un[mn]=HTMLImageElement;Object.defineProperty(Wt,mn,{configurable:true,writable:true,value:HTMLImageElement})};const Gn=en(38352)},18142:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(74150);const In=en(8348).ceReactionsPreSteps;const sn=en(8348).ceReactionsPostSteps;const on=en(12373);const cn=en(97205).parseNonNegativeInteger;const dn=en(16694).create;const un=en(30962).parseURLToResultingURLRecord;const pn=en(78012).serializeURL;const mn=nn.implSymbol;const bn=nn.ctorRegistrySymbol;const Gn=en(48708);const hn="HTMLInputElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,mn)&&Wt[mn]instanceof An.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof An.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLInputElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[bn]["HTMLInputElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{Gn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,mn,{value:new An.implementation(en,tn,an),configurable:true});Wt[mn][nn.wrapperSymbol]=Wt;if(An.init){An.init(Wt[mn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,mn,{value:Object.create(An.implementation.prototype),configurable:true});tn[mn][nn.wrapperSymbol]=tn;if(An.init){An.init(tn[mn])}return tn[mn]};const Zn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>Zn.has(Wt)))){return}const bn=nn.initCtorRegistry(Wt);class HTMLInputElement extends Wt.HTMLElement{constructor(){return an(Wt,hn,new.target)}stepUp(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'stepUp' called on an object that is not a valid instance of HTMLInputElement.")}const nn=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["long"](Pt,{context:"Failed to execute 'stepUp' on 'HTMLInputElement': parameter 1",globals:Wt})}else{Pt=1}nn.push(Pt)}return en[mn].stepUp(...nn)}stepDown(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'stepDown' called on an object that is not a valid instance of HTMLInputElement.")}const nn=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["long"](Pt,{context:"Failed to execute 'stepDown' on 'HTMLInputElement': parameter 1",globals:Wt})}else{Pt=1}nn.push(Pt)}return en[mn].stepDown(...nn)}checkValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'checkValidity' called on an object that is not a valid instance of HTMLInputElement.")}return en[mn].checkValidity()}reportValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'reportValidity' called on an object that is not a valid instance of HTMLInputElement.")}return en[mn].reportValidity()}setCustomValidity(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'setCustomValidity' called on an object that is not a valid instance of HTMLInputElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setCustomValidity' on 'HTMLInputElement': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setCustomValidity' on 'HTMLInputElement': parameter 1",globals:Wt});an.push(Pt)}return nn[mn].setCustomValidity(...an)}select(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'select' called on an object that is not a valid instance of HTMLInputElement.")}return en[mn].select()}setRangeText(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'setRangeText' called on an object that is not a valid instance of HTMLInputElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setRangeText' on 'HTMLInputElement': 1 argument required, but only ${arguments.length} present.`)}const an=[];switch(arguments.length){case 1:{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setRangeText' on 'HTMLInputElement': parameter 1",globals:Wt});an.push(Pt)}break;case 2:throw new Wt.TypeError(`Failed to execute 'setRangeText' on 'HTMLInputElement': only ${arguments.length} arguments present.`);break;case 3:{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setRangeText' on 'HTMLInputElement': parameter 1",globals:Wt});an.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setRangeText' on 'HTMLInputElement': parameter 2",globals:Wt});an.push(Pt)}{let Pt=arguments[2];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setRangeText' on 'HTMLInputElement': parameter 3",globals:Wt});an.push(Pt)}break;default:{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setRangeText' on 'HTMLInputElement': parameter 1",globals:Wt});an.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setRangeText' on 'HTMLInputElement': parameter 2",globals:Wt});an.push(Pt)}{let Pt=arguments[2];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setRangeText' on 'HTMLInputElement': parameter 3",globals:Wt});an.push(Pt)}{let Pt=arguments[3];if(Pt!==undefined){Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'setRangeText' on 'HTMLInputElement': parameter 4"})}else{Pt="preserve"}an.push(Pt)}}return nn[mn].setRangeText(...an)}setSelectionRange(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'setSelectionRange' called on an object that is not a valid instance of HTMLInputElement.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'setSelectionRange' on 'HTMLInputElement': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setSelectionRange' on 'HTMLInputElement': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setSelectionRange' on 'HTMLInputElement': parameter 2",globals:Wt});rn.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setSelectionRange' on 'HTMLInputElement': parameter 3",globals:Wt})}rn.push(Pt)}return an[mn].setSelectionRange(...rn)}get accept(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get accept' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("accept");return Wt===null?"":Wt}finally{sn(Wt)}}set accept(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set accept' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'accept' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("accept",en)}finally{sn(Wt)}}get alt(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get alt' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("alt");return Wt===null?"":Wt}finally{sn(Wt)}}set alt(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set alt' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'alt' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("alt",en)}finally{sn(Wt)}}get autocomplete(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get autocomplete' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("autocomplete");return Wt===null?"":Wt}finally{sn(Wt)}}set autocomplete(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set autocomplete' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'autocomplete' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("autocomplete",en)}finally{sn(Wt)}}get autofocus(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get autofocus' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{return en[mn]._reflectGetTheContentAttribute("autofocus")!==null}finally{sn(Wt)}}set autofocus(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set autofocus' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["boolean"](en,{context:"Failed to set the 'autofocus' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{if(en){nn[mn]._reflectSetTheContentAttribute("autofocus","")}else{nn[mn]._reflectDeleteTheContentAttribute("autofocus")}}finally{sn(Wt)}}get defaultChecked(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get defaultChecked' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{return en[mn]._reflectGetTheContentAttribute("checked")!==null}finally{sn(Wt)}}set defaultChecked(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set defaultChecked' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["boolean"](en,{context:"Failed to set the 'defaultChecked' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{if(en){nn[mn]._reflectSetTheContentAttribute("checked","")}else{nn[mn]._reflectDeleteTheContentAttribute("checked")}}finally{sn(Wt)}}get checked(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get checked' called on an object that is not a valid instance of HTMLInputElement.")}return en[mn]["checked"]}set checked(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set checked' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["boolean"](en,{context:"Failed to set the 'checked' property on 'HTMLInputElement': The provided value",globals:Wt});nn[mn]["checked"]=en}get dirName(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get dirName' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("dirname");return Wt===null?"":Wt}finally{sn(Wt)}}set dirName(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set dirName' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'dirName' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("dirname",en)}finally{sn(Wt)}}get disabled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get disabled' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{return en[mn]._reflectGetTheContentAttribute("disabled")!==null}finally{sn(Wt)}}set disabled(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set disabled' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["boolean"](en,{context:"Failed to set the 'disabled' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{if(en){nn[mn]._reflectSetTheContentAttribute("disabled","")}else{nn[mn]._reflectDeleteTheContentAttribute("disabled")}}finally{sn(Wt)}}get form(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get form' called on an object that is not a valid instance of HTMLInputElement.")}return nn.tryWrapperForImpl(en[mn]["form"])}get files(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get files' called on an object that is not a valid instance of HTMLInputElement.")}return nn.tryWrapperForImpl(en[mn]["files"])}set files(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set files' called on an object that is not a valid instance of HTMLInputElement.")}if(en===null||en===undefined){en=null}else{en=on.convert(Wt,en,{context:"Failed to set the 'files' property on 'HTMLInputElement': The provided value"})}tn[mn]["files"]=en}get formNoValidate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get formNoValidate' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{return en[mn]._reflectGetTheContentAttribute("formnovalidate")!==null}finally{sn(Wt)}}set formNoValidate(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set formNoValidate' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["boolean"](en,{context:"Failed to set the 'formNoValidate' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{if(en){nn[mn]._reflectSetTheContentAttribute("formnovalidate","")}else{nn[mn]._reflectDeleteTheContentAttribute("formnovalidate")}}finally{sn(Wt)}}get formTarget(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get formTarget' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("formtarget");return Wt===null?"":Wt}finally{sn(Wt)}}set formTarget(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set formTarget' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'formTarget' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("formtarget",en)}finally{sn(Wt)}}get indeterminate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get indeterminate' called on an object that is not a valid instance of HTMLInputElement.")}return en[mn]["indeterminate"]}set indeterminate(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set indeterminate' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["boolean"](en,{context:"Failed to set the 'indeterminate' property on 'HTMLInputElement': The provided value",globals:Wt});nn[mn]["indeterminate"]=en}get inputMode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get inputMode' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("inputmode");return Wt===null?"":Wt}finally{sn(Wt)}}set inputMode(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set inputMode' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'inputMode' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("inputmode",en)}finally{sn(Wt)}}get list(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get list' called on an object that is not a valid instance of HTMLInputElement.")}return nn.tryWrapperForImpl(en[mn]["list"])}get max(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get max' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("max");return Wt===null?"":Wt}finally{sn(Wt)}}set max(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set max' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'max' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("max",en)}finally{sn(Wt)}}get maxLength(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get maxLength' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{let Wt=en[mn]._reflectGetTheContentAttribute("maxlength");if(Wt!==null){Wt=cn(Wt);if(Wt!==null&&tn.long(Wt)===Wt){return Wt}}return-1}finally{sn(Wt)}}set maxLength(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set maxLength' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["long"](en,{context:"Failed to set the 'maxLength' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{if(en<0){throw dn(Wt,[`The negative value ${en} cannot be set for the maxLength property.`,"IndexSizeError"])}nn[mn]._reflectSetTheContentAttribute("maxlength",String(en))}finally{sn(Wt)}}get min(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get min' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("min");return Wt===null?"":Wt}finally{sn(Wt)}}set min(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set min' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'min' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("min",en)}finally{sn(Wt)}}get minLength(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get minLength' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{let Wt=en[mn]._reflectGetTheContentAttribute("minlength");if(Wt!==null){Wt=cn(Wt);if(Wt!==null&&tn.long(Wt)===Wt){return Wt}}return-1}finally{sn(Wt)}}set minLength(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set minLength' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["long"](en,{context:"Failed to set the 'minLength' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{if(en<0){throw dn(Wt,[`The negative value ${en} cannot be set for the minLength property.`,"IndexSizeError"])}nn[mn]._reflectSetTheContentAttribute("minlength",String(en))}finally{sn(Wt)}}get multiple(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get multiple' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{return en[mn]._reflectGetTheContentAttribute("multiple")!==null}finally{sn(Wt)}}set multiple(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set multiple' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["boolean"](en,{context:"Failed to set the 'multiple' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{if(en){nn[mn]._reflectSetTheContentAttribute("multiple","")}else{nn[mn]._reflectDeleteTheContentAttribute("multiple")}}finally{sn(Wt)}}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{sn(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("name",en)}finally{sn(Wt)}}get pattern(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get pattern' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("pattern");return Wt===null?"":Wt}finally{sn(Wt)}}set pattern(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set pattern' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'pattern' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("pattern",en)}finally{sn(Wt)}}get placeholder(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get placeholder' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("placeholder");return Wt===null?"":Wt}finally{sn(Wt)}}set placeholder(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set placeholder' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'placeholder' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("placeholder",en)}finally{sn(Wt)}}get readOnly(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get readOnly' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{return en[mn]._reflectGetTheContentAttribute("readonly")!==null}finally{sn(Wt)}}set readOnly(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set readOnly' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["boolean"](en,{context:"Failed to set the 'readOnly' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{if(en){nn[mn]._reflectSetTheContentAttribute("readonly","")}else{nn[mn]._reflectDeleteTheContentAttribute("readonly")}}finally{sn(Wt)}}get required(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get required' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{return en[mn]._reflectGetTheContentAttribute("required")!==null}finally{sn(Wt)}}set required(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set required' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["boolean"](en,{context:"Failed to set the 'required' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{if(en){nn[mn]._reflectSetTheContentAttribute("required","")}else{nn[mn]._reflectDeleteTheContentAttribute("required")}}finally{sn(Wt)}}get size(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get size' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{let Wt=en[mn]._reflectGetTheContentAttribute("size");if(Wt!==null){Wt=cn(Wt);if(Wt!==null&&Wt>=1&&Wt<=2147483647){return Wt}}return 20}finally{sn(Wt)}}set size(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set size' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'size' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{if(en===0){throw dn(Wt,[`The value ${en} cannot be set for the size property.`,"IndexSizeError"])}const Pt=en<=2147483647&&en>=1?en:20;nn[mn]._reflectSetTheContentAttribute("size",String(Pt))}finally{sn(Wt)}}get src(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get src' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("src");if(Wt===null){return""}const Pt=un(Wt,en[mn]._ownerDocument);if(Pt!==null){return pn(Pt)}return tn.USVString(Wt)}finally{sn(Wt)}}set src(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set src' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["USVString"](en,{context:"Failed to set the 'src' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("src",en)}finally{sn(Wt)}}get step(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get step' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("step");return Wt===null?"":Wt}finally{sn(Wt)}}set step(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set step' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'step' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("step",en)}finally{sn(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{return en[mn]["type"]}finally{sn(Wt)}}set type(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set type' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'type' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]["type"]=en}finally{sn(Wt)}}get defaultValue(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get defaultValue' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("value");return Wt===null?"":Wt}finally{sn(Wt)}}set defaultValue(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set defaultValue' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'defaultValue' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("value",en)}finally{sn(Wt)}}get value(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get value' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{return en[mn]["value"]}finally{sn(Wt)}}set value(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set value' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'value' property on 'HTMLInputElement': The provided value",globals:Wt,treatNullAsEmptyString:true});In(Wt);try{nn[mn]["value"]=en}finally{sn(Wt)}}get valueAsDate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get valueAsDate' called on an object that is not a valid instance of HTMLInputElement.")}return en[mn]["valueAsDate"]}set valueAsDate(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set valueAsDate' called on an object that is not a valid instance of HTMLInputElement.")}if(en===null||en===undefined){en=null}else{en=tn["object"](en,{context:"Failed to set the 'valueAsDate' property on 'HTMLInputElement': The provided value",globals:Wt})}nn[mn]["valueAsDate"]=en}get valueAsNumber(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get valueAsNumber' called on an object that is not a valid instance of HTMLInputElement.")}return en[mn]["valueAsNumber"]}set valueAsNumber(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set valueAsNumber' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["unrestricted double"](en,{context:"Failed to set the 'valueAsNumber' property on 'HTMLInputElement': The provided value",globals:Wt});nn[mn]["valueAsNumber"]=en}get willValidate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get willValidate' called on an object that is not a valid instance of HTMLInputElement.")}return en[mn]["willValidate"]}get validity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get validity' called on an object that is not a valid instance of HTMLInputElement.")}return nn.tryWrapperForImpl(en[mn]["validity"])}get validationMessage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get validationMessage' called on an object that is not a valid instance of HTMLInputElement.")}return en[mn]["validationMessage"]}get labels(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get labels' called on an object that is not a valid instance of HTMLInputElement.")}return nn.tryWrapperForImpl(en[mn]["labels"])}get selectionStart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get selectionStart' called on an object that is not a valid instance of HTMLInputElement.")}return en[mn]["selectionStart"]}set selectionStart(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set selectionStart' called on an object that is not a valid instance of HTMLInputElement.")}if(en===null||en===undefined){en=null}else{en=tn["unsigned long"](en,{context:"Failed to set the 'selectionStart' property on 'HTMLInputElement': The provided value",globals:Wt})}nn[mn]["selectionStart"]=en}get selectionEnd(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get selectionEnd' called on an object that is not a valid instance of HTMLInputElement.")}return en[mn]["selectionEnd"]}set selectionEnd(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set selectionEnd' called on an object that is not a valid instance of HTMLInputElement.")}if(en===null||en===undefined){en=null}else{en=tn["unsigned long"](en,{context:"Failed to set the 'selectionEnd' property on 'HTMLInputElement': The provided value",globals:Wt})}nn[mn]["selectionEnd"]=en}get selectionDirection(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get selectionDirection' called on an object that is not a valid instance of HTMLInputElement.")}return en[mn]["selectionDirection"]}set selectionDirection(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set selectionDirection' called on an object that is not a valid instance of HTMLInputElement.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'selectionDirection' property on 'HTMLInputElement': The provided value",globals:Wt})}nn[mn]["selectionDirection"]=en}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{sn(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("align",en)}finally{sn(Wt)}}get useMap(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get useMap' called on an object that is not a valid instance of HTMLInputElement.")}In(Wt);try{const Wt=en[mn]._reflectGetTheContentAttribute("usemap");return Wt===null?"":Wt}finally{sn(Wt)}}set useMap(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set useMap' called on an object that is not a valid instance of HTMLInputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'useMap' property on 'HTMLInputElement': The provided value",globals:Wt});In(Wt);try{nn[mn]._reflectSetTheContentAttribute("usemap",en)}finally{sn(Wt)}}}Object.defineProperties(HTMLInputElement.prototype,{stepUp:{enumerable:true},stepDown:{enumerable:true},checkValidity:{enumerable:true},reportValidity:{enumerable:true},setCustomValidity:{enumerable:true},select:{enumerable:true},setRangeText:{enumerable:true},setSelectionRange:{enumerable:true},accept:{enumerable:true},alt:{enumerable:true},autocomplete:{enumerable:true},autofocus:{enumerable:true},defaultChecked:{enumerable:true},checked:{enumerable:true},dirName:{enumerable:true},disabled:{enumerable:true},form:{enumerable:true},files:{enumerable:true},formNoValidate:{enumerable:true},formTarget:{enumerable:true},indeterminate:{enumerable:true},inputMode:{enumerable:true},list:{enumerable:true},max:{enumerable:true},maxLength:{enumerable:true},min:{enumerable:true},minLength:{enumerable:true},multiple:{enumerable:true},name:{enumerable:true},pattern:{enumerable:true},placeholder:{enumerable:true},readOnly:{enumerable:true},required:{enumerable:true},size:{enumerable:true},src:{enumerable:true},step:{enumerable:true},type:{enumerable:true},defaultValue:{enumerable:true},value:{enumerable:true},valueAsDate:{enumerable:true},valueAsNumber:{enumerable:true},willValidate:{enumerable:true},validity:{enumerable:true},validationMessage:{enumerable:true},labels:{enumerable:true},selectionStart:{enumerable:true},selectionEnd:{enumerable:true},selectionDirection:{enumerable:true},align:{enumerable:true},useMap:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLInputElement",configurable:true}});bn[hn]=HTMLInputElement;Object.defineProperty(Wt,hn,{configurable:true,writable:true,value:HTMLInputElement})};const An=en(141)},80225:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(97205).parseInteger;const In=en(8348).ceReactionsPreSteps;const sn=en(8348).ceReactionsPostSteps;const on=nn.implSymbol;const cn=nn.ctorRegistrySymbol;const dn=en(48708);const un="HTMLLIElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,on)&&Wt[on]instanceof mn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof mn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLLIElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[cn]["HTMLLIElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{dn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,on,{value:new mn.implementation(en,tn,an),configurable:true});Wt[on][nn.wrapperSymbol]=Wt;if(mn.init){mn.init(Wt[on])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,on,{value:Object.create(mn.implementation.prototype),configurable:true});tn[on][nn.wrapperSymbol]=tn;if(mn.init){mn.init(tn[on])}return tn[on]};const pn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>pn.has(Wt)))){return}const cn=nn.initCtorRegistry(Wt);class HTMLLIElement extends Wt.HTMLElement{constructor(){return an(Wt,un,new.target)}get value(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get value' called on an object that is not a valid instance of HTMLLIElement.")}In(Wt);try{let Wt=en[on]._reflectGetTheContentAttribute("value");if(Wt!==null){Wt=rn(Wt);if(Wt!==null&&tn.long(Wt)===Wt){return Wt}}return 0}finally{sn(Wt)}}set value(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set value' called on an object that is not a valid instance of HTMLLIElement.")}en=tn["long"](en,{context:"Failed to set the 'value' property on 'HTMLLIElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("value",String(en))}finally{sn(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLLIElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("type");return Wt===null?"":Wt}finally{sn(Wt)}}set type(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set type' called on an object that is not a valid instance of HTMLLIElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'type' property on 'HTMLLIElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("type",en)}finally{sn(Wt)}}}Object.defineProperties(HTMLLIElement.prototype,{value:{enumerable:true},type:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLLIElement",configurable:true}});cn[un]=HTMLLIElement;Object.defineProperty(Wt,un,{configurable:true,writable:true,value:HTMLLIElement})};const mn=en(2804)},30124:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLLabelElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLLabelElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLLabelElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLLabelElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get form(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get form' called on an object that is not a valid instance of HTMLLabelElement.")}return nn.tryWrapperForImpl(en[sn]["form"])}get htmlFor(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get htmlFor' called on an object that is not a valid instance of HTMLLabelElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("for");return Wt===null?"":Wt}finally{In(Wt)}}set htmlFor(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set htmlFor' called on an object that is not a valid instance of HTMLLabelElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'htmlFor' property on 'HTMLLabelElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("for",en)}finally{In(Wt)}}get control(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get control' called on an object that is not a valid instance of HTMLLabelElement.")}return nn.tryWrapperForImpl(en[sn]["control"])}}Object.defineProperties(HTMLLabelElement.prototype,{form:{enumerable:true},htmlFor:{enumerable:true},control:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLLabelElement",configurable:true}});on[dn]=HTMLLabelElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLLabelElement})};const pn=en(26159)},49299:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLLegendElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLLegendElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLLegendElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLLegendElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get form(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get form' called on an object that is not a valid instance of HTMLLegendElement.")}return nn.tryWrapperForImpl(en[sn]["form"])}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLLegendElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{In(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLLegendElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLLegendElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("align",en)}finally{In(Wt)}}}Object.defineProperties(HTMLLegendElement.prototype,{form:{enumerable:true},align:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLLegendElement",configurable:true}});on[dn]=HTMLLegendElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLLegendElement})};const pn=en(98778)},62928:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(30962).parseURLToResultingURLRecord;const In=en(78012).serializeURL;const sn=en(8348).ceReactionsPreSteps;const on=en(8348).ceReactionsPostSteps;const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(48708);const pn="HTMLLinkElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLLinkElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLLinkElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLLinkElement extends Wt.HTMLElement{constructor(){return an(Wt,pn,new.target)}get href(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get href' called on an object that is not a valid instance of HTMLLinkElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("href");if(Wt===null){return""}const Pt=rn(Wt,en[cn]._ownerDocument);if(Pt!==null){return In(Pt)}return tn.USVString(Wt)}finally{on(Wt)}}set href(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set href' called on an object that is not a valid instance of HTMLLinkElement.")}en=tn["USVString"](en,{context:"Failed to set the 'href' property on 'HTMLLinkElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("href",en)}finally{on(Wt)}}get crossOrigin(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get crossOrigin' called on an object that is not a valid instance of HTMLLinkElement.")}sn(Wt);try{return en[cn]._reflectGetTheContentAttribute("crossorigin")}finally{on(Wt)}}set crossOrigin(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set crossOrigin' called on an object that is not a valid instance of HTMLLinkElement.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'crossOrigin' property on 'HTMLLinkElement': The provided value",globals:Wt})}sn(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("crossorigin")}else{nn[cn]._reflectSetTheContentAttribute("crossorigin",en)}}finally{on(Wt)}}get rel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rel' called on an object that is not a valid instance of HTMLLinkElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("rel");return Wt===null?"":Wt}finally{on(Wt)}}set rel(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set rel' called on an object that is not a valid instance of HTMLLinkElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'rel' property on 'HTMLLinkElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("rel",en)}finally{on(Wt)}}get relList(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get relList' called on an object that is not a valid instance of HTMLLinkElement.")}return nn.getSameObject(this,"relList",(()=>nn.tryWrapperForImpl(en[cn]["relList"])))}set relList(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set relList' called on an object that is not a valid instance of HTMLLinkElement.")}const an=tn["relList"];if(!nn.isObject(an)){throw new Wt.TypeError("Property 'relList' is not an object")}Reflect.set(an,"value",en)}get media(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get media' called on an object that is not a valid instance of HTMLLinkElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("media");return Wt===null?"":Wt}finally{on(Wt)}}set media(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set media' called on an object that is not a valid instance of HTMLLinkElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'media' property on 'HTMLLinkElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("media",en)}finally{on(Wt)}}get hreflang(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hreflang' called on an object that is not a valid instance of HTMLLinkElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("hreflang");return Wt===null?"":Wt}finally{on(Wt)}}set hreflang(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set hreflang' called on an object that is not a valid instance of HTMLLinkElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'hreflang' property on 'HTMLLinkElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("hreflang",en)}finally{on(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLLinkElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("type");return Wt===null?"":Wt}finally{on(Wt)}}set type(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set type' called on an object that is not a valid instance of HTMLLinkElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'type' property on 'HTMLLinkElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("type",en)}finally{on(Wt)}}get charset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get charset' called on an object that is not a valid instance of HTMLLinkElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("charset");return Wt===null?"":Wt}finally{on(Wt)}}set charset(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set charset' called on an object that is not a valid instance of HTMLLinkElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'charset' property on 'HTMLLinkElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("charset",en)}finally{on(Wt)}}get rev(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rev' called on an object that is not a valid instance of HTMLLinkElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("rev");return Wt===null?"":Wt}finally{on(Wt)}}set rev(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set rev' called on an object that is not a valid instance of HTMLLinkElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'rev' property on 'HTMLLinkElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("rev",en)}finally{on(Wt)}}get target(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get target' called on an object that is not a valid instance of HTMLLinkElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("target");return Wt===null?"":Wt}finally{on(Wt)}}set target(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set target' called on an object that is not a valid instance of HTMLLinkElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'target' property on 'HTMLLinkElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("target",en)}finally{on(Wt)}}get sheet(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get sheet' called on an object that is not a valid instance of HTMLLinkElement.")}return nn.tryWrapperForImpl(en[cn]["sheet"])}}Object.defineProperties(HTMLLinkElement.prototype,{href:{enumerable:true},crossOrigin:{enumerable:true},rel:{enumerable:true},relList:{enumerable:true},media:{enumerable:true},hreflang:{enumerable:true},type:{enumerable:true},charset:{enumerable:true},rev:{enumerable:true},target:{enumerable:true},sheet:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLLinkElement",configurable:true}});dn[pn]=HTMLLinkElement;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLLinkElement})};const bn=en(7443)},11416:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLMapElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLMapElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLMapElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLMapElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLMapElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{In(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLMapElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLMapElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("name",en)}finally{In(Wt)}}get areas(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get areas' called on an object that is not a valid instance of HTMLMapElement.")}return nn.getSameObject(this,"areas",(()=>nn.tryWrapperForImpl(en[sn]["areas"])))}}Object.defineProperties(HTMLMapElement.prototype,{name:{enumerable:true},areas:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLMapElement",configurable:true}});on[dn]=HTMLMapElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLMapElement})};const pn=en(62859)},29062:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=en(97205).parseNonNegativeInteger;const on=nn.implSymbol;const cn=nn.ctorRegistrySymbol;const dn=en(48708);const un="HTMLMarqueeElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,on)&&Wt[on]instanceof mn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof mn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLMarqueeElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[cn]["HTMLMarqueeElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{dn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,on,{value:new mn.implementation(en,tn,an),configurable:true});Wt[on][nn.wrapperSymbol]=Wt;if(mn.init){mn.init(Wt[on])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,on,{value:Object.create(mn.implementation.prototype),configurable:true});tn[on][nn.wrapperSymbol]=tn;if(mn.init){mn.init(tn[on])}return tn[on]};const pn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>pn.has(Wt)))){return}const cn=nn.initCtorRegistry(Wt);class HTMLMarqueeElement extends Wt.HTMLElement{constructor(){return an(Wt,un,new.target)}get behavior(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get behavior' called on an object that is not a valid instance of HTMLMarqueeElement.")}rn(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("behavior");return Wt===null?"":Wt}finally{In(Wt)}}set behavior(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set behavior' called on an object that is not a valid instance of HTMLMarqueeElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'behavior' property on 'HTMLMarqueeElement': The provided value",globals:Wt});rn(Wt);try{nn[on]._reflectSetTheContentAttribute("behavior",en)}finally{In(Wt)}}get bgColor(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get bgColor' called on an object that is not a valid instance of HTMLMarqueeElement.")}rn(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("bgcolor");return Wt===null?"":Wt}finally{In(Wt)}}set bgColor(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set bgColor' called on an object that is not a valid instance of HTMLMarqueeElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'bgColor' property on 'HTMLMarqueeElement': The provided value",globals:Wt});rn(Wt);try{nn[on]._reflectSetTheContentAttribute("bgcolor",en)}finally{In(Wt)}}get direction(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get direction' called on an object that is not a valid instance of HTMLMarqueeElement.")}rn(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("direction");return Wt===null?"":Wt}finally{In(Wt)}}set direction(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set direction' called on an object that is not a valid instance of HTMLMarqueeElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'direction' property on 'HTMLMarqueeElement': The provided value",globals:Wt});rn(Wt);try{nn[on]._reflectSetTheContentAttribute("direction",en)}finally{In(Wt)}}get height(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get height' called on an object that is not a valid instance of HTMLMarqueeElement.")}rn(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("height");return Wt===null?"":Wt}finally{In(Wt)}}set height(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set height' called on an object that is not a valid instance of HTMLMarqueeElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'height' property on 'HTMLMarqueeElement': The provided value",globals:Wt});rn(Wt);try{nn[on]._reflectSetTheContentAttribute("height",en)}finally{In(Wt)}}get hspace(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hspace' called on an object that is not a valid instance of HTMLMarqueeElement.")}rn(Wt);try{let Wt=en[on]._reflectGetTheContentAttribute("hspace");if(Wt!==null){Wt=sn(Wt);if(Wt!==null&&Wt>=0&&Wt<=2147483647){return Wt}}return 0}finally{In(Wt)}}set hspace(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set hspace' called on an object that is not a valid instance of HTMLMarqueeElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'hspace' property on 'HTMLMarqueeElement': The provided value",globals:Wt});rn(Wt);try{const Wt=en<=2147483647&&en>=0?en:0;nn[on]._reflectSetTheContentAttribute("hspace",String(Wt))}finally{In(Wt)}}get scrollAmount(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get scrollAmount' called on an object that is not a valid instance of HTMLMarqueeElement.")}rn(Wt);try{let Wt=en[on]._reflectGetTheContentAttribute("scrollamount");if(Wt!==null){Wt=sn(Wt);if(Wt!==null&&Wt>=0&&Wt<=2147483647){return Wt}}return 0}finally{In(Wt)}}set scrollAmount(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set scrollAmount' called on an object that is not a valid instance of HTMLMarqueeElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'scrollAmount' property on 'HTMLMarqueeElement': The provided value",globals:Wt});rn(Wt);try{const Wt=en<=2147483647&&en>=0?en:0;nn[on]._reflectSetTheContentAttribute("scrollamount",String(Wt))}finally{In(Wt)}}get scrollDelay(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get scrollDelay' called on an object that is not a valid instance of HTMLMarqueeElement.")}rn(Wt);try{let Wt=en[on]._reflectGetTheContentAttribute("scrolldelay");if(Wt!==null){Wt=sn(Wt);if(Wt!==null&&Wt>=0&&Wt<=2147483647){return Wt}}return 0}finally{In(Wt)}}set scrollDelay(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set scrollDelay' called on an object that is not a valid instance of HTMLMarqueeElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'scrollDelay' property on 'HTMLMarqueeElement': The provided value",globals:Wt});rn(Wt);try{const Wt=en<=2147483647&&en>=0?en:0;nn[on]._reflectSetTheContentAttribute("scrolldelay",String(Wt))}finally{In(Wt)}}get trueSpeed(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get trueSpeed' called on an object that is not a valid instance of HTMLMarqueeElement.")}rn(Wt);try{return en[on]._reflectGetTheContentAttribute("truespeed")!==null}finally{In(Wt)}}set trueSpeed(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set trueSpeed' called on an object that is not a valid instance of HTMLMarqueeElement.")}en=tn["boolean"](en,{context:"Failed to set the 'trueSpeed' property on 'HTMLMarqueeElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[on]._reflectSetTheContentAttribute("truespeed","")}else{nn[on]._reflectDeleteTheContentAttribute("truespeed")}}finally{In(Wt)}}get vspace(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get vspace' called on an object that is not a valid instance of HTMLMarqueeElement.")}rn(Wt);try{let Wt=en[on]._reflectGetTheContentAttribute("vspace");if(Wt!==null){Wt=sn(Wt);if(Wt!==null&&Wt>=0&&Wt<=2147483647){return Wt}}return 0}finally{In(Wt)}}set vspace(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set vspace' called on an object that is not a valid instance of HTMLMarqueeElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'vspace' property on 'HTMLMarqueeElement': The provided value",globals:Wt});rn(Wt);try{const Wt=en<=2147483647&&en>=0?en:0;nn[on]._reflectSetTheContentAttribute("vspace",String(Wt))}finally{In(Wt)}}get width(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get width' called on an object that is not a valid instance of HTMLMarqueeElement.")}rn(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("width");return Wt===null?"":Wt}finally{In(Wt)}}set width(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set width' called on an object that is not a valid instance of HTMLMarqueeElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'width' property on 'HTMLMarqueeElement': The provided value",globals:Wt});rn(Wt);try{nn[on]._reflectSetTheContentAttribute("width",en)}finally{In(Wt)}}}Object.defineProperties(HTMLMarqueeElement.prototype,{behavior:{enumerable:true},bgColor:{enumerable:true},direction:{enumerable:true},height:{enumerable:true},hspace:{enumerable:true},scrollAmount:{enumerable:true},scrollDelay:{enumerable:true},trueSpeed:{enumerable:true},vspace:{enumerable:true},width:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLMarqueeElement",configurable:true}});cn[un]=HTMLMarqueeElement;Object.defineProperty(Wt,un,{configurable:true,writable:true,value:HTMLMarqueeElement})};const mn=en(90157)},1366:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(27655);const rn=en(30962).parseURLToResultingURLRecord;const In=en(78012).serializeURL;const sn=en(8348).ceReactionsPreSteps;const on=en(8348).ceReactionsPostSteps;const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(48708);const pn="HTMLMediaElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLMediaElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLMediaElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLMediaElement extends Wt.HTMLElement{constructor(){throw new Wt.TypeError("Illegal constructor")}load(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'load' called on an object that is not a valid instance of HTMLMediaElement.")}return en[cn].load()}canPlayType(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'canPlayType' called on an object that is not a valid instance of HTMLMediaElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'canPlayType' on 'HTMLMediaElement': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'canPlayType' on 'HTMLMediaElement': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[cn].canPlayType(...rn))}play(){try{const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'play' called on an object that is not a valid instance of HTMLMediaElement.")}return nn.tryWrapperForImpl(en[cn].play())}catch(Pt){return Wt.Promise.reject(Pt)}}pause(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'pause' called on an object that is not a valid instance of HTMLMediaElement.")}return en[cn].pause()}addTextTrack(en){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'addTextTrack' called on an object that is not a valid instance of HTMLMediaElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'addTextTrack' on 'HTMLMediaElement': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'addTextTrack' on 'HTMLMediaElement': parameter 1"});In.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to execute 'addTextTrack' on 'HTMLMediaElement': parameter 2",globals:Wt})}else{Pt=""}In.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to execute 'addTextTrack' on 'HTMLMediaElement': parameter 3",globals:Wt})}else{Pt=""}In.push(Pt)}return nn.tryWrapperForImpl(rn[cn].addTextTrack(...In))}get src(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get src' called on an object that is not a valid instance of HTMLMediaElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("src");if(Wt===null){return""}const Pt=rn(Wt,en[cn]._ownerDocument);if(Pt!==null){return In(Pt)}return tn.USVString(Wt)}finally{on(Wt)}}set src(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set src' called on an object that is not a valid instance of HTMLMediaElement.")}en=tn["USVString"](en,{context:"Failed to set the 'src' property on 'HTMLMediaElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("src",en)}finally{on(Wt)}}get currentSrc(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get currentSrc' called on an object that is not a valid instance of HTMLMediaElement.")}return en[cn]["currentSrc"]}get crossOrigin(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get crossOrigin' called on an object that is not a valid instance of HTMLMediaElement.")}sn(Wt);try{return en[cn]._reflectGetTheContentAttribute("crossorigin")}finally{on(Wt)}}set crossOrigin(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set crossOrigin' called on an object that is not a valid instance of HTMLMediaElement.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'crossOrigin' property on 'HTMLMediaElement': The provided value",globals:Wt})}sn(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("crossorigin")}else{nn[cn]._reflectSetTheContentAttribute("crossorigin",en)}}finally{on(Wt)}}get networkState(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get networkState' called on an object that is not a valid instance of HTMLMediaElement.")}return en[cn]["networkState"]}get preload(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get preload' called on an object that is not a valid instance of HTMLMediaElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("preload");return Wt===null?"":Wt}finally{on(Wt)}}set preload(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set preload' called on an object that is not a valid instance of HTMLMediaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'preload' property on 'HTMLMediaElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("preload",en)}finally{on(Wt)}}get buffered(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get buffered' called on an object that is not a valid instance of HTMLMediaElement.")}return nn.tryWrapperForImpl(en[cn]["buffered"])}get readyState(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get readyState' called on an object that is not a valid instance of HTMLMediaElement.")}return en[cn]["readyState"]}get seeking(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get seeking' called on an object that is not a valid instance of HTMLMediaElement.")}return en[cn]["seeking"]}get currentTime(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get currentTime' called on an object that is not a valid instance of HTMLMediaElement.")}return en[cn]["currentTime"]}set currentTime(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set currentTime' called on an object that is not a valid instance of HTMLMediaElement.")}en=tn["double"](en,{context:"Failed to set the 'currentTime' property on 'HTMLMediaElement': The provided value",globals:Wt});nn[cn]["currentTime"]=en}get duration(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get duration' called on an object that is not a valid instance of HTMLMediaElement.")}return en[cn]["duration"]}get paused(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get paused' called on an object that is not a valid instance of HTMLMediaElement.")}return en[cn]["paused"]}get defaultPlaybackRate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get defaultPlaybackRate' called on an object that is not a valid instance of HTMLMediaElement.")}return en[cn]["defaultPlaybackRate"]}set defaultPlaybackRate(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set defaultPlaybackRate' called on an object that is not a valid instance of HTMLMediaElement.")}en=tn["double"](en,{context:"Failed to set the 'defaultPlaybackRate' property on 'HTMLMediaElement': The provided value",globals:Wt});nn[cn]["defaultPlaybackRate"]=en}get playbackRate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get playbackRate' called on an object that is not a valid instance of HTMLMediaElement.")}return en[cn]["playbackRate"]}set playbackRate(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set playbackRate' called on an object that is not a valid instance of HTMLMediaElement.")}en=tn["double"](en,{context:"Failed to set the 'playbackRate' property on 'HTMLMediaElement': The provided value",globals:Wt});nn[cn]["playbackRate"]=en}get played(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get played' called on an object that is not a valid instance of HTMLMediaElement.")}return nn.tryWrapperForImpl(en[cn]["played"])}get seekable(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get seekable' called on an object that is not a valid instance of HTMLMediaElement.")}return nn.tryWrapperForImpl(en[cn]["seekable"])}get ended(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ended' called on an object that is not a valid instance of HTMLMediaElement.")}return en[cn]["ended"]}get autoplay(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get autoplay' called on an object that is not a valid instance of HTMLMediaElement.")}sn(Wt);try{return en[cn]._reflectGetTheContentAttribute("autoplay")!==null}finally{on(Wt)}}set autoplay(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set autoplay' called on an object that is not a valid instance of HTMLMediaElement.")}en=tn["boolean"](en,{context:"Failed to set the 'autoplay' property on 'HTMLMediaElement': The provided value",globals:Wt});sn(Wt);try{if(en){nn[cn]._reflectSetTheContentAttribute("autoplay","")}else{nn[cn]._reflectDeleteTheContentAttribute("autoplay")}}finally{on(Wt)}}get loop(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get loop' called on an object that is not a valid instance of HTMLMediaElement.")}sn(Wt);try{return en[cn]._reflectGetTheContentAttribute("loop")!==null}finally{on(Wt)}}set loop(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set loop' called on an object that is not a valid instance of HTMLMediaElement.")}en=tn["boolean"](en,{context:"Failed to set the 'loop' property on 'HTMLMediaElement': The provided value",globals:Wt});sn(Wt);try{if(en){nn[cn]._reflectSetTheContentAttribute("loop","")}else{nn[cn]._reflectDeleteTheContentAttribute("loop")}}finally{on(Wt)}}get controls(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get controls' called on an object that is not a valid instance of HTMLMediaElement.")}sn(Wt);try{return en[cn]._reflectGetTheContentAttribute("controls")!==null}finally{on(Wt)}}set controls(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set controls' called on an object that is not a valid instance of HTMLMediaElement.")}en=tn["boolean"](en,{context:"Failed to set the 'controls' property on 'HTMLMediaElement': The provided value",globals:Wt});sn(Wt);try{if(en){nn[cn]._reflectSetTheContentAttribute("controls","")}else{nn[cn]._reflectDeleteTheContentAttribute("controls")}}finally{on(Wt)}}get volume(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get volume' called on an object that is not a valid instance of HTMLMediaElement.")}return en[cn]["volume"]}set volume(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set volume' called on an object that is not a valid instance of HTMLMediaElement.")}en=tn["double"](en,{context:"Failed to set the 'volume' property on 'HTMLMediaElement': The provided value",globals:Wt});nn[cn]["volume"]=en}get muted(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get muted' called on an object that is not a valid instance of HTMLMediaElement.")}return en[cn]["muted"]}set muted(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set muted' called on an object that is not a valid instance of HTMLMediaElement.")}en=tn["boolean"](en,{context:"Failed to set the 'muted' property on 'HTMLMediaElement': The provided value",globals:Wt});nn[cn]["muted"]=en}get defaultMuted(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get defaultMuted' called on an object that is not a valid instance of HTMLMediaElement.")}sn(Wt);try{return en[cn]._reflectGetTheContentAttribute("muted")!==null}finally{on(Wt)}}set defaultMuted(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set defaultMuted' called on an object that is not a valid instance of HTMLMediaElement.")}en=tn["boolean"](en,{context:"Failed to set the 'defaultMuted' property on 'HTMLMediaElement': The provided value",globals:Wt});sn(Wt);try{if(en){nn[cn]._reflectSetTheContentAttribute("muted","")}else{nn[cn]._reflectDeleteTheContentAttribute("muted")}}finally{on(Wt)}}get audioTracks(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get audioTracks' called on an object that is not a valid instance of HTMLMediaElement.")}return nn.getSameObject(this,"audioTracks",(()=>nn.tryWrapperForImpl(en[cn]["audioTracks"])))}get videoTracks(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get videoTracks' called on an object that is not a valid instance of HTMLMediaElement.")}return nn.getSameObject(this,"videoTracks",(()=>nn.tryWrapperForImpl(en[cn]["videoTracks"])))}get textTracks(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get textTracks' called on an object that is not a valid instance of HTMLMediaElement.")}return nn.getSameObject(this,"textTracks",(()=>nn.tryWrapperForImpl(en[cn]["textTracks"])))}}Object.defineProperties(HTMLMediaElement.prototype,{load:{enumerable:true},canPlayType:{enumerable:true},play:{enumerable:true},pause:{enumerable:true},addTextTrack:{enumerable:true},src:{enumerable:true},currentSrc:{enumerable:true},crossOrigin:{enumerable:true},networkState:{enumerable:true},preload:{enumerable:true},buffered:{enumerable:true},readyState:{enumerable:true},seeking:{enumerable:true},currentTime:{enumerable:true},duration:{enumerable:true},paused:{enumerable:true},defaultPlaybackRate:{enumerable:true},playbackRate:{enumerable:true},played:{enumerable:true},seekable:{enumerable:true},ended:{enumerable:true},autoplay:{enumerable:true},loop:{enumerable:true},controls:{enumerable:true},volume:{enumerable:true},muted:{enumerable:true},defaultMuted:{enumerable:true},audioTracks:{enumerable:true},videoTracks:{enumerable:true},textTracks:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLMediaElement",configurable:true},NETWORK_EMPTY:{value:0,enumerable:true},NETWORK_IDLE:{value:1,enumerable:true},NETWORK_LOADING:{value:2,enumerable:true},NETWORK_NO_SOURCE:{value:3,enumerable:true},HAVE_NOTHING:{value:0,enumerable:true},HAVE_METADATA:{value:1,enumerable:true},HAVE_CURRENT_DATA:{value:2,enumerable:true},HAVE_FUTURE_DATA:{value:3,enumerable:true},HAVE_ENOUGH_DATA:{value:4,enumerable:true}});Object.defineProperties(HTMLMediaElement,{NETWORK_EMPTY:{value:0,enumerable:true},NETWORK_IDLE:{value:1,enumerable:true},NETWORK_LOADING:{value:2,enumerable:true},NETWORK_NO_SOURCE:{value:3,enumerable:true},HAVE_NOTHING:{value:0,enumerable:true},HAVE_METADATA:{value:1,enumerable:true},HAVE_CURRENT_DATA:{value:2,enumerable:true},HAVE_FUTURE_DATA:{value:3,enumerable:true},HAVE_ENOUGH_DATA:{value:4,enumerable:true}});dn[pn]=HTMLMediaElement;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLMediaElement})};const bn=en(4229)},59877:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLMenuElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLMenuElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLMenuElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLMenuElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get compact(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get compact' called on an object that is not a valid instance of HTMLMenuElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("compact")!==null}finally{In(Wt)}}set compact(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set compact' called on an object that is not a valid instance of HTMLMenuElement.")}en=tn["boolean"](en,{context:"Failed to set the 'compact' property on 'HTMLMenuElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("compact","")}else{nn[sn]._reflectDeleteTheContentAttribute("compact")}}finally{In(Wt)}}}Object.defineProperties(HTMLMenuElement.prototype,{compact:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLMenuElement",configurable:true}});on[dn]=HTMLMenuElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLMenuElement})};const pn=en(65088)},62087:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLMetaElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLMetaElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLMetaElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLMetaElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLMetaElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{In(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLMetaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLMetaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("name",en)}finally{In(Wt)}}get httpEquiv(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get httpEquiv' called on an object that is not a valid instance of HTMLMetaElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("http-equiv");return Wt===null?"":Wt}finally{In(Wt)}}set httpEquiv(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set httpEquiv' called on an object that is not a valid instance of HTMLMetaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'httpEquiv' property on 'HTMLMetaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("http-equiv",en)}finally{In(Wt)}}get content(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get content' called on an object that is not a valid instance of HTMLMetaElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("content");return Wt===null?"":Wt}finally{In(Wt)}}set content(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set content' called on an object that is not a valid instance of HTMLMetaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'content' property on 'HTMLMetaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("content",en)}finally{In(Wt)}}get scheme(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get scheme' called on an object that is not a valid instance of HTMLMetaElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("scheme");return Wt===null?"":Wt}finally{In(Wt)}}set scheme(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set scheme' called on an object that is not a valid instance of HTMLMetaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'scheme' property on 'HTMLMetaElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("scheme",en)}finally{In(Wt)}}}Object.defineProperties(HTMLMetaElement.prototype,{name:{enumerable:true},httpEquiv:{enumerable:true},content:{enumerable:true},scheme:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLMetaElement",configurable:true}});on[dn]=HTMLMetaElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLMetaElement})};const pn=en(62406)},8805:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLMeterElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLMeterElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLMeterElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLMeterElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get value(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get value' called on an object that is not a valid instance of HTMLMeterElement.")}rn(Wt);try{return en[sn]["value"]}finally{In(Wt)}}set value(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set value' called on an object that is not a valid instance of HTMLMeterElement.")}en=tn["double"](en,{context:"Failed to set the 'value' property on 'HTMLMeterElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["value"]=en}finally{In(Wt)}}get min(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get min' called on an object that is not a valid instance of HTMLMeterElement.")}rn(Wt);try{return en[sn]["min"]}finally{In(Wt)}}set min(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set min' called on an object that is not a valid instance of HTMLMeterElement.")}en=tn["double"](en,{context:"Failed to set the 'min' property on 'HTMLMeterElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["min"]=en}finally{In(Wt)}}get max(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get max' called on an object that is not a valid instance of HTMLMeterElement.")}rn(Wt);try{return en[sn]["max"]}finally{In(Wt)}}set max(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set max' called on an object that is not a valid instance of HTMLMeterElement.")}en=tn["double"](en,{context:"Failed to set the 'max' property on 'HTMLMeterElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["max"]=en}finally{In(Wt)}}get low(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get low' called on an object that is not a valid instance of HTMLMeterElement.")}rn(Wt);try{return en[sn]["low"]}finally{In(Wt)}}set low(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set low' called on an object that is not a valid instance of HTMLMeterElement.")}en=tn["double"](en,{context:"Failed to set the 'low' property on 'HTMLMeterElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["low"]=en}finally{In(Wt)}}get high(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get high' called on an object that is not a valid instance of HTMLMeterElement.")}rn(Wt);try{return en[sn]["high"]}finally{In(Wt)}}set high(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set high' called on an object that is not a valid instance of HTMLMeterElement.")}en=tn["double"](en,{context:"Failed to set the 'high' property on 'HTMLMeterElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["high"]=en}finally{In(Wt)}}get optimum(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get optimum' called on an object that is not a valid instance of HTMLMeterElement.")}rn(Wt);try{return en[sn]["optimum"]}finally{In(Wt)}}set optimum(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set optimum' called on an object that is not a valid instance of HTMLMeterElement.")}en=tn["double"](en,{context:"Failed to set the 'optimum' property on 'HTMLMeterElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["optimum"]=en}finally{In(Wt)}}get labels(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get labels' called on an object that is not a valid instance of HTMLMeterElement.")}return nn.tryWrapperForImpl(en[sn]["labels"])}}Object.defineProperties(HTMLMeterElement.prototype,{value:{enumerable:true},min:{enumerable:true},max:{enumerable:true},low:{enumerable:true},high:{enumerable:true},optimum:{enumerable:true},labels:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLMeterElement",configurable:true}});on[dn]=HTMLMeterElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLMeterElement})};const pn=en(81016)},18390:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(30962).parseURLToResultingURLRecord;const In=en(78012).serializeURL;const sn=en(8348).ceReactionsPreSteps;const on=en(8348).ceReactionsPostSteps;const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(48708);const pn="HTMLModElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLModElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLModElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLModElement extends Wt.HTMLElement{constructor(){return an(Wt,pn,new.target)}get cite(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get cite' called on an object that is not a valid instance of HTMLModElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("cite");if(Wt===null){return""}const Pt=rn(Wt,en[cn]._ownerDocument);if(Pt!==null){return In(Pt)}return tn.USVString(Wt)}finally{on(Wt)}}set cite(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set cite' called on an object that is not a valid instance of HTMLModElement.")}en=tn["USVString"](en,{context:"Failed to set the 'cite' property on 'HTMLModElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("cite",en)}finally{on(Wt)}}get dateTime(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get dateTime' called on an object that is not a valid instance of HTMLModElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("datetime");return Wt===null?"":Wt}finally{on(Wt)}}set dateTime(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set dateTime' called on an object that is not a valid instance of HTMLModElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'dateTime' property on 'HTMLModElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("datetime",en)}finally{on(Wt)}}}Object.defineProperties(HTMLModElement.prototype,{cite:{enumerable:true},dateTime:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLModElement",configurable:true}});dn[pn]=HTMLModElement;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLModElement})};const bn=en(79557)},72053:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLOListElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLOListElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLOListElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLOListElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get reversed(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get reversed' called on an object that is not a valid instance of HTMLOListElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("reversed")!==null}finally{In(Wt)}}set reversed(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set reversed' called on an object that is not a valid instance of HTMLOListElement.")}en=tn["boolean"](en,{context:"Failed to set the 'reversed' property on 'HTMLOListElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("reversed","")}else{nn[sn]._reflectDeleteTheContentAttribute("reversed")}}finally{In(Wt)}}get start(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get start' called on an object that is not a valid instance of HTMLOListElement.")}rn(Wt);try{return en[sn]["start"]}finally{In(Wt)}}set start(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set start' called on an object that is not a valid instance of HTMLOListElement.")}en=tn["long"](en,{context:"Failed to set the 'start' property on 'HTMLOListElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["start"]=en}finally{In(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLOListElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("type");return Wt===null?"":Wt}finally{In(Wt)}}set type(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set type' called on an object that is not a valid instance of HTMLOListElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'type' property on 'HTMLOListElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("type",en)}finally{In(Wt)}}get compact(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get compact' called on an object that is not a valid instance of HTMLOListElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("compact")!==null}finally{In(Wt)}}set compact(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set compact' called on an object that is not a valid instance of HTMLOListElement.")}en=tn["boolean"](en,{context:"Failed to set the 'compact' property on 'HTMLOListElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("compact","")}else{nn[sn]._reflectDeleteTheContentAttribute("compact")}}finally{In(Wt)}}}Object.defineProperties(HTMLOListElement.prototype,{reversed:{enumerable:true},start:{enumerable:true},type:{enumerable:true},compact:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLOListElement",configurable:true}});on[dn]=HTMLOListElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLOListElement})};const pn=en(4656)},63149:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(30962).parseURLToResultingURLRecord;const In=en(78012).serializeURL;const sn=en(8348).ceReactionsPreSteps;const on=en(8348).ceReactionsPostSteps;const cn=en(97205).parseNonNegativeInteger;const dn=nn.implSymbol;const un=nn.ctorRegistrySymbol;const pn=en(48708);const mn="HTMLObjectElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,dn)&&Wt[dn]instanceof Gn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof Gn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLObjectElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[un]["HTMLObjectElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{pn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,dn,{value:new Gn.implementation(en,tn,an),configurable:true});Wt[dn][nn.wrapperSymbol]=Wt;if(Gn.init){Gn.init(Wt[dn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,dn,{value:Object.create(Gn.implementation.prototype),configurable:true});tn[dn][nn.wrapperSymbol]=tn;if(Gn.init){Gn.init(tn[dn])}return tn[dn]};const bn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>bn.has(Wt)))){return}const un=nn.initCtorRegistry(Wt);class HTMLObjectElement extends Wt.HTMLElement{constructor(){return an(Wt,mn,new.target)}checkValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'checkValidity' called on an object that is not a valid instance of HTMLObjectElement.")}return en[dn].checkValidity()}reportValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'reportValidity' called on an object that is not a valid instance of HTMLObjectElement.")}return en[dn].reportValidity()}setCustomValidity(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'setCustomValidity' called on an object that is not a valid instance of HTMLObjectElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setCustomValidity' on 'HTMLObjectElement': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setCustomValidity' on 'HTMLObjectElement': parameter 1",globals:Wt});an.push(Pt)}return nn[dn].setCustomValidity(...an)}get data(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get data' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("data");if(Wt===null){return""}const Pt=rn(Wt,en[dn]._ownerDocument);if(Pt!==null){return In(Pt)}return tn.USVString(Wt)}finally{on(Wt)}}set data(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set data' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["USVString"](en,{context:"Failed to set the 'data' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{nn[dn]._reflectSetTheContentAttribute("data",en)}finally{on(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("type");return Wt===null?"":Wt}finally{on(Wt)}}set type(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set type' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'type' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{nn[dn]._reflectSetTheContentAttribute("type",en)}finally{on(Wt)}}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{on(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{nn[dn]._reflectSetTheContentAttribute("name",en)}finally{on(Wt)}}get useMap(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get useMap' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("usemap");return Wt===null?"":Wt}finally{on(Wt)}}set useMap(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set useMap' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'useMap' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{nn[dn]._reflectSetTheContentAttribute("usemap",en)}finally{on(Wt)}}get form(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get form' called on an object that is not a valid instance of HTMLObjectElement.")}return nn.tryWrapperForImpl(en[dn]["form"])}get width(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get width' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("width");return Wt===null?"":Wt}finally{on(Wt)}}set width(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set width' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'width' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{nn[dn]._reflectSetTheContentAttribute("width",en)}finally{on(Wt)}}get height(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get height' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("height");return Wt===null?"":Wt}finally{on(Wt)}}set height(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set height' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'height' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{nn[dn]._reflectSetTheContentAttribute("height",en)}finally{on(Wt)}}get contentDocument(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get contentDocument' called on an object that is not a valid instance of HTMLObjectElement.")}return nn.tryWrapperForImpl(en[dn]["contentDocument"])}get willValidate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get willValidate' called on an object that is not a valid instance of HTMLObjectElement.")}return en[dn]["willValidate"]}get validity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get validity' called on an object that is not a valid instance of HTMLObjectElement.")}return nn.tryWrapperForImpl(en[dn]["validity"])}get validationMessage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get validationMessage' called on an object that is not a valid instance of HTMLObjectElement.")}return en[dn]["validationMessage"]}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{on(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{nn[dn]._reflectSetTheContentAttribute("align",en)}finally{on(Wt)}}get archive(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get archive' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("archive");return Wt===null?"":Wt}finally{on(Wt)}}set archive(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set archive' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'archive' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{nn[dn]._reflectSetTheContentAttribute("archive",en)}finally{on(Wt)}}get code(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get code' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("code");return Wt===null?"":Wt}finally{on(Wt)}}set code(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set code' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'code' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{nn[dn]._reflectSetTheContentAttribute("code",en)}finally{on(Wt)}}get declare(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get declare' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{return en[dn]._reflectGetTheContentAttribute("declare")!==null}finally{on(Wt)}}set declare(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set declare' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["boolean"](en,{context:"Failed to set the 'declare' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{if(en){nn[dn]._reflectSetTheContentAttribute("declare","")}else{nn[dn]._reflectDeleteTheContentAttribute("declare")}}finally{on(Wt)}}get hspace(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hspace' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{let Wt=en[dn]._reflectGetTheContentAttribute("hspace");if(Wt!==null){Wt=cn(Wt);if(Wt!==null&&Wt>=0&&Wt<=2147483647){return Wt}}return 0}finally{on(Wt)}}set hspace(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set hspace' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'hspace' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{const Wt=en<=2147483647&&en>=0?en:0;nn[dn]._reflectSetTheContentAttribute("hspace",String(Wt))}finally{on(Wt)}}get standby(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get standby' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("standby");return Wt===null?"":Wt}finally{on(Wt)}}set standby(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set standby' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'standby' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{nn[dn]._reflectSetTheContentAttribute("standby",en)}finally{on(Wt)}}get vspace(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get vspace' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{let Wt=en[dn]._reflectGetTheContentAttribute("vspace");if(Wt!==null){Wt=cn(Wt);if(Wt!==null&&Wt>=0&&Wt<=2147483647){return Wt}}return 0}finally{on(Wt)}}set vspace(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set vspace' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'vspace' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{const Wt=en<=2147483647&&en>=0?en:0;nn[dn]._reflectSetTheContentAttribute("vspace",String(Wt))}finally{on(Wt)}}get codeBase(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get codeBase' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("codebase");if(Wt===null){return""}const Pt=rn(Wt,en[dn]._ownerDocument);if(Pt!==null){return In(Pt)}return tn.USVString(Wt)}finally{on(Wt)}}set codeBase(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set codeBase' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'codeBase' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{nn[dn]._reflectSetTheContentAttribute("codebase",en)}finally{on(Wt)}}get codeType(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get codeType' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("codetype");return Wt===null?"":Wt}finally{on(Wt)}}set codeType(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set codeType' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'codeType' property on 'HTMLObjectElement': The provided value",globals:Wt});sn(Wt);try{nn[dn]._reflectSetTheContentAttribute("codetype",en)}finally{on(Wt)}}get border(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get border' called on an object that is not a valid instance of HTMLObjectElement.")}sn(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("border");return Wt===null?"":Wt}finally{on(Wt)}}set border(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set border' called on an object that is not a valid instance of HTMLObjectElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'border' property on 'HTMLObjectElement': The provided value",globals:Wt,treatNullAsEmptyString:true});sn(Wt);try{nn[dn]._reflectSetTheContentAttribute("border",en)}finally{on(Wt)}}}Object.defineProperties(HTMLObjectElement.prototype,{checkValidity:{enumerable:true},reportValidity:{enumerable:true},setCustomValidity:{enumerable:true},data:{enumerable:true},type:{enumerable:true},name:{enumerable:true},useMap:{enumerable:true},form:{enumerable:true},width:{enumerable:true},height:{enumerable:true},contentDocument:{enumerable:true},willValidate:{enumerable:true},validity:{enumerable:true},validationMessage:{enumerable:true},align:{enumerable:true},archive:{enumerable:true},code:{enumerable:true},declare:{enumerable:true},hspace:{enumerable:true},standby:{enumerable:true},vspace:{enumerable:true},codeBase:{enumerable:true},codeType:{enumerable:true},border:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLObjectElement",configurable:true}});un[mn]=HTMLObjectElement;Object.defineProperty(Wt,mn,{configurable:true,writable:true,value:HTMLObjectElement})};const Gn=en(12096)},77988:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLOptGroupElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLOptGroupElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLOptGroupElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLOptGroupElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get disabled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get disabled' called on an object that is not a valid instance of HTMLOptGroupElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("disabled")!==null}finally{In(Wt)}}set disabled(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set disabled' called on an object that is not a valid instance of HTMLOptGroupElement.")}en=tn["boolean"](en,{context:"Failed to set the 'disabled' property on 'HTMLOptGroupElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("disabled","")}else{nn[sn]._reflectDeleteTheContentAttribute("disabled")}}finally{In(Wt)}}get label(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get label' called on an object that is not a valid instance of HTMLOptGroupElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("label");return Wt===null?"":Wt}finally{In(Wt)}}set label(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set label' called on an object that is not a valid instance of HTMLOptGroupElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'label' property on 'HTMLOptGroupElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("label",en)}finally{In(Wt)}}}Object.defineProperties(HTMLOptGroupElement.prototype,{disabled:{enumerable:true},label:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLOptGroupElement",configurable:true}});on[dn]=HTMLOptGroupElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLOptGroupElement})};const pn=en(16175)},37491:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLOptionElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLOptionElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLOptionElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLOptionElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get disabled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get disabled' called on an object that is not a valid instance of HTMLOptionElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("disabled")!==null}finally{In(Wt)}}set disabled(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set disabled' called on an object that is not a valid instance of HTMLOptionElement.")}en=tn["boolean"](en,{context:"Failed to set the 'disabled' property on 'HTMLOptionElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("disabled","")}else{nn[sn]._reflectDeleteTheContentAttribute("disabled")}}finally{In(Wt)}}get form(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get form' called on an object that is not a valid instance of HTMLOptionElement.")}return nn.tryWrapperForImpl(en[sn]["form"])}get label(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get label' called on an object that is not a valid instance of HTMLOptionElement.")}rn(Wt);try{return en[sn]["label"]}finally{In(Wt)}}set label(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set label' called on an object that is not a valid instance of HTMLOptionElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'label' property on 'HTMLOptionElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["label"]=en}finally{In(Wt)}}get defaultSelected(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get defaultSelected' called on an object that is not a valid instance of HTMLOptionElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("selected")!==null}finally{In(Wt)}}set defaultSelected(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set defaultSelected' called on an object that is not a valid instance of HTMLOptionElement.")}en=tn["boolean"](en,{context:"Failed to set the 'defaultSelected' property on 'HTMLOptionElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("selected","")}else{nn[sn]._reflectDeleteTheContentAttribute("selected")}}finally{In(Wt)}}get selected(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get selected' called on an object that is not a valid instance of HTMLOptionElement.")}return en[sn]["selected"]}set selected(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set selected' called on an object that is not a valid instance of HTMLOptionElement.")}en=tn["boolean"](en,{context:"Failed to set the 'selected' property on 'HTMLOptionElement': The provided value",globals:Wt});nn[sn]["selected"]=en}get value(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get value' called on an object that is not a valid instance of HTMLOptionElement.")}rn(Wt);try{return en[sn]["value"]}finally{In(Wt)}}set value(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set value' called on an object that is not a valid instance of HTMLOptionElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'value' property on 'HTMLOptionElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["value"]=en}finally{In(Wt)}}get text(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get text' called on an object that is not a valid instance of HTMLOptionElement.")}rn(Wt);try{return en[sn]["text"]}finally{In(Wt)}}set text(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set text' called on an object that is not a valid instance of HTMLOptionElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'text' property on 'HTMLOptionElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["text"]=en}finally{In(Wt)}}get index(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get index' called on an object that is not a valid instance of HTMLOptionElement.")}return en[sn]["index"]}}Object.defineProperties(HTMLOptionElement.prototype,{disabled:{enumerable:true},form:{enumerable:true},label:{enumerable:true},defaultSelected:{enumerable:true},selected:{enumerable:true},value:{enumerable:true},text:{enumerable:true},index:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLOptionElement",configurable:true}});on[dn]=HTMLOptionElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLOptionElement})};const pn=en(1002)},71834:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(37491);const rn=en(77988);const In=en(48708);const sn=en(8348).ceReactionsPreSteps;const on=en(8348).ceReactionsPostSteps;const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(13506);const pn="HTMLOptionsCollection";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof Gn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof Gn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLOptionsCollection'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLOptionsCollection"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=bn.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);bn.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new Gn.implementation(en,tn,an),configurable:true});Wt=makeProxy(Wt,en);Wt[cn][nn.wrapperSymbol]=Wt;if(Gn.init){Gn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(Gn.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[cn][nn.wrapperSymbol]=tn;if(Gn.init){Gn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLOptionsCollection extends Wt.HTMLCollection{constructor(){throw new Wt.TypeError("Illegal constructor")}add(en){const dn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(dn)){throw new Wt.TypeError("'add' called on an object that is not a valid instance of HTMLOptionsCollection.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'add' on 'HTMLOptionsCollection': 1 argument required, but only ${arguments.length} present.`)}const un=[];{let Pt=arguments[0];if(an.is(Pt)||rn.is(Pt)){Pt=nn.implForWrapper(Pt)}else{throw new Wt.TypeError("Failed to execute 'add' on 'HTMLOptionsCollection': parameter 1"+" is not of any supported type.")}un.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{if(In.is(Pt)){Pt=nn.implForWrapper(Pt)}else if(typeof Pt==="number"){Pt=tn["long"](Pt,{context:"Failed to execute 'add' on 'HTMLOptionsCollection': parameter 2",globals:Wt})}else{Pt=tn["long"](Pt,{context:"Failed to execute 'add' on 'HTMLOptionsCollection': parameter 2",globals:Wt})}}}else{Pt=null}un.push(Pt)}sn(Wt);try{return dn[cn].add(...un)}finally{on(Wt)}}remove(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'remove' called on an object that is not a valid instance of HTMLOptionsCollection.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'remove' on 'HTMLOptionsCollection': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["long"](Pt,{context:"Failed to execute 'remove' on 'HTMLOptionsCollection': parameter 1",globals:Wt});an.push(Pt)}sn(Wt);try{return nn[cn].remove(...an)}finally{on(Wt)}}get length(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get length' called on an object that is not a valid instance of HTMLOptionsCollection.")}sn(Wt);try{return en[cn]["length"]}finally{on(Wt)}}set length(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set length' called on an object that is not a valid instance of HTMLOptionsCollection.")}en=tn["unsigned long"](en,{context:"Failed to set the 'length' property on 'HTMLOptionsCollection': The provided value",globals:Wt});sn(Wt);try{nn[cn]["length"]=en}finally{on(Wt)}}get selectedIndex(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get selectedIndex' called on an object that is not a valid instance of HTMLOptionsCollection.")}return en[cn]["selectedIndex"]}set selectedIndex(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set selectedIndex' called on an object that is not a valid instance of HTMLOptionsCollection.")}en=tn["long"](en,{context:"Failed to set the 'selectedIndex' property on 'HTMLOptionsCollection': The provided value",globals:Wt});nn[cn]["selectedIndex"]=en}}Object.defineProperties(HTMLOptionsCollection.prototype,{add:{enumerable:true},remove:{enumerable:true},length:{enumerable:true},selectedIndex:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLOptionsCollection",configurable:true},[Symbol.iterator]:{value:Wt.Array.prototype[Symbol.iterator],configurable:true,writable:true}});dn[pn]=HTMLOptionsCollection;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLOptionsCollection})};const bn=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[cn][nn.supportedPropertyIndices]){Pt.add(`${en}`)}for(const en of Wt[cn][nn.supportedPropertyNames]){if(!(en in Wt)){Pt.add(`${en}`)}}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;if(nn.isArrayIndexPropName(Pt)){const tn=Pt>>>0;const an=Wt[cn].item(tn);if(an!==null){return{writable:true,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(an)}}en=true}const tn=Wt[cn].namedItem(Pt);if(tn!==null&&!(Pt in Wt)&&!en){return{writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,tn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,tn)}if(Wt[cn][nn.wrapperSymbol]===tn){const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const rn=Pt>>>0;let In=en;if(In===null||In===undefined){In=null}else{In=an.convert(tn,In,{context:"Failed to set the "+rn+" property on 'HTMLOptionsCollection': The provided value"})}sn(tn);try{const Pt=!(Wt[cn].item(rn)!==null);if(Pt){Wt[cn][nn.indexedSetNew](rn,In)}else{Wt[cn][nn.indexedSetExisting](rn,In)}}finally{on(tn)}return true}}let rn;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;const tn=Wt[cn].item(en);if(tn!==null){rn={writable:true,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}}if(rn===undefined){rn=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(rn===undefined){const nn=Reflect.getPrototypeOf(Wt);if(nn!==null){return Reflect.set(nn,Pt,en,tn)}rn={writable:true,enumerable:true,configurable:true,value:undefined}}if(!rn.writable){return false}if(!nn.isObject(tn)){return false}const In=Reflect.getOwnPropertyDescriptor(tn,Pt);let dn;if(In!==undefined){if(In.get||In.set){return false}if(!In.writable){return false}dn={value:en}}else{dn={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(tn,Pt,dn)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){if(en.get||en.set){return false}const rn=Pt>>>0;let In=en.value;if(In===null||In===undefined){In=null}else{In=an.convert(tn,In,{context:"Failed to set the "+rn+" property on 'HTMLOptionsCollection': The provided value"})}sn(tn);try{const Pt=!(Wt[cn].item(rn)!==null);if(Pt){Wt[cn][nn.indexedSetNew](rn,In)}else{Wt[cn][nn.indexedSetExisting](rn,In)}}finally{on(tn)}return true}if(!nn.hasOwn(Wt,Pt)){const en=!(Wt[cn].namedItem(Pt)!==null);if(!en){return false}}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;return!(Wt[cn].item(en)!==null)}if(Wt[cn].namedItem(Pt)!==null&&!(Pt in Wt)){return false}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const Gn=en(1465)},41035:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLOutputElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLOutputElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLOutputElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLOutputElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}checkValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'checkValidity' called on an object that is not a valid instance of HTMLOutputElement.")}return en[sn].checkValidity()}reportValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'reportValidity' called on an object that is not a valid instance of HTMLOutputElement.")}return en[sn].reportValidity()}setCustomValidity(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'setCustomValidity' called on an object that is not a valid instance of HTMLOutputElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setCustomValidity' on 'HTMLOutputElement': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setCustomValidity' on 'HTMLOutputElement': parameter 1",globals:Wt});an.push(Pt)}return nn[sn].setCustomValidity(...an)}get htmlFor(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get htmlFor' called on an object that is not a valid instance of HTMLOutputElement.")}return nn.getSameObject(this,"htmlFor",(()=>nn.tryWrapperForImpl(en[sn]["htmlFor"])))}set htmlFor(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set htmlFor' called on an object that is not a valid instance of HTMLOutputElement.")}const an=tn["htmlFor"];if(!nn.isObject(an)){throw new Wt.TypeError("Property 'htmlFor' is not an object")}Reflect.set(an,"value",en)}get form(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get form' called on an object that is not a valid instance of HTMLOutputElement.")}return nn.tryWrapperForImpl(en[sn]["form"])}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLOutputElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{In(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLOutputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLOutputElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("name",en)}finally{In(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLOutputElement.")}return en[sn]["type"]}get defaultValue(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get defaultValue' called on an object that is not a valid instance of HTMLOutputElement.")}rn(Wt);try{return en[sn]["defaultValue"]}finally{In(Wt)}}set defaultValue(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set defaultValue' called on an object that is not a valid instance of HTMLOutputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'defaultValue' property on 'HTMLOutputElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["defaultValue"]=en}finally{In(Wt)}}get value(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get value' called on an object that is not a valid instance of HTMLOutputElement.")}rn(Wt);try{return en[sn]["value"]}finally{In(Wt)}}set value(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set value' called on an object that is not a valid instance of HTMLOutputElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'value' property on 'HTMLOutputElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["value"]=en}finally{In(Wt)}}get willValidate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get willValidate' called on an object that is not a valid instance of HTMLOutputElement.")}return en[sn]["willValidate"]}get validity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get validity' called on an object that is not a valid instance of HTMLOutputElement.")}return nn.tryWrapperForImpl(en[sn]["validity"])}get validationMessage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get validationMessage' called on an object that is not a valid instance of HTMLOutputElement.")}return en[sn]["validationMessage"]}get labels(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get labels' called on an object that is not a valid instance of HTMLOutputElement.")}return nn.tryWrapperForImpl(en[sn]["labels"])}}Object.defineProperties(HTMLOutputElement.prototype,{checkValidity:{enumerable:true},reportValidity:{enumerable:true},setCustomValidity:{enumerable:true},htmlFor:{enumerable:true},form:{enumerable:true},name:{enumerable:true},type:{enumerable:true},defaultValue:{enumerable:true},value:{enumerable:true},willValidate:{enumerable:true},validity:{enumerable:true},validationMessage:{enumerable:true},labels:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLOutputElement",configurable:true}});on[dn]=HTMLOutputElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLOutputElement})};const pn=en(8138)},31632:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLParagraphElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLParagraphElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLParagraphElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLParagraphElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLParagraphElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{In(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLParagraphElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLParagraphElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("align",en)}finally{In(Wt)}}}Object.defineProperties(HTMLParagraphElement.prototype,{align:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLParagraphElement",configurable:true}});on[dn]=HTMLParagraphElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLParagraphElement})};const pn=en(62627)},21325:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLParamElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLParamElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLParamElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLParamElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLParamElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{In(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLParamElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLParamElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("name",en)}finally{In(Wt)}}get value(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get value' called on an object that is not a valid instance of HTMLParamElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("value");return Wt===null?"":Wt}finally{In(Wt)}}set value(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set value' called on an object that is not a valid instance of HTMLParamElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'value' property on 'HTMLParamElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("value",en)}finally{In(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLParamElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("type");return Wt===null?"":Wt}finally{In(Wt)}}set type(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set type' called on an object that is not a valid instance of HTMLParamElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'type' property on 'HTMLParamElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("type",en)}finally{In(Wt)}}get valueType(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get valueType' called on an object that is not a valid instance of HTMLParamElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("valuetype");return Wt===null?"":Wt}finally{In(Wt)}}set valueType(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set valueType' called on an object that is not a valid instance of HTMLParamElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'valueType' property on 'HTMLParamElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("valuetype",en)}finally{In(Wt)}}}Object.defineProperties(HTMLParamElement.prototype,{name:{enumerable:true},value:{enumerable:true},type:{enumerable:true},valueType:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLParamElement",configurable:true}});on[dn]=HTMLParamElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLParamElement})};const pn=en(4328)},58224:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(48708);const on="HTMLPictureElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLPictureElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["HTMLPictureElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,Pt)=>{if(!Pt.some((Wt=>cn.has(Wt)))){return}const en=nn.initCtorRegistry(Wt);class HTMLPictureElement extends Wt.HTMLElement{constructor(){return an(Wt,on,new.target)}}Object.defineProperties(HTMLPictureElement.prototype,{[Symbol.toStringTag]:{value:"HTMLPictureElement",configurable:true}});en[on]=HTMLPictureElement;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:HTMLPictureElement})};const dn=en(42195)},19929:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(97205).parseInteger;const In=en(8348).ceReactionsPreSteps;const sn=en(8348).ceReactionsPostSteps;const on=nn.implSymbol;const cn=nn.ctorRegistrySymbol;const dn=en(48708);const un="HTMLPreElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,on)&&Wt[on]instanceof mn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof mn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLPreElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[cn]["HTMLPreElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{dn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,on,{value:new mn.implementation(en,tn,an),configurable:true});Wt[on][nn.wrapperSymbol]=Wt;if(mn.init){mn.init(Wt[on])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,on,{value:Object.create(mn.implementation.prototype),configurable:true});tn[on][nn.wrapperSymbol]=tn;if(mn.init){mn.init(tn[on])}return tn[on]};const pn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>pn.has(Wt)))){return}const cn=nn.initCtorRegistry(Wt);class HTMLPreElement extends Wt.HTMLElement{constructor(){return an(Wt,un,new.target)}get width(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get width' called on an object that is not a valid instance of HTMLPreElement.")}In(Wt);try{let Wt=en[on]._reflectGetTheContentAttribute("width");if(Wt!==null){Wt=rn(Wt);if(Wt!==null&&tn.long(Wt)===Wt){return Wt}}return 0}finally{sn(Wt)}}set width(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set width' called on an object that is not a valid instance of HTMLPreElement.")}en=tn["long"](en,{context:"Failed to set the 'width' property on 'HTMLPreElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("width",String(en))}finally{sn(Wt)}}}Object.defineProperties(HTMLPreElement.prototype,{width:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLPreElement",configurable:true}});cn[un]=HTMLPreElement;Object.defineProperty(Wt,un,{configurable:true,writable:true,value:HTMLPreElement})};const mn=en(79236)},84049:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=en(97205).parseFloatingPointNumber;const on=nn.implSymbol;const cn=nn.ctorRegistrySymbol;const dn=en(48708);const un="HTMLProgressElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,on)&&Wt[on]instanceof mn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof mn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLProgressElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[cn]["HTMLProgressElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{dn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,on,{value:new mn.implementation(en,tn,an),configurable:true});Wt[on][nn.wrapperSymbol]=Wt;if(mn.init){mn.init(Wt[on])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,on,{value:Object.create(mn.implementation.prototype),configurable:true});tn[on][nn.wrapperSymbol]=tn;if(mn.init){mn.init(tn[on])}return tn[on]};const pn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>pn.has(Wt)))){return}const cn=nn.initCtorRegistry(Wt);class HTMLProgressElement extends Wt.HTMLElement{constructor(){return an(Wt,un,new.target)}get value(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get value' called on an object that is not a valid instance of HTMLProgressElement.")}rn(Wt);try{return en[on]["value"]}finally{In(Wt)}}set value(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set value' called on an object that is not a valid instance of HTMLProgressElement.")}en=tn["double"](en,{context:"Failed to set the 'value' property on 'HTMLProgressElement': The provided value",globals:Wt});rn(Wt);try{nn[on]["value"]=en}finally{In(Wt)}}get max(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get max' called on an object that is not a valid instance of HTMLProgressElement.")}rn(Wt);try{let Wt=en[on]._reflectGetTheContentAttribute("max");if(Wt!==null){Wt=sn(Wt);if(Wt!==null&&Wt>0){return Wt}}return 1}finally{In(Wt)}}set max(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set max' called on an object that is not a valid instance of HTMLProgressElement.")}en=tn["double"](en,{context:"Failed to set the 'max' property on 'HTMLProgressElement': The provided value",globals:Wt});rn(Wt);try{if(en>0){nn[on]._reflectSetTheContentAttribute("max",String(en))}}finally{In(Wt)}}get position(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get position' called on an object that is not a valid instance of HTMLProgressElement.")}return en[on]["position"]}get labels(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get labels' called on an object that is not a valid instance of HTMLProgressElement.")}return nn.tryWrapperForImpl(en[on]["labels"])}}Object.defineProperties(HTMLProgressElement.prototype,{value:{enumerable:true},max:{enumerable:true},position:{enumerable:true},labels:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLProgressElement",configurable:true}});cn[un]=HTMLProgressElement;Object.defineProperty(Wt,un,{configurable:true,writable:true,value:HTMLProgressElement})};const mn=en(17348)},44106:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(30962).parseURLToResultingURLRecord;const In=en(78012).serializeURL;const sn=en(8348).ceReactionsPreSteps;const on=en(8348).ceReactionsPostSteps;const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(48708);const pn="HTMLQuoteElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLQuoteElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLQuoteElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLQuoteElement extends Wt.HTMLElement{constructor(){return an(Wt,pn,new.target)}get cite(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get cite' called on an object that is not a valid instance of HTMLQuoteElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("cite");if(Wt===null){return""}const Pt=rn(Wt,en[cn]._ownerDocument);if(Pt!==null){return In(Pt)}return tn.USVString(Wt)}finally{on(Wt)}}set cite(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set cite' called on an object that is not a valid instance of HTMLQuoteElement.")}en=tn["USVString"](en,{context:"Failed to set the 'cite' property on 'HTMLQuoteElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("cite",en)}finally{on(Wt)}}}Object.defineProperties(HTMLQuoteElement.prototype,{cite:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLQuoteElement",configurable:true}});dn[pn]=HTMLQuoteElement;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLQuoteElement})};const bn=en(66081)},52157:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(30962).parseURLToResultingURLRecord;const In=en(78012).serializeURL;const sn=en(8348).ceReactionsPreSteps;const on=en(8348).ceReactionsPostSteps;const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(48708);const pn="HTMLScriptElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLScriptElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLScriptElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLScriptElement extends Wt.HTMLElement{constructor(){return an(Wt,pn,new.target)}get src(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get src' called on an object that is not a valid instance of HTMLScriptElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("src");if(Wt===null){return""}const Pt=rn(Wt,en[cn]._ownerDocument);if(Pt!==null){return In(Pt)}return tn.USVString(Wt)}finally{on(Wt)}}set src(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set src' called on an object that is not a valid instance of HTMLScriptElement.")}en=tn["USVString"](en,{context:"Failed to set the 'src' property on 'HTMLScriptElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("src",en)}finally{on(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLScriptElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("type");return Wt===null?"":Wt}finally{on(Wt)}}set type(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set type' called on an object that is not a valid instance of HTMLScriptElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'type' property on 'HTMLScriptElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("type",en)}finally{on(Wt)}}get defer(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get defer' called on an object that is not a valid instance of HTMLScriptElement.")}sn(Wt);try{return en[cn]._reflectGetTheContentAttribute("defer")!==null}finally{on(Wt)}}set defer(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set defer' called on an object that is not a valid instance of HTMLScriptElement.")}en=tn["boolean"](en,{context:"Failed to set the 'defer' property on 'HTMLScriptElement': The provided value",globals:Wt});sn(Wt);try{if(en){nn[cn]._reflectSetTheContentAttribute("defer","")}else{nn[cn]._reflectDeleteTheContentAttribute("defer")}}finally{on(Wt)}}get crossOrigin(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get crossOrigin' called on an object that is not a valid instance of HTMLScriptElement.")}sn(Wt);try{return en[cn]._reflectGetTheContentAttribute("crossorigin")}finally{on(Wt)}}set crossOrigin(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set crossOrigin' called on an object that is not a valid instance of HTMLScriptElement.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'crossOrigin' property on 'HTMLScriptElement': The provided value",globals:Wt})}sn(Wt);try{if(en===null){nn[cn]._reflectDeleteTheContentAttribute("crossorigin")}else{nn[cn]._reflectSetTheContentAttribute("crossorigin",en)}}finally{on(Wt)}}get text(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get text' called on an object that is not a valid instance of HTMLScriptElement.")}sn(Wt);try{return en[cn]["text"]}finally{on(Wt)}}set text(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set text' called on an object that is not a valid instance of HTMLScriptElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'text' property on 'HTMLScriptElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]["text"]=en}finally{on(Wt)}}get charset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get charset' called on an object that is not a valid instance of HTMLScriptElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("charset");return Wt===null?"":Wt}finally{on(Wt)}}set charset(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set charset' called on an object that is not a valid instance of HTMLScriptElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'charset' property on 'HTMLScriptElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("charset",en)}finally{on(Wt)}}get event(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get event' called on an object that is not a valid instance of HTMLScriptElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("event");return Wt===null?"":Wt}finally{on(Wt)}}set event(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set event' called on an object that is not a valid instance of HTMLScriptElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'event' property on 'HTMLScriptElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("event",en)}finally{on(Wt)}}get htmlFor(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get htmlFor' called on an object that is not a valid instance of HTMLScriptElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("for");return Wt===null?"":Wt}finally{on(Wt)}}set htmlFor(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set htmlFor' called on an object that is not a valid instance of HTMLScriptElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'htmlFor' property on 'HTMLScriptElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("for",en)}finally{on(Wt)}}}Object.defineProperties(HTMLScriptElement.prototype,{src:{enumerable:true},type:{enumerable:true},defer:{enumerable:true},crossOrigin:{enumerable:true},text:{enumerable:true},charset:{enumerable:true},event:{enumerable:true},htmlFor:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLScriptElement",configurable:true}});dn[pn]=HTMLScriptElement;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLScriptElement})};const bn=en(61856)},63996:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(37491);const In=en(77988);const sn=en(48708);const on=en(8348).ceReactionsPreSteps;const cn=en(8348).ceReactionsPostSteps;const dn=en(97205).parseNonNegativeInteger;const un=nn.implSymbol;const pn=nn.ctorRegistrySymbol;const mn="HTMLSelectElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,un)&&Wt[un]instanceof hn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof hn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLSelectElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[pn]["HTMLSelectElement"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=Gn.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);Gn.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,un,{value:new hn.implementation(en,tn,an),configurable:true});Wt=makeProxy(Wt,en);Wt[un][nn.wrapperSymbol]=Wt;if(hn.init){hn.init(Wt[un])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,un,{value:Object.create(hn.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[un][nn.wrapperSymbol]=tn;if(hn.init){hn.init(tn[un])}return tn[un]};const bn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>bn.has(Wt)))){return}const pn=nn.initCtorRegistry(Wt);class HTMLSelectElement extends Wt.HTMLElement{constructor(){return an(Wt,mn,new.target)}item(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'item' called on an object that is not a valid instance of HTMLSelectElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'item' on 'HTMLSelectElement': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'item' on 'HTMLSelectElement': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[un].item(...rn))}namedItem(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'namedItem' called on an object that is not a valid instance of HTMLSelectElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'namedItem' on 'HTMLSelectElement': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'namedItem' on 'HTMLSelectElement': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[un].namedItem(...rn))}add(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'add' called on an object that is not a valid instance of HTMLSelectElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'add' on 'HTMLSelectElement': 1 argument required, but only ${arguments.length} present.`)}const dn=[];{let Pt=arguments[0];if(rn.is(Pt)||In.is(Pt)){Pt=nn.implForWrapper(Pt)}else{throw new Wt.TypeError("Failed to execute 'add' on 'HTMLSelectElement': parameter 1"+" is not of any supported type.")}dn.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{if(sn.is(Pt)){Pt=nn.implForWrapper(Pt)}else if(typeof Pt==="number"){Pt=tn["long"](Pt,{context:"Failed to execute 'add' on 'HTMLSelectElement': parameter 2",globals:Wt})}else{Pt=tn["long"](Pt,{context:"Failed to execute 'add' on 'HTMLSelectElement': parameter 2",globals:Wt})}}}else{Pt=null}dn.push(Pt)}on(Wt);try{return an[un].add(...dn)}finally{cn(Wt)}}remove(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'remove' called on an object that is not a valid instance of HTMLSelectElement.")}const nn=[];switch(arguments.length){case 0:break;default:{let Pt=arguments[0];Pt=tn["long"](Pt,{context:"Failed to execute 'remove' on 'HTMLSelectElement': parameter 1",globals:Wt});nn.push(Pt)}}on(Wt);try{return en[un].remove(...nn)}finally{cn(Wt)}}checkValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'checkValidity' called on an object that is not a valid instance of HTMLSelectElement.")}return en[un].checkValidity()}reportValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'reportValidity' called on an object that is not a valid instance of HTMLSelectElement.")}return en[un].reportValidity()}setCustomValidity(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'setCustomValidity' called on an object that is not a valid instance of HTMLSelectElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setCustomValidity' on 'HTMLSelectElement': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setCustomValidity' on 'HTMLSelectElement': parameter 1",globals:Wt});an.push(Pt)}return nn[un].setCustomValidity(...an)}get autofocus(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get autofocus' called on an object that is not a valid instance of HTMLSelectElement.")}on(Wt);try{return en[un]._reflectGetTheContentAttribute("autofocus")!==null}finally{cn(Wt)}}set autofocus(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set autofocus' called on an object that is not a valid instance of HTMLSelectElement.")}en=tn["boolean"](en,{context:"Failed to set the 'autofocus' property on 'HTMLSelectElement': The provided value",globals:Wt});on(Wt);try{if(en){nn[un]._reflectSetTheContentAttribute("autofocus","")}else{nn[un]._reflectDeleteTheContentAttribute("autofocus")}}finally{cn(Wt)}}get disabled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get disabled' called on an object that is not a valid instance of HTMLSelectElement.")}on(Wt);try{return en[un]._reflectGetTheContentAttribute("disabled")!==null}finally{cn(Wt)}}set disabled(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set disabled' called on an object that is not a valid instance of HTMLSelectElement.")}en=tn["boolean"](en,{context:"Failed to set the 'disabled' property on 'HTMLSelectElement': The provided value",globals:Wt});on(Wt);try{if(en){nn[un]._reflectSetTheContentAttribute("disabled","")}else{nn[un]._reflectDeleteTheContentAttribute("disabled")}}finally{cn(Wt)}}get form(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get form' called on an object that is not a valid instance of HTMLSelectElement.")}return nn.tryWrapperForImpl(en[un]["form"])}get multiple(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get multiple' called on an object that is not a valid instance of HTMLSelectElement.")}on(Wt);try{return en[un]._reflectGetTheContentAttribute("multiple")!==null}finally{cn(Wt)}}set multiple(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set multiple' called on an object that is not a valid instance of HTMLSelectElement.")}en=tn["boolean"](en,{context:"Failed to set the 'multiple' property on 'HTMLSelectElement': The provided value",globals:Wt});on(Wt);try{if(en){nn[un]._reflectSetTheContentAttribute("multiple","")}else{nn[un]._reflectDeleteTheContentAttribute("multiple")}}finally{cn(Wt)}}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLSelectElement.")}on(Wt);try{const Wt=en[un]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{cn(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLSelectElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLSelectElement': The provided value",globals:Wt});on(Wt);try{nn[un]._reflectSetTheContentAttribute("name",en)}finally{cn(Wt)}}get required(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get required' called on an object that is not a valid instance of HTMLSelectElement.")}on(Wt);try{return en[un]._reflectGetTheContentAttribute("required")!==null}finally{cn(Wt)}}set required(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set required' called on an object that is not a valid instance of HTMLSelectElement.")}en=tn["boolean"](en,{context:"Failed to set the 'required' property on 'HTMLSelectElement': The provided value",globals:Wt});on(Wt);try{if(en){nn[un]._reflectSetTheContentAttribute("required","")}else{nn[un]._reflectDeleteTheContentAttribute("required")}}finally{cn(Wt)}}get size(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get size' called on an object that is not a valid instance of HTMLSelectElement.")}on(Wt);try{let Wt=en[un]._reflectGetTheContentAttribute("size");if(Wt!==null){Wt=dn(Wt);if(Wt!==null&&Wt>=0&&Wt<=2147483647){return Wt}}return 0}finally{cn(Wt)}}set size(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set size' called on an object that is not a valid instance of HTMLSelectElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'size' property on 'HTMLSelectElement': The provided value",globals:Wt});on(Wt);try{const Wt=en<=2147483647&&en>=0?en:0;nn[un]._reflectSetTheContentAttribute("size",String(Wt))}finally{cn(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLSelectElement.")}return en[un]["type"]}get options(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get options' called on an object that is not a valid instance of HTMLSelectElement.")}return nn.getSameObject(this,"options",(()=>nn.tryWrapperForImpl(en[un]["options"])))}get length(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get length' called on an object that is not a valid instance of HTMLSelectElement.")}on(Wt);try{return en[un]["length"]}finally{cn(Wt)}}set length(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set length' called on an object that is not a valid instance of HTMLSelectElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'length' property on 'HTMLSelectElement': The provided value",globals:Wt});on(Wt);try{nn[un]["length"]=en}finally{cn(Wt)}}get selectedOptions(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get selectedOptions' called on an object that is not a valid instance of HTMLSelectElement.")}return nn.getSameObject(this,"selectedOptions",(()=>nn.tryWrapperForImpl(en[un]["selectedOptions"])))}get selectedIndex(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get selectedIndex' called on an object that is not a valid instance of HTMLSelectElement.")}return en[un]["selectedIndex"]}set selectedIndex(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set selectedIndex' called on an object that is not a valid instance of HTMLSelectElement.")}en=tn["long"](en,{context:"Failed to set the 'selectedIndex' property on 'HTMLSelectElement': The provided value",globals:Wt});nn[un]["selectedIndex"]=en}get value(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get value' called on an object that is not a valid instance of HTMLSelectElement.")}return en[un]["value"]}set value(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set value' called on an object that is not a valid instance of HTMLSelectElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'value' property on 'HTMLSelectElement': The provided value",globals:Wt});nn[un]["value"]=en}get willValidate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get willValidate' called on an object that is not a valid instance of HTMLSelectElement.")}return en[un]["willValidate"]}get validity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get validity' called on an object that is not a valid instance of HTMLSelectElement.")}return nn.tryWrapperForImpl(en[un]["validity"])}get validationMessage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get validationMessage' called on an object that is not a valid instance of HTMLSelectElement.")}return en[un]["validationMessage"]}get labels(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get labels' called on an object that is not a valid instance of HTMLSelectElement.")}return nn.tryWrapperForImpl(en[un]["labels"])}}Object.defineProperties(HTMLSelectElement.prototype,{item:{enumerable:true},namedItem:{enumerable:true},add:{enumerable:true},remove:{enumerable:true},checkValidity:{enumerable:true},reportValidity:{enumerable:true},setCustomValidity:{enumerable:true},autofocus:{enumerable:true},disabled:{enumerable:true},form:{enumerable:true},multiple:{enumerable:true},name:{enumerable:true},required:{enumerable:true},size:{enumerable:true},type:{enumerable:true},options:{enumerable:true},length:{enumerable:true},selectedOptions:{enumerable:true},selectedIndex:{enumerable:true},value:{enumerable:true},willValidate:{enumerable:true},validity:{enumerable:true},validationMessage:{enumerable:true},labels:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLSelectElement",configurable:true},[Symbol.iterator]:{value:Wt.Array.prototype[Symbol.iterator],configurable:true,writable:true}});pn[mn]=HTMLSelectElement;Object.defineProperty(Wt,mn,{configurable:true,writable:true,value:HTMLSelectElement})};const Gn=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[un][nn.supportedPropertyIndices]){Pt.add(`${en}`)}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;if(nn.isArrayIndexPropName(Pt)){const tn=Pt>>>0;const an=Wt[un].item(tn);if(an!==null){return{writable:true,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(an)}}en=true}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,tn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,tn)}if(Wt[un][nn.wrapperSymbol]===tn){const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const an=Pt>>>0;let In=en;if(In===null||In===undefined){In=null}else{In=rn.convert(tn,In,{context:"Failed to set the "+an+" property on 'HTMLSelectElement': The provided value"})}on(tn);try{const Pt=!(Wt[un].item(an)!==null);if(Pt){Wt[un][nn.indexedSetNew](an,In)}else{Wt[un][nn.indexedSetExisting](an,In)}}finally{cn(tn)}return true}}let an;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;const tn=Wt[un].item(en);if(tn!==null){an={writable:true,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}}if(an===undefined){an=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(an===undefined){const nn=Reflect.getPrototypeOf(Wt);if(nn!==null){return Reflect.set(nn,Pt,en,tn)}an={writable:true,enumerable:true,configurable:true,value:undefined}}if(!an.writable){return false}if(!nn.isObject(tn)){return false}const In=Reflect.getOwnPropertyDescriptor(tn,Pt);let sn;if(In!==undefined){if(In.get||In.set){return false}if(!In.writable){return false}sn={value:en}}else{sn={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(tn,Pt,sn)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){if(en.get||en.set){return false}const an=Pt>>>0;let In=en.value;if(In===null||In===undefined){In=null}else{In=rn.convert(tn,In,{context:"Failed to set the "+an+" property on 'HTMLSelectElement': The provided value"})}on(tn);try{const Pt=!(Wt[un].item(an)!==null);if(Pt){Wt[un][nn.indexedSetNew](an,In)}else{Wt[un][nn.indexedSetExisting](an,In)}}finally{cn(tn)}return true}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;return!(Wt[un].item(en)!==null)}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const hn=en(34143)},89856:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(34894);const In=en(8348).ceReactionsPreSteps;const sn=en(8348).ceReactionsPostSteps;const on=nn.implSymbol;const cn=nn.ctorRegistrySymbol;const dn=en(48708);const un="HTMLSlotElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,on)&&Wt[on]instanceof mn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof mn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLSlotElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[cn]["HTMLSlotElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{dn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,on,{value:new mn.implementation(en,tn,an),configurable:true});Wt[on][nn.wrapperSymbol]=Wt;if(mn.init){mn.init(Wt[on])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,on,{value:Object.create(mn.implementation.prototype),configurable:true});tn[on][nn.wrapperSymbol]=tn;if(mn.init){mn.init(tn[on])}return tn[on]};const pn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>pn.has(Wt)))){return}const cn=nn.initCtorRegistry(Wt);class HTMLSlotElement extends Wt.HTMLElement{constructor(){return an(Wt,un,new.target)}assignedNodes(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'assignedNodes' called on an object that is not a valid instance of HTMLSlotElement.")}const tn=[];{let Pt=arguments[0];Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'assignedNodes' on 'HTMLSlotElement': parameter 1"});tn.push(Pt)}return nn.tryWrapperForImpl(en[on].assignedNodes(...tn))}assignedElements(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'assignedElements' called on an object that is not a valid instance of HTMLSlotElement.")}const tn=[];{let Pt=arguments[0];Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'assignedElements' on 'HTMLSlotElement': parameter 1"});tn.push(Pt)}return nn.tryWrapperForImpl(en[on].assignedElements(...tn))}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLSlotElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{sn(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLSlotElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLSlotElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("name",en)}finally{sn(Wt)}}}Object.defineProperties(HTMLSlotElement.prototype,{assignedNodes:{enumerable:true},assignedElements:{enumerable:true},name:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLSlotElement",configurable:true}});cn[un]=HTMLSlotElement;Object.defineProperty(Wt,un,{configurable:true,writable:true,value:HTMLSlotElement})};const mn=en(80011)},11863:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(30962).parseURLToResultingURLRecord;const In=en(78012).serializeURL;const sn=en(8348).ceReactionsPreSteps;const on=en(8348).ceReactionsPostSteps;const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(48708);const pn="HTMLSourceElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLSourceElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLSourceElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLSourceElement extends Wt.HTMLElement{constructor(){return an(Wt,pn,new.target)}get src(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get src' called on an object that is not a valid instance of HTMLSourceElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("src");if(Wt===null){return""}const Pt=rn(Wt,en[cn]._ownerDocument);if(Pt!==null){return In(Pt)}return tn.USVString(Wt)}finally{on(Wt)}}set src(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set src' called on an object that is not a valid instance of HTMLSourceElement.")}en=tn["USVString"](en,{context:"Failed to set the 'src' property on 'HTMLSourceElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("src",en)}finally{on(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLSourceElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("type");return Wt===null?"":Wt}finally{on(Wt)}}set type(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set type' called on an object that is not a valid instance of HTMLSourceElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'type' property on 'HTMLSourceElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("type",en)}finally{on(Wt)}}get srcset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get srcset' called on an object that is not a valid instance of HTMLSourceElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("srcset");return Wt===null?"":tn.USVString(Wt)}finally{on(Wt)}}set srcset(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set srcset' called on an object that is not a valid instance of HTMLSourceElement.")}en=tn["USVString"](en,{context:"Failed to set the 'srcset' property on 'HTMLSourceElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("srcset",en)}finally{on(Wt)}}get sizes(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get sizes' called on an object that is not a valid instance of HTMLSourceElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("sizes");return Wt===null?"":Wt}finally{on(Wt)}}set sizes(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set sizes' called on an object that is not a valid instance of HTMLSourceElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'sizes' property on 'HTMLSourceElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("sizes",en)}finally{on(Wt)}}get media(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get media' called on an object that is not a valid instance of HTMLSourceElement.")}sn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("media");return Wt===null?"":Wt}finally{on(Wt)}}set media(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set media' called on an object that is not a valid instance of HTMLSourceElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'media' property on 'HTMLSourceElement': The provided value",globals:Wt});sn(Wt);try{nn[cn]._reflectSetTheContentAttribute("media",en)}finally{on(Wt)}}}Object.defineProperties(HTMLSourceElement.prototype,{src:{enumerable:true},type:{enumerable:true},srcset:{enumerable:true},sizes:{enumerable:true},media:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLSourceElement",configurable:true}});dn[pn]=HTMLSourceElement;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLSourceElement})};const bn=en(51769)},33632:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(48708);const on="HTMLSpanElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLSpanElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["HTMLSpanElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,Pt)=>{if(!Pt.some((Wt=>cn.has(Wt)))){return}const en=nn.initCtorRegistry(Wt);class HTMLSpanElement extends Wt.HTMLElement{constructor(){return an(Wt,on,new.target)}}Object.defineProperties(HTMLSpanElement.prototype,{[Symbol.toStringTag]:{value:"HTMLSpanElement",configurable:true}});en[on]=HTMLSpanElement;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:HTMLSpanElement})};const dn=en(76107)},97737:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLStyleElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLStyleElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLStyleElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLStyleElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get media(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get media' called on an object that is not a valid instance of HTMLStyleElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("media");return Wt===null?"":Wt}finally{In(Wt)}}set media(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set media' called on an object that is not a valid instance of HTMLStyleElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'media' property on 'HTMLStyleElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("media",en)}finally{In(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLStyleElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("type");return Wt===null?"":Wt}finally{In(Wt)}}set type(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set type' called on an object that is not a valid instance of HTMLStyleElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'type' property on 'HTMLStyleElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("type",en)}finally{In(Wt)}}get sheet(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get sheet' called on an object that is not a valid instance of HTMLStyleElement.")}return nn.tryWrapperForImpl(en[sn]["sheet"])}}Object.defineProperties(HTMLStyleElement.prototype,{media:{enumerable:true},type:{enumerable:true},sheet:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLStyleElement",configurable:true}});on[dn]=HTMLStyleElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLStyleElement})};const pn=en(6516)},41450:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLTableCaptionElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLTableCaptionElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLTableCaptionElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLTableCaptionElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLTableCaptionElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{In(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLTableCaptionElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLTableCaptionElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("align",en)}finally{In(Wt)}}}Object.defineProperties(HTMLTableCaptionElement.prototype,{align:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLTableCaptionElement",configurable:true}});on[dn]=HTMLTableCaptionElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLTableCaptionElement})};const pn=en(5257)},43902:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(97205).parseNonNegativeInteger;const In=en(8348).ceReactionsPreSteps;const sn=en(8348).ceReactionsPostSteps;const on=nn.implSymbol;const cn=nn.ctorRegistrySymbol;const dn=en(48708);const un="HTMLTableCellElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,on)&&Wt[on]instanceof mn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof mn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLTableCellElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[cn]["HTMLTableCellElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{dn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,on,{value:new mn.implementation(en,tn,an),configurable:true});Wt[on][nn.wrapperSymbol]=Wt;if(mn.init){mn.init(Wt[on])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,on,{value:Object.create(mn.implementation.prototype),configurable:true});tn[on][nn.wrapperSymbol]=tn;if(mn.init){mn.init(tn[on])}return tn[on]};const pn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>pn.has(Wt)))){return}const cn=nn.initCtorRegistry(Wt);class HTMLTableCellElement extends Wt.HTMLElement{constructor(){return an(Wt,un,new.target)}get colSpan(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get colSpan' called on an object that is not a valid instance of HTMLTableCellElement.")}In(Wt);try{let Wt=en[on]._reflectGetTheContentAttribute("colspan");if(Wt!==null){Wt=rn(Wt);if(Wt!==null){if(Wt<1){return 1}else if(Wt>=1&&Wt<=1e3){return Wt}else{return 1e3}}}return 1}finally{sn(Wt)}}set colSpan(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set colSpan' called on an object that is not a valid instance of HTMLTableCellElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'colSpan' property on 'HTMLTableCellElement': The provided value",globals:Wt});In(Wt);try{const Wt=en<=2147483647&&en>=0?en:1;nn[on]._reflectSetTheContentAttribute("colspan",String(Wt))}finally{sn(Wt)}}get rowSpan(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rowSpan' called on an object that is not a valid instance of HTMLTableCellElement.")}In(Wt);try{let Wt=en[on]._reflectGetTheContentAttribute("rowspan");if(Wt!==null){Wt=rn(Wt);if(Wt!==null){if(Wt<0){return 0}else if(Wt>=0&&Wt<=65534){return Wt}else{return 65534}}}return 1}finally{sn(Wt)}}set rowSpan(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set rowSpan' called on an object that is not a valid instance of HTMLTableCellElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'rowSpan' property on 'HTMLTableCellElement': The provided value",globals:Wt});In(Wt);try{const Wt=en<=2147483647&&en>=0?en:1;nn[on]._reflectSetTheContentAttribute("rowspan",String(Wt))}finally{sn(Wt)}}get headers(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get headers' called on an object that is not a valid instance of HTMLTableCellElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("headers");return Wt===null?"":Wt}finally{sn(Wt)}}set headers(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set headers' called on an object that is not a valid instance of HTMLTableCellElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'headers' property on 'HTMLTableCellElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("headers",en)}finally{sn(Wt)}}get cellIndex(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get cellIndex' called on an object that is not a valid instance of HTMLTableCellElement.")}return en[on]["cellIndex"]}get scope(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get scope' called on an object that is not a valid instance of HTMLTableCellElement.")}In(Wt);try{return en[on]["scope"]}finally{sn(Wt)}}set scope(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set scope' called on an object that is not a valid instance of HTMLTableCellElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'scope' property on 'HTMLTableCellElement': The provided value",globals:Wt});In(Wt);try{nn[on]["scope"]=en}finally{sn(Wt)}}get abbr(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get abbr' called on an object that is not a valid instance of HTMLTableCellElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("abbr");return Wt===null?"":Wt}finally{sn(Wt)}}set abbr(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set abbr' called on an object that is not a valid instance of HTMLTableCellElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'abbr' property on 'HTMLTableCellElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("abbr",en)}finally{sn(Wt)}}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLTableCellElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{sn(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLTableCellElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLTableCellElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("align",en)}finally{sn(Wt)}}get axis(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get axis' called on an object that is not a valid instance of HTMLTableCellElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("axis");return Wt===null?"":Wt}finally{sn(Wt)}}set axis(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set axis' called on an object that is not a valid instance of HTMLTableCellElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'axis' property on 'HTMLTableCellElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("axis",en)}finally{sn(Wt)}}get height(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get height' called on an object that is not a valid instance of HTMLTableCellElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("height");return Wt===null?"":Wt}finally{sn(Wt)}}set height(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set height' called on an object that is not a valid instance of HTMLTableCellElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'height' property on 'HTMLTableCellElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("height",en)}finally{sn(Wt)}}get width(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get width' called on an object that is not a valid instance of HTMLTableCellElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("width");return Wt===null?"":Wt}finally{sn(Wt)}}set width(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set width' called on an object that is not a valid instance of HTMLTableCellElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'width' property on 'HTMLTableCellElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("width",en)}finally{sn(Wt)}}get ch(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ch' called on an object that is not a valid instance of HTMLTableCellElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("char");return Wt===null?"":Wt}finally{sn(Wt)}}set ch(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ch' called on an object that is not a valid instance of HTMLTableCellElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'ch' property on 'HTMLTableCellElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("char",en)}finally{sn(Wt)}}get chOff(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get chOff' called on an object that is not a valid instance of HTMLTableCellElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("charoff");return Wt===null?"":Wt}finally{sn(Wt)}}set chOff(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set chOff' called on an object that is not a valid instance of HTMLTableCellElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'chOff' property on 'HTMLTableCellElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("charoff",en)}finally{sn(Wt)}}get noWrap(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get noWrap' called on an object that is not a valid instance of HTMLTableCellElement.")}In(Wt);try{return en[on]._reflectGetTheContentAttribute("nowrap")!==null}finally{sn(Wt)}}set noWrap(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set noWrap' called on an object that is not a valid instance of HTMLTableCellElement.")}en=tn["boolean"](en,{context:"Failed to set the 'noWrap' property on 'HTMLTableCellElement': The provided value",globals:Wt});In(Wt);try{if(en){nn[on]._reflectSetTheContentAttribute("nowrap","")}else{nn[on]._reflectDeleteTheContentAttribute("nowrap")}}finally{sn(Wt)}}get vAlign(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get vAlign' called on an object that is not a valid instance of HTMLTableCellElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("valign");return Wt===null?"":Wt}finally{sn(Wt)}}set vAlign(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set vAlign' called on an object that is not a valid instance of HTMLTableCellElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'vAlign' property on 'HTMLTableCellElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("valign",en)}finally{sn(Wt)}}get bgColor(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get bgColor' called on an object that is not a valid instance of HTMLTableCellElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("bgcolor");return Wt===null?"":Wt}finally{sn(Wt)}}set bgColor(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set bgColor' called on an object that is not a valid instance of HTMLTableCellElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'bgColor' property on 'HTMLTableCellElement': The provided value",globals:Wt,treatNullAsEmptyString:true});In(Wt);try{nn[on]._reflectSetTheContentAttribute("bgcolor",en)}finally{sn(Wt)}}}Object.defineProperties(HTMLTableCellElement.prototype,{colSpan:{enumerable:true},rowSpan:{enumerable:true},headers:{enumerable:true},cellIndex:{enumerable:true},scope:{enumerable:true},abbr:{enumerable:true},align:{enumerable:true},axis:{enumerable:true},height:{enumerable:true},width:{enumerable:true},ch:{enumerable:true},chOff:{enumerable:true},noWrap:{enumerable:true},vAlign:{enumerable:true},bgColor:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLTableCellElement",configurable:true}});cn[un]=HTMLTableCellElement;Object.defineProperty(Wt,un,{configurable:true,writable:true,value:HTMLTableCellElement})};const mn=en(67157)},42986:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(97205).parseNonNegativeInteger;const In=en(8348).ceReactionsPreSteps;const sn=en(8348).ceReactionsPostSteps;const on=nn.implSymbol;const cn=nn.ctorRegistrySymbol;const dn=en(48708);const un="HTMLTableColElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,on)&&Wt[on]instanceof mn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof mn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLTableColElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[cn]["HTMLTableColElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{dn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,on,{value:new mn.implementation(en,tn,an),configurable:true});Wt[on][nn.wrapperSymbol]=Wt;if(mn.init){mn.init(Wt[on])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,on,{value:Object.create(mn.implementation.prototype),configurable:true});tn[on][nn.wrapperSymbol]=tn;if(mn.init){mn.init(tn[on])}return tn[on]};const pn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>pn.has(Wt)))){return}const cn=nn.initCtorRegistry(Wt);class HTMLTableColElement extends Wt.HTMLElement{constructor(){return an(Wt,un,new.target)}get span(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get span' called on an object that is not a valid instance of HTMLTableColElement.")}In(Wt);try{let Wt=en[on]._reflectGetTheContentAttribute("span");if(Wt!==null){Wt=rn(Wt);if(Wt!==null){if(Wt<1){return 1}else if(Wt>=1&&Wt<=1e3){return Wt}else{return 1e3}}}return 1}finally{sn(Wt)}}set span(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set span' called on an object that is not a valid instance of HTMLTableColElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'span' property on 'HTMLTableColElement': The provided value",globals:Wt});In(Wt);try{const Wt=en<=2147483647&&en>=0?en:1;nn[on]._reflectSetTheContentAttribute("span",String(Wt))}finally{sn(Wt)}}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLTableColElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{sn(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLTableColElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLTableColElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("align",en)}finally{sn(Wt)}}get ch(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ch' called on an object that is not a valid instance of HTMLTableColElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("char");return Wt===null?"":Wt}finally{sn(Wt)}}set ch(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ch' called on an object that is not a valid instance of HTMLTableColElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'ch' property on 'HTMLTableColElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("char",en)}finally{sn(Wt)}}get chOff(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get chOff' called on an object that is not a valid instance of HTMLTableColElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("charoff");return Wt===null?"":Wt}finally{sn(Wt)}}set chOff(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set chOff' called on an object that is not a valid instance of HTMLTableColElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'chOff' property on 'HTMLTableColElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("charoff",en)}finally{sn(Wt)}}get vAlign(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get vAlign' called on an object that is not a valid instance of HTMLTableColElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("valign");return Wt===null?"":Wt}finally{sn(Wt)}}set vAlign(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set vAlign' called on an object that is not a valid instance of HTMLTableColElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'vAlign' property on 'HTMLTableColElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("valign",en)}finally{sn(Wt)}}get width(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get width' called on an object that is not a valid instance of HTMLTableColElement.")}In(Wt);try{const Wt=en[on]._reflectGetTheContentAttribute("width");return Wt===null?"":Wt}finally{sn(Wt)}}set width(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set width' called on an object that is not a valid instance of HTMLTableColElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'width' property on 'HTMLTableColElement': The provided value",globals:Wt});In(Wt);try{nn[on]._reflectSetTheContentAttribute("width",en)}finally{sn(Wt)}}}Object.defineProperties(HTMLTableColElement.prototype,{span:{enumerable:true},align:{enumerable:true},ch:{enumerable:true},chOff:{enumerable:true},vAlign:{enumerable:true},width:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLTableColElement",configurable:true}});cn[un]=HTMLTableColElement;Object.defineProperty(Wt,un,{configurable:true,writable:true,value:HTMLTableColElement})};const mn=en(9553)},22810:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=en(41450);const on=en(98506);const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(48708);const pn="HTMLTableElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLTableElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLTableElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLTableElement extends Wt.HTMLElement{constructor(){return an(Wt,pn,new.target)}createCaption(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'createCaption' called on an object that is not a valid instance of HTMLTableElement.")}return nn.tryWrapperForImpl(en[cn].createCaption())}deleteCaption(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'deleteCaption' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{return en[cn].deleteCaption()}finally{In(Wt)}}createTHead(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'createTHead' called on an object that is not a valid instance of HTMLTableElement.")}return nn.tryWrapperForImpl(en[cn].createTHead())}deleteTHead(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'deleteTHead' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{return en[cn].deleteTHead()}finally{In(Wt)}}createTFoot(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'createTFoot' called on an object that is not a valid instance of HTMLTableElement.")}return nn.tryWrapperForImpl(en[cn].createTFoot())}deleteTFoot(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'deleteTFoot' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{return en[cn].deleteTFoot()}finally{In(Wt)}}createTBody(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'createTBody' called on an object that is not a valid instance of HTMLTableElement.")}return nn.tryWrapperForImpl(en[cn].createTBody())}insertRow(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'insertRow' called on an object that is not a valid instance of HTMLTableElement.")}const an=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["long"](Pt,{context:"Failed to execute 'insertRow' on 'HTMLTableElement': parameter 1",globals:Wt})}else{Pt=-1}an.push(Pt)}return nn.tryWrapperForImpl(en[cn].insertRow(...an))}deleteRow(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'deleteRow' called on an object that is not a valid instance of HTMLTableElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'deleteRow' on 'HTMLTableElement': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["long"](Pt,{context:"Failed to execute 'deleteRow' on 'HTMLTableElement': parameter 1",globals:Wt});an.push(Pt)}rn(Wt);try{return nn[cn].deleteRow(...an)}finally{In(Wt)}}get caption(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get caption' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{return nn.tryWrapperForImpl(en[cn]["caption"])}finally{In(Wt)}}set caption(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set caption' called on an object that is not a valid instance of HTMLTableElement.")}if(en===null||en===undefined){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'caption' property on 'HTMLTableElement': The provided value"})}rn(Wt);try{tn[cn]["caption"]=en}finally{In(Wt)}}get tHead(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get tHead' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{return nn.tryWrapperForImpl(en[cn]["tHead"])}finally{In(Wt)}}set tHead(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set tHead' called on an object that is not a valid instance of HTMLTableElement.")}if(en===null||en===undefined){en=null}else{en=on.convert(Wt,en,{context:"Failed to set the 'tHead' property on 'HTMLTableElement': The provided value"})}rn(Wt);try{tn[cn]["tHead"]=en}finally{In(Wt)}}get tFoot(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get tFoot' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{return nn.tryWrapperForImpl(en[cn]["tFoot"])}finally{In(Wt)}}set tFoot(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set tFoot' called on an object that is not a valid instance of HTMLTableElement.")}if(en===null||en===undefined){en=null}else{en=on.convert(Wt,en,{context:"Failed to set the 'tFoot' property on 'HTMLTableElement': The provided value"})}rn(Wt);try{tn[cn]["tFoot"]=en}finally{In(Wt)}}get tBodies(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get tBodies' called on an object that is not a valid instance of HTMLTableElement.")}return nn.getSameObject(this,"tBodies",(()=>nn.tryWrapperForImpl(en[cn]["tBodies"])))}get rows(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rows' called on an object that is not a valid instance of HTMLTableElement.")}return nn.getSameObject(this,"rows",(()=>nn.tryWrapperForImpl(en[cn]["rows"])))}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{In(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLTableElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLTableElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("align",en)}finally{In(Wt)}}get border(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get border' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("border");return Wt===null?"":Wt}finally{In(Wt)}}set border(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set border' called on an object that is not a valid instance of HTMLTableElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'border' property on 'HTMLTableElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("border",en)}finally{In(Wt)}}get frame(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get frame' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("frame");return Wt===null?"":Wt}finally{In(Wt)}}set frame(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set frame' called on an object that is not a valid instance of HTMLTableElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'frame' property on 'HTMLTableElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("frame",en)}finally{In(Wt)}}get rules(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rules' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("rules");return Wt===null?"":Wt}finally{In(Wt)}}set rules(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set rules' called on an object that is not a valid instance of HTMLTableElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'rules' property on 'HTMLTableElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("rules",en)}finally{In(Wt)}}get summary(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get summary' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("summary");return Wt===null?"":Wt}finally{In(Wt)}}set summary(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set summary' called on an object that is not a valid instance of HTMLTableElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'summary' property on 'HTMLTableElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("summary",en)}finally{In(Wt)}}get width(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get width' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("width");return Wt===null?"":Wt}finally{In(Wt)}}set width(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set width' called on an object that is not a valid instance of HTMLTableElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'width' property on 'HTMLTableElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("width",en)}finally{In(Wt)}}get bgColor(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get bgColor' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("bgcolor");return Wt===null?"":Wt}finally{In(Wt)}}set bgColor(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set bgColor' called on an object that is not a valid instance of HTMLTableElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'bgColor' property on 'HTMLTableElement': The provided value",globals:Wt,treatNullAsEmptyString:true});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("bgcolor",en)}finally{In(Wt)}}get cellPadding(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get cellPadding' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("cellpadding");return Wt===null?"":Wt}finally{In(Wt)}}set cellPadding(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set cellPadding' called on an object that is not a valid instance of HTMLTableElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'cellPadding' property on 'HTMLTableElement': The provided value",globals:Wt,treatNullAsEmptyString:true});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("cellpadding",en)}finally{In(Wt)}}get cellSpacing(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get cellSpacing' called on an object that is not a valid instance of HTMLTableElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("cellspacing");return Wt===null?"":Wt}finally{In(Wt)}}set cellSpacing(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set cellSpacing' called on an object that is not a valid instance of HTMLTableElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'cellSpacing' property on 'HTMLTableElement': The provided value",globals:Wt,treatNullAsEmptyString:true});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("cellspacing",en)}finally{In(Wt)}}}Object.defineProperties(HTMLTableElement.prototype,{createCaption:{enumerable:true},deleteCaption:{enumerable:true},createTHead:{enumerable:true},deleteTHead:{enumerable:true},createTFoot:{enumerable:true},deleteTFoot:{enumerable:true},createTBody:{enumerable:true},insertRow:{enumerable:true},deleteRow:{enumerable:true},caption:{enumerable:true},tHead:{enumerable:true},tFoot:{enumerable:true},tBodies:{enumerable:true},rows:{enumerable:true},align:{enumerable:true},border:{enumerable:true},frame:{enumerable:true},rules:{enumerable:true},summary:{enumerable:true},width:{enumerable:true},bgColor:{enumerable:true},cellPadding:{enumerable:true},cellSpacing:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLTableElement",configurable:true}});dn[pn]=HTMLTableElement;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLTableElement})};const bn=en(9689)},60260:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLTableRowElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLTableRowElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLTableRowElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLTableRowElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}insertCell(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'insertCell' called on an object that is not a valid instance of HTMLTableRowElement.")}const an=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["long"](Pt,{context:"Failed to execute 'insertCell' on 'HTMLTableRowElement': parameter 1",globals:Wt})}else{Pt=-1}an.push(Pt)}return nn.tryWrapperForImpl(en[sn].insertCell(...an))}deleteCell(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'deleteCell' called on an object that is not a valid instance of HTMLTableRowElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'deleteCell' on 'HTMLTableRowElement': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["long"](Pt,{context:"Failed to execute 'deleteCell' on 'HTMLTableRowElement': parameter 1",globals:Wt});an.push(Pt)}rn(Wt);try{return nn[sn].deleteCell(...an)}finally{In(Wt)}}get rowIndex(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rowIndex' called on an object that is not a valid instance of HTMLTableRowElement.")}return en[sn]["rowIndex"]}get sectionRowIndex(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get sectionRowIndex' called on an object that is not a valid instance of HTMLTableRowElement.")}return en[sn]["sectionRowIndex"]}get cells(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get cells' called on an object that is not a valid instance of HTMLTableRowElement.")}return nn.getSameObject(this,"cells",(()=>nn.tryWrapperForImpl(en[sn]["cells"])))}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLTableRowElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{In(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLTableRowElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLTableRowElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("align",en)}finally{In(Wt)}}get ch(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ch' called on an object that is not a valid instance of HTMLTableRowElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("char");return Wt===null?"":Wt}finally{In(Wt)}}set ch(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ch' called on an object that is not a valid instance of HTMLTableRowElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'ch' property on 'HTMLTableRowElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("char",en)}finally{In(Wt)}}get chOff(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get chOff' called on an object that is not a valid instance of HTMLTableRowElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("charoff");return Wt===null?"":Wt}finally{In(Wt)}}set chOff(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set chOff' called on an object that is not a valid instance of HTMLTableRowElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'chOff' property on 'HTMLTableRowElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("charoff",en)}finally{In(Wt)}}get vAlign(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get vAlign' called on an object that is not a valid instance of HTMLTableRowElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("valign");return Wt===null?"":Wt}finally{In(Wt)}}set vAlign(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set vAlign' called on an object that is not a valid instance of HTMLTableRowElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'vAlign' property on 'HTMLTableRowElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("valign",en)}finally{In(Wt)}}get bgColor(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get bgColor' called on an object that is not a valid instance of HTMLTableRowElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("bgcolor");return Wt===null?"":Wt}finally{In(Wt)}}set bgColor(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set bgColor' called on an object that is not a valid instance of HTMLTableRowElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'bgColor' property on 'HTMLTableRowElement': The provided value",globals:Wt,treatNullAsEmptyString:true});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("bgcolor",en)}finally{In(Wt)}}}Object.defineProperties(HTMLTableRowElement.prototype,{insertCell:{enumerable:true},deleteCell:{enumerable:true},rowIndex:{enumerable:true},sectionRowIndex:{enumerable:true},cells:{enumerable:true},align:{enumerable:true},ch:{enumerable:true},chOff:{enumerable:true},vAlign:{enumerable:true},bgColor:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLTableRowElement",configurable:true}});on[dn]=HTMLTableRowElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLTableRowElement})};const pn=en(91119)},98506:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLTableSectionElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLTableSectionElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLTableSectionElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLTableSectionElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}insertRow(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'insertRow' called on an object that is not a valid instance of HTMLTableSectionElement.")}const an=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["long"](Pt,{context:"Failed to execute 'insertRow' on 'HTMLTableSectionElement': parameter 1",globals:Wt})}else{Pt=-1}an.push(Pt)}return nn.tryWrapperForImpl(en[sn].insertRow(...an))}deleteRow(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'deleteRow' called on an object that is not a valid instance of HTMLTableSectionElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'deleteRow' on 'HTMLTableSectionElement': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["long"](Pt,{context:"Failed to execute 'deleteRow' on 'HTMLTableSectionElement': parameter 1",globals:Wt});an.push(Pt)}rn(Wt);try{return nn[sn].deleteRow(...an)}finally{In(Wt)}}get rows(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rows' called on an object that is not a valid instance of HTMLTableSectionElement.")}return nn.getSameObject(this,"rows",(()=>nn.tryWrapperForImpl(en[sn]["rows"])))}get align(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get align' called on an object that is not a valid instance of HTMLTableSectionElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("align");return Wt===null?"":Wt}finally{In(Wt)}}set align(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set align' called on an object that is not a valid instance of HTMLTableSectionElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'align' property on 'HTMLTableSectionElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("align",en)}finally{In(Wt)}}get ch(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ch' called on an object that is not a valid instance of HTMLTableSectionElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("char");return Wt===null?"":Wt}finally{In(Wt)}}set ch(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set ch' called on an object that is not a valid instance of HTMLTableSectionElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'ch' property on 'HTMLTableSectionElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("char",en)}finally{In(Wt)}}get chOff(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get chOff' called on an object that is not a valid instance of HTMLTableSectionElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("charoff");return Wt===null?"":Wt}finally{In(Wt)}}set chOff(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set chOff' called on an object that is not a valid instance of HTMLTableSectionElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'chOff' property on 'HTMLTableSectionElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("charoff",en)}finally{In(Wt)}}get vAlign(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get vAlign' called on an object that is not a valid instance of HTMLTableSectionElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("valign");return Wt===null?"":Wt}finally{In(Wt)}}set vAlign(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set vAlign' called on an object that is not a valid instance of HTMLTableSectionElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'vAlign' property on 'HTMLTableSectionElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("valign",en)}finally{In(Wt)}}}Object.defineProperties(HTMLTableSectionElement.prototype,{insertRow:{enumerable:true},deleteRow:{enumerable:true},rows:{enumerable:true},align:{enumerable:true},ch:{enumerable:true},chOff:{enumerable:true},vAlign:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLTableSectionElement",configurable:true}});on[dn]=HTMLTableSectionElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLTableSectionElement})};const pn=en(55264)},2894:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(48708);const on="HTMLTemplateElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLTemplateElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["HTMLTemplateElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class HTMLTemplateElement extends Wt.HTMLElement{constructor(){return an(Wt,on,new.target)}get content(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get content' called on an object that is not a valid instance of HTMLTemplateElement.")}return nn.tryWrapperForImpl(en[rn]["content"])}}Object.defineProperties(HTMLTemplateElement.prototype,{content:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLTemplateElement",configurable:true}});tn[on]=HTMLTemplateElement;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:HTMLTemplateElement})};const dn=en(86029)},40382:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(74150);const In=en(8348).ceReactionsPreSteps;const sn=en(8348).ceReactionsPostSteps;const on=en(97205).parseNonNegativeInteger;const cn=en(16694).create;const dn=nn.implSymbol;const un=nn.ctorRegistrySymbol;const pn=en(48708);const mn="HTMLTextAreaElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,dn)&&Wt[dn]instanceof Gn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof Gn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLTextAreaElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[un]["HTMLTextAreaElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{pn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,dn,{value:new Gn.implementation(en,tn,an),configurable:true});Wt[dn][nn.wrapperSymbol]=Wt;if(Gn.init){Gn.init(Wt[dn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,dn,{value:Object.create(Gn.implementation.prototype),configurable:true});tn[dn][nn.wrapperSymbol]=tn;if(Gn.init){Gn.init(tn[dn])}return tn[dn]};const bn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>bn.has(Wt)))){return}const un=nn.initCtorRegistry(Wt);class HTMLTextAreaElement extends Wt.HTMLElement{constructor(){return an(Wt,mn,new.target)}checkValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'checkValidity' called on an object that is not a valid instance of HTMLTextAreaElement.")}return en[dn].checkValidity()}reportValidity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'reportValidity' called on an object that is not a valid instance of HTMLTextAreaElement.")}return en[dn].reportValidity()}setCustomValidity(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'setCustomValidity' called on an object that is not a valid instance of HTMLTextAreaElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setCustomValidity' on 'HTMLTextAreaElement': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setCustomValidity' on 'HTMLTextAreaElement': parameter 1",globals:Wt});an.push(Pt)}return nn[dn].setCustomValidity(...an)}select(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'select' called on an object that is not a valid instance of HTMLTextAreaElement.")}return en[dn].select()}setRangeText(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'setRangeText' called on an object that is not a valid instance of HTMLTextAreaElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setRangeText' on 'HTMLTextAreaElement': 1 argument required, but only ${arguments.length} present.`)}const an=[];switch(arguments.length){case 1:{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setRangeText' on 'HTMLTextAreaElement': parameter 1",globals:Wt});an.push(Pt)}break;case 2:throw new Wt.TypeError(`Failed to execute 'setRangeText' on 'HTMLTextAreaElement': only ${arguments.length} arguments present.`);break;case 3:{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setRangeText' on 'HTMLTextAreaElement': parameter 1",globals:Wt});an.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setRangeText' on 'HTMLTextAreaElement': parameter 2",globals:Wt});an.push(Pt)}{let Pt=arguments[2];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setRangeText' on 'HTMLTextAreaElement': parameter 3",globals:Wt});an.push(Pt)}break;default:{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setRangeText' on 'HTMLTextAreaElement': parameter 1",globals:Wt});an.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setRangeText' on 'HTMLTextAreaElement': parameter 2",globals:Wt});an.push(Pt)}{let Pt=arguments[2];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setRangeText' on 'HTMLTextAreaElement': parameter 3",globals:Wt});an.push(Pt)}{let Pt=arguments[3];if(Pt!==undefined){Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'setRangeText' on 'HTMLTextAreaElement': parameter 4"})}else{Pt="preserve"}an.push(Pt)}}return nn[dn].setRangeText(...an)}setSelectionRange(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'setSelectionRange' called on an object that is not a valid instance of HTMLTextAreaElement.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'setSelectionRange' on 'HTMLTextAreaElement': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setSelectionRange' on 'HTMLTextAreaElement': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setSelectionRange' on 'HTMLTextAreaElement': parameter 2",globals:Wt});rn.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setSelectionRange' on 'HTMLTextAreaElement': parameter 3",globals:Wt})}rn.push(Pt)}return an[dn].setSelectionRange(...rn)}get autocomplete(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get autocomplete' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("autocomplete");return Wt===null?"":Wt}finally{sn(Wt)}}set autocomplete(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set autocomplete' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'autocomplete' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{nn[dn]._reflectSetTheContentAttribute("autocomplete",en)}finally{sn(Wt)}}get autofocus(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get autofocus' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{return en[dn]._reflectGetTheContentAttribute("autofocus")!==null}finally{sn(Wt)}}set autofocus(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set autofocus' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["boolean"](en,{context:"Failed to set the 'autofocus' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{if(en){nn[dn]._reflectSetTheContentAttribute("autofocus","")}else{nn[dn]._reflectDeleteTheContentAttribute("autofocus")}}finally{sn(Wt)}}get cols(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get cols' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{let Wt=en[dn]._reflectGetTheContentAttribute("cols");if(Wt!==null){Wt=on(Wt);if(Wt!==null&&Wt>=1&&Wt<=2147483647){return Wt}}return 20}finally{sn(Wt)}}set cols(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set cols' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'cols' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{const Wt=en<=2147483647&&en>=1?en:20;nn[dn]._reflectSetTheContentAttribute("cols",String(Wt))}finally{sn(Wt)}}get dirName(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get dirName' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("dirname");return Wt===null?"":Wt}finally{sn(Wt)}}set dirName(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set dirName' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'dirName' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{nn[dn]._reflectSetTheContentAttribute("dirname",en)}finally{sn(Wt)}}get disabled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get disabled' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{return en[dn]._reflectGetTheContentAttribute("disabled")!==null}finally{sn(Wt)}}set disabled(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set disabled' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["boolean"](en,{context:"Failed to set the 'disabled' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{if(en){nn[dn]._reflectSetTheContentAttribute("disabled","")}else{nn[dn]._reflectDeleteTheContentAttribute("disabled")}}finally{sn(Wt)}}get form(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get form' called on an object that is not a valid instance of HTMLTextAreaElement.")}return nn.tryWrapperForImpl(en[dn]["form"])}get inputMode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get inputMode' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("inputmode");return Wt===null?"":Wt}finally{sn(Wt)}}set inputMode(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set inputMode' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'inputMode' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{nn[dn]._reflectSetTheContentAttribute("inputmode",en)}finally{sn(Wt)}}get maxLength(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get maxLength' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{let Wt=en[dn]._reflectGetTheContentAttribute("maxlength");if(Wt!==null){Wt=on(Wt);if(Wt!==null&&tn.long(Wt)===Wt){return Wt}}return-1}finally{sn(Wt)}}set maxLength(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set maxLength' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["long"](en,{context:"Failed to set the 'maxLength' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{if(en<0){throw cn(Wt,[`The negative value ${en} cannot be set for the maxLength property.`,"IndexSizeError"])}nn[dn]._reflectSetTheContentAttribute("maxlength",String(en))}finally{sn(Wt)}}get minLength(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get minLength' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{let Wt=en[dn]._reflectGetTheContentAttribute("minlength");if(Wt!==null){Wt=on(Wt);if(Wt!==null&&tn.long(Wt)===Wt){return Wt}}return-1}finally{sn(Wt)}}set minLength(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set minLength' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["long"](en,{context:"Failed to set the 'minLength' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{if(en<0){throw cn(Wt,[`The negative value ${en} cannot be set for the minLength property.`,"IndexSizeError"])}nn[dn]._reflectSetTheContentAttribute("minlength",String(en))}finally{sn(Wt)}}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("name");return Wt===null?"":Wt}finally{sn(Wt)}}set name(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set name' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'name' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{nn[dn]._reflectSetTheContentAttribute("name",en)}finally{sn(Wt)}}get placeholder(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get placeholder' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("placeholder");return Wt===null?"":Wt}finally{sn(Wt)}}set placeholder(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set placeholder' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'placeholder' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{nn[dn]._reflectSetTheContentAttribute("placeholder",en)}finally{sn(Wt)}}get readOnly(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get readOnly' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{return en[dn]._reflectGetTheContentAttribute("readonly")!==null}finally{sn(Wt)}}set readOnly(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set readOnly' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["boolean"](en,{context:"Failed to set the 'readOnly' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{if(en){nn[dn]._reflectSetTheContentAttribute("readonly","")}else{nn[dn]._reflectDeleteTheContentAttribute("readonly")}}finally{sn(Wt)}}get required(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get required' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{return en[dn]._reflectGetTheContentAttribute("required")!==null}finally{sn(Wt)}}set required(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set required' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["boolean"](en,{context:"Failed to set the 'required' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{if(en){nn[dn]._reflectSetTheContentAttribute("required","")}else{nn[dn]._reflectDeleteTheContentAttribute("required")}}finally{sn(Wt)}}get rows(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rows' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{let Wt=en[dn]._reflectGetTheContentAttribute("rows");if(Wt!==null){Wt=on(Wt);if(Wt!==null&&Wt>=1&&Wt<=2147483647){return Wt}}return 2}finally{sn(Wt)}}set rows(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set rows' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'rows' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{const Wt=en<=2147483647&&en>=1?en:2;nn[dn]._reflectSetTheContentAttribute("rows",String(Wt))}finally{sn(Wt)}}get wrap(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get wrap' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("wrap");return Wt===null?"":Wt}finally{sn(Wt)}}set wrap(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set wrap' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'wrap' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{nn[dn]._reflectSetTheContentAttribute("wrap",en)}finally{sn(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLTextAreaElement.")}return en[dn]["type"]}get defaultValue(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get defaultValue' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{return en[dn]["defaultValue"]}finally{sn(Wt)}}set defaultValue(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set defaultValue' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'defaultValue' property on 'HTMLTextAreaElement': The provided value",globals:Wt});In(Wt);try{nn[dn]["defaultValue"]=en}finally{sn(Wt)}}get value(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get value' called on an object that is not a valid instance of HTMLTextAreaElement.")}In(Wt);try{return en[dn]["value"]}finally{sn(Wt)}}set value(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set value' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'value' property on 'HTMLTextAreaElement': The provided value",globals:Wt,treatNullAsEmptyString:true});In(Wt);try{nn[dn]["value"]=en}finally{sn(Wt)}}get textLength(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get textLength' called on an object that is not a valid instance of HTMLTextAreaElement.")}return en[dn]["textLength"]}get willValidate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get willValidate' called on an object that is not a valid instance of HTMLTextAreaElement.")}return en[dn]["willValidate"]}get validity(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get validity' called on an object that is not a valid instance of HTMLTextAreaElement.")}return nn.tryWrapperForImpl(en[dn]["validity"])}get validationMessage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get validationMessage' called on an object that is not a valid instance of HTMLTextAreaElement.")}return en[dn]["validationMessage"]}get labels(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get labels' called on an object that is not a valid instance of HTMLTextAreaElement.")}return nn.tryWrapperForImpl(en[dn]["labels"])}get selectionStart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get selectionStart' called on an object that is not a valid instance of HTMLTextAreaElement.")}return en[dn]["selectionStart"]}set selectionStart(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set selectionStart' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'selectionStart' property on 'HTMLTextAreaElement': The provided value",globals:Wt});nn[dn]["selectionStart"]=en}get selectionEnd(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get selectionEnd' called on an object that is not a valid instance of HTMLTextAreaElement.")}return en[dn]["selectionEnd"]}set selectionEnd(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set selectionEnd' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'selectionEnd' property on 'HTMLTextAreaElement': The provided value",globals:Wt});nn[dn]["selectionEnd"]=en}get selectionDirection(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get selectionDirection' called on an object that is not a valid instance of HTMLTextAreaElement.")}return en[dn]["selectionDirection"]}set selectionDirection(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set selectionDirection' called on an object that is not a valid instance of HTMLTextAreaElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'selectionDirection' property on 'HTMLTextAreaElement': The provided value",globals:Wt});nn[dn]["selectionDirection"]=en}}Object.defineProperties(HTMLTextAreaElement.prototype,{checkValidity:{enumerable:true},reportValidity:{enumerable:true},setCustomValidity:{enumerable:true},select:{enumerable:true},setRangeText:{enumerable:true},setSelectionRange:{enumerable:true},autocomplete:{enumerable:true},autofocus:{enumerable:true},cols:{enumerable:true},dirName:{enumerable:true},disabled:{enumerable:true},form:{enumerable:true},inputMode:{enumerable:true},maxLength:{enumerable:true},minLength:{enumerable:true},name:{enumerable:true},placeholder:{enumerable:true},readOnly:{enumerable:true},required:{enumerable:true},rows:{enumerable:true},wrap:{enumerable:true},type:{enumerable:true},defaultValue:{enumerable:true},value:{enumerable:true},textLength:{enumerable:true},willValidate:{enumerable:true},validity:{enumerable:true},validationMessage:{enumerable:true},labels:{enumerable:true},selectionStart:{enumerable:true},selectionEnd:{enumerable:true},selectionDirection:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLTextAreaElement",configurable:true}});un[mn]=HTMLTextAreaElement;Object.defineProperty(Wt,mn,{configurable:true,writable:true,value:HTMLTextAreaElement})};const Gn=en(46285)},67099:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLTimeElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLTimeElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLTimeElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLTimeElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get dateTime(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get dateTime' called on an object that is not a valid instance of HTMLTimeElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("datetime");return Wt===null?"":Wt}finally{In(Wt)}}set dateTime(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set dateTime' called on an object that is not a valid instance of HTMLTimeElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'dateTime' property on 'HTMLTimeElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("datetime",en)}finally{In(Wt)}}}Object.defineProperties(HTMLTimeElement.prototype,{dateTime:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLTimeElement",configurable:true}});on[dn]=HTMLTimeElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLTimeElement})};const pn=en(81914)},84584:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLTitleElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLTitleElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLTitleElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLTitleElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get text(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get text' called on an object that is not a valid instance of HTMLTitleElement.")}rn(Wt);try{return en[sn]["text"]}finally{In(Wt)}}set text(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set text' called on an object that is not a valid instance of HTMLTitleElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'text' property on 'HTMLTitleElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]["text"]=en}finally{In(Wt)}}}Object.defineProperties(HTMLTitleElement.prototype,{text:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLTitleElement",configurable:true}});on[dn]=HTMLTitleElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLTitleElement})};const pn=en(93891)},74203:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=en(30962).parseURLToResultingURLRecord;const on=en(78012).serializeURL;const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(48708);const pn="HTMLTrackElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLTrackElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["HTMLTrackElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class HTMLTrackElement extends Wt.HTMLElement{constructor(){return an(Wt,pn,new.target)}get kind(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get kind' called on an object that is not a valid instance of HTMLTrackElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("kind");return Wt===null?"":Wt}finally{In(Wt)}}set kind(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set kind' called on an object that is not a valid instance of HTMLTrackElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'kind' property on 'HTMLTrackElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("kind",en)}finally{In(Wt)}}get src(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get src' called on an object that is not a valid instance of HTMLTrackElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("src");if(Wt===null){return""}const Pt=sn(Wt,en[cn]._ownerDocument);if(Pt!==null){return on(Pt)}return tn.USVString(Wt)}finally{In(Wt)}}set src(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set src' called on an object that is not a valid instance of HTMLTrackElement.")}en=tn["USVString"](en,{context:"Failed to set the 'src' property on 'HTMLTrackElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("src",en)}finally{In(Wt)}}get srclang(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get srclang' called on an object that is not a valid instance of HTMLTrackElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("srclang");return Wt===null?"":Wt}finally{In(Wt)}}set srclang(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set srclang' called on an object that is not a valid instance of HTMLTrackElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'srclang' property on 'HTMLTrackElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("srclang",en)}finally{In(Wt)}}get label(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get label' called on an object that is not a valid instance of HTMLTrackElement.")}rn(Wt);try{const Wt=en[cn]._reflectGetTheContentAttribute("label");return Wt===null?"":Wt}finally{In(Wt)}}set label(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set label' called on an object that is not a valid instance of HTMLTrackElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'label' property on 'HTMLTrackElement': The provided value",globals:Wt});rn(Wt);try{nn[cn]._reflectSetTheContentAttribute("label",en)}finally{In(Wt)}}get default(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get default' called on an object that is not a valid instance of HTMLTrackElement.")}rn(Wt);try{return en[cn]._reflectGetTheContentAttribute("default")!==null}finally{In(Wt)}}set default(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set default' called on an object that is not a valid instance of HTMLTrackElement.")}en=tn["boolean"](en,{context:"Failed to set the 'default' property on 'HTMLTrackElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[cn]._reflectSetTheContentAttribute("default","")}else{nn[cn]._reflectDeleteTheContentAttribute("default")}}finally{In(Wt)}}get readyState(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get readyState' called on an object that is not a valid instance of HTMLTrackElement.")}return en[cn]["readyState"]}}Object.defineProperties(HTMLTrackElement.prototype,{kind:{enumerable:true},src:{enumerable:true},srclang:{enumerable:true},label:{enumerable:true},default:{enumerable:true},readyState:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLTrackElement",configurable:true},NONE:{value:0,enumerable:true},LOADING:{value:1,enumerable:true},LOADED:{value:2,enumerable:true},ERROR:{value:3,enumerable:true}});Object.defineProperties(HTMLTrackElement,{NONE:{value:0,enumerable:true},LOADING:{value:1,enumerable:true},LOADED:{value:2,enumerable:true},ERROR:{value:3,enumerable:true}});dn[pn]=HTMLTrackElement;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:HTMLTrackElement})};const bn=en(55266)},55295:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(48708);const dn="HTMLUListElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLUListElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["HTMLUListElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class HTMLUListElement extends Wt.HTMLElement{constructor(){return an(Wt,dn,new.target)}get compact(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get compact' called on an object that is not a valid instance of HTMLUListElement.")}rn(Wt);try{return en[sn]._reflectGetTheContentAttribute("compact")!==null}finally{In(Wt)}}set compact(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set compact' called on an object that is not a valid instance of HTMLUListElement.")}en=tn["boolean"](en,{context:"Failed to set the 'compact' property on 'HTMLUListElement': The provided value",globals:Wt});rn(Wt);try{if(en){nn[sn]._reflectSetTheContentAttribute("compact","")}else{nn[sn]._reflectDeleteTheContentAttribute("compact")}}finally{In(Wt)}}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of HTMLUListElement.")}rn(Wt);try{const Wt=en[sn]._reflectGetTheContentAttribute("type");return Wt===null?"":Wt}finally{In(Wt)}}set type(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set type' called on an object that is not a valid instance of HTMLUListElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'type' property on 'HTMLUListElement': The provided value",globals:Wt});rn(Wt);try{nn[sn]._reflectSetTheContentAttribute("type",en)}finally{In(Wt)}}}Object.defineProperties(HTMLUListElement.prototype,{compact:{enumerable:true},type:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLUListElement",configurable:true}});on[dn]=HTMLUListElement;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:HTMLUListElement})};const pn=en(63174)},76312:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In=en(48708);const sn="HTMLUnknownElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLUnknownElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["HTMLUnknownElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{In._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const on=new Set(["Window"]);Pt.install=(Wt,Pt)=>{if(!Pt.some((Wt=>on.has(Wt)))){return}const en=nn.initCtorRegistry(Wt);class HTMLUnknownElement extends Wt.HTMLElement{constructor(){throw new Wt.TypeError("Illegal constructor")}}Object.defineProperties(HTMLUnknownElement.prototype,{[Symbol.toStringTag]:{value:"HTMLUnknownElement",configurable:true}});en[sn]=HTMLUnknownElement;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:HTMLUnknownElement})};const cn=en(64675)},10915:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(84175).HTMLConstructor;const rn=en(97205).parseNonNegativeInteger;const In=en(8348).ceReactionsPreSteps;const sn=en(8348).ceReactionsPostSteps;const on=en(30962).parseURLToResultingURLRecord;const cn=en(78012).serializeURL;const dn=nn.implSymbol;const un=nn.ctorRegistrySymbol;const pn=en(1366);const mn="HTMLVideoElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,dn)&&Wt[dn]instanceof Gn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof Gn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HTMLVideoElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[un]["HTMLVideoElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{pn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,dn,{value:new Gn.implementation(en,tn,an),configurable:true});Wt[dn][nn.wrapperSymbol]=Wt;if(Gn.init){Gn.init(Wt[dn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,dn,{value:Object.create(Gn.implementation.prototype),configurable:true});tn[dn][nn.wrapperSymbol]=tn;if(Gn.init){Gn.init(tn[dn])}return tn[dn]};const bn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>bn.has(Wt)))){return}const un=nn.initCtorRegistry(Wt);class HTMLVideoElement extends Wt.HTMLMediaElement{constructor(){return an(Wt,mn,new.target)}get width(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get width' called on an object that is not a valid instance of HTMLVideoElement.")}In(Wt);try{let Wt=en[dn]._reflectGetTheContentAttribute("width");if(Wt!==null){Wt=rn(Wt);if(Wt!==null&&Wt>=0&&Wt<=2147483647){return Wt}}return 0}finally{sn(Wt)}}set width(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set width' called on an object that is not a valid instance of HTMLVideoElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'width' property on 'HTMLVideoElement': The provided value",globals:Wt});In(Wt);try{const Wt=en<=2147483647&&en>=0?en:0;nn[dn]._reflectSetTheContentAttribute("width",String(Wt))}finally{sn(Wt)}}get height(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get height' called on an object that is not a valid instance of HTMLVideoElement.")}In(Wt);try{let Wt=en[dn]._reflectGetTheContentAttribute("height");if(Wt!==null){Wt=rn(Wt);if(Wt!==null&&Wt>=0&&Wt<=2147483647){return Wt}}return 0}finally{sn(Wt)}}set height(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set height' called on an object that is not a valid instance of HTMLVideoElement.")}en=tn["unsigned long"](en,{context:"Failed to set the 'height' property on 'HTMLVideoElement': The provided value",globals:Wt});In(Wt);try{const Wt=en<=2147483647&&en>=0?en:0;nn[dn]._reflectSetTheContentAttribute("height",String(Wt))}finally{sn(Wt)}}get videoWidth(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get videoWidth' called on an object that is not a valid instance of HTMLVideoElement.")}return en[dn]["videoWidth"]}get videoHeight(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get videoHeight' called on an object that is not a valid instance of HTMLVideoElement.")}return en[dn]["videoHeight"]}get poster(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get poster' called on an object that is not a valid instance of HTMLVideoElement.")}In(Wt);try{const Wt=en[dn]._reflectGetTheContentAttribute("poster");if(Wt===null){return""}const Pt=on(Wt,en[dn]._ownerDocument);if(Pt!==null){return cn(Pt)}return tn.USVString(Wt)}finally{sn(Wt)}}set poster(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set poster' called on an object that is not a valid instance of HTMLVideoElement.")}en=tn["USVString"](en,{context:"Failed to set the 'poster' property on 'HTMLVideoElement': The provided value",globals:Wt});In(Wt);try{nn[dn]._reflectSetTheContentAttribute("poster",en)}finally{sn(Wt)}}get playsInline(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get playsInline' called on an object that is not a valid instance of HTMLVideoElement.")}In(Wt);try{return en[dn]._reflectGetTheContentAttribute("playsinline")!==null}finally{sn(Wt)}}set playsInline(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set playsInline' called on an object that is not a valid instance of HTMLVideoElement.")}en=tn["boolean"](en,{context:"Failed to set the 'playsInline' property on 'HTMLVideoElement': The provided value",globals:Wt});In(Wt);try{if(en){nn[dn]._reflectSetTheContentAttribute("playsinline","")}else{nn[dn]._reflectDeleteTheContentAttribute("playsinline")}}finally{sn(Wt)}}}Object.defineProperties(HTMLVideoElement.prototype,{width:{enumerable:true},height:{enumerable:true},videoWidth:{enumerable:true},videoHeight:{enumerable:true},poster:{enumerable:true},playsInline:{enumerable:true},[Symbol.toStringTag]:{value:"HTMLVideoElement",configurable:true}});un[mn]=HTMLVideoElement;Object.defineProperty(Wt,mn,{configurable:true,writable:true,value:HTMLVideoElement})};const Gn=en(2242)},90863:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(57061);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(94431);const on="HashChangeEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'HashChangeEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["HashChangeEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class HashChangeEvent extends Wt.Event{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'HashChangeEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'HashChangeEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'HashChangeEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}get oldURL(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oldURL' called on an object that is not a valid instance of HashChangeEvent.")}return en[rn]["oldURL"]}get newURL(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get newURL' called on an object that is not a valid instance of HashChangeEvent.")}return en[rn]["newURL"]}}Object.defineProperties(HashChangeEvent.prototype,{oldURL:{enumerable:true},newURL:{enumerable:true},[Symbol.toStringTag]:{value:"HashChangeEvent",configurable:true}});In[on]=HashChangeEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:HashChangeEvent})};const dn=en(44694)},57061:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(31893);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:nn});{const an="newURL";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["USVString"](rn,{context:nn+" has member 'newURL' that",globals:Wt});en[an]=rn}else{en[an]=""}}{const an="oldURL";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["USVString"](rn,{context:nn+" has member 'oldURL' that",globals:Wt});en[an]=rn}else{en[an]=""}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},16605:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(25295);const rn=nn.newObjectInRealm;const In=nn.implSymbol;const sn=nn.ctorRegistrySymbol;const on="Headers";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,In)&&Wt[In]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Headers'.`)};Pt.createDefaultIterator=(Wt,Pt,en)=>{const tn=Wt[sn];const an=tn["Headers Iterator"];const rn=Object.create(an);Object.defineProperty(rn,nn.iterInternalSymbol,{value:{target:Pt,kind:en,index:0},configurable:true});return rn};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[sn]["Headers"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,In,{value:new dn.implementation(en,tn,an),configurable:true});Wt[In][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[In])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,In,{value:Object.create(dn.implementation.prototype),configurable:true});tn[In][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[In])}return tn[In]};const cn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const sn=nn.initCtorRegistry(Wt);class Headers{constructor(){const en=[];{let Pt=arguments[0];if(Pt!==undefined){if(nn.isObject(Pt)){if(Pt[Symbol.iterator]!==undefined){if(!nn.isObject(Pt)){throw new Wt.TypeError("Failed to construct 'Headers': parameter 1"+" sequence"+" is not an iterable object.")}else{const en=[];const an=Pt;for(let Pt of an){if(!nn.isObject(Pt)){throw new Wt.TypeError("Failed to construct 'Headers': parameter 1"+" sequence"+"'s element"+" is not an iterable object.")}else{const en=[];const nn=Pt;for(let Pt of nn){Pt=tn["ByteString"](Pt,{context:"Failed to construct 'Headers': parameter 1"+" sequence"+"'s element"+"'s element",globals:Wt});en.push(Pt)}Pt=en}en.push(Pt)}Pt=en}}else{if(!nn.isObject(Pt)){throw new Wt.TypeError("Failed to construct 'Headers': parameter 1"+" record"+" is not an object.")}else{const en=Object.create(null);for(const nn of Reflect.ownKeys(Pt)){const an=Object.getOwnPropertyDescriptor(Pt,nn);if(an&&an.enumerable){let an=nn;an=tn["ByteString"](an,{context:"Failed to construct 'Headers': parameter 1"+" record"+"'s key",globals:Wt});let rn=Pt[nn];rn=tn["ByteString"](rn,{context:"Failed to construct 'Headers': parameter 1"+" record"+"'s value",globals:Wt});en[an]=rn}}Pt=en}}}else{throw new Wt.TypeError("Failed to construct 'Headers': parameter 1"+" is not of any supported type.")}}en.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,en)}append(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'append' called on an object that is not a valid instance of Headers.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'append' on 'Headers': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["ByteString"](Pt,{context:"Failed to execute 'append' on 'Headers': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=tn["ByteString"](Pt,{context:"Failed to execute 'append' on 'Headers': parameter 2",globals:Wt});rn.push(Pt)}return an[In].append(...rn)}delete(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'delete' called on an object that is not a valid instance of Headers.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'delete' on 'Headers': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["ByteString"](Pt,{context:"Failed to execute 'delete' on 'Headers': parameter 1",globals:Wt});an.push(Pt)}return nn[In].delete(...an)}get(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'get' called on an object that is not a valid instance of Headers.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'get' on 'Headers': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["ByteString"](Pt,{context:"Failed to execute 'get' on 'Headers': parameter 1",globals:Wt});an.push(Pt)}return nn[In].get(...an)}has(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'has' called on an object that is not a valid instance of Headers.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'has' on 'Headers': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["ByteString"](Pt,{context:"Failed to execute 'has' on 'Headers': parameter 1",globals:Wt});an.push(Pt)}return nn[In].has(...an)}set(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'set' called on an object that is not a valid instance of Headers.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'set' on 'Headers': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["ByteString"](Pt,{context:"Failed to execute 'set' on 'Headers': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=tn["ByteString"](Pt,{context:"Failed to execute 'set' on 'Headers': parameter 2",globals:Wt});rn.push(Pt)}return an[In].set(...rn)}keys(){if(!Pt.is(this)){throw new Wt.TypeError("'keys' called on an object that is not a valid instance of Headers.")}return Pt.createDefaultIterator(Wt,this,"key")}values(){if(!Pt.is(this)){throw new Wt.TypeError("'values' called on an object that is not a valid instance of Headers.")}return Pt.createDefaultIterator(Wt,this,"value")}entries(){if(!Pt.is(this)){throw new Wt.TypeError("'entries' called on an object that is not a valid instance of Headers.")}return Pt.createDefaultIterator(Wt,this,"key+value")}forEach(en){if(!Pt.is(this)){throw new Wt.TypeError("'forEach' called on an object that is not a valid instance of Headers.")}if(arguments.length<1){throw new Wt.TypeError("Failed to execute 'forEach' on 'iterable': 1 argument required, but only 0 present.")}en=an.convert(Wt,en,{context:"Failed to execute 'forEach' on 'iterable': The callback provided as parameter 1"});const tn=arguments[1];let rn=Array.from(this[In]);let sn=0;while(sn=on){return rn(Wt,{value:undefined,done:true})}const cn=sn[an];Pt.index=an+1;return rn(Wt,nn.iteratorResult(cn.map(nn.tryWrapperForImpl),tn))}});Object.defineProperty(Wt,on,{configurable:true,writable:true,value:Headers})};const dn=en(77275)},81415:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="History";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'History'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["History"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class History{constructor(){throw new Wt.TypeError("Illegal constructor")}go(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'go' called on an object that is not a valid instance of History.")}const nn=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["long"](Pt,{context:"Failed to execute 'go' on 'History': parameter 1",globals:Wt})}else{Pt=0}nn.push(Pt)}return en[an].go(...nn)}back(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'back' called on an object that is not a valid instance of History.")}return en[an].back()}forward(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'forward' called on an object that is not a valid instance of History.")}return en[an].forward()}pushState(en,nn){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'pushState' called on an object that is not a valid instance of History.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'pushState' on 'History': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["any"](Pt,{context:"Failed to execute 'pushState' on 'History': parameter 1",globals:Wt});In.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'pushState' on 'History': parameter 2",globals:Wt});In.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["USVString"](Pt,{context:"Failed to execute 'pushState' on 'History': parameter 3",globals:Wt})}}else{Pt=null}In.push(Pt)}return rn[an].pushState(...In)}replaceState(en,nn){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'replaceState' called on an object that is not a valid instance of History.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'replaceState' on 'History': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["any"](Pt,{context:"Failed to execute 'replaceState' on 'History': parameter 1",globals:Wt});In.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'replaceState' on 'History': parameter 2",globals:Wt});In.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["USVString"](Pt,{context:"Failed to execute 'replaceState' on 'History': parameter 3",globals:Wt})}}else{Pt=null}In.push(Pt)}return rn[an].replaceState(...In)}get length(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get length' called on an object that is not a valid instance of History.")}return en[an]["length"]}get state(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get state' called on an object that is not a valid instance of History.")}return en[an]["state"]}}Object.defineProperties(History.prototype,{go:{enumerable:true},back:{enumerable:true},forward:{enumerable:true},pushState:{enumerable:true},replaceState:{enumerable:true},length:{enumerable:true},state:{enumerable:true},[Symbol.toStringTag]:{value:"History",configurable:true}});rn[In]=History;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:History})};const on=en(77589)},13979:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(18929);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(38921);const on="InputEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'InputEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["InputEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class InputEvent extends Wt.UIEvent{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'InputEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'InputEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'InputEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}get data(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get data' called on an object that is not a valid instance of InputEvent.")}return en[rn]["data"]}get isComposing(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get isComposing' called on an object that is not a valid instance of InputEvent.")}return en[rn]["isComposing"]}get inputType(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get inputType' called on an object that is not a valid instance of InputEvent.")}return en[rn]["inputType"]}}Object.defineProperties(InputEvent.prototype,{data:{enumerable:true},isComposing:{enumerable:true},inputType:{enumerable:true},[Symbol.toStringTag]:{value:"InputEvent",configurable:true}});In[on]=InputEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:InputEvent})};const dn=en(8010)},18929:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(27019);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:nn});{const an="data";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){if(rn===null||rn===undefined){rn=null}else{rn=tn["DOMString"](rn,{context:nn+" has member 'data' that",globals:Wt})}en[an]=rn}else{en[an]=null}}{const an="inputType";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["DOMString"](rn,{context:nn+" has member 'inputType' that",globals:Wt});en[an]=rn}else{en[an]=""}}{const an="isComposing";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'isComposing' that",globals:Wt});en[an]=rn}else{en[an]=false}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},78628:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(38602);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(38921);const on="KeyboardEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'KeyboardEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["KeyboardEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class KeyboardEvent extends Wt.UIEvent{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'KeyboardEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'KeyboardEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'KeyboardEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}getModifierState(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'getModifierState' called on an object that is not a valid instance of KeyboardEvent.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getModifierState' on 'KeyboardEvent': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getModifierState' on 'KeyboardEvent': parameter 1",globals:Wt});an.push(Pt)}return nn[rn].getModifierState(...an)}initKeyboardEvent(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'initKeyboardEvent' called on an object that is not a valid instance of KeyboardEvent.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'initKeyboardEvent' on 'KeyboardEvent': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initKeyboardEvent' on 'KeyboardEvent': parameter 1",globals:Wt});In.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initKeyboardEvent' on 'KeyboardEvent': parameter 2",globals:Wt})}else{Pt=false}In.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initKeyboardEvent' on 'KeyboardEvent': parameter 3",globals:Wt})}else{Pt=false}In.push(Pt)}{let Wt=arguments[3];if(Wt!==undefined){if(Wt===null||Wt===undefined){Wt=null}else{Wt=nn.tryImplForWrapper(Wt)}}else{Wt=null}In.push(Wt)}{let Pt=arguments[4];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initKeyboardEvent' on 'KeyboardEvent': parameter 5",globals:Wt})}else{Pt=""}In.push(Pt)}{let Pt=arguments[5];if(Pt!==undefined){Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'initKeyboardEvent' on 'KeyboardEvent': parameter 6",globals:Wt})}else{Pt=0}In.push(Pt)}{let Pt=arguments[6];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initKeyboardEvent' on 'KeyboardEvent': parameter 7",globals:Wt})}else{Pt=false}In.push(Pt)}{let Pt=arguments[7];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initKeyboardEvent' on 'KeyboardEvent': parameter 8",globals:Wt})}else{Pt=false}In.push(Pt)}{let Pt=arguments[8];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initKeyboardEvent' on 'KeyboardEvent': parameter 9",globals:Wt})}else{Pt=false}In.push(Pt)}{let Pt=arguments[9];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initKeyboardEvent' on 'KeyboardEvent': parameter 10",globals:Wt})}else{Pt=false}In.push(Pt)}return an[rn].initKeyboardEvent(...In)}get key(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get key' called on an object that is not a valid instance of KeyboardEvent.")}return en[rn]["key"]}get code(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get code' called on an object that is not a valid instance of KeyboardEvent.")}return en[rn]["code"]}get location(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get location' called on an object that is not a valid instance of KeyboardEvent.")}return en[rn]["location"]}get ctrlKey(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ctrlKey' called on an object that is not a valid instance of KeyboardEvent.")}return en[rn]["ctrlKey"]}get shiftKey(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get shiftKey' called on an object that is not a valid instance of KeyboardEvent.")}return en[rn]["shiftKey"]}get altKey(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get altKey' called on an object that is not a valid instance of KeyboardEvent.")}return en[rn]["altKey"]}get metaKey(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get metaKey' called on an object that is not a valid instance of KeyboardEvent.")}return en[rn]["metaKey"]}get repeat(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get repeat' called on an object that is not a valid instance of KeyboardEvent.")}return en[rn]["repeat"]}get isComposing(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get isComposing' called on an object that is not a valid instance of KeyboardEvent.")}return en[rn]["isComposing"]}get charCode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get charCode' called on an object that is not a valid instance of KeyboardEvent.")}return en[rn]["charCode"]}get keyCode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get keyCode' called on an object that is not a valid instance of KeyboardEvent.")}return en[rn]["keyCode"]}}Object.defineProperties(KeyboardEvent.prototype,{getModifierState:{enumerable:true},initKeyboardEvent:{enumerable:true},key:{enumerable:true},code:{enumerable:true},location:{enumerable:true},ctrlKey:{enumerable:true},shiftKey:{enumerable:true},altKey:{enumerable:true},metaKey:{enumerable:true},repeat:{enumerable:true},isComposing:{enumerable:true},charCode:{enumerable:true},keyCode:{enumerable:true},[Symbol.toStringTag]:{value:"KeyboardEvent",configurable:true},DOM_KEY_LOCATION_STANDARD:{value:0,enumerable:true},DOM_KEY_LOCATION_LEFT:{value:1,enumerable:true},DOM_KEY_LOCATION_RIGHT:{value:2,enumerable:true},DOM_KEY_LOCATION_NUMPAD:{value:3,enumerable:true}});Object.defineProperties(KeyboardEvent,{DOM_KEY_LOCATION_STANDARD:{value:0,enumerable:true},DOM_KEY_LOCATION_LEFT:{value:1,enumerable:true},DOM_KEY_LOCATION_RIGHT:{value:2,enumerable:true},DOM_KEY_LOCATION_NUMPAD:{value:3,enumerable:true}});In[on]=KeyboardEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:KeyboardEvent})};const dn=en(26839)},38602:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(6588);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:nn});{const an="charCode";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unsigned long"](rn,{context:nn+" has member 'charCode' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="code";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["DOMString"](rn,{context:nn+" has member 'code' that",globals:Wt});en[an]=rn}else{en[an]=""}}{const an="isComposing";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'isComposing' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="key";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["DOMString"](rn,{context:nn+" has member 'key' that",globals:Wt});en[an]=rn}else{en[an]=""}}{const an="keyCode";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unsigned long"](rn,{context:nn+" has member 'keyCode' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="location";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unsigned long"](rn,{context:nn+" has member 'location' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="repeat";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'repeat' that",globals:Wt});en[an]=rn}else{en[an]=false}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},79972:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="Location";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Location'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["Location"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};function getUnforgeables(Wt){let en=sn.get(Wt);if(en===undefined){en=Object.create(null);nn.define(en,{assign(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'assign' called on an object that is not a valid instance of Location.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'assign' on 'Location': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'assign' on 'Location': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].assign(...rn)},replace(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'replace' called on an object that is not a valid instance of Location.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'replace' on 'Location': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'replace' on 'Location': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].replace(...rn)},reload(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'reload' called on an object that is not a valid instance of Location.")}return en[an].reload()},get href(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get href' called on an object that is not a valid instance of Location.")}return en[an]["href"]},set href(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set href' called on an object that is not a valid instance of Location.")}en=tn["USVString"](en,{context:"Failed to set the 'href' property on 'Location': The provided value",globals:Wt});nn[an]["href"]=en},toString(){const en=this;if(!Pt.is(en)){throw new Wt.TypeError("'toString' called on an object that is not a valid instance of Location.")}return en[an]["href"]},get origin(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get origin' called on an object that is not a valid instance of Location.")}return en[an]["origin"]},get protocol(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get protocol' called on an object that is not a valid instance of Location.")}return en[an]["protocol"]},set protocol(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set protocol' called on an object that is not a valid instance of Location.")}en=tn["USVString"](en,{context:"Failed to set the 'protocol' property on 'Location': The provided value",globals:Wt});nn[an]["protocol"]=en},get host(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get host' called on an object that is not a valid instance of Location.")}return en[an]["host"]},set host(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set host' called on an object that is not a valid instance of Location.")}en=tn["USVString"](en,{context:"Failed to set the 'host' property on 'Location': The provided value",globals:Wt});nn[an]["host"]=en},get hostname(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hostname' called on an object that is not a valid instance of Location.")}return en[an]["hostname"]},set hostname(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set hostname' called on an object that is not a valid instance of Location.")}en=tn["USVString"](en,{context:"Failed to set the 'hostname' property on 'Location': The provided value",globals:Wt});nn[an]["hostname"]=en},get port(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get port' called on an object that is not a valid instance of Location.")}return en[an]["port"]},set port(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set port' called on an object that is not a valid instance of Location.")}en=tn["USVString"](en,{context:"Failed to set the 'port' property on 'Location': The provided value",globals:Wt});nn[an]["port"]=en},get pathname(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get pathname' called on an object that is not a valid instance of Location.")}return en[an]["pathname"]},set pathname(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set pathname' called on an object that is not a valid instance of Location.")}en=tn["USVString"](en,{context:"Failed to set the 'pathname' property on 'Location': The provided value",globals:Wt});nn[an]["pathname"]=en},get search(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get search' called on an object that is not a valid instance of Location.")}return en[an]["search"]},set search(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set search' called on an object that is not a valid instance of Location.")}en=tn["USVString"](en,{context:"Failed to set the 'search' property on 'Location': The provided value",globals:Wt});nn[an]["search"]=en},get hash(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hash' called on an object that is not a valid instance of Location.")}return en[an]["hash"]},set hash(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set hash' called on an object that is not a valid instance of Location.")}en=tn["USVString"](en,{context:"Failed to set the 'hash' property on 'Location': The provided value",globals:Wt});nn[an]["hash"]=en}});Object.defineProperties(en,{assign:{configurable:false,writable:false},replace:{configurable:false,writable:false},reload:{configurable:false,writable:false},href:{configurable:false},toString:{configurable:false,writable:false},origin:{configurable:false},protocol:{configurable:false},host:{configurable:false},hostname:{configurable:false},port:{configurable:false},pathname:{configurable:false},search:{configurable:false},hash:{configurable:false}});sn.set(Wt,en)}return en}Pt._internalSetup=(Wt,Pt)=>{nn.define(Wt,getUnforgeables(Pt))};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const sn=new WeakMap;const on=new Set(["Window"]);Pt.install=(Wt,Pt)=>{if(!Pt.some((Wt=>on.has(Wt)))){return}const en=nn.initCtorRegistry(Wt);class Location{constructor(){throw new Wt.TypeError("Illegal constructor")}}Object.defineProperties(Location.prototype,{[Symbol.toStringTag]:{value:"Location",configurable:true}});en[In]=Location;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:Location})};const cn=en(88666)},74374:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(83688);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(94431);const on="MessageEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'MessageEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["MessageEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window","Worker","AudioWorklet"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class MessageEvent extends Wt.Event{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'MessageEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'MessageEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'MessageEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}initMessageEvent(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'initMessageEvent' called on an object that is not a valid instance of MessageEvent.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'initMessageEvent' on 'MessageEvent': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initMessageEvent' on 'MessageEvent': parameter 1",globals:Wt});In.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initMessageEvent' on 'MessageEvent': parameter 2",globals:Wt})}else{Pt=false}In.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initMessageEvent' on 'MessageEvent': parameter 3",globals:Wt})}else{Pt=false}In.push(Pt)}{let Pt=arguments[3];if(Pt!==undefined){Pt=tn["any"](Pt,{context:"Failed to execute 'initMessageEvent' on 'MessageEvent': parameter 4",globals:Wt})}else{Pt=null}In.push(Pt)}{let Pt=arguments[4];if(Pt!==undefined){Pt=tn["USVString"](Pt,{context:"Failed to execute 'initMessageEvent' on 'MessageEvent': parameter 5",globals:Wt})}else{Pt=""}In.push(Pt)}{let Pt=arguments[5];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initMessageEvent' on 'MessageEvent': parameter 6",globals:Wt})}else{Pt=""}In.push(Pt)}{let Wt=arguments[6];if(Wt!==undefined){if(Wt===null||Wt===undefined){Wt=null}else{Wt=nn.tryImplForWrapper(Wt)}}else{Wt=null}In.push(Wt)}{let Pt=arguments[7];if(Pt!==undefined){if(!nn.isObject(Pt)){throw new Wt.TypeError("Failed to execute 'initMessageEvent' on 'MessageEvent': parameter 8"+" is not an iterable object.")}else{const Wt=[];const en=Pt;for(let Pt of en){Pt=nn.tryImplForWrapper(Pt);Wt.push(Pt)}Pt=Wt}}else{Pt=[]}In.push(Pt)}return an[rn].initMessageEvent(...In)}get data(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get data' called on an object that is not a valid instance of MessageEvent.")}return en[rn]["data"]}get origin(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get origin' called on an object that is not a valid instance of MessageEvent.")}return en[rn]["origin"]}get lastEventId(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get lastEventId' called on an object that is not a valid instance of MessageEvent.")}return en[rn]["lastEventId"]}get source(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get source' called on an object that is not a valid instance of MessageEvent.")}return nn.tryWrapperForImpl(en[rn]["source"])}get ports(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ports' called on an object that is not a valid instance of MessageEvent.")}return nn.tryWrapperForImpl(en[rn]["ports"])}}Object.defineProperties(MessageEvent.prototype,{initMessageEvent:{enumerable:true},data:{enumerable:true},origin:{enumerable:true},lastEventId:{enumerable:true},source:{enumerable:true},ports:{enumerable:true},[Symbol.toStringTag]:{value:"MessageEvent",configurable:true}});In[on]=MessageEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:MessageEvent})};const dn=en(44613)},83688:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(31893);Pt._convertInherit=(Wt,Pt,en,{context:rn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:rn});{const nn="data";let an=Pt===undefined||Pt===null?undefined:Pt[nn];if(an!==undefined){an=tn["any"](an,{context:rn+" has member 'data' that",globals:Wt});en[nn]=an}else{en[nn]=null}}{const nn="lastEventId";let an=Pt===undefined||Pt===null?undefined:Pt[nn];if(an!==undefined){an=tn["DOMString"](an,{context:rn+" has member 'lastEventId' that",globals:Wt});en[nn]=an}else{en[nn]=""}}{const nn="origin";let an=Pt===undefined||Pt===null?undefined:Pt[nn];if(an!==undefined){an=tn["USVString"](an,{context:rn+" has member 'origin' that",globals:Wt});en[nn]=an}else{en[nn]=""}}{const tn="ports";let an=Pt===undefined||Pt===null?undefined:Pt[tn];if(an!==undefined){if(!nn.isObject(an)){throw new Wt.TypeError(rn+" has member 'ports' that"+" is not an iterable object.")}else{const Wt=[];const Pt=an;for(let en of Pt){en=nn.tryImplForWrapper(en);Wt.push(en)}an=Wt}en[tn]=an}else{en[tn]=[]}}{const Wt="source";let tn=Pt===undefined||Pt===null?undefined:Pt[Wt];if(tn!==undefined){if(tn===null||tn===undefined){tn=null}else{tn=nn.tryImplForWrapper(tn)}en[Wt]=tn}else{en[Wt]=null}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},30199:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="MimeType";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'MimeType'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["MimeType"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class MimeType{constructor(){throw new Wt.TypeError("Illegal constructor")}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of MimeType.")}return en[an]["type"]}get description(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get description' called on an object that is not a valid instance of MimeType.")}return en[an]["description"]}get suffixes(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get suffixes' called on an object that is not a valid instance of MimeType.")}return en[an]["suffixes"]}get enabledPlugin(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get enabledPlugin' called on an object that is not a valid instance of MimeType.")}return en[an]["enabledPlugin"]}}Object.defineProperties(MimeType.prototype,{type:{enumerable:true},description:{enumerable:true},suffixes:{enumerable:true},enabledPlugin:{enumerable:true},[Symbol.toStringTag]:{value:"MimeType",configurable:true}});tn[In]=MimeType;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:MimeType})};const on=en(87442)},41086:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="MimeTypeArray";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'MimeTypeArray'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["MimeTypeArray"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=on.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);on.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt=makeProxy(Wt,en);Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class MimeTypeArray{constructor(){throw new Wt.TypeError("Illegal constructor")}item(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'item' called on an object that is not a valid instance of MimeTypeArray.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'item' on 'MimeTypeArray': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'item' on 'MimeTypeArray': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].item(...rn)}namedItem(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'namedItem' called on an object that is not a valid instance of MimeTypeArray.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'namedItem' on 'MimeTypeArray': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'namedItem' on 'MimeTypeArray': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].namedItem(...rn)}get length(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get length' called on an object that is not a valid instance of MimeTypeArray.")}return en[an]["length"]}}Object.defineProperties(MimeTypeArray.prototype,{item:{enumerable:true},namedItem:{enumerable:true},length:{enumerable:true},[Symbol.toStringTag]:{value:"MimeTypeArray",configurable:true},[Symbol.iterator]:{value:Wt.Array.prototype[Symbol.iterator],configurable:true,writable:true}});rn[In]=MimeTypeArray;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:MimeTypeArray})};const on=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[an][nn.supportedPropertyIndices]){Pt.add(`${en}`)}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;if(nn.isArrayIndexPropName(Pt)){const tn=Pt>>>0;const rn=Wt[an].item(tn);if(rn!==null){return{writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(rn)}}en=true}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,tn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,tn)}if(Wt[an][nn.wrapperSymbol]===tn){const Wt=this._globalObject}let rn;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;const tn=Wt[an].item(en);if(tn!==null){rn={writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}}if(rn===undefined){rn=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(rn===undefined){const nn=Reflect.getPrototypeOf(Wt);if(nn!==null){return Reflect.set(nn,Pt,en,tn)}rn={writable:true,enumerable:true,configurable:true,value:undefined}}if(!rn.writable){return false}if(!nn.isObject(tn)){return false}const In=Reflect.getOwnPropertyDescriptor(tn,Pt);let sn;if(In!==undefined){if(In.get||In.set){return false}if(!In.writable){return false}sn={value:en}}else{sn={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(tn,Pt,sn)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){return false}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;return!(Wt[an].item(en)!==null)}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const cn=en(1233)},8002:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(5316);const rn=en(29122);const In=nn.implSymbol;const sn=nn.ctorRegistrySymbol;const on=en(38921);const cn="MouseEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,In)&&Wt[In]instanceof un.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof un.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'MouseEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[sn]["MouseEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{on._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,In,{value:new un.implementation(en,tn,an),configurable:true});Wt[In][nn.wrapperSymbol]=Wt;if(un.init){un.init(Wt[In])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,In,{value:Object.create(un.implementation.prototype),configurable:true});tn[In][nn.wrapperSymbol]=tn;if(un.init){un.init(tn[In])}return tn[In]};const dn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>dn.has(Wt)))){return}const sn=nn.initCtorRegistry(Wt);class MouseEvent extends Wt.UIEvent{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'MouseEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'MouseEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'MouseEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}getModifierState(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'getModifierState' called on an object that is not a valid instance of MouseEvent.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getModifierState' on 'MouseEvent': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getModifierState' on 'MouseEvent': parameter 1",globals:Wt});an.push(Pt)}return nn[In].getModifierState(...an)}initMouseEvent(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'initMouseEvent' called on an object that is not a valid instance of MouseEvent.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'initMouseEvent' on 'MouseEvent': 1 argument required, but only ${arguments.length} present.`)}const sn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initMouseEvent' on 'MouseEvent': parameter 1",globals:Wt});sn.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initMouseEvent' on 'MouseEvent': parameter 2",globals:Wt})}else{Pt=false}sn.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initMouseEvent' on 'MouseEvent': parameter 3",globals:Wt})}else{Pt=false}sn.push(Pt)}{let Wt=arguments[3];if(Wt!==undefined){if(Wt===null||Wt===undefined){Wt=null}else{Wt=nn.tryImplForWrapper(Wt)}}else{Wt=null}sn.push(Wt)}{let Pt=arguments[4];if(Pt!==undefined){Pt=tn["long"](Pt,{context:"Failed to execute 'initMouseEvent' on 'MouseEvent': parameter 5",globals:Wt})}else{Pt=0}sn.push(Pt)}{let Pt=arguments[5];if(Pt!==undefined){Pt=tn["long"](Pt,{context:"Failed to execute 'initMouseEvent' on 'MouseEvent': parameter 6",globals:Wt})}else{Pt=0}sn.push(Pt)}{let Pt=arguments[6];if(Pt!==undefined){Pt=tn["long"](Pt,{context:"Failed to execute 'initMouseEvent' on 'MouseEvent': parameter 7",globals:Wt})}else{Pt=0}sn.push(Pt)}{let Pt=arguments[7];if(Pt!==undefined){Pt=tn["long"](Pt,{context:"Failed to execute 'initMouseEvent' on 'MouseEvent': parameter 8",globals:Wt})}else{Pt=0}sn.push(Pt)}{let Pt=arguments[8];if(Pt!==undefined){Pt=tn["long"](Pt,{context:"Failed to execute 'initMouseEvent' on 'MouseEvent': parameter 9",globals:Wt})}else{Pt=0}sn.push(Pt)}{let Pt=arguments[9];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initMouseEvent' on 'MouseEvent': parameter 10",globals:Wt})}else{Pt=0}sn.push(Pt)}{let Pt=arguments[10];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initMouseEvent' on 'MouseEvent': parameter 11",globals:Wt})}else{Pt=0}sn.push(Pt)}{let Pt=arguments[11];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initMouseEvent' on 'MouseEvent': parameter 12",globals:Wt})}else{Pt=0}sn.push(Pt)}{let Pt=arguments[12];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initMouseEvent' on 'MouseEvent': parameter 13",globals:Wt})}else{Pt=0}sn.push(Pt)}{let Pt=arguments[13];if(Pt!==undefined){Pt=tn["short"](Pt,{context:"Failed to execute 'initMouseEvent' on 'MouseEvent': parameter 14",globals:Wt})}else{Pt=0}sn.push(Pt)}{let Pt=arguments[14];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'initMouseEvent' on 'MouseEvent': parameter 15"})}}else{Pt=null}sn.push(Pt)}return an[In].initMouseEvent(...sn)}get screenX(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get screenX' called on an object that is not a valid instance of MouseEvent.")}return en[In]["screenX"]}get screenY(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get screenY' called on an object that is not a valid instance of MouseEvent.")}return en[In]["screenY"]}get clientX(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get clientX' called on an object that is not a valid instance of MouseEvent.")}return en[In]["clientX"]}get clientY(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get clientY' called on an object that is not a valid instance of MouseEvent.")}return en[In]["clientY"]}get ctrlKey(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ctrlKey' called on an object that is not a valid instance of MouseEvent.")}return en[In]["ctrlKey"]}get shiftKey(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get shiftKey' called on an object that is not a valid instance of MouseEvent.")}return en[In]["shiftKey"]}get altKey(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get altKey' called on an object that is not a valid instance of MouseEvent.")}return en[In]["altKey"]}get metaKey(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get metaKey' called on an object that is not a valid instance of MouseEvent.")}return en[In]["metaKey"]}get button(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get button' called on an object that is not a valid instance of MouseEvent.")}return en[In]["button"]}get buttons(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get buttons' called on an object that is not a valid instance of MouseEvent.")}return en[In]["buttons"]}get relatedTarget(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get relatedTarget' called on an object that is not a valid instance of MouseEvent.")}return nn.tryWrapperForImpl(en[In]["relatedTarget"])}get pageX(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get pageX' called on an object that is not a valid instance of MouseEvent.")}return en[In]["pageX"]}get pageY(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get pageY' called on an object that is not a valid instance of MouseEvent.")}return en[In]["pageY"]}get x(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get x' called on an object that is not a valid instance of MouseEvent.")}return en[In]["x"]}get y(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get y' called on an object that is not a valid instance of MouseEvent.")}return en[In]["y"]}get offsetX(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get offsetX' called on an object that is not a valid instance of MouseEvent.")}return en[In]["offsetX"]}get offsetY(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get offsetY' called on an object that is not a valid instance of MouseEvent.")}return en[In]["offsetY"]}}Object.defineProperties(MouseEvent.prototype,{getModifierState:{enumerable:true},initMouseEvent:{enumerable:true},screenX:{enumerable:true},screenY:{enumerable:true},clientX:{enumerable:true},clientY:{enumerable:true},ctrlKey:{enumerable:true},shiftKey:{enumerable:true},altKey:{enumerable:true},metaKey:{enumerable:true},button:{enumerable:true},buttons:{enumerable:true},relatedTarget:{enumerable:true},pageX:{enumerable:true},pageY:{enumerable:true},x:{enumerable:true},y:{enumerable:true},offsetX:{enumerable:true},offsetY:{enumerable:true},[Symbol.toStringTag]:{value:"MouseEvent",configurable:true}});sn[cn]=MouseEvent;Object.defineProperty(Wt,cn,{configurable:true,writable:true,value:MouseEvent})};const un=en(95889)},5316:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(29122);const rn=en(6588);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{rn._convertInherit(Wt,Pt,en,{context:nn});{const an="button";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["short"](rn,{context:nn+" has member 'button' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="buttons";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unsigned short"](rn,{context:nn+" has member 'buttons' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="clientX";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["long"](rn,{context:nn+" has member 'clientX' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="clientX";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["double"](rn,{context:nn+" has member 'clientX' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="clientY";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["long"](rn,{context:nn+" has member 'clientY' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="clientY";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["double"](rn,{context:nn+" has member 'clientY' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const tn="relatedTarget";let rn=Pt===undefined||Pt===null?undefined:Pt[tn];if(rn!==undefined){if(rn===null||rn===undefined){rn=null}else{rn=an.convert(Wt,rn,{context:nn+" has member 'relatedTarget' that"})}en[tn]=rn}else{en[tn]=null}}{const an="screenX";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["long"](rn,{context:nn+" has member 'screenX' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="screenX";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["double"](rn,{context:nn+" has member 'screenX' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="screenY";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["long"](rn,{context:nn+" has member 'screenY' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="screenY";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["double"](rn,{context:nn+" has member 'screenY' that",globals:Wt});en[an]=rn}else{en[an]=0}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},73735:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt.convert=(Wt,Pt,{context:en="The provided value"}={})=>{if(typeof Pt!=="function"){throw new Wt.TypeError(en+" is not a function")}function invokeTheCallbackFunction(Wt,en){const tn=nn.tryWrapperForImpl(this);let an;Wt=nn.tryWrapperForImpl(Wt);en=nn.tryWrapperForImpl(en);an=Reflect.apply(Pt,tn,[Wt,en])}invokeTheCallbackFunction.construct=(Wt,en)=>{Wt=nn.tryWrapperForImpl(Wt);en=nn.tryWrapperForImpl(en);let tn=Reflect.construct(Pt,[Wt,en])};invokeTheCallbackFunction[nn.wrapperSymbol]=Pt;invokeTheCallbackFunction.objectReference=Pt;return invokeTheCallbackFunction}},90314:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(73735);const rn=en(24171);const In=en(33308);const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn="MutationObserver";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof un.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof un.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'MutationObserver'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["MutationObserver"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new un.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(un.init){un.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(un.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(un.init){un.init(tn[sn])}return tn[sn]};const dn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>dn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class MutationObserver{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'MutationObserver': 1 argument required, but only ${arguments.length} present.`)}const tn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'MutationObserver': parameter 1"});tn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,tn)}observe(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'observe' called on an object that is not a valid instance of MutationObserver.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'observe' on 'MutationObserver': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'observe' on 'MutationObserver': parameter 1"});nn.push(Pt)}{let Pt=arguments[1];Pt=In.convert(Wt,Pt,{context:"Failed to execute 'observe' on 'MutationObserver': parameter 2"});nn.push(Pt)}return tn[sn].observe(...nn)}disconnect(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'disconnect' called on an object that is not a valid instance of MutationObserver.")}return en[sn].disconnect()}takeRecords(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'takeRecords' called on an object that is not a valid instance of MutationObserver.")}return nn.tryWrapperForImpl(en[sn].takeRecords())}}Object.defineProperties(MutationObserver.prototype,{observe:{enumerable:true},disconnect:{enumerable:true},takeRecords:{enumerable:true},[Symbol.toStringTag]:{value:"MutationObserver",configurable:true}});tn[cn]=MutationObserver;Object.defineProperty(Wt,cn,{configurable:true,writable:true,value:MutationObserver})};const un=en(26208)},33308:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt._convertInherit=(Wt,Pt,en,{context:an="The provided value"}={})=>{{const rn="attributeFilter";let In=Pt===undefined||Pt===null?undefined:Pt[rn];if(In!==undefined){if(!nn.isObject(In)){throw new Wt.TypeError(an+" has member 'attributeFilter' that"+" is not an iterable object.")}else{const Pt=[];const en=In;for(let nn of en){nn=tn["DOMString"](nn,{context:an+" has member 'attributeFilter' that"+"'s element",globals:Wt});Pt.push(nn)}In=Pt}en[rn]=In}}{const nn="attributeOldValue";let rn=Pt===undefined||Pt===null?undefined:Pt[nn];if(rn!==undefined){rn=tn["boolean"](rn,{context:an+" has member 'attributeOldValue' that",globals:Wt});en[nn]=rn}}{const nn="attributes";let rn=Pt===undefined||Pt===null?undefined:Pt[nn];if(rn!==undefined){rn=tn["boolean"](rn,{context:an+" has member 'attributes' that",globals:Wt});en[nn]=rn}}{const nn="characterData";let rn=Pt===undefined||Pt===null?undefined:Pt[nn];if(rn!==undefined){rn=tn["boolean"](rn,{context:an+" has member 'characterData' that",globals:Wt});en[nn]=rn}}{const nn="characterDataOldValue";let rn=Pt===undefined||Pt===null?undefined:Pt[nn];if(rn!==undefined){rn=tn["boolean"](rn,{context:an+" has member 'characterDataOldValue' that",globals:Wt});en[nn]=rn}}{const nn="childList";let rn=Pt===undefined||Pt===null?undefined:Pt[nn];if(rn!==undefined){rn=tn["boolean"](rn,{context:an+" has member 'childList' that",globals:Wt});en[nn]=rn}else{en[nn]=false}}{const nn="subtree";let rn=Pt===undefined||Pt===null?undefined:Pt[nn];if(rn!==undefined){rn=tn["boolean"](rn,{context:an+" has member 'subtree' that",globals:Wt});en[nn]=rn}else{en[nn]=false}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},84761:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="MutationRecord";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'MutationRecord'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["MutationRecord"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class MutationRecord{constructor(){throw new Wt.TypeError("Illegal constructor")}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of MutationRecord.")}return en[an]["type"]}get target(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get target' called on an object that is not a valid instance of MutationRecord.")}return nn.getSameObject(this,"target",(()=>nn.tryWrapperForImpl(en[an]["target"])))}get addedNodes(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get addedNodes' called on an object that is not a valid instance of MutationRecord.")}return nn.getSameObject(this,"addedNodes",(()=>nn.tryWrapperForImpl(en[an]["addedNodes"])))}get removedNodes(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get removedNodes' called on an object that is not a valid instance of MutationRecord.")}return nn.getSameObject(this,"removedNodes",(()=>nn.tryWrapperForImpl(en[an]["removedNodes"])))}get previousSibling(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get previousSibling' called on an object that is not a valid instance of MutationRecord.")}return nn.tryWrapperForImpl(en[an]["previousSibling"])}get nextSibling(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get nextSibling' called on an object that is not a valid instance of MutationRecord.")}return nn.tryWrapperForImpl(en[an]["nextSibling"])}get attributeName(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get attributeName' called on an object that is not a valid instance of MutationRecord.")}return en[an]["attributeName"]}get attributeNamespace(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get attributeNamespace' called on an object that is not a valid instance of MutationRecord.")}return en[an]["attributeNamespace"]}get oldValue(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oldValue' called on an object that is not a valid instance of MutationRecord.")}return en[an]["oldValue"]}}Object.defineProperties(MutationRecord.prototype,{type:{enumerable:true},target:{enumerable:true},addedNodes:{enumerable:true},removedNodes:{enumerable:true},previousSibling:{enumerable:true},nextSibling:{enumerable:true},attributeName:{enumerable:true},attributeNamespace:{enumerable:true},oldValue:{enumerable:true},[Symbol.toStringTag]:{value:"MutationRecord",configurable:true}});tn[In]=MutationRecord;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:MutationRecord})};const on=en(86637)},89762:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(17552);const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn="NamedNodeMap";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'NamedNodeMap'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["NamedNodeMap"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=un.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);un.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt=makeProxy(Wt,en);Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const dn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>dn.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class NamedNodeMap{constructor(){throw new Wt.TypeError("Illegal constructor")}item(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'item' called on an object that is not a valid instance of NamedNodeMap.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'item' on 'NamedNodeMap': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'item' on 'NamedNodeMap': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[sn].item(...rn))}getNamedItem(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'getNamedItem' called on an object that is not a valid instance of NamedNodeMap.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getNamedItem' on 'NamedNodeMap': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getNamedItem' on 'NamedNodeMap': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[sn].getNamedItem(...rn))}getNamedItemNS(en,an){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'getNamedItemNS' called on an object that is not a valid instance of NamedNodeMap.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'getNamedItemNS' on 'NamedNodeMap': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getNamedItemNS' on 'NamedNodeMap': parameter 1",globals:Wt})}In.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getNamedItemNS' on 'NamedNodeMap': parameter 2",globals:Wt});In.push(Pt)}return nn.tryWrapperForImpl(rn[sn].getNamedItemNS(...In))}setNamedItem(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'setNamedItem' called on an object that is not a valid instance of NamedNodeMap.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setNamedItem' on 'NamedNodeMap': 1 argument required, but only ${arguments.length} present.`)}const on=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'setNamedItem' on 'NamedNodeMap': parameter 1"});on.push(Pt)}rn(Wt);try{return nn.tryWrapperForImpl(tn[sn].setNamedItem(...on))}finally{In(Wt)}}setNamedItemNS(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'setNamedItemNS' called on an object that is not a valid instance of NamedNodeMap.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setNamedItemNS' on 'NamedNodeMap': 1 argument required, but only ${arguments.length} present.`)}const on=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'setNamedItemNS' on 'NamedNodeMap': parameter 1"});on.push(Pt)}rn(Wt);try{return nn.tryWrapperForImpl(tn[sn].setNamedItemNS(...on))}finally{In(Wt)}}removeNamedItem(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'removeNamedItem' called on an object that is not a valid instance of NamedNodeMap.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'removeNamedItem' on 'NamedNodeMap': 1 argument required, but only ${arguments.length} present.`)}const on=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'removeNamedItem' on 'NamedNodeMap': parameter 1",globals:Wt});on.push(Pt)}rn(Wt);try{return nn.tryWrapperForImpl(an[sn].removeNamedItem(...on))}finally{In(Wt)}}removeNamedItemNS(en,an){const on=this!==null&&this!==undefined?this:Wt;if(!Pt.is(on)){throw new Wt.TypeError("'removeNamedItemNS' called on an object that is not a valid instance of NamedNodeMap.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'removeNamedItemNS' on 'NamedNodeMap': 2 arguments required, but only ${arguments.length} present.`)}const cn=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'removeNamedItemNS' on 'NamedNodeMap': parameter 1",globals:Wt})}cn.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'removeNamedItemNS' on 'NamedNodeMap': parameter 2",globals:Wt});cn.push(Pt)}rn(Wt);try{return nn.tryWrapperForImpl(on[sn].removeNamedItemNS(...cn))}finally{In(Wt)}}get length(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get length' called on an object that is not a valid instance of NamedNodeMap.")}return en[sn]["length"]}}Object.defineProperties(NamedNodeMap.prototype,{item:{enumerable:true},getNamedItem:{enumerable:true},getNamedItemNS:{enumerable:true},setNamedItem:{enumerable:true},setNamedItemNS:{enumerable:true},removeNamedItem:{enumerable:true},removeNamedItemNS:{enumerable:true},length:{enumerable:true},[Symbol.toStringTag]:{value:"NamedNodeMap",configurable:true},[Symbol.iterator]:{value:Wt.Array.prototype[Symbol.iterator],configurable:true,writable:true}});on[cn]=NamedNodeMap;Object.defineProperty(Wt,cn,{configurable:true,writable:true,value:NamedNodeMap})};const un=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[sn][nn.supportedPropertyIndices]){Pt.add(`${en}`)}for(const en of Wt[sn][nn.supportedPropertyNames]){if(!(en in Wt)){Pt.add(`${en}`)}}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;if(nn.isArrayIndexPropName(Pt)){const tn=Pt>>>0;const an=Wt[sn].item(tn);if(an!==null){return{writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(an)}}en=true}const tn=Wt[sn].getNamedItem(Pt);if(tn!==null&&!(Pt in Wt)&&!en){return{writable:false,enumerable:false,configurable:true,value:nn.tryWrapperForImpl(tn)}}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,tn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,tn)}if(Wt[sn][nn.wrapperSymbol]===tn){const Wt=this._globalObject}let an;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;const tn=Wt[sn].item(en);if(tn!==null){an={writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}}if(an===undefined){an=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(an===undefined){const nn=Reflect.getPrototypeOf(Wt);if(nn!==null){return Reflect.set(nn,Pt,en,tn)}an={writable:true,enumerable:true,configurable:true,value:undefined}}if(!an.writable){return false}if(!nn.isObject(tn)){return false}const rn=Reflect.getOwnPropertyDescriptor(tn,Pt);let In;if(rn!==undefined){if(rn.get||rn.set){return false}if(!rn.writable){return false}In={value:en}}else{In={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(tn,Pt,In)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){return false}if(!nn.hasOwn(Wt,Pt)){const en=!(Wt[sn].getNamedItem(Pt)!==null);if(!en){return false}}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;return!(Wt[sn].item(en)!==null)}if(Wt[sn].getNamedItem(Pt)!==null&&!(Pt in Wt)){return false}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const pn=en(84817)},60618:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="Navigator";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Navigator'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["Navigator"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class Navigator{constructor(){throw new Wt.TypeError("Illegal constructor")}javaEnabled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'javaEnabled' called on an object that is not a valid instance of Navigator.")}return en[an].javaEnabled()}get appCodeName(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get appCodeName' called on an object that is not a valid instance of Navigator.")}return en[an]["appCodeName"]}get appName(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get appName' called on an object that is not a valid instance of Navigator.")}return en[an]["appName"]}get appVersion(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get appVersion' called on an object that is not a valid instance of Navigator.")}return en[an]["appVersion"]}get platform(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get platform' called on an object that is not a valid instance of Navigator.")}return en[an]["platform"]}get product(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get product' called on an object that is not a valid instance of Navigator.")}return en[an]["product"]}get productSub(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get productSub' called on an object that is not a valid instance of Navigator.")}return en[an]["productSub"]}get userAgent(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get userAgent' called on an object that is not a valid instance of Navigator.")}return en[an]["userAgent"]}get vendor(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get vendor' called on an object that is not a valid instance of Navigator.")}return en[an]["vendor"]}get vendorSub(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get vendorSub' called on an object that is not a valid instance of Navigator.")}return en[an]["vendorSub"]}get language(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get language' called on an object that is not a valid instance of Navigator.")}return en[an]["language"]}get languages(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get languages' called on an object that is not a valid instance of Navigator.")}return nn.tryWrapperForImpl(en[an]["languages"])}get onLine(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onLine' called on an object that is not a valid instance of Navigator.")}return en[an]["onLine"]}get cookieEnabled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get cookieEnabled' called on an object that is not a valid instance of Navigator.")}return en[an]["cookieEnabled"]}get plugins(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get plugins' called on an object that is not a valid instance of Navigator.")}return nn.getSameObject(this,"plugins",(()=>nn.tryWrapperForImpl(en[an]["plugins"])))}get mimeTypes(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get mimeTypes' called on an object that is not a valid instance of Navigator.")}return nn.getSameObject(this,"mimeTypes",(()=>nn.tryWrapperForImpl(en[an]["mimeTypes"])))}get hardwareConcurrency(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hardwareConcurrency' called on an object that is not a valid instance of Navigator.")}return en[an]["hardwareConcurrency"]}}Object.defineProperties(Navigator.prototype,{javaEnabled:{enumerable:true},appCodeName:{enumerable:true},appName:{enumerable:true},appVersion:{enumerable:true},platform:{enumerable:true},product:{enumerable:true},productSub:{enumerable:true},userAgent:{enumerable:true},vendor:{enumerable:true},vendorSub:{enumerable:true},language:{enumerable:true},languages:{enumerable:true},onLine:{enumerable:true},cookieEnabled:{enumerable:true},plugins:{enumerable:true},mimeTypes:{enumerable:true},hardwareConcurrency:{enumerable:true},[Symbol.toStringTag]:{value:"Navigator",configurable:true}});tn[In]=Navigator;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:Navigator})};const on=en(76605)},24171:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(1433);const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(29122);const dn="Node";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Node'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["Node"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class Node extends Wt.EventTarget{constructor(){throw new Wt.TypeError("Illegal constructor")}getRootNode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'getRootNode' called on an object that is not a valid instance of Node.")}const tn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'getRootNode' on 'Node': parameter 1"});tn.push(Pt)}return nn.tryWrapperForImpl(en[sn].getRootNode(...tn))}hasChildNodes(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'hasChildNodes' called on an object that is not a valid instance of Node.")}return en[sn].hasChildNodes()}normalize(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'normalize' called on an object that is not a valid instance of Node.")}rn(Wt);try{return en[sn].normalize()}finally{In(Wt)}}cloneNode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'cloneNode' called on an object that is not a valid instance of Node.")}const an=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'cloneNode' on 'Node': parameter 1",globals:Wt})}else{Pt=false}an.push(Pt)}rn(Wt);try{return nn.tryWrapperForImpl(en[sn].cloneNode(...an))}finally{In(Wt)}}isEqualNode(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'isEqualNode' called on an object that is not a valid instance of Node.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'isEqualNode' on 'Node': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let en=arguments[0];if(en===null||en===undefined){en=null}else{en=Pt.convert(Wt,en,{context:"Failed to execute 'isEqualNode' on 'Node': parameter 1"})}nn.push(en)}return tn[sn].isEqualNode(...nn)}isSameNode(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'isSameNode' called on an object that is not a valid instance of Node.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'isSameNode' on 'Node': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let en=arguments[0];if(en===null||en===undefined){en=null}else{en=Pt.convert(Wt,en,{context:"Failed to execute 'isSameNode' on 'Node': parameter 1"})}nn.push(en)}return tn[sn].isSameNode(...nn)}compareDocumentPosition(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'compareDocumentPosition' called on an object that is not a valid instance of Node.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'compareDocumentPosition' on 'Node': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let en=arguments[0];en=Pt.convert(Wt,en,{context:"Failed to execute 'compareDocumentPosition' on 'Node': parameter 1"});nn.push(en)}return tn[sn].compareDocumentPosition(...nn)}contains(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'contains' called on an object that is not a valid instance of Node.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'contains' on 'Node': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let en=arguments[0];if(en===null||en===undefined){en=null}else{en=Pt.convert(Wt,en,{context:"Failed to execute 'contains' on 'Node': parameter 1"})}nn.push(en)}return tn[sn].contains(...nn)}lookupPrefix(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'lookupPrefix' called on an object that is not a valid instance of Node.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'lookupPrefix' on 'Node': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'lookupPrefix' on 'Node': parameter 1",globals:Wt})}an.push(Pt)}return nn[sn].lookupPrefix(...an)}lookupNamespaceURI(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'lookupNamespaceURI' called on an object that is not a valid instance of Node.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'lookupNamespaceURI' on 'Node': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'lookupNamespaceURI' on 'Node': parameter 1",globals:Wt})}an.push(Pt)}return nn[sn].lookupNamespaceURI(...an)}isDefaultNamespace(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'isDefaultNamespace' called on an object that is not a valid instance of Node.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'isDefaultNamespace' on 'Node': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'isDefaultNamespace' on 'Node': parameter 1",globals:Wt})}an.push(Pt)}return nn[sn].isDefaultNamespace(...an)}insertBefore(en,tn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'insertBefore' called on an object that is not a valid instance of Node.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'insertBefore' on 'Node': 2 arguments required, but only ${arguments.length} present.`)}const on=[];{let en=arguments[0];en=Pt.convert(Wt,en,{context:"Failed to execute 'insertBefore' on 'Node': parameter 1"});on.push(en)}{let en=arguments[1];if(en===null||en===undefined){en=null}else{en=Pt.convert(Wt,en,{context:"Failed to execute 'insertBefore' on 'Node': parameter 2"})}on.push(en)}rn(Wt);try{return nn.tryWrapperForImpl(an[sn].insertBefore(...on))}finally{In(Wt)}}appendChild(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'appendChild' called on an object that is not a valid instance of Node.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'appendChild' on 'Node': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let en=arguments[0];en=Pt.convert(Wt,en,{context:"Failed to execute 'appendChild' on 'Node': parameter 1"});an.push(en)}rn(Wt);try{return nn.tryWrapperForImpl(tn[sn].appendChild(...an))}finally{In(Wt)}}replaceChild(en,tn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'replaceChild' called on an object that is not a valid instance of Node.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'replaceChild' on 'Node': 2 arguments required, but only ${arguments.length} present.`)}const on=[];{let en=arguments[0];en=Pt.convert(Wt,en,{context:"Failed to execute 'replaceChild' on 'Node': parameter 1"});on.push(en)}{let en=arguments[1];en=Pt.convert(Wt,en,{context:"Failed to execute 'replaceChild' on 'Node': parameter 2"});on.push(en)}rn(Wt);try{return nn.tryWrapperForImpl(an[sn].replaceChild(...on))}finally{In(Wt)}}removeChild(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'removeChild' called on an object that is not a valid instance of Node.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'removeChild' on 'Node': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let en=arguments[0];en=Pt.convert(Wt,en,{context:"Failed to execute 'removeChild' on 'Node': parameter 1"});an.push(en)}rn(Wt);try{return nn.tryWrapperForImpl(tn[sn].removeChild(...an))}finally{In(Wt)}}get nodeType(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get nodeType' called on an object that is not a valid instance of Node.")}return en[sn]["nodeType"]}get nodeName(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get nodeName' called on an object that is not a valid instance of Node.")}return en[sn]["nodeName"]}get baseURI(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get baseURI' called on an object that is not a valid instance of Node.")}return en[sn]["baseURI"]}get isConnected(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get isConnected' called on an object that is not a valid instance of Node.")}return en[sn]["isConnected"]}get ownerDocument(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ownerDocument' called on an object that is not a valid instance of Node.")}return nn.tryWrapperForImpl(en[sn]["ownerDocument"])}get parentNode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get parentNode' called on an object that is not a valid instance of Node.")}return nn.tryWrapperForImpl(en[sn]["parentNode"])}get parentElement(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get parentElement' called on an object that is not a valid instance of Node.")}return nn.tryWrapperForImpl(en[sn]["parentElement"])}get childNodes(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get childNodes' called on an object that is not a valid instance of Node.")}return nn.getSameObject(this,"childNodes",(()=>nn.tryWrapperForImpl(en[sn]["childNodes"])))}get firstChild(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get firstChild' called on an object that is not a valid instance of Node.")}return nn.tryWrapperForImpl(en[sn]["firstChild"])}get lastChild(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get lastChild' called on an object that is not a valid instance of Node.")}return nn.tryWrapperForImpl(en[sn]["lastChild"])}get previousSibling(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get previousSibling' called on an object that is not a valid instance of Node.")}return nn.tryWrapperForImpl(en[sn]["previousSibling"])}get nextSibling(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get nextSibling' called on an object that is not a valid instance of Node.")}return nn.tryWrapperForImpl(en[sn]["nextSibling"])}get nodeValue(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get nodeValue' called on an object that is not a valid instance of Node.")}rn(Wt);try{return en[sn]["nodeValue"]}finally{In(Wt)}}set nodeValue(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set nodeValue' called on an object that is not a valid instance of Node.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'nodeValue' property on 'Node': The provided value",globals:Wt})}rn(Wt);try{nn[sn]["nodeValue"]=en}finally{In(Wt)}}get textContent(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get textContent' called on an object that is not a valid instance of Node.")}rn(Wt);try{return en[sn]["textContent"]}finally{In(Wt)}}set textContent(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set textContent' called on an object that is not a valid instance of Node.")}if(en===null||en===undefined){en=null}else{en=tn["DOMString"](en,{context:"Failed to set the 'textContent' property on 'Node': The provided value",globals:Wt})}rn(Wt);try{nn[sn]["textContent"]=en}finally{In(Wt)}}}Object.defineProperties(Node.prototype,{getRootNode:{enumerable:true},hasChildNodes:{enumerable:true},normalize:{enumerable:true},cloneNode:{enumerable:true},isEqualNode:{enumerable:true},isSameNode:{enumerable:true},compareDocumentPosition:{enumerable:true},contains:{enumerable:true},lookupPrefix:{enumerable:true},lookupNamespaceURI:{enumerable:true},isDefaultNamespace:{enumerable:true},insertBefore:{enumerable:true},appendChild:{enumerable:true},replaceChild:{enumerable:true},removeChild:{enumerable:true},nodeType:{enumerable:true},nodeName:{enumerable:true},baseURI:{enumerable:true},isConnected:{enumerable:true},ownerDocument:{enumerable:true},parentNode:{enumerable:true},parentElement:{enumerable:true},childNodes:{enumerable:true},firstChild:{enumerable:true},lastChild:{enumerable:true},previousSibling:{enumerable:true},nextSibling:{enumerable:true},nodeValue:{enumerable:true},textContent:{enumerable:true},[Symbol.toStringTag]:{value:"Node",configurable:true},ELEMENT_NODE:{value:1,enumerable:true},ATTRIBUTE_NODE:{value:2,enumerable:true},TEXT_NODE:{value:3,enumerable:true},CDATA_SECTION_NODE:{value:4,enumerable:true},ENTITY_REFERENCE_NODE:{value:5,enumerable:true},ENTITY_NODE:{value:6,enumerable:true},PROCESSING_INSTRUCTION_NODE:{value:7,enumerable:true},COMMENT_NODE:{value:8,enumerable:true},DOCUMENT_NODE:{value:9,enumerable:true},DOCUMENT_TYPE_NODE:{value:10,enumerable:true},DOCUMENT_FRAGMENT_NODE:{value:11,enumerable:true},NOTATION_NODE:{value:12,enumerable:true},DOCUMENT_POSITION_DISCONNECTED:{value:1,enumerable:true},DOCUMENT_POSITION_PRECEDING:{value:2,enumerable:true},DOCUMENT_POSITION_FOLLOWING:{value:4,enumerable:true},DOCUMENT_POSITION_CONTAINS:{value:8,enumerable:true},DOCUMENT_POSITION_CONTAINED_BY:{value:16,enumerable:true},DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC:{value:32,enumerable:true}});Object.defineProperties(Node,{ELEMENT_NODE:{value:1,enumerable:true},ATTRIBUTE_NODE:{value:2,enumerable:true},TEXT_NODE:{value:3,enumerable:true},CDATA_SECTION_NODE:{value:4,enumerable:true},ENTITY_REFERENCE_NODE:{value:5,enumerable:true},ENTITY_NODE:{value:6,enumerable:true},PROCESSING_INSTRUCTION_NODE:{value:7,enumerable:true},COMMENT_NODE:{value:8,enumerable:true},DOCUMENT_NODE:{value:9,enumerable:true},DOCUMENT_TYPE_NODE:{value:10,enumerable:true},DOCUMENT_FRAGMENT_NODE:{value:11,enumerable:true},NOTATION_NODE:{value:12,enumerable:true},DOCUMENT_POSITION_DISCONNECTED:{value:1,enumerable:true},DOCUMENT_POSITION_PRECEDING:{value:2,enumerable:true},DOCUMENT_POSITION_FOLLOWING:{value:4,enumerable:true},DOCUMENT_POSITION_CONTAINS:{value:8,enumerable:true},DOCUMENT_POSITION_CONTAINED_BY:{value:16,enumerable:true},DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC:{value:32,enumerable:true}});on[dn]=Node;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:Node})};const pn=en(52746)},7921:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt.convert=(Wt,Pt,{context:en="The provided value"}={})=>{if(!nn.isObject(Pt)){throw new Wt.TypeError(`${en} is not an object.`)}function callTheUserObjectsOperation(an){let rn=nn.tryWrapperForImpl(this);let In=Pt;let sn=In;if(typeof In!=="function"){sn=In["acceptNode"];if(typeof sn!=="function"){throw new Wt.TypeError(`${en} does not correctly implement NodeFilter.`)}rn=In}an=nn.tryWrapperForImpl(an);let on=Reflect.apply(sn,rn,[an]);on=tn["unsigned short"](on,{context:en,globals:Wt});return on}callTheUserObjectsOperation[nn.wrapperSymbol]=Pt;callTheUserObjectsOperation.objectReference=Pt;return callTheUserObjectsOperation};const an=new Set(["Window"]);Pt.install=(Wt,Pt)=>{if(!Pt.some((Wt=>an.has(Wt)))){return}const en=nn.initCtorRegistry(Wt);const NodeFilter=()=>{throw new Wt.TypeError("Illegal invocation")};Object.defineProperties(NodeFilter,{FILTER_ACCEPT:{value:1,enumerable:true},FILTER_REJECT:{value:2,enumerable:true},FILTER_SKIP:{value:3,enumerable:true},SHOW_ALL:{value:4294967295,enumerable:true},SHOW_ELEMENT:{value:1,enumerable:true},SHOW_ATTRIBUTE:{value:2,enumerable:true},SHOW_TEXT:{value:4,enumerable:true},SHOW_CDATA_SECTION:{value:8,enumerable:true},SHOW_ENTITY_REFERENCE:{value:16,enumerable:true},SHOW_ENTITY:{value:32,enumerable:true},SHOW_PROCESSING_INSTRUCTION:{value:64,enumerable:true},SHOW_COMMENT:{value:128,enumerable:true},SHOW_DOCUMENT:{value:256,enumerable:true},SHOW_DOCUMENT_TYPE:{value:512,enumerable:true},SHOW_DOCUMENT_FRAGMENT:{value:1024,enumerable:true},SHOW_NOTATION:{value:2048,enumerable:true}});Object.defineProperty(Wt,"NodeFilter",{configurable:true,writable:true,value:NodeFilter})}},71497:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="NodeIterator";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'NodeIterator'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["NodeIterator"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class NodeIterator{constructor(){throw new Wt.TypeError("Illegal constructor")}nextNode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'nextNode' called on an object that is not a valid instance of NodeIterator.")}return nn.tryWrapperForImpl(en[an].nextNode())}previousNode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'previousNode' called on an object that is not a valid instance of NodeIterator.")}return nn.tryWrapperForImpl(en[an].previousNode())}detach(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'detach' called on an object that is not a valid instance of NodeIterator.")}return en[an].detach()}get root(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get root' called on an object that is not a valid instance of NodeIterator.")}return nn.getSameObject(this,"root",(()=>nn.tryWrapperForImpl(en[an]["root"])))}get referenceNode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get referenceNode' called on an object that is not a valid instance of NodeIterator.")}return nn.tryWrapperForImpl(en[an]["referenceNode"])}get pointerBeforeReferenceNode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get pointerBeforeReferenceNode' called on an object that is not a valid instance of NodeIterator.")}return en[an]["pointerBeforeReferenceNode"]}get whatToShow(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get whatToShow' called on an object that is not a valid instance of NodeIterator.")}return en[an]["whatToShow"]}get filter(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get filter' called on an object that is not a valid instance of NodeIterator.")}return nn.tryWrapperForImpl(en[an]["filter"])}}Object.defineProperties(NodeIterator.prototype,{nextNode:{enumerable:true},previousNode:{enumerable:true},detach:{enumerable:true},root:{enumerable:true},referenceNode:{enumerable:true},pointerBeforeReferenceNode:{enumerable:true},whatToShow:{enumerable:true},filter:{enumerable:true},[Symbol.toStringTag]:{value:"NodeIterator",configurable:true}});tn[In]=NodeIterator;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:NodeIterator})};const on=en(15847)},49747:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="NodeList";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'NodeList'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["NodeList"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=on.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);on.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt=makeProxy(Wt,en);Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class NodeList{constructor(){throw new Wt.TypeError("Illegal constructor")}item(en){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'item' called on an object that is not a valid instance of NodeList.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'item' on 'NodeList': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'item' on 'NodeList': parameter 1",globals:Wt});In.push(Pt)}return nn.tryWrapperForImpl(rn[an].item(...In))}get length(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get length' called on an object that is not a valid instance of NodeList.")}return en[an]["length"]}}Object.defineProperties(NodeList.prototype,{item:{enumerable:true},length:{enumerable:true},[Symbol.toStringTag]:{value:"NodeList",configurable:true},[Symbol.iterator]:{value:Wt.Array.prototype[Symbol.iterator],configurable:true,writable:true},keys:{value:Wt.Array.prototype.keys,configurable:true,enumerable:true,writable:true},values:{value:Wt.Array.prototype.values,configurable:true,enumerable:true,writable:true},entries:{value:Wt.Array.prototype.entries,configurable:true,enumerable:true,writable:true},forEach:{value:Wt.Array.prototype.forEach,configurable:true,enumerable:true,writable:true}});rn[In]=NodeList;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:NodeList})};const on=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[an][nn.supportedPropertyIndices]){Pt.add(`${en}`)}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;if(nn.isArrayIndexPropName(Pt)){const tn=Pt>>>0;const rn=Wt[an].item(tn);if(rn!==null){return{writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(rn)}}en=true}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,tn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,tn)}if(Wt[an][nn.wrapperSymbol]===tn){const Wt=this._globalObject}let rn;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;const tn=Wt[an].item(en);if(tn!==null){rn={writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}}if(rn===undefined){rn=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(rn===undefined){const nn=Reflect.getPrototypeOf(Wt);if(nn!==null){return Reflect.set(nn,Pt,en,tn)}rn={writable:true,enumerable:true,configurable:true,value:undefined}}if(!rn.writable){return false}if(!nn.isObject(tn)){return false}const In=Reflect.getOwnPropertyDescriptor(tn,Pt);let sn;if(In!==undefined){if(In.get||In.set){return false}if(!In.writable){return false}sn={value:en}}else{sn={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(tn,Pt,sn)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){return false}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;return!(Wt[an].item(en)!==null)}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const cn=en(5922)},98574:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt.convert=(Wt,Pt,{context:en="The provided value"}={})=>{function invokeTheCallbackFunction(an){const rn=nn.tryWrapperForImpl(this);let In;if(typeof Pt==="function"){an=nn.tryWrapperForImpl(an);In=Reflect.apply(Pt,rn,[an])}if(In===null||In===undefined){In=null}else{In=tn["DOMString"](In,{context:en,globals:Wt})}return In}invokeTheCallbackFunction.construct=an=>{an=nn.tryWrapperForImpl(an);let rn=Reflect.construct(Pt,[an]);if(rn===null||rn===undefined){rn=null}else{rn=tn["DOMString"](rn,{context:en,globals:Wt})}return rn};invokeTheCallbackFunction[nn.wrapperSymbol]=Pt;invokeTheCallbackFunction.objectReference=Pt;return invokeTheCallbackFunction}},54414:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);Pt.convert=(Wt,Pt,{context:en="The provided value"}={})=>{function invokeTheCallbackFunction(...an){const rn=nn.tryWrapperForImpl(this);let In;if(typeof Pt==="function"){for(let Wt=0;Wt5){an.length=5}In=Reflect.apply(Pt,rn,an)}In=tn["any"](In,{context:en,globals:Wt});return In}invokeTheCallbackFunction.construct=(...an)=>{for(let Wt=0;Wt5){an.length=5}let rn=Reflect.construct(Pt,an);rn=tn["any"](rn,{context:en,globals:Wt});return rn};invokeTheCallbackFunction[nn.wrapperSymbol]=Pt;invokeTheCallbackFunction.objectReference=Pt;return invokeTheCallbackFunction}},21379:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(92457);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(94431);const on="PageTransitionEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'PageTransitionEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["PageTransitionEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class PageTransitionEvent extends Wt.Event{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'PageTransitionEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'PageTransitionEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'PageTransitionEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}get persisted(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get persisted' called on an object that is not a valid instance of PageTransitionEvent.")}return en[rn]["persisted"]}}Object.defineProperties(PageTransitionEvent.prototype,{persisted:{enumerable:true},[Symbol.toStringTag]:{value:"PageTransitionEvent",configurable:true}});In[on]=PageTransitionEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:PageTransitionEvent})};const dn=en(43402)},92457:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(31893);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:nn});{const an="persisted";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'persisted' that",globals:Wt});en[an]=rn}else{en[an]=false}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},7569:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In=en(29122);const sn="Performance";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Performance'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["Performance"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{In._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const on=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>on.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class Performance extends Wt.EventTarget{constructor(){throw new Wt.TypeError("Illegal constructor")}now(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'now' called on an object that is not a valid instance of Performance.")}return nn.tryWrapperForImpl(en[an].now())}toJSON(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'toJSON' called on an object that is not a valid instance of Performance.")}return en[an].toJSON()}get timeOrigin(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get timeOrigin' called on an object that is not a valid instance of Performance.")}return nn.tryWrapperForImpl(en[an]["timeOrigin"])}}Object.defineProperties(Performance.prototype,{now:{enumerable:true},toJSON:{enumerable:true},timeOrigin:{enumerable:true},[Symbol.toStringTag]:{value:"Performance",configurable:true}});tn[sn]=Performance;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:Performance})};const cn=en(4139)},39168:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="Plugin";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Plugin'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["Plugin"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=on.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);on.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt=makeProxy(Wt,en);Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class Plugin{constructor(){throw new Wt.TypeError("Illegal constructor")}item(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'item' called on an object that is not a valid instance of Plugin.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'item' on 'Plugin': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'item' on 'Plugin': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].item(...rn)}namedItem(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'namedItem' called on an object that is not a valid instance of Plugin.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'namedItem' on 'Plugin': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'namedItem' on 'Plugin': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].namedItem(...rn)}get name(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get name' called on an object that is not a valid instance of Plugin.")}return en[an]["name"]}get description(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get description' called on an object that is not a valid instance of Plugin.")}return en[an]["description"]}get filename(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get filename' called on an object that is not a valid instance of Plugin.")}return en[an]["filename"]}get length(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get length' called on an object that is not a valid instance of Plugin.")}return en[an]["length"]}}Object.defineProperties(Plugin.prototype,{item:{enumerable:true},namedItem:{enumerable:true},name:{enumerable:true},description:{enumerable:true},filename:{enumerable:true},length:{enumerable:true},[Symbol.toStringTag]:{value:"Plugin",configurable:true},[Symbol.iterator]:{value:Wt.Array.prototype[Symbol.iterator],configurable:true,writable:true}});rn[In]=Plugin;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:Plugin})};const on=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[an][nn.supportedPropertyIndices]){Pt.add(`${en}`)}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;if(nn.isArrayIndexPropName(Pt)){const tn=Pt>>>0;if(Wt[an][nn.supportsPropertyIndex](tn)){const Pt=Wt[an].item(tn);return{writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(Pt)}}en=true}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,tn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,tn)}if(Wt[an][nn.wrapperSymbol]===tn){const Wt=this._globalObject}let rn;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;if(Wt[an][nn.supportsPropertyIndex](en)){const Pt=Wt[an].item(en);rn={writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(Pt)}}}if(rn===undefined){rn=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(rn===undefined){const nn=Reflect.getPrototypeOf(Wt);if(nn!==null){return Reflect.set(nn,Pt,en,tn)}rn={writable:true,enumerable:true,configurable:true,value:undefined}}if(!rn.writable){return false}if(!nn.isObject(tn)){return false}const In=Reflect.getOwnPropertyDescriptor(tn,Pt);let sn;if(In!==undefined){if(In.get||In.set){return false}if(!In.writable){return false}sn={value:en}}else{sn={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(tn,Pt,sn)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){return false}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;return!Wt[an][nn.supportsPropertyIndex](en)}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const cn=en(47447)},86599:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="PluginArray";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'PluginArray'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["PluginArray"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=on.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);on.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt=makeProxy(Wt,en);Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class PluginArray{constructor(){throw new Wt.TypeError("Illegal constructor")}refresh(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'refresh' called on an object that is not a valid instance of PluginArray.")}return en[an].refresh()}item(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'item' called on an object that is not a valid instance of PluginArray.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'item' on 'PluginArray': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'item' on 'PluginArray': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].item(...rn)}namedItem(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'namedItem' called on an object that is not a valid instance of PluginArray.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'namedItem' on 'PluginArray': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'namedItem' on 'PluginArray': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].namedItem(...rn)}get length(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get length' called on an object that is not a valid instance of PluginArray.")}return en[an]["length"]}}Object.defineProperties(PluginArray.prototype,{refresh:{enumerable:true},item:{enumerable:true},namedItem:{enumerable:true},length:{enumerable:true},[Symbol.toStringTag]:{value:"PluginArray",configurable:true},[Symbol.iterator]:{value:Wt.Array.prototype[Symbol.iterator],configurable:true,writable:true}});rn[In]=PluginArray;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:PluginArray})};const on=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[an][nn.supportedPropertyIndices]){Pt.add(`${en}`)}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;if(nn.isArrayIndexPropName(Pt)){const tn=Pt>>>0;const rn=Wt[an].item(tn);if(rn!==null){return{writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(rn)}}en=true}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,tn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,tn)}if(Wt[an][nn.wrapperSymbol]===tn){const Wt=this._globalObject}let rn;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;const tn=Wt[an].item(en);if(tn!==null){rn={writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}}if(rn===undefined){rn=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(rn===undefined){const nn=Reflect.getPrototypeOf(Wt);if(nn!==null){return Reflect.set(nn,Pt,en,tn)}rn={writable:true,enumerable:true,configurable:true,value:undefined}}if(!rn.writable){return false}if(!nn.isObject(tn)){return false}const In=Reflect.getOwnPropertyDescriptor(tn,Pt);let sn;if(In!==undefined){if(In.get||In.set){return false}if(!In.writable){return false}sn={value:en}}else{sn={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(tn,Pt,sn)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){return false}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;return!(Wt[an].item(en)!==null)}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const cn=en(6514)},38007:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(34685);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(94431);const on="PopStateEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'PopStateEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["PopStateEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class PopStateEvent extends Wt.Event{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'PopStateEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'PopStateEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'PopStateEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}get state(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get state' called on an object that is not a valid instance of PopStateEvent.")}return en[rn]["state"]}}Object.defineProperties(PopStateEvent.prototype,{state:{enumerable:true},[Symbol.toStringTag]:{value:"PopStateEvent",configurable:true}});In[on]=PopStateEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:PopStateEvent})};const dn=en(22374)},34685:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(31893);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:nn});{const an="state";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["any"](rn,{context:nn+" has member 'state' that",globals:Wt});en[an]=rn}else{en[an]=null}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},34786:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In=en(30052);const sn="ProcessingInstruction";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'ProcessingInstruction'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["ProcessingInstruction"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{In._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const on=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>on.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class ProcessingInstruction extends Wt.CharacterData{constructor(){throw new Wt.TypeError("Illegal constructor")}get target(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get target' called on an object that is not a valid instance of ProcessingInstruction.")}return en[an]["target"]}}Object.defineProperties(ProcessingInstruction.prototype,{target:{enumerable:true},[Symbol.toStringTag]:{value:"ProcessingInstruction",configurable:true}});tn[sn]=ProcessingInstruction;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:ProcessingInstruction})};const cn=en(21425)},90442:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(10140);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(94431);const on="ProgressEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'ProgressEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["ProgressEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window","DedicatedWorker","SharedWorker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class ProgressEvent extends Wt.Event{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'ProgressEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'ProgressEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'ProgressEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}get lengthComputable(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get lengthComputable' called on an object that is not a valid instance of ProgressEvent.")}return en[rn]["lengthComputable"]}get loaded(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get loaded' called on an object that is not a valid instance of ProgressEvent.")}return en[rn]["loaded"]}get total(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get total' called on an object that is not a valid instance of ProgressEvent.")}return en[rn]["total"]}}Object.defineProperties(ProgressEvent.prototype,{lengthComputable:{enumerable:true},loaded:{enumerable:true},total:{enumerable:true},[Symbol.toStringTag]:{value:"ProgressEvent",configurable:true}});In[on]=ProgressEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:ProgressEvent})};const dn=en(91561)},10140:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(31893);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:nn});{const an="lengthComputable";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["boolean"](rn,{context:nn+" has member 'lengthComputable' that",globals:Wt});en[an]=rn}else{en[an]=false}}{const an="loaded";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unsigned long long"](rn,{context:nn+" has member 'loaded' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="total";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unsigned long long"](rn,{context:nn+" has member 'total' that",globals:Wt});en[an]=rn}else{en[an]=0}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},9344:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In=en(49747);const sn="RadioNodeList";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'RadioNodeList'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["RadioNodeList"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=cn.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);cn.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{In._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new dn.implementation(en,tn,rn),configurable:true});Wt=makeProxy(Wt,en);Wt[an][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(dn.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[an][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[an])}return tn[an]};const on=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>on.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class RadioNodeList extends Wt.NodeList{constructor(){throw new Wt.TypeError("Illegal constructor")}get value(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get value' called on an object that is not a valid instance of RadioNodeList.")}return en[an]["value"]}set value(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set value' called on an object that is not a valid instance of RadioNodeList.")}en=tn["DOMString"](en,{context:"Failed to set the 'value' property on 'RadioNodeList': The provided value",globals:Wt});nn[an]["value"]=en}}Object.defineProperties(RadioNodeList.prototype,{value:{enumerable:true},[Symbol.toStringTag]:{value:"RadioNodeList",configurable:true},[Symbol.iterator]:{value:Wt.Array.prototype[Symbol.iterator],configurable:true,writable:true}});rn[sn]=RadioNodeList;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:RadioNodeList})};const cn=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[an][nn.supportedPropertyIndices]){Pt.add(`${en}`)}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;if(nn.isArrayIndexPropName(Pt)){const tn=Pt>>>0;const rn=Wt[an].item(tn);if(rn!==null){return{writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(rn)}}en=true}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,tn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,tn)}if(Wt[an][nn.wrapperSymbol]===tn){const Wt=this._globalObject}let rn;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;const tn=Wt[an].item(en);if(tn!==null){rn={writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}}if(rn===undefined){rn=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(rn===undefined){const nn=Reflect.getPrototypeOf(Wt);if(nn!==null){return Reflect.set(nn,Pt,en,tn)}rn={writable:true,enumerable:true,configurable:true,value:undefined}}if(!rn.writable){return false}if(!nn.isObject(tn)){return false}const In=Reflect.getOwnPropertyDescriptor(tn,Pt);let sn;if(In!==undefined){if(In.get||In.set){return false}if(!In.writable){return false}sn={value:en}}else{sn={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(tn,Pt,sn)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){return false}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;return!(Wt[an].item(en)!==null)}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const dn=en(73827)},60190:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(24171);const rn=en(8348).ceReactionsPreSteps;const In=en(8348).ceReactionsPostSteps;const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(77632);const dn="Range";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Range'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["Range"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class Range extends Wt.AbstractRange{constructor(){return Pt.setup(Object.create(new.target.prototype),Wt,undefined)}setStart(en,nn){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'setStart' called on an object that is not a valid instance of Range.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'setStart' on 'Range': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'setStart' on 'Range': parameter 1"});In.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setStart' on 'Range': parameter 2",globals:Wt});In.push(Pt)}return rn[sn].setStart(...In)}setEnd(en,nn){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'setEnd' called on an object that is not a valid instance of Range.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'setEnd' on 'Range': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'setEnd' on 'Range': parameter 1"});In.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setEnd' on 'Range': parameter 2",globals:Wt});In.push(Pt)}return rn[sn].setEnd(...In)}setStartBefore(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'setStartBefore' called on an object that is not a valid instance of Range.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setStartBefore' on 'Range': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'setStartBefore' on 'Range': parameter 1"});nn.push(Pt)}return tn[sn].setStartBefore(...nn)}setStartAfter(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'setStartAfter' called on an object that is not a valid instance of Range.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setStartAfter' on 'Range': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'setStartAfter' on 'Range': parameter 1"});nn.push(Pt)}return tn[sn].setStartAfter(...nn)}setEndBefore(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'setEndBefore' called on an object that is not a valid instance of Range.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setEndBefore' on 'Range': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'setEndBefore' on 'Range': parameter 1"});nn.push(Pt)}return tn[sn].setEndBefore(...nn)}setEndAfter(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'setEndAfter' called on an object that is not a valid instance of Range.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setEndAfter' on 'Range': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'setEndAfter' on 'Range': parameter 1"});nn.push(Pt)}return tn[sn].setEndAfter(...nn)}collapse(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'collapse' called on an object that is not a valid instance of Range.")}const nn=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'collapse' on 'Range': parameter 1",globals:Wt})}else{Pt=false}nn.push(Pt)}return en[sn].collapse(...nn)}selectNode(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'selectNode' called on an object that is not a valid instance of Range.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'selectNode' on 'Range': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'selectNode' on 'Range': parameter 1"});nn.push(Pt)}return tn[sn].selectNode(...nn)}selectNodeContents(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'selectNodeContents' called on an object that is not a valid instance of Range.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'selectNodeContents' on 'Range': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'selectNodeContents' on 'Range': parameter 1"});nn.push(Pt)}return tn[sn].selectNodeContents(...nn)}compareBoundaryPoints(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'compareBoundaryPoints' called on an object that is not a valid instance of Range.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'compareBoundaryPoints' on 'Range': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned short"](Pt,{context:"Failed to execute 'compareBoundaryPoints' on 'Range': parameter 1",globals:Wt});rn.push(Pt)}{let en=arguments[1];en=Pt.convert(Wt,en,{context:"Failed to execute 'compareBoundaryPoints' on 'Range': parameter 2"});rn.push(en)}return an[sn].compareBoundaryPoints(...rn)}deleteContents(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'deleteContents' called on an object that is not a valid instance of Range.")}rn(Wt);try{return en[sn].deleteContents()}finally{In(Wt)}}extractContents(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'extractContents' called on an object that is not a valid instance of Range.")}rn(Wt);try{return nn.tryWrapperForImpl(en[sn].extractContents())}finally{In(Wt)}}cloneContents(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'cloneContents' called on an object that is not a valid instance of Range.")}rn(Wt);try{return nn.tryWrapperForImpl(en[sn].cloneContents())}finally{In(Wt)}}insertNode(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'insertNode' called on an object that is not a valid instance of Range.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'insertNode' on 'Range': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'insertNode' on 'Range': parameter 1"});nn.push(Pt)}rn(Wt);try{return tn[sn].insertNode(...nn)}finally{In(Wt)}}surroundContents(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'surroundContents' called on an object that is not a valid instance of Range.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'surroundContents' on 'Range': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'surroundContents' on 'Range': parameter 1"});nn.push(Pt)}rn(Wt);try{return tn[sn].surroundContents(...nn)}finally{In(Wt)}}cloneRange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'cloneRange' called on an object that is not a valid instance of Range.")}return nn.tryWrapperForImpl(en[sn].cloneRange())}detach(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'detach' called on an object that is not a valid instance of Range.")}return en[sn].detach()}isPointInRange(en,nn){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'isPointInRange' called on an object that is not a valid instance of Range.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'isPointInRange' on 'Range': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'isPointInRange' on 'Range': parameter 1"});In.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'isPointInRange' on 'Range': parameter 2",globals:Wt});In.push(Pt)}return rn[sn].isPointInRange(...In)}comparePoint(en,nn){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'comparePoint' called on an object that is not a valid instance of Range.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'comparePoint' on 'Range': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'comparePoint' on 'Range': parameter 1"});In.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'comparePoint' on 'Range': parameter 2",globals:Wt});In.push(Pt)}return rn[sn].comparePoint(...In)}intersectsNode(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'intersectsNode' called on an object that is not a valid instance of Range.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'intersectsNode' on 'Range': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'intersectsNode' on 'Range': parameter 1"});nn.push(Pt)}return tn[sn].intersectsNode(...nn)}toString(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'toString' called on an object that is not a valid instance of Range.")}return en[sn].toString()}createContextualFragment(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'createContextualFragment' called on an object that is not a valid instance of Range.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'createContextualFragment' on 'Range': 1 argument required, but only ${arguments.length} present.`)}const on=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'createContextualFragment' on 'Range': parameter 1",globals:Wt});on.push(Pt)}rn(Wt);try{return nn.tryWrapperForImpl(an[sn].createContextualFragment(...on))}finally{In(Wt)}}get commonAncestorContainer(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get commonAncestorContainer' called on an object that is not a valid instance of Range.")}return nn.tryWrapperForImpl(en[sn]["commonAncestorContainer"])}}Object.defineProperties(Range.prototype,{setStart:{enumerable:true},setEnd:{enumerable:true},setStartBefore:{enumerable:true},setStartAfter:{enumerable:true},setEndBefore:{enumerable:true},setEndAfter:{enumerable:true},collapse:{enumerable:true},selectNode:{enumerable:true},selectNodeContents:{enumerable:true},compareBoundaryPoints:{enumerable:true},deleteContents:{enumerable:true},extractContents:{enumerable:true},cloneContents:{enumerable:true},insertNode:{enumerable:true},surroundContents:{enumerable:true},cloneRange:{enumerable:true},detach:{enumerable:true},isPointInRange:{enumerable:true},comparePoint:{enumerable:true},intersectsNode:{enumerable:true},toString:{enumerable:true},createContextualFragment:{enumerable:true},commonAncestorContainer:{enumerable:true},[Symbol.toStringTag]:{value:"Range",configurable:true},START_TO_START:{value:0,enumerable:true},START_TO_END:{value:1,enumerable:true},END_TO_END:{value:2,enumerable:true},END_TO_START:{value:3,enumerable:true}});Object.defineProperties(Range,{START_TO_START:{value:0,enumerable:true},START_TO_END:{value:1,enumerable:true},END_TO_END:{value:2,enumerable:true},END_TO_START:{value:3,enumerable:true}});on[dn]=Range;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:Range})};const pn=en(41869)},5505:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="SVGAnimatedString";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'SVGAnimatedString'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["SVGAnimatedString"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class SVGAnimatedString{constructor(){throw new Wt.TypeError("Illegal constructor")}get baseVal(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get baseVal' called on an object that is not a valid instance of SVGAnimatedString.")}return en[an]["baseVal"]}set baseVal(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set baseVal' called on an object that is not a valid instance of SVGAnimatedString.")}en=tn["DOMString"](en,{context:"Failed to set the 'baseVal' property on 'SVGAnimatedString': The provided value",globals:Wt});nn[an]["baseVal"]=en}get animVal(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get animVal' called on an object that is not a valid instance of SVGAnimatedString.")}return en[an]["animVal"]}}Object.defineProperties(SVGAnimatedString.prototype,{baseVal:{enumerable:true},animVal:{enumerable:true},[Symbol.toStringTag]:{value:"SVGAnimatedString",configurable:true}});rn[In]=SVGAnimatedString;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:SVGAnimatedString})};const on=en(48665)},70321:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(69117);const rn=en(54414);const In=en(8348).ceReactionsPreSteps;const sn=en(8348).ceReactionsPostSteps;const on=nn.implSymbol;const cn=nn.ctorRegistrySymbol;const dn=en(41423);const un="SVGElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,on)&&Wt[on]instanceof mn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof mn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'SVGElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[cn]["SVGElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{dn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,on,{value:new mn.implementation(en,tn,an),configurable:true});Wt[on][nn.wrapperSymbol]=Wt;if(mn.init){mn.init(Wt[on])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,on,{value:Object.create(mn.implementation.prototype),configurable:true});tn[on][nn.wrapperSymbol]=tn;if(mn.init){mn.init(tn[on])}return tn[on]};const pn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>pn.has(Wt)))){return}const cn=nn.initCtorRegistry(Wt);class SVGElement extends Wt.Element{constructor(){throw new Wt.TypeError("Illegal constructor")}focus(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'focus' called on an object that is not a valid instance of SVGElement.")}return en[on].focus()}blur(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'blur' called on an object that is not a valid instance of SVGElement.")}return en[on].blur()}get className(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get className' called on an object that is not a valid instance of SVGElement.")}return nn.getSameObject(this,"className",(()=>nn.tryWrapperForImpl(en[on]["className"])))}get ownerSVGElement(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ownerSVGElement' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ownerSVGElement"])}get viewportElement(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get viewportElement' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["viewportElement"])}get style(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get style' called on an object that is not a valid instance of SVGElement.")}return nn.getSameObject(this,"style",(()=>nn.tryWrapperForImpl(en[on]["style"])))}set style(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set style' called on an object that is not a valid instance of SVGElement.")}const an=tn["style"];if(!nn.isObject(an)){throw new Wt.TypeError("Property 'style' is not an object")}Reflect.set(an,"cssText",en)}get onabort(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onabort' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onabort"])}set onabort(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onabort' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onabort' property on 'SVGElement': The provided value"})}tn[on]["onabort"]=en}get onauxclick(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onauxclick' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onauxclick"])}set onauxclick(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onauxclick' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onauxclick' property on 'SVGElement': The provided value"})}tn[on]["onauxclick"]=en}get onbeforeinput(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforeinput' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onbeforeinput"])}set onbeforeinput(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforeinput' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onbeforeinput' property on 'SVGElement': The provided value"})}tn[on]["onbeforeinput"]=en}get onbeforematch(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforematch' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onbeforematch"])}set onbeforematch(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforematch' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onbeforematch' property on 'SVGElement': The provided value"})}tn[on]["onbeforematch"]=en}get onbeforetoggle(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforetoggle' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onbeforetoggle"])}set onbeforetoggle(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforetoggle' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onbeforetoggle' property on 'SVGElement': The provided value"})}tn[on]["onbeforetoggle"]=en}get onblur(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onblur' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onblur"])}set onblur(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onblur' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onblur' property on 'SVGElement': The provided value"})}tn[on]["onblur"]=en}get oncancel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncancel' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["oncancel"])}set oncancel(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncancel' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'oncancel' property on 'SVGElement': The provided value"})}tn[on]["oncancel"]=en}get oncanplay(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncanplay' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["oncanplay"])}set oncanplay(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncanplay' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'oncanplay' property on 'SVGElement': The provided value"})}tn[on]["oncanplay"]=en}get oncanplaythrough(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncanplaythrough' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["oncanplaythrough"])}set oncanplaythrough(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncanplaythrough' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'oncanplaythrough' property on 'SVGElement': The provided value"})}tn[on]["oncanplaythrough"]=en}get onchange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onchange' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onchange"])}set onchange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onchange' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onchange' property on 'SVGElement': The provided value"})}tn[on]["onchange"]=en}get onclick(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onclick' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onclick"])}set onclick(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onclick' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onclick' property on 'SVGElement': The provided value"})}tn[on]["onclick"]=en}get onclose(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onclose' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onclose"])}set onclose(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onclose' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onclose' property on 'SVGElement': The provided value"})}tn[on]["onclose"]=en}get oncontextlost(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncontextlost' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["oncontextlost"])}set oncontextlost(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncontextlost' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'oncontextlost' property on 'SVGElement': The provided value"})}tn[on]["oncontextlost"]=en}get oncontextmenu(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncontextmenu' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["oncontextmenu"])}set oncontextmenu(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncontextmenu' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'oncontextmenu' property on 'SVGElement': The provided value"})}tn[on]["oncontextmenu"]=en}get oncontextrestored(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncontextrestored' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["oncontextrestored"])}set oncontextrestored(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncontextrestored' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'oncontextrestored' property on 'SVGElement': The provided value"})}tn[on]["oncontextrestored"]=en}get oncopy(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncopy' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["oncopy"])}set oncopy(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncopy' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'oncopy' property on 'SVGElement': The provided value"})}tn[on]["oncopy"]=en}get oncuechange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncuechange' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["oncuechange"])}set oncuechange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncuechange' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'oncuechange' property on 'SVGElement': The provided value"})}tn[on]["oncuechange"]=en}get oncut(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oncut' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["oncut"])}set oncut(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oncut' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'oncut' property on 'SVGElement': The provided value"})}tn[on]["oncut"]=en}get ondblclick(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondblclick' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ondblclick"])}set ondblclick(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondblclick' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ondblclick' property on 'SVGElement': The provided value"})}tn[on]["ondblclick"]=en}get ondrag(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondrag' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ondrag"])}set ondrag(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondrag' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ondrag' property on 'SVGElement': The provided value"})}tn[on]["ondrag"]=en}get ondragend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragend' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ondragend"])}set ondragend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragend' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ondragend' property on 'SVGElement': The provided value"})}tn[on]["ondragend"]=en}get ondragenter(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragenter' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ondragenter"])}set ondragenter(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragenter' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ondragenter' property on 'SVGElement': The provided value"})}tn[on]["ondragenter"]=en}get ondragleave(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragleave' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ondragleave"])}set ondragleave(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragleave' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ondragleave' property on 'SVGElement': The provided value"})}tn[on]["ondragleave"]=en}get ondragover(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragover' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ondragover"])}set ondragover(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragover' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ondragover' property on 'SVGElement': The provided value"})}tn[on]["ondragover"]=en}get ondragstart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondragstart' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ondragstart"])}set ondragstart(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondragstart' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ondragstart' property on 'SVGElement': The provided value"})}tn[on]["ondragstart"]=en}get ondrop(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondrop' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ondrop"])}set ondrop(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondrop' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ondrop' property on 'SVGElement': The provided value"})}tn[on]["ondrop"]=en}get ondurationchange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ondurationchange' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ondurationchange"])}set ondurationchange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ondurationchange' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ondurationchange' property on 'SVGElement': The provided value"})}tn[on]["ondurationchange"]=en}get onemptied(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onemptied' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onemptied"])}set onemptied(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onemptied' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onemptied' property on 'SVGElement': The provided value"})}tn[on]["onemptied"]=en}get onended(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onended' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onended"])}set onended(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onended' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onended' property on 'SVGElement': The provided value"})}tn[on]["onended"]=en}get onerror(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onerror' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onerror"])}set onerror(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onerror' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=rn.convert(Wt,en,{context:"Failed to set the 'onerror' property on 'SVGElement': The provided value"})}tn[on]["onerror"]=en}get onfocus(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onfocus' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onfocus"])}set onfocus(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onfocus' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onfocus' property on 'SVGElement': The provided value"})}tn[on]["onfocus"]=en}get onformdata(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onformdata' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onformdata"])}set onformdata(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onformdata' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onformdata' property on 'SVGElement': The provided value"})}tn[on]["onformdata"]=en}get oninput(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oninput' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["oninput"])}set oninput(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oninput' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'oninput' property on 'SVGElement': The provided value"})}tn[on]["oninput"]=en}get oninvalid(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oninvalid' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["oninvalid"])}set oninvalid(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set oninvalid' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'oninvalid' property on 'SVGElement': The provided value"})}tn[on]["oninvalid"]=en}get onkeydown(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onkeydown' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onkeydown"])}set onkeydown(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onkeydown' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onkeydown' property on 'SVGElement': The provided value"})}tn[on]["onkeydown"]=en}get onkeypress(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onkeypress' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onkeypress"])}set onkeypress(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onkeypress' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onkeypress' property on 'SVGElement': The provided value"})}tn[on]["onkeypress"]=en}get onkeyup(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onkeyup' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onkeyup"])}set onkeyup(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onkeyup' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onkeyup' property on 'SVGElement': The provided value"})}tn[on]["onkeyup"]=en}get onload(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onload' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onload"])}set onload(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onload' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onload' property on 'SVGElement': The provided value"})}tn[on]["onload"]=en}get onloadeddata(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onloadeddata' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onloadeddata"])}set onloadeddata(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onloadeddata' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onloadeddata' property on 'SVGElement': The provided value"})}tn[on]["onloadeddata"]=en}get onloadedmetadata(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onloadedmetadata' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onloadedmetadata"])}set onloadedmetadata(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onloadedmetadata' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onloadedmetadata' property on 'SVGElement': The provided value"})}tn[on]["onloadedmetadata"]=en}get onloadstart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onloadstart' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onloadstart"])}set onloadstart(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onloadstart' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onloadstart' property on 'SVGElement': The provided value"})}tn[on]["onloadstart"]=en}get onmousedown(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmousedown' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onmousedown"])}set onmousedown(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmousedown' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onmousedown' property on 'SVGElement': The provided value"})}tn[on]["onmousedown"]=en}get onmouseenter(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){return}return nn.tryWrapperForImpl(en[on]["onmouseenter"])}set onmouseenter(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){return}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onmouseenter' property on 'SVGElement': The provided value"})}tn[on]["onmouseenter"]=en}get onmouseleave(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){return}return nn.tryWrapperForImpl(en[on]["onmouseleave"])}set onmouseleave(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){return}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onmouseleave' property on 'SVGElement': The provided value"})}tn[on]["onmouseleave"]=en}get onmousemove(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmousemove' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onmousemove"])}set onmousemove(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmousemove' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onmousemove' property on 'SVGElement': The provided value"})}tn[on]["onmousemove"]=en}get onmouseout(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmouseout' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onmouseout"])}set onmouseout(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmouseout' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onmouseout' property on 'SVGElement': The provided value"})}tn[on]["onmouseout"]=en}get onmouseover(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmouseover' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onmouseover"])}set onmouseover(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmouseover' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onmouseover' property on 'SVGElement': The provided value"})}tn[on]["onmouseover"]=en}get onmouseup(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmouseup' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onmouseup"])}set onmouseup(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmouseup' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onmouseup' property on 'SVGElement': The provided value"})}tn[on]["onmouseup"]=en}get onpaste(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpaste' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onpaste"])}set onpaste(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpaste' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onpaste' property on 'SVGElement': The provided value"})}tn[on]["onpaste"]=en}get onpause(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpause' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onpause"])}set onpause(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpause' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onpause' property on 'SVGElement': The provided value"})}tn[on]["onpause"]=en}get onplay(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onplay' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onplay"])}set onplay(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onplay' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onplay' property on 'SVGElement': The provided value"})}tn[on]["onplay"]=en}get onplaying(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onplaying' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onplaying"])}set onplaying(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onplaying' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onplaying' property on 'SVGElement': The provided value"})}tn[on]["onplaying"]=en}get onprogress(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onprogress' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onprogress"])}set onprogress(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onprogress' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onprogress' property on 'SVGElement': The provided value"})}tn[on]["onprogress"]=en}get onratechange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onratechange' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onratechange"])}set onratechange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onratechange' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onratechange' property on 'SVGElement': The provided value"})}tn[on]["onratechange"]=en}get onreset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onreset' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onreset"])}set onreset(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onreset' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onreset' property on 'SVGElement': The provided value"})}tn[on]["onreset"]=en}get onresize(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onresize' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onresize"])}set onresize(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onresize' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onresize' property on 'SVGElement': The provided value"})}tn[on]["onresize"]=en}get onscroll(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onscroll' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onscroll"])}set onscroll(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onscroll' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onscroll' property on 'SVGElement': The provided value"})}tn[on]["onscroll"]=en}get onscrollend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onscrollend' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onscrollend"])}set onscrollend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onscrollend' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onscrollend' property on 'SVGElement': The provided value"})}tn[on]["onscrollend"]=en}get onsecuritypolicyviolation(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onsecuritypolicyviolation' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onsecuritypolicyviolation"])}set onsecuritypolicyviolation(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onsecuritypolicyviolation' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onsecuritypolicyviolation' property on 'SVGElement': The provided value"})}tn[on]["onsecuritypolicyviolation"]=en}get onseeked(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onseeked' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onseeked"])}set onseeked(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onseeked' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onseeked' property on 'SVGElement': The provided value"})}tn[on]["onseeked"]=en}get onseeking(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onseeking' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onseeking"])}set onseeking(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onseeking' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onseeking' property on 'SVGElement': The provided value"})}tn[on]["onseeking"]=en}get onselect(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onselect' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onselect"])}set onselect(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onselect' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onselect' property on 'SVGElement': The provided value"})}tn[on]["onselect"]=en}get onslotchange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onslotchange' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onslotchange"])}set onslotchange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onslotchange' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onslotchange' property on 'SVGElement': The provided value"})}tn[on]["onslotchange"]=en}get onstalled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onstalled' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onstalled"])}set onstalled(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onstalled' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onstalled' property on 'SVGElement': The provided value"})}tn[on]["onstalled"]=en}get onsubmit(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onsubmit' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onsubmit"])}set onsubmit(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onsubmit' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onsubmit' property on 'SVGElement': The provided value"})}tn[on]["onsubmit"]=en}get onsuspend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onsuspend' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onsuspend"])}set onsuspend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onsuspend' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onsuspend' property on 'SVGElement': The provided value"})}tn[on]["onsuspend"]=en}get ontimeupdate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontimeupdate' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ontimeupdate"])}set ontimeupdate(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontimeupdate' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ontimeupdate' property on 'SVGElement': The provided value"})}tn[on]["ontimeupdate"]=en}get ontoggle(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontoggle' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ontoggle"])}set ontoggle(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontoggle' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ontoggle' property on 'SVGElement': The provided value"})}tn[on]["ontoggle"]=en}get onvolumechange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onvolumechange' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onvolumechange"])}set onvolumechange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onvolumechange' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onvolumechange' property on 'SVGElement': The provided value"})}tn[on]["onvolumechange"]=en}get onwaiting(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwaiting' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onwaiting"])}set onwaiting(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwaiting' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onwaiting' property on 'SVGElement': The provided value"})}tn[on]["onwaiting"]=en}get onwebkitanimationend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwebkitanimationend' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onwebkitanimationend"])}set onwebkitanimationend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwebkitanimationend' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onwebkitanimationend' property on 'SVGElement': The provided value"})}tn[on]["onwebkitanimationend"]=en}get onwebkitanimationiteration(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwebkitanimationiteration' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onwebkitanimationiteration"])}set onwebkitanimationiteration(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwebkitanimationiteration' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onwebkitanimationiteration' property on 'SVGElement': The provided value"})}tn[on]["onwebkitanimationiteration"]=en}get onwebkitanimationstart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwebkitanimationstart' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onwebkitanimationstart"])}set onwebkitanimationstart(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwebkitanimationstart' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onwebkitanimationstart' property on 'SVGElement': The provided value"})}tn[on]["onwebkitanimationstart"]=en}get onwebkittransitionend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwebkittransitionend' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onwebkittransitionend"])}set onwebkittransitionend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwebkittransitionend' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onwebkittransitionend' property on 'SVGElement': The provided value"})}tn[on]["onwebkittransitionend"]=en}get onwheel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onwheel' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["onwheel"])}set onwheel(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onwheel' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onwheel' property on 'SVGElement': The provided value"})}tn[on]["onwheel"]=en}get ontouchstart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontouchstart' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ontouchstart"])}set ontouchstart(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontouchstart' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ontouchstart' property on 'SVGElement': The provided value"})}tn[on]["ontouchstart"]=en}get ontouchend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontouchend' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ontouchend"])}set ontouchend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontouchend' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ontouchend' property on 'SVGElement': The provided value"})}tn[on]["ontouchend"]=en}get ontouchmove(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontouchmove' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ontouchmove"])}set ontouchmove(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontouchmove' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ontouchmove' property on 'SVGElement': The provided value"})}tn[on]["ontouchmove"]=en}get ontouchcancel(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontouchcancel' called on an object that is not a valid instance of SVGElement.")}return nn.tryWrapperForImpl(en[on]["ontouchcancel"])}set ontouchcancel(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontouchcancel' called on an object that is not a valid instance of SVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ontouchcancel' property on 'SVGElement': The provided value"})}tn[on]["ontouchcancel"]=en}get dataset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get dataset' called on an object that is not a valid instance of SVGElement.")}return nn.getSameObject(this,"dataset",(()=>nn.tryWrapperForImpl(en[on]["dataset"])))}get nonce(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get nonce' called on an object that is not a valid instance of SVGElement.")}const tn=en[on]._reflectGetTheContentAttribute("nonce");return tn===null?"":tn}set nonce(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set nonce' called on an object that is not a valid instance of SVGElement.")}en=tn["DOMString"](en,{context:"Failed to set the 'nonce' property on 'SVGElement': The provided value",globals:Wt});nn[on]._reflectSetTheContentAttribute("nonce",en)}get tabIndex(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get tabIndex' called on an object that is not a valid instance of SVGElement.")}In(Wt);try{return en[on]["tabIndex"]}finally{sn(Wt)}}set tabIndex(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set tabIndex' called on an object that is not a valid instance of SVGElement.")}en=tn["long"](en,{context:"Failed to set the 'tabIndex' property on 'SVGElement': The provided value",globals:Wt});In(Wt);try{nn[on]["tabIndex"]=en}finally{sn(Wt)}}}Object.defineProperties(SVGElement.prototype,{focus:{enumerable:true},blur:{enumerable:true},className:{enumerable:true},ownerSVGElement:{enumerable:true},viewportElement:{enumerable:true},style:{enumerable:true},onabort:{enumerable:true},onauxclick:{enumerable:true},onbeforeinput:{enumerable:true},onbeforematch:{enumerable:true},onbeforetoggle:{enumerable:true},onblur:{enumerable:true},oncancel:{enumerable:true},oncanplay:{enumerable:true},oncanplaythrough:{enumerable:true},onchange:{enumerable:true},onclick:{enumerable:true},onclose:{enumerable:true},oncontextlost:{enumerable:true},oncontextmenu:{enumerable:true},oncontextrestored:{enumerable:true},oncopy:{enumerable:true},oncuechange:{enumerable:true},oncut:{enumerable:true},ondblclick:{enumerable:true},ondrag:{enumerable:true},ondragend:{enumerable:true},ondragenter:{enumerable:true},ondragleave:{enumerable:true},ondragover:{enumerable:true},ondragstart:{enumerable:true},ondrop:{enumerable:true},ondurationchange:{enumerable:true},onemptied:{enumerable:true},onended:{enumerable:true},onerror:{enumerable:true},onfocus:{enumerable:true},onformdata:{enumerable:true},oninput:{enumerable:true},oninvalid:{enumerable:true},onkeydown:{enumerable:true},onkeypress:{enumerable:true},onkeyup:{enumerable:true},onload:{enumerable:true},onloadeddata:{enumerable:true},onloadedmetadata:{enumerable:true},onloadstart:{enumerable:true},onmousedown:{enumerable:true},onmouseenter:{enumerable:true},onmouseleave:{enumerable:true},onmousemove:{enumerable:true},onmouseout:{enumerable:true},onmouseover:{enumerable:true},onmouseup:{enumerable:true},onpaste:{enumerable:true},onpause:{enumerable:true},onplay:{enumerable:true},onplaying:{enumerable:true},onprogress:{enumerable:true},onratechange:{enumerable:true},onreset:{enumerable:true},onresize:{enumerable:true},onscroll:{enumerable:true},onscrollend:{enumerable:true},onsecuritypolicyviolation:{enumerable:true},onseeked:{enumerable:true},onseeking:{enumerable:true},onselect:{enumerable:true},onslotchange:{enumerable:true},onstalled:{enumerable:true},onsubmit:{enumerable:true},onsuspend:{enumerable:true},ontimeupdate:{enumerable:true},ontoggle:{enumerable:true},onvolumechange:{enumerable:true},onwaiting:{enumerable:true},onwebkitanimationend:{enumerable:true},onwebkitanimationiteration:{enumerable:true},onwebkitanimationstart:{enumerable:true},onwebkittransitionend:{enumerable:true},onwheel:{enumerable:true},ontouchstart:{enumerable:true},ontouchend:{enumerable:true},ontouchmove:{enumerable:true},ontouchcancel:{enumerable:true},dataset:{enumerable:true},nonce:{enumerable:true},tabIndex:{enumerable:true},[Symbol.toStringTag]:{value:"SVGElement",configurable:true}});cn[un]=SVGElement;Object.defineProperty(Wt,un,{configurable:true,writable:true,value:SVGElement})};const mn=en(72156)},91398:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In=en(70321);const sn="SVGGraphicsElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'SVGGraphicsElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["SVGGraphicsElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{In._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const on=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>on.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class SVGGraphicsElement extends Wt.SVGElement{constructor(){throw new Wt.TypeError("Illegal constructor")}get requiredExtensions(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get requiredExtensions' called on an object that is not a valid instance of SVGGraphicsElement.")}return nn.getSameObject(this,"requiredExtensions",(()=>nn.tryWrapperForImpl(en[an]["requiredExtensions"])))}get systemLanguage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get systemLanguage' called on an object that is not a valid instance of SVGGraphicsElement.")}return nn.getSameObject(this,"systemLanguage",(()=>nn.tryWrapperForImpl(en[an]["systemLanguage"])))}}Object.defineProperties(SVGGraphicsElement.prototype,{requiredExtensions:{enumerable:true},systemLanguage:{enumerable:true},[Symbol.toStringTag]:{value:"SVGGraphicsElement",configurable:true}});tn[sn]=SVGGraphicsElement;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:SVGGraphicsElement})};const cn=en(9133)},35168:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="SVGNumber";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'SVGNumber'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["SVGNumber"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class SVGNumber{constructor(){throw new Wt.TypeError("Illegal constructor")}get value(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get value' called on an object that is not a valid instance of SVGNumber.")}return en[an]["value"]}set value(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set value' called on an object that is not a valid instance of SVGNumber.")}en=tn["float"](en,{context:"Failed to set the 'value' property on 'SVGNumber': The provided value",globals:Wt});nn[an]["value"]=en}}Object.defineProperties(SVGNumber.prototype,{value:{enumerable:true},[Symbol.toStringTag]:{value:"SVGNumber",configurable:true}});rn[In]=SVGNumber;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:SVGNumber})};const on=en(29954)},60787:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(69117);const rn=en(98574);const In=nn.implSymbol;const sn=nn.ctorRegistrySymbol;const on=en(91398);const cn="SVGSVGElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,In)&&Wt[In]instanceof un.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof un.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'SVGSVGElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[sn]["SVGSVGElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{on._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,In,{value:new un.implementation(en,tn,an),configurable:true});Wt[In][nn.wrapperSymbol]=Wt;if(un.init){un.init(Wt[In])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,In,{value:Object.create(un.implementation.prototype),configurable:true});tn[In][nn.wrapperSymbol]=tn;if(un.init){un.init(tn[In])}return tn[In]};const dn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>dn.has(Wt)))){return}const sn=nn.initCtorRegistry(Wt);class SVGSVGElement extends Wt.SVGGraphicsElement{constructor(){throw new Wt.TypeError("Illegal constructor")}createSVGNumber(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'createSVGNumber' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In].createSVGNumber())}getElementById(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'getElementById' called on an object that is not a valid instance of SVGSVGElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getElementById' on 'SVGSVGElement': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getElementById' on 'SVGSVGElement': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[In].getElementById(...rn))}suspendRedraw(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'suspendRedraw' called on an object that is not a valid instance of SVGSVGElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'suspendRedraw' on 'SVGSVGElement': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'suspendRedraw' on 'SVGSVGElement': parameter 1",globals:Wt});an.push(Pt)}return nn[In].suspendRedraw(...an)}unsuspendRedraw(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'unsuspendRedraw' called on an object that is not a valid instance of SVGSVGElement.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'unsuspendRedraw' on 'SVGSVGElement': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'unsuspendRedraw' on 'SVGSVGElement': parameter 1",globals:Wt});an.push(Pt)}return nn[In].unsuspendRedraw(...an)}unsuspendRedrawAll(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'unsuspendRedrawAll' called on an object that is not a valid instance of SVGSVGElement.")}return en[In].unsuspendRedrawAll()}forceRedraw(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'forceRedraw' called on an object that is not a valid instance of SVGSVGElement.")}return en[In].forceRedraw()}get onafterprint(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onafterprint' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onafterprint"])}set onafterprint(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onafterprint' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onafterprint' property on 'SVGSVGElement': The provided value"})}tn[In]["onafterprint"]=en}get onbeforeprint(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforeprint' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onbeforeprint"])}set onbeforeprint(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforeprint' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onbeforeprint' property on 'SVGSVGElement': The provided value"})}tn[In]["onbeforeprint"]=en}get onbeforeunload(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onbeforeunload' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onbeforeunload"])}set onbeforeunload(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onbeforeunload' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=rn.convert(Wt,en,{context:"Failed to set the 'onbeforeunload' property on 'SVGSVGElement': The provided value"})}tn[In]["onbeforeunload"]=en}get onhashchange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onhashchange' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onhashchange"])}set onhashchange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onhashchange' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onhashchange' property on 'SVGSVGElement': The provided value"})}tn[In]["onhashchange"]=en}get onlanguagechange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onlanguagechange' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onlanguagechange"])}set onlanguagechange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onlanguagechange' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onlanguagechange' property on 'SVGSVGElement': The provided value"})}tn[In]["onlanguagechange"]=en}get onmessage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmessage' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onmessage"])}set onmessage(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmessage' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onmessage' property on 'SVGSVGElement': The provided value"})}tn[In]["onmessage"]=en}get onmessageerror(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmessageerror' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onmessageerror"])}set onmessageerror(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmessageerror' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onmessageerror' property on 'SVGSVGElement': The provided value"})}tn[In]["onmessageerror"]=en}get onoffline(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onoffline' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onoffline"])}set onoffline(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onoffline' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onoffline' property on 'SVGSVGElement': The provided value"})}tn[In]["onoffline"]=en}get ononline(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ononline' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["ononline"])}set ononline(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ononline' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ononline' property on 'SVGSVGElement': The provided value"})}tn[In]["ononline"]=en}get onpagehide(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpagehide' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onpagehide"])}set onpagehide(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpagehide' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onpagehide' property on 'SVGSVGElement': The provided value"})}tn[In]["onpagehide"]=en}get onpageshow(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpageshow' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onpageshow"])}set onpageshow(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpageshow' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onpageshow' property on 'SVGSVGElement': The provided value"})}tn[In]["onpageshow"]=en}get onpopstate(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onpopstate' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onpopstate"])}set onpopstate(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onpopstate' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onpopstate' property on 'SVGSVGElement': The provided value"})}tn[In]["onpopstate"]=en}get onrejectionhandled(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onrejectionhandled' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onrejectionhandled"])}set onrejectionhandled(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onrejectionhandled' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onrejectionhandled' property on 'SVGSVGElement': The provided value"})}tn[In]["onrejectionhandled"]=en}get onstorage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onstorage' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onstorage"])}set onstorage(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onstorage' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onstorage' property on 'SVGSVGElement': The provided value"})}tn[In]["onstorage"]=en}get onunhandledrejection(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onunhandledrejection' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onunhandledrejection"])}set onunhandledrejection(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onunhandledrejection' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onunhandledrejection' property on 'SVGSVGElement': The provided value"})}tn[In]["onunhandledrejection"]=en}get onunload(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onunload' called on an object that is not a valid instance of SVGSVGElement.")}return nn.tryWrapperForImpl(en[In]["onunload"])}set onunload(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onunload' called on an object that is not a valid instance of SVGSVGElement.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onunload' property on 'SVGSVGElement': The provided value"})}tn[In]["onunload"]=en}}Object.defineProperties(SVGSVGElement.prototype,{createSVGNumber:{enumerable:true},getElementById:{enumerable:true},suspendRedraw:{enumerable:true},unsuspendRedraw:{enumerable:true},unsuspendRedrawAll:{enumerable:true},forceRedraw:{enumerable:true},onafterprint:{enumerable:true},onbeforeprint:{enumerable:true},onbeforeunload:{enumerable:true},onhashchange:{enumerable:true},onlanguagechange:{enumerable:true},onmessage:{enumerable:true},onmessageerror:{enumerable:true},onoffline:{enumerable:true},ononline:{enumerable:true},onpagehide:{enumerable:true},onpageshow:{enumerable:true},onpopstate:{enumerable:true},onrejectionhandled:{enumerable:true},onstorage:{enumerable:true},onunhandledrejection:{enumerable:true},onunload:{enumerable:true},[Symbol.toStringTag]:{value:"SVGSVGElement",configurable:true}});sn[cn]=SVGSVGElement;Object.defineProperty(Wt,cn,{configurable:true,writable:true,value:SVGSVGElement})};const un=en(53362)},48780:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="SVGStringList";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'SVGStringList'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["SVGStringList"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=on.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);on.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt=makeProxy(Wt,en);Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class SVGStringList{constructor(){throw new Wt.TypeError("Illegal constructor")}clear(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'clear' called on an object that is not a valid instance of SVGStringList.")}return en[an].clear()}initialize(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'initialize' called on an object that is not a valid instance of SVGStringList.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'initialize' on 'SVGStringList': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initialize' on 'SVGStringList': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].initialize(...rn)}getItem(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'getItem' called on an object that is not a valid instance of SVGStringList.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getItem' on 'SVGStringList': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'getItem' on 'SVGStringList': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].getItem(...rn)}insertItemBefore(en,nn){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'insertItemBefore' called on an object that is not a valid instance of SVGStringList.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'insertItemBefore' on 'SVGStringList': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'insertItemBefore' on 'SVGStringList': parameter 1",globals:Wt});In.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'insertItemBefore' on 'SVGStringList': parameter 2",globals:Wt});In.push(Pt)}return rn[an].insertItemBefore(...In)}replaceItem(en,nn){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'replaceItem' called on an object that is not a valid instance of SVGStringList.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'replaceItem' on 'SVGStringList': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'replaceItem' on 'SVGStringList': parameter 1",globals:Wt});In.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'replaceItem' on 'SVGStringList': parameter 2",globals:Wt});In.push(Pt)}return rn[an].replaceItem(...In)}removeItem(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'removeItem' called on an object that is not a valid instance of SVGStringList.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'removeItem' on 'SVGStringList': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'removeItem' on 'SVGStringList': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].removeItem(...rn)}appendItem(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'appendItem' called on an object that is not a valid instance of SVGStringList.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'appendItem' on 'SVGStringList': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'appendItem' on 'SVGStringList': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].appendItem(...rn)}get length(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get length' called on an object that is not a valid instance of SVGStringList.")}return en[an]["length"]}get numberOfItems(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get numberOfItems' called on an object that is not a valid instance of SVGStringList.")}return en[an]["numberOfItems"]}}Object.defineProperties(SVGStringList.prototype,{clear:{enumerable:true},initialize:{enumerable:true},getItem:{enumerable:true},insertItemBefore:{enumerable:true},replaceItem:{enumerable:true},removeItem:{enumerable:true},appendItem:{enumerable:true},length:{enumerable:true},numberOfItems:{enumerable:true},[Symbol.toStringTag]:{value:"SVGStringList",configurable:true},[Symbol.iterator]:{value:Wt.Array.prototype[Symbol.iterator],configurable:true,writable:true}});rn[In]=SVGStringList;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:SVGStringList})};const on=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[an][nn.supportedPropertyIndices]){Pt.add(`${en}`)}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;if(nn.isArrayIndexPropName(Pt)){const tn=Pt>>>0;if(Wt[an][nn.supportsPropertyIndex](tn)){const Pt=Wt[an].getItem(tn);return{writable:true,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(Pt)}}en=true}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,rn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,rn)}if(Wt[an][nn.wrapperSymbol]===rn){const rn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const In=Pt>>>0;let sn=en;sn=tn["DOMString"](sn,{context:"Failed to set the "+In+" property on 'SVGStringList': The provided value",globals:rn});const on=!Wt[an][nn.supportsPropertyIndex](In);if(on){Wt[an][nn.indexedSetNew](In,sn)}else{Wt[an][nn.indexedSetExisting](In,sn)}return true}}let In;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;if(Wt[an][nn.supportsPropertyIndex](en)){const Pt=Wt[an].getItem(en);In={writable:true,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(Pt)}}}if(In===undefined){In=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(In===undefined){const tn=Reflect.getPrototypeOf(Wt);if(tn!==null){return Reflect.set(tn,Pt,en,rn)}In={writable:true,enumerable:true,configurable:true,value:undefined}}if(!In.writable){return false}if(!nn.isObject(rn)){return false}const sn=Reflect.getOwnPropertyDescriptor(rn,Pt);let on;if(sn!==undefined){if(sn.get||sn.set){return false}if(!sn.writable){return false}on={value:en}}else{on={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(rn,Pt,on)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const rn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){if(en.get||en.set){return false}const In=Pt>>>0;let sn=en.value;sn=tn["DOMString"](sn,{context:"Failed to set the "+In+" property on 'SVGStringList': The provided value",globals:rn});const on=!Wt[an][nn.supportsPropertyIndex](In);if(on){Wt[an][nn.indexedSetNew](In,sn)}else{Wt[an][nn.indexedSetExisting](In,sn)}return true}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;return!Wt[an][nn.supportsPropertyIndex](en)}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const cn=en(51178)},93815:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In=en(70321);const sn="SVGTitleElement";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'SVGTitleElement'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["SVGTitleElement"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{In._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const on=new Set(["Window"]);Pt.install=(Wt,Pt)=>{if(!Pt.some((Wt=>on.has(Wt)))){return}const en=nn.initCtorRegistry(Wt);class SVGTitleElement extends Wt.SVGElement{constructor(){throw new Wt.TypeError("Illegal constructor")}}Object.defineProperties(SVGTitleElement.prototype,{[Symbol.toStringTag]:{value:"SVGTitleElement",configurable:true}});en[sn]=SVGTitleElement;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:SVGTitleElement})};const cn=en(52774)},42235:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="Screen";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Screen'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["Screen"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class Screen{constructor(){throw new Wt.TypeError("Illegal constructor")}get availWidth(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get availWidth' called on an object that is not a valid instance of Screen.")}return en[an]["availWidth"]}get availHeight(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get availHeight' called on an object that is not a valid instance of Screen.")}return en[an]["availHeight"]}get width(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get width' called on an object that is not a valid instance of Screen.")}return en[an]["width"]}get height(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get height' called on an object that is not a valid instance of Screen.")}return en[an]["height"]}get colorDepth(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get colorDepth' called on an object that is not a valid instance of Screen.")}return en[an]["colorDepth"]}get pixelDepth(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get pixelDepth' called on an object that is not a valid instance of Screen.")}return en[an]["pixelDepth"]}}Object.defineProperties(Screen.prototype,{availWidth:{enumerable:true},availHeight:{enumerable:true},width:{enumerable:true},height:{enumerable:true},colorDepth:{enumerable:true},pixelDepth:{enumerable:true},[Symbol.toStringTag]:{value:"Screen",configurable:true}});tn[In]=Screen;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:Screen})};const on=en(56599)},1417:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(60190);const rn=en(24171);const In=en(8348).ceReactionsPreSteps;const sn=en(8348).ceReactionsPostSteps;const on=nn.implSymbol;const cn=nn.ctorRegistrySymbol;const dn="Selection";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,on)&&Wt[on]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Selection'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[cn]["Selection"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,on,{value:new pn.implementation(en,tn,an),configurable:true});Wt[on][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[on])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,on,{value:Object.create(pn.implementation.prototype),configurable:true});tn[on][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[on])}return tn[on]};const un=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const cn=nn.initCtorRegistry(Wt);class Selection{constructor(){throw new Wt.TypeError("Illegal constructor")}getRangeAt(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'getRangeAt' called on an object that is not a valid instance of Selection.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getRangeAt' on 'Selection': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'getRangeAt' on 'Selection': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[on].getRangeAt(...rn))}addRange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'addRange' called on an object that is not a valid instance of Selection.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'addRange' on 'Selection': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'addRange' on 'Selection': parameter 1"});nn.push(Pt)}return tn[on].addRange(...nn)}removeRange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'removeRange' called on an object that is not a valid instance of Selection.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'removeRange' on 'Selection': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'removeRange' on 'Selection': parameter 1"});nn.push(Pt)}return tn[on].removeRange(...nn)}removeAllRanges(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'removeAllRanges' called on an object that is not a valid instance of Selection.")}return en[on].removeAllRanges()}empty(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'empty' called on an object that is not a valid instance of Selection.")}return en[on].empty()}collapse(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'collapse' called on an object that is not a valid instance of Selection.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'collapse' on 'Selection': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'collapse' on 'Selection': parameter 1"})}an.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'collapse' on 'Selection': parameter 2",globals:Wt})}else{Pt=0}an.push(Pt)}return nn[on].collapse(...an)}setPosition(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'setPosition' called on an object that is not a valid instance of Selection.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'setPosition' on 'Selection': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];if(Pt===null||Pt===undefined){Pt=null}else{Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'setPosition' on 'Selection': parameter 1"})}an.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setPosition' on 'Selection': parameter 2",globals:Wt})}else{Pt=0}an.push(Pt)}return nn[on].setPosition(...an)}collapseToStart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'collapseToStart' called on an object that is not a valid instance of Selection.")}return en[on].collapseToStart()}collapseToEnd(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'collapseToEnd' called on an object that is not a valid instance of Selection.")}return en[on].collapseToEnd()}extend(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'extend' called on an object that is not a valid instance of Selection.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'extend' on 'Selection': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'extend' on 'Selection': parameter 1"});an.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'extend' on 'Selection': parameter 2",globals:Wt})}else{Pt=0}an.push(Pt)}return nn[on].extend(...an)}setBaseAndExtent(en,nn,an,In){const sn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(sn)){throw new Wt.TypeError("'setBaseAndExtent' called on an object that is not a valid instance of Selection.")}if(arguments.length<4){throw new Wt.TypeError(`Failed to execute 'setBaseAndExtent' on 'Selection': 4 arguments required, but only ${arguments.length} present.`)}const cn=[];{let Pt=arguments[0];Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'setBaseAndExtent' on 'Selection': parameter 1"});cn.push(Pt)}{let Pt=arguments[1];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setBaseAndExtent' on 'Selection': parameter 2",globals:Wt});cn.push(Pt)}{let Pt=arguments[2];Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'setBaseAndExtent' on 'Selection': parameter 3"});cn.push(Pt)}{let Pt=arguments[3];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'setBaseAndExtent' on 'Selection': parameter 4",globals:Wt});cn.push(Pt)}return sn[on].setBaseAndExtent(...cn)}selectAllChildren(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'selectAllChildren' called on an object that is not a valid instance of Selection.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'selectAllChildren' on 'Selection': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'selectAllChildren' on 'Selection': parameter 1"});nn.push(Pt)}return tn[on].selectAllChildren(...nn)}deleteFromDocument(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'deleteFromDocument' called on an object that is not a valid instance of Selection.")}In(Wt);try{return en[on].deleteFromDocument()}finally{sn(Wt)}}containsNode(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'containsNode' called on an object that is not a valid instance of Selection.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'containsNode' on 'Selection': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'containsNode' on 'Selection': parameter 1"});an.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'containsNode' on 'Selection': parameter 2",globals:Wt})}else{Pt=false}an.push(Pt)}return nn[on].containsNode(...an)}toString(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'toString' called on an object that is not a valid instance of Selection.")}return en[on].toString()}get anchorNode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get anchorNode' called on an object that is not a valid instance of Selection.")}return nn.tryWrapperForImpl(en[on]["anchorNode"])}get anchorOffset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get anchorOffset' called on an object that is not a valid instance of Selection.")}return en[on]["anchorOffset"]}get focusNode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get focusNode' called on an object that is not a valid instance of Selection.")}return nn.tryWrapperForImpl(en[on]["focusNode"])}get focusOffset(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get focusOffset' called on an object that is not a valid instance of Selection.")}return en[on]["focusOffset"]}get isCollapsed(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get isCollapsed' called on an object that is not a valid instance of Selection.")}return en[on]["isCollapsed"]}get rangeCount(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rangeCount' called on an object that is not a valid instance of Selection.")}return en[on]["rangeCount"]}get type(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get type' called on an object that is not a valid instance of Selection.")}return en[on]["type"]}}Object.defineProperties(Selection.prototype,{getRangeAt:{enumerable:true},addRange:{enumerable:true},removeRange:{enumerable:true},removeAllRanges:{enumerable:true},empty:{enumerable:true},collapse:{enumerable:true},setPosition:{enumerable:true},collapseToStart:{enumerable:true},collapseToEnd:{enumerable:true},extend:{enumerable:true},setBaseAndExtent:{enumerable:true},selectAllChildren:{enumerable:true},deleteFromDocument:{enumerable:true},containsNode:{enumerable:true},toString:{enumerable:true},anchorNode:{enumerable:true},anchorOffset:{enumerable:true},focusNode:{enumerable:true},focusOffset:{enumerable:true},isCollapsed:{enumerable:true},rangeCount:{enumerable:true},type:{enumerable:true},[Symbol.toStringTag]:{value:"Selection",configurable:true}});cn[dn]=Selection;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:Selection})};const pn=en(985)},74150:(Wt,Pt)=>{"use strict";const en=new Set(["select","start","end","preserve"]);Pt.enumerationValues=en;Pt.convert=(Wt,Pt,{context:tn="The provided value"}={})=>{const nn=`${Pt}`;if(!en.has(nn)){throw new Wt.TypeError(`${tn} '${nn}' is not a valid enumeration value for SelectionMode`)}return nn}},21283:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(8348).ceReactionsPreSteps;const rn=en(8348).ceReactionsPostSteps;const In=nn.implSymbol;const sn=nn.ctorRegistrySymbol;const on=en(98938);const cn="ShadowRoot";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,In)&&Wt[In]instanceof un.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof un.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'ShadowRoot'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[sn]["ShadowRoot"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{on._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,In,{value:new un.implementation(en,tn,an),configurable:true});Wt[In][nn.wrapperSymbol]=Wt;if(un.init){un.init(Wt[In])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,In,{value:Object.create(un.implementation.prototype),configurable:true});tn[In][nn.wrapperSymbol]=tn;if(un.init){un.init(tn[In])}return tn[In]};const dn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>dn.has(Wt)))){return}const sn=nn.initCtorRegistry(Wt);class ShadowRoot extends Wt.DocumentFragment{constructor(){throw new Wt.TypeError("Illegal constructor")}get mode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get mode' called on an object that is not a valid instance of ShadowRoot.")}return nn.tryWrapperForImpl(en[In]["mode"])}get host(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get host' called on an object that is not a valid instance of ShadowRoot.")}return nn.tryWrapperForImpl(en[In]["host"])}get innerHTML(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get innerHTML' called on an object that is not a valid instance of ShadowRoot.")}an(Wt);try{return en[In]["innerHTML"]}finally{rn(Wt)}}set innerHTML(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set innerHTML' called on an object that is not a valid instance of ShadowRoot.")}en=tn["DOMString"](en,{context:"Failed to set the 'innerHTML' property on 'ShadowRoot': The provided value",globals:Wt,treatNullAsEmptyString:true});an(Wt);try{nn[In]["innerHTML"]=en}finally{rn(Wt)}}get activeElement(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get activeElement' called on an object that is not a valid instance of ShadowRoot.")}return nn.tryWrapperForImpl(en[In]["activeElement"])}}Object.defineProperties(ShadowRoot.prototype,{mode:{enumerable:true},host:{enumerable:true},innerHTML:{enumerable:true},activeElement:{enumerable:true},[Symbol.toStringTag]:{value:"ShadowRoot",configurable:true}});sn[cn]=ShadowRoot;Object.defineProperty(Wt,cn,{configurable:true,writable:true,value:ShadowRoot})};const un=en(2114)},82921:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(58844);Pt._convertInherit=(Wt,Pt,en,{context:tn="The provided value"}={})=>{{const nn="mode";let rn=Pt===undefined||Pt===null?undefined:Pt[nn];if(rn!==undefined){rn=an.convert(Wt,rn,{context:tn+" has member 'mode' that"});en[nn]=rn}else{throw new Wt.TypeError("mode is required in 'ShadowRootInit'")}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},58844:(Wt,Pt)=>{"use strict";const en=new Set(["open","closed"]);Pt.enumerationValues=en;Pt.convert=(Wt,Pt,{context:tn="The provided value"}={})=>{const nn=`${Pt}`;if(!en.has(nn)){throw new Wt.TypeError(`${tn} '${nn}' is not a valid enumeration value for ShadowRootMode`)}return nn}},40096:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(36166);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(77632);const on="StaticRange";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'StaticRange'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["StaticRange"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class StaticRange extends Wt.AbstractRange{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'StaticRange': 1 argument required, but only ${arguments.length} present.`)}const tn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'StaticRange': parameter 1"});tn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,tn)}}Object.defineProperties(StaticRange.prototype,{[Symbol.toStringTag]:{value:"StaticRange",configurable:true}});tn[on]=StaticRange;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:StaticRange})};const dn=en(57315)},36166:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(24171);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{{const tn="endContainer";let rn=Pt===undefined||Pt===null?undefined:Pt[tn];if(rn!==undefined){rn=an.convert(Wt,rn,{context:nn+" has member 'endContainer' that"});en[tn]=rn}else{throw new Wt.TypeError("endContainer is required in 'StaticRangeInit'")}}{const an="endOffset";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unsigned long"](rn,{context:nn+" has member 'endOffset' that",globals:Wt});en[an]=rn}else{throw new Wt.TypeError("endOffset is required in 'StaticRangeInit'")}}{const tn="startContainer";let rn=Pt===undefined||Pt===null?undefined:Pt[tn];if(rn!==undefined){rn=an.convert(Wt,rn,{context:nn+" has member 'startContainer' that"});en[tn]=rn}else{throw new Wt.TypeError("startContainer is required in 'StaticRangeInit'")}}{const an="startOffset";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unsigned long"](rn,{context:nn+" has member 'startOffset' that",globals:Wt});en[an]=rn}else{throw new Wt.TypeError("startOffset is required in 'StaticRangeInit'")}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},90778:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="Storage";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Storage'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["Storage"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=on.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);on.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt=makeProxy(Wt,en);Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class Storage{constructor(){throw new Wt.TypeError("Illegal constructor")}key(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'key' called on an object that is not a valid instance of Storage.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'key' on 'Storage': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'key' on 'Storage': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].key(...rn)}getItem(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'getItem' called on an object that is not a valid instance of Storage.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getItem' on 'Storage': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'getItem' on 'Storage': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].getItem(...rn)}setItem(en,nn){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'setItem' called on an object that is not a valid instance of Storage.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'setItem' on 'Storage': 2 arguments required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setItem' on 'Storage': parameter 1",globals:Wt});In.push(Pt)}{let Pt=arguments[1];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'setItem' on 'Storage': parameter 2",globals:Wt});In.push(Pt)}return rn[an].setItem(...In)}removeItem(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'removeItem' called on an object that is not a valid instance of Storage.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'removeItem' on 'Storage': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'removeItem' on 'Storage': parameter 1",globals:Wt});rn.push(Pt)}return nn[an].removeItem(...rn)}clear(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'clear' called on an object that is not a valid instance of Storage.")}return en[an].clear()}get length(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get length' called on an object that is not a valid instance of Storage.")}return en[an]["length"]}}Object.defineProperties(Storage.prototype,{key:{enumerable:true},getItem:{enumerable:true},setItem:{enumerable:true},removeItem:{enumerable:true},clear:{enumerable:true},length:{enumerable:true},[Symbol.toStringTag]:{value:"Storage",configurable:true}});rn[In]=Storage;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:Storage})};const on=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[an][nn.supportedPropertyNames]){if(!(en in Wt)){Pt.add(`${en}`)}}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;const tn=Wt[an].getItem(Pt);if(tn!==null&&!(Pt in Wt)&&!en){return{writable:true,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,rn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,rn)}if(Wt[an][nn.wrapperSymbol]===rn){const nn=this._globalObject;if(typeof Pt==="string"){let rn=en;rn=tn["DOMString"](rn,{context:"Failed to set the '"+Pt+"' property on 'Storage': The provided value",globals:nn});Wt[an].setItem(Pt,rn);return true}}let In;if(In===undefined){In=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(In===undefined){const tn=Reflect.getPrototypeOf(Wt);if(tn!==null){return Reflect.set(tn,Pt,en,rn)}In={writable:true,enumerable:true,configurable:true,value:undefined}}if(!In.writable){return false}if(!nn.isObject(rn)){return false}const sn=Reflect.getOwnPropertyDescriptor(rn,Pt);let on;if(sn!==undefined){if(sn.get||sn.set){return false}if(!sn.writable){return false}on={value:en}}else{on={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(rn,Pt,on)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const rn=this._globalObject;if(!nn.hasOwn(Wt,Pt)){if(en.get||en.set){return false}let nn=en.value;nn=tn["DOMString"](nn,{context:"Failed to set the '"+Pt+"' property on 'Storage': The provided value",globals:rn});Wt[an].setItem(Pt,nn);return true}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(Wt[an].getItem(Pt)!==null&&!(Pt in Wt)){Wt[an].removeItem(Pt);return true}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const cn=en(16899)},38704:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(38089);const rn=en(90778);const In=nn.implSymbol;const sn=nn.ctorRegistrySymbol;const on=en(94431);const cn="StorageEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,In)&&Wt[In]instanceof un.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof un.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'StorageEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[sn]["StorageEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{on._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,In,{value:new un.implementation(en,tn,an),configurable:true});Wt[In][nn.wrapperSymbol]=Wt;if(un.init){un.init(Wt[In])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,In,{value:Object.create(un.implementation.prototype),configurable:true});tn[In][nn.wrapperSymbol]=tn;if(un.init){un.init(tn[In])}return tn[In]};const dn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>dn.has(Wt)))){return}const sn=nn.initCtorRegistry(Wt);class StorageEvent extends Wt.Event{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'StorageEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'StorageEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'StorageEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}initStorageEvent(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'initStorageEvent' called on an object that is not a valid instance of StorageEvent.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'initStorageEvent' on 'StorageEvent': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initStorageEvent' on 'StorageEvent': parameter 1",globals:Wt});an.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initStorageEvent' on 'StorageEvent': parameter 2",globals:Wt})}else{Pt=false}an.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initStorageEvent' on 'StorageEvent': parameter 3",globals:Wt})}else{Pt=false}an.push(Pt)}{let Pt=arguments[3];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initStorageEvent' on 'StorageEvent': parameter 4",globals:Wt})}}else{Pt=null}an.push(Pt)}{let Pt=arguments[4];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initStorageEvent' on 'StorageEvent': parameter 5",globals:Wt})}}else{Pt=null}an.push(Pt)}{let Pt=arguments[5];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initStorageEvent' on 'StorageEvent': parameter 6",globals:Wt})}}else{Pt=null}an.push(Pt)}{let Pt=arguments[6];if(Pt!==undefined){Pt=tn["USVString"](Pt,{context:"Failed to execute 'initStorageEvent' on 'StorageEvent': parameter 7",globals:Wt})}else{Pt=""}an.push(Pt)}{let Pt=arguments[7];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{Pt=rn.convert(Wt,Pt,{context:"Failed to execute 'initStorageEvent' on 'StorageEvent': parameter 8"})}}else{Pt=null}an.push(Pt)}return nn[In].initStorageEvent(...an)}get key(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get key' called on an object that is not a valid instance of StorageEvent.")}return en[In]["key"]}get oldValue(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get oldValue' called on an object that is not a valid instance of StorageEvent.")}return en[In]["oldValue"]}get newValue(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get newValue' called on an object that is not a valid instance of StorageEvent.")}return en[In]["newValue"]}get url(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get url' called on an object that is not a valid instance of StorageEvent.")}return en[In]["url"]}get storageArea(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get storageArea' called on an object that is not a valid instance of StorageEvent.")}return nn.tryWrapperForImpl(en[In]["storageArea"])}}Object.defineProperties(StorageEvent.prototype,{initStorageEvent:{enumerable:true},key:{enumerable:true},oldValue:{enumerable:true},newValue:{enumerable:true},url:{enumerable:true},storageArea:{enumerable:true},[Symbol.toStringTag]:{value:"StorageEvent",configurable:true}});sn[cn]=StorageEvent;Object.defineProperty(Wt,cn,{configurable:true,writable:true,value:StorageEvent})};const un=en(60563)},38089:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(90778);const rn=en(31893);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{rn._convertInherit(Wt,Pt,en,{context:nn});{const an="key";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){if(rn===null||rn===undefined){rn=null}else{rn=tn["DOMString"](rn,{context:nn+" has member 'key' that",globals:Wt})}en[an]=rn}else{en[an]=null}}{const an="newValue";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){if(rn===null||rn===undefined){rn=null}else{rn=tn["DOMString"](rn,{context:nn+" has member 'newValue' that",globals:Wt})}en[an]=rn}else{en[an]=null}}{const an="oldValue";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){if(rn===null||rn===undefined){rn=null}else{rn=tn["DOMString"](rn,{context:nn+" has member 'oldValue' that",globals:Wt})}en[an]=rn}else{en[an]=null}}{const tn="storageArea";let rn=Pt===undefined||Pt===null?undefined:Pt[tn];if(rn!==undefined){if(rn===null||rn===undefined){rn=null}else{rn=an.convert(Wt,rn,{context:nn+" has member 'storageArea' that"})}en[tn]=rn}else{en[tn]=null}}{const an="url";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["USVString"](rn,{context:nn+" has member 'url' that",globals:Wt});en[an]=rn}else{en[an]=""}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},25911:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="StyleSheetList";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'StyleSheetList'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["StyleSheetList"].prototype}return Object.create(en)}function makeProxy(Wt,Pt){let en=on.get(Pt);if(en===undefined){en=new ProxyHandler(Pt);on.set(Pt,en)}return new Proxy(Wt,en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt=makeProxy(Wt,en);Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{let tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn=makeProxy(tn,Wt);tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class StyleSheetList{constructor(){throw new Wt.TypeError("Illegal constructor")}item(en){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'item' called on an object that is not a valid instance of StyleSheetList.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'item' on 'StyleSheetList': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'item' on 'StyleSheetList': parameter 1",globals:Wt});In.push(Pt)}return nn.tryWrapperForImpl(rn[an].item(...In))}get length(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get length' called on an object that is not a valid instance of StyleSheetList.")}return en[an]["length"]}}Object.defineProperties(StyleSheetList.prototype,{item:{enumerable:true},length:{enumerable:true},[Symbol.toStringTag]:{value:"StyleSheetList",configurable:true},[Symbol.iterator]:{value:Wt.Array.prototype[Symbol.iterator],configurable:true,writable:true}});rn[In]=StyleSheetList;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:StyleSheetList})};const on=new WeakMap;class ProxyHandler{constructor(Wt){this._globalObject=Wt}get(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.get(Wt,Pt,en)}const tn=this.getOwnPropertyDescriptor(Wt,Pt);if(tn===undefined){const tn=Object.getPrototypeOf(Wt);if(tn===null){return undefined}return Reflect.get(Wt,Pt,en)}if(!tn.get&&!tn.set){return tn.value}const nn=tn.get;if(nn===undefined){return undefined}return Reflect.apply(nn,en,[])}has(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.has(Wt,Pt)}const en=this.getOwnPropertyDescriptor(Wt,Pt);if(en!==undefined){return true}const tn=Object.getPrototypeOf(Wt);if(tn!==null){return Reflect.has(tn,Pt)}return false}ownKeys(Wt){const Pt=new Set;for(const en of Wt[an][nn.supportedPropertyIndices]){Pt.add(`${en}`)}for(const en of Reflect.ownKeys(Wt)){Pt.add(en)}return[...Pt]}getOwnPropertyDescriptor(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.getOwnPropertyDescriptor(Wt,Pt)}let en=false;if(nn.isArrayIndexPropName(Pt)){const tn=Pt>>>0;const rn=Wt[an].item(tn);if(rn!==null){return{writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(rn)}}en=true}return Reflect.getOwnPropertyDescriptor(Wt,Pt)}set(Wt,Pt,en,tn){if(typeof Pt==="symbol"){return Reflect.set(Wt,Pt,en,tn)}if(Wt[an][nn.wrapperSymbol]===tn){const Wt=this._globalObject}let rn;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;const tn=Wt[an].item(en);if(tn!==null){rn={writable:false,enumerable:true,configurable:true,value:nn.tryWrapperForImpl(tn)}}}if(rn===undefined){rn=Reflect.getOwnPropertyDescriptor(Wt,Pt)}if(rn===undefined){const nn=Reflect.getPrototypeOf(Wt);if(nn!==null){return Reflect.set(nn,Pt,en,tn)}rn={writable:true,enumerable:true,configurable:true,value:undefined}}if(!rn.writable){return false}if(!nn.isObject(tn)){return false}const In=Reflect.getOwnPropertyDescriptor(tn,Pt);let sn;if(In!==undefined){if(In.get||In.set){return false}if(!In.writable){return false}sn={value:en}}else{sn={writable:true,enumerable:true,configurable:true,value:en}}return Reflect.defineProperty(tn,Pt,sn)}defineProperty(Wt,Pt,en){if(typeof Pt==="symbol"){return Reflect.defineProperty(Wt,Pt,en)}const tn=this._globalObject;if(nn.isArrayIndexPropName(Pt)){return false}return Reflect.defineProperty(Wt,Pt,en)}deleteProperty(Wt,Pt){if(typeof Pt==="symbol"){return Reflect.deleteProperty(Wt,Pt)}const en=this._globalObject;if(nn.isArrayIndexPropName(Pt)){const en=Pt>>>0;return!(Wt[an].item(en)!==null)}return Reflect.deleteProperty(Wt,Pt)}preventExtensions(){return false}}const cn=en(86096)},3823:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(17189);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(94431);const on="SubmitEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'SubmitEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["SubmitEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class SubmitEvent extends Wt.Event{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'SubmitEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'SubmitEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'SubmitEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}get submitter(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get submitter' called on an object that is not a valid instance of SubmitEvent.")}return nn.tryWrapperForImpl(en[rn]["submitter"])}}Object.defineProperties(SubmitEvent.prototype,{submitter:{enumerable:true},[Symbol.toStringTag]:{value:"SubmitEvent",configurable:true}});In[on]=SubmitEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:SubmitEvent})};const dn=en(68710)},17189:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(48708);const rn=en(31893);Pt._convertInherit=(Wt,Pt,en,{context:tn="The provided value"}={})=>{rn._convertInherit(Wt,Pt,en,{context:tn});{const nn="submitter";let rn=Pt===undefined||Pt===null?undefined:Pt[nn];if(rn!==undefined){if(rn===null||rn===undefined){rn=null}else{rn=an.convert(Wt,rn,{context:tn+" has member 'submitter' that"})}en[nn]=rn}else{en[nn]=null}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},36521:(Wt,Pt)=>{"use strict";const en=new Set(["text/html","text/xml","application/xml","application/xhtml+xml","image/svg+xml"]);Pt.enumerationValues=en;Pt.convert=(Wt,Pt,{context:tn="The provided value"}={})=>{const nn=`${Pt}`;if(!en.has(nn)){throw new Wt.TypeError(`${tn} '${nn}' is not a valid enumeration value for SupportedType`)}return nn}},40196:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In=en(30052);const sn="Text";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'Text'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["Text"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{In._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const on=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>on.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class Text extends Wt.CharacterData{constructor(){const en=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["DOMString"](Pt,{context:"Failed to construct 'Text': parameter 1",globals:Wt})}else{Pt=""}en.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,en)}splitText(en){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'splitText' called on an object that is not a valid instance of Text.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'splitText' on 'Text': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["unsigned long"](Pt,{context:"Failed to execute 'splitText' on 'Text': parameter 1",globals:Wt});In.push(Pt)}return nn.tryWrapperForImpl(rn[an].splitText(...In))}get wholeText(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get wholeText' called on an object that is not a valid instance of Text.")}return en[an]["wholeText"]}get assignedSlot(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get assignedSlot' called on an object that is not a valid instance of Text.")}return nn.tryWrapperForImpl(en[an]["assignedSlot"])}}Object.defineProperties(Text.prototype,{splitText:{enumerable:true},wholeText:{enumerable:true},assignedSlot:{enumerable:true},[Symbol.toStringTag]:{value:"Text",configurable:true}});rn[sn]=Text;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:Text})};const cn=en(4247)},27655:(Wt,Pt)=>{"use strict";const en=new Set(["subtitles","captions","descriptions","chapters","metadata"]);Pt.enumerationValues=en;Pt.convert=(Wt,Pt,{context:tn="The provided value"}={})=>{const nn=`${Pt}`;if(!en.has(nn)){throw new Wt.TypeError(`${tn} '${nn}' is not a valid enumeration value for TextTrackKind`)}return nn}},13246:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(93616);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(38921);const on="TouchEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'TouchEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["TouchEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class TouchEvent extends Wt.UIEvent{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'TouchEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'TouchEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'TouchEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}get touches(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get touches' called on an object that is not a valid instance of TouchEvent.")}return nn.tryWrapperForImpl(en[rn]["touches"])}get targetTouches(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get targetTouches' called on an object that is not a valid instance of TouchEvent.")}return nn.tryWrapperForImpl(en[rn]["targetTouches"])}get changedTouches(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get changedTouches' called on an object that is not a valid instance of TouchEvent.")}return nn.tryWrapperForImpl(en[rn]["changedTouches"])}get altKey(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get altKey' called on an object that is not a valid instance of TouchEvent.")}return en[rn]["altKey"]}get metaKey(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get metaKey' called on an object that is not a valid instance of TouchEvent.")}return en[rn]["metaKey"]}get ctrlKey(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ctrlKey' called on an object that is not a valid instance of TouchEvent.")}return en[rn]["ctrlKey"]}get shiftKey(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get shiftKey' called on an object that is not a valid instance of TouchEvent.")}return en[rn]["shiftKey"]}}Object.defineProperties(TouchEvent.prototype,{touches:{enumerable:true},targetTouches:{enumerable:true},changedTouches:{enumerable:true},altKey:{enumerable:true},metaKey:{enumerable:true},ctrlKey:{enumerable:true},shiftKey:{enumerable:true},[Symbol.toStringTag]:{value:"TouchEvent",configurable:true}});In[on]=TouchEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:TouchEvent})};const dn=en(85861)},93616:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(6588);Pt._convertInherit=(Wt,Pt,en,{context:tn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:tn});{const an="changedTouches";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){if(!nn.isObject(rn)){throw new Wt.TypeError(tn+" has member 'changedTouches' that"+" is not an iterable object.")}else{const Wt=[];const Pt=rn;for(let en of Pt){en=nn.tryImplForWrapper(en);Wt.push(en)}rn=Wt}en[an]=rn}else{en[an]=[]}}{const an="targetTouches";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){if(!nn.isObject(rn)){throw new Wt.TypeError(tn+" has member 'targetTouches' that"+" is not an iterable object.")}else{const Wt=[];const Pt=rn;for(let en of Pt){en=nn.tryImplForWrapper(en);Wt.push(en)}rn=Wt}en[an]=rn}else{en[an]=[]}}{const an="touches";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){if(!nn.isObject(rn)){throw new Wt.TypeError(tn+" has member 'touches' that"+" is not an iterable object.")}else{const Wt=[];const Pt=rn;for(let en of Pt){en=nn.tryImplForWrapper(en);Wt.push(en)}rn=Wt}en[an]=rn}else{en[an]=[]}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},77821:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(24171);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn="TreeWalker";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'TreeWalker'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["TreeWalker"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new cn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(cn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[rn])}return tn[rn]};const on=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>on.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class TreeWalker{constructor(){throw new Wt.TypeError("Illegal constructor")}parentNode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'parentNode' called on an object that is not a valid instance of TreeWalker.")}return nn.tryWrapperForImpl(en[rn].parentNode())}firstChild(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'firstChild' called on an object that is not a valid instance of TreeWalker.")}return nn.tryWrapperForImpl(en[rn].firstChild())}lastChild(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'lastChild' called on an object that is not a valid instance of TreeWalker.")}return nn.tryWrapperForImpl(en[rn].lastChild())}previousSibling(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'previousSibling' called on an object that is not a valid instance of TreeWalker.")}return nn.tryWrapperForImpl(en[rn].previousSibling())}nextSibling(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'nextSibling' called on an object that is not a valid instance of TreeWalker.")}return nn.tryWrapperForImpl(en[rn].nextSibling())}previousNode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'previousNode' called on an object that is not a valid instance of TreeWalker.")}return nn.tryWrapperForImpl(en[rn].previousNode())}nextNode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'nextNode' called on an object that is not a valid instance of TreeWalker.")}return nn.tryWrapperForImpl(en[rn].nextNode())}get root(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get root' called on an object that is not a valid instance of TreeWalker.")}return nn.getSameObject(this,"root",(()=>nn.tryWrapperForImpl(en[rn]["root"])))}get whatToShow(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get whatToShow' called on an object that is not a valid instance of TreeWalker.")}return en[rn]["whatToShow"]}get filter(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get filter' called on an object that is not a valid instance of TreeWalker.")}return nn.tryWrapperForImpl(en[rn]["filter"])}get currentNode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get currentNode' called on an object that is not a valid instance of TreeWalker.")}return nn.tryWrapperForImpl(en[rn]["currentNode"])}set currentNode(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set currentNode' called on an object that is not a valid instance of TreeWalker.")}en=an.convert(Wt,en,{context:"Failed to set the 'currentNode' property on 'TreeWalker': The provided value"});tn[rn]["currentNode"]=en}}Object.defineProperties(TreeWalker.prototype,{parentNode:{enumerable:true},firstChild:{enumerable:true},lastChild:{enumerable:true},previousSibling:{enumerable:true},nextSibling:{enumerable:true},previousNode:{enumerable:true},nextNode:{enumerable:true},root:{enumerable:true},whatToShow:{enumerable:true},filter:{enumerable:true},currentNode:{enumerable:true},[Symbol.toStringTag]:{value:"TreeWalker",configurable:true}});tn[sn]=TreeWalker;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:TreeWalker})};const cn=en(97223)},38921:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(27019);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(94431);const on="UIEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'UIEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["UIEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class UIEvent extends Wt.Event{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'UIEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'UIEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'UIEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}initUIEvent(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'initUIEvent' called on an object that is not a valid instance of UIEvent.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'initUIEvent' on 'UIEvent': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'initUIEvent' on 'UIEvent': parameter 1",globals:Wt});In.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initUIEvent' on 'UIEvent': parameter 2",globals:Wt})}else{Pt=false}In.push(Pt)}{let Pt=arguments[2];if(Pt!==undefined){Pt=tn["boolean"](Pt,{context:"Failed to execute 'initUIEvent' on 'UIEvent': parameter 3",globals:Wt})}else{Pt=false}In.push(Pt)}{let Wt=arguments[3];if(Wt!==undefined){if(Wt===null||Wt===undefined){Wt=null}else{Wt=nn.tryImplForWrapper(Wt)}}else{Wt=null}In.push(Wt)}{let Pt=arguments[4];if(Pt!==undefined){Pt=tn["long"](Pt,{context:"Failed to execute 'initUIEvent' on 'UIEvent': parameter 5",globals:Wt})}else{Pt=0}In.push(Pt)}return an[rn].initUIEvent(...In)}get view(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get view' called on an object that is not a valid instance of UIEvent.")}return nn.tryWrapperForImpl(en[rn]["view"])}get detail(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get detail' called on an object that is not a valid instance of UIEvent.")}return en[rn]["detail"]}get which(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get which' called on an object that is not a valid instance of UIEvent.")}return en[rn]["which"]}}Object.defineProperties(UIEvent.prototype,{initUIEvent:{enumerable:true},view:{enumerable:true},detail:{enumerable:true},which:{enumerable:true},[Symbol.toStringTag]:{value:"UIEvent",configurable:true}});In[on]=UIEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:UIEvent})};const dn=en(1412)},27019:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(31893);Pt._convertInherit=(Wt,Pt,en,{context:rn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:rn});{const nn="detail";let an=Pt===undefined||Pt===null?undefined:Pt[nn];if(an!==undefined){an=tn["long"](an,{context:rn+" has member 'detail' that",globals:Wt});en[nn]=an}else{en[nn]=0}}{const Wt="view";let tn=Pt===undefined||Pt===null?undefined:Pt[Wt];if(tn!==undefined){if(tn===null||tn===undefined){tn=null}else{tn=nn.tryImplForWrapper(tn)}en[Wt]=tn}else{en[Wt]=null}}{const nn="which";let an=Pt===undefined||Pt===null?undefined:Pt[nn];if(an!==undefined){an=tn["unsigned long"](an,{context:rn+" has member 'which' that",globals:Wt});en[nn]=an}else{en[nn]=0}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},47180:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="ValidityState";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'ValidityState'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["ValidityState"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class ValidityState{constructor(){throw new Wt.TypeError("Illegal constructor")}get valueMissing(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get valueMissing' called on an object that is not a valid instance of ValidityState.")}return en[an]["valueMissing"]}get typeMismatch(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get typeMismatch' called on an object that is not a valid instance of ValidityState.")}return en[an]["typeMismatch"]}get patternMismatch(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get patternMismatch' called on an object that is not a valid instance of ValidityState.")}return en[an]["patternMismatch"]}get tooLong(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get tooLong' called on an object that is not a valid instance of ValidityState.")}return en[an]["tooLong"]}get tooShort(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get tooShort' called on an object that is not a valid instance of ValidityState.")}return en[an]["tooShort"]}get rangeUnderflow(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rangeUnderflow' called on an object that is not a valid instance of ValidityState.")}return en[an]["rangeUnderflow"]}get rangeOverflow(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get rangeOverflow' called on an object that is not a valid instance of ValidityState.")}return en[an]["rangeOverflow"]}get stepMismatch(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get stepMismatch' called on an object that is not a valid instance of ValidityState.")}return en[an]["stepMismatch"]}get badInput(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get badInput' called on an object that is not a valid instance of ValidityState.")}return en[an]["badInput"]}get customError(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get customError' called on an object that is not a valid instance of ValidityState.")}return en[an]["customError"]}get valid(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get valid' called on an object that is not a valid instance of ValidityState.")}return en[an]["valid"]}}Object.defineProperties(ValidityState.prototype,{valueMissing:{enumerable:true},typeMismatch:{enumerable:true},patternMismatch:{enumerable:true},tooLong:{enumerable:true},tooShort:{enumerable:true},rangeUnderflow:{enumerable:true},rangeOverflow:{enumerable:true},stepMismatch:{enumerable:true},badInput:{enumerable:true},customError:{enumerable:true},valid:{enumerable:true},[Symbol.toStringTag]:{value:"ValidityState",configurable:true}});tn[In]=ValidityState;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:ValidityState})};const on=en(93399)},2572:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(42960);const rn=en(69117);const In=en(32334);const sn=nn.implSymbol;const on=nn.ctorRegistrySymbol;const cn=en(29122);const dn="WebSocket";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,sn)&&Wt[sn]instanceof pn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof pn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'WebSocket'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[on]["WebSocket"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{cn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,sn,{value:new pn.implementation(en,tn,an),configurable:true});Wt[sn][nn.wrapperSymbol]=Wt;if(pn.init){pn.init(Wt[sn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,sn,{value:Object.create(pn.implementation.prototype),configurable:true});tn[sn][nn.wrapperSymbol]=tn;if(pn.init){pn.init(tn[sn])}return tn[sn]};const un=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>un.has(Wt)))){return}const on=nn.initCtorRegistry(Wt);class WebSocket extends Wt.EventTarget{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'WebSocket': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to construct 'WebSocket': parameter 1",globals:Wt});an.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){if(nn.isObject(Pt)){if(Pt[Symbol.iterator]!==undefined){if(!nn.isObject(Pt)){throw new Wt.TypeError("Failed to construct 'WebSocket': parameter 2"+" sequence"+" is not an iterable object.")}else{const en=[];const nn=Pt;for(let Pt of nn){Pt=tn["DOMString"](Pt,{context:"Failed to construct 'WebSocket': parameter 2"+" sequence"+"'s element",globals:Wt});en.push(Pt)}Pt=en}}else{}}else{Pt=tn["DOMString"](Pt,{context:"Failed to construct 'WebSocket': parameter 2",globals:Wt})}}else{Pt=[]}an.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,an)}close(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'close' called on an object that is not a valid instance of WebSocket.")}const nn=[];{let Pt=arguments[0];if(Pt!==undefined){Pt=tn["unsigned short"](Pt,{context:"Failed to execute 'close' on 'WebSocket': parameter 1",globals:Wt,clamp:true})}nn.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["USVString"](Pt,{context:"Failed to execute 'close' on 'WebSocket': parameter 2",globals:Wt})}nn.push(Pt)}return en[sn].close(...nn)}send(en){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'send' called on an object that is not a valid instance of WebSocket.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'send' on 'WebSocket': 1 argument required, but only ${arguments.length} present.`)}const In=[];{let Pt=arguments[0];if(an.is(Pt)){{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'send' on 'WebSocket': parameter 1"});In.push(Pt)}}else if(nn.isArrayBuffer(Pt)){{let Pt=arguments[0];Pt=tn["ArrayBuffer"](Pt,{context:"Failed to execute 'send' on 'WebSocket': parameter 1",globals:Wt});In.push(Pt)}}else if(ArrayBuffer.isView(Pt)){{let Pt=arguments[0];if(ArrayBuffer.isView(Pt)){}else{throw new Wt.TypeError("Failed to execute 'send' on 'WebSocket': parameter 1"+" is not of any supported type.")}In.push(Pt)}}else{{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'send' on 'WebSocket': parameter 1",globals:Wt});In.push(Pt)}}}return rn[sn].send(...In)}get url(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get url' called on an object that is not a valid instance of WebSocket.")}return en[sn]["url"]}get readyState(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get readyState' called on an object that is not a valid instance of WebSocket.")}return en[sn]["readyState"]}get bufferedAmount(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get bufferedAmount' called on an object that is not a valid instance of WebSocket.")}return en[sn]["bufferedAmount"]}get onopen(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onopen' called on an object that is not a valid instance of WebSocket.")}return nn.tryWrapperForImpl(en[sn]["onopen"])}set onopen(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onopen' called on an object that is not a valid instance of WebSocket.")}if(!nn.isObject(en)){en=null}else{en=rn.convert(Wt,en,{context:"Failed to set the 'onopen' property on 'WebSocket': The provided value"})}tn[sn]["onopen"]=en}get onerror(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onerror' called on an object that is not a valid instance of WebSocket.")}return nn.tryWrapperForImpl(en[sn]["onerror"])}set onerror(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onerror' called on an object that is not a valid instance of WebSocket.")}if(!nn.isObject(en)){en=null}else{en=rn.convert(Wt,en,{context:"Failed to set the 'onerror' property on 'WebSocket': The provided value"})}tn[sn]["onerror"]=en}get onclose(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onclose' called on an object that is not a valid instance of WebSocket.")}return nn.tryWrapperForImpl(en[sn]["onclose"])}set onclose(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onclose' called on an object that is not a valid instance of WebSocket.")}if(!nn.isObject(en)){en=null}else{en=rn.convert(Wt,en,{context:"Failed to set the 'onclose' property on 'WebSocket': The provided value"})}tn[sn]["onclose"]=en}get extensions(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get extensions' called on an object that is not a valid instance of WebSocket.")}return en[sn]["extensions"]}get protocol(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get protocol' called on an object that is not a valid instance of WebSocket.")}return en[sn]["protocol"]}get onmessage(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onmessage' called on an object that is not a valid instance of WebSocket.")}return nn.tryWrapperForImpl(en[sn]["onmessage"])}set onmessage(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onmessage' called on an object that is not a valid instance of WebSocket.")}if(!nn.isObject(en)){en=null}else{en=rn.convert(Wt,en,{context:"Failed to set the 'onmessage' property on 'WebSocket': The provided value"})}tn[sn]["onmessage"]=en}get binaryType(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get binaryType' called on an object that is not a valid instance of WebSocket.")}return nn.tryWrapperForImpl(en[sn]["binaryType"])}set binaryType(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set binaryType' called on an object that is not a valid instance of WebSocket.")}en=`${en}`;if(!In.enumerationValues.has(en)){return}tn[sn]["binaryType"]=en}}Object.defineProperties(WebSocket.prototype,{close:{enumerable:true},send:{enumerable:true},url:{enumerable:true},readyState:{enumerable:true},bufferedAmount:{enumerable:true},onopen:{enumerable:true},onerror:{enumerable:true},onclose:{enumerable:true},extensions:{enumerable:true},protocol:{enumerable:true},onmessage:{enumerable:true},binaryType:{enumerable:true},[Symbol.toStringTag]:{value:"WebSocket",configurable:true},CONNECTING:{value:0,enumerable:true},OPEN:{value:1,enumerable:true},CLOSING:{value:2,enumerable:true},CLOSED:{value:3,enumerable:true}});Object.defineProperties(WebSocket,{CONNECTING:{value:0,enumerable:true},OPEN:{value:1,enumerable:true},CLOSING:{value:2,enumerable:true},CLOSED:{value:3,enumerable:true}});on[dn]=WebSocket;Object.defineProperty(Wt,dn,{configurable:true,writable:true,value:WebSocket})};const pn=en(14764)},18990:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(50816);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(8002);const on="WheelEvent";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'WheelEvent'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["WheelEvent"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const In=nn.initCtorRegistry(Wt);class WheelEvent extends Wt.MouseEvent{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'WheelEvent': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to construct 'WheelEvent': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];Pt=an.convert(Wt,Pt,{context:"Failed to construct 'WheelEvent': parameter 2"});nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}get deltaX(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get deltaX' called on an object that is not a valid instance of WheelEvent.")}return en[rn]["deltaX"]}get deltaY(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get deltaY' called on an object that is not a valid instance of WheelEvent.")}return en[rn]["deltaY"]}get deltaZ(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get deltaZ' called on an object that is not a valid instance of WheelEvent.")}return en[rn]["deltaZ"]}get deltaMode(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get deltaMode' called on an object that is not a valid instance of WheelEvent.")}return en[rn]["deltaMode"]}}Object.defineProperties(WheelEvent.prototype,{deltaX:{enumerable:true},deltaY:{enumerable:true},deltaZ:{enumerable:true},deltaMode:{enumerable:true},[Symbol.toStringTag]:{value:"WheelEvent",configurable:true},DOM_DELTA_PIXEL:{value:0,enumerable:true},DOM_DELTA_LINE:{value:1,enumerable:true},DOM_DELTA_PAGE:{value:2,enumerable:true}});Object.defineProperties(WheelEvent,{DOM_DELTA_PIXEL:{value:0,enumerable:true},DOM_DELTA_LINE:{value:1,enumerable:true},DOM_DELTA_PAGE:{value:2,enumerable:true}});In[on]=WheelEvent;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:WheelEvent})};const dn=en(84829)},50816:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(5316);Pt._convertInherit=(Wt,Pt,en,{context:nn="The provided value"}={})=>{an._convertInherit(Wt,Pt,en,{context:nn});{const an="deltaMode";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["unsigned long"](rn,{context:nn+" has member 'deltaMode' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="deltaX";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["double"](rn,{context:nn+" has member 'deltaX' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="deltaY";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["double"](rn,{context:nn+" has member 'deltaY' that",globals:Wt});en[an]=rn}else{en[an]=0}}{const an="deltaZ";let rn=Pt===undefined||Pt===null?undefined:Pt[an];if(rn!==undefined){rn=tn["double"](rn,{context:nn+" has member 'deltaZ' that",globals:Wt});en[an]=rn}else{en[an]=0}}};Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(en!==undefined&&typeof en!=="object"&&typeof en!=="function"){throw new Wt.TypeError(`${tn} is not an object.`)}const nn=Object.create(null);Pt._convertInherit(Wt,en,nn,{context:tn});return nn}},63399:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In=en(18946);const sn="XMLDocument";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'XMLDocument'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["XMLDocument"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{In._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const on=new Set(["Window"]);Pt.install=(Wt,Pt)=>{if(!Pt.some((Wt=>on.has(Wt)))){return}const en=nn.initCtorRegistry(Wt);class XMLDocument extends Wt.Document{constructor(){throw new Wt.TypeError("Illegal constructor")}}Object.defineProperties(XMLDocument.prototype,{[Symbol.toStringTag]:{value:"XMLDocument",configurable:true}});en[sn]=XMLDocument;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:XMLDocument})};const cn=en(27494)},55137:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(18946);const rn=en(42960);const In=en(48241);const sn=en(69117);const on=en(75482);const cn=nn.implSymbol;const dn=nn.ctorRegistrySymbol;const un=en(5480);const pn="XMLHttpRequest";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,cn)&&Wt[cn]instanceof bn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof bn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'XMLHttpRequest'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[dn]["XMLHttpRequest"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{un._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,cn,{value:new bn.implementation(en,tn,an),configurable:true});Wt[cn][nn.wrapperSymbol]=Wt;if(bn.init){bn.init(Wt[cn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,cn,{value:Object.create(bn.implementation.prototype),configurable:true});tn[cn][nn.wrapperSymbol]=tn;if(bn.init){bn.init(tn[cn])}return tn[cn]};const mn=new Set(["Window","DedicatedWorker","SharedWorker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>mn.has(Wt)))){return}const dn=nn.initCtorRegistry(Wt);class XMLHttpRequest extends Wt.XMLHttpRequestEventTarget{constructor(){return Pt.setup(Object.create(new.target.prototype),Wt,undefined)}open(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'open' called on an object that is not a valid instance of XMLHttpRequest.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'open' on 'XMLHttpRequest': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];switch(arguments.length){case 2:{let Pt=arguments[0];Pt=tn["ByteString"](Pt,{context:"Failed to execute 'open' on 'XMLHttpRequest': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=tn["USVString"](Pt,{context:"Failed to execute 'open' on 'XMLHttpRequest': parameter 2",globals:Wt});rn.push(Pt)}break;case 3:{let Pt=arguments[0];Pt=tn["ByteString"](Pt,{context:"Failed to execute 'open' on 'XMLHttpRequest': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=tn["USVString"](Pt,{context:"Failed to execute 'open' on 'XMLHttpRequest': parameter 2",globals:Wt});rn.push(Pt)}{let Pt=arguments[2];Pt=tn["boolean"](Pt,{context:"Failed to execute 'open' on 'XMLHttpRequest': parameter 3",globals:Wt});rn.push(Pt)}break;case 4:{let Pt=arguments[0];Pt=tn["ByteString"](Pt,{context:"Failed to execute 'open' on 'XMLHttpRequest': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=tn["USVString"](Pt,{context:"Failed to execute 'open' on 'XMLHttpRequest': parameter 2",globals:Wt});rn.push(Pt)}{let Pt=arguments[2];Pt=tn["boolean"](Pt,{context:"Failed to execute 'open' on 'XMLHttpRequest': parameter 3",globals:Wt});rn.push(Pt)}{let Pt=arguments[3];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["USVString"](Pt,{context:"Failed to execute 'open' on 'XMLHttpRequest': parameter 4",globals:Wt})}}else{Pt=null}rn.push(Pt)}break;default:{let Pt=arguments[0];Pt=tn["ByteString"](Pt,{context:"Failed to execute 'open' on 'XMLHttpRequest': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=tn["USVString"](Pt,{context:"Failed to execute 'open' on 'XMLHttpRequest': parameter 2",globals:Wt});rn.push(Pt)}{let Pt=arguments[2];Pt=tn["boolean"](Pt,{context:"Failed to execute 'open' on 'XMLHttpRequest': parameter 3",globals:Wt});rn.push(Pt)}{let Pt=arguments[3];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["USVString"](Pt,{context:"Failed to execute 'open' on 'XMLHttpRequest': parameter 4",globals:Wt})}}else{Pt=null}rn.push(Pt)}{let Pt=arguments[4];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{Pt=tn["USVString"](Pt,{context:"Failed to execute 'open' on 'XMLHttpRequest': parameter 5",globals:Wt})}}else{Pt=null}rn.push(Pt)}}return an[cn].open(...rn)}setRequestHeader(en,nn){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'setRequestHeader' called on an object that is not a valid instance of XMLHttpRequest.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'setRequestHeader' on 'XMLHttpRequest': 2 arguments required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["ByteString"](Pt,{context:"Failed to execute 'setRequestHeader' on 'XMLHttpRequest': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];Pt=tn["ByteString"](Pt,{context:"Failed to execute 'setRequestHeader' on 'XMLHttpRequest': parameter 2",globals:Wt});rn.push(Pt)}return an[cn].setRequestHeader(...rn)}send(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'send' called on an object that is not a valid instance of XMLHttpRequest.")}const sn=[];{let Pt=arguments[0];if(Pt!==undefined){if(Pt===null||Pt===undefined){Pt=null}else{if(an.is(Pt)||rn.is(Pt)||In.is(Pt)){Pt=nn.implForWrapper(Pt)}else if(nn.isArrayBuffer(Pt)){}else if(ArrayBuffer.isView(Pt)){}else{Pt=tn["USVString"](Pt,{context:"Failed to execute 'send' on 'XMLHttpRequest': parameter 1",globals:Wt})}}}else{Pt=null}sn.push(Pt)}return en[cn].send(...sn)}abort(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'abort' called on an object that is not a valid instance of XMLHttpRequest.")}return en[cn].abort()}getResponseHeader(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'getResponseHeader' called on an object that is not a valid instance of XMLHttpRequest.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getResponseHeader' on 'XMLHttpRequest': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["ByteString"](Pt,{context:"Failed to execute 'getResponseHeader' on 'XMLHttpRequest': parameter 1",globals:Wt});an.push(Pt)}return nn[cn].getResponseHeader(...an)}getAllResponseHeaders(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'getAllResponseHeaders' called on an object that is not a valid instance of XMLHttpRequest.")}return en[cn].getAllResponseHeaders()}overrideMimeType(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'overrideMimeType' called on an object that is not a valid instance of XMLHttpRequest.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'overrideMimeType' on 'XMLHttpRequest': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["DOMString"](Pt,{context:"Failed to execute 'overrideMimeType' on 'XMLHttpRequest': parameter 1",globals:Wt});an.push(Pt)}return nn[cn].overrideMimeType(...an)}get onreadystatechange(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onreadystatechange' called on an object that is not a valid instance of XMLHttpRequest.")}return nn.tryWrapperForImpl(en[cn]["onreadystatechange"])}set onreadystatechange(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onreadystatechange' called on an object that is not a valid instance of XMLHttpRequest.")}if(!nn.isObject(en)){en=null}else{en=sn.convert(Wt,en,{context:"Failed to set the 'onreadystatechange' property on 'XMLHttpRequest': The provided value"})}tn[cn]["onreadystatechange"]=en}get readyState(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get readyState' called on an object that is not a valid instance of XMLHttpRequest.")}return en[cn]["readyState"]}get timeout(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get timeout' called on an object that is not a valid instance of XMLHttpRequest.")}return en[cn]["timeout"]}set timeout(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set timeout' called on an object that is not a valid instance of XMLHttpRequest.")}en=tn["unsigned long"](en,{context:"Failed to set the 'timeout' property on 'XMLHttpRequest': The provided value",globals:Wt});nn[cn]["timeout"]=en}get withCredentials(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get withCredentials' called on an object that is not a valid instance of XMLHttpRequest.")}return en[cn]["withCredentials"]}set withCredentials(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set withCredentials' called on an object that is not a valid instance of XMLHttpRequest.")}en=tn["boolean"](en,{context:"Failed to set the 'withCredentials' property on 'XMLHttpRequest': The provided value",globals:Wt});nn[cn]["withCredentials"]=en}get upload(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get upload' called on an object that is not a valid instance of XMLHttpRequest.")}return nn.getSameObject(this,"upload",(()=>nn.tryWrapperForImpl(en[cn]["upload"])))}get responseURL(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get responseURL' called on an object that is not a valid instance of XMLHttpRequest.")}return en[cn]["responseURL"]}get status(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get status' called on an object that is not a valid instance of XMLHttpRequest.")}return en[cn]["status"]}get statusText(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get statusText' called on an object that is not a valid instance of XMLHttpRequest.")}return en[cn]["statusText"]}get responseType(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get responseType' called on an object that is not a valid instance of XMLHttpRequest.")}return nn.tryWrapperForImpl(en[cn]["responseType"])}set responseType(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set responseType' called on an object that is not a valid instance of XMLHttpRequest.")}en=`${en}`;if(!on.enumerationValues.has(en)){return}tn[cn]["responseType"]=en}get response(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get response' called on an object that is not a valid instance of XMLHttpRequest.")}return en[cn]["response"]}get responseText(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get responseText' called on an object that is not a valid instance of XMLHttpRequest.")}return en[cn]["responseText"]}get responseXML(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get responseXML' called on an object that is not a valid instance of XMLHttpRequest.")}return nn.tryWrapperForImpl(en[cn]["responseXML"])}}Object.defineProperties(XMLHttpRequest.prototype,{open:{enumerable:true},setRequestHeader:{enumerable:true},send:{enumerable:true},abort:{enumerable:true},getResponseHeader:{enumerable:true},getAllResponseHeaders:{enumerable:true},overrideMimeType:{enumerable:true},onreadystatechange:{enumerable:true},readyState:{enumerable:true},timeout:{enumerable:true},withCredentials:{enumerable:true},upload:{enumerable:true},responseURL:{enumerable:true},status:{enumerable:true},statusText:{enumerable:true},responseType:{enumerable:true},response:{enumerable:true},responseText:{enumerable:true},responseXML:{enumerable:true},[Symbol.toStringTag]:{value:"XMLHttpRequest",configurable:true},UNSENT:{value:0,enumerable:true},OPENED:{value:1,enumerable:true},HEADERS_RECEIVED:{value:2,enumerable:true},LOADING:{value:3,enumerable:true},DONE:{value:4,enumerable:true}});Object.defineProperties(XMLHttpRequest,{UNSENT:{value:0,enumerable:true},OPENED:{value:1,enumerable:true},HEADERS_RECEIVED:{value:2,enumerable:true},LOADING:{value:3,enumerable:true},DONE:{value:4,enumerable:true}});dn[pn]=XMLHttpRequest;Object.defineProperty(Wt,pn,{configurable:true,writable:true,value:XMLHttpRequest})};const bn=en(77291)},5480:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(69117);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn=en(29122);const on="XMLHttpRequestEventTarget";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'XMLHttpRequestEventTarget'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["XMLHttpRequestEventTarget"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{sn._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new dn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(dn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[rn])}return tn[rn]};const cn=new Set(["Window","DedicatedWorker","SharedWorker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class XMLHttpRequestEventTarget extends Wt.EventTarget{constructor(){throw new Wt.TypeError("Illegal constructor")}get onloadstart(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onloadstart' called on an object that is not a valid instance of XMLHttpRequestEventTarget.")}return nn.tryWrapperForImpl(en[rn]["onloadstart"])}set onloadstart(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onloadstart' called on an object that is not a valid instance of XMLHttpRequestEventTarget.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onloadstart' property on 'XMLHttpRequestEventTarget': The provided value"})}tn[rn]["onloadstart"]=en}get onprogress(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onprogress' called on an object that is not a valid instance of XMLHttpRequestEventTarget.")}return nn.tryWrapperForImpl(en[rn]["onprogress"])}set onprogress(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onprogress' called on an object that is not a valid instance of XMLHttpRequestEventTarget.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onprogress' property on 'XMLHttpRequestEventTarget': The provided value"})}tn[rn]["onprogress"]=en}get onabort(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onabort' called on an object that is not a valid instance of XMLHttpRequestEventTarget.")}return nn.tryWrapperForImpl(en[rn]["onabort"])}set onabort(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onabort' called on an object that is not a valid instance of XMLHttpRequestEventTarget.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onabort' property on 'XMLHttpRequestEventTarget': The provided value"})}tn[rn]["onabort"]=en}get onerror(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onerror' called on an object that is not a valid instance of XMLHttpRequestEventTarget.")}return nn.tryWrapperForImpl(en[rn]["onerror"])}set onerror(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onerror' called on an object that is not a valid instance of XMLHttpRequestEventTarget.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onerror' property on 'XMLHttpRequestEventTarget': The provided value"})}tn[rn]["onerror"]=en}get onload(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onload' called on an object that is not a valid instance of XMLHttpRequestEventTarget.")}return nn.tryWrapperForImpl(en[rn]["onload"])}set onload(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onload' called on an object that is not a valid instance of XMLHttpRequestEventTarget.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onload' property on 'XMLHttpRequestEventTarget': The provided value"})}tn[rn]["onload"]=en}get ontimeout(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get ontimeout' called on an object that is not a valid instance of XMLHttpRequestEventTarget.")}return nn.tryWrapperForImpl(en[rn]["ontimeout"])}set ontimeout(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set ontimeout' called on an object that is not a valid instance of XMLHttpRequestEventTarget.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'ontimeout' property on 'XMLHttpRequestEventTarget': The provided value"})}tn[rn]["ontimeout"]=en}get onloadend(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get onloadend' called on an object that is not a valid instance of XMLHttpRequestEventTarget.")}return nn.tryWrapperForImpl(en[rn]["onloadend"])}set onloadend(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'set onloadend' called on an object that is not a valid instance of XMLHttpRequestEventTarget.")}if(!nn.isObject(en)){en=null}else{en=an.convert(Wt,en,{context:"Failed to set the 'onloadend' property on 'XMLHttpRequestEventTarget': The provided value"})}tn[rn]["onloadend"]=en}}Object.defineProperties(XMLHttpRequestEventTarget.prototype,{onloadstart:{enumerable:true},onprogress:{enumerable:true},onabort:{enumerable:true},onerror:{enumerable:true},onload:{enumerable:true},ontimeout:{enumerable:true},onloadend:{enumerable:true},[Symbol.toStringTag]:{value:"XMLHttpRequestEventTarget",configurable:true}});tn[on]=XMLHttpRequestEventTarget;Object.defineProperty(Wt,on,{configurable:true,writable:true,value:XMLHttpRequestEventTarget})};const dn=en(60178)},75482:(Wt,Pt)=>{"use strict";const en=new Set(["","arraybuffer","blob","document","json","text"]);Pt.enumerationValues=en;Pt.convert=(Wt,Pt,{context:tn="The provided value"}={})=>{const nn=`${Pt}`;if(!en.has(nn)){throw new Wt.TypeError(`${tn} '${nn}' is not a valid enumeration value for XMLHttpRequestResponseType`)}return nn}},58096:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In=en(5480);const sn="XMLHttpRequestUpload";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'XMLHttpRequestUpload'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["XMLHttpRequestUpload"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{In._internalSetup(Wt,Pt)};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new cn.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(cn.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[an])}return tn[an]};const on=new Set(["Window","DedicatedWorker","SharedWorker"]);Pt.install=(Wt,Pt)=>{if(!Pt.some((Wt=>on.has(Wt)))){return}const en=nn.initCtorRegistry(Wt);class XMLHttpRequestUpload extends Wt.XMLHttpRequestEventTarget{constructor(){throw new Wt.TypeError("Illegal constructor")}}Object.defineProperties(XMLHttpRequestUpload.prototype,{[Symbol.toStringTag]:{value:"XMLHttpRequestUpload",configurable:true}});en[sn]=XMLHttpRequestUpload;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:XMLHttpRequestUpload})};const cn=en(45164)},68174:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(24171);const rn=nn.implSymbol;const In=nn.ctorRegistrySymbol;const sn="XMLSerializer";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,rn)&&Wt[rn]instanceof cn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof cn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'XMLSerializer'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[In]["XMLSerializer"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,rn,{value:new cn.implementation(en,tn,an),configurable:true});Wt[rn][nn.wrapperSymbol]=Wt;if(cn.init){cn.init(Wt[rn])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,rn,{value:Object.create(cn.implementation.prototype),configurable:true});tn[rn][nn.wrapperSymbol]=tn;if(cn.init){cn.init(tn[rn])}return tn[rn]};const on=new Set(["Window"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>on.has(Wt)))){return}const tn=nn.initCtorRegistry(Wt);class XMLSerializer{constructor(){return Pt.setup(Object.create(new.target.prototype),Wt,undefined)}serializeToString(en){const tn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(tn)){throw new Wt.TypeError("'serializeToString' called on an object that is not a valid instance of XMLSerializer.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'serializeToString' on 'XMLSerializer': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=an.convert(Wt,Pt,{context:"Failed to execute 'serializeToString' on 'XMLSerializer': parameter 1"});nn.push(Pt)}return tn[rn].serializeToString(...nn)}}Object.defineProperties(XMLSerializer.prototype,{serializeToString:{enumerable:true},[Symbol.toStringTag]:{value:"XMLSerializer",configurable:true}});tn[sn]=XMLSerializer;Object.defineProperty(Wt,sn,{configurable:true,writable:true,value:XMLSerializer})};const cn=en(22534)},87094:(Wt,Pt)=>{"use strict";function isObject(Wt){return typeof Wt==="object"&&Wt!==null||typeof Wt==="function"}const en=Function.prototype.call.bind(Object.prototype.hasOwnProperty);function define(Wt,Pt){for(const en of Reflect.ownKeys(Pt)){const tn=Reflect.getOwnPropertyDescriptor(Pt,en);if(tn&&!Reflect.defineProperty(Wt,en,tn)){throw new TypeError(`Cannot redefine property: ${String(en)}`)}}}function newObjectInRealm(Wt,Pt){const en=initCtorRegistry(Wt);return Object.defineProperties(Object.create(en["%Object.prototype%"]),Object.getOwnPropertyDescriptors(Pt))}const tn=Symbol("wrapper");const nn=Symbol("impl");const an=Symbol("SameObject caches");const rn=Symbol.for("[webidl2js] constructor registry");const In=Object.getPrototypeOf(Object.getPrototypeOf((async function*(){})).prototype);function initCtorRegistry(Wt){if(en(Wt,rn)){return Wt[rn]}const Pt=Object.create(null);Pt["%Object.prototype%"]=Wt.Object.prototype;Pt["%IteratorPrototype%"]=Object.getPrototypeOf(Object.getPrototypeOf((new Wt.Array)[Symbol.iterator]()));try{Pt["%AsyncIteratorPrototype%"]=Object.getPrototypeOf(Object.getPrototypeOf(Wt.eval("(async function* () {})").prototype))}catch{Pt["%AsyncIteratorPrototype%"]=In}Wt[rn]=Pt;return Pt}function getSameObject(Wt,Pt,en){if(!Wt[an]){Wt[an]=Object.create(null)}if(Pt in Wt[an]){return Wt[an][Pt]}Wt[an][Pt]=en();return Wt[an][Pt]}function wrapperForImpl(Wt){return Wt?Wt[tn]:null}function implForWrapper(Wt){return Wt?Wt[nn]:null}function tryWrapperForImpl(Wt){const Pt=wrapperForImpl(Wt);return Pt?Pt:Wt}function tryImplForWrapper(Wt){const Pt=implForWrapper(Wt);return Pt?Pt:Wt}const sn=Symbol("internal");function isArrayIndexPropName(Wt){if(typeof Wt!=="string"){return false}const Pt=Wt>>>0;if(Pt===2**32-1){return false}const en=`${Pt}`;if(Wt!==en){return false}return true}const on=Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get;function isArrayBuffer(Wt){try{on.call(Wt);return true}catch(Wt){return false}}function iteratorResult([Wt,Pt],en){let tn;switch(en){case"key":tn=Wt;break;case"value":tn=Pt;break;case"key+value":tn=[Wt,Pt];break}return{value:tn,done:false}}const cn=Symbol("supports property index");const dn=Symbol("supported property indices");const un=Symbol("supports property name");const pn=Symbol("supported property names");const mn=Symbol("indexed property get");const bn=Symbol("indexed property set new");const Gn=Symbol("indexed property set existing");const hn=Symbol("named property get");const Zn=Symbol("named property set new");const An=Symbol("named property set existing");const Wn=Symbol("named property delete");const Nn=Symbol("async iterator get the next iteration result");const gn=Symbol("async iterator return steps");const yn=Symbol("async iterator initialization steps");const vn=Symbol("async iterator end of iteration");Wt.exports=Pt={isObject:isObject,hasOwn:en,define:define,newObjectInRealm:newObjectInRealm,wrapperSymbol:tn,implSymbol:nn,getSameObject:getSameObject,ctorRegistrySymbol:rn,initCtorRegistry:initCtorRegistry,wrapperForImpl:wrapperForImpl,implForWrapper:implForWrapper,tryWrapperForImpl:tryWrapperForImpl,tryImplForWrapper:tryImplForWrapper,iterInternalSymbol:sn,isArrayBuffer:isArrayBuffer,isArrayIndexPropName:isArrayIndexPropName,supportsPropertyIndex:cn,supportedPropertyIndices:dn,supportsPropertyName:un,supportedPropertyNames:pn,indexedGet:mn,indexedSetNew:bn,indexedSetExisting:Gn,namedGet:hn,namedSetNew:Zn,namedSetExisting:An,namedDelete:Wn,asyncIteratorNext:Nn,asyncIteratorReturn:gn,asyncIteratorInit:yn,asyncIteratorEOI:vn,iteratorResult:iteratorResult}},78467:(Wt,Pt,en)=>{"use strict";const tn=en(82025).implementation;const nn=en(8469);class DOMRectImpl extends tn{static fromRect(Wt,Pt){return nn.createImpl(Wt,[Pt.x,Pt.y,Pt.width,Pt.height])}get x(){return super.x}set x(Wt){this._x=Wt}get y(){return super.y}set y(Wt){this._y=Wt}get width(){return super.width}set width(Wt){this._width=Wt}get height(){return super.height}set height(Wt){this._height=Wt}}Pt.implementation=DOMRectImpl},82025:(Wt,Pt,en)=>{"use strict";const tn=en(59163);class DOMRectReadOnlyImpl{constructor(Wt,[Pt=0,en=0,tn=0,nn=0]){this._globalObject=Wt;this._x=Pt;this._y=en;this._width=tn;this._height=nn}static fromRect(Wt,Pt){return tn.createImpl(Wt,[Pt.x,Pt.y,Pt.width,Pt.height])}get x(){return this._x}get y(){return this._y}get width(){return this._width}get height(){return this._height}get top(){const{height:Wt,y:Pt}=this;return Math.min(Pt,Pt+Wt)}get right(){const{width:Wt,x:Pt}=this;return Math.max(Pt,Pt+Wt)}get bottom(){const{height:Wt,y:Pt}=this;return Math.max(Pt,Pt+Wt)}get left(){const{width:Wt,x:Pt}=this;return Math.min(Pt,Pt+Wt)}toJSON(){return{x:this.x,y:this.y,width:this.width,height:this.height,top:this.top,right:this.right,bottom:this.bottom,left:this.left}}}Pt.implementation=DOMRectReadOnlyImpl},96577:(Wt,Pt,en)=>{"use strict";const tn=en(58611);const nn=en(65692);const{HttpProxyAgent:an}=en(81970);const{HttpsProxyAgent:rn}=en(3669);Wt.exports=function agentFactory(Wt,Pt){const en={keepAlive:true,rejectUnauthorized:Pt};if(Wt){return{https:new rn(Wt,en),http:new an(Wt,en)}}return{http:new tn.Agent(en),https:new nn.Agent(en)}}},71179:(Wt,Pt)=>{"use strict";Pt.copyToArrayBufferInNewRealm=(Wt,Pt)=>{const en=new Pt.ArrayBuffer(Wt.byteLength);const tn=new Uint8Array(en);tn.set(Wt);return en}},28591:(Wt,Pt)=>{"use strict";const en={__proto__:null,aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};Pt.getSpecifiedColor=Wt=>{const Pt=Wt.toLowerCase();if(Object.hasOwn(en,Pt)||Pt==="transparent"){return Pt}return sharedSpecifiedAndComputedAndUsed(Wt)};Pt.getComputedOrUsedColor=Wt=>{const Pt=Wt.toLowerCase();const tn=en[Pt];if(tn!==undefined){return`rgb(${tn.join(", ")})`}if(Pt==="transparent"){return"rgba(0, 0, 0, 0)"}return sharedSpecifiedAndComputedAndUsed(Wt)};function sharedSpecifiedAndComputedAndUsed(Wt){if(/^#[0-9A-Fa-f]{6}$/.test(Wt)||/^#[0-9A-Fa-f]{3}$/.test(Wt)){return hexToRGB(Wt.slice(1))}if(/^#[0-9A-Fa-f]{8}$/.test(Wt)||/^#[0-9A-Fa-f]{4}$/.test(Wt)){return hexToRGBA(Wt.slice(1))}if(/^rgba?\(/.test(Wt)){return Wt.split(",").map((Wt=>Wt.trim())).join(", ")}return Wt}function hexToRGB(Wt){if(Wt.length===6){const[Pt,en,tn,nn,an,rn]=Wt.split("");return`rgb(${hexesToDecimals([Pt,en],[tn,nn],[an,rn]).join(", ")})`}if(Wt.length===3){const[Pt,en,tn]=Wt.split("");return`rgb(${hexesToDecimals([Pt,Pt],[en,en],[tn,tn]).join(", ")})`}return"rgb(0, 0, 0)"}function hexToRGBA(Wt){if(Wt.length===8){const[Pt,en,tn,nn,an,rn,In,sn]=Wt.split("");return`rgba(${hexesToDecimals([Pt,en],[tn,nn],[an,rn]).join(", ")}, ${hexToPercent(In,sn)})`}if(Wt.length===4){const[Pt,en,tn,nn]=Wt.split("");return`rgba(${hexesToDecimals([Pt,Pt],[en,en],[tn,tn]).join(", ")}, ${hexToPercent(nn,nn)})`}return"rgba(0, 0, 0, 1)"}function hexToDecimal(Wt,Pt){return parseInt(Wt,16)*16+parseInt(Pt,16)}function hexesToDecimals(...Wt){return Wt.map((Wt=>hexToDecimal(Wt[0],Wt[1])))}function hexToPercent(Wt,Pt){return Math.floor(1e3*hexToDecimal(Wt,Pt)/255)/1e3}},94202:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(96533);const{implForWrapper:an}=en(87094);const{HTML_NS:rn,SVG_NS:In}=en(98071);const{domSymbolTree:sn}=en(38542);const{validateAndExtract:on}=en(82748);const cn=en(12323);const{isValidCustomElementName:dn,upgradeElement:un,lookupCEDefinition:pn,enqueueCEUpgradeReaction:mn}=en(8348);const bn={[rn]:{HTMLElement:["abbr","address","article","aside","b","bdi","bdo","cite","code","dd","dfn","dt","em","figcaption","figure","footer","header","hgroup","i","kbd","main","mark","nav","noscript","rp","rt","ruby","s","samp","section","small","strong","sub","summary","sup","u","var","wbr"],HTMLAnchorElement:["a"],HTMLAreaElement:["area"],HTMLAudioElement:["audio"],HTMLBaseElement:["base"],HTMLBodyElement:["body"],HTMLBRElement:["br"],HTMLButtonElement:["button"],HTMLCanvasElement:["canvas"],HTMLDataElement:["data"],HTMLDataListElement:["datalist"],HTMLDetailsElement:["details"],HTMLDialogElement:["dialog"],HTMLDirectoryElement:["dir"],HTMLDivElement:["div"],HTMLDListElement:["dl"],HTMLEmbedElement:["embed"],HTMLFieldSetElement:["fieldset"],HTMLFontElement:["font"],HTMLFormElement:["form"],HTMLFrameElement:["frame"],HTMLFrameSetElement:["frameset"],HTMLHeadingElement:["h1","h2","h3","h4","h5","h6"],HTMLHeadElement:["head"],HTMLHRElement:["hr"],HTMLHtmlElement:["html"],HTMLIFrameElement:["iframe"],HTMLImageElement:["img"],HTMLInputElement:["input"],HTMLLabelElement:["label"],HTMLLegendElement:["legend"],HTMLLIElement:["li"],HTMLLinkElement:["link"],HTMLMapElement:["map"],HTMLMarqueeElement:["marquee"],HTMLMediaElement:[],HTMLMenuElement:["menu"],HTMLMetaElement:["meta"],HTMLMeterElement:["meter"],HTMLModElement:["del","ins"],HTMLObjectElement:["object"],HTMLOListElement:["ol"],HTMLOptGroupElement:["optgroup"],HTMLOptionElement:["option"],HTMLOutputElement:["output"],HTMLParagraphElement:["p"],HTMLParamElement:["param"],HTMLPictureElement:["picture"],HTMLPreElement:["listing","pre","xmp"],HTMLProgressElement:["progress"],HTMLQuoteElement:["blockquote","q"],HTMLScriptElement:["script"],HTMLSelectElement:["select"],HTMLSlotElement:["slot"],HTMLSourceElement:["source"],HTMLSpanElement:["span"],HTMLStyleElement:["style"],HTMLTableCaptionElement:["caption"],HTMLTableCellElement:["th","td"],HTMLTableColElement:["col","colgroup"],HTMLTableElement:["table"],HTMLTimeElement:["time"],HTMLTitleElement:["title"],HTMLTableRowElement:["tr"],HTMLTableSectionElement:["thead","tbody","tfoot"],HTMLTemplateElement:["template"],HTMLTextAreaElement:["textarea"],HTMLTrackElement:["track"],HTMLUListElement:["ul"],HTMLUnknownElement:[],HTMLVideoElement:["video"]},[In]:{SVGElement:[],SVGGraphicsElement:[],SVGSVGElement:["svg"],SVGTitleElement:["title"]}};const Gn={};for(const Wt of[rn,In]){Gn[Wt]={};const Pt=Object.keys(bn[Wt]);for(const en of Pt){const Pt=bn[Wt][en];for(const tn of Pt){Gn[Wt][tn]=en}}}const hn=["applet","bgsound","blink","isindex","keygen","multicol","nextid","spacer"];const Zn=["acronym","basefont","big","center","nobr","noembed","noframes","plaintext","rb","rtc","strike","tt"];function getHTMLElementInterface(Wt){if(hn.includes(Wt)){return nn.getInterfaceWrapper("HTMLUnknownElement")}if(Zn.includes(Wt)){return nn.getInterfaceWrapper("HTMLElement")}const Pt=Gn[rn][Wt];if(Pt!==undefined){return nn.getInterfaceWrapper(Pt)}if(dn(Wt)){return nn.getInterfaceWrapper("HTMLElement")}return nn.getInterfaceWrapper("HTMLUnknownElement")}function getSVGInterface(Wt){const Pt=Gn[In][Wt];if(Pt!==undefined){return nn.getInterfaceWrapper(Pt)}return nn.getInterfaceWrapper("SVGElement")}function getValidTagNames(Wt,Pt){if(bn[Wt]&&bn[Wt][Pt]){return bn[Wt][Pt]}return[]}function createElement(Wt,Pt,en,on=null,bn=null,Gn=false){let hn=null;const{_globalObject:Zn}=Wt;const An=pn(Wt,en,Pt,bn);if(An!==null&&An.name!==Pt){const en=getHTMLElementInterface(Pt);hn=en.createImpl(Zn,[],{ownerDocument:Wt,localName:Pt,namespace:rn,prefix:on,ceState:"undefined",ceDefinition:null,isValue:bn});if(Gn){un(An,hn)}else{mn(hn,An)}}else if(An!==null){if(Gn){try{const nn=An.constructor;const In=nn.construct();hn=an(In);if(!hn._ceState||!hn._ceDefinition||hn._namespaceURI!==rn){throw new TypeError("Internal error: Invalid custom element.")}if(hn._attributeList.length!==0){throw tn.create(Zn,["Unexpected attributes.","NotSupportedError"])}if(sn.hasChildren(hn)){throw tn.create(Zn,["Unexpected child nodes.","NotSupportedError"])}if(sn.parent(hn)){throw tn.create(Zn,["Unexpected element parent.","NotSupportedError"])}if(hn._ownerDocument!==Wt){throw tn.create(Zn,["Unexpected element owner document.","NotSupportedError"])}if(hn._namespaceURI!==en){throw tn.create(Zn,["Unexpected element namespace URI.","NotSupportedError"])}if(hn._localName!==Pt){throw tn.create(Zn,["Unexpected element local name.","NotSupportedError"])}hn._prefix=on;hn._isValue=bn}catch(en){cn(Wt._defaultView,en);const tn=nn.getInterfaceWrapper("HTMLUnknownElement");hn=tn.createImpl(Zn,[],{ownerDocument:Wt,localName:Pt,namespace:rn,prefix:on,ceState:"failed",ceDefinition:null,isValue:null})}}else{const en=nn.getInterfaceWrapper("HTMLElement");hn=en.createImpl(Zn,[],{ownerDocument:Wt,localName:Pt,namespace:rn,prefix:on,ceState:"undefined",ceDefinition:null,isValue:null});mn(hn,An)}}else{let tn;switch(en){case rn:tn=getHTMLElementInterface(Pt);break;case In:tn=getSVGInterface(Pt);break;default:tn=nn.getInterfaceWrapper("Element");break}hn=tn.createImpl(Zn,[],{ownerDocument:Wt,localName:Pt,namespace:en,prefix:on,ceState:"uncustomized",ceDefinition:null,isValue:bn});if(en===rn&&(dn(Pt)||bn!==null)){hn._ceState="undefined"}}return hn}function internalCreateElementNSSteps(Wt,Pt,en,tn){const nn=on(Wt._globalObject,Pt,en);let an=null;if(tn&&tn.is!==undefined){an=tn.is}return createElement(Wt,nn.localName,nn.namespace,nn.prefix,an,true)}Wt.exports={createElement:createElement,internalCreateElementNSSteps:internalCreateElementNSSteps,getValidTagNames:getValidTagNames,getHTMLElementInterface:getHTMLElementInterface}},15676:(Wt,Pt,en)=>{"use strict";const tn=en(87094);const nn=en(89045);const an=en(69117);const rn=en(98574);const In=en(54414);const sn=en(12323);Pt.appendHandler=(Wt,en)=>{tn.tryImplForWrapper(Wt).addEventListener(en,(tn=>{const an=Pt.getCurrentEventHandlerValue(Wt,en);if(an===null){return}const rn=nn.isImpl(tn)&&tn.type==="error"&&tn.currentTarget.constructor.name==="Window";let In=null;if(typeof an==="function"){if(rn){In=an.call(tn.currentTarget,tn.message,tn.filename,tn.lineno,tn.colno,tn.error)}else{In=an.call(tn.currentTarget,tn)}}if(tn.type==="beforeunload"){if(In!==null){tn._canceledFlag=true;if(tn.returnValue===""){tn.returnValue=In}}}else if(rn){if(In===true){tn._canceledFlag=true}}else if(In===false){tn._canceledFlag=true}}))};Pt.setupForSimpleEventAccessors=(Wt,en)=>{Wt._getEventHandlerFor=function(Wt){return this._eventHandlers?this._eventHandlers[Wt]:undefined};Wt._setEventHandlerFor=function(Wt,en){if(!this._registeredHandlers){this._registeredHandlers=new Set;this._eventHandlers=Object.create(null)}if(!this._registeredHandlers.has(Wt)&&en!==null){this._registeredHandlers.add(Wt);Pt.appendHandler(this,Wt)}this._eventHandlers[Wt]=en};for(const tn of en){Pt.createEventAccessor(Wt,tn)}};Pt.getCurrentEventHandlerValue=(Wt,Pt)=>{const en=Wt._getEventHandlerFor(Pt);if(!en){return null}if(en.body!==undefined){let nn,on,cn;if(Wt.constructor.name==="Window"){nn=null;on=tn.implForWrapper(Wt.document)}else{nn=Wt;on=nn.ownerDocument}const{body:dn}=en;const un=nn!==null&&nn.form?nn.form:null;const pn=Wt.constructor.name==="Window"&&Wt._document?Wt:on.defaultView;try{Function(dn)}catch(en){if(pn){sn(pn,en)}Wt._setEventHandlerFor(Pt,null);return null}const mn=on.defaultView.Function;if(Pt==="error"&&nn===null){const Wt=on?`\n//# sourceURL=${on.URL}`:"";cn=mn(`with (arguments[0]) { return function onerror(event, source, lineno, colno, error) {\n${dn}\n}; }${Wt}`)(pn);cn=In.convert(pn,cn)}else{const Wt=[];if(nn!==null){Wt.push(tn.wrapperForImpl(on))}if(un!==null){Wt.push(tn.wrapperForImpl(un))}if(nn!==null){Wt.push(tn.wrapperForImpl(nn))}let en=`with (arguments[0]) { return function on${Pt}(event) {\n${dn}\n}; }`;for(const Pt of Wt){en=`with (arguments[0]) { return function () {\n${en}\n}; }`}if(on){en+=`\n//# sourceURL=${on.URL}`}cn=mn(en)(pn);for(const Pt of Wt){cn=cn(Pt)}if(Pt==="beforeunload"){cn=rn.convert(pn,cn)}else{cn=an.convert(pn,cn)}}Wt._setEventHandlerFor(Pt,cn)}return Wt._getEventHandlerFor(Pt)};Pt.createEventAccessor=(Wt,en)=>{Object.defineProperty(Wt,"on"+en,{configurable:true,enumerable:true,get(){return Pt.getCurrentEventHandlerValue(this,en)},set(Wt){this._setEventHandlerFor(en,Wt)}})}},8348:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(93132);const an=en(7206);const{HTML_NS:rn}=en(98071);const{shadowIncludingRoot:In}=en(60470);const sn=en(12323);const{implForWrapper:on,wrapperForImpl:cn}=en(87094);class CEReactionsStack{constructor(){this._stack=[];this.backupElementQueue=[];this.processingBackupElementQueue=false}push(Wt){this._stack.push(Wt)}pop(){return this._stack.pop()}get currentElementQueue(){const{_stack:Wt}=this;return Wt[Wt.length-1]}isEmpty(){return this._stack.length===0}}const dn=new CEReactionsStack;function ceReactionsPreSteps(){dn.push([])}function ceReactionsPostSteps(){const Wt=dn.pop();invokeCEReactions(Wt)}const un=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]);function isValidCustomElementName(Wt){if(un.has(Wt)){return false}return nn(Wt)}function upgradeElement(Wt,Pt){if(Pt._ceState!=="undefined"||Pt._ceState==="uncustomized"){return}Pt._ceDefinition=Wt;Pt._ceState="failed";for(const Wt of Pt._attributeList){const{_localName:en,_namespace:tn,_value:nn}=Wt;enqueueCECallbackReaction(Pt,"attributeChangedCallback",[en,null,nn,tn])}if(In(Pt).nodeType===an.DOCUMENT_NODE){enqueueCECallbackReaction(Pt,"connectedCallback",[])}Wt.constructionStack.push(Pt);const{constructionStack:en,constructor:nn}=Wt;let rn;try{if(Wt.disableShadow===true&&Pt._shadowRoot!==null){throw tn.create(Pt._globalObject,["Can't upgrade a custom element with a shadow root if shadow is disabled","NotSupportedError"])}Pt._ceState="precustomized";const en=nn.construct();const an=on(en);if(an!==Pt){throw new TypeError("Invalid custom element constructor return value")}}catch(Wt){rn=Wt}en.pop();if(rn!==undefined){Pt._ceDefinition=null;Pt._ceReactionQueue=[];throw rn}Pt._ceState="custom"}function tryUpgradeElement(Wt){const{_ownerDocument:Pt,_namespaceURI:en,_localName:tn,_isValue:nn}=Wt;const an=lookupCEDefinition(Pt,en,tn,nn);if(an!==null){enqueueCEUpgradeReaction(Wt,an)}}function lookupCEDefinition(Wt,Pt,en,tn){const nn=null;if(Pt!==rn){return nn}if(!Wt._defaultView){return nn}const an=on(Wt._globalObject._customElementRegistry);const In=an._customElementDefinitions.find((Wt=>Wt.name===Wt.localName&&Wt.localName===en));if(In!==undefined){return In}const sn=an._customElementDefinitions.find((Wt=>Wt.name===tn&&Wt.localName===en));if(sn!==undefined){return sn}return nn}function invokeCEReactions(Wt){while(Wt.length>0){const Pt=Wt.shift();const en=Pt._ceReactionQueue;try{while(en.length>0){const Wt=en.shift();switch(Wt.type){case"upgrade":upgradeElement(Wt.definition,Pt);break;case"callback":Wt.callback.apply(cn(Pt),Wt.args);break}}}catch(Wt){sn(Pt._globalObject,Wt)}}}function enqueueElementOnAppropriateElementQueue(Wt){if(dn.isEmpty()){dn.backupElementQueue.push(Wt);if(dn.processingBackupElementQueue){return}dn.processingBackupElementQueue=true;Promise.resolve().then((()=>{const Wt=dn.backupElementQueue;invokeCEReactions(Wt);dn.processingBackupElementQueue=false}))}else{dn.currentElementQueue.push(Wt)}}function enqueueCECallbackReaction(Wt,Pt,en){const{_ceDefinition:{lifecycleCallbacks:tn,observedAttributes:nn}}=Wt;const an=tn[Pt];if(an===null){return}if(Pt==="attributeChangedCallback"){const Wt=en[0];if(!nn.includes(Wt)){return}}Wt._ceReactionQueue.push({type:"callback",callback:an,args:en});enqueueElementOnAppropriateElementQueue(Wt)}function enqueueCEUpgradeReaction(Wt,Pt){Wt._ceReactionQueue.push({type:"upgrade",definition:Pt});enqueueElementOnAppropriateElementQueue(Wt)}Wt.exports={customElementReactionsStack:dn,ceReactionsPreSteps:ceReactionsPreSteps,ceReactionsPostSteps:ceReactionsPostSteps,isValidCustomElementName:isValidCustomElementName,upgradeElement:upgradeElement,tryUpgradeElement:tryUpgradeElement,lookupCEDefinition:lookupCEDefinition,enqueueCEUpgradeReaction:enqueueCEUpgradeReaction,enqueueCECallbackReaction:enqueueCECallbackReaction,invokeCEReactions:invokeCEReactions}},29553:Wt=>{"use strict";function isLeapYear(Wt){return Wt%400===0||Wt%4===0&&Wt%100!==0}const Pt=[31,28,31,30,31,30,31,31,30,31,30,31];function numberOfDaysInMonthOfYear(Wt,en){if(Wt===2&&isLeapYear(en)){return 29}return Pt[Wt-1]}const en=/^([0-9]{4,})-([0-9]{2})$/;function parseMonthString(Wt){const Pt=en.exec(Wt);if(!Pt){return null}const tn=Number(Pt[1]);if(tn<=0){return null}const nn=Number(Pt[2]);if(nn<1||nn>12){return null}return{year:tn,month:nn}}function isValidMonthString(Wt){return parseMonthString(Wt)!==null}function serializeMonth({year:Wt,month:Pt}){const en=`${Wt}`.padStart(4,"0");const tn=`${Pt}`.padStart(2,"0");return`${en}-${tn}`}const tn=/^([0-9]{4,})-([0-9]{2})-([0-9]{2})$/;function parseDateString(Wt){const Pt=tn.exec(Wt);if(!Pt){return null}const en=Number(Pt[1]);if(en<=0){return null}const nn=Number(Pt[2]);if(nn<1||nn>12){return null}const an=Number(Pt[3]);if(an<1||an>numberOfDaysInMonthOfYear(nn,en)){return null}return{year:en,month:nn,day:an}}function isValidDateString(Wt){return parseDateString(Wt)!==null}function serializeDate(Wt){const Pt=`${Wt.day}`.padStart(2,"0");return`${serializeMonth(Wt)}-${Pt}`}const nn=/^(?:--)?([0-9]{2})-([0-9]{2})$/;function parseYearlessDateString(Wt){const Pt=nn.exec(Wt);if(!Pt){return null}const en=Number(Pt[1]);if(en<1||en>12){return null}const tn=Number(Pt[2]);if(tn<1||tn>numberOfDaysInMonthOfYear(en,4)){return null}return{month:en,day:tn}}function isValidYearlessDateString(Wt){return parseYearlessDateString(Wt)!==null}function serializeYearlessDate({month:Wt,day:Pt}){const en=`${Wt}`.padStart(2,"0");const tn=`${Pt}`.padStart(2,"0");return`${en}-${tn}`}const an=/^([0-9]{2}):([0-9]{2})(?::([0-9]{2}(?:\.([0-9]{1,3}))?))?$/;function parseTimeString(Wt){const Pt=an.exec(Wt);if(!Pt){return null}const en=Number(Pt[1]);if(en<0||en>23){return null}const tn=Number(Pt[2]);if(tn<0||tn>59){return null}const nn=Pt[3]!==undefined?Math.trunc(Number(Pt[3])):0;if(nn<0||nn>=60){return null}const rn=Pt[4]!==undefined?Number(Pt[4]):0;return{hour:en,minute:tn,second:nn,millisecond:rn}}function isValidTimeString(Wt){return parseTimeString(Wt)!==null}function serializeTime({hour:Wt,minute:Pt,second:en,millisecond:tn}){const nn=`${Wt}`.padStart(2,"0");const an=`${Pt}`.padStart(2,"0");if(en===0&&tn===0){return`${nn}:${an}`}const rn=`${en}`.padStart(2,"0");const In=`${tn}`.padStart(3,"0");return`${nn}:${an}:${rn}.${In}`}function parseLocalDateAndTimeString(Wt,Pt=false){let en=Wt.indexOf("T");if(en<0&&!Pt){en=Wt.indexOf(" ")}if(en<0){return null}const tn=parseDateString(Wt.slice(0,en));if(tn===null){return null}const nn=parseTimeString(Wt.slice(en+1));if(nn===null){return null}return{date:tn,time:nn}}function isValidLocalDateAndTimeString(Wt){return parseLocalDateAndTimeString(Wt)!==null}function isValidNormalizedLocalDateAndTimeString(Wt){return parseLocalDateAndTimeString(Wt,true)!==null}function serializeNormalizedDateAndTime({date:Wt,time:Pt}){return`${serializeDate(Wt)}T${serializeTime(Pt)}`}function weekNumberOfLastDay(Wt){const Pt=new Date(Wt,0);return Pt.getDay()===4||isLeapYear(Wt)&&Pt.getDay()===3?53:52}const rn=/^([0-9]{4,5})-W([0-9]{2})$/;function parseWeekString(Wt){const Pt=rn.exec(Wt);if(!Pt){return null}const en=Number(Pt[1]);if(en<=0){return null}const tn=Number(Pt[2]);if(tn<1||tn>weekNumberOfLastDay(en)){return null}return{year:en,week:tn}}function isValidWeekString(Wt){return parseWeekString(Wt)!==null}function serializeWeek({year:Wt,week:Pt}){const en=`${Wt}`.padStart(4,"0");const tn=`${Pt}`.padStart(2,"0");return`${en}-W${tn}`}function parseDateAsWeek(Wt){const Pt=864e5;const en=new Date(Date.UTC(Wt.getUTCFullYear(),Wt.getUTCMonth(),Wt.getUTCDate()));en.setUTCDate(en.getUTCDate()+4-(en.getUTCDay()||7));const tn=new Date(Date.UTC(en.getUTCFullYear(),0,1));const nn=Math.ceil(((en-tn)/Pt+1)/7);return{year:en.getUTCFullYear(),week:nn}}function isDate(Wt){try{Date.prototype.valueOf.call(Wt);return true}catch{return false}}Wt.exports={isDate:isDate,numberOfDaysInMonthOfYear:numberOfDaysInMonthOfYear,parseMonthString:parseMonthString,isValidMonthString:isValidMonthString,serializeMonth:serializeMonth,parseDateString:parseDateString,isValidDateString:isValidDateString,serializeDate:serializeDate,parseYearlessDateString:parseYearlessDateString,isValidYearlessDateString:isValidYearlessDateString,serializeYearlessDate:serializeYearlessDate,parseTimeString:parseTimeString,isValidTimeString:isValidTimeString,serializeTime:serializeTime,parseLocalDateAndTimeString:parseLocalDateAndTimeString,isValidLocalDateAndTimeString:isValidLocalDateAndTimeString,isValidNormalizedLocalDateAndTimeString:isValidNormalizedLocalDateAndTimeString,serializeNormalizedDateAndTime:serializeNormalizedDateAndTime,parseDateAsWeek:parseDateAsWeek,weekNumberOfLastDay:weekNumberOfLastDay,parseWeekString:parseWeekString,isValidWeekString:isValidWeekString,serializeWeek:serializeWeek}},27677:(Wt,Pt,en)=>{"use strict";const{firstChildWithLocalName:tn}=en(83521);const{HTML_NS:nn}=en(98071);Pt.isSummaryForParentDetails=Wt=>{const Pt=Wt.parentNode;if(Pt===null){return false}if(Pt._localName!=="details"||Pt._namespaceURI!==nn){return false}return tn(Pt,"summary")===Wt}},30962:(Wt,Pt,en)=>{"use strict";const tn=en(78012);const{implForWrapper:nn}=en(87094);Pt.documentBaseURL=Wt=>{const en=Wt.querySelector("base[href]");const tn=Pt.fallbackBaseURL(Wt);if(en===null){return tn}return frozenBaseURL(en,tn)};Pt.documentBaseURLSerialized=Wt=>tn.serializeURL(Pt.documentBaseURL(Wt));Pt.fallbackBaseURL=Wt=>{if(Wt.URL==="about:blank"&&Wt._defaultView&&Wt._defaultView._parent!==Wt._defaultView){const en=nn(Wt._defaultView._parent._document);return Pt.documentBaseURL(en)}return Wt._URL};Pt.parseURLToResultingURLRecord=(Wt,en)=>{const nn=Pt.documentBaseURL(en);return tn.parseURL(Wt,{baseURL:nn})};function frozenBaseURL(Wt,Pt){const en=Wt.getAttributeNS(null,"href");const nn=tn.parseURL(en,{baseURL:Pt});return nn===null?Pt:nn}},83350:(Wt,Pt,en)=>{"use strict";const tn=en(94431);const{tryImplForWrapper:nn}=en(87094);function createAnEvent(Wt,Pt,en=tn,nn={}){return en.createImpl(Pt,[Wt,nn],{isTrusted:nn.isTrusted!==false})}function fireAnEvent(Wt,Pt,en,tn,an){const rn=createAnEvent(Wt,Pt._globalObject,en,tn);return nn(Pt)._dispatch(rn,an)}Wt.exports={createAnEvent:createAnEvent,fireAnEvent:fireAnEvent}},11483:(Wt,Pt,en)=>{"use strict";const tn=en(32103);const nn=en(87094);const{isDisabled:an}=en(10588);const{firstChildWithLocalName:rn}=en(83521);const{createAnEvent:In}=en(83350);const{HTML_NS:sn,SVG_NS:on}=en(98071);const{isRenderedElement:cn}=en(31296);const dn=new Set(["input","select","textarea","button"]);Pt.isFocusableAreaElement=Wt=>{if(Wt._namespaceURI===sn){if(!Wt._ownerDocument._defaultView){return false}if(!Wt.isConnected){return false}if(!Number.isNaN(parseInt(Wt.getAttributeNS(null,"tabindex")))){return true}if(Wt._localName==="iframe"){return true}if(Wt._localName==="a"&&Wt.hasAttributeNS(null,"href")){return true}if(Wt._localName==="summary"&&Wt.parentNode&&Wt.parentNode._localName==="details"&&Wt===rn(Wt.parentNode,"summary")){return true}if(dn.has(Wt._localName)&&!an(Wt)){if(Wt._localName==="input"&&Wt.type==="hidden"){return false}return true}if(Wt.hasAttributeNS(null,"contenteditable")){return true}return false}if(Wt._namespaceURI===on){if(!Number.isNaN(parseInt(Wt.getAttributeNS(null,"tabindex")))&&cn(Wt)){return true}if(Wt._localName==="a"&&Wt.hasAttributeNS(null,"href")){return true}return false}return false};Pt.fireFocusEventWithTargetAdjustment=(Wt,Pt,en,{bubbles:an=false}={})=>{if(Pt===null){return}const rn=In(Wt,Pt._globalObject,tn,{bubbles:an,composed:true,relatedTarget:en,view:Pt._ownerDocument._defaultView,detail:0});if(Pt._defaultView){Pt=nn.implForWrapper(Pt._defaultView)}Pt._dispatch(rn)}},10588:(Wt,Pt,en)=>{"use strict";const{isValidFloatingPointNumber:tn,isValidSimpleColor:nn,parseFloatingPointNumber:an,stripLeadingAndTrailingASCIIWhitespace:rn,stripNewlines:In,splitOnCommas:sn}=en(97205);const{isValidDateString:on,isValidMonthString:cn,isValidTimeString:dn,isValidWeekString:un,parseLocalDateAndTimeString:pn,serializeNormalizedDateAndTime:mn}=en(29553);const bn=en(78012);const Gn=en(49747);const{domSymbolTree:hn}=en(38542);const{closest:Zn,firstChildWithLocalName:An}=en(83521);const Wn=en(7206);const{HTML_NS:Nn}=en(98071);Pt.isDisabled=Wt=>{if(Wt.localName==="button"||Wt.localName==="input"||Wt.localName==="select"||Wt.localName==="textarea"){if(Wt.hasAttributeNS(null,"disabled")){return true}}let Pt=Wt.parentNode;while(Pt){if(Pt.localName==="fieldset"&&Pt.hasAttributeNS(null,"disabled")){const en=An(Pt,"legend");if(!en||!en.contains(Wt)){return true}}Pt=Pt.parentNode}return false};const gn=new Set(["button","fieldset","input","object","output","select","textarea"]);Pt.isListed=Wt=>gn.has(Wt._localName)&&Wt.namespaceURI===Nn;const yn=new Set(["button","input","object","select","textarea"]);Pt.isSubmittable=Wt=>yn.has(Wt._localName)&&Wt.namespaceURI===Nn;const vn=new Set(["submit","image"]);Pt.isSubmitButton=Wt=>(Wt._localName==="input"&&vn.has(Wt.type)||Wt._localName==="button"&&Wt.type==="submit")&&Wt.namespaceURI===Nn;const Yn=new Set([...vn,"reset","button"]);Pt.isButton=Wt=>(Wt._localName==="input"&&Yn.has(Wt.type)||Wt._localName==="button")&&Wt.namespaceURI===Nn;Pt.isInteractiveContent=Wt=>{if(Wt.nodeType!==Wn.ELEMENT_NODE){return false}if(Wt.namespaceURI!==Nn){return false}if(Wt.hasAttributeNS(null,"tabindex")){return true}switch(Wt.localName){case"a":return Wt.hasAttributeNS(null,"href");case"audio":case"video":return Wt.hasAttributeNS(null,"controls");case"img":case"object":return Wt.hasAttributeNS(null,"usemap");case"input":return Wt.type!=="hidden";case"button":case"details":case"embed":case"iframe":case"label":case"select":case"textarea":return true}return false};Pt.isLabelable=Wt=>{if(Wt.nodeType!==Wn.ELEMENT_NODE){return false}if(Wt.namespaceURI!==Nn){return false}switch(Wt.localName){case"button":case"meter":case"output":case"progress":case"select":case"textarea":return true;case"input":return Wt.type!=="hidden"}return false};Pt.getLabelsForLabelable=Wt=>{if(!Pt.isLabelable(Wt)){return null}if(!Wt._labels){const Pt=Wt.getRootNode({});Wt._labels=Gn.create(Pt._globalObject,[],{element:Pt,query:()=>{const en=[];for(const tn of hn.treeIterator(Pt)){if(tn.control===Wt){en.push(tn)}}return en}})}return Wt._labels};Pt.isValidEmailAddress=(Wt,Pt=false)=>{const en=new RegExp("^[a-zA-Z0-9.!#$%&'*+\\/=?^_`{|}~-]+@[a-zA-Z0-9]"+"(?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}"+"[a-zA-Z0-9])?)*$");if(Pt){return sn(Wt).every((Wt=>en.test(Wt)))}return en.test(Wt)};Pt.isValidAbsoluteURL=Wt=>bn.parseURL(Wt)!==null;Pt.sanitizeValueByType=(Wt,Pt)=>{switch(Wt.type.toLowerCase()){case"password":case"search":case"tel":case"text":Pt=In(Pt);break;case"color":Pt=nn(Pt)?Pt.toLowerCase():"#000000";break;case"date":if(!on(Pt)){Pt=""}break;case"datetime-local":{const Wt=pn(Pt);Pt=Wt!==null?mn(Wt):"";break}case"email":if(Wt.hasAttributeNS(null,"multiple")){Pt=Pt.split(",").map((Wt=>rn(Wt))).join(",")}else{Pt=In(Pt);Pt=rn(Pt)}break;case"month":if(!cn(Pt)){Pt=""}break;case"number":if(!tn(Pt)||an(Pt)===null){Pt=""}break;case"range":if(!tn(Pt)||an(Pt)===null){const en=Wt._minimum;const tn=Wt._maximum;const nn=tnWt._maximum){Pt=`${Wt._maximum}`}break;case"time":if(!dn(Pt)){Pt=""}break;case"url":Pt=In(Pt);Pt=rn(Pt);break;case"week":if(!un(Pt)){Pt=""}}return Pt};Pt.formOwner=Wt=>{const Pt=Wt.getAttributeNS(null,"form");if(Pt===""){return null}if(Pt===null){return Zn(Wt,"form")}const en=Wt.getRootNode({});let tn;for(const Wt of hn.treeIterator(en)){if(Wt.nodeType===Wn.ELEMENT_NODE&&Wt.getAttributeNS(null,"id")===Pt){tn=Wt;break}}if(tn&&tn.namespaceURI===Nn&&tn.localName==="form"){return tn}return null}},84175:(Wt,Pt,en)=>{"use strict";const{HTML_NS:tn}=en(98071);const{createElement:nn,getValidTagNames:an}=en(94202);const{implForWrapper:rn,wrapperForImpl:In}=en(87094);const sn=Symbol("already-constructed-marker");function HTMLConstructor(Wt,Pt,en){const on=rn(Wt._customElementRegistry);if(en===HTMLConstructor){throw new TypeError("Invalid constructor")}const cn=on._customElementDefinitions.find((Wt=>Wt.objectReference===en));if(cn===undefined){throw new TypeError("Invalid constructor, the constructor is not part of the custom element registry")}let dn=null;if(cn.localName===cn.name){if(Pt!=="HTMLElement"){throw new TypeError("Invalid constructor, autonomous custom element should extend from HTMLElement")}}else{const Wt=an(tn,Pt);if(!Wt.includes(cn.localName)){throw new TypeError(`${cn.localName} is not valid local name for ${Pt}`)}dn=cn.name}let{prototype:un}=en;if(un===null||typeof un!=="object"){un=Wt.HTMLElement.prototype}if(cn.constructionStack.length===0){const Pt=rn(Wt.document);const en=nn(Pt,cn.localName,tn);const an=In(en);Object.setPrototypeOf(an,un);en._ceState="custom";en._ceDefinition=cn;en._isValue=dn;return an}const pn=cn.constructionStack[cn.constructionStack.length-1];const mn=In(pn);if(pn===sn){throw new TypeError("This instance is already constructed")}Object.setPrototypeOf(mn,un);cn.constructionStack[cn.constructionStack.length-1]=sn;return mn}Wt.exports={HTMLConstructor:HTMLConstructor}},13907:(Wt,Pt,en)=>{"use strict";const tn=en(58611);const nn=en(65692);const{Writable:an}=en(2203);const rn=en(43106);const In=process.version.replace("v","").split(".");const sn=Number.parseInt(In[0]);function abortRequest(Wt){Wt.destroy();Wt.removeAllListeners();Wt.on("error",(()=>{}))}Wt.exports=class Request extends an{constructor(Wt,Pt,en){super();Object.assign(this,Pt);this.currentURL=Wt;this._requestOptions=en;this.headers=en.headers;this._ended=false;this._redirectCount=0;this._requestBodyBuffers=[];this._bufferIndex=0;this._performRequest()}abort(){abortRequest(this._currentRequest);this.emit("abort");this.removeAllListeners()}pipeRequest(Wt){Wt.pipe(this._currentRequest)}write(Wt,Pt){if(Wt.length>0){this._requestBodyBuffers.push({data:Wt,encoding:Pt});this._currentRequest.write(Wt,Pt)}}end(){this.emit("request",this._currentRequest);this._ended=true;this._currentRequest.end()}setHeader(Wt,Pt){this.headers[Wt]=Pt;this._currentRequest.setHeader(Wt,Pt)}removeHeader(Wt){delete this.headers[Wt];this._currentRequest.removeHeader(Wt)}toJSON(){const{method:Wt,headers:Pt}=this._requestOptions;return{uri:new URL(this.currentURL),method:Wt,headers:Pt}}_writeNext(Wt){if(this._currentRequest){if(Wt){this.emit("error",Wt)}else if(this._bufferIndex{this._processResponse(Wt)}));let rn;if(this._redirectCount===0){this.originalCookieHeader=this.getHeader("Cookie")}if(this.cookieJar){rn=this.cookieJar.getCookieStringSync(this.currentURL)}if(rn&&rn.length){if(this.originalCookieHeader){this.setHeader("Cookie",this.originalCookieHeader+"; "+rn)}else{this.setHeader("Cookie",rn)}}for(const Wt of["connect","error","socket","timeout"]){this._currentRequest.on(Wt,((...Pt)=>{this.emit(Wt,...Pt)}))}if(this._isRedirect){this._bufferIndex=0;this._writeNext()}}_processResponse(Wt){const Pt=Wt.headers["set-cookie"];if(this.cookieJar&&Array.isArray(Pt)){try{Pt.forEach((Wt=>{this.cookieJar.setCookieSync(Wt,this.currentURL,{ignoreError:true})}))}catch(Wt){this.emit("error",Wt)}}const{statusCode:en}=Wt;const{location:tn}=Wt.headers;const catchResErrors=Wt=>{if(!(sn>=15&&Wt.message==="aborted")){this.emit("error",Wt)}};Wt.on("error",catchResErrors);let nn=null;let an=false;if(typeof tn==="string"&&tn.length&&this.followRedirects&&en>=300&&en<400){nn=tn}else if(en===401&&/^Basic /i.test(Wt.headers["www-authenticate"]||"")&&(this.user&&this.user.length)){this._requestOptions.auth=`${this.user}:${this.pass}`;an=true}if(nn||an){if(++this._redirectCount>21){const Wt=new Error("Maximum number of redirects exceeded");Wt.code="ERR_TOO_MANY_REDIRECTS";this.emit("error",Wt);return}abortRequest(this._currentRequest);Wt.destroy();this._isRedirect=true;if((en===301||en===302)&&this._requestOptions.method==="POST"||en===303&&!/^(?:GET|HEAD)$/.test(this._requestOptions.method)){this._requestOptions.method="GET";this._requestBodyBuffers=[]}let Pt=this._removeMatchingHeaders(/^host$/i);if(!Pt){Pt=new URL(this.currentURL).hostname}const tn=this.currentURL;if(!an){const Wt=nn.startsWith("https:")?new URL(nn):new URL(nn,this.currentURL);if(Wt.hostname!==Pt){this._removeMatchingHeaders(/^authorization$/i)}this.currentURL=Wt.toString()}this.headers.Referer=tn;this.emit("redirect",Wt,this.headers,this.currentURL);try{this._performRequest()}catch(Wt){this.emit("error",Wt)}}else{let Pt=Wt;const tn=this.headers["Accept-Encoding"];const nn=typeof tn==="string"&&(tn.includes("gzip")||tn.includes("deflate"));if(nn&&this._requestOptions.method!=="HEAD"&&en>=200&&en!==204&&en!==304){const en={flush:(rn.constants??rn).Z_SYNC_FLUSH,finishFlush:(rn.constants??rn).Z_SYNC_FLUSH};const tn=(Wt.headers["content-encoding"]||"identity").trim().toLowerCase();if(tn==="gzip"){Pt=rn.createGunzip(en);Wt.pipe(Pt)}else if(tn==="deflate"){Pt=rn.createInflate(en);Wt.pipe(Pt)}}Pt.removeAllListeners("error");this.emit("response",Wt,this.currentURL);Pt.on("data",(Wt=>this.emit("data",Wt)));Pt.once("end",(Wt=>this.emit("end",Wt)));Pt.on("error",catchResErrors);Pt.on("close",(()=>this.emit("close")));this._requestBodyBuffers=[]}}getHeader(Wt,Pt){if(this._currentRequest){return this._currentRequest.getHeader(Wt,Pt)}return null}_removeMatchingHeaders(Wt){let Pt;for(const en in this.headers){if(Wt.test(en)){Pt=this.headers[en];delete this.headers[en]}}return Pt}}},38542:(Wt,Pt,en)=>{"use strict";const tn=en(86415);Pt.cloningSteps=Symbol("cloning steps");Pt.domSymbolTree=new tn("DOM SymbolTree")},1807:Wt=>{"use strict";Wt.exports=class IterableWeakSet{constructor(){this._refSet=new Set;this._refMap=new WeakMap;this._finalizationRegistry=new FinalizationRegistry((({ref:Wt,set:Pt})=>Pt.delete(Wt)))}add(Wt){if(!this._refMap.has(Wt)){const Pt=new WeakRef(Wt);this._refMap.set(Wt,Pt);this._refSet.add(Pt);this._finalizationRegistry.register(Wt,{ref:Pt,set:this._refSet},Pt)}return this}delete(Wt){const Pt=this._refMap.get(Wt);if(!Pt){return false}this._refMap.delete(Wt);this._refSet.delete(Pt);this._finalizationRegistry.unregister(Pt);return true}has(Wt){return this._refMap.has(Wt)}*[Symbol.iterator](){for(const Wt of this._refSet){const Pt=Wt.deref();if(Pt===undefined){continue}yield Pt}}}},14161:(Wt,Pt)=>{"use strict";Pt.parseJSONFromBytes=Wt=>{if(Wt[0]===239&&Wt[1]===187&&Wt[2]===191){Wt=Wt.subarray(3)}const Pt=Wt.toString("utf-8");return JSON.parse(Pt)}},69358:(Wt,Pt,en)=>{"use strict";const{domSymbolTree:tn}=en(38542);const nn=en(12323);const an=en(94431);const rn=en(87094);const In=en(84761);const sn={ATTRIBUTES:"attributes",CHARACTER_DATA:"characterData",CHILD_LIST:"childList"};let on=false;const cn=new Set;const dn=[];function queueMutationRecord(Wt,Pt,en,nn,an,rn,on,dn,un){const pn=new Map;const mn=tn.ancestorsToArray(Pt);for(const tn of mn){for(const rn of tn._registeredObserverList){const{options:In,observer:on}=rn;if(!(tn!==Pt&&In.subtree===false)&&!(Wt===sn.ATTRIBUTES&&In.attributes!==true)&&!(Wt===sn.ATTRIBUTES&&In.attributeFilter&&!In.attributeFilter.some((Wt=>Wt===en||Wt===nn)))&&!(Wt===sn.CHARACTER_DATA&&In.characterData!==true)&&!(Wt===sn.CHILD_LIST&&In.childList===false)){if(!pn.has(on)){pn.set(on,null)}if(Wt===sn.ATTRIBUTES&&In.attributeOldValue===true||Wt===sn.CHARACTER_DATA&&In.characterDataOldValue===true){pn.set(on,an)}}}}for(const[tn,an]of pn.entries()){const sn=In.createImpl(Pt._globalObject,[],{type:Wt,target:Pt,attributeName:en,attributeNamespace:nn,oldValue:an,addedNodes:rn,removedNodes:on,previousSibling:dn,nextSibling:un});tn._recordQueue.push(sn);cn.add(tn)}queueMutationObserverMicrotask()}function queueTreeMutationRecord(Wt,Pt,en,tn,nn){queueMutationRecord(sn.CHILD_LIST,Wt,null,null,null,Pt,en,tn,nn)}function queueAttributeMutationRecord(Wt,Pt,en,tn){queueMutationRecord(sn.ATTRIBUTES,Wt,Pt,en,tn,[],[],null,null)}function queueMutationObserverMicrotask(){if(on){return}on=true;Promise.resolve().then((()=>{notifyMutationObservers()}))}function notifyMutationObservers(){on=false;const Wt=[...cn].sort(((Wt,Pt)=>Wt._id-Pt._id));cn.clear();const Pt=[...dn];dn.splice(0,dn.length);for(const Pt of Wt){const Wt=[...Pt._recordQueue];Pt._recordQueue=[];for(const Wt of Pt._nodeList){Wt._registeredObserverList=Wt._registeredObserverList.filter((Wt=>Wt.source!==Pt))}if(Wt.length>0){try{const en=rn.wrapperForImpl(Pt);Pt._callback.call(en,Wt.map(rn.wrapperForImpl),en)}catch(Pt){const{target:en}=Wt[0];const tn=en._ownerDocument._defaultView;nn(tn,Pt)}}}for(const Wt of Pt){const Pt=an.createImpl(Wt._globalObject,["slotchange",{bubbles:true}],{isTrusted:true});Wt._dispatch(Pt)}}Wt.exports={MUTATION_TYPE:sn,queueMutationRecord:queueMutationRecord,queueTreeMutationRecord:queueTreeMutationRecord,queueAttributeMutationRecord:queueAttributeMutationRecord,queueMutationObserverMicrotask:queueMutationObserverMicrotask,signalSlotList:dn}},98071:(Wt,Pt)=>{"use strict";Pt.HTML_NS="http://www.w3.org/1999/xhtml";Pt.MATHML_NS="http://www.w3.org/1998/Math/MathML";Pt.SVG_NS="http://www.w3.org/2000/svg";Pt.XLINK_NS="http://www.w3.org/1999/xlink";Pt.XML_NS="http://www.w3.org/XML/1998/namespace";Pt.XMLNS_NS="http://www.w3.org/2000/xmlns/"},39471:(Wt,Pt,en)=>{"use strict";const tn=en(7206);const{domSymbolTree:nn}=en(38542);function nodeLength(Wt){switch(Wt.nodeType){case tn.DOCUMENT_TYPE_NODE:return 0;case tn.TEXT_NODE:case tn.PROCESSING_INSTRUCTION_NODE:case tn.COMMENT_NODE:return Wt.data.length;default:return nn.childrenCount(Wt)}}function nodeRoot(Wt){while(nn.parent(Wt)){Wt=nn.parent(Wt)}return Wt}function isInclusiveAncestor(Wt,Pt){while(Pt){if(Wt===Pt){return true}Pt=nn.parent(Pt)}return false}function isFollowing(Wt,Pt){if(Wt===Pt){return false}let en=Pt;while(en){if(en===Wt){return true}en=nn.following(en)}return false}Wt.exports={nodeLength:nodeLength,nodeRoot:nodeRoot,isInclusiveAncestor:isInclusiveAncestor,isFollowing:isFollowing}},76125:(Wt,Pt,en)=>{"use strict";const{parseFloatingPointNumber:tn}=en(97205);const{parseDateString:nn,parseLocalDateAndTimeString:an,parseMonthString:rn,parseTimeString:In,parseWeekString:sn,serializeDate:on,serializeMonth:cn,serializeNormalizedDateAndTime:dn,serializeTime:un,serializeWeek:pn,parseDateAsWeek:mn}=en(29553);function getUTCMs(Wt,Pt=1,en=1,tn=0,nn=0,an=0,rn=0){if(Wt>99||Wt<0){return Date.UTC(Wt,Pt-1,en,tn,nn,an,rn)}const In=new Date(0);In.setUTCFullYear(Wt);In.setUTCMonth(Pt-1);In.setUTCDate(en);In.setUTCHours(tn);In.setUTCMinutes(nn);In.setUTCSeconds(an,rn);return In.valueOf()}const bn=[-1,0,1,2,3,-3,-2];Pt.convertStringToNumberByType={date(Wt){const Pt=nn(Wt);if(Pt===null){return null}return getUTCMs(Pt.year,Pt.month,Pt.day)},month(Wt){const Pt=rn(Wt);if(Pt===null){return null}return(Pt.year-1970)*12+(Pt.month-1)},week(Wt){const Pt=sn(Wt);if(Pt===null){return null}const en=new Date(getUTCMs(Pt.year));const tn=bn[en.getUTCDay()];return en.setUTCDate(1+7*(Pt.week-1)-tn)},time(Wt){const Pt=In(Wt);if(Pt===null){return null}return((Pt.hour*60+Pt.minute)*60+Pt.second)*1e3+Pt.millisecond},"datetime-local"(Wt){const Pt=an(Wt);if(Pt===null){return null}const{date:{year:en,month:tn,day:nn},time:{hour:rn,minute:In,second:sn,millisecond:on}}=Pt;return getUTCMs(en,tn,nn,rn,In,sn,on)},number:tn,range:tn};Pt.convertStringToDateByType={date(Wt){const en=Pt.convertStringToNumberByType.date(Wt);return en===null?null:new Date(en)},month(Wt){const Pt=rn(Wt);if(Pt===null){return null}const en=new Date(0);en.setUTCFullYear(Pt.year);en.setUTCMonth(Pt.month-1);return en},week(Wt){const en=Pt.convertStringToNumberByType.week(Wt);return en===null?null:new Date(en)},time(Wt){const en=Pt.convertStringToNumberByType.time(Wt);return en===null?null:new Date(en)},"datetime-local"(Wt){const en=Pt.convertStringToNumberByType["datetime-local"](Wt);return en===null?null:new Date(en)}};Pt.serializeDateByType={date(Wt){return on({year:Wt.getUTCFullYear(),month:Wt.getUTCMonth()+1,day:Wt.getUTCDate()})},month(Wt){return cn({year:Wt.getUTCFullYear(),month:Wt.getUTCMonth()+1})},week(Wt){return pn(mn(Wt))},time(Wt){return un({hour:Wt.getUTCHours(),minute:Wt.getUTCMinutes(),second:Wt.getUTCSeconds(),millisecond:Wt.getUTCMilliseconds()})},"datetime-local"(Wt){return dn({date:{year:Wt.getUTCFullYear(),month:Wt.getUTCMonth()+1,day:Wt.getUTCDate()},time:{hour:Wt.getUTCHours(),minute:Wt.getUTCMinutes(),second:Wt.getUTCSeconds(),millisecond:Wt.getUTCMilliseconds()}})}};Pt.convertNumberToStringByType={date(Wt){return Pt.serializeDateByType.date(new Date(Wt))},month(Wt){const en=1970+Math.floor(Wt/12);const tn=Wt%12;const nn=new Date(0);nn.setUTCFullYear(en);nn.setUTCMonth(tn);return Pt.serializeDateByType.month(nn)},week(Wt){return Pt.serializeDateByType.week(new Date(Wt))},time(Wt){return Pt.serializeDateByType.time(new Date(Wt))},"datetime-local"(Wt){return Pt.serializeDateByType["datetime-local"](new Date(Wt))},number(Wt){return Wt.toString()},range(Wt){return Wt.toString()}}},14295:Wt=>{"use strict";Wt.exports=class OrderedSet{constructor(){this._items=[]}append(Wt){if(!this.contains(Wt)){this._items.push(Wt)}}prepend(Wt){if(!this.contains(Wt)){this._items.unshift(Wt)}}replace(Wt,Pt){let en=false;for(let tn=0;tnWt.includes(Pt)))}removePredicate(Wt){for(let Pt=0;Pt{"use strict";const tn=en(21379);const{fireAnEvent:nn}=en(83350);Pt.fireAPageTransitionEvent=(Wt,Pt,en)=>{const an={persisted:en,cancelable:true,bubbles:true};nn(Wt,Pt,tn,an,true)}},12323:(Wt,Pt,en)=>{"use strict";const tn=en(39023);const nn=en(87094);const an=en(89045);const{createAnEvent:rn}=en(83350);const In=Symbol("error reporting mode");function reportAnError(Wt,Pt,en,nn,sn,on){if(en[In]){return false}en[In]=true;if(typeof sn!=="string"){sn="uncaught exception: "+tn.inspect(nn)}const cn=rn("error",en._globalObject,an,{cancelable:true,message:sn,filename:on,lineno:Wt,colno:Pt,error:nn});try{en._dispatch(cn)}finally{en[In]=false;return cn.defaultPrevented}}Wt.exports=function reportException(Wt,Pt,en){const an=Pt&&Pt.stack;const rn=an&&an.split("\n");let In;if(rn){for(let Wt=1;Wt{"use strict";const tn=en(80501);const nn=en(87094);function initNwsapi(Wt){const{_globalObject:Pt,_ownerDocument:en}=Wt;return tn({document:nn.wrapperForImpl(en),DOMException:Pt.DOMException})}Pt.matchesDontThrow=(Wt,Pt)=>{const en=Wt._ownerDocument;if(!en._nwsapiDontThrow){en._nwsapiDontThrow=initNwsapi(Wt);en._nwsapiDontThrow.configure({LOGERRORS:false,VERBOSITY:false,IDS_DUPES:true,MIXEDCASE:true})}return en._nwsapiDontThrow.match(Pt,nn.wrapperForImpl(Wt))};Pt.addNwsapi=Wt=>{const Pt=Wt._ownerDocument;if(!Pt._nwsapi){Pt._nwsapi=initNwsapi(Wt);Pt._nwsapi.configure({LOGERRORS:false,IDS_DUPES:true,MIXEDCASE:true})}return Pt._nwsapi}},60470:(Wt,Pt,en)=>{"use strict";const tn=en(7206);const{nodeRoot:nn}=en(39471);const{HTML_NS:an}=en(98071);const{domSymbolTree:rn}=en(38542);const{signalSlotList:In,queueMutationObserverMicrotask:sn}=en(69358);const on=new Set(["article","aside","blockquote","body","div","footer","h1","h2","h3","h4","h5","h6","header","main","nav","p","section","span"]);function isValidHostElementName(Wt){return on.has(Wt)}function isNode(Wt){return Boolean(Wt&&"nodeType"in Wt)}function isShadowRoot(Wt){return Boolean(Wt&&Wt.nodeType===tn.DOCUMENT_FRAGMENT_NODE&&"host"in Wt)}function isSlotable(Wt){return Wt&&(Wt.nodeType===tn.ELEMENT_NODE||Wt.nodeType===tn.TEXT_NODE)}function isSlot(Wt){return Wt&&Wt.localName==="slot"&&Wt._namespaceURI===an}function isShadowInclusiveAncestor(Wt,Pt){while(isNode(Pt)){if(Pt===Wt){return true}if(isShadowRoot(Pt)){Pt=Pt.host}else{Pt=rn.parent(Pt)}}return false}function retarget(Wt,Pt){while(true){if(!isNode(Wt)){return Wt}const en=nn(Wt);if(!isShadowRoot(en)||isNode(Pt)&&isShadowInclusiveAncestor(en,Pt)){return Wt}Wt=nn(Wt).host}}function getEventTargetParent(Wt,Pt){return Wt._getTheParent?Wt._getTheParent(Pt):null}function shadowIncludingRoot(Wt){const Pt=nn(Wt);return isShadowRoot(Pt)?shadowIncludingRoot(Pt.host):Pt}function assignSlot(Wt){const Pt=findSlot(Wt);if(Pt){assignSlotable(Pt)}}function assignSlotable(Wt){const Pt=findSlotable(Wt);let en=false;if(Pt.length!==Wt._assignedNodes.length){en=true}else{for(let tn=0;tnPt===Wt))){In.push(Wt)}sn()}function*shadowIncludingInclusiveDescendantsIterator(Wt){yield Wt;if(Wt._shadowRoot){yield*shadowIncludingInclusiveDescendantsIterator(Wt._shadowRoot)}for(const Pt of rn.childrenIterator(Wt)){yield*shadowIncludingInclusiveDescendantsIterator(Pt)}}function*shadowIncludingDescendantsIterator(Wt){if(Wt._shadowRoot){yield*shadowIncludingInclusiveDescendantsIterator(Wt._shadowRoot)}for(const Pt of rn.childrenIterator(Wt)){yield*shadowIncludingInclusiveDescendantsIterator(Pt)}}Wt.exports={isValidHostElementName:isValidHostElementName,isNode:isNode,isSlotable:isSlotable,isSlot:isSlot,isShadowRoot:isShadowRoot,isShadowInclusiveAncestor:isShadowInclusiveAncestor,retarget:retarget,getEventTargetParent:getEventTargetParent,shadowIncludingRoot:shadowIncludingRoot,assignSlot:assignSlot,assignSlotable:assignSlotable,assignSlotableForTree:assignSlotableForTree,findSlot:findSlot,findFlattenedSlotables:findFlattenedSlotables,signalSlotChange:signalSlotChange,shadowIncludingInclusiveDescendantsIterator:shadowIncludingInclusiveDescendantsIterator,shadowIncludingDescendantsIterator:shadowIncludingDescendantsIterator}},97205:(Wt,Pt)=>{"use strict";const en=/^[\t\n\f\r ]$/;Pt.asciiWhitespaceRe=en;Pt.asciiLowercase=Wt=>Wt.replace(/[A-Z]/g,(Wt=>Wt.toLowerCase()));Pt.asciiUppercase=Wt=>Wt.replace(/[a-z]/g,(Wt=>Wt.toUpperCase()));Pt.stripNewlines=Wt=>Wt.replace(/[\n\r]+/g,"");Pt.stripLeadingAndTrailingASCIIWhitespace=Wt=>Wt.replace(/^[ \t\n\f\r]+/,"").replace(/[ \t\n\f\r]+$/,"");Pt.stripAndCollapseASCIIWhitespace=Wt=>Wt.replace(/[ \t\n\f\r]+/g," ").replace(/^[ \t\n\f\r]+/,"").replace(/[ \t\n\f\r]+$/,"");Pt.isValidSimpleColor=Wt=>/^#[a-fA-F\d]{6}$/.test(Wt);Pt.asciiCaseInsensitiveMatch=(Wt,Pt)=>{if(Wt.length!==Pt.length){return false}for(let en=0;en{const Pt=Wt.length-Wt.trimStart().length;if(/[^\t\n\f\r ]/.test(Wt.slice(0,Pt))){return null}const en=parseInt(Wt,10);if(Number.isNaN(en)){return null}return en===0?0:en};Pt.parseNonNegativeInteger=Wt=>{const Pt=tn(Wt);if(Pt===null){return null}if(Pt<0){return null}return Pt};const nn=/^-?(?:\d+|\d*\.\d+)(?:[eE][-+]?\d+)?$/;Pt.isValidFloatingPointNumber=Wt=>nn.test(Wt);Pt.parseFloatingPointNumber=Wt=>{const Pt=Wt.length-Wt.trimStart().length;if(/[^\t\n\f\r ]/.test(Wt.slice(0,Pt))){return null}const en=parseFloat(Wt);return isFinite(en)?en:null};Pt.splitOnASCIIWhitespace=Wt=>{let Pt=0;const tn=[];while(Pt{let Pt=0;const tn=[];while(Ptnn&&en.test(Wt[an-1])){an--}tn.push(Wt.slice(nn,an));if(Pt{"use strict";const tn=en(28144);const{CSSStyleDeclaration:nn}=en(99712);const an=en(77078);const{getSpecifiedColor:rn,getComputedOrUsedColor:In}=en(28591);const{matchesDontThrow:sn}=en(561);const{forEach:on,indexOf:cn}=Array.prototype;let dn;Pt.propertiesWithResolvedValueImplemented={__proto__:null,visibility:{inherited:true,initial:"visible",computedValue:"as-specified"},"pointer-events":{inherited:true,initial:"auto",computedValue:"as-specified"},"background-color":{inherited:false,initial:"transparent",computedValue:"computed-color"},"border-block-start-color":{inherited:false,initial:"currentcolor",computedValue:"computed-color"},"border-block-end-color":{inherited:false,initial:"currentcolor",computedValue:"computed-color"},"border-inline-start-color":{inherited:false,initial:"currentcolor",computedValue:"computed-color"},"border-inline-end-color":{inherited:false,initial:"currentcolor",computedValue:"computed-color"},"border-top-color":{inherited:false,initial:"currentcolor",computedValue:"computed-color"},"border-right-color":{inherited:false,initial:"currentcolor",computedValue:"computed-color"},"border-bottom-color":{inherited:false,initial:"currentcolor",computedValue:"computed-color"},"border-left-color":{inherited:false,initial:"currentcolor",computedValue:"computed-color"},"caret-color":{inherited:true,initial:"auto",computedValue:"computed-color"},color:{inherited:true,initial:"CanvasText",computedValue:"computed-color"},"outline-color":{inherited:false,initial:"invert",computedValue:"computed-color"}};function forEachMatchingSheetRuleOfElement(Wt,Pt){function handleSheet(en){on.call(en.cssRules,(en=>{if(en.media){if(cn.call(en.media,"screen")!==-1){on.call(en.cssRules,(en=>{if(matches(en,Wt)){Pt(en)}}))}}else if(matches(en,Wt)){Pt(en)}}))}if(!dn){dn=tn.parse(an)}handleSheet(dn);on.call(Wt._ownerDocument.styleSheets._list,handleSheet)}Pt.invalidateStyleCache=Wt=>{if(Wt._attached){Wt._ownerDocument._styleCache=null}};Pt.getDeclarationForElement=Wt=>{let Pt=Wt._ownerDocument._styleCache;if(!Pt){Pt=Wt._ownerDocument._styleCache=new WeakMap}const en=Pt.get(Wt);if(en){return en}const tn=new nn;function handleProperty(Wt,Pt){const en=Wt.getPropertyValue(Pt);if(en==="unset"){tn.removeProperty(Pt)}else{tn.setProperty(Pt,en,Wt.getPropertyPriority(Pt))}}forEachMatchingSheetRuleOfElement(Wt,(Wt=>{on.call(Wt.style,(Pt=>{handleProperty(Wt.style,Pt)}))}));on.call(Wt.style,(Pt=>{handleProperty(Wt.style,Pt)}));Pt.set(Wt,tn);return tn};function matches(Wt,Pt){return sn(Pt,Wt.selectorText)}function getCascadedPropertyValue(Wt,en){return Pt.getDeclarationForElement(Wt).getPropertyValue(en)}function getSpecifiedValue(Wt,en){const{initial:tn,inherited:nn,computedValue:an}=Pt.propertiesWithResolvedValueImplemented[en];const In=getCascadedPropertyValue(Wt,en);if(In!==""){if(an==="computed-color"){return rn(In)}return In}if(nn&&Wt.parentElement!==null){return getComputedValue(Wt.parentElement,en)}return tn}function getComputedValue(Wt,en){const{computedValue:tn,initial:nn}=Pt.propertiesWithResolvedValueImplemented[en];if(tn==="as-specified"){return getSpecifiedValue(Wt,en)}else if(tn==="computed-color"){const Pt=getSpecifiedValue(Wt,en);if(Pt==="currentcolor"){if(en==="color"){if(Wt.parentElement!==null){return getComputedValue(Wt.parentElement,"color")}return nn}return getComputedValue(Wt,"color")}return In(Pt)}throw new TypeError(`Internal error: unrecognized computed value instruction '${tn}'`)}Pt.getResolvedValue=(Wt,Pt)=>getComputedValue(Wt,Pt);Pt.SHADOW_DOM_PSEUDO_REGEXP=/^::(?:part|slotted)\(/i},38454:(Wt,Pt,en)=>{"use strict";const tn=en(28144);const nn=en(86476);const an=en(78012);const{invalidateStyleCache:rn}=en(86024);Pt.fetchStylesheet=(Wt,Pt)=>{const en=an.parseURL(Pt);return fetchStylesheetInternal(Wt,Pt,en)};Pt.removeStylesheet=(Wt,Pt)=>{const{styleSheets:en}=Pt._ownerDocument;en._remove(Wt);Pt.sheet=null;rn(Pt)};Pt.createStylesheet=(Wt,Pt,en)=>{let nn;try{nn=tn.parse(Wt)}catch(en){if(Pt._ownerDocument._defaultView){const en=new Error("Could not parse CSS stylesheet");en.detail=Wt;en.type="css parsing";Pt._ownerDocument._defaultView._virtualConsole.emit("jsdomError",en)}return}scanForImportRules(Pt,nn.cssRules,en);addStylesheet(nn,Pt)};function addStylesheet(Wt,Pt){Pt._ownerDocument.styleSheets._add(Wt);Pt.sheet=Wt;rn(Pt)}function fetchStylesheetInternal(Wt,en,tn){const an=Wt._ownerDocument;let rn=an._encoding;const In=an._resourceLoader;if(Wt.localName==="link"&&Wt.hasAttributeNS(null,"charset")){rn=nn.labelToName(Wt.getAttributeNS(null,"charset"))}function onStylesheetLoad(en){if(!Wt._attached){return}const an=nn.decode(en,rn);if(Wt.sheet){Pt.removeStylesheet(Wt.sheet,Wt)}Pt.createStylesheet(an,Wt,tn)}In.fetch(en,{element:Wt,onLoad:onStylesheetLoad})}function scanForImportRules(Wt,Pt,en){if(!Pt){return}for(let tn=0;tn{"use strict";function detach(Wt){if(typeof Wt==="string"){return}throw new TypeError(`jsdom internal error: detaching object of wrong type ${Wt}`)}Pt.detach=detach;function attach(Wt,Pt){if(typeof Wt==="string"){return}throw new TypeError(`jsdom internal error: attaching object of wrong type ${Wt}`)}Pt.attach=attach;function reserializeSpaceSeparatedTokens(Wt){return Wt.join(" ")}Pt.reserializeSpaceSeparatedTokens=reserializeSpaceSeparatedTokens;function reserializeCommaSeparatedTokens(Wt){return Wt.join(", ")}Pt.reserializeCommaSeparatedTokens=reserializeCommaSeparatedTokens},31296:(Wt,Pt,en)=>{"use strict";const{SVG_NS:tn}=en(98071);const nn=new Set(["clipPath","defs","desc","linearGradient","marker","mask","metadata","pattern","radialGradient","script","style","title","symbol"]);Pt.isRenderedElement=Wt=>{if(nn.has(Wt._localName)){return false}if(!Wt.isConnected){return false}if(Wt.parentElement&&Wt.parentElement._namespaceURI===tn&&!Pt.isRenderedElement(Wt.parentNode)){return false}return true}},29200:(Wt,Pt,en)=>{"use strict";const{domSymbolTree:tn}=en(38542);const{CDATA_SECTION_NODE:nn,TEXT_NODE:an}=en(7206);Pt.childTextContent=Wt=>{let Pt="";const en=tn.childrenIterator(Wt);for(const Wt of en){if(Wt.nodeType===an||Wt.nodeType===nn){Pt+=Wt.data}}return Pt}},83521:(Wt,Pt,en)=>{"use strict";const{domSymbolTree:tn}=en(38542);const{HTML_NS:nn}=en(98071);Pt.closest=(Wt,Pt,en=nn)=>{while(Wt){if(Wt.localName===Pt&&Wt.namespaceURI===en){return Wt}Wt=tn.parent(Wt)}return null};Pt.childrenByLocalName=(Wt,Pt,en=nn)=>tn.childrenToArray(Wt,{filter(Wt){return Wt._localName===Pt&&Wt._namespaceURI===en}});Pt.descendantsByLocalName=(Wt,Pt,en=nn)=>tn.treeToArray(Wt,{filter(tn){return tn._localName===Pt&&tn._namespaceURI===en&&tn!==Wt}});Pt.childrenByLocalNames=(Wt,Pt,en=nn)=>tn.childrenToArray(Wt,{filter(Wt){return Pt.has(Wt._localName)&&Wt._namespaceURI===en}});Pt.descendantsByLocalNames=(Wt,Pt,en=nn)=>tn.treeToArray(Wt,{filter(tn){return Pt.has(tn._localName)&&tn._namespaceURI===en&&tn!==Wt}});Pt.firstChildWithLocalName=(Wt,Pt,en=nn)=>{const an=tn.childrenIterator(Wt);for(const Wt of an){if(Wt._localName===Pt&&Wt._namespaceURI===en){return Wt}}return null};Pt.firstChildWithLocalNames=(Wt,Pt,en=nn)=>{const an=tn.childrenIterator(Wt);for(const Wt of an){if(Pt.has(Wt._localName)&&Wt._namespaceURI===en){return Wt}}return null};Pt.firstDescendantWithLocalName=(Wt,Pt,en=nn)=>{const an=tn.treeIterator(Wt);for(const Wt of an){if(Wt._localName===Pt&&Wt._namespaceURI===en){return Wt}}return null}},82748:(Wt,Pt,en)=>{"use strict";const tn=en(87878);const nn=en(16694);const{XML_NS:an,XMLNS_NS:rn}=en(98071);Pt.name=(Wt,Pt)=>{if(!tn.name(Pt)){throw nn.create(Wt,[`"${Pt}" did not match the Name production`,"InvalidCharacterError"])}};Pt.qname=(Wt,Pt)=>{if(!tn.qname(Pt)){throw nn.create(Wt,[`"${Pt}" did not match the QName production`,"InvalidCharacterError"])}};Pt.validateAndExtract=(Wt,en,tn)=>{if(en===""){en=null}Pt.qname(Wt,tn);let In=null;let sn=tn;const on=tn.indexOf(":");if(on!==-1){In=tn.substring(0,on);sn=tn.substring(on+1)}if(In!==null&&en===null){throw nn.create(Wt,["A namespace was given but a prefix was also extracted from the qualifiedName","NamespaceError"])}if(In==="xml"&&en!==an){throw nn.create(Wt,['A prefix of "xml" was given but the namespace was not the XML namespace',"NamespaceError"])}if((tn==="xmlns"||In==="xmlns")&&en!==rn){throw nn.create(Wt,['A prefix or qualifiedName of "xmlns" was given but the namespace was not the XMLNS namespace',"NamespaceError"])}if(en===rn&&tn!=="xmlns"&&In!=="xmlns"){throw nn.create(Wt,['The XMLNS namespace was given but neither the prefix nor qualifiedName was "xmlns"',"NamespaceError"])}return{namespace:en,prefix:In,localName:sn}}},4139:(Wt,Pt,en)=>{"use strict";const tn=en(92697).implementation;class PerformanceImpl extends tn{constructor(Wt,Pt,en){super(Wt,Pt,en);this.timeOrigin=en.timeOrigin;this._nowAtTimeOrigin=en.nowAtTimeOrigin}now(){return performance.now()-this._nowAtTimeOrigin}toJSON(){return{timeOrigin:this.timeOrigin}}}Pt.implementation=PerformanceImpl},96533:(Wt,Pt,en)=>{"use strict";const tn=en(56973);const nn=en(30060);const an={DOMException:en(16694),URL:en(74108).URL,URLSearchParams:en(74108).URLSearchParams,EventTarget:en(29122),NamedNodeMap:en(89762),Node:en(24171),Attr:en(17552),Element:en(41423),DocumentFragment:en(98938),DOMImplementation:en(26017),Document:en(18946),XMLDocument:en(63399),CharacterData:en(30052),Text:en(40196),CDATASection:en(37711),ProcessingInstruction:en(34786),Comment:en(22918),DocumentType:en(80842),NodeList:en(49747),RadioNodeList:en(9344),HTMLCollection:en(13506),HTMLOptionsCollection:en(71834),DOMStringMap:en(94258),DOMTokenList:en(24406),StyleSheetList:en(25911),HTMLElement:en(48708),HTMLHeadElement:en(51382),HTMLTitleElement:en(84584),HTMLBaseElement:en(65735),HTMLLinkElement:en(62928),HTMLMetaElement:en(62087),HTMLStyleElement:en(97737),HTMLBodyElement:en(83220),HTMLHeadingElement:en(39564),HTMLParagraphElement:en(31632),HTMLHRElement:en(11610),HTMLPreElement:en(19929),HTMLUListElement:en(55295),HTMLOListElement:en(72053),HTMLLIElement:en(80225),HTMLMenuElement:en(59877),HTMLDListElement:en(12334),HTMLDivElement:en(32567),HTMLAnchorElement:en(68403),HTMLAreaElement:en(13915),HTMLBRElement:en(29044),HTMLButtonElement:en(22544),HTMLCanvasElement:en(22312),HTMLDataElement:en(74452),HTMLDataListElement:en(89272),HTMLDetailsElement:en(88796),HTMLDialogElement:en(55328),HTMLDirectoryElement:en(69559),HTMLFieldSetElement:en(56092),HTMLFontElement:en(75431),HTMLFormElement:en(618),HTMLHtmlElement:en(40031),HTMLImageElement:en(32741),HTMLInputElement:en(18142),HTMLLabelElement:en(30124),HTMLLegendElement:en(49299),HTMLMapElement:en(11416),HTMLMarqueeElement:en(29062),HTMLMediaElement:en(1366),HTMLMeterElement:en(8805),HTMLModElement:en(18390),HTMLOptGroupElement:en(77988),HTMLOptionElement:en(37491),HTMLOutputElement:en(41035),HTMLPictureElement:en(58224),HTMLProgressElement:en(84049),HTMLQuoteElement:en(44106),HTMLScriptElement:en(52157),HTMLSelectElement:en(63996),HTMLSlotElement:en(89856),HTMLSourceElement:en(11863),HTMLSpanElement:en(33632),HTMLTableCaptionElement:en(41450),HTMLTableCellElement:en(43902),HTMLTableColElement:en(42986),HTMLTableElement:en(22810),HTMLTimeElement:en(67099),HTMLTableRowElement:en(60260),HTMLTableSectionElement:en(98506),HTMLTemplateElement:en(2894),HTMLTextAreaElement:en(40382),HTMLUnknownElement:en(76312),HTMLFrameElement:en(58713),HTMLFrameSetElement:en(83849),HTMLIFrameElement:en(58720),HTMLEmbedElement:en(28393),HTMLObjectElement:en(63149),HTMLParamElement:en(21325),HTMLVideoElement:en(10915),HTMLAudioElement:en(41952),HTMLTrackElement:en(74203),HTMLFormControlsCollection:en(59470),SVGElement:en(70321),SVGGraphicsElement:en(91398),SVGSVGElement:en(60787),SVGTitleElement:en(93815),SVGAnimatedString:en(5505),SVGNumber:en(35168),SVGStringList:en(48780),Event:en(94431),CloseEvent:en(54123),CustomEvent:en(73050),MessageEvent:en(74374),ErrorEvent:en(89045),HashChangeEvent:en(90863),PopStateEvent:en(38007),StorageEvent:en(38704),ProgressEvent:en(90442),PageTransitionEvent:en(21379),SubmitEvent:en(3823),UIEvent:en(38921),FocusEvent:en(32103),InputEvent:en(13979),MouseEvent:en(8002),KeyboardEvent:en(78628),TouchEvent:en(13246),CompositionEvent:en(2921),WheelEvent:en(18990),BarProp:en(21183),External:en(18516),Location:en(79972),History:en(81415),Screen:en(42235),Performance:en(7569),Navigator:en(60618),Crypto:en(19346),PluginArray:en(86599),MimeTypeArray:en(41086),Plugin:en(39168),MimeType:en(30199),FileReader:en(49962),Blob:en(42960),File:en(96689),FileList:en(12373),ValidityState:en(47180),DOMParser:en(93136),XMLSerializer:en(68174),FormData:en(48241),XMLHttpRequestEventTarget:en(5480),XMLHttpRequestUpload:en(58096),XMLHttpRequest:en(55137),WebSocket:en(2572),NodeFilter:en(7921),NodeIterator:en(71497),TreeWalker:en(77821),AbstractRange:en(77632),Range:en(60190),StaticRange:en(40096),Selection:en(1417),Storage:en(90778),CustomElementRegistry:en(46193),ElementInternals:en(1745),ShadowRoot:en(21283),MutationObserver:en(90314),MutationRecord:en(84761),Headers:en(16605),AbortController:en(92325),AbortSignal:en(78845),DOMRectReadOnly:en(59163),DOMRect:en(8469)};function install(Wt,Pt,en){Object.defineProperty(Wt,Pt,{configurable:true,writable:true,value:en})}Pt.installInterfaces=(Wt,Pt)=>{for(const en of Object.values(an)){en.install(Wt,Pt)}install(Wt,"HTMLDocument",Wt.Document);Object.setPrototypeOf(Wt.DOMException.prototype,Wt.Error.prototype);tn.addToCore(Wt);nn(Wt)};Pt.getInterfaceWrapper=Wt=>an[Wt]},26208:(Wt,Pt,en)=>{"use strict";const{wrapperForImpl:tn}=en(87094);let nn=0;class MutationObserverImpl{constructor(Wt,Pt){const[en]=Pt;this._callback=en;this._nodeList=[];this._recordQueue=[];this._id=++nn}observe(Wt,Pt){if(("attributeOldValue"in Pt||"attributeFilter"in Pt)&&!("attributes"in Pt)){Pt.attributes=true}if("characterDataOldValue"in Pt&!("characterData"in Pt)){Pt.characterData=true}if(!Pt.childList&&!Pt.attributes&&!Pt.characterData){throw new TypeError("The options object must set at least one of 'attributes', 'characterData', or 'childList' "+"to true.")}else if(Pt.attributeOldValue&&!Pt.attributes){throw new TypeError("The options object may only set 'attributeOldValue' to true when 'attributes' is true or "+"not present.")}else if("attributeFilter"in Pt&&!Pt.attributes){throw new TypeError("The options object may only set 'attributeFilter' when 'attributes' is true or not "+"present.")}else if(Pt.characterDataOldValue&&!Pt.characterData){throw new TypeError("The options object may only set 'characterDataOldValue' to true when 'characterData' is "+"true or not present.")}const en=Wt._registeredObserverList.find((Wt=>Wt.observer===this));if(en){for(const Wt of this._nodeList){Wt._registeredObserverList=Wt._registeredObserverList.filter((Wt=>Wt.source!==en))}en.options=Pt}else{Wt._registeredObserverList.push({observer:this,options:Pt});this._nodeList.push(Wt)}}disconnect(){for(const Wt of this._nodeList){Wt._registeredObserverList=Wt._registeredObserverList.filter((Wt=>Wt.observer!==this))}this._recordQueue=[]}takeRecords(){const Wt=this._recordQueue.map(tn);this._recordQueue=[];return Wt}}Wt.exports={implementation:MutationObserverImpl}},86637:(Wt,Pt,en)=>{"use strict";const tn=en(49747);class MutationRecordImpl{constructor(Wt,Pt,en){this._globalObject=Wt;this.type=en.type;this.target=en.target;this.previousSibling=en.previousSibling;this.nextSibling=en.nextSibling;this.attributeName=en.attributeName;this.attributeNamespace=en.attributeNamespace;this.oldValue=en.oldValue;this._addedNodes=en.addedNodes;this._removedNodes=en.removedNodes}get addedNodes(){return tn.createImpl(this._globalObject,[],{nodes:this._addedNodes})}get removedNodes(){return tn.createImpl(this._globalObject,[],{nodes:this._removedNodes})}}Wt.exports={implementation:MutationRecordImpl}},59397:(Wt,Pt,en)=>{"use strict";const tn=Object.prototype.hasOwnProperty;const nn=en(53515);const an=en(7206);const rn=en(13506);const{treeOrderSorter:In}=en(35702);const sn=en(87094);function isNamedPropertyElement(Wt){if("contentWindow"in Wt&&!tn.call(Wt,"contentWindow")){return true}switch(Wt.nodeName){case"A":case"AREA":case"EMBED":case"FORM":case"FRAMESET":case"IMG":case"OBJECT":return true;default:return false}}function namedPropertyResolver(Wt,Pt,en){function getResult(){const Wt=[];for(const tn of en().keys()){if(tn.nodeType!==an.ELEMENT_NODE){continue}if(tn.getAttributeNS(null,"id")===Pt){Wt.push(tn)}else if(tn.getAttributeNS(null,"name")===Pt&&isNamedPropertyElement(tn)){Wt.push(tn)}}Wt.sort(In);return Wt}const nn=Wt._document;const on=rn.create(Wt,[],{element:sn.implForWrapper(nn.documentElement),query:getResult});const{length:cn}=on;for(let Wt=0;Wt{"use strict";Pt.implementation=class MimeType{}},1233:(Wt,Pt,en)=>{"use strict";const tn=en(87094);Pt.implementation=class MimeTypeArray{get length(){return 0}item(){return null}namedItem(){return null}get[tn.supportedPropertyIndices](){return[]}}},76605:(Wt,Pt,en)=>{"use strict";const{mixin:tn}=en(35702);const nn=en(86599);const an=en(41086);const rn=en(47694).D;const In=en(36763).D;const sn=en(96128).D;const on=en(21306).D;const cn=en(61003).D;const dn=en(87626).D;class NavigatorImpl{constructor(Wt,Pt,en){this._globalObject=Wt;this.userAgent=en.userAgent;this.languages=Object.freeze(["en-US","en"]);this.plugins=nn.create(this._globalObject);this.mimeTypes=an.create(this._globalObject)}}tn(NavigatorImpl.prototype,rn.prototype);tn(NavigatorImpl.prototype,In.prototype);tn(NavigatorImpl.prototype,sn.prototype);tn(NavigatorImpl.prototype,on.prototype);tn(NavigatorImpl.prototype,cn.prototype);tn(NavigatorImpl.prototype,dn.prototype);Pt.implementation=NavigatorImpl},87626:(Wt,Pt,en)=>{"use strict";const tn=en(70857);Pt.D=class NavigatorConcurrentHardwareImpl{get hardwareConcurrency(){return tn.cpus().length}}},21306:(Wt,Pt)=>{"use strict";Pt.D=class NavigatorCookiesImpl{get cookieEnabled(){return true}}},47694:(Wt,Pt)=>{"use strict";Pt.D=class NavigatorIDImpl{get appCodeName(){return"Mozilla"}get appName(){return"Netscape"}get appVersion(){return"4.0"}get platform(){return""}get product(){return"Gecko"}get productSub(){return"20030107"}get vendor(){return"Apple Computer, Inc."}get vendorSub(){return""}}},36763:(Wt,Pt)=>{"use strict";Pt.D=class NavigatorLanguageImpl{get language(){return"en-US"}}},96128:(Wt,Pt)=>{"use strict";Pt.D=class NavigatorOnLineImpl{get onLine(){return true}}},61003:(Wt,Pt)=>{"use strict";Pt.D=class NavigatorPluginsImpl{javaEnabled(){return false}}},47447:(Wt,Pt)=>{"use strict";Pt.implementation=class Plugin{}},6514:(Wt,Pt,en)=>{"use strict";const tn=en(87094);Pt.implementation=class PluginArray{refresh(){}get length(){return 0}item(){return null}namedItem(){return null}get[tn.supportedPropertyIndices](){return[]}}},82759:Wt=>{"use strict";Wt.exports=Object.freeze({DOCUMENT_POSITION_DISCONNECTED:1,DOCUMENT_POSITION_PRECEDING:2,DOCUMENT_POSITION_FOLLOWING:4,DOCUMENT_POSITION_CONTAINS:8,DOCUMENT_POSITION_CONTAINED_BY:16,DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC:32})},7206:Wt=>{"use strict";Wt.exports=Object.freeze({ELEMENT_NODE:1,ATTRIBUTE_NODE:2,TEXT_NODE:3,CDATA_SECTION_NODE:4,ENTITY_REFERENCE_NODE:5,ENTITY_NODE:6,PROCESSING_INSTRUCTION_NODE:7,COMMENT_NODE:8,DOCUMENT_NODE:9,DOCUMENT_TYPE_NODE:10,DOCUMENT_FRAGMENT_NODE:11,NOTATION_NODE:12})},85621:(Wt,Pt,en)=>{"use strict";const{appendAttribute:tn}=en(69936);const nn=en(7206);const an=en(14295).parse;const{createElement:rn}=en(94202);const{HTML_NS:In,XMLNS_NS:sn}=en(98071);const{cloningSteps:on,domSymbolTree:cn}=en(38542);const{asciiCaseInsensitiveMatch:dn,asciiLowercase:un}=en(97205);const pn=en(13506);Pt.clone=(Wt,en,an)=>{if(en===undefined){en=Wt._ownerDocument}let In;switch(Wt.nodeType){case nn.DOCUMENT_NODE:In=Wt._cloneDocument();break;case nn.DOCUMENT_TYPE_NODE:In=en.implementation.createDocumentType(Wt.name,Wt.publicId,Wt.systemId);break;case nn.ELEMENT_NODE:In=rn(en,Wt._localName,Wt._namespaceURI,Wt._prefix,Wt._isValue,false);for(const nn of Wt._attributeList){tn(In,Pt.clone(nn,en))}break;case nn.ATTRIBUTE_NODE:In=en._createAttribute({namespace:Wt._namespace,namespacePrefix:Wt._namespacePrefix,localName:Wt._localName,value:Wt._value});break;case nn.TEXT_NODE:In=en.createTextNode(Wt._data);break;case nn.CDATA_SECTION_NODE:In=en.createCDATASection(Wt._data);break;case nn.COMMENT_NODE:In=en.createComment(Wt._data);break;case nn.PROCESSING_INSTRUCTION_NODE:In=en.createProcessingInstruction(Wt.target,Wt._data);break;case nn.DOCUMENT_FRAGMENT_NODE:In=en.createDocumentFragment();break}if(Wt[on]){Wt[on](In,Wt,en,an)}if(an){for(const tn of cn.childrenIterator(Wt)){const Wt=Pt.clone(tn,en,true);In._append(Wt)}}return In};Pt.listOfElementsWithClassNames=(Wt,Pt)=>{const en=an(Wt);if(en.size===0){return pn.createImpl(Pt._globalObject,[],{element:Pt,query:()=>[]})}return pn.createImpl(Pt._globalObject,[],{element:Pt,query:()=>{const Wt=Pt._ownerDocument.compatMode==="BackCompat";return cn.treeToArray(Pt,{filter(tn){if(tn.nodeType!==nn.ELEMENT_NODE||tn===Pt){return false}const{classList:an}=tn;if(Wt){for(const Wt of en){if(!an.tokenSet.some((Pt=>dn(Pt,Wt)))){return false}}}else{for(const Wt of en){if(!an.tokenSet.contains(Wt)){return false}}}return true}})}})};Pt.listOfElementsWithQualifiedName=(Wt,Pt)=>{if(Wt==="*"){return pn.createImpl(Pt._globalObject,[],{element:Pt,query:()=>cn.treeToArray(Pt,{filter:Wt=>Wt.nodeType===nn.ELEMENT_NODE&&Wt!==Pt})})}if(Pt._ownerDocument._parsingMode==="html"){const en=un(Wt);return pn.createImpl(Pt._globalObject,[],{element:Pt,query:()=>cn.treeToArray(Pt,{filter(tn){if(tn.nodeType!==nn.ELEMENT_NODE||tn===Pt){return false}if(tn._namespaceURI===In){return tn._qualifiedName===en}return tn._qualifiedName===Wt}})})}return pn.createImpl(Pt._globalObject,[],{element:Pt,query:()=>cn.treeToArray(Pt,{filter(en){if(en.nodeType!==nn.ELEMENT_NODE||en===Pt){return false}return en._qualifiedName===Wt}})})};Pt.listOfElementsWithNamespaceAndLocalName=(Wt,Pt,en)=>{if(Wt===""){Wt=null}if(Wt==="*"&&Pt==="*"){return pn.createImpl(en._globalObject,[],{element:en,query:()=>cn.treeToArray(en,{filter:Wt=>Wt.nodeType===nn.ELEMENT_NODE&&Wt!==en})})}if(Wt==="*"){return pn.createImpl(en._globalObject,[],{element:en,query:()=>cn.treeToArray(en,{filter(Wt){if(Wt.nodeType!==nn.ELEMENT_NODE||Wt===en){return false}return Wt._localName===Pt}})})}if(Pt==="*"){return pn.createImpl(en._globalObject,[],{element:en,query:()=>cn.treeToArray(en,{filter(Pt){if(Pt.nodeType!==nn.ELEMENT_NODE||Pt===en){return false}return Pt._namespaceURI===Wt}})})}return pn.createImpl(en._globalObject,[],{element:en,query:()=>cn.treeToArray(en,{filter(tn){if(tn.nodeType!==nn.ELEMENT_NODE||tn===en){return false}return tn._localName===Pt&&tn._namespaceURI===Wt}})})};Pt.convertNodesIntoNode=(Wt,Pt)=>{if(Pt.length===1){return typeof Pt[0]==="string"?Wt.createTextNode(Pt[0]):Pt[0]}const en=Wt.createDocumentFragment();for(let tn=0;tn{if(Wt._namespaceURI===en&&Wt._prefix!==null){return Wt._prefix}for(const Pt of Wt._attributeList){if(Pt._namespacePrefix==="xmlns"&&Pt._value===en){return Pt._localName}}if(Wt.parentElement!==null){return Pt.locateNamespacePrefix(Wt.parentElement,en)}return null};Pt.locateNamespace=(Wt,en)=>{switch(Wt.nodeType){case nn.ELEMENT_NODE:{if(Wt._namespaceURI!==null&&Wt._prefix===en){return Wt._namespaceURI}if(en===null){for(const Pt of Wt._attributeList){if(Pt._namespace===sn&&Pt._namespacePrefix===null&&Pt._localName==="xmlns"){return Pt._value!==""?Pt._value:null}}}else{for(const Pt of Wt._attributeList){if(Pt._namespace===sn&&Pt._namespacePrefix==="xmlns"&&Pt._localName===en){return Pt._value!==""?Pt._value:null}}}if(Wt.parentElement===null){return null}return Pt.locateNamespace(Wt.parentElement,en)}case nn.DOCUMENT_NODE:{if(Wt.documentElement===null){return null}return Pt.locateNamespace(Wt.documentElement,en)}case nn.DOCUMENT_TYPE_NODE:case nn.DOCUMENT_FRAGMENT_NODE:{return null}case nn.ATTRIBUTE_NODE:{if(Wt._element===null){return null}return Pt.locateNamespace(Wt._element,en)}default:{if(Wt.parentElement===null){return null}return Pt.locateNamespace(Wt.parentElement,en)}}}},40590:(Wt,Pt,en)=>{"use strict";const tn=en(4247).implementation;const nn=en(7206);class CDATASectionImpl extends tn{constructor(Wt,Pt,en){super(Wt,Pt,en);this.nodeType=nn.CDATA_SECTION_NODE}}Wt.exports={implementation:CDATASectionImpl}},62871:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const{mixin:nn}=en(35702);const an=en(52746).implementation;const rn=en(42048).implementation;const In=en(14918).implementation;const{TEXT_NODE:sn}=en(7206);const{MUTATION_TYPE:on,queueMutationRecord:cn}=en(69358);class CharacterDataImpl extends an{constructor(Wt,Pt,en){super(Wt,Pt,en);this._data=en.data}get data(){return this._data}set data(Wt){this.replaceData(0,this.length,Wt)}get length(){return this._data.length}substringData(Wt,Pt){const{length:en}=this;if(Wt>en){throw tn.create(this._globalObject,["The index is not in the allowed range.","IndexSizeError"])}if(Wt+Pt>en){return this._data.slice(Wt)}return this._data.slice(Wt,Wt+Pt)}appendData(Wt){this.replaceData(this.length,0,Wt)}insertData(Wt,Pt){this.replaceData(Wt,0,Pt)}deleteData(Wt,Pt){this.replaceData(Wt,Pt,"")}replaceData(Wt,Pt,en){const{length:nn}=this;if(Wt>nn){throw tn.create(this._globalObject,["The index is not in the allowed range.","IndexSizeError"])}if(Wt+Pt>nn){Pt=nn-Wt}cn(on.CHARACTER_DATA,this,null,null,this._data,[],[],null,null);const an=this._data.slice(0,Wt);const rn=this._data.slice(Wt+Pt);this._data=an+en+rn;for(const tn of this._referencedRanges){const{_start:nn,_end:an}=tn;if(nn.node===this&&nn.offset>Wt&&nn.offset<=Wt+Pt){tn._setLiveRangeStart(this,Wt)}if(an.node===this&&an.offset>Wt&&an.offset<=Wt+Pt){tn._setLiveRangeEnd(this,Wt)}if(nn.node===this&&nn.offset>Wt+Pt){tn._setLiveRangeStart(this,nn.offset+en.length-Pt)}if(an.node===this&&an.offset>Wt+Pt){tn._setLiveRangeEnd(this,an.offset+en.length-Pt)}}if(this.nodeType===sn&&this.parentNode){this.parentNode._childTextContentChangeSteps()}}}nn(CharacterDataImpl.prototype,In.prototype);nn(CharacterDataImpl.prototype,rn.prototype);Wt.exports={implementation:CharacterDataImpl}},42048:(Wt,Pt,en)=>{"use strict";const{convertNodesIntoNode:tn}=en(85621);class ChildNodeImpl{remove(){if(!this.parentNode){return}this.parentNode._remove(this)}after(...Wt){const Pt=this.parentNode;if(Pt){let en=this.nextSibling;let nn=en?Wt.indexOf(en):-1;while(nn!==-1){en=en.nextSibling;if(!en){break}nn=Wt.indexOf(en)}Pt._preInsert(tn(this._ownerDocument,Wt),en)}}before(...Wt){const Pt=this.parentNode;if(Pt){let en=this.previousSibling;let nn=en?Wt.indexOf(en):-1;while(nn!==-1){en=en.previousSibling;if(!en){break}nn=Wt.indexOf(en)}Pt._preInsert(tn(this._ownerDocument,Wt),en?en.nextSibling:Pt.firstChild)}}replaceWith(...Wt){const Pt=this.parentNode;if(Pt){let en=this.nextSibling;let nn=en?Wt.indexOf(en):-1;while(nn!==-1){en=en.nextSibling;if(!en){break}nn=Wt.indexOf(en)}const an=tn(this._ownerDocument,Wt);if(this.parentNode===Pt){Pt._replace(an,this)}else{Pt._preInsert(an,en)}}}}Wt.exports={implementation:ChildNodeImpl}},72773:(Wt,Pt,en)=>{"use strict";const tn=en(62871).implementation;const nn=en(87094);const an=en(7206);class CommentImpl extends tn{constructor(Wt,Pt,en){super(Wt,Pt,{data:Pt[0],ownerDocument:nn.implForWrapper(Wt._document),...en});this.nodeType=an.COMMENT_NODE}}Wt.exports={implementation:CommentImpl}},6423:(Wt,Pt,en)=>{"use strict";const tn=en(82748);const{HTML_NS:nn,SVG_NS:an}=en(98071);const{createElement:rn,internalCreateElementNSSteps:In}=en(94202);const sn=en(80842);const on=en(33111);class DOMImplementationImpl{constructor(Wt,Pt,en){this._globalObject=Wt;this._ownerDocument=en.ownerDocument}hasFeature(){return true}createDocumentType(Wt,Pt,en){tn.qname(this._globalObject,Wt);return sn.createImpl(this._globalObject,[],{ownerDocument:this._ownerDocument,name:Wt,publicId:Pt,systemId:en})}createDocument(Wt,Pt,en){let tn="application/xml";if(Wt===nn){tn="application/xhtml+xml"}else if(Wt===an){tn="image/svg+xml"}const rn=on.createImpl(this._globalObject,{contentType:tn,parsingMode:"xml",encoding:"UTF-8"});let sn=null;if(Pt!==""){sn=In(rn,Wt,Pt,{})}if(en!==null){rn.appendChild(en)}if(sn!==null){rn.appendChild(sn)}rn._origin=this._ownerDocument._origin;return rn}createHTMLDocument(Wt){const Pt=on.createImpl(this._globalObject,{parsingMode:"html",encoding:"UTF-8"});const en=sn.createImpl(this._globalObject,[],{ownerDocument:Pt,name:"html",publicId:"",systemId:""});Pt.appendChild(en);const tn=rn(Pt,"html",nn);Pt.appendChild(tn);const an=rn(Pt,"head",nn);tn.appendChild(an);if(Wt!==undefined){const en=rn(Pt,"title",nn);an.appendChild(en);en.appendChild(Pt.createTextNode(Wt))}const In=rn(Pt,"body",nn);tn.appendChild(In);return Pt}}Wt.exports={implementation:DOMImplementationImpl}},45073:(Wt,Pt,en)=>{"use strict";const tn=en(87094);const{setAttributeValue:nn,removeAttributeByName:an}=en(69936);const rn=en(82748).name;const In=en(16694);const sn=/^data-([^A-Z]*)$/;function attrCamelCase(Wt){return Wt.replace(/-([a-z])/g,((Wt,Pt)=>Pt.toUpperCase()))}function attrSnakeCase(Wt){return Wt.replace(/[A-Z]/g,(Wt=>`-${Wt.toLowerCase()}`))}Pt.implementation=class DOMStringMapImpl{constructor(Wt,Pt,en){this._globalObject=Wt;this._element=en.element}get[tn.supportedPropertyNames](){const Wt=new Set;const{attributes:Pt}=this._element;for(let en=0;en{"use strict";const tn=en(16694);const nn=en(14295);const{asciiLowercase:an}=en(97205);const rn=en(87094);const{getAttributeValue:In,setAttributeValue:sn,hasAttributeByName:on}=en(69936);function validateTokens(Wt,...Pt){for(const en of Pt){if(en===""){throw tn.create(Wt,["The token provided must not be empty.","SyntaxError"])}}for(const en of Pt){if(/[\t\n\f\r ]/.test(en)){throw tn.create(Wt,["The token provided contains HTML space characters, which are not valid in tokens.","InvalidCharacterError"])}}}class DOMTokenListImpl{constructor(Wt,Pt,en){this._globalObject=Wt;this._tokenSet=new nn;this._element=en.element;this._attributeLocalName=en.attributeLocalName;this._supportedTokens=en.supportedTokens;this._dirty=true}attrModified(){this._dirty=true}_syncWithElement(){if(!this._dirty){return}const Wt=In(this._element,this._attributeLocalName);if(Wt===null){this._tokenSet.empty()}else{this._tokenSet=nn.parse(Wt)}this._dirty=false}_validationSteps(Wt){if(!this._supportedTokens){throw new TypeError(`${this._attributeLocalName} attribute has no supported tokens`)}const Pt=an(Wt);return this._supportedTokens.has(Pt)}_updateSteps(){if(!on(this._element,this._attributeLocalName)&&this._tokenSet.isEmpty()){return}sn(this._element,this._attributeLocalName,this._tokenSet.serialize())}_serializeSteps(){return In(this._element,this._attributeLocalName)}get tokenSet(){this._syncWithElement();return this._tokenSet}get length(){this._syncWithElement();return this._tokenSet.size}get[rn.supportedPropertyIndices](){this._syncWithElement();return this._tokenSet.keys()}item(Wt){this._syncWithElement();if(Wt>=this._tokenSet.size){return null}return this._tokenSet.get(Wt)}contains(Wt){this._syncWithElement();return this._tokenSet.contains(Wt)}add(...Wt){for(const Pt of Wt){validateTokens(this._globalObject,Pt)}this._syncWithElement();for(const Pt of Wt){this._tokenSet.append(Pt)}this._updateSteps()}remove(...Wt){for(const Pt of Wt){validateTokens(this._globalObject,Pt)}this._syncWithElement();this._tokenSet.remove(...Wt);this._updateSteps()}toggle(Wt,Pt=undefined){validateTokens(this._globalObject,Wt);this._syncWithElement();if(this._tokenSet.contains(Wt)){if(Pt===undefined||Pt===false){this._tokenSet.remove(Wt);this._updateSteps();return false}return true}if(Pt===undefined||Pt===true){this._tokenSet.append(Wt);this._updateSteps();return true}return false}replace(Wt,Pt){validateTokens(this._globalObject,Wt,Pt);this._syncWithElement();if(!this._tokenSet.contains(Wt)){return false}this._tokenSet.replace(Wt,Pt);this._updateSteps();return true}supports(Wt){return this._validationSteps(Wt)}get value(){return this._serializeSteps()}set value(Wt){sn(this._element,this._attributeLocalName,Wt)}}Pt.implementation=DOMTokenListImpl},34641:(Wt,Pt,en)=>{"use strict";const{CookieJar:tn}=en(96684);const nn=en(52746).implementation;const an=en(87094);const rn=en(7206);const{mixin:In,memoizeQuery:sn}=en(35702);const{firstChildWithLocalName:on,firstChildWithLocalNames:cn,firstDescendantWithLocalName:dn}=en(83521);const un=en(78012);const pn=en(25911);const{domSymbolTree:mn}=en(38542);const bn=en(15676);const{asciiLowercase:Gn,stripAndCollapseASCIIWhitespace:hn}=en(97205);const{childTextContent:Zn}=en(29200);const{HTML_NS:An,SVG_NS:Wn}=en(98071);const Nn=en(16694);const{parseIntoDocument:gn}=en(13430);const yn=en(81415);const vn=en(79972);const Yn=en(13506);const En=en(49747);const Vn=en(82748).name;const{validateAndExtract:Rn}=en(82748);const{fireAnEvent:wn}=en(83350);const{shadowIncludingInclusiveDescendantsIterator:Fn}=en(60470);const{enqueueCECallbackReaction:Qn}=en(8348);const{createElement:fn,internalCreateElementNSSteps:Hn}=en(94202);const Cn=en(1807);const Xn=en(86882).implementation;const kn=en(27206).implementation;const Jn=en(70837).implementation;const Ln=en(18394).implementation;const{clone:Bn,listOfElementsWithQualifiedName:xn,listOfElementsWithNamespaceAndLocalName:On,listOfElementsWithClassNames:Tn}=en(85621);const Un=en(17552);const Mn=en(22918);const zn=en(34786);const Sn=en(37711);const jn=en(40196);const Dn=en(98938);const _n=en(26017);const Kn=en(77821);const Pn=en(71497);const qn=en(21283);const $n=en(60190);const el=en(33111);const tl=en(73050);const nl=en(89045);const ll=en(94431);const al=en(32103);const rl=en(90863);const Il=en(78628);const sl=en(74374);const ol=en(8002);const cl=en(38007);const il=en(90442);const dl=en(13246);const ul=en(38921);const pl=en(36577);const ml=en(76177);const bl=en(10406);const Gl=en(1846);function clearChildNodes(Wt){for(let Pt=mn.firstChild(Wt);Pt;Pt=mn.firstChild(Wt)){Wt.removeChild(Pt)}}function pad(Wt){if(Wt<10){return"0"+Wt}return Wt}function toLastModifiedString(Wt){return pad(Wt.getMonth()+1)+"/"+pad(Wt.getDate())+"/"+Wt.getFullYear()+" "+pad(Wt.getHours())+":"+pad(Wt.getMinutes())+":"+pad(Wt.getSeconds())}const hl={customevent:tl,errorevent:nl,event:ll,events:ll,focusevent:al,hashchangeevent:rl,htmlevents:ll,keyboardevent:Il,messageevent:sl,mouseevent:ol,mouseevents:ol,popstateevent:cl,progressevent:il,svgevents:ll,touchevent:dl,uievent:ul,uievents:ul};class DocumentImpl extends nn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._initGlobalEvents();this._ownerDocument=this;this.nodeType=rn.DOCUMENT_NODE;if(!en.options){en.options={}}if(!en.options.parsingMode){en.options.parsingMode="xml"}if(!en.options.encoding){en.options.encoding="UTF-8"}if(!en.options.contentType){en.options.contentType=en.options.parsingMode==="xml"?"application/xml":"text/html"}this._parsingMode=en.options.parsingMode;this._implementation=_n.createImpl(this._globalObject,[],{ownerDocument:this});this._defaultView=en.options.defaultView||null;this._global=en.options.global;this._ids=Object.create(null);this._attached=true;this._currentScript=null;this._pageShowingFlag=false;this._cookieJar=en.options.cookieJar;this._parseOptions=en.options.parseOptions||{};this._scriptingDisabled=en.options.scriptingDisabled;if(this._cookieJar===undefined){this._cookieJar=new tn(null,{looseMode:true})}if(this._scriptingDisabled){this._parseOptions.scriptingEnabled=false}this.contentType=en.options.contentType;this._encoding=en.options.encoding;const nn=en.options.url===undefined?"about:blank":en.options.url;const an=un.parseURL(nn);if(an===null){throw new TypeError(`Could not parse "${nn}" as a URL`)}this._URL=an;this._origin=nn==="about:blank"&&en.options.parentOrigin?en.options.parentOrigin:un.serializeURLOrigin(this._URL);this._location=vn.createImpl(this._globalObject,[],{relevantDocument:this});this._history=yn.createImpl(this._globalObject,[],{window:this._defaultView,document:this,actAsIfLocationReloadCalled:()=>this._location.reload()});this._workingNodeIterators=new Cn;this._referrer=en.options.referrer||"";this._lastModified=toLastModifiedString(en.options.lastModified||new Date);this._asyncQueue=new ml;this._queue=new bl({asyncQueue:this._asyncQueue,paused:false});this._deferQueue=new bl({paused:true});this._requestManager=new pl;this._currentDocumentReadiness=en.options.readyState||"loading";this._lastFocusedElement=null;this._resourceLoader=new Gl(this);this._latestEntry=null;this._throwOnDynamicMarkupInsertionCounter=0;this._styleCache=null}_getTheParent(Wt){if(Wt.type==="load"||!this._defaultView){return null}return an.implForWrapper(this._defaultView)}get compatMode(){return this._parsingMode==="xml"||this.doctype?"CSS1Compat":"BackCompat"}get charset(){return this._encoding}get characterSet(){return this._encoding}get inputEncoding(){return this._encoding}get doctype(){for(const Wt of mn.childrenIterator(this)){if(Wt.nodeType===rn.DOCUMENT_TYPE_NODE){return Wt}}return null}get URL(){return un.serializeURL(this._URL)}get documentURI(){return un.serializeURL(this._URL)}get location(){return this._defaultView?this._location:null}get documentElement(){for(const Wt of mn.childrenIterator(this)){if(Wt.nodeType===rn.ELEMENT_NODE){return Wt}}return null}get implementation(){return this._implementation}set implementation(Wt){this._implementation=Wt}get defaultView(){return this._defaultView}get currentScript(){return this._currentScript}get readyState(){return this._currentDocumentReadiness}set readyState(Wt){this._currentDocumentReadiness=Wt;wn("readystatechange",this)}hasFocus(){return Boolean(this._lastFocusedElement)}_descendantRemoved(Wt,Pt){if(Pt.tagName==="STYLE"){this.styleSheets._remove(Pt.sheet)}super._descendantRemoved(Wt,Pt)}write(...Wt){let Pt="";for(let en=0;en0){throw Nn.create(this._globalObject,["Cannot use document.write while a custom element upgrades","InvalidStateError"])}if(this._writeAfterElement){const Wt=this.createElement("div");Wt.innerHTML=Pt;let en=Wt.firstChild;let tn=this._writeAfterElement;const nn=this._writeAfterElement.parentNode;while(en){const Wt=en;en=en.nextSibling;Wt._isMovingDueToDocumentWrite=true;nn.insertBefore(Wt,tn.nextSibling);Wt._isMovingDueToDocumentWrite=false;tn=Wt}}else if(this.readyState==="loading"){if(this.lastChild){let Wt=this;while(Wt.lastChild&&Wt.lastChild.nodeType===rn.ELEMENT_NODE){Wt=Wt.lastChild}Wt.innerHTML=Pt}else{clearChildNodes(this);gn(Pt,this)}}else if(Pt){clearChildNodes(this);gn(Pt,this)}}writeln(...Wt){this.write(...Wt,"\n")}getElementById(Wt){if(!this._ids[Wt]){return null}const Pt=this._ids[Wt].find((Wt=>{let Pt=Wt;while(mn.parent(Pt)){Pt=mn.parent(Pt)}return Pt===this}));return Pt||null}get referrer(){return this._referrer||""}get lastModified(){return this._lastModified}get images(){return this.getElementsByTagName("IMG")}get embeds(){return this.getElementsByTagName("EMBED")}get plugins(){return this.embeds}get links(){return Yn.createImpl(this._globalObject,[],{element:this,query:()=>mn.treeToArray(this,{filter:Wt=>(Wt._localName==="a"||Wt._localName==="area")&&Wt.hasAttributeNS(null,"href")&&Wt._namespaceURI===An})})}get forms(){return this.getElementsByTagName("FORM")}get scripts(){return this.getElementsByTagName("SCRIPT")}get anchors(){return Yn.createImpl(this._globalObject,[],{element:this,query:()=>mn.treeToArray(this,{filter:Wt=>Wt._localName==="a"&&Wt.hasAttributeNS(null,"name")&&Wt._namespaceURI===An})})}get applets(){return Yn.createImpl(this._globalObject,[],{element:this,query:()=>[]})}open(){let Wt=mn.firstChild(this);while(Wt){this.removeChild(Wt);Wt=mn.firstChild(this)}this._modified();return this}close(Wt){if(Wt){this.readyState="complete";wn("DOMContentLoaded",this,undefined,{bubbles:true});wn("load",this);return}this._queue.resume();const Pt=Promise.resolve();const onDOMContentLoad=()=>{const Wt=this;function dispatchEvent(){Wt.readyState="interactive";wn("DOMContentLoaded",Wt,undefined,{bubbles:true})}return new Promise((Wt=>{if(!this._deferQueue.tail){dispatchEvent();Wt();return}this._deferQueue.setListener((()=>{dispatchEvent();Wt()}));this._deferQueue.resume()}))};const onLoad=()=>{const Wt=this;function dispatchEvent(){Wt.readyState="complete";wn("load",Wt)}return new Promise((Wt=>{if(this._asyncQueue.count()===0){dispatchEvent();Wt();return}this._asyncQueue.setListener((()=>{dispatchEvent();Wt()}))}))};this._queue.push(Pt,onDOMContentLoad,null);this._queue.push(Pt,onLoad,null,true)}getElementsByName(Wt){return En.createImpl(this._globalObject,[],{element:this,query:()=>mn.treeToArray(this,{filter:Pt=>Pt.getAttributeNS&&Pt.getAttributeNS(null,"name")===Wt})})}get title(){const{documentElement:Wt}=this;let Pt="";if(Wt&&Wt._localName==="svg"){const en=on(Wt,"title",Wn);if(en){Pt=Zn(en)}}else{const Wt=dn(this,"title");if(Wt){Pt=Zn(Wt)}}Pt=hn(Pt);return Pt}set title(Wt){const{documentElement:Pt}=this;let en;if(Pt&&Pt._localName==="svg"){en=on(Pt,"title",Wn);if(!en){en=this.createElementNS(Wn,"title");this._insert(en,Pt.firstChild)}en.textContent=Wt}else if(Pt&&Pt._namespaceURI===An){const Pt=dn(this,"title");const tn=this.head;if(Pt===null&&tn===null){return}if(Pt!==null){en=Pt}else{en=this.createElement("title");tn._append(en)}en.textContent=Wt}}get dir(){return this.documentElement?this.documentElement.dir:""}set dir(Wt){if(this.documentElement){this.documentElement.dir=Wt}}get head(){return this.documentElement?on(this.documentElement,"head"):null}get body(){const{documentElement:Wt}=this;if(!Wt||Wt._localName!=="html"||Wt._namespaceURI!==An){return null}return cn(this.documentElement,new Set(["body","frameset"]))}set body(Wt){if(Wt===null||Wt._namespaceURI!==An||Wt._localName!=="body"&&Wt._localName!=="frameset"){throw Nn.create(this._globalObject,["Cannot set the body to null or a non-body/frameset element","HierarchyRequestError"])}const Pt=this.body;if(Wt===Pt){return}if(Pt!==null){Pt.parentNode._replace(Wt,Pt);return}const{documentElement:en}=this;if(en===null){throw Nn.create(this._globalObject,["Cannot set the body when there is no document element","HierarchyRequestError"])}en._append(Wt)}_runPreRemovingSteps(Wt){if(Wt===this.activeElement){this._lastFocusedElement=this.body}for(const Pt of this._workingNodeIterators){Pt._preRemovingSteps(Wt)}}createEvent(Wt){const Pt=Wt.toLowerCase();const en=hl[Pt]||null;if(!en){throw Nn.create(this._globalObject,['The provided event type ("'+Wt+'") is invalid',"NotSupportedError"])}const tn=en.createImpl(this._globalObject,[""]);tn._initializedFlag=false;return tn}createRange(){return $n.createImpl(this._globalObject,[],{start:{node:this,offset:0},end:{node:this,offset:0}})}createProcessingInstruction(Wt,Pt){Vn(this._globalObject,Wt);if(Pt.includes("?>")){throw Nn.create(this._globalObject,['Processing instruction data cannot contain the string "?>"',"InvalidCharacterError"])}return zn.createImpl(this._globalObject,[],{ownerDocument:this,target:Wt,data:Pt})}createCDATASection(Wt){if(this._parsingMode==="html"){throw Nn.create(this._globalObject,["Cannot create CDATA sections in HTML documents","NotSupportedError"])}if(Wt.includes("]]>")){throw Nn.create(this._globalObject,['CDATA section data cannot contain the string "]]>"',"InvalidCharacterError"])}return Sn.createImpl(this._globalObject,[],{ownerDocument:this,data:Wt})}createTextNode(Wt){return jn.createImpl(this._globalObject,[],{ownerDocument:this,data:Wt})}createComment(Wt){return Mn.createImpl(this._globalObject,[],{ownerDocument:this,data:Wt})}createElement(Wt,Pt){Vn(this._globalObject,Wt);if(this._parsingMode==="html"){Wt=Gn(Wt)}let en=null;if(Pt&&Pt.is!==undefined){en=Pt.is}const tn=this._parsingMode==="html"||this.contentType==="application/xhtml+xml"?An:null;return fn(this,Wt,tn,null,en,true)}createElementNS(Wt,Pt,en){return Hn(this,Wt,Pt,en)}createDocumentFragment(){return Dn.createImpl(this._globalObject,[],{ownerDocument:this})}createAttribute(Wt){Vn(this._globalObject,Wt);if(this._parsingMode==="html"){Wt=Gn(Wt)}return this._createAttribute({localName:Wt})}createAttributeNS(Wt,Pt){if(Wt===undefined){Wt=null}Wt=Wt!==null?String(Wt):Wt;const en=Rn(this._globalObject,Wt,Pt);return this._createAttribute({namespace:en.namespace,namespacePrefix:en.prefix,localName:en.localName})}_createAttribute({localName:Wt,value:Pt,namespace:en,namespacePrefix:tn}){return Un.createImpl(this._globalObject,[],{localName:Wt,value:Pt,namespace:en,namespacePrefix:tn,ownerDocument:this})}createTreeWalker(Wt,Pt,en){return Kn.createImpl(this._globalObject,[],{root:Wt,whatToShow:Pt,filter:en})}createNodeIterator(Wt,Pt,en){const tn=Pn.createImpl(this._globalObject,[],{root:Wt,whatToShow:Pt,filter:en});this._workingNodeIterators.add(tn);return tn}importNode(Wt,Pt){if(Wt.nodeType===rn.DOCUMENT_NODE){throw Nn.create(this._globalObject,["Cannot import a document node","NotSupportedError"])}else if(qn.isImpl(Wt)){throw Nn.create(this._globalObject,["Cannot adopt a shadow root","NotSupportedError"])}return Bn(Wt,this,Pt)}adoptNode(Wt){if(Wt.nodeType===rn.DOCUMENT_NODE){throw Nn.create(this._globalObject,["Cannot adopt a document node","NotSupportedError"])}else if(qn.isImpl(Wt)){throw Nn.create(this._globalObject,["Cannot adopt a shadow root","HierarchyRequestError"])}this._adoptNode(Wt);return Wt}_adoptNode(Wt){const Pt=this;const en=Wt._ownerDocument;const tn=mn.parent(Wt);if(tn){tn._remove(Wt)}if(en!==Pt){for(const en of Fn(Wt)){en._ownerDocument=Pt}for(const tn of Fn(Wt)){if(tn._ceState==="custom"){Qn(tn,"adoptedCallback",[an.wrapperForImpl(en),an.wrapperForImpl(Pt)])}}for(const Pt of Fn(Wt)){if(Pt._adoptingSteps){Pt._adoptingSteps(en)}}}}get cookie(){return this._cookieJar.getCookieStringSync(this.URL,{http:false})}set cookie(Wt){Wt=String(Wt);this._cookieJar.setCookieSync(Wt,this.URL,{http:false,ignoreError:true})}clear(){}captureEvents(){}releaseEvents(){}get styleSheets(){if(!this._styleSheets){this._styleSheets=pn.createImpl(this._globalObject)}return this._styleSheets}get hidden(){if(this._defaultView&&this._defaultView._pretendToBeVisual){return false}return true}get visibilityState(){if(this._defaultView&&this._defaultView._pretendToBeVisual){return"visible"}return"prerender"}getSelection(){return this._defaultView?this._defaultView._selection:null}_cloneDocument(){const Wt=el.createImpl(this._globalObject,{contentType:this.contentType,encoding:this._encoding,parsingMode:this._parsingMode});Wt._URL=this._URL;Wt._origin=this._origin;return Wt}}bn.createEventAccessor(DocumentImpl.prototype,"readystatechange");In(DocumentImpl.prototype,Xn.prototype);In(DocumentImpl.prototype,kn.prototype);In(DocumentImpl.prototype,Jn.prototype);In(DocumentImpl.prototype,Ln.prototype);DocumentImpl.prototype.getElementsByTagName=sn((function(Wt){return xn(Wt,this)}));DocumentImpl.prototype.getElementsByTagNameNS=sn((function(Wt,Pt){return On(Wt,Pt,this)}));DocumentImpl.prototype.getElementsByClassName=sn((function getElementsByClassName(Wt){return Tn(Wt,this)}));Wt.exports={implementation:DocumentImpl}},98089:(Wt,Pt,en)=>{"use strict";const{mixin:tn}=en(35702);const{domSymbolTree:nn}=en(38542);const an=en(7206);const rn=en(52746).implementation;const In=en(70837).implementation;const sn=en(18394).implementation;const on=en(87094);class DocumentFragmentImpl extends rn{constructor(Wt,Pt,en){super(Wt,Pt,{ownerDocument:on.implForWrapper(Wt._document),...en});const{host:tn}=en;this._host=tn;this.nodeType=an.DOCUMENT_FRAGMENT_NODE}getElementById(Wt){if(Wt===""){return null}for(const Pt of nn.treeIterator(this)){if(Pt.nodeType===an.ELEMENT_NODE&&Pt.getAttributeNS(null,"id")===Wt){return Pt}}return null}}tn(DocumentFragmentImpl.prototype,In.prototype);tn(DocumentFragmentImpl.prototype,sn.prototype);Wt.exports={implementation:DocumentFragmentImpl}},86882:(Wt,Pt,en)=>{"use strict";const tn=en(7206);const{nodeRoot:nn}=en(39471);const{retarget:an}=en(60470);class DocumentOrShadowRootImpl{get activeElement(){let Wt=this._ownerDocument._lastFocusedElement||this._ownerDocument.body;if(!Wt){return null}Wt=an(Wt,this);if(nn(Wt)!==this){return null}if(Wt.nodeType!==tn.DOCUMENT_NODE){return Wt}if(Wt.body!==null){return Wt.body}return Wt.documentElement}}Wt.exports={implementation:DocumentOrShadowRootImpl}},83017:(Wt,Pt,en)=>{"use strict";const{mixin:tn}=en(35702);const nn=en(52746).implementation;const an=en(42048).implementation;const rn=en(7206);class DocumentTypeImpl extends nn{constructor(Wt,Pt,en){super(Wt,Pt,en);this.nodeType=rn.DOCUMENT_TYPE_NODE;this.name=en.name;this.publicId=en.publicId;this.systemId=en.systemId}}tn(DocumentTypeImpl.prototype,an.prototype);Wt.exports={implementation:DocumentTypeImpl}},54782:(Wt,Pt,en)=>{"use strict";const{addNwsapi:tn}=en(561);const{HTML_NS:nn}=en(98071);const{mixin:an,memoizeQuery:rn}=en(35702);const In=en(87094);const sn=en(52746).implementation;const on=en(18394).implementation;const cn=en(42048).implementation;const dn=en(69936);const un=en(59397);const pn=en(7206);const{parseFragment:mn}=en(13430);const bn=en(97066).D;const{fragmentSerialization:Gn}=en(49446);const{domSymbolTree:hn}=en(38542);const Zn=en(16694);const An=en(24406);const Wn=en(89762);const Nn=en(82748);const{asciiLowercase:gn,asciiUppercase:yn}=en(97205);const{listOfElementsWithQualifiedName:vn,listOfElementsWithNamespaceAndLocalName:Yn,listOfElementsWithClassNames:En}=en(85621);const Vn=en(72498).implementation;const Rn=en(14918).implementation;const wn=en(21283);const Fn=en(40196);const{isValidHostElementName:Qn}=en(60470);const{isValidCustomElementName:fn,lookupCEDefinition:Hn}=en(8348);function attachId(Wt,Pt,en){if(Wt&&Pt&&en){if(!en._ids[Wt]){en._ids[Wt]=[]}en._ids[Wt].push(Pt)}}function detachId(Wt,Pt,en){if(Wt&&Pt&&en){if(en._ids&&en._ids[Wt]){const tn=en._ids[Wt];for(let Wt=0;Wt{"use strict";const tn=en(99712);class ElementCSSInlineStyle{_initElementCSSInlineStyle(){this._settingCssText=false;this._style=new tn.CSSStyleDeclaration((Wt=>{if(!this._settingCssText){this._settingCssText=true;this.setAttributeNS(null,"style",Wt);this._settingCssText=false}}))}get style(){return this._style}}Wt.exports={implementation:ElementCSSInlineStyle}},27206:(Wt,Pt,en)=>{"use strict";const{appendHandler:tn,createEventAccessor:nn}=en(15676);const an=new Set(["abort","auxclick","beforeinput","beforematch","beforetoggle","blur","cancel","canplay","canplaythrough","change","click","close","contextlost","contextmenu","contextrestored","copy","cuechange","cut","dblclick","drag","dragend","dragenter","dragleave","dragover","dragstart","drop","durationchange","emptied","ended","error","focus","formdata","input","invalid","keydown","keypress","keyup","load","loadeddata","loadedmetadata","loadstart","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","paste","pause","play","playing","progress","ratechange","reset","resize","scroll","scrollend","securitypolicyviolation","seeked","seeking","select","slotchange","stalled","submit","suspend","timeupdate","toggle","volumechange","waiting","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend","wheel","touchstart","touchend","touchmove","touchcancel"]);class GlobalEventHandlersImpl{_initGlobalEvents(){this._registeredHandlers=new Set;this._eventHandlers=Object.create(null)}_getEventHandlerTarget(){return this}_getEventHandlerFor(Wt){const Pt=this._getEventHandlerTarget(Wt);if(!Pt){return null}return Pt._eventHandlers[Wt]}_setEventHandlerFor(Wt,Pt){const en=this._getEventHandlerTarget(Wt);if(!en){return}if(!en._registeredHandlers.has(Wt)&&Pt!==null){en._registeredHandlers.add(Wt);tn(en,Wt)}en._eventHandlers[Wt]=Pt}_globalEventChanged(Wt){const Pt="on"+Wt;if(!(Pt in this)){return}const en="_runScripts"in this?this._runScripts:(this._ownerDocument._defaultView||{})._runScripts;if(en!=="dangerously"){return}const tn=this.getAttributeNS(null,Pt);const nn=tn===null?null:{body:tn};this._setEventHandlerFor(Wt,nn)}}for(const Wt of an){nn(GlobalEventHandlersImpl.prototype,Wt)}Wt.exports={implementation:GlobalEventHandlersImpl}},49786:(Wt,Pt,en)=>{"use strict";const{mixin:tn}=en(35702);const nn=en(24406);const an=en(95927).implementation;const rn=en(18590).D;class HTMLAnchorElementImpl extends an{constructor(Wt,Pt,en){super(Wt,Pt,en);this._htmlHyperlinkElementUtilsSetup();this._hasActivationBehavior=true}_activationBehavior(){this._followAHyperlink()}get relList(){if(this._relList===undefined){this._relList=nn.createImpl(this._globalObject,[],{element:this,attributeLocalName:"rel"})}return this._relList}get text(){return this.textContent}set text(Wt){this.textContent=Wt}_attrModified(Wt,Pt,en){super._attrModified(Wt,Pt,en);if(Wt==="rel"&&this._relList!==undefined){this._relList.attrModified()}}}tn(HTMLAnchorElementImpl.prototype,rn.prototype);Wt.exports={implementation:HTMLAnchorElementImpl}},35962:(Wt,Pt,en)=>{"use strict";const{mixin:tn}=en(35702);const nn=en(24406);const an=en(95927).implementation;const rn=en(18590).D;class HTMLAreaElementImpl extends an{constructor(Wt,Pt,en){super(Wt,Pt,en);this._htmlHyperlinkElementUtilsSetup();this._hasActivationBehavior=true}_activationBehavior(){this._followAHyperlink()}get relList(){if(this._relList===undefined){this._relList=nn.createImpl(this._globalObject,[],{element:this,attributeLocalName:"rel"})}return this._relList}_attrModified(Wt,Pt,en){super._attrModified(Wt,Pt,en);if(Wt==="rel"&&this._relList!==undefined){this._relList.attrModified()}}}tn(HTMLAreaElementImpl.prototype,rn.prototype);Wt.exports={implementation:HTMLAreaElementImpl}},98867:(Wt,Pt,en)=>{"use strict";const tn=en(4229).implementation;class HTMLAudioElementImpl extends tn{}Wt.exports={implementation:HTMLAudioElementImpl}},64775:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLBRElementImpl extends tn{}Wt.exports={implementation:HTMLBRElementImpl}},99254:(Wt,Pt,en)=>{"use strict";const tn=en(78012);const nn=en(95927).implementation;const{fallbackBaseURL:an}=en(30962);class HTMLBaseElementImpl extends nn{get href(){const Wt=this._ownerDocument;const Pt=this.hasAttributeNS(null,"href")?this.getAttributeNS(null,"href"):"";const en=tn.parseURL(Pt,{baseURL:an(Wt)});if(en===null){return Pt}return tn.serializeURL(en)}set href(Wt){this.setAttributeNS(null,"href",Wt)}}Wt.exports={implementation:HTMLBaseElementImpl}},57063:(Wt,Pt,en)=>{"use strict";const{mixin:tn}=en(35702);const nn=en(95927).implementation;const an=en(64473).implementation;class HTMLBodyElementImpl extends nn{constructor(...Wt){super(...Wt);this._proxyWindowEventsToWindow()}}tn(HTMLBodyElementImpl.prototype,an.prototype);Wt.exports={implementation:HTMLBodyElementImpl}},3403:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;const nn=en(95449).D;const{mixin:an}=en(35702);const{isDisabled:rn,formOwner:In,getLabelsForLabelable:sn}=en(10588);const{asciiLowercase:on}=en(97205);class HTMLButtonElementImpl extends tn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._customValidityErrorMessage="";this._labels=null;this._hasActivationBehavior=true}_activationBehavior(){const{form:Wt}=this;if(Wt&&!rn(this)){if(this.type==="submit"){Wt._doRequestSubmit(this)}if(this.type==="reset"){Wt._doReset()}}}_getValue(){const Wt=this.getAttributeNS(null,"value");return Wt===null?"":Wt}get labels(){return sn(this)}get form(){return In(this)}get type(){const Wt=on(this.getAttributeNS(null,"type")||"");switch(Wt){case"submit":case"reset":case"button":return Wt;default:return"submit"}}set type(Wt){Wt=on(String(Wt));switch(Wt){case"submit":case"reset":case"button":this.setAttributeNS(null,"type",Wt);break;default:this.setAttributeNS(null,"type","submit");break}}_barredFromConstraintValidationSpecialization(){return this.type==="reset"||this.type==="button"}}an(HTMLButtonElementImpl.prototype,nn.prototype);Wt.exports={implementation:HTMLButtonElementImpl}},64379:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;const nn=en(8172);const an=en(87094);const{Canvas:rn}=en(35702);class HTMLCanvasElementImpl extends tn{_attrModified(Wt,Pt,en){if(this._canvas&&(Wt==="width"||Wt==="height")){this._canvas[Wt]=parseInt(Pt)}super._attrModified(Wt,Pt,en)}_getCanvas(){if(rn&&!this._canvas){this._canvas=rn.createCanvas(this.width,this.height)}return this._canvas}getContext(Wt){const Pt=this._getCanvas();if(Pt){if(!this._context){this._context=Pt.getContext(Wt)||null;if(this._context){this._context.canvas=an.wrapperForImpl(this);wrapNodeCanvasMethod(this._context,"createPattern");wrapNodeCanvasMethod(this._context,"drawImage")}}return this._context}nn("HTMLCanvasElement.prototype.getContext (without installing the canvas npm package)",this._ownerDocument._defaultView);return null}toDataURL(...Wt){const Pt=this._getCanvas();if(Pt){return Pt.toDataURL(...Wt)}nn("HTMLCanvasElement.prototype.toDataURL (without installing the canvas npm package)",this._ownerDocument._defaultView);return null}toBlob(Wt,Pt,en){const tn=this._ownerDocument._defaultView;const an=this._getCanvas();if(an){const nn={};switch(Pt){case"image/jpg":case"image/jpeg":Pt="image/jpeg";nn.quality=en;break;default:Pt="image/png"}an.toBuffer(((en,nn)=>{if(en){throw en}Wt(new tn.Blob([nn],{type:Pt}))}),Pt,nn)}else{nn("HTMLCanvasElement.prototype.toBlob (without installing the canvas npm package)",tn)}}get width(){const Wt=parseInt(this.getAttributeNS(null,"width"));return isNaN(Wt)||Wt<0||Wt>2147483647?300:Wt}set width(Wt){Wt=Wt>2147483647?300:Wt;this.setAttributeNS(null,"width",String(Wt))}get height(){const Wt=parseInt(this.getAttributeNS(null,"height"));return isNaN(Wt)||Wt<0||Wt>2147483647?150:Wt}set height(Wt){Wt=Wt>2147483647?150:Wt;this.setAttributeNS(null,"height",String(Wt))}}function wrapNodeCanvasMethod(Wt,Pt){const en=Wt[Pt];Wt[Pt]=function(Pt,...tn){const nn=an.implForWrapper(Pt);if(nn){if(nn instanceof HTMLCanvasElementImpl&&!nn._canvas){nn._getCanvas()}Pt=nn._image||nn._canvas}return en.call(Wt,Pt,...tn)}}Wt.exports={implementation:HTMLCanvasElementImpl}},76041:(Wt,Pt,en)=>{"use strict";const tn=en(87094);const{HTML_NS:nn}=en(98071);Pt.implementation=class HTMLCollectionImpl{constructor(Wt,Pt,en){this._list=[];this._version=-1;this._element=en.element;this._query=en.query;this._globalObject=Wt;this._update()}get length(){this._update();return this._list.length}item(Wt){this._update();return this._list[Wt]||null}namedItem(Wt){if(Wt===""){return null}this._update();for(const Pt of this._list){if(Pt.getAttributeNS(null,"id")===Wt){return Pt}if(Pt._namespaceURI===nn){const en=Pt.getAttributeNS(null,"name");if(en===Wt){return Pt}}}return null}_update(){if(this._version{"use strict";const tn=en(95927).implementation;class HTMLDListElementImpl extends tn{}Wt.exports={implementation:HTMLDListElementImpl}},2615:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLDataElementImpl extends tn{}Wt.exports={implementation:HTMLDataElementImpl}},31483:(Wt,Pt,en)=>{"use strict";const tn=en(13506);const nn=en(95927).implementation;const{descendantsByLocalName:an}=en(83521);class HTMLDataListElementImpl extends nn{get options(){return tn.createImpl(this._globalObject,[],{element:this,query:()=>an(this,"option")})}}Wt.exports={implementation:HTMLDataListElementImpl}},19175:(Wt,Pt,en)=>{"use strict";const{fireAnEvent:tn}=en(83350);const nn=en(95927).implementation;class HTMLDetailsElementImpl extends nn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._taskQueue=null}_dispatchToggleEvent(){this._taskQueue=null;tn("toggle",this)}_attrModified(Wt,Pt,en){super._attrModified(Wt,Pt,en);if(Wt==="open"&&this._taskQueue===null){if(Pt!==en&&Pt!==null&&en===null||Pt===null&&en!==null){this._taskQueue=setTimeout(this._dispatchToggleEvent.bind(this),0)}}}}Wt.exports={implementation:HTMLDetailsElementImpl}},96563:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLDialogElementImpl extends tn{}Wt.exports={implementation:HTMLDialogElementImpl}},69158:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLDirectoryElementImpl extends tn{}Wt.exports={implementation:HTMLDirectoryElementImpl}},93702:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLDivElementImpl extends tn{}Wt.exports={implementation:HTMLDivElementImpl}},95927:(Wt,Pt,en)=>{"use strict";const{mixin:tn}=en(35702);const nn=en(54782).implementation;const an=en(16694);const rn=en(8002);const In=en(1745);const sn=en(16819).implementation;const on=en(27206).implementation;const cn=en(67712).D;const{firstChildWithLocalName:dn}=en(83521);const{isDisabled:un}=en(10588);const{fireAnEvent:pn}=en(83350);const{asciiLowercase:mn}=en(97205);const{lookupCEDefinition:bn}=en(8348);class HTMLElementImpl extends nn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._initHTMLOrSVGElement();this._initElementCSSInlineStyle();this._initGlobalEvents();this._clickInProgress=false;this._hasActivationBehavior=this._localName==="summary";this._attachedInternals=null}_activationBehavior(){const Wt=this.parentNode;if(Wt&&Wt._localName==="details"&&this===dn(Wt,"summary")){if(Wt.hasAttributeNS(null,"open")){Wt.removeAttributeNS(null,"open")}else{Wt.setAttributeNS(null,"open","")}}}get translate(){const Wt=this.getAttributeNS(null,"translate");const Pt=mn(Wt||"");if(Pt==="yes"||Wt&&Pt===""){return true}else if(Pt==="no"){return false}if(this===this.ownerDocument.documentElement){return true}return this.parentElement&&this.parentElement.translate}set translate(Wt){if(Wt===true){this.setAttributeNS(null,"translate","yes")}else{this.setAttributeNS(null,"translate","no")}}click(){if(un(this)){return}if(this._clickInProgress){return}this._clickInProgress=true;pn("click",this,rn,{bubbles:true,cancelable:true,composed:true,isTrusted:false,view:this.ownerDocument.defaultView});this._clickInProgress=false}get draggable(){const Wt=mn(this.getAttributeNS(null,"draggable")||"");if(Wt==="true"){return true}else if(Wt==="false"){return false}return this._localName==="img"||this._localName==="a"&&this.hasAttributeNS(null,"href")}set draggable(Wt){this.setAttributeNS(null,"draggable",String(Wt))}get dir(){let Wt=this.getAttributeNS(null,"dir");if(Wt!==null){Wt=Wt.toLowerCase();if(["ltr","rtl","auto"].includes(Wt)){return Wt}}return""}set dir(Wt){this.setAttributeNS(null,"dir",Wt)}attachInternals(){if(this._isValue!==null){throw an.create(this._globalObject,["Unable to attach ElementInternals to a customized built-in element.","NotSupportedError"])}const Wt=bn(this._ownerDocument,this._namespaceURI,this._localName,null);if(Wt===null){throw an.create(this._globalObject,["Unable to attach ElementInternals to non-custom elements.","NotSupportedError"])}if(Wt.disableInternals===true){throw an.create(this._globalObject,["ElementInternals is disabled by disabledFeature static field.","NotSupportedError"])}if(this._attachedInternals!==null){throw an.create(this._globalObject,["ElementInternals for the specified element was already attached.","NotSupportedError"])}if(this._ceState!=="precustomized"&&this._ceState!=="custom"){throw an.create(this._globalObject,["The attachInternals() function cannot be called prior to the execution of the custom element constructor.","NotSupportedError"])}this._attachedInternals=In.createImpl(this._globalObject,[],{targetElement:this});return this._attachedInternals}_attrModified(Wt,Pt,en){if(Wt==="style"&&Pt!==en&&!this._settingCssText){this._settingCssText=true;this._style.cssText=Pt;this._settingCssText=false}else if(Wt.startsWith("on")){this._globalEventChanged(Wt.substring(2))}super._attrModified(Wt,Pt,en)}get offsetParent(){return null}get offsetTop(){return 0}get offsetLeft(){return 0}get offsetWidth(){return 0}get offsetHeight(){return 0}}tn(HTMLElementImpl.prototype,sn.prototype);tn(HTMLElementImpl.prototype,on.prototype);tn(HTMLElementImpl.prototype,cn.prototype);Wt.exports={implementation:HTMLElementImpl}},4012:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLEmbedElementImpl extends tn{}Wt.exports={implementation:HTMLEmbedElementImpl}},59615:(Wt,Pt,en)=>{"use strict";const tn=en(13506);const nn=en(95927).implementation;const an=en(95449).D;const{formOwner:rn}=en(10588);const{mixin:In}=en(35702);const{descendantsByLocalNames:sn}=en(83521);const on=new Set(["button","fieldset","input","object","output","select","textarea"]);class HTMLFieldSetElementImpl extends nn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._customValidityErrorMessage=""}get elements(){return tn.createImpl(this._globalObject,[],{element:this,query:()=>sn(this,on)})}get form(){return rn(this)}get type(){return"fieldset"}_barredFromConstraintValidationSpecialization(){return true}}In(HTMLFieldSetElementImpl.prototype,an.prototype);Wt.exports={implementation:HTMLFieldSetElementImpl}},49758:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLFontElementImpl extends tn{}Wt.exports={implementation:HTMLFontElementImpl}},12085:(Wt,Pt,en)=>{"use strict";const tn=en(76041).implementation;const nn=en(9344);Pt.implementation=class HTMLFormControlsCollectionImpl extends tn{namedItem(Wt){if(Wt===""){return null}this._update();const Pt=nn.createImpl(this._globalObject,[],{element:this,query:()=>this._list.filter((Pt=>Pt.getAttributeNS(null,"id")===Wt||Pt.getAttributeNS(null,"name")===Wt))});switch(Pt.length){case 0:{return null}case 1:{return Pt.item(0)}default:{return Pt}}}}},70161:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const{serializeURL:nn}=en(78012);const an=en(95927).implementation;const{domSymbolTree:rn}=en(38542);const{fireAnEvent:In}=en(83350);const{formOwner:sn,isListed:on,isSubmittable:cn,isSubmitButton:dn}=en(10588);const un=en(59470);const pn=en(8172);const{parseURLToResultingURLRecord:mn}=en(30962);const bn=en(3823);const Gn=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);const hn=new Set(["get","post","dialog"]);const Zn=Symbol("positive");const An=Symbol("negative");class HTMLFormElementImpl extends an{_descendantAdded(Wt,Pt){const en=this;for(const Wt of rn.treeIterator(Pt)){if(typeof Wt._changedFormOwner==="function"){Wt._changedFormOwner(en)}}super._descendantAdded(Wt,Pt)}_descendantRemoved(Wt,Pt){for(const Wt of rn.treeIterator(Pt)){if(typeof Wt._changedFormOwner==="function"){Wt._changedFormOwner(null)}}super._descendantRemoved(Wt,Pt)}_getSubmittableElementNodes(){return rn.treeToArray(this.getRootNode({}),{filter:Wt=>{if(!cn(Wt)){return false}return sn(Wt)===this}})}_getElementNodes(){return rn.treeToArray(this.getRootNode({}),{filter:Wt=>{if(!on(Wt)||Wt._localName==="input"&&Wt.type==="image"){return false}return sn(Wt)===this}})}get elements(){return un.createImpl(this._globalObject,[],{element:this.getRootNode({}),query:()=>this._getElementNodes()})}get length(){return this.elements.length}_doRequestSubmit(Wt){if(!this.isConnected){return}this.requestSubmit(Wt)}submit(){pn("HTMLFormElement.prototype.submit",this._ownerDocument._defaultView)}requestSubmit(Wt=null){if(Wt!==null){if(!dn(Wt)){throw new TypeError("The specified element is not a submit button")}if(Wt.form!==this){throw tn.create(this._globalObject,["The specified element is not owned by this form element","NotFoundError"])}}if(!this.hasAttributeNS(null,"novalidate")&&!this.reportValidity()){return}if(!In("submit",this,bn,{bubbles:true,cancelable:true,submitter:Wt})){return}pn("HTMLFormElement.prototype.requestSubmit",this._ownerDocument._defaultView)}_doReset(){if(!this.isConnected){return}this.reset()}reset(){if(!In("reset",this,undefined,{bubbles:true,cancelable:true})){return}for(const Wt of this.elements){if(typeof Wt._formReset==="function"){Wt._formReset()}}}get method(){let Wt=this.getAttributeNS(null,"method");if(Wt){Wt=Wt.toLowerCase()}if(hn.has(Wt)){return Wt}return"get"}set method(Wt){this.setAttributeNS(null,"method",Wt)}get enctype(){let Wt=this.getAttributeNS(null,"enctype");if(Wt){Wt=Wt.toLowerCase()}if(Gn.has(Wt)){return Wt}return"application/x-www-form-urlencoded"}set enctype(Wt){this.setAttributeNS(null,"enctype",Wt)}get action(){const Wt=this.getAttributeNS(null,"action");if(Wt===null||Wt===""){return this._ownerDocument.URL}const Pt=mn(Wt,this._ownerDocument);if(Pt===null){return Wt}return nn(Pt)}set action(Wt){this.setAttributeNS(null,"action",Wt)}checkValidity(){return this._staticallyValidateConstraints().result===Zn}reportValidity(){return this.checkValidity()}_staticallyValidateConstraints(){const Wt=[];for(const Pt of this.elements){if(Pt.form===this&&cn(Pt)){Wt.push(Pt)}}const Pt=[];for(const en of Wt){if(en._isCandidateForConstraintValidation()&&!en._satisfiesConstraints()){Pt.push(en)}}if(Pt.length===0){return{result:Zn}}const en=[];for(const Wt of Pt){const Pt=In("invalid",Wt,undefined,{cancelable:true});if(Pt){en.push(Wt)}}return{result:An,unhandledInvalidControls:en}}}Wt.exports={implementation:HTMLFormElementImpl}},7700:(Wt,Pt,en)=>{"use strict";const tn=en(59344);const nn=en(86476);const{parseURL:an,serializeURL:rn}=en(78012);const In=en(45528);const sn=en(30398);const on=en(95927).implementation;const{evaluateJavaScriptURL:cn}=en(63714);const{parseIntoDocument:dn}=en(13430);const{documentBaseURL:un}=en(30962);const{fireAnEvent:pn}=en(83350);const{getAttributeValue:mn}=en(69936);const bn=en(87094);function fireLoadEvent(Wt,Pt,en){if(en){pn("load",Pt);return}const tn=Promise.resolve();function onLoad(){pn("load",Pt)}Wt._queue.push(tn,onLoad)}function fetchFrame(Wt,Pt,en,an){const rn=en._resourceLoader;let sn;function onFrameLoaded(Wt){const Pt={defaultEncoding:en._encoding};if(sn.response){const Wt=tn.parse(sn.response.headers["content-type"])||new tn("text/plain");Pt.transportLayerEncodingLabel=Wt.parameters.get("charset");if(Wt){if(Wt.isXML()){an._parsingMode="xml"}an.contentType=Wt.essence}}const rn=In(Wt,Pt);an._encoding=rn;const on=nn.decode(Wt,an._encoding);try{dn(on,an)}catch(Wt){const{DOMException:Pt}=an._globalObject;if(Wt.constructor.name==="DOMException"&&Wt.code===Pt.SYNTAX_ERR&&an._parsingMode==="xml"){const Pt=an.createElementNS("http://www.mozilla.org/newlayout/xml/parsererror.xml","parsererror");Pt.textContent=Wt.message;while(an.childNodes.length>0){an.removeChild(an.lastChild)}an.appendChild(Pt)}else{throw Wt}}an.close();return new Promise(((Wt,Pt)=>{an.addEventListener("load",Wt);an.addEventListener("error",Pt)}))}sn=rn.fetch(Wt,{element:Pt,onLoad:onFrameLoaded})}function canDispatchEvents(Wt,Pt){if(!Pt){return false}return Object.keys(Wt._eventListeners).length===0}function loadFrame(Wt,Pt){if(Wt._contentDocument){if(Wt._contentDocument._defaultView){Wt._contentDocument._defaultView.close()}else{delete Wt._contentDocument}}const en=Wt._ownerDocument;let tn;const nn=mn(Wt,"src");if(nn===""){tn=an("about:blank")}else{tn=an(nn,{baseURL:un(en)||undefined})||an("about:blank")}const In=rn(tn);const on=sn.createWindow({parsingMode:"html",url:tn.scheme==="javascript"?en.URL:In,parentOrigin:en._origin,resourceLoader:en._defaultView._resourceLoader,referrer:en.URL,cookieJar:en._cookieJar,pool:en._pool,encoding:en._encoding,runScripts:en._defaultView._runScripts,commonForOrigin:en._defaultView._commonForOrigin,pretendToBeVisual:en._defaultView._pretendToBeVisual});const pn=Wt._contentDocument=bn.implForWrapper(on._document);const Gn=en._defaultView;const hn=pn._defaultView;hn._parent=Gn;hn._top=Gn.top;hn._frameElement=Wt;hn._virtualConsole=Gn._virtualConsole;if(en._origin===pn._origin){hn._currentOriginData.windowsInSameOrigin.push(hn)}const Zn=canDispatchEvents(Wt,Pt);if(In==="about:blank"){dn("",pn);pn.close(Zn);if(Zn){fireLoadEvent(en,Wt,Zn)}else{pn.addEventListener("load",(()=>{fireLoadEvent(en,Wt)}))}}else if(tn.scheme==="javascript"){dn("",pn);pn.close(Zn);const Pt=cn(hn,tn);if(typeof Pt==="string"){pn.body.textContent=Pt}if(Zn){fireLoadEvent(en,Wt,Zn)}else{pn.addEventListener("load",(()=>{fireLoadEvent(en,Wt)}))}}else{fetchFrame(In,Wt,en,pn)}}function refreshAccessors(Wt){const{_defaultView:Pt}=Wt;if(!Pt){return}const en=Wt.querySelectorAll("iframe,frame");for(let Wt=0;Wt{Object.defineProperty(Pt,en,{configurable:true,enumerable:true,get(){return Wt.contentWindow}})}))}class HTMLFrameElementImpl extends on{constructor(Wt,Pt,en){super(Wt,Pt,en);this._contentDocument=null}_attrModified(Wt,Pt,en){super._attrModified(Wt,Pt,en);if(Wt==="src"){if(this._attached&&this._ownerDocument._defaultView){loadFrame(this)}}}_detach(){super._detach();if(this.contentWindow){this.contentWindow.close()}refreshAccessors(this._ownerDocument)}_attach(){super._attach();if(this._ownerDocument._defaultView){loadFrame(this,true)}refreshAccessors(this._ownerDocument)}get contentDocument(){return this._contentDocument}get contentWindow(){return this.contentDocument?this.contentDocument._defaultView:null}}Wt.exports={implementation:HTMLFrameElementImpl}},67660:(Wt,Pt,en)=>{"use strict";const{mixin:tn}=en(35702);const nn=en(95927).implementation;const an=en(64473).implementation;class HTMLFrameSetElementImpl extends nn{constructor(...Wt){super(...Wt);this._proxyWindowEventsToWindow()}}tn(HTMLFrameSetElementImpl.prototype,an.prototype);Wt.exports={implementation:HTMLFrameSetElementImpl}},46505:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLHRElementImpl extends tn{}Wt.exports={implementation:HTMLHRElementImpl}},69573:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLHeadElementImpl extends tn{}Wt.exports={implementation:HTMLHeadElementImpl}},77031:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLHeadingElementImpl extends tn{}Wt.exports={implementation:HTMLHeadingElementImpl}},48366:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLHtmlElementImpl extends tn{}Wt.exports={implementation:HTMLHtmlElementImpl}},18590:(Wt,Pt,en)=>{"use strict";const tn=en(78012);const{parseURLToResultingURLRecord:nn}=en(30962);const{asciiCaseInsensitiveMatch:an}=en(97205);const{navigate:rn}=en(63714);Pt.D=class HTMLHyperlinkElementUtilsImpl{_htmlHyperlinkElementUtilsSetup(){this.url=null}_cannotNavigate(){return this._localName!=="a"&&!this.isConnected}_getAnElementsTarget(){if(this.hasAttributeNS(null,"target")){return this.getAttributeNS(null,"target")}const Wt=this._ownerDocument.querySelector("base[target]");if(Wt){return Wt.getAttributeNS(null,"target")}return""}_chooseABrowsingContext(Wt,Pt){let en=null;if(Wt===""||an(Wt,"_self")){en=Pt}else if(an(Wt,"_parent")){en=Pt.parent}else if(an(Wt,"_top")){en=Pt.top}else if(!an(Wt,"_blank")){}return en}_followAHyperlink(){if(this._cannotNavigate()){return}const Wt=this._ownerDocument._defaultView;let Pt="";if(this._localName==="a"||this._localName==="area"){Pt=this._getAnElementsTarget()}const en=this.relList.contains("noreferrer")||this.relList.contains("noopener");const tn=this._chooseABrowsingContext(Pt,Wt,en);if(tn===null){return}const an=nn(this.href,this._ownerDocument);if(an===null){return}setTimeout((()=>{rn(tn,an,{})}),0)}toString(){return this.href}get href(){reinitializeURL(this);const{url:Wt}=this;if(Wt===null){const Wt=this.getAttributeNS(null,"href");return Wt===null?"":Wt}return tn.serializeURL(Wt)}set href(Wt){this.setAttributeNS(null,"href",Wt)}get origin(){reinitializeURL(this);if(this.url===null){return""}return tn.serializeURLOrigin(this.url)}get protocol(){reinitializeURL(this);if(this.url===null){return":"}return this.url.scheme+":"}set protocol(Wt){reinitializeURL(this);if(this.url===null){return}tn.basicURLParse(Wt+":",{url:this.url,stateOverride:"scheme start"});updateHref(this)}get username(){reinitializeURL(this);if(this.url===null){return""}return this.url.username}set username(Wt){reinitializeURL(this);const{url:Pt}=this;if(Pt===null||tn.cannotHaveAUsernamePasswordPort(Pt)){return}tn.setTheUsername(Pt,Wt);updateHref(this)}get password(){reinitializeURL(this);const{url:Wt}=this;if(Wt===null){return""}return Wt.password}set password(Wt){reinitializeURL(this);const{url:Pt}=this;if(Pt===null||tn.cannotHaveAUsernamePasswordPort(Pt)){return}tn.setThePassword(Pt,Wt);updateHref(this)}get host(){reinitializeURL(this);const{url:Wt}=this;if(Wt===null||Wt.host===null){return""}if(Wt.port===null){return tn.serializeHost(Wt.host)}return tn.serializeHost(Wt.host)+":"+tn.serializeInteger(Wt.port)}set host(Wt){reinitializeURL(this);const{url:Pt}=this;if(Pt===null||tn.hasAnOpaquePath(Pt)){return}tn.basicURLParse(Wt,{url:Pt,stateOverride:"host"});updateHref(this)}get hostname(){reinitializeURL(this);const{url:Wt}=this;if(Wt===null||Wt.host===null){return""}return tn.serializeHost(Wt.host)}set hostname(Wt){reinitializeURL(this);const{url:Pt}=this;if(Pt===null||tn.hasAnOpaquePath(Pt)){return}tn.basicURLParse(Wt,{url:Pt,stateOverride:"hostname"});updateHref(this)}get port(){reinitializeURL(this);const{url:Wt}=this;if(Wt===null||Wt.port===null){return""}return tn.serializeInteger(Wt.port)}set port(Wt){reinitializeURL(this);const{url:Pt}=this;if(Pt===null||tn.cannotHaveAUsernamePasswordPort(Pt)){return}if(Wt===""){Pt.port=null}else{tn.basicURLParse(Wt,{url:Pt,stateOverride:"port"})}updateHref(this)}get pathname(){reinitializeURL(this);const{url:Wt}=this;if(Wt===null){return""}return tn.serializePath(Wt)}set pathname(Wt){reinitializeURL(this);const{url:Pt}=this;if(Pt===null||tn.hasAnOpaquePath(Pt)){return}Pt.path=[];tn.basicURLParse(Wt,{url:Pt,stateOverride:"path start"});updateHref(this)}get search(){reinitializeURL(this);const{url:Wt}=this;if(Wt===null||Wt.query===null||Wt.query===""){return""}return"?"+Wt.query}set search(Wt){reinitializeURL(this);const{url:Pt}=this;if(Pt===null){return}if(Wt===""){Pt.query=null}else{const en=Wt[0]==="?"?Wt.substring(1):Wt;Pt.query="";tn.basicURLParse(en,{url:Pt,stateOverride:"query",encodingOverride:this._ownerDocument.charset})}updateHref(this)}get hash(){reinitializeURL(this);const{url:Wt}=this;if(Wt===null||Wt.fragment===null||Wt.fragment===""){return""}return"#"+Wt.fragment}set hash(Wt){reinitializeURL(this);const{url:Pt}=this;if(Pt===null){return}if(Wt===""){Pt.fragment=null}else{const en=Wt[0]==="#"?Wt.substring(1):Wt;Pt.fragment="";tn.basicURLParse(en,{url:Pt,stateOverride:"fragment"})}updateHref(this)}};function reinitializeURL(Wt){if(Wt.url!==null&&Wt.url.scheme==="blob"&&tn.hasAnOpaquePath(Wt.url)){return}setTheURL(Wt)}function setTheURL(Wt){const Pt=Wt.getAttributeNS(null,"href");if(Pt===null){Wt.url=null;return}const en=nn(Pt,Wt._ownerDocument);Wt.url=en===null?null:en}function updateHref(Wt){Wt.setAttributeNS(null,"href",tn.serializeURL(Wt.url))}},73531:(Wt,Pt,en)=>{"use strict";const tn=en(7700).implementation;class HTMLIFrameElementImpl extends tn{}Wt.exports={implementation:HTMLIFrameElementImpl}},38352:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const{serializeURL:nn}=en(78012);const an=en(95927).implementation;const{Canvas:rn}=en(35702);const{parseURLToResultingURLRecord:In}=en(30962);class HTMLImageElementImpl extends an{constructor(...Wt){super(...Wt);this._currentRequestState="unavailable"}_attrModified(Wt,Pt,en){if(Wt==="src"||(Wt==="srcset"||Wt==="width"||Wt==="sizes")&&Pt!==en){this._updateTheImageData()}super._attrModified(Wt,Pt,en)}get _accept(){return"image/png,image/*;q=0.8,*/*;q=0.5"}get height(){return this.hasAttributeNS(null,"height")?tn["unsigned long"](this.getAttributeNS(null,"height")):this.naturalHeight}set height(Wt){this.setAttributeNS(null,"height",String(Wt))}get width(){return this.hasAttributeNS(null,"width")?tn["unsigned long"](this.getAttributeNS(null,"width")):this.naturalWidth}set width(Wt){this.setAttributeNS(null,"width",String(Wt))}get naturalHeight(){return this._image?this._image.naturalHeight:0}get naturalWidth(){return this._image?this._image.naturalWidth:0}get complete(){const Wt=this.getAttributeNS(null,"src");return Wt===null||Wt===""||this._currentRequestState==="broken"||this._currentRequestState==="completely available"}get currentSrc(){return this._currentSrc||""}_updateTheImageData(){const Wt=this._ownerDocument;if(!Wt._defaultView){return}if(!rn){return}if(!this._image){this._image=new rn.Image}this._currentSrc=null;this._currentRequestState="unavailable";const Pt=this.getAttributeNS(null,"src");let en=null;if(Pt!==null&&Pt!==""){const Wt=In(Pt,this._ownerDocument);if(Wt===null){return}en=nn(Wt)}if(en!==null){const tn=Wt._resourceLoader;let nn;const onLoadImage=Wt=>{const{response:en}=nn;if(en&&en.statusCode!==undefined&&en.statusCode!==200){throw new Error("Status code: "+en.statusCode)}let tn=null;this._image.onerror=function(Wt){tn=Wt};this._image.src=Wt;if(tn){throw new Error(tn)}this._currentSrc=Pt;this._currentRequestState="completely available"};nn=tn.fetch(en,{element:this,onLoad:onLoadImage,onError:()=>{this._currentRequestState="broken"}})}else{this._image.src=""}}}Wt.exports={implementation:HTMLImageElementImpl}},141:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(12373);const an=en(92183);const rn=en(95927).implementation;const In=en(87094);const sn=en(95449).D;const on=en(47180);const{mixin:cn}=en(35702);const{domSymbolTree:dn,cloningSteps:un}=en(38542);const{getLabelsForLabelable:pn,formOwner:mn}=en(10588);const{fireAnEvent:bn}=en(83350);const{isDisabled:Gn,isValidEmailAddress:hn,isValidAbsoluteURL:Zn,sanitizeValueByType:An}=en(10588);const{asciiCaseInsensitiveMatch:Wn,asciiLowercase:Nn,parseFloatingPointNumber:gn,splitOnCommas:yn}=en(97205);const{isDate:vn}=en(29553);const{convertStringToNumberByType:Yn,convertStringToDateByType:En,serializeDateByType:Vn,convertNumberToStringByType:Rn}=en(76125);const wn=Symbol("files");const Fn=new Set(["hidden","text","search","tel","url","email","password","date","month","week","time","datetime-local","number","range","color","checkbox","radio","file","submit","image","reset","button"]);const Qn=new Set(["text","search","url","tel","password"]);const fn=new Set(["date","month","week","time","datetime-local","number","range"]);const Hn={valueAsDate:new Set(["date","month","week","time"]),valueAsNumber:fn,select:new Set(["text","search","url","tel","email","password","date","month","week","time","datetime-local","number","color","file"]),selectionStart:Qn,selectionEnd:Qn,selectionDirection:Qn,setRangeText:Qn,setSelectionRange:Qn,stepDown:fn,stepUp:fn};const Cn=new Set(["text","search","url","tel","email","password"]);const Xn=new Set([...Cn,"date","month","week","time","datetime-local","number"]);const kn={list:new Set(["text","search","url","tel","email",...fn,"color"]),max:fn,maxlength:Cn,min:fn,minlength:Cn,multiple:new Set(["email","file"]),pattern:Cn,readonly:Xn,required:new Set([...Xn,"checkbox","radio","file"]),step:fn};const Jn=new Set(["hidden","submit","image","reset","button"]);const Ln=new Set(["checkbox","radio"]);function valueAttributeMode(Wt){if(Jn.has(Wt)){return"default"}if(Ln.has(Wt)){return"default/on"}if(Wt==="file"){return"filename"}return"value"}function getTypeFromAttribute(Wt){if(typeof Wt!=="string"){return"text"}const Pt=Nn(Wt);return Fn.has(Pt)?Pt:"text"}class HTMLInputElementImpl extends rn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._selectionStart=this._selectionEnd=0;this._selectionDirection="none";this._value="";this._dirtyValue=false;this._checkedness=false;this._dirtyCheckedness=false;this._preCheckedRadioState=null;this._legacyActivationBehaviorPreviousIndeterminateState=false;this.indeterminate=false;this._customValidityErrorMessage="";this._labels=null;this._hasActivationBehavior=true}get _convertStringToNumber(){return Yn[this.type]}get _convertNumberToString(){return Rn[this.type]}get _convertDateToString(){return Vn[this.type]}get _convertStringToDate(){return En[this.type]}_isStepAligned(Wt){return new an(Wt).minus(this._stepBase).modulo(this._allowedValueStep).isZero()}_stepAlign(Wt,Pt){const en=this._allowedValueStep;const tn=this._stepBase;return new an(Wt).minus(tn).toNearest(en,Pt?an.ROUND_UP:an.ROUND_DOWN).add(tn)}_getValue(){return this._value}_legacyPreActivationBehavior(){if(this.type==="checkbox"){this.checked=!this.checked;this._legacyActivationBehaviorPreviousIndeterminateState=this.indeterminate;this.indeterminate=false}else if(this.type==="radio"){this._preCheckedRadioState=this.checked;this.checked=true}}_legacyCanceledActivationBehavior(){if(this.type==="checkbox"){this.checked=!this.checked;this.indeterminate=this._legacyActivationBehaviorPreviousIndeterminateState}else if(this.type==="radio"){if(this._preCheckedRadioState!==null){this.checked=this._preCheckedRadioState;this._preCheckedRadioState=null}}}_activationBehavior(Wt){if(!this._mutable&&this.type!=="checkbox"&&this.type!=="radio"){return}const{form:Pt}=this;if(this.type==="checkbox"||this.type==="radio"&&!this._preCheckedRadioState){if(this.isConnected){bn("input",this,undefined,{bubbles:true});bn("change",this,undefined,{bubbles:true})}}else if(Pt&&this.type==="image"){this._selectedCoordinate={x:Wt.offsetX,y:Wt.offsetY};Pt._doRequestSubmit(this)}else if(Pt&&this.type==="submit"){Pt._doRequestSubmit(this)}else if(Pt&&this.type==="reset"){Pt._doReset()}}_attrModified(Wt,Pt,en){const tn=In.wrapperForImpl(this);if(!this._dirtyValue&&Wt==="value"){this._value=An(this,tn.defaultValue)}if(!this._dirtyCheckedness&&Wt==="checked"){this._checkedness=tn.defaultChecked;if(this._checkedness){this._removeOtherRadioCheckedness()}}if(Wt==="name"||Wt==="type"){if(this._checkedness){this._removeOtherRadioCheckedness()}}if(Wt==="type"){const Wt=getTypeFromAttribute(en);const tn=getTypeFromAttribute(Pt);if(Wt!==tn){const Pt=valueAttributeMode(Wt);const en=valueAttributeMode(tn);if(Pt==="value"&&this._value!==""&&(en==="default"||en==="default/on")){this.setAttributeNS(null,"value",this._value)}else if(Pt!=="value"&&en==="value"){this._value=this.getAttributeNS(null,"value")||"";this._dirtyValue=false}else if(Pt!=="filename"&&en==="filename"){this._value=""}this._signalATypeChange();this._value=An(this,this._value);const nn=this._idlMemberApplies("setRangeText",Wt);const an=this._idlMemberApplies("setRangeText",tn);if(!nn&&an){this._selectionStart=0;this._selectionEnd=0;this._selectionDirection="none"}}}super._attrModified(Wt,Pt,en)}_signalATypeChange(){if(this._checkedness){this._removeOtherRadioCheckedness()}}_formReset(){const Wt=In.wrapperForImpl(this);this._value=An(this,Wt.defaultValue);this._dirtyValue=false;this._checkedness=Wt.defaultChecked;this._dirtyCheckedness=false;if(this._checkedness){this._removeOtherRadioCheckedness()}}_changedFormOwner(){if(this._checkedness){this._removeOtherRadioCheckedness()}}get _otherRadioGroupElements(){const Wt=In.wrapperForImpl(this);const Pt=this._radioButtonGroupRoot;if(!Pt){return[]}const en=[];const tn=dn.treeIterator(Pt);for(const nn of tn){if(nn._radioButtonGroupRoot!==Pt){continue}const tn=In.wrapperForImpl(nn);if(!tn.name||tn.name!==Wt.name){continue}if(nn!==this){en.push(nn)}}return en}_removeOtherRadioCheckedness(){for(const Wt of this._otherRadioGroupElements){Wt._checkedness=false}}get _radioButtonGroupRoot(){const Wt=In.wrapperForImpl(this);if(this.type!=="radio"||!Wt.name){return null}let Pt=dn.parent(this);while(Pt){if(!dn.parent(Pt)||Pt.nodeName.toUpperCase()==="FORM"){return Pt}Pt=dn.parent(Pt)}return null}_someInRadioGroup(Wt){if(this[Wt]){return true}return this._otherRadioGroupElements.some((Pt=>Pt[Wt]))}get _mutable(){return!Gn(this)&&!this._hasAttributeAndApplies("readonly")}get labels(){return pn(this)}get form(){return mn(this)}get checked(){return this._checkedness}set checked(Wt){this._checkedness=Boolean(Wt);this._dirtyCheckedness=true;if(this._checkedness){this._removeOtherRadioCheckedness()}}get value(){switch(valueAttributeMode(this.type)){case"value":return this._getValue();case"default":{const Wt=this.getAttributeNS(null,"value");return Wt!==null?Wt:""}case"default/on":{const Wt=this.getAttributeNS(null,"value");return Wt!==null?Wt:"on"}case"filename":return this.files.length?"C:\\fakepath\\"+this.files[0].name:"";default:throw new Error("jsdom internal error: unknown value attribute mode")}}set value(Wt){switch(valueAttributeMode(this.type)){case"value":{const Pt=this._value;this._value=An(this,Wt);this._dirtyValue=true;if(Pt!==this._value){this._selectionStart=this._selectionEnd=this._getValueLength();this._selectionDirection="none"}break}case"default":case"default/on":this.setAttributeNS(null,"value",Wt);break;case"filename":if(Wt===""){this.files.length=0}else{throw tn.create(this._globalObject,["This input element accepts a filename, which may only be programmatically set to the empty string.","InvalidStateError"])}break;default:throw new Error("jsdom internal error: unknown value attribute mode")}}get valueAsDate(){if(!this._idlMemberApplies("valueAsDate")){return null}const Wt=this._ownerDocument._defaultView;const Pt=this._convertStringToDate(this._value);if(Pt instanceof Date){return new Wt.Date(Pt.getTime())}return null}set valueAsDate(Wt){if(!this._idlMemberApplies("valueAsDate")){throw tn.create(this._globalObject,["Failed to set the 'valueAsDate' property on 'HTMLInputElement': This input element does not support Date "+"values.","InvalidStateError"])}if(Wt!==null&&!vn(Wt)){throw new TypeError("Failed to set the 'valueAsDate' property on 'HTMLInputElement': The provided value is "+"not a Date.")}if(Wt===null||isNaN(Wt)){this._value="";return}this._value=this._convertDateToString(Wt)}get valueAsNumber(){if(!this._idlMemberApplies("valueAsNumber")){return NaN}const Wt=this._convertStringToNumber(this._value);return Wt!==null?Wt:NaN}set valueAsNumber(Wt){if(!isFinite(Wt)&&!isNaN(Wt)){throw new TypeError("Failed to set infinite value as Number")}if(!this._idlMemberApplies("valueAsNumber")){throw tn.create(this._globalObject,["Failed to set the 'valueAsNumber' property on 'HTMLInputElement': This input element does not support "+"Number values.","InvalidStateError"])}if(isNaN(Wt)){this._value=""}else{this._value=this._convertNumberToString(Wt)}}_stepUpdate(Wt,Pt){const en=Pt?"stepUp":"stepDown";if(!this._idlMemberApplies(en)){throw tn.create(this._globalObject,[`Failed to invoke '${en}' method on 'HTMLInputElement': `+"This input element does not support Number values.","InvalidStateError"])}const nn=this._allowedValueStep;if(nn===null){throw tn.create(this._globalObject,[`Failed to invoke '${en}' method on 'HTMLInputElement': `+"This input element does not support value step.","InvalidStateError"])}const rn=this._minimum;const In=this._maximum;if(rn!==null&&In!==null){if(rn>In){return}const Wt=this._stepAlign(an.add(rn,nn),false);if(Wt.lt(rn)||Wt.gt(In)){return}}let sn=0;try{sn=this.valueAsNumber;if(isNaN(sn)){sn=0}}catch(Wt){}sn=new an(sn);const on=sn;if(!this._isStepAligned(sn)){sn=this._stepAlign(sn,Pt)}else{let en=an.mul(Wt,nn);if(!Pt){en=en.neg()}sn=sn.add(en)}if(rn!==null&&sn.lt(rn)){sn=this._stepAlign(rn,true)}if(In!==null&&sn.gt(In)){sn=this._stepAlign(In,false)}if(Pt?sn.lt(on):sn.gt(on)){return}this._value=this._convertNumberToString(sn.toNumber())}stepDown(Wt=1){return this._stepUpdate(Wt,false)}stepUp(Wt=1){return this._stepUpdate(Wt,true)}get files(){if(this.type==="file"){this[wn]||=nn.createImpl(this._globalObject)}else{this[wn]=null}return this[wn]}set files(Wt){if(this.type==="file"&&Wt!==null){this[wn]=Wt}}get type(){const Wt=this.getAttributeNS(null,"type");return getTypeFromAttribute(Wt)}set type(Wt){this.setAttributeNS(null,"type",Wt)}_dispatchSelectEvent(){setTimeout((()=>bn("select",this,undefined,{bubbles:true,cancelable:false})),0)}_getValueLength(){return typeof this.value==="string"?this.value.length:0}select(){if(!this._idlMemberApplies("select")){return}this._selectionStart=0;this._selectionEnd=this._getValueLength();this._selectionDirection="none";this._dispatchSelectEvent()}get selectionStart(){if(!this._idlMemberApplies("selectionStart")){return null}return this._selectionStart}set selectionStart(Wt){if(!this._idlMemberApplies("selectionStart")){throw tn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}this.setSelectionRange(Wt,Math.max(Wt,this._selectionEnd),this._selectionDirection)}get selectionEnd(){if(!this._idlMemberApplies("selectionEnd")){return null}return this._selectionEnd}set selectionEnd(Wt){if(!this._idlMemberApplies("selectionEnd")){throw tn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}this.setSelectionRange(this._selectionStart,Wt,this._selectionDirection)}get selectionDirection(){if(!this._idlMemberApplies("selectionDirection")){return null}return this._selectionDirection}set selectionDirection(Wt){if(!this._idlMemberApplies("selectionDirection")){throw tn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}this.setSelectionRange(this._selectionStart,this._selectionEnd,Wt)}setSelectionRange(Wt,Pt,en){if(!this._idlMemberApplies("setSelectionRange")){throw tn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}this._selectionEnd=Math.min(Pt,this._getValueLength());this._selectionStart=Math.min(Wt,this._selectionEnd);this._selectionDirection=en==="forward"||en==="backward"?en:"none";this._dispatchSelectEvent()}setRangeText(Wt,Pt,en,nn="preserve"){if(!this._idlMemberApplies("setRangeText")){throw tn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}if(arguments.length<2){Pt=this._selectionStart;en=this._selectionEnd}else if(Pt>en){throw tn.create(this._globalObject,["The index is not in the allowed range.","IndexSizeError"])}Pt=Math.min(Pt,this._getValueLength());en=Math.min(en,this._getValueLength());const an=this.value;let rn=this._selectionStart;let In=this._selectionEnd;this.value=an.slice(0,Pt)+Wt+an.slice(en);const sn=Pt+Wt.length;if(nn==="select"){this.setSelectionRange(Pt,sn)}else if(nn==="start"){this.setSelectionRange(Pt,Pt)}else if(nn==="end"){this.setSelectionRange(sn,sn)}else{const tn=Wt.length-(en-Pt);if(rn>en){rn+=tn}else if(rn>Pt){rn=Pt}if(In>en){In+=tn}else if(In>Pt){In=sn}this.setSelectionRange(rn,In)}}get list(){const Wt=this._getAttributeIfApplies("list");if(!Wt){return null}const Pt=this.getRootNode({}).getElementById(Wt);if(Pt&&Pt.localName==="datalist"){return Pt}return null}get _minimum(){let Wt=this._defaultMinimum;const Pt=this._getAttributeIfApplies("min");if(Pt!==null&&this._convertStringToNumber!==undefined){const en=this._convertStringToNumber(Pt);if(en!==null){Wt=en}}return Wt}get _maximum(){let Wt=this._defaultMaximum;const Pt=this._getAttributeIfApplies("max");if(Pt!==null&&this._convertStringToNumber!==undefined){const en=this._convertStringToNumber(Pt);if(en!==null){Wt=en}}return Wt}get _defaultMinimum(){if(this.type==="range"){return 0}return null}get _defaultMaximum(){if(this.type==="range"){return 100}return null}get _allowedValueStep(){if(!this._contentAttributeApplies("step")){return null}const Wt=this.getAttributeNS(null,"step");if(Wt===null){return this._defaultStep*this._stepScaleFactor}if(Wn(Wt,"any")){return null}const Pt=gn(Wt);if(Pt===null||Pt<=0){return this._defaultStep*this._stepScaleFactor}return Pt*this._stepScaleFactor}get _stepScaleFactor(){const Wt=24*60*60*1e3;switch(this.type){case"week":return 7*Wt;case"date":return Wt;case"datetime-local":case"datetime":case"time":return 1e3}return 1}get _defaultStep(){if(this.type==="datetime-local"||this.type==="datetime"||this.type==="time"){return 60}return 1}get _stepBase(){if(this._hasAttributeAndApplies("min")){const Wt=this._convertStringToNumber(this.getAttributeNS(null,"min"));if(Wt!==null){return Wt}}if(this.hasAttributeNS(null,"value")){const Wt=this._convertStringToNumber(this.getAttributeNS(null,"value"));if(Wt!==null){return Wt}}if(this._defaultStepBase!==null){return this._defaultStepBase}return 0}get _defaultStepBase(){if(this.type==="week"){return-2592e5}return null}_contentAttributeApplies(Wt){return kn[Wt].has(this.type)}_hasAttributeAndApplies(Wt){return this._contentAttributeApplies(Wt)&&this.hasAttributeNS(null,Wt)}_getAttributeIfApplies(Wt){if(this._contentAttributeApplies(Wt)){return this.getAttributeNS(null,Wt)}return null}_idlMemberApplies(Wt,Pt=this.type){return Hn[Wt].has(Pt)}_barredFromConstraintValidationSpecialization(){const Wt=new Set(["hidden","reset","button"]);const Pt=this._hasAttributeAndApplies("readonly");return Wt.has(this.type)||Pt}get _required(){return this._hasAttributeAndApplies("required")}get _hasAPeriodicDomain(){return this.type==="time"}get _hasAReversedRange(){return this._hasAPeriodicDomain&&this._maximum{const Wt=this._convertStringToNumber(this._value);return Wt!==null&&Wt>this._maximum&&Wt{if(this._required&&valueAttributeMode(this.type)==="value"&&this._mutable&&this._value===""){return true}switch(this.type){case"checkbox":if(this._required&&!this._checkedness){return true}break;case"radio":if(this._someInRadioGroup("_required")&&!this._someInRadioGroup("checked")){return true}break;case"file":if(this._required&&this.files.length===0){return true}break}return false},tooLong:()=>false,tooShort:()=>false,rangeOverflow:()=>{if(this._hasAReversedRange){return reversedRangeSufferingOverUnderflow()}if(this._maximum!==null){const Wt=this._convertStringToNumber(this._value);if(Wt!==null&&Wt>this._maximum){return true}}return false},rangeUnderflow:()=>{if(this._hasAReversedRange){return reversedRangeSufferingOverUnderflow()}if(this._minimum!==null){const Wt=this._convertStringToNumber(this._value);if(Wt!==null&&Wt{if(this._value===""||!this._hasAttributeAndApplies("pattern")){return false}let Wt;try{const Pt=this.getAttributeNS(null,"pattern");new RegExp(Pt,"u");Wt=new RegExp("^(?:"+Pt+")$","u")}catch(Wt){return false}if(this._hasAttributeAndApplies("multiple")){return!yn(this._value).every((Pt=>Wt.test(Pt)))}return!Wt.test(this._value)},stepMismatch:()=>{const Wt=this._allowedValueStep;if(Wt===null){return false}const Pt=this._convertStringToNumber(this._value);return Pt!==null&&!this._isStepAligned(Pt)},typeMismatch:()=>{switch(this.type){case"url":if(this._value!==""&&!Zn(this._value)){return true}break;case"email":if(this._value!==""&&!hn(this._getValue(),this.hasAttributeNS(null,"multiple"))){return true}break}return false}};this._validity=on.createImpl(this._globalObject,[],{element:this,state:Wt})}return this._validity}[un](Wt,Pt){Wt._value=Pt._value;Wt._checkedness=Pt._checkedness;Wt._dirtyValue=Pt._dirtyValue;Wt._dirtyCheckedness=Pt._dirtyCheckedness}}cn(HTMLInputElementImpl.prototype,sn.prototype);Wt.exports={implementation:HTMLInputElementImpl}},2804:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLLIElementImpl extends tn{}Wt.exports={implementation:HTMLLIElementImpl}},26159:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;const nn=en(8002);const{domSymbolTree:an}=en(38542);const rn=en(7206);const{isLabelable:In,isDisabled:sn,isInteractiveContent:on}=en(10588);const{isInclusiveAncestor:cn}=en(39471);const{fireAnEvent:dn}=en(83350);function sendClickToAssociatedNode(Wt){dn("click",Wt,nn,{bubbles:true,cancelable:true,view:Wt.ownerDocument?Wt.ownerDocument.defaultView:null,screenX:0,screenY:0,clientX:0,clientY:0,button:0,detail:1,relatedTarget:null})}class HTMLLabelElementImpl extends tn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._hasActivationBehavior=true}get control(){if(this.hasAttributeNS(null,"for")){const Wt=this.getAttributeNS(null,"for");if(Wt===""){return null}const Pt=this.getRootNode({});for(const en of an.treeIterator(Pt)){if(en.nodeType===rn.ELEMENT_NODE&&en.getAttributeNS(null,"id")===Wt){return In(en)?en:null}}return null}for(const Wt of an.treeIterator(this)){if(In(Wt)){return Wt}}return null}get form(){const Wt=this.control;if(Wt){return Wt.form}return null}_activationBehavior(Wt){if(Wt.target&&Wt.target!==this&&cn(this,Wt.target)){for(const Pt of an.ancestorsIterator(Wt.target)){if(Pt===this){break}if(on(Pt)){return}}}const Pt=this.control;if(Pt&&!sn(Pt)){if(Wt.target&&cn(Pt,Wt.target)){return}sendClickToAssociatedNode(Pt)}}}Wt.exports={implementation:HTMLLabelElementImpl}},98778:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;const{formOwner:nn}=en(10588);const{HTML_NS:an}=en(98071);class HTMLLegendElementImpl extends tn{get form(){const Wt=this.parentNode;if(Wt&&Wt._localName==="fieldset"&&Wt.namespaceURI===an){return nn(Wt)}return null}}Wt.exports={implementation:HTMLLegendElementImpl}},7443:(Wt,Pt,en)=>{"use strict";const tn=en(24406);const nn=en(95927).implementation;const an=en(87094);const{fetchStylesheet:rn,removeStylesheet:In}=en(38454);const{parseURLToResultingURLRecord:sn}=en(30962);const on=en(78012);class HTMLLinkElementImpl extends nn{constructor(Wt,Pt,en){super(Wt,Pt,en);this.sheet=null}get relList(){if(this._relList===undefined){this._relList=tn.createImpl(this._globalObject,[],{element:this,attributeLocalName:"rel",supportedTokens:new Set(["stylesheet"])})}return this._relList}_attach(){super._attach();maybeFetchAndProcess(this)}_detach(){super._detach();if(this.sheet){In(this.sheet,this)}}_attrModified(Wt,Pt,en){super._attrModified(Wt,Pt,en);if(Wt==="href"){maybeFetchAndProcess(this)}if(Wt==="rel"&&this._relList!==undefined){this._relList.attrModified()}}get _accept(){return"text/css,*/*;q=0.1"}}Wt.exports={implementation:HTMLLinkElementImpl};function maybeFetchAndProcess(Wt){if(!isExternalResourceLink(Wt)){return}if(!Wt.isConnected||!Wt._ownerDocument._defaultView){return}fetchAndProcess(Wt)}function fetchAndProcess(Wt){const Pt=Wt.getAttributeNS(null,"href");if(Pt===null||Pt===""){return}const en=sn(Pt,Wt._ownerDocument);if(en===null){return}const tn=on.serializeURL(en);rn(Wt,tn)}function isExternalResourceLink(Wt){const Pt=an.wrapperForImpl(Wt);if(!/(?:[ \t\n\r\f]|^)stylesheet(?:[ \t\n\r\f]|$)/i.test(Pt.rel)){return false}return Wt.hasAttributeNS(null,"href")}},62859:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLMapElementImpl extends tn{get areas(){return this.getElementsByTagName("AREA")}}Wt.exports={implementation:HTMLMapElementImpl}},90157:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLMarqueeElementImpl extends tn{}Wt.exports={implementation:HTMLMarqueeElementImpl}},4229:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(95927).implementation;const an=en(8172);const{fireAnEvent:rn}=en(83350);function getTimeRangeDummy(){return{length:0,start(){return 0},end(){return 0}}}class HTMLMediaElementImpl extends nn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._muted=false;this._volume=1;this.readyState=0;this.networkState=0;this.currentTime=0;this.currentSrc="";this.buffered=getTimeRangeDummy();this.seeking=false;this.duration=NaN;this.paused=true;this.played=getTimeRangeDummy();this.seekable=getTimeRangeDummy();this.ended=false;this.audioTracks=[];this.videoTracks=[];this.textTracks=[]}get defaultPlaybackRate(){if(this._defaultPlaybackRate===undefined){return 1}return this._defaultPlaybackRate}set defaultPlaybackRate(Wt){if(Wt===0){throw tn.create(this._globalObject,["The operation is not supported.","NotSupportedError"])}if(this._defaultPlaybackRate!==Wt){this._defaultPlaybackRate=Wt;this._dispatchRateChange()}}get playbackRate(){if(this._playbackRate===undefined){return 1}return this._playbackRate}set playbackRate(Wt){if(Wt!==this._playbackRate){this._playbackRate=Wt;this._dispatchRateChange()}}get muted(){return this._muted}set muted(Wt){if(Wt!==this._muted){this._muted=Wt;this._dispatchVolumeChange()}}get defaultMuted(){return this.getAttributeNS(null,"muted")!==null}set defaultMuted(Wt){if(Wt){this.setAttributeNS(null,"muted",Wt)}else{this.removeAttributeNS(null,"muted")}}get volume(){return this._volume}set volume(Wt){if(Wt<0||Wt>1){throw tn.create(this._globalObject,["The index is not in the allowed range.","IndexSizeError"])}if(this._volume!==Wt){this._volume=Wt;this._dispatchVolumeChange()}}load(){an("HTMLMediaElement.prototype.load",this._ownerDocument._defaultView)}canPlayType(){return""}play(){an("HTMLMediaElement.prototype.play",this._ownerDocument._defaultView)}pause(){an("HTMLMediaElement.prototype.pause",this._ownerDocument._defaultView)}addTextTrack(){an("HTMLMediaElement.prototype.addTextTrack",this._ownerDocument._defaultView)}_dispatchRateChange(){rn("ratechange",this)}_dispatchVolumeChange(){rn("volumechange",this)}}Wt.exports={implementation:HTMLMediaElementImpl}},65088:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLMenuElementImpl extends tn{}Wt.exports={implementation:HTMLMenuElementImpl}},62406:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLMetaElementImpl extends tn{}Wt.exports={implementation:HTMLMetaElementImpl}},81016:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;const{parseFloatingPointNumber:nn}=en(97205);const{getLabelsForLabelable:an}=en(10588);class HTMLMeterElementImpl extends tn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._labels=null}get _minimumValue(){const Wt=this.getAttributeNS(null,"min");if(Wt!==null){const Pt=nn(Wt);if(Pt!==null){return Pt}}return 0}get _maximumValue(){let Wt=1;const Pt=this.getAttributeNS(null,"max");if(Pt!==null){const en=nn(Pt);if(en!==null){Wt=en}}const en=this._minimumValue;return Wt>=en?Wt:en}get _actualValue(){let Wt=0;const Pt=this.getAttributeNS(null,"value");if(Pt!==null){const en=nn(Pt);if(en!==null){Wt=en}}const en=this._minimumValue;if(Wttn?tn:Wt}get _lowBoundary(){const Wt=this._minimumValue;let Pt=Wt;const en=this.getAttributeNS(null,"low");if(en!==null){const Wt=nn(en);if(Wt!==null){Pt=Wt}}if(Pttn?tn:Pt}get _highBoundary(){const Wt=this._maximumValue;let Pt=Wt;const en=this.getAttributeNS(null,"high");if(en!==null){const Wt=nn(en);if(Wt!==null){Pt=Wt}}const tn=this._lowBoundary;if(PtWt?Wt:Pt}get _optimumPoint(){const Wt=this._minimumValue;const Pt=this._maximumValue;let en=(Wt+Pt)/2;const tn=this.getAttributeNS(null,"optimum");if(tn!==null){const Wt=nn(tn);if(Wt!==null){en=Wt}}if(enPt?Pt:en}get labels(){return an(this)}get value(){return this._actualValue}set value(Wt){this.setAttributeNS(null,"value",String(Wt))}get min(){return this._minimumValue}set min(Wt){this.setAttributeNS(null,"min",String(Wt))}get max(){return this._maximumValue}set max(Wt){this.setAttributeNS(null,"max",String(Wt))}get low(){return this._lowBoundary}set low(Wt){this.setAttributeNS(null,"low",String(Wt))}get high(){return this._highBoundary}set high(Wt){this.setAttributeNS(null,"high",String(Wt))}get optimum(){return this._optimumPoint}set optimum(Wt){this.setAttributeNS(null,"optimum",String(Wt))}}Wt.exports={implementation:HTMLMeterElementImpl}},79557:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLModElementImpl extends tn{}Wt.exports={implementation:HTMLModElementImpl}},4656:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLOListElementImpl extends tn{get start(){const Wt=parseInt(this.getAttributeNS(null,"start"));if(!isNaN(Wt)){return Wt}return 1}set start(Wt){this.setAttributeNS(null,"start",Wt)}}Wt.exports={implementation:HTMLOListElementImpl}},12096:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;const nn=en(95449).D;const{mixin:an}=en(35702);const{formOwner:rn}=en(10588);class HTMLObjectElementImpl extends tn{get form(){return rn(this)}get contentDocument(){return null}_barredFromConstraintValidationSpecialization(){return true}}an(HTMLObjectElementImpl.prototype,nn.prototype);Wt.exports={implementation:HTMLObjectElementImpl}},16175:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLOptGroupElementImpl extends tn{}Wt.exports={implementation:HTMLOptGroupElementImpl}},1002:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;const nn=en(7206);const{stripAndCollapseASCIIWhitespace:an}=en(97205);const{domSymbolTree:rn}=en(38542);const{HTML_NS:In,SVG_NS:sn}=en(98071);const{closest:on}=en(83521);const{formOwner:cn}=en(10588);class HTMLOptionElementImpl extends tn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._selectedness=false;this._dirtyness=false}_removeOtherSelectedness(){const Wt=this._selectNode;if(Wt&&!Wt.hasAttributeNS(null,"multiple")){for(const Pt of Wt.options){if(Pt!==this){Pt._selectedness=false}}}}_askForAReset(){const Wt=this._selectNode;if(Wt){Wt._askedForAReset()}}_attrModified(Wt,Pt,en){if(!this._dirtyness&&Wt==="selected"){this._selectedness=this.hasAttributeNS(null,"selected");if(this._selectedness){this._removeOtherSelectedness()}this._askForAReset()}super._attrModified(Wt,Pt,en)}get _selectNode(){let Wt=rn.parent(this);if(!Wt){return null}if(Wt.nodeName.toUpperCase()!=="SELECT"){Wt=rn.parent(Wt);if(!Wt||Wt.nodeName.toUpperCase()!=="SELECT"){return null}}return Wt}get form(){return cn(this)}get text(){return an(childTextContentExcludingDescendantsOfScript(this))}set text(Wt){this.textContent=Wt}_getValue(){if(this.hasAttributeNS(null,"value")){return this.getAttributeNS(null,"value")}return this.text}get value(){return this._getValue()}set value(Wt){this.setAttributeNS(null,"value",Wt)}get index(){const Wt=on(this,"select");if(Wt===null){return 0}return Wt.options.indexOf(this)}get selected(){return this._selectedness}set selected(Wt){this._dirtyness=true;this._selectedness=Boolean(Wt);if(this._selectedness){this._removeOtherSelectedness()}this._askForAReset();this._modified()}get label(){if(this.hasAttributeNS(null,"label")){return this.getAttributeNS(null,"label")}return this.text}set label(Wt){this.setAttributeNS(null,"label",Wt)}}function childTextContentExcludingDescendantsOfScript(Wt){let Pt="";for(const en of rn.childrenIterator(Wt)){if(en._localName==="script"&&(en._namespaceURI===In||en._namespaceURI===sn)){continue}if(en.nodeType===nn.TEXT_NODE||en.nodeType===nn.CDATA_SECTION_NODE){Pt+=en.nodeValue}else{Pt+=childTextContentExcludingDescendantsOfScript(en)}}return Pt}Wt.exports={implementation:HTMLOptionElementImpl}},1465:(Wt,Pt,en)=>{"use strict";const tn=en(87094);const nn=en(16694);const{DOCUMENT_POSITION_CONTAINS:an,DOCUMENT_POSITION_CONTAINED_BY:rn}=en(82759);const In=en(41423);const sn=en(24171);const on=en(76041).implementation;Pt.implementation=class HTMLOptionsCollectionImpl extends on{get length(){this._update();return this._list.length}set length(Wt){this._update();if(Wt>this._list.length){const Pt=this._element._ownerDocument;for(let en=this._list.length;en=Wt;Pt--){const Wt=this._list[Pt];this._element.removeChild(Wt)}}}get[tn.supportedPropertyNames](){this._update();const Wt=new Set;for(const Pt of this._list){Wt.add(Pt.getAttributeNS(null,"id"));Wt.add(Pt.getAttributeNS(null,"name"))}return Wt}[tn.indexedSetNew](Wt,Pt){if(Pt===null){this.remove(Wt);return}this._update();const{length:en}=this._list;const tn=Wt-en;if(tn>0){const Wt=this._element._ownerDocument;const Pt=Wt.createDocumentFragment();for(let en=0;en=0){this._element._append(Pt)}else{this._element._replace(Pt,this._list[Wt])}}[tn.indexedSetExisting](Wt,Pt){return this[tn.indexedSetNew](Wt,Pt)}add(Wt,Pt){if(this._element.compareDocumentPosition(Wt)&an){throw nn.create(this._globalObject,["The operation would yield an incorrect node tree.","HierarchyRequestError"])}if(In.isImpl(Pt)&&!(this._element.compareDocumentPosition(Pt)&rn)){throw nn.create(this._globalObject,["The object can not be found here.","NotFoundError"])}if(Wt===Pt){return}let en=null;if(sn.isImpl(Pt)){en=Pt}else if(typeof Pt==="number"){this._update();en=this._list[Pt]||null}const tn=en!==null?en.parentNode:this._element;tn._preInsert(Wt,en)}remove(Wt){this._update();if(this._list.length===0){return}if(Wt<0||Wt>=this._list.length){return}const Pt=this._list[Wt];Pt.parentNode._remove(Pt)}get selectedIndex(){return this._element.selectedIndex}set selectedIndex(Wt){this._element.selectedIndex=Wt}}},67712:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const{isSummaryForParentDetails:nn}=en(27677);const an=en(11483);const{HTML_NS:rn,SVG_NS:In}=en(98071);const sn=en(94258);const on=new Set(["a","area","button","frame","iframe","input","object","select","textarea"]);class HTMLOrSVGElementImpl{_initHTMLOrSVGElement(){this._tabIndex=0;this._dataset=sn.createImpl(this._globalObject,[],{element:this})}get dataset(){return this._dataset}get tabIndex(){if(!this.hasAttributeNS(null,"tabindex")){if(this.namespaceURI===rn&&(on.has(this._localName)||this._localName==="summary"&&nn(this))||this.namespaceURI===In&&this._localName==="a"){return 0}return-1}return tn.long(this.getAttributeNS(null,"tabindex"))}set tabIndex(Wt){this.setAttributeNS(null,"tabindex",String(Wt))}focus(){if(!an.isFocusableAreaElement(this)){return}const Wt=this._ownerDocument;const Pt=Wt._lastFocusedElement;if(Pt===this){return}Wt._lastFocusedElement=null;if(Pt){an.fireFocusEventWithTargetAdjustment("blur",Pt,this);an.fireFocusEventWithTargetAdjustment("focusout",Pt,this,{bubbles:true})}else{const Pt=Wt._defaultView._frameElement;if(Pt){const Wt=Pt.ownerDocument._lastFocusedElement;Pt.ownerDocument._lastFocusedElement=null;an.fireFocusEventWithTargetAdjustment("blur",Wt,null);an.fireFocusEventWithTargetAdjustment("focusout",Wt,null,{bubbles:true});Pt.ownerDocument._lastFocusedElement=Pt}}Wt._lastFocusedElement=this;an.fireFocusEventWithTargetAdjustment("focus",this,Pt);an.fireFocusEventWithTargetAdjustment("focusin",this,Pt,{bubbles:true})}blur(){if(this._ownerDocument._lastFocusedElement!==this||!an.isFocusableAreaElement(this)){return}this._ownerDocument._lastFocusedElement=null;an.fireFocusEventWithTargetAdjustment("blur",this,this._ownerDocument);an.fireFocusEventWithTargetAdjustment("focusout",this,this._ownerDocument,{bubbles:true});an.fireFocusEventWithTargetAdjustment("focus",this._ownerDocument,this);an.fireFocusEventWithTargetAdjustment("focusin",this._ownerDocument,this,{bubbles:true})}}Pt.D=HTMLOrSVGElementImpl},8138:(Wt,Pt,en)=>{"use strict";const tn=en(24406);const nn=en(95927).implementation;const an=en(95449).D;const{mixin:rn}=en(35702);const{getLabelsForLabelable:In,formOwner:sn}=en(10588);class HTMLOutputElementImpl extends nn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._labels=null;this._defaultValueOverride=null;this._customValidityErrorMessage=""}_attrModified(Wt,Pt,en){super._attrModified(Wt,Pt,en);if(Wt==="for"&&this._htmlFor!==undefined){this._htmlFor.attrModified()}}_barredFromConstraintValidationSpecialization(){return true}_formReset(){this.textContent=this.defaultValue;this._defaultValueOverride=null}get htmlFor(){if(this._htmlFor===undefined){this._htmlFor=tn.createImpl(this._globalObject,[],{element:this,attributeLocalName:"for"})}return this._htmlFor}get type(){return"output"}get labels(){return In(this)}get form(){return sn(this)}get value(){return this.textContent}set value(Wt){this._defaultValueOverride=this.defaultValue;this.textContent=Wt}get defaultValue(){if(this._defaultValueOverride!==null){return this._defaultValueOverride}return this.textContent}set defaultValue(Wt){if(this._defaultValueOverride===null){this.textContent=Wt;return}this._defaultValueOverride=Wt}}rn(HTMLOutputElementImpl.prototype,an.prototype);Wt.exports={implementation:HTMLOutputElementImpl}},62627:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLParagraphElementImpl extends tn{}Wt.exports={implementation:HTMLParagraphElementImpl}},4328:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLParamElementImpl extends tn{}Wt.exports={implementation:HTMLParamElementImpl}},42195:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLPictureElementImpl extends tn{}Wt.exports={implementation:HTMLPictureElementImpl}},79236:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLPreElementImpl extends tn{}Wt.exports={implementation:HTMLPreElementImpl}},17348:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;const{getLabelsForLabelable:nn}=en(10588);const{parseFloatingPointNumber:an}=en(97205);class HTMLProgressElementImpl extends tn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._labels=null}get _isDeterminate(){return this.hasAttributeNS(null,"value")}get _value(){const Wt=this.getAttributeNS(null,"value");if(Wt!==null){const Pt=an(Wt);if(Pt!==null&&Pt>0){return Pt}}return 0}get _currentValue(){const Wt=this._value;return Wt>this._maximumValue?this._maximumValue:Wt}get _maximumValue(){const Wt=this.getAttributeNS(null,"max");if(Wt!==null){const Pt=an(Wt);if(Pt!==null&&Pt>0){return Pt}}return 1}get value(){if(this._isDeterminate){return this._currentValue}return 0}set value(Wt){this.setAttributeNS(null,"value",Wt)}get position(){if(!this._isDeterminate){return-1}return this._currentValue/this._maximumValue}get labels(){return nn(this)}}Wt.exports={implementation:HTMLProgressElementImpl}},66081:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLQuoteElementImpl extends tn{}Wt.exports={implementation:HTMLQuoteElementImpl}},61856:(Wt,Pt,en)=>{"use strict";const tn=en(69154);const nn=en(86476);const an=en(59344);const{serializeURL:rn}=en(78012);const In=en(95927).implementation;const sn=en(12323);const{domSymbolTree:on,cloningSteps:cn}=en(38542);const{asciiLowercase:dn}=en(97205);const{childTextContent:un}=en(29200);const{parseURLToResultingURLRecord:pn}=en(30962);const mn=en(7206);const bn=new Set(["application/ecmascript","application/javascript","application/x-ecmascript","application/x-javascript","text/ecmascript","text/javascript","text/javascript1.0","text/javascript1.1","text/javascript1.2","text/javascript1.3","text/javascript1.4","text/javascript1.5","text/jscript","text/livescript","text/x-ecmascript","text/x-javascript"]);class HTMLScriptElementImpl extends In{constructor(Wt,Pt,en){super(Wt,Pt,en);this._alreadyStarted=false;this._parserInserted=false}_attach(){super._attach();if(!this._parserInserted||this._isMovingDueToDocumentWrite){this._eval()}}_canRunScript(){const Wt=this._ownerDocument;if(!Wt._defaultView||Wt._defaultView._runScripts!=="dangerously"||Wt._scriptingDisabled){return false}return true}_fetchExternalScript(){const Wt=this._ownerDocument;const Pt=Wt._resourceLoader;const en=nn.labelToName(this.getAttributeNS(null,"charset"))||Wt._encoding;let tn;if(!this._canRunScript()){return}const In=this.getAttributeNS(null,"src");const sn=pn(In,this._ownerDocument);if(sn===null){return}const on=rn(sn);const onLoadExternalScript=Wt=>{const{response:Pt}=tn;let rn;if(Pt&&Pt.statusCode!==undefined&&Pt.statusCode>=400){throw new Error("Status code: "+Pt.statusCode)}if(Pt){rn=an.parse(Pt.headers["content-type"])||new an("text/plain")}const In=nn.getBOMEncoding(Wt)||rn&&nn.labelToName(rn.parameters.get("charset"))||en;const sn=nn.decode(Wt,In);this._innerEval(sn,on)};tn=Pt.fetch(on,{element:this,onLoad:onLoadExternalScript})}_fetchInternalScript(){const Wt=this._ownerDocument;if(!this._canRunScript()){return}Wt._queue.push(null,(()=>{this._innerEval(this.text,Wt.URL)}),null,false,this)}_attrModified(Wt,Pt,en){super._attrModified(Wt,Pt,en);if(this._attached&&!this._startedEval&&Wt==="src"&&en===null&&Pt!==null){this._fetchExternalScript()}}_poppedOffStackOfOpenElements(){this._eval()}_eval(){if(this._alreadyStarted){return}if(!this.hasAttributeNS(null,"src")&&this.text.length===0){return}if(!this._attached){return}const Wt=this._getTypeString();const Pt=getType(Wt);if(Pt!=="classic"){return}this._alreadyStarted=true;if(this.hasAttributeNS(null,"src")){this._fetchExternalScript()}else{this._fetchInternalScript()}}_innerEval(Wt,Pt){this._ownerDocument._writeAfterElement=this;processJavaScript(this,Wt,Pt);delete this._ownerDocument._writeAfterElement}_getTypeString(){const Wt=this.getAttributeNS(null,"type");const Pt=this.getAttributeNS(null,"language");if(Wt===""){return"text/javascript"}if(Wt===null&&Pt===""){return"text/javascript"}if(Wt===null&&Pt===null){return"text/javascript"}if(Wt!==null){return Wt.trim()}if(Pt!==null){return"text/"+Pt}return null}get text(){return un(this)}set text(Wt){this.textContent=Wt}[cn](Wt,Pt){Wt._alreadyStarted=Pt._alreadyStarted}}function processJavaScript(Wt,Pt,en){const nn=Wt.ownerDocument;const an=nn&&nn._global;if(an){nn._currentScript=Wt;let rn=0;if(!Wt.hasAttributeNS(null,"src")){for(const Pt of on.childrenIterator(Wt)){if(Pt.nodeType===mn.TEXT_NODE){if(Pt.sourceCodeLocation){rn=Pt.sourceCodeLocation.startLine-1}break}}}try{tn.runInContext(Pt,an,{filename:en,lineOffset:rn,displayErrors:false})}catch(Wt){sn(an,Wt,en)}finally{nn._currentScript=null}}}function getType(Wt){const Pt=dn(Wt);if(bn.has(Pt)){return"classic"}if(Pt==="module"){return"module"}return null}Wt.exports={implementation:HTMLScriptElementImpl}},34143:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(87094);const an=en(47180);const rn=en(95449).D;const{mixin:In}=en(35702);const sn=en(95927).implementation;const on=en(7206);const cn=en(13506);const dn=en(71834);const{domSymbolTree:un}=en(38542);const{getLabelsForLabelable:pn,formOwner:mn,isDisabled:bn}=en(10588);const{parseNonNegativeInteger:Gn}=en(97205);class HTMLSelectElementImpl extends sn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._options=dn.createImpl(this._globalObject,[],{element:this,query:()=>{const Wt=[];for(const Pt of un.childrenIterator(this)){if(Pt._localName==="option"){Wt.push(Pt)}else if(Pt._localName==="optgroup"){for(const en of un.childrenIterator(Pt)){if(en._localName==="option"){Wt.push(en)}}}}return Wt}});this._selectedOptions=null;this._customValidityErrorMessage="";this._labels=null}_formReset(){for(const Wt of this.options){Wt._selectedness=Wt.hasAttributeNS(null,"selected");Wt._dirtyness=false}this._askedForAReset()}_askedForAReset(){if(this.hasAttributeNS(null,"multiple")){return}const Wt=this.options.filter((Wt=>Wt._selectedness));const Pt=this._displaySize;if(Pt===1&&!Wt.length){for(const Wt of this.options){let Pt=Wt.hasAttributeNS(null,"disabled");const en=un.parent(Wt);if(en&&en.nodeName.toUpperCase()==="OPTGROUP"&&en.hasAttributeNS(null,"disabled")){Pt=true}if(!Pt){Wt._selectedness=true;break}}}else if(Wt.length>=2){Wt.forEach(((Pt,en)=>{Pt._selectedness=en===Wt.length-1}))}}_descendantAdded(Wt,Pt){if(Pt.nodeType===on.ELEMENT_NODE){this._askedForAReset()}super._descendantAdded(Wt,Pt)}_descendantRemoved(Wt,Pt){if(Pt.nodeType===on.ELEMENT_NODE){this._askedForAReset()}super._descendantRemoved(Wt,Pt)}_attrModified(Wt,Pt,en){if(Wt==="multiple"||Wt==="size"){this._askedForAReset()}super._attrModified(Wt,Pt,en)}get _displaySize(){if(this.hasAttributeNS(null,"size")){const Wt=Gn(this.getAttributeNS(null,"size"));if(Wt!==null){return Wt}}return this.hasAttributeNS(null,"multiple")?4:1}get _mutable(){return!bn(this)}get options(){return this._options}get selectedOptions(){return cn.createImpl(this._globalObject,[],{element:this,query:()=>un.treeToArray(this,{filter:Wt=>Wt._localName==="option"&&Wt._selectedness===true})})}get selectedIndex(){for(let Wt=0;Wt0){Wt=tn.long(Wt,{context:"Failed to execute 'remove' on 'HTMLSelectElement': parameter 1"});this.options.remove(Wt)}else{super.remove()}}_barredFromConstraintValidationSpecialization(){return this.hasAttributeNS(null,"readonly")}get validity(){if(!this._validity){const Wt={valueMissing:()=>{if(!this.hasAttributeNS(null,"required")){return false}const Wt=this.selectedIndex;return Wt<0||Wt===0&&this._hasPlaceholderOption}};this._validity=an.createImpl(this._globalObject,[],{element:this,state:Wt})}return this._validity}get _hasPlaceholderOption(){return this.hasAttributeNS(null,"required")&&!this.hasAttributeNS(null,"multiple")&&this._displaySize===1&&this.options.length>0&&this.options.item(0).value===""&&this.options.item(0).parentNode._localName!=="optgroup"}}In(HTMLSelectElementImpl.prototype,rn.prototype);Wt.exports={implementation:HTMLSelectElementImpl}},80011:(Wt,Pt,en)=>{"use strict";const tn=en(87094);const nn=en(48708);const an=en(95927).implementation;const{nodeRoot:rn}=en(39471);const{assignSlotableForTree:In,findFlattenedSlotables:sn}=en(60470);class HTMLSlotElementImpl extends an{constructor(Wt,Pt,en){super(Wt,Pt,en);this._assignedNodes=[]}get name(){return this.getAttributeNS(null,"name")||""}_attrModified(Wt,Pt,en){super._attrModified(Wt,Pt,en);if(Wt==="name"){if(Pt===en){return}if(Pt===null&&en===""){return}if(Pt===""&&en===null){return}In(rn(this))}}assignedNodes(Wt){if(!Wt||!Wt.flatten){return this._assignedNodes.map(tn.wrapperForImpl)}return sn(this).map(tn.wrapperForImpl)}assignedElements(Wt){return this.assignedNodes(Wt).filter(nn.is)}}Wt.exports={implementation:HTMLSlotElementImpl}},51769:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLSourceElementImpl extends tn{}Wt.exports={implementation:HTMLSourceElementImpl}},76107:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLSpanElementImpl extends tn{}Wt.exports={implementation:HTMLSpanElementImpl}},6516:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;const{removeStylesheet:nn,createStylesheet:an}=en(38454);const{documentBaseURL:rn}=en(30962);const{childTextContent:In}=en(29200);const{asciiCaseInsensitiveMatch:sn}=en(97205);class HTMLStyleElementImpl extends tn{constructor(Wt,Pt,en){super(Wt,Pt,en);this.sheet=null;this._isOnStackOfOpenElements=false}_attach(){super._attach();if(!this._isOnStackOfOpenElements){this._updateAStyleBlock()}}_detach(){super._detach();if(!this._isOnStackOfOpenElements){this._updateAStyleBlock()}}_childTextContentChangeSteps(){super._childTextContentChangeSteps();if(!this._isOnStackOfOpenElements){this._updateAStyleBlock()}}_poppedOffStackOfOpenElements(){this._isOnStackOfOpenElements=false;this._updateAStyleBlock()}_pushedOnStackOfOpenElements(){this._isOnStackOfOpenElements=true}_updateAStyleBlock(){if(this.sheet){nn(this.sheet,this)}if(!this.isConnected||!this._ownerDocument._defaultView){return}const Wt=this.getAttributeNS(null,"type");if(Wt!==null&&Wt!==""&&!sn(Wt,"text/css")){return}const Pt=In(this);an(Pt,this,rn(this._ownerDocument))}}Wt.exports={implementation:HTMLStyleElementImpl}},5257:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLTableCaptionElementImpl extends tn{}Wt.exports={implementation:HTMLTableCaptionElementImpl}},67157:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;const{asciiLowercase:nn,parseNonNegativeInteger:an}=en(97205);const{closest:rn}=en(83521);function reflectedAttributeClampedToRange(Wt,Pt,en,tn=0){if(Wt===null){return tn}const nn=an(Wt);if(nn===null){return tn}if(nnen){return en}return nn}class HTMLTableCellElementImpl extends tn{get colSpan(){return reflectedAttributeClampedToRange(this.getAttributeNS(null,"colspan"),1,1e3,1)}set colSpan(Wt){this.setAttributeNS(null,"colspan",String(Wt))}get rowSpan(){return reflectedAttributeClampedToRange(this.getAttributeNS(null,"rowspan"),0,65534,1)}set rowSpan(Wt){this.setAttributeNS(null,"rowspan",String(Wt))}get cellIndex(){const Wt=rn(this,"tr");if(Wt===null){return-1}return Wt.cells.indexOf(this)}get scope(){let Wt=this.getAttributeNS(null,"scope");if(Wt===null){return""}Wt=nn(Wt);if(Wt==="row"||Wt==="col"||Wt==="rowgroup"||Wt==="colgroup"){return Wt}return""}set scope(Wt){this.setAttributeNS(null,"scope",Wt)}}Wt.exports={implementation:HTMLTableCellElementImpl}},9553:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLTableColElementImpl extends tn{}Wt.exports={implementation:HTMLTableColElementImpl}},9689:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(95927).implementation;const{HTML_NS:an}=en(98071);const{domSymbolTree:rn}=en(38542);const{firstChildWithLocalName:In,childrenByLocalName:sn}=en(83521);const on=en(13506);const cn=en(7206);function tHeadInsertionPoint(Wt){const Pt=rn.childrenIterator(Wt);for(const Wt of Pt){if(Wt.nodeType!==cn.ELEMENT_NODE){continue}if(Wt._namespaceURI!==an||Wt._localName!=="caption"&&Wt._localName!=="colgroup"){return Wt}}return null}class HTMLTableElementImpl extends nn{get caption(){return In(this,"caption")}set caption(Wt){const Pt=this.caption;if(Pt!==null){this.removeChild(Pt)}if(Wt!==null){const Pt=this.firstChild;this.insertBefore(Wt,Pt)}}get tHead(){return In(this,"thead")}set tHead(Wt){if(Wt!==null&&Wt._localName!=="thead"){throw tn.create(this._globalObject,["Cannot set a non-thead element as a table header","HierarchyRequestError"])}const Pt=this.tHead;if(Pt!==null){this.removeChild(Pt)}if(Wt!==null){const Pt=tHeadInsertionPoint(this);this.insertBefore(Wt,Pt)}}get tFoot(){return In(this,"tfoot")}set tFoot(Wt){if(Wt!==null&&Wt._localName!=="tfoot"){throw tn.create(this._globalObject,["Cannot set a non-tfoot element as a table footer","HierarchyRequestError"])}const Pt=this.tFoot;if(Pt!==null){this.removeChild(Pt)}if(Wt!==null){this.appendChild(Wt)}}get rows(){if(!this._rows){this._rows=on.createImpl(this._globalObject,[],{element:this,query:()=>{const Wt=[];const Pt=[];const en=[];const tn=rn.childrenIterator(this);for(const nn of tn){if(nn.nodeType!==cn.ELEMENT_NODE||nn._namespaceURI!==an){continue}if(nn._localName==="thead"){Wt.push(...sn(nn,"tr"))}else if(nn._localName==="tbody"){Pt.push(...sn(nn,"tr"))}else if(nn._localName==="tfoot"){en.push(...sn(nn,"tr"))}else if(nn._localName==="tr"){Pt.push(nn)}}return[...Wt,...Pt,...en]}})}return this._rows}get tBodies(){if(!this._tBodies){this._tBodies=on.createImpl(this._globalObject,[],{element:this,query:()=>sn(this,"tbody")})}return this._tBodies}createTBody(){const Wt=this._ownerDocument.createElement("TBODY");const Pt=sn(this,"tbody");const en=Pt[Pt.length-1];if(en){this.insertBefore(Wt,en.nextSibling)}else{this.appendChild(Wt)}return Wt}createTHead(){let Wt=this.tHead;if(!Wt){Wt=this.tHead=this._ownerDocument.createElement("THEAD")}return Wt}deleteTHead(){this.tHead=null}createTFoot(){let Wt=this.tFoot;if(!Wt){Wt=this.tFoot=this._ownerDocument.createElement("TFOOT")}return Wt}deleteTFoot(){this.tFoot=null}createCaption(){let Wt=this.caption;if(!Wt){Wt=this.caption=this._ownerDocument.createElement("CAPTION")}return Wt}deleteCaption(){const Wt=this.caption;if(Wt){Wt.parentNode.removeChild(Wt)}}insertRow(Wt){if(Wt<-1||Wt>this.rows.length){throw tn.create(this._globalObject,["Cannot insert a row at an index that is less than -1 or greater than the number of existing rows","IndexSizeError"])}const Pt=this._ownerDocument.createElement("tr");if(this.rows.length===0&&this.tBodies.length===0){const Wt=this._ownerDocument.createElement("tbody");Wt.appendChild(Pt);this.appendChild(Wt)}else if(this.rows.length===0){const Wt=this.tBodies.item(this.tBodies.length-1);Wt.appendChild(Pt)}else if(Wt===-1||Wt===this.rows.length){const Wt=this.rows.item(this.rows.length-1).parentNode;Wt.appendChild(Pt)}else{const en=this.rows.item(Wt);const tn=en.parentNode;tn.insertBefore(Pt,en)}return Pt}deleteRow(Wt){const Pt=this.rows.length;if(Wt<-1||Wt>=Pt){throw tn.create(this._globalObject,[`Cannot delete a row at index ${Wt}, where no row exists`,"IndexSizeError"])}if(Wt===-1){if(Pt===0){return}Wt=Pt-1}const en=this.rows.item(Wt);en.parentNode.removeChild(en)}}Wt.exports={implementation:HTMLTableElementImpl}},91119:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(95927).implementation;const an=en(13506);const{HTML_NS:rn}=en(98071);const{childrenByLocalNames:In}=en(83521);const{domSymbolTree:sn}=en(38542);const on=new Set(["td","th"]);class HTMLTableRowElementImpl extends nn{get cells(){if(!this._cells){this._cells=an.createImpl(this._globalObject,[],{element:this,query:()=>In(this,on)})}return this._cells}get rowIndex(){const Wt=this.parentElement;if(Wt===null||Wt.namespaceURI!==rn){return-1}let Pt=Wt;if(Wt.localName==="thead"||Wt.localName==="tbody"||Wt.localName==="tfoot"){Pt=Wt.parentElement}if(Pt===null||Pt.namespaceURI!==rn||Pt.localName!=="table"){return-1}return Pt.rows.indexOf(this)}get sectionRowIndex(){const Wt=sn.parent(this);if(Wt===null){return-1}const{rows:Pt}=Wt;if(!Pt){return-1}return Pt.indexOf(this)}insertCell(Wt){const Pt=this._ownerDocument.createElement("TD");const{cells:en}=this;if(Wt<-1||Wt>en.length){throw tn.create(this._globalObject,["The index is not in the allowed range.","IndexSizeError"])}if(Wt===-1||Wt===en.length){this._append(Pt)}else{const tn=en.item(Wt);this._insert(Pt,tn)}return Pt}deleteCell(Wt){const{cells:Pt}=this;if(Wt<-1||Wt>=Pt.length){throw tn.create(this._globalObject,["The index is not in the allowed range.","IndexSizeError"])}if(Wt===-1){if(Pt.length===0){return}Wt=Pt.length-1}const en=Pt.item(Wt);this._remove(en)}}Wt.exports={implementation:HTMLTableRowElementImpl}},55264:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;const{childrenByLocalName:nn}=en(83521);const an=en(13506);const rn=en(16694);class HTMLTableSectionElementImpl extends tn{get rows(){if(!this._rows){this._rows=an.createImpl(this._globalObject,[],{element:this,query:()=>nn(this,"tr")})}return this._rows}insertRow(Wt){if(Wt<-1||Wt>this.rows.length){throw rn.create(this._globalObject,["Cannot insert a row at an index that is less than -1 or greater than the number of existing rows","IndexSizeError"])}const Pt=this._ownerDocument.createElement("tr");if(Wt===-1||Wt===this.rows.length){this._append(Pt)}else{const en=this.rows.item(Wt);this._insert(Pt,en)}return Pt}deleteRow(Wt){if(Wt<-1||Wt>=this.rows.length){throw rn.create(this._globalObject,[`Cannot delete a row at index ${Wt}, where no row exists`,"IndexSizeError"])}if(Wt===-1){if(this.rows.length>0){const Wt=this.rows.item(this.rows.length-1);this._remove(Wt)}}else{const Pt=this.rows.item(Wt);this._remove(Pt)}}}Wt.exports={implementation:HTMLTableSectionElementImpl}},86029:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;const nn=en(18946);const an=en(98938);const{cloningSteps:rn,domSymbolTree:In}=en(38542);const{clone:sn}=en(85621);class HTMLTemplateElementImpl extends tn{constructor(Wt,Pt,en){super(Wt,Pt,en);const tn=this._appropriateTemplateContentsOwnerDocument(this._ownerDocument);this._templateContents=an.createImpl(this._globalObject,[],{ownerDocument:tn,host:this})}_appropriateTemplateContentsOwnerDocument(Wt){if(!Wt._isInertTemplateDocument){if(Wt._associatedInertTemplateDocument===undefined){const Pt=nn.createImpl(this._globalObject,[],{options:{parsingMode:Wt._parsingMode,encoding:Wt._encoding}});Pt._isInertTemplateDocument=true;Wt._associatedInertTemplateDocument=Pt}Wt=Wt._associatedInertTemplateDocument}return Wt}_adoptingSteps(){const Wt=this._appropriateTemplateContentsOwnerDocument(this._ownerDocument);Wt._adoptNode(this._templateContents)}get content(){return this._templateContents}[rn](Wt,Pt,en,tn){if(!tn){return}for(const en of In.childrenIterator(Pt._templateContents)){const Pt=sn(en,Wt._templateContents._ownerDocument,true);Wt._templateContents.appendChild(Pt)}}}Wt.exports={implementation:HTMLTemplateElementImpl}},46285:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;const nn=en(95449).D;const an=en(47180);const{mixin:rn}=en(35702);const In=en(16694);const{cloningSteps:sn}=en(38542);const{isDisabled:on,getLabelsForLabelable:cn,formOwner:dn}=en(10588);const{childTextContent:un}=en(29200);const{fireAnEvent:pn}=en(83350);class HTMLTextAreaElementImpl extends tn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._selectionStart=this._selectionEnd=0;this._selectionDirection="none";this._rawValue="";this._dirtyValue=false;this._customValidityErrorMessage="";this._labels=null}_formReset(){this._rawValue=un(this);this._dirtyValue=false}_getAPIValue(){return this._rawValue.replace(/\r\n/g,"\n").replace(/\r/g,"\n")}_getValue(){const Wt=this._getAPIValue();const Pt=this.getAttributeNS(null,"wrap");return Pt==="hard"?textareaWrappingTransformation(Wt,this.getAttributeNS(null,"cols")??20):Wt}_childTextContentChangeSteps(){super._childTextContentChangeSteps();if(this._dirtyValue===false){this._rawValue=un(this)}}get labels(){return cn(this)}get form(){return dn(this)}get defaultValue(){return un(this)}set defaultValue(Wt){this.textContent=Wt}get value(){return this._getAPIValue()}set value(Wt){const Pt=this._getAPIValue();this._rawValue=Wt;this._dirtyValue=true;if(Pt!==this._getAPIValue()){this._selectionStart=this._selectionEnd=this._getValueLength();this._selectionDirection="none"}}get textLength(){return this.value.length}get type(){return"textarea"}_dispatchSelectEvent(){setTimeout((()=>pn("select",this,undefined,{bubbles:true,cancelable:false})),0)}_getValueLength(){return typeof this.value==="string"?this.value.length:0}select(){this._selectionStart=0;this._selectionEnd=this._getValueLength();this._selectionDirection="none";this._dispatchSelectEvent()}get selectionStart(){return this._selectionStart}set selectionStart(Wt){this.setSelectionRange(Wt,Math.max(Wt,this._selectionEnd),this._selectionDirection)}get selectionEnd(){return this._selectionEnd}set selectionEnd(Wt){this.setSelectionRange(this._selectionStart,Wt,this._selectionDirection)}get selectionDirection(){return this._selectionDirection}set selectionDirection(Wt){this.setSelectionRange(this._selectionStart,this._selectionEnd,Wt)}setSelectionRange(Wt,Pt,en){this._selectionEnd=Math.min(Pt,this._getValueLength());this._selectionStart=Math.min(Wt,this._selectionEnd);this._selectionDirection=en==="forward"||en==="backward"?en:"none";this._dispatchSelectEvent()}setRangeText(Wt,Pt,en,tn="preserve"){if(arguments.length<2){Pt=this._selectionStart;en=this._selectionEnd}else if(Pt>en){throw In.create(this._globalObject,["The index is not in the allowed range.","IndexSizeError"])}Pt=Math.min(Pt,this._getValueLength());en=Math.min(en,this._getValueLength());const nn=this.value;let an=this._selectionStart;let rn=this._selectionEnd;this.value=nn.slice(0,Pt)+Wt+nn.slice(en);const sn=Pt+Wt.length;if(tn==="select"){this.setSelectionRange(Pt,sn)}else if(tn==="start"){this.setSelectionRange(Pt,Pt)}else if(tn==="end"){this.setSelectionRange(sn,sn)}else{const tn=Wt.length-(en-Pt);if(an>en){an+=tn}else if(an>Pt){an=Pt}if(rn>en){rn+=tn}else if(rn>Pt){rn=sn}this.setSelectionRange(an,rn)}}_barredFromConstraintValidationSpecialization(){return this.hasAttributeNS(null,"readonly")}get _mutable(){return!on(this)&&!this.hasAttributeNS(null,"readonly")}get validity(){if(!this._validity){const Wt={valueMissing:()=>this.hasAttributeNS(null,"required")&&this._mutable&&this.value===""};this._validity=an.createImpl(this._globalObject,[],{element:this,state:Wt})}return this._validity}[sn](Wt,Pt){Wt._dirtyValue=Pt._dirtyValue;Wt._rawValue=Pt._rawValue}}rn(HTMLTextAreaElementImpl.prototype,nn.prototype);Wt.exports={implementation:HTMLTextAreaElementImpl};function textareaWrappingTransformation(Wt,Pt){let en=0;let tn=Wt.indexOf("\n");if(tn===-1){tn=Wt.length}while(enPt){tn=en+Pt;Wt=Wt.slice(0,tn)+"\n"+Wt.slice(tn)}en=tn+1;tn=Wt.indexOf("\n",en);if(tn===-1){tn=Wt.length}}return Wt}},81914:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLTimeElementImpl extends tn{}Wt.exports={implementation:HTMLTimeElementImpl}},93891:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;const{childTextContent:nn}=en(29200);class HTMLTitleElementImpl extends tn{get text(){return nn(this)}set text(Wt){this.textContent=Wt}}Wt.exports={implementation:HTMLTitleElementImpl}},55266:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLTrackElementImpl extends tn{get readyState(){return 0}}Wt.exports={implementation:HTMLTrackElementImpl}},63174:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLUListElementImpl extends tn{}Wt.exports={implementation:HTMLUListElementImpl}},64675:(Wt,Pt,en)=>{"use strict";const tn=en(95927).implementation;class HTMLUnknownElementImpl extends tn{}Wt.exports={implementation:HTMLUnknownElementImpl}},2242:(Wt,Pt,en)=>{"use strict";const tn=en(4229).implementation;class HTMLVideoElementImpl extends tn{get videoWidth(){return 0}get videoHeight(){return 0}}Wt.exports={implementation:HTMLVideoElementImpl}},52746:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(92697).implementation;const{simultaneousIterators:an}=en(35702);const rn=en(7206);const In=en(82759);const{clone:sn,locateNamespacePrefix:on,locateNamespace:cn}=en(85621);const{setAnExistingAttributeValue:dn}=en(69936);const un=en(49747);const{nodeRoot:pn,nodeLength:mn,isInclusiveAncestor:bn}=en(39471);const{domSymbolTree:Gn}=en(38542);const{documentBaseURLSerialized:hn}=en(30962);const{queueTreeMutationRecord:Zn}=en(69358);const{enqueueCECallbackReaction:An,tryUpgradeElement:Wn}=en(8348);const{isShadowRoot:Nn,shadowIncludingRoot:gn,assignSlot:yn,assignSlotableForTree:vn,assignSlotable:Yn,signalSlotChange:En,isSlot:Vn,shadowIncludingInclusiveDescendantsIterator:Rn,shadowIncludingDescendantsIterator:wn}=en(60470);const{invalidateStyleCache:Fn}=en(86024);function nodeEquals(Wt,Pt){if(Wt.nodeType!==Pt.nodeType){return false}switch(Wt.nodeType){case rn.DOCUMENT_TYPE_NODE:if(Wt.name!==Pt.name||Wt.publicId!==Pt.publicId||Wt.systemId!==Pt.systemId){return false}break;case rn.ELEMENT_NODE:if(Wt._namespaceURI!==Pt._namespaceURI||Wt._prefix!==Pt._prefix||Wt._localName!==Pt._localName||Wt._attributes.length!==Pt._attributes.length){return false}break;case rn.ATTRIBUTE_NODE:if(Wt._namespace!==Pt._namespace||Wt._localName!==Pt._localName||Wt._value!==Pt._value){return false}break;case rn.PROCESSING_INSTRUCTION_NODE:if(Wt._target!==Pt._target||Wt._data!==Pt._data){return false}break;case rn.TEXT_NODE:case rn.COMMENT_NODE:if(Wt._data!==Pt._data){return false}break}if(Wt.nodeType===rn.ELEMENT_NODE&&!attributeListsEqual(Wt,Pt)){return false}for(const en of an(Gn.childrenIterator(Wt),Gn.childrenIterator(Pt))){if(!en[0]||!en[1]){return false}if(!nodeEquals(en[0],en[1])){return false}}return true}function attributeListsEqual(Wt,Pt){const en=Wt._attributeList;const tn=Pt._attributeList;const nn=en.length;const an=tn.length;if(nn!==an){return false}for(let Wt=0;WtnodeEquals(Pt,Wt)))){return false}}return true}function isHostInclusiveAncestor(Wt,Pt){for(const en of Gn.ancestorsIterator(Pt)){if(en===Wt){return true}}const en=pn(Pt);if(en._host){return isHostInclusiveAncestor(Wt,en._host)}return false}class NodeImpl extends nn{constructor(Wt,Pt,en){super(Wt,Pt,en);Gn.initialize(this);this._ownerDocument=en.ownerDocument;this._childNodesList=null;this._childrenList=null;this._version=0;this._memoizedQueries={};this._registeredObserverList=[];this._referencedRanges=new Set}_getTheParent(){if(this._assignedSlot){return this._assignedSlot}return Gn.parent(this)}get parentNode(){return Gn.parent(this)}getRootNode(Wt){return Wt.composed?gn(this):pn(this)}get nodeName(){switch(this.nodeType){case rn.ELEMENT_NODE:return this.tagName;case rn.ATTRIBUTE_NODE:return this._qualifiedName;case rn.TEXT_NODE:return"#text";case rn.CDATA_SECTION_NODE:return"#cdata-section";case rn.PROCESSING_INSTRUCTION_NODE:return this.target;case rn.COMMENT_NODE:return"#comment";case rn.DOCUMENT_NODE:return"#document";case rn.DOCUMENT_TYPE_NODE:return this.name;case rn.DOCUMENT_FRAGMENT_NODE:return"#document-fragment"}return null}get firstChild(){return Gn.firstChild(this)}get isConnected(){const Wt=gn(this);return Wt&&Wt.nodeType===rn.DOCUMENT_NODE}get ownerDocument(){return this.nodeType===rn.DOCUMENT_NODE?null:this._ownerDocument}get lastChild(){return Gn.lastChild(this)}get childNodes(){if(!this._childNodesList){this._childNodesList=un.createImpl(this._globalObject,[],{element:this,query:()=>Gn.childrenToArray(this)})}else{this._childNodesList._update()}return this._childNodesList}get nextSibling(){return Gn.nextSibling(this)}get previousSibling(){return Gn.previousSibling(this)}_modified(){this._version++;for(const Wt of Gn.ancestorsIterator(this)){Wt._version++}if(this._childrenList){this._childrenList._update()}if(this._childNodesList){this._childNodesList._update()}this._clearMemoizedQueries();Fn(this)}_childTextContentChangeSteps(){Fn(this)}_clearMemoizedQueries(){this._memoizedQueries={};const Wt=Gn.parent(this);if(Wt){Wt._clearMemoizedQueries()}}_descendantRemoved(Wt,Pt){const en=Gn.parent(this);if(en){en._descendantRemoved(Wt,Pt)}}_descendantAdded(Wt,Pt){const en=Gn.parent(this);if(en){en._descendantAdded(Wt,Pt)}}_attach(){this._attached=true;for(const Wt of Gn.childrenIterator(this)){if(Wt._attach){Wt._attach()}}}_detach(){this._attached=false;if(this._ownerDocument&&this._ownerDocument._lastFocusedElement===this){this._ownerDocument._lastFocusedElement=null}for(const Wt of Gn.childrenIterator(this)){if(Wt._detach){Wt._detach()}}}hasChildNodes(){return Gn.hasChildren(this)}normalize(){for(const Wt of Gn.treeToArray(this)){const Pt=Gn.parent(Wt);if(Pt===null||Wt.nodeType!==rn.TEXT_NODE){continue}let en=mn(Wt);if(en===0){Pt._remove(Wt);continue}const tn=[];for(const Pt of Gn.previousSiblingsIterator(Wt)){if(Pt.nodeType!==rn.TEXT_NODE){break}tn.unshift(Pt)}for(const Pt of Gn.nextSiblingsIterator(Wt)){if(Pt.nodeType!==rn.TEXT_NODE){break}tn.push(Pt)}const nn=tn.reduce(((Wt,Pt)=>Wt+Pt._data),"");Wt.replaceData(en,0,nn);let an=Gn.nextSibling(Wt);while(an&&an.nodeType===rn.TEXT_NODE){const tn=Gn.index(an);for(const Pt of Wt._referencedRanges){const{_start:tn,_end:nn}=Pt;if(tn.node===an){Pt._setLiveRangeStart(Wt,tn.offset+en)}if(nn.node===an){Pt._setLiveRangeEnd(Wt,nn.offset+en)}}for(const nn of Pt._referencedRanges){const{_start:an,_end:rn}=nn;if(an.node===Pt&&an.offset===tn){nn._setLiveRangeStart(Wt,en)}if(rn.node===Pt&&rn.offset===tn){nn._setLiveRangeEnd(Wt,en)}}en+=mn(an);an=Gn.nextSibling(an)}for(const Wt of tn){Pt._remove(Wt)}}}get parentElement(){const Wt=Gn.parent(this);return Wt!==null&&Wt.nodeType===rn.ELEMENT_NODE?Wt:null}get baseURI(){return hn(this._ownerDocument)}compareDocumentPosition(Wt){let Pt=Wt;let en=this;let tn=null;let nn=null;if(Pt.nodeType===rn.ATTRIBUTE_NODE){tn=Pt;Pt=tn._element}if(en.nodeType===rn.ATTRIBUTE_NODE){nn=en;en=nn._element;if(tn!==null&&Pt!==null&&en===Pt){for(const Wt of en._attributeList){if(nodeEquals(Wt,tn)){return In.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC|In.DOCUMENT_POSITION_PRECEDING}if(nodeEquals(Wt,nn)){return In.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC|In.DOCUMENT_POSITION_FOLLOWING}}}}const an=Gn.compareTreePosition(en,Pt);if(an===In.DOCUMENT_POSITION_DISCONNECTED){return In.DOCUMENT_POSITION_DISCONNECTED|In.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC|In.DOCUMENT_POSITION_FOLLOWING}return an}lookupPrefix(Wt){if(Wt===null||Wt===""){return null}switch(this.nodeType){case rn.ELEMENT_NODE:{return on(this,Wt)}case rn.DOCUMENT_NODE:{return this.documentElement!==null?on(this.documentElement,Wt):null}case rn.DOCUMENT_TYPE_NODE:case rn.DOCUMENT_FRAGMENT_NODE:{return null}case rn.ATTRIBUTE_NODE:{return this._element!==null?on(this._element,Wt):null}default:{return this.parentElement!==null?on(this.parentElement,Wt):null}}}lookupNamespaceURI(Wt){if(Wt===""){Wt=null}return cn(this,Wt)}isDefaultNamespace(Wt){if(Wt===""){Wt=null}const Pt=cn(this,null);return Pt===Wt}contains(Wt){return bn(this,Wt)}isEqualNode(Wt){if(Wt===null){return false}if(this===Wt){return true}return nodeEquals(this,Wt)}isSameNode(Wt){if(this===Wt){return true}return false}cloneNode(Wt){if(Nn(this)){throw tn.create(this._globalObject,["ShadowRoot nodes are not clonable.","NotSupportedError"])}Wt=Boolean(Wt);return sn(this,undefined,Wt)}get nodeValue(){switch(this.nodeType){case rn.ATTRIBUTE_NODE:{return this._value}case rn.TEXT_NODE:case rn.CDATA_SECTION_NODE:case rn.PROCESSING_INSTRUCTION_NODE:case rn.COMMENT_NODE:{return this._data}default:{return null}}}set nodeValue(Wt){if(Wt===null){Wt=""}switch(this.nodeType){case rn.ATTRIBUTE_NODE:{dn(this,Wt);break}case rn.TEXT_NODE:case rn.CDATA_SECTION_NODE:case rn.PROCESSING_INSTRUCTION_NODE:case rn.COMMENT_NODE:{this.replaceData(0,this.length,Wt);break}}}get textContent(){switch(this.nodeType){case rn.DOCUMENT_FRAGMENT_NODE:case rn.ELEMENT_NODE:{let Wt="";for(const Pt of Gn.treeIterator(this)){if(Pt.nodeType===rn.TEXT_NODE||Pt.nodeType===rn.CDATA_SECTION_NODE){Wt+=Pt.nodeValue}}return Wt}case rn.ATTRIBUTE_NODE:{return this._value}case rn.TEXT_NODE:case rn.CDATA_SECTION_NODE:case rn.PROCESSING_INSTRUCTION_NODE:case rn.COMMENT_NODE:{return this._data}default:{return null}}}set textContent(Wt){if(Wt===null){Wt=""}switch(this.nodeType){case rn.DOCUMENT_FRAGMENT_NODE:case rn.ELEMENT_NODE:{let Pt=null;if(Wt!==""){Pt=this._ownerDocument.createTextNode(Wt)}this._replaceAll(Pt);break}case rn.ATTRIBUTE_NODE:{dn(this,Wt);break}case rn.TEXT_NODE:case rn.CDATA_SECTION_NODE:case rn.PROCESSING_INSTRUCTION_NODE:case rn.COMMENT_NODE:{this.replaceData(0,this.length,Wt);break}}}insertBefore(Wt,Pt){return this._preInsert(Wt,Pt)}appendChild(Wt){return this._append(Wt)}replaceChild(Wt,Pt){return this._replace(Wt,Pt)}removeChild(Wt){return this._preRemove(Wt)}_preInsertValidity(Wt,Pt){const{nodeType:en,nodeName:nn}=Wt;const{nodeType:an,nodeName:In}=this;if(an!==rn.DOCUMENT_NODE&&an!==rn.DOCUMENT_FRAGMENT_NODE&&an!==rn.ELEMENT_NODE){throw tn.create(this._globalObject,[`Node can't be inserted in a ${In} parent.`,"HierarchyRequestError"])}if(isHostInclusiveAncestor(Wt,this)){throw tn.create(this._globalObject,["The operation would yield an incorrect node tree.","HierarchyRequestError"])}if(Pt&&Gn.parent(Pt)!==this){throw tn.create(this._globalObject,["The child can not be found in the parent.","NotFoundError"])}if(en!==rn.DOCUMENT_FRAGMENT_NODE&&en!==rn.DOCUMENT_TYPE_NODE&&en!==rn.ELEMENT_NODE&&en!==rn.TEXT_NODE&&en!==rn.CDATA_SECTION_NODE&&en!==rn.PROCESSING_INSTRUCTION_NODE&&en!==rn.COMMENT_NODE){throw tn.create(this._globalObject,[`${nn} node can't be inserted in parent node.`,"HierarchyRequestError"])}if(en===rn.TEXT_NODE&&an===rn.DOCUMENT_NODE||en===rn.DOCUMENT_TYPE_NODE&&an!==rn.DOCUMENT_NODE){throw tn.create(this._globalObject,[`${nn} node can't be inserted in ${In} parent.`,"HierarchyRequestError"])}if(an===rn.DOCUMENT_NODE){const an=Gn.childrenToArray(Wt);const sn=Gn.childrenToArray(this);switch(en){case rn.DOCUMENT_FRAGMENT_NODE:{const Wt=an.filter((Wt=>Wt.nodeType===rn.ELEMENT_NODE));if(Wt.length>1){throw tn.create(this._globalObject,[`Invalid insertion of ${nn} node in ${In} node.`,"HierarchyRequestError"])}const en=an.some((Wt=>Wt.nodeType===rn.TEXT_NODE));if(en){throw tn.create(this._globalObject,[`Invalid insertion of ${nn} node in ${In} node.`,"HierarchyRequestError"])}if(Wt.length===1&&(sn.some((Wt=>Wt.nodeType===rn.ELEMENT_NODE))||Pt&&Pt.nodeType===rn.DOCUMENT_TYPE_NODE||Pt&&Gn.nextSibling(Pt)&&Gn.nextSibling(Pt).nodeType===rn.DOCUMENT_TYPE_NODE)){throw tn.create(this._globalObject,[`Invalid insertion of ${nn} node in ${In} node.`,"HierarchyRequestError"])}break}case rn.ELEMENT_NODE:if(sn.some((Wt=>Wt.nodeType===rn.ELEMENT_NODE))||Pt&&Pt.nodeType===rn.DOCUMENT_TYPE_NODE||Pt&&Gn.nextSibling(Pt)&&Gn.nextSibling(Pt).nodeType===rn.DOCUMENT_TYPE_NODE){throw tn.create(this._globalObject,[`Invalid insertion of ${nn} node in ${In} node.`,"HierarchyRequestError"])}break;case rn.DOCUMENT_TYPE_NODE:if(sn.some((Wt=>Wt.nodeType===rn.DOCUMENT_TYPE_NODE))||Pt&&Gn.previousSibling(Pt)&&Gn.previousSibling(Pt).nodeType===rn.ELEMENT_NODE||!Pt&&sn.some((Wt=>Wt.nodeType===rn.ELEMENT_NODE))){throw tn.create(this._globalObject,[`Invalid insertion of ${nn} node in ${In} node.`,"HierarchyRequestError"])}break}}}_preInsert(Wt,Pt){this._preInsertValidity(Wt,Pt);let en=Pt;if(en===Wt){en=Gn.nextSibling(Wt)}this._ownerDocument._adoptNode(Wt);this._insert(Wt,en);return Wt}_insert(Wt,Pt,en){const tn=Wt.nodeType===rn.DOCUMENT_FRAGMENT_NODE?Gn.childrenCount(Wt):1;if(Pt){const Wt=Gn.index(Pt);for(const Pt of this._referencedRanges){const{_start:en,_end:nn}=Pt;if(en.offset>Wt){Pt._setLiveRangeStart(this,en.offset+tn)}if(nn.offset>Wt){Pt._setLiveRangeEnd(this,nn.offset+tn)}}}const nn=Wt.nodeType===rn.DOCUMENT_FRAGMENT_NODE?Gn.childrenToArray(Wt):[Wt];if(Wt.nodeType===rn.DOCUMENT_FRAGMENT_NODE){let Pt;while(Pt=Gn.firstChild(Wt)){Wt._remove(Pt,true)}}if(Wt.nodeType===rn.DOCUMENT_FRAGMENT_NODE){Zn(Wt,[],nn,null,null)}const an=Pt?Gn.previousSibling(Pt):Gn.lastChild(this);let In;for(const en of nn){if(!Pt){Gn.appendChild(this,en)}else{Gn.insertBefore(Pt,en)}if(this.nodeType===rn.ELEMENT_NODE&&this._shadowRoot!==null&&(en.nodeType===rn.ELEMENT_NODE||en.nodeType===rn.TEXT_NODE)){yn(en)}this._modified();if(en.nodeType===rn.TEXT_NODE||en.nodeType===rn.CDATA_SECTION_NODE){this._childTextContentChangeSteps()}if(Vn(this)&&this._assignedNodes.length===0&&Nn(pn(this))){En(this)}const tn=pn(en);if(Nn(tn)){vn(tn)}if(this._attached&&Wt._attach){en._attach()}this._descendantAdded(this,en);if(In===undefined){In=en.isConnected}if(In){for(const Wt of Rn(en)){if(Wt._ceState==="custom"){An(Wt,"connectedCallback",[])}else{Wn(Wt)}}}}if(!en){Zn(this,nn,[],an,Pt)}}_append(Wt){return this._preInsert(Wt,null)}_replace(Wt,Pt){const{nodeType:en,nodeName:nn}=Wt;const{nodeType:an,nodeName:In}=this;if(an!==rn.DOCUMENT_NODE&&an!==rn.DOCUMENT_FRAGMENT_NODE&&an!==rn.ELEMENT_NODE){throw tn.create(this._globalObject,[`Node can't be inserted in a ${In} parent.`,"HierarchyRequestError"])}if(isHostInclusiveAncestor(Wt,this)){throw tn.create(this._globalObject,["The operation would yield an incorrect node tree.","HierarchyRequestError"])}if(Pt&&Gn.parent(Pt)!==this){throw tn.create(this._globalObject,["The child can not be found in the parent.","NotFoundError"])}if(en!==rn.DOCUMENT_FRAGMENT_NODE&&en!==rn.DOCUMENT_TYPE_NODE&&en!==rn.ELEMENT_NODE&&en!==rn.TEXT_NODE&&en!==rn.CDATA_SECTION_NODE&&en!==rn.PROCESSING_INSTRUCTION_NODE&&en!==rn.COMMENT_NODE){throw tn.create(this._globalObject,[`${nn} node can't be inserted in parent node.`,"HierarchyRequestError"])}if(en===rn.TEXT_NODE&&an===rn.DOCUMENT_NODE||en===rn.DOCUMENT_TYPE_NODE&&an!==rn.DOCUMENT_NODE){throw tn.create(this._globalObject,[`${nn} node can't be inserted in ${In} parent.`,"HierarchyRequestError"])}if(an===rn.DOCUMENT_NODE){const an=Gn.childrenToArray(Wt);const sn=Gn.childrenToArray(this);switch(en){case rn.DOCUMENT_FRAGMENT_NODE:{const Wt=an.filter((Wt=>Wt.nodeType===rn.ELEMENT_NODE));if(Wt.length>1){throw tn.create(this._globalObject,[`Invalid insertion of ${nn} node in ${In} node.`,"HierarchyRequestError"])}const en=an.some((Wt=>Wt.nodeType===rn.TEXT_NODE));if(en){throw tn.create(this._globalObject,[`Invalid insertion of ${nn} node in ${In} node.`,"HierarchyRequestError"])}const on=sn.filter((Wt=>Wt.nodeType===rn.ELEMENT_NODE));if(Wt.length===1&&(on.length===1&&on[0]!==Pt||Pt&&Gn.nextSibling(Pt)&&Gn.nextSibling(Pt).nodeType===rn.DOCUMENT_TYPE_NODE)){throw tn.create(this._globalObject,[`Invalid insertion of ${nn} node in ${In} node.`,"HierarchyRequestError"])}break}case rn.ELEMENT_NODE:if(sn.some((Wt=>Wt.nodeType===rn.ELEMENT_NODE&&Wt!==Pt))||Pt&&Gn.nextSibling(Pt)&&Gn.nextSibling(Pt).nodeType===rn.DOCUMENT_TYPE_NODE){throw tn.create(this._globalObject,[`Invalid insertion of ${nn} node in ${In} node.`,"HierarchyRequestError"])}break;case rn.DOCUMENT_TYPE_NODE:if(sn.some((Wt=>Wt.nodeType===rn.DOCUMENT_TYPE_NODE&&Wt!==Pt))||Pt&&Gn.previousSibling(Pt)&&Gn.previousSibling(Pt).nodeType===rn.ELEMENT_NODE){throw tn.create(this._globalObject,[`Invalid insertion of ${nn} node in ${In} node.`,"HierarchyRequestError"])}break}}let sn=Gn.nextSibling(Pt);if(sn===Wt){sn=Gn.nextSibling(Wt)}const on=Gn.previousSibling(Pt);this._ownerDocument._adoptNode(Wt);let cn=[];if(Gn.parent(Pt)){cn=[Pt];this._remove(Pt,true)}const dn=Wt.nodeType===rn.DOCUMENT_FRAGMENT_NODE?Gn.childrenToArray(Wt):[Wt];this._insert(Wt,sn,true);Zn(this,dn,cn,on,sn);return Pt}_replaceAll(Wt){if(Wt!==null){this._ownerDocument._adoptNode(Wt)}const Pt=Gn.childrenToArray(this);let en;if(Wt===null){en=[]}else if(Wt.nodeType===rn.DOCUMENT_FRAGMENT_NODE){en=Gn.childrenToArray(Wt)}else{en=[Wt]}for(const Wt of Gn.childrenIterator(this)){this._remove(Wt,true)}if(Wt!==null){this._insert(Wt,null,true)}if(en.length>0||Pt.length>0){Zn(this,en,Pt,null,null)}}_preRemove(Wt){if(Gn.parent(Wt)!==this){throw tn.create(this._globalObject,["The node to be removed is not a child of this node.","NotFoundError"])}this._remove(Wt);return Wt}_remove(Wt,Pt){const en=Gn.index(Wt);for(const Pt of Gn.treeIterator(Wt)){for(const Wt of Pt._referencedRanges){const{_start:tn,_end:nn}=Wt;if(tn.node===Pt){Wt._setLiveRangeStart(this,en)}if(nn.node===Pt){Wt._setLiveRangeEnd(this,en)}}}for(const Wt of this._referencedRanges){const{_start:Pt,_end:tn}=Wt;if(Pt.node===this&&Pt.offset>en){Wt._setLiveRangeStart(this,Pt.offset-1)}if(tn.node===this&&tn.offset>en){Wt._setLiveRangeEnd(this,tn.offset-1)}}if(this._ownerDocument){this._ownerDocument._runPreRemovingSteps(Wt)}const tn=Gn.previousSibling(Wt);const nn=Gn.nextSibling(Wt);Gn.remove(Wt);if(Wt._assignedSlot){Yn(Wt._assignedSlot)}if(Vn(this)&&this._assignedNodes.length===0&&Nn(pn(this))){En(this)}let an=Vn(Wt);if(!an){for(const Pt of Gn.treeIterator(Wt)){if(Vn(Pt)){an=true;break}}}if(an){vn(pn(this));vn(Wt)}this._modified();Wt._detach();this._descendantRemoved(this,Wt);if(this.isConnected){if(Wt._ceState==="custom"){An(Wt,"disconnectedCallback",[])}for(const Pt of wn(Wt)){if(Pt._ceState==="custom"){An(Pt,"disconnectedCallback",[])}}}if(!Pt){Zn(this,[],[Wt],tn,nn)}if(Wt.nodeType===rn.TEXT_NODE){this._childTextContentChangeSteps()}}}Wt.exports={implementation:NodeImpl}},5922:(Wt,Pt,en)=>{"use strict";const tn=en(87094);Pt.implementation=class NodeListImpl{constructor(Wt,Pt,en){if(en.nodes){this._list=[...en.nodes];this._isLive=false}else{this._list=[];this._isLive=true;this._version=-1;this._element=en.element;this._query=en.query;this._update()}}get length(){this._update();return this._list.length}item(Wt){this._update();return this._list[Wt]||null}_update(){if(this._isLive){if(this._version{"use strict";const{domSymbolTree:tn}=en(38542);const nn=en(7206);class NonDocumentTypeChildNodeImpl{get nextElementSibling(){for(const Wt of tn.nextSiblingsIterator(this)){if(Wt.nodeType===nn.ELEMENT_NODE){return Wt}}return null}get previousElementSibling(){for(const Wt of tn.previousSiblingsIterator(this)){if(Wt.nodeType===nn.ELEMENT_NODE){return Wt}}return null}}Wt.exports={implementation:NonDocumentTypeChildNodeImpl}},70837:Wt=>{"use strict";class NonElementParentNodeImpl{}Wt.exports={implementation:NonElementParentNodeImpl}},18394:(Wt,Pt,en)=>{"use strict";const tn=en(87094);const nn=en(49747);const an=en(13506);const{addNwsapi:rn}=en(561);const{domSymbolTree:In}=en(38542);const sn=en(7206);const{convertNodesIntoNode:on}=en(85621);class ParentNodeImpl{get children(){if(!this._childrenList){this._childrenList=an.createImpl(this._globalObject,[],{element:this,query:()=>In.childrenToArray(this,{filter:Wt=>Wt.nodeType===sn.ELEMENT_NODE})})}else{this._childrenList._update()}return this._childrenList}get firstElementChild(){for(const Wt of In.childrenIterator(this)){if(Wt.nodeType===sn.ELEMENT_NODE){return Wt}}return null}get lastElementChild(){for(const Wt of In.childrenIterator(this,{reverse:true})){if(Wt.nodeType===sn.ELEMENT_NODE){return Wt}}return null}get childElementCount(){return this.children.length}prepend(...Wt){this._preInsert(on(this._ownerDocument,Wt),this.firstChild)}append(...Wt){this._append(on(this._ownerDocument,Wt))}replaceChildren(...Wt){const Pt=on(this._ownerDocument,Wt);this._preInsertValidity(Pt,null);this._replaceAll(Pt)}querySelector(Wt){if(shouldAlwaysSelectNothing(this)){return null}const Pt=rn(this);return tn.implForWrapper(Pt.first(Wt,tn.wrapperForImpl(this)))}querySelectorAll(Wt){if(shouldAlwaysSelectNothing(this)){return nn.create(this._globalObject,[],{nodes:[]})}const Pt=rn(this);const en=Pt.select(Wt,tn.wrapperForImpl(this));return nn.create(this._globalObject,[],{nodes:en.map((Wt=>tn.tryImplForWrapper(Wt)))})}}function shouldAlwaysSelectNothing(Wt){return Wt===Wt._ownerDocument&&!Wt.documentElement}Wt.exports={implementation:ParentNodeImpl}},21425:(Wt,Pt,en)=>{"use strict";const tn=en(62871).implementation;const nn=en(7206);class ProcessingInstructionImpl extends tn{constructor(Wt,Pt,en){super(Wt,Pt,en);this.nodeType=nn.PROCESSING_INSTRUCTION_NODE;this._target=en.target}get target(){return this._target}}Wt.exports={implementation:ProcessingInstructionImpl}},73827:(Wt,Pt,en)=>{"use strict";const tn=en(5922).implementation;class RadioNodeListImpl extends tn{get value(){this._update();const Wt=this._list.find((Wt=>Wt._localName==="input"&&Wt.type==="radio"&&Wt.checked));if(Wt===undefined){return""}if(!Wt.hasAttributeNS(null,"value")){return"on"}return Wt.getAttributeNS(null,"value")}set value(Wt){let Pt;if(Wt==="on"){Pt=this._list.find((Pt=>Pt._localName==="input"&&Pt.type==="radio"&&(!Pt.hasAttributeNS(null,"value")||Pt.getAttributeNS(null,"value")===Wt)))}else{Pt=this._list.find((Pt=>Pt._localName==="input"&&Pt.type==="radio"&&(Pt.hasAttributeNS(null,"value")&&Pt.getAttributeNS(null,"value")===Wt)))}if(Pt){Pt.checked=true}}}Wt.exports={implementation:RadioNodeListImpl}},72156:(Wt,Pt,en)=>{"use strict";const{domSymbolTree:tn}=en(38542);const{SVG_NS:nn}=en(98071);const{mixin:an}=en(35702);const rn=en(5505);const In=en(54782).implementation;const sn=en(16819).implementation;const on=en(27206).implementation;const cn=en(67712).D;class SVGElementImpl extends In{constructor(Wt,Pt,en){super(Wt,Pt,en);this._initHTMLOrSVGElement();this._initElementCSSInlineStyle();this._initGlobalEvents()}_attrModified(Wt,Pt,en){if(Wt==="style"&&Pt!==en&&!this._settingCssText){this._settingCssText=true;this._style.cssText=Pt;this._settingCssText=false}else if(Wt.startsWith("on")){this._globalEventChanged(Wt.substring(2))}super._attrModified(Wt,Pt,en)}get className(){return rn.createImpl(this._globalObject,[],{element:this,attribute:"class"})}get ownerSVGElement(){let Wt=tn.parent(this);while(Wt&&Wt.namespaceURI===nn){if(Wt.localName==="svg"){return Wt}Wt=tn.parent(Wt)}return null}get viewportElement(){return this.ownerSVGElement}}SVGElementImpl.attributeRegistry=new Map;an(SVGElementImpl.prototype,sn.prototype);an(SVGElementImpl.prototype,on.prototype);an(SVGElementImpl.prototype,cn.prototype);Pt.implementation=SVGElementImpl},9133:(Wt,Pt,en)=>{"use strict";const{mixin:tn}=en(35702);const nn=en(72156).implementation;const an=en(72207).D;class SVGGraphicsElementImpl extends nn{}SVGGraphicsElementImpl.attributeRegistry=new Map([...nn.attributeRegistry,...an.attributeRegistry]);tn(SVGGraphicsElementImpl.prototype,an.prototype);Pt.implementation=SVGGraphicsElementImpl},53362:(Wt,Pt,en)=>{"use strict";const{mixin:tn}=en(35702);const nn=en(35168);const an=en(9133).implementation;const rn=en(64473).implementation;const{domSymbolTree:In}=en(38542);const{ELEMENT_NODE:sn}=en(7206);class SVGSVGElementImpl extends an{constructor(Wt,Pt,en){super(Wt,Pt,en);this._proxyWindowEventsToWindow()}createSVGNumber(){return nn.createImpl(this._globalObject,[],{})}getElementById(Wt){for(const Pt of In.treeIterator(this)){if(Pt.nodeType===sn&&Pt.getAttributeNS(null,"id")===Wt){return Pt}}return null}suspendRedraw(){return 1}unsuspendRedraw(){}unsuspendRedrawAll(){}forceRedraw(){}}tn(SVGSVGElementImpl.prototype,rn.prototype);Wt.exports={implementation:SVGSVGElementImpl}},72207:(Wt,Pt,en)=>{"use strict";const{splitOnASCIIWhitespace:tn,splitOnCommas:nn}=en(97205);const{reserializeCommaSeparatedTokens:an,reserializeSpaceSeparatedTokens:rn}=en(70812);const In=en(48780);class SVGTestsImpl{get requiredExtensions(){return In.createImpl(this._globalObject,[],{element:this,attribute:"requiredExtensions"})}get systemLanguage(){return In.createImpl(this._globalObject,[],{element:this,attribute:"systemLanguage"})}}SVGTestsImpl.attributeRegistry=new Map([["requiredExtensions",{getValue:tn,serialize:rn,initialValue:undefined}],["systemLanguage",{getValue:nn,serialize:an,initialValue:undefined}]]);Pt.D=SVGTestsImpl},52774:(Wt,Pt,en)=>{"use strict";const tn=en(72156).implementation;class SVGTitleElementImpl extends tn{}Wt.exports={implementation:SVGTitleElementImpl}},2114:(Wt,Pt,en)=>{"use strict";const{nodeRoot:tn}=en(39471);const{mixin:nn}=en(35702);const an=en(98089).implementation;const rn=en(86882).implementation;const In=en(97066).D;class ShadowRootImpl extends an{constructor(Wt,Pt,en){super(Wt,Pt,en);const{mode:tn}=en;this._mode=tn;this._availableToElementInternals=false}_getTheParent(Wt){if(!Wt.composed&&this===tn(Wt._path[0].item)){return null}return this._host}get mode(){return this._mode}get host(){return this._host}}nn(ShadowRootImpl.prototype,rn.prototype);nn(ShadowRootImpl.prototype,In.prototype);Wt.exports={implementation:ShadowRootImpl}},72498:(Wt,Pt,en)=>{"use strict";const{findSlot:tn,assignSlot:nn,assignSlotable:an}=en(60470);class SlotableMixinImpl{_initSlotableMixin(){this._slotableName=""}_attrModifiedSlotableMixin(Wt,Pt,en){if(Wt==="slot"){if(Pt===en){return}if(Pt===null&&en===""){return}if(Pt===""&&en===null){return}if(Pt===null||Pt===""){this._slotableName=""}else{this._slotableName=Pt}if(this._assignedSlot){an(this._assignedSlot)}nn(this)}}get assignedSlot(){return tn(this,"open")}}Wt.exports={implementation:SlotableMixinImpl}},4247:(Wt,Pt,en)=>{"use strict";const tn=en(72498).implementation;const nn=en(62871).implementation;const an=en(87094);const{domSymbolTree:rn}=en(38542);const In=en(16694);const sn=en(7206);const{mixin:on}=en(35702);class TextImpl extends nn{constructor(Wt,Pt,en){super(Wt,Pt,{data:Pt[0],ownerDocument:an.implForWrapper(Wt._document),...en});this._initSlotableMixin();this.nodeType=sn.TEXT_NODE}splitText(Wt){const{length:Pt}=this;if(Wt>Pt){throw In.create(this._globalObject,["The index is not in the allowed range.","IndexSizeError"])}const en=Pt-Wt;const tn=this.substringData(Wt,en);const nn=this._ownerDocument.createTextNode(tn);const an=rn.parent(this);if(an!==null){an._insert(nn,this.nextSibling);for(const Pt of this._referencedRanges){const{_start:en,_end:tn}=Pt;if(en.node===this&&en.offset>Wt){Pt._setLiveRangeStart(nn,en.offset-Wt)}if(tn.node===this&&tn.offset>Wt){Pt._setLiveRangeEnd(nn,tn.offset-Wt)}}const Pt=rn.index(this);for(const Wt of an._referencedRanges){const{_start:en,_end:tn}=Wt;if(en.node===an&&en.offset===Pt+1){Wt._setLiveRangeStart(an,en.offset+1)}if(tn.node===an&&tn.offset===Pt+1){Wt._setLiveRangeEnd(an,tn.offset+1)}}}this.replaceData(Wt,en,"");return nn}get wholeText(){let Wt=this.textContent;let Pt;let en=this;while((Pt=rn.previousSibling(en))&&Pt.nodeType===sn.TEXT_NODE){Wt=Pt.textContent+Wt;en=Pt}en=this;while((Pt=rn.nextSibling(en))&&Pt.nodeType===sn.TEXT_NODE){Wt+=Pt.textContent;en=Pt}return Wt}}on(TextImpl.prototype,tn.prototype);Wt.exports={implementation:TextImpl}},64473:(Wt,Pt,en)=>{"use strict";const{createEventAccessor:tn}=en(15676);const nn=new Set(["afterprint","beforeprint","beforeunload","hashchange","languagechange","message","messageerror","offline","online","pagehide","pageshow","popstate","rejectionhandled","storage","unhandledrejection","unload","blur","error","focus","load","resize","scroll"]);class WindowEventHandlersImpl{_proxyWindowEventsToWindow(){this._getEventHandlerTarget=Wt=>{if(nn.has(Wt)){return this.ownerDocument.defaultView||null}return this}}}for(const Wt of nn){tn(WindowEventHandlersImpl.prototype,Wt)}Wt.exports={implementation:WindowEventHandlersImpl}},27494:(Wt,Pt,en)=>{"use strict";const tn=en(34641).implementation;Pt.implementation=class XMLDocumentImpl extends tn{}},32065:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(74374);const an=en(87094);const{isValidTargetOrigin:rn}=en(35702);const{fireAnEvent:In}=en(83350);Wt.exports=function(Wt){return function(Pt,en){if(arguments.length<2){throw new TypeError("'postMessage' requires 2 arguments: 'message' and 'targetOrigin'")}en=String(en);if(!rn(en)){throw tn.create(Wt,["Failed to execute 'postMessage' on 'Window': "+"Invalid target origin '"+en+"' in a call to 'postMessage'.","SyntaxError"])}if(en!=="*"&&en!==an.implForWrapper(Wt._document)._origin){return}setTimeout((()=>{In("message",this,nn,{data:Pt})}),0)}}},63891:Wt=>{"use strict";class AbstractRangeImpl{constructor(Wt,Pt,en){const{start:tn,end:nn}=en;this._start=tn;this._end=nn;this._globalObject=Wt}get startContainer(){return this._start.node}get startOffset(){return this._start.offset}get endContainer(){return this._end.node}get endOffset(){return this._end.offset}get collapsed(){const{_start:Wt,_end:Pt}=this;return Wt.node===Pt.node&&Wt.offset===Pt.offset}}Wt.exports={implementation:AbstractRangeImpl}},41869:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const{clone:nn}=en(85621);const an=en(7206);const{parseFragment:rn}=en(13430);const{HTML_NS:In}=en(98071);const{domSymbolTree:sn}=en(38542);const{compareBoundaryPointsPosition:on}=en(73242);const{nodeRoot:cn,nodeLength:dn,isInclusiveAncestor:un}=en(39471);const{createElement:pn}=en(94202);const mn=en(63891).implementation;const bn=en(60190);const Gn=en(98938);const{implForWrapper:hn}=en(87094);const Zn={START_TO_START:0,START_TO_END:1,END_TO_END:2,END_TO_START:3};class RangeImpl extends mn{constructor(Wt,Pt,en){super(Wt,Pt,en);const tn={node:hn(Wt._document),offset:0};const{start:nn=tn,end:an=tn}=en;this._setLiveRangeStart(nn.node,nn.offset);this._setLiveRangeEnd(an.node,an.offset)}get commonAncestorContainer(){const{_start:Wt,_end:Pt}=this;for(const en of sn.ancestorsIterator(Wt.node)){if(un(en,Pt.node)){return en}}return null}setStart(Wt,Pt){setBoundaryPointStart(this,Wt,Pt)}setEnd(Wt,Pt){setBoundaryPointEnd(this,Wt,Pt)}setStartBefore(Wt){const Pt=sn.parent(Wt);if(!Pt){throw tn.create(this._globalObject,["The given Node has no parent.","InvalidNodeTypeError"])}setBoundaryPointStart(this,Pt,sn.index(Wt))}setStartAfter(Wt){const Pt=sn.parent(Wt);if(!Pt){throw tn.create(this._globalObject,["The given Node has no parent.","InvalidNodeTypeError"])}setBoundaryPointStart(this,Pt,sn.index(Wt)+1)}setEndBefore(Wt){const Pt=sn.parent(Wt);if(!Pt){throw tn.create(this._globalObject,["The given Node has no parent.","InvalidNodeTypeError"])}setBoundaryPointEnd(this,Pt,sn.index(Wt))}setEndAfter(Wt){const Pt=sn.parent(Wt);if(!Pt){throw tn.create(this._globalObject,["The given Node has no parent.","InvalidNodeTypeError"])}setBoundaryPointEnd(this,Pt,sn.index(Wt)+1)}collapse(Wt){if(Wt){this._setLiveRangeEnd(this._start.node,this._start.offset)}else{this._setLiveRangeStart(this._end.node,this._end.offset)}}selectNode(Wt){selectNodeWithinRange(Wt,this)}selectNodeContents(Wt){if(Wt.nodeType===an.DOCUMENT_TYPE_NODE){throw tn.create(this._globalObject,["DocumentType Node can't be used as boundary point.","InvalidNodeTypeError"])}const Pt=dn(Wt);this._setLiveRangeStart(Wt,0);this._setLiveRangeEnd(Wt,Pt)}compareBoundaryPoints(Wt,Pt){if(Wt!==Zn.START_TO_START&&Wt!==Zn.START_TO_END&&Wt!==Zn.END_TO_END&&Wt!==Zn.END_TO_START){const Wt="The comparison method provided must be one of 'START_TO_START', 'START_TO_END', 'END_TO_END', "+"or 'END_TO_START'.";throw tn.create(this._globalObject,[Wt,"NotSupportedError"])}if(this._root!==Pt._root){throw tn.create(this._globalObject,["The two Ranges are not in the same tree.","WrongDocumentError"])}let en,nn;if(Wt===Zn.START_TO_START){en=this._start;nn=Pt._start}else if(Wt===Zn.START_TO_END){en=this._end;nn=Pt._start}else if(Wt===Zn.END_TO_END){en=this._end;nn=Pt._end}else{en=this._start;nn=Pt._end}return on(en,nn)}deleteContents(){if(this.collapsed){return}const{_start:Wt,_end:Pt}=this;if(Wt.node===Pt.node&&(Wt.node.nodeType===an.TEXT_NODE||Wt.node.nodeType===an.PROCESSING_INSTRUCTION_NODE||Wt.node.nodeType===an.COMMENT_NODE)){Wt.node.replaceData(Wt.offset,Pt.offset-Wt.offset,"");return}const en=[];let tn=this._start.node;const nn=nextNodeDescendant(this._end.node);while(tn&&tn!==nn){if(isContained(tn,this)&&!isContained(sn.parent(tn),this)){en.push(tn)}tn=sn.following(tn)}let rn,In;if(un(Wt.node,Pt.node)){rn=Wt.node;In=Wt.offset}else{let en=Wt.node;while(en&&!un(sn.parent(en),Pt.node)){en=sn.parent(en)}rn=sn.parent(en);In=sn.index(en)+1}if(Wt.node.nodeType===an.TEXT_NODE||Wt.node.nodeType===an.PROCESSING_INSTRUCTION_NODE||Wt.node.nodeType===an.COMMENT_NODE){Wt.node.replaceData(Wt.offset,dn(Wt.node)-Wt.offset,"")}for(const Wt of en){const Pt=sn.parent(Wt);Pt.removeChild(Wt)}if(Pt.node.nodeType===an.TEXT_NODE||Pt.node.nodeType===an.PROCESSING_INSTRUCTION_NODE||Pt.node.nodeType===an.COMMENT_NODE){Pt.node.replaceData(0,Pt.offset,"")}this._setLiveRangeStart(rn,In);this._setLiveRangeEnd(rn,In)}extractContents(){return extractRange(this)}cloneContents(){return cloneRange(this)}insertNode(Wt){insertNodeInRange(Wt,this)}surroundContents(Wt){let Pt=this.commonAncestorContainer;const en=nextNodeDescendant(Pt);while(Pt!==en){if(Pt.nodeType!==an.TEXT_NODE&&isPartiallyContained(Pt,this)){throw tn.create(this._globalObject,["The Range has partially contains a non-Text node.","InvalidStateError"])}Pt=sn.following(Pt)}if(Wt.nodeType===an.DOCUMENT_NODE||Wt.nodeType===an.DOCUMENT_TYPE_NODE||Wt.nodeType===an.DOCUMENT_FRAGMENT_NODE){throw tn.create(this._globalObject,["Invalid element type.","InvalidNodeTypeError"])}const nn=extractRange(this);while(sn.firstChild(Wt)){Wt.removeChild(sn.firstChild(Wt))}insertNodeInRange(Wt,this);Wt.appendChild(nn);selectNodeWithinRange(Wt,this)}cloneRange(){const{_start:Wt,_end:Pt,_globalObject:en}=this;return bn.createImpl(en,[],{start:{node:Wt.node,offset:Wt.offset},end:{node:Pt.node,offset:Pt.offset}})}detach(){}isPointInRange(Wt,Pt){if(cn(Wt)!==this._root){return false}validateSetBoundaryPoint(Wt,Pt);const en={node:Wt,offset:Pt};if(on(en,this._start)===-1||on(en,this._end)===1){return false}return true}comparePoint(Wt,Pt){if(cn(Wt)!==this._root){throw tn.create(this._globalObject,["The given Node and the Range are not in the same tree.","WrongDocumentError"])}validateSetBoundaryPoint(Wt,Pt);const en={node:Wt,offset:Pt};if(on(en,this._start)===-1){return-1}else if(on(en,this._end)===1){return 1}return 0}intersectsNode(Wt){if(cn(Wt)!==this._root){return false}const Pt=sn.parent(Wt);if(!Pt){return true}const en=sn.index(Wt);return on({node:Pt,offset:en},this._end)===-1&&on({node:Pt,offset:en+1},this._start)===1}toString(){let Wt="";const{_start:Pt,_end:en}=this;if(Pt.node===en.node&&Pt.node.nodeType===an.TEXT_NODE){return Pt.node.data.slice(Pt.offset,en.offset)}if(Pt.node.nodeType===an.TEXT_NODE){Wt+=Pt.node.data.slice(Pt.offset)}let tn=Pt.node;const nn=nextNodeDescendant(en.node);while(tn&&tn!==nn){if(tn.nodeType===an.TEXT_NODE&&isContained(tn,this)){Wt+=tn.data}tn=sn.following(tn)}if(en.node.nodeType===an.TEXT_NODE){Wt+=en.node.data.slice(0,en.offset)}return Wt}createContextualFragment(Wt){const{node:Pt}=this._start;let en;switch(Pt.nodeType){case an.DOCUMENT_NODE:case an.DOCUMENT_FRAGMENT_NODE:en=null;break;case an.ELEMENT_NODE:en=Pt;break;case an.TEXT_NODE:case an.COMMENT_NODE:en=Pt.parentElement;break;default:throw new Error("Internal error: Invalid range start node")}if(en===null||en._ownerDocument._parsingMode==="html"&&en._localName==="html"&&en._namespaceURI===In){en=pn(Pt._ownerDocument,"body",In)}return rn(Wt,en)}get _root(){return cn(this._start.node)}_setLiveRangeStart(Wt,Pt){if(this._start&&this._start.node!==Wt&&this._start.node!==this._end.node){this._start.node._referencedRanges.delete(this)}if(!Wt._referencedRanges.has(this)){Wt._referencedRanges.add(this)}this._start={node:Wt,offset:Pt}}_setLiveRangeEnd(Wt,Pt){if(this._end&&this._end.node!==Wt&&this._end.node!==this._start.node){this._end.node._referencedRanges.delete(this)}if(!Wt._referencedRanges.has(this)){Wt._referencedRanges.add(this)}this._end={node:Wt,offset:Pt}}}function nextNodeDescendant(Wt){while(Wt&&!sn.nextSibling(Wt)){Wt=sn.parent(Wt)}if(!Wt){return null}return sn.nextSibling(Wt)}function validateSetBoundaryPoint(Wt,Pt){if(Wt.nodeType===an.DOCUMENT_TYPE_NODE){throw tn.create(Wt._globalObject,["DocumentType Node can't be used as boundary point.","InvalidNodeTypeError"])}if(Pt>dn(Wt)){throw tn.create(Wt._globalObject,["Offset out of bound.","IndexSizeError"])}}function setBoundaryPointStart(Wt,Pt,en){validateSetBoundaryPoint(Pt,en);const tn={node:Pt,offset:en};if(cn(Pt)!==Wt._root||on(tn,Wt._end)===1){Wt._setLiveRangeEnd(Pt,en)}Wt._setLiveRangeStart(Pt,en)}function setBoundaryPointEnd(Wt,Pt,en){validateSetBoundaryPoint(Pt,en);const tn={node:Pt,offset:en};if(cn(Pt)!==Wt._root||on(tn,Wt._start)===-1){Wt._setLiveRangeStart(Pt,en)}Wt._setLiveRangeEnd(Pt,en)}function selectNodeWithinRange(Wt,Pt){const en=sn.parent(Wt);if(!en){throw tn.create(Wt._globalObject,["The given Node has no parent.","InvalidNodeTypeError"])}const nn=sn.index(Wt);Pt._setLiveRangeStart(en,nn);Pt._setLiveRangeEnd(en,nn+1)}function isContained(Wt,Pt){const{_start:en,_end:tn}=Pt;return on({node:Wt,offset:0},en)===1&&on({node:Wt,offset:dn(Wt)},tn)===-1}function isPartiallyContained(Wt,Pt){const{_start:en,_end:tn}=Pt;return un(Wt,en.node)&&!un(Wt,tn.node)||!un(Wt,en.node)&&un(Wt,tn.node)}function insertNodeInRange(Wt,Pt){const{node:en,offset:nn}=Pt._start;if(en.nodeType===an.PROCESSING_INSTRUCTION_NODE||en.nodeType===an.COMMENT_NODE||en.nodeType===an.TEXT_NODE&&!sn.parent(en)||Wt===en){throw tn.create(Wt._globalObject,["Invalid start node.","HierarchyRequestError"])}let rn=en.nodeType===an.TEXT_NODE?en:sn.childrenToArray(en)[nn]||null;const In=!rn?en:sn.parent(rn);In._preInsertValidity(Wt,rn);if(en.nodeType===an.TEXT_NODE){rn=en.splitText(nn)}if(Wt===rn){rn=sn.nextSibling(rn)}const on=sn.parent(Wt);if(on){on.removeChild(Wt)}let cn=!rn?dn(In):sn.index(rn);cn+=Wt.nodeType===an.DOCUMENT_FRAGMENT_NODE?dn(Wt):1;In.insertBefore(Wt,rn);if(Pt.collapsed){Pt._setLiveRangeEnd(In,cn)}}function cloneRange(Wt){const{_start:Pt,_end:en,_globalObject:rn}=Wt;const In=Gn.createImpl(rn,[],{ownerDocument:Pt.node._ownerDocument});if(Wt.collapsed){return In}if(Pt.node===en.node&&(Pt.node.nodeType===an.TEXT_NODE||Pt.node.nodeType===an.PROCESSING_INSTRUCTION_NODE||Pt.node.nodeType===an.COMMENT_NODE)){const Wt=nn(Pt.node);Wt._data=Wt.substringData(Pt.offset,en.offset-Pt.offset);In.appendChild(Wt);return In}let on=Pt.node;while(!un(on,en.node)){on=sn.parent(on)}let cn=null;if(!un(Pt.node,en.node)){let Pt=sn.firstChild(on);while(!cn){if(isPartiallyContained(Pt,Wt)){cn=Pt}Pt=sn.nextSibling(Pt)}}let pn=null;if(!un(en.node,Pt.node)){let Pt=sn.lastChild(on);while(!pn){if(isPartiallyContained(Pt,Wt)){pn=Pt}Pt=sn.previousSibling(Pt)}}const mn=sn.childrenToArray(on).filter((Pt=>isContained(Pt,Wt)));const hn=mn.some((Wt=>Wt.nodeType===an.DOCUMENT_TYPE_NODE));if(hn){throw tn.create(Wt._globalObject,["Invalid document type element.","HierarchyRequestError"])}if(cn!==null&&(cn.nodeType===an.TEXT_NODE||cn.nodeType===an.PROCESSING_INSTRUCTION_NODE||cn.nodeType===an.COMMENT_NODE)){const Wt=nn(Pt.node);Wt._data=Wt.substringData(Pt.offset,dn(Pt.node)-Pt.offset);In.appendChild(Wt)}else if(cn!==null){const Wt=nn(cn);In.appendChild(Wt);const en=bn.createImpl(rn,[],{start:{node:Pt.node,offset:Pt.offset},end:{node:cn,offset:dn(cn)}});const tn=cloneRange(en);Wt.appendChild(tn)}for(const Wt of mn){const Pt=nn(Wt,undefined,true);In.appendChild(Pt)}if(pn!==null&&(pn.nodeType===an.TEXT_NODE||pn.nodeType===an.PROCESSING_INSTRUCTION_NODE||pn.nodeType===an.COMMENT_NODE)){const Wt=nn(en.node);Wt._data=Wt.substringData(0,en.offset);In.appendChild(Wt)}else if(pn!==null){const Wt=nn(pn);In.appendChild(Wt);const Pt=bn.createImpl(rn,[],{start:{node:pn,offset:0},end:{node:en.node,offset:en.offset}});const tn=cloneRange(Pt);Wt.appendChild(tn)}return In}function extractRange(Wt){const{_start:Pt,_end:en,_globalObject:rn}=Wt;const In=Gn.createImpl(rn,[],{ownerDocument:Pt.node._ownerDocument});if(Wt.collapsed){return In}if(Pt.node===en.node&&(Pt.node.nodeType===an.TEXT_NODE||Pt.node.nodeType===an.PROCESSING_INSTRUCTION_NODE||Pt.node.nodeType===an.COMMENT_NODE)){const Wt=nn(Pt.node);Wt._data=Wt.substringData(Pt.offset,en.offset-Pt.offset);In.appendChild(Wt);Pt.node.replaceData(Pt.offset,en.offset-Pt.offset,"");return In}let on=Pt.node;while(!un(on,en.node)){on=sn.parent(on)}let cn=null;if(!un(Pt.node,en.node)){let Pt=sn.firstChild(on);while(!cn){if(isPartiallyContained(Pt,Wt)){cn=Pt}Pt=sn.nextSibling(Pt)}}let pn=null;if(!un(en.node,Pt.node)){let Pt=sn.lastChild(on);while(!pn){if(isPartiallyContained(Pt,Wt)){pn=Pt}Pt=sn.previousSibling(Pt)}}const mn=sn.childrenToArray(on).filter((Pt=>isContained(Pt,Wt)));const hn=mn.some((Wt=>Wt.nodeType===an.DOCUMENT_TYPE_NODE));if(hn){throw tn.create(Wt._globalObject,["Invalid document type element.","HierarchyRequestError"])}let Zn,An;if(un(Pt.node,en.node)){Zn=Pt.node;An=Pt.offset}else{let Wt=Pt.node;while(Wt&&!un(sn.parent(Wt),en.node)){Wt=sn.parent(Wt)}Zn=sn.parent(Wt);An=sn.index(Wt)+1}if(cn!==null&&(cn.nodeType===an.TEXT_NODE||cn.nodeType===an.PROCESSING_INSTRUCTION_NODE||cn.nodeType===an.COMMENT_NODE)){const Wt=nn(Pt.node);Wt._data=Wt.substringData(Pt.offset,dn(Pt.node)-Pt.offset);In.appendChild(Wt);Pt.node.replaceData(Pt.offset,dn(Pt.node)-Pt.offset,"")}else if(cn!==null){const Wt=nn(cn);In.appendChild(Wt);const en=bn.createImpl(rn,[],{start:{node:Pt.node,offset:Pt.offset},end:{node:cn,offset:dn(cn)}});const tn=extractRange(en);Wt.appendChild(tn)}for(const Wt of mn){In.appendChild(Wt)}if(pn!==null&&(pn.nodeType===an.TEXT_NODE||pn.nodeType===an.PROCESSING_INSTRUCTION_NODE||pn.nodeType===an.COMMENT_NODE)){const Wt=nn(en.node);Wt._data=Wt.substringData(0,en.offset);In.appendChild(Wt);en.node.replaceData(0,en.offset,"")}else if(pn!==null){const Wt=nn(pn);In.appendChild(Wt);const Pt=bn.createImpl(rn,[],{start:{node:pn,offset:0},end:{node:en.node,offset:en.offset}});const tn=extractRange(Pt);Wt.appendChild(tn)}Wt._setLiveRangeStart(Zn,An);Wt._setLiveRangeEnd(Zn,An);return In}Wt.exports={implementation:RangeImpl,setBoundaryPointStart:setBoundaryPointStart,setBoundaryPointEnd:setBoundaryPointEnd}},57315:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(7206);const an=en(63891).implementation;class StaticRangeImpl extends an{constructor(Wt,Pt){const{startContainer:en,startOffset:an,endContainer:rn,endOffset:In}=Pt[0];if(en.nodeType===nn.DOCUMENT_TYPE_NODE||en.nodeType===nn.ATTRIBUTE_NODE||rn.nodeType===nn.DOCUMENT_TYPE_NODE||rn.nodeType===nn.ATTRIBUTE_NODE){throw tn.create(Wt,["The supplied node is incorrect.","InvalidNodeTypeError"])}super(Wt,[],{start:{node:en,offset:an},end:{node:rn,offset:In}})}}Wt.exports={implementation:StaticRangeImpl}},73242:(Wt,Pt,en)=>{"use strict";const{domSymbolTree:tn}=en(38542);const{nodeRoot:nn,isFollowing:an,isInclusiveAncestor:rn}=en(39471);function compareBoundaryPointsPosition(Wt,Pt){const{node:en,offset:In}=Wt;const{node:sn,offset:on}=Pt;if(nn(en)!==nn(sn)){throw new Error(`Internal Error: Boundary points should have the same root!`)}if(en===sn){if(In===on){return 0}else if(In{"use strict";const tn=en(16694);const nn=en(7206);const{nodeLength:an,nodeRoot:rn}=en(39471);const{domSymbolTree:In}=en(38542);const{compareBoundaryPointsPosition:sn}=en(73242);const{setBoundaryPointStart:on,setBoundaryPointEnd:cn}=en(41869);const dn=en(60190);const{implForWrapper:un}=en(87094);const pn={FORWARDS:1,BACKWARDS:-1,DIRECTIONLESS:0};class SelectionImpl{constructor(Wt){this._range=null;this._direction=pn.DIRECTIONLESS;this._globalObject=Wt}get anchorNode(){const Wt=this._anchor;return Wt?Wt.node:null}get anchorOffset(){const Wt=this._anchor;return Wt?Wt.offset:0}get focusNode(){const Wt=this._focus;return Wt?Wt.node:null}get focusOffset(){const Wt=this._focus;return Wt?Wt.offset:0}get isCollapsed(){return this._range===null||this._range.collapsed}get rangeCount(){return this._isEmpty()?0:1}get type(){if(this._isEmpty()){return"None"}else if(this._range.collapsed){return"Caret"}return"Range"}getRangeAt(Wt){if(Wt!==0||this._isEmpty()){throw tn.create(this._globalObject,["Invalid range index.","IndexSizeError"])}return this._range}addRange(Wt){if(Wt._root===un(this._globalObject._document)&&this.rangeCount===0){this._associateRange(Wt)}}removeRange(Wt){if(Wt!==this._range){throw tn.create(this._globalObject,["Invalid range.","NotFoundError"])}this._associateRange(null)}removeAllRanges(){this._associateRange(null)}empty(){this.removeAllRanges()}collapse(Wt,Pt){if(Wt===null){this.removeAllRanges();return}if(Wt.nodeType===nn.DOCUMENT_TYPE_NODE){throw tn.create(this._globalObject,["DocumentType Node can't be used as boundary point.","InvalidNodeTypeError"])}if(Pt>an(Wt)){throw tn.create(this._globalObject,["Invalid range index.","IndexSizeError"])}if(rn(Wt)!==un(this._globalObject._document)){return}const en=dn.createImpl(this._globalObject,[],{start:{node:Wt,offset:0},end:{node:Wt,offset:0}});on(en,Wt,Pt);cn(en,Wt,Pt);this._associateRange(en)}setPosition(Wt,Pt){this.collapse(Wt,Pt)}collapseToStart(){if(this._isEmpty()){throw tn.create(this._globalObject,["There is no selection to collapse.","InvalidStateError"])}const{node:Wt,offset:Pt}=this._range._start;const en=dn.createImpl(this._globalObject,[],{start:{node:Wt,offset:Pt},end:{node:Wt,offset:Pt}});this._associateRange(en)}collapseToEnd(){if(this._isEmpty()){throw tn.create(this._globalObject,["There is no selection to collapse.","InvalidStateError"])}const{node:Wt,offset:Pt}=this._range._end;const en=dn.createImpl(this._globalObject,[],{start:{node:Wt,offset:Pt},end:{node:Wt,offset:Pt}});this._associateRange(en)}extend(Wt,Pt){if(rn(Wt)!==un(this._globalObject._document)){return}if(this._isEmpty()){throw tn.create(this._globalObject,["There is no selection to extend.","InvalidStateError"])}const{_anchor:en}=this;const nn={node:Wt,offset:Pt};const an=dn.createImpl(this._globalObject,[],{start:{node:Wt,offset:0},end:{node:Wt,offset:0}});if(rn(Wt)!==this._range._root){on(an,nn.node,nn.offset);cn(an,nn.node,nn.offset)}else if(sn(en,nn)<=0){on(an,en.node,en.offset);cn(an,nn.node,nn.offset)}else{on(an,nn.node,nn.offset);cn(an,en.node,en.offset)}this._associateRange(an);this._direction=sn(nn,en)===-1?pn.BACKWARDS:pn.FORWARDS}setBaseAndExtent(Wt,Pt,en,nn){if(Pt>an(Wt)||nn>an(en)){throw tn.create(this._globalObject,["Invalid anchor or focus offset.","IndexSizeError"])}const In=un(this._globalObject._document);if(In!==rn(Wt)||In!==rn(en)){return}const on={node:Wt,offset:Pt};const cn={node:en,offset:nn};let mn;if(sn(on,cn)===-1){mn=dn.createImpl(this._globalObject,[],{start:{node:on.node,offset:on.offset},end:{node:cn.node,offset:cn.offset}})}else{mn=dn.createImpl(this._globalObject,[],{start:{node:cn.node,offset:cn.offset},end:{node:on.node,offset:on.offset}})}this._associateRange(mn);this._direction=sn(cn,on)===-1?pn.BACKWARDS:pn.FORWARDS}selectAllChildren(Wt){if(Wt.nodeType===nn.DOCUMENT_TYPE_NODE){throw tn.create(this._globalObject,["DocumentType Node can't be used as boundary point.","InvalidNodeTypeError"])}const Pt=un(this._globalObject._document);if(Pt!==rn(Wt)){return}const en=In.childrenCount(Wt);const an=dn.createImpl(this._globalObject,[],{start:{node:Wt,offset:0},end:{node:Wt,offset:0}});on(an,Wt,0);cn(an,Wt,en);this._associateRange(an)}deleteFromDocument(){if(!this._isEmpty()){this._range.deleteContents()}}containsNode(Wt,Pt){if(this._isEmpty()||rn(Wt)!==un(this._globalObject._document)){return false}const{_start:en,_end:tn}=this._range;const nn=sn(en,{node:Wt,offset:0})===-1;const In=sn(tn,{node:Wt,offset:an(Wt)})===1;return Pt?nn||In:nn&&In}toString(){return this._range?this._range.toString():""}_isEmpty(){return this._range===null}get _anchor(){if(!this._range){return null}return this._direction===pn.FORWARDS?this._range._start:this._range._end}get _focus(){if(!this._range){return null}return this._direction===pn.FORWARDS?this._range._end:this._range._start}_associateRange(Wt){this._range=Wt;this._direction=Wt===null?pn.DIRECTIONLESS:pn.FORWARDS}}Wt.exports={implementation:SelectionImpl}},48665:(Wt,Pt)=>{"use strict";class SVGAnimatedStringImpl{constructor(Wt,Pt,en){this._element=en.element;this._attribute=en.attribute;this._attributeDeprecated=en.attributeDeprecated;this._initialValue=en.initialValue}get baseVal(){if(!this._element.hasAttributeNS(null,this._attribute)){if(this._attributeDeprecated!==undefined&&this._element.hasAttributeNS(null,this._attributeDeprecated)){return this._element.getAttributeNS(null,this._attributeDeprecated)}else if(this._initialValue!==undefined){return this._initialValue}return""}return this._element.getAttributeNS(null,this._attribute)}set baseVal(Wt){if(!this._element.hasAttributeNS(null,this._attribute)&&this._attributeDeprecated!==undefined&&this._element.hasAttributeNS(null,this._attributeDeprecated)){this._element.setAttributeNS(null,this._attributeDeprecated,Wt)}else{this._element.setAttributeNS(null,this._attribute,Wt)}}get animVal(){return this.baseVal}}Pt.implementation=SVGAnimatedStringImpl},51147:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(87094);const{attach:an,detach:rn}=en(70812);class List{_initList({element:Wt,attribute:Pt,readOnly:en=false}){this._element=Wt;this._attribute=Pt;this._attributeRegistryEntry=Wt.constructor.attributeRegistry.get(Pt);this._readOnly=en;this._list=[];this._version=-1}get _needsResync(){return this._version=0&&Wt=this._list.length){throw tn.create(this._globalObject,[`The index provided (${Wt}) is greater than or equal to the maximum bound (${this._list.length}).`,"IndexSizeError"])}return this._list[Wt]}insertItemBefore(Wt,Pt){this._synchronize();if(this._readOnly){throw tn.create(this._globalObject,["Attempting to modify a read-only list","NoModificationAllowedError"])}if(Pt>this._list.length){Pt=this._list.length}this._list.splice(Pt,0,Wt);an(Wt,this);this._reserialize();return Wt}replaceItem(Wt,Pt){this._synchronize();if(this._readOnly){throw tn.create(this._globalObject,["Attempting to modify a read-only list","NoModificationAllowedError"])}if(Pt>=this._list.length){throw tn.create(this._globalObject,[`The index provided (${Pt}) is greater than or equal to the maximum bound (${this._list.length}).`,"IndexSizeError"])}rn(this._list[Pt]);this._list[Pt]=Wt;an(Wt,this);this._reserialize();return Wt}removeItem(Wt){this._synchronize();if(this._readOnly){throw tn.create(this._globalObject,["Attempting to modify a read-only list","NoModificationAllowedError"])}if(Wt>=this._list.length){throw tn.create(this._globalObject,[`The index provided (${Wt}) is greater than or equal to the maximum bound (${this._list.length}).`,"IndexSizeError"])}const Pt=this._list[Wt];rn(Pt);this._list.splice(Wt,1);this._reserialize();return Pt}appendItem(Wt){this._synchronize();this._list.push(Wt);an(Wt,this);this._reserialize();return Wt}[nn.indexedSetNew](Wt,Pt){this.replaceItem(Pt,Wt)}[nn.indexedSetExisting](Wt,Pt){this.replaceItem(Pt,Wt)}}Wt.exports=List},29954:(Wt,Pt,en)=>{"use strict";const tn=en(16694);class SVGNumberImpl{constructor(Wt,Pt,en){this._parentList=en.parentList;this._value=0}get _readOnly(){if(this._parentList!==undefined){return this._parentList._readOnly}return false}_synchronize(){if(this._parentList!==undefined){this._parentList._synchronize()}}_reserialize(){if(this._parentList!==undefined){this._parentList._reserialize()}}get value(){this._synchronize();return this._value}set value(Wt){if(this._readOnly){throw tn.create(this._globalObject,["Attempting to modify a read-only SVGNumber","NoModificationAllowedError"])}this._value=Wt;this._reserialize()}}Pt.implementation=SVGNumberImpl},51178:(Wt,Pt,en)=>{"use strict";const{mixin:tn}=en(35702);const nn=en(51147);class SVGStringListImpl{constructor(Wt,Pt,en){this._globalObject=Wt;this._initList(en)}}tn(SVGStringListImpl.prototype,nn.prototype);Pt.implementation=SVGStringListImpl},15847:(Wt,Pt,en)=>{"use strict";const{domSymbolTree:tn}=en(38542);const{filter:nn,FILTER_ACCEPT:an}=en(87201);Pt.implementation=class NodeIteratorImpl{constructor(Wt,Pt,en){this._active=false;this.root=en.root;this.whatToShow=en.whatToShow;this.filter=en.filter;this._referenceNode=this.root;this._pointerBeforeReferenceNode=true;this._globalObject=Wt}get referenceNode(){return this._referenceNode}get pointerBeforeReferenceNode(){return this._pointerBeforeReferenceNode}nextNode(){return this._traverse("next")}previousNode(){return this._traverse("previous")}detach(){}_preRemovingSteps(Wt){if(!Wt.contains(this._referenceNode)||Wt===this.root){return}if(this._pointerBeforeReferenceNode){let Pt=null;let en=tn.following(Wt,{skipChildren:true});while(en!==null){if(this.root.contains(en)){Pt=en;break}en=tn.following(en,{skipChildren:true})}if(Pt!==null){this._referenceNode=Pt;return}this._pointerBeforeReferenceNode=false}const{previousSibling:Pt}=Wt;this._referenceNode=Pt===null?Wt.parentNode:tn.lastInclusiveDescendant(Wt.previousSibling)}_traverse(Wt){let Pt=this._referenceNode;let en=this._pointerBeforeReferenceNode;while(true){if(Wt==="next"){if(!en){Pt=tn.following(Pt,{root:this.root});if(!Pt){return null}}en=false}else if(Wt==="previous"){if(en){Pt=tn.preceding(Pt,{root:this.root});if(!Pt){return null}}en=true}const rn=nn(this,Pt);if(rn===an){break}}this._referenceNode=Pt;this._pointerBeforeReferenceNode=en;return Pt}}},97223:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const{filter:nn,FILTER_ACCEPT:an,FILTER_REJECT:rn,FILTER_SKIP:In}=en(87201);const sn=false;const on=true;const cn=false;const dn=true;Pt.implementation=class TreeWalkerImpl{constructor(Wt,Pt,en){this._active=false;this.root=en.root;this.currentNode=this.root;this.whatToShow=en.whatToShow;this.filter=en.filter;this._globalObject=Wt}get currentNode(){return this._currentNode}set currentNode(Wt){if(Wt===null){throw tn.create(this._globalObject,["Cannot set currentNode to null","NotSupportedError"])}this._currentNode=Wt}parentNode(){let Wt=this._currentNode;while(Wt!==null&&Wt!==this.root){Wt=Wt.parentNode;if(Wt!==null&&nn(this,Wt)===an){return this._currentNode=Wt}}return null}firstChild(){return this._traverseChildren(sn)}lastChild(){return this._traverseChildren(on)}previousSibling(){return this._traverseSiblings(dn)}nextSibling(){return this._traverseSiblings(cn)}previousNode(){let Wt=this._currentNode;while(Wt!==this.root){let Pt=Wt.previousSibling;while(Pt!==null){Wt=Pt;let en=nn(this,Wt);while(en!==rn&&Wt.hasChildNodes()){Wt=Wt.lastChild;en=nn(this,Wt)}if(en===an){return this._currentNode=Wt}Pt=Wt.previousSibling}if(Wt===this.root||Wt.parentNode===null){return null}Wt=Wt.parentNode;if(nn(this,Wt)===an){return this._currentNode=Wt}}return null}nextNode(){let Wt=this._currentNode;let Pt=an;for(;;){while(Pt!==rn&&Wt.hasChildNodes()){Wt=Wt.firstChild;Pt=nn(this,Wt);if(Pt===an){return this._currentNode=Wt}}do{if(Wt===this.root){return null}const Pt=Wt.nextSibling;if(Pt!==null){Wt=Pt;break}Wt=Wt.parentNode}while(Wt!==null);if(Wt===null){return null}Pt=nn(this,Wt);if(Pt===an){return this._currentNode=Wt}}}_traverseChildren(Wt){let Pt=this._currentNode;Pt=Wt===sn?Pt.firstChild:Pt.lastChild;if(Pt===null){return null}e:for(;;){const en=nn(this,Pt);if(en===an){return this._currentNode=Pt}if(en===In){const en=Wt===sn?Pt.firstChild:Pt.lastChild;if(en!==null){Pt=en;continue}}for(;;){const en=Wt===sn?Pt.nextSibling:Pt.previousSibling;if(en!==null){Pt=en;continue e}const tn=Pt.parentNode;if(tn===null||tn===this.root||tn===this._currentNode){return null}Pt=tn}}}_traverseSiblings(Wt){let Pt=this._currentNode;if(Pt===this.root){return null}for(;;){let en=Wt===cn?Pt.nextSibling:Pt.previousSibling;while(en!==null){Pt=en;const tn=nn(this,Pt);if(tn===an){return this._currentNode=Pt}en=Wt===cn?Pt.firstChild:Pt.lastChild;if(tn===rn||en===null){en=Wt===cn?Pt.nextSibling:Pt.previousSibling}}Pt=Pt.parentNode;if(Pt===null||Pt===this.root){return null}if(nn(this,Pt)===an){return null}}}}},87201:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(37125);Pt.FILTER_ACCEPT=1;Pt.FILTER_REJECT=2;Pt.FILTER_SKIP=3;Pt.filter=(Wt,en)=>{if(Wt._active){throw tn.create(Wt._globalObject,["Recursive node filtering","InvalidStateError"])}const an=en.nodeType-1;if(!(1<{"use strict";const tn=en(87094);const nn={IndexSizeError:1,HierarchyRequestError:3,WrongDocumentError:4,InvalidCharacterError:5,NoModificationAllowedError:7,NotFoundError:8,NotSupportedError:9,InUseAttributeError:10,InvalidStateError:11,SyntaxError:12,InvalidModificationError:13,NamespaceError:14,InvalidAccessError:15,TypeMismatchError:17,SecurityError:18,NetworkError:19,AbortError:20,URLMismatchError:21,QuotaExceededError:22,TimeoutError:23,InvalidNodeTypeError:24,DataCloneError:25};Pt.implementation=class DOMExceptionImpl{constructor(Wt,[Pt,en]){this.name=en;this.message=Pt}get code(){return nn[this.name]||0}};Pt.init=Wt=>{if(Error.captureStackTrace){const Pt=tn.wrapperForImpl(Wt);Error.captureStackTrace(Pt,Pt.constructor)}}},14764:(Wt,Pt,en)=>{"use strict";const tn=en(87016);const nn=en(16694);const{parseURL:an,serializeURL:rn,serializeURLOrigin:In}=en(78012);const sn=en(11354);const{setupForSimpleEventAccessors:on}=en(15676);const{fireAnEvent:cn}=en(83350);const{isArrayBuffer:dn}=en(87094);const{copyToArrayBufferInNewRealm:un}=en(71179);const pn=en(92697).implementation;const mn=en(87094);const bn=en(42960);const Gn=en(54123);const hn=en(74374);const Zn=0;const An=1;const Wn=2;const Nn=3;const gn={token:/^[!#$%&'*+\-.^_`|~\dA-Za-z]+$/};const yn=[];yn[sn.CONNECTING]=Zn;yn[sn.OPEN]=An;yn[sn.CLOSING]=Wn;yn[sn.CLOSED]=Nn;function verifySecWebSocketProtocol(Wt){return gn.token.test(Wt)}class PromiseQueues extends WeakMap{get(Wt){const Pt=super.get(Wt);return Pt!==undefined?Pt:Promise.resolve()}}const vn=new WeakMap;const Yn=new PromiseQueues;class WebSocketImpl extends pn{constructor(Wt,Pt,en){super(Wt,Pt,en);this._ownerDocument=mn.implForWrapper(Wt._document);const In=Pt[0];let on=Pt[1]!==undefined?Pt[1]:[];const cn=an(In);if(cn===null){throw nn.create(this._globalObject,[`The URL '${In}' is invalid.`,"SyntaxError"])}if(cn.scheme!=="ws"&&cn.scheme!=="wss"){throw nn.create(this._globalObject,[`The URL's scheme must be either 'ws' or 'wss'. '${cn.scheme}' is not allowed.`,"SyntaxError"])}if(cn.fragment!==null){throw nn.create(this._globalObject,[`The URL contains a fragment identifier ('${cn.fragment}'). Fragment identifiers `+"are not allowed in WebSocket URLs.","SyntaxError"])}if(typeof on==="string"){on=[on]}const dn=new Set;for(const Wt of on){if(!verifySecWebSocketProtocol(Wt)){throw nn.create(this._globalObject,[`The subprotocol '${Wt}' is invalid.`,"SyntaxError"])}const Pt=Wt.toLowerCase();if(dn.has(Pt)){throw nn.create(this._globalObject,[`The subprotocol '${Wt}' is duplicated.`,"SyntaxError"])}dn.add(Pt)}this._urlRecord=cn;this.url=rn(cn);const un=tn.parse(this.url);this.extensions="";this.binaryType="blob";this._ws=null;this._readyState=Zn;this._requiredToFail=false;this.bufferedAmount=0;this._sendQueue=[];let pn=vn.get(Wt._globalProxy);if(pn===undefined){pn=new Set;vn.set(Wt._globalProxy,pn)}pn.add(this);Yn.set(this._ownerDocument,Yn.get(this._ownerDocument).then((()=>new Promise((Pt=>{if(this._requiredToFail){Pt();this._readyState=Nn;this._onConnectionClosed(1006,"");return}this._ws=new sn(this.url,on,{headers:{"user-agent":Wt.navigator.userAgent,cookie:this._ownerDocument._cookieJar.getCookieStringSync(un,{http:true}),origin:Wt._origin},rejectUnauthorized:Wt._resourceLoader._strictSSL});this._ws.once("open",(()=>{Pt();this._onConnectionEstablished()}));this._ws.on("message",this._onMessageReceived.bind(this));this._ws.once("close",((...Wt)=>{Pt();this._onConnectionClosed(...Wt)}));this._ws.once("upgrade",(({headers:Wt})=>{if(Array.isArray(Wt["set-cookie"])){for(const Pt of Wt["set-cookie"]){this._ownerDocument._cookieJar.setCookieSync(Pt,un,{http:true,ignoreError:true})}}else if(Wt["set-cookie"]!==undefined){this._ownerDocument._cookieJar.setCookieSync(Wt["set-cookie"],un,{http:true,ignoreError:true})}}));this._ws.once("error",(()=>{Pt();this._requiredToFail=true}))})))))}_makeDisappear(){this._eventListeners=Object.create(null);this._close(1001)}static cleanUpWindow(Wt){const Pt=vn.get(Wt._globalProxy);if(Pt!==undefined){for(const Wt of Pt){Wt._makeDisappear()}}}_onConnectionEstablished(){if(this._ws.extensions!==null){this.extensions=Object.keys(this._ws.extensions).join(", ")}cn("open",this)}_onMessageReceived(Wt,Pt){if(this.readyState!==An){return}let en;if(!Pt){en=Wt.toString()}else if(this.binaryType==="arraybuffer"){if(dn(Wt)){en=Wt}else if(Array.isArray(Wt)){en=un(Buffer.concat(Wt),this._globalObject)}else{en=un(Wt,this._globalObject)}}else{if(!Array.isArray(Wt)){Wt=[Wt]}en=bn.create(this._globalObject,[Wt,{type:""}])}cn("message",this,hn,{data:en,origin:In(this._urlRecord)})}_onConnectionClosed(Wt,Pt){const en=vn.get(this._ownerDocument._defaultView);en.delete(this);const tn=!this._requiredToFail;if(this._requiredToFail){cn("error",this)}cn("close",this,Gn,{wasClean:tn,code:Wt,reason:Pt.toString()})}get readyState(){if(this._ws!==null){return yn[this._ws.readyState]}return this._readyState}get protocol(){if(this._ws===null){return""}return this._ws.protocol}close(Wt=undefined,Pt=undefined){if(Wt!==undefined&&Wt!==1e3&&!(Wt>=3e3&&Wt<=4999)){throw nn.create(this._globalObject,[`The code must be either 1000, or between 3000 and 4999. ${Wt} is neither.`,"InvalidAccessError"])}if(Pt!==undefined&&Buffer.byteLength(Pt,"utf8")>123){throw nn.create(this._globalObject,["The message must not be greater than 123 bytes.","SyntaxError"])}this._close(Wt,Pt)}_close(Wt=undefined,Pt=undefined){if(this.readyState===Zn){this._requiredToFail=true;if(this._ws!==null){this._ws.terminate()}else{this._readyState=Wn}}else if(this.readyState===An){this._ws.close(Wt,Pt)}}send(Wt){if(this.readyState===Zn){throw nn.create(this._globalObject,["Still in CONNECTING state.","InvalidStateError"])}if(this.readyState!==An){return}if(bn.isImpl(Wt)){Wt=Wt._buffer}let Pt;if(typeof Wt==="string"){Pt=Buffer.byteLength(Wt,"utf8")}else{Pt=Wt.byteLength}this.bufferedAmount+=Pt;this._sendQueue.push([Wt,Pt]);this._scheduleSend()}_actuallySend(){for(const[Wt,Pt]of this._sendQueue.splice(0)){this._ws.send(Wt,{binary:typeof Wt!=="string"},(()=>{this.bufferedAmount-=Pt}))}}_scheduleSend(){if(this._dequeueScheduled){return}this._dequeueScheduled=true;process.nextTick((()=>{this._dequeueScheduled=false;this._actuallySend()}))}}on(WebSocketImpl.prototype,["open","message","error","close"]);Pt.implementation=WebSocketImpl},16899:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(38704);const an=en(87094);const{fireAnEvent:rn}=en(83350);class StorageImpl{constructor(Wt,Pt,en){const{associatedWindow:tn,storageArea:nn,url:an,type:rn,storageQuota:In}=en;this._associatedWindow=tn;this._items=nn;this._url=an;this._type=rn;this._quota=In;this._globalObject=Wt}_dispatchStorageEvent(Wt,Pt,en){return this._associatedWindow._currentOriginData.windowsInSameOrigin.filter((Wt=>Wt!==this._associatedWindow)).forEach((tn=>rn("storage",tn,nn,{key:Wt,oldValue:Pt,newValue:en,url:this._url,storageArea:tn["_"+this._type]})))}get length(){return this._items.size}key(Wt){if(Wt>=this._items.size){return null}return[...this._items.keys()][Wt]}getItem(Wt){if(this._items.has(Wt)){return this._items.get(Wt)}return null}setItem(Wt,Pt){const en=this._items.get(Wt)||null;if(en===Pt){return}let nn=Wt.length+Pt.length;for(const[Pt,en]of this._items){if(Wt!==Pt){nn+=Pt.length+en.length}}if(nn>this._quota){throw tn.create(this._globalObject,[`The ${this._quota}-code unit storage quota has been exceeded.`,"QuotaExceededError"])}setTimeout(this._dispatchStorageEvent.bind(this),0,Wt,en,Pt);this._items.set(Wt,Pt)}removeItem(Wt){if(this._items.has(Wt)){setTimeout(this._dispatchStorageEvent.bind(this),0,Wt,this._items.get(Wt),null);this._items.delete(Wt)}}clear(){if(this._items.size>0){setTimeout(this._dispatchStorageEvent.bind(this),0,null,null,null);this._items.clear()}}get[an.supportedPropertyNames](){return this._items.keys()}}Wt.exports={implementation:StorageImpl}},55357:(Wt,Pt)=>{"use strict";class BarPropImpl{}BarPropImpl.prototype.visible=true;Pt.implementation=BarPropImpl},72990:(Wt,Pt)=>{"use strict";Pt.implementation=class ExternalImpl{AddSearchProvider(){}IsSearchProviderInstalled(){}}},77589:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const{documentBaseURLSerialized:nn,parseURLToResultingURLRecord:an}=en(30962);const{serializeURL:rn}=en(78012);Pt.implementation=class HistoryImpl{constructor(Wt,Pt,en){this._window=en.window;this._document=en.document;this._actAsIfLocationReloadCalled=en.actAsIfLocationReloadCalled;this._state=null;this._globalObject=Wt}_guardAgainstInactiveDocuments(){if(!this._window){throw tn.create(this._globalObject,["History object is associated with a document that is not fully active.","SecurityError"])}}get length(){this._guardAgainstInactiveDocuments();return this._window._sessionHistory.length}get state(){this._guardAgainstInactiveDocuments();return this._state}go(Wt){this._guardAgainstInactiveDocuments();if(Wt===0){this._actAsIfLocationReloadCalled()}else{this._window._sessionHistory.traverseByDelta(Wt)}}back(){this.go(-1)}forward(){this.go(+1)}pushState(Wt,Pt,en){this._sharedPushAndReplaceState(Wt,en,"push")}replaceState(Wt,Pt,en){this._sharedPushAndReplaceState(Wt,en,"replace")}_sharedPushAndReplaceState(Wt,Pt,en){this._guardAgainstInactiveDocuments();let In=this._document._URL;if(Pt!==null&&Pt.length>0){In=an(Pt,this._document);if(In===null){throw tn.create(this._globalObject,[`Could not parse url argument "${Pt}" to ${en}State() against base URL `+`"${nn(this._document)}".`,"SecurityError"])}if(!canHaveItsURLRewritten(this._document,In)){throw tn.create(this._globalObject,[`${en}State() cannot update history to the URL ${rn(In)}.`,"SecurityError"])}}if(en==="push"){this._window._sessionHistory.removeAllEntriesAfterCurrentEntry();this._window._sessionHistory.clearHistoryTraversalTasks();const Pt={document:this._document,stateObject:Wt,url:In};this._window._sessionHistory.addEntryAfterCurrentEntry(Pt);this._window._sessionHistory.updateCurrentEntry(Pt)}else{const{currentEntry:Pt}=this._window._sessionHistory;Pt.stateObject=Wt;Pt.url=In}this._document._URL=In;this._state=Wt;this._document._latestEntry=this._window._sessionHistory.currentEntry}};function canHaveItsURLRewritten(Wt,Pt){const en=Wt._URL;if(Pt.scheme!==en.scheme||Pt.username!==en.username||Pt.password!==en.password||Pt.host!==en.host||Pt.port!==en.port){return false}if(Pt.scheme==="https"||Pt.scheme==="http"){return true}if(Pt.scheme==="file"&&Pt.path!==en.path){return false}if(Pt.path.join("/")!==en.path.join("/")||Pt.query!==en.query){return false}return true}},88666:(Wt,Pt,en)=>{"use strict";const tn=en(78012);const nn=en(16694);const{documentBaseURL:an,parseURLToResultingURLRecord:rn}=en(30962);const{navigate:In}=en(63714);Pt.implementation=class LocationImpl{constructor(Wt,Pt,en){this._relevantDocument=en.relevantDocument;this.url=null;this._globalObject=Wt}get _url(){return this._relevantDocument._URL}_locationObjectSetterNavigate(Wt){return this._locationObjectNavigate(Wt)}_locationObjectNavigate(Wt,{replacement:Pt=false}={}){In(this._relevantDocument._defaultView,Wt,{replacement:Pt,exceptionsEnabled:true})}toString(){return this.href}get href(){return tn.serializeURL(this._url)}set href(Wt){const Pt=tn.parseURL(Wt,{baseURL:an(this._relevantDocument)});if(Pt===null){throw new TypeError(`Could not parse "${Wt}" as a URL`)}this._locationObjectSetterNavigate(Pt)}get origin(){return tn.serializeURLOrigin(this._url)}get protocol(){return this._url.scheme+":"}set protocol(Wt){const Pt={...this._url};const en=tn.basicURLParse(Wt+":",{url:Pt,stateOverride:"scheme start"});if(en===null){throw new TypeError(`Could not parse the URL after setting the procol to "${Wt}"`)}if(Pt.scheme!=="http"&&Pt.scheme!=="https"){return}this._locationObjectSetterNavigate(Pt)}get host(){const Wt=this._url;if(Wt.host===null){return""}if(Wt.port===null){return tn.serializeHost(Wt.host)}return tn.serializeHost(Wt.host)+":"+tn.serializeInteger(Wt.port)}set host(Wt){const Pt={...this._url};if(tn.hasAnOpaquePath(Pt)){return}tn.basicURLParse(Wt,{url:Pt,stateOverride:"host"});this._locationObjectSetterNavigate(Pt)}get hostname(){if(this._url.host===null){return""}return tn.serializeHost(this._url.host)}set hostname(Wt){const Pt={...this._url};if(tn.hasAnOpaquePath(Pt)){return}tn.basicURLParse(Wt,{url:Pt,stateOverride:"hostname"});this._locationObjectSetterNavigate(Pt)}get port(){if(this._url.port===null){return""}return tn.serializeInteger(this._url.port)}set port(Wt){const Pt={...this._url};if(tn.cannotHaveAUsernamePasswordPort(Pt)){return}tn.basicURLParse(Wt,{url:Pt,stateOverride:"port"});this._locationObjectSetterNavigate(Pt)}get pathname(){return tn.serializePath(this._url)}set pathname(Wt){const Pt={...this._url};if(tn.hasAnOpaquePath(Pt)){return}Pt.path=[];tn.basicURLParse(Wt,{url:Pt,stateOverride:"path start"});this._locationObjectSetterNavigate(Pt)}get search(){if(this._url.query===null||this._url.query===""){return""}return"?"+this._url.query}set search(Wt){const Pt={...this._url};if(Wt===""){Pt.query=null}else{const en=Wt[0]==="?"?Wt.substring(1):Wt;Pt.query="";tn.basicURLParse(en,{url:Pt,stateOverride:"query",encodingOverride:this._relevantDocument.charset})}this._locationObjectSetterNavigate(Pt)}get hash(){if(this._url.fragment===null||this._url.fragment===""){return""}return"#"+this._url.fragment}set hash(Wt){const Pt={...this._url};const en=Wt[0]==="#"?Wt.substring(1):Wt;Pt.fragment="";tn.basicURLParse(en,{url:Pt,stateOverride:"fragment"});if(Pt.fragment===this._url.fragment){return}this._locationObjectSetterNavigate(Pt)}assign(Wt){const Pt=rn(Wt,this._relevantDocument);if(Pt===null){throw nn.create(this._globalObject,[`Could not resolve the given string "${Wt}" relative to the base URL "${this._relevantDocument.URL}"`,"SyntaxError"])}this._locationObjectNavigate(Pt)}replace(Wt){const Pt=rn(Wt,this._relevantDocument);if(Pt===null){throw nn.create(this._globalObject,[`Could not resolve the given string "${Wt}" relative to the base URL "${this._relevantDocument.URL}"`,"SyntaxError"])}this._locationObjectNavigate(Pt,{replacement:true})}reload(){const Wt={replace:true,reloadTriggered:true,exceptionsEnabled:true};In(this._relevantDocument._defaultView,this._url,Wt)}}},56599:(Wt,Pt)=>{"use strict";class ScreenImpl{}ScreenImpl.prototype.availWidth=0;ScreenImpl.prototype.availHeight=0;ScreenImpl.prototype.width=0;ScreenImpl.prototype.height=0;ScreenImpl.prototype.colorDepth=24;ScreenImpl.prototype.pixelDepth=24;Pt.implementation=ScreenImpl},1072:(Wt,Pt,en)=>{"use strict";const tn=en(78012);const nn=en(90863);const an=en(38007);const rn=en(8172);const In=en(87094);const{fireAnEvent:sn}=en(83350);class SessionHistory{constructor(Wt,Pt){this._window=Pt;this._windowImpl=In.implForWrapper(Pt);this._historyTraversalQueue=new Set;this._entries=[Wt];this._currentIndex=0}_queueHistoryTraversalTask(Wt){const Pt=this._window.setTimeout((()=>{this._historyTraversalQueue.delete(Pt);Wt()}),0);this._historyTraversalQueue.add(Pt)}clearHistoryTraversalTasks(){for(const Wt of this._historyTraversalQueue){this._window.clearTimeout(Wt)}this._historyTraversalQueue.clear()}get length(){return this._entries.length}get currentEntry(){return this._entries[this._currentIndex]}removeAllEntriesAfterCurrentEntry(){this._entries.splice(this._currentIndex+1,Infinity)}traverseByDelta(Wt){this._queueHistoryTraversalTask((()=>{const Pt=this._currentIndex+Wt;if(Pt<0||Pt>=this.length){return}const en=this._entries[Pt];this._queueHistoryTraversalTask((()=>{if(en.document!==this.currentEntry.document){rn("Traversing history in a way that would change the window",this._window)}this.traverseHistory(en)}))}))}traverseHistory(Wt,Pt={}){if(!Wt.document){rn("Traversing the history to an entry that no longer holds a Document object",this._window)}const en=Boolean(Pt.nonBlockingEvents);const tn=In.implForWrapper(this._window._document);const{currentEntry:nn}=this;if(nn.title===undefined){nn.title=tn.title}if(Wt.document!==nn.document){rn("Traversing the history to an entry with a different Document",this._window)}tn._URL=Wt.url;const an=Wt.url.fragment!==nn.url.fragment&&Wt.document===nn.document;let sn,on;if(an){sn=nn.url;on=Wt.url}if(Pt.replacement){this._entries.splice(this._entries.indexOf(Wt)-1,1)}this.updateCurrentEntry(Wt);const cn=Wt.stateObject;tn._history._state=cn;const dn=Wt.document._latestEntry!==Wt;Wt.document._latestEntry=Wt;const fireEvents=()=>this._fireEvents(dn,an,cn,sn,on);if(en){this._window.setTimeout(fireEvents,0)}else{fireEvents()}}_fireEvents(Wt,Pt,en,rn,In){if(Wt){sn("popstate",this._windowImpl,an,{state:en})}if(Pt){sn("hashchange",this._windowImpl,nn,{oldURL:tn.serializeURL(rn),newURL:tn.serializeURL(In)})}}addEntryAfterCurrentEntry(Wt){this._entries.splice(this._currentIndex+1,0,Wt)}updateCurrentEntry(Wt){this._currentIndex=this._entries.indexOf(Wt)}}Wt.exports=SessionHistory},63714:(Wt,Pt,en)=>{"use strict";const tn=en(78012);const nn=en(8172);const an=en(12323);const rn=en(87094);Pt.evaluateJavaScriptURL=(Wt,Pt)=>{const en=tn.serializeURL(Pt);const nn=en.substring("javascript:".length);const rn=Buffer.from(tn.percentDecodeString(nn)).toString();if(Wt._runScripts==="dangerously"){try{return Wt.eval(rn)}catch(Pt){an(Wt,Pt,en)}}return undefined};Pt.navigate=(Wt,en,tn)=>{if(!Wt._document){return}const an=rn.implForWrapper(Wt._document);const In=an._URL;if(!tn.reloadTriggered&&urlEquals(In,en,{excludeFragments:true})){if(en.fragment!==In.fragment){navigateToFragment(Wt,en,tn)}return}if(en.scheme==="javascript"){setTimeout((()=>{const tn=Pt.evaluateJavaScriptURL(Wt,en);if(typeof tn==="string"){nn("string results from 'javascript:' URLs",Wt)}}),0);return}navigateFetch(Wt)};function navigateToFragment(Wt,Pt,en){const tn=rn.implForWrapper(Wt._document);Wt._sessionHistory.clearHistoryTraversalTasks();if(!en.replacement){Wt._sessionHistory.removeAllEntriesAfterCurrentEntry()}const nn={document:tn,url:Pt};Wt._sessionHistory.addEntryAfterCurrentEntry(nn);Wt._sessionHistory.traverseHistory(nn,{nonBlockingEvents:true,replacement:en.replacement})}function navigateFetch(Wt){nn("navigation (except hash changes)",Wt)}function urlEquals(Wt,Pt,en){const nn=tn.serializeURL(Wt,en.excludeFragments);const an=tn.serializeURL(Pt,en.excludeFragments);return nn===an}},52703:(Wt,Pt,en)=>{"use strict";const tn=en(16694);const nn=en(87094);const{closest:an}=en(83521);const{isDisabled:rn,isButton:In,isSubmitButton:sn}=en(10588);const on=en(42960);const cn=en(96689);const dn=en(37125);Pt.implementation=class FormDataImpl{constructor(Wt,Pt){this._globalObject=Wt;this._entries=[];if(Pt[0]!==undefined){const[Wt,en=null]=Pt;if(en!==null){if(!sn(en)){throw new TypeError("The specified element is not a submit button")}if(en.form!==Wt){throw tn.create(this._globalObject,["The specified element is not owned by this form element","NotFoundError"])}}this._entries=constructTheEntryList(Wt,en)}}append(Wt,Pt,en){const tn=createAnEntry(Wt,Pt,en);this._entries.push(tn)}delete(Wt){this._entries=this._entries.filter((Pt=>Pt.name!==Wt))}get(Wt){const Pt=this._entries.find((Pt=>Pt.name===Wt));return Pt!==undefined?nn.tryWrapperForImpl(Pt.value):null}getAll(Wt){return this._entries.filter((Pt=>Pt.name===Wt)).map((Wt=>nn.tryWrapperForImpl(Wt.value)))}has(Wt){return this._entries.findIndex((Pt=>Pt.name===Wt))!==-1}set(Wt,Pt,en){const tn=createAnEntry(Wt,Pt,en);const nn=this._entries.findIndex((Pt=>Pt.name===Wt));if(nn!==-1){this._entries[nn]=tn;this._entries=this._entries.filter(((Pt,en)=>Pt.name!==Wt||en===nn))}else{this._entries.push(tn)}}*[Symbol.iterator](){for(const Wt of this._entries){yield[Wt.name,nn.tryWrapperForImpl(Wt.value)]}}};function createAnEntry(Wt,Pt,en){const tn={name:Wt};if(on.isImpl(Pt)&&!cn.isImpl(Pt)){const Wt=Pt;Pt=cn.createImpl(Pt._globalObject,[[],"blob",{type:Wt.type}]);Pt._buffer=Wt._buffer}if(cn.isImpl(Pt)&&en!==undefined){const Wt=Pt;Pt=cn.createImpl(Pt._globalObject,[[],en,{type:Wt.type,lastModified:Wt.lastModified}]);Pt._buffer=Wt._buffer}tn.value=Pt;return tn}function constructTheEntryList(Wt,Pt){const en=Wt._getSubmittableElementNodes();const tn=[];for(const nn of en){if(an(nn,"datalist")!==null){continue}if(rn(nn)){continue}if(In(nn)&&nn!==Pt){continue}if(nn.type==="checkbox"&&nn._checkedness===false){continue}if(nn.type==="radio"&&nn._checkedness===false){continue}if(nn.localName==="object"){continue}const en=nn.getAttributeNS(null,"name");if(nn.localName==="input"&&nn.type==="image"){const Wt=en?`${en}.`:"";const Pt=nn._selectedCoordinate??{x:0,y:0};appendAnEntry(tn,`${Wt}x`,Pt.x);appendAnEntry(tn,`${Wt}y`,Pt.y);continue}if(en===null||en===""){continue}if(nn.localName==="select"){for(const Wt of nn.options){if(Wt._selectedness===true&&!rn(nn)){appendAnEntry(tn,en,Wt._getValue())}}}else if(nn.localName==="input"&&(nn.type==="checkbox"||nn.type==="radio")){const Wt=nn.hasAttributeNS(null,"value")?nn.getAttributeNS(null,"value"):"on";appendAnEntry(tn,en,Wt)}else if(nn.type==="file"){if(nn.files.length===0){const Pt=cn.createImpl(Wt._globalObject,[[],"",{type:"application/octet-stream"}]);appendAnEntry(tn,en,Pt)}else{for(let Wt=0;Wt{"use strict";const tn=en(58611).STATUS_CODES;const{spawnSync:nn}=en(35317);const{URL:an}=en(78012);const rn=en(86476);const In=en(96684);const sn=en(59344);const on=en(2898);const cn=en(16694);const{documentBaseURLSerialized:dn}=en(30962);const{asciiCaseInsensitiveMatch:un}=en(97205);const pn=en(87094);const mn=en(18946);const bn=en(42960);const Gn=en(48241);const hn=en(60178).implementation;const Zn=en(58096);const An=en(90442);const{isArrayBuffer:Wn}=en(87094);const{parseIntoDocument:Nn}=en(13430);const{fragmentSerialization:gn}=en(49446);const{setupForSimpleEventAccessors:yn}=en(15676);const{parseJSONFromBytes:vn}=en(14161);const{fireAnEvent:Yn}=en(83350);const{copyToArrayBufferInNewRealm:En}=en(71179);const{READY_STATES:Vn}=on;const Rn=en.ab+"xhr-sync-worker.js";const wn=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;const Fn=/^[ \t]*(?:[\x21-\x7E\x80-\xFF](?:[ \t][\x21-\x7E\x80-\xFF])?)*[ \t]*$/;const Qn=new Set(["accept-charset","accept-encoding","access-control-request-headers","access-control-request-method","connection","content-length","cookie","cookie2","date","dnt","expect","host","keep-alive","origin","referer","te","trailer","transfer-encoding","upgrade","via"]);const fn=new Set(["set-cookie","set-cookie2"]);const Hn=new Set(["content-type","content-length","user-agent","referer","host","authorization","proxy-authorization","if-modified-since","if-unmodified-since","from","location","max-forwards"]);const Cn=new Set(["cache-control","content-language","content-length","content-type","expires","last-modified","pragma"]);const Xn=new Set(["OPTIONS","GET","HEAD","POST","PUT","DELETE"]);const kn=new Set(["TRACK","TRACE","CONNECT"]);class XMLHttpRequestImpl extends hn{constructor(Wt){super(Wt);const{_ownerDocument:Pt}=this;this.upload=Zn.createImpl(Wt);this.readyState=Vn.UNSENT;this.responseURL="";this.status=0;this.statusText="";this.flag={synchronous:false,withCredentials:false,mimeType:null,auth:null,method:undefined,responseType:"",requestHeaders:{},referrer:Pt.URL,uri:"",timeout:0,body:undefined,formData:false,preflight:false,requestManager:Pt._requestManager,strictSSL:Wt._resourceLoader._strictSSL,proxy:Wt._resourceLoader._proxy,cookieJar:Pt._cookieJar,encoding:Pt._encoding,origin:Wt._origin,userAgent:Wt.navigator.userAgent};this.properties={beforeSend:false,send:false,client:null,timeoutStart:0,timeoutId:0,timeoutFn:null,responseBuffer:null,responseCache:null,responseTextCache:null,responseXMLCache:null,responseHeaders:{},filteredResponseHeaders:[],error:"",uploadComplete:false,uploadListener:false,abortError:false,cookieJar:Pt._cookieJar,bufferStepSize:1*1024*1024,totalReceivedChunkSize:0}}get responseType(){return this.flag.responseType}set responseType(Wt){const{flag:Pt}=this;if(this.readyState===Vn.LOADING||this.readyState===Vn.DONE){throw cn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}if(this.readyState===Vn.OPENED&&Pt.synchronous){throw cn.create(this._globalObject,["The object does not support the operation or argument.","InvalidAccessError"])}Pt.responseType=Wt}get response(){const{properties:Wt}=this;if(Wt.responseCache){return pn.tryWrapperForImpl(Wt.responseCache)}let Pt;const en=Wt.responseBuffer?Wt.responseBuffer.slice(0,Wt.totalReceivedChunkSize):null;switch(this.responseType){case"":case"text":{Pt=this.responseText;break}case"arraybuffer":{if(!en){return null}Pt=En(en,this._globalObject);break}case"blob":{if(!en){return null}const Wt=finalMIMEType(this);Pt=bn.createImpl(this._globalObject,[[new Uint8Array(en)],{type:Wt||""}]);break}case"document":{Pt=this.responseXML;break}case"json":{if(this.readyState!==Vn.DONE||!en){Pt=null}try{Pt=vn(en)}catch(Wt){Pt=null}break}}Wt.responseCache=Pt;return pn.tryWrapperForImpl(Pt)}get responseText(){const{properties:Wt}=this;if(this.responseType!==""&&this.responseType!=="text"){throw cn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}if(this.readyState!==Vn.LOADING&&this.readyState!==Vn.DONE){return""}if(Wt.responseTextCache){return Wt.responseTextCache}const Pt=Wt.responseBuffer?Wt.responseBuffer.slice(0,Wt.totalReceivedChunkSize):null;if(!Pt){return""}const en=finalCharset(this)||rn.getBOMEncoding(Pt)||"UTF-8";const tn=rn.decode(Pt,en);Wt.responseTextCache=tn;return tn}get responseXML(){const{flag:Wt,properties:Pt}=this;if(this.responseType!==""&&this.responseType!=="document"){throw cn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}if(this.readyState!==Vn.DONE){return null}if(Pt.responseXMLCache){return Pt.responseXMLCache}const en=Pt.responseBuffer?Pt.responseBuffer.slice(0,Pt.totalReceivedChunkSize):null;if(!en){return null}const tn=finalMIMEType(this);let nn=false;let an=false;const In=sn.parse(tn);if(In){nn=In.isHTML();an=In.isXML();if(!an&&!nn){return null}}if(this.responseType===""&&nn){return null}const on=finalCharset(this)||rn.getBOMEncoding(en)||"UTF-8";const dn=rn.decode(en,on);if(!dn){return null}const un=mn.createImpl(this._globalObject,[],{options:{url:Wt.uri,lastModified:new Date(getResponseHeader(this,"last-modified")),parsingMode:nn?"html":"xml",cookieJar:{setCookieSync:()=>undefined,getCookieStringSync:()=>""},encoding:on,parseOptions:this._ownerDocument._parseOptions}});try{Nn(dn,un)}catch(Wt){Pt.responseXMLCache=null;return null}un.close();Pt.responseXMLCache=un;return un}get timeout(){return this.flag.timeout}set timeout(Wt){const{flag:Pt,properties:en}=this;if(Pt.synchronous){throw cn.create(this._globalObject,["The object does not support the operation or argument.","InvalidAccessError"])}Pt.timeout=Wt;clearTimeout(en.timeoutId);if(Wt>0&&en.timeoutFn){en.timeoutId=setTimeout(en.timeoutFn,Math.max(0,Wt-((new Date).getTime()-en.timeoutStart)))}else{en.timeoutFn=null;en.timeoutStart=0}}get withCredentials(){return this.flag.withCredentials}set withCredentials(Wt){const{flag:Pt,properties:en}=this;if(!(this.readyState===Vn.UNSENT||this.readyState===Vn.OPENED)){throw cn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}if(en.send){throw cn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}Pt.withCredentials=Wt}abort(){const{properties:Wt}=this;clearTimeout(Wt.timeoutId);Wt.timeoutFn=null;Wt.timeoutStart=0;const{client:Pt}=Wt;if(Pt){Pt.abort();Wt.client=null}if(Wt.abortError){this.readyState=Vn.DONE;Wt.send=false;on.setResponseToNetworkError(this);return}if(this.readyState===Vn.OPENED&&Wt.send||this.readyState===Vn.HEADERS_RECEIVED||this.readyState===Vn.LOADING){on.requestErrorSteps(this,"abort")}if(this.readyState===Vn.DONE){this.readyState=Vn.UNSENT;on.setResponseToNetworkError(this)}}getAllResponseHeaders(){const{properties:Wt,readyState:Pt}=this;if(Pt===Vn.UNSENT||Pt===Vn.OPENED){return""}return Object.keys(Wt.responseHeaders).filter((Pt=>Wt.filteredResponseHeaders.indexOf(Pt)===-1)).map((Pt=>[Pt.toLowerCase(),Wt.responseHeaders[Pt]].join(": "))).join("\r\n")}getResponseHeader(Wt){const{properties:Pt,readyState:en}=this;if(en===Vn.UNSENT||en===Vn.OPENED){return null}const tn=Wt.toLowerCase();if(Pt.filteredResponseHeaders.find((Wt=>tn===Wt.toLowerCase()))){return null}return getResponseHeader(this,tn)}open(Wt,Pt,en,tn,nn){const{flag:rn,properties:In,_ownerDocument:sn}=this;if(!sn){throw cn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}if(!wn.test(Wt)){throw cn.create(this._globalObject,["The string did not match the expected pattern.","SyntaxError"])}const on=Wt.toUpperCase();if(kn.has(on)){throw cn.create(this._globalObject,["The operation is insecure.","SecurityError"])}const{client:un}=In;if(un&&typeof un.abort==="function"){un.abort()}if(Xn.has(on)){Wt=on}if(typeof en!=="undefined"){rn.synchronous=!en}else{rn.synchronous=false}if(rn.responseType&&rn.synchronous){throw cn.create(this._globalObject,["The object does not support the operation or argument.","InvalidAccessError"])}if(rn.synchronous&&rn.timeout){throw cn.create(this._globalObject,["The object does not support the operation or argument.","InvalidAccessError"])}rn.method=Wt;let pn;try{pn=new an(Pt,dn(sn))}catch(Wt){throw cn.create(this._globalObject,["The string did not match the expected pattern.","SyntaxError"])}if(tn||nn&&!pn.username){rn.auth={user:tn,pass:nn};pn.username="";pn.password=""}rn.uri=pn.href;rn.requestHeaders={};rn.preflight=false;In.send=false;In.uploadListener=false;In.abortError=false;this.responseURL="";readyStateChange(this,Vn.OPENED)}overrideMimeType(Wt){const{readyState:Pt}=this;if(Pt===Vn.LOADING||Pt===Vn.DONE){throw cn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}this.flag.overrideMIMEType="application/octet-stream";const en=sn.parse(Wt);if(en){this.flag.overrideMIMEType=en.essence;const Wt=en.parameters.get("charset");if(Wt){this.flag.overrideCharset=rn.labelToName(Wt)}}}send(Wt){const{flag:Pt,properties:tn,upload:rn,_ownerDocument:dn}=this;if(!dn){throw cn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}if(this.readyState!==Vn.OPENED||tn.send){throw cn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}tn.beforeSend=true;try{if(Pt.method==="GET"||Pt.method==="HEAD"){Wt=null}if(Wt!==null){let en=null;let tn=null;if(mn.isImpl(Wt)){en="UTF-8";tn=(Wt._parsingMode==="html"?"text/html":"application/xml")+";charset=UTF-8";Pt.body=gn(Wt,{requireWellFormed:false})}else{if(typeof Wt==="string"){en="UTF-8"}const{buffer:nn,formData:an,contentType:rn}=extractBody(Wt);tn=rn;Pt.body=nn||an;Pt.formData=Boolean(an)}const nn=on.getRequestHeader(Pt.requestHeaders,"content-type");if(tn!==null&&nn===null){Pt.requestHeaders["Content-Type"]=tn}else if(nn!==null&&en!==null){const Wt=sn.parse(nn);if(Wt){const tn=Wt.parameters.get("charset");if(tn&&!un(tn,en)&&en!==null){Wt.parameters.set("charset",en);on.updateRequestHeader(Pt.requestHeaders,"content-type",Wt.toString())}}}}}finally{if(tn.beforeSend){tn.beforeSend=false}else{throw cn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}}if(Object.keys(rn._eventListeners).length>0){tn.uploadListener=true}if(Pt.body&&Pt.body.byteLength===0){Pt.body=null}if(Pt.synchronous){const Wt=JSON.stringify(Pt,(function(Wt,en){if(this===Pt&&Wt==="requestManager"){return null}if(this===Pt&&Wt==="pool"&&en){return{maxSockets:en.maxSockets}}return en}));const an=nn(process.execPath,[en.ab+"xhr-sync-worker.js"],{input:Wt,maxBuffer:Infinity});if(an.status!==0){throw new Error(an.stderr.toString())}if(an.error){if(typeof an.error==="string"){an.error=new Error(an.error)}throw an.error}const rn=JSON.parse(an.stdout.toString());const sn=rn.properties;if(sn.responseBuffer&&sn.responseBuffer.data){sn.responseBuffer=Buffer.from(sn.responseBuffer.data)}if(sn.cookieJar){sn.cookieJar=In.CookieJar.deserializeSync(sn.cookieJar,dn._cookieJar.store)}this.readyState=Vn.LOADING;this.status=rn.status;this.statusText=rn.statusText;this.responseURL=rn.responseURL;Object.assign(this.properties,rn.properties);if(sn.error){on.dispatchError(this);throw cn.create(this._globalObject,[sn.error,"NetworkError"])}else{const{responseBuffer:Wt}=tn;const Pt=getResponseHeader(this,"content-length")||"0";const en=parseInt(Pt)||Wt.length;const nn={lengthComputable:false};if(en!==0){nn.total=en;nn.loaded=en;nn.lengthComputable=true}Yn("progress",this,An,nn);readyStateChange(this,Vn.DONE);Yn("load",this,An,nn);Yn("loadend",this,An,nn)}}else{tn.send=true;Yn("loadstart",this,An);const en=on.createClient(this);tn.client=en;tn.totalReceivedChunkSize=0;tn.bufferStepSize=1*1024*1024;tn.origin=Pt.origin;en.on("error",(Wt=>{en.removeAllListeners();tn.error=Wt;on.dispatchError(this)}));en.on("response",((Wt,Pt)=>receiveResponse(this,Wt,Pt)));en.on("redirect",((Wt,en,nn)=>{const rn=new an(en.Referer);const In=new an(nn);if(rn.origin!==In.origin&&rn.origin!==Pt.origin){tn.origin="null"}en.Origin=tn.origin;if(Pt.origin!==rn.origin&&rn.protocol!=="data:"){if(!on.validCORSHeaders(this,Wt,Pt,tn,Pt.origin)){return}if(In.username||In.password){tn.error="Userinfo forbidden in cors redirect";on.dispatchError(this)}}}));if(Wt!==null&&Wt!==""){tn.uploadComplete=false;setDispatchProgressEvents(this)}else{tn.uploadComplete=true}if(this.timeout>0){tn.timeoutStart=(new Date).getTime();tn.timeoutFn=()=>{en.abort();if(!(this.readyState===Vn.UNSENT||this.readyState===Vn.OPENED&&!tn.send||this.readyState===Vn.DONE)){tn.send=false;let Wt=false;if(!tn.uploadComplete){Yn("progress",rn,An);readyStateChange(this,Vn.DONE);Yn("timeout",rn,An);Yn("loadend",rn,An);Wt=true}Yn("progress",this,An);if(!Wt){readyStateChange(this,Vn.DONE)}Yn("timeout",this,An);Yn("loadend",this,An)}this.readyState=Vn.UNSENT};tn.timeoutId=setTimeout(tn.timeoutFn,this.timeout)}}}setRequestHeader(Wt,Pt){const{flag:en,properties:tn}=this;if(this.readyState!==Vn.OPENED||tn.send){throw cn.create(this._globalObject,["The object is in an invalid state.","InvalidStateError"])}Pt=normalizeHeaderValue(Pt);if(!wn.test(Wt)||!Fn.test(Pt)){throw cn.create(this._globalObject,["The string did not match the expected pattern.","SyntaxError"])}const nn=Wt.toLowerCase();if(Qn.has(nn)||nn.startsWith("sec-")||nn.startsWith("proxy-")){return}const an=Object.keys(en.requestHeaders);let rn=an.length;while(rn--){const Wt=an[rn];if(Wt.toLowerCase()===nn){en.requestHeaders[Wt]+=", "+Pt;return}}en.requestHeaders[Wt]=Pt}}yn(XMLHttpRequestImpl.prototype,["readystatechange"]);function readyStateChange(Wt,Pt){if(Wt.readyState===Pt){return}Wt.readyState=Pt;Yn("readystatechange",Wt)}function receiveResponse(Wt,Pt,en){const{flag:nn,properties:rn}=Wt;const{rawHeaders:In,statusCode:sn}=Pt;let cn=0;const dn={};const un=[];const pn={};const mn=Number(In.length);for(let Wt=0;Wt{cn+=Wt.length;Zn.loaded=cn}));rn.client.on("data",(Pt=>{rn.totalReceivedChunkSize+=Pt.length;if(rn.totalReceivedChunkSize>=rn.bufferStepSize){rn.bufferStepSize*=2;while(rn.totalReceivedChunkSize>=rn.bufferStepSize){rn.bufferStepSize*=2}const Wt=Buffer.alloc(rn.bufferStepSize);rn.responseBuffer.copy(Wt,0,0,rn.responseBuffer.length);rn.responseBuffer=Wt}Pt.copy(rn.responseBuffer,rn.totalReceivedChunkSize-Pt.length,0,Pt.length);rn.responseCache=null;rn.responseTextCache=null;rn.responseXMLCache=null;if(Wt.readyState===Vn.HEADERS_RECEIVED){Wt.readyState=Vn.LOADING}Yn("readystatechange",Wt);if(Zn.total!==Zn.loaded||rn.totalReceivedChunkSize===cn){if(Wn!==Zn.loaded){Wn=Zn.loaded;Yn("progress",Wt,An,Zn)}}}));rn.client.on("end",(()=>{clearTimeout(rn.timeoutId);rn.timeoutFn=null;rn.timeoutStart=0;rn.client=null;if(Wn!==Zn.loaded){Yn("progress",Wt,An,Zn)}readyStateChange(Wt,Vn.DONE);Yn("load",Wt,An,Zn);Yn("loadend",Wt,An,Zn)}))}function setDispatchProgressEvents(Wt){const{properties:Pt,upload:en}=Wt;const{client:tn}=Pt;let nn=0;let an=false;const rn=tn.headers&&parseInt(on.getRequestHeader(tn.headers,"content-length"));if(rn){nn=rn;an=true}const In={lengthComputable:an,total:nn,loaded:0};if(Pt.uploadListener){Yn("loadstart",en,An,In)}tn.on("request",(Wt=>{Wt.on("response",(()=>{Pt.uploadComplete=true;if(!Pt.uploadListener){return}const Wt={lengthComputable:an,total:nn,loaded:nn};Yn("progress",en,An,Wt);Yn("load",en,An,Wt);Yn("loadend",en,An,Wt)}))}))}function finalMIMEType(Wt){const{flag:Pt}=Wt;return Pt.overrideMIMEType||getResponseHeader(Wt,"content-type")}function finalCharset(Wt){const{flag:Pt}=Wt;if(Pt.overrideCharset){return Pt.overrideCharset}const en=sn.parse(getResponseHeader(Wt,"content-type"));if(en){return rn.labelToName(en.parameters.get("charset"))}return null}function getResponseHeader(Wt,Pt){const{properties:en}=Wt;const tn=Object.keys(en.responseHeaders);let nn=tn.length;while(nn--){const Wt=tn[nn];if(Wt.toLowerCase()===Pt){return en.responseHeaders[Wt]}}return null}function normalizeHeaderValue(Wt){return Wt.replace(/^[\x09\x0A\x0D\x20]+/,"").replace(/[\x09\x0A\x0D\x20]+$/,"")}function extractBody(Wt){if(bn.isImpl(Wt)){return{buffer:Wt._buffer,contentType:Wt.type===""?null:Wt.type}}else if(Wn(Wt)){return{buffer:Buffer.from(Wt),contentType:null}}else if(ArrayBuffer.isView(Wt)){return{buffer:Buffer.from(Wt.buffer,Wt.byteOffset,Wt.byteLength),contentType:null}}else if(Gn.isImpl(Wt)){const Pt=[];for(const en of Wt._entries){let Wt;if(bn.isImpl(en.value)){const Pt=en.value;Wt={name:en.name,value:Pt._buffer,options:{filename:Pt.name,contentType:Pt.type,knownLength:Pt.size}}}else{Wt=en}Pt.push(Wt)}return{formData:Pt}}return{buffer:Buffer.from(Wt,"utf-8"),contentType:"text/plain;charset=UTF-8"}}Pt.implementation=XMLHttpRequestImpl},60178:(Wt,Pt,en)=>{"use strict";const tn=en(92697).implementation;const nn=en(87094);const{setupForSimpleEventAccessors:an}=en(15676);const rn=["loadstart","progress","abort","error","load","timeout","loadend"];class XMLHttpRequestEventTargetImpl extends tn{get _ownerDocument(){return nn.implForWrapper(this._globalObject._document)}}an(XMLHttpRequestEventTargetImpl.prototype,rn);Pt.implementation=XMLHttpRequestEventTargetImpl},45164:(Wt,Pt,en)=>{"use strict";const tn=en(60178).implementation;Pt.implementation=class XMLHttpRequestUploadImpl extends tn{}},2898:(Wt,Pt,en)=>{"use strict";const tn=en(79896);const{EventEmitter:nn}=en(24434);const{URL:an}=en(78012);const rn=en(32946);const In=en(16694);const sn=en(90442);const on=en(96577);const cn=en(13907);const dn=en(96454);const{fireAnEvent:un}=en(83350);const pn=/,[ \t]*/;const mn=new Set(["GET","HEAD","POST"]);const bn=new Set(["accept","accept-language","content-language","content-type"]);const Gn=new Set(["access-control-expose-headers","access-control-allow-headers","access-control-allow-credentials","access-control-allow-origin"]);const hn=Pt.READY_STATES=Object.freeze({UNSENT:0,OPENED:1,HEADERS_RECEIVED:2,LOADING:3,DONE:4});function getRequestHeader(Wt,Pt){const en=Pt.toLowerCase();const tn=Object.keys(Wt);let nn=tn.length;while(nn--){const Pt=tn[nn];if(Pt.toLowerCase()===en){return Wt[Pt]}}return null}function updateRequestHeader(Wt,Pt,en){const tn=Pt.toLowerCase();const nn=Object.keys(Wt);let an=nn.length;while(an--){const Pt=nn[an];if(Pt.toLowerCase()===tn){Wt[Pt]=en}}}function dispatchError(Wt){const Pt=Wt.properties.error;requestErrorSteps(Wt,"error",In.create(Wt._globalObject,[Pt,"NetworkError"]));if(Wt._ownerDocument){const en=new Error(Pt);en.type="XMLHttpRequest";Wt._ownerDocument._defaultView._virtualConsole.emit("jsdomError",en)}}function validCORSHeaders(Wt,Pt,en,tn,nn){const an=Pt.headers["access-control-allow-origin"];const rn=an?an.trim():null;if(rn!=="*"&&rn!==nn){tn.error="Cross origin "+nn+" forbidden";dispatchError(Wt);return false}const In=Pt.headers["access-control-allow-credentials"];const sn=In?In.trim():null;if(en.withCredentials&&sn!=="true"){tn.error="Credentials forbidden";dispatchError(Wt);return false}return true}function validCORSPreflightHeaders(Wt,Pt,en,tn){if(!validCORSHeaders(Wt,Pt,en,tn,tn.origin)){return false}const nn=Pt.headers["access-control-allow-headers"];const an=new Set(nn?nn.trim().toLowerCase().split(pn):[]);const rn=an.has("*")?[]:Object.keys(en.requestHeaders).filter((Wt=>{const Pt=Wt.toLowerCase();return!bn.has(Pt)&&!an.has(Pt)}));if(rn.length>0){tn.error="Headers "+rn+" forbidden";dispatchError(Wt);return false}return true}function requestErrorSteps(Wt,Pt,en){const{flag:tn,properties:nn,upload:an}=Wt;Wt.readyState=hn.DONE;nn.send=false;setResponseToNetworkError(Wt);if(tn.synchronous){throw en}un("readystatechange",Wt);if(!nn.uploadComplete){nn.uploadComplete=true;if(nn.uploadListener){un(Pt,an,sn,{loaded:0,total:0,lengthComputable:false});un("loadend",an,sn,{loaded:0,total:0,lengthComputable:false})}}un(Pt,Wt,sn,{loaded:0,total:0,lengthComputable:false});un("loadend",Wt,sn,{loaded:0,total:0,lengthComputable:false})}function setResponseToNetworkError(Wt){const{properties:Pt}=Wt;Pt.responseBuffer=Pt.responseCache=Pt.responseTextCache=Pt.responseXMLCache=null;Pt.responseHeaders={};Wt.status=0;Wt.statusText=""}function createClient(Wt){const{flag:Pt,properties:en}=Wt;const In=new an(Pt.uri);const sn=In.href;const un=Pt.method.toUpperCase();const{requestManager:pn}=Pt;if(In.protocol==="file:"){const Pt=new nn;Pt.statusCode=200;Pt.rawHeaders=[];Pt.headers={};const an=In.pathname.replace(/^file:\/\//,"").replace(/^\/([a-z]):\//i,"$1:/").replace(/%20/g," ");const rn=new nn;const sn=tn.createReadStream(an,{encoding:null});sn.on("data",(Wt=>{Pt.emit("data",Wt);rn.emit("data",Wt)}));sn.on("end",(()=>{Pt.emit("end");rn.emit("end")}));sn.on("error",(Wt=>{rn.emit("error",Wt)}));rn.abort=function(){sn.destroy();rn.emit("abort")};if(pn){const Pt={abort(){en.abortError=true;Wt.abort()}};pn.add(Pt);const tn=pn.remove.bind(pn,Pt);rn.on("abort",tn);rn.on("error",tn);rn.on("end",tn)}process.nextTick((()=>rn.emit("response",Pt,In.href)));return rn}if(In.protocol==="data:"){const Wt=new nn;const Pt=new nn;let en;try{const Pt=rn(sn);const tn=Pt.mimeType.toString();en=Buffer.from(Pt.body);Wt.statusCode=200;Wt.rawHeaders=["Content-Type",tn];Wt.headers={"content-type":tn}}catch(Wt){process.nextTick((()=>Pt.emit("error",Wt)));return Pt}Pt.abort=()=>{};process.nextTick((()=>{Pt.emit("response",Wt,In.href);process.nextTick((()=>{Wt.emit("data",en);Pt.emit("data",en);Wt.emit("end");Pt.emit("end")}))}));return Pt}const Gn=on(Pt.proxy,Pt.strictSSL);const hn={};for(const Wt in Pt.requestHeaders){hn[Wt]=Pt.requestHeaders[Wt]}if(getRequestHeader(Pt.requestHeaders,"referer")===null){hn.Referer=Pt.referrer}if(getRequestHeader(Pt.requestHeaders,"user-agent")===null){hn["User-Agent"]=Pt.userAgent}if(getRequestHeader(Pt.requestHeaders,"accept-language")===null){hn["Accept-Language"]="en"}if(getRequestHeader(Pt.requestHeaders,"accept")===null){hn.Accept="*/*"}const Zn=Pt.origin!==In.origin;if(Zn){hn.Origin=Pt.origin}const An={rejectUnauthorized:Pt.strictSSL,agents:Gn,followRedirects:true};if(Pt.auth){An.user=Pt.auth.user||"";An.pass=Pt.auth.pass||""}if(Pt.cookieJar&&(!Zn||Pt.withCredentials)){An.cookieJar=Pt.cookieJar}const{body:Wn}=Pt;const Nn=Wn!==undefined&&Wn!==null&&Wn!==""&&!(un==="HEAD"||un==="GET");if(Nn&&getRequestHeader(Pt.requestHeaders,"content-type")===null){hn["Content-Type"]="text/plain;charset=UTF-8"}function doRequest(){try{let Wt=Wn;let en=0;if(Nn){if(Pt.formData){Wt=new dn;for(const Pt of Wn){Wt.append(Pt.name,Pt.value,Pt.options)}en=Wt.getLengthSync();hn["Content-Type"]=`multipart/form-data; boundary=${Wt.getBoundary()}`}else{if(typeof Wn==="string"){en=Buffer.byteLength(Wn)}else{en=Wn.length}Wt=Buffer.isBuffer(Wt)?Wt:Buffer.from(Wt)}hn["Content-Length"]=en}hn["Accept-Encoding"]="gzip, deflate";const tn=new cn(sn,An,{method:Pt.method,headers:hn});if(Nn){if(Pt.formData){Wt.on("error",(Wt=>{tn.emit("error",Wt);tn.abort()}));tn.pipeRequest(Wt)}else{tn.write(Wt)}}return tn}catch(Wt){const Pt=new nn;process.nextTick((()=>Pt.emit("error",Wt)));Pt.end=()=>{};Pt.abort=()=>{};return Pt}}let gn;const yn=Object.keys(Pt.requestHeaders).filter((Wt=>!bn.has(Wt.toLowerCase())));if(Zn&&(!mn.has(un)||yn.length>0||en.uploadListener)){gn=new nn;const tn={};for(const Wt in hn){const Pt=Wt.toLowerCase();if(Pt==="origin"||Pt==="referer"){tn[Wt]=hn[Wt]}}tn["Access-Control-Request-Method"]=Pt.method;if(yn.length>0){tn["Access-Control-Request-Headers"]=yn.join(", ")}tn["User-Agent"]=Pt.userAgent;Pt.preflight=true;const an=Pt.strictSSL;const rn=new cn(sn,{agents:Gn,followRedirects:false},{method:"OPTIONS",headers:tn,rejectUnauthorized:an});rn.on("response",(tn=>{if(tn.statusCode<200||tn.statusCode>299){gn.emit("error",new Error("Response for preflight has invalid HTTP status code "+tn.statusCode));return}if(!validCORSPreflightHeaders(Wt,tn,Pt,en)){setResponseToNetworkError(Wt);return}const nn=doRequest();nn.on("response",((...Wt)=>gn.emit("response",...Wt)));nn.on("data",(Wt=>gn.emit("data",Wt)));nn.on("end",(()=>gn.emit("end")));nn.on("abort",(()=>gn.emit("abort")));nn.on("request",(Wt=>{gn.headers=nn.headers;gn.emit("request",Wt)}));nn.on("redirect",((...Wt)=>{gn.emit("redirect",...Wt)}));nn.on("error",(Wt=>{gn.emit("error",Wt)}));gn.abort=()=>{nn.abort()};setImmediate((()=>nn.end()))}));rn.on("error",(Wt=>{gn.emit("error",Wt)}));gn.abort=()=>{rn.abort()};setImmediate((()=>rn.end()))}else{gn=doRequest();setImmediate((()=>gn.end()))}if(pn){const Pt={abort(){en.abortError=true;Wt.abort()}};pn.add(Pt);const tn=pn.remove.bind(pn,Pt);gn.on("abort",tn);gn.on("error",tn);gn.on("end",tn)}return gn}Pt.headerListSeparatorRegexp=pn;Pt.simpleHeaders=bn;Pt.preflightHeaders=Gn;Pt.getRequestHeader=getRequestHeader;Pt.updateRequestHeader=updateRequestHeader;Pt.dispatchError=dispatchError;Pt.validCORSHeaders=validCORSHeaders;Pt.requestErrorSteps=requestErrorSteps;Pt.setResponseToNetworkError=setResponseToNetworkError;Pt.createClient=createClient},53515:(Wt,Pt)=>{"use strict";const en=Symbol("is named property");const tn=Symbol("named property tracker");Pt.create=function(Wt,Pt,en){if(Wt[tn]){throw Error("A NamedPropertiesTracker has already been created for this object")}const nn=new NamedPropertiesTracker(Wt,Pt,en);Wt[tn]=nn;return nn};Pt.get=function(Wt){if(!Wt){return null}return Wt[tn]||null};function NamedPropertiesTracker(Wt,Pt,en){this.object=Wt;this.objectProxy=Pt;this.resolverFunc=en;this.trackedValues=new Map}function newPropertyDescriptor(Wt,Pt){const tn=new Set;function getValues(){return Wt.trackedValues.get(Pt)||tn}const nn={enumerable:true,configurable:true,get(){return Wt.resolverFunc(Wt.object,Pt,getValues)},set(en){Object.defineProperty(Wt.object,Pt,{enumerable:true,configurable:true,writable:true,value:en})}};nn.get[en]=true;nn.set[en]=true;return nn}NamedPropertiesTracker.prototype.track=function(Wt,Pt){if(Wt===undefined||Wt===null||Wt===""){return}let en=this.trackedValues.get(Wt);if(!en){en=new Set;this.trackedValues.set(Wt,en)}en.add(Pt);if(Wt in this.objectProxy){return}const tn=newPropertyDescriptor(this,Wt);Object.defineProperty(this.object,Wt,tn)};NamedPropertiesTracker.prototype.untrack=function(Wt,Pt){if(Wt===undefined||Wt===null||Wt===""){return}const tn=this.trackedValues.get(Wt);if(!tn){return}if(!tn.delete(Pt)){return}if(tn.size===0){this.trackedValues.delete(Wt)}if(tn.size>0){return}const nn=Object.getOwnPropertyDescriptor(this.object,Wt);if(!nn||!nn.get||nn.get[en]!==true){return}delete this.object[Wt]}},35702:(Wt,Pt,en)=>{"use strict";const tn=en(78012);const{domSymbolTree:nn}=en(38542);const an=en(86415).TreePosition;Pt.define=function define(Wt,Pt){for(const en of Object.getOwnPropertyNames(Pt)){const tn=Object.getOwnPropertyDescriptor(Pt,en);Object.defineProperty(Wt,en,tn)}};Pt.mixin=(Wt,Pt)=>{const en=Reflect.ownKeys(Pt);for(let tn=0;tn2){return Wt}const Pt=rn++;return function(...en){if(!this._memoizedQueries){return Wt.apply(this,en)}if(!this._memoizedQueries[Pt]){this._memoizedQueries[Pt]=Object.create(null)}let tn;if(en.length===1&&typeof en[0]==="string"){tn=en[0]}else if(en.length===2&&typeof en[0]==="string"&&typeof en[1]==="string"){tn=en[0]+"::"+en[1]}else{return Wt.apply(this,en)}if(!(tn in this._memoizedQueries[Pt])){this._memoizedQueries[Pt][tn]=Wt.apply(this,en)}return this._memoizedQueries[Pt][tn]}};function isValidAbsoluteURL(Wt){return tn.parseURL(Wt)!==null}Pt.isValidTargetOrigin=function(Wt){return Wt==="*"||Wt==="/"||isValidAbsoluteURL(Wt)};Pt.simultaneousIterators=function*(Wt,Pt){for(;;){const en=Wt.next();const tn=Pt.next();if(en.done&&tn.done){return}yield[en.done?null:en.value,tn.done?null:tn.value]}};Pt.treeOrderSorter=function(Wt,Pt){const en=nn.compareTreePosition(Wt,Pt);if(en&an.PRECEDING){return 1}if(en&an.FOLLOWING){return-1}return 0};try{Pt.Canvas=en(79989)}catch{Pt.Canvas=null}},68224:(Wt,Pt,en)=>{"use strict";const{EventEmitter:tn}=en(24434);Wt.exports=class VirtualConsole extends tn{constructor(){super();this.on("error",(()=>{}))}sendTo(Wt,Pt){if(Pt===undefined){Pt={}}for(const en of Object.keys(Wt)){if(typeof Wt[en]==="function"){function onMethodCall(...Pt){Wt[en](...Pt)}this.on(en,onMethodCall)}}if(!Pt.omitJSDOMErrors){this.on("jsdomError",(Pt=>Wt.error(Pt.stack,Pt.detail)))}return this}}},37071:function(Wt,Pt,en){!function(Wt){function a(Wt,Pt){"use strict";var en,tn="uint8array",nn=Pt.ready.then((function(){function t(){if(0!==en._sodium_init())throw new Error("libsodium was not correctly initialized.");for(var Pt=["crypto_aead_aegis128l_decrypt","crypto_aead_aegis128l_decrypt_detached","crypto_aead_aegis128l_encrypt","crypto_aead_aegis128l_encrypt_detached","crypto_aead_aegis128l_keygen","crypto_aead_aegis256_decrypt","crypto_aead_aegis256_decrypt_detached","crypto_aead_aegis256_encrypt","crypto_aead_aegis256_encrypt_detached","crypto_aead_aegis256_keygen","crypto_aead_chacha20poly1305_decrypt","crypto_aead_chacha20poly1305_decrypt_detached","crypto_aead_chacha20poly1305_encrypt","crypto_aead_chacha20poly1305_encrypt_detached","crypto_aead_chacha20poly1305_ietf_decrypt","crypto_aead_chacha20poly1305_ietf_decrypt_detached","crypto_aead_chacha20poly1305_ietf_encrypt","crypto_aead_chacha20poly1305_ietf_encrypt_detached","crypto_aead_chacha20poly1305_ietf_keygen","crypto_aead_chacha20poly1305_keygen","crypto_aead_xchacha20poly1305_ietf_decrypt","crypto_aead_xchacha20poly1305_ietf_decrypt_detached","crypto_aead_xchacha20poly1305_ietf_encrypt","crypto_aead_xchacha20poly1305_ietf_encrypt_detached","crypto_aead_xchacha20poly1305_ietf_keygen","crypto_auth","crypto_auth_hmacsha256","crypto_auth_hmacsha256_final","crypto_auth_hmacsha256_init","crypto_auth_hmacsha256_keygen","crypto_auth_hmacsha256_update","crypto_auth_hmacsha256_verify","crypto_auth_hmacsha512","crypto_auth_hmacsha512256","crypto_auth_hmacsha512256_final","crypto_auth_hmacsha512256_init","crypto_auth_hmacsha512256_keygen","crypto_auth_hmacsha512256_update","crypto_auth_hmacsha512256_verify","crypto_auth_hmacsha512_final","crypto_auth_hmacsha512_init","crypto_auth_hmacsha512_keygen","crypto_auth_hmacsha512_update","crypto_auth_hmacsha512_verify","crypto_auth_keygen","crypto_auth_verify","crypto_box_beforenm","crypto_box_curve25519xchacha20poly1305_beforenm","crypto_box_curve25519xchacha20poly1305_detached","crypto_box_curve25519xchacha20poly1305_detached_afternm","crypto_box_curve25519xchacha20poly1305_easy","crypto_box_curve25519xchacha20poly1305_easy_afternm","crypto_box_curve25519xchacha20poly1305_keypair","crypto_box_curve25519xchacha20poly1305_open_detached","crypto_box_curve25519xchacha20poly1305_open_detached_afternm","crypto_box_curve25519xchacha20poly1305_open_easy","crypto_box_curve25519xchacha20poly1305_open_easy_afternm","crypto_box_curve25519xchacha20poly1305_seal","crypto_box_curve25519xchacha20poly1305_seal_open","crypto_box_curve25519xchacha20poly1305_seed_keypair","crypto_box_detached","crypto_box_easy","crypto_box_easy_afternm","crypto_box_keypair","crypto_box_open_detached","crypto_box_open_easy","crypto_box_open_easy_afternm","crypto_box_seal","crypto_box_seal_open","crypto_box_seed_keypair","crypto_core_ed25519_add","crypto_core_ed25519_from_hash","crypto_core_ed25519_from_uniform","crypto_core_ed25519_is_valid_point","crypto_core_ed25519_random","crypto_core_ed25519_scalar_add","crypto_core_ed25519_scalar_complement","crypto_core_ed25519_scalar_invert","crypto_core_ed25519_scalar_mul","crypto_core_ed25519_scalar_negate","crypto_core_ed25519_scalar_random","crypto_core_ed25519_scalar_reduce","crypto_core_ed25519_scalar_sub","crypto_core_ed25519_sub","crypto_core_hchacha20","crypto_core_hsalsa20","crypto_core_ristretto255_add","crypto_core_ristretto255_from_hash","crypto_core_ristretto255_is_valid_point","crypto_core_ristretto255_random","crypto_core_ristretto255_scalar_add","crypto_core_ristretto255_scalar_complement","crypto_core_ristretto255_scalar_invert","crypto_core_ristretto255_scalar_mul","crypto_core_ristretto255_scalar_negate","crypto_core_ristretto255_scalar_random","crypto_core_ristretto255_scalar_reduce","crypto_core_ristretto255_scalar_sub","crypto_core_ristretto255_sub","crypto_generichash","crypto_generichash_blake2b_salt_personal","crypto_generichash_final","crypto_generichash_init","crypto_generichash_keygen","crypto_generichash_update","crypto_hash","crypto_hash_sha256","crypto_hash_sha256_final","crypto_hash_sha256_init","crypto_hash_sha256_update","crypto_hash_sha512","crypto_hash_sha512_final","crypto_hash_sha512_init","crypto_hash_sha512_update","crypto_kdf_derive_from_key","crypto_kdf_keygen","crypto_kx_client_session_keys","crypto_kx_keypair","crypto_kx_seed_keypair","crypto_kx_server_session_keys","crypto_onetimeauth","crypto_onetimeauth_final","crypto_onetimeauth_init","crypto_onetimeauth_keygen","crypto_onetimeauth_update","crypto_onetimeauth_verify","crypto_pwhash","crypto_pwhash_scryptsalsa208sha256","crypto_pwhash_scryptsalsa208sha256_ll","crypto_pwhash_scryptsalsa208sha256_str","crypto_pwhash_scryptsalsa208sha256_str_verify","crypto_pwhash_str","crypto_pwhash_str_needs_rehash","crypto_pwhash_str_verify","crypto_scalarmult","crypto_scalarmult_base","crypto_scalarmult_ed25519","crypto_scalarmult_ed25519_base","crypto_scalarmult_ed25519_base_noclamp","crypto_scalarmult_ed25519_noclamp","crypto_scalarmult_ristretto255","crypto_scalarmult_ristretto255_base","crypto_secretbox_detached","crypto_secretbox_easy","crypto_secretbox_keygen","crypto_secretbox_open_detached","crypto_secretbox_open_easy","crypto_secretstream_xchacha20poly1305_init_pull","crypto_secretstream_xchacha20poly1305_init_push","crypto_secretstream_xchacha20poly1305_keygen","crypto_secretstream_xchacha20poly1305_pull","crypto_secretstream_xchacha20poly1305_push","crypto_secretstream_xchacha20poly1305_rekey","crypto_shorthash","crypto_shorthash_keygen","crypto_shorthash_siphashx24","crypto_sign","crypto_sign_detached","crypto_sign_ed25519_pk_to_curve25519","crypto_sign_ed25519_sk_to_curve25519","crypto_sign_ed25519_sk_to_pk","crypto_sign_ed25519_sk_to_seed","crypto_sign_final_create","crypto_sign_final_verify","crypto_sign_init","crypto_sign_keypair","crypto_sign_open","crypto_sign_seed_keypair","crypto_sign_update","crypto_sign_verify_detached","crypto_stream_chacha20","crypto_stream_chacha20_ietf_xor","crypto_stream_chacha20_ietf_xor_ic","crypto_stream_chacha20_keygen","crypto_stream_chacha20_xor","crypto_stream_chacha20_xor_ic","crypto_stream_keygen","crypto_stream_xchacha20_keygen","crypto_stream_xchacha20_xor","crypto_stream_xchacha20_xor_ic","randombytes_buf","randombytes_buf_deterministic","randombytes_close","randombytes_random","randombytes_set_implementation","randombytes_stir","randombytes_uniform","sodium_version_string"],tn=[x,k,S,T,w,Y,B,A,M,I,K,N,L,O,U,C,P,R,X,G,D,F,V,H,W,q,j,z,J,Q,Z,$,ee,ae,re,te,_e,ne,se,ce,he,oe,pe,ye,ie,le,ue,de,ve,ge,be,fe,me,Ee,xe,ke,Se,Te,we,Ye,Be,Ae,Me,Ie,Ke,Ne,Le,Oe,Ue,Ce,Pe,Re,Xe,Ge,De,Fe,Ve,He,We,qe,je,ze,Je,Qe,Ze,$e,ea,aa,ra,ta,_a,na,sa,ca,ha,oa,pa,ya,ia,la,ua,da,va,ga,ba,fa,ma,Ea,xa,ka,Sa,Ta,wa,Ya,Ba,Aa,Ma,Ia,Ka,Na,La,Oa,Ua,Ca,Pa,Ra,Xa,Ga,Da,Fa,Va,Ha,Wa,qa,ja,za,Ja,Qa,Za,$a,er,ar,rr,tr,_r,nr,sr,cr,hr,or,pr,yr,ir,lr,ur,dr,vr,gr,br,fr,mr,Er,xr,kr,Sr,Tr,wr,Yr,Br,Ar,Mr,Ir,Kr,Nr,Lr,Or,Ur,Cr,Pr,Rr,Xr,Gr,Dr,Fr,Vr,Hr,Wr,qr],nn=0;nn=240?(on=4,In=!0):cn>=224?(on=3,In=!0):cn>=192?(on=2,In=!0):cn<128&&(on=1,In=!0)}while(!In);for(var dn=on-(rn.length-sn),un=0;un>8&-39)<<8|87+(Pt=Wt[an]>>>4)+(Pt-10>>8&-39),nn+=String.fromCharCode(255&tn)+String.fromCharCode(tn>>>8);return nn}var an={ORIGINAL:1,ORIGINAL_NO_PADDING:3,URLSAFE:5,URLSAFE_NO_PADDING:7};function o(Wt){if(null==Wt)return an.URLSAFE_NO_PADDING;if(Wt!==an.ORIGINAL&&Wt!==an.ORIGINAL_NO_PADDING&&Wt!==an.URLSAFE&&Wt!=an.URLSAFE_NO_PADDING)throw new Error("unsupported base64 variant");return Wt}function p(Wt,Pt){Pt=o(Pt),Wt=E(nn,Wt,"input");var tn,nn=[],an=0|Math.floor(Wt.length/3),rn=Wt.length-3*an,In=4*an+(0!==rn?2&Pt?2+(rn>>>1):4:0),sn=new u(In+1),on=d(Wt);return nn.push(on),nn.push(sn.address),0===en._sodium_bin2base64(sn.address,sn.length,on,Wt.length,Pt)&&b(nn,"conversion failed"),sn.length=In,tn=s(sn.to_Uint8Array()),g(nn),tn}function y(Wt,Pt){var en=Pt||tn;if(!i(en))throw new Error(en+" output format is not available");if(Wt instanceof u){if("uint8array"===en)return Wt.to_Uint8Array();if("text"===en)return s(Wt.to_Uint8Array());if("hex"===en)return c(Wt.to_Uint8Array());if("base64"===en)return p(Wt.to_Uint8Array(),an.URLSAFE_NO_PADDING);throw new Error('What is output format "'+en+'"?')}if("object"==typeof Wt){for(var nn=Object.keys(Wt),rn={},In=0;In=BigInt(0)){const Wt=Pt>>BigInt(32);Wt>BigInt(4294967295)&&f(rn,"subkey_id cannot be more than 64 bits"),sn=Number(Wt),In=Number(Pt&BigInt(4294967295))}else"number"==typeof Pt&&(0|Pt)===Pt&&Pt>=0?In=Pt:f(rn,"subkey_id must be an unsigned integer or bigint");"string"!=typeof tn&&f(rn,"ctx must be a string"),tn=n(tn+"\0"),null!=cn&&tn.length-1!==cn&&f(rn,"invalid ctx length");var on=d(tn),cn=tn.length-1;rn.push(on),nn=E(rn,nn,"key");var dn,un=0|en._crypto_kdf_keybytes();nn.length!==un&&f(rn,"invalid key length"),dn=d(nn),rn.push(dn);var pn=new u(0|Wt),mn=pn.address;rn.push(mn),en._crypto_kdf_derive_from_key(mn,Wt,In,sn,on,dn);var bn=y(pn,an);return g(rn),bn}function Aa(Wt){var Pt=[];l(Wt);var tn=new u(0|en._crypto_kdf_keybytes()),nn=tn.address;Pt.push(nn),en._crypto_kdf_keygen(nn);var an=y(tn,Wt);return g(Pt),an}function Ma(Wt,Pt,tn,nn){var an=[];l(nn),Wt=E(an,Wt,"clientPublicKey");var rn,In=0|en._crypto_kx_publickeybytes();Wt.length!==In&&f(an,"invalid clientPublicKey length"),rn=d(Wt),an.push(rn),Pt=E(an,Pt,"clientSecretKey");var sn,on=0|en._crypto_kx_secretkeybytes();Pt.length!==on&&f(an,"invalid clientSecretKey length"),sn=d(Pt),an.push(sn),tn=E(an,tn,"serverPublicKey");var cn,dn=0|en._crypto_kx_publickeybytes();tn.length!==dn&&f(an,"invalid serverPublicKey length"),cn=d(tn),an.push(cn);var un=new u(0|en._crypto_kx_sessionkeybytes()),pn=un.address;an.push(pn);var mn=new u(0|en._crypto_kx_sessionkeybytes()),bn=mn.address;if(an.push(bn),!(0|en._crypto_kx_client_session_keys(pn,bn,rn,sn,cn))){var Gn=y({sharedRx:un,sharedTx:mn},nn);return g(an),Gn}b(an,"invalid usage")}function Ia(Wt){var Pt=[];l(Wt);var tn=new u(0|en._crypto_kx_publickeybytes()),nn=tn.address;Pt.push(nn);var an=new u(0|en._crypto_kx_secretkeybytes()),rn=an.address;if(Pt.push(rn),!(0|en._crypto_kx_keypair(nn,rn))){var In={publicKey:y(tn,Wt),privateKey:y(an,Wt),keyType:"x25519"};return g(Pt),In}b(Pt,"internal error")}function Ka(Wt,Pt){var tn=[];l(Pt),Wt=E(tn,Wt,"seed");var nn,an=0|en._crypto_kx_seedbytes();Wt.length!==an&&f(tn,"invalid seed length"),nn=d(Wt),tn.push(nn);var rn=new u(0|en._crypto_kx_publickeybytes()),In=rn.address;tn.push(In);var sn=new u(0|en._crypto_kx_secretkeybytes()),on=sn.address;if(tn.push(on),!(0|en._crypto_kx_seed_keypair(In,on,nn))){var cn={publicKey:y(rn,Pt),privateKey:y(sn,Pt),keyType:"x25519"};return g(tn),cn}b(tn,"internal error")}function Na(Wt,Pt,tn,nn){var an=[];l(nn),Wt=E(an,Wt,"serverPublicKey");var rn,In=0|en._crypto_kx_publickeybytes();Wt.length!==In&&f(an,"invalid serverPublicKey length"),rn=d(Wt),an.push(rn),Pt=E(an,Pt,"serverSecretKey");var sn,on=0|en._crypto_kx_secretkeybytes();Pt.length!==on&&f(an,"invalid serverSecretKey length"),sn=d(Pt),an.push(sn),tn=E(an,tn,"clientPublicKey");var cn,dn=0|en._crypto_kx_publickeybytes();tn.length!==dn&&f(an,"invalid clientPublicKey length"),cn=d(tn),an.push(cn);var un=new u(0|en._crypto_kx_sessionkeybytes()),pn=un.address;an.push(pn);var mn=new u(0|en._crypto_kx_sessionkeybytes()),bn=mn.address;if(an.push(bn),!(0|en._crypto_kx_server_session_keys(pn,bn,rn,sn,cn))){var Gn=y({sharedRx:un,sharedTx:mn},nn);return g(an),Gn}b(an,"invalid usage")}function La(Wt,Pt,tn){var nn=[];l(tn);var an=d(Wt=E(nn,Wt,"message")),rn=Wt.length;nn.push(an),Pt=E(nn,Pt,"key");var In,sn=0|en._crypto_onetimeauth_keybytes();Pt.length!==sn&&f(nn,"invalid key length"),In=d(Pt),nn.push(In);var on=new u(0|en._crypto_onetimeauth_bytes()),cn=on.address;if(nn.push(cn),!(0|en._crypto_onetimeauth(cn,an,rn,0,In))){var dn=y(on,tn);return g(nn),dn}b(nn,"invalid usage")}function Oa(Wt,Pt){var tn=[];l(Pt),m(tn,Wt,"state_address");var nn=new u(0|en._crypto_onetimeauth_bytes()),an=nn.address;if(tn.push(an),!(0|en._crypto_onetimeauth_final(Wt,an))){var rn=(en._free(Wt),y(nn,Pt));return g(tn),rn}b(tn,"invalid usage")}function Ua(Wt,Pt){var tn=[];l(Pt);var nn=null;null!=Wt&&(nn=d(Wt=E(tn,Wt,"key")),Wt.length,tn.push(nn));var an=new u(144).address;if(!(0|en._crypto_onetimeauth_init(an,nn))){var rn=an;return g(tn),rn}b(tn,"invalid usage")}function Ca(Wt){var Pt=[];l(Wt);var tn=new u(0|en._crypto_onetimeauth_keybytes()),nn=tn.address;Pt.push(nn),en._crypto_onetimeauth_keygen(nn);var an=y(tn,Wt);return g(Pt),an}function Pa(Wt,Pt,tn){var nn=[];l(tn),m(nn,Wt,"state_address");var an=d(Pt=E(nn,Pt,"message_chunk")),rn=Pt.length;nn.push(an),0|en._crypto_onetimeauth_update(Wt,an,rn)&&b(nn,"invalid usage"),g(nn)}function Ra(Wt,Pt,tn){var nn=[];Wt=E(nn,Wt,"hash");var an,rn=0|en._crypto_onetimeauth_bytes();Wt.length!==rn&&f(nn,"invalid hash length"),an=d(Wt),nn.push(an);var In=d(Pt=E(nn,Pt,"message")),sn=Pt.length;nn.push(In),tn=E(nn,tn,"key");var on,cn=0|en._crypto_onetimeauth_keybytes();tn.length!==cn&&f(nn,"invalid key length"),on=d(tn),nn.push(on);var dn=!(0|en._crypto_onetimeauth_verify(an,In,sn,0,on));return g(nn),dn}function Xa(Wt,Pt,tn,nn,an,rn,In){var sn=[];l(In),m(sn,Wt,"keyLength"),("number"!=typeof Wt||(0|Wt)!==Wt||Wt<0)&&f(sn,"keyLength must be an unsigned integer");var on=d(Pt=E(sn,Pt,"password")),cn=Pt.length;sn.push(on),tn=E(sn,tn,"salt");var dn,un=0|en._crypto_pwhash_saltbytes();tn.length!==un&&f(sn,"invalid salt length"),dn=d(tn),sn.push(dn),m(sn,nn,"opsLimit"),("number"!=typeof nn||(0|nn)!==nn||nn<0)&&f(sn,"opsLimit must be an unsigned integer"),m(sn,an,"memLimit"),("number"!=typeof an||(0|an)!==an||an<0)&&f(sn,"memLimit must be an unsigned integer"),m(sn,rn,"algorithm"),("number"!=typeof rn||(0|rn)!==rn||rn<0)&&f(sn,"algorithm must be an unsigned integer");var pn=new u(0|Wt),mn=pn.address;if(sn.push(mn),!(0|en._crypto_pwhash(mn,Wt,0,on,cn,0,dn,nn,0,an,rn))){var bn=y(pn,In);return g(sn),bn}b(sn,"invalid usage")}function Ga(Wt,Pt,tn,nn,an,rn){var In=[];l(rn),m(In,Wt,"keyLength"),("number"!=typeof Wt||(0|Wt)!==Wt||Wt<0)&&f(In,"keyLength must be an unsigned integer");var sn=d(Pt=E(In,Pt,"password")),on=Pt.length;In.push(sn),tn=E(In,tn,"salt");var cn,dn=0|en._crypto_pwhash_scryptsalsa208sha256_saltbytes();tn.length!==dn&&f(In,"invalid salt length"),cn=d(tn),In.push(cn),m(In,nn,"opsLimit"),("number"!=typeof nn||(0|nn)!==nn||nn<0)&&f(In,"opsLimit must be an unsigned integer"),m(In,an,"memLimit"),("number"!=typeof an||(0|an)!==an||an<0)&&f(In,"memLimit must be an unsigned integer");var un=new u(0|Wt),pn=un.address;if(In.push(pn),!(0|en._crypto_pwhash_scryptsalsa208sha256(pn,Wt,0,sn,on,0,cn,nn,0,an))){var mn=y(un,rn);return g(In),mn}b(In,"invalid usage")}function Da(Wt,Pt,tn,nn,an,rn,In){var sn=[];l(In);var on=d(Wt=E(sn,Wt,"password")),cn=Wt.length;sn.push(on);var dn=d(Pt=E(sn,Pt,"salt")),un=Pt.length;sn.push(dn),m(sn,tn,"opsLimit"),("number"!=typeof tn||(0|tn)!==tn||tn<0)&&f(sn,"opsLimit must be an unsigned integer"),m(sn,nn,"r"),("number"!=typeof nn||(0|nn)!==nn||nn<0)&&f(sn,"r must be an unsigned integer"),m(sn,an,"p"),("number"!=typeof an||(0|an)!==an||an<0)&&f(sn,"p must be an unsigned integer"),m(sn,rn,"keyLength"),("number"!=typeof rn||(0|rn)!==rn||rn<0)&&f(sn,"keyLength must be an unsigned integer");var pn=new u(0|rn),mn=pn.address;if(sn.push(mn),!(0|en._crypto_pwhash_scryptsalsa208sha256_ll(on,cn,dn,un,tn,0,nn,an,mn,rn))){var bn=y(pn,In);return g(sn),bn}b(sn,"invalid usage")}function Fa(Wt,Pt,tn,nn){var an=[];l(nn);var rn=d(Wt=E(an,Wt,"password")),In=Wt.length;an.push(rn),m(an,Pt,"opsLimit"),("number"!=typeof Pt||(0|Pt)!==Pt||Pt<0)&&f(an,"opsLimit must be an unsigned integer"),m(an,tn,"memLimit"),("number"!=typeof tn||(0|tn)!==tn||tn<0)&&f(an,"memLimit must be an unsigned integer");var sn=new u(0|en._crypto_pwhash_scryptsalsa208sha256_strbytes()).address;if(an.push(sn),!(0|en._crypto_pwhash_scryptsalsa208sha256_str(sn,rn,In,0,Pt,0,tn))){var on=en.UTF8ToString(sn);return g(an),on}b(an,"invalid usage")}function Va(Wt,Pt,tn){var nn=[];l(tn),"string"!=typeof Wt&&f(nn,"hashed_password must be a string"),Wt=n(Wt+"\0"),null!=rn&&Wt.length-1!==rn&&f(nn,"invalid hashed_password length");var an=d(Wt),rn=Wt.length-1;nn.push(an);var In=d(Pt=E(nn,Pt,"password")),sn=Pt.length;nn.push(In);var on=!(0|en._crypto_pwhash_scryptsalsa208sha256_str_verify(an,In,sn,0));return g(nn),on}function Ha(Wt,Pt,tn,nn){var an=[];l(nn);var rn=d(Wt=E(an,Wt,"password")),In=Wt.length;an.push(rn),m(an,Pt,"opsLimit"),("number"!=typeof Pt||(0|Pt)!==Pt||Pt<0)&&f(an,"opsLimit must be an unsigned integer"),m(an,tn,"memLimit"),("number"!=typeof tn||(0|tn)!==tn||tn<0)&&f(an,"memLimit must be an unsigned integer");var sn=new u(0|en._crypto_pwhash_strbytes()).address;if(an.push(sn),!(0|en._crypto_pwhash_str(sn,rn,In,0,Pt,0,tn))){var on=en.UTF8ToString(sn);return g(an),on}b(an,"invalid usage")}function Wa(Wt,Pt,tn,nn){var an=[];l(nn),"string"!=typeof Wt&&f(an,"hashed_password must be a string"),Wt=n(Wt+"\0"),null!=In&&Wt.length-1!==In&&f(an,"invalid hashed_password length");var rn=d(Wt),In=Wt.length-1;an.push(rn),m(an,Pt,"opsLimit"),("number"!=typeof Pt||(0|Pt)!==Pt||Pt<0)&&f(an,"opsLimit must be an unsigned integer"),m(an,tn,"memLimit"),("number"!=typeof tn||(0|tn)!==tn||tn<0)&&f(an,"memLimit must be an unsigned integer");var sn=!!(0|en._crypto_pwhash_str_needs_rehash(rn,Pt,0,tn));return g(an),sn}function qa(Wt,Pt,tn){var nn=[];l(tn),"string"!=typeof Wt&&f(nn,"hashed_password must be a string"),Wt=n(Wt+"\0"),null!=rn&&Wt.length-1!==rn&&f(nn,"invalid hashed_password length");var an=d(Wt),rn=Wt.length-1;nn.push(an);var In=d(Pt=E(nn,Pt,"password")),sn=Pt.length;nn.push(In);var on=!(0|en._crypto_pwhash_str_verify(an,In,sn,0));return g(nn),on}function ja(Wt,Pt,tn){var nn=[];l(tn),Wt=E(nn,Wt,"privateKey");var an,rn=0|en._crypto_scalarmult_scalarbytes();Wt.length!==rn&&f(nn,"invalid privateKey length"),an=d(Wt),nn.push(an),Pt=E(nn,Pt,"publicKey");var In,sn=0|en._crypto_scalarmult_bytes();Pt.length!==sn&&f(nn,"invalid publicKey length"),In=d(Pt),nn.push(In);var on=new u(0|en._crypto_scalarmult_bytes()),cn=on.address;if(nn.push(cn),!(0|en._crypto_scalarmult(cn,an,In))){var dn=y(on,tn);return g(nn),dn}b(nn,"weak public key")}function za(Wt,Pt){var tn=[];l(Pt),Wt=E(tn,Wt,"privateKey");var nn,an=0|en._crypto_scalarmult_scalarbytes();Wt.length!==an&&f(tn,"invalid privateKey length"),nn=d(Wt),tn.push(nn);var rn=new u(0|en._crypto_scalarmult_bytes()),In=rn.address;if(tn.push(In),!(0|en._crypto_scalarmult_base(In,nn))){var sn=y(rn,Pt);return g(tn),sn}b(tn,"unknown error")}function Ja(Wt,Pt,tn){var nn=[];l(tn),Wt=E(nn,Wt,"n");var an,rn=0|en._crypto_scalarmult_ed25519_scalarbytes();Wt.length!==rn&&f(nn,"invalid n length"),an=d(Wt),nn.push(an),Pt=E(nn,Pt,"p");var In,sn=0|en._crypto_scalarmult_ed25519_bytes();Pt.length!==sn&&f(nn,"invalid p length"),In=d(Pt),nn.push(In);var on=new u(0|en._crypto_scalarmult_ed25519_bytes()),cn=on.address;if(nn.push(cn),!(0|en._crypto_scalarmult_ed25519(cn,an,In))){var dn=y(on,tn);return g(nn),dn}b(nn,"invalid point or scalar is 0")}function Qa(Wt,Pt){var tn=[];l(Pt),Wt=E(tn,Wt,"scalar");var nn,an=0|en._crypto_scalarmult_ed25519_scalarbytes();Wt.length!==an&&f(tn,"invalid scalar length"),nn=d(Wt),tn.push(nn);var rn=new u(0|en._crypto_scalarmult_ed25519_bytes()),In=rn.address;if(tn.push(In),!(0|en._crypto_scalarmult_ed25519_base(In,nn))){var sn=y(rn,Pt);return g(tn),sn}b(tn,"scalar is 0")}function Za(Wt,Pt){var tn=[];l(Pt),Wt=E(tn,Wt,"scalar");var nn,an=0|en._crypto_scalarmult_ed25519_scalarbytes();Wt.length!==an&&f(tn,"invalid scalar length"),nn=d(Wt),tn.push(nn);var rn=new u(0|en._crypto_scalarmult_ed25519_bytes()),In=rn.address;if(tn.push(In),!(0|en._crypto_scalarmult_ed25519_base_noclamp(In,nn))){var sn=y(rn,Pt);return g(tn),sn}b(tn,"scalar is 0")}function $a(Wt,Pt,tn){var nn=[];l(tn),Wt=E(nn,Wt,"n");var an,rn=0|en._crypto_scalarmult_ed25519_scalarbytes();Wt.length!==rn&&f(nn,"invalid n length"),an=d(Wt),nn.push(an),Pt=E(nn,Pt,"p");var In,sn=0|en._crypto_scalarmult_ed25519_bytes();Pt.length!==sn&&f(nn,"invalid p length"),In=d(Pt),nn.push(In);var on=new u(0|en._crypto_scalarmult_ed25519_bytes()),cn=on.address;if(nn.push(cn),!(0|en._crypto_scalarmult_ed25519_noclamp(cn,an,In))){var dn=y(on,tn);return g(nn),dn}b(nn,"invalid point or scalar is 0")}function er(Wt,Pt,tn){var nn=[];l(tn),Wt=E(nn,Wt,"scalar");var an,rn=0|en._crypto_scalarmult_ristretto255_scalarbytes();Wt.length!==rn&&f(nn,"invalid scalar length"),an=d(Wt),nn.push(an),Pt=E(nn,Pt,"element");var In,sn=0|en._crypto_scalarmult_ristretto255_bytes();Pt.length!==sn&&f(nn,"invalid element length"),In=d(Pt),nn.push(In);var on=new u(0|en._crypto_scalarmult_ristretto255_bytes()),cn=on.address;if(nn.push(cn),!(0|en._crypto_scalarmult_ristretto255(cn,an,In))){var dn=y(on,tn);return g(nn),dn}b(nn,"result is identity element")}function ar(Wt,Pt){var tn=[];l(Pt),Wt=E(tn,Wt,"scalar");var nn,an=0|en._crypto_core_ristretto255_scalarbytes();Wt.length!==an&&f(tn,"invalid scalar length"),nn=d(Wt),tn.push(nn);var rn=new u(0|en._crypto_core_ristretto255_bytes()),In=rn.address;if(tn.push(In),!(0|en._crypto_scalarmult_ristretto255_base(In,nn))){var sn=y(rn,Pt);return g(tn),sn}b(tn,"scalar is 0")}function rr(Wt,Pt,tn,nn){var an=[];l(nn);var rn=d(Wt=E(an,Wt,"message")),In=Wt.length;an.push(rn),Pt=E(an,Pt,"nonce");var sn,on=0|en._crypto_secretbox_noncebytes();Pt.length!==on&&f(an,"invalid nonce length"),sn=d(Pt),an.push(sn),tn=E(an,tn,"key");var cn,dn=0|en._crypto_secretbox_keybytes();tn.length!==dn&&f(an,"invalid key length"),cn=d(tn),an.push(cn);var un=new u(0|In),pn=un.address;an.push(pn);var mn=new u(0|en._crypto_secretbox_macbytes()),bn=mn.address;if(an.push(bn),!(0|en._crypto_secretbox_detached(pn,bn,rn,In,0,sn,cn))){var Gn=y({mac:mn,cipher:un},nn);return g(an),Gn}b(an,"invalid usage")}function tr(Wt,Pt,tn,nn){var an=[];l(nn);var rn=d(Wt=E(an,Wt,"message")),In=Wt.length;an.push(rn),Pt=E(an,Pt,"nonce");var sn,on=0|en._crypto_secretbox_noncebytes();Pt.length!==on&&f(an,"invalid nonce length"),sn=d(Pt),an.push(sn),tn=E(an,tn,"key");var cn,dn=0|en._crypto_secretbox_keybytes();tn.length!==dn&&f(an,"invalid key length"),cn=d(tn),an.push(cn);var un=new u(In+en._crypto_secretbox_macbytes()|0),pn=un.address;if(an.push(pn),!(0|en._crypto_secretbox_easy(pn,rn,In,0,sn,cn))){var mn=y(un,nn);return g(an),mn}b(an,"invalid usage")}function _r(Wt){var Pt=[];l(Wt);var tn=new u(0|en._crypto_secretbox_keybytes()),nn=tn.address;Pt.push(nn),en._crypto_secretbox_keygen(nn);var an=y(tn,Wt);return g(Pt),an}function nr(Wt,Pt,tn,nn,an){var rn=[];l(an);var In=d(Wt=E(rn,Wt,"ciphertext")),sn=Wt.length;rn.push(In),Pt=E(rn,Pt,"mac");var on,cn=0|en._crypto_secretbox_macbytes();Pt.length!==cn&&f(rn,"invalid mac length"),on=d(Pt),rn.push(on),tn=E(rn,tn,"nonce");var dn,un=0|en._crypto_secretbox_noncebytes();tn.length!==un&&f(rn,"invalid nonce length"),dn=d(tn),rn.push(dn),nn=E(rn,nn,"key");var pn,mn=0|en._crypto_secretbox_keybytes();nn.length!==mn&&f(rn,"invalid key length"),pn=d(nn),rn.push(pn);var bn=new u(0|sn),Gn=bn.address;if(rn.push(Gn),!(0|en._crypto_secretbox_open_detached(Gn,In,on,sn,0,dn,pn))){var hn=y(bn,an);return g(rn),hn}b(rn,"wrong secret key for the given ciphertext")}function sr(Wt,Pt,tn,nn){var an=[];l(nn),Wt=E(an,Wt,"ciphertext");var rn,In=en._crypto_secretbox_macbytes(),sn=Wt.length;sn>>0;return g([]),Pt}function Vr(Wt,Pt){var tn=[];l(Pt);for(var nn=en._malloc(24),an=0;an<6;an++)en.setValue(nn+4*an,en.Runtime.addFunction(Wt[["implementation_name","random","stir","uniform","buf","close"][an]]),"i32");0|en._randombytes_set_implementation(nn)&&b(tn,"unsupported implementation"),g(tn)}function Hr(Wt){l(Wt),en._randombytes_stir()}function Wr(Wt,Pt){var tn=[];l(Pt),m(tn,Wt,"upper_bound"),("number"!=typeof Wt||(0|Wt)!==Wt||Wt<0)&&f(tn,"upper_bound must be an unsigned integer");var nn=en._randombytes_uniform(Wt)>>>0;return g(tn),nn}function qr(){var Wt=en._sodium_version_string(),Pt=en.UTF8ToString(Wt);return g([]),Pt}return u.prototype.to_Uint8Array=function(){var Wt=new Uint8Array(this.length);return Wt.set(en.HEAPU8.subarray(this.address,this.address+this.length)),Wt},Wt.add=function(Wt,Pt){if(!(Wt instanceof Uint8Array&&Pt instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can added");var en=Wt.length,tn=0,nn=0;if(Pt.length!=Wt.length)throw new TypeError("Arguments must have the same length");for(nn=0;nn>=8,tn+=Wt[nn]+Pt[nn],Wt[nn]=255&tn},Wt.base64_variants=an,Wt.compare=function(Wt,Pt){if(!(Wt instanceof Uint8Array&&Pt instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be compared");if(Wt.length!==Pt.length)throw new TypeError("Only instances of identical length can be compared");for(var en=0,tn=1,nn=Wt.length;nn-- >0;)en|=Pt[nn]-Wt[nn]>>8&tn,tn&=(Pt[nn]^Wt[nn])-1>>8;return en+en+tn-1},Wt.from_base64=function(Wt,Pt){Pt=o(Pt);var tn,nn=[],an=new u(3*(Wt=E(nn,Wt,"input")).length/4),rn=d(Wt),In=v(4),sn=v(4);return nn.push(rn),nn.push(an.address),nn.push(an.result_bin_len_p),nn.push(an.b64_end_p),0!==en._sodium_base642bin(an.address,an.length,rn,Wt.length,0,In,sn,Pt)&&b(nn,"invalid input"),en.getValue(sn,"i32")-rn!==Wt.length&&b(nn,"incomplete input"),an.length=en.getValue(In,"i32"),tn=an.to_Uint8Array(),g(nn),tn},Wt.from_hex=function(Wt){var Pt,tn=[],nn=new u((Wt=E(tn,Wt,"input")).length/2),an=d(Wt),rn=v(4);return tn.push(an),tn.push(nn.address),tn.push(nn.hex_end_p),0!==en._sodium_hex2bin(nn.address,nn.length,an,Wt.length,0,0,rn)&&b(tn,"invalid input"),en.getValue(rn,"i32")-an!==Wt.length&&b(tn,"incomplete input"),Pt=nn.to_Uint8Array(),g(tn),Pt},Wt.from_string=n,Wt.increment=function(Wt){if(!(Wt instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be incremented");for(var Pt=256,en=0,tn=Wt.length;en>=8,Pt+=Wt[en],Wt[en]=255&Pt},Wt.is_zero=function(Wt){if(!(Wt instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be checked");for(var Pt=0,en=0,tn=Wt.length;en 0");var tn,nn=[],an=v(4),rn=1,In=0,sn=0|Wt.length,on=new u(sn+Pt);nn.push(an),nn.push(on.address);for(var cn=on.address,dn=on.address+sn+Pt;cn>>48|sn>>>32|sn>>>16|sn))-1>>16);return 0!==en._sodium_pad(an,on.address,Wt.length,Pt,on.length)&&b(nn,"internal error"),on.length=en.getValue(an,"i32"),tn=on.to_Uint8Array(),g(nn),tn},Wt.unpad=function(Wt,Pt){if(!(Wt instanceof Uint8Array))throw new TypeError("buffer must be a Uint8Array");if((Pt|=0)<=0)throw new Error("block size must be > 0");var tn=[],nn=d(Wt),an=v(4);return tn.push(nn),tn.push(an),0!==en._sodium_unpad(an,nn,Wt.length,Pt)&&b(tn,"unsupported/invalid padding"),Wt=(Wt=new Uint8Array(Wt)).subarray(0,en.getValue(an,"i32")),g(tn),Wt},Wt.ready=nn,Wt.symbols=function(){return Object.keys(Wt).sort()},Wt.to_base64=p,Wt.to_hex=c,Wt.to_string=s,Wt}var tn="object"==typeof Wt.sodium&&"function"==typeof Wt.sodium.onload?Wt.sodium.onload:null;"function"==typeof define&&define.amd?define(["exports","libsodium"],a):true&&"string"!=typeof Pt.nodeName?a(Pt,en(73371)):Wt.sodium=a(Wt.commonJsStrict={},Wt.libsodium),tn&&Wt.sodium.ready.then((function(){tn(Wt.sodium)}))}(this)},73371:function(Wt,Pt,en){!function(tn){function I(Pt){"use strict";var tn;void 0===(tn=Pt)&&(tn={});var nn=tn;"object"!=typeof nn.sodium&&("object"==typeof global?nn=global:"object"==typeof window&&(nn=window));var an=tn;return tn.ready=new Promise((function(Pt,tn){(rn=an).onAbort=tn,rn.print=function(Wt){},rn.printErr=function(Wt){},rn.onRuntimeInitialized=function(){try{rn._crypto_secretbox_keybytes(),Pt()}catch(Wt){tn(Wt)}},rn.useBackupModule=function(){return new Promise((function(Pt,tn){(rn={}).onAbort=tn,rn.onRuntimeInitialized=function(){Object.keys(an).forEach((function(Wt){"getRandomValue"!==Wt&&delete an[Wt]})),Object.keys(rn).forEach((function(Wt){an[Wt]=rn[Wt]})),Pt()};var nn,rn=void 0!==rn?rn:{},In="object"==typeof window,sn="function"==typeof importScripts,on="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,cn=Object.assign({},rn),dn="";if(on){var un=en(79896),pn=en(16928);dn=__dirname+"/",nn=Wt=>(Wt=U(Wt)?new URL(Wt):pn.normalize(Wt),un.readFileSync(Wt)),!rn.thisProgram&&process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),true&&(Wt.exports=rn)}else(In||sn)&&(sn?dn=self.location.href:"undefined"!=typeof document&&document.currentScript&&(dn=document.currentScript.src),dn=dn.startsWith("blob:")?"":dn.substr(0,dn.replace(/[?#].*/,"").lastIndexOf("/")+1),sn&&(nn=Wt=>{var Pt=new XMLHttpRequest;return Pt.open("GET",Wt,!1),Pt.responseType="arraybuffer",Pt.send(null),new Uint8Array(Pt.response)}));rn.print;var mn,bn=rn.printErr||void 0;Object.assign(rn,cn),cn=null,rn.arguments&&rn.arguments,rn.thisProgram&&rn.thisProgram,rn.quit&&rn.quit,rn.wasmBinary&&(mn=rn.wasmBinary);var Gn,hn={Memory:function(Wt){this.buffer=new ArrayBuffer(65536*Wt.initial)},Module:function(Wt){},Instance:function(Wt,Pt){this.exports=function(Wt){for(var Pt,en=new Uint8Array(123),tn=25;tn>=0;--tn)en[48+tn]=52+tn,en[65+tn]=tn,en[97+tn]=26+tn;function B(Wt,Pt,tn){for(var nn,an,rn=0,In=Pt,sn=tn.length,on=Pt+(3*sn>>2)-("="==tn[sn-2])-("="==tn[sn-1]);rn>4,In>2),In>>0>Un>>>0?on+1|0:on)|0,on=(rl=(cn=Un)>>>0>(Un=Un+rl|0)>>>0?on+1|0:on)+bl|0,Il=ml=Un+pl|0,ml=on=ml>>>0>>0?on+1|0:on,Un=_A(Un^(an[Wt+80|0]|an[Wt+81|0]<<8|an[Wt+82|0]<<16|an[Wt+83|0]<<24)^-79577749,rl^(an[Wt+84|0]|an[Wt+85|0]<<8|an[Wt+86|0]<<16|an[Wt+87|0]<<24)^528734635,32),yl=on=bn,on=on+1013904242|0,rl=Un,Kn=on=(Un=Un-23791573|0)>>>0<4271175723?on+1|0:on,il=_A(Un^cl,on^il,40),on=(on=ml)+(ml=bn)|0,cl=_A(rl^(Zn=cl=il+Il|0),yl^(An=Zn>>>0>>0?on+1|0:on),48),on=Kn+(On=bn)|0,yn=on=(cl=Un+(Wn=cl)|0)>>>0>>0?on+1|0:on,cl=on=_A(il^(gn=cl),ml^on,1),Kn=Un=bn,ml=an[Pt+24|0]|an[Pt+25|0]<<8|an[Pt+26|0]<<16|an[Pt+27|0]<<24,yl=on=an[Pt+28|0]|an[Pt+29|0]<<8|an[Pt+30|0]<<16|an[Pt+31|0]<<24,ul=an[Wt+8|0]|an[Wt+9|0]<<8|an[Wt+10|0]<<16|an[Wt+11|0]<<24,Un=(il=an[Pt+16|0]|an[Pt+17|0]<<8|an[Pt+18|0]<<16|an[Pt+19|0]<<24)+(rl=an[Wt+40|0]|an[Wt+41|0]<<8|an[Wt+42|0]<<16|an[Wt+43|0]<<24)|0,on=(Vl=an[Pt+20|0]|an[Pt+21|0]<<8|an[Pt+22|0]<<16|an[Pt+23|0]<<24)+(wl=an[Wt+44|0]|an[Wt+45|0]<<8|an[Wt+46|0]<<16|an[Wt+47|0]<<24)|0,on=(an[Wt+12|0]|an[Wt+13|0]<<8|an[Wt+14|0]<<16|an[Wt+15|0]<<24)+(Un>>>0>>0?on+1|0:on)|0,on=yl+(Il=(cn=Un)>>>0>(Un=Un+ul|0)>>>0?on+1|0:on)|0,on=(ul=Un+ml|0)>>>0>>0?on+1|0:on,cn=_A(Un^(an[Wt+72|0]|an[Wt+73|0]<<8|an[Wt+74|0]<<16|an[Wt+75|0]<<24)^725511199,Il^(an[Wt+76|0]|an[Wt+77|0]<<8|an[Wt+78|0]<<16|an[Wt+79|0]<<24)^-1694144372,32),mn=_A(rl^(dn=cn-2067093701|0),wl^(Bn=(Cn=Un=bn)-((cn>>>0<2067093701)+1150833018|0)|0),40),on=(Tn=bn)+on|0,on=(Hn=(vn=Un=mn+ul|0)>>>0>>0?on+1|0:on)+Kn|0,on=(vn>>>0>(Un=vn+cl|0)>>>0?on+1|0:on)+jn|0,on=(rl=(un=Un)>>>0>(Un=Un+sl|0)>>>0?on+1|0:on)+zn|0,Jn=zn=Un+en|0,hn=on=zn>>>0>>0?on+1|0:on,Nn=cl,Nl=Kn,Kn=Un,Il=rl,cl=an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24,Un=on=an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24,wl=on=an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24,In=rl=an[Wt+4|0]|an[Wt+5|0]<<8|an[Wt+6|0]<<16|an[Wt+7|0]<<24,jn=on,on=(vl=an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24)+(pn=an[Wt+36|0]|an[Wt+37|0]<<8|an[Wt+38|0]<<16|an[Wt+39|0]<<24)|0,on=In+((zn=an[Wt+32|0]|an[Wt+33|0]<<8|an[Wt+34|0]<<16|an[Wt+35|0]<<24)>>>0>(un=zn+(rl=an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24)|0)>>>0?on+1|0:on)|0,on=(ul=(jn=un+jn|0)>>>0>>0?on+1|0:on)+Un|0,Al=un=jn+cl|0,un=on=un>>>0>>0?on+1|0:on,Gn=zn,zn=_A(jn^(an[Wt+64|0]|an[Wt+65|0]<<8|an[Wt+66|0]<<16|an[Wt+67|0]<<24)^-1377402159,ul^(an[Wt+68|0]|an[Wt+69|0]<<8|an[Wt+70|0]<<16|an[Wt+71|0]<<24)^1359893119,32),ul=on=bn,on=on+1779033703|0,jn=zn,Fn=on=(zn=zn-205731576|0)>>>0<4089235720?on+1|0:on,pn=_A(Gn^(Yn=zn),on^pn,40),on=(kn=bn)+un|0,Gn=_A(jn^(un=zn=pn+Al|0),ul^(Vn=pn>>>0>un>>>0?on+1|0:on),48),on=_A(Gn^Kn,(qn=bn)^Il,32),_n=zn=bn,Ln=on,nn=on=an[Pt+60|0]|an[Pt+61|0]<<8|an[Pt+62|0]<<16|an[Pt+63|0]<<24,ul=Al=an[Pt+56|0]|an[Pt+57|0]<<8|an[Pt+58|0]<<16|an[Pt+59|0]<<24,wn=an[Wt+24|0]|an[Wt+25|0]<<8|an[Wt+26|0]<<16|an[Wt+27|0]<<24,zn=(Il=an[Pt+48|0]|an[Pt+49|0]<<8|an[Pt+50|0]<<16|an[Pt+51|0]<<24)+(jn=an[Wt+56|0]|an[Wt+57|0]<<8|an[Wt+58|0]<<16|an[Wt+59|0]<<24)|0,on=(Yl=an[Pt+52|0]|an[Pt+53|0]<<8|an[Pt+54|0]<<16|an[Pt+55|0]<<24)+(Xn=an[Wt+60|0]|an[Wt+61|0]<<8|an[Wt+62|0]<<16|an[Wt+63|0]<<24)|0,on=(an[Wt+28|0]|an[Wt+29|0]<<8|an[Wt+30|0]<<16|an[Wt+31|0]<<24)+(zn>>>0>>0?on+1|0:on)|0,on=nn+(Kn=(Rn=zn)>>>0>(zn=wn+zn|0)>>>0?on+1|0:on)|0,on=(wn=zn+ul|0)>>>0>>0?on+1|0:on,Kn=_A(zn^(an[Wt+88|0]|an[Wt+89|0]<<8|an[Wt+90|0]<<16|an[Wt+91|0]<<24)^327033209,Kn^(an[Wt+92|0]|an[Wt+93|0]<<8|an[Wt+94|0]<<16|an[Wt+95|0]<<24)^1541459225,32),jn=_A(jn^(ul=Kn+1595750129|0),(Rn=Xn)^(Xn=(Qn=zn=bn)-((Kn>>>0<2699217167)+1521486533|0)|0),40),on=(tl=bn)+on|0,zn=_A((wn=zn=jn+wn|0)^Kn,Qn^(Rn=wn>>>0>>0?on+1|0:on),48),on=Xn+($n=bn)|0,fn=on=(zn=ul+(Xn=zn)|0)>>>0
    >>0?on+1|0:on,on=_n+on|0,Dn=Nn^(Kn=Ln+(Qn=zn)|0),Nn=on=Kn>>>0>>0?on+1|0:on,ul=_A(Dn,on^Nl,40),on=(Nl=bn)+hn|0,zn=_A(Jn=Ln^(hn=zn=ul+Jn|0),_n^(Ln=hn>>>0
      >>0?on+1|0:on),48),on=Nn+(ll=bn)|0,_n=on=(Nn=Kn+(Jn=zn)|0)>>>0>>0?on+1|0:on,zn=(xn=_A(Nn^ul,Nl^on,1))+(Kn=an[Pt+72|0]|an[Pt+73|0]<<8|an[Pt+74|0]<<16|an[Pt+75|0]<<24)|0,on=(hl=bn)+(Nl=an[Pt+76|0]|an[Pt+77|0]<<8|an[Pt+78|0]<<16|an[Pt+79|0]<<24)|0,gl=zn,Mn=zn>>>0>>0?on+1|0:on,Pn=Gl,zn=an[Pt+96|0]|an[Pt+97|0]<<8|an[Pt+98|0]<<16|an[Pt+99|0]<<24,ul=on=an[Pt+100|0]|an[Pt+101|0]<<8|an[Pt+102|0]<<16|an[Pt+103|0]<<24,jn=(on=Zn)+(Zn=_A(Qn^jn,fn^tl,1))|0,on=(Qn=bn)+An|0,on=(Zn>>>0>jn>>>0?on+1|0:on)+ul|0,on=(An=(An=jn)>>>0>(jn=zn+jn|0)>>>0?on+1|0:on)+Pn|0,Dn=fn=jn+nl|0,fn=on=fn>>>0>>0?on+1|0:on,vn=_A(cn^vn,Hn^Cn,48),Hn=on=_A(vn^jn,(Cn=bn)^An,32),on=Fn+qn|0,on=(tl=jn=bn)+(Yn=(jn=Gn+Yn|0)>>>0>>0?on+1|0:on)|0,Fn=on=(An=jn)>>>0>(Gn=An+Hn|0)>>>0?on+1|0:on,Zn=_A(Gn^Zn,Qn^on,40),on=(qn=bn)+fn|0,on=(Qn=Zn>>>0>(fn=jn=Zn+Dn|0)>>>0?on+1|0:on)+Mn|0,on=(cn=fn>>>0>(jn=fn+gl|0)>>>0?on+1|0:on)+Wl|0,gl=Mn=jn+ol|0,Mn=on=Mn>>>0>>0?on+1|0:on,Dn=jn,Pn=cn,jn=an[Pt+116|0]|an[Pt+117|0]<<8|an[Pt+118|0]<<16|an[Pt+119|0]<<24,Pt=an[Pt+112|0]|an[Pt+113|0]<<8|an[Pt+114|0]<<16|an[Pt+115|0]<<24,pn=_A(pn^An,Yn^kn,1),on=(kn=bn)+Rn|0,on=((cn=pn+wn|0)>>>0>>0?on+1|0:on)+jn|0,on=(An=(Yn=cn)>>>0>(cn=Pt+cn|0)>>>0?on+1|0:on)+Wl|0,Rl=Yn=cn+ol|0,Yn=on=Yn>>>0>>0?on+1|0:on,on=_A(cn^Wn,An^On,32),el=cn=bn,Wn=on,An=cn,on=Cn+Bn|0,vn=cn=dn+vn|0,wn=on=cn>>>0>>0?on+1|0:on,on=on+An|0,Rn=cn=cn+Wn|0,On=on=vn>>>0>cn>>>0?on+1|0:on,An=_A(cn^pn,kn^on,40),on=(kn=bn)+Yn|0,Wn=_A((cn=An+Rl|0)^Wn,el^(dn=cn>>>0>>0?on+1|0:on),48),on=_A(Wn^Dn,(Rl=bn)^Pn,32),el=pn=bn,Yn=on,Dn=pn,mn=_A(mn^vn,wn^Tn,1),on=Vn+(vn=bn)|0,on=((pn=un)>>>0>(un=un+mn|0)>>>0?on+1|0:on)+al|0,on=(un=(pn=un+Sn|0)>>>0>>0?on+1|0:on)+Nl|0,Pn=Vn=pn+Kn|0,Vn=on=Vn>>>0>>0?on+1|0:on,wn=mn,pn=_A(pn^Xn,un^$n,32),on=(Xn=bn)+yn|0,gn=_A(wn^(un=mn=pn+gn|0),(yn=pn>>>0>un>>>0?on+1|0:on)^vn,40),on=($n=bn)+Vn|0,vn=mn=gn+Pn|0,mn=_A(pn^mn,Xn^(Vn=mn>>>0>>0?on+1|0:on),48),on=yn+(sn=bn)|0,yn=mn,Xn=on=(mn=un+mn|0)>>>0>>0?on+1|0:on,on=on+Dn|0,on=(wn=mn)>>>0>(mn=mn+Yn|0)>>>0?on+1|0:on,Dn=mn,mn^=xn,xn=on,pn=_A(mn,hl^on,40),on=(hl=bn)+Mn|0,Mn=mn=pn+gl|0,on=rn+(Pn=pn>>>0>mn>>>0?on+1|0:on)|0,gl=mn=mn+en|0,Cn=on=mn>>>0>>0?on+1|0:on,mn=cn,Bn=nl,Tn=Gl,cn=_A(Hn^fn,Qn^tl,48),on=Fn+(tl=bn)|0,Hn=cn,Fn=on=(un=Gn+cn|0)>>>0>>0?on+1|0:on,cn=_A(un^Zn,qn^on,1),on=(Gn=bn)+Tn|0,on=((Zn=cn+Bn|0)>>>0>>0?on+1|0:on)+dn|0,on=Yl+(mn=(dn=mn+Zn|0)>>>0>>0?on+1|0:on)|0,fn=Zn=dn+Il|0,Zn=on=Zn>>>0>>0?on+1|0:on,dn=_A(dn^yn,mn^sn,32),on=_n+(Qn=bn)|0,yn=dn,Nn=on=(dn=Nn+dn|0)>>>0>>0?on+1|0:on,mn=_A(cn^dn,on^Gn,40),on=(on=Zn)+(Zn=bn)|0,Gn=cn=mn+fn|0,cn=_A(cn^yn,Qn^(fn=cn>>>0>>0?on+1|0:on),48),on=Nn+(qn=bn)|0,Qn=cn,_n=on=(Nn=dn+cn|0)>>>0>>0?on+1|0:on,cn=_A(mn^Nn,Zn^on,1),on=(Zn=bn)+Cn|0,on=nn+(mn=(dn=cn+gl|0)>>>0>>0?on+1|0:on)|0,gl=yn=dn+Al|0,yn=on=yn>>>0>>0?on+1|0:on,Cn=cn,Bn=Zn,on=On+Rl|0,on=(cn=Wn+Rn|0)>>>0>>0?on+1|0:on,Wn=cn,Rn=on,on=_A(cn^An,kn^on,1),An=Zn=bn,cn=on,on=Vn+jn|0,on=((vn=Pt+vn|0)>>>0>>0?on+1|0:on)+Zn|0,on=Zl+(vn=(Zn=cn+vn|0)>>>0>>0?on+1|0:on)|0,On=Vn=Zn+sl|0,Vn=on=Vn>>>0>>0?on+1|0:on,Zn=_A(Zn^Jn,vn^ll,32),on=Fn+(Jn=bn)|0,vn=Zn,Fn=on=(Fn=un)>>>0>(un=un+Zn|0)>>>0?on+1|0:on,Zn=_A(cn^un,on^An,40),on=(kn=bn)+Vn|0,An=cn=Zn+On|0,cn=_A(Vn=cn^vn,Jn^(vn=cn>>>0>>0?on+1|0:on),48),on=Fn+(ll=bn)|0,Fn=cn,Vn=cn=un+cn|0,Jn=on=cn>>>0>>0?on+1|0:on,On=dn,Tn=mn,cn=_A(gn^wn,Xn^$n,1),on=(un=bn)+En|0,on=Ln+((dn=cn+dl|0)>>>0>>0?on+1|0:on)|0,on=al+(mn=(dn=dn+hn|0)>>>0>>0?on+1|0:on)|0,Ln=hn=dn+Sn|0,hn=on=hn>>>0>>0?on+1|0:on,gn=cn,cn=(dn=_A(dn^Hn,mn^tl,32))+Wn|0,on=(Wn=bn)+Rn|0,mn=cn,un=_A(cn^gn,(Hn=cn>>>0>>0?on+1|0:on)^un,40),on=(tl=bn)+hn|0,hn=cn=un+Ln|0,wn=_A(cn^dn,Wn^(Ln=cn>>>0>>0?on+1|0:on),48),dn=_A(wn^On,(on=Tn)^(Tn=bn),32),on=(On=bn)+Jn|0,Wn=cn=dn+Vn|0,gn=_A(cn^Cn,(Rn=cn>>>0>>0?on+1|0:on)^Bn,40),on=(Cn=bn)+yn|0,yn=cn=gn+gl|0,cn=_A(cn^dn,On^(Xn=cn>>>0>>0?on+1|0:on),48),on=Rn+($n=bn)|0,Rn=cn,On=on=(dn=Wn)>>>0>(Wn=Wn+cn|0)>>>0?on+1|0:on,cn=_A(Wn^gn,Cn^on,1),on=Wl+(gl=bn)|0,Cn=cn,Rl=cn=ol+cn|0,gn=on=cn>>>0
        >>0?on+1|0:on,dn=pl,cn=_A(Zn^Vn,kn^Jn,1),on=fn+(Zn=bn)|0,on=((Vn=Gn)>>>0>(Gn=cn+Gn|0)>>>0?on+1|0:on)+bl|0,on=(Vn=(dn=dn+Gn|0)>>>0>>0?on+1|0:on)+yl|0,Bn=Gn=dn+ml|0,fn=on=Gn>>>0>>0?on+1|0:on,Jn=cn,Gn=_A(Yn^Mn,Pn^el,48),on=_A(Gn^dn,(kn=bn)^Vn,32),el=cn=bn,Yn=on,dn=cn,on=Hn+Tn|0,on=(cn=mn+wn|0)>>>0>>0?on+1|0:on,mn=cn,Hn=on,on=on+dn|0,Vn=cn=cn+Yn|0,wn=on=mn>>>0>cn>>>0?on+1|0:on,dn=_A(cn^Jn,on^Zn,40),on=(on=fn)+(fn=bn)|0,Jn=cn=dn+Bn|0,Mn=on=cn>>>0>>0?on+1|0:on,on=on+gn|0,Pn=on=(Zn=cn+Rl|0)>>>0>>0?on+1|0:on,gn=on,cn=_A(un^mn,Hn^tl,1),on=Un+(un=bn)|0,on=vn+((mn=cn+cl|0)>>>0>>0?on+1|0:on)|0,on=ul+(An=(mn=mn+An|0)>>>0>>0?on+1|0:on)|0,Bn=vn=mn+zn|0,vn=on=vn>>>0>>0?on+1|0:on,Hn=cn,on=_A(mn^Qn,An^qn,32),Tn=cn=bn,mn=on,An=cn,on=kn+xn|0,Qn=cn=Gn+Dn|0,xn=on=cn>>>0>>0?on+1|0:on,on=on+An|0,on=(Gn=cn+mn|0)>>>0>>0?on+1|0:on,cn=Gn^Hn,Hn=on,An=_A(cn,on^un,40),on=(qn=bn)+vn|0,un=cn=An+Bn|0,Dn=_A(cn^mn,Tn^(vn=cn>>>0>>0?on+1|0:on),48),on=_A(Dn^Zn,(tl=bn)^gn,32),Rl=cn=bn,Bn=on,gn=cn,cn=_A(pn^Qn,xn^hl,1),on=Ln+(pn=bn)|0,on=vl+((mn=cn+hn|0)>>>0>>0?on+1|0:on)|0,on=(hn=(mn=mn+rl|0)>>>0>>0?on+1|0:on)+Vl|0,Qn=Ln=mn+il|0,Ln=on=Ln>>>0>>0?on+1|0:on,mn=_A(mn^Fn,hn^ll,32),on=_n+(xn=bn)|0,Fn=mn,hn=pn,pn=on=(mn=Nn+mn|0)>>>0>>0?on+1|0:on,hn=_A(cn^mn,hn^on,40),on=(ll=bn)+Ln|0,Nn=cn=hn+Qn|0,cn=_A(Qn=cn^Fn,xn^(Fn=cn>>>0>>0?on+1|0:on),48),on=pn+(kn=bn)|0,pn=cn,Ln=cn=mn+cn|0,Qn=on=cn>>>0>>0?on+1|0:on,on=on+gn|0,_n=on=(gn=cn+Bn|0)>>>0>>0?on+1|0:on,mn=_A(gn^Cn,gl^on,40),on=Pn+(xn=bn)|0,on=((cn=mn+Zn|0)>>>0>>0?on+1|0:on)+Gl|0,Zn=cn,Pn=cn=cn+nl|0,Cn=on=Zn>>>0>cn>>>0?on+1|0:on,Tn=al,Zn=_A(Yn^Jn,Mn^el,48),on=(hl=bn)+wn|0,Yn=cn=Zn+Vn|0,on=_A(cn^dn,(Vn=cn>>>0>>0?on+1|0:on)^fn,1),fn=dn=bn,cn=on,on=vn+rn|0,on=((un=un+en|0)>>>0>>0?on+1|0:on)+dn|0,on=(un=(dn=cn+un|0)>>>0>>0?on+1|0:on)+Tn|0,wn=vn=dn+Sn|0,vn=on=vn>>>0>>0?on+1|0:on,dn=_A(dn^pn,un^kn,32),on=On+(Jn=bn)|0,Wn=on=(pn=dn+Wn|0)>>>0>>0?on+1|0:on,un=_A(cn^pn,on^fn,40),on=(Mn=bn)+vn|0,vn=cn=un+wn|0,dn=_A(cn^dn,Jn^(fn=cn>>>0>>0?on+1|0:on),48),on=Wn+(wn=bn)|0,Jn=on=(Wn=dn+pn|0)>>>0>>0?on+1|0:on,cn=_A(un^Wn,Mn^on,1),on=(Mn=bn)+Cn|0,on=Nl+((pn=cn+Pn|0)>>>0>>0?on+1|0:on)|0,on=(un=(pn=pn+Kn|0)>>>0>>0?on+1|0:on)+En|0,gl=En=pn+dl|0,En=on=En>>>0>>0?on+1|0:on,On=cn,Tn=pn,kn=un,pn=pl,cn=_A(hn^Ln,Qn^ll,1),on=Xn+(hn=bn)|0,on=((un=yn)>>>0>(yn=cn+yn|0)>>>0?on+1|0:on)+bl|0,on=Vl+(un=(pn=pn+yn|0)>>>0>>0?on+1|0:on)|0,Xn=yn=pn+il|0,Ln=on=yn>>>0>>0?on+1|0:on,yn=cn,un=on=_A(pn^Zn,un^hl,32),on=Hn+tl|0,on=(Qn=cn=bn)+(Gn=(cn=Gn+Dn|0)>>>0>>0?on+1|0:on)|0,Hn=on=(Zn=cn+un|0)>>>0>>0?on+1|0:on,yn=_A(Zn^yn,on^hn,40),on=(tl=bn)+Ln|0,Ln=_A(Xn=(pn=yn+Xn|0)^un,Qn^(un=pn>>>0>>0?on+1|0:on),48),on=_A(Ln^Tn,(ll=bn)^kn,32),hl=hn=bn,Xn=on,Qn=hn,cn=_A(cn^An,Gn^qn,1),on=ul+(hn=bn)|0,on=Fn+((Gn=cn+zn|0)>>>0>>0?on+1|0:on)|0,on=vl+(Nn=(Gn=Gn+Nn|0)>>>0>>0?on+1|0:on)|0,Tn=An=Gn+rl|0,An=on=An>>>0>>0?on+1|0:on,Fn=cn,Dn=hn,Gn=_A(Gn^Rn,Nn^$n,32),on=(Rn=bn)+Vn|0,hn=cn=Gn+Yn|0,Nn=_A(cn^Fn,(Yn=cn>>>0>>0?on+1|0:on)^Dn,40),on=(qn=bn)+An|0,Fn=cn=Nn+Tn|0,cn=_A(cn^Gn,Rn^(Vn=cn>>>0>>0?on+1|0:on),48),on=Yn+(Tn=bn)|0,An=cn,Yn=cn=hn+cn|0,Rn=on=cn>>>0>>0?on+1|0:on,on=on+Qn|0,Qn=cn=cn+Xn|0,Gn=Mn,Mn=on=Yn>>>0>cn>>>0?on+1|0:on,Gn=_A(cn^On,Gn^on,40),on=(on=En)+(En=bn)|0,Dn=cn=Gn+gl|0,On=on=cn>>>0>>0?on+1|0:on,hn=un,cn=_A(Bn^Pn,Cn^Rl,48),on=_n+($n=bn)|0,_n=cn,un=(cn=gn+cn|0)^mn,mn=on=cn>>>0>>0?on+1|0:on,un=_A(un,on^xn,1),on=(xn=bn)+hn|0,on=nn+((pn=un+pn|0)>>>0>>0?on+1|0:on)|0,on=(hn=(pn=pn+Al|0)>>>0>>0?on+1|0:on)+Un|0,Pn=gn=pn+cl|0,gn=on=gn>>>0>>0?on+1|0:on,pn=_A(pn^An,hn^Tn,32),on=Jn+(Cn=bn)|0,Jn=pn,Wn=on=(hn=Wn+pn|0)>>>0>>0?on+1|0:on,un=_A(un^hn,xn^on,40),on=(on=gn)+(gn=bn)|0,An=pn=un+Pn|0,pn=_A(Bn=pn^Jn,Cn^(Jn=pn>>>0>>0?on+1|0:on),48),on=Wn+(gl=bn)|0,xn=pn,Pn=on=(Wn=hn+pn|0)>>>0>>0?on+1|0:on,pn=_A(un^Wn,gn^on,1),on=(gn=bn)+On|0,on=rn+((un=pn+Dn|0)>>>0>>0?on+1|0:on)|0,on=jn+(hn=(un=un+en|0)>>>0>>0?on+1|0:on)|0,Rl=Cn=Pt+un|0,Cn=on=Cn>>>0>>0?on+1|0:on,Bn=pn,Tn=gn,gn=un,kn=hn,pn=_A(Nn^Yn,Rn^qn,1),on=(hn=bn)+fn|0,on=Zl+((un=pn+vn|0)>>>0>>0?on+1|0:on)|0,on=(Nn=(un=un+sl|0)>>>0>>0?on+1|0:on)+jn|0,fn=vn=Pt+un|0,vn=on=vn>>>0>>0?on+1|0:on,Yn=pn,un=on=_A(un^_n,Nn^$n,32),Nn=pn=bn,on=Hn+ll|0,Hn=on=(pn=Zn+Ln|0)>>>0>>0?on+1|0:on,on=on+Nn|0,on=(Zn=pn)>>>0>(pn=pn+un|0)>>>0?on+1|0:on,Ln=pn,pn^=Yn,Yn=on,hn=_A(pn,on^hn,40),on=(qn=bn)+vn|0,Nn=_A(vn=(pn=hn+fn|0)^un,Nn^(un=pn>>>0>>0?on+1|0:on),48),on=_A(Nn^gn,(on=kn)^(kn=bn),32),$n=gn=bn,vn=on,fn=mn,mn=dn,on=_A(Zn^yn,Hn^tl,1),Rn=dn=bn,Zn=on,on=Vn+yl|0,on=((yn=Fn+ml|0)>>>0>>0?on+1|0:on)+dn|0,yn=on=(dn=Zn+yn|0)>>>0>>0?on+1|0:on,mn=_A(dn^mn,on^wn,32),on=(on=fn)+(fn=bn)|0,Zn=_A((cn=mn+cn|0)^Zn,Rn^(Hn=cn>>>0>>0?on+1|0:on),40),on=yn+(tl=bn)|0,Fn=Zn,on=Yl+((Vn=dn)>>>0>(dn=dn+Zn|0)>>>0?on+1|0:on)|0,Vn=on=(Zn=dn+Il|0)>>>0>>0?on+1|0:on,dn=_A(mn^Zn,fn^on,48),on=Hn+(ll=bn)|0,wn=cn,mn=dn,Hn=cn=cn+dn|0,fn=on=wn>>>0>cn>>>0?on+1|0:on,on=on+gn|0,wn=on=(gn=cn+vn|0)>>>0>>0?on+1|0:on,cn=(yn=_A(gn^Bn,on^Tn,40))+Rl|0,on=(Rl=bn)+Cn|0,Rn=cn,_n=cn>>>0>>0?on+1|0:on,cn=_A(Xn^Dn,On^hl,48),on=(Xn=bn)+Mn|0,Qn=dn=cn+Qn|0,Bn=En,En=on=dn>>>0>>0?on+1|0:on,on=_A(dn^Gn,Bn^on,1),Dn=dn=bn,Gn=on,on=un+nn|0,on=((pn=pn+Al|0)>>>0>>0?on+1|0:on)+dn|0,on=Nl+(pn=(dn=pn+Gn|0)>>>0>>0?on+1|0:on)|0,On=un=dn+Kn|0,un=on=un>>>0>>0?on+1|0:on,dn=_A(dn^mn,pn^ll,32),on=Pn+(Cn=bn)|0,Mn=dn,dn=(mn=Wn+dn|0)^Gn,Gn=on=mn>>>0>>0?on+1|0:on,pn=_A(dn,Dn^on,40),on=(on=un)+(un=bn)|0,Dn=dn=pn+On|0,dn=_A(Wn=dn^Mn,Cn^(Mn=dn>>>0>>0?on+1|0:on),48),on=Gn+(ll=bn)|0,Pn=dn,mn=on=(dn=mn+dn|0)>>>0>>0?on+1|0:on,pn=_A(dn^pn,un^on,1),on=(Wn=bn)+_n|0,on=Wl+((un=pn+Rn|0)>>>0>>0?on+1|0:on)|0,on=(Gn=(un=un+ol|0)>>>0
          >>0?on+1|0:on)+al|0,el=On=un+Sn|0,On=on=On>>>0>>0?on+1|0:on,Cn=pn,Bn=un,Tn=Gn,pn=_A(Fn^Hn,fn^tl,1),on=(fn=bn)+Gl|0,on=Jn+(pn>>>0>(un=pn+nl|0)>>>0?on+1|0:on)|0,Gn=on=(un=un+An|0)>>>0>>0?on+1|0:on,on=_A(cn^un,on^Xn,32),Xn=cn=bn,An=on,on=Yn+kn|0,on=(cn=Nn+Ln|0)>>>0>>0?on+1|0:on,Nn=cn,Hn=on,on=Xn+on|0,Yn=cn=cn+An|0,Fn=on=Nn>>>0>cn>>>0?on+1|0:on,cn=_A(cn^pn,fn^on,40),on=Gn+(kn=bn)|0,Ln=cn,on=ul+((cn=un+cn|0)>>>0>>0?on+1|0:on)|0,on=(cn=cn+zn|0)>>>0>>0?on+1|0:on,fn=cn,cn^=An,An=on,Gn=_A(cn,Xn^on,48),on=_A(Gn^Bn,(on=Tn)^(Tn=bn),32),tl=cn=bn,Xn=on,Jn=cn,cn=_A(hn^Nn,Hn^qn,1),on=yl+(un=bn)|0,on=Vn+((pn=cn+ml|0)>>>0>>0?on+1|0:on)|0,on=(hn=(pn=pn+Zn|0)>>>0>>0?on+1|0:on)+Un|0,Vn=Nn=pn+cl|0,Nn=on=Nn>>>0>>0?on+1|0:on,Zn=cn,Hn=un,cn=(pn=_A(pn^xn,hn^gl,32))+Qn|0,on=(Qn=bn)+En|0,un=cn,hn=_A(hn=cn^Zn,(Zn=cn>>>0>>0?on+1|0:on)^Hn,40),on=(qn=bn)+Nn|0,Nn=cn=hn+Vn|0,pn=_A(cn^pn,Qn^(En=cn>>>0>>0?on+1|0:on),48),on=Zn+(Hn=bn)|0,Vn=cn=pn+un|0,Qn=on=cn>>>0>>0?on+1|0:on,on=on+Jn|0,Jn=on=(Zn=cn+Xn|0)>>>0>>0?on+1|0:on,un=_A(Zn^Cn,on^Wn,40),on=(xn=bn)+On|0,On=cn=un+el|0,Cn=on=cn>>>0>>0?on+1|0:on,cn=dn,Wn=mn,mn=pn,dn=_A(vn^Rn,_n^$n,48),on=wn+(el=bn)|0,vn=dn,gn=on=(pn=gn+dn|0)>>>0>>0?on+1|0:on,on=_A(pn^yn,Rl^on,1),wn=dn=bn,yn=on,on=An+El|0,on=((An=fn+dl|0)>>>0
          >>0?on+1|0:on)+dn|0,An=on=(dn=An+yn|0)>>>0>>0?on+1|0:on,mn=_A(dn^mn,on^Hn,32),on=(fn=bn)+Wn|0,yn=_A((cn=mn+cn|0)^yn,wn^(Wn=cn>>>0>>0?on+1|0:on),40),on=An+(Rn=bn)|0,on=vl+((An=dn)>>>0>(dn=dn+yn|0)>>>0?on+1|0:on)|0,Hn=on=(An=dn+rl|0)>>>0>>0?on+1|0:on,dn=_A(mn^An,fn^on,48),on=Wn+($n=bn)|0,fn=dn,wn=on=(Wn=cn+dn|0)>>>0>>0?on+1|0:on,cn=_A(Wn^yn,Rn^on,1),on=(yn=bn)+Cn|0,on=Zl+((dn=cn+On|0)>>>0>>0?on+1|0:on)|0,on=Wl+(mn=(dn=dn+sl|0)>>>0>>0?on+1|0:on)|0,hl=Rn=dn+ol|0,Rn=on=Rn>>>0
            >>0?on+1|0:on,_n=cn,Bn=dn,cn=_A(hn^Vn,Qn^qn,1),on=(hn=bn)+Mn|0,on=Vl+((dn=cn+Dn|0)>>>0>>0?on+1|0:on)|0,on=Yl+(Vn=(dn=dn+il|0)>>>0>>0?on+1|0:on)|0,Dn=Qn=dn+Il|0,Qn=on=Qn>>>0>>0?on+1|0:on,Mn=cn,on=_A(dn^vn,Vn^el,32),el=cn=bn,dn=on,on=Fn+Tn|0,Yn=cn=Gn+Yn|0,vn=on=cn>>>0>>0?on+1|0:on,on=el+on|0,Fn=on=(Gn=cn+dn|0)>>>0>>0?on+1|0:on,hn=_A(Gn^Mn,on^hn,40),on=(Tn=bn)+Qn|0,Vn=cn=hn+Dn|0,Mn=_A(cn^dn,el^(Qn=cn>>>0>>0?on+1|0:on),48),on=_A(Mn^Bn,(el=bn)^mn,32),qn=cn=bn,Dn=on,mn=cn,dn=pl,cn=_A(Yn^Ln,vn^kn,1),on=En+(vn=bn)|0,on=((Yn=Nn)>>>0>(Nn=cn+Nn|0)>>>0?on+1|0:on)+bl|0,on=Zl+(Nn=(dn=dn+Nn|0)>>>0>>0?on+1|0:on)|0,Yn=En=dn+sl|0,En=on=En>>>0>>0?on+1|0:on,dn=_A(dn^Pn,Nn^ll,32),on=gn+(Ln=bn)|0,gn=dn,on=(dn=pn+dn|0)>>>0>>0?on+1|0:on,pn=vn,vn=on,pn=_A(cn^dn,pn^on,40),on=(kn=bn)+En|0,Nn=cn=pn+Yn|0,cn=_A(cn^gn,Ln^(En=cn>>>0>>0?on+1|0:on),48),on=vn+(Bn=bn)|0,vn=cn,Yn=cn=dn+cn|0,Ln=on=cn>>>0>>0?on+1|0:on,on=on+mn|0,on=(gn=cn+Dn|0)>>>0>>0?on+1|0:on,cn=gn^_n,_n=on,yn=_A(cn,on^yn,40),on=(ll=bn)+Rn|0,Rn=cn=yn+hl|0,Pn=cn>>>0>>0?on+1|0:on,cn=_A(Xn^On,Cn^tl,48),on=Jn+(tl=bn)|0,Xn=cn,on=(cn=Zn+cn|0)>>>0>>0?on+1|0:on,Zn=cn,Jn=on,on=_A(cn^un,on^xn,1),xn=cn=bn,mn=on,on=Qn+Nl|0,on=((dn=Vn+Kn|0)>>>0>>0?on+1|0:on)+cn|0,on=vl+(dn=(cn=dn+mn|0)>>>0>>0?on+1|0:on)|0,Vn=un=cn+rl|0,un=on=un>>>0>>0?on+1|0:on,cn=_A(cn^vn,dn^Bn,32),on=wn+(Qn=bn)|0,vn=cn,Wn=on=(dn=Wn+cn|0)>>>0>>0?on+1|0:on,mn=_A(dn^mn,xn^on,40),on=(xn=bn)+un|0,Vn=cn=mn+Vn|0,cn=_A(un=cn^vn,Qn^(vn=cn>>>0>>0?on+1|0:on),48),on=Wn+(hl=bn)|0,Wn=cn,wn=on=(un=dn+cn|0)>>>0>>0?on+1|0:on,cn=_A(un^mn,xn^on,1),on=(Qn=bn)+Pn|0,on=yl+((dn=cn+Rn|0)>>>0>>0?on+1|0:on)|0,on=(mn=(dn=dn+ml|0)>>>0>>0?on+1|0:on)+Gl|0,gl=xn=dn+nl|0,xn=on=xn>>>0>>0?on+1|0:on,On=cn,Cn=dn,Bn=mn,cn=_A(pn^Yn,kn^Ln,1),on=Vl+(mn=bn)|0,on=Hn+((dn=cn+il|0)>>>0>>0?on+1|0:on)|0,on=El+(pn=(dn=dn+An|0)>>>0>>0?on+1|0:on)|0,Ln=An=dn+dl|0,An=on=An>>>0
            >>0?on+1|0:on,Hn=cn,Yn=mn,on=_A(dn^Xn,pn^tl,32),Xn=cn=bn,pn=on,dn=cn,on=Fn+el|0,on=(cn=Gn+Mn|0)>>>0>>0?on+1|0:on,Gn=cn,Fn=on,on=on+dn|0,on=(mn=cn+pn|0)>>>0>>0?on+1|0:on,cn=mn^Hn,Hn=on,cn=_A(cn,on^Yn,40),on=(on=An)+(An=bn)|0,Yn=dn=cn+Ln|0,Ln=on=dn>>>0>>0?on+1|0:on,Xn=_A(dn^pn,Xn^on,48),on=_A(Xn^Cn,(on=Bn)^(Bn=bn),32),kn=dn=bn,Mn=on,dn=_A(Gn^hn,Fn^Tn,1),on=(Gn=bn)+bl|0,on=En+((pn=dn+pl|0)>>>0>>0?on+1|0:on)|0,on=nn+(hn=(pn=pn+Nn|0)>>>0>>0?on+1|0:on)|0,Tn=Nn=pn+Al|0,Nn=on=Nn>>>0>>0?on+1|0:on,En=dn,Fn=Gn,pn=_A(pn^fn,hn^$n,32),on=(fn=bn)+Jn|0,Gn=dn=pn+Zn|0,dn=(hn=_A(dn^En,(Zn=dn>>>0>>0?on+1|0:on)^Fn,40))+Tn|0,on=(Tn=bn)+Nn|0,En=dn,dn=_A(dn^pn,fn^(Fn=dn>>>0>>0?on+1|0:on),48),on=Zn+(el=bn)|0,fn=dn,Jn=dn=Gn+dn|0,Cn=on=dn>>>0>>0?on+1|0:on,on=kn+on|0,on=(pn=dn+Mn|0)>>>0>>0?on+1|0:on,dn=Qn,Qn=on,Gn=_A(pn^On,dn^on,40),on=(tl=bn)+xn|0,Nn=dn=Gn+gl|0,on=_A(dn^Mn,kn^(xn=dn>>>0>>0?on+1|0:on),48),kn=dn=bn,Mn=on,dn=cn,on=Hn+Bn|0,Hn=cn=mn+Xn|0,Xn=on=cn>>>0>>0?on+1|0:on,on=_A(cn^dn,on^An,1),mn=dn=bn,cn=on,on=Fn+rn|0,on=((Zn=En+en|0)>>>0>>0?on+1|0:on)+dn|0,on=ul+(Zn=(dn=cn+Zn|0)>>>0>>0?on+1|0:on)|0,Bn=An=dn+zn|0,An=on=An>>>0>>0?on+1|0:on,En=cn,Fn=mn,cn=_A(Rn^Dn,Pn^qn,48),on=_n+(qn=bn)|0,Rn=cn,on=(cn=gn+cn|0)>>>0>>0?on+1|0:on,gn=cn,dn=_A(dn^Wn,Zn^hl,32),_n=on,on=on+(Dn=bn)|0,mn=cn=dn+cn|0,Zn=_A(cn^En,(Wn=cn>>>0>>0?on+1|0:on)^Fn,40),on=(Pn=bn)+An|0,An=cn=Zn+Bn|0,cn=_A(cn^dn,Dn^(En=cn>>>0>>0?on+1|0:on),48),on=Wn+($n=bn)|0,Fn=cn,Dn=on=(Wn=mn+cn|0)>>>0>>0?on+1|0:on,cn=_A(Zn^Wn,Pn^on,1),on=vl+(Bn=bn)|0,Pn=cn,hl=cn=rl+cn|0,mn=on=cn>>>0>>0?on+1|0:on,cn=_A(yn^gn,_n^ll,1),on=(Zn=bn)+Ln|0,on=Yl+((dn=cn+Yn|0)>>>0>>0?on+1|0:on)|0,on=al+(gn=(dn=dn+Il|0)>>>0>>0?on+1|0:on)|0,_n=yn=dn+Sn|0,yn=on=yn>>>0>>0?on+1|0:on,Yn=Zn,dn=_A(dn^fn,gn^el,32),on=wn+(el=bn)|0,Ln=dn,on=(Zn=un+dn|0)>>>0>>0?on+1|0:on,un=Yn,Yn=on,gn=_A(cn^Zn,un^on,40),on=(ll=bn)+yn|0,fn=cn=gn+_n|0,on=(wn=cn>>>0>>0?on+1|0:on)+mn|0,yn=on=(mn=cn+hl|0)>>>0>>0?on+1|0:on,_n=on=_A(mn^Mn,on^kn,32),On=cn=bn,cn=_A(hn^Jn,Cn^Tn,1),on=(un=bn)+vn|0,on=jn+((dn=cn+Vn|0)>>>0>>0?on+1|0:on)|0,on=(hn=(dn=Pt+dn|0)>>>0>>0?on+1|0:on)+Un|0,Cn=vn=dn+cl|0,vn=on=vn>>>0>>0?on+1|0:on,Vn=cn,Jn=un,dn=_A(dn^Rn,hn^qn,32),on=(Rn=bn)+Xn|0,un=cn=dn+Hn|0,cn=(hn=_A(cn^Vn,(Hn=cn>>>0>>0?on+1|0:on)^Jn,40))+Cn|0,on=(Cn=bn)+vn|0,vn=cn,cn=_A(cn^dn,Rn^(Vn=cn>>>0>>0?on+1|0:on),48),on=Hn+(qn=bn)|0,Hn=cn,Rn=on=(cn=un+cn|0)>>>0>>0?on+1|0:on,on=on+On|0,Xn=on=(un=cn)>>>0>(cn=cn+_n|0)>>>0?on+1|0:on,dn=_A(cn^Pn,Bn^on,40),on=yn+(Bn=bn)|0,Jn=dn,on=rn+((dn=mn+dn|0)>>>0>>0?on+1|0:on)|0,Pn=dn=dn+en|0,mn=dn^_n,_n=on=dn>>>0>>0?on+1|0:on,dn=_A(mn,On^on,48),on=Xn+(On=bn)|0,Xn=on=(yn=cn+dn|0)>>>0>>0?on+1|0:on,cn=on=_A(yn^Jn,Bn^on,1),Jn=mn=bn,mn=_A(un^hn,Rn^Cn,1),on=En+(hn=bn)|0,on=Yl+((un=mn+An|0)>>>0>>0?on+1|0:on)|0,on=Zl+(An=(un=un+Il|0)>>>0>>0?on+1|0:on)|0,Bn=En=un+sl|0,En=on=En>>>0>>0?on+1|0:on,Rn=mn,Cn=hn,on=Qn+kn|0,on=(mn=pn+Mn|0)>>>0>>0?on+1|0:on,Qn=mn,Ln=_A(fn^Ln,wn^el,48),hn=_A(un^Ln,An^(el=bn),32),fn=on,on=on+(hl=bn)|0,An=mn=hn+mn|0,mn=_A(mn^Rn,(wn=mn>>>0>>0?on+1|0:on)^Cn,40),on=(Rn=bn)+En|0,Cn=on=(pn=mn+Bn|0)>>>0>>0?on+1|0:on,on=on+Jn|0,on=nn+((Mn=pn)>>>0>(pn=cn+pn|0)>>>0?on+1|0:on)|0,on=(un=(pn=pn+Al|0)>>>0>>0?on+1|0:on)+bl|0,gl=En=pn+pl|0,Bn=on=En>>>0>>0?on+1|0:on,Tn=cn,kn=pn,on=_A(Gn^Qn,fn^tl,1),Gn=pn=bn,cn=on,on=Vn+Vl|0,on=((En=vn+il|0)>>>0>>0?on+1|0:on)+pn|0,on=ul+(En=(pn=cn+En|0)>>>0>>0?on+1|0:on)|0,fn=vn=pn+zn|0,vn=on=vn>>>0>>0?on+1|0:on,Vn=cn,on=_A(pn^Fn,En^$n,32),Qn=cn=bn,pn=on,En=cn,on=Yn+el|0,Yn=cn=Zn+Ln|0,Fn=on=cn>>>0>>0?on+1|0:on,on=on+En|0,on=(Zn=cn+pn|0)>>>0>>0?on+1|0:on,cn=Zn^Vn;Vn=on,En=_A(cn,on^Gn,40),on=(el=bn)+vn|0,Ln=_A(vn=(cn=En+fn|0)^pn,Qn^(pn=cn>>>0>>0?on+1|0:on),48),on=_A(on=Ln^kn,(kn=bn)^un,32),tl=un=bn,fn=on,vn=un,un=_A(gn^Yn,Fn^ll,1),on=al+(gn=bn)|0,on=xn+((Gn=un+Sn|0)>>>0>>0?on+1|0:on)|0,on=yl+(Nn=(Gn=Gn+Nn|0)>>>0>>0?on+1|0:on)|0,Fn=Yn=Gn+ml|0,Yn=on=Yn>>>0>>0?on+1|0:on,Gn=_A(Gn^Hn,Nn^qn,32),on=Dn+(Qn=bn)|0,Hn=Gn,Wn=on=(Gn=Wn+Gn|0)>>>0>>0?on+1|0:on,Nn=_A(un^Gn,on^gn,40),on=(qn=bn)+Yn|0,gn=un=Nn+Fn|0,un=_A(Yn=un^Hn,Qn^(Hn=un>>>0>>0?on+1|0:on),48),on=Wn+($n=bn)|0,Yn=un,Fn=un=Gn+un|0,Qn=on=un>>>0>>0?on+1|0:on,on=on+vn|0,on=(Gn=un+fn|0)>>>0>>0?on+1|0:on,un=Jn,Jn=on,Wn=_A(Gn^Tn,un^on,40),on=(xn=bn)+Bn|0,vn=un=Wn+gl|0,un=_A(Bn=un^fn,tl^(fn=un>>>0>>0?on+1|0:on),48),on=Jn+(tl=bn)|0,Jn=un,Gn=on=(un=Gn+un|0)>>>0>>0?on+1|0:on,xn=on=_A(un^Wn,xn^on,1),ll=on,Dn=Wn=bn,Wn=pn,pn=mn,mn=_A(hn^Mn,Cn^hl,48),on=wn+(hl=bn)|0,wn=mn,on=(mn=An+mn|0)>>>0>>0?on+1|0:on,An=cn,cn=pn^mn,pn=on,cn=_A(cn,on^Rn,1),on=(Rn=bn)+Wn|0,on=El+(cn>>>0>(hn=An+cn|0)>>>0?on+1|0:on)|0,on=Gl+(An=(hn=hn+dl|0)>>>0
            >>0?on+1|0:on)|0,Mn=Wn=hn+nl|0,Wn=on=Wn>>>0>>0?on+1|0:on,hn=_A(hn^Yn,An^$n,32),on=Xn+(Cn=bn)|0,Yn=on=(An=hn+yn|0)>>>0>>0?on+1|0:on,yn=_A(cn^An,Rn^on,40),on=($n=bn)+Wn|0,Rn=cn=yn+Mn|0,hn=_A(cn^hn,Cn^(Xn=cn>>>0>>0?on+1|0:on),48),on=Yn+(Mn=bn)|0,Cn=cn=hn+An|0,Yn=cn,Bn=on=cn>>>0>>0?on+1|0:on,An=mn,Wn=pn,on=Vn+kn|0,on=(cn=Zn+Ln|0)>>>0>>0?on+1|0:on,Zn=cn,cn^=En,En=on,on=_A(cn,el^on,1),Tn=cn=bn,Vn=on,pn=on,on=Hn+Un|0,on=((mn=gn+cl|0)>>>0>>0?on+1|0:on)+cn|0,gn=on=(cn=mn)>>>0>(mn=pn+mn|0)>>>0?on+1|0:on,pn=_A(dn^mn,on^On,32),on=(on=Wn)+(Wn=bn)|0,Ln=cn=pn+An|0,dn=_A(dn=cn^Vn,Tn^(Vn=cn>>>0>>0?on+1|0:on),40),on=gn+(On=bn)|0,on=Nl+((cn=dn+mn|0)>>>0>>0?on+1|0:on)|0,Tn=on=(An=cn+Kn|0)>>>0>>0?on+1|0:on,Wn=_A(pn^An,Wn^on,48),gl=on=bn,cn=_A(Nn^Fn,Qn^qn,1),on=(pn=bn)+_n|0,on=Wl+((mn=cn+Pn|0)>>>0>>0?on+1|0:on)|0,on=jn+(Nn=(mn=mn+ol|0)>>>0
              >>0?on+1|0:on)|0,_n=gn=Pt+mn|0,Fn=on=gn>>>0>>0?on+1|0:on,Qn=cn,gn=_A(mn^wn,Nn^hl,32),on=(qn=bn)+En|0,En=cn=gn+Zn|0,mn=_A(cn^Qn,(wn=cn>>>0>>0?on+1|0:on)^pn,40),on=(on=Fn)+(Fn=bn)|0,Qn=cn=mn+_n|0,_n=on=cn>>>0>>0?on+1|0:on,pn=on,on=jn+Dn|0,on=((Nn=Pt+xn|0)>>>0>>0?on+1|0:on)+pn|0,Hn=on=(pn=cn+Nn|0)>>>0>>0?on+1|0:on,cn=_A(pn^Wn,gl^on,32),on=(xn=bn)+Bn|0,Zn=_A((Nn=cn+Yn|0)^ll,(on=Nn>>>0>>0?on+1|0:on)^Dn,40),Dn=on,on=Gl+(Yn=bn)|0,on=Hn+((Pn=Zn+nl|0)>>>0>>0?on+1|0:on)|0,on=(Hn=pn+Pn|0)>>>0>>0?on+1|0:on,pn=xn,xn=on,pn=_A(cn^Hn,pn^on,48),on=(on=Dn)+(Dn=bn)|0,cn=Zn^(Nn=pn+Nn|0),Zn=on=Nn>>>0>>0?on+1|0:on,Pn=on=_A(cn,on^Yn,1),ll=on,kn=cn=bn,Yn=un,el=Gn,un=mn,mn=_A(gn^Qn,_n^qn,48),on=wn+(Qn=bn)|0,gn=cn=mn+En|0,En=on=cn>>>0>>0?on+1|0:on,un=_A(cn^un,on^Fn,1),on=(_n=bn)+El|0,on=Tn+((cn=un+dl|0)>>>0>>0?on+1|0:on)|0,An=on=(Gn=cn+An|0)>>>0>>0?on+1|0:on,cn=_A(Gn^hn,on^Mn,32),on=(Fn=bn)+el|0,Yn=hn=cn+Yn|0,wn=on=hn>>>0>>0?on+1|0:on,un=_A(un^hn,on^_n,40),on=Zl+(hl=bn)|0,_n=un,on=An+((un=sl+un|0)>>>0>>0?on+1|0:on)|0,Gn=on=(un=un+Gn|0)>>>0>>0?on+1|0:on,hn=_A(cn^un,on^Fn,48),on=(on=wn)+(wn=bn)|0,Mn=cn=hn+Yn|0,Fn=cn,Tn=on=cn>>>0>>0?on+1|0:on,on=Vn+gl|0,Yn=(cn=Wn+Ln|0)^dn,dn=on=cn>>>0>>0?on+1|0:on,on=_A(Yn,on^On,1),On=An=bn,Yn=on,on=Xn+ul|0,on=((Wn=Rn+zn|0)>>>0>>0?on+1|0:on)+An|0,Vn=on=(Vn=Wn)>>>0>(Wn=Wn+Yn|0)>>>0?on+1|0:on,Ln=An=_A(Wn^Jn,tl^on,32),Rn=on=bn,on=on+En|0,Xn=An=An+gn|0,Jn=on=Ln>>>0>An>>>0?on+1|0:on,An=_A(An^Yn,On^on,40),on=bl+(On=bn)|0,on=Vn+((gn=An+pl|0)>>>0>>0?on+1|0:on)|0,gn=on=(Yn=Wn)>>>0>(Wn=Wn+gn|0)>>>0?on+1|0:on,Yn=_A(Wn^Ln,on^Rn,48),tl=on=bn,En=on,yn=_A(yn^Cn,Bn^$n,1),Vn=on=bn,Ln=mn,on=on+Un|0,on=fn+((mn=yn+cl|0)>>>0>>0?on+1|0:on)|0,on=(mn=mn+vn|0)>>>0>>0?on+1|0:on,vn=mn^Ln,Ln=on,vn=_A(vn,on^Qn,32),on=($n=bn)+dn|0,fn=cn=vn+cn|0,dn=_A(cn^yn,(dn=Vn)^(Vn=cn>>>0>>0?on+1|0:on),40),on=Wl+(Rn=bn)|0,on=Ln+((cn=dn+ol|0)>>>0
                >>0?on+1|0:on)|0,Ln=cn=cn+mn|0,Qn=on=cn>>>0>>0?on+1|0:on,mn=on,on=kn+Yl|0,on=((yn=Pn+Il|0)>>>0>>0?on+1|0:on)+mn|0,Pn=on=(mn=cn+yn|0)>>>0>>0?on+1|0:on,cn=_A(mn^Yn,on^En,32),on=(Cn=bn)+Tn|0,En=_A((yn=cn+Fn|0)^ll,(on=yn>>>0>>0?on+1|0:on)^kn,40),Bn=Fn=bn,kn=on,on=Fn+yl|0,on=Pn+((Fn=En+ml|0)>>>0>>0?on+1|0:on)|0,Pn=on=(Fn=mn+Fn|0)>>>0>>0?on+1|0:on,mn=_A(cn^Fn,on^Cn,48),on=(Cn=bn)+kn|0,cn=(yn=mn+yn|0)^En,En=on=yn>>>0>>0?on+1|0:on,Bn=on=_A(cn,on^Bn,1),kn=cn=bn,el=Nn,qn=hn,hn=dn,dn=_A(vn^Ln,Qn^$n,48),on=(vn=bn)+Vn|0,Vn=cn=dn+fn|0,Ln=on=cn>>>0>>0?on+1|0:on,hn=_A(cn^hn,on^Rn,1),on=(Rn=bn)+vl|0,on=((cn=hn+rl|0)>>>0>>0?on+1|0:on)+gn|0,Wn=on=(Nn=cn+Wn|0)>>>0>>0?on+1|0:on,cn=_A(Nn^qn,on^wn,32),on=(gn=bn)+Zn|0,fn=Zn=cn+el|0,wn=on=Zn>>>0>>0?on+1|0:on,hn=_A(hn^Zn,on^Rn,40),on=nn+(qn=bn)|0,Rn=hn,on=Wn+((hn=Al+hn|0)>>>0>>0?on+1|0:on)|0,Qn=on=(Zn=hn+Nn|0)>>>0>>0?on+1|0:on,hn=_A(cn^Zn,on^gn,48),on=(on=wn)+(wn=bn)|0,fn=cn=hn+fn|0,el=on=cn>>>0>>0?on+1|0:on,Wn=pn,Nn=un,on=Jn+tl|0,pn=on=(cn=Yn+Xn|0)>>>0>>0?on+1|0:on,un=_A(cn^An,on^On,1),on=(An=bn)+al|0,on=((gn=un+Sn|0)>>>0>>0?on+1|0:on)+Gn|0,Gn=_A(Wn^(Nn=Nn+gn|0),(on=Nn>>>0>>0?on+1|0:on)^Dn,32),gn=on,Yn=un,on=(Wn=bn)+Ln|0,on=(un=Gn+Vn|0)>>>0>>0?on+1|0:on,Vn=un,un^=Yn,Yn=on,un=_A(un,on^An,40),on=rn+(Ln=bn)|0,on=((An=un+en|0)>>>0>>0?on+1|0:on)+gn|0,Xn=on=(gn=An)>>>0>(An=An+Nn|0)>>>0?on+1|0:on,Wn=_A(Gn^An,on^Wn,48),tl=on=bn,Nn=on,Gn=_A(Mn^_n,Tn^hl,1),Jn=on=bn,_n=pn,on=on+Nl|0,on=xn+((pn=Gn+Kn|0)>>>0>>0?on+1|0:on)|0,gn=vn,vn=on=(pn=pn+Hn|0)>>>0>>0?on+1|0:on,gn=_A(dn^pn,gn^on,32),on=($n=bn)+_n|0,Hn=cn=gn+cn|0,dn=_A(cn^Gn,(dn=Jn)^(Jn=cn>>>0>>0?on+1|0:on),40),on=Vl+(_n=bn)|0,on=vn+((cn=dn+il|0)>>>0>>0?on+1|0:on)|0,xn=cn=cn+pn|0,Mn=on=cn>>>0>>0?on+1|0:on,pn=on,on=kn+ul|0,on=((Gn=zn+Bn|0)>>>0>>0?on+1|0:on)+pn|0,vn=on=(pn=cn+Gn|0)>>>0>>0?on+1|0:on,cn=_A(pn^Wn,on^Nn,32),on=(Dn=bn)+el|0,Nn=_A((Gn=cn+fn|0)^Bn,(on=Gn>>>0>>0?on+1|0:on)^kn,40),Bn=on,on=Un+(On=bn)|0,on=vn+((Tn=Nn+cl|0)>>>0>>0?on+1|0:on)|0,on=(vn=pn+Tn|0)>>>0>>0?on+1|0:on,pn=Dn,Dn=on,pn=_A(cn^vn,pn^on,48),on=(on=Bn)+(Bn=bn)|0,cn=(Gn=pn+Gn|0)^Nn,Nn=on=Gn>>>0>>0?on+1|0:on,On=on=_A(cn,on^On,1),Tn=cn=bn,kn=hn,hn=dn,dn=_A(gn^xn,Mn^$n,48),on=(on=Jn)+(Jn=bn)|0,Hn=cn=dn+Hn|0,gn=_n,_n=on=cn>>>0>>0?on+1|0:on,hn=_A(cn^hn,gn^on,1),on=(xn=bn)+yl|0,on=Xn+((cn=hn+ml|0)>>>0>>0?on+1|0:on)|0,gn=An,An=cn+An|0,cn=wn,wn=on=gn>>>0>An>>>0?on+1|0:on,cn=_A(An^kn,cn^on,32),on=(on=En)+(En=bn)|0,Xn=on=(gn=cn+yn|0)>>>0>>0?on+1|0:on,yn=gn,hn=_A(hn^gn,on^xn,40),on=Nl+($n=bn)|0,xn=hn,on=wn+((hn=Kn+hn|0)>>>0>>0?on+1|0:on)|0,wn=on=(gn=hn+An|0)>>>0>>0?on+1|0:on,hn=_A(cn^gn,on^En,48),on=(on=Xn)+(Xn=bn)|0,Mn=cn=hn+yn|0,kn=on=cn>>>0>>0?on+1|0:on,yn=mn,on=Yn+tl|0,mn=on=(cn=Wn+Vn|0)>>>0>>0?on+1|0:on,un=_A(cn^un,on^Ln,1),on=Gl+(Wn=bn)|0,on=Qn+((An=un+nl|0)>>>0>>0?on+1|0:on)|0,Yn=(An=Zn+An|0)^yn,yn=on=An>>>0>>0?on+1|0:on,Zn=_A(Yn,on^Cn,32),En=on=bn,Yn=un,on=on+_n|0,on=(un=Zn+Hn|0)>>>0>>0?on+1|0:on,Vn=un,un^=Yn,Yn=on,un=_A(un,on^Wn,40),on=rn+(Ln=bn)|0,on=yn+((Wn=un+en|0)>>>0>>0?on+1|0:on)|0,Qn=on=(Wn=An+Wn|0)>>>0>>0?on+1|0:on,yn=_A(Zn^Wn,on^En,48),tl=on=bn,An=on,Zn=_A(Rn^fn,qn^el,1),Hn=on=bn,fn=mn,on=on+nn|0,on=Pn+((mn=Zn+Al|0)>>>0>>0?on+1|0:on)|0,Fn=on=(mn=mn+Fn|0)>>>0>>0?on+1|0:on,En=_A(dn^mn,on^Jn,32),on=(ll=bn)+fn|0,fn=cn=En+cn|0,dn=_A(cn^Zn,(Rn=cn>>>0>>0?on+1|0:on)^Hn,40),on=jn+(Jn=bn)|0,on=Fn+((cn=Pt+dn|0)>>>0>>0?on+1|0:on)|0,Fn=cn=cn+mn|0,_n=on=cn>>>0>>0?on+1|0:on,mn=on,on=Tn+Wl|0,on=((Zn=On+ol|0)>>>0
                  >>0?on+1|0:on)+mn|0,Hn=on=(mn=cn+Zn|0)>>>0>>0?on+1|0:on,cn=_A(mn^yn,on^An,32),on=(Pn=bn)+kn|0,An=_A((Zn=cn+Mn|0)^On,(on=Zn>>>0>>0?on+1|0:on)^Tn,40),Cn=on,on=El+(On=bn)|0,on=Hn+((Tn=An+dl|0)>>>0
                  >>0?on+1|0:on)|0,on=(Hn=mn+Tn|0)>>>0>>0?on+1|0:on,mn=Pn,Pn=on,mn=_A(cn^Hn,mn^on,48),on=(on=Cn)+(Cn=bn)|0,cn=(Zn=mn+Zn|0)^An,An=on=Zn>>>0>>0?on+1|0:on,On=on=_A(cn,on^On,1),hl=on,Tn=cn=bn,el=Gn,qn=hn,Gn=dn,dn=_A(En^Fn,_n^ll,48),on=(En=bn)+Rn|0,Fn=cn=dn+fn|0,fn=on=cn>>>0>>0?on+1|0:on,Gn=_A(cn^Gn,on^Jn,1),on=(Jn=bn)+bl|0,on=Qn+((cn=Gn+pl|0)>>>0>>0?on+1|0:on)|0,Wn=on=(hn=cn+Wn|0)>>>0>>0?on+1|0:on,cn=_A(hn^qn,on^Xn,32),on=(Rn=bn)+Nn|0,Xn=on=(Nn=cn+el|0)>>>0>>0?on+1|0:on,Gn=_A(Gn^Nn,on^Jn,40),on=vl+(ll=bn)|0,Qn=Gn,on=Wn+((Gn=rl+Gn|0)>>>0>>0?on+1|0:on)|0,Wn=Gn+hn|0,Gn=Rn,Rn=on=Wn>>>0>>0?on+1|0:on,Gn=_A(cn^Wn,Gn^on,48),on=(on=Xn)+(Xn=bn)|0,Jn=cn=Gn+Nn|0,_n=on=cn>>>0>>0?on+1|0:on,hn=pn,on=Yn+tl|0,pn=on=(cn=yn+Vn|0)>>>0>>0?on+1|0:on,un=_A(cn^un,on^Ln,1),on=(yn=bn)+Vl|0,on=wn+((Nn=un+il|0)>>>0>>0?on+1|0:on)|0,hn=_A(hn^(Nn=Nn+gn|0),(on=Nn>>>0>>0?on+1|0:on)^Bn,32),Yn=gn=bn,gn=on,Vn=un,on=Yn+fn|0,on=(un=hn+Fn|0)>>>0>>0?on+1|0:on,Fn=un,un^=Vn,Vn=on,un=_A(un,on^yn,40),on=Zl+(Ln=bn)|0,on=((yn=un+sl|0)>>>0>>0?on+1|0:on)+gn|0,wn=Yn,Yn=on=(gn=Nn+yn|0)>>>0>>0?on+1|0:on,yn=_A(hn^gn,wn^on,48),tl=on=bn,Nn=on,hn=_A(Mn^xn,kn^$n,1),fn=on=bn,wn=pn,on=on+al|0,on=Dn+((pn=hn+Sn|0)>>>0>>0?on+1|0:on)|0,vn=on=(pn=pn+vn|0)>>>0>>0?on+1|0:on,En=_A(dn^pn,on^En,32),on=($n=bn)+wn|0,wn=cn=En+cn|0,dn=_A(cn^hn,(dn=fn)^(fn=cn>>>0>>0?on+1|0:on),40),on=Yl+(xn=bn)|0,on=vn+((cn=dn+Il|0)>>>0>>0?on+1|0:on)|0,Mn=cn=cn+pn|0,Dn=on=cn>>>0>>0?on+1|0:on,pn=on,on=Tn+rn|0,on=((hn=On+en|0)>>>0>>0?on+1|0:on)+pn|0,vn=on=(pn=cn+hn|0)>>>0>>0?on+1|0:on,cn=_A(pn^yn,on^Nn,32),on=(On=bn)+_n|0,Nn=_A((hn=cn+Jn|0)^hl,(on=hn>>>0>>0?on+1|0:on)^Tn,40),Tn=on,on=yl+(Bn=bn)|0,on=vn+((kn=Nn+ml|0)>>>0>>0?on+1|0:on)|0,on=(vn=pn+kn|0)>>>0>>0?on+1|0:on,pn=On,On=on,pn=_A(cn^vn,pn^on,48),on=(on=Tn)+(Tn=bn)|0,cn=(hn=pn+hn|0)^Nn,Nn=on=hn>>>0>>0?on+1|0:on,Bn=on=_A(cn,on^Bn,1),kn=cn=bn,el=Zn,qn=Gn,Gn=dn,dn=_A(En^Mn,Dn^$n,48),on=(En=bn)+fn|0,fn=cn=dn+wn|0,wn=on=cn>>>0>>0?on+1|0:on,Gn=_A(cn^Gn,on^xn,1),on=(xn=bn)+vl|0,on=Yn+((cn=Gn+rl|0)>>>0>>0?on+1|0:on)|0,gn=on=(Zn=cn+gn|0)>>>0>>0?on+1|0:on,cn=_A(Zn^qn,on^Xn,32),on=(Yn=bn)+An|0,Xn=on=(An=cn+el|0)>>>0>>0?on+1|0:on,Gn=_A(Gn^An,on^xn,40),on=al+($n=bn)|0,xn=Gn,on=gn+((Gn=Sn+Gn|0)>>>0>>0?on+1|0:on)|0,gn=Gn+Zn|0,Gn=Yn,Yn=on=gn>>>0>>0?on+1|0:on,Gn=_A(cn^gn,Gn^on,48),on=(on=Xn)+(Xn=bn)|0,Mn=cn=Gn+An|0,Dn=on=cn>>>0>>0?on+1|0:on,Zn=mn,on=Vn+tl|0,mn=on=(cn=yn+Fn|0)>>>0>>0?on+1|0:on,un=_A(cn^un,on^Ln,1),on=Yl+(yn=bn)|0,on=Rn+((An=un+Il|0)>>>0>>0?on+1|0:on)|0,Wn=on=(An=An+Wn|0)>>>0>>0?on+1|0:on,Zn=_A(Zn^An,on^Cn,32),Fn=on=bn,Vn=un,on=on+wn|0,on=(un=Zn+fn|0)>>>0>>0?on+1|0:on,Ln=un,un^=Vn,Vn=on,un=_A(un,on^yn,40),on=Wl+(fn=bn)|0,on=Wn+((yn=un+ol|0)>>>0
                    >>0?on+1|0:on)|0,on=(Wn=An+yn|0)>>>0>>0?on+1|0:on,An=Fn,Fn=on,yn=_A(Zn^Wn,An^on,48),tl=on=bn,An=on,Zn=_A(Qn^Jn,_n^ll,1),wn=on=bn,Rn=mn,on=on+jn|0,on=Pn+((mn=Pt+Zn|0)>>>0>>0?on+1|0:on)|0,Hn=on=(mn=mn+Hn|0)>>>0>>0?on+1|0:on,En=_A(dn^mn,on^En,32),on=(ll=bn)+Rn|0,Rn=cn=En+cn|0,dn=_A(cn^Zn,(dn=wn)^(wn=cn>>>0>>0?on+1|0:on),40),on=Nl+(Qn=bn)|0,on=Hn+((cn=dn+Kn|0)>>>0>>0?on+1|0:on)|0,Jn=cn=cn+mn|0,_n=on=cn>>>0>>0?on+1|0:on,mn=on,on=kn+Gl|0,on=((Zn=Bn+nl|0)>>>0>>0?on+1|0:on)+mn|0,Hn=on=(mn=cn+Zn|0)>>>0>>0?on+1|0:on,cn=_A(mn^yn,on^An,32),on=(Pn=bn)+Dn|0,An=_A((Zn=cn+Mn|0)^Bn,(on=Zn>>>0>>0?on+1|0:on)^kn,40),Bn=on,on=nn+(Cn=bn)|0,on=Hn+((kn=An+Al|0)>>>0>>0?on+1|0:on)|0,on=(Hn=mn+kn|0)>>>0>>0?on+1|0:on,mn=Pn,Pn=on,mn=_A(cn^Hn,mn^on,48),on=(on=Bn)+(Bn=bn)|0,cn=(Zn=mn+Zn|0)^An,An=on=Zn>>>0>>0?on+1|0:on,Cn=on=_A(cn,on^Cn,1),kn=cn=bn,el=hn,qn=Gn,Gn=dn,dn=_A(En^Jn,_n^ll,48),on=(En=bn)+wn|0,wn=cn=dn+Rn|0,Rn=on=cn>>>0>>0?on+1|0:on,Gn=_A(cn^Gn,on^Qn,1),on=(Qn=bn)+ul|0,on=Fn+((cn=Gn+zn|0)>>>0>>0?on+1|0:on)|0,Wn=on=(hn=cn+Wn|0)>>>0>>0?on+1|0:on,cn=_A(hn^qn,on^Xn,32),on=(Fn=bn)+Nn|0,Xn=on=(Nn=cn+el|0)>>>0>>0?on+1|0:on,Gn=_A(Gn^Nn,on^Qn,40),on=Vl+(ll=bn)|0,Qn=Gn,on=Wn+((Gn=il+Gn|0)>>>0>>0?on+1|0:on)|0,Wn=Gn+hn|0,Gn=Fn,Fn=on=Wn>>>0>>0?on+1|0:on,Gn=_A(cn^Wn,Gn^on,48),on=(on=Xn)+(Xn=bn)|0,Jn=cn=Gn+Nn|0,_n=on=cn>>>0>>0?on+1|0:on,hn=pn,on=Vn+tl|0,pn=on=(cn=yn+Ln|0)>>>0>>0?on+1|0:on,un=_A(cn^un,on^fn,1),on=(yn=bn)+Zl|0,on=Yn+((Nn=un+sl|0)>>>0>>0?on+1|0:on)|0,gn=on=(Nn=Nn+gn|0)>>>0>>0?on+1|0:on,hn=_A(hn^Nn,on^Tn,32),Yn=on=bn,Vn=un,on=on+Rn|0,on=(un=hn+wn|0)>>>0>>0?on+1|0:on,Ln=un,un^=Vn,Vn=on,un=_A(un,on^yn,40),on=bl+(fn=bn)|0,on=gn+((yn=un+pl|0)>>>0>>0?on+1|0:on)|0,wn=Yn,Yn=on=(gn=Nn+yn|0)>>>0>>0?on+1|0:on,yn=_A(hn^gn,wn^on,48),tl=on=bn,Nn=on,hn=_A(Mn^xn,Dn^$n,1),wn=on=bn,Rn=pn,on=on+Un|0,on=On+((pn=hn+cl|0)>>>0>>0?on+1|0:on)|0,vn=on=(pn=pn+vn|0)>>>0>>0?on+1|0:on,En=_A(dn^pn,on^En,32),on=($n=bn)+Rn|0,Rn=cn=En+cn|0,dn=_A(cn^hn,(dn=wn)^(wn=cn>>>0>>0?on+1|0:on),40),on=El+(xn=bn)|0,on=vn+((cn=dn+dl|0)>>>0
                    >>0?on+1|0:on)|0,Mn=cn=cn+pn|0,Dn=on=cn>>>0>>0?on+1|0:on,pn=on,on=kn+nn|0,on=((hn=Cn+Al|0)>>>0>>0?on+1|0:on)+pn|0,vn=on=(pn=cn+hn|0)>>>0>>0?on+1|0:on,cn=_A(pn^yn,on^Nn,32),on=(On=bn)+_n|0,Nn=_A((hn=cn+Jn|0)^Cn,(on=hn>>>0>>0?on+1|0:on)^kn,40),Tn=on,on=Yl+(Cn=bn)|0,on=vn+((kn=Nn+Il|0)>>>0>>0?on+1|0:on)|0,on=(vn=pn+kn|0)>>>0>>0?on+1|0:on,pn=On,On=on,pn=_A(cn^vn,pn^on,48),on=(on=Tn)+(Tn=bn)|0,cn=(hn=pn+hn|0)^Nn,Nn=on=hn>>>0>>0?on+1|0:on,Cn=on=_A(cn,on^Cn,1),kn=cn=bn,el=Zn,qn=Gn,Gn=dn,dn=_A(En^Mn,Dn^$n,48),on=(En=bn)+wn|0,wn=cn=dn+Rn|0,Rn=on=cn>>>0>>0?on+1|0:on,Gn=_A(cn^Gn,on^xn,1),on=(xn=bn)+Un|0,on=Yn+((cn=Gn+cl|0)>>>0>>0?on+1|0:on)|0,gn=on=(Zn=cn+gn|0)>>>0>>0?on+1|0:on,cn=_A(Zn^qn,on^Xn,32),on=(Yn=bn)+An|0,Xn=on=(An=cn+el|0)>>>0>>0?on+1|0:on,Gn=_A(Gn^An,on^xn,40),on=bl+($n=bn)|0,xn=Gn,on=gn+((Gn=pl+Gn|0)>>>0>>0?on+1|0:on)|0,gn=Gn+Zn|0,Gn=Yn,Yn=on=gn>>>0>>0?on+1|0:on,Gn=_A(cn^gn,Gn^on,48),on=(on=Xn)+(Xn=bn)|0,Mn=cn=Gn+An|0,Dn=on=cn>>>0>>0?on+1|0:on,Zn=mn,on=Vn+tl|0,mn=on=(cn=yn+Ln|0)>>>0>>0?on+1|0:on,un=_A(cn^un,on^fn,1),on=Zl+(yn=bn)|0,on=Fn+((An=un+sl|0)>>>0>>0?on+1|0:on)|0,Wn=on=(An=An+Wn|0)>>>0>>0?on+1|0:on,Zn=_A(Zn^An,on^Bn,32),Fn=on=bn,Vn=un,on=on+Rn|0,on=(un=Zn+wn|0)>>>0>>0?on+1|0:on,Ln=un,un^=Vn,Vn=on,un=_A(un,on^yn,40),on=Vl+(fn=bn)|0,on=Wn+((yn=un+il|0)>>>0>>0?on+1|0:on)|0,on=(Wn=An+yn|0)>>>0>>0?on+1|0:on,An=Fn,Fn=on,yn=_A(Zn^Wn,An^on,48),tl=on=bn,An=on,Zn=_A(Qn^Jn,_n^ll,1),wn=on=bn,Rn=mn,on=on+al|0,on=Pn+((mn=Zn+Sn|0)>>>0>>0?on+1|0:on)|0,Hn=on=(mn=mn+Hn|0)>>>0>>0?on+1|0:on,En=_A(dn^mn,on^En,32),on=(ll=bn)+Rn|0,Rn=cn=En+cn|0,dn=_A(cn^Zn,(dn=wn)^(wn=cn>>>0>>0?on+1|0:on),40),on=El+(Qn=bn)|0,on=Hn+((cn=dn+dl|0)>>>0
                    >>0?on+1|0:on)|0,Jn=cn=cn+mn|0,_n=on=cn>>>0>>0?on+1|0:on,mn=on,on=kn+Nl|0,on=((Zn=Cn+Kn|0)>>>0>>0?on+1|0:on)+mn|0,Hn=on=(mn=cn+Zn|0)>>>0>>0?on+1|0:on,cn=_A(mn^yn,on^An,32),on=(Pn=bn)+Dn|0,An=_A((Zn=cn+Mn|0)^Cn,(on=Zn>>>0>>0?on+1|0:on)^kn,40),Bn=on,on=jn+(Cn=bn)|0,on=Hn+((kn=Pt+An|0)>>>0>>0?on+1|0:on)|0,on=(Hn=mn+kn|0)>>>0>>0?on+1|0:on,mn=Pn,Pn=on,mn=_A(cn^Hn,mn^on,48),on=(on=Bn)+(Bn=bn)|0,cn=(Zn=mn+Zn|0)^An,An=on=Zn>>>0>>0?on+1|0:on,Cn=on=_A(cn,on^Cn,1),kn=cn=bn,el=hn,qn=Gn,Gn=dn,dn=_A(En^Jn,_n^ll,48),on=(En=bn)+wn|0,wn=cn=dn+Rn|0,Rn=on=cn>>>0>>0?on+1|0:on,Gn=_A(cn^Gn,on^Qn,1),on=(Qn=bn)+Wl|0,on=Fn+((cn=Gn+ol|0)>>>0>>0?on+1|0:on)|0,Wn=on=(hn=cn+Wn|0)>>>0>>0?on+1|0:on,cn=_A(hn^qn,on^Xn,32),on=(Fn=bn)+Nn|0,Xn=on=(Nn=cn+el|0)>>>0>>0?on+1|0:on,Gn=_A(Gn^Nn,on^Qn,40),on=rn+(ll=bn)|0,Qn=Gn,on=Wn+((Gn=en+Gn|0)>>>0>>0?on+1|0:on)|0,Wn=Gn+hn|0,Gn=Fn,Fn=on=Wn>>>0>>0?on+1|0:on,Gn=_A(cn^Wn,Gn^on,48),on=(on=Xn)+(Xn=bn)|0,Jn=cn=Gn+Nn|0,_n=on=cn>>>0>>0?on+1|0:on,hn=pn,on=Vn+tl|0,pn=on=(cn=yn+Ln|0)>>>0>>0?on+1|0:on,un=_A(cn^un,on^fn,1),on=(yn=bn)+Gl|0,on=Yn+((Nn=un+nl|0)>>>0>>0?on+1|0:on)|0,gn=on=(Nn=Nn+gn|0)>>>0>>0?on+1|0:on,hn=_A(hn^Nn,on^Tn,32),Yn=on=bn,Vn=un,on=on+Rn|0,on=(un=hn+wn|0)>>>0>>0?on+1|0:on,Ln=un,un^=Vn,Vn=on,un=_A(un,on^yn,40),on=vl+(fn=bn)|0,on=gn+((yn=un+rl|0)>>>0>>0?on+1|0:on)|0,wn=Yn,Yn=on=(gn=Nn+yn|0)>>>0>>0?on+1|0:on,yn=_A(hn^gn,wn^on,48),tl=on=bn,Nn=on,hn=_A(Mn^xn,Dn^$n,1),wn=on=bn,Rn=pn,on=on+yl|0,on=On+((pn=hn+ml|0)>>>0>>0?on+1|0:on)|0,vn=on=(pn=pn+vn|0)>>>0>>0?on+1|0:on,En=_A(dn^pn,on^En,32),on=($n=bn)+Rn|0,Rn=cn=En+cn|0,dn=_A(cn^hn,(dn=wn)^(wn=cn>>>0>>0?on+1|0:on),40),on=ul+(xn=bn)|0,on=vn+((cn=dn+zn|0)>>>0>>0?on+1|0:on)|0,Mn=cn=cn+pn|0,Dn=on=cn>>>0>>0?on+1|0:on,pn=on,on=kn+El|0,on=((hn=Cn+dl|0)>>>0
                    >>0?on+1|0:on)+pn|0,vn=on=(pn=cn+hn|0)>>>0>>0?on+1|0:on,cn=_A(pn^yn,on^Nn,32),on=(On=bn)+_n|0,Nn=_A((hn=cn+Jn|0)^Cn,(on=hn>>>0>>0?on+1|0:on)^kn,40),Tn=on,on=bl+(Cn=bn)|0,on=vn+((kn=Nn+pl|0)>>>0>>0?on+1|0:on)|0,on=(vn=pn+kn|0)>>>0>>0?on+1|0:on,pn=On,On=on,pn=_A(cn^vn,pn^on,48),on=(on=Tn)+(Tn=bn)|0,cn=(hn=pn+hn|0)^Nn,Nn=on=hn>>>0>>0?on+1|0:on,Cn=on=_A(cn,on^Cn,1),kn=cn=bn,el=Zn,qn=Gn,Gn=dn,dn=_A(En^Mn,Dn^$n,48),on=(En=bn)+wn|0,wn=cn=dn+Rn|0,Rn=on=cn>>>0>>0?on+1|0:on,Gn=_A(cn^Gn,on^xn,1),on=(xn=bn)+Yl|0,on=Yn+((cn=Gn+Il|0)>>>0>>0?on+1|0:on)|0,gn=on=(Zn=cn+gn|0)>>>0>>0?on+1|0:on,cn=_A(Zn^qn,on^Xn,32),on=(Yn=bn)+An|0,Xn=on=(An=cn+el|0)>>>0>>0?on+1|0:on,Gn=_A(Gn^An,on^xn,40),on=nn+($n=bn)|0,xn=Gn,on=gn+((Gn=Al+Gn|0)>>>0>>0?on+1|0:on)|0,gn=Gn+Zn|0,Gn=Yn,Yn=on=gn>>>0>>0?on+1|0:on,Gn=_A(cn^gn,Gn^on,48),on=(on=Xn)+(Xn=bn)|0,Mn=cn=Gn+An|0,Dn=on=cn>>>0>>0?on+1|0:on,Zn=mn,on=Vn+tl|0,mn=on=(cn=yn+Ln|0)>>>0>>0?on+1|0:on,un=_A(cn^un,on^fn,1),on=vl+(yn=bn)|0,on=Fn+((An=un+rl|0)>>>0>>0?on+1|0:on)|0,Wn=on=(An=An+Wn|0)>>>0>>0?on+1|0:on,Zn=_A(Zn^An,on^Bn,32),Fn=on=bn,Vn=un,on=on+Rn|0,on=(un=Zn+wn|0)>>>0>>0?on+1|0:on,Ln=un,un^=Vn,Vn=on,un=_A(un,on^yn,40),on=Un+(fn=bn)|0,on=Wn+((yn=un+cl|0)>>>0>>0?on+1|0:on)|0,on=(Wn=An+yn|0)>>>0>>0?on+1|0:on,An=Fn,Fn=on,yn=_A(Zn^Wn,An^on,48),tl=on=bn,An=on,Zn=_A(Qn^Jn,_n^ll,1),wn=on=bn,Rn=mn,on=on+Vl|0,on=Pn+((mn=Zn+il|0)>>>0>>0?on+1|0:on)|0,Hn=on=(mn=mn+Hn|0)>>>0>>0?on+1|0:on,En=_A(dn^mn,on^En,32),on=(ll=bn)+Rn|0,Rn=cn=En+cn|0,dn=_A(cn^Zn,(dn=wn)^(wn=cn>>>0>>0?on+1|0:on),40),on=yl+(Qn=bn)|0,on=Hn+((cn=dn+ml|0)>>>0>>0?on+1|0:on)|0,Jn=cn=cn+mn|0,_n=on=cn>>>0>>0?on+1|0:on,mn=on,on=kn+Zl|0,on=((Zn=Cn+sl|0)>>>0>>0?on+1|0:on)+mn|0,Hn=on=(mn=cn+Zn|0)>>>0>>0?on+1|0:on,cn=_A(mn^yn,on^An,32),on=(Pn=bn)+Dn|0,An=_A((Zn=cn+Mn|0)^Cn,(on=Zn>>>0>>0?on+1|0:on)^kn,40),Bn=on,on=rn+(Cn=bn)|0,on=Hn+((kn=An+en|0)>>>0>>0?on+1|0:on)|0,on=(Hn=mn+kn|0)>>>0>>0?on+1|0:on,mn=Pn,Pn=on,mn=_A(cn^Hn,mn^on,48),on=(on=Bn)+(Bn=bn)|0,cn=(Zn=mn+Zn|0)^An,An=on=Zn>>>0>>0?on+1|0:on,Cn=on=_A(cn,on^Cn,1),kn=cn=bn,el=hn,qn=Gn,Gn=dn,dn=_A(En^Jn,_n^ll,48),on=(En=bn)+wn|0,wn=cn=dn+Rn|0,Rn=on=cn>>>0>>0?on+1|0:on,Gn=_A(cn^Gn,on^Qn,1),on=(Jn=bn)+al|0,on=Fn+((cn=Gn+Sn|0)>>>0>>0?on+1|0:on)|0,Wn=on=(hn=cn+Wn|0)>>>0>>0?on+1|0:on,cn=_A(hn^qn,on^Xn,32),on=(Fn=bn)+Nn|0,Xn=Nn=cn+el|0,Qn=on=Nn>>>0>>0?on+1|0:on,Gn=_A(Gn^Nn,on^Jn,40),on=Nl+(el=bn)|0,Jn=Gn,on=Wn+((Gn=Kn+Gn|0)>>>0>>0?on+1|0:on)|0,Nn=Gn+hn|0,Gn=Fn,Fn=on=Nn>>>0>>0?on+1|0:on,Gn=_A(cn^Nn,Gn^on,48),on=(on=Qn)+(Qn=bn)|0,Xn=cn=Gn+Xn|0,_n=on=cn>>>0>>0?on+1|0:on,hn=pn,on=Vn+tl|0,pn=on=(cn=yn+Ln|0)>>>0>>0?on+1|0:on,un=_A(cn^un,on^fn,1),on=(yn=bn)+jn|0,on=Yn+((Wn=Pt+un|0)>>>0>>0?on+1|0:on)|0,gn=on=(Wn=Wn+gn|0)>>>0>>0?on+1|0:on,Yn=hn=_A(hn^Wn,on^Tn,32),Vn=on=bn,Ln=un,on=on+Rn|0,on=(un=hn+wn|0)>>>0>>0?on+1|0:on,fn=un,un^=Ln,Ln=on,un=_A(un,on^yn,40),on=Wl+(wn=bn)|0,on=gn+((hn=un+ol|0)>>>0
                      >>0?on+1|0:on)|0,Rn=(hn=hn+Wn|0)^Yn,Yn=on=hn>>>0>>0?on+1|0:on,Wn=_A(Rn,on^Vn,48),Tn=on=bn,yn=on,Vn=gn=_A(Mn^xn,Dn^$n,1),Rn=on=bn,xn=pn,on=on+ul|0,on=On+((pn=gn+zn|0)>>>0>>0?on+1|0:on)|0,on=(pn=pn+vn|0)>>>0>>0?on+1|0:on,vn=En,En=on,gn=_A(dn^pn,vn^on,32),on=(qn=bn)+xn|0,vn=cn=gn+cn|0,dn=_A(dn=cn^Vn,(Vn=cn>>>0>>0?on+1|0:on)^Rn,40),on=Gl+(Rn=bn)|0,on=En+((cn=dn+nl|0)>>>0>>0?on+1|0:on)|0,En=cn=cn+pn|0,xn=on=cn>>>0>>0?on+1|0:on,pn=on,on=kn+Nl|0,on=((On=Kn)>>>0>(Kn=Cn+Kn|0)>>>0?on+1|0:on)+pn|0,Nl=on=(cn=cn+Kn|0)>>>0>>0?on+1|0:on,Kn=_A(cn^Wn,on^yn,32),on=(Mn=bn)+_n|0,yn=_A((pn=Xn+Kn|0)^Cn,(on=pn>>>0>>0?on+1|0:on)^kn,40),On=on,on=Wl+(Dn=bn)|0,on=Nl+((Cn=ol)>>>0>(ol=yn+ol|0)>>>0?on+1|0:on)|0,on=(ol=cn+ol|0)>>>0>>0?on+1|0:on,cn=Kn^ol,Kn=on,Wl=_A(cn,on^Mn,48);on=(Nl=bn)+On|0,pn=on=(cn=pn+Wl|0)>>>0>>0?on+1|0:on,on=_A(cn^yn,on^Dn,1),yn=bn,Mn=on,Dn=Zn,Zn=nl,On=Gl,Gl=_A(gn^En,xn^qn,48),on=(gn=bn)+Vn|0,Vn=Zn,vn=on=(nl=vn+Gl|0)>>>0>>0?on+1|0:on,Zn=_A(dn^(En=nl),on^Rn,1),on=(Rn=bn)+On|0,on=Yn+(Zn>>>0>(nl=Vn+Zn|0)>>>0?on+1|0:on)|0,dn=on=(nl=hn+nl|0)>>>0>>0?on+1|0:on,Gn=_A(Gn^nl,on^Qn,32),on=(on=An)+(An=bn)|0,Yn=hn=Gn+Dn|0,Vn=on=hn>>>0>>0?on+1|0:on,hn=_A(hn^Zn,on^Rn,40),on=(Rn=bn)+Yl|0,on=(hn>>>0>(Il=hn+Il|0)>>>0?on+1|0:on)+dn|0,dn=on=(dn=Il)>>>0>(Il=nl+Il|0)>>>0?on+1|0:on,Gn=_A(Gn^Il,on^An,48),on=(Zn=bn)+Vn|0,An=nl=Gn+Yn|0,Yl=on=nl>>>0>>0?on+1|0:on,Yn=Pt,Vn=jn,on=Ln+Tn|0,nl=on=(Pt=Wn+fn|0)>>>0>>0?on+1|0:on,jn=_A(Pt^un,on^wn,1),on=(Wn=bn)+Vn|0,on=Fn+((un=Yn+jn|0)>>>0>>0?on+1|0:on)|0,mn=_A((un=un+Nn|0)^mn,(on=un>>>0>>0?on+1|0:on)^Bn,32),Yn=on,Fn=sl,sl=jn,on=(Nn=bn)+vn|0,vn=Wn,Wn=on=(jn=mn+En|0)>>>0>>0?on+1|0:on,sl=_A(jn^sl,vn^on,40),on=(En=bn)+Zl|0,on=((Zl=Fn+sl|0)>>>0>>0?on+1|0:on)+Yn|0,Yn=Zl,un=mn^(Zl=un+Zl|0),mn=on=Yn>>>0>Zl>>>0?on+1|0:on,on=_A(un,on^Nn,48),Ln=un=bn,Nn=on,vn=Sn,Yn=al,Sn=_A(Xn^Jn,_n^el,1),Vn=on=bn,on=on+El|0,on=Pn+((Sn=(Fn=Sn)+dl|0)>>>0
                      >>0?on+1|0:on)|0,dl=on=(Sn=Hn+Sn|0)>>>0>>0?on+1|0:on,al=_A(Sn^Gl,on^gn,32),on=(Hn=bn)+nl|0,nl=Pt=al+Pt|0,Gl=_A(Pt^Fn,(gn=Pt>>>0>>0?on+1|0:on)^Vn,40),on=(on=Yn)+(Yn=bn)|0,on=dl+((Pt=Gl+vn|0)>>>0>>0?on+1|0:on)|0,dl=Pt=Pt+Sn|0,El=on=Pt>>>0>>0?on+1|0:on,Sn=on,on=yn+vl|0,on=((Fn=rl)>>>0>(rl=Mn+rl|0)>>>0?on+1|0:on)+Sn|0,vl=on=(Sn=Pt+rl|0)>>>0>>0?on+1|0:on,rl=_A(Nn^Sn,on^un,32),on=(Fn=bn)+Yl|0,un=Pt=rl+An|0,Pt=_A(Pt^Mn,(vn=yn)^(yn=Pt>>>0>>0?on+1|0:on),40),on=Vl+(Vn=bn)|0,Vl=Pt,on=vl+((Pt=il+Pt|0)>>>0>>0?on+1|0:on)|0,on=(Pt=Pt+Sn|0)>>>0>>0?on+1|0:on,vl=Pt,fn=(an[Wt+8|0]|an[Wt+9|0]<<8|an[Wt+10|0]<<16|an[Wt+11|0]<<24)^Pt,vn=on,wn=on^(an[Wt+12|0]|an[Wt+13|0]<<8|an[Wt+14|0]<<16|an[Wt+15|0]<<24),Sn=_A(al^dl,Hn^El,48),on=(dl=bn)+gn|0,gn=Pt=Sn+nl|0,El=on=Pt>>>0>>0?on+1|0:on,al=pl,on=Wn+Ln|0,pl=on=(Pt=Nn+jn|0)>>>0>>0?on+1|0:on,sl=_A(Pt^sl,on^En,1),on=(Nn=bn)+bl|0,on=((al=sl+al|0)>>>0>>0?on+1|0:on)+dn|0,al=on=(bl=al+Il|0)>>>0>>0?on+1|0:on,nl=_A(bl^Wl,on^Nl,32),on=(jn=bn)+El|0,Il=on=(il=nl+gn|0)>>>0>>0?on+1|0:on,Wl=nl,nl=_A(sl^il,on^Nn,40),on=(dn=bn)+yl|0,on=(nl>>>0>(sl=nl+ml|0)>>>0?on+1|0:on)+al|0,Wn=jn,jn=on=(bl=sl+bl|0)>>>0>>0?on+1|0:on,sl=_A(Wl^(ml=bl),Wn^on,48),on=(Nn=bn)+Il|0,on=(al=sl+il|0)>>>0>>0?on+1|0:on,il=al,al^=fn,tn[Wt+8|0]=al,tn[Wt+9|0]=al>>>8,tn[Wt+10|0]=al>>>16,tn[Wt+11|0]=al>>>24,Il=on,on^=wn,tn[Wt+12|0]=on,tn[Wt+13|0]=on>>>8,tn[Wt+14|0]=on>>>16,tn[Wt+15|0]=on>>>24,bl=Pt,al=pl,Pt=Sn,Sn=_A(hn^An,Rn^Yl,1),on=(yl=bn)+rn|0,on=(Sn>>>0>(pl=Sn+en|0)>>>0?on+1|0:on)+Kn|0,ol=on=(An=pl)>>>0>(pl=ol+pl|0)>>>0?on+1|0:on,Pt=_A(Pt^pl,on^dl,32),on=(on=al)+(al=bn)|0,dl=on=(bl=Pt+bl|0)>>>0>>0?on+1|0:on,Wl=Pt,bl=_A(Sn^(Kn=bl),on^yl,40),on=(hn=bn)+nn|0,on=ol+((Pt=bl+Al|0)>>>0>>0?on+1|0:on)|0,on=(Pt=Pt+pl|0)>>>0>>0?on+1|0:on,ol=Pt,Pt^=Wl,Wl=on,pl=_A(Pt,on^al,48),on=(An=bn)+dl|0,Kn=Pt=pl+Kn|0,dl=Pt>>>0>>0?on+1|0:on,Gl=Pt=_A(gn^Gl,Yn^El,1),yl=on=bn,on=on+Un|0,on=mn+((Pt=Pt+cl|0)>>>0>>0?on+1|0:on)|0,Un=on=(Sn=Pt+Zl|0)>>>0>>0?on+1|0:on,Pt=(al=_A(Gn^Sn,on^Zn,32))+cn|0,on=(cn=bn)+pn|0,Zl=Pt,Pt=(cl=_A(mn=Pt^Gl,(Gl=Pt>>>0>>0?on+1|0:on)^yl,40))+zn|0,on=(zn=bn)+ul|0,on=Un+(Pt>>>0>>0?on+1|0:on)|0,on=(Un=Pt+Sn|0)>>>0>>0?on+1|0:on,Sn=Un^wl^Kn,tn[0|(Pt=Wt)]=Sn,tn[Pt+1|0]=Sn>>>8,tn[Pt+2|0]=Sn>>>16,tn[Pt+3|0]=Sn>>>24,Sn=on^In^dl,tn[Pt+4|0]=Sn,tn[Pt+5|0]=Sn>>>8,tn[Pt+6|0]=Sn>>>16,tn[Pt+7|0]=Sn>>>24,Sn=(al=_A(Un^al,on^cn,48))+Zl|0,on=(Zl=bn)+Gl|0,on=(Gl=Sn>>>0>>0?on+1|0:on)^(an[Pt+20|0]|an[Pt+21|0]<<8|an[Pt+22|0]<<16|an[Pt+23|0]<<24)^Wl,Un=(an[Pt+16|0]|an[Pt+17|0]<<8|an[Pt+18|0]<<16|an[Pt+19|0]<<24)^ol^Sn,tn[Pt+16|0]=Un,tn[Pt+17|0]=Un>>>8,tn[Pt+18|0]=Un>>>16,tn[Pt+19|0]=Un>>>24,tn[Pt+20|0]=on,tn[Pt+21|0]=on>>>8,tn[Pt+22|0]=on>>>16,tn[Pt+23|0]=on>>>24,Pt=_A(rl^vl,vn^Fn,48),Un=bn,ol=an[Wt+36|0]|an[Wt+37|0]<<8|an[Wt+38|0]<<16|an[Wt+39|0]<<24,on=(an[Wt+32|0]|an[Wt+33|0]<<8|an[Wt+34|0]<<16|an[Wt+35|0]<<24)^_A(nl^il,dn^Il,1)^Pt,tn[Wt+32|0]=on,tn[Wt+33|0]=on>>>8,tn[Wt+34|0]=on>>>16,tn[Wt+35|0]=on>>>24,on=bn^ol^Un,tn[Wt+36|0]=on,tn[Wt+37|0]=on>>>8,tn[Wt+38|0]=on>>>16,tn[Wt+39|0]=on>>>24,on=yn+Un|0,on=(ol=Pt+un|0)>>>0>>0?on+1|0:on,nl=(an[(Pt=Wt)+28|0]|an[Pt+29|0]<<8|an[Pt+30|0]<<16|an[Pt+31|0]<<24)^jn^on,Un=(an[Pt+24|0]|an[Pt+25|0]<<8|an[Pt+26|0]<<16|an[Pt+27|0]<<24)^ml^ol,tn[Pt+24|0]=Un,tn[Pt+25|0]=Un>>>8,tn[Pt+26|0]=Un>>>16,tn[Pt+27|0]=Un>>>24,tn[Pt+28|0]=nl,tn[Pt+29|0]=nl>>>8,tn[Pt+30|0]=nl>>>16,tn[Pt+31|0]=nl>>>24,nl=an[Pt+44|0]|an[Pt+45|0]<<8|an[Pt+46|0]<<16|an[Pt+47|0]<<24,Pt=pl^(an[Pt+40|0]|an[Pt+41|0]<<8|an[Pt+42|0]<<16|an[Pt+43|0]<<24)^_A(Sn^cl,zn^Gl,1),tn[Wt+40|0]=Pt,tn[Wt+41|0]=Pt>>>8,tn[Wt+42|0]=Pt>>>16,tn[Wt+43|0]=Pt>>>24,Pt=An^bn^nl,tn[Wt+44|0]=Pt,tn[Wt+45|0]=Pt>>>8,tn[Wt+46|0]=Pt>>>16,tn[Wt+47|0]=Pt>>>24,Sn=an[Wt+60|0]|an[Wt+61|0]<<8|an[Wt+62|0]<<16|an[Wt+63|0]<<24,Pt=al^(an[Wt+56|0]|an[Wt+57|0]<<8|an[Wt+58|0]<<16|an[Wt+59|0]<<24)^_A(Kn^bl,hn^dl,1),tn[Wt+56|0]=Pt,tn[Wt+57|0]=Pt>>>8,tn[Wt+58|0]=Pt>>>16,tn[Wt+59|0]=Pt>>>24,Pt=Zl^bn^Sn,tn[Wt+60|0]=Pt,tn[Wt+61|0]=Pt>>>8,tn[Wt+62|0]=Pt>>>16,tn[Wt+63|0]=Pt>>>24,Sn=an[Wt+52|0]|an[Wt+53|0]<<8|an[Wt+54|0]<<16|an[Wt+55|0]<<24,Pt=sl^(an[Wt+48|0]|an[Wt+49|0]<<8|an[Wt+50|0]<<16|an[Wt+51|0]<<24)^_A(ol^Vl,on^Vn,1),tn[Wt+48|0]=Pt,tn[Wt+49|0]=Pt>>>8,tn[Wt+50|0]=Pt>>>16,tn[Wt+51|0]=Pt>>>24,Pt=Nn^bn^Sn,tn[Wt+52|0]=Pt,tn[Wt+53|0]=Pt>>>8,tn[Wt+54|0]=Pt>>>16,tn[Wt+55|0]=Pt>>>24}function k(Wt,Pt,en,rn,In,sn,on){var cn,dn,un,pn,Gn,hn,Zn,An,Wn,Nn,gn,yn,vn,Yn,En,Vn,Rn,wn,Fn,Qn,fn,Hn,Cn,Xn,kn,Jn,Ln,Bn,xn,On,Tn,Un,Mn,zn,Sn,jn,Dn,_n,Kn,Pn,qn,$n,el,tl,nl,ll,al,rl,Il=0,sl=0,ol=0,cl=0,il=0,dl=0,ul=0,pl=0,ml=0,bl=0,Gl=0,hl=0,Zl=0,Al=0,Wl=0,Nl=0,gl=0,yl=0,vl=0,Yl=0,El=0,Vl=0,Rl=0,wl=0,Fl=0,Ql=0,fl=0,Hl=0,Cl=0,Xl=0,kl=0,Jl=0,Ll=0,Bl=0,xl=0,Ol=0,Tl=0,Ul=0,Ml=0,zl=0,Sl=0,jl=0,Dl=0,_l=0,Kl=0,Pl=0;return mn=un=mn-560|0,MA(ol=un+352|0),on&&W(ol,35120,34,0),FA(un+288|0,sn,32,0),W(dl=un+352|0,un+320|0,32,0),W(dl,en,rn,In),v(dl,pl=un+224|0),bl=an[(sl=sn)+32|0]|an[sl+33|0]<<8|an[sl+34|0]<<16|an[sl+35|0]<<24,Gl=an[sl+36|0]|an[sl+37|0]<<8|an[sl+38|0]<<16|an[sl+39|0]<<24,cl=an[sl+40|0]|an[sl+41|0]<<8|an[sl+42|0]<<16|an[sl+43|0]<<24,Il=an[sl+44|0]|an[sl+45|0]<<8|an[sl+46|0]<<16|an[sl+47|0]<<24,ol=an[sl+48|0]|an[sl+49|0]<<8|an[sl+50|0]<<16|an[sl+51|0]<<24,sn=an[sl+52|0]|an[sl+53|0]<<8|an[sl+54|0]<<16|an[sl+55|0]<<24,il=an[sl+60|0]|an[sl+61|0]<<8|an[sl+62|0]<<16|an[sl+63|0]<<24,sl=an[sl+56|0]|an[sl+57|0]<<8|an[sl+58|0]<<16|an[sl+59|0]<<24,tn[Wt+56|0]=sl,tn[Wt+57|0]=sl>>>8,tn[Wt+58|0]=sl>>>16,tn[Wt+59|0]=sl>>>24,tn[Wt+60|0]=il,tn[Wt+61|0]=il>>>8,tn[Wt+62|0]=il>>>16,tn[Wt+63|0]=il>>>24,tn[Wt+48|0]=ol,tn[Wt+49|0]=ol>>>8,tn[Wt+50|0]=ol>>>16,tn[Wt+51|0]=ol>>>24,tn[Wt+52|0]=sn,tn[Wt+53|0]=sn>>>8,tn[Wt+54|0]=sn>>>16,tn[Wt+55|0]=sn>>>24,tn[Wt+40|0]=cl,tn[Wt+41|0]=cl>>>8,tn[Wt+42|0]=cl>>>16,tn[Wt+43|0]=cl>>>24,tn[Wt+44|0]=Il,tn[Wt+45|0]=Il>>>8,tn[Wt+46|0]=Il>>>16,tn[Wt+47|0]=Il>>>24,tn[0|(sn=Wt+32|0)]=bl,tn[sn+1|0]=bl>>>8,tn[sn+2|0]=bl>>>16,tn[sn+3|0]=bl>>>24,tn[sn+4|0]=Gl,tn[sn+5|0]=Gl>>>8,tn[sn+6|0]=Gl>>>16,tn[sn+7|0]=Gl>>>24,s(pl),Z(un,pl),mA(Wt,un),MA(dl),on&&W(dl,35120,34,0),W(on=un+352|0,Wt,64,0),W(on,en,rn,In),v(on,ul=un+160|0),s(ul),tn[un+288|0]=248&an[un+288|0],tn[un+319|0]=63&an[un+319|0]|64,en=an[23+(Wt=dn=un+288|0)|0],cl=PA(pn=an[Wt+21|0]|an[Wt+22|0]<<8|en<<16&2031616,0,Gn=(an[ul+28|0]|an[ul+29|0]<<8|an[ul+30|0]<<16|an[ul+31|0]<<24)>>>7|0,0),ol=bn,en=(Wt=an[ul+27|0])>>>24|0,In=Wt<<8|(Il=an[ul+23|0]|an[ul+24|0]<<8|an[ul+25|0]<<16|an[ul+26|0]<<24)>>>24,Wt=PA(hn=2097151&((3&(Gl=(Wt=(rn=an[ul+28|0])>>>16|0)|en))<<30|(en=(rn<<=16)|In)>>>2),0,Zn=(on=an[dn+23|0]|an[dn+24|0]<<8|an[dn+25|0]<<16|an[dn+26|0]<<24)>>>5&2097151,0),en=bn+ol|0,rn=Wt>>>0>(In=Wt+cl|0)>>>0?en+1|0:en,Wt=PA(An=(en=an[ul+23|0])<<16&2031616|an[ul+21|0]|an[ul+22|0]<<8,0,Wn=(an[dn+28|0]|an[dn+29|0]<<8|an[dn+30|0]<<16|an[dn+31|0]<<24)>>>7|0,0),rn=bn+rn|0,ol=en=Wt+In|0,In=Wt>>>0>en>>>0?rn+1|0:rn,rn=(Wt=an[dn+27|0])>>>24|0,on=Wt<<8|on>>>24,Wt=PA(Nn=2097151&((3&(rn|=en=(Wt=an[dn+28|0])>>>16|0))<<30|(en=(Wt<<=16)|on)>>>2),0,gn=Il>>>5&2097151,0),en=bn+In|0,sl=rn=Wt+ol|0,In=Wt>>>0>rn>>>0?en+1|0:en,Il=PA(Zn,0,gn,0),ol=bn,en=(Wt=an[dn+19|0])>>>24|0,on=Wt<<8|(yl=an[dn+15|0]|an[dn+16|0]<<8|an[dn+17|0]<<16|an[dn+18|0]<<24)>>>24,rn=en,en=PA(yn=(7&(rn|=en=(Wt=an[dn+20|0])>>>16|0))<<29|(en=(Wt<<=16)|on)>>>3,Gl=rn>>>3|0,Gn,0),Wt=bn+ol|0,Wt=en>>>0>(rn=en+Il|0)>>>0?Wt+1|0:Wt,on=(en=PA(pn,0,hn,0))+rn|0,rn=bn+Wt|0,en=en>>>0>(Il=on)>>>0?rn+1|0:rn,rn=(Wt=an[ul+19|0])>>>24|0,ol=Wt<<8|(Wl=an[ul+15|0]|an[ul+16|0]<<8|an[ul+17|0]<<16|an[ul+18|0]<<24)>>>24,Wt=PA(vn=(7&(cl=(Wt=(on=an[ul+20|0])>>>16|0)|rn))<<29|(rn=(on<<=16)|ol)>>>3,Yn=cl>>>3|0,Wn,0),en=bn+en|0,en=Wt>>>0>(rn=Wt+Il|0)>>>0?en+1|0:en,Wt=PA(An,0,Nn,0),en=bn+en|0,bl=en=Wt>>>0>(pl=Wt+rn|0)>>>0?en+1|0:en,hl=Wt=en-((pl>>>0<4293918720)-1|0)|0,rn=(en=Wt>>>21|0)+In|0,Il=rn=(Wt=(2097151&Wt)<<11|(cl=pl- -1048576|0)>>>21)>>>0>(sl=Wt+sl|0)>>>0?rn+1|0:rn,Al=Wt=rn-((sl>>>0<4293918720)-1|0)|0,il=(2097151&Wt)<<11|(ol=sl- -1048576|0)>>>21,on=Wt>>>21|0,Wt=PA(Wn,0,gn,0),en=bn,rn=Wt,Wt=PA(Gn,0,Zn,0),en=bn+en|0,en=Wt>>>0>(rn=rn+Wt|0)>>>0?en+1|0:en,Zl=(Wt=rn)+(rn=PA(hn,0,Nn,0))|0,Wt=bn+en|0,Wt=rn>>>0>Zl>>>0?Wt+1|0:Wt,dl=Zl-(en=-2097152&(rn=Zl- -1048576|0))|0,en=(Wt-((131071&(In=Wt-((Zl>>>0<4293918720)-1|0)|0))+(en>>>0>Zl>>>0)|0)|0)+on|0,xn=en=(Wt=il+dl|0)>>>0
                      >>0?en+1|0:en,On=Wt,dl=PA(Wt,en,470296,0),il=bn,en=PA(Gn,0,Nn,0),Wt=bn,on=en,en=PA(hn,0,Wn,0),Wt=bn+Wt|0,en=en>>>0>(on=on+en|0)>>>0?Wt+1|0:Wt,Wt=In>>>21|0,In=(2097151&In)<<11|rn>>>21,rn=Wt+en|0,Vl=In=(rn=In>>>0>(on=In+on|0)>>>0?rn+1|0:rn)-((on>>>0<4293918720)-1|0)|0,Wt=on-(en=-2097152&(El=on- -1048576|0))|0,Tn=on=rn-((131071&In)+(en>>>0>on>>>0)|0)|0,Un=en=sl-(rn=-2097152&ol)|0,Mn=In=Il-((rn>>>0>sl>>>0)+Al|0)|0,zn=Wt,rn=PA(Wt,on,666643,0),Wt=bn+il|0,Wt=rn>>>0>(on=rn+dl|0)>>>0?Wt+1|0:Wt,rn=PA(en,In,654183,0),en=bn+Wt|0,ml=In=rn+on|0,ol=rn>>>0>In>>>0?en+1|0:en,Zl=pl-(Wt=-2097152&cl)|0,hl=bl-((Wt>>>0>pl>>>0)+hl|0)|0,en=PA(hn,0,yn,Gl),rn=bn,In=(Wt=en)+(en=PA(En=yl>>>6&2097151,0,Gn,0))|0,Wt=bn+rn|0,Wt=en>>>0>In>>>0?Wt+1|0:Wt,en=PA(Zn,0,An,0),rn=bn+Wt|0,rn=en>>>0>(In=en+In|0)>>>0?rn+1|0:rn,Wt=PA(pn,0,gn,0),en=bn+rn|0,en=Wt>>>0>(In=Wt+In|0)>>>0?en+1|0:en,rn=PA(Wn,0,Vn=Wl>>>6&2097151,0),Wt=bn+en|0,Wt=rn>>>0>(In=rn+In|0)>>>0?Wt+1|0:Wt,rn=PA(Nn,0,vn,Yn),en=bn+Wt|0,pl=In=rn+In|0,on=rn>>>0>In>>>0?en+1|0:en,en=(Wt=an[dn+14|0])>>>24|0,In=Wt<<8|(bl=an[dn+10|0]|an[dn+11|0]<<8|an[dn+12|0]<<16|an[dn+13|0]<<24)>>>24,en=PA(Rn=2097151&((1&(en|=Wt=(rn=an[dn+15|0])>>>16|0))<<31|(Wt=(rn<<=16)|In)>>>1),0,Gn,0),Wt=bn,rn=en,en=PA(hn,0,En,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=rn+en|0)>>>0?Wt+1|0:Wt,In=(en=PA(gn,0,yn,Gl))+rn|0,rn=bn+Wt|0,rn=en>>>0>In>>>0?rn+1|0:rn,Wt=PA(Zn,0,vn,Yn),en=bn+rn|0,en=Wt>>>0>(In=Wt+In|0)>>>0?en+1|0:en,Wt=PA(pn,0,An,0),en=bn+en|0,cl=rn=Wt+In|0,In=Wt>>>0>rn>>>0?en+1|0:en,en=(Wt=an[ul+14|0])>>>24|0,Il=Wt<<8|(sl=an[ul+10|0]|an[ul+11|0]<<8|an[ul+12|0]<<16|an[ul+13|0]<<24)>>>24,rn=en,en=(Wt=an[ul+15|0])>>>16|0,en=PA(wn=2097151&((1&(en|=rn))<<31|(Wt=Wt<<16|Il)>>>1),0,Wn,0),Wt=bn+In|0,Wt=en>>>0>(rn=en+cl|0)>>>0?Wt+1|0:Wt,en=PA(Nn,0,Vn,0),Wt=bn+Wt|0,Il=Wt=en>>>0>(cl=en+rn|0)>>>0?Wt+1|0:Wt,Rl=en=Wt-((cl>>>0<4293918720)-1|0)|0,rn=(Wt=en>>>21|0)+on|0,il=rn=(en=(2097151&en)<<11|(dl=cl- -1048576|0)>>>21)>>>0>(Al=en+pl|0)>>>0?rn+1|0:rn,vl=en=rn-((Al>>>0<4293918720)-1|0)|0,Wt=(Wt=en>>>21|0)+hl|0,Sn=Wt=(en=(rn=(2097151&en)<<11|(pl=Al- -1048576|0)>>>21)+Zl|0)>>>0>>0?Wt+1|0:Wt,jn=en,Wt=PA(en,Wt,-997805,-1),en=bn+ol|0,ml=rn=Wt+ml|0,ol=Wt>>>0>rn>>>0?en+1|0:en,Zl=(Ql=an[23+(cn=un+224|0)|0]|an[cn+24|0]<<8|an[cn+25|0]<<16|an[cn+26|0]<<24)>>>5&2097151,rn=PA(Fn=(Wt=an[dn+2|0])<<16&2031616|an[0|dn]|an[dn+1|0]<<8,0,gn,0),en=bn,In=(Wt=PA(An,0,Qn=(on=an[dn+2|0]|an[dn+3|0]<<8|an[dn+4|0]<<16|an[dn+5|0]<<24)>>>5&2097151,0))+rn|0,rn=bn+en|0,rn=Wt>>>0>In>>>0?rn+1|0:rn,Wt=PA(fn=(an[dn+7|0]|an[dn+8|0]<<8|an[dn+9|0]<<16|an[dn+10|0]<<24)>>>7&2097151,0,Vn,0),en=bn+rn|0,en=Wt>>>0>(In=Wt+In|0)>>>0?en+1|0:en,rn=PA(wn,0,Hn=bl>>>4&2097151,0),Wt=bn+en|0,bl=In=rn+In|0,In=rn>>>0>In>>>0?Wt+1|0:Wt,on=(en=an[dn+6|0])<<8|on>>>24,rn=Wt=en>>>24|0,en=(Wt=an[dn+7|0])>>>16|0,en=PA(Cn=2097151&((3&(en|=rn))<<30|(Wt=Wt<<16|on)>>>2),0,vn,Yn),Wt=bn+In|0,Wt=en>>>0>(rn=en+bl|0)>>>0?Wt+1|0:Wt,In=(en=PA(En,0,Xn=(an[ul+7|0]|an[ul+8|0]<<8|an[ul+9|0]<<16|an[ul+10|0]<<24)>>>7&2097151,0))+rn|0,rn=bn+Wt|0,rn=en>>>0>In>>>0?rn+1|0:rn,en=PA(Rn,0,Yl=sl>>>4&2097151,0),Wt=bn+rn|0,on=en>>>0>(In=en+In|0)>>>0?Wt+1|0:Wt,Wt=(en=an[ul+6|0])>>>24|0,bl=en<<8|(sl=an[ul+2|0]|an[ul+3|0]<<8|an[ul+4|0]<<16|an[ul+5|0]<<24)>>>24,en=Wt,Wt=PA(yn,Gl,kn=2097151&((3&(en|=rn=(Wt=an[ul+7|0])>>>16|0))<<30|(Wt=Wt<<16|bl)>>>2),0),en=bn+on|0,en=Wt>>>0>(rn=Wt+In|0)>>>0?en+1|0:en,In=rn,rn=PA(Jn=(Wt=an[ul+2|0])<<16&2031616|an[0|ul]|an[ul+1|0]<<8,0,Zn,0),Wt=bn+en|0,Wt=rn>>>0>(In=In+rn|0)>>>0?Wt+1|0:Wt,en=PA(pn,0,Ln=sl>>>5&2097151,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=en+In|0)>>>0?Wt+1|0:Wt,en=rn,bl=rn=rn+Zl|0,on=en=en>>>0>rn>>>0?Wt+1|0:Wt,In=an[cn+21|0]|an[cn+22|0]<<8,Wt=PA(An,0,Fn,0),en=bn,sl=(rn=Wt)+(Wt=PA(vn,Yn,Qn,0))|0,rn=bn+en|0,rn=Wt>>>0>sl>>>0?rn+1|0:rn,Wt=PA(wn,0,fn,0),en=bn+rn|0,en=Wt>>>0>(sl=Wt+sl|0)>>>0?en+1|0:en,Wt=PA(Hn,0,Yl,0),en=bn+en|0,en=Wt>>>0>(rn=Wt+sl|0)>>>0?en+1|0:en,sl=(Wt=rn)+(rn=PA(Vn,0,Cn,0))|0,Wt=bn+en|0,Wt=rn>>>0>sl>>>0?Wt+1|0:Wt,en=PA(En,0,kn,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=en+sl|0)>>>0?Wt+1|0:Wt,sl=(en=PA(Rn,0,Xn,0))+rn|0,rn=bn+Wt|0,rn=en>>>0>sl>>>0?rn+1|0:rn,Wt=PA(yn,Gl,Ln,0),en=bn+rn|0,en=Wt>>>0>(sl=Wt+sl|0)>>>0?en+1|0:en,Wt=PA(pn,0,Jn,0),en=bn+en|0,Wt=Wt>>>0>(rn=Wt+sl|0)>>>0?en+1|0:en,en=(en=rn)>>>0>(rn=rn+In|0)>>>0?Wt+1|0:Wt,In=rn,rn=(Wt=an[cn+23|0])<<16&2031616,Wt=en,rn=Wt=rn>>>0>(In=In+rn|0)>>>0?Wt+1|0:Wt,ul=Wt=Wt-((In>>>0<4293918720)-1|0)|0,en=(en=Wt>>>21|0)+on|0,Wt=(en=(on=bl=(Wt=(2097151&Wt)<<11|(sl=In- -1048576|0)>>>21)+bl|0)>>>0>>0?en+1|0:en)+ol|0,Wt=(ol=on+ml|0)>>>0>>0?Wt+1|0:Wt,Wl=on- -1048576|0,Nl=on=en-((on>>>0<4293918720)-1|0)|0,gl=ol-(en=-2097152&Wl)|0,wl=Wt-((en>>>0>ol>>>0)+on|0)|0,bl=In,ol=rn,Wt=PA(Un,Mn,470296,0),en=bn,rn=Wt,Wt=PA(On,xn,666643,0),en=bn+en|0,en=Wt>>>0>(rn=rn+Wt|0)>>>0?en+1|0:en,In=(Wt=rn)+(rn=PA(jn,Sn,654183,0))|0,Wt=bn+en|0,yl=In,on=rn>>>0>In>>>0?Wt+1|0:Wt,en=PA(vn,Yn,Fn,0),Wt=bn,rn=en,en=PA(Vn,0,Qn,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=rn+en|0)>>>0?Wt+1|0:Wt,In=(en=rn)+(rn=PA(fn,0,Yl,0))|0,en=bn+Wt|0,en=rn>>>0>In>>>0?en+1|0:en,Wt=PA(Hn,0,Xn,0),rn=bn+en|0,rn=Wt>>>0>(In=Wt+In|0)>>>0?rn+1|0:rn,Wt=PA(wn,0,Cn,0),en=bn+rn|0,en=Wt>>>0>(In=Wt+In|0)>>>0?en+1|0:en,rn=PA(En,0,Ln,0),Wt=bn+en|0,Wt=rn>>>0>(In=rn+In|0)>>>0?Wt+1|0:Wt,en=PA(Rn,0,kn,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=en+In|0)>>>0?Wt+1|0:Wt,In=(en=rn)+(rn=PA(yn,Gl,Jn,0))|0,en=bn+Wt|0,Zl=In,rn=rn>>>0>In>>>0?en+1|0:en,en=(Wt=an[cn+19|0])>>>24|0,hl=Wt<<8|(ml=an[cn+15|0]|an[cn+16|0]<<8|an[cn+17|0]<<16|an[cn+18|0]<<24)>>>24,rn=((Fl=(Wt=(In=an[cn+20|0])>>>16|0)|en)>>>3|0)+rn|0,Zl=In=(en=(7&Fl)<<29|(en=(In<<=16)|hl)>>>3)+Zl|0,In=en>>>0>In>>>0?rn+1|0:rn,hl=ml>>>6&2097151,Wt=PA(Vn,0,Fn,0),en=bn,rn=Wt,Wt=PA(wn,0,Qn,0),en=bn+en|0,en=Wt>>>0>(rn=rn+Wt|0)>>>0?en+1|0:en,ml=(Wt=rn)+(rn=PA(fn,0,Xn,0))|0,Wt=bn+en|0,Wt=rn>>>0>ml>>>0?Wt+1|0:Wt,rn=PA(Hn,0,kn,0),en=bn+Wt|0,en=rn>>>0>(ml=rn+ml|0)>>>0?en+1|0:en,rn=PA(Cn,0,Yl,0),Wt=bn+en|0,Wt=rn>>>0>(ml=rn+ml|0)>>>0?Wt+1|0:Wt,en=PA(En,0,Jn,0),rn=bn+Wt|0,rn=en>>>0>(ml=en+ml|0)>>>0?rn+1|0:rn,Wt=PA(Rn,0,Ln,0),en=bn+rn|0,Wt=Wt>>>0>(ml=Wt+ml|0)>>>0?en+1|0:en,xl=Wt=(Hl=ml+hl|0)>>>0>>0?Wt+1|0:Wt,jl=Wt=Wt-((Hl>>>0<4293918720)-1|0)|0,rn=(2097151&Wt)<<11|(Ll=Hl- -1048576|0)>>>21,Wt=(Wt>>>21|0)+In|0,Tl=Wt=rn>>>0>(Ol=rn+Zl|0)>>>0?Wt+1|0:Wt,Dl=Wt=Wt-((Ol>>>0<4293918720)-1|0)|0,rn=(2097151&Wt)<<11|(Xl=Ol- -1048576|0)>>>21,Wt=(Wt>>>21|0)+on|0,en=(rn>>>0>(In=rn+yl|0)>>>0?Wt+1|0:Wt)+ol|0,ol=(rn=In+bl|0)-(Wt=-2097152&sl)|0,ul=Wt=(en=rn>>>0>>0?en+1|0:en)-((Wt>>>0>rn>>>0)+ul|0)|0,_l=Wt=Wt-((ol>>>0<4293918720)-1|0)|0,rn=(2097151&Wt)<<11|(kl=ol- -1048576|0)>>>21,Wt=(Wt>>21)+wl|0,In=Wt=rn>>>0>(on=rn+gl|0)>>>0?Wt+1|0:Wt,Sl=Wt=Wt-((on>>>0<4293918720)-1|0)|0,Jl=(2097151&Wt)<<11|(yl=on- -1048576|0)>>>21,bl=Wt>>21,Fl=Al-(Wt=-2097152&pl)|0,vl=il-((Wt>>>0>Al>>>0)+vl|0)|0,Wt=PA(Gn,0,Wn,0),Bl=en=bn,gl=Wt,ml=Wt- -1048576|0,Cl=en=en-((Wt>>>0<4293918720)-1|0)|0,Dn=Wt=en>>>21|0,Wt=PA(Bn=(2097151&en)<<11|ml>>>21,Wt,-683901,-1),en=bn+Il|0,en=Wt>>>0>(rn=Wt+cl|0)>>>0?en+1|0:en,pl=rn-(Wt=-2097152&dl)|0,sl=en-((Wt>>>0>rn>>>0)+Rl|0)|0,en=PA(gn,0,En,0),Wt=bn,rn=en,en=PA(Gn,0,Hn,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=rn+en|0)>>>0?Wt+1|0:Wt,en=PA(hn,0,Rn,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=en+rn|0)>>>0?Wt+1|0:Wt,Il=(en=rn)+(rn=PA(An,0,yn,Gl))|0,en=bn+Wt|0,en=rn>>>0>Il>>>0?en+1|0:en,Wt=PA(Zn,0,Vn,0),rn=bn+en|0,rn=Wt>>>0>(Il=Wt+Il|0)>>>0?rn+1|0:rn,Wt=PA(pn,0,vn,Yn),en=bn+rn|0,en=Wt>>>0>(Il=Wt+Il|0)>>>0?en+1|0:en,rn=PA(Wn,0,Yl,0),Wt=bn+en|0,Wt=rn>>>0>(Il=rn+Il|0)>>>0?Wt+1|0:Wt,en=PA(Nn,0,wn,0),Wt=bn+Wt|0,cl=rn=en+Il|0,Il=en>>>0>rn>>>0?Wt+1|0:Wt,Wt=PA(hn,0,Hn,0),en=bn,rn=Wt,Wt=PA(Gn,0,fn,0),en=bn+en|0,en=Wt>>>0>(rn=rn+Wt|0)>>>0?en+1|0:en,il=(Wt=PA(An,0,En,0))+rn|0,rn=bn+en|0,rn=Wt>>>0>il>>>0?rn+1|0:rn,Wt=PA(gn,0,Rn,0),en=bn+rn|0,en=Wt>>>0>(il=Wt+il|0)>>>0?en+1|0:en,rn=PA(yn,Gl,vn,Yn),Wt=bn+en|0,Wt=rn>>>0>(il=rn+il|0)>>>0?Wt+1|0:Wt,en=PA(Zn,0,wn,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=en+il|0)>>>0?Wt+1|0:Wt,il=(en=rn)+(rn=PA(pn,0,Vn,0))|0,en=bn+Wt|0,en=rn>>>0>il>>>0?en+1|0:en,Wt=PA(Wn,0,Xn,0),rn=bn+en|0,rn=Wt>>>0>(il=Wt+il|0)>>>0?rn+1|0:rn,Wt=PA(Nn,0,Yl,0),en=bn+rn|0,hl=en=Wt>>>0>(Zl=Wt+il|0)>>>0?en+1|0:en,Ml=Wt=en-((Zl>>>0<4293918720)-1|0)|0,en=(2097151&Wt)<<11|(Al=Zl- -1048576|0)>>>21,Wt=(Wt>>>21|0)+Il|0,dl=Wt=en>>>0>(Rl=en+cl|0)>>>0?Wt+1|0:Wt,fl=Wt=Wt-((Rl>>>0<4293918720)-1|0)|0,en=(rn=Wt>>>21|0)+sl|0,pl=en=(Wt=(2097151&Wt)<<11|(il=Rl- -1048576|0)>>>21)>>>0>(wl=Wt+pl|0)>>>0?en+1|0:en,Ul=Wt=en-((wl>>>0<4293918720)-1|0)|0,Il=(2097151&Wt)<<11|(sl=wl- -1048576|0)>>>21,Wt=(Wt>>21)+vl|0,_n=Wt=(en=Il+Fl|0)>>>0>>0?Wt+1|0:Wt,Kn=en,Wt=PA(en,Wt,-683901,-1),en=bn+bl|0,Jl=rn=Wt+Jl|0,bl=Wt>>>0>rn>>>0?en+1|0:en,Wt=PA(hn,0,Fn,0),en=bn,rn=Wt,Wt=PA(gn,0,Qn,0),en=bn+en|0,en=Wt>>>0>(rn=rn+Wt|0)>>>0?en+1|0:en,Il=(Wt=rn)+(rn=PA(vn,Yn,fn,0))|0,Wt=bn+en|0,Wt=rn>>>0>Il>>>0?Wt+1|0:Wt,en=PA(Vn,0,Hn,0),rn=bn+Wt|0,rn=en>>>0>(Il=en+Il|0)>>>0?rn+1|0:rn,en=PA(An,0,Cn,0),Wt=bn+rn|0,Wt=en>>>0>(Il=en+Il|0)>>>0?Wt+1|0:Wt,rn=PA(En,0,Yl,0),en=bn+Wt|0,en=rn>>>0>(Il=rn+Il|0)>>>0?en+1|0:en,Wt=PA(Rn,0,wn,0),en=bn+en|0,en=Wt>>>0>(rn=Wt+Il|0)>>>0?en+1|0:en,Il=(Wt=rn)+(rn=PA(yn,Gl,Xn,0))|0,Wt=bn+en|0,Wt=rn>>>0>Il>>>0?Wt+1|0:Wt,en=PA(Zn,0,Ln,0),rn=bn+Wt|0,rn=en>>>0>(Il=en+Il|0)>>>0?rn+1|0:rn,en=PA(pn,0,kn,0),Wt=bn+rn|0,Wt=en>>>0>(Il=en+Il|0)>>>0?Wt+1|0:Wt,rn=PA(Nn,0,Jn,0),en=bn+Wt|0,vl=Il=rn+Il|0,rn=rn>>>0>Il>>>0?en+1|0:en,en=(Wt=an[cn+27|0])>>>24|0,cl=Wt<<8|Ql>>>24,Il=2097151&((3&(en|=Wt=(Il=an[cn+28|0])>>>16|0))<<30|(Wt=(Il<<=16)|cl)>>>2),en=rn,cl=Wt=Il+vl|0,Il=Wt>>>0>>0?en+1|0:en,Fl=PA(zn,Tn,470296,0),vl=bn,Wt=(rn=(2097151&Vl)<<11|El>>>21)+(gl-(en=-2097152&ml)|0)|0,en=Bl-((524287&Cl)+(en>>>0>gl>>>0)|0)+(Vl>>>21)|0,Pn=en=Wt>>>0>>0?en+1|0:en,qn=Wt,en=PA(Wt,en,666643,0),Wt=bn+vl|0,Wt=en>>>0>(rn=en+Fl|0)>>>0?Wt+1|0:Wt,ml=(en=PA(On,xn,654183,0))+rn|0,rn=bn+Wt|0,rn=en>>>0>ml>>>0?rn+1|0:rn,en=PA(Un,Mn,-997805,-1),Wt=bn+rn|0,Wt=en>>>0>(ml=en+ml|0)>>>0?Wt+1|0:Wt,rn=PA(jn,Sn,136657,0),en=bn+Wt|0,Wl=(Wt=(2097151&Nl)<<11|Wl>>>21)+(ml=rn+ml|0)|0,en=(Nl>>>21|0)+(rn>>>0>ml>>>0?en+1|0:en)|0,Cl=ml=Il-((cl>>>0<4293918720)-1|0)|0,Wt=(Wt>>>0>Wl>>>0?en+1|0:en)+Il|0,en=(Il=cl+Wl|0)-(rn=-2097152&(Bl=cl- -1048576|0))|0,rn=(Wt=(Wt=Il>>>0>>0?Wt+1|0:Wt)-((rn>>>0>Il>>>0)+ml|0)|0)+bl|0,Fl=Il=Wt-((en>>>0<4293918720)-1|0)|0,gl=(rn=(cl=en+Jl|0)>>>0>>0?rn+1|0:rn)-(((en=-2097152&(vl=en- -1048576|0))>>>0>cl>>>0)+Il|0)|0,Ql=Wt=cl-en|0,Il=on,on=In,zl=wl-(Wt=-2097152&sl)|0,ml=pl-((Wt>>>0>wl>>>0)+Ul|0)|0,Wt=PA(qn,Pn,-683901,-1),en=bn,In=(rn=Wt)+(Wt=PA(Bn,Dn,136657,0))|0,rn=bn+en|0,en=dl+(Wt>>>0>In>>>0?rn+1|0:rn)|0,il=(rn=In+Rl|0)-(Wt=-2097152&il)|0,pl=(en=rn>>>0>>0?en+1|0:en)-((Wt>>>0>rn>>>0)+fl|0)|0,en=PA(Bn,Dn,-997805,-1),Wt=bn+hl|0,Wt=en>>>0>(rn=en+Zl|0)>>>0?Wt+1|0:Wt,In=(en=PA(qn,Pn,136657,0))+rn|0,rn=bn+Wt|0,rn=en>>>0>In>>>0?rn+1|0:rn,Wt=PA(zn,Tn,-683901,-1),en=bn+rn|0,en=Wt>>>0>(In=Wt+In|0)>>>0?en+1|0:en,sl=In-(Wt=-2097152&Al)|0,bl=en-((Wt>>>0>In>>>0)+Ml|0)|0,en=PA(gn,0,Hn,0),Wt=bn,rn=en,en=PA(hn,0,fn,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=rn+en|0)>>>0?Wt+1|0:Wt,In=(en=PA(Gn,0,Cn,0))+rn|0,rn=bn+Wt|0,rn=en>>>0>In>>>0?rn+1|0:rn,Wt=PA(vn,Yn,En,0),en=bn+rn|0,en=Wt>>>0>(In=Wt+In|0)>>>0?en+1|0:en,rn=PA(An,0,Rn,0),Wt=bn+en|0,Wt=rn>>>0>(In=rn+In|0)>>>0?Wt+1|0:Wt,rn=PA(yn,Gl,Vn,0),en=bn+Wt|0,en=rn>>>0>(In=rn+In|0)>>>0?en+1|0:en,rn=PA(Zn,0,Yl,0),Wt=bn+en|0,Wt=rn>>>0>(In=rn+In|0)>>>0?Wt+1|0:Wt,en=PA(pn,0,wn,0),rn=bn+Wt|0,rn=en>>>0>(In=en+In|0)>>>0?rn+1|0:rn,Wt=PA(Wn,0,kn,0),en=bn+rn|0,en=Wt>>>0>(In=Wt+In|0)>>>0?en+1|0:en,rn=PA(Nn,0,Xn,0),Wt=bn+en|0,cl=In=rn+In|0,In=rn>>>0>In>>>0?Wt+1|0:Wt,Wt=PA(gn,0,fn,0),en=bn,rn=Wt,Wt=PA(Gn,0,Qn,0),en=bn+en|0,en=Wt>>>0>(rn=rn+Wt|0)>>>0?en+1|0:en,dl=(Wt=rn)+(rn=PA(An,0,Hn,0))|0,Wt=bn+en|0,Wt=rn>>>0>dl>>>0?Wt+1|0:Wt,en=PA(hn,0,Cn,0),rn=bn+Wt|0,rn=en>>>0>(dl=en+dl|0)>>>0?rn+1|0:rn,Wt=PA(En,0,Vn,0),en=bn+rn|0,en=Wt>>>0>(dl=Wt+dl|0)>>>0?en+1|0:en,rn=PA(vn,Yn,Rn,0),Wt=bn+en|0,Wt=rn>>>0>(dl=rn+dl|0)>>>0?Wt+1|0:Wt,rn=PA(yn,Gl,wn,0),en=bn+Wt|0,en=rn>>>0>(dl=rn+dl|0)>>>0?en+1|0:en,rn=PA(Zn,0,Xn,0),Wt=bn+en|0,Wt=rn>>>0>(dl=rn+dl|0)>>>0?Wt+1|0:Wt,en=PA(pn,0,Yl,0),rn=bn+Wt|0,rn=en>>>0>(dl=en+dl|0)>>>0?rn+1|0:rn,dl=(Wt=PA(Wn,0,Ln,0))+dl|0,en=bn+rn|0,rn=PA(Nn,0,kn,0),Wt=bn+(Wt>>>0>dl>>>0?en+1|0:en)|0,wl=Wt=rn>>>0>(Ul=rn+dl|0)>>>0?Wt+1|0:Wt,el=Wt=Wt-((Ul>>>0<4293918720)-1|0)|0,rn=(2097151&Wt)<<11|(Vl=Ul- -1048576|0)>>>21,Wt=(Wt>>>21|0)+In|0,El=Wt=rn>>>0>(Jl=rn+cl|0)>>>0?Wt+1|0:Wt,tl=Wt=Wt-((Jl>>>0<4293918720)-1|0)|0,rn=(2097151&Wt)<<11|(Nl=Jl- -1048576|0)>>>21,Wt=(Wt>>>21|0)+bl|0,Wl=Wt=rn>>>0>(Rl=rn+sl|0)>>>0?Wt+1|0:Wt,nl=Wt=Wt-((Rl>>>0<4293918720)-1|0)|0,rn=(2097151&Wt)<<11|(hl=Rl- -1048576|0)>>>21,Wt=(Wt>>21)+pl|0,In=Wt=rn>>>0>(sl=rn+il|0)>>>0?Wt+1|0:Wt,pl=Wt=Wt-((sl>>>0<4293918720)-1|0)|0,bl=(2097151&Wt)<<11|(rn=sl- -1048576|0)>>>21,Wt=(Wt>>21)+ml|0,Ml=Wt=(cl=bl+zl|0)>>>0>>0?Wt+1|0:Wt,fl=cl,Wt=PA(cl,Wt,-683901,-1),en=bn,cl=Wt,Wt=PA(Kn,_n,136657,0),en=bn+en|0,Wt=(Wt>>>0>(cl=cl+Wt|0)>>>0?en+1|0:en)+on|0,Kl=(on=Il+cl|0)-(en=-2097152&yl)|0,Pl=(Wt=on>>>0>>0?Wt+1|0:Wt)-((en>>>0>on>>>0)+Sl|0)|0,bl=ol,cl=ul,ol=PA(fl,Ml,136657,0),on=bn,zl=Wt=sl-(en=-2097152&rn)|0,$n=In=In-((en>>>0>sl>>>0)+pl|0)|0,rn=PA(Kn,_n,-997805,-1),en=bn+on|0,en=rn>>>0>(ol=rn+ol|0)>>>0?en+1|0:en,rn=PA(Wt,In,-683901,-1),Wt=bn+en|0,Sl=In=rn+ol|0,Il=rn>>>0>In>>>0?Wt+1|0:Wt,Wt=PA(jn,Sn,470296,0),en=bn,In=(rn=Wt)+(Wt=PA(Un,Mn,666643,0))|0,rn=bn+en|0,en=Tl+(Wt>>>0>In>>>0?rn+1|0:rn)|0,yl=Wt=In+Ol|0,on=en=Wt>>>0
                        >>0?en+1|0:en,en=PA(jn,Sn,666643,0),Wt=bn+xl|0,Wt=en>>>0>(rn=en+Hl|0)>>>0?Wt+1|0:Wt,il=rn-(en=-2097152&Ll)|0,Zl=Wt-((en>>>0>rn>>>0)+jl|0)|0,en=PA(wn,0,Fn,0),Wt=bn,rn=en,en=PA(Qn,0,Yl,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=rn+en|0)>>>0?Wt+1|0:Wt,In=(en=rn)+(rn=PA(fn,0,kn,0))|0,en=bn+Wt|0,en=rn>>>0>In>>>0?en+1|0:en,rn=PA(Hn,0,Ln,0),Wt=bn+en|0,Wt=rn>>>0>(In=rn+In|0)>>>0?Wt+1|0:Wt,en=PA(Cn,0,Xn,0),rn=bn+Wt|0,rn=en>>>0>(In=en+In|0)>>>0?rn+1|0:rn,Wt=PA(Rn,0,Jn,0),en=bn+rn|0,sl=In=Wt+In|0,In=Wt>>>0>In>>>0?en+1|0:en,en=(Wt=an[cn+14|0])>>>24|0,ol=Wt<<8|(pl=an[cn+10|0]|an[cn+11|0]<<8|an[cn+12|0]<<16|an[cn+13|0]<<24)>>>24,en=2097151&((1&(en|=rn=(Wt=an[cn+15|0])>>>16|0))<<31|(Wt=ol|Wt<<16)>>>1),Wt=In,sl=rn=en+sl|0,In=en>>>0>rn>>>0?Wt+1|0:Wt,ol=pl>>>4&2097151,Wt=PA(Fn,0,Yl,0),en=bn,rn=Wt,Wt=PA(Qn,0,Xn,0),en=bn+en|0,en=Wt>>>0>(rn=rn+Wt|0)>>>0?en+1|0:en,Wt=PA(fn,0,Ln,0),en=bn+en|0,en=Wt>>>0>(rn=Wt+rn|0)>>>0?en+1|0:en,pl=(Wt=rn)+(rn=PA(Hn,0,Jn,0))|0,Wt=bn+en|0,Wt=rn>>>0>pl>>>0?Wt+1|0:Wt,en=PA(Cn,0,kn,0),rn=bn+Wt|0,Wt=en>>>0>(pl=en+pl|0)>>>0?rn+1|0:rn,ul=Wt=(Ll=ol+pl|0)>>>0>>0?Wt+1|0:Wt,ll=Wt=Wt-((Ll>>>0<4293918720)-1|0)|0,en=(rn=Wt>>>21|0)+In|0,Al=en=(Wt=(2097151&Wt)<<11|(ml=Ll- -1048576|0)>>>21)>>>0>(Tl=Wt+sl|0)>>>0?en+1|0:en,al=Wt=en-((Tl>>>0<4293918720)-1|0)|0,en=(2097151&Wt)<<11|(dl=Tl- -1048576|0)>>>21,Wt=(Wt>>>21|0)+Zl|0,pl=Wt=en>>>0>(il=en+il|0)>>>0?Wt+1|0:Wt,rl=Wt=Wt-((il>>>0<4293918720)-1|0)|0,en=(rn=Wt>>21)+on|0,jl=en=(en=(Wt=(2097151&Wt)<<11|(sl=il- -1048576|0)>>>21)>>>0>(In=Wt+yl|0)>>>0?en+1|0:en)-(((rn=-2097152&Xl)>>>0>In>>>0)+Dl|0)|0,Xl=Wt=In-rn|0,ol=Wt- -1048576|0,Dl=Wt=en-((Wt>>>0<4293918720)-1|0)|0,rn=(en=Wt>>21)+Il|0,en=((Wt=(2097151&Wt)<<11|ol>>>21)>>>0>(In=Wt+Sl|0)>>>0?rn+1|0:rn)+cl|0,Hl=en=(en=(Wt=In)>>>0>(In=In+bl|0)>>>0?en+1|0:en)-(((rn=-2097152&kl)>>>0>In>>>0)+_l|0)|0,cl=Wt=In-rn|0,on=Wt- -1048576|0,xl=Wt=en-((Wt>>>0<4293918720)-1|0)|0,rn=(en=Wt>>21)+Pl|0,kl=Wt=(rn=(Wt=(2097151&Wt)<<11|on>>>21)>>>0>(Il=Wt+Kl|0)>>>0?rn+1|0:rn)-((Il>>>0<4293918720)-1|0)|0,yl=Ql- -1048576|0,Zl=gl-((Ql>>>0<4293918720)-1|0)|0,bl=(2097151&Wt)<<11|(In=Il- -1048576|0)>>>21,Wt=(Wt>>21)+gl|0,_l=(Ql=bl+Ql|0)-(en=-2097152&yl)|0,Kl=(bl>>>0>Ql>>>0?Wt+1|0:Wt)-((en>>>0>Ql>>>0)+Zl|0)|0,Pl=Il-(Wt=-2097152&In)|0,Sl=rn-((Wt>>>0>Il>>>0)+kl|0)|0,Ol=cl-(Wt=-2097152&on)|0,Ql=Hl-((Wt>>>0>cl>>>0)+xl|0)|0,Wt=PA(fl,Ml,-997805,-1),en=bn,rn=Wt,Wt=PA(Kn,_n,654183,0),en=bn+en|0,en=Wt>>>0>(rn=rn+Wt|0)>>>0?en+1|0:en,In=(Wt=rn)+(rn=PA(zl,$n,136657,0))|0,Wt=bn+en|0,en=jl+(rn>>>0>In>>>0?Wt+1|0:Wt)|0,Hl=(rn=In+Xl|0)-(Wt=-2097152&ol)|0,xl=(en=rn>>>0>>0?en+1|0:en)-((Wt>>>0>rn>>>0)+Dl|0)|0,Xl=Rl-(Wt=-2097152&hl)|0,gl=Wl-((Wt>>>0>Rl>>>0)+nl|0)|0,en=PA(qn,Pn,-997805,-1),Wt=bn,rn=en,en=PA(Bn,Dn,654183,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=rn+en|0)>>>0?Wt+1|0:Wt,In=(en=rn)+(rn=PA(zn,Tn,136657,0))|0,en=bn+Wt|0,en=rn>>>0>In>>>0?en+1|0:en,Wt=PA(On,xn,-683901,-1),rn=bn+en|0,en=El+(Wt>>>0>(In=Wt+In|0)>>>0?rn+1|0:rn)|0,hl=(rn=In+Jl|0)-(Wt=-2097152&Nl)|0,Wl=(en=rn>>>0>>0?en+1|0:en)-((Wt>>>0>rn>>>0)+tl|0)|0,en=PA(qn,Pn,654183,0),Wt=bn,rn=en,en=PA(Bn,Dn,470296,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=rn+en|0)>>>0?Wt+1|0:Wt,In=(en=PA(zn,Tn,-997805,-1))+rn|0,rn=bn+Wt|0,en=wl+(en>>>0>In>>>0?rn+1|0:rn)|0,en=(Wt=In+Ul|0)>>>0
                          >>0?en+1|0:en,rn=Wt,Wt=PA(On,xn,136657,0),en=bn+en|0,en=Wt>>>0>(rn=rn+Wt|0)>>>0?en+1|0:en,In=(Wt=rn)+(rn=PA(Un,Mn,-683901,-1))|0,Wt=bn+en|0,ol=In-(en=-2097152&Vl)|0,on=(rn>>>0>In>>>0?Wt+1|0:Wt)-((en>>>0>In>>>0)+el|0)|0,In=(an[cn+28|0]|an[cn+29|0]<<8|an[cn+30|0]<<16|an[cn+31|0]<<24)>>>7|0,Wt=PA(Gn,0,Fn,0),en=bn,Il=(rn=Wt)+(Wt=PA(hn,0,Qn,0))|0,rn=bn+en|0,rn=Wt>>>0>Il>>>0?rn+1|0:rn,Wt=PA(An,0,fn,0),en=bn+rn|0,en=Wt>>>0>(Il=Wt+Il|0)>>>0?en+1|0:en,rn=PA(vn,Yn,Hn,0),Wt=bn+en|0,Wt=rn>>>0>(Il=rn+Il|0)>>>0?Wt+1|0:Wt,rn=PA(gn,0,Cn,0),en=bn+Wt|0,en=rn>>>0>(Il=rn+Il|0)>>>0?en+1|0:en,rn=PA(En,0,wn,0),Wt=bn+en|0,Wt=rn>>>0>(Il=rn+Il|0)>>>0?Wt+1|0:Wt,en=PA(Vn,0,Rn,0),rn=bn+Wt|0,rn=en>>>0>(Il=en+Il|0)>>>0?rn+1|0:rn,Wt=PA(yn,Gl,Yl,0),en=bn+rn|0,en=Wt>>>0>(Il=Wt+Il|0)>>>0?en+1|0:en,rn=PA(Zn,0,kn,0),Wt=bn+en|0,Wt=rn>>>0>(Il=rn+Il|0)>>>0?Wt+1|0:Wt,rn=PA(pn,0,Xn,0),en=bn+Wt|0,en=rn>>>0>(Il=rn+Il|0)>>>0?en+1|0:en,rn=PA(Wn,0,Jn,0),Wt=bn+en|0,Wt=rn>>>0>(Il=rn+Il|0)>>>0?Wt+1|0:Wt,en=PA(Nn,0,Ln,0),rn=bn+Wt|0,en=rn=en>>>0>(Il=en+Il|0)>>>0?rn+1|0:rn,El=(rn=(2097151&Cl)<<11|Bl>>>21)+(Wt=In+Il|0)|0,Wt=(Cl>>>21|0)+(en=Wt>>>0>>0?en+1|0:en)|0,bl=Wt=rn>>>0>El>>>0?Wt+1|0:Wt,kl=en=Wt-((El>>>0<4293918720)-1|0)|0,rn=(Wt=en>>>21|0)+on|0,cl=rn=(en=(2097151&en)<<11|(Gl=El- -1048576|0)>>>21)>>>0>(Nl=en+ol|0)>>>0?rn+1|0:rn,Bl=en=rn-((Nl>>>0<4293918720)-1|0)|0,Wt=(Wt=en>>21)+Wl|0,ol=Wt=(en=(2097151&en)<<11|(Il=Nl- -1048576|0)>>>21)>>>0>(hl=en+hl|0)>>>0?Wt+1|0:Wt,Vl=en=Wt-((hl>>>0<4293918720)-1|0)|0,rn=(Wt=en>>21)+gl|0,Cl=rn=(en=(In=(2097151&en)<<11|(on=hl- -1048576|0)>>>21)+Xl|0)>>>0>>0?rn+1|0:rn,gl=en,Wt=PA(en,rn,-683901,-1),en=bn+xl|0,Wl=rn=Wt+Hl|0,In=Wt>>>0>rn>>>0?en+1|0:en,en=PA(Kn,_n,470296,0),Wt=bn+pl|0,Wt=en>>>0>(il=en+il|0)>>>0?Wt+1|0:Wt,en=PA(fl,Ml,654183,0),Wt=bn+(Wt-(((rn=-2097152&sl)>>>0>il>>>0)+rl|0)|0)|0,Wt=en>>>0>(sl=en+(il-rn|0)|0)>>>0?Wt+1|0:Wt,rn=PA(zl,$n,-997805,-1),en=bn+Wt|0,en=rn>>>0>(sl=rn+sl|0)>>>0?en+1|0:en,wl=rn=hl-(Wt=-2097152&on)|0,Yl=ol=ol-((Wt>>>0>hl>>>0)+Vl|0)|0,sl=(on=PA(gl,Cl,136657,0))+sl|0,Wt=bn+en|0,rn=PA(rn,ol,-683901,-1),en=bn+(on>>>0>sl>>>0?Wt+1|0:Wt)|0,ol=en=rn>>>0>(pl=rn+sl|0)>>>0?en+1|0:en,Vl=Wt=en-((pl>>>0<4293918720)-1|0)|0,en=(2097151&Wt)<<11|(on=pl- -1048576|0)>>>21,Wt=(Wt>>21)+In|0,hl=en=(Wt=en>>>0>(sl=en+Wl|0)>>>0?Wt+1|0:Wt)-((sl>>>0<4293918720)-1|0)|0,il=(2097151&en)<<11|(In=sl- -1048576|0)>>>21,en=(en>>21)+Ql|0,Ol=Wl=il+Ol|0,Wl=il>>>0>Wl>>>0?en+1|0:en,Ql=sl-(en=-2097152&In)|0,Ul=Wt-((en>>>0>sl>>>0)+hl|0)|0,Hl=pl-(Wt=-2097152&on)|0,xl=ol-((Wt>>>0>pl>>>0)+Vl|0)|0,Wt=PA(Kn,_n,666643,0),rn=Al+bn|0,rn=(on=Wt+Tl|0)>>>0>>0?rn+1|0:rn,In=(Wt=PA(fl,Ml,470296,0))+(on-(en=-2097152&dl)|0)|0,en=bn+(rn-((en>>>0>on>>>0)+al|0)|0)|0,en=Wt>>>0>In>>>0?en+1|0:en,rn=PA(zl,$n,654183,0),Wt=bn+en|0,sl=In=rn+In|0,In=rn>>>0>In>>>0?Wt+1|0:Wt,on=Nl-(Wt=-2097152&Il)|0,ol=cl-((Wt>>>0>Nl>>>0)+Bl|0)|0,Wt=PA(qn,Pn,470296,0),en=bn,rn=Wt,Wt=PA(Bn,Dn,666643,0),en=bn+en|0,en=Wt>>>0>(rn=rn+Wt|0)>>>0?en+1|0:en,Wt=PA(zn,Tn,654183,0),en=bn+en|0,en=Wt>>>0>(rn=Wt+rn|0)>>>0?en+1|0:en,Il=(Wt=rn)+(rn=PA(On,xn,-997805,-1))|0,Wt=bn+en|0,Wt=rn>>>0>Il>>>0?Wt+1|0:Wt,en=PA(Un,Mn,136657,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=en+Il|0)>>>0?Wt+1|0:Wt,Il=(en=PA(jn,Sn,-683901,-1))+rn|0,rn=bn+Wt|0,en=bl+(en>>>0>Il>>>0?rn+1|0:rn)|0,Nl=(rn=(2097151&Fl)<<11|vl>>>21)+((Il=Il+El|0)-(Wt=-2097152&Gl)|0)|0,Wt=((en=Il>>>0>>0?en+1|0:en)-((Wt>>>0>Il>>>0)+kl|0)|0)+(Fl>>21)|0,hl=Wt=rn>>>0>Nl>>>0?Wt+1|0:Wt,Xl=Wt=Wt-((Nl>>>0<4293918720)-1|0)|0,en=on,on=(2097151&Wt)<<11|(dl=Nl- -1048576|0)>>>21,Wt=(Wt>>21)+ol|0,Vl=Wt=(rn=en+on|0)>>>0>>0?Wt+1|0:Wt,El=rn,Wt=PA(rn,Wt,-683901,-1),en=bn+In|0,en=Wt>>>0>(rn=Wt+sl|0)>>>0?en+1|0:en,In=(Wt=rn)+(rn=PA(gl,Cl,-997805,-1))|0,Wt=bn+en|0,Wt=rn>>>0>In>>>0?Wt+1|0:Wt,en=PA(wl,Yl,136657,0),rn=bn+Wt|0,vl=In=en+In|0,cl=en>>>0>In>>>0?rn+1|0:rn,sl=Ll-(Wt=-2097152&ml)|0,bl=ul-((Wt>>>0>Ll>>>0)+ll|0)|0,en=PA(Fn,0,Xn,0),Wt=bn,rn=en,en=PA(Qn,0,kn,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=rn+en|0)>>>0?Wt+1|0:Wt,en=PA(fn,0,Jn,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=en+rn|0)>>>0?Wt+1|0:Wt,In=(en=PA(Cn,0,Ln,0))+rn|0,rn=bn+Wt|0,en=en>>>0>In>>>0?rn+1|0:rn,Gl=rn=(Wt=(an[cn+7|0]|an[cn+8|0]<<8|an[cn+9|0]<<16|an[cn+10|0]<<24)>>>7&2097151)+In|0,Il=Wt>>>0>rn>>>0?en+1|0:en,Wt=PA(Fn,0,kn,0),en=bn,rn=Wt,Wt=PA(Qn,0,Ln,0),en=bn+en|0,en=Wt>>>0>(rn=rn+Wt|0)>>>0?en+1|0:en,In=(Wt=rn)+(rn=PA(Cn,0,Jn,0))|0,Wt=bn+en|0,ol=In,In=rn>>>0>In>>>0?Wt+1|0:Wt,Wt=(en=an[cn+6|0])>>>24|0,on=en<<8|(kl=an[cn+2|0]|an[cn+3|0]<<8|an[cn+4|0]<<16|an[cn+5|0]<<24)>>>24,rn=Wt,en=(Wt=an[cn+7|0])>>>16|0,en|=rn,rn=In,on=rn=(Wt=2097151&((3&en)<<30|(Wt=Wt<<16|on)>>>2))>>>0>(ol=Wt+ol|0)>>>0?rn+1|0:rn,Jl=Wt=rn-((ol>>>0<4293918720)-1|0)|0,rn=(2097151&Wt)<<11|(Al=ol- -1048576|0)>>>21,Wt=(Wt>>>21|0)+Il|0,il=Wt=rn>>>0>(ul=rn+Gl|0)>>>0?Wt+1|0:Wt,Bl=Wt=Wt-((ul>>>0<4293918720)-1|0)|0,rn=(en=Wt>>>21|0)+bl|0,rn=(Wt=(2097151&Wt)<<11|(pl=ul- -1048576|0)>>>21)>>>0>(In=Wt+sl|0)>>>0?rn+1|0:rn,en=PA(fl,Ml,666643,0),Wt=bn+rn|0,Wt=en>>>0>(In=en+In|0)>>>0?Wt+1|0:Wt,en=PA(zl,$n,470296,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=en+In|0)>>>0?Wt+1|0:Wt,In=(en=rn)+(rn=PA(El,Vl,136657,0))|0,en=bn+Wt|0,en=rn>>>0>In>>>0?en+1|0:en,Wt=PA(gl,Cl,654183,0),en=bn+en|0,en=Wt>>>0>(rn=Wt+In|0)>>>0?en+1|0:en,sl=(Wt=PA(wl,Yl,-997805,-1))+rn|0,rn=bn+en|0,bl=rn=Wt>>>0>sl>>>0?rn+1|0:rn,Fl=Wt=rn-((sl>>>0<4293918720)-1|0)|0,rn=(2097151&Wt)<<11|(Gl=sl- -1048576|0)>>>21,Wt=(Wt>>21)+cl|0,vl=rn=(Wt=rn>>>0>(In=rn+vl|0)>>>0?Wt+1|0:Wt)-((In>>>0<4293918720)-1|0)|0,Il=(2097151&rn)<<11|(cl=In- -1048576|0)>>>21,rn=(rn>>21)+xl|0,Rl=ml=Il+Hl|0,ml=Il>>>0>ml>>>0?rn+1|0:rn,Il=In,en=Wt,In=(Nl-(Wt=-2097152&dl)|0)+(dl=(2097151&Zl)<<11|yl>>>21)|0,Wt=(hl-((Wt>>>0>Nl>>>0)+Xl|0)|0)+(Zl>>21)|0,Zl=Wt=In>>>0
                          >>0?Wt+1|0:Wt,Hl=Wt=Wt-((In>>>0<4293918720)-1|0)|0,Nl=rn=Wt>>21,Wt=PA(fl=(2097151&Wt)<<11|(hl=In- -1048576|0)>>>21,rn,-683901,-1),en=bn+en|0,en=Wt>>>0>(rn=Wt+Il|0)>>>0?en+1|0:en,xl=rn-(Wt=-2097152&cl)|0,Ll=en-((Wt>>>0>rn>>>0)+vl|0)|0,en=PA(fl,Nl,136657,0),Wt=bn+bl|0,Wt=en>>>0>(rn=en+sl|0)>>>0?Wt+1|0:Wt,Tl=rn-(en=-2097152&Gl)|0,Fl=Wt-((en>>>0>rn>>>0)+Fl|0)|0,en=PA(zl,$n,666643,0),Wt=bn+(il-(((rn=-2097152&pl)>>>0>ul>>>0)+Bl|0)|0)|0,Wt=en>>>0>(Il=en+(ul-rn|0)|0)>>>0?Wt+1|0:Wt,rn=PA(El,Vl,-997805,-1),en=bn+Wt|0,en=rn>>>0>(Il=rn+Il|0)>>>0?en+1|0:en,Wt=PA(gl,Cl,470296,0),rn=bn+en|0,rn=Wt>>>0>(Il=Wt+Il|0)>>>0?rn+1|0:rn,en=PA(wl,Yl,654183,0),Wt=bn+rn|0,vl=Il=en+Il|0,bl=en>>>0>Il>>>0?Wt+1|0:Wt,rn=kl>>>5&2097151,Wt=PA(Fn,0,Ln,0),en=bn,cl=Wt,Wt=PA(Qn,0,Jn,0),en=bn+en|0,Wt=Wt>>>0>(Il=cl+Wt|0)>>>0?en+1|0:en,cl=en=rn+Il|0,rn=Wt=en>>>0>>0?Wt+1|0:Wt,ul=(en=PA(Fn,0,Jn,0))+(Wt=(Wt=an[cn+2|0])<<16&2031616|an[0|cn]|an[cn+1|0]<<8)|0,en=bn,dl=en=Wt>>>0>ul>>>0?en+1|0:en,Xl=en=en-((ul>>>0<4293918720)-1|0)|0,Wt=(Wt=en>>>21|0)+rn|0,pl=Wt=(en=(2097151&en)<<11|(il=ul- -1048576|0)>>>21)>>>0>(yl=en+cl|0)>>>0?Wt+1|0:Wt,kl=en=Wt-((yl>>>0<4293918720)-1|0)|0,rn=(2097151&en)<<11|(sl=yl- -1048576|0)>>>21,en=(en>>>21|0)+on|0,en=rn>>>0>(Il=rn+ol|0)>>>0?en+1|0:en,rn=PA(El,Vl,654183,0),Wt=bn+(en-(((on=-2097152&Al)>>>0>Il>>>0)+Jl|0)|0)|0,Wt=rn>>>0>(ol=rn+(Il-on|0)|0)>>>0?Wt+1|0:Wt,en=PA(gl,Cl,666643,0),Wt=bn+Wt|0,Wt=en>>>0>(rn=en+ol|0)>>>0?Wt+1|0:Wt,Gl=(en=rn)+(rn=PA(wl,Yl,470296,0))|0,en=bn+Wt|0,cl=en=rn>>>0>Gl>>>0?en+1|0:en,Bl=en=en-((Gl>>>0<4293918720)-1|0)|0,rn=(Wt=en>>21)+bl|0,Al=en=(rn=(en=(2097151&en)<<11|(Il=Gl- -1048576|0)>>>21)>>>0>(ol=en+vl|0)>>>0?rn+1|0:rn)-((ol>>>0<4293918720)-1|0)|0,bl=(2097151&en)<<11|(on=ol- -1048576|0)>>>21,en=(en>>21)+Fl|0,Cl=gl=bl+Tl|0,bl=bl>>>0>gl>>>0?en+1|0:en,Wt=PA(fl,Nl,-997805,-1),en=bn+rn|0,en=Wt>>>0>(ol=Wt+ol|0)>>>0?en+1|0:en,Fl=ol-(Wt=-2097152&on)|0,vl=en-((Wt>>>0>ol>>>0)+Al|0)|0,en=PA(fl,Nl,654183,0),Wt=bn+cl|0,Wt=en>>>0>(rn=en+Gl|0)>>>0?Wt+1|0:Wt,gl=rn-(en=-2097152&Il)|0,Al=Wt-((en>>>0>rn>>>0)+Bl|0)|0,Wt=PA(El,Vl,470296,0),rn=bn+(pl-(((en=-2097152&sl)>>>0>yl>>>0)+kl|0)|0)|0,rn=Wt>>>0>(on=Wt+(yl-en|0)|0)>>>0?rn+1|0:rn,en=PA(wl,Yl,666643,0),Wt=bn+rn|0,ol=on=en+on|0,rn=en>>>0>on>>>0?Wt+1|0:Wt,en=PA(El,Vl,666643,0),Wt=bn+(dl-((4095&Xl)+((on=-2097152&il)>>>0>ul>>>0)|0)|0)|0,Gl=Wt=en>>>0>(sl=en+(ul-on|0)|0)>>>0?Wt+1|0:Wt,dl=Wt=Wt-((sl>>>0<4293918720)-1|0)|0,on=(2097151&Wt)<<11|(cl=sl- -1048576|0)>>>21,Wt=(Wt>>21)+rn|0,rn=Wt=on>>>0>(Il=on+ol|0)>>>0?Wt+1|0:Wt,il=Wt=Wt-((Il>>>0<4293918720)-1|0)|0,on=(2097151&Wt)<<11|(ol=Il- -1048576|0)>>>21,Wt=(Wt>>21)+Al|0,on=on>>>0>(pl=on+gl|0)>>>0?Wt+1|0:Wt,Wt=PA(fl,Nl,470296,0),rn=bn+rn|0,rn=Wt>>>0>(en=Wt+Il|0)>>>0?rn+1|0:rn,Il=en-(Wt=-2097152&ol)|0,ol=rn-((Wt>>>0>en>>>0)+il|0)|0,en=PA(fl,Nl,666643,0),Wt=bn+(Gl-(((rn=-2097152&cl)>>>0>sl>>>0)+dl|0)|0)|0,en=(rn=(Wt=en>>>0>(Al=en+(sl-rn|0)|0)>>>0?Wt+1|0:Wt)>>21)+ol|0,Wt=(Wt=(en=(Wt=(2097151&Wt)<<11|Al>>>21)>>>0>(dl=Wt+Il|0)>>>0?en+1|0:en)>>21)+on|0,en=(en=(Wt=(en=(2097151&en)<<11|dl>>>21)>>>0>(il=en+pl|0)>>>0?Wt+1|0:Wt)>>21)+vl|0,rn=(Wt=(en=(Wt=(2097151&Wt)<<11|il>>>21)>>>0>(on=Wt+Fl|0)>>>0?en+1|0:en)>>21)+bl|0,Wt=(en=(rn=(en=(2097151&en)<<11|on>>>21)>>>0>(pl=en+Cl|0)>>>0?rn+1|0:rn)>>21)+Ll|0,en=(rn=(Wt=(rn=(2097151&rn)<<11|pl>>>21)>>>0>(sl=rn+xl|0)>>>0?Wt+1|0:Wt)>>21)+ml|0,Wt=(Wt=(en=(Wt=(2097151&Wt)<<11|sl>>>21)>>>0>(bl=Wt+Rl|0)>>>0?en+1|0:en)>>21)+Ul|0,en=(en=(Wt=(en=(2097151&en)<<11|bl>>>21)>>>0>(Gl=en+Ql|0)>>>0?Wt+1|0:Wt)>>21)+Wl|0,rn=(Wt=(en=(Wt=(2097151&Wt)<<11|Gl>>>21)>>>0>(cl=Wt+Ol|0)>>>0?en+1|0:en)>>21)+Sl|0,Wt=(en=(rn=(en=(2097151&en)<<11|cl>>>21)>>>0>(Il=en+Pl|0)>>>0?rn+1|0:rn)>>21)+Kl|0,hl=(ml=In-(en=-2097152&hl)|0)+((2097151&(Wt=(rn=(2097151&rn)<<11|Il>>>21)>>>0>(ol=rn+_l|0)>>>0?Wt+1|0:Wt))<<11|ol>>>21)|0,Wt=(Zl-((en>>>0>In>>>0)+Hl|0)|0)+(Wt>>21)|0,Zl=en=(Wt=ml>>>0>hl>>>0?Wt+1|0:Wt)>>21,Al=(Wt=PA(Wl=(2097151&Wt)<<11|hl>>>21,en,666643,0))+(en=2097151&Al)|0,Wt=bn,In=Wt=en>>>0>Al>>>0?Wt+1|0:Wt,tn[0|sn]=Al,tn[sn+1|0]=(255&Wt)<<24|Al>>>8,Wt=2097151&dl,en=PA(Wl,Zl,470296,0)+Wt|0,rn=bn,Wt=(In>>21)+(Wt>>>0>en>>>0?rn+1|0:rn)|0,Wt=(dl=(ml=(2097151&In)<<11|Al>>>21)+en|0)>>>0>>0?Wt+1|0:Wt,tn[sn+4|0]=(2047&Wt)<<21|dl>>>11,en=Wt,rn=dl,tn[sn+3|0]=(7&Wt)<<29|rn>>>3,tn[sn+2|0]=31&((65535&In)<<16|Al>>>16)|rn<<5,In=2097151&il,il=PA(Wl,Zl,654183,0)+In|0,Wt=bn,dl=(2097151&en)<<11|rn>>>21,en=(en>>21)+(In=In>>>0>il>>>0?Wt+1|0:Wt)|0,Wt=en=(il=dl+il|0)>>>0
                          >>0?en+1|0:en,tn[sn+6|0]=(63&Wt)<<26|il>>>6,In=il,il=0,tn[sn+5|0]=il<<13|(1572864&rn)>>>19|In<<2,rn=2097151&on,on=PA(Wl,Zl,-997805,-1)+rn|0,en=bn,en=rn>>>0>on>>>0?en+1|0:en,il=(2097151&(rn=Wt))<<11|In>>>21,rn=(Wt>>=21)+en|0,rn=(on=il+on|0)>>>0>>0?rn+1|0:rn,tn[sn+9|0]=(511&rn)<<23|on>>>9,tn[sn+8|0]=(1&rn)<<31|on>>>1,en=0,tn[sn+7|0]=en<<18|(2080768&In)>>>14|on<<7,en=2097151&pl,In=PA(Wl,Zl,136657,0)+en|0,Wt=bn,Wt=en>>>0>In>>>0?Wt+1|0:Wt,pl=(2097151&(en=rn))<<11|on>>>21,en=Wt+(rn=en>>21)|0,en=(In=pl+In|0)>>>0>>0?en+1|0:en,tn[sn+12|0]=(4095&en)<<20|In>>>12,rn=In,tn[sn+11|0]=(15&en)<<28|rn>>>4,In=0,tn[sn+10|0]=In<<15|(1966080&on)>>>17|rn<<4,In=2097151&sl,on=PA(Wl,Zl,-683901,-1)+In|0,Wt=bn,Wt=In>>>0>on>>>0?Wt+1|0:Wt,In=en,en=Wt+(en>>=21)|0,en=(In=(sl=on)+(on=(2097151&In)<<11|rn>>>21)|0)>>>0>>0?en+1|0:en,tn[sn+14|0]=(127&en)<<25|In>>>7,on=0,tn[sn+13|0]=on<<12|(1048576&rn)>>>20|In<<1,Wt=en>>21,rn=(en=(2097151&en)<<11|In>>>21)>>>0>(on=en+(2097151&bl)|0)>>>0?Wt+1|0:Wt,tn[sn+17|0]=(1023&rn)<<22|on>>>10,tn[sn+16|0]=(3&rn)<<30|on>>>2,en=0,tn[sn+15|0]=en<<17|(2064384&In)>>>15|on<<6,Wt=rn>>21,Wt=(en=(2097151&rn)<<11|on>>>21)>>>0>(rn=en+(2097151&Gl)|0)>>>0?Wt+1|0:Wt,tn[sn+20|0]=(8191&Wt)<<19|rn>>>13,tn[sn+19|0]=(31&Wt)<<27|rn>>>5,In=(en=2097151&cl)+(cl=(2097151&Wt)<<11|rn>>>21)|0,en=Wt>>21,en=In>>>0>>0?en+1|0:en,cl=In,tn[sn+21|0]=In,Gl=0,tn[sn+18|0]=Gl<<14|(1835008&on)>>>18|rn<<3,tn[sn+22|0]=(255&en)<<24|In>>>8,rn=en>>21,rn=(In=(on=(2097151&en)<<11|In>>>21)+(2097151&Il)|0)>>>0>>0?rn+1|0:rn,tn[sn+25|0]=(2047&rn)<<21|In>>>11,tn[sn+24|0]=(7&rn)<<29|In>>>3,tn[sn+23|0]=31&((65535&en)<<16|cl>>>16)|In<<5,Wt=rn>>21,Wt=(en=(2097151&rn)<<11|In>>>21)>>>0>(rn=en+(2097151&ol)|0)>>>0?Wt+1|0:Wt,tn[sn+27|0]=(63&Wt)<<26|rn>>>6,on=0,tn[sn+26|0]=on<<13|(1572864&In)>>>19|rn<<2,en=Wt,Wt>>=21,en=(In=(ol=(2097151&en)<<11|rn>>>21)+(on=2097151&hl)|0)>>>0>>0?Wt+1|0:Wt,tn[sn+31|0]=(131071&en)<<15|In>>>17,Wt=In,tn[sn+30|0]=(511&en)<<23|Wt>>>9,In=0,tn[sn+28|0]=In<<18|(2080768&rn)>>>14|Wt<<7,tn[sn+29|0]=ol+hl>>>1,MI(dn,64),MI(cn,64),Pt&&(nn[Pt>>2]=64,nn[Pt+4>>2]=0),mn=un+560|0,0}function n(Wt,Pt,en,tn){for(var rn=0,In=0,sn=0,on=0,cn=0,dn=0,un=0,pn=0,mn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0,Fn=0,Qn=0,fn=0,Hn=0,Cn=0,Xn=0,kn=0,Jn=0,Ln=0,Bn=0,xn=0,On=0,Tn=0,Un=0;sn=(rn=cn<<3)+en|0,In=an[0|(rn=Pt+rn|0)]|an[rn+1|0]<<8|an[rn+2|0]<<16|an[rn+3|0]<<24,Vn=an[rn+4|0]|an[rn+5|0]<<8|an[rn+6|0]<<16|an[rn+7|0]<<24,dn=In<<24|(65280&In)<<8,un=(on=16711680&In)<<24,on=on>>>8|0,rn=(mn=-16777216&In)>>>24|0,nn[sn>>2]=un|mn<<8|-16777216&((255&Vn)<<24|In>>>8)|16711680&((16777215&Vn)<<8|In>>>24)|Vn>>>8&65280|Vn>>>24,In=rn|on|dn,rn=0,nn[sn+4>>2]=In|rn,16!=(0|(cn=cn+1|0)););for(Pt=nn[Wt+4>>2],nn[tn>>2]=nn[Wt>>2],nn[tn+4>>2]=Pt,Pt=nn[Wt+60>>2],nn[tn+56>>2]=nn[Wt+56>>2],nn[tn+60>>2]=Pt,Pt=nn[Wt+52>>2],nn[tn+48>>2]=nn[Wt+48>>2],nn[tn+52>>2]=Pt,Pt=nn[Wt+44>>2],nn[tn+40>>2]=nn[Wt+40>>2],nn[tn+44>>2]=Pt,Pt=nn[Wt+36>>2],nn[tn+32>>2]=nn[Wt+32>>2],nn[tn+36>>2]=Pt,Pt=nn[Wt+28>>2],nn[tn+24>>2]=nn[Wt+24>>2],nn[tn+28>>2]=Pt,Pt=nn[Wt+20>>2],nn[tn+16>>2]=nn[Wt+16>>2],nn[tn+20>>2]=Pt,Pt=nn[Wt+12>>2],nn[tn+8>>2]=nn[Wt+8>>2],nn[tn+12>>2]=Pt;sn=nn[tn+56>>2],on=nn[tn+60>>2],rn=nn[(Pt=Vn=(Rn=Un<<3)+en|0)>>2],Pt=nn[Pt+4>>2],yn=In=nn[tn+36>>2],In=_A(Wn=nn[tn+32>>2],In,50),cn=bn,In=_A(Wn,yn,46)^In,cn^=bn,In=_A(Wn,yn,23)^In,Pt=(bn^cn)+Pt|0,Pt=(rn=In+rn|0)>>>0>>0?Pt+1|0:Pt,rn=(cn=nn[(In=Rn+33968|0)>>2])+rn|0,Pt=nn[In+4>>2]+Pt|0,Pt=rn>>>0>>0?Pt+1|0:Pt,In=(cn=((un=nn[tn+48>>2])^(Gn=nn[tn+40>>2]))&Wn^un)+rn|0,rn=(((Nn=nn[tn+52>>2])^(vn=nn[tn+44>>2]))&yn^Nn)+Pt|0,Pt=(In>>>0>>0?rn+1|0:rn)+on|0,Pt=(sn=In+sn|0)>>>0>>0?Pt+1|0:Pt,cn=(In=nn[tn+24>>2])+sn|0,rn=nn[tn+28>>2]+Pt|0,hn=rn=In>>>0>cn>>>0?rn+1|0:rn,nn[tn+24>>2]=cn,nn[tn+28>>2]=rn,gn=rn=nn[tn+4>>2],rn=_A(In=nn[tn>>2],rn,36),on=bn,rn=_A(In,gn,30)^rn,on^=bn,mn=sn+(_A(In,gn,25)^rn)|0,rn=Pt+(bn^on)|0,rn=sn>>>0>mn>>>0?rn+1|0:rn,dn=(Pt=mn)+(mn=In&((on=nn[tn+16>>2])|(sn=nn[tn+8>>2]))|sn&on)|0,Pt=(Pt=rn)+(gn&((rn=nn[tn+20>>2])|(Zn=nn[tn+12>>2]))|rn&Zn)|0,mn=Pt=dn>>>0>>0?Pt+1|0:Pt,nn[tn+56>>2]=dn,nn[tn+60>>2]=Pt,pn=on,An=rn,En=nn[(Pt=Jn=(Yn=8|Rn)+en|0)>>2],Fn=nn[Pt+4>>2],rn=((yn^vn)&hn^vn)+Nn|0,rn=(Pt=(on=(Gn^Wn)&cn^Gn)+un|0)>>>0>>0?rn+1|0:rn,on=_A(cn,hn,50),un=bn,on=_A(cn,hn,46)^on,un^=bn,on=(Nn=_A(cn,hn,23)^on)+Pt|0,Pt=(bn^un)+rn|0,Pt=(on>>>0>>0?Pt+1|0:Pt)+Fn|0,Pt=(rn=on+En|0)>>>0>>0?Pt+1|0:Pt,on=(on=rn)+(un=nn[(rn=Yn+33968|0)>>2])|0,rn=nn[rn+4>>2]+Pt|0,rn=(Pt=on>>>0>>0?rn+1|0:rn)+An|0,Nn=rn=(un=on+pn|0)>>>0>>0?rn+1|0:rn,nn[tn+16>>2]=un,nn[tn+20>>2]=rn,Pt=Pt+((Zn|gn)&mn|Zn&gn)|0,Pt=(rn=on+((In|sn)&dn|In&sn)|0)>>>0>>0?Pt+1|0:Pt,on=_A(dn,mn,36),pn=bn,on=_A(dn,mn,30)^on,pn^=bn,An=rn,rn=_A(dn,mn,25)^on,Pt=(bn^pn)+Pt|0,pn=Pt=rn>>>0>(on=An+rn|0)>>>0?Pt+1|0:Pt,nn[tn+48>>2]=on,nn[tn+52>>2]=Pt,An=sn,Yn=Zn,Pt=(Zn=nn[(rn=Hn=(sn=16|Rn)+en|0)>>2])+Gn|0,rn=nn[rn+4>>2]+vn|0,rn=Pt>>>0>>0?rn+1|0:rn,sn=(Gn=Pt)+(Zn=nn[(Pt=sn+33968|0)>>2])|0,Pt=nn[Pt+4>>2]+rn|0,Pt=((hn^yn)&Nn^yn)+(Pt=sn>>>0>>0?Pt+1|0:Pt)|0,Pt=(rn=(rn=sn)+(sn=(cn^Wn)&un^Wn)|0)>>>0>>0?Pt+1|0:Pt,sn=_A(un,Nn,50),Zn=bn,sn=_A(un,Nn,46)^sn,Zn^=bn,sn=(Gn=_A(un,Nn,23)^sn)+rn|0,rn=(bn^Zn)+Pt|0,rn=(Gn=sn>>>0>>0?rn+1|0:rn)+Yn|0,Yn=rn=(Zn=sn)>>>0>(sn=sn+An|0)>>>0?rn+1|0:rn,nn[tn+8>>2]=sn,nn[tn+12>>2]=rn,Pt=_A(on,pn,36),rn=bn,Pt=_A(on,pn,30)^Pt,rn^=bn,vn=_A(on,pn,25)^Pt,Pt=((mn|gn)&pn|mn&gn)+(bn^rn)|0,rn=Gn+((An=vn+((In|dn)&on|In&dn)|0)>>>0>>0?Pt+1|0:Pt)|0,Zn=rn=(Gn=Zn+An|0)>>>0>>0?rn+1|0:rn,nn[tn+40>>2]=Gn,nn[tn+44>>2]=rn,An=In,rn=(rn=Wn)+(Wn=nn[(Pt=Ln=(In=24|Rn)+en|0)>>2])|0,Pt=nn[Pt+4>>2]+yn|0,Pt=rn>>>0>>0?Pt+1|0:Pt,In=(vn=rn)+(Wn=nn[(rn=In+33968|0)>>2])|0,rn=nn[rn+4>>2]+Pt|0,rn=(hn^(hn^Nn)&Yn)+(rn=In>>>0>>0?rn+1|0:rn)|0,rn=(Pt=(Pt=In)+(In=cn^(cn^un)&sn)|0)>>>0>>0?rn+1|0:rn,In=_A(sn,Yn,50),Wn=bn,In=_A(sn,Yn,46)^In,Wn^=bn,In=(yn=_A(sn,Yn,23)^In)+Pt|0,Pt=(bn^Wn)+rn|0,rn=(Pt=In>>>0>>0?Pt+1|0:Pt)+gn|0,yn=rn=(gn=In+An|0)>>>0>>0?rn+1|0:rn,nn[tn>>2]=gn,nn[tn+4>>2]=rn,rn=_A(Gn,Zn,36),Wn=bn,rn=_A(Gn,Zn,30)^rn,An=bn^Wn,vn=_A(Gn,Zn,25)^rn,rn=((mn|pn)&Zn|mn&pn)+(bn^An)|0,Pt=Pt+((Wn=vn+((on|dn)&Gn|on&dn)|0)>>>0>>0?rn+1|0:rn)|0,Wn=Pt=(An=In+Wn|0)>>>0>>0?Pt+1|0:Pt,nn[tn+32>>2]=An,nn[tn+36>>2]=Pt,In=nn[(rn=kn=(Pt=32|Rn)+en|0)>>2],rn=hn+nn[rn+4>>2]|0,rn=(In=In+cn|0)>>>0>>0?rn+1|0:rn,In=(cn=nn[(Pt=Pt+33968|0)>>2])+In|0,Pt=nn[Pt+4>>2]+rn|0,Pt=(Nn^(Nn^Yn)&yn)+(Pt=In>>>0>>0?Pt+1|0:Pt)|0,Pt=(rn=(rn=In)+(In=un^(sn^un)&gn)|0)>>>0>>0?Pt+1|0:Pt,In=_A(gn,yn,50),cn=bn,In=_A(gn,yn,46)^In,cn^=bn,In=(hn=_A(gn,yn,23)^In)+rn|0,rn=(bn^cn)+Pt|0,vn=rn=In>>>0>>0?rn+1|0:rn,Pt=rn,rn=_A(An,Wn,36),cn=bn,rn=_A(An,Wn,30)^rn,hn=bn^cn,En=_A(An,Wn,25)^rn,rn=((pn|Zn)&Wn|pn&Zn)+(bn^hn)|0,Pt=((cn=En+((on|Gn)&An|on&Gn)|0)>>>0>>0?rn+1|0:rn)+Pt|0,cn=Pt=(hn=In+cn|0)>>>0>>0?Pt+1|0:Pt,nn[tn+24>>2]=hn,nn[tn+28>>2]=Pt,rn=mn+vn|0,vn=rn=(mn=In+dn|0)>>>0>>0?rn+1|0:rn,nn[tn+56>>2]=mn,nn[tn+60>>2]=rn,In=nn[(Pt=Cn=(rn=40|Rn)+en|0)>>2],Pt=Nn+nn[Pt+4>>2]|0,Pt=(In=In+un|0)>>>0>>0?Pt+1|0:Pt,In=(dn=nn[(rn=rn+33968|0)>>2])+In|0,rn=nn[rn+4>>2]+Pt|0,rn=(Yn^(yn^Yn)&vn)+(rn=In>>>0>>0?rn+1|0:rn)|0,rn=(Pt=(Pt=In)+(In=sn^(sn^gn)&mn)|0)>>>0>>0?rn+1|0:rn,In=_A(mn,vn,50),dn=bn,In=_A(mn,vn,46)^In,dn^=bn,In=(un=_A(mn,vn,23)^In)+Pt|0,Pt=(bn^dn)+rn|0,Pt=In>>>0>>0?Pt+1|0:Pt,rn=_A(hn,cn,36),dn=bn,rn=_A(hn,cn,30)^rn,un=bn^dn,Nn=_A(hn,cn,25)^rn,rn=((Zn|Wn)&cn|Zn&Wn)+(bn^un)|0,rn=((dn=Nn+((Gn|An)&hn|Gn&An)|0)>>>0>>0?rn+1|0:rn)+Pt|0,dn=rn=(un=In+dn|0)>>>0>>0?rn+1|0:rn,nn[tn+16>>2]=un,nn[tn+20>>2]=rn,Pt=Pt+pn|0,En=Pt=(pn=In+on|0)>>>0>>0?Pt+1|0:Pt,nn[tn+48>>2]=pn,nn[tn+52>>2]=Pt,In=nn[(rn=fn=(Pt=48|Rn)+en|0)>>2],rn=Yn+nn[rn+4>>2]|0,rn=(In=In+sn|0)>>>0>>0?rn+1|0:rn,In=(sn=nn[(Pt=Pt+33968|0)>>2])+In|0,Pt=nn[Pt+4>>2]+rn|0,Pt=(yn^(yn^vn)&En)+(Pt=In>>>0>>0?Pt+1|0:Pt)|0,Pt=(rn=(rn=In)+(In=gn^(mn^gn)&pn)|0)>>>0>>0?Pt+1|0:Pt,In=_A(pn,En,50),sn=bn,In=_A(pn,En,46)^In,sn^=bn,In=(on=_A(pn,En,23)^In)+rn|0,rn=(bn^sn)+Pt|0,on=rn=In>>>0>>0?rn+1|0:rn,Pt=rn,rn=_A(un,dn,36),sn=bn,rn=_A(un,dn,30)^rn,Nn=bn^sn,Yn=_A(un,dn,25)^rn,rn=((cn|Wn)&dn|cn&Wn)+(bn^Nn)|0,Pt=((sn=Yn+((hn|An)&un|hn&An)|0)>>>0>>0?rn+1|0:rn)+Pt|0,Nn=Pt=(rn=sn)>>>0>(sn=In+sn|0)>>>0?Pt+1|0:Pt,nn[tn+8>>2]=sn,nn[tn+12>>2]=Pt,rn=on+Zn|0,Yn=rn=(Fn=In+Gn|0)>>>0>>0?rn+1|0:rn,nn[tn+40>>2]=Fn,nn[tn+44>>2]=rn,In=nn[(Pt=Xn=(rn=56|Rn)+en|0)>>2],Pt=yn+nn[Pt+4>>2]|0,Pt=(In=In+gn|0)>>>0>>0?Pt+1|0:Pt,In=(on=nn[(rn=rn+33968|0)>>2])+In|0,rn=nn[rn+4>>2]+Pt|0,rn=(vn^(vn^En)&Yn)+(rn=In>>>0>>0?rn+1|0:rn)|0,rn=(Pt=(Pt=In)+(In=mn^(mn^pn)&Fn)|0)>>>0>>0?rn+1|0:rn,In=_A(Fn,Yn,50),on=bn,In=_A(Fn,Yn,46)^In,on^=bn,In=(Zn=_A(Fn,Yn,23)^In)+Pt|0,Pt=(bn^on)+rn|0,Pt=In>>>0>>0?Pt+1|0:Pt,rn=_A(sn,Nn,36),on=bn,rn=_A(sn,Nn,30)^rn,Zn=bn^on,Gn=_A(sn,Nn,25)^rn,rn=((cn|dn)&Nn|cn&dn)+(bn^Zn)|0,rn=((on=Gn+((un|hn)&sn|un&hn)|0)>>>0>>0?rn+1|0:rn)+Pt|0,Zn=rn=(Zn=on)>>>0>(on=In+on|0)>>>0?rn+1|0:rn,nn[tn>>2]=on,nn[tn+4>>2]=rn,Pt=Pt+Wn|0,yn=Pt=(Gn=In+An|0)>>>0>>0?Pt+1|0:Pt,nn[tn+32>>2]=Gn,nn[tn+36>>2]=Pt,In=nn[(rn=Bn=(Pt=64|Rn)+en|0)>>2],rn=vn+nn[rn+4>>2]|0,rn=(In=In+mn|0)>>>0>>0?rn+1|0:rn,In=(mn=nn[(Pt=Pt+33968|0)>>2])+In|0,Pt=nn[Pt+4>>2]+rn|0,Pt=(En^(Yn^En)&yn)+(Pt=In>>>0>>0?Pt+1|0:Pt)|0,Pt=(rn=(rn=In)+(In=pn^(pn^Fn)&Gn)|0)>>>0>>0?Pt+1|0:Pt,In=_A(Gn,yn,50),mn=bn,In=_A(Gn,yn,46)^In,mn^=bn,In=(gn=_A(Gn,yn,23)^In)+rn|0,rn=(bn^mn)+Pt|0,Wn=rn=In>>>0>>0?rn+1|0:rn,Pt=rn,rn=_A(on,Zn,36),mn=bn,rn=_A(on,Zn,30)^rn,gn=bn^mn,An=_A(on,Zn,25)^rn,rn=((dn|Nn)&Zn|dn&Nn)+(bn^gn)|0,Pt=((mn=An+((sn|un)&on|sn&un)|0)>>>0>>0?rn+1|0:rn)+Pt|0,mn=Pt=(gn=In+mn|0)>>>0>>0?Pt+1|0:Pt,nn[tn+56>>2]=gn,nn[tn+60>>2]=Pt,rn=cn+Wn|0,vn=rn=(cn=In+hn|0)>>>0>>0?rn+1|0:rn,nn[tn+24>>2]=cn,nn[tn+28>>2]=rn,In=nn[(Pt=Qn=(rn=72|Rn)+en|0)>>2],Pt=En+nn[Pt+4>>2]|0,Pt=(In=In+pn|0)>>>0>>0?Pt+1|0:Pt,In=(pn=nn[(rn=rn+33968|0)>>2])+In|0,rn=nn[rn+4>>2]+Pt|0,rn=(Yn^(yn^Yn)&vn)+(rn=In>>>0>>0?rn+1|0:rn)|0,rn=(Pt=(Pt=In)+(In=Fn^(Gn^Fn)&cn)|0)>>>0>>0?rn+1|0:rn,In=_A(cn,vn,50),pn=bn,In=_A(cn,vn,46)^In,pn^=bn,In=(Wn=_A(cn,vn,23)^In)+Pt|0,Pt=(bn^pn)+rn|0,Pt=In>>>0>>0?Pt+1|0:Pt,rn=_A(gn,mn,36),pn=bn,rn=_A(gn,mn,30)^rn,Wn=bn^pn,An=_A(gn,mn,25)^rn,rn=((Zn|Nn)&mn|Zn&Nn)+(bn^Wn)|0,rn=((pn=An+((sn|on)&gn|sn&on)|0)>>>0>>0?rn+1|0:rn)+Pt|0,pn=rn=(Wn=In+pn|0)>>>0>>0?rn+1|0:rn,nn[tn+48>>2]=Wn,nn[tn+52>>2]=rn,Pt=Pt+dn|0,En=Pt=(dn=In+un|0)>>>0>>0?Pt+1|0:Pt,nn[tn+16>>2]=dn,nn[tn+20>>2]=Pt,Pt=(Pt=Fn)+(un=nn[(rn=Fn=(In=80|Rn)+en|0)>>2])|0,rn=nn[rn+4>>2]+Yn|0,rn=Pt>>>0>>0?rn+1|0:rn,In=(hn=Pt)+(un=nn[(Pt=In+33968|0)>>2])|0,Pt=nn[Pt+4>>2]+rn|0,Pt=(yn^(yn^vn)&En)+(Pt=In>>>0>>0?Pt+1|0:Pt)|0,Pt=(rn=(rn=In)+(In=Gn^(cn^Gn)&dn)|0)>>>0>>0?Pt+1|0:Pt,In=_A(dn,En,50),un=bn,In=_A(dn,En,46)^In,un^=bn,In=(An=_A(dn,En,23)^In)+rn|0,rn=(bn^un)+Pt|0,hn=rn=In>>>0>>0?rn+1|0:rn,Pt=rn,rn=_A(Wn,pn,36),un=bn,rn=_A(Wn,pn,30)^rn,An=bn^un,Yn=_A(Wn,pn,25)^rn,rn=((mn|Zn)&pn|mn&Zn)+(bn^An)|0,Pt=((un=Yn+((on|gn)&Wn|on&gn)|0)>>>0>>0?rn+1|0:rn)+Pt|0,un=Pt=(An=In+un|0)>>>0>>0?Pt+1|0:Pt,nn[tn+40>>2]=An,nn[tn+44>>2]=Pt,rn=hn+Nn|0,Nn=rn=(hn=In+sn|0)>>>0>>0?rn+1|0:rn,nn[tn+8>>2]=hn,nn[tn+12>>2]=rn,rn=33968+(Pt=88|Rn)|0,sn=nn[(Pt=wn=Pt+en|0)>>2],In=nn[rn>>2]+sn|0,Pt=nn[rn+4>>2]+nn[Pt+4>>2]|0,rn=yn+(In>>>0>>0?Pt+1|0:Pt)|0,rn=(vn^(vn^En)&Nn)+(rn=(Pt=In+Gn|0)>>>0>>0?rn+1|0:rn)|0,rn=(Pt=(In=cn^(cn^dn)&hn)+Pt|0)>>>0>>0?rn+1|0:rn,In=_A(hn,Nn,50),sn=bn,In=_A(hn,Nn,46)^In,sn^=bn,In=(Gn=_A(hn,Nn,23)^In)+Pt|0,Pt=(bn^sn)+rn|0,Pt=In>>>0>>0?Pt+1|0:Pt,rn=_A(An,un,36),sn=bn,rn=_A(An,un,30)^rn,Gn=bn^sn,Yn=_A(An,un,25)^rn,rn=((mn|pn)&un|mn&pn)+(bn^Gn)|0,rn=((sn=Yn+((Wn|gn)&An|Wn&gn)|0)>>>0>>0?rn+1|0:rn)+Pt|0,Gn=rn=(Gn=sn)>>>0>(sn=In+sn|0)>>>0?rn+1|0:rn,nn[tn+32>>2]=sn,nn[tn+36>>2]=rn,Pt=Pt+Zn|0,Zn=Pt=(rn=on)>>>0>(on=In+on|0)>>>0?Pt+1|0:Pt,nn[tn>>2]=on,nn[tn+4>>2]=Pt,rn=33968+(Pt=96|Rn)|0,Yn=nn[(Pt=xn=Pt+en|0)>>2],In=nn[rn>>2]+Yn|0,rn=nn[rn+4>>2]+nn[Pt+4>>2]|0,Pt=vn+(In>>>0>>0?rn+1|0:rn)|0,Pt=(rn=In+cn|0)>>>0>>0?Pt+1|0:Pt,In=(cn=dn^(dn^hn)&on)+rn|0,rn=(En^(Nn^En)&Zn)+Pt|0,rn=In>>>0>>0?rn+1|0:rn,Pt=_A(on,Zn,50),cn=bn,Pt=_A(on,Zn,46)^Pt,cn^=bn,vn=In,In=_A(on,Zn,23)^Pt,rn=(bn^cn)+rn|0,yn=rn=(Pt=vn+In|0)>>>0>>0?rn+1|0:rn,In=Pt,Pt=_A(sn,Gn,36),cn=bn,Pt=_A(sn,Gn,30)^Pt,Yn=bn^cn,vn=_A(sn,Gn,25)^Pt,Pt=((un|pn)&Gn|un&pn)+(bn^Yn)|0,rn=((cn=vn+((Wn|An)&sn|Wn&An)|0)>>>0>>0?Pt+1|0:Pt)+rn|0,cn=rn=(Yn=In+cn|0)>>>0>>0?rn+1|0:rn,nn[tn+24>>2]=Yn,nn[tn+28>>2]=rn,rn=mn+yn|0,mn=rn=(gn=In+gn|0)>>>0>>0?rn+1|0:rn,nn[tn+56>>2]=gn,nn[tn+60>>2]=rn,rn=33968+(Pt=104|Rn)|0,yn=nn[(Pt=Tn=Pt+en|0)>>2],In=nn[rn>>2]+yn|0,Pt=nn[rn+4>>2]+nn[Pt+4>>2]|0,rn=En+(In>>>0>>0?Pt+1|0:Pt)|0,rn=(Pt=In+dn|0)>>>0>>0?rn+1|0:rn,In=(dn=hn^(on^hn)&gn)+Pt|0,Pt=(Nn^(Zn^Nn)&mn)+rn|0,Pt=In>>>0>>0?Pt+1|0:Pt,rn=_A(gn,mn,50),dn=bn,rn=_A(gn,mn,46)^rn,dn^=bn,yn=_A(gn,mn,23)^rn,rn=(bn^dn)+Pt|0,vn=rn=(In=yn+In|0)>>>0>>0?rn+1|0:rn,Pt=rn,rn=_A(Yn,cn,36),dn=bn,rn=_A(Yn,cn,30)^rn,yn=bn^dn,En=_A(Yn,cn,25)^rn,rn=((un|Gn)&cn|un&Gn)+(bn^yn)|0,Pt=((dn=En+((sn|An)&Yn|sn&An)|0)>>>0>>0?rn+1|0:rn)+Pt|0,dn=Pt=(yn=In+dn|0)>>>0>>0?Pt+1|0:Pt,nn[tn+16>>2]=yn,nn[tn+20>>2]=Pt,Pt=pn+vn|0,pn=Pt=(Wn=In+Wn|0)>>>0>>0?Pt+1|0:Pt,nn[tn+48>>2]=Wn,nn[tn+52>>2]=Pt,rn=33968+(Pt=112|Rn)|0,vn=nn[(In=En=Pt+en|0)>>2],Pt=nn[rn>>2]+vn|0,rn=nn[rn+4>>2]+nn[In+4>>2]|0,rn=Nn+(Pt>>>0>>0?rn+1|0:rn)|0,rn=(Zn^(mn^Zn)&pn)+(rn=(Pt=Pt+hn|0)>>>0>>0?rn+1|0:rn)|0,rn=(Pt=(In=on^(on^gn)&Wn)+Pt|0)>>>0>>0?rn+1|0:rn,In=_A(Wn,pn,50),hn=bn,In=_A(Wn,pn,46)^In,hn^=bn,In=(Nn=_A(Wn,pn,23)^In)+Pt|0,Pt=(bn^hn)+rn|0,vn=Pt=In>>>0>>0?Pt+1|0:Pt,rn=Pt,Pt=_A(yn,dn,36),hn=bn,Pt=_A(yn,dn,30)^Pt,Nn=bn^hn,On=_A(yn,dn,25)^Pt,Pt=((cn|Gn)&dn|cn&Gn)+(bn^Nn)|0,rn=((hn=On+((sn|Yn)&yn|sn&Yn)|0)>>>0>>0?Pt+1|0:Pt)+rn|0,hn=rn=(Nn=In+hn|0)>>>0>>0?rn+1|0:rn,nn[tn+8>>2]=Nn,nn[tn+12>>2]=rn,rn=un+vn|0,In=rn=(un=In+An|0)>>>0>>0?rn+1|0:rn,nn[tn+40>>2]=un,nn[tn+44>>2]=rn,rn=33968+(Pt=120|Rn)|0,Rn=nn[(Pt=An=Pt+en|0)>>2],vn=nn[rn>>2]+Rn|0,rn=nn[rn+4>>2]+nn[Pt+4>>2]|0,Pt=Zn+(vn>>>0>>0?rn+1|0:rn)|0,Pt=(mn^(mn^pn)&In)+(Pt=(rn=on+vn|0)>>>0>>0?Pt+1|0:Pt)|0,Pt=(rn=(on=gn^(Wn^gn)&un)+rn|0)>>>0>>0?Pt+1|0:Pt,on=_A(un,In,50),mn=bn,on=_A(un,In,46)^on,mn^=bn,In=(on=_A(un,In,23)^on)+rn|0,rn=(bn^mn)+Pt|0,rn=In>>>0>>0?rn+1|0:rn,on=In,mn=rn,Pt=rn,rn=_A(Nn,hn,36),un=bn,rn=_A(Nn,hn,30)^rn,pn=bn^un,Zn=_A(Nn,hn,25)^rn,rn=((cn|dn)&hn|cn&dn)+(bn^pn)|0,Pt=((un=Zn+((yn|Yn)&Nn|yn&Yn)|0)>>>0>>0?rn+1|0:rn)+Pt|0,Pt=(In=In+un|0)>>>0>>0?Pt+1|0:Pt,nn[tn>>2]=In,nn[tn+4>>2]=Pt,rn=mn+Gn|0,rn=(pn=sn)>>>0>(sn=sn+on|0)>>>0?rn+1|0:rn,nn[tn+32>>2]=sn,nn[tn+36>>2]=rn,64!=(0|Un);)dn=((Un=Un+16|0)<<3)+en|0,on=nn[Vn>>2],cn=nn[Vn+4>>2],On=nn[Qn>>2],mn=Pt=nn[Qn+4>>2],rn=Pt,In=Pt=nn[En+4>>2],Pt=_A(Yn=nn[En>>2],Pt,45),sn=bn,pn=((63&In)<<26|Yn>>>6)^(Pt=_A(Yn,In,3)^Pt),Pt=(In>>>6^(un=bn^sn))+rn|0,rn=((sn=pn+On|0)>>>0>>0?Pt+1|0:Pt)+cn|0,rn=(Pt=sn+on|0)>>>0>>0?rn+1|0:rn,on=sn=nn[Jn+4>>2],sn=_A(cn=nn[Jn>>2],sn,63),un=bn,sn=((127&on)<<25|cn>>>7)^_A(cn,on,56)^sn,rn=(bn^un^on>>>7)+rn|0,sn=rn=sn>>>0>(yn=sn+Pt|0)>>>0?rn+1|0:rn,nn[dn>>2]=yn,nn[dn+4>>2]=rn,cn=(En=nn[Fn>>2])+cn|0,Pt=(dn=nn[Fn+4>>2])+on|0,rn=cn>>>0>>0?Pt+1|0:Pt,on=Pt=nn[An+4>>2],Pt=_A(vn=nn[An>>2],Pt,45),un=bn,pn=cn,cn=((63&on)<<26|vn>>>6)^_A(vn,on,3)^Pt,rn=(bn^un^on>>>6)+rn|0,cn=cn>>>0>(pn=pn+cn|0)>>>0?rn+1|0:rn,rn=_A(un=nn[Hn>>2],Pt=nn[Hn+4>>2],63),Zn=bn,hn=pn,pn=((127&Pt)<<25|un>>>7)^_A(un,Pt,56)^rn,rn=(bn^Zn^Pt>>>7)+cn|0,cn=rn=pn>>>0>(Nn=hn+pn|0)>>>0?rn+1|0:rn,nn[Vn+136>>2]=Nn,nn[Vn+140>>2]=rn,rn=(Fn=nn[wn>>2])+un|0,Pt=(un=nn[wn+4>>2])+Pt|0,pn=_A(yn,sn,45),Zn=bn,pn=(Gn=((63&sn)<<26|yn>>>6)^_A(yn,sn,3)^pn)+rn|0,rn=(bn^Zn^sn>>>6)+(rn>>>0>>0?Pt+1|0:Pt)|0,rn=pn>>>0>>0?rn+1|0:rn,Zn=Pt=nn[Ln+4>>2],Pt=_A(Gn=nn[Ln>>2],Pt,63),gn=bn,hn=pn,pn=((127&Zn)<<25|Gn>>>7)^_A(Gn,Zn,56)^Pt,rn=(bn^gn^Zn>>>7)+rn|0,pn=rn=pn>>>0>(Rn=hn+pn|0)>>>0?rn+1|0:rn,nn[Vn+144>>2]=Rn,nn[Vn+148>>2]=rn,Gn=(Jn=nn[xn>>2])+Gn|0,Pt=(Pt=Zn)+(Zn=nn[xn+4>>2])|0,rn=Gn>>>0>>0?Pt+1|0:Pt,Pt=_A(Nn,cn,45),gn=bn,Wn=((63&cn)<<26|Nn>>>6)^_A(Nn,cn,3)^Pt,rn=(bn^gn^cn>>>6)+rn|0,rn=(Gn=Wn+Gn|0)>>>0>>0?rn+1|0:rn,gn=Pt=nn[kn+4>>2],Pt=_A(Wn=nn[kn>>2],Pt,63),An=bn,hn=Gn,Gn=((127&gn)<<25|Wn>>>7)^_A(Wn,gn,56)^Pt,rn=(bn^An^gn>>>7)+rn|0,Gn=rn=Gn>>>0>(Hn=hn+Gn|0)>>>0?rn+1|0:rn,nn[Vn+152>>2]=Hn,nn[Vn+156>>2]=rn,Pt=(Ln=nn[Tn>>2])+Wn|0,rn=(rn=gn)+(gn=nn[Tn+4>>2])|0,Wn=_A(Rn,pn,45),An=bn,Wn=((63&pn)<<26|Rn>>>6)^_A(Rn,pn,3)^Wn,rn=(bn^An^pn>>>6)+(Pt>>>0>>0?rn+1|0:rn)|0,Wn=(hn=Wn+Pt|0)>>>0>>0?rn+1|0:rn,rn=_A(An=nn[Cn>>2],Pt=nn[Cn+4>>2],63),kn=bn,wn=hn,hn=((127&Pt)<<25|An>>>7)^(rn=_A(An,Pt,56)^rn),rn=(Pt>>>7^(Cn=bn^kn))+Wn|0,Wn=rn=hn>>>0>(kn=wn+hn|0)>>>0?rn+1|0:rn,nn[Vn+160>>2]=kn,nn[Vn+164>>2]=rn,Pt=Pt+In|0,Pt=(rn=An+Yn|0)>>>0>>0?Pt+1|0:Pt,An=_A(Hn,Gn,45),hn=bn,An=(Cn=((63&Gn)<<26|Hn>>>6)^_A(Hn,Gn,3)^An)+rn|0,rn=(bn^hn^Gn>>>6)+Pt|0,rn=An>>>0>>0?rn+1|0:rn,hn=nn[fn>>2],fn=Pt=nn[fn+4>>2],Pt=_A(hn,Pt,63),Cn=bn,Pt=_A(hn,fn,56)^Pt,wn=An,rn=(fn>>>7^(Qn=bn^Cn))+rn|0,An=rn=(An=((127&fn)<<25|hn>>>7)^Pt)>>>0>(Cn=wn+An|0)>>>0?rn+1|0:rn,nn[Vn+168>>2]=Cn,nn[Vn+172>>2]=rn,Pt=on+fn|0,Pt=(rn=hn+vn|0)>>>0>>0?Pt+1|0:Pt,wn=hn=nn[Xn+4>>2],hn=_A(Qn=nn[Xn>>2],hn,63),fn=bn,hn=(Xn=((127&wn)<<25|Qn>>>7)^_A(Qn,wn,56)^hn)+rn|0,rn=(bn^fn^wn>>>7)+Pt|0,Pt=hn>>>0>>0?rn+1|0:rn,rn=_A(kn,Wn,45),fn=bn,rn=_A(kn,Wn,3)^rn,Xn=bn^fn,fn=hn,Pt=(Wn>>>6^Xn)+Pt|0,hn=Pt=(hn=((63&Wn)<<26|kn>>>6)^rn)>>>0>(fn=fn+hn|0)>>>0?Pt+1|0:Pt,nn[Vn+176>>2]=fn,nn[Vn+180>>2]=Pt,xn=nn[Bn>>2],Bn=Pt=nn[Bn+4>>2],Xn=Pt,Pt=_A(On,mn,63),rn=bn,Tn=((127&mn)<<25|On>>>7)^_A(On,mn,56)^Pt,Pt=(bn^rn^mn>>>7)+cn|0,rn=((Nn=Tn+Nn|0)>>>0>>0?Pt+1|0:Pt)+Xn|0,rn=(Pt=Nn+xn|0)>>>0>>0?rn+1|0:rn,cn=_A(fn,hn,45),Nn=bn,Xn=(cn=((63&hn)<<26|fn>>>6)^_A(fn,hn,3)^cn)+Pt|0,Pt=(bn^Nn^hn>>>6)+rn|0,cn=Pt=cn>>>0>Xn>>>0?Pt+1|0:Pt,nn[Vn+192>>2]=Xn,nn[Vn+196>>2]=Pt,rn=sn+wn|0,rn=(Pt=yn+Qn|0)>>>0>>0?rn+1|0:rn,Nn=_A(xn,Bn,63),Qn=bn,wn=((127&Bn)<<25|xn>>>7)^_A(xn,Bn,56)^Nn,rn=(bn^Qn^Bn>>>7)+rn|0,Pt=(Nn=wn+Pt|0)>>>0>>0?rn+1|0:rn,rn=_A(Cn,An,45),Qn=bn,rn=_A(Cn,An,3)^rn,Bn=Nn,Pt=(An>>>6^(wn=bn^Qn))+Pt|0,Nn=Pt=(Nn=((63&An)<<26|Cn>>>6)^rn)>>>0>(Qn=Bn+Nn|0)>>>0?Pt+1|0:Pt,nn[Vn+184>>2]=Qn,nn[Vn+188>>2]=Pt,Pt=_A(Fn,un,63),rn=bn,Pt=((127&un)<<25|Fn>>>7)^_A(Fn,un,56)^Pt,rn=(bn^rn^un>>>7)+dn|0,Pt=Gn+(Pt>>>0>(wn=Pt+En|0)>>>0?rn+1|0:rn)|0,Pt=(rn=Hn+wn|0)>>>0>>0?Pt+1|0:Pt,Gn=_A(Xn,cn,45),Hn=bn,Gn=_A(Xn,cn,3)^Gn,wn=bn^Hn,Hn=(Gn^=(63&cn)<<26|Xn>>>6)+rn|0,rn=(cn>>>6^wn)+Pt|0,Gn=rn=Gn>>>0>Hn>>>0?rn+1|0:rn,nn[Vn+208>>2]=Hn,nn[Vn+212>>2]=rn,Pt=_A(En,dn,63),rn=bn,wn=_A(En,dn,56)^Pt,rn=((Pt=dn>>>7|0)^bn^rn)+mn|0,Pt=pn+((dn=(En=wn^((127&dn)<<25|En>>>7))+On|0)>>>0>>0?rn+1|0:rn)|0,Pt=(rn=dn+Rn|0)>>>0>>0?Pt+1|0:Pt,mn=_A(Qn,Nn,45),dn=bn,pn=(mn=((63&Nn)<<26|Qn>>>6)^_A(Qn,Nn,3)^mn)+rn|0,rn=(bn^dn^Nn>>>6)+Pt|0,mn=rn=mn>>>0>pn>>>0?rn+1|0:rn,nn[Vn+200>>2]=pn,nn[Vn+204>>2]=rn,Pt=_A(Ln,gn,63),rn=bn,En=((127&gn)<<25|Ln>>>7)^_A(Ln,gn,56)^Pt,Pt=(bn^rn^gn>>>7)+Zn|0,rn=An+((dn=En+Jn|0)>>>0>>0?Pt+1|0:Pt)|0,rn=(Pt=dn+Cn|0)>>>0>>0?rn+1|0:rn,dn=_A(Hn,Gn,45),An=bn,En=Pt,Pt=Gn>>>6|0,dn=((63&Gn)<<26|Hn>>>6)^_A(Hn,Gn,3)^dn,rn=(Pt^bn^An)+rn|0,dn=rn=dn>>>0>(Gn=En+dn|0)>>>0?rn+1|0:rn,nn[Vn+224>>2]=Gn,nn[Vn+228>>2]=rn,Pt=_A(Jn,Zn,63),rn=bn,Pt=_A(Jn,Zn,56)^Pt,An=bn^rn,En=((127&Zn)<<25|Jn>>>7)^Pt,Pt=((rn=Zn>>>7|0)^An)+un|0,rn=Wn+((Zn=En+Fn|0)>>>0>>0?Pt+1|0:Pt)|0,rn=(Pt=Zn+kn|0)>>>0>>0?rn+1|0:rn,un=_A(pn,mn,45),Zn=bn,An=Pt,Pt=mn>>>6|0,mn=((63&mn)<<26|pn>>>6)^_A(pn,mn,3)^un,Pt=(Pt^bn^Zn)+rn|0,mn=Pt=(un=An+mn|0)>>>0>>0?Pt+1|0:Pt,nn[Vn+216>>2]=un,nn[Vn+220>>2]=Pt,Pt=_A(vn,on,63),rn=bn,Zn=((127&on)<<25|vn>>>7)^_A(vn,on,56)^Pt,rn=(bn^rn^on>>>7)+In|0,rn=Nn+((Pt=Zn+Yn|0)>>>0>>0?rn+1|0:rn)|0,Pt=(pn=Pt+Qn|0)>>>0>>0?rn+1|0:rn,rn=_A(Gn,dn,45),Zn=bn,An=pn,pn=_A(Gn,dn,3)^rn,rn=dn>>>6|0,dn=An+(pn^=(63&dn)<<26|Gn>>>6)|0,Pt=(rn^bn^Zn)+Pt|0,nn[Vn+240>>2]=dn,nn[Vn+244>>2]=dn>>>0>>0?Pt+1|0:Pt,Pt=_A(Yn,In,63),rn=bn,Pt=_A(Yn,In,56)^Pt,dn=bn^rn,rn=((rn=In>>>7|0)^dn)+gn|0,Pt=hn+((Pt^=(127&In)<<25|Yn>>>7)>>>0>(In=Pt+Ln|0)>>>0?rn+1|0:rn)|0,Pt=(rn=In+fn|0)>>>0>>0?Pt+1|0:Pt,In=_A(un,mn,45),dn=bn,pn=rn,rn=mn>>>6|0,In=((63&mn)<<26|un>>>6)^_A(un,mn,3)^In,rn=(rn^bn^dn)+Pt|0,In=rn=In>>>0>(mn=pn+In|0)>>>0?rn+1|0:rn,nn[Vn+232>>2]=mn,nn[Vn+236>>2]=rn,Pt=_A(yn,sn,63),rn=bn,pn=_A(yn,sn,56)^Pt,rn=((Pt=sn>>>7|0)^bn^rn)+on|0,Pt=cn+((sn=(dn=pn^((127&sn)<<25|yn>>>7))+vn|0)>>>0>>0?rn+1|0:rn)|0,Pt=(rn=sn+Xn|0)>>>0>>0?Pt+1|0:Pt,sn=_A(mn,In,45),on=bn,pn=rn,rn=In>>>6|0,In=pn+(sn=((63&In)<<26|mn>>>6)^_A(mn,In,3)^sn)|0,rn=(rn^bn^on)+Pt|0,nn[Vn+248>>2]=In,nn[Vn+252>>2]=In>>>0>>0?rn+1|0:rn;Pt=Pt+nn[Wt+4>>2]|0,Pt=(en=In+nn[Wt>>2]|0)>>>0>>0?Pt+1|0:Pt,nn[Wt>>2]=en,nn[Wt+4>>2]=Pt,rn=nn[Wt+12>>2]+nn[tn+12>>2]|0,Pt=(en=nn[tn+8>>2])+nn[Wt+8>>2]|0,nn[Wt+8>>2]=Pt,nn[Wt+12>>2]=Pt>>>0>>0?rn+1|0:rn,rn=nn[Wt+20>>2]+nn[tn+20>>2]|0,Pt=(en=nn[tn+16>>2])+nn[Wt+16>>2]|0,nn[Wt+16>>2]=Pt,nn[Wt+20>>2]=Pt>>>0>>0?rn+1|0:rn,Pt=nn[Wt+28>>2]+nn[tn+28>>2]|0,en=(rn=nn[tn+24>>2])+nn[Wt+24>>2]|0,nn[Wt+24>>2]=en,nn[Wt+28>>2]=en>>>0>>0?Pt+1|0:Pt,rn=nn[Wt+36>>2]+nn[tn+36>>2]|0,Pt=(en=nn[tn+32>>2])+nn[Wt+32>>2]|0,nn[Wt+32>>2]=Pt,nn[Wt+36>>2]=Pt>>>0>>0?rn+1|0:rn,Pt=nn[Wt+44>>2]+nn[tn+44>>2]|0,en=(rn=nn[tn+40>>2])+nn[Wt+40>>2]|0,nn[Wt+40>>2]=en,nn[Wt+44>>2]=en>>>0>>0?Pt+1|0:Pt,rn=nn[Wt+52>>2]+nn[tn+52>>2]|0,Pt=(en=nn[tn+48>>2])+nn[Wt+48>>2]|0,nn[Wt+48>>2]=Pt,nn[Wt+52>>2]=Pt>>>0>>0?rn+1|0:rn,rn=nn[Wt+60>>2]+nn[tn+60>>2]|0,Pt=(en=nn[tn+56>>2])+nn[Wt+56>>2]|0,nn[Wt+56>>2]=Pt,nn[Wt+60>>2]=Pt>>>0>>0?rn+1|0:rn}function s(Wt){var Pt,en,nn,rn,In,sn,on,cn,dn,un,pn,mn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0,Fn=0,Qn=0,fn=0,Hn=0,Cn=0,Xn=0,kn=0,Jn=0,Ln=0,Bn=0,xn=0,On=0,Tn=0,Un=0,Mn=0,zn=0,Sn=0,jn=0,Dn=0,_n=0,Kn=0,Pn=0;Zn=(Fn=an[Wt+44|0]|an[Wt+45|0]<<8|an[Wt+46|0]<<16|an[Wt+47|0]<<24)>>>5&2097151,hn=PA(Pt=(an[Wt+60|0]|an[Wt+61|0]<<8|an[Wt+62|0]<<16|an[Wt+63|0]<<24)>>>3|0,0,-683901,-1),Gn=(mn=an[Wt+44|0])<<16&2031616|an[Wt+42|0]|an[Wt+43|0]<<8,mn=bn,gn=mn=Gn>>>0>(vn=hn+Gn|0)>>>0?mn+1|0:mn,Rn=mn=mn-((vn>>>0<4293918720)-1|0)|0,hn=mn>>21,mn=(Gn=Zn)+(Zn=(2097151&mn)<<11|(Wn=vn- -1048576|0)>>>21)|0,Gn=hn,kn=Gn=mn>>>0>>0?Gn+1|0:Gn,zn=mn,Vn=PA(mn,Gn,-683901,-1),yn=bn,Nn=PA(en=(an[Wt+49|0]|an[Wt+50|0]<<8|an[Wt+51|0]<<16|an[Wt+52|0]<<24)>>>7&2097151,0,-997805,-1),hn=(mn=an[Wt+27|0])>>>24|0,Zn=mn<<8|(wn=an[Wt+23|0]|an[Wt+24|0]<<8|an[Wt+25|0]<<16|an[Wt+26|0]<<24)>>>24,Gn=(mn=an[Wt+28|0])>>>16|0,Gn=2097151&((3&(Gn|=hn))<<30|(mn=Zn|mn<<16)>>>2),mn=bn,mn=Gn>>>0>(hn=Gn+Nn|0)>>>0?mn+1|0:mn,Gn=PA(Un=(Yn=an[Wt+52|0]|an[Wt+53|0]<<8|an[Wt+54|0]<<16|an[Wt+55|0]<<24)>>>4&2097151,0,654183,0),mn=bn+mn|0,Nn=hn=Gn+hn|0,hn=Gn>>>0>hn>>>0?mn+1|0:mn,An=(Gn=an[Wt+48|0])<<8|Fn>>>24,Gn=mn=Gn>>>24|0,mn=PA(nn=2097151&((3&(Fn=(mn=(Zn=an[Wt+49|0])>>>16|0)|Gn))<<30|(Gn=(Zn<<=16)|An)>>>2),0,136657,0),hn=bn+hn|0,hn=mn>>>0>(Gn=mn+Nn|0)>>>0?hn+1|0:hn,Zn=(mn=PA(rn=(an[Wt+57|0]|an[Wt+58|0]<<8|an[Wt+59|0]<<16|an[Wt+60|0]<<24)>>>6&2097151,0,666643,0))+Gn|0,Gn=bn+hn|0,Nn=Zn,hn=mn>>>0>Zn>>>0?Gn+1|0:Gn,Gn=(mn=an[Wt+56|0])>>>24|0,An=mn<<8|Yn>>>24,Gn=PA(In=2097151&((1&(Yn=(mn=(Zn=an[Wt+57|0])>>>16|0)|Gn))<<31|(Gn=(Zn<<=16)|An)>>>1),0,470296,0),mn=bn+hn|0,Gn=(mn=(hn=Zn=Gn+Nn|0)>>>0>>0?mn+1|0:mn)+yn|0,Gn=hn>>>0>(Zn=hn+Vn|0)>>>0?Gn+1|0:Gn,Qn=hn- -1048576|0,Jn=hn=mn-((hn>>>0<4293918720)-1|0)|0,yn=Zn-(mn=-2097152&Qn)|0,Vn=Gn-((mn>>>0>Zn>>>0)+hn|0)|0,Gn=PA(en,0,654183,0),mn=bn,mn=Gn>>>0>(hn=Gn+(wn>>>5&2097151)|0)>>>0?mn+1|0:mn,Zn=(Gn=hn)+(hn=PA(Un,0,470296,0))|0,Gn=bn+mn|0,Gn=hn>>>0>Zn>>>0?Gn+1|0:Gn,mn=PA(nn,Sn,-997805,-1),Gn=bn+Gn|0,Gn=mn>>>0>(hn=mn+Zn|0)>>>0?Gn+1|0:Gn,Zn=(mn=hn)+(hn=PA(In,jn,666643,0))|0,mn=bn+Gn|0,An=Zn,Zn=hn>>>0>Zn>>>0?mn+1|0:mn,Nn=(hn=PA(en,0,470296,0))+(mn=(mn=an[Wt+23|0])<<16&2031616|an[Wt+21|0]|an[Wt+22|0]<<8)|0,hn=bn,hn=mn>>>0>Nn>>>0?hn+1|0:hn,Nn=(Gn=PA(Un,0,666643,0))+Nn|0,mn=bn+hn|0,hn=PA(nn,Sn,654183,0),Gn=bn+(Gn>>>0>Nn>>>0?mn+1|0:mn)|0,Yn=Gn=hn>>>0>(wn=hn+Nn|0)>>>0?Gn+1|0:Gn,Tn=Gn=Gn-((wn>>>0<4293918720)-1|0)|0,mn=(mn=Gn>>>21|0)+Zn|0,hn=mn=(Gn=(2097151&Gn)<<11|(Nn=wn- -1048576|0)>>>21)>>>0>(An=Gn+An|0)>>>0?mn+1|0:mn,En=Gn=mn-((An>>>0<4293918720)-1|0)|0,mn=yn,yn=(2097151&Gn)<<11|(Zn=An- -1048576|0)>>>21,Gn=(Gn>>21)+Vn|0,Fn=yn=(Gn=yn>>>0>(fn=mn+yn|0)>>>0?Gn+1|0:Gn)-((fn>>>0<4293918720)-1|0)|0,Mn=fn-(mn=-2097152&(Vn=fn- -1048576|0))|0,Dn=Gn-((mn>>>0>fn>>>0)+yn|0)|0,mn=PA(zn,kn,136657,0),hn=bn+hn|0,hn=mn>>>0>(Gn=mn+An|0)>>>0?hn+1|0:hn,Xn=Gn-(mn=-2097152&Zn)|0,Hn=hn-((mn>>>0>Gn>>>0)+En|0)|0,fn=vn-(mn=-2097152&Wn)|0,Rn=gn-((mn>>>0>vn>>>0)+Rn|0)|0,gn=PA(Pt,0,136657,0),Gn=(mn=an[Wt+40|0])>>>24|0,Zn=mn<<8|(Wn=an[Wt+36|0]|an[Wt+37|0]<<8|an[Wt+38|0]<<16|an[Wt+39|0]<<24)>>>24,hn=(mn=an[Wt+41|0])>>>16|0,Gn=(hn|=Gn)>>>3|0,hn=(7&hn)<<29|(mn=Zn|mn<<16)>>>3,mn=Gn+bn|0,mn=hn>>>0>(Zn=hn+gn|0)>>>0?mn+1|0:mn,Gn=PA(rn,0,-683901,-1),mn=bn+mn|0,mn=Gn>>>0>(hn=Gn+Zn|0)>>>0?mn+1|0:mn,An=hn,Gn=PA(Pt,0,-997805,-1),hn=bn,hn=Gn>>>0>(Zn=Gn+(Wn>>>6&2097151)|0)>>>0?hn+1|0:hn,Wn=(Gn=Zn)+(Zn=PA(rn,0,136657,0))|0,Gn=bn+hn|0,hn=PA(In,jn,-683901,-1),Gn=bn+(Zn>>>0>Wn>>>0?Gn+1|0:Gn)|0,yn=Gn=hn>>>0>(Ln=hn+Wn|0)>>>0?Gn+1|0:Gn,_n=hn=Gn-((Ln>>>0<4293918720)-1|0)|0,mn=mn+(Gn=hn>>21)|0,Wn=mn=(hn=(2097151&hn)<<11|(vn=Ln- -1048576|0)>>>21)>>>0>(En=hn+An|0)>>>0?mn+1|0:mn,Bn=mn=mn-((En>>>0<4293918720)-1|0)|0,Gn=(Gn=mn>>21)+Rn|0,On=Gn=(mn=(hn=(2097151&mn)<<11|(An=En- -1048576|0)>>>21)+fn|0)>>>0>>0?Gn+1|0:Gn,xn=mn,Gn=PA(mn,Gn,-683901,-1),mn=bn+Hn|0,Cn=hn=Gn+Xn|0,Zn=Gn>>>0>hn>>>0?mn+1|0:mn,fn=wn-(mn=-2097152&Nn)|0,Rn=Yn-((4095&Tn)+(mn>>>0>wn>>>0)|0)|0,wn=PA(en,0,666643,0),mn=(Gn=an[Wt+19|0])>>>24|0,Nn=Gn<<8|(Yn=an[Wt+15|0]|an[Wt+16|0]<<8|an[Wt+17|0]<<16|an[Wt+18|0]<<24)>>>24,hn=mn,Gn=(7&(hn|=Gn=(mn=an[Wt+20|0])>>>16|0))<<29|(Gn=(mn<<=16)|Nn)>>>3,hn=bn+(hn>>>3|0)|0,hn=Gn>>>0>(Nn=Gn+wn|0)>>>0?hn+1|0:hn,mn=PA(nn,Sn,470296,0),Gn=bn+hn|0,mn=mn>>>0>(Nn=mn+Nn|0)>>>0?Gn+1|0:Gn,hn=PA(nn,Sn,666643,0),Gn=bn,wn=Gn=hn>>>0>(Xn=hn+(Yn>>>6&2097151)|0)>>>0?Gn+1|0:Gn,Kn=hn=Gn-((Xn>>>0<4293918720)-1|0)|0,mn=mn+(Gn=hn>>>21|0)|0,Yn=mn=(hn=(2097151&hn)<<11|(gn=Xn- -1048576|0)>>>21)>>>0>(Hn=hn+Nn|0)>>>0?mn+1|0:mn,Pn=mn=mn-((Hn>>>0<4293918720)-1|0)|0,Gn=(Gn=mn>>>21|0)+Rn|0,Gn=(mn=(2097151&mn)<<11|(Nn=Hn- -1048576|0)>>>21)>>>0>(hn=mn+fn|0)>>>0?Gn+1|0:Gn,Rn=(mn=hn)+(hn=PA(zn,kn,-997805,-1))|0,mn=bn+Gn|0,mn=hn>>>0>Rn>>>0?mn+1|0:mn,Tn=Gn=En-(hn=-2097152&An)|0,sn=An=Wn-((hn>>>0>En>>>0)+Bn|0)|0,hn=PA(xn,On,136657,0),mn=bn+mn|0,mn=hn>>>0>(Wn=hn+Rn|0)>>>0?mn+1|0:mn,hn=PA(Gn,An,-683901,-1),Gn=bn+mn|0,Wn=Gn=hn>>>0>(Rn=hn+Wn|0)>>>0?Gn+1|0:Gn,Bn=mn=Gn-((Rn>>>0<4293918720)-1|0)|0,Gn=(2097151&mn)<<11|(An=Rn- -1048576|0)>>>21,mn=(mn>>21)+Zn|0,Cn=Gn=(mn=Gn>>>0>(En=Gn+Cn|0)>>>0?mn+1|0:mn)-((En>>>0<4293918720)-1|0)|0,fn=(2097151&Gn)<<11|(Zn=En- -1048576|0)>>>21,Gn=(Gn>>21)+Dn|0,cn=Mn=fn+Mn|0,fn=fn>>>0>Mn>>>0?Gn+1|0:Gn,dn=En-(Gn=-2097152&Zn)|0,un=mn-((Gn>>>0>En>>>0)+Cn|0)|0,Mn=Rn-(mn=-2097152&An)|0,Dn=Wn-((mn>>>0>Rn>>>0)+Bn|0)|0,hn=(mn=PA(zn,kn,654183,0))+(Hn-(Gn=-2097152&Nn)|0)|0,Gn=bn+(Yn-((2147483647&Pn)+(Gn>>>0>Hn>>>0)|0)|0)|0,Gn=mn>>>0>hn>>>0?Gn+1|0:Gn,mn=PA(xn,On,-997805,-1),Gn=bn+Gn|0,Gn=mn>>>0>(hn=mn+hn|0)>>>0?Gn+1|0:Gn,Zn=(mn=hn)+(hn=PA(Tn,sn,136657,0))|0,mn=bn+Gn|0,Cn=Zn,Wn=hn>>>0>Zn>>>0?mn+1|0:mn,Hn=Ln-(mn=-2097152&vn)|0,En=yn-((mn>>>0>Ln>>>0)+_n|0)|0,Yn=PA(Un,0,-683901,-1),mn=(Gn=an[Wt+35|0])>>>24|0,Zn=Gn<<8|(Nn=an[Wt+31|0]|an[Wt+32|0]<<8|an[Wt+33|0]<<16|an[Wt+34|0]<<24)>>>24,hn=mn,Gn=(mn=an[Wt+36|0])>>>16|0,Gn|=hn,hn=bn,hn=(mn=2097151&((1&Gn)<<31|(mn=mn<<16|Zn)>>>1))>>>0>(Gn=mn+Yn|0)>>>0?hn+1|0:hn,Zn=(mn=PA(Pt,0,654183,0))+Gn|0,Gn=bn+hn|0,Gn=mn>>>0>Zn>>>0?Gn+1|0:Gn,hn=PA(rn,0,-997805,-1),mn=bn+Gn|0,mn=hn>>>0>(Zn=hn+Zn|0)>>>0?mn+1|0:mn,Gn=PA(In,jn,136657,0),mn=bn+mn|0,An=hn=Gn+Zn|0,Zn=Gn>>>0>hn>>>0?mn+1|0:mn,mn=PA(en,0,-683901,-1),Gn=bn,Gn=mn>>>0>(hn=mn+(Nn>>>4&2097151)|0)>>>0?Gn+1|0:Gn,Nn=(mn=PA(Un,0,136657,0))+hn|0,hn=bn+Gn|0,hn=mn>>>0>Nn>>>0?hn+1|0:hn,mn=PA(Pt,0,470296,0),Gn=bn+hn|0,Gn=mn>>>0>(Nn=mn+Nn|0)>>>0?Gn+1|0:Gn,Nn=(hn=PA(rn,0,654183,0))+Nn|0,mn=bn+Gn|0,Gn=PA(In,jn,-997805,-1),mn=bn+(hn>>>0>Nn>>>0?mn+1|0:mn)|0,Yn=mn=Gn>>>0>(yn=Gn+Nn|0)>>>0?mn+1|0:mn,pn=Gn=mn-((yn>>>0<4293918720)-1|0)|0,hn=(mn=Gn>>21)+Zn|0,Rn=Gn=(hn=(Gn=(2097151&Gn)<<11|(Nn=yn- -1048576|0)>>>21)>>>0>(vn=Gn+An|0)>>>0?hn+1|0:hn)-((vn>>>0<4293918720)-1|0)|0,mn=(mn=Gn>>21)+En|0,Bn=mn=(Gn=(Zn=(2097151&Gn)<<11|(An=vn- -1048576|0)>>>21)+Hn|0)>>>0>>0?mn+1|0:mn,Zn=Cn,Cn=Gn,mn=PA(Gn,mn,-683901,-1),Gn=bn+Wn|0,En=Zn=Zn+mn|0,Zn=mn>>>0>Zn>>>0?Gn+1|0:Gn,Wn=(mn=PA(zn,kn,470296,0))+(Xn-(Gn=-2097152&gn)|0)|0,Gn=bn+(wn-((2047&Kn)+(Gn>>>0>Xn>>>0)|0)|0)|0,Gn=mn>>>0>Wn>>>0?Gn+1|0:Gn,gn=(mn=Wn)+(Wn=PA(xn,On,654183,0))|0,mn=bn+Gn|0,mn=Wn>>>0>gn>>>0?mn+1|0:mn,Wn=PA(Tn,sn,-997805,-1),Gn=bn+mn|0,Gn=Wn>>>0>(gn=Wn+gn|0)>>>0?Gn+1|0:Gn,Ln=An=vn-(mn=-2097152&An)|0,on=Wn=hn-((mn>>>0>vn>>>0)+Rn|0)|0,hn=PA(Cn,Bn,136657,0),mn=bn+Gn|0,mn=hn>>>0>(gn=hn+gn|0)>>>0?mn+1|0:mn,hn=PA(An,Wn,-683901,-1),Gn=bn+mn|0,Wn=Gn=hn>>>0>(wn=hn+gn|0)>>>0?Gn+1|0:Gn,Hn=mn=Gn-((wn>>>0<4293918720)-1|0)|0,Gn=(2097151&mn)<<11|(An=wn- -1048576|0)>>>21,mn=(mn>>21)+Zn|0,En=Gn=(mn=Gn>>>0>(gn=Gn+En|0)>>>0?mn+1|0:mn)-((gn>>>0<4293918720)-1|0)|0,vn=(2097151&Gn)<<11|(Zn=gn- -1048576|0)>>>21,Gn=(Gn>>21)+Dn|0,_n=Rn=vn+Mn|0,Rn=vn>>>0>Rn>>>0?Gn+1|0:Gn,Kn=gn-(Gn=-2097152&Zn)|0,Pn=mn-((Gn>>>0>gn>>>0)+En|0)|0,Mn=wn-(mn=-2097152&An)|0,Dn=Wn-((mn>>>0>wn>>>0)+Hn|0)|0,Wn=PA(zn,kn,666643,0),mn=(Gn=an[Wt+14|0])>>>24|0,Zn=Gn<<8|(En=an[Wt+10|0]|an[Wt+11|0]<<8|an[Wt+12|0]<<16|an[Wt+13|0]<<24)>>>24,hn=mn,Gn=(mn=an[Wt+15|0])>>>16|0,Gn|=hn,hn=bn,hn=(mn=2097151&((1&Gn)<<31|(mn=mn<<16|Zn)>>>1))>>>0>(Gn=mn+Wn|0)>>>0?hn+1|0:hn,Zn=(mn=Gn)+(Gn=PA(xn,On,470296,0))|0,mn=bn+hn|0,mn=Gn>>>0>Zn>>>0?mn+1|0:mn,Gn=PA(Tn,sn,654183,0),mn=bn+mn|0,mn=Gn>>>0>(hn=Gn+Zn|0)>>>0?mn+1|0:mn,Zn=(Gn=hn)+(hn=PA(Cn,Bn,-997805,-1))|0,Gn=bn+mn|0,Gn=hn>>>0>Zn>>>0?Gn+1|0:Gn,mn=PA(Ln,on,136657,0),Gn=bn+Gn|0,wn=hn=mn+Zn|0,Zn=mn>>>0>hn>>>0?Gn+1|0:Gn,Nn=yn-(mn=-2097152&Nn)|0,Wn=Yn-((mn>>>0>yn>>>0)+pn|0)|0,hn=PA(en,0,136657,0),mn=bn,mn=(Gn=(an[Wt+28|0]|an[Wt+29|0]<<8|an[Wt+30|0]<<16|an[Wt+31|0]<<24)>>>7&2097151)>>>0>(hn=Gn+hn|0)>>>0?mn+1|0:mn,An=(Gn=hn)+(hn=PA(Un,0,-997805,-1))|0,Gn=bn+mn|0,Gn=hn>>>0>An>>>0?Gn+1|0:Gn,mn=PA(nn,Sn,-683901,-1),Gn=bn+Gn|0,Gn=mn>>>0>(hn=mn+An|0)>>>0?Gn+1|0:Gn,An=(mn=PA(Pt,0,666643,0))+hn|0,hn=bn+Gn|0,hn=mn>>>0>An>>>0?hn+1|0:hn,Gn=PA(rn,0,470296,0),mn=bn+hn|0,mn=Gn>>>0>(An=Gn+An|0)>>>0?mn+1|0:mn,Gn=PA(In,jn,654183,0),mn=bn+mn|0,Gn=(Jn>>21)+(Gn>>>0>(hn=Gn+An|0)>>>0?mn+1|0:mn)|0,vn=Gn=(An=(2097151&Jn)<<11|Qn>>>21)>>>0>(Qn=An+hn|0)>>>0?Gn+1|0:Gn,Jn=mn=Gn-((Qn>>>0<4293918720)-1|0)|0,An=(2097151&mn)<<11|(gn=Qn- -1048576|0)>>>21,mn=(mn>>21)+Wn|0,Xn=mn=(Gn=An+Nn|0)>>>0>>0?mn+1|0:mn,Hn=Gn,Gn=PA(Gn,mn,-683901,-1),mn=bn+Zn|0,An=hn=Gn+wn|0,Zn=Gn>>>0>hn>>>0?mn+1|0:mn,mn=PA(xn,On,666643,0),Gn=bn,Gn=mn>>>0>(hn=mn+(En>>>4&2097151)|0)>>>0?Gn+1|0:Gn,mn=PA(Tn,sn,470296,0),Gn=bn+Gn|0,Gn=mn>>>0>(hn=mn+hn|0)>>>0?Gn+1|0:Gn,Wn=(mn=PA(Cn,Bn,654183,0))+hn|0,hn=bn+Gn|0,hn=mn>>>0>Wn>>>0?hn+1|0:hn,Gn=PA(Ln,on,-997805,-1),mn=bn+hn|0,mn=Gn>>>0>(Wn=Gn+Wn|0)>>>0?mn+1|0:mn,Gn=PA(Hn,Xn,136657,0),mn=bn+mn|0,Yn=mn=Gn>>>0>(yn=Gn+Wn|0)>>>0?mn+1|0:mn,On=Gn=mn-((yn>>>0<4293918720)-1|0)|0,mn=An,An=(2097151&Gn)<<11|(Nn=yn- -1048576|0)>>>21,Gn=(Gn>>21)+Zn|0,xn=Zn=(Gn=(hn=mn+An|0)>>>0>>0?Gn+1|0:Gn)-((hn>>>0<4293918720)-1|0)|0,mn=(mn=Zn>>21)+Dn|0,zn=An=(Zn=(2097151&Zn)<<11|(Wn=hn- -1048576|0)>>>21)+Mn|0,wn=Zn>>>0>An>>>0?mn+1|0:mn,An=hn,hn=Gn,Zn=(Qn-(Gn=-2097152&gn)|0)+(gn=(2097151&Fn)<<11|Vn>>>21)|0,Gn=(vn-((Gn>>>0>Qn>>>0)+Jn|0)|0)+(Fn>>21)|0,En=Gn=Zn>>>0>>0?Gn+1|0:Gn,Un=Gn=Gn-((Zn>>>0<4293918720)-1|0)|0,Vn=mn=Gn>>21,mn=PA(kn=(2097151&Gn)<<11|(Jn=Zn- -1048576|0)>>>21,mn,-683901,-1),hn=bn+hn|0,hn=mn>>>0>(Gn=mn+An|0)>>>0?hn+1|0:hn,Sn=Gn-(mn=-2097152&Wn)|0,jn=hn-((mn>>>0>Gn>>>0)+xn|0)|0,mn=PA(kn,Vn,136657,0),Gn=Yn+bn|0,xn=(hn=mn+yn|0)-(mn=-2097152&Nn)|0,Qn=(Gn=hn>>>0>>0?Gn+1|0:Gn)-((mn>>>0>hn>>>0)+On|0)|0,Gn=PA(Tn,sn,666643,0),hn=bn,hn=(mn=(an[Wt+7|0]|an[Wt+8|0]<<8|an[Wt+9|0]<<16|an[Wt+10|0]<<24)>>>7&2097151)>>>0>(Gn=mn+Gn|0)>>>0?hn+1|0:hn,An=(mn=PA(Cn,Bn,470296,0))+Gn|0,Gn=bn+hn|0,Gn=mn>>>0>An>>>0?Gn+1|0:Gn,mn=PA(Ln,on,654183,0),Gn=bn+Gn|0,Gn=mn>>>0>(hn=mn+An|0)>>>0?Gn+1|0:Gn,An=(mn=hn)+(hn=PA(Hn,Xn,-997805,-1))|0,mn=bn+Gn|0,gn=An,An=hn>>>0>An>>>0?mn+1|0:mn,Yn=PA(Cn,Bn,666643,0),mn=(Gn=an[Wt+6|0])>>>24|0,Wn=Gn<<8|(On=an[Wt+2|0]|an[Wt+3|0]<<8|an[Wt+4|0]<<16|an[Wt+5|0]<<24)>>>24,hn=mn,Gn=(mn=an[Wt+7|0])>>>16|0,Gn=2097151&((3&(Gn|=hn))<<30|(mn=mn<<16|Wn)>>>2),mn=bn,mn=Gn>>>0>(hn=Gn+Yn|0)>>>0?mn+1|0:mn,Wn=(Gn=PA(Ln,on,470296,0))+hn|0,hn=bn+mn|0,hn=Gn>>>0>Wn>>>0?hn+1|0:hn,Gn=PA(Hn,Xn,654183,0),mn=bn+hn|0,Yn=mn=Gn>>>0>(vn=Gn+Wn|0)>>>0?mn+1|0:mn,Fn=mn=mn-((vn>>>0<4293918720)-1|0)|0,Gn=(hn=mn>>21)+An|0,yn=mn=(Gn=(mn=(2097151&mn)<<11|(Nn=vn- -1048576|0)>>>21)>>>0>(Wn=mn+gn|0)>>>0?Gn+1|0:Gn)-((Wn>>>0<4293918720)-1|0)|0,gn=(2097151&mn)<<11|(An=Wn- -1048576|0)>>>21,mn=(mn>>21)+Qn|0,xn=Cn=gn+xn|0,gn=gn>>>0>Cn>>>0?mn+1|0:mn,mn=PA(kn,Vn,-997805,-1),Gn=bn+Gn|0,Gn=mn>>>0>(hn=mn+Wn|0)>>>0?Gn+1|0:Gn,Tn=hn-(mn=-2097152&An)|0,Bn=Gn-((mn>>>0>hn>>>0)+yn|0)|0,Gn=PA(kn,Vn,654183,0),mn=Yn+bn|0,Cn=(hn=Gn+vn|0)-(Gn=-2097152&Nn)|0,Qn=(mn=hn>>>0>>0?mn+1|0:mn)-((Gn>>>0>hn>>>0)+Fn|0)|0,mn=PA(Ln,on,666643,0),Gn=bn,Gn=mn>>>0>(hn=mn+(On>>>5&2097151)|0)>>>0?Gn+1|0:Gn,mn=PA(Hn,Xn,470296,0),Gn=bn+Gn|0,Wn=hn=mn+hn|0,hn=mn>>>0>hn>>>0?Gn+1|0:Gn,An=PA(Hn,Xn,666643,0),Gn=(mn=an[Wt+2|0])<<16&2031616|an[0|Wt]|an[Wt+1|0]<<8,mn=bn,Yn=mn=Gn>>>0>(yn=An+Gn|0)>>>0?mn+1|0:mn,Xn=mn=mn-((yn>>>0<4293918720)-1|0)|0,An=(2097151&mn)<<11|(Nn=yn- -1048576|0)>>>21,mn=(mn>>21)+hn|0,hn=mn=An>>>0>(vn=An+Wn|0)>>>0?mn+1|0:mn,Fn=mn=mn-((vn>>>0<4293918720)-1|0)|0,An=(2097151&mn)<<11|(Wn=vn- -1048576|0)>>>21,mn=(mn>>21)+Qn|0,An=An>>>0>(Hn=An+Cn|0)>>>0?mn+1|0:mn,mn=PA(kn,Vn,470296,0),hn=hn+bn|0,hn=(Gn=mn+vn|0)>>>0>>0?hn+1|0:hn,vn=Gn-(mn=-2097152&Wn)|0,Wn=hn-((mn>>>0>Gn>>>0)+Fn|0)|0,Gn=PA(kn,Vn,666643,0),mn=bn+(Yn-(((hn=-2097152&Nn)>>>0>yn>>>0)+Xn|0)|0)|0,Gn=(hn=(mn=Gn>>>0>(Qn=Gn+(yn-hn|0)|0)>>>0?mn+1|0:mn)>>21)+Wn|0,mn=(mn=(Gn=(mn=(2097151&mn)<<11|Qn>>>21)>>>0>(Fn=mn+vn|0)>>>0?Gn+1|0:Gn)>>21)+An|0,Gn=(Gn=(mn=(Gn=(2097151&Gn)<<11|Fn>>>21)>>>0>(Vn=Gn+Hn|0)>>>0?mn+1|0:mn)>>21)+Bn|0,hn=(mn=(Gn=(mn=(2097151&mn)<<11|Vn>>>21)>>>0>(An=mn+Tn|0)>>>0?Gn+1|0:Gn)>>21)+gn|0,mn=(Gn=(hn=(Gn=(2097151&Gn)<<11|An>>>21)>>>0>(yn=Gn+xn|0)>>>0?hn+1|0:hn)>>21)+jn|0,Gn=(hn=(mn=(hn=(2097151&hn)<<11|yn>>>21)>>>0>(vn=hn+Sn|0)>>>0?mn+1|0:mn)>>21)+wn|0,wn=Wn=(mn=(2097151&mn)<<11|vn>>>21)+zn|0,mn=(mn=(Gn=mn>>>0>Wn>>>0?Gn+1|0:Gn)>>21)+Pn|0,Gn=(Gn=(mn=(Gn=(2097151&Gn)<<11|Wn>>>21)>>>0>(gn=Gn+Kn|0)>>>0?mn+1|0:mn)>>21)+Rn|0,hn=(mn=(Gn=(mn=(2097151&mn)<<11|gn>>>21)>>>0>(Yn=mn+_n|0)>>>0?Gn+1|0:Gn)>>21)+un|0,mn=(Gn=(hn=(Gn=(2097151&Gn)<<11|Yn>>>21)>>>0>(Nn=Gn+dn|0)>>>0?hn+1|0:hn)>>21)+fn|0,Jn=(Rn=Zn-(Gn=-2097152&Jn)|0)+((2097151&(mn=(hn=(2097151&hn)<<11|Nn>>>21)>>>0>(Wn=hn+cn|0)>>>0?mn+1|0:mn))<<11|Wn>>>21)|0,mn=(En-((Gn>>>0>Zn>>>0)+Un|0)|0)+(mn>>21)|0,En=Gn=(mn=Rn>>>0>Jn>>>0?mn+1|0:mn)>>21,Qn=(mn=PA(fn=(2097151&mn)<<11|Jn>>>21,Gn,666643,0))+(Gn=2097151&Qn)|0,mn=bn,Zn=mn=Gn>>>0>Qn>>>0?mn+1|0:mn,tn[0|Wt]=Qn,tn[Wt+1|0]=(255&mn)<<24|Qn>>>8,mn=2097151&Fn,Gn=PA(fn,En,470296,0)+mn|0,hn=bn,mn=(Zn>>21)+(mn>>>0>Gn>>>0?hn+1|0:hn)|0,mn=(Rn=(2097151&Zn)<<11|Qn>>>21)>>>0>(Fn=Rn+Gn|0)>>>0?mn+1|0:mn,tn[Wt+4|0]=(2047&mn)<<21|Fn>>>11,Gn=mn,hn=Fn,tn[Wt+3|0]=(7&mn)<<29|hn>>>3,tn[Wt+2|0]=31&((65535&Zn)<<16|Qn>>>16)|hn<<5,Zn=2097151&Vn,Vn=PA(fn,En,654183,0)+Zn|0,mn=bn,Fn=(2097151&Gn)<<11|hn>>>21,Gn=(Gn>>21)+(Zn=Zn>>>0>Vn>>>0?mn+1|0:mn)|0,mn=Gn=(Vn=Fn+Vn|0)>>>0>>0?Gn+1|0:Gn,tn[Wt+6|0]=(63&mn)<<26|Vn>>>6,Zn=Vn,Vn=0,tn[Wt+5|0]=Vn<<13|(1572864&hn)>>>19|Zn<<2,hn=2097151&An,An=PA(fn,En,-997805,-1)+hn|0,Gn=bn,Gn=hn>>>0>An>>>0?Gn+1|0:Gn,Vn=(2097151&(hn=mn))<<11|Zn>>>21,hn=(mn>>=21)+Gn|0,hn=(An=Vn+An|0)>>>0>>0?hn+1|0:hn,tn[Wt+9|0]=(511&hn)<<23|An>>>9,tn[Wt+8|0]=(1&hn)<<31|An>>>1,Gn=0,tn[Wt+7|0]=Gn<<18|(2080768&Zn)>>>14|An<<7,Gn=2097151&yn,Zn=PA(fn,En,136657,0)+Gn|0,mn=bn,mn=Gn>>>0>Zn>>>0?mn+1|0:mn,yn=(2097151&(Gn=hn))<<11|An>>>21,Gn=mn+(hn=Gn>>21)|0,Gn=(Zn=yn+Zn|0)>>>0>>0?Gn+1|0:Gn,tn[Wt+12|0]=(4095&Gn)<<20|Zn>>>12,hn=Zn,tn[Wt+11|0]=(15&Gn)<<28|hn>>>4,Zn=0,tn[Wt+10|0]=Zn<<15|(1966080&An)>>>17|hn<<4,Zn=2097151&vn,An=PA(fn,En,-683901,-1)+Zn|0,mn=bn,mn=Zn>>>0>An>>>0?mn+1|0:mn,Zn=Gn,Gn=mn+(Gn>>=21)|0,Gn=(Zn=(Cn=An)+(An=(2097151&Zn)<<11|hn>>>21)|0)>>>0>>0?Gn+1|0:Gn,tn[Wt+14|0]=(127&Gn)<<25|Zn>>>7,An=0,tn[Wt+13|0]=An<<12|(1048576&hn)>>>20|Zn<<1,mn=Gn>>21,hn=(Gn=(2097151&Gn)<<11|Zn>>>21)>>>0>(An=Gn+(2097151&wn)|0)>>>0?mn+1|0:mn,tn[Wt+17|0]=(1023&hn)<<22|An>>>10,tn[Wt+16|0]=(3&hn)<<30|An>>>2,Gn=0,tn[Wt+15|0]=Gn<<17|(2064384&Zn)>>>15|An<<6,mn=hn>>21,mn=(Gn=(2097151&hn)<<11|An>>>21)>>>0>(hn=Gn+(2097151&gn)|0)>>>0?mn+1|0:mn,tn[Wt+20|0]=(8191&mn)<<19|hn>>>13,tn[Wt+19|0]=(31&mn)<<27|hn>>>5,Zn=(Gn=2097151&Yn)+(Yn=(2097151&mn)<<11|hn>>>21)|0,Gn=mn>>21,Gn=Zn>>>0>>0?Gn+1|0:Gn,Yn=Zn,tn[Wt+21|0]=Zn,gn=0,tn[Wt+18|0]=gn<<14|(1835008&An)>>>18|hn<<3,tn[Wt+22|0]=(255&Gn)<<24|Zn>>>8,hn=Gn>>21,hn=(Zn=(An=(2097151&Gn)<<11|Zn>>>21)+(2097151&Nn)|0)>>>0>>0?hn+1|0:hn,tn[Wt+25|0]=(2047&hn)<<21|Zn>>>11,tn[Wt+24|0]=(7&hn)<<29|Zn>>>3,tn[Wt+23|0]=31&((65535&Gn)<<16|Yn>>>16)|Zn<<5,mn=hn>>21,mn=(Gn=(2097151&hn)<<11|Zn>>>21)>>>0>(hn=Gn+(2097151&Wn)|0)>>>0?mn+1|0:mn,tn[Wt+27|0]=(63&mn)<<26|hn>>>6,An=0,tn[Wt+26|0]=An<<13|(1572864&Zn)>>>19|hn<<2,Gn=mn,mn>>=21,Gn=(Zn=(Wn=(2097151&Gn)<<11|hn>>>21)+(An=2097151&Jn)|0)>>>0>>0?mn+1|0:mn,tn[Wt+31|0]=(131071&Gn)<<15|Zn>>>17,mn=Zn,tn[Wt+30|0]=(511&Gn)<<23|mn>>>9,Zn=0,tn[Wt+28|0]=Zn<<18|(2080768&hn)>>>14|mn<<7,tn[Wt+29|0]=Wn+Jn>>>1}function F(Wt,Pt,en,rn,sn,on){var cn,dn=0,un=0,pn=0,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0,Fn=0,Qn=0,fn=0,Hn=0,Cn=0,Xn=0,kn=0,Jn=0,Ln=0,Bn=0,xn=0,On=0,Tn=0,Un=0,Mn=0,zn=0,Sn=0,jn=0,Dn=0,_n=0;for(mn=cn=mn-592|0,Yn=-1,gn=Wt+32|0,Nn=32,yn=1;En=an[2656+(Gn=Nn-1|0)|0],pn|=(Gn=((un=an[Gn+gn|0])^En)-1>>8&yn)&(hn=an[gn+(Nn=Nn-2|0)|0])-(bn=an[Nn+2656|0])>>8|un-En>>8&yn,yn=Gn&(bn^hn)-1>>8,Nn;);if(255&pn&&!(KA(Wt)|!(~((127&~an[sn+31|0]|an[sn+1|0]&an[sn+2|0]&an[sn+3|0]&an[sn+4|0]&an[sn+5|0]&an[sn+6|0]&an[sn+7|0]&an[sn+8|0]&an[sn+9|0]&an[sn+10|0]&an[sn+11|0]&an[sn+12|0]&an[sn+13|0]&an[sn+14|0]&an[sn+15|0]&an[sn+16|0]&an[sn+17|0]&an[sn+18|0]&an[sn+19|0]&an[sn+20|0]&an[sn+21|0]&an[sn+22|0]&an[sn+23|0]&an[sn+24|0]&an[sn+25|0]&an[sn+26|0]&an[sn+27|0]&an[sn+28|0]&an[sn+30|0]&an[sn+29|0]^255)-1&236-an[0|sn])>>>8&1)||KA(sn)||q(Gn=cn+128|0,sn))){for(MA(un=cn+384|0),on&&W(un,35120,34,0),W(un,Wt,32,0),W(un,sn,32,0),W(un,Pt,en,rn),v(un,en=cn+320|0),s(en),rn=cn+8|0,sn=0,Pt=0,mn=dn=mn-2272|0;on=dn+2016|0,un=an[en+(sn>>>3|0)|0],tn[on+sn|0]=un>>>(6&sn)&1,tn[(pn=on)+(on=1|sn)|0]=un>>>(7&on)&1,256!=(0|(sn=sn+2|0)););for(;;){Pt=(en=Pt)+1|0;e:if(!(en>>>0>254)&&an[0|(pn=(sn=dn+2016|0)+en|0)]){t:if(sn=tn[0|(bn=Pt+sn|0)])if((0|(sn=(un=sn<<1)+(on=tn[0|pn])|0))<=15)tn[0|pn]=sn,tn[0|bn]=0;else{if((0|(sn=on-un|0))<-15)break e;for(tn[0|pn]=sn,sn=Pt;;){if(!an[0|(on=(dn+2016|0)+sn|0)]){tn[0|on]=1;break t}if(tn[0|on]=0,on=sn>>>0<255,sn=sn+1|0,!on)break}}if(!(en>>>0>253)){t:if(on=tn[0|(hn=(sn=en+2|0)+(dn+2016|0)|0)])if((0|(on=(bn=on<<2)+(un=tn[0|pn])|0))>=16){if((0|(on=un-bn|0))<-15)break e;for(tn[0|pn]=on;;){if(an[0|(on=(dn+2016|0)+sn|0)]){if(tn[0|on]=0,on=sn>>>0<255,sn=sn+1|0,on)continue;break t}break}tn[0|on]=1}else tn[0|pn]=on,tn[0|hn]=0;if(253!=(0|en)){t:if(on=tn[0|(hn=(sn=en+3|0)+(dn+2016|0)|0)])if((0|(on=(bn=on<<3)+(un=tn[0|pn])|0))>=16){if((0|(on=un-bn|0))<-15)break e;for(tn[0|pn]=on;;){if(an[0|(on=(dn+2016|0)+sn|0)]){if(tn[0|on]=0,on=sn>>>0<255,sn=sn+1|0,on)continue;break t}break}tn[0|on]=1}else tn[0|pn]=on,tn[0|hn]=0;if(!(en>>>0>251)){t:if(on=tn[0|(hn=(sn=en+4|0)+(dn+2016|0)|0)])if((0|(on=(bn=on<<4)+(un=tn[0|pn])|0))>=16){if((0|(on=un-bn|0))<-15)break e;for(tn[0|pn]=on;;){if(an[0|(on=(dn+2016|0)+sn|0)]){if(tn[0|on]=0,on=sn>>>0<255,sn=sn+1|0,on)continue;break t}break}tn[0|on]=1}else tn[0|pn]=on,tn[0|hn]=0;if(251!=(0|en)){t:if(on=tn[0|(hn=(sn=en+5|0)+(dn+2016|0)|0)])if((0|(on=(bn=on<<5)+(un=tn[0|pn])|0))>=16){if((0|(on=un-bn|0))<-15)break e;for(tn[0|pn]=on;;){if(an[0|(on=(dn+2016|0)+sn|0)]){if(tn[0|on]=0,on=sn>>>0<255,sn=sn+1|0,on)continue;break t}break}tn[0|on]=1}else tn[0|pn]=on,tn[0|hn]=0;if(!(en>>>0>249)&&(en=tn[0|(bn=(sn=en+6|0)+(dn+2016|0)|0)]))if((0|(en=(un=en<<6)+(on=tn[0|pn])|0))>=16){if((0|(en=on-un|0))<-15)break e;for(tn[0|pn]=en;;){if(an[0|(en=(dn+2016|0)+sn|0)]){if(tn[0|en]=0,en=sn>>>0<255,sn=sn+1|0,en)continue;break e}break}tn[0|en]=1}else tn[0|pn]=en,tn[0|bn]=0}}}}}if(256==(0|Pt))break}for(sn=0;Pt=dn+1760|0,en=an[gn+(sn>>>3|0)|0],tn[Pt+sn|0]=en>>>(6&sn)&1,tn[(on=Pt)+(Pt=1|sn)|0]=en>>>(7&Pt)&1,256!=(0|(sn=sn+2|0)););for(Pt=0;;){Pt=(en=Pt)+1|0;e:if(!(en>>>0>254)&&an[0|(pn=(sn=dn+1760|0)+en|0)]){t:if(sn=tn[0|(bn=Pt+sn|0)])if((0|(sn=(un=sn<<1)+(on=tn[0|pn])|0))<=15)tn[0|pn]=sn,tn[0|bn]=0;else{if((0|(sn=on-un|0))<-15)break e;for(tn[0|pn]=sn,sn=Pt;;){if(!an[0|(on=(dn+1760|0)+sn|0)]){tn[0|on]=1;break t}if(tn[0|on]=0,on=sn>>>0<255,sn=sn+1|0,!on)break}}if(!(en>>>0>253)){t:if(on=tn[0|(hn=(sn=en+2|0)+(dn+1760|0)|0)])if((0|(on=(bn=on<<2)+(un=tn[0|pn])|0))>=16){if((0|(on=un-bn|0))<-15)break e;for(tn[0|pn]=on;;){if(an[0|(on=(dn+1760|0)+sn|0)]){if(tn[0|on]=0,on=sn>>>0<255,sn=sn+1|0,on)continue;break t}break}tn[0|on]=1}else tn[0|pn]=on,tn[0|hn]=0;if(253!=(0|en)){t:if(on=tn[0|(hn=(sn=en+3|0)+(dn+1760|0)|0)])if((0|(on=(bn=on<<3)+(un=tn[0|pn])|0))>=16){if((0|(on=un-bn|0))<-15)break e;for(tn[0|pn]=on;;){if(an[0|(on=(dn+1760|0)+sn|0)]){if(tn[0|on]=0,on=sn>>>0<255,sn=sn+1|0,on)continue;break t}break}tn[0|on]=1}else tn[0|pn]=on,tn[0|hn]=0;if(!(en>>>0>251)){t:if(on=tn[0|(hn=(sn=en+4|0)+(dn+1760|0)|0)])if((0|(on=(bn=on<<4)+(un=tn[0|pn])|0))>=16){if((0|(on=un-bn|0))<-15)break e;for(tn[0|pn]=on;;){if(an[0|(on=(dn+1760|0)+sn|0)]){if(tn[0|on]=0,on=sn>>>0<255,sn=sn+1|0,on)continue;break t}break}tn[0|on]=1}else tn[0|pn]=on,tn[0|hn]=0;if(251!=(0|en)){t:if(on=tn[0|(hn=(sn=en+5|0)+(dn+1760|0)|0)])if((0|(on=(bn=on<<5)+(un=tn[0|pn])|0))>=16){if((0|(on=un-bn|0))<-15)break e;for(tn[0|pn]=on;;){if(an[0|(on=(dn+1760|0)+sn|0)]){if(tn[0|on]=0,on=sn>>>0<255,sn=sn+1|0,on)continue;break t}break}tn[0|on]=1}else tn[0|pn]=on,tn[0|hn]=0;if(!(en>>>0>249)&&(en=tn[0|(bn=(sn=en+6|0)+(dn+1760|0)|0)]))if((0|(en=(un=en<<6)+(on=tn[0|pn])|0))>=16){if((0|(en=on-un|0))<-15)break e;for(tn[0|pn]=en;;){if(an[0|(en=(dn+1760|0)+sn|0)]){if(tn[0|en]=0,en=sn>>>0<255,sn=sn+1|0,en)continue;break e}break}tn[0|en]=1}else tn[0|pn]=en,tn[0|bn]=0}}}}}if(256==(0|Pt))break}for(DA(sn=dn+480|0,Gn),Pt=nn[Gn+36>>2],nn[dn+192>>2]=nn[Gn+32>>2],nn[dn+196>>2]=Pt,Pt=nn[Gn+28>>2],nn[dn+184>>2]=nn[Gn+24>>2],nn[dn+188>>2]=Pt,Pt=nn[Gn+20>>2],nn[dn+176>>2]=nn[Gn+16>>2],nn[dn+180>>2]=Pt,Pt=nn[Gn+12>>2],nn[dn+168>>2]=nn[Gn+8>>2],nn[dn+172>>2]=Pt,Pt=nn[Gn+4>>2],nn[dn+160>>2]=nn[Gn>>2],nn[dn+164>>2]=Pt,Pt=nn[Gn+52>>2],nn[dn+208>>2]=nn[Gn+48>>2],nn[dn+212>>2]=Pt,Pt=nn[Gn+60>>2],nn[dn+216>>2]=nn[Gn+56>>2],nn[dn+220>>2]=Pt,Pt=nn[4+(en=Gn- -64|0)>>2],nn[dn+224>>2]=nn[en>>2],nn[dn+228>>2]=Pt,Pt=nn[Gn+76>>2],nn[dn+232>>2]=nn[Gn+72>>2],nn[dn+236>>2]=Pt,Pt=nn[Gn+44>>2],nn[dn+200>>2]=nn[Gn+40>>2],nn[dn+204>>2]=Pt,Pt=nn[Gn+92>>2],nn[dn+248>>2]=nn[Gn+88>>2],nn[dn+252>>2]=Pt,Pt=nn[Gn+100>>2],nn[dn+256>>2]=nn[Gn+96>>2],nn[dn+260>>2]=Pt,Pt=nn[Gn+108>>2],nn[dn+264>>2]=nn[Gn+104>>2],nn[dn+268>>2]=Pt,Pt=nn[Gn+116>>2],nn[dn+272>>2]=nn[Gn+112>>2],nn[dn+276>>2]=Pt,Pt=nn[Gn+84>>2],nn[dn+240>>2]=nn[Gn+80>>2],nn[dn+244>>2]=Pt,_(on=dn+320|0,en=dn+160|0),M(dn,on,Zn=dn+440|0),M(dn+40|0,An=dn+360|0,Wn=dn+400|0),M(dn+80|0,Wn,Zn),M(dn+120|0,on,An),X(on,dn,sn),M(en,on,Zn),M(Vn=dn+200|0,An,Wn),M(Rn=dn+240|0,Wn,Zn),M(vn=dn+280|0,on,An),DA(Pt=dn+640|0,en),X(on,dn,Pt),M(en,on,Zn),M(Vn,An,Wn),M(Rn,Wn,Zn),M(vn,on,An),DA(Pt=dn+800|0,en),X(on,dn,Pt),M(en,on,Zn),M(Vn,An,Wn),M(Rn,Wn,Zn),M(vn,on,An),DA(Pt=dn+960|0,en),X(on,dn,Pt),M(en,on,Zn),M(Vn,An,Wn),M(Rn,Wn,Zn),M(vn,on,An),DA(Pt=dn+1120|0,en),X(on,dn,Pt),M(en,on,Zn),M(Vn,An,Wn),M(Rn,Wn,Zn),M(vn,on,An),DA(Pt=dn+1280|0,en),X(on,dn,Pt),M(en,on,Zn),M(Vn,An,Wn),M(Rn,Wn,Zn),M(vn,on,An),DA(Pt=dn+1440|0,en),X(on,dn,Pt),M(en,on,Zn),M(Vn,An,Wn),M(Rn,Wn,Zn),M(vn,on,An),DA(dn+1600|0,en),nn[rn+32>>2]=0,nn[rn+36>>2]=0,nn[rn+24>>2]=0,nn[rn+28>>2]=0,nn[rn+16>>2]=0,nn[rn+20>>2]=0,nn[rn+8>>2]=0,nn[rn+12>>2]=0,nn[rn>>2]=0,nn[rn+4>>2]=0,nn[rn+44>>2]=0,nn[rn+48>>2]=0,nn[rn+40>>2]=1,nn[rn+52>>2]=0,nn[rn+56>>2]=0,nn[rn+60>>2]=0,nn[rn+64>>2]=0,nn[rn+68>>2]=0,nn[rn+72>>2]=0,nn[rn+84>>2]=0,nn[rn+88>>2]=0,nn[rn+76>>2]=0,nn[rn+80>>2]=1,nn[rn+92>>2]=0,nn[rn+96>>2]=0,nn[rn+100>>2]=0,nn[rn+104>>2]=0,nn[rn+108>>2]=0,nn[rn+112>>2]=0,nn[rn+116>>2]=0,Mn=rn+80|0,zn=rn+40|0,Pt=255;;){e:{t:{if(!an[(en=dn+2016|0)+Pt|0]&&!an[(sn=dn+1760|0)+Pt|0]){if(!(an[(on=en)+(en=Pt-1|0)|0]|an[en+sn|0]))break t;Pt=en}if((0|Pt)<0)break e;for(;_(sn=dn+320|0,rn),(0|(on=tn[(en=Pt)+(dn+2016|0)|0]))>0?(M(Pt=dn+160|0,sn,Zn),M(Vn,An,Wn),M(Rn,Wn,Zn),M(vn,sn,An),X(sn,Pt,(dn+480|0)+In((254&on)>>>1|0,160)|0)):(0|on)>=0||(M(Pt=dn+160|0,sn=dn+320|0,Zn),M(Vn,An,Wn),M(Rn,Wn,Zn),M(vn,sn,An),O(sn,Pt,(dn+480|0)+In((0-on&254)>>>1|0,160)|0)),(0|(kn=tn[en+(dn+1760|0)|0]))>0?(M(Pt=dn+160|0,sn=dn+320|0,Zn),M(Vn,An,Wn),M(Rn,Wn,Zn),M(vn,sn,An),T(sn,Pt,In((254&kn)>>>1|0,120)+1472|0)):(0|kn)>=0||(M(dn+160|0,Jn=dn+320|0,Zn),M(Vn,An,Wn),M(Rn,Wn,Zn),M(vn,Jn,An),wn=nn[dn+160>>2],Fn=nn[dn+200>>2],Qn=nn[dn+164>>2],fn=nn[dn+204>>2],Hn=nn[dn+168>>2],Cn=nn[dn+208>>2],Xn=nn[dn+172>>2],Nn=nn[dn+212>>2],gn=nn[dn+176>>2],yn=nn[dn+216>>2],Yn=nn[dn+180>>2],En=nn[dn+220>>2],pn=nn[dn+184>>2],hn=nn[dn+224>>2],bn=nn[dn+188>>2],un=nn[dn+228>>2],Gn=nn[dn+192>>2],on=nn[dn+232>>2],sn=nn[dn+236>>2],Pt=nn[dn+196>>2],nn[dn+396>>2]=sn-Pt,nn[dn+392>>2]=on-Gn,nn[dn+388>>2]=un-bn,nn[dn+384>>2]=hn-pn,nn[dn+380>>2]=En-Yn,nn[dn+376>>2]=yn-gn,nn[dn+372>>2]=Nn-Xn,nn[dn+368>>2]=Cn-Hn,nn[dn+364>>2]=fn-Qn,nn[dn+360>>2]=Fn-wn,nn[dn+356>>2]=Pt+sn,nn[dn+352>>2]=on+Gn,nn[dn+348>>2]=un+bn,nn[dn+344>>2]=pn+hn,nn[dn+340>>2]=Yn+En,nn[dn+336>>2]=gn+yn,nn[dn+332>>2]=Nn+Xn,nn[dn+328>>2]=Hn+Cn,nn[dn+324>>2]=Qn+fn,nn[dn+320>>2]=wn+Fn,M(Wn,Jn,40+(Pt=In((0-kn&254)>>>1|0,120)+1472|0)|0),M(An,An,Pt),M(Zn,Pt+80|0,vn),Sn=nn[dn+276>>2],jn=nn[dn+272>>2],kn=nn[dn+268>>2],Jn=nn[dn+264>>2],pn=nn[dn+260>>2],hn=nn[dn+256>>2],bn=nn[dn+252>>2],un=nn[dn+248>>2],Gn=nn[dn+244>>2],on=nn[dn+240>>2],Ln=nn[dn+360>>2],Bn=nn[dn+400>>2],xn=nn[dn+364>>2],On=nn[dn+404>>2],Tn=nn[dn+368>>2],Un=nn[dn+408>>2],wn=nn[dn+372>>2],Fn=nn[dn+412>>2],Qn=nn[dn+376>>2],fn=nn[dn+416>>2],Hn=nn[dn+380>>2],Cn=nn[dn+420>>2],Xn=nn[dn+384>>2],Nn=nn[dn+424>>2],gn=nn[dn+388>>2],yn=nn[dn+428>>2],Yn=nn[dn+392>>2],En=nn[dn+432>>2],sn=nn[dn+396>>2],Pt=nn[dn+436>>2],nn[dn+396>>2]=sn+Pt,nn[dn+392>>2]=Yn+En,nn[dn+388>>2]=gn+yn,nn[dn+384>>2]=Nn+Xn,nn[dn+380>>2]=Hn+Cn,nn[dn+376>>2]=Qn+fn,nn[dn+372>>2]=wn+Fn,nn[dn+368>>2]=Tn+Un,nn[dn+364>>2]=xn+On,nn[dn+360>>2]=Ln+Bn,nn[dn+356>>2]=Pt-sn,nn[dn+352>>2]=En-Yn,nn[dn+348>>2]=yn-gn,nn[dn+344>>2]=Nn-Xn,nn[dn+340>>2]=Cn-Hn,nn[dn+336>>2]=fn-Qn,nn[dn+332>>2]=Fn-wn,nn[dn+328>>2]=Un-Tn,nn[dn+324>>2]=On-xn,nn[dn+320>>2]=Bn-Ln,wn=on<<1,Fn=nn[dn+440>>2],nn[dn+400>>2]=wn-Fn,Qn=Gn<<1,fn=nn[dn+444>>2],nn[dn+404>>2]=Qn-fn,Hn=un<<1,Cn=nn[dn+448>>2],nn[dn+408>>2]=Hn-Cn,Xn=bn<<1,Nn=nn[dn+452>>2],nn[dn+412>>2]=Xn-Nn,gn=hn<<1,yn=nn[dn+456>>2],nn[dn+416>>2]=gn-yn,Yn=pn<<1,En=nn[dn+460>>2],nn[dn+420>>2]=Yn-En,pn=Jn<<1,hn=nn[dn+464>>2],nn[dn+424>>2]=pn-hn,bn=kn<<1,un=nn[dn+468>>2],nn[dn+428>>2]=bn-un,Gn=jn<<1,on=nn[dn+472>>2],nn[dn+432>>2]=Gn-on,sn=Sn<<1,Pt=nn[dn+476>>2],nn[dn+436>>2]=sn-Pt,nn[dn+440>>2]=wn+Fn,nn[dn+444>>2]=Qn+fn,nn[dn+448>>2]=Hn+Cn,nn[dn+452>>2]=Nn+Xn,nn[dn+456>>2]=gn+yn,nn[dn+460>>2]=Yn+En,nn[dn+464>>2]=pn+hn,nn[dn+468>>2]=un+bn,nn[dn+472>>2]=on+Gn,nn[dn+476>>2]=Pt+sn),M(rn,dn+320|0,Zn),M(zn,An,Wn),M(Mn,Wn,Zn),Pt=en-1|0,(0|en)>0;);break e}if(Pt=Pt-2|0,en)continue}break}mn=dn+2272|0,mA(Pt=cn+288|0,rn),Dn=-1,_n=UA(Pt,Wt),Yn=((0|Wt)==(0|Pt)?Dn:_n)|NA(Wt,Pt,32)}return mn=cn+592|0,Yn}function S(Wt,Pt,en){var tn,rn,In,sn,on,cn,dn,un,pn,bn,Gn,hn,Zn,An,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0,Fn=0;for(mn=tn=mn-800|0,yn=an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24,Yn=an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24,Vn=an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24,Rn=an[Pt+16|0]|an[Pt+17|0]<<8|an[Pt+18|0]<<16|an[Pt+19|0]<<24,Nn=an[Pt+20|0]|an[Pt+21|0]<<8|an[Pt+22|0]<<16|an[Pt+23|0]<<24,wn=an[Pt+24|0]|an[Pt+25|0]<<8|an[Pt+26|0]<<16|an[Pt+27|0]<<24,Fn=an[Pt+28|0]|an[Pt+29|0]<<8|an[Pt+30|0]<<16|an[Pt+31|0]<<24,In=an[Wt+4|0]|an[Wt+5|0]<<8|an[Wt+6|0]<<16|an[Wt+7|0]<<24,sn=an[Wt+8|0]|an[Wt+9|0]<<8|an[Wt+10|0]<<16|an[Wt+11|0]<<24,on=an[Wt+12|0]|an[Wt+13|0]<<8|an[Wt+14|0]<<16|an[Wt+15|0]<<24,cn=an[Wt+16|0]|an[Wt+17|0]<<8|an[Wt+18|0]<<16|an[Wt+19|0]<<24,dn=an[Wt+20|0]|an[Wt+21|0]<<8|an[Wt+22|0]<<16|an[Wt+23|0]<<24,un=an[Wt+24|0]|an[Wt+25|0]<<8|an[Wt+26|0]<<16|an[Wt+27|0]<<24,pn=an[Wt+28|0]|an[Wt+29|0]<<8|an[Wt+30|0]<<16|an[Wt+31|0]<<24,gn=an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,Pt=en- -64|0,bn=an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24,nn[Pt>>2]=33620224^bn,nn[en+56>>2]=1496785429,nn[en+60>>2]=1652156816,nn[(Wt=en+48|0)>>2]=33620224,nn[Wt+4>>2]=218629379,nn[en+40>>2]=1110511904,nn[en+44>>2]=-584534669,nn[(rn=en+32|0)>>2]=1427652059,nn[rn+4>>2]=-248528275,Gn=gn^bn,nn[en>>2]=Gn,nn[en+92>>2]=-584534669^pn,nn[en+88>>2]=1110511904^un,nn[en+84>>2]=-248528275^dn,nn[(gn=en+80|0)>>2]=1427652059^cn,nn[en+76>>2]=1652156816^on,nn[en+72>>2]=1496785429^sn,nn[en+68>>2]=218629379^In,Fn^=pn,nn[en+28>>2]=Fn,wn^=un,nn[en+24>>2]=wn,hn=Nn^dn,nn[en+20>>2]=hn,Rn^=cn,nn[(Nn=en+16|0)>>2]=Rn,Vn^=on,nn[en+12>>2]=Vn,Zn=Yn^sn,nn[en+8>>2]=Zn,An=yn^In,nn[en+4>>2]=An,Yn=0;yn=nn[gn+12>>2],nn[tn+792>>2]=nn[gn+8>>2],nn[tn+796>>2]=yn,yn=nn[gn+4>>2],nn[tn+784>>2]=nn[gn>>2],nn[tn+788>>2]=yn,yn=nn[Pt+12>>2],nn[tn+760>>2]=nn[Pt+8>>2],nn[tn+764>>2]=yn,yn=nn[Pt+4>>2],nn[tn+752>>2]=nn[Pt>>2],nn[tn+756>>2]=yn,yn=nn[gn+12>>2],nn[tn+744>>2]=nn[gn+8>>2],nn[tn+748>>2]=yn,yn=nn[gn+4>>2],nn[tn+736>>2]=nn[gn>>2],nn[tn+740>>2]=yn,aA(yn=tn+768|0,tn+752|0,tn+736|0),Wn=nn[tn+780>>2],nn[gn+8>>2]=nn[tn+776>>2],nn[gn+12>>2]=Wn,Wn=nn[tn+772>>2],nn[gn>>2]=nn[tn+768>>2],nn[gn+4>>2]=Wn,Wn=nn[Wt+12>>2],nn[tn+728>>2]=nn[Wt+8>>2],nn[tn+732>>2]=Wn,Wn=nn[Wt+4>>2],nn[tn+720>>2]=nn[Wt>>2],nn[tn+724>>2]=Wn,Wn=nn[Pt+12>>2],nn[tn+712>>2]=nn[Pt+8>>2],nn[tn+716>>2]=Wn,Wn=nn[Pt+4>>2],nn[tn+704>>2]=nn[Pt>>2],nn[tn+708>>2]=Wn,aA(yn,tn+720|0,tn+704|0),Wn=nn[tn+780>>2],nn[Pt+8>>2]=nn[tn+776>>2],nn[Pt+12>>2]=Wn,Wn=nn[tn+772>>2],nn[Pt>>2]=nn[tn+768>>2],nn[Pt+4>>2]=Wn,Wn=nn[rn+12>>2],nn[tn+696>>2]=nn[rn+8>>2],nn[tn+700>>2]=Wn,Wn=nn[rn+4>>2],nn[tn+688>>2]=nn[rn>>2],nn[tn+692>>2]=Wn,Wn=nn[Wt+12>>2],nn[tn+680>>2]=nn[Wt+8>>2],nn[tn+684>>2]=Wn,Wn=nn[Wt+4>>2],nn[tn+672>>2]=nn[Wt>>2],nn[tn+676>>2]=Wn,aA(yn,tn+688|0,tn+672|0),Wn=nn[tn+780>>2],nn[Wt+8>>2]=nn[tn+776>>2],nn[Wt+12>>2]=Wn,Wn=nn[tn+772>>2],nn[Wt>>2]=nn[tn+768>>2],nn[Wt+4>>2]=Wn,Wn=nn[Nn+12>>2],nn[tn+664>>2]=nn[Nn+8>>2],nn[tn+668>>2]=Wn,Wn=nn[Nn+4>>2],nn[tn+656>>2]=nn[Nn>>2],nn[tn+660>>2]=Wn,Wn=nn[rn+12>>2],nn[tn+648>>2]=nn[rn+8>>2],nn[tn+652>>2]=Wn,Wn=nn[rn+4>>2],nn[tn+640>>2]=nn[rn>>2],nn[tn+644>>2]=Wn,aA(yn,tn+656|0,tn+640|0),Wn=nn[tn+780>>2],nn[rn+8>>2]=nn[tn+776>>2],nn[rn+12>>2]=Wn,Wn=nn[tn+772>>2],nn[rn>>2]=nn[tn+768>>2],nn[rn+4>>2]=Wn,Wn=nn[en+12>>2],nn[tn+632>>2]=nn[en+8>>2],nn[tn+636>>2]=Wn,Wn=nn[en+4>>2],nn[tn+624>>2]=nn[en>>2],nn[tn+628>>2]=Wn,Wn=nn[Nn+12>>2],nn[tn+616>>2]=nn[Nn+8>>2],nn[tn+620>>2]=Wn,Wn=nn[Nn+4>>2],nn[tn+608>>2]=nn[Nn>>2],nn[tn+612>>2]=Wn,aA(yn,tn+624|0,tn+608|0),Wn=nn[tn+780>>2],nn[Nn+8>>2]=nn[tn+776>>2],nn[Nn+12>>2]=Wn,Wn=nn[tn+772>>2],nn[Nn>>2]=nn[tn+768>>2],nn[Nn+4>>2]=Wn,Wn=nn[tn+796>>2],nn[tn+600>>2]=nn[tn+792>>2],nn[tn+604>>2]=Wn,Wn=nn[tn+788>>2],nn[tn+592>>2]=nn[tn+784>>2],nn[tn+596>>2]=Wn,Wn=nn[en+12>>2],nn[tn+584>>2]=nn[en+8>>2],nn[tn+588>>2]=Wn,Wn=nn[en+4>>2],nn[tn+576>>2]=nn[en>>2],nn[tn+580>>2]=Wn,aA(yn,tn+592|0,tn+576|0),Wn=nn[tn+768>>2],vn=nn[tn+772>>2],En=nn[tn+776>>2],nn[en+12>>2]=nn[tn+780>>2]^on,nn[en+8>>2]=En^sn,nn[en+4>>2]=vn^In,nn[en>>2]=Wn^bn,Wn=nn[gn+12>>2],nn[tn+792>>2]=nn[gn+8>>2],nn[tn+796>>2]=Wn,Wn=nn[gn+4>>2],nn[tn+784>>2]=nn[gn>>2],nn[tn+788>>2]=Wn,Wn=nn[Pt+12>>2],nn[tn+568>>2]=nn[Pt+8>>2],nn[tn+572>>2]=Wn,Wn=nn[Pt+4>>2],nn[tn+560>>2]=nn[Pt>>2],nn[tn+564>>2]=Wn,Wn=nn[gn+12>>2],nn[tn+552>>2]=nn[gn+8>>2],nn[tn+556>>2]=Wn,Wn=nn[gn+4>>2],nn[tn+544>>2]=nn[gn>>2],nn[tn+548>>2]=Wn,aA(yn,tn+560|0,tn+544|0),Wn=nn[tn+780>>2],nn[gn+8>>2]=nn[tn+776>>2],nn[gn+12>>2]=Wn,Wn=nn[tn+772>>2],nn[gn>>2]=nn[tn+768>>2],nn[gn+4>>2]=Wn,Wn=nn[Wt+12>>2],nn[tn+536>>2]=nn[Wt+8>>2],nn[tn+540>>2]=Wn,Wn=nn[Wt+4>>2],nn[tn+528>>2]=nn[Wt>>2],nn[tn+532>>2]=Wn,Wn=nn[Pt+12>>2],nn[tn+520>>2]=nn[Pt+8>>2],nn[tn+524>>2]=Wn,Wn=nn[Pt+4>>2],nn[tn+512>>2]=nn[Pt>>2],nn[tn+516>>2]=Wn,aA(yn,tn+528|0,tn+512|0),Wn=nn[tn+780>>2],nn[Pt+8>>2]=nn[tn+776>>2],nn[Pt+12>>2]=Wn,Wn=nn[tn+772>>2],nn[Pt>>2]=nn[tn+768>>2],nn[Pt+4>>2]=Wn,Wn=nn[rn+12>>2],nn[tn+504>>2]=nn[rn+8>>2],nn[tn+508>>2]=Wn,Wn=nn[rn+4>>2],nn[tn+496>>2]=nn[rn>>2],nn[tn+500>>2]=Wn,Wn=nn[Wt+12>>2],nn[tn+488>>2]=nn[Wt+8>>2],nn[tn+492>>2]=Wn,Wn=nn[Wt+4>>2],nn[tn+480>>2]=nn[Wt>>2],nn[tn+484>>2]=Wn,aA(yn,tn+496|0,tn+480|0),Wn=nn[tn+780>>2],nn[Wt+8>>2]=nn[tn+776>>2],nn[Wt+12>>2]=Wn,Wn=nn[tn+772>>2],nn[Wt>>2]=nn[tn+768>>2],nn[Wt+4>>2]=Wn,Wn=nn[Nn+12>>2],nn[tn+472>>2]=nn[Nn+8>>2],nn[tn+476>>2]=Wn,Wn=nn[Nn+4>>2],nn[tn+464>>2]=nn[Nn>>2],nn[tn+468>>2]=Wn,Wn=nn[rn+12>>2],nn[tn+456>>2]=nn[rn+8>>2],nn[tn+460>>2]=Wn,Wn=nn[rn+4>>2],nn[tn+448>>2]=nn[rn>>2],nn[tn+452>>2]=Wn,aA(yn,tn+464|0,tn+448|0),Wn=nn[tn+780>>2],nn[rn+8>>2]=nn[tn+776>>2],nn[rn+12>>2]=Wn,Wn=nn[tn+772>>2],nn[rn>>2]=nn[tn+768>>2],nn[rn+4>>2]=Wn,Wn=nn[en+12>>2],nn[tn+440>>2]=nn[en+8>>2],nn[tn+444>>2]=Wn,Wn=nn[en+4>>2],nn[tn+432>>2]=nn[en>>2],nn[tn+436>>2]=Wn,Wn=nn[Nn+12>>2],nn[tn+424>>2]=nn[Nn+8>>2],nn[tn+428>>2]=Wn,Wn=nn[Nn+4>>2],nn[tn+416>>2]=nn[Nn>>2],nn[tn+420>>2]=Wn,aA(yn,tn+432|0,tn+416|0),Wn=nn[tn+780>>2],nn[Nn+8>>2]=nn[tn+776>>2],nn[Nn+12>>2]=Wn,Wn=nn[tn+772>>2],nn[Nn>>2]=nn[tn+768>>2],nn[Nn+4>>2]=Wn,Wn=nn[tn+796>>2],nn[tn+408>>2]=nn[tn+792>>2],nn[tn+412>>2]=Wn,Wn=nn[tn+788>>2],nn[tn+400>>2]=nn[tn+784>>2],nn[tn+404>>2]=Wn,Wn=nn[en+12>>2],nn[tn+392>>2]=nn[en+8>>2],nn[tn+396>>2]=Wn,Wn=nn[en+4>>2],nn[tn+384>>2]=nn[en>>2],nn[tn+388>>2]=Wn,aA(yn,tn+400|0,tn+384|0),Wn=nn[tn+768>>2],vn=nn[tn+772>>2],En=nn[tn+776>>2],nn[en+12>>2]=nn[tn+780>>2]^pn,nn[en+8>>2]=En^un,nn[en+4>>2]=vn^dn,nn[en>>2]=Wn^cn,Wn=nn[gn+12>>2],nn[tn+792>>2]=nn[gn+8>>2],nn[tn+796>>2]=Wn,Wn=nn[gn+4>>2],nn[tn+784>>2]=nn[gn>>2],nn[tn+788>>2]=Wn,Wn=nn[Pt+12>>2],nn[tn+376>>2]=nn[Pt+8>>2],nn[tn+380>>2]=Wn,Wn=nn[Pt+4>>2],nn[tn+368>>2]=nn[Pt>>2],nn[tn+372>>2]=Wn,Wn=nn[gn+12>>2],nn[tn+360>>2]=nn[gn+8>>2],nn[tn+364>>2]=Wn,Wn=nn[gn+4>>2],nn[tn+352>>2]=nn[gn>>2],nn[tn+356>>2]=Wn,aA(yn,tn+368|0,tn+352|0),Wn=nn[tn+780>>2],nn[gn+8>>2]=nn[tn+776>>2],nn[gn+12>>2]=Wn,Wn=nn[tn+772>>2],nn[gn>>2]=nn[tn+768>>2],nn[gn+4>>2]=Wn,Wn=nn[Wt+12>>2],nn[tn+344>>2]=nn[Wt+8>>2],nn[tn+348>>2]=Wn,Wn=nn[Wt+4>>2],nn[tn+336>>2]=nn[Wt>>2],nn[tn+340>>2]=Wn,Wn=nn[Pt+12>>2],nn[tn+328>>2]=nn[Pt+8>>2],nn[tn+332>>2]=Wn,Wn=nn[Pt+4>>2],nn[tn+320>>2]=nn[Pt>>2],nn[tn+324>>2]=Wn,aA(yn,tn+336|0,tn+320|0),Wn=nn[tn+780>>2],nn[Pt+8>>2]=nn[tn+776>>2],nn[Pt+12>>2]=Wn,Wn=nn[tn+772>>2],nn[Pt>>2]=nn[tn+768>>2],nn[Pt+4>>2]=Wn,Wn=nn[rn+12>>2],nn[tn+312>>2]=nn[rn+8>>2],nn[tn+316>>2]=Wn,Wn=nn[rn+4>>2],nn[tn+304>>2]=nn[rn>>2],nn[tn+308>>2]=Wn,Wn=nn[Wt+12>>2],nn[tn+296>>2]=nn[Wt+8>>2],nn[tn+300>>2]=Wn,Wn=nn[Wt+4>>2],nn[tn+288>>2]=nn[Wt>>2],nn[tn+292>>2]=Wn,aA(yn,tn+304|0,tn+288|0),Wn=nn[tn+780>>2],nn[Wt+8>>2]=nn[tn+776>>2],nn[Wt+12>>2]=Wn,Wn=nn[tn+772>>2],nn[Wt>>2]=nn[tn+768>>2],nn[Wt+4>>2]=Wn,Wn=nn[Nn+12>>2],nn[tn+280>>2]=nn[Nn+8>>2],nn[tn+284>>2]=Wn,Wn=nn[Nn+4>>2],nn[tn+272>>2]=nn[Nn>>2],nn[tn+276>>2]=Wn,Wn=nn[rn+12>>2],nn[tn+264>>2]=nn[rn+8>>2],nn[tn+268>>2]=Wn,Wn=nn[rn+4>>2],nn[tn+256>>2]=nn[rn>>2],nn[tn+260>>2]=Wn,aA(yn,tn+272|0,tn+256|0),Wn=nn[tn+780>>2],nn[rn+8>>2]=nn[tn+776>>2],nn[rn+12>>2]=Wn,Wn=nn[tn+772>>2],nn[rn>>2]=nn[tn+768>>2],nn[rn+4>>2]=Wn,Wn=nn[en+12>>2],nn[tn+248>>2]=nn[en+8>>2],nn[tn+252>>2]=Wn,Wn=nn[en+4>>2],nn[tn+240>>2]=nn[en>>2],nn[tn+244>>2]=Wn,Wn=nn[Nn+12>>2],nn[tn+232>>2]=nn[Nn+8>>2],nn[tn+236>>2]=Wn,Wn=nn[Nn+4>>2],nn[tn+224>>2]=nn[Nn>>2],nn[tn+228>>2]=Wn,aA(yn,tn+240|0,tn+224|0),Wn=nn[tn+780>>2],nn[Nn+8>>2]=nn[tn+776>>2],nn[Nn+12>>2]=Wn,Wn=nn[tn+772>>2],nn[Nn>>2]=nn[tn+768>>2],nn[Nn+4>>2]=Wn,Wn=nn[tn+796>>2],nn[tn+216>>2]=nn[tn+792>>2],nn[tn+220>>2]=Wn,Wn=nn[tn+788>>2],nn[tn+208>>2]=nn[tn+784>>2],nn[tn+212>>2]=Wn,Wn=nn[en+12>>2],nn[tn+200>>2]=nn[en+8>>2],nn[tn+204>>2]=Wn,Wn=nn[en+4>>2],nn[tn+192>>2]=nn[en>>2],nn[tn+196>>2]=Wn,aA(yn,tn+208|0,tn+192|0),Wn=nn[tn+768>>2],vn=nn[tn+772>>2],En=nn[tn+776>>2],nn[en+12>>2]=Vn^nn[tn+780>>2],nn[en+8>>2]=En^Zn,nn[en+4>>2]=vn^An,nn[en>>2]=Wn^Gn,Wn=nn[gn+12>>2],nn[tn+792>>2]=nn[gn+8>>2],nn[tn+796>>2]=Wn,Wn=nn[gn+4>>2],nn[tn+784>>2]=nn[gn>>2],nn[tn+788>>2]=Wn,Wn=nn[Pt+12>>2],nn[tn+184>>2]=nn[Pt+8>>2],nn[tn+188>>2]=Wn,Wn=nn[Pt+4>>2],nn[tn+176>>2]=nn[Pt>>2],nn[tn+180>>2]=Wn,Wn=nn[gn+12>>2],nn[tn+168>>2]=nn[gn+8>>2],nn[tn+172>>2]=Wn,Wn=nn[gn+4>>2],nn[tn+160>>2]=nn[gn>>2],nn[tn+164>>2]=Wn,aA(yn,tn+176|0,tn+160|0),Wn=nn[tn+780>>2],nn[gn+8>>2]=nn[tn+776>>2],nn[gn+12>>2]=Wn,Wn=nn[tn+772>>2],nn[gn>>2]=nn[tn+768>>2],nn[gn+4>>2]=Wn,Wn=nn[Wt+12>>2],nn[tn+152>>2]=nn[Wt+8>>2],nn[tn+156>>2]=Wn,Wn=nn[Wt+4>>2],nn[tn+144>>2]=nn[Wt>>2],nn[tn+148>>2]=Wn,Wn=nn[Pt+12>>2],nn[tn+136>>2]=nn[Pt+8>>2],nn[tn+140>>2]=Wn,Wn=nn[Pt+4>>2],nn[tn+128>>2]=nn[Pt>>2],nn[tn+132>>2]=Wn,aA(yn,tn+144|0,tn+128|0),Wn=nn[tn+780>>2],nn[Pt+8>>2]=nn[tn+776>>2],nn[Pt+12>>2]=Wn,Wn=nn[tn+772>>2],nn[Pt>>2]=nn[tn+768>>2],nn[Pt+4>>2]=Wn,Wn=nn[rn+12>>2],nn[tn+120>>2]=nn[rn+8>>2],nn[tn+124>>2]=Wn,Wn=nn[rn+4>>2],nn[tn+112>>2]=nn[rn>>2],nn[tn+116>>2]=Wn,Wn=nn[Wt+12>>2],nn[tn+104>>2]=nn[Wt+8>>2],nn[tn+108>>2]=Wn,Wn=nn[Wt+4>>2],nn[tn+96>>2]=nn[Wt>>2],nn[tn+100>>2]=Wn,aA(yn,tn+112|0,tn+96|0),Wn=nn[tn+780>>2],nn[Wt+8>>2]=nn[tn+776>>2],nn[Wt+12>>2]=Wn,Wn=nn[tn+772>>2],nn[Wt>>2]=nn[tn+768>>2],nn[Wt+4>>2]=Wn,Wn=nn[Nn+12>>2],nn[tn+88>>2]=nn[Nn+8>>2],nn[tn+92>>2]=Wn,Wn=nn[Nn+4>>2],nn[tn+80>>2]=nn[Nn>>2],nn[tn+84>>2]=Wn,Wn=nn[rn+12>>2],nn[tn+72>>2]=nn[rn+8>>2],nn[tn+76>>2]=Wn,Wn=nn[rn+4>>2],nn[tn+64>>2]=nn[rn>>2],nn[tn+68>>2]=Wn,aA(yn,tn+80|0,tn- -64|0),Wn=nn[tn+780>>2],nn[rn+8>>2]=nn[tn+776>>2],nn[rn+12>>2]=Wn,Wn=nn[tn+772>>2],nn[rn>>2]=nn[tn+768>>2],nn[rn+4>>2]=Wn,Wn=nn[en+12>>2],nn[tn+56>>2]=nn[en+8>>2],nn[tn+60>>2]=Wn,Wn=nn[en+4>>2],nn[tn+48>>2]=nn[en>>2],nn[tn+52>>2]=Wn,Wn=nn[Nn+12>>2],nn[tn+40>>2]=nn[Nn+8>>2],nn[tn+44>>2]=Wn,Wn=nn[Nn+4>>2],nn[tn+32>>2]=nn[Nn>>2],nn[tn+36>>2]=Wn,aA(yn,tn+48|0,tn+32|0),Wn=nn[tn+780>>2],nn[Nn+8>>2]=nn[tn+776>>2],nn[Nn+12>>2]=Wn,Wn=nn[tn+772>>2],nn[Nn>>2]=nn[tn+768>>2],nn[Nn+4>>2]=Wn,Wn=nn[tn+796>>2],nn[tn+24>>2]=nn[tn+792>>2],nn[tn+28>>2]=Wn,Wn=nn[tn+788>>2],nn[tn+16>>2]=nn[tn+784>>2],nn[tn+20>>2]=Wn,Wn=nn[en+12>>2],nn[tn+8>>2]=nn[en+8>>2],nn[tn+12>>2]=Wn,Wn=nn[en+4>>2],nn[tn>>2]=nn[en>>2],nn[tn+4>>2]=Wn,aA(yn,tn+16|0,tn),yn=nn[tn+768>>2],Wn=nn[tn+772>>2],vn=nn[tn+776>>2],nn[en+12>>2]=Fn^nn[tn+780>>2],nn[en+8>>2]=vn^wn,nn[en+4>>2]=Wn^hn,nn[en>>2]=yn^Rn,4!=(0|(Yn=Yn+1|0)););mn=tn+800|0}function M(Wt,Pt,en){var tn,an,rn,sn,on,cn,dn,un,pn,mn,Gn,hn,Zn,An,Wn,Nn,gn,yn,vn,Yn,En,Vn,Rn,wn,Fn,Qn,fn,Hn,Cn,Xn,kn,Jn,Ln,Bn,xn,On,Tn,Un,Mn,zn,Sn,jn,Dn,_n,Kn,Pn,qn,$n,el,tl,nl,ll,al,rl=0,Il=0,sl=0,ol=0,cl=0,il=0,dl=0,ul=0,pl=0,ml=0,bl=0,Gl=0,hl=0,Zl=0,Al=0,Wl=0,Nl=0,gl=0,yl=0,vl=0,Yl=0,El=0,Vl=0,Rl=0,wl=0;rl=PA(tn=nn[en+4>>2],mn=tn>>31,Nl=(Nn=nn[Pt+20>>2])<<1,kn=Nl>>31),sl=bn,Il=(hl=PA(Al=nn[en>>2],rn=Al>>31,an=nn[Pt+24>>2],sn=an>>31))+rl|0,rl=bn+sl|0,rl=Il>>>0>>0?rl+1|0:rl,pl=PA(on=nn[en+8>>2],Zn=on>>31,hl=nn[Pt+16>>2],cn=hl>>31),sl=bn+rl|0,sl=(Il=pl+Il|0)>>>0>>0?sl+1|0:sl,rl=(pl=PA(Gn=nn[en+12>>2],gn=Gn>>31,wn=(yn=nn[Pt+12>>2])<<1,Jn=wn>>31))+Il|0,Il=bn+sl|0,Il=rl>>>0>>0?Il+1|0:Il,sl=(Zl=PA(An=nn[en+16>>2],Fn=An>>31,pl=nn[Pt+8>>2],dn=pl>>31))+rl|0,rl=bn+Il|0,rl=sl>>>0>>0?rl+1|0:rl,Il=sl,sl=PA(vn=nn[en+20>>2],Ln=vn>>31,Qn=(Yn=nn[Pt+4>>2])<<1,Bn=Qn>>31),rl=bn+rl|0,rl=(Il=Il+sl|0)>>>0>>0?rl+1|0:rl,Pn=dl=nn[en+24>>2],sl=(ml=PA(dl,_n=dl>>31,Zl=nn[Pt>>2],un=Zl>>31))+Il|0,Il=bn+rl|0,Il=sl>>>0>>0?Il+1|0:Il,xn=nn[en+28>>2],rl=(ml=PA(Gl=In(xn,19),En=Gl>>31,fn=(Vn=nn[Pt+36>>2])<<1,On=fn>>31))+sl|0,sl=bn+Il|0,sl=rl>>>0>>0?sl+1|0:sl,Yl=nn[en+32>>2],Il=(ul=PA(ol=In(Yl,19),Wn=ol>>31,ml=nn[Pt+32>>2],pn=ml>>31))+rl|0,rl=bn+sl|0,rl=Il>>>0
                            >>0?rl+1|0:rl,qn=nn[en+36>>2],en=PA(ul=In(qn,19),hn=ul>>31,Hn=(Rn=nn[Pt+28>>2])<<1,Tn=Hn>>31),rl=bn+rl|0,cl=Pt=en+Il|0,en=Pt>>>0>>0?rl+1|0:rl,Pt=PA(hl,cn,tn,mn),rl=bn,Il=PA(Al,rn,Nn,Un=Nn>>31),sl=bn+rl|0,sl=(Pt=Il+Pt|0)>>>0>>0?sl+1|0:sl,rl=PA(on,Zn,yn,Mn=yn>>31),Il=bn+sl|0,Il=(Pt=rl+Pt|0)>>>0>>0?Il+1|0:Il,sl=PA(pl,dn,Gn,gn),rl=bn+Il|0,rl=(Pt=sl+Pt|0)>>>0>>0?rl+1|0:rl,Il=PA(An,Fn,Yn,zn=Yn>>31),rl=bn+rl|0,rl=(Pt=Il+Pt|0)>>>0>>0?rl+1|0:rl,Il=PA(Zl,un,vn,Ln),rl=bn+rl|0,rl=(Pt=Il+Pt|0)>>>0>>0?rl+1|0:rl,Il=PA(dl=In(dl,19),Cn=dl>>31,Vn,Sn=Vn>>31),sl=bn+rl|0,sl=(Pt=Il+Pt|0)>>>0>>0?sl+1|0:sl,rl=PA(ml,pn,Gl,En),Il=bn+sl|0,Il=(Pt=rl+Pt|0)>>>0>>0?Il+1|0:Il,sl=PA(ol,Wn,Rn,jn=Rn>>31),rl=bn+Il|0,rl=(Pt=sl+Pt|0)>>>0>>0?rl+1|0:rl,Il=PA(ul,hn,an,sn),rl=bn+rl|0,Vl=Pt=Il+Pt|0,gl=Pt>>>0>>0?rl+1|0:rl,Pt=PA(tn,mn,wn,Jn),rl=bn,Il=PA(Al,rn,hl,cn),rl=bn+rl|0,rl=(Pt=Il+Pt|0)>>>0>>0?rl+1|0:rl,Il=PA(pl,dn,on,Zn),sl=bn+rl|0,sl=(Pt=Il+Pt|0)>>>0>>0?sl+1|0:sl,rl=PA(Gn,gn,Qn,Bn),Il=bn+sl|0,Il=(Pt=rl+Pt|0)>>>0>>0?Il+1|0:Il,sl=PA(Zl,un,An,Fn),rl=bn+Il|0,rl=(Pt=sl+Pt|0)>>>0>>0?rl+1|0:rl,Il=PA(Xn=In(vn,19),Dn=Xn>>31,fn,On),rl=bn+rl|0,rl=(Pt=Il+Pt|0)>>>0>>0?rl+1|0:rl,Il=PA(ml,pn,dl,Cn),rl=bn+rl|0,rl=(Pt=Il+Pt|0)>>>0>>0?rl+1|0:rl,Il=PA(Gl,En,Hn,Tn),sl=bn+rl|0,sl=(Pt=Il+Pt|0)>>>0>>0?sl+1|0:sl,rl=PA(ol,Wn,an,sn),Il=bn+sl|0,Il=(Pt=rl+Pt|0)>>>0>>0?Il+1|0:Il,sl=PA(ul,hn,Nl,kn),rl=bn+Il|0,$n=Pt=sl+Pt|0,el=rl=Pt>>>0>>0?rl+1|0:rl,tl=Pt=Pt+33554432|0,nl=rl=Pt>>>0<33554432?rl+1|0:rl,sl=(67108863&rl)<<6|Pt>>>26,rl=(rl>>26)+gl|0,Vl=Pt=sl+Vl|0,rl=Pt>>>0>>0?rl+1|0:rl,ll=Pt=Pt+16777216|0,rl=en+(Il=(sl=Pt>>>0<16777216?rl+1|0:rl)>>25)|0,rl=(Pt=(sl=(33554431&sl)<<7|Pt>>>25)+cl|0)>>>0>>0?rl+1|0:rl,yl=en=(Il=Pt)+33554432|0,Pt=rl=en>>>0<33554432?rl+1|0:rl,nn[Wt+24>>2]=Il-(-67108864&en),en=PA(tn,mn,Qn,Bn),rl=bn,Il=PA(Al,rn,pl,dn),sl=bn+rl|0,sl=(en=Il+en|0)>>>0>>0?sl+1|0:sl,Il=(rl=en)+(en=PA(Zl,un,on,Zn))|0,rl=bn+sl|0,rl=en>>>0>Il>>>0?rl+1|0:rl,sl=PA(en=In(Gn,19),vl=en>>31,fn,On),rl=bn+rl|0,rl=(Il=sl+Il|0)>>>0>>0?rl+1|0:rl,sl=(cl=PA(ml,pn,gl=In(An,19),Kn=gl>>31))+Il|0,Il=bn+rl|0,Il=sl>>>0>>0?Il+1|0:Il,cl=PA(Hn,Tn,Xn,Dn),rl=bn+Il|0,rl=(sl=cl+sl|0)>>>0>>0?rl+1|0:rl,Il=(cl=PA(an,sn,dl,Cn))+sl|0,sl=bn+rl|0,sl=Il>>>0>>0?sl+1|0:sl,cl=PA(Gl,En,Nl,kn),rl=bn+sl|0,rl=(Il=cl+Il|0)>>>0>>0?rl+1|0:rl,sl=PA(ol,Wn,hl,cn),rl=bn+rl|0,rl=(Il=sl+Il|0)>>>0>>0?rl+1|0:rl,sl=(cl=PA(ul,hn,wn,Jn))+Il|0,Il=bn+rl|0,bl=sl,Rl=sl>>>0>>0?Il+1|0:Il,rl=PA(Zl,un,tn,mn),Il=bn,sl=(cl=PA(Al,rn,Yn,zn))+rl|0,rl=bn+Il|0,rl=sl>>>0>>0?rl+1|0:rl,cl=Il=In(on,19),Il=(il=PA(Il,El=Il>>31,Vn,Sn))+sl|0,sl=bn+rl|0,sl=Il>>>0>>0?sl+1|0:sl,il=PA(ml,pn,en,vl),rl=bn+sl|0,rl=(Il=il+Il|0)>>>0>>0?rl+1|0:rl,sl=PA(gl,Kn,Rn,jn),rl=bn+rl|0,rl=(Il=sl+Il|0)>>>0>>0?rl+1|0:rl,sl=(il=PA(an,sn,Xn,Dn))+Il|0,Il=bn+rl|0,Il=sl>>>0>>0?Il+1|0:Il,il=PA(dl,Cn,Nn,Un),rl=bn+Il|0,rl=(sl=il+sl|0)>>>0>>0?rl+1|0:rl,Il=(il=PA(hl,cn,Gl,En))+sl|0,sl=bn+rl|0,sl=Il>>>0>>0?sl+1|0:sl,il=PA(ol,Wn,yn,Mn),rl=bn+sl|0,rl=(Il=il+Il|0)>>>0>>0?rl+1|0:rl,sl=PA(ul,hn,pl,dn),rl=bn+rl|0,wl=Il=sl+Il|0,il=Il>>>0>>0?rl+1|0:rl,rl=PA(rl=In(tn,19),rl>>31,fn,On),Il=bn,sl=PA(Al,rn,Zl,un),Il=bn+Il|0,Il=(rl=sl+rl|0)>>>0>>0?Il+1|0:Il,sl=(cl=PA(ml,pn,cl,El))+rl|0,rl=bn+Il|0,en=(Il=PA(en,vl,Hn,Tn))+sl|0,sl=bn+(sl>>>0>>0?rl+1|0:rl)|0,sl=en>>>0>>0?sl+1|0:sl,Il=PA(an,sn,gl,Kn),rl=bn+sl|0,rl=(en=Il+en|0)>>>0>>0?rl+1|0:rl,Il=PA(Nl,kn,Xn,Dn),rl=bn+rl|0,rl=(en=Il+en|0)>>>0>>0?rl+1|0:rl,sl=PA(hl,cn,dl,Cn),Il=bn+rl|0,Il=(en=sl+en|0)>>>0>>0?Il+1|0:Il,sl=PA(Gl,En,wn,Jn),rl=bn+Il|0,rl=(en=sl+en|0)>>>0>>0?rl+1|0:rl,Il=PA(ol,Wn,pl,dn),sl=bn+rl|0,sl=(en=Il+en|0)>>>0>>0?sl+1|0:sl,Il=PA(ul,hn,Qn,Bn),rl=bn+sl|0,cl=en=Il+en|0,vl=rl=en>>>0>>0?rl+1|0:rl,El=en=en+33554432|0,al=rl=en>>>0<33554432?rl+1|0:rl,Il=(sl=rl>>26)+il|0,il=en=(rl=(67108863&rl)<<6|en>>>26)+wl|0,rl=en>>>0>>0?Il+1|0:Il,wl=en=en+16777216|0,Il=(33554431&(rl=en>>>0<16777216?rl+1|0:rl))<<7|en>>>25,rl=(rl>>25)+Rl|0,rl=(en=Il+bl|0)>>>0>>0?rl+1|0:rl,Rl=Il=(sl=en)+33554432|0,en=rl=Il>>>0<33554432?rl+1|0:rl,nn[Wt+8>>2]=sl-(-67108864&Il),rl=PA(an,sn,tn,mn),sl=bn,Il=(bl=PA(Al,rn,Rn,jn))+rl|0,rl=bn+sl|0,rl=Il>>>0>>0?rl+1|0:rl,sl=PA(on,Zn,Nn,Un),rl=bn+rl|0,rl=(Il=sl+Il|0)>>>0>>0?rl+1|0:rl,sl=PA(hl,cn,Gn,gn),rl=bn+rl|0,rl=(Il=sl+Il|0)>>>0>>0?rl+1|0:rl,bl=PA(An,Fn,yn,Mn),sl=bn+rl|0,sl=(Il=bl+Il|0)>>>0>>0?sl+1|0:sl,rl=(bl=PA(pl,dn,vn,Ln))+Il|0,Il=bn+sl|0,Il=rl>>>0>>0?Il+1|0:Il,sl=(bl=PA(Yn,zn,Pn,_n))+rl|0,rl=bn+Il|0,rl=sl>>>0>>0?rl+1|0:rl,Il=sl,sl=PA(Zl,un,xn,bl=xn>>31),rl=bn+rl|0,rl=(Il=Il+sl|0)>>>0>>0?rl+1|0:rl,sl=PA(ol,Wn,Vn,Sn),rl=bn+rl|0,rl=(Il=sl+Il|0)>>>0>>0?rl+1|0:rl,Wl=PA(ul,hn,ml,pn),sl=bn+rl|0,rl=Pt>>26,Pt=(yl=(67108863&Pt)<<6|yl>>>26)+(Il=Wl+Il|0)|0,Il=rl+(Il>>>0>>0?sl+1|0:sl)|0,rl=(sl=Pt)>>>0>>0?Il+1|0:Il,yl=Il=sl+16777216|0,Pt=rl=Il>>>0<16777216?rl+1|0:rl,nn[Wt+28>>2]=sl-(-33554432&Il),rl=PA(pl,dn,tn,mn),Il=bn,Wl=PA(Al,rn,yn,Mn),sl=bn+Il|0,sl=(rl=Wl+rl|0)>>>0>>0?sl+1|0:sl,Wl=PA(on,Zn,Yn,zn),Il=bn+sl|0,Il=(rl=Wl+rl|0)>>>0>>0?Il+1|0:Il,sl=(Wl=PA(Zl,un,Gn,gn))+rl|0,rl=bn+Il|0,rl=sl>>>0>>0?rl+1|0:rl,Il=sl,sl=PA(gl,Kn,Vn,Sn),rl=bn+rl|0,rl=(Il=Il+sl|0)>>>0>>0?rl+1|0:rl,sl=PA(ml,pn,Xn,Dn),rl=bn+rl|0,rl=(Il=sl+Il|0)>>>0>>0?rl+1|0:rl,Il=(dl=PA(dl,Cn,Rn,jn))+Il|0,sl=bn+rl|0,rl=(Gl=PA(an,sn,Gl,En))+Il|0,Il=bn+(Il>>>0
                            >>0?sl+1|0:sl)|0,sl=(ol=PA(ol,Wn,Nn,Un))+rl|0,rl=bn+(rl>>>0>>0?Il+1|0:Il)|0,rl=sl>>>0
                              >>0?rl+1|0:rl,Il=sl,sl=PA(ul,hn,hl,cn),rl=bn+rl|0,ol=Il=Il+sl|0,rl=(rl=Il>>>0>>0?rl+1|0:rl)+(Il=en>>26)|0,ol=en=ol+(sl=(67108863&en)<<6|Rl>>>26)|0,rl=en>>>0>>0?rl+1|0:rl,Gl=Il=en+16777216|0,en=sl=Il>>>0<16777216?rl+1|0:rl,nn[Wt+12>>2]=ol-(-33554432&Il),rl=PA(tn,mn,Hn,Tn),sl=bn,Il=(ol=PA(Al,rn,ml,pn))+rl|0,rl=bn+sl|0,rl=Il>>>0
                                >>0?rl+1|0:rl,sl=PA(an,sn,on,Zn),rl=bn+rl|0,rl=(Il=sl+Il|0)>>>0>>0?rl+1|0:rl,ol=PA(Gn,gn,Nl,kn),sl=bn+rl|0,sl=(Il=ol+Il|0)>>>0
                                  >>0?sl+1|0:sl,rl=(ol=PA(hl,cn,An,Fn))+Il|0,Il=bn+sl|0,Il=rl>>>0
                                    >>0?Il+1|0:Il,sl=(ol=PA(wn,Jn,vn,Ln))+rl|0,rl=bn+Il|0,rl=sl>>>0
                                      >>0?rl+1|0:rl,Il=sl,sl=PA(pl,dn,Pn,_n),rl=bn+rl|0,rl=(Il=Il+sl|0)>>>0>>0?rl+1|0:rl,sl=PA(xn,bl,Qn,Bn),rl=bn+rl|0,rl=(Il=sl+Il|0)>>>0>>0?rl+1|0:rl,Il=(Nl=PA(Zl,un,ol=Yl,dl=ol>>31))+Il|0,sl=bn+rl|0,rl=(ul=PA(ul,hn,fn,On))+Il|0,Il=bn+(Il>>>0>>0?sl+1|0:sl)|0,Il=rl>>>0
                                        >>0?Il+1|0:Il,Yl=rl,rl=(rl=Pt>>25)+Il|0,rl=(Pt=Yl+(sl=(33554431&Pt)<<7|yl>>>25)|0)>>>0>>0?rl+1|0:rl,ul=Il=(sl=Pt)+33554432|0,Pt=rl=Il>>>0<33554432?rl+1|0:rl,nn[Wt+32>>2]=sl-(-67108864&Il),Il=en>>25,en=(Gl=(33554431&en)<<7|Gl>>>25)+($n-(rl=-67108864&tl)|0)|0,rl=Il+(el-((rl>>>0>$n>>>0)+nl|0)|0)|0,rl=en>>>0>>0?rl+1|0:rl,rl=((67108863&(rl=(en=(Il=en)+33554432|0)>>>0<33554432?rl+1|0:rl))<<6|en>>>26)+(sl=Vl-(-33554432&ll)|0)|0,nn[Wt+20>>2]=rl,nn[Wt+16>>2]=Il-(-67108864&en),en=PA(ml,pn,tn,mn),rl=bn,Il=PA(Al,rn,Vn,Sn),rl=bn+rl|0,rl=(en=Il+en|0)>>>0>>0?rl+1|0:rl,sl=PA(on,Zn,Rn,jn),Il=bn+rl|0,Il=(en=sl+en|0)>>>0>>0?Il+1|0:Il,rl=PA(an,sn,Gn,gn),sl=bn+Il|0,sl=(en=rl+en|0)>>>0>>0?sl+1|0:sl,Il=PA(An,Fn,Nn,Un),rl=bn+sl|0,rl=(en=Il+en|0)>>>0>>0?rl+1|0:rl,Il=PA(hl,cn,vn,Ln),rl=bn+rl|0,rl=(en=Il+en|0)>>>0>>0?rl+1|0:rl,Il=PA(yn,Mn,Pn,_n),rl=bn+rl|0,rl=(en=Il+en|0)>>>0>>0?rl+1|0:rl,sl=PA(pl,dn,xn,bl),Il=bn+rl|0,Il=(en=sl+en|0)>>>0>>0?Il+1|0:Il,rl=PA(ol,dl,Yn,zn),sl=bn+Il|0,sl=(en=rl+en|0)>>>0>>0?sl+1|0:sl,Il=PA(Zl,un,qn,qn>>31),rl=bn+sl|0,rl=(rl=(en=Il+en|0)>>>0>>0?rl+1|0:rl)+(Il=Pt>>26)|0,rl=(Pt=(sl=en)+(en=(67108863&Pt)<<6|ul>>>26)|0)>>>0>>0?rl+1|0:rl,rl=(Pt=(en=Pt)+16777216|0)>>>0<16777216?rl+1|0:rl,nn[Wt+36>>2]=en-(-33554432&Pt),sl=il-(-33554432&wl)|0,Il=cl-(en=-67108864&El)|0,Al=vl-((en>>>0>cl>>>0)+al|0)|0,Pt=(en=PA((33554431&(en=rl))<<7|Pt>>>25,rl>>=25,19,0))+Il|0,Il=bn+Al|0,rl=Pt>>>0>>0?Il+1|0:Il,rl=((67108863&(rl=(Pt=(en=Pt)+33554432|0)>>>0<33554432?rl+1|0:rl))<<6|Pt>>>26)+sl|0,nn[Wt+4>>2]=rl,nn[Wt>>2]=en-(-67108864&Pt)}function N(Wt,Pt){var en,tn,rn,In,sn,on,cn,dn,un,pn,bn,Gn,hn,Zn,An,Wn,Nn=0,gn=0,yn=0;mn=en=mn-544|0,tn=an[Wt+60|0]|an[Wt+61|0]<<8|an[Wt+62|0]<<16|an[Wt+63|0]<<24,rn=an[Wt+56|0]|an[Wt+57|0]<<8|an[Wt+58|0]<<16|an[Wt+59|0]<<24,In=an[Wt+52|0]|an[Wt+53|0]<<8|an[Wt+54|0]<<16|an[Wt+55|0]<<24,sn=an[Wt+48|0]|an[Wt+49|0]<<8|an[Wt+50|0]<<16|an[Wt+51|0]<<24,on=an[Wt+32|0]|an[Wt+33|0]<<8|an[Wt+34|0]<<16|an[Wt+35|0]<<24,cn=an[Wt+36|0]|an[Wt+37|0]<<8|an[Wt+38|0]<<16|an[Wt+39|0]<<24,dn=an[Wt+40|0]|an[Wt+41|0]<<8|an[Wt+42|0]<<16|an[Wt+43|0]<<24,un=an[Wt+44|0]|an[Wt+45|0]<<8|an[Wt+46|0]<<16|an[Wt+47|0]<<24,Nn=an[Wt+28|0]|an[Wt+29|0]<<8|an[Wt+30|0]<<16|an[Wt+31|0]<<24,pn=an[Wt+24|0]|an[Wt+25|0]<<8|an[Wt+26|0]<<16|an[Wt+27|0]<<24,bn=an[Wt+20|0]|an[Wt+21|0]<<8|an[Wt+22|0]<<16|an[Wt+23|0]<<24,Gn=an[Wt+16|0]|an[Wt+17|0]<<8|an[Wt+18|0]<<16|an[Wt+19|0]<<24,hn=an[Wt+4|0]|an[Wt+5|0]<<8|an[Wt+6|0]<<16|an[Wt+7|0]<<24,Zn=an[Wt+8|0]|an[Wt+9|0]<<8|an[Wt+10|0]<<16|an[Wt+11|0]<<24,An=an[Wt+12|0]|an[Wt+13|0]<<8|an[Wt+14|0]<<16|an[Wt+15|0]<<24,Wn=an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24,Wt=nn[Pt+124>>2],nn[en+536>>2]=nn[Pt+120>>2],nn[en+540>>2]=Wt,Wt=nn[Pt+116>>2],nn[en+528>>2]=nn[Pt+112>>2],nn[en+532>>2]=Wt,Wt=nn[Pt+108>>2],nn[en+504>>2]=nn[Pt+104>>2],nn[en+508>>2]=Wt,Wt=nn[Pt+100>>2],nn[en+496>>2]=nn[Pt+96>>2],nn[en+500>>2]=Wt,Wt=nn[Pt+124>>2],nn[en+488>>2]=nn[Pt+120>>2],nn[en+492>>2]=Wt,Wt=nn[Pt+116>>2],nn[en+480>>2]=nn[Pt+112>>2],nn[en+484>>2]=Wt,aA(yn=en+512|0,en+496|0,en+480|0),Wt=nn[en+524>>2],nn[Pt+120>>2]=nn[en+520>>2],nn[Pt+124>>2]=Wt,Wt=nn[en+516>>2],nn[Pt+112>>2]=nn[en+512>>2],nn[Pt+116>>2]=Wt,Wt=nn[Pt+92>>2],nn[en+472>>2]=nn[Pt+88>>2],nn[en+476>>2]=Wt,Wt=nn[Pt+84>>2],nn[en+464>>2]=nn[Pt+80>>2],nn[en+468>>2]=Wt,Wt=nn[Pt+108>>2],nn[en+456>>2]=nn[Pt+104>>2],nn[en+460>>2]=Wt,Wt=nn[Pt+100>>2],nn[en+448>>2]=nn[Pt+96>>2],nn[en+452>>2]=Wt,aA(yn,en+464|0,en+448|0),Wt=nn[en+524>>2],nn[Pt+104>>2]=nn[en+520>>2],nn[Pt+108>>2]=Wt,Wt=nn[en+516>>2],nn[Pt+96>>2]=nn[en+512>>2],nn[Pt+100>>2]=Wt,Wt=nn[Pt+76>>2],nn[en+440>>2]=nn[Pt+72>>2],nn[en+444>>2]=Wt,gn=nn[4+(Wt=Pt- -64|0)>>2],nn[en+432>>2]=nn[Wt>>2],nn[en+436>>2]=gn,gn=nn[Pt+92>>2],nn[en+424>>2]=nn[Pt+88>>2],nn[en+428>>2]=gn,gn=nn[Pt+84>>2],nn[en+416>>2]=nn[Pt+80>>2],nn[en+420>>2]=gn,aA(yn,en+432|0,en+416|0),gn=nn[en+524>>2],nn[Pt+88>>2]=nn[en+520>>2],nn[Pt+92>>2]=gn,gn=nn[en+516>>2],nn[Pt+80>>2]=nn[en+512>>2],nn[Pt+84>>2]=gn,gn=nn[Pt+60>>2],nn[en+408>>2]=nn[Pt+56>>2],nn[en+412>>2]=gn,gn=nn[Pt+52>>2],nn[en+400>>2]=nn[Pt+48>>2],nn[en+404>>2]=gn,gn=nn[Pt+76>>2],nn[en+392>>2]=nn[Pt+72>>2],nn[en+396>>2]=gn,gn=nn[Wt+4>>2],nn[en+384>>2]=nn[Wt>>2],nn[en+388>>2]=gn,aA(yn,en+400|0,en+384|0),gn=nn[en+524>>2],nn[Pt+72>>2]=nn[en+520>>2],nn[Pt+76>>2]=gn,gn=nn[en+516>>2],nn[Wt>>2]=nn[en+512>>2],nn[Wt+4>>2]=gn,gn=nn[Pt+44>>2],nn[en+376>>2]=nn[Pt+40>>2],nn[en+380>>2]=gn,gn=nn[Pt+36>>2],nn[en+368>>2]=nn[Pt+32>>2],nn[en+372>>2]=gn,gn=nn[Pt+60>>2],nn[en+360>>2]=nn[Pt+56>>2],nn[en+364>>2]=gn,gn=nn[Pt+52>>2],nn[en+352>>2]=nn[Pt+48>>2],nn[en+356>>2]=gn,aA(yn,en+368|0,en+352|0),gn=nn[en+524>>2],nn[Pt+56>>2]=nn[en+520>>2],nn[Pt+60>>2]=gn,gn=nn[en+516>>2],nn[Pt+48>>2]=nn[en+512>>2],nn[Pt+52>>2]=gn,gn=nn[Pt+28>>2],nn[en+344>>2]=nn[Pt+24>>2],nn[en+348>>2]=gn,gn=nn[Pt+20>>2],nn[en+336>>2]=nn[Pt+16>>2],nn[en+340>>2]=gn,gn=nn[Pt+44>>2],nn[en+328>>2]=nn[Pt+40>>2],nn[en+332>>2]=gn,gn=nn[Pt+36>>2],nn[en+320>>2]=nn[Pt+32>>2],nn[en+324>>2]=gn,aA(yn,en+336|0,en+320|0),gn=nn[en+524>>2],nn[Pt+40>>2]=nn[en+520>>2],nn[Pt+44>>2]=gn,gn=nn[en+516>>2],nn[Pt+32>>2]=nn[en+512>>2],nn[Pt+36>>2]=gn,gn=nn[Pt+12>>2],nn[en+312>>2]=nn[Pt+8>>2],nn[en+316>>2]=gn,gn=nn[Pt+4>>2],nn[en+304>>2]=nn[Pt>>2],nn[en+308>>2]=gn,gn=nn[Pt+28>>2],nn[en+296>>2]=nn[Pt+24>>2],nn[en+300>>2]=gn,gn=nn[Pt+20>>2],nn[en+288>>2]=nn[Pt+16>>2],nn[en+292>>2]=gn,aA(yn,en+304|0,en+288|0),gn=nn[en+524>>2],nn[Pt+24>>2]=nn[en+520>>2],nn[Pt+28>>2]=gn,gn=nn[en+516>>2],nn[Pt+16>>2]=nn[en+512>>2],nn[Pt+20>>2]=gn,gn=nn[en+540>>2],nn[en+280>>2]=nn[en+536>>2],nn[en+284>>2]=gn,gn=nn[en+532>>2],nn[en+272>>2]=nn[en+528>>2],nn[en+276>>2]=gn,gn=nn[Pt+12>>2],nn[en+264>>2]=nn[Pt+8>>2],nn[en+268>>2]=gn,gn=nn[Pt+4>>2],nn[en+256>>2]=nn[Pt>>2],nn[en+260>>2]=gn,aA(yn,en+272|0,en+256|0),gn=nn[en+524>>2],nn[Pt+8>>2]=nn[en+520>>2],nn[Pt+12>>2]=gn,gn=nn[en+516>>2],nn[Pt>>2]=nn[en+512>>2],nn[Pt+4>>2]=gn,nn[Pt+12>>2]=(an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24)^An,nn[Pt+8>>2]=(an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24)^Zn,nn[Pt+4>>2]=(an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24)^hn,nn[Pt>>2]=(an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24)^Wn,nn[Wt>>2]=(an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24)^Gn,nn[Pt+68>>2]=(an[Pt+68|0]|an[Pt+69|0]<<8|an[Pt+70|0]<<16|an[Pt+71|0]<<24)^bn,nn[Pt+72>>2]=(an[Pt+72|0]|an[Pt+73|0]<<8|an[Pt+74|0]<<16|an[Pt+75|0]<<24)^pn,nn[Pt+76>>2]=(an[Pt+76|0]|an[Pt+77|0]<<8|an[Pt+78|0]<<16|an[Pt+79|0]<<24)^Nn,Nn=nn[Pt+124>>2],nn[en+536>>2]=nn[Pt+120>>2],nn[en+540>>2]=Nn,Nn=nn[Pt+116>>2],nn[en+528>>2]=nn[Pt+112>>2],nn[en+532>>2]=Nn,Nn=nn[Pt+108>>2],nn[en+248>>2]=nn[Pt+104>>2],nn[en+252>>2]=Nn,Nn=nn[Pt+100>>2],nn[en+240>>2]=nn[Pt+96>>2],nn[en+244>>2]=Nn,Nn=nn[Pt+124>>2],nn[en+232>>2]=nn[Pt+120>>2],nn[en+236>>2]=Nn,Nn=nn[Pt+116>>2],nn[en+224>>2]=nn[Pt+112>>2],nn[en+228>>2]=Nn,aA(yn,en+240|0,en+224|0),Nn=nn[en+524>>2],nn[Pt+120>>2]=nn[en+520>>2],nn[Pt+124>>2]=Nn,Nn=nn[en+516>>2],nn[Pt+112>>2]=nn[en+512>>2],nn[Pt+116>>2]=Nn,Nn=nn[Pt+92>>2],nn[en+216>>2]=nn[Pt+88>>2],nn[en+220>>2]=Nn,Nn=nn[Pt+84>>2],nn[en+208>>2]=nn[Pt+80>>2],nn[en+212>>2]=Nn,Nn=nn[Pt+108>>2],nn[en+200>>2]=nn[Pt+104>>2],nn[en+204>>2]=Nn,Nn=nn[Pt+100>>2],nn[en+192>>2]=nn[Pt+96>>2],nn[en+196>>2]=Nn,aA(yn,en+208|0,en+192|0),Nn=nn[en+524>>2],nn[Pt+104>>2]=nn[en+520>>2],nn[Pt+108>>2]=Nn,Nn=nn[en+516>>2],nn[Pt+96>>2]=nn[en+512>>2],nn[Pt+100>>2]=Nn,Nn=nn[Pt+76>>2],nn[en+184>>2]=nn[Pt+72>>2],nn[en+188>>2]=Nn,Nn=nn[Wt+4>>2],nn[en+176>>2]=nn[Wt>>2],nn[en+180>>2]=Nn,Nn=nn[Pt+92>>2],nn[en+168>>2]=nn[Pt+88>>2],nn[en+172>>2]=Nn,Nn=nn[Pt+84>>2],nn[en+160>>2]=nn[Pt+80>>2],nn[en+164>>2]=Nn,aA(yn,en+176|0,en+160|0),Nn=nn[en+524>>2],nn[Pt+88>>2]=nn[en+520>>2],nn[Pt+92>>2]=Nn,Nn=nn[en+516>>2],nn[Pt+80>>2]=nn[en+512>>2],nn[Pt+84>>2]=Nn,Nn=nn[Pt+60>>2],nn[en+152>>2]=nn[Pt+56>>2],nn[en+156>>2]=Nn,Nn=nn[Pt+52>>2],nn[en+144>>2]=nn[Pt+48>>2],nn[en+148>>2]=Nn,Nn=nn[Pt+76>>2],nn[en+136>>2]=nn[Pt+72>>2],nn[en+140>>2]=Nn,Nn=nn[Wt+4>>2],nn[en+128>>2]=nn[Wt>>2],nn[en+132>>2]=Nn,aA(yn,en+144|0,en+128|0),Nn=nn[en+524>>2],nn[Pt+72>>2]=nn[en+520>>2],nn[Pt+76>>2]=Nn,Nn=nn[en+516>>2],nn[Wt>>2]=nn[en+512>>2],nn[Wt+4>>2]=Nn,Nn=nn[Pt+44>>2],nn[en+120>>2]=nn[Pt+40>>2],nn[en+124>>2]=Nn,Nn=nn[Pt+36>>2],nn[en+112>>2]=nn[Pt+32>>2],nn[en+116>>2]=Nn,Nn=nn[Pt+60>>2],nn[en+104>>2]=nn[Pt+56>>2],nn[en+108>>2]=Nn,Nn=nn[Pt+52>>2],nn[en+96>>2]=nn[Pt+48>>2],nn[en+100>>2]=Nn,aA(yn,en+112|0,en+96|0),Nn=nn[en+524>>2],nn[Pt+56>>2]=nn[en+520>>2],nn[Pt+60>>2]=Nn,Nn=nn[en+516>>2],nn[Pt+48>>2]=nn[en+512>>2],nn[Pt+52>>2]=Nn,Nn=nn[Pt+28>>2],nn[en+88>>2]=nn[Pt+24>>2],nn[en+92>>2]=Nn,Nn=nn[Pt+20>>2],nn[en+80>>2]=nn[Pt+16>>2],nn[en+84>>2]=Nn,Nn=nn[Pt+44>>2],nn[en+72>>2]=nn[Pt+40>>2],nn[en+76>>2]=Nn,Nn=nn[Pt+36>>2],nn[en+64>>2]=nn[Pt+32>>2],nn[en+68>>2]=Nn,aA(yn,en+80|0,en- -64|0),Nn=nn[en+524>>2],nn[Pt+40>>2]=nn[en+520>>2],nn[Pt+44>>2]=Nn,Nn=nn[en+516>>2],nn[Pt+32>>2]=nn[en+512>>2],nn[Pt+36>>2]=Nn,Nn=nn[Pt+12>>2],nn[en+56>>2]=nn[Pt+8>>2],nn[en+60>>2]=Nn,Nn=nn[Pt+4>>2],nn[en+48>>2]=nn[Pt>>2],nn[en+52>>2]=Nn,Nn=nn[Pt+28>>2],nn[en+40>>2]=nn[Pt+24>>2],nn[en+44>>2]=Nn,Nn=nn[Pt+20>>2],nn[en+32>>2]=nn[Pt+16>>2],nn[en+36>>2]=Nn,aA(yn,en+48|0,en+32|0),Nn=nn[en+524>>2],nn[Pt+24>>2]=nn[en+520>>2],nn[Pt+28>>2]=Nn,Nn=nn[en+516>>2],nn[Pt+16>>2]=nn[en+512>>2],nn[Pt+20>>2]=Nn,Nn=nn[en+540>>2],nn[en+24>>2]=nn[en+536>>2],nn[en+28>>2]=Nn,Nn=nn[en+532>>2],nn[en+16>>2]=nn[en+528>>2],nn[en+20>>2]=Nn,Nn=nn[Pt+12>>2],nn[en+8>>2]=nn[Pt+8>>2],nn[en+12>>2]=Nn,Nn=nn[Pt+4>>2],nn[en>>2]=nn[Pt>>2],nn[en+4>>2]=Nn,aA(yn,en+16|0,en),yn=nn[en+524>>2],nn[Pt+8>>2]=nn[en+520>>2],nn[Pt+12>>2]=yn,yn=nn[en+516>>2],nn[Pt>>2]=nn[en+512>>2],nn[Pt+4>>2]=yn,nn[Pt+12>>2]=(an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24)^un,nn[Pt+8>>2]=(an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24)^dn,nn[Pt+4>>2]=(an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24)^cn,nn[Pt>>2]=(an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24)^on,nn[Wt>>2]=(an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24)^sn,nn[Pt+68>>2]=(an[Pt+68|0]|an[Pt+69|0]<<8|an[Pt+70|0]<<16|an[Pt+71|0]<<24)^In,nn[Pt+72>>2]=(an[Pt+72|0]|an[Pt+73|0]<<8|an[Pt+74|0]<<16|an[Pt+75|0]<<24)^rn,nn[Pt+76>>2]=(an[Pt+76|0]|an[Pt+77|0]<<8|an[Pt+78|0]<<16|an[Pt+79|0]<<24)^tn,mn=en+544|0}function K(Wt,Pt,en,rn,In){var sn,on=0,cn=0,dn=0,un=0,pn=0,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0;for(mn=sn=mn-288|0,Zn=(an[In+44|0]|an[In+45|0]<<8|an[In+46|0]<<16|an[In+47|0]<<24)^rn>>>29,An=(an[In+40|0]|an[In+41|0]<<8|an[In+42|0]<<16|an[In+43|0]<<24)^rn<<3,Wn=(an[In+36|0]|an[In+37|0]<<8|an[In+38|0]<<16|an[In+39|0]<<24)^en>>>29,rn=(an[0|(dn=In+32|0)]|an[dn+1|0]<<8|an[dn+2|0]<<16|an[dn+3|0]<<24)^en<<3,Gn=In+16|0,pn=In+48|0,cn=In- -64|0,bn=In+80|0,on=In+96|0,un=In+112|0;en=nn[un+12>>2],nn[sn+280>>2]=nn[un+8>>2],nn[sn+284>>2]=en,en=nn[un+4>>2],nn[sn+272>>2]=nn[un>>2],nn[sn+276>>2]=en,en=nn[on+12>>2],nn[sn+248>>2]=nn[on+8>>2],nn[sn+252>>2]=en,en=nn[on+4>>2],nn[sn+240>>2]=nn[on>>2],nn[sn+244>>2]=en,en=nn[un+12>>2],nn[sn+232>>2]=nn[un+8>>2],nn[sn+236>>2]=en,en=nn[un+4>>2],nn[sn+224>>2]=nn[un>>2],nn[sn+228>>2]=en,aA(hn=sn+256|0,sn+240|0,sn+224|0),en=nn[sn+268>>2],nn[un+8>>2]=nn[sn+264>>2],nn[un+12>>2]=en,en=nn[sn+260>>2],nn[un>>2]=nn[sn+256>>2],nn[un+4>>2]=en,en=nn[bn+12>>2],nn[sn+216>>2]=nn[bn+8>>2],nn[sn+220>>2]=en,en=nn[bn+4>>2],nn[sn+208>>2]=nn[bn>>2],nn[sn+212>>2]=en,en=nn[on+12>>2],nn[sn+200>>2]=nn[on+8>>2],nn[sn+204>>2]=en,en=nn[on+4>>2],nn[sn+192>>2]=nn[on>>2],nn[sn+196>>2]=en,aA(hn,sn+208|0,sn+192|0),en=nn[sn+268>>2],nn[on+8>>2]=nn[sn+264>>2],nn[on+12>>2]=en,en=nn[sn+260>>2],nn[on>>2]=nn[sn+256>>2],nn[on+4>>2]=en,en=nn[cn+12>>2],nn[sn+184>>2]=nn[cn+8>>2],nn[sn+188>>2]=en,en=nn[cn+4>>2],nn[sn+176>>2]=nn[cn>>2],nn[sn+180>>2]=en,en=nn[bn+12>>2],nn[sn+168>>2]=nn[bn+8>>2],nn[sn+172>>2]=en,en=nn[bn+4>>2],nn[sn+160>>2]=nn[bn>>2],nn[sn+164>>2]=en,aA(hn,sn+176|0,sn+160|0),en=nn[sn+268>>2],nn[bn+8>>2]=nn[sn+264>>2],nn[bn+12>>2]=en,en=nn[sn+260>>2],nn[bn>>2]=nn[sn+256>>2],nn[bn+4>>2]=en,en=nn[pn+12>>2],nn[sn+152>>2]=nn[pn+8>>2],nn[sn+156>>2]=en,en=nn[pn+4>>2],nn[sn+144>>2]=nn[pn>>2],nn[sn+148>>2]=en,en=nn[cn+12>>2],nn[sn+136>>2]=nn[cn+8>>2],nn[sn+140>>2]=en,en=nn[cn+4>>2],nn[sn+128>>2]=nn[cn>>2],nn[sn+132>>2]=en,aA(hn,sn+144|0,sn+128|0),en=nn[sn+268>>2],nn[cn+8>>2]=nn[sn+264>>2],nn[cn+12>>2]=en,en=nn[sn+260>>2],nn[cn>>2]=nn[sn+256>>2],nn[cn+4>>2]=en,en=nn[dn+12>>2],nn[sn+120>>2]=nn[dn+8>>2],nn[sn+124>>2]=en,en=nn[dn+4>>2],nn[sn+112>>2]=nn[dn>>2],nn[sn+116>>2]=en,en=nn[pn+12>>2],nn[sn+104>>2]=nn[pn+8>>2],nn[sn+108>>2]=en,en=nn[pn+4>>2],nn[sn+96>>2]=nn[pn>>2],nn[sn+100>>2]=en,aA(hn,sn+112|0,sn+96|0),en=nn[sn+268>>2],nn[pn+8>>2]=nn[sn+264>>2],nn[pn+12>>2]=en,en=nn[sn+260>>2],nn[pn>>2]=nn[sn+256>>2],nn[pn+4>>2]=en,en=nn[Gn+12>>2],nn[sn+88>>2]=nn[Gn+8>>2],nn[sn+92>>2]=en,en=nn[Gn+4>>2],nn[sn+80>>2]=nn[Gn>>2],nn[sn+84>>2]=en,en=nn[dn+12>>2],nn[sn+72>>2]=nn[dn+8>>2],nn[sn+76>>2]=en,en=nn[dn+4>>2],nn[sn+64>>2]=nn[dn>>2],nn[sn+68>>2]=en,aA(hn,sn+80|0,sn- -64|0),en=nn[sn+268>>2],nn[dn+8>>2]=nn[sn+264>>2],nn[dn+12>>2]=en,en=nn[sn+260>>2],nn[dn>>2]=nn[sn+256>>2],nn[dn+4>>2]=en,en=nn[In+12>>2],nn[sn+56>>2]=nn[In+8>>2],nn[sn+60>>2]=en,en=nn[In+4>>2],nn[sn+48>>2]=nn[In>>2],nn[sn+52>>2]=en,en=nn[Gn+12>>2],nn[sn+40>>2]=nn[Gn+8>>2],nn[sn+44>>2]=en,en=nn[Gn+4>>2],nn[sn+32>>2]=nn[Gn>>2],nn[sn+36>>2]=en,aA(hn,sn+48|0,sn+32|0),en=nn[sn+268>>2],nn[Gn+8>>2]=nn[sn+264>>2],nn[Gn+12>>2]=en,en=nn[sn+260>>2],nn[Gn>>2]=nn[sn+256>>2],nn[Gn+4>>2]=en,en=nn[sn+284>>2],nn[sn+24>>2]=nn[sn+280>>2],nn[sn+28>>2]=en,en=nn[sn+276>>2],nn[sn+16>>2]=nn[sn+272>>2],nn[sn+20>>2]=en,en=nn[In+12>>2],nn[sn+8>>2]=nn[In+8>>2],nn[sn+12>>2]=en,en=nn[In+4>>2],nn[sn>>2]=nn[In>>2],nn[sn+4>>2]=en,aA(hn,sn+16|0,sn),en=nn[sn+268>>2],nn[In+8>>2]=nn[sn+264>>2],nn[In+12>>2]=en,en=nn[sn+260>>2],nn[In>>2]=nn[sn+256>>2],nn[In+4>>2]=en,gn=Zn^(an[In+12|0]|an[In+13|0]<<8|an[In+14|0]<<16|an[In+15|0]<<24),nn[In+12>>2]=gn,yn=An^(an[In+8|0]|an[In+9|0]<<8|an[In+10|0]<<16|an[In+11|0]<<24),nn[In+8>>2]=yn,vn=Wn^(an[In+4|0]|an[In+5|0]<<8|an[In+6|0]<<16|an[In+7|0]<<24),nn[In+4>>2]=vn,Yn=rn^(an[0|In]|an[In+1|0]<<8|an[In+2|0]<<16|an[In+3|0]<<24),nn[In>>2]=Yn,En=rn^(an[0|cn]|an[cn+1|0]<<8|an[cn+2|0]<<16|an[cn+3|0]<<24),nn[cn>>2]=En,Vn=Wn^(an[In+68|0]|an[In+69|0]<<8|an[In+70|0]<<16|an[In+71|0]<<24),nn[In+68>>2]=Vn,Rn=An^(an[In+72|0]|an[In+73|0]<<8|an[In+74|0]<<16|an[In+75|0]<<24),nn[In+72>>2]=Rn,wn=Zn^(an[In+76|0]|an[In+77|0]<<8|an[In+78|0]<<16|an[In+79|0]<<24),nn[In+76>>2]=wn,7!=(0|(Nn=Nn+1|0)););e:{t:{n:{if(en=Pt-16|0){if(16==(0|en))break n;break t}cn=an[In+16|0]|an[In+17|0]<<8|an[In+18|0]<<16|an[In+19|0]<<24,dn=an[In+48|0]|an[In+49|0]<<8|an[In+50|0]<<16|an[In+51|0]<<24,Gn=an[In+32|0]|an[In+33|0]<<8|an[In+34|0]<<16|an[In+35|0]<<24,pn=an[In+96|0]|an[In+97|0]<<8|an[In+98|0]<<16|an[In+99|0]<<24,bn=an[In+80|0]|an[In+81|0]<<8|an[In+82|0]<<16|an[In+83|0]<<24,on=an[In+20|0]|an[In+21|0]<<8|an[In+22|0]<<16|an[In+23|0]<<24,un=an[In+52|0]|an[In+53|0]<<8|an[In+54|0]<<16|an[In+55|0]<<24,hn=an[In+36|0]|an[In+37|0]<<8|an[In+38|0]<<16|an[In+39|0]<<24,Zn=an[In+100|0]|an[In+101|0]<<8|an[In+102|0]<<16|an[In+103|0]<<24,An=an[In+84|0]|an[In+85|0]<<8|an[In+86|0]<<16|an[In+87|0]<<24,Wn=an[In+24|0]|an[In+25|0]<<8|an[In+26|0]<<16|an[In+27|0]<<24,Nn=an[In+56|0]|an[In+57|0]<<8|an[In+58|0]<<16|an[In+59|0]<<24,rn=an[In+40|0]|an[In+41|0]<<8|an[In+42|0]<<16|an[In+43|0]<<24,en=an[In+104|0]|an[In+105|0]<<8|an[In+106|0]<<16|an[In+107|0]<<24,Pt=an[In+88|0]|an[In+89|0]<<8|an[In+90|0]<<16|an[In+91|0]<<24,In=gn^(an[In+28|0]|an[In+29|0]<<8|an[In+30|0]<<16|an[In+31|0]<<24)^(an[In+60|0]|an[In+61|0]<<8|an[In+62|0]<<16|an[In+63|0]<<24)^(an[In+44|0]|an[In+45|0]<<8|an[In+46|0]<<16|an[In+47|0]<<24)^(an[In+92|0]|an[In+93|0]<<8|an[In+94|0]<<16|an[In+95|0]<<24)^(an[In+108|0]|an[In+109|0]<<8|an[In+110|0]<<16|an[In+111|0]<<24)^wn,tn[Wt+12|0]=In,tn[Wt+13|0]=In>>>8,tn[Wt+14|0]=In>>>16,tn[Wt+15|0]=In>>>24,Pt=Wn^Nn^rn^Pt^en^Rn^yn,tn[Wt+8|0]=Pt,tn[Wt+9|0]=Pt>>>8,tn[Wt+10|0]=Pt>>>16,tn[Wt+11|0]=Pt>>>24,Pt=on^un^hn^Zn^An^Vn^vn,tn[Wt+4|0]=Pt,tn[Wt+5|0]=Pt>>>8,tn[Wt+6|0]=Pt>>>16,tn[Wt+7|0]=Pt>>>24,Pt=cn^dn^Gn^pn^bn^En^Yn,tn[0|Wt]=Pt,tn[Wt+1|0]=Pt>>>8,tn[Wt+2|0]=Pt>>>16,tn[Wt+3|0]=Pt>>>24;break e}un=an[In+16|0]|an[In+17|0]<<8|an[In+18|0]<<16|an[In+19|0]<<24,hn=an[In+48|0]|an[In+49|0]<<8|an[In+50|0]<<16|an[In+51|0]<<24,Zn=an[In+32|0]|an[In+33|0]<<8|an[In+34|0]<<16|an[In+35|0]<<24,An=an[In+20|0]|an[In+21|0]<<8|an[In+22|0]<<16|an[In+23|0]<<24,Wn=an[In+52|0]|an[In+53|0]<<8|an[In+54|0]<<16|an[In+55|0]<<24,Nn=an[In+36|0]|an[In+37|0]<<8|an[In+38|0]<<16|an[In+39|0]<<24,rn=an[In+24|0]|an[In+25|0]<<8|an[In+26|0]<<16|an[In+27|0]<<24,en=an[In+56|0]|an[In+57|0]<<8|an[In+58|0]<<16|an[In+59|0]<<24,Pt=an[In+40|0]|an[In+41|0]<<8|an[In+42|0]<<16|an[In+43|0]<<24,on=gn^(an[In+28|0]|an[In+29|0]<<8|an[In+30|0]<<16|an[In+31|0]<<24)^(an[In+60|0]|an[In+61|0]<<8|an[In+62|0]<<16|an[In+63|0]<<24)^(an[In+44|0]|an[In+45|0]<<8|an[In+46|0]<<16|an[In+47|0]<<24),tn[Wt+12|0]=on,tn[Wt+13|0]=on>>>8,tn[Wt+14|0]=on>>>16,tn[Wt+15|0]=on>>>24,Pt=rn^Pt^en^yn,tn[Wt+8|0]=Pt,tn[Wt+9|0]=Pt>>>8,tn[Wt+10|0]=Pt>>>16,tn[Wt+11|0]=Pt>>>24,Pt=An^Wn^Nn^vn,tn[Wt+4|0]=Pt,tn[Wt+5|0]=Pt>>>8,tn[Wt+6|0]=Pt>>>16,tn[Wt+7|0]=Pt>>>24,Pt=un^hn^Zn^Yn,tn[0|Wt]=Pt,tn[Wt+1|0]=Pt>>>8,tn[Wt+2|0]=Pt>>>16,tn[Wt+3|0]=Pt>>>24,pn=an[In+80|0]|an[In+81|0]<<8|an[In+82|0]<<16|an[In+83|0]<<24,bn=an[0|(Pt=In- -64|0)]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,on=an[In+112|0]|an[In+113|0]<<8|an[In+114|0]<<16|an[In+115|0]<<24,un=an[In+96|0]|an[In+97|0]<<8|an[In+98|0]<<16|an[In+99|0]<<24,hn=an[In+84|0]|an[In+85|0]<<8|an[In+86|0]<<16|an[In+87|0]<<24,Zn=an[In+68|0]|an[In+69|0]<<8|an[In+70|0]<<16|an[In+71|0]<<24,An=an[In+116|0]|an[In+117|0]<<8|an[In+118|0]<<16|an[In+119|0]<<24,Wn=an[In+100|0]|an[In+101|0]<<8|an[In+102|0]<<16|an[In+103|0]<<24,Nn=an[In+88|0]|an[In+89|0]<<8|an[In+90|0]<<16|an[In+91|0]<<24,rn=an[In+72|0]|an[In+73|0]<<8|an[In+74|0]<<16|an[In+75|0]<<24,en=an[In+120|0]|an[In+121|0]<<8|an[In+122|0]<<16|an[In+123|0]<<24,Pt=an[In+104|0]|an[In+105|0]<<8|an[In+106|0]<<16|an[In+107|0]<<24,In=(an[In+92|0]|an[In+93|0]<<8|an[In+94|0]<<16|an[In+95|0]<<24)^(an[In+76|0]|an[In+77|0]<<8|an[In+78|0]<<16|an[In+79|0]<<24)^(an[In+124|0]|an[In+125|0]<<8|an[In+126|0]<<16|an[In+127|0]<<24)^(an[In+108|0]|an[In+109|0]<<8|an[In+110|0]<<16|an[In+111|0]<<24),tn[Wt+28|0]=In,tn[Wt+29|0]=In>>>8,tn[Wt+30|0]=In>>>16,tn[Wt+31|0]=In>>>24,Pt=Nn^rn^Pt^en,tn[Wt+24|0]=Pt,tn[Wt+25|0]=Pt>>>8,tn[Wt+26|0]=Pt>>>16,tn[Wt+27|0]=Pt>>>24,Pt=hn^Zn^An^Wn,tn[Wt+20|0]=Pt,tn[Wt+21|0]=Pt>>>8,tn[Wt+22|0]=Pt>>>16,tn[Wt+23|0]=Pt>>>24,Pt=pn^bn^on^un,tn[Wt+16|0]=Pt,tn[Wt+17|0]=Pt>>>8,tn[Wt+18|0]=Pt>>>16,tn[Wt+19|0]=Pt>>>24;break e}VA(Wt,0,Pt)}mn=sn+288|0}function _(Wt,Pt){var en,tn,an,rn,sn,on,cn,dn,un,pn,Gn,hn,Zn,An,Wn,Nn,gn,yn,vn,Yn,En,Vn,Rn,wn=0,Fn=0,Qn=0,fn=0,Hn=0,Cn=0,Xn=0,kn=0,Jn=0,Ln=0,Bn=0,xn=0,On=0,Tn=0,Un=0,Mn=0,zn=0,Sn=0,jn=0,Dn=0,_n=0,Kn=0,Pn=0,qn=0,$n=0,el=0,tl=0,nl=0,ll=0,al=0,rl=0,Il=0,sl=0,ol=0,cl=0,il=0;mn=en=mn-48|0,U(Wt,Pt),U(Wt+80|0,Pt+40|0),wn=PA(On=(el=nn[Pt+92>>2])<<1,sn=On>>31,kn=(fn=nn[Pt+84>>2])<<1,tn=kn>>31),Qn=bn,$n=Mn=nn[Pt+88>>2],Fn=(Bn=PA(Mn,jn=Mn>>31,Mn,jn))+wn|0,wn=bn+Qn|0,wn=Fn>>>0>>0?wn+1|0:wn,Qn=PA(Hn=nn[Pt+96>>2],on=Hn>>31,Bn=(Jn=nn[Pt+80>>2])<<1,an=Bn>>31),wn=bn+wn|0,wn=(Fn=Qn+Fn|0)>>>0>>0?wn+1|0:wn,nl=nn[Pt+108>>2],Qn=PA(xn=In(nl,38),Gn=xn>>31,nl,An=nl>>31),wn=bn+wn|0,wn=(Fn=Qn+Fn|0)>>>0>>0?wn+1|0:wn,Qn=Fn,Pn=nn[Pt+112>>2],Ln=PA(Cn=In(Pn,19),cn=Cn>>31,Fn=(Dn=nn[Pt+104>>2])<<1,Fn>>31),Fn=bn+wn|0,Fn=(Qn=Qn+Ln|0)>>>0>>0?Fn+1|0:Fn,rl=nn[Pt+116>>2],wn=PA(Ln=In(rl,38),rn=Ln>>31,Sn=(Kn=nn[Pt+100>>2])<<1,un=Sn>>31),Fn=bn+Fn|0,Il=wn=(wn>>>0>(Qn=wn+Qn|0)>>>0?Fn+1:Fn)<<1|Qn>>>31,sl=Qn=33554432+(Wn=Qn<<1)|0,ol=wn=Qn>>>0<33554432?wn+1|0:wn,Xn=(67108863&wn)<<6|Qn>>>26,_n=wn>>26,wn=PA(kn,tn,Hn,on),Qn=bn,Fn=(qn=PA(Mn<<=1,pn=Mn>>31,el,Nn=el>>31))+wn|0,wn=bn+Qn|0,wn=Fn>>>0>>0?wn+1|0:wn,Qn=(qn=PA(Kn,hn=Kn>>31,Bn,an))+Fn|0,Fn=bn+wn|0,Fn=Qn>>>0>>0?Fn+1|0:Fn,ll=PA(Cn,cn,qn=nl<<1,gn=qn>>31),wn=bn+Fn|0,wn=(Qn=ll+Qn|0)>>>0>>0?wn+1|0:wn,Fn=PA(Ln,rn,Dn,dn=Dn>>31),wn=bn+wn|0,Fn=(Fn=(Fn>>>0>(Qn=Fn+Qn|0)>>>0?wn+1:wn)<<1|Qn>>>31)+_n|0,ll=Qn=(wn=Qn<<1)+Xn|0,wn=Fn=wn>>>0>Qn>>>0?Fn+1|0:Fn,cl=Qn=Qn+16777216|0,Xn=(33554431&(wn=Qn>>>0<16777216?wn+1|0:wn))<<7|Qn>>>25,_n=wn>>25,wn=PA(On,sn,el,Nn),Qn=bn,Fn=(zn=PA(Hn,on,Mn,pn))+wn|0,wn=bn+Qn|0,wn=Fn>>>0>>0?wn+1|0:wn,Qn=PA(kn,tn,Sn,un),wn=bn+wn|0,wn=(Fn=Qn+Fn|0)>>>0>>0?wn+1|0:wn,Qn=(zn=PA(Bn,an,Dn,dn))+Fn|0,Fn=bn+wn|0,Fn=Qn>>>0>>0?Fn+1|0:Fn,zn=PA(Cn,cn,Pn,Zn=Pn>>31),wn=bn+Fn|0,wn=(Qn=zn+Qn|0)>>>0>>0?wn+1|0:wn,zn=PA(Ln,rn,qn,gn),Fn=bn+wn|0,Fn=((Qn=zn+Qn|0)>>>0>>0?Fn+1:Fn)<<1|Qn>>>31,Qn=(wn=Xn)+(Xn=Qn<<1)|0,wn=Fn+_n|0,wn=Qn>>>0>>0?wn+1|0:wn,_n=Qn,zn=Fn=Qn+33554432|0,Qn=wn=Fn>>>0<33554432?wn+1|0:wn,nn[Wt+144>>2]=_n-(-67108864&Fn),_n=PA(wn=In(Kn,38),wn>>31,Kn,hn),Xn=bn,Jn=PA(wn=Jn,Fn=wn>>31,wn,Fn),Fn=bn+Xn|0,Fn=(wn=Jn+_n|0)>>>0>>0?Fn+1|0:Fn,Xn=(tl=PA(Jn=In(Dn,19),yn=Jn>>31,_n=Hn<<1,vn=_n>>31))+wn|0,wn=bn+Fn|0,wn=Xn>>>0>>0?wn+1|0:wn,Fn=Xn,Xn=PA(On,sn,xn,Gn),wn=bn+wn|0,wn=(Fn=Fn+Xn|0)>>>0>>0?wn+1|0:wn,Xn=(tl=PA(Cn,cn,Mn,pn))+Fn|0,Fn=bn+wn|0,Fn=Xn>>>0>>0?Fn+1|0:Fn,tl=PA(kn,tn,Ln,rn),wn=bn+Fn|0,tl=wn=((Xn=tl+Xn|0)>>>0>>0?wn+1:wn)<<1|Xn>>>31,Vn=Fn=(Xn=33554432+(Yn=Xn<<1)|0)>>>0<33554432?wn+1|0:wn,al=(67108863&Fn)<<6|Xn>>>26,il=Fn>>26,wn=PA(Jn,yn,Sn,un),Tn=bn,Un=fn,Fn=(fn=PA(Bn,an,fn,En=fn>>31))+wn|0,wn=bn+Tn|0,wn=Fn>>>0>>0?wn+1|0:wn,fn=(Tn=PA(Hn,on,xn,Gn))+Fn|0,Fn=bn+wn|0,Fn=fn>>>0>>0?Fn+1|0:Fn,Tn=PA(Cn,cn,On,sn),wn=bn+Fn|0,wn=(fn=Tn+fn|0)>>>0>>0?wn+1|0:wn,Tn=PA(Ln,rn,$n,jn),Fn=bn+wn|0,Fn=((fn=Tn+fn|0)>>>0>>0?Fn+1:Fn)<<1|fn>>>31,fn=(wn=al)+(al=fn<<1)|0,wn=Fn+il|0,wn=fn>>>0>>0?wn+1|0:wn,il=fn,al=fn=fn+16777216|0,Rn=(33554431&(wn=fn>>>0<16777216?wn+1|0:wn))<<7|fn>>>25,Tn=wn>>25,wn=PA(Bn,an,$n,jn),fn=bn,Fn=(Un=PA(kn,tn,Un,En))+wn|0,wn=bn+fn|0,fn=(Jn=PA(Jn,yn,Dn,dn))+Fn|0,Fn=bn+(Fn>>>0>>0?wn+1|0:wn)|0,Fn=fn>>>0>>0?Fn+1|0:Fn,Jn=PA(Sn,un,xn,Gn),wn=bn+Fn|0,wn=(fn=Jn+fn|0)>>>0>>0?wn+1|0:wn,Fn=fn,fn=PA(Cn,cn,_n,vn),wn=bn+wn|0,wn=(Fn=Fn+fn|0)>>>0>>0?wn+1|0:wn,fn=(Jn=PA(Ln,rn,On,sn))+Fn|0,Fn=bn+wn|0,wn=(wn=(fn>>>0>>0?Fn+1:Fn)<<1|fn>>>31)+Tn|0,Un=fn=(Fn=fn<<1)+Rn|0,wn=Fn>>>0>fn>>>0?wn+1|0:wn,fn=(Jn=fn+33554432|0)>>>0<33554432?wn+1|0:wn,nn[Wt+128>>2]=Un-(-67108864&Jn),wn=PA(Mn,pn,Kn,hn),Fn=bn,Un=PA(Hn,on,On,sn),Fn=bn+Fn|0,Fn=(wn=Un+wn|0)>>>0>>0?Fn+1|0:Fn,Un=(Tn=PA(kn,tn,Dn,dn))+wn|0,wn=bn+Fn|0,wn=Un>>>0>>0?wn+1|0:wn,Tn=PA(Bn,an,nl,An),Fn=bn+wn|0,Fn=(Un=Tn+Un|0)>>>0>>0?Fn+1|0:Fn,Tn=PA(Ln,rn,Pn,Zn),wn=bn+Fn|0,wn=(Fn=Qn>>26)+(((Un=Tn+Un|0)>>>0>>0?wn+1:wn)<<1|Un>>>31)|0,wn=(Qn=(zn=(67108863&Qn)<<6|zn>>>26)+(Un<<1)|0)>>>0>>0?wn+1|0:wn,zn=Qn,Fn=wn,Un=wn=Qn+16777216|0,Qn=Fn=wn>>>0<16777216?Fn+1|0:Fn,nn[Wt+148>>2]=zn-(-33554432&wn),wn=PA(Bn,an,el,Nn),el=bn,Fn=(jn=PA(kn,tn,$n,jn))+wn|0,wn=bn+el|0,wn=Fn>>>0>>0?wn+1|0:wn,xn=PA(Dn,dn,xn,Gn),wn=bn+wn|0,wn=(Fn=xn+Fn|0)>>>0>>0?wn+1|0:wn,Cn=(xn=PA(Cn,cn,Sn,un))+Fn|0,Fn=bn+wn|0,Fn=Cn>>>0>>0?Fn+1|0:Fn,wn=Cn,Cn=PA(Ln,rn,Hn,on),Fn=bn+Fn|0,Fn=((wn=wn+Cn|0)>>>0>>0?Fn+1:Fn)<<1,Cn=wn,wn=(wn=Fn|wn>>>31)+(Fn=fn>>26)|0,wn=(fn=(zn=Cn<<1)+(Cn=(67108863&fn)<<6|Jn>>>26)|0)>>>0>>0?wn+1|0:wn,Cn=fn,xn=Fn=fn+16777216|0,fn=wn=Fn>>>0<16777216?wn+1|0:wn,nn[Wt+132>>2]=Cn-(-33554432&Fn),wn=PA(Dn,dn,Mn,pn),Cn=bn,Fn=(Hn=PA(Hn,on,Hn,on))+wn|0,wn=bn+Cn|0,wn=Fn>>>0>>0?wn+1|0:wn,Hn=PA(On,sn,Sn,un),wn=bn+wn|0,wn=(Fn=Hn+Fn|0)>>>0>>0?wn+1|0:wn,Hn=PA(kn,tn,qn,gn),wn=bn+wn|0,wn=(Fn=Hn+Fn|0)>>>0>>0?wn+1|0:wn,Hn=(Cn=PA(Bn,an,Pn,Zn))+Fn|0,Fn=bn+wn|0,Fn=Hn>>>0>>0?Fn+1|0:Fn,wn=Hn,Hn=PA(Hn=Ln,rn,Ln=rl,Sn=Ln>>31),Fn=bn+Fn|0,Fn=((wn=wn+Hn|0)>>>0>>0?Fn+1:Fn)<<1,Hn=wn,wn=(wn=Fn|wn>>>31)+(Fn=Qn>>25)|0,wn=(Qn=(Cn=Hn<<1)+(Hn=(33554431&Qn)<<7|Un>>>25)|0)>>>0>>0?wn+1|0:wn,Hn=Qn,Cn=Fn=Qn+33554432|0,Qn=wn=Fn>>>0<33554432?wn+1|0:wn,nn[Wt+152>>2]=Hn-(-67108864&Fn),Fn=Wn-(wn=-67108864&sl)|0,Hn=Il-((wn>>>0>Wn>>>0)+ol|0)|0,wn=fn>>25,fn=(xn=(33554431&fn)<<7|xn>>>25)+Fn|0,Fn=wn+Hn|0,Hn=fn,wn=Fn=fn>>>0>>0?Fn+1|0:Fn,wn=((67108863&(wn=(fn=fn+33554432|0)>>>0<33554432?wn+1|0:wn))<<6|fn>>>26)+(jn=ll-(-33554432&cl)|0)|0,nn[Wt+140>>2]=wn,nn[Wt+136>>2]=Hn-(-67108864&fn),wn=PA(On,sn,Dn,dn),Fn=bn,fn=PA(Kn,hn,_n,vn),Fn=bn+Fn|0,Fn=(wn=fn+wn|0)>>>0>>0?Fn+1|0:Fn,fn=(On=PA(Mn,pn,nl,An))+wn|0,wn=bn+Fn|0,wn=fn>>>0>>0?wn+1|0:wn,kn=PA(kn,tn,Pn,Zn),Fn=bn+wn|0,Fn=(fn=kn+fn|0)>>>0>>0?Fn+1|0:Fn,kn=PA(Bn,an,Ln,Sn),wn=bn+Fn|0,wn=(wn=((fn=kn+fn|0)>>>0>>0?wn+1:wn)<<1|fn>>>31)+(Fn=Qn>>26)|0,Fn=(Qn=(Hn=fn<<1)+(fn=(67108863&Qn)<<6|Cn>>>26)|0)>>>0>>0?wn+1|0:wn,Fn=(wn=Qn+16777216|0)>>>0<16777216?Fn+1|0:Fn,nn[Wt+156>>2]=Qn-(-33554432&wn),fn=il-(-33554432&al)|0,kn=Yn-(Qn=-67108864&Xn)|0,Bn=tl-((Qn>>>0>Yn>>>0)+Vn|0)|0,Qn=PA((33554431&Fn)<<7|wn>>>25,Fn>>25,19,0),Fn=bn+Bn|0,Fn=(wn=Qn+kn|0)>>>0>>0?Fn+1|0:Fn,Qn=wn,Fn=((67108863&(Fn=(wn=wn+33554432|0)>>>0<33554432?Fn+1|0:Fn))<<6|wn>>>26)+fn|0,nn[Wt+124>>2]=Fn,nn[Wt+120>>2]=Qn-(-67108864&wn),wn=nn[Pt+44>>2],Fn=nn[Pt+4>>2],Qn=nn[Pt+48>>2],fn=nn[Pt+8>>2],kn=nn[Pt+52>>2],Bn=nn[Pt+12>>2],Ln=nn[Pt+56>>2],On=nn[Pt+16>>2],Hn=nn[Pt+60>>2],Cn=nn[Pt+20>>2],Dn=nn[Pt- -64>>2],Sn=nn[Pt+24>>2],Mn=nn[Pt+68>>2],xn=nn[Pt+28>>2],jn=nn[Pt+72>>2],Kn=nn[Pt+32>>2],Pn=nn[Pt+40>>2],$n=nn[Pt>>2],nn[Wt+76>>2]=nn[Pt+76>>2]+nn[Pt+36>>2],nn[Wt+72>>2]=jn+Kn,nn[Wt+68>>2]=xn+Mn,nn[(nl=Wt- -64|0)>>2]=Dn+Sn,nn[Wt+60>>2]=Hn+Cn,nn[Wt+56>>2]=Ln+On,nn[Wt+52>>2]=kn+Bn,nn[Wt+48>>2]=Qn+fn,nn[Wt+44>>2]=wn+Fn,nn[Wt+40>>2]=Pn+$n,U(en,Wt+40|0),Pt=nn[Wt+4>>2],wn=nn[Wt+84>>2],Fn=nn[Wt+8>>2],Qn=nn[Wt+88>>2],fn=nn[Wt+12>>2],kn=nn[Wt+92>>2],Bn=nn[Wt+16>>2],Ln=nn[Wt+96>>2],On=nn[Wt+20>>2],Hn=nn[Wt+100>>2],Cn=nn[Wt+24>>2],Dn=nn[Wt+104>>2],Sn=nn[Wt+28>>2],Mn=nn[Wt+108>>2],xn=nn[Wt+32>>2],jn=nn[Wt+112>>2],Kn=nn[Wt>>2],Pn=nn[Wt+80>>2],qn=($n=nn[Wt+116>>2])-(el=nn[Wt+36>>2])|0,nn[Wt+116>>2]=qn,Jn=jn-xn|0,nn[Wt+112>>2]=Jn,_n=Mn-Sn|0,nn[Wt+108>>2]=_n,Xn=Dn-Cn|0,nn[Wt+104>>2]=Xn,rl=Hn-On|0,nn[Wt+100>>2]=rl,Il=Ln-Bn|0,nn[Wt+96>>2]=Il,sl=kn-fn|0,nn[Wt+92>>2]=sl,ol=Qn-Fn|0,nn[Wt+88>>2]=ol,ll=wn-Pt|0,nn[Wt+84>>2]=ll,cl=Pn-Kn|0,nn[Wt+80>>2]=cl,$n=$n+el|0,nn[Wt+76>>2]=$n,xn=xn+jn|0,nn[Wt+72>>2]=xn,Sn=Mn+Sn|0,nn[Wt+68>>2]=Sn,Cn=Cn+Dn|0,nn[nl>>2]=Cn,On=Hn+On|0,nn[Wt+60>>2]=On,Bn=Ln+Bn|0,nn[Wt+56>>2]=Bn,fn=fn+kn|0,nn[Wt+52>>2]=fn,Fn=Fn+Qn|0,nn[Wt+48>>2]=Fn,Pt=Pt+wn|0,nn[Wt+44>>2]=Pt,wn=Kn+Pn|0,nn[Wt+40>>2]=wn,Qn=nn[en>>2],kn=nn[en+4>>2],Ln=nn[en+8>>2],Hn=nn[en+12>>2],Dn=nn[en+16>>2],Mn=nn[en+20>>2],jn=nn[en+24>>2],Kn=nn[en+28>>2],Pn=nn[en+32>>2],nn[Wt+36>>2]=nn[en+36>>2]-$n,nn[Wt+32>>2]=Pn-xn,nn[Wt+28>>2]=Kn-Sn,nn[Wt+24>>2]=jn-Cn,nn[Wt+20>>2]=Mn-On,nn[Wt+16>>2]=Dn-Bn,nn[Wt+12>>2]=Hn-fn,nn[Wt+8>>2]=Ln-Fn,nn[Wt+4>>2]=kn-Pt,nn[Wt>>2]=Qn-wn,Pt=nn[Wt+124>>2],wn=nn[Wt+128>>2],Fn=nn[Wt+132>>2],Qn=nn[Wt+136>>2],fn=nn[Wt+140>>2],kn=nn[Wt+144>>2],Bn=nn[Wt+148>>2],Ln=nn[Wt+152>>2],On=nn[Wt+120>>2],nn[Wt+156>>2]=nn[Wt+156>>2]-qn,nn[Wt+152>>2]=Ln-Jn,nn[Wt+148>>2]=Bn-_n,nn[Wt+144>>2]=kn-Xn,nn[Wt+140>>2]=fn-rl,nn[Wt+136>>2]=Qn-Il,nn[Wt+132>>2]=Fn-sl,nn[Wt+128>>2]=wn-ol,nn[Wt+124>>2]=Pt-ll,nn[Wt+120>>2]=On-cl,mn=en+48|0}function p(Wt,Pt,en,tn){var rn=0,In=0,sn=0,on=0,cn=0,dn=0,un=0,pn=0,mn=0,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0,Fn=0,Qn=0,fn=0;for(rn=an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,nn[en>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,rn=an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24,nn[en+4>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,rn=an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24,nn[en+8>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,rn=an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24,nn[en+12>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,rn=an[Pt+16|0]|an[Pt+17|0]<<8|an[Pt+18|0]<<16|an[Pt+19|0]<<24,nn[en+16>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,rn=an[Pt+20|0]|an[Pt+21|0]<<8|an[Pt+22|0]<<16|an[Pt+23|0]<<24,nn[en+20>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,rn=an[Pt+24|0]|an[Pt+25|0]<<8|an[Pt+26|0]<<16|an[Pt+27|0]<<24,nn[en+24>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,rn=an[Pt+28|0]|an[Pt+29|0]<<8|an[Pt+30|0]<<16|an[Pt+31|0]<<24,nn[en+28>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,rn=an[Pt+32|0]|an[Pt+33|0]<<8|an[Pt+34|0]<<16|an[Pt+35|0]<<24,nn[en+32>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,rn=an[Pt+36|0]|an[Pt+37|0]<<8|an[Pt+38|0]<<16|an[Pt+39|0]<<24,nn[en+36>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,rn=an[Pt+40|0]|an[Pt+41|0]<<8|an[Pt+42|0]<<16|an[Pt+43|0]<<24,nn[en+40>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,rn=an[Pt+44|0]|an[Pt+45|0]<<8|an[Pt+46|0]<<16|an[Pt+47|0]<<24,nn[en+44>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,rn=an[Pt+48|0]|an[Pt+49|0]<<8|an[Pt+50|0]<<16|an[Pt+51|0]<<24,nn[en+48>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,rn=an[Pt+52|0]|an[Pt+53|0]<<8|an[Pt+54|0]<<16|an[Pt+55|0]<<24,nn[en+52>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,rn=an[Pt+56|0]|an[Pt+57|0]<<8|an[Pt+58|0]<<16|an[Pt+59|0]<<24,nn[en+56>>2]=rn<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,Pt=an[Pt+60|0]|an[Pt+61|0]<<8|an[Pt+62|0]<<16|an[Pt+63|0]<<24,nn[en+60>>2]=Pt<<24|(65280&Pt)<<8|Pt>>>8&65280|Pt>>>24,Pt=nn[Wt+28>>2],nn[tn+24>>2]=nn[Wt+24>>2],nn[tn+28>>2]=Pt,Pt=nn[Wt+20>>2],nn[tn+16>>2]=nn[Wt+16>>2],nn[tn+20>>2]=Pt,Pt=nn[Wt+12>>2],nn[tn+8>>2]=nn[Wt+8>>2],nn[tn+12>>2]=Pt,Pt=nn[Wt+4>>2],nn[tn>>2]=nn[Wt>>2],nn[tn+4>>2]=Pt;cn=nn[tn+28>>2],rn=(Pt=gn<<2)+en|0,sn=nn[tn+16>>2],dn=nn[rn>>2]+(gI(sn,26)^gI(sn,21)^gI(sn,7))|0,pn=(cn=((In=nn[Pt+34784>>2]+dn|0)+(sn&((dn=nn[tn+24>>2])^(mn=nn[tn+20>>2]))^dn)|0)+cn|0)+nn[tn+12>>2]|0,nn[tn+12>>2]=pn,cn=(Gn=cn+(gI(un=nn[tn>>2],30)^gI(un,19)^gI(un,10))|0)+(un&((In=nn[tn+8>>2])|(on=nn[tn+4>>2]))|In&on)|0,nn[tn+28>>2]=cn,In=(Gn=In)+(dn=(nn[(Zn=(In=4|Pt)+en|0)>>2]+((dn+(mn^pn&(sn^mn))|0)+(gI(pn,26)^gI(pn,21)^gI(pn,7))|0)|0)+nn[In+34784>>2]|0)|0,nn[tn+8>>2]=In,dn=(dn+(cn&(on|un)|on&un)|0)+(gI(cn,30)^gI(cn,19)^gI(cn,10))|0,nn[tn+24>>2]=dn,mn=(Gn=on)+(on=(((mn+nn[(Nn=(on=8|Pt)+en|0)>>2]|0)+nn[on+34784>>2]|0)+(sn^In&(sn^pn))|0)+(gI(In,26)^gI(In,21)^gI(In,7))|0)|0,nn[tn+4>>2]=mn,on=on+((dn&(cn|un)|cn&un)+(gI(dn,30)^gI(dn,19)^gI(dn,10))|0)|0,nn[tn+20>>2]=on,sn=(Gn=un)+(un=(((sn+nn[(yn=(un=12|Pt)+en|0)>>2]|0)+nn[un+34784>>2]|0)+(pn^mn&(In^pn))|0)+(gI(mn,26)^gI(mn,21)^gI(mn,7))|0)|0,nn[tn>>2]=sn,un=un+((on&(cn|dn)|cn&dn)+(gI(on,30)^gI(on,19)^gI(on,10))|0)|0,nn[tn+16>>2]=un,pn=(bn=((((Gn=pn)+nn[(vn=(pn=16|Pt)+en|0)>>2]|0)+nn[pn+34784>>2]|0)+(In^sn&(In^mn))|0)+(gI(sn,26)^gI(sn,21)^gI(sn,7))|0)+((un&(on|dn)|on&dn)+(gI(un,30)^gI(un,19)^gI(un,10))|0)|0,nn[tn+12>>2]=pn,bn=cn+bn|0,nn[tn+28>>2]=bn,cn=(In=(((In+nn[(Yn=(cn=20|Pt)+en|0)>>2]|0)+nn[cn+34784>>2]|0)+(mn^bn&(sn^mn))|0)+(gI(bn,26)^gI(bn,21)^gI(bn,7))|0)+((pn&(on|un)|on&un)+(gI(pn,30)^gI(pn,19)^gI(pn,10))|0)|0,nn[tn+8>>2]=cn,In=In+dn|0,nn[tn+24>>2]=In,dn=(mn=(((mn+nn[(En=(dn=24|Pt)+en|0)>>2]|0)+nn[dn+34784>>2]|0)+(sn^In&(sn^bn))|0)+(gI(In,26)^gI(In,21)^gI(In,7))|0)+((cn&(un|pn)|un&pn)+(gI(cn,30)^gI(cn,19)^gI(cn,10))|0)|0,nn[tn+4>>2]=dn,mn=on+mn|0,nn[tn+20>>2]=mn,on=(sn=(((sn+nn[(Vn=(on=28|Pt)+en|0)>>2]|0)+nn[on+34784>>2]|0)+(bn^mn&(In^bn))|0)+(gI(mn,26)^gI(mn,21)^gI(mn,7))|0)+((dn&(cn|pn)|cn&pn)+(gI(dn,30)^gI(dn,19)^gI(dn,10))|0)|0,nn[tn>>2]=on,sn=sn+un|0,nn[tn+16>>2]=sn,un=(bn=(((bn+nn[(Rn=(un=32|Pt)+en|0)>>2]|0)+nn[un+34784>>2]|0)+(In^sn&(In^mn))|0)+(gI(sn,26)^gI(sn,21)^gI(sn,7))|0)+((on&(cn|dn)|cn&dn)+(gI(on,30)^gI(on,19)^gI(on,10))|0)|0,nn[tn+28>>2]=un,bn=pn+bn|0,nn[tn+12>>2]=bn,pn=(In=(((In+nn[(wn=(pn=36|Pt)+en|0)>>2]|0)+nn[pn+34784>>2]|0)+(mn^bn&(sn^mn))|0)+(gI(bn,26)^gI(bn,21)^gI(bn,7))|0)+((un&(on|dn)|on&dn)+(gI(un,30)^gI(un,19)^gI(un,10))|0)|0,nn[tn+24>>2]=pn,In=In+cn|0,nn[tn+8>>2]=In,cn=(mn=(((mn+nn[(Fn=(cn=40|Pt)+en|0)>>2]|0)+nn[cn+34784>>2]|0)+(sn^In&(sn^bn))|0)+(gI(In,26)^gI(In,21)^gI(In,7))|0)+((pn&(on|un)|on&un)+(gI(pn,30)^gI(pn,19)^gI(pn,10))|0)|0,nn[tn+20>>2]=cn,mn=dn+mn|0,nn[tn+4>>2]=mn,Gn=(dn=44|Pt)+en|0,dn=(sn=((sn+(nn[dn+34784>>2]+nn[Gn>>2]|0)|0)+(bn^mn&(In^bn))|0)+(gI(mn,26)^gI(mn,21)^gI(mn,7))|0)+((cn&(un|pn)|un&pn)+(gI(cn,30)^gI(cn,19)^gI(cn,10))|0)|0,nn[tn+16>>2]=dn,on=on+sn|0,nn[tn>>2]=on,Wn=(sn=48|Pt)+en|0,sn=(bn=((bn+(nn[sn+34784>>2]+nn[Wn>>2]|0)|0)+(In^on&(In^mn))|0)+(gI(on,26)^gI(on,21)^gI(on,7))|0)+((dn&(cn|pn)|cn&pn)+(gI(dn,30)^gI(dn,19)^gI(dn,10))|0)|0,nn[tn+12>>2]=sn,un=un+bn|0,nn[tn+28>>2]=un,An=(bn=52|Pt)+en|0,In=(bn=(((nn[bn+34784>>2]+nn[An>>2]|0)+In|0)+(mn^un&(on^mn))|0)+(gI(un,26)^gI(un,21)^gI(un,7))|0)+((sn&(cn|dn)|cn&dn)+(gI(sn,30)^gI(sn,19)^gI(sn,10))|0)|0,nn[tn+8>>2]=In,pn=pn+bn|0,nn[tn+24>>2]=pn,bn=(hn=56|Pt)+en|0,mn=(hn=(((nn[hn+34784>>2]+nn[bn>>2]|0)+mn|0)+(on^pn&(on^un))|0)+(gI(pn,26)^gI(pn,21)^gI(pn,7))|0)+((In&(dn|sn)|dn&sn)+(gI(In,30)^gI(In,19)^gI(In,10))|0)|0,nn[tn+4>>2]=mn,cn=cn+hn|0,nn[tn+20>>2]=cn,hn=(Pt|=60)+en|0,cn=(Pt=((on+(nn[Pt+34784>>2]+nn[hn>>2]|0)|0)+(un^cn&(un^pn))|0)+(gI(cn,26)^gI(cn,21)^gI(cn,7))|0)+((mn&(In|sn)|In&sn)+(gI(mn,30)^gI(mn,19)^gI(mn,10))|0)|0,nn[tn>>2]=cn,nn[tn+16>>2]=Pt+dn,48!=(0|gn);)on=nn[wn>>2],gn=gn+16|0,Pt=nn[bn>>2],cn=(In=nn[rn>>2]+(on+(gI(Pt,15)^gI(Pt,13)^Pt>>>10)|0)|0)+(gI(dn=nn[Zn>>2],25)^gI(dn,14)^dn>>>3)|0,nn[(gn<<2)+en>>2]=cn,pn=(sn=(In=(un=nn[Fn>>2])+dn|0)+(gI(dn=nn[hn>>2],15)^gI(dn,13)^dn>>>10)|0)+(gI(In=nn[Nn>>2],25)^gI(In,14)^In>>>3)|0,nn[rn+68>>2]=pn,mn=(Gn=((sn=In)+(In=nn[Gn>>2])|0)+(gI(cn,15)^gI(cn,13)^cn>>>10)|0)+(gI(sn=nn[yn>>2],25)^gI(sn,14)^sn>>>3)|0,nn[rn+72>>2]=mn,bn=(hn=((Gn=sn)+(sn=nn[Wn>>2])|0)+(gI(pn,15)^gI(pn,13)^pn>>>10)|0)+(gI(Gn=nn[vn>>2],25)^gI(Gn,14)^Gn>>>3)|0,nn[rn+76>>2]=bn,Wn=(hn=((hn=Gn)+(Gn=nn[An>>2])|0)+(gI(mn,15)^gI(mn,13)^mn>>>10)|0)+(gI(An=nn[Yn>>2],25)^gI(An,14)^An>>>3)|0,nn[rn+80>>2]=Wn,An=(Zn=(Pt+An|0)+(gI(bn,15)^gI(bn,13)^bn>>>10)|0)+(gI(hn=nn[En>>2],25)^gI(hn,14)^hn>>>3)|0,nn[rn+84>>2]=An,hn=((dn+hn|0)+(gI(Nn=nn[Vn>>2],25)^gI(Nn,14)^Nn>>>3)|0)+(gI(Wn,15)^gI(Wn,13)^Wn>>>10)|0,nn[rn+88>>2]=hn,pn=((Zn=nn[Rn>>2])+(pn+(gI(on,25)^gI(on,14)^on>>>3)|0)|0)+(gI(hn,15)^gI(hn,13)^hn>>>10)|0,nn[rn+96>>2]=pn,Zn=((cn+Nn|0)+(gI(Zn,25)^gI(Zn,14)^Zn>>>3)|0)+(gI(An,15)^gI(An,13)^An>>>10)|0,nn[rn+92>>2]=Zn,bn=(bn+(un+(gI(In,25)^gI(In,14)^In>>>3)|0)|0)+(gI(pn,15)^gI(pn,13)^pn>>>10)|0,nn[rn+104>>2]=bn,on=(mn+(on+(gI(un,25)^gI(un,14)^un>>>3)|0)|0)+(gI(Zn,15)^gI(Zn,13)^Zn>>>10)|0,nn[rn+100>>2]=on,un=(An+(sn+(gI(Gn,25)^gI(Gn,14)^Gn>>>3)|0)|0)+(gI(bn,15)^gI(bn,13)^bn>>>10)|0,nn[rn+112>>2]=un,on=(Wn+(In+(gI(sn,25)^gI(sn,14)^sn>>>3)|0)|0)+(gI(on,15)^gI(on,13)^on>>>10)|0,nn[rn+108>>2]=on,Qn=rn,fn=(Zn+(Pt+(gI(dn,25)^gI(dn,14)^dn>>>3)|0)|0)+(gI(un,15)^gI(un,13)^un>>>10)|0,nn[Qn+120>>2]=fn,Pt=(hn+(Gn+(gI(Pt,25)^gI(Pt,14)^Pt>>>3)|0)|0)+(gI(on,15)^gI(on,13)^on>>>10)|0,nn[rn+116>>2]=Pt,Qn=rn,fn=(pn+(dn+(gI(cn,25)^gI(cn,14)^cn>>>3)|0)|0)+(gI(Pt,15)^gI(Pt,13)^Pt>>>10)|0,nn[Qn+124>>2]=fn;nn[Wt>>2]=cn+nn[Wt>>2],nn[Wt+4>>2]=nn[Wt+4>>2]+nn[tn+4>>2],nn[Wt+8>>2]=nn[Wt+8>>2]+nn[tn+8>>2],nn[Wt+12>>2]=nn[Wt+12>>2]+nn[tn+12>>2],nn[Wt+16>>2]=nn[Wt+16>>2]+nn[tn+16>>2],nn[Wt+20>>2]=nn[Wt+20>>2]+nn[tn+20>>2],nn[Wt+24>>2]=nn[Wt+24>>2]+nn[tn+24>>2],nn[Wt+28>>2]=nn[Wt+28>>2]+nn[tn+28>>2]}function H(Wt,Pt,en){var rn,In,sn,on,cn,dn,un,pn,bn,Gn,hn,Zn,An,Wn,Nn,gn,yn,vn,Yn,En,Vn,Rn,wn,Fn=0,Qn=0,fn=0,Hn=0,Cn=0,Xn=0,kn=0,Jn=0;mn=rn=mn-288|0,un=an[en+16|0]|an[en+17|0]<<8|an[en+18|0]<<16|an[en+19|0]<<24,pn=an[en+48|0]|an[en+49|0]<<8|an[en+50|0]<<16|an[en+51|0]<<24,bn=an[en+20|0]|an[en+21|0]<<8|an[en+22|0]<<16|an[en+23|0]<<24,Gn=an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24,hn=an[en+52|0]|an[en+53|0]<<8|an[en+54|0]<<16|an[en+55|0]<<24,Zn=an[en+24|0]|an[en+25|0]<<8|an[en+26|0]<<16|an[en+27|0]<<24,An=an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24,Wn=an[en+56|0]|an[en+57|0]<<8|an[en+58|0]<<16|an[en+59|0]<<24,Cn=an[en+28|0]|an[en+29|0]<<8|an[en+30|0]<<16|an[en+31|0]<<24,Nn=an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24,gn=an[en+60|0]|an[en+61|0]<<8|an[en+62|0]<<16|an[en+63|0]<<24,Qn=an[en+32|0]|an[en+33|0]<<8|an[en+34|0]<<16|an[en+35|0]<<24,Xn=an[en+80|0]|an[en+81|0]<<8|an[en+82|0]<<16|an[en+83|0]<<24,yn=an[Pt+16|0]|an[Pt+17|0]<<8|an[Pt+18|0]<<16|an[Pt+19|0]<<24,vn=an[en+112|0]|an[en+113|0]<<8|an[en+114|0]<<16|an[en+115|0]<<24,Fn=an[en+96|0]|an[en+97|0]<<8|an[en+98|0]<<16|an[en+99|0]<<24,fn=an[en+36|0]|an[en+37|0]<<8|an[en+38|0]<<16|an[en+39|0]<<24,kn=an[en+84|0]|an[en+85|0]<<8|an[en+86|0]<<16|an[en+87|0]<<24,Yn=an[Pt+20|0]|an[Pt+21|0]<<8|an[Pt+22|0]<<16|an[Pt+23|0]<<24,En=an[en+116|0]|an[en+117|0]<<8|an[en+118|0]<<16|an[en+119|0]<<24,sn=an[en+100|0]|an[en+101|0]<<8|an[en+102|0]<<16|an[en+103|0]<<24,Hn=an[en+40|0]|an[en+41|0]<<8|an[en+42|0]<<16|an[en+43|0]<<24,Jn=an[en+88|0]|an[en+89|0]<<8|an[en+90|0]<<16|an[en+91|0]<<24,Vn=an[Pt+24|0]|an[Pt+25|0]<<8|an[Pt+26|0]<<16|an[Pt+27|0]<<24,Rn=an[en+120|0]|an[en+121|0]<<8|an[en+122|0]<<16|an[en+123|0]<<24,on=an[en+104|0]|an[en+105|0]<<8|an[en+106|0]<<16|an[en+107|0]<<24,wn=an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,In=(cn=an[en+44|0]|an[en+45|0]<<8|an[en+46|0]<<16|an[en+47|0]<<24)^(dn=an[en+108|0]|an[en+109|0]<<8|an[en+110|0]<<16|an[en+111|0]<<24)&(an[en+124|0]|an[en+125|0]<<8|an[en+126|0]<<16|an[en+127|0]<<24)^(an[en+92|0]|an[en+93|0]<<8|an[en+94|0]<<16|an[en+95|0]<<24)^(an[Pt+28|0]|an[Pt+29|0]<<8|an[Pt+30|0]<<16|an[Pt+31|0]<<24),tn[Wt+28|0]=In,tn[Wt+29|0]=In>>>8,tn[Wt+30|0]=In>>>16,tn[Wt+31|0]=In>>>24,Jn=Hn^on&Rn^Jn^Vn,tn[Wt+24|0]=Jn,tn[Wt+25|0]=Jn>>>8,tn[Wt+26|0]=Jn>>>16,tn[Wt+27|0]=Jn>>>24,kn=fn^sn&En^kn^Yn,tn[Wt+20|0]=kn,tn[Wt+21|0]=kn>>>8,tn[Wt+22|0]=kn>>>16,tn[Wt+23|0]=kn>>>24,Xn=Qn^Fn&vn^Xn^yn,tn[Wt+16|0]=Xn,tn[Wt+17|0]=Xn>>>8,tn[Wt+18|0]=Xn>>>16,tn[Wt+19|0]=Xn>>>24,Cn=gn&cn^Cn^Nn^dn,tn[Wt+12|0]=Cn,tn[Wt+13|0]=Cn>>>8,tn[Wt+14|0]=Cn>>>16,tn[Wt+15|0]=Cn>>>24,Hn=Hn&Wn^Zn^An^on,tn[Wt+8|0]=Hn,tn[Wt+9|0]=Hn>>>8,tn[Wt+10|0]=Hn>>>16,tn[Wt+11|0]=Hn>>>24,fn=fn&hn^bn^Gn^sn,tn[Wt+4|0]=fn,tn[Wt+5|0]=fn>>>8,tn[Wt+6|0]=fn>>>16,tn[Wt+7|0]=fn>>>24,Qn=Fn^Qn&pn^un^wn,tn[0|Wt]=Qn,tn[Wt+1|0]=Qn>>>8,tn[Wt+2|0]=Qn>>>16,tn[Wt+3|0]=Qn>>>24,Wt=nn[en+124>>2],nn[rn+280>>2]=nn[en+120>>2],nn[rn+284>>2]=Wt,Wt=nn[en+116>>2],nn[rn+272>>2]=nn[en+112>>2],nn[rn+276>>2]=Wt,Wt=nn[en+108>>2],nn[rn+248>>2]=nn[en+104>>2],nn[rn+252>>2]=Wt,Wt=nn[en+100>>2],nn[rn+240>>2]=nn[en+96>>2],nn[rn+244>>2]=Wt,Wt=nn[en+124>>2],nn[rn+232>>2]=nn[en+120>>2],nn[rn+236>>2]=Wt,Wt=nn[en+116>>2],nn[rn+224>>2]=nn[en+112>>2],nn[rn+228>>2]=Wt,aA(Pt=rn+256|0,rn+240|0,rn+224|0),Wt=nn[rn+268>>2],nn[en+120>>2]=nn[rn+264>>2],nn[en+124>>2]=Wt,Wt=nn[rn+260>>2],nn[en+112>>2]=nn[rn+256>>2],nn[en+116>>2]=Wt,Wt=nn[en+92>>2],nn[rn+216>>2]=nn[en+88>>2],nn[rn+220>>2]=Wt,Wt=nn[en+84>>2],nn[rn+208>>2]=nn[en+80>>2],nn[rn+212>>2]=Wt,Wt=nn[en+108>>2],nn[rn+200>>2]=nn[en+104>>2],nn[rn+204>>2]=Wt,Wt=nn[en+100>>2],nn[rn+192>>2]=nn[en+96>>2],nn[rn+196>>2]=Wt,aA(Pt,rn+208|0,rn+192|0),Wt=nn[rn+268>>2],nn[en+104>>2]=nn[rn+264>>2],nn[en+108>>2]=Wt,Wt=nn[rn+260>>2],nn[en+96>>2]=nn[rn+256>>2],nn[en+100>>2]=Wt,Wt=nn[en+76>>2],nn[rn+184>>2]=nn[en+72>>2],nn[rn+188>>2]=Wt,Fn=nn[4+(Wt=en- -64|0)>>2],nn[rn+176>>2]=nn[Wt>>2],nn[rn+180>>2]=Fn,Fn=nn[en+92>>2],nn[rn+168>>2]=nn[en+88>>2],nn[rn+172>>2]=Fn,Fn=nn[en+84>>2],nn[rn+160>>2]=nn[en+80>>2],nn[rn+164>>2]=Fn,aA(Pt,rn+176|0,rn+160|0),Fn=nn[rn+268>>2],nn[en+88>>2]=nn[rn+264>>2],nn[en+92>>2]=Fn,Fn=nn[rn+260>>2],nn[en+80>>2]=nn[rn+256>>2],nn[en+84>>2]=Fn,Fn=nn[en+60>>2],nn[rn+152>>2]=nn[en+56>>2],nn[rn+156>>2]=Fn,Fn=nn[en+52>>2],nn[rn+144>>2]=nn[en+48>>2],nn[rn+148>>2]=Fn,Fn=nn[en+76>>2],nn[rn+136>>2]=nn[en+72>>2],nn[rn+140>>2]=Fn,Fn=nn[Wt+4>>2],nn[rn+128>>2]=nn[Wt>>2],nn[rn+132>>2]=Fn,aA(Pt,rn+144|0,rn+128|0),Fn=nn[rn+268>>2],nn[en+72>>2]=nn[rn+264>>2],nn[en+76>>2]=Fn,Fn=nn[rn+260>>2],nn[Wt>>2]=nn[rn+256>>2],nn[Wt+4>>2]=Fn,Fn=nn[en+44>>2],nn[rn+120>>2]=nn[en+40>>2],nn[rn+124>>2]=Fn,Fn=nn[en+36>>2],nn[rn+112>>2]=nn[en+32>>2],nn[rn+116>>2]=Fn,Fn=nn[en+60>>2],nn[rn+104>>2]=nn[en+56>>2],nn[rn+108>>2]=Fn,Fn=nn[en+52>>2],nn[rn+96>>2]=nn[en+48>>2],nn[rn+100>>2]=Fn,aA(Pt,rn+112|0,rn+96|0),Fn=nn[rn+268>>2],nn[en+56>>2]=nn[rn+264>>2],nn[en+60>>2]=Fn,Fn=nn[rn+260>>2],nn[en+48>>2]=nn[rn+256>>2],nn[en+52>>2]=Fn,Fn=nn[en+28>>2],nn[rn+88>>2]=nn[en+24>>2],nn[rn+92>>2]=Fn,Fn=nn[en+20>>2],nn[rn+80>>2]=nn[en+16>>2],nn[rn+84>>2]=Fn,Fn=nn[en+44>>2],nn[rn+72>>2]=nn[en+40>>2],nn[rn+76>>2]=Fn,Fn=nn[en+36>>2],nn[rn+64>>2]=nn[en+32>>2],nn[rn+68>>2]=Fn,aA(Pt,rn+80|0,rn- -64|0),Fn=nn[rn+268>>2],nn[en+40>>2]=nn[rn+264>>2],nn[en+44>>2]=Fn,Fn=nn[rn+260>>2],nn[en+32>>2]=nn[rn+256>>2],nn[en+36>>2]=Fn,Fn=nn[en+12>>2],nn[rn+56>>2]=nn[en+8>>2],nn[rn+60>>2]=Fn,Fn=nn[en+4>>2],nn[rn+48>>2]=nn[en>>2],nn[rn+52>>2]=Fn,Fn=nn[en+28>>2],nn[rn+40>>2]=nn[en+24>>2],nn[rn+44>>2]=Fn,Fn=nn[en+20>>2],nn[rn+32>>2]=nn[en+16>>2],nn[rn+36>>2]=Fn,aA(Pt,rn+48|0,rn+32|0),Fn=nn[rn+268>>2],nn[en+24>>2]=nn[rn+264>>2],nn[en+28>>2]=Fn,Fn=nn[rn+260>>2],nn[en+16>>2]=nn[rn+256>>2],nn[en+20>>2]=Fn,Fn=nn[rn+284>>2],nn[rn+24>>2]=nn[rn+280>>2],nn[rn+28>>2]=Fn,Fn=nn[rn+276>>2],nn[rn+16>>2]=nn[rn+272>>2],nn[rn+20>>2]=Fn,Fn=nn[en+12>>2],nn[rn+8>>2]=nn[en+8>>2],nn[rn+12>>2]=Fn,Fn=nn[en+4>>2],nn[rn>>2]=nn[en>>2],nn[rn+4>>2]=Fn,aA(Pt,rn+16|0,rn),Pt=nn[rn+268>>2],nn[en+8>>2]=nn[rn+264>>2],nn[en+12>>2]=Pt,Pt=nn[rn+260>>2],nn[en>>2]=nn[rn+256>>2],nn[en+4>>2]=Pt,nn[en+12>>2]=Cn^(an[en+12|0]|an[en+13|0]<<8|an[en+14|0]<<16|an[en+15|0]<<24),nn[en+8>>2]=Hn^(an[en+8|0]|an[en+9|0]<<8|an[en+10|0]<<16|an[en+11|0]<<24),nn[en+4>>2]=fn^(an[en+4|0]|an[en+5|0]<<8|an[en+6|0]<<16|an[en+7|0]<<24),nn[en>>2]=Qn^(an[0|en]|an[en+1|0]<<8|an[en+2|0]<<16|an[en+3|0]<<24),nn[Wt>>2]=Xn^(an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24),nn[en+68>>2]=kn^(an[en+68|0]|an[en+69|0]<<8|an[en+70|0]<<16|an[en+71|0]<<24),nn[en+72>>2]=Jn^(an[en+72|0]|an[en+73|0]<<8|an[en+74|0]<<16|an[en+75|0]<<24),nn[en+76>>2]=In^(an[en+76|0]|an[en+77|0]<<8|an[en+78|0]<<16|an[en+79|0]<<24),mn=rn+288|0}function G(Wt,Pt,en){var rn,In,sn,on,cn,dn,un,pn,bn,Gn,hn,Zn,An,Wn,Nn,gn,yn,vn,Yn,En,Vn,Rn,wn,Fn,Qn,fn,Hn,Cn,Xn,kn,Jn=0;mn=rn=mn-288|0,yn=an[en+16|0]|an[en+17|0]<<8|an[en+18|0]<<16|an[en+19|0]<<24,vn=an[en+48|0]|an[en+49|0]<<8|an[en+50|0]<<16|an[en+51|0]<<24,In=an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24,Yn=an[en+20|0]|an[en+21|0]<<8|an[en+22|0]<<16|an[en+23|0]<<24,En=an[en+52|0]|an[en+53|0]<<8|an[en+54|0]<<16|an[en+55|0]<<24,sn=an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24,Vn=an[en+24|0]|an[en+25|0]<<8|an[en+26|0]<<16|an[en+27|0]<<24,Rn=an[en+56|0]|an[en+57|0]<<8|an[en+58|0]<<16|an[en+59|0]<<24,on=an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24,wn=an[en+28|0]|an[en+29|0]<<8|an[en+30|0]<<16|an[en+31|0]<<24,Fn=an[en+60|0]|an[en+61|0]<<8|an[en+62|0]<<16|an[en+63|0]<<24,Jn=an[en+32|0]|an[en+33|0]<<8|an[en+34|0]<<16|an[en+35|0]<<24,cn=an[Pt+16|0]|an[Pt+17|0]<<8|an[Pt+18|0]<<16|an[Pt+19|0]<<24,Qn=an[en+80|0]|an[en+81|0]<<8|an[en+82|0]<<16|an[en+83|0]<<24,fn=an[en+112|0]|an[en+113|0]<<8|an[en+114|0]<<16|an[en+115|0]<<24,dn=an[en+96|0]|an[en+97|0]<<8|an[en+98|0]<<16|an[en+99|0]<<24,un=an[en+36|0]|an[en+37|0]<<8|an[en+38|0]<<16|an[en+39|0]<<24,pn=an[Pt+20|0]|an[Pt+21|0]<<8|an[Pt+22|0]<<16|an[Pt+23|0]<<24,Hn=an[en+84|0]|an[en+85|0]<<8|an[en+86|0]<<16|an[en+87|0]<<24,Cn=an[en+116|0]|an[en+117|0]<<8|an[en+118|0]<<16|an[en+119|0]<<24,bn=an[en+100|0]|an[en+101|0]<<8|an[en+102|0]<<16|an[en+103|0]<<24,Gn=an[en+40|0]|an[en+41|0]<<8|an[en+42|0]<<16|an[en+43|0]<<24,hn=an[Pt+24|0]|an[Pt+25|0]<<8|an[Pt+26|0]<<16|an[Pt+27|0]<<24,Xn=an[en+88|0]|an[en+89|0]<<8|an[en+90|0]<<16|an[en+91|0]<<24,kn=an[en+120|0]|an[en+121|0]<<8|an[en+122|0]<<16|an[en+123|0]<<24,Zn=an[en+104|0]|an[en+105|0]<<8|an[en+106|0]<<16|an[en+107|0]<<24,An=an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,Pt=(Wn=an[en+44|0]|an[en+45|0]<<8|an[en+46|0]<<16|an[en+47|0]<<24)^(Nn=an[Pt+28|0]|an[Pt+29|0]<<8|an[Pt+30|0]<<16|an[Pt+31|0]<<24)^(gn=an[en+108|0]|an[en+109|0]<<8|an[en+110|0]<<16|an[en+111|0]<<24)&(an[en+124|0]|an[en+125|0]<<8|an[en+126|0]<<16|an[en+127|0]<<24)^(an[en+92|0]|an[en+93|0]<<8|an[en+94|0]<<16|an[en+95|0]<<24),tn[Wt+28|0]=Pt,tn[Wt+29|0]=Pt>>>8,tn[Wt+30|0]=Pt>>>16,tn[Wt+31|0]=Pt>>>24,Pt=Zn&kn^Xn^hn^Gn,tn[Wt+24|0]=Pt,tn[Wt+25|0]=Pt>>>8,tn[Wt+26|0]=Pt>>>16,tn[Wt+27|0]=Pt>>>24,Pt=bn&Cn^Hn^pn^un,tn[Wt+20|0]=Pt,tn[Wt+21|0]=Pt>>>8,tn[Wt+22|0]=Pt>>>16,tn[Wt+23|0]=Pt>>>24,Pt=Jn^dn&fn^Qn^cn,tn[Wt+16|0]=Pt,tn[Wt+17|0]=Pt>>>8,tn[Wt+18|0]=Pt>>>16,tn[Wt+19|0]=Pt>>>24,Pt=Fn&Wn^wn^on^gn,tn[Wt+12|0]=Pt,tn[Wt+13|0]=Pt>>>8,tn[Wt+14|0]=Pt>>>16,tn[Wt+15|0]=Pt>>>24,Pt=Gn&Rn^Vn^sn^Zn,tn[Wt+8|0]=Pt,tn[Wt+9|0]=Pt>>>8,tn[Wt+10|0]=Pt>>>16,tn[Wt+11|0]=Pt>>>24,Pt=un&En^Yn^In^bn,tn[Wt+4|0]=Pt,tn[Wt+5|0]=Pt>>>8,tn[Wt+6|0]=Pt>>>16,tn[Wt+7|0]=Pt>>>24,Pt=Jn&vn^yn^An^dn,tn[0|Wt]=Pt,tn[Wt+1|0]=Pt>>>8,tn[Wt+2|0]=Pt>>>16,tn[Wt+3|0]=Pt>>>24,Wt=nn[en+124>>2],nn[rn+280>>2]=nn[en+120>>2],nn[rn+284>>2]=Wt,Wt=nn[en+116>>2],nn[rn+272>>2]=nn[en+112>>2],nn[rn+276>>2]=Wt,Wt=nn[en+108>>2],nn[rn+248>>2]=nn[en+104>>2],nn[rn+252>>2]=Wt,Wt=nn[en+100>>2],nn[rn+240>>2]=nn[en+96>>2],nn[rn+244>>2]=Wt,Wt=nn[en+124>>2],nn[rn+232>>2]=nn[en+120>>2],nn[rn+236>>2]=Wt,Wt=nn[en+116>>2],nn[rn+224>>2]=nn[en+112>>2],nn[rn+228>>2]=Wt,aA(Pt=rn+256|0,rn+240|0,rn+224|0),Wt=nn[rn+268>>2],nn[en+120>>2]=nn[rn+264>>2],nn[en+124>>2]=Wt,Wt=nn[rn+260>>2],nn[en+112>>2]=nn[rn+256>>2],nn[en+116>>2]=Wt,Wt=nn[en+92>>2],nn[rn+216>>2]=nn[en+88>>2],nn[rn+220>>2]=Wt,Wt=nn[en+84>>2],nn[rn+208>>2]=nn[en+80>>2],nn[rn+212>>2]=Wt,Wt=nn[en+108>>2],nn[rn+200>>2]=nn[en+104>>2],nn[rn+204>>2]=Wt,Wt=nn[en+100>>2],nn[rn+192>>2]=nn[en+96>>2],nn[rn+196>>2]=Wt,aA(Pt,rn+208|0,rn+192|0),Wt=nn[rn+268>>2],nn[en+104>>2]=nn[rn+264>>2],nn[en+108>>2]=Wt,Wt=nn[rn+260>>2],nn[en+96>>2]=nn[rn+256>>2],nn[en+100>>2]=Wt,Wt=nn[en+76>>2],nn[rn+184>>2]=nn[en+72>>2],nn[rn+188>>2]=Wt,Jn=nn[4+(Wt=en- -64|0)>>2],nn[rn+176>>2]=nn[Wt>>2],nn[rn+180>>2]=Jn,Jn=nn[en+92>>2],nn[rn+168>>2]=nn[en+88>>2],nn[rn+172>>2]=Jn,Jn=nn[en+84>>2],nn[rn+160>>2]=nn[en+80>>2],nn[rn+164>>2]=Jn,aA(Pt,rn+176|0,rn+160|0),Jn=nn[rn+268>>2],nn[en+88>>2]=nn[rn+264>>2],nn[en+92>>2]=Jn,Jn=nn[rn+260>>2],nn[en+80>>2]=nn[rn+256>>2],nn[en+84>>2]=Jn,Jn=nn[en+60>>2],nn[rn+152>>2]=nn[en+56>>2],nn[rn+156>>2]=Jn,Jn=nn[en+52>>2],nn[rn+144>>2]=nn[en+48>>2],nn[rn+148>>2]=Jn,Jn=nn[en+76>>2],nn[rn+136>>2]=nn[en+72>>2],nn[rn+140>>2]=Jn,Jn=nn[Wt+4>>2],nn[rn+128>>2]=nn[Wt>>2],nn[rn+132>>2]=Jn,aA(Pt,rn+144|0,rn+128|0),Jn=nn[rn+268>>2],nn[en+72>>2]=nn[rn+264>>2],nn[en+76>>2]=Jn,Jn=nn[rn+260>>2],nn[Wt>>2]=nn[rn+256>>2],nn[Wt+4>>2]=Jn,Jn=nn[en+44>>2],nn[rn+120>>2]=nn[en+40>>2],nn[rn+124>>2]=Jn,Jn=nn[en+36>>2],nn[rn+112>>2]=nn[en+32>>2],nn[rn+116>>2]=Jn,Jn=nn[en+60>>2],nn[rn+104>>2]=nn[en+56>>2],nn[rn+108>>2]=Jn,Jn=nn[en+52>>2],nn[rn+96>>2]=nn[en+48>>2],nn[rn+100>>2]=Jn,aA(Pt,rn+112|0,rn+96|0),Jn=nn[rn+268>>2],nn[en+56>>2]=nn[rn+264>>2],nn[en+60>>2]=Jn,Jn=nn[rn+260>>2],nn[en+48>>2]=nn[rn+256>>2],nn[en+52>>2]=Jn,Jn=nn[en+28>>2],nn[rn+88>>2]=nn[en+24>>2],nn[rn+92>>2]=Jn,Jn=nn[en+20>>2],nn[rn+80>>2]=nn[en+16>>2],nn[rn+84>>2]=Jn,Jn=nn[en+44>>2],nn[rn+72>>2]=nn[en+40>>2],nn[rn+76>>2]=Jn,Jn=nn[en+36>>2],nn[rn+64>>2]=nn[en+32>>2],nn[rn+68>>2]=Jn,aA(Pt,rn+80|0,rn- -64|0),Jn=nn[rn+268>>2],nn[en+40>>2]=nn[rn+264>>2],nn[en+44>>2]=Jn,Jn=nn[rn+260>>2],nn[en+32>>2]=nn[rn+256>>2],nn[en+36>>2]=Jn,Jn=nn[en+12>>2],nn[rn+56>>2]=nn[en+8>>2],nn[rn+60>>2]=Jn,Jn=nn[en+4>>2],nn[rn+48>>2]=nn[en>>2],nn[rn+52>>2]=Jn,Jn=nn[en+28>>2],nn[rn+40>>2]=nn[en+24>>2],nn[rn+44>>2]=Jn,Jn=nn[en+20>>2],nn[rn+32>>2]=nn[en+16>>2],nn[rn+36>>2]=Jn,aA(Pt,rn+48|0,rn+32|0),Jn=nn[rn+268>>2],nn[en+24>>2]=nn[rn+264>>2],nn[en+28>>2]=Jn,Jn=nn[rn+260>>2],nn[en+16>>2]=nn[rn+256>>2],nn[en+20>>2]=Jn,Jn=nn[rn+284>>2],nn[rn+24>>2]=nn[rn+280>>2],nn[rn+28>>2]=Jn,Jn=nn[rn+276>>2],nn[rn+16>>2]=nn[rn+272>>2],nn[rn+20>>2]=Jn,Jn=nn[en+12>>2],nn[rn+8>>2]=nn[en+8>>2],nn[rn+12>>2]=Jn,Jn=nn[en+4>>2],nn[rn>>2]=nn[en>>2],nn[rn+4>>2]=Jn,aA(Pt,rn+16|0,rn),Pt=nn[rn+268>>2],nn[en+8>>2]=nn[rn+264>>2],nn[en+12>>2]=Pt,Pt=nn[rn+260>>2],nn[en>>2]=nn[rn+256>>2],nn[en+4>>2]=Pt,nn[en+12>>2]=(an[en+12|0]|an[en+13|0]<<8|an[en+14|0]<<16|an[en+15|0]<<24)^on,nn[en+8>>2]=(an[en+8|0]|an[en+9|0]<<8|an[en+10|0]<<16|an[en+11|0]<<24)^sn,nn[en+4>>2]=(an[en+4|0]|an[en+5|0]<<8|an[en+6|0]<<16|an[en+7|0]<<24)^In,nn[en>>2]=(an[0|en]|an[en+1|0]<<8|an[en+2|0]<<16|an[en+3|0]<<24)^An,nn[Wt>>2]=(an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24)^cn,nn[en+68>>2]=(an[en+68|0]|an[en+69|0]<<8|an[en+70|0]<<16|an[en+71|0]<<24)^pn,nn[en+72>>2]=(an[en+72|0]|an[en+73|0]<<8|an[en+74|0]<<16|an[en+75|0]<<24)^hn,nn[en+76>>2]=Nn^(an[en+76|0]|an[en+77|0]<<8|an[en+78|0]<<16|an[en+79|0]<<24),mn=rn+288|0}function J(Wt,Pt,en,rn,In){var sn,on=0,cn=0,dn=0,un=0,pn=0,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0;for(mn=sn=mn-224|0,An=(an[In+60|0]|an[In+61|0]<<8|an[In+62|0]<<16|an[In+63|0]<<24)^rn>>>29,Wn=(an[In+56|0]|an[In+57|0]<<8|an[In+58|0]<<16|an[In+59|0]<<24)^rn<<3,bn=(an[In+52|0]|an[In+53|0]<<8|an[In+54|0]<<16|an[In+55|0]<<24)^en>>>29,hn=(an[0|(on=In+48|0)]|an[on+1|0]<<8|an[on+2|0]<<16|an[on+3|0]<<24)^en<<3,cn=In+16|0,dn=In+32|0,un=In- -64|0,pn=In+80|0;en=nn[pn+12>>2],nn[sn+216>>2]=nn[pn+8>>2],nn[sn+220>>2]=en,en=nn[pn+4>>2],nn[sn+208>>2]=nn[pn>>2],nn[sn+212>>2]=en,en=nn[un+12>>2],nn[sn+184>>2]=nn[un+8>>2],nn[sn+188>>2]=en,en=nn[un+4>>2],nn[sn+176>>2]=nn[un>>2],nn[sn+180>>2]=en,en=nn[pn+12>>2],nn[sn+168>>2]=nn[pn+8>>2],nn[sn+172>>2]=en,en=nn[pn+4>>2],nn[sn+160>>2]=nn[pn>>2],nn[sn+164>>2]=en,aA(rn=sn+192|0,sn+176|0,sn+160|0),en=nn[sn+204>>2],nn[pn+8>>2]=nn[sn+200>>2],nn[pn+12>>2]=en,en=nn[sn+196>>2],nn[pn>>2]=nn[sn+192>>2],nn[pn+4>>2]=en,en=nn[on+12>>2],nn[sn+152>>2]=nn[on+8>>2],nn[sn+156>>2]=en,en=nn[on+4>>2],nn[sn+144>>2]=nn[on>>2],nn[sn+148>>2]=en,en=nn[un+12>>2],nn[sn+136>>2]=nn[un+8>>2],nn[sn+140>>2]=en,en=nn[un+4>>2],nn[sn+128>>2]=nn[un>>2],nn[sn+132>>2]=en,aA(rn,sn+144|0,sn+128|0),en=nn[sn+204>>2],nn[un+8>>2]=nn[sn+200>>2],nn[un+12>>2]=en,en=nn[sn+196>>2],nn[un>>2]=nn[sn+192>>2],nn[un+4>>2]=en,en=nn[dn+12>>2],nn[sn+120>>2]=nn[dn+8>>2],nn[sn+124>>2]=en,en=nn[dn+4>>2],nn[sn+112>>2]=nn[dn>>2],nn[sn+116>>2]=en,en=nn[on+12>>2],nn[sn+104>>2]=nn[on+8>>2],nn[sn+108>>2]=en,en=nn[on+4>>2],nn[sn+96>>2]=nn[on>>2],nn[sn+100>>2]=en,aA(rn,sn+112|0,sn+96|0),en=nn[sn+204>>2],nn[on+8>>2]=nn[sn+200>>2],nn[on+12>>2]=en,en=nn[sn+196>>2],nn[on>>2]=nn[sn+192>>2],nn[on+4>>2]=en,en=nn[cn+12>>2],nn[sn+88>>2]=nn[cn+8>>2],nn[sn+92>>2]=en,en=nn[cn+4>>2],nn[sn+80>>2]=nn[cn>>2],nn[sn+84>>2]=en,en=nn[dn+12>>2],nn[sn+72>>2]=nn[dn+8>>2],nn[sn+76>>2]=en,en=nn[dn+4>>2],nn[sn+64>>2]=nn[dn>>2],nn[sn+68>>2]=en,aA(rn,sn+80|0,sn- -64|0),en=nn[sn+204>>2],nn[dn+8>>2]=nn[sn+200>>2],nn[dn+12>>2]=en,en=nn[sn+196>>2],nn[dn>>2]=nn[sn+192>>2],nn[dn+4>>2]=en,en=nn[In+12>>2],nn[sn+56>>2]=nn[In+8>>2],nn[sn+60>>2]=en,en=nn[In+4>>2],nn[sn+48>>2]=nn[In>>2],nn[sn+52>>2]=en,en=nn[cn+12>>2],nn[sn+40>>2]=nn[cn+8>>2],nn[sn+44>>2]=en,en=nn[cn+4>>2],nn[sn+32>>2]=nn[cn>>2],nn[sn+36>>2]=en,aA(rn,sn+48|0,sn+32|0),en=nn[sn+204>>2],nn[cn+8>>2]=nn[sn+200>>2],nn[cn+12>>2]=en,en=nn[sn+196>>2],nn[cn>>2]=nn[sn+192>>2],nn[cn+4>>2]=en,en=nn[sn+220>>2],nn[sn+24>>2]=nn[sn+216>>2],nn[sn+28>>2]=en,en=nn[sn+212>>2],nn[sn+16>>2]=nn[sn+208>>2],nn[sn+20>>2]=en,en=nn[In+12>>2],nn[sn+8>>2]=nn[In+8>>2],nn[sn+12>>2]=en,en=nn[In+4>>2],nn[sn>>2]=nn[In>>2],nn[sn+4>>2]=en,aA(rn,sn+16|0,sn),Zn=nn[sn+192>>2],rn=nn[sn+196>>2],en=nn[sn+200>>2],Nn=An^nn[sn+204>>2],nn[In+12>>2]=Nn,gn=en^Wn,nn[In+8>>2]=gn,yn=rn^bn,nn[In+4>>2]=yn,vn=hn^Zn,nn[In>>2]=vn,7!=(0|(Gn=Gn+1|0)););e:{t:{n:{if(en=Pt-16|0){if(16==(0|en))break n;break t}Yn=an[In+16|0]|an[In+17|0]<<8|an[In+18|0]<<16|an[In+19|0]<<24,on=an[In+48|0]|an[In+49|0]<<8|an[In+50|0]<<16|an[In+51|0]<<24,cn=an[In+32|0]|an[In+33|0]<<8|an[In+34|0]<<16|an[In+35|0]<<24,dn=an[In+80|0]|an[In+81|0]<<8|an[In+82|0]<<16|an[In+83|0]<<24,un=an[0|(Pt=In- -64|0)]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,pn=an[In+20|0]|an[In+21|0]<<8|an[In+22|0]<<16|an[In+23|0]<<24,An=an[In+52|0]|an[In+53|0]<<8|an[In+54|0]<<16|an[In+55|0]<<24,Wn=an[In+36|0]|an[In+37|0]<<8|an[In+38|0]<<16|an[In+39|0]<<24,bn=an[In+84|0]|an[In+85|0]<<8|an[In+86|0]<<16|an[In+87|0]<<24,hn=an[In+68|0]|an[In+69|0]<<8|an[In+70|0]<<16|an[In+71|0]<<24,Zn=an[In+24|0]|an[In+25|0]<<8|an[In+26|0]<<16|an[In+27|0]<<24,Gn=an[In+56|0]|an[In+57|0]<<8|an[In+58|0]<<16|an[In+59|0]<<24,rn=an[In+40|0]|an[In+41|0]<<8|an[In+42|0]<<16|an[In+43|0]<<24,en=an[In+88|0]|an[In+89|0]<<8|an[In+90|0]<<16|an[In+91|0]<<24,Pt=an[In+72|0]|an[In+73|0]<<8|an[In+74|0]<<16|an[In+75|0]<<24,In=Nn^(an[In+28|0]|an[In+29|0]<<8|an[In+30|0]<<16|an[In+31|0]<<24)^(an[In+60|0]|an[In+61|0]<<8|an[In+62|0]<<16|an[In+63|0]<<24)^(an[In+44|0]|an[In+45|0]<<8|an[In+46|0]<<16|an[In+47|0]<<24)^(an[In+92|0]|an[In+93|0]<<8|an[In+94|0]<<16|an[In+95|0]<<24)^(an[In+76|0]|an[In+77|0]<<8|an[In+78|0]<<16|an[In+79|0]<<24),tn[Wt+12|0]=In,tn[Wt+13|0]=In>>>8,tn[Wt+14|0]=In>>>16,tn[Wt+15|0]=In>>>24,Pt=gn^Zn^Pt^en^rn^Gn,tn[Wt+8|0]=Pt,tn[Wt+9|0]=Pt>>>8,tn[Wt+10|0]=Pt>>>16,tn[Wt+11|0]=Pt>>>24,Pt=yn^pn^An^Wn^bn^hn,tn[Wt+4|0]=Pt,tn[Wt+5|0]=Pt>>>8,tn[Wt+6|0]=Pt>>>16,tn[Wt+7|0]=Pt>>>24,Pt=vn^Yn^on^cn^dn^un,tn[0|Wt]=Pt,tn[Wt+1|0]=Pt>>>8,tn[Wt+2|0]=Pt>>>16,tn[Wt+3|0]=Pt>>>24;break e}hn=an[In+32|0]|an[In+33|0]<<8|an[In+34|0]<<16|an[In+35|0]<<24,Zn=an[In+16|0]|an[In+17|0]<<8|an[In+18|0]<<16|an[In+19|0]<<24,Gn=an[In+36|0]|an[In+37|0]<<8|an[In+38|0]<<16|an[In+39|0]<<24,rn=an[In+20|0]|an[In+21|0]<<8|an[In+22|0]<<16|an[In+23|0]<<24,en=an[In+40|0]|an[In+41|0]<<8|an[In+42|0]<<16|an[In+43|0]<<24,Pt=an[In+24|0]|an[In+25|0]<<8|an[In+26|0]<<16|an[In+27|0]<<24,bn=Nn^(an[In+44|0]|an[In+45|0]<<8|an[In+46|0]<<16|an[In+47|0]<<24)^(an[In+28|0]|an[In+29|0]<<8|an[In+30|0]<<16|an[In+31|0]<<24),tn[Wt+12|0]=bn,tn[Wt+13|0]=bn>>>8,tn[Wt+14|0]=bn>>>16,tn[Wt+15|0]=bn>>>24,Pt=gn^Pt^en,tn[Wt+8|0]=Pt,tn[Wt+9|0]=Pt>>>8,tn[Wt+10|0]=Pt>>>16,tn[Wt+11|0]=Pt>>>24,Pt=yn^rn^Gn,tn[Wt+4|0]=Pt,tn[Wt+5|0]=Pt>>>8,tn[Wt+6|0]=Pt>>>16,tn[Wt+7|0]=Pt>>>24,Pt=vn^hn^Zn,tn[0|Wt]=Pt,tn[Wt+1|0]=Pt>>>8,tn[Wt+2|0]=Pt>>>16,tn[Wt+3|0]=Pt>>>24,An=an[In+48|0]|an[In+49|0]<<8|an[In+50|0]<<16|an[In+51|0]<<24,Wn=an[In+80|0]|an[In+81|0]<<8|an[In+82|0]<<16|an[In+83|0]<<24,bn=an[0|(Pt=In- -64|0)]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,hn=an[In+52|0]|an[In+53|0]<<8|an[In+54|0]<<16|an[In+55|0]<<24,Zn=an[In+84|0]|an[In+85|0]<<8|an[In+86|0]<<16|an[In+87|0]<<24,Gn=an[In+68|0]|an[In+69|0]<<8|an[In+70|0]<<16|an[In+71|0]<<24,rn=an[In+56|0]|an[In+57|0]<<8|an[In+58|0]<<16|an[In+59|0]<<24,en=an[In+88|0]|an[In+89|0]<<8|an[In+90|0]<<16|an[In+91|0]<<24,Pt=an[In+72|0]|an[In+73|0]<<8|an[In+74|0]<<16|an[In+75|0]<<24,In=(an[In+60|0]|an[In+61|0]<<8|an[In+62|0]<<16|an[In+63|0]<<24)^(an[In+92|0]|an[In+93|0]<<8|an[In+94|0]<<16|an[In+95|0]<<24)^(an[In+76|0]|an[In+77|0]<<8|an[In+78|0]<<16|an[In+79|0]<<24),tn[Wt+28|0]=In,tn[Wt+29|0]=In>>>8,tn[Wt+30|0]=In>>>16,tn[Wt+31|0]=In>>>24,Pt=rn^Pt^en,tn[Wt+24|0]=Pt,tn[Wt+25|0]=Pt>>>8,tn[Wt+26|0]=Pt>>>16,tn[Wt+27|0]=Pt>>>24,Pt=hn^Zn^Gn,tn[Wt+20|0]=Pt,tn[Wt+21|0]=Pt>>>8,tn[Wt+22|0]=Pt>>>16,tn[Wt+23|0]=Pt>>>24,Pt=An^bn^Wn,tn[Wt+16|0]=Pt,tn[Wt+17|0]=Pt>>>8,tn[Wt+18|0]=Pt>>>16,tn[Wt+19|0]=Pt>>>24;break e}VA(Wt,0,Pt)}mn=sn+224|0}function Y(Wt,Pt,en,tn){var rn,In,sn,on,cn,dn,un,pn,bn,Gn,hn,Zn,An,Wn,Nn,gn,yn,vn,Yn,En,Vn,Rn,wn=0,Fn=0,Qn=0,fn=0,Hn=0,Cn=0,Xn=0,kn=0;mn=rn=mn-320|0,nn[rn+280>>2]=0,nn[rn+284>>2]=0,nn[rn+272>>2]=0,nn[rn+276>>2]=0,nn[rn+264>>2]=0,nn[rn+268>>2]=0,nn[rn+256>>2]=0,nn[rn+260>>2]=0,TA(Fn=rn+256|0,Pt,en),kn=an[tn+16|0]|an[tn+17|0]<<8|an[tn+18|0]<<16|an[tn+19|0]<<24,wn=an[tn+48|0]|an[tn+49|0]<<8|an[tn+50|0]<<16|an[tn+51|0]<<24,on=an[tn+20|0]|an[tn+21|0]<<8|an[tn+22|0]<<16|an[tn+23|0]<<24,cn=an[tn+52|0]|an[tn+53|0]<<8|an[tn+54|0]<<16|an[tn+55|0]<<24,dn=an[tn+24|0]|an[tn+25|0]<<8|an[tn+26|0]<<16|an[tn+27|0]<<24,un=an[tn+56|0]|an[tn+57|0]<<8|an[tn+58|0]<<16|an[tn+59|0]<<24,pn=an[tn+28|0]|an[tn+29|0]<<8|an[tn+30|0]<<16|an[tn+31|0]<<24,bn=an[tn+60|0]|an[tn+61|0]<<8|an[tn+62|0]<<16|an[tn+63|0]<<24,Pt=an[tn+36|0]|an[tn+37|0]<<8|an[tn+38|0]<<16|an[tn+39|0]<<24,Gn=an[tn+84|0]|an[tn+85|0]<<8|an[tn+86|0]<<16|an[tn+87|0]<<24,hn=an[tn+116|0]|an[tn+117|0]<<8|an[tn+118|0]<<16|an[tn+119|0]<<24,Qn=an[tn+100|0]|an[tn+101|0]<<8|an[tn+102|0]<<16|an[tn+103|0]<<24,fn=an[tn+44|0]|an[tn+45|0]<<8|an[tn+46|0]<<16|an[tn+47|0]<<24,Zn=an[tn+92|0]|an[tn+93|0]<<8|an[tn+94|0]<<16|an[tn+95|0]<<24,An=an[tn+124|0]|an[tn+125|0]<<8|an[tn+126|0]<<16|an[tn+127|0]<<24,Hn=an[tn+108|0]|an[tn+109|0]<<8|an[tn+110|0]<<16|an[tn+111|0]<<24,Cn=an[tn+32|0]|an[tn+33|0]<<8|an[tn+34|0]<<16|an[tn+35|0]<<24,Wn=an[tn+80|0]|an[tn+81|0]<<8|an[tn+82|0]<<16|an[tn+83|0]<<24,Nn=an[tn+112|0]|an[tn+113|0]<<8|an[tn+114|0]<<16|an[tn+115|0]<<24,Xn=an[tn+96|0]|an[tn+97|0]<<8|an[tn+98|0]<<16|an[tn+99|0]<<24,gn=nn[rn+272>>2],yn=nn[rn+256>>2],vn=nn[rn+260>>2],Yn=nn[rn+264>>2],En=nn[rn+268>>2],Vn=nn[rn+276>>2],Rn=nn[rn+284>>2],In=an[tn+40|0]|an[tn+41|0]<<8|an[tn+42|0]<<16|an[tn+43|0]<<24,sn=an[tn+104|0]|an[tn+105|0]<<8|an[tn+106|0]<<16|an[tn+107|0]<<24,nn[rn+280>>2]=In^sn&(an[tn+120|0]|an[tn+121|0]<<8|an[tn+122|0]<<16|an[tn+123|0]<<24)^nn[rn+280>>2]^(an[tn+88|0]|an[tn+89|0]<<8|an[tn+90|0]<<16|an[tn+91|0]<<24),nn[rn+272>>2]=Cn^Xn&Nn^Wn^gn,nn[rn+284>>2]=fn^Hn&An^Zn^Rn,nn[rn+276>>2]=Pt^Qn&hn^Gn^Vn,nn[rn+268>>2]=Hn^fn&bn^pn^En,nn[rn+264>>2]=un&In^dn^Yn^sn,nn[rn+260>>2]=Qn^Pt&cn^on^vn,nn[rn+256>>2]=Xn^wn&Cn^kn^yn,VA(en+Fn|0,0,32-en|0),TA(Wt,Fn,en),en=nn[rn+280>>2],Fn=nn[rn+272>>2],Qn=nn[rn+284>>2],fn=nn[rn+276>>2],Hn=nn[rn+256>>2],Cn=nn[rn+260>>2],Xn=nn[rn+264>>2],kn=nn[rn+268>>2],Wt=nn[tn+124>>2],nn[rn+312>>2]=nn[tn+120>>2],nn[rn+316>>2]=Wt,Wt=nn[tn+116>>2],nn[rn+304>>2]=nn[tn+112>>2],nn[rn+308>>2]=Wt,Wt=nn[tn+108>>2],nn[rn+248>>2]=nn[tn+104>>2],nn[rn+252>>2]=Wt,Wt=nn[tn+100>>2],nn[rn+240>>2]=nn[tn+96>>2],nn[rn+244>>2]=Wt,Wt=nn[tn+124>>2],nn[rn+232>>2]=nn[tn+120>>2],nn[rn+236>>2]=Wt,Wt=nn[tn+116>>2],nn[rn+224>>2]=nn[tn+112>>2],nn[rn+228>>2]=Wt,aA(Pt=rn+288|0,rn+240|0,rn+224|0),Wt=nn[rn+300>>2],nn[tn+120>>2]=nn[rn+296>>2],nn[tn+124>>2]=Wt,Wt=nn[rn+292>>2],nn[tn+112>>2]=nn[rn+288>>2],nn[tn+116>>2]=Wt,Wt=nn[tn+92>>2],nn[rn+216>>2]=nn[tn+88>>2],nn[rn+220>>2]=Wt,Wt=nn[tn+84>>2],nn[rn+208>>2]=nn[tn+80>>2],nn[rn+212>>2]=Wt,Wt=nn[tn+108>>2],nn[rn+200>>2]=nn[tn+104>>2],nn[rn+204>>2]=Wt,Wt=nn[tn+100>>2],nn[rn+192>>2]=nn[tn+96>>2],nn[rn+196>>2]=Wt,aA(Pt,rn+208|0,rn+192|0),Wt=nn[rn+300>>2],nn[tn+104>>2]=nn[rn+296>>2],nn[tn+108>>2]=Wt,Wt=nn[rn+292>>2],nn[tn+96>>2]=nn[rn+288>>2],nn[tn+100>>2]=Wt,Wt=nn[tn+76>>2],nn[rn+184>>2]=nn[tn+72>>2],nn[rn+188>>2]=Wt,wn=nn[4+(Wt=tn- -64|0)>>2],nn[rn+176>>2]=nn[Wt>>2],nn[rn+180>>2]=wn,wn=nn[tn+92>>2],nn[rn+168>>2]=nn[tn+88>>2],nn[rn+172>>2]=wn,wn=nn[tn+84>>2],nn[rn+160>>2]=nn[tn+80>>2],nn[rn+164>>2]=wn,aA(Pt,rn+176|0,rn+160|0),wn=nn[rn+300>>2],nn[tn+88>>2]=nn[rn+296>>2],nn[tn+92>>2]=wn,wn=nn[rn+292>>2],nn[tn+80>>2]=nn[rn+288>>2],nn[tn+84>>2]=wn,wn=nn[tn+60>>2],nn[rn+152>>2]=nn[tn+56>>2],nn[rn+156>>2]=wn,wn=nn[tn+52>>2],nn[rn+144>>2]=nn[tn+48>>2],nn[rn+148>>2]=wn,wn=nn[tn+76>>2],nn[rn+136>>2]=nn[tn+72>>2],nn[rn+140>>2]=wn,wn=nn[Wt+4>>2],nn[rn+128>>2]=nn[Wt>>2],nn[rn+132>>2]=wn,aA(Pt,rn+144|0,rn+128|0),wn=nn[rn+300>>2],nn[tn+72>>2]=nn[rn+296>>2],nn[tn+76>>2]=wn,wn=nn[rn+292>>2],nn[Wt>>2]=nn[rn+288>>2],nn[Wt+4>>2]=wn,wn=nn[tn+44>>2],nn[rn+120>>2]=nn[tn+40>>2],nn[rn+124>>2]=wn,wn=nn[tn+36>>2],nn[rn+112>>2]=nn[tn+32>>2],nn[rn+116>>2]=wn,wn=nn[tn+60>>2],nn[rn+104>>2]=nn[tn+56>>2],nn[rn+108>>2]=wn,wn=nn[tn+52>>2],nn[rn+96>>2]=nn[tn+48>>2],nn[rn+100>>2]=wn,aA(Pt,rn+112|0,rn+96|0),wn=nn[rn+300>>2],nn[tn+56>>2]=nn[rn+296>>2],nn[tn+60>>2]=wn,wn=nn[rn+292>>2],nn[tn+48>>2]=nn[rn+288>>2],nn[tn+52>>2]=wn,wn=nn[tn+28>>2],nn[rn+88>>2]=nn[tn+24>>2],nn[rn+92>>2]=wn,wn=nn[tn+20>>2],nn[rn+80>>2]=nn[tn+16>>2],nn[rn+84>>2]=wn,wn=nn[tn+44>>2],nn[rn+72>>2]=nn[tn+40>>2],nn[rn+76>>2]=wn,wn=nn[tn+36>>2],nn[rn+64>>2]=nn[tn+32>>2],nn[rn+68>>2]=wn,aA(Pt,rn+80|0,rn- -64|0),wn=nn[rn+300>>2],nn[tn+40>>2]=nn[rn+296>>2],nn[tn+44>>2]=wn,wn=nn[rn+292>>2],nn[tn+32>>2]=nn[rn+288>>2],nn[tn+36>>2]=wn,wn=nn[tn+12>>2],nn[rn+56>>2]=nn[tn+8>>2],nn[rn+60>>2]=wn,wn=nn[tn+4>>2],nn[rn+48>>2]=nn[tn>>2],nn[rn+52>>2]=wn,wn=nn[tn+28>>2],nn[rn+40>>2]=nn[tn+24>>2],nn[rn+44>>2]=wn,wn=nn[tn+20>>2],nn[rn+32>>2]=nn[tn+16>>2],nn[rn+36>>2]=wn,aA(Pt,rn+48|0,rn+32|0),wn=nn[rn+300>>2],nn[tn+24>>2]=nn[rn+296>>2],nn[tn+28>>2]=wn,wn=nn[rn+292>>2],nn[tn+16>>2]=nn[rn+288>>2],nn[tn+20>>2]=wn,wn=nn[rn+316>>2],nn[rn+24>>2]=nn[rn+312>>2],nn[rn+28>>2]=wn,wn=nn[rn+308>>2],nn[rn+16>>2]=nn[rn+304>>2],nn[rn+20>>2]=wn,wn=nn[tn+12>>2],nn[rn+8>>2]=nn[tn+8>>2],nn[rn+12>>2]=wn,wn=nn[tn+4>>2],nn[rn>>2]=nn[tn>>2],nn[rn+4>>2]=wn,aA(Pt,rn+16|0,rn),Pt=nn[rn+300>>2],nn[tn+8>>2]=nn[rn+296>>2],nn[tn+12>>2]=Pt,Pt=nn[rn+292>>2],nn[tn>>2]=nn[rn+288>>2],nn[tn+4>>2]=Pt,nn[tn+12>>2]=kn^(an[tn+12|0]|an[tn+13|0]<<8|an[tn+14|0]<<16|an[tn+15|0]<<24),nn[tn+8>>2]=Xn^(an[tn+8|0]|an[tn+9|0]<<8|an[tn+10|0]<<16|an[tn+11|0]<<24),nn[tn+4>>2]=Cn^(an[tn+4|0]|an[tn+5|0]<<8|an[tn+6|0]<<16|an[tn+7|0]<<24),nn[tn>>2]=Hn^(an[0|tn]|an[tn+1|0]<<8|an[tn+2|0]<<16|an[tn+3|0]<<24),nn[Wt>>2]=Fn^(an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24),nn[tn+68>>2]=fn^(an[tn+68|0]|an[tn+69|0]<<8|an[tn+70|0]<<16|an[tn+71|0]<<24),nn[tn+72>>2]=en^(an[tn+72|0]|an[tn+73|0]<<8|an[tn+74|0]<<16|an[tn+75|0]<<24),nn[tn+76>>2]=Qn^(an[tn+76|0]|an[tn+77|0]<<8|an[tn+78|0]<<16|an[tn+79|0]<<24),mn=rn+320|0}function U(Wt,Pt){var en,tn,an,rn,sn,on,cn,dn,un,pn,mn,Gn,hn,Zn,An,Wn,Nn,gn,yn,vn,Yn,En,Vn,Rn,wn,Fn,Qn,fn,Hn,Cn,Xn,kn,Jn=0,Ln=0,Bn=0,xn=0,On=0,Tn=0,Un=0,Mn=0,zn=0,Sn=0,jn=0,Dn=0,_n=0,Kn=0,Pn=0,qn=0,$n=0,el=0,tl=0,nl=0,ll=0,al=0;Jn=PA(tn=(Wn=nn[Pt+12>>2])<<1,on=tn>>31,Wn,Yn=Wn>>31),Bn=bn,Ln=(zn=PA(On=nn[Pt+16>>2],cn=On>>31,dn=(xn=nn[Pt+8>>2])<<1,Gn=dn>>31))+Jn|0,Jn=bn+Bn|0,Jn=Ln>>>0>>0?Jn+1|0:Jn,Bn=(Sn=PA(_n=(un=nn[Pt+20>>2])<<1,hn=_n>>31,zn=(Tn=nn[Pt+4>>2])<<1,an=zn>>31))+Ln|0,Ln=bn+Jn|0,Ln=Bn>>>0>>0?Ln+1|0:Ln,Un=PA(en=nn[Pt+24>>2],pn=en>>31,Sn=(qn=nn[Pt>>2])<<1,rn=Sn>>31),Jn=bn+Ln|0,Jn=(Bn=Un+Bn|0)>>>0>>0?Jn+1|0:Jn,Ln=Bn,Zn=nn[Pt+32>>2],Bn=PA(jn=In(Zn,19),mn=jn>>31,Zn,gn=Zn>>31),Jn=bn+Jn|0,Jn=(Ln=Ln+Bn|0)>>>0>>0?Jn+1|0:Jn,Fn=nn[Pt+36>>2],Bn=PA(Un=In(Fn,38),sn=Un>>31,yn=(An=nn[Pt+28>>2])<<1,En=yn>>31),Pt=bn+Jn|0,Pn=Ln=Bn+Ln|0,Bn=Ln>>>0>>0?Pt+1|0:Pt,Pt=PA(zn,an,On,cn),Jn=bn,Ln=PA(dn,Gn,Wn,Yn),Jn=bn+Jn|0,Jn=(Pt=Ln+Pt|0)>>>0>>0?Jn+1|0:Jn,Mn=PA(un,vn=un>>31,Sn,rn),Ln=bn+Jn|0,Ln=(Pt=Mn+Pt|0)>>>0>>0?Ln+1|0:Ln,Mn=PA(jn,mn,yn,En),Jn=bn+Ln|0,Jn=(Pt=Mn+Pt|0)>>>0>>0?Jn+1|0:Jn,Ln=PA(Un,sn,en,pn),Jn=bn+Jn|0,ll=Pt=Ln+Pt|0,Dn=Pt>>>0>>0?Jn+1|0:Jn,Jn=PA(zn,an,tn,on),Ln=bn,Vn=Pt=xn,xn=PA(Pt,Kn=Pt>>31,Pt,Kn),Pt=bn+Ln|0,Pt=(Jn=xn+Jn|0)>>>0>>0?Pt+1|0:Pt,Ln=(xn=PA(Sn,rn,On,cn))+Jn|0,Jn=bn+Pt|0,Jn=Ln>>>0>>0?Jn+1|0:Jn,Pt=(xn=PA(Mn=In(An,38),Nn=Mn>>31,An,Rn=An>>31))+Ln|0,Ln=bn+Jn|0,Ln=Pt>>>0>>0?Ln+1|0:Ln,Pt=(Jn=Pt)+(xn=PA(jn,mn,Pt=en<<1,Pt>>31))|0,Jn=bn+Ln|0,Jn=Pt>>>0>>0?Jn+1|0:Jn,Ln=Pt,Pt=PA(Un,sn,_n,hn),Jn=bn+Jn|0,Qn=Ln=Ln+Pt|0,fn=Jn=Pt>>>0>Ln>>>0?Jn+1|0:Jn,Pt=Jn,Hn=Ln=Ln+33554432|0,Cn=Pt=Ln>>>0<33554432?Pt+1|0:Pt,Jn=(Jn=Pt>>26)+Dn|0,ll=Pt=(Ln=(67108863&Pt)<<6|Ln>>>26)+ll|0,Jn=Pt>>>0>>0?Jn+1|0:Jn,Xn=Pt=Pt+16777216|0,Jn=(Jn=(Ln=Pt>>>0<16777216?Jn+1|0:Jn)>>25)+Bn|0,Pt=(Pt=(33554431&Ln)<<7|Pt>>>25)>>>0>(Ln=Pt+Pn|0)>>>0?Jn+1|0:Jn,Pn=Jn=Ln+33554432|0,xn=Pt=Jn>>>0<33554432?Pt+1|0:Pt,nn[Wt+24>>2]=Ln-(-67108864&Jn),Pt=PA(Sn,rn,Vn,Kn),Jn=bn,Bn=PA(zn,an,Tn,$n=Tn>>31),Ln=bn+Jn|0,Ln=(Pt=Bn+Pt|0)>>>0>>0?Ln+1|0:Ln,Dn=PA(Bn=In(en,19),nl=Bn>>31,en,pn),Jn=bn+Ln|0,Jn=(Pt=Dn+Pt|0)>>>0>>0?Jn+1|0:Jn,Ln=(Dn=PA(_n,hn,Mn,Nn))+Pt|0,Pt=bn+Jn|0,Pt=Ln>>>0>>0?Pt+1|0:Pt,el=PA(jn,mn,Dn=On<<1,wn=Dn>>31),Jn=bn+Pt|0,Jn=(Ln=el+Ln|0)>>>0>>0?Jn+1|0:Jn,Pt=Ln,Ln=PA(Un,sn,tn,on),Jn=bn+Jn|0,tl=Pt=Pt+Ln|0,el=Pt>>>0>>0?Jn+1|0:Jn,Pt=PA(_n,hn,Bn,nl),Jn=bn,Tn=PA(Sn,rn,Tn,$n),Ln=bn+Jn|0,Ln=(Pt=Tn+Pt|0)>>>0>>0?Ln+1|0:Ln,Tn=PA(On,cn,Mn,Nn),Jn=bn+Ln|0,Jn=(Pt=Tn+Pt|0)>>>0>>0?Jn+1|0:Jn,Ln=(Tn=PA(jn,mn,tn,on))+Pt|0,Pt=bn+Jn|0,Pt=Ln>>>0>>0?Pt+1|0:Pt,Tn=PA(Un,sn,Vn,Kn),Jn=bn+Pt|0,al=Ln=Tn+Ln|0,$n=Ln>>>0>>0?Jn+1|0:Jn,Ln=PA(Pt=In(un,38),Pt>>31,un,vn),Tn=bn,Pt=qn,qn=Ln,Ln=PA(Pt,Jn=Pt>>31,Pt,Jn),Jn=bn+Tn|0,Jn=(Pt=qn+Ln|0)>>>0>>0?Jn+1|0:Jn,Bn=PA(Bn,nl,Dn,wn),Ln=bn+Jn|0,Ln=(Pt=Bn+Pt|0)>>>0>>0?Ln+1|0:Ln,Bn=PA(tn,on,Mn,Nn),Jn=bn+Ln|0,Jn=(Pt=Bn+Pt|0)>>>0>>0?Jn+1|0:Jn,Ln=(Bn=PA(jn,mn,dn,Gn))+Pt|0,Pt=bn+Jn|0,Pt=Ln>>>0>>0?Pt+1|0:Pt,Bn=PA(zn,an,Un,sn),Jn=bn+Pt|0,Tn=Ln=Bn+Ln|0,qn=Jn=Ln>>>0>>0?Jn+1|0:Jn,nl=Ln=Ln+33554432|0,kn=Jn=Ln>>>0<33554432?Jn+1|0:Jn,Pt=Jn>>26,Jn=(67108863&Jn)<<6|Ln>>>26,Ln=Pt+$n|0,$n=Bn=Jn+al|0,Jn=Jn>>>0>Bn>>>0?Ln+1|0:Ln,al=Ln=Bn+16777216|0,Bn=(33554431&(Jn=Ln>>>0<16777216?Jn+1|0:Jn))<<7|Ln>>>25,Jn=(Jn>>25)+el|0,Jn=(Ln=Bn+tl|0)>>>0>>0?Jn+1|0:Jn,el=Pt=Ln+33554432|0,Bn=Jn=Pt>>>0<33554432?Jn+1|0:Jn,nn[Wt+8>>2]=Ln-(-67108864&Pt),Pt=PA(dn,Gn,un,vn),Jn=bn,Ln=PA(On,cn,tn,on),Jn=bn+Jn|0,Jn=(Pt=Ln+Pt|0)>>>0>>0?Jn+1|0:Jn,Ln=PA(zn,an,en,pn),Jn=bn+Jn|0,Jn=(Pt=Ln+Pt|0)>>>0>>0?Jn+1|0:Jn,Ln=PA(Sn,rn,An,Rn),Jn=bn+Jn|0,Jn=(Pt=Ln+Pt|0)>>>0>>0?Jn+1|0:Jn,tl=(Ln=PA(Un,sn,Zn,gn))+Pt|0,Pt=bn+Jn|0,Ln=(Jn=xn>>26)+(Ln=Ln>>>0>tl>>>0?Pt+1|0:Pt)|0,Pn=Pt=(xn=(67108863&xn)<<6|Pn>>>26)+tl|0,Jn=Pt>>>0>>0?Ln+1|0:Ln,tl=Pt=Pt+16777216|0,xn=Jn=Pt>>>0<16777216?Jn+1|0:Jn,nn[Wt+28>>2]=Pn-(-33554432&Pt),Pt=PA(Sn,rn,Wn,Yn),Ln=bn,Jn=(Kn=PA(zn,an,Vn,Kn))+Pt|0,Pt=bn+Ln|0,Pt=Jn>>>0>>0?Pt+1|0:Pt,Jn=(Mn=PA(en,pn,Mn,Nn))+Jn|0,Ln=bn+Pt|0,Pt=(jn=PA(jn,mn,_n,hn))+Jn|0,Jn=bn+(Jn>>>0>>0?Ln+1|0:Ln)|0,Jn=Pt>>>0>>0?Jn+1|0:Jn,Ln=PA(Un,sn,On,cn),Jn=bn+Jn|0,Jn=(Jn=(Pt=Ln+Pt|0)>>>0>>0?Jn+1|0:Jn)+(Ln=Bn>>26)|0,Pt=(Ln=Bn=(Pn=Pt)+(Pt=(67108863&Bn)<<6|el>>>26)|0)>>>0>>0?Jn+1|0:Jn,jn=Jn=Ln+16777216|0,Bn=Pt=Jn>>>0<16777216?Pt+1|0:Pt,nn[Wt+12>>2]=Ln-(-33554432&Jn),Pt=PA(en,pn,dn,Gn),Jn=bn,Ln=PA(On,cn,On,cn),Jn=bn+Jn|0,Jn=(Pt=Ln+Pt|0)>>>0>>0?Jn+1|0:Jn,Ln=PA(tn,on,_n,hn),Jn=bn+Jn|0,Jn=(Pt=Ln+Pt|0)>>>0>>0?Jn+1|0:Jn,Ln=(On=PA(zn,an,yn,En))+Pt|0,Pt=bn+Jn|0,Pt=Ln>>>0>>0?Pt+1|0:Pt,Jn=(On=PA(Sn,rn,Zn,gn))+Ln|0,Ln=bn+Pt|0,Ln=Jn>>>0>>0?Ln+1|0:Ln,Pt=(On=PA(Pt=Un,sn,Un=Fn,_n=Un>>31))+Jn|0,Jn=bn+Ln|0,Jn=Pt>>>0>>0?Jn+1|0:Jn,Ln=Pt,Jn=(Pt=xn>>25)+Jn|0,Jn=(Ln=Ln+(xn=(33554431&xn)<<7|tl>>>25)|0)>>>0>>0?Jn+1|0:Jn,On=Pt=Ln+33554432|0,xn=Jn=Pt>>>0<33554432?Jn+1|0:Jn,nn[Wt+32>>2]=Ln-(-67108864&Pt),Jn=Bn>>25,Ln=(Bn=(33554431&Bn)<<7|jn>>>25)+(Qn-(Pt=-67108864&Hn)|0)|0,Pt=Jn+(fn-((Pt>>>0>Qn>>>0)+Cn|0)|0)|0,Pt=Ln>>>0>>0?Pt+1|0:Pt,Bn=Ln,Pt=((67108863&(Jn=(Ln=Ln+33554432|0)>>>0<33554432?Pt+1|0:Pt))<<6|Ln>>>26)+(Mn=ll-(-33554432&Xn)|0)|0,nn[Wt+20>>2]=Pt,nn[Wt+16>>2]=Bn-(-67108864&Ln),Pt=PA(tn,on,en,pn),Ln=bn,Jn=(Bn=PA(un,vn,Dn,wn))+Pt|0,Pt=bn+Ln|0,Pt=Jn>>>0>>0?Pt+1|0:Pt,Ln=(Bn=PA(dn,Gn,An,Rn))+Jn|0,Jn=bn+Pt|0,Jn=Ln>>>0>>0?Jn+1|0:Jn,Pt=(Bn=PA(zn,an,Zn,gn))+Ln|0,Ln=bn+Jn|0,Ln=Pt>>>0>>0?Ln+1|0:Ln,Bn=(Jn=Pt)+(Pt=PA(Sn,rn,Un,_n))|0,Jn=bn+Ln|0,Jn=(Pt=Pt>>>0>Bn>>>0?Jn+1|0:Jn)+(Jn=xn>>26)|0,Pt=(Ln=(xn=(67108863&xn)<<6|On>>>26)+Bn|0)>>>0>>0?Jn+1|0:Jn,Pt=(Jn=Ln+16777216|0)>>>0<16777216?Pt+1|0:Pt,nn[Wt+36>>2]=Ln-(-33554432&Jn),xn=$n-(-33554432&al)|0,Bn=Tn-(Ln=-67108864&nl)|0,zn=qn-((Ln>>>0>Tn>>>0)+kn|0)|0,Pt=PA((33554431&Pt)<<7|Jn>>>25,Pt>>25,19,0),Jn=bn+zn|0,Pt=Pt>>>0>(Ln=Pt+Bn|0)>>>0?Jn+1|0:Jn,Pt=((67108863&(Pt=(Jn=Ln+33554432|0)>>>0<33554432?Pt+1|0:Pt))<<6|Jn>>>26)+xn|0,nn[Wt+4>>2]=Pt,nn[Wt>>2]=Ln-(-67108864&Jn)}function d(Wt,Pt){var en,tn,rn,In,sn,on,cn,dn,un,pn,bn=0,Gn=0,hn=0;mn=en=mn-416|0,tn=an[Wt+16|0]|an[Wt+17|0]<<8|an[Wt+18|0]<<16|an[Wt+19|0]<<24,rn=an[Wt+20|0]|an[Wt+21|0]<<8|an[Wt+22|0]<<16|an[Wt+23|0]<<24,In=an[Wt+24|0]|an[Wt+25|0]<<8|an[Wt+26|0]<<16|an[Wt+27|0]<<24,sn=an[Wt+28|0]|an[Wt+29|0]<<8|an[Wt+30|0]<<16|an[Wt+31|0]<<24,hn=an[Wt+4|0]|an[Wt+5|0]<<8|an[Wt+6|0]<<16|an[Wt+7|0]<<24,on=an[Wt+8|0]|an[Wt+9|0]<<8|an[Wt+10|0]<<16|an[Wt+11|0]<<24,cn=an[Wt+12|0]|an[Wt+13|0]<<8|an[Wt+14|0]<<16|an[Wt+15|0]<<24,dn=an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24,Wt=nn[Pt+92>>2],nn[en+408>>2]=nn[Pt+88>>2],nn[en+412>>2]=Wt,Wt=nn[Pt+84>>2],nn[en+400>>2]=nn[Pt+80>>2],nn[en+404>>2]=Wt,Wt=nn[Pt+76>>2],nn[en+376>>2]=nn[Pt+72>>2],nn[en+380>>2]=Wt,bn=nn[4+(Wt=Gn=Pt- -64|0)>>2],nn[en+368>>2]=nn[Wt>>2],nn[en+372>>2]=bn,Wt=nn[Pt+92>>2],nn[en+360>>2]=nn[Pt+88>>2],nn[en+364>>2]=Wt,Wt=nn[Pt+84>>2],nn[en+352>>2]=nn[Pt+80>>2],nn[en+356>>2]=Wt,aA(Wt=en+384|0,en+368|0,en+352|0),bn=nn[en+396>>2],nn[Pt+88>>2]=nn[en+392>>2],nn[Pt+92>>2]=bn,bn=nn[en+388>>2],nn[Pt+80>>2]=nn[en+384>>2],nn[Pt+84>>2]=bn,bn=nn[Pt+60>>2],nn[en+344>>2]=nn[Pt+56>>2],nn[en+348>>2]=bn,bn=nn[Pt+52>>2],nn[en+336>>2]=nn[Pt+48>>2],nn[en+340>>2]=bn,bn=nn[Pt+76>>2],nn[en+328>>2]=nn[Pt+72>>2],nn[en+332>>2]=bn,bn=nn[Gn+4>>2],nn[en+320>>2]=nn[Gn>>2],nn[en+324>>2]=bn,aA(Wt,en+336|0,en+320|0),bn=nn[en+396>>2],nn[Pt+72>>2]=nn[en+392>>2],nn[Pt+76>>2]=bn,bn=nn[en+388>>2],nn[Gn>>2]=nn[en+384>>2],nn[Gn+4>>2]=bn,bn=nn[Pt+44>>2],nn[en+312>>2]=nn[Pt+40>>2],nn[en+316>>2]=bn,bn=nn[Pt+36>>2],nn[en+304>>2]=nn[Pt+32>>2],nn[en+308>>2]=bn,bn=nn[Pt+60>>2],nn[en+296>>2]=nn[Pt+56>>2],nn[en+300>>2]=bn,bn=nn[Pt+52>>2],nn[en+288>>2]=nn[Pt+48>>2],nn[en+292>>2]=bn,aA(Wt,en+304|0,en+288|0),bn=nn[en+396>>2],nn[Pt+56>>2]=nn[en+392>>2],nn[Pt+60>>2]=bn,bn=nn[en+388>>2],nn[Pt+48>>2]=nn[en+384>>2],nn[Pt+52>>2]=bn,bn=nn[Pt+28>>2],nn[en+280>>2]=nn[Pt+24>>2],nn[en+284>>2]=bn,bn=nn[Pt+20>>2],nn[en+272>>2]=nn[Pt+16>>2],nn[en+276>>2]=bn,bn=nn[Pt+44>>2],nn[en+264>>2]=nn[Pt+40>>2],nn[en+268>>2]=bn,bn=nn[Pt+36>>2],nn[en+256>>2]=nn[Pt+32>>2],nn[en+260>>2]=bn,aA(Wt,en+272|0,en+256|0),bn=nn[en+396>>2],nn[Pt+40>>2]=nn[en+392>>2],nn[Pt+44>>2]=bn,bn=nn[en+388>>2],nn[Pt+32>>2]=nn[en+384>>2],nn[Pt+36>>2]=bn,bn=nn[Pt+12>>2],nn[en+248>>2]=nn[Pt+8>>2],nn[en+252>>2]=bn,bn=nn[Pt+4>>2],nn[en+240>>2]=nn[Pt>>2],nn[en+244>>2]=bn,bn=nn[Pt+28>>2],nn[en+232>>2]=nn[Pt+24>>2],nn[en+236>>2]=bn,bn=nn[Pt+20>>2],nn[en+224>>2]=nn[Pt+16>>2],nn[en+228>>2]=bn,aA(Wt,en+240|0,en+224|0),bn=nn[en+396>>2],nn[Pt+24>>2]=nn[en+392>>2],nn[Pt+28>>2]=bn,bn=nn[en+388>>2],nn[Pt+16>>2]=nn[en+384>>2],nn[Pt+20>>2]=bn,bn=nn[en+412>>2],nn[en+216>>2]=nn[en+408>>2],nn[en+220>>2]=bn,bn=nn[en+404>>2],nn[en+208>>2]=nn[en+400>>2],nn[en+212>>2]=bn,bn=nn[Pt+12>>2],nn[en+200>>2]=nn[Pt+8>>2],nn[en+204>>2]=bn,bn=nn[Pt+4>>2],nn[en+192>>2]=nn[Pt>>2],nn[en+196>>2]=bn,aA(Wt,en+208|0,en+192|0),bn=nn[en+384>>2],un=nn[en+388>>2],pn=nn[en+392>>2],nn[Pt+12>>2]=nn[en+396>>2]^cn,nn[Pt+8>>2]=on^pn,nn[Pt+4>>2]=hn^un,nn[Pt>>2]=bn^dn,hn=nn[Pt+92>>2],nn[en+408>>2]=nn[Pt+88>>2],nn[en+412>>2]=hn,hn=nn[Pt+84>>2],nn[en+400>>2]=nn[Pt+80>>2],nn[en+404>>2]=hn,hn=nn[Pt+76>>2],nn[en+184>>2]=nn[Pt+72>>2],nn[en+188>>2]=hn,hn=nn[Gn+4>>2],nn[en+176>>2]=nn[Gn>>2],nn[en+180>>2]=hn,hn=nn[Pt+92>>2],nn[en+168>>2]=nn[Pt+88>>2],nn[en+172>>2]=hn,hn=nn[Pt+84>>2],nn[en+160>>2]=nn[Pt+80>>2],nn[en+164>>2]=hn,aA(Wt,en+176|0,en+160|0),hn=nn[en+396>>2],nn[Pt+88>>2]=nn[en+392>>2],nn[Pt+92>>2]=hn,hn=nn[en+388>>2],nn[Pt+80>>2]=nn[en+384>>2],nn[Pt+84>>2]=hn,hn=nn[Pt+60>>2],nn[en+152>>2]=nn[Pt+56>>2],nn[en+156>>2]=hn,hn=nn[Pt+52>>2],nn[en+144>>2]=nn[Pt+48>>2],nn[en+148>>2]=hn,hn=nn[Pt+76>>2],nn[en+136>>2]=nn[Pt+72>>2],nn[en+140>>2]=hn,hn=nn[Gn+4>>2],nn[en+128>>2]=nn[Gn>>2],nn[en+132>>2]=hn,aA(Wt,en+144|0,en+128|0),hn=nn[en+396>>2],nn[Pt+72>>2]=nn[en+392>>2],nn[Pt+76>>2]=hn,hn=nn[en+388>>2],nn[Gn>>2]=nn[en+384>>2],nn[Gn+4>>2]=hn,Gn=nn[Pt+44>>2],nn[en+120>>2]=nn[Pt+40>>2],nn[en+124>>2]=Gn,Gn=nn[Pt+36>>2],nn[en+112>>2]=nn[Pt+32>>2],nn[en+116>>2]=Gn,Gn=nn[Pt+60>>2],nn[en+104>>2]=nn[Pt+56>>2],nn[en+108>>2]=Gn,Gn=nn[Pt+52>>2],nn[en+96>>2]=nn[Pt+48>>2],nn[en+100>>2]=Gn,aA(Wt,en+112|0,en+96|0),Gn=nn[en+396>>2],nn[Pt+56>>2]=nn[en+392>>2],nn[Pt+60>>2]=Gn,Gn=nn[en+388>>2],nn[Pt+48>>2]=nn[en+384>>2],nn[Pt+52>>2]=Gn,Gn=nn[Pt+28>>2],nn[en+88>>2]=nn[Pt+24>>2],nn[en+92>>2]=Gn,Gn=nn[Pt+20>>2],nn[en+80>>2]=nn[Pt+16>>2],nn[en+84>>2]=Gn,Gn=nn[Pt+44>>2],nn[en+72>>2]=nn[Pt+40>>2],nn[en+76>>2]=Gn,Gn=nn[Pt+36>>2],nn[en+64>>2]=nn[Pt+32>>2],nn[en+68>>2]=Gn,aA(Wt,en+80|0,en- -64|0),Gn=nn[en+396>>2],nn[Pt+40>>2]=nn[en+392>>2],nn[Pt+44>>2]=Gn,Gn=nn[en+388>>2],nn[Pt+32>>2]=nn[en+384>>2],nn[Pt+36>>2]=Gn,Gn=nn[Pt+12>>2],nn[en+56>>2]=nn[Pt+8>>2],nn[en+60>>2]=Gn,Gn=nn[Pt+4>>2],nn[en+48>>2]=nn[Pt>>2],nn[en+52>>2]=Gn,Gn=nn[Pt+28>>2],nn[en+40>>2]=nn[Pt+24>>2],nn[en+44>>2]=Gn,Gn=nn[Pt+20>>2],nn[en+32>>2]=nn[Pt+16>>2],nn[en+36>>2]=Gn,aA(Wt,en+48|0,en+32|0),Gn=nn[en+396>>2],nn[Pt+24>>2]=nn[en+392>>2],nn[Pt+28>>2]=Gn,Gn=nn[en+388>>2],nn[Pt+16>>2]=nn[en+384>>2],nn[Pt+20>>2]=Gn,Gn=nn[en+412>>2],nn[en+24>>2]=nn[en+408>>2],nn[en+28>>2]=Gn,Gn=nn[en+404>>2],nn[en+16>>2]=nn[en+400>>2],nn[en+20>>2]=Gn,Gn=nn[Pt+12>>2],nn[en+8>>2]=nn[Pt+8>>2],nn[en+12>>2]=Gn,Gn=nn[Pt+4>>2],nn[en>>2]=nn[Pt>>2],nn[en+4>>2]=Gn,aA(Wt,en+16|0,en),Wt=nn[en+384>>2],Gn=nn[en+388>>2],hn=nn[en+392>>2],nn[Pt+12>>2]=nn[en+396>>2]^sn,nn[Pt+8>>2]=hn^In,nn[Pt+4>>2]=Gn^rn,nn[Pt>>2]=Wt^tn,mn=en+416|0}function b(Wt,Pt,en){var tn,rn,In,sn,on,cn,dn,un,pn,bn,Gn,hn,Zn,An,Wn=0,Nn=0,gn=0;for(mn=tn=mn-288|0,Gn=an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24,hn=an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24,Zn=an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24,dn=an[Wt+4|0]|an[Wt+5|0]<<8|an[Wt+6|0]<<16|an[Wt+7|0]<<24,un=an[Wt+8|0]|an[Wt+9|0]<<8|an[Wt+10|0]<<16|an[Wt+11|0]<<24,pn=an[Wt+12|0]|an[Wt+13|0]<<8|an[Wt+14|0]<<16|an[Wt+15|0]<<24,An=an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,Pt=en+112|0,Wt=33620224^(bn=an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24),nn[Pt>>2]=Wt,nn[(on=en+96|0)>>2]=1427652059^bn,nn[(cn=en+80|0)>>2]=Wt,Nn=bn^An,nn[(Wt=en- -64|0)>>2]=Nn,nn[en+56>>2]=1110511904,nn[en+60>>2]=-584534669,nn[(rn=en+48|0)>>2]=1427652059,nn[rn+4>>2]=-248528275,nn[en+40>>2]=1496785429,nn[en+44>>2]=1652156816,nn[(In=en+32|0)>>2]=33620224,nn[In+4>>2]=218629379,nn[en+24>>2]=1110511904,nn[en+28>>2]=-584534669,nn[(sn=en+16|0)>>2]=1427652059,nn[sn+4>>2]=-248528275,nn[en>>2]=Nn,Nn=1652156816^pn,nn[en+124>>2]=Nn,gn=1496785429^un,nn[en+120>>2]=gn,Wn=218629379^dn,nn[en+116>>2]=Wn,nn[en+108>>2]=-584534669^pn,nn[en+104>>2]=1110511904^un,nn[en+100>>2]=-248528275^dn,nn[en+92>>2]=Nn,nn[en+88>>2]=gn,nn[en+84>>2]=Wn,Nn=pn^Zn,nn[en+76>>2]=Nn,gn=un^hn,nn[en+72>>2]=gn,Wn=dn^Gn,nn[en+68>>2]=Wn,nn[en+12>>2]=Nn,nn[en+8>>2]=gn,nn[en+4>>2]=Wn,gn=0;Nn=nn[Pt+12>>2],nn[tn+280>>2]=nn[Pt+8>>2],nn[tn+284>>2]=Nn,Nn=nn[Pt+4>>2],nn[tn+272>>2]=nn[Pt>>2],nn[tn+276>>2]=Nn,Nn=nn[on+12>>2],nn[tn+248>>2]=nn[on+8>>2],nn[tn+252>>2]=Nn,Nn=nn[on+4>>2],nn[tn+240>>2]=nn[on>>2],nn[tn+244>>2]=Nn,Nn=nn[Pt+12>>2],nn[tn+232>>2]=nn[Pt+8>>2],nn[tn+236>>2]=Nn,Nn=nn[Pt+4>>2],nn[tn+224>>2]=nn[Pt>>2],nn[tn+228>>2]=Nn,aA(Nn=tn+256|0,tn+240|0,tn+224|0),Wn=nn[tn+268>>2],nn[Pt+8>>2]=nn[tn+264>>2],nn[Pt+12>>2]=Wn,Wn=nn[tn+260>>2],nn[Pt>>2]=nn[tn+256>>2],nn[Pt+4>>2]=Wn,Wn=nn[cn+12>>2],nn[tn+216>>2]=nn[cn+8>>2],nn[tn+220>>2]=Wn,Wn=nn[cn+4>>2],nn[tn+208>>2]=nn[cn>>2],nn[tn+212>>2]=Wn,Wn=nn[on+12>>2],nn[tn+200>>2]=nn[on+8>>2],nn[tn+204>>2]=Wn,Wn=nn[on+4>>2],nn[tn+192>>2]=nn[on>>2],nn[tn+196>>2]=Wn,aA(Nn,tn+208|0,tn+192|0),Wn=nn[tn+268>>2],nn[on+8>>2]=nn[tn+264>>2],nn[on+12>>2]=Wn,Wn=nn[tn+260>>2],nn[on>>2]=nn[tn+256>>2],nn[on+4>>2]=Wn,Wn=nn[Wt+12>>2],nn[tn+184>>2]=nn[Wt+8>>2],nn[tn+188>>2]=Wn,Wn=nn[Wt+4>>2],nn[tn+176>>2]=nn[Wt>>2],nn[tn+180>>2]=Wn,Wn=nn[cn+12>>2],nn[tn+168>>2]=nn[cn+8>>2],nn[tn+172>>2]=Wn,Wn=nn[cn+4>>2],nn[tn+160>>2]=nn[cn>>2],nn[tn+164>>2]=Wn,aA(Nn,tn+176|0,tn+160|0),Wn=nn[tn+268>>2],nn[cn+8>>2]=nn[tn+264>>2],nn[cn+12>>2]=Wn,Wn=nn[tn+260>>2],nn[cn>>2]=nn[tn+256>>2],nn[cn+4>>2]=Wn,Wn=nn[rn+12>>2],nn[tn+152>>2]=nn[rn+8>>2],nn[tn+156>>2]=Wn,Wn=nn[rn+4>>2],nn[tn+144>>2]=nn[rn>>2],nn[tn+148>>2]=Wn,Wn=nn[Wt+12>>2],nn[tn+136>>2]=nn[Wt+8>>2],nn[tn+140>>2]=Wn,Wn=nn[Wt+4>>2],nn[tn+128>>2]=nn[Wt>>2],nn[tn+132>>2]=Wn,aA(Nn,tn+144|0,tn+128|0),Wn=nn[tn+268>>2],nn[Wt+8>>2]=nn[tn+264>>2],nn[Wt+12>>2]=Wn,Wn=nn[tn+260>>2],nn[Wt>>2]=nn[tn+256>>2],nn[Wt+4>>2]=Wn,Wn=nn[In+12>>2],nn[tn+120>>2]=nn[In+8>>2],nn[tn+124>>2]=Wn,Wn=nn[In+4>>2],nn[tn+112>>2]=nn[In>>2],nn[tn+116>>2]=Wn,Wn=nn[rn+12>>2],nn[tn+104>>2]=nn[rn+8>>2],nn[tn+108>>2]=Wn,Wn=nn[rn+4>>2],nn[tn+96>>2]=nn[rn>>2],nn[tn+100>>2]=Wn,aA(Nn,tn+112|0,tn+96|0),Wn=nn[tn+268>>2],nn[rn+8>>2]=nn[tn+264>>2],nn[rn+12>>2]=Wn,Wn=nn[tn+260>>2],nn[rn>>2]=nn[tn+256>>2],nn[rn+4>>2]=Wn,Wn=nn[sn+12>>2],nn[tn+88>>2]=nn[sn+8>>2],nn[tn+92>>2]=Wn,Wn=nn[sn+4>>2],nn[tn+80>>2]=nn[sn>>2],nn[tn+84>>2]=Wn,Wn=nn[In+12>>2],nn[tn+72>>2]=nn[In+8>>2],nn[tn+76>>2]=Wn,Wn=nn[In+4>>2],nn[tn+64>>2]=nn[In>>2],nn[tn+68>>2]=Wn,aA(Nn,tn+80|0,tn- -64|0),Wn=nn[tn+268>>2],nn[In+8>>2]=nn[tn+264>>2],nn[In+12>>2]=Wn,Wn=nn[tn+260>>2],nn[In>>2]=nn[tn+256>>2],nn[In+4>>2]=Wn,Wn=nn[en+12>>2],nn[tn+56>>2]=nn[en+8>>2],nn[tn+60>>2]=Wn,Wn=nn[en+4>>2],nn[tn+48>>2]=nn[en>>2],nn[tn+52>>2]=Wn,Wn=nn[sn+12>>2],nn[tn+40>>2]=nn[sn+8>>2],nn[tn+44>>2]=Wn,Wn=nn[sn+4>>2],nn[tn+32>>2]=nn[sn>>2],nn[tn+36>>2]=Wn,aA(Nn,tn+48|0,tn+32|0),Wn=nn[tn+268>>2],nn[sn+8>>2]=nn[tn+264>>2],nn[sn+12>>2]=Wn,Wn=nn[tn+260>>2],nn[sn>>2]=nn[tn+256>>2],nn[sn+4>>2]=Wn,Wn=nn[tn+284>>2],nn[tn+24>>2]=nn[tn+280>>2],nn[tn+28>>2]=Wn,Wn=nn[tn+276>>2],nn[tn+16>>2]=nn[tn+272>>2],nn[tn+20>>2]=Wn,Wn=nn[en+12>>2],nn[tn+8>>2]=nn[en+8>>2],nn[tn+12>>2]=Wn,Wn=nn[en+4>>2],nn[tn>>2]=nn[en>>2],nn[tn+4>>2]=Wn,aA(Nn,tn+16|0,tn),Nn=nn[tn+268>>2],nn[en+8>>2]=nn[tn+264>>2],nn[en+12>>2]=Nn,Nn=nn[tn+260>>2],nn[en>>2]=nn[tn+256>>2],nn[en+4>>2]=Nn,nn[en+12>>2]=(an[en+12|0]|an[en+13|0]<<8|an[en+14|0]<<16|an[en+15|0]<<24)^Zn,nn[en+8>>2]=(an[en+8|0]|an[en+9|0]<<8|an[en+10|0]<<16|an[en+11|0]<<24)^hn,nn[en+4>>2]=(an[en+4|0]|an[en+5|0]<<8|an[en+6|0]<<16|an[en+7|0]<<24)^Gn,nn[en>>2]=(an[0|en]|an[en+1|0]<<8|an[en+2|0]<<16|an[en+3|0]<<24)^An,nn[Wt>>2]=(an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24)^bn,nn[en+68>>2]=(an[en+68|0]|an[en+69|0]<<8|an[en+70|0]<<16|an[en+71|0]<<24)^dn,nn[en+72>>2]=(an[en+72|0]|an[en+73|0]<<8|an[en+74|0]<<16|an[en+75|0]<<24)^un,nn[en+76>>2]=(an[en+76|0]|an[en+77|0]<<8|an[en+78|0]<<16|an[en+79|0]<<24)^pn,10!=(0|(gn=gn+1|0)););mn=tn+288|0}function P(Wt,Pt,en,rn,In){var sn,on,cn,dn,un,pn,bn,Gn,hn,Zn,An,Wn,Nn,gn,yn,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0,Fn=0,Qn=0,fn=0,Hn=0,Cn=0,Xn=0,kn=0,Jn=0,Ln=0,Bn=0,xn=0,On=0,Tn=0,Un=0,Mn=0,zn=0,Sn=0,jn=0,Dn=0,_n=0,Kn=0,Pn=0,qn=0,$n=0,el=0,tl=0,nl=0,ll=0;for(sn=mn+-64|0,on=nn[Wt+60>>2],cn=nn[Wt+56>>2],Un=nn[Wt+52>>2],Tn=nn[Wt+48>>2],dn=nn[Wt+44>>2],un=nn[Wt+40>>2],pn=nn[Wt+36>>2],bn=nn[Wt+32>>2],Gn=nn[Wt+28>>2],hn=nn[Wt+24>>2],Zn=nn[Wt+20>>2],An=nn[Wt+16>>2],Wn=nn[Wt+12>>2],Nn=nn[Wt+8>>2],gn=nn[Wt+4>>2],yn=nn[Wt>>2];;){if(!In&rn>>>0>63|In)vn=en;else{if(nn[sn+56>>2]=0,nn[sn+60>>2]=0,nn[sn+48>>2]=0,nn[sn+52>>2]=0,nn[sn+40>>2]=0,nn[sn+44>>2]=0,nn[sn+32>>2]=0,nn[sn+36>>2]=0,nn[sn+24>>2]=0,nn[sn+28>>2]=0,nn[sn+16>>2]=0,nn[sn+20>>2]=0,nn[sn+8>>2]=0,nn[sn+12>>2]=0,nn[sn>>2]=0,nn[sn+4>>2]=0,En=0,rn|In)for(;tn[En+sn|0]=an[Pt+En|0],!In&(En=En+1|0)>>>0>>0|In;);Pt=vn=sn,Dn=en}for(Mn=20,Yn=yn,Hn=gn,Cn=Nn,Jn=Wn,En=An,en=Zn,Rn=hn,wn=Gn,Fn=bn,Bn=pn,Xn=un,Vn=on,xn=cn,Ln=Un,kn=Tn,Qn=dn;fn=En,Yn=gI((En=Yn+En|0)^kn,16),fn=kn=gI(fn^(Fn=Yn+Fn|0),12),kn=gI((On=En+kn|0)^Yn,8),En=gI(fn^(Fn=kn+Fn|0),7),Vn=gI((Yn=wn+Jn|0)^Vn,16),wn=gI((Qn=Vn+Qn|0)^wn,12),Jn=gI((Cn=Rn+Cn|0)^xn,16),Rn=gI((Xn=Jn+Xn|0)^Rn,12),xn=(zn=Yn+wn|0)+En|0,Sn=gI((Cn=Rn+Cn|0)^Jn,8),Yn=gI(xn^Sn,16),Jn=gI((Hn=en+Hn|0)^Ln,16),en=gI((Bn=Jn+Bn|0)^en,12),fn=En,Ln=gI((Hn=en+Hn|0)^Jn,8),fn=gI(fn^(En=(jn=Ln+Bn|0)+Yn|0),12),xn=gI(Yn^(Jn=fn+xn|0),8),En=gI((Bn=xn+En|0)^fn,7),fn=Fn,Fn=Cn,Yn=gI(Vn^zn,8),Cn=gI((Vn=Yn+Qn|0)^wn,7),Ln=gI((Fn=Fn+Cn|0)^Ln,16),Qn=gI((wn=fn+Ln|0)^Cn,12),Ln=gI(Ln^(Cn=Qn+Fn|0),8),wn=gI((Fn=wn+Ln|0)^Qn,7),Qn=Vn,Vn=Hn,Hn=gI((Xn=Xn+Sn|0)^Rn,7),Rn=Qn+(kn=gI((Vn=Vn+Hn|0)^kn,16))|0,Qn=Vn,Vn=gI(Rn^Hn,12),kn=gI(kn^(Hn=Qn+Vn|0),8),Rn=gI((Qn=Rn+kn|0)^Vn,7),fn=Xn,Vn=Yn,Yn=gI(en^jn,7),Vn=gI(Vn^(Xn=Yn+On|0),16),On=gI((en=fn+Vn|0)^Yn,12),Vn=gI(Vn^(Yn=On+Xn|0),8),en=gI((Xn=en+Vn|0)^On,7),Mn=Mn-2|0;);if(Mn=an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24,On=an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24,zn=an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24,Sn=an[Pt+16|0]|an[Pt+17|0]<<8|an[Pt+18|0]<<16|an[Pt+19|0]<<24,jn=an[Pt+20|0]|an[Pt+21|0]<<8|an[Pt+22|0]<<16|an[Pt+23|0]<<24,fn=an[Pt+24|0]|an[Pt+25|0]<<8|an[Pt+26|0]<<16|an[Pt+27|0]<<24,_n=an[Pt+28|0]|an[Pt+29|0]<<8|an[Pt+30|0]<<16|an[Pt+31|0]<<24,Kn=an[Pt+32|0]|an[Pt+33|0]<<8|an[Pt+34|0]<<16|an[Pt+35|0]<<24,Pn=an[Pt+36|0]|an[Pt+37|0]<<8|an[Pt+38|0]<<16|an[Pt+39|0]<<24,qn=an[Pt+40|0]|an[Pt+41|0]<<8|an[Pt+42|0]<<16|an[Pt+43|0]<<24,$n=an[Pt+44|0]|an[Pt+45|0]<<8|an[Pt+46|0]<<16|an[Pt+47|0]<<24,el=an[Pt+48|0]|an[Pt+49|0]<<8|an[Pt+50|0]<<16|an[Pt+51|0]<<24,tl=an[Pt+52|0]|an[Pt+53|0]<<8|an[Pt+54|0]<<16|an[Pt+55|0]<<24,nl=an[Pt+56|0]|an[Pt+57|0]<<8|an[Pt+58|0]<<16|an[Pt+59|0]<<24,ll=an[Pt+60|0]|an[Pt+61|0]<<8|an[Pt+62|0]<<16|an[Pt+63|0]<<24,Yn=Yn+yn^(an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24),tn[0|vn]=Yn,tn[vn+1|0]=Yn>>>8,tn[vn+2|0]=Yn>>>16,tn[vn+3|0]=Yn>>>24,Yn=Vn+on^ll,tn[vn+60|0]=Yn,tn[vn+61|0]=Yn>>>8,tn[vn+62|0]=Yn>>>16,tn[vn+63|0]=Yn>>>24,Yn=xn+cn^nl,tn[vn+56|0]=Yn,tn[vn+57|0]=Yn>>>8,tn[vn+58|0]=Yn>>>16,tn[vn+59|0]=Yn>>>24,Yn=Ln+Un^tl,tn[vn+52|0]=Yn,tn[vn+53|0]=Yn>>>8,tn[vn+54|0]=Yn>>>16,tn[vn+55|0]=Yn>>>24,Yn=kn+Tn^el,tn[vn+48|0]=Yn,tn[vn+49|0]=Yn>>>8,tn[vn+50|0]=Yn>>>16,tn[vn+51|0]=Yn>>>24,Yn=Qn+dn^$n,tn[vn+44|0]=Yn,tn[vn+45|0]=Yn>>>8,tn[vn+46|0]=Yn>>>16,tn[vn+47|0]=Yn>>>24,Yn=Xn+un^qn,tn[vn+40|0]=Yn,tn[vn+41|0]=Yn>>>8,tn[vn+42|0]=Yn>>>16,tn[vn+43|0]=Yn>>>24,Yn=Bn+pn^Pn,tn[vn+36|0]=Yn,tn[vn+37|0]=Yn>>>8,tn[vn+38|0]=Yn>>>16,tn[vn+39|0]=Yn>>>24,Yn=Fn+bn^Kn,tn[vn+32|0]=Yn,tn[vn+33|0]=Yn>>>8,tn[vn+34|0]=Yn>>>16,tn[vn+35|0]=Yn>>>24,wn=wn+Gn^_n,tn[vn+28|0]=wn,tn[vn+29|0]=wn>>>8,tn[vn+30|0]=wn>>>16,tn[vn+31|0]=wn>>>24,Rn=fn^Rn+hn,tn[vn+24|0]=Rn,tn[vn+25|0]=Rn>>>8,tn[vn+26|0]=Rn>>>16,tn[vn+27|0]=Rn>>>24,en=jn^en+Zn,tn[vn+20|0]=en,tn[vn+21|0]=en>>>8,tn[vn+22|0]=en>>>16,tn[vn+23|0]=en>>>24,en=Sn^En+An,tn[vn+16|0]=en,tn[vn+17|0]=en>>>8,tn[vn+18|0]=en>>>16,tn[vn+19|0]=en>>>24,en=zn^Jn+Wn,tn[vn+12|0]=en,tn[vn+13|0]=en>>>8,tn[vn+14|0]=en>>>16,tn[vn+15|0]=en>>>24,en=On^Cn+Nn,tn[vn+8|0]=en,tn[vn+9|0]=en>>>8,tn[vn+10|0]=en>>>16,tn[vn+11|0]=en>>>24,en=Mn^Hn+gn,tn[vn+4|0]=en,tn[vn+5|0]=en>>>8,tn[vn+6|0]=en>>>16,tn[vn+7|0]=en>>>24,Un=!(Tn=Tn+1|0)+Un|0,!In&rn>>>0<=64){if(!(!(rn|In)|!In&rn>>>0>63|!!(0|In)))for(En=0;tn[En+Dn|0]=an[vn+En|0],rn>>>0>(En=En+1|0)>>>0;);nn[Wt+52>>2]=Un,nn[Wt+48>>2]=Tn;break}Pt=Pt- -64|0,en=vn- -64|0,In=In-1|0,In=(rn=rn+-64|0)>>>0<4294967232?In+1|0:In}}function v(Wt,Pt){var en,an=0,rn=0,In=0,sn=0,on=0,cn=0,dn=0;mn=en=mn-704|0,an=80+((rn=nn[Wt+72>>2]>>>3&127)+Wt|0)|0,rn>>>0>=112?(TA(an,34608,128-rn|0),n(Wt,rn=Wt+80|0,en,en+640|0),VA(rn,0,112)):TA(an,34608,112-rn|0),cn=(In=nn[Wt+64>>2])<<24|(65280&In)<<8,rn=(sn=16711680&In)>>>8|0,dn=sn<<24,sn=(on=-16777216&In)>>>24|0,an=dn|on<<8|-16777216&((255&(an=nn[Wt+68>>2]))<<24|In>>>8)|16711680&((16777215&an)<<8|In>>>24)|an>>>8&65280|an>>>24,tn[Wt+192|0]=an,tn[Wt+193|0]=an>>>8,tn[Wt+194|0]=an>>>16,tn[Wt+195|0]=an>>>24,an=rn|sn|cn,rn=0,rn|=an,tn[Wt+196|0]=rn,tn[Wt+197|0]=rn>>>8,tn[Wt+198|0]=rn>>>16,tn[Wt+199|0]=rn>>>24,cn=(In=nn[Wt+72>>2])<<24|(65280&In)<<8,rn=(sn=16711680&In)>>>8|0,dn=sn<<24,sn=(on=-16777216&In)>>>24|0,an=dn|on<<8|-16777216&((255&(an=nn[Wt+76>>2]))<<24|In>>>8)|16711680&((16777215&an)<<8|In>>>24)|an>>>8&65280|an>>>24,tn[Wt+200|0]=an,tn[Wt+201|0]=an>>>8,tn[Wt+202|0]=an>>>16,tn[Wt+203|0]=an>>>24,an=rn|sn|cn,rn=0,rn|=an,tn[Wt+204|0]=rn,tn[Wt+205|0]=rn>>>8,tn[Wt+206|0]=rn>>>16,tn[Wt+207|0]=rn>>>24,n(Wt,Wt+80|0,en,en+640|0),cn=(In=nn[Wt>>2])<<24|(65280&In)<<8,rn=(sn=16711680&In)>>>8|0,dn=sn<<24,sn=(on=-16777216&In)>>>24|0,an=dn|on<<8|-16777216&((255&(an=nn[Wt+4>>2]))<<24|In>>>8)|16711680&((16777215&an)<<8|In>>>24)|an>>>8&65280|an>>>24,tn[0|Pt]=an,tn[Pt+1|0]=an>>>8,tn[Pt+2|0]=an>>>16,tn[Pt+3|0]=an>>>24,an=rn|sn|cn,rn=0,rn|=an,tn[Pt+4|0]=rn,tn[Pt+5|0]=rn>>>8,tn[Pt+6|0]=rn>>>16,tn[Pt+7|0]=rn>>>24,cn=(In=nn[Wt+8>>2])<<24|(65280&In)<<8,rn=(sn=16711680&In)>>>8|0,dn=sn<<24,sn=(on=-16777216&In)>>>24|0,an=dn|on<<8|-16777216&((255&(an=nn[Wt+12>>2]))<<24|In>>>8)|16711680&((16777215&an)<<8|In>>>24)|an>>>8&65280|an>>>24,tn[Pt+8|0]=an,tn[Pt+9|0]=an>>>8,tn[Pt+10|0]=an>>>16,tn[Pt+11|0]=an>>>24,an=rn|sn|cn,rn=0,rn|=an,tn[Pt+12|0]=rn,tn[Pt+13|0]=rn>>>8,tn[Pt+14|0]=rn>>>16,tn[Pt+15|0]=rn>>>24,cn=(In=nn[Wt+16>>2])<<24|(65280&In)<<8,rn=(sn=16711680&In)>>>8|0,dn=sn<<24,sn=(on=-16777216&In)>>>24|0,an=dn|on<<8|-16777216&((255&(an=nn[Wt+20>>2]))<<24|In>>>8)|16711680&((16777215&an)<<8|In>>>24)|an>>>8&65280|an>>>24,tn[Pt+16|0]=an,tn[Pt+17|0]=an>>>8,tn[Pt+18|0]=an>>>16,tn[Pt+19|0]=an>>>24,an=rn|sn|cn,rn=0,rn|=an,tn[Pt+20|0]=rn,tn[Pt+21|0]=rn>>>8,tn[Pt+22|0]=rn>>>16,tn[Pt+23|0]=rn>>>24,cn=(In=nn[Wt+24>>2])<<24|(65280&In)<<8,rn=(sn=16711680&In)>>>8|0,dn=sn<<24,sn=(on=-16777216&In)>>>24|0,an=dn|on<<8|-16777216&((255&(an=nn[Wt+28>>2]))<<24|In>>>8)|16711680&((16777215&an)<<8|In>>>24)|an>>>8&65280|an>>>24,tn[Pt+24|0]=an,tn[Pt+25|0]=an>>>8,tn[Pt+26|0]=an>>>16,tn[Pt+27|0]=an>>>24,an=rn|sn|cn,rn=0,rn|=an,tn[Pt+28|0]=rn,tn[Pt+29|0]=rn>>>8,tn[Pt+30|0]=rn>>>16,tn[Pt+31|0]=rn>>>24,cn=(In=nn[Wt+32>>2])<<24|(65280&In)<<8,rn=(sn=16711680&In)>>>8|0,dn=sn<<24,sn=(on=-16777216&In)>>>24|0,an=dn|on<<8|-16777216&((255&(an=nn[Wt+36>>2]))<<24|In>>>8)|16711680&((16777215&an)<<8|In>>>24)|an>>>8&65280|an>>>24,tn[Pt+32|0]=an,tn[Pt+33|0]=an>>>8,tn[Pt+34|0]=an>>>16,tn[Pt+35|0]=an>>>24,an=rn|sn|cn,rn=0,rn|=an,tn[Pt+36|0]=rn,tn[Pt+37|0]=rn>>>8,tn[Pt+38|0]=rn>>>16,tn[Pt+39|0]=rn>>>24,cn=(In=nn[Wt+40>>2])<<24|(65280&In)<<8,rn=(sn=16711680&In)>>>8|0,dn=sn<<24,sn=(on=-16777216&In)>>>24|0,an=dn|on<<8|-16777216&((255&(an=nn[Wt+44>>2]))<<24|In>>>8)|16711680&((16777215&an)<<8|In>>>24)|an>>>8&65280|an>>>24,tn[Pt+40|0]=an,tn[Pt+41|0]=an>>>8,tn[Pt+42|0]=an>>>16,tn[Pt+43|0]=an>>>24,an=rn|sn|cn,rn=0,rn|=an,tn[Pt+44|0]=rn,tn[Pt+45|0]=rn>>>8,tn[Pt+46|0]=rn>>>16,tn[Pt+47|0]=rn>>>24,cn=(In=nn[Wt+48>>2])<<24|(65280&In)<<8,rn=(sn=16711680&In)>>>8|0,dn=sn<<24,sn=(on=-16777216&In)>>>24|0,an=dn|on<<8|-16777216&((255&(an=nn[Wt+52>>2]))<<24|In>>>8)|16711680&((16777215&an)<<8|In>>>24)|an>>>8&65280|an>>>24,tn[Pt+48|0]=an,tn[Pt+49|0]=an>>>8,tn[Pt+50|0]=an>>>16,tn[Pt+51|0]=an>>>24,an=rn|sn|cn,rn=0,rn|=an,tn[Pt+52|0]=rn,tn[Pt+53|0]=rn>>>8,tn[Pt+54|0]=rn>>>16,tn[Pt+55|0]=rn>>>24,cn=(In=nn[Wt+56>>2])<<24|(65280&In)<<8,rn=(sn=16711680&In)>>>8|0,an=Pt,dn=sn<<24,sn=(on=-16777216&In)>>>24|0,Pt=dn|on<<8|-16777216&((255&(Pt=nn[Wt+60>>2]))<<24|In>>>8)|16711680&((16777215&Pt)<<8|In>>>24)|Pt>>>8&65280|Pt>>>24,tn[an+56|0]=Pt,tn[an+57|0]=Pt>>>8,tn[an+58|0]=Pt>>>16,tn[an+59|0]=Pt>>>24,Pt=rn|sn|cn,Pt|=rn=0,tn[an+60|0]=Pt,tn[an+61|0]=Pt>>>8,tn[an+62|0]=Pt>>>16,tn[an+63|0]=Pt>>>24,MI(en,704),MI(Wt,208),mn=en+704|0}function R(Wt,Pt,en){var rn,In,sn,on,cn,dn,un,pn,bn,Gn,hn,Zn,An,Wn,Nn,gn,yn,vn,Yn,En,Vn=0;mn=rn=mn-224|0,dn=an[en+16|0]|an[en+17|0]<<8|an[en+18|0]<<16|an[en+19|0]<<24,un=an[0|(Vn=en- -64|0)]|an[Vn+1|0]<<8|an[Vn+2|0]<<16|an[Vn+3|0]<<24,pn=an[en+80|0]|an[en+81|0]<<8|an[en+82|0]<<16|an[en+83|0]<<24,bn=an[en+32|0]|an[en+33|0]<<8|an[en+34|0]<<16|an[en+35|0]<<24,Gn=an[en+48|0]|an[en+49|0]<<8|an[en+50|0]<<16|an[en+51|0]<<24,In=an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24,hn=an[en+20|0]|an[en+21|0]<<8|an[en+22|0]<<16|an[en+23|0]<<24,Zn=an[en+68|0]|an[en+69|0]<<8|an[en+70|0]<<16|an[en+71|0]<<24,An=an[en+84|0]|an[en+85|0]<<8|an[en+86|0]<<16|an[en+87|0]<<24,Wn=an[en+36|0]|an[en+37|0]<<8|an[en+38|0]<<16|an[en+39|0]<<24,Nn=an[en+52|0]|an[en+53|0]<<8|an[en+54|0]<<16|an[en+55|0]<<24,sn=an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24,gn=an[en+24|0]|an[en+25|0]<<8|an[en+26|0]<<16|an[en+27|0]<<24,yn=an[en+72|0]|an[en+73|0]<<8|an[en+74|0]<<16|an[en+75|0]<<24,vn=an[en+88|0]|an[en+89|0]<<8|an[en+90|0]<<16|an[en+91|0]<<24,Yn=an[en+40|0]|an[en+41|0]<<8|an[en+42|0]<<16|an[en+43|0]<<24,En=an[en+56|0]|an[en+57|0]<<8|an[en+58|0]<<16|an[en+59|0]<<24,on=an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,Pt=(cn=an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24)^(an[en+44|0]|an[en+45|0]<<8|an[en+46|0]<<16|an[en+47|0]<<24)&(an[en+60|0]|an[en+61|0]<<8|an[en+62|0]<<16|an[en+63|0]<<24)^(an[en+28|0]|an[en+29|0]<<8|an[en+30|0]<<16|an[en+31|0]<<24)^(an[en+92|0]|an[en+93|0]<<8|an[en+94|0]<<16|an[en+95|0]<<24)^(an[en+76|0]|an[en+77|0]<<8|an[en+78|0]<<16|an[en+79|0]<<24),tn[Wt+12|0]=Pt,tn[Wt+13|0]=Pt>>>8,tn[Wt+14|0]=Pt>>>16,tn[Wt+15|0]=Pt>>>24,Pt=Yn&En^yn^vn^gn^sn,tn[Wt+8|0]=Pt,tn[Wt+9|0]=Pt>>>8,tn[Wt+10|0]=Pt>>>16,tn[Wt+11|0]=Pt>>>24,Pt=Wn&Nn^Zn^An^hn^In,tn[Wt+4|0]=Pt,tn[Wt+5|0]=Pt>>>8,tn[Wt+6|0]=Pt>>>16,tn[Wt+7|0]=Pt>>>24,Pt=bn&Gn^dn^un^pn^on,tn[0|Wt]=Pt,tn[Wt+1|0]=Pt>>>8,tn[Wt+2|0]=Pt>>>16,tn[Wt+3|0]=Pt>>>24,Wt=nn[en+92>>2],nn[rn+216>>2]=nn[en+88>>2],nn[rn+220>>2]=Wt,Wt=nn[en+84>>2],nn[rn+208>>2]=nn[en+80>>2],nn[rn+212>>2]=Wt,Wt=nn[en+76>>2],nn[rn+184>>2]=nn[en+72>>2],nn[rn+188>>2]=Wt,Wt=nn[Vn+4>>2],nn[rn+176>>2]=nn[Vn>>2],nn[rn+180>>2]=Wt,Wt=nn[en+92>>2],nn[rn+168>>2]=nn[en+88>>2],nn[rn+172>>2]=Wt,Wt=nn[en+84>>2],nn[rn+160>>2]=nn[en+80>>2],nn[rn+164>>2]=Wt,aA(Wt=rn+192|0,rn+176|0,rn+160|0),Pt=nn[rn+204>>2],nn[en+88>>2]=nn[rn+200>>2],nn[en+92>>2]=Pt,Pt=nn[rn+196>>2],nn[en+80>>2]=nn[rn+192>>2],nn[en+84>>2]=Pt,Pt=nn[en+60>>2],nn[rn+152>>2]=nn[en+56>>2],nn[rn+156>>2]=Pt,Pt=nn[en+52>>2],nn[rn+144>>2]=nn[en+48>>2],nn[rn+148>>2]=Pt,Pt=nn[en+76>>2],nn[rn+136>>2]=nn[en+72>>2],nn[rn+140>>2]=Pt,Pt=nn[Vn+4>>2],nn[rn+128>>2]=nn[Vn>>2],nn[rn+132>>2]=Pt,aA(Wt,rn+144|0,rn+128|0),Pt=nn[rn+204>>2],nn[en+72>>2]=nn[rn+200>>2],nn[en+76>>2]=Pt,Pt=nn[rn+196>>2],nn[Vn>>2]=nn[rn+192>>2],nn[Vn+4>>2]=Pt,Pt=nn[en+44>>2],nn[rn+120>>2]=nn[en+40>>2],nn[rn+124>>2]=Pt,Pt=nn[en+36>>2],nn[rn+112>>2]=nn[en+32>>2],nn[rn+116>>2]=Pt,Pt=nn[en+60>>2],nn[rn+104>>2]=nn[en+56>>2],nn[rn+108>>2]=Pt,Pt=nn[en+52>>2],nn[rn+96>>2]=nn[en+48>>2],nn[rn+100>>2]=Pt,aA(Wt,rn+112|0,rn+96|0),Pt=nn[rn+204>>2],nn[en+56>>2]=nn[rn+200>>2],nn[en+60>>2]=Pt,Pt=nn[rn+196>>2],nn[en+48>>2]=nn[rn+192>>2],nn[en+52>>2]=Pt,Pt=nn[en+28>>2],nn[rn+88>>2]=nn[en+24>>2],nn[rn+92>>2]=Pt,Pt=nn[en+20>>2],nn[rn+80>>2]=nn[en+16>>2],nn[rn+84>>2]=Pt,Pt=nn[en+44>>2],nn[rn+72>>2]=nn[en+40>>2],nn[rn+76>>2]=Pt,Pt=nn[en+36>>2],nn[rn+64>>2]=nn[en+32>>2],nn[rn+68>>2]=Pt,aA(Wt,rn+80|0,rn- -64|0),Pt=nn[rn+204>>2],nn[en+40>>2]=nn[rn+200>>2],nn[en+44>>2]=Pt,Pt=nn[rn+196>>2],nn[en+32>>2]=nn[rn+192>>2],nn[en+36>>2]=Pt,Pt=nn[en+12>>2],nn[rn+56>>2]=nn[en+8>>2],nn[rn+60>>2]=Pt,Pt=nn[en+4>>2],nn[rn+48>>2]=nn[en>>2],nn[rn+52>>2]=Pt,Pt=nn[en+28>>2],nn[rn+40>>2]=nn[en+24>>2],nn[rn+44>>2]=Pt,Pt=nn[en+20>>2],nn[rn+32>>2]=nn[en+16>>2],nn[rn+36>>2]=Pt,aA(Wt,rn+48|0,rn+32|0),Pt=nn[rn+204>>2],nn[en+24>>2]=nn[rn+200>>2],nn[en+28>>2]=Pt,Pt=nn[rn+196>>2],nn[en+16>>2]=nn[rn+192>>2],nn[en+20>>2]=Pt,Pt=nn[rn+220>>2],nn[rn+24>>2]=nn[rn+216>>2],nn[rn+28>>2]=Pt,Pt=nn[rn+212>>2],nn[rn+16>>2]=nn[rn+208>>2],nn[rn+20>>2]=Pt,Pt=nn[en+12>>2],nn[rn+8>>2]=nn[en+8>>2],nn[rn+12>>2]=Pt,Pt=nn[en+4>>2],nn[rn>>2]=nn[en>>2],nn[rn+4>>2]=Pt,aA(Wt,rn+16|0,rn),Wt=nn[rn+192>>2],Pt=nn[rn+196>>2],Vn=nn[rn+200>>2],nn[en+12>>2]=cn^nn[rn+204>>2],nn[en+8>>2]=Vn^sn,nn[en+4>>2]=Pt^In,nn[en>>2]=Wt^on,mn=rn+224|0}function L(Wt,Pt,en){var rn,In,sn,on,cn,dn,un,pn,bn,Gn,hn,Zn,An,Wn,Nn,gn=0,yn=0,vn=0,Yn=0,En=0;mn=rn=mn-224|0,vn=an[en+16|0]|an[en+17|0]<<8|an[en+18|0]<<16|an[en+19|0]<<24,yn=an[0|(gn=en- -64|0)]|an[gn+1|0]<<8|an[gn+2|0]<<16|an[gn+3|0]<<24,In=an[en+80|0]|an[en+81|0]<<8|an[en+82|0]<<16|an[en+83|0]<<24,sn=an[en+32|0]|an[en+33|0]<<8|an[en+34|0]<<16|an[en+35|0]<<24,on=an[en+48|0]|an[en+49|0]<<8|an[en+50|0]<<16|an[en+51|0]<<24,Yn=an[en+20|0]|an[en+21|0]<<8|an[en+22|0]<<16|an[en+23|0]<<24,cn=an[en+68|0]|an[en+69|0]<<8|an[en+70|0]<<16|an[en+71|0]<<24,dn=an[en+84|0]|an[en+85|0]<<8|an[en+86|0]<<16|an[en+87|0]<<24,un=an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24,pn=an[en+36|0]|an[en+37|0]<<8|an[en+38|0]<<16|an[en+39|0]<<24,bn=an[en+52|0]|an[en+53|0]<<8|an[en+54|0]<<16|an[en+55|0]<<24,En=an[en+24|0]|an[en+25|0]<<8|an[en+26|0]<<16|an[en+27|0]<<24,Gn=an[en+72|0]|an[en+73|0]<<8|an[en+74|0]<<16|an[en+75|0]<<24,hn=an[en+88|0]|an[en+89|0]<<8|an[en+90|0]<<16|an[en+91|0]<<24,Zn=an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24,An=an[en+40|0]|an[en+41|0]<<8|an[en+42|0]<<16|an[en+43|0]<<24,Wn=an[en+56|0]|an[en+57|0]<<8|an[en+58|0]<<16|an[en+59|0]<<24,Nn=an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,Pt=(an[en+44|0]|an[en+45|0]<<8|an[en+46|0]<<16|an[en+47|0]<<24)&(an[en+60|0]|an[en+61|0]<<8|an[en+62|0]<<16|an[en+63|0]<<24)^(an[en+28|0]|an[en+29|0]<<8|an[en+30|0]<<16|an[en+31|0]<<24)^(an[en+76|0]|an[en+77|0]<<8|an[en+78|0]<<16|an[en+79|0]<<24)^(an[en+92|0]|an[en+93|0]<<8|an[en+94|0]<<16|an[en+95|0]<<24)^(an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24),tn[Wt+12|0]=Pt,tn[Wt+13|0]=Pt>>>8,tn[Wt+14|0]=Pt>>>16,tn[Wt+15|0]=Pt>>>24,En=An&Wn^En^hn^Zn^Gn,tn[Wt+8|0]=En,tn[Wt+9|0]=En>>>8,tn[Wt+10|0]=En>>>16,tn[Wt+11|0]=En>>>24,Yn=pn&bn^Yn^dn^un^cn,tn[Wt+4|0]=Yn,tn[Wt+5|0]=Yn>>>8,tn[Wt+6|0]=Yn>>>16,tn[Wt+7|0]=Yn>>>24,vn=sn&on^vn^yn^In^Nn,tn[0|Wt]=vn,tn[Wt+1|0]=vn>>>8,tn[Wt+2|0]=vn>>>16,tn[Wt+3|0]=vn>>>24,Wt=nn[en+92>>2],nn[rn+216>>2]=nn[en+88>>2],nn[rn+220>>2]=Wt,Wt=nn[en+84>>2],nn[rn+208>>2]=nn[en+80>>2],nn[rn+212>>2]=Wt,Wt=nn[en+76>>2],nn[rn+184>>2]=nn[en+72>>2],nn[rn+188>>2]=Wt,Wt=nn[gn+4>>2],nn[rn+176>>2]=nn[gn>>2],nn[rn+180>>2]=Wt,Wt=nn[en+92>>2],nn[rn+168>>2]=nn[en+88>>2],nn[rn+172>>2]=Wt,Wt=nn[en+84>>2],nn[rn+160>>2]=nn[en+80>>2],nn[rn+164>>2]=Wt,aA(Wt=rn+192|0,rn+176|0,rn+160|0),yn=nn[rn+204>>2],nn[en+88>>2]=nn[rn+200>>2],nn[en+92>>2]=yn,yn=nn[rn+196>>2],nn[en+80>>2]=nn[rn+192>>2],nn[en+84>>2]=yn,yn=nn[en+60>>2],nn[rn+152>>2]=nn[en+56>>2],nn[rn+156>>2]=yn,yn=nn[en+52>>2],nn[rn+144>>2]=nn[en+48>>2],nn[rn+148>>2]=yn,yn=nn[en+76>>2],nn[rn+136>>2]=nn[en+72>>2],nn[rn+140>>2]=yn,yn=nn[gn+4>>2],nn[rn+128>>2]=nn[gn>>2],nn[rn+132>>2]=yn,aA(Wt,rn+144|0,rn+128|0),yn=nn[rn+204>>2],nn[en+72>>2]=nn[rn+200>>2],nn[en+76>>2]=yn,yn=nn[rn+196>>2],nn[gn>>2]=nn[rn+192>>2],nn[gn+4>>2]=yn,gn=nn[en+44>>2],nn[rn+120>>2]=nn[en+40>>2],nn[rn+124>>2]=gn,gn=nn[en+36>>2],nn[rn+112>>2]=nn[en+32>>2],nn[rn+116>>2]=gn,gn=nn[en+60>>2],nn[rn+104>>2]=nn[en+56>>2],nn[rn+108>>2]=gn,gn=nn[en+52>>2],nn[rn+96>>2]=nn[en+48>>2],nn[rn+100>>2]=gn,aA(Wt,rn+112|0,rn+96|0),gn=nn[rn+204>>2],nn[en+56>>2]=nn[rn+200>>2],nn[en+60>>2]=gn,gn=nn[rn+196>>2],nn[en+48>>2]=nn[rn+192>>2],nn[en+52>>2]=gn,gn=nn[en+28>>2],nn[rn+88>>2]=nn[en+24>>2],nn[rn+92>>2]=gn,gn=nn[en+20>>2],nn[rn+80>>2]=nn[en+16>>2],nn[rn+84>>2]=gn,gn=nn[en+44>>2],nn[rn+72>>2]=nn[en+40>>2],nn[rn+76>>2]=gn,gn=nn[en+36>>2],nn[rn+64>>2]=nn[en+32>>2],nn[rn+68>>2]=gn,aA(Wt,rn+80|0,rn- -64|0),gn=nn[rn+204>>2],nn[en+40>>2]=nn[rn+200>>2],nn[en+44>>2]=gn,gn=nn[rn+196>>2],nn[en+32>>2]=nn[rn+192>>2],nn[en+36>>2]=gn,gn=nn[en+12>>2],nn[rn+56>>2]=nn[en+8>>2],nn[rn+60>>2]=gn,gn=nn[en+4>>2],nn[rn+48>>2]=nn[en>>2],nn[rn+52>>2]=gn,gn=nn[en+28>>2],nn[rn+40>>2]=nn[en+24>>2],nn[rn+44>>2]=gn,gn=nn[en+20>>2],nn[rn+32>>2]=nn[en+16>>2],nn[rn+36>>2]=gn,aA(Wt,rn+48|0,rn+32|0),gn=nn[rn+204>>2],nn[en+24>>2]=nn[rn+200>>2],nn[en+28>>2]=gn,gn=nn[rn+196>>2],nn[en+16>>2]=nn[rn+192>>2],nn[en+20>>2]=gn,gn=nn[rn+220>>2],nn[rn+24>>2]=nn[rn+216>>2],nn[rn+28>>2]=gn,gn=nn[rn+212>>2],nn[rn+16>>2]=nn[rn+208>>2],nn[rn+20>>2]=gn,gn=nn[en+12>>2],nn[rn+8>>2]=nn[en+8>>2],nn[rn+12>>2]=gn,gn=nn[en+4>>2],nn[rn>>2]=nn[en>>2],nn[rn+4>>2]=gn,aA(Wt,rn+16|0,rn),Wt=nn[rn+192>>2],gn=nn[rn+196>>2],yn=nn[rn+200>>2],nn[en+12>>2]=Pt^nn[rn+204>>2],nn[en+8>>2]=yn^En,nn[en+4>>2]=gn^Yn,nn[en>>2]=Wt^vn,mn=rn+224|0}function x(Wt,Pt){var en,tn,rn,In,sn,on,cn,dn,un,pn=0,bn=0;mn=en=mn-288|0,tn=an[Wt+28|0]|an[Wt+29|0]<<8|an[Wt+30|0]<<16|an[Wt+31|0]<<24,rn=an[Wt+24|0]|an[Wt+25|0]<<8|an[Wt+26|0]<<16|an[Wt+27|0]<<24,In=an[Wt+20|0]|an[Wt+21|0]<<8|an[Wt+22|0]<<16|an[Wt+23|0]<<24,sn=an[Wt+16|0]|an[Wt+17|0]<<8|an[Wt+18|0]<<16|an[Wt+19|0]<<24,on=an[Wt+4|0]|an[Wt+5|0]<<8|an[Wt+6|0]<<16|an[Wt+7|0]<<24,cn=an[Wt+8|0]|an[Wt+9|0]<<8|an[Wt+10|0]<<16|an[Wt+11|0]<<24,dn=an[Wt+12|0]|an[Wt+13|0]<<8|an[Wt+14|0]<<16|an[Wt+15|0]<<24,un=an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24,Wt=nn[Pt+124>>2],nn[en+280>>2]=nn[Pt+120>>2],nn[en+284>>2]=Wt,Wt=nn[Pt+116>>2],nn[en+272>>2]=nn[Pt+112>>2],nn[en+276>>2]=Wt,Wt=nn[Pt+108>>2],nn[en+248>>2]=nn[Pt+104>>2],nn[en+252>>2]=Wt,Wt=nn[Pt+100>>2],nn[en+240>>2]=nn[Pt+96>>2],nn[en+244>>2]=Wt,Wt=nn[Pt+124>>2],nn[en+232>>2]=nn[Pt+120>>2],nn[en+236>>2]=Wt,Wt=nn[Pt+116>>2],nn[en+224>>2]=nn[Pt+112>>2],nn[en+228>>2]=Wt,aA(bn=en+256|0,en+240|0,en+224|0),Wt=nn[en+268>>2],nn[Pt+120>>2]=nn[en+264>>2],nn[Pt+124>>2]=Wt,Wt=nn[en+260>>2],nn[Pt+112>>2]=nn[en+256>>2],nn[Pt+116>>2]=Wt,Wt=nn[Pt+92>>2],nn[en+216>>2]=nn[Pt+88>>2],nn[en+220>>2]=Wt,Wt=nn[Pt+84>>2],nn[en+208>>2]=nn[Pt+80>>2],nn[en+212>>2]=Wt,Wt=nn[Pt+108>>2],nn[en+200>>2]=nn[Pt+104>>2],nn[en+204>>2]=Wt,Wt=nn[Pt+100>>2],nn[en+192>>2]=nn[Pt+96>>2],nn[en+196>>2]=Wt,aA(bn,en+208|0,en+192|0),Wt=nn[en+268>>2],nn[Pt+104>>2]=nn[en+264>>2],nn[Pt+108>>2]=Wt,Wt=nn[en+260>>2],nn[Pt+96>>2]=nn[en+256>>2],nn[Pt+100>>2]=Wt,Wt=nn[Pt+76>>2],nn[en+184>>2]=nn[Pt+72>>2],nn[en+188>>2]=Wt,pn=nn[4+(Wt=Pt- -64|0)>>2],nn[en+176>>2]=nn[Wt>>2],nn[en+180>>2]=pn,pn=nn[Pt+92>>2],nn[en+168>>2]=nn[Pt+88>>2],nn[en+172>>2]=pn,pn=nn[Pt+84>>2],nn[en+160>>2]=nn[Pt+80>>2],nn[en+164>>2]=pn,aA(bn,en+176|0,en+160|0),pn=nn[en+268>>2],nn[Pt+88>>2]=nn[en+264>>2],nn[Pt+92>>2]=pn,pn=nn[en+260>>2],nn[Pt+80>>2]=nn[en+256>>2],nn[Pt+84>>2]=pn,pn=nn[Pt+60>>2],nn[en+152>>2]=nn[Pt+56>>2],nn[en+156>>2]=pn,pn=nn[Pt+52>>2],nn[en+144>>2]=nn[Pt+48>>2],nn[en+148>>2]=pn,pn=nn[Pt+76>>2],nn[en+136>>2]=nn[Pt+72>>2],nn[en+140>>2]=pn,pn=nn[Wt+4>>2],nn[en+128>>2]=nn[Wt>>2],nn[en+132>>2]=pn,aA(bn,en+144|0,en+128|0),pn=nn[en+268>>2],nn[Pt+72>>2]=nn[en+264>>2],nn[Pt+76>>2]=pn,pn=nn[en+260>>2],nn[Wt>>2]=nn[en+256>>2],nn[Wt+4>>2]=pn,pn=nn[Pt+44>>2],nn[en+120>>2]=nn[Pt+40>>2],nn[en+124>>2]=pn,pn=nn[Pt+36>>2],nn[en+112>>2]=nn[Pt+32>>2],nn[en+116>>2]=pn,pn=nn[Pt+60>>2],nn[en+104>>2]=nn[Pt+56>>2],nn[en+108>>2]=pn,pn=nn[Pt+52>>2],nn[en+96>>2]=nn[Pt+48>>2],nn[en+100>>2]=pn,aA(bn,en+112|0,en+96|0),pn=nn[en+268>>2],nn[Pt+56>>2]=nn[en+264>>2],nn[Pt+60>>2]=pn,pn=nn[en+260>>2],nn[Pt+48>>2]=nn[en+256>>2],nn[Pt+52>>2]=pn,pn=nn[Pt+28>>2],nn[en+88>>2]=nn[Pt+24>>2],nn[en+92>>2]=pn,pn=nn[Pt+20>>2],nn[en+80>>2]=nn[Pt+16>>2],nn[en+84>>2]=pn,pn=nn[Pt+44>>2],nn[en+72>>2]=nn[Pt+40>>2],nn[en+76>>2]=pn,pn=nn[Pt+36>>2],nn[en+64>>2]=nn[Pt+32>>2],nn[en+68>>2]=pn,aA(bn,en+80|0,en- -64|0),pn=nn[en+268>>2],nn[Pt+40>>2]=nn[en+264>>2],nn[Pt+44>>2]=pn,pn=nn[en+260>>2],nn[Pt+32>>2]=nn[en+256>>2],nn[Pt+36>>2]=pn,pn=nn[Pt+12>>2],nn[en+56>>2]=nn[Pt+8>>2],nn[en+60>>2]=pn,pn=nn[Pt+4>>2],nn[en+48>>2]=nn[Pt>>2],nn[en+52>>2]=pn,pn=nn[Pt+28>>2],nn[en+40>>2]=nn[Pt+24>>2],nn[en+44>>2]=pn,pn=nn[Pt+20>>2],nn[en+32>>2]=nn[Pt+16>>2],nn[en+36>>2]=pn,aA(bn,en+48|0,en+32|0),pn=nn[en+268>>2],nn[Pt+24>>2]=nn[en+264>>2],nn[Pt+28>>2]=pn,pn=nn[en+260>>2],nn[Pt+16>>2]=nn[en+256>>2],nn[Pt+20>>2]=pn,pn=nn[en+284>>2],nn[en+24>>2]=nn[en+280>>2],nn[en+28>>2]=pn,pn=nn[en+276>>2],nn[en+16>>2]=nn[en+272>>2],nn[en+20>>2]=pn,pn=nn[Pt+12>>2],nn[en+8>>2]=nn[Pt+8>>2],nn[en+12>>2]=pn,pn=nn[Pt+4>>2],nn[en>>2]=nn[Pt>>2],nn[en+4>>2]=pn,aA(bn,en+16|0,en),bn=nn[en+268>>2],nn[Pt+8>>2]=nn[en+264>>2],nn[Pt+12>>2]=bn,bn=nn[en+260>>2],nn[Pt>>2]=nn[en+256>>2],nn[Pt+4>>2]=bn,nn[Pt+12>>2]=(an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24)^dn,nn[Pt+8>>2]=(an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24)^cn,nn[Pt+4>>2]=(an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24)^on,nn[Pt>>2]=(an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24)^un,nn[Wt>>2]=(an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24)^sn,nn[Pt+68>>2]=(an[Pt+68|0]|an[Pt+69|0]<<8|an[Pt+70|0]<<16|an[Pt+71|0]<<24)^In,nn[Pt+72>>2]=(an[Pt+72|0]|an[Pt+73|0]<<8|an[Pt+74|0]<<16|an[Pt+75|0]<<24)^rn,nn[Pt+76>>2]=(an[Pt+76|0]|an[Pt+77|0]<<8|an[Pt+78|0]<<16|an[Pt+79|0]<<24)^tn,mn=en+288|0}function u(Wt,Pt,en,tn){var rn,In,sn,on,cn,dn,un,pn,bn,Gn,hn,Zn,An,Wn,Nn,gn,yn=0,vn=0,Yn=0,En=0;mn=rn=mn-240|0,nn[rn+200>>2]=0,nn[rn+204>>2]=0,nn[rn+192>>2]=0,nn[rn+196>>2]=0,TA(vn=rn+192|0,Pt,en),Yn=an[tn+16|0]|an[tn+17|0]<<8|an[tn+18|0]<<16|an[tn+19|0]<<24,En=an[0|(Pt=tn- -64|0)]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,yn=an[tn+80|0]|an[tn+81|0]<<8|an[tn+82|0]<<16|an[tn+83|0]<<24,In=an[tn+32|0]|an[tn+33|0]<<8|an[tn+34|0]<<16|an[tn+35|0]<<24,sn=an[tn+48|0]|an[tn+49|0]<<8|an[tn+50|0]<<16|an[tn+51|0]<<24,on=an[tn+20|0]|an[tn+21|0]<<8|an[tn+22|0]<<16|an[tn+23|0]<<24,cn=an[tn+68|0]|an[tn+69|0]<<8|an[tn+70|0]<<16|an[tn+71|0]<<24,dn=an[tn+84|0]|an[tn+85|0]<<8|an[tn+86|0]<<16|an[tn+87|0]<<24,un=an[tn+36|0]|an[tn+37|0]<<8|an[tn+38|0]<<16|an[tn+39|0]<<24,pn=an[tn+52|0]|an[tn+53|0]<<8|an[tn+54|0]<<16|an[tn+55|0]<<24,bn=an[tn+24|0]|an[tn+25|0]<<8|an[tn+26|0]<<16|an[tn+27|0]<<24,Gn=an[tn+72|0]|an[tn+73|0]<<8|an[tn+74|0]<<16|an[tn+75|0]<<24,hn=an[tn+88|0]|an[tn+89|0]<<8|an[tn+90|0]<<16|an[tn+91|0]<<24,Zn=an[tn+40|0]|an[tn+41|0]<<8|an[tn+42|0]<<16|an[tn+43|0]<<24,An=an[tn+56|0]|an[tn+57|0]<<8|an[tn+58|0]<<16|an[tn+59|0]<<24,Wn=nn[rn+192>>2],Nn=nn[rn+196>>2],gn=nn[rn+200>>2],nn[rn+204>>2]=(an[tn+44|0]|an[tn+45|0]<<8|an[tn+46|0]<<16|an[tn+47|0]<<24)&(an[tn+60|0]|an[tn+61|0]<<8|an[tn+62|0]<<16|an[tn+63|0]<<24)^(an[tn+28|0]|an[tn+29|0]<<8|an[tn+30|0]<<16|an[tn+31|0]<<24)^(an[tn+76|0]|an[tn+77|0]<<8|an[tn+78|0]<<16|an[tn+79|0]<<24)^nn[rn+204>>2]^(an[tn+92|0]|an[tn+93|0]<<8|an[tn+94|0]<<16|an[tn+95|0]<<24),nn[rn+200>>2]=Zn&An^hn^gn^Gn^bn,nn[rn+196>>2]=un&pn^dn^Nn^cn^on,nn[rn+192>>2]=In&sn^Yn^En^yn^Wn,VA(en+vn|0,0,16-en|0),TA(Wt,vn,en),en=nn[rn+192>>2],vn=nn[rn+196>>2],Yn=nn[rn+200>>2],En=nn[rn+204>>2],Wt=nn[tn+92>>2],nn[rn+232>>2]=nn[tn+88>>2],nn[rn+236>>2]=Wt,Wt=nn[tn+84>>2],nn[rn+224>>2]=nn[tn+80>>2],nn[rn+228>>2]=Wt,Wt=nn[tn+76>>2],nn[rn+184>>2]=nn[tn+72>>2],nn[rn+188>>2]=Wt,Wt=nn[Pt+4>>2],nn[rn+176>>2]=nn[Pt>>2],nn[rn+180>>2]=Wt,Wt=nn[tn+92>>2],nn[rn+168>>2]=nn[tn+88>>2],nn[rn+172>>2]=Wt,Wt=nn[tn+84>>2],nn[rn+160>>2]=nn[tn+80>>2],nn[rn+164>>2]=Wt,aA(Wt=rn+208|0,rn+176|0,rn+160|0),yn=nn[rn+220>>2],nn[tn+88>>2]=nn[rn+216>>2],nn[tn+92>>2]=yn,yn=nn[rn+212>>2],nn[tn+80>>2]=nn[rn+208>>2],nn[tn+84>>2]=yn,yn=nn[tn+60>>2],nn[rn+152>>2]=nn[tn+56>>2],nn[rn+156>>2]=yn,yn=nn[tn+52>>2],nn[rn+144>>2]=nn[tn+48>>2],nn[rn+148>>2]=yn,yn=nn[tn+76>>2],nn[rn+136>>2]=nn[tn+72>>2],nn[rn+140>>2]=yn,yn=nn[Pt+4>>2],nn[rn+128>>2]=nn[Pt>>2],nn[rn+132>>2]=yn,aA(Wt,rn+144|0,rn+128|0),yn=nn[rn+220>>2],nn[tn+72>>2]=nn[rn+216>>2],nn[tn+76>>2]=yn,yn=nn[rn+212>>2],nn[Pt>>2]=nn[rn+208>>2],nn[Pt+4>>2]=yn,Pt=nn[tn+44>>2],nn[rn+120>>2]=nn[tn+40>>2],nn[rn+124>>2]=Pt,Pt=nn[tn+36>>2],nn[rn+112>>2]=nn[tn+32>>2],nn[rn+116>>2]=Pt,Pt=nn[tn+60>>2],nn[rn+104>>2]=nn[tn+56>>2],nn[rn+108>>2]=Pt,Pt=nn[tn+52>>2],nn[rn+96>>2]=nn[tn+48>>2],nn[rn+100>>2]=Pt,aA(Wt,rn+112|0,rn+96|0),Pt=nn[rn+220>>2],nn[tn+56>>2]=nn[rn+216>>2],nn[tn+60>>2]=Pt,Pt=nn[rn+212>>2],nn[tn+48>>2]=nn[rn+208>>2],nn[tn+52>>2]=Pt,Pt=nn[tn+28>>2],nn[rn+88>>2]=nn[tn+24>>2],nn[rn+92>>2]=Pt,Pt=nn[tn+20>>2],nn[rn+80>>2]=nn[tn+16>>2],nn[rn+84>>2]=Pt,Pt=nn[tn+44>>2],nn[rn+72>>2]=nn[tn+40>>2],nn[rn+76>>2]=Pt,Pt=nn[tn+36>>2],nn[rn+64>>2]=nn[tn+32>>2],nn[rn+68>>2]=Pt,aA(Wt,rn+80|0,rn- -64|0),Pt=nn[rn+220>>2],nn[tn+40>>2]=nn[rn+216>>2],nn[tn+44>>2]=Pt,Pt=nn[rn+212>>2],nn[tn+32>>2]=nn[rn+208>>2],nn[tn+36>>2]=Pt,Pt=nn[tn+12>>2],nn[rn+56>>2]=nn[tn+8>>2],nn[rn+60>>2]=Pt,Pt=nn[tn+4>>2],nn[rn+48>>2]=nn[tn>>2],nn[rn+52>>2]=Pt,Pt=nn[tn+28>>2],nn[rn+40>>2]=nn[tn+24>>2],nn[rn+44>>2]=Pt,Pt=nn[tn+20>>2],nn[rn+32>>2]=nn[tn+16>>2],nn[rn+36>>2]=Pt,aA(Wt,rn+48|0,rn+32|0),Pt=nn[rn+220>>2],nn[tn+24>>2]=nn[rn+216>>2],nn[tn+28>>2]=Pt,Pt=nn[rn+212>>2],nn[tn+16>>2]=nn[rn+208>>2],nn[tn+20>>2]=Pt,Pt=nn[rn+236>>2],nn[rn+24>>2]=nn[rn+232>>2],nn[rn+28>>2]=Pt,Pt=nn[rn+228>>2],nn[rn+16>>2]=nn[rn+224>>2],nn[rn+20>>2]=Pt,Pt=nn[tn+12>>2],nn[rn+8>>2]=nn[tn+8>>2],nn[rn+12>>2]=Pt,Pt=nn[tn+4>>2],nn[rn>>2]=nn[tn>>2],nn[rn+4>>2]=Pt,aA(Wt,rn+16|0,rn),Wt=nn[rn+208>>2],Pt=nn[rn+212>>2],yn=nn[rn+216>>2],nn[tn+12>>2]=En^nn[rn+220>>2],nn[tn+8>>2]=yn^Yn,nn[tn+4>>2]=Pt^vn,nn[tn>>2]=Wt^en,mn=rn+240|0}function m(Wt,Pt,en){var rn,In=0,sn=0,on=0,cn=0,un=0;mn=rn=mn+-64|0;e:{if((en-65&255)>>>0>191){if(sn=-1,!(an[Wt+80|0]|an[Wt+81|0]<<8|an[Wt+82|0]<<16|an[Wt+83|0]<<24|an[Wt+84|0]|an[Wt+85|0]<<8|an[Wt+86|0]<<16|an[Wt+87|0]<<24)){if((on=an[Wt+352|0]|an[Wt+353|0]<<8|an[Wt+354|0]<<16|an[Wt+355|0]<<24)>>>0>=129){if(cn=In=an[Wt+68|0]|an[Wt+69|0]<<8|an[Wt+70|0]<<16|an[Wt+71|0]<<24,In=(on=128+(sn=an[Wt+64|0]|an[Wt+65|0]<<8|an[Wt+66|0]<<16|an[Wt+67|0]<<24)|0)>>>0<128?In+1|0:In,tn[Wt+64|0]=on,tn[Wt+65|0]=on>>>8,tn[Wt+66|0]=on>>>16,tn[Wt+67|0]=on>>>24,tn[Wt+68|0]=In,tn[Wt+69|0]=In>>>8,tn[Wt+70|0]=In>>>16,tn[Wt+71|0]=In>>>24,In=an[Wt+76|0]|an[Wt+77|0]<<8|an[Wt+78|0]<<16|an[Wt+79|0]<<24,In=(un=sn=-1==(0|cn)&sn>>>0>4294967167)>>>0>(sn=sn+(an[Wt+72|0]|an[Wt+73|0]<<8|an[Wt+74|0]<<16|an[Wt+75|0]<<24)|0)>>>0?In+1|0:In,tn[Wt+72|0]=sn,tn[Wt+73|0]=sn>>>8,tn[Wt+74|0]=sn>>>16,tn[Wt+75|0]=sn>>>24,tn[Wt+76|0]=In,tn[Wt+77|0]=In>>>8,tn[Wt+78|0]=In>>>16,tn[Wt+79|0]=In>>>24,h(Wt,In=Wt+96|0),sn=(an[Wt+352|0]|an[Wt+353|0]<<8|an[Wt+354|0]<<16|an[Wt+355|0]<<24)-128|0,tn[Wt+352|0]=sn,tn[Wt+353|0]=sn>>>8,tn[Wt+354|0]=sn>>>16,tn[Wt+355|0]=sn>>>24,sn>>>0>=129)break e;TA(In,Wt+224|0,sn),on=an[Wt+352|0]|an[Wt+353|0]<<8|an[Wt+354|0]<<16|an[Wt+355|0]<<24}sn=un=an[Wt+68|0]|an[Wt+69|0]<<8|an[Wt+70|0]<<16|an[Wt+71|0]<<24,sn=(cn=on+(In=an[Wt+64|0]|an[Wt+65|0]<<8|an[Wt+66|0]<<16|an[Wt+67|0]<<24)|0)>>>0>>0?sn+1|0:sn,tn[Wt+64|0]=cn,tn[Wt+65|0]=cn>>>8,tn[Wt+66|0]=cn>>>16,tn[Wt+67|0]=cn>>>24,tn[Wt+68|0]=sn,tn[Wt+69|0]=sn>>>8,tn[Wt+70|0]=sn>>>16,tn[Wt+71|0]=sn>>>24,sn=(0|sn)==(0|un)&In>>>0>cn>>>0|sn>>>0>>0,In=an[Wt+76|0]|an[Wt+77|0]<<8|an[Wt+78|0]<<16|an[Wt+79|0]<<24,In=(un=sn)>>>0>(sn=sn+(an[Wt+72|0]|an[Wt+73|0]<<8|an[Wt+74|0]<<16|an[Wt+75|0]<<24)|0)>>>0?In+1|0:In,tn[Wt+72|0]=sn,tn[Wt+73|0]=sn>>>8,tn[Wt+74|0]=sn>>>16,tn[Wt+75|0]=sn>>>24,tn[Wt+76|0]=In,tn[Wt+77|0]=In>>>8,tn[Wt+78|0]=In>>>16,tn[Wt+79|0]=In>>>24,an[Wt+356|0]&&(tn[Wt+88|0]=255,tn[Wt+89|0]=255,tn[Wt+90|0]=255,tn[Wt+91|0]=255,tn[Wt+92|0]=255,tn[Wt+93|0]=255,tn[Wt+94|0]=255,tn[Wt+95|0]=255),tn[Wt+80|0]=255,tn[Wt+81|0]=255,tn[Wt+82|0]=255,tn[Wt+83|0]=255,tn[Wt+84|0]=255,tn[Wt+85|0]=255,tn[Wt+86|0]=255,tn[Wt+87|0]=255,VA((sn=Wt+96|0)+on|0,0,256-on|0),h(Wt,sn),In=an[Wt+4|0]|an[Wt+5|0]<<8|an[Wt+6|0]<<16|an[Wt+7|0]<<24,nn[rn>>2]=an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24,nn[rn+4>>2]=In,In=an[Wt+12|0]|an[Wt+13|0]<<8|an[Wt+14|0]<<16|an[Wt+15|0]<<24,nn[rn+8>>2]=an[Wt+8|0]|an[Wt+9|0]<<8|an[Wt+10|0]<<16|an[Wt+11|0]<<24,nn[rn+12>>2]=In,In=an[Wt+20|0]|an[Wt+21|0]<<8|an[Wt+22|0]<<16|an[Wt+23|0]<<24,nn[rn+16>>2]=an[Wt+16|0]|an[Wt+17|0]<<8|an[Wt+18|0]<<16|an[Wt+19|0]<<24,nn[rn+20>>2]=In,In=an[Wt+28|0]|an[Wt+29|0]<<8|an[Wt+30|0]<<16|an[Wt+31|0]<<24,nn[rn+24>>2]=an[Wt+24|0]|an[Wt+25|0]<<8|an[Wt+26|0]<<16|an[Wt+27|0]<<24,nn[rn+28>>2]=In,In=an[Wt+36|0]|an[Wt+37|0]<<8|an[Wt+38|0]<<16|an[Wt+39|0]<<24,nn[rn+32>>2]=an[Wt+32|0]|an[Wt+33|0]<<8|an[Wt+34|0]<<16|an[Wt+35|0]<<24,nn[rn+36>>2]=In,In=an[Wt+44|0]|an[Wt+45|0]<<8|an[Wt+46|0]<<16|an[Wt+47|0]<<24,nn[rn+40>>2]=an[Wt+40|0]|an[Wt+41|0]<<8|an[Wt+42|0]<<16|an[Wt+43|0]<<24,nn[rn+44>>2]=In,In=an[Wt+52|0]|an[Wt+53|0]<<8|an[Wt+54|0]<<16|an[Wt+55|0]<<24,nn[rn+48>>2]=an[Wt+48|0]|an[Wt+49|0]<<8|an[Wt+50|0]<<16|an[Wt+51|0]<<24,nn[rn+52>>2]=In,In=an[Wt+60|0]|an[Wt+61|0]<<8|an[Wt+62|0]<<16|an[Wt+63|0]<<24,nn[rn+56>>2]=an[Wt+56|0]|an[Wt+57|0]<<8|an[Wt+58|0]<<16|an[Wt+59|0]<<24,nn[rn+60>>2]=In,TA(Pt,rn,en),MI(Wt,64),MI(sn,256),sn=0}return mn=rn- -64|0,sn}iI(),Q()}dn(1268,1130,306,1074),Q()}function q(Wt,Pt){var en,rn,In,sn,on,cn,dn,un,pn,bn,Gn,hn,Zn,An,Wn,Nn,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0;for(mn=en=mn-320|0,V(rn=Wt+40|0,Pt),nn[Wt+84>>2]=0,nn[Wt+88>>2]=0,nn[Wt+80>>2]=1,nn[Wt+92>>2]=0,nn[Wt+96>>2]=0,nn[Wt+100>>2]=0,nn[Wt+104>>2]=0,nn[Wt+108>>2]=0,nn[Wt+112>>2]=0,nn[Wt+116>>2]=0,U(Vn=en+240|0,rn),M(Yn=en+192|0,Vn,1328),Rn=-1,In=nn[en+240>>2]-1|0,nn[en+240>>2]=In,nn[en+192>>2]=nn[en+192>>2]+1,sn=nn[en+244>>2],on=nn[en+248>>2],cn=nn[en+252>>2],dn=nn[en+256>>2],un=nn[en+260>>2],pn=nn[en+264>>2],bn=nn[en+268>>2],Gn=nn[en+272>>2],hn=nn[en+276>>2],U(En=en+144|0,Yn),M(En,En,Yn),U(Wt,En),M(Wt,Wt,Yn),M(Wt,Wt,Vn),mn=yn=mn-144|0,U(vn=yn+96|0,Wt),U(gn=yn+48|0,vn),U(gn,gn),M(gn,Wt,gn),M(vn,vn,gn),U(vn,vn),M(vn,gn,vn),U(gn,vn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),M(vn,gn,vn),U(gn,vn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),M(gn,gn,vn),U(yn,gn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),U(yn,yn),M(gn,yn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),M(vn,gn,vn),U(gn,vn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),M(gn,gn,vn),U(yn,gn),gn=1;U(yn,yn),100!=(0|(gn=gn+1|0)););M(gn=yn+48|0,yn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),U(gn,gn),M(vn=yn+96|0,gn,vn),U(vn,vn),U(vn,vn),M(Wt,vn,Wt),mn=yn+144|0,M(Wt,Wt,En),M(Wt,Wt,Vn),U(gn=en+96|0,Wt),M(gn,gn,Yn),gn=nn[en+132>>2],nn[en+84>>2]=gn-hn,yn=nn[en+128>>2],nn[en+80>>2]=yn-Gn,vn=nn[en+124>>2],nn[en+76>>2]=vn-bn,Yn=nn[en+120>>2],nn[en+72>>2]=Yn-pn,En=nn[en+116>>2],nn[en+68>>2]=En-un,Vn=nn[en+112>>2],nn[en+64>>2]=Vn-dn,Zn=nn[en+108>>2],nn[en+60>>2]=Zn-cn,An=nn[en+104>>2],nn[en+56>>2]=An-on,Wn=nn[en+100>>2],nn[en+52>>2]=Wn-sn,Nn=nn[en+96>>2],nn[en+48>>2]=Nn-In,eA(en,en+48|0);e:{if(!SA(en,32)){if(nn[en+36>>2]=gn+hn,nn[en+32>>2]=yn+Gn,nn[en+28>>2]=vn+bn,nn[en+24>>2]=Yn+pn,nn[en+20>>2]=En+un,nn[en+16>>2]=Vn+dn,nn[en+12>>2]=cn+Zn,nn[en+8>>2]=on+An,nn[en+4>>2]=sn+Wn,nn[en>>2]=In+Nn,eA(gn=en+288|0,en),!SA(gn,32))break e;M(Wt,Wt,1376)}eA(en+288|0,Wt),(1&tn[en+288|0])==(an[Pt+31|0]>>>7|0)&&(nn[Wt>>2]=0-nn[Wt>>2],nn[Wt+36>>2]=0-nn[Wt+36>>2],nn[Wt+32>>2]=0-nn[Wt+32>>2],nn[Wt+28>>2]=0-nn[Wt+28>>2],nn[Wt+24>>2]=0-nn[Wt+24>>2],nn[Wt+20>>2]=0-nn[Wt+20>>2],nn[Wt+16>>2]=0-nn[Wt+16>>2],nn[Wt+12>>2]=0-nn[Wt+12>>2],nn[Wt+8>>2]=0-nn[Wt+8>>2],nn[Wt+4>>2]=0-nn[Wt+4>>2]),M(Wt+120|0,Wt,rn),Rn=0}return mn=en+320|0,Rn}function l(Wt,Pt,en){var nn,rn,In,sn,on,cn,dn,un,pn,mn,bn,Gn,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0,Fn=0,Qn=0,fn=0,Hn=0,Cn=0,Xn=0,kn=0;for(Nn=1634760805,Zn=nn=an[0|en]|an[en+1|0]<<8|an[en+2|0]<<16|an[en+3|0]<<24,gn=rn=an[en+4|0]|an[en+5|0]<<8|an[en+6|0]<<16|an[en+7|0]<<24,yn=In=an[en+8|0]|an[en+9|0]<<8|an[en+10|0]<<16|an[en+11|0]<<24,vn=sn=an[en+12|0]|an[en+13|0]<<8|an[en+14|0]<<16|an[en+15|0]<<24,Rn=857760878,Yn=on=an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,An=cn=an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24,Vn=dn=an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24,Fn=un=an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24,Pt=2036477234,Wn=pn=an[en+16|0]|an[en+17|0]<<8|an[en+18|0]<<16|an[en+19|0]<<24,hn=1797285236,Qn=mn=an[en+28|0]|an[en+29|0]<<8|an[en+30|0]<<16|an[en+31|0]<<24,wn=bn=an[en+24|0]|an[en+25|0]<<8|an[en+26|0]<<16|an[en+27|0]<<24,en=Gn=an[en+20|0]|an[en+21|0]<<8|an[en+22|0]<<16|an[en+23|0]<<24;En=gI(Zn+Rn|0,7)^Fn,fn=gI(En+Rn|0,9)^wn,vn=gI(en+Nn|0,7)^vn,Hn=gI(vn+Nn|0,9)^Vn,Xn=gI(Hn+vn|0,13)^en,yn=gI(hn+Wn|0,7)^yn,Cn=gI(yn+hn|0,9)^An,Vn=gI(yn+Cn|0,13)^Wn,Wn=gI(Cn+Vn|0,18)^hn,An=gI(Pt+Yn|0,7)^Qn,en=Xn^gI(Wn+An|0,7),wn=fn^gI(en+Wn|0,9),Qn=gI(en+wn|0,13)^An,hn=gI(wn+Qn|0,18)^Wn,gn=gI(Pt+An|0,9)^gn,Yn=gI(gn+An|0,13)^Yn,Pt=gI(Yn+gn|0,18)^Pt,Wn=gI(Pt+En|0,7)^Vn,Vn=gI(Wn+Pt|0,9)^Hn,Fn=gI(Wn+Vn|0,13)^En,Pt=gI(Vn+Fn|0,18)^Pt,En=gI(En+fn|0,13)^Zn,Zn=gI(En+fn|0,18)^Rn,Yn=gI(Zn+vn|0,7)^Yn,An=gI(Yn+Zn|0,9)^Cn,vn=gI(An+Yn|0,13)^vn,Rn=gI(An+vn|0,18)^Zn,Nn=gI(Hn+Xn|0,18)^Nn,Zn=gI(Nn+yn|0,7)^En,gn=gI(Zn+Nn|0,9)^gn,yn=gI(Zn+gn|0,13)^yn,Nn=gI(gn+yn|0,18)^Nn,En=kn>>>0<18,kn=kn+2|0,En;);hn=hn+1797285236|0,tn[Wt+60|0]=hn,tn[Wt+61|0]=hn>>>8,tn[Wt+62|0]=hn>>>16,tn[Wt+63|0]=hn>>>24,hn=Qn+mn|0,tn[Wt+56|0]=hn,tn[Wt+57|0]=hn>>>8,tn[Wt+58|0]=hn>>>16,tn[Wt+59|0]=hn>>>24,hn=wn+bn|0,tn[Wt+52|0]=hn,tn[Wt+53|0]=hn>>>8,tn[Wt+54|0]=hn>>>16,tn[Wt+55|0]=hn>>>24,en=en+Gn|0,tn[Wt+48|0]=en,tn[Wt+49|0]=en>>>8,tn[Wt+50|0]=en>>>16,tn[Wt+51|0]=en>>>24,en=Wn+pn|0,tn[Wt+44|0]=en,tn[Wt+45|0]=en>>>8,tn[Wt+46|0]=en>>>16,tn[Wt+47|0]=en>>>24,Pt=Pt+2036477234|0,tn[Wt+40|0]=Pt,tn[Wt+41|0]=Pt>>>8,tn[Wt+42|0]=Pt>>>16,tn[Wt+43|0]=Pt>>>24,Pt=Fn+un|0,tn[Wt+36|0]=Pt,tn[Wt+37|0]=Pt>>>8,tn[Wt+38|0]=Pt>>>16,tn[Wt+39|0]=Pt>>>24,Pt=Vn+dn|0,tn[Wt+32|0]=Pt,tn[Wt+33|0]=Pt>>>8,tn[Wt+34|0]=Pt>>>16,tn[Wt+35|0]=Pt>>>24,Pt=An+cn|0,tn[Wt+28|0]=Pt,tn[Wt+29|0]=Pt>>>8,tn[Wt+30|0]=Pt>>>16,tn[Wt+31|0]=Pt>>>24,Pt=Yn+on|0,tn[Wt+24|0]=Pt,tn[Wt+25|0]=Pt>>>8,tn[Wt+26|0]=Pt>>>16,tn[Wt+27|0]=Pt>>>24,Pt=Rn+857760878|0,tn[Wt+20|0]=Pt,tn[Wt+21|0]=Pt>>>8,tn[Wt+22|0]=Pt>>>16,tn[Wt+23|0]=Pt>>>24,Pt=vn+sn|0,tn[Wt+16|0]=Pt,tn[Wt+17|0]=Pt>>>8,tn[Wt+18|0]=Pt>>>16,tn[Wt+19|0]=Pt>>>24,Pt=yn+In|0,tn[Wt+12|0]=Pt,tn[Wt+13|0]=Pt>>>8,tn[Wt+14|0]=Pt>>>16,tn[Wt+15|0]=Pt>>>24,Pt=gn+rn|0,tn[Wt+8|0]=Pt,tn[Wt+9|0]=Pt>>>8,tn[Wt+10|0]=Pt>>>16,tn[Wt+11|0]=Pt>>>24,Pt=Zn+nn|0,tn[Wt+4|0]=Pt,tn[Wt+5|0]=Pt>>>8,tn[Wt+6|0]=Pt>>>16,tn[Wt+7|0]=Pt>>>24,Pt=Nn+1634760805|0,tn[0|Wt]=Pt,tn[Wt+1|0]=Pt>>>8,tn[Wt+2|0]=Pt>>>16,tn[Wt+3|0]=Pt>>>24}function z(Wt,Pt,en,tn){var rn=0,sn=0,on=0,cn=0,dn=0,un=0,pn=0,mn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0,Fn=0,Qn=0,fn=0;if(Zn=nn[Wt+36>>2],Gn=nn[Wt+32>>2],hn=nn[Wt+28>>2],pn=nn[Wt+24>>2],mn=nn[Wt+20>>2],!tn&en>>>0>=16|tn)for(Rn=!an[Wt+80|0]<<24,Wn=nn[Wt+4>>2],wn=In(Wn,5),gn=nn[Wt+8>>2],En=In(gn,5),vn=nn[Wt+12>>2],Yn=In(vn,5),Vn=nn[Wt+16>>2],yn=In(Vn,5),Nn=nn[Wt>>2];rn=PA(on=((an[Pt+3|0]|an[Pt+4|0]<<8|an[Pt+5|0]<<16|an[Pt+6|0]<<24)>>>2&67108863)+pn|0,0,vn,0),dn=bn,mn=(cn=PA(pn=(67108863&(an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24))+mn|0,0,Vn,0))+rn|0,rn=bn+dn|0,rn=cn>>>0>mn>>>0?rn+1|0:rn,dn=PA(hn=((an[Pt+6|0]|an[Pt+7|0]<<8|an[Pt+8|0]<<16|an[Pt+9|0]<<24)>>>4&67108863)+hn|0,0,gn,0),rn=bn+rn|0,rn=dn>>>0>(mn=dn+mn|0)>>>0?rn+1|0:rn,dn=PA(Gn=((an[Pt+9|0]|an[Pt+10|0]<<8|an[Pt+11|0]<<16|an[Pt+12|0]<<24)>>>6|0)+Gn|0,0,Wn,0),rn=bn+rn|0,rn=dn>>>0>(mn=dn+mn|0)>>>0?rn+1|0:rn,dn=PA(Zn=Zn+Rn+((an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24)>>>8)|0,0,Nn,0),rn=bn+rn|0,Fn=mn=dn+mn|0,mn=dn>>>0>mn>>>0?rn+1|0:rn,rn=PA(on,0,gn,0),dn=bn,cn=PA(pn,0,vn,0),sn=bn+dn|0,sn=(rn=cn+rn|0)>>>0>>0?sn+1|0:sn,dn=(cn=PA(hn,0,Wn,0))+rn|0,rn=bn+sn|0,rn=cn>>>0>dn>>>0?rn+1|0:rn,cn=PA(Gn,0,Nn,0),rn=bn+rn|0,rn=cn>>>0>(dn=cn+dn|0)>>>0?rn+1|0:rn,cn=PA(Zn,0,yn,0),rn=bn+rn|0,Qn=dn=cn+dn|0,dn=cn>>>0>dn>>>0?rn+1|0:rn,rn=PA(on,0,Wn,0),un=bn,cn=(sn=PA(pn,0,gn,0))+rn|0,rn=bn+un|0,rn=sn>>>0>cn>>>0?rn+1|0:rn,un=PA(hn,0,Nn,0),sn=bn+rn|0,sn=(cn=un+cn|0)>>>0>>0?sn+1|0:sn,un=PA(Gn,0,yn,0),rn=bn+sn|0,rn=(cn=un+cn|0)>>>0>>0?rn+1|0:rn,un=PA(Zn,0,Yn,0),rn=bn+rn|0,fn=cn=un+cn|0,cn=cn>>>0>>0?rn+1|0:rn,rn=PA(on,0,Nn,0),sn=bn,un=(An=PA(pn,0,Wn,0))+rn|0,rn=bn+sn|0,rn=un>>>0>>0?rn+1|0:rn,sn=PA(hn,0,yn,0),rn=bn+rn|0,rn=sn>>>0>(un=sn+un|0)>>>0?rn+1|0:rn,An=PA(Gn,0,Yn,0),sn=bn+rn|0,sn=(un=An+un|0)>>>0>>0?sn+1|0:sn,An=PA(Zn,0,En,0),rn=bn+sn|0,rn=(un=An+un|0)>>>0>>0?rn+1|0:rn,An=un,un=rn,rn=PA(on,0,yn,0),sn=bn,on=(pn=PA(pn,0,Nn,0))+rn|0,rn=bn+sn|0,rn=on>>>0>>0?rn+1|0:rn,pn=PA(hn,0,Yn,0),rn=bn+rn|0,rn=(on=pn+on|0)>>>0>>0?rn+1|0:rn,pn=PA(Gn,0,En,0),rn=bn+rn|0,rn=(on=pn+on|0)>>>0>>0?rn+1|0:rn,pn=PA(Zn,0,wn,0),sn=bn+rn|0,sn=(on=pn+on|0)>>>0>>0?sn+1|0:sn,pn=on,rn=un,rn=(on=(hn=(67108863&sn)<<6|on>>>26)+An|0)>>>0>>0?rn+1|0:rn,hn=on,Gn=(67108863&rn)<<6|on>>>26,rn=cn,rn=(on=Gn+fn|0)>>>0>>0?rn+1|0:rn,Gn=on,sn=dn,Zn=rn=(on=(67108863&rn)<<6|on>>>26)+Qn|0,dn=(67108863&(sn=rn>>>0>>0?sn+1|0:sn))<<6|rn>>>26,rn=mn,pn=(67108863&hn)+((rn=In((67108863&((on=dn+Fn|0)>>>0>>0?rn+1:rn))<<6|on>>>26,5)+(67108863&pn)|0)>>>26|0)|0,hn=67108863&Gn,Gn=67108863&Zn,Zn=67108863&on,mn=67108863&rn,Pt=Pt+16|0,!(tn=tn-(en>>>0<16)|0)&(en=en-16|0)>>>0>15|tn;);nn[Wt+20>>2]=mn,nn[Wt+36>>2]=Zn,nn[Wt+32>>2]=Gn,nn[Wt+28>>2]=hn,nn[Wt+24>>2]=pn}function j(Wt,Pt,en,nn){Wt|=0,Pt|=0;var rn=0;return rn=-1,(nn|=0)-65>>>0<4294967232|(en|=0)>>>0>64||(en&&Pt?(mn=rn=mn-128|0,!Pt|((nn&=255)-65&255)>>>0<=191|((en&=255)-65&255)>>>0<=191?(iI(),Q()):(VA(Wt- -64|0,0,293),tn[Wt+56|0]=121,tn[Wt+57|0]=33,tn[Wt+58|0]=126,tn[Wt+59|0]=19,tn[Wt+60|0]=25,tn[Wt+61|0]=205,tn[Wt+62|0]=224,tn[Wt+63|0]=91,tn[Wt+48|0]=107,tn[Wt+49|0]=189,tn[Wt+50|0]=65,tn[Wt+51|0]=251,tn[Wt+52|0]=171,tn[Wt+53|0]=217,tn[Wt+54|0]=131,tn[Wt+55|0]=31,tn[Wt+40|0]=31,tn[Wt+41|0]=108,tn[Wt+42|0]=62,tn[Wt+43|0]=43,tn[Wt+44|0]=140,tn[Wt+45|0]=104,tn[Wt+46|0]=5,tn[Wt+47|0]=155,tn[Wt+32|0]=209,tn[Wt+33|0]=130,tn[Wt+34|0]=230,tn[Wt+35|0]=173,tn[Wt+36|0]=127,tn[Wt+37|0]=82,tn[Wt+38|0]=14,tn[Wt+39|0]=81,tn[Wt+24|0]=241,tn[Wt+25|0]=54,tn[Wt+26|0]=29,tn[Wt+27|0]=95,tn[Wt+28|0]=58,tn[Wt+29|0]=245,tn[Wt+30|0]=79,tn[Wt+31|0]=165,tn[Wt+16|0]=43,tn[Wt+17|0]=248,tn[Wt+18|0]=148,tn[Wt+19|0]=254,tn[Wt+20|0]=114,tn[Wt+21|0]=243,tn[Wt+22|0]=110,tn[Wt+23|0]=60,tn[Wt+8|0]=59,tn[Wt+9|0]=167,tn[Wt+10|0]=202,tn[Wt+11|0]=132,tn[Wt+12|0]=133,tn[Wt+13|0]=174,tn[Wt+14|0]=103,tn[Wt+15|0]=187,nn=-222443256^(en<<8|nn),tn[0|Wt]=nn,tn[Wt+1|0]=nn>>>8,tn[Wt+2|0]=nn>>>16,tn[Wt+3|0]=nn>>>24,nn=en>>>24^1779033703,tn[Wt+4|0]=nn,tn[Wt+5|0]=nn>>>8,tn[Wt+6|0]=nn>>>16,tn[Wt+7|0]=nn>>>24,en=TA(VA(rn,0,128),Pt,en),TA(Wt+96|0,en,128),Pt=128+(an[Wt+352|0]|an[Wt+353|0]<<8|an[Wt+354|0]<<16|an[Wt+355|0]<<24)|0,tn[Wt+352|0]=Pt,tn[Wt+353|0]=Pt>>>8,tn[Wt+354|0]=Pt>>>16,tn[Wt+355|0]=Pt>>>24,MI(en,128),mn=en+128|0)):(((Pt=255&nn)-65&255)>>>0<=191&&(iI(),Q()),VA(Wt- -64|0,0,293),tn[Wt+56|0]=121,tn[Wt+57|0]=33,tn[Wt+58|0]=126,tn[Wt+59|0]=19,tn[Wt+60|0]=25,tn[Wt+61|0]=205,tn[Wt+62|0]=224,tn[Wt+63|0]=91,tn[Wt+48|0]=107,tn[Wt+49|0]=189,tn[Wt+50|0]=65,tn[Wt+51|0]=251,tn[Wt+52|0]=171,tn[Wt+53|0]=217,tn[Wt+54|0]=131,tn[Wt+55|0]=31,tn[Wt+40|0]=31,tn[Wt+41|0]=108,tn[Wt+42|0]=62,tn[Wt+43|0]=43,tn[Wt+44|0]=140,tn[Wt+45|0]=104,tn[Wt+46|0]=5,tn[Wt+47|0]=155,tn[Wt+32|0]=209,tn[Wt+33|0]=130,tn[Wt+34|0]=230,tn[Wt+35|0]=173,tn[Wt+36|0]=127,tn[Wt+37|0]=82,tn[Wt+38|0]=14,tn[Wt+39|0]=81,tn[Wt+24|0]=241,tn[Wt+25|0]=54,tn[Wt+26|0]=29,tn[Wt+27|0]=95,tn[Wt+28|0]=58,tn[Wt+29|0]=245,tn[Wt+30|0]=79,tn[Wt+31|0]=165,tn[Wt+16|0]=43,tn[Wt+17|0]=248,tn[Wt+18|0]=148,tn[Wt+19|0]=254,tn[Wt+20|0]=114,tn[Wt+21|0]=243,tn[Wt+22|0]=110,tn[Wt+23|0]=60,tn[Wt+8|0]=59,tn[Wt+9|0]=167,tn[Wt+10|0]=202,tn[Wt+11|0]=132,tn[Wt+12|0]=133,tn[Wt+13|0]=174,tn[Wt+14|0]=103,tn[Wt+15|0]=187,Pt^=-222443256,tn[0|Wt]=Pt,tn[Wt+1|0]=Pt>>>8,tn[Wt+2|0]=Pt>>>16,tn[Wt+3|0]=Pt>>>24,tn[Wt+4|0]=103,tn[Wt+5|0]=230,tn[Wt+6|0]=9,tn[Wt+7|0]=106),rn=0),0|rn}function X(Wt,Pt,en){var tn,an,rn,In,sn,on,cn,dn,un,pn,mn=0,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0,Fn=0,Qn=0,fn=0;bn=nn[Pt+4>>2],mn=nn[Pt+44>>2],hn=nn[Pt+8>>2],Zn=nn[Pt+48>>2],An=nn[Pt+12>>2],Wn=nn[Pt+52>>2],Nn=nn[Pt+16>>2],gn=nn[Pt+56>>2],yn=nn[Pt+20>>2],vn=nn[Pt+60>>2],Yn=nn[Pt+24>>2],En=nn[(Gn=Pt- -64|0)>>2],Vn=nn[Pt+28>>2],Rn=nn[Pt+68>>2],wn=nn[Pt+32>>2],Fn=nn[Pt+72>>2],Qn=nn[Pt+36>>2],fn=nn[Pt+76>>2],nn[Wt>>2]=nn[Pt>>2]+nn[Pt+40>>2],nn[Wt+36>>2]=Qn+fn,nn[Wt+32>>2]=wn+Fn,nn[Wt+28>>2]=Vn+Rn,nn[Wt+24>>2]=Yn+En,nn[Wt+20>>2]=yn+vn,nn[Wt+16>>2]=Nn+gn,nn[Wt+12>>2]=An+Wn,nn[Wt+8>>2]=hn+Zn,nn[Wt+4>>2]=mn+bn,mn=nn[Pt+4>>2],hn=nn[Pt+44>>2],Zn=nn[Pt+8>>2],An=nn[Pt+48>>2],Wn=nn[Pt+12>>2],Nn=nn[Pt+52>>2],gn=nn[Pt+16>>2],yn=nn[Pt+56>>2],vn=nn[Pt+20>>2],Yn=nn[Pt+60>>2],En=nn[Pt+24>>2],Gn=nn[Gn>>2],bn=nn[Pt+28>>2],Vn=nn[Pt+68>>2],Rn=nn[Pt+32>>2],wn=nn[Pt+72>>2],Fn=nn[Pt>>2],Qn=nn[Pt+40>>2],nn[Wt+76>>2]=nn[Pt+76>>2]-nn[Pt+36>>2],nn[Wt+72>>2]=wn-Rn,nn[Wt+68>>2]=Vn-bn,nn[(bn=Wt- -64|0)>>2]=Gn-En,nn[Wt+60>>2]=Yn-vn,nn[Wt+56>>2]=yn-gn,nn[Wt+52>>2]=Nn-Wn,nn[Wt+48>>2]=An-Zn,nn[Wt+44>>2]=hn-mn,nn[Wt+40>>2]=Qn-Fn,M(Wt+80|0,Wt,en),M(mn=Wt+40|0,mn,en+40|0),M(Wt+120|0,en+120|0,Pt+120|0),M(Wt,Pt+80|0,en+80|0),Qn=nn[Wt+4>>2],fn=nn[Wt+8>>2],rn=nn[Wt+12>>2],In=nn[Wt+16>>2],sn=nn[Wt+20>>2],on=nn[Wt+24>>2],cn=nn[Wt+28>>2],dn=nn[Wt+32>>2],un=nn[Wt+36>>2],Pt=nn[Wt+44>>2],en=nn[Wt+84>>2],mn=nn[Wt+48>>2],hn=nn[Wt+88>>2],Zn=nn[Wt+52>>2],An=nn[Wt+92>>2],Wn=nn[Wt+56>>2],Nn=nn[Wt+96>>2],gn=nn[Wt+60>>2],yn=nn[Wt+100>>2],vn=nn[bn>>2],Yn=nn[Wt+104>>2],Gn=nn[Wt+68>>2],En=nn[Wt+108>>2],Vn=nn[Wt+72>>2],Rn=nn[Wt+112>>2],pn=nn[Wt>>2],wn=nn[Wt+40>>2],Fn=nn[Wt+80>>2],tn=nn[Wt+76>>2],an=nn[Wt+116>>2],nn[Wt+76>>2]=tn+an,nn[Wt+72>>2]=Vn+Rn,nn[Wt+68>>2]=Gn+En,nn[bn>>2]=vn+Yn,nn[Wt+60>>2]=gn+yn,nn[Wt+56>>2]=Wn+Nn,nn[Wt+52>>2]=Zn+An,nn[Wt+48>>2]=mn+hn,nn[Wt+44>>2]=Pt+en,nn[Wt+40>>2]=wn+Fn,nn[Wt+36>>2]=an-tn,nn[Wt+32>>2]=Rn-Vn,nn[Wt+28>>2]=En-Gn,nn[Wt+24>>2]=Yn-vn,nn[Wt+20>>2]=yn-gn,nn[Wt+16>>2]=Nn-Wn,nn[Wt+12>>2]=An-Zn,nn[Wt+8>>2]=hn-mn,nn[Wt+4>>2]=en-Pt,nn[Wt>>2]=Fn-wn,Pt=un<<1,en=nn[Wt+156>>2],nn[Wt+156>>2]=Pt-en,bn=dn<<1,mn=nn[Wt+152>>2],nn[Wt+152>>2]=bn-mn,hn=cn<<1,Zn=nn[Wt+148>>2],nn[Wt+148>>2]=hn-Zn,An=on<<1,Wn=nn[Wt+144>>2],nn[Wt+144>>2]=An-Wn,Nn=sn<<1,gn=nn[Wt+140>>2],nn[Wt+140>>2]=Nn-gn,yn=In<<1,vn=nn[Wt+136>>2],nn[Wt+136>>2]=yn-vn,Yn=rn<<1,Gn=nn[Wt+132>>2],nn[Wt+132>>2]=Yn-Gn,En=fn<<1,Vn=nn[Wt+128>>2],nn[Wt+128>>2]=En-Vn,Rn=Qn<<1,wn=nn[Wt+124>>2],nn[Wt+124>>2]=Rn-wn,Fn=pn<<1,Qn=nn[Wt+120>>2],nn[Wt+120>>2]=Fn-Qn,nn[Wt+112>>2]=mn+bn,nn[Wt+108>>2]=hn+Zn,nn[Wt+104>>2]=An+Wn,nn[Wt+100>>2]=Nn+gn,nn[Wt+96>>2]=yn+vn,nn[Wt+92>>2]=Yn+Gn,nn[Wt+88>>2]=En+Vn,nn[Wt+84>>2]=Rn+wn,nn[Wt+80>>2]=Fn+Qn,nn[Wt+116>>2]=Pt+en}function O(Wt,Pt,en){var tn,an,rn,In,sn,on,cn,dn,un,pn,mn=0,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0,Fn=0,Qn=0,fn=0;bn=nn[Pt+4>>2],mn=nn[Pt+44>>2],hn=nn[Pt+8>>2],Zn=nn[Pt+48>>2],An=nn[Pt+12>>2],Wn=nn[Pt+52>>2],Nn=nn[Pt+16>>2],gn=nn[Pt+56>>2],yn=nn[Pt+20>>2],vn=nn[Pt+60>>2],Yn=nn[Pt+24>>2],En=nn[(Gn=Pt- -64|0)>>2],Vn=nn[Pt+28>>2],Rn=nn[Pt+68>>2],wn=nn[Pt+32>>2],Fn=nn[Pt+72>>2],Qn=nn[Pt+36>>2],fn=nn[Pt+76>>2],nn[Wt>>2]=nn[Pt>>2]+nn[Pt+40>>2],nn[Wt+36>>2]=Qn+fn,nn[Wt+32>>2]=wn+Fn,nn[Wt+28>>2]=Vn+Rn,nn[Wt+24>>2]=Yn+En,nn[Wt+20>>2]=yn+vn,nn[Wt+16>>2]=Nn+gn,nn[Wt+12>>2]=An+Wn,nn[Wt+8>>2]=hn+Zn,nn[Wt+4>>2]=mn+bn,mn=nn[Pt+4>>2],hn=nn[Pt+44>>2],Zn=nn[Pt+8>>2],An=nn[Pt+48>>2],Wn=nn[Pt+12>>2],Nn=nn[Pt+52>>2],gn=nn[Pt+16>>2],yn=nn[Pt+56>>2],vn=nn[Pt+20>>2],Yn=nn[Pt+60>>2],En=nn[Pt+24>>2],Gn=nn[Gn>>2],bn=nn[Pt+28>>2],Vn=nn[Pt+68>>2],Rn=nn[Pt+32>>2],wn=nn[Pt+72>>2],Fn=nn[Pt>>2],Qn=nn[Pt+40>>2],nn[Wt+76>>2]=nn[Pt+76>>2]-nn[Pt+36>>2],nn[Wt+72>>2]=wn-Rn,nn[Wt+68>>2]=Vn-bn,nn[(bn=Wt- -64|0)>>2]=Gn-En,nn[Wt+60>>2]=Yn-vn,nn[Wt+56>>2]=yn-gn,nn[Wt+52>>2]=Nn-Wn,nn[Wt+48>>2]=An-Zn,nn[Wt+44>>2]=hn-mn,nn[Wt+40>>2]=Qn-Fn,M(Wt+80|0,Wt,en+40|0),M(mn=Wt+40|0,mn,en),M(Wt+120|0,en+120|0,Pt+120|0),M(Wt,Pt+80|0,en+80|0),Qn=nn[Wt+4>>2],fn=nn[Wt+8>>2],rn=nn[Wt+12>>2],In=nn[Wt+16>>2],sn=nn[Wt+20>>2],on=nn[Wt+24>>2],cn=nn[Wt+28>>2],dn=nn[Wt+32>>2],un=nn[Wt+36>>2],Pt=nn[Wt+44>>2],en=nn[Wt+84>>2],mn=nn[Wt+48>>2],hn=nn[Wt+88>>2],Zn=nn[Wt+52>>2],An=nn[Wt+92>>2],Wn=nn[Wt+56>>2],Nn=nn[Wt+96>>2],gn=nn[Wt+60>>2],yn=nn[Wt+100>>2],vn=nn[bn>>2],Yn=nn[Wt+104>>2],Gn=nn[Wt+68>>2],En=nn[Wt+108>>2],Vn=nn[Wt+72>>2],Rn=nn[Wt+112>>2],pn=nn[Wt>>2],wn=nn[Wt+40>>2],Fn=nn[Wt+80>>2],tn=nn[Wt+76>>2],an=nn[Wt+116>>2],nn[Wt+76>>2]=tn+an,nn[Wt+72>>2]=Vn+Rn,nn[Wt+68>>2]=Gn+En,nn[bn>>2]=vn+Yn,nn[Wt+60>>2]=gn+yn,nn[Wt+56>>2]=Wn+Nn,nn[Wt+52>>2]=Zn+An,nn[Wt+48>>2]=mn+hn,nn[Wt+44>>2]=Pt+en,nn[Wt+40>>2]=wn+Fn,nn[Wt+36>>2]=an-tn,nn[Wt+32>>2]=Rn-Vn,nn[Wt+28>>2]=En-Gn,nn[Wt+24>>2]=Yn-vn,nn[Wt+20>>2]=yn-gn,nn[Wt+16>>2]=Nn-Wn,nn[Wt+12>>2]=An-Zn,nn[Wt+8>>2]=hn-mn,nn[Wt+4>>2]=en-Pt,nn[Wt>>2]=Fn-wn,Pt=nn[Wt+156>>2],en=un<<1,nn[Wt+156>>2]=Pt+en,bn=nn[Wt+152>>2],mn=dn<<1,nn[Wt+152>>2]=bn+mn,hn=nn[Wt+148>>2],Zn=cn<<1,nn[Wt+148>>2]=hn+Zn,An=nn[Wt+144>>2],Wn=on<<1,nn[Wt+144>>2]=An+Wn,Nn=nn[Wt+140>>2],gn=sn<<1,nn[Wt+140>>2]=Nn+gn,yn=nn[Wt+136>>2],vn=In<<1,nn[Wt+136>>2]=yn+vn,Yn=nn[Wt+132>>2],Gn=rn<<1,nn[Wt+132>>2]=Yn+Gn,En=nn[Wt+128>>2],Vn=fn<<1,nn[Wt+128>>2]=En+Vn,Rn=nn[Wt+124>>2],wn=Qn<<1,nn[Wt+124>>2]=Rn+wn,Fn=nn[Wt+120>>2],Qn=pn<<1,nn[Wt+120>>2]=Fn+Qn,nn[Wt+112>>2]=mn-bn,nn[Wt+108>>2]=Zn-hn,nn[Wt+104>>2]=Wn-An,nn[Wt+100>>2]=gn-Nn,nn[Wt+96>>2]=vn-yn,nn[Wt+92>>2]=Gn-Yn,nn[Wt+88>>2]=Vn-En,nn[Wt+84>>2]=wn-Rn,nn[Wt+80>>2]=Qn-Fn,nn[Wt+116>>2]=en-Pt}function T(Wt,Pt,en){var tn,an,rn,In,sn,on,cn,dn,un,pn,mn=0,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0,Fn=0,Qn=0,fn=0;bn=nn[Pt+4>>2],mn=nn[Pt+44>>2],hn=nn[Pt+8>>2],Zn=nn[Pt+48>>2],An=nn[Pt+12>>2],Wn=nn[Pt+52>>2],Nn=nn[Pt+16>>2],gn=nn[Pt+56>>2],yn=nn[Pt+20>>2],vn=nn[Pt+60>>2],Yn=nn[Pt+24>>2],En=nn[(Gn=Pt- -64|0)>>2],Vn=nn[Pt+28>>2],Rn=nn[Pt+68>>2],wn=nn[Pt+32>>2],Fn=nn[Pt+72>>2],Qn=nn[Pt+36>>2],fn=nn[Pt+76>>2],nn[Wt>>2]=nn[Pt>>2]+nn[Pt+40>>2],nn[Wt+36>>2]=Qn+fn,nn[Wt+32>>2]=wn+Fn,nn[Wt+28>>2]=Vn+Rn,nn[Wt+24>>2]=Yn+En,nn[Wt+20>>2]=yn+vn,nn[Wt+16>>2]=Nn+gn,nn[Wt+12>>2]=An+Wn,nn[Wt+8>>2]=hn+Zn,nn[Wt+4>>2]=mn+bn,mn=nn[Pt+4>>2],hn=nn[Pt+44>>2],Zn=nn[Pt+8>>2],An=nn[Pt+48>>2],Wn=nn[Pt+12>>2],Nn=nn[Pt+52>>2],gn=nn[Pt+16>>2],yn=nn[Pt+56>>2],vn=nn[Pt+20>>2],Yn=nn[Pt+60>>2],En=nn[Pt+24>>2],Gn=nn[Gn>>2],bn=nn[Pt+28>>2],Vn=nn[Pt+68>>2],Rn=nn[Pt+32>>2],wn=nn[Pt+72>>2],Fn=nn[Pt>>2],Qn=nn[Pt+40>>2],nn[Wt+76>>2]=nn[Pt+76>>2]-nn[Pt+36>>2],nn[Wt+72>>2]=wn-Rn,nn[Wt+68>>2]=Vn-bn,nn[(bn=Wt- -64|0)>>2]=Gn-En,nn[Wt+60>>2]=Yn-vn,nn[Wt+56>>2]=yn-gn,nn[Wt+52>>2]=Nn-Wn,nn[Wt+48>>2]=An-Zn,nn[Wt+44>>2]=hn-mn,nn[Wt+40>>2]=Qn-Fn,M(Wt+80|0,Wt,en),M(mn=Wt+40|0,mn,en+40|0),M(Wt+120|0,en+80|0,Pt+120|0),Qn=nn[Pt+84>>2],fn=nn[Pt+88>>2],rn=nn[Pt+92>>2],In=nn[Pt+96>>2],sn=nn[Pt+100>>2],on=nn[Pt+104>>2],cn=nn[Pt+108>>2],dn=nn[Pt+112>>2],un=nn[Pt+116>>2],en=nn[Wt+44>>2],mn=nn[Wt+84>>2],hn=nn[Wt+48>>2],Zn=nn[Wt+88>>2],An=nn[Wt+52>>2],Wn=nn[Wt+92>>2],Nn=nn[Wt+56>>2],gn=nn[Wt+96>>2],yn=nn[Wt+60>>2],vn=nn[Wt+100>>2],Yn=nn[bn>>2],Gn=nn[Wt+104>>2],En=nn[Wt+68>>2],Vn=nn[Wt+108>>2],Rn=nn[Wt+72>>2],wn=nn[Wt+112>>2],pn=nn[Pt+80>>2],Pt=nn[Wt+40>>2],Fn=nn[Wt+80>>2],tn=nn[Wt+76>>2],an=nn[Wt+116>>2],nn[Wt+76>>2]=tn+an,nn[Wt+72>>2]=Rn+wn,nn[Wt+68>>2]=En+Vn,nn[bn>>2]=Yn+Gn,nn[Wt+60>>2]=yn+vn,nn[Wt+56>>2]=Nn+gn,nn[Wt+52>>2]=An+Wn,nn[Wt+48>>2]=hn+Zn,nn[Wt+44>>2]=en+mn,nn[Wt+40>>2]=Pt+Fn,nn[Wt+36>>2]=an-tn,nn[Wt+32>>2]=wn-Rn,nn[Wt+28>>2]=Vn-En,nn[Wt+24>>2]=Gn-Yn,nn[Wt+20>>2]=vn-yn,nn[Wt+16>>2]=gn-Nn,nn[Wt+12>>2]=Wn-An,nn[Wt+8>>2]=Zn-hn,nn[Wt+4>>2]=mn-en,nn[Wt>>2]=Fn-Pt,Pt=un<<1,en=nn[Wt+156>>2],nn[Wt+156>>2]=Pt-en,bn=dn<<1,mn=nn[Wt+152>>2],nn[Wt+152>>2]=bn-mn,hn=cn<<1,Zn=nn[Wt+148>>2],nn[Wt+148>>2]=hn-Zn,An=on<<1,Wn=nn[Wt+144>>2],nn[Wt+144>>2]=An-Wn,Nn=sn<<1,gn=nn[Wt+140>>2],nn[Wt+140>>2]=Nn-gn,yn=In<<1,vn=nn[Wt+136>>2],nn[Wt+136>>2]=yn-vn,Yn=rn<<1,Gn=nn[Wt+132>>2],nn[Wt+132>>2]=Yn-Gn,En=fn<<1,Vn=nn[Wt+128>>2],nn[Wt+128>>2]=En-Vn,Rn=Qn<<1,wn=nn[Wt+124>>2],nn[Wt+124>>2]=Rn-wn,Fn=pn<<1,Qn=nn[Wt+120>>2],nn[Wt+120>>2]=Fn-Qn,nn[Wt+112>>2]=mn+bn,nn[Wt+108>>2]=hn+Zn,nn[Wt+104>>2]=An+Wn,nn[Wt+100>>2]=Nn+gn,nn[Wt+96>>2]=yn+vn,nn[Wt+92>>2]=Yn+Gn,nn[Wt+88>>2]=En+Vn,nn[Wt+84>>2]=Rn+wn,nn[Wt+80>>2]=Fn+Qn,nn[Wt+116>>2]=Pt+en}function V(Wt,Pt){var en,tn,rn,In,sn,on,cn,dn,un,pn,mn,Gn,hn,Zn,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0,Fn=0,Qn=0;hn=an[Pt+31|0],en=an[Pt+30|0],tn=an[Pt+29|0],rn=an[Pt+6|0],In=an[Pt+5|0],sn=an[Pt+4|0],on=an[Pt+9|0],cn=an[Pt+8|0],dn=an[Pt+7|0],un=an[Pt+12|0],wn=an[Pt+11|0],Fn=an[Pt+10|0],pn=an[Pt+15|0],Qn=an[Pt+14|0],mn=an[Pt+13|0],Yn=an[Pt+28|0],Rn=an[Pt+27|0],En=an[Pt+26|0],vn=an[Pt+25|0],gn=an[Pt+24|0],Nn=an[Pt+23|0],Zn=an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,yn=(Wn=an[Pt+21|0])<<15,Wn=An=Wn>>>17|0,Vn=yn,Vn|=(yn=an[Pt+20|0])<<7,yn=(An=yn>>>25|0)|Wn,Wn=(An=an[Pt+22|0])>>>9|0,An=An<<23|Vn,Wn|=yn,Gn=an[Pt+16|0]|an[Pt+17|0]<<8|an[Pt+18|0]<<16|an[Pt+19|0]<<24,Pt=0,yn=An,An=(33554431&(Pt=(Vn=Gn+16777216|0)>>>0<16777216?1:Pt))<<7|Vn>>>25,Pt=(Pt>>>25|0)+Wn|0,An=(Wn=yn=yn+An|0)>>>0>>0?Pt+1|0:Pt,Pt=(yn=Wn+33554432|0)>>>0<33554432?An+1|0:An,nn[Wt+24>>2]=Wn-(-67108864&yn),An=(Wn=Nn>>>27|0)|gn>>>19|vn>>>11,Wn=Nn=(gn=vn<<21|(Nn=gn<<13|Nn<<5))+(Wn=(67108863&(Wn=Pt))<<6|yn>>>26)|0,Pt=An,An=(Nn=gn+16777216|0)>>>0<16777216?Pt+1|0:Pt,nn[Wt+28>>2]=Wn-(1040187392&Nn),Wn=(An=(Pt=An)>>>25|0)+(Wn=Rn>>>20|En>>>28|Yn>>>12)|0,Pt=Wn=(An=Nn=(Pt=(33554431&Pt)<<7|Nn>>>25)+(Rn<<12|En<<4|Yn<<20)|0)>>>0>>0?Wn+1|0:Wn,Nn=(Yn=An+33554432|0)>>>0<33554432?Pt+1|0:Pt,nn[Wt+32>>2]=An-(-67108864&Yn),Wn=un>>>13|(An=wn>>>21|Fn>>>29),Pt=(Wn=(Rn=16777216+(wn=wn<<11|Fn<<3|un<<19)|0)>>>0<16777216?Wn+1|0:Wn)>>>25|0,Wn=(An=gn=Qn<<10|mn<<2|pn<<18)+(gn=(33554431&Wn)<<7|Rn>>>25)|0,An=Pt+(vn=Qn>>>22|mn>>>30|pn>>>14)|0,Pt=An=Wn>>>0>>0?An+1|0:An,gn=((67108863&(Pt=(gn=Wn+33554432|0)>>>0<33554432?Pt+1|0:Pt))<<6|(An=gn)>>>26)+(En=Gn-(-33554432&Vn)|0)|0,nn[Wt+20>>2]=gn,nn[Wt+16>>2]=Wn-(-67108864&An),An=In>>>18|sn>>>26|rn>>>10,Wn=(An=(En=16777216+(Fn=In<<14|sn<<6|rn<<22)|0)>>>0<16777216?An+1|0:An)>>>25|0,An=(Pt=gn=cn<<13|dn<<5|on<<21)+(gn=(33554431&An)<<7|En>>>25)|0,Pt=Wn+(vn=cn>>>19|dn>>>27|on>>>11)|0,Pt=An>>>0>>0?Pt+1|0:Pt,Wn=(vn=An+33554432|0)>>>0<33554432?Pt+1|0:Pt,nn[Wt+8>>2]=An-(-67108864&vn),Yn=(Nn=(67108863&Nn)<<6|Yn>>>26)+(Qn=hn<<18&33292288|en<<10|tn<<2)|0,Pt=An=en>>>22|tn>>>30,An=(Nn=Qn+16777216|0)>>>0<16777216?Pt+1|0:Pt,nn[Wt+36>>2]=Yn-(33554432&Nn),Wn=wn+((67108863&Wn)<<6|vn>>>26)|0,nn[Wt+12>>2]=Wn-(234881024&Rn),gn=Fn-(2113929216&En)|0,Wn=PA((33554431&(Pt=An))<<7|Nn>>>25,An=Pt>>>25|0,19,0),Pt=bn,Wn=(An=Wn+Zn|0)>>>0>>0?Pt+1|0:Pt,Nn=((67108863&(Wn=(Pt=An+33554432|0)>>>0<33554432?Wn+1|0:Wn))<<6|Pt>>>26)+gn|0,nn[Wt+4>>2]=Nn,nn[Wt>>2]=An-(-67108864&Pt)}function Z(Wt,Pt){var en,rn,In,sn,on=0,cn=0,dn=0,un=0,pn=0,bn=0;for(mn=en=mn-480|0;dn=(cn=en+288|0)+(on<<1)|0,un=an[Pt+on|0],tn[dn+1|0]=un>>>4,tn[0|dn]=15&un,cn=cn+((dn=1|on)<<1)|0,dn=an[Pt+dn|0],tn[cn+1|0]=dn>>>4,tn[0|cn]=15&dn,32!=(0|(on=on+2|0)););for(Pt=0;on=8+(cn=(on=Pt)+an[0|(Pt=(en+288|0)+pn|0)]|0)|0,tn[0|Pt]=cn-(240&on),on=8+(cn=an[Pt+1|0]+(on<<24>>24>>4)|0)|0,tn[Pt+1|0]=cn-(240&on),on=8+(cn=an[Pt+2|0]+(on<<24>>24>>4)|0)|0,tn[Pt+2|0]=cn-(240&on),Pt=on<<24>>24>>4,63!=(0|(pn=pn+3|0)););for(tn[en+351|0]=an[en+351|0]+Pt,nn[Wt+32>>2]=0,nn[Wt+36>>2]=0,nn[Wt+24>>2]=0,nn[Wt+28>>2]=0,nn[Wt+16>>2]=0,nn[Wt+20>>2]=0,nn[Wt+8>>2]=0,nn[Wt+12>>2]=0,nn[Wt>>2]=0,nn[Wt+4>>2]=0,nn[Wt+44>>2]=0,nn[Wt+48>>2]=0,nn[Wt+40>>2]=1,nn[Wt+52>>2]=0,nn[Wt+56>>2]=0,nn[Wt+60>>2]=0,nn[Wt+64>>2]=0,nn[Wt+68>>2]=0,nn[Wt+72>>2]=0,nn[Wt+76>>2]=0,nn[Wt+80>>2]=1,VA(Wt+84|0,0,76),In=Wt+120|0,pn=Wt+80|0,Pt=Wt+40|0,cn=en+208|0,rn=en+168|0,dn=en+248|0,on=1;oA(bn=en+8|0,on>>>1|0,tn[(en+288|0)+on|0]),T(un=en+128|0,Wt,bn),M(Wt,un,dn),M(Pt,rn,cn),M(pn,cn,dn),M(In,un,rn),bn=on>>>0<62,on=on+2|0,bn;);for(on=nn[Wt+36>>2],nn[en+392>>2]=nn[Wt+32>>2],nn[en+396>>2]=on,on=nn[Wt+28>>2],nn[en+384>>2]=nn[Wt+24>>2],nn[en+388>>2]=on,on=nn[Wt+20>>2],nn[en+376>>2]=nn[Wt+16>>2],nn[en+380>>2]=on,on=nn[Wt+12>>2],nn[en+368>>2]=nn[Wt+8>>2],nn[en+372>>2]=on,on=nn[Wt+4>>2],nn[en+360>>2]=nn[Wt>>2],nn[en+364>>2]=on,on=nn[Pt+12>>2],nn[en+408>>2]=nn[Pt+8>>2],nn[en+412>>2]=on,on=nn[Pt+20>>2],nn[en+416>>2]=nn[Pt+16>>2],nn[en+420>>2]=on,on=nn[Pt+28>>2],nn[en+424>>2]=nn[Pt+24>>2],nn[en+428>>2]=on,on=nn[Pt+36>>2],nn[en+432>>2]=nn[Pt+32>>2],nn[en+436>>2]=on,on=nn[Pt+4>>2],nn[en+400>>2]=nn[Pt>>2],nn[en+404>>2]=on,on=nn[pn+12>>2],nn[en+448>>2]=nn[pn+8>>2],nn[en+452>>2]=on,on=nn[pn+20>>2],nn[en+456>>2]=nn[pn+16>>2],nn[en+460>>2]=on,on=nn[pn+28>>2],nn[en+464>>2]=nn[pn+24>>2],nn[en+468>>2]=on,on=nn[pn+36>>2],nn[en+472>>2]=nn[pn+32>>2],nn[en+476>>2]=on,on=nn[pn+4>>2],nn[en+440>>2]=nn[pn>>2],nn[en+444>>2]=on,_(un,on=en+360|0),M(on,un,dn),M(bn=en+400|0,rn,cn),M(sn=en+440|0,cn,dn),_(un,on),M(on,un,dn),M(bn,rn,cn),M(sn,cn,dn),_(un,on),M(on,un,dn),M(bn,rn,cn),M(sn,cn,dn),_(un,on),M(Wt,un,dn),M(Pt,rn,cn),M(pn,cn,dn),M(In,un,rn),on=0;oA(bn=en+8|0,on>>>1|0,tn[(en+288|0)+on|0]),T(un=en+128|0,Wt,bn),M(Wt,un,dn),M(Pt,rn,cn),M(pn,cn,dn),M(In,un,rn),un=on>>>0<62,on=on+2|0,un;);mn=en+480|0}function W(Wt,Pt,en,rn){var In,sn=0,on=0,cn=0,dn=0,un=0,pn=0,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0;if(mn=In=mn-704|0,en|rn)if(sn=(rn<<3|en>>>29)+(on=dn=nn[Wt+76>>2])|0,cn=(pn=nn[Wt+72>>2])+(un=en<<3)|0,nn[Wt+72>>2]=cn,sn=cn>>>0>>0?sn+1|0:sn,nn[Wt+76>>2]=sn,dn=nn[Wt+68>>2],sn=(sn=cn=(0|sn)==(0|on)&cn>>>0>>0|sn>>>0>>0)>>>0>(cn=cn+nn[Wt+64>>2]|0)>>>0?dn+1|0:dn,cn=(un=rn>>>29|0)+cn|0,nn[Wt+64>>2]=cn,nn[Wt+68>>2]=cn>>>0>>0?sn+1|0:sn,cn=Wt+80|0,(0|rn)==(0|(dn=An=0-((sn=0)+((un=127&((7&on)<<29|pn>>>3))>>>0>128)|0)|0))&en>>>0>=(pn=128-un|0)>>>0|rn>>>0>dn>>>0){if(on=0,dn=0,!sn&(127^un)>>>0>=3|sn)for(Wn=252&pn;tn[(sn=on+un|0)+cn|0]=an[Pt+on|0],tn[cn+(un+(sn=1|on)|0)|0]=an[Pt+sn|0],tn[cn+(un+(sn=2|on)|0)|0]=an[Pt+sn|0],tn[cn+(un+(sn=3|on)|0)|0]=an[Pt+sn|0],sn=dn,dn=(on=on+4|0)>>>0<4?sn+1|0:sn,sn=hn,hn=sn=(bn=bn+4|0)>>>0<4?sn+1|0:sn,(0|bn)!=(0|Wn)|(0|Zn)!=(0|sn););if(hn=sn=0,sn|(bn=3&pn))for(;tn[(sn=on+un|0)+cn|0]=an[Pt+on|0],sn=dn,dn=(on=on+1|0)?sn:sn+1|0,sn=Zn,Zn=sn=(Gn=Gn+1|0)?sn:sn+1|0,(0|bn)!=(0|Gn)|(0|hn)!=(0|sn););if(n(Wt,cn,In,on=In+640|0),Pt=Pt+pn|0,!(rn=rn-((en>>>0>>0)+An|0)|0)&(en=en-pn|0)>>>0>127|rn)for(;n(Wt,Pt,In,on),Pt=Pt+128|0,!(rn=rn-(en>>>0<128)|0)&(en=en-128|0)>>>0>127|rn;);if(en|rn){if(Wt=3&en,Gn=0,Zn=0,on=0,dn=0,!rn&en>>>0>=4|rn)for(bn=124&en,pn=0,en=0,rn=0;tn[on+cn|0]=an[Pt+on|0],tn[(sn=1|on)+cn|0]=an[Pt+sn|0],tn[(sn=2|on)+cn|0]=an[Pt+sn|0],tn[(sn=3|on)+cn|0]=an[Pt+sn|0],sn=dn,dn=(on=on+4|0)>>>0<4?sn+1|0:sn,sn=rn,rn=sn=(en=en+4|0)>>>0<4?sn+1|0:sn,(0|en)!=(0|bn)|(0|pn)!=(0|sn););if(Wt|hn)for(;tn[on+cn|0]=an[Pt+on|0],dn=(on=on+1|0)?dn:dn+1|0,sn=Zn,Zn=sn=(Gn=Gn+1|0)?sn:sn+1|0,(0|Wt)!=(0|Gn)|(0|hn)!=(0|sn););}MI(In,704)}else{if(on=0,dn=0,!rn&en>>>0>=4|rn)for(Wt=-4&en;tn[(sn=on+un|0)+cn|0]=an[Pt+on|0],tn[cn+(pn=un+(sn=1|on)|0)|0]=an[Pt+sn|0],tn[cn+(pn=un+(sn=2|on)|0)|0]=an[Pt+sn|0],tn[cn+(pn=un+(sn=3|on)|0)|0]=an[Pt+sn|0],sn=dn,dn=(on=on+4|0)>>>0<4?sn+1|0:sn,sn=hn,hn=sn=(bn=bn+4|0)>>>0<4?sn+1|0:sn,(0|Wt)!=(0|bn)|(0|rn)!=(0|sn););if((en&=3)|(Wt=0))for(;tn[(rn=on+un|0)+cn|0]=an[Pt+on|0],dn=(on=on+1|0)?dn:dn+1|0,sn=Zn,Zn=sn=(Gn=Gn+1|0)?sn:sn+1|0,(0|en)!=(0|Gn)|(0|Wt)!=(0|sn););}return mn=In+704|0,0}function $(Wt,Pt,en){var nn=0,rn=0,In=0,sn=0,on=0,cn=0,dn=0,un=0,pn=0,mn=0,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0;for(rn=2036477234,sn=857760878,nn=1634760805,cn=1797285236,In=an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24,pn=an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24,on=an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24,mn=an[en+28|0]|an[en+29|0]<<8|an[en+30|0]<<16|an[en+31|0]<<24,dn=an[en+24|0]|an[en+25|0]<<8|an[en+26|0]<<16|an[en+27|0]<<24,Nn=an[en+20|0]|an[en+21|0]<<8|an[en+22|0]<<16|an[en+23|0]<<24,bn=an[en+16|0]|an[en+17|0]<<8|an[en+18|0]<<16|an[en+19|0]<<24,Gn=an[en+12|0]|an[en+13|0]<<8|an[en+14|0]<<16|an[en+15|0]<<24,hn=an[en+8|0]|an[en+9|0]<<8|an[en+10|0]<<16|an[en+11|0]<<24,Zn=an[en+4|0]|an[en+5|0]<<8|an[en+6|0]<<16|an[en+7|0]<<24,Pt=an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,en=an[0|en]|an[en+1|0]<<8|an[en+2|0]<<16|an[en+3|0]<<24;un=en,en=gI((An=Pt)^(Pt=en+nn|0),16),un=bn=gI(un^(nn=en+bn|0),12),gn=gI((An=Pt+bn|0)^en,8),Pt=gI(un^(bn=gn+nn|0),7),nn=Gn,Gn=gI((en=cn+Gn|0)^In,16),nn=gI(nn^(mn=Gn+mn|0),12),In=hn,cn=gI((rn=rn+hn|0)^pn,16),In=gI(In^(hn=cn+dn|0),12),dn=gI((rn=In+rn|0)^cn,8),en=gI(dn^(cn=Pt+(Wn=en+nn|0)|0),16),pn=gI((sn=sn+Zn|0)^on,16),Zn=gI((on=pn+Nn|0)^Zn,12),un=Pt,Pt=gI((sn=sn+Zn|0)^pn,8),un=gI(un^(on=en+(yn=Pt+on|0)|0),12),pn=gI(en^(cn=un+cn|0),8),en=gI((Nn=pn+on|0)^un,7),un=rn,rn=nn,Wn=gI(Gn^Wn,8),rn=gI(rn^(nn=Wn+mn|0),7),Gn=gI((on=un+rn|0)^Pt,16),mn=gI((Pt=Gn+bn|0)^rn,12),on=gI(Gn^(rn=mn+on|0),8),Gn=gI((bn=Pt+on|0)^mn,7),Pt=gI((Pt=In)^(In=dn+hn|0),7),hn=gI((sn=Pt+sn|0)^gn,16),dn=gI(Pt^(nn=hn+nn|0),12),Pt=gI(hn^(sn=dn+sn|0),8),hn=gI((mn=nn+Pt|0)^dn,7),un=In,nn=gI(Zn^yn,7),dn=gI((In=nn+An|0)^Wn,16),An=gI(nn^(Zn=un+dn|0),12),In=gI(dn^(nn=An+In|0),8),Zn=gI((dn=Zn+In|0)^An,7),10!=(0|(vn=vn+1|0)););tn[0|Wt]=nn,tn[Wt+1|0]=nn>>>8,tn[Wt+2|0]=nn>>>16,tn[Wt+3|0]=nn>>>24,tn[Wt+28|0]=In,tn[Wt+29|0]=In>>>8,tn[Wt+30|0]=In>>>16,tn[Wt+31|0]=In>>>24,tn[Wt+24|0]=pn,tn[Wt+25|0]=pn>>>8,tn[Wt+26|0]=pn>>>16,tn[Wt+27|0]=pn>>>24,tn[Wt+20|0]=on,tn[Wt+21|0]=on>>>8,tn[Wt+22|0]=on>>>16,tn[Wt+23|0]=on>>>24,tn[Wt+16|0]=Pt,tn[Wt+17|0]=Pt>>>8,tn[Wt+18|0]=Pt>>>16,tn[Wt+19|0]=Pt>>>24,tn[Wt+12|0]=cn,tn[Wt+13|0]=cn>>>8,tn[Wt+14|0]=cn>>>16,tn[Wt+15|0]=cn>>>24,tn[Wt+8|0]=rn,tn[Wt+9|0]=rn>>>8,tn[Wt+10|0]=rn>>>16,tn[Wt+11|0]=rn>>>24,tn[Wt+4|0]=sn,tn[Wt+5|0]=sn>>>8,tn[Wt+6|0]=sn>>>16,tn[Wt+7|0]=sn>>>24}function AA(Wt,Pt,en){var nn=0,rn=0,In=0,sn=0,on=0,cn=0,dn=0,un=0,pn=0,mn=0,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0;for(nn=1797285236,dn=2036477234,un=857760878,rn=1634760805,In=an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24,on=an[Pt+8|0]|an[Pt+9|0]<<8|an[Pt+10|0]<<16|an[Pt+11|0]<<24,sn=an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24,An=an[en+28|0]|an[en+29|0]<<8|an[en+30|0]<<16|an[en+31|0]<<24,Zn=an[en+24|0]|an[en+25|0]<<8|an[en+26|0]<<16|an[en+27|0]<<24,Wn=20,Gn=an[en+20|0]|an[en+21|0]<<8|an[en+22|0]<<16|an[en+23|0]<<24,hn=an[en+16|0]|an[en+17|0]<<8|an[en+18|0]<<16|an[en+19|0]<<24,pn=an[en+12|0]|an[en+13|0]<<8|an[en+14|0]<<16|an[en+15|0]<<24,mn=an[en+8|0]|an[en+9|0]<<8|an[en+10|0]<<16|an[en+11|0]<<24,bn=an[en+4|0]|an[en+5|0]<<8|an[en+6|0]<<16|an[en+7|0]<<24,Pt=an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24,en=an[0|en]|an[en+1|0]<<8|an[en+2|0]<<16|an[en+3|0]<<24;cn=gI(en+un|0,7)^In,Nn=gI(cn+un|0,9)^Zn,pn=gI(rn+Gn|0,7)^pn,gn=gI(pn+rn|0,9)^on,yn=gI(gn+pn|0,13)^Gn,mn=gI(nn+hn|0,7)^mn,sn=gI(mn+nn|0,9)^sn,on=gI(sn+mn|0,13)^hn,nn=gI(sn+on|0,18)^nn,In=gI(Pt+dn|0,7)^An,Gn=yn^gI(nn+In|0,7),Zn=Nn^gI(Gn+nn|0,9),An=gI(Gn+Zn|0,13)^In,nn=gI(Zn+An|0,18)^nn,bn=gI(In+dn|0,9)^bn,vn=gI(bn+In|0,13)^Pt,Pt=gI(vn+bn|0,18)^dn,hn=gI(Pt+cn|0,7)^on,on=gI(hn+Pt|0,9)^gn,In=gI(on+hn|0,13)^cn,dn=gI(In+on|0,18)^Pt,cn=gI(cn+Nn|0,13)^en,en=gI(cn+Nn|0,18)^un,Pt=gI(en+pn|0,7)^vn,sn=gI(Pt+en|0,9)^sn,pn=gI(Pt+sn|0,13)^pn,un=gI(sn+pn|0,18)^en,rn=gI(gn+yn|0,18)^rn,en=gI(rn+mn|0,7)^cn,bn=gI(en+rn|0,9)^bn,mn=gI(en+bn|0,13)^mn,rn=gI(bn+mn|0,18)^rn,cn=Wn>>>0>2,Wn=Wn-2|0,cn;);return tn[0|Wt]=rn,tn[Wt+1|0]=rn>>>8,tn[Wt+2|0]=rn>>>16,tn[Wt+3|0]=rn>>>24,tn[Wt+28|0]=In,tn[Wt+29|0]=In>>>8,tn[Wt+30|0]=In>>>16,tn[Wt+31|0]=In>>>24,tn[Wt+24|0]=on,tn[Wt+25|0]=on>>>8,tn[Wt+26|0]=on>>>16,tn[Wt+27|0]=on>>>24,tn[Wt+20|0]=sn,tn[Wt+21|0]=sn>>>8,tn[Wt+22|0]=sn>>>16,tn[Wt+23|0]=sn>>>24,tn[Wt+16|0]=Pt,tn[Wt+17|0]=Pt>>>8,tn[Wt+18|0]=Pt>>>16,tn[Wt+19|0]=Pt>>>24,tn[Wt+12|0]=nn,tn[Wt+13|0]=nn>>>8,tn[Wt+14|0]=nn>>>16,tn[Wt+15|0]=nn>>>24,tn[Wt+8|0]=dn,tn[Wt+9|0]=dn>>>8,tn[Wt+10|0]=dn>>>16,tn[Wt+11|0]=dn>>>24,tn[Wt+4|0]=un,tn[Wt+5|0]=un>>>8,tn[Wt+6|0]=un>>>16,tn[Wt+7|0]=un>>>24,0}function IA(Wt,Pt){var en,an,rn=0,In=0,sn=0,on=0;mn=en=mn-288|0,In=40+((rn=nn[Wt+32>>2]>>>3&63)+Wt|0)|0,rn>>>0>=56?(TA(In,35040,64-rn|0),p(Wt,Wt+40|0,en,en+256|0),nn[Wt+88>>2]=0,nn[Wt+92>>2]=0,nn[Wt+80>>2]=0,nn[Wt+84>>2]=0,nn[Wt+72>>2]=0,nn[Wt+76>>2]=0,nn[(rn=Wt- -64|0)>>2]=0,nn[rn+4>>2]=0,nn[Wt+56>>2]=0,nn[Wt+60>>2]=0,nn[Wt+48>>2]=0,nn[Wt+52>>2]=0,nn[Wt+40>>2]=0,nn[Wt+44>>2]=0):TA(In,35040,56-rn|0),sn=(rn=16711680&(In=nn[Wt+32>>2]))>>>8|0,on=rn<<24,an=(rn=-16777216&In)>>>24|0,rn=(on|=rn<<8)|-16777216&((255&(rn=nn[Wt+36>>2]))<<24|In>>>8)|16711680&((16777215&rn)<<8|In>>>24)|rn>>>8&65280|rn>>>24,tn[Wt+96|0]=rn,tn[Wt+97|0]=rn>>>8,tn[Wt+98|0]=rn>>>16,tn[Wt+99|0]=rn>>>24,rn=sn|an|In<<24|(65280&In)<<8,rn|=sn=0,tn[Wt+100|0]=rn,tn[Wt+101|0]=rn>>>8,tn[Wt+102|0]=rn>>>16,tn[Wt+103|0]=rn>>>24,p(Wt,Wt+40|0,en,en+256|0),rn=(rn=nn[Wt>>2])<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,tn[0|Pt]=rn,tn[Pt+1|0]=rn>>>8,tn[Pt+2|0]=rn>>>16,tn[Pt+3|0]=rn>>>24,rn=(rn=nn[Wt+4>>2])<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,tn[Pt+4|0]=rn,tn[Pt+5|0]=rn>>>8,tn[Pt+6|0]=rn>>>16,tn[Pt+7|0]=rn>>>24,rn=(rn=nn[Wt+8>>2])<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,tn[Pt+8|0]=rn,tn[Pt+9|0]=rn>>>8,tn[Pt+10|0]=rn>>>16,tn[Pt+11|0]=rn>>>24,rn=(rn=nn[Wt+12>>2])<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,tn[Pt+12|0]=rn,tn[Pt+13|0]=rn>>>8,tn[Pt+14|0]=rn>>>16,tn[Pt+15|0]=rn>>>24,rn=(rn=nn[Wt+16>>2])<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,tn[Pt+16|0]=rn,tn[Pt+17|0]=rn>>>8,tn[Pt+18|0]=rn>>>16,tn[Pt+19|0]=rn>>>24,rn=(rn=nn[Wt+20>>2])<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,tn[Pt+20|0]=rn,tn[Pt+21|0]=rn>>>8,tn[Pt+22|0]=rn>>>16,tn[Pt+23|0]=rn>>>24,rn=(rn=nn[Wt+24>>2])<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,tn[Pt+24|0]=rn,tn[Pt+25|0]=rn>>>8,tn[Pt+26|0]=rn>>>16,tn[Pt+27|0]=rn>>>24,rn=(rn=nn[Wt+28>>2])<<24|(65280&rn)<<8|rn>>>8&65280|rn>>>24,tn[Pt+28|0]=rn,tn[Pt+29|0]=rn>>>8,tn[Pt+30|0]=rn>>>16,tn[Pt+31|0]=rn>>>24,MI(en,288),MI(Wt,104),mn=en+288|0}function gA(Wt,Pt,en){var rn,In=0,sn=0,on=0,cn=0,dn=0,un=0,pn=0,bn=0;if(mn=rn=mn-96|0,en>>>0>=65&&(RA(Wt),BA(Wt,Pt,en),IA(Wt,rn),en=32,Pt=rn),RA(Wt),nn[rn+88>>2]=909522486,nn[rn+92>>2]=909522486,nn[rn+80>>2]=909522486,nn[rn+84>>2]=909522486,nn[rn+72>>2]=909522486,nn[rn+76>>2]=909522486,nn[(on=pn=rn- -64|0)>>2]=909522486,nn[on+4>>2]=909522486,nn[rn+56>>2]=909522486,nn[rn+60>>2]=909522486,nn[rn+48>>2]=909522486,nn[rn+52>>2]=909522486,nn[rn+40>>2]=909522486,nn[rn+44>>2]=909522486,nn[rn+32>>2]=909522486,nn[rn+36>>2]=909522486,en){if(en>>>0>=4)for(cn=124&en;tn[0|(sn=(on=rn+32|0)+In|0)]=an[0|sn]^an[Pt+In|0],tn[0|(bn=(sn=1|In)+on|0)]=an[0|bn]^an[Pt+sn|0],tn[0|(bn=(sn=2|In)+on|0)]=an[0|bn]^an[Pt+sn|0],tn[0|(sn=(sn=on)+(on=3|In)|0)]=an[0|sn]^an[Pt+on|0],In=In+4|0,(0|cn)!=(0|(dn=dn+4|0)););if(dn=3&en)for(;tn[0|(on=(rn+32|0)+In|0)]=an[0|on]^an[Pt+In|0],In=In+1|0,(0|dn)!=(0|(un=un+1|0)););}if(BA(Wt,rn+32|0,64),RA(on=Wt+104|0),nn[rn+88>>2]=1549556828,nn[rn+92>>2]=1549556828,nn[rn+80>>2]=1549556828,nn[rn+84>>2]=1549556828,nn[rn+72>>2]=1549556828,nn[rn+76>>2]=1549556828,nn[pn>>2]=1549556828,nn[pn+4>>2]=1549556828,nn[rn+56>>2]=1549556828,nn[rn+60>>2]=1549556828,nn[rn+48>>2]=1549556828,nn[rn+52>>2]=1549556828,nn[rn+40>>2]=1549556828,nn[rn+44>>2]=1549556828,nn[rn+32>>2]=1549556828,nn[rn+36>>2]=1549556828,en){if(un=0,In=0,en>>>0>=4)for(pn=124&en,dn=0;tn[0|(cn=(Wt=rn+32|0)+In|0)]=an[0|cn]^an[Pt+In|0],tn[0|(sn=(cn=1|In)+Wt|0)]=an[0|sn]^an[Pt+cn|0],tn[0|(sn=(cn=2|In)+Wt|0)]=an[0|sn]^an[Pt+cn|0],tn[0|(cn=(sn=Wt)+(Wt=3|In)|0)]=an[0|cn]^an[Wt+Pt|0],In=In+4|0,(0|pn)!=(0|(dn=dn+4|0)););if(Wt=3&en)for(;tn[0|(en=(rn+32|0)+In|0)]=an[0|en]^an[Pt+In|0],In=In+1|0,(0|Wt)!=(0|(un=un+1|0)););}return BA(on,Wt=rn+32|0,64),MI(Wt,64),MI(rn,32),mn=rn+96|0,0}function CA(Wt,Pt,en,tn,an,rn,In){var sn=0,on=0,cn=0,dn=0,un=0,pn=0,bn=0;if(Pt-65>>>0<4294967232|In>>>0>64)Wt=-1;else{pn=sn=mn,mn=sn=sn-512&-64;e:{t:if(!(!(!(tn|an)|en)|!Wt|((on=255&Pt)-65&255)>>>0<=191|!(!(Pt=255&In)||rn)|Pt>>>0>=65)){if(Pt){if(!rn)break t;VA(sn- -64|0,0,293),nn[sn+56>>2]=327033209,nn[sn+60>>2]=1541459225,nn[sn+48>>2]=-79577749,nn[sn+52>>2]=528734635,nn[sn+40>>2]=725511199,nn[sn+44>>2]=-1694144372,nn[sn+32>>2]=-1377402159,nn[sn+36>>2]=1359893119,nn[sn+24>>2]=1595750129,nn[sn+28>>2]=-1521486534,nn[sn+16>>2]=-23791573,nn[sn+20>>2]=1013904242,nn[sn+8>>2]=-2067093701,nn[sn+12>>2]=-1150833019,nn[sn>>2]=-222443256^(Pt<<8|on),nn[sn+4>>2]=Pt>>>24^1779033703,VA((In=sn+384|0)+Pt|0,0,128-Pt|0),TA(In,rn,Pt),TA(sn+96|0,In,128),nn[sn+352>>2]=128,MI(In,128),Pt=128}else VA(sn- -64|0,0,293),nn[sn+56>>2]=327033209,nn[sn+60>>2]=1541459225,nn[sn+48>>2]=-79577749,nn[sn+52>>2]=528734635,nn[sn+40>>2]=725511199,nn[sn+44>>2]=-1694144372,nn[sn+32>>2]=-1377402159,nn[sn+36>>2]=1359893119,nn[sn+24>>2]=1595750129,nn[sn+28>>2]=-1521486534,nn[sn+16>>2]=-23791573,nn[sn+20>>2]=1013904242,nn[sn+8>>2]=-2067093701,nn[sn+12>>2]=-1150833019,nn[sn>>2]=-222443256^on,nn[sn+4>>2]=1779033703,Pt=0;n:if(tn|an)for(bn=sn+224|0,cn=sn+96|0;;){if(In=Pt+cn|0,!an&tn>>>0<=(rn=256-Pt|0)>>>0){TA(In,en,tn),nn[sn+352>>2]=tn+nn[sn+352>>2];break n}if(TA(In,en,rn),nn[sn+352>>2]=rn+nn[sn+352>>2],dn=Pt=nn[sn+68>>2],Pt=(un=(In=nn[sn+64>>2])+128|0)>>>0<128?Pt+1|0:Pt,nn[sn+64>>2]=un,nn[sn+68>>2]=Pt,Pt=nn[sn+76>>2],Pt=(dn=In=-1==(0|dn)&In>>>0>4294967167)>>>0>(In=In+nn[sn+72>>2]|0)>>>0?Pt+1|0:Pt,nn[sn+72>>2]=In,nn[sn+76>>2]=Pt,h(sn,cn),TA(cn,bn,128),Pt=nn[sn+352>>2]-128|0,nn[sn+352>>2]=Pt,en=en+rn|0,!((an=an-(tn>>>0>>0)|0)|(tn=tn-rn|0)))break}m(sn,Wt,on),mn=pn;break e}iI(),Q()}Wt=0}return Wt}function BA(Wt,Pt,en){var rn,In=0,sn=0,on=0,cn=0,dn=0,un=0,pn=0,bn=0,Gn=0,hn=0,Zn=0;if(mn=rn=mn-288|0,en)if(In=nn[Wt+36>>2],un=(cn=nn[Wt+32>>2])+(dn=en<<3)|0,nn[Wt+32>>2]=un,on=(en>>>29|0)+In|0,nn[Wt+36>>2]=dn>>>0>un>>>0?on+1|0:on,dn=Wt+40|0,!0&(on=64-(un=63&((7&In)<<29|cn>>>3))|0)>>>0<=en>>>0){if(In=0,cn=0,(63^un)>>>0>=3)for(Zn=124&on;tn[(In+un|0)+dn|0]=an[Pt+In|0],tn[(un+(Gn=1|In)|0)+dn|0]=an[Pt+Gn|0],tn[(un+(Gn=2|In)|0)+dn|0]=an[Pt+Gn|0],tn[(un+(Gn=3|In)|0)+dn|0]=an[Pt+Gn|0],cn=(In=In+4|0)>>>0<4?cn+1|0:cn,(sn=(hn=hn+4|0)>>>0<4?sn+1|0:sn)|(0|hn)!=(0|Zn););if(sn=3&on)for(;tn[(In+un|0)+dn|0]=an[Pt+In|0],cn=(In=In+1|0)?cn:cn+1|0,(pn=(bn=bn+1|0)?pn:pn+1|0)|(0|sn)!=(0|bn););if(p(Wt,dn,rn,pn=rn+256|0),Pt=Pt+on|0,!(sn=0-((en>>>0>>0)+0|0)|0)&(en=en-on|0)>>>0>63|sn)for(;p(Wt,Pt,rn,pn),Pt=Pt- -64|0,sn=sn-1|0,!(sn=(en=en+-64|0)>>>0<4294967232?sn+1|0:sn)&en>>>0>63|sn;);if(en|sn){if(Wt=3&en,bn=0,pn=0,In=0,cn=0,!sn&en>>>0>=4|sn)for(un=60&en,en=0,sn=0;tn[In+dn|0]=an[Pt+In|0],tn[(on=1|In)+dn|0]=an[Pt+on|0],tn[(on=2|In)+dn|0]=an[Pt+on|0],tn[(on=3|In)+dn|0]=an[Pt+on|0],cn=(In=In+4|0)>>>0<4?cn+1|0:cn,(sn=(en=en+4|0)>>>0<4?sn+1|0:sn)|(0|en)!=(0|un););if(Wt)for(;tn[In+dn|0]=an[Pt+In|0],cn=(In=In+1|0)?cn:cn+1|0,(pn=(bn=bn+1|0)?pn:pn+1|0)|(0|Wt)!=(0|bn););}MI(rn,288)}else{if(In=0,cn=0,en>>>0>=4)for(Wt=-4&en;tn[(In+un|0)+dn|0]=an[Pt+In|0],tn[(un+(on=1|In)|0)+dn|0]=an[Pt+on|0],tn[(un+(on=2|In)|0)+dn|0]=an[Pt+on|0],tn[(un+(on=3|In)|0)+dn|0]=an[Pt+on|0],cn=(In=In+4|0)>>>0<4?cn+1|0:cn,(sn=(hn=hn+4|0)>>>0<4?sn+1|0:sn)|(0|Wt)!=(0|hn););if(Wt=3&en)for(;tn[(In+un|0)+dn|0]=an[Pt+In|0],cn=(In=In+1|0)?cn:cn+1|0,(pn=(bn=bn+1|0)?pn:pn+1|0)|(0|Wt)!=(0|bn););}mn=rn+288|0}function QA(Wt,Pt,en,rn){var In=0,sn=0,on=0,cn=0,dn=0,un=0,pn=0,mn=0,bn=0,Gn=0,hn=0,Zn=0;e:{if((sn=nn[Wt+56>>2])|(In=nn[Wt+60>>2])){if(mn=cn=16-sn|0,un=(cn=(0|(on=0-((sn>>>0>16)+In|0)|0))==(0|rn)&en>>>0>cn>>>0|rn>>>0>on>>>0)?mn:en,mn=cn=cn?on:rn,cn|un){if(cn=Wt- -64|0,on=0,sn=0,!mn&un>>>0>=4|mn)for(pn=-4&un;In=on+nn[Wt+56>>2]|0,tn[In+cn|0]=an[Pt+on|0],In=(bn=1|on)+nn[Wt+56>>2]|0,tn[In+cn|0]=an[Pt+bn|0],In=(bn=2|on)+nn[Wt+56>>2]|0,tn[In+cn|0]=an[Pt+bn|0],In=(bn=3|on)+nn[Wt+56>>2]|0,tn[In+cn|0]=an[Pt+bn|0],In=sn,sn=(on=on+4|0)>>>0<4?In+1|0:In,In=hn,hn=In=(dn=dn+4|0)>>>0<4?In+1|0:In,(0|dn)!=(0|pn)|(0|mn)!=(0|In););if(hn=In=0,In|(dn=3&un))for(;In=on+nn[Wt+56>>2]|0,tn[In+cn|0]=an[Pt+on|0],sn=(on=on+1|0)?sn:sn+1|0,In=Zn,Zn=In=(Gn=Gn+1|0)?In:In+1|0,(0|dn)!=(0|Gn)|(0|hn)!=(0|In););sn=nn[Wt+56>>2],In=nn[Wt+60>>2]}if(In=In+mn|0,In=(sn=sn+un|0)>>>0>>0?In+1|0:In,nn[Wt+56>>2]=sn,nn[Wt+60>>2]=In,!In&sn>>>0<16)break e;z(Wt,Wt- -64|0,16,0),nn[Wt+56>>2]=0,nn[Wt+60>>2]=0,en=(sn=en)-un|0,rn=rn-((sn>>>0>>0)+mn|0)|0,Pt=Pt+un|0}if(!rn&en>>>0>=16|rn&&(z(Wt,Pt,sn=-16&en,rn),en&=15,rn=0,Pt=Pt+sn|0),en|rn){if(cn=Wt- -64|0,Gn=0,Zn=0,on=0,sn=0,!rn&en>>>0>=4|rn)for(un=12&en,mn=0,dn=0;In=on+nn[Wt+56>>2]|0,tn[In+cn|0]=an[Pt+on|0],In=(pn=1|on)+nn[Wt+56>>2]|0,tn[In+cn|0]=an[Pt+pn|0],In=(pn=2|on)+nn[Wt+56>>2]|0,tn[In+cn|0]=an[Pt+pn|0],In=(pn=3|on)+nn[Wt+56>>2]|0,tn[In+cn|0]=an[Pt+pn|0],sn=(on=on+4|0)>>>0<4?sn+1|0:sn,In=hn,hn=In=(dn=dn+4|0)>>>0<4?In+1|0:In,(0|un)!=(0|dn)|(0|mn)!=(0|In););if(hn=In=0,In|(dn=3&en))for(;In=on+nn[Wt+56>>2]|0,tn[In+cn|0]=an[Pt+on|0],sn=(on=on+1|0)?sn:sn+1|0,In=Zn,Zn=In=(Gn=Gn+1|0)?In:In+1|0,(0|dn)!=(0|Gn)|(0|hn)!=(0|In););sn=rn+nn[Wt+60>>2]|0,sn=(Pt=en+nn[Wt+56>>2]|0)>>>0>>0?sn+1|0:sn,nn[Wt+56>>2]=Pt,nn[Wt+60>>2]=sn}}}function EA(Wt,Pt,en){var tn,an=0,rn=0,In=0,sn=0,on=0,cn=0,dn=0,un=0,pn=0,mn=0,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0;Gn=nn[Pt+4>>2],an=nn[Wt+4>>2],hn=nn[Pt+8>>2],rn=nn[Wt+8>>2],Zn=nn[Pt+12>>2],In=nn[Wt+12>>2],An=nn[Pt+16>>2],sn=nn[Wt+16>>2],Wn=nn[Pt+20>>2],on=nn[Wt+20>>2],mn=nn[Pt+24>>2],cn=nn[Wt+24>>2],Nn=nn[Pt+28>>2],dn=nn[Wt+28>>2],gn=nn[Pt+32>>2],un=nn[Wt+32>>2],yn=nn[Pt+36>>2],pn=nn[Wt+36>>2],en=0-en|0,bn=nn[Wt>>2],nn[Wt>>2]=en&(bn^nn[Pt>>2])^bn,nn[Wt+36>>2]=pn^en&(pn^yn),nn[Wt+32>>2]=un^en&(un^gn),nn[Wt+28>>2]=dn^en&(dn^Nn),nn[Wt+24>>2]=cn^en&(cn^mn),nn[Wt+20>>2]=on^en&(on^Wn),nn[Wt+16>>2]=sn^en&(sn^An),nn[Wt+12>>2]=In^en&(In^Zn),nn[Wt+8>>2]=rn^en&(rn^hn),nn[Wt+4>>2]=an^en&(an^Gn),an=nn[Wt+44>>2],Gn=nn[Pt+44>>2],rn=nn[Wt+48>>2],hn=nn[Pt+48>>2],In=nn[Wt+52>>2],Zn=nn[Pt+52>>2],sn=nn[Wt+56>>2],An=nn[Pt+56>>2],on=nn[Wt+60>>2],Wn=nn[Pt+60>>2],cn=nn[(mn=Wt- -64|0)>>2],Nn=nn[Pt- -64>>2],dn=nn[Wt+68>>2],gn=nn[Pt+68>>2],un=nn[Wt+72>>2],yn=nn[Pt+72>>2],pn=nn[Wt+40>>2],bn=nn[Pt+40>>2],tn=nn[Wt+76>>2],nn[Wt+76>>2]=tn^en&(nn[Pt+76>>2]^tn),nn[Wt+72>>2]=un^en&(un^yn),nn[Wt+68>>2]=dn^en&(dn^gn),nn[mn>>2]=cn^en&(cn^Nn),nn[Wt+60>>2]=on^en&(on^Wn),nn[Wt+56>>2]=sn^en&(sn^An),nn[Wt+52>>2]=In^en&(In^Zn),nn[Wt+48>>2]=rn^en&(rn^hn),nn[Wt+44>>2]=an^en&(an^Gn),nn[Wt+40>>2]=pn^en&(pn^bn),an=nn[Wt+84>>2],Gn=nn[Pt+84>>2],rn=nn[Wt+88>>2],hn=nn[Pt+88>>2],In=nn[Wt+92>>2],Zn=nn[Pt+92>>2],sn=nn[Wt+96>>2],An=nn[Pt+96>>2],on=nn[Wt+100>>2],Wn=nn[Pt+100>>2],cn=nn[Wt+104>>2],mn=nn[Pt+104>>2],dn=nn[Wt+108>>2],Nn=nn[Pt+108>>2],un=nn[Wt+112>>2],gn=nn[Pt+112>>2],pn=nn[Wt+80>>2],yn=nn[Pt+80>>2],bn=nn[Pt+116>>2],Pt=nn[Wt+116>>2],nn[Wt+116>>2]=en&(bn^Pt)^Pt,nn[Wt+112>>2]=un^en&(un^gn),nn[Wt+108>>2]=dn^en&(dn^Nn),nn[Wt+104>>2]=cn^en&(cn^mn),nn[Wt+100>>2]=on^en&(on^Wn),nn[Wt+96>>2]=sn^en&(sn^An),nn[Wt+92>>2]=In^en&(In^Zn),nn[Wt+88>>2]=rn^en&(rn^hn),nn[Wt+84>>2]=an^en&(an^Gn),nn[Wt+80>>2]=pn^en&(pn^yn)}function iA(Wt,Pt){var en,tn,nn=0;for(mn=en=mn-192|0,U(tn=en+144|0,Pt),U(nn=en+96|0,tn),U(nn,nn),M(nn,Pt,nn),M(tn,tn,nn),U(Pt=en+48|0,tn),M(nn,nn,Pt),U(Pt,nn),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),M(nn,Pt,nn),U(Pt,nn),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),M(Pt,Pt,nn),U(en,Pt),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),U(en,en),M(Pt,en,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),M(nn,Pt,nn),U(Pt,nn),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),M(Pt,Pt,nn),U(en,Pt),Pt=1;U(en,en),100!=(0|(Pt=Pt+1|0)););M(Pt=en+48|0,en,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),U(Pt,Pt),M(nn=en+96|0,Pt,nn),U(nn,nn),U(nn,nn),U(nn,nn),U(nn,nn),U(nn,nn),M(Wt,nn,en+144|0),mn=en+192|0}function oA(Wt,Pt,en){var tn,an,rn,sn,on,cn,dn,un,pn=0;mn=tn=mn-128|0,nn[Wt>>2]=1,nn[Wt+4>>2]=0,nn[Wt+8>>2]=0,nn[Wt+12>>2]=0,nn[Wt+16>>2]=0,nn[Wt+20>>2]=0,nn[Wt+24>>2]=0,nn[Wt+28>>2]=0,nn[Wt+32>>2]=0,nn[Wt+36>>2]=0,nn[Wt+40>>2]=1,VA(Wt+44|0,0,76),EA(Wt,Pt=In(Pt,960)+2688|0,(255&(1^(pn=en-((en>>31&en)<<1)|0)))-1>>>31|0),EA(Wt,Pt+120|0,(255&(2^pn))-1>>>31|0),EA(Wt,Pt+240|0,(255&(3^pn))-1>>>31|0),EA(Wt,Pt+360|0,(255&(4^pn))-1>>>31|0),EA(Wt,Pt+480|0,(255&(5^pn))-1>>>31|0),EA(Wt,Pt+600|0,(255&(6^pn))-1>>>31|0),EA(Wt,Pt+720|0,(255&(7^pn))-1>>>31|0),EA(Wt,Pt+840|0,(255&(8^pn))-1>>>31|0),Pt=nn[Wt+76>>2],nn[tn+40>>2]=nn[Wt+72>>2],nn[tn+44>>2]=Pt,pn=nn[4+(Pt=Wt- -64|0)>>2],nn[tn+32>>2]=nn[Pt>>2],nn[tn+36>>2]=pn,Pt=nn[Wt+60>>2],nn[tn+24>>2]=nn[Wt+56>>2],nn[tn+28>>2]=Pt,Pt=nn[Wt+52>>2],nn[tn+16>>2]=nn[Wt+48>>2],nn[tn+20>>2]=Pt,Pt=nn[Wt+44>>2],nn[tn+8>>2]=nn[Wt+40>>2],nn[tn+12>>2]=Pt,Pt=nn[Wt+12>>2],nn[tn+56>>2]=nn[Wt+8>>2],nn[tn+60>>2]=Pt,pn=nn[Wt+20>>2],nn[(Pt=tn- -64|0)>>2]=nn[Wt+16>>2],nn[Pt+4>>2]=pn,Pt=nn[Wt+28>>2],nn[tn+72>>2]=nn[Wt+24>>2],nn[tn+76>>2]=Pt,Pt=nn[Wt+36>>2],nn[tn+80>>2]=nn[Wt+32>>2],nn[tn+84>>2]=Pt,Pt=nn[Wt+4>>2],nn[tn+48>>2]=nn[Wt>>2],nn[tn+52>>2]=Pt,Pt=nn[Wt+84>>2],pn=nn[Wt+88>>2],an=nn[Wt+92>>2],rn=nn[Wt+96>>2],sn=nn[Wt+100>>2],on=nn[Wt+104>>2],cn=nn[Wt+108>>2],dn=nn[Wt+112>>2],un=nn[Wt+80>>2],nn[tn+124>>2]=0-nn[Wt+116>>2],nn[tn+120>>2]=0-dn,nn[tn+116>>2]=0-cn,nn[tn+112>>2]=0-on,nn[tn+108>>2]=0-sn,nn[tn+104>>2]=0-rn,nn[tn+100>>2]=0-an,nn[tn+96>>2]=0-pn,nn[tn+92>>2]=0-Pt,nn[tn+88>>2]=0-un,EA(Wt,tn+8|0,(128&en)>>>7|0),mn=tn+128|0}function cA(Wt,Pt,en,nn){var rn=0,In=0,sn=0,on=0,cn=0,dn=0,un=0;if(en|nn)e:for(un=Wt+224|0,cn=Wt+96|0,In=an[Wt+352|0]|an[Wt+353|0]<<8|an[Wt+354|0]<<16|an[Wt+355|0]<<24;;){if(rn=In+cn|0,!nn&en>>>0<=(sn=256-In|0)>>>0){TA(rn,Pt,en),Pt=en+(an[Wt+352|0]|an[Wt+353|0]<<8|an[Wt+354|0]<<16|an[Wt+355|0]<<24)|0,tn[Wt+352|0]=Pt,tn[Wt+353|0]=Pt>>>8,tn[Wt+354|0]=Pt>>>16,tn[Wt+355|0]=Pt>>>24;break e}if(TA(rn,Pt,sn),rn=(an[Wt+352|0]|an[Wt+353|0]<<8|an[Wt+354|0]<<16|an[Wt+355|0]<<24)+sn|0,tn[Wt+352|0]=rn,tn[Wt+353|0]=rn>>>8,tn[Wt+354|0]=rn>>>16,tn[Wt+355|0]=rn>>>24,dn=In=an[Wt+68|0]|an[Wt+69|0]<<8|an[Wt+70|0]<<16|an[Wt+71|0]<<24,In=(on=128+(rn=an[Wt+64|0]|an[Wt+65|0]<<8|an[Wt+66|0]<<16|an[Wt+67|0]<<24)|0)>>>0<128?In+1|0:In,tn[Wt+64|0]=on,tn[Wt+65|0]=on>>>8,tn[Wt+66|0]=on>>>16,tn[Wt+67|0]=on>>>24,tn[Wt+68|0]=In,tn[Wt+69|0]=In>>>8,tn[Wt+70|0]=In>>>16,tn[Wt+71|0]=In>>>24,In=an[Wt+76|0]|an[Wt+77|0]<<8|an[Wt+78|0]<<16|an[Wt+79|0]<<24,In=(dn=rn=-1==(0|dn)&rn>>>0>4294967167)>>>0>(rn=rn+(an[Wt+72|0]|an[Wt+73|0]<<8|an[Wt+74|0]<<16|an[Wt+75|0]<<24)|0)>>>0?In+1|0:In,tn[Wt+72|0]=rn,tn[Wt+73|0]=rn>>>8,tn[Wt+74|0]=rn>>>16,tn[Wt+75|0]=rn>>>24,tn[Wt+76|0]=In,tn[Wt+77|0]=In>>>8,tn[Wt+78|0]=In>>>16,tn[Wt+79|0]=In>>>24,h(Wt,cn),TA(cn,un,128),rn=In=(an[Wt+352|0]|an[Wt+353|0]<<8|an[Wt+354|0]<<16|an[Wt+355|0]<<24)-128|0,tn[Wt+352|0]=rn,tn[Wt+353|0]=rn>>>8,tn[Wt+354|0]=rn>>>16,tn[Wt+355|0]=rn>>>24,Pt=Pt+sn|0,!((nn=nn-(en>>>0>>0)|0)|(en=en-sn|0)))break}return 0}function DA(Wt,Pt){var en,tn=0,an=0,rn=0,In=0,sn=0,on=0,cn=0,dn=0,un=0,pn=0,mn=0,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0;tn=nn[Pt+4>>2],rn=nn[Pt+44>>2],In=nn[Pt+8>>2],sn=nn[Pt+48>>2],on=nn[Pt+12>>2],cn=nn[Pt+52>>2],dn=nn[Pt+16>>2],un=nn[Pt+56>>2],pn=nn[Pt+20>>2],mn=nn[Pt+60>>2],bn=nn[Pt+24>>2],Gn=nn[(an=Pt- -64|0)>>2],hn=nn[Pt+28>>2],Zn=nn[Pt+68>>2],An=nn[Pt+32>>2],Wn=nn[Pt+72>>2],Nn=nn[Pt+36>>2],en=nn[Pt+76>>2],nn[Wt>>2]=nn[Pt>>2]+nn[Pt+40>>2],nn[Wt+36>>2]=Nn+en,nn[Wt+32>>2]=An+Wn,nn[Wt+28>>2]=hn+Zn,nn[Wt+24>>2]=bn+Gn,nn[Wt+20>>2]=pn+mn,nn[Wt+16>>2]=dn+un,nn[Wt+12>>2]=on+cn,nn[Wt+8>>2]=In+sn,nn[Wt+4>>2]=tn+rn,tn=nn[Pt+4>>2],rn=nn[Pt+44>>2],In=nn[Pt+8>>2],sn=nn[Pt+48>>2],on=nn[Pt+12>>2],cn=nn[Pt+52>>2],dn=nn[Pt+16>>2],un=nn[Pt+56>>2],pn=nn[Pt+20>>2],mn=nn[Pt+60>>2],bn=nn[Pt+24>>2],an=nn[an>>2],Gn=nn[Pt+28>>2],hn=nn[Pt+68>>2],Zn=nn[Pt+32>>2],An=nn[Pt+72>>2],Wn=nn[Pt>>2],Nn=nn[Pt+40>>2],nn[Wt+76>>2]=nn[Pt+76>>2]-nn[Pt+36>>2],nn[Wt+72>>2]=An-Zn,nn[Wt+68>>2]=hn-Gn,nn[Wt- -64>>2]=an-bn,nn[Wt+60>>2]=mn-pn,nn[Wt+56>>2]=un-dn,nn[Wt+52>>2]=cn-on,nn[Wt+48>>2]=sn-In,nn[Wt+44>>2]=rn-tn,nn[Wt+40>>2]=Nn-Wn,tn=nn[Pt+84>>2],nn[Wt+80>>2]=nn[Pt+80>>2],nn[Wt+84>>2]=tn,tn=nn[Pt+92>>2],nn[Wt+88>>2]=nn[Pt+88>>2],nn[Wt+92>>2]=tn,tn=nn[Pt+100>>2],nn[Wt+96>>2]=nn[Pt+96>>2],nn[Wt+100>>2]=tn,tn=nn[Pt+108>>2],nn[Wt+104>>2]=nn[Pt+104>>2],nn[Wt+108>>2]=tn,tn=nn[Pt+116>>2],nn[Wt+112>>2]=nn[Pt+112>>2],nn[Wt+116>>2]=tn,M(Wt+120|0,Pt+120|0,1424)}function aA(Wt,Pt,en){var tn,an,rn,In,sn,on,cn,dn,un,pn,bn,Gn,hn=0,Zn=0,An=0,Wn=0,Nn=0;hn=nn[Pt+12>>2],Zn=nn[Pt+8>>2],An=nn[Pt+4>>2],tn=mn+-64&-64,Pt=nn[Pt>>2],nn[tn>>2]=nn[35248+((255&Pt)<<2)>>2],nn[tn+4>>2]=nn[35248+(An>>>6&1020)>>2],nn[tn+8>>2]=nn[35248+(Zn>>>14&1020)>>2],nn[tn+12>>2]=nn[35248+(hn>>>22&1020)>>2],nn[tn+16>>2]=nn[35248+((255&An)<<2)>>2],nn[tn+20>>2]=nn[35248+(Zn>>>6&1020)>>2],nn[tn+24>>2]=nn[35248+(hn>>>14&1020)>>2],nn[tn+28>>2]=nn[35248+(Pt>>>22&1020)>>2],nn[tn+32>>2]=nn[35248+((255&Zn)<<2)>>2],nn[tn+36>>2]=nn[35248+(hn>>>6&1020)>>2],nn[tn+40>>2]=nn[35248+(Pt>>>14&1020)>>2],nn[tn+44>>2]=nn[35248+(An>>>22&1020)>>2],nn[tn+48>>2]=nn[35248+((255&hn)<<2)>>2],nn[tn+52>>2]=nn[35248+(Pt>>>6&1020)>>2],nn[tn+56>>2]=nn[35248+(An>>>14&1020)>>2],nn[tn+60>>2]=nn[35248+(Zn>>>22&1020)>>2],Pt=nn[tn+12>>2],hn=nn[tn>>2],Zn=nn[tn+4>>2],An=nn[tn+8>>2],an=nn[tn+28>>2],rn=nn[tn+16>>2],In=nn[tn+20>>2],sn=nn[tn+24>>2],on=nn[tn+44>>2],cn=nn[tn+32>>2],dn=nn[tn+36>>2],un=nn[tn+40>>2],pn=nn[en>>2],bn=nn[en+4>>2],Gn=nn[en+8>>2],Wn=Wt,Nn=nn[en+12>>2]^nn[tn+48>>2]^gI(nn[tn+52>>2],8)^gI(nn[tn+56>>2],16)^gI(nn[tn+60>>2],24),nn[Wn+12>>2]=Nn,Wn=Wt,Nn=gI(dn,8)^cn^gI(un,16)^gI(on,24)^Gn,nn[Wn+8>>2]=Nn,Wn=Wt,Nn=gI(In,8)^rn^gI(sn,16)^gI(an,24)^bn,nn[Wn+4>>2]=Nn,Wn=Wt,Nn=gI(Zn,8)^hn^gI(An,16)^gI(Pt,24)^pn,nn[Wn>>2]=Nn}function yA(Wt,Pt){var en,an,rn,sn,on,cn=0,dn=0,un=0,pn=0,mn=0,bn=0,Gn=0,hn=0,Zn=0,An=0;(cn=nn[Wt+56>>2])|(dn=nn[Wt+60>>2])&&(tn[(pn=Wt- -64|0)+cn|0]=1,!((An=cn+1|0)?dn:dn+1|0)&An>>>0<=15&&VA(65+(Wt+cn|0)|0,0,15-cn|0),tn[Wt+80|0]=1,z(Wt,pn,16,0)),An=nn[Wt+52>>2],hn=nn[Wt+48>>2],pn=nn[Wt+44>>2],cn=nn[Wt+24>>2],mn=nn[Wt+28>>2]+(cn>>>26|0)|0,un=nn[Wt+32>>2]+(mn>>>26|0)|0,en=nn[Wt+36>>2]+(un>>>26|0)|0,dn=(Gn=(cn=(cn=(67108863&cn)+((bn=nn[Wt+20>>2]+In(en>>>26|0,5)|0)>>>26|0)|0)&(mn=(un=(on=(67108863&en)+((sn=(an=67108863&un)+((rn=(Zn=67108863&mn)+((bn=cn+((dn=5+(Gn=67108863&bn)|0)>>>26|0)|0)>>>26|0)|0)>>>26|0)|0)>>>26|0)|0)-67108864|0)>>31)|bn&(un=67108863&(bn=(un>>>31|0)-1|0)))<<26|dn&un|mn&Gn)+nn[Wt+40>>2]|0,tn[0|Pt]=dn,tn[Pt+1|0]=dn>>>8,tn[Pt+2|0]=dn>>>16,tn[Pt+3|0]=dn>>>24,Gn=dn>>>0>>0,dn=0,dn=(cn=(Zn=mn&Zn|un&rn)<<20|cn>>>6)>>>0>(cn=cn+pn|0)>>>0?1:dn,dn=(pn=cn)>>>0>(cn=cn+Gn|0)>>>0?dn+1|0:dn,tn[Pt+4|0]=cn,tn[Pt+5|0]=cn>>>8,tn[Pt+6|0]=cn>>>16,tn[Pt+7|0]=cn>>>24,cn=0,pn=(pn=(un=mn&an|un&sn)<<14|Zn>>>12)>>>0>(hn=pn+hn|0)>>>0?1:cn,cn=hn,hn=dn,cn=cn+dn|0,dn=pn,dn=cn>>>0>>0?dn+1|0:dn,tn[Pt+8|0]=cn,tn[Pt+9|0]=cn>>>8,tn[Pt+10|0]=cn>>>16,tn[Pt+11|0]=cn>>>24,dn=(cn=(cn=(bn&on|mn&en)<<8|un>>>18)+An|0)+dn|0,tn[Pt+12|0]=dn,tn[Pt+13|0]=dn>>>8,tn[Pt+14|0]=dn>>>16,tn[Pt+15|0]=dn>>>24,MI(Wt,88)}function fA(Wt,Pt,en){var rn,In=0;return mn=rn=mn-16|0,tn[rn+15|0]=0,In=-1,0|hn[nn[8806]](Wt,Pt,en)||(tn[rn+15|0]=an[0|Wt]|an[rn+15|0],tn[rn+15|0]=an[Wt+1|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+2|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+3|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+4|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+5|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+6|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+7|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+8|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+9|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+10|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+11|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+12|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+13|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+14|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+15|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+16|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+17|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+18|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+19|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+20|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+21|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+22|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+23|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+24|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+25|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+26|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+27|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+28|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+29|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+30|0]|an[rn+15|0],tn[rn+15|0]=an[Wt+31|0]|an[rn+15|0],In=(an[rn+15|0]<<23)-8388608>>31),mn=rn+16|0,In}function eA(Wt,Pt){var en,an,rn,sn,on,cn,dn,un=0,pn=0;an=nn[Pt+32>>2],rn=nn[Pt+28>>2],sn=nn[Pt+24>>2],on=nn[Pt+20>>2],cn=nn[Pt+16>>2],dn=nn[Pt+12>>2],un=nn[Pt+4>>2],pn=nn[Pt>>2],en=nn[Pt+36>>2],Pt=nn[Pt+8>>2],pn=In((an+(rn+(sn+(on+(cn+(dn+((un+(pn+(In(en,19)+16777216>>>25|0)>>26)>>25)+Pt>>26)>>25)>>26)>>25)>>26)>>25)>>26)+en>>25,19)+pn|0,tn[0|Wt]=pn,tn[Wt+2|0]=pn>>>16,tn[Wt+1|0]=pn>>>8,un=un+(pn>>26)|0,tn[Wt+5|0]=un>>>14,tn[Wt+4|0]=un>>>6,tn[Wt+3|0]=pn>>>24&3|un<<2,Pt=Pt+(un>>25)|0,tn[Wt+8|0]=Pt>>>13,tn[Wt+7|0]=Pt>>>5,tn[Wt+6|0]=Pt<<3|(29360128&un)>>>22,pn=(Pt>>26)+dn|0,tn[Wt+11|0]=pn>>>11,tn[Wt+10|0]=pn>>>3,tn[Wt+9|0]=pn<<5|(65011712&Pt)>>>21,un=(pn>>25)+cn|0,tn[Wt+15|0]=un>>>18,tn[Wt+14|0]=un>>>10,tn[Wt+13|0]=un>>>2,Pt=(un>>26)+on|0,tn[Wt+16|0]=Pt,tn[Wt+12|0]=un<<6|(33030144&pn)>>>19,tn[Wt+18|0]=Pt>>>16,tn[Wt+17|0]=Pt>>>8,un=(Pt>>25)+sn|0,tn[Wt+21|0]=un>>>15,tn[Wt+20|0]=un>>>7,tn[Wt+19|0]=Pt>>>24&1|un<<1,Pt=(un>>26)+rn|0,tn[Wt+24|0]=Pt>>>13,tn[Wt+23|0]=Pt>>>5,tn[Wt+22|0]=Pt<<3|(58720256&un)>>>23,un=(Pt>>25)+an|0,tn[Wt+27|0]=un>>>12,tn[Wt+26|0]=un>>>4,tn[Wt+25|0]=un<<4|(31457280&Pt)>>>21,Pt=en+(un>>26)|0,tn[Wt+30|0]=Pt>>>10,tn[Wt+29|0]=Pt>>>2,tn[Wt+31|0]=(33292288&Pt)>>>18,tn[Wt+28|0]=Pt<<6|(66060288&un)>>>20}function wA(Wt,Pt,en){var nn,rn=0,In=0,sn=0,on=0,cn=0,dn=0,un=0;if(mn=nn=mn-192|0,en>>>0>=129&&(MA(Wt),W(Wt,Pt,en,0),v(Wt,nn),en=64,Pt=nn),MA(Wt),VA(nn- -64|0,54,128),en){if(en>>>0>=4)for(un=252&en;tn[0|(rn=(sn=nn- -64|0)+In|0)]=an[0|rn]^an[Pt+In|0],tn[0|(on=(rn=1|In)+sn|0)]=an[0|on]^an[Pt+rn|0],tn[0|(on=(rn=2|In)+sn|0)]=an[0|on]^an[Pt+rn|0],tn[0|(rn=(rn=sn)+(sn=3|In)|0)]=an[0|rn]^an[Pt+sn|0],In=In+4|0,(0|un)!=(0|(cn=cn+4|0)););if(cn=3&en)for(;tn[0|(sn=(nn- -64|0)+In|0)]=an[0|sn]^an[Pt+In|0],In=In+1|0,(0|cn)!=(0|(dn=dn+1|0)););}if(W(Wt,In=nn- -64|0,128,0),MA(sn=Wt+208|0),VA(In,92,128),en){if(dn=0,In=0,en>>>0>=4)for(un=252&en,cn=0;tn[0|(rn=(Wt=nn- -64|0)+In|0)]=an[0|rn]^an[Pt+In|0],tn[0|(on=(rn=1|In)+Wt|0)]=an[0|on]^an[Pt+rn|0],tn[0|(on=(rn=2|In)+Wt|0)]=an[0|on]^an[Pt+rn|0],tn[0|(rn=(rn=Wt)+(Wt=3|In)|0)]=an[0|rn]^an[Wt+Pt|0],In=In+4|0,(0|un)!=(0|(cn=cn+4|0)););if(Wt=3&en)for(;tn[0|(en=(nn- -64|0)+In|0)]=an[0|en]^an[Pt+In|0],In=In+1|0,(0|Wt)!=(0|(dn=dn+1|0)););}return W(sn,Wt=nn- -64|0,128,0),MI(Wt,128),MI(nn,64),mn=nn+192|0,0}function rA(Wt,Pt){var en;return nn[12+(en=mn-16|0)>>2]=Wt,nn[en+8>>2]=Pt,nn[en+4>>2]=0,nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]]^an[nn[en+8>>2]],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+1|0]^an[nn[en+8>>2]+1|0],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+2|0]^an[nn[en+8>>2]+2|0],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+3|0]^an[nn[en+8>>2]+3|0],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+4|0]^an[nn[en+8>>2]+4|0],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+5|0]^an[nn[en+8>>2]+5|0],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+6|0]^an[nn[en+8>>2]+6|0],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+7|0]^an[nn[en+8>>2]+7|0],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+8|0]^an[nn[en+8>>2]+8|0],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+9|0]^an[nn[en+8>>2]+9|0],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+10|0]^an[nn[en+8>>2]+10|0],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+11|0]^an[nn[en+8>>2]+11|0],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+12|0]^an[nn[en+8>>2]+12|0],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+13|0]^an[nn[en+8>>2]+13|0],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+14|0]^an[nn[en+8>>2]+14|0],nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+15|0]^an[nn[en+8>>2]+15|0],(nn[en+4>>2]-1>>>8&1)-1|0}function tA(Wt,Pt,en,tn,an,rn,In){var sn,on,cn,dn=0,un=0,pn=0,bn=0;mn=sn=mn-352|0,AA(sn,rn,In);e:{if(!(((dn=!!(0|an))|!an&tn>>>0>Wt-en>>>0)&Wt>>>0>en>>>0)&(!an&en-Wt>>>0>=tn>>>0|Wt>>>0>=en>>>0)){if(nn[sn+56>>2]=0,nn[sn+60>>2]=0,nn[sn+48>>2]=0,nn[sn+52>>2]=0,nn[sn+40>>2]=0,nn[sn+44>>2]=0,nn[sn+32>>2]=0,nn[sn+36>>2]=0,un=(In=(dn=!!(0|an))|!an&tn>>>0>=32)?32:tn,pn=In?0:an,In=dn|!an&tn>>>0>32,!(tn|an)){bn=1;break e}}else en=lA(Wt,en,tn),nn[sn+56>>2]=0,nn[sn+60>>2]=0,nn[sn+48>>2]=0,nn[sn+52>>2]=0,nn[sn+40>>2]=0,nn[sn+44>>2]=0,nn[sn+32>>2]=0,nn[sn+36>>2]=0,un=(In=dn|!an&tn>>>0>=32)?32:tn,pn=In?0:an,In=dn|!an&tn>>>0>32;TA(sn- -64|0,en,un),bn=0}return dn=pn,oI(on=sn+32|0,on,cn=un+32|0,dn=cn>>>0<32?dn+1|0:dn,dn=rn+16|0,sn),nI(sn+96|0,on),bn||TA(Wt,sn- -64|0,un),MI(sn+32|0,64),In&&DI(Wt+un|0,en+un|0,tn-un|0,an-((tn>>>0>>0)+pn|0)|0,dn,sn),MI(sn,32),rI(en=sn+96|0,Wt,tn,an),sI(en,Pt),MI(en,256),mn=sn+352|0,0}function hA(Wt,Pt){var en,tn=0,rn=0;en=Pt;e:{t:{n:{if(Pt&=255){if(3&Wt)for(;;){if(!(tn=an[0|Wt])|(0|Pt)==(0|tn))break e;if(!(3&(Wt=Wt+1|0)))break}if(-2139062144!=(-2139062144&((tn=nn[Wt>>2])|16843008-tn)))break n;for(rn=In(Pt,16843009);;){if(-2139062144!=(-2139062144&(16843008-(Pt=tn^rn)|Pt)))break n;if(tn=nn[Wt+4>>2],Wt=Pt=Wt+4|0,-2139062144!=(-2139062144&(16843008-tn|tn)))break}break t}tn=Wt;l:{a:{r:if(3&Wt){if(Pt=0,!an[0|Wt])break l;for(;;){if(!(3&(Wt=Wt+1|0)))break r;if(!an[0|Wt])break}break a}for(;Pt=Wt,Wt=Wt+4|0,-2139062144==(-2139062144&(16843008-(rn=nn[Pt>>2])|rn)););for(;Pt=(Wt=Pt)+1|0,an[0|Wt];);}Pt=Wt-tn|0}Wt=Pt+tn|0;break e}Pt=Wt}for(;;){if(!(tn=an[0|(Wt=Pt)]))break e;if(Pt=Wt+1|0,(0|tn)==(255&en))break}}return an[0|Wt]==(255&en)?Wt:0}function kA(Wt,Pt,en,tn,an,rn,In){var sn,on,cn=0,dn=0,un=0;mn=sn=mn-96|0,AA(sn,rn,In),In=sn+32|0,on=rn+16|0,hn[nn[8808]](In,32,0,on,sn),rn=-1;e:{t:if(!(0|hn[nn[8802]](en,Pt,tn,an,In))){if(rn=0,!Wt)break e;n:{if(!(((en=!!(0|an))|!an&tn>>>0>Pt-Wt>>>0)&Wt>>>0>>0)&(!an&tn>>>0<=Wt-Pt>>>0|Wt>>>0<=Pt>>>0)){if(!(tn|an))break n;en=(rn=!an&tn>>>0>=32|!!(0|an))?32:tn,cn=rn?0:an}else Pt=lA(Wt,Pt,tn),en=(rn=en|!an&tn>>>0>=32)?32:tn,cn=rn?0:an;if(rn=cn,un=TA(sn- -64|0,Pt,en),oI(In=sn+32|0,In,dn=en+32|0,rn=dn>>>0<32?rn+1|0:rn,on,sn),Wt=TA(Wt,un,en),MI(In,64),rn=0,!an&tn>>>0<33)break t;DI(Wt+en|0,Pt+en|0,tn-en|0,an-(cn+(en>>>0>tn>>>0)|0)|0,on,sn);break t}oI(Wt=sn+32|0,Wt,32,0,on,sn),MI(Wt,64)}MI(sn,32)}return mn=sn+96|0,rn}function nA(Wt,Pt,en,tn,rn,In,sn,on,cn,dn){var un,pn;return mn=un=mn-400|0,nn[un+4>>2]=0,$(pn=un+16|0,cn,dn),dn=an[cn+20|0]|an[cn+21|0]<<8|an[cn+22|0]<<16|an[cn+23|0]<<24,nn[un+8>>2]=an[cn+16|0]|an[cn+17|0]<<8|an[cn+18|0]<<16|an[cn+19|0]<<24,nn[un+12>>2]=dn,eI(dn=un+80|0,64,un+4|0,pn),nI(cn=un+144|0,dn),MI(dn,64),rI(cn,In,sn,on),rI(cn,35104,0-sn&15,0),rI(cn,Pt,en,tn),rI(cn,35104,0-en&15,0),nn[un+72>>2]=sn,nn[un+76>>2]=on,rI(cn,In=un+72|0,8,0),nn[un+72>>2]=en,nn[un+76>>2]=tn,rI(cn,In,8,0),sI(cn,In=un+48|0),MI(cn,256),cn=rA(In,rn),MI(In,16),Wt&&(cn?(VA(Wt,0,en),cn=-1):(BI(Wt,Pt,en,tn,un+4|0,un+16|0),cn=0)),MI(un+16|0,32),mn=un+400|0,cn}function sA(Wt,Pt,en,tn,rn,In,sn,on,cn,dn,un){var pn,bn,Gn;return mn=pn=mn-384|0,nn[pn+4>>2]=0,$(bn=pn+16|0,dn,un),un=an[dn+20|0]|an[dn+21|0]<<8|an[dn+22|0]<<16|an[dn+23|0]<<24,nn[pn+8>>2]=an[dn+16|0]|an[dn+17|0]<<8|an[dn+18|0]<<16|an[dn+19|0]<<24,nn[pn+12>>2]=un,eI(un=pn- -64|0,64,Gn=pn+4|0,bn),nI(dn=pn+128|0,un),MI(un,64),rI(dn,sn,on,cn),rI(dn,35104,0-on&15,0),BI(Wt,tn,rn,In,Gn,bn),rI(dn,Wt,rn,In),rI(dn,35104,0-rn&15,0),nn[pn+56>>2]=on,nn[pn+60>>2]=cn,rI(dn,Wt=pn+56|0,8,0),nn[pn+56>>2]=rn,nn[pn+60>>2]=In,rI(dn,Wt,8,0),sI(dn,Pt),MI(dn,256),en&&(nn[en>>2]=16,nn[en+4>>2]=0),MI(pn+16|0,32),mn=pn+384|0,0}function FA(Wt,Pt,en,tn){var an,rn=0;return mn=an=mn-208|0,nn[an+72>>2]=0,nn[an+76>>2]=0,rn=nn[8479],nn[an+8>>2]=nn[8478],nn[an+12>>2]=rn,rn=nn[8481],nn[an+16>>2]=nn[8480],nn[an+20>>2]=rn,rn=nn[8483],nn[an+24>>2]=nn[8482],nn[an+28>>2]=rn,rn=nn[8485],nn[an+32>>2]=nn[8484],nn[an+36>>2]=rn,rn=nn[8487],nn[an+40>>2]=nn[8486],nn[an+44>>2]=rn,rn=nn[8489],nn[an+48>>2]=nn[8488],nn[an+52>>2]=rn,rn=nn[8491],nn[an+56>>2]=nn[8490],nn[an+60>>2]=rn,nn[an+64>>2]=0,nn[an+68>>2]=0,rn=nn[8477],nn[an>>2]=nn[8476],nn[an+4>>2]=rn,W(an,Pt,en,tn),v(an,Wt),mn=an+208|0,0}function SA(Wt,Pt){var en,nn=0,rn=0,In=0,sn=0;if(tn[15+(en=mn-16|0)|0]=0,Pt){if(Pt>>>0>=4)for(sn=-4&Pt;nn=Wt+rn|0,tn[en+15|0]=an[0|nn]|an[en+15|0],tn[en+15|0]=an[nn+1|0]|an[en+15|0],tn[en+15|0]=an[nn+2|0]|an[en+15|0],tn[en+15|0]=an[nn+3|0]|an[en+15|0],rn=rn+4|0,(0|sn)!=(0|(In=In+4|0)););if(nn=3&Pt)for(Pt=0;tn[en+15|0]=an[Wt+rn|0]|an[en+15|0],rn=rn+1|0,(0|nn)!=(0|(Pt=Pt+1|0)););}return an[en+15|0]-1>>>8&1}function MA(Wt){var Pt=0;nn[Wt+64>>2]=0,nn[Wt+68>>2]=0,nn[Wt+72>>2]=0,nn[Wt+76>>2]=0,Pt=nn[8477],nn[Wt>>2]=nn[8476],nn[Wt+4>>2]=Pt,Pt=nn[8479],nn[Wt+8>>2]=nn[8478],nn[Wt+12>>2]=Pt,Pt=nn[8481],nn[Wt+16>>2]=nn[8480],nn[Wt+20>>2]=Pt,Pt=nn[8483],nn[Wt+24>>2]=nn[8482],nn[Wt+28>>2]=Pt,Pt=nn[8485],nn[Wt+32>>2]=nn[8484],nn[Wt+36>>2]=Pt,Pt=nn[8487],nn[Wt+40>>2]=nn[8486],nn[Wt+44>>2]=Pt,Pt=nn[8489],nn[Wt+48>>2]=nn[8488],nn[Wt+52>>2]=Pt,Pt=nn[8491],nn[Wt+56>>2]=nn[8490],nn[Wt+60>>2]=Pt}function NA(Wt,Pt,en){var rn,In=0,sn=0;if(nn[12+(rn=mn-16|0)>>2]=Wt,nn[rn+8>>2]=Pt,Wt=0,tn[rn+7|0]=0,en){if(Pt=1&en,1!=(0|en))for(sn=-2&en,en=0;tn[rn+7|0]=an[rn+7|0]|an[nn[rn+12>>2]+Wt|0]^an[nn[rn+8>>2]+Wt|0],In=1|Wt,tn[rn+7|0]=an[rn+7|0]|an[In+nn[rn+12>>2]|0]^an[nn[rn+8>>2]+In|0],Wt=Wt+2|0,(0|sn)!=(0|(en=en+2|0)););Pt&&(tn[rn+7|0]=an[rn+7|0]|an[nn[rn+12>>2]+Wt|0]^an[nn[rn+8>>2]+Wt|0])}return(an[rn+7|0]-1>>>8&1)-1|0}function KA(Wt){for(var Pt=0,en=0,tn=0,nn=0,rn=0,In=0,sn=0,on=0,cn=0,dn=0;nn=(en=an[Wt+tn|0])^an[0|(Pt=tn+2432|0)]|nn,rn=en^an[Pt+192|0]|rn,In=en^an[Pt+160|0]|In,sn=en^an[Pt+128|0]|sn,on=en^an[Pt+96|0]|on,cn=en^an[Pt- -64|0]|cn,dn=en^an[Pt+32|0]|dn,31!=(0|(tn=tn+1|0)););return((255&((Pt=127^(Wt=127&an[Wt+31|0]))|rn))-1|(255&(Pt|In))-1|(255&(Pt|sn))-1|(255&(122^Wt|on))-1|(255&(5^Wt|cn))-1|(255&(Wt|dn))-1|(255&(Wt|nn))-1)>>>8&1}function _A(Wt,Pt,en){var tn=0,nn=0,an=0,rn=0;return nn=31&(an=rn=63&en),an=an>>>0>=32?-1>>>nn|0:(tn=-1>>>nn|0)|(1<>>0>=32?(tn=an<>>32-nn|tn<>>0>=32?(tn=-1<>>32-tn,Wt&=en,Pt&=tn,tn=31&nn,nn>>>0>=32?(en=0,Wt=Pt>>>tn|0):(en=Pt>>>tn|0,Wt=((1<>>tn),bn=en|an,Wt|rn}function pA(Wt,Pt,en,tn,an,rn,In,sn,on,cn){var dn,un,pn;return mn=dn=mn-352|0,eI(pn=dn+32|0,64,on,cn),nI(un=dn+96|0,pn),MI(pn,64),rI(un,rn,In,sn),rI(un,35168,0-In&15,0),rI(un,Pt,en,tn),rI(un,35168,0-en&15,0),nn[dn+24>>2]=In,nn[dn+28>>2]=sn,rI(un,rn=dn+24|0,8,0),nn[dn+24>>2]=en,nn[dn+28>>2]=tn,rI(un,rn,8,0),sI(un,dn),MI(un,256),rn=rA(dn,an),MI(dn,16),Wt&&(rn?(VA(Wt,0,en),rn=-1):(vA(Wt,Pt,en,tn,on,1,cn),rn=0)),mn=dn+352|0,rn}function HA(Wt,Pt,en,tn,an,rn,In,sn,on,cn,dn){var un,pn,bn;return mn=un=mn-336|0,eI(bn=un+16|0,64,cn,dn),nI(pn=un+80|0,bn),MI(bn,64),rI(pn,In,sn,on),rI(pn,35168,0-sn&15,0),vA(Wt,tn,an,rn,cn,1,dn),rI(pn,Wt,an,rn),rI(pn,35168,0-an&15,0),nn[un+8>>2]=sn,nn[un+12>>2]=on,rI(pn,Wt=un+8|0,8,0),nn[un+8>>2]=an,nn[un+12>>2]=rn,rI(pn,Wt,8,0),sI(pn,Pt),MI(pn,256),en&&(nn[en>>2]=16,nn[en+4>>2]=0),mn=un+336|0,0}function GA(Wt,Pt,en,tn,an,rn,In,sn,on,cn){var dn,un,pn;return mn=dn=mn-352|0,wI(pn=dn+32|0,on,cn),nI(un=dn+96|0,pn),MI(pn,64),rI(un,rn,In,sn),nn[dn+24>>2]=In,nn[dn+28>>2]=sn,rI(un,rn=dn+24|0,8,0),rI(un,Pt,en,tn),nn[dn+24>>2]=en,nn[dn+28>>2]=tn,rI(un,rn,8,0),sI(un,dn),MI(un,256),rn=rA(dn,an),MI(dn,16),Wt&&(rn?(VA(Wt,0,en),rn=-1):(CI(Wt,Pt,en,tn,on,cn),rn=0)),mn=dn+352|0,rn}function JA(Wt,Pt,en,tn,an,rn,In,sn,on,cn,dn){var un,pn,bn;return mn=un=mn-336|0,wI(bn=un+16|0,cn,dn),nI(pn=un+80|0,bn),MI(bn,64),rI(pn,In,sn,on),nn[un+8>>2]=sn,nn[un+12>>2]=on,rI(pn,In=un+8|0,8,0),CI(Wt,tn,an,rn,cn,dn),rI(pn,Wt,an,rn),nn[un+8>>2]=an,nn[un+12>>2]=rn,rI(pn,In,8,0),sI(pn,Pt),MI(pn,256),en&&(nn[en>>2]=16,nn[en+4>>2]=0),mn=un+336|0,0}function YA(Wt,Pt,en,tn,an,rn,In,sn,on,cn,dn){var un=0,pn=0,mn=0;return pn=-1,(un=tn>>>0<32)&!an||!(un=an-un|0)&(mn=tn-32|0)>>>0>4294967263|un|!sn&In>>>0>4294967263|sn||(pn=0|hn[nn[dn>>2]](Wt,en,mn,(en+tn|0)-32|0,32,rn,In,on,cn)),Pt&&(nn[Pt>>2]=pn?0:tn-32|0,nn[Pt+4>>2]=pn?0:an-(tn>>>0<32)|0),pn}function UA(Wt,Pt){var en;for(nn[12+(en=mn-16|0)>>2]=Wt,nn[en+8>>2]=Pt,Wt=0,nn[en+4>>2]=0;nn[en+4>>2]=nn[en+4>>2]|an[nn[en+12>>2]+Wt|0]^an[nn[en+8>>2]+Wt|0],Pt=1|Wt,nn[en+4>>2]=nn[en+4>>2]|an[Pt+nn[en+12>>2]|0]^an[Pt+nn[en+8>>2]|0],32!=(0|(Wt=Wt+2|0)););return(nn[en+4>>2]-1>>>8&1)-1|0}function dA(Wt){var Pt=0,en=0,nn=0,rn=0,In=0;for(Pt=1;en=(nn=Pt)+an[0|(Pt=Wt+rn|0)]|0,tn[0|Pt]=en,en=an[Pt+1|0]+(en>>>8|0)|0,tn[Pt+1|0]=en,en=an[Pt+2|0]+(en>>>8|0)|0,tn[Pt+2|0]=en,nn=Pt,Pt=an[Pt+3|0]+(en>>>8|0)|0,tn[nn+3|0]=Pt,Pt=Pt>>>8|0,rn=rn+4|0,4!=(0|(In=In+4|0)););}function bA(Wt,Pt,en,tn,an,rn,In,sn,on,cn,dn){return!an&tn>>>0>4294967263|!!(0|an)|!sn&In>>>0>=4294967264|!!(0|sn)?(iI(),Q()):(Wt=0|hn[nn[dn>>2]](Wt,Wt+tn|0,32,en,tn,rn,In,on,cn),Pt&&(tn=(en=tn+32|0)>>>0<32?an+1|0:an,nn[Pt>>2]=Wt?0:en,nn[Pt+4>>2]=Wt?0:tn)),Wt}function PA(Wt,Pt,en,tn){var nn,an,rn,sn,on=0,cn=0;return sn=In(on=en>>>16|0,cn=Wt>>>16|0),on=(65535&(cn=((rn=In(nn=65535&en,an=65535&Wt))>>>16|0)+In(cn,nn)|0))+In(on,an)|0,bn=(In(Pt,en)+sn|0)+In(Wt,tn)+(cn>>>16)+(on>>>16)|0,65535&rn|on<<16}function vA(Wt,Pt,en,tn,an,rn,In){var sn=0,on=0;sn=tn,1==(((sn=(on=en+63|0)>>>0<63?sn+1|0:sn)>>>6|0)+!!(0|(sn=(63&sn)<<26|on>>>6))|0)&rn>>>0>(on=0-sn|0)>>>0|1==(0|tn)|tn>>>0>1?(iI(),Q()):hn[nn[9075]](Wt,Pt,en,tn,an,rn,In)}function RA(Wt){var Pt=0;nn[Wt+32>>2]=0,nn[Wt+36>>2]=0,Pt=nn[8689],nn[Wt>>2]=nn[8688],nn[Wt+4>>2]=Pt,Pt=nn[8691],nn[Wt+8>>2]=nn[8690],nn[Wt+12>>2]=Pt,Pt=nn[8693],nn[Wt+16>>2]=nn[8692],nn[Wt+20>>2]=Pt,Pt=nn[8695],nn[Wt+24>>2]=nn[8694],nn[Wt+28>>2]=Pt}function LA(Wt,Pt){Wt|=0;var en,nn=0,an=0,rn=0;if(mn=en=mn-16|0,Pt|=0)for(;tn[en+15|0]=0,an=Wt+nn|0,rn=0|cn(36304,en+15|0,0),tn[0|an]=rn,(0|(nn=nn+1|0))!=(0|Pt););mn=en+16|0}function xA(Wt,Pt,en,tn,nn,an,rn){var In,sn,on=0;return mn=In=mn-32|0,on=-1,(sn=en>>>0<16)&!tn||OA(In,an,rn)||(on=kA(Wt,Pt+16|0,Pt,en-16|0,tn-sn|0,nn,In),MI(In,32)),mn=In+32|0,on}function uA(Wt){var Pt,en;e:{if(!((Wt=(Pt=nn[8800])+(en=Wt+7&-8)|0)>>>0<=Pt>>>0&&en)){if(Wt>>>0<=RI()<<16>>>0)break e;if(0|pn(0|Wt))break e}return nn[9280]=48,-1}return nn[8800]=Wt,Pt}function mA(Wt,Pt){var en,nn,rn;mn=en=mn-176|0,iA(nn=en+96|0,Pt+80|0),M(rn=en+48|0,Pt,nn),M(en,Pt+40|0,nn),eA(Wt,en),eA(en+144|0,rn),tn[Wt+31|0]=an[Wt+31|0]^an[en+144|0]<<7,mn=en+176|0}function qA(Wt,Pt,en,tn,an,rn,In,sn,on,cn,dn,un){return en&&(nn[en>>2]=32,nn[en+4>>2]=0),!on&sn>>>0<4294967264&!rn&an>>>0<=4294967263||(iI(),Q()),0|hn[nn[un>>2]](Wt,Pt,32,tn,an,In,sn,cn,dn)}function lA(Wt,Pt,en){var nn=0;if(Wt>>>0>>0)return TA(Wt,Pt,en);if(en)for(nn=Wt+en|0,Pt=Pt+en|0;Pt=Pt-1|0,tn[0|(nn=nn-1|0)]=an[0|Pt],en=en-1|0;);return Wt}function zA(Wt,Pt,en,tn,nn,an,rn){var In,sn=0;if(mn=In=mn-32|0,!tn&en>>>0<4294967280)return sn=-1,OA(In,an,rn)||(sn=tA(Wt+16|0,Wt,Pt,en,tn,nn,In),MI(In,32)),mn=In+32|0,sn;iI(),Q()}function jA(Wt,Pt,en,tn,nn,an){return Pt|=0,0|(!(tn|=0)&(en|=0)>>>0>=16|tn?kA(Wt|=0,Pt+16|0,Pt,en-16|0,tn-(en>>>0<16)|0,nn|=0,an|=0):-1)}function XA(Wt,Pt,en,tn,an,rn,In,sn,on,cn,dn){return!tn&en>>>0>4294967263|tn|!sn&In>>>0>4294967263|sn?-1:0|hn[nn[dn>>2]](Wt,Pt,en,an,32,rn,In,on,cn)}function OA(Wt,Pt,en){Wt|=0;var tn,nn=0;return mn=tn=mn-32|0,nn=-1,fA(tn,en|=0,Pt|=0)||(nn=AA(Wt,35184,tn)),mn=tn+32|0,0|nn}function TA(Wt,Pt,en){var nn=0;if(en)for(nn=Wt;tn[0|nn]=an[0|Pt],nn=nn+1|0,Pt=Pt+1|0,en=en-1|0;);return Wt}function VA(Wt,Pt,en){var nn=0;if(en)for(nn=Wt;tn[0|nn]=Pt,nn=nn+1|0,en=en-1|0;);return Wt}function ZA(Wt,Pt,en){return Wt|=0,Pt|=0,(en|=0)>>>0>=256&&(dn(1248,1175,107,1055),Q()),0|m(Wt,Pt,255&en)}function WA(Wt,Pt){var en;mn=en=mn+-64|0,v(Wt,en),W(Wt=Wt+208|0,en,64,0),v(Wt,Pt),MI(en,64),mn=en- -64|0}function $A(Wt,Pt,en,tn,nn,an,rn){return 0|tA(Wt|=0,Pt|=0,en|=0,tn|=0,nn|=0,an|=0,rn|=0)}function AI(Wt,Pt,en,tn,nn,an,rn){return 0|kA(Wt|=0,Pt|=0,en|=0,tn|=0,nn|=0,an|=0,rn|=0)}function II(Wt,Pt){var en;mn=en=mn-32|0,IA(Wt,en),BA(Wt=Wt+104|0,en,32),IA(Wt,Pt),MI(en,32),mn=en+32|0}function gI(Wt,Pt){var en=0;return(-1>>>(en=31&Pt)&Wt)<>>Wt}function CI(Wt,Pt,en,tn,an,rn){1==(0|tn)|tn>>>0>1&&(iI(),Q()),hn[nn[9074]](Wt,Pt,en,tn,an,1,0,rn)}function BI(Wt,Pt,en,tn,an,rn){1==(0|tn)|tn>>>0>1&&(iI(),Q()),hn[nn[9075]](Wt,Pt,en,tn,an,1,rn)}function QI(){var Wt;mn=Wt=mn-16|0,tn[Wt+15|0]=0,cn(36340,Wt+15|0,0),mn=Wt+16|0}function EI(Wt,Pt,en){return 0|fA(Wt|=0,Pt|=0,en|=0)}function iI(){var Wt;(Wt=nn[9413])&&hn[0|Wt](),un(),Q()}function oI(Wt,Pt,en,tn,an,rn){hn[nn[8809]](Wt,Pt,en,tn,an,0,0,rn)}function cI(Wt,Pt){return Wt|=0,LA(Pt|=0,32),0|hI(Wt,Pt)}function DI(Wt,Pt,en,tn,an,rn){hn[nn[8809]](Wt,Pt,en,tn,an,1,0,rn)}function aI(Wt){return Wt?31-sn(Wt-1^Wt)|0:32}function yI(Wt,Pt,en,tn){hn[nn[9075]](Wt,Pt,40,0,en,0,tn)}function fI(Wt,Pt){return 0|hI(Wt|=0,Pt|=0)}function eI(Wt,Pt,en,tn){hn[nn[9073]](Wt,Pt,0,en,tn)}function wI(Wt,Pt,en){hn[nn[9072]](Wt,64,0,Pt,en)}function rI(Wt,Pt,en,tn){hn[nn[8804]](Wt,Pt,en,tn)}function tI(Wt,Pt,en,tn){return W(Wt,Pt,en,tn),0}function hI(Wt,Pt){return 0|hn[nn[8807]](Wt,Pt)}function kI(Wt,Pt,en){return BA(Wt,Pt,en),0}function nI(Wt,Pt){hn[nn[8803]](Wt,Pt)}function sI(Wt,Pt){hn[nn[8805]](Wt,Pt)}function FI(Wt){LA(Wt|=0,32)}function SI(Wt){LA(Wt|=0,16)}function MI(Wt,Pt){VA(Wt,0,Pt)}function NI(){return 208}function KI(){return 16}function _I(){return 32}function pI(){return 24}function HI(){return-17}function GI(){return-33}function JI(){return 64}function YI(){return 0}function UI(){return 8}function dI(){return 1}function bI(){return 2}B(Pt=an,1024,"cmFuZG9tYnl0ZXMAYjY0X3BvcyA8PSBiNjRfbGVuAGNyeXB0b19nZW5lcmljaGFzaF9ibGFrZTJiX2ZpbmFsAHJhbmRvbWJ5dGVzL3JhbmRvbWJ5dGVzLmMAc29kaXVtL2NvZGVjcy5jAGNyeXB0b19nZW5lcmljaGFzaC9ibGFrZTJiL3JlZi9ibGFrZTJiLXJlZi5jAGNyeXB0b19nZW5lcmljaGFzaC9ibGFrZTJiL3JlZi9nZW5lcmljaGFzaF9ibGFrZTJiLmMAYnVmX2xlbiA8PSBTSVpFX01BWABvdXRsZW4gPD0gVUlOVDhfTUFYAFMtPmJ1ZmxlbiA8PSBCTEFLRTJCX0JMT0NLQllURVMAc29kaXVtX2JpbjJiYXNlNjQAMS4wLjIwAAAAALZ4Wf+FctMAvW4V/w8KagApwAEAmOh5/7w8oP+Zcc7/ALfi/rQNSP8AAAAAAAAAALCgDv7TyYb/nhiPAH9pNQBgDL0Ap9f7/59MgP5qZeH/HvwEAJIMrg=="),B(Pt,1424,"WfGy/grlpv973Sr+HhTUAFKAAwAw0fMAd3lA/zLjnP8AbsUBZxuQ"),B(Pt,1472,"hTuMAb3xJP/4JcMBYNw3ALdMPv/DQj0AMkykAeGkTP9MPaP/dT4fAFGRQP92QQ4AonPW/waKLgB85vT/CoqPADQawgC49EwAgY8pAb70E/97qnr/YoFEAHnVkwBWZR7/oWebAIxZQ//v5b4BQwu1AMbwif7uRbz/Q5fuABMqbP/lVXEBMkSH/xFqCQAyZwH/UAGoASOYHv8QqLkBOFno/2XS/AAp+kcAzKpP/w4u7/9QTe8AvdZL/xGN+QAmUEz/vlV1AFbkqgCc2NABw8+k/5ZCTP+v4RD/jVBiAUzb8gDGonIALtqYAJsr8f6boGj/M7ulAAIRrwBCVKAB9zoeACNBNf5F7L8ALYb1AaN73QAgbhT/NBelALrWRwDpsGAA8u82ATlZigBTAFT/iKBkAFyOeP5ofL4AtbE+//opVQCYgioBYPz2AJeXP/7vhT4AIDicAC2nvf+OhbMBg1bTALuzlv76qg7/0qNOACU0lwBjTRoA7pzV/9XA0QFJLlQAFEEpATbOTwDJg5L+qm8Y/7EhMv6rJsv/Tvd0ANHdmQCFgLIBOiwZAMknOwG9E/wAMeXSAXW7dQC1s7gBAHLbADBekwD1KTgAfQ3M/vStdwAs3SD+VOoUAPmgxgHsfur/L2Oo/qrimf9ms9gA4o16/3pCmf629YYA4+QZAdY56//YrTj/tefSAHeAnf+BX4j/bn4zAAKpt/8HgmL+RbBe/3QE4wHZ8pH/yq0fAWkBJ/8ur0UA5C86/9fgRf7POEX/EP6L/xfP1P/KFH7/X9Vg/wmwIQDIBc//8SqA/iMhwP/45cQBgRF4APtnl/8HNHD/jDhC/yji9f/ZRiX+rNYJ/0hDhgGSwNb/LCZwAES4S//OWvsAleuNALWqOgB09O8AXJ0CAGatYgDpiWABfzHLAAWblAAXlAn/03oMACKGGv/bzIgAhggp/+BTK/5VGfcAbX8A/qmIMADud9v/563VAM4S/v4Iugf/fgkHAW8qSABvNOz+YD+NAJO/f/7NTsD/DmrtAbvbTACv87v+aVmtAFUZWQGi85QAAnbR/iGeCQCLoy7/XUYoAGwqjv5v/I7/m9+QADPlp/9J/Jv/XnQM/5ig2v+c7iX/s+rP/8UAs/+apI0A4cRoAAojGf7R1PL/Yf3e/rhl5QDeEn8BpIiH/x7PjP6SYfMAgcAa/slUIf9vCk7/k1Gy/wQEGACh7tf/Bo0hADXXDv8ptdD/54udALPL3f//uXEAveKs/3FC1v/KPi3/ZkAI/06uEP6FdUT/"),B(Pt,2464,"AQ=="),B(Pt,2496,"JuiVj8KyJ7BFw/SJ8u+Y8NXfrAXTxjM5sTgCiG1T/AXHF2pwPU3YT7o8C3YNEGcPKiBT+iw5zMZOx/13kqwDeuz///////////////////////////////////////9/7f///////////////////////////////////////3/u////////////////////////////////////////f+3T9VwaYxJY1pz3ot753hQ="),B(Pt,2687,"EIU7jAG98ST/+CXDAWDcNwC3TD7/w0I9ADJMpAHhpEz/TD2j/3U+HwBRkUD/dkEOAKJz1v8Gii4AfOb0/wqKjwA0GsIAuPRMAIGPKQG+9BP/e6p6/2KBRAB51ZMAVmUe/6FnmwCMWUP/7+W+AUMLtQDG8In+7kW8/+pxPP8l/zn/RbK2/oDQswB2Gn3+AwfW//EyTf9Vy8X/04f6/xkwZP+71bT+EVhpAFPRngEFc2IABK48/qs3bv/ZtRH/FLyqAJKcZv5X1q7/cnqbAeksqgB/CO8B1uzqAK8F2wAxaj3/BkLQ/wJqbv9R6hP/12vA/0OX7gATKmz/5VVxATJEh/8RagkAMmcB/1ABqAEjmB7/EKi5AThZ6P9l0vwAKfpHAMyqT/8OLu//UE3vAL3WS/8RjfkAJlBM/75VdQBW5KoAnNjQAcPPpP+WQkz/r+EQ/41QYgFM2/IAxqJyAC7amACbK/H+m6Bo/7IJ/P5kbtQADgWnAOnvo/8cl50BZZIK//6eRv5H+eQAWB4yAEQ6oP+/GGgBgUKB/8AyVf8Is4r/JvrJAHNQoACD5nEAfViTAFpExwD9TJ4AHP92AHH6/gBCSy4A5torAOV4ugGURCsAiHzuAbtrxf9UNfb/M3T+/zO7pQACEa8AQlSgAfc6HgAjQTX+Rey/AC2G9QGje90AIG4U/zQXpQC61kcA6bBgAPLvNgE5WYoAUwBU/4igZABcjnj+aHy+ALWxPv/6KVUAmIIqAWD89gCXlz/+74U+ACA4nAAtp73/joWzAYNW0wC7s5b++qoO/0RxFf/eujv/QgfxAUUGSABWnGz+N6dZAG002/4NsBf/xCxq/++VR/+kjH3/n60BADMp5wCRPiEAim9dAblTRQCQcy4AYZcQ/xjkGgAx2eIAcUvq/sGZDP+2MGD/Dg0aAIDD+f5FwTsAhCVR/n1qPADW8KkBpONCANKjTgAlNJcAY00aAO6c1f/VwNEBSS5UABRBKQE2zk8AyYOS/qpvGP+xITL+qybL/073dADR3ZkAhYCyATosGQDJJzsBvRP8ADHl0gF1u3UAtbO4AQBy2wAwXpMA9Sk4AH0NzP70rXcALN0g/lTqFAD5oMYB7H7q/48+3QCBWdb/N4sF/kQUv/8OzLIBI8PZAC8zzgEm9qUAzhsG/p5XJADZNJL/fXvX/1U8H/+rDQcA2vVY/vwjPAA31qD/hWU4AOAgE/6TQOoAGpGiAXJ2fQD4/PoAZV7E/8aN4v4zKrYAhwwJ/m2s0v/F7MIB8UGaADCcL/+ZQzf/2qUi/kq0swDaQkcBWHpjANS12/9cKuf/7wCaAPVNt/9eUaoBEtXYAKtdRwA0XvgAEpeh/sXRQv+u9A/+ojC3ADE98P62XcMAx+QGAcgFEf+JLe3/bJQEAFpP7f8nP03/NVLPAY4Wdv9l6BIBXBpDAAXIWP8hqIr/leFIAALRG/8s9agB3O0R/x7Taf6N7t0AgFD1/m/+DgDeX74B3wnxAJJM1P9szWj/P3WZAJBFMAAj5G8AwCHB/3DWvv5zmJcAF2ZYADNK+ADix4/+zKJl/9BhvQH1aBIA5vYe/xeURQBuWDT+4rVZ/9AvWv5yoVD/IXT4ALOYV/9FkLEBWO4a/zogcQEBTUUAO3k0/5juUwA0CMEA5yfp/8ciigDeRK0AWzny/tzSf//AB/b+lyO7AMPspQBvXc4A1PeFAZqF0f+b5woAQE4mAHr5ZAEeE2H/Plv5AfiFTQDFP6j+dApSALjscf7Uy8L/PWT8/iQFyv93W5n/gU8dAGdnq/7t12//2DVFAO/wFwDCld3/JuHeAOj/tP52UoX/OdGxAYvohQCesC7+wnMuAFj35QEcZ78A3d6v/pXrLACX5Bn+2mlnAI5V0gCVgb7/1UFe/nWG4P9SxnUAnd3cAKNlJADFciUAaKym/gu2AABRSLz/YbwQ/0UGCgDHk5H/CAlzAUHWr//ZrdEAUH+mAPflBP6nt3z/WhzM/q878P8LKfgBbCgz/5Cxw/6W+n4AiltBAXg83v/1we8AHda9/4ACGQBQmqIATdxrAerNSv82pmf/dEgJAOReL/8eyBn/I9ZZ/z2wjP9T4qP/S4KsAIAmEQBfiZj/13yfAU9dAACUUp3+w4L7/yjKTP/7fuAAnWM+/s8H4f9gRMMAjLqd/4MT5/8qgP4ANNs9/mbLSACNBwv/uqTVAB96dwCF8pEA0Pzo/1vVtv+PBPr++ddKAKUebwGrCd8A5XsiAVyCGv9Nmy0Bw4sc/zvgTgCIEfcAbHkgAE/6vf9g4/z+JvE+AD6uff+bb13/CubOAWHFKP8AMTn+QfoNABL7lv/cbdL/Ba6m/iyBvQDrI5P/JfeN/0iNBP9na/8A91oEADUsKgACHvAABDs/AFhOJABxp7QAvkfB/8eepP86CKwATSEMAEE/AwCZTSH/rP5mAeTdBP9XHv4BkilW/4rM7/5sjRH/u/KHANLQfwBELQ7+SWA+AFE8GP+qBiT/A/kaACPVbQAWgTb/FSPh/+o9OP862QYAj3xYAOx+QgDRJrf/Iu4G/66RZgBfFtMAxA+Z/i5U6P91IpIB5/pK/xuGZAFcu8P/qsZwAHgcKgDRRkMAHVEfAB2oZAGpraAAayN1AD5gO/9RDEUBh+++/9z8EgCj3Dr/iYm8/1NmbQBgBkwA6t7S/7muzQE8ntX/DfHWAKyBjABdaPIAwJz7ACt1HgDhUZ4Af+jaAOIcywDpG5f/dSsF//IOL/8hFAYAifss/hsf9f+31n3+KHmVALqe1f9ZCOMARVgA/suH4QDJrssAk0e4ABJ5Kf5eBU4A4Nbw/iQFtAD7h+cBo4rUANL5dP5YgbsAEwgx/j4OkP+fTNMA1jNSAG115P5n38v/S/wPAZpH3P8XDVsBjahg/7W2hQD6MzcA6urU/q8/ngAn8DQBnr0k/9UoVQEgtPf/E2YaAVQYYf9FFd4AlIt6/9zV6wHoy/8AeTmTAOMHmgA1FpMBSAHhAFKGMP5TPJ3/kUipACJn7wDG6S8AdBME/7hqCf+3gVMAJLDmASJnSADbooYA9SqeACCVYP6lLJAAyu9I/teWBQAqQiQBhNevAFauVv8axZz/MeiH/me2UgD9gLABmbJ6APX6CgDsGLIAiWqEACgdKQAyHpj/fGkmAOa/SwCPK6oALIMU/ywNF//t/5sBn21k/3C1GP9o3GwAN9ODAGMM1f+Yl5H/7gWfAGGbCAAhbFEAAQNnAD5tIv/6m7QAIEfD/yZGkQGfX/UAReVlAYgc8ABP4BkATm55//iofAC7gPcAApPr/k8LhABGOgwBtQij/0+Jhf8lqgv/jfNV/7Dn1//MlqT/79cn/y5XnP4Io1j/rCLoAEIsZv8bNin+7GNX/yl7qQE0cisAdYYoAJuGGgDnz1v+I4Qm/xNmff4k44X/dgNx/x0NfACYYEoBWJLO/6e/3P6iElj/tmQXAB91NABRLmoBDAIHAEVQyQHR9qwADDCNAeDTWAB04p8AemKCAEHs6gHh4gn/z+J7AVnWOwBwh1gBWvTL/zELJgGBbLoAWXAPAWUuzP9/zC3+T//d/zNJEv9/KmX/8RXKAKDjBwBpMuwATzTF/2jK0AG0DxAAZcVO/2JNywApufEBI8F8ACObF//PNcAAC32jAfmeuf8EgzAAFV1v/z155wFFyCT/uTC5/2/uFf8nMhn/Y9ej/1fUHv+kkwX/gAYjAWzfbv/CTLIASmW0APMvMACuGSv/Uq39ATZywP8oN1sA12yw/ws4BwDg6UwA0WLK/vIZfQAswV3+ywixAIewEwBwR9X/zjuwAQRDGgAOj9X+KjfQ/zxDeADBFaMAY6RzAAoUdgCc1N7+oAfZ/3L1TAF1O3sAsMJW/tUPsABOzs/+1YE7AOn7FgFgN5j/7P8P/8VZVP9dlYUArqBxAOpjqf+YdFgAkKRT/18dxv8iLw//Y3iG/wXswQD5937/k7seADLmdf9s2dv/o1Gm/0gZqf6beU//HJtZ/gd+EQCTQSEBL+r9ABozEgBpU8f/o8TmAHH4pADi/toAvdHL/6T33v7/I6UABLzzAX+zRwAl7f7/ZLrwAAU5R/5nSEn/9BJR/uXShP/uBrT/C+Wu/+PdwAERMRwAo9fE/gl2BP8z8EcAcYFt/0zw5wC8sX8AfUcsARqv8wBeqRn+G+YdAA+LdwGoqrr/rMVM//xLvACJfMQASBZg/y2X+QHckWQAQMCf/3jv4gCBspIAAMB9AOuK6gC3nZIAU8fA/7isSP9J4YAATQb6/7pBQwBo9s8AvCCK/9oY8gBDilH+7YF5/xTPlgEpxxD/BhSAAJ92BQC1EI//3CYPABdAk/5JGg0AV+Q5Acx8gAArGN8A22PHABZLFP8TG34AnT7XAG4d5gCzp/8BNvy+AN3Mtv6znkH/UZ0DAMLanwCq3wAA4Asg/ybFYgCopCUAF1gHAaS6bgBgJIYA6vLlAPp5EwDy/nD/Ay9eAQnvBv9Rhpn+1v2o/0N84AD1X0oAHB4s/gFt3P+yWVkA/CRMABjGLv9MTW8AhuqI/ydeHQC5SOr/RkSH/+dmB/5N54wApy86AZRhdv8QG+EBps6P/26y1v+0g6IAj43hAQ3aTv9ymSEBYmjMAK9ydQGnzksAysRTATpAQwCKL28BxPeA/4ng4P6ecM8AmmT/AYYlawDGgE//f9Gb/6P+uf48DvMAH9tw/h3ZQQDIDXT+ezzE/+A7uP7yWcQAexBL/pUQzgBF/jAB53Tf/9GgQQHIUGIAJcK4/pQ/IgCL8EH/2ZCE/zgmLf7HeNIAbLGm/6DeBADcfnf+pWug/1Lc+AHxr4gAkI0X/6mKVACgiU7/4nZQ/zQbhP8/YIv/mPonALybDwDoM5b+KA/o//DlCf+Jrxv/S0lhAdrUCwCHBaIBa7nVAAL5a/8o8kYA28gZABmdDQBDUlD/xPkX/5EUlQAySJIAXkyUARj7QQAfwBcAuNTJ/3vpogH3rUgAolfb/n6GWQCfCwz+pmkdAEkb5AFxeLf/QqNtAdSPC/+f56gB/4BaADkOOv5ZNAr//QijAQCR0v8KgVUBLrUbAGeIoP5+vNH/IiNvANfbGP/UC9b+ZQV2AOjFhf/fp23/7VBW/0aLXgCewb8Bmw8z/w++cwBOh8//+QobAbV96QBfrA3+qtWh/yfsiv9fXVf/voBfAH0PzgCmlp8A4w+e/86eeP8qjYAAZbJ4AZxtgwDaDiz+96jO/9RwHABwEeT/WhAlAcXebAD+z1P/CVrz//P0rAAaWHP/zXR6AL/mwQC0ZAsB2SVg/5pOnADr6h//zrKy/5XA+wC2+ocA9hZpAHzBbf8C0pX/qRGqAABgbv91CQgBMnso/8G9YwAi46AAMFBG/tMz7AAtevX+LK4IAK0l6f+eQasAekXX/1pQAv+DamD+43KHAM0xd/6wPkD/UjMR//EU8/+CDQj+gNnz/6IbAf5advEA9sb2/zcQdv/In50AoxEBAIxreQBVoXb/JgCVAJwv7gAJpqYBS2K1/zJKGQBCDy8Ai+GfAEwDjv8O7rgAC881/7fAugGrIK7/v0zdAfeq2wAZrDL+2QnpAMt+RP+3XDAAf6e3AUEx/gAQP38B/hWq/zvgf/4WMD//G06C/ijDHQD6hHD+I8uQAGipqADP/R7/aCgm/l7kWADOEID/1Dd6/98W6gDfxX8A/bW1AZFmdgDsmST/1NlI/xQmGP6KPj4AmIwEAObcY/8BFdT/lMnnAPR7Cf4Aq9IAMzol/wH/Dv/0t5H+APKmABZKhAB52CkAX8Ny/oUYl/+c4uf/9wVN//aUc/7hXFH/3lD2/qp7Wf9Kx40AHRQI/4qIRv9dS1wA3ZMx/jR+4gDlfBcALgm1AM1ANAGD/hwAl57UAINATgDOGasAAOaLAL/9bv5n96cAQCgoASql8f87S+T+fPO9/8Rcsv+CjFb/jVk4AZPGBf/L+J7+kKKNAAus4gCCKhX/AaeP/5AkJP8wWKT+qKrcAGJH1gBb0E8An0zJAaYq1v9F/wD/BoB9/74BjACSU9r/1+5IAXp/NQC9dKX/VAhC/9YD0P/VboUAw6gsAZ7nRQCiQMj+WzpoALY6u/755IgAy4ZM/mPd6QBL/tb+UEWaAECY+P7siMr/nWmZ/pWvFAAWIxP/fHnpALr6xv6E5YsAiVCu/6V9RACQypT+6+/4AIe4dgBlXhH/ekhG/kWCkgB/3vgBRX92/x5S1/68ShP/5afC/nUZQv9B6jj+1RacAJc7Xf4tHBv/un6k/yAG7wB/cmMB2zQC/2Ngpv4+vn7/bN6oAUvirgDm4scAPHXa//z4FAHWvMwAH8KG/ntFwP+prST+N2JbAN8qZv6JAWYAnVoZAO96QP/8BukABzYU/1J0rgCHJTb/D7p9AONwr/9ktOH/Ku30//St4v74EiEAq2OW/0rrMv91UiD+aqjtAM9t0AHkCboAhzyp/rNcjwD0qmj/6y18/0ZjugB1ibcA4B/XACgJZAAaEF8BRNlXAAiXFP8aZDr/sKXLATR2RgAHIP7+9P71/6eQwv99cRf/sHm1AIhU0QCKBh7/WTAcACGbDv8Z8JoAjc1tAUZzPv8UKGv+iprH/17f4v+dqyYAo7EZ/i12A/8O3hcB0b5R/3Z76AEN1WX/ezd7/hv2pQAyY0z/jNYg/2FBQ/8YDBwArlZOAUD3YACgh0MAQjfz/5PMYP8aBiH/YjNTAZnV0P8CuDb/GdoLADFD9v4SlUj/DRlIACpP1gAqBCYBG4uQ/5W7FwASpIQA9VS4/njGaP9+2mAAOHXq/w0d1v5ELwr/p5qE/pgmxgBCsln/yC6r/w1jU//Su/3/qi0qAYrRfADWoo0ADOacAGYkcP4Dk0MANNd7/+mrNv9iiT4A99on/+fa7AD3v38Aw5JUAKWwXP8T1F7/EUrjAFgomQHGkwH/zkP1/vAD2v89jdX/YbdqAMPo6/5fVpoA0TDN/nbR8f/weN8B1R2fAKN/k/8N2l0AVRhE/kYUUP+9BYwBUmH+/2Njv/+EVIX/a9p0/3B6LgBpESAAwqA//0TeJwHY/VwAsWnN/5XJwwAq4Qv/KKJzAAkHUQCl2tsAtBYA/h2S/P+Sz+EBtIdgAB+jcACxC9v/hQzB/itOMgBBcXkBO9kG/25eGAFwrG8ABw9gACRVewBHlhX/0Em8AMALpwHV9SIACeZcAKKOJ//XWhsAYmFZAF5P0wBanfAAX9x+AWaw4gAkHuD+Ix9/AOfocwFVU4IA0kn1/y+Pcv9EQcUAO0g+/7eFrf5deXb/O7FR/+pFrf/NgLEA3PQzABr00QFJ3k3/owhg/paV0wCe/ssBNn+LAKHgOwAEbRb/3iot/9CSZv/sjrsAMs31/wpKWf4wT44A3kyC/x6mPwDsDA3/Mbj0ALtxZgDaZf0AmTm2/iCWKgAZxpIB7fE4AIxEBQBbpKz/TpG6/kM0zQDbz4EBbXMRADaPOgEV+Hj/s/8eAMHsQv8B/wf//cAw/xNF2QED1gD/QGWSAd99I//rSbP/+afiAOGvCgFhojoAanCrAVSsBf+FjLL/hvWOAGFaff+6y7n/300X/8BcagAPxnP/2Zj4AKuyeP/khjUAsDbBAfr7NQDVCmQBIsdqAJcf9P6s4Ff/Du0X//1VGv9/J3T/rGhkAPsORv/U0Ir//dP6ALAxpQAPTHv/Jdqg/1yHEAEKfnL/RgXg//f5jQBEFDwB8dK9/8PZuwGXA3EAl1yuAOc+sv/bt+EAFxch/821UAA5uPj/Q7QB/1p7Xf8nAKL/YPg0/1RCjAAif+T/wooHAaZuvAAVEZsBmr7G/9ZQO/8SB48ASB3iAcfZ+QDooUcBlb7JANmvX/5xk0P/io/H/3/MAQAdtlMBzuab/7rMPAAKfVX/6GAZ//9Z9//V/q8B6MFRABwrnP4MRQgAkxj4ABLGMQCGPCMAdvYS/zFY/v7kFbr/tkFwAdsWAf8WfjT/vTUx/3AZjwAmfzf/4mWj/tCFPf+JRa4BvnaR/zxi2//ZDfX/+ogKAFT+4gDJH30B8DP7/x+Dgv8CijL/19exAd8M7v/8lTj/fFtE/0h+qv53/2QAgofo/w5PsgD6g8UAisbQAHnYi/53EiT/HcF6ABAqLf/V8OsB5r6p/8Yj5P5urUgA1t3x/ziUhwDAdU7+jV3P/49BlQAVEmL/Xyz0AWq/TQD+VQj+1m6w/0mtE/6gxMf/7VqQAMGscf/Im4j+5FrdAIkxSgGk3df/0b0F/2nsN/8qH4EBwf/sAC7ZPACKWLv/4lLs/1FFl/+OvhABDYYIAH96MP9RQJwAq/OLAO0j9gB6j8H+1HqSAF8p/wFXhE0ABNQfABEfTgAnLa3+GI7Z/18JBv/jUwYAYjuC/j4eIQAIc9MBomGA/we4F/50HKj/+IqX/2L08AC6doIAcvjr/2mtyAGgfEf/XiSkAa9Bkv/u8ar+ysbFAORHiv4t9m3/wjSeAIW7sABT/Jr+Wb3d/6pJ/ACUOn0AJEQz/ipFsf+oTFb/JmTM/yY1IwCvE2EA4e79/1FRhwDSG//+60lrAAjPcwBSf4gAVGMV/s8TiABkpGUAUNBN/4TP7f8PAw//IaZuAJxfVf8luW8Blmoj/6aXTAByV4f/n8JAAAx6H//oB2X+rXdiAJpH3P6/OTX/qOig/+AgY//anKUAl5mjANkNlAHFcVkAlRyh/s8XHgBphOP/NuZe/4WtzP9ct53/WJD8/mYhWgCfYQMAtdqb//BydwBq1jX/pb5zAZhb4f9Yaiz/0D1xAJc0fAC/G5z/bjbsAQ4epv8nf88B5cccALzkvP5knesA9tq3AWsWwf/OoF8ATO+TAM+hdQAzpgL/NHUK/kk44/+YweEAhF6I/2W/0QAga+X/xiu0AWTSdgByQ5n/F1ga/1maXAHceIz/kHLP//xz+v8izkgAioV//wiyfAFXS2EAD+Vc/vBDg/92e+P+knho/5HV/wGBu0b/23c2AAETrQAtlpQB+FNIAMvpqQGOazgA9/kmAS3yUP8e6WcAYFJGABfJbwBRJx7/obdO/8LqIf9E44z+2M50AEYb6/9okE8ApOZd/taHnACau/L+vBSD/yRtrgCfcPEABW6VASSl2gCmHRMBsi5JAF0rIP74ve0AZpuNAMldw//xi/3/D29i/2xBo/6bT77/Sa7B/vYoMP9rWAv+ymFV//3MEv9x8kIAbqDC/tASugBRFTwAvGin/3ymYf7ShY4AOPKJ/ilvggBvlzoBb9WN/7es8f8mBsT/uQd7/y4L9gD1aXcBDwKh/wjOLf8Sykr/U3xzAdSNnQBTCNH+iw/o/6w2rf4y94QA1r3VAJC4aQDf/vgA/5Pw/xe8SAAHMzYAvBm0/ty0AP9ToBQAo73z/zrRwv9XSTwAahgxAPX53AAWracAdgvD/xN+7QBunyX/O1IvALS7VgC8lNABZCWF/wdwwQCBvJz/VGqB/4XhygAO7G//KBRlAKysMf4zNkr/+7m4/12b4P+0+eAB5rKSAEg5Nv6yPrgAd81IALnv/f89D9oAxEM4/+ogqwEu2+QA0Gzq/xQ/6P+lNccBheQF/zTNawBK7oz/lpzb/u+ssv/7vd/+II7T/9oPigHxxFAAHCRi/hbqxwA97dz/9jklAI4Rjv+dPhoAK+5f/gPZBv/VGfABJ9yu/5rNMP4TDcD/9CI2/owQmwDwtQX+m8E8AKaABP8kkTj/lvDbAHgzkQBSmSoBjOySAGtc+AG9CgMAP4jyANMnGAATyqEBrRu6/9LM7/4p0aL/tv6f/6x0NADDZ97+zUU7ADUWKQHaMMIAUNLyANK8zwC7oaH+2BEBAIjhcQD6uD8A3x5i/k2oogA7Na8AE8kK/4vgwgCTwZr/1L0M/gHIrv8yhXEBXrNaAK22hwBesXEAK1nX/4j8av97hlP+BfVC/1IxJwHcAuAAYYGxAE07WQA9HZsBy6vc/1xOiwCRIbX/qRiNATeWswCLPFD/2idhAAKTa/88+EgAreYvAQZTtv8QaaL+idRR/7S4hgEn3qT/3Wn7Ae9wfQA/B2EAP2jj/5Q6DABaPOD/VNT8AE/XqAD43ccBc3kBACSseAAgorv/OWsx/5MqFQBqxisBOUpXAH7LUf+Bh8MAjB+xAN2LwgAD3tcAg0TnALFWsv58l7QAuHwmAUajEQD5+7UBKjfjAOKhLAAX7G4AM5WOAV0F7ADat2r+QxhNACj10f/eeZkApTkeAFN9PABGJlIB5Qa8AG3enf83dj//zZe6AOMhlf/+sPYB47HjACJqo/6wK08Aal9OAbnxev+5Dj0AJAHKAA2yov/3C4QAoeZcAUEBuf/UMqUBjZJA/57y2gAVpH0A1Yt6AUNHVwDLnrIBl1wrAJhvBf8nA+//2f/6/7A/R/9K9U0B+q4S/yIx4//2Lvv/miMwAX2dPf9qJE7/YeyZAIi7eP9xhqv/E9XZ/the0f/8BT0AXgPKAAMat/9Avyv/HhcVAIGNTf9meAcBwkyMALyvNP8RUZQA6FY3AeEwrACGKir/7jIvAKkS/gAUk1f/DsPv/0X3FwDu5YD/sTFwAKhi+/95R/gA8wiR/vbjmf/bqbH++4ul/wyjuf+kKKv/mZ8b/vNtW//eGHABEtbnAGudtf7DkwD/wmNo/1mMvv+xQn7+arlCADHaHwD8rp4AvE/mAe4p4ADU6ggBiAu1AKZ1U/9Ew14ALoTJAPCYWACkOUX+oOAq/zvXQ/93w43/JLR5/s8vCP+u0t8AZcVE//9SjQH6iekAYVaFARBQRQCEg58AdF1kAC2NiwCYrJ3/WitbAEeZLgAnEHD/2Yhh/9zGGf6xNTEA3liG/4APPADPwKn/wHTR/2pO0wHI1bf/Bwx6/t7LPP8hbsf++2p1AOThBAF4Ogf/3cFU/nCFGwC9yMn/i4eWAOo3sP89MkEAmGyp/9xVAf9wh+MAohq6AM9guf70iGsAXZkyAcZhlwBuC1b/j3Wu/3PUyAAFyrcA7aQK/rnvPgDseBL+Yntj/6jJwv4u6tYAv4Ux/2OpdwC+uyMBcxUt//mDSABwBnv/1jG1/qbpIgBcxWb+/eTN/wM7yQEqYi4A2yUj/6nDJgBefMEBnCvfAF9Ihf54zr8AesXv/7G7T//+LgIB+qe+AFSBEwDLcab/+R+9/kidyv/QR0n/zxhIAAoQEgHSUUz/WNDA/37za//ujXj/x3nq/4kMO/8k3Hv/lLM8/vAMHQBCAGEBJB4m/3MBXf9gZ+f/xZ47AcCk8ADKyjn/GK4wAFlNmwEqTNcA9JfpABcwUQDvfzT+44Il//h0XQF8hHYArf7AAQbrU/9ur+cB+xy2AIH5Xf5UuIAATLU+AK+AugBkNYj+bR3iAN3pOgEUY0oAABagAIYNFQAJNDf/EVmMAK8iOwBUpXf/4OLq/wdIpv97c/8BEtb2APoHRwHZ3LkA1CNM/yZ9rwC9YdIAcu4s/ym8qf4tupoAUVwWAISgwQB50GL/DVEs/8ucUgBHOhX/0HK//jImkwCa2MMAZRkSADz61//phOv/Z6+OARAOXACNH27+7vEt/5nZ7wFhqC//+VUQARyvPv85/jYA3ud+AKYtdf4SvWD/5EwyAMj0XgDGmHgBRCJF/wxBoP5lE1oAp8V4/0Q2uf8p2rwAcagwAFhpvQEaUiD/uV2kAeTw7f9CtjUAq8Vc/2sJ6QHHeJD/TjEK/22qaf9aBB//HPRx/0o6CwA+3Pb/eZrI/pDSsv9+OYEBK/oO/2VvHAEvVvH/PUaW/zVJBf8eGp4A0RpWAIrtSgCkX7wAjjwd/qJ0+P+7r6AAlxIQANFvQf7Lhif/WGwx/4MaR//dG9f+aGld/x/sH/6HANP/j39uAdRJ5QDpQ6f+wwHQ/4QR3f8z2VoAQ+sy/9/SjwCzNYIB6WrGANmt3P9w5Rj/r5pd/kfL9v8wQoX/A4jm/xfdcf7rb9UAqnhf/vvdAgAtgp7+aV7Z//I0tP7VRC3/aCYcAPSeTAChyGD/zzUN/7tDlACqNvgAd6Ky/1MUCwAqKsABkp+j/7fobwBN5RX/RzWPABtMIgD2iC//2ye2/1zgyQETjg7/Rbbx/6N29QAJbWoBqrX3/04v7v9U0rD/1WuLACcmCwBIFZYASIJFAM1Nm/6OhRUAR2+s/uIqO/+zANcBIYDxAOr8DQG4TwgAbh5J//aNvQCqz9oBSppF/4r2Mf+bIGQAfUpp/1pVPf8j5bH/Pn3B/5lWvAFJeNQA0Xv2/ofRJv+XOiwBXEXW/w4MWP/8mab//c9w/zxOU//jfG4AtGD8/zV1If6k3FL/KQEb/yakpv+kY6n+PZBG/8CmEgBr+kIAxUEyAAGzEv//aAH/K5kj/1BvqABur6gAKWkt/9sOzf+k6Yz+KwF2AOlDwwCyUp//ild6/9TuWv+QI3z+GYykAPvXLP6FRmv/ZeNQ/lypNwDXKjEAcrRV/yHoGwGs1RkAPrB7/iCFGP/hvz4AXUaZALUqaAEWv+D/yMiM//nqJQCVOY0AwzjQ//6CRv8grfD/HdzHAG5kc/+E5fkA5Onf/yXY0f6ysdH/ty2l/uBhcgCJYaj/4d6sAKUNMQHS68z//AQc/kaglwDovjT+U/hd/z7XTQGvr7P/oDJCAHkw0AA/qdH/ANLIAOC7LAFJolIACbCP/xNMwf8dO6cBGCuaABy+vgCNvIEA6OvL/+oAbf82QZ8APFjo/3n9lv786YP/xm4pAVNNR//IFjv+av3y/xUMz//tQr0AWsbKAeGsfwA1FsoAOOaEAAFWtwBtvioA80SuAW3kmgDIsXoBI6C3/7EwVf9a2qn/+JhOAMr+bgAGNCsAjmJB/z+RFgBGal0A6IprAW6zPf/TgdoB8tFcACNa2QG2j2r/dGXZ/3L63f+tzAYAPJajAEmsLP/vblD/7UyZ/qGM+QCV6OUAhR8o/66kdwBxM9YAgeQC/kAi8wBr4/T/rmrI/1SZRgEyIxAA+krY/uy9Qv+Z+Q0A5rIE/90p7gB243n/XleM/v53XABJ7/b+dVeAABPTkf+xLvwA5Vv2AUWA9//KTTYBCAsJ/5lgpgDZ1q3/hsACAQDPAAC9rmsBjIZkAJ7B8wG2ZqsA65ozAI4Fe/88qFkB2Q5c/xPWBQHTp/4ALAbK/ngS7P8Pcbj/uN+LACixd/62e1r/sKWwAPdNwgAb6ngA5wDW/zsnHgB9Y5H/lkREAY3e+ACZe9L/bn+Y/+Uh1gGH3cUAiWECAAyPzP9RKbwAc0+C/14DhACYr7v/fI0K/37As/8LZ8YAlQYtANtVuwHmErL/SLaYAAPGuP+AcOABYaHmAP5jJv86n8UAl0LbADtFj/+5cPkAd4gv/3uChACoR1//cbAoAei5rQDPXXUBRJ1s/2YFk/4xYSEAWUFv/vceo/982d0BZvrYAMauS/45NxIA4wXsAeXVrQDJbdoBMenvAB43ngEZsmoAm2+8AV5+jADXH+4BTfAQANXyGQEmR6gAzbpd/jHTjP/bALT/hnalAKCThv9uuiP/xvMqAPOSdwCG66MBBPGH/8Euwf5ntE//4QS4/vJ2ggCSh7AB6m8eAEVC1f4pYHsAeV4q/7K/w/8ugioAdVQI/+kx1v7uem0ABkdZAezTewD0DTD+d5QOAHIcVv9L7Rn/keUQ/oFkNf+Glnj+qJ0yABdIaP/gMQ4A/3sW/5e5l/+qULgBhrYUAClkZQGZIRAATJpvAVbO6v/AoKT+pXtd/wHYpP5DEa//qQs7/54pPf9JvA7/wwaJ/xaTHf8UZwP/9oLj/3oogADiLxj+IyQgAJi6t/9FyhQAw4XDAN4z9wCpq14BtwCg/0DNEgGcUw//xTr5/vtZbv8yClj+MyvYAGLyxgH1l3EAq+zCAcUfx//lUSYBKTsUAP1o5gCYXQ7/9vKS/tap8P/wZmz+oKfsAJravACW6cr/GxP6AQJHhf+vDD8BkbfGAGh4c/+C+/cAEdSn/z57hP/3ZL0Am9+YAI/FIQCbOyz/ll3wAX8DV/9fR88Bp1UB/7yYdP8KFxcAicNdATZiYQDwAKj/lLx/AIZrlwBM/asAWoTAAJIWNgDgQjb+5rrl/ye2xACU+4L/QYNs/oABoACpMaf+x/6U//sGgwC7/oH/VVI+ALIXOv/+hAUApNUnAIb8kv4lNVH/m4ZSAM2n7v9eLbT/hCihAP5vcAE2S9kAs+bdAetev/8X8zABypHL/yd2Kv91jf0A/gDeACv7MgA2qeoBUETQAJTL8/6RB4cABv4AAPy5fwBiCIH/JiNI/9Mk3AEoGlkAqEDF/gPe7/8CU9f+tJ9pADpzwgC6dGr/5ffb/4F2wQDKrrcBpqFIAMlrk/7tiEoA6eZqAWlvqABA4B4BAeUDAGaXr//C7uT//vrUALvteQBD+2ABxR4LALdfzADNWYoAQN0lAf/fHv+yMNP/8cha/6fRYP85gt0ALnLI/z24QgA3thj+brYhAKu+6P9yXh8AEt0IAC/n/gD/cFMAdg/X/60ZKP7AwR//7hWS/6vBdv9l6jX+g9RwAFnAawEI0BsAtdkP/+eV6ACM7H4AkAnH/wxPtf6Ttsr/E222/zHU4QBKo8sAr+mUABpwMwDBwQn/D4f5AJbjggDMANsBGPLNAO7Qdf8W9HAAGuUiACVQvP8mLc7+8Frh/x0DL/8q4EwAuvOnACCED/8FM30Ai4cYAAbx2wCs5YX/9tYyAOcLz/+/flMBtKOq//U4GAGypNP/AxDKAWI5dv+Ng1n+ITMYAPOVW//9NA4AI6lD/jEeWP+zGyT/pYy3ADq9lwBYHwAAS6lCAEJlx/8Y2McBecQa/w5Py/7w4lH/XhwK/1PB8P/MwYP/Xg9WANoonQAzwdEAAPKxAGa59wCebXQAJodbAN+vlQDcQgH/VjzoABlgJf/heqIB17uo/56dLgA4q6IA6PBlAXoWCQAzCRX/NRnu/9ke6P59qZQADehmAJQJJQClYY0B5IMpAN4P8//+EhEABjztAWoDcQA7hL0AXHAeAGnQ1QAwVLP/u3nn/hvYbf+i3Wv+Se/D//ofOf+Vh1n/uRdzAQOjnf8ScPoAGTm7/6FgpAAvEPMADI37/kPquP8pEqEArwZg/6CsNP4YsLf/xsFVAXx5if+XMnL/3Ms8/8/vBQEAJmv/N+5e/kaYXgDV3E0BeBFF/1Wkvv/L6lEAJjEl/j2QfACJTjH+qPcwAF+k/ABpqYcA/eSGAECmSwBRSRT/z9IKAOpqlv9eIlr//p85/tyFYwCLk7T+GBe5ACk5Hv+9YUwAQbvf/+CsJf8iPl8B55DwAE1qfv5AmFsAHWKbAOL7Nf/q0wX/kMve/6Sw3f4F5xgAs3rNACQBhv99Rpf+YeT8AKyBF/4wWtH/luBSAVSGHgDxxC4AZ3Hq/y5lef4ofPr/hy3y/gn5qP+MbIP/j6OrADKtx/9Y3o7/yF+eAI7Ao/8HdYcAb3wWAOwMQf5EJkH/467+APT1JgDwMtD/oT/6ADzR7wB6IxMADiHm/gKfcQBqFH//5M1gAInSrv601JD/WWKaASJYiwCnonABQW7FAPElqQBCOIP/CslT/oX9u/+xcC3+xPsAAMT6l//u6Nb/ltHNABzwdgBHTFMB7GNbACr6gwFgEkD/dt4jAHHWy/96d7j/QhMkAMxA+QCSWYsAhj6HAWjpZQC8VBoAMfmBANDWS//Pgk3/c6/rAKsCif+vkboBN/WH/5pWtQFkOvb/bcc8/1LMhv/XMeYBjOXA/97B+/9RiA//s5Wi/xcnHf8HX0v+v1HeAPFRWv9rMcn/9NOdAN6Mlf9B2zj+vfZa/7I7nQEw2zQAYiLXABwRu/+vqRgAXE+h/+zIwgGTj+oA5eEHAcWoDgDrMzUB/XiuAMUGqP/KdasAoxXOAHJVWv8PKQr/whNjAEE32P6iknQAMs7U/0CSHf+enoMBZKWC/6wXgf99NQn/D8ESARoxC/+1rskBh8kO/2QTlQDbYk8AKmOP/mAAMP/F+VP+aJVP/+tuiP5SgCz/QSkk/ljTCgC7ebsAYobHAKu8s/7SC+7/QnuC/jTqPQAwcRf+BlZ4/3ey9QBXgckA8o3RAMpyVQCUFqEAZ8MwABkxq/+KQ4IAtkl6/pQYggDT5ZoAIJueAFRpPQCxwgn/pllWATZTuwD5KHX/bQPX/zWSLAE/L7MAwtgD/g5UiACIsQ3/SPO6/3URff/TOtP/XU/fAFpY9f+L0W//Rt4vAAr2T//G2bIA4+ELAU5+s/8+K34AZ5QjAIEIpf718JQAPTOOAFHQhgAPiXP/03fs/5/1+P8Choj/5os6AaCk/gByVY3/Maa2/5BGVAFVtgcALjVdAAmmof83orL/Lbi8AJIcLP6pWjEAeLLxAQ57f/8H8ccBvUIy/8aPZf6984f/jRgY/kthVwB2+5oB7TacAKuSz/+DxPb/iEBxAZfoOQDw2nMAMT0b/0CBSQH8qRv/KIQKAVrJwf/8efABus4pACvGYQCRZLcAzNhQ/qyWQQD55cT+aHtJ/01oYP6CtAgAaHs5ANzK5f9m+dMAVg7o/7ZO0QDv4aQAag0g/3hJEf+GQ+kAU/61ALfscAEwQIP/8djz/0HB4gDO8WT+ZIam/+3KxQA3DVEAIHxm/yjksQB2tR8B56CG/3e7ygAAjjz/gCa9/6bJlgDPeBoBNrisAAzyzP6FQuYAIiYfAbhwUAAgM6X+v/M3ADpJkv6bp83/ZGiY/8X+z/+tE/cA7grKAO+X8gBeOyf/8B1m/wpcmv/lVNv/oYFQANBazAHw267/nmaRATWyTP80bKgBU95rANMkbQB2OjgACB0WAO2gxwCq0Z0AiUcvAI9WIADG8gIA1DCIAVysugDml2kBYL/lAIpQv/7w2IL/YisG/qjEMQD9ElsBkEl5AD2SJwE/aBj/uKVw/n7rYgBQ1WL/ezxX/1KM9QHfeK3/D8aGAc487wDn6lz/Ie4T/6VxjgGwdyYAoCum/u9baQBrPcIBGQREAA+LMwCkhGr/InQu/qhfxQCJ1BcASJw6AIlwRf6WaZr/7MmdABfUmv+IUuP+4jvd/1+VwABRdjT/ISvXAQ6TS/9ZnHn+DhJPAJPQiwGX2j7/nFgIAdK4Yv8Ur3v/ZlPlANxBdAGW+gT/XI7c/yL3Qv/M4bP+l1GXAEco7P+KPz4ABk/w/7e5tQB2MhsAP+PAAHtjOgEy4Jv/EeHf/tzgTf8OLHsBjYCvAPjUyACWO7f/k2EdAJbMtQD9JUcAkVV3AJrIugACgPn/Uxh8AA5XjwCoM/UBfJfn/9DwxQF8vrkAMDr2ABTp6AB9EmL/Df4f//Wxgv9sjiMAq33y/owMIv+loaIAzs1lAPcZIgFkkTkAJ0Y5AHbMy//yAKIApfQeAMZ04gCAb5n/jDa2ATx6D/+bOjkBNjLGAKvTHf9riqf/rWvH/22hwQBZSPL/znNZ//r+jv6xyl7/UVkyAAdpQv8Z/v/+y0AX/0/ebP8n+UsA8XwyAO+YhQDd8WkAk5diANWhef7yMYkA6SX5/iq3GwC4d+b/2SCj/9D75AGJPoP/T0AJ/l4wcQARijL+wf8WAPcSxQFDN2gAEM1f/zAlQgA3nD8BQFJK/8g1R/7vQ30AGuDeAN+JXf8e4Mr/CdyEAMYm6wFmjVYAPCtRAYgcGgDpJAj+z/KUAKSiPwAzLuD/cjBP/wmv4gDeA8H/L6Do//9daf4OKuYAGopSAdAr9AAbJyb/YtB//0CVtv8F+tEAuzwc/jEZ2v+pdM3/dxJ4AJx0k/+ENW3/DQrKAG5TpwCd24n/BgOC/zKnHv88ny//gYCd/l4DvQADpkQAU9/XAJZawgEPqEEA41Mz/82rQv82uzwBmGYt/3ea4QDw94gAZMWy/4tH3//MUhABKc4q/5zA3f/Ye/T/2tq5/7u67//8rKD/wzQWAJCutf67ZHP/006w/xsHwQCT1Wj/WskK/1B7QgEWIboAAQdj/h7OCgDl6gUANR7SAIoI3P5HN6cASOFWAXa+vAD+wWUBq/ms/16et/5dAmz/sF1M/0ljT/9KQIH+9i5BAGPxf/72l2b/LDXQ/jtm6gCar6T/WPIgAG8mAQD/tr7/c7AP/qk8gQB67fEAWkw/AD5KeP96w24AdwSyAN7y0gCCIS7+nCgpAKeScAExo2//ebDrAEzPDv8DGcYBKevVAFUk1gExXG3/yBge/qjswwCRJ3wB7MOVAFokuP9DVar/JiMa/oN8RP/vmyP/NsmkAMQWdf8xD80AGOAdAX5xkAB1FbYAy5+NAN+HTQCw5rD/vuXX/2Mltf8zFYr/Gb1Z/zEwpf6YLfcAqmzeAFDKBQAbRWf+zBaB/7T8Pv7SAVv/km7+/9uiHADf/NUBOwghAM4Q9ACB0zAAa6DQAHA70QBtTdj+IhW5//ZjOP+zixP/uR0y/1RZEwBK+mL/4SrI/8DZzf/SEKcAY4RfASvmOQD+C8v/Y7w//3fB+/5QaTYA6LW9AbdFcP/Qq6X/L220/3tTpQCSojT/mgsE/5fjWv+SiWH+Pekp/14qN/9spOwAmET+AAqMg/8Kak/+856JAEOyQv6xe8b/Dz4iAMVYKv+VX7H/mADG/5X+cf/hWqP/fdn3ABIR4ACAQnj+wBkJ/zLdzQAx1EYA6f+kAALRCQDdNNv+rOD0/144zgHyswL/H1ukAeYuiv+95twAOS89/28LnQCxW5gAHOZiAGFXfgDGWZH/p09rAPlNoAEd6eb/lhVW/jwLwQCXJST+uZbz/+TUUwGsl7QAyambAPQ86gCO6wQBQ9o8AMBxSwF088//QaybAFEenP9QSCH+Eudt/45rFf59GoT/sBA7/5bJOgDOqckA0HniACisDv+WPV7/ODmc/408kf8tbJX/7pGb/9FVH/7ADNIAY2Jd/pgQlwDhudwAjess/6CsFf5HGh//DUBd/hw4xgCxPvgBtgjxAKZllP9OUYX/gd7XAbypgf/oB2EAMXA8/9nl+wB3bIoAJxN7/oMx6wCEVJEAguaU/xlKuwAF9Tb/udvxARLC5P/xymYAaXHKAJvrTwAVCbL/nAHvAMiUPQBz99L/Md2HADq9CAEjLgkAUUEF/zSeuf99dC7/SowN/9JcrP6TF0cA2eD9/nNstP+ROjD+27EY/5z/PAGak/IA/YZXADVL5QAww97/H68y/5zSeP/QI97/EvizAQIKZf+dwvj/nsxl/2j+xf9PPgQAsqxlAWCS+/9BCpwAAoml/3QE5wDy1wEAEyMd/yuhTwA7lfYB+0KwAMghA/9Qbo7/w6ERAeQ4Qv97L5H+hASkAEOurAAZ/XIAV2FXAfrcVABgW8j/JX07ABNBdgChNPH/7awG/7C///8BQYL+377mAGX95/+SI20A+h1NATEAEwB7WpsBFlYg/9rVQQBvXX8APF2p/wh/tgARug7+/Yn2/9UZMP5M7gD/+FxG/2PgiwC4Cf8BB6TQAM2DxgFX1scAgtZfAN2V3gAXJqv+xW7VACtzjP7XsXYAYDRCAXWe7QAOQLb/Lj+u/55fvv/hzbH/KwWO/6xj1P/0u5MAHTOZ/+R0GP4eZc8AE/aW/4bnBQB9huIBTUFiAOyCIf8Fbj4ARWx//wdxFgCRFFP+wqHn/4O1PADZ0bH/5ZTU/gODuAB1sbsBHA4f/7BmUAAyVJf/fR82/xWdhf8Ts4sB4OgaACJ1qv+n/Kv/SY3O/oH6IwBIT+wB3OUU/ynKrf9jTO7/xhbg/2zGw/8kjWAB7J47/2pkVwBu4gIA4+reAJpdd/9KcKT/Q1sC/xWRIf9m1on/r+Zn/qP2pgBd93T+p+Ac/9wCOQGrzlQAe+QR/xt4dwB3C5MBtC/h/2jIuf6lAnIATU7UAC2asf8YxHn+Up22AFoQvgEMk8UAX++Y/wvrRwBWknf/rIbWADyDxACh4YEAH4J4/l/IMwBp59L/OgmU/yuo3f987Y4AxtMy/i71ZwCk+FQAmEbQ/7R1sQBGT7kA80ogAJWczwDFxKEB9TXvAA9d9v6L8DH/xFgk/6ImewCAyJ0Brkxn/62pIv7YAav/cjMRAIjkwgBuljj+avafABO4T/+WTfD/m1CiAAA1qf8dl1YARF4QAFwHbv5idZX/+U3m//0KjADWfFz+I3brAFkwOQEWNaYAuJA9/7P/wgDW+D3+O272AHkVUf6mA+QAakAa/0Xohv/y3DX+LtxVAHGV9/9hs2f/vn8LAIfRtgBfNIEBqpDO/3rIzP+oZJIAPJCV/kY8KAB6NLH/9tNl/67tCAAHM3gAEx+tAH7vnP+PvcsAxIBY/+mF4v8efa3/yWwyAHtkO//+owMB3ZS1/9aIOf7etIn/z1g2/xwh+/9D1jQB0tBkAFGqXgCRKDUA4G/n/iMc9P/ix8P+7hHmANnZpP6pnd0A2i6iAcfPo/9sc6IBDmC7/3Y8TAC4n5gA0edH/iqkuv+6mTP+3au2/6KOrQDrL8EAB4sQAV+kQP8Q3aYA28UQAIQdLP9kRXX/POtY/ihRrQBHvj3/u1idAOcLFwDtdaQA4ajf/5pydP+jmPIBGCCqAH1icf6oE0wAEZ3c/ps0BQATb6H/R1r8/61u8AAKxnn//f/w/0J70gDdwtf+eaMR/+EHYwC+MbYAcwmFAegaiv/VRIQALHd6/7NiMwCVWmoARzLm/wqZdv+xRhkApVfNADeK6gDuHmEAcZvPAGKZfwAia9v+dXKs/0y0//7yObP/3SKs/jiiMf9TA///cd29/7wZ5P4QWFn/RxzG/hYRlf/zef7/a8pj/wnODgHcL5kAa4knAWExwv+VM8X+ujoL/2sr6AHIBg7/tYVB/t3kq/97PucB4+qz/yK91P70u/kAvg1QAYJZAQDfha0ACd7G/0J/SgCn2F3/m6jGAUKRAABEZi4BrFqaANiAS/+gKDMAnhEbAXzwMQDsyrD/l3zA/ybBvgBftj0Ao5N8//+lM/8cKBH+12BOAFaR2v4fJMr/VgkFAG8pyP/tbGEAOT4sAHW4DwEt8XQAmAHc/52lvAD6D4MBPCx9/0Hc+/9LMrgANVqA/+dQwv+IgX8BFRK7/y06of9HkyIArvkL/iONHQDvRLH/c246AO6+sQFX9ab/vjH3/5JTuP+tDif/ktdoAI7feACVyJv/1M+RARC12QCtIFf//yO1AHffoQHI317/Rga6/8BDVf8yqZgAkBp7/zjzs/4URIgAJ4y8/v3QBf/Ic4cBK6zl/5xouwCX+6cANIcXAJeZSACTxWv+lJ4F/+6PzgB+mYn/WJjF/gdEpwD8n6X/7042/xg/N/8m3l4A7bcM/87M0gATJ/b+HkrnAIdsHQGzcwAAdXZ0AYQG/P+RgaEBaUONAFIl4v/u4uT/zNaB/qJ7ZP+5eeoALWznAEIIOP+EiIAArOBC/q+dvADm3+L+8ttFALgOdwFSojgAcnsUAKJnVf8x72P+nIfXAG//p/4nxNYAkCZPAfmofQCbYZz/FzTb/5YWkAAslaX/KH+3AMRN6f92gdL/qofm/9Z3xgDp8CMA/TQH/3VmMP8VzJr/s4ix/xcCAwGVgln//BGfAUY8GgCQaxEAtL48/zi2O/9uRzb/xhKB/5XgV//fFZj/iha2//qczQDsLdD/T5TyAWVG0QBnTq4AZZCs/5iI7QG/wogAcVB9AZgEjQCbljX/xHT1AO9ySf4TUhH/fH3q/yg0vwAq0p7/m4SlALIFKgFAXCj/JFVN/7LkdgCJQmD+c+JCAG7wRf6Xb1AAp67s/+Nsa/+88kH/t1H/ADnOtf8vIrX/1fCeAUdLXwCcKBj/ZtJRAKvH5P+aIikA469LABXvwwCK5V8BTMAxAHV7VwHj4YIAfT4//wLGqwD+JA3+kbrOAJT/9P8jAKYAHpbbAVzk1ABcxjz+PoXI/8kpOwB97m3/tKPuAYx6UgAJFlj/xZ0v/5leOQBYHrYAVKFVALKSfACmpgf/FdDfAJy28gCbebkAU5yu/poQdv+6U+gB3zp5/x0XWAAjfX//qgWV/qQMgv+bxB0AoWCIAAcjHQGiJfsAAy7y/wDZvAA5ruIBzukCADm7iP57vQn/yXV//7okzADnGdgAUE5pABOGgf+Uy0QAjVF9/vilyP/WkIcAlzem/ybrWwAVLpoA3/6W/yOZtP99sB0BK2Ie/9h65v/poAwAObkM/vBxB/8FCRD+GltsAG3GywAIkygAgYbk/3y6KP9yYoT+poQXAGNFLAAJ8u7/uDU7AISBZv80IPP+k9/I/3tTs/6HkMn/jSU4AZc84/9aSZwBy6y7AFCXL/9eief/JL87/+HRtf9K19X+Bnaz/5k2wQEyAOcAaJ1IAYzjmv+24hD+YOFc/3MUqv4G+k4A+Eut/zVZBv8AtHYASK0BAEAIzgGuhd8AuT6F/9YLYgDFH9AAq6f0/xbntQGW2rkA96lhAaWL9/8veJUBZ/gzADxFHP4Zs8QAfAfa/jprUQC46Zz//EokAHa8QwCNXzX/3l6l/i49NQDOO3P/L+z6/0oFIAGBmu7/aiDiAHm7Pf8DpvH+Q6qs/x3Ysv8XyfwA/W7zAMh9OQBtwGD/NHPuACZ58//JOCEAwnaCAEtgGf+qHub+Jz/9ACQt+v/7Ae8AoNRcAS3R7QDzIVf+7VTJ/9QSnf7UY3//2WIQ/ous7wCoyYL/j8Gp/+6XwQHXaCkA7z2l/gID8gAWy7H+scwWAJWB1f4fCyn/AJ95/qAZcv+iUMgAnZcLAJqGTgHYNvwAMGeFAGncxQD9qE3+NbMXABh58AH/LmD/azyH/mLN+f8/+Xf/eDvT/3K0N/5bVe0AldRNAThJMQBWxpYAXdGgAEXNtv/0WisAFCSwAHp03QAzpycB5wE//w3FhgAD0SL/hzvKAKdkTgAv30wAuTw+ALKmewGEDKH/Pa4rAMNFkAB/L78BIixOADnqNAH/Fij/9l6SAFPkgAA8TuD/AGDS/5mv7ACfFUkAtHPE/oPhagD/p4YAnwhw/3hEwv+wxMb/djCo/12pAQBwyGYBShj+ABONBP6OPj8Ag7O7/02cm/93VqQAqtCS/9CFmv+Umzr/onjo/vzVmwDxDSoAXjKDALOqcACMU5f/N3dUAYwj7/+ZLUMB7K8nADaXZ/+eKkH/xO+H/lY1ywCVYS/+2CMR/0YDRgFnJFr/KBqtALgwDQCj29n/UQYB/92qbP7p0F0AZMn5/lYkI//Rmh4B48n7/wK9p/5kOQMADYApAMVkSwCWzOv/ka47AHj4lf9VN+EActI1/sfMdwAO90oBP/uBAENolwGHglAAT1k3/3Xmnf8ZYI8A1ZEFAEXxeAGV81//cioUAINIAgCaNRT/ST5tAMRmmAApDMz/eiYLAfoKkQDPfZQA9vTe/ykgVQFw1X4AovlWAUfGf/9RCRUBYicE/8xHLQFLb4kA6jvnACAwX//MH3IBHcS1/zPxp/5dbY4AaJAtAOsMtf80cKQATP7K/64OogA965P/K0C5/ul92QDzWKf+SjEIAJzMQgB81nsAJt12AZJw7AByYrEAl1nHAFfFcAC5laEALGClAPizFP+829j+KD4NAPOOjQDl487/rMoj/3Ww4f9SbiYBKvUO/xRTYQAxqwoA8nd4ABnoPQDU8JP/BHM4/5ER7/7KEfv/+RL1/2N17wC4BLP/9u0z/yXvif+mcKb/Ubwh/7n6jv82u60A0HDJAPYr5AFouFj/1DTE/zN1bP/+dZsALlsP/1cOkP9X48wAUxpTAZ9M4wCfG9UBGJdsAHWQs/6J0VIAJp8KAHOFyQDftpwBbsRd/zk86QAFp2n/msWkAGAiuv+ThSUB3GO+AAGnVP8UkasAwsX7/l9Ohf/8+PP/4V2D/7uGxP/YmaoAFHae/owBdgBWng8BLdMp/5MBZP5xdEz/039sAWcPMADBEGYBRTNf/2uAnQCJq+kAWnyQAWqhtgCvTOwByI2s/6M6aADptDT/8P0O/6Jx/v8m74r+NC6mAPFlIf6DupwAb9A+/3xeoP8frP4AcK44/7xjG/9DivsAfTqAAZyYrv+yDPf//FSeAFLFDv6syFP/JScuAWrPpwAYvSIAg7KQAM7VBACh4tIASDNp/2Etu/9OuN//sB37AE+gVv90JbIAUk3VAVJUjf/iZdQBr1jH//Ve9wGsdm3/prm+AIO1eABX/l3/hvBJ/yD1j/+Lomf/s2IS/tnMcACT33j/NQrzAKaMlgB9UMj/Dm3b/1vaAf/8/C/+bZx0/3MxfwHMV9P/lMrZ/xpV+f8O9YYBTFmp//It5gA7Yqz/ckmE/k6bMf+eflQAMa8r/xC2VP+dZyMAaMFt/0PdmgDJrAH+CKJYAKUBHf99m+X/HprcAWfvXADcAW3/ysYBAF4CjgEkNiwA6+Ke/6r71v+5TQkAYUryANujlf/wI3b/33JY/sDHAwBqJRj/yaF2/2FZYwHgOmf/ZceT/t48YwDqGTsBNIcbAGYDW/6o2OsA5eiIAGg8gQAuqO4AJ79DAEujLwCPYWL/ONioAajp/P8jbxb/XFQrABrIVwFb/ZgAyjhGAI4ITQBQCq8B/MdMABZuUv+BAcIAC4A9AVcOkf/93r4BD0iuAFWjVv46Yyz/LRi8/hrNDwAT5dL++EPDAGNHuACaxyX/l/N5/yYzS//JVYL+LEH6ADmT8/6SKzv/WRw1ACFUGP+zMxL+vUZTAAucswFihncAnm9vAHeaSf/IP4z+LQ0N/5rAAv5RSCoALqC5/ixwBgCS15UBGrBoAEQcVwHsMpn/s4D6/s7Bv/+mXIn+NSjvANIBzP6orSMAjfMtASQybf8P8sL/4596/7Cvyv5GOUgAKN84ANCiOv+3Yl0AD28MAB4ITP+Ef/b/LfJnAEW1D/8K0R4AA7N5APHo2gF7x1j/AtLKAbyCUf9eZdABZyQtAEzBGAFfGvH/paK7ACRyjADKQgX/JTiTAJgL8wF/Vej/+ofUAbmxcQBa3Ev/RfiSADJvMgBcFlAA9CRz/qNkUv8ZwQYBfz0kAP1DHv5B7Kr/oRHX/j+vjAA3fwQAT3DpAG2gKACPUwf/QRru/9mpjP9OXr3/AJO+/5NHuv5qTX//6Z3pAYdX7f/QDewBm20k/7Rk2gC0oxIAvm4JARE/e/+ziLT/pXt7/5C8Uf5H8Gz/GXAL/+PaM/+nMur/ck9s/x8Tc/+38GMA41eP/0jZ+P9mqV8BgZWVAO6FDAHjzCMA0HMaAWYI6gBwWI8BkPkOAPCerP5kcHcAwo2Z/ig4U/95sC4AKjVM/56/mgBb0VwArQ0QAQVI4v/M/pUAULjPAGQJev52Zav//MsA/qDPNgA4SPkBOIwN/wpAa/5bZTT/4bX4AYv/hADmkREA6TgXAHcB8f/VqZf/Y2MJ/rkPv/+tZ20Brg37/7JYB/4bO0T/CiEC//hhOwAaHpIBsJMKAF95zwG8WBgAuV7+/nM3yQAYMkYAeDUGAI5CkgDk4vn/aMDeAa1E2wCiuCT/j2aJ/50LFwB9LWIA613h/jhwoP9GdPMBmfk3/4EnEQHxUPQAV0UVAV7kSf9OQkH/wuPnAD2SV/+tmxf/cHTb/tgmC/+DuoUAXtS7AGQvWwDM/q//3hLX/q1EbP/j5E//Jt3VAKPjlv4fvhIAoLMLAQpaXv/crlgAo9Pl/8eINACCX93/jLzn/otxgP91q+z+MdwU/zsUq//kbbwAFOEg/sMQrgDj/ogBhydpAJZNzv/S7uIAN9SE/u85fACqwl3/+RD3/xiXPv8KlwoAT4uy/3jyygAa29UAPn0j/5ACbP/mIVP/US3YAeA+EQDW2X0AYpmZ/7Owav6DXYr/bT4k/7J5IP94/EYA3PglAMxYZwGA3Pv/7OMHAWoxxv88OGsAY3LuANzMXgFJuwEAWZoiAE7Zpf8Ow/n/Ceb9/82H9QAa/Af/VM0bAYYCcAAlniAA51vt/7+qzP+YB94AbcAxAMGmkv/oE7X/aY40/2cQGwH9yKUAw9kE/zS9kP97m6D+V4I2/054Pf8OOCkAGSl9/1eo9QDWpUYA1KkG/9vTwv5IXaT/xSFn/yuOjQCD4awA9GkcAERE4QCIVA3/gjko/otNOABUljUANl+dAJANsf5fc7oAdRd2//Sm8f8LuocAsmrL/2HaXQAr/S0ApJgEAIt27wBgARj+65nT/6huFP8y77AAcinoAMH6NQD+oG/+iHop/2FsQwDXmBf/jNHUACq9owDKKjL/amq9/75E2f/pOnUA5dzzAcUDBAAleDb+BJyG/yQ9q/6liGT/1OgOAFquCgDYxkH/DANAAHRxc//4ZwgA530S/6AcxQAeuCMB30n5/3sULv6HOCX/rQ3lAXehIv/1PUkAzX1wAIlohgDZ9h7/7Y6PAEGfZv9spL4A23Wt/yIleP7IRVAAH3za/koboP+6msf/R8f8AGhRnwERyCcA0z3AARruWwCU2QwAO1vV/wtRt/+B5nr/csuRAXe0Qv9IirQA4JVqAHdSaP/QjCsAYgm2/81lhv8SZSYAX8Wm/8vxkwA+0JH/hfb7AAKpDgAN97gAjgf+ACTIF/9Yzd8AW4E0/xW6HgCP5NIB9+r4/+ZFH/6wuof/7s00AYtPKwARsNn+IPNDAPJv6QAsIwn/43JRAQRHDP8mab8AB3Uy/1FPEAA/REH/nSRu/03xA//iLfsBjhnOAHh70QEc/u7/BYB+/1ve1/+iD78AVvBJAIe5Uf4s8aMA1NvS/3CimwDPZXYAqEg4/8QFNABIrPL/fhad/5JgO/+ieZj+jBBfAMP+yP5SlqIAdyuR/sysTv+m4J8AaBPt//V+0P/iO9UAddnFAJhI7QDcHxf+Dlrn/7zUQAE8Zfb/VRhWAAGxbQCSUyABS7bAAHfx4AC57Rv/uGVSAeslTf/9hhMA6PZ6ADxqswDDCwwAbULrAX1xOwA9KKQAr2jwAAIvu/8yDI0Awou1/4f6aABhXN7/2ZXJ/8vxdv9Pl0MAeo7a/5X17wCKKsj+UCVh/3xwp/8kilf/gh2T//FXTv/MYRMBsdEW//fjf/5jd1P/1BnGARCzswCRTaz+WZkO/9q9pwBr6Tv/IyHz/ixwcP+hf08BzK8KACgViv5odOQAx1+J/4W+qP+SpeoBt2MnALfcNv7/3oUAott5/j/vBgDhZjb/+xL2AAQigQGHJIMAzjI7AQ9htwCr2If/ZZgr/5b7WwAmkV8AIswm/rKMU/8ZgfP/TJAlAGokGv52kKz/RLrl/2uh1f8uo0T/lar9ALsRDwDaoKX/qyP2AWANEwCly3UA1mvA//R7sQFkA2gAsvJh//tMgv/TTSoB+k9G/z/0UAFpZfYAPYg6Ae5b1QAOO2L/p1RNABGELv45r8X/uT64AExAzwCsr9D+r0olAIob0/6UfcIACllRAKjLZf8r1dEB6/U2AB4j4v8JfkYA4n1e/px1FP85+HAB5jBA/6RcpgHg1ub/JHiPADcIK//7AfUBamKlAEprav41BDb/WrKWAQN4e//0BVkBcvo9//6ZUgFNDxEAOe5aAV/f5gDsNC/+Z5Sk/3nPJAESELn/SxRKALsLZQAuMIH/Fu/S/03sgf9vTcz/PUhh/8fZ+/8q18wAhZHJ/znmkgHrZMYAkkkj/mzGFP+2T9L/UmeIAPZssAAiETz/E0py/qiqTv+d7xT/lSmoADp5HABPs4b/53mH/67RYv/zer4Aq6bNANR0MAAdbEL/ot62AQ53FQDVJ/n//t/k/7elxgCFvjAAfNBt/3evVf8J0XkBMKu9/8NHhgGI2zP/tluN/jGfSAAjdvX/cLrj/zuJHwCJLKMAcmc8/gjVlgCiCnH/wmhIANyDdP+yT1wAy/rV/l3Bvf+C/yL+1LyXAIgRFP8UZVP/1M6mAOXuSf+XSgP/qFfXAJu8hf+mgUkA8E+F/7LTUf/LSKP+wailAA6kx/4e/8wAQUhbAaZKZv/IKgD/wnHj/0IX0ADl2GT/GO8aAArpPv97CrIBGiSu/3fbxwEto74AEKgqAKY5xv8cGhoAfqXnAPtsZP895Xn/OnaKAEzPEQANInD+WRCoACXQaf8jydf/KGpl/gbvcgAoZ+L+9n9u/z+nOgCE8I4ABZ5Y/4FJnv9eWZIA5jaSAAgtrQBPqQEAc7r3AFRAgwBD4P3/z71AAJocUQEtuDb/V9Tg/wBgSf+BIesBNEJQ//uum/8EsyUA6qRd/l2v/QDGRVf/4GouAGMd0gA+vHL/LOoIAKmv9/8XbYn/5bYnAMClXv71ZdkAv1hgAMReY/9q7gv+NX7zAF4BZf8ukwIAyXx8/40M2gANpp0BMPvt/5v6fP9qlJL/tg3KABw9pwDZmAj+3IIt/8jm/wE3QVf/Xb9h/nL7DgAgaVwBGs+NABjPDf4VMjD/upR0/9Mr4QAlIqL+pNIq/0QXYP+21gj/9XWJ/0LDMgBLDFP+UIykAAmlJAHkbuMA8RFaARk01AAG3wz/i/M5AAxxSwH2t7//1b9F/+YPjgABw8T/iqsv/0A/agEQqdb/z644AVhJhf+2hYwAsQ4Z/5O4Nf8K46H/eNj0/0lN6QCd7osBO0HpAEb72AEpuJn/IMtwAJKT/QBXZW0BLFKF//SWNf9emOj/O10n/1iT3P9OUQ0BIC/8/6ATcv9dayf/dhDTAbl30f/j23/+WGns/6JuF/8kpm7/W+zd/0LqdABvE/T+CukaACC3Bv4Cv/IA2pw1/ik8Rv+o7G8Aebl+/+6Oz/83fjQA3IHQ/lDMpP9DF5D+2ihs/3/KpADLIQP/Ap4AACVgvP/AMUoAbQQAAG+nCv5b2of/y0Kt/5bC4gDJ/Qb/rmZ5AM2/bgA1wgQAUSgt/iNmj/8MbMb/EBvo//xHugGwbnIAjgN1AXFNjgATnMUBXC/8ADXoFgE2EusALiO9/+zUgQACYND+yO7H/zuvpP+SK+cAwtk0/wPfDACKNrL+VevPAOjPIgAxNDL/pnFZ/wot2P8+rRwAb6X2AHZzW/+AVDwAp5DLAFcN8wAWHuQBsXGS/4Gq5v78mYH/keErAEbnBf96aX7+VvaU/24lmv7RA1sARJE+AOQQpf833fn+stJbAFOS4v5FkroAXdJo/hAZrQDnuiYAvXqM//sNcP9pbl0A+0iqAMAX3/8YA8oB4V3kAJmTx/5tqhYA+GX2/7J8DP+y/mb+NwRBAH3WtAC3YJMALXUX/oS/+QCPsMv+iLc2/5LqsQCSZVb/LHuPASHRmADAWin+Uw99/9WsUgDXqZAAEA0iACDRZP9UEvkBxRHs/9m65gAxoLD/b3Zh/+1o6wBPO1z+RfkL/yOsSgETdkQA3nyl/7RCI/9WrvYAK0pv/36QVv/k6lsA8tUY/kUs6//ctCMACPgH/2YvXP/wzWb/cearAR+5yf/C9kb/ehG7AIZGx/+VA5b/dT9nAEFoe//UNhMBBo1YAFOG8/+INWcAqRu0ALExGABvNqcAwz3X/x8BbAE8KkYAuQOi/8KVKP/2fyb+vncm/z13CAFgodv/KsvdAbHypP/1nwoAdMQAAAVdzf6Af7MAfe32/5Wi2f9XJRT+jO7AAAkJwQBhAeIAHSYKAACIP//lSNL+JoZc/07a0AFoJFT/DAXB//KvPf+/qS4Bs5OT/3G+i/59rB8AA0v8/tckDwDBGxgB/0WV/26BdgDLXfkAiolA/iZGBgCZdN4AoUp7AMFjT/92O17/PQwrAZKxnQAuk78AEP8mAAszHwE8OmL/b8JNAZpb9ACMKJABrQr7AMvRMv5sgk4A5LRaAK4H+gAfrjwAKaseAHRjUv92wYv/u63G/tpvOAC5e9gA+Z40ADS0Xf/JCVv/OC2m/oSby/866G4ANNNZ//0AogEJV7cAkYgsAV569QBVvKsBk1zGAAAIaAAeX64A3eY0Aff36/+JrjX/IxXM/0fj1gHoUsIACzDj/6pJuP/G+/z+LHAiAINlg/9IqLsAhId9/4poYf/uuKj/82hU/4fY4v+LkO0AvImWAVA4jP9Wqaf/wk4Z/9wRtP8RDcEAdYnU/43glwAx9K8AwWOv/xNjmgH/QT7/nNI3//L0A//6DpUAnljZ/53Phv776BwALpz7/6s4uP/vM+oAjoqD/xn+8wEKycIAP2FLANLvogDAyB8BddbzABhH3v42KOj/TLdv/pAOV//WT4j/2MTUAIQbjP6DBf0AfGwT/xzXSwBM3jf+6bY/AESrv/40b97/CmlN/1Cq6wCPGFj/Led5AJSB4AE99lQA/S7b/+9MIQAxlBL+5iVFAEOGFv6Om14AH53T/tUqHv8E5Pf+/LAN/ycAH/7x9P//qi0K/v3e+QDecoQA/y8G/7SjswFUXpf/WdFS/uU0qf/V7AAB1jjk/4d3l/9wycEAU6A1/gaXQgASohEA6WFbAIMFTgG1eDX/dV8//+11uQC/foj/kHfpALc5YQEvybv/p6V3AS1kfgAVYgb+kZZf/3g2mADRYmgAj28e/riU+QDr2C4A+MqU/zlfFgDy4aMA6ffo/0erE/9n9DH/VGdd/0R59AFS4A0AKU8r//nOp//XNBX+wCAW//dvPABlSib/FltU/h0cDf/G59f+9JrIAN+J7QDThA4AX0DO/xE+9//pg3kBXRdNAM3MNP5RvYgAtNuKAY8SXgDMK4z+vK/bAG9ij/+XP6L/0zJH/hOSNQCSLVP+slLu/xCFVP/ixl3/yWEU/3h2I/9yMuf/ouWc/9MaDAByJ3P/ztSGAMXZoP90gV7+x9fb/0vf+QH9dLX/6Ndo/+SC9v+5dVYADgUIAO8dPQHtV4X/fZKJ/syo3wAuqPUAmmkWANzUof9rRRj/idq1//FUxv+CetP/jQiZ/76xdgBgWbIA/xAw/npgaf91Nuj/In5p/8xDpgDoNIr/05MMABk2BwAsD9f+M+wtAL5EgQFqk+EAHF0t/uyND/8RPaEA3HPAAOyRGP5vqKkA4Do//3+kvABS6ksB4J6GANFEbgHZptkARuGmAbvBj/8QB1j/Cs2MAHXAnAEROCYAG3xsAavXN/9f/dQAm4eo//aymf6aREoA6D1g/mmEOwAhTMcBvbCC/wloGf5Lxmb/6QFwAGzcFP9y5kYAjMKF/zmepP6SBlD/qcRhAVW3ggBGnt4BO+3q/2AZGv/or2H/C3n4/lgjwgDbtPz+SgjjAMPjSQG4bqH/MemkAYA1LwBSDnn/wb46ADCudf+EFyAAKAqGARYzGf/wC7D/bjmSAHWP7wGdZXb/NlRMAM24Ev8vBEj/TnBV/8EyQgFdEDT/CGmGAAxtSP86nPsAkCPMACygdf4ya8IAAUSl/29uogCeUyj+TNbqADrYzf+rYJP/KONyAbDj8QBG+bcBiFSL/zx69/6PCXX/sa6J/kn3jwDsuX7/Phn3/y1AOP+h9AYAIjk4AWnKUwCAk9AABmcK/0qKQf9hUGT/1q4h/zKGSv9ul4L+b1SsAFTHS/74O3D/CNiyAQm3XwDuGwj+qs3cAMPlhwBiTO3/4lsaAVLbJ//hvscB2ch5/1GzCP+MQc4Ass9X/vr8Lv9oWW4B/b2e/5DWnv+g9Tb/NbdcARXIwv+SIXEB0QH/AOtqK/+nNOgAneXdADMeGQD63RsBQZNX/097xABBxN//TCwRAVXxRADKt/n/QdTU/wkhmgFHO1AAr8I7/41ICQBkoPQA5tA4ADsZS/5QwsIAEgPI/qCfcwCEj/cBb105/zrtCwGG3of/eqNsAXsrvv/7vc7+ULZI/9D24AERPAkAoc8mAI1tWwDYD9P/iE5uAGKjaP8VUHn/rbK3AX+PBABoPFL+1hAN/2DuIQGelOb/f4E+/zP/0v8+jez+nTfg/3In9ADAvPr/5Ew1AGJUUf+tyz3+kzI3/8zrvwA0xfQAWCvT/hu/dwC855oAQlGhAFzBoAH643gAezfiALgRSACFqAr+Foec/ykZZ/8wyjoAupVR/7yG7wDrtb3+2Yu8/0owUgAu2uUAvf37ADLlDP/Tjb8BgPQZ/6nnev5WL73/hLcX/yWylv8zif0AyE4fABZpMgCCPAAAhKNb/hfnuwDAT+8AnWak/8BSFAEYtWf/8AnqAAF7pP+F6QD/yvLyADy69QDxEMf/4HSe/r99W//gVs8AeSXn/+MJxv8Pme//eejZ/ktwUgBfDDn+M9Zp/5TcYQHHYiQAnNEM/grUNADZtDf+1Kro/9gUVP+d+ocAnWN//gHOKQCVJEYBNsTJ/1d0AP7rq5YAG6PqAMqHtADQXwD+e5xdALc+SwCJ67YAzOH//9aL0v8Ccwj/HQxvADScAQD9Ffv/JaUf/gyC0wBqEjX+KmOaAA7ZPf7YC1z/yMVw/pMmxwAk/Hj+a6lNAAF7n//PS2YAo6/EACwB8AB4urD+DWJM/+188f/okrz/yGDgAMwfKQDQyA0AFeFg/6+cxAD30H4APrj0/gKrUQBVc54ANkAt/xOKcgCHR80A4y+TAdrnQgD90RwA9A+t/wYPdv4QltD/uRYy/1Zwz/9LcdcBP5Ir/wThE/7jFz7/Dv/W/i0Izf9XxZf+0lLX//X49/+A+EYA4fdXAFp4RgDV9VwADYXiAC+1BQFco2n/Bh6F/uiyPf/mlRj/EjGeAORkPf508/v/TUtcAVHbk/9Mo/7+jdX2AOglmP5hLGQAySUyAdT0OQCuq7f/+UpwAKacHgDe3WH/811J/vtlZP/Y2V3//oq7/46+NP87y7H/yF40AHNynv+lmGgBfmPi/3ad9AFryBAAwVrlAHkGWACcIF3+ffHT/w7tnf+lmhX/uOAW//oYmP9xTR8A96sX/+2xzP80iZH/wrZyAODqlQAKb2cByYEEAO6OTgA0Bij/btWl/jzP/QA+10UAYGEA/zEtygB4eRb/64swAcYtIv+2MhsBg9Jb/y42gACve2n/xo1O/kP07//1Nmf+Tiby/wJc+f77rlf/iz+QABhsG/8iZhIBIhaYAELldv4yj2MAkKmVAXYemACyCHkBCJ8SAFpl5v+BHXcARCQLAei3NwAX/2D/oSnB/z+L3gAPs/MA/2QP/1I1hwCJOZUBY/Cq/xbm5P4xtFL/PVIrAG712QDHfT0ALv00AI3F2wDTn8EAN3lp/rcUgQCpd6r/y7KL/4cotv+sDcr/QbKUAAjPKwB6NX8BSqEwAOPWgP5WC/P/ZFYHAfVEhv89KxUBmFRe/748+v7vduj/1oglAXFMa/9daGQBkM4X/26WmgHkZ7kA2jEy/odNi/+5AU4AAKGU/2Ed6f/PlJX/oKgAAFuAq/8GHBP+C2/3ACe7lv+K6JUAdT5E/z/YvP/r6iD+HTmg/xkM8QGpPL8AIION/+2fe/9exV7+dP4D/1yzYf55YVz/qnAOABWV+AD44wMAUGBtAEvASgEMWuL/oWpEAdByf/9yKv/+ShpK//ezlv55jDwAk0bI/9Yoof+hvMn/jUGH//Jz/AA+L8oAtJX//oI37QClEbr/CqnCAJxt2v9wjHv/aIDf/rGObP95Jdv/gE0S/29sFwFbwEsArvUW/wTsPv8rQJkB463+AO16hAF/Wbr/jlKA/vxUrgBas7EB89ZX/2c8ov/Qgg7/C4KLAM6B2/9e2Z3/7+bm/3Rzn/6ka18AM9oCAdh9xv+MyoD+C19E/zcJXf6umQb/zKxgAEWgbgDVJjH+G1DVAHZ9cgBGRkP/D45J/4N6uf/zFDL+gu0oANKfjAHFl0H/VJlCAMN+WgAQ7uwBdrtm/wMYhf+7ReYAOMVcAdVFXv9QiuUBzgfmAN5v5gFb6Xf/CVkHAQJiAQCUSoX/M/a0/+SxcAE6vWz/wsvt/hXRwwCTCiMBVp3iAB+ji/44B0v/Plp0ALU8qQCKotT+UacfAM1acP8hcOMAU5d1AbHgSf+ukNn/5sxP/xZN6P9yTuoA4Dl+/gkxjQDyk6UBaLaM/6eEDAF7RH8A4VcnAftsCADGwY8BeYfP/6wWRgAyRHT/Za8o//hp6QCmywcAbsXaANf+Gv6o4v0AH49gAAtnKQC3gcv+ZPdK/9V+hADSkywAx+obAZQvtQCbW54BNmmv/wJOkf5mml8AgM9//jR87P+CVEcA3fPTAJiqzwDeascAt1Re/lzIOP+KtnMBjmCSAIWI5ABhEpYAN/tCAIxmBADKZ5cAHhP4/zO4zwDKxlkAN8Xh/qlf+f9CQUT/vOp+AKbfZAFw7/QAkBfCADontgD0LBj+r0Sz/5h2mgGwooIA2XLM/q1+Tv8h3h7/JAJb/wKP8wAJ69cAA6uXARjX9f+oL6T+8ZLPAEWBtABE83EAkDVI/vstDgAXbqgARERP/25GX/6uW5D/Ic5f/4kpB/8Tu5n+I/9w/wmRuf4ynSUAC3AxAWYIvv/q86kBPFUXAEonvQB0Me8ArdXSAC6hbP+fliUAxHi5/yJiBv+Zwz7/YeZH/2Y9TAAa1Oz/pGEQAMY7kgCjF8QAOBg9ALViwQD7k+X/Yr0Y/y42zv/qUvYAt2cmAW0+zAAK8OAAkhZ1/46aeABF1CMA0GN2AXn/A/9IBsIAdRHF/30PFwCaT5kA1l7F/7k3k/8+/k7+f1KZAG5mP/9sUqH/abvUAVCKJwA8/13/SAy6ANL7HwG+p5D/5CwT/oBD6ADW+Wv+iJFW/4QusAC9u+P/0BaMANnTdAAyUbr+i/ofAB5AxgGHm2QAoM4X/rui0/8QvD8A/tAxAFVUvwDxwPL/mX6RAeqiov/mYdgBQId+AL6U3wE0ACv/HCe9AUCI7gCvxLkAYuLV/3+f9AHirzwAoOmOAbTzz/9FmFkBH2UVAJAZpP6Lv9EAWxl5ACCTBQAnunv/P3Pm/12nxv+P1dz/s5wT/xlCegDWoNn/Ai0+/2pPkv4ziWP/V2Tn/6+R6P9luAH/rgl9AFIloQEkco3/MN6O//W6mgAFrt3+P3Kb/4c3oAFQH4cAfvqzAezaLQAUHJEBEJNJAPm9hAERvcD/347G/0gUD//6Ne3+DwsSABvTcf7Vazj/rpOS/2B+MAAXwW0BJaJeAMed+f4YgLv/zTGy/l2kKv8rd+sBWLft/9rSAf9r/ioA5gpj/6IA4gDb7VsAgbLLANAyX/7O0F//979Z/m7qT/+lPfMAFHpw//b2uf5nBHsA6WPmAdtb/P/H3hb/s/Xp/9Px6gBv+sD/VVSIAGU6Mv+DrZz+dy0z/3bpEP7yWtYAXp/bAQMD6v9iTFz+UDbmAAXk5/41GN//cTh2ARSEAf+r0uwAOPGe/7pzE/8I5a4AMCwAAXJypv8GSeL/zVn0AInjSwH4rTgASnj2/ncDC/9ReMb/iHpi/5Lx3QFtwk7/3/FGAdbIqf9hvi//L2eu/2NcSP526bT/wSPp/hrlIP/e/MYAzCtH/8dUrACGZr4Ab+5h/uYo5gDjzUD+yAzhAKYZ3gBxRTP/j58YAKe4SgAd4HT+ntDpAMF0fv/UC4X/FjqMAcwkM//oHisA60a1/0A4kv6pElT/4gEN/8gysP801fX+qNFhAL9HNwAiTpwA6JA6AblKvQC6jpX+QEV//6HLk/+wl78AiOfL/qO2iQChfvv+6SBCAETPQgAeHCUAXXJgAf5c9/8sq0UAyncL/7x2MgH/U4j/R1IaAEbjAgAg63kBtSmaAEeG5f7K/yQAKZgFAJo/Sf8itnwAed2W/xrM1QEprFcAWp2S/22CFABHa8j/82a9AAHDkf4uWHUACM7jAL9u/f9tgBT+hlUz/4mxcAHYIhb/gxDQ/3mVqgByExcBplAf/3HwegDos/oARG60/tKqdwDfbKT/z0/p/xvl4v7RYlH/T0QHAIO5ZACqHaL/EaJr/zkVCwFkyLX/f0GmAaWGzABop6gAAaRPAJKHOwFGMoD/ZncN/uMGhwCijrP/oGTeABvg2wGeXcP/6o2JABAYff/uzi//YRFi/3RuDP9gc00AW+Po//j+T/9c5Qb+WMaLAM5LgQD6Tc7/jfR7AYpF3AAglwYBg6cW/+1Ep/7HvZYAo6uK/zO8Bv9fHYn+lOKzALVr0P+GH1L/l2Ut/4HK4QDgSJMAMIqX/8NAzv7t2p4Aah2J/v296f9nDxH/wmH/ALItqf7G4ZsAJzB1/4dqcwBhJrUAli9B/1OC5f72JoEAXO+a/ltjfwChbyH/7tny/4O5w//Vv57/KZbaAISpgwBZVPwBq0aA/6P4y/4BMrT/fExVAftvUABjQu//mu22/91+hf5KzGP/QZN3/2M4p/9P+JX/dJvk/+0rDv5FiQv/FvrxAVt6j//N+fMA1Bo8/zC2sAEwF7//y3mY/i1K1f8+WhL+9aPm/7lqdP9TI58ADCEC/1AiPgAQV67/rWVVAMokUf6gRcz/QOG7ADrOXgBWkC8A5Vb1AD+RvgElBScAbfsaAImT6gCieZH/kHTO/8Xouf+3voz/SQz+/4sU8v+qWu//YUK7//W1h/7eiDQA9QUz/ssvTgCYZdgASRd9AP5gIQHr0kn/K9FYAQeBbQB6aOT+qvLLAPLMh//KHOn/QQZ/AJ+QRwBkjF8ATpYNAPtrdgG2On3/ASZs/4290f8Im30BcaNb/3lPvv+G72z/TC/4AKPk7wARbwoAWJVL/9fr7wCnnxj/L5ds/2vRvADp52P+HMqU/64jiv9uGET/AkW1AGtmUgBm7QcAXCTt/92iUwE3ygb/h+qH/xj63gBBXqj+9fjS/6dsyf7/oW8AzQj+AIgNdABksIT/K9d+/7GFgv+eT5QAQ+AlAQzOFf8+Im4B7Wiv/1CEb/+OrkgAVOW0/mmzjABA+A//6YoQAPVDe/7aedT/P1/aAdWFif+PtlL/MBwLAPRyjQHRr0z/nbWW/7rlA/+knW8B572LAHfKvv/aakD/ROs//mAarP+7LwsB1xL7/1FUWQBEOoAAXnEFAVyB0P9hD1P+CRy8AO8JpAA8zZgAwKNi/7gSPADZtosAbTt4/wTA+wCp0vD/Jaxc/pTT9f+zQTQA/Q1zALmuzgFyvJX/7VqtACvHwP9YbHEANCNMAEIZlP/dBAf/l/Fy/77R6ABiMscAl5bV/xJKJAE1KAcAE4dB/xqsRQCu7VUAY18pAAM4EAAnoLH/yGra/rlEVP9buj3+Q4+N/w30pv9jcsYAx26j/8ESugB87/YBbkQWAALrLgHUPGsAaSppAQ7mmAAHBYMAjWia/9UDBgCD5KL/s2QcAed7Vf/ODt8B/WDmACaYlQFiiXoA1s0D/+KYs/8GhYkAnkWM/3Gimv+086z/G71z/48u3P/VhuH/fh1FALwriQHyRgkAWsz//+eqkwAXOBP+OH2d/zCz2v9Ptv3/JtS/ASnrfABglxwAh5S+AM35J/40YIj/1CyI/0PRg//8ghf/24AU/8aBdgBsZQsAsgWSAT4HZP+17F7+HBqkAEwWcP94Zk8AysDlAciw1wApQPT/zrhOAKctPwGgIwD/OwyO/8wJkP/bXuUBehtwAL1pbf9A0Er/+383AQLixgAsTNEAl5hN/9IXLgHJq0X/LNPnAL4l4P/1xD7/qbXe/yLTEQB38cX/5SOYARVFKP+y4qEAlLPBANvC/gEozjP/51z6AUOZqgAVlPEAqkVS/3kS5/9ccgMAuD7mAOHJV/+SYKL/tfLcAK273QHiPqr/OH7ZAXUN4/+zLO8AnY2b/5DdUwDr0dAAKhGlAftRhQB89cn+YdMY/1PWpgCaJAn/+C9/AFrbjP+h2Sb+1JM//0JUlAHPAwEA5oZZAX9Oev/gmwH/UohKALKc0P+6GTH/3gPSAeWWvv9VojT/KVSN/0l7VP5dEZYAdxMcASAW1/8cF8z/jvE0/+Q0fQAdTM8A16f6/q+k5gA3z2kBbbv1/6Es3AEpZYD/pxBeAF3Wa/92SAD+UD3q/3mvfQCLqfsAYSeT/vrEMf+ls27+30a7/xaOfQGas4r/drAqAQqumQCcXGYAqA2h/48QIAD6xbT/y6MsAVcgJAChmRT/e/wPABnjUAA8WI4AERbJAZrNTf8nPy8ACHqNAIAXtv7MJxP/BHAd/xckjP/S6nT+NTI//3mraP+g214AV1IO/ucqBQCli3/+Vk4mAII8Qv7LHi3/LsR6Afk1ov+Ij2f+19JyAOcHoP6pmCr/by32AI6Dh/+DR8z/JOILAAAc8v/hitX/9y7Y/vUDtwBs/EoBzhow/8029v/TxiT/eSMyADTYyv8mi4H+8kmUAEPnjf8qL8wATnQZAQThv/8Gk+QAOlixAHql5f/8U8n/4KdgAbG4nv/yabMB+MbwAIVCywH+JC8ALRhz/3c+/gDE4br+e42sABpVKf/ib7cA1eeXAAQ7B//uipQAQpMh/x/2jf/RjXT/aHAfAFihrABT1+b+L2+XAC0mNAGELcwAioBt/ul1hv/zvq3+8ezwAFJ/7P4o36H/brbh/3uu7wCH8pEBM9GaAJYDc/7ZpPz/N5xFAVRe///oSS0BFBPU/2DFO/5g+yEAJsdJAUCs9/91dDj/5BESAD6KZwH25aT/9HbJ/lYgn/9tIokBVdO6AArBwf56wrEAeu5m/6LaqwBs2aEBnqoiALAvmwG15Av/CJwAABBLXQDOYv8BOpojAAzzuP5DdUL/5uV7AMkqbgCG5LL+umx2/zoTmv9SqT7/co9zAe/EMv+tMMH/kwJU/5aGk/5f6EkAbeM0/r+JCgAozB7+TDRh/6TrfgD+fLwASrYVAXkdI//xHgf+VdrW/wdUlv5RG3X/oJ+Y/kIY3f/jCjwBjYdmANC9lgF1s1wAhBaI/3jHHAAVgU/+tglBANqjqQD2k8b/ayaQAU6vzf/WBfr+L1gd/6QvzP8rNwb/g4bP/nRk1gBgjEsBatyQAMMgHAGsUQX/x7M0/yVUywCqcK4ACwRbAEX0GwF1g1wAIZiv/4yZa//7hyv+V4oE/8bqk/55mFT/zWWbAZ0JGQBIahH+bJkA/73lugDBCLD/rpXRAO6CHQDp1n4BPeJmADmjBAHGbzP/LU9OAXPSCv/aCRn/novG/9NSu/5QhVMAnYHmAfOFhv8oiBAATWtP/7dVXAGxzMoAo0eT/5hFvgCsM7wB+tKs/9PycQFZWRr/QEJv/nSYKgChJxv/NlD+AGrRcwFnfGEA3eZi/x/nBgCywHj+D9nL/3yeTwBwkfcAXPowAaO1wf8lL47+kL2l/y6S8AAGS4AAKZ3I/ld51QABcewABS36AJAMUgAfbOcA4e93/6cHvf+75IT/br0iAF4szAGiNMUATrzx/jkUjQD0ki8BzmQzAH1rlP4bw00AmP1aAQePkP8zJR8AIncm/wfFdgCZvNMAlxR0/vVBNP+0/W4BL7HRAKFjEf923soAfbP8AXs2fv+ROb8AN7p5AArzigDN0+X/fZzx/pScuf/jE7z/fCkg/x8izv4ROVMAzBYl/ypgYgB3ZrgBA74cAG5S2v/IzMD/yZF2AHXMkgCEIGIBwMJ5AGqh+AHtWHwAF9QaAM2rWv/4MNgBjSXm/3zLAP6eqB7/1vgVAHC7B/9Lhe//SuPz//qTRgDWeKIApwmz/xaeEgDaTdEBYW1R//Qhs/85NDn/QazS//lH0f+Oqe4Anr2Z/67+Z/5iIQ4AjUzm/3GLNP8POtQAqNfJ//jM1wHfRKD/OZq3/i/neQBqpokAUYiKAKUrMwDniz0AOV87/nZiGf+XP+wBXr76/6m5cgEF+jr/S2lhAdffhgBxY6MBgD5wAGNqkwCjwwoAIc22ANYOrv+BJuf/NbbfAGIqn//3DSgAvNKxAQYVAP//PZT+iS2B/1kadP5+JnIA+zLy/nmGgP/M+af+pevXAMqx8wCFjT4A8IK+AW6v/wAAFJIBJdJ5/wcnggCO+lT/jcjPAAlfaP8L9K4Ahuh+AKcBe/4QwZX/6OnvAdVGcP/8dKD+8t7c/81V4wAHuToAdvc/AXRNsf8+9cj+PxIl/2s16P4y3dMAotsH/gJeKwC2Prb+oE7I/4eMqgDruOQArzWK/lA6Tf+YyQIBP8QiAAUeuACrsJoAeTvOACZjJwCsUE3+AIaXALoh8f5e/d//LHL8AGx+Of/JKA3/J+Ub/yfvFwGXeTP/mZb4AArqrv929gT+yPUmAEWh8gEQspYAcTiCAKsfaQAaWGz/MSpqAPupQgBFXZUAFDn+AKQZbwBavFr/zATFACjVMgHUYIT/WIq0/uSSfP+49vcAQXVW//1m0v7+eSQAiXMD/zwY2ACGEh0AO+JhALCORwAH0aEAvVQz/pv6SADVVOv/Ld7gAO6Uj/+qKjX/Tqd1ALoAKP99sWf/ReFCAOMHWAFLrAYAqS3jARAkRv8yAgn/i8EWAI+35/7aRTIA7DihAdWDKgCKkSz+iOUo/zE/I/89kfX/ZcAC/uincQCYaCYBebnaAHmL0/538CMAQb3Z/ruzov+gu+YAPvgO/zxOYQD/96P/4Ttb/2tHOv/xLyEBMnXsANuxP/70WrMAI8LX/71DMv8Xh4EAaL0l/7k5wgAjPuf/3PhsAAznsgCPUFsBg11l/5AnAgH/+rIABRHs/osgLgDMvCb+9XM0/79xSf6/bEX/FkX1ARfLsgCqY6oAQfhvACVsmf9AJUUAAFg+/lmUkP+/ROAB8Sc1ACnL7f+RfsL/3Sr9/xljlwBh/d8BSnMx/wavSP87sMsAfLf5AeTkYwCBDM/+qMDD/8ywEP6Y6qsATSVV/yF4h/+OwuMBH9Y6ANW7ff/oLjz/vnQq/peyE/8zPu3+zOzBAMLoPACsIp3/vRC4/mcDX/+N6ST+KRkL/xXDpgB29S0AQ9WV/58MEv+7pOMBoBkFAAxOwwErxeEAMI4p/sSbPP/fxxIBkYicAPx1qf6R4u4A7xdrAG21vP/mcDH+Sart/+e34/9Q3BQAwmt/AX/NZQAuNMUB0qsk/1gDWv84l40AYLv//ypOyAD+RkYB9H2oAMxEigF810YAZkLI/hE05AB13I/+y/h7ADgSrv+6l6T/M+jQAaDkK//5HRkBRL4/AA0AAAAA/wAAAAD1AAAAAAAA+wAAAAAAAP0AAAAA8wAAAAAHAAAAAAADAAAAAPMAAAAABQAAAAAAAAAACwAAAAAACwAAAADzAAAAAAAA/QAAAAAA/wAAAAADAAAAAPUAAAAAAAAADwAAAAAA/wAAAAD/AAAAAAcAAAAABQ=="),B(Pt,33660,"AQ=="),B(Pt,33696,"AQ=="),B(Pt,33728,"4Ot6fDtBuK4WVuP68Z/EatoJjeucMrH9hmIFFl9JuABfnJW8o1CMJLHQsVWcg+9bBERcxFgcjobYIk7d0J8RV+z///////////////////////////////////////9/7f///////////////////////////////////////3/u////////////////////////////////////////f0xpYnNvZGl1bURSRwAAAAAIybzzZ+YJajunyoSFrme7K/iU/nLzbjzxNh1fOvVPpdGC5q1/Ug5RH2w+K4xoBZtrvUH7q9mDH3khfhMZzeBbIq4o15gvikLNZe8jkUQ3cS87TezP+8C1vNuJgaXbtek4tUjzW8JWORnQBbbxEfFZm08Zr6SCP5IYgW3a1V4cq0ICA6OYqgfYvm9wRQFbgxKMsuROvoUxJOK0/9XDfQxVb4l78nRdvnKxlhY7/rHegDUSxyWnBtyblCZpz3Txm8HSSvGewWmb5OMlTziGR77vtdWMi8adwQ9lnKx3zKEMJHUCK1lvLOktg+SmbqqEdErU+0G93KmwXLVTEYPaiPl2q99m7lJRPpgQMrQtbcYxqD8h+5jIJwOw5A7vvsd/Wb/Cj6g98wvgxiWnCpNHkafVb4ID4FFjygZwbg4KZykpFPwv0kaFCrcnJskmXDghGy7tKsRa/G0sTd+zlZ0TDThT3mOvi1RzCmWosnc8uwpqduau7UcuycKBOzWCFIUscpJkA/FMoei/ogEwQrxLZhqokZf40HCLS8IwvlQGo1FsxxhS79YZ6JLREKllVSQGmdYqIHFXhTUO9LjRuzJwoGoQyNDSuBbBpBlTq0FRCGw3Hpnrjt9Md0gnqEib4bW8sDRjWsnFswwcOcuKQeNKqthOc+Njd0/KnFujuLLW828uaPyy713ugo90YC8XQ29jpXhyq/ChFHjIhOw5ZBoIAseMKB5jI/r/vpDpvYLe62xQpBV5xrL3o/m+K1Ny4/J4ccacYSbqzj4nygfCwCHHuIbRHuvgzdZ92up40W7uf0999bpvF3KqZ/AGppjIosV9YwquDfm+BJg/ERtHHBM1C3EbhH0EI/V32yiTJMdAe6vKMry+yRUKvp48TA0QnMRnHUO2Qj7LvtTFTCp+ZfycKX9Z7PrWOqtvy18XWEdKjBlEbIA="),B(Pt,34752,"Z+YJaoWuZ7ty8248OvVPpX9SDlGMaAWbq9mDHxnN4FuYL4pCkUQ3cc/7wLWl27XpW8JWOfER8Vmkgj+S1V4cq5iqB9gBW4MSvoUxJMN9DFV0Xb5y/rHegKcG3Jt08ZvBwWmb5IZHvu/GncEPzKEMJG8s6S2qhHRK3KmwXNqI+XZSUT6YbcYxqMgnA7DHf1m/8wvgxkeRp9VRY8oGZykpFIUKtyc4IRsu/G0sTRMNOFNUcwpluwpqdi7JwoGFLHKSoei/oktmGqhwi0vCo1FsxxnoktEkBpnWhTUO9HCgahAWwaQZCGw3Hkx3SCe1vLA0swwcOUqq2E5Pypxb828uaO6Cj3RvY6V4FHjIhAgCx4z6/76Q62xQpPej+b7yeHHGgA=="),B(Pt,35120,"U2lnRWQyNTUxOSBubyBFZDI1NTE5IGNvbGxpc2lvbnMB"),B(Pt,35200,"IJMBAAEAAAACAAAAAwAAAAQAAAAFAAAABgAAAAcAAAAIAAAACQ=="),B(Pt,35248,"xmNjpfh8fITud3eZ9nt7jf/y8g3Wa2u93m9vsZHFxVRgMDBQAgEBA85nZ6lWKyt95/7+GbXX12JNq6vm7HZ2mo/KykUfgoKdicnJQPp9fYfv+voVsllZ645HR8n78PALQa2t7LPU1GdfoqL9Ra+v6iOcnL9TpKT35HJylpvAwFt1t7fC4f39HD2Tk65MJiZqbDY2Wn4/P0H19/cCg8zMT2g0NFxRpaX00eXlNPnx8QjicXGTq9jYc2IxMVMqFRU/CAQEDJXHx1JGIyNlncPDXjAYGCg3lpahCgUFDy+amrUOBwcJJBISNhuAgJvf4uI9zevrJk4nJ2l/srLN6nV1nxIJCRsdg4OeWCwsdDQaGi42Gxst3G5usrRaWu5boKD7pFJS9nY7O0231tZhfbOzzlIpKXvd4+M+Xi8vcROEhJemU1P1udHRaAAAAADB7e0sQCAgYOP8/B95sbHItltb7dRqar6Ny8tGZ76+2XI5OUuUSkremExM1LBYWOiFz89Ku9DQa8Xv7ypPqqrl7fv7FoZDQ8WaTU3XZjMzVRGFhZSKRUXP6fn5EAQCAgb+f3+BoFBQ8Hg8PEQln5+6S6io46JRUfNdo6P+gEBAwAWPj4o/kpKtIZ2dvHA4OEjx9fUEY7y833e2tsGv2tp1QiEhYyAQEDDl//8a/fPzDr/S0m2Bzc1MGAwMFCYTEzXD7Owvvl9f4TWXl6KIRETMLhcXOZPExFdVp6fy/H5+gno9PUfIZGSsul1d5zIZGSvmc3OVwGBgoBmBgZieT0/Ro9zcf0QiImZUKip+O5CQqwuIiIOMRkbKx+7uKWu4uNMoFBQ8p97eebxeXuIWCwsdrdvbdtvg4DtkMjJWdDo6ThQKCh6SSUnbDAYGCkgkJGy4XFzkn8LCXb3T025DrKzvxGJipjmRkagxlZWk0+TkN/J5eYvV5+cyi8jIQ243N1nabW23AY2NjLHV1WScTk7SSamp4NhsbLSsVlb68/T0B8/q6iXKZWWv9Hp6jkeurukQCAgYb7q61fB4eIhKJSVvXC4ucjgcHCRXpqbxc7S0x5fGxlHL6Ogjod3dfOh0dJw+Hx8hlktL3WG9vdwNi4uGD4qKheBwcJB8Pj5CcbW1xMxmZqqQSEjYBgMDBff29gEcDg4SwmFho2o1NV+uV1f5abm50BeGhpGZwcFYOh0dJyeenrnZ4eE46/j4EyuYmLMiEREz0mlpu6nZ2XAHjo6JM5SUpy2bm7Y8Hh4iFYeHksnp6SCHzs5JqlVV/1AoKHil3996A4yMj1mhofgJiYmAGg0NF2W/v9rX5uYxhEJCxtBoaLiCQUHDKZmZsFotLXceDw8Re7Cwy6hUVPxtu7vWLBYWOgoAAAALAAAADAAAAA0AAAAOAAAADwAAABAAAAAR");var Gn,hn=(Gn=[null,function(Wt,Pt,en,rn,In){var sn,on,cn;return Wt|=0,Pt|=0,en|=0,rn|=0,In|=0,mn=sn=(on=mn)-128&-64,nn[sn>>2]=67108863&(an[0|In]|an[In+1|0]<<8|an[In+2|0]<<16|an[In+3|0]<<24),nn[sn+4>>2]=(an[In+3|0]|an[In+4|0]<<8|an[In+5|0]<<16|an[In+6|0]<<24)>>>2&67108611,nn[sn+8>>2]=(an[In+6|0]|an[In+7|0]<<8|an[In+8|0]<<16|an[In+9|0]<<24)>>>4&67092735,nn[sn+12>>2]=(an[In+9|0]|an[In+10|0]<<8|an[In+11|0]<<16|an[In+12|0]<<24)>>>6&66076671,cn=an[In+12|0]|an[In+13|0]<<8|an[In+14|0]<<16|an[In+15|0]<<24,nn[sn+20>>2]=0,nn[sn+24>>2]=0,nn[sn+28>>2]=0,nn[sn+32>>2]=0,nn[sn+36>>2]=0,nn[sn+16>>2]=cn>>>8&1048575,nn[sn+40>>2]=an[In+16|0]|an[In+17|0]<<8|an[In+18|0]<<16|an[In+19|0]<<24,nn[sn+44>>2]=an[In+20|0]|an[In+21|0]<<8|an[In+22|0]<<16|an[In+23|0]<<24,nn[sn+48>>2]=an[In+24|0]|an[In+25|0]<<8|an[In+26|0]<<16|an[In+27|0]<<24,In=an[In+28|0]|an[In+29|0]<<8|an[In+30|0]<<16|an[In+31|0]<<24,tn[sn+80|0]=0,nn[sn+56>>2]=0,nn[sn+60>>2]=0,nn[sn+52>>2]=In,QA(sn,Pt,en,rn),yA(sn,Wt),mn=on,0},function(Wt,Pt,en,rn,In){var sn,on,cn;return Wt|=0,Pt|=0,en|=0,rn|=0,In|=0,mn=sn=(on=mn)-192&-64,nn[sn+64>>2]=67108863&(an[0|In]|an[In+1|0]<<8|an[In+2|0]<<16|an[In+3|0]<<24),nn[sn+68>>2]=(an[In+3|0]|an[In+4|0]<<8|an[In+5|0]<<16|an[In+6|0]<<24)>>>2&67108611,nn[sn+72>>2]=(an[In+6|0]|an[In+7|0]<<8|an[In+8|0]<<16|an[In+9|0]<<24)>>>4&67092735,nn[sn+76>>2]=(an[In+9|0]|an[In+10|0]<<8|an[In+11|0]<<16|an[In+12|0]<<24)>>>6&66076671,cn=an[In+12|0]|an[In+13|0]<<8|an[In+14|0]<<16|an[In+15|0]<<24,nn[sn+84>>2]=0,nn[sn+88>>2]=0,nn[sn+92>>2]=0,nn[sn+96>>2]=0,nn[sn+100>>2]=0,nn[sn+80>>2]=cn>>>8&1048575,nn[sn+104>>2]=an[In+16|0]|an[In+17|0]<<8|an[In+18|0]<<16|an[In+19|0]<<24,nn[sn+108>>2]=an[In+20|0]|an[In+21|0]<<8|an[In+22|0]<<16|an[In+23|0]<<24,nn[sn+112>>2]=an[In+24|0]|an[In+25|0]<<8|an[In+26|0]<<16|an[In+27|0]<<24,In=an[In+28|0]|an[In+29|0]<<8|an[In+30|0]<<16|an[In+31|0]<<24,tn[sn+144|0]=0,nn[sn+120>>2]=0,nn[sn+124>>2]=0,nn[sn+116>>2]=In,QA(In=sn- -64|0,Pt,en,rn),yA(In,Pt=sn+48|0),Wt=rA(Wt,Pt),mn=on,0|Wt},function(Wt,Pt){var en;return Pt|=0,nn[(Wt|=0)>>2]=67108863&(an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24),nn[Wt+4>>2]=(an[Pt+3|0]|an[Pt+4|0]<<8|an[Pt+5|0]<<16|an[Pt+6|0]<<24)>>>2&67108611,nn[Wt+8>>2]=(an[Pt+6|0]|an[Pt+7|0]<<8|an[Pt+8|0]<<16|an[Pt+9|0]<<24)>>>4&67092735,nn[Wt+12>>2]=(an[Pt+9|0]|an[Pt+10|0]<<8|an[Pt+11|0]<<16|an[Pt+12|0]<<24)>>>6&66076671,en=an[Pt+12|0]|an[Pt+13|0]<<8|an[Pt+14|0]<<16|an[Pt+15|0]<<24,nn[Wt+20>>2]=0,nn[Wt+24>>2]=0,nn[Wt+28>>2]=0,nn[Wt+32>>2]=0,nn[Wt+36>>2]=0,nn[Wt+16>>2]=en>>>8&1048575,nn[Wt+40>>2]=an[Pt+16|0]|an[Pt+17|0]<<8|an[Pt+18|0]<<16|an[Pt+19|0]<<24,nn[Wt+44>>2]=an[Pt+20|0]|an[Pt+21|0]<<8|an[Pt+22|0]<<16|an[Pt+23|0]<<24,nn[Wt+48>>2]=an[Pt+24|0]|an[Pt+25|0]<<8|an[Pt+26|0]<<16|an[Pt+27|0]<<24,Pt=an[Pt+28|0]|an[Pt+29|0]<<8|an[Pt+30|0]<<16|an[Pt+31|0]<<24,tn[Wt+80|0]=0,nn[Wt+56>>2]=0,nn[Wt+60>>2]=0,nn[Wt+52>>2]=Pt,0},function(Wt,Pt,en,tn){return QA(Wt|=0,Pt|=0,en|=0,tn|=0),0},function(Wt,Pt){return yA(Wt|=0,Pt|=0),0},function(Wt,Pt,en){Wt|=0,Pt|=0,en|=0;var rn,In=0,sn=0,on=0,cn=0,dn=0,un=0,pn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0,Fn=0,Qn=0,fn=0,Hn=0,Cn=0,Xn=0,kn=0,Jn=0,Ln=0,Bn=0,xn=0,On=0,Tn=0,Un=0,Mn=0,zn=0,Sn=0,jn=0,Dn=0,_n=0,Kn=0,Pn=0,qn=0,$n=0,el=0,tl=0,nl=0,ll=0,al=0,rl=0,Il=0,sl=0,ol=0,cl=0,il=0,dl=0,ul=0,pl=0,ml=0,bl=0,Gl=0,hl=0,Zl=0,Al=0,Wl=0;for(mn=rn=mn-368|0;An=(on=an[en+In|0])^an[0|(dn=In+33664|0)]|An,Zn=on^an[dn+192|0]|Zn,hn=on^an[dn+160|0]|hn,Gn=on^an[dn+128|0]|Gn,cn=on^an[dn+96|0]|cn,un=on^an[dn- -64|0]|un,sn=on^an[dn+32|0]|sn,31!=(0|(In=In+1|0)););if(In=-1,!(256&((255&((on=127^(dn=127&an[en+31|0]))|Zn))-1|(255&(on|hn))-1|(255&(on|Gn))-1|(255&(87^dn|cn))-1|(255&(un|dn))-1|(255&(sn|dn))-1|(255&(dn|An))-1))){for(In=Pt,Pt=an[Pt+28|0]|an[Pt+29|0]<<8|an[Pt+30|0]<<16|an[Pt+31|0]<<24,nn[rn+360>>2]=an[In+24|0]|an[In+25|0]<<8|an[In+26|0]<<16|an[In+27|0]<<24,nn[rn+364>>2]=Pt,Pt=an[In+20|0]|an[In+21|0]<<8|an[In+22|0]<<16|an[In+23|0]<<24,nn[rn+352>>2]=an[In+16|0]|an[In+17|0]<<8|an[In+18|0]<<16|an[In+19|0]<<24,nn[rn+356>>2]=Pt,sn=an[In+4|0]|an[In+5|0]<<8|an[In+6|0]<<16|an[In+7|0]<<24,Pt=an[0|In]|an[In+1|0]<<8|an[In+2|0]<<16|an[In+3|0]<<24,nn[rn+336>>2]=Pt,nn[rn+340>>2]=sn,sn=an[In+12|0]|an[In+13|0]<<8|an[In+14|0]<<16|an[In+15|0]<<24,nn[rn+344>>2]=an[In+8|0]|an[In+9|0]<<8|an[In+10|0]<<16|an[In+11|0]<<24,nn[rn+348>>2]=sn,tn[rn+336|0]=248&Pt,tn[rn+367|0]=63&an[rn+367|0]|64,V(rn+288|0,en),nn[rn+260>>2]=0,nn[rn+264>>2]=0,nn[rn+268>>2]=0,nn[rn+272>>2]=0,nn[rn+276>>2]=0,nn[rn+208>>2]=0,nn[rn+212>>2]=0,nn[rn+216>>2]=0,nn[rn+220>>2]=0,nn[rn+224>>2]=0,nn[rn+228>>2]=0,Pt=nn[rn+308>>2],nn[rn+160>>2]=nn[rn+304>>2],nn[rn+164>>2]=Pt,Pt=nn[rn+316>>2],nn[rn+168>>2]=nn[rn+312>>2],nn[rn+172>>2]=Pt,Pt=nn[rn+324>>2],nn[rn+176>>2]=nn[rn+320>>2],nn[rn+180>>2]=Pt,nn[rn+244>>2]=0,nn[rn+248>>2]=0,nn[rn+240>>2]=1,nn[rn+252>>2]=0,nn[rn+256>>2]=0,nn[rn+192>>2]=0,nn[rn+196>>2]=0,nn[rn+200>>2]=0,nn[rn+204>>2]=0,Pt=nn[rn+292>>2],nn[rn+144>>2]=nn[rn+288>>2],nn[rn+148>>2]=Pt,Pt=nn[rn+300>>2],nn[rn+152>>2]=nn[rn+296>>2],nn[rn+156>>2]=Pt,nn[rn+116>>2]=0,nn[rn+120>>2]=0,nn[rn+124>>2]=0,nn[rn+128>>2]=0,nn[rn+132>>2]=0,nn[rn+100>>2]=0,nn[rn+104>>2]=0,nn[rn+96>>2]=1,nn[rn+108>>2]=0,nn[rn+112>>2]=0,en=254;_n=nn[rn+276>>2],on=nn[rn+180>>2],Kn=nn[rn+96>>2],Pn=nn[rn+192>>2],qn=nn[rn+144>>2],$n=nn[rn+240>>2],el=nn[rn+100>>2],tl=nn[rn+196>>2],nl=nn[rn+148>>2],ll=nn[rn+244>>2],Fn=nn[rn+104>>2],al=nn[rn+200>>2],Qn=nn[rn+152>>2],rl=nn[rn+248>>2],Cn=nn[rn+108>>2],Il=nn[rn+204>>2],Xn=nn[rn+156>>2],sl=nn[rn+252>>2],fn=nn[rn+112>>2],ol=nn[rn+208>>2],Rn=nn[rn+160>>2],cl=nn[rn+256>>2],An=nn[rn+116>>2],il=nn[rn+212>>2],pn=nn[rn+164>>2],dl=nn[rn+260>>2],Zn=nn[rn+120>>2],ul=nn[rn+216>>2],hn=nn[rn+168>>2],pl=nn[rn+264>>2],Gn=nn[rn+124>>2],ml=nn[rn+220>>2],cn=nn[rn+172>>2],bl=nn[rn+268>>2],un=nn[rn+128>>2],Gl=nn[rn+224>>2],sn=nn[rn+176>>2],Vn=nn[rn+272>>2],hl=en,wn=(vn=(Pt=0-((Pt=Dn)^(Dn=an[(Zl=rn+336|0)+(en>>>3|0)|0]>>>(7&en)&1))|0)&((In=nn[rn+132>>2])^(Mn=nn[rn+228>>2])))^In,nn[rn+132>>2]=wn,zn=on^(Yn=Pt&(on^_n)),nn[rn+84>>2]=zn-wn,Hn=un^(Nn=Pt&(un^Gl)),nn[rn+128>>2]=Hn,Sn=(En=Pt&(sn^Vn))^sn,nn[rn+80>>2]=Sn-Hn,Jn=Gn^(gn=Pt&(Gn^ml)),nn[rn+124>>2]=Jn,Al=cn^(yn=Pt&(cn^bl)),nn[rn+76>>2]=Al-Jn,Ln=Zn^(Wn=Pt&(Zn^ul)),nn[rn+120>>2]=Ln,Wl=hn^(dn=Pt&(hn^pl)),nn[rn+72>>2]=Wl-Ln,Bn=An^(on=Pt&(An^il)),nn[rn+116>>2]=Bn,xn=pn^(An=Pt&(pn^dl)),nn[rn+68>>2]=xn-Bn,On=fn^(Zn=Pt&(fn^ol)),nn[rn+112>>2]=On,kn=Rn^(hn=Pt&(Rn^cl)),nn[rn+64>>2]=kn-On,Tn=Cn^(Gn=Pt&(Cn^Il)),nn[rn+108>>2]=Tn,jn=Xn^(cn=Pt&(Xn^sl)),nn[rn+60>>2]=jn-Tn,Un=Fn^(un=Pt&(Fn^al)),nn[rn+104>>2]=Un,Cn=Qn^(sn=Pt&(Qn^rl)),nn[rn+56>>2]=Cn-Un,Fn=el^(In=Pt&(el^tl)),nn[rn+100>>2]=Fn,Xn=nl^(en=Pt&(nl^ll)),nn[rn+52>>2]=Xn-Fn,Qn=Kn^(fn=Pt&(Kn^Pn)),nn[rn+96>>2]=Qn,Rn=(Pt&=qn^$n)^qn,nn[rn+48>>2]=Rn-Qn,pn=Yn^_n,vn^=Mn,nn[rn+36>>2]=pn-vn,Yn=En^Vn,Nn^=Gl,nn[rn+32>>2]=Yn-Nn,En=yn^bl,gn^=ml,nn[rn+28>>2]=En-gn,yn=dn^pl,Wn^=ul,nn[rn+24>>2]=yn-Wn,dn=An^dl,on^=il,nn[rn+20>>2]=dn-on,An=hn^cl,Zn^=ol,nn[rn+16>>2]=An-Zn,hn=cn^sl,Gn^=Il,nn[rn+12>>2]=hn-Gn,cn=sn^rl,un^=al,nn[rn+8>>2]=cn-un,sn=en^ll,In^=tl,nn[rn+4>>2]=sn-In,en=Pt^$n,Pt=fn^Pn,nn[rn>>2]=en-Pt,nn[rn+276>>2]=pn+vn,nn[rn+272>>2]=Yn+Nn,nn[rn+268>>2]=gn+En,nn[rn+264>>2]=Wn+yn,nn[rn+260>>2]=on+dn,nn[rn+256>>2]=Zn+An,nn[rn+248>>2]=cn+un,nn[rn+244>>2]=In+sn,nn[rn+240>>2]=Pt+en,nn[rn+252>>2]=Gn+hn,nn[rn+228>>2]=wn+zn,nn[rn+224>>2]=Hn+Sn,nn[rn+220>>2]=Jn+Al,nn[rn+216>>2]=Ln+Wl,nn[rn+212>>2]=Bn+xn,nn[rn+208>>2]=kn+On,nn[rn+204>>2]=Tn+jn,nn[rn+200>>2]=Cn+Un,nn[rn+196>>2]=Fn+Xn,nn[rn+192>>2]=Rn+Qn,M(zn=rn+96|0,Hn=rn+48|0,wn=rn+240|0),M(Vn=rn+192|0,Vn,rn),U(Hn,rn),U(rn,wn),pn=nn[rn+192>>2],vn=nn[rn+96>>2],Yn=nn[rn+196>>2],Nn=nn[rn+100>>2],En=nn[rn+200>>2],gn=nn[rn+104>>2],yn=nn[rn+204>>2],Wn=nn[rn+108>>2],dn=nn[rn+208>>2],on=nn[rn+112>>2],An=nn[rn+212>>2],Zn=nn[rn+116>>2],hn=nn[rn+216>>2],Gn=nn[rn+120>>2],cn=nn[rn+220>>2],un=nn[rn+124>>2],sn=nn[rn+224>>2],In=nn[rn+128>>2],en=nn[rn+228>>2],Pt=nn[rn+132>>2],nn[rn+180>>2]=en+Pt,nn[rn+176>>2]=In+sn,nn[rn+172>>2]=cn+un,nn[rn+168>>2]=Gn+hn,nn[rn+164>>2]=Zn+An,nn[rn+160>>2]=on+dn,nn[rn+156>>2]=Wn+yn,nn[rn+152>>2]=gn+En,nn[rn+148>>2]=Yn+Nn,nn[rn+144>>2]=pn+vn,nn[rn+228>>2]=Pt-en,nn[rn+224>>2]=In-sn,nn[rn+220>>2]=un-cn,nn[rn+216>>2]=Gn-hn,nn[rn+212>>2]=Zn-An,nn[rn+208>>2]=on-dn,nn[rn+204>>2]=Wn-yn,nn[rn+200>>2]=gn-En,nn[rn+196>>2]=Nn-Yn,nn[rn+192>>2]=vn-pn,M(wn,rn,Hn),Jn=nn[rn+52>>2],Wn=nn[rn+4>>2],Ln=nn[rn+56>>2],dn=nn[rn+8>>2],Bn=nn[rn+64>>2],hn=nn[rn+16>>2],On=nn[rn+60>>2],Gn=nn[rn+12>>2],Tn=nn[rn+72>>2],cn=nn[rn+24>>2],Un=nn[rn+68>>2],un=nn[rn+20>>2],Fn=nn[rn+80>>2],sn=nn[rn+32>>2],Qn=nn[rn+76>>2],In=nn[rn+28>>2],Mn=nn[rn+84>>2],Pt=nn[rn+36>>2],Sn=nn[rn+48>>2],en=nn[rn>>2]-Sn|0,nn[rn>>2]=en,Pt=Pt-Mn|0,nn[rn+36>>2]=Pt,fn=In-Qn|0,nn[rn+28>>2]=fn,Rn=sn-Fn|0,nn[rn+32>>2]=Rn,on=un-Un|0,nn[rn+20>>2]=on,An=cn-Tn|0,nn[rn+24>>2]=An,Zn=Gn-On|0,nn[rn+12>>2]=Zn,hn=hn-Bn|0,nn[rn+16>>2]=hn,Gn=dn-Ln|0,nn[rn+8>>2]=Gn,sn=Wn-Jn|0,nn[rn+4>>2]=sn,U(Vn,Vn),Pt=PA(Pt,Pt>>31,121666,0),In=bn,jn=Pt,Pt=PA((33554431&(In=(pn=Pt+16777216|0)>>>0<16777216?In+1|0:In))<<7|pn>>>25,In>>25,19,0),un=bn,In=Pt,Pt=PA(en,en>>31,121666,0),kn=bn+un|0,Pt=Pt>>>0>(In=In+Pt|0)>>>0?kn+1|0:kn,en=(cn=In+33554432|0)>>>0<33554432?Pt+1|0:Pt,vn=In-(-67108864&cn)|0,nn[rn+96>>2]=vn,un=PA(sn,sn>>31,121666,0),In=bn,In=(sn=un+16777216|0)>>>0<16777216?In+1|0:In,Yn=(un-(-33554432&sn)|0)+((67108863&en)<<6|cn>>>26)|0,nn[rn+100>>2]=Yn,kn=(Pt=In)>>25,In=(33554431&Pt)<<7|sn>>>25,en=PA(Gn,Gn>>31,121666,0)+In|0,Pt=kn+bn|0,Pt=en>>>0>>0?Pt+1|0:Pt,un=(Nn=en+33554432|0)>>>0<33554432?Pt+1|0:Pt,En=en-(-67108864&Nn)|0,nn[rn+104>>2]=En,In=PA(hn,hn>>31,121666,0),sn=bn,en=PA(Zn,Zn>>31,121666,0),Pt=bn,xn=In,Cn=en,In=(33554431&(Pt=(gn=en+16777216|0)>>>0<16777216?Pt+1|0:Pt))<<7|gn>>>25,Pt=(Pt>>25)+sn|0,Pt=(en=xn+In|0)>>>0>>0?Pt+1|0:Pt,sn=(yn=en+33554432|0)>>>0<33554432?Pt+1|0:Pt,Wn=en-(-67108864&yn)|0,nn[rn+112>>2]=Wn,In=PA(An,An>>31,121666,0),cn=bn,en=PA(on,on>>31,121666,0),Pt=bn,xn=In,Xn=en,In=(33554431&(Pt=(dn=en+16777216|0)>>>0<16777216?Pt+1|0:Pt))<<7|dn>>>25,Pt=(Pt>>25)+cn|0,Pt=(en=xn+In|0)>>>0>>0?Pt+1|0:Pt,In=(on=en+33554432|0)>>>0<33554432?Pt+1|0:Pt,An=en-(-67108864&on)|0,nn[rn+120>>2]=An,cn=PA(Rn,Rn>>31,121666,0),Gn=bn,en=PA(fn,fn>>31,121666,0),Pt=bn,Rn=en,en=(33554431&(Pt=(Zn=en+16777216|0)>>>0<16777216?Pt+1|0:Pt))<<7|Zn>>>25,Pt=(Pt>>25)+Gn|0,Pt=en>>>0>(cn=en+cn|0)>>>0?Pt+1|0:Pt,en=(hn=cn+33554432|0)>>>0<33554432?Pt+1|0:Pt,Gn=cn-(-67108864&hn)|0,nn[rn+128>>2]=Gn,cn=(un=Cn+((67108863&un)<<6|Nn>>>26)|0)-(-33554432&gn)|0,nn[rn+108>>2]=cn,un=(sn=Xn+((67108863&sn)<<6|yn>>>26)|0)-(-33554432&dn)|0,nn[rn+116>>2]=un,sn=(Pt=Rn+((67108863&In)<<6|on>>>26)|0)-(-33554432&Zn)|0,nn[rn+124>>2]=sn,en=(en=jn+((67108863&en)<<6|hn>>>26)|0)-(-33554432&pn)|0,nn[rn+132>>2]=en,U(Pt=rn+144|0,Pt),nn[rn+84>>2]=en+Mn,nn[rn+80>>2]=Gn+Fn,nn[rn+76>>2]=sn+Qn,nn[rn+72>>2]=An+Tn,nn[rn+68>>2]=un+Un,nn[rn+64>>2]=Wn+Bn,nn[rn+60>>2]=cn+On,nn[rn+56>>2]=En+Ln,nn[rn+52>>2]=Yn+Jn,nn[rn+48>>2]=vn+Sn,en=hl-1|0,M(zn,rn+288|0,Vn),M(Vn,rn,Hn),hl;);An=nn[rn+144>>2],vn=nn[rn+240>>2],Zn=nn[rn+148>>2],Yn=nn[rn+244>>2],hn=nn[rn+152>>2],Nn=nn[rn+248>>2],Gn=nn[rn+156>>2],En=nn[rn+252>>2],cn=nn[rn+160>>2],gn=nn[rn+256>>2],un=nn[rn+164>>2],yn=nn[rn+260>>2],sn=nn[rn+168>>2],Wn=nn[rn+264>>2],In=nn[rn+172>>2],dn=nn[rn+268>>2],en=nn[rn+176>>2],on=nn[rn+272>>2],pn=0-Dn|0,Pt=nn[rn+276>>2],nn[rn+276>>2]=pn&(Pt^nn[rn+180>>2])^Pt,nn[rn+272>>2]=on^pn&(en^on),nn[rn+268>>2]=dn^pn&(In^dn),nn[rn+264>>2]=Wn^pn&(sn^Wn),nn[rn+260>>2]=yn^pn&(un^yn),nn[rn+256>>2]=gn^pn&(cn^gn),nn[rn+252>>2]=En^pn&(Gn^En),nn[rn+248>>2]=Nn^pn&(hn^Nn),nn[rn+244>>2]=Yn^pn&(Zn^Yn),nn[rn+240>>2]=vn^pn&(An^vn),vn=nn[rn+192>>2],An=nn[rn+96>>2],Yn=nn[rn+196>>2],Zn=nn[rn+100>>2],Nn=nn[rn+200>>2],hn=nn[rn+104>>2],En=nn[rn+204>>2],Gn=nn[rn+108>>2],gn=nn[rn+208>>2],cn=nn[rn+112>>2],yn=nn[rn+212>>2],un=nn[rn+116>>2],Wn=nn[rn+216>>2],sn=nn[rn+120>>2],dn=nn[rn+220>>2],In=nn[rn+124>>2],on=nn[rn+224>>2],en=nn[rn+128>>2],Pt=nn[rn+228>>2],nn[rn+228>>2]=pn&(Pt^nn[rn+132>>2])^Pt,nn[rn+224>>2]=on^pn&(en^on),nn[rn+220>>2]=dn^pn&(In^dn),nn[rn+216>>2]=Wn^pn&(sn^Wn),nn[rn+212>>2]=yn^pn&(un^yn),nn[rn+208>>2]=gn^pn&(cn^gn),nn[rn+204>>2]=En^pn&(Gn^En),nn[rn+200>>2]=Nn^pn&(hn^Nn),nn[rn+196>>2]=Yn^pn&(Zn^Yn),nn[rn+192>>2]=vn^pn&(An^vn),iA(Vn,Vn),M(wn,wn,Vn),eA(Wt,wn),MI(Zl,32),In=0}return mn=rn+368|0,0|In},function(Wt,Pt){var en,rn,In,sn,on,cn,dn,un,pn,bn,Gn,hn,Zn,An,Wn,Nn,gn,yn,vn,Yn;return Pt|=0,mn=en=mn-304|0,tn[0|(Wt|=0)]=an[0|Pt],tn[Wt+1|0]=an[Pt+1|0],tn[Wt+2|0]=an[Pt+2|0],tn[Wt+3|0]=an[Pt+3|0],tn[Wt+4|0]=an[Pt+4|0],tn[Wt+5|0]=an[Pt+5|0],tn[Wt+6|0]=an[Pt+6|0],tn[Wt+7|0]=an[Pt+7|0],tn[Wt+8|0]=an[Pt+8|0],tn[Wt+9|0]=an[Pt+9|0],tn[Wt+10|0]=an[Pt+10|0],tn[Wt+11|0]=an[Pt+11|0],tn[Wt+12|0]=an[Pt+12|0],tn[Wt+13|0]=an[Pt+13|0],tn[Wt+14|0]=an[Pt+14|0],tn[Wt+15|0]=an[Pt+15|0],tn[Wt+16|0]=an[Pt+16|0],tn[Wt+17|0]=an[Pt+17|0],tn[Wt+18|0]=an[Pt+18|0],tn[Wt+19|0]=an[Pt+19|0],tn[Wt+20|0]=an[Pt+20|0],tn[Wt+21|0]=an[Pt+21|0],tn[Wt+22|0]=an[Pt+22|0],tn[Wt+23|0]=an[Pt+23|0],tn[Wt+24|0]=an[Pt+24|0],tn[Wt+25|0]=an[Pt+25|0],tn[Wt+26|0]=an[Pt+26|0],tn[Wt+27|0]=an[Pt+27|0],tn[Wt+28|0]=an[Pt+28|0],tn[Wt+29|0]=an[Pt+29|0],tn[Wt+30|0]=an[Pt+30|0],Pt=an[Pt+31|0],tn[0|Wt]=248&an[0|Wt],tn[Wt+31|0]=63&Pt|64,Z(en+48|0,Wt),Pt=nn[en+128>>2],rn=nn[en+88>>2],In=nn[en+132>>2],sn=nn[en+92>>2],on=nn[en+136>>2],cn=nn[en+96>>2],dn=nn[en+140>>2],un=nn[en+100>>2],pn=nn[en+144>>2],bn=nn[en+104>>2],Gn=nn[en+148>>2],hn=nn[en+108>>2],Zn=nn[en+152>>2],An=nn[en+112>>2],Wn=nn[en+156>>2],Nn=nn[en+116>>2],gn=nn[en+160>>2],yn=nn[en+120>>2],vn=nn[en+124>>2],Yn=nn[en+164>>2],nn[en+292>>2]=vn+Yn,nn[en+288>>2]=gn+yn,nn[en+284>>2]=Wn+Nn,nn[en+280>>2]=Zn+An,nn[en+276>>2]=Gn+hn,nn[en+272>>2]=pn+bn,nn[en+268>>2]=dn+un,nn[en+264>>2]=on+cn,nn[en+260>>2]=In+sn,nn[en+256>>2]=Pt+rn,nn[en+244>>2]=Yn-vn,nn[en+240>>2]=gn-yn,nn[en+236>>2]=Wn-Nn,nn[en+232>>2]=Zn-An,nn[en+228>>2]=Gn-hn,nn[en+224>>2]=pn-bn,nn[en+220>>2]=dn-un,nn[en+216>>2]=on-cn,nn[en+212>>2]=In-sn,nn[en+208>>2]=Pt-rn,iA(Pt=en+208|0,Pt),M(en,en+256|0,Pt),eA(Wt,en),mn=en+304|0,0},function(Wt,Pt,en,rn,In){Wt|=0,rn|=0,In|=0;var sn,on=0,cn=0,dn=0,un=0;if(mn=sn=mn-112|0,(Pt|=0)|(en|=0)){on=an[In+28|0]|an[In+29|0]<<8|an[In+30|0]<<16|an[In+31|0]<<24,nn[sn+24>>2]=an[In+24|0]|an[In+25|0]<<8|an[In+26|0]<<16|an[In+27|0]<<24,nn[sn+28>>2]=on,on=an[In+20|0]|an[In+21|0]<<8|an[In+22|0]<<16|an[In+23|0]<<24,nn[sn+16>>2]=an[In+16|0]|an[In+17|0]<<8|an[In+18|0]<<16|an[In+19|0]<<24,nn[sn+20>>2]=on,on=an[In+4|0]|an[In+5|0]<<8|an[In+6|0]<<16|an[In+7|0]<<24,nn[sn>>2]=an[0|In]|an[In+1|0]<<8|an[In+2|0]<<16|an[In+3|0]<<24,nn[sn+4>>2]=on,on=an[In+12|0]|an[In+13|0]<<8|an[In+14|0]<<16|an[In+15|0]<<24,nn[sn+8>>2]=an[In+8|0]|an[In+9|0]<<8|an[In+10|0]<<16|an[In+11|0]<<24,nn[sn+12>>2]=on,In=an[0|rn]|an[rn+1|0]<<8|an[rn+2|0]<<16|an[rn+3|0]<<24,rn=an[rn+4|0]|an[rn+5|0]<<8|an[rn+6|0]<<16|an[rn+7|0]<<24,nn[sn+104>>2]=0,nn[sn+108>>2]=0,nn[sn+96>>2]=In,nn[sn+100>>2]=rn;e:{if(!en&Pt>>>0>=64|en){for(;l(Wt,sn+96|0,sn),rn=an[sn+104|0]+1|0,tn[sn+104|0]=rn,rn=an[sn+105|0]+(rn>>>8|0)|0,tn[sn+105|0]=rn,rn=an[sn+106|0]+(rn>>>8|0)|0,tn[sn+106|0]=rn,rn=an[sn+107|0]+(rn>>>8|0)|0,tn[sn+107|0]=rn,rn=an[sn+108|0]+(rn>>>8|0)|0,tn[sn+108|0]=rn,rn=an[sn+109|0]+(rn>>>8|0)|0,tn[sn+109|0]=rn,rn=an[sn+110|0]+(rn>>>8|0)|0,tn[sn+110|0]=rn,tn[sn+111|0]=an[sn+111|0]+(rn>>>8|0),Wt=Wt- -64|0,en=en-1|0,!(en=(Pt=Pt+-64|0)>>>0<4294967232?en+1|0:en)&Pt>>>0>63|en;);if(!(Pt|en))break e}if(rn=0,l(sn+32|0,sn+96|0,sn),on=3&Pt,In=0,!en&Pt>>>0>=4|en)for(en=60&Pt,Pt=0;cn=dn=sn+32|0,tn[Wt+In|0]=an[cn+In|0],tn[(un=1|In)+Wt|0]=an[cn+un|0],tn[(cn=2|In)+Wt|0]=an[cn+dn|0],tn[(cn=3|In)+Wt|0]=an[cn+(sn+32|0)|0],In=In+4|0,(0|en)!=(0|(Pt=Pt+4|0)););if(on)for(;tn[Wt+In|0]=an[(sn+32|0)+In|0],In=In+1|0,(0|on)!=(0|(rn=rn+1|0)););}MI(sn+32|0,64),MI(sn,32)}return mn=sn+112|0,0},function(Wt,Pt,en,rn,In,sn,on,cn){Wt|=0,Pt|=0,In|=0,sn|=0,on|=0,cn|=0;var dn,un=0;if(mn=dn=mn-112|0,(en|=0)|(rn|=0)){un=an[cn+28|0]|an[cn+29|0]<<8|an[cn+30|0]<<16|an[cn+31|0]<<24,nn[dn+24>>2]=an[cn+24|0]|an[cn+25|0]<<8|an[cn+26|0]<<16|an[cn+27|0]<<24,nn[dn+28>>2]=un,un=an[cn+20|0]|an[cn+21|0]<<8|an[cn+22|0]<<16|an[cn+23|0]<<24,nn[dn+16>>2]=an[cn+16|0]|an[cn+17|0]<<8|an[cn+18|0]<<16|an[cn+19|0]<<24,nn[dn+20>>2]=un,un=an[cn+4|0]|an[cn+5|0]<<8|an[cn+6|0]<<16|an[cn+7|0]<<24,nn[dn>>2]=an[0|cn]|an[cn+1|0]<<8|an[cn+2|0]<<16|an[cn+3|0]<<24,nn[dn+4>>2]=un,un=an[cn+12|0]|an[cn+13|0]<<8|an[cn+14|0]<<16|an[cn+15|0]<<24,nn[dn+8>>2]=an[cn+8|0]|an[cn+9|0]<<8|an[cn+10|0]<<16|an[cn+11|0]<<24,nn[dn+12>>2]=un,cn=an[In+4|0]|an[In+5|0]<<8|an[In+6|0]<<16|an[In+7|0]<<24,nn[dn+96>>2]=an[0|In]|an[In+1|0]<<8|an[In+2|0]<<16|an[In+3|0]<<24,nn[dn+100>>2]=cn,tn[dn+104|0]=sn,tn[dn+111|0]=on>>>24,tn[dn+110|0]=on>>>16,tn[dn+109|0]=on>>>8,tn[dn+108|0]=on,tn[dn+107|0]=(16777215&on)<<8|sn>>>24,tn[dn+106|0]=(65535&on)<<16|sn>>>16,tn[dn+105|0]=(255&on)<<24|sn>>>8;e:{if(!rn&en>>>0>=64|rn){for(;;){for(cn=0,l(dn+32|0,dn+96|0,dn);sn=dn+32|0,tn[Wt+cn|0]=an[sn+cn|0]^an[Pt+cn|0],tn[(In=1|cn)+Wt|0]=an[In+sn|0]^an[Pt+In|0],64!=(0|(cn=cn+2|0)););if(In=an[dn+104|0]+1|0,tn[dn+104|0]=In,In=an[dn+105|0]+(In>>>8|0)|0,tn[dn+105|0]=In,In=an[dn+106|0]+(In>>>8|0)|0,tn[dn+106|0]=In,In=an[dn+107|0]+(In>>>8|0)|0,tn[dn+107|0]=In,In=an[dn+108|0]+(In>>>8|0)|0,tn[dn+108|0]=In,In=an[dn+109|0]+(In>>>8|0)|0,tn[dn+109|0]=In,In=an[dn+110|0]+(In>>>8|0)|0,tn[dn+110|0]=In,tn[dn+111|0]=an[dn+111|0]+(In>>>8|0),Pt=Pt- -64|0,Wt=Wt- -64|0,rn=rn-1|0,!(!(rn=(en=en+-64|0)>>>0<4294967232?rn+1|0:rn)&en>>>0>63|rn))break}if(!(en|rn))break e}if(cn=0,l(dn+32|0,dn+96|0,dn),sn=1&en,1!=(0|en)|rn)for(rn=62&en,In=0;on=dn+32|0,tn[Wt+cn|0]=an[on+cn|0]^an[Pt+cn|0],tn[(en=1|cn)+Wt|0]=an[en+on|0]^an[Pt+en|0],cn=cn+2|0,(0|rn)!=(0|(In=In+2|0)););sn&&(tn[Wt+cn|0]=an[(dn+32|0)+cn|0]^an[Pt+cn|0])}MI(dn+32|0,64),MI(dn,32)}return mn=dn+112|0,0},function(Wt,Pt,en,tn,nn,an,rn,In,sn){Wt|=0,Pt|=0,en|=0,tn|=0,nn|=0,an|=0,rn|=0;var on,cn,dn=0;if(cn=dn=mn,mn=on=dn-192&-32,b(sn|=0,In|=0,on- -64|0),sn=0,rn>>>0<=63)In=0;else for(dn=64;N(an+sn|0,on- -64|0),sn=In=dn,(dn=In- -64|0)>>>0<=rn>>>0;);if((dn=32|In)>>>0>rn>>>0)sn=In;else for(;x(an+In|0,on- -64|0),sn=dn,(dn=(In=dn)+32|0)>>>0<=rn>>>0;);if((In=31&rn)&&(VA((dn=on+32|0)|In,0,32-In|0),TA(dn,an+sn|0,In),x(dn,on- -64|0)),sn=32,In=0,nn>>>0<32)an=0;else for(;G(Wt+In|0,tn+In|0,on- -64|0),an=sn,(sn=(In=sn)+32|0)>>>0<=nn>>>0;);return(In=31&nn)&&(VA((sn=on+32|0)|In,0,32-In|0),TA(sn,tn+an|0,In),G(on,sn,on- -64|0),TA(Wt+an|0,on,In)),K(Pt,en,rn,nn,on- -64|0),mn=cn,0},function(Wt,Pt,en,tn,nn,an,rn,In,sn){Wt|=0,Pt|=0,en|=0,tn|=0,nn|=0,an|=0,rn|=0;var on,cn,dn=0;if(cn=dn=mn,mn=on=dn-224&-32,b(sn|=0,In|=0,on+96|0),sn=0,rn>>>0<=63)In=0;else for(dn=64;N(an+sn|0,on+96|0),sn=In=dn,(dn=In- -64|0)>>>0<=rn>>>0;);if((dn=32|In)>>>0>rn>>>0)sn=In;else for(;x(an+In|0,on+96|0),sn=dn,(dn=(In=dn)+32|0)>>>0<=rn>>>0;);(In=31&rn)&&(VA((dn=on- -64|0)|In,0,32-In|0),TA(dn,an+sn|0,In),x(dn,on+96|0));e:{t:{n:{l:{a:{if(Wt){if(sn=32,en>>>0<32)break a;for(an=0;H(Wt+an|0,Pt+an|0,on+96|0),an=In=sn,(sn=In+32|0)>>>0<=en>>>0;);}else{if(an=32,en>>>0<32)break n;for(sn=0;H(on+32|0,Pt+sn|0,on+96|0),sn=In=an,(an=In+32|0)>>>0<=en>>>0;);}if(!(an=31&en))break e;if(Wt)break l;break t}if(In=0,an=en,!en)break e}Y(Wt+In|0,Pt+In|0,an,on+96|0);break e}if(In=0,an=en,!en)break e}Y(on+32|0,Pt+In|0,an,on+96|0)}K(on,nn,rn,en,on+96|0),In=-1;e:{t:{if(Pt=nn-16|0){if(16==(0|Pt))break t;break e}In=rA(on,tn);break e}In=UA(on,tn)}return!Wt|!In||VA(Wt,0,en),mn=cn,0|In},function(Wt,Pt,en,tn,rn,In,sn,on,cn){Wt|=0,Pt|=0,en|=0,tn|=0,rn|=0,In|=0,sn|=0;var dn,un=0,pn=0,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0;if(mn=dn=mn-528|0,S(cn|=0,on|=0,dn+400|0),cn=0,sn>>>0<=31)on=0;else for(pn=32;d(In+cn|0,dn+400|0),cn=on=pn,(pn=on+32|0)>>>0<=sn>>>0;);if((cn=16|on)>>>0<=sn>>>0)for(pn=dn+416|0,Gn=dn+432|0,hn=dn+448|0,bn=dn+464|0,Zn=dn+480|0;An=an[0|(on=In+on|0)]|an[on+1|0]<<8|an[on+2|0]<<16|an[on+3|0]<<24,Wn=an[on+4|0]|an[on+5|0]<<8|an[on+6|0]<<16|an[on+7|0]<<24,Nn=an[on+8|0]|an[on+9|0]<<8|an[on+10|0]<<16|an[on+11|0]<<24,gn=an[on+12|0]|an[on+13|0]<<8|an[on+14|0]<<16|an[on+15|0]<<24,on=nn[Zn+12>>2],nn[dn+520>>2]=nn[Zn+8>>2],nn[dn+524>>2]=on,on=nn[Zn+4>>2],nn[dn+512>>2]=nn[Zn>>2],nn[dn+516>>2]=on,on=nn[bn+12>>2],nn[dn+376>>2]=nn[bn+8>>2],nn[dn+380>>2]=on,on=nn[bn+4>>2],nn[dn+368>>2]=nn[bn>>2],nn[dn+372>>2]=on,on=nn[Zn+12>>2],nn[dn+360>>2]=nn[Zn+8>>2],nn[dn+364>>2]=on,on=nn[Zn+4>>2],nn[dn+352>>2]=nn[Zn>>2],nn[dn+356>>2]=on,aA(on=dn+496|0,dn+368|0,dn+352|0),un=nn[dn+508>>2],nn[Zn+8>>2]=nn[dn+504>>2],nn[Zn+12>>2]=un,un=nn[dn+500>>2],nn[Zn>>2]=nn[dn+496>>2],nn[Zn+4>>2]=un,un=nn[hn+12>>2],nn[dn+344>>2]=nn[hn+8>>2],nn[dn+348>>2]=un,un=nn[hn+4>>2],nn[dn+336>>2]=nn[hn>>2],nn[dn+340>>2]=un,un=nn[bn+12>>2],nn[dn+328>>2]=nn[bn+8>>2],nn[dn+332>>2]=un,un=nn[bn+4>>2],nn[dn+320>>2]=nn[bn>>2],nn[dn+324>>2]=un,aA(on,dn+336|0,dn+320|0),un=nn[dn+508>>2],nn[bn+8>>2]=nn[dn+504>>2],nn[bn+12>>2]=un,un=nn[dn+500>>2],nn[bn>>2]=nn[dn+496>>2],nn[bn+4>>2]=un,un=nn[Gn+12>>2],nn[dn+312>>2]=nn[Gn+8>>2],nn[dn+316>>2]=un,un=nn[Gn+4>>2],nn[dn+304>>2]=nn[Gn>>2],nn[dn+308>>2]=un,un=nn[hn+12>>2],nn[dn+296>>2]=nn[hn+8>>2],nn[dn+300>>2]=un,un=nn[hn+4>>2],nn[dn+288>>2]=nn[hn>>2],nn[dn+292>>2]=un,aA(on,dn+304|0,dn+288|0),un=nn[dn+508>>2],nn[hn+8>>2]=nn[dn+504>>2],nn[hn+12>>2]=un,un=nn[dn+500>>2],nn[hn>>2]=nn[dn+496>>2],nn[hn+4>>2]=un,un=nn[pn+12>>2],nn[dn+280>>2]=nn[pn+8>>2],nn[dn+284>>2]=un,un=nn[pn+4>>2],nn[dn+272>>2]=nn[pn>>2],nn[dn+276>>2]=un,un=nn[Gn+12>>2],nn[dn+264>>2]=nn[Gn+8>>2],nn[dn+268>>2]=un,un=nn[Gn+4>>2],nn[dn+256>>2]=nn[Gn>>2],nn[dn+260>>2]=un,aA(on,dn+272|0,dn+256|0),un=nn[dn+508>>2],nn[Gn+8>>2]=nn[dn+504>>2],nn[Gn+12>>2]=un,un=nn[dn+500>>2],nn[Gn>>2]=nn[dn+496>>2],nn[Gn+4>>2]=un,un=nn[dn+412>>2],nn[dn+248>>2]=nn[dn+408>>2],nn[dn+252>>2]=un,un=nn[dn+404>>2],nn[dn+240>>2]=nn[dn+400>>2],nn[dn+244>>2]=un,un=nn[pn+12>>2],nn[dn+232>>2]=nn[pn+8>>2],nn[dn+236>>2]=un,un=nn[pn+4>>2],nn[dn+224>>2]=nn[pn>>2],nn[dn+228>>2]=un,aA(on,dn+240|0,dn+224|0),un=nn[dn+508>>2],nn[pn+8>>2]=nn[dn+504>>2],nn[pn+12>>2]=un,un=nn[dn+500>>2],nn[pn>>2]=nn[dn+496>>2],nn[pn+4>>2]=un,un=nn[dn+524>>2],nn[dn+216>>2]=nn[dn+520>>2],nn[dn+220>>2]=un,un=nn[dn+412>>2],nn[dn+200>>2]=nn[dn+408>>2],nn[dn+204>>2]=un,un=nn[dn+516>>2],nn[dn+208>>2]=nn[dn+512>>2],nn[dn+212>>2]=un,un=nn[dn+404>>2],nn[dn+192>>2]=nn[dn+400>>2],nn[dn+196>>2]=un,aA(on,dn+208|0,dn+192|0),nn[dn+412>>2]=gn^nn[dn+508>>2],nn[dn+408>>2]=nn[dn+504>>2]^Nn,nn[dn+404>>2]=nn[dn+500>>2]^Wn,nn[dn+400>>2]=nn[dn+496>>2]^An,(cn=(on=cn)+16|0)>>>0<=sn>>>0;);if((cn=15&sn)&&(VA((pn=dn+384|0)|cn,0,16-cn|0),TA(pn,In+on|0,cn),cn=nn[dn+384>>2],pn=nn[dn+388>>2],Gn=nn[dn+392>>2],hn=nn[dn+396>>2],on=nn[dn+492>>2],In=nn[dn+488>>2],nn[dn+520>>2]=In,nn[dn+524>>2]=on,bn=nn[dn+476>>2],nn[dn+184>>2]=nn[dn+472>>2],nn[dn+188>>2]=bn,nn[dn+168>>2]=In,nn[dn+172>>2]=on,on=nn[dn+484>>2],In=nn[dn+480>>2],nn[dn+512>>2]=In,nn[dn+516>>2]=on,bn=nn[dn+468>>2],nn[dn+176>>2]=nn[dn+464>>2],nn[dn+180>>2]=bn,nn[dn+160>>2]=In,nn[dn+164>>2]=on,aA(In=dn+496|0,dn+176|0,dn+160|0),on=nn[dn+508>>2],nn[dn+488>>2]=nn[dn+504>>2],nn[dn+492>>2]=on,on=nn[dn+460>>2],nn[dn+152>>2]=nn[dn+456>>2],nn[dn+156>>2]=on,on=nn[dn+476>>2],nn[dn+136>>2]=nn[dn+472>>2],nn[dn+140>>2]=on,on=nn[dn+500>>2],nn[dn+480>>2]=nn[dn+496>>2],nn[dn+484>>2]=on,on=nn[dn+452>>2],nn[dn+144>>2]=nn[dn+448>>2],nn[dn+148>>2]=on,on=nn[dn+468>>2],nn[dn+128>>2]=nn[dn+464>>2],nn[dn+132>>2]=on,aA(In,dn+144|0,dn+128|0),on=nn[dn+508>>2],nn[dn+472>>2]=nn[dn+504>>2],nn[dn+476>>2]=on,on=nn[dn+444>>2],nn[dn+120>>2]=nn[dn+440>>2],nn[dn+124>>2]=on,on=nn[dn+460>>2],nn[dn+104>>2]=nn[dn+456>>2],nn[dn+108>>2]=on,on=nn[dn+500>>2],nn[dn+464>>2]=nn[dn+496>>2],nn[dn+468>>2]=on,on=nn[dn+436>>2],nn[dn+112>>2]=nn[dn+432>>2],nn[dn+116>>2]=on,on=nn[dn+452>>2],nn[dn+96>>2]=nn[dn+448>>2],nn[dn+100>>2]=on,aA(In,dn+112|0,dn+96|0),on=nn[dn+508>>2],nn[dn+456>>2]=nn[dn+504>>2],nn[dn+460>>2]=on,on=nn[dn+428>>2],nn[dn+88>>2]=nn[dn+424>>2],nn[dn+92>>2]=on,on=nn[dn+444>>2],nn[dn+72>>2]=nn[dn+440>>2],nn[dn+76>>2]=on,on=nn[dn+500>>2],nn[dn+448>>2]=nn[dn+496>>2],nn[dn+452>>2]=on,on=nn[dn+420>>2],nn[dn+80>>2]=nn[dn+416>>2],nn[dn+84>>2]=on,on=nn[dn+436>>2],nn[dn+64>>2]=nn[dn+432>>2],nn[dn+68>>2]=on,aA(In,dn+80|0,dn- -64|0),on=nn[dn+508>>2],nn[dn+440>>2]=nn[dn+504>>2],nn[dn+444>>2]=on,on=nn[dn+412>>2],nn[dn+56>>2]=nn[dn+408>>2],nn[dn+60>>2]=on,on=nn[dn+428>>2],nn[dn+40>>2]=nn[dn+424>>2],nn[dn+44>>2]=on,on=nn[dn+500>>2],nn[dn+432>>2]=nn[dn+496>>2],nn[dn+436>>2]=on,on=nn[dn+404>>2],nn[dn+48>>2]=nn[dn+400>>2],nn[dn+52>>2]=on,on=nn[dn+420>>2],nn[dn+32>>2]=nn[dn+416>>2],nn[dn+36>>2]=on,aA(In,dn+48|0,dn+32|0),on=nn[dn+508>>2],nn[dn+424>>2]=nn[dn+504>>2],nn[dn+428>>2]=on,on=nn[dn+524>>2],nn[dn+24>>2]=nn[dn+520>>2],nn[dn+28>>2]=on,on=nn[dn+412>>2],nn[dn+8>>2]=nn[dn+408>>2],nn[dn+12>>2]=on,on=nn[dn+500>>2],nn[dn+416>>2]=nn[dn+496>>2],nn[dn+420>>2]=on,on=nn[dn+516>>2],nn[dn+16>>2]=nn[dn+512>>2],nn[dn+20>>2]=on,on=nn[dn+404>>2],nn[dn>>2]=nn[dn+400>>2],nn[dn+4>>2]=on,aA(In,dn+16|0,dn),nn[dn+412>>2]=hn^nn[dn+508>>2],nn[dn+408>>2]=Gn^nn[dn+504>>2],nn[dn+404>>2]=pn^nn[dn+500>>2],nn[dn+400>>2]=cn^nn[dn+496>>2]),pn=16,on=0,rn>>>0<16)cn=0;else for(;R(Wt+on|0,tn+on|0,dn+400|0),cn=pn,(pn=(on=pn)+16|0)>>>0<=rn>>>0;);return(In=15&rn)&&(VA((on=dn+384|0)|In,0,16-In|0),TA(on,tn+cn|0,In),R(tn=dn+512|0,on,dn+400|0),TA(Wt+cn|0,tn,In)),J(Pt,en,sn,rn,dn+400|0),mn=dn+528|0,0},function(Wt,Pt,en,tn,rn,In,sn,on,cn){Wt|=0,Pt|=0,en|=0,tn|=0,rn|=0,In|=0,sn|=0;var dn,un=0,pn=0,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0;if(mn=dn=mn-544|0,S(cn|=0,on|=0,dn+432|0),cn=0,sn>>>0<=31)on=0;else for(pn=32;d(In+cn|0,dn+432|0),cn=on=pn,(pn=on+32|0)>>>0<=sn>>>0;);if((cn=16|on)>>>0<=sn>>>0)for(pn=dn+448|0,Gn=dn+464|0,hn=dn+480|0,bn=dn+496|0,Zn=dn+512|0;An=an[0|(on=In+on|0)]|an[on+1|0]<<8|an[on+2|0]<<16|an[on+3|0]<<24,Wn=an[on+4|0]|an[on+5|0]<<8|an[on+6|0]<<16|an[on+7|0]<<24,Nn=an[on+8|0]|an[on+9|0]<<8|an[on+10|0]<<16|an[on+11|0]<<24,gn=an[on+12|0]|an[on+13|0]<<8|an[on+14|0]<<16|an[on+15|0]<<24,on=nn[Zn+12>>2],nn[dn+392>>2]=nn[Zn+8>>2],nn[dn+396>>2]=on,on=nn[Zn+4>>2],nn[dn+384>>2]=nn[Zn>>2],nn[dn+388>>2]=on,on=nn[bn+12>>2],nn[dn+376>>2]=nn[bn+8>>2],nn[dn+380>>2]=on,on=nn[bn+4>>2],nn[dn+368>>2]=nn[bn>>2],nn[dn+372>>2]=on,on=nn[Zn+12>>2],nn[dn+360>>2]=nn[Zn+8>>2],nn[dn+364>>2]=on,on=nn[Zn+4>>2],nn[dn+352>>2]=nn[Zn>>2],nn[dn+356>>2]=on,aA(on=dn+528|0,dn+368|0,dn+352|0),un=nn[dn+540>>2],nn[Zn+8>>2]=nn[dn+536>>2],nn[Zn+12>>2]=un,un=nn[dn+532>>2],nn[Zn>>2]=nn[dn+528>>2],nn[Zn+4>>2]=un,un=nn[hn+12>>2],nn[dn+344>>2]=nn[hn+8>>2],nn[dn+348>>2]=un,un=nn[hn+4>>2],nn[dn+336>>2]=nn[hn>>2],nn[dn+340>>2]=un,un=nn[bn+12>>2],nn[dn+328>>2]=nn[bn+8>>2],nn[dn+332>>2]=un,un=nn[bn+4>>2],nn[dn+320>>2]=nn[bn>>2],nn[dn+324>>2]=un,aA(on,dn+336|0,dn+320|0),un=nn[dn+540>>2],nn[bn+8>>2]=nn[dn+536>>2],nn[bn+12>>2]=un,un=nn[dn+532>>2],nn[bn>>2]=nn[dn+528>>2],nn[bn+4>>2]=un,un=nn[Gn+12>>2],nn[dn+312>>2]=nn[Gn+8>>2],nn[dn+316>>2]=un,un=nn[Gn+4>>2],nn[dn+304>>2]=nn[Gn>>2],nn[dn+308>>2]=un,un=nn[hn+12>>2],nn[dn+296>>2]=nn[hn+8>>2],nn[dn+300>>2]=un,un=nn[hn+4>>2],nn[dn+288>>2]=nn[hn>>2],nn[dn+292>>2]=un,aA(on,dn+304|0,dn+288|0),un=nn[dn+540>>2],nn[hn+8>>2]=nn[dn+536>>2],nn[hn+12>>2]=un,un=nn[dn+532>>2],nn[hn>>2]=nn[dn+528>>2],nn[hn+4>>2]=un,un=nn[pn+12>>2],nn[dn+280>>2]=nn[pn+8>>2],nn[dn+284>>2]=un,un=nn[pn+4>>2],nn[dn+272>>2]=nn[pn>>2],nn[dn+276>>2]=un,un=nn[Gn+12>>2],nn[dn+264>>2]=nn[Gn+8>>2],nn[dn+268>>2]=un,un=nn[Gn+4>>2],nn[dn+256>>2]=nn[Gn>>2],nn[dn+260>>2]=un,aA(on,dn+272|0,dn+256|0),un=nn[dn+540>>2],nn[Gn+8>>2]=nn[dn+536>>2],nn[Gn+12>>2]=un,un=nn[dn+532>>2],nn[Gn>>2]=nn[dn+528>>2],nn[Gn+4>>2]=un,un=nn[dn+444>>2],nn[dn+248>>2]=nn[dn+440>>2],nn[dn+252>>2]=un,un=nn[dn+436>>2],nn[dn+240>>2]=nn[dn+432>>2],nn[dn+244>>2]=un,un=nn[pn+12>>2],nn[dn+232>>2]=nn[pn+8>>2],nn[dn+236>>2]=un,un=nn[pn+4>>2],nn[dn+224>>2]=nn[pn>>2],nn[dn+228>>2]=un,aA(on,dn+240|0,dn+224|0),un=nn[dn+540>>2],nn[pn+8>>2]=nn[dn+536>>2],nn[pn+12>>2]=un,un=nn[dn+532>>2],nn[pn>>2]=nn[dn+528>>2],nn[pn+4>>2]=un,un=nn[dn+396>>2],nn[dn+216>>2]=nn[dn+392>>2],nn[dn+220>>2]=un,un=nn[dn+444>>2],nn[dn+200>>2]=nn[dn+440>>2],nn[dn+204>>2]=un,un=nn[dn+388>>2],nn[dn+208>>2]=nn[dn+384>>2],nn[dn+212>>2]=un,un=nn[dn+436>>2],nn[dn+192>>2]=nn[dn+432>>2],nn[dn+196>>2]=un,aA(on,dn+208|0,dn+192|0),nn[dn+444>>2]=gn^nn[dn+540>>2],nn[dn+440>>2]=nn[dn+536>>2]^Nn,nn[dn+436>>2]=nn[dn+532>>2]^Wn,nn[dn+432>>2]=nn[dn+528>>2]^An,(cn=(on=cn)+16|0)>>>0<=sn>>>0;);(cn=15&sn)&&(VA((pn=dn+416|0)|cn,0,16-cn|0),TA(pn,In+on|0,cn),cn=nn[dn+416>>2],pn=nn[dn+420>>2],Gn=nn[dn+424>>2],hn=nn[dn+428>>2],on=nn[dn+524>>2],In=nn[dn+520>>2],nn[dn+392>>2]=In,nn[dn+396>>2]=on,bn=nn[dn+508>>2],nn[dn+184>>2]=nn[dn+504>>2],nn[dn+188>>2]=bn,nn[dn+168>>2]=In,nn[dn+172>>2]=on,on=nn[dn+516>>2],In=nn[dn+512>>2],nn[dn+384>>2]=In,nn[dn+388>>2]=on,bn=nn[dn+500>>2],nn[dn+176>>2]=nn[dn+496>>2],nn[dn+180>>2]=bn,nn[dn+160>>2]=In,nn[dn+164>>2]=on,aA(In=dn+528|0,dn+176|0,dn+160|0),on=nn[dn+540>>2],nn[dn+520>>2]=nn[dn+536>>2],nn[dn+524>>2]=on,on=nn[dn+492>>2],nn[dn+152>>2]=nn[dn+488>>2],nn[dn+156>>2]=on,on=nn[dn+508>>2],nn[dn+136>>2]=nn[dn+504>>2],nn[dn+140>>2]=on,on=nn[dn+532>>2],nn[dn+512>>2]=nn[dn+528>>2],nn[dn+516>>2]=on,on=nn[dn+484>>2],nn[dn+144>>2]=nn[dn+480>>2],nn[dn+148>>2]=on,on=nn[dn+500>>2],nn[dn+128>>2]=nn[dn+496>>2],nn[dn+132>>2]=on,aA(In,dn+144|0,dn+128|0),on=nn[dn+540>>2],nn[dn+504>>2]=nn[dn+536>>2],nn[dn+508>>2]=on,on=nn[dn+476>>2],nn[dn+120>>2]=nn[dn+472>>2],nn[dn+124>>2]=on,on=nn[dn+492>>2],nn[dn+104>>2]=nn[dn+488>>2],nn[dn+108>>2]=on,on=nn[dn+532>>2],nn[dn+496>>2]=nn[dn+528>>2],nn[dn+500>>2]=on,on=nn[dn+468>>2],nn[dn+112>>2]=nn[dn+464>>2],nn[dn+116>>2]=on,on=nn[dn+484>>2],nn[dn+96>>2]=nn[dn+480>>2],nn[dn+100>>2]=on,aA(In,dn+112|0,dn+96|0),on=nn[dn+540>>2],nn[dn+488>>2]=nn[dn+536>>2],nn[dn+492>>2]=on,on=nn[dn+460>>2],nn[dn+88>>2]=nn[dn+456>>2],nn[dn+92>>2]=on,on=nn[dn+476>>2],nn[dn+72>>2]=nn[dn+472>>2],nn[dn+76>>2]=on,on=nn[dn+532>>2],nn[dn+480>>2]=nn[dn+528>>2],nn[dn+484>>2]=on,on=nn[dn+452>>2],nn[dn+80>>2]=nn[dn+448>>2],nn[dn+84>>2]=on,on=nn[dn+468>>2],nn[dn+64>>2]=nn[dn+464>>2],nn[dn+68>>2]=on,aA(In,dn+80|0,dn- -64|0),on=nn[dn+540>>2],nn[dn+472>>2]=nn[dn+536>>2],nn[dn+476>>2]=on,on=nn[dn+444>>2],nn[dn+56>>2]=nn[dn+440>>2],nn[dn+60>>2]=on,on=nn[dn+460>>2],nn[dn+40>>2]=nn[dn+456>>2],nn[dn+44>>2]=on,on=nn[dn+532>>2],nn[dn+464>>2]=nn[dn+528>>2],nn[dn+468>>2]=on,on=nn[dn+436>>2],nn[dn+48>>2]=nn[dn+432>>2],nn[dn+52>>2]=on,on=nn[dn+452>>2],nn[dn+32>>2]=nn[dn+448>>2],nn[dn+36>>2]=on,aA(In,dn+48|0,dn+32|0),on=nn[dn+540>>2],nn[dn+456>>2]=nn[dn+536>>2],nn[dn+460>>2]=on,on=nn[dn+396>>2],nn[dn+24>>2]=nn[dn+392>>2],nn[dn+28>>2]=on,on=nn[dn+444>>2],nn[dn+8>>2]=nn[dn+440>>2],nn[dn+12>>2]=on,on=nn[dn+532>>2],nn[dn+448>>2]=nn[dn+528>>2],nn[dn+452>>2]=on,on=nn[dn+388>>2],nn[dn+16>>2]=nn[dn+384>>2],nn[dn+20>>2]=on,on=nn[dn+436>>2],nn[dn>>2]=nn[dn+432>>2],nn[dn+4>>2]=on,aA(In,dn+16|0,dn),nn[dn+444>>2]=hn^nn[dn+540>>2],nn[dn+440>>2]=Gn^nn[dn+536>>2],nn[dn+436>>2]=pn^nn[dn+532>>2],nn[dn+432>>2]=cn^nn[dn+528>>2]);e:{t:{n:{l:{a:{if(Wt){if(pn=16,en>>>0<16)break a;for(cn=0;L(Wt+cn|0,Pt+cn|0,dn+432|0),cn=on=pn,(pn=on+16|0)>>>0<=en>>>0;);}else{if(cn=16,en>>>0<16)break n;for(pn=0;L(dn+528|0,Pt+pn|0,dn+432|0),pn=on=cn,(cn=on+16|0)>>>0<=en>>>0;);}if(!(cn=15&en))break e;if(Wt)break l;break t}if(on=0,!(cn=en))break e}u(Wt+on|0,Pt+on|0,cn,dn+432|0);break e}if(on=0,!(cn=en))break e}u(dn+528|0,Pt+on|0,cn,dn+432|0)}J(dn+384|0,rn,sn,en,dn+432|0),on=-1;e:{t:{if(Pt=rn-16|0){if(16==(0|Pt))break t;break e}on=rA(dn+384|0,tn);break e}on=UA(dn+384|0,tn)}return!Wt|!on||VA(Wt,0,en),mn=dn+544|0,0|on},function(Wt,Pt,en,tn,rn){var In;return Wt|=0,tn|=0,rn|=0,mn=In=mn+-64|0,(Pt|=0)|(en|=0)&&(nn[In+8>>2]=2036477234,nn[In+12>>2]=1797285236,nn[In>>2]=1634760805,nn[In+4>>2]=857760878,nn[In+16>>2]=an[0|rn]|an[rn+1|0]<<8|an[rn+2|0]<<16|an[rn+3|0]<<24,nn[In+20>>2]=an[rn+4|0]|an[rn+5|0]<<8|an[rn+6|0]<<16|an[rn+7|0]<<24,nn[In+24>>2]=an[rn+8|0]|an[rn+9|0]<<8|an[rn+10|0]<<16|an[rn+11|0]<<24,nn[In+28>>2]=an[rn+12|0]|an[rn+13|0]<<8|an[rn+14|0]<<16|an[rn+15|0]<<24,nn[In+32>>2]=an[rn+16|0]|an[rn+17|0]<<8|an[rn+18|0]<<16|an[rn+19|0]<<24,nn[In+36>>2]=an[rn+20|0]|an[rn+21|0]<<8|an[rn+22|0]<<16|an[rn+23|0]<<24,nn[In+40>>2]=an[rn+24|0]|an[rn+25|0]<<8|an[rn+26|0]<<16|an[rn+27|0]<<24,rn=an[rn+28|0]|an[rn+29|0]<<8|an[rn+30|0]<<16|an[rn+31|0]<<24,nn[In+48>>2]=0,nn[In+52>>2]=0,nn[In+44>>2]=rn,nn[In+56>>2]=an[0|tn]|an[tn+1|0]<<8|an[tn+2|0]<<16|an[tn+3|0]<<24,nn[In+60>>2]=an[tn+4|0]|an[tn+5|0]<<8|an[tn+6|0]<<16|an[tn+7|0]<<24,P(In,Wt=VA(Wt,0,Pt),Wt,Pt,en),MI(In,64)),mn=In- -64|0,0},function(Wt,Pt,en,tn,rn){var In;return Wt|=0,tn|=0,rn|=0,mn=In=mn+-64|0,(Pt|=0)|(en|=0)&&(nn[In+8>>2]=2036477234,nn[In+12>>2]=1797285236,nn[In>>2]=1634760805,nn[In+4>>2]=857760878,nn[In+16>>2]=an[0|rn]|an[rn+1|0]<<8|an[rn+2|0]<<16|an[rn+3|0]<<24,nn[In+20>>2]=an[rn+4|0]|an[rn+5|0]<<8|an[rn+6|0]<<16|an[rn+7|0]<<24,nn[In+24>>2]=an[rn+8|0]|an[rn+9|0]<<8|an[rn+10|0]<<16|an[rn+11|0]<<24,nn[In+28>>2]=an[rn+12|0]|an[rn+13|0]<<8|an[rn+14|0]<<16|an[rn+15|0]<<24,nn[In+32>>2]=an[rn+16|0]|an[rn+17|0]<<8|an[rn+18|0]<<16|an[rn+19|0]<<24,nn[In+36>>2]=an[rn+20|0]|an[rn+21|0]<<8|an[rn+22|0]<<16|an[rn+23|0]<<24,nn[In+40>>2]=an[rn+24|0]|an[rn+25|0]<<8|an[rn+26|0]<<16|an[rn+27|0]<<24,rn=an[rn+28|0]|an[rn+29|0]<<8|an[rn+30|0]<<16|an[rn+31|0]<<24,nn[In+48>>2]=0,nn[In+44>>2]=rn,nn[In+52>>2]=an[0|tn]|an[tn+1|0]<<8|an[tn+2|0]<<16|an[tn+3|0]<<24,nn[In+56>>2]=an[tn+4|0]|an[tn+5|0]<<8|an[tn+6|0]<<16|an[tn+7|0]<<24,nn[In+60>>2]=an[tn+8|0]|an[tn+9|0]<<8|an[tn+10|0]<<16|an[tn+11|0]<<24,P(In,Wt=VA(Wt,0,Pt),Wt,Pt,en),MI(In,64)),mn=In- -64|0,0},function(Wt,Pt,en,tn,rn,In,sn,on){var cn;return Wt|=0,Pt|=0,rn|=0,In|=0,sn|=0,on|=0,mn=cn=mn+-64|0,(en|=0)|(tn|=0)&&(nn[cn+8>>2]=2036477234,nn[cn+12>>2]=1797285236,nn[cn>>2]=1634760805,nn[cn+4>>2]=857760878,nn[cn+16>>2]=an[0|on]|an[on+1|0]<<8|an[on+2|0]<<16|an[on+3|0]<<24,nn[cn+20>>2]=an[on+4|0]|an[on+5|0]<<8|an[on+6|0]<<16|an[on+7|0]<<24,nn[cn+24>>2]=an[on+8|0]|an[on+9|0]<<8|an[on+10|0]<<16|an[on+11|0]<<24,nn[cn+28>>2]=an[on+12|0]|an[on+13|0]<<8|an[on+14|0]<<16|an[on+15|0]<<24,nn[cn+32>>2]=an[on+16|0]|an[on+17|0]<<8|an[on+18|0]<<16|an[on+19|0]<<24,nn[cn+36>>2]=an[on+20|0]|an[on+21|0]<<8|an[on+22|0]<<16|an[on+23|0]<<24,nn[cn+40>>2]=an[on+24|0]|an[on+25|0]<<8|an[on+26|0]<<16|an[on+27|0]<<24,nn[cn+44>>2]=an[on+28|0]|an[on+29|0]<<8|an[on+30|0]<<16|an[on+31|0]<<24,nn[cn+48>>2]=In,nn[cn+52>>2]=sn,nn[cn+56>>2]=an[0|rn]|an[rn+1|0]<<8|an[rn+2|0]<<16|an[rn+3|0]<<24,nn[cn+60>>2]=an[rn+4|0]|an[rn+5|0]<<8|an[rn+6|0]<<16|an[rn+7|0]<<24,P(cn,Pt,Wt,en,tn),MI(cn,64)),mn=cn- -64|0,0},function(Wt,Pt,en,tn,rn,In,sn){var on;return Wt|=0,Pt|=0,rn|=0,In|=0,sn|=0,mn=on=mn+-64|0,(en|=0)|(tn|=0)&&(nn[on+8>>2]=2036477234,nn[on+12>>2]=1797285236,nn[on>>2]=1634760805,nn[on+4>>2]=857760878,nn[on+16>>2]=an[0|sn]|an[sn+1|0]<<8|an[sn+2|0]<<16|an[sn+3|0]<<24,nn[on+20>>2]=an[sn+4|0]|an[sn+5|0]<<8|an[sn+6|0]<<16|an[sn+7|0]<<24,nn[on+24>>2]=an[sn+8|0]|an[sn+9|0]<<8|an[sn+10|0]<<16|an[sn+11|0]<<24,nn[on+28>>2]=an[sn+12|0]|an[sn+13|0]<<8|an[sn+14|0]<<16|an[sn+15|0]<<24,nn[on+32>>2]=an[sn+16|0]|an[sn+17|0]<<8|an[sn+18|0]<<16|an[sn+19|0]<<24,nn[on+36>>2]=an[sn+20|0]|an[sn+21|0]<<8|an[sn+22|0]<<16|an[sn+23|0]<<24,nn[on+40>>2]=an[sn+24|0]|an[sn+25|0]<<8|an[sn+26|0]<<16|an[sn+27|0]<<24,sn=an[sn+28|0]|an[sn+29|0]<<8|an[sn+30|0]<<16|an[sn+31|0]<<24,nn[on+48>>2]=In,nn[on+44>>2]=sn,nn[on+52>>2]=an[0|rn]|an[rn+1|0]<<8|an[rn+2|0]<<16|an[rn+3|0]<<24,nn[on+56>>2]=an[rn+4|0]|an[rn+5|0]<<8|an[rn+6|0]<<16|an[rn+7|0]<<24,nn[on+60>>2]=an[rn+8|0]|an[rn+9|0]<<8|an[rn+10|0]<<16|an[rn+11|0]<<24,P(on,Pt,Wt,en,tn),MI(on,64)),mn=on- -64|0,0}],Gn.grow=function(Wt){var Pt=this.length;return this.length=this.length+Wt,Pt},Gn.set=function(Wt,Pt){this[Wt]=Pt},Gn.get=function(Wt){return this[Wt]},Gn);function RI(){return en.byteLength/65536|0}return{e:Object.create(Object.prototype,{grow:{value:function(Wt){Wt|=0;var sn=0|RI(),on=sn+Wt|0;if(sn>>0<4294967280?(JA(Wt,Wt+tn|0,0,en|=0,tn,an,rn|=0,In,sn|=0,cn|=0,dn|=0),Pt&&(an=(Wt=tn+16|0)>>>0<16?an+1|0:an,nn[Pt>>2]=Wt,nn[Pt+4>>2]=an)):(iI(),Q()),0},D:function(Wt,Pt,en,tn,nn,an,rn,In,sn,on,cn,dn){return 0|HA(Wt|=0,Pt|=0,en|=0,tn|=0,(Wt=0)|(nn|=0),an|=0,rn|=0,Wt|(In|=0),sn|=0,cn|=0,dn|=0)},E:function(Wt,Pt,en,tn,an,rn,In,sn,on,cn,dn){return Wt|=0,Pt|=0,tn|=0,In|=0,on|=0,In|=on=0,!(an|=0)&(tn|=on)>>>0<4294967280?(HA(Wt,Wt+tn|0,0,en|=0,tn,an,rn|=0,In,sn|=0,cn|=0,dn|=0),Pt&&(an=(Wt=tn+16|0)>>>0<16?an+1|0:an,nn[Pt>>2]=Wt,nn[Pt+4>>2]=an)):(iI(),Q()),0},F:function(Wt,Pt,en,tn,nn,an,rn,In,sn,on,cn){return 0|GA(Wt|=0,en|=0,(Wt=0)|(tn|=0),nn|=0,an|=0,rn|=0,Wt|(In|=0),sn|=0,on|=0,cn|=0)},G:function(Wt,Pt,en,tn,an,rn,In,sn,on,cn,dn){return Pt|=0,en|=0,tn|=0,an|=0,sn|=0,sn|=0,en=-1,!(rn|=0)&(an|=0)>>>0>=16|rn&&(en=GA(Wt|=0,tn,an-16|0,rn-(an>>>0<16)|0,(tn+an|0)-16|0,In|=0,sn,on|=0,cn|=0,dn|=0)),Pt&&(nn[Pt>>2]=en?0:an-16|0,nn[Pt+4>>2]=en?0:rn-(an>>>0<16)|0),0|en},H:function(Wt,Pt,en,tn,nn,an,rn,In,sn,on,cn){return 0|pA(Wt|=0,en|=0,(Wt=0)|(tn|=0),nn|=0,an|=0,rn|=0,Wt|(In|=0),sn|=0,on|=0,cn|=0)},I:function(Wt,Pt,en,tn,an,rn,In,sn,on,cn,dn){return Pt|=0,en|=0,tn|=0,an|=0,sn|=0,sn|=0,en=-1,!(rn|=0)&(an|=0)>>>0>=16|rn&&(en=pA(Wt|=0,tn,an-16|0,rn-(an>>>0<16)|0,(tn+an|0)-16|0,In|=0,sn,on|=0,cn|=0,dn|=0)),Pt&&(nn[Pt>>2]=en?0:an-16|0,nn[Pt+4>>2]=en?0:rn-(an>>>0<16)|0),0|en},J:_I,K:function(){return 12},L:YI,M:KI,N:HI,O:FI,P:_I,Q:UI,R:YI,S:KI,T:HI,U:FI,V:function(Wt,Pt,en,tn,nn,an,rn,In,sn,on,cn,dn){return 0|sA(Wt|=0,Pt|=0,en|=0,tn|=0,(Wt=0)|(nn|=0),an|=0,rn|=0,Wt|(In|=0),sn|=0,cn|=0,dn|=0)},W:function(Wt,Pt,en,tn,an,rn,In,sn,on,cn,dn){return Wt|=0,Pt|=0,tn|=0,In|=0,on|=0,In|=on=0,!(an|=0)&(tn|=on)>>>0<4294967280?(sA(Wt,Wt+tn|0,0,en|=0,tn,an,rn|=0,In,sn|=0,cn|=0,dn|=0),Pt&&(an=(Wt=tn+16|0)>>>0<16?an+1|0:an,nn[Pt>>2]=Wt,nn[Pt+4>>2]=an)):(iI(),Q()),0},X:function(Wt,Pt,en,tn,nn,an,rn,In,sn,on,cn){return 0|nA(Wt|=0,en|=0,(Wt=0)|(tn|=0),nn|=0,an|=0,rn|=0,Wt|(In|=0),sn|=0,on|=0,cn|=0)},Y:function(Wt,Pt,en,tn,an,rn,In,sn,on,cn,dn){return Pt|=0,en|=0,tn|=0,an|=0,sn|=0,sn|=0,en=-1,!(rn|=0)&(an|=0)>>>0>=16|rn&&(en=nA(Wt|=0,tn,an-16|0,rn-(an>>>0<16)|0,(tn+an|0)-16|0,In|=0,sn,on|=0,cn|=0,dn|=0)),Pt&&(nn[Pt>>2]=en?0:an-16|0,nn[Pt+4>>2]=en?0:rn-(an>>>0<16)|0),0|en},Z:_I,_:pI,$:YI,aa:KI,ba:HI,ca:FI,da:_I,ea:_I,fa:function(Wt,Pt,en,an,rn){var In;return Wt|=0,Pt|=0,en|=0,an|=0,mn=In=mn-480|0,wA(In,rn|=0,32),tI(In,Pt,en,an),WA(In,In+416|0),Pt=nn[In+444>>2],en=nn[In+440>>2],tn[Wt+24|0]=en,tn[Wt+25|0]=en>>>8,tn[Wt+26|0]=en>>>16,tn[Wt+27|0]=en>>>24,tn[Wt+28|0]=Pt,tn[Wt+29|0]=Pt>>>8,tn[Wt+30|0]=Pt>>>16,tn[Wt+31|0]=Pt>>>24,Pt=nn[In+436>>2],en=nn[In+432>>2],tn[Wt+16|0]=en,tn[Wt+17|0]=en>>>8,tn[Wt+18|0]=en>>>16,tn[Wt+19|0]=en>>>24,tn[Wt+20|0]=Pt,tn[Wt+21|0]=Pt>>>8,tn[Wt+22|0]=Pt>>>16,tn[Wt+23|0]=Pt>>>24,Pt=nn[In+428>>2],en=nn[In+424>>2],tn[Wt+8|0]=en,tn[Wt+9|0]=en>>>8,tn[Wt+10|0]=en>>>16,tn[Wt+11|0]=en>>>24,tn[Wt+12|0]=Pt,tn[Wt+13|0]=Pt>>>8,tn[Wt+14|0]=Pt>>>16,tn[Wt+15|0]=Pt>>>24,Pt=nn[In+420>>2],en=nn[In+416>>2],tn[0|Wt]=en,tn[Wt+1|0]=en>>>8,tn[Wt+2|0]=en>>>16,tn[Wt+3|0]=en>>>24,tn[Wt+4|0]=Pt,tn[Wt+5|0]=Pt>>>8,tn[Wt+6|0]=Pt>>>16,tn[Wt+7|0]=Pt>>>24,mn=In+480|0,0},ga:function(Wt,Pt,en,tn,an){var rn,In;return Wt|=0,Pt|=0,en|=0,tn|=0,mn=rn=mn-512|0,wA(In=rn+32|0,an|=0,32),tI(In,Pt,en,tn),WA(In,rn+448|0),Pt=nn[rn+476>>2],nn[rn+24>>2]=nn[rn+472>>2],nn[rn+28>>2]=Pt,Pt=nn[rn+468>>2],nn[rn+16>>2]=nn[rn+464>>2],nn[rn+20>>2]=Pt,Pt=nn[rn+460>>2],nn[rn+8>>2]=nn[rn+456>>2],nn[rn+12>>2]=Pt,Pt=nn[rn+452>>2],nn[rn>>2]=nn[rn+448>>2],nn[rn+4>>2]=Pt,Pt=UA(Wt,rn),en=NA(rn,Wt,32),mn=rn+512|0,((0|Wt)==(0|rn)?-1:Pt)|en},ha:FI,ia:_I,ja:_I,ka:_I,la:_I,ma:pI,na:KI,oa:HI,pa:function(Wt,Pt,en){Wt|=0,Pt|=0;var an,rn=0;return mn=an=mn+-64|0,FA(an,en|=0,32,0),en=nn[an+28>>2],rn=nn[an+24>>2],tn[Pt+24|0]=rn,tn[Pt+25|0]=rn>>>8,tn[Pt+26|0]=rn>>>16,tn[Pt+27|0]=rn>>>24,tn[Pt+28|0]=en,tn[Pt+29|0]=en>>>8,tn[Pt+30|0]=en>>>16,tn[Pt+31|0]=en>>>24,en=nn[an+20>>2],rn=nn[an+16>>2],tn[Pt+16|0]=rn,tn[Pt+17|0]=rn>>>8,tn[Pt+18|0]=rn>>>16,tn[Pt+19|0]=rn>>>24,tn[Pt+20|0]=en,tn[Pt+21|0]=en>>>8,tn[Pt+22|0]=en>>>16,tn[Pt+23|0]=en>>>24,en=nn[an+12>>2],rn=nn[an+8>>2],tn[Pt+8|0]=rn,tn[Pt+9|0]=rn>>>8,tn[Pt+10|0]=rn>>>16,tn[Pt+11|0]=rn>>>24,tn[Pt+12|0]=en,tn[Pt+13|0]=en>>>8,tn[Pt+14|0]=en>>>16,tn[Pt+15|0]=en>>>24,en=nn[an+4>>2],rn=nn[an>>2],tn[0|Pt]=rn,tn[Pt+1|0]=rn>>>8,tn[Pt+2|0]=rn>>>16,tn[Pt+3|0]=rn>>>24,tn[Pt+4|0]=en,tn[Pt+5|0]=en>>>8,tn[Pt+6|0]=en>>>16,tn[Pt+7|0]=en>>>24,MI(an,64),Wt=hI(Wt,Pt),mn=an- -64|0,0|Wt},qa:cI,ra:OA,sa:$A,ta:function(Wt,Pt,en,tn,nn,an,rn,In){Wt|=0,Pt|=0,en|=0,an|=0;var sn,on=0;return on=tn|=0,tn=nn|=0,sn=0|on,mn=on=mn-32|0,nn=-1,OA(on,rn|=0,In|=0)||(nn=tA(Wt,Pt,en,sn,tn,an,on),MI(on,32)),mn=on+32|0,0|nn},ua:function(Wt,Pt,en,tn,nn,an){return Wt|=0,Pt|=0,nn|=0,an|=0,!(tn|=0)&(en|=0)>>>0>=4294967280|tn&&(iI(),Q()),0|tA(Wt+16|0,Wt,Pt,en,tn,nn,an)},va:function(Wt,Pt,en,tn,nn,an,rn){return 0|zA(Wt|=0,Pt|=0,en|=0,tn|=0,nn|=0,an|=0,rn|=0)},wa:AI,xa:function(Wt,Pt,en,tn,nn,an,rn,In){Wt|=0,Pt|=0,en|=0,an|=0;var sn,on=0;return on=tn|=0,tn=nn|=0,sn=0|on,mn=on=mn-32|0,nn=-1,OA(on,rn|=0,In|=0)||(nn=kA(Wt,Pt,en,sn,tn,an,on),MI(on,32)),mn=on+32|0,0|nn},ya:jA,za:function(Wt,Pt,en,tn,nn,an,rn){return 0|xA(Wt|=0,Pt|=0,en|=0,tn|=0,nn|=0,an|=0,rn|=0)},Aa:function(Wt,Pt,en,an,rn){Wt|=0,Pt|=0,rn|=0;var In,sn,on,cn,dn=0,un=0;return dn=en|=0,en=an|=0,cn=0|dn,dn=an=mn,mn=In=an-512&-64,an=-1,cI(sn=In- -64|0,on=In+32|0)||(j(an=In+128|0,0,0,24),cA(an,sn,32,0),cA(an,rn,32,0),ZA(an,un=In+96|0,24),an=zA(Wt+32|0,Pt,cn,en,un,rn,on),Pt=nn[In+92>>2],en=nn[In+88>>2],tn[Wt+24|0]=en,tn[Wt+25|0]=en>>>8,tn[Wt+26|0]=en>>>16,tn[Wt+27|0]=en>>>24,tn[Wt+28|0]=Pt,tn[Wt+29|0]=Pt>>>8,tn[Wt+30|0]=Pt>>>16,tn[Wt+31|0]=Pt>>>24,Pt=nn[In+84>>2],en=nn[In+80>>2],tn[Wt+16|0]=en,tn[Wt+17|0]=en>>>8,tn[Wt+18|0]=en>>>16,tn[Wt+19|0]=en>>>24,tn[Wt+20|0]=Pt,tn[Wt+21|0]=Pt>>>8,tn[Wt+22|0]=Pt>>>16,tn[Wt+23|0]=Pt>>>24,Pt=nn[In+76>>2],en=nn[In+72>>2],tn[Wt+8|0]=en,tn[Wt+9|0]=en>>>8,tn[Wt+10|0]=en>>>16,tn[Wt+11|0]=en>>>24,tn[Wt+12|0]=Pt,tn[Wt+13|0]=Pt>>>8,tn[Wt+14|0]=Pt>>>16,tn[Wt+15|0]=Pt>>>24,Pt=nn[In+68>>2],en=nn[In+64>>2],tn[0|Wt]=en,tn[Wt+1|0]=en>>>8,tn[Wt+2|0]=en>>>16,tn[Wt+3|0]=en>>>24,tn[Wt+4|0]=Pt,tn[Wt+5|0]=Pt>>>8,tn[Wt+6|0]=Pt>>>16,tn[Wt+7|0]=Pt>>>24,MI(on,32),MI(sn,32),MI(un,24)),mn=dn,0|an},Ba:function(Wt,Pt,en,tn,nn,an){Wt|=0,Pt|=0,nn|=0,an|=0;var rn,In,sn=0;return In=sn=mn,mn=rn=sn-448&-64,sn=-1,!(tn|=0)&(en|=0)>>>0>=48|tn&&(j(sn=rn- -64|0,0,0,24),cA(sn,Pt,32,0),cA(sn,nn,32,0),ZA(sn,nn=rn+32|0,24),sn=xA(Wt,Pt+32|0,en-32|0,tn-(en>>>0<32)|0,nn,Pt,an)),mn=In,0|sn},Ca:function(){return 48},Da:KI,Ea:JI,Fa:_I,Ga:KI,Ha:JI,Ia:_I,Ja:function(){return 384},Ka:function(Wt,Pt,en,tn,nn,an,rn){return 0|CA(Wt|=0,Pt|=0,en|=0,tn|=0,nn|=0,an|=0,rn|=0)},La:j,Ma:function(Wt,Pt,en,tn){return 0|cA(Wt|=0,Pt|=0,en|=0,tn|=0)},Na:ZA,Oa:FI,Pa:JI,Qa:function(Wt,Pt,en,tn){return 0|FA(Wt|=0,Pt|=0,en|=0,tn|=0)},Ra:KI,Sa:JI,Ta:UI,Ua:_I,Va:function(Wt,Pt,en,tn,rn,In){Wt|=0,Pt|=0,en|=0,tn|=0,In|=0;var sn,on=0,cn=0,dn=0,un=0,pn=0,bn=0,Gn=0;return mn=sn=mn-32|0,on=an[0|(rn|=0)]|an[rn+1|0]<<8|an[rn+2|0]<<16|an[rn+3|0]<<24,rn=an[rn+4|0]|an[rn+5|0]<<8|an[rn+6|0]<<16|an[rn+7|0]<<24,nn[sn+24>>2]=0,nn[sn+28>>2]=0,nn[sn+16>>2]=on,nn[sn+20>>2]=rn,nn[sn+8>>2]=0,nn[sn+12>>2]=0,nn[(rn=sn)>>2]=en,nn[rn+4>>2]=tn,Pt-65>>>0<=4294967246?(nn[9280]=28,Wt=-1):Pt-65>>>0<4294967232?Wt=-1:(mn=rn=(dn=mn)-512&-64,!In|!Wt|((cn=255&Pt)-65&255)>>>0<=191?(iI(),Q()):(tn=sn+16|0,sn?(un=725511199^(an[sn+8|0]|an[sn+9|0]<<8|an[sn+10|0]<<16|an[sn+11|0]<<24),pn=-1694144372^(an[sn+12|0]|an[sn+13|0]<<8|an[sn+14|0]<<16|an[sn+15|0]<<24),en=-1377402159^(an[0|sn]|an[sn+1|0]<<8|an[sn+2|0]<<16|an[sn+3|0]<<24),Pt=1359893119^(an[sn+4|0]|an[sn+5|0]<<8|an[sn+6|0]<<16|an[sn+7|0]<<24)):(un=725511199,pn=-1694144372,en=-1377402159,Pt=1359893119),tn?(bn=327033209^(an[tn+8|0]|an[tn+9|0]<<8|an[tn+10|0]<<16|an[tn+11|0]<<24),Gn=1541459225^(an[tn+12|0]|an[tn+13|0]<<8|an[tn+14|0]<<16|an[tn+15|0]<<24),on=-79577749^(an[0|tn]|an[tn+1|0]<<8|an[tn+2|0]<<16|an[tn+3|0]<<24),tn=528734635^(an[tn+4|0]|an[tn+5|0]<<8|an[tn+6|0]<<16|an[tn+7|0]<<24)):(bn=327033209,Gn=1541459225,on=-79577749,tn=528734635),VA(rn- -64|0,0,293),nn[rn+56>>2]=bn,nn[rn+60>>2]=Gn,nn[rn+48>>2]=on,nn[rn+52>>2]=tn,nn[rn+40>>2]=un,nn[rn+44>>2]=pn,nn[rn+32>>2]=en,nn[rn+36>>2]=Pt,nn[rn+24>>2]=1595750129,nn[rn+28>>2]=-1521486534,nn[rn+16>>2]=-23791573,nn[rn+20>>2]=1013904242,nn[rn+8>>2]=-2067093701,nn[rn+12>>2]=-1150833019,nn[rn>>2]=-222443256^(8192|cn),nn[rn+4>>2]=1779033703,VA(32+(Pt=rn+384|0)|0,0,96),TA(Pt,In,32),TA(rn+96|0,Pt,128),nn[rn+352>>2]=128,MI(Pt,128),m(rn,Wt,cn),mn=dn),Wt=0),mn=sn+32|0,0|Wt},Wa:FI,Xa:function(Wt,Pt,en){return 0|gA(Wt|=0,Pt|=0,en|=0)},Ya:function(Wt,Pt,en){return 0|kI(Wt|=0,Pt|=0,en|=0)},Za:function(Wt,Pt){return II(Wt|=0,Pt|=0),MI(Wt,4),0},_a:function(Wt,Pt,en,tn,nn){var an;return Wt|=0,tn|=0,nn|=0,mn=an=mn-208|0,gA(an,Pt|=0,en|=0),kI(an,tn,nn),II(an,Wt),MI(an,4),mn=an+208|0,0},$a:FI,ab:function(Wt,Pt,en,rn,In){Wt|=0,Pt|=0,en|=0,rn|=0,In|=0;var sn,on=0,cn=0,dn=0,un=0;if(mn=sn=mn-256|0,tn[sn+15|0]=1,Pt>>>0<=8160){if(Pt>>>0>=32)for(un=Wt-32|0,on=32;dn=on,gA(on=sn+48|0,In,32),cn&&kI(on,cn+un|0,32),kI(on=sn+48|0,en,rn),kI(on,sn+15|0,1),II(on,Wt+cn|0),tn[sn+15|0]=an[sn+15|0]+1,(on=(cn=dn)+32|0)>>>0<=Pt>>>0;);(cn=31&Pt)&&(gA(Pt=sn+48|0,In,32),dn&&kI(Pt,(Wt+dn|0)-32|0,32),kI(Pt=sn+48|0,en,rn),kI(Pt,sn+15|0,1),II(en=Pt,Pt=sn+16|0),TA(Wt+dn|0,Pt,cn),MI(Pt,32)),MI(sn+48|0,208),Wt=0}else nn[9280]=28,Wt=-1;return mn=sn+256|0,0|Wt},bb:_I,cb:YI,db:function(){return 8160},eb:NI,fb:function(Wt,Pt,en){return 0|wA(Wt|=0,Pt|=0,en|=0)},gb:function(Wt,Pt,en){return 0|tI(Wt|=0,Pt|=0,en|=0,0)},hb:function(Wt,Pt){return WA(Wt|=0,Pt|=0),MI(Wt,4),0},ib:function(Wt,Pt,en,tn,nn){var an;return Wt|=0,tn|=0,nn|=0,mn=an=mn-416|0,wA(an,Pt|=0,en|=0),tI(an,tn,nn,0),WA(an,Wt),MI(an,4),mn=an+416|0,0},jb:function(Wt){LA(Wt|=0,64)},kb:function(Wt,Pt,en,rn,In){Wt|=0,Pt|=0,en|=0,rn|=0,In|=0;var sn,on=0,cn=0,dn=0,un=0;if(mn=sn=mn-496|0,tn[sn+15|0]=1,Pt>>>0<=16320){if(Pt>>>0>=64)for(un=Wt+-64|0,on=64;dn=on,wA(on=sn+80|0,In,64),cn&&tI(on,cn+un|0,64,0),tI(on=sn+80|0,en,rn,0),tI(on,sn+15|0,1,0),WA(on,Wt+cn|0),tn[sn+15|0]=an[sn+15|0]+1,(on=(cn=dn)- -64|0)>>>0<=Pt>>>0;);(cn=63&Pt)&&(wA(Pt=sn+80|0,In,64),dn&&tI(Pt,(Wt+dn|0)-64|0,64,0),tI(Pt=sn+80|0,en,rn,0),tI(Pt,sn+15|0,1,0),WA(en=Pt,Pt=sn+16|0),TA(Wt+dn|0,Pt,cn),MI(Pt,64)),MI(sn+80|0,416),Wt=0}else nn[9280]=28,Wt=-1;return mn=sn+496|0,0|Wt},lb:JI,mb:YI,nb:function(){return 16320},ob:function(){return 416},pb:function(Wt,Pt,en){return Wt|=0,CA(Pt|=0,32,en|=0,32,0,0,0),0|fI(Wt,Pt)},qb:function(Wt,Pt){return Wt|=0,LA(Pt|=0,32),0|fI(Wt,Pt)},rb:function(Wt,Pt,en,nn,rn){Pt|=0,en|=0,nn|=0,rn|=0;var In,sn,on=0,cn=0,dn=0;if(sn=on=mn,mn=on=on-512&-64,In=(Wt|=0)||Pt){if(dn=-1,!EI(cn=on+96|0,nn,rn)){for(nn=Pt||Wt,Wt=0,j(Pt=on+128|0,0,0,64),cA(Pt,cn,32,0),MI(cn,32),cA(Pt,en,32,0),cA(Pt,rn,32,0),ZA(Pt,on+32|0,64),MI(Pt,384);en=(Pt=on+32|0)+Wt|0,tn[Wt+In|0]=an[0|en],tn[Wt+nn|0]=an[en+32|0],tn[(en=1|Wt)+In|0]=an[Pt+en|0],tn[en+nn|0]=an[Pt+(33|Wt)|0],32!=(0|(Wt=Wt+2|0)););MI(Pt,64),dn=0}return mn=sn,0|dn}iI(),Q()},sb:function(Wt,Pt,en,nn,rn){Pt|=0,en|=0,nn|=0,rn|=0;var In,sn,on=0,cn=0,dn=0;if(sn=on=mn,mn=on=on-512&-64,In=(Wt|=0)||Pt){if(dn=-1,!EI(cn=on+96|0,nn,rn)){for(nn=Pt||Wt,Wt=0,j(Pt=on+128|0,0,0,64),cA(Pt,cn,32,0),MI(cn,32),cA(Pt,rn,32,0),cA(Pt,en,32,0),ZA(Pt,on+32|0,64),MI(Pt,384);en=(Pt=on+32|0)+Wt|0,tn[Wt+nn|0]=an[0|en],tn[Wt+In|0]=an[en+32|0],tn[(en=1|Wt)+nn|0]=an[Pt+en|0],tn[en+In|0]=an[Pt+(33|Wt)|0],32!=(0|(Wt=Wt+2|0)););MI(Pt,64),dn=0}return mn=sn,0|dn}iI(),Q()},tb:_I,ub:_I,vb:_I,wb:_I,xb:fI,yb:EI,zb:_I,Ab:_I,Bb:_I,Cb:pI,Db:KI,Eb:HI,Fb:FI,Gb:$A,Hb:function(Wt,Pt,en,tn,nn,an){return Wt|=0,Pt|=0,nn|=0,an|=0,!(tn|=0)&(en|=0)>>>0>=4294967280|tn&&(iI(),Q()),tA(Wt+16|0,Wt,Pt,en,tn,nn,an),0},Ib:AI,Jb:jA,Kb:FI,Lb:function(Wt,Pt,en){return Wt|=0,en|=0,LA(Pt|=0,24),$(Wt,Pt,en),tn[Wt+32|0]=1,tn[Wt+33|0]=0,tn[Wt+34|0]=0,tn[Wt+35|0]=0,en=an[Pt+16|0]|an[Pt+17|0]<<8|an[Pt+18|0]<<16|an[Pt+19|0]<<24,Pt=an[Pt+20|0]|an[Pt+21|0]<<8|an[Pt+22|0]<<16|an[Pt+23|0]<<24,tn[Wt+44|0]=0,tn[Wt+45|0]=0,tn[Wt+46|0]=0,tn[Wt+47|0]=0,tn[Wt+48|0]=0,tn[Wt+49|0]=0,tn[Wt+50|0]=0,tn[Wt+51|0]=0,tn[Wt+36|0]=en,tn[Wt+37|0]=en>>>8,tn[Wt+38|0]=en>>>16,tn[Wt+39|0]=en>>>24,tn[Wt+40|0]=Pt,tn[Wt+41|0]=Pt>>>8,tn[Wt+42|0]=Pt>>>16,tn[Wt+43|0]=Pt>>>24,0},Mb:function(Wt,Pt,en){return $(Wt|=0,Pt|=0,en|=0),tn[Wt+32|0]=1,tn[Wt+33|0]=0,tn[Wt+34|0]=0,tn[Wt+35|0]=0,en=an[Pt+16|0]|an[Pt+17|0]<<8|an[Pt+18|0]<<16|an[Pt+19|0]<<24,Pt=an[Pt+20|0]|an[Pt+21|0]<<8|an[Pt+22|0]<<16|an[Pt+23|0]<<24,tn[Wt+44|0]=0,tn[Wt+45|0]=0,tn[Wt+46|0]=0,tn[Wt+47|0]=0,tn[Wt+48|0]=0,tn[Wt+49|0]=0,tn[Wt+50|0]=0,tn[Wt+51|0]=0,tn[Wt+36|0]=en,tn[Wt+37|0]=en>>>8,tn[Wt+38|0]=en>>>16,tn[Wt+39|0]=en>>>24,tn[Wt+40|0]=Pt,tn[Wt+41|0]=Pt>>>8,tn[Wt+42|0]=Pt>>>16,tn[Wt+43|0]=Pt>>>24,0},Nb:function(Wt){var Pt,en=0,rn=0;mn=Pt=mn-48|0,en=an[28+(Wt|=0)|0]|an[Wt+29|0]<<8|an[Wt+30|0]<<16|an[Wt+31|0]<<24,nn[Pt+24>>2]=an[Wt+24|0]|an[Wt+25|0]<<8|an[Wt+26|0]<<16|an[Wt+27|0]<<24,nn[Pt+28>>2]=en,en=an[Wt+20|0]|an[Wt+21|0]<<8|an[Wt+22|0]<<16|an[Wt+23|0]<<24,nn[Pt+16>>2]=an[Wt+16|0]|an[Wt+17|0]<<8|an[Wt+18|0]<<16|an[Wt+19|0]<<24,nn[Pt+20>>2]=en,en=an[Wt+4|0]|an[Wt+5|0]<<8|an[Wt+6|0]<<16|an[Wt+7|0]<<24,nn[Pt>>2]=an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24,nn[Pt+4>>2]=en,en=an[Wt+12|0]|an[Wt+13|0]<<8|an[Wt+14|0]<<16|an[Wt+15|0]<<24,nn[Pt+8>>2]=an[Wt+8|0]|an[Wt+9|0]<<8|an[Wt+10|0]<<16|an[Wt+11|0]<<24,nn[Pt+12>>2]=en,en=an[Wt+40|0]|an[Wt+41|0]<<8|an[Wt+42|0]<<16|an[Wt+43|0]<<24,nn[Pt+32>>2]=an[Wt+36|0]|an[Wt+37|0]<<8|an[Wt+38|0]<<16|an[Wt+39|0]<<24,nn[Pt+36>>2]=en,yI(Pt,Pt,Wt+32|0,Wt),en=nn[Pt+28>>2],rn=nn[Pt+24>>2],tn[Wt+24|0]=rn,tn[Wt+25|0]=rn>>>8,tn[Wt+26|0]=rn>>>16,tn[Wt+27|0]=rn>>>24,tn[Wt+28|0]=en,tn[Wt+29|0]=en>>>8,tn[Wt+30|0]=en>>>16,tn[Wt+31|0]=en>>>24,en=nn[Pt+20>>2],rn=nn[Pt+16>>2],tn[Wt+16|0]=rn,tn[Wt+17|0]=rn>>>8,tn[Wt+18|0]=rn>>>16,tn[Wt+19|0]=rn>>>24,tn[Wt+20|0]=en,tn[Wt+21|0]=en>>>8,tn[Wt+22|0]=en>>>16,tn[Wt+23|0]=en>>>24,en=nn[Pt+12>>2],rn=nn[Pt+8>>2],tn[Wt+8|0]=rn,tn[Wt+9|0]=rn>>>8,tn[Wt+10|0]=rn>>>16,tn[Wt+11|0]=rn>>>24,tn[Wt+12|0]=en,tn[Wt+13|0]=en>>>8,tn[Wt+14|0]=en>>>16,tn[Wt+15|0]=en>>>24,en=nn[Pt+4>>2],rn=nn[Pt>>2],tn[0|Wt]=rn,tn[Wt+1|0]=rn>>>8,tn[Wt+2|0]=rn>>>16,tn[Wt+3|0]=rn>>>24,tn[Wt+4|0]=en,tn[Wt+5|0]=en>>>8,tn[Wt+6|0]=en>>>16,tn[Wt+7|0]=en>>>24,rn=nn[Pt+36>>2],en=nn[Pt+32>>2],tn[Wt+32|0]=1,tn[Wt+33|0]=0,tn[Wt+34|0]=0,tn[Wt+35|0]=0,tn[Wt+36|0]=en,tn[Wt+37|0]=en>>>8,tn[Wt+38|0]=en>>>16,tn[Wt+39|0]=en>>>24,tn[Wt+40|0]=rn,tn[Wt+41|0]=rn>>>8,tn[Wt+42|0]=rn>>>16,tn[Wt+43|0]=rn>>>24,mn=Pt+48|0},Ob:function(Wt,Pt,en,rn,In,sn,on,cn,dn,un){Wt|=0,Pt|=0,rn|=0,sn|=0,on|=0,dn|=0,un|=0;var pn,bn=0,Gn=0,hn=0;return bn=In|=0,bn|=In=0,pn=In|(cn|=0),mn=In=mn-384|0,(en|=0)&&(nn[en>>2]=0,nn[en+4>>2]=0),!sn&bn>>>0<4294967279?(eI(Gn=In+16|0,64,hn=Wt+32|0,Wt),nI(cn=In+80|0,Gn),MI(Gn,64),rI(cn,on,pn,dn),rI(cn,34736,0-pn&15,0),nn[In+72>>2]=0,nn[In+76>>2]=0,nn[(on=In- -64|0)>>2]=0,nn[on+4>>2]=0,nn[In+56>>2]=0,nn[In+60>>2]=0,nn[In+48>>2]=0,nn[In+52>>2]=0,nn[In+40>>2]=0,nn[In+44>>2]=0,nn[In+32>>2]=0,nn[In+36>>2]=0,nn[In+16>>2]=0,nn[In+20>>2]=0,nn[In+24>>2]=0,nn[In+28>>2]=0,tn[In+16|0]=un,vA(Gn,Gn,64,0,hn,1,Wt),rI(cn,Gn,64,0),tn[0|Pt]=an[In+16|0],vA(Pt=Pt+1|0,rn,bn,sn,hn,2,Wt),rI(cn,Pt,bn,sn),rI(cn,34736,15&bn,0),nn[In+8>>2]=pn,nn[In+12>>2]=dn,rI(cn,rn=In+8|0,8,0),nn[In+8>>2]=bn- -64,nn[In+12>>2]=sn-((bn>>>0<4294967232)-1|0),rI(cn,rn,8,0),sI(cn,Pt=Pt+bn|0),MI(cn,256),tn[Wt+36|0]=an[Wt+36|0]^an[0|Pt],tn[Wt+37|0]=an[Wt+37|0]^an[Pt+1|0],tn[Wt+38|0]=an[Wt+38|0]^an[Pt+2|0],tn[Wt+39|0]=an[Wt+39|0]^an[Pt+3|0],tn[Wt+40|0]=an[Wt+40|0]^an[Pt+4|0],tn[Wt+41|0]=an[Wt+41|0]^an[Pt+5|0],tn[Wt+42|0]=an[Wt+42|0]^an[Pt+6|0],tn[Wt+43|0]=an[Wt+43|0]^an[Pt+7|0],dA(hn),(2&un||SA(hn,4))&&(Pt=an[Wt+28|0]|an[Wt+29|0]<<8|an[Wt+30|0]<<16|an[Wt+31|0]<<24,nn[In+360>>2]=an[Wt+24|0]|an[Wt+25|0]<<8|an[Wt+26|0]<<16|an[Wt+27|0]<<24,nn[In+364>>2]=Pt,Pt=an[Wt+20|0]|an[Wt+21|0]<<8|an[Wt+22|0]<<16|an[Wt+23|0]<<24,nn[In+352>>2]=an[Wt+16|0]|an[Wt+17|0]<<8|an[Wt+18|0]<<16|an[Wt+19|0]<<24,nn[In+356>>2]=Pt,Pt=an[Wt+4|0]|an[Wt+5|0]<<8|an[Wt+6|0]<<16|an[Wt+7|0]<<24,nn[In+336>>2]=an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24,nn[In+340>>2]=Pt,Pt=an[Wt+12|0]|an[Wt+13|0]<<8|an[Wt+14|0]<<16|an[Wt+15|0]<<24,nn[In+344>>2]=an[Wt+8|0]|an[Wt+9|0]<<8|an[Wt+10|0]<<16|an[Wt+11|0]<<24,nn[In+348>>2]=Pt,Pt=an[Wt+40|0]|an[Wt+41|0]<<8|an[Wt+42|0]<<16|an[Wt+43|0]<<24,nn[In+368>>2]=an[Wt+36|0]|an[Wt+37|0]<<8|an[Wt+38|0]<<16|an[Wt+39|0]<<24,nn[In+372>>2]=Pt,yI(Pt=In+336|0,Pt,hn,Wt),Pt=nn[In+364>>2],rn=nn[In+360>>2],tn[Wt+24|0]=rn,tn[Wt+25|0]=rn>>>8,tn[Wt+26|0]=rn>>>16,tn[Wt+27|0]=rn>>>24,tn[Wt+28|0]=Pt,tn[Wt+29|0]=Pt>>>8,tn[Wt+30|0]=Pt>>>16,tn[Wt+31|0]=Pt>>>24,Pt=nn[In+356>>2],rn=nn[In+352>>2],tn[Wt+16|0]=rn,tn[Wt+17|0]=rn>>>8,tn[Wt+18|0]=rn>>>16,tn[Wt+19|0]=rn>>>24,tn[Wt+20|0]=Pt,tn[Wt+21|0]=Pt>>>8,tn[Wt+22|0]=Pt>>>16,tn[Wt+23|0]=Pt>>>24,Pt=nn[In+348>>2],rn=nn[In+344>>2],tn[Wt+8|0]=rn,tn[Wt+9|0]=rn>>>8,tn[Wt+10|0]=rn>>>16,tn[Wt+11|0]=rn>>>24,tn[Wt+12|0]=Pt,tn[Wt+13|0]=Pt>>>8,tn[Wt+14|0]=Pt>>>16,tn[Wt+15|0]=Pt>>>24,Pt=nn[In+340>>2],rn=nn[In+336>>2],tn[0|Wt]=rn,tn[Wt+1|0]=rn>>>8,tn[Wt+2|0]=rn>>>16,tn[Wt+3|0]=rn>>>24,tn[Wt+4|0]=Pt,tn[Wt+5|0]=Pt>>>8,tn[Wt+6|0]=Pt>>>16,tn[Wt+7|0]=Pt>>>24,Pt=nn[In+368>>2],rn=nn[In+372>>2],tn[Wt+32|0]=1,tn[Wt+33|0]=0,tn[Wt+34|0]=0,tn[Wt+35|0]=0,tn[Wt+36|0]=Pt,tn[Wt+37|0]=Pt>>>8,tn[Wt+38|0]=Pt>>>16,tn[Wt+39|0]=Pt>>>24,tn[Wt+40|0]=rn,tn[Wt+41|0]=rn>>>8,tn[Wt+42|0]=rn>>>16,tn[Wt+43|0]=rn>>>24),en&&(sn=(Wt=bn+17|0)>>>0<17?sn+1|0:sn,nn[en>>2]=Wt,nn[en+4>>2]=sn),mn=In+384|0):(iI(),Q()),0},Pb:function(Wt,Pt,en,rn,In,sn,on,cn,dn,un){Wt|=0,Pt|=0,rn|=0,In|=0,cn|=0,un|=0;var pn,bn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0;bn=sn|=0,sn=on|=0,Gn=0|bn,pn=dn|=0,mn=on=mn-400|0,(en|=0)&&(nn[en>>2]=0,nn[en+4>>2]=0),rn&&(tn[0|rn]=255),Wn=-1;e:{t:{if(!((dn=Gn>>>0<17)&!sn)){if(An=bn=sn-dn|0,!bn&(dn=Gn-17|0)>>>0>=4294967279|bn)break t;eI(hn=on+32|0,64,Zn=Wt+32|0,Wt),nI(bn=on+96|0,hn),MI(hn,64),rI(bn,cn,pn,un),rI(bn,34736,0-pn&15,0),nn[on+88>>2]=0,nn[on+92>>2]=0,nn[on+80>>2]=0,nn[on+84>>2]=0,nn[on+72>>2]=0,nn[on+76>>2]=0,nn[(cn=on- -64|0)>>2]=0,nn[cn+4>>2]=0,nn[on+56>>2]=0,nn[on+60>>2]=0,nn[on+48>>2]=0,nn[on+52>>2]=0,nn[on+40>>2]=0,nn[on+44>>2]=0,nn[on+32>>2]=0,nn[on+36>>2]=0,tn[on+32|0]=an[0|In],vA(hn,hn,64,0,Zn,1,Wt),cn=an[on+32|0],tn[on+32|0]=an[0|In],rI(bn,hn,64,0),rI(bn,In=In+1|0,dn,An),rI(bn,34736,Gn-1&15,0),nn[on+24>>2]=pn,nn[on+28>>2]=un,rI(bn,un=on+24|0,8,0),sn=(Gn=Gn+47|0)>>>0<47?sn+1|0:sn,nn[on+24>>2]=Gn,nn[on+28>>2]=sn,rI(bn,un,8,0),sI(bn,on),MI(bn,256),NA(on,In+dn|0,16)?MI(on,16):(vA(Pt,In,dn,An,Zn,2,Wt),tn[Wt+36|0]=an[Wt+36|0]^an[0|on],tn[Wt+37|0]=an[Wt+37|0]^an[on+1|0],tn[Wt+38|0]=an[Wt+38|0]^an[on+2|0],tn[Wt+39|0]=an[Wt+39|0]^an[on+3|0],tn[Wt+40|0]=an[Wt+40|0]^an[on+4|0],tn[Wt+41|0]=an[Wt+41|0]^an[on+5|0],tn[Wt+42|0]=an[Wt+42|0]^an[on+6|0],tn[Wt+43|0]=an[Wt+43|0]^an[on+7|0],dA(Zn),(2&cn||SA(Zn,4))&&(Pt=an[Wt+28|0]|an[Wt+29|0]<<8|an[Wt+30|0]<<16|an[Wt+31|0]<<24,nn[on+376>>2]=an[Wt+24|0]|an[Wt+25|0]<<8|an[Wt+26|0]<<16|an[Wt+27|0]<<24,nn[on+380>>2]=Pt,Pt=an[Wt+20|0]|an[Wt+21|0]<<8|an[Wt+22|0]<<16|an[Wt+23|0]<<24,nn[on+368>>2]=an[Wt+16|0]|an[Wt+17|0]<<8|an[Wt+18|0]<<16|an[Wt+19|0]<<24,nn[on+372>>2]=Pt,Pt=an[Wt+4|0]|an[Wt+5|0]<<8|an[Wt+6|0]<<16|an[Wt+7|0]<<24,nn[on+352>>2]=an[0|Wt]|an[Wt+1|0]<<8|an[Wt+2|0]<<16|an[Wt+3|0]<<24,nn[on+356>>2]=Pt,Pt=an[Wt+12|0]|an[Wt+13|0]<<8|an[Wt+14|0]<<16|an[Wt+15|0]<<24,nn[on+360>>2]=an[Wt+8|0]|an[Wt+9|0]<<8|an[Wt+10|0]<<16|an[Wt+11|0]<<24,nn[on+364>>2]=Pt,Pt=an[Wt+40|0]|an[Wt+41|0]<<8|an[Wt+42|0]<<16|an[Wt+43|0]<<24,nn[on+384>>2]=an[Wt+36|0]|an[Wt+37|0]<<8|an[Wt+38|0]<<16|an[Wt+39|0]<<24,nn[on+388>>2]=Pt,yI(Pt=on+352|0,Pt,Zn,Wt),Pt=nn[on+380>>2],In=nn[on+376>>2],tn[Wt+24|0]=In,tn[Wt+25|0]=In>>>8,tn[Wt+26|0]=In>>>16,tn[Wt+27|0]=In>>>24,tn[Wt+28|0]=Pt,tn[Wt+29|0]=Pt>>>8,tn[Wt+30|0]=Pt>>>16,tn[Wt+31|0]=Pt>>>24,Pt=nn[on+372>>2],In=nn[on+368>>2],tn[Wt+16|0]=In,tn[Wt+17|0]=In>>>8,tn[Wt+18|0]=In>>>16,tn[Wt+19|0]=In>>>24,tn[Wt+20|0]=Pt,tn[Wt+21|0]=Pt>>>8,tn[Wt+22|0]=Pt>>>16,tn[Wt+23|0]=Pt>>>24,Pt=nn[on+364>>2],In=nn[on+360>>2],tn[Wt+8|0]=In,tn[Wt+9|0]=In>>>8,tn[Wt+10|0]=In>>>16,tn[Wt+11|0]=In>>>24,tn[Wt+12|0]=Pt,tn[Wt+13|0]=Pt>>>8,tn[Wt+14|0]=Pt>>>16,tn[Wt+15|0]=Pt>>>24,Pt=nn[on+356>>2],In=nn[on+352>>2],tn[0|Wt]=In,tn[Wt+1|0]=In>>>8,tn[Wt+2|0]=In>>>16,tn[Wt+3|0]=In>>>24,tn[Wt+4|0]=Pt,tn[Wt+5|0]=Pt>>>8,tn[Wt+6|0]=Pt>>>16,tn[Wt+7|0]=Pt>>>24,Pt=nn[on+384>>2],In=nn[on+388>>2],tn[Wt+32|0]=1,tn[Wt+33|0]=0,tn[Wt+34|0]=0,tn[Wt+35|0]=0,tn[Wt+36|0]=Pt,tn[Wt+37|0]=Pt>>>8,tn[Wt+38|0]=Pt>>>16,tn[Wt+39|0]=Pt>>>24,tn[Wt+40|0]=In,tn[Wt+41|0]=In>>>8,tn[Wt+42|0]=In>>>16,tn[Wt+43|0]=In>>>24),en&&(nn[en>>2]=dn,nn[en+4>>2]=An),Wn=0,rn&&(tn[0|rn]=cn))}mn=on+400|0;break e}iI(),Q()}return 0|Wn},Qb:function(){return 52},Rb:function(){return 17},Sb:pI,Tb:_I,Ub:function(){return-18},Vb:YI,Wb:dI,Xb:bI,Yb:function(){return 3},Zb:UI,_b:KI,$b:function(Wt,Pt,en,nn,rn){Wt|=0,Pt|=0,en|=0,nn|=0;var In,sn,on=0,cn=0,dn=0,un=0,pn=0,mn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0;if(gn=1886610805^(on=an[0|(rn|=0)]|an[rn+1|0]<<8|an[rn+2|0]<<16|an[rn+3|0]<<24),Gn=1936682341^(cn=an[rn+4|0]|an[rn+5|0]<<8|an[rn+6|0]<<16|an[rn+7|0]<<24),on^=1852142177,dn=1819895653^cn,yn=1852075885^(cn=an[rn+8|0]|an[rn+9|0]<<8|an[rn+10|0]<<16|an[rn+11|0]<<24),Wn=1685025377^(rn=an[rn+12|0]|an[rn+13|0]<<8|an[rn+14|0]<<16|an[rn+15|0]<<24),pn=2037671283^cn,cn=1952801890^rn,An=en,(0|(sn=(en+Pt|0)-(In=7&en)|0))!=(0|Pt))for(;en=(un=cn^(Nn=an[Pt+4|0]|an[Pt+5|0]<<8|an[Pt+6|0]<<16|an[Pt+7|0]<<24))+dn|0,pn=nn=on+(rn=pn^(hn=an[0|Pt]|an[Pt+1|0]<<8|an[Pt+2|0]<<16|an[Pt+3|0]<<24))|0,Zn=en=nn>>>0>>0?en+1|0:en,on=nn,nn=en,en=Gn+Wn|0,en=(cn=gn+yn|0)>>>0>>0?en+1|0:en,mn=(dn=_A(yn,Wn,13)^cn)+on|0,nn=(on=bn^en)+nn|0,on=_A(dn,on,17)^mn,Wn=_A(on,nn=(dn=dn>>>0>mn>>>0?nn+1|0:nn)^bn,13),Gn=bn,un=_A(rn,un,16),rn=Zn^bn,un^=pn,Zn=_A(cn,en,32),en=bn+rn|0,en=(pn=nn)+(nn=(cn=un+Zn|0)>>>0>>0?en+1|0:en)|0,Zn=en=(pn=on+cn|0)>>>0>>0?en+1|0:en,Wn=_A(on=pn^Wn,en^=Gn,17),Gn=bn,un=_A(un,rn,21),rn=nn^bn,un^=cn,cn=_A(mn,dn,32),nn=bn+rn|0,en=(cn=cn>>>0>(dn=un+cn|0)>>>0?nn+1|0:nn)+en|0,yn=(on=on+dn|0)^Wn,nn=en=on>>>0>>0?en+1|0:en,Wn=en^Gn,en=_A(un,rn,16),un=cn^=bn,mn=_A(en^=dn,cn,21),dn=bn,Zn=(cn=_A(pn,Zn,32))+en|0,en=bn+un|0,pn=mn^Zn,cn=(en=cn>>>0>Zn>>>0?en+1|0:en)^dn,on=_A(on,nn,32),dn=bn,gn=Zn^hn,Gn=en^Nn,(0|sn)!=(0|(Pt=Pt+8|0)););switch(Nn=0,mn=An<<24,In-1|0){case 6:mn|=an[Pt+6|0]<<16;case 5:mn|=an[Pt+5|0]<<8;case 4:mn|=an[Pt+4|0];case 3:Nn|=(en=an[Pt+3|0])<<24,mn|=nn=en>>>8|0;case 2:Nn|=(nn=an[Pt+2|0])<<16,mn|=en=nn>>>16|0;case 1:Nn|=(en=an[Pt+1|0])<<8,mn|=nn=en>>>24|0;case 0:Nn=an[0|Pt]|Nn}return Pt=Wt,nn=_A(rn=pn^Nn,Wt=cn^mn,16),Wt=Wt+dn|0,cn=Wt=(Zn=rn+on|0)>>>0>>0?Wt+1|0:Wt,hn=_A(rn=nn^Zn,Wt^=en=bn,21),dn=bn,en=Gn+Wn|0,nn=en=(on=gn+yn|0)>>>0>>0?en+1|0:en,un=rn,rn=_A(on,en,32),en=bn+Wt|0,Wt=dn,dn=en=rn>>>0>(pn=un+rn|0)>>>0?en+1|0:en,Gn=_A(rn=pn^hn,Wt^=en,16),un=bn,en=(on=An=_A(yn,Wn,13)^on)+Zn|0,nn=(hn=bn^nn)+cn|0,Zn=rn,rn=_A(en,nn=en>>>0>>0?nn+1|0:nn,32),Wt=bn+Wt|0,Gn=_A(on=Gn^(Zn=Zn+rn|0),rn=(cn=rn>>>0>Zn>>>0?Wt+1|0:Wt)^un,21),un=bn,An=_A(An,hn,17)^en,en=(hn=bn^nn)+dn|0,Wt=en=(nn=pn=(Wt=An)+pn|0)>>>0>>0?en+1|0:en,dn=on,on=_A(nn,en,32),en=bn+rn|0,un=en=(on=on>>>0>(dn=dn+on|0)>>>0?en+1|0:en)^un,Gn=_A(Wn=dn^Gn,en,16),pn=bn,An=_A(An,hn,13)^nn,Wt=(hn=Wt^bn)+cn|0,nn=Wt=(en=An)>>>0>(rn=en+Zn|0)>>>0?Wt+1|0:Wt,Wt=_A(rn,Wt,32),en=un+bn|0,un=en=(cn=(Wt=Wn+(255^Wt)|0)>>>0>>0?en+1|0:en)^pn,Zn=Wt,Gn=_A(Wn=Gn^Wt,en,21),pn=bn,An=_A(An,hn,17)^rn,en=(hn=nn^bn)+(on^mn)|0,nn=en=(Wt=dn^Nn)>>>0>(rn=An+Wt|0)>>>0?en+1|0:en,Wt=_A(rn,en,32),en=un+bn|0,un=en=(on=(Wt=Wt+Wn|0)>>>0>>0?en+1|0:en)^pn,dn=Wt,mn=_A(Gn^=Wt,en,16),pn=bn,An=_A(An,hn,13)^rn,Wt=cn+(hn=bn^nn)|0,Wt=_A(rn=Zn+An|0,en=Wt=rn>>>0>>0?Wt+1|0:Wt,32),nn=un+bn|0,un=nn=(cn=(Wt=Wt+Gn|0)>>>0>>0?nn+1|0:nn)^pn,Zn=Wt,mn=_A(Gn=mn^Wt,nn,21),pn=bn,Wt=_A(An,hn,17),en=on+(An=en^bn)|0,nn=en=(rn=dn+(hn=Wt^rn)|0)>>>0>>0?en+1|0:en,Wt=_A(rn,en,32),en=un+bn|0,dn=Wt=Wt+Gn|0,on=en=Wt>>>0>>0?en+1|0:en,mn=_A(un=mn^Wt,en^=pn,16),pn=bn,Wt=_A(hn,An,13),nn=cn+(An=nn^bn)|0,Wt=_A(rn=Zn+(hn=Wt^rn)|0,nn=rn>>>0>>0?nn+1|0:nn,32),en=en+bn|0,un=en=(cn=(Wt=Wt+un|0)>>>0>>0?en+1|0:en)^pn,Zn=Wt,mn=_A(Gn=mn^Wt,en,21),pn=bn,Wt=_A(hn,An,17),en=on+(An=nn^bn)|0,nn=en=(rn=dn+(hn=Wt^rn)|0)>>>0>>0?en+1|0:en,en=_A(rn,en,32),Wt=un+bn|0,un=Wt=(on=(en=en+Gn|0)>>>0>>0?Wt+1|0:Wt)^pn,dn=en,mn=_A(Gn=mn^en,Wt,16),pn=bn,Wt=_A(hn,An,13),en=cn+(An=nn^bn)|0,nn=en=(rn=Zn+(hn=Wt^rn)|0)>>>0>>0?en+1|0:en,Wt=_A(rn,en,32),en=un+bn|0,cn=Wt=Wt+Gn|0,mn=_A(mn^Wt,(en=Wt>>>0>>0?en+1|0:en)^pn,21),pn=bn,rn=_A(hn,An,17)^rn,Zn=_A(rn,Wt=nn^bn,13),Wt=Wt+on|0,nn=Wt=bn^((rn=rn+dn|0)>>>0>>0?Wt+1:Wt),rn=_A(on=rn^Zn,Wt,17)^mn,Wt=bn^pn,nn=en+nn|0,en=_A(en=on+cn|0,nn=en>>>0>>0?nn+1|0:nn,32)^rn^en,tn[0|Pt]=en,tn[Pt+1|0]=en>>>8,tn[Pt+2|0]=en>>>16,tn[Pt+3|0]=en>>>24,Wt^=nn^bn,tn[Pt+4|0]=Wt,tn[Pt+5|0]=Wt>>>8,tn[Pt+6|0]=Wt>>>16,tn[Pt+7|0]=Wt>>>24,0},ac:SI,bc:NI,cc:JI,dc:_I,ec:_I,fc:JI,gc:function(){return-65},hc:function(Wt,Pt,en){Wt|=0;var nn,rn,In,sn,on=0,cn=0,dn=0,un=0,pn=0;return mn=In=mn-160|0,FA(Pt|=0,en|=0,32,0),tn[0|Pt]=248&an[0|Pt],tn[Pt+31|0]=63&an[Pt+31|0]|64,Z(In,Pt),mA(Wt,In),cn=an[(rn=en)+8|0]|an[rn+9|0]<<8|an[rn+10|0]<<16|an[rn+11|0]<<24,on=an[rn+12|0]|an[rn+13|0]<<8|an[rn+14|0]<<16|an[rn+15|0]<<24,dn=an[rn+16|0]|an[rn+17|0]<<8|an[rn+18|0]<<16|an[rn+19|0]<<24,un=an[rn+20|0]|an[rn+21|0]<<8|an[rn+22|0]<<16|an[rn+23|0]<<24,pn=an[0|rn]|an[rn+1|0]<<8|an[rn+2|0]<<16|an[rn+3|0]<<24,en=an[rn+4|0]|an[rn+5|0]<<8|an[rn+6|0]<<16|an[rn+7|0]<<24,sn=an[rn+28|0]|an[rn+29|0]<<8|an[rn+30|0]<<16|an[rn+31|0]<<24,nn=Pt,Pt=an[rn+24|0]|an[rn+25|0]<<8|an[rn+26|0]<<16|an[rn+27|0]<<24,tn[nn+24|0]=Pt,tn[nn+25|0]=Pt>>>8,tn[nn+26|0]=Pt>>>16,tn[nn+27|0]=Pt>>>24,tn[nn+28|0]=sn,tn[nn+29|0]=sn>>>8,tn[nn+30|0]=sn>>>16,tn[nn+31|0]=sn>>>24,tn[nn+16|0]=dn,tn[nn+17|0]=dn>>>8,tn[nn+18|0]=dn>>>16,tn[nn+19|0]=dn>>>24,tn[nn+20|0]=un,tn[nn+21|0]=un>>>8,tn[nn+22|0]=un>>>16,tn[nn+23|0]=un>>>24,tn[nn+8|0]=cn,tn[nn+9|0]=cn>>>8,tn[nn+10|0]=cn>>>16,tn[nn+11|0]=cn>>>24,tn[nn+12|0]=on,tn[nn+13|0]=on>>>8,tn[nn+14|0]=on>>>16,tn[nn+15|0]=on>>>24,tn[0|nn]=pn,tn[nn+1|0]=pn>>>8,tn[nn+2|0]=pn>>>16,tn[nn+3|0]=pn>>>24,tn[nn+4|0]=en,tn[nn+5|0]=en>>>8,tn[nn+6|0]=en>>>16,tn[nn+7|0]=en>>>24,dn=an[(on=Wt)+8|0]|an[on+9|0]<<8|an[on+10|0]<<16|an[on+11|0]<<24,un=an[on+12|0]|an[on+13|0]<<8|an[on+14|0]<<16|an[on+15|0]<<24,pn=an[on+16|0]|an[on+17|0]<<8|an[on+18|0]<<16|an[on+19|0]<<24,en=an[on+20|0]|an[on+21|0]<<8|an[on+22|0]<<16|an[on+23|0]<<24,Pt=an[0|on]|an[on+1|0]<<8|an[on+2|0]<<16|an[on+3|0]<<24,Wt=an[on+4|0]|an[on+5|0]<<8|an[on+6|0]<<16|an[on+7|0]<<24,cn=an[on+28|0]|an[on+29|0]<<8|an[on+30|0]<<16|an[on+31|0]<<24,on=an[on+24|0]|an[on+25|0]<<8|an[on+26|0]<<16|an[on+27|0]<<24,tn[nn+56|0]=on,tn[nn+57|0]=on>>>8,tn[nn+58|0]=on>>>16,tn[nn+59|0]=on>>>24,tn[nn+60|0]=cn,tn[nn+61|0]=cn>>>8,tn[nn+62|0]=cn>>>16,tn[nn+63|0]=cn>>>24,tn[nn+48|0]=pn,tn[nn+49|0]=pn>>>8,tn[nn+50|0]=pn>>>16,tn[nn+51|0]=pn>>>24,tn[nn+52|0]=en,tn[nn+53|0]=en>>>8,tn[nn+54|0]=en>>>16,tn[nn+55|0]=en>>>24,tn[nn+40|0]=dn,tn[nn+41|0]=dn>>>8,tn[nn+42|0]=dn>>>16,tn[nn+43|0]=dn>>>24,tn[nn+44|0]=un,tn[nn+45|0]=un>>>8,tn[nn+46|0]=un>>>16,tn[nn+47|0]=un>>>24,tn[nn+32|0]=Pt,tn[nn+33|0]=Pt>>>8,tn[nn+34|0]=Pt>>>16,tn[nn+35|0]=Pt>>>24,tn[nn+36|0]=Wt,tn[nn+37|0]=Wt>>>8,tn[nn+38|0]=Wt>>>16,tn[nn+39|0]=Wt>>>24,mn=In+160|0,0},ic:function(Wt,Pt){Wt|=0,Pt|=0;var en,rn,In,sn,on,cn=0,dn=0,un=0;return mn=dn=mn-192|0,LA(dn,32),FA(Pt,dn,32,0),tn[0|Pt]=248&an[0|Pt],tn[Pt+31|0]=63&an[Pt+31|0]|64,Z(un=dn+32|0,Pt),mA(Wt,un),en=dn,un=nn[dn+28>>2],dn=nn[dn+24>>2],tn[Pt+24|0]=dn,tn[Pt+25|0]=dn>>>8,tn[Pt+26|0]=dn>>>16,tn[Pt+27|0]=dn>>>24,tn[Pt+28|0]=un,tn[Pt+29|0]=un>>>8,tn[Pt+30|0]=un>>>16,tn[Pt+31|0]=un>>>24,un=nn[en+20>>2],dn=nn[en+16>>2],tn[Pt+16|0]=dn,tn[Pt+17|0]=dn>>>8,tn[Pt+18|0]=dn>>>16,tn[Pt+19|0]=dn>>>24,tn[Pt+20|0]=un,tn[Pt+21|0]=un>>>8,tn[Pt+22|0]=un>>>16,tn[Pt+23|0]=un>>>24,un=nn[en+12>>2],dn=nn[en+8>>2],tn[Pt+8|0]=dn,tn[Pt+9|0]=dn>>>8,tn[Pt+10|0]=dn>>>16,tn[Pt+11|0]=dn>>>24,tn[Pt+12|0]=un,tn[Pt+13|0]=un>>>8,tn[Pt+14|0]=un>>>16,tn[Pt+15|0]=un>>>24,un=nn[en+4>>2],dn=nn[en>>2],tn[0|Pt]=dn,tn[Pt+1|0]=dn>>>8,tn[Pt+2|0]=dn>>>16,tn[Pt+3|0]=dn>>>24,tn[Pt+4|0]=un,tn[Pt+5|0]=un>>>8,tn[Pt+6|0]=un>>>16,tn[Pt+7|0]=un>>>24,rn=an[(cn=Wt)+8|0]|an[cn+9|0]<<8|an[cn+10|0]<<16|an[cn+11|0]<<24,In=an[cn+12|0]|an[cn+13|0]<<8|an[cn+14|0]<<16|an[cn+15|0]<<24,sn=an[cn+16|0]|an[cn+17|0]<<8|an[cn+18|0]<<16|an[cn+19|0]<<24,un=an[cn+20|0]|an[cn+21|0]<<8|an[cn+22|0]<<16|an[cn+23|0]<<24,dn=an[0|cn]|an[cn+1|0]<<8|an[cn+2|0]<<16|an[cn+3|0]<<24,Wt=an[cn+4|0]|an[cn+5|0]<<8|an[cn+6|0]<<16|an[cn+7|0]<<24,on=an[cn+28|0]|an[cn+29|0]<<8|an[cn+30|0]<<16|an[cn+31|0]<<24,cn=an[cn+24|0]|an[cn+25|0]<<8|an[cn+26|0]<<16|an[cn+27|0]<<24,tn[Pt+56|0]=cn,tn[Pt+57|0]=cn>>>8,tn[Pt+58|0]=cn>>>16,tn[Pt+59|0]=cn>>>24,tn[Pt+60|0]=on,tn[Pt+61|0]=on>>>8,tn[Pt+62|0]=on>>>16,tn[Pt+63|0]=on>>>24,tn[Pt+48|0]=sn,tn[Pt+49|0]=sn>>>8,tn[Pt+50|0]=sn>>>16,tn[Pt+51|0]=sn>>>24,tn[Pt+52|0]=un,tn[Pt+53|0]=un>>>8,tn[Pt+54|0]=un>>>16,tn[Pt+55|0]=un>>>24,tn[Pt+40|0]=rn,tn[Pt+41|0]=rn>>>8,tn[Pt+42|0]=rn>>>16,tn[Pt+43|0]=rn>>>24,tn[Pt+44|0]=In,tn[Pt+45|0]=In>>>8,tn[Pt+46|0]=In>>>16,tn[Pt+47|0]=In>>>24,tn[Pt+32|0]=dn,tn[Pt+33|0]=dn>>>8,tn[Pt+34|0]=dn>>>16,tn[Pt+35|0]=dn>>>24,tn[Pt+36|0]=Wt,tn[Pt+37|0]=Wt>>>8,tn[Pt+38|0]=Wt>>>16,tn[Pt+39|0]=Wt>>>24,MI(en,32),mn=en+192|0,0},jc:function(Wt,Pt,en,tn,an,rn){Pt|=0,an|=0,rn|=0;var In,sn=0;return mn=In=mn-16|0,k(Wt|=0,In+8|0,lA(Wt- -64|0,en|=0,tn|=0),tn,an,rn,0),64!=nn[In+8>>2]|nn[In+12>>2]?(Pt&&(nn[Pt>>2]=0,nn[Pt+4>>2]=0),VA(Wt,0,tn- -64|0),sn=-1):Pt&&(nn[Pt>>2]=tn- -64,nn[Pt+4>>2]=an-((tn>>>0<4294967232)-1|0)),mn=In+16|0,0|sn},kc:function(Wt,Pt,en,tn,an,rn){Wt|=0,Pt|=0,en|=0;var In=0;e:{t:{if(In=tn|=0,!(!(an|=0)&tn>>>0<64||(tn=an-1|0,!(tn=(an=In+-64|0)>>>0<4294967232?tn+1|0:tn)&an>>>0>4294967231|tn))){if(!F(en,In=en- -64|0,an,tn,rn|=0,0))break t;Wt&&VA(Wt,0,an)}if(en=-1,!Pt)break e;nn[Pt>>2]=0,nn[Pt+4>>2]=0;break e}Pt&&(nn[Pt>>2]=an,nn[Pt+4>>2]=tn),en=0,Wt&&lA(Wt,In,an)}return 0|en},lc:function(Wt,Pt,en,tn,nn,an){return k(Wt|=0,Pt|=0,en|=0,tn|=0,nn|=0,an|=0,0),0},mc:function(Wt,Pt,en,tn,nn){return 0|F(Wt|=0,Pt|=0,en|=0,tn|=0,nn|=0,0)},nc:function(Wt){return MA(Wt|=0),0},oc:function(Wt,Pt,en,tn){return 0|W(Wt|=0,Pt|=0,en|=0,tn|=0)},pc:function(Wt,Pt,en,tn){var nn;return Pt|=0,en|=0,tn|=0,mn=nn=mn+-64|0,v(Wt|=0,nn),Wt=k(Pt,en,nn,64,0,tn,1),mn=nn- -64|0,0|Wt},qc:function(Wt,Pt,en){var tn;return Pt|=0,en|=0,mn=tn=mn+-64|0,v(Wt|=0,tn),Wt=F(Pt,tn,64,0,en,1),mn=tn- -64|0,0|Wt},rc:function(Wt,Pt){Wt|=0;var en,an=0,rn=0,sn=0,on=0,cn=0,dn=0,un=0,pn=0,Gn=0,hn=0,Zn=0,An=0,Wn=0,Nn=0,gn=0,yn=0,vn=0,Yn=0,En=0,Vn=0,Rn=0,wn=0,Fn=0,Qn=0,fn=0,Hn=0,Cn=0,Xn=0,kn=0,Jn=0,Ln=0,Bn=0,xn=0,On=0,Tn=0,Un=0,Mn=0,zn=0,Sn=0,jn=0,Dn=0,_n=0,Kn=0,Pn=0,qn=0,$n=0,el=0,tl=0,nl=0,ll=0,al=0,rl=0,Il=0,sl=0,ol=0,cl=0,il=0,dl=0,ul=0,pl=0,ml=0,bl=0,Gl=0,hl=0,Zl=0,Al=0,Wl=0,Nl=0,gl=0,yl=0,vl=0,Yl=0,El=0,Vl=0,Rl=0,wl=0,Fl=0,Ql=0,fl=0,Hl=0;if(mn=en=mn-256|0,Yl=-1,!KA(Pt|=0)&&!q(an=en+96|0,Pt)){for(mn=sn=mn-2048|0,DA(on=sn+640|0,an),an=nn[(Pt=an)+36>>2],nn[sn+352>>2]=nn[Pt+32>>2],nn[sn+356>>2]=an,an=nn[Pt+28>>2],nn[sn+344>>2]=nn[Pt+24>>2],nn[sn+348>>2]=an,an=nn[Pt+20>>2],nn[sn+336>>2]=nn[Pt+16>>2],nn[sn+340>>2]=an,an=nn[Pt+12>>2],nn[sn+328>>2]=nn[Pt+8>>2],nn[sn+332>>2]=an,an=nn[Pt+4>>2],nn[sn+320>>2]=nn[Pt>>2],nn[sn+324>>2]=an,an=nn[Pt+52>>2],nn[sn+368>>2]=nn[Pt+48>>2],nn[sn+372>>2]=an,an=nn[Pt+60>>2],nn[sn+376>>2]=nn[Pt+56>>2],nn[sn+380>>2]=an,rn=nn[4+(an=Pt- -64|0)>>2],nn[sn+384>>2]=nn[an>>2],nn[sn+388>>2]=rn,an=nn[Pt+76>>2],nn[sn+392>>2]=nn[Pt+72>>2],nn[sn+396>>2]=an,an=nn[Pt+44>>2],nn[sn+360>>2]=nn[Pt+40>>2],nn[sn+364>>2]=an,an=nn[Pt+92>>2],nn[sn+408>>2]=nn[Pt+88>>2],nn[sn+412>>2]=an,an=nn[Pt+100>>2],nn[sn+416>>2]=nn[Pt+96>>2],nn[sn+420>>2]=an,an=nn[Pt+108>>2],nn[sn+424>>2]=nn[Pt+104>>2],nn[sn+428>>2]=an,an=nn[Pt+116>>2],nn[sn+432>>2]=nn[Pt+112>>2],nn[sn+436>>2]=an,an=nn[Pt+84>>2],nn[sn+400>>2]=nn[Pt+80>>2],nn[sn+404>>2]=an,_(Pt=sn+480|0,an=sn+320|0),M(rn=sn+160|0,Pt,dn=sn+600|0),M(sn+200|0,pn=sn+520|0,Gn=sn+560|0),M(sn+240|0,Gn,dn),M(sn+280|0,Pt,pn),X(Pt,rn,on),M(an,Pt,dn),M(gn=sn+360|0,pn,Gn),M(yn=sn+400|0,Gn,dn),M(An=sn+440|0,Pt,pn),DA(on=sn+800|0,an),X(Pt,rn,on),M(an,Pt,dn),M(gn,pn,Gn),M(yn,Gn,dn),M(An,Pt,pn),DA(on=sn+960|0,an),X(Pt,rn,on),M(an,Pt,dn),M(gn,pn,Gn),M(yn,Gn,dn),M(An,Pt,pn),DA(on=sn+1120|0,an),X(Pt,rn,on),M(an,Pt,dn),M(gn,pn,Gn),M(yn,Gn,dn),M(An,Pt,pn),DA(on=sn+1280|0,an),X(Pt,rn,on),M(an,Pt,dn),M(gn,pn,Gn),M(yn,Gn,dn),M(An,Pt,pn),DA(on=sn+1440|0,an),X(Pt,rn,on),M(an,Pt,dn),M(gn,pn,Gn),M(yn,Gn,dn),M(An,Pt,pn),DA(on=sn+1600|0,an),X(Pt,rn,on),M(an,Pt,dn),M(gn,pn,Gn),M(yn,Gn,dn),M(An,Pt,pn),DA(sn+1760|0,an),nn[sn+32>>2]=0,nn[sn+36>>2]=0,nn[sn+24>>2]=0,nn[sn+28>>2]=0,nn[sn+16>>2]=0,nn[sn+20>>2]=0,nn[sn+8>>2]=0,nn[sn+12>>2]=0,nn[sn+52>>2]=0,nn[sn+56>>2]=0,nn[sn+60>>2]=0,nn[sn+64>>2]=0,nn[sn+68>>2]=0,nn[sn+72>>2]=0,nn[sn+76>>2]=0,nn[sn+80>>2]=1,nn[sn>>2]=0,nn[sn+4>>2]=0,nn[sn+44>>2]=0,nn[sn+48>>2]=0,nn[sn+40>>2]=1,VA(sn+84|0,0,76),hn=sn+120|0,Nn=sn+2008|0,Wn=sn+1968|0,an=sn+80|0,rn=sn+40|0,on=252;cn=nn[sn+36>>2],nn[(Pt=sn+1960|0)>>2]=nn[sn+32>>2],nn[Pt+4>>2]=cn,cn=nn[sn+28>>2],nn[(Pt=sn+1952|0)>>2]=nn[sn+24>>2],nn[Pt+4>>2]=cn,cn=nn[sn+20>>2],nn[(Pt=sn+1944|0)>>2]=nn[sn+16>>2],nn[Pt+4>>2]=cn,cn=nn[sn+12>>2],nn[(Pt=sn+1936|0)>>2]=nn[sn+8>>2],nn[Pt+4>>2]=cn,Pt=nn[sn+4>>2],nn[sn+1928>>2]=nn[sn>>2],nn[sn+1932>>2]=Pt,cn=nn[(Pt=rn)+36>>2],nn[Wn+32>>2]=nn[Pt+32>>2],nn[Wn+36>>2]=cn,cn=nn[Pt+28>>2],nn[Wn+24>>2]=nn[Pt+24>>2],nn[Wn+28>>2]=cn,cn=nn[Pt+20>>2],nn[Wn+16>>2]=nn[Pt+16>>2],nn[Wn+20>>2]=cn,cn=nn[Pt+12>>2],nn[Wn+8>>2]=nn[Pt+8>>2],nn[Wn+12>>2]=cn,cn=nn[Pt+4>>2],nn[Wn>>2]=nn[Pt>>2],nn[Wn+4>>2]=cn,cn=nn[(Pt=an)+36>>2],nn[Nn+32>>2]=nn[Pt+32>>2],nn[Nn+36>>2]=cn,cn=nn[Pt+28>>2],nn[Nn+24>>2]=nn[Pt+24>>2],nn[Nn+28>>2]=cn,cn=nn[Pt+20>>2],nn[Nn+16>>2]=nn[Pt+16>>2],nn[Nn+20>>2]=cn,cn=nn[Pt+12>>2],nn[Nn+8>>2]=nn[Pt+8>>2],nn[Nn+12>>2]=cn,cn=nn[Pt+4>>2],nn[Nn>>2]=nn[Pt>>2],nn[Nn+4>>2]=cn,on=tn[(Pt=on)+33408|0],_(cn=sn+480|0,sn+1928|0),(0|on)>0?(M(Yn=sn+320|0,cn,dn),M(gn,pn,Gn),M(yn,Gn,dn),M(An,cn,pn),X(cn,Yn,(sn+640|0)+In((254&on)>>>1|0,160)|0)):(0|on)>=0||(M(Yn=sn+320|0,cn=sn+480|0,dn),M(gn,pn,Gn),M(yn,Gn,dn),M(An,cn,pn),O(cn,Yn,(sn+640|0)+In((0-on&254)>>>1|0,160)|0)),M(sn,on=sn+480|0,dn),M(rn,pn,Gn),M(an,Gn,dn),M(hn,on,pn),on=Pt-1|0,Pt;);eA(Pt=sn+640|0,sn),Pt=SA(Pt,32),mn=sn+2048|0,Pt&&(Yl=0,Bn=nn[en+172>>2],nn[en+36>>2]=0-Bn,gn=nn[en+168>>2],nn[en+32>>2]=0-gn,xn=nn[en+164>>2],nn[en+28>>2]=0-xn,pn=nn[en+160>>2],nn[en+24>>2]=0-pn,On=nn[en+156>>2],nn[en+20>>2]=0-On,Gn=nn[en+152>>2],nn[en+16>>2]=0-Gn,Tn=nn[en+148>>2],nn[en+12>>2]=0-Tn,Nn=nn[en+144>>2],nn[en+8>>2]=0-Nn,Un=nn[en+140>>2],nn[en+4>>2]=0-Un,sn=nn[en+136>>2],nn[en>>2]=1-sn,iA(en,en),Pt=PA(yn=nn[en+4>>2],kn=yn>>31,wn=On<<1,nl=wn>>31),an=bn,rn=PA(dn=nn[en>>2],Fn=dn>>31,pn,Qn=pn>>31),an=bn+an|0,an=(Pt=rn+Pt|0)>>>0>>0?an+1|0:an,rn=(on=PA(cn=nn[en+8>>2],Mn=cn>>31,Gn,fn=Gn>>31))+Pt|0,Pt=bn+an|0,Pt=rn>>>0>>0?Pt+1|0:Pt,an=rn,rn=PA(Jn=nn[en+12>>2],jn=Jn>>31,Kn=Tn<<1,ll=Kn>>31),Pt=bn+Pt|0,Pt=(an=an+rn|0)>>>0>>0?Pt+1|0:Pt,rn=PA(zn=nn[en+16>>2],Pn=zn>>31,Nn,Hn=Nn>>31),Pt=bn+Pt|0,Pt=(an=rn+an|0)>>>0>>0?Pt+1|0:Pt,Al=on=nn[en+20>>2],Wn=PA(on,al=on>>31,qn=Un<<1,rl=qn>>31),rn=bn+Pt|0,rn=(an=Wn+an|0)>>>0>>0?rn+1|0:rn,Wl=En=nn[en+24>>2],Pt=(sn=PA(En,Gl=En>>31,Wn=sn+1|0,Cn=Wn>>31))+an|0,an=bn+rn|0,an=Pt>>>0>>0?an+1|0:an,Il=nn[en+28>>2],rn=(sn=PA(Yn=In(Il,19),Dn=Yn>>31,$n=Bn<<1,sl=$n>>31))+Pt|0,Pt=bn+an|0,Pt=rn>>>0>>0?Pt+1|0:Pt,an=rn,El=nn[en+32>>2],rn=PA(hn=In(El,19),Sn=hn>>31,gn,Xn=gn>>31),Pt=bn+Pt|0,Pt=(an=an+rn|0)>>>0>>0?Pt+1|0:Pt,Vl=nn[en+36>>2],rn=PA(An=In(Vl,19),Ln=An>>31,el=xn<<1,ol=el>>31),Pt=bn+Pt|0,Zn=an=rn+an|0,sn=an>>>0>>0?Pt+1|0:Pt,Pt=PA(Gn,fn,yn,kn),an=bn,un=PA(dn,Fn,On,cl=On>>31),rn=bn+an|0,rn=(Pt=un+Pt|0)>>>0>>0?rn+1|0:rn,un=PA(cn,Mn,Tn,il=Tn>>31),an=bn+rn|0,an=(Pt=un+Pt|0)>>>0>>0?an+1|0:an,rn=(un=PA(Nn,Hn,Jn,jn))+Pt|0,Pt=bn+an|0,Pt=rn>>>0>>0?Pt+1|0:Pt,an=rn,rn=PA(zn,Pn,Un,dl=Un>>31),Pt=bn+Pt|0,Pt=(an=an+rn|0)>>>0>>0?Pt+1|0:Pt,rn=PA(Wn,Cn,on,al),Pt=bn+Pt|0,Pt=(an=rn+an|0)>>>0>>0?Pt+1|0:Pt,un=PA(En=In(En,19),tl=En>>31,Bn,ul=Bn>>31),rn=bn+Pt|0,rn=(an=un+an|0)>>>0>>0?rn+1|0:rn,Pt=(un=PA(gn,Xn,Yn,Dn))+an|0,an=bn+rn|0,an=Pt>>>0>>0?an+1|0:an,rn=(un=PA(hn,Sn,xn,pl=xn>>31))+Pt|0,Pt=bn+an|0,Pt=rn>>>0>>0?Pt+1|0:Pt,an=rn,rn=PA(pn,Qn,An,Ln),Pt=bn+Pt|0,Nl=an=an+rn|0,_n=an>>>0>>0?Pt+1|0:Pt,Pt=PA(yn,kn,Kn,ll),rn=bn,an=(un=PA(dn,Fn,Gn,fn))+Pt|0,Pt=bn+rn|0,Pt=an>>>0>>0?Pt+1|0:Pt,un=PA(Nn,Hn,cn,Mn),rn=bn+Pt|0,rn=(an=un+an|0)>>>0>>0?rn+1|0:rn,Pt=(un=PA(Jn,jn,qn,rl))+an|0,an=bn+rn|0,an=Pt>>>0>>0?an+1|0:an,rn=(un=PA(Wn,Cn,zn,Pn))+Pt|0,Pt=bn+an|0,Pt=rn>>>0>>0?Pt+1|0:Pt,an=rn,rn=PA(un=In(on,19),ml=un>>31,$n,sl),Pt=bn+Pt|0,Pt=(an=an+rn|0)>>>0>>0?Pt+1|0:Pt,rn=PA(gn,Xn,En,tl),Pt=bn+Pt|0,Pt=(an=rn+an|0)>>>0>>0?Pt+1|0:Pt,on=PA(Yn,Dn,el,ol),rn=bn+Pt|0,rn=(an=on+an|0)>>>0>>0?rn+1|0:rn,Pt=(on=PA(pn,Qn,hn,Sn))+an|0,an=bn+rn|0,an=Pt>>>0>>0?an+1|0:an,rn=(on=PA(An,Ln,wn,nl))+Pt|0,Pt=bn+an|0,Rl=rn,wl=Pt=rn>>>0>>0?Pt+1|0:Pt,Fl=rn=rn+33554432|0,Ql=Pt=rn>>>0<33554432?Pt+1|0:Pt,rn=(67108863&Pt)<<6|rn>>>26,Pt=(Pt>>26)+_n|0,Nl=on=rn+Nl|0,Pt=rn>>>0>on>>>0?Pt+1|0:Pt,fl=on=on+16777216|0,Pt=(an=(rn=on>>>0<16777216?Pt+1|0:Pt)>>25)+sn|0,Pt=(rn=(on=(33554431&rn)<<7|on>>>25)+Zn|0)>>>0>>0?Pt+1|0:Pt,Rn=an=rn+33554432|0,on=Pt=an>>>0<33554432?Pt+1|0:Pt,nn[en+72>>2]=rn-(-67108864&an),Pt=PA(yn,kn,qn,rl),an=bn,sn=PA(dn,Fn,Nn,Hn),rn=bn+an|0,rn=(Pt=sn+Pt|0)>>>0>>0?rn+1|0:rn,an=(sn=PA(Wn,Cn,cn,Mn))+Pt|0,Pt=bn+rn|0,Pt=an>>>0>>0?Pt+1|0:Pt,rn=PA(sn=In(Jn,19),bl=sn>>31,$n,sl),Pt=bn+Pt|0,Pt=(an=rn+an|0)>>>0>>0?Pt+1|0:Pt,rn=(Zn=PA(_n=In(zn,19),hl=_n>>31,gn,Xn))+an|0,an=bn+Pt|0,an=rn>>>0>>0?an+1|0:an,Zn=PA(el,ol,un,ml),Pt=bn+an|0,Pt=(rn=Zn+rn|0)>>>0>>0?Pt+1|0:Pt,an=(Zn=PA(pn,Qn,En,tl))+rn|0,rn=bn+Pt|0,rn=an>>>0>>0?rn+1|0:rn,Zn=PA(Yn,Dn,wn,nl),Pt=bn+rn|0,Pt=(an=Zn+an|0)>>>0>>0?Pt+1|0:Pt,rn=PA(Gn,fn,hn,Sn),Pt=bn+Pt|0,Pt=(an=rn+an|0)>>>0>>0?Pt+1|0:Pt,rn=(Zn=PA(An,Ln,Kn,ll))+an|0,an=bn+Pt|0,Vn=rn,gl=rn>>>0>>0?an+1|0:an,Pt=PA(Wn,Cn,yn,kn),an=bn,rn=(Zn=PA(dn,Fn,Un,dl))+Pt|0,Pt=bn+an|0,Pt=rn>>>0>>0?Pt+1|0:Pt,Zn=an=In(cn,19),an=(vn=PA(an,Zl=an>>31,Bn,ul))+rn|0,rn=bn+Pt|0,rn=an>>>0>>0?rn+1|0:rn,vn=PA(sn,bl,gn,Xn),Pt=bn+rn|0,Pt=(an=vn+an|0)>>>0>>0?Pt+1|0:Pt,rn=PA(_n,hl,xn,pl),Pt=bn+Pt|0,Pt=(an=rn+an|0)>>>0>>0?Pt+1|0:Pt,rn=(vn=PA(pn,Qn,un,ml))+an|0,an=bn+Pt|0,an=rn>>>0>>0?an+1|0:an,vn=PA(En,tl,On,cl),Pt=bn+an|0,Pt=(rn=vn+rn|0)>>>0>>0?Pt+1|0:Pt,an=(vn=PA(Gn,fn,Yn,Dn))+rn|0,rn=bn+Pt|0,rn=an>>>0>>0?rn+1|0:rn,vn=PA(hn,Sn,Tn,il),Pt=bn+rn|0,Pt=(an=vn+an|0)>>>0>>0?Pt+1|0:Pt,rn=PA(Nn,Hn,An,Ln),Pt=bn+Pt|0,yl=an=rn+an|0,vn=an>>>0>>0?Pt+1|0:Pt,Pt=PA(Pt=In(yn,19),Pt>>31,$n,sl),an=bn,rn=PA(dn,Fn,Wn,Cn),an=bn+an|0,an=(Pt=rn+Pt|0)>>>0>>0?an+1|0:an,rn=(Zn=PA(Zn,Zl,gn,Xn))+Pt|0,Pt=bn+an|0,an=(sn=PA(sn,bl,el,ol))+rn|0,rn=bn+(rn>>>0>>0?Pt+1|0:Pt)|0,rn=an>>>0>>0?rn+1|0:rn,sn=PA(pn,Qn,_n,hl),Pt=bn+rn|0,Pt=(an=sn+an|0)>>>0>>0?Pt+1|0:Pt,rn=PA(wn,nl,un,ml),Pt=bn+Pt|0,Pt=(an=rn+an|0)>>>0>>0?Pt+1|0:Pt,rn=(sn=PA(Gn,fn,En,tl))+an|0,an=bn+Pt|0,an=rn>>>0>>0?an+1|0:an,sn=PA(Yn,Dn,Kn,ll),Pt=bn+an|0,Pt=(rn=sn+rn|0)>>>0>>0?Pt+1|0:Pt,an=(sn=PA(Nn,Hn,hn,Sn))+rn|0,rn=bn+Pt|0,rn=an>>>0>>0?rn+1|0:rn,sn=PA(An,Ln,qn,rl),Pt=bn+rn|0,Zn=an=sn+an|0,bl=Pt=an>>>0>>0?Pt+1|0:Pt,Zl=an=an+33554432|0,Hl=Pt=an>>>0<33554432?Pt+1|0:Pt,rn=Pt>>26,Pt=(67108863&Pt)<<6|an>>>26,an=rn+vn|0,vn=sn=Pt+yl|0,Pt=an=Pt>>>0>sn>>>0?an+1|0:an,yl=sn=sn+16777216|0,sn=(33554431&(Pt=sn>>>0<16777216?Pt+1|0:Pt))<<7|sn>>>25,Pt=(Pt>>25)+gl|0,Pt=(an=sn+Vn|0)>>>0>>0?Pt+1|0:Pt,rn=an,gl=an=an+33554432|0,sn=Pt=an>>>0<33554432?Pt+1|0:Pt,nn[en+56>>2]=rn-(-67108864&an),Pt=PA(pn,Qn,yn,kn),rn=bn,an=(Vn=PA(dn,Fn,xn,pl))+Pt|0,Pt=bn+rn|0,Pt=an>>>0>>0?Pt+1|0:Pt,rn=PA(cn,Mn,On,cl),Pt=bn+Pt|0,Pt=(an=rn+an|0)>>>0>>0?Pt+1|0:Pt,rn=PA(Gn,fn,Jn,jn),Pt=bn+Pt|0,Pt=(an=rn+an|0)>>>0>>0?Pt+1|0:Pt,Vn=PA(zn,Pn,Tn,il),rn=bn+Pt|0,rn=(an=Vn+an|0)>>>0>>0?rn+1|0:rn,Pt=(Vn=PA(Nn,Hn,Al,al))+an|0,an=bn+rn|0,an=Pt>>>0>>0?an+1|0:an,rn=(Vn=PA(Un,dl,Wl,Gl))+Pt|0,Pt=bn+an|0,Pt=rn>>>0>>0?Pt+1|0:Pt,an=rn,rn=PA(Il,vl=Il>>31,Wn,Cn),Pt=bn+Pt|0,Pt=(an=an+rn|0)>>>0>>0?Pt+1|0:Pt,rn=PA(hn,Sn,Bn,ul),Pt=bn+Pt|0,Pt=(an=rn+an|0)>>>0>>0?Pt+1|0:Pt,Vn=(rn=an)+(an=PA(gn,Xn,An,Ln))|0,rn=bn+Pt|0,an=(Pt=on>>26)+(an=an>>>0>Vn>>>0?rn+1|0:rn)|0,Rn=rn=(on=(67108863&on)<<6|Rn>>>26)+Vn|0,Pt=an=rn>>>0>>0?an+1|0:an,Vn=rn=rn+16777216|0,on=Pt=rn>>>0<16777216?Pt+1|0:Pt,nn[en+76>>2]=Rn-(-33554432&rn),Pt=PA(Nn,Hn,yn,kn),an=bn,Rn=PA(dn,Fn,Tn,il),rn=bn+an|0,rn=(Pt=Rn+Pt|0)>>>0>>0?rn+1|0:rn,Rn=PA(cn,Mn,Un,dl),an=bn+rn|0,an=(Pt=Rn+Pt|0)>>>0>>0?an+1|0:an,rn=(Rn=PA(Wn,Cn,Jn,jn))+Pt|0,Pt=bn+an|0,Pt=rn>>>0>>0?Pt+1|0:Pt,an=rn,rn=PA(_n,hl,Bn,ul),Pt=bn+Pt|0,Pt=(an=an+rn|0)>>>0>>0?Pt+1|0:Pt,rn=PA(gn,Xn,un,ml),Pt=bn+Pt|0,Pt=(an=rn+an|0)>>>0>>0?Pt+1|0:Pt,an=(En=PA(En,tl,xn,pl))+an|0,rn=bn+Pt|0,Pt=(Yn=PA(pn,Qn,Yn,Dn))+an|0,an=bn+(an>>>0>>0?rn+1|0:rn)|0,rn=(hn=PA(hn,Sn,On,cl))+Pt|0,Pt=bn+(Pt>>>0>>0?an+1|0:an)|0,Pt=rn>>>0>>0?Pt+1|0:Pt,an=rn,rn=PA(Gn,fn,An,Ln),Pt=bn+Pt|0,Rn=an=an+rn|0,Pt=(Pt=an>>>0>>0?Pt+1|0:Pt)+(an=sn>>26)|0,hn=sn=Rn+(rn=(67108863&sn)<<6|gl>>>26)|0,Pt=rn>>>0>sn>>>0?Pt+1|0:Pt,Yn=an=sn+16777216|0,sn=rn=an>>>0<16777216?Pt+1|0:Pt,nn[en+60>>2]=hn-(-33554432&an),Pt=PA(yn,kn,el,ol),rn=bn,an=(hn=PA(dn,Fn,gn,Xn))+Pt|0,Pt=bn+rn|0,Pt=an>>>0>>0?Pt+1|0:Pt,rn=PA(pn,Qn,cn,Mn),Pt=bn+Pt|0,Pt=(an=rn+an|0)>>>0>>0?Pt+1|0:Pt,hn=PA(Jn,jn,wn,nl),rn=bn+Pt|0,rn=(an=hn+an|0)>>>0>>0?rn+1|0:rn,Pt=(hn=PA(Gn,fn,zn,Pn))+an|0,an=bn+rn|0,an=Pt>>>0>>0?an+1|0:an,rn=(hn=PA(Kn,ll,Al,al))+Pt|0,Pt=bn+an|0,Pt=rn>>>0>>0?Pt+1|0:Pt,an=rn,rn=PA(Nn,Hn,Wl,Gl),Pt=bn+Pt|0,Pt=(an=an+rn|0)>>>0>>0?Pt+1|0:Pt,rn=an,an=PA(qn,rl,Il,vl),Pt=bn+Pt|0,Pt=an>>>0>(rn=rn+an|0)>>>0?Pt+1|0:Pt,hn=an=El,an=(wn=PA(an,En=an>>31,Wn,Cn))+rn|0,rn=bn+Pt|0,Pt=(An=PA(An,Ln,$n,sl))+an|0,an=bn+(an>>>0>>0?rn+1|0:rn)|0,rn=Pt>>>0>>0?an+1|0:an,an=Pt,Pt=(Pt=on>>25)+rn|0,Pt=(an=an+(on=(33554431&on)<<7|Vn>>>25)|0)>>>0>>0?Pt+1|0:Pt,rn=an,An=an=an+33554432|0,on=Pt=an>>>0<33554432?Pt+1|0:Pt,nn[en+80>>2]=rn-(-67108864&an),an=sn>>25,rn=(sn=(33554431&sn)<<7|Yn>>>25)+(Rl-(Pt=-67108864&Fl)|0)|0,Pt=an+(wl-((Pt>>>0>Rl>>>0)+Ql|0)|0)|0,Pt=rn>>>0>>0?Pt+1|0:Pt,Pt=((67108863&(Pt=(an=rn+33554432|0)>>>0<33554432?Pt+1|0:Pt))<<6|an>>>26)+(wn=Nl-(-33554432&fl)|0)|0,nn[en+68>>2]=Pt,nn[en+64>>2]=rn-(-67108864&an),Pt=PA(gn,Xn,yn,kn),rn=bn,an=(sn=PA(dn,Fn,Bn,ul))+Pt|0,Pt=bn+rn|0,Pt=an>>>0>>0?Pt+1|0:Pt,rn=(sn=PA(cn,Mn,xn,pl))+an|0,an=bn+Pt|0,an=rn>>>0>>0?an+1|0:an,Pt=(sn=PA(pn,Qn,Jn,jn))+rn|0,rn=bn+an|0,rn=Pt>>>0>>0?rn+1|0:rn,an=(sn=PA(zn,Pn,On,cl))+Pt|0,Pt=bn+rn|0,Pt=an>>>0>>0?Pt+1|0:Pt,rn=PA(Gn,fn,Al,al),Pt=bn+Pt|0,Pt=(an=rn+an|0)>>>0>>0?Pt+1|0:Pt,rn=PA(Tn,il,Wl,Gl),Pt=bn+Pt|0,Pt=(an=rn+an|0)>>>0>>0?Pt+1|0:Pt,rn=(sn=PA(Nn,Hn,Il,vl))+an|0,an=bn+Pt|0,an=rn>>>0>>0?an+1|0:an,sn=(Pt=PA(hn,En,Un,dl))+rn|0,rn=bn+an|0,rn=Pt>>>0>sn>>>0?rn+1|0:rn,an=sn,sn=PA(Pt=Vl,Pt>>31,Wn,Cn),Pt=bn+rn|0,rn=an=an+sn|0,Pt=(Pt=an>>>0>>0?Pt+1|0:Pt)+(an=on>>26)|0,Pt=(rn=rn+(on=(67108863&on)<<6|An>>>26)|0)>>>0>>0?Pt+1|0:Pt,Pt=(an=rn+16777216|0)>>>0<16777216?Pt+1|0:Pt,nn[en+84>>2]=rn-(-33554432&an),on=vn-(-33554432&yl)|0,sn=Zn-(rn=-67108864&Zl)|0,dn=bl-((rn>>>0>Zn>>>0)+Hl|0)|0,Pt=PA((33554431&(rn=Pt))<<7|an>>>25,Pt>>=25,19,0),an=bn+dn|0,Pt=Pt>>>0>(rn=Pt+sn|0)>>>0?an+1|0:an,Pt=((67108863&(Pt=(an=rn+33554432|0)>>>0<33554432?Pt+1|0:Pt))<<6|an>>>26)+on|0,nn[en+52>>2]=Pt,nn[en+48>>2]=rn-(-67108864&an),eA(Wt,en+48|0))}return mn=en+256|0,0|Yl},sc:function(Wt,Pt){Wt|=0;var en,rn=0;return mn=en=mn+-64|0,FA(en,Pt|=0,32,0),tn[0|en]=248&an[0|en],tn[en+31|0]=63&an[en+31|0]|64,Pt=nn[en+20>>2],rn=nn[en+16>>2],tn[Wt+16|0]=rn,tn[Wt+17|0]=rn>>>8,tn[Wt+18|0]=rn>>>16,tn[Wt+19|0]=rn>>>24,tn[Wt+20|0]=Pt,tn[Wt+21|0]=Pt>>>8,tn[Wt+22|0]=Pt>>>16,tn[Wt+23|0]=Pt>>>24,Pt=nn[en+12>>2],rn=nn[en+8>>2],tn[Wt+8|0]=rn,tn[Wt+9|0]=rn>>>8,tn[Wt+10|0]=rn>>>16,tn[Wt+11|0]=rn>>>24,tn[Wt+12|0]=Pt,tn[Wt+13|0]=Pt>>>8,tn[Wt+14|0]=Pt>>>16,tn[Wt+15|0]=Pt>>>24,Pt=nn[en+4>>2],rn=nn[en>>2],tn[0|Wt]=rn,tn[Wt+1|0]=rn>>>8,tn[Wt+2|0]=rn>>>16,tn[Wt+3|0]=rn>>>24,tn[Wt+4|0]=Pt,tn[Wt+5|0]=Pt>>>8,tn[Wt+6|0]=Pt>>>16,tn[Wt+7|0]=Pt>>>24,Pt=nn[en+28>>2],rn=nn[en+24>>2],tn[Wt+24|0]=rn,tn[Wt+25|0]=rn>>>8,tn[Wt+26|0]=rn>>>16,tn[Wt+27|0]=rn>>>24,tn[Wt+28|0]=Pt,tn[Wt+29|0]=Pt>>>8,tn[Wt+30|0]=Pt>>>16,tn[Wt+31|0]=Pt>>>24,MI(en,64),mn=en- -64|0,0},tc:function(){var Wt,Pt;return mn=Wt=mn-16|0,tn[Wt+15|0]=0,Pt=0|cn(36304,Wt+15|0,0),mn=Wt+16|0,0|Pt},uc:QI,vc:function(Wt){var Pt,en=0,nn=0;if(mn=Pt=mn-16|0,(Wt|=0)>>>0>=2){for(en=(0-Wt>>>0)%(Wt>>>0)|0;tn[Pt+15|0]=0,en>>>0>(nn=0|cn(36304,Pt+15|0,0))>>>0;);en=(nn>>>0)%(Wt>>>0)|0}return mn=Pt+16|0,0|en},wc:LA,xc:function(Wt,Pt,en){eI(Wt|=0,Pt|=0,33888,en|=0)},yc:_I,zc:function(){var Wt=0,Pt=0;return(Wt=nn[9414])&&(Wt=nn[Wt+20>>2])&&(Pt=0|hn[0|Wt]()),0|Pt},Ac:function(Wt,Pt,en){Wt|=0,Pt|=0;var nn,an=0,rn=0,In=0;if(mn=nn=mn-16|0,en|=0)dn(1228,1088,198,1024),Q();else{if(Pt|en)for(;tn[nn+15|0]=0,rn=Wt+an|0,In=0|cn(36304,nn+15|0,0),tn[0|rn]=In,(0|Pt)!=(0|(an=an+1|0)););mn=nn+16|0}},Bc:function(Wt,Pt,en,nn){Wt|=0,en|=0;var rn=0,In=0,sn=0;if(!((nn|=0)>>>0>2147483646|nn<<1>>>0>=(Pt|=0)>>>0)){if(Pt=0,nn){for(;rn=(Pt<<1)+Wt|0,In=15&(sn=an[Pt+en|0]),tn[rn+1|0]=22272+((In<<8)+(In+65526&55552)|0)>>>8,In=rn,rn=sn>>>4|0,tn[0|In]=87+((rn+65526>>>8&217)+rn|0),(0|nn)!=(0|(Pt=Pt+1|0)););Pt=nn<<1}else Pt=0;return tn[Pt+Wt|0]=0,0|Wt}iI(),Q()},Cc:function(Wt,Pt,en,rn,In,sn,on){Wt|=0,Pt|=0,en|=0,In|=0,sn|=0,on|=0;var cn=0,dn=0,un=0,pn=0,mn=0,bn=0,Gn=0,hn=0,Zn=0;e:{t:{n:{l:{a:{r:{I:{s:{o:{if(rn|=0){if(In)break o;for(dn=1,In=0;;){if(!(255&((Gn=(65526+(un=(223&(mn=an[en+cn|0]))-55&255)^un+65520)>>>8|0)|(hn=65526+(mn^=48)>>>8|0))))break I;if(Pt>>>0<=bn>>>0)break s;if(un=un&Gn|mn&hn,255&pn?(tn[Wt+bn|0]=In|un,bn=bn+1|0):In=un<<4,pn=~pn,(0|(cn=cn+1|0))==(0|rn))break}cn=rn;break I}if(Wt=0,!on)break e;break n}for(;;){o:{c:{i:{d:{u:{if(!(255&((mn=(65526+(dn=(223&(un=an[en+cn|0]))-55&255)^dn+65520)>>>8|0)|(hn=65526+(Gn=48^un)>>>8|0)))){if(255&pn)break r;if(dn=0,!hA(In,un))break l;if((cn=pn=cn+1|0)>>>0>>0)break u;break l}if(Pt>>>0<=bn>>>0)break s;if(dn=dn&mn|Gn&hn,!(255&pn))break d;tn[Wt+bn|0]=dn|Zn,bn=bn+1|0;break o}for(;;){if(!(255&((Gn=(65526+(mn=(223&(un=an[en+cn|0]))-55&255)^mn+65520)>>>8|0)|(Zn=65526+(hn=48^un)>>>8|0)))){if(!hA(In,un))break l;if((cn=cn+1|0)>>>0>>0)continue;break i}break}if(Pt>>>0<=bn>>>0)break c;dn=mn&Gn|hn&Zn}Zn=dn<<4,pn=0;break o}cn=rn>>>0>pn>>>0?rn:pn;break l}pn=0;break s}if(pn=~pn,dn=1,!((cn=cn+1|0)>>>0>>0))break}break I}nn[9280]=68,dn=0}if(!(255&pn))break a}nn[9280]=28,dn=-1,cn=cn-1|0,bn=0;break l}bn=dn?bn:0,dn=dn-1|0}if(!on){if((0|rn)!=(0|cn))break t;Wt=dn;break e}}nn[on>>2]=en+cn,Wt=dn;break e}nn[9280]=28,Wt=-1}return sn&&(nn[sn>>2]=bn),0|Wt},Dc:function(Wt,Pt){Wt|=0;var en=0;return 1!=(-7&(Pt|=0))&&(iI(),Q()),1+((3&(en=(en=Wt)+In(Wt=(Wt>>>0)/3|0,-3)|0)?2&Pt?en+1|0:4:0)+(Wt<<2)|0)|0},Ec:function(Wt,Pt,en,nn,rn){Wt|=0,Pt|=0,en|=0,nn|=0;var sn=0,on=0,cn=0,un=0,pn=0,mn=0,bn=0;e:{t:{n:{l:{a:{r:{I:{if(1==(-7&(rn|=0))&&(cn=(sn=(nn>>>0)/3|0)<<2,(sn=In(sn,-3)+nn|0)&&(cn=2&rn?2+((sn>>>1|0)+cn|0)|0:cn+4|0),!(Pt>>>0<=cn>>>0))){if(!(rn>>>0>=4)){if(!nn){rn=0;break l}sn=0,rn=0;break I}if(!nn){rn=0;break l}for(sn=0,rn=0;;){for(pn=an[en+un|0]|pn<<8,sn|=8;mn=65510+(on=pn>>>(sn=sn-6|0)&63)>>>8|0,bn=on+65484>>>8|0,tn[Wt+rn|0]=~(1+(16321^on))>>>8&45|on+252&on+65474>>>8&~bn|~(on+32705)>>>8&95|mn&on+65|bn&on+71&~mn,rn=rn+1|0,sn>>>0>5;);if((0|(un=un+1|0))==(0|nn))break}if(!sn)break a;un=45,on=32705,nn=95;break r}iI(),Q()}for(;;){for(pn=an[en+un|0]|pn<<8,sn|=8;mn=65510+(on=pn>>>(sn=sn-6|0)&63)>>>8|0,bn=on+65484>>>8|0,tn[Wt+rn|0]=~(1+(16321^on))>>>8&43|on+252&on+65474>>>8&~bn|~(on+16321)>>>8&47|mn&on+65|bn&on+71&~mn,rn=rn+1|0,sn>>>0>5;);if((0|(un=un+1|0))==(0|nn))break}if(!sn)break a;un=43,on=16321,nn=47}on=~((en=pn<<6-sn&63)+on)>>>8&nn|(sn=en+65510>>>8|0)&en+65,nn=en+65484>>>8|0,tn[Wt+rn|0]=~(1+(16321^en))>>>8&un|on|en+252&en+65474>>>8&~nn|nn&en+71&~sn,rn=rn+1|0}if(rn>>>0>cn>>>0)break n}if(rn>>>0>>0)break t;cn=rn;break e}dn(1036,1114,231,1300),Q()}VA(Wt+rn|0,61,cn-rn|0)}return VA(Wt+cn|0,0,(Pt>>>0>(en=cn+1|0)>>>0?Pt:en)-cn|0),0|Wt},Fc:function(Wt,Pt,en,rn,In,sn,on,cn){Wt|=0,Pt|=0,en|=0,rn|=0,In|=0,sn|=0,on|=0;var dn=0,un=0,pn=0,mn=0,bn=0,Gn=0,hn=0,Zn=0;if(1==(-7&(cn|=0))){e:{t:{n:{l:{a:{r:{I:{if(rn){s:{o:{if(cn>>>0<=3){for(;;){mn=un;c:{i:{d:{u:{for(;;){if(dn=(dn=(pn=tn[en+mn|0])-65|0)&(~(90-pn)&~dn)>>>8&255|pn+4&(~(pn+65488)&~(57-pn))>>>8&255|pn+185&(~(pn+65439)&~(122-pn))>>>8&255|~(1+(16336^pn))>>>8&63|~(1+(16340^pn))>>>8&62,255!=(0|(dn|=(dn-1&1+(65470^pn))>>>8&255)))break u;if(dn=0,!In)break s;if(!hA(In,pn))break;if((mn=mn+1|0)>>>0>=rn>>>0)break d}un=mn;break s}if(hn=dn+(hn<<6)|0,bn>>>0>1)break i;bn=bn+6|0;break c}un=(Wt=un+1|0)>>>0>>0?rn:Wt;break s}if(bn=bn-2|0,Pt>>>0<=Gn>>>0)break o;tn[Wt+Gn|0]=hn>>>bn,Gn=Gn+1|0}if(dn=0,!((un=mn+1|0)>>>0>>0))break}break s}for(;;){c:{if(dn=(dn=(pn=tn[en+mn|0])-65|0)&(~(90-pn)&~dn)>>>8&255|pn+4&(~(pn+65488)&~(57-pn))>>>8&255|pn+185&(~(pn+65439)&~(122-pn))>>>8&255|~(1+(16288^pn))>>>8&63|~(1+(16338^pn))>>>8&62,255==(0|(dn|=(dn-1&1+(65470^pn))>>>8&255))){if(dn=0,!In)break s;if(hA(In,pn)){if((mn=mn+1|0)>>>0>=rn>>>0)break c;continue}un=mn;break s}if(hn=dn+(hn<<6)|0,bn>>>0<2)bn=bn+6|0;else{if(bn=bn-2|0,Pt>>>0<=Gn>>>0)break o;tn[Wt+Gn|0]=hn>>>bn,Gn=Gn+1|0}if(dn=0,(un=mn+1|0)>>>0>=rn>>>0)break s;mn=un;continue}break}un=(Wt=un+1|0)>>>0>>0?rn:Wt;break s}un=mn,nn[9280]=68,dn=1}if(bn>>>0>4)break I;Wt=un}else Wt=0;if(Pt=-1,dn){un=Wt;break e}if(~(-1<>>0<2){cn=Wt;break a}if(un=Wt>>>0>rn>>>0?Wt:rn,mn=bn>>>1|0,!In)break r;for(cn=Wt;;){if((0|cn)==(0|un)){dn=68;break l}if(61!=(0|(Wt=tn[en+cn|0]))){if(!hA(In,Wt)){dn=28,un=cn;break l}}else mn=mn-1|0;if(cn=cn+1|0,!mn)break}break a}Pt=-1;break e}if(dn=68,Wt>>>0>=rn>>>0)break l;if(61!=an[Wt+en|0]){un=Wt,dn=28;break l}if(cn=Wt+mn|0,1!=(0|mn)){if((0|(bn=Wt+1|0))==(0|un))break l;if(61!=an[en+bn|0]){un=bn,dn=28;break l}if(2!=(0|mn)){if((0|(Wt=Wt+2|0))==(0|un))break l;if(dn=28,un=Wt,61!=an[Wt+en|0])break l}}}if(Pt=0,In)break n;break t}nn[9280]=dn;break e}if(!(rn>>>0<=cn>>>0)){for(;;){if(!hA(In,tn[en+cn|0]))break t;if((0|(cn=cn+1|0))==(0|rn))break}cn=rn}}un=cn,Zn=Gn}return on?nn[on>>2]=en+un:(0|rn)!=(0|un)&&(nn[9280]=28,Pt=-1),sn&&(nn[sn>>2]=Zn),0|Pt}iI(),Q()},Gc:function(){var Wt=0;return nn[9412]?Wt=1:(QI(),LA(37632,16),nn[9412]=1,Wt=0),0|Wt},Hc:function(Wt,Pt,en,rn,In){Wt|=0,Pt|=0,en|=0,In|=0;var sn,on=0,cn=0,dn=0;mn=sn=mn-16|0;e:{if(rn|=0){if((on=rn-1|0)&rn?(cn=~en,on=on-((en>>>0)%(rn>>>0)|0)|0):on&=cn=~en,on>>>0>=cn>>>0)break e;if((en=en+on|0)>>>0>=In>>>0)Pt=-1;else for(Wt&&(nn[Wt>>2]=en+1),Wt=Pt+en|0,Pt=0,tn[sn+15|0]=0,en=0;cn=In=Wt-en|0,dn=an[0|In]&an[sn+15|0],In=(en^on)-1>>>24|0,tn[0|cn]=dn|128&In,tn[sn+15|0]=In|an[sn+15|0],(0|rn)!=(0|(en=en+1|0)););}else Pt=-1;return mn=sn+16|0,0|Pt}iI(),Q()},Ic:function(Wt,Pt,en,tn){Wt|=0,Pt|=0,en|=0,tn|=0;var rn,In=0,sn=0,on=0,cn=0,dn=0;if(nn[12+(rn=mn-16|0)>>2]=0,tn-1>>>0>>0){for(dn=(In=en-1|0)+Pt|0,en=0,Pt=0;cn=((128^(sn=an[dn-en|0]))-1&nn[rn+12>>2]-1&on-1)>>>8&1,nn[rn+12>>2]=nn[rn+12>>2]|0-cn&en,Pt|=cn,on|=sn,(0|tn)!=(0|(en=en+1|0)););nn[Wt>>2]=In-nn[rn+12>>2],Wt=(255&Pt)-1|0}else Wt=-1;return 0|Wt},Jc:function(){return 1318},Kc:function(){return 26},Lc:bI,Mc:dI,Nc:function(Wt){var Pt,en=0,tn=0,In=0,on=0,cn=0,dn=0,un=0,pn=0,bn=0,Gn=0,hn=0,Zn=0;mn=Pt=mn-16|0;e:{t:{n:{l:{a:{r:{I:{s:{o:{c:{if((Wt|=0)>>>0<=244){if(3&(en=(on=nn[9281])>>>(Wt=(un=Wt>>>0<11?16:Wt+11&504)>>>3|0)|0)){Wt=37164+(en=(tn=Wt+(1&~en)|0)<<3)|0,en=nn[en+37172>>2],(0|Wt)!=(0|(In=nn[en+8>>2]))?(nn[In+12>>2]=Wt,nn[Wt+8>>2]=In):(hn=37124,Zn=gI(-2,tn)&on,nn[hn>>2]=Zn),Wt=en+8|0,tn<<=3,nn[en+4>>2]=3|tn,nn[4+(en=en+tn|0)>>2]=1|nn[en+4>>2];break e}if((pn=nn[9283])>>>0>=un>>>0)break c;if(en){en=37164+(tn=(Wt=aI((0-(tn=2<>2],(0|en)!=(0|(In=nn[tn+8>>2]))?(nn[In+12>>2]=en,nn[en+8>>2]=In):(on=gI(-2,Wt)&on,nn[9281]=on),nn[tn+4>>2]=3|un,cn=(Wt<<=3)-un|0,nn[4+(dn=tn+un|0)>>2]=1|cn,nn[Wt+tn>>2]=cn,pn&&(Wt=37164+(-8&pn)|0,In=nn[9286],(en=1<<(pn>>>3))&on?en=nn[Wt+8>>2]:(nn[9281]=en|on,en=Wt),nn[Wt+8>>2]=In,nn[en+12>>2]=In,nn[In+12>>2]=Wt,nn[In+8>>2]=en),Wt=tn+8|0,nn[9286]=dn,nn[9283]=cn;break e}if(!(Gn=nn[9282]))break c;for(tn=nn[37428+(aI(Gn)<<2)>>2],cn=(-8&nn[tn+4>>2])-un|0,en=tn;(Wt=nn[en+16>>2])||(Wt=nn[en+20>>2]);)cn=(en=(In=(-8&nn[Wt+4>>2])-un|0)>>>0>>0)?In:cn,tn=en?Wt:tn,en=Wt;if(bn=nn[tn+24>>2],(0|tn)!=(0|(Wt=nn[tn+12>>2]))){en=nn[tn+8>>2],nn[en+12>>2]=Wt,nn[Wt+8>>2]=en;break t}if(en=nn[tn+20>>2])In=tn+20|0;else{if(!(en=nn[tn+16>>2]))break o;In=tn+16|0}for(;dn=In,In=(Wt=en)+20|0,(en=nn[Wt+20>>2])||(In=Wt+16|0,en=nn[Wt+16>>2]););nn[dn>>2]=0;break t}if(un=-1,!(Wt>>>0>4294967231)&&(un=-8&(en=Wt+11|0),dn=nn[9282])){pn=31,cn=0-un|0,Wt>>>0<=16777204&&(pn=62+((un>>>38-(Wt=sn(en>>>8|0))&1)-(Wt<<1)|0)|0);i:{d:{if(en=nn[37428+(pn<<2)>>2])for(Wt=0,tn=un<<(31!=(0|pn)?25-(pn>>>1|0):0);;){if(!((on=(-8&nn[en+4>>2])-un|0)>>>0>=cn>>>0||(In=en,cn=on))){cn=0,Wt=en;break d}if(on=nn[en+20>>2],en=nn[16+((tn>>>29&4)+en|0)>>2],Wt=on?(0|on)==(0|en)?Wt:on:Wt,tn<<=1,!en)break}else Wt=0;if(!(Wt|In)){if(In=0,!(Wt=(0-(Wt=2<>2]}if(!Wt)break i}for(;cn=(en=(tn=(-8&nn[Wt+4>>2])-un|0)>>>0>>0)?tn:cn,In=en?Wt:In,Wt=(en=nn[Wt+16>>2])||nn[Wt+20>>2];);}if(!(!In|nn[9283]-un>>>0<=cn>>>0)){if(pn=nn[In+24>>2],(0|In)!=(0|(Wt=nn[In+12>>2]))){en=nn[In+8>>2],nn[en+12>>2]=Wt,nn[Wt+8>>2]=en;break n}if(en=nn[In+20>>2])tn=In+20|0;else{if(!(en=nn[In+16>>2]))break s;tn=In+16|0}for(;on=tn,tn=(Wt=en)+20|0,(en=nn[Wt+20>>2])||(tn=Wt+16|0,en=nn[Wt+16>>2]););nn[on>>2]=0;break n}}}if((In=nn[9283])>>>0>=un>>>0){Wt=nn[9286],(en=In-un|0)>>>0>=16?(nn[4+(tn=Wt+un|0)>>2]=1|en,nn[Wt+In>>2]=en,nn[Wt+4>>2]=3|un):(nn[Wt+4>>2]=3|In,nn[4+(en=Wt+In|0)>>2]=1|nn[en+4>>2],tn=0,en=0),nn[9283]=en,nn[9286]=tn,Wt=Wt+8|0;break e}if((tn=nn[9284])>>>0>un>>>0){en=tn-un|0,nn[9284]=en,tn=(Wt=nn[9287])+un|0,nn[9287]=tn,nn[tn+4>>2]=1|en,nn[Wt+4>>2]=3|un,Wt=Wt+8|0;break e}if(Wt=0,cn=un+47|0,nn[9399]?en=nn[9401]:(nn[9402]=-1,nn[9403]=-1,nn[9400]=4096,nn[9401]=4096,nn[9399]=Pt+12&-16^1431655768,nn[9404]=0,nn[9392]=0,en=4096),(en=(on=cn+en|0)&(dn=0-en|0))>>>0<=un>>>0)break e;if((pn=nn[9391])&&(In=(bn=nn[9389])+en|0)>>>0<=bn>>>0|In>>>0>pn>>>0)break e;c:{if(!(4&an[37568])){i:{d:{u:{p:{if(In=nn[9287])for(Wt=37572;;){if((pn=nn[Wt>>2])>>>0<=In>>>0&In>>>0>2]>>>0)break p;if(!(Wt=nn[Wt+8>>2]))break}if(-1==(0|(tn=uA(0))))break i;if(on=en,(In=(Wt=nn[9400])-1|0)&tn&&(on=(en-tn|0)+(tn+In&0-Wt)|0),on>>>0<=un>>>0)break i;if((In=nn[9391])&&(Wt=(dn=nn[9389])+on|0)>>>0<=dn>>>0|Wt>>>0>In>>>0)break i;if((0|tn)!=(0|(Wt=uA(on))))break u;break c}if((0|(tn=uA(on=dn&on-tn)))==(nn[Wt>>2]+nn[Wt+4>>2]|0))break d;Wt=tn}if(-1==(0|Wt))break i;if(un+48>>>0<=on>>>0){tn=Wt;break c}if(-1==(0|uA(tn=(tn=nn[9401])+(cn-on|0)&0-tn)))break i;on=tn+on|0,tn=Wt;break c}if(-1!=(0|tn))break c}nn[9392]=4|nn[9392]}if(-1==(0|(tn=uA(en)))|-1==(0|(Wt=uA(0)))|Wt>>>0<=tn>>>0)break a;if((on=Wt-tn|0)>>>0<=un+40>>>0)break a}Wt=nn[9389]+on|0,nn[9389]=Wt,Wt>>>0>rn[9390]&&(nn[9390]=Wt);c:{if(cn=nn[9287]){for(Wt=37572;;){if(((en=nn[Wt>>2])+(In=nn[Wt+4>>2])|0)==(0|tn))break c;if(!(Wt=nn[Wt+8>>2]))break}break I}for((Wt=nn[9285])>>>0<=tn>>>0&&Wt||(nn[9285]=tn),Wt=0,nn[9394]=on,nn[9393]=tn,nn[9289]=-1,nn[9290]=nn[9399],nn[9396]=0;In=37164+(en=Wt<<3)|0,nn[en+37172>>2]=In,nn[en+37176>>2]=In,32!=(0|(Wt=Wt+1|0)););In=(Wt=on-40|0)-(en=-8-tn&7)|0,nn[9284]=In,en=en+tn|0,nn[9287]=en,nn[en+4>>2]=1|In,nn[4+(Wt+tn|0)>>2]=40,nn[9288]=nn[9403];break r}if(8&nn[Wt+12>>2]|tn>>>0<=cn>>>0|en>>>0>cn>>>0)break I;nn[Wt+4>>2]=In+on,en=(Wt=-8-cn&7)+cn|0,nn[9287]=en,Wt=(tn=nn[9284]+on|0)-Wt|0,nn[9284]=Wt,nn[en+4>>2]=1|Wt,nn[4+(tn+cn|0)>>2]=40,nn[9288]=nn[9403];break r}Wt=0;break t}Wt=0;break n}rn[9285]>tn>>>0&&(nn[9285]=tn),In=tn+on|0,Wt=37572;I:{for(;;){if((0|(en=nn[Wt>>2]))!=(0|In)){if(Wt=nn[Wt+8>>2])continue;break I}break}if(!(8&an[Wt+12|0]))break l}for(Wt=37572;!((en=nn[Wt>>2])>>>0<=cn>>>0&&(In=en+nn[Wt+4>>2]|0)>>>0>cn>>>0);)Wt=nn[Wt+8>>2];for(dn=(Wt=on-40|0)-(en=-8-tn&7)|0,nn[9284]=dn,en=en+tn|0,nn[9287]=en,nn[en+4>>2]=1|dn,nn[4+(Wt+tn|0)>>2]=40,nn[9288]=nn[9403],nn[(en=(Wt=(In+(39-In&7)|0)-47|0)>>>0>>0?cn:Wt)+4>>2]=27,Wt=nn[9396],nn[en+16>>2]=nn[9395],nn[en+20>>2]=Wt,Wt=nn[9394],nn[en+8>>2]=nn[9393],nn[en+12>>2]=Wt,nn[9395]=en+8,nn[9394]=on,nn[9393]=tn,nn[9396]=0,Wt=en+24|0;nn[Wt+4>>2]=7,tn=Wt+8|0,Wt=Wt+4|0,tn>>>0>>0;);if((0|en)!=(0|cn)){nn[en+4>>2]=-2&nn[en+4>>2],tn=en-cn|0,nn[cn+4>>2]=1|tn,nn[en>>2]=tn;I:if(tn>>>0<=255)Wt=37164+(-8&tn)|0,(en=nn[9281])&(tn=1<<(tn>>>3))?en=nn[Wt+8>>2]:(nn[9281]=en|tn,en=Wt),nn[Wt+8>>2]=cn,nn[en+12>>2]=cn,In=8,tn=12;else{Wt=31,tn>>>0<=16777215&&(Wt=62+((tn>>>38-(Wt=sn(tn>>>8|0))&1)-(Wt<<1)|0)|0),nn[cn+28>>2]=Wt,nn[cn+16>>2]=0,nn[cn+20>>2]=0,en=37428+(Wt<<2)|0;s:{if((In=nn[9282])&(on=1<>>1|0):0),In=nn[en>>2];;){if((0|tn)==(-8&nn[(en=In)+4>>2]))break s;if(In=Wt>>>29|0,Wt<<=1,!(In=nn[16+(on=(4&In)+en|0)>>2]))break}nn[on+16>>2]=cn}else nn[9282]=In|on,nn[en>>2]=cn;nn[cn+24>>2]=en,Wt=en=cn,In=12,tn=8;break I}Wt=nn[en+8>>2],nn[Wt+12>>2]=cn,nn[en+8>>2]=cn,nn[cn+8>>2]=Wt,Wt=0,In=12,tn=24}nn[In+cn>>2]=en,nn[tn+cn>>2]=Wt}}if(!((Wt=nn[9284])>>>0<=un>>>0)){en=Wt-un|0,nn[9284]=en,tn=(Wt=nn[9287])+un|0,nn[9287]=tn,nn[tn+4>>2]=1|en,nn[Wt+4>>2]=3|un,Wt=Wt+8|0;break e}}nn[9280]=48,Wt=0;break e}nn[Wt>>2]=tn,nn[Wt+4>>2]=nn[Wt+4>>2]+on,nn[4+(pn=(-8-tn&7)+tn|0)>>2]=3|un,dn=(on=en+(-8-en&7)|0)-(cn=un+pn|0)|0;l:if(nn[9287]!=(0|on))if(nn[9286]!=(0|on)){if(1==(3&(Wt=nn[on+4>>2]))){bn=-8&Wt,tn=nn[on+12>>2];a:if(Wt>>>0<=255){if((0|(en=nn[on+8>>2]))==(0|tn)){hn=37124,Zn=nn[9281]&gI(-2,Wt>>>3|0),nn[hn>>2]=Zn;break a}nn[en+12>>2]=tn,nn[tn+8>>2]=en}else{un=nn[on+24>>2];r:if((0|tn)==(0|on)){I:{if(Wt=nn[on+20>>2])en=on+20|0;else{if(!(Wt=nn[on+16>>2]))break I;en=on+16|0}for(;In=en,tn=Wt,en=Wt+20|0,(Wt=nn[Wt+20>>2])||(en=tn+16|0,Wt=nn[tn+16>>2]););nn[In>>2]=0;break r}tn=0}else Wt=nn[on+8>>2],nn[Wt+12>>2]=tn,nn[tn+8>>2]=Wt;if(un){Wt=nn[on+28>>2];r:{if(nn[(en=37428+(Wt<<2)|0)>>2]==(0|on)){if(nn[en>>2]=tn,tn)break r;hn=37128,Zn=nn[9282]&gI(-2,Wt),nn[hn>>2]=Zn;break a}if(nn[un+(nn[un+16>>2]==(0|on)?16:20)>>2]=tn,!tn)break a}nn[tn+24>>2]=un,(Wt=nn[on+16>>2])&&(nn[tn+16>>2]=Wt,nn[Wt+24>>2]=tn),(Wt=nn[on+20>>2])&&(nn[tn+20>>2]=Wt,nn[Wt+24>>2]=tn)}}dn=dn+bn|0,Wt=nn[4+(on=on+bn|0)>>2]}if(nn[on+4>>2]=-2&Wt,nn[cn+4>>2]=1|dn,nn[cn+dn>>2]=dn,dn>>>0<=255)Wt=37164+(-8&dn)|0,(en=nn[9281])&(tn=1<<(dn>>>3))?en=nn[Wt+8>>2]:(nn[9281]=en|tn,en=Wt),nn[Wt+8>>2]=cn,nn[en+12>>2]=cn,nn[cn+12>>2]=Wt,nn[cn+8>>2]=en;else{tn=31,dn>>>0<=16777215&&(tn=62+((dn>>>38-(Wt=sn(dn>>>8|0))&1)-(Wt<<1)|0)|0),nn[cn+28>>2]=tn,nn[cn+16>>2]=0,nn[cn+20>>2]=0,Wt=37428+(tn<<2)|0;a:{if((en=nn[9282])&(In=1<>>1|0):0),en=nn[Wt>>2];;){if((-8&nn[(Wt=en)+4>>2])==(0|dn))break a;if(en=tn>>>29|0,tn<<=1,!(en=nn[16+(In=(4&en)+Wt|0)>>2]))break}nn[In+16>>2]=cn}else nn[9282]=en|In,nn[Wt>>2]=cn;nn[cn+24>>2]=Wt,nn[cn+12>>2]=cn,nn[cn+8>>2]=cn;break l}en=nn[Wt+8>>2],nn[en+12>>2]=cn,nn[Wt+8>>2]=cn,nn[cn+24>>2]=0,nn[cn+12>>2]=Wt,nn[cn+8>>2]=en}}else nn[9286]=cn,Wt=nn[9283]+dn|0,nn[9283]=Wt,nn[cn+4>>2]=1|Wt,nn[Wt+cn>>2]=Wt;else nn[9287]=cn,Wt=nn[9284]+dn|0,nn[9284]=Wt,nn[cn+4>>2]=1|Wt;Wt=pn+8|0;break e}n:if(pn){en=nn[In+28>>2];l:{if(nn[(tn=37428+(en<<2)|0)>>2]==(0|In)){if(nn[tn>>2]=Wt,Wt)break l;dn=gI(-2,en)&dn,nn[9282]=dn;break n}if(nn[pn+(nn[pn+16>>2]==(0|In)?16:20)>>2]=Wt,!Wt)break n}nn[Wt+24>>2]=pn,(en=nn[In+16>>2])&&(nn[Wt+16>>2]=en,nn[en+24>>2]=Wt),(en=nn[In+20>>2])&&(nn[Wt+20>>2]=en,nn[en+24>>2]=Wt)}n:if(cn>>>0<=15)Wt=cn+un|0,nn[In+4>>2]=3|Wt,nn[4+(Wt=Wt+In|0)>>2]=1|nn[Wt+4>>2];else if(nn[In+4>>2]=3|un,nn[4+(on=In+un|0)>>2]=1|cn,nn[cn+on>>2]=cn,cn>>>0<=255)Wt=37164+(-8&cn)|0,(en=nn[9281])&(tn=1<<(cn>>>3))?en=nn[Wt+8>>2]:(nn[9281]=en|tn,en=Wt),nn[Wt+8>>2]=on,nn[en+12>>2]=on,nn[on+12>>2]=Wt,nn[on+8>>2]=en;else{Wt=31,cn>>>0<=16777215&&(Wt=62+((cn>>>38-(Wt=sn(cn>>>8|0))&1)-(Wt<<1)|0)|0),nn[on+28>>2]=Wt,nn[on+16>>2]=0,nn[on+20>>2]=0,en=37428+(Wt<<2)|0;l:{if((tn=1<>>1|0):0),en=nn[en>>2];;){if(tn=en,(-8&nn[en+4>>2])==(0|cn))break l;if(dn=Wt>>>29|0,Wt<<=1,!(en=nn[16+(dn=en+(4&dn)|0)>>2]))break}nn[dn+16>>2]=on,nn[on+24>>2]=tn}else nn[9282]=tn|dn,nn[en>>2]=on,nn[on+24>>2]=en;nn[on+12>>2]=on,nn[on+8>>2]=on;break n}Wt=nn[tn+8>>2],nn[Wt+12>>2]=on,nn[tn+8>>2]=on,nn[on+24>>2]=0,nn[on+12>>2]=tn,nn[on+8>>2]=Wt}Wt=In+8|0;break e}t:if(bn){en=nn[tn+28>>2];n:{if(nn[(In=37428+(en<<2)|0)>>2]==(0|tn)){if(nn[In>>2]=Wt,Wt)break n;hn=37128,Zn=gI(-2,en)&Gn,nn[hn>>2]=Zn;break t}if(nn[bn+(nn[bn+16>>2]==(0|tn)?16:20)>>2]=Wt,!Wt)break t}nn[Wt+24>>2]=bn,(en=nn[tn+16>>2])&&(nn[Wt+16>>2]=en,nn[en+24>>2]=Wt),(en=nn[tn+20>>2])&&(nn[Wt+20>>2]=en,nn[en+24>>2]=Wt)}cn>>>0<=15?(Wt=cn+un|0,nn[tn+4>>2]=3|Wt,nn[4+(Wt=Wt+tn|0)>>2]=1|nn[Wt+4>>2]):(nn[tn+4>>2]=3|un,nn[4+(dn=tn+un|0)>>2]=1|cn,nn[cn+dn>>2]=cn,pn&&(Wt=37164+(-8&pn)|0,In=nn[9286],(en=1<<(pn>>>3))&on?en=nn[Wt+8>>2]:(nn[9281]=en|on,en=Wt),nn[Wt+8>>2]=In,nn[en+12>>2]=In,nn[In+12>>2]=Wt,nn[In+8>>2]=en),nn[9286]=dn,nn[9283]=cn),Wt=tn+8|0}return mn=Pt+16|0,0|Wt},Oc:function(Wt){var Pt=0,en=0,tn=0,an=0,In=0,on=0,cn=0,dn=0,un=0;e:if(Wt|=0){In=(tn=Wt-8|0)+(Wt=-8&(Pt=nn[Wt-4>>2]))|0;t:if(!(1&Pt)){if(!(2&Pt))break e;if((tn=tn-(Pt=nn[tn>>2])|0)>>>0>2],Pt>>>0<=255){if((0|(an=nn[tn+8>>2]))!=(0|en))break a;dn=37124,un=nn[9281]&gI(-2,Pt>>>3|0),nn[dn>>2]=un;break t}if(cn=nn[tn+24>>2],(0|en)!=(0|tn)){Pt=nn[tn+8>>2],nn[Pt+12>>2]=en,nn[en+8>>2]=Pt;break n}if(an=nn[tn+20>>2])Pt=tn+20|0;else{if(!(an=nn[tn+16>>2]))break l;Pt=tn+16|0}for(;on=Pt,Pt=(en=an)+20|0,(an=nn[en+20>>2])||(Pt=en+16|0,an=nn[en+16>>2]););nn[on>>2]=0;break n}if(3&~(Pt=nn[In+4>>2]))break t;return nn[9283]=Wt,nn[In+4>>2]=-2&Pt,nn[tn+4>>2]=1|Wt,void(nn[In>>2]=Wt)}nn[an+12>>2]=en,nn[en+8>>2]=an;break t}en=0}if(cn){Pt=nn[tn+28>>2];n:{if(nn[(an=37428+(Pt<<2)|0)>>2]==(0|tn)){if(nn[an>>2]=en,en)break n;dn=37128,un=nn[9282]&gI(-2,Pt),nn[dn>>2]=un;break t}if(nn[cn+(nn[cn+16>>2]==(0|tn)?16:20)>>2]=en,!en)break t}nn[en+24>>2]=cn,(Pt=nn[tn+16>>2])&&(nn[en+16>>2]=Pt,nn[Pt+24>>2]=en),(Pt=nn[tn+20>>2])&&(nn[en+20>>2]=Pt,nn[Pt+24>>2]=en)}}if(!(tn>>>0>=In>>>0)&&1&(Pt=nn[In+4>>2])){t:{n:{l:{a:{if(!(2&Pt)){if((0|In)==nn[9287]){if(nn[9287]=tn,Wt=nn[9284]+Wt|0,nn[9284]=Wt,nn[tn+4>>2]=1|Wt,nn[9286]!=(0|tn))break e;return nn[9283]=0,void(nn[9286]=0)}if((0|In)==nn[9286])return nn[9286]=tn,Wt=nn[9283]+Wt|0,nn[9283]=Wt,nn[tn+4>>2]=1|Wt,void(nn[Wt+tn>>2]=Wt);if(Wt=(-8&Pt)+Wt|0,en=nn[In+12>>2],Pt>>>0<=255){if((0|(an=nn[In+8>>2]))==(0|en)){dn=37124,un=nn[9281]&gI(-2,Pt>>>3|0),nn[dn>>2]=un;break n}nn[an+12>>2]=en,nn[en+8>>2]=an;break n}if(cn=nn[In+24>>2],(0|en)!=(0|In)){Pt=nn[In+8>>2],nn[Pt+12>>2]=en,nn[en+8>>2]=Pt;break l}if(an=nn[In+20>>2])Pt=In+20|0;else{if(!(an=nn[In+16>>2]))break a;Pt=In+16|0}for(;on=Pt,Pt=(en=an)+20|0,(an=nn[en+20>>2])||(Pt=en+16|0,an=nn[en+16>>2]););nn[on>>2]=0;break l}nn[In+4>>2]=-2&Pt,nn[tn+4>>2]=1|Wt,nn[Wt+tn>>2]=Wt;break t}en=0}if(cn){Pt=nn[In+28>>2];l:{if((0|In)==nn[(an=37428+(Pt<<2)|0)>>2]){if(nn[an>>2]=en,en)break l;dn=37128,un=nn[9282]&gI(-2,Pt),nn[dn>>2]=un;break n}if(nn[cn+((0|In)==nn[cn+16>>2]?16:20)>>2]=en,!en)break n}nn[en+24>>2]=cn,(Pt=nn[In+16>>2])&&(nn[en+16>>2]=Pt,nn[Pt+24>>2]=en),(Pt=nn[In+20>>2])&&(nn[en+20>>2]=Pt,nn[Pt+24>>2]=en)}}if(nn[tn+4>>2]=1|Wt,nn[Wt+tn>>2]=Wt,nn[9286]==(0|tn))return void(nn[9283]=Wt)}if(Wt>>>0<=255)return Pt=37164+(-8&Wt)|0,(an=nn[9281])&(Wt=1<<(Wt>>>3))?Wt=nn[Pt+8>>2]:(nn[9281]=Wt|an,Wt=Pt),nn[Pt+8>>2]=tn,nn[Wt+12>>2]=tn,nn[tn+12>>2]=Pt,void(nn[tn+8>>2]=Wt);en=31,Wt>>>0<=16777215&&(en=62+((Wt>>>38-(Pt=sn(Wt>>>8|0))&1)-(Pt<<1)|0)|0),nn[tn+28>>2]=en,nn[tn+16>>2]=0,nn[tn+20>>2]=0,on=37428+(en<<2)|0;t:{n:{if((Pt=nn[9282])&(an=1<>>1|0):0),Pt=nn[on>>2];;){if(an=Pt,(-8&nn[Pt+4>>2])==(0|Wt))break n;if(Pt=en>>>29|0,en<<=1,!(Pt=nn[(on=16+((4&Pt)+an|0)|0)>>2]))break}en=24,Pt=an}else nn[9282]=Pt|an,en=24,Pt=on;an=tn,In=tn,Wt=8;break t}Pt=nn[an+8>>2],nn[Pt+12>>2]=tn,en=8,on=an+8|0,In=0,Wt=24}nn[on>>2]=tn,nn[en+tn>>2]=Pt,nn[tn+12>>2]=an,nn[Wt+tn>>2]=In,Wt=nn[9289]-1|0,nn[9289]=Wt||-1}}},Pc:hn}}(Wt)}(Pt)},instantiate:function(Wt,Pt){return{then:function(en){var tn=new hn.Module(Wt);en({instance:new hn.Instance(tn,Pt)})}}},RuntimeError:Error};mn=[];var Zn,An,Wn,Nn,gn,yn,vn,Yn=!1;function M(){var Wt=Gn.buffer;rn.HEAP8=Zn=new Int8Array(Wt),rn.HEAP16=Wn=new Int16Array(Wt),rn.HEAPU8=An=new Uint8Array(Wt),rn.HEAPU16=new Uint16Array(Wt),rn.HEAP32=Nn=new Int32Array(Wt),rn.HEAPU32=gn=new Uint32Array(Wt),rn.HEAPF32=yn=new Float32Array(Wt),rn.HEAPF64=vn=new Float64Array(Wt)}var En=[],Vn=[],Rn=[],wn=0,Fn=null,Qn=null;function J(Wt){throw rn.onAbort?.(Wt),bn(Wt="Aborted("+Wt+")"),Yn=!0,Wt+=". Build with -sASSERTIONS for more info.",new hn.RuntimeError(Wt)}var fn,U=Wt=>Wt.startsWith("file://");var Hn={36304:()=>rn.getRandomValue(),36340:()=>{if(void 0===rn.getRandomValue)try{var Wt="object"==typeof window?window:self,Pt=void 0!==Wt.crypto?Wt.crypto:Wt.msCrypto;Pt=void 0===Pt?tn:Pt;var g=function(){var Wt=new Uint32Array(1);return Pt.getRandomValues(Wt),Wt[0]>>>0};g(),rn.getRandomValue=g}catch(Wt){try{var tn=en(76982),Q=function(){var Wt=tn.randomBytes(4);return(Wt[0]<<24|Wt[1]<<16|Wt[2]<<8|Wt[3])>>>0};Q(),rn.getRandomValue=Q}catch(Wt){throw"No secure random number generator found"}}}},b=Wt=>{for(;Wt.length>0;)Wt.shift()(rn)};rn.noExitRuntime;var Cn,Xn="undefined"!=typeof TextDecoder?new TextDecoder:void 0,R=(Wt,Pt)=>Wt?((Wt,Pt,en)=>{for(var tn=Pt+en,nn=Pt;Wt[nn]&&!(nn>=tn);)++nn;if(nn-Pt>16&&Wt.buffer&&Xn)return Xn.decode(Wt.subarray(Pt,nn));for(var an="";Pt>10,56320|1023&on)}}else an+=String.fromCharCode((31&rn)<<6|In)}else an+=String.fromCharCode(rn)}return an})(An,Wt,Pt):"",kn=[],x=Wt=>{var Pt=(Wt-Gn.buffer.byteLength+65535)/65536;try{return Gn.grow(Pt),M(),1}catch(Wt){}},Jn={b:(Wt,Pt,en,tn)=>{J(`Assertion failed: ${R(Wt)}, at: `+[Pt?R(Pt):"unknown filename",en,tn?R(tn):"unknown function"])},c:()=>{J("")},a:(Wt,Pt,en)=>((Wt,Pt,en)=>{var tn=((Wt,Pt)=>{var en;for(kn.length=0;en=An[Wt++];){var tn=105!=en;Pt+=(tn&=112!=en)&&Pt%8?4:0,kn.push(112==en?gn[Pt>>2]:105==en?Nn[Pt>>2]:vn[Pt>>3]),Pt+=tn?8:4}return kn})(Pt,en);return Hn[Wt](...tn)})(Wt,Pt,en),d:Wt=>{var Pt=An.length,en=2147483648;if((Wt>>>=0)>en)return!1;for(var tn,nn=1;nn<=4;nn*=2){var an=Pt*(1+.2/nn);an=Math.min(an,Wt+100663296);var rn=Math.min(en,(tn=Math.max(Wt,an))+(65536-tn%65536)%65536);if(x(rn))return!0}return!1}},Ln=function(){var Wt={a:Jn};function I(Wt,Pt){var en;return Ln=Wt.exports,Gn=Ln.e,M(),en=Ln.f,Vn.unshift(en),function(Wt){if(wn--,rn.monitorRunDependencies?.(wn),0==wn&&(null!==Fn&&(clearInterval(Fn),Fn=null),Qn)){var Pt=Qn;Qn=null,Pt()}}(),Ln}if(wn++,rn.monitorRunDependencies?.(wn),rn.instantiateWasm)try{return rn.instantiateWasm(Wt,I)}catch(Wt){return bn(`Module.instantiateWasm callback failed with error: ${Wt}`),!1}return fn||(fn="<<< WASM_BINARY_FILE >>>"),function(Wt,Pt,en){(function(Wt){return Promise.resolve().then((()=>function(Wt){if(Wt==fn&&mn)return new Uint8Array(mn);if(nn)return nn(Wt);throw"both async and sync fetching of the wasm failed"}(Wt)))})(Wt).then((Wt=>hn.instantiate(Wt,Pt))).then(en,(Wt=>{bn(`failed to asynchronously prepare wasm: ${Wt}`),J(Wt)}))}(fn,Wt,(function(Wt){I(Wt.instance)})),{}}();function q(){function A(){Cn||(Cn=!0,rn.calledRun=!0,Yn||(b(Vn),rn.onRuntimeInitialized?.(),function(){if(rn.postRun)for("function"==typeof rn.postRun&&(rn.postRun=[rn.postRun]);rn.postRun.length;)Wt=rn.postRun.shift(),Rn.unshift(Wt);var Wt;b(Rn)}()))}wn>0||(function(){if(rn.preRun)for("function"==typeof rn.preRun&&(rn.preRun=[rn.preRun]);rn.preRun.length;)Wt=rn.preRun.shift(),En.unshift(Wt);var Wt;b(En)}(),wn>0||(rn.setStatus?(rn.setStatus("Running..."),setTimeout((function(){setTimeout((function(){rn.setStatus("")}),1),A()}),1)):A()))}if(rn._crypto_aead_aegis128l_keybytes=()=>(rn._crypto_aead_aegis128l_keybytes=Ln.g)(),rn._crypto_aead_aegis128l_nsecbytes=()=>(rn._crypto_aead_aegis128l_nsecbytes=Ln.h)(),rn._crypto_aead_aegis128l_npubbytes=()=>(rn._crypto_aead_aegis128l_npubbytes=Ln.i)(),rn._crypto_aead_aegis128l_abytes=()=>(rn._crypto_aead_aegis128l_abytes=Ln.j)(),rn._crypto_aead_aegis128l_messagebytes_max=()=>(rn._crypto_aead_aegis128l_messagebytes_max=Ln.k)(),rn._crypto_aead_aegis128l_keygen=Wt=>(rn._crypto_aead_aegis128l_keygen=Ln.l)(Wt),rn._crypto_aead_aegis128l_encrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_aegis128l_encrypt=Ln.m)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_aegis128l_encrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un)=>(rn._crypto_aead_aegis128l_encrypt_detached=Ln.n)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un),rn._crypto_aead_aegis128l_decrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_aegis128l_decrypt=Ln.o)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_aegis128l_decrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_aegis128l_decrypt_detached=Ln.p)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_aegis256_keybytes=()=>(rn._crypto_aead_aegis256_keybytes=Ln.q)(),rn._crypto_aead_aegis256_nsecbytes=()=>(rn._crypto_aead_aegis256_nsecbytes=Ln.r)(),rn._crypto_aead_aegis256_npubbytes=()=>(rn._crypto_aead_aegis256_npubbytes=Ln.s)(),rn._crypto_aead_aegis256_abytes=()=>(rn._crypto_aead_aegis256_abytes=Ln.t)(),rn._crypto_aead_aegis256_messagebytes_max=()=>(rn._crypto_aead_aegis256_messagebytes_max=Ln.u)(),rn._crypto_aead_aegis256_keygen=Wt=>(rn._crypto_aead_aegis256_keygen=Ln.v)(Wt),rn._crypto_aead_aegis256_encrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_aegis256_encrypt=Ln.w)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_aegis256_encrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un)=>(rn._crypto_aead_aegis256_encrypt_detached=Ln.x)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un),rn._crypto_aead_aegis256_decrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_aegis256_decrypt=Ln.y)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_aegis256_decrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_aegis256_decrypt_detached=Ln.z)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_aes256gcm_is_available=()=>(rn._crypto_aead_aes256gcm_is_available=Ln.A)(),rn._crypto_aead_chacha20poly1305_encrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un)=>(rn._crypto_aead_chacha20poly1305_encrypt_detached=Ln.B)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un),rn._crypto_aead_chacha20poly1305_encrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_chacha20poly1305_encrypt=Ln.C)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_chacha20poly1305_ietf_encrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un)=>(rn._crypto_aead_chacha20poly1305_ietf_encrypt_detached=Ln.D)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un),rn._crypto_aead_chacha20poly1305_ietf_encrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_chacha20poly1305_ietf_encrypt=Ln.E)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_chacha20poly1305_decrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_chacha20poly1305_decrypt_detached=Ln.F)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_chacha20poly1305_decrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_chacha20poly1305_decrypt=Ln.G)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_chacha20poly1305_ietf_decrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_chacha20poly1305_ietf_decrypt_detached=Ln.H)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_chacha20poly1305_ietf_decrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_chacha20poly1305_ietf_decrypt=Ln.I)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_chacha20poly1305_ietf_keybytes=()=>(rn._crypto_aead_chacha20poly1305_ietf_keybytes=Ln.J)(),rn._crypto_aead_chacha20poly1305_ietf_npubbytes=()=>(rn._crypto_aead_chacha20poly1305_ietf_npubbytes=Ln.K)(),rn._crypto_aead_chacha20poly1305_ietf_nsecbytes=()=>(rn._crypto_aead_chacha20poly1305_ietf_nsecbytes=Ln.L)(),rn._crypto_aead_chacha20poly1305_ietf_abytes=()=>(rn._crypto_aead_chacha20poly1305_ietf_abytes=Ln.M)(),rn._crypto_aead_chacha20poly1305_ietf_messagebytes_max=()=>(rn._crypto_aead_chacha20poly1305_ietf_messagebytes_max=Ln.N)(),rn._crypto_aead_chacha20poly1305_ietf_keygen=Wt=>(rn._crypto_aead_chacha20poly1305_ietf_keygen=Ln.O)(Wt),rn._crypto_aead_chacha20poly1305_keybytes=()=>(rn._crypto_aead_chacha20poly1305_keybytes=Ln.P)(),rn._crypto_aead_chacha20poly1305_npubbytes=()=>(rn._crypto_aead_chacha20poly1305_npubbytes=Ln.Q)(),rn._crypto_aead_chacha20poly1305_nsecbytes=()=>(rn._crypto_aead_chacha20poly1305_nsecbytes=Ln.R)(),rn._crypto_aead_chacha20poly1305_abytes=()=>(rn._crypto_aead_chacha20poly1305_abytes=Ln.S)(),rn._crypto_aead_chacha20poly1305_messagebytes_max=()=>(rn._crypto_aead_chacha20poly1305_messagebytes_max=Ln.T)(),rn._crypto_aead_chacha20poly1305_keygen=Wt=>(rn._crypto_aead_chacha20poly1305_keygen=Ln.U)(Wt),rn._crypto_aead_xchacha20poly1305_ietf_encrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un)=>(rn._crypto_aead_xchacha20poly1305_ietf_encrypt_detached=Ln.V)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un),rn._crypto_aead_xchacha20poly1305_ietf_encrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_xchacha20poly1305_ietf_encrypt=Ln.W)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_xchacha20poly1305_ietf_decrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_xchacha20poly1305_ietf_decrypt_detached=Ln.X)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_xchacha20poly1305_ietf_decrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_xchacha20poly1305_ietf_decrypt=Ln.Y)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_xchacha20poly1305_ietf_keybytes=()=>(rn._crypto_aead_xchacha20poly1305_ietf_keybytes=Ln.Z)(),rn._crypto_aead_xchacha20poly1305_ietf_npubbytes=()=>(rn._crypto_aead_xchacha20poly1305_ietf_npubbytes=Ln._)(),rn._crypto_aead_xchacha20poly1305_ietf_nsecbytes=()=>(rn._crypto_aead_xchacha20poly1305_ietf_nsecbytes=Ln.$)(),rn._crypto_aead_xchacha20poly1305_ietf_abytes=()=>(rn._crypto_aead_xchacha20poly1305_ietf_abytes=Ln.aa)(),rn._crypto_aead_xchacha20poly1305_ietf_messagebytes_max=()=>(rn._crypto_aead_xchacha20poly1305_ietf_messagebytes_max=Ln.ba)(),rn._crypto_aead_xchacha20poly1305_ietf_keygen=Wt=>(rn._crypto_aead_xchacha20poly1305_ietf_keygen=Ln.ca)(Wt),rn._crypto_auth_bytes=()=>(rn._crypto_auth_bytes=Ln.da)(),rn._crypto_auth_keybytes=()=>(rn._crypto_auth_keybytes=Ln.ea)(),rn._crypto_auth=(Wt,Pt,en,tn,nn)=>(rn._crypto_auth=Ln.fa)(Wt,Pt,en,tn,nn),rn._crypto_auth_verify=(Wt,Pt,en,tn,nn)=>(rn._crypto_auth_verify=Ln.ga)(Wt,Pt,en,tn,nn),rn._crypto_auth_keygen=Wt=>(rn._crypto_auth_keygen=Ln.ha)(Wt),rn._crypto_box_seedbytes=()=>(rn._crypto_box_seedbytes=Ln.ia)(),rn._crypto_box_publickeybytes=()=>(rn._crypto_box_publickeybytes=Ln.ja)(),rn._crypto_box_secretkeybytes=()=>(rn._crypto_box_secretkeybytes=Ln.ka)(),rn._crypto_box_beforenmbytes=()=>(rn._crypto_box_beforenmbytes=Ln.la)(),rn._crypto_box_noncebytes=()=>(rn._crypto_box_noncebytes=Ln.ma)(),rn._crypto_box_macbytes=()=>(rn._crypto_box_macbytes=Ln.na)(),rn._crypto_box_messagebytes_max=()=>(rn._crypto_box_messagebytes_max=Ln.oa)(),rn._crypto_box_seed_keypair=(Wt,Pt,en)=>(rn._crypto_box_seed_keypair=Ln.pa)(Wt,Pt,en),rn._crypto_box_keypair=(Wt,Pt)=>(rn._crypto_box_keypair=Ln.qa)(Wt,Pt),rn._crypto_box_beforenm=(Wt,Pt,en)=>(rn._crypto_box_beforenm=Ln.ra)(Wt,Pt,en),rn._crypto_box_detached_afternm=(Wt,Pt,en,tn,nn,an,In)=>(rn._crypto_box_detached_afternm=Ln.sa)(Wt,Pt,en,tn,nn,an,In),rn._crypto_box_detached=(Wt,Pt,en,tn,nn,an,In,sn)=>(rn._crypto_box_detached=Ln.ta)(Wt,Pt,en,tn,nn,an,In,sn),rn._crypto_box_easy_afternm=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_box_easy_afternm=Ln.ua)(Wt,Pt,en,tn,nn,an),rn._crypto_box_easy=(Wt,Pt,en,tn,nn,an,In)=>(rn._crypto_box_easy=Ln.va)(Wt,Pt,en,tn,nn,an,In),rn._crypto_box_open_detached_afternm=(Wt,Pt,en,tn,nn,an,In)=>(rn._crypto_box_open_detached_afternm=Ln.wa)(Wt,Pt,en,tn,nn,an,In),rn._crypto_box_open_detached=(Wt,Pt,en,tn,nn,an,In,sn)=>(rn._crypto_box_open_detached=Ln.xa)(Wt,Pt,en,tn,nn,an,In,sn),rn._crypto_box_open_easy_afternm=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_box_open_easy_afternm=Ln.ya)(Wt,Pt,en,tn,nn,an),rn._crypto_box_open_easy=(Wt,Pt,en,tn,nn,an,In)=>(rn._crypto_box_open_easy=Ln.za)(Wt,Pt,en,tn,nn,an,In),rn._crypto_box_seal=(Wt,Pt,en,tn,nn)=>(rn._crypto_box_seal=Ln.Aa)(Wt,Pt,en,tn,nn),rn._crypto_box_seal_open=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_box_seal_open=Ln.Ba)(Wt,Pt,en,tn,nn,an),rn._crypto_box_sealbytes=()=>(rn._crypto_box_sealbytes=Ln.Ca)(),rn._crypto_generichash_bytes_min=()=>(rn._crypto_generichash_bytes_min=Ln.Da)(),rn._crypto_generichash_bytes_max=()=>(rn._crypto_generichash_bytes_max=Ln.Ea)(),rn._crypto_generichash_bytes=()=>(rn._crypto_generichash_bytes=Ln.Fa)(),rn._crypto_generichash_keybytes_min=()=>(rn._crypto_generichash_keybytes_min=Ln.Ga)(),rn._crypto_generichash_keybytes_max=()=>(rn._crypto_generichash_keybytes_max=Ln.Ha)(),rn._crypto_generichash_keybytes=()=>(rn._crypto_generichash_keybytes=Ln.Ia)(),rn._crypto_generichash_statebytes=()=>(rn._crypto_generichash_statebytes=Ln.Ja)(),rn._crypto_generichash=(Wt,Pt,en,tn,nn,an,In)=>(rn._crypto_generichash=Ln.Ka)(Wt,Pt,en,tn,nn,an,In),rn._crypto_generichash_init=(Wt,Pt,en,tn)=>(rn._crypto_generichash_init=Ln.La)(Wt,Pt,en,tn),rn._crypto_generichash_update=(Wt,Pt,en,tn)=>(rn._crypto_generichash_update=Ln.Ma)(Wt,Pt,en,tn),rn._crypto_generichash_final=(Wt,Pt,en)=>(rn._crypto_generichash_final=Ln.Na)(Wt,Pt,en),rn._crypto_generichash_keygen=Wt=>(rn._crypto_generichash_keygen=Ln.Oa)(Wt),rn._crypto_hash_bytes=()=>(rn._crypto_hash_bytes=Ln.Pa)(),rn._crypto_hash=(Wt,Pt,en,tn)=>(rn._crypto_hash=Ln.Qa)(Wt,Pt,en,tn),rn._crypto_kdf_bytes_min=()=>(rn._crypto_kdf_bytes_min=Ln.Ra)(),rn._crypto_kdf_bytes_max=()=>(rn._crypto_kdf_bytes_max=Ln.Sa)(),rn._crypto_kdf_contextbytes=()=>(rn._crypto_kdf_contextbytes=Ln.Ta)(),rn._crypto_kdf_keybytes=()=>(rn._crypto_kdf_keybytes=Ln.Ua)(),rn._crypto_kdf_derive_from_key=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_kdf_derive_from_key=Ln.Va)(Wt,Pt,en,tn,nn,an),rn._crypto_kdf_keygen=Wt=>(rn._crypto_kdf_keygen=Ln.Wa)(Wt),rn._crypto_kdf_hkdf_sha256_extract_init=(Wt,Pt,en)=>(rn._crypto_kdf_hkdf_sha256_extract_init=Ln.Xa)(Wt,Pt,en),rn._crypto_kdf_hkdf_sha256_extract_update=(Wt,Pt,en)=>(rn._crypto_kdf_hkdf_sha256_extract_update=Ln.Ya)(Wt,Pt,en),rn._crypto_kdf_hkdf_sha256_extract_final=(Wt,Pt)=>(rn._crypto_kdf_hkdf_sha256_extract_final=Ln.Za)(Wt,Pt),rn._crypto_kdf_hkdf_sha256_extract=(Wt,Pt,en,tn,nn)=>(rn._crypto_kdf_hkdf_sha256_extract=Ln._a)(Wt,Pt,en,tn,nn),rn._crypto_kdf_hkdf_sha256_keygen=Wt=>(rn._crypto_kdf_hkdf_sha256_keygen=Ln.$a)(Wt),rn._crypto_kdf_hkdf_sha256_expand=(Wt,Pt,en,tn,nn)=>(rn._crypto_kdf_hkdf_sha256_expand=Ln.ab)(Wt,Pt,en,tn,nn),rn._crypto_kdf_hkdf_sha256_keybytes=()=>(rn._crypto_kdf_hkdf_sha256_keybytes=Ln.bb)(),rn._crypto_kdf_hkdf_sha256_bytes_min=()=>(rn._crypto_kdf_hkdf_sha256_bytes_min=Ln.cb)(),rn._crypto_kdf_hkdf_sha256_bytes_max=()=>(rn._crypto_kdf_hkdf_sha256_bytes_max=Ln.db)(),rn._crypto_kdf_hkdf_sha256_statebytes=()=>(rn._crypto_kdf_hkdf_sha256_statebytes=Ln.eb)(),rn._crypto_kdf_hkdf_sha512_extract_init=(Wt,Pt,en)=>(rn._crypto_kdf_hkdf_sha512_extract_init=Ln.fb)(Wt,Pt,en),rn._crypto_kdf_hkdf_sha512_extract_update=(Wt,Pt,en)=>(rn._crypto_kdf_hkdf_sha512_extract_update=Ln.gb)(Wt,Pt,en),rn._crypto_kdf_hkdf_sha512_extract_final=(Wt,Pt)=>(rn._crypto_kdf_hkdf_sha512_extract_final=Ln.hb)(Wt,Pt),rn._crypto_kdf_hkdf_sha512_extract=(Wt,Pt,en,tn,nn)=>(rn._crypto_kdf_hkdf_sha512_extract=Ln.ib)(Wt,Pt,en,tn,nn),rn._crypto_kdf_hkdf_sha512_keygen=Wt=>(rn._crypto_kdf_hkdf_sha512_keygen=Ln.jb)(Wt),rn._crypto_kdf_hkdf_sha512_expand=(Wt,Pt,en,tn,nn)=>(rn._crypto_kdf_hkdf_sha512_expand=Ln.kb)(Wt,Pt,en,tn,nn),rn._crypto_kdf_hkdf_sha512_keybytes=()=>(rn._crypto_kdf_hkdf_sha512_keybytes=Ln.lb)(),rn._crypto_kdf_hkdf_sha512_bytes_min=()=>(rn._crypto_kdf_hkdf_sha512_bytes_min=Ln.mb)(),rn._crypto_kdf_hkdf_sha512_bytes_max=()=>(rn._crypto_kdf_hkdf_sha512_bytes_max=Ln.nb)(),rn._crypto_kdf_hkdf_sha512_statebytes=()=>(rn._crypto_kdf_hkdf_sha512_statebytes=Ln.ob)(),rn._crypto_kx_seed_keypair=(Wt,Pt,en)=>(rn._crypto_kx_seed_keypair=Ln.pb)(Wt,Pt,en),rn._crypto_kx_keypair=(Wt,Pt)=>(rn._crypto_kx_keypair=Ln.qb)(Wt,Pt),rn._crypto_kx_client_session_keys=(Wt,Pt,en,tn,nn)=>(rn._crypto_kx_client_session_keys=Ln.rb)(Wt,Pt,en,tn,nn),rn._crypto_kx_server_session_keys=(Wt,Pt,en,tn,nn)=>(rn._crypto_kx_server_session_keys=Ln.sb)(Wt,Pt,en,tn,nn),rn._crypto_kx_publickeybytes=()=>(rn._crypto_kx_publickeybytes=Ln.tb)(),rn._crypto_kx_secretkeybytes=()=>(rn._crypto_kx_secretkeybytes=Ln.ub)(),rn._crypto_kx_seedbytes=()=>(rn._crypto_kx_seedbytes=Ln.vb)(),rn._crypto_kx_sessionkeybytes=()=>(rn._crypto_kx_sessionkeybytes=Ln.wb)(),rn._crypto_scalarmult_base=(Wt,Pt)=>(rn._crypto_scalarmult_base=Ln.xb)(Wt,Pt),rn._crypto_scalarmult=(Wt,Pt,en)=>(rn._crypto_scalarmult=Ln.yb)(Wt,Pt,en),rn._crypto_scalarmult_bytes=()=>(rn._crypto_scalarmult_bytes=Ln.zb)(),rn._crypto_scalarmult_scalarbytes=()=>(rn._crypto_scalarmult_scalarbytes=Ln.Ab)(),rn._crypto_secretbox_keybytes=()=>(rn._crypto_secretbox_keybytes=Ln.Bb)(),rn._crypto_secretbox_noncebytes=()=>(rn._crypto_secretbox_noncebytes=Ln.Cb)(),rn._crypto_secretbox_macbytes=()=>(rn._crypto_secretbox_macbytes=Ln.Db)(),rn._crypto_secretbox_messagebytes_max=()=>(rn._crypto_secretbox_messagebytes_max=Ln.Eb)(),rn._crypto_secretbox_keygen=Wt=>(rn._crypto_secretbox_keygen=Ln.Fb)(Wt),rn._crypto_secretbox_detached=(Wt,Pt,en,tn,nn,an,In)=>(rn._crypto_secretbox_detached=Ln.Gb)(Wt,Pt,en,tn,nn,an,In),rn._crypto_secretbox_easy=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_secretbox_easy=Ln.Hb)(Wt,Pt,en,tn,nn,an),rn._crypto_secretbox_open_detached=(Wt,Pt,en,tn,nn,an,In)=>(rn._crypto_secretbox_open_detached=Ln.Ib)(Wt,Pt,en,tn,nn,an,In),rn._crypto_secretbox_open_easy=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_secretbox_open_easy=Ln.Jb)(Wt,Pt,en,tn,nn,an),rn._crypto_secretstream_xchacha20poly1305_keygen=Wt=>(rn._crypto_secretstream_xchacha20poly1305_keygen=Ln.Kb)(Wt),rn._crypto_secretstream_xchacha20poly1305_init_push=(Wt,Pt,en)=>(rn._crypto_secretstream_xchacha20poly1305_init_push=Ln.Lb)(Wt,Pt,en),rn._crypto_secretstream_xchacha20poly1305_init_pull=(Wt,Pt,en)=>(rn._crypto_secretstream_xchacha20poly1305_init_pull=Ln.Mb)(Wt,Pt,en),rn._crypto_secretstream_xchacha20poly1305_rekey=Wt=>(rn._crypto_secretstream_xchacha20poly1305_rekey=Ln.Nb)(Wt),rn._crypto_secretstream_xchacha20poly1305_push=(Wt,Pt,en,tn,nn,an,In,sn,on,cn)=>(rn._crypto_secretstream_xchacha20poly1305_push=Ln.Ob)(Wt,Pt,en,tn,nn,an,In,sn,on,cn),rn._crypto_secretstream_xchacha20poly1305_pull=(Wt,Pt,en,tn,nn,an,In,sn,on,cn)=>(rn._crypto_secretstream_xchacha20poly1305_pull=Ln.Pb)(Wt,Pt,en,tn,nn,an,In,sn,on,cn),rn._crypto_secretstream_xchacha20poly1305_statebytes=()=>(rn._crypto_secretstream_xchacha20poly1305_statebytes=Ln.Qb)(),rn._crypto_secretstream_xchacha20poly1305_abytes=()=>(rn._crypto_secretstream_xchacha20poly1305_abytes=Ln.Rb)(),rn._crypto_secretstream_xchacha20poly1305_headerbytes=()=>(rn._crypto_secretstream_xchacha20poly1305_headerbytes=Ln.Sb)(),rn._crypto_secretstream_xchacha20poly1305_keybytes=()=>(rn._crypto_secretstream_xchacha20poly1305_keybytes=Ln.Tb)(),rn._crypto_secretstream_xchacha20poly1305_messagebytes_max=()=>(rn._crypto_secretstream_xchacha20poly1305_messagebytes_max=Ln.Ub)(),rn._crypto_secretstream_xchacha20poly1305_tag_message=()=>(rn._crypto_secretstream_xchacha20poly1305_tag_message=Ln.Vb)(),rn._crypto_secretstream_xchacha20poly1305_tag_push=()=>(rn._crypto_secretstream_xchacha20poly1305_tag_push=Ln.Wb)(),rn._crypto_secretstream_xchacha20poly1305_tag_rekey=()=>(rn._crypto_secretstream_xchacha20poly1305_tag_rekey=Ln.Xb)(),rn._crypto_secretstream_xchacha20poly1305_tag_final=()=>(rn._crypto_secretstream_xchacha20poly1305_tag_final=Ln.Yb)(),rn._crypto_shorthash_bytes=()=>(rn._crypto_shorthash_bytes=Ln.Zb)(),rn._crypto_shorthash_keybytes=()=>(rn._crypto_shorthash_keybytes=Ln._b)(),rn._crypto_shorthash=(Wt,Pt,en,tn,nn)=>(rn._crypto_shorthash=Ln.$b)(Wt,Pt,en,tn,nn),rn._crypto_shorthash_keygen=Wt=>(rn._crypto_shorthash_keygen=Ln.ac)(Wt),rn._crypto_sign_statebytes=()=>(rn._crypto_sign_statebytes=Ln.bc)(),rn._crypto_sign_bytes=()=>(rn._crypto_sign_bytes=Ln.cc)(),rn._crypto_sign_seedbytes=()=>(rn._crypto_sign_seedbytes=Ln.dc)(),rn._crypto_sign_publickeybytes=()=>(rn._crypto_sign_publickeybytes=Ln.ec)(),rn._crypto_sign_secretkeybytes=()=>(rn._crypto_sign_secretkeybytes=Ln.fc)(),rn._crypto_sign_messagebytes_max=()=>(rn._crypto_sign_messagebytes_max=Ln.gc)(),rn._crypto_sign_seed_keypair=(Wt,Pt,en)=>(rn._crypto_sign_seed_keypair=Ln.hc)(Wt,Pt,en),rn._crypto_sign_keypair=(Wt,Pt)=>(rn._crypto_sign_keypair=Ln.ic)(Wt,Pt),rn._crypto_sign=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_sign=Ln.jc)(Wt,Pt,en,tn,nn,an),rn._crypto_sign_open=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_sign_open=Ln.kc)(Wt,Pt,en,tn,nn,an),rn._crypto_sign_detached=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_sign_detached=Ln.lc)(Wt,Pt,en,tn,nn,an),rn._crypto_sign_verify_detached=(Wt,Pt,en,tn,nn)=>(rn._crypto_sign_verify_detached=Ln.mc)(Wt,Pt,en,tn,nn),rn._crypto_sign_init=Wt=>(rn._crypto_sign_init=Ln.nc)(Wt),rn._crypto_sign_update=(Wt,Pt,en,tn)=>(rn._crypto_sign_update=Ln.oc)(Wt,Pt,en,tn),rn._crypto_sign_final_create=(Wt,Pt,en,tn)=>(rn._crypto_sign_final_create=Ln.pc)(Wt,Pt,en,tn),rn._crypto_sign_final_verify=(Wt,Pt,en)=>(rn._crypto_sign_final_verify=Ln.qc)(Wt,Pt,en),rn._crypto_sign_ed25519_pk_to_curve25519=(Wt,Pt)=>(rn._crypto_sign_ed25519_pk_to_curve25519=Ln.rc)(Wt,Pt),rn._crypto_sign_ed25519_sk_to_curve25519=(Wt,Pt)=>(rn._crypto_sign_ed25519_sk_to_curve25519=Ln.sc)(Wt,Pt),rn._randombytes_random=()=>(rn._randombytes_random=Ln.tc)(),rn._randombytes_stir=()=>(rn._randombytes_stir=Ln.uc)(),rn._randombytes_uniform=Wt=>(rn._randombytes_uniform=Ln.vc)(Wt),rn._randombytes_buf=(Wt,Pt)=>(rn._randombytes_buf=Ln.wc)(Wt,Pt),rn._randombytes_buf_deterministic=(Wt,Pt,en)=>(rn._randombytes_buf_deterministic=Ln.xc)(Wt,Pt,en),rn._randombytes_seedbytes=()=>(rn._randombytes_seedbytes=Ln.yc)(),rn._randombytes_close=()=>(rn._randombytes_close=Ln.zc)(),rn._randombytes=(Wt,Pt,en)=>(rn._randombytes=Ln.Ac)(Wt,Pt,en),rn._sodium_bin2hex=(Wt,Pt,en,tn)=>(rn._sodium_bin2hex=Ln.Bc)(Wt,Pt,en,tn),rn._sodium_hex2bin=(Wt,Pt,en,tn,nn,an,In)=>(rn._sodium_hex2bin=Ln.Cc)(Wt,Pt,en,tn,nn,an,In),rn._sodium_base64_encoded_len=(Wt,Pt)=>(rn._sodium_base64_encoded_len=Ln.Dc)(Wt,Pt),rn._sodium_bin2base64=(Wt,Pt,en,tn,nn)=>(rn._sodium_bin2base64=Ln.Ec)(Wt,Pt,en,tn,nn),rn._sodium_base642bin=(Wt,Pt,en,tn,nn,an,In,sn)=>(rn._sodium_base642bin=Ln.Fc)(Wt,Pt,en,tn,nn,an,In,sn),rn._sodium_init=()=>(rn._sodium_init=Ln.Gc)(),rn._sodium_pad=(Wt,Pt,en,tn,nn)=>(rn._sodium_pad=Ln.Hc)(Wt,Pt,en,tn,nn),rn._sodium_unpad=(Wt,Pt,en,tn)=>(rn._sodium_unpad=Ln.Ic)(Wt,Pt,en,tn),rn._sodium_version_string=()=>(rn._sodium_version_string=Ln.Jc)(),rn._sodium_library_version_major=()=>(rn._sodium_library_version_major=Ln.Kc)(),rn._sodium_library_version_minor=()=>(rn._sodium_library_version_minor=Ln.Lc)(),rn._sodium_library_minimal=()=>(rn._sodium_library_minimal=Ln.Mc)(),rn._malloc=Wt=>(rn._malloc=Ln.Nc)(Wt),rn._free=Wt=>(rn._free=Ln.Oc)(Wt),rn.setValue=function(Wt,Pt,en="i8"){switch(en.endsWith("*")&&(en="*"),en){case"i1":case"i8":Zn[Wt]=Pt;break;case"i16":Wn[Wt>>1]=Pt;break;case"i32":Nn[Wt>>2]=Pt;break;case"i64":J("to do setValue(i64) use WASM_BIGINT");case"float":yn[Wt>>2]=Pt;break;case"double":vn[Wt>>3]=Pt;break;case"*":gn[Wt>>2]=Pt;break;default:J(`invalid type for setValue: ${en}`)}},rn.getValue=function(Wt,Pt="i8"){switch(Pt.endsWith("*")&&(Pt="*"),Pt){case"i1":case"i8":return Zn[Wt];case"i16":return Wn[Wt>>1];case"i32":return Nn[Wt>>2];case"i64":J("to do getValue(i64) use WASM_BIGINT");case"float":return yn[Wt>>2];case"double":return vn[Wt>>3];case"*":return gn[Wt>>2];default:J(`invalid type for getValue: ${Pt}`)}},rn.UTF8ToString=R,Qn=function A(){Cn||q(),Cn||(Qn=A)},rn.preInit)for("function"==typeof rn.preInit&&(rn.preInit=[rn.preInit]);rn.preInit.length>0;)rn.preInit.pop()();q()}))};var nn,rn=void 0!==rn?rn:{},In="object"==typeof window,sn="function"==typeof importScripts,on="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,cn=Object.assign({},rn),dn="";if(on){var un=en(79896),pn=en(16928);dn=__dirname+"/",nn=Wt=>(Wt=U(Wt)?new URL(Wt):pn.normalize(Wt),un.readFileSync(Wt)),!rn.thisProgram&&process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),true&&(Wt.exports=rn)}else(In||sn)&&(sn?dn=self.location.href:"undefined"!=typeof document&&document.currentScript&&(dn=document.currentScript.src),dn=dn.startsWith("blob:")?"":dn.substr(0,dn.replace(/[?#].*/,"").lastIndexOf("/")+1),sn&&(nn=Wt=>{var Pt=new XMLHttpRequest;return Pt.open("GET",Wt,!1),Pt.responseType="arraybuffer",Pt.send(null),new Uint8Array(Pt.response)}));rn.print;var mn,bn,Gn=rn.printErr||void 0;Object.assign(rn,cn),cn=null,rn.arguments&&rn.arguments,rn.thisProgram&&rn.thisProgram,rn.quit&&rn.quit,rn.wasmBinary&&(mn=rn.wasmBinary);var hn,Zn,An,Wn,Nn,gn,yn,vn=!1;function S(){var Wt=bn.buffer;rn.HEAP8=hn=new Int8Array(Wt),rn.HEAP16=An=new Int16Array(Wt),rn.HEAPU8=Zn=new Uint8Array(Wt),rn.HEAPU16=new Uint16Array(Wt),rn.HEAP32=Wn=new Int32Array(Wt),rn.HEAPU32=Nn=new Uint32Array(Wt),rn.HEAPF32=gn=new Float32Array(Wt),rn.HEAPF64=yn=new Float64Array(Wt)}var Yn=[],En=[],Vn=[],Rn=0,wn=null,Fn=null;function G(Wt){throw rn.onAbort?.(Wt),Gn(Wt="Aborted("+Wt+")"),vn=!0,Wt+=". Build with -sASSERTIONS for more info.",new WebAssembly.RuntimeError(Wt)}var Qn,fn="data:application/octet-stream;base64,",U=Wt=>Wt.startsWith("file://");function d(Wt){return Promise.resolve().then((()=>function(Wt){if(Wt==Qn&&mn)return new Uint8Array(mn);var Pt=function(Wt){if((Wt=>Wt.startsWith(fn))(Wt))return function(Wt){if(void 0!==on&&on){var Pt=Buffer.from(Wt,"base64");return new Uint8Array(Pt.buffer,Pt.byteOffset,Pt.length)}for(var en=atob(Wt),tn=new Uint8Array(en.length),nn=0;nnrn.getRandomValue(),36340:()=>{if(void 0===rn.getRandomValue)try{var Wt="object"==typeof window?window:self,Pt=void 0!==Wt.crypto?Wt.crypto:Wt.msCrypto;Pt=void 0===Pt?tn:Pt;var g=function(){var Wt=new Uint32Array(1);return Pt.getRandomValues(Wt),Wt[0]>>>0};g(),rn.getRandomValue=g}catch(Wt){try{var tn=en(76982),Q=function(){var Wt=tn.randomBytes(4);return(Wt[0]<<24|Wt[1]<<16|Wt[2]<<8|Wt[3])>>>0};Q(),rn.getRandomValue=Q}catch(Wt){throw"No secure random number generator found"}}}},P=Wt=>{for(;Wt.length>0;)Wt.shift()(rn)};rn.noExitRuntime;var Cn,Xn="undefined"!=typeof TextDecoder?new TextDecoder:void 0,L=(Wt,Pt)=>Wt?((Wt,Pt,en)=>{for(var tn=Pt+en,nn=Pt;Wt[nn]&&!(nn>=tn);)++nn;if(nn-Pt>16&&Wt.buffer&&Xn)return Xn.decode(Wt.subarray(Pt,nn));for(var an="";Pt>10,56320|1023&on)}}else an+=String.fromCharCode((31&rn)<<6|In)}else an+=String.fromCharCode(rn)}return an})(Zn,Wt,Pt):"",kn=[],u=Wt=>{var Pt=(Wt-bn.buffer.byteLength+65535)/65536;try{return bn.grow(Pt),S(),1}catch(Wt){}},Jn={b:(Wt,Pt,en,tn)=>{G(`Assertion failed: ${L(Wt)}, at: `+[Pt?L(Pt):"unknown filename",en,tn?L(tn):"unknown function"])},c:()=>{G("")},d:(Wt,Pt,en)=>Zn.copyWithin(Wt,Pt,Pt+en),a:(Wt,Pt,en)=>((Wt,Pt,en)=>{var tn=((Wt,Pt)=>{var en;for(kn.length=0;en=Zn[Wt++];){var tn=105!=en;Pt+=(tn&=112!=en)&&Pt%8?4:0,kn.push(112==en?Nn[Pt>>2]:105==en?Wn[Pt>>2]:yn[Pt>>3]),Pt+=tn?8:4}return kn})(Pt,en);return Hn[Wt](...tn)})(Wt,Pt,en),e:Wt=>{var Pt=Zn.length,en=2147483648;if((Wt>>>=0)>en)return!1;for(var tn,nn=1;nn<=4;nn*=2){var an=Pt*(1+.2/nn);an=Math.min(an,Wt+100663296);var rn=Math.min(en,(tn=Math.max(Wt,an))+(65536-tn%65536)%65536);if(u(rn))return!0}return!1}},Ln=function(){var Wt,Pt={a:Jn};function g(Wt,Pt){return Ln=Wt.exports,bn=Ln.f,S(),function(Wt){if(Rn--,rn.monitorRunDependencies?.(Rn),0==Rn&&(null!==wn&&(clearInterval(wn),wn=null),Fn)){var Pt=Fn;Fn=null,Pt()}}(),Ln}if(Rn++,rn.monitorRunDependencies?.(Rn),rn.instantiateWasm)try{return rn.instantiateWasm(Pt,g)}catch(Wt){return Gn(`Module.instantiateWasm callback failed with error: ${Wt}`),!1}return Qn||(Qn="data:application/octet-stream;base64,AGFzbQEAAAABoAIhYAN/f34Bf2ACf38Bf2AAAX9gA39/fwF/YAJ/fwBgA39/fwBgC39/f39/f39/f39/AX9gBX9/f39/AX9gCX9/f39/f39/fwF/YAF/AGAGf39+f39/AX9gBH9/f38Bf2AGf39+f35/AX9gBn9/f39/fwF/YAR/fn9/AX9gAX8Bf2AHf39/f39/fwF/YAR/f39/AGAMf39/f39/f39/f39/AX9gAABgBn9/f35/fwF/YAN/f34AYAR/f35/AX9gCH9/fn9/fn9/AX9gCX9/f39+f35/fwF/YAh/f39/f39/fwF/YAV/f35/fwBgBX9/f39/AGAKf39/f39/f39/fwF/YAR/fn9/AGAGf39+f39/AGAEf39/fgBgBX9/fn9/AX8CHwUBYQFhAAMBYQFiABEBYQFjABMBYQFkAAUBYQFlAA8D4QHfAQQFBQQDAxMCAAQFAgAACQQFBAIEBAAJHQIEAwAeAQEPAQMLAhQVAxEfBAUDBAQEARQDBAMRAgUEAwkPBRUEFQECIBQDBAMTGhoJEQUbBQQFCQIRBRsFBAUFBQEEDRAQCgoXFxgYFxgUAgICAwMHAgUPAgoMDg4CCAgICAwOAQMJDwEAAQULBw0NDRYHHBwNDQsLEA0HEBkQDRkHBwYGBhIGBgYGBhIWBhIGBhIGBgYSBgIHBwMZBwEQCwMBAQMCAwsPAQMCAQECAgIHBwEDAwICAgIJAwMLAgICBwkHAQsEBAFwABIFBgEBQICAAgYIAX8BQaCmBgsHjwjHAQFmAgABZwAQAWgAFwFpABABagAMAWsAVgFsAFUBbQC1AQFuALQBAW8AswEBcACyAQFxAAwBcgAXAXMADAF0AAwBdQBWAXYAEwF3ALEBAXgAsAEBeQCvAQF6AK4BAUEAFwFCAK0BAUMArAEBRACqAQFFAKkBAUYAqAEBRwCnAQFIAKYBAUkApQEBSgAMAUsAwwEBTAAXAU0AEAFOACgBTwATAVAADAFRAEUBUgAXAVMAEAFUACgBVQATAVYApAEBVwCjAQFYAKIBAVkAoQEBWgAMAV8AOgEkABcCYWEAEAJiYQAoAmNhABMCZGEADAJlYQAMAmZhAKABAmdhAJ8BAmhhABMCaWEADAJqYQAMAmthAAwCbGEADAJtYQA6Am5hABACb2EAKAJwYQDCAQJxYQDBAQJyYQAmAnNhAGMCdGEAngECdWEAnQECdmEAnAECd2EAYgJ4YQCbAQJ5YQBhAnphAJoBAkFhAJkBAkJhAJgBAkNhALYBAkRhABACRWEAHQJGYQAMAkdhABACSGEAHQJJYQAMAkphANwBAkthAJcBAkxhANsBAk1hAJYBAk5hACsCT2EAEwJQYQAdAlFhAJUBAlJhABACU2EAHQJUYQBFAlVhAAwCVmEAlAECV2EAEwJYYQDTAQJZYQDSAQJaYQDRAQJfYQDQAQIkYQATAmFiAM8BAmJiAAwCY2IAFwJkYgDOAQJlYgBtAmZiAHECZ2IAcAJoYgDiAQJpYgDhAQJqYgDgAQJrYgDfAQJsYgAdAm1iABcCbmIA3gECb2IA3QECcGIAuQECcWIARAJyYgC4AQJzYgC3AQJ0YgAMAnViAAwCdmIADAJ3YgAMAnhiAMABAnliAL8BAnpiAAwCQWIADAJCYgAMAkNiADoCRGIAEAJFYgAoAkZiABMCR2IAYwJIYgCTAQJJYgBiAkpiAGECS2IAEwJMYgDaAQJNYgDZAQJOYgDYAQJPYgCSAQJQYgCRAQJRYgDXAQJSYgDWAQJTYgA6AlRiAAwCVWIA1QECVmIAFwJXYgBvAlhiAG4CWWIA1AECWmIARQJfYgAQAiRiAJABAmFjAFUCYmMAbQJjYwAdAmRjAAwCZWMADAJmYwAdAmdjAMkBAmhjAMgBAmljAMcBAmpjAI4BAmtjAI0BAmxjAIwBAm1jAIsBAm5jAMYBAm9jAIoBAnBjAMUBAnFjAMQBAnJjAMsBAnNjAMoBAnRjAHYCdWMASwJ2YwB1AndjABgCeGMAdAJ5YwAMAnpjAHMCQWMAiQECQmMAvgECQ2MAvQECRGMAvAECRWMAuwECRmMAugECR2MAewJIYwByAkljAOMBAkpjAM0BAktjAMwBAkxjAG4CTWMAbwJOYwCFAQJPYwCEAQJQYwEACSABAEEBCxGrAY8BiAGHAYYBgwGCAYEBgAF/fn18enl4dwrAxAbfAcsGAht+B38gACABKAIMIh1BAXSsIgcgHawiE34gASgCECIgrCIGIAEoAggiIUEBdKwiC358IAEoAhQiHUEBdKwiCCABKAIEIiJBAXSsIgJ+fCABKAIYIh+sIgkgASgCACIjQQF0rCIFfnwgASgCICIeQRNsrCIDIB6sIhB+fCABKAIkIh5BJmysIgQgASgCHCIBQQF0rCIUfnwgAiAGfiALIBN+fCAdrCIRIAV+fCADIBR+fCAEIAl+fCACIAd+ICGsIg4gDn58IAUgBn58IAFBJmysIg8gAawiFX58IAMgH0EBdKx+fCAEIAh+fCIXQoCAgBB8IhhCGod8IhlCgICACHwiGkIZh3wiCiAKQoCAgBB8IgxCgICA4A+DfT4CGCAAIAUgDn4gAiAirCINfnwgH0ETbKwiCiAJfnwgCCAPfnwgAyAgQQF0rCIWfnwgBCAHfnwgCCAKfiAFIA1+fCAGIA9+fCADIAd+fCAEIA5+fCAdQSZsrCARfiAjrCINIA1+fCAKIBZ+fCAHIA9+fCADIAt+fCACIAR+fCIKQoCAgBB8Ig1CGod8IhtCgICACHwiHEIZh3wiEiASQoCAgBB8IhJCgICA4A+DfT4CCCAAIAsgEX4gBiAHfnwgAiAJfnwgBSAVfnwgBCAQfnwgDEIah3wiDCAMQoCAgAh8IgxCgICA8A+DfT4CHCAAIAUgE34gAiAOfnwgCSAPfnwgAyAIfnwgBCAGfnwgEkIah3wiAyADQoCAgAh8IgNCgICA8A+DfT4CDCAAIAkgC34gBiAGfnwgByAIfnwgAiAUfnwgBSAQfnwgBCAerCIGfnwgDEIZh3wiBCAEQoCAgBB8IgRCgICA4A+DfT4CICAAIBkgGkKAgIDwD4N9IBcgGEKAgIBgg30gA0IZh3wiA0KAgIAQfCIIQhqIfD4CFCAAIAMgCEKAgIDgD4N9PgIQIAAgByAJfiARIBZ+fCALIBV+fCACIBB+fCAFIAZ+fCAEQhqHfCICIAJCgICACHwiAkKAgIDwD4N9PgIkIAAgGyAcQoCAgPAPg30gCiANQoCAgGCDfSACQhmHQhN+fCICQoCAgBB8IgVCGoh8PgIEIAAgAiAFQoCAgOAPg30+AgALnQkCJ34MfyAAIAIoAgQiKqwiCyABKAIUIitBAXSsIhR+IAI0AgAiAyABNAIYIgZ+fCACKAIIIiysIg0gATQCECIHfnwgAigCDCItrCIQIAEoAgwiLkEBdKwiFX58IAIoAhAiL6wiESABNAIIIgh+fCACKAIUIjCsIhYgASgCBCIxQQF0rCIXfnwgAigCGCIyrCIgIAE0AgAiCX58IAIoAhwiM0ETbKwiDCABKAIkIjRBAXSsIhh+fCACKAIgIjVBE2ysIgQgATQCICIKfnwgAigCJCICQRNsrCIFIAEoAhwiAUEBdKwiGX58IAcgC34gAyArrCIafnwgDSAurCIbfnwgCCAQfnwgESAxrCIcfnwgCSAWfnwgMkETbKwiDiA0rCIdfnwgCiAMfnwgBCABrCIefnwgBSAGfnwgCyAVfiADIAd+fCAIIA1+fCAQIBd+fCAJIBF+fCAwQRNsrCIfIBh+fCAKIA5+fCAMIBl+fCAEIAZ+fCAFIBR+fCIiQoCAgBB8IiNCGod8IiRCgICACHwiJUIZh3wiEiASQoCAgBB8IhNCgICA4A+DfT4CGCAAIAsgF34gAyAIfnwgCSANfnwgLUETbKwiDyAYfnwgCiAvQRNsrCISfnwgGSAffnwgBiAOfnwgDCAUfnwgBCAHfnwgBSAVfnwgCSALfiADIBx+fCAsQRNsrCIhIB1+fCAKIA9+fCASIB5+fCAGIB9+fCAOIBp+fCAHIAx+fCAEIBt+fCAFIAh+fCAqQRNsrCAYfiADIAl+fCAKICF+fCAPIBl+fCAGIBJ+fCAUIB9+fCAHIA5+fCAMIBV+fCAEIAh+fCAFIBd+fCIhQoCAgBB8IiZCGod8IidCgICACHwiKEIZh3wiDyAPQoCAgBB8IilCgICA4A+DfT4CCCAAIAYgC34gAyAefnwgDSAafnwgByAQfnwgESAbfnwgCCAWfnwgHCAgfnwgCSAzrCIPfnwgBCAdfnwgBSAKfnwgE0Iah3wiEyATQoCAgAh8IhNCgICA8A+DfT4CHCAAIAggC34gAyAbfnwgDSAcfnwgCSAQfnwgEiAdfnwgCiAffnwgDiAefnwgBiAMfnwgBCAafnwgBSAHfnwgKUIah3wiBCAEQoCAgAh8IgRCgICA8A+DfT4CDCAAIAsgGX4gAyAKfnwgBiANfnwgECAUfnwgByARfnwgFSAWfnwgCCAgfnwgDyAXfnwgCSA1rCIMfnwgBSAYfnwgE0IZh3wiBSAFQoCAgBB8IgVCgICA4A+DfT4CICAAICQgJUKAgIDwD4N9ICIgI0KAgIBgg30gBEIZh3wiBEKAgIAQfCIOQhqIfD4CFCAAIAQgDkKAgIDgD4N9PgIQIAAgCiALfiADIB1+fCANIB5+fCAGIBB+fCARIBp+fCAHIBZ+fCAbICB+fCAIIA9+fCAMIBx+fCAJIAKsfnwgBUIah3wiAyADQoCAgAh8IgNCgICA8A+DfT4CJCAAICcgKEKAgIDwD4N9ICEgJkKAgIBgg30gA0IZh0ITfnwiA0KAgIAQfCIGQhqIfD4CBCAAIAMgBkKAgIDgD4N9PgIAC+4EAQ9/IAEoAgwhBCABKAIIIQUgASgCBCEGIwBBQGpBQHEiAyABKAIAIgFB/wFxQQJ0QbCTAmooAgA2AgAgAyAGQQZ2QfwHcUGwkwJqKAIANgIEIAMgBUEOdkH8B3FBsJMCaigCADYCCCADIARBFnZB/AdxQbCTAmooAgA2AgwgAyAGQf8BcUECdEGwkwJqKAIANgIQIAMgBUEGdkH8B3FBsJMCaigCADYCFCADIARBDnZB/AdxQbCTAmooAgA2AhggAyABQRZ2QfwHcUGwkwJqKAIANgIcIAMgBUH/AXFBAnRBsJMCaigCADYCICADIARBBnZB/AdxQbCTAmooAgA2AiQgAyABQQ52QfwHcUGwkwJqKAIANgIoIAMgBkEWdkH8B3FBsJMCaigCADYCLCADIARB/wFxQQJ0QbCTAmooAgA2AjAgAyABQQZ2QfwHcUGwkwJqKAIANgI0IAMgBkEOdkH8B3FBsJMCaigCADYCOCADIAVBFnZB/AdxQbCTAmooAgA2AjwgAygCDCEBIAMoAgAhBCADKAIEIQUgAygCCCEGIAMoAhwhByADKAIQIQggAygCFCEJIAMoAhghCiADKAIsIQsgAygCICEMIAMoAiQhDSADKAIoIQ4gAigCACEPIAIoAgQhECACKAIIIREgACACKAIMIAMoAjAgAygCNEEId3MgAygCOEEQd3MgAygCPEEYd3NzNgIMIAAgESAMIA1BCHdzIA5BEHdzIAtBGHdzczYCCCAAIBAgCCAJQQh3cyAKQRB3cyAHQRh3c3M2AgQgACAPIAQgBUEId3MgBkEQd3MgAUEYd3NzNgIACwsAIABBACABEAkaC/ICAgJ/AX4CQCACRQ0AIAAgAToAACAAIAJqIgNBAWsgAToAACACQQNJDQAgACABOgACIAAgAToAASADQQNrIAE6AAAgA0ECayABOgAAIAJBB0kNACAAIAE6AAMgA0EEayABOgAAIAJBCUkNACAAQQAgAGtBA3EiBGoiAyABQf8BcUGBgoQIbCIBNgIAIAMgAiAEa0F8cSIEaiICQQRrIAE2AgAgBEEJSQ0AIAMgATYCCCADIAE2AgQgAkEIayABNgIAIAJBDGsgATYCACAEQRlJDQAgAyABNgIYIAMgATYCFCADIAE2AhAgAyABNgIMIAJBEGsgATYCACACQRRrIAE2AgAgAkEYayABNgIAIAJBHGsgATYCACAEIANBBHFBGHIiBGsiAkEgSQ0AIAGtQoGAgIAQfiEFIAMgBGohAQNAIAEgBTcDGCABIAU3AxAgASAFNwMIIAEgBTcDACABQSBqIQEgAkEgayICQR9LDQALCyAAC4IEAQN/IAJBgARPBEAgACABIAIQAyAADwsgACACaiEDAkAgACABc0EDcUUEQAJAIABBA3FFBEAgACECDAELIAJFBEAgACECDAELIAAhAgNAIAIgAS0AADoAACABQQFqIQEgAkEBaiICQQNxRQ0BIAIgA0kNAAsLIANBfHEhBAJAIANBwABJDQAgAiAEQUBqIgVLDQADQCACIAEoAgA2AgAgAiABKAIENgIEIAIgASgCCDYCCCACIAEoAgw2AgwgAiABKAIQNgIQIAIgASgCFDYCFCACIAEoAhg2AhggAiABKAIcNgIcIAIgASgCIDYCICACIAEoAiQ2AiQgAiABKAIoNgIoIAIgASgCLDYCLCACIAEoAjA2AjAgAiABKAI0NgI0IAIgASgCODYCOCACIAEoAjw2AjwgAUFAayEBIAJBQGsiAiAFTQ0ACwsgAiAETw0BA0AgAiABKAIANgIAIAFBBGohASACQQRqIgIgBEkNAAsMAQsgA0EESQRAIAAhAgwBCyAAIANBBGsiBEsEQCAAIQIMAQsgACECA0AgAiABLQAAOgAAIAIgAS0AAToAASACIAEtAAI6AAIgAiABLQADOgADIAFBBGohASACQQRqIgIgBE0NAAsLIAIgA0kEQANAIAIgAS0AADoAACABQQFqIQEgAkEBaiICIANHDQALCyAACxgBAX9BlKYCKAIAIgAEQCAAERMACxACAAsEAEEgC4kGAgd+A38jAEHABWsiCyQAAkAgAlANACAAIAApA0giAyACQgOGfCIENwNIIAAgACkDQCADIARWrXwgAkI9iHw3A0AgAEHQAGohCkKAASADQgOIQv8AgyIEfSIIIAJYBEBCACEDIARC/wCFQgNaBEAgCEL8AYMhBwNAIAogAyAEfKdqIAEgA6dqLQAAOgAAIAogA0IBhCIJIAR8p2ogASAJp2otAAA6AAAgCiADQgKEIgkgBHynaiABIAmnai0AADoAACAKIANCA4QiCSAEfKdqIAEgCadqLQAAOgAAIANCBHwhAyAFQgR8IgUgB1INAAsLIAhCA4MiBUIAUgRAA0AgCiADIAR8p2ogASADp2otAAA6AAAgA0IBfCEDIAZCAXwiBiAFUg0ACwsgACAKIAsgC0GABWoiDBAsIAEgCKdqIQEgAiAIfSICQv8AVgRAA0AgACABIAsgDBAsIAFBgAFqIQEgAkKAAX0iAkL/AFYNAAsLAkAgAlANACACQgODIQRCACEGQgAhAyACQgRaBEAgAkL8AIMhBUIAIQIDQCAKIAOnIgBqIAAgAWotAAA6AAAgCiAAQQFyIgxqIAEgDGotAAA6AAAgCiAAQQJyIgxqIAEgDGotAAA6AAAgCiAAQQNyIgBqIAAgAWotAAA6AAAgA0IEfCEDIAJCBHwiAiAFUg0ACwsgBFANAANAIAogA6ciAGogACABai0AADoAACADQgF8IQMgBkIBfCIGIARSDQALCyALQcAFEAgMAQtCACEDIAJCBFoEQCACQnyDIQgDQCAKIAMgBHynaiABIAOnai0AADoAACAKIANCAYQiByAEfKdqIAEgB6dqLQAAOgAAIAogA0IChCIHIAR8p2ogASAHp2otAAA6AAAgCiADQgOEIgcgBHynaiABIAenai0AADoAACADQgR8IQMgBUIEfCIFIAhSDQALCyACQgODIgJQDQADQCAKIAMgBHynaiABIAOnai0AADoAACADQgF8IQMgBkIBfCIGIAJSDQALCyALQcAFaiQAQQALnwQBE38gASgCBCECIAEoAiwhAyABKAIIIQQgASgCMCEFIAEoAgwhBiABKAI0IQcgASgCECEIIAEoAjghCSABKAIUIQogASgCPCELIAEoAhghDCABQUBrIg0oAgAhDiABKAIcIQ8gASgCRCEQIAEoAiAhESABKAJIIRIgASgCJCETIAEoAkwhFCAAIAEoAgAgASgCKGo2AgAgACATIBRqNgIkIAAgESASajYCICAAIA8gEGo2AhwgACAMIA5qNgIYIAAgCiALajYCFCAAIAggCWo2AhAgACAGIAdqNgIMIAAgBCAFajYCCCAAIAIgA2o2AgQgASgCBCECIAEoAiwhAyABKAIIIQQgASgCMCEFIAEoAgwhBiABKAI0IQcgASgCECEIIAEoAjghCSABKAIUIQogASgCPCELIAEoAhghDCANKAIAIQ0gASgCHCEOIAEoAkQhDyABKAIgIRAgASgCSCERIAEoAgAhEiABKAIoIRMgACABKAJMIAEoAiRrNgJMIAAgESAQazYCSCAAIA8gDms2AkQgAEFAayANIAxrNgIAIAAgCyAKazYCPCAAIAkgCGs2AjggACAHIAZrNgI0IAAgBSAEazYCMCAAIAMgAms2AiwgACATIBJrNgIoIAAgASkCUDcCUCAAIAEpAlg3AlggACABKQJgNwJgIAAgASkCaDcCaCAAIAEpAnA3AnAgAEH4AGogAUH4AGpBkAsQBgvwCQEdfyABKAIEIQQgASgCLCEDIAEoAgghBSABKAIwIQYgASgCDCEHIAEoAjQhCCABKAIQIQkgASgCOCEKIAEoAhQhCyABKAI8IQwgASgCGCENIAFBQGsiDigCACEPIAEoAhwhECABKAJEIREgASgCICESIAEoAkghEyABKAIkIRQgASgCTCEVIAAgASgCACABKAIoajYCACAAIBQgFWo2AiQgACASIBNqNgIgIAAgECARajYCHCAAIA0gD2o2AhggACALIAxqNgIUIAAgCSAKajYCECAAIAcgCGo2AgwgACAFIAZqNgIIIAAgAyAEajYCBCABKAIEIQMgASgCLCEFIAEoAgghBiABKAIwIQcgASgCDCEIIAEoAjQhCSABKAIQIQogASgCOCELIAEoAhQhDCABKAI8IQ0gASgCGCEPIA4oAgAhDiABKAIcIQQgASgCRCEQIAEoAiAhESABKAJIIRIgASgCACETIAEoAighFCAAIAEoAkwgASgCJGs2AkwgACASIBFrNgJIIAAgECAEazYCRCAAQUBrIgQgDiAPazYCACAAIA0gDGs2AjwgACALIAprNgI4IAAgCSAIazYCNCAAIAcgBms2AjAgACAFIANrNgIsIAAgFCATazYCKCAAQdAAaiAAIAIQBiAAQShqIgMgAyACQShqEAYgAEH4AGogAkH4AGogAUH4AGoQBiAAIAFB0ABqIAJB0ABqEAYgACgCBCEUIAAoAgghFSAAKAIMIRYgACgCECEXIAAoAhQhGCAAKAIYIRkgACgCHCEaIAAoAiAhGyAAKAIkIRwgACgCLCEBIAAoAlQhAiAAKAIwIQMgACgCWCEFIAAoAjQhBiAAKAJcIQcgACgCOCEIIAAoAmAhCSAAKAI8IQogACgCZCELIAQoAgAhDCAAKAJoIQ0gACgCRCEOIAAoAmwhDyAAKAJIIRAgACgCcCERIAAoAgAhHSAAKAIoIRIgACgCUCETIAAgACgCTCIeIAAoAnQiH2o2AkwgACAQIBFqNgJIIAAgDiAPajYCRCAEIAwgDWo2AgAgACAKIAtqNgI8IAAgCCAJajYCOCAAIAYgB2o2AjQgACADIAVqNgIwIAAgASACajYCLCAAIBIgE2o2AiggACAfIB5rNgIkIAAgESAQazYCICAAIA8gDms2AhwgACANIAxrNgIYIAAgCyAKazYCFCAAIAkgCGs2AhAgACAHIAZrNgIMIAAgBSADazYCCCAAIAIgAWs2AgQgACATIBJrNgIAIAAgHEEBdCIBIAAoApwBIgJrNgKcASAAIBtBAXQiBCAAKAKYASIDazYCmAEgACAaQQF0IgUgACgClAEiBms2ApQBIAAgGUEBdCIHIAAoApABIghrNgKQASAAIBhBAXQiCSAAKAKMASIKazYCjAEgACAXQQF0IgsgACgCiAEiDGs2AogBIAAgFkEBdCINIAAoAoQBIg5rNgKEASAAIBVBAXQiDyAAKAKAASIQazYCgAEgACAUQQF0IhEgACgCfCISazYCfCAAIB1BAXQiEyAAKAJ4IhRrNgJ4IAAgAyAEajYCcCAAIAUgBmo2AmwgACAHIAhqNgJoIAAgCSAKajYCZCAAIAsgDGo2AmAgACANIA5qNgJcIAAgDyAQajYCWCAAIBEgEmo2AlQgACATIBRqNgJQIAAgASACajYCdAsEAEEQC9QBAgV/An4CfyACQgBSBEAgAEHgAWohByAAQeAAaiEDIAAoAOACIQQDQCADIARqIQZBgAIgBGsiBa0iCCACWgRAIAYgASACpyIBEAoaIAAgACgA4AIgAWo2AOACQQAMAwsgBiABIAUQChogACAAKADgAiAFajYA4AIgACAAKQBAIglCgAF8NwBAIAAgACkASCAJQv9+Vq18NwBIIAAgAxA8IAMgB0GAARAKGiAAIAAoAOACQYABayIENgDgAiABIAVqIQEgAiAIfSICQgBSDQALC0EACwsNACAAIAEgAhANGkEACwgAIABBIBAYC70IAgF+A38jAEHABWsiAyQAIAAgACgCSEEDdkH/AHEiBGpB0ABqIQUCQCAEQfAATwRAIAVBsI4CQYABIARrEAoaIAAgAEHQAGoiBCADIANBgAVqECwgBEEAQfAAEAkaDAELIAVBsI4CQfAAIARrEAoaCyAAIAApA0AiAkI4hiACQoD+A4NCKIaEIAJCgID8B4NCGIYgAkKAgID4D4NCCIaEhCACQgiIQoCAgPgPgyACQhiIQoCA/AeDhCACQiiIQoD+A4MgAkI4iISEhDcAwAEgACAAKQNIIgJCOIYgAkKA/gODQiiGhCACQoCA/AeDQhiGIAJCgICA+A+DQgiGhIQgAkIIiEKAgID4D4MgAkIYiEKAgPwHg4QgAkIoiEKA/gODIAJCOIiEhIQ3AMgBIAAgAEHQAGogAyADQYAFahAsIAEgACkDACICQjiGIAJCgP4Dg0IohoQgAkKAgPwHg0IYhiACQoCAgPgPg0IIhoSEIAJCCIhCgICA+A+DIAJCGIhCgID8B4OEIAJCKIhCgP4DgyACQjiIhISENwAAIAEgACkDCCICQjiGIAJCgP4Dg0IohoQgAkKAgPwHg0IYhiACQoCAgPgPg0IIhoSEIAJCCIhCgICA+A+DIAJCGIhCgID8B4OEIAJCKIhCgP4DgyACQjiIhISENwAIIAEgACkDECICQjiGIAJCgP4Dg0IohoQgAkKAgPwHg0IYhiACQoCAgPgPg0IIhoSEIAJCCIhCgICA+A+DIAJCGIhCgID8B4OEIAJCKIhCgP4DgyACQjiIhISENwAQIAEgACkDGCICQjiGIAJCgP4Dg0IohoQgAkKAgPwHg0IYhiACQoCAgPgPg0IIhoSEIAJCCIhCgICA+A+DIAJCGIhCgID8B4OEIAJCKIhCgP4DgyACQjiIhISENwAYIAEgACkDICICQjiGIAJCgP4Dg0IohoQgAkKAgPwHg0IYhiACQoCAgPgPg0IIhoSEIAJCCIhCgICA+A+DIAJCGIhCgID8B4OEIAJCKIhCgP4DgyACQjiIhISENwAgIAEgACkDKCICQjiGIAJCgP4Dg0IohoQgAkKAgPwHg0IYhiACQoCAgPgPg0IIhoSEIAJCCIhCgICA+A+DIAJCGIhCgID8B4OEIAJCKIhCgP4DgyACQjiIhISENwAoIAEgACkDMCICQjiGIAJCgP4Dg0IohoQgAkKAgPwHg0IYhiACQoCAgPgPg0IIhoSEIAJCCIhCgICA+A+DIAJCGIhCgID8B4OEIAJCKIhCgP4DgyACQjiIhISENwAwIAEgACkDOCICQjiGIAJCgP4Dg0IohoQgAkKAgPwHg0IYhiACQoCAgPgPg0IIhoSEIAJCCIhCgICA+A+DIAJCGIhCgID8B4OEIAJCKIhCgP4DgyACQjiIhISENwA4IANBwAUQCCAAQdABEAggA0HABWokAAuDBwEUfyABKAIEIQwgACgCBCEDIAEoAgghDSAAKAIIIQQgASgCDCEOIAAoAgwhBSABKAIQIQ8gACgCECEGIAEoAhQhECAAKAIUIQcgASgCGCERIAAoAhghCCABKAIcIRIgACgCHCEJIAEoAiAhEyAAKAIgIQogASgCJCEUIAAoAiQhCyAAQQAgAmsiAiAAKAIAIhUgASgCAHNxIBVzNgIAIAAgCyALIBRzIAJxczYCJCAAIAogCiATcyACcXM2AiAgACAJIAkgEnMgAnFzNgIcIAAgCCAIIBFzIAJxczYCGCAAIAcgByAQcyACcXM2AhQgACAGIAYgD3MgAnFzNgIQIAAgBSAFIA5zIAJxczYCDCAAIAQgBCANcyACcXM2AgggACADIAMgDHMgAnFzNgIEIAAoAiwhAyABKAIsIQwgACgCMCEEIAEoAjAhDSAAKAI0IQUgASgCNCEOIAAoAjghBiABKAI4IQ8gACgCPCEHIAEoAjwhECAAQUBrIhEoAgAhCCABQUBrKAIAIRIgACgCRCEJIAEoAkQhEyAAKAJIIQogASgCSCEUIAAoAighCyABKAIoIRUgACAAKAJMIhYgASgCTHMgAnEgFnM2AkwgACAKIAogFHMgAnFzNgJIIAAgCSAJIBNzIAJxczYCRCARIAggCCAScyACcXM2AgAgACAHIAcgEHMgAnFzNgI8IAAgBiAGIA9zIAJxczYCOCAAIAUgBSAOcyACcXM2AjQgACAEIAQgDXMgAnFzNgIwIAAgAyADIAxzIAJxczYCLCAAIAsgCyAVcyACcXM2AiggACgCVCEDIAEoAlQhDCAAKAJYIQQgASgCWCENIAAoAlwhBSABKAJcIQ4gACgCYCEGIAEoAmAhDyAAKAJkIQcgASgCZCEQIAAoAmghCCABKAJoIREgACgCbCEJIAEoAmwhEiAAKAJwIQogASgCcCETIAAoAlAhCyABKAJQIRQgACAAKAJ0IhUgASgCdHMgAnEgFXM2AnQgACAKIAogE3MgAnFzNgJwIAAgCSAJIBJzIAJxczYCbCAAIAggCCARcyACcXM2AmggACAHIAcgEHMgAnFzNgJkIAAgBiAGIA9zIAJxczYCYCAAIAUgBSAOcyACcXM2AlwgACAEIAQgDXMgAnFzNgJYIAAgAyADIAxzIAJxczYCVCAAIAsgCyAUcyACcXM2AlAL6AQBCX8gACABKAIgIgUgASgCHCIGIAEoAhgiByABKAIUIgggASgCECIJIAEoAgwiCiABKAIIIgQgASgCBCIDIAEoAgAiAiABKAIkIgFBE2xBgICACGpBGXZqQRp1akEZdWpBGnVqQRl1akEadWpBGXVqQRp1akEZdWpBGnUgAWpBGXVBE2wgAmoiAjoAACAAIAJBEHY6AAIgACACQQh2OgABIAAgAyACQRp1aiIDQQ52OgAFIAAgA0EGdjoABCAAIAJBGHZBA3EgA0ECdHI6AAMgACAEIANBGXVqIgJBDXY6AAggACACQQV2OgAHIAAgAkEDdCADQYCAgA5xQRZ2cjoABiAAIAogAkEadWoiBEELdjoACyAAIARBA3Y6AAogACAEQQV0IAJBgICAH3FBFXZyOgAJIAAgCSAEQRl1aiICQRJ2OgAPIAAgAkEKdjoADiAAIAJBAnY6AA0gACAIIAJBGnVqIgM6ABAgACACQQZ0IARBgIDgD3FBE3ZyOgAMIAAgA0EQdjoAEiAAIANBCHY6ABEgACAHIANBGXVqIgJBD3Y6ABUgACACQQd2OgAUIAAgA0EYdkEBcSACQQF0cjoAEyAAIAYgAkEadWoiA0ENdjoAGCAAIANBBXY6ABcgACADQQN0IAJBgICAHHFBF3ZyOgAWIAAgBSADQRl1aiICQQx2OgAbIAAgAkEEdjoAGiAAIAJBBHQgA0GAgIAPcUEVdnI6ABkgACABIAJBGnVqIgFBCnY6AB4gACABQQJ2OgAdIAAgAUGAgPAPcUESdjoAHyAAIAFBBnQgAkGAgMAfcUEUdnI6ABwLBABBAAtEAQJ/IwBBEGsiAiQAIAEEQANAIAJBADoADyAAIANqQdCbAiACQQ9qQQAQADoAACADQQFqIgMgAUcNAAsLIAJBEGokAAvhDgIcfh9/IwBBMGsiHiQAIAAgARAFIABB0ABqIAFBKGoQBSAAIAEoAlwiIkEBdKwiCCABKAJUIiNBAXSsIgJ+IAEoAlgiJKwiDSANfnwgASgCYCIlrCIHIAEoAlAiJkEBdKwiBX58IAEoAmwiH0EmbKwiDiAfrCIRfnwgASgCcCInQRNsrCIDIAEoAmgiIEEBdKx+fCABKAJ0IihBJmysIgQgASgCZCIhQQF0rCIJfnxCAYYiFUKAgIAQfCIWQhqHIAIgB34gJEEBdKwiCyAirCISfnwgIawiDyAFfnwgAyAfQQF0rCITfnwgBCAgrCIKfnxCAYZ8IhdCgICACHwiGEIZhyAIIBJ+IAcgC358IAIgCX58IAUgCn58IAMgJ6wiEH58IAQgE358QgGGfCIGIAZCgICAEHwiDEKAgIDgD4N9PgKQASAAICFBJmysIA9+ICasIgYgBn58ICBBE2ysIgYgJUEBdKwiFH58IAggDn58IAMgC358IAIgBH58QgGGIhlCgICAEHwiGkIahyAGIAl+IAUgI6wiG358IAcgDn58IAMgCH58IAQgDX58QgGGfCIcQoCAgAh8Ih1CGYcgBSANfiACIBt+fCAGIAp+fCAJIA5+fCADIBR+fCAEIAh+fEIBhnwiBiAGQoCAgBB8IgZCgICA4A+DfT4CgAEgACALIA9+IAcgCH58IAIgCn58IAUgEX58IAQgEH58QgGGIAxCGod8IgwgDEKAgIAIfCIMQoCAgPAPg30+ApQBIAAgBSASfiACIA1+fCAKIA5+fCADIAl+fCAEIAd+fEIBhiAGQhqHfCIDIANCgICACHwiA0KAgIDwD4N9PgKEASAAIAogC34gByAHfnwgCCAJfnwgAiATfnwgBSAQfnwgBCAorCIHfnxCAYYgDEIZh3wiBCAEQoCAgBB8IgRCgICA4A+DfT4CmAEgACAXIBhCgICA8A+DfSAVIBZCgICAYIN9IANCGYd8IgNCgICAEHwiCUIaiHw+AowBIAAgAyAJQoCAgOAPg30+AogBIAAgCCAKfiAPIBR+fCALIBF+fCACIBB+fCAFIAd+fEIBhiAEQhqHfCICIAJCgICACHwiAkKAgIDwD4N9PgKcASAAIBwgHUKAgIDwD4N9IBkgGkKAgIBgg30gAkIZh0ITfnwiAkKAgIAQfCIFQhqIfD4CfCAAIAIgBUKAgIDgD4N9PgJ4IAEoAiwhHyABKAIEISAgASgCMCEhIAEoAgghIiABKAI0ISMgASgCDCEkIAEoAjghJSABKAIQISYgASgCPCEnIAEoAhQhKCABQUBrKAIAISkgASgCGCEqIAEoAkQhKyABKAIcISwgASgCSCEtIAEoAiAhLiABKAIoIS8gASgCACEwIAAgASgCTCABKAIkajYCTCAAIC0gLmo2AkggACArICxqNgJEIABBQGsiMSApICpqNgIAIAAgJyAoajYCPCAAICUgJmo2AjggACAjICRqNgI0IAAgISAiajYCMCAAIB8gIGo2AiwgACAvIDBqNgIoIB4gAEEoahAFIAAoAgQhASAAKAJUIR8gACgCCCEgIAAoAlghISAAKAIMISIgACgCXCEjIAAoAhAhJCAAKAJgISUgACgCFCEmIAAoAmQhJyAAKAIYISggACgCaCEpIAAoAhwhKiAAKAJsISsgACgCICEsIAAoAnAhLSAAKAIAIS4gACgCUCEvIAAgACgCdCIwIAAoAiQiMmsiMzYCdCAAIC0gLGsiNDYCcCAAICsgKmsiNTYCbCAAICkgKGsiNjYCaCAAICcgJmsiNzYCZCAAICUgJGsiODYCYCAAICMgImsiOTYCXCAAICEgIGsiOjYCWCAAIB8gAWsiOzYCVCAAIC8gLmsiPDYCUCAAIDAgMmoiMDYCTCAAICwgLWoiLDYCSCAAICogK2oiKjYCRCAxICggKWoiKDYCACAAICYgJ2oiJjYCPCAAICQgJWoiJDYCOCAAICIgI2oiIjYCNCAAICAgIWoiIDYCMCAAIAEgH2oiATYCLCAAIC4gL2oiHzYCKCAeKAIAISEgHigCBCEjIB4oAgghJSAeKAIMIScgHigCECEpIB4oAhQhKyAeKAIYIS0gHigCHCEuIB4oAiAhLyAAIB4oAiQgMGs2AiQgACAvICxrNgIgIAAgLiAqazYCHCAAIC0gKGs2AhggACArICZrNgIUIAAgKSAkazYCECAAICcgIms2AgwgACAlICBrNgIIIAAgIyABazYCBCAAICEgH2s2AgAgACgCfCEBIAAoAoABIR8gACgChAEhICAAKAKIASEhIAAoAowBISIgACgCkAEhIyAAKAKUASEkIAAoApgBISUgACgCeCEmIAAgACgCnAEgM2s2ApwBIAAgJSA0azYCmAEgACAkIDVrNgKUASAAICMgNms2ApABIAAgIiA3azYCjAEgACAhIDhrNgKIASAAICAgOWs2AoQBIAAgHyA6azYCgAEgACABIDtrNgJ8IAAgJiA8azYCeCAeQTBqJAALDAAgACABIAIQKkEAC3AAIABCADcDQCAAQgA3A0ggAEHwiAIpAwA3AwAgAEH4iAIpAwA3AwggAEGAiQIpAwA3AxAgAEGIiQIpAwA3AxggAEGQiQIpAwA3AyAgAEGYiQIpAwA3AyggAEGgiQIpAwA3AzAgAEGoiQIpAwA3AzgLJAAgAUKAgICAEFoEQBALAAsgACABIAIgA0HEmwIoAgARDgAaCwUAQcAACzcBAX8jAEFAaiICJAAgACACEBQgAEHQAWoiACACQsAAEA0aIAAgARAUIAJBwAAQCCACQUBrJAAL1gQBCH8jAEHAAWsiBSQAIAJBgQFPBEAgABAbIAAgASACrRANGiAAIAUQFEHAACECIAUhAQsgABAbIAVBQGtBNkGAARAJGgJAIAJFDQAgAkEETwRAIAJB/AFxIQoDQCAFQUBrIgggA2oiBCAELQAAIAEgA2otAABzOgAAIAggA0EBciIEaiIGIAYtAAAgASAEai0AAHM6AAAgCCADQQJyIgRqIgYgBi0AACABIARqLQAAczoAACAIIANBA3IiBGoiBiAGLQAAIAEgBGotAABzOgAAIANBBGohAyAHQQRqIgcgCkcNAAsLIAJBA3EiB0UNAANAIAVBQGsgA2oiCiAKLQAAIAEgA2otAABzOgAAIANBAWohAyAJQQFqIgkgB0cNAAsLIAAgBUFAayIDQoABEA0aIABB0AFqIgAQGyADQdwAQYABEAkaAkAgAkUNAEEAIQlBACEDIAJBBE8EQCACQfwBcSEKQQAhBwNAIAVBQGsiCCADaiIEIAQtAAAgASADai0AAHM6AAAgCCADQQFyIgRqIgYgBi0AACABIARqLQAAczoAACAIIANBAnIiBGoiBiAGLQAAIAEgBGotAABzOgAAIAggA0EDciIEaiIGIAYtAAAgASAEai0AAHM6AAAgA0EEaiEDIAdBBGoiByAKRw0ACwsgAkEDcSICRQ0AA0AgBUFAayADaiIHIActAAAgASADai0AAHM6AAAgA0EBaiEDIAlBAWoiCSACRw0ACwsgACAFQUBrIgBCgAEQDRogAEGAARAIIAVBwAAQCCAFQcABaiQAQQALlQEBAX8jAEHQAWsiAyQAIANCADcDSCADQfiIAikDADcDCCADQYCJAikDADcDECADQYiJAikDADcDGCADQZCJAikDADcDICADQZiJAikDADcDKCADQaCJAikDADcDMCADQaiJAikDADcDOCADQgA3A0AgA0HwiAIpAwA3AwAgAyABIAIQDRogAyAAEBQgA0HQAWokAEEAC0AAAkAgBK1CgICAgBAgAkI/fEIGiH1WDQAgAkKAgICAEFoNACAAIAEgAiADIAQgBUHMmwIoAgARCgAaDwsQCwAL7wMBAX8jAEEQayICIAA2AgwgAiABNgIIIAJBADYCBCACIAIoAgQgAigCDC0AACACKAIILQAAc3I2AgQgAiACKAIEIAIoAgwtAAEgAigCCC0AAXNyNgIEIAIgAigCBCACKAIMLQACIAIoAggtAAJzcjYCBCACIAIoAgQgAigCDC0AAyACKAIILQADc3I2AgQgAiACKAIEIAIoAgwtAAQgAigCCC0ABHNyNgIEIAIgAigCBCACKAIMLQAFIAIoAggtAAVzcjYCBCACIAIoAgQgAigCDC0ABiACKAIILQAGc3I2AgQgAiACKAIEIAIoAgwtAAcgAigCCC0AB3NyNgIEIAIgAigCBCACKAIMLQAIIAIoAggtAAhzcjYCBCACIAIoAgQgAigCDC0ACSACKAIILQAJc3I2AgQgAiACKAIEIAIoAgwtAAogAigCCC0ACnNyNgIEIAIgAigCBCACKAIMLQALIAIoAggtAAtzcjYCBCACIAIoAgQgAigCDC0ADCACKAIILQAMc3I2AgQgAiACKAIEIAIoAgwtAA0gAigCCC0ADXNyNgIEIAIgAigCBCACKAIMLQAOIAIoAggtAA5zcjYCBCACIAIoAgQgAigCDC0ADyACKAIILQAPc3I2AgQgAigCBEEBa0EIdkEBcUEBawv3AgEDfwJ/AkACQAJAIAEiBEH/AXEiAQRAIABBA3EEQANAIAAtAAAiAkUNBSABIAJGDQUgAEEBaiIAQQNxDQALC0GAgoQIIAAoAgAiAmsgAnJBgIGChHhxQYCBgoR4Rw0BIAFBgYKECGwhAwNAQYCChAggAiADcyIBayABckGAgYKEeHFBgIGChHhHDQIgACgCBCECIABBBGoiASEAIAJBgIKECCACa3JBgIGChHhxQYCBgoR4Rg0ACwwCCwJ/AkACQCAAIgJBA3FFDQBBACAALQAARQ0CGgNAIABBAWoiAEEDcUUNASAALQAADQALDAELA0AgACIBQQRqIQBBgIKECCABKAIAIgNrIANyQYCBgoR4cUGAgYKEeEYNAAsDQCABIgBBAWohASAALQAADQALCyAAIAJrCyACagwDCyAAIQELA0AgASIALQAAIgJFDQEgAEEBaiEBIAIgBEH/AXFHDQALCyAACyIAQQAgAC0AACAEQf8BcUYbC1IBAn9BgJMCKAIAIgEgAEEHakF4cSICaiEAAkAgAkEAIAAgAU0bRQRAIAA/AEEQdE0NASAAEAQNAQtBgKICQTA2AgBBfw8LQYCTAiAANgIAIAELxwEBBX8jAEEQayICQQA6AA8CQCABRQ0AIAFBBE8EQCABQXxxIQYDQCACIAAgA2oiBC0AACACLQAPcjoADyACIAQtAAEgAi0AD3I6AA8gAiAELQACIAItAA9yOgAPIAIgBC0AAyACLQAPcjoADyADQQRqIQMgBUEEaiIFIAZHDQALCyABQQNxIgRFDQBBACEBA0AgAiAAIANqLQAAIAItAA9yOgAPIANBAWohAyABQQFqIgEgBEcNAAsLIAItAA9BAWtBCHZBAXELMgECfyMAQSBrIgMkAEF/IQQgAyACIAEQMEUEQCAAQfCSAiADEEghBAsgA0EgaiQAIAQL+wMBAn9BfyEEAkAgAkHAAEsNACADQcEAa0FASQ0AAkAgAUEAIAIbRQRAIANB/wFxIgFBwQBrQf8BcUG/AU0EQBALAAsgAEFAa0EAQaUCEAkaIABC+cL4m5Gjs/DbADcAOCAAQuv6htq/tfbBHzcAMCAAQp/Y+dnCkdqCm383ACggAELRhZrv+s+Uh9EANwAgIABC8e30+KWn/aelfzcAGCAAQqvw0/Sv7ry3PDcAECAAQrvOqqbY0Ouzu383AAggACABrUKIkveV/8z5hOoAhTcAAAwBCwJ/IAJB/wFxIQIjAEGAAWsiBSQAAkAgA0H/AXEiA0HBAGtB/wFxQb8BTQ0AIAFFDQAgAkHBAGtB/wFxQb8BTQ0AIABBQGtBAEGlAhAJGiAAQvnC+JuRo7Pw2wA3ADggAELr+obav7X2wR83ADAgAEKf2PnZwpHagpt/NwAoIABC0YWa7/rPlIfRADcAICAAQvHt9Pilp/2npX83ABggAEKr8NP0r+68tzw3ABAgAEK7zqqm2NDrs7t/NwAIIAAgA60gAq1CCIaEQoiS95X/zPmE6gCFNwAAIABB4ABqIAVBAEGAARAJIAEgAhAKIgFBgAEQChogACAAKADgAkGAAWo2AOACIAFBgAEQCCABQYABaiQAQQAMAQsQCwALDQELQQAhBAsgBAsEAEFvC4MDAgN/AX4jAEHgAmsiBiQAIAYgBCAFEEgaAn8CQAJAIAAgAksgACACa60gA1RxRQRAIAAgAk8NASACIABrrSADWg0BCyAAIAIgA6cQNiECIAZCADcDOCAGQgA3AzAgBkIANwMoIAZCADcDIEIgIAMgA0IgWhshCSADQiBWIQUMAQsgBkIANwM4IAZCADcDMCAGQgA3AyggBkIANwMgQiAgAyADQiBaGyEJIANCIFYhBSADQgBSDQBBAQwBCyAGQUBrIAIgCacQChpBAAsgBkEgaiIHIAcgCUIgfCAEQRBqIgRCACAGQaSTAigCABEMABogBkHgAGogB0GMkwIoAgARAQAaRQRAIAAgBkFAayAJpxAKGgsgBkEgakHAABAIIAUEQCAAIAmnIgVqIAIgBWogAyAJfSAEQgEgBkGkkwIoAgARDAAaCyAGQSAQCCAGQeAAaiICIAAgA0GQkwIoAgARAAAaIAIgAUGUkwIoAgARAQAaIAJBgAIQCCAGQeACaiQAQQAL5gUCB34DfyMAQaACayILJAACQCACUA0AIAAgACkDICIDIAJCA4Z8NwMgIABBKGohCkLAACADQgOIQj+DIgR9IgUgAlgEQEIAIQMgBEI/hUIDWgRAIAVC/ACDIQYDQCAKIAMgBHynaiABIAOnai0AADoAACAKIANCAYQiCCAEfKdqIAEgCKdqLQAAOgAAIAogA0IChCIIIAR8p2ogASAIp2otAAA6AAAgCiADQgOEIgggBHynaiABIAinai0AADoAACADQgR8IQMgCUIEfCIJIAZSDQALCyAFQgODIglCAFIEQANAIAogAyAEfKdqIAEgA6dqLQAAOgAAIANCAXwhAyAHQgF8IgcgCVINAAsLIAAgCiALIAtBgAJqIgwQOSABIAWnaiEBIAIgBX0iAkI/VgRAA0AgACABIAsgDBA5IAFBQGshASACQkB8IgJCP1YNAAsLAkAgAlANACACQgODIQRCACEHQgAhAyACQgRaBEAgAkI8gyEFQgAhAgNAIAogA6ciAGogACABai0AADoAACAKIABBAXIiDGogASAMai0AADoAACAKIABBAnIiDGogASAMai0AADoAACAKIABBA3IiAGogACABai0AADoAACADQgR8IQMgAkIEfCICIAVSDQALCyAEUA0AA0AgCiADpyIAaiAAIAFqLQAAOgAAIANCAXwhAyAHQgF8IgcgBFINAAsLIAtBoAIQCAwBC0IAIQMgAkIEWgRAIAJCfIMhBQNAIAogAyAEfKdqIAEgA6dqLQAAOgAAIAogA0IBhCIGIAR8p2ogASAGp2otAAA6AAAgCiADQgKEIgYgBHynaiABIAanai0AADoAACAKIANCA4QiBiAEfKdqIAEgBqdqLQAAOgAAIANCBHwhAyAJQgR8IgkgBVINAAsLIAJCA4MiAlANAANAIAogAyAEfKdqIAEgA6dqLQAAOgAAIANCAXwhAyAHQgF8IgcgAlINAAsLIAtBoAJqJAALJgAgAkGAAk8EQEHgCUGXCUHrAEGfCBABAAsgACABIAJB/wFxEEoL+xcCEH4QfwNAIAIgFUEDdCIWaiABIBZqKQAAIgRCOIYgBEKA/gODQiiGhCAEQoCA/AeDQhiGIARCgICA+A+DQgiGhIQgBEIIiEKAgID4D4MgBEIYiEKAgPwHg4QgBEIoiEKA/gODIARCOIiEhIQ3AwAgFUEBaiIVQRBHDQALIAMgACkDADcDACADIAApAzg3AzggAyAAKQMwNwMwIAMgACkDKDcDKCADIAApAyA3AyAgAyAAKQMYNwMYIAMgACkDEDcDECADIAApAwg3AwhBACEWA0AgAyADKQM4IAIgFkEDdCIBaiIVKQMAIAMpAyAiB0IyiSAHQi6JhSAHQheJhXwgAUGwiQJqKQMAfCAHIAMpAzAiCyADKQMoIgmFgyALhXx8IgQgAykDGHwiCjcDGCADIAMpAwAiBkIkiSAGQh6JhSAGQhmJhSAEfCADKQMQIgUgAykDCCIIhCAGgyAFIAiDhHwiBDcDOCADIAUgAiABQQhyIhRqIhopAwAgCyAJIAogByAJhYOFfCAKQjKJIApCLomFIApCF4mFfHwgFEGwiQJqKQMAfCILfCIFNwMQIAMgBCAGIAiEgyAGIAiDhCALfCAEQiSJIARCHomFIARCGYmFfCILNwMwIAMgCCAJIAIgAUEQciIUaiIbKQMAfCAUQbCJAmopAwB8IAcgBSAHIAqFg4V8IAVCMokgBUIuiYUgBUIXiYV8Igx8Igk3AwggAyALIAQgBoSDIAQgBoOEIAtCJIkgC0IeiYUgC0IZiYV8IAx8Igg3AyggAyAGIAcgAiABQRhyIhRqIhwpAwB8IBRBsIkCaikDAHwgCSAFIAqFgyAKhXwgCUIyiSAJQi6JhSAJQheJhXwiDHwiBzcDACADIAggBCALhIMgBCALg4QgCEIkiSAIQh6JhSAIQhmJhXwgDHwiBjcDICADIAIgAUEgciIUaiIdKQMAIAp8IBRBsIkCaikDAHwgByAFIAmFgyAFhXwgB0IyiSAHQi6JhSAHQheJhXwiDCAGIAggC4SDIAggC4OEIAZCJIkgBkIeiYUgBkIZiYV8fCIKNwMYIAMgBCAMfCIMNwM4IAMgAiABQShyIhRqIh4pAwAgBXwgFEGwiQJqKQMAfCAMIAcgCYWDIAmFfCAMQjKJIAxCLomFIAxCF4mFfCIFIAogBiAIhIMgBiAIg4QgCkIkiSAKQh6JhSAKQhmJhXx8IgQ3AxAgAyAFIAt8IgU3AzAgAyACIAFBMHIiFGoiHykDACAJfCAUQbCJAmopAwB8IAUgByAMhYMgB4V8IAVCMokgBUIuiYUgBUIXiYV8IgkgBCAGIAqEgyAGIAqDhCAEQiSJIARCHomFIARCGYmFfHwiCzcDCCADIAggCXwiCTcDKCADIAIgAUE4ciIUaiIgKQMAIAd8IBRBsIkCaikDAHwgCSAFIAyFgyAMhXwgCUIyiSAJQi6JhSAJQheJhXwiByALIAQgCoSDIAQgCoOEIAtCJIkgC0IeiYUgC0IZiYV8fCIINwMAIAMgBiAHfCIHNwMgIAMgAiABQcAAciIUaiIhKQMAIAx8IBRBsIkCaikDAHwgByAFIAmFgyAFhXwgB0IyiSAHQi6JhSAHQheJhXwiDCAIIAQgC4SDIAQgC4OEIAhCJIkgCEIeiYUgCEIZiYV8fCIGNwM4IAMgCiAMfCIMNwMYIAMgAiABQcgAciIUaiIiKQMAIAV8IBRBsIkCaikDAHwgDCAHIAmFgyAJhXwgDEIyiSAMQi6JhSAMQheJhXwiBSAGIAggC4SDIAggC4OEIAZCJIkgBkIeiYUgBkIZiYV8fCIKNwMwIAMgBCAFfCIFNwMQIAMgCSACIAFB0AByIhRqIiMpAwB8IBRBsIkCaikDAHwgBSAHIAyFgyAHhXwgBUIyiSAFQi6JhSAFQheJhXwiCSAKIAYgCISDIAYgCIOEIApCJIkgCkIeiYUgCkIZiYV8fCIENwMoIAMgCSALfCIJNwMIIAMgAUHYAHIiFEGwiQJqKQMAIAIgFGoiFCkDAHwgB3wgCSAFIAyFgyAMhXwgCUIyiSAJQi6JhSAJQheJhXwiByAEIAYgCoSDIAYgCoOEIARCJIkgBEIeiYUgBEIZiYV8fCILNwMgIAMgByAIfCIINwMAIAMgAUHgAHIiF0GwiQJqKQMAIAIgF2oiFykDAHwgDHwgCCAFIAmFgyAFhXwgCEIyiSAIQi6JhSAIQheJhXwiDCALIAQgCoSDIAQgCoOEIAtCJIkgC0IeiYUgC0IZiYV8fCIHNwMYIAMgBiAMfCIGNwM4IAMgAUHoAHIiGEGwiQJqKQMAIAIgGGoiGCkDAHwgBXwgBiAIIAmFgyAJhXwgBkIyiSAGQi6JhSAGQheJhXwiDCAHIAQgC4SDIAQgC4OEIAdCJIkgB0IeiYUgB0IZiYV8fCIFNwMQIAMgCiAMfCIKNwMwIAMgAUHwAHIiGUGwiQJqKQMAIAIgGWoiGSkDAHwgCXwgCiAGIAiFgyAIhXwgCkIyiSAKQi6JhSAKQheJhXwiDCAFIAcgC4SDIAcgC4OEIAVCJIkgBUIeiYUgBUIZiYV8fCIJNwMIIAMgBCAMfCIENwMoIAMgAUH4AHIiAUGwiQJqKQMAIAEgAmoiASkDAHwgCHwgBCAGIAqFgyAGhXwgBEIyiSAEQi6JhSAEQheJhXwiBCAJIAUgB4SDIAUgB4OEIAlCJIkgCUIeiYUgCUIZiYV8fCIINwMAIAMgBCALfDcDICAWQcAARkUEQCACIBZBEGoiFkEDdGogFSkDACAiKQMAIgYgGSkDACIEQi2JIARCA4mFIARCBoiFfHwgGikDACIIQj+JIAhCOImFIAhCB4iFfCILNwMAIBUgCCAjKQMAIgp8IAEpAwAiCEItiSAIQgOJhSAIQgaIhXwgGykDACIHQj+JIAdCOImFIAdCB4iFfCIFNwOIASAVIAcgFCkDACIJfCALQi2JIAtCA4mFIAtCBoiFfCAcKQMAIg1CP4kgDUI4iYUgDUIHiIV8Igc3A5ABIBUgDSAXKQMAIgx8IAVCLYkgBUIDiYUgBUIGiIV8IB0pAwAiDkI/iSAOQjiJhSAOQgeIhXwiDTcDmAEgFSAOIBgpAwAiEnwgB0ItiSAHQgOJhSAHQgaIhXwgHikDACIPQj+JIA9COImFIA9CB4iFfCIONwOgASAVIAQgD3wgDUItiSANQgOJhSANQgaIhXwgHykDACIQQj+JIBBCOImFIBBCB4iFfCIPNwOoASAVIAggEHwgICkDACIRQj+JIBFCOImFIBFCB4iFfCAOQi2JIA5CA4mFIA5CBoiFfCIQNwOwASAVICEpAwAiEyAFIAZCP4kgBkI4iYUgBkIHiIV8fCAQQi2JIBBCA4mFIBBCBoiFfCIFNwPAASAVIAsgEXwgE0I/iSATQjiJhSATQgeIhXwgD0ItiSAPQgOJhSAPQgaIhXwiETcDuAEgFSAKIAlCP4kgCUI4iYUgCUIHiIV8IA18IAVCLYkgBUIDiYUgBUIGiIV8Ig03A9ABIBUgBiAKQj+JIApCOImFIApCB4iFfCAHfCARQi2JIBFCA4mFIBFCBoiFfCIGNwPIASAVIAwgEkI/iSASQjiJhSASQgeIhXwgD3wgDUItiSANQgOJhSANQgaIhXwiCjcD4AEgFSAJIAxCP4kgDEI4iYUgDEIHiIV8IA58IAZCLYkgBkIDiYUgBkIGiIV8IgY3A9gBIBUgBCAIQj+JIAhCOImFIAhCB4iFfCARfCAKQi2JIApCA4mFIApCBoiFfDcD8AEgFSASIARCP4kgBEI4iYUgBEIHiIV8IBB8IAZCLYkgBkIDiYUgBkIGiIV8IgQ3A+gBIBUgCCALQj+JIAtCOImFIAtCB4iFfCAFfCAEQi2JIARCA4mFIARCBoiFfDcD+AEMAQsLIAAgACkDACAIfDcDACAAIAApAwggAykDCHw3AwggACAAKQMQIAMpAxB8NwMQIAAgACkDGCADKQMYfDcDGCAAIAApAyAgAykDIHw3AyAgACAAKQMoIAMpAyh8NwMoIAAgACkDMCADKQMwfDcDMCAAIAApAzggAykDOHw3AzgLpAkBMX8jAEFAaiEJIAAoAjwhHSAAKAI4IR4gACgCNCESIAAoAjAhEyAAKAIsIR8gACgCKCEgIAAoAiQhISAAKAIgISIgACgCHCEjIAAoAhghJCAAKAIUISUgACgCECEmIAAoAgwhJyAAKAIIISggACgCBCEpIAAoAgAhKgNAAkAgA0I/VgRAIAIhBQwBCyAJQgA3AzggCUIANwMwIAlCADcDKCAJQgA3AyAgCUIANwMYIAlCADcDECAJQgA3AwggCUIANwMAQQAhBCADQgBSBEADQCAEIAlqIAEgBGotAAA6AAAgAyAEQQFqIgStVg0ACwsgCSIFIQEgAiErC0EUIRYgKiEIICkhCiAoIQ4gJyEUICYhBCAlIQIgJCEGICMhByAiIQsgISEPICAhDCAdIRAgHiEXIBIhGCATIQ0gHyERA0AgBCAEIAhqIgQgDXNBEHciCCALaiILc0EMdyINIARqIhUgCHNBCHciCCALaiILIA1zQQd3IgQgByAHIBRqIgcgEHNBEHciECARaiINc0EMdyIRIAdqIgdqIhQgBiAGIA5qIgYgF3NBEHciDiAMaiIMc0EMdyIZIAZqIgYgDnNBCHciGnNBEHciDiACIAIgCmoiAiAYc0EQdyIKIA9qIg9zQQx3IhsgAmoiAiAKc0EIdyIKIA9qIhxqIg8gBHNBDHciBCAUaiIUIA5zQQh3IhcgD2oiDyAEc0EHdyEEIAsgCiAGIAcgEHNBCHciECANaiIGIBFzQQd3IgdqIgpzQRB3IgtqIg0gB3NBDHciByAKaiIOIAtzQQh3IhggDWoiCyAHc0EHdyEHIAYgCCACIAwgGmoiAiAZc0EHdyIGaiIIc0EQdyIMaiIRIAZzQQx3IgYgCGoiCiAMc0EIdyINIBFqIhEgBnNBB3chBiACIBsgHHNBB3ciAiAVaiIIIBBzQRB3IgxqIhUgAnNBDHciAiAIaiIIIAxzQQh3IhAgFWoiDCACc0EHdyECIBZBAmsiFg0ACyABKAAEIRYgASgACCEVIAEoAAwhGSABKAAQIRogASgAFCEbIAEoABghHCABKAAcISwgASgAICEtIAEoACQhLiABKAAoIS8gASgALCEwIAEoADAhMSABKAA0ITIgASgAOCEzIAEoADwhNCAFIAEoAAAgCCAqanM2AAAgBSA0IBAgHWpzNgA8IAUgMyAXIB5qczYAOCAFIDIgEiAYanM2ADQgBSAxIA0gE2pzNgAwIAUgMCARIB9qczYALCAFIC8gDCAganM2ACggBSAuIA8gIWpzNgAkIAUgLSALICJqczYAICAFICwgByAjanM2ABwgBSAcIAYgJGpzNgAYIAUgGyACICVqczYAFCAFIBogBCAmanM2ABAgBSAZIBQgJ2pzNgAMIAUgFSAOIChqczYACCAFIBYgCiApanM2AAQgEiATQQFqIhNFaiESIANCwABYBEACQCADQj9WDQAgA1ANACADpyEBQQAhBANAIAQgK2ogBCAFai0AADoAACAEQQFqIgQgAUkNAAsLIAAgEjYCNCAAIBM2AjAFIAFBQGshASAFQUBrIQIgA0JAfCEDDAELCwvRBgEKfyMAQaACayICJAAgACgAHCEEIAAoABghBSAAKAAUIQYgACgAECEHIAAoAAQhCCAAKAAIIQkgACgADCEKIAAoAAAhCyACIAEpAng3A5gCIAIgASkCcDcDkAIgAiABKQJoNwP4ASACIAEpAmA3A/ABIAIgASkCeDcD6AEgAiABKQJwNwPgASACQYACaiIDIAJB8AFqIAJB4AFqEAcgASACKQKIAjcCeCABIAIpAoACNwJwIAIgASkCWDcD2AEgAiABKQJQNwPQASACIAEpAmg3A8gBIAIgASkCYDcDwAEgAyACQdABaiACQcABahAHIAEgAikCiAI3AmggASACKQKAAjcCYCACIAEpAkg3A7gBIAIgAUFAayIAKQIANwOwASACIAEpAlg3A6gBIAIgASkCUDcDoAEgAyACQbABaiACQaABahAHIAEgAikCiAI3AlggASACKQKAAjcCUCACIAEpAjg3A5gBIAIgASkCMDcDkAEgAiABKQJINwOIASACIAApAgA3A4ABIAMgAkGQAWogAkGAAWoQByABIAIpAogCNwJIIAAgAikCgAI3AgAgAiABKQIoNwN4IAIgASkCIDcDcCACIAEpAjg3A2ggAiABKQIwNwNgIAMgAkHwAGogAkHgAGoQByABIAIpAogCNwI4IAEgAikCgAI3AjAgAiABKQIYNwNYIAIgASkCEDcDUCACIAEpAig3A0ggAiABKQIgNwNAIAMgAkHQAGogAkFAaxAHIAEgAikCiAI3AiggASACKQKAAjcCICACIAEpAgg3AzggAiABKQIANwMwIAIgASkCGDcDKCACIAEpAhA3AyAgAyACQTBqIAJBIGoQByABIAIpAogCNwIYIAEgAikCgAI3AhAgAiACKQOYAjcDGCACIAIpA5ACNwMQIAIgASkCCDcDCCACIAEpAgA3AwAgAyACQRBqIAIQByABIAIpAogCNwIIIAEgAikCgAI3AgAgASAKIAEoAAxzNgIMIAEgCSABKAAIczYCCCABIAggASgABHM2AgQgASALIAEoAABzNgIAIAAgByAAKAAAczYCACABIAYgASgARHM2AkQgASAFIAEoAEhzNgJIIAEgBCABKABMczYCTCACQaACaiQAC7kFAR9/QeXwwYsGIQQgAigAACIVIQUgAigABCIWIQcgAigACCIXIQggAigADCIYIQlB7siBmQMhDiABKAAAIhkhCiABKAAEIhohCyABKAAIIhshDSABKAAMIhwhEEGy2ojLByEBIAIoABAiHSEDQfTKgdkGIQYgAigAHCIeIREgAigAGCIfIQ8gAigAFCIgIQIDQCAPIBAgBSAOakEHd3MiDCAOakEJd3MiEiACIARqQQd3IAlzIgkgBGpBCXcgDXMiEyAJakENdyACcyIhIAMgBmpBB3cgCHMiCCAGakEJdyALcyILIAhqQQ13IANzIg0gC2pBEncgBnMiBiARIAEgCmpBB3dzIgNqQQd3cyICIAZqQQl3cyIPIAJqQQ13IANzIhEgD2pBEncgBnMhBiADIAEgA2pBCXcgB3MiB2pBDXcgCnMiCiAHakESdyABcyIBIAxqQQd3IA1zIgMgAWpBCXcgE3MiDSADakENdyAMcyIQIA1qQRJ3IAFzIQEgEiAMIBJqQQ13IAVzIgxqQRJ3IA5zIgUgCWpBB3cgCnMiCiAFakEJdyALcyILIApqQQ13IAlzIgkgC2pBEncgBXMhDiATICFqQRJ3IARzIgQgCGpBB3cgDHMiBSAEakEJdyAHcyIHIAVqQQ13IAhzIgggB2pBEncgBHMhBCAUQRJJIBRBAmohFA0ACyAAIAZB9MqB2QZqNgA8IAAgESAeajYAOCAAIA8gH2o2ADQgACACICBqNgAwIAAgAyAdajYALCAAIAFBstqIywdqNgAoIAAgECAcajYAJCAAIA0gG2o2ACAgACALIBpqNgAcIAAgCiAZajYAGCAAIA5B7siBmQNqNgAUIAAgCSAYajYAECAAIAggF2o2AAwgACAHIBZqNgAIIAAgBSAVajYABCAAIARB5fDBiwZqNgAAC8gEAQJ/IwBBEGsiAyQAIANBADoAD0F/IQQgACABIAJBmJMCKAIAEQMARQRAIAMgAC0AACADLQAPcjoADyADIAAtAAEgAy0AD3I6AA8gAyAALQACIAMtAA9yOgAPIAMgAC0AAyADLQAPcjoADyADIAAtAAQgAy0AD3I6AA8gAyAALQAFIAMtAA9yOgAPIAMgAC0ABiADLQAPcjoADyADIAAtAAcgAy0AD3I6AA8gAyAALQAIIAMtAA9yOgAPIAMgAC0ACSADLQAPcjoADyADIAAtAAogAy0AD3I6AA8gAyAALQALIAMtAA9yOgAPIAMgAC0ADCADLQAPcjoADyADIAAtAA0gAy0AD3I6AA8gAyAALQAOIAMtAA9yOgAPIAMgAC0ADyADLQAPcjoADyADIAAtABAgAy0AD3I6AA8gAyAALQARIAMtAA9yOgAPIAMgAC0AEiADLQAPcjoADyADIAAtABMgAy0AD3I6AA8gAyAALQAUIAMtAA9yOgAPIAMgAC0AFSADLQAPcjoADyADIAAtABYgAy0AD3I6AA8gAyAALQAXIAMtAA9yOgAPIAMgAC0AGCADLQAPcjoADyADIAAtABkgAy0AD3I6AA8gAyAALQAaIAMtAA9yOgAPIAMgAC0AGyADLQAPcjoADyADIAAtABwgAy0AD3I6AA8gAyAALQAdIAMtAA9yOgAPIAMgAC0AHiADLQAPcjoADyADIAAtAB8gAy0AD3I6AA8gAy0AD0EXdEGAgIAEa0EfdSEECyADQRBqJAAgBAuDBwEKfyMAQeADayICJAADQCACQaACaiIFIANBAXRqIgYgASADai0AACIHQQR2OgABIAYgB0EPcToAACADQQFyIgZBAXQgBWoiByABIAZqLQAAIgZBBHY6AAEgByAGQQ9xOgAAIANBAmoiA0EgRw0AC0EAIQEDQCACQaACaiAEaiIDIAMtAAAgAWoiASABQQhqIgFB8AFxazoAACADIAMtAAEgAcBBBHVqIgEgAUEIaiIBQfABcWs6AAEgAyADLQACIAHAQQR1aiIBIAFBCGoiAUHwAXFrOgACIAHAQQR1IQEgBEEDaiIEQT9HDQALIAIgAi0A3wIgAWo6AN8CIABCADcCICAAQgA3AhggAEIANwIQIABCADcCCCAAQgA3AgAgAEIANwIsIABBATYCKCAAQgA3AjQgAEIANwI8IABCADcCRCAAQoCAgIAQNwJMIABB1ABqQQBBzAAQCRogAEH4AGohCyAAQdAAaiEHIABBKGohCSACQdABaiEBIAJBqAFqIQYgAkH4AWohBEEBIQMDQCACQQhqIgggA0EBdiACQaACaiADaiwAABBdIAJBgAFqIgUgACAIEEAgACAFIAQQBiAJIAYgARAGIAcgASAEEAYgCyAFIAYQBiADQT5JIANBAmohAw0ACyACIAApAiA3A4gDIAIgACkCGDcDgAMgAiAAKQIQNwP4AiACIAApAgg3A/ACIAIgACkCADcD6AIgAiAJKQIINwOYAyACIAkpAhA3A6ADIAIgCSkCGDcDqAMgAiAJKQIgNwOwAyACIAkpAgA3A5ADIAIgBykCCDcDwAMgAiAHKQIQNwPIAyACIAcpAhg3A9ADIAIgBykCIDcD2AMgAiAHKQIANwO4AyAFIAJB6AJqIgoQGSAKIAUgBBAGIAJBkANqIgMgBiABEAYgAkG4A2oiCCABIAQQBiAFIAoQGSAKIAUgBBAGIAMgBiABEAYgCCABIAQQBiAFIAoQGSAKIAUgBBAGIAMgBiABEAYgCCABIAQQBiAFIAoQGSAAIAUgBBAGIAkgBiABEAYgByABIAQQBiALIAUgBhAGQQAhAwNAIAJBCGoiCCADQQF2IAJBoAJqIANqLAAAEF0gAkGAAWoiBSAAIAgQQCAAIAUgBBAGIAkgBiABEAYgByABIAQQBiALIAUgBhAGIANBPkkgA0ECaiEDDQALIAJB4ANqJAALYgEDfyMAQbABayICJAAgAkHgAGoiAyABQdAAahAzIAJBMGoiBCABIAMQBiACIAFBKGogAxAGIAAgAhAWIAJBkAFqIAQQFiAAIAAtAB8gAi0AkAFBB3RzOgAfIAJBsAFqJAALyggBA38jAEHAAWsiAiQAIAJBkAFqIgQgARAFIAJB4ABqIgMgBBAFIAMgAxAFIAMgASADEAYgBCAEIAMQBiACQTBqIgEgBBAFIAMgAyABEAYgASADEAUgASABEAUgASABEAUgASABEAUgASABEAUgAyABIAMQBiABIAMQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEgAxAGIAIgARAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAEgAiABEAYgASABEAUgASABEAUgASABEAUgASABEAUgASABEAUgASABEAUgASABEAUgASABEAUgASABEAUgASABEAUgAyABIAMQBiABIAMQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEQBSABIAEgAxAGIAIgARAFQQEhAQNAIAIgAhAFIAFBAWoiAUHkAEcNAAsgAkEwaiIBIAIgARAGIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAEgARAFIAJB4ABqIgMgASADEAYgAyADEAUgAyADEAUgAyADEAUgAyADEAUgAyADEAUgACADIAJBkAFqEAYgAkHAAWokAAuLAQEBfyMAQRBrIgIgADYCDCACIAE2AghBACEAIAJBADYCBANAIAIgAigCBCACKAIMIABqLQAAIAIoAgggAGotAABzcjYCBCACIAIoAgQgAEEBciIBIAIoAgxqLQAAIAIoAgggAWotAABzcjYCBCAAQQJqIgBBIEcNAAsgAigCBEEBa0EIdkEBcUEBawvPAgICfwF+IwBB4ABrIgYkACAGIAQgBRBIGiAGQSBqIgdCICAEQRBqIgUgBkGgkwIoAgARDgAaQX8hBAJAAkAgAiABIAMgB0GIkwIoAgARFgANAEEAIQQgAEUNAQJAAn4CQCAAIAFJIAEgAGutIANUcUUEQCAAIAFNDQEgACABa60gA1oNAQsgACABIAOnEDYhAUIgIAMgA0IgWhsMAQsgA1ANAUIgIAMgA0IgWhsLIQggBkFAayABIAinIgIQCiEHIAZBIGoiBCAEIAhCIHwgBUIAIAZBpJMCKAIAEQwAGiAAIAcgAhAKIARBwAAQCEEAIQQgA0IhVA0BIAJqIAEgAmogAyAIfSAFQgEgBkGkkwIoAgARDAAaDAELIAZBIGoiACAAQiAgBUIAIAZBpJMCKAIAEQwAGiAAQcAAEAgLIAZBIBAICyAGQeAAaiQAIAQL6AIBAn8CQCAAIAFGDQAgASAAIAJqIgRrQQAgAkEBdGtNBEAgACABIAIQCg8LIAAgAXNBA3EhAwJAAkAgACABSQRAIAMEQCAAIQMMAwsgAEEDcUUEQCAAIQMMAgsgACEDA0AgAkUNBCADIAEtAAA6AAAgAUEBaiEBIAJBAWshAiADQQFqIgNBA3ENAAsMAQsCQCADDQAgBEEDcQRAA0AgAkUNBSAAIAJBAWsiAmoiAyABIAJqLQAAOgAAIANBA3ENAAsLIAJBA00NAANAIAAgAkEEayICaiABIAJqKAIANgIAIAJBA0sNAAsLIAJFDQIDQCAAIAJBAWsiAmogASACai0AADoAACACDQALDAILIAJBA00NAANAIAMgASgCADYCACABQQRqIQEgA0EEaiEDIAJBBGsiAkEDSw0ACwsgAkUNAANAIAMgAS0AADoAACADQQFqIQMgAUEBaiEBIAJBAWsiAg0ACwsgAAs0AQF/IwBBIGsiAiQAIAAgAhBJIABB6ABqIgAgAkIgECogACABEEkgAkEgEAggAkEgaiQAC88HAQl/IwBB4ABrIgMkACACQcEATwRAIABCADcDICAAQcCPAikDADcDACAAQciPAikDADcDCCAAQdCPAikDADcDECAAQdiPAikDADcDGCAAIAEgAq0QKiAAIAMQSUEgIQIgAyEBCyAAQgA3AyAgAEHAjwIpAwA3AwAgAEHIjwIpAwA3AwggAEHQjwIpAwA3AxAgAEHYjwIpAwA3AxggA0K27Nix48aNmzY3A1ggA0K27Nix48aNmzY3A1AgA0K27Nix48aNmzY3A0ggA0FAayIKQrbs2LHjxo2bNjcDACADQrbs2LHjxo2bNjcDOCADQrbs2LHjxo2bNjcDMCADQrbs2LHjxo2bNjcDKCADQrbs2LHjxo2bNjcDIAJAIAJFDQAgAkEETwRAIAJB/ABxIQYDQCADQSBqIgcgBGoiBSAFLQAAIAEgBGotAABzOgAAIAcgBEEBciIFaiILIAstAAAgASAFai0AAHM6AAAgByAEQQJyIgVqIgsgCy0AACABIAVqLQAAczoAACAHIARBA3IiBWoiByAHLQAAIAEgBWotAABzOgAAIARBBGohBCAIQQRqIgggBkcNAAsLIAJBA3EiCEUNAANAIANBIGogBGoiByAHLQAAIAEgBGotAABzOgAAIARBAWohBCAJQQFqIgkgCEcNAAsLIAAgA0EgakLAABAqIABB6ABqIgciAEIANwMgIABBwI8CKQMANwMAIABByI8CKQMANwMIIABB0I8CKQMANwMQIABB2I8CKQMANwMYIANC3Ljx4sWLl67cADcDWCADQty48eLFi5eu3AA3A1AgA0LcuPHixYuXrtwANwNIIApC3Ljx4sWLl67cADcDACADQty48eLFi5eu3AA3AzggA0LcuPHixYuXrtwANwMwIANC3Ljx4sWLl67cADcDKCADQty48eLFi5eu3AA3AyACQCACRQ0AQQAhCUEAIQQgAkEETwRAIAJB/ABxIQpBACEIA0AgA0EgaiIAIARqIgYgBi0AACABIARqLQAAczoAACAAIARBAXIiBmoiBSAFLQAAIAEgBmotAABzOgAAIAAgBEECciIGaiIFIAUtAAAgASAGai0AAHM6AAAgACAEQQNyIgZqIgAgAC0AACABIAZqLQAAczoAACAEQQRqIQQgCEEEaiIIIApHDQALCyACQQNxIgBFDQADQCADQSBqIARqIgIgAi0AACABIARqLQAAczoAACAEQQFqIQQgCUEBaiIJIABHDQALCyAHIANBIGoiAELAABAqIABBwAAQCCADQSAQCCADQeAAaiQAQQAL7hsBGX8gAiABKAAAIgRBGHQgBEGA/gNxQQh0ciAEQQh2QYD+A3EgBEEYdnJyNgIAIAIgASgABCIEQRh0IARBgP4DcUEIdHIgBEEIdkGA/gNxIARBGHZycjYCBCACIAEoAAgiBEEYdCAEQYD+A3FBCHRyIARBCHZBgP4DcSAEQRh2cnI2AgggAiABKAAMIgRBGHQgBEGA/gNxQQh0ciAEQQh2QYD+A3EgBEEYdnJyNgIMIAIgASgAECIEQRh0IARBgP4DcUEIdHIgBEEIdkGA/gNxIARBGHZycjYCECACIAEoABQiBEEYdCAEQYD+A3FBCHRyIARBCHZBgP4DcSAEQRh2cnI2AhQgAiABKAAYIgRBGHQgBEGA/gNxQQh0ciAEQQh2QYD+A3EgBEEYdnJyNgIYIAIgASgAHCIEQRh0IARBgP4DcUEIdHIgBEEIdkGA/gNxIARBGHZycjYCHCACIAEoACAiBEEYdCAEQYD+A3FBCHRyIARBCHZBgP4DcSAEQRh2cnI2AiAgAiABKAAkIgRBGHQgBEGA/gNxQQh0ciAEQQh2QYD+A3EgBEEYdnJyNgIkIAIgASgAKCIEQRh0IARBgP4DcUEIdHIgBEEIdkGA/gNxIARBGHZycjYCKCACIAEoACwiBEEYdCAEQYD+A3FBCHRyIARBCHZBgP4DcSAEQRh2cnI2AiwgAiABKAAwIgRBGHQgBEGA/gNxQQh0ciAEQQh2QYD+A3EgBEEYdnJyNgIwIAIgASgANCIEQRh0IARBgP4DcUEIdHIgBEEIdkGA/gNxIARBGHZycjYCNCACIAEoADgiBEEYdCAEQYD+A3FBCHRyIARBCHZBgP4DcSAEQRh2cnI2AjggAiABKAA8IgFBGHQgAUGA/gNxQQh0ciABQQh2QYD+A3EgAUEYdnJyNgI8IAMgACkCGDcCGCADIAApAhA3AhAgAyAAKQIINwIIIAMgACkCADcCAANAIAMgAygCHCACIBRBAnQiAWoiBCgCACADKAIQIg1BGncgDUEVd3MgDUEHd3NqIAFB4I8CaigCAGogDSADKAIYIgUgAygCFCIGc3EgBXNqaiIHIAMoAgxqIgk2AgwgAyADKAIAIgtBHncgC0ETd3MgC0EKd3MgB2ogAygCCCIMIAMoAgQiCnIgC3EgCiAMcXJqIgc2AhwgAyAMIAIgAUEEciIIaiISKAIAIAUgBiAJIAYgDXNxc2ogCUEadyAJQRV3cyAJQQd3c2pqIAhB4I8CaigCAGoiBWoiDDYCCCADIAcgCiALcnEgCiALcXIgBWogB0EedyAHQRN3cyAHQQp3c2oiBTYCGCADIAogBiACIAFBCHIiCGoiDigCAGogCEHgjwJqKAIAaiANIAwgCSANc3FzaiAMQRp3IAxBFXdzIAxBB3dzaiIIaiIGNgIEIAMgBSAHIAtycSAHIAtxciAFQR53IAVBE3dzIAVBCndzaiAIaiIKNgIUIAMgCyANIAIgAUEMciIIaiIPKAIAaiAIQeCPAmooAgBqIAYgCSAMc3EgCXNqIAZBGncgBkEVd3MgBkEHd3NqIghqIg02AgAgAyAKIAUgB3JxIAUgB3FyIApBHncgCkETd3MgCkEKd3NqIAhqIgs2AhAgAyAJIAIgAUEQciIJaiIQKAIAaiAJQeCPAmooAgBqIA0gBiAMc3EgDHNqIA1BGncgDUEVd3MgDUEHd3NqIgggCyAFIApycSAFIApxciALQR53IAtBE3dzIAtBCndzamoiCTYCDCADIAcgCGoiCDYCHCADIAIgAUEUciIHaiIRKAIAIAxqIAdB4I8CaigCAGogCCAGIA1zcSAGc2ogCEEadyAIQRV3cyAIQQd3c2oiDCAJIAogC3JxIAogC3FyIAlBHncgCUETd3MgCUEKd3NqaiIHNgIIIAMgBSAMaiIMNgIYIAMgAiABQRhyIgVqIhMoAgAgBmogBUHgjwJqKAIAaiAMIAggDXNxIA1zaiAMQRp3IAxBFXdzIAxBB3dzaiIGIAcgCSALcnEgCSALcXIgB0EedyAHQRN3cyAHQQp3c2pqIgU2AgQgAyAGIApqIgY2AhQgAyACIAFBHHIiCmoiFigCACANaiAKQeCPAmooAgBqIAYgCCAMc3EgCHNqIAZBGncgBkEVd3MgBkEHd3NqIg0gBSAHIAlycSAHIAlxciAFQR53IAVBE3dzIAVBCndzamoiCjYCACADIAsgDWoiDTYCECADIAIgAUEgciILaiIXKAIAIAhqIAtB4I8CaigCAGogDSAGIAxzcSAMc2ogDUEadyANQRV3cyANQQd3c2oiCCAKIAUgB3JxIAUgB3FyIApBHncgCkETd3MgCkEKd3NqaiILNgIcIAMgCCAJaiIINgIMIAMgAiABQSRyIglqIhgoAgAgDGogCUHgjwJqKAIAaiAIIAYgDXNxIAZzaiAIQRp3IAhBFXdzIAhBB3dzaiIMIAsgBSAKcnEgBSAKcXIgC0EedyALQRN3cyALQQp3c2pqIgk2AhggAyAHIAxqIgw2AgggAyAGIAIgAUEociIHaiIZKAIAaiAHQeCPAmooAgBqIAwgCCANc3EgDXNqIAxBGncgDEEVd3MgDEEHd3NqIgYgCSAKIAtycSAKIAtxciAJQR53IAlBE3dzIAlBCndzamoiBzYCFCADIAUgBmoiBjYCBCADIAFBLHIiBUHgjwJqKAIAIAIgBWoiGigCAGogDWogBiAIIAxzcSAIc2ogBkEadyAGQRV3cyAGQQd3c2oiDSAHIAkgC3JxIAkgC3FyIAdBHncgB0ETd3MgB0EKd3NqaiIFNgIQIAMgCiANaiIKNgIAIAMgAUEwciINQeCPAmooAgAgAiANaiIbKAIAaiAIaiAKIAYgDHNxIAxzaiAKQRp3IApBFXdzIApBB3dzaiIIIAUgByAJcnEgByAJcXIgBUEedyAFQRN3cyAFQQp3c2pqIg02AgwgAyAIIAtqIgs2AhwgAyAMIAFBNHIiDEHgjwJqKAIAIAIgDGoiHCgCAGpqIAsgBiAKc3EgBnNqIAtBGncgC0EVd3MgC0EHd3NqIgggDSAFIAdycSAFIAdxciANQR53IA1BE3dzIA1BCndzamoiDDYCCCADIAggCWoiCTYCGCADIAYgAUE4ciIGQeCPAmooAgAgAiAGaiIIKAIAamogCSAKIAtzcSAKc2ogCUEadyAJQRV3cyAJQQd3c2oiFSAMIAUgDXJxIAUgDXFyIAxBHncgDEETd3MgDEEKd3NqaiIGNgIEIAMgByAVaiIHNgIUIAMgAUE8ciIBQeCPAmooAgAgASACaiIVKAIAaiAKaiAHIAkgC3NxIAtzaiAHQRp3IAdBFXdzIAdBB3dzaiIBIAYgDCANcnEgDCANcXIgBkEedyAGQRN3cyAGQQp3c2pqIgc2AgAgAyABIAVqNgIQIBRBMEZFBEAgAiAUQRBqIhRBAnRqIAQoAgAgGCgCACIKIAgoAgAiAUEPdyABQQ13cyABQQp2c2pqIBIoAgAiBUEZdyAFQQ53cyAFQQN2c2oiBzYCACAEIAUgGSgCACILaiAVKAIAIgVBD3cgBUENd3MgBUEKdnNqIA4oAgAiBkEZdyAGQQ53cyAGQQN2c2oiCTYCRCAEIAYgGigCACIMaiAHQQ93IAdBDXdzIAdBCnZzaiAPKAIAIghBGXcgCEEOd3MgCEEDdnNqIgY2AkggBCAIIBsoAgAiDWogCUEPdyAJQQ13cyAJQQp2c2ogECgCACIOQRl3IA5BDndzIA5BA3ZzaiIINgJMIAQgDiAcKAIAIhJqIAZBD3cgBkENd3MgBkEKdnNqIBEoAgAiD0EZdyAPQQ53cyAPQQN2c2oiDjYCUCAEIAEgD2ogCEEPdyAIQQ13cyAIQQp2c2ogEygCACIQQRl3IBBBDndzIBBBA3ZzaiIPNgJUIAQgBSAQaiAWKAIAIhFBGXcgEUEOd3MgEUEDdnNqIA5BD3cgDkENd3MgDkEKdnNqIhA2AlggBCAXKAIAIhMgCSAKQRl3IApBDndzIApBA3ZzamogEEEPdyAQQQ13cyAQQQp2c2oiCTYCYCAEIAcgEWogE0EZdyATQQ53cyATQQN2c2ogD0EPdyAPQQ13cyAPQQp2c2oiETYCXCAEIAsgDEEZdyAMQQ53cyAMQQN2c2ogCGogCUEPdyAJQQ13cyAJQQp2c2oiCDYCaCAEIAogC0EZdyALQQ53cyALQQN2c2ogBmogEUEPdyARQQ13cyARQQp2c2oiCjYCZCAEIA0gEkEZdyASQQ53cyASQQN2c2ogD2ogCEEPdyAIQQ13cyAIQQp2c2oiCzYCcCAEIAwgDUEZdyANQQ53cyANQQN2c2ogDmogCkEPdyAKQQ13cyAKQQp2c2oiCjYCbCAEIAEgBUEZdyAFQQ53cyAFQQN2c2ogEWogC0EPdyALQQ13cyALQQp2c2o2AnggBCASIAFBGXcgAUEOd3MgAUEDdnNqIBBqIApBD3cgCkENd3MgCkEKdnNqIgE2AnQgBCAFIAdBGXcgB0EOd3MgB0EDdnNqIAlqIAFBD3cgAUENd3MgAUEKdnNqNgJ8DAELCyAAIAAoAgAgB2o2AgAgACAAKAIEIAMoAgRqNgIEIAAgACgCCCADKAIIajYCCCAAIAAoAgwgAygCDGo2AgwgACAAKAIQIAMoAhBqNgIQIAAgACgCFCADKAIUajYCFCAAIAAoAhggAygCGGo2AhggACAAKAIcIAMoAhxqNgIcCwQAQRgL5wQBEn9BstqIywchA0HuyIGZAyEEQeXwwYsGIQVB9MqB2QYhDiABKAAMIQYgASgACCEPIAEoAAQhByACKAAcIQsgAigAGCEMIAIoABQhECACKAAQIQ0gAigADCEIIAIoAAghCSACKAAEIQogASgAACEBIAIoAAAhAgNAIAIgASACIAVqIgVzQRB3IgEgDWoiDXNBDHciAiAFaiIFIAFzQQh3IgEgDWoiDSACc0EHdyICIAggBiAIIA5qIg5zQRB3IgYgC2oiC3NBDHciCCAOaiIRaiIOIAkgDyADIAlqIgNzQRB3Ig8gDGoiDHNBDHciCSADaiIDIA9zQQh3IhJzQRB3Ig8gCiAHIAQgCmoiBHNBEHciByAQaiIQc0EMdyIKIARqIgQgB3NBCHciByAQaiITaiIQIAJzQQx3IgIgDmoiDiAPc0EIdyIPIBBqIhAgAnNBB3chAiANIAcgAyAGIBFzQQh3IgYgC2oiCyAIc0EHdyIIaiIDc0EQdyIHaiINIAhzQQx3IgggA2oiAyAHc0EIdyIHIA1qIg0gCHNBB3chCCALIAEgBCAMIBJqIgwgCXNBB3ciCWoiBHNBEHciAWoiCyAJc0EMdyIJIARqIgQgAXNBCHciASALaiILIAlzQQd3IQkgDCAGIAUgCiATc0EHdyIKaiIFc0EQdyIGaiIMIApzQQx3IgogBWoiBSAGc0EIdyIGIAxqIgwgCnNBB3chCiAUQQFqIhRBCkcNAAsgACAFNgAAIAAgBjYAHCAAIA82ABggACAHNgAUIAAgATYAECAAIA42AAwgACADNgAIIAAgBDYABAuILgElfiAAIAEpACgiICABKQBoIhggASkAQCIaIAEpACAiGSAYIAEpAHgiHCABKQBYIiEgASkAUCIbICAgACkAECAZIAApADAiHXx8IhV8IB0gACkAUCAVhULr+obav7X2wR+FQiCJIhVCq/DT9K/uvLc8fCIehUIoiSIdfCIWIBWFQjCJIgYgHnwiBCAdhUIBiSIXIAEpABgiHSAAKQAIIiUgASkAECIVIAApACgiHnx8IiJ8IAApAEggIoVCn9j52cKR2oKbf4VCIIkiA0LFsdXZp6+UzMQAfSIFIB6FQiiJIgJ8Igd8fCIjfCAXICMgASkACCIeIAApAAAiJiABKQAAIiIgACkAICIkfHwiH3wgJCAAKQBAIB+FQtGFmu/6z5SH0QCFQiCJIh9CiJLznf/M+YTqAHwiCIVCKIkiC3wiDCAfhUIwiSIJhUIgiSIfIAEpADgiIyAAKQAYIAEpADAiJCAAKQA4Igp8fCINfCAKIAApAFggDYVC+cL4m5Gjs/DbAIVCIIkiDUKPkouH2tiC2NoAfSIOhUIoiSIKfCIQIA2FQjCJIg0gDnwiDnwiEYVCKIkiF3wiEiAfhUIwiSITIBF8IhEgF4VCAYkiFCABKQBIIhd8IBggASkAYCIfIBYgCiAOhUIBiSIKfHwiFnwgFiADIAeFQjCJIgOFQiCJIgcgCCAJfCIIfCIJIAqFQiiJIgp8Ig58Ig98IA8gHCABKQBwIhYgECAIIAuFQgGJIgh8fCILfCAGIAuFQiCJIgYgAyAFfCIDfCIFIAiFQiiJIgh8IgsgBoVCMIkiBoVCIIkiECAXIBogAiADhUIBiSIDIAx8fCICfCADIAQgAiANhUIgiSICfCIEhUIoiSIDfCIMIAKFQjCJIgIgBHwiBHwiDSAUhUIoiSIUfCIPICF8IAsgGCAHIA6FQjCJIgcgCXwiCSAKhUIBiSIKfHwiCyAkfCAKIAIgC4VCIIkiAiARfCILhUIoiSIKfCIOIAKFQjCJIgIgC3wiCyAKhUIBiSIKfCIRICN8IAogBSAGfCIGIAiFQgGJIgUgDCAWfHwiCCAbfCAFIAggE4VCIIkiCCAJfCIMhUIoiSIFfCIJIAiFQjCJIgggDHwiDCARIBogGSADIASFQgGJIgR8IBJ8IgN8IAQgBiADIAeFQiCJIgN8IgaFQiiJIgR8IgcgA4VCMIkiA4VCIIkiEXwiEoVCKIkiCnwiEyARhUIwiSIRIBJ8IhIgCoVCAYkiCiAcfCAdICAgBSAMhUIBiSIFIA58fCIMfCAFIAwgDyAQhUIwiSIOhUIgiSIMIAMgBnwiBnwiA4VCKIkiBXwiEHwiDyAEIAaFQgGJIgYgHnwgCXwiBCAffCAGIAIgBIVCIIkiBCANIA58IgJ8IgmFQiiJIgZ8Ig0gBIVCMIkiBIVCIIkiDiAVIAIgFIVCAYkiAiAHfCAifCIHfCACIAcgCIVCIIkiByALfCIIhUIoiSICfCILIAeFQjCJIgcgCHwiCHwiFCAKhUIoiSIKIA98fCIPIBogBSADIAwgEIVCMIkiBXwiA4VCAYkiDCANICF8fCINfCAMIAcgDYVCIIkiByASfCIMhUIoiSINfCIQIAeFQjCJIgcgDHwiDCANhUIBiSINfCAXfCISfCANIBIgICACIAiFQgGJIgIgE3x8IgggFXwgAiAFIAiFQiCJIgUgBCAJfCIEfCIIhUIoiSICfCIJIAWFQjCJIgWFQiCJIhIgBCAGhUIBiSIGIB98IAt8IgQgInwgBiADIAQgEYVCIIkiBHwiA4VCKIkiBnwiCyAEhUIwiSIEIAN8IgN8IhGFQiiJIg18IhMgHiAJIAogDiAPhUIwiSIKIBR8Ig6FQgGJIhR8ICN8Igl8IAQgCYVCIIkiBCAMfCIMIBSFQiiJIgl8IhQgBIVCMIkiBCAMfCIMIAmFQgGJIgl8ICF8Ig8gFnwgCSAPIBYgECADIAaFQgGJIgZ8IBt8IgN8IAYgAyAKhUIgiSIGIAUgCHwiA3wiBYVCKIkiCHwiCSAGhUIwiSIGhUIgiSIKIA4gByACIAOFQgGJIgMgCyAdfHwiAoVCIIkiB3wiCyADhUIoiSIDIAJ8ICR8IgIgB4VCMIkiByALfCILfCIOhUIoiSIQfCIPIA0gESASIBOFQjCJIg18IhGFQgGJIhIgCSAjfHwiCSAXfCAHIAmFQiCJIgcgDHwiDCAShUIoiSIJfCISIAeFQjCJIgcgDHwiDCAJhUIBiSIJfCAcfCITfCAJIBMgDSAYIAMgC4VCAYkiA3wgFHwiC4VCIIkiDSAFIAZ8IgZ8IgUgA4VCKIkiAyALfCAffCILIA2FQjCJIg2FQiCJIhMgHiAGIAiFQgGJIgYgHXwgAnwiAnwgBiARIAIgBIVCIIkiBHwiAoVCKIkiBnwiCCAEhUIwiSIEIAJ8IgJ8IhGFQiiJIgl8IhQgDCAEIAogD4VCMIkiCiAOfCIOIBCFQgGJIhAgCyAZfHwiC4VCIIkiBHwiDCAQhUIoiSIQIAt8ICJ8IgsgBIVCMIkiBCAMfCIMIBCFQgGJIhB8IBt8Ig8gHHwgECAPIBIgAiAGhUIBiSIGfCAVfCICICR8IAYgAiAKhUIgiSICIAUgDXwiBXwiCoVCKIkiBnwiDSAChUIwiSIChUIgiSISICAgAyAFhUIBiSIDIAh8fCIFIBt8IAMgBSAHhUIgiSIFIA58IgeFQiiJIgN8IgggBYVCMIkiBSAHfCIHfCIOhUIoiSIQfCIPIAkgEyAUhUIwiSIJIBF8IhGFQgGJIhMgDSAXfHwiDSAifCAFIA2FQiCJIgUgDHwiDCAThUIoiSINfCITIAWFQjCJIgUgDHwiDCANhUIBiSINfCAdfCIUfCANIBQgAyAHhUIBiSIDIBV8IAt8IgcgGXwgAyAHIAmFQiCJIgcgAiAKfCICfCILhUIoiSIDfCIJIAeFQjCJIgeFQiCJIgogICACIAaFQgGJIgZ8IAh8IgIgI3wgBiARIAIgBIVCIIkiBHwiAoVCKIkiBnwiCCAEhUIwiSIEIAJ8IgJ8Ig2FQiiJIhF8IhQgCoVCMIkiCiADIAcgC3wiA4VCAYkiByAIICF8fCIIIB98IAcgDyAShUIwiSILIA58Ig4gBSAIhUIgiSIFfCIIhUIoiSIHfCISIAWFQjCJIgUgCHwiCCAHhUIBiSIHICJ8IAkgDiAQhUIBiSIJfCAkfCIOIBp8IAkgBCAOhUIgiSIEIAx8IgyFQiiJIgl8Ig58IhCFQiCJIg8gHiATIAIgBoVCAYkiBnwgFnwiAnwgBiADIAIgC4VCIIkiBnwiA4VCKIkiAnwiCyAGhUIwiSIGIAN8IgN8IhMgB4VCKIkiByAQfCAhfCIQIA+FQjCJIg8gE3wiEyAHhUIBiSIHIAIgA4VCAYkiAyASfCAkfCICIBt8IAMgCiANfCIKIAQgDoVCMIkiBCAChUIgiSICfCINhUIoiSIDfCIOfCAjfCISfCAHIBIgCiARhUIBiSIKIAsgFXx8IgsgH3wgCiAFIAuFQiCJIgUgBCAMfCIEfCILhUIoiSIMfCIKIAWFQjCJIgWFQiCJIhEgBCAJhUIBiSIEIBp8IBR8IgkgHXwgBCAGIAmFQiCJIgYgCHwiCIVCKIkiBHwiCSAGhUIwiSIGIAh8Igh8IhKFQiiJIgd8IhQgEYVCMIkiESASfCISIAeFQgGJIgcgCiADIAIgDoVCMIkiAyANfCIChUIBiSINfCAZfCIKIBh8IAYgCoVCIIkiBiATfCIKIA2FQiiJIg18Ig4gBoVCMIkiBiAKfCIKIAIgDyAFIAt8IgUgDIVCAYkiAiAJIB58fCILhUIgiSIMfCIJIAKFQiiJIgIgC3wgF3wiCyAMhUIwiSIMIBAgBCAIhUIBiSIEfCAcfCIIIBZ8IAQgBSADIAiFQiCJIgN8IgWFQiiJIgR8IgggByAWfHwiB4VCIIkiEHwiE4VCKIkiDyATIBAgDyAYfCAHfCIHhUIwiSIQfCIThUIBiSIPIBIgBiAZIAQgAyAIhUIwiSIEIAV8IgOFQgGJIgV8IAt8IgiFQiCJIgZ8IgsgBiAFIAuFQiiJIgUgG3wgCHwiCIVCMIkiBnwiCyACIAkgDHwiDIVCAYkiAiAOIB98fCIJIBGFQiCJIg4gAyAOfCIDIAKFQiiJIgIgIHwgCXwiCYVCMIkiDiAKIA2FQgGJIgogDCAEIAogHnwgFHwiCoVCIIkiBHwiDIVCKIkiDSAcfCAKfCIKIA8gJHx8IhGFQiCJIhJ8IhSFQiiJIg8gFCASIA8gHXwgEXwiEYVCMIkiEnwiFIVCAYkiDyATIAYgCSAiIA0gDCAEIAqFQjCJIgR8IgyFQgGJIgl8fCIKhUIgiSIGfCINIAYgCSANhUIoiSIJICN8IAp8IgqFQjCJIgZ8Ig0gECAIIBogAiADIA58IgOFQgGJIgJ8fCIIhUIgiSIOIAggAiAMIA58IgiFQiiJIgIgIXx8IgyFQjCJIg4gBSALhUIBiSIFIAMgBCAFIBd8IAd8IgWFQiCJIgR8IgOFQiiJIgcgFXwgBXwiBSAPIB98fCILhUIgiSIQfCIThUIoiSIPIBMgECAPIB58IAt8IguFQjCJIhB8IhOFQgGJIg8gFCAGIB0gByADIAQgBYVCMIkiBHwiA4VCAYkiBXwgDHwiB4VCIIkiBnwiDCAGIAUgDIVCKIkiBSAXfCAHfCIHhUIwiSIGfCIMIBIgAiAIIA58IgiFQgGJIgIgGHwgCnwiCoVCIIkiDiACIAMgDnwiA4VCKIkiAiAhfCAKfCIKhUIwiSIOIAkgDYVCAYkiCSAIIAQgCSAjfCARfCIJhUIgiSIEfCIIhUIoiSINIBZ8IAl8IgkgDyAcfHwiEYVCIIkiEnwiFIVCKIkiDyAUIBIgDyAZfCARfCIRhUIwiSISfCIUhUIBiSIPIBMgBiAgIA0gCCAEIAmFQjCJIgR8IgiFQgGJIgl8IAp8IgqFQiCJIgZ8Ig0gBiAJIA2FQiiJIgkgInwgCnwiCoVCMIkiBnwiDSAQIBUgAiADIA58IgOFQgGJIgJ8IAd8IgeFQiCJIg4gByACIAggDnwiB4VCKIkiAiAbfHwiCIVCMIkiDiAFIAyFQgGJIgUgAyAEIAUgGnwgC3wiBYVCIIkiBHwiA4VCKIkiCyAkfCAFfCIFIA8gIXx8IgyFQiCJIhB8IhOFQiiJIg8gEyAQIA8gHXwgDHwiDIVCMIkiEHwiE4VCAYkiDyAUIAYgIiALIAMgBCAFhUIwiSIEfCIDhUIBiSIFfCAIfCIIhUIgiSIGfCILIAYgBSALhUIoiSIFIBp8IAh8IgiFQjCJIgZ8IgsgEiACIAcgDnwiB4VCAYkiAiAkfCAKfCIKhUIgiSIOIAIgAyAOfCIDhUIoiSICIBx8IAp8IgqFQjCJIg4gCSANhUIBiSIJIAcgBCAJIBZ8IBF8IgmFQiCJIgR8IgeFQiiJIg0gF3wgCXwiCSAPIBh8fCIRhUIgiSISfCIUhUIoiSIPIBQgEiAPICN8IBF8IhGFQjCJIhJ8IhSFQgGJIg8gEyAGIB8gDSAHIAQgCYVCMIkiBHwiB4VCAYkiCXwgCnwiCoVCIIkiBnwiDSAGIAkgDYVCKIkiCSAVfCAKfCIKhUIwiSIGfCINIBAgGyACIAMgDnwiA4VCAYkiAnwgCHwiCIVCIIkiDiACIAcgDnwiB4VCKIkiAiAgfCAIfCIIhUIwiSIOIAUgC4VCAYkiBSADIAQgBSAefCAMfCIFhUIgiSIEfCIDhUIoiSILIBl8IAV8IgUgDyAjfHwiDIVCIIkiEHwiE4VCKIkiDyATIBAgDyAkfCAMfCIMhUIwiSIQfCIThUIBiSIPIBQgBiAeIAsgAyAEIAWFQjCJIgR8IgOFQgGJIgV8IAh8IgiFQiCJIgZ8IgsgBiAFIAuFQiiJIgUgIHwgCHwiCIVCMIkiBnwiCyASIAIgByAOfCIHhUIBiSICIBt8IAp8IgqFQiCJIg4gAiADIA58IgOFQiiJIgIgFXwgCnwiCoVCMIkiDiAJIA2FQgGJIgkgByAEIAkgGnwgEXwiCYVCIIkiBHwiB4VCKIkiDSAZfCAJfCIJIA8gF3x8IhGFQiCJIhJ8IhSFQiiJIg8gFCASIA8gFnwgEXwiEYVCMIkiEnwiFIVCAYkiDyATIAYgHCANIAcgBCAJhUIwiSIEfCIHhUIBiSIJfCAKfCIKhUIgiSIGfCINIAYgCSANhUIoiSIJICF8IAp8IgqFQjCJIgZ8Ig0gECAYIAIgAyAOfCIDhUIBiSICfCAIfCIIhUIgiSIOIAIgByAOfCIHhUIoiSICICJ8IAh8IgiFQjCJIg4gBSALhUIBiSIFIAMgBCAFIB18IAx8IgWFQiCJIgR8IgOFQiiJIgsgH3wgBXwiBSAPIBl8fCIMhUIgiSIQfCIThUIoiSIPIBMgECAPICB8IAx8IgyFQjCJIhB8IhOFQgGJIg8gFCAGICQgCyADIAQgBYVCMIkiBHwiA4VCAYkiBXwgCHwiCIVCIIkiBnwiCyAGIAUgC4VCKIkiBSAjfCAIfCIIhUIwiSIGfCILIBIgAiAHIA58IgeFQgGJIgIgInwgCnwiCoVCIIkiDiACIAMgDnwiA4VCKIkiAiAefCAKfCIKhUIwiSIOIAkgDYVCAYkiCSAHIAQgCSAVfCARfCIJhUIgiSIEfCIHhUIoiSINIB18IAl8IgkgDyAbfHwiEYVCIIkiEnwiFIVCKIkiDyAUIBIgDyAhfCARfCIRhUIwiSISfCIUhUIBiSIPIBMgBiAaIA0gByAEIAmFQjCJIgR8IgeFQgGJIgl8IAp8IgqFQiCJIgZ8Ig0gBiAJIA2FQiiJIgkgF3wgCnwiCoVCMIkiBnwiDSAQIBYgAiADIA58IgOFQgGJIgJ8IAh8IgiFQiCJIg4gAiAHIA58IgeFQiiJIgIgHHwgCHwiCIVCMIkiDiAFIAuFQgGJIgUgAyAEIAUgH3wgDHwiBYVCIIkiBHwiA4VCKIkiCyAYfCAFfCIFIA8gF3x8IheFQiCJIgx8IhCFQiiJIhMgECAMIBMgHHwgF3wiHIVCMIkiF3wiDIVCAYkiECAUIAYgGCALIAMgBCAFhUIwiSIEfCIDhUIBiSIFfCAIfCIYhUIgiSIGfCIIIAYgGCAkIAUgCIVCKIkiJHx8IhiFQjCJIgZ8IgUgEiAWIAIgByAOfCIHhUIBiSICfCAKfCIWhUIgiSIIIBYgGyACIAMgCHwiFoVCKIkiA3x8IhuFQjCJIgIgGiAJIA2FQgGJIgggByAEIAggGXwgEXwiGYVCIIkiBHwiB4VCKIkiCHwgGXwiGiAQICJ8fCIZhUIgiSIifCILhUIoiSIJIBV8IBl8IhkgJYUgByAEIBqFQjCJIhp8IhUgFyAYICAgAyACIBZ8IhiFQgGJIhZ8fCIghUIgiSIXfCIEIBcgICAdIAQgFoVCKIkiHXx8IiCFQjCJIhd8IhaFNwAIIAAgGCAaIBwgISAFICSFQgGJIhx8fCIhhUIgiSIafCIYIBogIyAYIByFQiiJIhh8ICF8IhyFQjCJIhp8IiEgJiAfIAggFYVCAYkiFSAMIAYgFSAefCAbfCIbhUIgiSIVfCIehUIoiSIjfCAbfCIbhYU3AAAgACAeIBUgG4VCMIkiG3wiFSAcIAApABCFhTcAECAAIBkgIoVCMIkiGSAAKQAgIBYgHYVCAYmFhTcAICAAIAsgGXwiGSAgIAApABiFhTcAGCAAIAApACggFSAjhUIBiYUgGoU3ACggACAAKQA4IBggIYVCAYmFIBuFNwA4IAAgACkAMCAJIBmFQgGJhSAXhTcAMAvXAQEDfyMAQRBrIgMgADYCDCADIAE2AghBACEAIANBADoABwJAIAJFDQAgAkEBcSACQQFHBEAgAkF+cSEEQQAhAgNAIAMgAy0AByADKAIMIABqLQAAIAMoAgggAGotAABzcjoAByADIAMtAAcgAEEBciIFIAMoAgxqLQAAIAMoAgggBWotAABzcjoAByAAQQJqIQAgAkECaiICIARHDQALC0UNACADIAMtAAcgAygCDCAAai0AACADKAIIIABqLQAAc3I6AAcLIAMtAAdBAWtBCHZBAXFBAWsL9xICFX4DfyAAIAAoACwiFkEFdkH///8Aca0gACgAPEEDdq0iAkKDoVZ+IAAzACogADEALEIQhkKAgPwAg4R8IgtCgIBAfSIIQhWHfCIBQoOhVn4gADUAMUIHiEL///8AgyIDQtOMQ34gACgAFyIXQRh2rSAAMQAbQgiGhCAAMQAcQhCGhEICiEL///8Ag3wgACgANCIYQQR2Qf///wBxrSIEQuf2J358IBZBGHatIAAxADBCCIaEIAAxADFCEIaEQgKIQv///wCDIgVC0asIfnwgADUAOUIGiEL///8AgyIGQpPYKH58IBhBGHatIAAxADhCCIaEIAAxADlCEIaEQgGIQv///wCDIglCmNocfnwiB3wgB0KAgEB9IhFCgICAf4N9IBdBBXZB////AHGtIANC5/YnfnwgBEKY2hx+fCAFQtOMQ358IAlCk9gofnwgA0KY2hx+IAAzABUgADEAF0IQhkKAgPwAg4R8IARCk9gofnwgBULn9id+fCIHQoCAQH0iCkIViHwiDEKAgEB9Ig1CFYd8Ig8gD0KAgEB9Ig9CgICAf4N9IAwgAULRqwh+fCANQoCAgH+DfSALIAhCgICAf4N9IAJC0asIfiAAKAAkIhZBGHatIAAxAChCCIaEIAAxAClCEIaEQgOIfCAGQoOhVn58IBZBBnZB////AHGtIAJC04xDfnwgBkLRqwh+fCAJQoOhVn58IgxCgIBAfSINQhWHfCIIQoCAQH0iDkIVh3wiC0KDoVZ+fCAHIApCgICA////A4N9IANCk9gofiAAKAAPIhZBGHatIAAxABNCCIaEIAAxABRCEIaEQgOIfCAFQpjaHH58IBZBBnZB////AHGtIAVCk9gofnwiCkKAgEB9IhJCFYh8IgdCgIBAfSIQQhWIfCABQtOMQ358IAtC0asIfnwgCCAOQoCAgH+DfSIIQoOhVn58Ig5CgIBAfSITQhWHfCIUQoCAQH0iFUIVh3wgFCAVQoCAgH+DfSAOIBNCgICAf4N9IAcgEEKAgID///////8Ag30gAULn9id+fCALQtOMQ358IAhC0asIfnwgDCANQoCAgH+DfSAEQoOhVn4gACgAHyIWQRh2rSAAMQAjQgiGhCAAMQAkQhCGhEIBiEL///8Ag3wgAkLn9id+fCAGQtOMQ358IAlC0asIfnwgFkEEdkH///8Aca0gA0KDoVZ+fCAEQtGrCH58IAJCmNocfnwgBkLn9id+fCAJQtOMQ358IgxCgIBAfSINQhWHfCIOQoCAQH0iEEIVh3wiB0KDoVZ+fCAKIBJCgICA////AYN9IAFCmNocfnwgC0Ln9id+fCAIQtOMQ358IAdC0asIfnwgDiAQQoCAgH+DfSIKQoOhVn58Ig5CgIBAfSISQhWHfCIQQoCAQH0iE0IVh3wgECATQoCAgH+DfSAOIBJCgICAf4N9IAFCk9gofiAAKAAKIhZBGHatIAAxAA5CCIaEIAAxAA9CEIaEQgGIQv///wCDfCALQpjaHH58IAhC5/YnfnwgB0LTjEN+fCAKQtGrCH58IAwgDUKAgIB/g30gA0LRqwh+IAA1ABxCB4hC////AIN8IARC04xDfnwgBUKDoVZ+fCACQpPYKH58IAZCmNocfnwgCULn9id+fCARQhWHfCIBQoCAQH0iA0IVh3wiAkKDoVZ+fCAWQQR2Qf///wBxrSALQpPYKH58IAhCmNocfnwgB0Ln9id+fCAKQtOMQ358IAJC0asIfnwiBEKAgEB9IgVCFYd8IgZCgIBAfSIJQhWHfCAGIAEgA0KAgIB/g30gD0IVh3wiA0KAgEB9IgtCFYciAUKDoVZ+fCAJQoCAgH+DfSABQtGrCH4gBHwgBUKAgIB/g30gCEKT2Ch+IAA1AAdCB4hC////AIN8IAdCmNocfnwgCkLn9id+fCACQtOMQ358IAdCk9gofiAAKAACIhZBGHatIAAxAAZCCIaEIAAxAAdCEIaEQgKIQv///wCDfCAKQpjaHH58IAJC5/YnfnwiBEKAgEB9IgVCFYd8IgZCgIBAfSIJQhWHfCAGIAFC04xDfnwgCUKAgIB/g30gAULn9id+IAR8IAVCgICAf4N9IBZBBXZB////AHGtIApCk9gofnwgAkKY2hx+fCACQpPYKH4gADMAACAAMQACQhCGQoCA/ACDhHwiAkKAgEB9IgRCFYd8IgVCgIBAfSIGQhWHfCABQpjaHH4gBXwgBkKAgIB/g30gAiAEQoCAgH+DfSABQpPYKH58IgFCFYd8IgVCFYd8IgZCFYd8IglCFYd8IghCFYd8IgdCFYd8IgpCFYd8IhFCFYd8IgxCFYd8Ig1CFYd8Ig9CFYcgAyALQoCAgH+DfXwiBEIVhyICQpPYKH4gAUL///8Ag3wiAzwAACAAIANCCIg8AAEgACACQpjaHH4gBUL///8Ag3wgA0IVh3wiAUILiDwABCAAIAFCA4g8AAMgACADQhCIQh+DIAFCBYaEPAACIAAgAkLn9id+IAZC////AIN8IAFCFYd8IgNCBog8AAYgACADQgKGIAFCgIDgAINCE4iEPAAFIAAgAkLTjEN+IAlC////AIN8IANCFYd8IgFCCYg8AAkgACABQgGIPAAIIAAgAUIHhiADQoCA/wCDQg6IhDwAByAAIAJC0asIfiAIQv///wCDfCABQhWHfCIDQgyIPAAMIAAgA0IEiDwACyAAIANCBIYgAUKAgPgAg0IRiIQ8AAogACACQoOhVn4gB0L///8Ag3wgA0IVh3wiAUIHiDwADiAAIAFCAYYgA0KAgMAAg0IUiIQ8AA0gACAKQv///wCDIAFCFYd8IgJCCog8ABEgACACQgKIPAAQIAAgAkIGhiABQoCA/gCDQg+IhDwADyAAIBFC////AIMgAkIVh3wiAUINiDwAFCAAIAFCBYg8ABMgACAMQv///wCDIAFCFYd8IgM8ABUgACABQgOGIAJCgIDwAINCEoiEPAASIAAgA0IIiDwAFiAAIA1C////AIMgA0IVh3wiAkILiDwAGSAAIAJCA4g8ABggACADQhCIQh+DIAJCBYaEPAAXIAAgD0L///8AgyACQhWHfCIBQgaIPAAbIAAgAUIChiACQoCA4ACDQhOIhDwAGiAAIAFCFYciAyAEQv///wCDfCICQhGIPAAfIAAgAkIJiDwAHiAAIAJCB4YgAUKAgP8Ag0IOiIQ8ABwgACADpyAEp2pBAXatPAAdC/gBAQp/A0AgBCAAIANqLQAAIgEgA0GAE2oiAi0AAHNyIQQgCiABIAItAMABc3IhCiAJIAEgAi0AoAFzciEJIAggASACLQCAAXNyIQggByABIAItAGBzciEHIAYgASACQUBrLQAAc3IhBiAFIAEgAi0AIHNyIQUgA0EBaiIDQR9HDQALIAogAC0AH0H/AHEiAEH/AHMiAXJB/wFxQQFrIAEgCXJB/wFxQQFrIAEgCHJB/wFxQQFrIAcgAEH6AHNyQf8BcUEBayAGIABBBXNyQf8BcUEBayAAIAVyQf8BcUEBayAAIARyQf8BcUEBa3JycnJyckEIdkEBcQvgCQEdfyABKAIEIQQgASgCLCEDIAEoAgghBSABKAIwIQYgASgCDCEHIAEoAjQhCCABKAIQIQkgASgCOCEKIAEoAhQhCyABKAI8IQwgASgCGCENIAFBQGsiDigCACEPIAEoAhwhECABKAJEIREgASgCICESIAEoAkghEyABKAIkIRQgASgCTCEVIAAgASgCACABKAIoajYCACAAIBQgFWo2AiQgACASIBNqNgIgIAAgECARajYCHCAAIA0gD2o2AhggACALIAxqNgIUIAAgCSAKajYCECAAIAcgCGo2AgwgACAFIAZqNgIIIAAgAyAEajYCBCABKAIEIQMgASgCLCEFIAEoAgghBiABKAIwIQcgASgCDCEIIAEoAjQhCSABKAIQIQogASgCOCELIAEoAhQhDCABKAI8IQ0gASgCGCEPIA4oAgAhDiABKAIcIQQgASgCRCEQIAEoAiAhESABKAJIIRIgASgCACETIAEoAighFCAAIAEoAkwgASgCJGs2AkwgACASIBFrNgJIIAAgECAEazYCRCAAQUBrIgQgDiAPazYCACAAIA0gDGs2AjwgACALIAprNgI4IAAgCSAIazYCNCAAIAcgBms2AjAgACAFIANrNgIsIAAgFCATazYCKCAAQdAAaiAAIAIQBiAAQShqIgMgAyACQShqEAYgAEH4AGogAkHQAGogAUH4AGoQBiABKAJUIRQgASgCWCEVIAEoAlwhFiABKAJgIRcgASgCZCEYIAEoAmghGSABKAJsIRogASgCcCEbIAEoAnQhHCAAKAIsIQIgACgCVCEDIAAoAjAhBSAAKAJYIQYgACgCNCEHIAAoAlwhCCAAKAI4IQkgACgCYCEKIAAoAjwhCyAAKAJkIQwgBCgCACENIAAoAmghDiAAKAJEIQ8gACgCbCEQIAAoAkghESAAKAJwIRIgASgCUCEdIAAoAighASAAKAJQIRMgACAAKAJMIh4gACgCdCIfajYCTCAAIBEgEmo2AkggACAPIBBqNgJEIAQgDSAOajYCACAAIAsgDGo2AjwgACAJIApqNgI4IAAgByAIajYCNCAAIAUgBmo2AjAgACACIANqNgIsIAAgASATajYCKCAAIB8gHms2AiQgACASIBFrNgIgIAAgECAPazYCHCAAIA4gDWs2AhggACAMIAtrNgIUIAAgCiAJazYCECAAIAggB2s2AgwgACAGIAVrNgIIIAAgAyACazYCBCAAIBMgAWs2AgAgACAcQQF0IgEgACgCnAEiAms2ApwBIAAgG0EBdCIEIAAoApgBIgNrNgKYASAAIBpBAXQiBSAAKAKUASIGazYClAEgACAZQQF0IgcgACgCkAEiCGs2ApABIAAgGEEBdCIJIAAoAowBIgprNgKMASAAIBdBAXQiCyAAKAKIASIMazYCiAEgACAWQQF0Ig0gACgChAEiDms2AoQBIAAgFUEBdCIPIAAoAoABIhBrNgKAASAAIBRBAXQiESAAKAJ8IhJrNgJ8IAAgHUEBdCITIAAoAngiFGs2AnggACADIARqNgJwIAAgBSAGajYCbCAAIAcgCGo2AmggACAJIApqNgJkIAAgCyAMajYCYCAAIA0gDmo2AlwgACAPIBBqNgJYIAAgESASajYCVCAAIBMgFGo2AlAgACABIAJqNgJ0C6YEAg5+Cn8gACgCJCESIAAoAiAhEyAAKAIcIRQgACgCGCEVIAAoAhQhESACQhBaBEAgAC0AUEVBGHQhFiAAKAIQIhetIQ8gACgCDCIYrSENIAAoAggiGa0hCyAAKAIEIhqtIQkgGkEFbK0hECAZQQVsrSEOIBhBBWytIQwgF0EFbK0hCiAANQIAIQgDQCABKAADQQJ2Qf///x9xIBVqrSIDIA1+IAEoAABB////H3EgEWqtIgQgD358IAEoAAZBBHZB////H3EgFGqtIgUgC358IAEoAAlBBnYgE2qtIgYgCX58IBIgFmogASgADEEIdmqtIgcgCH58IAMgC34gBCANfnwgBSAJfnwgBiAIfnwgByAKfnwgAyAJfiAEIAt+fCAFIAh+fCAGIAp+fCAHIAx+fCADIAh+IAQgCX58IAUgCn58IAYgDH58IAcgDn58IAMgCn4gBCAIfnwgBSAMfnwgBiAOfnwgByAQfnwiA0IaiEL/////D4N8IgRCGohC/////w+DfCIFQhqIQv////8Pg3wiBkIaiEL/////D4N8IgdCGoinQQVsIAOnQf///x9xaiIRQRp2IASnQf///x9xaiEVIAWnQf///x9xIRQgBqdB////H3EhEyAHp0H///8fcSESIBFB////H3EhESABQRBqIQEgAkIQfSICQg9WDQALCyAAIBE2AhQgACASNgIkIAAgEzYCICAAIBQ2AhwgACAVNgIYC60DAgx/A34gACkDOCIOQgBSBEAgAEFAayICIA6nIgNqQQE6AAAgDkIBfEIPWARAIAAgA2pBwQBqQQBBDyADaxAJGgsgAEEBOgBQIAAgAkIQEEELIAA1AjQhDiAANQIwIQ8gADUCLCEQIAEgACgCFCAAKAIkIAAoAiAgACgCHCAAKAIYIgNBGnZqIgJBGnZqIgZBGnZqIglBGnZBBWxqIgRB////H3EiBUEFaiIHQRp2IANB////H3EgBEEadmoiBGoiCEEadiACQf///x9xIgpqIgtBGnYgBkH///8fcSIGaiIMQRp2IAlB////H3FqIg1BgICAIGsiAkEfdSIDIARxIAJBH3ZBAWsiBEH///8fcSICIAhxciIIQRp0IAIgB3EgAyAFcXJyIgUgACgCKGoiBzYAACABIAUgB0utIBAgAyAKcSACIAtxciIFQRR0IAhBBnZyrXx8IhA+AAQgASAPIAMgBnEgAiAMcXIiAkEOdCAFQQx2cq18IBBCIIh8Ig8+AAggASAOIAQgDXEgAyAJcXJBCHQgAkESdnKtfCAPQiCIfD4ADCAAQdgAEAgL2QQCBn4BfwJAIAApAzgiA0IAUgRAIABCECADfSIEIAIgAiAEVhsiBEIAUgR+IABBQGshCUIAIQMgBEIEWgRAIARCfIMhBQNAIAkgACkDOCADfKdqIAEgA6dqLQAAOgAAIAkgA0IBhCIIIAApAzh8p2ogASAIp2otAAA6AAAgCSADQgKEIgggACkDOHynaiABIAinai0AADoAACAJIANCA4QiCCAAKQM4fKdqIAEgCKdqLQAAOgAAIANCBHwhAyAGQgR8IgYgBVINAAsLIARCA4MiBkIAUgRAA0AgCSAAKQM4IAN8p2ogASADp2otAAA6AAAgA0IBfCEDIAdCAXwiByAGUg0ACwsgACkDOAUgAwsgBHwiAzcDOCADQhBUDQEgACAAQUBrQhAQQSAAQgA3AzggAiAEfSECIAEgBKdqIQELIAJCEFoEQCAAIAEgAkJwgyIDEEEgAkIPgyECIAEgA6dqIQELIAJQDQAgAEFAayEJQgAhB0IAIQMgAkIEWgRAIAJCDIMhBEIAIQYDQCAJIAApAzggA3ynaiABIAOnai0AADoAACAJIANCAYQiBSAAKQM4fKdqIAEgBadqLQAAOgAAIAkgA0IChCIFIAApAzh8p2ogASAFp2otAAA6AAAgCSADQgOEIgUgACkDOHynaiABIAWnai0AADoAACADQgR8IQMgBkIEfCIGIARSDQALCyACQgODIgRCAFIEQANAIAkgACkDOCADfKdqIAEgA6dqLQAAOgAAIANCAXwhAyAHQgF8IgcgBFINAAsLIAAgACkDOCACfDcDOAsLFgAgAUEgEBggACABQZyTAigCABEBAAsEAEEIC+kmASd/IwBB0ARrIh0kAEF/IQ0gAEEgaiEKQSAhCEEBIQUDQCAIQQFrIgdB4BRqLQAAIgsgByAKai0AACIHc0EBa0EIdSAFcSIJIAogCEECayIIai0AACIMIAhB4BRqLQAAIg5rQQh1cSAHIAtrQQh1IAVxIAZyciEGIAwgDnNBAWtBCHUgCXEhBSAIDQALAkAgBkH/AXFFDQAgABA/DQAgAy0AH0F/c0H/AHEgAy0AASADLQACIAMtAAMgAy0ABCADLQAFIAMtAAYgAy0AByADLQAIIAMtAAkgAy0ACiADLQALIAMtAAwgAy0ADSADLQAOIAMtAA8gAy0AECADLQARIAMtABIgAy0AEyADLQAUIAMtABUgAy0AFiADLQAXIAMtABggAy0AGSADLQAaIAMtABsgAy0AHCADLQAeIAMtAB1xcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcUH/AXNyQQFrQewBIAMtAABrcUF/c0EIdkEBcUUNACADED8NACAdQYABaiIIIAMQXw0AIB1BgANqIgYQGyAEBEAgBkGwkgJCIhANGgsgBiAAQiAQDRogBiADQiAQDRogBiABIAIQDRogBiAdQcACaiIBEBQgARA+IB1BCGohDSABIQYgCCEEQQAhA0EAIQEjAEHgEWsiBSQAA0AgBUHgD2oiCCADaiAGIANBA3ZqLQAAIgcgA0EGcXZBAXE6AAAgCCADQQFyIgtqIAcgC0EHcXZBAXE6AAAgA0ECaiIDQYACRw0ACwNAIAEiCEEBaiEBAkAgCEH+AUsNACAFQeAPaiIDIAhqIgYtAABFDQACQCABIANqIgMsAAAiB0UNACAHQQF0IgcgBiwAACILaiIJQQ9MBEAgBiAJOgAAIANBADoAAAwBCyALIAdrIgNBcUgNASAGIAM6AAAgASEDA0AgBUHgD2ogA2oiBy0AAEUEQCAHQQE6AAAMAgsgB0EAOgAAIANB/wFJIANBAWohAw0ACwsgCEH9AUsNAAJAIAhBAmoiAyAFQeAPamoiBywAACILRQ0AIAtBAnQiCyAGLAAAIglqIgxBEE4EQCAJIAtrIgdBcUgNAiAGIAc6AAADQCAFQeAPaiADaiIHLQAABEAgB0EAOgAAIANB/wFJIANBAWohAw0BDAMLCyAHQQE6AAAMAQsgBiAMOgAAIAdBADoAAAsgCEH9AUYNAAJAIAhBA2oiAyAFQeAPamoiBywAACILRQ0AIAtBA3QiCyAGLAAAIglqIgxBEE4EQCAJIAtrIgdBcUgNAiAGIAc6AAADQCAFQeAPaiADaiIHLQAABEAgB0EAOgAAIANB/wFJIANBAWohAw0BDAMLCyAHQQE6AAAMAQsgBiAMOgAAIAdBADoAAAsgCEH7AUsNAAJAIAhBBGoiAyAFQeAPamoiBywAACILRQ0AIAtBBHQiCyAGLAAAIglqIgxBEE4EQCAJIAtrIgdBcUgNAiAGIAc6AAADQCAFQeAPaiADaiIHLQAABEAgB0EAOgAAIANB/wFJIANBAWohAw0BDAMLCyAHQQE6AAAMAQsgBiAMOgAAIAdBADoAAAsgCEH7AUYNAAJAIAhBBWoiAyAFQeAPamoiBywAACILRQ0AIAtBBXQiCyAGLAAAIglqIgxBEE4EQCAJIAtrIgdBcUgNAiAGIAc6AAADQCAFQeAPaiADaiIHLQAABEAgB0EAOgAAIANB/wFJIANBAWohAw0BDAMLCyAHQQE6AAAMAQsgBiAMOgAAIAdBADoAAAsgCEH5AUsNACAIQQZqIgMgBUHgD2pqIggsAAAiB0UNACAHQQZ0IgcgBiwAACILaiIJQRBOBEAgCyAHayIIQXFIDQEgBiAIOgAAA0AgBUHgD2ogA2oiCC0AAARAIAhBADoAACADQf8BSSADQQFqIQMNAQwDCwsgCEEBOgAADAELIAYgCToAACAIQQA6AAALIAFBgAJHDQALQQAhAwNAIAVB4A1qIgEgA2ogCiADQQN2ai0AACIIIANBBnF2QQFxOgAAIAEgA0EBciIGaiAIIAZBB3F2QQFxOgAAIANBAmoiA0GAAkcNAAtBACEBA0AgASIIQQFqIQECQCAIQf4BSw0AIAVB4A1qIgMgCGoiCi0AAEUNAAJAIAEgA2oiAywAACIGRQ0AIAZBAXQiBiAKLAAAIgdqIgtBD0wEQCAKIAs6AAAgA0EAOgAADAELIAcgBmsiA0FxSA0BIAogAzoAACABIQMDQCAFQeANaiADaiIGLQAARQRAIAZBAToAAAwCCyAGQQA6AAAgA0H/AUkgA0EBaiEDDQALCyAIQf0BSw0AAkAgCEECaiIDIAVB4A1qaiIGLAAAIgdFDQAgB0ECdCIHIAosAAAiC2oiCUEQTgRAIAsgB2siBkFxSA0CIAogBjoAAANAIAVB4A1qIANqIgYtAAAEQCAGQQA6AAAgA0H/AUkgA0EBaiEDDQEMAwsLIAZBAToAAAwBCyAKIAk6AAAgBkEAOgAACyAIQf0BRg0AAkAgCEEDaiIDIAVB4A1qaiIGLAAAIgdFDQAgB0EDdCIHIAosAAAiC2oiCUEQTgRAIAsgB2siBkFxSA0CIAogBjoAAANAIAVB4A1qIANqIgYtAAAEQCAGQQA6AAAgA0H/AUkgA0EBaiEDDQEMAwsLIAZBAToAAAwBCyAKIAk6AAAgBkEAOgAACyAIQfsBSw0AAkAgCEEEaiIDIAVB4A1qaiIGLAAAIgdFDQAgB0EEdCIHIAosAAAiC2oiCUEQTgRAIAsgB2siBkFxSA0CIAogBjoAAANAIAVB4A1qIANqIgYtAAAEQCAGQQA6AAAgA0H/AUkgA0EBaiEDDQEMAwsLIAZBAToAAAwBCyAKIAk6AAAgBkEAOgAACyAIQfsBRg0AAkAgCEEFaiIDIAVB4A1qaiIGLAAAIgdFDQAgB0EFdCIHIAosAAAiC2oiCUEQTgRAIAsgB2siBkFxSA0CIAogBjoAAANAIAVB4A1qIANqIgYtAAAEQCAGQQA6AAAgA0H/AUkgA0EBaiEDDQEMAwsLIAZBAToAAAwBCyAKIAk6AAAgBkEAOgAACyAIQfkBSw0AIAhBBmoiAyAFQeANamoiCCwAACIGRQ0AIAZBBnQiBiAKLAAAIgdqIgtBEE4EQCAHIAZrIghBcUgNASAKIAg6AAADQCAFQeANaiADaiIILQAABEAgCEEAOgAAIANB/wFJIANBAWohAw0BDAMLCyAIQQE6AAAMAQsgCiALOgAAIAhBADoAAAsgAUGAAkcNAAsgBUHgA2oiBiAEEA4gBSAEKQIgNwPAASAFIAQpAhg3A7gBIAUgBCkCEDcDsAEgBSAEKQIINwOoASAFIAQpAgA3A6ABIAUgBCkCMDcD0AEgBSAEKQI4NwPYASAFIARBQGspAgA3A+ABIAUgBCkCSDcD6AEgBSAEKQIoNwPIASAFIAQpAlg3A/gBIAUgBCkCYDcDgAIgBSAEKQJoNwOIAiAFIAQpAnA3A5ACIAUgBCkCUDcD8AEgBUHAAmoiASAFQaABaiIDEBkgBSABIAVBuANqIgQQBiAFQShqIAVB6AJqIgggBUGQA2oiChAGIAVB0ABqIAogBBAGIAVB+ABqIAEgCBAGIAEgBSAGEA8gAyABIAQQBiAFQcgBaiIHIAggChAGIAVB8AFqIgsgCiAEEAYgBUGYAmoiBiABIAgQBiAFQYAFaiIJIAMQDiABIAUgCRAPIAMgASAEEAYgByAIIAoQBiALIAogBBAGIAYgASAIEAYgBUGgBmoiCSADEA4gASAFIAkQDyADIAEgBBAGIAcgCCAKEAYgCyAKIAQQBiAGIAEgCBAGIAVBwAdqIgkgAxAOIAEgBSAJEA8gAyABIAQQBiAHIAggChAGIAsgCiAEEAYgBiABIAgQBiAFQeAIaiIJIAMQDiABIAUgCRAPIAMgASAEEAYgByAIIAoQBiALIAogBBAGIAYgASAIEAYgBUGACmoiCSADEA4gASAFIAkQDyADIAEgBBAGIAcgCCAKEAYgCyAKIAQQBiAGIAEgCBAGIAVBoAtqIgkgAxAOIAEgBSAJEA8gAyABIAQQBiAHIAggChAGIAsgCiAEEAYgBiABIAgQBiAFQcAMaiADEA4gDUIANwIgIA1CADcCGCANQgA3AhAgDUIANwIIIA1CADcCACANQgA3AiwgDUEBNgIoIA1CADcCNCANQgA3AjwgDUIANwJEIA1CADcCVCANQoCAgIAQNwJMIA1CADcCXCANQgA3AmQgDUIANwJsIA1BADYCdCANQdAAaiEiIA1BKGohI0H/ASEBA0ACQAJAAkAgBUHgD2oiCSABai0AAA0AIAVB4A1qIgwgAWotAAANACAJIAFBAWsiA2otAABFBEAgAyAMai0AAEUNAgsgAyEBCyABQQBIDQEDQCAFQcACaiIJIA0QGQJAIAEiAyAFQeAPamosAAAiAUEASgRAIAVBoAFqIgwgCSAEEAYgByAIIAoQBiALIAogBBAGIAYgCSAIEAYgCSAMIAVB4ANqIAFB/gFxQQF2QaABbGoQDwwBCyABQQBODQAgBUGgAWoiDCAFQcACaiIJIAQQBiAHIAggChAGIAsgCiAEEAYgBiAJIAgQBiAJIAwgBUHgA2pBACABa0H+AXFBAXZBoAFsahBeCwJAIAVB4A1qIANqLAAAIgFBAEoEQCAFQaABaiIMIAVBwAJqIgkgBBAGIAcgCCAKEAYgCyAKIAQQBiAGIAkgCBAGIAkgDCABQf4BcUEBdkH4AGxBwAtqEEAMAQsgAUEATg0AIAVBoAFqIAVBwAJqIgkgBBAGIAcgCCAKEAYgCyAKIAQQBiAGIAkgCBAGIAUoAqABIQwgBSgCyAEhDiAFKAKkASEPIAUoAswBIRAgBSgCqAEhESAFKALQASESIAUoAqwBIRMgBSgC1AEhFCAFKAKwASEVIAUoAtgBIRYgBSgCtAEhFyAFKALcASEYIAUoArgBIRkgBSgC4AEhGiAFKAK8ASEbIAUoAuQBIRwgBSgCwAEhHiAFKALoASEfIAUgBSgC7AEiICAFKALEASIhazYCjAMgBSAfIB5rNgKIAyAFIBwgG2s2AoQDIAUgGiAZazYCgAMgBSAYIBdrNgL8AiAFIBYgFWs2AvgCIAUgFCATazYC9AIgBSASIBFrNgLwAiAFIBAgD2s2AuwCIAUgDiAMazYC6AIgBSAgICFqNgLkAiAFIB4gH2o2AuACIAUgGyAcajYC3AIgBSAZIBpqNgLYAiAFIBcgGGo2AtQCIAUgFSAWajYC0AIgBSATIBRqNgLMAiAFIBEgEmo2AsgCIAUgDyAQajYCxAIgBSAMIA5qNgLAAiAKIAlBACABa0H+AXFBAXZB+ABsQcALaiIBQShqEAYgCCAIIAEQBiAEIAFB0ABqIAYQBiAFKAKUAiEeIAUoApACIR8gBSgCjAIhICAFKAKIAiEhIAUoAoQCISQgBSgCgAIhJSAFKAL8ASEmIAUoAvgBIScgBSgC9AEhKCAFKALwASEpIAUoAugCIQEgBSgCkAMhCSAFKALsAiEMIAUoApQDIQ4gBSgC8AIhDyAFKAKYAyEQIAUoAvQCIREgBSgCnAMhEiAFKAL4AiETIAUoAqADIRQgBSgC/AIhFSAFKAKkAyEWIAUoAoADIRcgBSgCqAMhGCAFKAKEAyEZIAUoAqwDIRogBSgCiAMhGyAFKAKwAyEcIAUgBSgCjAMiKiAFKAK0AyIrajYCjAMgBSAbIBxqNgKIAyAFIBkgGmo2AoQDIAUgFyAYajYCgAMgBSAVIBZqNgL8AiAFIBMgFGo2AvgCIAUgESASajYC9AIgBSAPIBBqNgLwAiAFIAwgDmo2AuwCIAUgASAJajYC6AIgBSArICprNgLkAiAFIBwgG2s2AuACIAUgGiAZazYC3AIgBSAYIBdrNgLYAiAFIBYgFWs2AtQCIAUgFCATazYC0AIgBSASIBFrNgLMAiAFIBAgD2s2AsgCIAUgDiAMazYCxAIgBSAJIAFrNgLAAiAFIClBAXQiASAFKAK4AyIJazYCkAMgBSAoQQF0IgwgBSgCvAMiDms2ApQDIAUgJ0EBdCIPIAUoAsADIhBrNgKYAyAFICZBAXQiESAFKALEAyISazYCnAMgBSAlQQF0IhMgBSgCyAMiFGs2AqADIAUgJEEBdCIVIAUoAswDIhZrNgKkAyAFICFBAXQiFyAFKALQAyIYazYCqAMgBSAgQQF0IhkgBSgC1AMiGms2AqwDIAUgH0EBdCIbIAUoAtgDIhxrNgKwAyAFIB5BAXQiHiAFKALcAyIfazYCtAMgBSABIAlqNgK4AyAFIAwgDmo2ArwDIAUgDyAQajYCwAMgBSARIBJqNgLEAyAFIBMgFGo2AsgDIAUgFSAWajYCzAMgBSAXIBhqNgLQAyAFIBkgGmo2AtQDIAUgGyAcajYC2AMgBSAeIB9qNgLcAwsgDSAFQcACaiAEEAYgIyAIIAoQBiAiIAogBBAGIANBAWshASADQQBKDQALDAELIAFBAmshASADDQELCyAFQeARaiQAIB1BoAJqIgEgDRAyQX8gASAAEDQgACABRhsgACABQSAQPXIhDQsgHUHQBGokACANC6siAjh+BX8jAEGwBGsiQCQAIEBB4AJqIj4QGyAFBEAgPkGwkgJCIhANGgsgQEGgAmogBEIgECAaIEBB4AJqIkEgQEHAAmpCIBANGiBBIAIgAxANGiBBIEBB4AFqIj4QFCAEKQAgIQggBCkAKCEHIAQpADAhBiAAIAQpADg3ADggACAGNwAwIAAgBzcAKCAAQSBqIgQgCDcAACA+ED4gQCA+EDEgACBAEDIgQRAbIAUEQCBBQbCSAkIiEA0aCyBAQeACaiIFIABCwAAQDRogBSACIAMQDRogBSBAQaABaiIAEBQgABA+IEAgQC0AoAJB+AFxOgCgAiBAIEAtAL8CQT9xQcAAcjoAvwIgBCBAQaACaiI/MwAVID8xABdCEIZCgID8AIOEIg8gACgAHEEHdq0iEH4gACgAFyIFQRh2rSAAMQAbQgiGhCAAMQAcQhCGhEICiEL///8AgyIRID8oABciAkEFdkH///8Aca0iEn58IAAzABUgADEAF0IQhkKAgPwAg4QiEyA/KAAcQQd2rSIUfnwgAkEYdq0gPzEAG0IIhoQgPzEAHEIQhoRCAohC////AIMiFSAFQQV2Qf///wBxrSIWfnwgEiAWfiA/KAAPIgVBGHatID8xABNCCIaEID8xABRCEIaEQgOIIhcgEH58IA8gEX58IAAoAA8iAkEYdq0gADEAE0IIhoQgADEAFEIQhoRCA4giGCAUfnwgEyAVfnwiCUKAgEB9IghCFYh8IgdCgIBAfSIGQhWIIBQgFn4gECASfnwgESAVfnwiAyADQoCAQH0iA0KAgID/////AIN9fCItQpjaHH4gECAVfiARIBR+fCADQhWIfCIDIANCgIBAfSIpQoCAgP////8Ag30iLkKT2Ch+fCAHIAZCgICAf4N9Ii9C5/YnfnwgCSAIQoCAgH+DfSARIBd+IAVBBnZB////AHGtIhkgEH58IBIgE358IA8gFn58IBQgAkEGdkH///8Aca0iGn58IBUgGH58ID8oAAoiQkEYdq0gPzEADkIIhoQgPzEAD0IQhoRCAYhC////AIMiGyAQfiARIBl+fCAWIBd+fCASIBh+fCAPIBN+fCAAKAAKIkFBGHatIAAxAA5CCIaEIAAxAA9CEIaEQgGIQv///wCDIhwgFH58IBUgGn58IgpCgIBAfSILQhWIfCIJQoCAQH0iCEIViHwiMELTjEN+fCBAQeABaiI+KAAXIgVBBXZB////AHGtID8zAAAgPzEAAkIQhkKAgPwAg4QiHSAWfiATID8oAAIiAkEFdkH///8Aca0iHn58ID81AAdCB4hC////AIMiHyAafnwgHCBCQQR2Qf///wBxrSIgfnwgAkEYdq0gPzEABkIIhoQgPzEAB0IQhoRCAohC////AIMiISAYfnwgGSAANQAHQgeIQv///wCDIiJ+fCAbIEFBBHZB////AHGtIiN+fCAXIAAoAAIiAkEYdq0gADEABkIIhoQgADEAB0IQhoRCAohC////AIMiJH58IAAzAAAgADEAAkIQhkKAgPwAg4QiJSASfnwgDyACQQV2Qf///wBxrSImfnx8ID4zABUgEyAdfiAYIB5+fCAcIB9+fCAgICN+fCAaICF+fCAZICR+fCAbICJ+fCAXICZ+fCAPICV+fHwgPjEAF0IQhkKAgPwAg3wiB0KAgEB9IgZCFYh8IgN8IANCgIBAfSIMQoCAgH+DfSAHIC9CmNocfiAtQpPYKH58IDBC5/YnfnwgGCAdfiAaIB5+fCAfICN+fCAgICJ+fCAcICF+fCAZICZ+fCAbICR+fCAXICV+fCA+KAAPIgBBGHatID4xABNCCIaEID4xABRCEIaEQgOIfCAAQQZ2Qf///wBxrSAaIB1+IBwgHn58IB8gIn58ICAgJH58ICEgI358IBkgJX58IBsgJn58fCI2QoCAQH0iN0IViHwiJ0KAgEB9IjhCFYh8fCAGQoCAgH+DfSI5QoCAQH0iOkIVh3wiKkKAgEB9Ig5CFYcgCSAIQoCAgH+DfSAKIBAgFH4iKEKAgEB9Ig1CFYgiMUKDoVZ+fCALQoCAgH+DfSAWIBl+IBAgIH58IBEgG358IBMgF358IBIgGn58IA8gGH58IBQgI358IBUgHH58IBEgIH4gECAffnwgEyAZfnwgFiAbfnwgFyAYfnwgEiAcfnwgDyAafnwgFCAifnwgFSAjfnwiCkKAgEB9IgtCFYh8IglCgIBAfSIIQhWIfCIHQoCAQH0iBkIVh3wiMkKDoVZ+fCARIB1+IBYgHn58IBggH358IBogIH58IBMgIX58IBkgI358IBsgHH58IBcgIn58IBIgJn58IA8gJH58IBUgJX58IAVBGHatID4xABtCCIaEID4xABxCEIaEQgKIQv///wCDfCIDIC5CmNocfiAoIA1CgICA/////wODfSApQhWIfCIzQpPYKH58IC1C5/YnfnwgL0LTjEN+fCAwQtGrCH58IAxCFYh8fCADQoCAQH0iO0KAgIB/g30iA3wgA0KAgEB9IjxCgICAf4N9IgwgKiAHIAZCgICAf4N9IDNCg6FWfiAxQtGrCH58IAl8IAhCgICAf4N9IAogMULTjEN+fCAzQtGrCH58IC5Cg6FWfnwgC0KAgIB/g30gFiAgfiARIB9+fCAQICF+fCAYIBl+fCATIBt+fCAXIBp+fCASICN+fCAPIBx+fCAUICR+fCAVICJ+fCAWIB9+IBAgHn58IBMgIH58IBEgIX58IBkgGn58IBggG358IBcgHH58IBIgIn58IA8gI358IBQgJn58IBUgJH58Ij1CgIBAfSIrQhWIfCIsQoCAQH0iKUIViHwiDUKAgEB9IgpCFYd8IgZCgIBAfSIDQhWHfCI0QoOhVn4gMkLRqwh+fHwgDkKAgIB/g30gOSA0QtGrCH4gMkLTjEN+fCAGIANCgICAf4N9IjVCg6FWfnwgMEKY2hx+IC9Ck9gofnwgJ3wgNiAwQpPYKH58IDdCgICAf4N9IBwgHX4gHiAjfnwgHyAkfnwgICAmfnwgISAifnwgGyAlfnwgPigACiIAQRh2rSA+MQAOQgiGhCA+MQAPQhCGhEIBiEL///8Ag3wgAEEEdkH///8Aca0gHSAjfiAeICJ+fCAfICZ+fCAgICV+fCAhICR+fHwiNkKAgEB9IjdCFYh8IidCgIBAfSIqQhWIfCIOQoCAQH0iKEIVh3wgOEKAgIB/g30iC0KAgEB9IglCFYd8fCA6QoCAgH+DfSIIQoCAQH0iB0IVh3wiBkKAgEB9IgNCFYd8IAxCgIBAfSIMQoCAgH+DfSAGIANCgICAf4N9IAggB0KAgIB/g30gNELTjEN+IDJC5/YnfnwgNULRqwh+fCALfCAJQoCAgH+DfSANIApCgICAf4N9IDNC04xDfiAxQuf2J358IC5C0asIfnwgLUKDoVZ+fCAsfCApQoCAgH+DfSAzQuf2J34gMUKY2hx+fCAuQtOMQ358ID18IC1C0asIfnwgL0KDoVZ+fCArQoCAgH+DfSA+KAAcQQd2rSAQIB1+IBEgHn58IBMgH358IBggIH58IBYgIX58IBkgHH58IBogG358IBcgI358IBIgJH58IA8gIn58IBQgJX58IBUgJn58fCA7QhWIfCINQoCAQH0iCkIViHwiC0KAgEB9IglCFYd8IgZCgIBAfSIDQhWHfCIrQoOhVn58IA4gMkKY2hx+fCAoQoCAgH+DfSA0Quf2J358IDVC04xDfnwgK0LRqwh+fCAGIANCgICAf4N9IixCg6FWfnwiCEKAgEB9IgdCFYd8IgZCgIBAfSIDQhWHfCAGIANCgICAf4N9IAggB0KAgIB/g30gMkKT2Ch+ICd8ICpCgICAf4N9IDRCmNocfnwgNULn9id+fCALIAlCgICAf4N9IDNCmNocfiAxQpPYKH58IC5C5/YnfnwgLULTjEN+fCAvQtGrCH58IDBCg6FWfnwgDXwgCkKAgIB/g30gPEIVh3wiDUKAgEB9IgpCFYd8IilCg6FWfnwgK0LTjEN+fCAsQtGrCH58IDYgN0KAgIB/g30gHSAifiAeICR+fCAfICV+fCAhICZ+fCA+NQAHQgeIQv///wCDfCAdICR+IB4gJn58ICEgJX58ID4oAAIiAEEYdq0gPjEABkIIhoQgPjEAB0IQhoRCAohC////AIN8Ig5CgIBAfSIoQhWIfCILQoCAQH0iCUIViHwgNEKT2Ch+fCA1QpjaHH58IClC0asIfnwgK0Ln9id+fCAsQtOMQ358IghCgIBAfSIHQhWHfCIGQoCAQH0iA0IVh3wgBiANIApCgICAf4N9IAxCFYd8IidCgIBAfSIqQhWHIgxCg6FWfnwgA0KAgIB/g30gCCAMQtGrCH58IAdCgICAf4N9IAsgCUKAgIB/g30gNUKT2Ch+fCApQtOMQ358ICtCmNocfnwgLELn9id+fCAOIABBBXZB////AHGtIB0gJn4gHiAlfnx8IB0gJX4gPjMAACA+MQACQhCGQoCA/ACDhHwiDUKAgEB9IgpCFYh8IgtCgIBAfSIJQhWIfCAoQoCAgH+DfSApQuf2J358ICtCk9gofnwgLEKY2hx+fCIIQoCAQH0iB0IVh3wiBkKAgEB9IgNCFYd8IAYgDELTjEN+fCADQoCAgH+DfSAIIAxC5/YnfnwgB0KAgIB/g30gCyAJQoCAgH+DfSApQpjaHH58ICxCk9gofnwgDSAKQoCAgP///wODfSApQpPYKH58IghCgIBAfSIHQhWHfCIGQoCAQH0iA0IVh3wgBiAMQpjaHH58IANCgICAf4N9IAggB0KAgIB/g30gDEKT2Ch+fCIMQhWHfCIOQhWHfCIoQhWHfCINQhWHfCIKQhWHfCILQhWHfCIJQhWHfCIIQhWHfCIHQhWHfCIGQhWHfCIDQhWHICcgKkKAgIB/g318IipCFYciJ0KT2Ch+IAxC////AIN8Igw8AAAgBCAMQgiIPAABIAQgJ0KY2hx+IA5C////AIN8IAxCFYd8Ig5CC4g8AAQgBCAOQgOIPAADIAQgDEIQiEIfgyAOQgWGhDwAAiAEICdC5/YnfiAoQv///wCDfCAOQhWHfCIoQgaIPAAGIAQgKEIChiAOQoCA4ACDQhOIhDwABSAEICdC04xDfiANQv///wCDfCAoQhWHfCINQgmIPAAJIAQgDUIBiDwACCAEIA1CB4YgKEKAgP8Ag0IOiIQ8AAcgBCAnQtGrCH4gCkL///8Ag3wgDUIVh3wiCkIMiDwADCAEIApCBIg8AAsgBCAKQgSGIA1CgID4AINCEYiEPAAKIAQgJ0KDoVZ+IAtC////AIN8IApCFYd8IgtCB4g8AA4gBCALQgGGIApCgIDAAINCFIiEPAANIAQgCUL///8AgyALQhWHfCIJQgqIPAARIAQgCUICiDwAECAEIAlCBoYgC0KAgP4Ag0IPiIQ8AA8gBCAIQv///wCDIAlCFYd8IghCDYg8ABQgBCAIQgWIPAATIAQgB0L///8AgyAIQhWHfCIHPAAVIAQgCEIDhiAJQoCA8ACDQhKIhDwAEiAEIAdCCIg8ABYgBCAGQv///wCDIAdCFYd8IgZCC4g8ABkgBCAGQgOIPAAYIAQgB0IQiEIfgyAGQgWGhDwAFyAEIANC////AIMgBkIVh3wiB0IGiDwAGyAEIAdCAoYgBkKAgOAAg0ITiIQ8ABogBCAHQhWHIgMgKkL///8Ag3wiBkIRiDwAHyAEIAZCCYg8AB4gBCAGQgeGIAdCgID/AINCDoiEPAAcIAQgA6cgKqdqQQF2rTwAHSA/QcAAEAggPkHAABAIIAEEQCABQsAANwMACyBAQbAEaiQAQQALrwQBFH9B9MqB2QYhA0Gy2ojLByEMQe7IgZkDIQ1B5fDBiwYhBCABKAAMIQ8gASgACCEFIAEoAAQhBiACKAAcIRIgAigAGCEQQRQhESACKAAUIQ4gAigAECEIIAIoAAwhCSACKAAIIQogAigABCELIAEoAAAhASACKAAAIQIDQCAQIA8gAiANakEHd3MiByANakEJd3MiEyAEIA5qQQd3IAlzIgkgBGpBCXcgBXMiFCAJakENdyAOcyIVIAMgCGpBB3cgCnMiCiADakEJdyAGcyIGIApqQQ13IAhzIgggBmpBEncgA3MiAyASIAEgDGpBB3dzIgVqQQd3cyIOIANqQQl3cyIQIA5qQQ13IAVzIhIgEGpBEncgA3MhAyAFIAUgDGpBCXcgC3MiC2pBDXcgAXMiFiALakESdyAMcyIBIAdqQQd3IAhzIgggAWpBCXcgFHMiBSAIakENdyAHcyIPIAVqQRJ3IAFzIQwgEyAHIBNqQQ13IAJzIgdqQRJ3IA1zIgIgCWpBB3cgFnMiASACakEJdyAGcyIGIAFqQQ13IAlzIgkgBmpBEncgAnMhDSAUIBVqQRJ3IARzIgQgCmpBB3cgB3MiAiAEakEJdyALcyILIAJqQQ13IApzIgogC2pBEncgBHMhBCARQQJLIBFBAmshEQ0ACyAAIAQ2AAAgACAPNgAcIAAgBTYAGCAAIAY2ABQgACABNgAQIAAgAzYADCAAIAw2AAggACANNgAEQQAL8AQCA38BfiMAQaACayIDJAAgACAAKAIgQQN2QT9xIgJqQShqIQQCQCACQThPBEAgBEHgkQJBwAAgAmsQChogACAAQShqIAMgA0GAAmoQOSAAQgA3A1ggAEIANwNQIABCADcDSCAAQUBrQgA3AwAgAEIANwM4IABCADcDMCAAQgA3AygMAQsgBEHgkQJBOCACaxAKGgsgACAAKQMgIgVCOIYgBUKA/gODQiiGhCAFQoCA/AeDQhiGIAVCgICA+A+DQgiGhIQgBUIIiEKAgID4D4MgBUIYiEKAgPwHg4QgBUIoiEKA/gODIAVCOIiEhIQ3AGAgACAAQShqIAMgA0GAAmoQOSABIAAoAgAiAkEYdCACQYD+A3FBCHRyIAJBCHZBgP4DcSACQRh2cnI2AAAgASAAKAIEIgJBGHQgAkGA/gNxQQh0ciACQQh2QYD+A3EgAkEYdnJyNgAEIAEgACgCCCICQRh0IAJBgP4DcUEIdHIgAkEIdkGA/gNxIAJBGHZycjYACCABIAAoAgwiAkEYdCACQYD+A3FBCHRyIAJBCHZBgP4DcSACQRh2cnI2AAwgASAAKAIQIgJBGHQgAkGA/gNxQQh0ciACQQh2QYD+A3EgAkEYdnJyNgAQIAEgACgCFCICQRh0IAJBgP4DcUEIdHIgAkEIdkGA/gNxIAJBGHZycjYAFCABIAAoAhgiAkEYdCACQYD+A3FBCHRyIAJBCHZBgP4DcSACQRh2cnI2ABggASAAKAIcIgFBGHQgAUGA/gNxQQh0ciABQQh2QYD+A3EgAUEYdnJyNgAcIANBoAIQCCAAQegAEAggA0GgAmokAAv5AgIDfwJ+IwBBQGoiAyQAAkAgAkHBAGtB/wFxQb8BSwRAQX8hBCAAKQBQUARAIAAoAOACIgVBgQFPBEAgACAAKQBAIgZCgAF8NwBAIAAgACkASCAGQv9+Vq18NwBIIAAgAEHgAGoiBBA8IAAgACgA4AJBgAFrIgU2AOACIAVBgQFPDQMgBCAAQeABaiAFEAoaIAAoAOACIQULIAAgACkAQCIGIAWtfCIHNwBAIAAgACkASCAGIAdWrXw3AEggAC0A5AIEQCAAQn83AFgLIABCfzcAUCAAQeAAaiIEIAVqQQBBgAIgBWsQCRogACAEEDwgAyAAKQAANwMAIAMgACkACDcDCCADIAApABA3AxAgAyAAKQAYNwMYIAMgACkAIDcDICADIAApACg3AyggAyAAKQAwNwMwIAMgACkAODcDOCABIAMgAhAKGiAAQcAAEAggBEGAAhAIQQAhBAsgA0FAayQAIAQPCxALAAtB9AlB6ghBsgJBsggQAQALKQEBfyMAQRBrIgAkACAAQQA6AA9B9JsCIABBD2pBABAAGiAAQRBqJAALKAAgAkKAgICAEFoEQBALAAsgACABIAIgA0EBIARBzJsCKAIAEQoAGgsoACACQoCAgIAQWgRAEAsACyAAIAEgAiADQgEgBEHImwIoAgARDAAaC3QBBX8CQEEBIQIDQCAAIANqIgEgAiABLQAAaiICOgAAIAEgAS0AASACQQh2aiICOgABIAEgAS0AAiACQQh2aiICOgACIAEgAS0AAyACQQh2aiIBOgADIAFBCHYhAiADQQRqIQMgBEEEaiIEQQRHDQALDAALC4IHARR/IwBB8AFrIgQkACAEQgA3A8gBIARCADcDwAEgBEHAAWoiCSABIAIQChogAygAECEGIANBQGsiASgAACEHIAMoAFAhBSADKAAgIQggAygAMCEKIAMoABQhCyADKABEIQwgAygAVCENIAMoACQhDiADKAA0IQ8gAygAGCEQIAMoAEghESADKABYIRIgAygAKCETIAMoADghFCAEKALAASEVIAQoAsQBIRYgBCgCyAEhFyAEIAMoACwgAygAPHEgAygAHCADKABMIAMoAFwgBCgCzAFzc3NzNgLMASAEIBMgFHEgECARIBIgF3Nzc3M2AsgBIAQgDiAPcSALIAwgDSAWc3NzczYCxAEgBCAIIApxIAYgByAFIBVzc3NzNgLAASACIAlqQQBBECACaxAJGiAAIAkgAhAKGiAEKALAASEAIAQoAsQBIQIgBCgCyAEhBiAEKALMASEHIAQgAykCWDcD6AEgBCADKQJQNwPgASAEIAMpAkg3A7gBIAQgASkCADcDsAEgBCADKQJYNwOoASAEIAMpAlA3A6ABIARB0AFqIgUgBEGwAWogBEGgAWoQByADIAQpAtgBNwJYIAMgBCkC0AE3AlAgBCADKQI4NwOYASAEIAMpAjA3A5ABIAQgAykCSDcDiAEgBCABKQIANwOAASAFIARBkAFqIARBgAFqEAcgAyAEKQLYATcCSCABIAQpAtABNwIAIAQgAykCKDcDeCAEIAMpAiA3A3AgBCADKQI4NwNoIAQgAykCMDcDYCAFIARB8ABqIARB4ABqEAcgAyAEKQLYATcCOCADIAQpAtABNwIwIAQgAykCGDcDWCAEIAMpAhA3A1AgBCADKQIoNwNIIAQgAykCIDcDQCAFIARB0ABqIARBQGsQByADIAQpAtgBNwIoIAMgBCkC0AE3AiAgBCADKQIINwM4IAQgAykCADcDMCAEIAMpAhg3AyggBCADKQIQNwMgIAUgBEEwaiAEQSBqEAcgAyAEKQLYATcCGCADIAQpAtABNwIQIAQgBCkD6AE3AxggBCAEKQPgATcDECAEIAMpAgg3AwggBCADKQIANwMAIAUgBEEQaiAEEAcgBCgC0AEhASAEKALUASEFIAQoAtgBIQggAyAHIAQoAtwBczYCDCADIAYgCHM2AgggAyACIAVzNgIEIAMgACABczYCACAEQfABaiQAC6sGARR/IwBB4AFrIgMkACACKAAQIQQgAkFAayIFKAAAIQYgAigAUCEJIAIoACAhCiACKAAwIQsgAigAFCEHIAIoAEQhDCACKABUIQ0gASgABCEOIAIoACQhDyACKAA0IRAgAigAGCEIIAIoAEghESACKABYIRIgASgACCETIAIoACghFCACKAA4IRUgASgAACEWIAAgAigALCACKAA8cSACKAAcIAIoAEwgAigAXCABKAAMc3NzcyIBNgAMIAAgFCAVcSAIIBEgEiATc3NzcyIINgAIIAAgDyAQcSAHIAwgDSAOc3NzcyIHNgAEIAAgCiALcSAEIAYgCSAWc3NzcyIANgAAIAMgAikCWDcD2AEgAyACKQJQNwPQASADIAIpAkg3A7gBIAMgBSkCADcDsAEgAyACKQJYNwOoASADIAIpAlA3A6ABIANBwAFqIgQgA0GwAWogA0GgAWoQByACIAMpAsgBNwJYIAIgAykCwAE3AlAgAyACKQI4NwOYASADIAIpAjA3A5ABIAMgAikCSDcDiAEgAyAFKQIANwOAASAEIANBkAFqIANBgAFqEAcgAiADKQLIATcCSCAFIAMpAsABNwIAIAMgAikCKDcDeCADIAIpAiA3A3AgAyACKQI4NwNoIAMgAikCMDcDYCAEIANB8ABqIANB4ABqEAcgAiADKQLIATcCOCACIAMpAsABNwIwIAMgAikCGDcDWCADIAIpAhA3A1AgAyACKQIoNwNIIAMgAikCIDcDQCAEIANB0ABqIANBQGsQByACIAMpAsgBNwIoIAIgAykCwAE3AiAgAyACKQIINwM4IAMgAikCADcDMCADIAIpAhg3AyggAyACKQIQNwMgIAQgA0EwaiADQSBqEAcgAiADKQLIATcCGCACIAMpAsABNwIQIAMgAykD2AE3AxggAyADKQPQATcDECADIAIpAgg3AwggAyACKQIANwMAIAQgA0EQaiADEAcgAygCwAEhBSADKALEASEEIAMoAsgBIQYgAiADKALMASABczYCDCACIAYgCHM2AgggAiAEIAdzNgIEIAIgACAFczYCACADQeABaiQAC4sJARF/IwBB4AFrIgUkACAEKAA8IANBHXZzIQ4gBCgAOCADQQN0cyEPIAQoADQgAkEddnMhECAEQTBqIgMoAAAgAkEDdHMhESAEQRBqIQIgBEEgaiEGIARBQGshByAEQdAAaiEIA0AgBSAIKQIINwPYASAFIAgpAgA3A9ABIAUgBykCCDcDuAEgBSAHKQIANwOwASAFIAgpAgg3A6gBIAUgCCkCADcDoAEgBUHAAWoiCSAFQbABaiAFQaABahAHIAggBSkCyAE3AgggCCAFKQLAATcCACAFIAMpAgg3A5gBIAUgAykCADcDkAEgBSAHKQIINwOIASAFIAcpAgA3A4ABIAkgBUGQAWogBUGAAWoQByAHIAUpAsgBNwIIIAcgBSkCwAE3AgAgBSAGKQIINwN4IAUgBikCADcDcCAFIAMpAgg3A2ggBSADKQIANwNgIAkgBUHwAGogBUHgAGoQByADIAUpAsgBNwIIIAMgBSkCwAE3AgAgBSACKQIINwNYIAUgAikCADcDUCAFIAYpAgg3A0ggBSAGKQIANwNAIAkgBUHQAGogBUFAaxAHIAYgBSkCyAE3AgggBiAFKQLAATcCACAFIAQpAgg3AzggBSAEKQIANwMwIAUgAikCCDcDKCAFIAIpAgA3AyAgCSAFQTBqIAVBIGoQByACIAUpAsgBNwIIIAIgBSkCwAE3AgAgBSAFKQPYATcDGCAFIAUpA9ABNwMQIAUgBCkCCDcDCCAFIAQpAgA3AwAgCSAFQRBqIAUQByAFKALAASELIAUoAsQBIQwgBSgCyAEhCSAEIA4gBSgCzAFzIg02AgwgBCAJIA9zIgk2AgggBCAMIBBzIgw2AgQgBCALIBFzIgs2AgAgCkEBaiIKQQdHDQALAkACQAJAAkAgAUEQaw4RAAICAgICAgICAgICAgICAgECCyAEKAAQIQEgBCgAMCECIAQoACAhAyAEKABQIQYgBEFAaygAACEHIAQoABQhCCAEKAA0IQogBCgAJCEOIAQoAFQhDyAEKABEIRAgBCgAGCERIAQoADghEiAEKAAoIRMgBCgAWCEUIAQoAEghFSAAIAQoABwgBCgAPCAEKAAsIAQoAFwgBCgATHNzc3MgDXM2AAwgACARIBIgEyAUIBVzc3NzIAlzNgAIIAAgCCAKIA4gDyAQc3NzcyAMczYABCAAIAEgAiADIAYgB3Nzc3MgC3M2AAAMAgsgBCgAICEBIAQoABAhAiAEKAAkIQMgBCgAFCEGIAQoACghByAEKAAYIQggACAEKAAsIAQoABxzIA1zNgAMIAAgByAIcyAJczYACCAAIAMgBnMgDHM2AAQgACABIAJzIAtzNgAAIAQoADAhASAEKABQIQIgBEFAaygAACEDIAQoADQhBiAEKABUIQcgBCgARCEIIAQoADghCiAEKABYIQ0gBCgASCEJIAAgBCgAPCAEKABcIAQoAExzczYAHCAAIAogCSANc3M2ABggACAGIAcgCHNzNgAUIAAgASACIANzczYAEAwBCyAAQQAgARAJGgsgBUHgAWokAAulBgEUfyMAQeABayIDJAAgAigAECEFIAJBQGsiBCgAACEJIAIoAFAhCiACKAAgIQsgAigAMCEMIAEoAAQhBiACKAAUIQ0gAigARCEOIAIoAFQhDyACKAAkIRAgAigANCERIAEoAAghByACKAAYIRIgAigASCETIAIoAFghFCACKAAoIRUgAigAOCEWIAEoAAAhCCAAIAEoAAwiASACKAAsIAIoADxxIAIoABwgAigAXCACKABMc3NzczYADCAAIAcgFSAWcSASIBMgFHNzc3M2AAggACAGIBAgEXEgDSAOIA9zc3NzNgAEIAAgCCALIAxxIAUgCSAKc3NzczYAACADIAIpAlg3A9gBIAMgAikCUDcD0AEgAyACKQJINwO4ASADIAQpAgA3A7ABIAMgAikCWDcDqAEgAyACKQJQNwOgASADQcABaiIAIANBsAFqIANBoAFqEAcgAiADKQLIATcCWCACIAMpAsABNwJQIAMgAikCODcDmAEgAyACKQIwNwOQASADIAIpAkg3A4gBIAMgBCkCADcDgAEgACADQZABaiADQYABahAHIAIgAykCyAE3AkggBCADKQLAATcCACADIAIpAig3A3ggAyACKQIgNwNwIAMgAikCODcDaCADIAIpAjA3A2AgACADQfAAaiADQeAAahAHIAIgAykCyAE3AjggAiADKQLAATcCMCADIAIpAhg3A1ggAyACKQIQNwNQIAMgAikCKDcDSCADIAIpAiA3A0AgACADQdAAaiADQUBrEAcgAiADKQLIATcCKCACIAMpAsABNwIgIAMgAikCCDcDOCADIAIpAgA3AzAgAyACKQIYNwMoIAMgAikCEDcDICAAIANBMGogA0EgahAHIAIgAykCyAE3AhggAiADKQLAATcCECADIAMpA9gBNwMYIAMgAykD0AE3AxAgAyACKQIINwMIIAMgAikCADcDACAAIANBEGogAxAHIAMoAsABIQAgAygCxAEhBCADKALIASEFIAIgASADKALMAXM2AgwgAiAFIAdzNgIIIAIgBCAGczYCBCACIAAgCHM2AgAgA0HgAWokAAulCQENfyMAQaADayICJAAgACgAECEGIAAoABQhByAAKAAYIQggACgAHCEJIAAoAAQhBCAAKAAIIQUgACgADCEKIAAoAAAhCyACIAEpAlg3A5gDIAIgASkCUDcDkAMgAiABKQJINwP4AiACIAFBQGsiACkCADcD8AIgAiABKQJYNwPoAiACIAEpAlA3A+ACIAJBgANqIgMgAkHwAmogAkHgAmoQByABIAIpAogDNwJYIAEgAikCgAM3AlAgAiABKQI4NwPYAiACIAEpAjA3A9ACIAIgASkCSDcDyAIgAiAAKQIANwPAAiADIAJB0AJqIAJBwAJqEAcgASACKQKIAzcCSCAAIAIpAoADNwIAIAIgASkCKDcDuAIgAiABKQIgNwOwAiACIAEpAjg3A6gCIAIgASkCMDcDoAIgAyACQbACaiACQaACahAHIAEgAikCiAM3AjggASACKQKAAzcCMCACIAEpAhg3A5gCIAIgASkCEDcDkAIgAiABKQIoNwOIAiACIAEpAiA3A4ACIAMgAkGQAmogAkGAAmoQByABIAIpAogDNwIoIAEgAikCgAM3AiAgAiABKQIINwP4ASACIAEpAgA3A/ABIAIgASkCGDcD6AEgAiABKQIQNwPgASADIAJB8AFqIAJB4AFqEAcgASACKQKIAzcCGCABIAIpAoADNwIQIAIgAikDmAM3A9gBIAIgAikDkAM3A9ABIAIgASkCCDcDyAEgAiABKQIANwPAASADIAJB0AFqIAJBwAFqEAcgAigCgAMhDCACKAKEAyENIAIoAogDIQ4gASAKIAIoAowDczYCDCABIAUgDnM2AgggASAEIA1zNgIEIAEgCyAMczYCACACIAEpAlg3A5gDIAIgASkCUDcDkAMgAiABKQJINwO4ASACIAApAgA3A7ABIAIgASkCWDcDqAEgAiABKQJQNwOgASADIAJBsAFqIAJBoAFqEAcgASACKQKIAzcCWCABIAIpAoADNwJQIAIgASkCODcDmAEgAiABKQIwNwOQASACIAEpAkg3A4gBIAIgACkCADcDgAEgAyACQZABaiACQYABahAHIAEgAikCiAM3AkggACACKQKAAzcCACACIAEpAig3A3ggAiABKQIgNwNwIAIgASkCODcDaCACIAEpAjA3A2AgAyACQfAAaiACQeAAahAHIAEgAikCiAM3AjggASACKQKAAzcCMCACIAEpAhg3A1ggAiABKQIQNwNQIAIgASkCKDcDSCACIAEpAiA3A0AgAyACQdAAaiACQUBrEAcgASACKQKIAzcCKCABIAIpAoADNwIgIAIgASkCCDcDOCACIAEpAgA3AzAgAiABKQIYNwMoIAIgASkCEDcDICADIAJBMGogAkEgahAHIAEgAikCiAM3AhggASACKQKAAzcCECACIAIpA5gDNwMYIAIgAikDkAM3AxAgAiABKQIINwMIIAIgASkCADcDACADIAJBEGogAhAHIAIoAoADIQAgAigChAMhBCACKAKIAyEFIAEgCSACKAKMA3M2AgwgASAFIAhzNgIIIAEgBCAHczYCBCABIAAgBnM2AgAgAkGgA2okAAvzFAEZfyMAQaAGayIDJAAgASgABCELIAEoAAghDCABKAAMIQ0gASgAECEOIAEoABQhBCABKAAYIQ8gASgAHCEQIAAoAAQhESAAKAAIIRIgACgADCETIAAoABAhFCAAKAAUIRUgACgAGCEWIAAoABwhFyABKAAAIQUgAkFAayIBIAAoAAAiGEGAgoQQczYCACACQpXE3MmFsvq84gA3AjggAkEwaiIAQoCChJCwoIGEDTcCACACQqCixJG0rq2UXTcCKCACQSBqIgZC2/vgqNXN8JdxNwIAIAIgBSAYcyIZNgIAIAIgF0Hz6qLpfXM2AlwgAiAWQaCixJEEczYCWCACIBVB7YS/iX9zNgJUIAJB0ABqIgUgFEHb++CoBXM2AgAgAiATQZDT55MGczYCTCACIBJBlcTcyQVzNgJIIAIgEUGDiqDoAHM2AkQgAiAQIBdzIhA2AhwgAiAPIBZzIg82AhggAiAEIBVzIho2AhQgAkEQaiIEIA4gFHMiDjYCACACIA0gE3MiDTYCDCACIAwgEnMiDDYCCCACIAsgEXMiGzYCBEEAIQsDQCADIAUpAgg3A5gGIAMgBSkCADcDkAYgAyABKQIINwP4BSADIAEpAgA3A/AFIAMgBSkCCDcD6AUgAyAFKQIANwPgBSADQYAGaiIHIANB8AVqIANB4AVqEAcgBSADKQKIBjcCCCAFIAMpAoAGNwIAIAMgACkCCDcD2AUgAyAAKQIANwPQBSADIAEpAgg3A8gFIAMgASkCADcDwAUgByADQdAFaiADQcAFahAHIAEgAykCiAY3AgggASADKQKABjcCACADIAYpAgg3A7gFIAMgBikCADcDsAUgAyAAKQIINwOoBSADIAApAgA3A6AFIAcgA0GwBWogA0GgBWoQByAAIAMpAogGNwIIIAAgAykCgAY3AgAgAyAEKQIINwOYBSADIAQpAgA3A5AFIAMgBikCCDcDiAUgAyAGKQIANwOABSAHIANBkAVqIANBgAVqEAcgBiADKQKIBjcCCCAGIAMpAoAGNwIAIAMgAikCCDcD+AQgAyACKQIANwPwBCADIAQpAgg3A+gEIAMgBCkCADcD4AQgByADQfAEaiADQeAEahAHIAQgAykCiAY3AgggBCADKQKABjcCACADIAMpA5gGNwPYBCADIAMpA5AGNwPQBCADIAIpAgg3A8gEIAMgAikCADcDwAQgByADQdAEaiADQcAEahAHIAMoAoAGIQggAygChAYhCSADKAKIBiEKIAIgAygCjAYgE3M2AgwgAiAKIBJzNgIIIAIgCSARczYCBCACIAggGHM2AgAgAyAFKQIINwOYBiADIAUpAgA3A5AGIAMgASkCCDcDuAQgAyABKQIANwOwBCADIAUpAgg3A6gEIAMgBSkCADcDoAQgByADQbAEaiADQaAEahAHIAUgAykCiAY3AgggBSADKQKABjcCACADIAApAgg3A5gEIAMgACkCADcDkAQgAyABKQIINwOIBCADIAEpAgA3A4AEIAcgA0GQBGogA0GABGoQByABIAMpAogGNwIIIAEgAykCgAY3AgAgAyAGKQIINwP4AyADIAYpAgA3A/ADIAMgACkCCDcD6AMgAyAAKQIANwPgAyAHIANB8ANqIANB4ANqEAcgACADKQKIBjcCCCAAIAMpAoAGNwIAIAMgBCkCCDcD2AMgAyAEKQIANwPQAyADIAYpAgg3A8gDIAMgBikCADcDwAMgByADQdADaiADQcADahAHIAYgAykCiAY3AgggBiADKQKABjcCACADIAIpAgg3A7gDIAMgAikCADcDsAMgAyAEKQIINwOoAyADIAQpAgA3A6ADIAcgA0GwA2ogA0GgA2oQByAEIAMpAogGNwIIIAQgAykCgAY3AgAgAyADKQOYBjcDmAMgAyADKQOQBjcDkAMgAyACKQIINwOIAyADIAIpAgA3A4ADIAcgA0GQA2ogA0GAA2oQByADKAKABiEIIAMoAoQGIQkgAygCiAYhCiACIAMoAowGIBdzNgIMIAIgCiAWczYCCCACIAkgFXM2AgQgAiAIIBRzNgIAIAMgBSkCCDcDmAYgAyAFKQIANwOQBiADIAEpAgg3A/gCIAMgASkCADcD8AIgAyAFKQIINwPoAiADIAUpAgA3A+ACIAcgA0HwAmogA0HgAmoQByAFIAMpAogGNwIIIAUgAykCgAY3AgAgAyAAKQIINwPYAiADIAApAgA3A9ACIAMgASkCCDcDyAIgAyABKQIANwPAAiAHIANB0AJqIANBwAJqEAcgASADKQKIBjcCCCABIAMpAoAGNwIAIAMgBikCCDcDuAIgAyAGKQIANwOwAiADIAApAgg3A6gCIAMgACkCADcDoAIgByADQbACaiADQaACahAHIAAgAykCiAY3AgggACADKQKABjcCACADIAQpAgg3A5gCIAMgBCkCADcDkAIgAyAGKQIINwOIAiADIAYpAgA3A4ACIAcgA0GQAmogA0GAAmoQByAGIAMpAogGNwIIIAYgAykCgAY3AgAgAyACKQIINwP4ASADIAIpAgA3A/ABIAMgBCkCCDcD6AEgAyAEKQIANwPgASAHIANB8AFqIANB4AFqEAcgBCADKQKIBjcCCCAEIAMpAoAGNwIAIAMgAykDmAY3A9gBIAMgAykDkAY3A9ABIAMgAikCCDcDyAEgAyACKQIANwPAASAHIANB0AFqIANBwAFqEAcgAygCgAYhCCADKAKEBiEJIAMoAogGIQogAiADKAKMBiANczYCDCACIAogDHM2AgggAiAJIBtzNgIEIAIgCCAZczYCACADIAUpAgg3A5gGIAMgBSkCADcDkAYgAyABKQIINwO4ASADIAEpAgA3A7ABIAMgBSkCCDcDqAEgAyAFKQIANwOgASAHIANBsAFqIANBoAFqEAcgBSADKQKIBjcCCCAFIAMpAoAGNwIAIAMgACkCCDcDmAEgAyAAKQIANwOQASADIAEpAgg3A4gBIAMgASkCADcDgAEgByADQZABaiADQYABahAHIAEgAykCiAY3AgggASADKQKABjcCACADIAYpAgg3A3ggAyAGKQIANwNwIAMgACkCCDcDaCADIAApAgA3A2AgByADQfAAaiADQeAAahAHIAAgAykCiAY3AgggACADKQKABjcCACADIAQpAgg3A1ggAyAEKQIANwNQIAMgBikCCDcDSCADIAYpAgA3A0AgByADQdAAaiADQUBrEAcgBiADKQKIBjcCCCAGIAMpAoAGNwIAIAMgAikCCDcDOCADIAIpAgA3AzAgAyAEKQIINwMoIAMgBCkCADcDICAHIANBMGogA0EgahAHIAQgAykCiAY3AgggBCADKQKABjcCACADIAMpA5gGNwMYIAMgAykDkAY3AxAgAyACKQIINwMIIAMgAikCADcDACAHIANBEGogAxAHIAMoAoAGIQggAygChAYhCSADKAKIBiEKIAIgAygCjAYgEHM2AgwgAiAKIA9zNgIIIAIgCSAaczYCBCACIAggDnM2AgAgC0EBaiILQQRHDQALIANBoAZqJAALCAAgAEEQEBgLBABBXwuYCgEefyMAQcACayIEJAAgBEIANwOYAiAEQgA3A5ACIARCADcDiAIgBEIANwOAAiAEQYACaiIFIAEgAhAKGiADKAAQIQsgAygAMCEMIAMoABQhDSADKAA0IQ4gAygAGCEPIAMoADghECADKAAcIREgAygAPCESIAMoACQhASADKABUIRMgAygAdCEUIAMoAGQhBiADKAAsIQcgAygAXCEVIAMoAHwhFiADKABsIQggAygAICEJIAMoAFAhFyADKABwIRggAygAYCEKIAQoApACIRkgBCgCgAIhGiAEKAKEAiEbIAQoAogCIRwgBCgCjAIhHSAEKAKUAiEeIAQoApwCIR8gBCADKAAoIiAgAygAaCIhIAMoAHhxIAMoAFggBCgCmAJzc3M2ApgCIAQgCSAKIBhxIBcgGXNzczYCkAIgBCAHIAggFnEgFSAfc3NzNgKcAiAEIAEgBiAUcSATIB5zc3M2ApQCIAQgCCAHIBJxIBEgHXNzczYCjAIgBCAhIBAgIHEgDyAcc3NzNgKIAiAEIAYgASAOcSANIBtzc3M2AoQCIAQgCiAJIAxxIAsgGnNzczYCgAIgAiAFakEAQSAgAmsQCRogACAFIAIQChogBCgCmAIhASAEKAKQAiECIAQoApwCIQYgBCgClAIhByAEKAKAAiEIIAQoAoQCIQkgBCgCiAIhCiAEKAKMAiELIAQgAykCeDcDuAIgBCADKQJwNwOwAiAEIAMpAmg3A/gBIAQgAykCYDcD8AEgBCADKQJ4NwPoASAEIAMpAnA3A+ABIARBoAJqIgUgBEHwAWogBEHgAWoQByADIAQpAqgCNwJ4IAMgBCkCoAI3AnAgBCADKQJYNwPYASAEIAMpAlA3A9ABIAQgAykCaDcDyAEgBCADKQJgNwPAASAFIARB0AFqIARBwAFqEAcgAyAEKQKoAjcCaCADIAQpAqACNwJgIAQgAykCSDcDuAEgBCADQUBrIgApAgA3A7ABIAQgAykCWDcDqAEgBCADKQJQNwOgASAFIARBsAFqIARBoAFqEAcgAyAEKQKoAjcCWCADIAQpAqACNwJQIAQgAykCODcDmAEgBCADKQIwNwOQASAEIAMpAkg3A4gBIAQgACkCADcDgAEgBSAEQZABaiAEQYABahAHIAMgBCkCqAI3AkggACAEKQKgAjcCACAEIAMpAig3A3ggBCADKQIgNwNwIAQgAykCODcDaCAEIAMpAjA3A2AgBSAEQfAAaiAEQeAAahAHIAMgBCkCqAI3AjggAyAEKQKgAjcCMCAEIAMpAhg3A1ggBCADKQIQNwNQIAQgAykCKDcDSCAEIAMpAiA3A0AgBSAEQdAAaiAEQUBrEAcgAyAEKQKoAjcCKCADIAQpAqACNwIgIAQgAykCCDcDOCAEIAMpAgA3AzAgBCADKQIYNwMoIAQgAykCEDcDICAFIARBMGogBEEgahAHIAMgBCkCqAI3AhggAyAEKQKgAjcCECAEIAQpA7gCNwMYIAQgBCkDsAI3AxAgBCADKQIINwMIIAQgAykCADcDACAFIARBEGogBBAHIAMgBCkCqAI3AgggAyAEKQKgAjcCACADIAsgAygADHM2AgwgAyAKIAMoAAhzNgIIIAMgCSADKAAEczYCBCADIAggAygAAHM2AgAgACACIAAoAABzNgIAIAMgByADKABEczYCRCADIAEgAygASHM2AkggAyAGIAMoAExzNgJMIARBwAJqJAALkQkBHn8jAEGgAmsiAyQAIAIoABAhDiACKAAwIQ8gAigAFCEQIAEoAAQhESACKAA0IRIgAigAGCETIAEoAAghFCACKAA4IRUgAigAHCEIIAEoAAwhFiACKAA8IRcgAigAICEFIAIoAFAhCSABKAAQIRggAigAcCEZIAIoAGAhBCACKAAkIQYgAigAVCEKIAEoABQhGiACKAB0IRsgAigAZCEMIAIoACghByACKABYIQsgASgAGCEcIAIoAHghHSACKABoIQ0gASgAACEeIAAgAigALCIfIAIoAGwiICACKAB8cSACKABcIAEoABxzc3MiATYAHCAAIAcgDSAdcSALIBxzc3MiCzYAGCAAIAYgDCAbcSAKIBpzc3MiCjYAFCAAIAUgBCAZcSAJIBhzc3MiCTYAECAAICAgFyAfcSAIIBZzc3MiCDYADCAAIA0gByAVcSATIBRzc3MiBzYACCAAIAwgBiAScSAQIBFzc3MiBjYABCAAIAQgBSAPcSAOIB5zc3MiBTYAACADIAIpAng3A5gCIAMgAikCcDcDkAIgAyACKQJoNwP4ASADIAIpAmA3A/ABIAMgAikCeDcD6AEgAyACKQJwNwPgASADQYACaiIEIANB8AFqIANB4AFqEAcgAiADKQKIAjcCeCACIAMpAoACNwJwIAMgAikCWDcD2AEgAyACKQJQNwPQASADIAIpAmg3A8gBIAMgAikCYDcDwAEgBCADQdABaiADQcABahAHIAIgAykCiAI3AmggAiADKQKAAjcCYCADIAIpAkg3A7gBIAMgAkFAayIAKQIANwOwASADIAIpAlg3A6gBIAMgAikCUDcDoAEgBCADQbABaiADQaABahAHIAIgAykCiAI3AlggAiADKQKAAjcCUCADIAIpAjg3A5gBIAMgAikCMDcDkAEgAyACKQJINwOIASADIAApAgA3A4ABIAQgA0GQAWogA0GAAWoQByACIAMpAogCNwJIIAAgAykCgAI3AgAgAyACKQIoNwN4IAMgAikCIDcDcCADIAIpAjg3A2ggAyACKQIwNwNgIAQgA0HwAGogA0HgAGoQByACIAMpAogCNwI4IAIgAykCgAI3AjAgAyACKQIYNwNYIAMgAikCEDcDUCADIAIpAig3A0ggAyACKQIgNwNAIAQgA0HQAGogA0FAaxAHIAIgAykCiAI3AiggAiADKQKAAjcCICADIAIpAgg3AzggAyACKQIANwMwIAMgAikCGDcDKCADIAIpAhA3AyAgBCADQTBqIANBIGoQByACIAMpAogCNwIYIAIgAykCgAI3AhAgAyADKQOYAjcDGCADIAMpA5ACNwMQIAMgAikCCDcDCCADIAIpAgA3AwAgBCADQRBqIAMQByACIAMpAogCNwIIIAIgAykCgAI3AgAgAiACKAAMIAhzNgIMIAIgAigACCAHczYCCCACIAIoAAQgBnM2AgQgAiACKAAAIAVzNgIAIAAgACgAACAJczYCACACIAIoAEQgCnM2AkQgAiACKABIIAtzNgJIIAIgAigATCABczYCTCADQaACaiQAC9ILARV/IwBBoAJrIgUkACAEKAAsIANBHXZzIQwgBCgAKCADQQN0cyENIAQoACQgAkEddnMhDiAEQSBqIgMoAAAgAkEDdHMhDyAEQRBqIQYgBEEwaiEHIARBQGshAiAEQdAAaiEIIARB4ABqIQkgBEHwAGohCgNAIAUgCikCCDcDmAIgBSAKKQIANwOQAiAFIAkpAgg3A/gBIAUgCSkCADcD8AEgBSAKKQIINwPoASAFIAopAgA3A+ABIAVBgAJqIgsgBUHwAWogBUHgAWoQByAKIAUpAogCNwIIIAogBSkCgAI3AgAgBSAIKQIINwPYASAFIAgpAgA3A9ABIAUgCSkCCDcDyAEgBSAJKQIANwPAASALIAVB0AFqIAVBwAFqEAcgCSAFKQKIAjcCCCAJIAUpAoACNwIAIAUgAikCCDcDuAEgBSACKQIANwOwASAFIAgpAgg3A6gBIAUgCCkCADcDoAEgCyAFQbABaiAFQaABahAHIAggBSkCiAI3AgggCCAFKQKAAjcCACAFIAcpAgg3A5gBIAUgBykCADcDkAEgBSACKQIINwOIASAFIAIpAgA3A4ABIAsgBUGQAWogBUGAAWoQByACIAUpAogCNwIIIAIgBSkCgAI3AgAgBSADKQIINwN4IAUgAykCADcDcCAFIAcpAgg3A2ggBSAHKQIANwNgIAsgBUHwAGogBUHgAGoQByAHIAUpAogCNwIIIAcgBSkCgAI3AgAgBSAGKQIINwNYIAUgBikCADcDUCAFIAMpAgg3A0ggBSADKQIANwNAIAsgBUHQAGogBUFAaxAHIAMgBSkCiAI3AgggAyAFKQKAAjcCACAFIAQpAgg3AzggBSAEKQIANwMwIAUgBikCCDcDKCAFIAYpAgA3AyAgCyAFQTBqIAVBIGoQByAGIAUpAogCNwIIIAYgBSkCgAI3AgAgBSAFKQOYAjcDGCAFIAUpA5ACNwMQIAUgBCkCCDcDCCAFIAQpAgA3AwAgCyAFQRBqIAUQByAEIAUpAogCNwIIIAQgBSkCgAI3AgAgBCAEKAAMIAxzIgs2AgwgBCAEKAAIIA1zIhE2AgggBCAEKAAEIA5zIhI2AgQgBCAEKAAAIA9zIhM2AgAgAiACKAAAIA9zIhQ2AgAgBCAEKABEIA5zIhU2AkQgBCAEKABIIA1zIhY2AkggBCAEKABMIAxzIhc2AkwgEEEBaiIQQQdHDQALAkACQAJAAkAgAUEQaw4RAAICAgICAgICAgICAgICAgECCyAEKAAQIQEgBCgAMCECIAQoACAhAyAEKABgIQYgBCgAUCEHIAQoABQhCCAEKAA0IQkgBCgAJCEKIAQoAGQhDCAEKABUIQ0gBCgAGCEOIAQoADghDyAEKAAoIRAgBCgAaCEYIAQoAFghGSAAIAQoABwgBCgAPCAEKAAsIAQoAFwgBCgAbHNzc3MgF3MgC3M2AAwgACAOIA8gECAYIBlzc3NzIBZzIBFzNgAIIAAgCCAJIAogDCANc3NzcyAVcyASczYABCAAIAEgAiADIAYgB3Nzc3MgFHMgE3M2AAAMAgsgBCgAECEBIAQoADAhAiAEKAAgIQMgBCgAFCEGIAQoADQhByAEKAAkIQggBCgAGCEJIAQoADghCiAEKAAoIQwgACAEKAAcIAQoADwgBCgALHNzIAtzNgAMIAAgCSAKIAxzcyARczYACCAAIAYgByAIc3MgEnM2AAQgACABIAIgA3NzIBNzNgAAIAQoAFAhASAEQUBrKAAAIQIgBCgAcCEDIAQoAGAhBiAEKABUIQcgBCgARCEIIAQoAHQhCSAEKABkIQogBCgAWCEMIAQoAEghDSAEKAB4IQ4gBCgAaCEPIAAgBCgAXCAEKABMIAQoAHwgBCgAbHNzczYAHCAAIAwgDSAOIA9zc3M2ABggACAHIAggCSAKc3NzNgAUIAAgASACIAMgBnNzczYAEAwBCyAAQQAgARAJGgsgBUGgAmokAAuDCQEefyMAQaACayIDJAAgAigAECERIAIoADAhEiABKAAEIQUgAigAFCETIAIoADQhFCABKAAIIQYgAigAGCEVIAIoADghFiABKAAMIQcgAigAHCEXIAIoADwhGCACKAAgIQQgASgAECEIIAIoAFAhGSACKABwIRogAigAYCEJIAIoACQhCiABKAAUIQsgAigAVCEbIAIoAHQhHCACKABkIQwgAigAKCENIAEoABghDiACKABYIR0gAigAeCEeIAIoAGghDyABKAAAIRAgACACKAAsIh8gASgAHCIBIAIoAFwgAigAbCIgIAIoAHxxc3NzNgAcIAAgDSAOIB0gDyAecXNzczYAGCAAIAogCyAbIAwgHHFzc3M2ABQgACAEIAggGSAJIBpxc3NzNgAQIAAgICAHIBcgGCAfcXNzczYADCAAIA8gBiAVIA0gFnFzc3M2AAggACAMIAUgEyAKIBRxc3NzNgAEIAAgCSAQIBEgBCAScXNzczYAACADIAIpAng3A5gCIAMgAikCcDcDkAIgAyACKQJoNwP4ASADIAIpAmA3A/ABIAMgAikCeDcD6AEgAyACKQJwNwPgASADQYACaiIEIANB8AFqIANB4AFqEAcgAiADKQKIAjcCeCACIAMpAoACNwJwIAMgAikCWDcD2AEgAyACKQJQNwPQASADIAIpAmg3A8gBIAMgAikCYDcDwAEgBCADQdABaiADQcABahAHIAIgAykCiAI3AmggAiADKQKAAjcCYCADIAIpAkg3A7gBIAMgAkFAayIAKQIANwOwASADIAIpAlg3A6gBIAMgAikCUDcDoAEgBCADQbABaiADQaABahAHIAIgAykCiAI3AlggAiADKQKAAjcCUCADIAIpAjg3A5gBIAMgAikCMDcDkAEgAyACKQJINwOIASADIAApAgA3A4ABIAQgA0GQAWogA0GAAWoQByACIAMpAogCNwJIIAAgAykCgAI3AgAgAyACKQIoNwN4IAMgAikCIDcDcCADIAIpAjg3A2ggAyACKQIwNwNgIAQgA0HwAGogA0HgAGoQByACIAMpAogCNwI4IAIgAykCgAI3AjAgAyACKQIYNwNYIAMgAikCEDcDUCADIAIpAig3A0ggAyACKQIgNwNAIAQgA0HQAGogA0FAaxAHIAIgAykCiAI3AiggAiADKQKAAjcCICADIAIpAgg3AzggAyACKQIANwMwIAMgAikCGDcDKCADIAIpAhA3AyAgBCADQTBqIANBIGoQByACIAMpAogCNwIYIAIgAykCgAI3AhAgAyADKQOYAjcDGCADIAMpA5ACNwMQIAMgAikCCDcDCCADIAIpAgA3AwAgBCADQRBqIAMQByACIAMpAogCNwIIIAIgAykCgAI3AgAgAiAHIAIoAAxzNgIMIAIgBiACKAAIczYCCCACIAUgAigABHM2AgQgAiAQIAIoAABzNgIAIAAgCCAAKAAAczYCACACIAsgAigARHM2AkQgAiAOIAIoAEhzNgJIIAIgASACKABMczYCTCADQaACaiQAC5kNARJ/IwBBoARrIgIkACAAKAA8IQQgACgAOCEFIAAoADQhBiAAKAAwIQcgACgAICEIIAAoACQhCSAAKAAoIQogACgALCELIAAoABwhDCAAKAAYIQ0gACgAFCEOIAAoABAhDyAAKAAEIRAgACgACCERIAAoAAwhEiAAKAAAIRMgAiABKQJ4NwOYBCACIAEpAnA3A5AEIAIgASkCaDcD+AMgAiABKQJgNwPwAyACIAEpAng3A+gDIAIgASkCcDcD4AMgAkGABGoiAyACQfADaiACQeADahAHIAEgAikCiAQ3AnggASACKQKABDcCcCACIAEpAlg3A9gDIAIgASkCUDcD0AMgAiABKQJoNwPIAyACIAEpAmA3A8ADIAMgAkHQA2ogAkHAA2oQByABIAIpAogENwJoIAEgAikCgAQ3AmAgAiABKQJINwO4AyACIAFBQGsiACkCADcDsAMgAiABKQJYNwOoAyACIAEpAlA3A6ADIAMgAkGwA2ogAkGgA2oQByABIAIpAogENwJYIAEgAikCgAQ3AlAgAiABKQI4NwOYAyACIAEpAjA3A5ADIAIgASkCSDcDiAMgAiAAKQIANwOAAyADIAJBkANqIAJBgANqEAcgASACKQKIBDcCSCAAIAIpAoAENwIAIAIgASkCKDcD+AIgAiABKQIgNwPwAiACIAEpAjg3A+gCIAIgASkCMDcD4AIgAyACQfACaiACQeACahAHIAEgAikCiAQ3AjggASACKQKABDcCMCACIAEpAhg3A9gCIAIgASkCEDcD0AIgAiABKQIoNwPIAiACIAEpAiA3A8ACIAMgAkHQAmogAkHAAmoQByABIAIpAogENwIoIAEgAikCgAQ3AiAgAiABKQIINwO4AiACIAEpAgA3A7ACIAIgASkCGDcDqAIgAiABKQIQNwOgAiADIAJBsAJqIAJBoAJqEAcgASACKQKIBDcCGCABIAIpAoAENwIQIAIgAikDmAQ3A5gCIAIgAikDkAQ3A5ACIAIgASkCCDcDiAIgAiABKQIANwOAAiADIAJBkAJqIAJBgAJqEAcgASACKQKIBDcCCCABIAIpAoAENwIAIAEgEiABKAAMczYCDCABIBEgASgACHM2AgggASAQIAEoAARzNgIEIAEgEyABKAAAczYCACAAIA8gACgAAHM2AgAgASAOIAEoAERzNgJEIAEgDSABKABIczYCSCABIAwgASgATHM2AkwgAiABKQJ4NwOYBCACIAEpAnA3A5AEIAIgASkCaDcD+AEgAiABKQJgNwPwASACIAEpAng3A+gBIAIgASkCcDcD4AEgAyACQfABaiACQeABahAHIAEgAikCiAQ3AnggASACKQKABDcCcCACIAEpAlg3A9gBIAIgASkCUDcD0AEgAiABKQJoNwPIASACIAEpAmA3A8ABIAMgAkHQAWogAkHAAWoQByABIAIpAogENwJoIAEgAikCgAQ3AmAgAiABKQJINwO4ASACIAApAgA3A7ABIAIgASkCWDcDqAEgAiABKQJQNwOgASADIAJBsAFqIAJBoAFqEAcgASACKQKIBDcCWCABIAIpAoAENwJQIAIgASkCODcDmAEgAiABKQIwNwOQASACIAEpAkg3A4gBIAIgACkCADcDgAEgAyACQZABaiACQYABahAHIAEgAikCiAQ3AkggACACKQKABDcCACACIAEpAig3A3ggAiABKQIgNwNwIAIgASkCODcDaCACIAEpAjA3A2AgAyACQfAAaiACQeAAahAHIAEgAikCiAQ3AjggASACKQKABDcCMCACIAEpAhg3A1ggAiABKQIQNwNQIAIgASkCKDcDSCACIAEpAiA3A0AgAyACQdAAaiACQUBrEAcgASACKQKIBDcCKCABIAIpAoAENwIgIAIgASkCCDcDOCACIAEpAgA3AzAgAiABKQIYNwMoIAIgASkCEDcDICADIAJBMGogAkEgahAHIAEgAikCiAQ3AhggASACKQKABDcCECACIAIpA5gENwMYIAIgAikDkAQ3AxAgAiABKQIINwMIIAIgASkCADcDACADIAJBEGogAhAHIAEgAikCiAQ3AgggASACKQKABDcCACABIAsgASgADHM2AgwgASAKIAEoAAhzNgIIIAEgCSABKAAEczYCBCABIAggASgAAHM2AgAgACAHIAAoAABzNgIAIAEgBiABKABEczYCRCABIAUgASgASHM2AkggASAEIAEoAExzNgJMIAJBoARqJAALvQkBEX8jAEGgAmsiAyQAIAEoAAQhECABKAAIIREgASgADCESIAAoAAQhCyAAKAAIIQwgACgADCENIAEoAAAhEyACQfAAaiIBIAAoAAAiDkGAgoQQcyIANgIAIAJB4ABqIgYgDkHb++CoBXM2AgAgAkHQAGoiByAANgIAIAJBQGsiACAOIBNzIgU2AgAgAkKgosSRtK6tlF03AjggAkEwaiIIQtv74KjVzfCXcTcCACACQpXE3MmFsvq84gA3AiggAkEgaiIJQoCChJCwoIGEDTcCACACQqCixJG0rq2UXTcCGCACQRBqIgpC2/vgqNXN8JdxNwIAIAIgBTYCACACIA1BkNPnkwZzIgU2AnwgAiAMQZXE3MkFcyIENgJ4IAIgC0GDiqDoAHMiDzYCdCACIA1B8+qi6X1zNgJsIAIgDEGgosSRBHM2AmggAiALQe2Ev4l/czYCZCACIAU2AlwgAiAENgJYIAIgDzYCVCACIA0gEnMiBTYCTCACIAwgEXMiBDYCSCACIAsgEHMiDzYCRCACIAU2AgwgAiAENgIIIAIgDzYCBEEAIQUDQCADIAEpAgg3A5gCIAMgASkCADcDkAIgAyAGKQIINwP4ASADIAYpAgA3A/ABIAMgASkCCDcD6AEgAyABKQIANwPgASADQYACaiIEIANB8AFqIANB4AFqEAcgASADKQKIAjcCCCABIAMpAoACNwIAIAMgBykCCDcD2AEgAyAHKQIANwPQASADIAYpAgg3A8gBIAMgBikCADcDwAEgBCADQdABaiADQcABahAHIAYgAykCiAI3AgggBiADKQKAAjcCACADIAApAgg3A7gBIAMgACkCADcDsAEgAyAHKQIINwOoASADIAcpAgA3A6ABIAQgA0GwAWogA0GgAWoQByAHIAMpAogCNwIIIAcgAykCgAI3AgAgAyAIKQIINwOYASADIAgpAgA3A5ABIAMgACkCCDcDiAEgAyAAKQIANwOAASAEIANBkAFqIANBgAFqEAcgACADKQKIAjcCCCAAIAMpAoACNwIAIAMgCSkCCDcDeCADIAkpAgA3A3AgAyAIKQIINwNoIAMgCCkCADcDYCAEIANB8ABqIANB4ABqEAcgCCADKQKIAjcCCCAIIAMpAoACNwIAIAMgCikCCDcDWCADIAopAgA3A1AgAyAJKQIINwNIIAMgCSkCADcDQCAEIANB0ABqIANBQGsQByAJIAMpAogCNwIIIAkgAykCgAI3AgAgAyACKQIINwM4IAMgAikCADcDMCADIAopAgg3AyggAyAKKQIANwMgIAQgA0EwaiADQSBqEAcgCiADKQKIAjcCCCAKIAMpAoACNwIAIAMgAykDmAI3AxggAyADKQOQAjcDECADIAIpAgg3AwggAyACKQIANwMAIAQgA0EQaiADEAcgAiADKQKIAjcCCCACIAMpAoACNwIAIAIgAigADCASczYCDCACIAIoAAggEXM2AgggAiACKAAEIBBzNgIEIAIgAigAACATczYCACAAIAAoAAAgDnM2AgAgAiACKABEIAtzNgJEIAIgAigASCAMczYCSCACIAIoAEwgDXM2AkwgBUEBaiIFQQpHDQALIANBoAJqJAALzwQBCX8jAEGAAWsiAyQAIABBATYCACAAQgA3AgQgAEIANwIMIABCADcCFCAAQgA3AhwgAEKAgICAEDcCJCAAQSxqQQBBzAAQCRogACABQcAHbEGAFWoiASACIAJBH3UgAnFBAXRrIgRBAXNB/wFxQQFrQR92EBUgACABQfgAaiAEQQJzQf8BcUEBa0EfdhAVIAAgAUHwAWogBEEDc0H/AXFBAWtBH3YQFSAAIAFB6AJqIARBBHNB/wFxQQFrQR92EBUgACABQeADaiAEQQVzQf8BcUEBa0EfdhAVIAAgAUHYBGogBEEGc0H/AXFBAWtBH3YQFSAAIAFB0AVqIARBB3NB/wFxQQFrQR92EBUgACABQcgGaiAEQQhzQf8BcUEBa0EfdhAVIAMgACkCSDcDKCADIABBQGspAgA3AyAgAyAAKQI4NwMYIAMgACkCMDcDECADIAApAig3AwggAyAAKQIINwM4IANBQGsgACkCEDcDACADIAApAhg3A0ggAyAAKQIgNwNQIAMgACkCADcDMCAAKAJUIQEgACgCWCEEIAAoAlwhBSAAKAJgIQYgACgCZCEHIAAoAmghCCAAKAJsIQkgACgCcCEKIAAoAlAhCyADQQAgACgCdGs2AnwgA0EAIAprNgJ4IANBACAJazYCdCADQQAgCGs2AnAgA0EAIAdrNgJsIANBACAGazYCaCADQQAgBWs2AmQgA0EAIARrNgJgIANBACABazYCXCADQQAgC2s2AlggACADQQhqIAJBgAFxQQd2EBUgA0GAAWokAAvwCQEdfyABKAIEIQQgASgCLCEDIAEoAgghBSABKAIwIQYgASgCDCEHIAEoAjQhCCABKAIQIQkgASgCOCEKIAEoAhQhCyABKAI8IQwgASgCGCENIAFBQGsiDigCACEPIAEoAhwhECABKAJEIREgASgCICESIAEoAkghEyABKAIkIRQgASgCTCEVIAAgASgCACABKAIoajYCACAAIBQgFWo2AiQgACASIBNqNgIgIAAgECARajYCHCAAIA0gD2o2AhggACALIAxqNgIUIAAgCSAKajYCECAAIAcgCGo2AgwgACAFIAZqNgIIIAAgAyAEajYCBCABKAIEIQMgASgCLCEFIAEoAgghBiABKAIwIQcgASgCDCEIIAEoAjQhCSABKAIQIQogASgCOCELIAEoAhQhDCABKAI8IQ0gASgCGCEPIA4oAgAhDiABKAIcIQQgASgCRCEQIAEoAiAhESABKAJIIRIgASgCACETIAEoAighFCAAIAEoAkwgASgCJGs2AkwgACASIBFrNgJIIAAgECAEazYCRCAAQUBrIgQgDiAPazYCACAAIA0gDGs2AjwgACALIAprNgI4IAAgCSAIazYCNCAAIAcgBms2AjAgACAFIANrNgIsIAAgFCATazYCKCAAQdAAaiAAIAJBKGoQBiAAQShqIgMgAyACEAYgAEH4AGogAkH4AGogAUH4AGoQBiAAIAFB0ABqIAJB0ABqEAYgACgCBCEUIAAoAgghFSAAKAIMIRYgACgCECEXIAAoAhQhGCAAKAIYIRkgACgCHCEaIAAoAiAhGyAAKAIkIRwgACgCLCEBIAAoAlQhAiAAKAIwIQMgACgCWCEFIAAoAjQhBiAAKAJcIQcgACgCOCEIIAAoAmAhCSAAKAI8IQogACgCZCELIAQoAgAhDCAAKAJoIQ0gACgCRCEOIAAoAmwhDyAAKAJIIRAgACgCcCERIAAoAgAhHSAAKAIoIRIgACgCUCETIAAgACgCTCIeIAAoAnQiH2o2AkwgACAQIBFqNgJIIAAgDiAPajYCRCAEIAwgDWo2AgAgACAKIAtqNgI8IAAgCCAJajYCOCAAIAYgB2o2AjQgACADIAVqNgIwIAAgASACajYCLCAAIBIgE2o2AiggACAfIB5rNgIkIAAgESAQazYCICAAIA8gDms2AhwgACANIAxrNgIYIAAgCyAKazYCFCAAIAkgCGs2AhAgACAHIAZrNgIMIAAgBSADazYCCCAAIAIgAWs2AgQgACATIBJrNgIAIAAgACgCnAEiASAcQQF0IgJqNgKcASAAIAAoApgBIgQgG0EBdCIDajYCmAEgACAAKAKUASIFIBpBAXQiBmo2ApQBIAAgACgCkAEiByAZQQF0IghqNgKQASAAIAAoAowBIgkgGEEBdCIKajYCjAEgACAAKAKIASILIBdBAXQiDGo2AogBIAAgACgChAEiDSAWQQF0Ig5qNgKEASAAIAAoAoABIg8gFUEBdCIQajYCgAEgACAAKAJ8IhEgFEEBdCISajYCfCAAIAAoAngiEyAdQQF0IhRqNgJ4IAAgAyAEazYCcCAAIAYgBWs2AmwgACAIIAdrNgJoIAAgCiAJazYCZCAAIAwgC2s2AmAgACAOIA1rNgJcIAAgECAPazYCWCAAIBIgEWs2AlQgACAUIBNrNgJQIAAgAiABazYCdAutDgEXfyMAQcACayIDJAAgAEEoaiIJIAEQYCAAQgA3AlQgAEEBNgJQIABCADcCXCAAQgA3AmQgAEIANwJsIABBADYCdCADQfABaiIIIAkQBSADQcABaiIGIAhBsAoQBkF/IQogAyADKALwAUEBayILNgLwASADIAMoAsABQQFqNgLAASADKAL0ASEMIAMoAvgBIQ0gAygC/AEhDiADKAKAAiEPIAMoAoQCIRAgAygCiAIhESADKAKMAiESIAMoApACIRMgAygClAIhFCADQZABaiIHIAYQBSAHIAcgBhAGIAAgBxAFIAAgACAGEAYgACAAIAgQBiMAQZABayIEJAAgBEHgAGoiBSAAEAUgBEEwaiICIAUQBSACIAIQBSACIAAgAhAGIAUgBSACEAYgBSAFEAUgBSACIAUQBiACIAUQBSACIAIQBSACIAIQBSACIAIQBSACIAIQBSAFIAIgBRAGIAIgBRAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAiAFEAYgBCACEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgBCAEEAUgAiAEIAIQBiACIAIQBSACIAIQBSACIAIQBSACIAIQBSACIAIQBSACIAIQBSACIAIQBSACIAIQBSACIAIQBSACIAIQBSAFIAIgBRAGIAIgBRAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAhAFIAIgAiAFEAYgBCACEAVBASECA0AgBCAEEAUgAkEBaiICQeQARw0ACyAEQTBqIgIgBCACEAYgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgAiACEAUgBEHgAGoiBSACIAUQBiAFIAUQBSAFIAUQBSAAIAUgABAGIARBkAFqJAAgACAAIAcQBiAAIAAgCBAGIANB4ABqIgIgABAFIAIgAiAGEAYgAyADKAKEASICIBRrNgJUIAMgAygCgAEiBCATazYCUCADIAMoAnwiBSASazYCTCADIAMoAngiBiARazYCSCADIAMoAnQiByAQazYCRCADIAMoAnAiCCAPazYCQCADIAMoAmwiFSAOazYCPCADIAMoAmgiFiANazYCOCADIAMoAmQiFyAMazYCNCADIAMoAmAiGCALazYCMCADIANBMGoQFgJAIANBIBAlRQRAIAMgAiAUajYCJCADIAQgE2o2AiAgAyAFIBJqNgIcIAMgBiARajYCGCADIAcgEGo2AhQgAyAIIA9qNgIQIAMgDiAVajYCDCADIA0gFmo2AgggAyAMIBdqNgIEIAMgCyAYajYCACADQaACaiICIAMQFiACQSAQJUUNASAAIABB4AoQBgsgA0GgAmogABAWIAMtAKACQQFxIAEtAB9BB3ZGBEAgAEEAIAAoAgBrNgIAIABBACAAKAIkazYCJCAAQQAgACgCIGs2AiAgAEEAIAAoAhxrNgIcIABBACAAKAIYazYCGCAAQQAgACgCFGs2AhQgAEEAIAAoAhBrNgIQIABBACAAKAIMazYCDCAAQQAgACgCCGs2AgggAEEAIAAoAgRrNgIECyAAQfgAaiAAIAkQBkEAIQoLIANBwAJqJAAgCgv0BAEZfiABMQAfIQIgATEAHiEGIAExAB0hDiABMQAGIQcgATEABSEIIAExAAQhAyABMQAJIQ8gATEACCEQIAExAAchESABMQAMIQkgATEACyEKIAExAAohCyABMQAPIQwgATEADiESIAExAA0hEyABMQAcIQQgATEAGyEUIAExABohFSABMQAZIQUgATEAGCEWIAExABchFyABNQAAIRggACABMQAVQg+GIAExABRCB4aEIAExABZCF4aEIAE1ABAiGUKAgIAIfCIaQhmIfCINIA1CgICAEHwiDUKAgIDgD4N9PgIYIAAgFkINhiAXQgWGhCAFQhWGhCIFIA1CGoh8IAVCgICACHwiBUKAgIDwA4N9PgIcIAAgFEIMhiAVQgSGhCAEQhSGhCAFQhmIfCIEIARCgICAEHwiBEKAgIDgD4N9PgIgIAAgGSAaQoCAgPAPg30gEkIKhiATQgKGhCAMQhKGhCAKQguGIAtCA4aEIAlCE4aEIglCgICACHwiCkIZiHwiC0KAgIAQfCIMQhqIfD4CFCAAIAsgDEKAgIDgD4N9PgIQIAAgEEINhiARQgWGhCAPQhWGhCAIQg6GIANCBoaEIAdCFoaEIgdCgICACHwiCEIZiHwiAyADQoCAgBB8IgNCgICA4A+DfT4CCCAAIAJCEoZCgIDwD4MgBkIKhiAOQgKGhIQiAiAEQhqIfCACQoCAgAh8IgJCgICAEIN9PgIkIAAgA0IaiCAJfCAKQoCAgPAAg30+AgwgACAHIAhCgICA8AeDfSAYIAJCGYhCE358IgJCgICAEHwiBkIaiHw+AgQgACACIAZCgICA4A+DfT4CAAstAQF+IAKtIAOtQiCGhCIGQhBaBH8gACABQRBqIAEgBkIQfSAEIAUQNQVBfwsLGAAgACABIAIgA60gBK1CIIaEIAUgBhA1CxgAIAAgASACIAOtIAStQiCGhCAFIAYQKQtKAQJ/IwBBIGsiBiQAQX8hBwJAIAJCEFQNACAGIAQgBRAmDQAgACABQRBqIAEgAkIQfSADIAYQNSEHIAZBIBAICyAGQSBqJAAgBwtPAQJ/IwBBIGsiBiQAIAJC8P///w9UBEBBfyEHIAYgBCAFECZFBEAgAEEQaiAAIAEgAiADIAYQKSEHIAZBIBAICyAGQSBqJAAgBw8LEAsAC6ACAQN/IwBB4AJrIggkACAIQSBqIgpCwAAgBiAHEBwgCEHgAGoiCSAKQYyTAigCABEBABogCkHAABAIIAkgBCAFQZCTAigCABEAABogCUHgkgJCACAFfUIPg0GQkwIoAgARAAAaIAkgASACQZCTAigCABEAABogCUHgkgJCACACfUIPg0GQkwIoAgARAAAaIAggBTcDGCAJIAhBGGoiBEIIQZCTAigCABEAABogCCACNwMYIAkgBEIIQZCTAigCABEAABogCSAIQZSTAigCABEBABogCUGAAhAIIAggAxAiIQQgCEEQEAgCQCAARQ0AIAQEQCAAQQAgAqcQCRpBfyEEDAELIAAgASACIAZBASAHECFBACEECyAIQeACaiQAIAQL9QEBA38jAEHgAmsiCCQAIAhBIGoiCkLAACAGIAdBwJsCKAIAEQ4AGiAIQeAAaiIJIApBjJMCKAIAEQEAGiAKQcAAEAggCSAEIAVBkJMCKAIAEQAAGiAIIAU3AxggCSAIQRhqIgRCCEGQkwIoAgARAAAaIAkgASACQZCTAigCABEAABogCCACNwMYIAkgBEIIQZCTAigCABEAABogCSAIQZSTAigCABEBABogCUGAAhAIIAggAxAiIQQgCEEQEAgCQCAARQ0AIAQEQCAAQQAgAqcQCRpBfyEEDAELIAAgASACIAYgBxBNQQAhBAsgCEHgAmokACAEC/0BAQN/IwBB0AJrIgokACAKQRBqIgtCwAAgByAIEBwgCkHQAGoiCSALQYyTAigCABEBABogC0HAABAIIAkgBSAGQZCTAigCABEAABogCUHgkgJCACAGfUIPg0GQkwIoAgARAAAaIAAgAyAEIAdBASAIECEgCSAAIARBkJMCKAIAEQAAGiAJQeCSAkIAIAR9Qg+DQZCTAigCABEAABogCiAGNwMIIAkgCkEIaiIAQghBkJMCKAIAEQAAGiAKIAQ3AwggCSAAQghBkJMCKAIAEQAAGiAJIAFBlJMCKAIAEQEAGiAJQYACEAggAgRAIAJCEDcDAAsgCkHQAmokAEEAC9IBAQN/IwBB0AJrIgkkACAJQRBqIgtCwAAgByAIQcCbAigCABEOABogCUHQAGoiCiALQYyTAigCABEBABogC0HAABAIIAogBSAGQZCTAigCABEAABogCSAGNwMIIAogCUEIaiIFQghBkJMCKAIAEQAAGiAAIAMgBCAHIAgQTSAKIAAgBEGQkwIoAgARAAAaIAkgBDcDCCAKIAVCCEGQkwIoAgARAAAaIAogAUGUkwIoAgARAQAaIApBgAIQCCACBEAgAkIQNwMACyAJQdACaiQAQQAL1QIBAn8jAEGQA2siCCQAIAhBADYCBCAIQRBqIgkgBiAHEDsgCCAGKQAQNwIIIAhB0ABqIgdCwAAgCEEEaiAJEBwgCEGQAWoiBiAHQYyTAigCABEBABogB0HAABAIIAYgBCAFQZCTAigCABEAABogBkGgkgJCACAFfUIPg0GQkwIoAgARAAAaIAYgASACQZCTAigCABEAABogBkGgkgJCACACfUIPg0GQkwIoAgARAAAaIAggBTcDSCAGIAhByABqIgRCCEGQkwIoAgARAAAaIAggAjcDSCAGIARCCEGQkwIoAgARAAAaIAYgCEEwaiIEQZSTAigCABEBABogBkGAAhAIIAQgAxAiIQYgBEEQEAgCQCAARQ0AIAYEQCAAQQAgAqcQCRpBfyEGDAELIAAgASACIAhBBGogCEEQahBMQQAhBgsgCEEQakEgEAggCEGQA2okACAGC6cCAQN/IwBBgANrIgkkACAJQQA2AgQgCUEQaiIKIAcgCBA7IAkgBykAEDcCCCAJQUBrIghCwAAgCUEEaiILIAoQHCAJQYABaiIHIAhBjJMCKAIAEQEAGiAIQcAAEAggByAFIAZBkJMCKAIAEQAAGiAHQaCSAkIAIAZ9Qg+DQZCTAigCABEAABogACADIAQgCyAKEEwgByAAIARBkJMCKAIAEQAAGiAHQaCSAkIAIAR9Qg+DQZCTAigCABEAABogCSAGNwM4IAcgCUE4aiIAQghBkJMCKAIAEQAAGiAJIAQ3AzggByAAQghBkJMCKAIAEQAAGiAHIAFBlJMCKAIAEQEAGiAHQYACEAggAgRAIAJCEDcDAAsgCUEQakEgEAggCUGAA2okAEEAC8sFAgV/An5BfyEHAkAgAUHBAGtBQEkNACAFQcAASw0AAn8gAUH/AXEhByAFQf8BcSEFIwAiASEJIAFBgARrQUBxIgEkAAJAIAJFIANCAFJxDQAgAEUNACAHQcEAa0H/AXFBvwFNDQAgBEUiBkEAIAUbDQAgBUHBAE8NAAJ/IAUEQCAGDQIgAUFAa0EAQaUCEAkaIAFC+cL4m5Gjs/DbADcDOCABQuv6htq/tfbBHzcDMCABQp/Y+dnCkdqCm383AyggAULRhZrv+s+Uh9EANwMgIAFC8e30+KWn/aelfzcDGCABQqvw0/Sv7ry3PDcDECABQrvOqqbY0Ouzu383AwggASAHrSAFrUIIhoRCiJL3lf/M+YTqAIU3AwAgAUGAA2oiBiAFakEAQYABIAVrEAkaIAYgBCAFEAoaIAFB4ABqIAZBgAEQChogAUGAATYC4AIgBkGAARAIQYABDAELIAFBQGtBAEGlAhAJGiABQvnC+JuRo7Pw2wA3AzggAULr+obav7X2wR83AzAgAUKf2PnZwpHagpt/NwMoIAFC0YWa7/rPlIfRADcDICABQvHt9Pilp/2npX83AxggAUKr8NP0r+68tzw3AxAgAUK7zqqm2NDrs7t/NwMIIAEgB61CiJL3lf/M+YTqAIU3AwBBAAshBAJAIANQDQAgAUHgAWohCiABQeAAaiEFA0AgBCAFaiEIQYACIARrIgatIgsgA1oEQCAIIAIgA6ciAhAKGiABIAEoAuACIAJqNgLgAgwCCyAIIAIgBhAKGiABIAEoAuACIAZqNgLgAiABIAEpA0AiDEKAAXw3A0AgASABKQNIIAxC/35WrXw3A0ggASAFEDwgBSAKQYABEAoaIAEgASgC4AJBgAFrIgQ2AuACIAIgBmohAiADIAt9IgNCAFINAAsLIAEgACAHEEoaIAkkAEEADAELEAsACyEHCyAHCwUAQdABCwQAQQILBABBAQsLACAAIAEgAq0QEgsKACAAIAEgAhAfC9oBAQN/IwBBEGsiBSQAAkACQCADRQRAQX8hAQwBCwJ/IAMgA0EBayIGcUUEQCAGIAJBf3MiB3EMAQsgAkF/cyEHIAYgAiADcGsLIgYgB08NASAEIAIgBmoiAk0EQEF/IQEMAQsgAARAIAAgAkEBajYCAAsgASACaiEAQQAhASAFQQA6AA9BACECA0AgACACayIEIAQtAAAgBS0AD3EgAiAGc0EBa0EYdiIEQYABcXI6AAAgBSAFLQAPIARyOgAPIAJBAWoiAiADRw0ACwsgBUEQaiQAIAEPCxALAAsmAQJ/AkBBmKYCKAIAIgBFDQAgACgCFCIARQ0AIAARAgAhAQsgAQsPACAAIAGtQeCIAiACEBwLTQEDfyMAQRBrIgIkACAAQQJPBEBBACAAayAAcCEBA0AgAkEAOgAPQdCbAiACQQ9qQQAQACIDIAFJDQALIAMgAHAhAQsgAkEQaiQAIAELKAECfyMAQRBrIgAkACAAQQA6AA9B0JsCIABBD2pBABAAIABBEGokAAvHAQEBfyMAQUBqIgYkACACQgBSBEAgBkKy2ojLx66ZkOsANwIIIAZC5fDBi+aNmZAzNwIAIAYgBSgAADYCECAGIAUoAAQ2AhQgBiAFKAAINgIYIAYgBSgADDYCHCAGIAUoABA2AiAgBiAFKAAUNgIkIAYgBSgAGDYCKCAFKAAcIQUgBiAENgIwIAYgBTYCLCAGIAMoAAA2AjQgBiADKAAENgI4IAYgAygACDYCPCAGIAEgACACEC0gBkHAABAICyAGQUBrJABBAAvDAQEBfyMAQUBqIgYkACACQgBSBEAgBkKy2ojLx66ZkOsANwIIIAZC5fDBi+aNmZAzNwIAIAYgBSgAADYCECAGIAUoAAQ2AhQgBiAFKAAINgIYIAYgBSgADDYCHCAGIAUoABA2AiAgBiAFKAAUNgIkIAYgBSgAGDYCKCAGIAUoABw2AiwgBiAEPgIwIAYgBEIgiD4CNCAGIAMoAAA2AjggBiADKAAENgI8IAYgASAAIAIQLSAGQcAAEAgLIAZBQGskAEEAC9ABAQF/IwBBQGoiBCQAIAFCAFIEQCAEQrLaiMvHrpmQ6wA3AgggBELl8MGL5o2ZkDM3AgAgBCADKAAANgIQIAQgAygABDYCFCAEIAMoAAg2AhggBCADKAAMNgIcIAQgAygAEDYCICAEIAMoABQ2AiQgBCADKAAYNgIoIAMoABwhAyAEQQA2AjAgBCADNgIsIAQgAigAADYCNCAEIAIoAAQ2AjggBCACKAAINgI8IAQgAEEAIAGnEAkiACAAIAEQLSAEQcAAEAgLIARBQGskAEEAC8YBAQF/IwBBQGoiBCQAIAFCAFIEQCAEQrLaiMvHrpmQ6wA3AgggBELl8MGL5o2ZkDM3AgAgBCADKAAANgIQIAQgAygABDYCFCAEIAMoAAg2AhggBCADKAAMNgIcIAQgAygAEDYCICAEIAMoABQ2AiQgBCADKAAYNgIoIAMoABwhAyAEQgA3AjAgBCADNgIsIAQgAigAADYCOCAEIAIoAAQ2AjwgBCAAQQAgAacQCSIAIAAgARAtIARBwAAQCAsgBEFAayQAQQALJABBkKYCKAIABH9BAQUQS0GApgJBEBAYQZCmAkEBNgIAQQALC78NAgp/AX4jAEGgBGsiCSQAIAggByAJQbADahBUQQAhCAJAIAZBH00EQEEAIQcMAQtBICEKA0AgBSAIaiAJQbADahBTIAoiByEIIAdBIGoiCiAGTQ0ACwsgB0EQciIIIAZNBEAgCUHAA2ohCiAJQdADaiELIAlB4ANqIQwgCUHwA2ohDSAJQYAEaiEOA0AgBSAHaiIHKAAAIRAgBygABCERIAcoAAghEiAHKAAMIQcgCSAOKQIINwOIAyAJIA4pAgA3A4ADIAkgDSkCCDcD+AIgCSANKQIANwPwAiAJIA4pAgg3A+gCIAkgDikCADcD4AIgCUGQBGoiDyAJQfACaiAJQeACahAHIA4gCSkCmAQ3AgggDiAJKQKQBDcCACAJIAwpAgg3A9gCIAkgDCkCADcD0AIgCSANKQIINwPIAiAJIA0pAgA3A8ACIA8gCUHQAmogCUHAAmoQByANIAkpApgENwIIIA0gCSkCkAQ3AgAgCSALKQIINwO4AiAJIAspAgA3A7ACIAkgDCkCCDcDqAIgCSAMKQIANwOgAiAPIAlBsAJqIAlBoAJqEAcgDCAJKQKYBDcCCCAMIAkpApAENwIAIAkgCikCCDcDmAIgCSAKKQIANwOQAiAJIAspAgg3A4gCIAkgCykCADcDgAIgDyAJQZACaiAJQYACahAHIAsgCSkCmAQ3AgggCyAJKQKQBDcCACAJIAkpA7gDNwP4ASAJIAkpA7ADNwPwASAJIAopAgg3A+gBIAkgCikCADcD4AEgDyAJQfABaiAJQeABahAHIAogCSkCmAQ3AgggCiAJKQKQBDcCACAJIAkpA4gDNwPYASAJIAkpA7gDNwPIASAJIAkpA4ADNwPQASAJIAkpA7ADNwPAASAPIAlB0AFqIAlBwAFqEAcgCSAHIAkoApwEczYCvAMgCSASIAkoApgEczYCuAMgCSARIAkoApQEczYCtAMgCSAQIAkoApAEczYCsAMgCCIHQRBqIgggBk0NAAsLIAZBD3EiCARAIAlBoANqIgogCHJBAEEQIAhrEAkaIAogBSAHaiAIEAoaIAkoAqADIQUgCSgCpAMhByAJKAKoAyEIIAkoAqwDIQogCSAJKQOIBCITNwOIAyAJIAkpA/gDNwO4ASAJIBM3A6gBIAkgCSkDgAQiEzcDgAMgCSAJKQPwAzcDsAEgCSATNwOgASAJQZAEaiILIAlBsAFqIAlBoAFqEAcgCSAJKQKYBDcDiAQgCSAJKQPoAzcDmAEgCSAJKQP4AzcDiAEgCSAJKQKQBDcDgAQgCSAJKQPgAzcDkAEgCSAJKQPwAzcDgAEgCyAJQZABaiAJQYABahAHIAkgCSkCmAQ3A/gDIAkgCSkD2AM3A3ggCSAJKQPoAzcDaCAJIAkpApAENwPwAyAJIAkpA9ADNwNwIAkgCSkD4AM3A2AgCyAJQfAAaiAJQeAAahAHIAkgCSkCmAQ3A+gDIAkgCSkDyAM3A1ggCSAJKQPYAzcDSCAJIAkpApAENwPgAyAJIAkpA8ADNwNQIAkgCSkD0AM3A0AgCyAJQdAAaiAJQUBrEAcgCSAJKQKYBDcD2AMgCSAJKQO4AzcDOCAJIAkpA8gDNwMoIAkgCSkCkAQ3A9ADIAkgCSkDsAM3AzAgCSAJKQPAAzcDICALIAlBMGogCUEgahAHIAkgCSkCmAQ3A8gDIAkgCSkDiAM3AxggCSAJKQO4AzcDCCAJIAkpApAENwPAAyAJIAkpA4ADNwMQIAkgCSkDsAM3AwAgCyAJQRBqIAkQByAJIAogCSgCnARzNgK8AyAJIAggCSgCmARzNgK4AyAJIAcgCSgClARzNgK0AyAJIAUgCSgCkARzNgKwAwsCQAJAAkACQAJAAkAgAEUEQEEQIQggAkEQSQ0EQQAhCgNAIAlBkARqIAEgCmogCUGwA2oQUCAIIgchCiAHQRBqIgggAk0NAAsMAQtBECEKIAJBEEkNAUEAIQgDQCAAIAhqIAEgCGogCUGwA2oQUCAKIgchCCAHQRBqIgogAk0NAAsLIAJBD3EiCEUNBCAADQEMAwtBACEHIAIiCEUNAwsgACAHaiABIAdqIAggCUGwA2oQTwwCC0EAIQcgAiIIRQ0BCyAJQZAEaiABIAdqIAggCUGwA2oQTwsgCUGAA2ogBCAGIAIgCUGwA2oQUUF/IQcCQAJAAkAgBEEQaw4RAAICAgICAgICAgICAgICAgECCyAJQYADaiADECIhBwwBCyAJQYADaiADEDQhBwsCQCAARQ0AIAdFDQAgAEEAIAIQCRoLIAlBoARqJAAgBwuUDAIKfwF+IwBBkARrIgkkACAIIAcgCUGQA2oQVEEAIQgCQCAGQR9NBEBBACEHDAELQSAhCgNAIAUgCGogCUGQA2oQUyAKIgchCCAHQSBqIgogBk0NAAsLIAdBEHIiCCAGTQRAIAlBoANqIQogCUGwA2ohCyAJQcADaiEMIAlB0ANqIQ0gCUHgA2ohDgNAIAUgB2oiBygAACEQIAcoAAQhESAHKAAIIRIgBygADCEHIAkgDikCCDcDiAQgCSAOKQIANwOABCAJIA0pAgg3A/gCIAkgDSkCADcD8AIgCSAOKQIINwPoAiAJIA4pAgA3A+ACIAlB8ANqIg8gCUHwAmogCUHgAmoQByAOIAkpAvgDNwIIIA4gCSkC8AM3AgAgCSAMKQIINwPYAiAJIAwpAgA3A9ACIAkgDSkCCDcDyAIgCSANKQIANwPAAiAPIAlB0AJqIAlBwAJqEAcgDSAJKQL4AzcCCCANIAkpAvADNwIAIAkgCykCCDcDuAIgCSALKQIANwOwAiAJIAwpAgg3A6gCIAkgDCkCADcDoAIgDyAJQbACaiAJQaACahAHIAwgCSkC+AM3AgggDCAJKQLwAzcCACAJIAopAgg3A5gCIAkgCikCADcDkAIgCSALKQIINwOIAiAJIAspAgA3A4ACIA8gCUGQAmogCUGAAmoQByALIAkpAvgDNwIIIAsgCSkC8AM3AgAgCSAJKQOYAzcD+AEgCSAJKQOQAzcD8AEgCSAKKQIINwPoASAJIAopAgA3A+ABIA8gCUHwAWogCUHgAWoQByAKIAkpAvgDNwIIIAogCSkC8AM3AgAgCSAJKQOIBDcD2AEgCSAJKQOYAzcDyAEgCSAJKQOABDcD0AEgCSAJKQOQAzcDwAEgDyAJQdABaiAJQcABahAHIAkgByAJKAL8A3M2ApwDIAkgEiAJKAL4A3M2ApgDIAkgESAJKAL0A3M2ApQDIAkgECAJKALwA3M2ApADIAgiB0EQaiIIIAZNDQALCyAGQQ9xIggEQCAJQYADaiIKIAhyQQBBECAIaxAJGiAKIAUgB2ogCBAKGiAJKAKAAyEFIAkoAoQDIQcgCSgCiAMhCCAJKAKMAyEKIAkgCSkD6AMiEzcDiAQgCSAJKQPYAzcDuAEgCSATNwOoASAJIAkpA+ADIhM3A4AEIAkgCSkD0AM3A7ABIAkgEzcDoAEgCUHwA2oiCyAJQbABaiAJQaABahAHIAkgCSkC+AM3A+gDIAkgCSkDyAM3A5gBIAkgCSkD2AM3A4gBIAkgCSkC8AM3A+ADIAkgCSkDwAM3A5ABIAkgCSkD0AM3A4ABIAsgCUGQAWogCUGAAWoQByAJIAkpAvgDNwPYAyAJIAkpA7gDNwN4IAkgCSkDyAM3A2ggCSAJKQLwAzcD0AMgCSAJKQOwAzcDcCAJIAkpA8ADNwNgIAsgCUHwAGogCUHgAGoQByAJIAkpAvgDNwPIAyAJIAkpA6gDNwNYIAkgCSkDuAM3A0ggCSAJKQLwAzcDwAMgCSAJKQOgAzcDUCAJIAkpA7ADNwNAIAsgCUHQAGogCUFAaxAHIAkgCSkC+AM3A7gDIAkgCSkDmAM3AzggCSAJKQOoAzcDKCAJIAkpAvADNwOwAyAJIAkpA5ADNwMwIAkgCSkDoAM3AyAgCyAJQTBqIAlBIGoQByAJIAkpAvgDNwOoAyAJIAkpA4gENwMYIAkgCSkDmAM3AwggCSAJKQLwAzcDoAMgCSAJKQOABDcDECAJIAkpA5ADNwMAIAsgCUEQaiAJEAcgCSAKIAkoAvwDczYCnAMgCSAIIAkoAvgDczYCmAMgCSAHIAkoAvQDczYClAMgCSAFIAkoAvADczYCkAMLQRAhCkEAIQcCQCAEQRBJBEBBACEIDAELA0AgACAHaiADIAdqIAlBkANqEFIgCiIIIgdBEGoiCiAETQ0ACwsgBEEPcSIFBEAgCUGAA2oiByAFckEAQRAgBWsQCRogByADIAhqIAUQChogCUGABGoiAyAHIAlBkANqEFIgACAIaiADIAUQChoLIAEgAiAGIAQgCUGQA2oQUSAJQZAEaiQAQQALgwQBA38jACIKIApB4AFrQWBxIgkkACAIIAcgCUHgAGoQXEEAIQgCQCAGQT9NBEBBACEHDAELQcAAIQoDQCAFIAhqIAlB4ABqEFsgCiIHIQggB0FAayIKIAZNDQALCwJAIAYgB0EgciIKSQRAIAchCAwBCwNAIAUgB2ogCUHgAGoQLiAKIggiB0EgaiIKIAZNDQALCyAGQR9xIgcEQCAJQUBrIgogB3JBAEEgIAdrEAkaIAogBSAIaiAHEAoaIAogCUHgAGoQLgsCQAJAAkACQAJAAkAgAEUEQEEgIQUgAkEgSQ0EQQAhCANAIAlBIGogASAIaiAJQeAAahBYIAUiByEIIAdBIGoiBSACTQ0ACwwBC0EgIQggAkEgSQ0BQQAhBQNAIAAgBWogASAFaiAJQeAAahBYIAgiByEFIAdBIGoiCCACTQ0ACwsgAkEfcSIFRQ0EIAANAQwDC0EAIQcgAiEFIAJFDQMLIAAgB2ogASAHaiAFIAlB4ABqEFcMAgtBACEHIAIhBSACRQ0BCyAJQSBqIAEgB2ogBSAJQeAAahBXCyAJIAQgBiACIAlB4ABqEFlBfyEHAkACQAJAIARBEGsOEQACAgICAgICAgICAgICAgIBAgsgCSADECIhBwwBCyAJIAMQNCEHCwJAIABFDQAgB0UNACAAQQAgAhAJGgskACAHC9QCAQN/IwAiCiAKQcABa0FgcSIJJAAgCCAHIAlBQGsQXEEAIQgCQCAGQT9NBEBBACEHDAELQcAAIQoDQCAFIAhqIAlBQGsQWyAKIgchCCAHQUBrIgogBk0NAAsLAkAgBiAHQSByIgpJBEAgByEIDAELA0AgBSAHaiAJQUBrEC4gCiIIIgdBIGoiCiAGTQ0ACwsgBkEfcSIHBEAgCUEgaiIKIAdyQQBBICAHaxAJGiAKIAUgCGogBxAKGiAKIAlBQGsQLgtBICEIQQAhBwJAIARBIEkEQEEAIQUMAQsDQCAAIAdqIAMgB2ogCUFAaxBaIAgiBSIHQSBqIgggBE0NAAsLIARBH3EiBwRAIAlBIGoiCCAHckEAQSAgB2sQCRogCCADIAVqIAcQChogCSAIIAlBQGsQWiAAIAVqIAkgBxAKGgsgASACIAYgBCAJQUBrEFkkAEEAC+YEAQV/IwBB8ABrIgYkACACQgBSBEAgBiAFKQAYNwMYIAYgBSkAEDcDECAGIAUpAAA3AwAgBiAFKQAINwMIIAYgAykAADcDYCAGIAQ8AGggBiAEQjiIPABvIAYgBEIwiDwAbiAGIARCKIg8AG0gBiAEQiCIPABsIAYgBEIYiDwAayAGIARCEIg8AGogBiAEQgiIPABpAkAgAkLAAFoEQANAQQAhBSAGQSBqIAZB4ABqIAYQLwNAIAAgBWogBkEgaiIHIAVqLQAAIAEgBWotAABzOgAAIAAgBUEBciIDaiADIAdqLQAAIAEgA2otAABzOgAAIAVBAmoiBUHAAEcNAAsgBiAGLQBoQQFqIgM6AGggBiAGLQBpIANBCHZqIgM6AGkgBiAGLQBqIANBCHZqIgM6AGogBiAGLQBrIANBCHZqIgM6AGsgBiAGLQBsIANBCHZqIgM6AGwgBiAGLQBtIANBCHZqIgM6AG0gBiAGLQBuIANBCHZqIgM6AG4gBiAGLQBvIANBCHZqOgBvIAFBQGshASAAQUBrIQAgAkJAfCICQj9WDQALIAJQDQELQQAhBSAGQSBqIAZB4ABqIAYQLyACpyIDQQFxIAJCAVIEQCADQT5xIQlBACEDA0AgACAFaiAGQSBqIgogBWotAAAgASAFai0AAHM6AAAgACAFQQFyIgdqIAcgCmotAAAgASAHai0AAHM6AAAgBUECaiEFIANBAmoiAyAJRw0ACwtFDQAgACAFaiAGQSBqIAVqLQAAIAEgBWotAABzOgAACyAGQSBqQcAAEAggBkEgEAgLIAZB8ABqJABBAAv/AwIGfwF+IwBB8ABrIgQkACABQgBSBEAgBCADKQAYNwMYIAQgAykAEDcDECAEIAMpAAA3AwAgBCADKQAINwMIIAIpAAAhCiAEQgA3A2ggBCAKNwNgAkAgAULAAFoEQANAIAAgBEHgAGogBBAvIAQgBC0AaEEBaiICOgBoIAQgBC0AaSACQQh2aiICOgBpIAQgBC0AaiACQQh2aiICOgBqIAQgBC0AayACQQh2aiICOgBrIAQgBC0AbCACQQh2aiICOgBsIAQgBC0AbSACQQh2aiICOgBtIAQgBC0AbiACQQh2aiICOgBuIAQgBC0AbyACQQh2ajoAbyAAQUBrIQAgAUJAfCIBQj9WDQALIAFQDQELQQAhAiAEQSBqIARB4ABqIAQQLyABpyIGQQNxIQdBACEDIAFCBFoEQCAGQTxxIQhBACEGA0AgACADaiAEQSBqIgkgA2otAAA6AAAgACADQQFyIgVqIAUgCWotAAA6AAAgACADQQJyIgVqIARBIGogBWotAAA6AAAgACADQQNyIgVqIARBIGogBWotAAA6AAAgA0EEaiEDIAZBBGoiBiAIRw0ACwsgB0UNAANAIAAgA2ogBEEgaiADai0AADoAACADQQFqIQMgAkEBaiICIAdHDQALCyAEQSBqQcAAEAggBEEgEAgLIARB8ABqJABBAAuGBgEUfyMAQbACayICJAAgACABLQAAOgAAIAAgAS0AAToAASAAIAEtAAI6AAIgACABLQADOgADIAAgAS0ABDoABCAAIAEtAAU6AAUgACABLQAGOgAGIAAgAS0ABzoAByAAIAEtAAg6AAggACABLQAJOgAJIAAgAS0ACjoACiAAIAEtAAs6AAsgACABLQAMOgAMIAAgAS0ADToADSAAIAEtAA46AA4gACABLQAPOgAPIAAgAS0AEDoAECAAIAEtABE6ABEgACABLQASOgASIAAgAS0AEzoAEyAAIAEtABQ6ABQgACABLQAVOgAVIAAgAS0AFjoAFiAAIAEtABc6ABcgACABLQAYOgAYIAAgAS0AGToAGSAAIAEtABo6ABogACABLQAbOgAbIAAgAS0AHDoAHCAAIAEtAB06AB0gACABLQAeOgAeIAEtAB8hASAAIAAtAABB+AFxOgAAIAAgAUE/cUHAAHI6AB8gAkEwaiAAEDEgAigCgAEhASACKAJYIQMgAigChAEhBCACKAJcIQUgAigCiAEhBiACKAJgIQcgAigCjAEhCCACKAJkIQkgAigCkAEhCiACKAJoIQsgAigClAEhDCACKAJsIQ0gAigCmAEhDiACKAJwIQ8gAigCnAEhECACKAJ0IREgAigCoAEhEiACKAJ4IRMgAiACKAJ8IhQgAigCpAEiFWo2AqQCIAIgEiATajYCoAIgAiAQIBFqNgKcAiACIA4gD2o2ApgCIAIgDCANajYClAIgAiAKIAtqNgKQAiACIAggCWo2AowCIAIgBiAHajYCiAIgAiAEIAVqNgKEAiACIAEgA2o2AoACIAIgFSAUazYC9AEgAiASIBNrNgLwASACIBAgEWs2AuwBIAIgDiAPazYC6AEgAiAMIA1rNgLkASACIAogC2s2AuABIAIgCCAJazYC3AEgAiAGIAdrNgLYASACIAQgBWs2AtQBIAIgASADazYC0AEgAkHQAWoiASABEDMgAiACQYACaiABEAYgACACEBYgAkGwAmokAEEAC+scAj5/DH4jAEHwAmsiAyQAA0AgAiAGai0AACIEIAZBgIcCaiIJLQAAcyAHciEHIAQgCS0AwAFzIAVyIQUgBCAJLQCgAXMgDHIhDCAEIAktAIABcyAIciEIIAQgCS0AYHMgDXIhDSAEIAlBQGstAABzIAtyIQsgBCAJLQAgcyAKciEKIAZBAWoiBkEfRw0AC0F/IQkgAi0AH0H/AHEiBCAKckH/AXFBAWsgBCAHckH/AXFBAWtyIAQgC3JB/wFxQQFrciAEQdcAcyANckH/AXFBAWtyIARB/wBzIgQgCHJB/wFxQQFrciAEIAxyQf8BcUEBa3IgBCAFckH/AXFBAWtyQYACcUUEQCADIAEpABg3A+gCIAMgASkAEDcD4AIgAyABKQAAIkM3A9ACIAMgASkACDcD2AIgAyBDp0H4AXE6ANACIAMgAy0A7wJBP3FBwAByOgDvAiADQaACaiACEGAgA0IANwKEAiADQgA3AowCIANBADYClAIgA0IANwPQASADQgA3A9gBIANCADcD4AEgAyADKQOwAjcDoAEgAyADKQO4AjcDqAEgAyADKQPAAjcDsAEgA0IANwL0ASADQQE2AvABIANCADcC/AEgA0IANwPAASADQgA3A8gBIAMgAykDoAI3A5ABIAMgAykDqAI3A5gBIANCADcCdCADQgA3AnwgA0EANgKEASADQgA3AmQgA0EBNgJgIANCADcCbEH+ASECQQAhBANAIAMoApQCIQkgAygCtAEhBiADKAJgIQcgAygCwAEhCiADKAKQASELIAMoAvABIQ0gAygCZCEIIAMoAsQBIQwgAygClAEhBSADKAL0ASEQIAMoAmghDiADKALIASERIAMoApgBIRIgAygC+AEhEyADKAJsIQ8gAygCzAEhFCADKAKcASEVIAMoAvwBIRcgAygCcCEYIAMoAtABIRwgAygCoAEhHSADKAKAAiEeIAMoAnQhGSADKALUASEfIAMoAqQBISAgAygChAIhISADKAJ4IRogAygC2AEhIiADKAKoASEjIAMoAogCISQgAygCfCEbIAMoAtwBISUgAygCrAEhJiADKAKMAiEnIAMoAoABIRYgAygC4AEhKCADKAKwASEpIAMoApACISwgA0EAIAQgA0HQAmoiLSACIgFBA3ZqLQAAIAJBB3F2QQFxIgRzayICIAMoAoQBIiogAygC5AEiK3NxIi4gKnMiKjYChAEgAyAGIAYgCXMgAnEiL3MiMCAqazYCVCADIBYgFiAocyACcSIxcyIGNgKAASADICkgKSAscyACcSIWcyIpIAZrNgJQIAMgGyAbICVzIAJxIjJzIhs2AnwgAyAmICYgJ3MgAnEiM3MiJiAbazYCTCADIBogGiAicyACcSI0cyIaNgJ4IAMgIyAjICRzIAJxIjVzIiMgGms2AkggAyAZIBkgH3MgAnEiNnMiGTYCdCADICAgICAhcyACcSI3cyIgIBlrNgJEIAMgGCAYIBxzIAJxIjhzIhg2AnAgAyAdIB0gHnMgAnEiOXMiHSAYazYCQCADIA8gDyAUcyACcSI6cyIPNgJsIAMgFSAVIBdzIAJxIjtzIhUgD2s2AjwgAyAOIA4gEXMgAnEiPHMiDjYCaCADIBIgEiATcyACcSI9cyISIA5rNgI4IAMgCCAIIAxzIAJxIj5zIgg2AmQgAyAFIAUgEHMgAnEiP3MiBSAIazYCNCADIAcgByAKcyACcSJAcyIHNgJgIAMgCyALIA1zIAJxIgJzIgsgB2s2AjAgAyAJIC9zIgkgKyAucyIrazYCJCADIBYgLHMiFiAoIDFzIihrNgIgIAMgJyAzcyInICUgMnMiJWs2AhwgAyAkIDVzIiQgIiA0cyIiazYCGCADICEgN3MiISAfIDZzIh9rNgIUIAMgHiA5cyIeIBwgOHMiHGs2AhAgAyAXIDtzIhcgFCA6cyIUazYCDCADIBMgPXMiEyARIDxzIhFrNgIIIAMgECA/cyIQIAwgPnMiDGs2AgQgAyACIA1zIgIgCiBAcyIKazYCACADIAkgK2o2ApQCIAMgFiAoajYCkAIgAyAlICdqNgKMAiADICIgJGo2AogCIAMgHyAhajYChAIgAyAcIB5qNgKAAiADIBEgE2o2AvgBIAMgDCAQajYC9AEgAyACIApqNgLwASADIBQgF2o2AvwBIAMgKiAwajYC5AEgAyAGIClqNgLgASADIBsgJmo2AtwBIAMgGiAjajYC2AEgAyAZICBqNgLUASADIBggHWo2AtABIAMgDyAVajYCzAEgAyAOIBJqNgLIASADIAUgCGo2AsQBIAMgByALajYCwAEgA0HgAGoiGyADQTBqIhogA0HwAWoiGRAGIANBwAFqIhYgFiADEAYgGiADEAUgAyAZEAUgAygCwAEhAiADKAJgIQkgAygCxAEhBiADKAJkIQcgAygCyAEhCiADKAJoIQsgAygCzAEhDSADKAJsIQggAygC0AEhDCADKAJwIQUgAygC1AEhECADKAJ0IQ4gAygC2AEhESADKAJ4IRIgAygC3AEhEyADKAJ8IQ8gAygC4AEhFCADKAKAASEVIAMgAygC5AEiFyADKAKEASIYajYCtAEgAyAUIBVqNgKwASADIA8gE2o2AqwBIAMgESASajYCqAEgAyAOIBBqNgKkASADIAUgDGo2AqABIAMgCCANajYCnAEgAyAKIAtqNgKYASADIAYgB2o2ApQBIAMgAiAJajYCkAEgAyAYIBdrNgLkASADIBUgFGs2AuABIAMgDyATazYC3AEgAyASIBFrNgLYASADIA4gEGs2AtQBIAMgBSAMazYC0AEgAyAIIA1rNgLMASADIAsgCms2AsgBIAMgByAGazYCxAEgAyAJIAJrNgLAASAZIAMgGhAGIAMoAjQhAiADKAIEIQUgAygCOCEJIAMoAgghECADKAJAIQYgAygCECEOIAMoAjwhByADKAIMIREgAygCSCEKIAMoAhghEiADKAJEIQsgAygCFCETIAMoAlAhDSADKAIgIQ8gAygCTCEIIAMoAhwhFCADKAJUIQwgAygCJCEVIAMgAygCACADKAIwIhdrIhg2AgAgAyAVIAxrIhU2AiQgAyAUIAhrIhQ2AhwgAyAPIA1rIg82AiAgAyATIAtrIhM2AhQgAyASIAprIhI2AhggAyARIAdrIhE2AgwgAyAOIAZrIg42AhAgAyAQIAlrIhA2AgggAyAFIAJrIgU2AgQgFiAWEAUgAyAVrELCtgd+IkNCgICACHwiR0IZh0ITfiAYrELCtgd+fCJBIEFCgICAEHwiQUKAgIDgD4N9pyIVNgJgIAMgBaxCwrYHfiJCIEJCgICACHwiQkKAgIDwD4N9IEFCGoh8pyIFNgJkIAMgEKxCwrYHfiBCQhmHfCJBIEFCgICAEHwiQUKAgIDgD4N9pyIQNgJoIAMgDqxCwrYHfiARrELCtgd+IkJCgICACHwiSEIZh3wiRCBEQoCAgBB8IkRCgICA4A+DfaciDjYCcCADIBKsQsK2B34gE6xCwrYHfiJJQoCAgAh8IkpCGYd8IkUgRUKAgIAQfCJFQoCAgOAPg32nIhE2AnggAyAPrELCtgd+IBSsQsK2B34iS0KAgIAIfCJMQhmHfCJGIEZCgICAEHwiRkKAgIDgD4N9pyISNgKAASADIEFCGoggQnwgSEKAgIDwD4N9pyITNgJsIAMgREIaiCBJfCBKQoCAgPAPg32nIg82AnQgAyBFQhqIIEt8IExCgICA8A+DfaciFDYCfCADIEZCGoggQ3wgR0KAgIDwD4N9pyIYNgKEASADQZABaiIcIBwQBSADIAwgGGo2AlQgAyANIBJqNgJQIAMgCCAUajYCTCADIAogEWo2AkggAyALIA9qNgJEIAMgBiAOajYCQCADIAcgE2o2AjwgAyAJIBBqNgI4IAMgAiAFajYCNCADIBUgF2o2AjAgAUEBayECIBsgA0GgAmogFhAGIBYgAyAaEAYgAQ0ACyADKAKQASEQIAMoAvABIQIgAygClAEhDiADKAL0ASEGIAMoApgBIREgAygC+AEhByADKAKcASESIAMoAvwBIQogAygCoAEhEyADKAKAAiELIAMoAqQBIQ8gAygChAIhDSADKAKoASEUIAMoAogCIQggAygCrAEhFSADKAKMAiEMIAMoArABIRcgAygCkAIhBSADQQAgBGsiASADKAKUAiIEIAMoArQBc3EgBHM2ApQCIAMgBSAFIBdzIAFxczYCkAIgAyAMIAwgFXMgAXFzNgKMAiADIAggCCAUcyABcXM2AogCIAMgDSANIA9zIAFxczYChAIgAyALIAsgE3MgAXFzNgKAAiADIAogCiAScyABcXM2AvwBIAMgByAHIBFzIAFxczYC+AEgAyAGIAYgDnMgAXFzNgL0ASADIAIgAiAQcyABcXM2AvABIAMoAsABIQIgAygCYCEFIAMoAsQBIQQgAygCZCEQIAMoAsgBIQYgAygCaCEOIAMoAswBIQcgAygCbCERIAMoAtABIQogAygCcCESIAMoAtQBIQsgAygCdCETIAMoAtgBIQ0gAygCeCEPIAMoAtwBIQggAygCfCEUIAMoAuABIQwgAygCgAEhFSADIAMoAuQBIhcgAygChAFzIAFxIBdzNgLkASADIAwgDCAVcyABcXM2AuABIAMgCCAIIBRzIAFxczYC3AEgAyANIA0gD3MgAXFzNgLYASADIAsgCyATcyABcXM2AtQBIAMgCiAKIBJzIAFxczYC0AEgAyAHIAcgEXMgAXFzNgLMASADIAYgBiAOcyABcXM2AsgBIAMgBCAEIBBzIAFxczYCxAEgAyACIAIgBXMgAXFzNgLAASAWIBYQMyAZIBkgFhAGIAAgGRAWIC1BIBAIQQAhCQsgA0HwAmokACAJC+4LAQd/AkAgAEUNACAAQQhrIgMgAEEEaygCACIBQXhxIgBqIQUCQCABQQFxDQAgAUECcUUNASADIAMoAgAiAWsiA0GUogIoAgBJDQEgACABaiEAAkACQAJAQZiiAigCACADRwRAIAMoAgwhAiABQf8BTQRAIAIgAygCCCIERw0CQYSiAkGEogIoAgBBfiABQQN2d3E2AgAMBQsgAygCGCEGIAIgA0cEQCADKAIIIgEgAjYCDCACIAE2AggMBAsgAygCFCIBBH8gA0EUagUgAygCECIBRQ0DIANBEGoLIQQDQCAEIQcgASICQRRqIQQgAigCFCIBDQAgAkEQaiEEIAIoAhAiAQ0ACyAHQQA2AgAMAwsgBSgCBCIBQQNxQQNHDQNBjKICIAA2AgAgBSABQX5xNgIEIAMgAEEBcjYCBCAFIAA2AgAPCyAEIAI2AgwgAiAENgIIDAILQQAhAgsgBkUNAAJAIAMoAhwiAUECdEG0pAJqIgQoAgAgA0YEQCAEIAI2AgAgAg0BQYiiAkGIogIoAgBBfiABd3E2AgAMAgsgBkEQQRQgBigCECADRhtqIAI2AgAgAkUNAQsgAiAGNgIYIAMoAhAiAQRAIAIgATYCECABIAI2AhgLIAMoAhQiAUUNACACIAE2AhQgASACNgIYCyADIAVPDQAgBSgCBCIBQQFxRQ0AAkACQAJAAkAgAUECcUUEQEGcogIoAgAgBUYEQEGcogIgAzYCAEGQogJBkKICKAIAIABqIgA2AgAgAyAAQQFyNgIEIANBmKICKAIARw0GQYyiAkEANgIAQZiiAkEANgIADwtBmKICKAIAIAVGBEBBmKICIAM2AgBBjKICQYyiAigCACAAaiIANgIAIAMgAEEBcjYCBCAAIANqIAA2AgAPCyABQXhxIABqIQAgBSgCDCECIAFB/wFNBEAgBSgCCCIEIAJGBEBBhKICQYSiAigCAEF+IAFBA3Z3cTYCAAwFCyAEIAI2AgwgAiAENgIIDAQLIAUoAhghBiACIAVHBEAgBSgCCCIBIAI2AgwgAiABNgIIDAMLIAUoAhQiAQR/IAVBFGoFIAUoAhAiAUUNAiAFQRBqCyEEA0AgBCEHIAEiAkEUaiEEIAIoAhQiAQ0AIAJBEGohBCACKAIQIgENAAsgB0EANgIADAILIAUgAUF+cTYCBCADIABBAXI2AgQgACADaiAANgIADAMLQQAhAgsgBkUNAAJAIAUoAhwiAUECdEG0pAJqIgQoAgAgBUYEQCAEIAI2AgAgAg0BQYiiAkGIogIoAgBBfiABd3E2AgAMAgsgBkEQQRQgBigCECAFRhtqIAI2AgAgAkUNAQsgAiAGNgIYIAUoAhAiAQRAIAIgATYCECABIAI2AhgLIAUoAhQiAUUNACACIAE2AhQgASACNgIYCyADIABBAXI2AgQgACADaiAANgIAIANBmKICKAIARw0AQYyiAiAANgIADwsgAEH/AU0EQCAAQXhxQayiAmohAQJ/QYSiAigCACIEQQEgAEEDdnQiAHFFBEBBhKICIAAgBHI2AgAgAQwBCyABKAIICyEAIAEgAzYCCCAAIAM2AgwgAyABNgIMIAMgADYCCA8LQR8hAiAAQf///wdNBEAgAEEmIABBCHZnIgFrdkEBcSABQQF0a0E+aiECCyADIAI2AhwgA0IANwIQIAJBAnRBtKQCaiEHAn8CQAJ/QYiiAigCACIBQQEgAnQiBHFFBEBBiKICIAEgBHI2AgBBGCECIAchBEEIDAELIABBGSACQQF2a0EAIAJBH0cbdCECIAcoAgAhBANAIAQiASgCBEF4cSAARg0CIAJBHXYhBCACQQF0IQIgASAEQQRxakEQaiIHKAIAIgQNAAtBGCECIAEhBEEICyEAIAMiAQwBCyABKAIIIgQgAzYCDEEIIQIgAUEIaiEHQRghAEEACyEFIAcgAzYCACACIANqIAQ2AgAgAyABNgIMIAAgA2ogBTYCAEGkogJBpKICKAIAQQFrIgBBfyAAGzYCAAsLwCgBC38jAEEQayIKJAACQAJAAkACQAJAAkACQAJAAkACQCAAQfQBTQRAQYSiAigCACIEQRAgAEELakH4A3EgAEELSRsiBkEDdiIAdiIBQQNxBEACQCABQX9zQQFxIABqIgJBA3QiAUGsogJqIgAgAUG0ogJqKAIAIgEoAggiBUYEQEGEogIgBEF+IAJ3cTYCAAwBCyAFIAA2AgwgACAFNgIICyABQQhqIQAgASACQQN0IgJBA3I2AgQgASACaiIBIAEoAgRBAXI2AgQMCwsgBkGMogIoAgAiCE0NASABBEACQEECIAB0IgJBACACa3IgASAAdHFoIgFBA3QiAEGsogJqIgIgAEG0ogJqKAIAIgAoAggiBUYEQEGEogIgBEF+IAF3cSIENgIADAELIAUgAjYCDCACIAU2AggLIAAgBkEDcjYCBCAAIAZqIgcgAUEDdCIBIAZrIgVBAXI2AgQgACABaiAFNgIAIAgEQCAIQXhxQayiAmohAUGYogIoAgAhAgJ/IARBASAIQQN2dCIDcUUEQEGEogIgAyAEcjYCACABDAELIAEoAggLIQMgASACNgIIIAMgAjYCDCACIAE2AgwgAiADNgIICyAAQQhqIQBBmKICIAc2AgBBjKICIAU2AgAMCwtBiKICKAIAIgtFDQEgC2hBAnRBtKQCaigCACICKAIEQXhxIAZrIQMgAiEBA0ACQCABKAIQIgBFBEAgASgCFCIARQ0BCyAAKAIEQXhxIAZrIgEgAyABIANJIgEbIQMgACACIAEbIQIgACEBDAELCyACKAIYIQkgAiACKAIMIgBHBEAgAigCCCIBIAA2AgwgACABNgIIDAoLIAIoAhQiAQR/IAJBFGoFIAIoAhAiAUUNAyACQRBqCyEFA0AgBSEHIAEiAEEUaiEFIAAoAhQiAQ0AIABBEGohBSAAKAIQIgENAAsgB0EANgIADAkLQX8hBiAAQb9/Sw0AIABBC2oiAUF4cSEGQYiiAigCACIHRQ0AQR8hCEEAIAZrIQMgAEH0//8HTQRAIAZBJiABQQh2ZyIAa3ZBAXEgAEEBdGtBPmohCAsCQAJAAkAgCEECdEG0pAJqKAIAIgFFBEBBACEADAELQQAhACAGQRkgCEEBdmtBACAIQR9HG3QhAgNAAkAgASgCBEF4cSAGayIEIANPDQAgASEFIAQiAw0AQQAhAyABIQAMAwsgACABKAIUIgQgBCABIAJBHXZBBHFqKAIQIgFGGyAAIAQbIQAgAkEBdCECIAENAAsLIAAgBXJFBEBBACEFQQIgCHQiAEEAIABrciAHcSIARQ0DIABoQQJ0QbSkAmooAgAhAAsgAEUNAQsDQCAAKAIEQXhxIAZrIgIgA0khASACIAMgARshAyAAIAUgARshBSAAKAIQIgEEfyABBSAAKAIUCyIADQALCyAFRQ0AIANBjKICKAIAIAZrTw0AIAUoAhghCCAFIAUoAgwiAEcEQCAFKAIIIgEgADYCDCAAIAE2AggMCAsgBSgCFCIBBH8gBUEUagUgBSgCECIBRQ0DIAVBEGoLIQIDQCACIQQgASIAQRRqIQIgACgCFCIBDQAgAEEQaiECIAAoAhAiAQ0ACyAEQQA2AgAMBwsgBkGMogIoAgAiBU0EQEGYogIoAgAhAAJAIAUgBmsiAUEQTwRAIAAgBmoiAiABQQFyNgIEIAAgBWogATYCACAAIAZBA3I2AgQMAQsgACAFQQNyNgIEIAAgBWoiASABKAIEQQFyNgIEQQAhAkEAIQELQYyiAiABNgIAQZiiAiACNgIAIABBCGohAAwJCyAGQZCiAigCACICSQRAQZCiAiACIAZrIgE2AgBBnKICQZyiAigCACIAIAZqIgI2AgAgAiABQQFyNgIEIAAgBkEDcjYCBCAAQQhqIQAMCQtBACEAIAZBL2oiAwJ/QdylAigCAARAQeSlAigCAAwBC0HopQJCfzcCAEHgpQJCgKCAgICABDcCAEHcpQIgCkEMakFwcUHYqtWqBXM2AgBB8KUCQQA2AgBBwKUCQQA2AgBBgCALIgFqIgRBACABayIHcSIBIAZNDQhBvKUCKAIAIgUEQEG0pQIoAgAiCCABaiIJIAhNDQkgBSAJSQ0JCwJAQcClAi0AAEEEcUUEQAJAAkACQAJAQZyiAigCACIFBEBBxKUCIQADQCAFIAAoAgAiCE8EQCAIIAAoAgRqIAVLDQMLIAAoAggiAA0ACwtBABAkIgJBf0YNAyABIQRB4KUCKAIAIgBBAWsiBSACcQRAIAEgAmsgAiAFakEAIABrcWohBAsgBCAGTQ0DQbylAigCACIABEBBtKUCKAIAIgUgBGoiByAFTQ0EIAAgB0kNBAsgBBAkIgAgAkcNAQwFCyAEIAJrIAdxIgQQJCICIAAoAgAgACgCBGpGDQEgAiEACyAAQX9GDQEgBkEwaiAETQRAIAAhAgwEC0HkpQIoAgAiAiADIARrakEAIAJrcSICECRBf0YNASACIARqIQQgACECDAMLIAJBf0cNAgtBwKUCQcClAigCAEEEcjYCAAsgARAkIQJBABAkIQAgAkF/Rg0FIABBf0YNBSAAIAJNDQUgACACayIEIAZBKGpNDQULQbSlAkG0pQIoAgAgBGoiADYCAEG4pQIoAgAgAEkEQEG4pQIgADYCAAsCQEGcogIoAgAiAwRAQcSlAiEAA0AgAiAAKAIAIgEgACgCBCIFakYNAiAAKAIIIgANAAsMBAtBlKICKAIAIgBBACAAIAJNG0UEQEGUogIgAjYCAAtBACEAQcilAiAENgIAQcSlAiACNgIAQaSiAkF/NgIAQaiiAkHcpQIoAgA2AgBB0KUCQQA2AgADQCAAQQN0IgFBtKICaiABQayiAmoiBTYCACABQbiiAmogBTYCACAAQQFqIgBBIEcNAAtBkKICIARBKGsiAEF4IAJrQQdxIgFrIgU2AgBBnKICIAEgAmoiATYCACABIAVBAXI2AgQgACACakEoNgIEQaCiAkHspQIoAgA2AgAMBAsgAiADTQ0CIAEgA0sNAiAAKAIMQQhxDQIgACAEIAVqNgIEQZyiAiADQXggA2tBB3EiAGoiATYCAEGQogJBkKICKAIAIARqIgIgAGsiADYCACABIABBAXI2AgQgAiADakEoNgIEQaCiAkHspQIoAgA2AgAMAwtBACEADAYLQQAhAAwEC0GUogIoAgAgAksEQEGUogIgAjYCAAsgAiAEaiEFQcSlAiEAAkADQCAFIAAoAgAiAUcEQCAAKAIIIgANAQwCCwsgAC0ADEEIcUUNAwtBxKUCIQADQAJAIAMgACgCACIBTwRAIAEgACgCBGoiBSADSw0BCyAAKAIIIQAMAQsLQZCiAiAEQShrIgBBeCACa0EHcSIBayIHNgIAQZyiAiABIAJqIgE2AgAgASAHQQFyNgIEIAAgAmpBKDYCBEGgogJB7KUCKAIANgIAIAMgBUEnIAVrQQdxakEvayIAIAAgA0EQakkbIgFBGzYCBCABQcylAikCADcCECABQcSlAikCADcCCEHMpQIgAUEIajYCAEHIpQIgBDYCAEHEpQIgAjYCAEHQpQJBADYCACABQRhqIQADQCAAQQc2AgQgAEEIaiAAQQRqIQAgBUkNAAsgASADRg0AIAEgASgCBEF+cTYCBCADIAEgA2siAkEBcjYCBCABIAI2AgACfyACQf8BTQRAIAJBeHFBrKICaiEAAn9BhKICKAIAIgFBASACQQN2dCICcUUEQEGEogIgASACcjYCACAADAELIAAoAggLIQEgACADNgIIIAEgAzYCDEEMIQJBCAwBC0EfIQAgAkH///8HTQRAIAJBJiACQQh2ZyIAa3ZBAXEgAEEBdGtBPmohAAsgAyAANgIcIANCADcCECAAQQJ0QbSkAmohAQJAAkBBiKICKAIAIgVBASAAdCIEcUUEQEGIogIgBCAFcjYCACABIAM2AgAMAQsgAkEZIABBAXZrQQAgAEEfRxt0IQAgASgCACEFA0AgBSIBKAIEQXhxIAJGDQIgAEEddiEFIABBAXQhACABIAVBBHFqIgQoAhAiBQ0ACyAEIAM2AhALIAMgATYCGEEIIQIgAyIBIQBBDAwBCyABKAIIIgAgAzYCDCABIAM2AgggAyAANgIIQQAhAEEYIQJBDAsgA2ogATYCACACIANqIAA2AgALQZCiAigCACIAIAZNDQBBkKICIAAgBmsiATYCAEGcogJBnKICKAIAIgAgBmoiAjYCACACIAFBAXI2AgQgACAGQQNyNgIEIABBCGohAAwEC0GAogJBMDYCAEEAIQAMAwsgACACNgIAIAAgACgCBCAEajYCBCACQXggAmtBB3FqIgggBkEDcjYCBCABQXggAWtBB3FqIgQgBiAIaiIDayEHAkBBnKICKAIAIARGBEBBnKICIAM2AgBBkKICQZCiAigCACAHaiIANgIAIAMgAEEBcjYCBAwBC0GYogIoAgAgBEYEQEGYogIgAzYCAEGMogJBjKICKAIAIAdqIgA2AgAgAyAAQQFyNgIEIAAgA2ogADYCAAwBCyAEKAIEIgBBA3FBAUYEQCAAQXhxIQkgBCgCDCECAkAgAEH/AU0EQCAEKAIIIgEgAkYEQEGEogJBhKICKAIAQX4gAEEDdndxNgIADAILIAEgAjYCDCACIAE2AggMAQsgBCgCGCEGAkAgAiAERwRAIAQoAggiACACNgIMIAIgADYCCAwBCwJAIAQoAhQiAAR/IARBFGoFIAQoAhAiAEUNASAEQRBqCyEBA0AgASEFIAAiAkEUaiEBIAAoAhQiAA0AIAJBEGohASACKAIQIgANAAsgBUEANgIADAELQQAhAgsgBkUNAAJAIAQoAhwiAEECdEG0pAJqIgEoAgAgBEYEQCABIAI2AgAgAg0BQYiiAkGIogIoAgBBfiAAd3E2AgAMAgsgBkEQQRQgBigCECAERhtqIAI2AgAgAkUNAQsgAiAGNgIYIAQoAhAiAARAIAIgADYCECAAIAI2AhgLIAQoAhQiAEUNACACIAA2AhQgACACNgIYCyAHIAlqIQcgBCAJaiIEKAIEIQALIAQgAEF+cTYCBCADIAdBAXI2AgQgAyAHaiAHNgIAIAdB/wFNBEAgB0F4cUGsogJqIQACf0GEogIoAgAiAUEBIAdBA3Z0IgJxRQRAQYSiAiABIAJyNgIAIAAMAQsgACgCCAshASAAIAM2AgggASADNgIMIAMgADYCDCADIAE2AggMAQtBHyECIAdB////B00EQCAHQSYgB0EIdmciAGt2QQFxIABBAXRrQT5qIQILIAMgAjYCHCADQgA3AhAgAkECdEG0pAJqIQACQAJAQYiiAigCACIBQQEgAnQiBXFFBEBBiKICIAEgBXI2AgAgACADNgIADAELIAdBGSACQQF2a0EAIAJBH0cbdCECIAAoAgAhAQNAIAEiACgCBEF4cSAHRg0CIAJBHXYhASACQQF0IQIgACABQQRxaiIFKAIQIgENAAsgBSADNgIQCyADIAA2AhggAyADNgIMIAMgAzYCCAwBCyAAKAIIIgEgAzYCDCAAIAM2AgggA0EANgIYIAMgADYCDCADIAE2AggLIAhBCGohAAwCCwJAIAhFDQACQCAFKAIcIgFBAnRBtKQCaiICKAIAIAVGBEAgAiAANgIAIAANAUGIogIgB0F+IAF3cSIHNgIADAILIAhBEEEUIAgoAhAgBUYbaiAANgIAIABFDQELIAAgCDYCGCAFKAIQIgEEQCAAIAE2AhAgASAANgIYCyAFKAIUIgFFDQAgACABNgIUIAEgADYCGAsCQCADQQ9NBEAgBSADIAZqIgBBA3I2AgQgACAFaiIAIAAoAgRBAXI2AgQMAQsgBSAGQQNyNgIEIAUgBmoiBCADQQFyNgIEIAMgBGogAzYCACADQf8BTQRAIANBeHFBrKICaiEAAn9BhKICKAIAIgFBASADQQN2dCICcUUEQEGEogIgASACcjYCACAADAELIAAoAggLIQEgACAENgIIIAEgBDYCDCAEIAA2AgwgBCABNgIIDAELQR8hACADQf///wdNBEAgA0EmIANBCHZnIgBrdkEBcSAAQQF0a0E+aiEACyAEIAA2AhwgBEIANwIQIABBAnRBtKQCaiEBAkACQCAHQQEgAHQiAnFFBEBBiKICIAIgB3I2AgAgASAENgIAIAQgATYCGAwBCyADQRkgAEEBdmtBACAAQR9HG3QhACABKAIAIQEDQCABIgIoAgRBeHEgA0YNAiAAQR12IQEgAEEBdCEAIAIgAUEEcWoiBygCECIBDQALIAcgBDYCECAEIAI2AhgLIAQgBDYCDCAEIAQ2AggMAQsgAigCCCIAIAQ2AgwgAiAENgIIIARBADYCGCAEIAI2AgwgBCAANgIICyAFQQhqIQAMAQsCQCAJRQ0AAkAgAigCHCIBQQJ0QbSkAmoiBSgCACACRgRAIAUgADYCACAADQFBiKICIAtBfiABd3E2AgAMAgsgCUEQQRQgCSgCECACRhtqIAA2AgAgAEUNAQsgACAJNgIYIAIoAhAiAQRAIAAgATYCECABIAA2AhgLIAIoAhQiAUUNACAAIAE2AhQgASAANgIYCwJAIANBD00EQCACIAMgBmoiAEEDcjYCBCAAIAJqIgAgACgCBEEBcjYCBAwBCyACIAZBA3I2AgQgAiAGaiIFIANBAXI2AgQgAyAFaiADNgIAIAgEQCAIQXhxQayiAmohAEGYogIoAgAhAQJ/QQEgCEEDdnQiByAEcUUEQEGEogIgBCAHcjYCACAADAELIAAoAggLIQQgACABNgIIIAQgATYCDCABIAA2AgwgASAENgIIC0GYogIgBTYCAEGMogIgAzYCAAsgAkEIaiEACyAKQRBqJAAgAAsKACAAIAEQQkEACwwAIAAgASACEENBAAu0AQEBfyAAIAEoAABB////H3E2AgAgACABKAADQQJ2QYP+/x9xNgIEIAAgASgABkEEdkH/gf8fcTYCCCAAIAEoAAlBBnZB///AH3E2AgwgASgADCECIABCADcCFCAAQgA3AhwgAEEANgIkIAAgAkEIdkH//z9xNgIQIAAgASgAEDYCKCAAIAEoABQ2AiwgACABKAAYNgIwIAEoABwhASAAQQA6AFAgAEIANwM4IAAgATYCNEEAC3gCAn8BfgJAIwBBEGsiBCQAIAGtIAKtQiCGhCIFQoCAgIAQVARAIAVCAFIEQCAFpyEBA0AgBEEAOgAPIAAgA2pB0JsCIARBD2pBABAAOgAAIANBAWoiAyABRw0ACwsgBEEQaiQADAELQcwJQcAIQcYBQYAIEAEACwsSACAAIAEgAq0gA61CIIaEEA0LFgAgACABIAKtIAOtQiCGhCAEQQAQRgsbACAAIAEgAiADrSAErUIghoQgBUEAEEcaQQALigEBAX4CfwJAAkACQCADrSAErUIghoQiBkLAAFQNACAGQkB8IgZCv////w9WDQAgAiACQUBrIgMgBiAFQQAQRkUNASAARQ0AIABBACAGpxAJGgtBfyECIAFFDQEgAUIANwMAQX8MAgsgAQRAIAEgBjcDAAtBACECIABFDQAgACADIAanEDYaCyACCwt8AgJ/AX4jAEEQayIGJAAgACAGQQhqIABBQGsgAiADrSAErUIghoQiCKciAhA2IAggBUEAEEcaAkAgBikDCELAAFIEQCABBEAgAUIANwMACyAAQQAgAkFAaxAJGkF/IQcMAQsgAUUNACABIAhCQH03AwALIAZBEGokACAHC+QBAQN/IwAiBUHAAWtBQHEiBCQAIAQgAygAAEH///8fcTYCQCAEIAMoAANBAnZBg/7/H3E2AkQgBCADKAAGQQR2Qf+B/x9xNgJIIAQgAygACUEGdkH//8AfcTYCTCADKAAMIQYgBEIANwJUIARCADcCXCAEQQA2AmQgBCAGQQh2Qf//P3E2AlAgBCADKAAQNgJoIAQgAygAFDYCbCAEIAMoABg2AnAgAygAHCEDIARBADoAkAEgBEIANwN4IAQgAzYCdCAEQUBrIgMgASACEEMgAyAEQTBqIgEQQiAAIAEQIiAFJAAL9gUBB34gBCkAACIFQvXKzYPXrNu38wCFIQcgBULh5JXz1uzZvOwAhSEJIAQpAAgiBULt3pHzlszct+QAhSEGIAVC88rRy6eM2bL0AIUhCCABIAEgAq0gA61CIIaEIgWnIgJqIAJBB3EiAmsiA0cEQANAIAkgASkAACIKIAiFIgh8IgkgBiAHfCIHIAZCDYmFIgZ8IgsgBkIRiYUiBkINiSAGIAhCEIkgCYUiCSAHQiCJfCIHfCIIhSIGQhGJIAYgCUIViSAHhSIHIAtCIIl8Igl8IguFIQYgB0IQiSAJhSIHQhWJIAcgCEIgiXwiB4UhCCALQiCJIQkgByAKhSEHIAFBCGoiASADRw0ACwsgBUI4hiEFAkACQAJAAkACQAJAAkACQCACQQFrDgcGBQQDAgEABwsgATEABkIwhiAFhCEFCyABMQAFQiiGIAWEIQULIAExAARCIIYgBYQhBQsgATEAA0IYhiAFhCEFCyABMQACQhCGIAWEIQULIAExAAFCCIYgBYQhBQsgBSABMQAAhCEFCyAAIAUgCIUiCEIQiSAIIAl8IgmFIghCFYkgCCAGIAd8IgdCIIl8IgiFIgpCEIkgCiAJIAcgBkINiYUiBnwiB0IgiXwiCYUiCkIViSAKIAggByAGQhGJhSIGfCIHQiCJfCIIhSIKQhCJIAkgBkINiSAHhSIGfCIHQiCJQv8BhSAKfCIJhSIKQhWJIAZCEYkgB4UiBiAFIAiFfCIFQiCJIAp8IgeFIghCEIkgBSAGQg2JhSIFIAl8IgZCIIkgCHwiCYUiCEIViSAFQhGJIAaFIgUgB3wiBkIgiSAIfCIHhSIIQhCJIAVCDYkgBoUiBSAJfCIGQiCJIAh8IgmFIghCFYkgBUIRiSAGhSIFIAd8IgZCIIkgCHwiB4UiCEIQiSAFQg2JIAaFIgUgCXwiBkIgiSAIfCIJhUIViSAFQhGJIAaFIgVCDYkgBSAHfIUiBUIRiYUgBSAJfCIFQiCJhSAFhTcAAEEAC7MGAgN+AX8CfyAFrSAGrUIghoQhCiAIrSAJrUIghoQhDCMAQZADayIFJAAgAgRAIAJCADcDAAsgAwRAIANB/wE6AAALQX8hDQJAAkAgCkIRVA0AIApCEX0iC0Lv////D1oNASAFQSBqIghCwAAgAEEgaiIJIAAQHCAFQeAAaiIGIAhBjJMCKAIAEQEAGiAIQcAAEAggBiAHIAxBkJMCKAIAEQAAGiAGQbCPAkIAIAx9Qg+DQZCTAigCABEAABogBUIANwNYIAVCADcDUCAFQgA3A0ggBUFAa0IANwMAIAVCADcDOCAFQgA3AzAgBUIANwMoIAVCADcDICAFIAQtAAA6ACAgCCAIQsAAIAlBASAAECEgBS0AICEHIAUgBC0AADoAICAGIAhCwABBkJMCKAIAEQAAGiAGIARBAWoiBCALQZCTAigCABEAABogBkGwjwIgCkIBfUIPg0GQkwIoAgARAAAaIAUgDDcDGCAGIAVBGGoiCEIIQZCTAigCABEAABogBSAKQi98NwMYIAYgCEIIQZCTAigCABEAABogBiAFQZSTAigCABEBABogBkGAAhAIIAUgBCALp2pBEBA9BEAgBUEQEAgMAQsgASAEIAsgCUECIAAQISAAIAAtACQgBS0AAHM6ACQgACAALQAlIAUtAAFzOgAlIAAgAC0AJiAFLQACczoAJiAAIAAtACcgBS0AA3M6ACcgACAALQAoIAUtAARzOgAoIAAgAC0AKSAFLQAFczoAKSAAIAAtACogBS0ABnM6ACogACAALQArIAUtAAdzOgArIAkQTgJAIAdBAnFFBEAgCUEEECVFDQELIAUgACkAGDcD+AIgBSAAKQAQNwPwAiAFIAApAAA3A+ACIAUgACkACDcD6AIgBSAAKQAkNwOAAyAFQeACaiIBIAFCKCAJQQAgAEHMmwIoAgARCgAaIAAgBSkD+AI3ABggACAFKQPwAjcAECAAIAUpA+gCNwAIIAAgBSkD4AI3AAAgBSkDgAMhCiAAQQE2ACAgACAKNwAkCyACBEAgAiALNwMAC0EAIQ0gA0UNACADIAc6AAALIAVBkANqJAAgDQwBCxALAAsL5AUBAn4CfyAErSAFrUIghoQhCiAHrSAIrUIghoQhCyMAQYADayIEJAAgAgRAIAJCADcDAAsgCkLv////D1QEQCAEQRBqIgdCwAAgAEEgaiIIIAAQHCAEQdAAaiIFIAdBjJMCKAIAEQEAGiAHQcAAEAggBSAGIAtBkJMCKAIAEQAAGiAFQbCPAkIAIAt9Qg+DQZCTAigCABEAABogBEIANwNIIARBQGtCADcDACAEQgA3AzggBEIANwMwIARCADcDKCAEQgA3AyAgBEIANwMQIARCADcDGCAEIAk6ABAgByAHQsAAIAhBASAAECEgBSAHQsAAQZCTAigCABEAABogASAELQAQOgAAIAFBAWoiASADIAogCEECIAAQISAFIAEgCkGQkwIoAgARAAAaIAVBsI8CIApCD4NBkJMCKAIAEQAAGiAEIAs3AwggBSAEQQhqIgNCCEGQkwIoAgARAAAaIAQgCkJAfTcDCCAFIANCCEGQkwIoAgARAAAaIAUgASAKp2oiAUGUkwIoAgARAQAaIAVBgAIQCCAAIAAtACQgAS0AAHM6ACQgACAALQAlIAEtAAFzOgAlIAAgAC0AJiABLQACczoAJiAAIAAtACcgAS0AA3M6ACcgACAALQAoIAEtAARzOgAoIAAgAC0AKSABLQAFczoAKSAAIAAtACogAS0ABnM6ACogACAALQArIAEtAAdzOgArIAgQTgJAIAlBAnFFBEAgCEEEECVFDQELIAQgACkAGDcD6AIgBCAAKQAQNwPgAiAEIAApAAA3A9ACIAQgACkACDcD2AIgBCAAKQAkNwPwAiAEQdACaiIBIAFCKCAIQQAgAEHMmwIoAgARCgAaIAAgBCkD6AI3ABggACAEKQPgAjcAECAAIAQpA9gCNwAIIAAgBCkD0AI3AAAgBCkD8AIhCyAAQQE2ACAgACALNwAkCyACBEAgAiAKQhF8NwMACyAEQYADaiQAQQAMAQsQCwALCzEBAX4gAq0gA61CIIaEIgZC8P///w9aBEAQCwALIABBEGogACABIAYgBCAFECkaQQALgwQCAn8EfiMAQSBrIgYkACAEKQAAIQggBkIANwMYIAYgCDcDECAGQgA3AwggBiACrSADrUIghoQ3AwACfyABQcEAa0FOTQRAQYCiAkEcNgIAQX8MAQsgAUHBAGtBQE8EfwJ/IAZBEGohAiABQf8BcSEDIwAiASEEIAFBgARrQUBxIgEkAAJAIABFDQAgA0HBAGtB/wFxQb8BTQ0AIAVFIgcNACAHDQACfiAGRQRAQp/Y+dnCkdqCm38hCELRhZrv+s+Uh9EADAELIAYpAAhCn9j52cKR2oKbf4UhCCAGKQAAQtGFmu/6z5SH0QCFCyEKAn4gAkUEQEL5wvibkaOz8NsAIQlC6/qG2r+19sEfDAELIAIpAAhC+cL4m5Gjs/DbAIUhCSACKQAAQuv6htq/tfbBH4ULIQsgAUFAa0EAQaUCEAkaIAEgCTcDOCABIAs3AzAgASAINwMoIAEgCjcDICABQvHt9Pilp/2npX83AxggAUKr8NP0r+68tzw3AxAgAUK7zqqm2NDrs7t/NwMIIAEgA61CgMAAhEKIkveV/8z5hOoAhTcDACABQYADaiICQSBqQQBB4AAQCRogAiAFQSAQChogAUHgAGogAkGAARAKGiABQYABNgLgAiACQYABEAggASAAIAMQShogBCQAQQAMAQsQCwALBUF/CwsgBkEgaiQACxIAIAAgASACrSADrUIghoQQIAsSACAAIAEgAq0gA61CIIaEEBELGAAgACABIAIgA60gBK1CIIaEIAUgBhBsC3cCA38BfiMAIgYgBkHAA2tBQHEiBiQAQX8hByACrSADrUIghoQiCUIwWgRAIAZBQGsiAkEAQQBBGBAnGiACIAFCIBARGiACIARCIBARGiACIAZBIGoiAkEYECsaIAAgAUEgaiAJQiB9IAIgASAFEGQhBwskACAHC74BAgR/AX4gAq0gA61CIIaEIQkjACICIAJBgARrQUBxIgIkAEF/IQMgAkFAayIFIAJBIGoiBhBERQRAIAJBgAFqIgNBAEEAQRgQJxogAyAFQiAQERogAyAEQiAQERogAyACQeAAaiIHQRgQKxogAEEgaiABIAkgByAEIAYQZSEDIAAgAikDWDcAGCAAIAIpA1A3ABAgACACKQNINwAIIAAgAikDQDcAACAGQSAQCCAFQSAQCCAHQRgQCAskACADCxgAIAAgASACrSADrUIghoQgBCAFIAYQZAtIAQF+IAOtIAStQiCGhCEIIwBBIGsiAyQAQX8hBCADIAYgBxAmRQRAIAAgASACIAggBSADEDUhBCADQSAQCAsgA0EgaiQAIAQLGAAgACABIAKtIAOtQiCGhCAEIAUgBhBlCy4BAX4gAq0gA61CIIaEIgZC8P///w9aBEAQCwALIABBEGogACABIAYgBCAFECkLSAEBfiADrSAErUIghoQhCCMAQSBrIgMkAEF/IQQgAyAGIAcQJkUEQCAAIAEgAiAIIAUgAxApIQQgA0EgEAgLIANBIGokACAEC4YBAQJ/IwBBgARrIgUkACAFQSBqIgYgBEEgEB8aIAYgASACrSADrUIghoQQEhogBiAFQcADahAeIAUgBSkD2AM3AxggBSAFKQPQAzcDECAFIAUpA8gDNwMIIAUgBSkDwAM3AwAgACAFEDQhASAFIABBIBA9IAVBgARqJABBfyABIAAgBUYbcgtoAQF/IwBB4ANrIgUkACAFIARBIBAfGiAFIAEgAq0gA61CIIaEEBIaIAUgBUGgA2oQHiAAIAUpA7gDNwAYIAAgBSkDsAM3ABAgACAFKQOoAzcACCAAIAUpA6ADNwAAIAVB4ANqJABBAAtaAQJ+IAetIAitQiCGhCEMQX8hAiAErSAFrUIghoQiC0IQWgRAIAAgAyALQhB9IAMgC6dqQRBrIAYgDCAJIAoQaiECCyABBEAgAUIAIAtCEH0gAhs3AwALIAILJAAgACACIAOtIAStQiCGhCAFIAYgB60gCK1CIIaEIAkgChBqC1gBAn4CfyAGrSAHrUIghoQhDCADrSAErUIghoQiC0Lw////D1QEQCAAIAAgC6dqQQAgAiALIAUgDCAJIAoQaxogAQRAIAEgC0IQfDcDAAtBAAwBCxALAAsLJgAgACABIAIgAyAErSAFrUIghoQgBiAHrSAIrUIghoQgCiALEGsLWgECfiAHrSAIrUIghoQhDEF/IQIgBK0gBa1CIIaEIgtCEFoEQCAAIAMgC0IQfSADIAunakEQayAGIAwgCSAKEGYhAgsgAQRAIAFCACALQhB9IAIbNwMACyACCyQAIAAgAiADrSAErUIghoQgBSAGIAetIAitQiCGhCAJIAoQZgtaAQJ+IAetIAitQiCGhCEMQX8hAiAErSAFrUIghoQiC0IQWgRAIAAgAyALQhB9IAMgC6dqQRBrIAYgDCAJIAoQZyECCyABBEAgAUIAIAtCEH0gAhs3AwALIAILJAAgACACIAOtIAStQiCGhCAFIAYgB60gCK1CIIaEIAkgChBnC1gBAn4CfyAGrSAHrUIghoQhDCADrSAErUIghoQiC0Lw////D1QEQCAAIAAgC6dqQQAgAiALIAUgDCAJIAoQaBogAQRAIAEgC0IQfDcDAAtBAAwBCxALAAsLJgAgACABIAIgAyAErSAFrUIghoQgBiAHrSAIrUIghoQgCiALEGgL1QEBA38jACIFQYABa0FAcSIEJAAgBCADKAAAQf///x9xNgIAIAQgAygAA0ECdkGD/v8fcTYCBCAEIAMoAAZBBHZB/4H/H3E2AgggBCADKAAJQQZ2Qf//wB9xNgIMIAMoAAwhBiAEQgA3AhQgBEIANwIcIARBADYCJCAEIAZBCHZB//8/cTYCECAEIAMoABA2AiggBCADKAAUNgIsIAQgAygAGDYCMCADKAAcIQMgBEEAOgBQIARCADcDOCAEIAM2AjQgBCABIAIQQyAEIAAQQiAFJABBAAtYAQJ+An8gBq0gB61CIIaEIQwgA60gBK1CIIaEIgtC8P///w9UBEAgACAAIAunakEAIAIgCyAFIAwgCSAKEGkaIAEEQCABIAtCEHw3AwALQQAMAQsQCwALCyYAIAAgASACIAMgBK0gBa1CIIaEIAYgB60gCK1CIIaEIAogCxBpC1kBAn4gB60gCK1CIIaEIQtBfyEBAkAgA60gBK1CIIaEIgxC3////w9WDQAgC0Lf////D1YNACAAIAIgDKcgBUEgIAYgC6cgCSAKQbybAigCABEIACEBCyABC4ABAQN+IAetIAitQiCGhCEMQX8hAgJAIAStIAWtQiCGhCILQiBUDQAgC0IgfSINQt////8PVg0AIAxC3////w9WDQAgACADIA2nIAMgC6dqQSBrQSAgBiAMpyAJIApBvJsCKAIAEQgAIQILIAEEQCABQgAgC0IgfSACGzcDAAsgAgtgAQJ+IAStIAWtQiCGhCEMIAetIAitQiCGhCENIAIEQCACQiA3AwALIA1C4P///w9UIAxC3////w9YcUUEQBALAAsgACABQSAgAyAMpyAGIA2nIAogC0G4mwIoAgARCAALdgECfgJ/IAatIAetQiCGhCELAkAgA60gBK1CIIaEIgxC3////w9WDQAgC0Lg////D1oNACAAIAAgDKciA2pBICACIAMgBSALpyAJIApBuJsCKAIAEQgAIQAgAQRAIAFCACAMQiB8IAAbNwMACyAADAELEAsACwtZAQJ+IAetIAitQiCGhCELQX8hAQJAIAOtIAStQiCGhCIMQt////8PVg0AIAtC3////w9WDQAgACACIAynIAVBICAGIAunIAkgCkG0mwIoAgARCAAhAQsgAQuAAQEDfiAHrSAIrUIghoQhDEF/IQICQCAErSAFrUIghoQiC0IgVA0AIAtCIH0iDULf////D1YNACAMQt////8PVg0AIAAgAyANpyADIAunakEga0EgIAYgDKcgCSAKQbSbAigCABEIACECCyABBEAgAUIAIAtCIH0gAhs3AwALIAILYAECfiAErSAFrUIghoQhDCAHrSAIrUIghoQhDSACBEAgAkIgNwMACyANQuD///8PVCAMQt////8PWHFFBEAQCwALIAAgAUEgIAMgDKcgBiANpyAKIAtBsJsCKAIAEQgAC3YBAn4CfyAGrSAHrUIghoQhCwJAIAOtIAStQiCGhCIMQt////8PVg0AIAtC4P///w9aDQAgACAAIAynIgNqQSAgAiADIAUgC6cgCSAKQbCbAigCABEIACEAIAEEQCABQgAgDEIgfCAAGzcDAAsgAAwBCxALAAsLBABBMAv9AQEFfyMAIgUhCSAFQYAEa0FAcSIFJAAgACABIAAbIgcEQEF/IQYgBUHgAGoiCCADIAQQMEUEQCABIAAgARshA0EAIQAgBUGAAWoiAUEAQQBBwAAQJxogASAIQiAQERogCEEgEAggASAEQiAQERogASACQiAQERogASAFQSBqQcAAECsaIAFBgAMQCANAIAAgA2ogBUEgaiIBIABqIgItAAA6AAAgACAHaiACLQAgOgAAIAMgAEEBciICaiABIAJqLQAAOgAAIAIgB2ogAEEhciABai0AADoAACAAQQJqIgBBIEcNAAsgAUHAABAIQQAhBgsgCSQAIAYPCxALAAv9AQEFfyMAIgUhCSAFQYAEa0FAcSIFJAAgACABIAAbIgcEQEF/IQYgBUHgAGoiCCADIAQQMEUEQCABIAAgARshA0EAIQAgBUGAAWoiAUEAQQBBwAAQJxogASAIQiAQERogCEEgEAggASACQiAQERogASAEQiAQERogASAFQSBqQcAAECsaIAFBgAMQCANAIAAgB2ogBUEgaiIBIABqIgItAAA6AAAgACADaiACLQAgOgAAIAcgAEEBciICaiABIAJqLQAAOgAAIAIgA2ogAEEhciABai0AADoAACAAQQJqIgBBIEcNAAsgAUHAABAIQQAhBgsgCSQAIAYPCxALAAsfACABQSAgAkIgQQBBABBsGiAAIAFBnJMCKAIAEQEAC6EJAQh/IAdBeXFBAUYEQAJAAn8CQAJAAkACQAJAAkAgAwR/AkACQCAHQQNNBEADQCAIIQsCQAJAAkACQANAIAIgC2osAAAiCkHQ/wBzQQFqQX9zQQh2QT9xIApB1P8Ac0EBakF/c0EIdkE+cXIgCkG5AWogCkGf/wNqQX9zQfoAIAprQX9zcUEIdnFB/wFxciAKQQRqIApB0P8DakF/c0E5IAprQX9zcUEIdnFB/wFxckHaACAKa0F/cyAKQcEAayIJQX9zcUEIdiAJcUH/AXFyIglBAWsgCkG+/wNzQQFqcUEIdkH/AXEgCXIiCUH/AUcNAUEAIQkgBEUNCCAEIAoQIwRAIAtBAWoiCyADTw0DDAELCyALIQgMBwsgCSAOQQZ0aiEOIAxBAUsNASAMQQZqIQwMAgsgAyAIQQFqIgAgACADSRshCAwFCyAMQQJrIQwgASANTQ0DIAAgDWogDiAMdjoAACANQQFqIQ0LQQAhCSALQQFqIgggA0kNAAsMAgsDQAJAIAIgC2osAAAiCkGg/wBzQQFqQX9zQQh2QT9xIApB0v8Ac0EBakF/c0EIdkE+cXIgCkG5AWogCkGf/wNqQX9zQfoAIAprQX9zcUEIdnFB/wFxciAKQQRqIApB0P8DakF/c0E5IAprQX9zcUEIdnFB/wFxckHaACAKa0F/cyAKQcEAayIJQX9zcUEIdiAJcUH/AXFyIglBAWsgCkG+/wNzQQFqcUEIdkH/AXEgCXIiCUH/AUYEQEEAIQkgBEUNBCAEIAoQIwRAIAtBAWoiCyADTw0CDAMLIAshCAwECyAJIA5BBnRqIQ4CQCAMQQJJBEAgDEEGaiEMDAELIAxBAmshDCABIA1NDQMgACANaiAOIAx2OgAAIA1BAWohDQtBACEJIAtBAWoiCCADTw0DIAghCwwBCwsgAyAIQQFqIgAgACADSRshCAwBCyALIQhBgKICQcQANgIAQQEhCQsgDEEESw0BIAgFQQALIQBBfyEBIAkEQCAAIQgMCAsgDkF/IAx0QX9zcQRAIAAhCAwICyAHQQJxBEAgACEHDAMLIAxBAkkEQCAAIQcMAwsgACADIAAgA0sbIQggDEEBdiELIARFDQEgACEHA0AgByAIRgRAQcQAIQkMBQsCQCACIAdqLAAAIgBBPUYEQCALQQFrIQsMAQsgBCAAECMNAEEcIQkgByEIDAULIAdBAWohByALDQALDAILQX8hAQwGC0HEACEJIAAgA08NASAAIAJqLQAAQT1HBEAgACEIQRwhCQwCCyAAIAtqIQcgC0EBRg0AIABBAWoiDCAIRg0BIAIgDGotAABBPUcEQCAMIQhBHCEJDAILIAtBAkYNACAAQQJqIgAgCEYNAUEcIQkgACIIIAJqLQAAQT1HDQELQQAhASAEDQEMAgtBgKICIAk2AgAMAwsgAyAHTQ0AA0AgBCACIAdqLAAAECNFDQEgB0EBaiIHIANHDQALIAMMAQsgBwshCCANIQ8LAkAgBgRAIAYgAiAIajYCAAwBCyADIAhGDQBBgKICQRw2AgBBfyEBCyAFBEAgBSAPNgIACyABDwsQCwALiAYBB38CQAJAAkACQAJAAn8CQAJAIARBeXFBAUcNACADQQNuIgVBAnQhBwJAIAVBfWwgA2oiBUUNACAEQQJxRQRAIAdBBGohBwwBCyAFQQF2IAdqQQJqIQcLIAEgB00NAAJAIARBBE8EQCADRQRAQQAhBAwHC0EAIQVBACEEDAELIANFBEBBACEEDAYLQQAhBUEAIQQMAgsDQCACIAhqLQAAIAlBCHRyIQkgBUEIciEFA0AgACAEaiAJIAVBBmsiBXZBP3EiBkHB/wFqQX9zQQh2Qd8AcSAGQeb/A2pBCHYiCiAGQcEAanFyIAZB/AFqIAZBwv8DakEIdnEgBkHM/wNqQQh2IgtBf3NxciAGQcH/AHNBAWpBf3NBCHZBLXFyIAZBxwBqIApBf3NxIAtxcjoAACAEQQFqIQQgBUEFSw0ACyAIQQFqIgggA0cNAAsgBUUNA0HfACEDQS0hCEHB/wEMAgsQCwALA0AgAiAIai0AACAJQQh0ciEJIAVBCHIhBQNAIAAgBGogCSAFQQZrIgV2QT9xIgZBwf8AakF/c0EIdkEvcSAGQeb/A2pBCHYiCiAGQcEAanFyIAZB/AFqIAZBwv8DakEIdnEgBkHM/wNqQQh2IgtBf3NxciAGQcH/AHNBAWpBf3NBCHZBK3FyIAZBxwBqIApBf3NxIAtxcjoAACAEQQFqIQQgBUEFSw0ACyAIQQFqIgggA0cNAAsgBUUNAUEvIQNBKyEIQcH/AAshAiAAIARqIAMgAiAJQQYgBWt0QT9xIgJqQX9zQQh2cSACQeb/A2pBCHYiAyACQcEAanFyIAJB/AFqIAJBwv8DakEIdnEgAkHM/wNqQQh2IgVBf3NxciAIIAJBwf8Ac0EBakF/c0EIdnFyIAJBxwBqIANBf3NxIAVxcjoAACAEQQFqIQQLIAQgB0sNAQsgBCAHSQ0BIAQhBwwCC0GMCEHaCEHnAUGUChABAAsgACAEakE9IAcgBGsQCRoLIAAgB2pBACABIAdBAWoiAiABIAJLGyAHaxAJGiAACz0BAX8gAUF5cUEBRwRAEAsACyAAIABBA24iAEF9bGoiAkEBakEEIAFBAnEbQQAgAkEDcRsgAEECdGpBAWoLogUBCX8CfwJAAkACQAJAAkACQAJAAkAgAwRAIAQNAUEBIQhBACEEA0AgAiAHai0AACIMQd8BcUE3a0H/AXEiC0H2/wNqIAtB8P8DanNBCHYiDSAMQTBzIgxB9v8DakEIdiIOckH/AXFFDQQgASAKTQ0DIAsgDXEgDCAOcXIhCwJAIAlB/wFxRQRAIAtBBHQhBAwBCyAAIApqIAQgC3I6AAAgCkEBaiEKCyAJQX9zIQkgB0EBaiIHIANHDQALIAMhBwwDC0EAIAZFDQgaDAYLA0ACQAJAAkACfwJAIAIgB2otAAAiC0HfAXFBN2tB/wFxIghB9v8DaiAIQfD/A2pzQQh2IgwgC0EwcyINQfb/A2pBCHYiDnJB/wFxRQRAIAlB/wFxDQlBACEIIAQgCxAjRQ0LIAdBAWoiCSEHIAMgCUsNAQwLCyABIApNDQYgCCAMcSANIA5xciIIIAlB/wFxRQ0BGiAAIApqIAggD3I6AAAgCkEBaiEKDAQLA0AgAiAHai0AACILQd8BcUE3a0H/AXEiDEH2/wNqIAxB8P8DanNBCHYiDSALQTBzIg5B9v8DakEIdiIPckH/AXFFBEAgBCALECNFDQsgAyAHQQFqIgdLDQEMAwsLIAEgCk0NAiAMIA1xIA4gD3FyC0EEdCEPQQAhCQwCCyADIAkgAyAJSxshBwwHC0EAIQkMAgsgCUF/cyEJQQEhCCAHQQFqIgcgA0kNAAsMAQtBgKICQcQANgIAQQAhCAsgCUH/AXFFDQELQYCiAkEcNgIAQX8hCCAHQQFrIQdBACEKDAELIApBACAIGyEKIAhBAWshCAsgBg0AIAMgB0cNASAIDAILIAYgAiAHajYCACAIDAELQYCiAkEcNgIAQX8LIAUEQCAFIAo2AgALC50BAQN/AkAgA0H+////B0sNACADQQF0IAFPDQBBACEBIAMEfwNAIAAgAUEBdGoiBCABIAJqLQAAIgVBD3EiBkEIdCAGQfb/A2pBgLIDcWpBgK4BakEIdjoAASAEIAVBBHYiBCAEQfb/A2pBCHZB2QFxakHXAGo6AAAgAUEBaiIBIANHDQALIANBAXQFQQALIABqQQA6AAAgAA8LEAsACwoAIAAgASACEDALEAAgACABQZyTAigCABEBAAsIACAAIAEQRAtaAQF/IwBBQGoiAyQAIAMgAkIgECAaIAEgAykDGDcAGCABIAMpAxA3ABAgASADKQMINwAIIAEgAykDADcAACADQcAAEAggACABQZyTAigCABEBACADQUBrJAALBABBDAsnAQF/IwBBQGoiAyQAIAAgAxAUIAEgA0LAACACQQEQRiADQUBrJAALKQEBfyMAQUBqIgQkACAAIAQQFCABIAIgBELAACADQQEQRyAEQUBrJAALCAAgABAbQQALuwECAn8DfiMAQcABayICJAAgAkEgEBggASACQiAQIBogASABLQAAQfgBcToAACABIAEtAB9BP3FBwAByOgAfIAJBIGoiAyABEDEgACADEDIgASACKQMYNwAYIAEgAikDEDcAECABIAIpAwg3AAggASACKQMANwAAIAApAAghBCAAKQAQIQUgACkAACEGIAEgACkAGDcAOCABIAU3ADAgASAENwAoIAEgBjcAICACQSAQCCACQcABaiQAQQALtgECAX8DfiMAQaABayIDJAAgASACQiAQIBogASABLQAAQfgBcToAACABIAEtAB9BP3FBwAByOgAfIAMgARAxIAAgAxAyIAIpAAghBCACKQAQIQUgAikAACEGIAEgAikAGDcAGCABIAU3ABAgASAENwAIIAEgBjcAACAAKQAIIQQgACkAECEFIAApAAAhBiABIAApABg3ADggASAFNwAwIAEgBDcAKCABIAY3ACAgA0GgAWokAEEACwUAQb9/C20BAX8jAEFAaiICJAAgAiABQiAQIBogAiACLQAAQfgBcToAACACIAItAB9BP3FBwAByOgAfIAAgAikDEDcAECAAIAIpAwg3AAggACACKQMANwAAIAAgAikDGDcAGCACQcAAEAggAkFAayQAQQALrRQCEX8ofiMAQYACayIDJABBfyESAkAgARA/DQAgA0HgAGoiBCABEF8NACMAQYAQayICJAAgAkGABWoiASAEEA4gAiAEKQIgNwPgAiACIAQpAhg3A9gCIAIgBCkCEDcD0AIgAiAEKQIINwPIAiACIAQpAgA3A8ACIAIgBCkCMDcD8AIgAiAEKQI4NwP4AiACIARBQGspAgA3A4ADIAIgBCkCSDcDiAMgAiAEKQIoNwPoAiACIAQpAlg3A5gDIAIgBCkCYDcDoAMgAiAEKQJoNwOoAyACIAQpAnA3A7ADIAIgBCkCUDcDkAMgAkHgA2oiBSACQcACaiIJEBkgAkGgAWoiBCAFIAJB2ARqIgYQBiACQcgBaiACQYgEaiIHIAJBsARqIggQBiACQfABaiAIIAYQBiACQZgCaiAFIAcQBiAFIAQgARAPIAkgBSAGEAYgAkHoAmoiCiAHIAgQBiACQZADaiILIAggBhAGIAJBuANqIgwgBSAHEAYgAkGgBmoiASAJEA4gBSAEIAEQDyAJIAUgBhAGIAogByAIEAYgCyAIIAYQBiAMIAUgBxAGIAJBwAdqIgEgCRAOIAUgBCABEA8gCSAFIAYQBiAKIAcgCBAGIAsgCCAGEAYgDCAFIAcQBiACQeAIaiIBIAkQDiAFIAQgARAPIAkgBSAGEAYgCiAHIAgQBiALIAggBhAGIAwgBSAHEAYgAkGACmoiASAJEA4gBSAEIAEQDyAJIAUgBhAGIAogByAIEAYgCyAIIAYQBiAMIAUgBxAGIAJBoAtqIgEgCRAOIAUgBCABEA8gCSAFIAYQBiAKIAcgCBAGIAsgCCAGEAYgDCAFIAcQBiACQcAMaiIBIAkQDiAFIAQgARAPIAkgBSAGEAYgCiAHIAgQBiALIAggBhAGIAwgBSAHEAYgAkHgDWogCRAOIAJCADcDICACQgA3AxggAkIANwMQIAJCADcDCCACQgA3AjQgAkIANwI8IAJCADcCRCACQoCAgIAQNwJMIAJCADcDACACQgA3AiwgAkEBNgIoIAJB1ABqQQBBzAAQCRogAkH4AGohCSACQdgPaiEPIAJBsA9qIRAgAkHQAGohDSACQShqIQ5B/AEhBANAIAJBqA9qIAIpAyA3AwAgAkGgD2ogAikDGDcDACACQZgPaiACKQMQNwMAIAJBkA9qIAIpAwg3AwAgAiACKQMANwOIDyAQIA4pAiA3AiAgECAOKQIYNwIYIBAgDikCEDcCECAQIA4pAgg3AgggECAOKQIANwIAIA8gDSkCIDcCICAPIA0pAhg3AhggDyANKQIQNwIQIA8gDSkCCDcCCCAPIA0pAgA3AgAgBCIBQYCFAmosAAAhESACQeADaiIFIAJBiA9qEBkCQCARQQBKBEAgAkHAAmoiBCAFIAYQBiAKIAcgCBAGIAsgCCAGEAYgDCAFIAcQBiAFIAQgAkGABWogEUH+AXFBAXZBoAFsahAPDAELIBFBAE4NACACQcACaiIEIAJB4ANqIgUgBhAGIAogByAIEAYgCyAIIAYQBiAMIAUgBxAGIAUgBCACQYAFakEAIBFrQf4BcUEBdkGgAWxqEF4LIAIgAkHgA2oiBCAGEAYgDiAHIAgQBiANIAggBhAGIAkgBCAHEAYgAUEBayEEIAENAAsgAkGABWoiASACEBYgAUEgECUgAkGAEGokAEUNAEEAIRIgA0EAIAMoAqwBIgZrNgIkIANBACADKAKoASIMazYCICADQQAgAygCpAEiB2s2AhwgA0EAIAMoAqABIgVrNgIYIANBACADKAKcASIIazYCFCADQQAgAygCmAEiCWs2AhAgA0EAIAMoApQBIgprNgIMIANBACADKAKQASIEazYCCCADQQAgAygCjAEiC2s2AgQgA0EBIAMoAogBIgFrNgIAIAMgAxAzIAMgAygCBCINrCIbIAhBAXSsIiV+IAM0AgAiFSAFrCIWfnwgAygCCCIOrCIdIAmsIhd+fCADKAIMIg+sIh8gCkEBdKwiJn58IAMoAhAiEKwiISAErCIYfnwgAygCFCIRrCInIAtBAXSsIih+fCADKAIYIgWsIjEgAUEBaqwiGX58IAMoAhwiCUETbKwiICAGQQF0rCIpfnwgAygCICIEQRNsrCIeIAysIhp+fCADKAIkIgFBE2ysIhwgB0EBdKwiKn58IBcgG34gFSAIrCIrfnwgHSAKrCIsfnwgGCAffnwgISALrCItfnwgGSAnfnwgBUETbKwiIiAGrCIufnwgGiAgfnwgHiAHrCIvfnwgFiAcfnwgGyAmfiAVIBd+fCAYIB1+fCAfICh+fCAZICF+fCARQRNsrCIwICl+fCAaICJ+fCAgICp+fCAWIB5+fCAcICV+fCIzQoCAgBB8IjRCGod8IjVCgICACHwiNkIZh3wiEyATQoCAgBB8IiNCgICA4A+DfT4CSCADIBsgKH4gFSAYfnwgGSAdfnwgD0ETbKwiFCApfnwgEEETbKwiJCAafnwgKiAwfnwgFiAifnwgICAlfnwgFyAefnwgHCAmfnwgGSAbfiAVIC1+fCAOQRNsrCITIC5+fCAUIBp+fCAkIC9+fCAWIDB+fCAiICt+fCAXICB+fCAeICx+fCAYIBx+fCANQRNsrCApfiAVIBl+fCATIBp+fCAUICp+fCAWICR+fCAlIDB+fCAXICJ+fCAgICZ+fCAYIB5+fCAcICh+fCI3QoCAgBB8IjhCGod8IjlCgICACHwiOkIZh3wiEyATQoCAgBB8IhRCgICA4A+DfT4COCADIBYgG34gFSAvfnwgHSArfnwgFyAffnwgISAsfnwgGCAnfnwgLSAxfnwgCawiMiAZfnwgHiAufnwgGiAcfnwgI0Iah3wiEyATQoCAgAh8IiNCgICA8A+DfT4CTCADIBggG34gFSAsfnwgHSAtfnwgGSAffnwgJCAufnwgGiAwfnwgIiAvfnwgFiAgfnwgHiArfnwgFyAcfnwgFEIah3wiEyATQoCAgAh8IhRCgICA8A+DfT4CPCADIBsgKn4gFSAafnwgFiAdfnwgHyAlfnwgFyAhfnwgJiAnfnwgGCAxfnwgKCAyfnwgBKwiJCAZfnwgHCApfnwgI0IZh3wiEyATQoCAgBB8IiNCgICA4A+DfT4CUCADIDUgNkKAgIDwD4N9IDMgNEKAgIBgg30gFEIZh3wiFEKAgIAQfCITQhqIfD4CRCADIBQgE0KAgIDgD4N9PgJAIAMgGiAbfiAVIC5+fCAdIC9+fCAWIB9+fCAhICt+fCAXICd+fCAsIDF+fCAYIDJ+fCAkIC1+fCABrCAZfnwgI0Iah3wiEyATQoCAgAh8IhNCgICA8A+DfT4CVCADIDkgOkKAgIDwD4N9IDcgOEKAgIBgg30gE0IZh0ITfnwiFEKAgIAQfCITQhqIfD4CNCADIBQgE0KAgIDgD4N9PgIwIAAgA0EwahAWCyADQYACaiQAIBILBABBGgsFAEGmCgsFAEHgPwumAgIFfwF+IwBBgAJrIgUkACAFQQE6AA8CfyABQeA/TQRAIAFBIE8EQCAAQSBrIQkgA60hCkEgIQYDQCAGIQcgBUEwaiIGIARBIBA4GiAIBEAgBiAIIAlqQiAQGhoLIAVBMGoiBiACIAoQGhogBiAFQQ9qQgEQGhogBiAAIAhqEDcgBSAFLQAPQQFqOgAPIAchCCAHQSBqIgYgAU0NAAsLIAFBH3EiCARAIAVBMGoiASAEQSAQOBogBwRAIAEgACAHakEga0IgEBoaCyAFQTBqIgEgAiADrRAaGiABIAVBD2pCARAaGiABIAVBEGoiARA3IAAgB2ogASAIEAoaIAFBIBAICyAFQTBqQdABEAhBAAwBC0GAogJBHDYCAEF/CyAFQYACaiQACzcBAX8jAEHQAWsiBSQAIAUgASACEDgaIAUgAyAErRAaGiAFIAAQNyAFQQQQCCAFQdABaiQAQQALEAAgACABEDcgAEEEEAhBAAsLACAAIAEgAq0QGgsKACAAIAEgAhA4CwQAQQMLBABBbgsEAEERCwQAQTQLnwECAX8BfiMAQTBrIgEkACABIAApABg3AxggASAAKQAQNwMQIAEgACkAADcDACABIAApAAg3AwggASAAKQAkNwMgIAEgAUIoIABBIGpBACAAQcybAigCABEKABogACABKQMYNwAYIAAgASkDEDcAECAAIAEpAwg3AAggACABKQMANwAAIAEpAyAhAiAAQQE2ACAgACACNwAkIAFBMGokAAsqAQF+IAAgASACEDsgAEEBNgAgIAEpABAhAyAAQgA3ACwgACADNwAkQQALMAEBfiABQRgQGCAAIAEgAhA7IABBATYAICABKQAQIQMgAEIANwAsIAAgAzcAJEEACwwAIAAgASACIAMQJwsFAEGAAwsFAEGgAwsGAEHA/wALswICBX8BfiMAQfADayIFJAAgBUEBOgAPAn8gAUHA/wBNBEAgAUHAAE8EQCAAQUBqIQkgA60hCkHAACEGA0AgBiEHIAVB0ABqIgYgBEHAABAfGiAIBEAgBiAIIAlqQsAAEBIaCyAFQdAAaiIGIAIgChASGiAGIAVBD2pCARASGiAGIAAgCGoQHiAFIAUtAA9BAWo6AA8gByEIIAdBQGsiBiABTQ0ACwsgAUE/cSIIBEAgBUHQAGoiASAEQcAAEB8aIAcEQCABIAAgB2pBQGpCwAAQEhoLIAVB0ABqIgEgAiADrRASGiABIAVBD2pCARASGiABIAVBEGoiARAeIAAgB2ogASAIEAoaIAFBwAAQCAsgBUHQAGpBoAMQCEEADAELQYCiAkEcNgIAQX8LIAVB8ANqJAALCQAgAEHAABAYCzcBAX8jAEGgA2siBSQAIAUgASACEB8aIAUgAyAErRASGiAFIAAQHiAFQQQQCCAFQaADaiQAQQALEAAgACABEB4gAEEEEAhBAAulAQEGfyMAQRBrIgVBADYCDEF/IQQgAiADQQFrSwR/IAEgAkEBayIHaiEIQQAhAkEAIQFBACEEA0AgBSAFKAIMIgZBACAIIAJrLQAAIglBgAFzQQFrIAZBAWsgBEEBa3FxQQh2QQFxIgZrIAJxcjYCDCABIAZyIQEgBCAJciEEIAJBAWoiAiADRw0ACyAAIAcgBSgCDGs2AgAgAUH/AXFBAWsFQX8LCwvwjwINAEGACAuHA3JhbmRvbWJ5dGVzAGI2NF9wb3MgPD0gYjY0X2xlbgBjcnlwdG9fZ2VuZXJpY2hhc2hfYmxha2UyYl9maW5hbAByYW5kb21ieXRlcy9yYW5kb21ieXRlcy5jAHNvZGl1bS9jb2RlY3MuYwBjcnlwdG9fZ2VuZXJpY2hhc2gvYmxha2UyYi9yZWYvYmxha2UyYi1yZWYuYwBjcnlwdG9fZ2VuZXJpY2hhc2gvYmxha2UyYi9yZWYvZ2VuZXJpY2hhc2hfYmxha2UyYi5jAGJ1Zl9sZW4gPD0gU0laRV9NQVgAb3V0bGVuIDw9IFVJTlQ4X01BWABTLT5idWZsZW4gPD0gQkxBS0UyQl9CTE9DS0JZVEVTAHNvZGl1bV9iaW4yYmFzZTY0ADEuMC4yMAAAAAC2eFn/hXLTAL1uFf8PCmoAKcABAJjoef+8PKD/mXHO/wC34v60DUj/AAAAAAAAAACwoA7+08mG/54YjwB/aTUAYAy9AKfX+/+fTID+amXh/x78BACSDK4AQZALCydZ8bL+CuWm/3vdKv4eFNQAUoADADDR8wB3eUD/MuOc/wBuxQFnG5AAQcALC8AHhTuMAb3xJP/4JcMBYNw3ALdMPv/DQj0AMkykAeGkTP9MPaP/dT4fAFGRQP92QQ4AonPW/waKLgB85vT/CoqPADQawgC49EwAgY8pAb70E/97qnr/YoFEAHnVkwBWZR7/oWebAIxZQ//v5b4BQwu1AMbwif7uRbz/Q5fuABMqbP/lVXEBMkSH/xFqCQAyZwH/UAGoASOYHv8QqLkBOFno/2XS/AAp+kcAzKpP/w4u7/9QTe8AvdZL/xGN+QAmUEz/vlV1AFbkqgCc2NABw8+k/5ZCTP+v4RD/jVBiAUzb8gDGonIALtqYAJsr8f6boGj/M7ulAAIRrwBCVKAB9zoeACNBNf5F7L8ALYb1AaN73QAgbhT/NBelALrWRwDpsGAA8u82ATlZigBTAFT/iKBkAFyOeP5ofL4AtbE+//opVQCYgioBYPz2AJeXP/7vhT4AIDicAC2nvf+OhbMBg1bTALuzlv76qg7/0qNOACU0lwBjTRoA7pzV/9XA0QFJLlQAFEEpATbOTwDJg5L+qm8Y/7EhMv6rJsv/Tvd0ANHdmQCFgLIBOiwZAMknOwG9E/wAMeXSAXW7dQC1s7gBAHLbADBekwD1KTgAfQ3M/vStdwAs3SD+VOoUAPmgxgHsfur/L2Oo/qrimf9ms9gA4o16/3pCmf629YYA4+QZAdY56//YrTj/tefSAHeAnf+BX4j/bn4zAAKpt/8HgmL+RbBe/3QE4wHZ8pH/yq0fAWkBJ/8ur0UA5C86/9fgRf7POEX/EP6L/xfP1P/KFH7/X9Vg/wmwIQDIBc//8SqA/iMhwP/45cQBgRF4APtnl/8HNHD/jDhC/yji9f/ZRiX+rNYJ/0hDhgGSwNb/LCZwAES4S//OWvsAleuNALWqOgB09O8AXJ0CAGatYgDpiWABfzHLAAWblAAXlAn/03oMACKGGv/bzIgAhggp/+BTK/5VGfcAbX8A/qmIMADud9v/563VAM4S/v4Iugf/fgkHAW8qSABvNOz+YD+NAJO/f/7NTsD/DmrtAbvbTACv87v+aVmtAFUZWQGi85QAAnbR/iGeCQCLoy7/XUYoAGwqjv5v/I7/m9+QADPlp/9J/Jv/XnQM/5ig2v+c7iX/s+rP/8UAs/+apI0A4cRoAAojGf7R1PL/Yf3e/rhl5QDeEn8BpIiH/x7PjP6SYfMAgcAa/slUIf9vCk7/k1Gy/wQEGACh7tf/Bo0hADXXDv8ptdD/54udALPL3f//uXEAveKs/3FC1v/KPi3/ZkAI/06uEP6FdUT/AEGgEwsBAQBBwBMLsAEm6JWPwrInsEXD9Iny75jw1d+sBdPGMzmxOAKIbVP8BccXanA9TdhPujwLdg0QZw8qIFP6LDnMxk7H/XeSrAN67P///////////////////////////////////////3/t////////////////////////////////////////f+7///////////////////////////////////////9/7dP1XBpjEljWnPei3vneFABB/xQL/PABEIU7jAG98ST/+CXDAWDcNwC3TD7/w0I9ADJMpAHhpEz/TD2j/3U+HwBRkUD/dkEOAKJz1v8Gii4AfOb0/wqKjwA0GsIAuPRMAIGPKQG+9BP/e6p6/2KBRAB51ZMAVmUe/6FnmwCMWUP/7+W+AUMLtQDG8In+7kW8/+pxPP8l/zn/RbK2/oDQswB2Gn3+AwfW//EyTf9Vy8X/04f6/xkwZP+71bT+EVhpAFPRngEFc2IABK48/qs3bv/ZtRH/FLyqAJKcZv5X1q7/cnqbAeksqgB/CO8B1uzqAK8F2wAxaj3/BkLQ/wJqbv9R6hP/12vA/0OX7gATKmz/5VVxATJEh/8RagkAMmcB/1ABqAEjmB7/EKi5AThZ6P9l0vwAKfpHAMyqT/8OLu//UE3vAL3WS/8RjfkAJlBM/75VdQBW5KoAnNjQAcPPpP+WQkz/r+EQ/41QYgFM2/IAxqJyAC7amACbK/H+m6Bo/7IJ/P5kbtQADgWnAOnvo/8cl50BZZIK//6eRv5H+eQAWB4yAEQ6oP+/GGgBgUKB/8AyVf8Is4r/JvrJAHNQoACD5nEAfViTAFpExwD9TJ4AHP92AHH6/gBCSy4A5torAOV4ugGURCsAiHzuAbtrxf9UNfb/M3T+/zO7pQACEa8AQlSgAfc6HgAjQTX+Rey/AC2G9QGje90AIG4U/zQXpQC61kcA6bBgAPLvNgE5WYoAUwBU/4igZABcjnj+aHy+ALWxPv/6KVUAmIIqAWD89gCXlz/+74U+ACA4nAAtp73/joWzAYNW0wC7s5b++qoO/0RxFf/eujv/QgfxAUUGSABWnGz+N6dZAG002/4NsBf/xCxq/++VR/+kjH3/n60BADMp5wCRPiEAim9dAblTRQCQcy4AYZcQ/xjkGgAx2eIAcUvq/sGZDP+2MGD/Dg0aAIDD+f5FwTsAhCVR/n1qPADW8KkBpONCANKjTgAlNJcAY00aAO6c1f/VwNEBSS5UABRBKQE2zk8AyYOS/qpvGP+xITL+qybL/073dADR3ZkAhYCyATosGQDJJzsBvRP8ADHl0gF1u3UAtbO4AQBy2wAwXpMA9Sk4AH0NzP70rXcALN0g/lTqFAD5oMYB7H7q/48+3QCBWdb/N4sF/kQUv/8OzLIBI8PZAC8zzgEm9qUAzhsG/p5XJADZNJL/fXvX/1U8H/+rDQcA2vVY/vwjPAA31qD/hWU4AOAgE/6TQOoAGpGiAXJ2fQD4/PoAZV7E/8aN4v4zKrYAhwwJ/m2s0v/F7MIB8UGaADCcL/+ZQzf/2qUi/kq0swDaQkcBWHpjANS12/9cKuf/7wCaAPVNt/9eUaoBEtXYAKtdRwA0XvgAEpeh/sXRQv+u9A/+ojC3ADE98P62XcMAx+QGAcgFEf+JLe3/bJQEAFpP7f8nP03/NVLPAY4Wdv9l6BIBXBpDAAXIWP8hqIr/leFIAALRG/8s9agB3O0R/x7Taf6N7t0AgFD1/m/+DgDeX74B3wnxAJJM1P9szWj/P3WZAJBFMAAj5G8AwCHB/3DWvv5zmJcAF2ZYADNK+ADix4/+zKJl/9BhvQH1aBIA5vYe/xeURQBuWDT+4rVZ/9AvWv5yoVD/IXT4ALOYV/9FkLEBWO4a/zogcQEBTUUAO3k0/5juUwA0CMEA5yfp/8ciigDeRK0AWzny/tzSf//AB/b+lyO7AMPspQBvXc4A1PeFAZqF0f+b5woAQE4mAHr5ZAEeE2H/Plv5AfiFTQDFP6j+dApSALjscf7Uy8L/PWT8/iQFyv93W5n/gU8dAGdnq/7t12//2DVFAO/wFwDCld3/JuHeAOj/tP52UoX/OdGxAYvohQCesC7+wnMuAFj35QEcZ78A3d6v/pXrLACX5Bn+2mlnAI5V0gCVgb7/1UFe/nWG4P9SxnUAnd3cAKNlJADFciUAaKym/gu2AABRSLz/YbwQ/0UGCgDHk5H/CAlzAUHWr//ZrdEAUH+mAPflBP6nt3z/WhzM/q878P8LKfgBbCgz/5Cxw/6W+n4AiltBAXg83v/1we8AHda9/4ACGQBQmqIATdxrAerNSv82pmf/dEgJAOReL/8eyBn/I9ZZ/z2wjP9T4qP/S4KsAIAmEQBfiZj/13yfAU9dAACUUp3+w4L7/yjKTP/7fuAAnWM+/s8H4f9gRMMAjLqd/4MT5/8qgP4ANNs9/mbLSACNBwv/uqTVAB96dwCF8pEA0Pzo/1vVtv+PBPr++ddKAKUebwGrCd8A5XsiAVyCGv9Nmy0Bw4sc/zvgTgCIEfcAbHkgAE/6vf9g4/z+JvE+AD6uff+bb13/CubOAWHFKP8AMTn+QfoNABL7lv/cbdL/Ba6m/iyBvQDrI5P/JfeN/0iNBP9na/8A91oEADUsKgACHvAABDs/AFhOJABxp7QAvkfB/8eepP86CKwATSEMAEE/AwCZTSH/rP5mAeTdBP9XHv4BkilW/4rM7/5sjRH/u/KHANLQfwBELQ7+SWA+AFE8GP+qBiT/A/kaACPVbQAWgTb/FSPh/+o9OP862QYAj3xYAOx+QgDRJrf/Iu4G/66RZgBfFtMAxA+Z/i5U6P91IpIB5/pK/xuGZAFcu8P/qsZwAHgcKgDRRkMAHVEfAB2oZAGpraAAayN1AD5gO/9RDEUBh+++/9z8EgCj3Dr/iYm8/1NmbQBgBkwA6t7S/7muzQE8ntX/DfHWAKyBjABdaPIAwJz7ACt1HgDhUZ4Af+jaAOIcywDpG5f/dSsF//IOL/8hFAYAifss/hsf9f+31n3+KHmVALqe1f9ZCOMARVgA/suH4QDJrssAk0e4ABJ5Kf5eBU4A4Nbw/iQFtAD7h+cBo4rUANL5dP5YgbsAEwgx/j4OkP+fTNMA1jNSAG115P5n38v/S/wPAZpH3P8XDVsBjahg/7W2hQD6MzcA6urU/q8/ngAn8DQBnr0k/9UoVQEgtPf/E2YaAVQYYf9FFd4AlIt6/9zV6wHoy/8AeTmTAOMHmgA1FpMBSAHhAFKGMP5TPJ3/kUipACJn7wDG6S8AdBME/7hqCf+3gVMAJLDmASJnSADbooYA9SqeACCVYP6lLJAAyu9I/teWBQAqQiQBhNevAFauVv8axZz/MeiH/me2UgD9gLABmbJ6APX6CgDsGLIAiWqEACgdKQAyHpj/fGkmAOa/SwCPK6oALIMU/ywNF//t/5sBn21k/3C1GP9o3GwAN9ODAGMM1f+Yl5H/7gWfAGGbCAAhbFEAAQNnAD5tIv/6m7QAIEfD/yZGkQGfX/UAReVlAYgc8ABP4BkATm55//iofAC7gPcAApPr/k8LhABGOgwBtQij/0+Jhf8lqgv/jfNV/7Dn1//MlqT/79cn/y5XnP4Io1j/rCLoAEIsZv8bNin+7GNX/yl7qQE0cisAdYYoAJuGGgDnz1v+I4Qm/xNmff4k44X/dgNx/x0NfACYYEoBWJLO/6e/3P6iElj/tmQXAB91NABRLmoBDAIHAEVQyQHR9qwADDCNAeDTWAB04p8AemKCAEHs6gHh4gn/z+J7AVnWOwBwh1gBWvTL/zELJgGBbLoAWXAPAWUuzP9/zC3+T//d/zNJEv9/KmX/8RXKAKDjBwBpMuwATzTF/2jK0AG0DxAAZcVO/2JNywApufEBI8F8ACObF//PNcAAC32jAfmeuf8EgzAAFV1v/z155wFFyCT/uTC5/2/uFf8nMhn/Y9ej/1fUHv+kkwX/gAYjAWzfbv/CTLIASmW0APMvMACuGSv/Uq39ATZywP8oN1sA12yw/ws4BwDg6UwA0WLK/vIZfQAswV3+ywixAIewEwBwR9X/zjuwAQRDGgAOj9X+KjfQ/zxDeADBFaMAY6RzAAoUdgCc1N7+oAfZ/3L1TAF1O3sAsMJW/tUPsABOzs/+1YE7AOn7FgFgN5j/7P8P/8VZVP9dlYUArqBxAOpjqf+YdFgAkKRT/18dxv8iLw//Y3iG/wXswQD5937/k7seADLmdf9s2dv/o1Gm/0gZqf6beU//HJtZ/gd+EQCTQSEBL+r9ABozEgBpU8f/o8TmAHH4pADi/toAvdHL/6T33v7/I6UABLzzAX+zRwAl7f7/ZLrwAAU5R/5nSEn/9BJR/uXShP/uBrT/C+Wu/+PdwAERMRwAo9fE/gl2BP8z8EcAcYFt/0zw5wC8sX8AfUcsARqv8wBeqRn+G+YdAA+LdwGoqrr/rMVM//xLvACJfMQASBZg/y2X+QHckWQAQMCf/3jv4gCBspIAAMB9AOuK6gC3nZIAU8fA/7isSP9J4YAATQb6/7pBQwBo9s8AvCCK/9oY8gBDilH+7YF5/xTPlgEpxxD/BhSAAJ92BQC1EI//3CYPABdAk/5JGg0AV+Q5Acx8gAArGN8A22PHABZLFP8TG34AnT7XAG4d5gCzp/8BNvy+AN3Mtv6znkH/UZ0DAMLanwCq3wAA4Asg/ybFYgCopCUAF1gHAaS6bgBgJIYA6vLlAPp5EwDy/nD/Ay9eAQnvBv9Rhpn+1v2o/0N84AD1X0oAHB4s/gFt3P+yWVkA/CRMABjGLv9MTW8AhuqI/ydeHQC5SOr/RkSH/+dmB/5N54wApy86AZRhdv8QG+EBps6P/26y1v+0g6IAj43hAQ3aTv9ymSEBYmjMAK9ydQGnzksAysRTATpAQwCKL28BxPeA/4ng4P6ecM8AmmT/AYYlawDGgE//f9Gb/6P+uf48DvMAH9tw/h3ZQQDIDXT+ezzE/+A7uP7yWcQAexBL/pUQzgBF/jAB53Tf/9GgQQHIUGIAJcK4/pQ/IgCL8EH/2ZCE/zgmLf7HeNIAbLGm/6DeBADcfnf+pWug/1Lc+AHxr4gAkI0X/6mKVACgiU7/4nZQ/zQbhP8/YIv/mPonALybDwDoM5b+KA/o//DlCf+Jrxv/S0lhAdrUCwCHBaIBa7nVAAL5a/8o8kYA28gZABmdDQBDUlD/xPkX/5EUlQAySJIAXkyUARj7QQAfwBcAuNTJ/3vpogH3rUgAolfb/n6GWQCfCwz+pmkdAEkb5AFxeLf/QqNtAdSPC/+f56gB/4BaADkOOv5ZNAr//QijAQCR0v8KgVUBLrUbAGeIoP5+vNH/IiNvANfbGP/UC9b+ZQV2AOjFhf/fp23/7VBW/0aLXgCewb8Bmw8z/w++cwBOh8//+QobAbV96QBfrA3+qtWh/yfsiv9fXVf/voBfAH0PzgCmlp8A4w+e/86eeP8qjYAAZbJ4AZxtgwDaDiz+96jO/9RwHABwEeT/WhAlAcXebAD+z1P/CVrz//P0rAAaWHP/zXR6AL/mwQC0ZAsB2SVg/5pOnADr6h//zrKy/5XA+wC2+ocA9hZpAHzBbf8C0pX/qRGqAABgbv91CQgBMnso/8G9YwAi46AAMFBG/tMz7AAtevX+LK4IAK0l6f+eQasAekXX/1pQAv+DamD+43KHAM0xd/6wPkD/UjMR//EU8/+CDQj+gNnz/6IbAf5advEA9sb2/zcQdv/In50AoxEBAIxreQBVoXb/JgCVAJwv7gAJpqYBS2K1/zJKGQBCDy8Ai+GfAEwDjv8O7rgAC881/7fAugGrIK7/v0zdAfeq2wAZrDL+2QnpAMt+RP+3XDAAf6e3AUEx/gAQP38B/hWq/zvgf/4WMD//G06C/ijDHQD6hHD+I8uQAGipqADP/R7/aCgm/l7kWADOEID/1Dd6/98W6gDfxX8A/bW1AZFmdgDsmST/1NlI/xQmGP6KPj4AmIwEAObcY/8BFdT/lMnnAPR7Cf4Aq9IAMzol/wH/Dv/0t5H+APKmABZKhAB52CkAX8Ny/oUYl/+c4uf/9wVN//aUc/7hXFH/3lD2/qp7Wf9Kx40AHRQI/4qIRv9dS1wA3ZMx/jR+4gDlfBcALgm1AM1ANAGD/hwAl57UAINATgDOGasAAOaLAL/9bv5n96cAQCgoASql8f87S+T+fPO9/8Rcsv+CjFb/jVk4AZPGBf/L+J7+kKKNAAus4gCCKhX/AaeP/5AkJP8wWKT+qKrcAGJH1gBb0E8An0zJAaYq1v9F/wD/BoB9/74BjACSU9r/1+5IAXp/NQC9dKX/VAhC/9YD0P/VboUAw6gsAZ7nRQCiQMj+WzpoALY6u/755IgAy4ZM/mPd6QBL/tb+UEWaAECY+P7siMr/nWmZ/pWvFAAWIxP/fHnpALr6xv6E5YsAiVCu/6V9RACQypT+6+/4AIe4dgBlXhH/ekhG/kWCkgB/3vgBRX92/x5S1/68ShP/5afC/nUZQv9B6jj+1RacAJc7Xf4tHBv/un6k/yAG7wB/cmMB2zQC/2Ngpv4+vn7/bN6oAUvirgDm4scAPHXa//z4FAHWvMwAH8KG/ntFwP+prST+N2JbAN8qZv6JAWYAnVoZAO96QP/8BukABzYU/1J0rgCHJTb/D7p9AONwr/9ktOH/Ku30//St4v74EiEAq2OW/0rrMv91UiD+aqjtAM9t0AHkCboAhzyp/rNcjwD0qmj/6y18/0ZjugB1ibcA4B/XACgJZAAaEF8BRNlXAAiXFP8aZDr/sKXLATR2RgAHIP7+9P71/6eQwv99cRf/sHm1AIhU0QCKBh7/WTAcACGbDv8Z8JoAjc1tAUZzPv8UKGv+iprH/17f4v+dqyYAo7EZ/i12A/8O3hcB0b5R/3Z76AEN1WX/ezd7/hv2pQAyY0z/jNYg/2FBQ/8YDBwArlZOAUD3YACgh0MAQjfz/5PMYP8aBiH/YjNTAZnV0P8CuDb/GdoLADFD9v4SlUj/DRlIACpP1gAqBCYBG4uQ/5W7FwASpIQA9VS4/njGaP9+2mAAOHXq/w0d1v5ELwr/p5qE/pgmxgBCsln/yC6r/w1jU//Su/3/qi0qAYrRfADWoo0ADOacAGYkcP4Dk0MANNd7/+mrNv9iiT4A99on/+fa7AD3v38Aw5JUAKWwXP8T1F7/EUrjAFgomQHGkwH/zkP1/vAD2v89jdX/YbdqAMPo6/5fVpoA0TDN/nbR8f/weN8B1R2fAKN/k/8N2l0AVRhE/kYUUP+9BYwBUmH+/2Njv/+EVIX/a9p0/3B6LgBpESAAwqA//0TeJwHY/VwAsWnN/5XJwwAq4Qv/KKJzAAkHUQCl2tsAtBYA/h2S/P+Sz+EBtIdgAB+jcACxC9v/hQzB/itOMgBBcXkBO9kG/25eGAFwrG8ABw9gACRVewBHlhX/0Em8AMALpwHV9SIACeZcAKKOJ//XWhsAYmFZAF5P0wBanfAAX9x+AWaw4gAkHuD+Ix9/AOfocwFVU4IA0kn1/y+Pcv9EQcUAO0g+/7eFrf5deXb/O7FR/+pFrf/NgLEA3PQzABr00QFJ3k3/owhg/paV0wCe/ssBNn+LAKHgOwAEbRb/3iot/9CSZv/sjrsAMs31/wpKWf4wT44A3kyC/x6mPwDsDA3/Mbj0ALtxZgDaZf0AmTm2/iCWKgAZxpIB7fE4AIxEBQBbpKz/TpG6/kM0zQDbz4EBbXMRADaPOgEV+Hj/s/8eAMHsQv8B/wf//cAw/xNF2QED1gD/QGWSAd99I//rSbP/+afiAOGvCgFhojoAanCrAVSsBf+FjLL/hvWOAGFaff+6y7n/300X/8BcagAPxnP/2Zj4AKuyeP/khjUAsDbBAfr7NQDVCmQBIsdqAJcf9P6s4Ff/Du0X//1VGv9/J3T/rGhkAPsORv/U0Ir//dP6ALAxpQAPTHv/Jdqg/1yHEAEKfnL/RgXg//f5jQBEFDwB8dK9/8PZuwGXA3EAl1yuAOc+sv/bt+EAFxch/821UAA5uPj/Q7QB/1p7Xf8nAKL/YPg0/1RCjAAif+T/wooHAaZuvAAVEZsBmr7G/9ZQO/8SB48ASB3iAcfZ+QDooUcBlb7JANmvX/5xk0P/io/H/3/MAQAdtlMBzuab/7rMPAAKfVX/6GAZ//9Z9//V/q8B6MFRABwrnP4MRQgAkxj4ABLGMQCGPCMAdvYS/zFY/v7kFbr/tkFwAdsWAf8WfjT/vTUx/3AZjwAmfzf/4mWj/tCFPf+JRa4BvnaR/zxi2//ZDfX/+ogKAFT+4gDJH30B8DP7/x+Dgv8CijL/19exAd8M7v/8lTj/fFtE/0h+qv53/2QAgofo/w5PsgD6g8UAisbQAHnYi/53EiT/HcF6ABAqLf/V8OsB5r6p/8Yj5P5urUgA1t3x/ziUhwDAdU7+jV3P/49BlQAVEmL/Xyz0AWq/TQD+VQj+1m6w/0mtE/6gxMf/7VqQAMGscf/Im4j+5FrdAIkxSgGk3df/0b0F/2nsN/8qH4EBwf/sAC7ZPACKWLv/4lLs/1FFl/+OvhABDYYIAH96MP9RQJwAq/OLAO0j9gB6j8H+1HqSAF8p/wFXhE0ABNQfABEfTgAnLa3+GI7Z/18JBv/jUwYAYjuC/j4eIQAIc9MBomGA/we4F/50HKj/+IqX/2L08AC6doIAcvjr/2mtyAGgfEf/XiSkAa9Bkv/u8ar+ysbFAORHiv4t9m3/wjSeAIW7sABT/Jr+Wb3d/6pJ/ACUOn0AJEQz/ipFsf+oTFb/JmTM/yY1IwCvE2EA4e79/1FRhwDSG//+60lrAAjPcwBSf4gAVGMV/s8TiABkpGUAUNBN/4TP7f8PAw//IaZuAJxfVf8luW8Blmoj/6aXTAByV4f/n8JAAAx6H//oB2X+rXdiAJpH3P6/OTX/qOig/+AgY//anKUAl5mjANkNlAHFcVkAlRyh/s8XHgBphOP/NuZe/4WtzP9ct53/WJD8/mYhWgCfYQMAtdqb//BydwBq1jX/pb5zAZhb4f9Yaiz/0D1xAJc0fAC/G5z/bjbsAQ4epv8nf88B5cccALzkvP5knesA9tq3AWsWwf/OoF8ATO+TAM+hdQAzpgL/NHUK/kk44/+YweEAhF6I/2W/0QAga+X/xiu0AWTSdgByQ5n/F1ga/1maXAHceIz/kHLP//xz+v8izkgAioV//wiyfAFXS2EAD+Vc/vBDg/92e+P+knho/5HV/wGBu0b/23c2AAETrQAtlpQB+FNIAMvpqQGOazgA9/kmAS3yUP8e6WcAYFJGABfJbwBRJx7/obdO/8LqIf9E44z+2M50AEYb6/9okE8ApOZd/taHnACau/L+vBSD/yRtrgCfcPEABW6VASSl2gCmHRMBsi5JAF0rIP74ve0AZpuNAMldw//xi/3/D29i/2xBo/6bT77/Sa7B/vYoMP9rWAv+ymFV//3MEv9x8kIAbqDC/tASugBRFTwAvGin/3ymYf7ShY4AOPKJ/ilvggBvlzoBb9WN/7es8f8mBsT/uQd7/y4L9gD1aXcBDwKh/wjOLf8Sykr/U3xzAdSNnQBTCNH+iw/o/6w2rf4y94QA1r3VAJC4aQDf/vgA/5Pw/xe8SAAHMzYAvBm0/ty0AP9ToBQAo73z/zrRwv9XSTwAahgxAPX53AAWracAdgvD/xN+7QBunyX/O1IvALS7VgC8lNABZCWF/wdwwQCBvJz/VGqB/4XhygAO7G//KBRlAKysMf4zNkr/+7m4/12b4P+0+eAB5rKSAEg5Nv6yPrgAd81IALnv/f89D9oAxEM4/+ogqwEu2+QA0Gzq/xQ/6P+lNccBheQF/zTNawBK7oz/lpzb/u+ssv/7vd/+II7T/9oPigHxxFAAHCRi/hbqxwA97dz/9jklAI4Rjv+dPhoAK+5f/gPZBv/VGfABJ9yu/5rNMP4TDcD/9CI2/owQmwDwtQX+m8E8AKaABP8kkTj/lvDbAHgzkQBSmSoBjOySAGtc+AG9CgMAP4jyANMnGAATyqEBrRu6/9LM7/4p0aL/tv6f/6x0NADDZ97+zUU7ADUWKQHaMMIAUNLyANK8zwC7oaH+2BEBAIjhcQD6uD8A3x5i/k2oogA7Na8AE8kK/4vgwgCTwZr/1L0M/gHIrv8yhXEBXrNaAK22hwBesXEAK1nX/4j8av97hlP+BfVC/1IxJwHcAuAAYYGxAE07WQA9HZsBy6vc/1xOiwCRIbX/qRiNATeWswCLPFD/2idhAAKTa/88+EgAreYvAQZTtv8QaaL+idRR/7S4hgEn3qT/3Wn7Ae9wfQA/B2EAP2jj/5Q6DABaPOD/VNT8AE/XqAD43ccBc3kBACSseAAgorv/OWsx/5MqFQBqxisBOUpXAH7LUf+Bh8MAjB+xAN2LwgAD3tcAg0TnALFWsv58l7QAuHwmAUajEQD5+7UBKjfjAOKhLAAX7G4AM5WOAV0F7ADat2r+QxhNACj10f/eeZkApTkeAFN9PABGJlIB5Qa8AG3enf83dj//zZe6AOMhlf/+sPYB47HjACJqo/6wK08Aal9OAbnxev+5Dj0AJAHKAA2yov/3C4QAoeZcAUEBuf/UMqUBjZJA/57y2gAVpH0A1Yt6AUNHVwDLnrIBl1wrAJhvBf8nA+//2f/6/7A/R/9K9U0B+q4S/yIx4//2Lvv/miMwAX2dPf9qJE7/YeyZAIi7eP9xhqv/E9XZ/the0f/8BT0AXgPKAAMat/9Avyv/HhcVAIGNTf9meAcBwkyMALyvNP8RUZQA6FY3AeEwrACGKir/7jIvAKkS/gAUk1f/DsPv/0X3FwDu5YD/sTFwAKhi+/95R/gA8wiR/vbjmf/bqbH++4ul/wyjuf+kKKv/mZ8b/vNtW//eGHABEtbnAGudtf7DkwD/wmNo/1mMvv+xQn7+arlCADHaHwD8rp4AvE/mAe4p4ADU6ggBiAu1AKZ1U/9Ew14ALoTJAPCYWACkOUX+oOAq/zvXQ/93w43/JLR5/s8vCP+u0t8AZcVE//9SjQH6iekAYVaFARBQRQCEg58AdF1kAC2NiwCYrJ3/WitbAEeZLgAnEHD/2Yhh/9zGGf6xNTEA3liG/4APPADPwKn/wHTR/2pO0wHI1bf/Bwx6/t7LPP8hbsf++2p1AOThBAF4Ogf/3cFU/nCFGwC9yMn/i4eWAOo3sP89MkEAmGyp/9xVAf9wh+MAohq6AM9guf70iGsAXZkyAcZhlwBuC1b/j3Wu/3PUyAAFyrcA7aQK/rnvPgDseBL+Yntj/6jJwv4u6tYAv4Ux/2OpdwC+uyMBcxUt//mDSABwBnv/1jG1/qbpIgBcxWb+/eTN/wM7yQEqYi4A2yUj/6nDJgBefMEBnCvfAF9Ihf54zr8AesXv/7G7T//+LgIB+qe+AFSBEwDLcab/+R+9/kidyv/QR0n/zxhIAAoQEgHSUUz/WNDA/37za//ujXj/x3nq/4kMO/8k3Hv/lLM8/vAMHQBCAGEBJB4m/3MBXf9gZ+f/xZ47AcCk8ADKyjn/GK4wAFlNmwEqTNcA9JfpABcwUQDvfzT+44Il//h0XQF8hHYArf7AAQbrU/9ur+cB+xy2AIH5Xf5UuIAATLU+AK+AugBkNYj+bR3iAN3pOgEUY0oAABagAIYNFQAJNDf/EVmMAK8iOwBUpXf/4OLq/wdIpv97c/8BEtb2APoHRwHZ3LkA1CNM/yZ9rwC9YdIAcu4s/ym8qf4tupoAUVwWAISgwQB50GL/DVEs/8ucUgBHOhX/0HK//jImkwCa2MMAZRkSADz61//phOv/Z6+OARAOXACNH27+7vEt/5nZ7wFhqC//+VUQARyvPv85/jYA3ud+AKYtdf4SvWD/5EwyAMj0XgDGmHgBRCJF/wxBoP5lE1oAp8V4/0Q2uf8p2rwAcagwAFhpvQEaUiD/uV2kAeTw7f9CtjUAq8Vc/2sJ6QHHeJD/TjEK/22qaf9aBB//HPRx/0o6CwA+3Pb/eZrI/pDSsv9+OYEBK/oO/2VvHAEvVvH/PUaW/zVJBf8eGp4A0RpWAIrtSgCkX7wAjjwd/qJ0+P+7r6AAlxIQANFvQf7Lhif/WGwx/4MaR//dG9f+aGld/x/sH/6HANP/j39uAdRJ5QDpQ6f+wwHQ/4QR3f8z2VoAQ+sy/9/SjwCzNYIB6WrGANmt3P9w5Rj/r5pd/kfL9v8wQoX/A4jm/xfdcf7rb9UAqnhf/vvdAgAtgp7+aV7Z//I0tP7VRC3/aCYcAPSeTAChyGD/zzUN/7tDlACqNvgAd6Ky/1MUCwAqKsABkp+j/7fobwBN5RX/RzWPABtMIgD2iC//2ye2/1zgyQETjg7/Rbbx/6N29QAJbWoBqrX3/04v7v9U0rD/1WuLACcmCwBIFZYASIJFAM1Nm/6OhRUAR2+s/uIqO/+zANcBIYDxAOr8DQG4TwgAbh5J//aNvQCqz9oBSppF/4r2Mf+bIGQAfUpp/1pVPf8j5bH/Pn3B/5lWvAFJeNQA0Xv2/ofRJv+XOiwBXEXW/w4MWP/8mab//c9w/zxOU//jfG4AtGD8/zV1If6k3FL/KQEb/yakpv+kY6n+PZBG/8CmEgBr+kIAxUEyAAGzEv//aAH/K5kj/1BvqABur6gAKWkt/9sOzf+k6Yz+KwF2AOlDwwCyUp//ild6/9TuWv+QI3z+GYykAPvXLP6FRmv/ZeNQ/lypNwDXKjEAcrRV/yHoGwGs1RkAPrB7/iCFGP/hvz4AXUaZALUqaAEWv+D/yMiM//nqJQCVOY0AwzjQ//6CRv8grfD/HdzHAG5kc/+E5fkA5Onf/yXY0f6ysdH/ty2l/uBhcgCJYaj/4d6sAKUNMQHS68z//AQc/kaglwDovjT+U/hd/z7XTQGvr7P/oDJCAHkw0AA/qdH/ANLIAOC7LAFJolIACbCP/xNMwf8dO6cBGCuaABy+vgCNvIEA6OvL/+oAbf82QZ8APFjo/3n9lv786YP/xm4pAVNNR//IFjv+av3y/xUMz//tQr0AWsbKAeGsfwA1FsoAOOaEAAFWtwBtvioA80SuAW3kmgDIsXoBI6C3/7EwVf9a2qn/+JhOAMr+bgAGNCsAjmJB/z+RFgBGal0A6IprAW6zPf/TgdoB8tFcACNa2QG2j2r/dGXZ/3L63f+tzAYAPJajAEmsLP/vblD/7UyZ/qGM+QCV6OUAhR8o/66kdwBxM9YAgeQC/kAi8wBr4/T/rmrI/1SZRgEyIxAA+krY/uy9Qv+Z+Q0A5rIE/90p7gB243n/XleM/v53XABJ7/b+dVeAABPTkf+xLvwA5Vv2AUWA9//KTTYBCAsJ/5lgpgDZ1q3/hsACAQDPAAC9rmsBjIZkAJ7B8wG2ZqsA65ozAI4Fe/88qFkB2Q5c/xPWBQHTp/4ALAbK/ngS7P8Pcbj/uN+LACixd/62e1r/sKWwAPdNwgAb6ngA5wDW/zsnHgB9Y5H/lkREAY3e+ACZe9L/bn+Y/+Uh1gGH3cUAiWECAAyPzP9RKbwAc0+C/14DhACYr7v/fI0K/37As/8LZ8YAlQYtANtVuwHmErL/SLaYAAPGuP+AcOABYaHmAP5jJv86n8UAl0LbADtFj/+5cPkAd4gv/3uChACoR1//cbAoAei5rQDPXXUBRJ1s/2YFk/4xYSEAWUFv/vceo/982d0BZvrYAMauS/45NxIA4wXsAeXVrQDJbdoBMenvAB43ngEZsmoAm2+8AV5+jADXH+4BTfAQANXyGQEmR6gAzbpd/jHTjP/bALT/hnalAKCThv9uuiP/xvMqAPOSdwCG66MBBPGH/8Euwf5ntE//4QS4/vJ2ggCSh7AB6m8eAEVC1f4pYHsAeV4q/7K/w/8ugioAdVQI/+kx1v7uem0ABkdZAezTewD0DTD+d5QOAHIcVv9L7Rn/keUQ/oFkNf+Glnj+qJ0yABdIaP/gMQ4A/3sW/5e5l/+qULgBhrYUAClkZQGZIRAATJpvAVbO6v/AoKT+pXtd/wHYpP5DEa//qQs7/54pPf9JvA7/wwaJ/xaTHf8UZwP/9oLj/3oogADiLxj+IyQgAJi6t/9FyhQAw4XDAN4z9wCpq14BtwCg/0DNEgGcUw//xTr5/vtZbv8yClj+MyvYAGLyxgH1l3EAq+zCAcUfx//lUSYBKTsUAP1o5gCYXQ7/9vKS/tap8P/wZmz+oKfsAJravACW6cr/GxP6AQJHhf+vDD8BkbfGAGh4c/+C+/cAEdSn/z57hP/3ZL0Am9+YAI/FIQCbOyz/ll3wAX8DV/9fR88Bp1UB/7yYdP8KFxcAicNdATZiYQDwAKj/lLx/AIZrlwBM/asAWoTAAJIWNgDgQjb+5rrl/ye2xACU+4L/QYNs/oABoACpMaf+x/6U//sGgwC7/oH/VVI+ALIXOv/+hAUApNUnAIb8kv4lNVH/m4ZSAM2n7v9eLbT/hCihAP5vcAE2S9kAs+bdAetev/8X8zABypHL/yd2Kv91jf0A/gDeACv7MgA2qeoBUETQAJTL8/6RB4cABv4AAPy5fwBiCIH/JiNI/9Mk3AEoGlkAqEDF/gPe7/8CU9f+tJ9pADpzwgC6dGr/5ffb/4F2wQDKrrcBpqFIAMlrk/7tiEoA6eZqAWlvqABA4B4BAeUDAGaXr//C7uT//vrUALvteQBD+2ABxR4LALdfzADNWYoAQN0lAf/fHv+yMNP/8cha/6fRYP85gt0ALnLI/z24QgA3thj+brYhAKu+6P9yXh8AEt0IAC/n/gD/cFMAdg/X/60ZKP7AwR//7hWS/6vBdv9l6jX+g9RwAFnAawEI0BsAtdkP/+eV6ACM7H4AkAnH/wxPtf6Ttsr/E222/zHU4QBKo8sAr+mUABpwMwDBwQn/D4f5AJbjggDMANsBGPLNAO7Qdf8W9HAAGuUiACVQvP8mLc7+8Frh/x0DL/8q4EwAuvOnACCED/8FM30Ai4cYAAbx2wCs5YX/9tYyAOcLz/+/flMBtKOq//U4GAGypNP/AxDKAWI5dv+Ng1n+ITMYAPOVW//9NA4AI6lD/jEeWP+zGyT/pYy3ADq9lwBYHwAAS6lCAEJlx/8Y2McBecQa/w5Py/7w4lH/XhwK/1PB8P/MwYP/Xg9WANoonQAzwdEAAPKxAGa59wCebXQAJodbAN+vlQDcQgH/VjzoABlgJf/heqIB17uo/56dLgA4q6IA6PBlAXoWCQAzCRX/NRnu/9ke6P59qZQADehmAJQJJQClYY0B5IMpAN4P8//+EhEABjztAWoDcQA7hL0AXHAeAGnQ1QAwVLP/u3nn/hvYbf+i3Wv+Se/D//ofOf+Vh1n/uRdzAQOjnf8ScPoAGTm7/6FgpAAvEPMADI37/kPquP8pEqEArwZg/6CsNP4YsLf/xsFVAXx5if+XMnL/3Ms8/8/vBQEAJmv/N+5e/kaYXgDV3E0BeBFF/1Wkvv/L6lEAJjEl/j2QfACJTjH+qPcwAF+k/ABpqYcA/eSGAECmSwBRSRT/z9IKAOpqlv9eIlr//p85/tyFYwCLk7T+GBe5ACk5Hv+9YUwAQbvf/+CsJf8iPl8B55DwAE1qfv5AmFsAHWKbAOL7Nf/q0wX/kMve/6Sw3f4F5xgAs3rNACQBhv99Rpf+YeT8AKyBF/4wWtH/luBSAVSGHgDxxC4AZ3Hq/y5lef4ofPr/hy3y/gn5qP+MbIP/j6OrADKtx/9Y3o7/yF+eAI7Ao/8HdYcAb3wWAOwMQf5EJkH/467+APT1JgDwMtD/oT/6ADzR7wB6IxMADiHm/gKfcQBqFH//5M1gAInSrv601JD/WWKaASJYiwCnonABQW7FAPElqQBCOIP/CslT/oX9u/+xcC3+xPsAAMT6l//u6Nb/ltHNABzwdgBHTFMB7GNbACr6gwFgEkD/dt4jAHHWy/96d7j/QhMkAMxA+QCSWYsAhj6HAWjpZQC8VBoAMfmBANDWS//Pgk3/c6/rAKsCif+vkboBN/WH/5pWtQFkOvb/bcc8/1LMhv/XMeYBjOXA/97B+/9RiA//s5Wi/xcnHf8HX0v+v1HeAPFRWv9rMcn/9NOdAN6Mlf9B2zj+vfZa/7I7nQEw2zQAYiLXABwRu/+vqRgAXE+h/+zIwgGTj+oA5eEHAcWoDgDrMzUB/XiuAMUGqP/KdasAoxXOAHJVWv8PKQr/whNjAEE32P6iknQAMs7U/0CSHf+enoMBZKWC/6wXgf99NQn/D8ESARoxC/+1rskBh8kO/2QTlQDbYk8AKmOP/mAAMP/F+VP+aJVP/+tuiP5SgCz/QSkk/ljTCgC7ebsAYobHAKu8s/7SC+7/QnuC/jTqPQAwcRf+BlZ4/3ey9QBXgckA8o3RAMpyVQCUFqEAZ8MwABkxq/+KQ4IAtkl6/pQYggDT5ZoAIJueAFRpPQCxwgn/pllWATZTuwD5KHX/bQPX/zWSLAE/L7MAwtgD/g5UiACIsQ3/SPO6/3URff/TOtP/XU/fAFpY9f+L0W//Rt4vAAr2T//G2bIA4+ELAU5+s/8+K34AZ5QjAIEIpf718JQAPTOOAFHQhgAPiXP/03fs/5/1+P8Choj/5os6AaCk/gByVY3/Maa2/5BGVAFVtgcALjVdAAmmof83orL/Lbi8AJIcLP6pWjEAeLLxAQ57f/8H8ccBvUIy/8aPZf6984f/jRgY/kthVwB2+5oB7TacAKuSz/+DxPb/iEBxAZfoOQDw2nMAMT0b/0CBSQH8qRv/KIQKAVrJwf/8efABus4pACvGYQCRZLcAzNhQ/qyWQQD55cT+aHtJ/01oYP6CtAgAaHs5ANzK5f9m+dMAVg7o/7ZO0QDv4aQAag0g/3hJEf+GQ+kAU/61ALfscAEwQIP/8djz/0HB4gDO8WT+ZIam/+3KxQA3DVEAIHxm/yjksQB2tR8B56CG/3e7ygAAjjz/gCa9/6bJlgDPeBoBNrisAAzyzP6FQuYAIiYfAbhwUAAgM6X+v/M3ADpJkv6bp83/ZGiY/8X+z/+tE/cA7grKAO+X8gBeOyf/8B1m/wpcmv/lVNv/oYFQANBazAHw267/nmaRATWyTP80bKgBU95rANMkbQB2OjgACB0WAO2gxwCq0Z0AiUcvAI9WIADG8gIA1DCIAVysugDml2kBYL/lAIpQv/7w2IL/YisG/qjEMQD9ElsBkEl5AD2SJwE/aBj/uKVw/n7rYgBQ1WL/ezxX/1KM9QHfeK3/D8aGAc487wDn6lz/Ie4T/6VxjgGwdyYAoCum/u9baQBrPcIBGQREAA+LMwCkhGr/InQu/qhfxQCJ1BcASJw6AIlwRf6WaZr/7MmdABfUmv+IUuP+4jvd/1+VwABRdjT/ISvXAQ6TS/9ZnHn+DhJPAJPQiwGX2j7/nFgIAdK4Yv8Ur3v/ZlPlANxBdAGW+gT/XI7c/yL3Qv/M4bP+l1GXAEco7P+KPz4ABk/w/7e5tQB2MhsAP+PAAHtjOgEy4Jv/EeHf/tzgTf8OLHsBjYCvAPjUyACWO7f/k2EdAJbMtQD9JUcAkVV3AJrIugACgPn/Uxh8AA5XjwCoM/UBfJfn/9DwxQF8vrkAMDr2ABTp6AB9EmL/Df4f//Wxgv9sjiMAq33y/owMIv+loaIAzs1lAPcZIgFkkTkAJ0Y5AHbMy//yAKIApfQeAMZ04gCAb5n/jDa2ATx6D/+bOjkBNjLGAKvTHf9riqf/rWvH/22hwQBZSPL/znNZ//r+jv6xyl7/UVkyAAdpQv8Z/v/+y0AX/0/ebP8n+UsA8XwyAO+YhQDd8WkAk5diANWhef7yMYkA6SX5/iq3GwC4d+b/2SCj/9D75AGJPoP/T0AJ/l4wcQARijL+wf8WAPcSxQFDN2gAEM1f/zAlQgA3nD8BQFJK/8g1R/7vQ30AGuDeAN+JXf8e4Mr/CdyEAMYm6wFmjVYAPCtRAYgcGgDpJAj+z/KUAKSiPwAzLuD/cjBP/wmv4gDeA8H/L6Do//9daf4OKuYAGopSAdAr9AAbJyb/YtB//0CVtv8F+tEAuzwc/jEZ2v+pdM3/dxJ4AJx0k/+ENW3/DQrKAG5TpwCd24n/BgOC/zKnHv88ny//gYCd/l4DvQADpkQAU9/XAJZawgEPqEEA41Mz/82rQv82uzwBmGYt/3ea4QDw94gAZMWy/4tH3//MUhABKc4q/5zA3f/Ye/T/2tq5/7u67//8rKD/wzQWAJCutf67ZHP/006w/xsHwQCT1Wj/WskK/1B7QgEWIboAAQdj/h7OCgDl6gUANR7SAIoI3P5HN6cASOFWAXa+vAD+wWUBq/ms/16et/5dAmz/sF1M/0ljT/9KQIH+9i5BAGPxf/72l2b/LDXQ/jtm6gCar6T/WPIgAG8mAQD/tr7/c7AP/qk8gQB67fEAWkw/AD5KeP96w24AdwSyAN7y0gCCIS7+nCgpAKeScAExo2//ebDrAEzPDv8DGcYBKevVAFUk1gExXG3/yBge/qjswwCRJ3wB7MOVAFokuP9DVar/JiMa/oN8RP/vmyP/NsmkAMQWdf8xD80AGOAdAX5xkAB1FbYAy5+NAN+HTQCw5rD/vuXX/2Mltf8zFYr/Gb1Z/zEwpf6YLfcAqmzeAFDKBQAbRWf+zBaB/7T8Pv7SAVv/km7+/9uiHADf/NUBOwghAM4Q9ACB0zAAa6DQAHA70QBtTdj+IhW5//ZjOP+zixP/uR0y/1RZEwBK+mL/4SrI/8DZzf/SEKcAY4RfASvmOQD+C8v/Y7w//3fB+/5QaTYA6LW9AbdFcP/Qq6X/L220/3tTpQCSojT/mgsE/5fjWv+SiWH+Pekp/14qN/9spOwAmET+AAqMg/8Kak/+856JAEOyQv6xe8b/Dz4iAMVYKv+VX7H/mADG/5X+cf/hWqP/fdn3ABIR4ACAQnj+wBkJ/zLdzQAx1EYA6f+kAALRCQDdNNv+rOD0/144zgHyswL/H1ukAeYuiv+95twAOS89/28LnQCxW5gAHOZiAGFXfgDGWZH/p09rAPlNoAEd6eb/lhVW/jwLwQCXJST+uZbz/+TUUwGsl7QAyambAPQ86gCO6wQBQ9o8AMBxSwF088//QaybAFEenP9QSCH+Eudt/45rFf59GoT/sBA7/5bJOgDOqckA0HniACisDv+WPV7/ODmc/408kf8tbJX/7pGb/9FVH/7ADNIAY2Jd/pgQlwDhudwAjess/6CsFf5HGh//DUBd/hw4xgCxPvgBtgjxAKZllP9OUYX/gd7XAbypgf/oB2EAMXA8/9nl+wB3bIoAJxN7/oMx6wCEVJEAguaU/xlKuwAF9Tb/udvxARLC5P/xymYAaXHKAJvrTwAVCbL/nAHvAMiUPQBz99L/Md2HADq9CAEjLgkAUUEF/zSeuf99dC7/SowN/9JcrP6TF0cA2eD9/nNstP+ROjD+27EY/5z/PAGak/IA/YZXADVL5QAww97/H68y/5zSeP/QI97/EvizAQIKZf+dwvj/nsxl/2j+xf9PPgQAsqxlAWCS+/9BCpwAAoml/3QE5wDy1wEAEyMd/yuhTwA7lfYB+0KwAMghA/9Qbo7/w6ERAeQ4Qv97L5H+hASkAEOurAAZ/XIAV2FXAfrcVABgW8j/JX07ABNBdgChNPH/7awG/7C///8BQYL+377mAGX95/+SI20A+h1NATEAEwB7WpsBFlYg/9rVQQBvXX8APF2p/wh/tgARug7+/Yn2/9UZMP5M7gD/+FxG/2PgiwC4Cf8BB6TQAM2DxgFX1scAgtZfAN2V3gAXJqv+xW7VACtzjP7XsXYAYDRCAXWe7QAOQLb/Lj+u/55fvv/hzbH/KwWO/6xj1P/0u5MAHTOZ/+R0GP4eZc8AE/aW/4bnBQB9huIBTUFiAOyCIf8Fbj4ARWx//wdxFgCRFFP+wqHn/4O1PADZ0bH/5ZTU/gODuAB1sbsBHA4f/7BmUAAyVJf/fR82/xWdhf8Ts4sB4OgaACJ1qv+n/Kv/SY3O/oH6IwBIT+wB3OUU/ynKrf9jTO7/xhbg/2zGw/8kjWAB7J47/2pkVwBu4gIA4+reAJpdd/9KcKT/Q1sC/xWRIf9m1on/r+Zn/qP2pgBd93T+p+Ac/9wCOQGrzlQAe+QR/xt4dwB3C5MBtC/h/2jIuf6lAnIATU7UAC2asf8YxHn+Up22AFoQvgEMk8UAX++Y/wvrRwBWknf/rIbWADyDxACh4YEAH4J4/l/IMwBp59L/OgmU/yuo3f987Y4AxtMy/i71ZwCk+FQAmEbQ/7R1sQBGT7kA80ogAJWczwDFxKEB9TXvAA9d9v6L8DH/xFgk/6ImewCAyJ0Brkxn/62pIv7YAav/cjMRAIjkwgBuljj+avafABO4T/+WTfD/m1CiAAA1qf8dl1YARF4QAFwHbv5idZX/+U3m//0KjADWfFz+I3brAFkwOQEWNaYAuJA9/7P/wgDW+D3+O272AHkVUf6mA+QAakAa/0Xohv/y3DX+LtxVAHGV9/9hs2f/vn8LAIfRtgBfNIEBqpDO/3rIzP+oZJIAPJCV/kY8KAB6NLH/9tNl/67tCAAHM3gAEx+tAH7vnP+PvcsAxIBY/+mF4v8efa3/yWwyAHtkO//+owMB3ZS1/9aIOf7etIn/z1g2/xwh+/9D1jQB0tBkAFGqXgCRKDUA4G/n/iMc9P/ix8P+7hHmANnZpP6pnd0A2i6iAcfPo/9sc6IBDmC7/3Y8TAC4n5gA0edH/iqkuv+6mTP+3au2/6KOrQDrL8EAB4sQAV+kQP8Q3aYA28UQAIQdLP9kRXX/POtY/ihRrQBHvj3/u1idAOcLFwDtdaQA4ajf/5pydP+jmPIBGCCqAH1icf6oE0wAEZ3c/ps0BQATb6H/R1r8/61u8AAKxnn//f/w/0J70gDdwtf+eaMR/+EHYwC+MbYAcwmFAegaiv/VRIQALHd6/7NiMwCVWmoARzLm/wqZdv+xRhkApVfNADeK6gDuHmEAcZvPAGKZfwAia9v+dXKs/0y0//7yObP/3SKs/jiiMf9TA///cd29/7wZ5P4QWFn/RxzG/hYRlf/zef7/a8pj/wnODgHcL5kAa4knAWExwv+VM8X+ujoL/2sr6AHIBg7/tYVB/t3kq/97PucB4+qz/yK91P70u/kAvg1QAYJZAQDfha0ACd7G/0J/SgCn2F3/m6jGAUKRAABEZi4BrFqaANiAS/+gKDMAnhEbAXzwMQDsyrD/l3zA/ybBvgBftj0Ao5N8//+lM/8cKBH+12BOAFaR2v4fJMr/VgkFAG8pyP/tbGEAOT4sAHW4DwEt8XQAmAHc/52lvAD6D4MBPCx9/0Hc+/9LMrgANVqA/+dQwv+IgX8BFRK7/y06of9HkyIArvkL/iONHQDvRLH/c246AO6+sQFX9ab/vjH3/5JTuP+tDif/ktdoAI7feACVyJv/1M+RARC12QCtIFf//yO1AHffoQHI317/Rga6/8BDVf8yqZgAkBp7/zjzs/4URIgAJ4y8/v3QBf/Ic4cBK6zl/5xouwCX+6cANIcXAJeZSACTxWv+lJ4F/+6PzgB+mYn/WJjF/gdEpwD8n6X/7042/xg/N/8m3l4A7bcM/87M0gATJ/b+HkrnAIdsHQGzcwAAdXZ0AYQG/P+RgaEBaUONAFIl4v/u4uT/zNaB/qJ7ZP+5eeoALWznAEIIOP+EiIAArOBC/q+dvADm3+L+8ttFALgOdwFSojgAcnsUAKJnVf8x72P+nIfXAG//p/4nxNYAkCZPAfmofQCbYZz/FzTb/5YWkAAslaX/KH+3AMRN6f92gdL/qofm/9Z3xgDp8CMA/TQH/3VmMP8VzJr/s4ix/xcCAwGVgln//BGfAUY8GgCQaxEAtL48/zi2O/9uRzb/xhKB/5XgV//fFZj/iha2//qczQDsLdD/T5TyAWVG0QBnTq4AZZCs/5iI7QG/wogAcVB9AZgEjQCbljX/xHT1AO9ySf4TUhH/fH3q/yg0vwAq0p7/m4SlALIFKgFAXCj/JFVN/7LkdgCJQmD+c+JCAG7wRf6Xb1AAp67s/+Nsa/+88kH/t1H/ADnOtf8vIrX/1fCeAUdLXwCcKBj/ZtJRAKvH5P+aIikA469LABXvwwCK5V8BTMAxAHV7VwHj4YIAfT4//wLGqwD+JA3+kbrOAJT/9P8jAKYAHpbbAVzk1ABcxjz+PoXI/8kpOwB97m3/tKPuAYx6UgAJFlj/xZ0v/5leOQBYHrYAVKFVALKSfACmpgf/FdDfAJy28gCbebkAU5yu/poQdv+6U+gB3zp5/x0XWAAjfX//qgWV/qQMgv+bxB0AoWCIAAcjHQGiJfsAAy7y/wDZvAA5ruIBzukCADm7iP57vQn/yXV//7okzADnGdgAUE5pABOGgf+Uy0QAjVF9/vilyP/WkIcAlzem/ybrWwAVLpoA3/6W/yOZtP99sB0BK2Ie/9h65v/poAwAObkM/vBxB/8FCRD+GltsAG3GywAIkygAgYbk/3y6KP9yYoT+poQXAGNFLAAJ8u7/uDU7AISBZv80IPP+k9/I/3tTs/6HkMn/jSU4AZc84/9aSZwBy6y7AFCXL/9eief/JL87/+HRtf9K19X+Bnaz/5k2wQEyAOcAaJ1IAYzjmv+24hD+YOFc/3MUqv4G+k4A+Eut/zVZBv8AtHYASK0BAEAIzgGuhd8AuT6F/9YLYgDFH9AAq6f0/xbntQGW2rkA96lhAaWL9/8veJUBZ/gzADxFHP4Zs8QAfAfa/jprUQC46Zz//EokAHa8QwCNXzX/3l6l/i49NQDOO3P/L+z6/0oFIAGBmu7/aiDiAHm7Pf8DpvH+Q6qs/x3Ysv8XyfwA/W7zAMh9OQBtwGD/NHPuACZ58//JOCEAwnaCAEtgGf+qHub+Jz/9ACQt+v/7Ae8AoNRcAS3R7QDzIVf+7VTJ/9QSnf7UY3//2WIQ/ous7wCoyYL/j8Gp/+6XwQHXaCkA7z2l/gID8gAWy7H+scwWAJWB1f4fCyn/AJ95/qAZcv+iUMgAnZcLAJqGTgHYNvwAMGeFAGncxQD9qE3+NbMXABh58AH/LmD/azyH/mLN+f8/+Xf/eDvT/3K0N/5bVe0AldRNAThJMQBWxpYAXdGgAEXNtv/0WisAFCSwAHp03QAzpycB5wE//w3FhgAD0SL/hzvKAKdkTgAv30wAuTw+ALKmewGEDKH/Pa4rAMNFkAB/L78BIixOADnqNAH/Fij/9l6SAFPkgAA8TuD/AGDS/5mv7ACfFUkAtHPE/oPhagD/p4YAnwhw/3hEwv+wxMb/djCo/12pAQBwyGYBShj+ABONBP6OPj8Ag7O7/02cm/93VqQAqtCS/9CFmv+Umzr/onjo/vzVmwDxDSoAXjKDALOqcACMU5f/N3dUAYwj7/+ZLUMB7K8nADaXZ/+eKkH/xO+H/lY1ywCVYS/+2CMR/0YDRgFnJFr/KBqtALgwDQCj29n/UQYB/92qbP7p0F0AZMn5/lYkI//Rmh4B48n7/wK9p/5kOQMADYApAMVkSwCWzOv/ka47AHj4lf9VN+EActI1/sfMdwAO90oBP/uBAENolwGHglAAT1k3/3Xmnf8ZYI8A1ZEFAEXxeAGV81//cioUAINIAgCaNRT/ST5tAMRmmAApDMz/eiYLAfoKkQDPfZQA9vTe/ykgVQFw1X4AovlWAUfGf/9RCRUBYicE/8xHLQFLb4kA6jvnACAwX//MH3IBHcS1/zPxp/5dbY4AaJAtAOsMtf80cKQATP7K/64OogA965P/K0C5/ul92QDzWKf+SjEIAJzMQgB81nsAJt12AZJw7AByYrEAl1nHAFfFcAC5laEALGClAPizFP+829j+KD4NAPOOjQDl487/rMoj/3Ww4f9SbiYBKvUO/xRTYQAxqwoA8nd4ABnoPQDU8JP/BHM4/5ER7/7KEfv/+RL1/2N17wC4BLP/9u0z/yXvif+mcKb/Ubwh/7n6jv82u60A0HDJAPYr5AFouFj/1DTE/zN1bP/+dZsALlsP/1cOkP9X48wAUxpTAZ9M4wCfG9UBGJdsAHWQs/6J0VIAJp8KAHOFyQDftpwBbsRd/zk86QAFp2n/msWkAGAiuv+ThSUB3GO+AAGnVP8UkasAwsX7/l9Ohf/8+PP/4V2D/7uGxP/YmaoAFHae/owBdgBWng8BLdMp/5MBZP5xdEz/039sAWcPMADBEGYBRTNf/2uAnQCJq+kAWnyQAWqhtgCvTOwByI2s/6M6aADptDT/8P0O/6Jx/v8m74r+NC6mAPFlIf6DupwAb9A+/3xeoP8frP4AcK44/7xjG/9DivsAfTqAAZyYrv+yDPf//FSeAFLFDv6syFP/JScuAWrPpwAYvSIAg7KQAM7VBACh4tIASDNp/2Etu/9OuN//sB37AE+gVv90JbIAUk3VAVJUjf/iZdQBr1jH//Ve9wGsdm3/prm+AIO1eABX/l3/hvBJ/yD1j/+Lomf/s2IS/tnMcACT33j/NQrzAKaMlgB9UMj/Dm3b/1vaAf/8/C/+bZx0/3MxfwHMV9P/lMrZ/xpV+f8O9YYBTFmp//It5gA7Yqz/ckmE/k6bMf+eflQAMa8r/xC2VP+dZyMAaMFt/0PdmgDJrAH+CKJYAKUBHf99m+X/HprcAWfvXADcAW3/ysYBAF4CjgEkNiwA6+Ke/6r71v+5TQkAYUryANujlf/wI3b/33JY/sDHAwBqJRj/yaF2/2FZYwHgOmf/ZceT/t48YwDqGTsBNIcbAGYDW/6o2OsA5eiIAGg8gQAuqO4AJ79DAEujLwCPYWL/ONioAajp/P8jbxb/XFQrABrIVwFb/ZgAyjhGAI4ITQBQCq8B/MdMABZuUv+BAcIAC4A9AVcOkf/93r4BD0iuAFWjVv46Yyz/LRi8/hrNDwAT5dL++EPDAGNHuACaxyX/l/N5/yYzS//JVYL+LEH6ADmT8/6SKzv/WRw1ACFUGP+zMxL+vUZTAAucswFihncAnm9vAHeaSf/IP4z+LQ0N/5rAAv5RSCoALqC5/ixwBgCS15UBGrBoAEQcVwHsMpn/s4D6/s7Bv/+mXIn+NSjvANIBzP6orSMAjfMtASQybf8P8sL/4596/7Cvyv5GOUgAKN84ANCiOv+3Yl0AD28MAB4ITP+Ef/b/LfJnAEW1D/8K0R4AA7N5APHo2gF7x1j/AtLKAbyCUf9eZdABZyQtAEzBGAFfGvH/paK7ACRyjADKQgX/JTiTAJgL8wF/Vej/+ofUAbmxcQBa3Ev/RfiSADJvMgBcFlAA9CRz/qNkUv8ZwQYBfz0kAP1DHv5B7Kr/oRHX/j+vjAA3fwQAT3DpAG2gKACPUwf/QRru/9mpjP9OXr3/AJO+/5NHuv5qTX//6Z3pAYdX7f/QDewBm20k/7Rk2gC0oxIAvm4JARE/e/+ziLT/pXt7/5C8Uf5H8Gz/GXAL/+PaM/+nMur/ck9s/x8Tc/+38GMA41eP/0jZ+P9mqV8BgZWVAO6FDAHjzCMA0HMaAWYI6gBwWI8BkPkOAPCerP5kcHcAwo2Z/ig4U/95sC4AKjVM/56/mgBb0VwArQ0QAQVI4v/M/pUAULjPAGQJev52Zav//MsA/qDPNgA4SPkBOIwN/wpAa/5bZTT/4bX4AYv/hADmkREA6TgXAHcB8f/VqZf/Y2MJ/rkPv/+tZ20Brg37/7JYB/4bO0T/CiEC//hhOwAaHpIBsJMKAF95zwG8WBgAuV7+/nM3yQAYMkYAeDUGAI5CkgDk4vn/aMDeAa1E2wCiuCT/j2aJ/50LFwB9LWIA613h/jhwoP9GdPMBmfk3/4EnEQHxUPQAV0UVAV7kSf9OQkH/wuPnAD2SV/+tmxf/cHTb/tgmC/+DuoUAXtS7AGQvWwDM/q//3hLX/q1EbP/j5E//Jt3VAKPjlv4fvhIAoLMLAQpaXv/crlgAo9Pl/8eINACCX93/jLzn/otxgP91q+z+MdwU/zsUq//kbbwAFOEg/sMQrgDj/ogBhydpAJZNzv/S7uIAN9SE/u85fACqwl3/+RD3/xiXPv8KlwoAT4uy/3jyygAa29UAPn0j/5ACbP/mIVP/US3YAeA+EQDW2X0AYpmZ/7Owav6DXYr/bT4k/7J5IP94/EYA3PglAMxYZwGA3Pv/7OMHAWoxxv88OGsAY3LuANzMXgFJuwEAWZoiAE7Zpf8Ow/n/Ceb9/82H9QAa/Af/VM0bAYYCcAAlniAA51vt/7+qzP+YB94AbcAxAMGmkv/oE7X/aY40/2cQGwH9yKUAw9kE/zS9kP97m6D+V4I2/054Pf8OOCkAGSl9/1eo9QDWpUYA1KkG/9vTwv5IXaT/xSFn/yuOjQCD4awA9GkcAERE4QCIVA3/gjko/otNOABUljUANl+dAJANsf5fc7oAdRd2//Sm8f8LuocAsmrL/2HaXQAr/S0ApJgEAIt27wBgARj+65nT/6huFP8y77AAcinoAMH6NQD+oG/+iHop/2FsQwDXmBf/jNHUACq9owDKKjL/amq9/75E2f/pOnUA5dzzAcUDBAAleDb+BJyG/yQ9q/6liGT/1OgOAFquCgDYxkH/DANAAHRxc//4ZwgA530S/6AcxQAeuCMB30n5/3sULv6HOCX/rQ3lAXehIv/1PUkAzX1wAIlohgDZ9h7/7Y6PAEGfZv9spL4A23Wt/yIleP7IRVAAH3za/koboP+6msf/R8f8AGhRnwERyCcA0z3AARruWwCU2QwAO1vV/wtRt/+B5nr/csuRAXe0Qv9IirQA4JVqAHdSaP/QjCsAYgm2/81lhv8SZSYAX8Wm/8vxkwA+0JH/hfb7AAKpDgAN97gAjgf+ACTIF/9Yzd8AW4E0/xW6HgCP5NIB9+r4/+ZFH/6wuof/7s00AYtPKwARsNn+IPNDAPJv6QAsIwn/43JRAQRHDP8mab8AB3Uy/1FPEAA/REH/nSRu/03xA//iLfsBjhnOAHh70QEc/u7/BYB+/1ve1/+iD78AVvBJAIe5Uf4s8aMA1NvS/3CimwDPZXYAqEg4/8QFNABIrPL/fhad/5JgO/+ieZj+jBBfAMP+yP5SlqIAdyuR/sysTv+m4J8AaBPt//V+0P/iO9UAddnFAJhI7QDcHxf+Dlrn/7zUQAE8Zfb/VRhWAAGxbQCSUyABS7bAAHfx4AC57Rv/uGVSAeslTf/9hhMA6PZ6ADxqswDDCwwAbULrAX1xOwA9KKQAr2jwAAIvu/8yDI0Awou1/4f6aABhXN7/2ZXJ/8vxdv9Pl0MAeo7a/5X17wCKKsj+UCVh/3xwp/8kilf/gh2T//FXTv/MYRMBsdEW//fjf/5jd1P/1BnGARCzswCRTaz+WZkO/9q9pwBr6Tv/IyHz/ixwcP+hf08BzK8KACgViv5odOQAx1+J/4W+qP+SpeoBt2MnALfcNv7/3oUAott5/j/vBgDhZjb/+xL2AAQigQGHJIMAzjI7AQ9htwCr2If/ZZgr/5b7WwAmkV8AIswm/rKMU/8ZgfP/TJAlAGokGv52kKz/RLrl/2uh1f8uo0T/lar9ALsRDwDaoKX/qyP2AWANEwCly3UA1mvA//R7sQFkA2gAsvJh//tMgv/TTSoB+k9G/z/0UAFpZfYAPYg6Ae5b1QAOO2L/p1RNABGELv45r8X/uT64AExAzwCsr9D+r0olAIob0/6UfcIACllRAKjLZf8r1dEB6/U2AB4j4v8JfkYA4n1e/px1FP85+HAB5jBA/6RcpgHg1ub/JHiPADcIK//7AfUBamKlAEprav41BDb/WrKWAQN4e//0BVkBcvo9//6ZUgFNDxEAOe5aAV/f5gDsNC/+Z5Sk/3nPJAESELn/SxRKALsLZQAuMIH/Fu/S/03sgf9vTcz/PUhh/8fZ+/8q18wAhZHJ/znmkgHrZMYAkkkj/mzGFP+2T9L/UmeIAPZssAAiETz/E0py/qiqTv+d7xT/lSmoADp5HABPs4b/53mH/67RYv/zer4Aq6bNANR0MAAdbEL/ot62AQ53FQDVJ/n//t/k/7elxgCFvjAAfNBt/3evVf8J0XkBMKu9/8NHhgGI2zP/tluN/jGfSAAjdvX/cLrj/zuJHwCJLKMAcmc8/gjVlgCiCnH/wmhIANyDdP+yT1wAy/rV/l3Bvf+C/yL+1LyXAIgRFP8UZVP/1M6mAOXuSf+XSgP/qFfXAJu8hf+mgUkA8E+F/7LTUf/LSKP+wailAA6kx/4e/8wAQUhbAaZKZv/IKgD/wnHj/0IX0ADl2GT/GO8aAArpPv97CrIBGiSu/3fbxwEto74AEKgqAKY5xv8cGhoAfqXnAPtsZP895Xn/OnaKAEzPEQANInD+WRCoACXQaf8jydf/KGpl/gbvcgAoZ+L+9n9u/z+nOgCE8I4ABZ5Y/4FJnv9eWZIA5jaSAAgtrQBPqQEAc7r3AFRAgwBD4P3/z71AAJocUQEtuDb/V9Tg/wBgSf+BIesBNEJQ//uum/8EsyUA6qRd/l2v/QDGRVf/4GouAGMd0gA+vHL/LOoIAKmv9/8XbYn/5bYnAMClXv71ZdkAv1hgAMReY/9q7gv+NX7zAF4BZf8ukwIAyXx8/40M2gANpp0BMPvt/5v6fP9qlJL/tg3KABw9pwDZmAj+3IIt/8jm/wE3QVf/Xb9h/nL7DgAgaVwBGs+NABjPDf4VMjD/upR0/9Mr4QAlIqL+pNIq/0QXYP+21gj/9XWJ/0LDMgBLDFP+UIykAAmlJAHkbuMA8RFaARk01AAG3wz/i/M5AAxxSwH2t7//1b9F/+YPjgABw8T/iqsv/0A/agEQqdb/z644AVhJhf+2hYwAsQ4Z/5O4Nf8K46H/eNj0/0lN6QCd7osBO0HpAEb72AEpuJn/IMtwAJKT/QBXZW0BLFKF//SWNf9emOj/O10n/1iT3P9OUQ0BIC/8/6ATcv9dayf/dhDTAbl30f/j23/+WGns/6JuF/8kpm7/W+zd/0LqdABvE/T+CukaACC3Bv4Cv/IA2pw1/ik8Rv+o7G8Aebl+/+6Oz/83fjQA3IHQ/lDMpP9DF5D+2ihs/3/KpADLIQP/Ap4AACVgvP/AMUoAbQQAAG+nCv5b2of/y0Kt/5bC4gDJ/Qb/rmZ5AM2/bgA1wgQAUSgt/iNmj/8MbMb/EBvo//xHugGwbnIAjgN1AXFNjgATnMUBXC/8ADXoFgE2EusALiO9/+zUgQACYND+yO7H/zuvpP+SK+cAwtk0/wPfDACKNrL+VevPAOjPIgAxNDL/pnFZ/wot2P8+rRwAb6X2AHZzW/+AVDwAp5DLAFcN8wAWHuQBsXGS/4Gq5v78mYH/keErAEbnBf96aX7+VvaU/24lmv7RA1sARJE+AOQQpf833fn+stJbAFOS4v5FkroAXdJo/hAZrQDnuiYAvXqM//sNcP9pbl0A+0iqAMAX3/8YA8oB4V3kAJmTx/5tqhYA+GX2/7J8DP+y/mb+NwRBAH3WtAC3YJMALXUX/oS/+QCPsMv+iLc2/5LqsQCSZVb/LHuPASHRmADAWin+Uw99/9WsUgDXqZAAEA0iACDRZP9UEvkBxRHs/9m65gAxoLD/b3Zh/+1o6wBPO1z+RfkL/yOsSgETdkQA3nyl/7RCI/9WrvYAK0pv/36QVv/k6lsA8tUY/kUs6//ctCMACPgH/2YvXP/wzWb/cearAR+5yf/C9kb/ehG7AIZGx/+VA5b/dT9nAEFoe//UNhMBBo1YAFOG8/+INWcAqRu0ALExGABvNqcAwz3X/x8BbAE8KkYAuQOi/8KVKP/2fyb+vncm/z13CAFgodv/KsvdAbHypP/1nwoAdMQAAAVdzf6Af7MAfe32/5Wi2f9XJRT+jO7AAAkJwQBhAeIAHSYKAACIP//lSNL+JoZc/07a0AFoJFT/DAXB//KvPf+/qS4Bs5OT/3G+i/59rB8AA0v8/tckDwDBGxgB/0WV/26BdgDLXfkAiolA/iZGBgCZdN4AoUp7AMFjT/92O17/PQwrAZKxnQAuk78AEP8mAAszHwE8OmL/b8JNAZpb9ACMKJABrQr7AMvRMv5sgk4A5LRaAK4H+gAfrjwAKaseAHRjUv92wYv/u63G/tpvOAC5e9gA+Z40ADS0Xf/JCVv/OC2m/oSby/866G4ANNNZ//0AogEJV7cAkYgsAV569QBVvKsBk1zGAAAIaAAeX64A3eY0Aff36/+JrjX/IxXM/0fj1gHoUsIACzDj/6pJuP/G+/z+LHAiAINlg/9IqLsAhId9/4poYf/uuKj/82hU/4fY4v+LkO0AvImWAVA4jP9Wqaf/wk4Z/9wRtP8RDcEAdYnU/43glwAx9K8AwWOv/xNjmgH/QT7/nNI3//L0A//6DpUAnljZ/53Phv776BwALpz7/6s4uP/vM+oAjoqD/xn+8wEKycIAP2FLANLvogDAyB8BddbzABhH3v42KOj/TLdv/pAOV//WT4j/2MTUAIQbjP6DBf0AfGwT/xzXSwBM3jf+6bY/AESrv/40b97/CmlN/1Cq6wCPGFj/Led5AJSB4AE99lQA/S7b/+9MIQAxlBL+5iVFAEOGFv6Om14AH53T/tUqHv8E5Pf+/LAN/ycAH/7x9P//qi0K/v3e+QDecoQA/y8G/7SjswFUXpf/WdFS/uU0qf/V7AAB1jjk/4d3l/9wycEAU6A1/gaXQgASohEA6WFbAIMFTgG1eDX/dV8//+11uQC/foj/kHfpALc5YQEvybv/p6V3AS1kfgAVYgb+kZZf/3g2mADRYmgAj28e/riU+QDr2C4A+MqU/zlfFgDy4aMA6ffo/0erE/9n9DH/VGdd/0R59AFS4A0AKU8r//nOp//XNBX+wCAW//dvPABlSib/FltU/h0cDf/G59f+9JrIAN+J7QDThA4AX0DO/xE+9//pg3kBXRdNAM3MNP5RvYgAtNuKAY8SXgDMK4z+vK/bAG9ij/+XP6L/0zJH/hOSNQCSLVP+slLu/xCFVP/ixl3/yWEU/3h2I/9yMuf/ouWc/9MaDAByJ3P/ztSGAMXZoP90gV7+x9fb/0vf+QH9dLX/6Ndo/+SC9v+5dVYADgUIAO8dPQHtV4X/fZKJ/syo3wAuqPUAmmkWANzUof9rRRj/idq1//FUxv+CetP/jQiZ/76xdgBgWbIA/xAw/npgaf91Nuj/In5p/8xDpgDoNIr/05MMABk2BwAsD9f+M+wtAL5EgQFqk+EAHF0t/uyND/8RPaEA3HPAAOyRGP5vqKkA4Do//3+kvABS6ksB4J6GANFEbgHZptkARuGmAbvBj/8QB1j/Cs2MAHXAnAEROCYAG3xsAavXN/9f/dQAm4eo//aymf6aREoA6D1g/mmEOwAhTMcBvbCC/wloGf5Lxmb/6QFwAGzcFP9y5kYAjMKF/zmepP6SBlD/qcRhAVW3ggBGnt4BO+3q/2AZGv/or2H/C3n4/lgjwgDbtPz+SgjjAMPjSQG4bqH/MemkAYA1LwBSDnn/wb46ADCudf+EFyAAKAqGARYzGf/wC7D/bjmSAHWP7wGdZXb/NlRMAM24Ev8vBEj/TnBV/8EyQgFdEDT/CGmGAAxtSP86nPsAkCPMACygdf4ya8IAAUSl/29uogCeUyj+TNbqADrYzf+rYJP/KONyAbDj8QBG+bcBiFSL/zx69/6PCXX/sa6J/kn3jwDsuX7/Phn3/y1AOP+h9AYAIjk4AWnKUwCAk9AABmcK/0qKQf9hUGT/1q4h/zKGSv9ul4L+b1SsAFTHS/74O3D/CNiyAQm3XwDuGwj+qs3cAMPlhwBiTO3/4lsaAVLbJ//hvscB2ch5/1GzCP+MQc4Ass9X/vr8Lv9oWW4B/b2e/5DWnv+g9Tb/NbdcARXIwv+SIXEB0QH/AOtqK/+nNOgAneXdADMeGQD63RsBQZNX/097xABBxN//TCwRAVXxRADKt/n/QdTU/wkhmgFHO1AAr8I7/41ICQBkoPQA5tA4ADsZS/5QwsIAEgPI/qCfcwCEj/cBb105/zrtCwGG3of/eqNsAXsrvv/7vc7+ULZI/9D24AERPAkAoc8mAI1tWwDYD9P/iE5uAGKjaP8VUHn/rbK3AX+PBABoPFL+1hAN/2DuIQGelOb/f4E+/zP/0v8+jez+nTfg/3In9ADAvPr/5Ew1AGJUUf+tyz3+kzI3/8zrvwA0xfQAWCvT/hu/dwC855oAQlGhAFzBoAH643gAezfiALgRSACFqAr+Foec/ykZZ/8wyjoAupVR/7yG7wDrtb3+2Yu8/0owUgAu2uUAvf37ADLlDP/Tjb8BgPQZ/6nnev5WL73/hLcX/yWylv8zif0AyE4fABZpMgCCPAAAhKNb/hfnuwDAT+8AnWak/8BSFAEYtWf/8AnqAAF7pP+F6QD/yvLyADy69QDxEMf/4HSe/r99W//gVs8AeSXn/+MJxv8Pme//eejZ/ktwUgBfDDn+M9Zp/5TcYQHHYiQAnNEM/grUNADZtDf+1Kro/9gUVP+d+ocAnWN//gHOKQCVJEYBNsTJ/1d0AP7rq5YAG6PqAMqHtADQXwD+e5xdALc+SwCJ67YAzOH//9aL0v8Ccwj/HQxvADScAQD9Ffv/JaUf/gyC0wBqEjX+KmOaAA7ZPf7YC1z/yMVw/pMmxwAk/Hj+a6lNAAF7n//PS2YAo6/EACwB8AB4urD+DWJM/+188f/okrz/yGDgAMwfKQDQyA0AFeFg/6+cxAD30H4APrj0/gKrUQBVc54ANkAt/xOKcgCHR80A4y+TAdrnQgD90RwA9A+t/wYPdv4QltD/uRYy/1Zwz/9LcdcBP5Ir/wThE/7jFz7/Dv/W/i0Izf9XxZf+0lLX//X49/+A+EYA4fdXAFp4RgDV9VwADYXiAC+1BQFco2n/Bh6F/uiyPf/mlRj/EjGeAORkPf508/v/TUtcAVHbk/9Mo/7+jdX2AOglmP5hLGQAySUyAdT0OQCuq7f/+UpwAKacHgDe3WH/811J/vtlZP/Y2V3//oq7/46+NP87y7H/yF40AHNynv+lmGgBfmPi/3ad9AFryBAAwVrlAHkGWACcIF3+ffHT/w7tnf+lmhX/uOAW//oYmP9xTR8A96sX/+2xzP80iZH/wrZyAODqlQAKb2cByYEEAO6OTgA0Bij/btWl/jzP/QA+10UAYGEA/zEtygB4eRb/64swAcYtIv+2MhsBg9Jb/y42gACve2n/xo1O/kP07//1Nmf+Tiby/wJc+f77rlf/iz+QABhsG/8iZhIBIhaYAELldv4yj2MAkKmVAXYemACyCHkBCJ8SAFpl5v+BHXcARCQLAei3NwAX/2D/oSnB/z+L3gAPs/MA/2QP/1I1hwCJOZUBY/Cq/xbm5P4xtFL/PVIrAG712QDHfT0ALv00AI3F2wDTn8EAN3lp/rcUgQCpd6r/y7KL/4cotv+sDcr/QbKUAAjPKwB6NX8BSqEwAOPWgP5WC/P/ZFYHAfVEhv89KxUBmFRe/748+v7vduj/1oglAXFMa/9daGQBkM4X/26WmgHkZ7kA2jEy/odNi/+5AU4AAKGU/2Ed6f/PlJX/oKgAAFuAq/8GHBP+C2/3ACe7lv+K6JUAdT5E/z/YvP/r6iD+HTmg/xkM8QGpPL8AIION/+2fe/9exV7+dP4D/1yzYf55YVz/qnAOABWV+AD44wMAUGBtAEvASgEMWuL/oWpEAdByf/9yKv/+ShpK//ezlv55jDwAk0bI/9Yoof+hvMn/jUGH//Jz/AA+L8oAtJX//oI37QClEbr/CqnCAJxt2v9wjHv/aIDf/rGObP95Jdv/gE0S/29sFwFbwEsArvUW/wTsPv8rQJkB463+AO16hAF/Wbr/jlKA/vxUrgBas7EB89ZX/2c8ov/Qgg7/C4KLAM6B2/9e2Z3/7+bm/3Rzn/6ka18AM9oCAdh9xv+MyoD+C19E/zcJXf6umQb/zKxgAEWgbgDVJjH+G1DVAHZ9cgBGRkP/D45J/4N6uf/zFDL+gu0oANKfjAHFl0H/VJlCAMN+WgAQ7uwBdrtm/wMYhf+7ReYAOMVcAdVFXv9QiuUBzgfmAN5v5gFb6Xf/CVkHAQJiAQCUSoX/M/a0/+SxcAE6vWz/wsvt/hXRwwCTCiMBVp3iAB+ji/44B0v/Plp0ALU8qQCKotT+UacfAM1acP8hcOMAU5d1AbHgSf+ukNn/5sxP/xZN6P9yTuoA4Dl+/gkxjQDyk6UBaLaM/6eEDAF7RH8A4VcnAftsCADGwY8BeYfP/6wWRgAyRHT/Za8o//hp6QCmywcAbsXaANf+Gv6o4v0AH49gAAtnKQC3gcv+ZPdK/9V+hADSkywAx+obAZQvtQCbW54BNmmv/wJOkf5mml8AgM9//jR87P+CVEcA3fPTAJiqzwDeascAt1Re/lzIOP+KtnMBjmCSAIWI5ABhEpYAN/tCAIxmBADKZ5cAHhP4/zO4zwDKxlkAN8Xh/qlf+f9CQUT/vOp+AKbfZAFw7/QAkBfCADontgD0LBj+r0Sz/5h2mgGwooIA2XLM/q1+Tv8h3h7/JAJb/wKP8wAJ69cAA6uXARjX9f+oL6T+8ZLPAEWBtABE83EAkDVI/vstDgAXbqgARERP/25GX/6uW5D/Ic5f/4kpB/8Tu5n+I/9w/wmRuf4ynSUAC3AxAWYIvv/q86kBPFUXAEonvQB0Me8ArdXSAC6hbP+fliUAxHi5/yJiBv+Zwz7/YeZH/2Y9TAAa1Oz/pGEQAMY7kgCjF8QAOBg9ALViwQD7k+X/Yr0Y/y42zv/qUvYAt2cmAW0+zAAK8OAAkhZ1/46aeABF1CMA0GN2AXn/A/9IBsIAdRHF/30PFwCaT5kA1l7F/7k3k/8+/k7+f1KZAG5mP/9sUqH/abvUAVCKJwA8/13/SAy6ANL7HwG+p5D/5CwT/oBD6ADW+Wv+iJFW/4QusAC9u+P/0BaMANnTdAAyUbr+i/ofAB5AxgGHm2QAoM4X/rui0/8QvD8A/tAxAFVUvwDxwPL/mX6RAeqiov/mYdgBQId+AL6U3wE0ACv/HCe9AUCI7gCvxLkAYuLV/3+f9AHirzwAoOmOAbTzz/9FmFkBH2UVAJAZpP6Lv9EAWxl5ACCTBQAnunv/P3Pm/12nxv+P1dz/s5wT/xlCegDWoNn/Ai0+/2pPkv4ziWP/V2Tn/6+R6P9luAH/rgl9AFIloQEkco3/MN6O//W6mgAFrt3+P3Kb/4c3oAFQH4cAfvqzAezaLQAUHJEBEJNJAPm9hAERvcD/347G/0gUD//6Ne3+DwsSABvTcf7Vazj/rpOS/2B+MAAXwW0BJaJeAMed+f4YgLv/zTGy/l2kKv8rd+sBWLft/9rSAf9r/ioA5gpj/6IA4gDb7VsAgbLLANAyX/7O0F//979Z/m7qT/+lPfMAFHpw//b2uf5nBHsA6WPmAdtb/P/H3hb/s/Xp/9Px6gBv+sD/VVSIAGU6Mv+DrZz+dy0z/3bpEP7yWtYAXp/bAQMD6v9iTFz+UDbmAAXk5/41GN//cTh2ARSEAf+r0uwAOPGe/7pzE/8I5a4AMCwAAXJypv8GSeL/zVn0AInjSwH4rTgASnj2/ncDC/9ReMb/iHpi/5Lx3QFtwk7/3/FGAdbIqf9hvi//L2eu/2NcSP526bT/wSPp/hrlIP/e/MYAzCtH/8dUrACGZr4Ab+5h/uYo5gDjzUD+yAzhAKYZ3gBxRTP/j58YAKe4SgAd4HT+ntDpAMF0fv/UC4X/FjqMAcwkM//oHisA60a1/0A4kv6pElT/4gEN/8gysP801fX+qNFhAL9HNwAiTpwA6JA6AblKvQC6jpX+QEV//6HLk/+wl78AiOfL/qO2iQChfvv+6SBCAETPQgAeHCUAXXJgAf5c9/8sq0UAyncL/7x2MgH/U4j/R1IaAEbjAgAg63kBtSmaAEeG5f7K/yQAKZgFAJo/Sf8itnwAed2W/xrM1QEprFcAWp2S/22CFABHa8j/82a9AAHDkf4uWHUACM7jAL9u/f9tgBT+hlUz/4mxcAHYIhb/gxDQ/3mVqgByExcBplAf/3HwegDos/oARG60/tKqdwDfbKT/z0/p/xvl4v7RYlH/T0QHAIO5ZACqHaL/EaJr/zkVCwFkyLX/f0GmAaWGzABop6gAAaRPAJKHOwFGMoD/ZncN/uMGhwCijrP/oGTeABvg2wGeXcP/6o2JABAYff/uzi//YRFi/3RuDP9gc00AW+Po//j+T/9c5Qb+WMaLAM5LgQD6Tc7/jfR7AYpF3AAglwYBg6cW/+1Ep/7HvZYAo6uK/zO8Bv9fHYn+lOKzALVr0P+GH1L/l2Ut/4HK4QDgSJMAMIqX/8NAzv7t2p4Aah2J/v296f9nDxH/wmH/ALItqf7G4ZsAJzB1/4dqcwBhJrUAli9B/1OC5f72JoEAXO+a/ltjfwChbyH/7tny/4O5w//Vv57/KZbaAISpgwBZVPwBq0aA/6P4y/4BMrT/fExVAftvUABjQu//mu22/91+hf5KzGP/QZN3/2M4p/9P+JX/dJvk/+0rDv5FiQv/FvrxAVt6j//N+fMA1Bo8/zC2sAEwF7//y3mY/i1K1f8+WhL+9aPm/7lqdP9TI58ADCEC/1AiPgAQV67/rWVVAMokUf6gRcz/QOG7ADrOXgBWkC8A5Vb1AD+RvgElBScAbfsaAImT6gCieZH/kHTO/8Xouf+3voz/SQz+/4sU8v+qWu//YUK7//W1h/7eiDQA9QUz/ssvTgCYZdgASRd9AP5gIQHr0kn/K9FYAQeBbQB6aOT+qvLLAPLMh//KHOn/QQZ/AJ+QRwBkjF8ATpYNAPtrdgG2On3/ASZs/4290f8Im30BcaNb/3lPvv+G72z/TC/4AKPk7wARbwoAWJVL/9fr7wCnnxj/L5ds/2vRvADp52P+HMqU/64jiv9uGET/AkW1AGtmUgBm7QcAXCTt/92iUwE3ygb/h+qH/xj63gBBXqj+9fjS/6dsyf7/oW8AzQj+AIgNdABksIT/K9d+/7GFgv+eT5QAQ+AlAQzOFf8+Im4B7Wiv/1CEb/+OrkgAVOW0/mmzjABA+A//6YoQAPVDe/7aedT/P1/aAdWFif+PtlL/MBwLAPRyjQHRr0z/nbWW/7rlA/+knW8B572LAHfKvv/aakD/ROs//mAarP+7LwsB1xL7/1FUWQBEOoAAXnEFAVyB0P9hD1P+CRy8AO8JpAA8zZgAwKNi/7gSPADZtosAbTt4/wTA+wCp0vD/Jaxc/pTT9f+zQTQA/Q1zALmuzgFyvJX/7VqtACvHwP9YbHEANCNMAEIZlP/dBAf/l/Fy/77R6ABiMscAl5bV/xJKJAE1KAcAE4dB/xqsRQCu7VUAY18pAAM4EAAnoLH/yGra/rlEVP9buj3+Q4+N/w30pv9jcsYAx26j/8ESugB87/YBbkQWAALrLgHUPGsAaSppAQ7mmAAHBYMAjWia/9UDBgCD5KL/s2QcAed7Vf/ODt8B/WDmACaYlQFiiXoA1s0D/+KYs/8GhYkAnkWM/3Gimv+086z/G71z/48u3P/VhuH/fh1FALwriQHyRgkAWsz//+eqkwAXOBP+OH2d/zCz2v9Ptv3/JtS/ASnrfABglxwAh5S+AM35J/40YIj/1CyI/0PRg//8ghf/24AU/8aBdgBsZQsAsgWSAT4HZP+17F7+HBqkAEwWcP94Zk8AysDlAciw1wApQPT/zrhOAKctPwGgIwD/OwyO/8wJkP/bXuUBehtwAL1pbf9A0Er/+383AQLixgAsTNEAl5hN/9IXLgHJq0X/LNPnAL4l4P/1xD7/qbXe/yLTEQB38cX/5SOYARVFKP+y4qEAlLPBANvC/gEozjP/51z6AUOZqgAVlPEAqkVS/3kS5/9ccgMAuD7mAOHJV/+SYKL/tfLcAK273QHiPqr/OH7ZAXUN4/+zLO8AnY2b/5DdUwDr0dAAKhGlAftRhQB89cn+YdMY/1PWpgCaJAn/+C9/AFrbjP+h2Sb+1JM//0JUlAHPAwEA5oZZAX9Oev/gmwH/UohKALKc0P+6GTH/3gPSAeWWvv9VojT/KVSN/0l7VP5dEZYAdxMcASAW1/8cF8z/jvE0/+Q0fQAdTM8A16f6/q+k5gA3z2kBbbv1/6Es3AEpZYD/pxBeAF3Wa/92SAD+UD3q/3mvfQCLqfsAYSeT/vrEMf+ls27+30a7/xaOfQGas4r/drAqAQqumQCcXGYAqA2h/48QIAD6xbT/y6MsAVcgJAChmRT/e/wPABnjUAA8WI4AERbJAZrNTf8nPy8ACHqNAIAXtv7MJxP/BHAd/xckjP/S6nT+NTI//3mraP+g214AV1IO/ucqBQCli3/+Vk4mAII8Qv7LHi3/LsR6Afk1ov+Ij2f+19JyAOcHoP6pmCr/by32AI6Dh/+DR8z/JOILAAAc8v/hitX/9y7Y/vUDtwBs/EoBzhow/8029v/TxiT/eSMyADTYyv8mi4H+8kmUAEPnjf8qL8wATnQZAQThv/8Gk+QAOlixAHql5f/8U8n/4KdgAbG4nv/yabMB+MbwAIVCywH+JC8ALRhz/3c+/gDE4br+e42sABpVKf/ib7cA1eeXAAQ7B//uipQAQpMh/x/2jf/RjXT/aHAfAFihrABT1+b+L2+XAC0mNAGELcwAioBt/ul1hv/zvq3+8ezwAFJ/7P4o36H/brbh/3uu7wCH8pEBM9GaAJYDc/7ZpPz/N5xFAVRe///oSS0BFBPU/2DFO/5g+yEAJsdJAUCs9/91dDj/5BESAD6KZwH25aT/9HbJ/lYgn/9tIokBVdO6AArBwf56wrEAeu5m/6LaqwBs2aEBnqoiALAvmwG15Av/CJwAABBLXQDOYv8BOpojAAzzuP5DdUL/5uV7AMkqbgCG5LL+umx2/zoTmv9SqT7/co9zAe/EMv+tMMH/kwJU/5aGk/5f6EkAbeM0/r+JCgAozB7+TDRh/6TrfgD+fLwASrYVAXkdI//xHgf+VdrW/wdUlv5RG3X/oJ+Y/kIY3f/jCjwBjYdmANC9lgF1s1wAhBaI/3jHHAAVgU/+tglBANqjqQD2k8b/ayaQAU6vzf/WBfr+L1gd/6QvzP8rNwb/g4bP/nRk1gBgjEsBatyQAMMgHAGsUQX/x7M0/yVUywCqcK4ACwRbAEX0GwF1g1wAIZiv/4yZa//7hyv+V4oE/8bqk/55mFT/zWWbAZ0JGQBIahH+bJkA/73lugDBCLD/rpXRAO6CHQDp1n4BPeJmADmjBAHGbzP/LU9OAXPSCv/aCRn/novG/9NSu/5QhVMAnYHmAfOFhv8oiBAATWtP/7dVXAGxzMoAo0eT/5hFvgCsM7wB+tKs/9PycQFZWRr/QEJv/nSYKgChJxv/NlD+AGrRcwFnfGEA3eZi/x/nBgCywHj+D9nL/3yeTwBwkfcAXPowAaO1wf8lL47+kL2l/y6S8AAGS4AAKZ3I/ld51QABcewABS36AJAMUgAfbOcA4e93/6cHvf+75IT/br0iAF4szAGiNMUATrzx/jkUjQD0ki8BzmQzAH1rlP4bw00AmP1aAQePkP8zJR8AIncm/wfFdgCZvNMAlxR0/vVBNP+0/W4BL7HRAKFjEf923soAfbP8AXs2fv+ROb8AN7p5AArzigDN0+X/fZzx/pScuf/jE7z/fCkg/x8izv4ROVMAzBYl/ypgYgB3ZrgBA74cAG5S2v/IzMD/yZF2AHXMkgCEIGIBwMJ5AGqh+AHtWHwAF9QaAM2rWv/4MNgBjSXm/3zLAP6eqB7/1vgVAHC7B/9Lhe//SuPz//qTRgDWeKIApwmz/xaeEgDaTdEBYW1R//Qhs/85NDn/QazS//lH0f+Oqe4Anr2Z/67+Z/5iIQ4AjUzm/3GLNP8POtQAqNfJ//jM1wHfRKD/OZq3/i/neQBqpokAUYiKAKUrMwDniz0AOV87/nZiGf+XP+wBXr76/6m5cgEF+jr/S2lhAdffhgBxY6MBgD5wAGNqkwCjwwoAIc22ANYOrv+BJuf/NbbfAGIqn//3DSgAvNKxAQYVAP//PZT+iS2B/1kadP5+JnIA+zLy/nmGgP/M+af+pevXAMqx8wCFjT4A8IK+AW6v/wAAFJIBJdJ5/wcnggCO+lT/jcjPAAlfaP8L9K4Ahuh+AKcBe/4QwZX/6OnvAdVGcP/8dKD+8t7c/81V4wAHuToAdvc/AXRNsf8+9cj+PxIl/2s16P4y3dMAotsH/gJeKwC2Prb+oE7I/4eMqgDruOQArzWK/lA6Tf+YyQIBP8QiAAUeuACrsJoAeTvOACZjJwCsUE3+AIaXALoh8f5e/d//LHL8AGx+Of/JKA3/J+Ub/yfvFwGXeTP/mZb4AArqrv929gT+yPUmAEWh8gEQspYAcTiCAKsfaQAaWGz/MSpqAPupQgBFXZUAFDn+AKQZbwBavFr/zATFACjVMgHUYIT/WIq0/uSSfP+49vcAQXVW//1m0v7+eSQAiXMD/zwY2ACGEh0AO+JhALCORwAH0aEAvVQz/pv6SADVVOv/Ld7gAO6Uj/+qKjX/Tqd1ALoAKP99sWf/ReFCAOMHWAFLrAYAqS3jARAkRv8yAgn/i8EWAI+35/7aRTIA7DihAdWDKgCKkSz+iOUo/zE/I/89kfX/ZcAC/uincQCYaCYBebnaAHmL0/538CMAQb3Z/ruzov+gu+YAPvgO/zxOYQD/96P/4Ttb/2tHOv/xLyEBMnXsANuxP/70WrMAI8LX/71DMv8Xh4EAaL0l/7k5wgAjPuf/3PhsAAznsgCPUFsBg11l/5AnAgH/+rIABRHs/osgLgDMvCb+9XM0/79xSf6/bEX/FkX1ARfLsgCqY6oAQfhvACVsmf9AJUUAAFg+/lmUkP+/ROAB8Sc1ACnL7f+RfsL/3Sr9/xljlwBh/d8BSnMx/wavSP87sMsAfLf5AeTkYwCBDM/+qMDD/8ywEP6Y6qsATSVV/yF4h/+OwuMBH9Y6ANW7ff/oLjz/vnQq/peyE/8zPu3+zOzBAMLoPACsIp3/vRC4/mcDX/+N6ST+KRkL/xXDpgB29S0AQ9WV/58MEv+7pOMBoBkFAAxOwwErxeEAMI4p/sSbPP/fxxIBkYicAPx1qf6R4u4A7xdrAG21vP/mcDH+Sart/+e34/9Q3BQAwmt/AX/NZQAuNMUB0qsk/1gDWv84l40AYLv//ypOyAD+RkYB9H2oAMxEigF810YAZkLI/hE05AB13I/+y/h7ADgSrv+6l6T/M+jQAaDkK//5HRkBRL4/AA0AAAAA/wAAAAD1AAAAAAAA+wAAAAAAAP0AAAAA8wAAAAAHAAAAAAADAAAAAPMAAAAABQAAAAAAAAAACwAAAAAACwAAAADzAAAAAAAA/QAAAAAA/wAAAAADAAAAAPUAAAAAAAAADwAAAAAA/wAAAAD/AAAAAAcAAAAABQBB/IYCCwEBAEGghwILAQEAQcCHAgvxBuDrenw7QbiuFlbj+vGfxGraCY3rnDKx/YZiBRZfSbgAX5yVvKNQjCSx0LFVnIPvWwREXMRYHI6G2CJO3dCfEVfs////////////////////////////////////////f+3///////////////////////////////////////9/7v///////////////////////////////////////39MaWJzb2RpdW1EUkcAAAAACMm882fmCWo7p8qEha5nuyv4lP5y82488TYdXzr1T6XRguatf1IOUR9sPiuMaAWba71B+6vZgx95IX4TGc3gWyKuKNeYL4pCzWXvI5FEN3EvO03sz/vAtbzbiYGl27XpOLVI81vCVjkZ0AW28RHxWZtPGa+kgj+SGIFt2tVeHKtCAgOjmKoH2L5vcEUBW4MSjLLkTr6FMSTitP/Vw30MVW+Je/J0Xb5ysZYWO/6x3oA1Esclpwbcm5Qmac908ZvB0krxnsFpm+TjJU84hke+77XVjIvGncEPZZysd8yhDCR1AitZbyzpLYPkpm6qhHRK1PtBvdypsFy1UxGD2oj5dqvfZu5SUT6YEDK0LW3GMag/IfuYyCcDsOQO777Hf1m/wo+oPfML4MYlpwqTR5Gn1W+CA+BRY8oGcG4OCmcpKRT8L9JGhQq3JybJJlw4IRsu7SrEWvxtLE3fs5WdEw04U95jr4tUcwplqLJ3PLsKanbmru1HLsnCgTs1ghSFLHKSZAPxTKHov6IBMEK8S2YaqJGX+NBwi0vCML5UBqNRbMcYUu/WGeiS0RCpZVUkBpnWKiBxV4U1DvS40bsycKBqEMjQ0rgWwaQZU6tBUQhsNx6Z647fTHdIJ6hIm+G1vLA0Y1rJxbMMHDnLikHjSqrYTnPjY3dPypxbo7iy1vNvLmj8su9d7oKPdGAvF0NvY6V4cqvwoRR4yITsOWQaCALHjCgeYyP6/76Q6b2C3utsUKQVecay96P5vitTcuPyeHHGnGEm6s4+J8oHwsAhx7iG0R7r4M3WfdrqeNFu7n9PffW6bxdyqmfwBqaYyKLFfWMKrg35vgSYPxEbRxwTNQtxG4R9BCP1d9sokyTHQHuryjK8vskVCr6ePEwNEJzEZx1DtkI+y77UxUwqfmX8nCl/Wez61jqrb8tfF1hHSowZRGyAAEHAjwILoQJn5glqha5nu3Lzbjw69U+lf1IOUYxoBZur2YMfGc3gW5gvikKRRDdxz/vAtaXbtelbwlY58RHxWaSCP5LVXhyrmKoH2AFbgxK+hTEkw30MVXRdvnL+sd6Apwbcm3Txm8HBaZvkhke+78adwQ/MoQwkbyzpLaqEdErcqbBc2oj5dlJRPphtxjGoyCcDsMd/Wb/zC+DGR5Gn1VFjygZnKSkUhQq3JzghGy78bSxNEw04U1RzCmW7Cmp2LsnCgYUscpKh6L+iS2YaqHCLS8KjUWzHGeiS0SQGmdaFNQ70cKBqEBbBpBkIbDceTHdIJ7W8sDSzDBw5SqrYTk/KnFvzby5o7oKPdG9jpXgUeMiECALHjPr/vpDrbFCk96P5vvJ4ccaAAEGwkgILIVNpZ0VkMjU1MTkgbm8gRWQyNTUxOSBjb2xsaXNpb25zAQBBgJMCCyUgkwEAAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAEGwkwILnQjGY2Ol+Hx8hO53d5n2e3uN//LyDdZra73eb2+xkcXFVGAwMFACAQEDzmdnqVYrK33n/v4ZtdfXYk2rq+bsdnaaj8rKRR+Cgp2JyclA+n19h+/6+hWyWVnrjkdHyfvw8AtBra3ss9TUZ1+iov1Fr6/qI5ycv1OkpPfkcnKWm8DAW3W3t8Lh/f0cPZOTrkwmJmpsNjZafj8/QfX39wKDzMxPaDQ0XFGlpfTR5eU0+fHxCOJxcZOr2NhzYjExUyoVFT8IBAQMlcfHUkYjI2Wdw8NeMBgYKDeWlqEKBQUPL5qatQ4HBwkkEhI2G4CAm9/i4j3N6+smTicnaX+yss3qdXWfEgkJGx2Dg55YLCx0NBoaLjYbGy3cbm6ytFpa7lugoPukUlL2djs7TbfW1mF9s7POUikpe93j4z5eLy9xE4SEl6ZTU/W50dFoAAAAAMHt7SxAICBg4/z8H3mxsci2W1vt1Gpqvo3Ly0Znvr7Zcjk5S5RKSt6YTEzUsFhY6IXPz0q70NBrxe/vKk+qquXt+/sWhkNDxZpNTddmMzNVEYWFlIpFRc/p+fkQBAICBv5/f4GgUFDweDw8RCWfn7pLqKjjolFR812jo/6AQEDABY+Pij+Skq0hnZ28cDg4SPH19QRjvLzfd7a2wa/a2nVCISFjIBAQMOX//xr98/MOv9LSbYHNzUwYDAwUJhMTNcPs7C++X1/hNZeXoohERMwuFxc5k8TEV1Wnp/L8fn6Cej09R8hkZKy6XV3nMhkZK+Zzc5XAYGCgGYGBmJ5PT9Gj3Nx/RCIiZlQqKn47kJCrC4iIg4xGRsrH7u4pa7i40ygUFDyn3t55vF5e4hYLCx2t29t22+DgO2QyMlZ0OjpOFAoKHpJJSdsMBgYKSCQkbLhcXOSfwsJdvdPTbkOsrO/EYmKmOZGRqDGVlaTT5OQ38nl5i9Xn5zKLyMhDbjc3WdptbbcBjY2MsdXVZJxOTtJJqang2GxstKxWVvrz9PQHz+rqJcplZa/0enqOR66u6RAICBhvurrV8Hh4iEolJW9cLi5yOBwcJFempvFztLTHl8bGUcvo6COh3d186HR0nD4fHyGWS0vdYb293A2Li4YPioqF4HBwkHw+PkJxtbXEzGZmqpBISNgGAwMF9/b2ARwODhLCYWGjajU1X65XV/lpubnQF4aGkZnBwVg6HR0nJ56eudnh4Tjr+PgTK5iYsyIRETPSaWm7qdnZcAeOjokzlJSnLZubtjweHiIVh4eSyenpIIfOzkmqVVX/UCgoeKXf33oDjIyPWaGh+AmJiYAaDQ0XZb+/2tfm5jGEQkLG0GhouIJBQcMpmZmwWi0tdx4PDxF7sLDLqFRU/G27u9YsFhY6CgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABE="),Wt=Pt,d(Qn).then((Pt=>WebAssembly.instantiate(Pt,Wt))).then((function(Wt){g(Wt.instance)}),(Wt=>{Gn(`failed to asynchronously prepare wasm: ${Wt}`),G(Wt)})),{}}();function l(){function A(){Cn||(Cn=!0,rn.calledRun=!0,vn||(P(En),rn.onRuntimeInitialized?.(),function(){if(rn.postRun)for("function"==typeof rn.postRun&&(rn.postRun=[rn.postRun]);rn.postRun.length;)Wt=rn.postRun.shift(),Vn.unshift(Wt);var Wt;P(Vn)}()))}Rn>0||(function(){if(rn.preRun)for("function"==typeof rn.preRun&&(rn.preRun=[rn.preRun]);rn.preRun.length;)Wt=rn.preRun.shift(),Yn.unshift(Wt);var Wt;P(Yn)}(),Rn>0||(rn.setStatus?(rn.setStatus("Running..."),setTimeout((function(){setTimeout((function(){rn.setStatus("")}),1),A()}),1)):A()))}if(rn._crypto_aead_aegis128l_keybytes=()=>(rn._crypto_aead_aegis128l_keybytes=Ln.g)(),rn._crypto_aead_aegis128l_nsecbytes=()=>(rn._crypto_aead_aegis128l_nsecbytes=Ln.h)(),rn._crypto_aead_aegis128l_npubbytes=()=>(rn._crypto_aead_aegis128l_npubbytes=Ln.i)(),rn._crypto_aead_aegis128l_abytes=()=>(rn._crypto_aead_aegis128l_abytes=Ln.j)(),rn._crypto_aead_aegis128l_messagebytes_max=()=>(rn._crypto_aead_aegis128l_messagebytes_max=Ln.k)(),rn._crypto_aead_aegis128l_keygen=Wt=>(rn._crypto_aead_aegis128l_keygen=Ln.l)(Wt),rn._crypto_aead_aegis128l_encrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_aegis128l_encrypt=Ln.m)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_aegis128l_encrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un)=>(rn._crypto_aead_aegis128l_encrypt_detached=Ln.n)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un),rn._crypto_aead_aegis128l_decrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_aegis128l_decrypt=Ln.o)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_aegis128l_decrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_aegis128l_decrypt_detached=Ln.p)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_aegis256_keybytes=()=>(rn._crypto_aead_aegis256_keybytes=Ln.q)(),rn._crypto_aead_aegis256_nsecbytes=()=>(rn._crypto_aead_aegis256_nsecbytes=Ln.r)(),rn._crypto_aead_aegis256_npubbytes=()=>(rn._crypto_aead_aegis256_npubbytes=Ln.s)(),rn._crypto_aead_aegis256_abytes=()=>(rn._crypto_aead_aegis256_abytes=Ln.t)(),rn._crypto_aead_aegis256_messagebytes_max=()=>(rn._crypto_aead_aegis256_messagebytes_max=Ln.u)(),rn._crypto_aead_aegis256_keygen=Wt=>(rn._crypto_aead_aegis256_keygen=Ln.v)(Wt),rn._crypto_aead_aegis256_encrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_aegis256_encrypt=Ln.w)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_aegis256_encrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un)=>(rn._crypto_aead_aegis256_encrypt_detached=Ln.x)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un),rn._crypto_aead_aegis256_decrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_aegis256_decrypt=Ln.y)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_aegis256_decrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_aegis256_decrypt_detached=Ln.z)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_aes256gcm_is_available=()=>(rn._crypto_aead_aes256gcm_is_available=Ln.A)(),rn._crypto_aead_chacha20poly1305_encrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un)=>(rn._crypto_aead_chacha20poly1305_encrypt_detached=Ln.B)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un),rn._crypto_aead_chacha20poly1305_encrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_chacha20poly1305_encrypt=Ln.C)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_chacha20poly1305_ietf_encrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un)=>(rn._crypto_aead_chacha20poly1305_ietf_encrypt_detached=Ln.D)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un),rn._crypto_aead_chacha20poly1305_ietf_encrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_chacha20poly1305_ietf_encrypt=Ln.E)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_chacha20poly1305_decrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_chacha20poly1305_decrypt_detached=Ln.F)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_chacha20poly1305_decrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_chacha20poly1305_decrypt=Ln.G)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_chacha20poly1305_ietf_decrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_chacha20poly1305_ietf_decrypt_detached=Ln.H)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_chacha20poly1305_ietf_decrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_chacha20poly1305_ietf_decrypt=Ln.I)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_chacha20poly1305_ietf_keybytes=()=>(rn._crypto_aead_chacha20poly1305_ietf_keybytes=Ln.J)(),rn._crypto_aead_chacha20poly1305_ietf_npubbytes=()=>(rn._crypto_aead_chacha20poly1305_ietf_npubbytes=Ln.K)(),rn._crypto_aead_chacha20poly1305_ietf_nsecbytes=()=>(rn._crypto_aead_chacha20poly1305_ietf_nsecbytes=Ln.L)(),rn._crypto_aead_chacha20poly1305_ietf_abytes=()=>(rn._crypto_aead_chacha20poly1305_ietf_abytes=Ln.M)(),rn._crypto_aead_chacha20poly1305_ietf_messagebytes_max=()=>(rn._crypto_aead_chacha20poly1305_ietf_messagebytes_max=Ln.N)(),rn._crypto_aead_chacha20poly1305_ietf_keygen=Wt=>(rn._crypto_aead_chacha20poly1305_ietf_keygen=Ln.O)(Wt),rn._crypto_aead_chacha20poly1305_keybytes=()=>(rn._crypto_aead_chacha20poly1305_keybytes=Ln.P)(),rn._crypto_aead_chacha20poly1305_npubbytes=()=>(rn._crypto_aead_chacha20poly1305_npubbytes=Ln.Q)(),rn._crypto_aead_chacha20poly1305_nsecbytes=()=>(rn._crypto_aead_chacha20poly1305_nsecbytes=Ln.R)(),rn._crypto_aead_chacha20poly1305_abytes=()=>(rn._crypto_aead_chacha20poly1305_abytes=Ln.S)(),rn._crypto_aead_chacha20poly1305_messagebytes_max=()=>(rn._crypto_aead_chacha20poly1305_messagebytes_max=Ln.T)(),rn._crypto_aead_chacha20poly1305_keygen=Wt=>(rn._crypto_aead_chacha20poly1305_keygen=Ln.U)(Wt),rn._crypto_aead_xchacha20poly1305_ietf_encrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un)=>(rn._crypto_aead_xchacha20poly1305_ietf_encrypt_detached=Ln.V)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn,un),rn._crypto_aead_xchacha20poly1305_ietf_encrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_xchacha20poly1305_ietf_encrypt=Ln.W)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_xchacha20poly1305_ietf_decrypt_detached=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_xchacha20poly1305_ietf_decrypt_detached=Ln.X)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_xchacha20poly1305_ietf_decrypt=(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn)=>(rn._crypto_aead_xchacha20poly1305_ietf_decrypt=Ln.Y)(Wt,Pt,en,tn,nn,an,In,sn,on,cn,dn),rn._crypto_aead_xchacha20poly1305_ietf_keybytes=()=>(rn._crypto_aead_xchacha20poly1305_ietf_keybytes=Ln.Z)(),rn._crypto_aead_xchacha20poly1305_ietf_npubbytes=()=>(rn._crypto_aead_xchacha20poly1305_ietf_npubbytes=Ln._)(),rn._crypto_aead_xchacha20poly1305_ietf_nsecbytes=()=>(rn._crypto_aead_xchacha20poly1305_ietf_nsecbytes=Ln.$)(),rn._crypto_aead_xchacha20poly1305_ietf_abytes=()=>(rn._crypto_aead_xchacha20poly1305_ietf_abytes=Ln.aa)(),rn._crypto_aead_xchacha20poly1305_ietf_messagebytes_max=()=>(rn._crypto_aead_xchacha20poly1305_ietf_messagebytes_max=Ln.ba)(),rn._crypto_aead_xchacha20poly1305_ietf_keygen=Wt=>(rn._crypto_aead_xchacha20poly1305_ietf_keygen=Ln.ca)(Wt),rn._crypto_auth_bytes=()=>(rn._crypto_auth_bytes=Ln.da)(),rn._crypto_auth_keybytes=()=>(rn._crypto_auth_keybytes=Ln.ea)(),rn._crypto_auth=(Wt,Pt,en,tn,nn)=>(rn._crypto_auth=Ln.fa)(Wt,Pt,en,tn,nn),rn._crypto_auth_verify=(Wt,Pt,en,tn,nn)=>(rn._crypto_auth_verify=Ln.ga)(Wt,Pt,en,tn,nn),rn._crypto_auth_keygen=Wt=>(rn._crypto_auth_keygen=Ln.ha)(Wt),rn._crypto_box_seedbytes=()=>(rn._crypto_box_seedbytes=Ln.ia)(),rn._crypto_box_publickeybytes=()=>(rn._crypto_box_publickeybytes=Ln.ja)(),rn._crypto_box_secretkeybytes=()=>(rn._crypto_box_secretkeybytes=Ln.ka)(),rn._crypto_box_beforenmbytes=()=>(rn._crypto_box_beforenmbytes=Ln.la)(),rn._crypto_box_noncebytes=()=>(rn._crypto_box_noncebytes=Ln.ma)(),rn._crypto_box_macbytes=()=>(rn._crypto_box_macbytes=Ln.na)(),rn._crypto_box_messagebytes_max=()=>(rn._crypto_box_messagebytes_max=Ln.oa)(),rn._crypto_box_seed_keypair=(Wt,Pt,en)=>(rn._crypto_box_seed_keypair=Ln.pa)(Wt,Pt,en),rn._crypto_box_keypair=(Wt,Pt)=>(rn._crypto_box_keypair=Ln.qa)(Wt,Pt),rn._crypto_box_beforenm=(Wt,Pt,en)=>(rn._crypto_box_beforenm=Ln.ra)(Wt,Pt,en),rn._crypto_box_detached_afternm=(Wt,Pt,en,tn,nn,an,In)=>(rn._crypto_box_detached_afternm=Ln.sa)(Wt,Pt,en,tn,nn,an,In),rn._crypto_box_detached=(Wt,Pt,en,tn,nn,an,In,sn)=>(rn._crypto_box_detached=Ln.ta)(Wt,Pt,en,tn,nn,an,In,sn),rn._crypto_box_easy_afternm=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_box_easy_afternm=Ln.ua)(Wt,Pt,en,tn,nn,an),rn._crypto_box_easy=(Wt,Pt,en,tn,nn,an,In)=>(rn._crypto_box_easy=Ln.va)(Wt,Pt,en,tn,nn,an,In),rn._crypto_box_open_detached_afternm=(Wt,Pt,en,tn,nn,an,In)=>(rn._crypto_box_open_detached_afternm=Ln.wa)(Wt,Pt,en,tn,nn,an,In),rn._crypto_box_open_detached=(Wt,Pt,en,tn,nn,an,In,sn)=>(rn._crypto_box_open_detached=Ln.xa)(Wt,Pt,en,tn,nn,an,In,sn),rn._crypto_box_open_easy_afternm=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_box_open_easy_afternm=Ln.ya)(Wt,Pt,en,tn,nn,an),rn._crypto_box_open_easy=(Wt,Pt,en,tn,nn,an,In)=>(rn._crypto_box_open_easy=Ln.za)(Wt,Pt,en,tn,nn,an,In),rn._crypto_box_seal=(Wt,Pt,en,tn,nn)=>(rn._crypto_box_seal=Ln.Aa)(Wt,Pt,en,tn,nn),rn._crypto_box_seal_open=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_box_seal_open=Ln.Ba)(Wt,Pt,en,tn,nn,an),rn._crypto_box_sealbytes=()=>(rn._crypto_box_sealbytes=Ln.Ca)(),rn._crypto_generichash_bytes_min=()=>(rn._crypto_generichash_bytes_min=Ln.Da)(),rn._crypto_generichash_bytes_max=()=>(rn._crypto_generichash_bytes_max=Ln.Ea)(),rn._crypto_generichash_bytes=()=>(rn._crypto_generichash_bytes=Ln.Fa)(),rn._crypto_generichash_keybytes_min=()=>(rn._crypto_generichash_keybytes_min=Ln.Ga)(),rn._crypto_generichash_keybytes_max=()=>(rn._crypto_generichash_keybytes_max=Ln.Ha)(),rn._crypto_generichash_keybytes=()=>(rn._crypto_generichash_keybytes=Ln.Ia)(),rn._crypto_generichash_statebytes=()=>(rn._crypto_generichash_statebytes=Ln.Ja)(),rn._crypto_generichash=(Wt,Pt,en,tn,nn,an,In)=>(rn._crypto_generichash=Ln.Ka)(Wt,Pt,en,tn,nn,an,In),rn._crypto_generichash_init=(Wt,Pt,en,tn)=>(rn._crypto_generichash_init=Ln.La)(Wt,Pt,en,tn),rn._crypto_generichash_update=(Wt,Pt,en,tn)=>(rn._crypto_generichash_update=Ln.Ma)(Wt,Pt,en,tn),rn._crypto_generichash_final=(Wt,Pt,en)=>(rn._crypto_generichash_final=Ln.Na)(Wt,Pt,en),rn._crypto_generichash_keygen=Wt=>(rn._crypto_generichash_keygen=Ln.Oa)(Wt),rn._crypto_hash_bytes=()=>(rn._crypto_hash_bytes=Ln.Pa)(),rn._crypto_hash=(Wt,Pt,en,tn)=>(rn._crypto_hash=Ln.Qa)(Wt,Pt,en,tn),rn._crypto_kdf_bytes_min=()=>(rn._crypto_kdf_bytes_min=Ln.Ra)(),rn._crypto_kdf_bytes_max=()=>(rn._crypto_kdf_bytes_max=Ln.Sa)(),rn._crypto_kdf_contextbytes=()=>(rn._crypto_kdf_contextbytes=Ln.Ta)(),rn._crypto_kdf_keybytes=()=>(rn._crypto_kdf_keybytes=Ln.Ua)(),rn._crypto_kdf_derive_from_key=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_kdf_derive_from_key=Ln.Va)(Wt,Pt,en,tn,nn,an),rn._crypto_kdf_keygen=Wt=>(rn._crypto_kdf_keygen=Ln.Wa)(Wt),rn._crypto_kdf_hkdf_sha256_extract_init=(Wt,Pt,en)=>(rn._crypto_kdf_hkdf_sha256_extract_init=Ln.Xa)(Wt,Pt,en),rn._crypto_kdf_hkdf_sha256_extract_update=(Wt,Pt,en)=>(rn._crypto_kdf_hkdf_sha256_extract_update=Ln.Ya)(Wt,Pt,en),rn._crypto_kdf_hkdf_sha256_extract_final=(Wt,Pt)=>(rn._crypto_kdf_hkdf_sha256_extract_final=Ln.Za)(Wt,Pt),rn._crypto_kdf_hkdf_sha256_extract=(Wt,Pt,en,tn,nn)=>(rn._crypto_kdf_hkdf_sha256_extract=Ln._a)(Wt,Pt,en,tn,nn),rn._crypto_kdf_hkdf_sha256_keygen=Wt=>(rn._crypto_kdf_hkdf_sha256_keygen=Ln.$a)(Wt),rn._crypto_kdf_hkdf_sha256_expand=(Wt,Pt,en,tn,nn)=>(rn._crypto_kdf_hkdf_sha256_expand=Ln.ab)(Wt,Pt,en,tn,nn),rn._crypto_kdf_hkdf_sha256_keybytes=()=>(rn._crypto_kdf_hkdf_sha256_keybytes=Ln.bb)(),rn._crypto_kdf_hkdf_sha256_bytes_min=()=>(rn._crypto_kdf_hkdf_sha256_bytes_min=Ln.cb)(),rn._crypto_kdf_hkdf_sha256_bytes_max=()=>(rn._crypto_kdf_hkdf_sha256_bytes_max=Ln.db)(),rn._crypto_kdf_hkdf_sha256_statebytes=()=>(rn._crypto_kdf_hkdf_sha256_statebytes=Ln.eb)(),rn._crypto_kdf_hkdf_sha512_extract_init=(Wt,Pt,en)=>(rn._crypto_kdf_hkdf_sha512_extract_init=Ln.fb)(Wt,Pt,en),rn._crypto_kdf_hkdf_sha512_extract_update=(Wt,Pt,en)=>(rn._crypto_kdf_hkdf_sha512_extract_update=Ln.gb)(Wt,Pt,en),rn._crypto_kdf_hkdf_sha512_extract_final=(Wt,Pt)=>(rn._crypto_kdf_hkdf_sha512_extract_final=Ln.hb)(Wt,Pt),rn._crypto_kdf_hkdf_sha512_extract=(Wt,Pt,en,tn,nn)=>(rn._crypto_kdf_hkdf_sha512_extract=Ln.ib)(Wt,Pt,en,tn,nn),rn._crypto_kdf_hkdf_sha512_keygen=Wt=>(rn._crypto_kdf_hkdf_sha512_keygen=Ln.jb)(Wt),rn._crypto_kdf_hkdf_sha512_expand=(Wt,Pt,en,tn,nn)=>(rn._crypto_kdf_hkdf_sha512_expand=Ln.kb)(Wt,Pt,en,tn,nn),rn._crypto_kdf_hkdf_sha512_keybytes=()=>(rn._crypto_kdf_hkdf_sha512_keybytes=Ln.lb)(),rn._crypto_kdf_hkdf_sha512_bytes_min=()=>(rn._crypto_kdf_hkdf_sha512_bytes_min=Ln.mb)(),rn._crypto_kdf_hkdf_sha512_bytes_max=()=>(rn._crypto_kdf_hkdf_sha512_bytes_max=Ln.nb)(),rn._crypto_kdf_hkdf_sha512_statebytes=()=>(rn._crypto_kdf_hkdf_sha512_statebytes=Ln.ob)(),rn._crypto_kx_seed_keypair=(Wt,Pt,en)=>(rn._crypto_kx_seed_keypair=Ln.pb)(Wt,Pt,en),rn._crypto_kx_keypair=(Wt,Pt)=>(rn._crypto_kx_keypair=Ln.qb)(Wt,Pt),rn._crypto_kx_client_session_keys=(Wt,Pt,en,tn,nn)=>(rn._crypto_kx_client_session_keys=Ln.rb)(Wt,Pt,en,tn,nn),rn._crypto_kx_server_session_keys=(Wt,Pt,en,tn,nn)=>(rn._crypto_kx_server_session_keys=Ln.sb)(Wt,Pt,en,tn,nn),rn._crypto_kx_publickeybytes=()=>(rn._crypto_kx_publickeybytes=Ln.tb)(),rn._crypto_kx_secretkeybytes=()=>(rn._crypto_kx_secretkeybytes=Ln.ub)(),rn._crypto_kx_seedbytes=()=>(rn._crypto_kx_seedbytes=Ln.vb)(),rn._crypto_kx_sessionkeybytes=()=>(rn._crypto_kx_sessionkeybytes=Ln.wb)(),rn._crypto_scalarmult_base=(Wt,Pt)=>(rn._crypto_scalarmult_base=Ln.xb)(Wt,Pt),rn._crypto_scalarmult=(Wt,Pt,en)=>(rn._crypto_scalarmult=Ln.yb)(Wt,Pt,en),rn._crypto_scalarmult_bytes=()=>(rn._crypto_scalarmult_bytes=Ln.zb)(),rn._crypto_scalarmult_scalarbytes=()=>(rn._crypto_scalarmult_scalarbytes=Ln.Ab)(),rn._crypto_secretbox_keybytes=()=>(rn._crypto_secretbox_keybytes=Ln.Bb)(),rn._crypto_secretbox_noncebytes=()=>(rn._crypto_secretbox_noncebytes=Ln.Cb)(),rn._crypto_secretbox_macbytes=()=>(rn._crypto_secretbox_macbytes=Ln.Db)(),rn._crypto_secretbox_messagebytes_max=()=>(rn._crypto_secretbox_messagebytes_max=Ln.Eb)(),rn._crypto_secretbox_keygen=Wt=>(rn._crypto_secretbox_keygen=Ln.Fb)(Wt),rn._crypto_secretbox_detached=(Wt,Pt,en,tn,nn,an,In)=>(rn._crypto_secretbox_detached=Ln.Gb)(Wt,Pt,en,tn,nn,an,In),rn._crypto_secretbox_easy=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_secretbox_easy=Ln.Hb)(Wt,Pt,en,tn,nn,an),rn._crypto_secretbox_open_detached=(Wt,Pt,en,tn,nn,an,In)=>(rn._crypto_secretbox_open_detached=Ln.Ib)(Wt,Pt,en,tn,nn,an,In),rn._crypto_secretbox_open_easy=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_secretbox_open_easy=Ln.Jb)(Wt,Pt,en,tn,nn,an),rn._crypto_secretstream_xchacha20poly1305_keygen=Wt=>(rn._crypto_secretstream_xchacha20poly1305_keygen=Ln.Kb)(Wt),rn._crypto_secretstream_xchacha20poly1305_init_push=(Wt,Pt,en)=>(rn._crypto_secretstream_xchacha20poly1305_init_push=Ln.Lb)(Wt,Pt,en),rn._crypto_secretstream_xchacha20poly1305_init_pull=(Wt,Pt,en)=>(rn._crypto_secretstream_xchacha20poly1305_init_pull=Ln.Mb)(Wt,Pt,en),rn._crypto_secretstream_xchacha20poly1305_rekey=Wt=>(rn._crypto_secretstream_xchacha20poly1305_rekey=Ln.Nb)(Wt),rn._crypto_secretstream_xchacha20poly1305_push=(Wt,Pt,en,tn,nn,an,In,sn,on,cn)=>(rn._crypto_secretstream_xchacha20poly1305_push=Ln.Ob)(Wt,Pt,en,tn,nn,an,In,sn,on,cn),rn._crypto_secretstream_xchacha20poly1305_pull=(Wt,Pt,en,tn,nn,an,In,sn,on,cn)=>(rn._crypto_secretstream_xchacha20poly1305_pull=Ln.Pb)(Wt,Pt,en,tn,nn,an,In,sn,on,cn),rn._crypto_secretstream_xchacha20poly1305_statebytes=()=>(rn._crypto_secretstream_xchacha20poly1305_statebytes=Ln.Qb)(),rn._crypto_secretstream_xchacha20poly1305_abytes=()=>(rn._crypto_secretstream_xchacha20poly1305_abytes=Ln.Rb)(),rn._crypto_secretstream_xchacha20poly1305_headerbytes=()=>(rn._crypto_secretstream_xchacha20poly1305_headerbytes=Ln.Sb)(),rn._crypto_secretstream_xchacha20poly1305_keybytes=()=>(rn._crypto_secretstream_xchacha20poly1305_keybytes=Ln.Tb)(),rn._crypto_secretstream_xchacha20poly1305_messagebytes_max=()=>(rn._crypto_secretstream_xchacha20poly1305_messagebytes_max=Ln.Ub)(),rn._crypto_secretstream_xchacha20poly1305_tag_message=()=>(rn._crypto_secretstream_xchacha20poly1305_tag_message=Ln.Vb)(),rn._crypto_secretstream_xchacha20poly1305_tag_push=()=>(rn._crypto_secretstream_xchacha20poly1305_tag_push=Ln.Wb)(),rn._crypto_secretstream_xchacha20poly1305_tag_rekey=()=>(rn._crypto_secretstream_xchacha20poly1305_tag_rekey=Ln.Xb)(),rn._crypto_secretstream_xchacha20poly1305_tag_final=()=>(rn._crypto_secretstream_xchacha20poly1305_tag_final=Ln.Yb)(),rn._crypto_shorthash_bytes=()=>(rn._crypto_shorthash_bytes=Ln.Zb)(),rn._crypto_shorthash_keybytes=()=>(rn._crypto_shorthash_keybytes=Ln._b)(),rn._crypto_shorthash=(Wt,Pt,en,tn,nn)=>(rn._crypto_shorthash=Ln.$b)(Wt,Pt,en,tn,nn),rn._crypto_shorthash_keygen=Wt=>(rn._crypto_shorthash_keygen=Ln.ac)(Wt),rn._crypto_sign_statebytes=()=>(rn._crypto_sign_statebytes=Ln.bc)(),rn._crypto_sign_bytes=()=>(rn._crypto_sign_bytes=Ln.cc)(),rn._crypto_sign_seedbytes=()=>(rn._crypto_sign_seedbytes=Ln.dc)(),rn._crypto_sign_publickeybytes=()=>(rn._crypto_sign_publickeybytes=Ln.ec)(),rn._crypto_sign_secretkeybytes=()=>(rn._crypto_sign_secretkeybytes=Ln.fc)(),rn._crypto_sign_messagebytes_max=()=>(rn._crypto_sign_messagebytes_max=Ln.gc)(),rn._crypto_sign_seed_keypair=(Wt,Pt,en)=>(rn._crypto_sign_seed_keypair=Ln.hc)(Wt,Pt,en),rn._crypto_sign_keypair=(Wt,Pt)=>(rn._crypto_sign_keypair=Ln.ic)(Wt,Pt),rn._crypto_sign=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_sign=Ln.jc)(Wt,Pt,en,tn,nn,an),rn._crypto_sign_open=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_sign_open=Ln.kc)(Wt,Pt,en,tn,nn,an),rn._crypto_sign_detached=(Wt,Pt,en,tn,nn,an)=>(rn._crypto_sign_detached=Ln.lc)(Wt,Pt,en,tn,nn,an),rn._crypto_sign_verify_detached=(Wt,Pt,en,tn,nn)=>(rn._crypto_sign_verify_detached=Ln.mc)(Wt,Pt,en,tn,nn),rn._crypto_sign_init=Wt=>(rn._crypto_sign_init=Ln.nc)(Wt),rn._crypto_sign_update=(Wt,Pt,en,tn)=>(rn._crypto_sign_update=Ln.oc)(Wt,Pt,en,tn),rn._crypto_sign_final_create=(Wt,Pt,en,tn)=>(rn._crypto_sign_final_create=Ln.pc)(Wt,Pt,en,tn),rn._crypto_sign_final_verify=(Wt,Pt,en)=>(rn._crypto_sign_final_verify=Ln.qc)(Wt,Pt,en),rn._crypto_sign_ed25519_pk_to_curve25519=(Wt,Pt)=>(rn._crypto_sign_ed25519_pk_to_curve25519=Ln.rc)(Wt,Pt),rn._crypto_sign_ed25519_sk_to_curve25519=(Wt,Pt)=>(rn._crypto_sign_ed25519_sk_to_curve25519=Ln.sc)(Wt,Pt),rn._randombytes_random=()=>(rn._randombytes_random=Ln.tc)(),rn._randombytes_stir=()=>(rn._randombytes_stir=Ln.uc)(),rn._randombytes_uniform=Wt=>(rn._randombytes_uniform=Ln.vc)(Wt),rn._randombytes_buf=(Wt,Pt)=>(rn._randombytes_buf=Ln.wc)(Wt,Pt),rn._randombytes_buf_deterministic=(Wt,Pt,en)=>(rn._randombytes_buf_deterministic=Ln.xc)(Wt,Pt,en),rn._randombytes_seedbytes=()=>(rn._randombytes_seedbytes=Ln.yc)(),rn._randombytes_close=()=>(rn._randombytes_close=Ln.zc)(),rn._randombytes=(Wt,Pt,en)=>(rn._randombytes=Ln.Ac)(Wt,Pt,en),rn._sodium_bin2hex=(Wt,Pt,en,tn)=>(rn._sodium_bin2hex=Ln.Bc)(Wt,Pt,en,tn),rn._sodium_hex2bin=(Wt,Pt,en,tn,nn,an,In)=>(rn._sodium_hex2bin=Ln.Cc)(Wt,Pt,en,tn,nn,an,In),rn._sodium_base64_encoded_len=(Wt,Pt)=>(rn._sodium_base64_encoded_len=Ln.Dc)(Wt,Pt),rn._sodium_bin2base64=(Wt,Pt,en,tn,nn)=>(rn._sodium_bin2base64=Ln.Ec)(Wt,Pt,en,tn,nn),rn._sodium_base642bin=(Wt,Pt,en,tn,nn,an,In,sn)=>(rn._sodium_base642bin=Ln.Fc)(Wt,Pt,en,tn,nn,an,In,sn),rn._sodium_init=()=>(rn._sodium_init=Ln.Gc)(),rn._sodium_pad=(Wt,Pt,en,tn,nn)=>(rn._sodium_pad=Ln.Hc)(Wt,Pt,en,tn,nn),rn._sodium_unpad=(Wt,Pt,en,tn)=>(rn._sodium_unpad=Ln.Ic)(Wt,Pt,en,tn),rn._sodium_version_string=()=>(rn._sodium_version_string=Ln.Jc)(),rn._sodium_library_version_major=()=>(rn._sodium_library_version_major=Ln.Kc)(),rn._sodium_library_version_minor=()=>(rn._sodium_library_version_minor=Ln.Lc)(),rn._sodium_library_minimal=()=>(rn._sodium_library_minimal=Ln.Mc)(),rn._malloc=Wt=>(rn._malloc=Ln.Nc)(Wt),rn._free=Wt=>(rn._free=Ln.Oc)(Wt),rn.setValue=function(Wt,Pt,en="i8"){switch(en.endsWith("*")&&(en="*"),en){case"i1":case"i8":hn[Wt]=Pt;break;case"i16":An[Wt>>1]=Pt;break;case"i32":Wn[Wt>>2]=Pt;break;case"i64":G("to do setValue(i64) use WASM_BIGINT");case"float":gn[Wt>>2]=Pt;break;case"double":yn[Wt>>3]=Pt;break;case"*":Nn[Wt>>2]=Pt;break;default:G(`invalid type for setValue: ${en}`)}},rn.getValue=function(Wt,Pt="i8"){switch(Pt.endsWith("*")&&(Pt="*"),Pt){case"i1":case"i8":return hn[Wt];case"i16":return An[Wt>>1];case"i32":return Wn[Wt>>2];case"i64":G("to do getValue(i64) use WASM_BIGINT");case"float":return gn[Wt>>2];case"double":return yn[Wt>>3];case"*":return Nn[Wt>>2];default:G(`invalid type for getValue: ${Pt}`)}},rn.UTF8ToString=L,Fn=function A(){Cn||l(),Cn||(Fn=A)},rn.preInit)for("function"==typeof rn.preInit&&(rn.preInit=[rn.preInit]);rn.preInit.length>0;)rn.preInit.pop()();l()})).catch((function(){return an.useBackupModule()})),tn}"function"==typeof define&&define.amd?define(["exports"],I):true&&"string"!=typeof Pt.nodeName?I(Pt):tn.libsodium=I(tn.libsodium_mod||(tn.commonJsStrict={}))}(this)},99829:(Wt,Pt,en)=>{ +/*! + * mime-db + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015-2022 Douglas Christopher Wilson + * MIT Licensed */ -function addPath(inputPath) { - const filePath = process.env['GITHUB_PATH'] || ''; - if (filePath) { - (0, file_command_1.issueFileCommand)('PATH', inputPath); - } - else { - (0, command_1.issueCommand)('add-path', {}, inputPath); - } - process.env['PATH'] = `${inputPath}${path.delimiter}${process.env['PATH']}`; -} -exports.addPath = addPath; -/** - * Gets the value of an input. - * Unless trimWhitespace is set to false in InputOptions, the value is also trimmed. - * Returns an empty string if the value is not defined. +Wt.exports=en(81813)},14096:(Wt,Pt,en)=>{"use strict"; +/*! + * mime-types + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + */var tn=en(99829);var nn=en(16928).extname;var an=/^\s*([^;\s]*)(?:;|\s|$)/;var rn=/^text\//i;Pt.charset=charset;Pt.charsets={lookup:charset};Pt.contentType=contentType;Pt.extension=extension;Pt.extensions=Object.create(null);Pt.lookup=lookup;Pt.types=Object.create(null);populateMaps(Pt.extensions,Pt.types);function charset(Wt){if(!Wt||typeof Wt!=="string"){return false}var Pt=an.exec(Wt);var en=Pt&&tn[Pt[1].toLowerCase()];if(en&&en.charset){return en.charset}if(Pt&&rn.test(Pt[1])){return"UTF-8"}return false}function contentType(Wt){if(!Wt||typeof Wt!=="string"){return false}var en=Wt.indexOf("/")===-1?Pt.lookup(Wt):Wt;if(!en){return false}if(en.indexOf("charset")===-1){var tn=Pt.charset(en);if(tn)en+="; charset="+tn.toLowerCase()}return en}function extension(Wt){if(!Wt||typeof Wt!=="string"){return false}var en=an.exec(Wt);var tn=en&&Pt.extensions[en[1].toLowerCase()];if(!tn||!tn.length){return false}return tn[0]}function lookup(Wt){if(!Wt||typeof Wt!=="string"){return false}var en=nn("x."+Wt).toLowerCase().substr(1);if(!en){return false}return Pt.types[en]||false}function populateMaps(Wt,Pt){var en=["nginx","apache",undefined,"iana"];Object.keys(tn).forEach((function forEachMimeType(nn){var an=tn[nn];var rn=an.extensions;if(!rn||!rn.length){return}Wt[nn]=rn;for(var In=0;Incn||on===cn&&Pt[sn].substr(0,12)==="application/")){continue}}Pt[sn]=nn}}))}},63798:Wt=>{Wt.exports=assert;function assert(Wt,Pt){if(!Wt)throw new Error(Pt||"Assertion failed")}assert.equal=function assertEqual(Wt,Pt,en){if(Wt!=Pt)throw new Error(en||"Assertion failed: "+Wt+" != "+Pt)}},88660:(Wt,Pt)=>{"use strict";var en=Pt;function toArray(Wt,Pt){if(Array.isArray(Wt))return Wt.slice();if(!Wt)return[];var en=[];if(typeof Wt!=="string"){for(var tn=0;tn>8;var rn=nn&255;if(an)en.push(an,rn);else en.push(rn)}}return en}en.toArray=toArray;function zero2(Wt){if(Wt.length===1)return"0"+Wt;else return Wt}en.zero2=zero2;function toHex(Wt){var Pt="";for(var en=0;en{var Pt=1e3;var en=Pt*60;var tn=en*60;var nn=tn*24;var an=nn*7;var rn=nn*365.25;Wt.exports=function(Wt,Pt){Pt=Pt||{};var en=typeof Wt;if(en==="string"&&Wt.length>0){return parse(Wt)}else if(en==="number"&&isFinite(Wt)){return Pt.long?fmtLong(Wt):fmtShort(Wt)}throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(Wt))};function parse(Wt){Wt=String(Wt);if(Wt.length>100){return}var In=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(Wt);if(!In){return}var sn=parseFloat(In[1]);var on=(In[2]||"ms").toLowerCase();switch(on){case"years":case"year":case"yrs":case"yr":case"y":return sn*rn;case"weeks":case"week":case"w":return sn*an;case"days":case"day":case"d":return sn*nn;case"hours":case"hour":case"hrs":case"hr":case"h":return sn*tn;case"minutes":case"minute":case"mins":case"min":case"m":return sn*en;case"seconds":case"second":case"secs":case"sec":case"s":return sn*Pt;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return sn;default:return undefined}}function fmtShort(Wt){var an=Math.abs(Wt);if(an>=nn){return Math.round(Wt/nn)+"d"}if(an>=tn){return Math.round(Wt/tn)+"h"}if(an>=en){return Math.round(Wt/en)+"m"}if(an>=Pt){return Math.round(Wt/Pt)+"s"}return Wt+"ms"}function fmtLong(Wt){var an=Math.abs(Wt);if(an>=nn){return plural(Wt,an,nn,"day")}if(an>=tn){return plural(Wt,an,tn,"hour")}if(an>=en){return plural(Wt,an,en,"minute")}if(an>=Pt){return plural(Wt,an,Pt,"second")}return Wt+" ms"}function plural(Wt,Pt,en,tn){var nn=Pt>=en*1.5;return Math.round(Wt/en)+" "+tn+(nn?"s":"")}},80501:function(Wt){(function Export(Pt,en){"use strict";if(true){Wt.exports=en}else{}})(this,(function Factory(Wt,Pt){var en="nwsapi-2.2.13",tn=Wt.document,nn=tn.documentElement,an=Array.prototype.slice,rn="[\\x20\\t]",In="[\\r\\n\\f]",sn="[\\x20\\t\\r\\n\\f]",on={operators:"[~*^$|]=|=",combinators:"[\\x20\\t>+~](?=[^>+~])"},cn={double_enc:'(?=(?:[^"]*["][^"]*["])*[^"]*$)',single_enc:"(?=(?:[^']*['][^']*['])*[^']*$)",parens_enc:"(?![^\\x28]*\\x29)",square_enc:"(?![^\\x5b]*\\x5d)"},dn={HasEscapes:RegExp("\\\\"),HexNumbers:RegExp("^[0-9a-fA-F]"),EscOrQuote:RegExp("^\\\\|[\\x22\\x27]"),RegExpChar:RegExp("(?!\\\\)[\\\\^$.,*+?()[\\]{}|\\/]","g"),TrimSpaces:RegExp("^"+sn+"+|"+sn+"+$|"+In,"g"),SplitGroup:RegExp("(\\([^)]*\\)|\\[[^[]*\\]|\\\\.|[^,])+","g"),CommaGroup:RegExp("(\\s*,\\s*)"+cn.square_enc+cn.parens_enc,"g"),FixEscapes:RegExp("\\\\([0-9a-fA-F]{1,6}"+sn+"?|.)|([\\x22\\x27])","g"),CombineWSP:RegExp("[\\n\\r\\f\\x20]+"+cn.single_enc+cn.double_enc,"g"),TabCharWSP:RegExp("(\\x20?\\t+\\x20?)"+cn.single_enc+cn.double_enc,"g"),PseudosWSP:RegExp("\\s+([-+])\\s+"+cn.square_enc,"g")},un={combinator:RegExp("\\s?([>+~])\\s?","g"),apimethods:RegExp("^(?:\\w+|\\*)\\|"),namespaces:RegExp("(\\*|\\w+)\\|\\w+")},pn={linguistic:"(dir|lang)(?:\\x28\\s?([-\\w]{2,})\\s?\\x29)",logicalsel:"(is|where|matches|not|has)(?:\\x28\\s?(\\[([^\\[\\]]*)\\]|[^()\\[\\]]*|.*)\\s?\\x29)",treestruct:"(nth(?:-last)?(?:-child|-of\\-type))(?:\\x28\\s?(even|odd|(?:[-+]?\\d*)(?:n\\s?[-+]?\\s?\\d*)?)\\s?\\x29)",locationpc:"(any\\-link|link|visited|target)\\b",useraction:"(hover|active|focus\\-within|focus\\-visible|focus)\\b",structural:"(root|empty|(?:(?:first|last|only)(?:-child|\\-of\\-type)))\\b",inputstate:"(enabled|disabled|read\\-only|read\\-write|placeholder\\-shown|default)\\b",inputvalue:"(checked|indeterminate|required|optional|valid|invalid|in\\-range|out\\-of\\-range)\\b",pseudo_nop:"(autofill|-webkit\\-autofill)\\b",pseudo_sng:"(after|before|first\\-letter|first\\-line)\\b",pseudo_dbl:":(after|before|first\\-letter|first\\-line|selection|placeholder|-webkit-[-a-zA-Z0-9]{2,})\\b"},mn={treestruct:RegExp("^:(?:"+pn.treestruct+")(.*)","i"),structural:RegExp("^:(?:"+pn.structural+")(.*)","i"),linguistic:RegExp("^:(?:"+pn.linguistic+")(.*)","i"),useraction:RegExp("^:(?:"+pn.useraction+")(.*)","i"),inputstate:RegExp("^:(?:"+pn.inputstate+")(.*)","i"),inputvalue:RegExp("^:(?:"+pn.inputvalue+")(.*)","i"),locationpc:RegExp("^:(?:"+pn.locationpc+")(.*)","i"),logicalsel:RegExp("^:(?:"+pn.logicalsel+")(.*)","i"),pseudo_nop:RegExp("^:(?:"+pn.pseudo_nop+")(.*)","i"),pseudo_sng:RegExp("^:(?:"+pn.pseudo_sng+")(.*)","i"),pseudo_dbl:RegExp("^:(?:"+pn.pseudo_dbl+")(.*)","i"),children:RegExp("^"+sn+"?\\>"+sn+"?(.*)"),adjacent:RegExp("^"+sn+"?\\+"+sn+"?(.*)"),relative:RegExp("^"+sn+"?\\~"+sn+"?(.*)"),ancestor:RegExp("^"+sn+"+(.*)"),universal:RegExp("^(\\*)(.*)"),namespace:RegExp("^(\\*|[-\\w]+)?\\|(.*)")},bn=RegExp("^(?:[\\u0627-\\u064a]|[\\u0591-\\u08ff]|[\\ufb1d-\\ufdfd]|[\\ufe70-\\ufefc])+$"),Gn="Not enough arguments",hn=" is not a valid selector",Zn=RegExp("(:nth(?:-last)?-child)","i"),An=RegExp("(:nth(?:-last)?-of-type)","i"),Wn,Nn,gn={IDS_DUPES:true,LOGERRORS:true,VERBOSITY:true},yn,vn,Yn,En={"=":1,"^=":1,"$=":1,"|=":1,"*=":1,"~=":1},Vn={accept:1,"accept-charset":1,align:1,alink:1,axis:1,bgcolor:1,charset:1,checked:1,clear:1,codetype:1,color:1,compact:1,declare:1,defer:1,dir:1,direction:1,disabled:1,enctype:1,face:1,frame:1,hreflang:1,"http-equiv":1,lang:1,language:1,link:1,media:1,method:1,multiple:1,nohref:1,noresize:1,noshade:1,nowrap:1,readonly:1,rel:1,rev:1,rules:1,scope:1,scrolling:1,selected:1,shape:1,target:1,text:1,type:1,valign:1,valuetype:1,vlink:1},Rn={},wn={},Fn={"=":{p1:"^",p2:"$",p3:"true"},"^=":{p1:"^",p2:"",p3:"true"},"$=":{p1:"",p2:"$",p3:"true"},"*=":{p1:"",p2:"",p3:"true"},"|=":{p1:"^",p2:"(-|$)",p3:"true"},"~=":{p1:"(^|\\s)",p2:"(\\s|$)",p3:"true"}},concatCall=function(Wt,Pt){var en=0,tn=Wt.length,nn=Array(tn);while(tn>en){if(false===Pt(nn[en]=Wt[en]))break;++en}return nn},concatList=function(Wt,Pt){var en=-1,tn=Pt.length;while(tn--){Wt[Wt.length]=Pt[++en]}return Wt},documentOrder=function(Wt,Pt){if(!Qn&&Wt===Pt){Qn=true;return 0}return Wt.compareDocumentPosition(Pt)&4?-1:1},Qn=false,unique=function(Wt){var Pt=0,en=-1,tn=Wt.length+1,nn=[];while(--tn){if(Wt[Pt++]===Wt[Pt])continue;nn[++en]=Wt[Pt-1]}Qn=false;return nn},switchContext=function(Wt,Pt){var en=tn;tn=Wt.ownerDocument||Wt;if(Pt||en!==tn){nn=tn.documentElement;Yn=isHTML(tn);vn=Yn&&tn.compatMode.indexOf("CSS")<0;yn=nn&&nn.namespaceURI;Gl.doc=tn;Gl.root=nn}return Gl.from=Wt},codePointToUTF16=function(Wt){if(Wt<1||Wt>1114111||Wt>55295&&Wt<57344){return"\\ufffd"}if(Wt<65536){var Pt="000"+Wt.toString(16);return"\\u"+Pt.substr(Pt.length-4)}return"\\u"+((Wt-65536>>10)+55296).toString(16)+"\\u"+((Wt-65536)%1024+56320).toString(16)},stringFromCodePoint=function(Wt){if(Wt<1||Wt>1114111||Wt>55295&&Wt<57344){return"�"}if(Wt<65536){return String.fromCharCode(Wt)}return String.fromCodePoint?String.fromCodePoint(Wt):String.fromCharCode((Wt-65536>>10)+55296,(Wt-65536)%1024+56320)},convertEscapes=function(Wt){return dn.HasEscapes.test(Wt)?Wt.replace(dn.FixEscapes,(function(Wt,Pt,en){return en?"\\"+en:dn.HexNumbers.test(Pt)?codePointToUTF16(parseInt(Pt,16)):dn.EscOrQuote.test(Pt)?Wt:Pt})):Wt},unescapeIdentifier=function(Wt){return dn.HasEscapes.test(Wt)?Wt.replace(dn.FixEscapes,(function(Wt,Pt,en){return en?en:dn.HexNumbers.test(Pt)?stringFromCodePoint(parseInt(Pt,16)):dn.EscOrQuote.test(Pt)?Wt:Pt})):Wt},fn={"#":"getElementById","*":"getElementsByTagNameNS","|":"getElementsByTagNameNS",".":"getElementsByClassName"},Hn={"#":function(Wt,Pt){dn.HasEscapes.test(Pt)&&(Pt=unescapeIdentifier(Pt));return function(en,tn){return byId(Pt,Wt)}},"*":function(Wt,Pt){dn.HasEscapes.test(Pt)&&(Pt=unescapeIdentifier(Pt));return function(en,tn){return byTag(Pt,Wt)}},"|":function(Wt,Pt){dn.HasEscapes.test(Pt)&&(Pt=unescapeIdentifier(Pt));return function(en,tn){return byTagNS(Pt,Wt)}},".":function(Wt,Pt){dn.HasEscapes.test(Pt)&&(Pt=unescapeIdentifier(Pt));return function(en,tn){return byClass(Pt,Wt)}}},byIdRaw=function(Wt,Pt){var en=Pt,tn=[],nn=en.firstElementChild;while(en=nn){en.id==Wt&&(tn[tn.length]=en);if(nn=en.firstElementChild||en.nextElementSibling)continue;while(!nn&&(en=en.parentElement)&&en!==Pt){nn=en.nextElementSibling}}return tn},byId=function(Wt,Pt){var en,tn,nn,an,rn=fn["#"];if(gn.IDS_DUPES===false){if(rn in Pt){return(en=Pt[rn](Wt))?[en]:ol}}else{if("all"in Pt){if(en=Pt.all[Wt]){if(en.nodeType==1)return en.getAttribute("id")!=Wt?[]:[en];else if(Wt=="length")return(en=Pt[rn](Wt))?[en]:ol;for(tn=0,nn=en.length,an=[];nn>tn;++tn){if(en[tn].id==Wt)an[an.length]=en[tn]}return an&&an.length?an:[an]}else return ol}}return byIdRaw(Wt,Pt)},byTagNS=function(Wt,Pt){return byTag(Pt,Wt)},byTag=function(Wt,Pt){var en,tn,nn=fn["*"];if(nn in Pt){return an.call(Pt[nn]("*",Wt))}else{if(en=Pt.firstElementChild){Wt=Wt.toLowerCase();if(!(en.nextElementSibling||Wt=="*"||en.localName==Wt)){return an.call(en[nn]("*",Wt))}else{tn=[];do{if(Wt=="*"||en.localName==Wt)tn[tn.length]=en;concatList(tn,en[nn]("*",Wt))}while(en=en.nextElementSibling)}}else tn=ol}return tn},byClass=function(Wt,Pt){var en,tn,nn=fn["."],rn;if(nn in Pt){return an.call(Pt[nn](Wt))}else{if(en=Pt.firstElementChild){rn=RegExp("(^|\\s)"+Wt+"(\\s|$)",vn?"i":"");if(!(en.nextElementSibling||rn.test(en.className))){return an.call(en[nn](Wt))}else{tn=[];do{if(rn.test(en.className))tn[tn.length]=en;concatList(tn,en[nn](Wt))}while(en=en.nextElementSibling)}}else tn=ol}return tn},hasAttributeNS=function(Wt,Pt){var en,tn,nn=Wt.getAttributeNames();Pt=RegExp(":?"+Pt+"$",Yn?"i":"");for(en=0,tn=nn.length;tn>en;++en){if(Pt.test(nn[en]))return true}return false},Cn=function(){var Wt=0,Pt=0,en=0,tn=undefined,nn=Array(),an=Array();return function(rn,In){if(In==2){Wt=0;Pt=0;en=0;an.length=0;nn.length=0;tn=undefined;return-1}var sn,on,cn,dn,un;if(tn===rn.parentElement){on=en;cn=Wt;un=Pt}else{un=nn.length;tn=rn.parentElement;for(on=-1,cn=0,dn=un-1;un>cn;++cn,--dn){if(nn[cn]===tn){on=cn;break}if(nn[dn]===tn){on=dn;break}}if(on<0){nn[on=un]=tn;un=0;an[on]=Array();sn=tn&&tn.firstElementChild||rn;while(sn){an[on][un]=sn;if(sn===rn)cn=un;sn=sn.nextElementSibling;++un}en=on;Wt=0;Pt=un;if(un<2)return un}else{un=an[on].length;en=on}}if(rn!==an[on][cn]&&rn!==an[on][cn=0]){for(cn=0,sn=an[on],dn=un-1;un>cn;++cn,--dn){if(sn[cn]===rn){break}if(sn[dn]===rn){cn=dn;break}}}Wt=cn+1;Pt=un;return In?un-cn:Wt}}(),Xn=function(){var Wt=0,Pt=0,en=0,tn=undefined,nn=Array(),an=Array();return function(rn,In){if(In==2){Wt=0;Pt=0;en=0;an.length=0;nn.length=0;tn=undefined;return-1}var sn,on,cn,dn,un,pn=rn.localName;if(an[en]&&an[en][pn]&&tn===rn.parentElement){on=en;cn=Wt;un=Pt}else{un=nn.length;tn=rn.parentElement;for(on=-1,cn=0,dn=un-1;un>cn;++cn,--dn){if(nn[cn]===tn){on=cn;break}if(nn[dn]===tn){on=dn;break}}if(on<0||!an[on][pn]){nn[on=un]=tn;an[on]||(an[on]=Object());un=0;an[on][pn]=Array();sn=tn&&tn.firstElementChild||rn;while(sn){if(sn===rn)cn=un;if(sn.localName==pn){an[on][pn][un]=sn;++un}sn=sn.nextElementSibling}en=on;Wt=cn;Pt=un;if(un<2)return un}else{un=an[on][pn].length;en=on}}if(rn!==an[on][pn][cn]&&rn!==an[on][pn][cn=0]){for(cn=0,sn=an[on][pn],dn=un-1;un>cn;++cn,--dn){if(sn[cn]===rn){break}if(sn[dn]===rn){cn=dn;break}}}Wt=cn+1;Pt=un;return In?un-cn:Wt}}(),isHTML=function(Wt){var Pt=Wt.ownerDocument||Wt;return Pt.nodeType==9&&"contentType"in Pt?Pt.contentType.indexOf("/html")>0:Pt.createElement("DiV").localName=="div"},isFocusable=function(Wt){var Pt=Wt.ownerDocument;if(Wt.contentDocument&&Wt.localName=="iframe"){return false}if(Pt.hasFocus()&&Wt==Pt.activeElement){if(Wt.type||Wt.href||typeof Wt.tabIndex=="number"){return true}}return false},configure=function(Wt,Pt){if(typeof Wt=="string"){return!!gn[Wt]}if(typeof Wt!="object"){return gn}for(var en in Wt){gn[en]=!!Wt[en]}if(Pt){ml={};bl={}}setIdentifierSyntax();return true},emit=function(Pt,en){var tn;if(gn.VERBOSITY){if(en){tn=new en(Pt)}else{tn=new Wt.DOMException(Pt,"SyntaxError")}throw tn}if(gn.LOGERRORS&&console&&console.log){console.log(Pt)}},initialize=function(Wt){setIdentifierSyntax();cl=switchContext(Wt,true)},setIdentifierSyntax=function(){var Wt="[^\\x00-\\x9f]",Pt="\\\\[^\\r\\n\\f0-9a-fA-F]",en="\\\\[0-9a-fA-F]{1,6}(?:\\r\\n|\\s)?",tn="-?(?:[a-zA-Z_-]|"+Wt+"|"+Pt+"|"+en+")"+"(?:-{2}|[0-9]|[a-zA-Z_-]|"+Wt+"|"+Pt+"|"+en+")*",nn="[-\\w]+",an="(?:[-+]?\\d*)(?:n\\s?[-+]?\\s?\\d*)",rn='"[^"\\\\]*(?:\\\\.[^"\\\\]*)*(?:"|$)',In="'[^'\\\\]*(?:\\\\.[^'\\\\]*)*(?:'|$)",cn=tn+"|"+rn+"|"+In,dn="([\\x22\\x27]?)((?!\\3)*|(?:\\\\?.)*?)(?:\\3|$)",un="\\["+"(?:\\*\\|)?"+sn+"?"+"("+tn+"(?::"+tn+")?)"+sn+"?"+"(?:"+"("+on.operators+")"+sn+"?"+"(?:"+cn+")"+")?"+"(?:"+sn+"?\\b(i))?"+sn+"?"+"(?:\\]|$)",pn=un.replace(cn,dn),bn="(?:\\x28"+sn+"*"+"(?:"+an+"?)?|"+"(?:\\*|\\|)|"+"(?:"+"(?::"+nn+"(?:\\x28"+an+"?(?:\\x29|$))?|"+")|"+"(?:[.#]?"+tn+")|"+"(?:"+un+")"+")+|"+"(?:"+sn+"?[>+~][^>+~]"+sn+"?)|"+"(?:"+sn+"?,"+sn+"?)|"+"(?:"+sn+"?)|"+"(?:\\x29|$)"+")*",Gn="(?="+sn+"?[^>+~(){}<>])"+"(?:"+"(?:\\*|\\|)|"+"(?:[.#]?"+tn+")+|"+"(?:"+un+")+|"+"(?:::?"+nn+bn+")|"+"(?:"+sn+"?"+on.combinators+sn+"?)|"+"(?:"+sn+"?,"+sn+"?)|"+"(?:"+sn+"?)"+")+";Wn=RegExp("(?:([.:#*]?)"+"("+tn+")"+"(?:"+":[-\\w]+|"+"\\[[^\\]]+(?:\\]|$)|"+"\\x28[^\\x29]+(?:\\x29|$)"+")*)$");Nn=RegExp(Gn,"g");mn.id=RegExp("^#("+tn+")(.*)");mn.tagName=RegExp("^("+tn+")(.*)");mn.className=RegExp("^\\.("+tn+")(.*)");mn.attribute=RegExp("^(?:"+pn+")(.*)")},kn='"use strict";return function Resolver(c,f,x,r)',Jn="var e,n,o,j=r.length-1,k=-1",Ln="var e,n,o",Bn="main:while((e=c[++k]))",xn="main:while((e=c.item(++k)))",On="e=c;",Tn="r[++j]=c[k];",Un="r[++j]=c.item(k);",Mn="",zn="continue main;",Sn="r=true;",jn="if(f(c[k])){break main;}",Dn="if(f(c.item(k))){break main;}",_n="f(c);",Kn=[],Pn=[],compile=function(Wt,Pt,en){var tn,nn,an="",rn="",In="",sn="",on="";switch(Pt){case true:if(pl[Wt]){return pl[Wt]}In=Tn+(en?jn:"")+zn;an=Jn;rn=Bn;break;case false:if(ul[Wt]){return ul[Wt]}In=Mn+(en?_n:"")+Sn;an=Ln;rn=On;break;case null:if(pl[Wt]){return pl[Wt]}In=Un+(en?Dn:"")+zn;an=Jn;rn=xn;break;default:break}sn=compileSelector(Wt,In,Pt,en);rn+=Pt||Pt===null?"{"+sn+"}":sn;if(Pt||Pt===null&&Wt.includes(":nth")){rn+=Zn.test(Wt)?"s.nthElement(null, 2);":"";rn+=An.test(Wt)?"s.nthOfType(null, 2);":""}if(Kn[0]||Pn[0]){on=","+(Kn.join(",")||Pn.join(","));Kn.length=0;Pn.length=0}tn=Function("s",kn+"{"+an+on+";"+rn+"return r;}")(Gl);return Pt||Pt===null?pl[Wt]=tn:ul[Wt]=tn},compileSelector=function(Wt,Pt,en,an){var rn,In,sn,on,cn=0,pn,Gn,Zn,An,Wn,Nn,gn,Qn,fn,Hn,Cn,Xn=Wt,kn,Jn;kn=en?dl:il;Xn=Xn.replace(un.combinator,"$1");e:while(Xn){++cn;fn=un.apimethods.test(Xn)?"|":Xn[0];switch(fn){case"*":Nn=Xn.match(mn.universal);break;case"#":Nn=Xn.match(mn.id);Pt="if((/^"+Nn[1]+'$/.test(e.getAttribute("id")))){'+Pt+"}";break;case".":Nn=Xn.match(mn.className);An=(vn?"i":"")+'.test(e.getAttribute("class"))';Pt="if((/(^|\\s)"+Nn[1]+"(\\s|$)/"+An+")){"+Pt+"}";break;case/[_a-z]/i.test(fn)?fn:undefined:Nn=Xn.match(mn.tagName);Pt='if((e.localName=="'+Nn[1]+'")){'+Pt+"}";break;case"|":Nn=Xn.match(mn.namespace);if(Nn[1]=="*"){Pt="if(true){"+Pt+"}"}else if(!Nn[1]){Pt="if((!e.namespaceURI)){"+Pt+"}"}else if(typeof Nn[1]=="string"&&nn.prefix==Nn[1]){Pt='if((e.namespaceURI=="'+yn+'")){'+Pt+"}"}else{emit("'"+kn+"'"+hn)}break;case"[":Nn=Xn.match(mn.attribute);Gn=Nn[0].match(un.namespaces);pn=Nn[1];Wn=pn.split(":");Wn=Wn.length==2?Wn[1]:Wn[0];if(Nn[2]&&!(Hn=Fn[Nn[2]])){emit("'"+kn+"'"+hn);return""}if(Nn[4]===""){Hn=Nn[2]=="~="?{p1:"^\\s",p2:"+$",p3:"true"}:Nn[2]in En&&Nn[2]!="~="?{p1:"^",p2:"$",p3:"true"}:Hn}else if(Nn[2]=="~="&&Nn[4].includes(" ")){break}else if(Nn[4]){Nn[4]=convertEscapes(Nn[4]).replace(dn.RegExpChar,"\\$&")}Cn=Nn[5]=="i"||Yn&&Vn[Wn.toLowerCase()]?"i":"";Pt="if(("+(!Nn[2]?Gn?'s.hasAttributeNS(e,"'+pn+'")':'e.hasAttribute&&e.hasAttribute("'+pn+'")':!Nn[4]&&En[Nn[2]]&&Nn[2]!="~="?'e.getAttribute&&e.getAttribute("'+pn+'")==""':"(/"+Hn.p1+Nn[4]+Hn.p2+"/"+Cn+').test(e.getAttribute&&e.getAttribute("'+pn+'"))=='+Hn.p3)+")){"+Pt+"}";break;case"~":Nn=Xn.match(mn.relative);Pt="var N"+cn+"=e;while(e&&(e=e.previousElementSibling)){"+Pt+"}e=N"+cn+";";break;case"+":Nn=Xn.match(mn.adjacent);Pt="var N"+cn+"=e;if(e&&(e=e.previousElementSibling)){"+Pt+"}e=N"+cn+";";break;case"\t":case" ":Nn=Xn.match(mn.ancestor);Pt="var N"+cn+"=e;while(e&&(e=e.parentElement)){"+Pt+"}e=N"+cn+";";break;case">":Nn=Xn.match(mn.children);Pt="var N"+cn+"=e;if(e&&(e=e.parentElement)){"+Pt+"}e=N"+cn+";";break;case fn in Rn?fn:undefined:Nn[Nn.length-1]="*";Pt=Rn[fn](Nn)+Pt;break;case":":if(Nn=Xn.match(mn.structural)){Nn[1]=Nn[1].toLowerCase();switch(Nn[1]){case"root":Pt="if((e===s.root)){"+Pt+(en?"break main;":"")+"}";break;case"empty":Pt="n=e.firstChild;while(n&&!(/1|3/).test(n.nodeType)){n=n.nextSibling}if(!n){"+Pt+"}";break;case"only-child":Pt="if((!e.nextElementSibling&&!e.previousElementSibling)){"+Pt+"}";break;case"last-child":Pt="if((!e.nextElementSibling)){"+Pt+"}";break;case"first-child":Pt="if((!e.previousElementSibling)){"+Pt+"}";break;case"only-of-type":Pt="o=e.localName;"+"n=e;while((n=n.nextElementSibling)&&n.localName!=o);if(!n){"+"n=e;while((n=n.previousElementSibling)&&n.localName!=o);}if(!n){"+Pt+"}";break;case"last-of-type":Pt="n=e;o=e.localName;while((n=n.nextElementSibling)&&n.localName!=o);if(!n){"+Pt+"}";break;case"first-of-type":Pt="n=e;o=e.localName;while((n=n.previousElementSibling)&&n.localName!=o);if(!n){"+Pt+"}";break;default:emit("'"+kn+"'"+hn);break}}else if(Nn=Xn.match(mn.treestruct)){Nn[1]=Nn[1].toLowerCase();switch(Nn[1]){case"nth-child":case"nth-of-type":case"nth-last-child":case"nth-last-of-type":Wn=/-of-type/i.test(Nn[1]);if(Nn[1]&&Nn[2]){Cn=/last/i.test(Nn[1]);if(Nn[2]=="n"){Pt="if(true){"+Pt+"}";break}else if(Nn[2]=="1"){Hn=Cn?"next":"previous";Pt=Wn?"n=e;o=e.localName;"+"while((n=n."+Hn+"ElementSibling)&&n.localName!=o);if(!n){"+Pt+"}":"if(!e."+Hn+"ElementSibling){"+Pt+"}";break}else if(Nn[2]=="even"||Nn[2]=="2n0"||Nn[2]=="2n+0"||Nn[2]=="2n"){Hn="n%2==0"}else if(Nn[2]=="odd"||Nn[2]=="2n1"||Nn[2]=="2n+1"){Hn="n%2==1"}else{on=/n/i.test(Nn[2]);sn=Nn[2].split("n");rn=parseInt(sn[0],10)||0;In=parseInt(sn[1],10)||0;if(sn[0]=="-"){rn=-1}if(sn[0]=="+"){rn=+1}Hn=(In?"(n"+(In>0?"-":"+")+Math.abs(In)+")":"n")+"%"+rn+"==0";Hn=rn>=+1?on?"n>"+(In-1)+(Math.abs(rn)!=1?"&&"+Hn:""):"n=="+rn:rn<=-1?on?"n<"+(In+1)+(Math.abs(rn)!=1?"&&"+Hn:""):"n=="+rn:rn===0?sn[0]?"n=="+In:"n>"+(In-1):"false"}Wn=Wn?"OfType":"Element";Cn=Cn?"true":"false";Pt="n=s.nth"+Wn+"(e,"+Cn+");if(("+Hn+")){"+Pt+"}"}else{emit("'"+kn+"'"+hn)}break;default:emit("'"+kn+"'"+hn);break}}else if(Nn=Xn.match(mn.logicalsel)){Nn[1]=Nn[1].toLowerCase();switch(Nn[1]){case"is":case"where":case"matches":Wn=Nn[2].replace(dn.CommaGroup,",").replace(dn.TrimSpaces,"");Pt='if(s.match("'+Wn.replace(/\x22/g,'\\"')+'",e)){'+Pt+"}";break;case"not":Wn=Nn[2].replace(dn.CommaGroup,",").replace(dn.TrimSpaces,"");Pt='if(!s.match("'+Wn.replace(/\x22/g,'\\"')+'",e)){'+Pt+"}";break;case"has":Zn=kn.split(":")[0];Wn=Nn[2].replace(dn.CommaGroup,",").replace(dn.TrimSpaces,"");Pt='if(s.match("'+Zn.replace(/\x22/g,'\\"')+'",e) && e.querySelector("'+Wn.replace(/\x22/g,'\\"')+'")){'+Pt+"}";break;default:emit("'"+kn+"'"+hn);break}}else if(Nn=Xn.match(mn.linguistic)){Nn[1]=Nn[1].toLowerCase();switch(Nn[1]){case"dir":Pt="var p;if(("+"(/"+Nn[2]+'/i.test(e.dir))||(p=s.ancestor("[dir]", e))&&'+"(/"+Nn[2]+'/i.test(p.dir))||(e.dir==""||e.dir=="auto")&&'+"("+(Nn[2]=="ltr"?"!":"")+bn+".test(e.textContent)))"+"){"+Pt+"};";break;case"lang":Wn="(?:^|-)"+Nn[2]+"(?:-|$)";Pt="var p;if(("+'(e.isConnected&&(e.lang==""&&(p=s.ancestor("[lang]",e)))&&'+'(p.lang=="'+Nn[2]+'")||/'+Wn+"/i.test(e.lang)))"+"){"+Pt+"};";break;default:emit("'"+kn+"'"+hn);break}}else if(Nn=Xn.match(mn.locationpc)){Nn[1]=Nn[1].toLowerCase();switch(Nn[1]){case"any-link":Pt='if((/^a|area$/i.test(e.localName)&&e.hasAttribute("href")||e.visited)){'+Pt+"}";break;case"link":Pt='if((/^a|area$/i.test(e.localName)&&e.hasAttribute("href"))){'+Pt+"}";break;case"visited":Pt='if((/^a|area$/i.test(e.localName)&&e.hasAttribute("href")&&e.visited)){'+Pt+"}";break;case"target":Pt="if(((s.doc.compareDocumentPosition(e)&16)&&s.doc.location.hash&&e.id==s.doc.location.hash.slice(1))){"+Pt+"}";break;default:emit("'"+kn+"'"+hn);break}}else if(Nn=Xn.match(mn.useraction)){Nn[1]=Nn[1].toLowerCase();switch(Nn[1]){case"hover":Pt="hasFocus"in tn&&tn.hasFocus()?"if((e===s.doc.hoverElement)){"+Pt+"}":Pt;break;case"active":Pt="hasFocus"in tn&&tn.hasFocus()?"if((e===s.doc.activeElement)){"+Pt+"}":Pt;break;case"focus":Pt="hasFocus"in tn?"if(s.isFocusable(e)&&e===s.doc.activeElement){"+Pt+"}":Pt;break;case"focus-visible":Pt="hasFocus"in tn?"if(s.isFocusable(e)){"+"n=s.doc.activeElement;if(e!==n){while(e){e=e.parentElement;if(e===n)break;}}}"+"if((e===n&&e.autofocus)){"+Pt+"}":Pt;break;case"focus-within":Pt="hasFocus"in tn?"if(s.isFocusable(e)){"+"n=s.doc.activeElement;if(n!==e){while(n){n=n.parentElement;if(n===e)break;}}}"+"if((n===e&&n.autofocus)){"+Pt+"}":Pt;break;default:emit("'"+kn+"'"+hn);break}}else if(Nn=Xn.match(mn.inputstate)){Nn[1]=Nn[1].toLowerCase();switch(Nn[1]){case"enabled":Pt='if((("form" in e||/^optgroup$/i.test(e.localName))&&"disabled" in e &&e.disabled===false'+")){"+Pt+"}";break;case"disabled":Pt='if((("form" in e||/^optgroup$/i.test(e.localName))&&"disabled" in e)){'+"var x=0,N=[],F=false,L=false;"+"if(!(/^(optgroup|option)$/i.test(e.localName))){"+"n=e.parentElement;"+"while(n){"+'if(n.localName=="fieldset"){'+"N[x++]=n;"+"if(n.disabled===true){"+"F=true;"+"break;"+"}"+"}"+"n=n.parentElement;"+"}"+"for(var x=0;xtn;++tn)Wt[tn](Pt,en,null,false)&&(an=true);return an},match_collect=function(Wt,Pt){for(var en=0,tn=Wt.length,nn=[];tn>en;++en)nn[en]=compile(Wt[en],false,Pt);return{factory:nn}},$n=function _matches(Wt,Pt,en){var tn,nn;if(Pt&&ml[Wt]){return match_assert(ml[Wt].factory,Pt,en)}il=Wt;if(arguments.length===0){emit(Gn,TypeError);return gn.VERBOSITY?undefined:false}else if(arguments[0]===""){emit("''"+hn);return gn.VERBOSITY?undefined:false}if(typeof Wt!="string"){Wt=""+Wt}if(/:scope/i.test(Wt)){Wt=makeref(Wt,Pt)}nn=Wt.replace(/\x00|\\$/g,"�").replace(dn.CombineWSP," ").replace(dn.PseudosWSP,"$1").replace(dn.TabCharWSP,"\t").replace(dn.CommaGroup,",").replace(dn.TrimSpaces,"");if((tn=nn.match(Nn))&&tn.join("")==nn){tn=nn.match(dn.SplitGroup);if(nn[nn.length-1]==","){emit(hn);return gn.VERBOSITY?undefined:false}}else{emit("'"+Wt+"'"+hn);return gn.VERBOSITY?undefined:false}ml[Wt]=match_collect(tn,en);return match_assert(ml[Wt].factory,Pt,en)},el=function _querySelector(Wt,Pt,en){if(arguments.length===0){emit(Gn,TypeError)}return tl(Wt,Pt,typeof en=="function"?function firstMatch(Wt){en(Wt);return false}:function firstMatch(){return false})[0]||null},tl=function _querySelectorAll(Wt,Pt,en){var nn,an=[],rn,In;Pt||(Pt=tn);if(Wt){if(In=bl[Wt]){if(In.context===Pt&&In.callback===en){var sn=In.factory,on=In.htmlset,cn=In.nodeset;if(cn.length>1){for(var un=0,pn=cn.length,mn;pn>un;++un){mn=Hn[cn[un][0]](Pt,cn[un].slice(1))();if(sn[un]!==null){sn[un](mn,en,Pt,an)}else{an=an.concat(mn)}}if(pn>1&&an.length>1){an.sort(documentOrder);Qn&&(an=unique(an))}}else{if(sn[0]){an=sn[0](on[0](),en,Pt,an)}else{an=on[0]()}}if(typeof en=="function"){an=concatCall(an,en)}return an}}}dl=Wt;if(arguments.length===0){emit(Gn,TypeError);return gn.VERBOSITY?undefined:ol}else if(arguments[0]===""){emit("''"+hn);return gn.VERBOSITY?undefined:ol}else if(cl!==Pt){cl=switchContext(Pt)}if(typeof Wt!="string"){Wt=""+Wt}if(/:scope/i.test(Wt)){Wt=makeref(Wt,Pt)}rn=Wt.replace(/\x00|\\$/g,"�").replace(dn.CombineWSP," ").replace(dn.PseudosWSP,"$1").replace(dn.TabCharWSP,"\t").replace(dn.CommaGroup,",").replace(dn.TrimSpaces,"");if((nn=rn.match(Nn))&&nn.join("")==rn){nn=rn.match(dn.SplitGroup);if(rn[rn.length-1]==","){emit(hn);return gn.VERBOSITY?undefined:false}}else{emit("'"+Wt+"'"+hn);return gn.VERBOSITY?undefined:false}bl[Wt]=collect(nn,Pt,en);an=bl[Wt].results;if(typeof en=="function"){an=concatCall(an,en)}return an},optimize=function(Wt,Pt){var en=Pt.index,tn=Pt[1].length+Pt[2].length;return Wt.slice(0,en)+(" >+~".indexOf(Wt.charAt(en-1))>-1?":[".indexOf(Wt.charAt(en+tn+1))>-1?"*":"":"")+Wt.slice(en+tn-(Pt[1]=="*"?1:0))},collect=function(Wt,Pt,en){var tn,nn,an={},rn=["","*","*"],In=Wt,sn=[],on=[],cn=[],dn=[],un;for(tn=0,nn=Wt.length;nn>tn;++tn){if(!an[Wt[tn]]&&(an[Wt[tn]]=true)){un=Wt[tn].match(Wn);if(un&&un[1]!=":"&&(rn=un)){rn[1]||(rn[1]="*");In[tn]=optimize(In[tn],rn)}else{rn=["","*","*"]}}cn[tn]=rn[1]+rn[2];on[tn]=Hn[rn[1]](Pt,rn[2]);sn[tn]=compile(In[tn],true,null);sn[tn]?sn[tn](on[tn](),en,Pt,dn):dn.concat(on[tn]())}if(nn>1){dn.sort(documentOrder);Qn&&(dn=unique(dn))}return{callback:en,context:Pt,factory:sn,htmlset:on,nodeset:cn,results:dn}},nl,ll,al,rl,Il,sl,install=function(Wt){nl=Element.prototype.closest;ll=Element.prototype.matches;al=Element.prototype.querySelector;rl=Element.prototype.querySelectorAll;Il=Document.prototype.querySelector;sl=Document.prototype.querySelectorAll;function parseQSArgs(){var Wt=arguments[arguments.length-1];return arguments.length<2?Wt.apply(this,[]):arguments.length<3?Wt.apply(this,[arguments[0],this]):Wt.apply(this,[arguments[0],this,typeof arguments[1]=="function"?arguments[1]:undefined])}Element.prototype.closest=HTMLElement.prototype.closest=function closest(){return parseQSArgs.apply(this,[].slice.call(arguments).concat(qn))};Element.prototype.matches=HTMLElement.prototype.matches=function matches(){return parseQSArgs.apply(this,[].slice.call(arguments).concat($n))};Element.prototype.querySelector=HTMLElement.prototype.querySelector=function querySelector(){return parseQSArgs.apply(this,[].slice.call(arguments).concat(el))};Element.prototype.querySelectorAll=HTMLElement.prototype.querySelectorAll=function querySelectorAll(){return parseQSArgs.apply(this,[].slice.call(arguments).concat(tl))};Document.prototype.querySelector=DocumentFragment.prototype.querySelector=function querySelector(){return parseQSArgs.apply(this,[].slice.call(arguments).concat(el))};Document.prototype.querySelectorAll=DocumentFragment.prototype.querySelectorAll=function querySelectorAll(){return parseQSArgs.apply(this,[].slice.call(arguments).concat(tl))};if(Wt){document.addEventListener("load",(function(Wt){var en,tn,nn,an,rn=Wt.target;if(/iframe/i.test(rn.localName)){en="("+Pt+")(this, "+Factory+");";tn=rn.ownerDocument;an=tn.createElement("script");an.textContent=en+"NW.Dom.install(true)";nn=tn.documentElement;nn.removeChild(nn.insertBefore(an,nn.firstChild))}}),true)}},uninstall=function(){if(nl){Element.prototype.closest=nl;HTMLElement.prototype.closest=nl}if(ll){Element.prototype.matches=ll;HTMLElement.prototype.matches=ll}if(al){Element.prototype.querySelector=HTMLElement.prototype.querySelector=al;Element.prototype.querySelectorAll=HTMLElement.prototype.querySelectorAll=al}if(sl){Document.prototype.querySelector=DocumentFragment.prototype.querySelector=Il;Document.prototype.querySelectorAll=DocumentFragment.prototype.querySelectorAll=sl}},ol=Array(),cl,il,dl,ul={},pl={},ml={},bl={},Gl={doc:tn,from:tn,root:nn,byTag:byTag,first:el,match:$n,ancestor:qn,nthOfType:Xn,nthElement:Cn,isFocusable:isFocusable,hasAttributeNS:hasAttributeNS},hl={lastMatched:il,lastSelected:dl,matchLambdas:ul,selectLambdas:pl,matchResolvers:ml,selectResolvers:bl,CFG:on,M_BODY:Mn,S_BODY:Tn,M_TEST:_n,S_TEST:jn,byId:byId,byTag:byTag,byClass:byClass,match:$n,first:el,select:tl,closest:qn,compile:compile,configure:configure,emit:emit,Config:gn,Snapshot:Gl,Version:en,install:install,uninstall:uninstall,Operators:Fn,Selectors:wn,registerCombinator:function(Wt,Pt){var en=0,tn=Wt.length,nn;for(;tn>en;++en){if(Wt[en]!="="){nn=Wt[en];break}}if(on.combinators.indexOf(nn)<0){on.combinators=on.combinators.replace("](",nn+"](");on.combinators=on.combinators.replace("])",nn+"])");Rn[Wt]=Pt;setIdentifierSyntax()}else{console.warn("Warning: the '"+Wt+"' combinator is already registered.")}},registerOperator:function(Wt,Pt){var en=0,tn=Wt.length,nn;for(;tn>en;++en){if(Wt[en]!="="){nn=Wt[en];break}}if(on.operators.indexOf(nn)<0&&!Fn[Wt]){on.operators=on.operators.replace("]=",nn+"]=");Fn[Wt]=Pt;setIdentifierSyntax()}else{console.warn("Warning: the '"+Wt+"' operator is already registered.")}},registerSelector:function(Wt,Pt,en){wn[Wt]||(wn[Wt]={Expression:Pt,Callback:en})}};initialize(tn);return hl}))},55560:(Wt,Pt,en)=>{var tn=en(58264);Wt.exports=tn(once);Wt.exports.strict=tn(onceStrict);once.proto=once((function(){Object.defineProperty(Function.prototype,"once",{value:function(){return once(this)},configurable:true});Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return onceStrict(this)},configurable:true})}));function once(Wt){var f=function(){if(f.called)return f.value;f.called=true;return f.value=Wt.apply(this,arguments)};f.called=false;return f}function onceStrict(Wt){var f=function(){if(f.called)throw new Error(f.onceError);f.called=true;return f.value=Wt.apply(this,arguments)};var Pt=Wt.name||"Function wrapped with `once`";f.onceError=Pt+" shouldn't be called more than once";f.called=false;return f}},79227:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});function _interopDefault(Wt){return Wt&&typeof Wt==="object"&&"default"in Wt?Wt["default"]:Wt}var tn=_interopDefault(en(2203));var nn=_interopDefault(en(58611));var an=_interopDefault(en(87016));var rn=_interopDefault(en(72944));var In=_interopDefault(en(65692));var sn=_interopDefault(en(43106));const on=tn.Readable;const cn=Symbol("buffer");const dn=Symbol("type");class Blob{constructor(){this[dn]="";const Wt=arguments[0];const Pt=arguments[1];const en=[];let tn=0;if(Wt){const Pt=Wt;const nn=Number(Pt.length);for(let Wt=0;Wt1&&arguments[1]!==undefined?arguments[1]:{},nn=en.size;let an=nn===undefined?0:nn;var rn=en.timeout;let In=rn===undefined?0:rn;if(Wt==null){Wt=null}else if(isURLSearchParams(Wt)){Wt=Buffer.from(Wt.toString())}else if(isBlob(Wt));else if(Buffer.isBuffer(Wt));else if(Object.prototype.toString.call(Wt)==="[object ArrayBuffer]"){Wt=Buffer.from(Wt)}else if(ArrayBuffer.isView(Wt)){Wt=Buffer.from(Wt.buffer,Wt.byteOffset,Wt.byteLength)}else if(Wt instanceof tn);else{Wt=Buffer.from(String(Wt))}this[pn]={body:Wt,disturbed:false,error:null};this.size=an;this.timeout=In;if(Wt instanceof tn){Wt.on("error",(function(Wt){const en=Wt.name==="AbortError"?Wt:new FetchError(`Invalid response body while trying to fetch ${Pt.url}: ${Wt.message}`,"system",Wt);Pt[pn].error=en}))}}Body.prototype={get body(){return this[pn].body},get bodyUsed(){return this[pn].disturbed},arrayBuffer(){return consumeBody.call(this).then((function(Wt){return Wt.buffer.slice(Wt.byteOffset,Wt.byteOffset+Wt.byteLength)}))},blob(){let Wt=this.headers&&this.headers.get("content-type")||"";return consumeBody.call(this).then((function(Pt){return Object.assign(new Blob([],{type:Wt.toLowerCase()}),{[cn]:Pt})}))},json(){var Wt=this;return consumeBody.call(this).then((function(Pt){try{return JSON.parse(Pt.toString())}catch(Pt){return Body.Promise.reject(new FetchError(`invalid json response body at ${Wt.url} reason: ${Pt.message}`,"invalid-json"))}}))},text(){return consumeBody.call(this).then((function(Wt){return Wt.toString()}))},buffer(){return consumeBody.call(this)},textConverted(){var Wt=this;return consumeBody.call(this).then((function(Pt){return convertBody(Pt,Wt.headers)}))}};Object.defineProperties(Body.prototype,{body:{enumerable:true},bodyUsed:{enumerable:true},arrayBuffer:{enumerable:true},blob:{enumerable:true},json:{enumerable:true},text:{enumerable:true}});Body.mixIn=function(Wt){for(const Pt of Object.getOwnPropertyNames(Body.prototype)){if(!(Pt in Wt)){const en=Object.getOwnPropertyDescriptor(Body.prototype,Pt);Object.defineProperty(Wt,Pt,en)}}};function consumeBody(){var Wt=this;if(this[pn].disturbed){return Body.Promise.reject(new TypeError(`body used already for: ${this.url}`))}this[pn].disturbed=true;if(this[pn].error){return Body.Promise.reject(this[pn].error)}let Pt=this.body;if(Pt===null){return Body.Promise.resolve(Buffer.alloc(0))}if(isBlob(Pt)){Pt=Pt.stream()}if(Buffer.isBuffer(Pt)){return Body.Promise.resolve(Pt)}if(!(Pt instanceof tn)){return Body.Promise.resolve(Buffer.alloc(0))}let en=[];let nn=0;let an=false;return new Body.Promise((function(tn,rn){let In;if(Wt.timeout){In=setTimeout((function(){an=true;rn(new FetchError(`Response timeout while trying to fetch ${Wt.url} (over ${Wt.timeout}ms)`,"body-timeout"))}),Wt.timeout)}Pt.on("error",(function(Pt){if(Pt.name==="AbortError"){an=true;rn(Pt)}else{rn(new FetchError(`Invalid response body while trying to fetch ${Wt.url}: ${Pt.message}`,"system",Pt))}}));Pt.on("data",(function(Pt){if(an||Pt===null){return}if(Wt.size&&nn+Pt.length>Wt.size){an=true;rn(new FetchError(`content size at ${Wt.url} over limit: ${Wt.size}`,"max-size"));return}nn+=Pt.length;en.push(Pt)}));Pt.on("end",(function(){if(an){return}clearTimeout(In);try{tn(Buffer.concat(en,nn))}catch(Pt){rn(new FetchError(`Could not create Buffer from response body for ${Wt.url}: ${Pt.message}`,"system",Pt))}}))}))}function convertBody(Wt,Pt){if(typeof un!=="function"){throw new Error("The package `encoding` must be installed to use the textConverted() function")}const en=Pt.get("content-type");let tn="utf-8";let nn,an;if(en){nn=/charset=([^;]*)/i.exec(en)}an=Wt.slice(0,1024).toString();if(!nn&&an){nn=/0&&arguments[0]!==undefined?arguments[0]:undefined;this[hn]=Object.create(null);if(Wt instanceof Headers){const Pt=Wt.raw();const en=Object.keys(Pt);for(const Wt of en){for(const en of Pt[Wt]){this.append(Wt,en)}}return}if(Wt==null);else if(typeof Wt==="object"){const Pt=Wt[Symbol.iterator];if(Pt!=null){if(typeof Pt!=="function"){throw new TypeError("Header pairs must be iterable")}const en=[];for(const Pt of Wt){if(typeof Pt!=="object"||typeof Pt[Symbol.iterator]!=="function"){throw new TypeError("Each header pair must be iterable")}en.push(Array.from(Pt))}for(const Wt of en){if(Wt.length!==2){throw new TypeError("Each header pair must be a name/value tuple")}this.append(Wt[0],Wt[1])}}else{for(const Pt of Object.keys(Wt)){const en=Wt[Pt];this.append(Pt,en)}}}else{throw new TypeError("Provided initializer must be an object")}}get(Wt){Wt=`${Wt}`;validateName(Wt);const Pt=find(this[hn],Wt);if(Pt===undefined){return null}return this[hn][Pt].join(", ")}forEach(Wt){let Pt=arguments.length>1&&arguments[1]!==undefined?arguments[1]:undefined;let en=getHeaders(this);let tn=0;while(tn1&&arguments[1]!==undefined?arguments[1]:"key+value";const en=Object.keys(Wt[hn]).sort();return en.map(Pt==="key"?function(Wt){return Wt.toLowerCase()}:Pt==="value"?function(Pt){return Wt[hn][Pt].join(", ")}:function(Pt){return[Pt.toLowerCase(),Wt[hn][Pt].join(", ")]})}const Zn=Symbol("internal");function createHeadersIterator(Wt,Pt){const en=Object.create(An);en[Zn]={target:Wt,kind:Pt,index:0};return en}const An=Object.setPrototypeOf({next(){if(!this||Object.getPrototypeOf(this)!==An){throw new TypeError("Value of `this` is not a HeadersIterator")}var Wt=this[Zn];const Pt=Wt.target,en=Wt.kind,tn=Wt.index;const nn=getHeaders(Pt,en);const an=nn.length;if(tn>=an){return{value:undefined,done:true}}this[Zn].index=tn+1;return{value:nn[tn],done:false}}},Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));Object.defineProperty(An,Symbol.toStringTag,{value:"HeadersIterator",writable:false,enumerable:false,configurable:true});function exportNodeCompatibleHeaders(Wt){const Pt=Object.assign({__proto__:null},Wt[hn]);const en=find(Wt[hn],"Host");if(en!==undefined){Pt[en]=Pt[en][0]}return Pt}function createHeadersLenient(Wt){const Pt=new Headers;for(const en of Object.keys(Wt)){if(bn.test(en)){continue}if(Array.isArray(Wt[en])){for(const tn of Wt[en]){if(Gn.test(tn)){continue}if(Pt[hn][en]===undefined){Pt[hn][en]=[tn]}else{Pt[hn][en].push(tn)}}}else if(!Gn.test(Wt[en])){Pt[hn][en]=[Wt[en]]}}return Pt}const Wn=Symbol("Response internals");const Nn=nn.STATUS_CODES;class Response{constructor(){let Wt=arguments.length>0&&arguments[0]!==undefined?arguments[0]:null;let Pt=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};Body.call(this,Wt,Pt);const en=Pt.status||200;const tn=new Headers(Pt.headers);if(Wt!=null&&!tn.has("Content-Type")){const Pt=extractContentType(Wt);if(Pt){tn.append("Content-Type",Pt)}}this[Wn]={url:Pt.url,status:en,statusText:Pt.statusText||Nn[en],headers:tn,counter:Pt.counter}}get url(){return this[Wn].url||""}get status(){return this[Wn].status}get ok(){return this[Wn].status>=200&&this[Wn].status<300}get redirected(){return this[Wn].counter>0}get statusText(){return this[Wn].statusText}get headers(){return this[Wn].headers}clone(){return new Response(clone(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected})}}Body.mixIn(Response.prototype);Object.defineProperties(Response.prototype,{url:{enumerable:true},status:{enumerable:true},ok:{enumerable:true},redirected:{enumerable:true},statusText:{enumerable:true},headers:{enumerable:true},clone:{enumerable:true}});Object.defineProperty(Response.prototype,Symbol.toStringTag,{value:"Response",writable:false,enumerable:false,configurable:true});const gn=Symbol("Request internals");const yn=an.URL||rn.URL;const vn=an.parse;const Yn=an.format;function parseURL(Wt){if(/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(Wt)){Wt=new yn(Wt).toString()}return vn(Wt)}const En="destroy"in tn.Readable.prototype;function isRequest(Wt){return typeof Wt==="object"&&typeof Wt[gn]==="object"}function isAbortSignal(Wt){const Pt=Wt&&typeof Wt==="object"&&Object.getPrototypeOf(Wt);return!!(Pt&&Pt.constructor.name==="AbortSignal")}class Request{constructor(Wt){let Pt=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};let en;if(!isRequest(Wt)){if(Wt&&Wt.href){en=parseURL(Wt.href)}else{en=parseURL(`${Wt}`)}Wt={}}else{en=parseURL(Wt.url)}let tn=Pt.method||Wt.method||"GET";tn=tn.toUpperCase();if((Pt.body!=null||isRequest(Wt)&&Wt.body!==null)&&(tn==="GET"||tn==="HEAD")){throw new TypeError("Request with GET/HEAD method cannot have body")}let nn=Pt.body!=null?Pt.body:isRequest(Wt)&&Wt.body!==null?clone(Wt):null;Body.call(this,nn,{timeout:Pt.timeout||Wt.timeout||0,size:Pt.size||Wt.size||0});const an=new Headers(Pt.headers||Wt.headers||{});if(nn!=null&&!an.has("Content-Type")){const Wt=extractContentType(nn);if(Wt){an.append("Content-Type",Wt)}}let rn=isRequest(Wt)?Wt.signal:null;if("signal"in Pt)rn=Pt.signal;if(rn!=null&&!isAbortSignal(rn)){throw new TypeError("Expected signal to be an instanceof AbortSignal")}this[gn]={method:tn,redirect:Pt.redirect||Wt.redirect||"follow",headers:an,parsedURL:en,signal:rn};this.follow=Pt.follow!==undefined?Pt.follow:Wt.follow!==undefined?Wt.follow:20;this.compress=Pt.compress!==undefined?Pt.compress:Wt.compress!==undefined?Wt.compress:true;this.counter=Pt.counter||Wt.counter||0;this.agent=Pt.agent||Wt.agent}get method(){return this[gn].method}get url(){return Yn(this[gn].parsedURL)}get headers(){return this[gn].headers}get redirect(){return this[gn].redirect}get signal(){return this[gn].signal}clone(){return new Request(this)}}Body.mixIn(Request.prototype);Object.defineProperty(Request.prototype,Symbol.toStringTag,{value:"Request",writable:false,enumerable:false,configurable:true});Object.defineProperties(Request.prototype,{method:{enumerable:true},url:{enumerable:true},headers:{enumerable:true},redirect:{enumerable:true},clone:{enumerable:true},signal:{enumerable:true}});function getNodeRequestOptions(Wt){const Pt=Wt[gn].parsedURL;const en=new Headers(Wt[gn].headers);if(!en.has("Accept")){en.set("Accept","*/*")}if(!Pt.protocol||!Pt.hostname){throw new TypeError("Only absolute URLs are supported")}if(!/^https?:$/.test(Pt.protocol)){throw new TypeError("Only HTTP(S) protocols are supported")}if(Wt.signal&&Wt.body instanceof tn.Readable&&!En){throw new Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8")}let nn=null;if(Wt.body==null&&/^(POST|PUT)$/i.test(Wt.method)){nn="0"}if(Wt.body!=null){const Pt=getTotalBytes(Wt);if(typeof Pt==="number"){nn=String(Pt)}}if(nn){en.set("Content-Length",nn)}if(!en.has("User-Agent")){en.set("User-Agent","node-fetch/1.0 (+https://github.com/bitinn/node-fetch)")}if(Wt.compress&&!en.has("Accept-Encoding")){en.set("Accept-Encoding","gzip,deflate")}let an=Wt.agent;if(typeof an==="function"){an=an(Pt)}return Object.assign({},Pt,{method:Wt.method,headers:exportNodeCompatibleHeaders(en),agent:an})}function AbortError(Wt){Error.call(this,Wt);this.type="aborted";this.message=Wt;Error.captureStackTrace(this,this.constructor)}AbortError.prototype=Object.create(Error.prototype);AbortError.prototype.constructor=AbortError;AbortError.prototype.name="AbortError";const Vn=an.URL||rn.URL;const Rn=tn.PassThrough;const wn=function isDomainOrSubdomain(Wt,Pt){const en=new Vn(Pt).hostname;const tn=new Vn(Wt).hostname;return en===tn||en[en.length-tn.length-1]==="."&&en.endsWith(tn)};const Fn=function isSameProtocol(Wt,Pt){const en=new Vn(Pt).protocol;const tn=new Vn(Wt).protocol;return en===tn};function fetch(Wt,Pt){if(!fetch.Promise){throw new Error("native promise missing, set fetch.Promise to your favorite alternative")}Body.Promise=fetch.Promise;return new fetch.Promise((function(en,an){const rn=new Request(Wt,Pt);const on=getNodeRequestOptions(rn);const cn=(on.protocol==="https:"?In:nn).request;const dn=rn.signal;let un=null;const pn=function abort(){let Wt=new AbortError("The user aborted a request.");an(Wt);if(rn.body&&rn.body instanceof tn.Readable){destroyStream(rn.body,Wt)}if(!un||!un.body)return;un.body.emit("error",Wt)};if(dn&&dn.aborted){pn();return}const mn=function abortAndFinalize(){pn();finalize()};const bn=cn(on);let Gn;if(dn){dn.addEventListener("abort",mn)}function finalize(){bn.abort();if(dn)dn.removeEventListener("abort",mn);clearTimeout(Gn)}if(rn.timeout){bn.once("socket",(function(Wt){Gn=setTimeout((function(){an(new FetchError(`network timeout at: ${rn.url}`,"request-timeout"));finalize()}),rn.timeout)}))}bn.on("error",(function(Wt){an(new FetchError(`request to ${rn.url} failed, reason: ${Wt.message}`,"system",Wt));if(un&&un.body){destroyStream(un.body,Wt)}finalize()}));fixResponseChunkedTransferBadEnding(bn,(function(Wt){if(dn&&dn.aborted){return}if(un&&un.body){destroyStream(un.body,Wt)}}));if(parseInt(process.version.substring(1))<14){bn.on("socket",(function(Wt){Wt.addListener("close",(function(Pt){const en=Wt.listenerCount("data")>0;if(un&&en&&!Pt&&!(dn&&dn.aborted)){const Wt=new Error("Premature close");Wt.code="ERR_STREAM_PREMATURE_CLOSE";un.body.emit("error",Wt)}}))}))}bn.on("response",(function(Wt){clearTimeout(Gn);const Pt=createHeadersLenient(Wt.headers);if(fetch.isRedirect(Wt.statusCode)){const tn=Pt.get("Location");let nn=null;try{nn=tn===null?null:new Vn(tn,rn.url).toString()}catch(Wt){if(rn.redirect!=="manual"){an(new FetchError(`uri requested responds with an invalid redirect URL: ${tn}`,"invalid-redirect"));finalize();return}}switch(rn.redirect){case"error":an(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${rn.url}`,"no-redirect"));finalize();return;case"manual":if(nn!==null){try{Pt.set("Location",nn)}catch(Wt){an(Wt)}}break;case"follow":if(nn===null){break}if(rn.counter>=rn.follow){an(new FetchError(`maximum redirect reached at: ${rn.url}`,"max-redirect"));finalize();return}const tn={headers:new Headers(rn.headers),follow:rn.follow,counter:rn.counter+1,agent:rn.agent,compress:rn.compress,method:rn.method,body:rn.body,signal:rn.signal,timeout:rn.timeout,size:rn.size};if(!wn(rn.url,nn)||!Fn(rn.url,nn)){for(const Wt of["authorization","www-authenticate","cookie","cookie2"]){tn.headers.delete(Wt)}}if(Wt.statusCode!==303&&rn.body&&getTotalBytes(rn)===null){an(new FetchError("Cannot follow redirect with body being a readable stream","unsupported-redirect"));finalize();return}if(Wt.statusCode===303||(Wt.statusCode===301||Wt.statusCode===302)&&rn.method==="POST"){tn.method="GET";tn.body=undefined;tn.headers.delete("content-length")}en(fetch(new Request(nn,tn)));finalize();return}}Wt.once("end",(function(){if(dn)dn.removeEventListener("abort",mn)}));let tn=Wt.pipe(new Rn);const nn={url:rn.url,status:Wt.statusCode,statusText:Wt.statusMessage,headers:Pt,size:rn.size,timeout:rn.timeout,counter:rn.counter};const In=Pt.get("Content-Encoding");if(!rn.compress||rn.method==="HEAD"||In===null||Wt.statusCode===204||Wt.statusCode===304){un=new Response(tn,nn);en(un);return}const on={flush:sn.Z_SYNC_FLUSH,finishFlush:sn.Z_SYNC_FLUSH};if(In=="gzip"||In=="x-gzip"){tn=tn.pipe(sn.createGunzip(on));un=new Response(tn,nn);en(un);return}if(In=="deflate"||In=="x-deflate"){const Pt=Wt.pipe(new Rn);Pt.once("data",(function(Wt){if((Wt[0]&15)===8){tn=tn.pipe(sn.createInflate())}else{tn=tn.pipe(sn.createInflateRaw())}un=new Response(tn,nn);en(un)}));Pt.on("end",(function(){if(!un){un=new Response(tn,nn);en(un)}}));return}if(In=="br"&&typeof sn.createBrotliDecompress==="function"){tn=tn.pipe(sn.createBrotliDecompress());un=new Response(tn,nn);en(un);return}un=new Response(tn,nn);en(un)}));writeToStream(bn,rn)}))}function fixResponseChunkedTransferBadEnding(Wt,Pt){let en;Wt.on("socket",(function(Wt){en=Wt}));Wt.on("response",(function(Wt){const tn=Wt.headers;if(tn["transfer-encoding"]==="chunked"&&!tn["content-length"]){Wt.once("close",(function(Wt){const tn=en&&en.listenerCount("data")>0;if(tn&&!Wt){const Wt=new Error("Premature close");Wt.code="ERR_STREAM_PREMATURE_CLOSE";Pt(Wt)}}))}}))}function destroyStream(Wt,Pt){if(Wt.destroy){Wt.destroy(Pt)}else{Wt.emit("error",Pt);Wt.end()}}fetch.isRedirect=function(Wt){return Wt===301||Wt===302||Wt===303||Wt===307||Wt===308};fetch.Promise=global.Promise;Wt.exports=Pt=fetch;Object.defineProperty(Pt,"__esModule",{value:true});Pt["default"]=Pt;Pt.Headers=Headers;Pt.Request=Request;Pt.Response=Response;Pt.FetchError=FetchError;Pt.AbortError=AbortError},90730:(Wt,Pt,en)=>{"use strict";var tn=en(24876);var nn=en(92594);var an={TRANSITIONAL:0,NONTRANSITIONAL:1};function normalize(Wt){return Wt.split("\0").map((function(Wt){return Wt.normalize("NFC")})).join("\0")}function findStatus(Wt){var Pt=0;var en=nn.length-1;while(Pt<=en){var tn=Math.floor((Pt+en)/2);var an=nn[tn];if(an[0][0]<=Wt&&an[0][1]>=Wt){return an}else if(an[0][0]>Wt){en=tn-1}else{Pt=tn+1}}return null}var rn=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;function countSymbols(Wt){return Wt.replace(rn,"_").length}function mapChars(Wt,Pt,en){var tn=false;var nn="";var rn=countSymbols(Wt);for(var In=0;In253||In.length===0){an.error=true}for(var sn=0;sn63||rn.length===0){an.error=true;break}}}if(an.error)return null;return rn.join(".")};Wt.exports.toUnicode=function(Wt,Pt){var en=processing(Wt,Pt,an.NONTRANSITIONAL);return{domain:en.string,error:en.error}};Wt.exports.PROCESSING_OPTIONS=an},51867:Wt=>{"use strict";var Pt={};Wt.exports=Pt;function sign(Wt){return Wt<0?-1:1}function evenRound(Wt){if(Wt%1===.5&&(Wt&1)===0){return Math.floor(Wt)}else{return Math.round(Wt)}}function createNumberConversion(Wt,Pt){if(!Pt.unsigned){--Wt}const en=Pt.unsigned?0:-Math.pow(2,Wt);const tn=Math.pow(2,Wt)-1;const nn=Pt.moduloBitLength?Math.pow(2,Pt.moduloBitLength):Math.pow(2,Wt);const an=Pt.moduloBitLength?Math.pow(2,Pt.moduloBitLength-1):Math.pow(2,Wt-1);return function(Wt,rn){if(!rn)rn={};let In=+Wt;if(rn.enforceRange){if(!Number.isFinite(In)){throw new TypeError("Argument is not a finite number")}In=sign(In)*Math.floor(Math.abs(In));if(Intn){throw new TypeError("Argument is not in byte range")}return In}if(!isNaN(In)&&rn.clamp){In=evenRound(In);if(Intn)In=tn;return In}if(!Number.isFinite(In)||In===0){return 0}In=sign(In)*Math.floor(Math.abs(In));In=In%nn;if(!Pt.unsigned&&In>=an){return In-nn}else if(Pt.unsigned){if(In<0){In+=nn}else if(In===-0){return 0}}return In}}Pt["void"]=function(){return undefined};Pt["boolean"]=function(Wt){return!!Wt};Pt["byte"]=createNumberConversion(8,{unsigned:false});Pt["octet"]=createNumberConversion(8,{unsigned:true});Pt["short"]=createNumberConversion(16,{unsigned:false});Pt["unsigned short"]=createNumberConversion(16,{unsigned:true});Pt["long"]=createNumberConversion(32,{unsigned:false});Pt["unsigned long"]=createNumberConversion(32,{unsigned:true});Pt["long long"]=createNumberConversion(32,{unsigned:false,moduloBitLength:64});Pt["unsigned long long"]=createNumberConversion(32,{unsigned:true,moduloBitLength:64});Pt["double"]=function(Wt){const Pt=+Wt;if(!Number.isFinite(Pt)){throw new TypeError("Argument is not a finite floating-point value")}return Pt};Pt["unrestricted double"]=function(Wt){const Pt=+Wt;if(isNaN(Pt)){throw new TypeError("Argument is NaN")}return Pt};Pt["float"]=Pt["double"];Pt["unrestricted float"]=Pt["unrestricted double"];Pt["DOMString"]=function(Wt,Pt){if(!Pt)Pt={};if(Pt.treatNullAsEmptyString&&Wt===null){return""}return String(Wt)};Pt["ByteString"]=function(Wt,Pt){const en=String(Wt);let tn=undefined;for(let Wt=0;(tn=en.codePointAt(Wt))!==undefined;++Wt){if(tn>255){throw new TypeError("Argument is not a valid bytestring")}}return en};Pt["USVString"]=function(Wt){const Pt=String(Wt);const en=Pt.length;const tn=[];for(let Wt=0;Wt57343){tn.push(String.fromCodePoint(nn))}else if(56320<=nn&&nn<=57343){tn.push(String.fromCodePoint(65533))}else{if(Wt===en-1){tn.push(String.fromCodePoint(65533))}else{const en=Pt.charCodeAt(Wt+1);if(56320<=en&&en<=57343){const Pt=nn&1023;const an=en&1023;tn.push(String.fromCodePoint((2<<15)+(2<<9)*Pt+an));++Wt}else{tn.push(String.fromCodePoint(65533))}}}}return tn.join("")};Pt["Date"]=function(Wt,Pt){if(!(Wt instanceof Date)){throw new TypeError("Argument is not a Date object")}if(isNaN(Wt)){return undefined}return Wt};Pt["RegExp"]=function(Wt,Pt){if(!(Wt instanceof RegExp)){Wt=new RegExp(Wt)}return Wt}},57958:(Wt,Pt,en)=>{"use strict";const tn=en(33655);Pt.implementation=class URLImpl{constructor(Wt){const Pt=Wt[0];const en=Wt[1];let nn=null;if(en!==undefined){nn=tn.basicURLParse(en);if(nn==="failure"){throw new TypeError("Invalid base URL")}}const an=tn.basicURLParse(Pt,{baseURL:nn});if(an==="failure"){throw new TypeError("Invalid URL")}this._url=an}get href(){return tn.serializeURL(this._url)}set href(Wt){const Pt=tn.basicURLParse(Wt);if(Pt==="failure"){throw new TypeError("Invalid URL")}this._url=Pt}get origin(){return tn.serializeURLOrigin(this._url)}get protocol(){return this._url.scheme+":"}set protocol(Wt){tn.basicURLParse(Wt+":",{url:this._url,stateOverride:"scheme start"})}get username(){return this._url.username}set username(Wt){if(tn.cannotHaveAUsernamePasswordPort(this._url)){return}tn.setTheUsername(this._url,Wt)}get password(){return this._url.password}set password(Wt){if(tn.cannotHaveAUsernamePasswordPort(this._url)){return}tn.setThePassword(this._url,Wt)}get host(){const Wt=this._url;if(Wt.host===null){return""}if(Wt.port===null){return tn.serializeHost(Wt.host)}return tn.serializeHost(Wt.host)+":"+tn.serializeInteger(Wt.port)}set host(Wt){if(this._url.cannotBeABaseURL){return}tn.basicURLParse(Wt,{url:this._url,stateOverride:"host"})}get hostname(){if(this._url.host===null){return""}return tn.serializeHost(this._url.host)}set hostname(Wt){if(this._url.cannotBeABaseURL){return}tn.basicURLParse(Wt,{url:this._url,stateOverride:"hostname"})}get port(){if(this._url.port===null){return""}return tn.serializeInteger(this._url.port)}set port(Wt){if(tn.cannotHaveAUsernamePasswordPort(this._url)){return}if(Wt===""){this._url.port=null}else{tn.basicURLParse(Wt,{url:this._url,stateOverride:"port"})}}get pathname(){if(this._url.cannotBeABaseURL){return this._url.path[0]}if(this._url.path.length===0){return""}return"/"+this._url.path.join("/")}set pathname(Wt){if(this._url.cannotBeABaseURL){return}this._url.path=[];tn.basicURLParse(Wt,{url:this._url,stateOverride:"path start"})}get search(){if(this._url.query===null||this._url.query===""){return""}return"?"+this._url.query}set search(Wt){const Pt=this._url;if(Wt===""){Pt.query=null;return}const en=Wt[0]==="?"?Wt.substring(1):Wt;Pt.query="";tn.basicURLParse(en,{url:Pt,stateOverride:"query"})}get hash(){if(this._url.fragment===null||this._url.fragment===""){return""}return"#"+this._url.fragment}set hash(Wt){if(Wt===""){this._url.fragment=null;return}const Pt=Wt[0]==="#"?Wt.substring(1):Wt;this._url.fragment="";tn.basicURLParse(Pt,{url:this._url,stateOverride:"fragment"})}toJSON(){return this.href}}},41955:(Wt,Pt,en)=>{"use strict";const tn=en(51867);const nn=en(34659);const an=en(57958);const rn=nn.implSymbol;function URL(Pt){if(!this||this[rn]||!(this instanceof URL)){throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.")}if(arguments.length<1){throw new TypeError("Failed to construct 'URL': 1 argument required, but only "+arguments.length+" present.")}const en=[];for(let Wt=0;Wt{"use strict";Pt.URL=en(41955)["interface"];Pt.serializeURL=en(33655).serializeURL;Pt.serializeURLOrigin=en(33655).serializeURLOrigin;Pt.basicURLParse=en(33655).basicURLParse;Pt.setTheUsername=en(33655).setTheUsername;Pt.setThePassword=en(33655).setThePassword;Pt.serializeHost=en(33655).serializeHost;Pt.serializeInteger=en(33655).serializeInteger;Pt.parseURL=en(33655).parseURL},33655:(Wt,Pt,en)=>{"use strict";const tn=en(24876);const nn=en(90730);const an={ftp:21,file:null,gopher:70,http:80,https:443,ws:80,wss:443};const rn=Symbol("failure");function countSymbols(Wt){return tn.ucs2.decode(Wt).length}function at(Wt,Pt){const en=Wt[Pt];return isNaN(en)?undefined:String.fromCodePoint(en)}function isASCIIDigit(Wt){return Wt>=48&&Wt<=57}function isASCIIAlpha(Wt){return Wt>=65&&Wt<=90||Wt>=97&&Wt<=122}function isASCIIAlphanumeric(Wt){return isASCIIAlpha(Wt)||isASCIIDigit(Wt)}function isASCIIHex(Wt){return isASCIIDigit(Wt)||Wt>=65&&Wt<=70||Wt>=97&&Wt<=102}function isSingleDot(Wt){return Wt==="."||Wt.toLowerCase()==="%2e"}function isDoubleDot(Wt){Wt=Wt.toLowerCase();return Wt===".."||Wt==="%2e."||Wt===".%2e"||Wt==="%2e%2e"}function isWindowsDriveLetterCodePoints(Wt,Pt){return isASCIIAlpha(Wt)&&(Pt===58||Pt===124)}function isWindowsDriveLetterString(Wt){return Wt.length===2&&isASCIIAlpha(Wt.codePointAt(0))&&(Wt[1]===":"||Wt[1]==="|")}function isNormalizedWindowsDriveLetterString(Wt){return Wt.length===2&&isASCIIAlpha(Wt.codePointAt(0))&&Wt[1]===":"}function containsForbiddenHostCodePoint(Wt){return Wt.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/)!==-1}function containsForbiddenHostCodePointExcludingPercent(Wt){return Wt.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/)!==-1}function isSpecialScheme(Wt){return an[Wt]!==undefined}function isSpecial(Wt){return isSpecialScheme(Wt.scheme)}function defaultPort(Wt){return an[Wt]}function percentEncode(Wt){let Pt=Wt.toString(16).toUpperCase();if(Pt.length===1){Pt="0"+Pt}return"%"+Pt}function utf8PercentEncode(Wt){const Pt=new Buffer(Wt);let en="";for(let Wt=0;Wt126}const In=new Set([32,34,35,60,62,63,96,123,125]);function isPathPercentEncode(Wt){return isC0ControlPercentEncode(Wt)||In.has(Wt)}const sn=new Set([47,58,59,61,64,91,92,93,94,124]);function isUserinfoPercentEncode(Wt){return isPathPercentEncode(Wt)||sn.has(Wt)}function percentEncodeChar(Wt,Pt){const en=String.fromCodePoint(Wt);if(Pt(Wt)){return utf8PercentEncode(en)}return en}function parseIPv4Number(Wt){let Pt=10;if(Wt.length>=2&&Wt.charAt(0)==="0"&&Wt.charAt(1).toLowerCase()==="x"){Wt=Wt.substring(2);Pt=16}else if(Wt.length>=2&&Wt.charAt(0)==="0"){Wt=Wt.substring(1);Pt=8}if(Wt===""){return 0}const en=Pt===10?/[^0-9]/:Pt===16?/[^0-9A-Fa-f]/:/[^0-7]/;if(en.test(Wt)){return rn}return parseInt(Wt,Pt)}function parseIPv4(Wt){const Pt=Wt.split(".");if(Pt[Pt.length-1]===""){if(Pt.length>1){Pt.pop()}}if(Pt.length>4){return Wt}const en=[];for(const tn of Pt){if(tn===""){return Wt}const Pt=parseIPv4Number(tn);if(Pt===rn){return Wt}en.push(Pt)}for(let Wt=0;Wt255){return rn}}if(en[en.length-1]>=Math.pow(256,5-en.length)){return rn}let tn=en.pop();let nn=0;for(const Wt of en){tn+=Wt*Math.pow(256,3-nn);++nn}return tn}function serializeIPv4(Wt){let Pt="";let en=Wt;for(let Wt=1;Wt<=4;++Wt){Pt=String(en%256)+Pt;if(Wt!==4){Pt="."+Pt}en=Math.floor(en/256)}return Pt}function parseIPv6(Wt){const Pt=[0,0,0,0,0,0,0,0];let en=0;let nn=null;let an=0;Wt=tn.ucs2.decode(Wt);if(Wt[an]===58){if(Wt[an+1]!==58){return rn}an+=2;++en;nn=en}while(an6){return rn}let tn=0;while(Wt[an]!==undefined){let nn=null;if(tn>0){if(Wt[an]===46&&tn<4){++an}else{return rn}}if(!isASCIIDigit(Wt[an])){return rn}while(isASCIIDigit(Wt[an])){const Pt=parseInt(at(Wt,an));if(nn===null){nn=Pt}else if(nn===0){return rn}else{nn=nn*10+Pt}if(nn>255){return rn}++an}Pt[en]=Pt[en]*256+nn;++tn;if(tn===2||tn===4){++en}}if(tn!==4){return rn}break}else if(Wt[an]===58){++an;if(Wt[an]===undefined){return rn}}else if(Wt[an]!==undefined){return rn}Pt[en]=tn;++en}if(nn!==null){let Wt=en-nn;en=7;while(en!==0&&Wt>0){const tn=Pt[nn+Wt-1];Pt[nn+Wt-1]=Pt[en];Pt[en]=tn;--en;--Wt}}else if(nn===null&&en!==8){return rn}return Pt}function serializeIPv6(Wt){let Pt="";const en=findLongestZeroSequence(Wt);const tn=en.idx;let nn=false;for(let en=0;en<=7;++en){if(nn&&Wt[en]===0){continue}else if(nn){nn=false}if(tn===en){const Wt=en===0?"::":":";Pt+=Wt;nn=true;continue}Pt+=Wt[en].toString(16);if(en!==7){Pt+=":"}}return Pt}function parseHost(Wt,Pt){if(Wt[0]==="["){if(Wt[Wt.length-1]!=="]"){return rn}return parseIPv6(Wt.substring(1,Wt.length-1))}if(!Pt){return parseOpaqueHost(Wt)}const en=utf8PercentDecode(Wt);const tn=nn.toASCII(en,false,nn.PROCESSING_OPTIONS.NONTRANSITIONAL,false);if(tn===null){return rn}if(containsForbiddenHostCodePoint(tn)){return rn}const an=parseIPv4(tn);if(typeof an==="number"||an===rn){return an}return tn}function parseOpaqueHost(Wt){if(containsForbiddenHostCodePointExcludingPercent(Wt)){return rn}let Pt="";const en=tn.ucs2.decode(Wt);for(let Wt=0;Wten){Pt=tn;en=nn}tn=null;nn=0}else{if(tn===null){tn=an}++nn}}if(nn>en){Pt=tn;en=nn}return{idx:Pt,len:en}}function serializeHost(Wt){if(typeof Wt==="number"){return serializeIPv4(Wt)}if(Wt instanceof Array){return"["+serializeIPv6(Wt)+"]"}return Wt}function trimControlChars(Wt){return Wt.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g,"")}function trimTabAndNewline(Wt){return Wt.replace(/\u0009|\u000A|\u000D/g,"")}function shortenPath(Wt){const Pt=Wt.path;if(Pt.length===0){return}if(Wt.scheme==="file"&&Pt.length===1&&isNormalizedWindowsDriveLetter(Pt[0])){return}Pt.pop()}function includesCredentials(Wt){return Wt.username!==""||Wt.password!==""}function cannotHaveAUsernamePasswordPort(Wt){return Wt.host===null||Wt.host===""||Wt.cannotBeABaseURL||Wt.scheme==="file"}function isNormalizedWindowsDriveLetter(Wt){return/^[A-Za-z]:$/.test(Wt)}function URLStateMachine(Wt,Pt,en,nn,an){this.pointer=0;this.input=Wt;this.base=Pt||null;this.encodingOverride=en||"utf-8";this.stateOverride=an;this.url=nn;this.failure=false;this.parseError=false;if(!this.url){this.url={scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null,cannotBeABaseURL:false};const Wt=trimControlChars(this.input);if(Wt!==this.input){this.parseError=true}this.input=Wt}const In=trimTabAndNewline(this.input);if(In!==this.input){this.parseError=true}this.input=In;this.state=an||"scheme start";this.buffer="";this.atFlag=false;this.arrFlag=false;this.passwordTokenSeenFlag=false;this.input=tn.ucs2.decode(this.input);for(;this.pointer<=this.input.length;++this.pointer){const Wt=this.input[this.pointer];const Pt=isNaN(Wt)?undefined:String.fromCodePoint(Wt);const en=this["parse "+this.state](Wt,Pt);if(!en){break}else if(en===rn){this.failure=true;break}}}URLStateMachine.prototype["parse scheme start"]=function parseSchemeStart(Wt,Pt){if(isASCIIAlpha(Wt)){this.buffer+=Pt.toLowerCase();this.state="scheme"}else if(!this.stateOverride){this.state="no scheme";--this.pointer}else{this.parseError=true;return rn}return true};URLStateMachine.prototype["parse scheme"]=function parseScheme(Wt,Pt){if(isASCIIAlphanumeric(Wt)||Wt===43||Wt===45||Wt===46){this.buffer+=Pt.toLowerCase()}else if(Wt===58){if(this.stateOverride){if(isSpecial(this.url)&&!isSpecialScheme(this.buffer)){return false}if(!isSpecial(this.url)&&isSpecialScheme(this.buffer)){return false}if((includesCredentials(this.url)||this.url.port!==null)&&this.buffer==="file"){return false}if(this.url.scheme==="file"&&(this.url.host===""||this.url.host===null)){return false}}this.url.scheme=this.buffer;this.buffer="";if(this.stateOverride){return false}if(this.url.scheme==="file"){if(this.input[this.pointer+1]!==47||this.input[this.pointer+2]!==47){this.parseError=true}this.state="file"}else if(isSpecial(this.url)&&this.base!==null&&this.base.scheme===this.url.scheme){this.state="special relative or authority"}else if(isSpecial(this.url)){this.state="special authority slashes"}else if(this.input[this.pointer+1]===47){this.state="path or authority";++this.pointer}else{this.url.cannotBeABaseURL=true;this.url.path.push("");this.state="cannot-be-a-base-URL path"}}else if(!this.stateOverride){this.buffer="";this.state="no scheme";this.pointer=-1}else{this.parseError=true;return rn}return true};URLStateMachine.prototype["parse no scheme"]=function parseNoScheme(Wt){if(this.base===null||this.base.cannotBeABaseURL&&Wt!==35){return rn}else if(this.base.cannotBeABaseURL&&Wt===35){this.url.scheme=this.base.scheme;this.url.path=this.base.path.slice();this.url.query=this.base.query;this.url.fragment="";this.url.cannotBeABaseURL=true;this.state="fragment"}else if(this.base.scheme==="file"){this.state="file";--this.pointer}else{this.state="relative";--this.pointer}return true};URLStateMachine.prototype["parse special relative or authority"]=function parseSpecialRelativeOrAuthority(Wt){if(Wt===47&&this.input[this.pointer+1]===47){this.state="special authority ignore slashes";++this.pointer}else{this.parseError=true;this.state="relative";--this.pointer}return true};URLStateMachine.prototype["parse path or authority"]=function parsePathOrAuthority(Wt){if(Wt===47){this.state="authority"}else{this.state="path";--this.pointer}return true};URLStateMachine.prototype["parse relative"]=function parseRelative(Wt){this.url.scheme=this.base.scheme;if(isNaN(Wt)){this.url.username=this.base.username;this.url.password=this.base.password;this.url.host=this.base.host;this.url.port=this.base.port;this.url.path=this.base.path.slice();this.url.query=this.base.query}else if(Wt===47){this.state="relative slash"}else if(Wt===63){this.url.username=this.base.username;this.url.password=this.base.password;this.url.host=this.base.host;this.url.port=this.base.port;this.url.path=this.base.path.slice();this.url.query="";this.state="query"}else if(Wt===35){this.url.username=this.base.username;this.url.password=this.base.password;this.url.host=this.base.host;this.url.port=this.base.port;this.url.path=this.base.path.slice();this.url.query=this.base.query;this.url.fragment="";this.state="fragment"}else if(isSpecial(this.url)&&Wt===92){this.parseError=true;this.state="relative slash"}else{this.url.username=this.base.username;this.url.password=this.base.password;this.url.host=this.base.host;this.url.port=this.base.port;this.url.path=this.base.path.slice(0,this.base.path.length-1);this.state="path";--this.pointer}return true};URLStateMachine.prototype["parse relative slash"]=function parseRelativeSlash(Wt){if(isSpecial(this.url)&&(Wt===47||Wt===92)){if(Wt===92){this.parseError=true}this.state="special authority ignore slashes"}else if(Wt===47){this.state="authority"}else{this.url.username=this.base.username;this.url.password=this.base.password;this.url.host=this.base.host;this.url.port=this.base.port;this.state="path";--this.pointer}return true};URLStateMachine.prototype["parse special authority slashes"]=function parseSpecialAuthoritySlashes(Wt){if(Wt===47&&this.input[this.pointer+1]===47){this.state="special authority ignore slashes";++this.pointer}else{this.parseError=true;this.state="special authority ignore slashes";--this.pointer}return true};URLStateMachine.prototype["parse special authority ignore slashes"]=function parseSpecialAuthorityIgnoreSlashes(Wt){if(Wt!==47&&Wt!==92){this.state="authority";--this.pointer}else{this.parseError=true}return true};URLStateMachine.prototype["parse authority"]=function parseAuthority(Wt,Pt){if(Wt===64){this.parseError=true;if(this.atFlag){this.buffer="%40"+this.buffer}this.atFlag=true;const Wt=countSymbols(this.buffer);for(let Pt=0;PtMath.pow(2,16)-1){this.parseError=true;return rn}this.url.port=Wt===defaultPort(this.url.scheme)?null:Wt;this.buffer=""}if(this.stateOverride){return false}this.state="path start";--this.pointer}else{this.parseError=true;return rn}return true};const on=new Set([47,92,63,35]);URLStateMachine.prototype["parse file"]=function parseFile(Wt){this.url.scheme="file";if(Wt===47||Wt===92){if(Wt===92){this.parseError=true}this.state="file slash"}else if(this.base!==null&&this.base.scheme==="file"){if(isNaN(Wt)){this.url.host=this.base.host;this.url.path=this.base.path.slice();this.url.query=this.base.query}else if(Wt===63){this.url.host=this.base.host;this.url.path=this.base.path.slice();this.url.query="";this.state="query"}else if(Wt===35){this.url.host=this.base.host;this.url.path=this.base.path.slice();this.url.query=this.base.query;this.url.fragment="";this.state="fragment"}else{if(this.input.length-this.pointer-1===0||!isWindowsDriveLetterCodePoints(Wt,this.input[this.pointer+1])||this.input.length-this.pointer-1>=2&&!on.has(this.input[this.pointer+2])){this.url.host=this.base.host;this.url.path=this.base.path.slice();shortenPath(this.url)}else{this.parseError=true}this.state="path";--this.pointer}}else{this.state="path";--this.pointer}return true};URLStateMachine.prototype["parse file slash"]=function parseFileSlash(Wt){if(Wt===47||Wt===92){if(Wt===92){this.parseError=true}this.state="file host"}else{if(this.base!==null&&this.base.scheme==="file"){if(isNormalizedWindowsDriveLetterString(this.base.path[0])){this.url.path.push(this.base.path[0])}else{this.url.host=this.base.host}}this.state="path";--this.pointer}return true};URLStateMachine.prototype["parse file host"]=function parseFileHost(Wt,Pt){if(isNaN(Wt)||Wt===47||Wt===92||Wt===63||Wt===35){--this.pointer;if(!this.stateOverride&&isWindowsDriveLetterString(this.buffer)){this.parseError=true;this.state="path"}else if(this.buffer===""){this.url.host="";if(this.stateOverride){return false}this.state="path start"}else{let Wt=parseHost(this.buffer,isSpecial(this.url));if(Wt===rn){return rn}if(Wt==="localhost"){Wt=""}this.url.host=Wt;if(this.stateOverride){return false}this.buffer="";this.state="path start"}}else{this.buffer+=Pt}return true};URLStateMachine.prototype["parse path start"]=function parsePathStart(Wt){if(isSpecial(this.url)){if(Wt===92){this.parseError=true}this.state="path";if(Wt!==47&&Wt!==92){--this.pointer}}else if(!this.stateOverride&&Wt===63){this.url.query="";this.state="query"}else if(!this.stateOverride&&Wt===35){this.url.fragment="";this.state="fragment"}else if(Wt!==undefined){this.state="path";if(Wt!==47){--this.pointer}}return true};URLStateMachine.prototype["parse path"]=function parsePath(Wt){if(isNaN(Wt)||Wt===47||isSpecial(this.url)&&Wt===92||!this.stateOverride&&(Wt===63||Wt===35)){if(isSpecial(this.url)&&Wt===92){this.parseError=true}if(isDoubleDot(this.buffer)){shortenPath(this.url);if(Wt!==47&&!(isSpecial(this.url)&&Wt===92)){this.url.path.push("")}}else if(isSingleDot(this.buffer)&&Wt!==47&&!(isSpecial(this.url)&&Wt===92)){this.url.path.push("")}else if(!isSingleDot(this.buffer)){if(this.url.scheme==="file"&&this.url.path.length===0&&isWindowsDriveLetterString(this.buffer)){if(this.url.host!==""&&this.url.host!==null){this.parseError=true;this.url.host=""}this.buffer=this.buffer[0]+":"}this.url.path.push(this.buffer)}this.buffer="";if(this.url.scheme==="file"&&(Wt===undefined||Wt===63||Wt===35)){while(this.url.path.length>1&&this.url.path[0]===""){this.parseError=true;this.url.path.shift()}}if(Wt===63){this.url.query="";this.state="query"}if(Wt===35){this.url.fragment="";this.state="fragment"}}else{if(Wt===37&&(!isASCIIHex(this.input[this.pointer+1])||!isASCIIHex(this.input[this.pointer+2]))){this.parseError=true}this.buffer+=percentEncodeChar(Wt,isPathPercentEncode)}return true};URLStateMachine.prototype["parse cannot-be-a-base-URL path"]=function parseCannotBeABaseURLPath(Wt){if(Wt===63){this.url.query="";this.state="query"}else if(Wt===35){this.url.fragment="";this.state="fragment"}else{if(!isNaN(Wt)&&Wt!==37){this.parseError=true}if(Wt===37&&(!isASCIIHex(this.input[this.pointer+1])||!isASCIIHex(this.input[this.pointer+2]))){this.parseError=true}if(!isNaN(Wt)){this.url.path[0]=this.url.path[0]+percentEncodeChar(Wt,isC0ControlPercentEncode)}}return true};URLStateMachine.prototype["parse query"]=function parseQuery(Wt,Pt){if(isNaN(Wt)||!this.stateOverride&&Wt===35){if(!isSpecial(this.url)||this.url.scheme==="ws"||this.url.scheme==="wss"){this.encodingOverride="utf-8"}const Pt=new Buffer(this.buffer);for(let Wt=0;Wt126||Pt[Wt]===34||Pt[Wt]===35||Pt[Wt]===60||Pt[Wt]===62){this.url.query+=percentEncode(Pt[Wt])}else{this.url.query+=String.fromCodePoint(Pt[Wt])}}this.buffer="";if(Wt===35){this.url.fragment="";this.state="fragment"}}else{if(Wt===37&&(!isASCIIHex(this.input[this.pointer+1])||!isASCIIHex(this.input[this.pointer+2]))){this.parseError=true}this.buffer+=Pt}return true};URLStateMachine.prototype["parse fragment"]=function parseFragment(Wt){if(isNaN(Wt)){}else if(Wt===0){this.parseError=true}else{if(Wt===37&&(!isASCIIHex(this.input[this.pointer+1])||!isASCIIHex(this.input[this.pointer+2]))){this.parseError=true}this.url.fragment+=percentEncodeChar(Wt,isC0ControlPercentEncode)}return true};function serializeURL(Wt,Pt){let en=Wt.scheme+":";if(Wt.host!==null){en+="//";if(Wt.username!==""||Wt.password!==""){en+=Wt.username;if(Wt.password!==""){en+=":"+Wt.password}en+="@"}en+=serializeHost(Wt.host);if(Wt.port!==null){en+=":"+Wt.port}}else if(Wt.host===null&&Wt.scheme==="file"){en+="//"}if(Wt.cannotBeABaseURL){en+=Wt.path[0]}else{for(const Pt of Wt.path){en+="/"+Pt}}if(Wt.query!==null){en+="?"+Wt.query}if(!Pt&&Wt.fragment!==null){en+="#"+Wt.fragment}return en}function serializeOrigin(Wt){let Pt=Wt.scheme+"://";Pt+=serializeHost(Wt.host);if(Wt.port!==null){Pt+=":"+Wt.port}return Pt}Wt.exports.serializeURL=serializeURL;Wt.exports.serializeURLOrigin=function(Pt){switch(Pt.scheme){case"blob":try{return Wt.exports.serializeURLOrigin(Wt.exports.parseURL(Pt.path[0]))}catch(Wt){return"null"}case"ftp":case"gopher":case"http":case"https":case"ws":case"wss":return serializeOrigin({scheme:Pt.scheme,host:Pt.host,port:Pt.port});case"file":return"file://";default:return"null"}};Wt.exports.basicURLParse=function(Wt,Pt){if(Pt===undefined){Pt={}}const en=new URLStateMachine(Wt,Pt.baseURL,Pt.encodingOverride,Pt.url,Pt.stateOverride);if(en.failure){return"failure"}return en.url};Wt.exports.setTheUsername=function(Wt,Pt){Wt.username="";const en=tn.ucs2.decode(Pt);for(let Pt=0;Pt{"use strict";Wt.exports.mixin=function mixin(Wt,Pt){const en=Object.getOwnPropertyNames(Pt);for(let tn=0;tn{"use strict";var tn=en(24876);var nn={};nn.rules=en(12069).map((function(Wt){return{rule:Wt,suffix:Wt.replace(/^(\*\.|\!)/,""),punySuffix:-1,wildcard:Wt.charAt(0)==="*",exception:Wt.charAt(0)==="!"}}));nn.endsWith=function(Wt,Pt){return Wt.indexOf(Pt,Wt.length-Pt.length)!==-1};nn.findRule=function(Wt){var Pt=tn.toASCII(Wt);return nn.rules.reduce((function(Wt,en){if(en.punySuffix===-1){en.punySuffix=tn.toASCII(en.suffix)}if(!nn.endsWith(Pt,"."+en.punySuffix)&&Pt!==en.punySuffix){return Wt}return en}),null)};Pt.errorCodes={DOMAIN_TOO_SHORT:"Domain name too short.",DOMAIN_TOO_LONG:"Domain name too long. It should be no more than 255 chars.",LABEL_STARTS_WITH_DASH:"Domain name label can not start with a dash.",LABEL_ENDS_WITH_DASH:"Domain name label can not end with a dash.",LABEL_TOO_LONG:"Domain name label should be at most 63 chars long.",LABEL_TOO_SHORT:"Domain name label should be at least 1 character long.",LABEL_INVALID_CHARS:"Domain name label can only contain alphanumeric characters or dashes."};nn.validate=function(Wt){var Pt=tn.toASCII(Wt);if(Pt.length<1){return"DOMAIN_TOO_SHORT"}if(Pt.length>255){return"DOMAIN_TOO_LONG"}var en=Pt.split(".");var nn;for(var an=0;an63){return"LABEL_TOO_LONG"}if(nn.charAt(0)==="-"){return"LABEL_STARTS_WITH_DASH"}if(nn.charAt(nn.length-1)==="-"){return"LABEL_ENDS_WITH_DASH"}if(!/^[a-z0-9\-]+$/.test(nn)){return"LABEL_INVALID_CHARS"}}};Pt.parse=function(Wt){if(typeof Wt!=="string"){throw new TypeError("Domain name must be a string.")}var en=Wt.slice(0).toLowerCase();if(en.charAt(en.length-1)==="."){en=en.slice(0,en.length-1)}var an=nn.validate(en);if(an){return{input:Wt,error:{message:Pt.errorCodes[an],code:an}}}var rn={input:Wt,tld:null,sld:null,domain:null,subdomain:null,listed:false};var In=en.split(".");if(In[In.length-1]==="local"){return rn}var handlePunycode=function(){if(!/xn--/.test(en)){return rn}if(rn.domain){rn.domain=tn.toASCII(rn.domain)}if(rn.subdomain){rn.subdomain=tn.toASCII(rn.subdomain)}return rn};var sn=nn.findRule(en);if(!sn){if(In.length<2){return rn}rn.tld=In.pop();rn.sld=In.pop();rn.domain=[rn.sld,rn.tld].join(".");if(In.length){rn.subdomain=In.pop()}return handlePunycode()}rn.listed=true;var on=sn.suffix.split(".");var cn=In.slice(0,In.length-on.length);if(sn.exception){cn.push(on.shift())}rn.tld=on.join(".");if(!cn.length){return handlePunycode()}if(sn.wildcard){on.unshift(cn.pop());rn.tld=on.join(".")}if(!cn.length){return handlePunycode()}rn.sld=cn.pop();rn.domain=[rn.sld,rn.tld].join(".");if(cn.length){rn.subdomain=cn.join(".")}return handlePunycode()};Pt.get=function(Wt){if(!Wt){return null}return Pt.parse(Wt).domain||null};Pt.isValid=function(Wt){var en=Pt.parse(Wt);return Boolean(en.domain&&en.listed)}},18629:Wt=>{"use strict";const Pt=2147483647;const en=36;const tn=1;const nn=26;const an=38;const rn=700;const In=72;const sn=128;const on="-";const cn=/^xn--/;const dn=/[^\0-\x7F]/;const un=/[\x2E\u3002\uFF0E\uFF61]/g;const pn={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"};const mn=en-tn;const bn=Math.floor;const Gn=String.fromCharCode;function error(Wt){throw new RangeError(pn[Wt])}function map(Wt,Pt){const en=[];let tn=Wt.length;while(tn--){en[tn]=Pt(Wt[tn])}return en}function mapDomain(Wt,Pt){const en=Wt.split("@");let tn="";if(en.length>1){tn=en[0]+"@";Wt=en[1]}Wt=Wt.replace(un,".");const nn=Wt.split(".");const an=map(nn,Pt).join(".");return tn+an}function ucs2decode(Wt){const Pt=[];let en=0;const tn=Wt.length;while(en=55296&&nn<=56319&&enString.fromCodePoint(...Wt);const basicToDigit=function(Wt){if(Wt>=48&&Wt<58){return 26+(Wt-48)}if(Wt>=65&&Wt<91){return Wt-65}if(Wt>=97&&Wt<123){return Wt-97}return en};const digitToBasic=function(Wt,Pt){return Wt+22+75*(Wt<26)-((Pt!=0)<<5)};const adapt=function(Wt,Pt,tn){let In=0;Wt=tn?bn(Wt/rn):Wt>>1;Wt+=bn(Wt/Pt);for(;Wt>mn*nn>>1;In+=en){Wt=bn(Wt/mn)}return bn(In+(mn+1)*Wt/(Wt+an))};const decode=function(Wt){const an=[];const rn=Wt.length;let cn=0;let dn=sn;let un=In;let pn=Wt.lastIndexOf(on);if(pn<0){pn=0}for(let Pt=0;Pt=128){error("not-basic")}an.push(Wt.charCodeAt(Pt))}for(let In=pn>0?pn+1:0;In=rn){error("invalid-input")}const on=basicToDigit(Wt.charCodeAt(In++));if(on>=en){error("invalid-input")}if(on>bn((Pt-cn)/an)){error("overflow")}cn+=on*an;const dn=sn<=un?tn:sn>=un+nn?nn:sn-un;if(onbn(Pt/pn)){error("overflow")}an*=pn}const on=an.length+1;un=adapt(cn-sn,on,sn==0);if(bn(cn/on)>Pt-dn){error("overflow")}dn+=bn(cn/on);cn%=on;an.splice(cn++,0,dn)}return String.fromCodePoint(...an)};const encode=function(Wt){const an=[];Wt=ucs2decode(Wt);const rn=Wt.length;let cn=sn;let dn=0;let un=In;for(const Pt of Wt){if(Pt<128){an.push(Gn(Pt))}}const pn=an.length;let mn=pn;if(pn){an.push(on)}while(mn=cn&&Ptbn((Pt-dn)/In)){error("overflow")}dn+=(rn-cn)*In;cn=rn;for(const rn of Wt){if(rnPt){error("overflow")}if(rn===cn){let Wt=dn;for(let Pt=en;;Pt+=en){const rn=Pt<=un?tn:Pt>=un+nn?nn:Pt-un;if(Wt{"use strict";const Pt=2147483647;const en=36;const tn=1;const nn=26;const an=38;const rn=700;const In=72;const sn=128;const on="-";const cn=/^xn--/;const dn=/[^\0-\x7F]/;const un=/[\x2E\u3002\uFF0E\uFF61]/g;const pn={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"};const mn=en-tn;const bn=Math.floor;const Gn=String.fromCharCode;function error(Wt){throw new RangeError(pn[Wt])}function map(Wt,Pt){const en=[];let tn=Wt.length;while(tn--){en[tn]=Pt(Wt[tn])}return en}function mapDomain(Wt,Pt){const en=Wt.split("@");let tn="";if(en.length>1){tn=en[0]+"@";Wt=en[1]}Wt=Wt.replace(un,".");const nn=Wt.split(".");const an=map(nn,Pt).join(".");return tn+an}function ucs2decode(Wt){const Pt=[];let en=0;const tn=Wt.length;while(en=55296&&nn<=56319&&enString.fromCodePoint(...Wt);const basicToDigit=function(Wt){if(Wt>=48&&Wt<58){return 26+(Wt-48)}if(Wt>=65&&Wt<91){return Wt-65}if(Wt>=97&&Wt<123){return Wt-97}return en};const digitToBasic=function(Wt,Pt){return Wt+22+75*(Wt<26)-((Pt!=0)<<5)};const adapt=function(Wt,Pt,tn){let In=0;Wt=tn?bn(Wt/rn):Wt>>1;Wt+=bn(Wt/Pt);for(;Wt>mn*nn>>1;In+=en){Wt=bn(Wt/mn)}return bn(In+(mn+1)*Wt/(Wt+an))};const decode=function(Wt){const an=[];const rn=Wt.length;let cn=0;let dn=sn;let un=In;let pn=Wt.lastIndexOf(on);if(pn<0){pn=0}for(let Pt=0;Pt=128){error("not-basic")}an.push(Wt.charCodeAt(Pt))}for(let In=pn>0?pn+1:0;In=rn){error("invalid-input")}const on=basicToDigit(Wt.charCodeAt(In++));if(on>=en){error("invalid-input")}if(on>bn((Pt-cn)/an)){error("overflow")}cn+=on*an;const dn=sn<=un?tn:sn>=un+nn?nn:sn-un;if(onbn(Pt/pn)){error("overflow")}an*=pn}const on=an.length+1;un=adapt(cn-sn,on,sn==0);if(bn(cn/on)>Pt-dn){error("overflow")}dn+=bn(cn/on);cn%=on;an.splice(cn++,0,dn)}return String.fromCodePoint(...an)};const encode=function(Wt){const an=[];Wt=ucs2decode(Wt);const rn=Wt.length;let cn=sn;let dn=0;let un=In;for(const Pt of Wt){if(Pt<128){an.push(Gn(Pt))}}const pn=an.length;let mn=pn;if(pn){an.push(on)}while(mn=cn&&Ptbn((Pt-dn)/In)){error("overflow")}dn+=(rn-cn)*In;cn=rn;for(const rn of Wt){if(rnPt){error("overflow")}if(rn===cn){let Wt=dn;for(let Pt=en;;Pt+=en){const rn=Pt<=un?tn:Pt>=un+nn?nn:Pt-un;if(Wt{"use strict";var en=Object.prototype.hasOwnProperty,tn;function decode(Wt){try{return decodeURIComponent(Wt.replace(/\+/g," "))}catch(Wt){return null}}function encode(Wt){try{return encodeURIComponent(Wt)}catch(Wt){return null}}function querystring(Wt){var Pt=/([^=?#&]+)=?([^&]*)/g,en={},tn;while(tn=Pt.exec(Wt)){var nn=decode(tn[1]),an=decode(tn[2]);if(nn===null||an===null||nn in en)continue;en[nn]=an}return en}function querystringify(Wt,Pt){Pt=Pt||"";var nn=[],an,rn;if("string"!==typeof Pt)Pt="?";for(rn in Wt){if(en.call(Wt,rn)){an=Wt[rn];if(!an&&(an===null||an===tn||isNaN(an))){an=""}rn=encode(rn);an=encode(an);if(rn===null||an===null)continue;nn.push(rn+"="+an)}}return nn.length?Pt+nn.join("&"):""}Pt.stringify=querystringify;Pt.parse=querystring},76120:Wt=>{"use strict";Wt.exports=function required(Wt,Pt){Pt=Pt.split(":")[0];Wt=+Wt;if(!Wt)return false;switch(Pt){case"http":case"ws":return Wt!==80;case"https":case"wss":return Wt!==443;case"ftp":return Wt!==21;case"gopher":return Wt!==70;case"file":return false}return Wt!==0}},77888:(Wt,Pt,en)=>{var tn={CSSRule:en(36777).CSSRule,CSSGroupingRule:en(5376).CSSGroupingRule};tn.CSSConditionRule=function CSSConditionRule(){tn.CSSGroupingRule.call(this);this.cssRules=[]};tn.CSSConditionRule.prototype=new tn.CSSGroupingRule;tn.CSSConditionRule.prototype.constructor=tn.CSSConditionRule;tn.CSSConditionRule.prototype.conditionText="";tn.CSSConditionRule.prototype.cssText="";Pt.CSSConditionRule=tn.CSSConditionRule},13236:(Wt,Pt,en)=>{var tn={CSSRule:en(36777).CSSRule,MatcherList:en(84094).MatcherList};tn.CSSDocumentRule=function CSSDocumentRule(){tn.CSSRule.call(this);this.matcher=new tn.MatcherList;this.cssRules=[]};tn.CSSDocumentRule.prototype=new tn.CSSRule;tn.CSSDocumentRule.prototype.constructor=tn.CSSDocumentRule;tn.CSSDocumentRule.prototype.type=10;Object.defineProperty(tn.CSSDocumentRule.prototype,"cssText",{get:function(){var Wt=[];for(var Pt=0,en=this.cssRules.length;Pt{var tn={CSSStyleDeclaration:en(79784).CSSStyleDeclaration,CSSRule:en(36777).CSSRule};tn.CSSFontFaceRule=function CSSFontFaceRule(){tn.CSSRule.call(this);this.style=new tn.CSSStyleDeclaration;this.style.parentRule=this};tn.CSSFontFaceRule.prototype=new tn.CSSRule;tn.CSSFontFaceRule.prototype.constructor=tn.CSSFontFaceRule;tn.CSSFontFaceRule.prototype.type=5;Object.defineProperty(tn.CSSFontFaceRule.prototype,"cssText",{get:function(){return"@font-face {"+this.style.cssText+"}"}});Pt.CSSFontFaceRule=tn.CSSFontFaceRule},5376:(Wt,Pt,en)=>{var tn={CSSRule:en(36777).CSSRule,parse:en(7571).parse};tn.CSSGroupingRule=function CSSGroupingRule(){tn.CSSRule.call(this);this.cssRules=[]};tn.CSSGroupingRule.prototype=new tn.CSSRule;tn.CSSGroupingRule.prototype.constructor=tn.CSSGroupingRule;tn.CSSGroupingRule.prototype.insertRule=function insertRule(Wt,Pt){if(Pt<0||Pt>this.cssRules.length){throw new RangeError("INDEX_SIZE_ERR")}var en=tn.parse(Wt).cssRules[0];en.parentRule=this;this.cssRules.splice(Pt,0,en);return Pt};tn.CSSGroupingRule.prototype.deleteRule=function deleteRule(Wt){if(Wt<0||Wt>=this.cssRules.length){throw new RangeError("INDEX_SIZE_ERR")}this.cssRules.splice(Wt,1)[0].parentRule=null};Pt.CSSGroupingRule=tn.CSSGroupingRule},42155:(Wt,Pt,en)=>{var tn={CSSRule:en(36777).CSSRule};tn.CSSHostRule=function CSSHostRule(){tn.CSSRule.call(this);this.cssRules=[]};tn.CSSHostRule.prototype=new tn.CSSRule;tn.CSSHostRule.prototype.constructor=tn.CSSHostRule;tn.CSSHostRule.prototype.type=1001;Object.defineProperty(tn.CSSHostRule.prototype,"cssText",{get:function(){var Wt=[];for(var Pt=0,en=this.cssRules.length;Pt{var tn={CSSRule:en(36777).CSSRule,CSSStyleSheet:en(1951).CSSStyleSheet,MediaList:en(76752).MediaList};tn.CSSImportRule=function CSSImportRule(){tn.CSSRule.call(this);this.href="";this.media=new tn.MediaList;this.styleSheet=new tn.CSSStyleSheet};tn.CSSImportRule.prototype=new tn.CSSRule;tn.CSSImportRule.prototype.constructor=tn.CSSImportRule;tn.CSSImportRule.prototype.type=3;Object.defineProperty(tn.CSSImportRule.prototype,"cssText",{get:function(){var Wt=this.media.mediaText;return"@import url("+this.href+")"+(Wt?" "+Wt:"")+";"},set:function(Wt){var Pt=0;var en="";var tn="";var nn;for(var an;an=Wt.charAt(Pt);Pt++){switch(an){case" ":case"\t":case"\r":case"\n":case"\f":if(en==="after-import"){en="url"}else{tn+=an}break;case"@":if(!en&&Wt.indexOf("@import",Pt)===Pt){en="after-import";Pt+="import".length;tn=""}break;case"u":if(en==="url"&&Wt.indexOf("url(",Pt)===Pt){nn=Wt.indexOf(")",Pt+1);if(nn===-1){throw Pt+': ")" not found'}Pt+="url(".length;var rn=Wt.slice(Pt,nn);if(rn[0]===rn[rn.length-1]){if(rn[0]==='"'||rn[0]==="'"){rn=rn.slice(1,-1)}}this.href=rn;Pt=nn;en="media"}break;case'"':if(en==="url"){nn=Wt.indexOf('"',Pt+1);if(!nn){throw Pt+": '\"' not found"}this.href=Wt.slice(Pt+1,nn);Pt=nn;en="media"}break;case"'":if(en==="url"){nn=Wt.indexOf("'",Pt+1);if(!nn){throw Pt+': "\'" not found'}this.href=Wt.slice(Pt+1,nn);Pt=nn;en="media"}break;case";":if(en==="media"){if(tn){this.media.mediaText=tn.trim()}}break;default:if(en==="media"){tn+=an}break}}}});Pt.CSSImportRule=tn.CSSImportRule},44493:(Wt,Pt,en)=>{var tn={CSSRule:en(36777).CSSRule,CSSStyleDeclaration:en(79784).CSSStyleDeclaration};tn.CSSKeyframeRule=function CSSKeyframeRule(){tn.CSSRule.call(this);this.keyText="";this.style=new tn.CSSStyleDeclaration;this.style.parentRule=this};tn.CSSKeyframeRule.prototype=new tn.CSSRule;tn.CSSKeyframeRule.prototype.constructor=tn.CSSKeyframeRule;tn.CSSKeyframeRule.prototype.type=8;Object.defineProperty(tn.CSSKeyframeRule.prototype,"cssText",{get:function(){return this.keyText+" {"+this.style.cssText+"} "}});Pt.CSSKeyframeRule=tn.CSSKeyframeRule},95776:(Wt,Pt,en)=>{var tn={CSSRule:en(36777).CSSRule};tn.CSSKeyframesRule=function CSSKeyframesRule(){tn.CSSRule.call(this);this.name="";this.cssRules=[]};tn.CSSKeyframesRule.prototype=new tn.CSSRule;tn.CSSKeyframesRule.prototype.constructor=tn.CSSKeyframesRule;tn.CSSKeyframesRule.prototype.type=7;Object.defineProperty(tn.CSSKeyframesRule.prototype,"cssText",{get:function(){var Wt=[];for(var Pt=0,en=this.cssRules.length;Pt{var tn={CSSRule:en(36777).CSSRule,CSSGroupingRule:en(5376).CSSGroupingRule,CSSConditionRule:en(77888).CSSConditionRule,MediaList:en(76752).MediaList};tn.CSSMediaRule=function CSSMediaRule(){tn.CSSConditionRule.call(this);this.media=new tn.MediaList};tn.CSSMediaRule.prototype=new tn.CSSConditionRule;tn.CSSMediaRule.prototype.constructor=tn.CSSMediaRule;tn.CSSMediaRule.prototype.type=4;Object.defineProperties(tn.CSSMediaRule.prototype,{conditionText:{get:function(){return this.media.mediaText},set:function(Wt){this.media.mediaText=Wt},configurable:true,enumerable:true},cssText:{get:function(){var Wt=[];for(var Pt=0,en=this.cssRules.length;Pt{var en={};en.CSSRule=function CSSRule(){this.parentRule=null;this.parentStyleSheet=null};en.CSSRule.UNKNOWN_RULE=0;en.CSSRule.STYLE_RULE=1;en.CSSRule.CHARSET_RULE=2;en.CSSRule.IMPORT_RULE=3;en.CSSRule.MEDIA_RULE=4;en.CSSRule.FONT_FACE_RULE=5;en.CSSRule.PAGE_RULE=6;en.CSSRule.KEYFRAMES_RULE=7;en.CSSRule.KEYFRAME_RULE=8;en.CSSRule.MARGIN_RULE=9;en.CSSRule.NAMESPACE_RULE=10;en.CSSRule.COUNTER_STYLE_RULE=11;en.CSSRule.SUPPORTS_RULE=12;en.CSSRule.DOCUMENT_RULE=13;en.CSSRule.FONT_FEATURE_VALUES_RULE=14;en.CSSRule.VIEWPORT_RULE=15;en.CSSRule.REGION_STYLE_RULE=16;en.CSSRule.prototype={constructor:en.CSSRule};Pt.CSSRule=en.CSSRule},79784:(Wt,Pt,en)=>{var tn={};tn.CSSStyleDeclaration=function CSSStyleDeclaration(){this.length=0;this.parentRule=null;this._importants={}};tn.CSSStyleDeclaration.prototype={constructor:tn.CSSStyleDeclaration,getPropertyValue:function(Wt){return this[Wt]||""},setProperty:function(Wt,Pt,en){if(this[Wt]){var tn=Array.prototype.indexOf.call(this,Wt);if(tn<0){this[this.length]=Wt;this.length++}}else{this[this.length]=Wt;this.length++}this[Wt]=Pt+"";this._importants[Wt]=en},removeProperty:function(Wt){if(!(Wt in this)){return""}var Pt=Array.prototype.indexOf.call(this,Wt);if(Pt<0){return""}var en=this[Wt];this[Wt]="";Array.prototype.splice.call(this,Pt,1);return en},getPropertyCSSValue:function(){},getPropertyPriority:function(Wt){return this._importants[Wt]||""},getPropertyShorthand:function(){},isPropertyImplicit:function(){},get cssText(){var Wt=[];for(var Pt=0,en=this.length;Pt{var tn={CSSStyleDeclaration:en(79784).CSSStyleDeclaration,CSSRule:en(36777).CSSRule};tn.CSSStyleRule=function CSSStyleRule(){tn.CSSRule.call(this);this.selectorText="";this.style=new tn.CSSStyleDeclaration;this.style.parentRule=this};tn.CSSStyleRule.prototype=new tn.CSSRule;tn.CSSStyleRule.prototype.constructor=tn.CSSStyleRule;tn.CSSStyleRule.prototype.type=1;Object.defineProperty(tn.CSSStyleRule.prototype,"cssText",{get:function(){var Wt;if(this.selectorText){Wt=this.selectorText+" {"+this.style.cssText+"}"}else{Wt=""}return Wt},set:function(Wt){var Pt=tn.CSSStyleRule.parse(Wt);this.style=Pt.style;this.selectorText=Pt.selectorText}});tn.CSSStyleRule.parse=function(Wt){var Pt=0;var en="selector";var nn;var an=Pt;var rn="";var In={selector:true,value:true};var sn=new tn.CSSStyleRule;var on,cn="";for(var dn;dn=Wt.charAt(Pt);Pt++){switch(dn){case" ":case"\t":case"\r":case"\n":case"\f":if(In[en]){switch(Wt.charAt(Pt-1)){case" ":case"\t":case"\r":case"\n":case"\f":break;default:rn+=" ";break}}break;case'"':an=Pt+1;nn=Wt.indexOf('"',an)+1;if(!nn){throw'" is missing'}rn+=Wt.slice(Pt,nn);Pt=nn-1;break;case"'":an=Pt+1;nn=Wt.indexOf("'",an)+1;if(!nn){throw"' is missing"}rn+=Wt.slice(Pt,nn);Pt=nn-1;break;case"/":if(Wt.charAt(Pt+1)==="*"){Pt+=2;nn=Wt.indexOf("*/",Pt);if(nn===-1){throw new SyntaxError("Missing */")}else{Pt=nn+1}}else{rn+=dn}break;case"{":if(en==="selector"){sn.selectorText=rn.trim();rn="";en="name"}break;case":":if(en==="name"){on=rn.trim();rn="";en="value"}else{rn+=dn}break;case"!":if(en==="value"&&Wt.indexOf("!important",Pt)===Pt){cn="important";Pt+="important".length}else{rn+=dn}break;case";":if(en==="value"){sn.style.setProperty(on,rn.trim(),cn);cn="";rn="";en="name"}else{rn+=dn}break;case"}":if(en==="value"){sn.style.setProperty(on,rn.trim(),cn);cn="";rn=""}else if(en==="name"){break}else{rn+=dn}en="selector";break;default:rn+=dn;break}}return sn};Pt.CSSStyleRule=tn.CSSStyleRule},1951:(Wt,Pt,en)=>{var tn={StyleSheet:en(19418).StyleSheet,CSSStyleRule:en(54008).CSSStyleRule};tn.CSSStyleSheet=function CSSStyleSheet(){tn.StyleSheet.call(this);this.cssRules=[]};tn.CSSStyleSheet.prototype=new tn.StyleSheet;tn.CSSStyleSheet.prototype.constructor=tn.CSSStyleSheet;tn.CSSStyleSheet.prototype.insertRule=function(Wt,Pt){if(Pt<0||Pt>this.cssRules.length){throw new RangeError("INDEX_SIZE_ERR")}var en=tn.parse(Wt).cssRules[0];en.parentStyleSheet=this;this.cssRules.splice(Pt,0,en);return Pt};tn.CSSStyleSheet.prototype.deleteRule=function(Wt){if(Wt<0||Wt>=this.cssRules.length){throw new RangeError("INDEX_SIZE_ERR")}this.cssRules.splice(Wt,1)};tn.CSSStyleSheet.prototype.toString=function(){var Wt="";var Pt=this.cssRules;for(var en=0;en{var tn={CSSRule:en(36777).CSSRule,CSSGroupingRule:en(5376).CSSGroupingRule,CSSConditionRule:en(77888).CSSConditionRule};tn.CSSSupportsRule=function CSSSupportsRule(){tn.CSSConditionRule.call(this)};tn.CSSSupportsRule.prototype=new tn.CSSConditionRule;tn.CSSSupportsRule.prototype.constructor=tn.CSSSupportsRule;tn.CSSSupportsRule.prototype.type=12;Object.defineProperty(tn.CSSSupportsRule.prototype,"cssText",{get:function(){var Wt=[];for(var Pt=0,en=this.cssRules.length;Pt{var en={};en.CSSValue=function CSSValue(){};en.CSSValue.prototype={constructor:en.CSSValue,set cssText(Wt){var Pt=this._getConstructorName();throw new Error('DOMException: property "cssText" of "'+Pt+'" is readonly and can not be replaced with "'+Wt+'"!')},get cssText(){var Wt=this._getConstructorName();throw new Error('getter "cssText" of "'+Wt+'" is not implemented!')},_getConstructorName:function(){var Wt=this.constructor.toString(),Pt=Wt.match(/function\s([^\(]+)/),en=Pt[1];return en}};Pt.CSSValue=en.CSSValue},68:(Wt,Pt,en)=>{var tn={CSSValue:en(32362).CSSValue};tn.CSSValueExpression=function CSSValueExpression(Wt,Pt){this._token=Wt;this._idx=Pt};tn.CSSValueExpression.prototype=new tn.CSSValue;tn.CSSValueExpression.prototype.constructor=tn.CSSValueExpression;tn.CSSValueExpression.prototype.parse=function(){var Wt=this._token,Pt=this._idx;var en="",tn="",nn="",an,rn=[];for(;;++Pt){en=Wt.charAt(Pt);if(en===""){nn="css expression error: unfinished expression!";break}switch(en){case"(":rn.push(en);tn+=en;break;case")":rn.pop(en);tn+=en;break;case"/":if(an=this._parseJSComment(Wt,Pt)){if(an.error){nn="css expression error: unfinished comment in expression!"}else{Pt=an.idx}}else if(an=this._parseJSRexExp(Wt,Pt)){Pt=an.idx;tn+=an.text}else{tn+=en}break;case"'":case'"':an=this._parseJSString(Wt,Pt,en);if(an){Pt=an.idx;tn+=an.text}else{tn+=en}break;default:tn+=en;break}if(nn){break}if(rn.length===0){break}}var In;if(nn){In={error:nn}}else{In={idx:Pt,expression:tn}}return In};tn.CSSValueExpression.prototype._parseJSComment=function(Wt,Pt){var en=Wt.charAt(Pt+1),tn;if(en==="/"||en==="*"){var nn=Pt,an,rn;if(en==="/"){rn="\n"}else if(en==="*"){rn="*/"}an=Wt.indexOf(rn,nn+1+1);if(an!==-1){an=an+rn.length-1;tn=Wt.substring(Pt,an+1);return{idx:an,text:tn}}else{var In="css expression error: unfinished comment in expression!";return{error:In}}}else{return false}};tn.CSSValueExpression.prototype._parseJSString=function(Wt,Pt,en){var tn=this._findMatchedIdx(Wt,Pt,en),nn;if(tn===-1){return false}else{nn=Wt.substring(Pt,tn+en.length);return{idx:tn,text:nn}}};tn.CSSValueExpression.prototype._parseJSRexExp=function(Wt,Pt){var en=Wt.substring(0,Pt).replace(/\s+$/,""),tn=[/^$/,/\($/,/\[$/,/\!$/,/\+$/,/\-$/,/\*$/,/\/\s+/,/\%$/,/\=$/,/\>$/,/<$/,/\&$/,/\|$/,/\^$/,/\~$/,/\?$/,/\,$/,/delete$/,/in$/,/instanceof$/,/new$/,/typeof$/,/void$/];var nn=tn.some((function(Wt){return Wt.test(en)}));if(!nn){return false}else{var an="/";return this._parseJSString(Wt,Pt,an)}};tn.CSSValueExpression.prototype._findMatchedIdx=function(Wt,Pt,en){var tn=Pt,nn;var an=-1;while(true){nn=Wt.indexOf(en,tn+1);if(nn===-1){nn=an;break}else{var rn=Wt.substring(Pt+1,nn),In=rn.match(/\\+$/);if(!In||In[0]%2===0){break}else{tn=nn}}}var sn=Wt.indexOf("\n",Pt+1);if(sn{var en={};en.MatcherList=function MatcherList(){this.length=0};en.MatcherList.prototype={constructor:en.MatcherList,get matcherText(){return Array.prototype.join.call(this,", ")},set matcherText(Wt){var Pt=Wt.split(",");var en=this.length=Pt.length;for(var tn=0;tn{var en={};en.MediaList=function MediaList(){this.length=0};en.MediaList.prototype={constructor:en.MediaList,get mediaText(){return Array.prototype.join.call(this,", ")},set mediaText(Wt){var Pt=Wt.split(",");var en=this.length=Pt.length;for(var tn=0;tn{var en={};en.StyleSheet=function StyleSheet(){this.parentStyleSheet=null};Pt.StyleSheet=en.StyleSheet},39869:(Wt,Pt,en)=>{var tn={CSSStyleSheet:en(1951).CSSStyleSheet,CSSRule:en(36777).CSSRule,CSSStyleRule:en(54008).CSSStyleRule,CSSGroupingRule:en(5376).CSSGroupingRule,CSSConditionRule:en(77888).CSSConditionRule,CSSMediaRule:en(4429).CSSMediaRule,CSSSupportsRule:en(24557).CSSSupportsRule,CSSStyleDeclaration:en(79784).CSSStyleDeclaration,CSSKeyframeRule:en(44493).CSSKeyframeRule,CSSKeyframesRule:en(95776).CSSKeyframesRule};tn.clone=function clone(Wt){var Pt=new tn.CSSStyleSheet;var en=Wt.cssRules;if(!en){return Pt}for(var nn=0,an=en.length;nn{"use strict";Pt.CSSStyleDeclaration=en(79784).CSSStyleDeclaration;Pt.CSSRule=en(36777).CSSRule;Pt.CSSGroupingRule=en(5376).CSSGroupingRule;Pt.CSSConditionRule=en(77888).CSSConditionRule;Pt.CSSStyleRule=en(54008).CSSStyleRule;Pt.MediaList=en(76752).MediaList;Pt.CSSMediaRule=en(4429).CSSMediaRule;Pt.CSSSupportsRule=en(24557).CSSSupportsRule;Pt.CSSImportRule=en(94488).CSSImportRule;Pt.CSSFontFaceRule=en(49149).CSSFontFaceRule;Pt.CSSHostRule=en(42155).CSSHostRule;Pt.StyleSheet=en(19418).StyleSheet;Pt.CSSStyleSheet=en(1951).CSSStyleSheet;Pt.CSSKeyframesRule=en(95776).CSSKeyframesRule;Pt.CSSKeyframeRule=en(44493).CSSKeyframeRule;Pt.MatcherList=en(84094).MatcherList;Pt.CSSDocumentRule=en(13236).CSSDocumentRule;Pt.CSSValue=en(32362).CSSValue;Pt.CSSValueExpression=en(68).CSSValueExpression;Pt.parse=en(7571).parse;Pt.clone=en(39869).clone},7571:(Wt,Pt,en)=>{var tn={};tn.parse=function parse(Wt){var Pt=0;var en="before-selector";var nn;var an="";var rn=0;var In={selector:true,value:true,"value-parenthesis":true,atRule:true,"importRule-begin":true,importRule:true,atBlock:true,conditionBlock:true,"documentRule-begin":true};var sn=new tn.CSSStyleSheet;var on=sn;var cn;var dn=[];var un=false;var pn;var mn,bn="",Gn,hn,Zn,An,Wn,Nn,gn,yn;var vn=/@(-(?:\w+-)+)?keyframes/g;var parseError=function(en){var tn=Wt.substring(0,Pt).split("\n");var nn=tn.length;var an=tn.pop().length+1;var rn=new Error(en+" (line "+nn+", char "+an+")");rn.line=nn;rn["char"]=an;rn.styleSheet=sn;throw rn};for(var Yn;Yn=Wt.charAt(Pt);Pt++){switch(Yn){case" ":case"\t":case"\r":case"\n":case"\f":if(In[en]){an+=Yn}break;case'"':nn=Pt+1;do{nn=Wt.indexOf('"',nn)+1;if(!nn){parseError('Unmatched "')}}while(Wt[nn-2]==="\\");an+=Wt.slice(Pt,nn);Pt=nn-1;switch(en){case"before-value":en="value";break;case"importRule-begin":en="importRule";break}break;case"'":nn=Pt+1;do{nn=Wt.indexOf("'",nn)+1;if(!nn){parseError("Unmatched '")}}while(Wt[nn-2]==="\\");an+=Wt.slice(Pt,nn);Pt=nn-1;switch(en){case"before-value":en="value";break;case"importRule-begin":en="importRule";break}break;case"/":if(Wt.charAt(Pt+1)==="*"){Pt+=2;nn=Wt.indexOf("*/",Pt);if(nn===-1){parseError("Missing */")}else{Pt=nn+1}}else{an+=Yn}if(en==="importRule-begin"){an+=" ";en="importRule"}break;case"@":if(Wt.indexOf("@-moz-document",Pt)===Pt){en="documentRule-begin";gn=new tn.CSSDocumentRule;gn.__starts=Pt;Pt+="-moz-document".length;an="";break}else if(Wt.indexOf("@media",Pt)===Pt){en="atBlock";hn=new tn.CSSMediaRule;hn.__starts=Pt;Pt+="media".length;an="";break}else if(Wt.indexOf("@supports",Pt)===Pt){en="conditionBlock";Zn=new tn.CSSSupportsRule;Zn.__starts=Pt;Pt+="supports".length;an="";break}else if(Wt.indexOf("@host",Pt)===Pt){en="hostRule-begin";Pt+="host".length;yn=new tn.CSSHostRule;yn.__starts=Pt;an="";break}else if(Wt.indexOf("@import",Pt)===Pt){en="importRule-begin";Pt+="import".length;an+="@import";break}else if(Wt.indexOf("@font-face",Pt)===Pt){en="fontFaceRule-begin";Pt+="font-face".length;Wn=new tn.CSSFontFaceRule;Wn.__starts=Pt;an="";break}else{vn.lastIndex=Pt;var En=vn.exec(Wt);if(En&&En.index===Pt){en="keyframesRule-begin";Nn=new tn.CSSKeyframesRule;Nn.__starts=Pt;Nn._vendorPrefix=En[1];Pt+=En[0].length-1;an="";break}else if(en==="selector"){en="atRule"}}an+=Yn;break;case"{":if(en==="selector"||en==="atRule"){Gn.selectorText=an.trim();Gn.style.__starts=Pt;an="";en="before-name"}else if(en==="atBlock"){hn.media.mediaText=an.trim();if(cn){dn.push(cn)}on=cn=hn;hn.parentStyleSheet=sn;an="";en="before-selector"}else if(en==="conditionBlock"){Zn.conditionText=an.trim();if(cn){dn.push(cn)}on=cn=Zn;Zn.parentStyleSheet=sn;an="";en="before-selector"}else if(en==="hostRule-begin"){if(cn){dn.push(cn)}on=cn=yn;yn.parentStyleSheet=sn;an="";en="before-selector"}else if(en==="fontFaceRule-begin"){if(cn){Wn.parentRule=cn}Wn.parentStyleSheet=sn;Gn=Wn;an="";en="before-name"}else if(en==="keyframesRule-begin"){Nn.name=an.trim();if(cn){dn.push(cn);Nn.parentRule=cn}Nn.parentStyleSheet=sn;on=cn=Nn;an="";en="keyframeRule-begin"}else if(en==="keyframeRule-begin"){Gn=new tn.CSSKeyframeRule;Gn.keyText=an.trim();Gn.__starts=Pt;an="";en="before-name"}else if(en==="documentRule-begin"){gn.matcher.matcherText=an.trim();if(cn){dn.push(cn);gn.parentRule=cn}on=cn=gn;gn.parentStyleSheet=sn;an="";en="before-selector"}break;case":":if(en==="name"){mn=an.trim();an="";en="before-value"}else{an+=Yn}break;case"(":if(en==="value"){if(an.trim()==="expression"){var Vn=new tn.CSSValueExpression(Wt,Pt).parse();if(Vn.error){parseError(Vn.error)}else{an+=Vn.expression;Pt=Vn.idx}}else{en="value-parenthesis";rn=1;an+=Yn}}else if(en==="value-parenthesis"){rn++;an+=Yn}else{an+=Yn}break;case")":if(en==="value-parenthesis"){rn--;if(rn===0)en="value"}an+=Yn;break;case"!":if(en==="value"&&Wt.indexOf("!important",Pt)===Pt){bn="important";Pt+="important".length}else{an+=Yn}break;case";":switch(en){case"value":Gn.style.setProperty(mn,an.trim(),bn);bn="";an="";en="before-name";break;case"atRule":an="";en="before-selector";break;case"importRule":An=new tn.CSSImportRule;An.parentStyleSheet=An.styleSheet.parentStyleSheet=sn;An.cssText=an+Yn;sn.cssRules.push(An);an="";en="before-selector";break;default:an+=Yn;break}break;case"}":switch(en){case"value":Gn.style.setProperty(mn,an.trim(),bn);bn="";case"before-name":case"name":Gn.__ends=Pt+1;if(cn){Gn.parentRule=cn}Gn.parentStyleSheet=sn;on.cssRules.push(Gn);an="";if(on.constructor===tn.CSSKeyframesRule){en="keyframeRule-begin"}else{en="before-selector"}break;case"keyframeRule-begin":case"before-selector":case"selector":if(!cn){parseError("Unexpected }")}un=dn.length>0;while(dn.length>0){cn=dn.pop();if(cn.constructor.name==="CSSMediaRule"||cn.constructor.name==="CSSSupportsRule"){pn=on;on=cn;on.cssRules.push(pn);break}if(dn.length===0){un=false}}if(!un){on.__ends=Pt+1;sn.cssRules.push(on);on=sn;cn=null}an="";en="before-selector";break}break;default:switch(en){case"before-selector":en="selector";Gn=new tn.CSSStyleRule;Gn.__starts=Pt;break;case"before-name":en="name";break;case"before-value":en="value";break;case"importRule-begin":en="importRule";break}an+=Yn;break}}return sn};Pt.parse=tn.parse;tn.CSSStyleSheet=en(1951).CSSStyleSheet;tn.CSSStyleRule=en(54008).CSSStyleRule;tn.CSSImportRule=en(94488).CSSImportRule;tn.CSSGroupingRule=en(5376).CSSGroupingRule;tn.CSSMediaRule=en(4429).CSSMediaRule;tn.CSSConditionRule=en(77888).CSSConditionRule;tn.CSSSupportsRule=en(24557).CSSSupportsRule;tn.CSSFontFaceRule=en(49149).CSSFontFaceRule;tn.CSSHostRule=en(42155).CSSHostRule;tn.CSSStyleDeclaration=en(79784).CSSStyleDeclaration;tn.CSSKeyframeRule=en(44493).CSSKeyframeRule;tn.CSSKeyframesRule=en(95776).CSSKeyframesRule;tn.CSSValueExpression=en(68).CSSValueExpression;tn.CSSDocumentRule=en(13236).CSSDocumentRule},12803:(Wt,Pt,en)=>{"use strict";var tn=en(20181);var nn=tn.Buffer;var an={};var rn;for(rn in tn){if(!tn.hasOwnProperty(rn))continue;if(rn==="SlowBuffer"||rn==="Buffer")continue;an[rn]=tn[rn]}var In=an.Buffer={};for(rn in nn){if(!nn.hasOwnProperty(rn))continue;if(rn==="allocUnsafe"||rn==="allocUnsafeSlow")continue;In[rn]=nn[rn]}an.Buffer.prototype=nn.prototype;if(!In.from||In.from===Uint8Array.from){In.from=function(Wt,Pt,en){if(typeof Wt==="number"){throw new TypeError('The "value" argument must not be of type number. Received type '+typeof Wt)}if(Wt&&typeof Wt.length==="undefined"){throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Wt)}return nn(Wt,Pt,en)}}if(!In.alloc){In.alloc=function(Wt,Pt,en){if(typeof Wt!=="number"){throw new TypeError('The "size" argument must be of type number. Received type '+typeof Wt)}if(Wt<0||Wt>=2*(1<<30)){throw new RangeError('The value "'+Wt+'" is invalid for option "size"')}var tn=nn(Wt);if(!Pt||Pt.length===0){tn.fill(0)}else if(typeof en==="string"){tn.fill(Pt,en)}else{tn.fill(Pt)}return tn}}if(!an.kStringMaxLength){try{an.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch(Wt){}}if(!an.constants){an.constants={MAX_LENGTH:an.kMaxLength};if(an.kStringMaxLength){an.constants.MAX_STRING_LENGTH=an.kStringMaxLength}}Wt.exports=an},59800:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.SaxesParser=Pt.EVENTS=void 0;const tn=en(96950);const nn=en(24488);const an=en(85699);var rn=tn.isS;var In=tn.isChar;var sn=tn.isNameStartChar;var on=tn.isNameChar;var cn=tn.S_LIST;var dn=tn.NAME_RE;var un=nn.isChar;var pn=an.isNCNameStartChar;var mn=an.isNCNameChar;var bn=an.NC_NAME_RE;const Gn="http://www.w3.org/XML/1998/namespace";const hn="http://www.w3.org/2000/xmlns/";const Zn={__proto__:null,xml:Gn,xmlns:hn};const An={__proto__:null,amp:"&",gt:">",lt:"<",quot:'"',apos:"'"};const Wn=-1;const Nn=-2;const gn=0;const yn=1;const vn=2;const Yn=3;const En=4;const Vn=5;const Rn=6;const wn=7;const Fn=8;const Qn=9;const fn=10;const Hn=11;const Cn=12;const Xn=13;const kn=14;const Jn=15;const Ln=16;const Bn=17;const xn=18;const On=19;const Tn=20;const Un=21;const Mn=22;const zn=23;const Sn=24;const jn=25;const Dn=26;const _n=27;const Kn=28;const Pn=29;const qn=30;const $n=31;const el=32;const tl=33;const nl=34;const ll=35;const al=36;const rl=37;const Il=38;const sl=39;const ol=40;const cl=41;const il=42;const dl=43;const ul=44;const pl=9;const ml=10;const bl=13;const Gl=32;const hl=33;const Zl=34;const Al=38;const Wl=39;const Nl=45;const gl=47;const yl=59;const vl=60;const Yl=61;const El=62;const Vl=63;const Rl=91;const wl=93;const Fl=133;const Ql=8232;const isQuote=Wt=>Wt===Zl||Wt===Wl;const fl=[Zl,Wl];const Hl=[...fl,Rl,El];const Cl=[...fl,vl,wl];const Xl=[Yl,Vl,...cn];const kl=[...cn,El,Al,vl];function nsPairCheck(Wt,Pt,en){switch(Pt){case"xml":if(en!==Gn){Wt.fail(`xml prefix must be bound to ${Gn}.`)}break;case"xmlns":if(en!==hn){Wt.fail(`xmlns prefix must be bound to ${hn}.`)}break;default:}switch(en){case hn:Wt.fail(Pt===""?`the default namespace may not be set to ${en}.`:`may not assign a prefix (even "xmlns") to the URI ${hn}.`);break;case Gn:switch(Pt){case"xml":break;case"":Wt.fail(`the default namespace may not be set to ${en}.`);break;default:Wt.fail("may not assign the xml namespace to another prefix.")}break;default:}}function nsMappingCheck(Wt,Pt){for(const en of Object.keys(Pt)){nsPairCheck(Wt,en,Pt[en])}}const isNCName=Wt=>bn.test(Wt);const isName=Wt=>dn.test(Wt);const Jl=0;const Ll=1;const Bl=2;Pt.EVENTS=["xmldecl","text","processinginstruction","doctype","comment","opentagstart","attribute","opentag","closetag","cdata","error","end","ready"];const xl={xmldecl:"xmldeclHandler",text:"textHandler",processinginstruction:"piHandler",doctype:"doctypeHandler",comment:"commentHandler",opentagstart:"openTagStartHandler",attribute:"attributeHandler",opentag:"openTagHandler",closetag:"closeTagHandler",cdata:"cdataHandler",error:"errorHandler",end:"endHandler",ready:"readyHandler"};class SaxesParser{constructor(Wt){this.opt=Wt!==null&&Wt!==void 0?Wt:{};this.fragmentOpt=!!this.opt.fragment;const Pt=this.xmlnsOpt=!!this.opt.xmlns;this.trackPosition=this.opt.position!==false;this.fileName=this.opt.fileName;if(Pt){this.nameStartCheck=pn;this.nameCheck=mn;this.isName=isNCName;this.processAttribs=this.processAttribsNS;this.pushAttrib=this.pushAttribNS;this.ns=Object.assign({__proto__:null},Zn);const Wt=this.opt.additionalNamespaces;if(Wt!=null){nsMappingCheck(this,Wt);Object.assign(this.ns,Wt)}}else{this.nameStartCheck=sn;this.nameCheck=on;this.isName=isName;this.processAttribs=this.processAttribsPlain;this.pushAttrib=this.pushAttribPlain}this.stateTable=[this.sBegin,this.sBeginWhitespace,this.sDoctype,this.sDoctypeQuote,this.sDTD,this.sDTDQuoted,this.sDTDOpenWaka,this.sDTDOpenWakaBang,this.sDTDComment,this.sDTDCommentEnding,this.sDTDCommentEnded,this.sDTDPI,this.sDTDPIEnding,this.sText,this.sEntity,this.sOpenWaka,this.sOpenWakaBang,this.sComment,this.sCommentEnding,this.sCommentEnded,this.sCData,this.sCDataEnding,this.sCDataEnding2,this.sPIFirstChar,this.sPIRest,this.sPIBody,this.sPIEnding,this.sXMLDeclNameStart,this.sXMLDeclName,this.sXMLDeclEq,this.sXMLDeclValueStart,this.sXMLDeclValue,this.sXMLDeclSeparator,this.sXMLDeclEnding,this.sOpenTag,this.sOpenTagSlash,this.sAttrib,this.sAttribName,this.sAttribNameSawWhite,this.sAttribValue,this.sAttribValueQuoted,this.sAttribValueClosed,this.sAttribValueUnquoted,this.sCloseTag,this.sCloseTagSawWhite];this._init()}get closed(){return this._closed}_init(){var Wt;this.openWakaBang="";this.text="";this.name="";this.piTarget="";this.entity="";this.q=null;this.tags=[];this.tag=null;this.topNS=null;this.chunk="";this.chunkPosition=0;this.i=0;this.prevI=0;this.carriedFromPrevious=undefined;this.forbiddenState=Jl;this.attribList=[];const{fragmentOpt:Pt}=this;this.state=Pt?Xn:gn;this.reportedTextBeforeRoot=this.reportedTextAfterRoot=this.closedRoot=this.sawRoot=Pt;this.xmlDeclPossible=!Pt;this.xmlDeclExpects=["version"];this.entityReturnState=undefined;let{defaultXMLVersion:en}=this.opt;if(en===undefined){if(this.opt.forceXMLVersion===true){throw new Error("forceXMLVersion set but defaultXMLVersion is not set")}en="1.0"}this.setXMLVersion(en);this.positionAtNewLine=0;this.doctype=false;this._closed=false;this.xmlDecl={version:undefined,encoding:undefined,standalone:undefined};this.line=1;this.column=0;this.ENTITIES=Object.create(An);(Wt=this.readyHandler)===null||Wt===void 0?void 0:Wt.call(this)}get position(){return this.chunkPosition+this.i}get columnIndex(){return this.position-this.positionAtNewLine}on(Wt,Pt){this[xl[Wt]]=Pt}off(Wt){this[xl[Wt]]=undefined}makeError(Wt){var Pt;let en=(Pt=this.fileName)!==null&&Pt!==void 0?Pt:"";if(this.trackPosition){if(en.length>0){en+=":"}en+=`${this.line}:${this.column}`}if(en.length>0){en+=": "}return new Error(en+Wt)}fail(Wt){const Pt=this.makeError(Wt);const en=this.errorHandler;if(en===undefined){throw Pt}else{en(Pt)}return this}write(Wt){if(this.closed){return this.fail("cannot write after close; assign an onready handler.")}let Pt=false;if(Wt===null){Pt=true;Wt=""}else if(typeof Wt==="object"){Wt=Wt.toString()}if(this.carriedFromPrevious!==undefined){Wt=`${this.carriedFromPrevious}${Wt}`;this.carriedFromPrevious=undefined}let en=Wt.length;const tn=Wt.charCodeAt(en-1);if(!Pt&&(tn===bl||tn>=55296&&tn<=56319)){this.carriedFromPrevious=Wt[en-1];en--;Wt=Wt.slice(0,en)}const{stateTable:nn}=this;this.chunk=Wt;this.i=0;while(this.i=Wt.length){return Wn}const en=Wt.charCodeAt(Pt);this.column++;if(en<55296){if(en>=Gl||en===pl){return en}switch(en){case ml:this.line++;this.column=0;this.positionAtNewLine=this.position;return ml;case bl:if(Wt.charCodeAt(Pt+1)===ml){this.i=Pt+2}this.line++;this.column=0;this.positionAtNewLine=this.position;return Nn;default:this.fail("disallowed character.");return en}}if(en>56319){if(!(en>=57344&&en<=65533)){this.fail("disallowed character.")}return en}const tn=65536+(en-55296)*1024+(Wt.charCodeAt(Pt+1)-56320);this.i=Pt+2;if(tn>1114111){this.fail("disallowed character.")}return tn}getCode11(){const{chunk:Wt,i:Pt}=this;this.prevI=Pt;this.i=Pt+1;if(Pt>=Wt.length){return Wn}const en=Wt.charCodeAt(Pt);this.column++;if(en<55296){if(en>31&&en<127||en>159&&en!==Ql||en===pl){return en}switch(en){case ml:this.line++;this.column=0;this.positionAtNewLine=this.position;return ml;case bl:{const en=Wt.charCodeAt(Pt+1);if(en===ml||en===Fl){this.i=Pt+2}}case Fl:case Ql:this.line++;this.column=0;this.positionAtNewLine=this.position;return Nn;default:this.fail("disallowed character.");return en}}if(en>56319){if(!(en>=57344&&en<=65533)){this.fail("disallowed character.")}return en}const tn=65536+(en-55296)*1024+(Wt.charCodeAt(Pt+1)-56320);this.i=Pt+2;if(tn>1114111){this.fail("disallowed character.")}return tn}getCodeNorm(){const Wt=this.getCode();return Wt===Nn?ml:Wt}unget(){this.i=this.prevI;this.column--}captureTo(Wt){let{i:Pt}=this;const{chunk:en}=this;while(true){const tn=this.getCode();const nn=tn===Nn;const an=nn?ml:tn;if(an===Wn||Wt.includes(an)){this.text+=en.slice(Pt,this.prevI);return an}if(nn){this.text+=`${en.slice(Pt,this.prevI)}\n`;Pt=this.i}}}captureToChar(Wt){let{i:Pt}=this;const{chunk:en}=this;while(true){let tn=this.getCode();switch(tn){case Nn:this.text+=`${en.slice(Pt,this.prevI)}\n`;Pt=this.i;tn=ml;break;case Wn:this.text+=en.slice(Pt);return false;default:}if(tn===Wt){this.text+=en.slice(Pt,this.prevI);return true}}}captureNameChars(){const{chunk:Wt,i:Pt}=this;while(true){const en=this.getCode();if(en===Wn){this.name+=Wt.slice(Pt);return Wn}if(!on(en)){this.name+=Wt.slice(Pt,this.prevI);return en===Nn?ml:en}}}skipSpaces(){while(true){const Wt=this.getCodeNorm();if(Wt===Wn||!rn(Wt)){return Wt}}}setXMLVersion(Wt){this.currentXMLVersion=Wt;if(Wt==="1.0"){this.isChar=In;this.getCode=this.getCode10}else{this.isChar=un;this.getCode=this.getCode11}}sBegin(){if(this.chunk.charCodeAt(0)===65279){this.i++;this.column++}this.state=yn}sBeginWhitespace(){const Wt=this.i;const Pt=this.skipSpaces();if(this.prevI!==Wt){this.xmlDeclPossible=false}switch(Pt){case vl:this.state=Jn;if(this.text.length!==0){throw new Error("no-empty text at start")}break;case Wn:break;default:this.unget();this.state=Xn;this.xmlDeclPossible=false}}sDoctype(){var Wt;const Pt=this.captureTo(Hl);switch(Pt){case El:{(Wt=this.doctypeHandler)===null||Wt===void 0?void 0:Wt.call(this,this.text);this.text="";this.state=Xn;this.doctype=true;break}case Wn:break;default:this.text+=String.fromCodePoint(Pt);if(Pt===Rl){this.state=En}else if(isQuote(Pt)){this.state=Yn;this.q=Pt}}}sDoctypeQuote(){const Wt=this.q;if(this.captureToChar(Wt)){this.text+=String.fromCodePoint(Wt);this.q=null;this.state=vn}}sDTD(){const Wt=this.captureTo(Cl);if(Wt===Wn){return}this.text+=String.fromCodePoint(Wt);if(Wt===wl){this.state=vn}else if(Wt===vl){this.state=Rn}else if(isQuote(Wt)){this.state=Vn;this.q=Wt}}sDTDQuoted(){const Wt=this.q;if(this.captureToChar(Wt)){this.text+=String.fromCodePoint(Wt);this.state=En;this.q=null}}sDTDOpenWaka(){const Wt=this.getCodeNorm();this.text+=String.fromCodePoint(Wt);switch(Wt){case hl:this.state=wn;this.openWakaBang="";break;case Vl:this.state=Hn;break;default:this.state=En}}sDTDOpenWakaBang(){const Wt=String.fromCodePoint(this.getCodeNorm());const Pt=this.openWakaBang+=Wt;this.text+=Wt;if(Pt!=="-"){this.state=Pt==="--"?Fn:En;this.openWakaBang=""}}sDTDComment(){if(this.captureToChar(Nl)){this.text+="-";this.state=Qn}}sDTDCommentEnding(){const Wt=this.getCodeNorm();this.text+=String.fromCodePoint(Wt);this.state=Wt===Nl?fn:Fn}sDTDCommentEnded(){const Wt=this.getCodeNorm();this.text+=String.fromCodePoint(Wt);if(Wt===El){this.state=En}else{this.fail("malformed comment.");this.state=Fn}}sDTDPI(){if(this.captureToChar(Vl)){this.text+="?";this.state=Cn}}sDTDPIEnding(){const Wt=this.getCodeNorm();this.text+=String.fromCodePoint(Wt);if(Wt===El){this.state=En}}sText(){if(this.tags.length!==0){this.handleTextInRoot()}else{this.handleTextOutsideRoot()}}sEntity(){let{i:Wt}=this;const{chunk:Pt}=this;e:while(true){switch(this.getCode()){case Nn:this.entity+=`${Pt.slice(Wt,this.prevI)}\n`;Wt=this.i;break;case yl:{const{entityReturnState:en}=this;const tn=this.entity+Pt.slice(Wt,this.prevI);this.state=en;let nn;if(tn===""){this.fail("empty entity name.");nn="&;"}else{nn=this.parseEntity(tn);this.entity=""}if(en!==Xn||this.textHandler!==undefined){this.text+=nn}break e}case Wn:this.entity+=Pt.slice(Wt);break e;default:}}}sOpenWaka(){const Wt=this.getCode();if(sn(Wt)){this.state=nl;this.unget();this.xmlDeclPossible=false}else{switch(Wt){case gl:this.state=dl;this.xmlDeclPossible=false;break;case hl:this.state=Ln;this.openWakaBang="";this.xmlDeclPossible=false;break;case Vl:this.state=zn;break;default:this.fail("disallowed character in tag name");this.state=Xn;this.xmlDeclPossible=false}}}sOpenWakaBang(){this.openWakaBang+=String.fromCodePoint(this.getCodeNorm());switch(this.openWakaBang){case"[CDATA[":if(!this.sawRoot&&!this.reportedTextBeforeRoot){this.fail("text data outside of root node.");this.reportedTextBeforeRoot=true}if(this.closedRoot&&!this.reportedTextAfterRoot){this.fail("text data outside of root node.");this.reportedTextAfterRoot=true}this.state=Tn;this.openWakaBang="";break;case"--":this.state=Bn;this.openWakaBang="";break;case"DOCTYPE":this.state=vn;if(this.doctype||this.sawRoot){this.fail("inappropriately located doctype declaration.")}this.openWakaBang="";break;default:if(this.openWakaBang.length>=7){this.fail("incorrect syntax.")}}}sComment(){if(this.captureToChar(Nl)){this.state=xn}}sCommentEnding(){var Wt;const Pt=this.getCodeNorm();if(Pt===Nl){this.state=On;(Wt=this.commentHandler)===null||Wt===void 0?void 0:Wt.call(this,this.text);this.text=""}else{this.text+=`-${String.fromCodePoint(Pt)}`;this.state=Bn}}sCommentEnded(){const Wt=this.getCodeNorm();if(Wt!==El){this.fail("malformed comment.");this.text+=`--${String.fromCodePoint(Wt)}`;this.state=Bn}else{this.state=Xn}}sCData(){if(this.captureToChar(wl)){this.state=Un}}sCDataEnding(){const Wt=this.getCodeNorm();if(Wt===wl){this.state=Mn}else{this.text+=`]${String.fromCodePoint(Wt)}`;this.state=Tn}}sCDataEnding2(){var Wt;const Pt=this.getCodeNorm();switch(Pt){case El:{(Wt=this.cdataHandler)===null||Wt===void 0?void 0:Wt.call(this,this.text);this.text="";this.state=Xn;break}case wl:this.text+="]";break;default:this.text+=`]]${String.fromCodePoint(Pt)}`;this.state=Tn}}sPIFirstChar(){const Wt=this.getCodeNorm();if(this.nameStartCheck(Wt)){this.piTarget+=String.fromCodePoint(Wt);this.state=Sn}else if(Wt===Vl||rn(Wt)){this.fail("processing instruction without a target.");this.state=Wt===Vl?Dn:jn}else{this.fail("disallowed character in processing instruction name.");this.piTarget+=String.fromCodePoint(Wt);this.state=Sn}}sPIRest(){const{chunk:Wt,i:Pt}=this;while(true){const en=this.getCodeNorm();if(en===Wn){this.piTarget+=Wt.slice(Pt);return}if(!this.nameCheck(en)){this.piTarget+=Wt.slice(Pt,this.prevI);const tn=en===Vl;if(tn||rn(en)){if(this.piTarget==="xml"){if(!this.xmlDeclPossible){this.fail("an XML declaration must be at the start of the document.")}this.state=tn?tl:_n}else{this.state=tn?Dn:jn}}else{this.fail("disallowed character in processing instruction name.");this.piTarget+=String.fromCodePoint(en)}break}}}sPIBody(){if(this.text.length===0){const Wt=this.getCodeNorm();if(Wt===Vl){this.state=Dn}else if(!rn(Wt)){this.text=String.fromCodePoint(Wt)}}else if(this.captureToChar(Vl)){this.state=Dn}}sPIEnding(){var Wt;const Pt=this.getCodeNorm();if(Pt===El){const{piTarget:Pt}=this;if(Pt.toLowerCase()==="xml"){this.fail("the XML declaration must appear at the start of the document.")}(Wt=this.piHandler)===null||Wt===void 0?void 0:Wt.call(this,{target:Pt,body:this.text});this.piTarget=this.text="";this.state=Xn}else if(Pt===Vl){this.text+="?"}else{this.text+=`?${String.fromCodePoint(Pt)}`;this.state=jn}this.xmlDeclPossible=false}sXMLDeclNameStart(){const Wt=this.skipSpaces();if(Wt===Vl){this.state=tl;return}if(Wt!==Wn){this.state=Kn;this.name=String.fromCodePoint(Wt)}}sXMLDeclName(){const Wt=this.captureTo(Xl);if(Wt===Vl){this.state=tl;this.name+=this.text;this.text="";this.fail("XML declaration is incomplete.");return}if(!(rn(Wt)||Wt===Yl)){return}this.name+=this.text;this.text="";if(!this.xmlDeclExpects.includes(this.name)){switch(this.name.length){case 0:this.fail("did not expect any more name/value pairs.");break;case 1:this.fail(`expected the name ${this.xmlDeclExpects[0]}.`);break;default:this.fail(`expected one of ${this.xmlDeclExpects.join(", ")}`)}}this.state=Wt===Yl?qn:Pn}sXMLDeclEq(){const Wt=this.getCodeNorm();if(Wt===Vl){this.state=tl;this.fail("XML declaration is incomplete.");return}if(rn(Wt)){return}if(Wt!==Yl){this.fail("value required.")}this.state=qn}sXMLDeclValueStart(){const Wt=this.getCodeNorm();if(Wt===Vl){this.state=tl;this.fail("XML declaration is incomplete.");return}if(rn(Wt)){return}if(!isQuote(Wt)){this.fail("value must be quoted.");this.q=Gl}else{this.q=Wt}this.state=$n}sXMLDeclValue(){const Wt=this.captureTo([this.q,Vl]);if(Wt===Vl){this.state=tl;this.text="";this.fail("XML declaration is incomplete.");return}if(Wt===Wn){return}const Pt=this.text;this.text="";switch(this.name){case"version":{this.xmlDeclExpects=["encoding","standalone"];const Wt=Pt;this.xmlDecl.version=Wt;if(!/^1\.[0-9]+$/.test(Wt)){this.fail("version number must match /^1\\.[0-9]+$/.")}else if(!this.opt.forceXMLVersion){this.setXMLVersion(Wt)}break}case"encoding":if(!/^[A-Za-z][A-Za-z0-9._-]*$/.test(Pt)){this.fail("encoding value must match /^[A-Za-z0-9][A-Za-z0-9._-]*$/.")}this.xmlDeclExpects=["standalone"];this.xmlDecl.encoding=Pt;break;case"standalone":if(Pt!=="yes"&&Pt!=="no"){this.fail('standalone value must match "yes" or "no".')}this.xmlDeclExpects=[];this.xmlDecl.standalone=Pt;break;default:}this.name="";this.state=el}sXMLDeclSeparator(){const Wt=this.getCodeNorm();if(Wt===Vl){this.state=tl;return}if(!rn(Wt)){this.fail("whitespace required.");this.unget()}this.state=_n}sXMLDeclEnding(){var Wt;const Pt=this.getCodeNorm();if(Pt===El){if(this.piTarget!=="xml"){this.fail("processing instructions are not allowed before root.")}else if(this.name!=="version"&&this.xmlDeclExpects.includes("version")){this.fail("XML declaration must contain a version.")}(Wt=this.xmldeclHandler)===null||Wt===void 0?void 0:Wt.call(this,this.xmlDecl);this.name="";this.piTarget=this.text="";this.state=Xn}else{this.fail("The character ? is disallowed anywhere in XML declarations.")}this.xmlDeclPossible=false}sOpenTag(){var Wt;const Pt=this.captureNameChars();if(Pt===Wn){return}const en=this.tag={name:this.name,attributes:Object.create(null)};this.name="";if(this.xmlnsOpt){this.topNS=en.ns=Object.create(null)}(Wt=this.openTagStartHandler)===null||Wt===void 0?void 0:Wt.call(this,en);this.sawRoot=true;if(!this.fragmentOpt&&this.closedRoot){this.fail("documents may contain only one root.")}switch(Pt){case El:this.openTag();break;case gl:this.state=ll;break;default:if(!rn(Pt)){this.fail("disallowed character in tag name.")}this.state=al}}sOpenTagSlash(){if(this.getCode()===El){this.openSelfClosingTag()}else{this.fail("forward-slash in opening tag not followed by >.");this.state=al}}sAttrib(){const Wt=this.skipSpaces();if(Wt===Wn){return}if(sn(Wt)){this.unget();this.state=rl}else if(Wt===El){this.openTag()}else if(Wt===gl){this.state=ll}else{this.fail("disallowed character in attribute name.")}}sAttribName(){const Wt=this.captureNameChars();if(Wt===Yl){this.state=sl}else if(rn(Wt)){this.state=Il}else if(Wt===El){this.fail("attribute without value.");this.pushAttrib(this.name,this.name);this.name=this.text="";this.openTag()}else if(Wt!==Wn){this.fail("disallowed character in attribute name.")}}sAttribNameSawWhite(){const Wt=this.skipSpaces();switch(Wt){case Wn:return;case Yl:this.state=sl;break;default:this.fail("attribute without value.");this.text="";this.name="";if(Wt===El){this.openTag()}else if(sn(Wt)){this.unget();this.state=rl}else{this.fail("disallowed character in attribute name.");this.state=al}}}sAttribValue(){const Wt=this.getCodeNorm();if(isQuote(Wt)){this.q=Wt;this.state=ol}else if(!rn(Wt)){this.fail("unquoted attribute value.");this.state=il;this.unget()}}sAttribValueQuoted(){const{q:Wt,chunk:Pt}=this;let{i:en}=this;while(true){switch(this.getCode()){case Wt:this.pushAttrib(this.name,this.text+Pt.slice(en,this.prevI));this.name=this.text="";this.q=null;this.state=cl;return;case Al:this.text+=Pt.slice(en,this.prevI);this.state=kn;this.entityReturnState=ol;return;case ml:case Nn:case pl:this.text+=`${Pt.slice(en,this.prevI)} `;en=this.i;break;case vl:this.text+=Pt.slice(en,this.prevI);this.fail("disallowed character.");return;case Wn:this.text+=Pt.slice(en);return;default:}}}sAttribValueClosed(){const Wt=this.getCodeNorm();if(rn(Wt)){this.state=al}else if(Wt===El){this.openTag()}else if(Wt===gl){this.state=ll}else if(sn(Wt)){this.fail("no whitespace between attributes.");this.unget();this.state=rl}else{this.fail("disallowed character in attribute name.")}}sAttribValueUnquoted(){const Wt=this.captureTo(kl);switch(Wt){case Al:this.state=kn;this.entityReturnState=il;break;case vl:this.fail("disallowed character.");break;case Wn:break;default:if(this.text.includes("]]>")){this.fail('the string "]]>" is disallowed in char data.')}this.pushAttrib(this.name,this.text);this.name=this.text="";if(Wt===El){this.openTag()}else{this.state=al}}}sCloseTag(){const Wt=this.captureNameChars();if(Wt===El){this.closeTag()}else if(rn(Wt)){this.state=ul}else if(Wt!==Wn){this.fail("disallowed character in closing tag.")}}sCloseTagSawWhite(){switch(this.skipSpaces()){case El:this.closeTag();break;case Wn:break;default:this.fail("disallowed character in closing tag.")}}handleTextInRoot(){let{i:Wt,forbiddenState:Pt}=this;const{chunk:en,textHandler:tn}=this;e:while(true){switch(this.getCode()){case vl:{this.state=Jn;if(tn!==undefined){const{text:Pt}=this;const nn=en.slice(Wt,this.prevI);if(Pt.length!==0){tn(Pt+nn);this.text=""}else if(nn.length!==0){tn(nn)}}Pt=Jl;break e}case Al:this.state=kn;this.entityReturnState=Xn;if(tn!==undefined){this.text+=en.slice(Wt,this.prevI)}Pt=Jl;break e;case wl:switch(Pt){case Jl:Pt=Ll;break;case Ll:Pt=Bl;break;case Bl:break;default:throw new Error("impossible state")}break;case El:if(Pt===Bl){this.fail('the string "]]>" is disallowed in char data.')}Pt=Jl;break;case Nn:if(tn!==undefined){this.text+=`${en.slice(Wt,this.prevI)}\n`}Wt=this.i;Pt=Jl;break;case Wn:if(tn!==undefined){this.text+=en.slice(Wt)}break e;default:Pt=Jl}}this.forbiddenState=Pt}handleTextOutsideRoot(){let{i:Wt}=this;const{chunk:Pt,textHandler:en}=this;let tn=false;e:while(true){const nn=this.getCode();switch(nn){case vl:{this.state=Jn;if(en!==undefined){const{text:tn}=this;const nn=Pt.slice(Wt,this.prevI);if(tn.length!==0){en(tn+nn);this.text=""}else if(nn.length!==0){en(nn)}}break e}case Al:this.state=kn;this.entityReturnState=Xn;if(en!==undefined){this.text+=Pt.slice(Wt,this.prevI)}tn=true;break e;case Nn:if(en!==undefined){this.text+=`${Pt.slice(Wt,this.prevI)}\n`}Wt=this.i;break;case Wn:if(en!==undefined){this.text+=Pt.slice(Wt)}break e;default:if(!rn(nn)){tn=true}}}if(!tn){return}if(!this.sawRoot&&!this.reportedTextBeforeRoot){this.fail("text data outside of root node.");this.reportedTextBeforeRoot=true}if(this.closedRoot&&!this.reportedTextAfterRoot){this.fail("text data outside of root node.");this.reportedTextAfterRoot=true}}pushAttribNS(Wt,Pt){var en;const{prefix:tn,local:nn}=this.qname(Wt);const an={name:Wt,prefix:tn,local:nn,value:Pt};this.attribList.push(an);(en=this.attributeHandler)===null||en===void 0?void 0:en.call(this,an);if(tn==="xmlns"){const Wt=Pt.trim();if(this.currentXMLVersion==="1.0"&&Wt===""){this.fail("invalid attempt to undefine prefix in XML 1.0")}this.topNS[nn]=Wt;nsPairCheck(this,nn,Wt)}else if(Wt==="xmlns"){const Wt=Pt.trim();this.topNS[""]=Wt;nsPairCheck(this,"",Wt)}}pushAttribPlain(Wt,Pt){var en;const tn={name:Wt,value:Pt};this.attribList.push(tn);(en=this.attributeHandler)===null||en===void 0?void 0:en.call(this,tn)}end(){var Wt,Pt;if(!this.sawRoot){this.fail("document must contain a root element.")}const{tags:en}=this;while(en.length>0){const Wt=en.pop();this.fail(`unclosed tag: ${Wt.name}`)}if(this.state!==gn&&this.state!==Xn){this.fail("unexpected end.")}const{text:tn}=this;if(tn.length!==0){(Wt=this.textHandler)===null||Wt===void 0?void 0:Wt.call(this,tn);this.text=""}this._closed=true;(Pt=this.endHandler)===null||Pt===void 0?void 0:Pt.call(this);this._init();return this}resolve(Wt){var Pt,en;let tn=this.topNS[Wt];if(tn!==undefined){return tn}const{tags:nn}=this;for(let Pt=nn.length-1;Pt>=0;Pt--){tn=nn[Pt].ns[Wt];if(tn!==undefined){return tn}}tn=this.ns[Wt];if(tn!==undefined){return tn}return(en=(Pt=this.opt).resolvePrefix)===null||en===void 0?void 0:en.call(Pt,Wt)}qname(Wt){const Pt=Wt.indexOf(":");if(Pt===-1){return{prefix:"",local:Wt}}const en=Wt.slice(Pt+1);const tn=Wt.slice(0,Pt);if(tn===""||en===""||en.includes(":")){this.fail(`malformed name: ${Wt}.`)}return{prefix:tn,local:en}}processAttribsNS(){var Wt;const{attribList:Pt}=this;const en=this.tag;{const{prefix:Pt,local:tn}=this.qname(en.name);en.prefix=Pt;en.local=tn;const nn=en.uri=(Wt=this.resolve(Pt))!==null&&Wt!==void 0?Wt:"";if(Pt!==""){if(Pt==="xmlns"){this.fail('tags may not have "xmlns" as prefix.')}if(nn===""){this.fail(`unbound namespace prefix: ${JSON.stringify(Pt)}.`);en.uri=Pt}}}if(Pt.length===0){return}const{attributes:tn}=en;const nn=new Set;for(const Wt of Pt){const{name:Pt,prefix:en,local:an}=Wt;let rn;let In;if(en===""){rn=Pt==="xmlns"?hn:"";In=Pt}else{rn=this.resolve(en);if(rn===undefined){this.fail(`unbound namespace prefix: ${JSON.stringify(en)}.`);rn=en}In=`{${rn}}${an}`}if(nn.has(In)){this.fail(`duplicate attribute: ${In}.`)}nn.add(In);Wt.uri=rn;tn[Pt]=Wt}this.attribList=[]}processAttribsPlain(){const{attribList:Wt}=this;const Pt=this.tag.attributes;for(const{name:en,value:tn}of Wt){if(Pt[en]!==undefined){this.fail(`duplicate attribute: ${en}.`)}Pt[en]=tn}this.attribList=[]}openTag(){var Wt;this.processAttribs();const{tags:Pt}=this;const en=this.tag;en.isSelfClosing=false;(Wt=this.openTagHandler)===null||Wt===void 0?void 0:Wt.call(this,en);Pt.push(en);this.state=Xn;this.name=""}openSelfClosingTag(){var Wt,Pt,en;this.processAttribs();const{tags:tn}=this;const nn=this.tag;nn.isSelfClosing=true;(Wt=this.openTagHandler)===null||Wt===void 0?void 0:Wt.call(this,nn);(Pt=this.closeTagHandler)===null||Pt===void 0?void 0:Pt.call(this,nn);const an=this.tag=(en=tn[tn.length-1])!==null&&en!==void 0?en:null;if(an===null){this.closedRoot=true}this.state=Xn;this.name=""}closeTag(){const{tags:Wt,name:Pt}=this;this.state=Xn;this.name="";if(Pt===""){this.fail("weird empty close tag.");this.text+="";return}const en=this.closeTagHandler;let tn=Wt.length;while(tn-- >0){const tn=this.tag=Wt.pop();this.topNS=tn.ns;en===null||en===void 0?void 0:en(tn);if(tn.name===Pt){break}this.fail("unexpected close tag.")}if(tn===0){this.closedRoot=true}else if(tn<0){this.fail(`unmatched closing tag: ${Pt}.`);this.text+=``}}parseEntity(Wt){if(Wt[0]!=="#"){const Pt=this.ENTITIES[Wt];if(Pt!==undefined){return Pt}this.fail(this.isName(Wt)?"undefined entity.":"disallowed character in entity name.");return`&${Wt};`}let Pt=NaN;if(Wt[1]==="x"&&/^#x[0-9a-f]+$/i.test(Wt)){Pt=parseInt(Wt.slice(2),16)}else if(/^#[0-9]+$/.test(Wt)){Pt=parseInt(Wt.slice(1),10)}if(!this.isChar(Pt)){this.fail("malformed character entity.");return`&${Wt};`}return String.fromCodePoint(Pt)}}Pt.SaxesParser=SaxesParser},56606:function(Wt){"use strict";(function(Pt){const en=2147483647;function SHA256(Wt){const Pt=new Uint32Array([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]);let en=1779033703,tn=3144134277,nn=1013904242,an=2773480762;let rn=1359893119,In=2600822924,sn=528734635,on=1541459225;const cn=new Uint32Array(64);function blocks(Wt){let dn=0,un=Wt.length;while(un>=64){let pn=en,mn=tn,bn=nn,Gn=an,hn=rn,Zn=In,An=sn,Wn=on,Nn,gn,yn,vn,Yn;for(gn=0;gn<16;gn++){yn=dn+gn*4;cn[gn]=(Wt[yn]&255)<<24|(Wt[yn+1]&255)<<16|(Wt[yn+2]&255)<<8|Wt[yn+3]&255}for(gn=16;gn<64;gn++){Nn=cn[gn-2];vn=(Nn>>>17|Nn<<32-17)^(Nn>>>19|Nn<<32-19)^Nn>>>10;Nn=cn[gn-15];Yn=(Nn>>>7|Nn<<32-7)^(Nn>>>18|Nn<<32-18)^Nn>>>3;cn[gn]=(vn+cn[gn-7]|0)+(Yn+cn[gn-16]|0)|0}for(gn=0;gn<64;gn++){vn=(((hn>>>6|hn<<32-6)^(hn>>>11|hn<<32-11)^(hn>>>25|hn<<32-25))+(hn&Zn^~hn&An)|0)+(Wn+(Pt[gn]+cn[gn]|0)|0)|0;Yn=((pn>>>2|pn<<32-2)^(pn>>>13|pn<<32-13)^(pn>>>22|pn<<32-22))+(pn&mn^pn&bn^mn&bn)|0;Wn=An;An=Zn;Zn=hn;hn=Gn+vn|0;Gn=bn;bn=mn;mn=pn;pn=vn+Yn|0}en=en+pn|0;tn=tn+mn|0;nn=nn+bn|0;an=an+Gn|0;rn=rn+hn|0;In=In+Zn|0;sn=sn+An|0;on=on+Wn|0;dn+=64;un-=64}}blocks(Wt);let dn,un=Wt.length%64,pn=Wt.length/536870912|0,mn=Wt.length<<3,bn=un<56?56:120,Gn=Wt.slice(Wt.length-un,Wt.length);Gn.push(128);for(dn=un+1;dn>>24&255);Gn.push(pn>>>16&255);Gn.push(pn>>>8&255);Gn.push(pn>>>0&255);Gn.push(mn>>>24&255);Gn.push(mn>>>16&255);Gn.push(mn>>>8&255);Gn.push(mn>>>0&255);blocks(Gn);return[en>>>24&255,en>>>16&255,en>>>8&255,en>>>0&255,tn>>>24&255,tn>>>16&255,tn>>>8&255,tn>>>0&255,nn>>>24&255,nn>>>16&255,nn>>>8&255,nn>>>0&255,an>>>24&255,an>>>16&255,an>>>8&255,an>>>0&255,rn>>>24&255,rn>>>16&255,rn>>>8&255,rn>>>0&255,In>>>24&255,In>>>16&255,In>>>8&255,In>>>0&255,sn>>>24&255,sn>>>16&255,sn>>>8&255,sn>>>0&255,on>>>24&255,on>>>16&255,on>>>8&255,on>>>0&255]}function PBKDF2_HMAC_SHA256_OneIter(Wt,Pt,en){Wt=Wt.length<=64?Wt:SHA256(Wt);const tn=64+Pt.length+4;const nn=new Array(tn);const an=new Array(64);let rn;let In=[];for(rn=0;rn<64;rn++){nn[rn]=54}for(rn=0;rn=tn-4;Wt--){nn[Wt]++;if(nn[Wt]<=255)return;nn[Wt]=0}}while(en>=32){incrementCounter();In=In.concat(SHA256(an.concat(SHA256(nn))));en-=32}if(en>0){incrementCounter();In=In.concat(SHA256(an.concat(SHA256(nn))).slice(0,en))}return In}function blockmix_salsa8(Wt,Pt,en,tn,nn){let an;arraycopy(Wt,(2*en-1)*16,nn,0,16);for(an=0;an<2*en;an++){blockxor(Wt,an*16,nn,16);salsa20_8(nn,tn);arraycopy(nn,0,Wt,Pt+an*16,16)}for(an=0;an>>32-Pt}function salsa20_8(Wt,Pt){arraycopy(Wt,0,Pt,0,16);for(let Wt=8;Wt>0;Wt-=2){Pt[4]^=R(Pt[0]+Pt[12],7);Pt[8]^=R(Pt[4]+Pt[0],9);Pt[12]^=R(Pt[8]+Pt[4],13);Pt[0]^=R(Pt[12]+Pt[8],18);Pt[9]^=R(Pt[5]+Pt[1],7);Pt[13]^=R(Pt[9]+Pt[5],9);Pt[1]^=R(Pt[13]+Pt[9],13);Pt[5]^=R(Pt[1]+Pt[13],18);Pt[14]^=R(Pt[10]+Pt[6],7);Pt[2]^=R(Pt[14]+Pt[10],9);Pt[6]^=R(Pt[2]+Pt[14],13);Pt[10]^=R(Pt[6]+Pt[2],18);Pt[3]^=R(Pt[15]+Pt[11],7);Pt[7]^=R(Pt[3]+Pt[15],9);Pt[11]^=R(Pt[7]+Pt[3],13);Pt[15]^=R(Pt[11]+Pt[7],18);Pt[1]^=R(Pt[0]+Pt[3],7);Pt[2]^=R(Pt[1]+Pt[0],9);Pt[3]^=R(Pt[2]+Pt[1],13);Pt[0]^=R(Pt[3]+Pt[2],18);Pt[6]^=R(Pt[5]+Pt[4],7);Pt[7]^=R(Pt[6]+Pt[5],9);Pt[4]^=R(Pt[7]+Pt[6],13);Pt[5]^=R(Pt[4]+Pt[7],18);Pt[11]^=R(Pt[10]+Pt[9],7);Pt[8]^=R(Pt[11]+Pt[10],9);Pt[9]^=R(Pt[8]+Pt[11],13);Pt[10]^=R(Pt[9]+Pt[8],18);Pt[12]^=R(Pt[15]+Pt[14],7);Pt[13]^=R(Pt[12]+Pt[15],9);Pt[14]^=R(Pt[13]+Pt[12],13);Pt[15]^=R(Pt[14]+Pt[13],18)}for(let en=0;en<16;++en){Wt[en]+=Pt[en]}}function blockxor(Wt,Pt,en,tn){for(let nn=0;nn=256){return false}}return true}function ensureInteger(Wt,Pt){if(typeof Wt!=="number"||Wt%1){throw new Error("invalid "+Pt)}return Wt}function _scrypt(Wt,Pt,tn,nn,an,rn,In){tn=ensureInteger(tn,"N");nn=ensureInteger(nn,"r");an=ensureInteger(an,"p");rn=ensureInteger(rn,"dkLen");if(tn===0||(tn&tn-1)!==0){throw new Error("N must be power of 2")}if(tn>en/128/nn){throw new Error("N too large")}if(nn>en/128/an){throw new Error("r too large")}if(!checkBufferish(Wt)){throw new Error("password must be an array or buffer")}Wt=Array.prototype.slice.call(Wt);if(!checkBufferish(Pt)){throw new Error("salt must be an array or buffer")}Pt=Array.prototype.slice.call(Pt);let sn=PBKDF2_HMAC_SHA256_OneIter(Wt,Pt,an*128*nn);const on=new Uint32Array(an*32*nn);for(let Wt=0;Wtyn){Pt=yn}for(let Wt=0;Wtyn){Pt=yn}for(let Wt=0;Wt>0&255);sn.push(on[Wt]>>8&255);sn.push(on[Wt]>>16&255);sn.push(on[Wt]>>24&255)}const en=PBKDF2_HMAC_SHA256_OneIter(Wt,sn,rn);if(In){In(null,1,en)}return en}if(In){vn(incrementalSMix)}};if(!In){while(true){const Wt=incrementalSMix();if(Wt!=undefined){return Wt}}}incrementalSMix()}const tn={scrypt:function(Wt,Pt,en,tn,nn,an,rn){return new Promise((function(In,sn){let on=0;if(rn){rn(0)}_scrypt(Wt,Pt,en,tn,nn,an,(function(Wt,Pt,en){if(Wt){sn(Wt)}else if(en){if(rn&&on!==1){rn(1)}In(new Uint8Array(en))}else if(rn&&Pt!==on){on=Pt;return rn(Pt)}}))}))},syncScrypt:function(Wt,Pt,en,tn,nn,an){return new Uint8Array(_scrypt(Wt,Pt,en,tn,nn,an))}};if(true){Wt.exports=tn}else{}})(this)},21450:(Wt,Pt,en)=>{"use strict";const tn=en(70857);const nn=en(52018);const an=en(83813);const{env:rn}=process;let In;if(an("no-color")||an("no-colors")||an("color=false")||an("color=never")){In=0}else if(an("color")||an("colors")||an("color=true")||an("color=always")){In=1}if("FORCE_COLOR"in rn){if(rn.FORCE_COLOR==="true"){In=1}else if(rn.FORCE_COLOR==="false"){In=0}else{In=rn.FORCE_COLOR.length===0?1:Math.min(parseInt(rn.FORCE_COLOR,10),3)}}function translateLevel(Wt){if(Wt===0){return false}return{level:Wt,hasBasic:true,has256:Wt>=2,has16m:Wt>=3}}function supportsColor(Wt,Pt){if(In===0){return 0}if(an("color=16m")||an("color=full")||an("color=truecolor")){return 3}if(an("color=256")){return 2}if(Wt&&!Pt&&In===undefined){return 0}const en=In||0;if(rn.TERM==="dumb"){return en}if(process.platform==="win32"){const Wt=tn.release().split(".");if(Number(Wt[0])>=10&&Number(Wt[2])>=10586){return Number(Wt[2])>=14931?3:2}return 1}if("CI"in rn){if(["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some((Wt=>Wt in rn))||rn.CI_NAME==="codeship"){return 1}return en}if("TEAMCITY_VERSION"in rn){return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(rn.TEAMCITY_VERSION)?1:0}if(rn.COLORTERM==="truecolor"){return 3}if("TERM_PROGRAM"in rn){const Wt=parseInt((rn.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(rn.TERM_PROGRAM){case"iTerm.app":return Wt>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(rn.TERM)){return 2}if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(rn.TERM)){return 1}if("COLORTERM"in rn){return 1}return en}function getSupportLevel(Wt){const Pt=supportsColor(Wt,Wt&&Wt.isTTY);return translateLevel(Pt)}Wt.exports={supportsColor:getSupportLevel,stdout:translateLevel(supportsColor(true,nn.isatty(1))),stderr:translateLevel(supportsColor(true,nn.isatty(2)))}},86415:(Wt,Pt,en)=>{"use strict";const tn=en(6771);const nn=en(23204);const an=en(71993);function returnTrue(){return true}function reverseArrayIndex(Wt,Pt){return Wt[Wt.length-1-Pt]}class SymbolTree{constructor(Wt){this.symbol=Symbol(Wt||"SymbolTree data")}initialize(Wt){this._node(Wt);return Wt}_node(Wt){if(!Wt){return null}const Pt=Wt[this.symbol];if(Pt){return Pt}return Wt[this.symbol]=new tn}hasChildren(Wt){return this._node(Wt).hasChildren}firstChild(Wt){return this._node(Wt).firstChild}lastChild(Wt){return this._node(Wt).lastChild}previousSibling(Wt){return this._node(Wt).previousSibling}nextSibling(Wt){return this._node(Wt).nextSibling}parent(Wt){return this._node(Wt).parent}lastInclusiveDescendant(Wt){let Pt;let en=Wt;while(Pt=this._node(en).lastChild){en=Pt}return en}preceding(Wt,Pt){const en=Pt&&Pt.root;if(Wt===en){return null}const tn=this._node(Wt).previousSibling;if(tn){return this.lastInclusiveDescendant(tn)}return this._node(Wt).parent}following(Wt,Pt){const en=Pt&&Pt.root;const tn=Pt&&Pt.skipChildren;const nn=!tn&&this._node(Wt).firstChild;if(nn){return nn}let an=Wt;do{if(an===en){return null}const Wt=this._node(an).nextSibling;if(Wt){return Wt}an=this._node(an).parent}while(an);return null}childrenToArray(Wt,Pt){const en=Pt&&Pt.array||[];const tn=Pt&&Pt.filter||returnTrue;const nn=Pt&&Pt.thisArg||undefined;const an=this._node(Wt);let rn=an.firstChild;let In=0;while(rn){const Wt=this._node(rn);Wt.setCachedIndex(an,In);if(tn.call(nn,rn)){en.push(rn)}rn=Wt.nextSibling;++In}return en}ancestorsToArray(Wt,Pt){const en=Pt&&Pt.array||[];const tn=Pt&&Pt.filter||returnTrue;const nn=Pt&&Pt.thisArg||undefined;let an=Wt;while(an){if(tn.call(nn,an)){en.push(an)}an=this._node(an).parent}return en}treeToArray(Wt,Pt){const en=Pt&&Pt.array||[];const tn=Pt&&Pt.filter||returnTrue;const nn=Pt&&Pt.thisArg||undefined;let an=Wt;while(an){if(tn.call(nn,an)){en.push(an)}an=this.following(an,{root:Wt})}return en}childrenIterator(Wt,Pt){const en=Pt&&Pt.reverse;const tn=this._node(Wt);return new an(this,Wt,en?tn.lastChild:tn.firstChild,en?an.PREV:an.NEXT)}previousSiblingsIterator(Wt){return new an(this,Wt,this._node(Wt).previousSibling,an.PREV)}nextSiblingsIterator(Wt){return new an(this,Wt,this._node(Wt).nextSibling,an.NEXT)}ancestorsIterator(Wt){return new an(this,Wt,Wt,an.PARENT)}treeIterator(Wt,Pt){const en=Pt&&Pt.reverse;return new an(this,Wt,en?this.lastInclusiveDescendant(Wt):Wt,en?an.PRECEDING:an.FOLLOWING)}index(Wt){const Pt=this._node(Wt);const en=this._node(Pt.parent);if(!en){return-1}let tn=Pt.getCachedIndex(en);if(tn>=0){return tn}tn=0;let nn=en.firstChild;if(en.childIndexCachedUpTo){const Wt=this._node(en.childIndexCachedUpTo);nn=Wt.nextSibling;tn=Wt.getCachedIndex(en)+1}while(nn){const Pt=this._node(nn);Pt.setCachedIndex(en,tn);if(nn===Wt){break}++tn;nn=Pt.nextSibling}en.childIndexCachedUpTo=Wt;return tn}childrenCount(Wt){const Pt=this._node(Wt);if(!Pt.lastChild){return 0}return this.index(Pt.lastChild)+1}compareTreePosition(Wt,Pt){if(Wt===Pt){return 0}const en=[];{let tn=Wt;while(tn){if(tn===Pt){return nn.CONTAINS|nn.PRECEDING}en.push(tn);tn=this.parent(tn)}}const tn=[];{let en=Pt;while(en){if(en===Wt){return nn.CONTAINED_BY|nn.FOLLOWING}tn.push(en);en=this.parent(en)}}const an=reverseArrayIndex(en,0);if(!an||an!==reverseArrayIndex(tn,0)){return nn.DISCONNECTED}let rn=0;const In=Math.min(en.length,tn.length);for(let Wt=0;Wt{"use strict";Wt.exports=class SymbolTreeNode{constructor(){this.parent=null;this.previousSibling=null;this.nextSibling=null;this.firstChild=null;this.lastChild=null;this.childrenVersion=0;this.childIndexCachedUpTo=null;this.cachedIndex=-1;this.cachedIndexVersion=NaN}get isAttached(){return Boolean(this.parent||this.previousSibling||this.nextSibling)}get hasChildren(){return Boolean(this.firstChild)}childrenChanged(){this.childrenVersion=this.childrenVersion+1&4294967295;this.childIndexCachedUpTo=null}getCachedIndex(Wt){if(this.cachedIndexVersion!==Wt.childrenVersion){this.cachedIndexVersion=NaN;return-1}return this.cachedIndex}setCachedIndex(Wt,Pt){this.cachedIndexVersion=Wt.childrenVersion;this.cachedIndex=Pt}}},71993:Wt=>{"use strict";const Pt=Symbol();const en=Symbol();const tn=Symbol();const nn=Symbol();class TreeIterator{constructor(Wt,an,rn,In){this[Pt]=Wt;this[en]=an;this[tn]=rn;this[nn]=In}next(){const Wt=this[Pt];const an=this[nn];const rn=this[en];if(!this[tn]){return{done:true,value:rn}}const In=this[tn];if(an===1){this[tn]=Wt._node(In).previousSibling}else if(an===2){this[tn]=Wt._node(In).nextSibling}else if(an===3){this[tn]=Wt._node(In).parent}else if(an===4){this[tn]=Wt.preceding(In,{root:rn})}else{this[tn]=Wt.following(In,{root:rn})}return{done:false,value:In}}}Object.defineProperty(TreeIterator.prototype,Symbol.iterator,{value:function(){return this},writable:false});TreeIterator.PREV=1;TreeIterator.NEXT=2;TreeIterator.PARENT=3;TreeIterator.PRECEDING=4;TreeIterator.FOLLOWING=5;Object.freeze(TreeIterator);Object.freeze(TreeIterator.prototype);Wt.exports=TreeIterator},23204:Wt=>{"use strict";Wt.exports=Object.freeze({DISCONNECTED:1,PRECEDING:2,FOLLOWING:4,CONTAINS:8,CONTAINED_BY:16})},9889:Wt=>{"use strict";var Pt=process.env.NODE_ENV==="production";var en="Invariant failed";function invariant(Wt,tn){if(Wt){return}if(Pt){throw new Error(en)}var nn=typeof tn==="function"?tn():tn;var an=nn?"".concat(en,": ").concat(nn):en;throw new Error(an)}Wt.exports=invariant},96684:(Wt,Pt,en)=>{"use strict"; +/*! + * Copyright (c) 2015-2020, Salesforce.com, Inc. + * All rights reserved. * - * @param name name of the input to get - * @param options optional. See InputOptions. - * @returns string - */ -function getInput(name, options) { - const val = process.env[`INPUT_${name.replace(/ /g, '_').toUpperCase()}`] || ''; - if (options && options.required && !val) { - throw new Error(`Input required and not supplied: ${name}`); - } - if (options && options.trimWhitespace === false) { - return val; - } - return val.trim(); -} -exports.getInput = getInput; -/** - * Gets the values of an multiline input. Each value is also trimmed. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: * - * @param name name of the input to get - * @param options optional. See InputOptions. - * @returns string[] + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. * - */ -function getMultilineInput(name, options) { - const inputs = getInput(name, options) - .split('\n') - .filter(x => x !== ''); - if (options && options.trimWhitespace === false) { - return inputs; - } - return inputs.map(input => input.trim()); -} -exports.getMultilineInput = getMultilineInput; -/** - * Gets the input value of the boolean type in the YAML 1.2 "core schema" specification. - * Support boolean input list: `true | True | TRUE | false | False | FALSE` . - * The return value is also in boolean type. - * ref: https://yaml.org/spec/1.2/spec.html#id2804923 + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. * - * @param name name of the input to get - * @param options optional. See InputOptions. - * @returns boolean - */ -function getBooleanInput(name, options) { - const trueValue = ['true', 'True', 'TRUE']; - const falseValue = ['false', 'False', 'FALSE']; - const val = getInput(name, options); - if (trueValue.includes(val)) - return true; - if (falseValue.includes(val)) - return false; - throw new TypeError(`Input does not meet YAML 1.2 "Core Schema" specification: ${name}\n` + - `Support boolean input list: \`true | True | TRUE | false | False | FALSE\``); -} -exports.getBooleanInput = getBooleanInput; -/** - * Sets the value of an output. + * 3. Neither the name of Salesforce.com nor the names of its contributors may + * be used to endorse or promote products derived from this software without + * specific prior written permission. * - * @param name name of the output to set - * @param value value to store. Non-string values will be converted to a string via JSON.stringify - */ -// eslint-disable-next-line @typescript-eslint/no-explicit-any -function setOutput(name, value) { - const filePath = process.env['GITHUB_OUTPUT'] || ''; - if (filePath) { - return (0, file_command_1.issueFileCommand)('OUTPUT', (0, file_command_1.prepareKeyValueMessage)(name, value)); - } - process.stdout.write(os.EOL); - (0, command_1.issueCommand)('set-output', { name }, (0, utils_1.toCommandValue)(value)); -} -exports.setOutput = setOutput; -/** - * Enables or disables the echoing of commands into stdout for the rest of the step. - * Echoing is disabled by default if ACTIONS_STEP_DEBUG is not set. + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */const tn=en(98328);const nn=en(97291);const an=en(26628);const rn=en(66849).i;const In=en(95620).n;const sn=en(38436).z;const on=en(28977);const cn=en(91492);const{fromCallback:dn}=en(13841);const{getCustomInspectSymbol:un}=en(73930);const pn=/^[\x21\x23-\x2B\x2D-\x3A\x3C-\x5B\x5D-\x7E]+$/;const mn=/[\x00-\x1F]/;const bn=["\n","\r","\0"];const Gn=/[\x20-\x3A\x3C-\x7E]+/;const hn=/[\x09\x20-\x2F\x3B-\x40\x5B-\x60\x7B-\x7E]/;const Zn={jan:0,feb:1,mar:2,apr:3,may:4,jun:5,jul:6,aug:7,sep:8,oct:9,nov:10,dec:11};const An=2147483647e3;const Wn=0;const Nn='Invalid sameSiteContext option for getCookies(); expected one of "strict", "lax", or "none"';function checkSameSiteContext(Wt){on.validate(on.isNonEmptyString(Wt),Wt);const Pt=String(Wt).toLowerCase();if(Pt==="none"||Pt==="lax"||Pt==="strict"){return Pt}else{return null}}const gn=Object.freeze({SILENT:"silent",STRICT:"strict",DISABLED:"unsafe-disabled"});const yn=/(?:^(?: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}$)|(?:^(?:(?:[a-f\d]{1,4}:){7}(?:[a-f\d]{1,4}|:)|(?:[a-f\d]{1,4}:){6}(?:(?: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}|:[a-f\d]{1,4}|:)|(?:[a-f\d]{1,4}:){5}(?::(?: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}|(?::[a-f\d]{1,4}){1,2}|:)|(?:[a-f\d]{1,4}:){4}(?:(?::[a-f\d]{1,4}){0,1}:(?: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}|(?::[a-f\d]{1,4}){1,3}|:)|(?:[a-f\d]{1,4}:){3}(?:(?::[a-f\d]{1,4}){0,2}:(?: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}|(?::[a-f\d]{1,4}){1,4}|:)|(?:[a-f\d]{1,4}:){2}(?:(?::[a-f\d]{1,4}){0,3}:(?: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}|(?::[a-f\d]{1,4}){1,5}|:)|(?:[a-f\d]{1,4}:){1}(?:(?::[a-f\d]{1,4}){0,4}:(?: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}|(?::[a-f\d]{1,4}){1,6}|:)|(?::(?:(?::[a-f\d]{1,4}){0,5}:(?: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}|(?::[a-f\d]{1,4}){1,7}|:)))$)/;const vn=`\n\\[?(?:\n(?:[a-fA-F\\d]{1,4}:){7}(?:[a-fA-F\\d]{1,4}|:)|\n(?:[a-fA-F\\d]{1,4}:){6}(?:(?: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}|:[a-fA-F\\d]{1,4}|:)|\n(?:[a-fA-F\\d]{1,4}:){5}(?::(?: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}|(?::[a-fA-F\\d]{1,4}){1,2}|:)|\n(?:[a-fA-F\\d]{1,4}:){4}(?:(?::[a-fA-F\\d]{1,4}){0,1}:(?: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}|(?::[a-fA-F\\d]{1,4}){1,3}|:)|\n(?:[a-fA-F\\d]{1,4}:){3}(?:(?::[a-fA-F\\d]{1,4}){0,2}:(?: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}|(?::[a-fA-F\\d]{1,4}){1,4}|:)|\n(?:[a-fA-F\\d]{1,4}:){2}(?:(?::[a-fA-F\\d]{1,4}){0,3}:(?: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}|(?::[a-fA-F\\d]{1,4}){1,5}|:)|\n(?:[a-fA-F\\d]{1,4}:){1}(?:(?::[a-fA-F\\d]{1,4}){0,4}:(?: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}|(?::[a-fA-F\\d]{1,4}){1,6}|:)|\n(?::(?:(?::[a-fA-F\\d]{1,4}){0,5}:(?: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}|(?::[a-fA-F\\d]{1,4}){1,7}|:))\n)(?:%[0-9a-zA-Z]{1,})?\\]?\n`.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim();const Yn=new RegExp(`^${vn}$`);function parseDigits(Wt,Pt,en,tn){let nn=0;while(nn=58){break}nn++}if(nnen){return null}if(!tn&&nn!=Wt.length){return null}return parseInt(Wt.substr(0,nn),10)}function parseTime(Wt){const Pt=Wt.split(":");const en=[0,0,0];if(Pt.length!==3){return null}for(let Wt=0;Wt<3;Wt++){const tn=Wt==2;const nn=parseDigits(Pt[Wt],1,2,tn);if(nn===null){return null}en[Wt]=nn}return en}function parseMonth(Wt){Wt=String(Wt).substr(0,3).toLowerCase();const Pt=Zn[Wt];return Pt>=0?Pt:null}function parseDate(Wt){if(!Wt){return}const Pt=Wt.split(hn);if(!Pt){return}let en=null;let tn=null;let nn=null;let an=null;let rn=null;let In=null;for(let Wt=0;Wt=70&&In<=99){In+=1900}else if(In>=0&&In<=69){In+=2e3}}}}if(an===null||rn===null||In===null||nn===null||an<1||an>31||In<1601||en>23||tn>59||nn>59){return}return new Date(Date.UTC(In,rn,an,en,tn,nn))}function formatDate(Wt){on.validate(on.isDate(Wt),Wt);return Wt.toUTCString()}function canonicalDomain(Wt){if(Wt==null){return null}Wt=Wt.trim().replace(/^\./,"");if(Yn.test(Wt)){Wt=Wt.replace("[","").replace("]","")}if(tn&&/[^\u0001-\u007f]/.test(Wt)){Wt=tn.toASCII(Wt)}return Wt.toLowerCase()}function domainMatch(Wt,Pt,en){if(Wt==null||Pt==null){return null}if(en!==false){Wt=canonicalDomain(Wt);Pt=canonicalDomain(Pt)}if(Wt==Pt){return true}const tn=Wt.lastIndexOf(Pt);if(tn<=0){return false}if(Wt.length!==Pt.length+tn){return false}if(Wt.substr(tn-1,1)!=="."){return false}if(yn.test(Wt)){return false}return true}function defaultPath(Wt){if(!Wt||Wt.substr(0,1)!=="/"){return"/"}if(Wt==="/"){return Wt}const Pt=Wt.lastIndexOf("/");if(Pt===0){return"/"}return Wt.slice(0,Pt)}function trimTerminator(Wt){if(on.isEmptyString(Wt))return Wt;for(let Pt=0;Pt1){const en=Wt.lastIndexOf("/");if(en===0){break}Wt=Wt.substr(0,en);Pt.push(Wt)}Pt.push("/");return Pt}function getCookieContext(Wt){if(Wt instanceof Object){return Wt}try{Wt=decodeURI(Wt)}catch(Wt){}return nn(Wt)}const En={key:"",value:"",expires:"Infinity",maxAge:null,domain:null,path:null,secure:false,httpOnly:false,extensions:null,hostOnly:null,pathIsDefault:null,creation:null,lastAccessed:null,sameSite:undefined};class Cookie{constructor(Wt={}){const Pt=un();if(Pt){this[Pt]=this.inspect}Object.assign(this,En,Wt);this.creation=this.creation||new Date;Object.defineProperty(this,"creationIndex",{configurable:false,enumerable:false,writable:true,value:++Cookie.cookiesCreated})}inspect(){const Wt=Date.now();const Pt=this.hostOnly!=null?this.hostOnly:"?";const en=this.creation?`${Wt-this.creation.getTime()}ms`:"?";const tn=this.lastAccessed?`${Wt-this.lastAccessed.getTime()}ms`:"?";return`Cookie="${this.toString()}; hostOnly=${Pt}; aAge=${tn}; cAge=${en}"`}toJSON(){const Wt={};for(const Pt of Cookie.serializableProperties){if(this[Pt]===En[Pt]){continue}if(Pt==="expires"||Pt==="creation"||Pt==="lastAccessed"){if(this[Pt]===null){Wt[Pt]=null}else{Wt[Pt]=this[Pt]=="Infinity"?"Infinity":this[Pt].toISOString()}}else if(Pt==="maxAge"){if(this[Pt]!==null){Wt[Pt]=this[Pt]==Infinity||this[Pt]==-Infinity?this[Pt].toString():this[Pt]}}else{if(this[Pt]!==En[Pt]){Wt[Pt]=this[Pt]}}}return Wt}clone(){return fromJSON(this.toJSON())}validate(){if(!pn.test(this.value)){return false}if(this.expires!=Infinity&&!(this.expires instanceof Date)&&!parseDate(this.expires)){return false}if(this.maxAge!=null&&this.maxAge<=0){return false}if(this.path!=null&&!Gn.test(this.path)){return false}const Wt=this.cdomain();if(Wt){if(Wt.match(/\.$/)){return false}const Pt=an.getPublicSuffix(Wt);if(Pt==null){return false}}return true}setExpires(Wt){if(Wt instanceof Date){this.expires=Wt}else{this.expires=parseDate(Wt)||"Infinity"}}setMaxAge(Wt){if(Wt===Infinity||Wt===-Infinity){this.maxAge=Wt.toString()}else{this.maxAge=Wt}}cookieString(){let Wt=this.value;if(Wt==null){Wt=""}if(this.key===""){return Wt}return`${this.key}=${Wt}`}toString(){let Wt=this.cookieString();if(this.expires!=Infinity){if(this.expires instanceof Date){Wt+=`; Expires=${formatDate(this.expires)}`}else{Wt+=`; Expires=${this.expires}`}}if(this.maxAge!=null&&this.maxAge!=Infinity){Wt+=`; Max-Age=${this.maxAge}`}if(this.domain&&!this.hostOnly){Wt+=`; Domain=${this.domain}`}if(this.path){Wt+=`; Path=${this.path}`}if(this.secure){Wt+="; Secure"}if(this.httpOnly){Wt+="; HttpOnly"}if(this.sameSite&&this.sameSite!=="none"){const Pt=Cookie.sameSiteCanonical[this.sameSite.toLowerCase()];Wt+=`; SameSite=${Pt?Pt:this.sameSite}`}if(this.extensions){this.extensions.forEach((Pt=>{Wt+=`; ${Pt}`}))}return Wt}TTL(Wt){if(this.maxAge!=null){return this.maxAge<=0?0:this.maxAge*1e3}let Pt=this.expires;if(Pt!=Infinity){if(!(Pt instanceof Date)){Pt=parseDate(Pt)||Infinity}if(Pt==Infinity){return Infinity}return Pt.getTime()-(Wt||Date.now())}return Infinity}expiryTime(Wt){if(this.maxAge!=null){const Pt=Wt||this.creation||new Date;const en=this.maxAge<=0?-Infinity:this.maxAge*1e3;return Pt.getTime()+en}if(this.expires==Infinity){return Infinity}return this.expires.getTime()}expiryDate(Wt){const Pt=this.expiryTime(Wt);if(Pt==Infinity){return new Date(An)}else if(Pt==-Infinity){return new Date(Wn)}else{return new Date(Pt)}}isPersistent(){return this.maxAge!=null||this.expires!=Infinity}canonicalizedDomain(){if(this.domain==null){return null}return canonicalDomain(this.domain)}cdomain(){return this.canonicalizedDomain()}}Cookie.cookiesCreated=0;Cookie.parse=parse;Cookie.fromJSON=fromJSON;Cookie.serializableProperties=Object.keys(En);Cookie.sameSiteLevel={strict:3,lax:2,none:1};Cookie.sameSiteCanonical={strict:"Strict",lax:"Lax"};function getNormalizedPrefixSecurity(Wt){if(Wt!=null){const Pt=Wt.toLowerCase();switch(Pt){case gn.STRICT:case gn.SILENT:case gn.DISABLED:return Pt}}return gn.SILENT}class CookieJar{constructor(Wt,Pt={rejectPublicSuffixes:true}){if(typeof Pt==="boolean"){Pt={rejectPublicSuffixes:Pt}}on.validate(on.isObject(Pt),Pt);this.rejectPublicSuffixes=Pt.rejectPublicSuffixes;this.enableLooseMode=!!Pt.looseMode;this.allowSpecialUseDomain=typeof Pt.allowSpecialUseDomain==="boolean"?Pt.allowSpecialUseDomain:true;this.store=Wt||new In;this.prefixSecurity=getNormalizedPrefixSecurity(Pt.prefixSecurity);this._cloneSync=syncWrap("clone");this._importCookiesSync=syncWrap("_importCookies");this.getCookiesSync=syncWrap("getCookies");this.getCookieStringSync=syncWrap("getCookieString");this.getSetCookieStringsSync=syncWrap("getSetCookieStrings");this.removeAllCookiesSync=syncWrap("removeAllCookies");this.setCookieSync=syncWrap("setCookie");this.serializeSync=syncWrap("serialize")}setCookie(Wt,Pt,en,tn){on.validate(on.isUrlStringOrObject(Pt),tn,en);let nn;if(on.isFunction(Pt)){tn=Pt;return tn(new Error("No URL was specified"))}const rn=getCookieContext(Pt);if(on.isFunction(en)){tn=en;en={}}on.validate(on.isFunction(tn),tn);if(!on.isNonEmptyString(Wt)&&!on.isObject(Wt)&&Wt instanceof String&&Wt.length==0){return tn(null)}const In=canonicalDomain(rn.hostname);const sn=en.loose||this.enableLooseMode;let cn=null;if(en.sameSiteContext){cn=checkSameSiteContext(en.sameSiteContext);if(!cn){return tn(new Error(Nn))}}if(typeof Wt==="string"||Wt instanceof String){Wt=Cookie.parse(Wt,{loose:sn});if(!Wt){nn=new Error("Cookie failed to parse");return tn(en.ignoreError?null:nn)}}else if(!(Wt instanceof Cookie)){nn=new Error("First argument to setCookie must be a Cookie object or string");return tn(en.ignoreError?null:nn)}const dn=en.now||new Date;if(this.rejectPublicSuffixes&&Wt.domain){const Pt=an.getPublicSuffix(Wt.cdomain(),{allowSpecialUseDomain:this.allowSpecialUseDomain,ignoreError:en.ignoreError});if(Pt==null&&!Yn.test(Wt.domain)){nn=new Error("Cookie has domain set to a public suffix");return tn(en.ignoreError?null:nn)}}if(Wt.domain){if(!domainMatch(In,Wt.cdomain(),false)){nn=new Error(`Cookie not in this host's domain. Cookie:${Wt.cdomain()} Request:${In}`);return tn(en.ignoreError?null:nn)}if(Wt.hostOnly==null){Wt.hostOnly=false}}else{Wt.hostOnly=true;Wt.domain=In}if(!Wt.path||Wt.path[0]!=="/"){Wt.path=defaultPath(rn.pathname);Wt.pathIsDefault=true}if(en.http===false&&Wt.httpOnly){nn=new Error("Cookie is HttpOnly and this isn't an HTTP API");return tn(en.ignoreError?null:nn)}if(Wt.sameSite!=="none"&&Wt.sameSite!==undefined&&cn){if(cn==="none"){nn=new Error("Cookie is SameSite but this is a cross-origin request");return tn(en.ignoreError?null:nn)}}const un=this.prefixSecurity===gn.SILENT;const pn=this.prefixSecurity===gn.DISABLED;if(!pn){let Pt=false;let nn;if(!isSecurePrefixConditionMet(Wt)){Pt=true;nn="Cookie has __Secure prefix but Secure attribute is not set"}else if(!isHostPrefixConditionMet(Wt)){Pt=true;nn="Cookie has __Host prefix but either Secure or HostOnly attribute is not set or Path is not '/'"}if(Pt){return tn(en.ignoreError||un?null:new Error(nn))}}const mn=this.store;if(!mn.updateCookie){mn.updateCookie=function(Wt,Pt,en){this.putCookie(Pt,en)}}function withCookie(Pt,nn){if(Pt){return tn(Pt)}const next=function(Pt){if(Pt){return tn(Pt)}else{tn(null,Wt)}};if(nn){if(en.http===false&&nn.httpOnly){Pt=new Error("old Cookie is HttpOnly and this isn't an HTTP API");return tn(en.ignoreError?null:Pt)}Wt.creation=nn.creation;Wt.creationIndex=nn.creationIndex;Wt.lastAccessed=dn;mn.updateCookie(nn,Wt,next)}else{Wt.creation=Wt.lastAccessed=dn;mn.putCookie(Wt,next)}}mn.findCookie(Wt.domain,Wt.path,Wt.key,withCookie)}getCookies(Wt,Pt,en){on.validate(on.isUrlStringOrObject(Wt),en,Wt);const tn=getCookieContext(Wt);if(on.isFunction(Pt)){en=Pt;Pt={}}on.validate(on.isObject(Pt),en,Pt);on.validate(on.isFunction(en),en);const nn=canonicalDomain(tn.hostname);const an=tn.pathname||"/";let rn=Pt.secure;if(rn==null&&tn.protocol&&(tn.protocol=="https:"||tn.protocol=="wss:")){rn=true}let In=0;if(Pt.sameSiteContext){const Wt=checkSameSiteContext(Pt.sameSiteContext);In=Cookie.sameSiteLevel[Wt];if(!In){return en(new Error(Nn))}}let cn=Pt.http;if(cn==null){cn=true}const dn=Pt.now||Date.now();const un=Pt.expire!==false;const pn=!!Pt.allPaths;const mn=this.store;function matchingCookie(Wt){if(Wt.hostOnly){if(Wt.domain!=nn){return false}}else{if(!domainMatch(nn,Wt.domain,false)){return false}}if(!pn&&!sn(an,Wt.path)){return false}if(Wt.secure&&!rn){return false}if(Wt.httpOnly&&!cn){return false}if(In){const Pt=Cookie.sameSiteLevel[Wt.sameSite||"none"];if(Pt>In){return false}}if(un&&Wt.expiryTime()<=dn){mn.removeCookie(Wt.domain,Wt.path,Wt.key,(()=>{}));return false}return true}mn.findCookies(nn,pn?null:an,this.allowSpecialUseDomain,((Wt,tn)=>{if(Wt){return en(Wt)}tn=tn.filter(matchingCookie);if(Pt.sort!==false){tn=tn.sort(cookieCompare)}const nn=new Date;for(const Wt of tn){Wt.lastAccessed=nn}en(null,tn)}))}getCookieString(...Wt){const Pt=Wt.pop();on.validate(on.isFunction(Pt),Pt);const next=function(Wt,en){if(Wt){Pt(Wt)}else{Pt(null,en.sort(cookieCompare).map((Wt=>Wt.cookieString())).join("; "))}};Wt.push(next);this.getCookies.apply(this,Wt)}getSetCookieStrings(...Wt){const Pt=Wt.pop();on.validate(on.isFunction(Pt),Pt);const next=function(Wt,en){if(Wt){Pt(Wt)}else{Pt(null,en.map((Wt=>Wt.toString())))}};Wt.push(next);this.getCookies.apply(this,Wt)}serialize(Wt){on.validate(on.isFunction(Wt),Wt);let Pt=this.store.constructor.name;if(on.isObject(Pt)){Pt=null}const en={version:`tough-cookie@${cn}`,storeType:Pt,rejectPublicSuffixes:!!this.rejectPublicSuffixes,enableLooseMode:!!this.enableLooseMode,allowSpecialUseDomain:!!this.allowSpecialUseDomain,prefixSecurity:getNormalizedPrefixSecurity(this.prefixSecurity),cookies:[]};if(!(this.store.getAllCookies&&typeof this.store.getAllCookies==="function")){return Wt(new Error("store does not support getAllCookies and cannot be serialized"))}this.store.getAllCookies(((Pt,tn)=>{if(Pt){return Wt(Pt)}en.cookies=tn.map((Wt=>{Wt=Wt instanceof Cookie?Wt.toJSON():Wt;delete Wt.creationIndex;return Wt}));return Wt(null,en)}))}toJSON(){return this.serializeSync()}_importCookies(Wt,Pt){let en=Wt.cookies;if(!en||!Array.isArray(en)){return Pt(new Error("serialized jar has no cookies array"))}en=en.slice();const putNext=Wt=>{if(Wt){return Pt(Wt)}if(!en.length){return Pt(Wt,this)}let tn;try{tn=fromJSON(en.shift())}catch(Wt){return Pt(Wt)}if(tn===null){return putNext(null)}this.store.putCookie(tn,putNext)};putNext()}clone(Wt,Pt){if(arguments.length===1){Pt=Wt;Wt=null}this.serialize(((en,tn)=>{if(en){return Pt(en)}CookieJar.deserialize(tn,Wt,Pt)}))}cloneSync(Wt){if(arguments.length===0){return this._cloneSync()}if(!Wt.synchronous){throw new Error("CookieJar clone destination store is not synchronous; use async API instead.")}return this._cloneSync(Wt)}removeAllCookies(Wt){on.validate(on.isFunction(Wt),Wt);const Pt=this.store;if(typeof Pt.removeAllCookies==="function"&&Pt.removeAllCookies!==rn.prototype.removeAllCookies){return Pt.removeAllCookies(Wt)}Pt.getAllCookies(((en,tn)=>{if(en){return Wt(en)}if(tn.length===0){return Wt(null)}let nn=0;const an=[];function removeCookieCb(Pt){if(Pt){an.push(Pt)}nn++;if(nn===tn.length){return Wt(an.length?an[0]:null)}}tn.forEach((Wt=>{Pt.removeCookie(Wt.domain,Wt.path,Wt.key,removeCookieCb)}))}))}static deserialize(Wt,Pt,en){if(arguments.length!==3){en=Pt;Pt=null}on.validate(on.isFunction(en),en);let tn;if(typeof Wt==="string"){tn=jsonParse(Wt);if(tn instanceof Error){return en(tn)}}else{tn=Wt}const nn=new CookieJar(Pt,{rejectPublicSuffixes:tn.rejectPublicSuffixes,looseMode:tn.enableLooseMode,allowSpecialUseDomain:tn.allowSpecialUseDomain,prefixSecurity:tn.prefixSecurity});nn._importCookies(tn,(Wt=>{if(Wt){return en(Wt)}en(null,nn)}))}static deserializeSync(Wt,Pt){const en=typeof Wt==="string"?JSON.parse(Wt):Wt;const tn=new CookieJar(Pt,{rejectPublicSuffixes:en.rejectPublicSuffixes,looseMode:en.enableLooseMode});if(!tn.store.synchronous){throw new Error("CookieJar store is not synchronous; use async API instead.")}tn._importCookiesSync(en);return tn}}CookieJar.fromJSON=CookieJar.deserializeSync;["_importCookies","clone","getCookies","getCookieString","getSetCookieStrings","removeAllCookies","serialize","setCookie"].forEach((Wt=>{CookieJar.prototype[Wt]=dn(CookieJar.prototype[Wt])}));CookieJar.deserialize=dn(CookieJar.deserialize);function syncWrap(Wt){return function(...Pt){if(!this.store.synchronous){throw new Error("CookieJar store is not synchronous; use async API instead.")}let en,tn;this[Wt](...Pt,((Wt,Pt)=>{en=Wt;tn=Pt}));if(en){throw en}return tn}}Pt.version=cn;Pt.CookieJar=CookieJar;Pt.Cookie=Cookie;Pt.Store=rn;Pt.MemoryCookieStore=In;Pt.parseDate=parseDate;Pt.formatDate=formatDate;Pt.parse=parse;Pt.fromJSON=fromJSON;Pt.domainMatch=domainMatch;Pt.defaultPath=defaultPath;Pt.pathMatch=sn;Pt.getPublicSuffix=an.getPublicSuffix;Pt.cookieCompare=cookieCompare;Pt.permuteDomain=en(48586).permuteDomain;Pt.permutePath=permutePath;Pt.canonicalDomain=canonicalDomain;Pt.PrefixSecurityEnum=gn;Pt.ParameterError=on.ParameterError},95620:(Wt,Pt,en)=>{"use strict";var tn; +/*! + * Copyright (c) 2015, Salesforce.com, Inc. + * All rights reserved. * - */ -function setCommandEcho(enabled) { - (0, command_1.issue)('echo', enabled ? 'on' : 'off'); -} -exports.setCommandEcho = setCommandEcho; -//----------------------------------------------------------------------- -// Results -//----------------------------------------------------------------------- -/** - * Sets the action status to failed. - * When the action exits it will be with an exit code of 1 - * @param message add error issue message - */ -function setFailed(message) { - process.exitCode = ExitCode.Failure; - error(message); -} -exports.setFailed = setFailed; -//----------------------------------------------------------------------- -// Logging Commands -//----------------------------------------------------------------------- -/** - * Gets whether Actions Step Debug is on or not - */ -function isDebug() { - return process.env['RUNNER_DEBUG'] === '1'; -} -exports.isDebug = isDebug; -/** - * Writes debug message to user log - * @param message debug message - */ -function debug(message) { - (0, command_1.issueCommand)('debug', {}, message); -} -exports.debug = debug; -/** - * Adds an error issue - * @param message error issue message. Errors will be converted to string via toString() - * @param properties optional properties to add to the annotation. - */ -function error(message, properties = {}) { - (0, command_1.issueCommand)('error', (0, utils_1.toCommandProperties)(properties), message instanceof Error ? message.toString() : message); -} -exports.error = error; -/** - * Adds a warning issue - * @param message warning issue message. Errors will be converted to string via toString() - * @param properties optional properties to add to the annotation. - */ -function warning(message, properties = {}) { - (0, command_1.issueCommand)('warning', (0, utils_1.toCommandProperties)(properties), message instanceof Error ? message.toString() : message); -} -exports.warning = warning; -/** - * Adds a notice issue - * @param message notice issue message. Errors will be converted to string via toString() - * @param properties optional properties to add to the annotation. - */ -function notice(message, properties = {}) { - (0, command_1.issueCommand)('notice', (0, utils_1.toCommandProperties)(properties), message instanceof Error ? message.toString() : message); -} -exports.notice = notice; -/** - * Writes info to log with console.log. - * @param message info message - */ -function info(message) { - process.stdout.write(message + os.EOL); -} -exports.info = info; -/** - * Begin an output group. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: * - * Output until the next `groupEnd` will be foldable in this group + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. * - * @param name The name of the output group - */ -function startGroup(name) { - (0, command_1.issue)('group', name); -} -exports.startGroup = startGroup; -/** - * End an output group. - */ -function endGroup() { - (0, command_1.issue)('endgroup'); -} -exports.endGroup = endGroup; -/** - * Wrap an asynchronous function call in a group. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. * - * Returns the same type as the function itself. + * 3. Neither the name of Salesforce.com nor the names of its contributors may + * be used to endorse or promote products derived from this software without + * specific prior written permission. * - * @param name The name of the group - * @param fn The function to wrap in the group - */ -function group(name, fn) { - return __awaiter(this, void 0, void 0, function* () { - startGroup(name); - let result; - try { - result = yield fn(); - } - finally { - endGroup(); - } - return result; - }); -} -exports.group = group; -//----------------------------------------------------------------------- -// Wrapper action state -//----------------------------------------------------------------------- -/** - * Saves state for current action, the state can only be retrieved by this action's post job execution. + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */const{fromCallback:nn}=en(13841);const an=en(66849).i;const rn=en(48586).permuteDomain;const In=en(38436).z;const{getCustomInspectSymbol:sn,getUtilInspect:on}=en(73930);class MemoryCookieStore extends an{constructor(){super();this.synchronous=true;this.idx=Object.create(null);const Wt=sn();if(Wt){this[Wt]=this.inspect}}inspect(){const Wt={inspect:on(inspectFallback)};return`{ idx: ${Wt.inspect(this.idx,false,2)} }`}findCookie(Wt,Pt,en,tn){if(!this.idx[Wt]){return tn(null,undefined)}if(!this.idx[Wt][Pt]){return tn(null,undefined)}return tn(null,this.idx[Wt][Pt][en]||null)}findCookies(Wt,Pt,en,tn){const nn=[];if(typeof en==="function"){tn=en;en=true}if(!Wt){return tn(null,[])}let an;if(!Pt){an=function matchAll(Wt){for(const Pt in Wt){const en=Wt[Pt];for(const Wt in en){nn.push(en[Wt])}}}}else{an=function matchRFC(Wt){Object.keys(Wt).forEach((en=>{if(In(Pt,en)){const Pt=Wt[en];for(const Wt in Pt){nn.push(Pt[Wt])}}}))}}const sn=rn(Wt,en)||[Wt];const on=this.idx;sn.forEach((Wt=>{const Pt=on[Wt];if(!Pt){return}an(Pt)}));tn(null,nn)}putCookie(Wt,Pt){if(!this.idx[Wt.domain]){this.idx[Wt.domain]=Object.create(null)}if(!this.idx[Wt.domain][Wt.path]){this.idx[Wt.domain][Wt.path]=Object.create(null)}this.idx[Wt.domain][Wt.path][Wt.key]=Wt;Pt(null)}updateCookie(Wt,Pt,en){this.putCookie(Pt,en)}removeCookie(Wt,Pt,en,tn){if(this.idx[Wt]&&this.idx[Wt][Pt]&&this.idx[Wt][Pt][en]){delete this.idx[Wt][Pt][en]}tn(null)}removeCookies(Wt,Pt,en){if(this.idx[Wt]){if(Pt){delete this.idx[Wt][Pt]}else{delete this.idx[Wt]}}return en(null)}removeAllCookies(Wt){this.idx=Object.create(null);return Wt(null)}getAllCookies(Wt){const Pt=[];const en=this.idx;const tn=Object.keys(en);tn.forEach((Wt=>{const tn=Object.keys(en[Wt]);tn.forEach((tn=>{const nn=Object.keys(en[Wt][tn]);nn.forEach((nn=>{if(nn!==null){Pt.push(en[Wt][tn][nn])}}))}))}));Pt.sort(((Wt,Pt)=>(Wt.creationIndex||0)-(Pt.creationIndex||0)));Wt(null,Pt)}}["findCookie","findCookies","putCookie","updateCookie","removeCookie","removeCookies","removeAllCookies","getAllCookies"].forEach((Wt=>{MemoryCookieStore.prototype[Wt]=nn(MemoryCookieStore.prototype[Wt])}));Pt.n=MemoryCookieStore;function inspectFallback(Wt){const Pt=Object.keys(Wt);if(Pt.length===0){return"[Object: null prototype] {}"}let en="[Object: null prototype] {\n";Object.keys(Wt).forEach(((tn,nn)=>{en+=formatDomain(tn,Wt[tn]);if(nn{tn+=formatPath(Wt,Pt[Wt]);if(en{const an=Pt[Wt];tn+=` ${Wt}: ${an.inspect()}`;if(en{"use strict"; +/*! + * Copyright (c) 2015, Salesforce.com, Inc. + * All rights reserved. * - * @param name name of the state to store - * @param value value to store. Non-string values will be converted to a string via JSON.stringify - */ -// eslint-disable-next-line @typescript-eslint/no-explicit-any -function saveState(name, value) { - const filePath = process.env['GITHUB_STATE'] || ''; - if (filePath) { - return (0, file_command_1.issueFileCommand)('STATE', (0, file_command_1.prepareKeyValueMessage)(name, value)); - } - (0, command_1.issueCommand)('save-state', { name }, (0, utils_1.toCommandValue)(value)); -} -exports.saveState = saveState; -/** - * Gets the value of an state set by this action's main execution. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: * - * @param name name of the state to get - * @returns string - */ -function getState(name) { - return process.env[`STATE_${name}`] || ''; -} -exports.getState = getState; -function getIDToken(aud) { - return __awaiter(this, void 0, void 0, function* () { - return yield oidc_utils_1.OidcClient.getIDToken(aud); - }); -} -exports.getIDToken = getIDToken; -/** - * Summary exports - */ -var summary_1 = __nccwpck_require__(71847); -Object.defineProperty(exports, "summary", ({ enumerable: true, get: function () { return summary_1.summary; } })); -/** - * @deprecated use core.summary - */ -var summary_2 = __nccwpck_require__(71847); -Object.defineProperty(exports, "markdownSummary", ({ enumerable: true, get: function () { return summary_2.markdownSummary; } })); -/** - * Path exports - */ -var path_utils_1 = __nccwpck_require__(31976); -Object.defineProperty(exports, "toPosixPath", ({ enumerable: true, get: function () { return path_utils_1.toPosixPath; } })); -Object.defineProperty(exports, "toWin32Path", ({ enumerable: true, get: function () { return path_utils_1.toWin32Path; } })); -Object.defineProperty(exports, "toPlatformPath", ({ enumerable: true, get: function () { return path_utils_1.toPlatformPath; } })); -/** - * Platform utilities exports - */ -exports.platform = __importStar(__nccwpck_require__(18968)); -//# sourceMappingURL=core.js.map - -/***/ }), - -/***/ 24753: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -// For internal use, subject to change. -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.prepareKeyValueMessage = exports.issueFileCommand = void 0; -// We use any as a valid input type -/* eslint-disable @typescript-eslint/no-explicit-any */ -const crypto = __importStar(__nccwpck_require__(76982)); -const fs = __importStar(__nccwpck_require__(79896)); -const os = __importStar(__nccwpck_require__(70857)); -const utils_1 = __nccwpck_require__(30302); -function issueFileCommand(command, message) { - const filePath = process.env[`GITHUB_${command}`]; - if (!filePath) { - throw new Error(`Unable to find environment variable for file command ${command}`); - } - if (!fs.existsSync(filePath)) { - throw new Error(`Missing file at path: ${filePath}`); - } - fs.appendFileSync(filePath, `${(0, utils_1.toCommandValue)(message)}${os.EOL}`, { - encoding: 'utf8' - }); -} -exports.issueFileCommand = issueFileCommand; -function prepareKeyValueMessage(key, value) { - const delimiter = `ghadelimiter_${crypto.randomUUID()}`; - const convertedValue = (0, utils_1.toCommandValue)(value); - // These should realistically never happen, but just in case someone finds a - // way to exploit uuid generation let's not allow keys or values that contain - // the delimiter. - if (key.includes(delimiter)) { - throw new Error(`Unexpected input: name should not contain the delimiter "${delimiter}"`); - } - if (convertedValue.includes(delimiter)) { - throw new Error(`Unexpected input: value should not contain the delimiter "${delimiter}"`); - } - return `${key}<<${delimiter}${os.EOL}${convertedValue}${os.EOL}${delimiter}`; -} -exports.prepareKeyValueMessage = prepareKeyValueMessage; -//# sourceMappingURL=file-command.js.map - -/***/ }), - -/***/ 35306: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.OidcClient = void 0; -const http_client_1 = __nccwpck_require__(54844); -const auth_1 = __nccwpck_require__(44552); -const core_1 = __nccwpck_require__(37484); -class OidcClient { - static createHttpClient(allowRetry = true, maxRetry = 10) { - const requestOptions = { - allowRetries: allowRetry, - maxRetries: maxRetry - }; - return new http_client_1.HttpClient('actions/oidc-client', [new auth_1.BearerCredentialHandler(OidcClient.getRequestToken())], requestOptions); - } - static getRequestToken() { - const token = process.env['ACTIONS_ID_TOKEN_REQUEST_TOKEN']; - if (!token) { - throw new Error('Unable to get ACTIONS_ID_TOKEN_REQUEST_TOKEN env variable'); - } - return token; - } - static getIDTokenUrl() { - const runtimeUrl = process.env['ACTIONS_ID_TOKEN_REQUEST_URL']; - if (!runtimeUrl) { - throw new Error('Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable'); - } - return runtimeUrl; - } - static getCall(id_token_url) { - var _a; - return __awaiter(this, void 0, void 0, function* () { - const httpclient = OidcClient.createHttpClient(); - const res = yield httpclient - .getJson(id_token_url) - .catch(error => { - throw new Error(`Failed to get ID Token. \n - Error Code : ${error.statusCode}\n - Error Message: ${error.message}`); - }); - const id_token = (_a = res.result) === null || _a === void 0 ? void 0 : _a.value; - if (!id_token) { - throw new Error('Response json body do not have ID Token field'); - } - return id_token; - }); - } - static getIDToken(audience) { - return __awaiter(this, void 0, void 0, function* () { - try { - // New ID Token is requested from action service - let id_token_url = OidcClient.getIDTokenUrl(); - if (audience) { - const encodedAudience = encodeURIComponent(audience); - id_token_url = `${id_token_url}&audience=${encodedAudience}`; - } - (0, core_1.debug)(`ID token url is ${id_token_url}`); - const id_token = yield OidcClient.getCall(id_token_url); - (0, core_1.setSecret)(id_token); - return id_token; - } - catch (error) { - throw new Error(`Error message: ${error.message}`); - } - }); - } -} -exports.OidcClient = OidcClient; -//# sourceMappingURL=oidc-utils.js.map - -/***/ }), - -/***/ 31976: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.toPlatformPath = exports.toWin32Path = exports.toPosixPath = void 0; -const path = __importStar(__nccwpck_require__(16928)); -/** - * toPosixPath converts the given path to the posix form. On Windows, \\ will be - * replaced with /. + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. * - * @param pth. Path to transform. - * @return string Posix path. - */ -function toPosixPath(pth) { - return pth.replace(/[\\]/g, '/'); -} -exports.toPosixPath = toPosixPath; -/** - * toWin32Path converts the given path to the win32 form. On Linux, / will be - * replaced with \\. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. * - * @param pth. Path to transform. - * @return string Win32 path. - */ -function toWin32Path(pth) { - return pth.replace(/[/]/g, '\\'); -} -exports.toWin32Path = toWin32Path; -/** - * toPlatformPath converts the given path to a platform-specific path. It does - * this by replacing instances of / and \ with the platform-specific path - * separator. + * 3. Neither the name of Salesforce.com nor the names of its contributors may + * be used to endorse or promote products derived from this software without + * specific prior written permission. * - * @param pth The path to platformize. - * @return string The platform-specific path. - */ -function toPlatformPath(pth) { - return pth.replace(/[/\\]/g, path.sep); -} -exports.toPlatformPath = toPlatformPath; -//# sourceMappingURL=path-utils.js.map - -/***/ }), - -/***/ 18968: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -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 __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.getDetails = exports.isLinux = exports.isMacOS = exports.isWindows = exports.arch = exports.platform = void 0; -const os_1 = __importDefault(__nccwpck_require__(70857)); -const exec = __importStar(__nccwpck_require__(95236)); -const getWindowsInfo = () => __awaiter(void 0, void 0, void 0, function* () { - const { stdout: version } = yield exec.getExecOutput('powershell -command "(Get-CimInstance -ClassName Win32_OperatingSystem).Version"', undefined, { - silent: true - }); - const { stdout: name } = yield exec.getExecOutput('powershell -command "(Get-CimInstance -ClassName Win32_OperatingSystem).Caption"', undefined, { - silent: true - }); - return { - name: name.trim(), - version: version.trim() - }; -}); -const getMacOsInfo = () => __awaiter(void 0, void 0, void 0, function* () { - var _a, _b, _c, _d; - const { stdout } = yield exec.getExecOutput('sw_vers', undefined, { - silent: true - }); - const version = (_b = (_a = stdout.match(/ProductVersion:\s*(.+)/)) === null || _a === void 0 ? void 0 : _a[1]) !== null && _b !== void 0 ? _b : ''; - const name = (_d = (_c = stdout.match(/ProductName:\s*(.+)/)) === null || _c === void 0 ? void 0 : _c[1]) !== null && _d !== void 0 ? _d : ''; - return { - name, - version - }; -}); -const getLinuxInfo = () => __awaiter(void 0, void 0, void 0, function* () { - const { stdout } = yield exec.getExecOutput('lsb_release', ['-i', '-r', '-s'], { - silent: true - }); - const [name, version] = stdout.trim().split('\n'); - return { - name, - version - }; -}); -exports.platform = os_1.default.platform(); -exports.arch = os_1.default.arch(); -exports.isWindows = exports.platform === 'win32'; -exports.isMacOS = exports.platform === 'darwin'; -exports.isLinux = exports.platform === 'linux'; -function getDetails() { - return __awaiter(this, void 0, void 0, function* () { - return Object.assign(Object.assign({}, (yield (exports.isWindows - ? getWindowsInfo() - : exports.isMacOS - ? getMacOsInfo() - : getLinuxInfo()))), { platform: exports.platform, - arch: exports.arch, - isWindows: exports.isWindows, - isMacOS: exports.isMacOS, - isLinux: exports.isLinux }); - }); -} -exports.getDetails = getDetails; -//# sourceMappingURL=platform.js.map - -/***/ }), - -/***/ 71847: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.summary = exports.markdownSummary = exports.SUMMARY_DOCS_URL = exports.SUMMARY_ENV_VAR = void 0; -const os_1 = __nccwpck_require__(70857); -const fs_1 = __nccwpck_require__(79896); -const { access, appendFile, writeFile } = fs_1.promises; -exports.SUMMARY_ENV_VAR = 'GITHUB_STEP_SUMMARY'; -exports.SUMMARY_DOCS_URL = 'https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary'; -class Summary { - constructor() { - this._buffer = ''; - } - /** - * Finds the summary file path from the environment, rejects if env var is not found or file does not exist - * Also checks r/w permissions. - * - * @returns step summary file path - */ - filePath() { - return __awaiter(this, void 0, void 0, function* () { - if (this._filePath) { - return this._filePath; - } - const pathFromEnv = process.env[exports.SUMMARY_ENV_VAR]; - if (!pathFromEnv) { - throw new Error(`Unable to find environment variable for $${exports.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`); - } - try { - yield access(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK); - } - catch (_a) { - throw new Error(`Unable to access summary file: '${pathFromEnv}'. Check if the file has correct read/write permissions.`); - } - this._filePath = pathFromEnv; - return this._filePath; - }); - } - /** - * Wraps content in an HTML tag, adding any HTML attributes - * - * @param {string} tag HTML tag to wrap - * @param {string | null} content content within the tag - * @param {[attribute: string]: string} attrs key-value list of HTML attributes to add - * - * @returns {string} content wrapped in HTML element - */ - wrap(tag, content, attrs = {}) { - const htmlAttrs = Object.entries(attrs) - .map(([key, value]) => ` ${key}="${value}"`) - .join(''); - if (!content) { - return `<${tag}${htmlAttrs}>`; - } - return `<${tag}${htmlAttrs}>${content}`; - } - /** - * Writes text in the buffer to the summary buffer file and empties buffer. Will append by default. - * - * @param {SummaryWriteOptions} [options] (optional) options for write operation - * - * @returns {Promise} summary instance - */ - write(options) { - return __awaiter(this, void 0, void 0, function* () { - const overwrite = !!(options === null || options === void 0 ? void 0 : options.overwrite); - const filePath = yield this.filePath(); - const writeFunc = overwrite ? writeFile : appendFile; - yield writeFunc(filePath, this._buffer, { encoding: 'utf8' }); - return this.emptyBuffer(); - }); - } - /** - * Clears the summary buffer and wipes the summary file - * - * @returns {Summary} summary instance - */ - clear() { - return __awaiter(this, void 0, void 0, function* () { - return this.emptyBuffer().write({ overwrite: true }); - }); - } - /** - * Returns the current summary buffer as a string - * - * @returns {string} string of summary buffer - */ - stringify() { - return this._buffer; - } - /** - * If the summary buffer is empty - * - * @returns {boolen} true if the buffer is empty - */ - isEmptyBuffer() { - return this._buffer.length === 0; - } - /** - * Resets the summary buffer without writing to summary file - * - * @returns {Summary} summary instance - */ - emptyBuffer() { - this._buffer = ''; - return this; - } - /** - * Adds raw text to the summary buffer - * - * @param {string} text content to add - * @param {boolean} [addEOL=false] (optional) append an EOL to the raw text (default: false) - * - * @returns {Summary} summary instance - */ - addRaw(text, addEOL = false) { - this._buffer += text; - return addEOL ? this.addEOL() : this; - } - /** - * Adds the operating system-specific end-of-line marker to the buffer - * - * @returns {Summary} summary instance - */ - addEOL() { - return this.addRaw(os_1.EOL); - } - /** - * Adds an HTML codeblock to the summary buffer - * - * @param {string} code content to render within fenced code block - * @param {string} lang (optional) language to syntax highlight code - * - * @returns {Summary} summary instance - */ - addCodeBlock(code, lang) { - const attrs = Object.assign({}, (lang && { lang })); - const element = this.wrap('pre', this.wrap('code', code), attrs); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML list to the summary buffer - * - * @param {string[]} items list of items to render - * @param {boolean} [ordered=false] (optional) if the rendered list should be ordered or not (default: false) - * - * @returns {Summary} summary instance - */ - addList(items, ordered = false) { - const tag = ordered ? 'ol' : 'ul'; - const listItems = items.map(item => this.wrap('li', item)).join(''); - const element = this.wrap(tag, listItems); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML table to the summary buffer - * - * @param {SummaryTableCell[]} rows table rows - * - * @returns {Summary} summary instance - */ - addTable(rows) { - const tableBody = rows - .map(row => { - const cells = row - .map(cell => { - if (typeof cell === 'string') { - return this.wrap('td', cell); - } - const { header, data, colspan, rowspan } = cell; - const tag = header ? 'th' : 'td'; - const attrs = Object.assign(Object.assign({}, (colspan && { colspan })), (rowspan && { rowspan })); - return this.wrap(tag, data, attrs); - }) - .join(''); - return this.wrap('tr', cells); - }) - .join(''); - const element = this.wrap('table', tableBody); - return this.addRaw(element).addEOL(); - } - /** - * Adds a collapsable HTML details element to the summary buffer - * - * @param {string} label text for the closed state - * @param {string} content collapsable content - * - * @returns {Summary} summary instance - */ - addDetails(label, content) { - const element = this.wrap('details', this.wrap('summary', label) + content); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML image tag to the summary buffer - * - * @param {string} src path to the image you to embed - * @param {string} alt text description of the image - * @param {SummaryImageOptions} options (optional) addition image attributes - * - * @returns {Summary} summary instance - */ - addImage(src, alt, options) { - const { width, height } = options || {}; - const attrs = Object.assign(Object.assign({}, (width && { width })), (height && { height })); - const element = this.wrap('img', null, Object.assign({ src, alt }, attrs)); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML section heading element - * - * @param {string} text heading text - * @param {number | string} [level=1] (optional) the heading level, default: 1 - * - * @returns {Summary} summary instance - */ - addHeading(text, level) { - const tag = `h${level}`; - const allowedTag = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'].includes(tag) - ? tag - : 'h1'; - const element = this.wrap(allowedTag, text); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML thematic break (
                                        ) to the summary buffer - * - * @returns {Summary} summary instance - */ - addSeparator() { - const element = this.wrap('hr', null); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML line break (
                                        ) to the summary buffer - * - * @returns {Summary} summary instance - */ - addBreak() { - const element = this.wrap('br', null); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML blockquote to the summary buffer - * - * @param {string} text quote text - * @param {string} cite (optional) citation url - * - * @returns {Summary} summary instance - */ - addQuote(text, cite) { - const attrs = Object.assign({}, (cite && { cite })); - const element = this.wrap('blockquote', text, attrs); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML anchor tag to the summary buffer - * - * @param {string} text link text/content - * @param {string} href hyperlink - * - * @returns {Summary} summary instance - */ - addLink(text, href) { - const element = this.wrap('a', text, { href }); - return this.addRaw(element).addEOL(); - } -} -const _summary = new Summary(); -/** - * @deprecated use `core.summary` - */ -exports.markdownSummary = _summary; -exports.summary = _summary; -//# sourceMappingURL=summary.js.map - -/***/ }), - -/***/ 30302: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -// We use any as a valid input type -/* eslint-disable @typescript-eslint/no-explicit-any */ -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.toCommandProperties = exports.toCommandValue = void 0; -/** - * Sanitizes an input into a string so it can be passed into issueCommand safely - * @param input input to sanitize into a string - */ -function toCommandValue(input) { - if (input === null || input === undefined) { - return ''; - } - else if (typeof input === 'string' || input instanceof String) { - return input; - } - return JSON.stringify(input); -} -exports.toCommandValue = toCommandValue; -/** + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */function pathMatch(Wt,Pt){if(Pt===Wt){return true}const en=Wt.indexOf(Pt);if(en===0){if(Pt.substr(-1)==="/"){return true}if(Wt.substr(Pt.length,1)==="/"){return true}}return false}Pt.z=pathMatch},48586:(Wt,Pt,en)=>{"use strict"; +/*! + * Copyright (c) 2015, Salesforce.com, Inc. + * All rights reserved. * - * @param annotationProperties - * @returns The command properties to send with the actual annotation command - * See IssueCommandProperties: https://github.com/actions/runner/blob/main/src/Runner.Worker/ActionCommandManager.cs#L646 - */ -function toCommandProperties(annotationProperties) { - if (!Object.keys(annotationProperties).length) { - return {}; - } - return { - title: annotationProperties.title, - file: annotationProperties.file, - line: annotationProperties.startLine, - endLine: annotationProperties.endLine, - col: annotationProperties.startColumn, - endColumn: annotationProperties.endColumn - }; -} -exports.toCommandProperties = toCommandProperties; -//# sourceMappingURL=utils.js.map - -/***/ }), - -/***/ 95236: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.getExecOutput = exports.exec = void 0; -const string_decoder_1 = __nccwpck_require__(13193); -const tr = __importStar(__nccwpck_require__(6665)); -/** - * Exec a command. - * Output will be streamed to the live console. - * Returns promise with return code + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: * - * @param commandLine command to execute (can include additional args). Must be correctly escaped. - * @param args optional arguments for tool. Escaping is handled by the lib. - * @param options optional exec options. See ExecOptions - * @returns Promise exit code - */ -function exec(commandLine, args, options) { - return __awaiter(this, void 0, void 0, function* () { - const commandArgs = tr.argStringToArray(commandLine); - if (commandArgs.length === 0) { - throw new Error(`Parameter 'commandLine' cannot be null or empty.`); - } - // Path to tool to execute should be first arg - const toolPath = commandArgs[0]; - args = commandArgs.slice(1).concat(args || []); - const runner = new tr.ToolRunner(toolPath, args, options); - return runner.exec(); - }); -} -exports.exec = exec; -/** - * Exec a command and get the output. - * Output will be streamed to the live console. - * Returns promise with the exit code and collected stdout and stderr + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. * - * @param commandLine command to execute (can include additional args). Must be correctly escaped. - * @param args optional arguments for tool. Escaping is handled by the lib. - * @param options optional exec options. See ExecOptions - * @returns Promise exit code, stdout, and stderr - */ -function getExecOutput(commandLine, args, options) { - var _a, _b; - return __awaiter(this, void 0, void 0, function* () { - let stdout = ''; - let stderr = ''; - //Using string decoder covers the case where a mult-byte character is split - const stdoutDecoder = new string_decoder_1.StringDecoder('utf8'); - const stderrDecoder = new string_decoder_1.StringDecoder('utf8'); - const originalStdoutListener = (_a = options === null || options === void 0 ? void 0 : options.listeners) === null || _a === void 0 ? void 0 : _a.stdout; - const originalStdErrListener = (_b = options === null || options === void 0 ? void 0 : options.listeners) === null || _b === void 0 ? void 0 : _b.stderr; - const stdErrListener = (data) => { - stderr += stderrDecoder.write(data); - if (originalStdErrListener) { - originalStdErrListener(data); - } - }; - const stdOutListener = (data) => { - stdout += stdoutDecoder.write(data); - if (originalStdoutListener) { - originalStdoutListener(data); - } - }; - const listeners = Object.assign(Object.assign({}, options === null || options === void 0 ? void 0 : options.listeners), { stdout: stdOutListener, stderr: stdErrListener }); - const exitCode = yield exec(commandLine, args, Object.assign(Object.assign({}, options), { listeners })); - //flush any remaining characters - stdout += stdoutDecoder.end(); - stderr += stderrDecoder.end(); - return { - exitCode, - stdout, - stderr - }; - }); -} -exports.getExecOutput = getExecOutput; -//# sourceMappingURL=exec.js.map - -/***/ }), - -/***/ 6665: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.argStringToArray = exports.ToolRunner = void 0; -const os = __importStar(__nccwpck_require__(70857)); -const events = __importStar(__nccwpck_require__(24434)); -const child = __importStar(__nccwpck_require__(35317)); -const path = __importStar(__nccwpck_require__(16928)); -const io = __importStar(__nccwpck_require__(94994)); -const ioUtil = __importStar(__nccwpck_require__(75207)); -const timers_1 = __nccwpck_require__(53557); -/* eslint-disable @typescript-eslint/unbound-method */ -const IS_WINDOWS = process.platform === 'win32'; -/* - * Class for running command line tools. Handles quoting and arg parsing in a platform agnostic way. - */ -class ToolRunner extends events.EventEmitter { - constructor(toolPath, args, options) { - super(); - if (!toolPath) { - throw new Error("Parameter 'toolPath' cannot be null or empty."); - } - this.toolPath = toolPath; - this.args = args || []; - this.options = options || {}; - } - _debug(message) { - if (this.options.listeners && this.options.listeners.debug) { - this.options.listeners.debug(message); - } - } - _getCommandString(options, noPrefix) { - const toolPath = this._getSpawnFileName(); - const args = this._getSpawnArgs(options); - let cmd = noPrefix ? '' : '[command]'; // omit prefix when piped to a second tool - if (IS_WINDOWS) { - // Windows + cmd file - if (this._isCmdFile()) { - cmd += toolPath; - for (const a of args) { - cmd += ` ${a}`; - } - } - // Windows + verbatim - else if (options.windowsVerbatimArguments) { - cmd += `"${toolPath}"`; - for (const a of args) { - cmd += ` ${a}`; - } - } - // Windows (regular) - else { - cmd += this._windowsQuoteCmdArg(toolPath); - for (const a of args) { - cmd += ` ${this._windowsQuoteCmdArg(a)}`; - } - } - } - else { - // OSX/Linux - this can likely be improved with some form of quoting. - // creating processes on Unix is fundamentally different than Windows. - // on Unix, execvp() takes an arg array. - cmd += toolPath; - for (const a of args) { - cmd += ` ${a}`; - } - } - return cmd; - } - _processLineBuffer(data, strBuffer, onLine) { - try { - let s = strBuffer + data.toString(); - let n = s.indexOf(os.EOL); - while (n > -1) { - const line = s.substring(0, n); - onLine(line); - // the rest of the string ... - s = s.substring(n + os.EOL.length); - n = s.indexOf(os.EOL); - } - return s; - } - catch (err) { - // streaming lines to console is best effort. Don't fail a build. - this._debug(`error processing line. Failed with error ${err}`); - return ''; - } - } - _getSpawnFileName() { - if (IS_WINDOWS) { - if (this._isCmdFile()) { - return process.env['COMSPEC'] || 'cmd.exe'; - } - } - return this.toolPath; - } - _getSpawnArgs(options) { - if (IS_WINDOWS) { - if (this._isCmdFile()) { - let argline = `/D /S /C "${this._windowsQuoteCmdArg(this.toolPath)}`; - for (const a of this.args) { - argline += ' '; - argline += options.windowsVerbatimArguments - ? a - : this._windowsQuoteCmdArg(a); - } - argline += '"'; - return [argline]; - } - } - return this.args; - } - _endsWith(str, end) { - return str.endsWith(end); - } - _isCmdFile() { - const upperToolPath = this.toolPath.toUpperCase(); - return (this._endsWith(upperToolPath, '.CMD') || - this._endsWith(upperToolPath, '.BAT')); - } - _windowsQuoteCmdArg(arg) { - // for .exe, apply the normal quoting rules that libuv applies - if (!this._isCmdFile()) { - return this._uvQuoteCmdArg(arg); - } - // otherwise apply quoting rules specific to the cmd.exe command line parser. - // the libuv rules are generic and are not designed specifically for cmd.exe - // command line parser. - // - // for a detailed description of the cmd.exe command line parser, refer to - // http://stackoverflow.com/questions/4094699/how-does-the-windows-command-interpreter-cmd-exe-parse-scripts/7970912#7970912 - // need quotes for empty arg - if (!arg) { - return '""'; - } - // determine whether the arg needs to be quoted - const cmdSpecialChars = [ - ' ', - '\t', - '&', - '(', - ')', - '[', - ']', - '{', - '}', - '^', - '=', - ';', - '!', - "'", - '+', - ',', - '`', - '~', - '|', - '<', - '>', - '"' - ]; - let needsQuotes = false; - for (const char of arg) { - if (cmdSpecialChars.some(x => x === char)) { - needsQuotes = true; - break; - } - } - // short-circuit if quotes not needed - if (!needsQuotes) { - return arg; - } - // the following quoting rules are very similar to the rules that by libuv applies. - // - // 1) wrap the string in quotes - // - // 2) double-up quotes - i.e. " => "" - // - // this is different from the libuv quoting rules. libuv replaces " with \", which unfortunately - // doesn't work well with a cmd.exe command line. - // - // note, replacing " with "" also works well if the arg is passed to a downstream .NET console app. - // for example, the command line: - // foo.exe "myarg:""my val""" - // is parsed by a .NET console app into an arg array: - // [ "myarg:\"my val\"" ] - // which is the same end result when applying libuv quoting rules. although the actual - // command line from libuv quoting rules would look like: - // foo.exe "myarg:\"my val\"" - // - // 3) double-up slashes that precede a quote, - // e.g. hello \world => "hello \world" - // hello\"world => "hello\\""world" - // hello\\"world => "hello\\\\""world" - // hello world\ => "hello world\\" - // - // technically this is not required for a cmd.exe command line, or the batch argument parser. - // the reasons for including this as a .cmd quoting rule are: - // - // a) this is optimized for the scenario where the argument is passed from the .cmd file to an - // external program. many programs (e.g. .NET console apps) rely on the slash-doubling rule. - // - // b) it's what we've been doing previously (by deferring to node default behavior) and we - // haven't heard any complaints about that aspect. - // - // note, a weakness of the quoting rules chosen here, is that % is not escaped. in fact, % cannot be - // escaped when used on the command line directly - even though within a .cmd file % can be escaped - // by using %%. - // - // the saving grace is, on the command line, %var% is left as-is if var is not defined. this contrasts - // the line parsing rules within a .cmd file, where if var is not defined it is replaced with nothing. - // - // one option that was explored was replacing % with ^% - i.e. %var% => ^%var^%. this hack would - // often work, since it is unlikely that var^ would exist, and the ^ character is removed when the - // variable is used. the problem, however, is that ^ is not removed when %* is used to pass the args - // to an external program. - // - // an unexplored potential solution for the % escaping problem, is to create a wrapper .cmd file. - // % can be escaped within a .cmd file. - let reverse = '"'; - let quoteHit = true; - for (let i = arg.length; i > 0; i--) { - // walk the string in reverse - reverse += arg[i - 1]; - if (quoteHit && arg[i - 1] === '\\') { - reverse += '\\'; // double the slash - } - else if (arg[i - 1] === '"') { - quoteHit = true; - reverse += '"'; // double the quote - } - else { - quoteHit = false; - } - } - reverse += '"'; - return reverse - .split('') - .reverse() - .join(''); - } - _uvQuoteCmdArg(arg) { - // Tool runner wraps child_process.spawn() and needs to apply the same quoting as - // Node in certain cases where the undocumented spawn option windowsVerbatimArguments - // is used. - // - // Since this function is a port of quote_cmd_arg from Node 4.x (technically, lib UV, - // see https://github.com/nodejs/node/blob/v4.x/deps/uv/src/win/process.c for details), - // pasting copyright notice from Node within this function: - // - // Copyright Joyent, Inc. and other Node contributors. All rights reserved. - // - // Permission is hereby granted, free of charge, to any person obtaining a copy - // of this software and associated documentation files (the "Software"), to - // deal in the Software without restriction, including without limitation the - // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or - // sell copies of the Software, and to permit persons to whom the Software is - // furnished to do so, subject to the following conditions: - // - // The above copyright notice and this permission notice shall be included in - // all copies or substantial portions of the Software. - // - // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS - // IN THE SOFTWARE. - if (!arg) { - // Need double quotation for empty argument - return '""'; - } - if (!arg.includes(' ') && !arg.includes('\t') && !arg.includes('"')) { - // No quotation needed - return arg; - } - if (!arg.includes('"') && !arg.includes('\\')) { - // No embedded double quotes or backslashes, so I can just wrap - // quote marks around the whole thing. - return `"${arg}"`; - } - // Expected input/output: - // input : hello"world - // output: "hello\"world" - // input : hello""world - // output: "hello\"\"world" - // input : hello\world - // output: hello\world - // input : hello\\world - // output: hello\\world - // input : hello\"world - // output: "hello\\\"world" - // input : hello\\"world - // output: "hello\\\\\"world" - // input : hello world\ - // output: "hello world\\" - note the comment in libuv actually reads "hello world\" - // but it appears the comment is wrong, it should be "hello world\\" - let reverse = '"'; - let quoteHit = true; - for (let i = arg.length; i > 0; i--) { - // walk the string in reverse - reverse += arg[i - 1]; - if (quoteHit && arg[i - 1] === '\\') { - reverse += '\\'; - } - else if (arg[i - 1] === '"') { - quoteHit = true; - reverse += '\\'; - } - else { - quoteHit = false; - } - } - reverse += '"'; - return reverse - .split('') - .reverse() - .join(''); - } - _cloneExecOptions(options) { - options = options || {}; - const result = { - cwd: options.cwd || process.cwd(), - env: options.env || process.env, - silent: options.silent || false, - windowsVerbatimArguments: options.windowsVerbatimArguments || false, - failOnStdErr: options.failOnStdErr || false, - ignoreReturnCode: options.ignoreReturnCode || false, - delay: options.delay || 10000 - }; - result.outStream = options.outStream || process.stdout; - result.errStream = options.errStream || process.stderr; - return result; - } - _getSpawnOptions(options, toolPath) { - options = options || {}; - const result = {}; - result.cwd = options.cwd; - result.env = options.env; - result['windowsVerbatimArguments'] = - options.windowsVerbatimArguments || this._isCmdFile(); - if (options.windowsVerbatimArguments) { - result.argv0 = `"${toolPath}"`; - } - return result; - } - /** - * Exec a tool. - * Output will be streamed to the live console. - * Returns promise with return code - * - * @param tool path to tool to exec - * @param options optional exec options. See ExecOptions - * @returns number - */ - exec() { - return __awaiter(this, void 0, void 0, function* () { - // root the tool path if it is unrooted and contains relative pathing - if (!ioUtil.isRooted(this.toolPath) && - (this.toolPath.includes('/') || - (IS_WINDOWS && this.toolPath.includes('\\')))) { - // prefer options.cwd if it is specified, however options.cwd may also need to be rooted - this.toolPath = path.resolve(process.cwd(), this.options.cwd || process.cwd(), this.toolPath); - } - // if the tool is only a file name, then resolve it from the PATH - // otherwise verify it exists (add extension on Windows if necessary) - this.toolPath = yield io.which(this.toolPath, true); - return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { - this._debug(`exec tool: ${this.toolPath}`); - this._debug('arguments:'); - for (const arg of this.args) { - this._debug(` ${arg}`); - } - const optionsNonNull = this._cloneExecOptions(this.options); - if (!optionsNonNull.silent && optionsNonNull.outStream) { - optionsNonNull.outStream.write(this._getCommandString(optionsNonNull) + os.EOL); - } - const state = new ExecState(optionsNonNull, this.toolPath); - state.on('debug', (message) => { - this._debug(message); - }); - if (this.options.cwd && !(yield ioUtil.exists(this.options.cwd))) { - return reject(new Error(`The cwd: ${this.options.cwd} does not exist!`)); - } - const fileName = this._getSpawnFileName(); - const cp = child.spawn(fileName, this._getSpawnArgs(optionsNonNull), this._getSpawnOptions(this.options, fileName)); - let stdbuffer = ''; - if (cp.stdout) { - cp.stdout.on('data', (data) => { - if (this.options.listeners && this.options.listeners.stdout) { - this.options.listeners.stdout(data); - } - if (!optionsNonNull.silent && optionsNonNull.outStream) { - optionsNonNull.outStream.write(data); - } - stdbuffer = this._processLineBuffer(data, stdbuffer, (line) => { - if (this.options.listeners && this.options.listeners.stdline) { - this.options.listeners.stdline(line); - } - }); - }); - } - let errbuffer = ''; - if (cp.stderr) { - cp.stderr.on('data', (data) => { - state.processStderr = true; - if (this.options.listeners && this.options.listeners.stderr) { - this.options.listeners.stderr(data); - } - if (!optionsNonNull.silent && - optionsNonNull.errStream && - optionsNonNull.outStream) { - const s = optionsNonNull.failOnStdErr - ? optionsNonNull.errStream - : optionsNonNull.outStream; - s.write(data); - } - errbuffer = this._processLineBuffer(data, errbuffer, (line) => { - if (this.options.listeners && this.options.listeners.errline) { - this.options.listeners.errline(line); - } - }); - }); - } - cp.on('error', (err) => { - state.processError = err.message; - state.processExited = true; - state.processClosed = true; - state.CheckComplete(); - }); - cp.on('exit', (code) => { - state.processExitCode = code; - state.processExited = true; - this._debug(`Exit code ${code} received from tool '${this.toolPath}'`); - state.CheckComplete(); - }); - cp.on('close', (code) => { - state.processExitCode = code; - state.processExited = true; - state.processClosed = true; - this._debug(`STDIO streams have closed for tool '${this.toolPath}'`); - state.CheckComplete(); - }); - state.on('done', (error, exitCode) => { - if (stdbuffer.length > 0) { - this.emit('stdline', stdbuffer); - } - if (errbuffer.length > 0) { - this.emit('errline', errbuffer); - } - cp.removeAllListeners(); - if (error) { - reject(error); - } - else { - resolve(exitCode); - } - }); - if (this.options.input) { - if (!cp.stdin) { - throw new Error('child process missing stdin'); - } - cp.stdin.end(this.options.input); - } - })); - }); - } -} -exports.ToolRunner = ToolRunner; -/** - * Convert an arg string to an array of args. Handles escaping + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. * - * @param argString string of arguments - * @returns string[] array of arguments - */ -function argStringToArray(argString) { - const args = []; - let inQuotes = false; - let escaped = false; - let arg = ''; - function append(c) { - // we only escape double quotes. - if (escaped && c !== '"') { - arg += '\\'; - } - arg += c; - escaped = false; - } - for (let i = 0; i < argString.length; i++) { - const c = argString.charAt(i); - if (c === '"') { - if (!escaped) { - inQuotes = !inQuotes; - } - else { - append(c); - } - continue; - } - if (c === '\\' && escaped) { - append(c); - continue; - } - if (c === '\\' && inQuotes) { - escaped = true; - continue; - } - if (c === ' ' && !inQuotes) { - if (arg.length > 0) { - args.push(arg); - arg = ''; - } - continue; - } - append(c); - } - if (arg.length > 0) { - args.push(arg.trim()); - } - return args; -} -exports.argStringToArray = argStringToArray; -class ExecState extends events.EventEmitter { - constructor(options, toolPath) { - super(); - this.processClosed = false; // tracks whether the process has exited and stdio is closed - this.processError = ''; - this.processExitCode = 0; - this.processExited = false; // tracks whether the process has exited - this.processStderr = false; // tracks whether stderr was written to - this.delay = 10000; // 10 seconds - this.done = false; - this.timeout = null; - if (!toolPath) { - throw new Error('toolPath must not be empty'); - } - this.options = options; - this.toolPath = toolPath; - if (options.delay) { - this.delay = options.delay; - } - } - CheckComplete() { - if (this.done) { - return; - } - if (this.processClosed) { - this._setResult(); - } - else if (this.processExited) { - this.timeout = timers_1.setTimeout(ExecState.HandleTimeout, this.delay, this); - } - } - _debug(message) { - this.emit('debug', message); - } - _setResult() { - // determine whether there is an error - let error; - if (this.processExited) { - if (this.processError) { - error = new Error(`There was an error when attempting to execute the process '${this.toolPath}'. This may indicate the process failed to start. Error: ${this.processError}`); - } - else if (this.processExitCode !== 0 && !this.options.ignoreReturnCode) { - error = new Error(`The process '${this.toolPath}' failed with exit code ${this.processExitCode}`); - } - else if (this.processStderr && this.options.failOnStdErr) { - error = new Error(`The process '${this.toolPath}' failed because one or more lines were written to the STDERR stream`); - } - } - // clear the timeout - if (this.timeout) { - clearTimeout(this.timeout); - this.timeout = null; - } - this.done = true; - this.emit('done', error, this.processExitCode); - } - static HandleTimeout(state) { - if (state.done) { - return; - } - if (!state.processClosed && state.processExited) { - const message = `The STDIO streams did not close within ${state.delay / - 1000} seconds of the exit event from process '${state.toolPath}'. This may indicate a child process inherited the STDIO streams and has not yet exited.`; - state._debug(message); - } - state._setResult(); - } -} -//# sourceMappingURL=toolrunner.js.map - -/***/ }), - -/***/ 51648: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Context = void 0; -const fs_1 = __nccwpck_require__(79896); -const os_1 = __nccwpck_require__(70857); -class Context { - /** - * Hydrate the context from the environment - */ - constructor() { - var _a, _b, _c; - this.payload = {}; - if (process.env.GITHUB_EVENT_PATH) { - if ((0, fs_1.existsSync)(process.env.GITHUB_EVENT_PATH)) { - this.payload = JSON.parse((0, fs_1.readFileSync)(process.env.GITHUB_EVENT_PATH, { encoding: 'utf8' })); - } - else { - const path = process.env.GITHUB_EVENT_PATH; - process.stdout.write(`GITHUB_EVENT_PATH ${path} does not exist${os_1.EOL}`); - } - } - this.eventName = process.env.GITHUB_EVENT_NAME; - this.sha = process.env.GITHUB_SHA; - this.ref = process.env.GITHUB_REF; - this.workflow = process.env.GITHUB_WORKFLOW; - this.action = process.env.GITHUB_ACTION; - this.actor = process.env.GITHUB_ACTOR; - this.job = process.env.GITHUB_JOB; - this.runNumber = parseInt(process.env.GITHUB_RUN_NUMBER, 10); - this.runId = parseInt(process.env.GITHUB_RUN_ID, 10); - this.apiUrl = (_a = process.env.GITHUB_API_URL) !== null && _a !== void 0 ? _a : `https://api.github.com`; - this.serverUrl = (_b = process.env.GITHUB_SERVER_URL) !== null && _b !== void 0 ? _b : `https://github.com`; - this.graphqlUrl = - (_c = process.env.GITHUB_GRAPHQL_URL) !== null && _c !== void 0 ? _c : `https://api.github.com/graphql`; - } - get issue() { - const payload = this.payload; - return Object.assign(Object.assign({}, this.repo), { number: (payload.issue || payload.pull_request || payload).number }); - } - get repo() { - if (process.env.GITHUB_REPOSITORY) { - const [owner, repo] = process.env.GITHUB_REPOSITORY.split('/'); - return { owner, repo }; - } - if (this.payload.repository) { - return { - owner: this.payload.repository.owner.login, - repo: this.payload.repository.name - }; - } - throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'"); - } -} -exports.Context = Context; -//# sourceMappingURL=context.js.map - -/***/ }), - -/***/ 93228: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.getOctokit = exports.context = void 0; -const Context = __importStar(__nccwpck_require__(51648)); -const utils_1 = __nccwpck_require__(38006); -exports.context = new Context.Context(); -/** - * Returns a hydrated octokit ready to use for GitHub Actions + * 3. Neither the name of Salesforce.com nor the names of its contributors may + * be used to endorse or promote products derived from this software without + * specific prior written permission. * - * @param token the repo PAT or GITHUB_TOKEN - * @param options other options to set - */ -function getOctokit(token, options, ...additionalPlugins) { - const GitHubWithPlugins = utils_1.GitHub.plugin(...additionalPlugins); - return new GitHubWithPlugins((0, utils_1.getOctokitOptions)(token, options)); -} -exports.getOctokit = getOctokit; -//# sourceMappingURL=github.js.map - -/***/ }), - -/***/ 65156: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.getApiBaseUrl = exports.getProxyFetch = exports.getProxyAgentDispatcher = exports.getProxyAgent = exports.getAuthString = void 0; -const httpClient = __importStar(__nccwpck_require__(54844)); -const undici_1 = __nccwpck_require__(46752); -function getAuthString(token, options) { - if (!token && !options.auth) { - throw new Error('Parameter token or opts.auth is required'); - } - else if (token && options.auth) { - throw new Error('Parameters token and opts.auth may not both be specified'); - } - return typeof options.auth === 'string' ? options.auth : `token ${token}`; -} -exports.getAuthString = getAuthString; -function getProxyAgent(destinationUrl) { - const hc = new httpClient.HttpClient(); - return hc.getAgent(destinationUrl); -} -exports.getProxyAgent = getProxyAgent; -function getProxyAgentDispatcher(destinationUrl) { - const hc = new httpClient.HttpClient(); - return hc.getAgentDispatcher(destinationUrl); -} -exports.getProxyAgentDispatcher = getProxyAgentDispatcher; -function getProxyFetch(destinationUrl) { - const httpDispatcher = getProxyAgentDispatcher(destinationUrl); - const proxyFetch = (url, opts) => __awaiter(this, void 0, void 0, function* () { - return (0, undici_1.fetch)(url, Object.assign(Object.assign({}, opts), { dispatcher: httpDispatcher })); - }); - return proxyFetch; -} -exports.getProxyFetch = getProxyFetch; -function getApiBaseUrl() { - return process.env['GITHUB_API_URL'] || 'https://api.github.com'; -} -exports.getApiBaseUrl = getApiBaseUrl; -//# sourceMappingURL=utils.js.map - -/***/ }), - -/***/ 38006: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.getOctokitOptions = exports.GitHub = exports.defaults = exports.context = void 0; -const Context = __importStar(__nccwpck_require__(51648)); -const Utils = __importStar(__nccwpck_require__(65156)); -// octokit + plugins -const core_1 = __nccwpck_require__(61897); -const plugin_rest_endpoint_methods_1 = __nccwpck_require__(75726); -const plugin_paginate_rest_1 = __nccwpck_require__(37731); -exports.context = new Context.Context(); -const baseUrl = Utils.getApiBaseUrl(); -exports.defaults = { - baseUrl, - request: { - agent: Utils.getProxyAgent(baseUrl), - fetch: Utils.getProxyFetch(baseUrl) - } -}; -exports.GitHub = core_1.Octokit.plugin(plugin_rest_endpoint_methods_1.restEndpointMethods, plugin_paginate_rest_1.paginateRest).defaults(exports.defaults); -/** - * Convience function to correctly format Octokit Options to pass into the constructor. - * - * @param token the repo PAT or GITHUB_TOKEN - * @param options other options to set - */ -function getOctokitOptions(token, options) { - const opts = Object.assign({}, options || {}); // Shallow clone - don't mutate the object provided by the caller - // Auth - const auth = Utils.getAuthString(token, opts); - if (auth) { - opts.auth = auth; - } - return opts; -} -exports.getOctokitOptions = getOctokitOptions; -//# sourceMappingURL=utils.js.map - -/***/ }), - -/***/ 37731: -/***/ ((module) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// pkg/dist-src/index.js -var dist_src_exports = {}; -__export(dist_src_exports, { - composePaginateRest: () => composePaginateRest, - isPaginatingEndpoint: () => isPaginatingEndpoint, - paginateRest: () => paginateRest, - paginatingEndpoints: () => paginatingEndpoints -}); -module.exports = __toCommonJS(dist_src_exports); - -// pkg/dist-src/version.js -var VERSION = "9.2.1"; - -// pkg/dist-src/normalize-paginated-list-response.js -function normalizePaginatedListResponse(response) { - if (!response.data) { - return { - ...response, - data: [] - }; - } - const responseNeedsNormalization = "total_count" in response.data && !("url" in response.data); - if (!responseNeedsNormalization) - return response; - const incompleteResults = response.data.incomplete_results; - const repositorySelection = response.data.repository_selection; - const totalCount = response.data.total_count; - delete response.data.incomplete_results; - delete response.data.repository_selection; - delete response.data.total_count; - const namespaceKey = Object.keys(response.data)[0]; - const data = response.data[namespaceKey]; - response.data = data; - if (typeof incompleteResults !== "undefined") { - response.data.incomplete_results = incompleteResults; - } - if (typeof repositorySelection !== "undefined") { - response.data.repository_selection = repositorySelection; - } - response.data.total_count = totalCount; - return response; -} - -// pkg/dist-src/iterator.js -function iterator(octokit, route, parameters) { - const options = typeof route === "function" ? route.endpoint(parameters) : octokit.request.endpoint(route, parameters); - const requestMethod = typeof route === "function" ? route : octokit.request; - const method = options.method; - const headers = options.headers; - let url = options.url; - return { - [Symbol.asyncIterator]: () => ({ - async next() { - if (!url) - return { done: true }; - try { - const response = await requestMethod({ method, url, headers }); - const normalizedResponse = normalizePaginatedListResponse(response); - url = ((normalizedResponse.headers.link || "").match( - /<([^>]+)>;\s*rel="next"/ - ) || [])[1]; - return { value: normalizedResponse }; - } catch (error) { - if (error.status !== 409) - throw error; - url = ""; - return { - value: { - status: 200, - headers: {}, - data: [] - } - }; - } - } - }) - }; -} - -// pkg/dist-src/paginate.js -function paginate(octokit, route, parameters, mapFn) { - if (typeof parameters === "function") { - mapFn = parameters; - parameters = void 0; - } - return gather( - octokit, - [], - iterator(octokit, route, parameters)[Symbol.asyncIterator](), - mapFn - ); -} -function gather(octokit, results, iterator2, mapFn) { - return iterator2.next().then((result) => { - if (result.done) { - return results; - } - let earlyExit = false; - function done() { - earlyExit = true; - } - results = results.concat( - mapFn ? mapFn(result.value, done) : result.value.data - ); - if (earlyExit) { - return results; - } - return gather(octokit, results, iterator2, mapFn); - }); -} - -// pkg/dist-src/compose-paginate.js -var composePaginateRest = Object.assign(paginate, { - iterator -}); - -// pkg/dist-src/generated/paginating-endpoints.js -var paginatingEndpoints = [ - "GET /advisories", - "GET /app/hook/deliveries", - "GET /app/installation-requests", - "GET /app/installations", - "GET /assignments/{assignment_id}/accepted_assignments", - "GET /classrooms", - "GET /classrooms/{classroom_id}/assignments", - "GET /enterprises/{enterprise}/dependabot/alerts", - "GET /enterprises/{enterprise}/secret-scanning/alerts", - "GET /events", - "GET /gists", - "GET /gists/public", - "GET /gists/starred", - "GET /gists/{gist_id}/comments", - "GET /gists/{gist_id}/commits", - "GET /gists/{gist_id}/forks", - "GET /installation/repositories", - "GET /issues", - "GET /licenses", - "GET /marketplace_listing/plans", - "GET /marketplace_listing/plans/{plan_id}/accounts", - "GET /marketplace_listing/stubbed/plans", - "GET /marketplace_listing/stubbed/plans/{plan_id}/accounts", - "GET /networks/{owner}/{repo}/events", - "GET /notifications", - "GET /organizations", - "GET /orgs/{org}/actions/cache/usage-by-repository", - "GET /orgs/{org}/actions/permissions/repositories", - "GET /orgs/{org}/actions/runners", - "GET /orgs/{org}/actions/secrets", - "GET /orgs/{org}/actions/secrets/{secret_name}/repositories", - "GET /orgs/{org}/actions/variables", - "GET /orgs/{org}/actions/variables/{name}/repositories", - "GET /orgs/{org}/blocks", - "GET /orgs/{org}/code-scanning/alerts", - "GET /orgs/{org}/codespaces", - "GET /orgs/{org}/codespaces/secrets", - "GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories", - "GET /orgs/{org}/copilot/billing/seats", - "GET /orgs/{org}/dependabot/alerts", - "GET /orgs/{org}/dependabot/secrets", - "GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories", - "GET /orgs/{org}/events", - "GET /orgs/{org}/failed_invitations", - "GET /orgs/{org}/hooks", - "GET /orgs/{org}/hooks/{hook_id}/deliveries", - "GET /orgs/{org}/installations", - "GET /orgs/{org}/invitations", - "GET /orgs/{org}/invitations/{invitation_id}/teams", - "GET /orgs/{org}/issues", - "GET /orgs/{org}/members", - "GET /orgs/{org}/members/{username}/codespaces", - "GET /orgs/{org}/migrations", - "GET /orgs/{org}/migrations/{migration_id}/repositories", - "GET /orgs/{org}/organization-roles/{role_id}/teams", - "GET /orgs/{org}/organization-roles/{role_id}/users", - "GET /orgs/{org}/outside_collaborators", - "GET /orgs/{org}/packages", - "GET /orgs/{org}/packages/{package_type}/{package_name}/versions", - "GET /orgs/{org}/personal-access-token-requests", - "GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories", - "GET /orgs/{org}/personal-access-tokens", - "GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories", - "GET /orgs/{org}/projects", - "GET /orgs/{org}/properties/values", - "GET /orgs/{org}/public_members", - "GET /orgs/{org}/repos", - "GET /orgs/{org}/rulesets", - "GET /orgs/{org}/rulesets/rule-suites", - "GET /orgs/{org}/secret-scanning/alerts", - "GET /orgs/{org}/security-advisories", - "GET /orgs/{org}/teams", - "GET /orgs/{org}/teams/{team_slug}/discussions", - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments", - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions", - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions", - "GET /orgs/{org}/teams/{team_slug}/invitations", - "GET /orgs/{org}/teams/{team_slug}/members", - "GET /orgs/{org}/teams/{team_slug}/projects", - "GET /orgs/{org}/teams/{team_slug}/repos", - "GET /orgs/{org}/teams/{team_slug}/teams", - "GET /projects/columns/{column_id}/cards", - "GET /projects/{project_id}/collaborators", - "GET /projects/{project_id}/columns", - "GET /repos/{owner}/{repo}/actions/artifacts", - "GET /repos/{owner}/{repo}/actions/caches", - "GET /repos/{owner}/{repo}/actions/organization-secrets", - "GET /repos/{owner}/{repo}/actions/organization-variables", - "GET /repos/{owner}/{repo}/actions/runners", - "GET /repos/{owner}/{repo}/actions/runs", - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts", - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs", - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs", - "GET /repos/{owner}/{repo}/actions/secrets", - "GET /repos/{owner}/{repo}/actions/variables", - "GET /repos/{owner}/{repo}/actions/workflows", - "GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs", - "GET /repos/{owner}/{repo}/activity", - "GET /repos/{owner}/{repo}/assignees", - "GET /repos/{owner}/{repo}/branches", - "GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations", - "GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs", - "GET /repos/{owner}/{repo}/code-scanning/alerts", - "GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances", - "GET /repos/{owner}/{repo}/code-scanning/analyses", - "GET /repos/{owner}/{repo}/codespaces", - "GET /repos/{owner}/{repo}/codespaces/devcontainers", - "GET /repos/{owner}/{repo}/codespaces/secrets", - "GET /repos/{owner}/{repo}/collaborators", - "GET /repos/{owner}/{repo}/comments", - "GET /repos/{owner}/{repo}/comments/{comment_id}/reactions", - "GET /repos/{owner}/{repo}/commits", - "GET /repos/{owner}/{repo}/commits/{commit_sha}/comments", - "GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls", - "GET /repos/{owner}/{repo}/commits/{ref}/check-runs", - "GET /repos/{owner}/{repo}/commits/{ref}/check-suites", - "GET /repos/{owner}/{repo}/commits/{ref}/status", - "GET /repos/{owner}/{repo}/commits/{ref}/statuses", - "GET /repos/{owner}/{repo}/contributors", - "GET /repos/{owner}/{repo}/dependabot/alerts", - "GET /repos/{owner}/{repo}/dependabot/secrets", - "GET /repos/{owner}/{repo}/deployments", - "GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses", - "GET /repos/{owner}/{repo}/environments", - "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies", - "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps", - "GET /repos/{owner}/{repo}/events", - "GET /repos/{owner}/{repo}/forks", - "GET /repos/{owner}/{repo}/hooks", - "GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries", - "GET /repos/{owner}/{repo}/invitations", - "GET /repos/{owner}/{repo}/issues", - "GET /repos/{owner}/{repo}/issues/comments", - "GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions", - "GET /repos/{owner}/{repo}/issues/events", - "GET /repos/{owner}/{repo}/issues/{issue_number}/comments", - "GET /repos/{owner}/{repo}/issues/{issue_number}/events", - "GET /repos/{owner}/{repo}/issues/{issue_number}/labels", - "GET /repos/{owner}/{repo}/issues/{issue_number}/reactions", - "GET /repos/{owner}/{repo}/issues/{issue_number}/timeline", - "GET /repos/{owner}/{repo}/keys", - "GET /repos/{owner}/{repo}/labels", - "GET /repos/{owner}/{repo}/milestones", - "GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels", - "GET /repos/{owner}/{repo}/notifications", - "GET /repos/{owner}/{repo}/pages/builds", - "GET /repos/{owner}/{repo}/projects", - "GET /repos/{owner}/{repo}/pulls", - "GET /repos/{owner}/{repo}/pulls/comments", - "GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions", - "GET /repos/{owner}/{repo}/pulls/{pull_number}/comments", - "GET /repos/{owner}/{repo}/pulls/{pull_number}/commits", - "GET /repos/{owner}/{repo}/pulls/{pull_number}/files", - "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews", - "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments", - "GET /repos/{owner}/{repo}/releases", - "GET /repos/{owner}/{repo}/releases/{release_id}/assets", - "GET /repos/{owner}/{repo}/releases/{release_id}/reactions", - "GET /repos/{owner}/{repo}/rules/branches/{branch}", - "GET /repos/{owner}/{repo}/rulesets", - "GET /repos/{owner}/{repo}/rulesets/rule-suites", - "GET /repos/{owner}/{repo}/secret-scanning/alerts", - "GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations", - "GET /repos/{owner}/{repo}/security-advisories", - "GET /repos/{owner}/{repo}/stargazers", - "GET /repos/{owner}/{repo}/subscribers", - "GET /repos/{owner}/{repo}/tags", - "GET /repos/{owner}/{repo}/teams", - "GET /repos/{owner}/{repo}/topics", - "GET /repositories", - "GET /repositories/{repository_id}/environments/{environment_name}/secrets", - "GET /repositories/{repository_id}/environments/{environment_name}/variables", - "GET /search/code", - "GET /search/commits", - "GET /search/issues", - "GET /search/labels", - "GET /search/repositories", - "GET /search/topics", - "GET /search/users", - "GET /teams/{team_id}/discussions", - "GET /teams/{team_id}/discussions/{discussion_number}/comments", - "GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions", - "GET /teams/{team_id}/discussions/{discussion_number}/reactions", - "GET /teams/{team_id}/invitations", - "GET /teams/{team_id}/members", - "GET /teams/{team_id}/projects", - "GET /teams/{team_id}/repos", - "GET /teams/{team_id}/teams", - "GET /user/blocks", - "GET /user/codespaces", - "GET /user/codespaces/secrets", - "GET /user/emails", - "GET /user/followers", - "GET /user/following", - "GET /user/gpg_keys", - "GET /user/installations", - "GET /user/installations/{installation_id}/repositories", - "GET /user/issues", - "GET /user/keys", - "GET /user/marketplace_purchases", - "GET /user/marketplace_purchases/stubbed", - "GET /user/memberships/orgs", - "GET /user/migrations", - "GET /user/migrations/{migration_id}/repositories", - "GET /user/orgs", - "GET /user/packages", - "GET /user/packages/{package_type}/{package_name}/versions", - "GET /user/public_emails", - "GET /user/repos", - "GET /user/repository_invitations", - "GET /user/social_accounts", - "GET /user/ssh_signing_keys", - "GET /user/starred", - "GET /user/subscriptions", - "GET /user/teams", - "GET /users", - "GET /users/{username}/events", - "GET /users/{username}/events/orgs/{org}", - "GET /users/{username}/events/public", - "GET /users/{username}/followers", - "GET /users/{username}/following", - "GET /users/{username}/gists", - "GET /users/{username}/gpg_keys", - "GET /users/{username}/keys", - "GET /users/{username}/orgs", - "GET /users/{username}/packages", - "GET /users/{username}/projects", - "GET /users/{username}/received_events", - "GET /users/{username}/received_events/public", - "GET /users/{username}/repos", - "GET /users/{username}/social_accounts", - "GET /users/{username}/ssh_signing_keys", - "GET /users/{username}/starred", - "GET /users/{username}/subscriptions" -]; - -// pkg/dist-src/paginating-endpoints.js -function isPaginatingEndpoint(arg) { - if (typeof arg === "string") { - return paginatingEndpoints.includes(arg); - } else { - return false; - } -} - -// pkg/dist-src/index.js -function paginateRest(octokit) { - return { - paginate: Object.assign(paginate.bind(null, octokit), { - iterator: iterator.bind(null, octokit) - }) - }; -} -paginateRest.VERSION = VERSION; -// Annotate the CommonJS export names for ESM import in node: -0 && (0); - - -/***/ }), - -/***/ 75726: -/***/ ((module) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// pkg/dist-src/index.js -var dist_src_exports = {}; -__export(dist_src_exports, { - legacyRestEndpointMethods: () => legacyRestEndpointMethods, - restEndpointMethods: () => restEndpointMethods -}); -module.exports = __toCommonJS(dist_src_exports); - -// pkg/dist-src/version.js -var VERSION = "10.4.1"; - -// pkg/dist-src/generated/endpoints.js -var Endpoints = { - actions: { - addCustomLabelsToSelfHostedRunnerForOrg: [ - "POST /orgs/{org}/actions/runners/{runner_id}/labels" - ], - addCustomLabelsToSelfHostedRunnerForRepo: [ - "POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels" - ], - addSelectedRepoToOrgSecret: [ - "PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}" - ], - addSelectedRepoToOrgVariable: [ - "PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}" - ], - approveWorkflowRun: [ - "POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve" - ], - cancelWorkflowRun: [ - "POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel" - ], - createEnvironmentVariable: [ - "POST /repositories/{repository_id}/environments/{environment_name}/variables" - ], - createOrUpdateEnvironmentSecret: [ - "PUT /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}" - ], - createOrUpdateOrgSecret: ["PUT /orgs/{org}/actions/secrets/{secret_name}"], - createOrUpdateRepoSecret: [ - "PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}" - ], - createOrgVariable: ["POST /orgs/{org}/actions/variables"], - createRegistrationTokenForOrg: [ - "POST /orgs/{org}/actions/runners/registration-token" - ], - createRegistrationTokenForRepo: [ - "POST /repos/{owner}/{repo}/actions/runners/registration-token" - ], - createRemoveTokenForOrg: ["POST /orgs/{org}/actions/runners/remove-token"], - createRemoveTokenForRepo: [ - "POST /repos/{owner}/{repo}/actions/runners/remove-token" - ], - createRepoVariable: ["POST /repos/{owner}/{repo}/actions/variables"], - createWorkflowDispatch: [ - "POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches" - ], - deleteActionsCacheById: [ - "DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}" - ], - deleteActionsCacheByKey: [ - "DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}" - ], - deleteArtifact: [ - "DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}" - ], - deleteEnvironmentSecret: [ - "DELETE /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}" - ], - deleteEnvironmentVariable: [ - "DELETE /repositories/{repository_id}/environments/{environment_name}/variables/{name}" - ], - deleteOrgSecret: ["DELETE /orgs/{org}/actions/secrets/{secret_name}"], - deleteOrgVariable: ["DELETE /orgs/{org}/actions/variables/{name}"], - deleteRepoSecret: [ - "DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}" - ], - deleteRepoVariable: [ - "DELETE /repos/{owner}/{repo}/actions/variables/{name}" - ], - deleteSelfHostedRunnerFromOrg: [ - "DELETE /orgs/{org}/actions/runners/{runner_id}" - ], - deleteSelfHostedRunnerFromRepo: [ - "DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}" - ], - deleteWorkflowRun: ["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"], - deleteWorkflowRunLogs: [ - "DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs" - ], - disableSelectedRepositoryGithubActionsOrganization: [ - "DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}" - ], - disableWorkflow: [ - "PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable" - ], - downloadArtifact: [ - "GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}" - ], - downloadJobLogsForWorkflowRun: [ - "GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs" - ], - downloadWorkflowRunAttemptLogs: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs" - ], - downloadWorkflowRunLogs: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs" - ], - enableSelectedRepositoryGithubActionsOrganization: [ - "PUT /orgs/{org}/actions/permissions/repositories/{repository_id}" - ], - enableWorkflow: [ - "PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable" - ], - forceCancelWorkflowRun: [ - "POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel" - ], - generateRunnerJitconfigForOrg: [ - "POST /orgs/{org}/actions/runners/generate-jitconfig" - ], - generateRunnerJitconfigForRepo: [ - "POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig" - ], - getActionsCacheList: ["GET /repos/{owner}/{repo}/actions/caches"], - getActionsCacheUsage: ["GET /repos/{owner}/{repo}/actions/cache/usage"], - getActionsCacheUsageByRepoForOrg: [ - "GET /orgs/{org}/actions/cache/usage-by-repository" - ], - getActionsCacheUsageForOrg: ["GET /orgs/{org}/actions/cache/usage"], - getAllowedActionsOrganization: [ - "GET /orgs/{org}/actions/permissions/selected-actions" - ], - getAllowedActionsRepository: [ - "GET /repos/{owner}/{repo}/actions/permissions/selected-actions" - ], - getArtifact: ["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"], - getCustomOidcSubClaimForRepo: [ - "GET /repos/{owner}/{repo}/actions/oidc/customization/sub" - ], - getEnvironmentPublicKey: [ - "GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key" - ], - getEnvironmentSecret: [ - "GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}" - ], - getEnvironmentVariable: [ - "GET /repositories/{repository_id}/environments/{environment_name}/variables/{name}" - ], - getGithubActionsDefaultWorkflowPermissionsOrganization: [ - "GET /orgs/{org}/actions/permissions/workflow" - ], - getGithubActionsDefaultWorkflowPermissionsRepository: [ - "GET /repos/{owner}/{repo}/actions/permissions/workflow" - ], - getGithubActionsPermissionsOrganization: [ - "GET /orgs/{org}/actions/permissions" - ], - getGithubActionsPermissionsRepository: [ - "GET /repos/{owner}/{repo}/actions/permissions" - ], - getJobForWorkflowRun: ["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"], - getOrgPublicKey: ["GET /orgs/{org}/actions/secrets/public-key"], - getOrgSecret: ["GET /orgs/{org}/actions/secrets/{secret_name}"], - getOrgVariable: ["GET /orgs/{org}/actions/variables/{name}"], - getPendingDeploymentsForRun: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments" - ], - getRepoPermissions: [ - "GET /repos/{owner}/{repo}/actions/permissions", - {}, - { renamed: ["actions", "getGithubActionsPermissionsRepository"] } - ], - getRepoPublicKey: ["GET /repos/{owner}/{repo}/actions/secrets/public-key"], - getRepoSecret: ["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"], - getRepoVariable: ["GET /repos/{owner}/{repo}/actions/variables/{name}"], - getReviewsForRun: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals" - ], - getSelfHostedRunnerForOrg: ["GET /orgs/{org}/actions/runners/{runner_id}"], - getSelfHostedRunnerForRepo: [ - "GET /repos/{owner}/{repo}/actions/runners/{runner_id}" - ], - getWorkflow: ["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"], - getWorkflowAccessToRepository: [ - "GET /repos/{owner}/{repo}/actions/permissions/access" - ], - getWorkflowRun: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}"], - getWorkflowRunAttempt: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}" - ], - getWorkflowRunUsage: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing" - ], - getWorkflowUsage: [ - "GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing" - ], - listArtifactsForRepo: ["GET /repos/{owner}/{repo}/actions/artifacts"], - listEnvironmentSecrets: [ - "GET /repositories/{repository_id}/environments/{environment_name}/secrets" - ], - listEnvironmentVariables: [ - "GET /repositories/{repository_id}/environments/{environment_name}/variables" - ], - listJobsForWorkflowRun: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs" - ], - listJobsForWorkflowRunAttempt: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs" - ], - listLabelsForSelfHostedRunnerForOrg: [ - "GET /orgs/{org}/actions/runners/{runner_id}/labels" - ], - listLabelsForSelfHostedRunnerForRepo: [ - "GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels" - ], - listOrgSecrets: ["GET /orgs/{org}/actions/secrets"], - listOrgVariables: ["GET /orgs/{org}/actions/variables"], - listRepoOrganizationSecrets: [ - "GET /repos/{owner}/{repo}/actions/organization-secrets" - ], - listRepoOrganizationVariables: [ - "GET /repos/{owner}/{repo}/actions/organization-variables" - ], - listRepoSecrets: ["GET /repos/{owner}/{repo}/actions/secrets"], - listRepoVariables: ["GET /repos/{owner}/{repo}/actions/variables"], - listRepoWorkflows: ["GET /repos/{owner}/{repo}/actions/workflows"], - listRunnerApplicationsForOrg: ["GET /orgs/{org}/actions/runners/downloads"], - listRunnerApplicationsForRepo: [ - "GET /repos/{owner}/{repo}/actions/runners/downloads" - ], - listSelectedReposForOrgSecret: [ - "GET /orgs/{org}/actions/secrets/{secret_name}/repositories" - ], - listSelectedReposForOrgVariable: [ - "GET /orgs/{org}/actions/variables/{name}/repositories" - ], - listSelectedRepositoriesEnabledGithubActionsOrganization: [ - "GET /orgs/{org}/actions/permissions/repositories" - ], - listSelfHostedRunnersForOrg: ["GET /orgs/{org}/actions/runners"], - listSelfHostedRunnersForRepo: ["GET /repos/{owner}/{repo}/actions/runners"], - listWorkflowRunArtifacts: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts" - ], - listWorkflowRuns: [ - "GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs" - ], - listWorkflowRunsForRepo: ["GET /repos/{owner}/{repo}/actions/runs"], - reRunJobForWorkflowRun: [ - "POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun" - ], - reRunWorkflow: ["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"], - reRunWorkflowFailedJobs: [ - "POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs" - ], - removeAllCustomLabelsFromSelfHostedRunnerForOrg: [ - "DELETE /orgs/{org}/actions/runners/{runner_id}/labels" - ], - removeAllCustomLabelsFromSelfHostedRunnerForRepo: [ - "DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels" - ], - removeCustomLabelFromSelfHostedRunnerForOrg: [ - "DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}" - ], - removeCustomLabelFromSelfHostedRunnerForRepo: [ - "DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}" - ], - removeSelectedRepoFromOrgSecret: [ - "DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}" - ], - removeSelectedRepoFromOrgVariable: [ - "DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}" - ], - reviewCustomGatesForRun: [ - "POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule" - ], - reviewPendingDeploymentsForRun: [ - "POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments" - ], - setAllowedActionsOrganization: [ - "PUT /orgs/{org}/actions/permissions/selected-actions" - ], - setAllowedActionsRepository: [ - "PUT /repos/{owner}/{repo}/actions/permissions/selected-actions" - ], - setCustomLabelsForSelfHostedRunnerForOrg: [ - "PUT /orgs/{org}/actions/runners/{runner_id}/labels" - ], - setCustomLabelsForSelfHostedRunnerForRepo: [ - "PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels" - ], - setCustomOidcSubClaimForRepo: [ - "PUT /repos/{owner}/{repo}/actions/oidc/customization/sub" - ], - setGithubActionsDefaultWorkflowPermissionsOrganization: [ - "PUT /orgs/{org}/actions/permissions/workflow" - ], - setGithubActionsDefaultWorkflowPermissionsRepository: [ - "PUT /repos/{owner}/{repo}/actions/permissions/workflow" - ], - setGithubActionsPermissionsOrganization: [ - "PUT /orgs/{org}/actions/permissions" - ], - setGithubActionsPermissionsRepository: [ - "PUT /repos/{owner}/{repo}/actions/permissions" - ], - setSelectedReposForOrgSecret: [ - "PUT /orgs/{org}/actions/secrets/{secret_name}/repositories" - ], - setSelectedReposForOrgVariable: [ - "PUT /orgs/{org}/actions/variables/{name}/repositories" - ], - setSelectedRepositoriesEnabledGithubActionsOrganization: [ - "PUT /orgs/{org}/actions/permissions/repositories" - ], - setWorkflowAccessToRepository: [ - "PUT /repos/{owner}/{repo}/actions/permissions/access" - ], - updateEnvironmentVariable: [ - "PATCH /repositories/{repository_id}/environments/{environment_name}/variables/{name}" - ], - updateOrgVariable: ["PATCH /orgs/{org}/actions/variables/{name}"], - updateRepoVariable: [ - "PATCH /repos/{owner}/{repo}/actions/variables/{name}" - ] - }, - activity: { - checkRepoIsStarredByAuthenticatedUser: ["GET /user/starred/{owner}/{repo}"], - deleteRepoSubscription: ["DELETE /repos/{owner}/{repo}/subscription"], - deleteThreadSubscription: [ - "DELETE /notifications/threads/{thread_id}/subscription" - ], - getFeeds: ["GET /feeds"], - getRepoSubscription: ["GET /repos/{owner}/{repo}/subscription"], - getThread: ["GET /notifications/threads/{thread_id}"], - getThreadSubscriptionForAuthenticatedUser: [ - "GET /notifications/threads/{thread_id}/subscription" - ], - listEventsForAuthenticatedUser: ["GET /users/{username}/events"], - listNotificationsForAuthenticatedUser: ["GET /notifications"], - listOrgEventsForAuthenticatedUser: [ - "GET /users/{username}/events/orgs/{org}" - ], - listPublicEvents: ["GET /events"], - listPublicEventsForRepoNetwork: ["GET /networks/{owner}/{repo}/events"], - listPublicEventsForUser: ["GET /users/{username}/events/public"], - listPublicOrgEvents: ["GET /orgs/{org}/events"], - listReceivedEventsForUser: ["GET /users/{username}/received_events"], - listReceivedPublicEventsForUser: [ - "GET /users/{username}/received_events/public" - ], - listRepoEvents: ["GET /repos/{owner}/{repo}/events"], - listRepoNotificationsForAuthenticatedUser: [ - "GET /repos/{owner}/{repo}/notifications" - ], - listReposStarredByAuthenticatedUser: ["GET /user/starred"], - listReposStarredByUser: ["GET /users/{username}/starred"], - listReposWatchedByUser: ["GET /users/{username}/subscriptions"], - listStargazersForRepo: ["GET /repos/{owner}/{repo}/stargazers"], - listWatchedReposForAuthenticatedUser: ["GET /user/subscriptions"], - listWatchersForRepo: ["GET /repos/{owner}/{repo}/subscribers"], - markNotificationsAsRead: ["PUT /notifications"], - markRepoNotificationsAsRead: ["PUT /repos/{owner}/{repo}/notifications"], - markThreadAsDone: ["DELETE /notifications/threads/{thread_id}"], - markThreadAsRead: ["PATCH /notifications/threads/{thread_id}"], - setRepoSubscription: ["PUT /repos/{owner}/{repo}/subscription"], - setThreadSubscription: [ - "PUT /notifications/threads/{thread_id}/subscription" - ], - starRepoForAuthenticatedUser: ["PUT /user/starred/{owner}/{repo}"], - unstarRepoForAuthenticatedUser: ["DELETE /user/starred/{owner}/{repo}"] - }, - apps: { - addRepoToInstallation: [ - "PUT /user/installations/{installation_id}/repositories/{repository_id}", - {}, - { renamed: ["apps", "addRepoToInstallationForAuthenticatedUser"] } - ], - addRepoToInstallationForAuthenticatedUser: [ - "PUT /user/installations/{installation_id}/repositories/{repository_id}" - ], - checkToken: ["POST /applications/{client_id}/token"], - createFromManifest: ["POST /app-manifests/{code}/conversions"], - createInstallationAccessToken: [ - "POST /app/installations/{installation_id}/access_tokens" - ], - deleteAuthorization: ["DELETE /applications/{client_id}/grant"], - deleteInstallation: ["DELETE /app/installations/{installation_id}"], - deleteToken: ["DELETE /applications/{client_id}/token"], - getAuthenticated: ["GET /app"], - getBySlug: ["GET /apps/{app_slug}"], - getInstallation: ["GET /app/installations/{installation_id}"], - getOrgInstallation: ["GET /orgs/{org}/installation"], - getRepoInstallation: ["GET /repos/{owner}/{repo}/installation"], - getSubscriptionPlanForAccount: [ - "GET /marketplace_listing/accounts/{account_id}" - ], - getSubscriptionPlanForAccountStubbed: [ - "GET /marketplace_listing/stubbed/accounts/{account_id}" - ], - getUserInstallation: ["GET /users/{username}/installation"], - getWebhookConfigForApp: ["GET /app/hook/config"], - getWebhookDelivery: ["GET /app/hook/deliveries/{delivery_id}"], - listAccountsForPlan: ["GET /marketplace_listing/plans/{plan_id}/accounts"], - listAccountsForPlanStubbed: [ - "GET /marketplace_listing/stubbed/plans/{plan_id}/accounts" - ], - listInstallationReposForAuthenticatedUser: [ - "GET /user/installations/{installation_id}/repositories" - ], - listInstallationRequestsForAuthenticatedApp: [ - "GET /app/installation-requests" - ], - listInstallations: ["GET /app/installations"], - listInstallationsForAuthenticatedUser: ["GET /user/installations"], - listPlans: ["GET /marketplace_listing/plans"], - listPlansStubbed: ["GET /marketplace_listing/stubbed/plans"], - listReposAccessibleToInstallation: ["GET /installation/repositories"], - listSubscriptionsForAuthenticatedUser: ["GET /user/marketplace_purchases"], - listSubscriptionsForAuthenticatedUserStubbed: [ - "GET /user/marketplace_purchases/stubbed" - ], - listWebhookDeliveries: ["GET /app/hook/deliveries"], - redeliverWebhookDelivery: [ - "POST /app/hook/deliveries/{delivery_id}/attempts" - ], - removeRepoFromInstallation: [ - "DELETE /user/installations/{installation_id}/repositories/{repository_id}", - {}, - { renamed: ["apps", "removeRepoFromInstallationForAuthenticatedUser"] } - ], - removeRepoFromInstallationForAuthenticatedUser: [ - "DELETE /user/installations/{installation_id}/repositories/{repository_id}" - ], - resetToken: ["PATCH /applications/{client_id}/token"], - revokeInstallationAccessToken: ["DELETE /installation/token"], - scopeToken: ["POST /applications/{client_id}/token/scoped"], - suspendInstallation: ["PUT /app/installations/{installation_id}/suspended"], - unsuspendInstallation: [ - "DELETE /app/installations/{installation_id}/suspended" - ], - updateWebhookConfigForApp: ["PATCH /app/hook/config"] - }, - billing: { - getGithubActionsBillingOrg: ["GET /orgs/{org}/settings/billing/actions"], - getGithubActionsBillingUser: [ - "GET /users/{username}/settings/billing/actions" - ], - getGithubPackagesBillingOrg: ["GET /orgs/{org}/settings/billing/packages"], - getGithubPackagesBillingUser: [ - "GET /users/{username}/settings/billing/packages" - ], - getSharedStorageBillingOrg: [ - "GET /orgs/{org}/settings/billing/shared-storage" - ], - getSharedStorageBillingUser: [ - "GET /users/{username}/settings/billing/shared-storage" - ] - }, - checks: { - create: ["POST /repos/{owner}/{repo}/check-runs"], - createSuite: ["POST /repos/{owner}/{repo}/check-suites"], - get: ["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"], - getSuite: ["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"], - listAnnotations: [ - "GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations" - ], - listForRef: ["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"], - listForSuite: [ - "GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs" - ], - listSuitesForRef: ["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"], - rerequestRun: [ - "POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest" - ], - rerequestSuite: [ - "POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest" - ], - setSuitesPreferences: [ - "PATCH /repos/{owner}/{repo}/check-suites/preferences" - ], - update: ["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"] - }, - codeScanning: { - deleteAnalysis: [ - "DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}" - ], - getAlert: [ - "GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}", - {}, - { renamedParameters: { alert_id: "alert_number" } } - ], - getAnalysis: [ - "GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}" - ], - getCodeqlDatabase: [ - "GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}" - ], - getDefaultSetup: ["GET /repos/{owner}/{repo}/code-scanning/default-setup"], - getSarif: ["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"], - listAlertInstances: [ - "GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances" - ], - listAlertsForOrg: ["GET /orgs/{org}/code-scanning/alerts"], - listAlertsForRepo: ["GET /repos/{owner}/{repo}/code-scanning/alerts"], - listAlertsInstances: [ - "GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances", - {}, - { renamed: ["codeScanning", "listAlertInstances"] } - ], - listCodeqlDatabases: [ - "GET /repos/{owner}/{repo}/code-scanning/codeql/databases" - ], - listRecentAnalyses: ["GET /repos/{owner}/{repo}/code-scanning/analyses"], - updateAlert: [ - "PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}" - ], - updateDefaultSetup: [ - "PATCH /repos/{owner}/{repo}/code-scanning/default-setup" - ], - uploadSarif: ["POST /repos/{owner}/{repo}/code-scanning/sarifs"] - }, - codesOfConduct: { - getAllCodesOfConduct: ["GET /codes_of_conduct"], - getConductCode: ["GET /codes_of_conduct/{key}"] - }, - codespaces: { - addRepositoryForSecretForAuthenticatedUser: [ - "PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}" - ], - addSelectedRepoToOrgSecret: [ - "PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}" - ], - checkPermissionsForDevcontainer: [ - "GET /repos/{owner}/{repo}/codespaces/permissions_check" - ], - codespaceMachinesForAuthenticatedUser: [ - "GET /user/codespaces/{codespace_name}/machines" - ], - createForAuthenticatedUser: ["POST /user/codespaces"], - createOrUpdateOrgSecret: [ - "PUT /orgs/{org}/codespaces/secrets/{secret_name}" - ], - createOrUpdateRepoSecret: [ - "PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}" - ], - createOrUpdateSecretForAuthenticatedUser: [ - "PUT /user/codespaces/secrets/{secret_name}" - ], - createWithPrForAuthenticatedUser: [ - "POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces" - ], - createWithRepoForAuthenticatedUser: [ - "POST /repos/{owner}/{repo}/codespaces" - ], - deleteForAuthenticatedUser: ["DELETE /user/codespaces/{codespace_name}"], - deleteFromOrganization: [ - "DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}" - ], - deleteOrgSecret: ["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"], - deleteRepoSecret: [ - "DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}" - ], - deleteSecretForAuthenticatedUser: [ - "DELETE /user/codespaces/secrets/{secret_name}" - ], - exportForAuthenticatedUser: [ - "POST /user/codespaces/{codespace_name}/exports" - ], - getCodespacesForUserInOrg: [ - "GET /orgs/{org}/members/{username}/codespaces" - ], - getExportDetailsForAuthenticatedUser: [ - "GET /user/codespaces/{codespace_name}/exports/{export_id}" - ], - getForAuthenticatedUser: ["GET /user/codespaces/{codespace_name}"], - getOrgPublicKey: ["GET /orgs/{org}/codespaces/secrets/public-key"], - getOrgSecret: ["GET /orgs/{org}/codespaces/secrets/{secret_name}"], - getPublicKeyForAuthenticatedUser: [ - "GET /user/codespaces/secrets/public-key" - ], - getRepoPublicKey: [ - "GET /repos/{owner}/{repo}/codespaces/secrets/public-key" - ], - getRepoSecret: [ - "GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}" - ], - getSecretForAuthenticatedUser: [ - "GET /user/codespaces/secrets/{secret_name}" - ], - listDevcontainersInRepositoryForAuthenticatedUser: [ - "GET /repos/{owner}/{repo}/codespaces/devcontainers" - ], - listForAuthenticatedUser: ["GET /user/codespaces"], - listInOrganization: [ - "GET /orgs/{org}/codespaces", - {}, - { renamedParameters: { org_id: "org" } } - ], - listInRepositoryForAuthenticatedUser: [ - "GET /repos/{owner}/{repo}/codespaces" - ], - listOrgSecrets: ["GET /orgs/{org}/codespaces/secrets"], - listRepoSecrets: ["GET /repos/{owner}/{repo}/codespaces/secrets"], - listRepositoriesForSecretForAuthenticatedUser: [ - "GET /user/codespaces/secrets/{secret_name}/repositories" - ], - listSecretsForAuthenticatedUser: ["GET /user/codespaces/secrets"], - listSelectedReposForOrgSecret: [ - "GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories" - ], - preFlightWithRepoForAuthenticatedUser: [ - "GET /repos/{owner}/{repo}/codespaces/new" - ], - publishForAuthenticatedUser: [ - "POST /user/codespaces/{codespace_name}/publish" - ], - removeRepositoryForSecretForAuthenticatedUser: [ - "DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}" - ], - removeSelectedRepoFromOrgSecret: [ - "DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}" - ], - repoMachinesForAuthenticatedUser: [ - "GET /repos/{owner}/{repo}/codespaces/machines" - ], - setRepositoriesForSecretForAuthenticatedUser: [ - "PUT /user/codespaces/secrets/{secret_name}/repositories" - ], - setSelectedReposForOrgSecret: [ - "PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories" - ], - startForAuthenticatedUser: ["POST /user/codespaces/{codespace_name}/start"], - stopForAuthenticatedUser: ["POST /user/codespaces/{codespace_name}/stop"], - stopInOrganization: [ - "POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop" - ], - updateForAuthenticatedUser: ["PATCH /user/codespaces/{codespace_name}"] - }, - copilot: { - addCopilotSeatsForTeams: [ - "POST /orgs/{org}/copilot/billing/selected_teams" - ], - addCopilotSeatsForUsers: [ - "POST /orgs/{org}/copilot/billing/selected_users" - ], - cancelCopilotSeatAssignmentForTeams: [ - "DELETE /orgs/{org}/copilot/billing/selected_teams" - ], - cancelCopilotSeatAssignmentForUsers: [ - "DELETE /orgs/{org}/copilot/billing/selected_users" - ], - getCopilotOrganizationDetails: ["GET /orgs/{org}/copilot/billing"], - getCopilotSeatDetailsForUser: [ - "GET /orgs/{org}/members/{username}/copilot" - ], - listCopilotSeats: ["GET /orgs/{org}/copilot/billing/seats"] - }, - dependabot: { - addSelectedRepoToOrgSecret: [ - "PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}" - ], - createOrUpdateOrgSecret: [ - "PUT /orgs/{org}/dependabot/secrets/{secret_name}" - ], - createOrUpdateRepoSecret: [ - "PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}" - ], - deleteOrgSecret: ["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"], - deleteRepoSecret: [ - "DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}" - ], - getAlert: ["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"], - getOrgPublicKey: ["GET /orgs/{org}/dependabot/secrets/public-key"], - getOrgSecret: ["GET /orgs/{org}/dependabot/secrets/{secret_name}"], - getRepoPublicKey: [ - "GET /repos/{owner}/{repo}/dependabot/secrets/public-key" - ], - getRepoSecret: [ - "GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}" - ], - listAlertsForEnterprise: [ - "GET /enterprises/{enterprise}/dependabot/alerts" - ], - listAlertsForOrg: ["GET /orgs/{org}/dependabot/alerts"], - listAlertsForRepo: ["GET /repos/{owner}/{repo}/dependabot/alerts"], - listOrgSecrets: ["GET /orgs/{org}/dependabot/secrets"], - listRepoSecrets: ["GET /repos/{owner}/{repo}/dependabot/secrets"], - listSelectedReposForOrgSecret: [ - "GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories" - ], - removeSelectedRepoFromOrgSecret: [ - "DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}" - ], - setSelectedReposForOrgSecret: [ - "PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories" - ], - updateAlert: [ - "PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}" - ] - }, - dependencyGraph: { - createRepositorySnapshot: [ - "POST /repos/{owner}/{repo}/dependency-graph/snapshots" - ], - diffRange: [ - "GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}" - ], - exportSbom: ["GET /repos/{owner}/{repo}/dependency-graph/sbom"] - }, - emojis: { get: ["GET /emojis"] }, - gists: { - checkIsStarred: ["GET /gists/{gist_id}/star"], - create: ["POST /gists"], - createComment: ["POST /gists/{gist_id}/comments"], - delete: ["DELETE /gists/{gist_id}"], - deleteComment: ["DELETE /gists/{gist_id}/comments/{comment_id}"], - fork: ["POST /gists/{gist_id}/forks"], - get: ["GET /gists/{gist_id}"], - getComment: ["GET /gists/{gist_id}/comments/{comment_id}"], - getRevision: ["GET /gists/{gist_id}/{sha}"], - list: ["GET /gists"], - listComments: ["GET /gists/{gist_id}/comments"], - listCommits: ["GET /gists/{gist_id}/commits"], - listForUser: ["GET /users/{username}/gists"], - listForks: ["GET /gists/{gist_id}/forks"], - listPublic: ["GET /gists/public"], - listStarred: ["GET /gists/starred"], - star: ["PUT /gists/{gist_id}/star"], - unstar: ["DELETE /gists/{gist_id}/star"], - update: ["PATCH /gists/{gist_id}"], - updateComment: ["PATCH /gists/{gist_id}/comments/{comment_id}"] - }, - git: { - createBlob: ["POST /repos/{owner}/{repo}/git/blobs"], - createCommit: ["POST /repos/{owner}/{repo}/git/commits"], - createRef: ["POST /repos/{owner}/{repo}/git/refs"], - createTag: ["POST /repos/{owner}/{repo}/git/tags"], - createTree: ["POST /repos/{owner}/{repo}/git/trees"], - deleteRef: ["DELETE /repos/{owner}/{repo}/git/refs/{ref}"], - getBlob: ["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"], - getCommit: ["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"], - getRef: ["GET /repos/{owner}/{repo}/git/ref/{ref}"], - getTag: ["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"], - getTree: ["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"], - listMatchingRefs: ["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"], - updateRef: ["PATCH /repos/{owner}/{repo}/git/refs/{ref}"] - }, - gitignore: { - getAllTemplates: ["GET /gitignore/templates"], - getTemplate: ["GET /gitignore/templates/{name}"] - }, - interactions: { - getRestrictionsForAuthenticatedUser: ["GET /user/interaction-limits"], - getRestrictionsForOrg: ["GET /orgs/{org}/interaction-limits"], - getRestrictionsForRepo: ["GET /repos/{owner}/{repo}/interaction-limits"], - getRestrictionsForYourPublicRepos: [ - "GET /user/interaction-limits", - {}, - { renamed: ["interactions", "getRestrictionsForAuthenticatedUser"] } - ], - removeRestrictionsForAuthenticatedUser: ["DELETE /user/interaction-limits"], - removeRestrictionsForOrg: ["DELETE /orgs/{org}/interaction-limits"], - removeRestrictionsForRepo: [ - "DELETE /repos/{owner}/{repo}/interaction-limits" - ], - removeRestrictionsForYourPublicRepos: [ - "DELETE /user/interaction-limits", - {}, - { renamed: ["interactions", "removeRestrictionsForAuthenticatedUser"] } - ], - setRestrictionsForAuthenticatedUser: ["PUT /user/interaction-limits"], - setRestrictionsForOrg: ["PUT /orgs/{org}/interaction-limits"], - setRestrictionsForRepo: ["PUT /repos/{owner}/{repo}/interaction-limits"], - setRestrictionsForYourPublicRepos: [ - "PUT /user/interaction-limits", - {}, - { renamed: ["interactions", "setRestrictionsForAuthenticatedUser"] } - ] - }, - issues: { - addAssignees: [ - "POST /repos/{owner}/{repo}/issues/{issue_number}/assignees" - ], - addLabels: ["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"], - checkUserCanBeAssigned: ["GET /repos/{owner}/{repo}/assignees/{assignee}"], - checkUserCanBeAssignedToIssue: [ - "GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}" - ], - create: ["POST /repos/{owner}/{repo}/issues"], - createComment: [ - "POST /repos/{owner}/{repo}/issues/{issue_number}/comments" - ], - createLabel: ["POST /repos/{owner}/{repo}/labels"], - createMilestone: ["POST /repos/{owner}/{repo}/milestones"], - deleteComment: [ - "DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}" - ], - deleteLabel: ["DELETE /repos/{owner}/{repo}/labels/{name}"], - deleteMilestone: [ - "DELETE /repos/{owner}/{repo}/milestones/{milestone_number}" - ], - get: ["GET /repos/{owner}/{repo}/issues/{issue_number}"], - getComment: ["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"], - getEvent: ["GET /repos/{owner}/{repo}/issues/events/{event_id}"], - getLabel: ["GET /repos/{owner}/{repo}/labels/{name}"], - getMilestone: ["GET /repos/{owner}/{repo}/milestones/{milestone_number}"], - list: ["GET /issues"], - listAssignees: ["GET /repos/{owner}/{repo}/assignees"], - listComments: ["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"], - listCommentsForRepo: ["GET /repos/{owner}/{repo}/issues/comments"], - listEvents: ["GET /repos/{owner}/{repo}/issues/{issue_number}/events"], - listEventsForRepo: ["GET /repos/{owner}/{repo}/issues/events"], - listEventsForTimeline: [ - "GET /repos/{owner}/{repo}/issues/{issue_number}/timeline" - ], - listForAuthenticatedUser: ["GET /user/issues"], - listForOrg: ["GET /orgs/{org}/issues"], - listForRepo: ["GET /repos/{owner}/{repo}/issues"], - listLabelsForMilestone: [ - "GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels" - ], - listLabelsForRepo: ["GET /repos/{owner}/{repo}/labels"], - listLabelsOnIssue: [ - "GET /repos/{owner}/{repo}/issues/{issue_number}/labels" - ], - listMilestones: ["GET /repos/{owner}/{repo}/milestones"], - lock: ["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"], - removeAllLabels: [ - "DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels" - ], - removeAssignees: [ - "DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees" - ], - removeLabel: [ - "DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}" - ], - setLabels: ["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"], - unlock: ["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"], - update: ["PATCH /repos/{owner}/{repo}/issues/{issue_number}"], - updateComment: ["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"], - updateLabel: ["PATCH /repos/{owner}/{repo}/labels/{name}"], - updateMilestone: [ - "PATCH /repos/{owner}/{repo}/milestones/{milestone_number}" - ] - }, - licenses: { - get: ["GET /licenses/{license}"], - getAllCommonlyUsed: ["GET /licenses"], - getForRepo: ["GET /repos/{owner}/{repo}/license"] - }, - markdown: { - render: ["POST /markdown"], - renderRaw: [ - "POST /markdown/raw", - { headers: { "content-type": "text/plain; charset=utf-8" } } - ] - }, - meta: { - get: ["GET /meta"], - getAllVersions: ["GET /versions"], - getOctocat: ["GET /octocat"], - getZen: ["GET /zen"], - root: ["GET /"] - }, - migrations: { - cancelImport: [ - "DELETE /repos/{owner}/{repo}/import", - {}, - { - deprecated: "octokit.rest.migrations.cancelImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#cancel-an-import" - } - ], - deleteArchiveForAuthenticatedUser: [ - "DELETE /user/migrations/{migration_id}/archive" - ], - deleteArchiveForOrg: [ - "DELETE /orgs/{org}/migrations/{migration_id}/archive" - ], - downloadArchiveForOrg: [ - "GET /orgs/{org}/migrations/{migration_id}/archive" - ], - getArchiveForAuthenticatedUser: [ - "GET /user/migrations/{migration_id}/archive" - ], - getCommitAuthors: [ - "GET /repos/{owner}/{repo}/import/authors", - {}, - { - deprecated: "octokit.rest.migrations.getCommitAuthors() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-commit-authors" - } - ], - getImportStatus: [ - "GET /repos/{owner}/{repo}/import", - {}, - { - deprecated: "octokit.rest.migrations.getImportStatus() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-an-import-status" - } - ], - getLargeFiles: [ - "GET /repos/{owner}/{repo}/import/large_files", - {}, - { - deprecated: "octokit.rest.migrations.getLargeFiles() is deprecated, see https://docs.github.com/rest/migrations/source-imports#get-large-files" - } - ], - getStatusForAuthenticatedUser: ["GET /user/migrations/{migration_id}"], - getStatusForOrg: ["GET /orgs/{org}/migrations/{migration_id}"], - listForAuthenticatedUser: ["GET /user/migrations"], - listForOrg: ["GET /orgs/{org}/migrations"], - listReposForAuthenticatedUser: [ - "GET /user/migrations/{migration_id}/repositories" - ], - listReposForOrg: ["GET /orgs/{org}/migrations/{migration_id}/repositories"], - listReposForUser: [ - "GET /user/migrations/{migration_id}/repositories", - {}, - { renamed: ["migrations", "listReposForAuthenticatedUser"] } - ], - mapCommitAuthor: [ - "PATCH /repos/{owner}/{repo}/import/authors/{author_id}", - {}, - { - deprecated: "octokit.rest.migrations.mapCommitAuthor() is deprecated, see https://docs.github.com/rest/migrations/source-imports#map-a-commit-author" - } - ], - setLfsPreference: [ - "PATCH /repos/{owner}/{repo}/import/lfs", - {}, - { - deprecated: "octokit.rest.migrations.setLfsPreference() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-git-lfs-preference" - } - ], - startForAuthenticatedUser: ["POST /user/migrations"], - startForOrg: ["POST /orgs/{org}/migrations"], - startImport: [ - "PUT /repos/{owner}/{repo}/import", - {}, - { - deprecated: "octokit.rest.migrations.startImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#start-an-import" - } - ], - unlockRepoForAuthenticatedUser: [ - "DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock" - ], - unlockRepoForOrg: [ - "DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock" - ], - updateImport: [ - "PATCH /repos/{owner}/{repo}/import", - {}, - { - deprecated: "octokit.rest.migrations.updateImport() is deprecated, see https://docs.github.com/rest/migrations/source-imports#update-an-import" - } - ] - }, - oidc: { - getOidcCustomSubTemplateForOrg: [ - "GET /orgs/{org}/actions/oidc/customization/sub" - ], - updateOidcCustomSubTemplateForOrg: [ - "PUT /orgs/{org}/actions/oidc/customization/sub" - ] - }, - orgs: { - addSecurityManagerTeam: [ - "PUT /orgs/{org}/security-managers/teams/{team_slug}" - ], - assignTeamToOrgRole: [ - "PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}" - ], - assignUserToOrgRole: [ - "PUT /orgs/{org}/organization-roles/users/{username}/{role_id}" - ], - blockUser: ["PUT /orgs/{org}/blocks/{username}"], - cancelInvitation: ["DELETE /orgs/{org}/invitations/{invitation_id}"], - checkBlockedUser: ["GET /orgs/{org}/blocks/{username}"], - checkMembershipForUser: ["GET /orgs/{org}/members/{username}"], - checkPublicMembershipForUser: ["GET /orgs/{org}/public_members/{username}"], - convertMemberToOutsideCollaborator: [ - "PUT /orgs/{org}/outside_collaborators/{username}" - ], - createCustomOrganizationRole: ["POST /orgs/{org}/organization-roles"], - createInvitation: ["POST /orgs/{org}/invitations"], - createOrUpdateCustomProperties: ["PATCH /orgs/{org}/properties/schema"], - createOrUpdateCustomPropertiesValuesForRepos: [ - "PATCH /orgs/{org}/properties/values" - ], - createOrUpdateCustomProperty: [ - "PUT /orgs/{org}/properties/schema/{custom_property_name}" - ], - createWebhook: ["POST /orgs/{org}/hooks"], - delete: ["DELETE /orgs/{org}"], - deleteCustomOrganizationRole: [ - "DELETE /orgs/{org}/organization-roles/{role_id}" - ], - deleteWebhook: ["DELETE /orgs/{org}/hooks/{hook_id}"], - enableOrDisableSecurityProductOnAllOrgRepos: [ - "POST /orgs/{org}/{security_product}/{enablement}" - ], - get: ["GET /orgs/{org}"], - getAllCustomProperties: ["GET /orgs/{org}/properties/schema"], - getCustomProperty: [ - "GET /orgs/{org}/properties/schema/{custom_property_name}" - ], - getMembershipForAuthenticatedUser: ["GET /user/memberships/orgs/{org}"], - getMembershipForUser: ["GET /orgs/{org}/memberships/{username}"], - getOrgRole: ["GET /orgs/{org}/organization-roles/{role_id}"], - getWebhook: ["GET /orgs/{org}/hooks/{hook_id}"], - getWebhookConfigForOrg: ["GET /orgs/{org}/hooks/{hook_id}/config"], - getWebhookDelivery: [ - "GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}" - ], - list: ["GET /organizations"], - listAppInstallations: ["GET /orgs/{org}/installations"], - listBlockedUsers: ["GET /orgs/{org}/blocks"], - listCustomPropertiesValuesForRepos: ["GET /orgs/{org}/properties/values"], - listFailedInvitations: ["GET /orgs/{org}/failed_invitations"], - listForAuthenticatedUser: ["GET /user/orgs"], - listForUser: ["GET /users/{username}/orgs"], - listInvitationTeams: ["GET /orgs/{org}/invitations/{invitation_id}/teams"], - listMembers: ["GET /orgs/{org}/members"], - listMembershipsForAuthenticatedUser: ["GET /user/memberships/orgs"], - listOrgRoleTeams: ["GET /orgs/{org}/organization-roles/{role_id}/teams"], - listOrgRoleUsers: ["GET /orgs/{org}/organization-roles/{role_id}/users"], - listOrgRoles: ["GET /orgs/{org}/organization-roles"], - listOrganizationFineGrainedPermissions: [ - "GET /orgs/{org}/organization-fine-grained-permissions" - ], - listOutsideCollaborators: ["GET /orgs/{org}/outside_collaborators"], - listPatGrantRepositories: [ - "GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories" - ], - listPatGrantRequestRepositories: [ - "GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories" - ], - listPatGrantRequests: ["GET /orgs/{org}/personal-access-token-requests"], - listPatGrants: ["GET /orgs/{org}/personal-access-tokens"], - listPendingInvitations: ["GET /orgs/{org}/invitations"], - listPublicMembers: ["GET /orgs/{org}/public_members"], - listSecurityManagerTeams: ["GET /orgs/{org}/security-managers"], - listWebhookDeliveries: ["GET /orgs/{org}/hooks/{hook_id}/deliveries"], - listWebhooks: ["GET /orgs/{org}/hooks"], - patchCustomOrganizationRole: [ - "PATCH /orgs/{org}/organization-roles/{role_id}" - ], - pingWebhook: ["POST /orgs/{org}/hooks/{hook_id}/pings"], - redeliverWebhookDelivery: [ - "POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts" - ], - removeCustomProperty: [ - "DELETE /orgs/{org}/properties/schema/{custom_property_name}" - ], - removeMember: ["DELETE /orgs/{org}/members/{username}"], - removeMembershipForUser: ["DELETE /orgs/{org}/memberships/{username}"], - removeOutsideCollaborator: [ - "DELETE /orgs/{org}/outside_collaborators/{username}" - ], - removePublicMembershipForAuthenticatedUser: [ - "DELETE /orgs/{org}/public_members/{username}" - ], - removeSecurityManagerTeam: [ - "DELETE /orgs/{org}/security-managers/teams/{team_slug}" - ], - reviewPatGrantRequest: [ - "POST /orgs/{org}/personal-access-token-requests/{pat_request_id}" - ], - reviewPatGrantRequestsInBulk: [ - "POST /orgs/{org}/personal-access-token-requests" - ], - revokeAllOrgRolesTeam: [ - "DELETE /orgs/{org}/organization-roles/teams/{team_slug}" - ], - revokeAllOrgRolesUser: [ - "DELETE /orgs/{org}/organization-roles/users/{username}" - ], - revokeOrgRoleTeam: [ - "DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}" - ], - revokeOrgRoleUser: [ - "DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}" - ], - setMembershipForUser: ["PUT /orgs/{org}/memberships/{username}"], - setPublicMembershipForAuthenticatedUser: [ - "PUT /orgs/{org}/public_members/{username}" - ], - unblockUser: ["DELETE /orgs/{org}/blocks/{username}"], - update: ["PATCH /orgs/{org}"], - updateMembershipForAuthenticatedUser: [ - "PATCH /user/memberships/orgs/{org}" - ], - updatePatAccess: ["POST /orgs/{org}/personal-access-tokens/{pat_id}"], - updatePatAccesses: ["POST /orgs/{org}/personal-access-tokens"], - updateWebhook: ["PATCH /orgs/{org}/hooks/{hook_id}"], - updateWebhookConfigForOrg: ["PATCH /orgs/{org}/hooks/{hook_id}/config"] - }, - packages: { - deletePackageForAuthenticatedUser: [ - "DELETE /user/packages/{package_type}/{package_name}" - ], - deletePackageForOrg: [ - "DELETE /orgs/{org}/packages/{package_type}/{package_name}" - ], - deletePackageForUser: [ - "DELETE /users/{username}/packages/{package_type}/{package_name}" - ], - deletePackageVersionForAuthenticatedUser: [ - "DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}" - ], - deletePackageVersionForOrg: [ - "DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}" - ], - deletePackageVersionForUser: [ - "DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}" - ], - getAllPackageVersionsForAPackageOwnedByAnOrg: [ - "GET /orgs/{org}/packages/{package_type}/{package_name}/versions", - {}, - { renamed: ["packages", "getAllPackageVersionsForPackageOwnedByOrg"] } - ], - getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser: [ - "GET /user/packages/{package_type}/{package_name}/versions", - {}, - { - renamed: [ - "packages", - "getAllPackageVersionsForPackageOwnedByAuthenticatedUser" - ] - } - ], - getAllPackageVersionsForPackageOwnedByAuthenticatedUser: [ - "GET /user/packages/{package_type}/{package_name}/versions" - ], - getAllPackageVersionsForPackageOwnedByOrg: [ - "GET /orgs/{org}/packages/{package_type}/{package_name}/versions" - ], - getAllPackageVersionsForPackageOwnedByUser: [ - "GET /users/{username}/packages/{package_type}/{package_name}/versions" - ], - getPackageForAuthenticatedUser: [ - "GET /user/packages/{package_type}/{package_name}" - ], - getPackageForOrganization: [ - "GET /orgs/{org}/packages/{package_type}/{package_name}" - ], - getPackageForUser: [ - "GET /users/{username}/packages/{package_type}/{package_name}" - ], - getPackageVersionForAuthenticatedUser: [ - "GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}" - ], - getPackageVersionForOrganization: [ - "GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}" - ], - getPackageVersionForUser: [ - "GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}" - ], - listDockerMigrationConflictingPackagesForAuthenticatedUser: [ - "GET /user/docker/conflicts" - ], - listDockerMigrationConflictingPackagesForOrganization: [ - "GET /orgs/{org}/docker/conflicts" - ], - listDockerMigrationConflictingPackagesForUser: [ - "GET /users/{username}/docker/conflicts" - ], - listPackagesForAuthenticatedUser: ["GET /user/packages"], - listPackagesForOrganization: ["GET /orgs/{org}/packages"], - listPackagesForUser: ["GET /users/{username}/packages"], - restorePackageForAuthenticatedUser: [ - "POST /user/packages/{package_type}/{package_name}/restore{?token}" - ], - restorePackageForOrg: [ - "POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}" - ], - restorePackageForUser: [ - "POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}" - ], - restorePackageVersionForAuthenticatedUser: [ - "POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore" - ], - restorePackageVersionForOrg: [ - "POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore" - ], - restorePackageVersionForUser: [ - "POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore" - ] - }, - projects: { - addCollaborator: ["PUT /projects/{project_id}/collaborators/{username}"], - createCard: ["POST /projects/columns/{column_id}/cards"], - createColumn: ["POST /projects/{project_id}/columns"], - createForAuthenticatedUser: ["POST /user/projects"], - createForOrg: ["POST /orgs/{org}/projects"], - createForRepo: ["POST /repos/{owner}/{repo}/projects"], - delete: ["DELETE /projects/{project_id}"], - deleteCard: ["DELETE /projects/columns/cards/{card_id}"], - deleteColumn: ["DELETE /projects/columns/{column_id}"], - get: ["GET /projects/{project_id}"], - getCard: ["GET /projects/columns/cards/{card_id}"], - getColumn: ["GET /projects/columns/{column_id}"], - getPermissionForUser: [ - "GET /projects/{project_id}/collaborators/{username}/permission" - ], - listCards: ["GET /projects/columns/{column_id}/cards"], - listCollaborators: ["GET /projects/{project_id}/collaborators"], - listColumns: ["GET /projects/{project_id}/columns"], - listForOrg: ["GET /orgs/{org}/projects"], - listForRepo: ["GET /repos/{owner}/{repo}/projects"], - listForUser: ["GET /users/{username}/projects"], - moveCard: ["POST /projects/columns/cards/{card_id}/moves"], - moveColumn: ["POST /projects/columns/{column_id}/moves"], - removeCollaborator: [ - "DELETE /projects/{project_id}/collaborators/{username}" - ], - update: ["PATCH /projects/{project_id}"], - updateCard: ["PATCH /projects/columns/cards/{card_id}"], - updateColumn: ["PATCH /projects/columns/{column_id}"] - }, - pulls: { - checkIfMerged: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"], - create: ["POST /repos/{owner}/{repo}/pulls"], - createReplyForReviewComment: [ - "POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies" - ], - createReview: ["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"], - createReviewComment: [ - "POST /repos/{owner}/{repo}/pulls/{pull_number}/comments" - ], - deletePendingReview: [ - "DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}" - ], - deleteReviewComment: [ - "DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}" - ], - dismissReview: [ - "PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals" - ], - get: ["GET /repos/{owner}/{repo}/pulls/{pull_number}"], - getReview: [ - "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}" - ], - getReviewComment: ["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"], - list: ["GET /repos/{owner}/{repo}/pulls"], - listCommentsForReview: [ - "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments" - ], - listCommits: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"], - listFiles: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"], - listRequestedReviewers: [ - "GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers" - ], - listReviewComments: [ - "GET /repos/{owner}/{repo}/pulls/{pull_number}/comments" - ], - listReviewCommentsForRepo: ["GET /repos/{owner}/{repo}/pulls/comments"], - listReviews: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"], - merge: ["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"], - removeRequestedReviewers: [ - "DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers" - ], - requestReviewers: [ - "POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers" - ], - submitReview: [ - "POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events" - ], - update: ["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"], - updateBranch: [ - "PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch" - ], - updateReview: [ - "PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}" - ], - updateReviewComment: [ - "PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}" - ] - }, - rateLimit: { get: ["GET /rate_limit"] }, - reactions: { - createForCommitComment: [ - "POST /repos/{owner}/{repo}/comments/{comment_id}/reactions" - ], - createForIssue: [ - "POST /repos/{owner}/{repo}/issues/{issue_number}/reactions" - ], - createForIssueComment: [ - "POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions" - ], - createForPullRequestReviewComment: [ - "POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions" - ], - createForRelease: [ - "POST /repos/{owner}/{repo}/releases/{release_id}/reactions" - ], - createForTeamDiscussionCommentInOrg: [ - "POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions" - ], - createForTeamDiscussionInOrg: [ - "POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions" - ], - deleteForCommitComment: [ - "DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}" - ], - deleteForIssue: [ - "DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}" - ], - deleteForIssueComment: [ - "DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}" - ], - deleteForPullRequestComment: [ - "DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}" - ], - deleteForRelease: [ - "DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}" - ], - deleteForTeamDiscussion: [ - "DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}" - ], - deleteForTeamDiscussionComment: [ - "DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}" - ], - listForCommitComment: [ - "GET /repos/{owner}/{repo}/comments/{comment_id}/reactions" - ], - listForIssue: ["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"], - listForIssueComment: [ - "GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions" - ], - listForPullRequestReviewComment: [ - "GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions" - ], - listForRelease: [ - "GET /repos/{owner}/{repo}/releases/{release_id}/reactions" - ], - listForTeamDiscussionCommentInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions" - ], - listForTeamDiscussionInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions" - ] - }, - repos: { - acceptInvitation: [ - "PATCH /user/repository_invitations/{invitation_id}", - {}, - { renamed: ["repos", "acceptInvitationForAuthenticatedUser"] } - ], - acceptInvitationForAuthenticatedUser: [ - "PATCH /user/repository_invitations/{invitation_id}" - ], - addAppAccessRestrictions: [ - "POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps", - {}, - { mapToData: "apps" } - ], - addCollaborator: ["PUT /repos/{owner}/{repo}/collaborators/{username}"], - addStatusCheckContexts: [ - "POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts", - {}, - { mapToData: "contexts" } - ], - addTeamAccessRestrictions: [ - "POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams", - {}, - { mapToData: "teams" } - ], - addUserAccessRestrictions: [ - "POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users", - {}, - { mapToData: "users" } - ], - cancelPagesDeployment: [ - "POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel" - ], - checkAutomatedSecurityFixes: [ - "GET /repos/{owner}/{repo}/automated-security-fixes" - ], - checkCollaborator: ["GET /repos/{owner}/{repo}/collaborators/{username}"], - checkVulnerabilityAlerts: [ - "GET /repos/{owner}/{repo}/vulnerability-alerts" - ], - codeownersErrors: ["GET /repos/{owner}/{repo}/codeowners/errors"], - compareCommits: ["GET /repos/{owner}/{repo}/compare/{base}...{head}"], - compareCommitsWithBasehead: [ - "GET /repos/{owner}/{repo}/compare/{basehead}" - ], - createAutolink: ["POST /repos/{owner}/{repo}/autolinks"], - createCommitComment: [ - "POST /repos/{owner}/{repo}/commits/{commit_sha}/comments" - ], - createCommitSignatureProtection: [ - "POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures" - ], - createCommitStatus: ["POST /repos/{owner}/{repo}/statuses/{sha}"], - createDeployKey: ["POST /repos/{owner}/{repo}/keys"], - createDeployment: ["POST /repos/{owner}/{repo}/deployments"], - createDeploymentBranchPolicy: [ - "POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies" - ], - createDeploymentProtectionRule: [ - "POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules" - ], - createDeploymentStatus: [ - "POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses" - ], - createDispatchEvent: ["POST /repos/{owner}/{repo}/dispatches"], - createForAuthenticatedUser: ["POST /user/repos"], - createFork: ["POST /repos/{owner}/{repo}/forks"], - createInOrg: ["POST /orgs/{org}/repos"], - createOrUpdateCustomPropertiesValues: [ - "PATCH /repos/{owner}/{repo}/properties/values" - ], - createOrUpdateEnvironment: [ - "PUT /repos/{owner}/{repo}/environments/{environment_name}" - ], - createOrUpdateFileContents: ["PUT /repos/{owner}/{repo}/contents/{path}"], - createOrgRuleset: ["POST /orgs/{org}/rulesets"], - createPagesDeployment: ["POST /repos/{owner}/{repo}/pages/deployments"], - createPagesSite: ["POST /repos/{owner}/{repo}/pages"], - createRelease: ["POST /repos/{owner}/{repo}/releases"], - createRepoRuleset: ["POST /repos/{owner}/{repo}/rulesets"], - createTagProtection: ["POST /repos/{owner}/{repo}/tags/protection"], - createUsingTemplate: [ - "POST /repos/{template_owner}/{template_repo}/generate" - ], - createWebhook: ["POST /repos/{owner}/{repo}/hooks"], - declineInvitation: [ - "DELETE /user/repository_invitations/{invitation_id}", - {}, - { renamed: ["repos", "declineInvitationForAuthenticatedUser"] } - ], - declineInvitationForAuthenticatedUser: [ - "DELETE /user/repository_invitations/{invitation_id}" - ], - delete: ["DELETE /repos/{owner}/{repo}"], - deleteAccessRestrictions: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions" - ], - deleteAdminBranchProtection: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins" - ], - deleteAnEnvironment: [ - "DELETE /repos/{owner}/{repo}/environments/{environment_name}" - ], - deleteAutolink: ["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"], - deleteBranchProtection: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection" - ], - deleteCommitComment: ["DELETE /repos/{owner}/{repo}/comments/{comment_id}"], - deleteCommitSignatureProtection: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures" - ], - deleteDeployKey: ["DELETE /repos/{owner}/{repo}/keys/{key_id}"], - deleteDeployment: [ - "DELETE /repos/{owner}/{repo}/deployments/{deployment_id}" - ], - deleteDeploymentBranchPolicy: [ - "DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}" - ], - deleteFile: ["DELETE /repos/{owner}/{repo}/contents/{path}"], - deleteInvitation: [ - "DELETE /repos/{owner}/{repo}/invitations/{invitation_id}" - ], - deleteOrgRuleset: ["DELETE /orgs/{org}/rulesets/{ruleset_id}"], - deletePagesSite: ["DELETE /repos/{owner}/{repo}/pages"], - deletePullRequestReviewProtection: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews" - ], - deleteRelease: ["DELETE /repos/{owner}/{repo}/releases/{release_id}"], - deleteReleaseAsset: [ - "DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}" - ], - deleteRepoRuleset: ["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"], - deleteTagProtection: [ - "DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}" - ], - deleteWebhook: ["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"], - disableAutomatedSecurityFixes: [ - "DELETE /repos/{owner}/{repo}/automated-security-fixes" - ], - disableDeploymentProtectionRule: [ - "DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}" - ], - disablePrivateVulnerabilityReporting: [ - "DELETE /repos/{owner}/{repo}/private-vulnerability-reporting" - ], - disableVulnerabilityAlerts: [ - "DELETE /repos/{owner}/{repo}/vulnerability-alerts" - ], - downloadArchive: [ - "GET /repos/{owner}/{repo}/zipball/{ref}", - {}, - { renamed: ["repos", "downloadZipballArchive"] } - ], - downloadTarballArchive: ["GET /repos/{owner}/{repo}/tarball/{ref}"], - downloadZipballArchive: ["GET /repos/{owner}/{repo}/zipball/{ref}"], - enableAutomatedSecurityFixes: [ - "PUT /repos/{owner}/{repo}/automated-security-fixes" - ], - enablePrivateVulnerabilityReporting: [ - "PUT /repos/{owner}/{repo}/private-vulnerability-reporting" - ], - enableVulnerabilityAlerts: [ - "PUT /repos/{owner}/{repo}/vulnerability-alerts" - ], - generateReleaseNotes: [ - "POST /repos/{owner}/{repo}/releases/generate-notes" - ], - get: ["GET /repos/{owner}/{repo}"], - getAccessRestrictions: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions" - ], - getAdminBranchProtection: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins" - ], - getAllDeploymentProtectionRules: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules" - ], - getAllEnvironments: ["GET /repos/{owner}/{repo}/environments"], - getAllStatusCheckContexts: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts" - ], - getAllTopics: ["GET /repos/{owner}/{repo}/topics"], - getAppsWithAccessToProtectedBranch: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps" - ], - getAutolink: ["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"], - getBranch: ["GET /repos/{owner}/{repo}/branches/{branch}"], - getBranchProtection: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection" - ], - getBranchRules: ["GET /repos/{owner}/{repo}/rules/branches/{branch}"], - getClones: ["GET /repos/{owner}/{repo}/traffic/clones"], - getCodeFrequencyStats: ["GET /repos/{owner}/{repo}/stats/code_frequency"], - getCollaboratorPermissionLevel: [ - "GET /repos/{owner}/{repo}/collaborators/{username}/permission" - ], - getCombinedStatusForRef: ["GET /repos/{owner}/{repo}/commits/{ref}/status"], - getCommit: ["GET /repos/{owner}/{repo}/commits/{ref}"], - getCommitActivityStats: ["GET /repos/{owner}/{repo}/stats/commit_activity"], - getCommitComment: ["GET /repos/{owner}/{repo}/comments/{comment_id}"], - getCommitSignatureProtection: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures" - ], - getCommunityProfileMetrics: ["GET /repos/{owner}/{repo}/community/profile"], - getContent: ["GET /repos/{owner}/{repo}/contents/{path}"], - getContributorsStats: ["GET /repos/{owner}/{repo}/stats/contributors"], - getCustomDeploymentProtectionRule: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}" - ], - getCustomPropertiesValues: ["GET /repos/{owner}/{repo}/properties/values"], - getDeployKey: ["GET /repos/{owner}/{repo}/keys/{key_id}"], - getDeployment: ["GET /repos/{owner}/{repo}/deployments/{deployment_id}"], - getDeploymentBranchPolicy: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}" - ], - getDeploymentStatus: [ - "GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}" - ], - getEnvironment: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}" - ], - getLatestPagesBuild: ["GET /repos/{owner}/{repo}/pages/builds/latest"], - getLatestRelease: ["GET /repos/{owner}/{repo}/releases/latest"], - getOrgRuleSuite: ["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"], - getOrgRuleSuites: ["GET /orgs/{org}/rulesets/rule-suites"], - getOrgRuleset: ["GET /orgs/{org}/rulesets/{ruleset_id}"], - getOrgRulesets: ["GET /orgs/{org}/rulesets"], - getPages: ["GET /repos/{owner}/{repo}/pages"], - getPagesBuild: ["GET /repos/{owner}/{repo}/pages/builds/{build_id}"], - getPagesDeployment: [ - "GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}" - ], - getPagesHealthCheck: ["GET /repos/{owner}/{repo}/pages/health"], - getParticipationStats: ["GET /repos/{owner}/{repo}/stats/participation"], - getPullRequestReviewProtection: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews" - ], - getPunchCardStats: ["GET /repos/{owner}/{repo}/stats/punch_card"], - getReadme: ["GET /repos/{owner}/{repo}/readme"], - getReadmeInDirectory: ["GET /repos/{owner}/{repo}/readme/{dir}"], - getRelease: ["GET /repos/{owner}/{repo}/releases/{release_id}"], - getReleaseAsset: ["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"], - getReleaseByTag: ["GET /repos/{owner}/{repo}/releases/tags/{tag}"], - getRepoRuleSuite: [ - "GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}" - ], - getRepoRuleSuites: ["GET /repos/{owner}/{repo}/rulesets/rule-suites"], - getRepoRuleset: ["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"], - getRepoRulesets: ["GET /repos/{owner}/{repo}/rulesets"], - getStatusChecksProtection: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks" - ], - getTeamsWithAccessToProtectedBranch: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams" - ], - getTopPaths: ["GET /repos/{owner}/{repo}/traffic/popular/paths"], - getTopReferrers: ["GET /repos/{owner}/{repo}/traffic/popular/referrers"], - getUsersWithAccessToProtectedBranch: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users" - ], - getViews: ["GET /repos/{owner}/{repo}/traffic/views"], - getWebhook: ["GET /repos/{owner}/{repo}/hooks/{hook_id}"], - getWebhookConfigForRepo: [ - "GET /repos/{owner}/{repo}/hooks/{hook_id}/config" - ], - getWebhookDelivery: [ - "GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}" - ], - listActivities: ["GET /repos/{owner}/{repo}/activity"], - listAutolinks: ["GET /repos/{owner}/{repo}/autolinks"], - listBranches: ["GET /repos/{owner}/{repo}/branches"], - listBranchesForHeadCommit: [ - "GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head" - ], - listCollaborators: ["GET /repos/{owner}/{repo}/collaborators"], - listCommentsForCommit: [ - "GET /repos/{owner}/{repo}/commits/{commit_sha}/comments" - ], - listCommitCommentsForRepo: ["GET /repos/{owner}/{repo}/comments"], - listCommitStatusesForRef: [ - "GET /repos/{owner}/{repo}/commits/{ref}/statuses" - ], - listCommits: ["GET /repos/{owner}/{repo}/commits"], - listContributors: ["GET /repos/{owner}/{repo}/contributors"], - listCustomDeploymentRuleIntegrations: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps" - ], - listDeployKeys: ["GET /repos/{owner}/{repo}/keys"], - listDeploymentBranchPolicies: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies" - ], - listDeploymentStatuses: [ - "GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses" - ], - listDeployments: ["GET /repos/{owner}/{repo}/deployments"], - listForAuthenticatedUser: ["GET /user/repos"], - listForOrg: ["GET /orgs/{org}/repos"], - listForUser: ["GET /users/{username}/repos"], - listForks: ["GET /repos/{owner}/{repo}/forks"], - listInvitations: ["GET /repos/{owner}/{repo}/invitations"], - listInvitationsForAuthenticatedUser: ["GET /user/repository_invitations"], - listLanguages: ["GET /repos/{owner}/{repo}/languages"], - listPagesBuilds: ["GET /repos/{owner}/{repo}/pages/builds"], - listPublic: ["GET /repositories"], - listPullRequestsAssociatedWithCommit: [ - "GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls" - ], - listReleaseAssets: [ - "GET /repos/{owner}/{repo}/releases/{release_id}/assets" - ], - listReleases: ["GET /repos/{owner}/{repo}/releases"], - listTagProtection: ["GET /repos/{owner}/{repo}/tags/protection"], - listTags: ["GET /repos/{owner}/{repo}/tags"], - listTeams: ["GET /repos/{owner}/{repo}/teams"], - listWebhookDeliveries: [ - "GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries" - ], - listWebhooks: ["GET /repos/{owner}/{repo}/hooks"], - merge: ["POST /repos/{owner}/{repo}/merges"], - mergeUpstream: ["POST /repos/{owner}/{repo}/merge-upstream"], - pingWebhook: ["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"], - redeliverWebhookDelivery: [ - "POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts" - ], - removeAppAccessRestrictions: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps", - {}, - { mapToData: "apps" } - ], - removeCollaborator: [ - "DELETE /repos/{owner}/{repo}/collaborators/{username}" - ], - removeStatusCheckContexts: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts", - {}, - { mapToData: "contexts" } - ], - removeStatusCheckProtection: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks" - ], - removeTeamAccessRestrictions: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams", - {}, - { mapToData: "teams" } - ], - removeUserAccessRestrictions: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users", - {}, - { mapToData: "users" } - ], - renameBranch: ["POST /repos/{owner}/{repo}/branches/{branch}/rename"], - replaceAllTopics: ["PUT /repos/{owner}/{repo}/topics"], - requestPagesBuild: ["POST /repos/{owner}/{repo}/pages/builds"], - setAdminBranchProtection: [ - "POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins" - ], - setAppAccessRestrictions: [ - "PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps", - {}, - { mapToData: "apps" } - ], - setStatusCheckContexts: [ - "PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts", - {}, - { mapToData: "contexts" } - ], - setTeamAccessRestrictions: [ - "PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams", - {}, - { mapToData: "teams" } - ], - setUserAccessRestrictions: [ - "PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users", - {}, - { mapToData: "users" } - ], - testPushWebhook: ["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"], - transfer: ["POST /repos/{owner}/{repo}/transfer"], - update: ["PATCH /repos/{owner}/{repo}"], - updateBranchProtection: [ - "PUT /repos/{owner}/{repo}/branches/{branch}/protection" - ], - updateCommitComment: ["PATCH /repos/{owner}/{repo}/comments/{comment_id}"], - updateDeploymentBranchPolicy: [ - "PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}" - ], - updateInformationAboutPagesSite: ["PUT /repos/{owner}/{repo}/pages"], - updateInvitation: [ - "PATCH /repos/{owner}/{repo}/invitations/{invitation_id}" - ], - updateOrgRuleset: ["PUT /orgs/{org}/rulesets/{ruleset_id}"], - updatePullRequestReviewProtection: [ - "PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews" - ], - updateRelease: ["PATCH /repos/{owner}/{repo}/releases/{release_id}"], - updateReleaseAsset: [ - "PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}" - ], - updateRepoRuleset: ["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"], - updateStatusCheckPotection: [ - "PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks", - {}, - { renamed: ["repos", "updateStatusCheckProtection"] } - ], - updateStatusCheckProtection: [ - "PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks" - ], - updateWebhook: ["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"], - updateWebhookConfigForRepo: [ - "PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config" - ], - uploadReleaseAsset: [ - "POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}", - { baseUrl: "https://uploads.github.com" } - ] - }, - search: { - code: ["GET /search/code"], - commits: ["GET /search/commits"], - issuesAndPullRequests: ["GET /search/issues"], - labels: ["GET /search/labels"], - repos: ["GET /search/repositories"], - topics: ["GET /search/topics"], - users: ["GET /search/users"] - }, - secretScanning: { - getAlert: [ - "GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}" - ], - listAlertsForEnterprise: [ - "GET /enterprises/{enterprise}/secret-scanning/alerts" - ], - listAlertsForOrg: ["GET /orgs/{org}/secret-scanning/alerts"], - listAlertsForRepo: ["GET /repos/{owner}/{repo}/secret-scanning/alerts"], - listLocationsForAlert: [ - "GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations" - ], - updateAlert: [ - "PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}" - ] - }, - securityAdvisories: { - createFork: [ - "POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks" - ], - createPrivateVulnerabilityReport: [ - "POST /repos/{owner}/{repo}/security-advisories/reports" - ], - createRepositoryAdvisory: [ - "POST /repos/{owner}/{repo}/security-advisories" - ], - createRepositoryAdvisoryCveRequest: [ - "POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve" - ], - getGlobalAdvisory: ["GET /advisories/{ghsa_id}"], - getRepositoryAdvisory: [ - "GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}" - ], - listGlobalAdvisories: ["GET /advisories"], - listOrgRepositoryAdvisories: ["GET /orgs/{org}/security-advisories"], - listRepositoryAdvisories: ["GET /repos/{owner}/{repo}/security-advisories"], - updateRepositoryAdvisory: [ - "PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}" - ] - }, - teams: { - addOrUpdateMembershipForUserInOrg: [ - "PUT /orgs/{org}/teams/{team_slug}/memberships/{username}" - ], - addOrUpdateProjectPermissionsInOrg: [ - "PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}" - ], - addOrUpdateRepoPermissionsInOrg: [ - "PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}" - ], - checkPermissionsForProjectInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/projects/{project_id}" - ], - checkPermissionsForRepoInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}" - ], - create: ["POST /orgs/{org}/teams"], - createDiscussionCommentInOrg: [ - "POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments" - ], - createDiscussionInOrg: ["POST /orgs/{org}/teams/{team_slug}/discussions"], - deleteDiscussionCommentInOrg: [ - "DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}" - ], - deleteDiscussionInOrg: [ - "DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}" - ], - deleteInOrg: ["DELETE /orgs/{org}/teams/{team_slug}"], - getByName: ["GET /orgs/{org}/teams/{team_slug}"], - getDiscussionCommentInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}" - ], - getDiscussionInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}" - ], - getMembershipForUserInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/memberships/{username}" - ], - list: ["GET /orgs/{org}/teams"], - listChildInOrg: ["GET /orgs/{org}/teams/{team_slug}/teams"], - listDiscussionCommentsInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments" - ], - listDiscussionsInOrg: ["GET /orgs/{org}/teams/{team_slug}/discussions"], - listForAuthenticatedUser: ["GET /user/teams"], - listMembersInOrg: ["GET /orgs/{org}/teams/{team_slug}/members"], - listPendingInvitationsInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/invitations" - ], - listProjectsInOrg: ["GET /orgs/{org}/teams/{team_slug}/projects"], - listReposInOrg: ["GET /orgs/{org}/teams/{team_slug}/repos"], - removeMembershipForUserInOrg: [ - "DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}" - ], - removeProjectInOrg: [ - "DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}" - ], - removeRepoInOrg: [ - "DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}" - ], - updateDiscussionCommentInOrg: [ - "PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}" - ], - updateDiscussionInOrg: [ - "PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}" - ], - updateInOrg: ["PATCH /orgs/{org}/teams/{team_slug}"] - }, - users: { - addEmailForAuthenticated: [ - "POST /user/emails", - {}, - { renamed: ["users", "addEmailForAuthenticatedUser"] } - ], - addEmailForAuthenticatedUser: ["POST /user/emails"], - addSocialAccountForAuthenticatedUser: ["POST /user/social_accounts"], - block: ["PUT /user/blocks/{username}"], - checkBlocked: ["GET /user/blocks/{username}"], - checkFollowingForUser: ["GET /users/{username}/following/{target_user}"], - checkPersonIsFollowedByAuthenticated: ["GET /user/following/{username}"], - createGpgKeyForAuthenticated: [ - "POST /user/gpg_keys", - {}, - { renamed: ["users", "createGpgKeyForAuthenticatedUser"] } - ], - createGpgKeyForAuthenticatedUser: ["POST /user/gpg_keys"], - createPublicSshKeyForAuthenticated: [ - "POST /user/keys", - {}, - { renamed: ["users", "createPublicSshKeyForAuthenticatedUser"] } - ], - createPublicSshKeyForAuthenticatedUser: ["POST /user/keys"], - createSshSigningKeyForAuthenticatedUser: ["POST /user/ssh_signing_keys"], - deleteEmailForAuthenticated: [ - "DELETE /user/emails", - {}, - { renamed: ["users", "deleteEmailForAuthenticatedUser"] } - ], - deleteEmailForAuthenticatedUser: ["DELETE /user/emails"], - deleteGpgKeyForAuthenticated: [ - "DELETE /user/gpg_keys/{gpg_key_id}", - {}, - { renamed: ["users", "deleteGpgKeyForAuthenticatedUser"] } - ], - deleteGpgKeyForAuthenticatedUser: ["DELETE /user/gpg_keys/{gpg_key_id}"], - deletePublicSshKeyForAuthenticated: [ - "DELETE /user/keys/{key_id}", - {}, - { renamed: ["users", "deletePublicSshKeyForAuthenticatedUser"] } - ], - deletePublicSshKeyForAuthenticatedUser: ["DELETE /user/keys/{key_id}"], - deleteSocialAccountForAuthenticatedUser: ["DELETE /user/social_accounts"], - deleteSshSigningKeyForAuthenticatedUser: [ - "DELETE /user/ssh_signing_keys/{ssh_signing_key_id}" - ], - follow: ["PUT /user/following/{username}"], - getAuthenticated: ["GET /user"], - getByUsername: ["GET /users/{username}"], - getContextForUser: ["GET /users/{username}/hovercard"], - getGpgKeyForAuthenticated: [ - "GET /user/gpg_keys/{gpg_key_id}", - {}, - { renamed: ["users", "getGpgKeyForAuthenticatedUser"] } - ], - getGpgKeyForAuthenticatedUser: ["GET /user/gpg_keys/{gpg_key_id}"], - getPublicSshKeyForAuthenticated: [ - "GET /user/keys/{key_id}", - {}, - { renamed: ["users", "getPublicSshKeyForAuthenticatedUser"] } - ], - getPublicSshKeyForAuthenticatedUser: ["GET /user/keys/{key_id}"], - getSshSigningKeyForAuthenticatedUser: [ - "GET /user/ssh_signing_keys/{ssh_signing_key_id}" - ], - list: ["GET /users"], - listBlockedByAuthenticated: [ - "GET /user/blocks", - {}, - { renamed: ["users", "listBlockedByAuthenticatedUser"] } - ], - listBlockedByAuthenticatedUser: ["GET /user/blocks"], - listEmailsForAuthenticated: [ - "GET /user/emails", - {}, - { renamed: ["users", "listEmailsForAuthenticatedUser"] } - ], - listEmailsForAuthenticatedUser: ["GET /user/emails"], - listFollowedByAuthenticated: [ - "GET /user/following", - {}, - { renamed: ["users", "listFollowedByAuthenticatedUser"] } - ], - listFollowedByAuthenticatedUser: ["GET /user/following"], - listFollowersForAuthenticatedUser: ["GET /user/followers"], - listFollowersForUser: ["GET /users/{username}/followers"], - listFollowingForUser: ["GET /users/{username}/following"], - listGpgKeysForAuthenticated: [ - "GET /user/gpg_keys", - {}, - { renamed: ["users", "listGpgKeysForAuthenticatedUser"] } - ], - listGpgKeysForAuthenticatedUser: ["GET /user/gpg_keys"], - listGpgKeysForUser: ["GET /users/{username}/gpg_keys"], - listPublicEmailsForAuthenticated: [ - "GET /user/public_emails", - {}, - { renamed: ["users", "listPublicEmailsForAuthenticatedUser"] } - ], - listPublicEmailsForAuthenticatedUser: ["GET /user/public_emails"], - listPublicKeysForUser: ["GET /users/{username}/keys"], - listPublicSshKeysForAuthenticated: [ - "GET /user/keys", - {}, - { renamed: ["users", "listPublicSshKeysForAuthenticatedUser"] } - ], - listPublicSshKeysForAuthenticatedUser: ["GET /user/keys"], - listSocialAccountsForAuthenticatedUser: ["GET /user/social_accounts"], - listSocialAccountsForUser: ["GET /users/{username}/social_accounts"], - listSshSigningKeysForAuthenticatedUser: ["GET /user/ssh_signing_keys"], - listSshSigningKeysForUser: ["GET /users/{username}/ssh_signing_keys"], - setPrimaryEmailVisibilityForAuthenticated: [ - "PATCH /user/email/visibility", - {}, - { renamed: ["users", "setPrimaryEmailVisibilityForAuthenticatedUser"] } - ], - setPrimaryEmailVisibilityForAuthenticatedUser: [ - "PATCH /user/email/visibility" - ], - unblock: ["DELETE /user/blocks/{username}"], - unfollow: ["DELETE /user/following/{username}"], - updateAuthenticated: ["PATCH /user"] - } -}; -var endpoints_default = Endpoints; - -// pkg/dist-src/endpoints-to-methods.js -var endpointMethodsMap = /* @__PURE__ */ new Map(); -for (const [scope, endpoints] of Object.entries(endpoints_default)) { - for (const [methodName, endpoint] of Object.entries(endpoints)) { - const [route, defaults, decorations] = endpoint; - const [method, url] = route.split(/ /); - const endpointDefaults = Object.assign( - { - method, - url - }, - defaults - ); - if (!endpointMethodsMap.has(scope)) { - endpointMethodsMap.set(scope, /* @__PURE__ */ new Map()); - } - endpointMethodsMap.get(scope).set(methodName, { - scope, - methodName, - endpointDefaults, - decorations - }); - } -} -var handler = { - has({ scope }, methodName) { - return endpointMethodsMap.get(scope).has(methodName); - }, - getOwnPropertyDescriptor(target, methodName) { - return { - value: this.get(target, methodName), - // ensures method is in the cache - configurable: true, - writable: true, - enumerable: true - }; - }, - defineProperty(target, methodName, descriptor) { - Object.defineProperty(target.cache, methodName, descriptor); - return true; - }, - deleteProperty(target, methodName) { - delete target.cache[methodName]; - return true; - }, - ownKeys({ scope }) { - return [...endpointMethodsMap.get(scope).keys()]; - }, - set(target, methodName, value) { - return target.cache[methodName] = value; - }, - get({ octokit, scope, cache }, methodName) { - if (cache[methodName]) { - return cache[methodName]; - } - const method = endpointMethodsMap.get(scope).get(methodName); - if (!method) { - return void 0; - } - const { endpointDefaults, decorations } = method; - if (decorations) { - cache[methodName] = decorate( - octokit, - scope, - methodName, - endpointDefaults, - decorations - ); - } else { - cache[methodName] = octokit.request.defaults(endpointDefaults); - } - return cache[methodName]; - } -}; -function endpointsToMethods(octokit) { - const newMethods = {}; - for (const scope of endpointMethodsMap.keys()) { - newMethods[scope] = new Proxy({ octokit, scope, cache: {} }, handler); - } - return newMethods; -} -function decorate(octokit, scope, methodName, defaults, decorations) { - const requestWithDefaults = octokit.request.defaults(defaults); - function withDecorations(...args) { - let options = requestWithDefaults.endpoint.merge(...args); - if (decorations.mapToData) { - options = Object.assign({}, options, { - data: options[decorations.mapToData], - [decorations.mapToData]: void 0 - }); - return requestWithDefaults(options); - } - if (decorations.renamed) { - const [newScope, newMethodName] = decorations.renamed; - octokit.log.warn( - `octokit.${scope}.${methodName}() has been renamed to octokit.${newScope}.${newMethodName}()` - ); - } - if (decorations.deprecated) { - octokit.log.warn(decorations.deprecated); - } - if (decorations.renamedParameters) { - const options2 = requestWithDefaults.endpoint.merge(...args); - for (const [name, alias] of Object.entries( - decorations.renamedParameters - )) { - if (name in options2) { - octokit.log.warn( - `"${name}" parameter is deprecated for "octokit.${scope}.${methodName}()". Use "${alias}" instead` - ); - if (!(alias in options2)) { - options2[alias] = options2[name]; - } - delete options2[name]; - } - } - return requestWithDefaults(options2); - } - return requestWithDefaults(...args); - } - return Object.assign(withDecorations, requestWithDefaults); -} - -// pkg/dist-src/index.js -function restEndpointMethods(octokit) { - const api = endpointsToMethods(octokit); - return { - rest: api - }; -} -restEndpointMethods.VERSION = VERSION; -function legacyRestEndpointMethods(octokit) { - const api = endpointsToMethods(octokit); - return { - ...api, - rest: api - }; -} -legacyRestEndpointMethods.VERSION = VERSION; -// Annotate the CommonJS export names for ESM import in node: -0 && (0); - - -/***/ }), - -/***/ 44552: -/***/ (function(__unused_webpack_module, exports) { - -"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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.PersonalAccessTokenCredentialHandler = exports.BearerCredentialHandler = exports.BasicCredentialHandler = void 0; -class BasicCredentialHandler { - constructor(username, password) { - this.username = username; - this.password = password; - } - prepareRequest(options) { - if (!options.headers) { - throw Error('The request has no headers'); - } - options.headers['Authorization'] = `Basic ${Buffer.from(`${this.username}:${this.password}`).toString('base64')}`; - } - // This handler cannot handle 401 - canHandleAuthentication() { - return false; - } - handleAuthentication() { - return __awaiter(this, void 0, void 0, function* () { - throw new Error('not implemented'); - }); - } -} -exports.BasicCredentialHandler = BasicCredentialHandler; -class BearerCredentialHandler { - constructor(token) { - this.token = token; - } - // currently implements pre-authorization - // TODO: support preAuth = false where it hooks on 401 - prepareRequest(options) { - if (!options.headers) { - throw Error('The request has no headers'); - } - options.headers['Authorization'] = `Bearer ${this.token}`; - } - // This handler cannot handle 401 - canHandleAuthentication() { - return false; - } - handleAuthentication() { - return __awaiter(this, void 0, void 0, function* () { - throw new Error('not implemented'); - }); - } -} -exports.BearerCredentialHandler = BearerCredentialHandler; -class PersonalAccessTokenCredentialHandler { - constructor(token) { - this.token = token; - } - // currently implements pre-authorization - // TODO: support preAuth = false where it hooks on 401 - prepareRequest(options) { - if (!options.headers) { - throw Error('The request has no headers'); - } - options.headers['Authorization'] = `Basic ${Buffer.from(`PAT:${this.token}`).toString('base64')}`; - } - // This handler cannot handle 401 - canHandleAuthentication() { - return false; - } - handleAuthentication() { - return __awaiter(this, void 0, void 0, function* () { - throw new Error('not implemented'); - }); - } -} -exports.PersonalAccessTokenCredentialHandler = PersonalAccessTokenCredentialHandler; -//# sourceMappingURL=auth.js.map - -/***/ }), - -/***/ 54844: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -/* eslint-disable @typescript-eslint/no-explicit-any */ -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.HttpClient = exports.isHttps = exports.HttpClientResponse = exports.HttpClientError = exports.getProxyUrl = exports.MediaTypes = exports.Headers = exports.HttpCodes = void 0; -const http = __importStar(__nccwpck_require__(58611)); -const https = __importStar(__nccwpck_require__(65692)); -const pm = __importStar(__nccwpck_require__(54988)); -const tunnel = __importStar(__nccwpck_require__(20770)); -const undici_1 = __nccwpck_require__(46752); -var HttpCodes; -(function (HttpCodes) { - HttpCodes[HttpCodes["OK"] = 200] = "OK"; - HttpCodes[HttpCodes["MultipleChoices"] = 300] = "MultipleChoices"; - HttpCodes[HttpCodes["MovedPermanently"] = 301] = "MovedPermanently"; - HttpCodes[HttpCodes["ResourceMoved"] = 302] = "ResourceMoved"; - HttpCodes[HttpCodes["SeeOther"] = 303] = "SeeOther"; - HttpCodes[HttpCodes["NotModified"] = 304] = "NotModified"; - HttpCodes[HttpCodes["UseProxy"] = 305] = "UseProxy"; - HttpCodes[HttpCodes["SwitchProxy"] = 306] = "SwitchProxy"; - HttpCodes[HttpCodes["TemporaryRedirect"] = 307] = "TemporaryRedirect"; - HttpCodes[HttpCodes["PermanentRedirect"] = 308] = "PermanentRedirect"; - HttpCodes[HttpCodes["BadRequest"] = 400] = "BadRequest"; - HttpCodes[HttpCodes["Unauthorized"] = 401] = "Unauthorized"; - HttpCodes[HttpCodes["PaymentRequired"] = 402] = "PaymentRequired"; - HttpCodes[HttpCodes["Forbidden"] = 403] = "Forbidden"; - HttpCodes[HttpCodes["NotFound"] = 404] = "NotFound"; - HttpCodes[HttpCodes["MethodNotAllowed"] = 405] = "MethodNotAllowed"; - HttpCodes[HttpCodes["NotAcceptable"] = 406] = "NotAcceptable"; - HttpCodes[HttpCodes["ProxyAuthenticationRequired"] = 407] = "ProxyAuthenticationRequired"; - HttpCodes[HttpCodes["RequestTimeout"] = 408] = "RequestTimeout"; - HttpCodes[HttpCodes["Conflict"] = 409] = "Conflict"; - HttpCodes[HttpCodes["Gone"] = 410] = "Gone"; - HttpCodes[HttpCodes["TooManyRequests"] = 429] = "TooManyRequests"; - HttpCodes[HttpCodes["InternalServerError"] = 500] = "InternalServerError"; - HttpCodes[HttpCodes["NotImplemented"] = 501] = "NotImplemented"; - HttpCodes[HttpCodes["BadGateway"] = 502] = "BadGateway"; - HttpCodes[HttpCodes["ServiceUnavailable"] = 503] = "ServiceUnavailable"; - HttpCodes[HttpCodes["GatewayTimeout"] = 504] = "GatewayTimeout"; -})(HttpCodes || (exports.HttpCodes = HttpCodes = {})); -var Headers; -(function (Headers) { - Headers["Accept"] = "accept"; - Headers["ContentType"] = "content-type"; -})(Headers || (exports.Headers = Headers = {})); -var MediaTypes; -(function (MediaTypes) { - MediaTypes["ApplicationJson"] = "application/json"; -})(MediaTypes || (exports.MediaTypes = MediaTypes = {})); -/** - * Returns the proxy URL, depending upon the supplied url and proxy environment variables. - * @param serverUrl The server URL where the request will be sent. For example, https://api.github.com - */ -function getProxyUrl(serverUrl) { - const proxyUrl = pm.getProxyUrl(new URL(serverUrl)); - return proxyUrl ? proxyUrl.href : ''; -} -exports.getProxyUrl = getProxyUrl; -const HttpRedirectCodes = [ - HttpCodes.MovedPermanently, - HttpCodes.ResourceMoved, - HttpCodes.SeeOther, - HttpCodes.TemporaryRedirect, - HttpCodes.PermanentRedirect -]; -const HttpResponseRetryCodes = [ - HttpCodes.BadGateway, - HttpCodes.ServiceUnavailable, - HttpCodes.GatewayTimeout -]; -const RetryableHttpVerbs = ['OPTIONS', 'GET', 'DELETE', 'HEAD']; -const ExponentialBackoffCeiling = 10; -const ExponentialBackoffTimeSlice = 5; -class HttpClientError extends Error { - constructor(message, statusCode) { - super(message); - this.name = 'HttpClientError'; - this.statusCode = statusCode; - Object.setPrototypeOf(this, HttpClientError.prototype); - } -} -exports.HttpClientError = HttpClientError; -class HttpClientResponse { - constructor(message) { - this.message = message; - } - readBody() { - return __awaiter(this, void 0, void 0, function* () { - return new Promise((resolve) => __awaiter(this, void 0, void 0, function* () { - let output = Buffer.alloc(0); - this.message.on('data', (chunk) => { - output = Buffer.concat([output, chunk]); - }); - this.message.on('end', () => { - resolve(output.toString()); - }); - })); - }); - } - readBodyBuffer() { - return __awaiter(this, void 0, void 0, function* () { - return new Promise((resolve) => __awaiter(this, void 0, void 0, function* () { - const chunks = []; - this.message.on('data', (chunk) => { - chunks.push(chunk); - }); - this.message.on('end', () => { - resolve(Buffer.concat(chunks)); - }); - })); - }); - } -} -exports.HttpClientResponse = HttpClientResponse; -function isHttps(requestUrl) { - const parsedUrl = new URL(requestUrl); - return parsedUrl.protocol === 'https:'; -} -exports.isHttps = isHttps; -class HttpClient { - constructor(userAgent, handlers, requestOptions) { - this._ignoreSslError = false; - this._allowRedirects = true; - this._allowRedirectDowngrade = false; - this._maxRedirects = 50; - this._allowRetries = false; - this._maxRetries = 1; - this._keepAlive = false; - this._disposed = false; - this.userAgent = userAgent; - this.handlers = handlers || []; - this.requestOptions = requestOptions; - if (requestOptions) { - if (requestOptions.ignoreSslError != null) { - this._ignoreSslError = requestOptions.ignoreSslError; - } - this._socketTimeout = requestOptions.socketTimeout; - if (requestOptions.allowRedirects != null) { - this._allowRedirects = requestOptions.allowRedirects; - } - if (requestOptions.allowRedirectDowngrade != null) { - this._allowRedirectDowngrade = requestOptions.allowRedirectDowngrade; - } - if (requestOptions.maxRedirects != null) { - this._maxRedirects = Math.max(requestOptions.maxRedirects, 0); - } - if (requestOptions.keepAlive != null) { - this._keepAlive = requestOptions.keepAlive; - } - if (requestOptions.allowRetries != null) { - this._allowRetries = requestOptions.allowRetries; - } - if (requestOptions.maxRetries != null) { - this._maxRetries = requestOptions.maxRetries; - } - } - } - options(requestUrl, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request('OPTIONS', requestUrl, null, additionalHeaders || {}); - }); - } - get(requestUrl, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request('GET', requestUrl, null, additionalHeaders || {}); - }); - } - del(requestUrl, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request('DELETE', requestUrl, null, additionalHeaders || {}); - }); - } - post(requestUrl, data, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request('POST', requestUrl, data, additionalHeaders || {}); - }); - } - patch(requestUrl, data, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request('PATCH', requestUrl, data, additionalHeaders || {}); - }); - } - put(requestUrl, data, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request('PUT', requestUrl, data, additionalHeaders || {}); - }); - } - head(requestUrl, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request('HEAD', requestUrl, null, additionalHeaders || {}); - }); - } - sendStream(verb, requestUrl, stream, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request(verb, requestUrl, stream, additionalHeaders); - }); - } - /** - * Gets a typed object from an endpoint - * Be aware that not found returns a null. Other errors (4xx, 5xx) reject the promise - */ - getJson(requestUrl, additionalHeaders = {}) { - return __awaiter(this, void 0, void 0, function* () { - additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson); - const res = yield this.get(requestUrl, additionalHeaders); - return this._processResponse(res, this.requestOptions); - }); - } - postJson(requestUrl, obj, additionalHeaders = {}) { - return __awaiter(this, void 0, void 0, function* () { - const data = JSON.stringify(obj, null, 2); - additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson); - additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson); - const res = yield this.post(requestUrl, data, additionalHeaders); - return this._processResponse(res, this.requestOptions); - }); - } - putJson(requestUrl, obj, additionalHeaders = {}) { - return __awaiter(this, void 0, void 0, function* () { - const data = JSON.stringify(obj, null, 2); - additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson); - additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson); - const res = yield this.put(requestUrl, data, additionalHeaders); - return this._processResponse(res, this.requestOptions); - }); - } - patchJson(requestUrl, obj, additionalHeaders = {}) { - return __awaiter(this, void 0, void 0, function* () { - const data = JSON.stringify(obj, null, 2); - additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson); - additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson); - const res = yield this.patch(requestUrl, data, additionalHeaders); - return this._processResponse(res, this.requestOptions); - }); - } - /** - * Makes a raw http request. - * All other methods such as get, post, patch, and request ultimately call this. - * Prefer get, del, post and patch - */ - request(verb, requestUrl, data, headers) { - return __awaiter(this, void 0, void 0, function* () { - if (this._disposed) { - throw new Error('Client has already been disposed.'); - } - const parsedUrl = new URL(requestUrl); - let info = this._prepareRequest(verb, parsedUrl, headers); - // Only perform retries on reads since writes may not be idempotent. - const maxTries = this._allowRetries && RetryableHttpVerbs.includes(verb) - ? this._maxRetries + 1 - : 1; - let numTries = 0; - let response; - do { - response = yield this.requestRaw(info, data); - // Check if it's an authentication challenge - if (response && - response.message && - response.message.statusCode === HttpCodes.Unauthorized) { - let authenticationHandler; - for (const handler of this.handlers) { - if (handler.canHandleAuthentication(response)) { - authenticationHandler = handler; - break; - } - } - if (authenticationHandler) { - return authenticationHandler.handleAuthentication(this, info, data); - } - else { - // We have received an unauthorized response but have no handlers to handle it. - // Let the response return to the caller. - return response; - } - } - let redirectsRemaining = this._maxRedirects; - while (response.message.statusCode && - HttpRedirectCodes.includes(response.message.statusCode) && - this._allowRedirects && - redirectsRemaining > 0) { - const redirectUrl = response.message.headers['location']; - if (!redirectUrl) { - // if there's no location to redirect to, we won't - break; - } - const parsedRedirectUrl = new URL(redirectUrl); - if (parsedUrl.protocol === 'https:' && - parsedUrl.protocol !== parsedRedirectUrl.protocol && - !this._allowRedirectDowngrade) { - throw new Error('Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.'); - } - // we need to finish reading the response before reassigning response - // which will leak the open socket. - yield response.readBody(); - // strip authorization header if redirected to a different hostname - if (parsedRedirectUrl.hostname !== parsedUrl.hostname) { - for (const header in headers) { - // header names are case insensitive - if (header.toLowerCase() === 'authorization') { - delete headers[header]; - } - } - } - // let's make the request with the new redirectUrl - info = this._prepareRequest(verb, parsedRedirectUrl, headers); - response = yield this.requestRaw(info, data); - redirectsRemaining--; - } - if (!response.message.statusCode || - !HttpResponseRetryCodes.includes(response.message.statusCode)) { - // If not a retry code, return immediately instead of retrying - return response; - } - numTries += 1; - if (numTries < maxTries) { - yield response.readBody(); - yield this._performExponentialBackoff(numTries); - } - } while (numTries < maxTries); - return response; - }); - } - /** - * Needs to be called if keepAlive is set to true in request options. - */ - dispose() { - if (this._agent) { - this._agent.destroy(); - } - this._disposed = true; - } - /** - * Raw request. - * @param info - * @param data - */ - requestRaw(info, data) { - return __awaiter(this, void 0, void 0, function* () { - return new Promise((resolve, reject) => { - function callbackForResult(err, res) { - if (err) { - reject(err); - } - else if (!res) { - // If `err` is not passed, then `res` must be passed. - reject(new Error('Unknown error')); - } - else { - resolve(res); - } - } - this.requestRawWithCallback(info, data, callbackForResult); - }); - }); - } - /** - * Raw request with callback. - * @param info - * @param data - * @param onResult - */ - requestRawWithCallback(info, data, onResult) { - if (typeof data === 'string') { - if (!info.options.headers) { - info.options.headers = {}; - } - info.options.headers['Content-Length'] = Buffer.byteLength(data, 'utf8'); - } - let callbackCalled = false; - function handleResult(err, res) { - if (!callbackCalled) { - callbackCalled = true; - onResult(err, res); - } - } - const req = info.httpModule.request(info.options, (msg) => { - const res = new HttpClientResponse(msg); - handleResult(undefined, res); - }); - let socket; - req.on('socket', sock => { - socket = sock; - }); - // If we ever get disconnected, we want the socket to timeout eventually - req.setTimeout(this._socketTimeout || 3 * 60000, () => { - if (socket) { - socket.end(); - } - handleResult(new Error(`Request timeout: ${info.options.path}`)); - }); - req.on('error', function (err) { - // err has statusCode property - // res should have headers - handleResult(err); - }); - if (data && typeof data === 'string') { - req.write(data, 'utf8'); - } - if (data && typeof data !== 'string') { - data.on('close', function () { - req.end(); - }); - data.pipe(req); - } - else { - req.end(); - } - } - /** - * Gets an http agent. This function is useful when you need an http agent that handles - * routing through a proxy server - depending upon the url and proxy environment variables. - * @param serverUrl The server URL where the request will be sent. For example, https://api.github.com - */ - getAgent(serverUrl) { - const parsedUrl = new URL(serverUrl); - return this._getAgent(parsedUrl); - } - getAgentDispatcher(serverUrl) { - const parsedUrl = new URL(serverUrl); - const proxyUrl = pm.getProxyUrl(parsedUrl); - const useProxy = proxyUrl && proxyUrl.hostname; - if (!useProxy) { - return; - } - return this._getProxyAgentDispatcher(parsedUrl, proxyUrl); - } - _prepareRequest(method, requestUrl, headers) { - const info = {}; - info.parsedUrl = requestUrl; - const usingSsl = info.parsedUrl.protocol === 'https:'; - info.httpModule = usingSsl ? https : http; - const defaultPort = usingSsl ? 443 : 80; - info.options = {}; - info.options.host = info.parsedUrl.hostname; - info.options.port = info.parsedUrl.port - ? parseInt(info.parsedUrl.port) - : defaultPort; - info.options.path = - (info.parsedUrl.pathname || '') + (info.parsedUrl.search || ''); - info.options.method = method; - info.options.headers = this._mergeHeaders(headers); - if (this.userAgent != null) { - info.options.headers['user-agent'] = this.userAgent; - } - info.options.agent = this._getAgent(info.parsedUrl); - // gives handlers an opportunity to participate - if (this.handlers) { - for (const handler of this.handlers) { - handler.prepareRequest(info.options); - } - } - return info; - } - _mergeHeaders(headers) { - if (this.requestOptions && this.requestOptions.headers) { - return Object.assign({}, lowercaseKeys(this.requestOptions.headers), lowercaseKeys(headers || {})); - } - return lowercaseKeys(headers || {}); - } - _getExistingOrDefaultHeader(additionalHeaders, header, _default) { - let clientHeader; - if (this.requestOptions && this.requestOptions.headers) { - clientHeader = lowercaseKeys(this.requestOptions.headers)[header]; - } - return additionalHeaders[header] || clientHeader || _default; - } - _getAgent(parsedUrl) { - let agent; - const proxyUrl = pm.getProxyUrl(parsedUrl); - const useProxy = proxyUrl && proxyUrl.hostname; - if (this._keepAlive && useProxy) { - agent = this._proxyAgent; - } - if (!useProxy) { - agent = this._agent; - } - // if agent is already assigned use that agent. - if (agent) { - return agent; - } - const usingSsl = parsedUrl.protocol === 'https:'; - let maxSockets = 100; - if (this.requestOptions) { - maxSockets = this.requestOptions.maxSockets || http.globalAgent.maxSockets; - } - // This is `useProxy` again, but we need to check `proxyURl` directly for TypeScripts's flow analysis. - if (proxyUrl && proxyUrl.hostname) { - const agentOptions = { - maxSockets, - keepAlive: this._keepAlive, - proxy: Object.assign(Object.assign({}, ((proxyUrl.username || proxyUrl.password) && { - proxyAuth: `${proxyUrl.username}:${proxyUrl.password}` - })), { host: proxyUrl.hostname, port: proxyUrl.port }) - }; - let tunnelAgent; - const overHttps = proxyUrl.protocol === 'https:'; - if (usingSsl) { - tunnelAgent = overHttps ? tunnel.httpsOverHttps : tunnel.httpsOverHttp; - } - else { - tunnelAgent = overHttps ? tunnel.httpOverHttps : tunnel.httpOverHttp; - } - agent = tunnelAgent(agentOptions); - this._proxyAgent = agent; - } - // if tunneling agent isn't assigned create a new agent - if (!agent) { - const options = { keepAlive: this._keepAlive, maxSockets }; - agent = usingSsl ? new https.Agent(options) : new http.Agent(options); - this._agent = agent; - } - if (usingSsl && this._ignoreSslError) { - // we don't want to set NODE_TLS_REJECT_UNAUTHORIZED=0 since that will affect request for entire process - // http.RequestOptions doesn't expose a way to modify RequestOptions.agent.options - // we have to cast it to any and change it directly - agent.options = Object.assign(agent.options || {}, { - rejectUnauthorized: false - }); - } - return agent; - } - _getProxyAgentDispatcher(parsedUrl, proxyUrl) { - let proxyAgent; - if (this._keepAlive) { - proxyAgent = this._proxyAgentDispatcher; - } - // if agent is already assigned use that agent. - if (proxyAgent) { - return proxyAgent; - } - const usingSsl = parsedUrl.protocol === 'https:'; - proxyAgent = new undici_1.ProxyAgent(Object.assign({ uri: proxyUrl.href, pipelining: !this._keepAlive ? 0 : 1 }, ((proxyUrl.username || proxyUrl.password) && { - token: `Basic ${Buffer.from(`${proxyUrl.username}:${proxyUrl.password}`).toString('base64')}` - }))); - this._proxyAgentDispatcher = proxyAgent; - if (usingSsl && this._ignoreSslError) { - // we don't want to set NODE_TLS_REJECT_UNAUTHORIZED=0 since that will affect request for entire process - // http.RequestOptions doesn't expose a way to modify RequestOptions.agent.options - // we have to cast it to any and change it directly - proxyAgent.options = Object.assign(proxyAgent.options.requestTls || {}, { - rejectUnauthorized: false - }); - } - return proxyAgent; - } - _performExponentialBackoff(retryNumber) { - return __awaiter(this, void 0, void 0, function* () { - retryNumber = Math.min(ExponentialBackoffCeiling, retryNumber); - const ms = ExponentialBackoffTimeSlice * Math.pow(2, retryNumber); - return new Promise(resolve => setTimeout(() => resolve(), ms)); - }); - } - _processResponse(res, options) { - return __awaiter(this, void 0, void 0, function* () { - return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { - const statusCode = res.message.statusCode || 0; - const response = { - statusCode, - result: null, - headers: {} - }; - // not found leads to null obj returned - if (statusCode === HttpCodes.NotFound) { - resolve(response); - } - // get the result from the body - function dateTimeDeserializer(key, value) { - if (typeof value === 'string') { - const a = new Date(value); - if (!isNaN(a.valueOf())) { - return a; - } - } - return value; - } - let obj; - let contents; - try { - contents = yield res.readBody(); - if (contents && contents.length > 0) { - if (options && options.deserializeDates) { - obj = JSON.parse(contents, dateTimeDeserializer); - } - else { - obj = JSON.parse(contents); - } - response.result = obj; - } - response.headers = res.message.headers; - } - catch (err) { - // Invalid resource (contents not json); leaving result obj null - } - // note that 3xx redirects are handled by the http layer. - if (statusCode > 299) { - let msg; - // if exception/error in body, attempt to get better error - if (obj && obj.message) { - msg = obj.message; - } - else if (contents && contents.length > 0) { - // it may be the case that the exception is in the body message as string - msg = contents; - } - else { - msg = `Failed request: (${statusCode})`; - } - const err = new HttpClientError(msg, statusCode); - err.result = response.result; - reject(err); - } - else { - resolve(response); - } - })); - }); - } -} -exports.HttpClient = HttpClient; -const lowercaseKeys = (obj) => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {}); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 54988: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.checkBypass = exports.getProxyUrl = void 0; -function getProxyUrl(reqUrl) { - const usingSsl = reqUrl.protocol === 'https:'; - if (checkBypass(reqUrl)) { - return undefined; - } - const proxyVar = (() => { - if (usingSsl) { - return process.env['https_proxy'] || process.env['HTTPS_PROXY']; - } - else { - return process.env['http_proxy'] || process.env['HTTP_PROXY']; - } - })(); - if (proxyVar) { - try { - return new DecodedURL(proxyVar); - } - catch (_a) { - if (!proxyVar.startsWith('http://') && !proxyVar.startsWith('https://')) - return new DecodedURL(`http://${proxyVar}`); - } - } - else { - return undefined; - } -} -exports.getProxyUrl = getProxyUrl; -function checkBypass(reqUrl) { - if (!reqUrl.hostname) { - return false; - } - const reqHost = reqUrl.hostname; - if (isLoopbackAddress(reqHost)) { - return true; - } - const noProxy = process.env['no_proxy'] || process.env['NO_PROXY'] || ''; - if (!noProxy) { - return false; - } - // Determine the request port - let reqPort; - if (reqUrl.port) { - reqPort = Number(reqUrl.port); - } - else if (reqUrl.protocol === 'http:') { - reqPort = 80; - } - else if (reqUrl.protocol === 'https:') { - reqPort = 443; - } - // Format the request hostname and hostname with port - const upperReqHosts = [reqUrl.hostname.toUpperCase()]; - if (typeof reqPort === 'number') { - upperReqHosts.push(`${upperReqHosts[0]}:${reqPort}`); - } - // Compare request host against noproxy - for (const upperNoProxyItem of noProxy - .split(',') - .map(x => x.trim().toUpperCase()) - .filter(x => x)) { - if (upperNoProxyItem === '*' || - upperReqHosts.some(x => x === upperNoProxyItem || - x.endsWith(`.${upperNoProxyItem}`) || - (upperNoProxyItem.startsWith('.') && - x.endsWith(`${upperNoProxyItem}`)))) { - return true; - } - } - return false; -} -exports.checkBypass = checkBypass; -function isLoopbackAddress(host) { - const hostLower = host.toLowerCase(); - return (hostLower === 'localhost' || - hostLower.startsWith('127.') || - hostLower.startsWith('[::1]') || - hostLower.startsWith('[0:0:0:0:0:0:0:1]')); -} -class DecodedURL extends URL { - constructor(url, base) { - super(url, base); - this._decodedUsername = decodeURIComponent(super.username); - this._decodedPassword = decodeURIComponent(super.password); - } - get username() { - return this._decodedUsername; - } - get password() { - return this._decodedPassword; - } -} -//# sourceMappingURL=proxy.js.map - -/***/ }), - -/***/ 75207: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -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 _a; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.getCmdPath = exports.tryGetExecutablePath = exports.isRooted = exports.isDirectory = exports.exists = exports.READONLY = exports.UV_FS_O_EXLOCK = exports.IS_WINDOWS = exports.unlink = exports.symlink = exports.stat = exports.rmdir = exports.rm = exports.rename = exports.readlink = exports.readdir = exports.open = exports.mkdir = exports.lstat = exports.copyFile = exports.chmod = void 0; -const fs = __importStar(__nccwpck_require__(79896)); -const path = __importStar(__nccwpck_require__(16928)); -_a = fs.promises -// export const {open} = 'fs' -, exports.chmod = _a.chmod, exports.copyFile = _a.copyFile, exports.lstat = _a.lstat, exports.mkdir = _a.mkdir, exports.open = _a.open, exports.readdir = _a.readdir, exports.readlink = _a.readlink, exports.rename = _a.rename, exports.rm = _a.rm, exports.rmdir = _a.rmdir, exports.stat = _a.stat, exports.symlink = _a.symlink, exports.unlink = _a.unlink; -// export const {open} = 'fs' -exports.IS_WINDOWS = process.platform === 'win32'; -// See https://github.com/nodejs/node/blob/d0153aee367422d0858105abec186da4dff0a0c5/deps/uv/include/uv/win.h#L691 -exports.UV_FS_O_EXLOCK = 0x10000000; -exports.READONLY = fs.constants.O_RDONLY; -function exists(fsPath) { - return __awaiter(this, void 0, void 0, function* () { - try { - yield exports.stat(fsPath); - } - catch (err) { - if (err.code === 'ENOENT') { - return false; - } - throw err; - } - return true; - }); -} -exports.exists = exists; -function isDirectory(fsPath, useStat = false) { - return __awaiter(this, void 0, void 0, function* () { - const stats = useStat ? yield exports.stat(fsPath) : yield exports.lstat(fsPath); - return stats.isDirectory(); - }); -} -exports.isDirectory = isDirectory; -/** - * On OSX/Linux, true if path starts with '/'. On Windows, true for paths like: - * \, \hello, \\hello\share, C:, and C:\hello (and corresponding alternate separator cases). - */ -function isRooted(p) { - p = normalizeSeparators(p); - if (!p) { - throw new Error('isRooted() parameter "p" cannot be empty'); - } - if (exports.IS_WINDOWS) { - return (p.startsWith('\\') || /^[A-Z]:/i.test(p) // e.g. \ or \hello or \\hello - ); // e.g. C: or C:\hello - } - return p.startsWith('/'); -} -exports.isRooted = isRooted; -/** - * Best effort attempt to determine whether a file exists and is executable. - * @param filePath file path to check - * @param extensions additional file extensions to try - * @return if file exists and is executable, returns the file path. otherwise empty string. - */ -function tryGetExecutablePath(filePath, extensions) { - return __awaiter(this, void 0, void 0, function* () { - let stats = undefined; - try { - // test file exists - stats = yield exports.stat(filePath); - } - catch (err) { - if (err.code !== 'ENOENT') { - // eslint-disable-next-line no-console - console.log(`Unexpected error attempting to determine if executable file exists '${filePath}': ${err}`); - } - } - if (stats && stats.isFile()) { - if (exports.IS_WINDOWS) { - // on Windows, test for valid extension - const upperExt = path.extname(filePath).toUpperCase(); - if (extensions.some(validExt => validExt.toUpperCase() === upperExt)) { - return filePath; - } - } - else { - if (isUnixExecutable(stats)) { - return filePath; - } - } - } - // try each extension - const originalFilePath = filePath; - for (const extension of extensions) { - filePath = originalFilePath + extension; - stats = undefined; - try { - stats = yield exports.stat(filePath); - } - catch (err) { - if (err.code !== 'ENOENT') { - // eslint-disable-next-line no-console - console.log(`Unexpected error attempting to determine if executable file exists '${filePath}': ${err}`); - } - } - if (stats && stats.isFile()) { - if (exports.IS_WINDOWS) { - // preserve the case of the actual file (since an extension was appended) - try { - const directory = path.dirname(filePath); - const upperName = path.basename(filePath).toUpperCase(); - for (const actualName of yield exports.readdir(directory)) { - if (upperName === actualName.toUpperCase()) { - filePath = path.join(directory, actualName); - break; - } - } - } - catch (err) { - // eslint-disable-next-line no-console - console.log(`Unexpected error attempting to determine the actual case of the file '${filePath}': ${err}`); - } - return filePath; - } - else { - if (isUnixExecutable(stats)) { - return filePath; - } - } - } - } - return ''; - }); -} -exports.tryGetExecutablePath = tryGetExecutablePath; -function normalizeSeparators(p) { - p = p || ''; - if (exports.IS_WINDOWS) { - // convert slashes on Windows - p = p.replace(/\//g, '\\'); - // remove redundant slashes - return p.replace(/\\\\+/g, '\\'); - } - // remove redundant slashes - return p.replace(/\/\/+/g, '/'); -} -// on Mac/Linux, test the execute bit -// R W X R W X R W X -// 256 128 64 32 16 8 4 2 1 -function isUnixExecutable(stats) { - return ((stats.mode & 1) > 0 || - ((stats.mode & 8) > 0 && stats.gid === process.getgid()) || - ((stats.mode & 64) > 0 && stats.uid === process.getuid())); -} -// Get the path of cmd.exe in windows -function getCmdPath() { - var _a; - return (_a = process.env['COMSPEC']) !== null && _a !== void 0 ? _a : `cmd.exe`; -} -exports.getCmdPath = getCmdPath; -//# sourceMappingURL=io-util.js.map - -/***/ }), - -/***/ 94994: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.findInPath = exports.which = exports.mkdirP = exports.rmRF = exports.mv = exports.cp = void 0; -const assert_1 = __nccwpck_require__(42613); -const path = __importStar(__nccwpck_require__(16928)); -const ioUtil = __importStar(__nccwpck_require__(75207)); -/** - * Copies a file or folder. - * Based off of shelljs - https://github.com/shelljs/shelljs/blob/9237f66c52e5daa40458f94f9565e18e8132f5a6/src/cp.js - * - * @param source source path - * @param dest destination path - * @param options optional. See CopyOptions. - */ -function cp(source, dest, options = {}) { - return __awaiter(this, void 0, void 0, function* () { - const { force, recursive, copySourceDirectory } = readCopyOptions(options); - const destStat = (yield ioUtil.exists(dest)) ? yield ioUtil.stat(dest) : null; - // Dest is an existing file, but not forcing - if (destStat && destStat.isFile() && !force) { - return; - } - // If dest is an existing directory, should copy inside. - const newDest = destStat && destStat.isDirectory() && copySourceDirectory - ? path.join(dest, path.basename(source)) - : dest; - if (!(yield ioUtil.exists(source))) { - throw new Error(`no such file or directory: ${source}`); - } - const sourceStat = yield ioUtil.stat(source); - if (sourceStat.isDirectory()) { - if (!recursive) { - throw new Error(`Failed to copy. ${source} is a directory, but tried to copy without recursive flag.`); - } - else { - yield cpDirRecursive(source, newDest, 0, force); - } - } - else { - if (path.relative(source, newDest) === '') { - // a file cannot be copied to itself - throw new Error(`'${newDest}' and '${source}' are the same file`); - } - yield copyFile(source, newDest, force); - } - }); -} -exports.cp = cp; -/** - * Moves a path. - * - * @param source source path - * @param dest destination path - * @param options optional. See MoveOptions. - */ -function mv(source, dest, options = {}) { - return __awaiter(this, void 0, void 0, function* () { - if (yield ioUtil.exists(dest)) { - let destExists = true; - if (yield ioUtil.isDirectory(dest)) { - // If dest is directory copy src into dest - dest = path.join(dest, path.basename(source)); - destExists = yield ioUtil.exists(dest); - } - if (destExists) { - if (options.force == null || options.force) { - yield rmRF(dest); - } - else { - throw new Error('Destination already exists'); - } - } - } - yield mkdirP(path.dirname(dest)); - yield ioUtil.rename(source, dest); - }); -} -exports.mv = mv; -/** - * Remove a path recursively with force - * - * @param inputPath path to remove - */ -function rmRF(inputPath) { - return __awaiter(this, void 0, void 0, function* () { - if (ioUtil.IS_WINDOWS) { - // Check for invalid characters - // https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file - if (/[*"<>|]/.test(inputPath)) { - throw new Error('File path must not contain `*`, `"`, `<`, `>` or `|` on Windows'); - } - } - try { - // note if path does not exist, error is silent - yield ioUtil.rm(inputPath, { - force: true, - maxRetries: 3, - recursive: true, - retryDelay: 300 - }); - } - catch (err) { - throw new Error(`File was unable to be removed ${err}`); - } - }); -} -exports.rmRF = rmRF; -/** - * Make a directory. Creates the full path with folders in between - * Will throw if it fails + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */const tn=en(26628);function permuteDomain(Wt,Pt){const en=tn.getPublicSuffix(Wt,{allowSpecialUseDomain:Pt});if(!en){return null}if(en==Wt){return[Wt]}if(Wt.slice(-1)=="."){Wt=Wt.slice(0,-1)}const nn=Wt.slice(0,-(en.length+1));const an=nn.split(".").reverse();let rn=en;const In=[rn];while(an.length){rn=`${an.shift()}.${rn}`;In.push(rn)}return In}Pt.permuteDomain=permuteDomain},26628:(Wt,Pt,en)=>{"use strict"; +/*! + * Copyright (c) 2018, Salesforce.com, Inc. + * All rights reserved. * - * @param fsPath path to create - * @returns Promise - */ -function mkdirP(fsPath) { - return __awaiter(this, void 0, void 0, function* () { - assert_1.ok(fsPath, 'a path argument must be provided'); - yield ioUtil.mkdir(fsPath, { recursive: true }); - }); -} -exports.mkdirP = mkdirP; -/** - * Returns path of a tool had the tool actually been invoked. Resolves via paths. - * If you check and the tool does not exist, it will throw. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: * - * @param tool name of the tool - * @param check whether to check if tool exists - * @returns Promise path to tool - */ -function which(tool, check) { - return __awaiter(this, void 0, void 0, function* () { - if (!tool) { - throw new Error("parameter 'tool' is required"); - } - // recursive when check=true - if (check) { - const result = yield which(tool, false); - if (!result) { - if (ioUtil.IS_WINDOWS) { - throw new Error(`Unable to locate executable file: ${tool}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.`); - } - else { - throw new Error(`Unable to locate executable file: ${tool}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.`); - } - } - return result; - } - const matches = yield findInPath(tool); - if (matches && matches.length > 0) { - return matches[0]; - } - return ''; - }); -} -exports.which = which; -/** - * Returns a list of all occurrences of the given tool on the system path. + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. * - * @returns Promise the paths of the tool - */ -function findInPath(tool) { - return __awaiter(this, void 0, void 0, function* () { - if (!tool) { - throw new Error("parameter 'tool' is required"); - } - // build the list of extensions to try - const extensions = []; - if (ioUtil.IS_WINDOWS && process.env['PATHEXT']) { - for (const extension of process.env['PATHEXT'].split(path.delimiter)) { - if (extension) { - extensions.push(extension); - } - } - } - // if it's rooted, return it if exists. otherwise return empty. - if (ioUtil.isRooted(tool)) { - const filePath = yield ioUtil.tryGetExecutablePath(tool, extensions); - if (filePath) { - return [filePath]; - } - return []; - } - // if any path separators, return empty - if (tool.includes(path.sep)) { - return []; - } - // build the list of directories - // - // Note, technically "where" checks the current directory on Windows. From a toolkit perspective, - // it feels like we should not do this. Checking the current directory seems like more of a use - // case of a shell, and the which() function exposed by the toolkit should strive for consistency - // across platforms. - const directories = []; - if (process.env.PATH) { - for (const p of process.env.PATH.split(path.delimiter)) { - if (p) { - directories.push(p); - } - } - } - // find all matches - const matches = []; - for (const directory of directories) { - const filePath = yield ioUtil.tryGetExecutablePath(path.join(directory, tool), extensions); - if (filePath) { - matches.push(filePath); - } - } - return matches; - }); -} -exports.findInPath = findInPath; -function readCopyOptions(options) { - const force = options.force == null ? true : options.force; - const recursive = Boolean(options.recursive); - const copySourceDirectory = options.copySourceDirectory == null - ? true - : Boolean(options.copySourceDirectory); - return { force, recursive, copySourceDirectory }; -} -function cpDirRecursive(sourceDir, destDir, currentDepth, force) { - return __awaiter(this, void 0, void 0, function* () { - // Ensure there is not a run away recursive copy - if (currentDepth >= 255) - return; - currentDepth++; - yield mkdirP(destDir); - const files = yield ioUtil.readdir(sourceDir); - for (const fileName of files) { - const srcFile = `${sourceDir}/${fileName}`; - const destFile = `${destDir}/${fileName}`; - const srcFileStat = yield ioUtil.lstat(srcFile); - if (srcFileStat.isDirectory()) { - // Recurse - yield cpDirRecursive(srcFile, destFile, currentDepth, force); - } - else { - yield copyFile(srcFile, destFile, force); - } - } - // Change the mode for the newly created directory - yield ioUtil.chmod(destDir, (yield ioUtil.stat(sourceDir)).mode); - }); -} -// Buffered file copy -function copyFile(srcFile, destFile, force) { - return __awaiter(this, void 0, void 0, function* () { - if ((yield ioUtil.lstat(srcFile)).isSymbolicLink()) { - // unlink/re-link it - try { - yield ioUtil.lstat(destFile); - yield ioUtil.unlink(destFile); - } - catch (e) { - // Try to override file permission - if (e.code === 'EPERM') { - yield ioUtil.chmod(destFile, '0666'); - yield ioUtil.unlink(destFile); - } - // other errors = it doesn't exist, no work to do - } - // Copy over symlink - const symlinkFull = yield ioUtil.readlink(srcFile); - yield ioUtil.symlink(symlinkFull, destFile, ioUtil.IS_WINDOWS ? 'junction' : null); - } - else if (!(yield ioUtil.exists(destFile)) || force) { - yield ioUtil.copyFile(srcFile, destFile); - } - }); -} -//# sourceMappingURL=io.js.map - -/***/ }), - -/***/ 90108: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "abi/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 30097: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.defaultAbiCoder = exports.AbiCoder = void 0; -// See: https://github.com/ethereum/wiki/wiki/Ethereum-Contract-ABI -var bytes_1 = __nccwpck_require__(42006); -var properties_1 = __nccwpck_require__(61338); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(90108); -var logger = new logger_1.Logger(_version_1.version); -var abstract_coder_1 = __nccwpck_require__(41430); -var address_1 = __nccwpck_require__(84825); -var array_1 = __nccwpck_require__(79811); -var boolean_1 = __nccwpck_require__(85238); -var bytes_2 = __nccwpck_require__(95837); -var fixed_bytes_1 = __nccwpck_require__(45994); -var null_1 = __nccwpck_require__(95005); -var number_1 = __nccwpck_require__(98849); -var string_1 = __nccwpck_require__(99117); -var tuple_1 = __nccwpck_require__(78068); -var fragments_1 = __nccwpck_require__(65186); -var paramTypeBytes = new RegExp(/^bytes([0-9]*)$/); -var paramTypeNumber = new RegExp(/^(u?int)([0-9]*)$/); -var AbiCoder = /** @class */ (function () { - function AbiCoder(coerceFunc) { - (0, properties_1.defineReadOnly)(this, "coerceFunc", coerceFunc || null); - } - AbiCoder.prototype._getCoder = function (param) { - var _this = this; - switch (param.baseType) { - case "address": - return new address_1.AddressCoder(param.name); - case "bool": - return new boolean_1.BooleanCoder(param.name); - case "string": - return new string_1.StringCoder(param.name); - case "bytes": - return new bytes_2.BytesCoder(param.name); - case "array": - return new array_1.ArrayCoder(this._getCoder(param.arrayChildren), param.arrayLength, param.name); - case "tuple": - return new tuple_1.TupleCoder((param.components || []).map(function (component) { - return _this._getCoder(component); - }), param.name); - case "": - return new null_1.NullCoder(param.name); - } - // u?int[0-9]* - var match = param.type.match(paramTypeNumber); - if (match) { - var size = parseInt(match[2] || "256"); - if (size === 0 || size > 256 || (size % 8) !== 0) { - logger.throwArgumentError("invalid " + match[1] + " bit length", "param", param); - } - return new number_1.NumberCoder(size / 8, (match[1] === "int"), param.name); - } - // bytes[0-9]+ - match = param.type.match(paramTypeBytes); - if (match) { - var size = parseInt(match[1]); - if (size === 0 || size > 32) { - logger.throwArgumentError("invalid bytes length", "param", param); - } - return new fixed_bytes_1.FixedBytesCoder(size, param.name); - } - return logger.throwArgumentError("invalid type", "type", param.type); - }; - AbiCoder.prototype._getWordSize = function () { return 32; }; - AbiCoder.prototype._getReader = function (data, allowLoose) { - return new abstract_coder_1.Reader(data, this._getWordSize(), this.coerceFunc, allowLoose); - }; - AbiCoder.prototype._getWriter = function () { - return new abstract_coder_1.Writer(this._getWordSize()); - }; - AbiCoder.prototype.getDefaultValue = function (types) { - var _this = this; - var coders = types.map(function (type) { return _this._getCoder(fragments_1.ParamType.from(type)); }); - var coder = new tuple_1.TupleCoder(coders, "_"); - return coder.defaultValue(); - }; - AbiCoder.prototype.encode = function (types, values) { - var _this = this; - if (types.length !== values.length) { - logger.throwError("types/values length mismatch", logger_1.Logger.errors.INVALID_ARGUMENT, { - count: { types: types.length, values: values.length }, - value: { types: types, values: values } - }); - } - var coders = types.map(function (type) { return _this._getCoder(fragments_1.ParamType.from(type)); }); - var coder = (new tuple_1.TupleCoder(coders, "_")); - var writer = this._getWriter(); - coder.encode(writer, values); - return writer.data; - }; - AbiCoder.prototype.decode = function (types, data, loose) { - var _this = this; - var coders = types.map(function (type) { return _this._getCoder(fragments_1.ParamType.from(type)); }); - var coder = new tuple_1.TupleCoder(coders, "_"); - return coder.decode(this._getReader((0, bytes_1.arrayify)(data), loose)); - }; - return AbiCoder; -}()); -exports.AbiCoder = AbiCoder; -exports.defaultAbiCoder = new AbiCoder(); -//# sourceMappingURL=abi-coder.js.map - -/***/ }), - -/***/ 41430: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Reader = exports.Writer = exports.Coder = exports.checkResultErrors = void 0; -var bytes_1 = __nccwpck_require__(42006); -var bignumber_1 = __nccwpck_require__(18202); -var properties_1 = __nccwpck_require__(61338); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(90108); -var logger = new logger_1.Logger(_version_1.version); -function checkResultErrors(result) { - // Find the first error (if any) - var errors = []; - var checkErrors = function (path, object) { - if (!Array.isArray(object)) { - return; - } - for (var key in object) { - var childPath = path.slice(); - childPath.push(key); - try { - checkErrors(childPath, object[key]); - } - catch (error) { - errors.push({ path: childPath, error: error }); - } - } - }; - checkErrors([], result); - return errors; -} -exports.checkResultErrors = checkResultErrors; -var Coder = /** @class */ (function () { - function Coder(name, type, localName, dynamic) { - // @TODO: defineReadOnly these - this.name = name; - this.type = type; - this.localName = localName; - this.dynamic = dynamic; - } - Coder.prototype._throwError = function (message, value) { - logger.throwArgumentError(message, this.localName, value); - }; - return Coder; -}()); -exports.Coder = Coder; -var Writer = /** @class */ (function () { - function Writer(wordSize) { - (0, properties_1.defineReadOnly)(this, "wordSize", wordSize || 32); - this._data = []; - this._dataLength = 0; - this._padding = new Uint8Array(wordSize); - } - Object.defineProperty(Writer.prototype, "data", { - get: function () { - return (0, bytes_1.hexConcat)(this._data); - }, - enumerable: false, - configurable: true - }); - Object.defineProperty(Writer.prototype, "length", { - get: function () { return this._dataLength; }, - enumerable: false, - configurable: true - }); - Writer.prototype._writeData = function (data) { - this._data.push(data); - this._dataLength += data.length; - return data.length; - }; - Writer.prototype.appendWriter = function (writer) { - return this._writeData((0, bytes_1.concat)(writer._data)); - }; - // Arrayish items; padded on the right to wordSize - Writer.prototype.writeBytes = function (value) { - var bytes = (0, bytes_1.arrayify)(value); - var paddingOffset = bytes.length % this.wordSize; - if (paddingOffset) { - bytes = (0, bytes_1.concat)([bytes, this._padding.slice(paddingOffset)]); - } - return this._writeData(bytes); - }; - Writer.prototype._getValue = function (value) { - var bytes = (0, bytes_1.arrayify)(bignumber_1.BigNumber.from(value)); - if (bytes.length > this.wordSize) { - logger.throwError("value out-of-bounds", logger_1.Logger.errors.BUFFER_OVERRUN, { - length: this.wordSize, - offset: bytes.length - }); - } - if (bytes.length % this.wordSize) { - bytes = (0, bytes_1.concat)([this._padding.slice(bytes.length % this.wordSize), bytes]); - } - return bytes; - }; - // BigNumberish items; padded on the left to wordSize - Writer.prototype.writeValue = function (value) { - return this._writeData(this._getValue(value)); - }; - Writer.prototype.writeUpdatableValue = function () { - var _this = this; - var offset = this._data.length; - this._data.push(this._padding); - this._dataLength += this.wordSize; - return function (value) { - _this._data[offset] = _this._getValue(value); - }; - }; - return Writer; -}()); -exports.Writer = Writer; -var Reader = /** @class */ (function () { - function Reader(data, wordSize, coerceFunc, allowLoose) { - (0, properties_1.defineReadOnly)(this, "_data", (0, bytes_1.arrayify)(data)); - (0, properties_1.defineReadOnly)(this, "wordSize", wordSize || 32); - (0, properties_1.defineReadOnly)(this, "_coerceFunc", coerceFunc); - (0, properties_1.defineReadOnly)(this, "allowLoose", allowLoose); - this._offset = 0; - } - Object.defineProperty(Reader.prototype, "data", { - get: function () { return (0, bytes_1.hexlify)(this._data); }, - enumerable: false, - configurable: true - }); - Object.defineProperty(Reader.prototype, "consumed", { - get: function () { return this._offset; }, - enumerable: false, - configurable: true - }); - // The default Coerce function - Reader.coerce = function (name, value) { - var match = name.match("^u?int([0-9]+)$"); - if (match && parseInt(match[1]) <= 48) { - value = value.toNumber(); - } - return value; - }; - Reader.prototype.coerce = function (name, value) { - if (this._coerceFunc) { - return this._coerceFunc(name, value); - } - return Reader.coerce(name, value); - }; - Reader.prototype._peekBytes = function (offset, length, loose) { - var alignedLength = Math.ceil(length / this.wordSize) * this.wordSize; - if (this._offset + alignedLength > this._data.length) { - if (this.allowLoose && loose && this._offset + length <= this._data.length) { - alignedLength = length; - } - else { - logger.throwError("data out-of-bounds", logger_1.Logger.errors.BUFFER_OVERRUN, { - length: this._data.length, - offset: this._offset + alignedLength - }); - } - } - return this._data.slice(this._offset, this._offset + alignedLength); - }; - Reader.prototype.subReader = function (offset) { - return new Reader(this._data.slice(this._offset + offset), this.wordSize, this._coerceFunc, this.allowLoose); - }; - Reader.prototype.readBytes = function (length, loose) { - var bytes = this._peekBytes(0, length, !!loose); - this._offset += bytes.length; - // @TODO: Make sure the length..end bytes are all 0? - return bytes.slice(0, length); - }; - Reader.prototype.readValue = function () { - return bignumber_1.BigNumber.from(this.readBytes(this.wordSize)); - }; - return Reader; -}()); -exports.Reader = Reader; -//# sourceMappingURL=abstract-coder.js.map - -/***/ }), - -/***/ 84825: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.AddressCoder = void 0; -var address_1 = __nccwpck_require__(75745); -var bytes_1 = __nccwpck_require__(42006); -var abstract_coder_1 = __nccwpck_require__(41430); -var AddressCoder = /** @class */ (function (_super) { - __extends(AddressCoder, _super); - function AddressCoder(localName) { - return _super.call(this, "address", "address", localName, false) || this; - } - AddressCoder.prototype.defaultValue = function () { - return "0x0000000000000000000000000000000000000000"; - }; - AddressCoder.prototype.encode = function (writer, value) { - try { - value = (0, address_1.getAddress)(value); - } - catch (error) { - this._throwError(error.message, value); - } - return writer.writeValue(value); - }; - AddressCoder.prototype.decode = function (reader) { - return (0, address_1.getAddress)((0, bytes_1.hexZeroPad)(reader.readValue().toHexString(), 20)); - }; - return AddressCoder; -}(abstract_coder_1.Coder)); -exports.AddressCoder = AddressCoder; -//# sourceMappingURL=address.js.map - -/***/ }), - -/***/ 48775: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.AnonymousCoder = void 0; -var abstract_coder_1 = __nccwpck_require__(41430); -// Clones the functionality of an existing Coder, but without a localName -var AnonymousCoder = /** @class */ (function (_super) { - __extends(AnonymousCoder, _super); - function AnonymousCoder(coder) { - var _this = _super.call(this, coder.name, coder.type, undefined, coder.dynamic) || this; - _this.coder = coder; - return _this; - } - AnonymousCoder.prototype.defaultValue = function () { - return this.coder.defaultValue(); - }; - AnonymousCoder.prototype.encode = function (writer, value) { - return this.coder.encode(writer, value); - }; - AnonymousCoder.prototype.decode = function (reader) { - return this.coder.decode(reader); - }; - return AnonymousCoder; -}(abstract_coder_1.Coder)); -exports.AnonymousCoder = AnonymousCoder; -//# sourceMappingURL=anonymous.js.map - -/***/ }), - -/***/ 79811: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ArrayCoder = exports.unpack = exports.pack = void 0; -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(90108); -var logger = new logger_1.Logger(_version_1.version); -var abstract_coder_1 = __nccwpck_require__(41430); -var anonymous_1 = __nccwpck_require__(48775); -function pack(writer, coders, values) { - var arrayValues = null; - if (Array.isArray(values)) { - arrayValues = values; - } - else if (values && typeof (values) === "object") { - var unique_1 = {}; - arrayValues = coders.map(function (coder) { - var name = coder.localName; - if (!name) { - logger.throwError("cannot encode object for signature with missing names", logger_1.Logger.errors.INVALID_ARGUMENT, { - argument: "values", - coder: coder, - value: values - }); - } - if (unique_1[name]) { - logger.throwError("cannot encode object for signature with duplicate names", logger_1.Logger.errors.INVALID_ARGUMENT, { - argument: "values", - coder: coder, - value: values - }); - } - unique_1[name] = true; - return values[name]; - }); - } - else { - logger.throwArgumentError("invalid tuple value", "tuple", values); - } - if (coders.length !== arrayValues.length) { - logger.throwArgumentError("types/value length mismatch", "tuple", values); - } - var staticWriter = new abstract_coder_1.Writer(writer.wordSize); - var dynamicWriter = new abstract_coder_1.Writer(writer.wordSize); - var updateFuncs = []; - coders.forEach(function (coder, index) { - var value = arrayValues[index]; - if (coder.dynamic) { - // Get current dynamic offset (for the future pointer) - var dynamicOffset_1 = dynamicWriter.length; - // Encode the dynamic value into the dynamicWriter - coder.encode(dynamicWriter, value); - // Prepare to populate the correct offset once we are done - var updateFunc_1 = staticWriter.writeUpdatableValue(); - updateFuncs.push(function (baseOffset) { - updateFunc_1(baseOffset + dynamicOffset_1); - }); - } - else { - coder.encode(staticWriter, value); - } - }); - // Backfill all the dynamic offsets, now that we know the static length - updateFuncs.forEach(function (func) { func(staticWriter.length); }); - var length = writer.appendWriter(staticWriter); - length += writer.appendWriter(dynamicWriter); - return length; -} -exports.pack = pack; -function unpack(reader, coders) { - var values = []; - // A reader anchored to this base - var baseReader = reader.subReader(0); - coders.forEach(function (coder) { - var value = null; - if (coder.dynamic) { - var offset = reader.readValue(); - var offsetReader = baseReader.subReader(offset.toNumber()); - try { - value = coder.decode(offsetReader); - } - catch (error) { - // Cannot recover from this - if (error.code === logger_1.Logger.errors.BUFFER_OVERRUN) { - throw error; - } - value = error; - value.baseType = coder.name; - value.name = coder.localName; - value.type = coder.type; - } - } - else { - try { - value = coder.decode(reader); - } - catch (error) { - // Cannot recover from this - if (error.code === logger_1.Logger.errors.BUFFER_OVERRUN) { - throw error; - } - value = error; - value.baseType = coder.name; - value.name = coder.localName; - value.type = coder.type; - } - } - if (value != undefined) { - values.push(value); - } - }); - // We only output named properties for uniquely named coders - var uniqueNames = coders.reduce(function (accum, coder) { - var name = coder.localName; - if (name) { - if (!accum[name]) { - accum[name] = 0; - } - accum[name]++; - } - return accum; - }, {}); - // Add any named parameters (i.e. tuples) - coders.forEach(function (coder, index) { - var name = coder.localName; - if (!name || uniqueNames[name] !== 1) { - return; - } - if (name === "length") { - name = "_length"; - } - if (values[name] != null) { - return; - } - var value = values[index]; - if (value instanceof Error) { - Object.defineProperty(values, name, { - enumerable: true, - get: function () { throw value; } - }); - } - else { - values[name] = value; - } - }); - var _loop_1 = function (i) { - var value = values[i]; - if (value instanceof Error) { - Object.defineProperty(values, i, { - enumerable: true, - get: function () { throw value; } - }); - } - }; - for (var i = 0; i < values.length; i++) { - _loop_1(i); - } - return Object.freeze(values); -} -exports.unpack = unpack; -var ArrayCoder = /** @class */ (function (_super) { - __extends(ArrayCoder, _super); - function ArrayCoder(coder, length, localName) { - var _this = this; - var type = (coder.type + "[" + (length >= 0 ? length : "") + "]"); - var dynamic = (length === -1 || coder.dynamic); - _this = _super.call(this, "array", type, localName, dynamic) || this; - _this.coder = coder; - _this.length = length; - return _this; - } - ArrayCoder.prototype.defaultValue = function () { - // Verifies the child coder is valid (even if the array is dynamic or 0-length) - var defaultChild = this.coder.defaultValue(); - var result = []; - for (var i = 0; i < this.length; i++) { - result.push(defaultChild); - } - return result; - }; - ArrayCoder.prototype.encode = function (writer, value) { - if (!Array.isArray(value)) { - this._throwError("expected array value", value); - } - var count = this.length; - if (count === -1) { - count = value.length; - writer.writeValue(value.length); - } - logger.checkArgumentCount(value.length, count, "coder array" + (this.localName ? (" " + this.localName) : "")); - var coders = []; - for (var i = 0; i < value.length; i++) { - coders.push(this.coder); - } - return pack(writer, coders, value); - }; - ArrayCoder.prototype.decode = function (reader) { - var count = this.length; - if (count === -1) { - count = reader.readValue().toNumber(); - // Check that there is *roughly* enough data to ensure - // stray random data is not being read as a length. Each - // slot requires at least 32 bytes for their value (or 32 - // bytes as a link to the data). This could use a much - // tighter bound, but we are erroring on the side of safety. - if (count * 32 > reader._data.length) { - logger.throwError("insufficient data length", logger_1.Logger.errors.BUFFER_OVERRUN, { - length: reader._data.length, - count: count - }); - } - } - var coders = []; - for (var i = 0; i < count; i++) { - coders.push(new anonymous_1.AnonymousCoder(this.coder)); - } - return reader.coerce(this.name, unpack(reader, coders)); - }; - return ArrayCoder; -}(abstract_coder_1.Coder)); -exports.ArrayCoder = ArrayCoder; -//# sourceMappingURL=array.js.map - -/***/ }), - -/***/ 85238: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.BooleanCoder = void 0; -var abstract_coder_1 = __nccwpck_require__(41430); -var BooleanCoder = /** @class */ (function (_super) { - __extends(BooleanCoder, _super); - function BooleanCoder(localName) { - return _super.call(this, "bool", "bool", localName, false) || this; - } - BooleanCoder.prototype.defaultValue = function () { - return false; - }; - BooleanCoder.prototype.encode = function (writer, value) { - return writer.writeValue(value ? 1 : 0); - }; - BooleanCoder.prototype.decode = function (reader) { - return reader.coerce(this.type, !reader.readValue().isZero()); - }; - return BooleanCoder; -}(abstract_coder_1.Coder)); -exports.BooleanCoder = BooleanCoder; -//# sourceMappingURL=boolean.js.map - -/***/ }), - -/***/ 95837: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.BytesCoder = exports.DynamicBytesCoder = void 0; -var bytes_1 = __nccwpck_require__(42006); -var abstract_coder_1 = __nccwpck_require__(41430); -var DynamicBytesCoder = /** @class */ (function (_super) { - __extends(DynamicBytesCoder, _super); - function DynamicBytesCoder(type, localName) { - return _super.call(this, type, type, localName, true) || this; - } - DynamicBytesCoder.prototype.defaultValue = function () { - return "0x"; - }; - DynamicBytesCoder.prototype.encode = function (writer, value) { - value = (0, bytes_1.arrayify)(value); - var length = writer.writeValue(value.length); - length += writer.writeBytes(value); - return length; - }; - DynamicBytesCoder.prototype.decode = function (reader) { - return reader.readBytes(reader.readValue().toNumber(), true); - }; - return DynamicBytesCoder; -}(abstract_coder_1.Coder)); -exports.DynamicBytesCoder = DynamicBytesCoder; -var BytesCoder = /** @class */ (function (_super) { - __extends(BytesCoder, _super); - function BytesCoder(localName) { - return _super.call(this, "bytes", localName) || this; - } - BytesCoder.prototype.decode = function (reader) { - return reader.coerce(this.name, (0, bytes_1.hexlify)(_super.prototype.decode.call(this, reader))); - }; - return BytesCoder; -}(DynamicBytesCoder)); -exports.BytesCoder = BytesCoder; -//# sourceMappingURL=bytes.js.map - -/***/ }), - -/***/ 45994: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.FixedBytesCoder = void 0; -var bytes_1 = __nccwpck_require__(42006); -var abstract_coder_1 = __nccwpck_require__(41430); -// @TODO: Merge this with bytes -var FixedBytesCoder = /** @class */ (function (_super) { - __extends(FixedBytesCoder, _super); - function FixedBytesCoder(size, localName) { - var _this = this; - var name = "bytes" + String(size); - _this = _super.call(this, name, name, localName, false) || this; - _this.size = size; - return _this; - } - FixedBytesCoder.prototype.defaultValue = function () { - return ("0x0000000000000000000000000000000000000000000000000000000000000000").substring(0, 2 + this.size * 2); - }; - FixedBytesCoder.prototype.encode = function (writer, value) { - var data = (0, bytes_1.arrayify)(value); - if (data.length !== this.size) { - this._throwError("incorrect data length", value); - } - return writer.writeBytes(data); - }; - FixedBytesCoder.prototype.decode = function (reader) { - return reader.coerce(this.name, (0, bytes_1.hexlify)(reader.readBytes(this.size))); - }; - return FixedBytesCoder; -}(abstract_coder_1.Coder)); -exports.FixedBytesCoder = FixedBytesCoder; -//# sourceMappingURL=fixed-bytes.js.map - -/***/ }), - -/***/ 95005: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.NullCoder = void 0; -var abstract_coder_1 = __nccwpck_require__(41430); -var NullCoder = /** @class */ (function (_super) { - __extends(NullCoder, _super); - function NullCoder(localName) { - return _super.call(this, "null", "", localName, false) || this; - } - NullCoder.prototype.defaultValue = function () { - return null; - }; - NullCoder.prototype.encode = function (writer, value) { - if (value != null) { - this._throwError("not null", value); - } - return writer.writeBytes([]); - }; - NullCoder.prototype.decode = function (reader) { - reader.readBytes(0); - return reader.coerce(this.name, null); - }; - return NullCoder; -}(abstract_coder_1.Coder)); -exports.NullCoder = NullCoder; -//# sourceMappingURL=null.js.map - -/***/ }), - -/***/ 98849: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.NumberCoder = void 0; -var bignumber_1 = __nccwpck_require__(18202); -var constants_1 = __nccwpck_require__(99848); -var abstract_coder_1 = __nccwpck_require__(41430); -var NumberCoder = /** @class */ (function (_super) { - __extends(NumberCoder, _super); - function NumberCoder(size, signed, localName) { - var _this = this; - var name = ((signed ? "int" : "uint") + (size * 8)); - _this = _super.call(this, name, name, localName, false) || this; - _this.size = size; - _this.signed = signed; - return _this; - } - NumberCoder.prototype.defaultValue = function () { - return 0; - }; - NumberCoder.prototype.encode = function (writer, value) { - var v = bignumber_1.BigNumber.from(value); - // Check bounds are safe for encoding - var maxUintValue = constants_1.MaxUint256.mask(writer.wordSize * 8); - if (this.signed) { - var bounds = maxUintValue.mask(this.size * 8 - 1); - if (v.gt(bounds) || v.lt(bounds.add(constants_1.One).mul(constants_1.NegativeOne))) { - this._throwError("value out-of-bounds", value); - } - } - else if (v.lt(constants_1.Zero) || v.gt(maxUintValue.mask(this.size * 8))) { - this._throwError("value out-of-bounds", value); - } - v = v.toTwos(this.size * 8).mask(this.size * 8); - if (this.signed) { - v = v.fromTwos(this.size * 8).toTwos(8 * writer.wordSize); - } - return writer.writeValue(v); - }; - NumberCoder.prototype.decode = function (reader) { - var value = reader.readValue().mask(this.size * 8); - if (this.signed) { - value = value.fromTwos(this.size * 8); - } - return reader.coerce(this.name, value); - }; - return NumberCoder; -}(abstract_coder_1.Coder)); -exports.NumberCoder = NumberCoder; -//# sourceMappingURL=number.js.map - -/***/ }), - -/***/ 99117: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.StringCoder = void 0; -var strings_1 = __nccwpck_require__(13859); -var bytes_1 = __nccwpck_require__(95837); -var StringCoder = /** @class */ (function (_super) { - __extends(StringCoder, _super); - function StringCoder(localName) { - return _super.call(this, "string", localName) || this; - } - StringCoder.prototype.defaultValue = function () { - return ""; - }; - StringCoder.prototype.encode = function (writer, value) { - return _super.prototype.encode.call(this, writer, (0, strings_1.toUtf8Bytes)(value)); - }; - StringCoder.prototype.decode = function (reader) { - return (0, strings_1.toUtf8String)(_super.prototype.decode.call(this, reader)); - }; - return StringCoder; -}(bytes_1.DynamicBytesCoder)); -exports.StringCoder = StringCoder; -//# sourceMappingURL=string.js.map - -/***/ }), - -/***/ 78068: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TupleCoder = void 0; -var abstract_coder_1 = __nccwpck_require__(41430); -var array_1 = __nccwpck_require__(79811); -var TupleCoder = /** @class */ (function (_super) { - __extends(TupleCoder, _super); - function TupleCoder(coders, localName) { - var _this = this; - var dynamic = false; - var types = []; - coders.forEach(function (coder) { - if (coder.dynamic) { - dynamic = true; - } - types.push(coder.type); - }); - var type = ("tuple(" + types.join(",") + ")"); - _this = _super.call(this, "tuple", type, localName, dynamic) || this; - _this.coders = coders; - return _this; - } - TupleCoder.prototype.defaultValue = function () { - var values = []; - this.coders.forEach(function (coder) { - values.push(coder.defaultValue()); - }); - // We only output named properties for uniquely named coders - var uniqueNames = this.coders.reduce(function (accum, coder) { - var name = coder.localName; - if (name) { - if (!accum[name]) { - accum[name] = 0; - } - accum[name]++; - } - return accum; - }, {}); - // Add named values - this.coders.forEach(function (coder, index) { - var name = coder.localName; - if (!name || uniqueNames[name] !== 1) { - return; - } - if (name === "length") { - name = "_length"; - } - if (values[name] != null) { - return; - } - values[name] = values[index]; - }); - return Object.freeze(values); - }; - TupleCoder.prototype.encode = function (writer, value) { - return (0, array_1.pack)(writer, this.coders, value); - }; - TupleCoder.prototype.decode = function (reader) { - return reader.coerce(this.name, (0, array_1.unpack)(reader, this.coders)); - }; - return TupleCoder; -}(abstract_coder_1.Coder)); -exports.TupleCoder = TupleCoder; -//# sourceMappingURL=tuple.js.map - -/***/ }), - -/***/ 65186: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ErrorFragment = exports.FunctionFragment = exports.ConstructorFragment = exports.EventFragment = exports.Fragment = exports.ParamType = exports.FormatTypes = void 0; -var bignumber_1 = __nccwpck_require__(18202); -var properties_1 = __nccwpck_require__(61338); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(90108); -var logger = new logger_1.Logger(_version_1.version); -; -var _constructorGuard = {}; -var ModifiersBytes = { calldata: true, memory: true, storage: true }; -var ModifiersNest = { calldata: true, memory: true }; -function checkModifier(type, name) { - if (type === "bytes" || type === "string") { - if (ModifiersBytes[name]) { - return true; - } - } - else if (type === "address") { - if (name === "payable") { - return true; - } - } - else if (type.indexOf("[") >= 0 || type === "tuple") { - if (ModifiersNest[name]) { - return true; - } - } - if (ModifiersBytes[name] || name === "payable") { - logger.throwArgumentError("invalid modifier", "name", name); - } - return false; -} -// @TODO: Make sure that children of an indexed tuple are marked with a null indexed -function parseParamType(param, allowIndexed) { - var originalParam = param; - function throwError(i) { - logger.throwArgumentError("unexpected character at position " + i, "param", param); - } - param = param.replace(/\s/g, " "); - function newNode(parent) { - var node = { type: "", name: "", parent: parent, state: { allowType: true } }; - if (allowIndexed) { - node.indexed = false; - } - return node; - } - var parent = { type: "", name: "", state: { allowType: true } }; - var node = parent; - for (var i = 0; i < param.length; i++) { - var c = param[i]; - switch (c) { - case "(": - if (node.state.allowType && node.type === "") { - node.type = "tuple"; - } - else if (!node.state.allowParams) { - throwError(i); - } - node.state.allowType = false; - node.type = verifyType(node.type); - node.components = [newNode(node)]; - node = node.components[0]; - break; - case ")": - delete node.state; - if (node.name === "indexed") { - if (!allowIndexed) { - throwError(i); - } - node.indexed = true; - node.name = ""; - } - if (checkModifier(node.type, node.name)) { - node.name = ""; - } - node.type = verifyType(node.type); - var child = node; - node = node.parent; - if (!node) { - throwError(i); - } - delete child.parent; - node.state.allowParams = false; - node.state.allowName = true; - node.state.allowArray = true; - break; - case ",": - delete node.state; - if (node.name === "indexed") { - if (!allowIndexed) { - throwError(i); - } - node.indexed = true; - node.name = ""; - } - if (checkModifier(node.type, node.name)) { - node.name = ""; - } - node.type = verifyType(node.type); - var sibling = newNode(node.parent); - //{ type: "", name: "", parent: node.parent, state: { allowType: true } }; - node.parent.components.push(sibling); - delete node.parent; - node = sibling; - break; - // Hit a space... - case " ": - // If reading type, the type is done and may read a param or name - if (node.state.allowType) { - if (node.type !== "") { - node.type = verifyType(node.type); - delete node.state.allowType; - node.state.allowName = true; - node.state.allowParams = true; - } - } - // If reading name, the name is done - if (node.state.allowName) { - if (node.name !== "") { - if (node.name === "indexed") { - if (!allowIndexed) { - throwError(i); - } - if (node.indexed) { - throwError(i); - } - node.indexed = true; - node.name = ""; - } - else if (checkModifier(node.type, node.name)) { - node.name = ""; - } - else { - node.state.allowName = false; - } - } - } - break; - case "[": - if (!node.state.allowArray) { - throwError(i); - } - node.type += c; - node.state.allowArray = false; - node.state.allowName = false; - node.state.readArray = true; - break; - case "]": - if (!node.state.readArray) { - throwError(i); - } - node.type += c; - node.state.readArray = false; - node.state.allowArray = true; - node.state.allowName = true; - break; - default: - if (node.state.allowType) { - node.type += c; - node.state.allowParams = true; - node.state.allowArray = true; - } - else if (node.state.allowName) { - node.name += c; - delete node.state.allowArray; - } - else if (node.state.readArray) { - node.type += c; - } - else { - throwError(i); - } - } - } - if (node.parent) { - logger.throwArgumentError("unexpected eof", "param", param); - } - delete parent.state; - if (node.name === "indexed") { - if (!allowIndexed) { - throwError(originalParam.length - 7); - } - if (node.indexed) { - throwError(originalParam.length - 7); - } - node.indexed = true; - node.name = ""; - } - else if (checkModifier(node.type, node.name)) { - node.name = ""; - } - parent.type = verifyType(parent.type); - return parent; -} -function populate(object, params) { - for (var key in params) { - (0, properties_1.defineReadOnly)(object, key, params[key]); - } -} -exports.FormatTypes = Object.freeze({ - // Bare formatting, as is needed for computing a sighash of an event or function - sighash: "sighash", - // Human-Readable with Minimal spacing and without names (compact human-readable) - minimal: "minimal", - // Human-Readable with nice spacing, including all names - full: "full", - // JSON-format a la Solidity - json: "json" -}); -var paramTypeArray = new RegExp(/^(.*)\[([0-9]*)\]$/); -var ParamType = /** @class */ (function () { - function ParamType(constructorGuard, params) { - if (constructorGuard !== _constructorGuard) { - logger.throwError("use fromString", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "new ParamType()" - }); - } - populate(this, params); - var match = this.type.match(paramTypeArray); - if (match) { - populate(this, { - arrayLength: parseInt(match[2] || "-1"), - arrayChildren: ParamType.fromObject({ - type: match[1], - components: this.components - }), - baseType: "array" - }); - } - else { - populate(this, { - arrayLength: null, - arrayChildren: null, - baseType: ((this.components != null) ? "tuple" : this.type) - }); - } - this._isParamType = true; - Object.freeze(this); - } - // Format the parameter fragment - // - sighash: "(uint256,address)" - // - minimal: "tuple(uint256,address) indexed" - // - full: "tuple(uint256 foo, address bar) indexed baz" - ParamType.prototype.format = function (format) { - if (!format) { - format = exports.FormatTypes.sighash; - } - if (!exports.FormatTypes[format]) { - logger.throwArgumentError("invalid format type", "format", format); - } - if (format === exports.FormatTypes.json) { - var result_1 = { - type: ((this.baseType === "tuple") ? "tuple" : this.type), - name: (this.name || undefined) - }; - if (typeof (this.indexed) === "boolean") { - result_1.indexed = this.indexed; - } - if (this.components) { - result_1.components = this.components.map(function (comp) { return JSON.parse(comp.format(format)); }); - } - return JSON.stringify(result_1); - } - var result = ""; - // Array - if (this.baseType === "array") { - result += this.arrayChildren.format(format); - result += "[" + (this.arrayLength < 0 ? "" : String(this.arrayLength)) + "]"; - } - else { - if (this.baseType === "tuple") { - if (format !== exports.FormatTypes.sighash) { - result += this.type; - } - result += "(" + this.components.map(function (comp) { return comp.format(format); }).join((format === exports.FormatTypes.full) ? ", " : ",") + ")"; - } - else { - result += this.type; - } - } - if (format !== exports.FormatTypes.sighash) { - if (this.indexed === true) { - result += " indexed"; - } - if (format === exports.FormatTypes.full && this.name) { - result += " " + this.name; - } - } - return result; - }; - ParamType.from = function (value, allowIndexed) { - if (typeof (value) === "string") { - return ParamType.fromString(value, allowIndexed); - } - return ParamType.fromObject(value); - }; - ParamType.fromObject = function (value) { - if (ParamType.isParamType(value)) { - return value; - } - return new ParamType(_constructorGuard, { - name: (value.name || null), - type: verifyType(value.type), - indexed: ((value.indexed == null) ? null : !!value.indexed), - components: (value.components ? value.components.map(ParamType.fromObject) : null) - }); - }; - ParamType.fromString = function (value, allowIndexed) { - function ParamTypify(node) { - return ParamType.fromObject({ - name: node.name, - type: node.type, - indexed: node.indexed, - components: node.components - }); - } - return ParamTypify(parseParamType(value, !!allowIndexed)); - }; - ParamType.isParamType = function (value) { - return !!(value != null && value._isParamType); - }; - return ParamType; -}()); -exports.ParamType = ParamType; -; -function parseParams(value, allowIndex) { - return splitNesting(value).map(function (param) { return ParamType.fromString(param, allowIndex); }); -} -var Fragment = /** @class */ (function () { - function Fragment(constructorGuard, params) { - if (constructorGuard !== _constructorGuard) { - logger.throwError("use a static from method", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "new Fragment()" - }); - } - populate(this, params); - this._isFragment = true; - Object.freeze(this); - } - Fragment.from = function (value) { - if (Fragment.isFragment(value)) { - return value; - } - if (typeof (value) === "string") { - return Fragment.fromString(value); - } - return Fragment.fromObject(value); - }; - Fragment.fromObject = function (value) { - if (Fragment.isFragment(value)) { - return value; - } - switch (value.type) { - case "function": - return FunctionFragment.fromObject(value); - case "event": - return EventFragment.fromObject(value); - case "constructor": - return ConstructorFragment.fromObject(value); - case "error": - return ErrorFragment.fromObject(value); - case "fallback": - case "receive": - // @TODO: Something? Maybe return a FunctionFragment? A custom DefaultFunctionFragment? - return null; - } - return logger.throwArgumentError("invalid fragment object", "value", value); - }; - Fragment.fromString = function (value) { - // Make sure the "returns" is surrounded by a space and all whitespace is exactly one space - value = value.replace(/\s/g, " "); - value = value.replace(/\(/g, " (").replace(/\)/g, ") ").replace(/\s+/g, " "); - value = value.trim(); - if (value.split(" ")[0] === "event") { - return EventFragment.fromString(value.substring(5).trim()); - } - else if (value.split(" ")[0] === "function") { - return FunctionFragment.fromString(value.substring(8).trim()); - } - else if (value.split("(")[0].trim() === "constructor") { - return ConstructorFragment.fromString(value.trim()); - } - else if (value.split(" ")[0] === "error") { - return ErrorFragment.fromString(value.substring(5).trim()); - } - return logger.throwArgumentError("unsupported fragment", "value", value); - }; - Fragment.isFragment = function (value) { - return !!(value && value._isFragment); - }; - return Fragment; -}()); -exports.Fragment = Fragment; -var EventFragment = /** @class */ (function (_super) { - __extends(EventFragment, _super); - function EventFragment() { - return _super !== null && _super.apply(this, arguments) || this; - } - EventFragment.prototype.format = function (format) { - if (!format) { - format = exports.FormatTypes.sighash; - } - if (!exports.FormatTypes[format]) { - logger.throwArgumentError("invalid format type", "format", format); - } - if (format === exports.FormatTypes.json) { - return JSON.stringify({ - type: "event", - anonymous: this.anonymous, - name: this.name, - inputs: this.inputs.map(function (input) { return JSON.parse(input.format(format)); }) - }); - } - var result = ""; - if (format !== exports.FormatTypes.sighash) { - result += "event "; - } - result += this.name + "(" + this.inputs.map(function (input) { return input.format(format); }).join((format === exports.FormatTypes.full) ? ", " : ",") + ") "; - if (format !== exports.FormatTypes.sighash) { - if (this.anonymous) { - result += "anonymous "; - } - } - return result.trim(); - }; - EventFragment.from = function (value) { - if (typeof (value) === "string") { - return EventFragment.fromString(value); - } - return EventFragment.fromObject(value); - }; - EventFragment.fromObject = function (value) { - if (EventFragment.isEventFragment(value)) { - return value; - } - if (value.type !== "event") { - logger.throwArgumentError("invalid event object", "value", value); - } - var params = { - name: verifyIdentifier(value.name), - anonymous: value.anonymous, - inputs: (value.inputs ? value.inputs.map(ParamType.fromObject) : []), - type: "event" - }; - return new EventFragment(_constructorGuard, params); - }; - EventFragment.fromString = function (value) { - var match = value.match(regexParen); - if (!match) { - logger.throwArgumentError("invalid event string", "value", value); - } - var anonymous = false; - match[3].split(" ").forEach(function (modifier) { - switch (modifier.trim()) { - case "anonymous": - anonymous = true; - break; - case "": - break; - default: - logger.warn("unknown modifier: " + modifier); - } - }); - return EventFragment.fromObject({ - name: match[1].trim(), - anonymous: anonymous, - inputs: parseParams(match[2], true), - type: "event" - }); - }; - EventFragment.isEventFragment = function (value) { - return (value && value._isFragment && value.type === "event"); - }; - return EventFragment; -}(Fragment)); -exports.EventFragment = EventFragment; -function parseGas(value, params) { - params.gas = null; - var comps = value.split("@"); - if (comps.length !== 1) { - if (comps.length > 2) { - logger.throwArgumentError("invalid human-readable ABI signature", "value", value); - } - if (!comps[1].match(/^[0-9]+$/)) { - logger.throwArgumentError("invalid human-readable ABI signature gas", "value", value); - } - params.gas = bignumber_1.BigNumber.from(comps[1]); - return comps[0]; - } - return value; -} -function parseModifiers(value, params) { - params.constant = false; - params.payable = false; - params.stateMutability = "nonpayable"; - value.split(" ").forEach(function (modifier) { - switch (modifier.trim()) { - case "constant": - params.constant = true; - break; - case "payable": - params.payable = true; - params.stateMutability = "payable"; - break; - case "nonpayable": - params.payable = false; - params.stateMutability = "nonpayable"; - break; - case "pure": - params.constant = true; - params.stateMutability = "pure"; - break; - case "view": - params.constant = true; - params.stateMutability = "view"; - break; - case "external": - case "public": - case "": - break; - default: - console.log("unknown modifier: " + modifier); - } - }); -} -function verifyState(value) { - var result = { - constant: false, - payable: true, - stateMutability: "payable" - }; - if (value.stateMutability != null) { - result.stateMutability = value.stateMutability; - // Set (and check things are consistent) the constant property - result.constant = (result.stateMutability === "view" || result.stateMutability === "pure"); - if (value.constant != null) { - if ((!!value.constant) !== result.constant) { - logger.throwArgumentError("cannot have constant function with mutability " + result.stateMutability, "value", value); - } - } - // Set (and check things are consistent) the payable property - result.payable = (result.stateMutability === "payable"); - if (value.payable != null) { - if ((!!value.payable) !== result.payable) { - logger.throwArgumentError("cannot have payable function with mutability " + result.stateMutability, "value", value); - } - } - } - else if (value.payable != null) { - result.payable = !!value.payable; - // If payable we can assume non-constant; otherwise we can't assume - if (value.constant == null && !result.payable && value.type !== "constructor") { - logger.throwArgumentError("unable to determine stateMutability", "value", value); - } - result.constant = !!value.constant; - if (result.constant) { - result.stateMutability = "view"; - } - else { - result.stateMutability = (result.payable ? "payable" : "nonpayable"); - } - if (result.payable && result.constant) { - logger.throwArgumentError("cannot have constant payable function", "value", value); - } - } - else if (value.constant != null) { - result.constant = !!value.constant; - result.payable = !result.constant; - result.stateMutability = (result.constant ? "view" : "payable"); - } - else if (value.type !== "constructor") { - logger.throwArgumentError("unable to determine stateMutability", "value", value); - } - return result; -} -var ConstructorFragment = /** @class */ (function (_super) { - __extends(ConstructorFragment, _super); - function ConstructorFragment() { - return _super !== null && _super.apply(this, arguments) || this; - } - ConstructorFragment.prototype.format = function (format) { - if (!format) { - format = exports.FormatTypes.sighash; - } - if (!exports.FormatTypes[format]) { - logger.throwArgumentError("invalid format type", "format", format); - } - if (format === exports.FormatTypes.json) { - return JSON.stringify({ - type: "constructor", - stateMutability: ((this.stateMutability !== "nonpayable") ? this.stateMutability : undefined), - payable: this.payable, - gas: (this.gas ? this.gas.toNumber() : undefined), - inputs: this.inputs.map(function (input) { return JSON.parse(input.format(format)); }) - }); - } - if (format === exports.FormatTypes.sighash) { - logger.throwError("cannot format a constructor for sighash", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "format(sighash)" - }); - } - var result = "constructor(" + this.inputs.map(function (input) { return input.format(format); }).join((format === exports.FormatTypes.full) ? ", " : ",") + ") "; - if (this.stateMutability && this.stateMutability !== "nonpayable") { - result += this.stateMutability + " "; - } - return result.trim(); - }; - ConstructorFragment.from = function (value) { - if (typeof (value) === "string") { - return ConstructorFragment.fromString(value); - } - return ConstructorFragment.fromObject(value); - }; - ConstructorFragment.fromObject = function (value) { - if (ConstructorFragment.isConstructorFragment(value)) { - return value; - } - if (value.type !== "constructor") { - logger.throwArgumentError("invalid constructor object", "value", value); - } - var state = verifyState(value); - if (state.constant) { - logger.throwArgumentError("constructor cannot be constant", "value", value); - } - var params = { - name: null, - type: value.type, - inputs: (value.inputs ? value.inputs.map(ParamType.fromObject) : []), - payable: state.payable, - stateMutability: state.stateMutability, - gas: (value.gas ? bignumber_1.BigNumber.from(value.gas) : null) - }; - return new ConstructorFragment(_constructorGuard, params); - }; - ConstructorFragment.fromString = function (value) { - var params = { type: "constructor" }; - value = parseGas(value, params); - var parens = value.match(regexParen); - if (!parens || parens[1].trim() !== "constructor") { - logger.throwArgumentError("invalid constructor string", "value", value); - } - params.inputs = parseParams(parens[2].trim(), false); - parseModifiers(parens[3].trim(), params); - return ConstructorFragment.fromObject(params); - }; - ConstructorFragment.isConstructorFragment = function (value) { - return (value && value._isFragment && value.type === "constructor"); - }; - return ConstructorFragment; -}(Fragment)); -exports.ConstructorFragment = ConstructorFragment; -var FunctionFragment = /** @class */ (function (_super) { - __extends(FunctionFragment, _super); - function FunctionFragment() { - return _super !== null && _super.apply(this, arguments) || this; - } - FunctionFragment.prototype.format = function (format) { - if (!format) { - format = exports.FormatTypes.sighash; - } - if (!exports.FormatTypes[format]) { - logger.throwArgumentError("invalid format type", "format", format); - } - if (format === exports.FormatTypes.json) { - return JSON.stringify({ - type: "function", - name: this.name, - constant: this.constant, - stateMutability: ((this.stateMutability !== "nonpayable") ? this.stateMutability : undefined), - payable: this.payable, - gas: (this.gas ? this.gas.toNumber() : undefined), - inputs: this.inputs.map(function (input) { return JSON.parse(input.format(format)); }), - outputs: this.outputs.map(function (output) { return JSON.parse(output.format(format)); }), - }); - } - var result = ""; - if (format !== exports.FormatTypes.sighash) { - result += "function "; - } - result += this.name + "(" + this.inputs.map(function (input) { return input.format(format); }).join((format === exports.FormatTypes.full) ? ", " : ",") + ") "; - if (format !== exports.FormatTypes.sighash) { - if (this.stateMutability) { - if (this.stateMutability !== "nonpayable") { - result += (this.stateMutability + " "); - } - } - else if (this.constant) { - result += "view "; - } - if (this.outputs && this.outputs.length) { - result += "returns (" + this.outputs.map(function (output) { return output.format(format); }).join(", ") + ") "; - } - if (this.gas != null) { - result += "@" + this.gas.toString() + " "; - } - } - return result.trim(); - }; - FunctionFragment.from = function (value) { - if (typeof (value) === "string") { - return FunctionFragment.fromString(value); - } - return FunctionFragment.fromObject(value); - }; - FunctionFragment.fromObject = function (value) { - if (FunctionFragment.isFunctionFragment(value)) { - return value; - } - if (value.type !== "function") { - logger.throwArgumentError("invalid function object", "value", value); - } - var state = verifyState(value); - var params = { - type: value.type, - name: verifyIdentifier(value.name), - constant: state.constant, - inputs: (value.inputs ? value.inputs.map(ParamType.fromObject) : []), - outputs: (value.outputs ? value.outputs.map(ParamType.fromObject) : []), - payable: state.payable, - stateMutability: state.stateMutability, - gas: (value.gas ? bignumber_1.BigNumber.from(value.gas) : null) - }; - return new FunctionFragment(_constructorGuard, params); - }; - FunctionFragment.fromString = function (value) { - var params = { type: "function" }; - value = parseGas(value, params); - var comps = value.split(" returns "); - if (comps.length > 2) { - logger.throwArgumentError("invalid function string", "value", value); - } - var parens = comps[0].match(regexParen); - if (!parens) { - logger.throwArgumentError("invalid function signature", "value", value); - } - params.name = parens[1].trim(); - if (params.name) { - verifyIdentifier(params.name); - } - params.inputs = parseParams(parens[2], false); - parseModifiers(parens[3].trim(), params); - // We have outputs - if (comps.length > 1) { - var returns = comps[1].match(regexParen); - if (returns[1].trim() != "" || returns[3].trim() != "") { - logger.throwArgumentError("unexpected tokens", "value", value); - } - params.outputs = parseParams(returns[2], false); - } - else { - params.outputs = []; - } - return FunctionFragment.fromObject(params); - }; - FunctionFragment.isFunctionFragment = function (value) { - return (value && value._isFragment && value.type === "function"); - }; - return FunctionFragment; -}(ConstructorFragment)); -exports.FunctionFragment = FunctionFragment; -//export class StructFragment extends Fragment { -//} -function checkForbidden(fragment) { - var sig = fragment.format(); - if (sig === "Error(string)" || sig === "Panic(uint256)") { - logger.throwArgumentError("cannot specify user defined " + sig + " error", "fragment", fragment); - } - return fragment; -} -var ErrorFragment = /** @class */ (function (_super) { - __extends(ErrorFragment, _super); - function ErrorFragment() { - return _super !== null && _super.apply(this, arguments) || this; - } - ErrorFragment.prototype.format = function (format) { - if (!format) { - format = exports.FormatTypes.sighash; - } - if (!exports.FormatTypes[format]) { - logger.throwArgumentError("invalid format type", "format", format); - } - if (format === exports.FormatTypes.json) { - return JSON.stringify({ - type: "error", - name: this.name, - inputs: this.inputs.map(function (input) { return JSON.parse(input.format(format)); }), - }); - } - var result = ""; - if (format !== exports.FormatTypes.sighash) { - result += "error "; - } - result += this.name + "(" + this.inputs.map(function (input) { return input.format(format); }).join((format === exports.FormatTypes.full) ? ", " : ",") + ") "; - return result.trim(); - }; - ErrorFragment.from = function (value) { - if (typeof (value) === "string") { - return ErrorFragment.fromString(value); - } - return ErrorFragment.fromObject(value); - }; - ErrorFragment.fromObject = function (value) { - if (ErrorFragment.isErrorFragment(value)) { - return value; - } - if (value.type !== "error") { - logger.throwArgumentError("invalid error object", "value", value); - } - var params = { - type: value.type, - name: verifyIdentifier(value.name), - inputs: (value.inputs ? value.inputs.map(ParamType.fromObject) : []) - }; - return checkForbidden(new ErrorFragment(_constructorGuard, params)); - }; - ErrorFragment.fromString = function (value) { - var params = { type: "error" }; - var parens = value.match(regexParen); - if (!parens) { - logger.throwArgumentError("invalid error signature", "value", value); - } - params.name = parens[1].trim(); - if (params.name) { - verifyIdentifier(params.name); - } - params.inputs = parseParams(parens[2], false); - return checkForbidden(ErrorFragment.fromObject(params)); - }; - ErrorFragment.isErrorFragment = function (value) { - return (value && value._isFragment && value.type === "error"); - }; - return ErrorFragment; -}(Fragment)); -exports.ErrorFragment = ErrorFragment; -function verifyType(type) { - // These need to be transformed to their full description - if (type.match(/^uint($|[^1-9])/)) { - type = "uint256" + type.substring(4); - } - else if (type.match(/^int($|[^1-9])/)) { - type = "int256" + type.substring(3); - } - // @TODO: more verification - return type; -} -// See: https://github.com/ethereum/solidity/blob/1f8f1a3db93a548d0555e3e14cfc55a10e25b60e/docs/grammar/SolidityLexer.g4#L234 -var regexIdentifier = new RegExp("^[a-zA-Z$_][a-zA-Z0-9$_]*$"); -function verifyIdentifier(value) { - if (!value || !value.match(regexIdentifier)) { - logger.throwArgumentError("invalid identifier \"" + value + "\"", "value", value); - } - return value; -} -var regexParen = new RegExp("^([^)(]*)\\((.*)\\)([^)(]*)$"); -function splitNesting(value) { - value = value.trim(); - var result = []; - var accum = ""; - var depth = 0; - for (var offset = 0; offset < value.length; offset++) { - var c = value[offset]; - if (c === "," && depth === 0) { - result.push(accum); - accum = ""; - } - else { - accum += c; - if (c === "(") { - depth++; - } - else if (c === ")") { - depth--; - if (depth === -1) { - logger.throwArgumentError("unbalanced parenthesis", "value", value); - } - } - } - } - if (accum) { - result.push(accum); - } - return result; -} -//# sourceMappingURL=fragments.js.map - -/***/ }), - -/***/ 30219: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TransactionDescription = exports.LogDescription = exports.checkResultErrors = exports.Indexed = exports.Interface = exports.defaultAbiCoder = exports.AbiCoder = exports.FormatTypes = exports.ParamType = exports.FunctionFragment = exports.Fragment = exports.EventFragment = exports.ErrorFragment = exports.ConstructorFragment = void 0; -var fragments_1 = __nccwpck_require__(65186); -Object.defineProperty(exports, "ConstructorFragment", ({ enumerable: true, get: function () { return fragments_1.ConstructorFragment; } })); -Object.defineProperty(exports, "ErrorFragment", ({ enumerable: true, get: function () { return fragments_1.ErrorFragment; } })); -Object.defineProperty(exports, "EventFragment", ({ enumerable: true, get: function () { return fragments_1.EventFragment; } })); -Object.defineProperty(exports, "FormatTypes", ({ enumerable: true, get: function () { return fragments_1.FormatTypes; } })); -Object.defineProperty(exports, "Fragment", ({ enumerable: true, get: function () { return fragments_1.Fragment; } })); -Object.defineProperty(exports, "FunctionFragment", ({ enumerable: true, get: function () { return fragments_1.FunctionFragment; } })); -Object.defineProperty(exports, "ParamType", ({ enumerable: true, get: function () { return fragments_1.ParamType; } })); -var abi_coder_1 = __nccwpck_require__(30097); -Object.defineProperty(exports, "AbiCoder", ({ enumerable: true, get: function () { return abi_coder_1.AbiCoder; } })); -Object.defineProperty(exports, "defaultAbiCoder", ({ enumerable: true, get: function () { return abi_coder_1.defaultAbiCoder; } })); -var interface_1 = __nccwpck_require__(39472); -Object.defineProperty(exports, "checkResultErrors", ({ enumerable: true, get: function () { return interface_1.checkResultErrors; } })); -Object.defineProperty(exports, "Indexed", ({ enumerable: true, get: function () { return interface_1.Indexed; } })); -Object.defineProperty(exports, "Interface", ({ enumerable: true, get: function () { return interface_1.Interface; } })); -Object.defineProperty(exports, "LogDescription", ({ enumerable: true, get: function () { return interface_1.LogDescription; } })); -Object.defineProperty(exports, "TransactionDescription", ({ enumerable: true, get: function () { return interface_1.TransactionDescription; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 39472: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Interface = exports.Indexed = exports.ErrorDescription = exports.TransactionDescription = exports.LogDescription = exports.checkResultErrors = void 0; -var address_1 = __nccwpck_require__(75745); -var bignumber_1 = __nccwpck_require__(18202); -var bytes_1 = __nccwpck_require__(42006); -var hash_1 = __nccwpck_require__(91839); -var keccak256_1 = __nccwpck_require__(56938); -var properties_1 = __nccwpck_require__(61338); -var abi_coder_1 = __nccwpck_require__(30097); -var abstract_coder_1 = __nccwpck_require__(41430); -Object.defineProperty(exports, "checkResultErrors", ({ enumerable: true, get: function () { return abstract_coder_1.checkResultErrors; } })); -var fragments_1 = __nccwpck_require__(65186); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(90108); -var logger = new logger_1.Logger(_version_1.version); -var LogDescription = /** @class */ (function (_super) { - __extends(LogDescription, _super); - function LogDescription() { - return _super !== null && _super.apply(this, arguments) || this; - } - return LogDescription; -}(properties_1.Description)); -exports.LogDescription = LogDescription; -var TransactionDescription = /** @class */ (function (_super) { - __extends(TransactionDescription, _super); - function TransactionDescription() { - return _super !== null && _super.apply(this, arguments) || this; - } - return TransactionDescription; -}(properties_1.Description)); -exports.TransactionDescription = TransactionDescription; -var ErrorDescription = /** @class */ (function (_super) { - __extends(ErrorDescription, _super); - function ErrorDescription() { - return _super !== null && _super.apply(this, arguments) || this; - } - return ErrorDescription; -}(properties_1.Description)); -exports.ErrorDescription = ErrorDescription; -var Indexed = /** @class */ (function (_super) { - __extends(Indexed, _super); - function Indexed() { - return _super !== null && _super.apply(this, arguments) || this; - } - Indexed.isIndexed = function (value) { - return !!(value && value._isIndexed); - }; - return Indexed; -}(properties_1.Description)); -exports.Indexed = Indexed; -var BuiltinErrors = { - "0x08c379a0": { signature: "Error(string)", name: "Error", inputs: ["string"], reason: true }, - "0x4e487b71": { signature: "Panic(uint256)", name: "Panic", inputs: ["uint256"] } -}; -function wrapAccessError(property, error) { - var wrap = new Error("deferred error during ABI decoding triggered accessing " + property); - wrap.error = error; - return wrap; -} -/* -function checkNames(fragment: Fragment, type: "input" | "output", params: Array): void { - params.reduce((accum, param) => { - if (param.name) { - if (accum[param.name]) { - logger.throwArgumentError(`duplicate ${ type } parameter ${ JSON.stringify(param.name) } in ${ fragment.format("full") }`, "fragment", fragment); - } - accum[param.name] = true; - } - return accum; - }, <{ [ name: string ]: boolean }>{ }); -} -*/ -var Interface = /** @class */ (function () { - function Interface(fragments) { - var _newTarget = this.constructor; - var _this = this; - var abi = []; - if (typeof (fragments) === "string") { - abi = JSON.parse(fragments); - } - else { - abi = fragments; - } - (0, properties_1.defineReadOnly)(this, "fragments", abi.map(function (fragment) { - return fragments_1.Fragment.from(fragment); - }).filter(function (fragment) { return (fragment != null); })); - (0, properties_1.defineReadOnly)(this, "_abiCoder", (0, properties_1.getStatic)(_newTarget, "getAbiCoder")()); - (0, properties_1.defineReadOnly)(this, "functions", {}); - (0, properties_1.defineReadOnly)(this, "errors", {}); - (0, properties_1.defineReadOnly)(this, "events", {}); - (0, properties_1.defineReadOnly)(this, "structs", {}); - // Add all fragments by their signature - this.fragments.forEach(function (fragment) { - var bucket = null; - switch (fragment.type) { - case "constructor": - if (_this.deploy) { - logger.warn("duplicate definition - constructor"); - return; - } - //checkNames(fragment, "input", fragment.inputs); - (0, properties_1.defineReadOnly)(_this, "deploy", fragment); - return; - case "function": - //checkNames(fragment, "input", fragment.inputs); - //checkNames(fragment, "output", (fragment).outputs); - bucket = _this.functions; - break; - case "event": - //checkNames(fragment, "input", fragment.inputs); - bucket = _this.events; - break; - case "error": - bucket = _this.errors; - break; - default: - return; - } - var signature = fragment.format(); - if (bucket[signature]) { - logger.warn("duplicate definition - " + signature); - return; - } - bucket[signature] = fragment; - }); - // If we do not have a constructor add a default - if (!this.deploy) { - (0, properties_1.defineReadOnly)(this, "deploy", fragments_1.ConstructorFragment.from({ - payable: false, - type: "constructor" - })); - } - (0, properties_1.defineReadOnly)(this, "_isInterface", true); - } - Interface.prototype.format = function (format) { - if (!format) { - format = fragments_1.FormatTypes.full; - } - if (format === fragments_1.FormatTypes.sighash) { - logger.throwArgumentError("interface does not support formatting sighash", "format", format); - } - var abi = this.fragments.map(function (fragment) { return fragment.format(format); }); - // We need to re-bundle the JSON fragments a bit - if (format === fragments_1.FormatTypes.json) { - return JSON.stringify(abi.map(function (j) { return JSON.parse(j); })); - } - return abi; - }; - // Sub-classes can override these to handle other blockchains - Interface.getAbiCoder = function () { - return abi_coder_1.defaultAbiCoder; - }; - Interface.getAddress = function (address) { - return (0, address_1.getAddress)(address); - }; - Interface.getSighash = function (fragment) { - return (0, bytes_1.hexDataSlice)((0, hash_1.id)(fragment.format()), 0, 4); - }; - Interface.getEventTopic = function (eventFragment) { - return (0, hash_1.id)(eventFragment.format()); - }; - // Find a function definition by any means necessary (unless it is ambiguous) - Interface.prototype.getFunction = function (nameOrSignatureOrSighash) { - if ((0, bytes_1.isHexString)(nameOrSignatureOrSighash)) { - for (var name_1 in this.functions) { - if (nameOrSignatureOrSighash === this.getSighash(name_1)) { - return this.functions[name_1]; - } - } - logger.throwArgumentError("no matching function", "sighash", nameOrSignatureOrSighash); - } - // It is a bare name, look up the function (will return null if ambiguous) - if (nameOrSignatureOrSighash.indexOf("(") === -1) { - var name_2 = nameOrSignatureOrSighash.trim(); - var matching = Object.keys(this.functions).filter(function (f) { return (f.split("(" /* fix:) */)[0] === name_2); }); - if (matching.length === 0) { - logger.throwArgumentError("no matching function", "name", name_2); - } - else if (matching.length > 1) { - logger.throwArgumentError("multiple matching functions", "name", name_2); - } - return this.functions[matching[0]]; - } - // Normalize the signature and lookup the function - var result = this.functions[fragments_1.FunctionFragment.fromString(nameOrSignatureOrSighash).format()]; - if (!result) { - logger.throwArgumentError("no matching function", "signature", nameOrSignatureOrSighash); - } - return result; - }; - // Find an event definition by any means necessary (unless it is ambiguous) - Interface.prototype.getEvent = function (nameOrSignatureOrTopic) { - if ((0, bytes_1.isHexString)(nameOrSignatureOrTopic)) { - var topichash = nameOrSignatureOrTopic.toLowerCase(); - for (var name_3 in this.events) { - if (topichash === this.getEventTopic(name_3)) { - return this.events[name_3]; - } - } - logger.throwArgumentError("no matching event", "topichash", topichash); - } - // It is a bare name, look up the function (will return null if ambiguous) - if (nameOrSignatureOrTopic.indexOf("(") === -1) { - var name_4 = nameOrSignatureOrTopic.trim(); - var matching = Object.keys(this.events).filter(function (f) { return (f.split("(" /* fix:) */)[0] === name_4); }); - if (matching.length === 0) { - logger.throwArgumentError("no matching event", "name", name_4); - } - else if (matching.length > 1) { - logger.throwArgumentError("multiple matching events", "name", name_4); - } - return this.events[matching[0]]; - } - // Normalize the signature and lookup the function - var result = this.events[fragments_1.EventFragment.fromString(nameOrSignatureOrTopic).format()]; - if (!result) { - logger.throwArgumentError("no matching event", "signature", nameOrSignatureOrTopic); - } - return result; - }; - // Find a function definition by any means necessary (unless it is ambiguous) - Interface.prototype.getError = function (nameOrSignatureOrSighash) { - if ((0, bytes_1.isHexString)(nameOrSignatureOrSighash)) { - var getSighash = (0, properties_1.getStatic)(this.constructor, "getSighash"); - for (var name_5 in this.errors) { - var error = this.errors[name_5]; - if (nameOrSignatureOrSighash === getSighash(error)) { - return this.errors[name_5]; - } - } - logger.throwArgumentError("no matching error", "sighash", nameOrSignatureOrSighash); - } - // It is a bare name, look up the function (will return null if ambiguous) - if (nameOrSignatureOrSighash.indexOf("(") === -1) { - var name_6 = nameOrSignatureOrSighash.trim(); - var matching = Object.keys(this.errors).filter(function (f) { return (f.split("(" /* fix:) */)[0] === name_6); }); - if (matching.length === 0) { - logger.throwArgumentError("no matching error", "name", name_6); - } - else if (matching.length > 1) { - logger.throwArgumentError("multiple matching errors", "name", name_6); - } - return this.errors[matching[0]]; - } - // Normalize the signature and lookup the function - var result = this.errors[fragments_1.FunctionFragment.fromString(nameOrSignatureOrSighash).format()]; - if (!result) { - logger.throwArgumentError("no matching error", "signature", nameOrSignatureOrSighash); - } - return result; - }; - // Get the sighash (the bytes4 selector) used by Solidity to identify a function - Interface.prototype.getSighash = function (fragment) { - if (typeof (fragment) === "string") { - try { - fragment = this.getFunction(fragment); - } - catch (error) { - try { - fragment = this.getError(fragment); - } - catch (_) { - throw error; - } - } - } - return (0, properties_1.getStatic)(this.constructor, "getSighash")(fragment); - }; - // Get the topic (the bytes32 hash) used by Solidity to identify an event - Interface.prototype.getEventTopic = function (eventFragment) { - if (typeof (eventFragment) === "string") { - eventFragment = this.getEvent(eventFragment); - } - return (0, properties_1.getStatic)(this.constructor, "getEventTopic")(eventFragment); - }; - Interface.prototype._decodeParams = function (params, data) { - return this._abiCoder.decode(params, data); - }; - Interface.prototype._encodeParams = function (params, values) { - return this._abiCoder.encode(params, values); - }; - Interface.prototype.encodeDeploy = function (values) { - return this._encodeParams(this.deploy.inputs, values || []); - }; - Interface.prototype.decodeErrorResult = function (fragment, data) { - if (typeof (fragment) === "string") { - fragment = this.getError(fragment); - } - var bytes = (0, bytes_1.arrayify)(data); - if ((0, bytes_1.hexlify)(bytes.slice(0, 4)) !== this.getSighash(fragment)) { - logger.throwArgumentError("data signature does not match error " + fragment.name + ".", "data", (0, bytes_1.hexlify)(bytes)); - } - return this._decodeParams(fragment.inputs, bytes.slice(4)); - }; - Interface.prototype.encodeErrorResult = function (fragment, values) { - if (typeof (fragment) === "string") { - fragment = this.getError(fragment); - } - return (0, bytes_1.hexlify)((0, bytes_1.concat)([ - this.getSighash(fragment), - this._encodeParams(fragment.inputs, values || []) - ])); - }; - // Decode the data for a function call (e.g. tx.data) - Interface.prototype.decodeFunctionData = function (functionFragment, data) { - if (typeof (functionFragment) === "string") { - functionFragment = this.getFunction(functionFragment); - } - var bytes = (0, bytes_1.arrayify)(data); - if ((0, bytes_1.hexlify)(bytes.slice(0, 4)) !== this.getSighash(functionFragment)) { - logger.throwArgumentError("data signature does not match function " + functionFragment.name + ".", "data", (0, bytes_1.hexlify)(bytes)); - } - return this._decodeParams(functionFragment.inputs, bytes.slice(4)); - }; - // Encode the data for a function call (e.g. tx.data) - Interface.prototype.encodeFunctionData = function (functionFragment, values) { - if (typeof (functionFragment) === "string") { - functionFragment = this.getFunction(functionFragment); - } - return (0, bytes_1.hexlify)((0, bytes_1.concat)([ - this.getSighash(functionFragment), - this._encodeParams(functionFragment.inputs, values || []) - ])); - }; - // Decode the result from a function call (e.g. from eth_call) - Interface.prototype.decodeFunctionResult = function (functionFragment, data) { - if (typeof (functionFragment) === "string") { - functionFragment = this.getFunction(functionFragment); - } - var bytes = (0, bytes_1.arrayify)(data); - var reason = null; - var message = ""; - var errorArgs = null; - var errorName = null; - var errorSignature = null; - switch (bytes.length % this._abiCoder._getWordSize()) { - case 0: - try { - return this._abiCoder.decode(functionFragment.outputs, bytes); - } - catch (error) { } - break; - case 4: { - var selector = (0, bytes_1.hexlify)(bytes.slice(0, 4)); - var builtin = BuiltinErrors[selector]; - if (builtin) { - errorArgs = this._abiCoder.decode(builtin.inputs, bytes.slice(4)); - errorName = builtin.name; - errorSignature = builtin.signature; - if (builtin.reason) { - reason = errorArgs[0]; - } - if (errorName === "Error") { - message = "; VM Exception while processing transaction: reverted with reason string " + JSON.stringify(errorArgs[0]); - } - else if (errorName === "Panic") { - message = "; VM Exception while processing transaction: reverted with panic code " + errorArgs[0]; - } - } - else { - try { - var error = this.getError(selector); - errorArgs = this._abiCoder.decode(error.inputs, bytes.slice(4)); - errorName = error.name; - errorSignature = error.format(); - } - catch (error) { } - } - break; - } - } - return logger.throwError("call revert exception" + message, logger_1.Logger.errors.CALL_EXCEPTION, { - method: functionFragment.format(), - data: (0, bytes_1.hexlify)(data), - errorArgs: errorArgs, - errorName: errorName, - errorSignature: errorSignature, - reason: reason - }); - }; - // Encode the result for a function call (e.g. for eth_call) - Interface.prototype.encodeFunctionResult = function (functionFragment, values) { - if (typeof (functionFragment) === "string") { - functionFragment = this.getFunction(functionFragment); - } - return (0, bytes_1.hexlify)(this._abiCoder.encode(functionFragment.outputs, values || [])); - }; - // Create the filter for the event with search criteria (e.g. for eth_filterLog) - Interface.prototype.encodeFilterTopics = function (eventFragment, values) { - var _this = this; - if (typeof (eventFragment) === "string") { - eventFragment = this.getEvent(eventFragment); - } - if (values.length > eventFragment.inputs.length) { - logger.throwError("too many arguments for " + eventFragment.format(), logger_1.Logger.errors.UNEXPECTED_ARGUMENT, { - argument: "values", - value: values - }); - } - var topics = []; - if (!eventFragment.anonymous) { - topics.push(this.getEventTopic(eventFragment)); - } - var encodeTopic = function (param, value) { - if (param.type === "string") { - return (0, hash_1.id)(value); - } - else if (param.type === "bytes") { - return (0, keccak256_1.keccak256)((0, bytes_1.hexlify)(value)); - } - if (param.type === "bool" && typeof (value) === "boolean") { - value = (value ? "0x01" : "0x00"); - } - if (param.type.match(/^u?int/)) { - value = bignumber_1.BigNumber.from(value).toHexString(); - } - // Check addresses are valid - if (param.type === "address") { - _this._abiCoder.encode(["address"], [value]); - } - return (0, bytes_1.hexZeroPad)((0, bytes_1.hexlify)(value), 32); - }; - values.forEach(function (value, index) { - var param = eventFragment.inputs[index]; - if (!param.indexed) { - if (value != null) { - logger.throwArgumentError("cannot filter non-indexed parameters; must be null", ("contract." + param.name), value); - } - return; - } - if (value == null) { - topics.push(null); - } - else if (param.baseType === "array" || param.baseType === "tuple") { - logger.throwArgumentError("filtering with tuples or arrays not supported", ("contract." + param.name), value); - } - else if (Array.isArray(value)) { - topics.push(value.map(function (value) { return encodeTopic(param, value); })); - } - else { - topics.push(encodeTopic(param, value)); - } - }); - // Trim off trailing nulls - while (topics.length && topics[topics.length - 1] === null) { - topics.pop(); - } - return topics; - }; - Interface.prototype.encodeEventLog = function (eventFragment, values) { - var _this = this; - if (typeof (eventFragment) === "string") { - eventFragment = this.getEvent(eventFragment); - } - var topics = []; - var dataTypes = []; - var dataValues = []; - if (!eventFragment.anonymous) { - topics.push(this.getEventTopic(eventFragment)); - } - if (values.length !== eventFragment.inputs.length) { - logger.throwArgumentError("event arguments/values mismatch", "values", values); - } - eventFragment.inputs.forEach(function (param, index) { - var value = values[index]; - if (param.indexed) { - if (param.type === "string") { - topics.push((0, hash_1.id)(value)); - } - else if (param.type === "bytes") { - topics.push((0, keccak256_1.keccak256)(value)); - } - else if (param.baseType === "tuple" || param.baseType === "array") { - // @TODO - throw new Error("not implemented"); - } - else { - topics.push(_this._abiCoder.encode([param.type], [value])); - } - } - else { - dataTypes.push(param); - dataValues.push(value); - } - }); - return { - data: this._abiCoder.encode(dataTypes, dataValues), - topics: topics - }; - }; - // Decode a filter for the event and the search criteria - Interface.prototype.decodeEventLog = function (eventFragment, data, topics) { - if (typeof (eventFragment) === "string") { - eventFragment = this.getEvent(eventFragment); - } - if (topics != null && !eventFragment.anonymous) { - var topicHash = this.getEventTopic(eventFragment); - if (!(0, bytes_1.isHexString)(topics[0], 32) || topics[0].toLowerCase() !== topicHash) { - logger.throwError("fragment/topic mismatch", logger_1.Logger.errors.INVALID_ARGUMENT, { argument: "topics[0]", expected: topicHash, value: topics[0] }); - } - topics = topics.slice(1); - } - var indexed = []; - var nonIndexed = []; - var dynamic = []; - eventFragment.inputs.forEach(function (param, index) { - if (param.indexed) { - if (param.type === "string" || param.type === "bytes" || param.baseType === "tuple" || param.baseType === "array") { - indexed.push(fragments_1.ParamType.fromObject({ type: "bytes32", name: param.name })); - dynamic.push(true); - } - else { - indexed.push(param); - dynamic.push(false); - } - } - else { - nonIndexed.push(param); - dynamic.push(false); - } - }); - var resultIndexed = (topics != null) ? this._abiCoder.decode(indexed, (0, bytes_1.concat)(topics)) : null; - var resultNonIndexed = this._abiCoder.decode(nonIndexed, data, true); - var result = []; - var nonIndexedIndex = 0, indexedIndex = 0; - eventFragment.inputs.forEach(function (param, index) { - if (param.indexed) { - if (resultIndexed == null) { - result[index] = new Indexed({ _isIndexed: true, hash: null }); - } - else if (dynamic[index]) { - result[index] = new Indexed({ _isIndexed: true, hash: resultIndexed[indexedIndex++] }); - } - else { - try { - result[index] = resultIndexed[indexedIndex++]; - } - catch (error) { - result[index] = error; - } - } - } - else { - try { - result[index] = resultNonIndexed[nonIndexedIndex++]; - } - catch (error) { - result[index] = error; - } - } - // Add the keyword argument if named and safe - if (param.name && result[param.name] == null) { - var value_1 = result[index]; - // Make error named values throw on access - if (value_1 instanceof Error) { - Object.defineProperty(result, param.name, { - enumerable: true, - get: function () { throw wrapAccessError("property " + JSON.stringify(param.name), value_1); } - }); - } - else { - result[param.name] = value_1; - } - } - }); - var _loop_1 = function (i) { - var value = result[i]; - if (value instanceof Error) { - Object.defineProperty(result, i, { - enumerable: true, - get: function () { throw wrapAccessError("index " + i, value); } - }); - } - }; - // Make all error indexed values throw on access - for (var i = 0; i < result.length; i++) { - _loop_1(i); - } - return Object.freeze(result); - }; - // Given a transaction, find the matching function fragment (if any) and - // determine all its properties and call parameters - Interface.prototype.parseTransaction = function (tx) { - var fragment = this.getFunction(tx.data.substring(0, 10).toLowerCase()); - if (!fragment) { - return null; - } - return new TransactionDescription({ - args: this._abiCoder.decode(fragment.inputs, "0x" + tx.data.substring(10)), - functionFragment: fragment, - name: fragment.name, - signature: fragment.format(), - sighash: this.getSighash(fragment), - value: bignumber_1.BigNumber.from(tx.value || "0"), - }); - }; - // @TODO - //parseCallResult(data: BytesLike): ?? - // Given an event log, find the matching event fragment (if any) and - // determine all its properties and values - Interface.prototype.parseLog = function (log) { - var fragment = this.getEvent(log.topics[0]); - if (!fragment || fragment.anonymous) { - return null; - } - // @TODO: If anonymous, and the only method, and the input count matches, should we parse? - // Probably not, because just because it is the only event in the ABI does - // not mean we have the full ABI; maybe just a fragment? - return new LogDescription({ - eventFragment: fragment, - name: fragment.name, - signature: fragment.format(), - topic: this.getEventTopic(fragment), - args: this.decodeEventLog(fragment, log.data, log.topics) - }); - }; - Interface.prototype.parseError = function (data) { - var hexData = (0, bytes_1.hexlify)(data); - var fragment = this.getError(hexData.substring(0, 10).toLowerCase()); - if (!fragment) { - return null; - } - return new ErrorDescription({ - args: this._abiCoder.decode(fragment.inputs, "0x" + hexData.substring(10)), - errorFragment: fragment, - name: fragment.name, - signature: fragment.format(), - sighash: this.getSighash(fragment), - }); - }; - /* - static from(value: Array | string | Interface) { - if (Interface.isInterface(value)) { - return value; - } - if (typeof(value) === "string") { - return new Interface(JSON.parse(value)); - } - return new Interface(value); - } - */ - Interface.isInterface = function (value) { - return !!(value && value._isInterface); - }; - return Interface; -}()); -exports.Interface = Interface; -//# sourceMappingURL=interface.js.map - -/***/ }), - -/***/ 85122: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "abstract-provider/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 12825: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -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 })); -exports.Provider = exports.TransactionOrderForkEvent = exports.TransactionForkEvent = exports.BlockForkEvent = exports.ForkEvent = void 0; -var bignumber_1 = __nccwpck_require__(18202); -var bytes_1 = __nccwpck_require__(42006); -var properties_1 = __nccwpck_require__(61338); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(85122); -var logger = new logger_1.Logger(_version_1.version); -; -; -//export type CallTransactionable = { -// call(transaction: TransactionRequest): Promise; -//}; -var ForkEvent = /** @class */ (function (_super) { - __extends(ForkEvent, _super); - function ForkEvent() { - return _super !== null && _super.apply(this, arguments) || this; - } - ForkEvent.isForkEvent = function (value) { - return !!(value && value._isForkEvent); - }; - return ForkEvent; -}(properties_1.Description)); -exports.ForkEvent = ForkEvent; -var BlockForkEvent = /** @class */ (function (_super) { - __extends(BlockForkEvent, _super); - function BlockForkEvent(blockHash, expiry) { - var _this = this; - if (!(0, bytes_1.isHexString)(blockHash, 32)) { - logger.throwArgumentError("invalid blockHash", "blockHash", blockHash); - } - _this = _super.call(this, { - _isForkEvent: true, - _isBlockForkEvent: true, - expiry: (expiry || 0), - blockHash: blockHash - }) || this; - return _this; - } - return BlockForkEvent; -}(ForkEvent)); -exports.BlockForkEvent = BlockForkEvent; -var TransactionForkEvent = /** @class */ (function (_super) { - __extends(TransactionForkEvent, _super); - function TransactionForkEvent(hash, expiry) { - var _this = this; - if (!(0, bytes_1.isHexString)(hash, 32)) { - logger.throwArgumentError("invalid transaction hash", "hash", hash); - } - _this = _super.call(this, { - _isForkEvent: true, - _isTransactionForkEvent: true, - expiry: (expiry || 0), - hash: hash - }) || this; - return _this; - } - return TransactionForkEvent; -}(ForkEvent)); -exports.TransactionForkEvent = TransactionForkEvent; -var TransactionOrderForkEvent = /** @class */ (function (_super) { - __extends(TransactionOrderForkEvent, _super); - function TransactionOrderForkEvent(beforeHash, afterHash, expiry) { - var _this = this; - if (!(0, bytes_1.isHexString)(beforeHash, 32)) { - logger.throwArgumentError("invalid transaction hash", "beforeHash", beforeHash); - } - if (!(0, bytes_1.isHexString)(afterHash, 32)) { - logger.throwArgumentError("invalid transaction hash", "afterHash", afterHash); - } - _this = _super.call(this, { - _isForkEvent: true, - _isTransactionOrderForkEvent: true, - expiry: (expiry || 0), - beforeHash: beforeHash, - afterHash: afterHash - }) || this; - return _this; - } - return TransactionOrderForkEvent; -}(ForkEvent)); -exports.TransactionOrderForkEvent = TransactionOrderForkEvent; -/////////////////////////////// -// Exported Abstracts -var Provider = /** @class */ (function () { - function Provider() { - var _newTarget = this.constructor; - logger.checkAbstract(_newTarget, Provider); - (0, properties_1.defineReadOnly)(this, "_isProvider", true); - } - Provider.prototype.getFeeData = function () { - return __awaiter(this, void 0, void 0, function () { - var _a, block, gasPrice, lastBaseFeePerGas, maxFeePerGas, maxPriorityFeePerGas; - return __generator(this, function (_b) { - switch (_b.label) { - case 0: return [4 /*yield*/, (0, properties_1.resolveProperties)({ - block: this.getBlock("latest"), - gasPrice: this.getGasPrice().catch(function (error) { - // @TODO: Why is this now failing on Calaveras? - //console.log(error); - return null; - }) - })]; - case 1: - _a = _b.sent(), block = _a.block, gasPrice = _a.gasPrice; - lastBaseFeePerGas = null, maxFeePerGas = null, maxPriorityFeePerGas = null; - if (block && block.baseFeePerGas) { - // We may want to compute this more accurately in the future, - // using the formula "check if the base fee is correct". - // See: https://eips.ethereum.org/EIPS/eip-1559 - lastBaseFeePerGas = block.baseFeePerGas; - maxPriorityFeePerGas = bignumber_1.BigNumber.from("1500000000"); - maxFeePerGas = block.baseFeePerGas.mul(2).add(maxPriorityFeePerGas); - } - return [2 /*return*/, { lastBaseFeePerGas: lastBaseFeePerGas, maxFeePerGas: maxFeePerGas, maxPriorityFeePerGas: maxPriorityFeePerGas, gasPrice: gasPrice }]; - } - }); - }); - }; - // Alias for "on" - Provider.prototype.addListener = function (eventName, listener) { - return this.on(eventName, listener); - }; - // Alias for "off" - Provider.prototype.removeListener = function (eventName, listener) { - return this.off(eventName, listener); - }; - Provider.isProvider = function (value) { - return !!(value && value._isProvider); - }; - return Provider; -}()); -exports.Provider = Provider; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 90099: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "abstract-signer/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 53870: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -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 })); -exports.VoidSigner = exports.Signer = void 0; -var properties_1 = __nccwpck_require__(61338); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(90099); -var logger = new logger_1.Logger(_version_1.version); -var allowedTransactionKeys = [ - "accessList", "ccipReadEnabled", "chainId", "customData", "data", "from", "gasLimit", "gasPrice", "maxFeePerGas", "maxPriorityFeePerGas", "nonce", "to", "type", "value" -]; -var forwardErrors = [ - logger_1.Logger.errors.INSUFFICIENT_FUNDS, - logger_1.Logger.errors.NONCE_EXPIRED, - logger_1.Logger.errors.REPLACEMENT_UNDERPRICED, -]; -; -; -var Signer = /** @class */ (function () { - /////////////////// - // Sub-classes MUST call super - function Signer() { - var _newTarget = this.constructor; - logger.checkAbstract(_newTarget, Signer); - (0, properties_1.defineReadOnly)(this, "_isSigner", true); - } - /////////////////// - // Sub-classes MAY override these - Signer.prototype.getBalance = function (blockTag) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - this._checkProvider("getBalance"); - return [4 /*yield*/, this.provider.getBalance(this.getAddress(), blockTag)]; - case 1: return [2 /*return*/, _a.sent()]; - } - }); - }); - }; - Signer.prototype.getTransactionCount = function (blockTag) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - this._checkProvider("getTransactionCount"); - return [4 /*yield*/, this.provider.getTransactionCount(this.getAddress(), blockTag)]; - case 1: return [2 /*return*/, _a.sent()]; - } - }); - }); - }; - // Populates "from" if unspecified, and estimates the gas for the transaction - Signer.prototype.estimateGas = function (transaction) { - return __awaiter(this, void 0, void 0, function () { - var tx; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - this._checkProvider("estimateGas"); - return [4 /*yield*/, (0, properties_1.resolveProperties)(this.checkTransaction(transaction))]; - case 1: - tx = _a.sent(); - return [4 /*yield*/, this.provider.estimateGas(tx)]; - case 2: return [2 /*return*/, _a.sent()]; - } - }); - }); - }; - // Populates "from" if unspecified, and calls with the transaction - Signer.prototype.call = function (transaction, blockTag) { - return __awaiter(this, void 0, void 0, function () { - var tx; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - this._checkProvider("call"); - return [4 /*yield*/, (0, properties_1.resolveProperties)(this.checkTransaction(transaction))]; - case 1: - tx = _a.sent(); - return [4 /*yield*/, this.provider.call(tx, blockTag)]; - case 2: return [2 /*return*/, _a.sent()]; - } - }); - }); - }; - // Populates all fields in a transaction, signs it and sends it to the network - Signer.prototype.sendTransaction = function (transaction) { - return __awaiter(this, void 0, void 0, function () { - var tx, signedTx; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - this._checkProvider("sendTransaction"); - return [4 /*yield*/, this.populateTransaction(transaction)]; - case 1: - tx = _a.sent(); - return [4 /*yield*/, this.signTransaction(tx)]; - case 2: - signedTx = _a.sent(); - return [4 /*yield*/, this.provider.sendTransaction(signedTx)]; - case 3: return [2 /*return*/, _a.sent()]; - } - }); - }); - }; - Signer.prototype.getChainId = function () { - return __awaiter(this, void 0, void 0, function () { - var network; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - this._checkProvider("getChainId"); - return [4 /*yield*/, this.provider.getNetwork()]; - case 1: - network = _a.sent(); - return [2 /*return*/, network.chainId]; - } - }); - }); - }; - Signer.prototype.getGasPrice = function () { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - this._checkProvider("getGasPrice"); - return [4 /*yield*/, this.provider.getGasPrice()]; - case 1: return [2 /*return*/, _a.sent()]; - } - }); - }); - }; - Signer.prototype.getFeeData = function () { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - this._checkProvider("getFeeData"); - return [4 /*yield*/, this.provider.getFeeData()]; - case 1: return [2 /*return*/, _a.sent()]; - } - }); - }); - }; - Signer.prototype.resolveName = function (name) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - this._checkProvider("resolveName"); - return [4 /*yield*/, this.provider.resolveName(name)]; - case 1: return [2 /*return*/, _a.sent()]; - } - }); - }); - }; - // Checks a transaction does not contain invalid keys and if - // no "from" is provided, populates it. - // - does NOT require a provider - // - adds "from" is not present - // - returns a COPY (safe to mutate the result) - // By default called from: (overriding these prevents it) - // - call - // - estimateGas - // - populateTransaction (and therefor sendTransaction) - Signer.prototype.checkTransaction = function (transaction) { - for (var key in transaction) { - if (allowedTransactionKeys.indexOf(key) === -1) { - logger.throwArgumentError("invalid transaction key: " + key, "transaction", transaction); - } - } - var tx = (0, properties_1.shallowCopy)(transaction); - if (tx.from == null) { - tx.from = this.getAddress(); - } - else { - // Make sure any provided address matches this signer - tx.from = Promise.all([ - Promise.resolve(tx.from), - this.getAddress() - ]).then(function (result) { - if (result[0].toLowerCase() !== result[1].toLowerCase()) { - logger.throwArgumentError("from address mismatch", "transaction", transaction); - } - return result[0]; - }); - } - return tx; - }; - // Populates ALL keys for a transaction and checks that "from" matches - // this Signer. Should be used by sendTransaction but NOT by signTransaction. - // By default called from: (overriding these prevents it) - // - sendTransaction - // - // Notes: - // - We allow gasPrice for EIP-1559 as long as it matches maxFeePerGas - Signer.prototype.populateTransaction = function (transaction) { - return __awaiter(this, void 0, void 0, function () { - var tx, hasEip1559, feeData, gasPrice; - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, (0, properties_1.resolveProperties)(this.checkTransaction(transaction))]; - case 1: - tx = _a.sent(); - if (tx.to != null) { - tx.to = Promise.resolve(tx.to).then(function (to) { return __awaiter(_this, void 0, void 0, function () { - var address; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (to == null) { - return [2 /*return*/, null]; - } - return [4 /*yield*/, this.resolveName(to)]; - case 1: - address = _a.sent(); - if (address == null) { - logger.throwArgumentError("provided ENS name resolves to null", "tx.to", to); - } - return [2 /*return*/, address]; - } - }); - }); }); - // Prevent this error from causing an UnhandledPromiseException - tx.to.catch(function (error) { }); - } - hasEip1559 = (tx.maxFeePerGas != null || tx.maxPriorityFeePerGas != null); - if (tx.gasPrice != null && (tx.type === 2 || hasEip1559)) { - logger.throwArgumentError("eip-1559 transaction do not support gasPrice", "transaction", transaction); - } - else if ((tx.type === 0 || tx.type === 1) && hasEip1559) { - logger.throwArgumentError("pre-eip-1559 transaction do not support maxFeePerGas/maxPriorityFeePerGas", "transaction", transaction); - } - if (!((tx.type === 2 || tx.type == null) && (tx.maxFeePerGas != null && tx.maxPriorityFeePerGas != null))) return [3 /*break*/, 2]; - // Fully-formed EIP-1559 transaction (skip getFeeData) - tx.type = 2; - return [3 /*break*/, 5]; - case 2: - if (!(tx.type === 0 || tx.type === 1)) return [3 /*break*/, 3]; - // Explicit Legacy or EIP-2930 transaction - // Populate missing gasPrice - if (tx.gasPrice == null) { - tx.gasPrice = this.getGasPrice(); - } - return [3 /*break*/, 5]; - case 3: return [4 /*yield*/, this.getFeeData()]; - case 4: - feeData = _a.sent(); - if (tx.type == null) { - // We need to auto-detect the intended type of this transaction... - if (feeData.maxFeePerGas != null && feeData.maxPriorityFeePerGas != null) { - // The network supports EIP-1559! - // Upgrade transaction from null to eip-1559 - tx.type = 2; - if (tx.gasPrice != null) { - gasPrice = tx.gasPrice; - delete tx.gasPrice; - tx.maxFeePerGas = gasPrice; - tx.maxPriorityFeePerGas = gasPrice; - } - else { - // Populate missing fee data - if (tx.maxFeePerGas == null) { - tx.maxFeePerGas = feeData.maxFeePerGas; - } - if (tx.maxPriorityFeePerGas == null) { - tx.maxPriorityFeePerGas = feeData.maxPriorityFeePerGas; - } - } - } - else if (feeData.gasPrice != null) { - // Network doesn't support EIP-1559... - // ...but they are trying to use EIP-1559 properties - if (hasEip1559) { - logger.throwError("network does not support EIP-1559", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "populateTransaction" - }); - } - // Populate missing fee data - if (tx.gasPrice == null) { - tx.gasPrice = feeData.gasPrice; - } - // Explicitly set untyped transaction to legacy - tx.type = 0; - } - else { - // getFeeData has failed us. - logger.throwError("failed to get consistent fee data", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "signer.getFeeData" - }); - } - } - else if (tx.type === 2) { - // Explicitly using EIP-1559 - // Populate missing fee data - if (tx.maxFeePerGas == null) { - tx.maxFeePerGas = feeData.maxFeePerGas; - } - if (tx.maxPriorityFeePerGas == null) { - tx.maxPriorityFeePerGas = feeData.maxPriorityFeePerGas; - } - } - _a.label = 5; - case 5: - if (tx.nonce == null) { - tx.nonce = this.getTransactionCount("pending"); - } - if (tx.gasLimit == null) { - tx.gasLimit = this.estimateGas(tx).catch(function (error) { - if (forwardErrors.indexOf(error.code) >= 0) { - throw error; - } - return logger.throwError("cannot estimate gas; transaction may fail or may require manual gas limit", logger_1.Logger.errors.UNPREDICTABLE_GAS_LIMIT, { - error: error, - tx: tx - }); - }); - } - if (tx.chainId == null) { - tx.chainId = this.getChainId(); - } - else { - tx.chainId = Promise.all([ - Promise.resolve(tx.chainId), - this.getChainId() - ]).then(function (results) { - if (results[1] !== 0 && results[0] !== results[1]) { - logger.throwArgumentError("chainId address mismatch", "transaction", transaction); - } - return results[0]; - }); - } - return [4 /*yield*/, (0, properties_1.resolveProperties)(tx)]; - case 6: return [2 /*return*/, _a.sent()]; - } - }); - }); - }; - /////////////////// - // Sub-classes SHOULD leave these alone - Signer.prototype._checkProvider = function (operation) { - if (!this.provider) { - logger.throwError("missing provider", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: (operation || "_checkProvider") - }); - } - }; - Signer.isSigner = function (value) { - return !!(value && value._isSigner); - }; - return Signer; -}()); -exports.Signer = Signer; -var VoidSigner = /** @class */ (function (_super) { - __extends(VoidSigner, _super); - function VoidSigner(address, provider) { - var _this = _super.call(this) || this; - (0, properties_1.defineReadOnly)(_this, "address", address); - (0, properties_1.defineReadOnly)(_this, "provider", provider || null); - return _this; - } - VoidSigner.prototype.getAddress = function () { - return Promise.resolve(this.address); - }; - VoidSigner.prototype._fail = function (message, operation) { - return Promise.resolve().then(function () { - logger.throwError(message, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { operation: operation }); - }); - }; - VoidSigner.prototype.signMessage = function (message) { - return this._fail("VoidSigner cannot sign messages", "signMessage"); - }; - VoidSigner.prototype.signTransaction = function (transaction) { - return this._fail("VoidSigner cannot sign transactions", "signTransaction"); - }; - VoidSigner.prototype._signTypedData = function (domain, types, value) { - return this._fail("VoidSigner cannot sign typed data", "signTypedData"); - }; - VoidSigner.prototype.connect = function (provider) { - return new VoidSigner(this.address, provider); - }; - return VoidSigner; -}(Signer)); -exports.VoidSigner = VoidSigner; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 80810: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "address/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 75745: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.getCreate2Address = exports.getContractAddress = exports.getIcapAddress = exports.isAddress = exports.getAddress = void 0; -var bytes_1 = __nccwpck_require__(42006); -var bignumber_1 = __nccwpck_require__(18202); -var keccak256_1 = __nccwpck_require__(56938); -var rlp_1 = __nccwpck_require__(37659); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(80810); -var logger = new logger_1.Logger(_version_1.version); -function getChecksumAddress(address) { - if (!(0, bytes_1.isHexString)(address, 20)) { - logger.throwArgumentError("invalid address", "address", address); - } - address = address.toLowerCase(); - var chars = address.substring(2).split(""); - var expanded = new Uint8Array(40); - for (var i = 0; i < 40; i++) { - expanded[i] = chars[i].charCodeAt(0); - } - var hashed = (0, bytes_1.arrayify)((0, keccak256_1.keccak256)(expanded)); - for (var i = 0; i < 40; i += 2) { - if ((hashed[i >> 1] >> 4) >= 8) { - chars[i] = chars[i].toUpperCase(); - } - if ((hashed[i >> 1] & 0x0f) >= 8) { - chars[i + 1] = chars[i + 1].toUpperCase(); - } - } - return "0x" + chars.join(""); -} -// Shims for environments that are missing some required constants and functions -var MAX_SAFE_INTEGER = 0x1fffffffffffff; -function log10(x) { - if (Math.log10) { - return Math.log10(x); - } - return Math.log(x) / Math.LN10; -} -// See: https://en.wikipedia.org/wiki/International_Bank_Account_Number -// Create lookup table -var ibanLookup = {}; -for (var i = 0; i < 10; i++) { - ibanLookup[String(i)] = String(i); -} -for (var i = 0; i < 26; i++) { - ibanLookup[String.fromCharCode(65 + i)] = String(10 + i); -} -// How many decimal digits can we process? (for 64-bit float, this is 15) -var safeDigits = Math.floor(log10(MAX_SAFE_INTEGER)); -function ibanChecksum(address) { - address = address.toUpperCase(); - address = address.substring(4) + address.substring(0, 2) + "00"; - var expanded = address.split("").map(function (c) { return ibanLookup[c]; }).join(""); - // Javascript can handle integers safely up to 15 (decimal) digits - while (expanded.length >= safeDigits) { - var block = expanded.substring(0, safeDigits); - expanded = parseInt(block, 10) % 97 + expanded.substring(block.length); - } - var checksum = String(98 - (parseInt(expanded, 10) % 97)); - while (checksum.length < 2) { - checksum = "0" + checksum; - } - return checksum; -} -; -function getAddress(address) { - var result = null; - if (typeof (address) !== "string") { - logger.throwArgumentError("invalid address", "address", address); - } - if (address.match(/^(0x)?[0-9a-fA-F]{40}$/)) { - // Missing the 0x prefix - if (address.substring(0, 2) !== "0x") { - address = "0x" + address; - } - result = getChecksumAddress(address); - // It is a checksummed address with a bad checksum - if (address.match(/([A-F].*[a-f])|([a-f].*[A-F])/) && result !== address) { - logger.throwArgumentError("bad address checksum", "address", address); - } - // Maybe ICAP? (we only support direct mode) - } - else if (address.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)) { - // It is an ICAP address with a bad checksum - if (address.substring(2, 4) !== ibanChecksum(address)) { - logger.throwArgumentError("bad icap checksum", "address", address); - } - result = (0, bignumber_1._base36To16)(address.substring(4)); - while (result.length < 40) { - result = "0" + result; - } - result = getChecksumAddress("0x" + result); - } - else { - logger.throwArgumentError("invalid address", "address", address); - } - return result; -} -exports.getAddress = getAddress; -function isAddress(address) { - try { - getAddress(address); - return true; - } - catch (error) { } - return false; -} -exports.isAddress = isAddress; -function getIcapAddress(address) { - var base36 = (0, bignumber_1._base16To36)(getAddress(address).substring(2)).toUpperCase(); - while (base36.length < 30) { - base36 = "0" + base36; - } - return "XE" + ibanChecksum("XE00" + base36) + base36; -} -exports.getIcapAddress = getIcapAddress; -// http://ethereum.stackexchange.com/questions/760/how-is-the-address-of-an-ethereum-contract-computed -function getContractAddress(transaction) { - var from = null; - try { - from = getAddress(transaction.from); - } - catch (error) { - logger.throwArgumentError("missing from address", "transaction", transaction); - } - var nonce = (0, bytes_1.stripZeros)((0, bytes_1.arrayify)(bignumber_1.BigNumber.from(transaction.nonce).toHexString())); - return getAddress((0, bytes_1.hexDataSlice)((0, keccak256_1.keccak256)((0, rlp_1.encode)([from, nonce])), 12)); -} -exports.getContractAddress = getContractAddress; -function getCreate2Address(from, salt, initCodeHash) { - if ((0, bytes_1.hexDataLength)(salt) !== 32) { - logger.throwArgumentError("salt must be 32 bytes", "salt", salt); - } - if ((0, bytes_1.hexDataLength)(initCodeHash) !== 32) { - logger.throwArgumentError("initCodeHash must be 32 bytes", "initCodeHash", initCodeHash); - } - return getAddress((0, bytes_1.hexDataSlice)((0, keccak256_1.keccak256)((0, bytes_1.concat)(["0xff", getAddress(from), salt, initCodeHash])), 12)); -} -exports.getCreate2Address = getCreate2Address; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 76957: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.encode = exports.decode = void 0; -var bytes_1 = __nccwpck_require__(42006); -function decode(textData) { - return (0, bytes_1.arrayify)(new Uint8Array(Buffer.from(textData, "base64"))); -} -exports.decode = decode; -; -function encode(data) { - return Buffer.from((0, bytes_1.arrayify)(data)).toString("base64"); -} -exports.encode = encode; -//# sourceMappingURL=base64.js.map - -/***/ }), - -/***/ 99032: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.encode = exports.decode = void 0; -var base64_1 = __nccwpck_require__(76957); -Object.defineProperty(exports, "decode", ({ enumerable: true, get: function () { return base64_1.decode; } })); -Object.defineProperty(exports, "encode", ({ enumerable: true, get: function () { return base64_1.encode; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 31426: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -/** - * var basex = require("base-x"); + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. * - * This implementation is heavily based on base-x. The main reason to - * deviate was to prevent the dependency of Buffer. + * 3. Neither the name of Salesforce.com nor the names of its contributors may + * be used to endorse or promote products derived from this software without + * specific prior written permission. * - * Contributors: + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */const tn=en(81103);const nn=["local","example","invalid","localhost","test"];const an=["localhost","invalid"];function getPublicSuffix(Wt,Pt={}){const en=Wt.split(".");const rn=en[en.length-1];const In=!!Pt.allowSpecialUseDomain;const sn=!!Pt.ignoreError;if(In&&nn.includes(rn)){if(en.length>1){const Wt=en[en.length-2];return`${Wt}.${rn}`}else if(an.includes(rn)){return`${rn}`}}if(!sn&&nn.includes(rn)){throw new Error(`Cookie has domain set to the public suffix "${rn}" which is a special use domain. To allow this, configure your CookieJar with {allowSpecialUseDomain:true, rejectPublicSuffixes: false}.`)}return tn.get(Wt)}Pt.getPublicSuffix=getPublicSuffix},66849:(Wt,Pt)=>{"use strict"; +/*! + * Copyright (c) 2015, Salesforce.com, Inc. + * All rights reserved. * - * base-x encoding - * Forked from https://github.com/cryptocoinjs/bs58 - * Originally written by Mike Hearn for BitcoinJ - * Copyright (c) 2011 Google Inc - * Ported to JavaScript by Stefan Thomas - * Merged Buffer refactorings from base58-native by Stephen Pair - * Copyright (c) 2013 BitPay Inc + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: * - * The MIT License (MIT) + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. * - * Copyright base-x contributors (c) 2016 + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: + * 3. Neither the name of Salesforce.com nor the names of its contributors may + * be used to endorse or promote products derived from this software without + * specific prior written permission. * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS - * IN THE SOFTWARE. + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */class Store{constructor(){this.synchronous=false}findCookie(Wt,Pt,en,tn){throw new Error("findCookie is not implemented")}findCookies(Wt,Pt,en,tn){throw new Error("findCookies is not implemented")}putCookie(Wt,Pt){throw new Error("putCookie is not implemented")}updateCookie(Wt,Pt,en){throw new Error("updateCookie is not implemented")}removeCookie(Wt,Pt,en,tn){throw new Error("removeCookie is not implemented")}removeCookies(Wt,Pt,en){throw new Error("removeCookies is not implemented")}removeAllCookies(Wt){throw new Error("removeAllCookies is not implemented")}getAllCookies(Wt){throw new Error("getAllCookies is not implemented (therefore jar cannot be serialized)")}}Pt.i=Store},73930:(Wt,Pt,en)=>{function requireUtil(){try{return en(39023)}catch(Wt){return null}}function lookupCustomInspectSymbol(){return Symbol.for("nodejs.util.inspect.custom")}function tryReadingCustomSymbolFromUtilInspect(Wt){const Pt=Wt.requireUtil||requireUtil;const en=Pt();return en?en.inspect.custom:null}Pt.getUtilInspect=function getUtilInspect(Wt,Pt={}){const en=Pt.requireUtil||requireUtil;const tn=en();return function inspect(Pt,en,nn){return tn?tn.inspect(Pt,en,nn):Wt(Pt)}};Pt.getCustomInspectSymbol=function getCustomInspectSymbol(Wt={}){const Pt=Wt.lookupCustomInspectSymbol||lookupCustomInspectSymbol;return Pt()||tryReadingCustomSymbolFromUtilInspect(Wt)}},28977:(Wt,Pt)=>{"use strict";const en=Object.prototype.toString;function isFunction(Wt){return typeof Wt==="function"}function isNonEmptyString(Wt){return isString(Wt)&&Wt!==""}function isDate(Wt){return isInstanceStrict(Wt,Date)&&isInteger(Wt.getTime())}function isEmptyString(Wt){return Wt===""||Wt instanceof String&&Wt.toString()===""}function isString(Wt){return typeof Wt==="string"||Wt instanceof String}function isObject(Wt){return en.call(Wt)==="[object Object]"}function isInstanceStrict(Wt,Pt){try{return Wt instanceof Pt}catch(Wt){return false}}function isUrlStringOrObject(Wt){return isNonEmptyString(Wt)||isObject(Wt)&&"hostname"in Wt&&"pathname"in Wt&&"protocol"in Wt||isInstanceStrict(Wt,URL)}function isInteger(Wt){return typeof Wt==="number"&&Wt%1===0}function validate(Wt,Pt,en){if(!isFunction(Pt)){en=Pt;Pt=null}if(!isObject(en))en={Error:"Failed Check"};if(!Wt){if(Pt){Pt(new ParameterError(en))}else{throw new ParameterError(en)}}}class ParameterError extends Error{constructor(...Wt){super(...Wt)}}Pt.ParameterError=ParameterError;Pt.isFunction=isFunction;Pt.isNonEmptyString=isNonEmptyString;Pt.isDate=isDate;Pt.isEmptyString=isEmptyString;Pt.isString=isString;Pt.isObject=isObject;Pt.isUrlStringOrObject=isUrlStringOrObject;Pt.validate=validate},91492:Wt=>{Wt.exports="4.1.4"},13841:(Wt,Pt)=>{"use strict";Pt.fromCallback=function(Wt){return Object.defineProperty((function(){if(typeof arguments[arguments.length-1]==="function")Wt.apply(this,arguments);else{return new Promise(((Pt,en)=>{arguments[arguments.length]=(Wt,tn)=>{if(Wt)return en(Wt);Pt(tn)};arguments.length++;Wt.apply(this,arguments)}))}}),"name",{value:Wt.name})};Pt.fromPromise=function(Wt){return Object.defineProperty((function(){const Pt=arguments[arguments.length-1];if(typeof Pt!=="function")return Wt.apply(this,arguments);else{delete arguments[arguments.length-1];arguments.length--;Wt.apply(this,arguments).then((Wt=>Pt(null,Wt)),Pt)}}),"name",{value:Wt.name})}},1552:(Wt,Pt,en)=>{"use strict";const tn=en(98328);const nn=en(97023);const an=en(92472);const{STATUS_MAPPING:rn}=en(9156);function containsNonASCII(Wt){return/[^\x00-\x7F]/u.test(Wt)}function findStatus(Wt,{useSTD3ASCIIRules:Pt}){let en=0;let tn=an.length-1;while(en<=tn){const nn=Math.floor((en+tn)/2);const In=an[nn];const sn=Array.isArray(In[0])?In[0][0]:In[0];const on=Array.isArray(In[0])?In[0][1]:In[0];if(sn<=Wt&&on>=Wt){if(Pt&&(In[1]===rn.disallowed_STD3_valid||In[1]===rn.disallowed_STD3_mapped)){return[rn.disallowed,...In.slice(2)]}else if(In[1]===rn.disallowed_STD3_valid){return[rn.valid,...In.slice(2)]}else if(In[1]===rn.disallowed_STD3_mapped){return[rn.mapped,...In.slice(2)]}return In.slice(1)}else if(sn>Wt){tn=nn-1}else{en=nn+1}}return null}function mapChars(Wt,{useSTD3ASCIIRules:Pt,transitionalProcessing:en}){let tn="";for(const nn of Wt){const[Wt,an]=findStatus(nn.codePointAt(0),{useSTD3ASCIIRules:Pt});switch(Wt){case rn.disallowed:tn+=nn;break;case rn.ignored:break;case rn.mapped:if(en&&nn==="ẞ"){tn+="ss"}else{tn+=an}break;case rn.deviation:if(en){tn+=an}else{tn+=nn}break;case rn.valid:tn+=nn;break}}return tn}function validateLabel(Wt,{checkHyphens:Pt,checkBidi:en,checkJoiners:tn,transitionalProcessing:an,useSTD3ASCIIRules:In,isBidi:sn}){if(Wt.length===0){return true}if(Wt.normalize("NFC")!==Wt){return false}const on=Array.from(Wt);if(Pt){if(on[2]==="-"&&on[3]==="-"||(Wt.startsWith("-")||Wt.endsWith("-"))){return false}}if(Wt.includes(".")){return false}if(nn.combiningMarks.test(on[0])){return false}for(const Wt of on){const[Pt]=findStatus(Wt.codePointAt(0),{useSTD3ASCIIRules:In});if(an){if(Pt!==rn.valid){return false}}else if(Pt!==rn.valid&&Pt!==rn.deviation){return false}}if(tn){let Wt=0;for(const[Pt,en]of on.entries()){if(en==="‌"||en==="‍"){if(Pt>0){if(nn.combiningClassVirama.test(on[Pt-1])){continue}if(en==="‌"){const en=on.indexOf("‌",Pt+1);const tn=en<0?on.slice(Wt):on.slice(Wt,en);if(nn.validZWNJ.test(tn.join(""))){Wt=Pt+1;continue}}}return false}}}if(en&&sn){let Pt;if(nn.bidiS1LTR.test(on[0])){Pt=false}else if(nn.bidiS1RTL.test(on[0])){Pt=true}else{return false}if(Pt){if(!nn.bidiS2.test(Wt)||!nn.bidiS3.test(Wt)||nn.bidiS4EN.test(Wt)&&nn.bidiS4AN.test(Wt)){return false}}else if(!nn.bidiS5.test(Wt)||!nn.bidiS6.test(Wt)){return false}}return true}function isBidiDomain(Wt){const Pt=Wt.map((Wt=>{if(Wt.startsWith("xn--")){try{return tn.decode(Wt.substring(4))}catch(Wt){return""}}return Wt})).join(".");return nn.bidiDomain.test(Pt)}function processing(Wt,Pt){let en=mapChars(Wt,Pt);en=en.normalize("NFC");const nn=en.split(".");const an=isBidiDomain(nn);let rn=false;for(const[Wt,en]of nn.entries()){let In=en;let sn=Pt.transitionalProcessing;if(In.startsWith("xn--")){if(containsNonASCII(In)){rn=true;continue}try{In=tn.decode(In.substring(4))}catch{if(!Pt.ignoreInvalidPunycode){rn=true;continue}}nn[Wt]=In;sn=false}if(rn){continue}const on=validateLabel(In,{...Pt,transitionalProcessing:sn,isBidi:an});if(!on){rn=true}}return{string:nn.join("."),error:rn}}function toASCII(Wt,{checkHyphens:Pt=false,checkBidi:en=false,checkJoiners:nn=false,useSTD3ASCIIRules:an=false,verifyDNSLength:rn=false,transitionalProcessing:In=false,ignoreInvalidPunycode:sn=false}={}){const on=processing(Wt,{checkHyphens:Pt,checkBidi:en,checkJoiners:nn,useSTD3ASCIIRules:an,transitionalProcessing:In,ignoreInvalidPunycode:sn});let cn=on.string.split(".");cn=cn.map((Wt=>{if(containsNonASCII(Wt)){try{return`xn--${tn.encode(Wt)}`}catch(Wt){on.error=true}}return Wt}));if(rn){const Wt=cn.join(".").length;if(Wt>253||Wt===0){on.error=true}for(let Wt=0;Wt63||cn[Wt].length===0){on.error=true;break}}}if(on.error){return null}return cn.join(".")}function toUnicode(Wt,{checkHyphens:Pt=false,checkBidi:en=false,checkJoiners:tn=false,useSTD3ASCIIRules:nn=false,transitionalProcessing:an=false,ignoreInvalidPunycode:rn=false}={}){const In=processing(Wt,{checkHyphens:Pt,checkBidi:en,checkJoiners:tn,useSTD3ASCIIRules:nn,transitionalProcessing:an,ignoreInvalidPunycode:rn});return{domain:In.string,error:In.error}}Wt.exports={toASCII:toASCII,toUnicode:toUnicode}},97023:Wt=>{"use strict";const Pt=/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u180F\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\u{101FD}\u{102E0}\u{10376}-\u{1037A}\u{10A01}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A0F}\u{10A38}-\u{10A3A}\u{10A3F}\u{10AE5}\u{10AE6}\u{10D24}-\u{10D27}\u{10EAB}\u{10EAC}\u{10EFD}-\u{10EFF}\u{10F46}-\u{10F50}\u{10F82}-\u{10F85}\u{11000}-\u{11002}\u{11038}-\u{11046}\u{11070}\u{11073}\u{11074}\u{1107F}-\u{11082}\u{110B0}-\u{110BA}\u{110C2}\u{11100}-\u{11102}\u{11127}-\u{11134}\u{11145}\u{11146}\u{11173}\u{11180}-\u{11182}\u{111B3}-\u{111C0}\u{111C9}-\u{111CC}\u{111CE}\u{111CF}\u{1122C}-\u{11237}\u{1123E}\u{11241}\u{112DF}-\u{112EA}\u{11300}-\u{11303}\u{1133B}\u{1133C}\u{1133E}-\u{11344}\u{11347}\u{11348}\u{1134B}-\u{1134D}\u{11357}\u{11362}\u{11363}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11435}-\u{11446}\u{1145E}\u{114B0}-\u{114C3}\u{115AF}-\u{115B5}\u{115B8}-\u{115C0}\u{115DC}\u{115DD}\u{11630}-\u{11640}\u{116AB}-\u{116B7}\u{1171D}-\u{1172B}\u{1182C}-\u{1183A}\u{11930}-\u{11935}\u{11937}\u{11938}\u{1193B}-\u{1193E}\u{11940}\u{11942}\u{11943}\u{119D1}-\u{119D7}\u{119DA}-\u{119E0}\u{119E4}\u{11A01}-\u{11A0A}\u{11A33}-\u{11A39}\u{11A3B}-\u{11A3E}\u{11A47}\u{11A51}-\u{11A5B}\u{11A8A}-\u{11A99}\u{11C2F}-\u{11C36}\u{11C38}-\u{11C3F}\u{11C92}-\u{11CA7}\u{11CA9}-\u{11CB6}\u{11D31}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D45}\u{11D47}\u{11D8A}-\u{11D8E}\u{11D90}\u{11D91}\u{11D93}-\u{11D97}\u{11EF3}-\u{11EF6}\u{11F00}\u{11F01}\u{11F03}\u{11F34}-\u{11F3A}\u{11F3E}-\u{11F42}\u{13440}\u{13447}-\u{13455}\u{16AF0}-\u{16AF4}\u{16B30}-\u{16B36}\u{16F4F}\u{16F51}-\u{16F87}\u{16F8F}-\u{16F92}\u{16FE4}\u{16FF0}\u{16FF1}\u{1BC9D}\u{1BC9E}\u{1CF00}-\u{1CF2D}\u{1CF30}-\u{1CF46}\u{1D165}-\u{1D169}\u{1D16D}-\u{1D172}\u{1D17B}-\u{1D182}\u{1D185}-\u{1D18B}\u{1D1AA}-\u{1D1AD}\u{1D242}-\u{1D244}\u{1DA00}-\u{1DA36}\u{1DA3B}-\u{1DA6C}\u{1DA75}\u{1DA84}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E08F}\u{1E130}-\u{1E136}\u{1E2AE}\u{1E2EC}-\u{1E2EF}\u{1E4EC}-\u{1E4EF}\u{1E8D0}-\u{1E8D6}\u{1E944}-\u{1E94A}\u{E0100}-\u{E01EF}]/u;const en=/[\u094D\u09CD\u0A4D\u0ACD\u0B4D\u0BCD\u0C4D\u0CCD\u0D3B\u0D3C\u0D4D\u0DCA\u0E3A\u0EBA\u0F84\u1039\u103A\u1714\u1715\u1734\u17D2\u1A60\u1B44\u1BAA\u1BAB\u1BF2\u1BF3\u2D7F\uA806\uA82C\uA8C4\uA953\uA9C0\uAAF6\uABED\u{10A3F}\u{11046}\u{11070}\u{1107F}\u{110B9}\u{11133}\u{11134}\u{111C0}\u{11235}\u{112EA}\u{1134D}\u{11442}\u{114C2}\u{115BF}\u{1163F}\u{116B6}\u{1172B}\u{11839}\u{1193D}\u{1193E}\u{119E0}\u{11A34}\u{11A47}\u{11A99}\u{11C3F}\u{11D44}\u{11D45}\u{11D97}\u{11F41}\u{11F42}]/u;const tn=/[\u0620\u0626\u0628\u062A-\u062E\u0633-\u063F\u0641-\u0647\u0649\u064A\u066E\u066F\u0678-\u0687\u069A-\u06BF\u06C1\u06C2\u06CC\u06CE\u06D0\u06D1\u06FA-\u06FC\u06FF\u0712-\u0714\u071A-\u071D\u071F-\u0727\u0729\u072B\u072D\u072E\u074E-\u0758\u075C-\u076A\u076D-\u0770\u0772\u0775-\u0777\u077A-\u077F\u07CA-\u07EA\u0841-\u0845\u0848\u084A-\u0853\u0855\u0860\u0862-\u0865\u0868\u0886\u0889-\u088D\u08A0-\u08A9\u08AF\u08B0\u08B3-\u08B8\u08BA-\u08C8\u1807\u1820-\u1878\u1887-\u18A8\u18AA\uA840-\uA872\u{10AC0}-\u{10AC4}\u{10ACD}\u{10AD3}-\u{10ADC}\u{10ADE}-\u{10AE0}\u{10AEB}-\u{10AEE}\u{10B80}\u{10B82}\u{10B86}-\u{10B88}\u{10B8A}\u{10B8B}\u{10B8D}\u{10B90}\u{10BAD}\u{10BAE}\u{10D00}-\u{10D21}\u{10D23}\u{10F30}-\u{10F32}\u{10F34}-\u{10F44}\u{10F51}-\u{10F53}\u{10F70}-\u{10F73}\u{10F76}-\u{10F81}\u{10FB0}\u{10FB2}\u{10FB3}\u{10FB8}\u{10FBB}\u{10FBC}\u{10FBE}\u{10FBF}\u{10FC1}\u{10FC4}\u{10FCA}\u{10FCB}\u{1E900}-\u{1E943}][\xAD\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u061C\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u070F\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2\u09E3\u09FE\u0A01\u0A02\u0A3C\u0A41\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7\u0AC8\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B55\u0B56\u0B62\u0B63\u0B82\u0BC0\u0BCD\u0C00\u0C04\u0C3C\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81\u0CBC\u0CBF\u0CC6\u0CCC\u0CCD\u0CE2\u0CE3\u0D00\u0D01\u0D3B\u0D3C\u0D41-\u0D44\u0D4D\u0D62\u0D63\u0D81\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0F18\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039\u103A\u103D\u103E\u1058\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732\u1733\u1752\u1753\u1772\u1773\u17B4\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u180F\u1885\u1886\u18A9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193B\u1A17\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ACE\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80\u1B81\u1BA2-\u1BA5\u1BA8\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8\u1CF9\u1DC0-\u1DFF\u200B\u200E\u200F\u202A-\u202E\u2060-\u2064\u206A-\u206F\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302D\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA825\uA826\uA82C\uA8C4\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9BD\uA9E5\uAA29-\uAA2E\uAA31\uAA32\uAA35\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEC\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFEFF\uFFF9-\uFFFB\u{101FD}\u{102E0}\u{10376}-\u{1037A}\u{10A01}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A0F}\u{10A38}-\u{10A3A}\u{10A3F}\u{10AE5}\u{10AE6}\u{10D24}-\u{10D27}\u{10EAB}\u{10EAC}\u{10EFD}-\u{10EFF}\u{10F46}-\u{10F50}\u{10F82}-\u{10F85}\u{11001}\u{11038}-\u{11046}\u{11070}\u{11073}\u{11074}\u{1107F}-\u{11081}\u{110B3}-\u{110B6}\u{110B9}\u{110BA}\u{110C2}\u{11100}-\u{11102}\u{11127}-\u{1112B}\u{1112D}-\u{11134}\u{11173}\u{11180}\u{11181}\u{111B6}-\u{111BE}\u{111C9}-\u{111CC}\u{111CF}\u{1122F}-\u{11231}\u{11234}\u{11236}\u{11237}\u{1123E}\u{11241}\u{112DF}\u{112E3}-\u{112EA}\u{11300}\u{11301}\u{1133B}\u{1133C}\u{11340}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11438}-\u{1143F}\u{11442}-\u{11444}\u{11446}\u{1145E}\u{114B3}-\u{114B8}\u{114BA}\u{114BF}\u{114C0}\u{114C2}\u{114C3}\u{115B2}-\u{115B5}\u{115BC}\u{115BD}\u{115BF}\u{115C0}\u{115DC}\u{115DD}\u{11633}-\u{1163A}\u{1163D}\u{1163F}\u{11640}\u{116AB}\u{116AD}\u{116B0}-\u{116B5}\u{116B7}\u{1171D}-\u{1171F}\u{11722}-\u{11725}\u{11727}-\u{1172B}\u{1182F}-\u{11837}\u{11839}\u{1183A}\u{1193B}\u{1193C}\u{1193E}\u{11943}\u{119D4}-\u{119D7}\u{119DA}\u{119DB}\u{119E0}\u{11A01}-\u{11A0A}\u{11A33}-\u{11A38}\u{11A3B}-\u{11A3E}\u{11A47}\u{11A51}-\u{11A56}\u{11A59}-\u{11A5B}\u{11A8A}-\u{11A96}\u{11A98}\u{11A99}\u{11C30}-\u{11C36}\u{11C38}-\u{11C3D}\u{11C3F}\u{11C92}-\u{11CA7}\u{11CAA}-\u{11CB0}\u{11CB2}\u{11CB3}\u{11CB5}\u{11CB6}\u{11D31}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D45}\u{11D47}\u{11D90}\u{11D91}\u{11D95}\u{11D97}\u{11EF3}\u{11EF4}\u{11F00}\u{11F01}\u{11F36}-\u{11F3A}\u{11F40}\u{11F42}\u{13430}-\u{13440}\u{13447}-\u{13455}\u{16AF0}-\u{16AF4}\u{16B30}-\u{16B36}\u{16F4F}\u{16F8F}-\u{16F92}\u{16FE4}\u{1BC9D}\u{1BC9E}\u{1BCA0}-\u{1BCA3}\u{1CF00}-\u{1CF2D}\u{1CF30}-\u{1CF46}\u{1D167}-\u{1D169}\u{1D173}-\u{1D182}\u{1D185}-\u{1D18B}\u{1D1AA}-\u{1D1AD}\u{1D242}-\u{1D244}\u{1DA00}-\u{1DA36}\u{1DA3B}-\u{1DA6C}\u{1DA75}\u{1DA84}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E08F}\u{1E130}-\u{1E136}\u{1E2AE}\u{1E2EC}-\u{1E2EF}\u{1E4EC}-\u{1E4EF}\u{1E8D0}-\u{1E8D6}\u{1E944}-\u{1E94B}\u{E0001}\u{E0020}-\u{E007F}\u{E0100}-\u{E01EF}]*\u200C[\xAD\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u061C\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u070F\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2\u09E3\u09FE\u0A01\u0A02\u0A3C\u0A41\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7\u0AC8\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B55\u0B56\u0B62\u0B63\u0B82\u0BC0\u0BCD\u0C00\u0C04\u0C3C\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81\u0CBC\u0CBF\u0CC6\u0CCC\u0CCD\u0CE2\u0CE3\u0D00\u0D01\u0D3B\u0D3C\u0D41-\u0D44\u0D4D\u0D62\u0D63\u0D81\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0F18\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039\u103A\u103D\u103E\u1058\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732\u1733\u1752\u1753\u1772\u1773\u17B4\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u180F\u1885\u1886\u18A9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193B\u1A17\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ACE\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80\u1B81\u1BA2-\u1BA5\u1BA8\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8\u1CF9\u1DC0-\u1DFF\u200B\u200E\u200F\u202A-\u202E\u2060-\u2064\u206A-\u206F\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302D\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA825\uA826\uA82C\uA8C4\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9BD\uA9E5\uAA29-\uAA2E\uAA31\uAA32\uAA35\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEC\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFEFF\uFFF9-\uFFFB\u{101FD}\u{102E0}\u{10376}-\u{1037A}\u{10A01}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A0F}\u{10A38}-\u{10A3A}\u{10A3F}\u{10AE5}\u{10AE6}\u{10D24}-\u{10D27}\u{10EAB}\u{10EAC}\u{10EFD}-\u{10EFF}\u{10F46}-\u{10F50}\u{10F82}-\u{10F85}\u{11001}\u{11038}-\u{11046}\u{11070}\u{11073}\u{11074}\u{1107F}-\u{11081}\u{110B3}-\u{110B6}\u{110B9}\u{110BA}\u{110C2}\u{11100}-\u{11102}\u{11127}-\u{1112B}\u{1112D}-\u{11134}\u{11173}\u{11180}\u{11181}\u{111B6}-\u{111BE}\u{111C9}-\u{111CC}\u{111CF}\u{1122F}-\u{11231}\u{11234}\u{11236}\u{11237}\u{1123E}\u{11241}\u{112DF}\u{112E3}-\u{112EA}\u{11300}\u{11301}\u{1133B}\u{1133C}\u{11340}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11438}-\u{1143F}\u{11442}-\u{11444}\u{11446}\u{1145E}\u{114B3}-\u{114B8}\u{114BA}\u{114BF}\u{114C0}\u{114C2}\u{114C3}\u{115B2}-\u{115B5}\u{115BC}\u{115BD}\u{115BF}\u{115C0}\u{115DC}\u{115DD}\u{11633}-\u{1163A}\u{1163D}\u{1163F}\u{11640}\u{116AB}\u{116AD}\u{116B0}-\u{116B5}\u{116B7}\u{1171D}-\u{1171F}\u{11722}-\u{11725}\u{11727}-\u{1172B}\u{1182F}-\u{11837}\u{11839}\u{1183A}\u{1193B}\u{1193C}\u{1193E}\u{11943}\u{119D4}-\u{119D7}\u{119DA}\u{119DB}\u{119E0}\u{11A01}-\u{11A0A}\u{11A33}-\u{11A38}\u{11A3B}-\u{11A3E}\u{11A47}\u{11A51}-\u{11A56}\u{11A59}-\u{11A5B}\u{11A8A}-\u{11A96}\u{11A98}\u{11A99}\u{11C30}-\u{11C36}\u{11C38}-\u{11C3D}\u{11C3F}\u{11C92}-\u{11CA7}\u{11CAA}-\u{11CB0}\u{11CB2}\u{11CB3}\u{11CB5}\u{11CB6}\u{11D31}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D45}\u{11D47}\u{11D90}\u{11D91}\u{11D95}\u{11D97}\u{11EF3}\u{11EF4}\u{11F00}\u{11F01}\u{11F36}-\u{11F3A}\u{11F40}\u{11F42}\u{13430}-\u{13440}\u{13447}-\u{13455}\u{16AF0}-\u{16AF4}\u{16B30}-\u{16B36}\u{16F4F}\u{16F8F}-\u{16F92}\u{16FE4}\u{1BC9D}\u{1BC9E}\u{1BCA0}-\u{1BCA3}\u{1CF00}-\u{1CF2D}\u{1CF30}-\u{1CF46}\u{1D167}-\u{1D169}\u{1D173}-\u{1D182}\u{1D185}-\u{1D18B}\u{1D1AA}-\u{1D1AD}\u{1D242}-\u{1D244}\u{1DA00}-\u{1DA36}\u{1DA3B}-\u{1DA6C}\u{1DA75}\u{1DA84}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E08F}\u{1E130}-\u{1E136}\u{1E2AE}\u{1E2EC}-\u{1E2EF}\u{1E4EC}-\u{1E4EF}\u{1E8D0}-\u{1E8D6}\u{1E944}-\u{1E94B}\u{E0001}\u{E0020}-\u{E007F}\u{E0100}-\u{E01EF}]*[\u0620\u0622-\u063F\u0641-\u064A\u066E\u066F\u0671-\u0673\u0675-\u06D3\u06D5\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u077F\u07CA-\u07EA\u0840-\u0858\u0860\u0862-\u0865\u0867-\u086A\u0870-\u0882\u0886\u0889-\u088E\u08A0-\u08AC\u08AE-\u08C8\u1807\u1820-\u1878\u1887-\u18A8\u18AA\uA840-\uA871\u{10AC0}-\u{10AC5}\u{10AC7}\u{10AC9}\u{10ACA}\u{10ACE}-\u{10AD6}\u{10AD8}-\u{10AE1}\u{10AE4}\u{10AEB}-\u{10AEF}\u{10B80}-\u{10B91}\u{10BA9}-\u{10BAE}\u{10D01}-\u{10D23}\u{10F30}-\u{10F44}\u{10F51}-\u{10F54}\u{10F70}-\u{10F81}\u{10FB0}\u{10FB2}-\u{10FB6}\u{10FB8}-\u{10FBF}\u{10FC1}-\u{10FC4}\u{10FC9}\u{10FCA}\u{1E900}-\u{1E943}]/u;const nn=/[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05EA\u05EF-\u05F4\u0600-\u0605\u0608\u060B\u060D\u061B-\u064A\u0660-\u0669\u066B-\u066F\u0671-\u06D5\u06DD\u06E5\u06E6\u06EE\u06EF\u06FA-\u070D\u070F\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u083E\u0840-\u0858\u085E\u0860-\u086A\u0870-\u088E\u0890\u0891\u08A0-\u08C9\u08E2\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBC2\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFC\uFE70-\uFE74\uFE76-\uFEFC\u{10800}-\u{10805}\u{10808}\u{1080A}-\u{10835}\u{10837}\u{10838}\u{1083C}\u{1083F}-\u{10855}\u{10857}-\u{1089E}\u{108A7}-\u{108AF}\u{108E0}-\u{108F2}\u{108F4}\u{108F5}\u{108FB}-\u{1091B}\u{10920}-\u{10939}\u{1093F}\u{10980}-\u{109B7}\u{109BC}-\u{109CF}\u{109D2}-\u{10A00}\u{10A10}-\u{10A13}\u{10A15}-\u{10A17}\u{10A19}-\u{10A35}\u{10A40}-\u{10A48}\u{10A50}-\u{10A58}\u{10A60}-\u{10A9F}\u{10AC0}-\u{10AE4}\u{10AEB}-\u{10AF6}\u{10B00}-\u{10B35}\u{10B40}-\u{10B55}\u{10B58}-\u{10B72}\u{10B78}-\u{10B91}\u{10B99}-\u{10B9C}\u{10BA9}-\u{10BAF}\u{10C00}-\u{10C48}\u{10C80}-\u{10CB2}\u{10CC0}-\u{10CF2}\u{10CFA}-\u{10D23}\u{10D30}-\u{10D39}\u{10E60}-\u{10E7E}\u{10E80}-\u{10EA9}\u{10EAD}\u{10EB0}\u{10EB1}\u{10F00}-\u{10F27}\u{10F30}-\u{10F45}\u{10F51}-\u{10F59}\u{10F70}-\u{10F81}\u{10F86}-\u{10F89}\u{10FB0}-\u{10FCB}\u{10FE0}-\u{10FF6}\u{1E800}-\u{1E8C4}\u{1E8C7}-\u{1E8CF}\u{1E900}-\u{1E943}\u{1E94B}\u{1E950}-\u{1E959}\u{1E95E}\u{1E95F}\u{1EC71}-\u{1ECB4}\u{1ED01}-\u{1ED3D}\u{1EE00}-\u{1EE03}\u{1EE05}-\u{1EE1F}\u{1EE21}\u{1EE22}\u{1EE24}\u{1EE27}\u{1EE29}-\u{1EE32}\u{1EE34}-\u{1EE37}\u{1EE39}\u{1EE3B}\u{1EE42}\u{1EE47}\u{1EE49}\u{1EE4B}\u{1EE4D}-\u{1EE4F}\u{1EE51}\u{1EE52}\u{1EE54}\u{1EE57}\u{1EE59}\u{1EE5B}\u{1EE5D}\u{1EE5F}\u{1EE61}\u{1EE62}\u{1EE64}\u{1EE67}-\u{1EE6A}\u{1EE6C}-\u{1EE72}\u{1EE74}-\u{1EE77}\u{1EE79}-\u{1EE7C}\u{1EE7E}\u{1EE80}-\u{1EE89}\u{1EE8B}-\u{1EE9B}\u{1EEA1}-\u{1EEA3}\u{1EEA5}-\u{1EEA9}\u{1EEAB}-\u{1EEBB}]/u;const an=/[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02B8\u02BB-\u02C1\u02D0\u02D1\u02E0-\u02E4\u02EE\u0370-\u0373\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0482\u048A-\u052F\u0531-\u0556\u0559-\u0589\u0903-\u0939\u093B\u093D-\u0940\u0949-\u094C\u094E-\u0950\u0958-\u0961\u0964-\u0980\u0982\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD-\u09C0\u09C7\u09C8\u09CB\u09CC\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09FA\u09FC\u09FD\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3E-\u0A40\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A76\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD-\u0AC0\u0AC9\u0ACB\u0ACC\u0AD0\u0AE0\u0AE1\u0AE6-\u0AF0\u0AF9\u0B02\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B3E\u0B40\u0B47\u0B48\u0B4B\u0B4C\u0B57\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE\u0BBF\u0BC1\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD0\u0BD7\u0BE6-\u0BF2\u0C01-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C41-\u0C44\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C66-\u0C6F\u0C77\u0C7F\u0C80\u0C82-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD-\u0CC4\u0CC6-\u0CC8\u0CCA\u0CCB\u0CD5\u0CD6\u0CDD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1-\u0CF3\u0D02-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D40\u0D46-\u0D48\u0D4A-\u0D4C\u0D4E\u0D4F\u0D54-\u0D61\u0D66-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCF-\u0DD1\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2-\u0DF4\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E4F-\u0E5B\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00-\u0F17\u0F1A-\u0F34\u0F36\u0F38\u0F3E-\u0F47\u0F49-\u0F6C\u0F7F\u0F85\u0F88-\u0F8C\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FDA\u1000-\u102C\u1031\u1038\u103B\u103C\u103F-\u1057\u105A-\u105D\u1061-\u1070\u1075-\u1081\u1083\u1084\u1087-\u108C\u108E-\u109C\u109E-\u10C5\u10C7\u10CD\u10D0-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1360-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u167F\u1681-\u169A\u16A0-\u16F8\u1700-\u1711\u1715\u171F-\u1731\u1734-\u1736\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17B6\u17BE-\u17C5\u17C7\u17C8\u17D4-\u17DA\u17DC\u17E0-\u17E9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1923-\u1926\u1929-\u192B\u1930\u1931\u1933-\u1938\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A19\u1A1A\u1A1E-\u1A55\u1A57\u1A61\u1A63\u1A64\u1A6D-\u1A72\u1A80-\u1A89\u1A90-\u1A99\u1AA0-\u1AAD\u1B04-\u1B33\u1B35\u1B3B\u1B3D-\u1B41\u1B43-\u1B4C\u1B50-\u1B6A\u1B74-\u1B7E\u1B82-\u1BA1\u1BA6\u1BA7\u1BAA\u1BAE-\u1BE5\u1BE7\u1BEA-\u1BEC\u1BEE\u1BF2\u1BF3\u1BFC-\u1C2B\u1C34\u1C35\u1C3B-\u1C49\u1C4D-\u1C88\u1C90-\u1CBA\u1CBD-\u1CC7\u1CD3\u1CE1\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5-\u1CF7\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200E\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u214F\u2160-\u2188\u2336-\u237A\u2395\u249C-\u24E9\u26AC\u2800-\u28FF\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D70\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u302E\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3190-\u31BF\u31F0-\u321C\u3220-\u324F\u3260-\u327B\u327F-\u32B0\u32C0-\u32CB\u32D0-\u3376\u337B-\u33DD\u33E0-\u33FE\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA60C\uA610-\uA62B\uA640-\uA66E\uA680-\uA69D\uA6A0-\uA6EF\uA6F2-\uA6F7\uA722-\uA787\uA789-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA824\uA827\uA830-\uA837\uA840-\uA873\uA880-\uA8C3\uA8CE-\uA8D9\uA8F2-\uA8FE\uA900-\uA925\uA92E-\uA946\uA952\uA953\uA95F-\uA97C\uA983-\uA9B2\uA9B4\uA9B5\uA9BA\uA9BB\uA9BE-\uA9CD\uA9CF-\uA9D9\uA9DE-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA2F\uAA30\uAA33\uAA34\uAA40-\uAA42\uAA44-\uAA4B\uAA4D\uAA50-\uAA59\uAA5C-\uAA7B\uAA7D-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAAEB\uAAEE-\uAAF5\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB69\uAB70-\uABE4\uABE6\uABE7\uABE9-\uABEC\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uD800-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC\u{10000}-\u{1000B}\u{1000D}-\u{10026}\u{10028}-\u{1003A}\u{1003C}\u{1003D}\u{1003F}-\u{1004D}\u{10050}-\u{1005D}\u{10080}-\u{100FA}\u{10100}\u{10102}\u{10107}-\u{10133}\u{10137}-\u{1013F}\u{1018D}\u{1018E}\u{101D0}-\u{101FC}\u{10280}-\u{1029C}\u{102A0}-\u{102D0}\u{10300}-\u{10323}\u{1032D}-\u{1034A}\u{10350}-\u{10375}\u{10380}-\u{1039D}\u{1039F}-\u{103C3}\u{103C8}-\u{103D5}\u{10400}-\u{1049D}\u{104A0}-\u{104A9}\u{104B0}-\u{104D3}\u{104D8}-\u{104FB}\u{10500}-\u{10527}\u{10530}-\u{10563}\u{1056F}-\u{1057A}\u{1057C}-\u{1058A}\u{1058C}-\u{10592}\u{10594}\u{10595}\u{10597}-\u{105A1}\u{105A3}-\u{105B1}\u{105B3}-\u{105B9}\u{105BB}\u{105BC}\u{10600}-\u{10736}\u{10740}-\u{10755}\u{10760}-\u{10767}\u{10780}-\u{10785}\u{10787}-\u{107B0}\u{107B2}-\u{107BA}\u{11000}\u{11002}-\u{11037}\u{11047}-\u{1104D}\u{11066}-\u{1106F}\u{11071}\u{11072}\u{11075}\u{11082}-\u{110B2}\u{110B7}\u{110B8}\u{110BB}-\u{110C1}\u{110CD}\u{110D0}-\u{110E8}\u{110F0}-\u{110F9}\u{11103}-\u{11126}\u{1112C}\u{11136}-\u{11147}\u{11150}-\u{11172}\u{11174}-\u{11176}\u{11182}-\u{111B5}\u{111BF}-\u{111C8}\u{111CD}\u{111CE}\u{111D0}-\u{111DF}\u{111E1}-\u{111F4}\u{11200}-\u{11211}\u{11213}-\u{1122E}\u{11232}\u{11233}\u{11235}\u{11238}-\u{1123D}\u{1123F}\u{11240}\u{11280}-\u{11286}\u{11288}\u{1128A}-\u{1128D}\u{1128F}-\u{1129D}\u{1129F}-\u{112A9}\u{112B0}-\u{112DE}\u{112E0}-\u{112E2}\u{112F0}-\u{112F9}\u{11302}\u{11303}\u{11305}-\u{1130C}\u{1130F}\u{11310}\u{11313}-\u{11328}\u{1132A}-\u{11330}\u{11332}\u{11333}\u{11335}-\u{11339}\u{1133D}-\u{1133F}\u{11341}-\u{11344}\u{11347}\u{11348}\u{1134B}-\u{1134D}\u{11350}\u{11357}\u{1135D}-\u{11363}\u{11400}-\u{11437}\u{11440}\u{11441}\u{11445}\u{11447}-\u{1145B}\u{1145D}\u{1145F}-\u{11461}\u{11480}-\u{114B2}\u{114B9}\u{114BB}-\u{114BE}\u{114C1}\u{114C4}-\u{114C7}\u{114D0}-\u{114D9}\u{11580}-\u{115B1}\u{115B8}-\u{115BB}\u{115BE}\u{115C1}-\u{115DB}\u{11600}-\u{11632}\u{1163B}\u{1163C}\u{1163E}\u{11641}-\u{11644}\u{11650}-\u{11659}\u{11680}-\u{116AA}\u{116AC}\u{116AE}\u{116AF}\u{116B6}\u{116B8}\u{116B9}\u{116C0}-\u{116C9}\u{11700}-\u{1171A}\u{11720}\u{11721}\u{11726}\u{11730}-\u{11746}\u{11800}-\u{1182E}\u{11838}\u{1183B}\u{118A0}-\u{118F2}\u{118FF}-\u{11906}\u{11909}\u{1190C}-\u{11913}\u{11915}\u{11916}\u{11918}-\u{11935}\u{11937}\u{11938}\u{1193D}\u{1193F}-\u{11942}\u{11944}-\u{11946}\u{11950}-\u{11959}\u{119A0}-\u{119A7}\u{119AA}-\u{119D3}\u{119DC}-\u{119DF}\u{119E1}-\u{119E4}\u{11A00}\u{11A07}\u{11A08}\u{11A0B}-\u{11A32}\u{11A39}\u{11A3A}\u{11A3F}-\u{11A46}\u{11A50}\u{11A57}\u{11A58}\u{11A5C}-\u{11A89}\u{11A97}\u{11A9A}-\u{11AA2}\u{11AB0}-\u{11AF8}\u{11B00}-\u{11B09}\u{11C00}-\u{11C08}\u{11C0A}-\u{11C2F}\u{11C3E}-\u{11C45}\u{11C50}-\u{11C6C}\u{11C70}-\u{11C8F}\u{11CA9}\u{11CB1}\u{11CB4}\u{11D00}-\u{11D06}\u{11D08}\u{11D09}\u{11D0B}-\u{11D30}\u{11D46}\u{11D50}-\u{11D59}\u{11D60}-\u{11D65}\u{11D67}\u{11D68}\u{11D6A}-\u{11D8E}\u{11D93}\u{11D94}\u{11D96}\u{11D98}\u{11DA0}-\u{11DA9}\u{11EE0}-\u{11EF2}\u{11EF5}-\u{11EF8}\u{11F02}-\u{11F10}\u{11F12}-\u{11F35}\u{11F3E}\u{11F3F}\u{11F41}\u{11F43}-\u{11F59}\u{11FB0}\u{11FC0}-\u{11FD4}\u{11FFF}-\u{12399}\u{12400}-\u{1246E}\u{12470}-\u{12474}\u{12480}-\u{12543}\u{12F90}-\u{12FF2}\u{13000}-\u{1343F}\u{13441}-\u{13446}\u{14400}-\u{14646}\u{16800}-\u{16A38}\u{16A40}-\u{16A5E}\u{16A60}-\u{16A69}\u{16A6E}-\u{16ABE}\u{16AC0}-\u{16AC9}\u{16AD0}-\u{16AED}\u{16AF5}\u{16B00}-\u{16B2F}\u{16B37}-\u{16B45}\u{16B50}-\u{16B59}\u{16B5B}-\u{16B61}\u{16B63}-\u{16B77}\u{16B7D}-\u{16B8F}\u{16E40}-\u{16E9A}\u{16F00}-\u{16F4A}\u{16F50}-\u{16F87}\u{16F93}-\u{16F9F}\u{16FE0}\u{16FE1}\u{16FE3}\u{16FF0}\u{16FF1}\u{17000}-\u{187F7}\u{18800}-\u{18CD5}\u{18D00}-\u{18D08}\u{1AFF0}-\u{1AFF3}\u{1AFF5}-\u{1AFFB}\u{1AFFD}\u{1AFFE}\u{1B000}-\u{1B122}\u{1B132}\u{1B150}-\u{1B152}\u{1B155}\u{1B164}-\u{1B167}\u{1B170}-\u{1B2FB}\u{1BC00}-\u{1BC6A}\u{1BC70}-\u{1BC7C}\u{1BC80}-\u{1BC88}\u{1BC90}-\u{1BC99}\u{1BC9C}\u{1BC9F}\u{1CF50}-\u{1CFC3}\u{1D000}-\u{1D0F5}\u{1D100}-\u{1D126}\u{1D129}-\u{1D166}\u{1D16A}-\u{1D172}\u{1D183}\u{1D184}\u{1D18C}-\u{1D1A9}\u{1D1AE}-\u{1D1E8}\u{1D2C0}-\u{1D2D3}\u{1D2E0}-\u{1D2F3}\u{1D360}-\u{1D378}\u{1D400}-\u{1D454}\u{1D456}-\u{1D49C}\u{1D49E}\u{1D49F}\u{1D4A2}\u{1D4A5}\u{1D4A6}\u{1D4A9}-\u{1D4AC}\u{1D4AE}-\u{1D4B9}\u{1D4BB}\u{1D4BD}-\u{1D4C3}\u{1D4C5}-\u{1D505}\u{1D507}-\u{1D50A}\u{1D50D}-\u{1D514}\u{1D516}-\u{1D51C}\u{1D51E}-\u{1D539}\u{1D53B}-\u{1D53E}\u{1D540}-\u{1D544}\u{1D546}\u{1D54A}-\u{1D550}\u{1D552}-\u{1D6A5}\u{1D6A8}-\u{1D6DA}\u{1D6DC}-\u{1D714}\u{1D716}-\u{1D74E}\u{1D750}-\u{1D788}\u{1D78A}-\u{1D7C2}\u{1D7C4}-\u{1D7CB}\u{1D800}-\u{1D9FF}\u{1DA37}-\u{1DA3A}\u{1DA6D}-\u{1DA74}\u{1DA76}-\u{1DA83}\u{1DA85}-\u{1DA8B}\u{1DF00}-\u{1DF1E}\u{1DF25}-\u{1DF2A}\u{1E030}-\u{1E06D}\u{1E100}-\u{1E12C}\u{1E137}-\u{1E13D}\u{1E140}-\u{1E149}\u{1E14E}\u{1E14F}\u{1E290}-\u{1E2AD}\u{1E2C0}-\u{1E2EB}\u{1E2F0}-\u{1E2F9}\u{1E4D0}-\u{1E4EB}\u{1E4F0}-\u{1E4F9}\u{1E7E0}-\u{1E7E6}\u{1E7E8}-\u{1E7EB}\u{1E7ED}\u{1E7EE}\u{1E7F0}-\u{1E7FE}\u{1F110}-\u{1F12E}\u{1F130}-\u{1F169}\u{1F170}-\u{1F1AC}\u{1F1E6}-\u{1F202}\u{1F210}-\u{1F23B}\u{1F240}-\u{1F248}\u{1F250}\u{1F251}\u{20000}-\u{2A6DF}\u{2A700}-\u{2B739}\u{2B740}-\u{2B81D}\u{2B820}-\u{2CEA1}\u{2CEB0}-\u{2EBE0}\u{2EBF0}-\u{2EE5D}\u{2F800}-\u{2FA1D}\u{30000}-\u{3134A}\u{31350}-\u{323AF}\u{F0000}-\u{FFFFD}\u{100000}-\u{10FFFD}]/u;const rn=/[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05EA\u05EF-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u070D\u070F\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u083E\u0840-\u0858\u085E\u0860-\u086A\u0870-\u088E\u08A0-\u08C9\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBC2\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFC\uFE70-\uFE74\uFE76-\uFEFC\u{10800}-\u{10805}\u{10808}\u{1080A}-\u{10835}\u{10837}\u{10838}\u{1083C}\u{1083F}-\u{10855}\u{10857}-\u{1089E}\u{108A7}-\u{108AF}\u{108E0}-\u{108F2}\u{108F4}\u{108F5}\u{108FB}-\u{1091B}\u{10920}-\u{10939}\u{1093F}\u{10980}-\u{109B7}\u{109BC}-\u{109CF}\u{109D2}-\u{10A00}\u{10A10}-\u{10A13}\u{10A15}-\u{10A17}\u{10A19}-\u{10A35}\u{10A40}-\u{10A48}\u{10A50}-\u{10A58}\u{10A60}-\u{10A9F}\u{10AC0}-\u{10AE4}\u{10AEB}-\u{10AF6}\u{10B00}-\u{10B35}\u{10B40}-\u{10B55}\u{10B58}-\u{10B72}\u{10B78}-\u{10B91}\u{10B99}-\u{10B9C}\u{10BA9}-\u{10BAF}\u{10C00}-\u{10C48}\u{10C80}-\u{10CB2}\u{10CC0}-\u{10CF2}\u{10CFA}-\u{10D23}\u{10E80}-\u{10EA9}\u{10EAD}\u{10EB0}\u{10EB1}\u{10F00}-\u{10F27}\u{10F30}-\u{10F45}\u{10F51}-\u{10F59}\u{10F70}-\u{10F81}\u{10F86}-\u{10F89}\u{10FB0}-\u{10FCB}\u{10FE0}-\u{10FF6}\u{1E800}-\u{1E8C4}\u{1E8C7}-\u{1E8CF}\u{1E900}-\u{1E943}\u{1E94B}\u{1E950}-\u{1E959}\u{1E95E}\u{1E95F}\u{1EC71}-\u{1ECB4}\u{1ED01}-\u{1ED3D}\u{1EE00}-\u{1EE03}\u{1EE05}-\u{1EE1F}\u{1EE21}\u{1EE22}\u{1EE24}\u{1EE27}\u{1EE29}-\u{1EE32}\u{1EE34}-\u{1EE37}\u{1EE39}\u{1EE3B}\u{1EE42}\u{1EE47}\u{1EE49}\u{1EE4B}\u{1EE4D}-\u{1EE4F}\u{1EE51}\u{1EE52}\u{1EE54}\u{1EE57}\u{1EE59}\u{1EE5B}\u{1EE5D}\u{1EE5F}\u{1EE61}\u{1EE62}\u{1EE64}\u{1EE67}-\u{1EE6A}\u{1EE6C}-\u{1EE72}\u{1EE74}-\u{1EE77}\u{1EE79}-\u{1EE7C}\u{1EE7E}\u{1EE80}-\u{1EE89}\u{1EE8B}-\u{1EE9B}\u{1EEA1}-\u{1EEA3}\u{1EEA5}-\u{1EEA9}\u{1EEAB}-\u{1EEBB}]/u;const In=/^[\0-\x08\x0E-\x1B!-@\[-`\{-\x84\x86-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02B9\u02BA\u02C2-\u02CF\u02D2-\u02DF\u02E5-\u02ED\u02EF-\u036F\u0374\u0375\u037E\u0384\u0385\u0387\u03F6\u0483-\u0489\u058A\u058D-\u058F\u0591-\u05C7\u05D0-\u05EA\u05EF-\u05F4\u0600-\u070D\u070F-\u074A\u074D-\u07B1\u07C0-\u07FA\u07FD-\u082D\u0830-\u083E\u0840-\u085B\u085E\u0860-\u086A\u0870-\u088E\u0890\u0891\u0898-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2\u09E3\u09F2\u09F3\u09FB\u09FE\u0A01\u0A02\u0A3C\u0A41\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7\u0AC8\u0ACD\u0AE2\u0AE3\u0AF1\u0AFA-\u0AFF\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B55\u0B56\u0B62\u0B63\u0B82\u0BC0\u0BCD\u0BF3-\u0BFA\u0C00\u0C04\u0C3C\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C78-\u0C7E\u0C81\u0CBC\u0CCC\u0CCD\u0CE2\u0CE3\u0D00\u0D01\u0D3B\u0D3C\u0D41-\u0D44\u0D4D\u0D62\u0D63\u0D81\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E3F\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0F18\u0F19\u0F35\u0F37\u0F39-\u0F3D\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039\u103A\u103D\u103E\u1058\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085\u1086\u108D\u109D\u135D-\u135F\u1390-\u1399\u1400\u169B\u169C\u1712-\u1714\u1732\u1733\u1752\u1753\u1772\u1773\u17B4\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DB\u17DD\u17F0-\u17F9\u1800-\u180F\u1885\u1886\u18A9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193B\u1940\u1944\u1945\u19DE-\u19FF\u1A17\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ACE\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80\u1B81\u1BA2-\u1BA5\u1BA8\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8\u1CF9\u1DC0-\u1DFF\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u200B-\u200D\u200F-\u2027\u202F-\u205E\u2060-\u2064\u206A-\u2070\u2074-\u207E\u2080-\u208E\u20A0-\u20C0\u20D0-\u20F0\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u2150-\u215F\u2189-\u218B\u2190-\u2335\u237B-\u2394\u2396-\u2426\u2440-\u244A\u2460-\u249B\u24EA-\u26AB\u26AD-\u27FF\u2900-\u2B73\u2B76-\u2B95\u2B97-\u2BFF\u2CE5-\u2CEA\u2CEF-\u2CF1\u2CF9-\u2CFF\u2D7F\u2DE0-\u2E5D\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3001-\u3004\u3008-\u3020\u302A-\u302D\u3030\u3036\u3037\u303D-\u303F\u3099-\u309C\u30A0\u30FB\u31C0-\u31E3\u31EF\u321D\u321E\u3250-\u325F\u327C-\u327E\u32B1-\u32BF\u32CC-\u32CF\u3377-\u337A\u33DE\u33DF\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA60D-\uA60F\uA66F-\uA67F\uA69E\uA69F\uA6F0\uA6F1\uA700-\uA721\uA788\uA802\uA806\uA80B\uA825\uA826\uA828-\uA82C\uA838\uA839\uA874-\uA877\uA8C4\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9BD\uA9E5\uAA29-\uAA2E\uAA31\uAA32\uAA35\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEC\uAAED\uAAF6\uAB6A\uAB6B\uABE5\uABE8\uABED\uFB1D-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBC2\uFBD3-\uFD8F\uFD92-\uFDC7\uFDCF\uFDF0-\uFE19\uFE20-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFE70-\uFE74\uFE76-\uFEFC\uFEFF\uFF01-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFF9-\uFFFD\u{10101}\u{10140}-\u{1018C}\u{10190}-\u{1019C}\u{101A0}\u{101FD}\u{102E0}-\u{102FB}\u{10376}-\u{1037A}\u{10800}-\u{10805}\u{10808}\u{1080A}-\u{10835}\u{10837}\u{10838}\u{1083C}\u{1083F}-\u{10855}\u{10857}-\u{1089E}\u{108A7}-\u{108AF}\u{108E0}-\u{108F2}\u{108F4}\u{108F5}\u{108FB}-\u{1091B}\u{1091F}-\u{10939}\u{1093F}\u{10980}-\u{109B7}\u{109BC}-\u{109CF}\u{109D2}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A13}\u{10A15}-\u{10A17}\u{10A19}-\u{10A35}\u{10A38}-\u{10A3A}\u{10A3F}-\u{10A48}\u{10A50}-\u{10A58}\u{10A60}-\u{10A9F}\u{10AC0}-\u{10AE6}\u{10AEB}-\u{10AF6}\u{10B00}-\u{10B35}\u{10B39}-\u{10B55}\u{10B58}-\u{10B72}\u{10B78}-\u{10B91}\u{10B99}-\u{10B9C}\u{10BA9}-\u{10BAF}\u{10C00}-\u{10C48}\u{10C80}-\u{10CB2}\u{10CC0}-\u{10CF2}\u{10CFA}-\u{10D27}\u{10D30}-\u{10D39}\u{10E60}-\u{10E7E}\u{10E80}-\u{10EA9}\u{10EAB}-\u{10EAD}\u{10EB0}\u{10EB1}\u{10EFD}-\u{10F27}\u{10F30}-\u{10F59}\u{10F70}-\u{10F89}\u{10FB0}-\u{10FCB}\u{10FE0}-\u{10FF6}\u{11001}\u{11038}-\u{11046}\u{11052}-\u{11065}\u{11070}\u{11073}\u{11074}\u{1107F}-\u{11081}\u{110B3}-\u{110B6}\u{110B9}\u{110BA}\u{110C2}\u{11100}-\u{11102}\u{11127}-\u{1112B}\u{1112D}-\u{11134}\u{11173}\u{11180}\u{11181}\u{111B6}-\u{111BE}\u{111C9}-\u{111CC}\u{111CF}\u{1122F}-\u{11231}\u{11234}\u{11236}\u{11237}\u{1123E}\u{11241}\u{112DF}\u{112E3}-\u{112EA}\u{11300}\u{11301}\u{1133B}\u{1133C}\u{11340}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11438}-\u{1143F}\u{11442}-\u{11444}\u{11446}\u{1145E}\u{114B3}-\u{114B8}\u{114BA}\u{114BF}\u{114C0}\u{114C2}\u{114C3}\u{115B2}-\u{115B5}\u{115BC}\u{115BD}\u{115BF}\u{115C0}\u{115DC}\u{115DD}\u{11633}-\u{1163A}\u{1163D}\u{1163F}\u{11640}\u{11660}-\u{1166C}\u{116AB}\u{116AD}\u{116B0}-\u{116B5}\u{116B7}\u{1171D}-\u{1171F}\u{11722}-\u{11725}\u{11727}-\u{1172B}\u{1182F}-\u{11837}\u{11839}\u{1183A}\u{1193B}\u{1193C}\u{1193E}\u{11943}\u{119D4}-\u{119D7}\u{119DA}\u{119DB}\u{119E0}\u{11A01}-\u{11A06}\u{11A09}\u{11A0A}\u{11A33}-\u{11A38}\u{11A3B}-\u{11A3E}\u{11A47}\u{11A51}-\u{11A56}\u{11A59}-\u{11A5B}\u{11A8A}-\u{11A96}\u{11A98}\u{11A99}\u{11C30}-\u{11C36}\u{11C38}-\u{11C3D}\u{11C92}-\u{11CA7}\u{11CAA}-\u{11CB0}\u{11CB2}\u{11CB3}\u{11CB5}\u{11CB6}\u{11D31}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D45}\u{11D47}\u{11D90}\u{11D91}\u{11D95}\u{11D97}\u{11EF3}\u{11EF4}\u{11F00}\u{11F01}\u{11F36}-\u{11F3A}\u{11F40}\u{11F42}\u{11FD5}-\u{11FF1}\u{13440}\u{13447}-\u{13455}\u{16AF0}-\u{16AF4}\u{16B30}-\u{16B36}\u{16F4F}\u{16F8F}-\u{16F92}\u{16FE2}\u{16FE4}\u{1BC9D}\u{1BC9E}\u{1BCA0}-\u{1BCA3}\u{1CF00}-\u{1CF2D}\u{1CF30}-\u{1CF46}\u{1D167}-\u{1D169}\u{1D173}-\u{1D182}\u{1D185}-\u{1D18B}\u{1D1AA}-\u{1D1AD}\u{1D1E9}\u{1D1EA}\u{1D200}-\u{1D245}\u{1D300}-\u{1D356}\u{1D6DB}\u{1D715}\u{1D74F}\u{1D789}\u{1D7C3}\u{1D7CE}-\u{1D7FF}\u{1DA00}-\u{1DA36}\u{1DA3B}-\u{1DA6C}\u{1DA75}\u{1DA84}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E08F}\u{1E130}-\u{1E136}\u{1E2AE}\u{1E2EC}-\u{1E2EF}\u{1E2FF}\u{1E4EC}-\u{1E4EF}\u{1E800}-\u{1E8C4}\u{1E8C7}-\u{1E8D6}\u{1E900}-\u{1E94B}\u{1E950}-\u{1E959}\u{1E95E}\u{1E95F}\u{1EC71}-\u{1ECB4}\u{1ED01}-\u{1ED3D}\u{1EE00}-\u{1EE03}\u{1EE05}-\u{1EE1F}\u{1EE21}\u{1EE22}\u{1EE24}\u{1EE27}\u{1EE29}-\u{1EE32}\u{1EE34}-\u{1EE37}\u{1EE39}\u{1EE3B}\u{1EE42}\u{1EE47}\u{1EE49}\u{1EE4B}\u{1EE4D}-\u{1EE4F}\u{1EE51}\u{1EE52}\u{1EE54}\u{1EE57}\u{1EE59}\u{1EE5B}\u{1EE5D}\u{1EE5F}\u{1EE61}\u{1EE62}\u{1EE64}\u{1EE67}-\u{1EE6A}\u{1EE6C}-\u{1EE72}\u{1EE74}-\u{1EE77}\u{1EE79}-\u{1EE7C}\u{1EE7E}\u{1EE80}-\u{1EE89}\u{1EE8B}-\u{1EE9B}\u{1EEA1}-\u{1EEA3}\u{1EEA5}-\u{1EEA9}\u{1EEAB}-\u{1EEBB}\u{1EEF0}\u{1EEF1}\u{1F000}-\u{1F02B}\u{1F030}-\u{1F093}\u{1F0A0}-\u{1F0AE}\u{1F0B1}-\u{1F0BF}\u{1F0C1}-\u{1F0CF}\u{1F0D1}-\u{1F0F5}\u{1F100}-\u{1F10F}\u{1F12F}\u{1F16A}-\u{1F16F}\u{1F1AD}\u{1F260}-\u{1F265}\u{1F300}-\u{1F6D7}\u{1F6DC}-\u{1F6EC}\u{1F6F0}-\u{1F6FC}\u{1F700}-\u{1F776}\u{1F77B}-\u{1F7D9}\u{1F7E0}-\u{1F7EB}\u{1F7F0}\u{1F800}-\u{1F80B}\u{1F810}-\u{1F847}\u{1F850}-\u{1F859}\u{1F860}-\u{1F887}\u{1F890}-\u{1F8AD}\u{1F8B0}\u{1F8B1}\u{1F900}-\u{1FA53}\u{1FA60}-\u{1FA6D}\u{1FA70}-\u{1FA7C}\u{1FA80}-\u{1FA88}\u{1FA90}-\u{1FABD}\u{1FABF}-\u{1FAC5}\u{1FACE}-\u{1FADB}\u{1FAE0}-\u{1FAE8}\u{1FAF0}-\u{1FAF8}\u{1FB00}-\u{1FB92}\u{1FB94}-\u{1FBCA}\u{1FBF0}-\u{1FBF9}\u{E0001}\u{E0020}-\u{E007F}\u{E0100}-\u{E01EF}]*$/u;const sn=/[0-9\xB2\xB3\xB9\u05BE\u05C0\u05C3\u05C6\u05D0-\u05EA\u05EF-\u05F4\u0600-\u0605\u0608\u060B\u060D\u061B-\u064A\u0660-\u0669\u066B-\u066F\u0671-\u06D5\u06DD\u06E5\u06E6\u06EE-\u070D\u070F\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u083E\u0840-\u0858\u085E\u0860-\u086A\u0870-\u088E\u0890\u0891\u08A0-\u08C9\u08E2\u200F\u2070\u2074-\u2079\u2080-\u2089\u2488-\u249B\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBC2\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFC\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\u{102E1}-\u{102FB}\u{10800}-\u{10805}\u{10808}\u{1080A}-\u{10835}\u{10837}\u{10838}\u{1083C}\u{1083F}-\u{10855}\u{10857}-\u{1089E}\u{108A7}-\u{108AF}\u{108E0}-\u{108F2}\u{108F4}\u{108F5}\u{108FB}-\u{1091B}\u{10920}-\u{10939}\u{1093F}\u{10980}-\u{109B7}\u{109BC}-\u{109CF}\u{109D2}-\u{10A00}\u{10A10}-\u{10A13}\u{10A15}-\u{10A17}\u{10A19}-\u{10A35}\u{10A40}-\u{10A48}\u{10A50}-\u{10A58}\u{10A60}-\u{10A9F}\u{10AC0}-\u{10AE4}\u{10AEB}-\u{10AF6}\u{10B00}-\u{10B35}\u{10B40}-\u{10B55}\u{10B58}-\u{10B72}\u{10B78}-\u{10B91}\u{10B99}-\u{10B9C}\u{10BA9}-\u{10BAF}\u{10C00}-\u{10C48}\u{10C80}-\u{10CB2}\u{10CC0}-\u{10CF2}\u{10CFA}-\u{10D23}\u{10D30}-\u{10D39}\u{10E60}-\u{10E7E}\u{10E80}-\u{10EA9}\u{10EAD}\u{10EB0}\u{10EB1}\u{10F00}-\u{10F27}\u{10F30}-\u{10F45}\u{10F51}-\u{10F59}\u{10F70}-\u{10F81}\u{10F86}-\u{10F89}\u{10FB0}-\u{10FCB}\u{10FE0}-\u{10FF6}\u{1D7CE}-\u{1D7FF}\u{1E800}-\u{1E8C4}\u{1E8C7}-\u{1E8CF}\u{1E900}-\u{1E943}\u{1E94B}\u{1E950}-\u{1E959}\u{1E95E}\u{1E95F}\u{1EC71}-\u{1ECB4}\u{1ED01}-\u{1ED3D}\u{1EE00}-\u{1EE03}\u{1EE05}-\u{1EE1F}\u{1EE21}\u{1EE22}\u{1EE24}\u{1EE27}\u{1EE29}-\u{1EE32}\u{1EE34}-\u{1EE37}\u{1EE39}\u{1EE3B}\u{1EE42}\u{1EE47}\u{1EE49}\u{1EE4B}\u{1EE4D}-\u{1EE4F}\u{1EE51}\u{1EE52}\u{1EE54}\u{1EE57}\u{1EE59}\u{1EE5B}\u{1EE5D}\u{1EE5F}\u{1EE61}\u{1EE62}\u{1EE64}\u{1EE67}-\u{1EE6A}\u{1EE6C}-\u{1EE72}\u{1EE74}-\u{1EE77}\u{1EE79}-\u{1EE7C}\u{1EE7E}\u{1EE80}-\u{1EE89}\u{1EE8B}-\u{1EE9B}\u{1EEA1}-\u{1EEA3}\u{1EEA5}-\u{1EEA9}\u{1EEAB}-\u{1EEBB}\u{1F100}-\u{1F10A}\u{1FBF0}-\u{1FBF9}][\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2\u09E3\u09FE\u0A01\u0A02\u0A3C\u0A41\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7\u0AC8\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B55\u0B56\u0B62\u0B63\u0B82\u0BC0\u0BCD\u0C00\u0C04\u0C3C\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81\u0CBC\u0CCC\u0CCD\u0CE2\u0CE3\u0D00\u0D01\u0D3B\u0D3C\u0D41-\u0D44\u0D4D\u0D62\u0D63\u0D81\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0F18\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039\u103A\u103D\u103E\u1058\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732\u1733\u1752\u1753\u1772\u1773\u17B4\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u180F\u1885\u1886\u18A9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193B\u1A17\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ACE\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80\u1B81\u1BA2-\u1BA5\u1BA8\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8\u1CF9\u1DC0-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302D\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA825\uA826\uA82C\uA8C4\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9BD\uA9E5\uAA29-\uAA2E\uAA31\uAA32\uAA35\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEC\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\u{101FD}\u{102E0}\u{10376}-\u{1037A}\u{10A01}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A0F}\u{10A38}-\u{10A3A}\u{10A3F}\u{10AE5}\u{10AE6}\u{10D24}-\u{10D27}\u{10EAB}\u{10EAC}\u{10EFD}-\u{10EFF}\u{10F46}-\u{10F50}\u{10F82}-\u{10F85}\u{11001}\u{11038}-\u{11046}\u{11070}\u{11073}\u{11074}\u{1107F}-\u{11081}\u{110B3}-\u{110B6}\u{110B9}\u{110BA}\u{110C2}\u{11100}-\u{11102}\u{11127}-\u{1112B}\u{1112D}-\u{11134}\u{11173}\u{11180}\u{11181}\u{111B6}-\u{111BE}\u{111C9}-\u{111CC}\u{111CF}\u{1122F}-\u{11231}\u{11234}\u{11236}\u{11237}\u{1123E}\u{11241}\u{112DF}\u{112E3}-\u{112EA}\u{11300}\u{11301}\u{1133B}\u{1133C}\u{11340}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11438}-\u{1143F}\u{11442}-\u{11444}\u{11446}\u{1145E}\u{114B3}-\u{114B8}\u{114BA}\u{114BF}\u{114C0}\u{114C2}\u{114C3}\u{115B2}-\u{115B5}\u{115BC}\u{115BD}\u{115BF}\u{115C0}\u{115DC}\u{115DD}\u{11633}-\u{1163A}\u{1163D}\u{1163F}\u{11640}\u{116AB}\u{116AD}\u{116B0}-\u{116B5}\u{116B7}\u{1171D}-\u{1171F}\u{11722}-\u{11725}\u{11727}-\u{1172B}\u{1182F}-\u{11837}\u{11839}\u{1183A}\u{1193B}\u{1193C}\u{1193E}\u{11943}\u{119D4}-\u{119D7}\u{119DA}\u{119DB}\u{119E0}\u{11A01}-\u{11A06}\u{11A09}\u{11A0A}\u{11A33}-\u{11A38}\u{11A3B}-\u{11A3E}\u{11A47}\u{11A51}-\u{11A56}\u{11A59}-\u{11A5B}\u{11A8A}-\u{11A96}\u{11A98}\u{11A99}\u{11C30}-\u{11C36}\u{11C38}-\u{11C3D}\u{11C92}-\u{11CA7}\u{11CAA}-\u{11CB0}\u{11CB2}\u{11CB3}\u{11CB5}\u{11CB6}\u{11D31}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D45}\u{11D47}\u{11D90}\u{11D91}\u{11D95}\u{11D97}\u{11EF3}\u{11EF4}\u{11F00}\u{11F01}\u{11F36}-\u{11F3A}\u{11F40}\u{11F42}\u{13440}\u{13447}-\u{13455}\u{16AF0}-\u{16AF4}\u{16B30}-\u{16B36}\u{16F4F}\u{16F8F}-\u{16F92}\u{16FE4}\u{1BC9D}\u{1BC9E}\u{1CF00}-\u{1CF2D}\u{1CF30}-\u{1CF46}\u{1D167}-\u{1D169}\u{1D17B}-\u{1D182}\u{1D185}-\u{1D18B}\u{1D1AA}-\u{1D1AD}\u{1D242}-\u{1D244}\u{1DA00}-\u{1DA36}\u{1DA3B}-\u{1DA6C}\u{1DA75}\u{1DA84}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E08F}\u{1E130}-\u{1E136}\u{1E2AE}\u{1E2EC}-\u{1E2EF}\u{1E4EC}-\u{1E4EF}\u{1E8D0}-\u{1E8D6}\u{1E944}-\u{1E94A}\u{E0100}-\u{E01EF}]*$/u;const on=/[0-9\xB2\xB3\xB9\u06F0-\u06F9\u2070\u2074-\u2079\u2080-\u2089\u2488-\u249B\uFF10-\uFF19\u{102E1}-\u{102FB}\u{1D7CE}-\u{1D7FF}\u{1F100}-\u{1F10A}\u{1FBF0}-\u{1FBF9}]/u;const cn=/[\u0600-\u0605\u0660-\u0669\u066B\u066C\u06DD\u0890\u0891\u08E2\u{10D30}-\u{10D39}\u{10E60}-\u{10E7E}]/u;const dn=/^[\0-\x08\x0E-\x1B!-\x84\x86-\u0377\u037A-\u037F\u0384-\u038A\u038C\u038E-\u03A1\u03A3-\u052F\u0531-\u0556\u0559-\u058A\u058D-\u058F\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0606\u0607\u0609\u060A\u060C\u060E-\u061A\u064B-\u065F\u066A\u0670\u06D6-\u06DC\u06DE-\u06E4\u06E7-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07F6-\u07F9\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09FE\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A76\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AF1\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B77\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BFA\u0C00-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3C-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C5D\u0C60-\u0C63\u0C66-\u0C6F\u0C77-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDD\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1-\u0CF3\u0D00-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4F\u0D54-\u0D63\u0D66-\u0D7F\u0D81-\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2-\u0DF4\u0E01-\u0E3A\u0E3F-\u0E5B\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECE\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00-\u0F47\u0F49-\u0F6C\u0F71-\u0F97\u0F99-\u0FBC\u0FBE-\u0FCC\u0FCE-\u0FDA\u1000-\u10C5\u10C7\u10CD\u10D0-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u137C\u1380-\u1399\u13A0-\u13F5\u13F8-\u13FD\u1400-\u167F\u1681-\u169C\u16A0-\u16F8\u1700-\u1715\u171F-\u1736\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17DD\u17E0-\u17E9\u17F0-\u17F9\u1800-\u1819\u1820-\u1878\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1940\u1944-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u19DE-\u1A1B\u1A1E-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA0-\u1AAD\u1AB0-\u1ACE\u1B00-\u1B4C\u1B50-\u1B7E\u1B80-\u1BF3\u1BFC-\u1C37\u1C3B-\u1C49\u1C4D-\u1C88\u1C90-\u1CBA\u1CBD-\u1CC7\u1CD0-\u1CFA\u1D00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FC4\u1FC6-\u1FD3\u1FD6-\u1FDB\u1FDD-\u1FEF\u1FF2-\u1FF4\u1FF6-\u1FFE\u200B-\u200E\u2010-\u2027\u202F-\u205E\u2060-\u2064\u206A-\u2071\u2074-\u208E\u2090-\u209C\u20A0-\u20C0\u20D0-\u20F0\u2100-\u218B\u2190-\u2426\u2440-\u244A\u2460-\u2B73\u2B76-\u2B95\u2B97-\u2CF3\u2CF9-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D70\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2E5D\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3001-\u303F\u3041-\u3096\u3099-\u30FF\u3105-\u312F\u3131-\u318E\u3190-\u31E3\u31EF-\u321E\u3220-\uA48C\uA490-\uA4C6\uA4D0-\uA62B\uA640-\uA6F7\uA700-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA82C\uA830-\uA839\uA840-\uA877\uA880-\uA8C5\uA8CE-\uA8D9\uA8E0-\uA953\uA95F-\uA97C\uA980-\uA9CD\uA9CF-\uA9D9\uA9DE-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA5C-\uAAC2\uAADB-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB6B\uAB70-\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uD800-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1E\uFB29\uFD3E-\uFD4F\uFDCF\uFDFD-\uFE19\uFE20-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFEFF\uFF01-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFF9-\uFFFD\u{10000}-\u{1000B}\u{1000D}-\u{10026}\u{10028}-\u{1003A}\u{1003C}\u{1003D}\u{1003F}-\u{1004D}\u{10050}-\u{1005D}\u{10080}-\u{100FA}\u{10100}-\u{10102}\u{10107}-\u{10133}\u{10137}-\u{1018E}\u{10190}-\u{1019C}\u{101A0}\u{101D0}-\u{101FD}\u{10280}-\u{1029C}\u{102A0}-\u{102D0}\u{102E0}-\u{102FB}\u{10300}-\u{10323}\u{1032D}-\u{1034A}\u{10350}-\u{1037A}\u{10380}-\u{1039D}\u{1039F}-\u{103C3}\u{103C8}-\u{103D5}\u{10400}-\u{1049D}\u{104A0}-\u{104A9}\u{104B0}-\u{104D3}\u{104D8}-\u{104FB}\u{10500}-\u{10527}\u{10530}-\u{10563}\u{1056F}-\u{1057A}\u{1057C}-\u{1058A}\u{1058C}-\u{10592}\u{10594}\u{10595}\u{10597}-\u{105A1}\u{105A3}-\u{105B1}\u{105B3}-\u{105B9}\u{105BB}\u{105BC}\u{10600}-\u{10736}\u{10740}-\u{10755}\u{10760}-\u{10767}\u{10780}-\u{10785}\u{10787}-\u{107B0}\u{107B2}-\u{107BA}\u{1091F}\u{10A01}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A0F}\u{10A38}-\u{10A3A}\u{10A3F}\u{10AE5}\u{10AE6}\u{10B39}-\u{10B3F}\u{10D24}-\u{10D27}\u{10EAB}\u{10EAC}\u{10EFD}-\u{10EFF}\u{10F46}-\u{10F50}\u{10F82}-\u{10F85}\u{11000}-\u{1104D}\u{11052}-\u{11075}\u{1107F}-\u{110C2}\u{110CD}\u{110D0}-\u{110E8}\u{110F0}-\u{110F9}\u{11100}-\u{11134}\u{11136}-\u{11147}\u{11150}-\u{11176}\u{11180}-\u{111DF}\u{111E1}-\u{111F4}\u{11200}-\u{11211}\u{11213}-\u{11241}\u{11280}-\u{11286}\u{11288}\u{1128A}-\u{1128D}\u{1128F}-\u{1129D}\u{1129F}-\u{112A9}\u{112B0}-\u{112EA}\u{112F0}-\u{112F9}\u{11300}-\u{11303}\u{11305}-\u{1130C}\u{1130F}\u{11310}\u{11313}-\u{11328}\u{1132A}-\u{11330}\u{11332}\u{11333}\u{11335}-\u{11339}\u{1133B}-\u{11344}\u{11347}\u{11348}\u{1134B}-\u{1134D}\u{11350}\u{11357}\u{1135D}-\u{11363}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11400}-\u{1145B}\u{1145D}-\u{11461}\u{11480}-\u{114C7}\u{114D0}-\u{114D9}\u{11580}-\u{115B5}\u{115B8}-\u{115DD}\u{11600}-\u{11644}\u{11650}-\u{11659}\u{11660}-\u{1166C}\u{11680}-\u{116B9}\u{116C0}-\u{116C9}\u{11700}-\u{1171A}\u{1171D}-\u{1172B}\u{11730}-\u{11746}\u{11800}-\u{1183B}\u{118A0}-\u{118F2}\u{118FF}-\u{11906}\u{11909}\u{1190C}-\u{11913}\u{11915}\u{11916}\u{11918}-\u{11935}\u{11937}\u{11938}\u{1193B}-\u{11946}\u{11950}-\u{11959}\u{119A0}-\u{119A7}\u{119AA}-\u{119D7}\u{119DA}-\u{119E4}\u{11A00}-\u{11A47}\u{11A50}-\u{11AA2}\u{11AB0}-\u{11AF8}\u{11B00}-\u{11B09}\u{11C00}-\u{11C08}\u{11C0A}-\u{11C36}\u{11C38}-\u{11C45}\u{11C50}-\u{11C6C}\u{11C70}-\u{11C8F}\u{11C92}-\u{11CA7}\u{11CA9}-\u{11CB6}\u{11D00}-\u{11D06}\u{11D08}\u{11D09}\u{11D0B}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D47}\u{11D50}-\u{11D59}\u{11D60}-\u{11D65}\u{11D67}\u{11D68}\u{11D6A}-\u{11D8E}\u{11D90}\u{11D91}\u{11D93}-\u{11D98}\u{11DA0}-\u{11DA9}\u{11EE0}-\u{11EF8}\u{11F00}-\u{11F10}\u{11F12}-\u{11F3A}\u{11F3E}-\u{11F59}\u{11FB0}\u{11FC0}-\u{11FF1}\u{11FFF}-\u{12399}\u{12400}-\u{1246E}\u{12470}-\u{12474}\u{12480}-\u{12543}\u{12F90}-\u{12FF2}\u{13000}-\u{13455}\u{14400}-\u{14646}\u{16800}-\u{16A38}\u{16A40}-\u{16A5E}\u{16A60}-\u{16A69}\u{16A6E}-\u{16ABE}\u{16AC0}-\u{16AC9}\u{16AD0}-\u{16AED}\u{16AF0}-\u{16AF5}\u{16B00}-\u{16B45}\u{16B50}-\u{16B59}\u{16B5B}-\u{16B61}\u{16B63}-\u{16B77}\u{16B7D}-\u{16B8F}\u{16E40}-\u{16E9A}\u{16F00}-\u{16F4A}\u{16F4F}-\u{16F87}\u{16F8F}-\u{16F9F}\u{16FE0}-\u{16FE4}\u{16FF0}\u{16FF1}\u{17000}-\u{187F7}\u{18800}-\u{18CD5}\u{18D00}-\u{18D08}\u{1AFF0}-\u{1AFF3}\u{1AFF5}-\u{1AFFB}\u{1AFFD}\u{1AFFE}\u{1B000}-\u{1B122}\u{1B132}\u{1B150}-\u{1B152}\u{1B155}\u{1B164}-\u{1B167}\u{1B170}-\u{1B2FB}\u{1BC00}-\u{1BC6A}\u{1BC70}-\u{1BC7C}\u{1BC80}-\u{1BC88}\u{1BC90}-\u{1BC99}\u{1BC9C}-\u{1BCA3}\u{1CF00}-\u{1CF2D}\u{1CF30}-\u{1CF46}\u{1CF50}-\u{1CFC3}\u{1D000}-\u{1D0F5}\u{1D100}-\u{1D126}\u{1D129}-\u{1D1EA}\u{1D200}-\u{1D245}\u{1D2C0}-\u{1D2D3}\u{1D2E0}-\u{1D2F3}\u{1D300}-\u{1D356}\u{1D360}-\u{1D378}\u{1D400}-\u{1D454}\u{1D456}-\u{1D49C}\u{1D49E}\u{1D49F}\u{1D4A2}\u{1D4A5}\u{1D4A6}\u{1D4A9}-\u{1D4AC}\u{1D4AE}-\u{1D4B9}\u{1D4BB}\u{1D4BD}-\u{1D4C3}\u{1D4C5}-\u{1D505}\u{1D507}-\u{1D50A}\u{1D50D}-\u{1D514}\u{1D516}-\u{1D51C}\u{1D51E}-\u{1D539}\u{1D53B}-\u{1D53E}\u{1D540}-\u{1D544}\u{1D546}\u{1D54A}-\u{1D550}\u{1D552}-\u{1D6A5}\u{1D6A8}-\u{1D7CB}\u{1D7CE}-\u{1DA8B}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1DF00}-\u{1DF1E}\u{1DF25}-\u{1DF2A}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E030}-\u{1E06D}\u{1E08F}\u{1E100}-\u{1E12C}\u{1E130}-\u{1E13D}\u{1E140}-\u{1E149}\u{1E14E}\u{1E14F}\u{1E290}-\u{1E2AE}\u{1E2C0}-\u{1E2F9}\u{1E2FF}\u{1E4D0}-\u{1E4F9}\u{1E7E0}-\u{1E7E6}\u{1E7E8}-\u{1E7EB}\u{1E7ED}\u{1E7EE}\u{1E7F0}-\u{1E7FE}\u{1E8D0}-\u{1E8D6}\u{1E944}-\u{1E94A}\u{1EEF0}\u{1EEF1}\u{1F000}-\u{1F02B}\u{1F030}-\u{1F093}\u{1F0A0}-\u{1F0AE}\u{1F0B1}-\u{1F0BF}\u{1F0C1}-\u{1F0CF}\u{1F0D1}-\u{1F0F5}\u{1F100}-\u{1F1AD}\u{1F1E6}-\u{1F202}\u{1F210}-\u{1F23B}\u{1F240}-\u{1F248}\u{1F250}\u{1F251}\u{1F260}-\u{1F265}\u{1F300}-\u{1F6D7}\u{1F6DC}-\u{1F6EC}\u{1F6F0}-\u{1F6FC}\u{1F700}-\u{1F776}\u{1F77B}-\u{1F7D9}\u{1F7E0}-\u{1F7EB}\u{1F7F0}\u{1F800}-\u{1F80B}\u{1F810}-\u{1F847}\u{1F850}-\u{1F859}\u{1F860}-\u{1F887}\u{1F890}-\u{1F8AD}\u{1F8B0}\u{1F8B1}\u{1F900}-\u{1FA53}\u{1FA60}-\u{1FA6D}\u{1FA70}-\u{1FA7C}\u{1FA80}-\u{1FA88}\u{1FA90}-\u{1FABD}\u{1FABF}-\u{1FAC5}\u{1FACE}-\u{1FADB}\u{1FAE0}-\u{1FAE8}\u{1FAF0}-\u{1FAF8}\u{1FB00}-\u{1FB92}\u{1FB94}-\u{1FBCA}\u{1FBF0}-\u{1FBF9}\u{20000}-\u{2A6DF}\u{2A700}-\u{2B739}\u{2B740}-\u{2B81D}\u{2B820}-\u{2CEA1}\u{2CEB0}-\u{2EBE0}\u{2EBF0}-\u{2EE5D}\u{2F800}-\u{2FA1D}\u{30000}-\u{3134A}\u{31350}-\u{323AF}\u{E0001}\u{E0020}-\u{E007F}\u{E0100}-\u{E01EF}\u{F0000}-\u{FFFFD}\u{100000}-\u{10FFFD}]*$/u;const un=/[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02B8\u02BB-\u02C1\u02D0\u02D1\u02E0-\u02E4\u02EE\u0370-\u0373\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0482\u048A-\u052F\u0531-\u0556\u0559-\u0589\u06F0-\u06F9\u0903-\u0939\u093B\u093D-\u0940\u0949-\u094C\u094E-\u0950\u0958-\u0961\u0964-\u0980\u0982\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD-\u09C0\u09C7\u09C8\u09CB\u09CC\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09FA\u09FC\u09FD\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3E-\u0A40\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A76\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD-\u0AC0\u0AC9\u0ACB\u0ACC\u0AD0\u0AE0\u0AE1\u0AE6-\u0AF0\u0AF9\u0B02\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B3E\u0B40\u0B47\u0B48\u0B4B\u0B4C\u0B57\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE\u0BBF\u0BC1\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD0\u0BD7\u0BE6-\u0BF2\u0C01-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C41-\u0C44\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C66-\u0C6F\u0C77\u0C7F\u0C80\u0C82-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD-\u0CC4\u0CC6-\u0CC8\u0CCA\u0CCB\u0CD5\u0CD6\u0CDD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1-\u0CF3\u0D02-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D40\u0D46-\u0D48\u0D4A-\u0D4C\u0D4E\u0D4F\u0D54-\u0D61\u0D66-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCF-\u0DD1\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2-\u0DF4\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E4F-\u0E5B\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00-\u0F17\u0F1A-\u0F34\u0F36\u0F38\u0F3E-\u0F47\u0F49-\u0F6C\u0F7F\u0F85\u0F88-\u0F8C\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FDA\u1000-\u102C\u1031\u1038\u103B\u103C\u103F-\u1057\u105A-\u105D\u1061-\u1070\u1075-\u1081\u1083\u1084\u1087-\u108C\u108E-\u109C\u109E-\u10C5\u10C7\u10CD\u10D0-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1360-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u167F\u1681-\u169A\u16A0-\u16F8\u1700-\u1711\u1715\u171F-\u1731\u1734-\u1736\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17B6\u17BE-\u17C5\u17C7\u17C8\u17D4-\u17DA\u17DC\u17E0-\u17E9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1923-\u1926\u1929-\u192B\u1930\u1931\u1933-\u1938\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A19\u1A1A\u1A1E-\u1A55\u1A57\u1A61\u1A63\u1A64\u1A6D-\u1A72\u1A80-\u1A89\u1A90-\u1A99\u1AA0-\u1AAD\u1B04-\u1B33\u1B35\u1B3B\u1B3D-\u1B41\u1B43-\u1B4C\u1B50-\u1B6A\u1B74-\u1B7E\u1B82-\u1BA1\u1BA6\u1BA7\u1BAA\u1BAE-\u1BE5\u1BE7\u1BEA-\u1BEC\u1BEE\u1BF2\u1BF3\u1BFC-\u1C2B\u1C34\u1C35\u1C3B-\u1C49\u1C4D-\u1C88\u1C90-\u1CBA\u1CBD-\u1CC7\u1CD3\u1CE1\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5-\u1CF7\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200E\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u214F\u2160-\u2188\u2336-\u237A\u2395\u2488-\u24E9\u26AC\u2800-\u28FF\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D70\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u302E\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3190-\u31BF\u31F0-\u321C\u3220-\u324F\u3260-\u327B\u327F-\u32B0\u32C0-\u32CB\u32D0-\u3376\u337B-\u33DD\u33E0-\u33FE\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA60C\uA610-\uA62B\uA640-\uA66E\uA680-\uA69D\uA6A0-\uA6EF\uA6F2-\uA6F7\uA722-\uA787\uA789-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA824\uA827\uA830-\uA837\uA840-\uA873\uA880-\uA8C3\uA8CE-\uA8D9\uA8F2-\uA8FE\uA900-\uA925\uA92E-\uA946\uA952\uA953\uA95F-\uA97C\uA983-\uA9B2\uA9B4\uA9B5\uA9BA\uA9BB\uA9BE-\uA9CD\uA9CF-\uA9D9\uA9DE-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA2F\uAA30\uAA33\uAA34\uAA40-\uAA42\uAA44-\uAA4B\uAA4D\uAA50-\uAA59\uAA5C-\uAA7B\uAA7D-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAAEB\uAAEE-\uAAF5\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB69\uAB70-\uABE4\uABE6\uABE7\uABE9-\uABEC\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uD800-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC\u{10000}-\u{1000B}\u{1000D}-\u{10026}\u{10028}-\u{1003A}\u{1003C}\u{1003D}\u{1003F}-\u{1004D}\u{10050}-\u{1005D}\u{10080}-\u{100FA}\u{10100}\u{10102}\u{10107}-\u{10133}\u{10137}-\u{1013F}\u{1018D}\u{1018E}\u{101D0}-\u{101FC}\u{10280}-\u{1029C}\u{102A0}-\u{102D0}\u{102E1}-\u{102FB}\u{10300}-\u{10323}\u{1032D}-\u{1034A}\u{10350}-\u{10375}\u{10380}-\u{1039D}\u{1039F}-\u{103C3}\u{103C8}-\u{103D5}\u{10400}-\u{1049D}\u{104A0}-\u{104A9}\u{104B0}-\u{104D3}\u{104D8}-\u{104FB}\u{10500}-\u{10527}\u{10530}-\u{10563}\u{1056F}-\u{1057A}\u{1057C}-\u{1058A}\u{1058C}-\u{10592}\u{10594}\u{10595}\u{10597}-\u{105A1}\u{105A3}-\u{105B1}\u{105B3}-\u{105B9}\u{105BB}\u{105BC}\u{10600}-\u{10736}\u{10740}-\u{10755}\u{10760}-\u{10767}\u{10780}-\u{10785}\u{10787}-\u{107B0}\u{107B2}-\u{107BA}\u{11000}\u{11002}-\u{11037}\u{11047}-\u{1104D}\u{11066}-\u{1106F}\u{11071}\u{11072}\u{11075}\u{11082}-\u{110B2}\u{110B7}\u{110B8}\u{110BB}-\u{110C1}\u{110CD}\u{110D0}-\u{110E8}\u{110F0}-\u{110F9}\u{11103}-\u{11126}\u{1112C}\u{11136}-\u{11147}\u{11150}-\u{11172}\u{11174}-\u{11176}\u{11182}-\u{111B5}\u{111BF}-\u{111C8}\u{111CD}\u{111CE}\u{111D0}-\u{111DF}\u{111E1}-\u{111F4}\u{11200}-\u{11211}\u{11213}-\u{1122E}\u{11232}\u{11233}\u{11235}\u{11238}-\u{1123D}\u{1123F}\u{11240}\u{11280}-\u{11286}\u{11288}\u{1128A}-\u{1128D}\u{1128F}-\u{1129D}\u{1129F}-\u{112A9}\u{112B0}-\u{112DE}\u{112E0}-\u{112E2}\u{112F0}-\u{112F9}\u{11302}\u{11303}\u{11305}-\u{1130C}\u{1130F}\u{11310}\u{11313}-\u{11328}\u{1132A}-\u{11330}\u{11332}\u{11333}\u{11335}-\u{11339}\u{1133D}-\u{1133F}\u{11341}-\u{11344}\u{11347}\u{11348}\u{1134B}-\u{1134D}\u{11350}\u{11357}\u{1135D}-\u{11363}\u{11400}-\u{11437}\u{11440}\u{11441}\u{11445}\u{11447}-\u{1145B}\u{1145D}\u{1145F}-\u{11461}\u{11480}-\u{114B2}\u{114B9}\u{114BB}-\u{114BE}\u{114C1}\u{114C4}-\u{114C7}\u{114D0}-\u{114D9}\u{11580}-\u{115B1}\u{115B8}-\u{115BB}\u{115BE}\u{115C1}-\u{115DB}\u{11600}-\u{11632}\u{1163B}\u{1163C}\u{1163E}\u{11641}-\u{11644}\u{11650}-\u{11659}\u{11680}-\u{116AA}\u{116AC}\u{116AE}\u{116AF}\u{116B6}\u{116B8}\u{116B9}\u{116C0}-\u{116C9}\u{11700}-\u{1171A}\u{11720}\u{11721}\u{11726}\u{11730}-\u{11746}\u{11800}-\u{1182E}\u{11838}\u{1183B}\u{118A0}-\u{118F2}\u{118FF}-\u{11906}\u{11909}\u{1190C}-\u{11913}\u{11915}\u{11916}\u{11918}-\u{11935}\u{11937}\u{11938}\u{1193D}\u{1193F}-\u{11942}\u{11944}-\u{11946}\u{11950}-\u{11959}\u{119A0}-\u{119A7}\u{119AA}-\u{119D3}\u{119DC}-\u{119DF}\u{119E1}-\u{119E4}\u{11A00}\u{11A07}\u{11A08}\u{11A0B}-\u{11A32}\u{11A39}\u{11A3A}\u{11A3F}-\u{11A46}\u{11A50}\u{11A57}\u{11A58}\u{11A5C}-\u{11A89}\u{11A97}\u{11A9A}-\u{11AA2}\u{11AB0}-\u{11AF8}\u{11B00}-\u{11B09}\u{11C00}-\u{11C08}\u{11C0A}-\u{11C2F}\u{11C3E}-\u{11C45}\u{11C50}-\u{11C6C}\u{11C70}-\u{11C8F}\u{11CA9}\u{11CB1}\u{11CB4}\u{11D00}-\u{11D06}\u{11D08}\u{11D09}\u{11D0B}-\u{11D30}\u{11D46}\u{11D50}-\u{11D59}\u{11D60}-\u{11D65}\u{11D67}\u{11D68}\u{11D6A}-\u{11D8E}\u{11D93}\u{11D94}\u{11D96}\u{11D98}\u{11DA0}-\u{11DA9}\u{11EE0}-\u{11EF2}\u{11EF5}-\u{11EF8}\u{11F02}-\u{11F10}\u{11F12}-\u{11F35}\u{11F3E}\u{11F3F}\u{11F41}\u{11F43}-\u{11F59}\u{11FB0}\u{11FC0}-\u{11FD4}\u{11FFF}-\u{12399}\u{12400}-\u{1246E}\u{12470}-\u{12474}\u{12480}-\u{12543}\u{12F90}-\u{12FF2}\u{13000}-\u{1343F}\u{13441}-\u{13446}\u{14400}-\u{14646}\u{16800}-\u{16A38}\u{16A40}-\u{16A5E}\u{16A60}-\u{16A69}\u{16A6E}-\u{16ABE}\u{16AC0}-\u{16AC9}\u{16AD0}-\u{16AED}\u{16AF5}\u{16B00}-\u{16B2F}\u{16B37}-\u{16B45}\u{16B50}-\u{16B59}\u{16B5B}-\u{16B61}\u{16B63}-\u{16B77}\u{16B7D}-\u{16B8F}\u{16E40}-\u{16E9A}\u{16F00}-\u{16F4A}\u{16F50}-\u{16F87}\u{16F93}-\u{16F9F}\u{16FE0}\u{16FE1}\u{16FE3}\u{16FF0}\u{16FF1}\u{17000}-\u{187F7}\u{18800}-\u{18CD5}\u{18D00}-\u{18D08}\u{1AFF0}-\u{1AFF3}\u{1AFF5}-\u{1AFFB}\u{1AFFD}\u{1AFFE}\u{1B000}-\u{1B122}\u{1B132}\u{1B150}-\u{1B152}\u{1B155}\u{1B164}-\u{1B167}\u{1B170}-\u{1B2FB}\u{1BC00}-\u{1BC6A}\u{1BC70}-\u{1BC7C}\u{1BC80}-\u{1BC88}\u{1BC90}-\u{1BC99}\u{1BC9C}\u{1BC9F}\u{1CF50}-\u{1CFC3}\u{1D000}-\u{1D0F5}\u{1D100}-\u{1D126}\u{1D129}-\u{1D166}\u{1D16A}-\u{1D172}\u{1D183}\u{1D184}\u{1D18C}-\u{1D1A9}\u{1D1AE}-\u{1D1E8}\u{1D2C0}-\u{1D2D3}\u{1D2E0}-\u{1D2F3}\u{1D360}-\u{1D378}\u{1D400}-\u{1D454}\u{1D456}-\u{1D49C}\u{1D49E}\u{1D49F}\u{1D4A2}\u{1D4A5}\u{1D4A6}\u{1D4A9}-\u{1D4AC}\u{1D4AE}-\u{1D4B9}\u{1D4BB}\u{1D4BD}-\u{1D4C3}\u{1D4C5}-\u{1D505}\u{1D507}-\u{1D50A}\u{1D50D}-\u{1D514}\u{1D516}-\u{1D51C}\u{1D51E}-\u{1D539}\u{1D53B}-\u{1D53E}\u{1D540}-\u{1D544}\u{1D546}\u{1D54A}-\u{1D550}\u{1D552}-\u{1D6A5}\u{1D6A8}-\u{1D6DA}\u{1D6DC}-\u{1D714}\u{1D716}-\u{1D74E}\u{1D750}-\u{1D788}\u{1D78A}-\u{1D7C2}\u{1D7C4}-\u{1D7CB}\u{1D7CE}-\u{1D9FF}\u{1DA37}-\u{1DA3A}\u{1DA6D}-\u{1DA74}\u{1DA76}-\u{1DA83}\u{1DA85}-\u{1DA8B}\u{1DF00}-\u{1DF1E}\u{1DF25}-\u{1DF2A}\u{1E030}-\u{1E06D}\u{1E100}-\u{1E12C}\u{1E137}-\u{1E13D}\u{1E140}-\u{1E149}\u{1E14E}\u{1E14F}\u{1E290}-\u{1E2AD}\u{1E2C0}-\u{1E2EB}\u{1E2F0}-\u{1E2F9}\u{1E4D0}-\u{1E4EB}\u{1E4F0}-\u{1E4F9}\u{1E7E0}-\u{1E7E6}\u{1E7E8}-\u{1E7EB}\u{1E7ED}\u{1E7EE}\u{1E7F0}-\u{1E7FE}\u{1F100}-\u{1F10A}\u{1F110}-\u{1F12E}\u{1F130}-\u{1F169}\u{1F170}-\u{1F1AC}\u{1F1E6}-\u{1F202}\u{1F210}-\u{1F23B}\u{1F240}-\u{1F248}\u{1F250}\u{1F251}\u{1FBF0}-\u{1FBF9}\u{20000}-\u{2A6DF}\u{2A700}-\u{2B739}\u{2B740}-\u{2B81D}\u{2B820}-\u{2CEA1}\u{2CEB0}-\u{2EBE0}\u{2EBF0}-\u{2EE5D}\u{2F800}-\u{2FA1D}\u{30000}-\u{3134A}\u{31350}-\u{323AF}\u{F0000}-\u{FFFFD}\u{100000}-\u{10FFFD}][\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2\u09E3\u09FE\u0A01\u0A02\u0A3C\u0A41\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7\u0AC8\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B55\u0B56\u0B62\u0B63\u0B82\u0BC0\u0BCD\u0C00\u0C04\u0C3C\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81\u0CBC\u0CCC\u0CCD\u0CE2\u0CE3\u0D00\u0D01\u0D3B\u0D3C\u0D41-\u0D44\u0D4D\u0D62\u0D63\u0D81\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0F18\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039\u103A\u103D\u103E\u1058\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732\u1733\u1752\u1753\u1772\u1773\u17B4\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u180F\u1885\u1886\u18A9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193B\u1A17\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ACE\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80\u1B81\u1BA2-\u1BA5\u1BA8\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8\u1CF9\u1DC0-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302D\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA825\uA826\uA82C\uA8C4\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9BD\uA9E5\uAA29-\uAA2E\uAA31\uAA32\uAA35\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEC\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\u{101FD}\u{102E0}\u{10376}-\u{1037A}\u{10A01}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A0F}\u{10A38}-\u{10A3A}\u{10A3F}\u{10AE5}\u{10AE6}\u{10D24}-\u{10D27}\u{10EAB}\u{10EAC}\u{10EFD}-\u{10EFF}\u{10F46}-\u{10F50}\u{10F82}-\u{10F85}\u{11001}\u{11038}-\u{11046}\u{11070}\u{11073}\u{11074}\u{1107F}-\u{11081}\u{110B3}-\u{110B6}\u{110B9}\u{110BA}\u{110C2}\u{11100}-\u{11102}\u{11127}-\u{1112B}\u{1112D}-\u{11134}\u{11173}\u{11180}\u{11181}\u{111B6}-\u{111BE}\u{111C9}-\u{111CC}\u{111CF}\u{1122F}-\u{11231}\u{11234}\u{11236}\u{11237}\u{1123E}\u{11241}\u{112DF}\u{112E3}-\u{112EA}\u{11300}\u{11301}\u{1133B}\u{1133C}\u{11340}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11438}-\u{1143F}\u{11442}-\u{11444}\u{11446}\u{1145E}\u{114B3}-\u{114B8}\u{114BA}\u{114BF}\u{114C0}\u{114C2}\u{114C3}\u{115B2}-\u{115B5}\u{115BC}\u{115BD}\u{115BF}\u{115C0}\u{115DC}\u{115DD}\u{11633}-\u{1163A}\u{1163D}\u{1163F}\u{11640}\u{116AB}\u{116AD}\u{116B0}-\u{116B5}\u{116B7}\u{1171D}-\u{1171F}\u{11722}-\u{11725}\u{11727}-\u{1172B}\u{1182F}-\u{11837}\u{11839}\u{1183A}\u{1193B}\u{1193C}\u{1193E}\u{11943}\u{119D4}-\u{119D7}\u{119DA}\u{119DB}\u{119E0}\u{11A01}-\u{11A06}\u{11A09}\u{11A0A}\u{11A33}-\u{11A38}\u{11A3B}-\u{11A3E}\u{11A47}\u{11A51}-\u{11A56}\u{11A59}-\u{11A5B}\u{11A8A}-\u{11A96}\u{11A98}\u{11A99}\u{11C30}-\u{11C36}\u{11C38}-\u{11C3D}\u{11C92}-\u{11CA7}\u{11CAA}-\u{11CB0}\u{11CB2}\u{11CB3}\u{11CB5}\u{11CB6}\u{11D31}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D45}\u{11D47}\u{11D90}\u{11D91}\u{11D95}\u{11D97}\u{11EF3}\u{11EF4}\u{11F00}\u{11F01}\u{11F36}-\u{11F3A}\u{11F40}\u{11F42}\u{13440}\u{13447}-\u{13455}\u{16AF0}-\u{16AF4}\u{16B30}-\u{16B36}\u{16F4F}\u{16F8F}-\u{16F92}\u{16FE4}\u{1BC9D}\u{1BC9E}\u{1CF00}-\u{1CF2D}\u{1CF30}-\u{1CF46}\u{1D167}-\u{1D169}\u{1D17B}-\u{1D182}\u{1D185}-\u{1D18B}\u{1D1AA}-\u{1D1AD}\u{1D242}-\u{1D244}\u{1DA00}-\u{1DA36}\u{1DA3B}-\u{1DA6C}\u{1DA75}\u{1DA84}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E08F}\u{1E130}-\u{1E136}\u{1E2AE}\u{1E2EC}-\u{1E2EF}\u{1E4EC}-\u{1E4EF}\u{1E8D0}-\u{1E8D6}\u{1E944}-\u{1E94A}\u{E0100}-\u{E01EF}]*$/u;Wt.exports={combiningMarks:Pt,combiningClassVirama:en,validZWNJ:tn,bidiDomain:nn,bidiS1LTR:an,bidiS1RTL:rn,bidiS2:In,bidiS3:sn,bidiS4EN:on,bidiS4AN:cn,bidiS5:dn,bidiS6:un}},9156:Wt=>{"use strict";Wt.exports.STATUS_MAPPING={mapped:1,valid:2,disallowed:3,disallowed_STD3_valid:4,disallowed_STD3_mapped:5,deviation:6,ignored:7}},20770:(Wt,Pt,en)=>{Wt.exports=en(20218)},20218:(Wt,Pt,en)=>{"use strict";var tn=en(69278);var nn=en(64756);var an=en(58611);var rn=en(65692);var In=en(24434);var sn=en(42613);var on=en(39023);Pt.httpOverHttp=httpOverHttp;Pt.httpsOverHttp=httpsOverHttp;Pt.httpOverHttps=httpOverHttps;Pt.httpsOverHttps=httpsOverHttps;function httpOverHttp(Wt){var Pt=new TunnelingAgent(Wt);Pt.request=an.request;return Pt}function httpsOverHttp(Wt){var Pt=new TunnelingAgent(Wt);Pt.request=an.request;Pt.createSocket=createSecureSocket;Pt.defaultPort=443;return Pt}function httpOverHttps(Wt){var Pt=new TunnelingAgent(Wt);Pt.request=rn.request;return Pt}function httpsOverHttps(Wt){var Pt=new TunnelingAgent(Wt);Pt.request=rn.request;Pt.createSocket=createSecureSocket;Pt.defaultPort=443;return Pt}function TunnelingAgent(Wt){var Pt=this;Pt.options=Wt||{};Pt.proxyOptions=Pt.options.proxy||{};Pt.maxSockets=Pt.options.maxSockets||an.Agent.defaultMaxSockets;Pt.requests=[];Pt.sockets=[];Pt.on("free",(function onFree(Wt,en,tn,nn){var an=toOptions(en,tn,nn);for(var rn=0,In=Pt.requests.length;rn=this.maxSockets){nn.requests.push(an);return}nn.createSocket(an,(function(Pt){Pt.on("free",onFree);Pt.on("close",onCloseOrRemove);Pt.on("agentRemove",onCloseOrRemove);Wt.onSocket(Pt);function onFree(){nn.emit("free",Pt,an)}function onCloseOrRemove(Wt){nn.removeSocket(Pt);Pt.removeListener("free",onFree);Pt.removeListener("close",onCloseOrRemove);Pt.removeListener("agentRemove",onCloseOrRemove)}}))};TunnelingAgent.prototype.createSocket=function createSocket(Wt,Pt){var en=this;var tn={};en.sockets.push(tn);var nn=mergeOptions({},en.proxyOptions,{method:"CONNECT",path:Wt.host+":"+Wt.port,agent:false,headers:{host:Wt.host+":"+Wt.port}});if(Wt.localAddress){nn.localAddress=Wt.localAddress}if(nn.proxyAuth){nn.headers=nn.headers||{};nn.headers["Proxy-Authorization"]="Basic "+new Buffer(nn.proxyAuth).toString("base64")}cn("making CONNECT request");var an=en.request(nn);an.useChunkedEncodingByDefault=false;an.once("response",onResponse);an.once("upgrade",onUpgrade);an.once("connect",onConnect);an.once("error",onError);an.end();function onResponse(Wt){Wt.upgrade=true}function onUpgrade(Wt,Pt,en){process.nextTick((function(){onConnect(Wt,Pt,en)}))}function onConnect(nn,rn,In){an.removeAllListeners();rn.removeAllListeners();if(nn.statusCode!==200){cn("tunneling socket could not be established, statusCode=%d",nn.statusCode);rn.destroy();var sn=new Error("tunneling socket could not be established, "+"statusCode="+nn.statusCode);sn.code="ECONNRESET";Wt.request.emit("error",sn);en.removeSocket(tn);return}if(In.length>0){cn("got illegal response body from proxy");rn.destroy();var sn=new Error("got illegal response body from proxy");sn.code="ECONNRESET";Wt.request.emit("error",sn);en.removeSocket(tn);return}cn("tunneling connection has established");en.sockets[en.sockets.indexOf(tn)]=rn;return Pt(rn)}function onError(Pt){an.removeAllListeners();cn("tunneling socket could not be established, cause=%s\n",Pt.message,Pt.stack);var nn=new Error("tunneling socket could not be established, "+"cause="+Pt.message);nn.code="ECONNRESET";Wt.request.emit("error",nn);en.removeSocket(tn)}};TunnelingAgent.prototype.removeSocket=function removeSocket(Wt){var Pt=this.sockets.indexOf(Wt);if(Pt===-1){return}this.sockets.splice(Pt,1);var en=this.requests.shift();if(en){this.createSocket(en,(function(Wt){en.request.onSocket(Wt)}))}};function createSecureSocket(Wt,Pt){var en=this;TunnelingAgent.prototype.createSocket.call(en,Wt,(function(tn){var an=Wt.request.getHeader("host");var rn=mergeOptions({},en.options,{socket:tn,servername:an?an.replace(/:.*$/,""):Wt.host});var In=nn.connect(0,rn);en.sockets[en.sockets.indexOf(tn)]=In;Pt(In)}))}function toOptions(Wt,Pt,en){if(typeof Wt==="string"){return{host:Wt,port:Pt,localAddress:en}}return Wt}function mergeOptions(Wt){for(var Pt=1,en=arguments.length;Pt{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.AbstractStandardValidator=void 0;const tn=en(29293);class AbstractStandardValidator extends tn.AbstractValidator{constructor(Wt){super(Wt)}assertAndClean(Wt,Pt){this.assert(Wt,Pt);this.cleanValue(this.schema,Wt)}assertAndCleanCopy(Wt,Pt){this.assert(Wt,Pt);return this.cleanCopyOfValue(this.schema,Wt)}validateAndClean(Wt,Pt){this.validate(Wt,Pt);this.cleanValue(this.schema,Wt)}validateAndCleanCopy(Wt,Pt){this.validate(Wt,Pt);return this.cleanCopyOfValue(this.schema,Wt)}}Pt.AbstractStandardValidator=AbstractStandardValidator},73422:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.AbstractTypedUnionValidator=Pt.DEFAULT_DISCRIMINANT_KEY=void 0;const tn=en(29293);Pt.DEFAULT_DISCRIMINANT_KEY="kind";class AbstractTypedUnionValidator extends tn.AbstractValidator{constructor(Wt){super(Wt)}assert(Wt,Pt){this.assertReturningSchema(Wt,Pt)}assertAndClean(Wt,Pt){const en=this.assertReturningSchema(Wt,Pt);this.cleanValue(en,Wt)}assertAndCleanCopy(Wt,Pt){const en=this.assertReturningSchema(Wt,Pt);return this.cleanCopyOfValue(en,Wt)}validate(Wt,Pt){this.validateReturningSchema(Wt,Pt)}validateAndClean(Wt,Pt){const en=this.validateReturningSchema(Wt,Pt);this.cleanValue(en,Wt)}validateAndCleanCopy(Wt,Pt){const en=this.validateReturningSchema(Wt,Pt);return this.cleanCopyOfValue(en,Wt)}toValueKeyDereference(Wt){return/^[a-zA-Z_$][a-zA-Z_$0-9]*$/.test(Wt)?`value.${Wt}`:`value['${Wt.replace(/'/g,"\\'")}']`}}Pt.AbstractTypedUnionValidator=AbstractTypedUnionValidator},29293:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.AbstractValidator=void 0;const tn=en(57472);const nn=en(17085);class AbstractValidator{constructor(Wt){this.schema=Wt}testReturningErrors(Wt){return this.test(Wt)?null:this.errors(Wt)}testReturningFirstError(Wt){const Pt=this.testReturningErrors(Wt);if(Pt===null){return null}const en=Pt[Symbol.iterator]().next();return en.done?null:en.value}firstError(Wt){const Pt=this.errors(Wt)[Symbol.iterator]();const en=Pt.next();return en.done?null:en.value}cleanCopyOfValue(Wt,Pt){if(Wt.type==="object"&&typeof Pt==="object"){const en={};Object.keys(Wt.properties).forEach((Wt=>{en[Wt]=Pt[Wt]}));return en}return Pt}cleanValue(Wt,Pt){if(Wt.type==="object"&&typeof Pt==="object"){const en=Object.keys(Wt.properties);Object.getOwnPropertyNames(Pt).forEach((Wt=>{if(!en.includes(Wt)){delete Pt[Wt]}}))}}uncompiledAssert(Wt,Pt,en){if(!tn.Value.Check(Wt,Pt)){(0,nn.throwInvalidAssert)(en,tn.Value.Errors(Wt,Pt).First())}}uncompiledValidate(Wt,Pt,en){if(!tn.Value.Check(Wt,Pt)){(0,nn.throwInvalidValidate)(en,tn.Value.Errors(Wt,Pt))}}}Pt.AbstractValidator=AbstractValidator},26498:function(Wt,Pt,en){"use strict";var tn=this&&this.__classPrivateFieldSet||function(Wt,Pt,en,tn,nn){if(tn==="m")throw new TypeError("Private method is not writable");if(tn==="a"&&!nn)throw new TypeError("Private accessor was defined without a setter");if(typeof Pt==="function"?Wt!==Pt||!nn:!Pt.has(Wt))throw new TypeError("Cannot write private member to an object whose class did not declare it");return tn==="a"?nn.call(Wt,en):nn?nn.value=en:Pt.set(Wt,en),en};var nn=this&&this.__classPrivateFieldGet||function(Wt,Pt,en,tn){if(en==="a"&&!tn)throw new TypeError("Private accessor was defined without a getter");if(typeof Pt==="function"?Wt!==Pt||!tn:!Pt.has(Wt))throw new TypeError("Cannot read private member from an object whose class did not declare it");return en==="m"?tn:en==="a"?tn.call(Wt):tn?tn.value:Pt.get(Wt)};var an,rn;Object.defineProperty(Pt,"__esModule",{value:true});Pt.CompilingDiscriminatedUnionValidator=void 0;const In=en(73422);const sn=en(893);class CompilingDiscriminatedUnionValidator extends sn.AbstractCompilingTypedUnionValidator{constructor(Wt){var Pt;super(Wt);an.set(this,void 0);rn.set(this,void 0);tn(this,an,(Pt=this.schema.discriminantKey)!==null&&Pt!==void 0?Pt:In.DEFAULT_DISCRIMINANT_KEY,"f")}compiledFindSchemaMemberIndex(Wt){if(nn(this,rn,"f")===undefined){const Wt=[`if (typeof value !== 'object' || value === null || Array.isArray(value)) return null;\n switch (${this.toValueKeyDereference(nn(this,an,"f"))}) {\n`];for(let Pt=0;Pt{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TypeIdentifyingKeyIndex=Pt.MESSAGE_MEMBERS_MISSING_KEY=Pt.MESSAGE_MULTIPLE_MEMBERS_WITH_SAME_KEY=Pt.MESSAGE_MEMBER_WITH_MULTIPLE_KEYS=Pt.MESSAGE_OPTIONAL_TYPE_ID_KEY=void 0;const tn=en(92018);Pt.MESSAGE_OPTIONAL_TYPE_ID_KEY="Type identifying key cannot be optional";Pt.MESSAGE_MEMBER_WITH_MULTIPLE_KEYS="Union has member with multiple identifying keys";Pt.MESSAGE_MULTIPLE_MEMBERS_WITH_SAME_KEY="Union has multiple members with same identifying key";Pt.MESSAGE_MEMBERS_MISSING_KEY="Union has members missing identifying keys";class TypeIdentifyingKeyIndex{constructor(Wt){this.schema=Wt}cacheKeys(){const Wt=this.schema.anyOf.length;const en=new Set;this.keyByMemberIndex=new Array(Wt);for(let nn=0;nn{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.TypeIdentifyingKey=void 0;function TypeIdentifyingKey(Wt){return Object.assign(Object.assign({},Wt),{typeIdentifyingKey:true})}Pt.TypeIdentifyingKey=TypeIdentifyingKey},80619:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(29293),Pt);nn(en(58453),Pt);nn(en(73422),Pt);nn(en(68589),Pt);nn(en(29539),Pt);nn(en(96388),Pt);nn(en(55776),Pt)},17085:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.throwInvalidValidate=Pt.throwInvalidAssert=Pt.createUnionTypeErrorIterable=Pt.createUnionTypeError=Pt.createErrorsIterable=Pt.adjustErrorMessage=Pt.DEFAULT_UNKNOWN_TYPE_MESSAGE=Pt.DEFAULT_OVERALL_MESSAGE=void 0;const tn=en(92018);const nn=en(4672);const an=en(55776);Pt.DEFAULT_OVERALL_MESSAGE="Invalid value";Pt.DEFAULT_UNKNOWN_TYPE_MESSAGE="Object type not recognized";const rn="Expected required property";function adjustErrorMessage(Wt){if(Wt.schema.errorMessage!==undefined){Wt.message=Wt.schema.errorMessage}return Wt}Pt.adjustErrorMessage=adjustErrorMessage;function createErrorsIterable(Wt){return{[Symbol.iterator]:function*(){const Pt=Wt[Symbol.iterator]();let en=Pt.next();let nn="???";while(en.value!==undefined){const Wt=en.value;const an=Wt.message;if(Wt.path!==nn){adjustErrorMessage(Wt);if(Wt.message!=an){nn=Wt.path;yield Wt}else if(Wt.message!=rn||["Any","Unknown"].includes(Wt.schema[tn.Kind])){yield Wt}}en=Pt.next()}}}}Pt.createErrorsIterable=createErrorsIterable;function createUnionTypeError(Wt,en){var tn;return{type:nn.ValueErrorType.Union,path:"",schema:Wt,value:en,message:(tn=Wt.errorMessage)!==null&&tn!==void 0?tn:Pt.DEFAULT_UNKNOWN_TYPE_MESSAGE}}Pt.createUnionTypeError=createUnionTypeError;function createUnionTypeErrorIterable(Wt){return{[Symbol.iterator]:function*(){yield Wt}}}Pt.createUnionTypeErrorIterable=createUnionTypeErrorIterable;function throwInvalidAssert(Wt,en){adjustErrorMessage(en);throw new an.ValidationException(Wt===undefined?Pt.DEFAULT_OVERALL_MESSAGE:Wt.replace("{error}",an.ValidationException.errorToString(en)),[en])}Pt.throwInvalidAssert=throwInvalidAssert;function throwInvalidValidate(Wt,en){throw new an.ValidationException(Wt!==null&&Wt!==void 0?Wt:Pt.DEFAULT_OVERALL_MESSAGE,en instanceof nn.ValueErrorIterator?[...createErrorsIterable(en)]:[en])}Pt.throwInvalidValidate=throwInvalidValidate},55776:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ValidationException=void 0;class ValidationException{constructor(Wt,Pt=[]){this.message=Wt;this.details=Pt}toString(){let Wt=this.message;if(this.details.length>0){if(!Wt.endsWith(":")){Wt+=":"}for(const Pt of this.details){Wt+="\n * "+ValidationException.errorToString(Pt)}}return Wt}static errorToString(Wt){return Wt.path!=""?`${Wt.path.substring(1)} - ${Wt.message}`:Wt.message}}Pt.ValidationException=ValidationException},3470:function(Wt,Pt,en){"use strict";var tn=this&&this.__classPrivateFieldGet||function(Wt,Pt,en,tn){if(en==="a"&&!tn)throw new TypeError("Private accessor was defined without a getter");if(typeof Pt==="function"?Wt!==Pt||!tn:!Pt.has(Wt))throw new TypeError("Cannot read private member from an object whose class did not declare it");return en==="m"?tn:en==="a"?tn.call(Wt):tn?tn.value:Pt.get(Wt)};var nn=this&&this.__classPrivateFieldSet||function(Wt,Pt,en,tn,nn){if(tn==="m")throw new TypeError("Private method is not writable");if(tn==="a"&&!nn)throw new TypeError("Private accessor was defined without a setter");if(typeof Pt==="function"?Wt!==Pt||!nn:!Pt.has(Wt))throw new TypeError("Cannot write private member to an object whose class did not declare it");return tn==="a"?nn.call(Wt,en):nn?nn.value=en:Pt.set(Wt,en),en};var an;Object.defineProperty(Pt,"__esModule",{value:true});Pt.CompilingStandardValidator=void 0;const rn=en(63706);const In=en(58453);const sn=en(17085);class CompilingStandardValidator extends In.AbstractStandardValidator{constructor(Wt){super(Wt);an.set(this,void 0)}test(Wt){const Pt=this.getCompiledType();return Pt.Check(Wt)}assert(Wt,Pt){const en=this.getCompiledType();if(!en.Check(Wt)){(0,sn.throwInvalidAssert)(Pt,en.Errors(Wt).First())}}validate(Wt,Pt){const en=this.getCompiledType();if(!en.Check(Wt)){(0,sn.throwInvalidValidate)(Pt,en.Errors(Wt))}}errors(Wt){const Pt=this.getCompiledType();return(0,sn.createErrorsIterable)(Pt.Errors(Wt))}getCompiledType(){if(tn(this,an,"f")===undefined){nn(this,an,rn.TypeCompiler.Compile(this.schema),"f")}return tn(this,an,"f")}}Pt.CompilingStandardValidator=CompilingStandardValidator;an=new WeakMap},68589:function(Wt,Pt,en){"use strict";var tn=this&&this.__createBinding||(Object.create?function(Wt,Pt,en,tn){if(tn===undefined)tn=en;var nn=Object.getOwnPropertyDescriptor(Pt,en);if(!nn||("get"in nn?!Pt.__esModule:nn.writable||nn.configurable)){nn={enumerable:true,get:function(){return Pt[en]}}}Object.defineProperty(Wt,tn,nn)}:function(Wt,Pt,en,tn){if(tn===undefined)tn=en;Wt[tn]=Pt[en]});var nn=this&&this.__exportStar||function(Wt,Pt){for(var en in Wt)if(en!=="default"&&!Object.prototype.hasOwnProperty.call(Pt,en))tn(Pt,Wt,en)};Object.defineProperty(Pt,"__esModule",{value:true});nn(en(12491),Pt);nn(en(3470),Pt)},12491:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.StandardValidator=void 0;const tn=en(58453);const nn=en(57472);const an=en(17085);class StandardValidator extends tn.AbstractStandardValidator{constructor(Wt){super(Wt)}test(Wt){return nn.Value.Check(this.schema,Wt)}assert(Wt,Pt){this.uncompiledAssert(this.schema,Wt,Pt)}validate(Wt,Pt){this.uncompiledValidate(this.schema,Wt,Pt)}errors(Wt){return(0,an.createErrorsIterable)(nn.Value.Errors(this.schema,Wt))}}Pt.StandardValidator=StandardValidator},46752:(Wt,Pt,en)=>{"use strict";const tn=en(86197);const nn=en(28611);const an=en(68707);const rn=en(35076);const In=en(81093);const sn=en(59965);const on=en(3440);const{InvalidArgumentError:cn}=an;const dn=en(56615);const un=en(59136);const pn=en(47365);const mn=en(47501);const bn=en(94004);const Gn=en(52429);const hn=en(22720);const Zn=en(53573);const{getGlobalDispatcher:An,setGlobalDispatcher:Wn}=en(32581);const Nn=en(78840);const gn=en(48299);const yn=en(64415);let vn;try{en(76982);vn=true}catch{vn=false}Object.assign(nn.prototype,dn);Wt.exports.Dispatcher=nn;Wt.exports.Client=tn;Wt.exports.Pool=rn;Wt.exports.BalancedPool=In;Wt.exports.Agent=sn;Wt.exports.ProxyAgent=hn;Wt.exports.RetryHandler=Zn;Wt.exports.DecoratorHandler=Nn;Wt.exports.RedirectHandler=gn;Wt.exports.createRedirectInterceptor=yn;Wt.exports.buildConnector=un;Wt.exports.errors=an;function makeDispatcher(Wt){return(Pt,en,tn)=>{if(typeof en==="function"){tn=en;en=null}if(!Pt||typeof Pt!=="string"&&typeof Pt!=="object"&&!(Pt instanceof URL)){throw new cn("invalid url")}if(en!=null&&typeof en!=="object"){throw new cn("invalid opts")}if(en&&en.path!=null){if(typeof en.path!=="string"){throw new cn("invalid opts.path")}let Wt=en.path;if(!en.path.startsWith("/")){Wt=`/${Wt}`}Pt=new URL(on.parseOrigin(Pt).origin+Wt)}else{if(!en){en=typeof Pt==="object"?Pt:{}}Pt=on.parseURL(Pt)}const{agent:nn,dispatcher:an=An()}=en;if(nn){throw new cn("unsupported opts.agent. Did you mean opts.client?")}return Wt.call(an,{...en,origin:Pt.origin,path:Pt.search?`${Pt.pathname}${Pt.search}`:Pt.pathname,method:en.method||(en.body?"PUT":"GET")},tn)}}Wt.exports.setGlobalDispatcher=Wn;Wt.exports.getGlobalDispatcher=An;if(on.nodeMajor>16||on.nodeMajor===16&&on.nodeMinor>=8){let Pt=null;Wt.exports.fetch=async function fetch(Wt){if(!Pt){Pt=en(12315).fetch}try{return await Pt(...arguments)}catch(Wt){if(typeof Wt==="object"){Error.captureStackTrace(Wt,this)}throw Wt}};Wt.exports.Headers=en(26349).Headers;Wt.exports.Response=en(48676).Response;Wt.exports.Request=en(25194).Request;Wt.exports.FormData=en(43073).FormData;Wt.exports.File=en(63041).File;Wt.exports.FileReader=en(82160).FileReader;const{setGlobalOrigin:tn,getGlobalOrigin:nn}=en(75628);Wt.exports.setGlobalOrigin=tn;Wt.exports.getGlobalOrigin=nn;const{CacheStorage:an}=en(44738);const{kConstruct:rn}=en(80296);Wt.exports.caches=new an(rn)}if(on.nodeMajor>=16){const{deleteCookie:Pt,getCookies:tn,getSetCookies:nn,setCookie:an}=en(53168);Wt.exports.deleteCookie=Pt;Wt.exports.getCookies=tn;Wt.exports.getSetCookies=nn;Wt.exports.setCookie=an;const{parseMIMEType:rn,serializeAMimeType:In}=en(94322);Wt.exports.parseMIMEType=rn;Wt.exports.serializeAMimeType=In}if(on.nodeMajor>=18&&vn){const{WebSocket:Pt}=en(55171);Wt.exports.WebSocket=Pt}Wt.exports.request=makeDispatcher(dn.request);Wt.exports.stream=makeDispatcher(dn.stream);Wt.exports.pipeline=makeDispatcher(dn.pipeline);Wt.exports.connect=makeDispatcher(dn.connect);Wt.exports.upgrade=makeDispatcher(dn.upgrade);Wt.exports.MockClient=pn;Wt.exports.MockPool=bn;Wt.exports.MockAgent=mn;Wt.exports.mockErrors=Gn},59965:(Wt,Pt,en)=>{"use strict";const{InvalidArgumentError:tn}=en(68707);const{kClients:nn,kRunning:an,kClose:rn,kDestroy:In,kDispatch:sn,kInterceptors:on}=en(36443);const cn=en(50001);const dn=en(35076);const un=en(86197);const pn=en(3440);const mn=en(64415);const{WeakRef:bn,FinalizationRegistry:Gn}=en(13194)();const hn=Symbol("onConnect");const Zn=Symbol("onDisconnect");const An=Symbol("onConnectionError");const Wn=Symbol("maxRedirections");const Nn=Symbol("onDrain");const gn=Symbol("factory");const yn=Symbol("finalizer");const vn=Symbol("options");function defaultFactory(Wt,Pt){return Pt&&Pt.connections===1?new un(Wt,Pt):new dn(Wt,Pt)}class Agent extends cn{constructor({factory:Wt=defaultFactory,maxRedirections:Pt=0,connect:en,...an}={}){super();if(typeof Wt!=="function"){throw new tn("factory must be a function.")}if(en!=null&&typeof en!=="function"&&typeof en!=="object"){throw new tn("connect must be a function or an object")}if(!Number.isInteger(Pt)||Pt<0){throw new tn("maxRedirections must be a positive number")}if(en&&typeof en!=="function"){en={...en}}this[on]=an.interceptors&&an.interceptors.Agent&&Array.isArray(an.interceptors.Agent)?an.interceptors.Agent:[mn({maxRedirections:Pt})];this[vn]={...pn.deepClone(an),connect:en};this[vn].interceptors=an.interceptors?{...an.interceptors}:undefined;this[Wn]=Pt;this[gn]=Wt;this[nn]=new Map;this[yn]=new Gn((Wt=>{const Pt=this[nn].get(Wt);if(Pt!==undefined&&Pt.deref()===undefined){this[nn].delete(Wt)}}));const rn=this;this[Nn]=(Wt,Pt)=>{rn.emit("drain",Wt,[rn,...Pt])};this[hn]=(Wt,Pt)=>{rn.emit("connect",Wt,[rn,...Pt])};this[Zn]=(Wt,Pt,en)=>{rn.emit("disconnect",Wt,[rn,...Pt],en)};this[An]=(Wt,Pt,en)=>{rn.emit("connectionError",Wt,[rn,...Pt],en)}}get[an](){let Wt=0;for(const Pt of this[nn].values()){const en=Pt.deref();if(en){Wt+=en[an]}}return Wt}[sn](Wt,Pt){let en;if(Wt.origin&&(typeof Wt.origin==="string"||Wt.origin instanceof URL)){en=String(Wt.origin)}else{throw new tn("opts.origin must be a non-empty string or URL.")}const an=this[nn].get(en);let rn=an?an.deref():null;if(!rn){rn=this[gn](Wt.origin,this[vn]).on("drain",this[Nn]).on("connect",this[hn]).on("disconnect",this[Zn]).on("connectionError",this[An]);this[nn].set(en,new bn(rn));this[yn].register(rn,en)}return rn.dispatch(Wt,Pt)}async[rn](){const Wt=[];for(const Pt of this[nn].values()){const en=Pt.deref();if(en){Wt.push(en.close())}}await Promise.all(Wt)}async[In](Wt){const Pt=[];for(const en of this[nn].values()){const tn=en.deref();if(tn){Pt.push(tn.destroy(Wt))}}await Promise.all(Pt)}}Wt.exports=Agent},80158:(Wt,Pt,en)=>{const{addAbortListener:tn}=en(3440);const{RequestAbortedError:nn}=en(68707);const an=Symbol("kListener");const rn=Symbol("kSignal");function abort(Wt){if(Wt.abort){Wt.abort()}else{Wt.onError(new nn)}}function addSignal(Wt,Pt){Wt[rn]=null;Wt[an]=null;if(!Pt){return}if(Pt.aborted){abort(Wt);return}Wt[rn]=Pt;Wt[an]=()=>{abort(Wt)};tn(Wt[rn],Wt[an])}function removeSignal(Wt){if(!Wt[rn]){return}if("removeEventListener"in Wt[rn]){Wt[rn].removeEventListener("abort",Wt[an])}else{Wt[rn].removeListener("abort",Wt[an])}Wt[rn]=null;Wt[an]=null}Wt.exports={addSignal:addSignal,removeSignal:removeSignal}},34660:(Wt,Pt,en)=>{"use strict";const{AsyncResource:tn}=en(90290);const{InvalidArgumentError:nn,RequestAbortedError:an,SocketError:rn}=en(68707);const In=en(3440);const{addSignal:sn,removeSignal:on}=en(80158);class ConnectHandler extends tn{constructor(Wt,Pt){if(!Wt||typeof Wt!=="object"){throw new nn("invalid opts")}if(typeof Pt!=="function"){throw new nn("invalid callback")}const{signal:en,opaque:tn,responseHeaders:an}=Wt;if(en&&typeof en.on!=="function"&&typeof en.addEventListener!=="function"){throw new nn("signal must be an EventEmitter or EventTarget")}super("UNDICI_CONNECT");this.opaque=tn||null;this.responseHeaders=an||null;this.callback=Pt;this.abort=null;sn(this,en)}onConnect(Wt,Pt){if(!this.callback){throw new an}this.abort=Wt;this.context=Pt}onHeaders(){throw new rn("bad connect",null)}onUpgrade(Wt,Pt,en){const{callback:tn,opaque:nn,context:an}=this;on(this);this.callback=null;let rn=Pt;if(rn!=null){rn=this.responseHeaders==="raw"?In.parseRawHeaders(Pt):In.parseHeaders(Pt)}this.runInAsyncScope(tn,null,null,{statusCode:Wt,headers:rn,socket:en,opaque:nn,context:an})}onError(Wt){const{callback:Pt,opaque:en}=this;on(this);if(Pt){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(Pt,null,Wt,{opaque:en})}))}}}function connect(Wt,Pt){if(Pt===undefined){return new Promise(((Pt,en)=>{connect.call(this,Wt,((Wt,tn)=>Wt?en(Wt):Pt(tn)))}))}try{const en=new ConnectHandler(Wt,Pt);this.dispatch({...Wt,method:"CONNECT"},en)}catch(en){if(typeof Pt!=="function"){throw en}const tn=Wt&&Wt.opaque;queueMicrotask((()=>Pt(en,{opaque:tn})))}}Wt.exports=connect},76862:(Wt,Pt,en)=>{"use strict";const{Readable:tn,Duplex:nn,PassThrough:an}=en(2203);const{InvalidArgumentError:rn,InvalidReturnValueError:In,RequestAbortedError:sn}=en(68707);const on=en(3440);const{AsyncResource:cn}=en(90290);const{addSignal:dn,removeSignal:un}=en(80158);const pn=en(42613);const mn=Symbol("resume");class PipelineRequest extends tn{constructor(){super({autoDestroy:true});this[mn]=null}_read(){const{[mn]:Wt}=this;if(Wt){this[mn]=null;Wt()}}_destroy(Wt,Pt){this._read();Pt(Wt)}}class PipelineResponse extends tn{constructor(Wt){super({autoDestroy:true});this[mn]=Wt}_read(){this[mn]()}_destroy(Wt,Pt){if(!Wt&&!this._readableState.endEmitted){Wt=new sn}Pt(Wt)}}class PipelineHandler extends cn{constructor(Wt,Pt){if(!Wt||typeof Wt!=="object"){throw new rn("invalid opts")}if(typeof Pt!=="function"){throw new rn("invalid handler")}const{signal:en,method:tn,opaque:an,onInfo:In,responseHeaders:cn}=Wt;if(en&&typeof en.on!=="function"&&typeof en.addEventListener!=="function"){throw new rn("signal must be an EventEmitter or EventTarget")}if(tn==="CONNECT"){throw new rn("invalid method")}if(In&&typeof In!=="function"){throw new rn("invalid onInfo callback")}super("UNDICI_PIPELINE");this.opaque=an||null;this.responseHeaders=cn||null;this.handler=Pt;this.abort=null;this.context=null;this.onInfo=In||null;this.req=(new PipelineRequest).on("error",on.nop);this.ret=new nn({readableObjectMode:Wt.objectMode,autoDestroy:true,read:()=>{const{body:Wt}=this;if(Wt&&Wt.resume){Wt.resume()}},write:(Wt,Pt,en)=>{const{req:tn}=this;if(tn.push(Wt,Pt)||tn._readableState.destroyed){en()}else{tn[mn]=en}},destroy:(Wt,Pt)=>{const{body:en,req:tn,res:nn,ret:an,abort:rn}=this;if(!Wt&&!an._readableState.endEmitted){Wt=new sn}if(rn&&Wt){rn()}on.destroy(en,Wt);on.destroy(tn,Wt);on.destroy(nn,Wt);un(this);Pt(Wt)}}).on("prefinish",(()=>{const{req:Wt}=this;Wt.push(null)}));this.res=null;dn(this,en)}onConnect(Wt,Pt){const{ret:en,res:tn}=this;pn(!tn,"pipeline cannot be retried");if(en.destroyed){throw new sn}this.abort=Wt;this.context=Pt}onHeaders(Wt,Pt,en){const{opaque:tn,handler:nn,context:an}=this;if(Wt<200){if(this.onInfo){const en=this.responseHeaders==="raw"?on.parseRawHeaders(Pt):on.parseHeaders(Pt);this.onInfo({statusCode:Wt,headers:en})}return}this.res=new PipelineResponse(en);let rn;try{this.handler=null;const en=this.responseHeaders==="raw"?on.parseRawHeaders(Pt):on.parseHeaders(Pt);rn=this.runInAsyncScope(nn,null,{statusCode:Wt,headers:en,opaque:tn,body:this.res,context:an})}catch(Wt){this.res.on("error",on.nop);throw Wt}if(!rn||typeof rn.on!=="function"){throw new In("expected Readable")}rn.on("data",(Wt=>{const{ret:Pt,body:en}=this;if(!Pt.push(Wt)&&en.pause){en.pause()}})).on("error",(Wt=>{const{ret:Pt}=this;on.destroy(Pt,Wt)})).on("end",(()=>{const{ret:Wt}=this;Wt.push(null)})).on("close",(()=>{const{ret:Wt}=this;if(!Wt._readableState.ended){on.destroy(Wt,new sn)}}));this.body=rn}onData(Wt){const{res:Pt}=this;return Pt.push(Wt)}onComplete(Wt){const{res:Pt}=this;Pt.push(null)}onError(Wt){const{ret:Pt}=this;this.handler=null;on.destroy(Pt,Wt)}}function pipeline(Wt,Pt){try{const en=new PipelineHandler(Wt,Pt);this.dispatch({...Wt,body:en.req},en);return en.ret}catch(Wt){return(new an).destroy(Wt)}}Wt.exports=pipeline},14043:(Wt,Pt,en)=>{"use strict";const tn=en(49927);const{InvalidArgumentError:nn,RequestAbortedError:an}=en(68707);const rn=en(3440);const{getResolveErrorBodyCallback:In}=en(87655);const{AsyncResource:sn}=en(90290);const{addSignal:on,removeSignal:cn}=en(80158);class RequestHandler extends sn{constructor(Wt,Pt){if(!Wt||typeof Wt!=="object"){throw new nn("invalid opts")}const{signal:en,method:tn,opaque:an,body:In,onInfo:sn,responseHeaders:cn,throwOnError:dn,highWaterMark:un}=Wt;try{if(typeof Pt!=="function"){throw new nn("invalid callback")}if(un&&(typeof un!=="number"||un<0)){throw new nn("invalid highWaterMark")}if(en&&typeof en.on!=="function"&&typeof en.addEventListener!=="function"){throw new nn("signal must be an EventEmitter or EventTarget")}if(tn==="CONNECT"){throw new nn("invalid method")}if(sn&&typeof sn!=="function"){throw new nn("invalid onInfo callback")}super("UNDICI_REQUEST")}catch(Wt){if(rn.isStream(In)){rn.destroy(In.on("error",rn.nop),Wt)}throw Wt}this.responseHeaders=cn||null;this.opaque=an||null;this.callback=Pt;this.res=null;this.abort=null;this.body=In;this.trailers={};this.context=null;this.onInfo=sn||null;this.throwOnError=dn;this.highWaterMark=un;if(rn.isStream(In)){In.on("error",(Wt=>{this.onError(Wt)}))}on(this,en)}onConnect(Wt,Pt){if(!this.callback){throw new an}this.abort=Wt;this.context=Pt}onHeaders(Wt,Pt,en,nn){const{callback:an,opaque:sn,abort:on,context:cn,responseHeaders:dn,highWaterMark:un}=this;const pn=dn==="raw"?rn.parseRawHeaders(Pt):rn.parseHeaders(Pt);if(Wt<200){if(this.onInfo){this.onInfo({statusCode:Wt,headers:pn})}return}const mn=dn==="raw"?rn.parseHeaders(Pt):pn;const bn=mn["content-type"];const Gn=new tn({resume:en,abort:on,contentType:bn,highWaterMark:un});this.callback=null;this.res=Gn;if(an!==null){if(this.throwOnError&&Wt>=400){this.runInAsyncScope(In,null,{callback:an,body:Gn,contentType:bn,statusCode:Wt,statusMessage:nn,headers:pn})}else{this.runInAsyncScope(an,null,null,{statusCode:Wt,headers:pn,trailers:this.trailers,opaque:sn,body:Gn,context:cn})}}}onData(Wt){const{res:Pt}=this;return Pt.push(Wt)}onComplete(Wt){const{res:Pt}=this;cn(this);rn.parseHeaders(Wt,this.trailers);Pt.push(null)}onError(Wt){const{res:Pt,callback:en,body:tn,opaque:nn}=this;cn(this);if(en){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(en,null,Wt,{opaque:nn})}))}if(Pt){this.res=null;queueMicrotask((()=>{rn.destroy(Pt,Wt)}))}if(tn){this.body=null;rn.destroy(tn,Wt)}}}function request(Wt,Pt){if(Pt===undefined){return new Promise(((Pt,en)=>{request.call(this,Wt,((Wt,tn)=>Wt?en(Wt):Pt(tn)))}))}try{this.dispatch(Wt,new RequestHandler(Wt,Pt))}catch(en){if(typeof Pt!=="function"){throw en}const tn=Wt&&Wt.opaque;queueMicrotask((()=>Pt(en,{opaque:tn})))}}Wt.exports=request;Wt.exports.RequestHandler=RequestHandler},3560:(Wt,Pt,en)=>{"use strict";const{finished:tn,PassThrough:nn}=en(2203);const{InvalidArgumentError:an,InvalidReturnValueError:rn,RequestAbortedError:In}=en(68707);const sn=en(3440);const{getResolveErrorBodyCallback:on}=en(87655);const{AsyncResource:cn}=en(90290);const{addSignal:dn,removeSignal:un}=en(80158);class StreamHandler extends cn{constructor(Wt,Pt,en){if(!Wt||typeof Wt!=="object"){throw new an("invalid opts")}const{signal:tn,method:nn,opaque:rn,body:In,onInfo:on,responseHeaders:cn,throwOnError:un}=Wt;try{if(typeof en!=="function"){throw new an("invalid callback")}if(typeof Pt!=="function"){throw new an("invalid factory")}if(tn&&typeof tn.on!=="function"&&typeof tn.addEventListener!=="function"){throw new an("signal must be an EventEmitter or EventTarget")}if(nn==="CONNECT"){throw new an("invalid method")}if(on&&typeof on!=="function"){throw new an("invalid onInfo callback")}super("UNDICI_STREAM")}catch(Wt){if(sn.isStream(In)){sn.destroy(In.on("error",sn.nop),Wt)}throw Wt}this.responseHeaders=cn||null;this.opaque=rn||null;this.factory=Pt;this.callback=en;this.res=null;this.abort=null;this.context=null;this.trailers=null;this.body=In;this.onInfo=on||null;this.throwOnError=un||false;if(sn.isStream(In)){In.on("error",(Wt=>{this.onError(Wt)}))}dn(this,tn)}onConnect(Wt,Pt){if(!this.callback){throw new In}this.abort=Wt;this.context=Pt}onHeaders(Wt,Pt,en,an){const{factory:In,opaque:cn,context:dn,callback:un,responseHeaders:pn}=this;const mn=pn==="raw"?sn.parseRawHeaders(Pt):sn.parseHeaders(Pt);if(Wt<200){if(this.onInfo){this.onInfo({statusCode:Wt,headers:mn})}return}this.factory=null;let bn;if(this.throwOnError&&Wt>=400){const en=pn==="raw"?sn.parseHeaders(Pt):mn;const tn=en["content-type"];bn=new nn;this.callback=null;this.runInAsyncScope(on,null,{callback:un,body:bn,contentType:tn,statusCode:Wt,statusMessage:an,headers:mn})}else{if(In===null){return}bn=this.runInAsyncScope(In,null,{statusCode:Wt,headers:mn,opaque:cn,context:dn});if(!bn||typeof bn.write!=="function"||typeof bn.end!=="function"||typeof bn.on!=="function"){throw new rn("expected Writable")}tn(bn,{readable:false},(Wt=>{const{callback:Pt,res:en,opaque:tn,trailers:nn,abort:an}=this;this.res=null;if(Wt||!en.readable){sn.destroy(en,Wt)}this.callback=null;this.runInAsyncScope(Pt,null,Wt||null,{opaque:tn,trailers:nn});if(Wt){an()}}))}bn.on("drain",en);this.res=bn;const Gn=bn.writableNeedDrain!==undefined?bn.writableNeedDrain:bn._writableState&&bn._writableState.needDrain;return Gn!==true}onData(Wt){const{res:Pt}=this;return Pt?Pt.write(Wt):true}onComplete(Wt){const{res:Pt}=this;un(this);if(!Pt){return}this.trailers=sn.parseHeaders(Wt);Pt.end()}onError(Wt){const{res:Pt,callback:en,opaque:tn,body:nn}=this;un(this);this.factory=null;if(Pt){this.res=null;sn.destroy(Pt,Wt)}else if(en){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(en,null,Wt,{opaque:tn})}))}if(nn){this.body=null;sn.destroy(nn,Wt)}}}function stream(Wt,Pt,en){if(en===undefined){return new Promise(((en,tn)=>{stream.call(this,Wt,Pt,((Wt,Pt)=>Wt?tn(Wt):en(Pt)))}))}try{this.dispatch(Wt,new StreamHandler(Wt,Pt,en))}catch(Pt){if(typeof en!=="function"){throw Pt}const tn=Wt&&Wt.opaque;queueMicrotask((()=>en(Pt,{opaque:tn})))}}Wt.exports=stream},61882:(Wt,Pt,en)=>{"use strict";const{InvalidArgumentError:tn,RequestAbortedError:nn,SocketError:an}=en(68707);const{AsyncResource:rn}=en(90290);const In=en(3440);const{addSignal:sn,removeSignal:on}=en(80158);const cn=en(42613);class UpgradeHandler extends rn{constructor(Wt,Pt){if(!Wt||typeof Wt!=="object"){throw new tn("invalid opts")}if(typeof Pt!=="function"){throw new tn("invalid callback")}const{signal:en,opaque:nn,responseHeaders:an}=Wt;if(en&&typeof en.on!=="function"&&typeof en.addEventListener!=="function"){throw new tn("signal must be an EventEmitter or EventTarget")}super("UNDICI_UPGRADE");this.responseHeaders=an||null;this.opaque=nn||null;this.callback=Pt;this.abort=null;this.context=null;sn(this,en)}onConnect(Wt,Pt){if(!this.callback){throw new nn}this.abort=Wt;this.context=null}onHeaders(){throw new an("bad upgrade",null)}onUpgrade(Wt,Pt,en){const{callback:tn,opaque:nn,context:an}=this;cn.strictEqual(Wt,101);on(this);this.callback=null;const rn=this.responseHeaders==="raw"?In.parseRawHeaders(Pt):In.parseHeaders(Pt);this.runInAsyncScope(tn,null,null,{headers:rn,socket:en,opaque:nn,context:an})}onError(Wt){const{callback:Pt,opaque:en}=this;on(this);if(Pt){this.callback=null;queueMicrotask((()=>{this.runInAsyncScope(Pt,null,Wt,{opaque:en})}))}}}function upgrade(Wt,Pt){if(Pt===undefined){return new Promise(((Pt,en)=>{upgrade.call(this,Wt,((Wt,tn)=>Wt?en(Wt):Pt(tn)))}))}try{const en=new UpgradeHandler(Wt,Pt);this.dispatch({...Wt,method:Wt.method||"GET",upgrade:Wt.protocol||"Websocket"},en)}catch(en){if(typeof Pt!=="function"){throw en}const tn=Wt&&Wt.opaque;queueMicrotask((()=>Pt(en,{opaque:tn})))}}Wt.exports=upgrade},56615:(Wt,Pt,en)=>{"use strict";Wt.exports.request=en(14043);Wt.exports.stream=en(3560);Wt.exports.pipeline=en(76862);Wt.exports.upgrade=en(61882);Wt.exports.connect=en(34660)},49927:(Wt,Pt,en)=>{"use strict";const tn=en(42613);const{Readable:nn}=en(2203);const{RequestAbortedError:an,NotSupportedError:rn,InvalidArgumentError:In}=en(68707);const sn=en(3440);const{ReadableStreamFrom:on,toUSVString:cn}=en(3440);let dn;const un=Symbol("kConsume");const pn=Symbol("kReading");const mn=Symbol("kBody");const bn=Symbol("abort");const Gn=Symbol("kContentType");const noop=()=>{};Wt.exports=class BodyReadable extends nn{constructor({resume:Wt,abort:Pt,contentType:en="",highWaterMark:tn=64*1024}){super({autoDestroy:true,read:Wt,highWaterMark:tn});this._readableState.dataEmitted=false;this[bn]=Pt;this[un]=null;this[mn]=null;this[Gn]=en;this[pn]=false}destroy(Wt){if(this.destroyed){return this}if(!Wt&&!this._readableState.endEmitted){Wt=new an}if(Wt){this[bn]()}return super.destroy(Wt)}emit(Wt,...Pt){if(Wt==="data"){this._readableState.dataEmitted=true}else if(Wt==="error"){this._readableState.errorEmitted=true}return super.emit(Wt,...Pt)}on(Wt,...Pt){if(Wt==="data"||Wt==="readable"){this[pn]=true}return super.on(Wt,...Pt)}addListener(Wt,...Pt){return this.on(Wt,...Pt)}off(Wt,...Pt){const en=super.off(Wt,...Pt);if(Wt==="data"||Wt==="readable"){this[pn]=this.listenerCount("data")>0||this.listenerCount("readable")>0}return en}removeListener(Wt,...Pt){return this.off(Wt,...Pt)}push(Wt){if(this[un]&&Wt!==null&&this.readableLength===0){consumePush(this[un],Wt);return this[pn]?super.push(Wt):true}return super.push(Wt)}async text(){return consume(this,"text")}async json(){return consume(this,"json")}async blob(){return consume(this,"blob")}async arrayBuffer(){return consume(this,"arrayBuffer")}async formData(){throw new rn}get bodyUsed(){return sn.isDisturbed(this)}get body(){if(!this[mn]){this[mn]=on(this);if(this[un]){this[mn].getReader();tn(this[mn].locked)}}return this[mn]}dump(Wt){let Pt=Wt&&Number.isFinite(Wt.limit)?Wt.limit:262144;const en=Wt&&Wt.signal;if(en){try{if(typeof en!=="object"||!("aborted"in en)){throw new In("signal must be an AbortSignal")}sn.throwIfAborted(en)}catch(Wt){return Promise.reject(Wt)}}if(this.closed){return Promise.resolve(null)}return new Promise(((Wt,tn)=>{const nn=en?sn.addAbortListener(en,(()=>{this.destroy()})):noop;this.on("close",(function(){nn();if(en&&en.aborted){tn(en.reason||Object.assign(new Error("The operation was aborted"),{name:"AbortError"}))}else{Wt(null)}})).on("error",noop).on("data",(function(Wt){Pt-=Wt.length;if(Pt<=0){this.destroy()}})).resume()}))}};function isLocked(Wt){return Wt[mn]&&Wt[mn].locked===true||Wt[un]}function isUnusable(Wt){return sn.isDisturbed(Wt)||isLocked(Wt)}async function consume(Wt,Pt){if(isUnusable(Wt)){throw new TypeError("unusable")}tn(!Wt[un]);return new Promise(((en,tn)=>{Wt[un]={type:Pt,stream:Wt,resolve:en,reject:tn,length:0,body:[]};Wt.on("error",(function(Wt){consumeFinish(this[un],Wt)})).on("close",(function(){if(this[un].body!==null){consumeFinish(this[un],new an)}}));process.nextTick(consumeStart,Wt[un])}))}function consumeStart(Wt){if(Wt.body===null){return}const{_readableState:Pt}=Wt.stream;for(const en of Pt.buffer){consumePush(Wt,en)}if(Pt.endEmitted){consumeEnd(this[un])}else{Wt.stream.on("end",(function(){consumeEnd(this[un])}))}Wt.stream.resume();while(Wt.stream.read()!=null){}}function consumeEnd(Wt){const{type:Pt,body:tn,resolve:nn,stream:an,length:rn}=Wt;try{if(Pt==="text"){nn(cn(Buffer.concat(tn)))}else if(Pt==="json"){nn(JSON.parse(Buffer.concat(tn)))}else if(Pt==="arrayBuffer"){const Wt=new Uint8Array(rn);let Pt=0;for(const en of tn){Wt.set(en,Pt);Pt+=en.byteLength}nn(Wt.buffer)}else if(Pt==="blob"){if(!dn){dn=en(20181).Blob}nn(new dn(tn,{type:an[Gn]}))}consumeFinish(Wt)}catch(Wt){an.destroy(Wt)}}function consumePush(Wt,Pt){Wt.length+=Pt.length;Wt.body.push(Pt)}function consumeFinish(Wt,Pt){if(Wt.body===null){return}if(Pt){Wt.reject(Pt)}else{Wt.resolve()}Wt.type=null;Wt.stream=null;Wt.resolve=null;Wt.reject=null;Wt.length=0;Wt.body=null}},87655:(Wt,Pt,en)=>{const tn=en(42613);const{ResponseStatusCodeError:nn}=en(68707);const{toUSVString:an}=en(3440);async function getResolveErrorBodyCallback({callback:Wt,body:Pt,contentType:en,statusCode:rn,statusMessage:In,headers:sn}){tn(Pt);let on=[];let cn=0;for await(const Wt of Pt){on.push(Wt);cn+=Wt.length;if(cn>128*1024){on=null;break}}if(rn===204||!en||!on){process.nextTick(Wt,new nn(`Response status code ${rn}${In?`: ${In}`:""}`,rn,sn));return}try{if(en.startsWith("application/json")){const Pt=JSON.parse(an(Buffer.concat(on)));process.nextTick(Wt,new nn(`Response status code ${rn}${In?`: ${In}`:""}`,rn,sn,Pt));return}if(en.startsWith("text/")){const Pt=an(Buffer.concat(on));process.nextTick(Wt,new nn(`Response status code ${rn}${In?`: ${In}`:""}`,rn,sn,Pt));return}}catch(Wt){}process.nextTick(Wt,new nn(`Response status code ${rn}${In?`: ${In}`:""}`,rn,sn))}Wt.exports={getResolveErrorBodyCallback:getResolveErrorBodyCallback}},81093:(Wt,Pt,en)=>{"use strict";const{BalancedPoolMissingUpstreamError:tn,InvalidArgumentError:nn}=en(68707);const{PoolBase:an,kClients:rn,kNeedDrain:In,kAddClient:sn,kRemoveClient:on,kGetDispatcher:cn}=en(58640);const dn=en(35076);const{kUrl:un,kInterceptors:pn}=en(36443);const{parseOrigin:mn}=en(3440);const bn=Symbol("factory");const Gn=Symbol("options");const hn=Symbol("kGreatestCommonDivisor");const Zn=Symbol("kCurrentWeight");const An=Symbol("kIndex");const Wn=Symbol("kWeight");const Nn=Symbol("kMaxWeightPerServer");const gn=Symbol("kErrorPenalty");function getGreatestCommonDivisor(Wt,Pt){if(Pt===0)return Wt;return getGreatestCommonDivisor(Pt,Wt%Pt)}function defaultFactory(Wt,Pt){return new dn(Wt,Pt)}class BalancedPool extends an{constructor(Wt=[],{factory:Pt=defaultFactory,...en}={}){super();this[Gn]=en;this[An]=-1;this[Zn]=0;this[Nn]=this[Gn].maxWeightPerServer||100;this[gn]=this[Gn].errorPenalty||15;if(!Array.isArray(Wt)){Wt=[Wt]}if(typeof Pt!=="function"){throw new nn("factory must be a function.")}this[pn]=en.interceptors&&en.interceptors.BalancedPool&&Array.isArray(en.interceptors.BalancedPool)?en.interceptors.BalancedPool:[];this[bn]=Pt;for(const Pt of Wt){this.addUpstream(Pt)}this._updateBalancedPoolStats()}addUpstream(Wt){const Pt=mn(Wt).origin;if(this[rn].find((Wt=>Wt[un].origin===Pt&&Wt.closed!==true&&Wt.destroyed!==true))){return this}const en=this[bn](Pt,Object.assign({},this[Gn]));this[sn](en);en.on("connect",(()=>{en[Wn]=Math.min(this[Nn],en[Wn]+this[gn])}));en.on("connectionError",(()=>{en[Wn]=Math.max(1,en[Wn]-this[gn]);this._updateBalancedPoolStats()}));en.on("disconnect",((...Wt)=>{const Pt=Wt[2];if(Pt&&Pt.code==="UND_ERR_SOCKET"){en[Wn]=Math.max(1,en[Wn]-this[gn]);this._updateBalancedPoolStats()}}));for(const Wt of this[rn]){Wt[Wn]=this[Nn]}this._updateBalancedPoolStats();return this}_updateBalancedPoolStats(){this[hn]=this[rn].map((Wt=>Wt[Wn])).reduce(getGreatestCommonDivisor,0)}removeUpstream(Wt){const Pt=mn(Wt).origin;const en=this[rn].find((Wt=>Wt[un].origin===Pt&&Wt.closed!==true&&Wt.destroyed!==true));if(en){this[on](en)}return this}get upstreams(){return this[rn].filter((Wt=>Wt.closed!==true&&Wt.destroyed!==true)).map((Wt=>Wt[un].origin))}[cn](){if(this[rn].length===0){throw new tn}const Wt=this[rn].find((Wt=>!Wt[In]&&Wt.closed!==true&&Wt.destroyed!==true));if(!Wt){return}const Pt=this[rn].map((Wt=>Wt[In])).reduce(((Wt,Pt)=>Wt&&Pt),true);if(Pt){return}let en=0;let nn=this[rn].findIndex((Wt=>!Wt[In]));while(en++this[rn][nn][Wn]&&!Wt[In]){nn=this[An]}if(this[An]===0){this[Zn]=this[Zn]-this[hn];if(this[Zn]<=0){this[Zn]=this[Nn]}}if(Wt[Wn]>=this[Zn]&&!Wt[In]){return Wt}}this[Zn]=this[rn][nn][Wn];this[An]=nn;return this[rn][nn]}}Wt.exports=BalancedPool},50479:(Wt,Pt,en)=>{"use strict";const{kConstruct:tn}=en(80296);const{urlEquals:nn,fieldValues:an}=en(23993);const{kEnumerableProperty:rn,isDisturbed:In}=en(3440);const{kHeadersList:sn}=en(36443);const{webidl:on}=en(74222);const{Response:cn,cloneResponse:dn}=en(48676);const{Request:un}=en(25194);const{kState:pn,kHeaders:mn,kGuard:bn,kRealm:Gn}=en(89710);const{fetching:hn}=en(12315);const{urlIsHttpHttpsScheme:Zn,createDeferredPromise:An,readAllBytes:Wn}=en(15523);const Nn=en(42613);const{getGlobalDispatcher:gn}=en(32581);class Cache{#e;constructor(){if(arguments[0]!==tn){on.illegalConstructor()}this.#e=arguments[1]}async match(Wt,Pt={}){on.brandCheck(this,Cache);on.argumentLengthCheck(arguments,1,{header:"Cache.match"});Wt=on.converters.RequestInfo(Wt);Pt=on.converters.CacheQueryOptions(Pt);const en=await this.matchAll(Wt,Pt);if(en.length===0){return}return en[0]}async matchAll(Wt=undefined,Pt={}){on.brandCheck(this,Cache);if(Wt!==undefined)Wt=on.converters.RequestInfo(Wt);Pt=on.converters.CacheQueryOptions(Pt);let en=null;if(Wt!==undefined){if(Wt instanceof un){en=Wt[pn];if(en.method!=="GET"&&!Pt.ignoreMethod){return[]}}else if(typeof Wt==="string"){en=new un(Wt)[pn]}}const tn=[];if(Wt===undefined){for(const Wt of this.#e){tn.push(Wt[1])}}else{const Wt=this.#t(en,Pt);for(const Pt of Wt){tn.push(Pt[1])}}const nn=[];for(const Wt of tn){const Pt=new cn(Wt.body?.source??null);const en=Pt[pn].body;Pt[pn]=Wt;Pt[pn].body=en;Pt[mn][sn]=Wt.headersList;Pt[mn][bn]="immutable";nn.push(Pt)}return Object.freeze(nn)}async add(Wt){on.brandCheck(this,Cache);on.argumentLengthCheck(arguments,1,{header:"Cache.add"});Wt=on.converters.RequestInfo(Wt);const Pt=[Wt];const en=this.addAll(Pt);return await en}async addAll(Wt){on.brandCheck(this,Cache);on.argumentLengthCheck(arguments,1,{header:"Cache.addAll"});Wt=on.converters["sequence"](Wt);const Pt=[];const en=[];for(const Pt of Wt){if(typeof Pt==="string"){continue}const Wt=Pt[pn];if(!Zn(Wt.url)||Wt.method!=="GET"){throw on.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme when method is not GET."})}}const tn=[];for(const nn of Wt){const Wt=new un(nn)[pn];if(!Zn(Wt.url)){throw on.errors.exception({header:"Cache.addAll",message:"Expected http/s scheme."})}Wt.initiator="fetch";Wt.destination="subresource";en.push(Wt);const rn=An();tn.push(hn({request:Wt,dispatcher:gn(),processResponse(Wt){if(Wt.type==="error"||Wt.status===206||Wt.status<200||Wt.status>299){rn.reject(on.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}))}else if(Wt.headersList.contains("vary")){const Pt=an(Wt.headersList.get("vary"));for(const Wt of Pt){if(Wt==="*"){rn.reject(on.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(const Wt of tn){Wt.abort()}return}}}},processResponseEndOfBody(Wt){if(Wt.aborted){rn.reject(new DOMException("aborted","AbortError"));return}rn.resolve(Wt)}}));Pt.push(rn.promise)}const nn=Promise.all(Pt);const rn=await nn;const In=[];let sn=0;for(const Wt of rn){const Pt={type:"put",request:en[sn],response:Wt};In.push(Pt);sn++}const cn=An();let dn=null;try{this.#n(In)}catch(Wt){dn=Wt}queueMicrotask((()=>{if(dn===null){cn.resolve(undefined)}else{cn.reject(dn)}}));return cn.promise}async put(Wt,Pt){on.brandCheck(this,Cache);on.argumentLengthCheck(arguments,2,{header:"Cache.put"});Wt=on.converters.RequestInfo(Wt);Pt=on.converters.Response(Pt);let en=null;if(Wt instanceof un){en=Wt[pn]}else{en=new un(Wt)[pn]}if(!Zn(en.url)||en.method!=="GET"){throw on.errors.exception({header:"Cache.put",message:"Expected an http/s scheme when method is not GET"})}const tn=Pt[pn];if(tn.status===206){throw on.errors.exception({header:"Cache.put",message:"Got 206 status"})}if(tn.headersList.contains("vary")){const Wt=an(tn.headersList.get("vary"));for(const Pt of Wt){if(Pt==="*"){throw on.errors.exception({header:"Cache.put",message:"Got * vary field value"})}}}if(tn.body&&(In(tn.body.stream)||tn.body.stream.locked)){throw on.errors.exception({header:"Cache.put",message:"Response body is locked or disturbed"})}const nn=dn(tn);const rn=An();if(tn.body!=null){const Wt=tn.body.stream;const Pt=Wt.getReader();Wn(Pt).then(rn.resolve,rn.reject)}else{rn.resolve(undefined)}const sn=[];const cn={type:"put",request:en,response:nn};sn.push(cn);const mn=await rn.promise;if(nn.body!=null){nn.body.source=mn}const bn=An();let Gn=null;try{this.#n(sn)}catch(Wt){Gn=Wt}queueMicrotask((()=>{if(Gn===null){bn.resolve()}else{bn.reject(Gn)}}));return bn.promise}async delete(Wt,Pt={}){on.brandCheck(this,Cache);on.argumentLengthCheck(arguments,1,{header:"Cache.delete"});Wt=on.converters.RequestInfo(Wt);Pt=on.converters.CacheQueryOptions(Pt);let en=null;if(Wt instanceof un){en=Wt[pn];if(en.method!=="GET"&&!Pt.ignoreMethod){return false}}else{Nn(typeof Wt==="string");en=new un(Wt)[pn]}const tn=[];const nn={type:"delete",request:en,options:Pt};tn.push(nn);const an=An();let rn=null;let In;try{In=this.#n(tn)}catch(Wt){rn=Wt}queueMicrotask((()=>{if(rn===null){an.resolve(!!In?.length)}else{an.reject(rn)}}));return an.promise}async keys(Wt=undefined,Pt={}){on.brandCheck(this,Cache);if(Wt!==undefined)Wt=on.converters.RequestInfo(Wt);Pt=on.converters.CacheQueryOptions(Pt);let en=null;if(Wt!==undefined){if(Wt instanceof un){en=Wt[pn];if(en.method!=="GET"&&!Pt.ignoreMethod){return[]}}else if(typeof Wt==="string"){en=new un(Wt)[pn]}}const tn=An();const nn=[];if(Wt===undefined){for(const Wt of this.#e){nn.push(Wt[0])}}else{const Wt=this.#t(en,Pt);for(const Pt of Wt){nn.push(Pt[0])}}queueMicrotask((()=>{const Wt=[];for(const Pt of nn){const en=new un("https://a");en[pn]=Pt;en[mn][sn]=Pt.headersList;en[mn][bn]="immutable";en[Gn]=Pt.client;Wt.push(en)}tn.resolve(Object.freeze(Wt))}));return tn.promise}#n(Wt){const Pt=this.#e;const en=[...Pt];const tn=[];const nn=[];try{for(const en of Wt){if(en.type!=="delete"&&en.type!=="put"){throw on.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'})}if(en.type==="delete"&&en.response!=null){throw on.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"})}if(this.#t(en.request,en.options,tn).length){throw new DOMException("???","InvalidStateError")}let Wt;if(en.type==="delete"){Wt=this.#t(en.request,en.options);if(Wt.length===0){return[]}for(const en of Wt){const Wt=Pt.indexOf(en);Nn(Wt!==-1);Pt.splice(Wt,1)}}else if(en.type==="put"){if(en.response==null){throw on.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"})}const nn=en.request;if(!Zn(nn.url)){throw on.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"})}if(nn.method!=="GET"){throw on.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"})}if(en.options!=null){throw on.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"})}Wt=this.#t(en.request);for(const en of Wt){const Wt=Pt.indexOf(en);Nn(Wt!==-1);Pt.splice(Wt,1)}Pt.push([en.request,en.response]);tn.push([en.request,en.response])}nn.push([en.request,en.response])}return nn}catch(Wt){this.#e.length=0;this.#e=en;throw Wt}}#t(Wt,Pt,en){const tn=[];const nn=en??this.#e;for(const en of nn){const[nn,an]=en;if(this.#l(Wt,nn,an,Pt)){tn.push(en)}}return tn}#l(Wt,Pt,en=null,tn){const rn=new URL(Wt.url);const In=new URL(Pt.url);if(tn?.ignoreSearch){In.search="";rn.search=""}if(!nn(rn,In,true)){return false}if(en==null||tn?.ignoreVary||!en.headersList.contains("vary")){return true}const sn=an(en.headersList.get("vary"));for(const en of sn){if(en==="*"){return false}const tn=Pt.headersList.get(en);const nn=Wt.headersList.get(en);if(tn!==nn){return false}}return true}}Object.defineProperties(Cache.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:true},match:rn,matchAll:rn,add:rn,addAll:rn,put:rn,delete:rn,keys:rn});const yn=[{key:"ignoreSearch",converter:on.converters.boolean,defaultValue:false},{key:"ignoreMethod",converter:on.converters.boolean,defaultValue:false},{key:"ignoreVary",converter:on.converters.boolean,defaultValue:false}];on.converters.CacheQueryOptions=on.dictionaryConverter(yn);on.converters.MultiCacheQueryOptions=on.dictionaryConverter([...yn,{key:"cacheName",converter:on.converters.DOMString}]);on.converters.Response=on.interfaceConverter(cn);on.converters["sequence"]=on.sequenceConverter(on.converters.RequestInfo);Wt.exports={Cache:Cache}},44738:(Wt,Pt,en)=>{"use strict";const{kConstruct:tn}=en(80296);const{Cache:nn}=en(50479);const{webidl:an}=en(74222);const{kEnumerableProperty:rn}=en(3440);class CacheStorage{#a=new Map;constructor(){if(arguments[0]!==tn){an.illegalConstructor()}}async match(Wt,Pt={}){an.brandCheck(this,CacheStorage);an.argumentLengthCheck(arguments,1,{header:"CacheStorage.match"});Wt=an.converters.RequestInfo(Wt);Pt=an.converters.MultiCacheQueryOptions(Pt);if(Pt.cacheName!=null){if(this.#a.has(Pt.cacheName)){const en=this.#a.get(Pt.cacheName);const an=new nn(tn,en);return await an.match(Wt,Pt)}}else{for(const en of this.#a.values()){const an=new nn(tn,en);const rn=await an.match(Wt,Pt);if(rn!==undefined){return rn}}}}async has(Wt){an.brandCheck(this,CacheStorage);an.argumentLengthCheck(arguments,1,{header:"CacheStorage.has"});Wt=an.converters.DOMString(Wt);return this.#a.has(Wt)}async open(Wt){an.brandCheck(this,CacheStorage);an.argumentLengthCheck(arguments,1,{header:"CacheStorage.open"});Wt=an.converters.DOMString(Wt);if(this.#a.has(Wt)){const Pt=this.#a.get(Wt);return new nn(tn,Pt)}const Pt=[];this.#a.set(Wt,Pt);return new nn(tn,Pt)}async delete(Wt){an.brandCheck(this,CacheStorage);an.argumentLengthCheck(arguments,1,{header:"CacheStorage.delete"});Wt=an.converters.DOMString(Wt);return this.#a.delete(Wt)}async keys(){an.brandCheck(this,CacheStorage);const Wt=this.#a.keys();return[...Wt]}}Object.defineProperties(CacheStorage.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:true},match:rn,has:rn,open:rn,delete:rn,keys:rn});Wt.exports={CacheStorage:CacheStorage}},80296:(Wt,Pt,en)=>{"use strict";Wt.exports={kConstruct:en(36443).kConstruct}},23993:(Wt,Pt,en)=>{"use strict";const tn=en(42613);const{URLSerializer:nn}=en(94322);const{isValidHeaderName:an}=en(15523);function urlEquals(Wt,Pt,en=false){const tn=nn(Wt,en);const an=nn(Pt,en);return tn===an}function fieldValues(Wt){tn(Wt!==null);const Pt=[];for(let en of Wt.split(",")){en=en.trim();if(!en.length){continue}else if(!an(en)){continue}Pt.push(en)}return Pt}Wt.exports={urlEquals:urlEquals,fieldValues:fieldValues}},86197:(Wt,Pt,en)=>{"use strict";const tn=en(42613);const nn=en(69278);const an=en(58611);const{pipeline:rn}=en(2203);const In=en(3440);const sn=en(28804);const on=en(44655);const cn=en(50001);const{RequestContentLengthMismatchError:dn,ResponseContentLengthMismatchError:un,InvalidArgumentError:pn,RequestAbortedError:mn,HeadersTimeoutError:bn,HeadersOverflowError:Gn,SocketError:hn,InformationalError:Zn,BodyTimeoutError:An,HTTPParserError:Wn,ResponseExceededMaxSizeError:Nn,ClientDestroyedError:gn}=en(68707);const yn=en(59136);const{kUrl:vn,kReset:Yn,kServerName:En,kClient:Vn,kBusy:Rn,kParser:wn,kConnect:Fn,kBlocking:Qn,kResuming:fn,kRunning:Hn,kPending:Cn,kSize:Xn,kWriting:kn,kQueue:Jn,kConnected:Ln,kConnecting:Bn,kNeedDrain:xn,kNoRef:On,kKeepAliveDefaultTimeout:Tn,kHostHeader:Un,kPendingIdx:Mn,kRunningIdx:zn,kError:Sn,kPipelining:jn,kSocket:Dn,kKeepAliveTimeoutValue:_n,kMaxHeadersSize:Kn,kKeepAliveMaxTimeout:Pn,kKeepAliveTimeoutThreshold:qn,kHeadersTimeout:$n,kBodyTimeout:el,kStrictContentLength:tl,kConnector:nl,kMaxRedirections:ll,kMaxRequests:al,kCounter:rl,kClose:Il,kDestroy:sl,kDispatch:ol,kInterceptors:cl,kLocalAddress:il,kMaxResponseSize:dl,kHTTPConnVersion:ul,kHost:pl,kHTTP2Session:ml,kHTTP2SessionState:bl,kHTTP2BuildRequest:Gl,kHTTP2CopyHeaders:hl,kHTTP1BuildRequest:Zl}=en(36443);let Al;try{Al=en(85675)}catch{Al={constants:{}}}const{constants:{HTTP2_HEADER_AUTHORITY:Wl,HTTP2_HEADER_METHOD:Nl,HTTP2_HEADER_PATH:gl,HTTP2_HEADER_SCHEME:yl,HTTP2_HEADER_CONTENT_LENGTH:vl,HTTP2_HEADER_EXPECT:Yl,HTTP2_HEADER_STATUS:El}}=Al;let Vl=false;const Rl=Buffer[Symbol.species];const wl=Symbol("kClosedResolve");const Fl={};try{const Wt=en(31637);Fl.sendHeaders=Wt.channel("undici:client:sendHeaders");Fl.beforeConnect=Wt.channel("undici:client:beforeConnect");Fl.connectError=Wt.channel("undici:client:connectError");Fl.connected=Wt.channel("undici:client:connected")}catch{Fl.sendHeaders={hasSubscribers:false};Fl.beforeConnect={hasSubscribers:false};Fl.connectError={hasSubscribers:false};Fl.connected={hasSubscribers:false}}class Client extends cn{constructor(Wt,{interceptors:Pt,maxHeaderSize:en,headersTimeout:tn,socketTimeout:rn,requestTimeout:sn,connectTimeout:on,bodyTimeout:cn,idleTimeout:dn,keepAlive:un,keepAliveTimeout:mn,maxKeepAliveTimeout:bn,keepAliveMaxTimeout:Gn,keepAliveTimeoutThreshold:hn,socketPath:Zn,pipelining:An,tls:Wn,strictContentLength:Nn,maxCachedSessions:gn,maxRedirections:Yn,connect:Vn,maxRequestsPerClient:Rn,localAddress:wn,maxResponseSize:Fn,autoSelectFamily:Qn,autoSelectFamilyAttemptTimeout:Hn,allowH2:Cn,maxConcurrentStreams:Xn}={}){super();if(un!==undefined){throw new pn("unsupported keepAlive, use pipelining=0 instead")}if(rn!==undefined){throw new pn("unsupported socketTimeout, use headersTimeout & bodyTimeout instead")}if(sn!==undefined){throw new pn("unsupported requestTimeout, use headersTimeout & bodyTimeout instead")}if(dn!==undefined){throw new pn("unsupported idleTimeout, use keepAliveTimeout instead")}if(bn!==undefined){throw new pn("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead")}if(en!=null&&!Number.isFinite(en)){throw new pn("invalid maxHeaderSize")}if(Zn!=null&&typeof Zn!=="string"){throw new pn("invalid socketPath")}if(on!=null&&(!Number.isFinite(on)||on<0)){throw new pn("invalid connectTimeout")}if(mn!=null&&(!Number.isFinite(mn)||mn<=0)){throw new pn("invalid keepAliveTimeout")}if(Gn!=null&&(!Number.isFinite(Gn)||Gn<=0)){throw new pn("invalid keepAliveMaxTimeout")}if(hn!=null&&!Number.isFinite(hn)){throw new pn("invalid keepAliveTimeoutThreshold")}if(tn!=null&&(!Number.isInteger(tn)||tn<0)){throw new pn("headersTimeout must be a positive integer or zero")}if(cn!=null&&(!Number.isInteger(cn)||cn<0)){throw new pn("bodyTimeout must be a positive integer or zero")}if(Vn!=null&&typeof Vn!=="function"&&typeof Vn!=="object"){throw new pn("connect must be a function or an object")}if(Yn!=null&&(!Number.isInteger(Yn)||Yn<0)){throw new pn("maxRedirections must be a positive number")}if(Rn!=null&&(!Number.isInteger(Rn)||Rn<0)){throw new pn("maxRequestsPerClient must be a positive number")}if(wn!=null&&(typeof wn!=="string"||nn.isIP(wn)===0)){throw new pn("localAddress must be valid string IP address")}if(Fn!=null&&(!Number.isInteger(Fn)||Fn<-1)){throw new pn("maxResponseSize must be a positive number")}if(Hn!=null&&(!Number.isInteger(Hn)||Hn<-1)){throw new pn("autoSelectFamilyAttemptTimeout must be a positive number")}if(Cn!=null&&typeof Cn!=="boolean"){throw new pn("allowH2 must be a valid boolean value")}if(Xn!=null&&(typeof Xn!=="number"||Xn<1)){throw new pn("maxConcurrentStreams must be a possitive integer, greater than 0")}if(typeof Vn!=="function"){Vn=yn({...Wn,maxCachedSessions:gn,allowH2:Cn,socketPath:Zn,timeout:on,...In.nodeHasAutoSelectFamily&&Qn?{autoSelectFamily:Qn,autoSelectFamilyAttemptTimeout:Hn}:undefined,...Vn})}this[cl]=Pt&&Pt.Client&&Array.isArray(Pt.Client)?Pt.Client:[fl({maxRedirections:Yn})];this[vn]=In.parseOrigin(Wt);this[nl]=Vn;this[Dn]=null;this[jn]=An!=null?An:1;this[Kn]=en||an.maxHeaderSize;this[Tn]=mn==null?4e3:mn;this[Pn]=Gn==null?6e5:Gn;this[qn]=hn==null?1e3:hn;this[_n]=this[Tn];this[En]=null;this[il]=wn!=null?wn:null;this[fn]=0;this[xn]=0;this[Un]=`host: ${this[vn].hostname}${this[vn].port?`:${this[vn].port}`:""}\r\n`;this[el]=cn!=null?cn:3e5;this[$n]=tn!=null?tn:3e5;this[tl]=Nn==null?true:Nn;this[ll]=Yn;this[al]=Rn;this[wl]=null;this[dl]=Fn>-1?Fn:-1;this[ul]="h1";this[ml]=null;this[bl]=!Cn?null:{openStreams:0,maxConcurrentStreams:Xn!=null?Xn:100};this[pl]=`${this[vn].hostname}${this[vn].port?`:${this[vn].port}`:""}`;this[Jn]=[];this[zn]=0;this[Mn]=0}get pipelining(){return this[jn]}set pipelining(Wt){this[jn]=Wt;resume(this,true)}get[Cn](){return this[Jn].length-this[Mn]}get[Hn](){return this[Mn]-this[zn]}get[Xn](){return this[Jn].length-this[zn]}get[Ln](){return!!this[Dn]&&!this[Bn]&&!this[Dn].destroyed}get[Rn](){const Wt=this[Dn];return Wt&&(Wt[Yn]||Wt[kn]||Wt[Qn])||this[Xn]>=(this[jn]||1)||this[Cn]>0}[Fn](Wt){connect(this);this.once("connect",Wt)}[ol](Wt,Pt){const en=Wt.origin||this[vn].origin;const tn=this[ul]==="h2"?on[Gl](en,Wt,Pt):on[Zl](en,Wt,Pt);this[Jn].push(tn);if(this[fn]){}else if(In.bodyLength(tn.body)==null&&In.isIterable(tn.body)){this[fn]=1;process.nextTick(resume,this)}else{resume(this,true)}if(this[fn]&&this[xn]!==2&&this[Rn]){this[xn]=2}return this[xn]<2}async[Il](){return new Promise((Wt=>{if(!this[Xn]){Wt(null)}else{this[wl]=Wt}}))}async[sl](Wt){return new Promise((Pt=>{const en=this[Jn].splice(this[Mn]);for(let Pt=0;Pt{if(this[wl]){this[wl]();this[wl]=null}Pt()};if(this[ml]!=null){In.destroy(this[ml],Wt);this[ml]=null;this[bl]=null}if(!this[Dn]){queueMicrotask(callback)}else{In.destroy(this[Dn].on("close",callback),Wt)}resume(this)}))}}function onHttp2SessionError(Wt){tn(Wt.code!=="ERR_TLS_CERT_ALTNAME_INVALID");this[Dn][Sn]=Wt;onError(this[Vn],Wt)}function onHttp2FrameError(Wt,Pt,en){const tn=new Zn(`HTTP/2: "frameError" received - type ${Wt}, code ${Pt}`);if(en===0){this[Dn][Sn]=tn;onError(this[Vn],tn)}}function onHttp2SessionEnd(){In.destroy(this,new hn("other side closed"));In.destroy(this[Dn],new hn("other side closed"))}function onHTTP2GoAway(Wt){const Pt=this[Vn];const en=new Zn(`HTTP/2: "GOAWAY" frame received with code ${Wt}`);Pt[Dn]=null;Pt[ml]=null;if(Pt.destroyed){tn(this[Cn]===0);const Wt=Pt[Jn].splice(Pt[zn]);for(let Pt=0;Pt0){const Wt=Pt[Jn][Pt[zn]];Pt[Jn][Pt[zn]++]=null;errorRequest(Pt,Wt,en)}Pt[Mn]=Pt[zn];tn(Pt[Hn]===0);Pt.emit("disconnect",Pt[vn],[Pt],en);resume(Pt)}const Ql=en(52824);const fl=en(64415);const Hl=Buffer.alloc(0);async function lazyllhttp(){const Wt=process.env.JEST_WORKER_ID?en(63870):undefined;let Pt;try{Pt=await WebAssembly.compile(Buffer.from(en(53434),"base64"))}catch(tn){Pt=await WebAssembly.compile(Buffer.from(Wt||en(63870),"base64"))}return await WebAssembly.instantiate(Pt,{env:{wasm_on_url:(Wt,Pt,en)=>0,wasm_on_status:(Wt,Pt,en)=>{tn.strictEqual(kl.ptr,Wt);const nn=Pt-Bl+Jl.byteOffset;return kl.onStatus(new Rl(Jl.buffer,nn,en))||0},wasm_on_message_begin:Wt=>{tn.strictEqual(kl.ptr,Wt);return kl.onMessageBegin()||0},wasm_on_header_field:(Wt,Pt,en)=>{tn.strictEqual(kl.ptr,Wt);const nn=Pt-Bl+Jl.byteOffset;return kl.onHeaderField(new Rl(Jl.buffer,nn,en))||0},wasm_on_header_value:(Wt,Pt,en)=>{tn.strictEqual(kl.ptr,Wt);const nn=Pt-Bl+Jl.byteOffset;return kl.onHeaderValue(new Rl(Jl.buffer,nn,en))||0},wasm_on_headers_complete:(Wt,Pt,en,nn)=>{tn.strictEqual(kl.ptr,Wt);return kl.onHeadersComplete(Pt,Boolean(en),Boolean(nn))||0},wasm_on_body:(Wt,Pt,en)=>{tn.strictEqual(kl.ptr,Wt);const nn=Pt-Bl+Jl.byteOffset;return kl.onBody(new Rl(Jl.buffer,nn,en))||0},wasm_on_message_complete:Wt=>{tn.strictEqual(kl.ptr,Wt);return kl.onMessageComplete()||0}}})}let Cl=null;let Xl=lazyllhttp();Xl.catch();let kl=null;let Jl=null;let Ll=0;let Bl=null;const xl=1;const Ol=2;const Tl=3;class Parser{constructor(Wt,Pt,{exports:en}){tn(Number.isFinite(Wt[Kn])&&Wt[Kn]>0);this.llhttp=en;this.ptr=this.llhttp.llhttp_alloc(Ql.TYPE.RESPONSE);this.client=Wt;this.socket=Pt;this.timeout=null;this.timeoutValue=null;this.timeoutType=null;this.statusCode=null;this.statusText="";this.upgrade=false;this.headers=[];this.headersSize=0;this.headersMaxSize=Wt[Kn];this.shouldKeepAlive=false;this.paused=false;this.resume=this.resume.bind(this);this.bytesRead=0;this.keepAlive="";this.contentLength="";this.connection="";this.maxResponseSize=Wt[dl]}setTimeout(Wt,Pt){this.timeoutType=Pt;if(Wt!==this.timeoutValue){sn.clearTimeout(this.timeout);if(Wt){this.timeout=sn.setTimeout(onParserTimeout,Wt,this);if(this.timeout.unref){this.timeout.unref()}}else{this.timeout=null}this.timeoutValue=Wt}else if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}}resume(){if(this.socket.destroyed||!this.paused){return}tn(this.ptr!=null);tn(kl==null);this.llhttp.llhttp_resume(this.ptr);tn(this.timeoutType===Ol);if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}this.paused=false;this.execute(this.socket.read()||Hl);this.readMore()}readMore(){while(!this.paused&&this.ptr){const Wt=this.socket.read();if(Wt===null){break}this.execute(Wt)}}execute(Wt){tn(this.ptr!=null);tn(kl==null);tn(!this.paused);const{socket:Pt,llhttp:en}=this;if(Wt.length>Ll){if(Bl){en.free(Bl)}Ll=Math.ceil(Wt.length/4096)*4096;Bl=en.malloc(Ll)}new Uint8Array(en.memory.buffer,Bl,Ll).set(Wt);try{let tn;try{Jl=Wt;kl=this;tn=en.llhttp_execute(this.ptr,Bl,Wt.length)}catch(Wt){throw Wt}finally{kl=null;Jl=null}const nn=en.llhttp_get_error_pos(this.ptr)-Bl;if(tn===Ql.ERROR.PAUSED_UPGRADE){this.onUpgrade(Wt.slice(nn))}else if(tn===Ql.ERROR.PAUSED){this.paused=true;Pt.unshift(Wt.slice(nn))}else if(tn!==Ql.ERROR.OK){const Pt=en.llhttp_get_error_reason(this.ptr);let an="";if(Pt){const Wt=new Uint8Array(en.memory.buffer,Pt).indexOf(0);an="Response does not match the HTTP/1.1 protocol ("+Buffer.from(en.memory.buffer,Pt,Wt).toString()+")"}throw new Wn(an,Ql.ERROR[tn],Wt.slice(nn))}}catch(Wt){In.destroy(Pt,Wt)}}destroy(){tn(this.ptr!=null);tn(kl==null);this.llhttp.llhttp_free(this.ptr);this.ptr=null;sn.clearTimeout(this.timeout);this.timeout=null;this.timeoutValue=null;this.timeoutType=null;this.paused=false}onStatus(Wt){this.statusText=Wt.toString()}onMessageBegin(){const{socket:Wt,client:Pt}=this;if(Wt.destroyed){return-1}const en=Pt[Jn][Pt[zn]];if(!en){return-1}}onHeaderField(Wt){const Pt=this.headers.length;if((Pt&1)===0){this.headers.push(Wt)}else{this.headers[Pt-1]=Buffer.concat([this.headers[Pt-1],Wt])}this.trackHeader(Wt.length)}onHeaderValue(Wt){let Pt=this.headers.length;if((Pt&1)===1){this.headers.push(Wt);Pt+=1}else{this.headers[Pt-1]=Buffer.concat([this.headers[Pt-1],Wt])}const en=this.headers[Pt-2];if(en.length===10&&en.toString().toLowerCase()==="keep-alive"){this.keepAlive+=Wt.toString()}else if(en.length===10&&en.toString().toLowerCase()==="connection"){this.connection+=Wt.toString()}else if(en.length===14&&en.toString().toLowerCase()==="content-length"){this.contentLength+=Wt.toString()}this.trackHeader(Wt.length)}trackHeader(Wt){this.headersSize+=Wt;if(this.headersSize>=this.headersMaxSize){In.destroy(this.socket,new Gn)}}onUpgrade(Wt){const{upgrade:Pt,client:en,socket:nn,headers:an,statusCode:rn}=this;tn(Pt);const sn=en[Jn][en[zn]];tn(sn);tn(!nn.destroyed);tn(nn===en[Dn]);tn(!this.paused);tn(sn.upgrade||sn.method==="CONNECT");this.statusCode=null;this.statusText="";this.shouldKeepAlive=null;tn(this.headers.length%2===0);this.headers=[];this.headersSize=0;nn.unshift(Wt);nn[wn].destroy();nn[wn]=null;nn[Vn]=null;nn[Sn]=null;nn.removeListener("error",onSocketError).removeListener("readable",onSocketReadable).removeListener("end",onSocketEnd).removeListener("close",onSocketClose);en[Dn]=null;en[Jn][en[zn]++]=null;en.emit("disconnect",en[vn],[en],new Zn("upgrade"));try{sn.onUpgrade(rn,an,nn)}catch(Wt){In.destroy(nn,Wt)}resume(en)}onHeadersComplete(Wt,Pt,en){const{client:nn,socket:an,headers:rn,statusText:sn}=this;if(an.destroyed){return-1}const on=nn[Jn][nn[zn]];if(!on){return-1}tn(!this.upgrade);tn(this.statusCode<200);if(Wt===100){In.destroy(an,new hn("bad response",In.getSocketInfo(an)));return-1}if(Pt&&!on.upgrade){In.destroy(an,new hn("bad upgrade",In.getSocketInfo(an)));return-1}tn.strictEqual(this.timeoutType,xl);this.statusCode=Wt;this.shouldKeepAlive=en||on.method==="HEAD"&&!an[Yn]&&this.connection.toLowerCase()==="keep-alive";if(this.statusCode>=200){const Wt=on.bodyTimeout!=null?on.bodyTimeout:nn[el];this.setTimeout(Wt,Ol)}else if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}if(on.method==="CONNECT"){tn(nn[Hn]===1);this.upgrade=true;return 2}if(Pt){tn(nn[Hn]===1);this.upgrade=true;return 2}tn(this.headers.length%2===0);this.headers=[];this.headersSize=0;if(this.shouldKeepAlive&&nn[jn]){const Wt=this.keepAlive?In.parseKeepAliveTimeout(this.keepAlive):null;if(Wt!=null){const Pt=Math.min(Wt-nn[qn],nn[Pn]);if(Pt<=0){an[Yn]=true}else{nn[_n]=Pt}}else{nn[_n]=nn[Tn]}}else{an[Yn]=true}const cn=on.onHeaders(Wt,rn,this.resume,sn)===false;if(on.aborted){return-1}if(on.method==="HEAD"){return 1}if(Wt<200){return 1}if(an[Qn]){an[Qn]=false;resume(nn)}return cn?Ql.ERROR.PAUSED:0}onBody(Wt){const{client:Pt,socket:en,statusCode:nn,maxResponseSize:an}=this;if(en.destroyed){return-1}const rn=Pt[Jn][Pt[zn]];tn(rn);tn.strictEqual(this.timeoutType,Ol);if(this.timeout){if(this.timeout.refresh){this.timeout.refresh()}}tn(nn>=200);if(an>-1&&this.bytesRead+Wt.length>an){In.destroy(en,new Nn);return-1}this.bytesRead+=Wt.length;if(rn.onData(Wt)===false){return Ql.ERROR.PAUSED}}onMessageComplete(){const{client:Wt,socket:Pt,statusCode:en,upgrade:nn,headers:an,contentLength:rn,bytesRead:sn,shouldKeepAlive:on}=this;if(Pt.destroyed&&(!en||on)){return-1}if(nn){return}const cn=Wt[Jn][Wt[zn]];tn(cn);tn(en>=100);this.statusCode=null;this.statusText="";this.bytesRead=0;this.contentLength="";this.keepAlive="";this.connection="";tn(this.headers.length%2===0);this.headers=[];this.headersSize=0;if(en<200){return}if(cn.method!=="HEAD"&&rn&&sn!==parseInt(rn,10)){In.destroy(Pt,new un);return-1}cn.onComplete(an);Wt[Jn][Wt[zn]++]=null;if(Pt[kn]){tn.strictEqual(Wt[Hn],0);In.destroy(Pt,new Zn("reset"));return Ql.ERROR.PAUSED}else if(!on){In.destroy(Pt,new Zn("reset"));return Ql.ERROR.PAUSED}else if(Pt[Yn]&&Wt[Hn]===0){In.destroy(Pt,new Zn("reset"));return Ql.ERROR.PAUSED}else if(Wt[jn]===1){setImmediate(resume,Wt)}else{resume(Wt)}}}function onParserTimeout(Wt){const{socket:Pt,timeoutType:en,client:nn}=Wt;if(en===xl){if(!Pt[kn]||Pt.writableNeedDrain||nn[Hn]>1){tn(!Wt.paused,"cannot be paused while waiting for headers");In.destroy(Pt,new bn)}}else if(en===Ol){if(!Wt.paused){In.destroy(Pt,new An)}}else if(en===Tl){tn(nn[Hn]===0&&nn[_n]);In.destroy(Pt,new Zn("socket idle timeout"))}}function onSocketReadable(){const{[wn]:Wt}=this;if(Wt){Wt.readMore()}}function onSocketError(Wt){const{[Vn]:Pt,[wn]:en}=this;tn(Wt.code!=="ERR_TLS_CERT_ALTNAME_INVALID");if(Pt[ul]!=="h2"){if(Wt.code==="ECONNRESET"&&en.statusCode&&!en.shouldKeepAlive){en.onMessageComplete();return}}this[Sn]=Wt;onError(this[Vn],Wt)}function onError(Wt,Pt){if(Wt[Hn]===0&&Pt.code!=="UND_ERR_INFO"&&Pt.code!=="UND_ERR_SOCKET"){tn(Wt[Mn]===Wt[zn]);const en=Wt[Jn].splice(Wt[zn]);for(let tn=0;tn0&&en.code!=="UND_ERR_INFO"){const Pt=Wt[Jn][Wt[zn]];Wt[Jn][Wt[zn]++]=null;errorRequest(Wt,Pt,en)}Wt[Mn]=Wt[zn];tn(Wt[Hn]===0);Wt.emit("disconnect",Wt[vn],[Wt],en);resume(Wt)}async function connect(Wt){tn(!Wt[Bn]);tn(!Wt[Dn]);let{host:Pt,hostname:en,protocol:an,port:rn}=Wt[vn];if(en[0]==="["){const Wt=en.indexOf("]");tn(Wt!==-1);const Pt=en.substring(1,Wt);tn(nn.isIP(Pt));en=Pt}Wt[Bn]=true;if(Fl.beforeConnect.hasSubscribers){Fl.beforeConnect.publish({connectParams:{host:Pt,hostname:en,protocol:an,port:rn,servername:Wt[En],localAddress:Wt[il]},connector:Wt[nl]})}try{const nn=await new Promise(((tn,nn)=>{Wt[nl]({host:Pt,hostname:en,protocol:an,port:rn,servername:Wt[En],localAddress:Wt[il]},((Wt,Pt)=>{if(Wt){nn(Wt)}else{tn(Pt)}}))}));if(Wt.destroyed){In.destroy(nn.on("error",(()=>{})),new gn);return}Wt[Bn]=false;tn(nn);const sn=nn.alpnProtocol==="h2";if(sn){if(!Vl){Vl=true;process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"})}const Pt=Al.connect(Wt[vn],{createConnection:()=>nn,peerMaxConcurrentStreams:Wt[bl].maxConcurrentStreams});Wt[ul]="h2";Pt[Vn]=Wt;Pt[Dn]=nn;Pt.on("error",onHttp2SessionError);Pt.on("frameError",onHttp2FrameError);Pt.on("end",onHttp2SessionEnd);Pt.on("goaway",onHTTP2GoAway);Pt.on("close",onSocketClose);Pt.unref();Wt[ml]=Pt;nn[ml]=Pt}else{if(!Cl){Cl=await Xl;Xl=null}nn[On]=false;nn[kn]=false;nn[Yn]=false;nn[Qn]=false;nn[wn]=new Parser(Wt,nn,Cl)}nn[rl]=0;nn[al]=Wt[al];nn[Vn]=Wt;nn[Sn]=null;nn.on("error",onSocketError).on("readable",onSocketReadable).on("end",onSocketEnd).on("close",onSocketClose);Wt[Dn]=nn;if(Fl.connected.hasSubscribers){Fl.connected.publish({connectParams:{host:Pt,hostname:en,protocol:an,port:rn,servername:Wt[En],localAddress:Wt[il]},connector:Wt[nl],socket:nn})}Wt.emit("connect",Wt[vn],[Wt])}catch(nn){if(Wt.destroyed){return}Wt[Bn]=false;if(Fl.connectError.hasSubscribers){Fl.connectError.publish({connectParams:{host:Pt,hostname:en,protocol:an,port:rn,servername:Wt[En],localAddress:Wt[il]},connector:Wt[nl],error:nn})}if(nn.code==="ERR_TLS_CERT_ALTNAME_INVALID"){tn(Wt[Hn]===0);while(Wt[Cn]>0&&Wt[Jn][Wt[Mn]].servername===Wt[En]){const Pt=Wt[Jn][Wt[Mn]++];errorRequest(Wt,Pt,nn)}}else{onError(Wt,nn)}Wt.emit("connectionError",Wt[vn],[Wt],nn)}resume(Wt)}function emitDrain(Wt){Wt[xn]=0;Wt.emit("drain",Wt[vn],[Wt])}function resume(Wt,Pt){if(Wt[fn]===2){return}Wt[fn]=2;_resume(Wt,Pt);Wt[fn]=0;if(Wt[zn]>256){Wt[Jn].splice(0,Wt[zn]);Wt[Mn]-=Wt[zn];Wt[zn]=0}}function _resume(Wt,Pt){while(true){if(Wt.destroyed){tn(Wt[Cn]===0);return}if(Wt[wl]&&!Wt[Xn]){Wt[wl]();Wt[wl]=null;return}const en=Wt[Dn];if(en&&!en.destroyed&&en.alpnProtocol!=="h2"){if(Wt[Xn]===0){if(!en[On]&&en.unref){en.unref();en[On]=true}}else if(en[On]&&en.ref){en.ref();en[On]=false}if(Wt[Xn]===0){if(en[wn].timeoutType!==Tl){en[wn].setTimeout(Wt[_n],Tl)}}else if(Wt[Hn]>0&&en[wn].statusCode<200){if(en[wn].timeoutType!==xl){const Pt=Wt[Jn][Wt[zn]];const tn=Pt.headersTimeout!=null?Pt.headersTimeout:Wt[$n];en[wn].setTimeout(tn,xl)}}}if(Wt[Rn]){Wt[xn]=2}else if(Wt[xn]===2){if(Pt){Wt[xn]=1;process.nextTick(emitDrain,Wt)}else{emitDrain(Wt)}continue}if(Wt[Cn]===0){return}if(Wt[Hn]>=(Wt[jn]||1)){return}const nn=Wt[Jn][Wt[Mn]];if(Wt[vn].protocol==="https:"&&Wt[En]!==nn.servername){if(Wt[Hn]>0){return}Wt[En]=nn.servername;if(en&&en.servername!==nn.servername){In.destroy(en,new Zn("servername changed"));return}}if(Wt[Bn]){return}if(!en&&!Wt[ml]){connect(Wt);return}if(en.destroyed||en[kn]||en[Yn]||en[Qn]){return}if(Wt[Hn]>0&&!nn.idempotent){return}if(Wt[Hn]>0&&(nn.upgrade||nn.method==="CONNECT")){return}if(Wt[Hn]>0&&In.bodyLength(nn.body)!==0&&(In.isStream(nn.body)||In.isAsyncIterable(nn.body))){return}if(!nn.aborted&&write(Wt,nn)){Wt[Mn]++}else{Wt[Jn].splice(Wt[Mn],1)}}}function shouldSendContentLength(Wt){return Wt!=="GET"&&Wt!=="HEAD"&&Wt!=="OPTIONS"&&Wt!=="TRACE"&&Wt!=="CONNECT"}function write(Wt,Pt){if(Wt[ul]==="h2"){writeH2(Wt,Wt[ml],Pt);return}const{body:en,method:nn,path:an,host:rn,upgrade:sn,headers:on,blocking:cn,reset:un}=Pt;const pn=nn==="PUT"||nn==="POST"||nn==="PATCH";if(en&&typeof en.read==="function"){en.read(0)}const bn=In.bodyLength(en);let Gn=bn;if(Gn===null){Gn=Pt.contentLength}if(Gn===0&&!pn){Gn=null}if(shouldSendContentLength(nn)&&Gn>0&&Pt.contentLength!==null&&Pt.contentLength!==Gn){if(Wt[tl]){errorRequest(Wt,Pt,new dn);return false}process.emitWarning(new dn)}const hn=Wt[Dn];try{Pt.onConnect((en=>{if(Pt.aborted||Pt.completed){return}errorRequest(Wt,Pt,en||new mn);In.destroy(hn,new Zn("aborted"))}))}catch(en){errorRequest(Wt,Pt,en)}if(Pt.aborted){return false}if(nn==="HEAD"){hn[Yn]=true}if(sn||nn==="CONNECT"){hn[Yn]=true}if(un!=null){hn[Yn]=un}if(Wt[al]&&hn[rl]++>=Wt[al]){hn[Yn]=true}if(cn){hn[Qn]=true}let An=`${nn} ${an} HTTP/1.1\r\n`;if(typeof rn==="string"){An+=`host: ${rn}\r\n`}else{An+=Wt[Un]}if(sn){An+=`connection: upgrade\r\nupgrade: ${sn}\r\n`}else if(Wt[jn]&&!hn[Yn]){An+="connection: keep-alive\r\n"}else{An+="connection: close\r\n"}if(on){An+=on}if(Fl.sendHeaders.hasSubscribers){Fl.sendHeaders.publish({request:Pt,headers:An,socket:hn})}if(!en||bn===0){if(Gn===0){hn.write(`${An}content-length: 0\r\n\r\n`,"latin1")}else{tn(Gn===null,"no body must not have content length");hn.write(`${An}\r\n`,"latin1")}Pt.onRequestSent()}else if(In.isBuffer(en)){tn(Gn===en.byteLength,"buffer body must have content length");hn.cork();hn.write(`${An}content-length: ${Gn}\r\n\r\n`,"latin1");hn.write(en);hn.uncork();Pt.onBodySent(en);Pt.onRequestSent();if(!pn){hn[Yn]=true}}else if(In.isBlobLike(en)){if(typeof en.stream==="function"){writeIterable({body:en.stream(),client:Wt,request:Pt,socket:hn,contentLength:Gn,header:An,expectsPayload:pn})}else{writeBlob({body:en,client:Wt,request:Pt,socket:hn,contentLength:Gn,header:An,expectsPayload:pn})}}else if(In.isStream(en)){writeStream({body:en,client:Wt,request:Pt,socket:hn,contentLength:Gn,header:An,expectsPayload:pn})}else if(In.isIterable(en)){writeIterable({body:en,client:Wt,request:Pt,socket:hn,contentLength:Gn,header:An,expectsPayload:pn})}else{tn(false)}return true}function writeH2(Wt,Pt,en){const{body:nn,method:an,path:rn,host:sn,upgrade:cn,expectContinue:un,signal:pn,headers:bn}=en;let Gn;if(typeof bn==="string")Gn=on[hl](bn.trim());else Gn=bn;if(cn){errorRequest(Wt,en,new Error("Upgrade not supported for H2"));return false}try{en.onConnect((Pt=>{if(en.aborted||en.completed){return}errorRequest(Wt,en,Pt||new mn)}))}catch(Pt){errorRequest(Wt,en,Pt)}if(en.aborted){return false}let hn;const An=Wt[bl];Gn[Wl]=sn||Wt[pl];Gn[Nl]=an;if(an==="CONNECT"){Pt.ref();hn=Pt.request(Gn,{endStream:false,signal:pn});if(hn.id&&!hn.pending){en.onUpgrade(null,null,hn);++An.openStreams}else{hn.once("ready",(()=>{en.onUpgrade(null,null,hn);++An.openStreams}))}hn.once("close",(()=>{An.openStreams-=1;if(An.openStreams===0)Pt.unref()}));return true}Gn[gl]=rn;Gn[yl]="https";const Wn=an==="PUT"||an==="POST"||an==="PATCH";if(nn&&typeof nn.read==="function"){nn.read(0)}let Nn=In.bodyLength(nn);if(Nn==null){Nn=en.contentLength}if(Nn===0||!Wn){Nn=null}if(shouldSendContentLength(an)&&Nn>0&&en.contentLength!=null&&en.contentLength!==Nn){if(Wt[tl]){errorRequest(Wt,en,new dn);return false}process.emitWarning(new dn)}if(Nn!=null){tn(nn,"no body must not have content length");Gn[vl]=`${Nn}`}Pt.ref();const gn=an==="GET"||an==="HEAD";if(un){Gn[Yl]="100-continue";hn=Pt.request(Gn,{endStream:gn,signal:pn});hn.once("continue",writeBodyH2)}else{hn=Pt.request(Gn,{endStream:gn,signal:pn});writeBodyH2()}++An.openStreams;hn.once("response",(Wt=>{const{[El]:Pt,...tn}=Wt;if(en.onHeaders(Number(Pt),tn,hn.resume.bind(hn),"")===false){hn.pause()}}));hn.once("end",(()=>{en.onComplete([])}));hn.on("data",(Wt=>{if(en.onData(Wt)===false){hn.pause()}}));hn.once("close",(()=>{An.openStreams-=1;if(An.openStreams===0){Pt.unref()}}));hn.once("error",(function(Pt){if(Wt[ml]&&!Wt[ml].destroyed&&!this.closed&&!this.destroyed){An.streams-=1;In.destroy(hn,Pt)}}));hn.once("frameError",((Pt,tn)=>{const nn=new Zn(`HTTP/2: "frameError" received - type ${Pt}, code ${tn}`);errorRequest(Wt,en,nn);if(Wt[ml]&&!Wt[ml].destroyed&&!this.closed&&!this.destroyed){An.streams-=1;In.destroy(hn,nn)}}));return true;function writeBodyH2(){if(!nn){en.onRequestSent()}else if(In.isBuffer(nn)){tn(Nn===nn.byteLength,"buffer body must have content length");hn.cork();hn.write(nn);hn.uncork();hn.end();en.onBodySent(nn);en.onRequestSent()}else if(In.isBlobLike(nn)){if(typeof nn.stream==="function"){writeIterable({client:Wt,request:en,contentLength:Nn,h2stream:hn,expectsPayload:Wn,body:nn.stream(),socket:Wt[Dn],header:""})}else{writeBlob({body:nn,client:Wt,request:en,contentLength:Nn,expectsPayload:Wn,h2stream:hn,header:"",socket:Wt[Dn]})}}else if(In.isStream(nn)){writeStream({body:nn,client:Wt,request:en,contentLength:Nn,expectsPayload:Wn,socket:Wt[Dn],h2stream:hn,header:""})}else if(In.isIterable(nn)){writeIterable({body:nn,client:Wt,request:en,contentLength:Nn,expectsPayload:Wn,header:"",h2stream:hn,socket:Wt[Dn]})}else{tn(false)}}}function writeStream({h2stream:Wt,body:Pt,client:en,request:nn,socket:an,contentLength:sn,header:on,expectsPayload:cn}){tn(sn!==0||en[Hn]===0,"stream body cannot be pipelined");if(en[ul]==="h2"){const pn=rn(Pt,Wt,(en=>{if(en){In.destroy(Pt,en);In.destroy(Wt,en)}else{nn.onRequestSent()}}));pn.on("data",onPipeData);pn.once("end",(()=>{pn.removeListener("data",onPipeData);In.destroy(pn)}));function onPipeData(Wt){nn.onBodySent(Wt)}return}let dn=false;const un=new AsyncWriter({socket:an,request:nn,contentLength:sn,client:en,expectsPayload:cn,header:on});const onData=function(Wt){if(dn){return}try{if(!un.write(Wt)&&this.pause){this.pause()}}catch(Wt){In.destroy(this,Wt)}};const onDrain=function(){if(dn){return}if(Pt.resume){Pt.resume()}};const onAbort=function(){if(dn){return}const Wt=new mn;queueMicrotask((()=>onFinished(Wt)))};const onFinished=function(Wt){if(dn){return}dn=true;tn(an.destroyed||an[kn]&&en[Hn]<=1);an.off("drain",onDrain).off("error",onFinished);Pt.removeListener("data",onData).removeListener("end",onFinished).removeListener("error",onFinished).removeListener("close",onAbort);if(!Wt){try{un.end()}catch(Pt){Wt=Pt}}un.destroy(Wt);if(Wt&&(Wt.code!=="UND_ERR_INFO"||Wt.message!=="reset")){In.destroy(Pt,Wt)}else{In.destroy(Pt)}};Pt.on("data",onData).on("end",onFinished).on("error",onFinished).on("close",onAbort);if(Pt.resume){Pt.resume()}an.on("drain",onDrain).on("error",onFinished)}async function writeBlob({h2stream:Wt,body:Pt,client:en,request:nn,socket:an,contentLength:rn,header:sn,expectsPayload:on}){tn(rn===Pt.size,"blob body must have content length");const cn=en[ul]==="h2";try{if(rn!=null&&rn!==Pt.size){throw new dn}const tn=Buffer.from(await Pt.arrayBuffer());if(cn){Wt.cork();Wt.write(tn);Wt.uncork()}else{an.cork();an.write(`${sn}content-length: ${rn}\r\n\r\n`,"latin1");an.write(tn);an.uncork()}nn.onBodySent(tn);nn.onRequestSent();if(!on){an[Yn]=true}resume(en)}catch(Pt){In.destroy(cn?Wt:an,Pt)}}async function writeIterable({h2stream:Wt,body:Pt,client:en,request:nn,socket:an,contentLength:rn,header:In,expectsPayload:sn}){tn(rn!==0||en[Hn]===0,"iterator body cannot be pipelined");let on=null;function onDrain(){if(on){const Wt=on;on=null;Wt()}}const waitForDrain=()=>new Promise(((Wt,Pt)=>{tn(on===null);if(an[Sn]){Pt(an[Sn])}else{on=Wt}}));if(en[ul]==="h2"){Wt.on("close",onDrain).on("drain",onDrain);try{for await(const en of Pt){if(an[Sn]){throw an[Sn]}const Pt=Wt.write(en);nn.onBodySent(en);if(!Pt){await waitForDrain()}}}catch(Pt){Wt.destroy(Pt)}finally{nn.onRequestSent();Wt.end();Wt.off("close",onDrain).off("drain",onDrain)}return}an.on("close",onDrain).on("drain",onDrain);const cn=new AsyncWriter({socket:an,request:nn,contentLength:rn,client:en,expectsPayload:sn,header:In});try{for await(const Wt of Pt){if(an[Sn]){throw an[Sn]}if(!cn.write(Wt)){await waitForDrain()}}cn.end()}catch(Wt){cn.destroy(Wt)}finally{an.off("close",onDrain).off("drain",onDrain)}}class AsyncWriter{constructor({socket:Wt,request:Pt,contentLength:en,client:tn,expectsPayload:nn,header:an}){this.socket=Wt;this.request=Pt;this.contentLength=en;this.client=tn;this.bytesWritten=0;this.expectsPayload=nn;this.header=an;Wt[kn]=true}write(Wt){const{socket:Pt,request:en,contentLength:tn,client:nn,bytesWritten:an,expectsPayload:rn,header:In}=this;if(Pt[Sn]){throw Pt[Sn]}if(Pt.destroyed){return false}const sn=Buffer.byteLength(Wt);if(!sn){return true}if(tn!==null&&an+sn>tn){if(nn[tl]){throw new dn}process.emitWarning(new dn)}Pt.cork();if(an===0){if(!rn){Pt[Yn]=true}if(tn===null){Pt.write(`${In}transfer-encoding: chunked\r\n`,"latin1")}else{Pt.write(`${In}content-length: ${tn}\r\n\r\n`,"latin1")}}if(tn===null){Pt.write(`\r\n${sn.toString(16)}\r\n`,"latin1")}this.bytesWritten+=sn;const on=Pt.write(Wt);Pt.uncork();en.onBodySent(Wt);if(!on){if(Pt[wn].timeout&&Pt[wn].timeoutType===xl){if(Pt[wn].timeout.refresh){Pt[wn].timeout.refresh()}}}return on}end(){const{socket:Wt,contentLength:Pt,client:en,bytesWritten:tn,expectsPayload:nn,header:an,request:rn}=this;rn.onRequestSent();Wt[kn]=false;if(Wt[Sn]){throw Wt[Sn]}if(Wt.destroyed){return}if(tn===0){if(nn){Wt.write(`${an}content-length: 0\r\n\r\n`,"latin1")}else{Wt.write(`${an}\r\n`,"latin1")}}else if(Pt===null){Wt.write("\r\n0\r\n\r\n","latin1")}if(Pt!==null&&tn!==Pt){if(en[tl]){throw new dn}else{process.emitWarning(new dn)}}if(Wt[wn].timeout&&Wt[wn].timeoutType===xl){if(Wt[wn].timeout.refresh){Wt[wn].timeout.refresh()}}resume(en)}destroy(Wt){const{socket:Pt,client:en}=this;Pt[kn]=false;if(Wt){tn(en[Hn]<=1,"pipeline should only contain this request");In.destroy(Pt,Wt)}}}function errorRequest(Wt,Pt,en){try{Pt.onError(en);tn(Pt.aborted)}catch(en){Wt.emit("error",en)}}Wt.exports=Client},13194:(Wt,Pt,en)=>{"use strict";const{kConnected:tn,kSize:nn}=en(36443);class CompatWeakRef{constructor(Wt){this.value=Wt}deref(){return this.value[tn]===0&&this.value[nn]===0?undefined:this.value}}class CompatFinalizer{constructor(Wt){this.finalizer=Wt}register(Wt,Pt){if(Wt.on){Wt.on("disconnect",(()=>{if(Wt[tn]===0&&Wt[nn]===0){this.finalizer(Pt)}}))}}}Wt.exports=function(){if(process.env.NODE_V8_COVERAGE){return{WeakRef:CompatWeakRef,FinalizationRegistry:CompatFinalizer}}return{WeakRef:global.WeakRef||CompatWeakRef,FinalizationRegistry:global.FinalizationRegistry||CompatFinalizer}}},19237:Wt=>{"use strict";const Pt=1024;const en=4096;Wt.exports={maxAttributeValueSize:Pt,maxNameValuePairSize:en}},53168:(Wt,Pt,en)=>{"use strict";const{parseSetCookie:tn}=en(8915);const{stringify:nn,getHeadersList:an}=en(3834);const{webidl:rn}=en(74222);const{Headers:In}=en(26349);function getCookies(Wt){rn.argumentLengthCheck(arguments,1,{header:"getCookies"});rn.brandCheck(Wt,In,{strict:false});const Pt=Wt.get("cookie");const en={};if(!Pt){return en}for(const Wt of Pt.split(";")){const[Pt,...tn]=Wt.split("=");en[Pt.trim()]=tn.join("=")}return en}function deleteCookie(Wt,Pt,en){rn.argumentLengthCheck(arguments,2,{header:"deleteCookie"});rn.brandCheck(Wt,In,{strict:false});Pt=rn.converters.DOMString(Pt);en=rn.converters.DeleteCookieAttributes(en);setCookie(Wt,{name:Pt,value:"",expires:new Date(0),...en})}function getSetCookies(Wt){rn.argumentLengthCheck(arguments,1,{header:"getSetCookies"});rn.brandCheck(Wt,In,{strict:false});const Pt=an(Wt).cookies;if(!Pt){return[]}return Pt.map((Wt=>tn(Array.isArray(Wt)?Wt[1]:Wt)))}function setCookie(Wt,Pt){rn.argumentLengthCheck(arguments,2,{header:"setCookie"});rn.brandCheck(Wt,In,{strict:false});Pt=rn.converters.Cookie(Pt);const en=nn(Pt);if(en){Wt.append("Set-Cookie",nn(Pt))}}rn.converters.DeleteCookieAttributes=rn.dictionaryConverter([{converter:rn.nullableConverter(rn.converters.DOMString),key:"path",defaultValue:null},{converter:rn.nullableConverter(rn.converters.DOMString),key:"domain",defaultValue:null}]);rn.converters.Cookie=rn.dictionaryConverter([{converter:rn.converters.DOMString,key:"name"},{converter:rn.converters.DOMString,key:"value"},{converter:rn.nullableConverter((Wt=>{if(typeof Wt==="number"){return rn.converters["unsigned long long"](Wt)}return new Date(Wt)})),key:"expires",defaultValue:null},{converter:rn.nullableConverter(rn.converters["long long"]),key:"maxAge",defaultValue:null},{converter:rn.nullableConverter(rn.converters.DOMString),key:"domain",defaultValue:null},{converter:rn.nullableConverter(rn.converters.DOMString),key:"path",defaultValue:null},{converter:rn.nullableConverter(rn.converters.boolean),key:"secure",defaultValue:null},{converter:rn.nullableConverter(rn.converters.boolean),key:"httpOnly",defaultValue:null},{converter:rn.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:rn.sequenceConverter(rn.converters.DOMString),key:"unparsed",defaultValue:[]}]);Wt.exports={getCookies:getCookies,deleteCookie:deleteCookie,getSetCookies:getSetCookies,setCookie:setCookie}},8915:(Wt,Pt,en)=>{"use strict";const{maxNameValuePairSize:tn,maxAttributeValueSize:nn}=en(19237);const{isCTLExcludingHtab:an}=en(3834);const{collectASequenceOfCodePointsFast:rn}=en(94322);const In=en(42613);function parseSetCookie(Wt){if(an(Wt)){return null}let Pt="";let en="";let nn="";let In="";if(Wt.includes(";")){const tn={position:0};Pt=rn(";",Wt,tn);en=Wt.slice(tn.position)}else{Pt=Wt}if(!Pt.includes("=")){In=Pt}else{const Wt={position:0};nn=rn("=",Pt,Wt);In=Pt.slice(Wt.position+1)}nn=nn.trim();In=In.trim();if(nn.length+In.length>tn){return null}return{name:nn,value:In,...parseUnparsedAttributes(en)}}function parseUnparsedAttributes(Wt,Pt={}){if(Wt.length===0){return Pt}In(Wt[0]===";");Wt=Wt.slice(1);let en="";if(Wt.includes(";")){en=rn(";",Wt,{position:0});Wt=Wt.slice(en.length)}else{en=Wt;Wt=""}let tn="";let an="";if(en.includes("=")){const Wt={position:0};tn=rn("=",en,Wt);an=en.slice(Wt.position+1)}else{tn=en}tn=tn.trim();an=an.trim();if(an.length>nn){return parseUnparsedAttributes(Wt,Pt)}const sn=tn.toLowerCase();if(sn==="expires"){const Wt=new Date(an);Pt.expires=Wt}else if(sn==="max-age"){const en=an.charCodeAt(0);if((en<48||en>57)&&an[0]!=="-"){return parseUnparsedAttributes(Wt,Pt)}if(!/^\d+$/.test(an)){return parseUnparsedAttributes(Wt,Pt)}const tn=Number(an);Pt.maxAge=tn}else if(sn==="domain"){let Wt=an;if(Wt[0]==="."){Wt=Wt.slice(1)}Wt=Wt.toLowerCase();Pt.domain=Wt}else if(sn==="path"){let Wt="";if(an.length===0||an[0]!=="/"){Wt="/"}else{Wt=an}Pt.path=Wt}else if(sn==="secure"){Pt.secure=true}else if(sn==="httponly"){Pt.httpOnly=true}else if(sn==="samesite"){let Wt="Default";const en=an.toLowerCase();if(en.includes("none")){Wt="None"}if(en.includes("strict")){Wt="Strict"}if(en.includes("lax")){Wt="Lax"}Pt.sameSite=Wt}else{Pt.unparsed??=[];Pt.unparsed.push(`${tn}=${an}`)}return parseUnparsedAttributes(Wt,Pt)}Wt.exports={parseSetCookie:parseSetCookie,parseUnparsedAttributes:parseUnparsedAttributes}},3834:(Wt,Pt,en)=>{"use strict";const tn=en(42613);const{kHeadersList:nn}=en(36443);function isCTLExcludingHtab(Wt){if(Wt.length===0){return false}for(const Pt of Wt){const Wt=Pt.charCodeAt(0);if(Wt>=0||Wt<=8||(Wt>=10||Wt<=31)||Wt===127){return false}}}function validateCookieName(Wt){for(const Pt of Wt){const Wt=Pt.charCodeAt(0);if(Wt<=32||Wt>127||Pt==="("||Pt===")"||Pt===">"||Pt==="<"||Pt==="@"||Pt===","||Pt===";"||Pt===":"||Pt==="\\"||Pt==='"'||Pt==="/"||Pt==="["||Pt==="]"||Pt==="?"||Pt==="="||Pt==="{"||Pt==="}"){throw new Error("Invalid cookie name")}}}function validateCookieValue(Wt){for(const Pt of Wt){const Wt=Pt.charCodeAt(0);if(Wt<33||Wt===34||Wt===44||Wt===59||Wt===92||Wt>126){throw new Error("Invalid header value")}}}function validateCookiePath(Wt){for(const Pt of Wt){const Wt=Pt.charCodeAt(0);if(Wt<33||Pt===";"){throw new Error("Invalid cookie path")}}}function validateCookieDomain(Wt){if(Wt.startsWith("-")||Wt.endsWith(".")||Wt.endsWith("-")){throw new Error("Invalid cookie domain")}}function toIMFDate(Wt){if(typeof Wt==="number"){Wt=new Date(Wt)}const Pt=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];const en=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];const tn=Pt[Wt.getUTCDay()];const nn=Wt.getUTCDate().toString().padStart(2,"0");const an=en[Wt.getUTCMonth()];const rn=Wt.getUTCFullYear();const In=Wt.getUTCHours().toString().padStart(2,"0");const sn=Wt.getUTCMinutes().toString().padStart(2,"0");const on=Wt.getUTCSeconds().toString().padStart(2,"0");return`${tn}, ${nn} ${an} ${rn} ${In}:${sn}:${on} GMT`}function validateCookieMaxAge(Wt){if(Wt<0){throw new Error("Invalid cookie max-age")}}function stringify(Wt){if(Wt.name.length===0){return null}validateCookieName(Wt.name);validateCookieValue(Wt.value);const Pt=[`${Wt.name}=${Wt.value}`];if(Wt.name.startsWith("__Secure-")){Wt.secure=true}if(Wt.name.startsWith("__Host-")){Wt.secure=true;Wt.domain=null;Wt.path="/"}if(Wt.secure){Pt.push("Secure")}if(Wt.httpOnly){Pt.push("HttpOnly")}if(typeof Wt.maxAge==="number"){validateCookieMaxAge(Wt.maxAge);Pt.push(`Max-Age=${Wt.maxAge}`)}if(Wt.domain){validateCookieDomain(Wt.domain);Pt.push(`Domain=${Wt.domain}`)}if(Wt.path){validateCookiePath(Wt.path);Pt.push(`Path=${Wt.path}`)}if(Wt.expires&&Wt.expires.toString()!=="Invalid Date"){Pt.push(`Expires=${toIMFDate(Wt.expires)}`)}if(Wt.sameSite){Pt.push(`SameSite=${Wt.sameSite}`)}for(const en of Wt.unparsed){if(!en.includes("=")){throw new Error("Invalid unparsed")}const[Wt,...tn]=en.split("=");Pt.push(`${Wt.trim()}=${tn.join("=")}`)}return Pt.join("; ")}let an;function getHeadersList(Wt){if(Wt[nn]){return Wt[nn]}if(!an){an=Object.getOwnPropertySymbols(Wt).find((Wt=>Wt.description==="headers list"));tn(an,"Headers cannot be parsed")}const Pt=Wt[an];tn(Pt);return Pt}Wt.exports={isCTLExcludingHtab:isCTLExcludingHtab,stringify:stringify,getHeadersList:getHeadersList}},59136:(Wt,Pt,en)=>{"use strict";const tn=en(69278);const nn=en(42613);const an=en(3440);const{InvalidArgumentError:rn,ConnectTimeoutError:In}=en(68707);let sn;let on;if(global.FinalizationRegistry&&!process.env.NODE_V8_COVERAGE){on=class WeakSessionCache{constructor(Wt){this._maxCachedSessions=Wt;this._sessionCache=new Map;this._sessionRegistry=new global.FinalizationRegistry((Wt=>{if(this._sessionCache.size=this._maxCachedSessions){const{value:Wt}=this._sessionCache.keys().next();this._sessionCache.delete(Wt)}this._sessionCache.set(Wt,Pt)}}}function buildConnector({allowH2:Wt,maxCachedSessions:Pt,socketPath:In,timeout:cn,...dn}){if(Pt!=null&&(!Number.isInteger(Pt)||Pt<0)){throw new rn("maxCachedSessions must be a positive integer or zero")}const un={path:In,...dn};const pn=new on(Pt==null?100:Pt);cn=cn==null?1e4:cn;Wt=Wt!=null?Wt:false;return function connect({hostname:Pt,host:rn,protocol:In,port:on,servername:dn,localAddress:mn,httpSocket:bn},Gn){let hn;if(In==="https:"){if(!sn){sn=en(64756)}dn=dn||un.servername||an.getServerName(rn)||null;const tn=dn||Pt;const In=pn.get(tn)||null;nn(tn);hn=sn.connect({highWaterMark:16384,...un,servername:dn,session:In,localAddress:mn,ALPNProtocols:Wt?["http/1.1","h2"]:["http/1.1"],socket:bn,port:on||443,host:Pt});hn.on("session",(function(Wt){pn.set(tn,Wt)}))}else{nn(!bn,"httpSocket can only be sent on TLS update");hn=tn.connect({highWaterMark:64*1024,...un,localAddress:mn,port:on||80,host:Pt})}if(un.keepAlive==null||un.keepAlive){const Wt=un.keepAliveInitialDelay===undefined?6e4:un.keepAliveInitialDelay;hn.setKeepAlive(true,Wt)}const Zn=setupTimeout((()=>onConnectTimeout(hn)),cn);hn.setNoDelay(true).once(In==="https:"?"secureConnect":"connect",(function(){Zn();if(Gn){const Wt=Gn;Gn=null;Wt(null,this)}})).on("error",(function(Wt){Zn();if(Gn){const Pt=Gn;Gn=null;Pt(Wt)}}));return hn}}function setupTimeout(Wt,Pt){if(!Pt){return()=>{}}let en=null;let tn=null;const nn=setTimeout((()=>{en=setImmediate((()=>{if(process.platform==="win32"){tn=setImmediate((()=>Wt()))}else{Wt()}}))}),Pt);return()=>{clearTimeout(nn);clearImmediate(en);clearImmediate(tn)}}function onConnectTimeout(Wt){an.destroy(Wt,new In)}Wt.exports=buildConnector},10735:Wt=>{"use strict";const Pt={};const en=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let Wt=0;Wt{"use strict";class UndiciError extends Error{constructor(Wt){super(Wt);this.name="UndiciError";this.code="UND_ERR"}}class ConnectTimeoutError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,ConnectTimeoutError);this.name="ConnectTimeoutError";this.message=Wt||"Connect Timeout Error";this.code="UND_ERR_CONNECT_TIMEOUT"}}class HeadersTimeoutError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,HeadersTimeoutError);this.name="HeadersTimeoutError";this.message=Wt||"Headers Timeout Error";this.code="UND_ERR_HEADERS_TIMEOUT"}}class HeadersOverflowError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,HeadersOverflowError);this.name="HeadersOverflowError";this.message=Wt||"Headers Overflow Error";this.code="UND_ERR_HEADERS_OVERFLOW"}}class BodyTimeoutError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,BodyTimeoutError);this.name="BodyTimeoutError";this.message=Wt||"Body Timeout Error";this.code="UND_ERR_BODY_TIMEOUT"}}class ResponseStatusCodeError extends UndiciError{constructor(Wt,Pt,en,tn){super(Wt);Error.captureStackTrace(this,ResponseStatusCodeError);this.name="ResponseStatusCodeError";this.message=Wt||"Response Status Code Error";this.code="UND_ERR_RESPONSE_STATUS_CODE";this.body=tn;this.status=Pt;this.statusCode=Pt;this.headers=en}}class InvalidArgumentError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,InvalidArgumentError);this.name="InvalidArgumentError";this.message=Wt||"Invalid Argument Error";this.code="UND_ERR_INVALID_ARG"}}class InvalidReturnValueError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,InvalidReturnValueError);this.name="InvalidReturnValueError";this.message=Wt||"Invalid Return Value Error";this.code="UND_ERR_INVALID_RETURN_VALUE"}}class RequestAbortedError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,RequestAbortedError);this.name="AbortError";this.message=Wt||"Request aborted";this.code="UND_ERR_ABORTED"}}class InformationalError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,InformationalError);this.name="InformationalError";this.message=Wt||"Request information";this.code="UND_ERR_INFO"}}class RequestContentLengthMismatchError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,RequestContentLengthMismatchError);this.name="RequestContentLengthMismatchError";this.message=Wt||"Request body length does not match content-length header";this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}}class ResponseContentLengthMismatchError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,ResponseContentLengthMismatchError);this.name="ResponseContentLengthMismatchError";this.message=Wt||"Response body length does not match content-length header";this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}}class ClientDestroyedError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,ClientDestroyedError);this.name="ClientDestroyedError";this.message=Wt||"The client is destroyed";this.code="UND_ERR_DESTROYED"}}class ClientClosedError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,ClientClosedError);this.name="ClientClosedError";this.message=Wt||"The client is closed";this.code="UND_ERR_CLOSED"}}class SocketError extends UndiciError{constructor(Wt,Pt){super(Wt);Error.captureStackTrace(this,SocketError);this.name="SocketError";this.message=Wt||"Socket error";this.code="UND_ERR_SOCKET";this.socket=Pt}}class NotSupportedError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,NotSupportedError);this.name="NotSupportedError";this.message=Wt||"Not supported error";this.code="UND_ERR_NOT_SUPPORTED"}}class BalancedPoolMissingUpstreamError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,NotSupportedError);this.name="MissingUpstreamError";this.message=Wt||"No upstream has been added to the BalancedPool";this.code="UND_ERR_BPL_MISSING_UPSTREAM"}}class HTTPParserError extends Error{constructor(Wt,Pt,en){super(Wt);Error.captureStackTrace(this,HTTPParserError);this.name="HTTPParserError";this.code=Pt?`HPE_${Pt}`:undefined;this.data=en?en.toString():undefined}}class ResponseExceededMaxSizeError extends UndiciError{constructor(Wt){super(Wt);Error.captureStackTrace(this,ResponseExceededMaxSizeError);this.name="ResponseExceededMaxSizeError";this.message=Wt||"Response content exceeded max size";this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}}class RequestRetryError extends UndiciError{constructor(Wt,Pt,{headers:en,data:tn}){super(Wt);Error.captureStackTrace(this,RequestRetryError);this.name="RequestRetryError";this.message=Wt||"Request retry error";this.code="UND_ERR_REQ_RETRY";this.statusCode=Pt;this.data=tn;this.headers=en}}Wt.exports={HTTPParserError:HTTPParserError,UndiciError:UndiciError,HeadersTimeoutError:HeadersTimeoutError,HeadersOverflowError:HeadersOverflowError,BodyTimeoutError:BodyTimeoutError,RequestContentLengthMismatchError:RequestContentLengthMismatchError,ConnectTimeoutError:ConnectTimeoutError,ResponseStatusCodeError:ResponseStatusCodeError,InvalidArgumentError:InvalidArgumentError,InvalidReturnValueError:InvalidReturnValueError,RequestAbortedError:RequestAbortedError,ClientDestroyedError:ClientDestroyedError,ClientClosedError:ClientClosedError,InformationalError:InformationalError,SocketError:SocketError,NotSupportedError:NotSupportedError,ResponseContentLengthMismatchError:ResponseContentLengthMismatchError,BalancedPoolMissingUpstreamError:BalancedPoolMissingUpstreamError,ResponseExceededMaxSizeError:ResponseExceededMaxSizeError,RequestRetryError:RequestRetryError}},44655:(Wt,Pt,en)=>{"use strict";const{InvalidArgumentError:tn,NotSupportedError:nn}=en(68707);const an=en(42613);const{kHTTP2BuildRequest:rn,kHTTP2CopyHeaders:In,kHTTP1BuildRequest:sn}=en(36443);const on=en(3440);const cn=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/;const dn=/[^\t\x20-\x7e\x80-\xff]/;const un=/[^\u0021-\u00ff]/;const pn=Symbol("handler");const mn={};let bn;try{const Wt=en(31637);mn.create=Wt.channel("undici:request:create");mn.bodySent=Wt.channel("undici:request:bodySent");mn.headers=Wt.channel("undici:request:headers");mn.trailers=Wt.channel("undici:request:trailers");mn.error=Wt.channel("undici:request:error")}catch{mn.create={hasSubscribers:false};mn.bodySent={hasSubscribers:false};mn.headers={hasSubscribers:false};mn.trailers={hasSubscribers:false};mn.error={hasSubscribers:false}}class Request{constructor(Wt,{path:Pt,method:nn,body:an,headers:rn,query:In,idempotent:sn,blocking:dn,upgrade:Gn,headersTimeout:hn,bodyTimeout:Zn,reset:An,throwOnError:Wn,expectContinue:Nn},gn){if(typeof Pt!=="string"){throw new tn("path must be a string")}else if(Pt[0]!=="/"&&!(Pt.startsWith("http://")||Pt.startsWith("https://"))&&nn!=="CONNECT"){throw new tn("path must be an absolute URL or start with a slash")}else if(un.exec(Pt)!==null){throw new tn("invalid request path")}if(typeof nn!=="string"){throw new tn("method must be a string")}else if(cn.exec(nn)===null){throw new tn("invalid request method")}if(Gn&&typeof Gn!=="string"){throw new tn("upgrade must be a string")}if(hn!=null&&(!Number.isFinite(hn)||hn<0)){throw new tn("invalid headersTimeout")}if(Zn!=null&&(!Number.isFinite(Zn)||Zn<0)){throw new tn("invalid bodyTimeout")}if(An!=null&&typeof An!=="boolean"){throw new tn("invalid reset")}if(Nn!=null&&typeof Nn!=="boolean"){throw new tn("invalid expectContinue")}this.headersTimeout=hn;this.bodyTimeout=Zn;this.throwOnError=Wn===true;this.method=nn;this.abort=null;if(an==null){this.body=null}else if(on.isStream(an)){this.body=an;const Wt=this.body._readableState;if(!Wt||!Wt.autoDestroy){this.endHandler=function autoDestroy(){on.destroy(this)};this.body.on("end",this.endHandler)}this.errorHandler=Wt=>{if(this.abort){this.abort(Wt)}else{this.error=Wt}};this.body.on("error",this.errorHandler)}else if(on.isBuffer(an)){this.body=an.byteLength?an:null}else if(ArrayBuffer.isView(an)){this.body=an.buffer.byteLength?Buffer.from(an.buffer,an.byteOffset,an.byteLength):null}else if(an instanceof ArrayBuffer){this.body=an.byteLength?Buffer.from(an):null}else if(typeof an==="string"){this.body=an.length?Buffer.from(an):null}else if(on.isFormDataLike(an)||on.isIterable(an)||on.isBlobLike(an)){this.body=an}else{throw new tn("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable")}this.completed=false;this.aborted=false;this.upgrade=Gn||null;this.path=In?on.buildURL(Pt,In):Pt;this.origin=Wt;this.idempotent=sn==null?nn==="HEAD"||nn==="GET":sn;this.blocking=dn==null?false:dn;this.reset=An==null?null:An;this.host=null;this.contentLength=null;this.contentType=null;this.headers="";this.expectContinue=Nn!=null?Nn:false;if(Array.isArray(rn)){if(rn.length%2!==0){throw new tn("headers array must be even")}for(let Wt=0;Wt{Wt.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kHeadersList:Symbol("headers list"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kHTTP2BuildRequest:Symbol("http2 build request"),kHTTP1BuildRequest:Symbol("http1 build request"),kHTTP2CopyHeaders:Symbol("http2 copy headers"),kHTTPConnVersion:Symbol("http connection version"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable")}},3440:(Wt,Pt,en)=>{"use strict";const tn=en(42613);const{kDestroyed:nn,kBodyUsed:an}=en(36443);const{IncomingMessage:rn}=en(58611);const In=en(2203);const sn=en(69278);const{InvalidArgumentError:on}=en(68707);const{Blob:cn}=en(20181);const dn=en(39023);const{stringify:un}=en(83480);const{headerNameLowerCasedRecord:pn}=en(10735);const[mn,bn]=process.versions.node.split(".").map((Wt=>Number(Wt)));function nop(){}function isStream(Wt){return Wt&&typeof Wt==="object"&&typeof Wt.pipe==="function"&&typeof Wt.on==="function"}function isBlobLike(Wt){return cn&&Wt instanceof cn||Wt&&typeof Wt==="object"&&(typeof Wt.stream==="function"||typeof Wt.arrayBuffer==="function")&&/^(Blob|File)$/.test(Wt[Symbol.toStringTag])}function buildURL(Wt,Pt){if(Wt.includes("?")||Wt.includes("#")){throw new Error('Query params cannot be passed when url already contains "?" or "#".')}const en=un(Pt);if(en){Wt+="?"+en}return Wt}function parseURL(Wt){if(typeof Wt==="string"){Wt=new URL(Wt);if(!/^https?:/.test(Wt.origin||Wt.protocol)){throw new on("Invalid URL protocol: the URL must start with `http:` or `https:`.")}return Wt}if(!Wt||typeof Wt!=="object"){throw new on("Invalid URL: The URL argument must be a non-null object.")}if(!/^https?:/.test(Wt.origin||Wt.protocol)){throw new on("Invalid URL protocol: the URL must start with `http:` or `https:`.")}if(!(Wt instanceof URL)){if(Wt.port!=null&&Wt.port!==""&&!Number.isFinite(parseInt(Wt.port))){throw new on("Invalid URL: port must be a valid integer or a string representation of an integer.")}if(Wt.path!=null&&typeof Wt.path!=="string"){throw new on("Invalid URL path: the path must be a string or null/undefined.")}if(Wt.pathname!=null&&typeof Wt.pathname!=="string"){throw new on("Invalid URL pathname: the pathname must be a string or null/undefined.")}if(Wt.hostname!=null&&typeof Wt.hostname!=="string"){throw new on("Invalid URL hostname: the hostname must be a string or null/undefined.")}if(Wt.origin!=null&&typeof Wt.origin!=="string"){throw new on("Invalid URL origin: the origin must be a string or null/undefined.")}const Pt=Wt.port!=null?Wt.port:Wt.protocol==="https:"?443:80;let en=Wt.origin!=null?Wt.origin:`${Wt.protocol}//${Wt.hostname}:${Pt}`;let tn=Wt.path!=null?Wt.path:`${Wt.pathname||""}${Wt.search||""}`;if(en.endsWith("/")){en=en.substring(0,en.length-1)}if(tn&&!tn.startsWith("/")){tn=`/${tn}`}Wt=new URL(en+tn)}return Wt}function parseOrigin(Wt){Wt=parseURL(Wt);if(Wt.pathname!=="/"||Wt.search||Wt.hash){throw new on("invalid url")}return Wt}function getHostname(Wt){if(Wt[0]==="["){const Pt=Wt.indexOf("]");tn(Pt!==-1);return Wt.substring(1,Pt)}const Pt=Wt.indexOf(":");if(Pt===-1)return Wt;return Wt.substring(0,Pt)}function getServerName(Wt){if(!Wt){return null}tn.strictEqual(typeof Wt,"string");const Pt=getHostname(Wt);if(sn.isIP(Pt)){return""}return Pt}function deepClone(Wt){return JSON.parse(JSON.stringify(Wt))}function isAsyncIterable(Wt){return!!(Wt!=null&&typeof Wt[Symbol.asyncIterator]==="function")}function isIterable(Wt){return!!(Wt!=null&&(typeof Wt[Symbol.iterator]==="function"||typeof Wt[Symbol.asyncIterator]==="function"))}function bodyLength(Wt){if(Wt==null){return 0}else if(isStream(Wt)){const Pt=Wt._readableState;return Pt&&Pt.objectMode===false&&Pt.ended===true&&Number.isFinite(Pt.length)?Pt.length:null}else if(isBlobLike(Wt)){return Wt.size!=null?Wt.size:null}else if(isBuffer(Wt)){return Wt.byteLength}return null}function isDestroyed(Wt){return!Wt||!!(Wt.destroyed||Wt[nn])}function isReadableAborted(Wt){const Pt=Wt&&Wt._readableState;return isDestroyed(Wt)&&Pt&&!Pt.endEmitted}function destroy(Wt,Pt){if(Wt==null||!isStream(Wt)||isDestroyed(Wt)){return}if(typeof Wt.destroy==="function"){if(Object.getPrototypeOf(Wt).constructor===rn){Wt.socket=null}Wt.destroy(Pt)}else if(Pt){process.nextTick(((Wt,Pt)=>{Wt.emit("error",Pt)}),Wt,Pt)}if(Wt.destroyed!==true){Wt[nn]=true}}const Gn=/timeout=(\d+)/;function parseKeepAliveTimeout(Wt){const Pt=Wt.toString().match(Gn);return Pt?parseInt(Pt[1],10)*1e3:null}function headerNameToString(Wt){return pn[Wt]||Wt.toLowerCase()}function parseHeaders(Wt,Pt={}){if(!Array.isArray(Wt))return Wt;for(let en=0;enWt.toString("utf8")))}else{Pt[tn]=Wt[en+1].toString("utf8")}}else{if(!Array.isArray(nn)){nn=[nn];Pt[tn]=nn}nn.push(Wt[en+1].toString("utf8"))}}if("content-length"in Pt&&"content-disposition"in Pt){Pt["content-disposition"]=Buffer.from(Pt["content-disposition"]).toString("latin1")}return Pt}function parseRawHeaders(Wt){const Pt=[];let en=false;let tn=-1;for(let nn=0;nn{Wt.close()}))}else{const Pt=Buffer.isBuffer(tn)?tn:Buffer.from(tn);Wt.enqueue(new Uint8Array(Pt))}return Wt.desiredSize>0},async cancel(Wt){await Pt.return()}},0)}function isFormDataLike(Wt){return Wt&&typeof Wt==="object"&&typeof Wt.append==="function"&&typeof Wt.delete==="function"&&typeof Wt.get==="function"&&typeof Wt.getAll==="function"&&typeof Wt.has==="function"&&typeof Wt.set==="function"&&Wt[Symbol.toStringTag]==="FormData"}function throwIfAborted(Wt){if(!Wt){return}if(typeof Wt.throwIfAborted==="function"){Wt.throwIfAborted()}else{if(Wt.aborted){const Wt=new Error("The operation was aborted");Wt.name="AbortError";throw Wt}}}function addAbortListener(Wt,Pt){if("addEventListener"in Wt){Wt.addEventListener("abort",Pt,{once:true});return()=>Wt.removeEventListener("abort",Pt)}Wt.addListener("abort",Pt);return()=>Wt.removeListener("abort",Pt)}const Zn=!!String.prototype.toWellFormed;function toUSVString(Wt){if(Zn){return`${Wt}`.toWellFormed()}else if(dn.toUSVString){return dn.toUSVString(Wt)}return`${Wt}`}function parseRangeHeader(Wt){if(Wt==null||Wt==="")return{start:0,end:null,size:null};const Pt=Wt?Wt.match(/^bytes (\d+)-(\d+)\/(\d+)?$/):null;return Pt?{start:parseInt(Pt[1]),end:Pt[2]?parseInt(Pt[2]):null,size:Pt[3]?parseInt(Pt[3]):null}:null}const An=Object.create(null);An.enumerable=true;Wt.exports={kEnumerableProperty:An,nop:nop,isDisturbed:isDisturbed,isErrored:isErrored,isReadable:isReadable,toUSVString:toUSVString,isReadableAborted:isReadableAborted,isBlobLike:isBlobLike,parseOrigin:parseOrigin,parseURL:parseURL,getServerName:getServerName,isStream:isStream,isIterable:isIterable,isAsyncIterable:isAsyncIterable,isDestroyed:isDestroyed,headerNameToString:headerNameToString,parseRawHeaders:parseRawHeaders,parseHeaders:parseHeaders,parseKeepAliveTimeout:parseKeepAliveTimeout,destroy:destroy,bodyLength:bodyLength,deepClone:deepClone,ReadableStreamFrom:ReadableStreamFrom,isBuffer:isBuffer,validateHandler:validateHandler,getSocketInfo:getSocketInfo,isFormDataLike:isFormDataLike,buildURL:buildURL,throwIfAborted:throwIfAborted,addAbortListener:addAbortListener,parseRangeHeader:parseRangeHeader,nodeMajor:mn,nodeMinor:bn,nodeHasAutoSelectFamily:mn>18||mn===18&&bn>=13,safeHTTPMethods:["GET","HEAD","OPTIONS","TRACE"]}},50001:(Wt,Pt,en)=>{"use strict";const tn=en(28611);const{ClientDestroyedError:nn,ClientClosedError:an,InvalidArgumentError:rn}=en(68707);const{kDestroy:In,kClose:sn,kDispatch:on,kInterceptors:cn}=en(36443);const dn=Symbol("destroyed");const un=Symbol("closed");const pn=Symbol("onDestroyed");const mn=Symbol("onClosed");const bn=Symbol("Intercepted Dispatch");class DispatcherBase extends tn{constructor(){super();this[dn]=false;this[pn]=null;this[un]=false;this[mn]=[]}get destroyed(){return this[dn]}get closed(){return this[un]}get interceptors(){return this[cn]}set interceptors(Wt){if(Wt){for(let Pt=Wt.length-1;Pt>=0;Pt--){const Wt=this[cn][Pt];if(typeof Wt!=="function"){throw new rn("interceptor must be an function")}}}this[cn]=Wt}close(Wt){if(Wt===undefined){return new Promise(((Wt,Pt)=>{this.close(((en,tn)=>en?Pt(en):Wt(tn)))}))}if(typeof Wt!=="function"){throw new rn("invalid callback")}if(this[dn]){queueMicrotask((()=>Wt(new nn,null)));return}if(this[un]){if(this[mn]){this[mn].push(Wt)}else{queueMicrotask((()=>Wt(null,null)))}return}this[un]=true;this[mn].push(Wt);const onClosed=()=>{const Wt=this[mn];this[mn]=null;for(let Pt=0;Ptthis.destroy())).then((()=>{queueMicrotask(onClosed)}))}destroy(Wt,Pt){if(typeof Wt==="function"){Pt=Wt;Wt=null}if(Pt===undefined){return new Promise(((Pt,en)=>{this.destroy(Wt,((Wt,tn)=>Wt?en(Wt):Pt(tn)))}))}if(typeof Pt!=="function"){throw new rn("invalid callback")}if(this[dn]){if(this[pn]){this[pn].push(Pt)}else{queueMicrotask((()=>Pt(null,null)))}return}if(!Wt){Wt=new nn}this[dn]=true;this[pn]=this[pn]||[];this[pn].push(Pt);const onDestroyed=()=>{const Wt=this[pn];this[pn]=null;for(let Pt=0;Pt{queueMicrotask(onDestroyed)}))}[bn](Wt,Pt){if(!this[cn]||this[cn].length===0){this[bn]=this[on];return this[on](Wt,Pt)}let en=this[on].bind(this);for(let Wt=this[cn].length-1;Wt>=0;Wt--){en=this[cn][Wt](en)}this[bn]=en;return en(Wt,Pt)}dispatch(Wt,Pt){if(!Pt||typeof Pt!=="object"){throw new rn("handler must be an object")}try{if(!Wt||typeof Wt!=="object"){throw new rn("opts must be an object.")}if(this[dn]||this[pn]){throw new nn}if(this[un]){throw new an}return this[bn](Wt,Pt)}catch(Wt){if(typeof Pt.onError!=="function"){throw new rn("invalid onError method")}Pt.onError(Wt);return false}}}Wt.exports=DispatcherBase},28611:(Wt,Pt,en)=>{"use strict";const tn=en(24434);class Dispatcher extends tn{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}}Wt.exports=Dispatcher},8923:(Wt,Pt,en)=>{"use strict";const tn=en(89581);const nn=en(3440);const{ReadableStreamFrom:an,isBlobLike:rn,isReadableStreamLike:In,readableStreamClose:sn,createDeferredPromise:on,fullyReadBody:cn}=en(15523);const{FormData:dn}=en(43073);const{kState:un}=en(89710);const{webidl:pn}=en(74222);const{DOMException:mn,structuredClone:bn}=en(87326);const{Blob:Gn,File:hn}=en(20181);const{kBodyUsed:Zn}=en(36443);const An=en(42613);const{isErrored:Wn}=en(3440);const{isUint8Array:Nn,isArrayBuffer:gn}=en(98253);const{File:yn}=en(63041);const{parseMIMEType:vn,serializeAMimeType:Yn}=en(94322);let En=globalThis.ReadableStream;const Vn=hn??yn;const Rn=new TextEncoder;const wn=new TextDecoder;function extractBody(Wt,Pt=false){if(!En){En=en(63774).ReadableStream}let tn=null;if(Wt instanceof En){tn=Wt}else if(rn(Wt)){tn=Wt.stream()}else{tn=new En({async pull(Wt){Wt.enqueue(typeof cn==="string"?Rn.encode(cn):cn);queueMicrotask((()=>sn(Wt)))},start(){},type:undefined})}An(In(tn));let on=null;let cn=null;let dn=null;let un=null;if(typeof Wt==="string"){cn=Wt;un="text/plain;charset=UTF-8"}else if(Wt instanceof URLSearchParams){cn=Wt.toString();un="application/x-www-form-urlencoded;charset=UTF-8"}else if(gn(Wt)){cn=new Uint8Array(Wt.slice())}else if(ArrayBuffer.isView(Wt)){cn=new Uint8Array(Wt.buffer.slice(Wt.byteOffset,Wt.byteOffset+Wt.byteLength))}else if(nn.isFormDataLike(Wt)){const Pt=`----formdata-undici-0${`${Math.floor(Math.random()*1e11)}`.padStart(11,"0")}`;const en=`--${Pt}\r\nContent-Disposition: form-data` +/*! formdata-polyfill. MIT License. Jimmy Wärting */;const escape=Wt=>Wt.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22");const normalizeLinefeeds=Wt=>Wt.replace(/\r?\n|\r/g,"\r\n");const tn=[];const nn=new Uint8Array([13,10]);dn=0;let an=false;for(const[Pt,rn]of Wt){if(typeof rn==="string"){const Wt=Rn.encode(en+`; name="${escape(normalizeLinefeeds(Pt))}"`+`\r\n\r\n${normalizeLinefeeds(rn)}\r\n`);tn.push(Wt);dn+=Wt.byteLength}else{const Wt=Rn.encode(`${en}; name="${escape(normalizeLinefeeds(Pt))}"`+(rn.name?`; filename="${escape(rn.name)}"`:"")+"\r\n"+`Content-Type: ${rn.type||"application/octet-stream"}\r\n\r\n`);tn.push(Wt,rn,nn);if(typeof rn.size==="number"){dn+=Wt.byteLength+rn.size+nn.byteLength}else{an=true}}}const rn=Rn.encode(`--${Pt}--`);tn.push(rn);dn+=rn.byteLength;if(an){dn=null}cn=Wt;on=async function*(){for(const Wt of tn){if(Wt.stream){yield*Wt.stream()}else{yield Wt}}};un="multipart/form-data; boundary="+Pt}else if(rn(Wt)){cn=Wt;dn=Wt.size;if(Wt.type){un=Wt.type}}else if(typeof Wt[Symbol.asyncIterator]==="function"){if(Pt){throw new TypeError("keepalive")}if(nn.isDisturbed(Wt)||Wt.locked){throw new TypeError("Response body object should not be disturbed or locked")}tn=Wt instanceof En?Wt:an(Wt)}if(typeof cn==="string"||nn.isBuffer(cn)){dn=Buffer.byteLength(cn)}if(on!=null){let Pt;tn=new En({async start(){Pt=on(Wt)[Symbol.asyncIterator]()},async pull(Wt){const{value:en,done:nn}=await Pt.next();if(nn){queueMicrotask((()=>{Wt.close()}))}else{if(!Wn(tn)){Wt.enqueue(new Uint8Array(en))}}return Wt.desiredSize>0},async cancel(Wt){await Pt.return()},type:undefined})}const pn={stream:tn,source:cn,length:dn};return[pn,un]}function safelyExtractBody(Wt,Pt=false){if(!En){En=en(63774).ReadableStream}if(Wt instanceof En){An(!nn.isDisturbed(Wt),"The body has already been consumed.");An(!Wt.locked,"The stream is locked.")}return extractBody(Wt,Pt)}function cloneBody(Wt){const[Pt,en]=Wt.stream.tee();const tn=bn(en,{transfer:[en]});const[,nn]=tn.tee();Wt.stream=Pt;return{stream:nn,length:Wt.length,source:Wt.source}}async function*consumeBody(Wt){if(Wt){if(Nn(Wt)){yield Wt}else{const Pt=Wt.stream;if(nn.isDisturbed(Pt)){throw new TypeError("The body has already been consumed.")}if(Pt.locked){throw new TypeError("The stream is locked.")}Pt[Zn]=true;yield*Pt}}}function throwIfAborted(Wt){if(Wt.aborted){throw new mn("The operation was aborted.","AbortError")}}function bodyMixinMethods(Wt){const Pt={blob(){return specConsumeBody(this,(Wt=>{let Pt=bodyMimeType(this);if(Pt==="failure"){Pt=""}else if(Pt){Pt=Yn(Pt)}return new Gn([Wt],{type:Pt})}),Wt)},arrayBuffer(){return specConsumeBody(this,(Wt=>new Uint8Array(Wt).buffer),Wt)},text(){return specConsumeBody(this,utf8DecodeBytes,Wt)},json(){return specConsumeBody(this,parseJSONFromBytes,Wt)},async formData(){pn.brandCheck(this,Wt);throwIfAborted(this[un]);const Pt=this.headers.get("Content-Type");if(/multipart\/form-data/.test(Pt)){const Wt={};for(const[Pt,en]of this.headers)Wt[Pt.toLowerCase()]=en;const Pt=new dn;let en;try{en=new tn({headers:Wt,preservePath:true})}catch(Wt){throw new mn(`${Wt}`,"AbortError")}en.on("field",((Wt,en)=>{Pt.append(Wt,en)}));en.on("file",((Wt,en,tn,nn,an)=>{const rn=[];if(nn==="base64"||nn.toLowerCase()==="base64"){let nn="";en.on("data",(Wt=>{nn+=Wt.toString().replace(/[\r\n]/gm,"");const Pt=nn.length-nn.length%4;rn.push(Buffer.from(nn.slice(0,Pt),"base64"));nn=nn.slice(Pt)}));en.on("end",(()=>{rn.push(Buffer.from(nn,"base64"));Pt.append(Wt,new Vn(rn,tn,{type:an}))}))}else{en.on("data",(Wt=>{rn.push(Wt)}));en.on("end",(()=>{Pt.append(Wt,new Vn(rn,tn,{type:an}))}))}}));const nn=new Promise(((Wt,Pt)=>{en.on("finish",Wt);en.on("error",(Wt=>Pt(new TypeError(Wt))))}));if(this.body!==null)for await(const Wt of consumeBody(this[un].body))en.write(Wt);en.end();await nn;return Pt}else if(/application\/x-www-form-urlencoded/.test(Pt)){let Wt;try{let Pt="";const en=new TextDecoder("utf-8",{ignoreBOM:true});for await(const Wt of consumeBody(this[un].body)){if(!Nn(Wt)){throw new TypeError("Expected Uint8Array chunk")}Pt+=en.decode(Wt,{stream:true})}Pt+=en.decode();Wt=new URLSearchParams(Pt)}catch(Wt){throw Object.assign(new TypeError,{cause:Wt})}const Pt=new dn;for(const[en,tn]of Wt){Pt.append(en,tn)}return Pt}else{await Promise.resolve();throwIfAborted(this[un]);throw pn.errors.exception({header:`${Wt.name}.formData`,message:"Could not parse content as FormData."})}}};return Pt}function mixinBody(Wt){Object.assign(Wt.prototype,bodyMixinMethods(Wt))}async function specConsumeBody(Wt,Pt,en){pn.brandCheck(Wt,en);throwIfAborted(Wt[un]);if(bodyUnusable(Wt[un].body)){throw new TypeError("Body is unusable")}const tn=on();const errorSteps=Wt=>tn.reject(Wt);const successSteps=Wt=>{try{tn.resolve(Pt(Wt))}catch(Wt){errorSteps(Wt)}};if(Wt[un].body==null){successSteps(new Uint8Array);return tn.promise}await cn(Wt[un].body,successSteps,errorSteps);return tn.promise}function bodyUnusable(Wt){return Wt!=null&&(Wt.stream.locked||nn.isDisturbed(Wt.stream))}function utf8DecodeBytes(Wt){if(Wt.length===0){return""}if(Wt[0]===239&&Wt[1]===187&&Wt[2]===191){Wt=Wt.subarray(3)}const Pt=wn.decode(Wt);return Pt}function parseJSONFromBytes(Wt){return JSON.parse(utf8DecodeBytes(Wt))}function bodyMimeType(Wt){const{headersList:Pt}=Wt[un];const en=Pt.get("content-type");if(en===null){return"failure"}return vn(en)}Wt.exports={extractBody:extractBody,safelyExtractBody:safelyExtractBody,cloneBody:cloneBody,mixinBody:mixinBody}},87326:(Wt,Pt,en)=>{"use strict";const{MessageChannel:tn,receiveMessageOnPort:nn}=en(28167);const an=["GET","HEAD","POST"];const rn=new Set(an);const In=[101,204,205,304];const sn=[301,302,303,307,308];const on=new Set(sn);const cn=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","5060","5061","6000","6566","6665","6666","6667","6668","6669","6697","10080"];const dn=new Set(cn);const un=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"];const pn=new Set(un);const mn=["follow","manual","error"];const bn=["GET","HEAD","OPTIONS","TRACE"];const Gn=new Set(bn);const hn=["navigate","same-origin","no-cors","cors"];const Zn=["omit","same-origin","include"];const An=["default","no-store","reload","no-cache","force-cache","only-if-cached"];const Wn=["content-encoding","content-language","content-location","content-type","content-length"];const Nn=["half"];const gn=["CONNECT","TRACE","TRACK"];const yn=new Set(gn);const vn=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""];const Yn=new Set(vn);const En=globalThis.DOMException??(()=>{try{atob("~")}catch(Wt){return Object.getPrototypeOf(Wt).constructor}})();let Vn;const Rn=globalThis.structuredClone??function structuredClone(Wt,Pt=undefined){if(arguments.length===0){throw new TypeError("missing argument")}if(!Vn){Vn=new tn}Vn.port1.unref();Vn.port2.unref();Vn.port1.postMessage(Wt,Pt?.transfer);return nn(Vn.port2).message};Wt.exports={DOMException:En,structuredClone:Rn,subresource:vn,forbiddenMethods:gn,requestBodyHeader:Wn,referrerPolicy:un,requestRedirect:mn,requestMode:hn,requestCredentials:Zn,requestCache:An,redirectStatus:sn,corsSafeListedMethods:an,nullBodyStatus:In,safeMethods:bn,badPorts:cn,requestDuplex:Nn,subresourceSet:Yn,badPortsSet:dn,redirectStatusSet:on,corsSafeListedMethodsSet:rn,safeMethodsSet:Gn,forbiddenMethodsSet:yn,referrerPolicySet:pn}},94322:(Wt,Pt,en)=>{const tn=en(42613);const{atob:nn}=en(20181);const{isomorphicDecode:an}=en(15523);const rn=new TextEncoder;const In=/^[!#$%&'*+-.^_|~A-Za-z0-9]+$/;const sn=/(\u000A|\u000D|\u0009|\u0020)/;const on=/[\u0009|\u0020-\u007E|\u0080-\u00FF]/;function dataURLProcessor(Wt){tn(Wt.protocol==="data:");let Pt=URLSerializer(Wt,true);Pt=Pt.slice(5);const en={position:0};let nn=collectASequenceOfCodePointsFast(",",Pt,en);const rn=nn.length;nn=removeASCIIWhitespace(nn,true,true);if(en.position>=Pt.length){return"failure"}en.position++;const In=Pt.slice(rn+1);let sn=stringPercentDecode(In);if(/;(\u0020){0,}base64$/i.test(nn)){const Wt=an(sn);sn=forgivingBase64(Wt);if(sn==="failure"){return"failure"}nn=nn.slice(0,-6);nn=nn.replace(/(\u0020)+$/,"");nn=nn.slice(0,-1)}if(nn.startsWith(";")){nn="text/plain"+nn}let on=parseMIMEType(nn);if(on==="failure"){on=parseMIMEType("text/plain;charset=US-ASCII")}return{mimeType:on,body:sn}}function URLSerializer(Wt,Pt=false){if(!Pt){return Wt.href}const en=Wt.href;const tn=Wt.hash.length;return tn===0?en:en.substring(0,en.length-tn)}function collectASequenceOfCodePoints(Wt,Pt,en){let tn="";while(en.positionWt.length){return"failure"}Pt.position++;let tn=collectASequenceOfCodePointsFast(";",Wt,Pt);tn=removeHTTPWhitespace(tn,false,true);if(tn.length===0||!In.test(tn)){return"failure"}const nn=en.toLowerCase();const an=tn.toLowerCase();const rn={type:nn,subtype:an,parameters:new Map,essence:`${nn}/${an}`};while(Pt.positionsn.test(Wt)),Wt,Pt);let en=collectASequenceOfCodePoints((Wt=>Wt!==";"&&Wt!=="="),Wt,Pt);en=en.toLowerCase();if(Pt.positionWt.length){break}let tn=null;if(Wt[Pt.position]==='"'){tn=collectAnHTTPQuotedString(Wt,Pt,true);collectASequenceOfCodePointsFast(";",Wt,Pt)}else{tn=collectASequenceOfCodePointsFast(";",Wt,Pt);tn=removeHTTPWhitespace(tn,false,true);if(tn.length===0){continue}}if(en.length!==0&&In.test(en)&&(tn.length===0||on.test(tn))&&!rn.parameters.has(en)){rn.parameters.set(en,tn)}}return rn}function forgivingBase64(Wt){Wt=Wt.replace(/[\u0009\u000A\u000C\u000D\u0020]/g,"");if(Wt.length%4===0){Wt=Wt.replace(/=?=$/,"")}if(Wt.length%4===1){return"failure"}if(/[^+/0-9A-Za-z]/.test(Wt)){return"failure"}const Pt=nn(Wt);const en=new Uint8Array(Pt.length);for(let Wt=0;WtWt!=='"'&&Wt!=="\\"),Wt,Pt);if(Pt.position>=Wt.length){break}const en=Wt[Pt.position];Pt.position++;if(en==="\\"){if(Pt.position>=Wt.length){an+="\\";break}an+=Wt[Pt.position];Pt.position++}else{tn(en==='"');break}}if(en){return an}return Wt.slice(nn,Pt.position)}function serializeAMimeType(Wt){tn(Wt!=="failure");const{parameters:Pt,essence:en}=Wt;let nn=en;for(let[Wt,en]of Pt.entries()){nn+=";";nn+=Wt;nn+="=";if(!In.test(en)){en=en.replace(/(\\|")/g,"\\$1");en='"'+en;en+='"'}nn+=en}return nn}function isHTTPWhiteSpace(Wt){return Wt==="\r"||Wt==="\n"||Wt==="\t"||Wt===" "}function removeHTTPWhitespace(Wt,Pt=true,en=true){let tn=0;let nn=Wt.length-1;if(Pt){for(;tn0&&isHTTPWhiteSpace(Wt[nn]);nn--);}return Wt.slice(tn,nn+1)}function isASCIIWhitespace(Wt){return Wt==="\r"||Wt==="\n"||Wt==="\t"||Wt==="\f"||Wt===" "}function removeASCIIWhitespace(Wt,Pt=true,en=true){let tn=0;let nn=Wt.length-1;if(Pt){for(;tn0&&isASCIIWhitespace(Wt[nn]);nn--);}return Wt.slice(tn,nn+1)}Wt.exports={dataURLProcessor:dataURLProcessor,URLSerializer:URLSerializer,collectASequenceOfCodePoints:collectASequenceOfCodePoints,collectASequenceOfCodePointsFast:collectASequenceOfCodePointsFast,stringPercentDecode:stringPercentDecode,parseMIMEType:parseMIMEType,collectAnHTTPQuotedString:collectAnHTTPQuotedString,serializeAMimeType:serializeAMimeType}},63041:(Wt,Pt,en)=>{"use strict";const{Blob:tn,File:nn}=en(20181);const{types:an}=en(39023);const{kState:rn}=en(89710);const{isBlobLike:In}=en(15523);const{webidl:sn}=en(74222);const{parseMIMEType:on,serializeAMimeType:cn}=en(94322);const{kEnumerableProperty:dn}=en(3440);const un=new TextEncoder;class File extends tn{constructor(Wt,Pt,en={}){sn.argumentLengthCheck(arguments,2,{header:"File constructor"});Wt=sn.converters["sequence"](Wt);Pt=sn.converters.USVString(Pt);en=sn.converters.FilePropertyBag(en);const tn=Pt;let nn=en.type;let an;e:{if(nn){nn=on(nn);if(nn==="failure"){nn="";break e}nn=cn(nn).toLowerCase()}an=en.lastModified}super(processBlobParts(Wt,en),{type:nn});this[rn]={name:tn,lastModified:an,type:nn}}get name(){sn.brandCheck(this,File);return this[rn].name}get lastModified(){sn.brandCheck(this,File);return this[rn].lastModified}get type(){sn.brandCheck(this,File);return this[rn].type}}class FileLike{constructor(Wt,Pt,en={}){const tn=Pt;const nn=en.type;const an=en.lastModified??Date.now();this[rn]={blobLike:Wt,name:tn,type:nn,lastModified:an}}stream(...Wt){sn.brandCheck(this,FileLike);return this[rn].blobLike.stream(...Wt)}arrayBuffer(...Wt){sn.brandCheck(this,FileLike);return this[rn].blobLike.arrayBuffer(...Wt)}slice(...Wt){sn.brandCheck(this,FileLike);return this[rn].blobLike.slice(...Wt)}text(...Wt){sn.brandCheck(this,FileLike);return this[rn].blobLike.text(...Wt)}get size(){sn.brandCheck(this,FileLike);return this[rn].blobLike.size}get type(){sn.brandCheck(this,FileLike);return this[rn].blobLike.type}get name(){sn.brandCheck(this,FileLike);return this[rn].name}get lastModified(){sn.brandCheck(this,FileLike);return this[rn].lastModified}get[Symbol.toStringTag](){return"File"}}Object.defineProperties(File.prototype,{[Symbol.toStringTag]:{value:"File",configurable:true},name:dn,lastModified:dn});sn.converters.Blob=sn.interfaceConverter(tn);sn.converters.BlobPart=function(Wt,Pt){if(sn.util.Type(Wt)==="Object"){if(In(Wt)){return sn.converters.Blob(Wt,{strict:false})}if(ArrayBuffer.isView(Wt)||an.isAnyArrayBuffer(Wt)){return sn.converters.BufferSource(Wt,Pt)}}return sn.converters.USVString(Wt,Pt)};sn.converters["sequence"]=sn.sequenceConverter(sn.converters.BlobPart);sn.converters.FilePropertyBag=sn.dictionaryConverter([{key:"lastModified",converter:sn.converters["long long"],get defaultValue(){return Date.now()}},{key:"type",converter:sn.converters.DOMString,defaultValue:""},{key:"endings",converter:Wt=>{Wt=sn.converters.DOMString(Wt);Wt=Wt.toLowerCase();if(Wt!=="native"){Wt="transparent"}return Wt},defaultValue:"transparent"}]);function processBlobParts(Wt,Pt){const en=[];for(const tn of Wt){if(typeof tn==="string"){let Wt=tn;if(Pt.endings==="native"){Wt=convertLineEndingsNative(Wt)}en.push(un.encode(Wt))}else if(an.isAnyArrayBuffer(tn)||an.isTypedArray(tn)){if(!tn.buffer){en.push(new Uint8Array(tn))}else{en.push(new Uint8Array(tn.buffer,tn.byteOffset,tn.byteLength))}}else if(In(tn)){en.push(tn)}}return en}function convertLineEndingsNative(Wt){let Pt="\n";if(process.platform==="win32"){Pt="\r\n"}return Wt.replace(/\r?\n/g,Pt)}function isFileLike(Wt){return nn&&Wt instanceof nn||Wt instanceof File||Wt&&(typeof Wt.stream==="function"||typeof Wt.arrayBuffer==="function")&&Wt[Symbol.toStringTag]==="File"}Wt.exports={File:File,FileLike:FileLike,isFileLike:isFileLike}},43073:(Wt,Pt,en)=>{"use strict";const{isBlobLike:tn,toUSVString:nn,makeIterator:an}=en(15523);const{kState:rn}=en(89710);const{File:In,FileLike:sn,isFileLike:on}=en(63041);const{webidl:cn}=en(74222);const{Blob:dn,File:un}=en(20181);const pn=un??In;class FormData{constructor(Wt){if(Wt!==undefined){throw cn.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]})}this[rn]=[]}append(Wt,Pt,en=undefined){cn.brandCheck(this,FormData);cn.argumentLengthCheck(arguments,2,{header:"FormData.append"});if(arguments.length===3&&!tn(Pt)){throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'")}Wt=cn.converters.USVString(Wt);Pt=tn(Pt)?cn.converters.Blob(Pt,{strict:false}):cn.converters.USVString(Pt);en=arguments.length===3?cn.converters.USVString(en):undefined;const nn=makeEntry(Wt,Pt,en);this[rn].push(nn)}delete(Wt){cn.brandCheck(this,FormData);cn.argumentLengthCheck(arguments,1,{header:"FormData.delete"});Wt=cn.converters.USVString(Wt);this[rn]=this[rn].filter((Pt=>Pt.name!==Wt))}get(Wt){cn.brandCheck(this,FormData);cn.argumentLengthCheck(arguments,1,{header:"FormData.get"});Wt=cn.converters.USVString(Wt);const Pt=this[rn].findIndex((Pt=>Pt.name===Wt));if(Pt===-1){return null}return this[rn][Pt].value}getAll(Wt){cn.brandCheck(this,FormData);cn.argumentLengthCheck(arguments,1,{header:"FormData.getAll"});Wt=cn.converters.USVString(Wt);return this[rn].filter((Pt=>Pt.name===Wt)).map((Wt=>Wt.value))}has(Wt){cn.brandCheck(this,FormData);cn.argumentLengthCheck(arguments,1,{header:"FormData.has"});Wt=cn.converters.USVString(Wt);return this[rn].findIndex((Pt=>Pt.name===Wt))!==-1}set(Wt,Pt,en=undefined){cn.brandCheck(this,FormData);cn.argumentLengthCheck(arguments,2,{header:"FormData.set"});if(arguments.length===3&&!tn(Pt)){throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'")}Wt=cn.converters.USVString(Wt);Pt=tn(Pt)?cn.converters.Blob(Pt,{strict:false}):cn.converters.USVString(Pt);en=arguments.length===3?nn(en):undefined;const an=makeEntry(Wt,Pt,en);const In=this[rn].findIndex((Pt=>Pt.name===Wt));if(In!==-1){this[rn]=[...this[rn].slice(0,In),an,...this[rn].slice(In+1).filter((Pt=>Pt.name!==Wt))]}else{this[rn].push(an)}}entries(){cn.brandCheck(this,FormData);return an((()=>this[rn].map((Wt=>[Wt.name,Wt.value]))),"FormData","key+value")}keys(){cn.brandCheck(this,FormData);return an((()=>this[rn].map((Wt=>[Wt.name,Wt.value]))),"FormData","key")}values(){cn.brandCheck(this,FormData);return an((()=>this[rn].map((Wt=>[Wt.name,Wt.value]))),"FormData","value")}forEach(Wt,Pt=globalThis){cn.brandCheck(this,FormData);cn.argumentLengthCheck(arguments,1,{header:"FormData.forEach"});if(typeof Wt!=="function"){throw new TypeError("Failed to execute 'forEach' on 'FormData': parameter 1 is not of type 'Function'.")}for(const[en,tn]of this){Wt.apply(Pt,[tn,en,this])}}}FormData.prototype[Symbol.iterator]=FormData.prototype.entries;Object.defineProperties(FormData.prototype,{[Symbol.toStringTag]:{value:"FormData",configurable:true}});function makeEntry(Wt,Pt,en){Wt=Buffer.from(Wt).toString("utf8");if(typeof Pt==="string"){Pt=Buffer.from(Pt).toString("utf8")}else{if(!on(Pt)){Pt=Pt instanceof dn?new pn([Pt],"blob",{type:Pt.type}):new sn(Pt,"blob",{type:Pt.type})}if(en!==undefined){const Wt={type:Pt.type,lastModified:Pt.lastModified};Pt=un&&Pt instanceof un||Pt instanceof In?new pn([Pt],en,Wt):new sn(Pt,en,Wt)}}return{name:Wt,value:Pt}}Wt.exports={FormData:FormData}},75628:Wt=>{"use strict";const Pt=Symbol.for("undici.globalOrigin.1");function getGlobalOrigin(){return globalThis[Pt]}function setGlobalOrigin(Wt){if(Wt===undefined){Object.defineProperty(globalThis,Pt,{value:undefined,writable:true,enumerable:false,configurable:false});return}const en=new URL(Wt);if(en.protocol!=="http:"&&en.protocol!=="https:"){throw new TypeError(`Only http & https urls are allowed, received ${en.protocol}`)}Object.defineProperty(globalThis,Pt,{value:en,writable:true,enumerable:false,configurable:false})}Wt.exports={getGlobalOrigin:getGlobalOrigin,setGlobalOrigin:setGlobalOrigin}},26349:(Wt,Pt,en)=>{"use strict";const{kHeadersList:tn,kConstruct:nn}=en(36443);const{kGuard:an}=en(89710);const{kEnumerableProperty:rn}=en(3440);const{makeIterator:In,isValidHeaderName:sn,isValidHeaderValue:on}=en(15523);const{webidl:cn}=en(74222);const dn=en(42613);const un=Symbol("headers map");const pn=Symbol("headers map sorted");function isHTTPWhiteSpaceCharCode(Wt){return Wt===10||Wt===13||Wt===9||Wt===32}function headerValueNormalize(Wt){let Pt=0;let en=Wt.length;while(en>Pt&&isHTTPWhiteSpaceCharCode(Wt.charCodeAt(en-1)))--en;while(en>Pt&&isHTTPWhiteSpaceCharCode(Wt.charCodeAt(Pt)))++Pt;return Pt===0&&en===Wt.length?Wt:Wt.substring(Pt,en)}function fill(Wt,Pt){if(Array.isArray(Pt)){for(let en=0;en>","record"]})}}function appendHeader(Wt,Pt,en){en=headerValueNormalize(en);if(!sn(Pt)){throw cn.errors.invalidArgument({prefix:"Headers.append",value:Pt,type:"header name"})}else if(!on(en)){throw cn.errors.invalidArgument({prefix:"Headers.append",value:en,type:"header value"})}if(Wt[an]==="immutable"){throw new TypeError("immutable")}else if(Wt[an]==="request-no-cors"){}return Wt[tn].append(Pt,en)}class HeadersList{cookies=null;constructor(Wt){if(Wt instanceof HeadersList){this[un]=new Map(Wt[un]);this[pn]=Wt[pn];this.cookies=Wt.cookies===null?null:[...Wt.cookies]}else{this[un]=new Map(Wt);this[pn]=null}}contains(Wt){Wt=Wt.toLowerCase();return this[un].has(Wt)}clear(){this[un].clear();this[pn]=null;this.cookies=null}append(Wt,Pt){this[pn]=null;const en=Wt.toLowerCase();const tn=this[un].get(en);if(tn){const Wt=en==="cookie"?"; ":", ";this[un].set(en,{name:tn.name,value:`${tn.value}${Wt}${Pt}`})}else{this[un].set(en,{name:Wt,value:Pt})}if(en==="set-cookie"){this.cookies??=[];this.cookies.push(Pt)}}set(Wt,Pt){this[pn]=null;const en=Wt.toLowerCase();if(en==="set-cookie"){this.cookies=[Pt]}this[un].set(en,{name:Wt,value:Pt})}delete(Wt){this[pn]=null;Wt=Wt.toLowerCase();if(Wt==="set-cookie"){this.cookies=null}this[un].delete(Wt)}get(Wt){const Pt=this[un].get(Wt.toLowerCase());return Pt===undefined?null:Pt.value}*[Symbol.iterator](){for(const[Wt,{value:Pt}]of this[un]){yield[Wt,Pt]}}get entries(){const Wt={};if(this[un].size){for(const{name:Pt,value:en}of this[un].values()){Wt[Pt]=en}}return Wt}}class Headers{constructor(Wt=undefined){if(Wt===nn){return}this[tn]=new HeadersList;this[an]="none";if(Wt!==undefined){Wt=cn.converters.HeadersInit(Wt);fill(this,Wt)}}append(Wt,Pt){cn.brandCheck(this,Headers);cn.argumentLengthCheck(arguments,2,{header:"Headers.append"});Wt=cn.converters.ByteString(Wt);Pt=cn.converters.ByteString(Pt);return appendHeader(this,Wt,Pt)}delete(Wt){cn.brandCheck(this,Headers);cn.argumentLengthCheck(arguments,1,{header:"Headers.delete"});Wt=cn.converters.ByteString(Wt);if(!sn(Wt)){throw cn.errors.invalidArgument({prefix:"Headers.delete",value:Wt,type:"header name"})}if(this[an]==="immutable"){throw new TypeError("immutable")}else if(this[an]==="request-no-cors"){}if(!this[tn].contains(Wt)){return}this[tn].delete(Wt)}get(Wt){cn.brandCheck(this,Headers);cn.argumentLengthCheck(arguments,1,{header:"Headers.get"});Wt=cn.converters.ByteString(Wt);if(!sn(Wt)){throw cn.errors.invalidArgument({prefix:"Headers.get",value:Wt,type:"header name"})}return this[tn].get(Wt)}has(Wt){cn.brandCheck(this,Headers);cn.argumentLengthCheck(arguments,1,{header:"Headers.has"});Wt=cn.converters.ByteString(Wt);if(!sn(Wt)){throw cn.errors.invalidArgument({prefix:"Headers.has",value:Wt,type:"header name"})}return this[tn].contains(Wt)}set(Wt,Pt){cn.brandCheck(this,Headers);cn.argumentLengthCheck(arguments,2,{header:"Headers.set"});Wt=cn.converters.ByteString(Wt);Pt=cn.converters.ByteString(Pt);Pt=headerValueNormalize(Pt);if(!sn(Wt)){throw cn.errors.invalidArgument({prefix:"Headers.set",value:Wt,type:"header name"})}else if(!on(Pt)){throw cn.errors.invalidArgument({prefix:"Headers.set",value:Pt,type:"header value"})}if(this[an]==="immutable"){throw new TypeError("immutable")}else if(this[an]==="request-no-cors"){}this[tn].set(Wt,Pt)}getSetCookie(){cn.brandCheck(this,Headers);const Wt=this[tn].cookies;if(Wt){return[...Wt]}return[]}get[pn](){if(this[tn][pn]){return this[tn][pn]}const Wt=[];const Pt=[...this[tn]].sort(((Wt,Pt)=>Wt[0]Wt),"Headers","key")}return In((()=>[...this[pn].values()]),"Headers","key")}values(){cn.brandCheck(this,Headers);if(this[an]==="immutable"){const Wt=this[pn];return In((()=>Wt),"Headers","value")}return In((()=>[...this[pn].values()]),"Headers","value")}entries(){cn.brandCheck(this,Headers);if(this[an]==="immutable"){const Wt=this[pn];return In((()=>Wt),"Headers","key+value")}return In((()=>[...this[pn].values()]),"Headers","key+value")}forEach(Wt,Pt=globalThis){cn.brandCheck(this,Headers);cn.argumentLengthCheck(arguments,1,{header:"Headers.forEach"});if(typeof Wt!=="function"){throw new TypeError("Failed to execute 'forEach' on 'Headers': parameter 1 is not of type 'Function'.")}for(const[en,tn]of this){Wt.apply(Pt,[tn,en,this])}}[Symbol.for("nodejs.util.inspect.custom")](){cn.brandCheck(this,Headers);return this[tn]}}Headers.prototype[Symbol.iterator]=Headers.prototype.entries;Object.defineProperties(Headers.prototype,{append:rn,delete:rn,get:rn,has:rn,set:rn,getSetCookie:rn,keys:rn,values:rn,entries:rn,forEach:rn,[Symbol.iterator]:{enumerable:false},[Symbol.toStringTag]:{value:"Headers",configurable:true}});cn.converters.HeadersInit=function(Wt){if(cn.util.Type(Wt)==="Object"){if(Wt[Symbol.iterator]){return cn.converters["sequence>"](Wt)}return cn.converters["record"](Wt)}throw cn.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};Wt.exports={fill:fill,Headers:Headers,HeadersList:HeadersList}},12315:(Wt,Pt,en)=>{"use strict";const{Response:tn,makeNetworkError:nn,makeAppropriateNetworkError:an,filterResponse:rn,makeResponse:In}=en(48676);const{Headers:sn}=en(26349);const{Request:on,makeRequest:cn}=en(25194);const dn=en(43106);const{bytesMatch:un,makePolicyContainer:pn,clonePolicyContainer:mn,requestBadPort:bn,TAOCheck:Gn,appendRequestOriginHeader:hn,responseLocationURL:Zn,requestCurrentURL:An,setRequestReferrerPolicyOnRedirect:Wn,tryUpgradeRequestToAPotentiallyTrustworthyURL:Nn,createOpaqueTimingInfo:gn,appendFetchMetadata:yn,corsCheck:vn,crossOriginResourcePolicyCheck:Yn,determineRequestsReferrer:En,coarsenedSharedCurrentTime:Vn,createDeferredPromise:Rn,isBlobLike:wn,sameOrigin:Fn,isCancelled:Qn,isAborted:fn,isErrorLike:Hn,fullyReadBody:Cn,readableStreamClose:Xn,isomorphicEncode:kn,urlIsLocal:Jn,urlIsHttpHttpsScheme:Ln,urlHasHttpsScheme:Bn}=en(15523);const{kState:xn,kHeaders:On,kGuard:Tn,kRealm:Un}=en(89710);const Mn=en(42613);const{safelyExtractBody:zn}=en(8923);const{redirectStatusSet:Sn,nullBodyStatus:jn,safeMethodsSet:Dn,requestBodyHeader:_n,subresourceSet:Kn,DOMException:Pn}=en(87326);const{kHeadersList:qn}=en(36443);const $n=en(24434);const{Readable:el,pipeline:tl}=en(2203);const{addAbortListener:nl,isErrored:ll,isReadable:al,nodeMajor:rl,nodeMinor:Il}=en(3440);const{dataURLProcessor:sl,serializeAMimeType:ol}=en(94322);const{TransformStream:cl}=en(63774);const{getGlobalDispatcher:il}=en(32581);const{webidl:dl}=en(74222);const{STATUS_CODES:ul}=en(58611);const pl=["GET","HEAD"];let ml;let bl=globalThis.ReadableStream;class Fetch extends $n{constructor(Wt){super();this.dispatcher=Wt;this.connection=null;this.dump=false;this.state="ongoing";this.setMaxListeners(21)}terminate(Wt){if(this.state!=="ongoing"){return}this.state="terminated";this.connection?.destroy(Wt);this.emit("terminated",Wt)}abort(Wt){if(this.state!=="ongoing"){return}this.state="aborted";if(!Wt){Wt=new Pn("The operation was aborted.","AbortError")}this.serializedAbortReason=Wt;this.connection?.destroy(Wt);this.emit("terminated",Wt)}}function fetch(Wt,Pt={}){dl.argumentLengthCheck(arguments,1,{header:"globalThis.fetch"});const en=Rn();let nn;try{nn=new on(Wt,Pt)}catch(Wt){en.reject(Wt);return en.promise}const an=nn[xn];if(nn.signal.aborted){abortFetch(en,an,null,nn.signal.reason);return en.promise}const rn=an.client.globalObject;if(rn?.constructor?.name==="ServiceWorkerGlobalScope"){an.serviceWorkers="none"}let In=null;const sn=null;let cn=false;let dn=null;nl(nn.signal,(()=>{cn=true;Mn(dn!=null);dn.abort(nn.signal.reason);abortFetch(en,an,In,nn.signal.reason)}));const handleFetchDone=Wt=>finalizeAndReportTiming(Wt,"fetch");const processResponse=Wt=>{if(cn){return Promise.resolve()}if(Wt.aborted){abortFetch(en,an,In,dn.serializedAbortReason);return Promise.resolve()}if(Wt.type==="error"){en.reject(Object.assign(new TypeError("fetch failed"),{cause:Wt.error}));return Promise.resolve()}In=new tn;In[xn]=Wt;In[Un]=sn;In[On][qn]=Wt.headersList;In[On][Tn]="immutable";In[On][Un]=sn;en.resolve(In)};dn=fetching({request:an,processResponseEndOfBody:handleFetchDone,processResponse:processResponse,dispatcher:Pt.dispatcher??il()});return en.promise}function finalizeAndReportTiming(Wt,Pt="other"){if(Wt.type==="error"&&Wt.aborted){return}if(!Wt.urlList?.length){return}const en=Wt.urlList[0];let tn=Wt.timingInfo;let nn=Wt.cacheState;if(!Ln(en)){return}if(tn===null){return}if(!Wt.timingAllowPassed){tn=gn({startTime:tn.startTime});nn=""}tn.endTime=Vn();Wt.timingInfo=tn;markResourceTiming(tn,en,Pt,globalThis,nn)}function markResourceTiming(Wt,Pt,en,tn,nn){if(rl>18||rl===18&&Il>=2){performance.markResourceTiming(Wt,Pt.href,en,tn,nn)}}function abortFetch(Wt,Pt,en,tn){if(!tn){tn=new Pn("The operation was aborted.","AbortError")}Wt.reject(tn);if(Pt.body!=null&&al(Pt.body?.stream)){Pt.body.stream.cancel(tn).catch((Wt=>{if(Wt.code==="ERR_INVALID_STATE"){return}throw Wt}))}if(en==null){return}const nn=en[xn];if(nn.body!=null&&al(nn.body?.stream)){nn.body.stream.cancel(tn).catch((Wt=>{if(Wt.code==="ERR_INVALID_STATE"){return}throw Wt}))}}function fetching({request:Wt,processRequestBodyChunkLength:Pt,processRequestEndOfBody:en,processResponse:tn,processResponseEndOfBody:nn,processResponseConsumeBody:an,useParallelQueue:rn=false,dispatcher:In}){let sn=null;let on=false;if(Wt.client!=null){sn=Wt.client.globalObject;on=Wt.client.crossOriginIsolatedCapability}const cn=Vn(on);const dn=gn({startTime:cn});const un={controller:new Fetch(In),request:Wt,timingInfo:dn,processRequestBodyChunkLength:Pt,processRequestEndOfBody:en,processResponse:tn,processResponseConsumeBody:an,processResponseEndOfBody:nn,taskDestination:sn,crossOriginIsolatedCapability:on};Mn(!Wt.body||Wt.body.stream);if(Wt.window==="client"){Wt.window=Wt.client?.globalObject?.constructor?.name==="Window"?Wt.client:"no-window"}if(Wt.origin==="client"){Wt.origin=Wt.client?.origin}if(Wt.policyContainer==="client"){if(Wt.client!=null){Wt.policyContainer=mn(Wt.client.policyContainer)}else{Wt.policyContainer=pn()}}if(!Wt.headersList.contains("accept")){const Pt="*/*";Wt.headersList.append("accept",Pt)}if(!Wt.headersList.contains("accept-language")){Wt.headersList.append("accept-language","*")}if(Wt.priority===null){}if(Kn.has(Wt.destination)){}mainFetch(un).catch((Wt=>{un.controller.terminate(Wt)}));return un.controller}async function mainFetch(Wt,Pt=false){const en=Wt.request;let tn=null;if(en.localURLsOnly&&!Jn(An(en))){tn=nn("local URLs only")}Nn(en);if(bn(en)==="blocked"){tn=nn("bad port")}if(en.referrerPolicy===""){en.referrerPolicy=en.policyContainer.referrerPolicy}if(en.referrer!=="no-referrer"){en.referrer=En(en)}if(tn===null){tn=await(async()=>{const Pt=An(en);if(Fn(Pt,en.url)&&en.responseTainting==="basic"||Pt.protocol==="data:"||(en.mode==="navigate"||en.mode==="websocket")){en.responseTainting="basic";return await schemeFetch(Wt)}if(en.mode==="same-origin"){return nn('request mode cannot be "same-origin"')}if(en.mode==="no-cors"){if(en.redirect!=="follow"){return nn('redirect mode cannot be "follow" for "no-cors" request')}en.responseTainting="opaque";return await schemeFetch(Wt)}if(!Ln(An(en))){return nn("URL scheme must be a HTTP(S) scheme")}en.responseTainting="cors";return await httpFetch(Wt)})()}if(Pt){return tn}if(tn.status!==0&&!tn.internalResponse){if(en.responseTainting==="cors"){}if(en.responseTainting==="basic"){tn=rn(tn,"basic")}else if(en.responseTainting==="cors"){tn=rn(tn,"cors")}else if(en.responseTainting==="opaque"){tn=rn(tn,"opaque")}else{Mn(false)}}let an=tn.status===0?tn:tn.internalResponse;if(an.urlList.length===0){an.urlList.push(...en.urlList)}if(!en.timingAllowFailed){tn.timingAllowPassed=true}if(tn.type==="opaque"&&an.status===206&&an.rangeRequested&&!en.headers.contains("range")){tn=an=nn()}if(tn.status!==0&&(en.method==="HEAD"||en.method==="CONNECT"||jn.includes(an.status))){an.body=null;Wt.controller.dump=true}if(en.integrity){const processBodyError=Pt=>fetchFinale(Wt,nn(Pt));if(en.responseTainting==="opaque"||tn.body==null){processBodyError(tn.error);return}const processBody=Pt=>{if(!un(Pt,en.integrity)){processBodyError("integrity mismatch");return}tn.body=zn(Pt)[0];fetchFinale(Wt,tn)};await Cn(tn.body,processBody,processBodyError)}else{fetchFinale(Wt,tn)}}function schemeFetch(Wt){if(Qn(Wt)&&Wt.request.redirectCount===0){return Promise.resolve(an(Wt))}const{request:Pt}=Wt;const{protocol:tn}=An(Pt);switch(tn){case"about:":{return Promise.resolve(nn("about scheme is not supported"))}case"blob:":{if(!ml){ml=en(20181).resolveObjectURL}const Wt=An(Pt);if(Wt.search.length!==0){return Promise.resolve(nn("NetworkError when attempting to fetch resource."))}const tn=ml(Wt.toString());if(Pt.method!=="GET"||!wn(tn)){return Promise.resolve(nn("invalid method"))}const an=zn(tn);const rn=an[0];const sn=kn(`${rn.length}`);const on=an[1]??"";const cn=In({statusText:"OK",headersList:[["content-length",{name:"Content-Length",value:sn}],["content-type",{name:"Content-Type",value:on}]]});cn.body=rn;return Promise.resolve(cn)}case"data:":{const Wt=An(Pt);const en=sl(Wt);if(en==="failure"){return Promise.resolve(nn("failed to fetch the data URL"))}const tn=ol(en.mimeType);return Promise.resolve(In({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:tn}]],body:zn(en.body)[0]}))}case"file:":{return Promise.resolve(nn("not implemented... yet..."))}case"http:":case"https:":{return httpFetch(Wt).catch((Wt=>nn(Wt)))}default:{return Promise.resolve(nn("unknown scheme"))}}}function finalizeResponse(Wt,Pt){Wt.request.done=true;if(Wt.processResponseDone!=null){queueMicrotask((()=>Wt.processResponseDone(Pt)))}}function fetchFinale(Wt,Pt){if(Pt.type==="error"){Pt.urlList=[Wt.request.urlList[0]];Pt.timingInfo=gn({startTime:Wt.timingInfo.startTime})}const processResponseEndOfBody=()=>{Wt.request.done=true;if(Wt.processResponseEndOfBody!=null){queueMicrotask((()=>Wt.processResponseEndOfBody(Pt)))}};if(Wt.processResponse!=null){queueMicrotask((()=>Wt.processResponse(Pt)))}if(Pt.body==null){processResponseEndOfBody()}else{const identityTransformAlgorithm=(Wt,Pt)=>{Pt.enqueue(Wt)};const Wt=new cl({start(){},transform:identityTransformAlgorithm,flush:processResponseEndOfBody},{size(){return 1}},{size(){return 1}});Pt.body={stream:Pt.body.stream.pipeThrough(Wt)}}if(Wt.processResponseConsumeBody!=null){const processBody=en=>Wt.processResponseConsumeBody(Pt,en);const processBodyError=en=>Wt.processResponseConsumeBody(Pt,en);if(Pt.body==null){queueMicrotask((()=>processBody(null)))}else{return Cn(Pt.body,processBody,processBodyError)}return Promise.resolve()}}async function httpFetch(Wt){const Pt=Wt.request;let en=null;let tn=null;const an=Wt.timingInfo;if(Pt.serviceWorkers==="all"){}if(en===null){if(Pt.redirect==="follow"){Pt.serviceWorkers="none"}tn=en=await httpNetworkOrCacheFetch(Wt);if(Pt.responseTainting==="cors"&&vn(Pt,en)==="failure"){return nn("cors failure")}if(Gn(Pt,en)==="failure"){Pt.timingAllowFailed=true}}if((Pt.responseTainting==="opaque"||en.type==="opaque")&&Yn(Pt.origin,Pt.client,Pt.destination,tn)==="blocked"){return nn("blocked")}if(Sn.has(tn.status)){if(Pt.redirect!=="manual"){Wt.controller.connection.destroy()}if(Pt.redirect==="error"){en=nn("unexpected redirect")}else if(Pt.redirect==="manual"){en=tn}else if(Pt.redirect==="follow"){en=await httpRedirectFetch(Wt,en)}else{Mn(false)}}en.timingInfo=an;return en}function httpRedirectFetch(Wt,Pt){const en=Wt.request;const tn=Pt.internalResponse?Pt.internalResponse:Pt;let an;try{an=Zn(tn,An(en).hash);if(an==null){return Pt}}catch(Wt){return Promise.resolve(nn(Wt))}if(!Ln(an)){return Promise.resolve(nn("URL scheme must be a HTTP(S) scheme"))}if(en.redirectCount===20){return Promise.resolve(nn("redirect count exceeded"))}en.redirectCount+=1;if(en.mode==="cors"&&(an.username||an.password)&&!Fn(en,an)){return Promise.resolve(nn('cross origin not allowed for request mode "cors"'))}if(en.responseTainting==="cors"&&(an.username||an.password)){return Promise.resolve(nn('URL cannot contain credentials for request mode "cors"'))}if(tn.status!==303&&en.body!=null&&en.body.source==null){return Promise.resolve(nn())}if([301,302].includes(tn.status)&&en.method==="POST"||tn.status===303&&!pl.includes(en.method)){en.method="GET";en.body=null;for(const Wt of _n){en.headersList.delete(Wt)}}if(!Fn(An(en),an)){en.headersList.delete("authorization");en.headersList.delete("proxy-authorization",true);en.headersList.delete("cookie");en.headersList.delete("host")}if(en.body!=null){Mn(en.body.source!=null);en.body=zn(en.body.source)[0]}const rn=Wt.timingInfo;rn.redirectEndTime=rn.postRedirectStartTime=Vn(Wt.crossOriginIsolatedCapability);if(rn.redirectStartTime===0){rn.redirectStartTime=rn.startTime}en.urlList.push(an);Wn(en,tn);return mainFetch(Wt,true)}async function httpNetworkOrCacheFetch(Wt,Pt=false,en=false){const tn=Wt.request;let rn=null;let In=null;let sn=null;const on=null;const dn=false;if(tn.window==="no-window"&&tn.redirect==="error"){rn=Wt;In=tn}else{In=cn(tn);rn={...Wt};rn.request=In}const un=tn.credentials==="include"||tn.credentials==="same-origin"&&tn.responseTainting==="basic";const pn=In.body?In.body.length:null;let mn=null;if(In.body==null&&["POST","PUT"].includes(In.method)){mn="0"}if(pn!=null){mn=kn(`${pn}`)}if(mn!=null){In.headersList.append("content-length",mn)}if(pn!=null&&In.keepalive){}if(In.referrer instanceof URL){In.headersList.append("referer",kn(In.referrer.href))}hn(In);yn(In);if(!In.headersList.contains("user-agent")){In.headersList.append("user-agent",typeof esbuildDetection==="undefined"?"undici":"node")}if(In.cache==="default"&&(In.headersList.contains("if-modified-since")||In.headersList.contains("if-none-match")||In.headersList.contains("if-unmodified-since")||In.headersList.contains("if-match")||In.headersList.contains("if-range"))){In.cache="no-store"}if(In.cache==="no-cache"&&!In.preventNoCacheCacheControlHeaderModification&&!In.headersList.contains("cache-control")){In.headersList.append("cache-control","max-age=0")}if(In.cache==="no-store"||In.cache==="reload"){if(!In.headersList.contains("pragma")){In.headersList.append("pragma","no-cache")}if(!In.headersList.contains("cache-control")){In.headersList.append("cache-control","no-cache")}}if(In.headersList.contains("range")){In.headersList.append("accept-encoding","identity")}if(!In.headersList.contains("accept-encoding")){if(Bn(An(In))){In.headersList.append("accept-encoding","br, gzip, deflate")}else{In.headersList.append("accept-encoding","gzip, deflate")}}In.headersList.delete("host");if(un){}if(on==null){In.cache="no-store"}if(In.mode!=="no-store"&&In.mode!=="reload"){}if(sn==null){if(In.mode==="only-if-cached"){return nn("only if cached")}const Wt=await httpNetworkFetch(rn,un,en);if(!Dn.has(In.method)&&Wt.status>=200&&Wt.status<=399){}if(dn&&Wt.status===304){}if(sn==null){sn=Wt}}sn.urlList=[...In.urlList];if(In.headersList.contains("range")){sn.rangeRequested=true}sn.requestIncludesCredentials=un;if(sn.status===407){if(tn.window==="no-window"){return nn()}if(Qn(Wt)){return an(Wt)}return nn("proxy authentication required")}if(sn.status===421&&!en&&(tn.body==null||tn.body.source!=null)){if(Qn(Wt)){return an(Wt)}Wt.controller.connection.destroy();sn=await httpNetworkOrCacheFetch(Wt,Pt,true)}if(Pt){}return sn}async function httpNetworkFetch(Wt,Pt=false,tn=false){Mn(!Wt.controller.connection||Wt.controller.connection.destroyed);Wt.controller.connection={abort:null,destroyed:false,destroy(Wt){if(!this.destroyed){this.destroyed=true;this.abort?.(Wt??new Pn("The operation was aborted.","AbortError"))}}};const rn=Wt.request;let on=null;const cn=Wt.timingInfo;const un=null;if(un==null){rn.cache="no-store"}const pn=tn?"yes":"no";if(rn.mode==="websocket"){}else{}let mn=null;if(rn.body==null&&Wt.processRequestEndOfBody){queueMicrotask((()=>Wt.processRequestEndOfBody()))}else if(rn.body!=null){const processBodyChunk=async function*(Pt){if(Qn(Wt)){return}yield Pt;Wt.processRequestBodyChunkLength?.(Pt.byteLength)};const processEndOfBody=()=>{if(Qn(Wt)){return}if(Wt.processRequestEndOfBody){Wt.processRequestEndOfBody()}};const processBodyError=Pt=>{if(Qn(Wt)){return}if(Pt.name==="AbortError"){Wt.controller.abort()}else{Wt.controller.terminate(Pt)}};mn=async function*(){try{for await(const Wt of rn.body.stream){yield*processBodyChunk(Wt)}processEndOfBody()}catch(Wt){processBodyError(Wt)}}()}try{const{body:Pt,status:en,statusText:tn,headersList:nn,socket:an}=await dispatch({body:mn});if(an){on=In({status:en,statusText:tn,headersList:nn,socket:an})}else{const an=Pt[Symbol.asyncIterator]();Wt.controller.next=()=>an.next();on=In({status:en,statusText:tn,headersList:nn})}}catch(Pt){if(Pt.name==="AbortError"){Wt.controller.connection.destroy();return an(Wt,Pt)}return nn(Pt)}const pullAlgorithm=()=>{Wt.controller.resume()};const cancelAlgorithm=Pt=>{Wt.controller.abort(Pt)};if(!bl){bl=en(63774).ReadableStream}const bn=new bl({async start(Pt){Wt.controller.controller=Pt},async pull(Wt){await pullAlgorithm(Wt)},async cancel(Wt){await cancelAlgorithm(Wt)}},{highWaterMark:0,size(){return 1}});on.body={stream:bn};Wt.controller.on("terminated",onAborted);Wt.controller.resume=async()=>{while(true){let Pt;let en;try{const{done:en,value:tn}=await Wt.controller.next();if(fn(Wt)){break}Pt=en?undefined:tn}catch(tn){if(Wt.controller.ended&&!cn.encodedBodySize){Pt=undefined}else{Pt=tn;en=true}}if(Pt===undefined){Xn(Wt.controller.controller);finalizeResponse(Wt,on);return}cn.decodedBodySize+=Pt?.byteLength??0;if(en){Wt.controller.terminate(Pt);return}Wt.controller.controller.enqueue(new Uint8Array(Pt));if(ll(bn)){Wt.controller.terminate();return}if(!Wt.controller.controller.desiredSize){return}}};function onAborted(Pt){if(fn(Wt)){on.aborted=true;if(al(bn)){Wt.controller.controller.error(Wt.controller.serializedAbortReason)}}else{if(al(bn)){Wt.controller.controller.error(new TypeError("terminated",{cause:Hn(Pt)?Pt:undefined}))}}Wt.controller.connection.destroy()}return on;async function dispatch({body:Pt}){const en=An(rn);const tn=Wt.controller.dispatcher;return new Promise(((nn,an)=>tn.dispatch({path:en.pathname+en.search,origin:en.origin,method:rn.method,body:Wt.controller.dispatcher.isMockActive?rn.body&&(rn.body.source||rn.body.stream):Pt,headers:rn.headersList.entries,maxRedirections:0,upgrade:rn.mode==="websocket"?"websocket":undefined},{body:null,abort:null,onConnect(Pt){const{connection:en}=Wt.controller;if(en.destroyed){Pt(new Pn("The operation was aborted.","AbortError"))}else{Wt.controller.on("terminated",Pt);this.abort=en.abort=Pt}},onHeaders(Wt,Pt,en,tn){if(Wt<200){return}let an=[];let In="";const on=new sn;if(Array.isArray(Pt)){for(let Wt=0;WtWt.trim()))}else if(en.toLowerCase()==="location"){In=tn}on[qn].append(en,tn)}}else{const Wt=Object.keys(Pt);for(const en of Wt){const Wt=Pt[en];if(en.toLowerCase()==="content-encoding"){an=Wt.toLowerCase().split(",").map((Wt=>Wt.trim())).reverse()}else if(en.toLowerCase()==="location"){In=Wt}on[qn].append(en,Wt)}}this.body=new el({read:en});const cn=[];const un=rn.redirect==="follow"&&In&&Sn.has(Wt);if(rn.method!=="HEAD"&&rn.method!=="CONNECT"&&!jn.includes(Wt)&&!un){for(const Wt of an){if(Wt==="x-gzip"||Wt==="gzip"){cn.push(dn.createGunzip({flush:dn.constants.Z_SYNC_FLUSH,finishFlush:dn.constants.Z_SYNC_FLUSH}))}else if(Wt==="deflate"){cn.push(dn.createInflate())}else if(Wt==="br"){cn.push(dn.createBrotliDecompress())}else{cn.length=0;break}}}nn({status:Wt,statusText:tn,headersList:on[qn],body:cn.length?tl(this.body,...cn,(()=>{})):this.body.on("error",(()=>{}))});return true},onData(Pt){if(Wt.controller.dump){return}const en=Pt;cn.encodedBodySize+=en.byteLength;return this.body.push(en)},onComplete(){if(this.abort){Wt.controller.off("terminated",this.abort)}Wt.controller.ended=true;this.body.push(null)},onError(Pt){if(this.abort){Wt.controller.off("terminated",this.abort)}this.body?.destroy(Pt);Wt.controller.terminate(Pt);an(Pt)},onUpgrade(Wt,Pt,en){if(Wt!==101){return}const tn=new sn;for(let Wt=0;Wt{"use strict";const{extractBody:tn,mixinBody:nn,cloneBody:an}=en(8923);const{Headers:rn,fill:In,HeadersList:sn}=en(26349);const{FinalizationRegistry:on}=en(13194)();const cn=en(3440);const{isValidHTTPToken:dn,sameOrigin:un,normalizeMethod:pn,makePolicyContainer:mn,normalizeMethodRecord:bn}=en(15523);const{forbiddenMethodsSet:Gn,corsSafeListedMethodsSet:hn,referrerPolicy:Zn,requestRedirect:An,requestMode:Wn,requestCredentials:Nn,requestCache:gn,requestDuplex:yn}=en(87326);const{kEnumerableProperty:vn}=cn;const{kHeaders:Yn,kSignal:En,kState:Vn,kGuard:Rn,kRealm:wn}=en(89710);const{webidl:Fn}=en(74222);const{getGlobalOrigin:Qn}=en(75628);const{URLSerializer:fn}=en(94322);const{kHeadersList:Hn,kConstruct:Cn}=en(36443);const Xn=en(42613);const{getMaxListeners:kn,setMaxListeners:Jn,getEventListeners:Ln,defaultMaxListeners:Bn}=en(24434);let xn=globalThis.TransformStream;const On=Symbol("abortController");const Tn=new on((({signal:Wt,abort:Pt})=>{Wt.removeEventListener("abort",Pt)}));class Request{constructor(Wt,Pt={}){if(Wt===Cn){return}Fn.argumentLengthCheck(arguments,1,{header:"Request constructor"});Wt=Fn.converters.RequestInfo(Wt);Pt=Fn.converters.RequestInit(Pt);this[wn]={settingsObject:{baseUrl:Qn(),get origin(){return this.baseUrl?.origin},policyContainer:mn()}};let nn=null;let an=null;const on=this[wn].settingsObject.baseUrl;let Zn=null;if(typeof Wt==="string"){let Pt;try{Pt=new URL(Wt,on)}catch(Pt){throw new TypeError("Failed to parse URL from "+Wt,{cause:Pt})}if(Pt.username||Pt.password){throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+Wt)}nn=makeRequest({urlList:[Pt]});an="cors"}else{Xn(Wt instanceof Request);nn=Wt[Vn];Zn=Wt[En]}const An=this[wn].settingsObject.origin;let Wn="client";if(nn.window?.constructor?.name==="EnvironmentSettingsObject"&&un(nn.window,An)){Wn=nn.window}if(Pt.window!=null){throw new TypeError(`'window' option '${Wn}' must be null`)}if("window"in Pt){Wn="no-window"}nn=makeRequest({method:nn.method,headersList:nn.headersList,unsafeRequest:nn.unsafeRequest,client:this[wn].settingsObject,window:Wn,priority:nn.priority,origin:nn.origin,referrer:nn.referrer,referrerPolicy:nn.referrerPolicy,mode:nn.mode,credentials:nn.credentials,cache:nn.cache,redirect:nn.redirect,integrity:nn.integrity,keepalive:nn.keepalive,reloadNavigation:nn.reloadNavigation,historyNavigation:nn.historyNavigation,urlList:[...nn.urlList]});const Nn=Object.keys(Pt).length!==0;if(Nn){if(nn.mode==="navigate"){nn.mode="same-origin"}nn.reloadNavigation=false;nn.historyNavigation=false;nn.origin="client";nn.referrer="client";nn.referrerPolicy="";nn.url=nn.urlList[nn.urlList.length-1];nn.urlList=[nn.url]}if(Pt.referrer!==undefined){const Wt=Pt.referrer;if(Wt===""){nn.referrer="no-referrer"}else{let Pt;try{Pt=new URL(Wt,on)}catch(Pt){throw new TypeError(`Referrer "${Wt}" is not a valid URL.`,{cause:Pt})}if(Pt.protocol==="about:"&&Pt.hostname==="client"||An&&!un(Pt,this[wn].settingsObject.baseUrl)){nn.referrer="client"}else{nn.referrer=Pt}}}if(Pt.referrerPolicy!==undefined){nn.referrerPolicy=Pt.referrerPolicy}let gn;if(Pt.mode!==undefined){gn=Pt.mode}else{gn=an}if(gn==="navigate"){throw Fn.errors.exception({header:"Request constructor",message:"invalid request mode navigate."})}if(gn!=null){nn.mode=gn}if(Pt.credentials!==undefined){nn.credentials=Pt.credentials}if(Pt.cache!==undefined){nn.cache=Pt.cache}if(nn.cache==="only-if-cached"&&nn.mode!=="same-origin"){throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode")}if(Pt.redirect!==undefined){nn.redirect=Pt.redirect}if(Pt.integrity!=null){nn.integrity=String(Pt.integrity)}if(Pt.keepalive!==undefined){nn.keepalive=Boolean(Pt.keepalive)}if(Pt.method!==undefined){let Wt=Pt.method;if(!dn(Wt)){throw new TypeError(`'${Wt}' is not a valid HTTP method.`)}if(Gn.has(Wt.toUpperCase())){throw new TypeError(`'${Wt}' HTTP method is unsupported.`)}Wt=bn[Wt]??pn(Wt);nn.method=Wt}if(Pt.signal!==undefined){Zn=Pt.signal}this[Vn]=nn;const yn=new AbortController;this[En]=yn.signal;this[En][wn]=this[wn];if(Zn!=null){if(!Zn||typeof Zn.aborted!=="boolean"||typeof Zn.addEventListener!=="function"){throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.")}if(Zn.aborted){yn.abort(Zn.reason)}else{this[On]=yn;const Wt=new WeakRef(yn);const abort=function(){const Pt=Wt.deref();if(Pt!==undefined){Pt.abort(this.reason)}};try{if(typeof kn==="function"&&kn(Zn)===Bn){Jn(100,Zn)}else if(Ln(Zn,"abort").length>=Bn){Jn(100,Zn)}}catch{}cn.addAbortListener(Zn,abort);Tn.register(yn,{signal:Zn,abort:abort})}}this[Yn]=new rn(Cn);this[Yn][Hn]=nn.headersList;this[Yn][Rn]="request";this[Yn][wn]=this[wn];if(gn==="no-cors"){if(!hn.has(nn.method)){throw new TypeError(`'${nn.method} is unsupported in no-cors mode.`)}this[Yn][Rn]="request-no-cors"}if(Nn){const Wt=this[Yn][Hn];const en=Pt.headers!==undefined?Pt.headers:new sn(Wt);Wt.clear();if(en instanceof sn){for(const[Pt,tn]of en){Wt.append(Pt,tn)}Wt.cookies=en.cookies}else{In(this[Yn],en)}}const vn=Wt instanceof Request?Wt[Vn].body:null;if((Pt.body!=null||vn!=null)&&(nn.method==="GET"||nn.method==="HEAD")){throw new TypeError("Request with GET/HEAD method cannot have body.")}let fn=null;if(Pt.body!=null){const[Wt,en]=tn(Pt.body,nn.keepalive);fn=Wt;if(en&&!this[Yn][Hn].contains("content-type")){this[Yn].append("content-type",en)}}const Un=fn??vn;if(Un!=null&&Un.source==null){if(fn!=null&&Pt.duplex==null){throw new TypeError("RequestInit: duplex option is required when sending a body.")}if(nn.mode!=="same-origin"&&nn.mode!=="cors"){throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"')}nn.useCORSPreflightFlag=true}let Mn=Un;if(fn==null&&vn!=null){if(cn.isDisturbed(vn.stream)||vn.stream.locked){throw new TypeError("Cannot construct a Request with a Request object that has already been used.")}if(!xn){xn=en(63774).TransformStream}const Wt=new xn;vn.stream.pipeThrough(Wt);Mn={source:vn.source,length:vn.length,stream:Wt.readable}}this[Vn].body=Mn}get method(){Fn.brandCheck(this,Request);return this[Vn].method}get url(){Fn.brandCheck(this,Request);return fn(this[Vn].url)}get headers(){Fn.brandCheck(this,Request);return this[Yn]}get destination(){Fn.brandCheck(this,Request);return this[Vn].destination}get referrer(){Fn.brandCheck(this,Request);if(this[Vn].referrer==="no-referrer"){return""}if(this[Vn].referrer==="client"){return"about:client"}return this[Vn].referrer.toString()}get referrerPolicy(){Fn.brandCheck(this,Request);return this[Vn].referrerPolicy}get mode(){Fn.brandCheck(this,Request);return this[Vn].mode}get credentials(){return this[Vn].credentials}get cache(){Fn.brandCheck(this,Request);return this[Vn].cache}get redirect(){Fn.brandCheck(this,Request);return this[Vn].redirect}get integrity(){Fn.brandCheck(this,Request);return this[Vn].integrity}get keepalive(){Fn.brandCheck(this,Request);return this[Vn].keepalive}get isReloadNavigation(){Fn.brandCheck(this,Request);return this[Vn].reloadNavigation}get isHistoryNavigation(){Fn.brandCheck(this,Request);return this[Vn].historyNavigation}get signal(){Fn.brandCheck(this,Request);return this[En]}get body(){Fn.brandCheck(this,Request);return this[Vn].body?this[Vn].body.stream:null}get bodyUsed(){Fn.brandCheck(this,Request);return!!this[Vn].body&&cn.isDisturbed(this[Vn].body.stream)}get duplex(){Fn.brandCheck(this,Request);return"half"}clone(){Fn.brandCheck(this,Request);if(this.bodyUsed||this.body?.locked){throw new TypeError("unusable")}const Wt=cloneRequest(this[Vn]);const Pt=new Request(Cn);Pt[Vn]=Wt;Pt[wn]=this[wn];Pt[Yn]=new rn(Cn);Pt[Yn][Hn]=Wt.headersList;Pt[Yn][Rn]=this[Yn][Rn];Pt[Yn][wn]=this[Yn][wn];const en=new AbortController;if(this.signal.aborted){en.abort(this.signal.reason)}else{cn.addAbortListener(this.signal,(()=>{en.abort(this.signal.reason)}))}Pt[En]=en.signal;return Pt}}nn(Request);function makeRequest(Wt){const Pt={method:"GET",localURLsOnly:false,unsafeRequest:false,body:null,client:null,reservedClient:null,replacesClientId:"",window:"client",keepalive:false,serviceWorkers:"all",initiator:"",destination:"",priority:null,origin:"client",policyContainer:"client",referrer:"client",referrerPolicy:"",mode:"no-cors",useCORSPreflightFlag:false,credentials:"same-origin",useCredentials:false,cache:"default",redirect:"follow",integrity:"",cryptoGraphicsNonceMetadata:"",parserMetadata:"",reloadNavigation:false,historyNavigation:false,userActivation:false,taintedOrigin:false,redirectCount:0,responseTainting:"basic",preventNoCacheCacheControlHeaderModification:false,done:false,timingAllowFailed:false,...Wt,headersList:Wt.headersList?new sn(Wt.headersList):new sn};Pt.url=Pt.urlList[0];return Pt}function cloneRequest(Wt){const Pt=makeRequest({...Wt,body:null});if(Wt.body!=null){Pt.body=an(Wt.body)}return Pt}Object.defineProperties(Request.prototype,{method:vn,url:vn,headers:vn,redirect:vn,clone:vn,signal:vn,duplex:vn,destination:vn,body:vn,bodyUsed:vn,isHistoryNavigation:vn,isReloadNavigation:vn,keepalive:vn,integrity:vn,cache:vn,credentials:vn,attribute:vn,referrerPolicy:vn,referrer:vn,mode:vn,[Symbol.toStringTag]:{value:"Request",configurable:true}});Fn.converters.Request=Fn.interfaceConverter(Request);Fn.converters.RequestInfo=function(Wt){if(typeof Wt==="string"){return Fn.converters.USVString(Wt)}if(Wt instanceof Request){return Fn.converters.Request(Wt)}return Fn.converters.USVString(Wt)};Fn.converters.AbortSignal=Fn.interfaceConverter(AbortSignal);Fn.converters.RequestInit=Fn.dictionaryConverter([{key:"method",converter:Fn.converters.ByteString},{key:"headers",converter:Fn.converters.HeadersInit},{key:"body",converter:Fn.nullableConverter(Fn.converters.BodyInit)},{key:"referrer",converter:Fn.converters.USVString},{key:"referrerPolicy",converter:Fn.converters.DOMString,allowedValues:Zn},{key:"mode",converter:Fn.converters.DOMString,allowedValues:Wn},{key:"credentials",converter:Fn.converters.DOMString,allowedValues:Nn},{key:"cache",converter:Fn.converters.DOMString,allowedValues:gn},{key:"redirect",converter:Fn.converters.DOMString,allowedValues:An},{key:"integrity",converter:Fn.converters.DOMString},{key:"keepalive",converter:Fn.converters.boolean},{key:"signal",converter:Fn.nullableConverter((Wt=>Fn.converters.AbortSignal(Wt,{strict:false})))},{key:"window",converter:Fn.converters.any},{key:"duplex",converter:Fn.converters.DOMString,allowedValues:yn}]);Wt.exports={Request:Request,makeRequest:makeRequest}},48676:(Wt,Pt,en)=>{"use strict";const{Headers:tn,HeadersList:nn,fill:an}=en(26349);const{extractBody:rn,cloneBody:In,mixinBody:sn}=en(8923);const on=en(3440);const{kEnumerableProperty:cn}=on;const{isValidReasonPhrase:dn,isCancelled:un,isAborted:pn,isBlobLike:mn,serializeJavascriptValueToJSONString:bn,isErrorLike:Gn,isomorphicEncode:hn}=en(15523);const{redirectStatusSet:Zn,nullBodyStatus:An,DOMException:Wn}=en(87326);const{kState:Nn,kHeaders:gn,kGuard:yn,kRealm:vn}=en(89710);const{webidl:Yn}=en(74222);const{FormData:En}=en(43073);const{getGlobalOrigin:Vn}=en(75628);const{URLSerializer:Rn}=en(94322);const{kHeadersList:wn,kConstruct:Fn}=en(36443);const Qn=en(42613);const{types:fn}=en(39023);const Hn=globalThis.ReadableStream||en(63774).ReadableStream;const Cn=new TextEncoder("utf-8");class Response{static error(){const Wt={settingsObject:{}};const Pt=new Response;Pt[Nn]=makeNetworkError();Pt[vn]=Wt;Pt[gn][wn]=Pt[Nn].headersList;Pt[gn][yn]="immutable";Pt[gn][vn]=Wt;return Pt}static json(Wt,Pt={}){Yn.argumentLengthCheck(arguments,1,{header:"Response.json"});if(Pt!==null){Pt=Yn.converters.ResponseInit(Pt)}const en=Cn.encode(bn(Wt));const tn=rn(en);const nn={settingsObject:{}};const an=new Response;an[vn]=nn;an[gn][yn]="response";an[gn][vn]=nn;initializeResponse(an,Pt,{body:tn[0],type:"application/json"});return an}static redirect(Wt,Pt=302){const en={settingsObject:{}};Yn.argumentLengthCheck(arguments,1,{header:"Response.redirect"});Wt=Yn.converters.USVString(Wt);Pt=Yn.converters["unsigned short"](Pt);let tn;try{tn=new URL(Wt,Vn())}catch(Pt){throw Object.assign(new TypeError("Failed to parse URL from "+Wt),{cause:Pt})}if(!Zn.has(Pt)){throw new RangeError("Invalid status code "+Pt)}const nn=new Response;nn[vn]=en;nn[gn][yn]="immutable";nn[gn][vn]=en;nn[Nn].status=Pt;const an=hn(Rn(tn));nn[Nn].headersList.append("location",an);return nn}constructor(Wt=null,Pt={}){if(Wt!==null){Wt=Yn.converters.BodyInit(Wt)}Pt=Yn.converters.ResponseInit(Pt);this[vn]={settingsObject:{}};this[Nn]=makeResponse({});this[gn]=new tn(Fn);this[gn][yn]="response";this[gn][wn]=this[Nn].headersList;this[gn][vn]=this[vn];let en=null;if(Wt!=null){const[Pt,tn]=rn(Wt);en={body:Pt,type:tn}}initializeResponse(this,Pt,en)}get type(){Yn.brandCheck(this,Response);return this[Nn].type}get url(){Yn.brandCheck(this,Response);const Wt=this[Nn].urlList;const Pt=Wt[Wt.length-1]??null;if(Pt===null){return""}return Rn(Pt,true)}get redirected(){Yn.brandCheck(this,Response);return this[Nn].urlList.length>1}get status(){Yn.brandCheck(this,Response);return this[Nn].status}get ok(){Yn.brandCheck(this,Response);return this[Nn].status>=200&&this[Nn].status<=299}get statusText(){Yn.brandCheck(this,Response);return this[Nn].statusText}get headers(){Yn.brandCheck(this,Response);return this[gn]}get body(){Yn.brandCheck(this,Response);return this[Nn].body?this[Nn].body.stream:null}get bodyUsed(){Yn.brandCheck(this,Response);return!!this[Nn].body&&on.isDisturbed(this[Nn].body.stream)}clone(){Yn.brandCheck(this,Response);if(this.bodyUsed||this.body&&this.body.locked){throw Yn.errors.exception({header:"Response.clone",message:"Body has already been consumed."})}const Wt=cloneResponse(this[Nn]);const Pt=new Response;Pt[Nn]=Wt;Pt[vn]=this[vn];Pt[gn][wn]=Wt.headersList;Pt[gn][yn]=this[gn][yn];Pt[gn][vn]=this[gn][vn];return Pt}}sn(Response);Object.defineProperties(Response.prototype,{type:cn,url:cn,status:cn,ok:cn,redirected:cn,statusText:cn,headers:cn,clone:cn,body:cn,bodyUsed:cn,[Symbol.toStringTag]:{value:"Response",configurable:true}});Object.defineProperties(Response,{json:cn,redirect:cn,error:cn});function cloneResponse(Wt){if(Wt.internalResponse){return filterResponse(cloneResponse(Wt.internalResponse),Wt.type)}const Pt=makeResponse({...Wt,body:null});if(Wt.body!=null){Pt.body=In(Wt.body)}return Pt}function makeResponse(Wt){return{aborted:false,rangeRequested:false,timingAllowPassed:false,requestIncludesCredentials:false,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...Wt,headersList:Wt.headersList?new nn(Wt.headersList):new nn,urlList:Wt.urlList?[...Wt.urlList]:[]}}function makeNetworkError(Wt){const Pt=Gn(Wt);return makeResponse({type:"error",status:0,error:Pt?Wt:new Error(Wt?String(Wt):Wt),aborted:Wt&&Wt.name==="AbortError"})}function makeFilteredResponse(Wt,Pt){Pt={internalResponse:Wt,...Pt};return new Proxy(Wt,{get(Wt,en){return en in Pt?Pt[en]:Wt[en]},set(Wt,en,tn){Qn(!(en in Pt));Wt[en]=tn;return true}})}function filterResponse(Wt,Pt){if(Pt==="basic"){return makeFilteredResponse(Wt,{type:"basic",headersList:Wt.headersList})}else if(Pt==="cors"){return makeFilteredResponse(Wt,{type:"cors",headersList:Wt.headersList})}else if(Pt==="opaque"){return makeFilteredResponse(Wt,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null})}else if(Pt==="opaqueredirect"){return makeFilteredResponse(Wt,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null})}else{Qn(false)}}function makeAppropriateNetworkError(Wt,Pt=null){Qn(un(Wt));return pn(Wt)?makeNetworkError(Object.assign(new Wn("The operation was aborted.","AbortError"),{cause:Pt})):makeNetworkError(Object.assign(new Wn("Request was cancelled."),{cause:Pt}))}function initializeResponse(Wt,Pt,en){if(Pt.status!==null&&(Pt.status<200||Pt.status>599)){throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.')}if("statusText"in Pt&&Pt.statusText!=null){if(!dn(String(Pt.statusText))){throw new TypeError("Invalid statusText")}}if("status"in Pt&&Pt.status!=null){Wt[Nn].status=Pt.status}if("statusText"in Pt&&Pt.statusText!=null){Wt[Nn].statusText=Pt.statusText}if("headers"in Pt&&Pt.headers!=null){an(Wt[gn],Pt.headers)}if(en){if(An.includes(Wt.status)){throw Yn.errors.exception({header:"Response constructor",message:"Invalid response status code "+Wt.status})}Wt[Nn].body=en.body;if(en.type!=null&&!Wt[Nn].headersList.contains("Content-Type")){Wt[Nn].headersList.append("content-type",en.type)}}}Yn.converters.ReadableStream=Yn.interfaceConverter(Hn);Yn.converters.FormData=Yn.interfaceConverter(En);Yn.converters.URLSearchParams=Yn.interfaceConverter(URLSearchParams);Yn.converters.XMLHttpRequestBodyInit=function(Wt){if(typeof Wt==="string"){return Yn.converters.USVString(Wt)}if(mn(Wt)){return Yn.converters.Blob(Wt,{strict:false})}if(fn.isArrayBuffer(Wt)||fn.isTypedArray(Wt)||fn.isDataView(Wt)){return Yn.converters.BufferSource(Wt)}if(on.isFormDataLike(Wt)){return Yn.converters.FormData(Wt,{strict:false})}if(Wt instanceof URLSearchParams){return Yn.converters.URLSearchParams(Wt)}return Yn.converters.DOMString(Wt)};Yn.converters.BodyInit=function(Wt){if(Wt instanceof Hn){return Yn.converters.ReadableStream(Wt)}if(Wt?.[Symbol.asyncIterator]){return Wt}return Yn.converters.XMLHttpRequestBodyInit(Wt)};Yn.converters.ResponseInit=Yn.dictionaryConverter([{key:"status",converter:Yn.converters["unsigned short"],defaultValue:200},{key:"statusText",converter:Yn.converters.ByteString,defaultValue:""},{key:"headers",converter:Yn.converters.HeadersInit}]);Wt.exports={makeNetworkError:makeNetworkError,makeResponse:makeResponse,makeAppropriateNetworkError:makeAppropriateNetworkError,filterResponse:filterResponse,Response:Response,cloneResponse:cloneResponse}},89710:Wt=>{"use strict";Wt.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kGuard:Symbol("guard"),kRealm:Symbol("realm")}},15523:(Wt,Pt,en)=>{"use strict";const{redirectStatusSet:tn,referrerPolicySet:nn,badPortsSet:an}=en(87326);const{getGlobalOrigin:rn}=en(75628);const{performance:In}=en(82987);const{isBlobLike:sn,toUSVString:on,ReadableStreamFrom:cn}=en(3440);const dn=en(42613);const{isUint8Array:un}=en(98253);let pn=[];let mn;try{mn=en(76982);const Wt=["sha256","sha384","sha512"];pn=mn.getHashes().filter((Pt=>Wt.includes(Pt)))}catch{}function responseURL(Wt){const Pt=Wt.urlList;const en=Pt.length;return en===0?null:Pt[en-1].toString()}function responseLocationURL(Wt,Pt){if(!tn.has(Wt.status)){return null}let en=Wt.headersList.get("location");if(en!==null&&isValidHeaderValue(en)){en=new URL(en,responseURL(Wt))}if(en&&!en.hash){en.hash=Pt}return en}function requestCurrentURL(Wt){return Wt.urlList[Wt.urlList.length-1]}function requestBadPort(Wt){const Pt=requestCurrentURL(Wt);if(urlIsHttpHttpsScheme(Pt)&&an.has(Pt.port)){return"blocked"}return"allowed"}function isErrorLike(Wt){return Wt instanceof Error||(Wt?.constructor?.name==="Error"||Wt?.constructor?.name==="DOMException")}function isValidReasonPhrase(Wt){for(let Pt=0;Pt=32&&en<=126||en>=128&&en<=255)){return false}}return true}function isTokenCharCode(Wt){switch(Wt){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return false;default:return Wt>=33&&Wt<=126}}function isValidHTTPToken(Wt){if(Wt.length===0){return false}for(let Pt=0;Pt0){for(let Wt=tn.length;Wt!==0;Wt--){const Pt=tn[Wt-1].trim();if(nn.has(Pt)){an=Pt;break}}}if(an!==""){Wt.referrerPolicy=an}}function crossOriginResourcePolicyCheck(){return"allowed"}function corsCheck(){return"success"}function TAOCheck(){return"success"}function appendFetchMetadata(Wt){let Pt=null;Pt=Wt.mode;Wt.headersList.set("sec-fetch-mode",Pt)}function appendRequestOriginHeader(Wt){let Pt=Wt.origin;if(Wt.responseTainting==="cors"||Wt.mode==="websocket"){if(Pt){Wt.headersList.append("origin",Pt)}}else if(Wt.method!=="GET"&&Wt.method!=="HEAD"){switch(Wt.referrerPolicy){case"no-referrer":Pt=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":if(Wt.origin&&urlHasHttpsScheme(Wt.origin)&&!urlHasHttpsScheme(requestCurrentURL(Wt))){Pt=null}break;case"same-origin":if(!sameOrigin(Wt,requestCurrentURL(Wt))){Pt=null}break;default:}if(Pt){Wt.headersList.append("origin",Pt)}}}function coarsenedSharedCurrentTime(Wt){return In.now()}function createOpaqueTimingInfo(Wt){return{startTime:Wt.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:Wt.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function makePolicyContainer(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function clonePolicyContainer(Wt){return{referrerPolicy:Wt.referrerPolicy}}function determineRequestsReferrer(Wt){const Pt=Wt.referrerPolicy;dn(Pt);let en=null;if(Wt.referrer==="client"){const Wt=rn();if(!Wt||Wt.origin==="null"){return"no-referrer"}en=new URL(Wt)}else if(Wt.referrer instanceof URL){en=Wt.referrer}let tn=stripURLForReferrer(en);const nn=stripURLForReferrer(en,true);if(tn.toString().length>4096){tn=nn}const an=sameOrigin(Wt,tn);const In=isURLPotentiallyTrustworthy(tn)&&!isURLPotentiallyTrustworthy(Wt.url);switch(Pt){case"origin":return nn!=null?nn:stripURLForReferrer(en,true);case"unsafe-url":return tn;case"same-origin":return an?nn:"no-referrer";case"origin-when-cross-origin":return an?tn:nn;case"strict-origin-when-cross-origin":{const Pt=requestCurrentURL(Wt);if(sameOrigin(tn,Pt)){return tn}if(isURLPotentiallyTrustworthy(tn)&&!isURLPotentiallyTrustworthy(Pt)){return"no-referrer"}return nn}case"strict-origin":case"no-referrer-when-downgrade":default:return In?"no-referrer":nn}}function stripURLForReferrer(Wt,Pt){dn(Wt instanceof URL);if(Wt.protocol==="file:"||Wt.protocol==="about:"||Wt.protocol==="blank:"){return"no-referrer"}Wt.username="";Wt.password="";Wt.hash="";if(Pt){Wt.pathname="";Wt.search=""}return Wt}function isURLPotentiallyTrustworthy(Wt){if(!(Wt instanceof URL)){return false}if(Wt.href==="about:blank"||Wt.href==="about:srcdoc"){return true}if(Wt.protocol==="data:")return true;if(Wt.protocol==="file:")return true;return isOriginPotentiallyTrustworthy(Wt.origin);function isOriginPotentiallyTrustworthy(Wt){if(Wt==null||Wt==="null")return false;const Pt=new URL(Wt);if(Pt.protocol==="https:"||Pt.protocol==="wss:"){return true}if(/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(Pt.hostname)||(Pt.hostname==="localhost"||Pt.hostname.includes("localhost."))||Pt.hostname.endsWith(".localhost")){return true}return false}}function bytesMatch(Wt,Pt){if(mn===undefined){return true}const en=parseMetadata(Pt);if(en==="no metadata"){return true}if(en.length===0){return true}const tn=getStrongestMetadata(en);const nn=filterMetadataListByAlgorithm(en,tn);for(const Pt of nn){const en=Pt.algo;const tn=Pt.hash;let nn=mn.createHash(en).update(Wt).digest("base64");if(nn[nn.length-1]==="="){if(nn[nn.length-2]==="="){nn=nn.slice(0,-2)}else{nn=nn.slice(0,-1)}}if(compareBase64Mixed(nn,tn)){return true}}return false}const bn=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function parseMetadata(Wt){const Pt=[];let en=true;for(const tn of Wt.split(" ")){en=false;const Wt=bn.exec(tn);if(Wt===null||Wt.groups===undefined||Wt.groups.algo===undefined){continue}const nn=Wt.groups.algo.toLowerCase();if(pn.includes(nn)){Pt.push(Wt.groups)}}if(en===true){return"no metadata"}return Pt}function getStrongestMetadata(Wt){let Pt=Wt[0].algo;if(Pt[3]==="5"){return Pt}for(let en=1;en{Wt=en;Pt=tn}));return{promise:en,resolve:Wt,reject:Pt}}function isAborted(Wt){return Wt.controller.state==="aborted"}function isCancelled(Wt){return Wt.controller.state==="aborted"||Wt.controller.state==="terminated"}const Gn={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"};Object.setPrototypeOf(Gn,null);function normalizeMethod(Wt){return Gn[Wt.toLowerCase()]??Wt}function serializeJavascriptValueToJSONString(Wt){const Pt=JSON.stringify(Wt);if(Pt===undefined){throw new TypeError("Value is not JSON serializable")}dn(typeof Pt==="string");return Pt}const hn=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function makeIterator(Wt,Pt,en){const tn={index:0,kind:en,target:Wt};const nn={next(){if(Object.getPrototypeOf(this)!==nn){throw new TypeError(`'next' called on an object that does not implement interface ${Pt} Iterator.`)}const{index:Wt,kind:en,target:an}=tn;const rn=an();const In=rn.length;if(Wt>=In){return{value:undefined,done:true}}const sn=rn[Wt];tn.index=Wt+1;return iteratorResult(sn,en)},[Symbol.toStringTag]:`${Pt} Iterator`};Object.setPrototypeOf(nn,hn);return Object.setPrototypeOf({},nn)}function iteratorResult(Wt,Pt){let en;switch(Pt){case"key":{en=Wt[0];break}case"value":{en=Wt[1];break}case"key+value":{en=Wt;break}}return{value:en,done:false}}async function fullyReadBody(Wt,Pt,en){const tn=Pt;const nn=en;let an;try{an=Wt.stream.getReader()}catch(Wt){nn(Wt);return}try{const Wt=await readAllBytes(an);tn(Wt)}catch(Wt){nn(Wt)}}let Zn=globalThis.ReadableStream;function isReadableStreamLike(Wt){if(!Zn){Zn=en(63774).ReadableStream}return Wt instanceof Zn||Wt[Symbol.toStringTag]==="ReadableStream"&&typeof Wt.tee==="function"}const An=65535;function isomorphicDecode(Wt){if(Wt.lengthWt+String.fromCharCode(Pt)),"")}function readableStreamClose(Wt){try{Wt.close()}catch(Wt){if(!Wt.message.includes("Controller is already closed")){throw Wt}}}function isomorphicEncode(Wt){for(let Pt=0;PtObject.prototype.hasOwnProperty.call(Wt,Pt));Wt.exports={isAborted:isAborted,isCancelled:isCancelled,createDeferredPromise:createDeferredPromise,ReadableStreamFrom:cn,toUSVString:on,tryUpgradeRequestToAPotentiallyTrustworthyURL:tryUpgradeRequestToAPotentiallyTrustworthyURL,coarsenedSharedCurrentTime:coarsenedSharedCurrentTime,determineRequestsReferrer:determineRequestsReferrer,makePolicyContainer:makePolicyContainer,clonePolicyContainer:clonePolicyContainer,appendFetchMetadata:appendFetchMetadata,appendRequestOriginHeader:appendRequestOriginHeader,TAOCheck:TAOCheck,corsCheck:corsCheck,crossOriginResourcePolicyCheck:crossOriginResourcePolicyCheck,createOpaqueTimingInfo:createOpaqueTimingInfo,setRequestReferrerPolicyOnRedirect:setRequestReferrerPolicyOnRedirect,isValidHTTPToken:isValidHTTPToken,requestBadPort:requestBadPort,requestCurrentURL:requestCurrentURL,responseURL:responseURL,responseLocationURL:responseLocationURL,isBlobLike:sn,isURLPotentiallyTrustworthy:isURLPotentiallyTrustworthy,isValidReasonPhrase:isValidReasonPhrase,sameOrigin:sameOrigin,normalizeMethod:normalizeMethod,serializeJavascriptValueToJSONString:serializeJavascriptValueToJSONString,makeIterator:makeIterator,isValidHeaderName:isValidHeaderName,isValidHeaderValue:isValidHeaderValue,hasOwn:Wn,isErrorLike:isErrorLike,fullyReadBody:fullyReadBody,bytesMatch:bytesMatch,isReadableStreamLike:isReadableStreamLike,readableStreamClose:readableStreamClose,isomorphicEncode:isomorphicEncode,isomorphicDecode:isomorphicDecode,urlIsLocal:urlIsLocal,urlHasHttpsScheme:urlHasHttpsScheme,urlIsHttpHttpsScheme:urlIsHttpHttpsScheme,readAllBytes:readAllBytes,normalizeMethodRecord:Gn,parseMetadata:parseMetadata}},74222:(Wt,Pt,en)=>{"use strict";const{types:tn}=en(39023);const{hasOwn:nn,toUSVString:an}=en(15523);const rn={};rn.converters={};rn.util={};rn.errors={};rn.errors.exception=function(Wt){return new TypeError(`${Wt.header}: ${Wt.message}`)};rn.errors.conversionFailed=function(Wt){const Pt=Wt.types.length===1?"":" one of";const en=`${Wt.argument} could not be converted to`+`${Pt}: ${Wt.types.join(", ")}.`;return rn.errors.exception({header:Wt.prefix,message:en})};rn.errors.invalidArgument=function(Wt){return rn.errors.exception({header:Wt.prefix,message:`"${Wt.value}" is an invalid ${Wt.type}.`})};rn.brandCheck=function(Wt,Pt,en=undefined){if(en?.strict!==false&&!(Wt instanceof Pt)){throw new TypeError("Illegal invocation")}else{return Wt?.[Symbol.toStringTag]===Pt.prototype[Symbol.toStringTag]}};rn.argumentLengthCheck=function({length:Wt},Pt,en){if(Wtnn){throw rn.errors.exception({header:"Integer conversion",message:`Value must be between ${an}-${nn}, got ${In}.`})}return In}if(!Number.isNaN(In)&&tn.clamp===true){In=Math.min(Math.max(In,an),nn);if(Math.floor(In)%2===0){In=Math.floor(In)}else{In=Math.ceil(In)}return In}if(Number.isNaN(In)||In===0&&Object.is(0,In)||In===Number.POSITIVE_INFINITY||In===Number.NEGATIVE_INFINITY){return 0}In=rn.util.IntegerPart(In);In=In%Math.pow(2,Pt);if(en==="signed"&&In>=Math.pow(2,Pt)-1){return In-Math.pow(2,Pt)}return In};rn.util.IntegerPart=function(Wt){const Pt=Math.floor(Math.abs(Wt));if(Wt<0){return-1*Pt}return Pt};rn.sequenceConverter=function(Wt){return Pt=>{if(rn.util.Type(Pt)!=="Object"){throw rn.errors.exception({header:"Sequence",message:`Value of type ${rn.util.Type(Pt)} is not an Object.`})}const en=Pt?.[Symbol.iterator]?.();const tn=[];if(en===undefined||typeof en.next!=="function"){throw rn.errors.exception({header:"Sequence",message:"Object is not an iterator."})}while(true){const{done:Pt,value:nn}=en.next();if(Pt){break}tn.push(Wt(nn))}return tn}};rn.recordConverter=function(Wt,Pt){return en=>{if(rn.util.Type(en)!=="Object"){throw rn.errors.exception({header:"Record",message:`Value of type ${rn.util.Type(en)} is not an Object.`})}const nn={};if(!tn.isProxy(en)){const tn=Object.keys(en);for(const an of tn){const tn=Wt(an);const rn=Pt(en[an]);nn[tn]=rn}return nn}const an=Reflect.ownKeys(en);for(const tn of an){const an=Reflect.getOwnPropertyDescriptor(en,tn);if(an?.enumerable){const an=Wt(tn);const rn=Pt(en[tn]);nn[an]=rn}}return nn}};rn.interfaceConverter=function(Wt){return(Pt,en={})=>{if(en.strict!==false&&!(Pt instanceof Wt)){throw rn.errors.exception({header:Wt.name,message:`Expected ${Pt} to be an instance of ${Wt.name}.`})}return Pt}};rn.dictionaryConverter=function(Wt){return Pt=>{const en=rn.util.Type(Pt);const tn={};if(en==="Null"||en==="Undefined"){return tn}else if(en!=="Object"){throw rn.errors.exception({header:"Dictionary",message:`Expected ${Pt} to be one of: Null, Undefined, Object.`})}for(const en of Wt){const{key:Wt,defaultValue:an,required:In,converter:sn}=en;if(In===true){if(!nn(Pt,Wt)){throw rn.errors.exception({header:"Dictionary",message:`Missing required key "${Wt}".`})}}let on=Pt[Wt];const cn=nn(en,"defaultValue");if(cn&&on!==null){on=on??an}if(In||cn||on!==undefined){on=sn(on);if(en.allowedValues&&!en.allowedValues.includes(on)){throw rn.errors.exception({header:"Dictionary",message:`${on} is not an accepted type. Expected one of ${en.allowedValues.join(", ")}.`})}tn[Wt]=on}}return tn}};rn.nullableConverter=function(Wt){return Pt=>{if(Pt===null){return Pt}return Wt(Pt)}};rn.converters.DOMString=function(Wt,Pt={}){if(Wt===null&&Pt.legacyNullToEmptyString){return""}if(typeof Wt==="symbol"){throw new TypeError("Could not convert argument of type symbol to string.")}return String(Wt)};rn.converters.ByteString=function(Wt){const Pt=rn.converters.DOMString(Wt);for(let Wt=0;Wt255){throw new TypeError("Cannot convert argument to a ByteString because the character at "+`index ${Wt} has a value of ${Pt.charCodeAt(Wt)} which is greater than 255.`)}}return Pt};rn.converters.USVString=an;rn.converters.boolean=function(Wt){const Pt=Boolean(Wt);return Pt};rn.converters.any=function(Wt){return Wt};rn.converters["long long"]=function(Wt){const Pt=rn.util.ConvertToInt(Wt,64,"signed");return Pt};rn.converters["unsigned long long"]=function(Wt){const Pt=rn.util.ConvertToInt(Wt,64,"unsigned");return Pt};rn.converters["unsigned long"]=function(Wt){const Pt=rn.util.ConvertToInt(Wt,32,"unsigned");return Pt};rn.converters["unsigned short"]=function(Wt,Pt){const en=rn.util.ConvertToInt(Wt,16,"unsigned",Pt);return en};rn.converters.ArrayBuffer=function(Wt,Pt={}){if(rn.util.Type(Wt)!=="Object"||!tn.isAnyArrayBuffer(Wt)){throw rn.errors.conversionFailed({prefix:`${Wt}`,argument:`${Wt}`,types:["ArrayBuffer"]})}if(Pt.allowShared===false&&tn.isSharedArrayBuffer(Wt)){throw rn.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."})}return Wt};rn.converters.TypedArray=function(Wt,Pt,en={}){if(rn.util.Type(Wt)!=="Object"||!tn.isTypedArray(Wt)||Wt.constructor.name!==Pt.name){throw rn.errors.conversionFailed({prefix:`${Pt.name}`,argument:`${Wt}`,types:[Pt.name]})}if(en.allowShared===false&&tn.isSharedArrayBuffer(Wt.buffer)){throw rn.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."})}return Wt};rn.converters.DataView=function(Wt,Pt={}){if(rn.util.Type(Wt)!=="Object"||!tn.isDataView(Wt)){throw rn.errors.exception({header:"DataView",message:"Object is not a DataView."})}if(Pt.allowShared===false&&tn.isSharedArrayBuffer(Wt.buffer)){throw rn.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."})}return Wt};rn.converters.BufferSource=function(Wt,Pt={}){if(tn.isAnyArrayBuffer(Wt)){return rn.converters.ArrayBuffer(Wt,Pt)}if(tn.isTypedArray(Wt)){return rn.converters.TypedArray(Wt,Wt.constructor)}if(tn.isDataView(Wt)){return rn.converters.DataView(Wt,Pt)}throw new TypeError(`Could not convert ${Wt} to a BufferSource.`)};rn.converters["sequence"]=rn.sequenceConverter(rn.converters.ByteString);rn.converters["sequence>"]=rn.sequenceConverter(rn.converters["sequence"]);rn.converters["record"]=rn.recordConverter(rn.converters.ByteString,rn.converters.ByteString);Wt.exports={webidl:rn}},40396:Wt=>{"use strict";function getEncoding(Wt){if(!Wt){return"failure"}switch(Wt.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}Wt.exports={getEncoding:getEncoding}},82160:(Wt,Pt,en)=>{"use strict";const{staticPropertyDescriptors:tn,readOperation:nn,fireAProgressEvent:an}=en(10165);const{kState:rn,kError:In,kResult:sn,kEvents:on,kAborted:cn}=en(86812);const{webidl:dn}=en(74222);const{kEnumerableProperty:un}=en(3440);class FileReader extends EventTarget{constructor(){super();this[rn]="empty";this[sn]=null;this[In]=null;this[on]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(Wt){dn.brandCheck(this,FileReader);dn.argumentLengthCheck(arguments,1,{header:"FileReader.readAsArrayBuffer"});Wt=dn.converters.Blob(Wt,{strict:false});nn(this,Wt,"ArrayBuffer")}readAsBinaryString(Wt){dn.brandCheck(this,FileReader);dn.argumentLengthCheck(arguments,1,{header:"FileReader.readAsBinaryString"});Wt=dn.converters.Blob(Wt,{strict:false});nn(this,Wt,"BinaryString")}readAsText(Wt,Pt=undefined){dn.brandCheck(this,FileReader);dn.argumentLengthCheck(arguments,1,{header:"FileReader.readAsText"});Wt=dn.converters.Blob(Wt,{strict:false});if(Pt!==undefined){Pt=dn.converters.DOMString(Pt)}nn(this,Wt,"Text",Pt)}readAsDataURL(Wt){dn.brandCheck(this,FileReader);dn.argumentLengthCheck(arguments,1,{header:"FileReader.readAsDataURL"});Wt=dn.converters.Blob(Wt,{strict:false});nn(this,Wt,"DataURL")}abort(){if(this[rn]==="empty"||this[rn]==="done"){this[sn]=null;return}if(this[rn]==="loading"){this[rn]="done";this[sn]=null}this[cn]=true;an("abort",this);if(this[rn]!=="loading"){an("loadend",this)}}get readyState(){dn.brandCheck(this,FileReader);switch(this[rn]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){dn.brandCheck(this,FileReader);return this[sn]}get error(){dn.brandCheck(this,FileReader);return this[In]}get onloadend(){dn.brandCheck(this,FileReader);return this[on].loadend}set onloadend(Wt){dn.brandCheck(this,FileReader);if(this[on].loadend){this.removeEventListener("loadend",this[on].loadend)}if(typeof Wt==="function"){this[on].loadend=Wt;this.addEventListener("loadend",Wt)}else{this[on].loadend=null}}get onerror(){dn.brandCheck(this,FileReader);return this[on].error}set onerror(Wt){dn.brandCheck(this,FileReader);if(this[on].error){this.removeEventListener("error",this[on].error)}if(typeof Wt==="function"){this[on].error=Wt;this.addEventListener("error",Wt)}else{this[on].error=null}}get onloadstart(){dn.brandCheck(this,FileReader);return this[on].loadstart}set onloadstart(Wt){dn.brandCheck(this,FileReader);if(this[on].loadstart){this.removeEventListener("loadstart",this[on].loadstart)}if(typeof Wt==="function"){this[on].loadstart=Wt;this.addEventListener("loadstart",Wt)}else{this[on].loadstart=null}}get onprogress(){dn.brandCheck(this,FileReader);return this[on].progress}set onprogress(Wt){dn.brandCheck(this,FileReader);if(this[on].progress){this.removeEventListener("progress",this[on].progress)}if(typeof Wt==="function"){this[on].progress=Wt;this.addEventListener("progress",Wt)}else{this[on].progress=null}}get onload(){dn.brandCheck(this,FileReader);return this[on].load}set onload(Wt){dn.brandCheck(this,FileReader);if(this[on].load){this.removeEventListener("load",this[on].load)}if(typeof Wt==="function"){this[on].load=Wt;this.addEventListener("load",Wt)}else{this[on].load=null}}get onabort(){dn.brandCheck(this,FileReader);return this[on].abort}set onabort(Wt){dn.brandCheck(this,FileReader);if(this[on].abort){this.removeEventListener("abort",this[on].abort)}if(typeof Wt==="function"){this[on].abort=Wt;this.addEventListener("abort",Wt)}else{this[on].abort=null}}}FileReader.EMPTY=FileReader.prototype.EMPTY=0;FileReader.LOADING=FileReader.prototype.LOADING=1;FileReader.DONE=FileReader.prototype.DONE=2;Object.defineProperties(FileReader.prototype,{EMPTY:tn,LOADING:tn,DONE:tn,readAsArrayBuffer:un,readAsBinaryString:un,readAsText:un,readAsDataURL:un,abort:un,readyState:un,result:un,error:un,onloadstart:un,onprogress:un,onload:un,onabort:un,onerror:un,onloadend:un,[Symbol.toStringTag]:{value:"FileReader",writable:false,enumerable:false,configurable:true}});Object.defineProperties(FileReader,{EMPTY:tn,LOADING:tn,DONE:tn});Wt.exports={FileReader:FileReader}},15976:(Wt,Pt,en)=>{"use strict";const{webidl:tn}=en(74222);const nn=Symbol("ProgressEvent state");class ProgressEvent extends Event{constructor(Wt,Pt={}){Wt=tn.converters.DOMString(Wt);Pt=tn.converters.ProgressEventInit(Pt??{});super(Wt,Pt);this[nn]={lengthComputable:Pt.lengthComputable,loaded:Pt.loaded,total:Pt.total}}get lengthComputable(){tn.brandCheck(this,ProgressEvent);return this[nn].lengthComputable}get loaded(){tn.brandCheck(this,ProgressEvent);return this[nn].loaded}get total(){tn.brandCheck(this,ProgressEvent);return this[nn].total}}tn.converters.ProgressEventInit=tn.dictionaryConverter([{key:"lengthComputable",converter:tn.converters.boolean,defaultValue:false},{key:"loaded",converter:tn.converters["unsigned long long"],defaultValue:0},{key:"total",converter:tn.converters["unsigned long long"],defaultValue:0},{key:"bubbles",converter:tn.converters.boolean,defaultValue:false},{key:"cancelable",converter:tn.converters.boolean,defaultValue:false},{key:"composed",converter:tn.converters.boolean,defaultValue:false}]);Wt.exports={ProgressEvent:ProgressEvent}},86812:Wt=>{"use strict";Wt.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}},10165:(Wt,Pt,en)=>{"use strict";const{kState:tn,kError:nn,kResult:an,kAborted:rn,kLastProgressEventFired:In}=en(86812);const{ProgressEvent:sn}=en(15976);const{getEncoding:on}=en(40396);const{DOMException:cn}=en(87326);const{serializeAMimeType:dn,parseMIMEType:un}=en(94322);const{types:pn}=en(39023);const{StringDecoder:mn}=en(13193);const{btoa:bn}=en(20181);const Gn={enumerable:true,writable:false,configurable:false};function readOperation(Wt,Pt,en,sn){if(Wt[tn]==="loading"){throw new cn("Invalid state","InvalidStateError")}Wt[tn]="loading";Wt[an]=null;Wt[nn]=null;const on=Pt.stream();const dn=on.getReader();const un=[];let mn=dn.read();let bn=true;(async()=>{while(!Wt[rn]){try{const{done:on,value:cn}=await mn;if(bn&&!Wt[rn]){queueMicrotask((()=>{fireAProgressEvent("loadstart",Wt)}))}bn=false;if(!on&&pn.isUint8Array(cn)){un.push(cn);if((Wt[In]===undefined||Date.now()-Wt[In]>=50)&&!Wt[rn]){Wt[In]=Date.now();queueMicrotask((()=>{fireAProgressEvent("progress",Wt)}))}mn=dn.read()}else if(on){queueMicrotask((()=>{Wt[tn]="done";try{const tn=packageData(un,en,Pt.type,sn);if(Wt[rn]){return}Wt[an]=tn;fireAProgressEvent("load",Wt)}catch(Pt){Wt[nn]=Pt;fireAProgressEvent("error",Wt)}if(Wt[tn]!=="loading"){fireAProgressEvent("loadend",Wt)}}));break}}catch(Pt){if(Wt[rn]){return}queueMicrotask((()=>{Wt[tn]="done";Wt[nn]=Pt;fireAProgressEvent("error",Wt);if(Wt[tn]!=="loading"){fireAProgressEvent("loadend",Wt)}}));break}}})()}function fireAProgressEvent(Wt,Pt){const en=new sn(Wt,{bubbles:false,cancelable:false});Pt.dispatchEvent(en)}function packageData(Wt,Pt,en,tn){switch(Pt){case"DataURL":{let Pt="data:";const tn=un(en||"application/octet-stream");if(tn!=="failure"){Pt+=dn(tn)}Pt+=";base64,";const nn=new mn("latin1");for(const en of Wt){Pt+=bn(nn.write(en))}Pt+=bn(nn.end());return Pt}case"Text":{let Pt="failure";if(tn){Pt=on(tn)}if(Pt==="failure"&&en){const Wt=un(en);if(Wt!=="failure"){Pt=on(Wt.parameters.get("charset"))}}if(Pt==="failure"){Pt="UTF-8"}return decode(Wt,Pt)}case"ArrayBuffer":{const Pt=combineByteSequences(Wt);return Pt.buffer}case"BinaryString":{let Pt="";const en=new mn("latin1");for(const tn of Wt){Pt+=en.write(tn)}Pt+=en.end();return Pt}}}function decode(Wt,Pt){const en=combineByteSequences(Wt);const tn=BOMSniffing(en);let nn=0;if(tn!==null){Pt=tn;nn=tn==="UTF-8"?3:2}const an=en.slice(nn);return new TextDecoder(Pt).decode(an)}function BOMSniffing(Wt){const[Pt,en,tn]=Wt;if(Pt===239&&en===187&&tn===191){return"UTF-8"}else if(Pt===254&&en===255){return"UTF-16BE"}else if(Pt===255&&en===254){return"UTF-16LE"}return null}function combineByteSequences(Wt){const Pt=Wt.reduce(((Wt,Pt)=>Wt+Pt.byteLength),0);let en=0;return Wt.reduce(((Wt,Pt)=>{Wt.set(Pt,en);en+=Pt.byteLength;return Wt}),new Uint8Array(Pt))}Wt.exports={staticPropertyDescriptors:Gn,readOperation:readOperation,fireAProgressEvent:fireAProgressEvent}},32581:(Wt,Pt,en)=>{"use strict";const tn=Symbol.for("undici.globalDispatcher.1");const{InvalidArgumentError:nn}=en(68707);const an=en(59965);if(getGlobalDispatcher()===undefined){setGlobalDispatcher(new an)}function setGlobalDispatcher(Wt){if(!Wt||typeof Wt.dispatch!=="function"){throw new nn("Argument agent must implement Agent")}Object.defineProperty(globalThis,tn,{value:Wt,writable:true,enumerable:false,configurable:false})}function getGlobalDispatcher(){return globalThis[tn]}Wt.exports={setGlobalDispatcher:setGlobalDispatcher,getGlobalDispatcher:getGlobalDispatcher}},78840:Wt=>{"use strict";Wt.exports=class DecoratorHandler{constructor(Wt){this.handler=Wt}onConnect(...Wt){return this.handler.onConnect(...Wt)}onError(...Wt){return this.handler.onError(...Wt)}onUpgrade(...Wt){return this.handler.onUpgrade(...Wt)}onHeaders(...Wt){return this.handler.onHeaders(...Wt)}onData(...Wt){return this.handler.onData(...Wt)}onComplete(...Wt){return this.handler.onComplete(...Wt)}onBodySent(...Wt){return this.handler.onBodySent(...Wt)}}},48299:(Wt,Pt,en)=>{"use strict";const tn=en(3440);const{kBodyUsed:nn}=en(36443);const an=en(42613);const{InvalidArgumentError:rn}=en(68707);const In=en(24434);const sn=[300,301,302,303,307,308];const on=Symbol("body");class BodyAsyncIterable{constructor(Wt){this[on]=Wt;this[nn]=false}async*[Symbol.asyncIterator](){an(!this[nn],"disturbed");this[nn]=true;yield*this[on]}}class RedirectHandler{constructor(Wt,Pt,en,sn){if(Pt!=null&&(!Number.isInteger(Pt)||Pt<0)){throw new rn("maxRedirections must be a positive number")}tn.validateHandler(sn,en.method,en.upgrade);this.dispatch=Wt;this.location=null;this.abort=null;this.opts={...en,maxRedirections:0};this.maxRedirections=Pt;this.handler=sn;this.history=[];if(tn.isStream(this.opts.body)){if(tn.bodyLength(this.opts.body)===0){this.opts.body.on("data",(function(){an(false)}))}if(typeof this.opts.body.readableDidRead!=="boolean"){this.opts.body[nn]=false;In.prototype.on.call(this.opts.body,"data",(function(){this[nn]=true}))}}else if(this.opts.body&&typeof this.opts.body.pipeTo==="function"){this.opts.body=new BodyAsyncIterable(this.opts.body)}else if(this.opts.body&&typeof this.opts.body!=="string"&&!ArrayBuffer.isView(this.opts.body)&&tn.isIterable(this.opts.body)){this.opts.body=new BodyAsyncIterable(this.opts.body)}}onConnect(Wt){this.abort=Wt;this.handler.onConnect(Wt,{history:this.history})}onUpgrade(Wt,Pt,en){this.handler.onUpgrade(Wt,Pt,en)}onError(Wt){this.handler.onError(Wt)}onHeaders(Wt,Pt,en,nn){this.location=this.history.length>=this.maxRedirections||tn.isDisturbed(this.opts.body)?null:parseLocation(Wt,Pt);if(this.opts.origin){this.history.push(new URL(this.opts.path,this.opts.origin))}if(!this.location){return this.handler.onHeaders(Wt,Pt,en,nn)}const{origin:an,pathname:rn,search:In}=tn.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin)));const sn=In?`${rn}${In}`:rn;this.opts.headers=cleanRequestHeaders(this.opts.headers,Wt===303,this.opts.origin!==an);this.opts.path=sn;this.opts.origin=an;this.opts.maxRedirections=0;this.opts.query=null;if(Wt===303&&this.opts.method!=="HEAD"){this.opts.method="GET";this.opts.body=null}}onData(Wt){if(this.location){}else{return this.handler.onData(Wt)}}onComplete(Wt){if(this.location){this.location=null;this.abort=null;this.dispatch(this.opts,this)}else{this.handler.onComplete(Wt)}}onBodySent(Wt){if(this.handler.onBodySent){this.handler.onBodySent(Wt)}}}function parseLocation(Wt,Pt){if(sn.indexOf(Wt)===-1){return null}for(let Wt=0;Wt{const tn=en(42613);const{kRetryHandlerDefaultRetry:nn}=en(36443);const{RequestRetryError:an}=en(68707);const{isDisturbed:rn,parseHeaders:In,parseRangeHeader:sn}=en(3440);function calculateRetryAfterHeader(Wt){const Pt=Date.now();const en=new Date(Wt).getTime()-Pt;return en}class RetryHandler{constructor(Wt,Pt){const{retryOptions:en,...tn}=Wt;const{retry:an,maxRetries:rn,maxTimeout:In,minTimeout:sn,timeoutFactor:on,methods:cn,errorCodes:dn,retryAfter:un,statusCodes:pn}=en??{};this.dispatch=Pt.dispatch;this.handler=Pt.handler;this.opts=tn;this.abort=null;this.aborted=false;this.retryOpts={retry:an??RetryHandler[nn],retryAfter:un??true,maxTimeout:In??30*1e3,timeout:sn??500,timeoutFactor:on??2,maxRetries:rn??5,methods:cn??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:pn??[500,502,503,504,429],errorCodes:dn??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE"]};this.retryCount=0;this.start=0;this.end=null;this.etag=null;this.resume=null;this.handler.onConnect((Wt=>{this.aborted=true;if(this.abort){this.abort(Wt)}else{this.reason=Wt}}))}onRequestSent(){if(this.handler.onRequestSent){this.handler.onRequestSent()}}onUpgrade(Wt,Pt,en){if(this.handler.onUpgrade){this.handler.onUpgrade(Wt,Pt,en)}}onConnect(Wt){if(this.aborted){Wt(this.reason)}else{this.abort=Wt}}onBodySent(Wt){if(this.handler.onBodySent)return this.handler.onBodySent(Wt)}static[nn](Wt,{state:Pt,opts:en},tn){const{statusCode:nn,code:an,headers:rn}=Wt;const{method:In,retryOptions:sn}=en;const{maxRetries:on,timeout:cn,maxTimeout:dn,timeoutFactor:un,statusCodes:pn,errorCodes:mn,methods:bn}=sn;let{counter:Gn,currentTimeout:hn}=Pt;hn=hn!=null&&hn>0?hn:cn;if(an&&an!=="UND_ERR_REQ_RETRY"&&an!=="UND_ERR_SOCKET"&&!mn.includes(an)){tn(Wt);return}if(Array.isArray(bn)&&!bn.includes(In)){tn(Wt);return}if(nn!=null&&Array.isArray(pn)&&!pn.includes(nn)){tn(Wt);return}if(Gn>on){tn(Wt);return}let Zn=rn!=null&&rn["retry-after"];if(Zn){Zn=Number(Zn);Zn=isNaN(Zn)?calculateRetryAfterHeader(Zn):Zn*1e3}const An=Zn>0?Math.min(Zn,dn):Math.min(hn*un**Gn,dn);Pt.currentTimeout=An;setTimeout((()=>tn(null)),An)}onHeaders(Wt,Pt,en,nn){const rn=In(Pt);this.retryCount+=1;if(Wt>=300){this.abort(new an("Request failed",Wt,{headers:rn,count:this.retryCount}));return false}if(this.resume!=null){this.resume=null;if(Wt!==206){return true}const Pt=sn(rn["content-range"]);if(!Pt){this.abort(new an("Content-Range mismatch",Wt,{headers:rn,count:this.retryCount}));return false}if(this.etag!=null&&this.etag!==rn.etag){this.abort(new an("ETag mismatch",Wt,{headers:rn,count:this.retryCount}));return false}const{start:nn,size:In,end:on=In}=Pt;tn(this.start===nn,"content-range mismatch");tn(this.end==null||this.end===on,"content-range mismatch");this.resume=en;return true}if(this.end==null){if(Wt===206){const an=sn(rn["content-range"]);if(an==null){return this.handler.onHeaders(Wt,Pt,en,nn)}const{start:In,size:on,end:cn=on}=an;tn(In!=null&&Number.isFinite(In)&&this.start!==In,"content-range mismatch");tn(Number.isFinite(In));tn(cn!=null&&Number.isFinite(cn)&&this.end!==cn,"invalid content-length");this.start=In;this.end=cn}if(this.end==null){const Wt=rn["content-length"];this.end=Wt!=null?Number(Wt):null}tn(Number.isFinite(this.start));tn(this.end==null||Number.isFinite(this.end),"invalid content-length");this.resume=en;this.etag=rn.etag!=null?rn.etag:null;return this.handler.onHeaders(Wt,Pt,en,nn)}const on=new an("Request failed",Wt,{headers:rn,count:this.retryCount});this.abort(on);return false}onData(Wt){this.start+=Wt.length;return this.handler.onData(Wt)}onComplete(Wt){this.retryCount=0;return this.handler.onComplete(Wt)}onError(Wt){if(this.aborted||rn(this.opts.body)){return this.handler.onError(Wt)}this.retryOpts.retry(Wt,{state:{counter:this.retryCount++,currentTimeout:this.retryAfter},opts:{retryOptions:this.retryOpts,...this.opts}},onRetry.bind(this));function onRetry(Wt){if(Wt!=null||this.aborted||rn(this.opts.body)){return this.handler.onError(Wt)}if(this.start!==0){this.opts={...this.opts,headers:{...this.opts.headers,range:`bytes=${this.start}-${this.end??""}`}}}try{this.dispatch(this.opts,this)}catch(Wt){this.handler.onError(Wt)}}}}Wt.exports=RetryHandler},64415:(Wt,Pt,en)=>{"use strict";const tn=en(48299);function createRedirectInterceptor({maxRedirections:Wt}){return Pt=>function Intercept(en,nn){const{maxRedirections:an=Wt}=en;if(!an){return Pt(en,nn)}const rn=new tn(Pt,an,en,nn);en={...en,maxRedirections:0};return Pt(en,rn)}}Wt.exports=createRedirectInterceptor},52824:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.SPECIAL_HEADERS=Pt.HEADER_STATE=Pt.MINOR=Pt.MAJOR=Pt.CONNECTION_TOKEN_CHARS=Pt.HEADER_CHARS=Pt.TOKEN=Pt.STRICT_TOKEN=Pt.HEX=Pt.URL_CHAR=Pt.STRICT_URL_CHAR=Pt.USERINFO_CHARS=Pt.MARK=Pt.ALPHANUM=Pt.NUM=Pt.HEX_MAP=Pt.NUM_MAP=Pt.ALPHA=Pt.FINISH=Pt.H_METHOD_MAP=Pt.METHOD_MAP=Pt.METHODS_RTSP=Pt.METHODS_ICE=Pt.METHODS_HTTP=Pt.METHODS=Pt.LENIENT_FLAGS=Pt.FLAGS=Pt.TYPE=Pt.ERROR=void 0;const tn=en(50172);var nn;(function(Wt){Wt[Wt["OK"]=0]="OK";Wt[Wt["INTERNAL"]=1]="INTERNAL";Wt[Wt["STRICT"]=2]="STRICT";Wt[Wt["LF_EXPECTED"]=3]="LF_EXPECTED";Wt[Wt["UNEXPECTED_CONTENT_LENGTH"]=4]="UNEXPECTED_CONTENT_LENGTH";Wt[Wt["CLOSED_CONNECTION"]=5]="CLOSED_CONNECTION";Wt[Wt["INVALID_METHOD"]=6]="INVALID_METHOD";Wt[Wt["INVALID_URL"]=7]="INVALID_URL";Wt[Wt["INVALID_CONSTANT"]=8]="INVALID_CONSTANT";Wt[Wt["INVALID_VERSION"]=9]="INVALID_VERSION";Wt[Wt["INVALID_HEADER_TOKEN"]=10]="INVALID_HEADER_TOKEN";Wt[Wt["INVALID_CONTENT_LENGTH"]=11]="INVALID_CONTENT_LENGTH";Wt[Wt["INVALID_CHUNK_SIZE"]=12]="INVALID_CHUNK_SIZE";Wt[Wt["INVALID_STATUS"]=13]="INVALID_STATUS";Wt[Wt["INVALID_EOF_STATE"]=14]="INVALID_EOF_STATE";Wt[Wt["INVALID_TRANSFER_ENCODING"]=15]="INVALID_TRANSFER_ENCODING";Wt[Wt["CB_MESSAGE_BEGIN"]=16]="CB_MESSAGE_BEGIN";Wt[Wt["CB_HEADERS_COMPLETE"]=17]="CB_HEADERS_COMPLETE";Wt[Wt["CB_MESSAGE_COMPLETE"]=18]="CB_MESSAGE_COMPLETE";Wt[Wt["CB_CHUNK_HEADER"]=19]="CB_CHUNK_HEADER";Wt[Wt["CB_CHUNK_COMPLETE"]=20]="CB_CHUNK_COMPLETE";Wt[Wt["PAUSED"]=21]="PAUSED";Wt[Wt["PAUSED_UPGRADE"]=22]="PAUSED_UPGRADE";Wt[Wt["PAUSED_H2_UPGRADE"]=23]="PAUSED_H2_UPGRADE";Wt[Wt["USER"]=24]="USER"})(nn=Pt.ERROR||(Pt.ERROR={}));var an;(function(Wt){Wt[Wt["BOTH"]=0]="BOTH";Wt[Wt["REQUEST"]=1]="REQUEST";Wt[Wt["RESPONSE"]=2]="RESPONSE"})(an=Pt.TYPE||(Pt.TYPE={}));var rn;(function(Wt){Wt[Wt["CONNECTION_KEEP_ALIVE"]=1]="CONNECTION_KEEP_ALIVE";Wt[Wt["CONNECTION_CLOSE"]=2]="CONNECTION_CLOSE";Wt[Wt["CONNECTION_UPGRADE"]=4]="CONNECTION_UPGRADE";Wt[Wt["CHUNKED"]=8]="CHUNKED";Wt[Wt["UPGRADE"]=16]="UPGRADE";Wt[Wt["CONTENT_LENGTH"]=32]="CONTENT_LENGTH";Wt[Wt["SKIPBODY"]=64]="SKIPBODY";Wt[Wt["TRAILING"]=128]="TRAILING";Wt[Wt["TRANSFER_ENCODING"]=512]="TRANSFER_ENCODING"})(rn=Pt.FLAGS||(Pt.FLAGS={}));var In;(function(Wt){Wt[Wt["HEADERS"]=1]="HEADERS";Wt[Wt["CHUNKED_LENGTH"]=2]="CHUNKED_LENGTH";Wt[Wt["KEEP_ALIVE"]=4]="KEEP_ALIVE"})(In=Pt.LENIENT_FLAGS||(Pt.LENIENT_FLAGS={}));var sn;(function(Wt){Wt[Wt["DELETE"]=0]="DELETE";Wt[Wt["GET"]=1]="GET";Wt[Wt["HEAD"]=2]="HEAD";Wt[Wt["POST"]=3]="POST";Wt[Wt["PUT"]=4]="PUT";Wt[Wt["CONNECT"]=5]="CONNECT";Wt[Wt["OPTIONS"]=6]="OPTIONS";Wt[Wt["TRACE"]=7]="TRACE";Wt[Wt["COPY"]=8]="COPY";Wt[Wt["LOCK"]=9]="LOCK";Wt[Wt["MKCOL"]=10]="MKCOL";Wt[Wt["MOVE"]=11]="MOVE";Wt[Wt["PROPFIND"]=12]="PROPFIND";Wt[Wt["PROPPATCH"]=13]="PROPPATCH";Wt[Wt["SEARCH"]=14]="SEARCH";Wt[Wt["UNLOCK"]=15]="UNLOCK";Wt[Wt["BIND"]=16]="BIND";Wt[Wt["REBIND"]=17]="REBIND";Wt[Wt["UNBIND"]=18]="UNBIND";Wt[Wt["ACL"]=19]="ACL";Wt[Wt["REPORT"]=20]="REPORT";Wt[Wt["MKACTIVITY"]=21]="MKACTIVITY";Wt[Wt["CHECKOUT"]=22]="CHECKOUT";Wt[Wt["MERGE"]=23]="MERGE";Wt[Wt["M-SEARCH"]=24]="M-SEARCH";Wt[Wt["NOTIFY"]=25]="NOTIFY";Wt[Wt["SUBSCRIBE"]=26]="SUBSCRIBE";Wt[Wt["UNSUBSCRIBE"]=27]="UNSUBSCRIBE";Wt[Wt["PATCH"]=28]="PATCH";Wt[Wt["PURGE"]=29]="PURGE";Wt[Wt["MKCALENDAR"]=30]="MKCALENDAR";Wt[Wt["LINK"]=31]="LINK";Wt[Wt["UNLINK"]=32]="UNLINK";Wt[Wt["SOURCE"]=33]="SOURCE";Wt[Wt["PRI"]=34]="PRI";Wt[Wt["DESCRIBE"]=35]="DESCRIBE";Wt[Wt["ANNOUNCE"]=36]="ANNOUNCE";Wt[Wt["SETUP"]=37]="SETUP";Wt[Wt["PLAY"]=38]="PLAY";Wt[Wt["PAUSE"]=39]="PAUSE";Wt[Wt["TEARDOWN"]=40]="TEARDOWN";Wt[Wt["GET_PARAMETER"]=41]="GET_PARAMETER";Wt[Wt["SET_PARAMETER"]=42]="SET_PARAMETER";Wt[Wt["REDIRECT"]=43]="REDIRECT";Wt[Wt["RECORD"]=44]="RECORD";Wt[Wt["FLUSH"]=45]="FLUSH"})(sn=Pt.METHODS||(Pt.METHODS={}));Pt.METHODS_HTTP=[sn.DELETE,sn.GET,sn.HEAD,sn.POST,sn.PUT,sn.CONNECT,sn.OPTIONS,sn.TRACE,sn.COPY,sn.LOCK,sn.MKCOL,sn.MOVE,sn.PROPFIND,sn.PROPPATCH,sn.SEARCH,sn.UNLOCK,sn.BIND,sn.REBIND,sn.UNBIND,sn.ACL,sn.REPORT,sn.MKACTIVITY,sn.CHECKOUT,sn.MERGE,sn["M-SEARCH"],sn.NOTIFY,sn.SUBSCRIBE,sn.UNSUBSCRIBE,sn.PATCH,sn.PURGE,sn.MKCALENDAR,sn.LINK,sn.UNLINK,sn.PRI,sn.SOURCE];Pt.METHODS_ICE=[sn.SOURCE];Pt.METHODS_RTSP=[sn.OPTIONS,sn.DESCRIBE,sn.ANNOUNCE,sn.SETUP,sn.PLAY,sn.PAUSE,sn.TEARDOWN,sn.GET_PARAMETER,sn.SET_PARAMETER,sn.REDIRECT,sn.RECORD,sn.FLUSH,sn.GET,sn.POST];Pt.METHOD_MAP=tn.enumToMap(sn);Pt.H_METHOD_MAP={};Object.keys(Pt.METHOD_MAP).forEach((Wt=>{if(/^H/.test(Wt)){Pt.H_METHOD_MAP[Wt]=Pt.METHOD_MAP[Wt]}}));var on;(function(Wt){Wt[Wt["SAFE"]=0]="SAFE";Wt[Wt["SAFE_WITH_CB"]=1]="SAFE_WITH_CB";Wt[Wt["UNSAFE"]=2]="UNSAFE"})(on=Pt.FINISH||(Pt.FINISH={}));Pt.ALPHA=[];for(let Wt="A".charCodeAt(0);Wt<="Z".charCodeAt(0);Wt++){Pt.ALPHA.push(String.fromCharCode(Wt));Pt.ALPHA.push(String.fromCharCode(Wt+32))}Pt.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};Pt.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};Pt.NUM=["0","1","2","3","4","5","6","7","8","9"];Pt.ALPHANUM=Pt.ALPHA.concat(Pt.NUM);Pt.MARK=["-","_",".","!","~","*","'","(",")"];Pt.USERINFO_CHARS=Pt.ALPHANUM.concat(Pt.MARK).concat(["%",";",":","&","=","+","$",","]);Pt.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(Pt.ALPHANUM);Pt.URL_CHAR=Pt.STRICT_URL_CHAR.concat(["\t","\f"]);for(let Wt=128;Wt<=255;Wt++){Pt.URL_CHAR.push(Wt)}Pt.HEX=Pt.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);Pt.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(Pt.ALPHANUM);Pt.TOKEN=Pt.STRICT_TOKEN.concat([" "]);Pt.HEADER_CHARS=["\t"];for(let Wt=32;Wt<=255;Wt++){if(Wt!==127){Pt.HEADER_CHARS.push(Wt)}}Pt.CONNECTION_TOKEN_CHARS=Pt.HEADER_CHARS.filter((Wt=>Wt!==44));Pt.MAJOR=Pt.NUM_MAP;Pt.MINOR=Pt.MAJOR;var cn;(function(Wt){Wt[Wt["GENERAL"]=0]="GENERAL";Wt[Wt["CONNECTION"]=1]="CONNECTION";Wt[Wt["CONTENT_LENGTH"]=2]="CONTENT_LENGTH";Wt[Wt["TRANSFER_ENCODING"]=3]="TRANSFER_ENCODING";Wt[Wt["UPGRADE"]=4]="UPGRADE";Wt[Wt["CONNECTION_KEEP_ALIVE"]=5]="CONNECTION_KEEP_ALIVE";Wt[Wt["CONNECTION_CLOSE"]=6]="CONNECTION_CLOSE";Wt[Wt["CONNECTION_UPGRADE"]=7]="CONNECTION_UPGRADE";Wt[Wt["TRANSFER_ENCODING_CHUNKED"]=8]="TRANSFER_ENCODING_CHUNKED"})(cn=Pt.HEADER_STATE||(Pt.HEADER_STATE={}));Pt.SPECIAL_HEADERS={connection:cn.CONNECTION,"content-length":cn.CONTENT_LENGTH,"proxy-connection":cn.CONNECTION,"transfer-encoding":cn.TRANSFER_ENCODING,upgrade:cn.UPGRADE}},63870:Wt=>{Wt.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJsbGh0dHBfc3RhdHVzX25hbWUAIRpsbGh0dHBfc2V0X2xlbmllbnRfaGVhZGVycwAiIWxsaHR0cF9zZXRfbGVuaWVudF9jaHVua2VkX2xlbmd0aAAjHWxsaHR0cF9zZXRfbGVuaWVudF9rZWVwX2FsaXZlACQkbGxodHRwX3NldF9sZW5pZW50X3RyYW5zZmVyX2VuY29kaW5nACUYbGxodHRwX21lc3NhZ2VfbmVlZHNfZW9mAD8JFwEAQQELEQECAwQFCwYHNTk3MS8tJyspCsLgAkUCAAsIABCIgICAAAsZACAAEMKAgIAAGiAAIAI2AjggACABOgAoCxwAIAAgAC8BMiAALQAuIAAQwYCAgAAQgICAgAALKgEBf0HAABDGgICAACIBEMKAgIAAGiABQYCIgIAANgI4IAEgADoAKCABCwoAIAAQyICAgAALBwAgAC0AKAsHACAALQAqCwcAIAAtACsLBwAgAC0AKQsHACAALwEyCwcAIAAtAC4LRQEEfyAAKAIYIQEgAC0ALSECIAAtACghAyAAKAI4IQQgABDCgICAABogACAENgI4IAAgAzoAKCAAIAI6AC0gACABNgIYCxEAIAAgASABIAJqEMOAgIAACxAAIABBAEHcABDMgICAABoLZwEBf0EAIQECQCAAKAIMDQACQAJAAkACQCAALQAvDgMBAAMCCyAAKAI4IgFFDQAgASgCLCIBRQ0AIAAgARGAgICAAAAiAQ0DC0EADwsQyoCAgAAACyAAQcOWgIAANgIQQQ4hAQsgAQseAAJAIAAoAgwNACAAQdGbgIAANgIQIABBFTYCDAsLFgACQCAAKAIMQRVHDQAgAEEANgIMCwsWAAJAIAAoAgxBFkcNACAAQQA2AgwLCwcAIAAoAgwLBwAgACgCEAsJACAAIAE2AhALBwAgACgCFAsiAAJAIABBJEkNABDKgICAAAALIABBAnRBoLOAgABqKAIACyIAAkAgAEEuSQ0AEMqAgIAAAAsgAEECdEGwtICAAGooAgAL7gsBAX9B66iAgAAhAQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABBnH9qDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0Hhp4CAAA8LQaShgIAADwtBy6yAgAAPC0H+sYCAAA8LQcCkgIAADwtBq6SAgAAPC0GNqICAAA8LQeKmgIAADwtBgLCAgAAPC0G5r4CAAA8LQdekgIAADwtB75+AgAAPC0Hhn4CAAA8LQfqfgIAADwtB8qCAgAAPC0Gor4CAAA8LQa6ygIAADwtBiLCAgAAPC0Hsp4CAAA8LQYKigIAADwtBjp2AgAAPC0HQroCAAA8LQcqjgIAADwtBxbKAgAAPC0HfnICAAA8LQdKcgIAADwtBxKCAgAAPC0HXoICAAA8LQaKfgIAADwtB7a6AgAAPC0GrsICAAA8LQdSlgIAADwtBzK6AgAAPC0H6roCAAA8LQfyrgIAADwtB0rCAgAAPC0HxnYCAAA8LQbuggIAADwtB96uAgAAPC0GQsYCAAA8LQdexgIAADwtBoq2AgAAPC0HUp4CAAA8LQeCrgIAADwtBn6yAgAAPC0HrsYCAAA8LQdWfgIAADwtByrGAgAAPC0HepYCAAA8LQdSegIAADwtB9JyAgAAPC0GnsoCAAA8LQbGdgIAADwtBoJ2AgAAPC0G5sYCAAA8LQbywgIAADwtBkqGAgAAPC0GzpoCAAA8LQemsgIAADwtBrJ6AgAAPC0HUq4CAAA8LQfemgIAADwtBgKaAgAAPC0GwoYCAAA8LQf6egIAADwtBjaOAgAAPC0GJrYCAAA8LQfeigIAADwtBoLGAgAAPC0Gun4CAAA8LQcalgIAADwtB6J6AgAAPC0GTooCAAA8LQcKvgIAADwtBw52AgAAPC0GLrICAAA8LQeGdgIAADwtBja+AgAAPC0HqoYCAAA8LQbStgIAADwtB0q+AgAAPC0HfsoCAAA8LQdKygIAADwtB8LCAgAAPC0GpooCAAA8LQfmjgIAADwtBmZ6AgAAPC0G1rICAAA8LQZuwgIAADwtBkrKAgAAPC0G2q4CAAA8LQcKigIAADwtB+LKAgAAPC0GepYCAAA8LQdCigIAADwtBup6AgAAPC0GBnoCAAA8LEMqAgIAAAAtB1qGAgAAhAQsgAQsWACAAIAAtAC1B/gFxIAFBAEdyOgAtCxkAIAAgAC0ALUH9AXEgAUEAR0EBdHI6AC0LGQAgACAALQAtQfsBcSABQQBHQQJ0cjoALQsZACAAIAAtAC1B9wFxIAFBAEdBA3RyOgAtCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAgAiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCBCIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQcaRgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIwIgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAggiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEH2ioCAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCNCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIMIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABB7ZqAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAjgiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCECIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQZWQgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAI8IgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAhQiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEGqm4CAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCQCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIYIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABB7ZOAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAkQiBEUNACAAIAQRgICAgAAAIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCJCIERQ0AIAAgBBGAgICAAAAhAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIsIgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAigiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEH2iICAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCUCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIcIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABBwpmAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAkgiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCICIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQZSUgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAJMIgRFDQAgACAEEYCAgIAAACEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAlQiBEUNACAAIAQRgICAgAAAIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCWCIERQ0AIAAgBBGAgICAAAAhAwsgAwtFAQF/AkACQCAALwEwQRRxQRRHDQBBASEDIAAtAChBAUYNASAALwEyQeUARiEDDAELIAAtAClBBUYhAwsgACADOgAuQQAL/gEBA39BASEDAkAgAC8BMCIEQQhxDQAgACkDIEIAUiEDCwJAAkAgAC0ALkUNAEEBIQUgAC0AKUEFRg0BQQEhBSAEQcAAcUUgA3FBAUcNAQtBACEFIARBwABxDQBBAiEFIARB//8DcSIDQQhxDQACQCADQYAEcUUNAAJAIAAtAChBAUcNACAALQAtQQpxDQBBBQ8LQQQPCwJAIANBIHENAAJAIAAtAChBAUYNACAALwEyQf//A3EiAEGcf2pB5ABJDQAgAEHMAUYNACAAQbACRg0AQQQhBSAEQShxRQ0CIANBiARxQYAERg0CC0EADwtBAEEDIAApAyBQGyEFCyAFC2IBAn9BACEBAkAgAC0AKEEBRg0AIAAvATJB//8DcSICQZx/akHkAEkNACACQcwBRg0AIAJBsAJGDQAgAC8BMCIAQcAAcQ0AQQEhASAAQYgEcUGABEYNACAAQShxRSEBCyABC6cBAQN/AkACQAJAIAAtACpFDQAgAC0AK0UNAEEAIQMgAC8BMCIEQQJxRQ0BDAILQQAhAyAALwEwIgRBAXFFDQELQQEhAyAALQAoQQFGDQAgAC8BMkH//wNxIgVBnH9qQeQASQ0AIAVBzAFGDQAgBUGwAkYNACAEQcAAcQ0AQQAhAyAEQYgEcUGABEYNACAEQShxQQBHIQMLIABBADsBMCAAQQA6AC8gAwuZAQECfwJAAkACQCAALQAqRQ0AIAAtACtFDQBBACEBIAAvATAiAkECcUUNAQwCC0EAIQEgAC8BMCICQQFxRQ0BC0EBIQEgAC0AKEEBRg0AIAAvATJB//8DcSIAQZx/akHkAEkNACAAQcwBRg0AIABBsAJGDQAgAkHAAHENAEEAIQEgAkGIBHFBgARGDQAgAkEocUEARyEBCyABC1kAIABBGGpCADcDACAAQgA3AwAgAEE4akIANwMAIABBMGpCADcDACAAQShqQgA3AwAgAEEgakIANwMAIABBEGpCADcDACAAQQhqQgA3AwAgAEHdATYCHEEAC3sBAX8CQCAAKAIMIgMNAAJAIAAoAgRFDQAgACABNgIECwJAIAAgASACEMSAgIAAIgMNACAAKAIMDwsgACADNgIcQQAhAyAAKAIEIgFFDQAgACABIAIgACgCCBGBgICAAAAiAUUNACAAIAI2AhQgACABNgIMIAEhAwsgAwvk8wEDDn8DfgR/I4CAgIAAQRBrIgMkgICAgAAgASEEIAEhBSABIQYgASEHIAEhCCABIQkgASEKIAEhCyABIQwgASENIAEhDiABIQ8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCHCIQQX9qDt0B2gEB2QECAwQFBgcICQoLDA0O2AEPENcBERLWARMUFRYXGBkaG+AB3wEcHR7VAR8gISIjJCXUASYnKCkqKyzTAdIBLS7RAdABLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVG2wFHSElKzwHOAUvNAUzMAU1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4ABgQGCAYMBhAGFAYYBhwGIAYkBigGLAYwBjQGOAY8BkAGRAZIBkwGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4BnwGgAaEBogGjAaQBpQGmAacBqAGpAaoBqwGsAa0BrgGvAbABsQGyAbMBtAG1AbYBtwHLAcoBuAHJAbkByAG6AbsBvAG9Ab4BvwHAAcEBwgHDAcQBxQHGAQDcAQtBACEQDMYBC0EOIRAMxQELQQ0hEAzEAQtBDyEQDMMBC0EQIRAMwgELQRMhEAzBAQtBFCEQDMABC0EVIRAMvwELQRYhEAy+AQtBFyEQDL0BC0EYIRAMvAELQRkhEAy7AQtBGiEQDLoBC0EbIRAMuQELQRwhEAy4AQtBCCEQDLcBC0EdIRAMtgELQSAhEAy1AQtBHyEQDLQBC0EHIRAMswELQSEhEAyyAQtBIiEQDLEBC0EeIRAMsAELQSMhEAyvAQtBEiEQDK4BC0ERIRAMrQELQSQhEAysAQtBJSEQDKsBC0EmIRAMqgELQSchEAypAQtBwwEhEAyoAQtBKSEQDKcBC0ErIRAMpgELQSwhEAylAQtBLSEQDKQBC0EuIRAMowELQS8hEAyiAQtBxAEhEAyhAQtBMCEQDKABC0E0IRAMnwELQQwhEAyeAQtBMSEQDJ0BC0EyIRAMnAELQTMhEAybAQtBOSEQDJoBC0E1IRAMmQELQcUBIRAMmAELQQshEAyXAQtBOiEQDJYBC0E2IRAMlQELQQohEAyUAQtBNyEQDJMBC0E4IRAMkgELQTwhEAyRAQtBOyEQDJABC0E9IRAMjwELQQkhEAyOAQtBKCEQDI0BC0E+IRAMjAELQT8hEAyLAQtBwAAhEAyKAQtBwQAhEAyJAQtBwgAhEAyIAQtBwwAhEAyHAQtBxAAhEAyGAQtBxQAhEAyFAQtBxgAhEAyEAQtBKiEQDIMBC0HHACEQDIIBC0HIACEQDIEBC0HJACEQDIABC0HKACEQDH8LQcsAIRAMfgtBzQAhEAx9C0HMACEQDHwLQc4AIRAMewtBzwAhEAx6C0HQACEQDHkLQdEAIRAMeAtB0gAhEAx3C0HTACEQDHYLQdQAIRAMdQtB1gAhEAx0C0HVACEQDHMLQQYhEAxyC0HXACEQDHELQQUhEAxwC0HYACEQDG8LQQQhEAxuC0HZACEQDG0LQdoAIRAMbAtB2wAhEAxrC0HcACEQDGoLQQMhEAxpC0HdACEQDGgLQd4AIRAMZwtB3wAhEAxmC0HhACEQDGULQeAAIRAMZAtB4gAhEAxjC0HjACEQDGILQQIhEAxhC0HkACEQDGALQeUAIRAMXwtB5gAhEAxeC0HnACEQDF0LQegAIRAMXAtB6QAhEAxbC0HqACEQDFoLQesAIRAMWQtB7AAhEAxYC0HtACEQDFcLQe4AIRAMVgtB7wAhEAxVC0HwACEQDFQLQfEAIRAMUwtB8gAhEAxSC0HzACEQDFELQfQAIRAMUAtB9QAhEAxPC0H2ACEQDE4LQfcAIRAMTQtB+AAhEAxMC0H5ACEQDEsLQfoAIRAMSgtB+wAhEAxJC0H8ACEQDEgLQf0AIRAMRwtB/gAhEAxGC0H/ACEQDEULQYABIRAMRAtBgQEhEAxDC0GCASEQDEILQYMBIRAMQQtBhAEhEAxAC0GFASEQDD8LQYYBIRAMPgtBhwEhEAw9C0GIASEQDDwLQYkBIRAMOwtBigEhEAw6C0GLASEQDDkLQYwBIRAMOAtBjQEhEAw3C0GOASEQDDYLQY8BIRAMNQtBkAEhEAw0C0GRASEQDDMLQZIBIRAMMgtBkwEhEAwxC0GUASEQDDALQZUBIRAMLwtBlgEhEAwuC0GXASEQDC0LQZgBIRAMLAtBmQEhEAwrC0GaASEQDCoLQZsBIRAMKQtBnAEhEAwoC0GdASEQDCcLQZ4BIRAMJgtBnwEhEAwlC0GgASEQDCQLQaEBIRAMIwtBogEhEAwiC0GjASEQDCELQaQBIRAMIAtBpQEhEAwfC0GmASEQDB4LQacBIRAMHQtBqAEhEAwcC0GpASEQDBsLQaoBIRAMGgtBqwEhEAwZC0GsASEQDBgLQa0BIRAMFwtBrgEhEAwWC0EBIRAMFQtBrwEhEAwUC0GwASEQDBMLQbEBIRAMEgtBswEhEAwRC0GyASEQDBALQbQBIRAMDwtBtQEhEAwOC0G2ASEQDA0LQbcBIRAMDAtBuAEhEAwLC0G5ASEQDAoLQboBIRAMCQtBuwEhEAwIC0HGASEQDAcLQbwBIRAMBgtBvQEhEAwFC0G+ASEQDAQLQb8BIRAMAwtBwAEhEAwCC0HCASEQDAELQcEBIRALA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAQDscBAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxweHyAhIyUoP0BBREVGR0hJSktMTU9QUVJT3gNXWVtcXWBiZWZnaGlqa2xtb3BxcnN0dXZ3eHl6e3x9foABggGFAYYBhwGJAYsBjAGNAY4BjwGQAZEBlAGVAZYBlwGYAZkBmgGbAZwBnQGeAZ8BoAGhAaIBowGkAaUBpgGnAagBqQGqAasBrAGtAa4BrwGwAbEBsgGzAbQBtQG2AbcBuAG5AboBuwG8Ab0BvgG/AcABwQHCAcMBxAHFAcYBxwHIAckBygHLAcwBzQHOAc8B0AHRAdIB0wHUAdUB1gHXAdgB2QHaAdsB3AHdAd4B4AHhAeIB4wHkAeUB5gHnAegB6QHqAesB7AHtAe4B7wHwAfEB8gHzAZkCpAKwAv4C/gILIAEiBCACRw3zAUHdASEQDP8DCyABIhAgAkcN3QFBwwEhEAz+AwsgASIBIAJHDZABQfcAIRAM/QMLIAEiASACRw2GAUHvACEQDPwDCyABIgEgAkcNf0HqACEQDPsDCyABIgEgAkcNe0HoACEQDPoDCyABIgEgAkcNeEHmACEQDPkDCyABIgEgAkcNGkEYIRAM+AMLIAEiASACRw0UQRIhEAz3AwsgASIBIAJHDVlBxQAhEAz2AwsgASIBIAJHDUpBPyEQDPUDCyABIgEgAkcNSEE8IRAM9AMLIAEiASACRw1BQTEhEAzzAwsgAC0ALkEBRg3rAwyHAgsgACABIgEgAhDAgICAAEEBRw3mASAAQgA3AyAM5wELIAAgASIBIAIQtICAgAAiEA3nASABIQEM9QILAkAgASIBIAJHDQBBBiEQDPADCyAAIAFBAWoiASACELuAgIAAIhAN6AEgASEBDDELIABCADcDIEESIRAM1QMLIAEiECACRw0rQR0hEAztAwsCQCABIgEgAkYNACABQQFqIQFBECEQDNQDC0EHIRAM7AMLIABCACAAKQMgIhEgAiABIhBrrSISfSITIBMgEVYbNwMgIBEgElYiFEUN5QFBCCEQDOsDCwJAIAEiASACRg0AIABBiYCAgAA2AgggACABNgIEIAEhAUEUIRAM0gMLQQkhEAzqAwsgASEBIAApAyBQDeQBIAEhAQzyAgsCQCABIgEgAkcNAEELIRAM6QMLIAAgAUEBaiIBIAIQtoCAgAAiEA3lASABIQEM8gILIAAgASIBIAIQuICAgAAiEA3lASABIQEM8gILIAAgASIBIAIQuICAgAAiEA3mASABIQEMDQsgACABIgEgAhC6gICAACIQDecBIAEhAQzwAgsCQCABIgEgAkcNAEEPIRAM5QMLIAEtAAAiEEE7Rg0IIBBBDUcN6AEgAUEBaiEBDO8CCyAAIAEiASACELqAgIAAIhAN6AEgASEBDPICCwNAAkAgAS0AAEHwtYCAAGotAAAiEEEBRg0AIBBBAkcN6wEgACgCBCEQIABBADYCBCAAIBAgAUEBaiIBELmAgIAAIhAN6gEgASEBDPQCCyABQQFqIgEgAkcNAAtBEiEQDOIDCyAAIAEiASACELqAgIAAIhAN6QEgASEBDAoLIAEiASACRw0GQRshEAzgAwsCQCABIgEgAkcNAEEWIRAM4AMLIABBioCAgAA2AgggACABNgIEIAAgASACELiAgIAAIhAN6gEgASEBQSAhEAzGAwsCQCABIgEgAkYNAANAAkAgAS0AAEHwt4CAAGotAAAiEEECRg0AAkAgEEF/ag4E5QHsAQDrAewBCyABQQFqIQFBCCEQDMgDCyABQQFqIgEgAkcNAAtBFSEQDN8DC0EVIRAM3gMLA0ACQCABLQAAQfC5gIAAai0AACIQQQJGDQAgEEF/ag4E3gHsAeAB6wHsAQsgAUEBaiIBIAJHDQALQRghEAzdAwsCQCABIgEgAkYNACAAQYuAgIAANgIIIAAgATYCBCABIQFBByEQDMQDC0EZIRAM3AMLIAFBAWohAQwCCwJAIAEiFCACRw0AQRohEAzbAwsgFCEBAkAgFC0AAEFzag4U3QLuAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gIA7gILQQAhECAAQQA2AhwgAEGvi4CAADYCECAAQQI2AgwgACAUQQFqNgIUDNoDCwJAIAEtAAAiEEE7Rg0AIBBBDUcN6AEgAUEBaiEBDOUCCyABQQFqIQELQSIhEAy/AwsCQCABIhAgAkcNAEEcIRAM2AMLQgAhESAQIQEgEC0AAEFQag435wHmAQECAwQFBgcIAAAAAAAAAAkKCwwNDgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADxAREhMUAAtBHiEQDL0DC0ICIREM5QELQgMhEQzkAQtCBCERDOMBC0IFIREM4gELQgYhEQzhAQtCByERDOABC0IIIREM3wELQgkhEQzeAQtCCiERDN0BC0ILIREM3AELQgwhEQzbAQtCDSERDNoBC0IOIREM2QELQg8hEQzYAQtCCiERDNcBC0ILIREM1gELQgwhEQzVAQtCDSERDNQBC0IOIREM0wELQg8hEQzSAQtCACERAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAQLQAAQVBqDjflAeQBAAECAwQFBgfmAeYB5gHmAeYB5gHmAQgJCgsMDeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gEODxAREhPmAQtCAiERDOQBC0IDIREM4wELQgQhEQziAQtCBSERDOEBC0IGIREM4AELQgchEQzfAQtCCCERDN4BC0IJIREM3QELQgohEQzcAQtCCyERDNsBC0IMIREM2gELQg0hEQzZAQtCDiERDNgBC0IPIREM1wELQgohEQzWAQtCCyERDNUBC0IMIREM1AELQg0hEQzTAQtCDiERDNIBC0IPIREM0QELIABCACAAKQMgIhEgAiABIhBrrSISfSITIBMgEVYbNwMgIBEgElYiFEUN0gFBHyEQDMADCwJAIAEiASACRg0AIABBiYCAgAA2AgggACABNgIEIAEhAUEkIRAMpwMLQSAhEAy/AwsgACABIhAgAhC+gICAAEF/ag4FtgEAxQIB0QHSAQtBESEQDKQDCyAAQQE6AC8gECEBDLsDCyABIgEgAkcN0gFBJCEQDLsDCyABIg0gAkcNHkHGACEQDLoDCyAAIAEiASACELKAgIAAIhAN1AEgASEBDLUBCyABIhAgAkcNJkHQACEQDLgDCwJAIAEiASACRw0AQSghEAy4AwsgAEEANgIEIABBjICAgAA2AgggACABIAEQsYCAgAAiEA3TASABIQEM2AELAkAgASIQIAJHDQBBKSEQDLcDCyAQLQAAIgFBIEYNFCABQQlHDdMBIBBBAWohAQwVCwJAIAEiASACRg0AIAFBAWohAQwXC0EqIRAMtQMLAkAgASIQIAJHDQBBKyEQDLUDCwJAIBAtAAAiAUEJRg0AIAFBIEcN1QELIAAtACxBCEYN0wEgECEBDJEDCwJAIAEiASACRw0AQSwhEAy0AwsgAS0AAEEKRw3VASABQQFqIQEMyQILIAEiDiACRw3VAUEvIRAMsgMLA0ACQCABLQAAIhBBIEYNAAJAIBBBdmoOBADcAdwBANoBCyABIQEM4AELIAFBAWoiASACRw0AC0ExIRAMsQMLQTIhECABIhQgAkYNsAMgAiAUayAAKAIAIgFqIRUgFCABa0EDaiEWAkADQCAULQAAIhdBIHIgFyAXQb9/akH/AXFBGkkbQf8BcSABQfC7gIAAai0AAEcNAQJAIAFBA0cNAEEGIQEMlgMLIAFBAWohASAUQQFqIhQgAkcNAAsgACAVNgIADLEDCyAAQQA2AgAgFCEBDNkBC0EzIRAgASIUIAJGDa8DIAIgFGsgACgCACIBaiEVIBQgAWtBCGohFgJAA0AgFC0AACIXQSByIBcgF0G/f2pB/wFxQRpJG0H/AXEgAUH0u4CAAGotAABHDQECQCABQQhHDQBBBSEBDJUDCyABQQFqIQEgFEEBaiIUIAJHDQALIAAgFTYCAAywAwsgAEEANgIAIBQhAQzYAQtBNCEQIAEiFCACRg2uAyACIBRrIAAoAgAiAWohFSAUIAFrQQVqIRYCQANAIBQtAAAiF0EgciAXIBdBv39qQf8BcUEaSRtB/wFxIAFB0MKAgABqLQAARw0BAkAgAUEFRw0AQQchAQyUAwsgAUEBaiEBIBRBAWoiFCACRw0ACyAAIBU2AgAMrwMLIABBADYCACAUIQEM1wELAkAgASIBIAJGDQADQAJAIAEtAABBgL6AgABqLQAAIhBBAUYNACAQQQJGDQogASEBDN0BCyABQQFqIgEgAkcNAAtBMCEQDK4DC0EwIRAMrQMLAkAgASIBIAJGDQADQAJAIAEtAAAiEEEgRg0AIBBBdmoOBNkB2gHaAdkB2gELIAFBAWoiASACRw0AC0E4IRAMrQMLQTghEAysAwsDQAJAIAEtAAAiEEEgRg0AIBBBCUcNAwsgAUEBaiIBIAJHDQALQTwhEAyrAwsDQAJAIAEtAAAiEEEgRg0AAkACQCAQQXZqDgTaAQEB2gEACyAQQSxGDdsBCyABIQEMBAsgAUEBaiIBIAJHDQALQT8hEAyqAwsgASEBDNsBC0HAACEQIAEiFCACRg2oAyACIBRrIAAoAgAiAWohFiAUIAFrQQZqIRcCQANAIBQtAABBIHIgAUGAwICAAGotAABHDQEgAUEGRg2OAyABQQFqIQEgFEEBaiIUIAJHDQALIAAgFjYCAAypAwsgAEEANgIAIBQhAQtBNiEQDI4DCwJAIAEiDyACRw0AQcEAIRAMpwMLIABBjICAgAA2AgggACAPNgIEIA8hASAALQAsQX9qDgTNAdUB1wHZAYcDCyABQQFqIQEMzAELAkAgASIBIAJGDQADQAJAIAEtAAAiEEEgciAQIBBBv39qQf8BcUEaSRtB/wFxIhBBCUYNACAQQSBGDQACQAJAAkACQCAQQZ1/ag4TAAMDAwMDAwMBAwMDAwMDAwMDAgMLIAFBAWohAUExIRAMkQMLIAFBAWohAUEyIRAMkAMLIAFBAWohAUEzIRAMjwMLIAEhAQzQAQsgAUEBaiIBIAJHDQALQTUhEAylAwtBNSEQDKQDCwJAIAEiASACRg0AA0ACQCABLQAAQYC8gIAAai0AAEEBRg0AIAEhAQzTAQsgAUEBaiIBIAJHDQALQT0hEAykAwtBPSEQDKMDCyAAIAEiASACELCAgIAAIhAN1gEgASEBDAELIBBBAWohAQtBPCEQDIcDCwJAIAEiASACRw0AQcIAIRAMoAMLAkADQAJAIAEtAABBd2oOGAAC/gL+AoQD/gL+Av4C/gL+Av4C/gL+Av4C/gL+Av4C/gL+Av4C/gL+Av4CAP4CCyABQQFqIgEgAkcNAAtBwgAhEAygAwsgAUEBaiEBIAAtAC1BAXFFDb0BIAEhAQtBLCEQDIUDCyABIgEgAkcN0wFBxAAhEAydAwsDQAJAIAEtAABBkMCAgABqLQAAQQFGDQAgASEBDLcCCyABQQFqIgEgAkcNAAtBxQAhEAycAwsgDS0AACIQQSBGDbMBIBBBOkcNgQMgACgCBCEBIABBADYCBCAAIAEgDRCvgICAACIBDdABIA1BAWohAQyzAgtBxwAhECABIg0gAkYNmgMgAiANayAAKAIAIgFqIRYgDSABa0EFaiEXA0AgDS0AACIUQSByIBQgFEG/f2pB/wFxQRpJG0H/AXEgAUGQwoCAAGotAABHDYADIAFBBUYN9AIgAUEBaiEBIA1BAWoiDSACRw0ACyAAIBY2AgAMmgMLQcgAIRAgASINIAJGDZkDIAIgDWsgACgCACIBaiEWIA0gAWtBCWohFwNAIA0tAAAiFEEgciAUIBRBv39qQf8BcUEaSRtB/wFxIAFBlsKAgABqLQAARw3/AgJAIAFBCUcNAEECIQEM9QILIAFBAWohASANQQFqIg0gAkcNAAsgACAWNgIADJkDCwJAIAEiDSACRw0AQckAIRAMmQMLAkACQCANLQAAIgFBIHIgASABQb9/akH/AXFBGkkbQf8BcUGSf2oOBwCAA4ADgAOAA4ADAYADCyANQQFqIQFBPiEQDIADCyANQQFqIQFBPyEQDP8CC0HKACEQIAEiDSACRg2XAyACIA1rIAAoAgAiAWohFiANIAFrQQFqIRcDQCANLQAAIhRBIHIgFCAUQb9/akH/AXFBGkkbQf8BcSABQaDCgIAAai0AAEcN/QIgAUEBRg3wAiABQQFqIQEgDUEBaiINIAJHDQALIAAgFjYCAAyXAwtBywAhECABIg0gAkYNlgMgAiANayAAKAIAIgFqIRYgDSABa0EOaiEXA0AgDS0AACIUQSByIBQgFEG/f2pB/wFxQRpJG0H/AXEgAUGiwoCAAGotAABHDfwCIAFBDkYN8AIgAUEBaiEBIA1BAWoiDSACRw0ACyAAIBY2AgAMlgMLQcwAIRAgASINIAJGDZUDIAIgDWsgACgCACIBaiEWIA0gAWtBD2ohFwNAIA0tAAAiFEEgciAUIBRBv39qQf8BcUEaSRtB/wFxIAFBwMKAgABqLQAARw37AgJAIAFBD0cNAEEDIQEM8QILIAFBAWohASANQQFqIg0gAkcNAAsgACAWNgIADJUDC0HNACEQIAEiDSACRg2UAyACIA1rIAAoAgAiAWohFiANIAFrQQVqIRcDQCANLQAAIhRBIHIgFCAUQb9/akH/AXFBGkkbQf8BcSABQdDCgIAAai0AAEcN+gICQCABQQVHDQBBBCEBDPACCyABQQFqIQEgDUEBaiINIAJHDQALIAAgFjYCAAyUAwsCQCABIg0gAkcNAEHOACEQDJQDCwJAAkACQAJAIA0tAAAiAUEgciABIAFBv39qQf8BcUEaSRtB/wFxQZ1/ag4TAP0C/QL9Av0C/QL9Av0C/QL9Av0C/QL9AgH9Av0C/QICA/0CCyANQQFqIQFBwQAhEAz9AgsgDUEBaiEBQcIAIRAM/AILIA1BAWohAUHDACEQDPsCCyANQQFqIQFBxAAhEAz6AgsCQCABIgEgAkYNACAAQY2AgIAANgIIIAAgATYCBCABIQFBxQAhEAz6AgtBzwAhEAySAwsgECEBAkACQCAQLQAAQXZqDgQBqAKoAgCoAgsgEEEBaiEBC0EnIRAM+AILAkAgASIBIAJHDQBB0QAhEAyRAwsCQCABLQAAQSBGDQAgASEBDI0BCyABQQFqIQEgAC0ALUEBcUUNxwEgASEBDIwBCyABIhcgAkcNyAFB0gAhEAyPAwtB0wAhECABIhQgAkYNjgMgAiAUayAAKAIAIgFqIRYgFCABa0EBaiEXA0AgFC0AACABQdbCgIAAai0AAEcNzAEgAUEBRg3HASABQQFqIQEgFEEBaiIUIAJHDQALIAAgFjYCAAyOAwsCQCABIgEgAkcNAEHVACEQDI4DCyABLQAAQQpHDcwBIAFBAWohAQzHAQsCQCABIgEgAkcNAEHWACEQDI0DCwJAAkAgAS0AAEF2ag4EAM0BzQEBzQELIAFBAWohAQzHAQsgAUEBaiEBQcoAIRAM8wILIAAgASIBIAIQroCAgAAiEA3LASABIQFBzQAhEAzyAgsgAC0AKUEiRg2FAwymAgsCQCABIgEgAkcNAEHbACEQDIoDC0EAIRRBASEXQQEhFkEAIRACQAJAAkACQAJAAkACQAJAAkAgAS0AAEFQag4K1AHTAQABAgMEBQYI1QELQQIhEAwGC0EDIRAMBQtBBCEQDAQLQQUhEAwDC0EGIRAMAgtBByEQDAELQQghEAtBACEXQQAhFkEAIRQMzAELQQkhEEEBIRRBACEXQQAhFgzLAQsCQCABIgEgAkcNAEHdACEQDIkDCyABLQAAQS5HDcwBIAFBAWohAQymAgsgASIBIAJHDcwBQd8AIRAMhwMLAkAgASIBIAJGDQAgAEGOgICAADYCCCAAIAE2AgQgASEBQdAAIRAM7gILQeAAIRAMhgMLQeEAIRAgASIBIAJGDYUDIAIgAWsgACgCACIUaiEWIAEgFGtBA2ohFwNAIAEtAAAgFEHiwoCAAGotAABHDc0BIBRBA0YNzAEgFEEBaiEUIAFBAWoiASACRw0ACyAAIBY2AgAMhQMLQeIAIRAgASIBIAJGDYQDIAIgAWsgACgCACIUaiEWIAEgFGtBAmohFwNAIAEtAAAgFEHmwoCAAGotAABHDcwBIBRBAkYNzgEgFEEBaiEUIAFBAWoiASACRw0ACyAAIBY2AgAMhAMLQeMAIRAgASIBIAJGDYMDIAIgAWsgACgCACIUaiEWIAEgFGtBA2ohFwNAIAEtAAAgFEHpwoCAAGotAABHDcsBIBRBA0YNzgEgFEEBaiEUIAFBAWoiASACRw0ACyAAIBY2AgAMgwMLAkAgASIBIAJHDQBB5QAhEAyDAwsgACABQQFqIgEgAhCogICAACIQDc0BIAEhAUHWACEQDOkCCwJAIAEiASACRg0AA0ACQCABLQAAIhBBIEYNAAJAAkACQCAQQbh/ag4LAAHPAc8BzwHPAc8BzwHPAc8BAs8BCyABQQFqIQFB0gAhEAztAgsgAUEBaiEBQdMAIRAM7AILIAFBAWohAUHUACEQDOsCCyABQQFqIgEgAkcNAAtB5AAhEAyCAwtB5AAhEAyBAwsDQAJAIAEtAABB8MKAgABqLQAAIhBBAUYNACAQQX5qDgPPAdAB0QHSAQsgAUEBaiIBIAJHDQALQeYAIRAMgAMLAkAgASIBIAJGDQAgAUEBaiEBDAMLQecAIRAM/wILA0ACQCABLQAAQfDEgIAAai0AACIQQQFGDQACQCAQQX5qDgTSAdMB1AEA1QELIAEhAUHXACEQDOcCCyABQQFqIgEgAkcNAAtB6AAhEAz+AgsCQCABIgEgAkcNAEHpACEQDP4CCwJAIAEtAAAiEEF2ag4augHVAdUBvAHVAdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHKAdUB1QEA0wELIAFBAWohAQtBBiEQDOMCCwNAAkAgAS0AAEHwxoCAAGotAABBAUYNACABIQEMngILIAFBAWoiASACRw0AC0HqACEQDPsCCwJAIAEiASACRg0AIAFBAWohAQwDC0HrACEQDPoCCwJAIAEiASACRw0AQewAIRAM+gILIAFBAWohAQwBCwJAIAEiASACRw0AQe0AIRAM+QILIAFBAWohAQtBBCEQDN4CCwJAIAEiFCACRw0AQe4AIRAM9wILIBQhAQJAAkACQCAULQAAQfDIgIAAai0AAEF/ag4H1AHVAdYBAJwCAQLXAQsgFEEBaiEBDAoLIBRBAWohAQzNAQtBACEQIABBADYCHCAAQZuSgIAANgIQIABBBzYCDCAAIBRBAWo2AhQM9gILAkADQAJAIAEtAABB8MiAgABqLQAAIhBBBEYNAAJAAkAgEEF/ag4H0gHTAdQB2QEABAHZAQsgASEBQdoAIRAM4AILIAFBAWohAUHcACEQDN8CCyABQQFqIgEgAkcNAAtB7wAhEAz2AgsgAUEBaiEBDMsBCwJAIAEiFCACRw0AQfAAIRAM9QILIBQtAABBL0cN1AEgFEEBaiEBDAYLAkAgASIUIAJHDQBB8QAhEAz0AgsCQCAULQAAIgFBL0cNACAUQQFqIQFB3QAhEAzbAgsgAUF2aiIEQRZLDdMBQQEgBHRBiYCAAnFFDdMBDMoCCwJAIAEiASACRg0AIAFBAWohAUHeACEQDNoCC0HyACEQDPICCwJAIAEiFCACRw0AQfQAIRAM8gILIBQhAQJAIBQtAABB8MyAgABqLQAAQX9qDgPJApQCANQBC0HhACEQDNgCCwJAIAEiFCACRg0AA0ACQCAULQAAQfDKgIAAai0AACIBQQNGDQACQCABQX9qDgLLAgDVAQsgFCEBQd8AIRAM2gILIBRBAWoiFCACRw0AC0HzACEQDPECC0HzACEQDPACCwJAIAEiASACRg0AIABBj4CAgAA2AgggACABNgIEIAEhAUHgACEQDNcCC0H1ACEQDO8CCwJAIAEiASACRw0AQfYAIRAM7wILIABBj4CAgAA2AgggACABNgIEIAEhAQtBAyEQDNQCCwNAIAEtAABBIEcNwwIgAUEBaiIBIAJHDQALQfcAIRAM7AILAkAgASIBIAJHDQBB+AAhEAzsAgsgAS0AAEEgRw3OASABQQFqIQEM7wELIAAgASIBIAIQrICAgAAiEA3OASABIQEMjgILAkAgASIEIAJHDQBB+gAhEAzqAgsgBC0AAEHMAEcN0QEgBEEBaiEBQRMhEAzPAQsCQCABIgQgAkcNAEH7ACEQDOkCCyACIARrIAAoAgAiAWohFCAEIAFrQQVqIRADQCAELQAAIAFB8M6AgABqLQAARw3QASABQQVGDc4BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQfsAIRAM6AILAkAgASIEIAJHDQBB/AAhEAzoAgsCQAJAIAQtAABBvX9qDgwA0QHRAdEB0QHRAdEB0QHRAdEB0QEB0QELIARBAWohAUHmACEQDM8CCyAEQQFqIQFB5wAhEAzOAgsCQCABIgQgAkcNAEH9ACEQDOcCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHtz4CAAGotAABHDc8BIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEH9ACEQDOcCCyAAQQA2AgAgEEEBaiEBQRAhEAzMAQsCQCABIgQgAkcNAEH+ACEQDOYCCyACIARrIAAoAgAiAWohFCAEIAFrQQVqIRACQANAIAQtAAAgAUH2zoCAAGotAABHDc4BIAFBBUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEH+ACEQDOYCCyAAQQA2AgAgEEEBaiEBQRYhEAzLAQsCQCABIgQgAkcNAEH/ACEQDOUCCyACIARrIAAoAgAiAWohFCAEIAFrQQNqIRACQANAIAQtAAAgAUH8zoCAAGotAABHDc0BIAFBA0YNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEH/ACEQDOUCCyAAQQA2AgAgEEEBaiEBQQUhEAzKAQsCQCABIgQgAkcNAEGAASEQDOQCCyAELQAAQdkARw3LASAEQQFqIQFBCCEQDMkBCwJAIAEiBCACRw0AQYEBIRAM4wILAkACQCAELQAAQbJ/ag4DAMwBAcwBCyAEQQFqIQFB6wAhEAzKAgsgBEEBaiEBQewAIRAMyQILAkAgASIEIAJHDQBBggEhEAziAgsCQAJAIAQtAABBuH9qDggAywHLAcsBywHLAcsBAcsBCyAEQQFqIQFB6gAhEAzJAgsgBEEBaiEBQe0AIRAMyAILAkAgASIEIAJHDQBBgwEhEAzhAgsgAiAEayAAKAIAIgFqIRAgBCABa0ECaiEUAkADQCAELQAAIAFBgM+AgABqLQAARw3JASABQQJGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBA2AgBBgwEhEAzhAgtBACEQIABBADYCACAUQQFqIQEMxgELAkAgASIEIAJHDQBBhAEhEAzgAgsgAiAEayAAKAIAIgFqIRQgBCABa0EEaiEQAkADQCAELQAAIAFBg8+AgABqLQAARw3IASABQQRGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBhAEhEAzgAgsgAEEANgIAIBBBAWohAUEjIRAMxQELAkAgASIEIAJHDQBBhQEhEAzfAgsCQAJAIAQtAABBtH9qDggAyAHIAcgByAHIAcgBAcgBCyAEQQFqIQFB7wAhEAzGAgsgBEEBaiEBQfAAIRAMxQILAkAgASIEIAJHDQBBhgEhEAzeAgsgBC0AAEHFAEcNxQEgBEEBaiEBDIMCCwJAIAEiBCACRw0AQYcBIRAM3QILIAIgBGsgACgCACIBaiEUIAQgAWtBA2ohEAJAA0AgBC0AACABQYjPgIAAai0AAEcNxQEgAUEDRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQYcBIRAM3QILIABBADYCACAQQQFqIQFBLSEQDMIBCwJAIAEiBCACRw0AQYgBIRAM3AILIAIgBGsgACgCACIBaiEUIAQgAWtBCGohEAJAA0AgBC0AACABQdDPgIAAai0AAEcNxAEgAUEIRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQYgBIRAM3AILIABBADYCACAQQQFqIQFBKSEQDMEBCwJAIAEiASACRw0AQYkBIRAM2wILQQEhECABLQAAQd8ARw3AASABQQFqIQEMgQILAkAgASIEIAJHDQBBigEhEAzaAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQA0AgBC0AACABQYzPgIAAai0AAEcNwQEgAUEBRg2vAiABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGKASEQDNkCCwJAIAEiBCACRw0AQYsBIRAM2QILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQY7PgIAAai0AAEcNwQEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQYsBIRAM2QILIABBADYCACAQQQFqIQFBAiEQDL4BCwJAIAEiBCACRw0AQYwBIRAM2AILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQfDPgIAAai0AAEcNwAEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQYwBIRAM2AILIABBADYCACAQQQFqIQFBHyEQDL0BCwJAIAEiBCACRw0AQY0BIRAM1wILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQfLPgIAAai0AAEcNvwEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQY0BIRAM1wILIABBADYCACAQQQFqIQFBCSEQDLwBCwJAIAEiBCACRw0AQY4BIRAM1gILAkACQCAELQAAQbd/ag4HAL8BvwG/Ab8BvwEBvwELIARBAWohAUH4ACEQDL0CCyAEQQFqIQFB+QAhEAy8AgsCQCABIgQgAkcNAEGPASEQDNUCCyACIARrIAAoAgAiAWohFCAEIAFrQQVqIRACQANAIAQtAAAgAUGRz4CAAGotAABHDb0BIAFBBUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGPASEQDNUCCyAAQQA2AgAgEEEBaiEBQRghEAy6AQsCQCABIgQgAkcNAEGQASEQDNQCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUGXz4CAAGotAABHDbwBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGQASEQDNQCCyAAQQA2AgAgEEEBaiEBQRchEAy5AQsCQCABIgQgAkcNAEGRASEQDNMCCyACIARrIAAoAgAiAWohFCAEIAFrQQZqIRACQANAIAQtAAAgAUGaz4CAAGotAABHDbsBIAFBBkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGRASEQDNMCCyAAQQA2AgAgEEEBaiEBQRUhEAy4AQsCQCABIgQgAkcNAEGSASEQDNICCyACIARrIAAoAgAiAWohFCAEIAFrQQVqIRACQANAIAQtAAAgAUGhz4CAAGotAABHDboBIAFBBUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGSASEQDNICCyAAQQA2AgAgEEEBaiEBQR4hEAy3AQsCQCABIgQgAkcNAEGTASEQDNECCyAELQAAQcwARw24ASAEQQFqIQFBCiEQDLYBCwJAIAQgAkcNAEGUASEQDNACCwJAAkAgBC0AAEG/f2oODwC5AbkBuQG5AbkBuQG5AbkBuQG5AbkBuQG5AQG5AQsgBEEBaiEBQf4AIRAMtwILIARBAWohAUH/ACEQDLYCCwJAIAQgAkcNAEGVASEQDM8CCwJAAkAgBC0AAEG/f2oOAwC4AQG4AQsgBEEBaiEBQf0AIRAMtgILIARBAWohBEGAASEQDLUCCwJAIAQgAkcNAEGWASEQDM4CCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRACQANAIAQtAAAgAUGnz4CAAGotAABHDbYBIAFBAUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGWASEQDM4CCyAAQQA2AgAgEEEBaiEBQQshEAyzAQsCQCAEIAJHDQBBlwEhEAzNAgsCQAJAAkACQCAELQAAQVNqDiMAuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AQG4AbgBuAG4AbgBArgBuAG4AQO4AQsgBEEBaiEBQfsAIRAMtgILIARBAWohAUH8ACEQDLUCCyAEQQFqIQRBgQEhEAy0AgsgBEEBaiEEQYIBIRAMswILAkAgBCACRw0AQZgBIRAMzAILIAIgBGsgACgCACIBaiEUIAQgAWtBBGohEAJAA0AgBC0AACABQanPgIAAai0AAEcNtAEgAUEERg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZgBIRAMzAILIABBADYCACAQQQFqIQFBGSEQDLEBCwJAIAQgAkcNAEGZASEQDMsCCyACIARrIAAoAgAiAWohFCAEIAFrQQVqIRACQANAIAQtAAAgAUGuz4CAAGotAABHDbMBIAFBBUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGZASEQDMsCCyAAQQA2AgAgEEEBaiEBQQYhEAywAQsCQCAEIAJHDQBBmgEhEAzKAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFBtM+AgABqLQAARw2yASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBmgEhEAzKAgsgAEEANgIAIBBBAWohAUEcIRAMrwELAkAgBCACRw0AQZsBIRAMyQILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQbbPgIAAai0AAEcNsQEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZsBIRAMyQILIABBADYCACAQQQFqIQFBJyEQDK4BCwJAIAQgAkcNAEGcASEQDMgCCwJAAkAgBC0AAEGsf2oOAgABsQELIARBAWohBEGGASEQDK8CCyAEQQFqIQRBhwEhEAyuAgsCQCAEIAJHDQBBnQEhEAzHAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFBuM+AgABqLQAARw2vASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBnQEhEAzHAgsgAEEANgIAIBBBAWohAUEmIRAMrAELAkAgBCACRw0AQZ4BIRAMxgILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQbrPgIAAai0AAEcNrgEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZ4BIRAMxgILIABBADYCACAQQQFqIQFBAyEQDKsBCwJAIAQgAkcNAEGfASEQDMUCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHtz4CAAGotAABHDa0BIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGfASEQDMUCCyAAQQA2AgAgEEEBaiEBQQwhEAyqAQsCQCAEIAJHDQBBoAEhEAzEAgsgAiAEayAAKAIAIgFqIRQgBCABa0EDaiEQAkADQCAELQAAIAFBvM+AgABqLQAARw2sASABQQNGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBoAEhEAzEAgsgAEEANgIAIBBBAWohAUENIRAMqQELAkAgBCACRw0AQaEBIRAMwwILAkACQCAELQAAQbp/ag4LAKwBrAGsAawBrAGsAawBrAGsAQGsAQsgBEEBaiEEQYsBIRAMqgILIARBAWohBEGMASEQDKkCCwJAIAQgAkcNAEGiASEQDMICCyAELQAAQdAARw2pASAEQQFqIQQM6QELAkAgBCACRw0AQaMBIRAMwQILAkACQCAELQAAQbd/ag4HAaoBqgGqAaoBqgEAqgELIARBAWohBEGOASEQDKgCCyAEQQFqIQFBIiEQDKYBCwJAIAQgAkcNAEGkASEQDMACCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRACQANAIAQtAAAgAUHAz4CAAGotAABHDagBIAFBAUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGkASEQDMACCyAAQQA2AgAgEEEBaiEBQR0hEAylAQsCQCAEIAJHDQBBpQEhEAy/AgsCQAJAIAQtAABBrn9qDgMAqAEBqAELIARBAWohBEGQASEQDKYCCyAEQQFqIQFBBCEQDKQBCwJAIAQgAkcNAEGmASEQDL4CCwJAAkACQAJAAkAgBC0AAEG/f2oOFQCqAaoBqgGqAaoBqgGqAaoBqgGqAQGqAaoBAqoBqgEDqgGqAQSqAQsgBEEBaiEEQYgBIRAMqAILIARBAWohBEGJASEQDKcCCyAEQQFqIQRBigEhEAymAgsgBEEBaiEEQY8BIRAMpQILIARBAWohBEGRASEQDKQCCwJAIAQgAkcNAEGnASEQDL0CCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHtz4CAAGotAABHDaUBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGnASEQDL0CCyAAQQA2AgAgEEEBaiEBQREhEAyiAQsCQCAEIAJHDQBBqAEhEAy8AgsgAiAEayAAKAIAIgFqIRQgBCABa0ECaiEQAkADQCAELQAAIAFBws+AgABqLQAARw2kASABQQJGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBqAEhEAy8AgsgAEEANgIAIBBBAWohAUEsIRAMoQELAkAgBCACRw0AQakBIRAMuwILIAIgBGsgACgCACIBaiEUIAQgAWtBBGohEAJAA0AgBC0AACABQcXPgIAAai0AAEcNowEgAUEERg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQakBIRAMuwILIABBADYCACAQQQFqIQFBKyEQDKABCwJAIAQgAkcNAEGqASEQDLoCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHKz4CAAGotAABHDaIBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGqASEQDLoCCyAAQQA2AgAgEEEBaiEBQRQhEAyfAQsCQCAEIAJHDQBBqwEhEAy5AgsCQAJAAkACQCAELQAAQb5/ag4PAAECpAGkAaQBpAGkAaQBpAGkAaQBpAGkAQOkAQsgBEEBaiEEQZMBIRAMogILIARBAWohBEGUASEQDKECCyAEQQFqIQRBlQEhEAygAgsgBEEBaiEEQZYBIRAMnwILAkAgBCACRw0AQawBIRAMuAILIAQtAABBxQBHDZ8BIARBAWohBAzgAQsCQCAEIAJHDQBBrQEhEAy3AgsgAiAEayAAKAIAIgFqIRQgBCABa0ECaiEQAkADQCAELQAAIAFBzc+AgABqLQAARw2fASABQQJGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBrQEhEAy3AgsgAEEANgIAIBBBAWohAUEOIRAMnAELAkAgBCACRw0AQa4BIRAMtgILIAQtAABB0ABHDZ0BIARBAWohAUElIRAMmwELAkAgBCACRw0AQa8BIRAMtQILIAIgBGsgACgCACIBaiEUIAQgAWtBCGohEAJAA0AgBC0AACABQdDPgIAAai0AAEcNnQEgAUEIRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQa8BIRAMtQILIABBADYCACAQQQFqIQFBKiEQDJoBCwJAIAQgAkcNAEGwASEQDLQCCwJAAkAgBC0AAEGrf2oOCwCdAZ0BnQGdAZ0BnQGdAZ0BnQEBnQELIARBAWohBEGaASEQDJsCCyAEQQFqIQRBmwEhEAyaAgsCQCAEIAJHDQBBsQEhEAyzAgsCQAJAIAQtAABBv39qDhQAnAGcAZwBnAGcAZwBnAGcAZwBnAGcAZwBnAGcAZwBnAGcAZwBAZwBCyAEQQFqIQRBmQEhEAyaAgsgBEEBaiEEQZwBIRAMmQILAkAgBCACRw0AQbIBIRAMsgILIAIgBGsgACgCACIBaiEUIAQgAWtBA2ohEAJAA0AgBC0AACABQdnPgIAAai0AAEcNmgEgAUEDRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQbIBIRAMsgILIABBADYCACAQQQFqIQFBISEQDJcBCwJAIAQgAkcNAEGzASEQDLECCyACIARrIAAoAgAiAWohFCAEIAFrQQZqIRACQANAIAQtAAAgAUHdz4CAAGotAABHDZkBIAFBBkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGzASEQDLECCyAAQQA2AgAgEEEBaiEBQRohEAyWAQsCQCAEIAJHDQBBtAEhEAywAgsCQAJAAkAgBC0AAEG7f2oOEQCaAZoBmgGaAZoBmgGaAZoBmgEBmgGaAZoBmgGaAQKaAQsgBEEBaiEEQZ0BIRAMmAILIARBAWohBEGeASEQDJcCCyAEQQFqIQRBnwEhEAyWAgsCQCAEIAJHDQBBtQEhEAyvAgsgAiAEayAAKAIAIgFqIRQgBCABa0EFaiEQAkADQCAELQAAIAFB5M+AgABqLQAARw2XASABQQVGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBtQEhEAyvAgsgAEEANgIAIBBBAWohAUEoIRAMlAELAkAgBCACRw0AQbYBIRAMrgILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQerPgIAAai0AAEcNlgEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQbYBIRAMrgILIABBADYCACAQQQFqIQFBByEQDJMBCwJAIAQgAkcNAEG3ASEQDK0CCwJAAkAgBC0AAEG7f2oODgCWAZYBlgGWAZYBlgGWAZYBlgGWAZYBlgEBlgELIARBAWohBEGhASEQDJQCCyAEQQFqIQRBogEhEAyTAgsCQCAEIAJHDQBBuAEhEAysAgsgAiAEayAAKAIAIgFqIRQgBCABa0ECaiEQAkADQCAELQAAIAFB7c+AgABqLQAARw2UASABQQJGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBuAEhEAysAgsgAEEANgIAIBBBAWohAUESIRAMkQELAkAgBCACRw0AQbkBIRAMqwILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQfDPgIAAai0AAEcNkwEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQbkBIRAMqwILIABBADYCACAQQQFqIQFBICEQDJABCwJAIAQgAkcNAEG6ASEQDKoCCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRACQANAIAQtAAAgAUHyz4CAAGotAABHDZIBIAFBAUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEG6ASEQDKoCCyAAQQA2AgAgEEEBaiEBQQ8hEAyPAQsCQCAEIAJHDQBBuwEhEAypAgsCQAJAIAQtAABBt39qDgcAkgGSAZIBkgGSAQGSAQsgBEEBaiEEQaUBIRAMkAILIARBAWohBEGmASEQDI8CCwJAIAQgAkcNAEG8ASEQDKgCCyACIARrIAAoAgAiAWohFCAEIAFrQQdqIRACQANAIAQtAAAgAUH0z4CAAGotAABHDZABIAFBB0YNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEG8ASEQDKgCCyAAQQA2AgAgEEEBaiEBQRshEAyNAQsCQCAEIAJHDQBBvQEhEAynAgsCQAJAAkAgBC0AAEG+f2oOEgCRAZEBkQGRAZEBkQGRAZEBkQEBkQGRAZEBkQGRAZEBApEBCyAEQQFqIQRBpAEhEAyPAgsgBEEBaiEEQacBIRAMjgILIARBAWohBEGoASEQDI0CCwJAIAQgAkcNAEG+ASEQDKYCCyAELQAAQc4ARw2NASAEQQFqIQQMzwELAkAgBCACRw0AQb8BIRAMpQILAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBC0AAEG/f2oOFQABAgOcAQQFBpwBnAGcAQcICQoLnAEMDQ4PnAELIARBAWohAUHoACEQDJoCCyAEQQFqIQFB6QAhEAyZAgsgBEEBaiEBQe4AIRAMmAILIARBAWohAUHyACEQDJcCCyAEQQFqIQFB8wAhEAyWAgsgBEEBaiEBQfYAIRAMlQILIARBAWohAUH3ACEQDJQCCyAEQQFqIQFB+gAhEAyTAgsgBEEBaiEEQYMBIRAMkgILIARBAWohBEGEASEQDJECCyAEQQFqIQRBhQEhEAyQAgsgBEEBaiEEQZIBIRAMjwILIARBAWohBEGYASEQDI4CCyAEQQFqIQRBoAEhEAyNAgsgBEEBaiEEQaMBIRAMjAILIARBAWohBEGqASEQDIsCCwJAIAQgAkYNACAAQZCAgIAANgIIIAAgBDYCBEGrASEQDIsCC0HAASEQDKMCCyAAIAUgAhCqgICAACIBDYsBIAUhAQxcCwJAIAYgAkYNACAGQQFqIQUMjQELQcIBIRAMoQILA0ACQCAQLQAAQXZqDgSMAQAAjwEACyAQQQFqIhAgAkcNAAtBwwEhEAygAgsCQCAHIAJGDQAgAEGRgICAADYCCCAAIAc2AgQgByEBQQEhEAyHAgtBxAEhEAyfAgsCQCAHIAJHDQBBxQEhEAyfAgsCQAJAIActAABBdmoOBAHOAc4BAM4BCyAHQQFqIQYMjQELIAdBAWohBQyJAQsCQCAHIAJHDQBBxgEhEAyeAgsCQAJAIActAABBdmoOFwGPAY8BAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAQCPAQsgB0EBaiEHC0GwASEQDIQCCwJAIAggAkcNAEHIASEQDJ0CCyAILQAAQSBHDY0BIABBADsBMiAIQQFqIQFBswEhEAyDAgsgASEXAkADQCAXIgcgAkYNASAHLQAAQVBqQf8BcSIQQQpPDcwBAkAgAC8BMiIUQZkzSw0AIAAgFEEKbCIUOwEyIBBB//8DcyAUQf7/A3FJDQAgB0EBaiEXIAAgFCAQaiIQOwEyIBBB//8DcUHoB0kNAQsLQQAhECAAQQA2AhwgAEHBiYCAADYCECAAQQ02AgwgACAHQQFqNgIUDJwCC0HHASEQDJsCCyAAIAggAhCugICAACIQRQ3KASAQQRVHDYwBIABByAE2AhwgACAINgIUIABByZeAgAA2AhAgAEEVNgIMQQAhEAyaAgsCQCAJIAJHDQBBzAEhEAyaAgtBACEUQQEhF0EBIRZBACEQAkACQAJAAkACQAJAAkACQAJAIAktAABBUGoOCpYBlQEAAQIDBAUGCJcBC0ECIRAMBgtBAyEQDAULQQQhEAwEC0EFIRAMAwtBBiEQDAILQQchEAwBC0EIIRALQQAhF0EAIRZBACEUDI4BC0EJIRBBASEUQQAhF0EAIRYMjQELAkAgCiACRw0AQc4BIRAMmQILIAotAABBLkcNjgEgCkEBaiEJDMoBCyALIAJHDY4BQdABIRAMlwILAkAgCyACRg0AIABBjoCAgAA2AgggACALNgIEQbcBIRAM/gELQdEBIRAMlgILAkAgBCACRw0AQdIBIRAMlgILIAIgBGsgACgCACIQaiEUIAQgEGtBBGohCwNAIAQtAAAgEEH8z4CAAGotAABHDY4BIBBBBEYN6QEgEEEBaiEQIARBAWoiBCACRw0ACyAAIBQ2AgBB0gEhEAyVAgsgACAMIAIQrICAgAAiAQ2NASAMIQEMuAELAkAgBCACRw0AQdQBIRAMlAILIAIgBGsgACgCACIQaiEUIAQgEGtBAWohDANAIAQtAAAgEEGB0ICAAGotAABHDY8BIBBBAUYNjgEgEEEBaiEQIARBAWoiBCACRw0ACyAAIBQ2AgBB1AEhEAyTAgsCQCAEIAJHDQBB1gEhEAyTAgsgAiAEayAAKAIAIhBqIRQgBCAQa0ECaiELA0AgBC0AACAQQYPQgIAAai0AAEcNjgEgEEECRg2QASAQQQFqIRAgBEEBaiIEIAJHDQALIAAgFDYCAEHWASEQDJICCwJAIAQgAkcNAEHXASEQDJICCwJAAkAgBC0AAEG7f2oOEACPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BAY8BCyAEQQFqIQRBuwEhEAz5AQsgBEEBaiEEQbwBIRAM+AELAkAgBCACRw0AQdgBIRAMkQILIAQtAABByABHDYwBIARBAWohBAzEAQsCQCAEIAJGDQAgAEGQgICAADYCCCAAIAQ2AgRBvgEhEAz3AQtB2QEhEAyPAgsCQCAEIAJHDQBB2gEhEAyPAgsgBC0AAEHIAEYNwwEgAEEBOgAoDLkBCyAAQQI6AC8gACAEIAIQpoCAgAAiEA2NAUHCASEQDPQBCyAALQAoQX9qDgK3AbkBuAELA0ACQCAELQAAQXZqDgQAjgGOAQCOAQsgBEEBaiIEIAJHDQALQd0BIRAMiwILIABBADoALyAALQAtQQRxRQ2EAgsgAEEAOgAvIABBAToANCABIQEMjAELIBBBFUYN2gEgAEEANgIcIAAgATYCFCAAQaeOgIAANgIQIABBEjYCDEEAIRAMiAILAkAgACAQIAIQtICAgAAiBA0AIBAhAQyBAgsCQCAEQRVHDQAgAEEDNgIcIAAgEDYCFCAAQbCYgIAANgIQIABBFTYCDEEAIRAMiAILIABBADYCHCAAIBA2AhQgAEGnjoCAADYCECAAQRI2AgxBACEQDIcCCyAQQRVGDdYBIABBADYCHCAAIAE2AhQgAEHajYCAADYCECAAQRQ2AgxBACEQDIYCCyAAKAIEIRcgAEEANgIEIBAgEadqIhYhASAAIBcgECAWIBQbIhAQtYCAgAAiFEUNjQEgAEEHNgIcIAAgEDYCFCAAIBQ2AgxBACEQDIUCCyAAIAAvATBBgAFyOwEwIAEhAQtBKiEQDOoBCyAQQRVGDdEBIABBADYCHCAAIAE2AhQgAEGDjICAADYCECAAQRM2AgxBACEQDIICCyAQQRVGDc8BIABBADYCHCAAIAE2AhQgAEGaj4CAADYCECAAQSI2AgxBACEQDIECCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQt4CAgAAiEA0AIAFBAWohAQyNAQsgAEEMNgIcIAAgEDYCDCAAIAFBAWo2AhRBACEQDIACCyAQQRVGDcwBIABBADYCHCAAIAE2AhQgAEGaj4CAADYCECAAQSI2AgxBACEQDP8BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQt4CAgAAiEA0AIAFBAWohAQyMAQsgAEENNgIcIAAgEDYCDCAAIAFBAWo2AhRBACEQDP4BCyAQQRVGDckBIABBADYCHCAAIAE2AhQgAEHGjICAADYCECAAQSM2AgxBACEQDP0BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQuYCAgAAiEA0AIAFBAWohAQyLAQsgAEEONgIcIAAgEDYCDCAAIAFBAWo2AhRBACEQDPwBCyAAQQA2AhwgACABNgIUIABBwJWAgAA2AhAgAEECNgIMQQAhEAz7AQsgEEEVRg3FASAAQQA2AhwgACABNgIUIABBxoyAgAA2AhAgAEEjNgIMQQAhEAz6AQsgAEEQNgIcIAAgATYCFCAAIBA2AgxBACEQDPkBCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQuYCAgAAiBA0AIAFBAWohAQzxAQsgAEERNgIcIAAgBDYCDCAAIAFBAWo2AhRBACEQDPgBCyAQQRVGDcEBIABBADYCHCAAIAE2AhQgAEHGjICAADYCECAAQSM2AgxBACEQDPcBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQuYCAgAAiEA0AIAFBAWohAQyIAQsgAEETNgIcIAAgEDYCDCAAIAFBAWo2AhRBACEQDPYBCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQuYCAgAAiBA0AIAFBAWohAQztAQsgAEEUNgIcIAAgBDYCDCAAIAFBAWo2AhRBACEQDPUBCyAQQRVGDb0BIABBADYCHCAAIAE2AhQgAEGaj4CAADYCECAAQSI2AgxBACEQDPQBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQt4CAgAAiEA0AIAFBAWohAQyGAQsgAEEWNgIcIAAgEDYCDCAAIAFBAWo2AhRBACEQDPMBCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQt4CAgAAiBA0AIAFBAWohAQzpAQsgAEEXNgIcIAAgBDYCDCAAIAFBAWo2AhRBACEQDPIBCyAAQQA2AhwgACABNgIUIABBzZOAgAA2AhAgAEEMNgIMQQAhEAzxAQtCASERCyAQQQFqIQECQCAAKQMgIhJC//////////8PVg0AIAAgEkIEhiARhDcDICABIQEMhAELIABBADYCHCAAIAE2AhQgAEGtiYCAADYCECAAQQw2AgxBACEQDO8BCyAAQQA2AhwgACAQNgIUIABBzZOAgAA2AhAgAEEMNgIMQQAhEAzuAQsgACgCBCEXIABBADYCBCAQIBGnaiIWIQEgACAXIBAgFiAUGyIQELWAgIAAIhRFDXMgAEEFNgIcIAAgEDYCFCAAIBQ2AgxBACEQDO0BCyAAQQA2AhwgACAQNgIUIABBqpyAgAA2AhAgAEEPNgIMQQAhEAzsAQsgACAQIAIQtICAgAAiAQ0BIBAhAQtBDiEQDNEBCwJAIAFBFUcNACAAQQI2AhwgACAQNgIUIABBsJiAgAA2AhAgAEEVNgIMQQAhEAzqAQsgAEEANgIcIAAgEDYCFCAAQaeOgIAANgIQIABBEjYCDEEAIRAM6QELIAFBAWohEAJAIAAvATAiAUGAAXFFDQACQCAAIBAgAhC7gICAACIBDQAgECEBDHALIAFBFUcNugEgAEEFNgIcIAAgEDYCFCAAQfmXgIAANgIQIABBFTYCDEEAIRAM6QELAkAgAUGgBHFBoARHDQAgAC0ALUECcQ0AIABBADYCHCAAIBA2AhQgAEGWk4CAADYCECAAQQQ2AgxBACEQDOkBCyAAIBAgAhC9gICAABogECEBAkACQAJAAkACQCAAIBAgAhCzgICAAA4WAgEABAQEBAQEBAQEBAQEBAQEBAQEAwQLIABBAToALgsgACAALwEwQcAAcjsBMCAQIQELQSYhEAzRAQsgAEEjNgIcIAAgEDYCFCAAQaWWgIAANgIQIABBFTYCDEEAIRAM6QELIABBADYCHCAAIBA2AhQgAEHVi4CAADYCECAAQRE2AgxBACEQDOgBCyAALQAtQQFxRQ0BQcMBIRAMzgELAkAgDSACRg0AA0ACQCANLQAAQSBGDQAgDSEBDMQBCyANQQFqIg0gAkcNAAtBJSEQDOcBC0ElIRAM5gELIAAoAgQhBCAAQQA2AgQgACAEIA0Qr4CAgAAiBEUNrQEgAEEmNgIcIAAgBDYCDCAAIA1BAWo2AhRBACEQDOUBCyAQQRVGDasBIABBADYCHCAAIAE2AhQgAEH9jYCAADYCECAAQR02AgxBACEQDOQBCyAAQSc2AhwgACABNgIUIAAgEDYCDEEAIRAM4wELIBAhAUEBIRQCQAJAAkACQAJAAkACQCAALQAsQX5qDgcGBQUDAQIABQsgACAALwEwQQhyOwEwDAMLQQIhFAwBC0EEIRQLIABBAToALCAAIAAvATAgFHI7ATALIBAhAQtBKyEQDMoBCyAAQQA2AhwgACAQNgIUIABBq5KAgAA2AhAgAEELNgIMQQAhEAziAQsgAEEANgIcIAAgATYCFCAAQeGPgIAANgIQIABBCjYCDEEAIRAM4QELIABBADoALCAQIQEMvQELIBAhAUEBIRQCQAJAAkACQAJAIAAtACxBe2oOBAMBAgAFCyAAIAAvATBBCHI7ATAMAwtBAiEUDAELQQQhFAsgAEEBOgAsIAAgAC8BMCAUcjsBMAsgECEBC0EpIRAMxQELIABBADYCHCAAIAE2AhQgAEHwlICAADYCECAAQQM2AgxBACEQDN0BCwJAIA4tAABBDUcNACAAKAIEIQEgAEEANgIEAkAgACABIA4QsYCAgAAiAQ0AIA5BAWohAQx1CyAAQSw2AhwgACABNgIMIAAgDkEBajYCFEEAIRAM3QELIAAtAC1BAXFFDQFBxAEhEAzDAQsCQCAOIAJHDQBBLSEQDNwBCwJAAkADQAJAIA4tAABBdmoOBAIAAAMACyAOQQFqIg4gAkcNAAtBLSEQDN0BCyAAKAIEIQEgAEEANgIEAkAgACABIA4QsYCAgAAiAQ0AIA4hAQx0CyAAQSw2AhwgACAONgIUIAAgATYCDEEAIRAM3AELIAAoAgQhASAAQQA2AgQCQCAAIAEgDhCxgICAACIBDQAgDkEBaiEBDHMLIABBLDYCHCAAIAE2AgwgACAOQQFqNgIUQQAhEAzbAQsgACgCBCEEIABBADYCBCAAIAQgDhCxgICAACIEDaABIA4hAQzOAQsgEEEsRw0BIAFBAWohEEEBIQECQAJAAkACQAJAIAAtACxBe2oOBAMBAgQACyAQIQEMBAtBAiEBDAELQQQhAQsgAEEBOgAsIAAgAC8BMCABcjsBMCAQIQEMAQsgACAALwEwQQhyOwEwIBAhAQtBOSEQDL8BCyAAQQA6ACwgASEBC0E0IRAMvQELIAAgAC8BMEEgcjsBMCABIQEMAgsgACgCBCEEIABBADYCBAJAIAAgBCABELGAgIAAIgQNACABIQEMxwELIABBNzYCHCAAIAE2AhQgACAENgIMQQAhEAzUAQsgAEEIOgAsIAEhAQtBMCEQDLkBCwJAIAAtAChBAUYNACABIQEMBAsgAC0ALUEIcUUNkwEgASEBDAMLIAAtADBBIHENlAFBxQEhEAy3AQsCQCAPIAJGDQACQANAAkAgDy0AAEFQaiIBQf8BcUEKSQ0AIA8hAUE1IRAMugELIAApAyAiEUKZs+bMmbPmzBlWDQEgACARQgp+IhE3AyAgESABrUL/AYMiEkJ/hVYNASAAIBEgEnw3AyAgD0EBaiIPIAJHDQALQTkhEAzRAQsgACgCBCECIABBADYCBCAAIAIgD0EBaiIEELGAgIAAIgINlQEgBCEBDMMBC0E5IRAMzwELAkAgAC8BMCIBQQhxRQ0AIAAtAChBAUcNACAALQAtQQhxRQ2QAQsgACABQff7A3FBgARyOwEwIA8hAQtBNyEQDLQBCyAAIAAvATBBEHI7ATAMqwELIBBBFUYNiwEgAEEANgIcIAAgATYCFCAAQfCOgIAANgIQIABBHDYCDEEAIRAMywELIABBwwA2AhwgACABNgIMIAAgDUEBajYCFEEAIRAMygELAkAgAS0AAEE6Rw0AIAAoAgQhECAAQQA2AgQCQCAAIBAgARCvgICAACIQDQAgAUEBaiEBDGMLIABBwwA2AhwgACAQNgIMIAAgAUEBajYCFEEAIRAMygELIABBADYCHCAAIAE2AhQgAEGxkYCAADYCECAAQQo2AgxBACEQDMkBCyAAQQA2AhwgACABNgIUIABBoJmAgAA2AhAgAEEeNgIMQQAhEAzIAQsgAEEANgIACyAAQYASOwEqIAAgF0EBaiIBIAIQqICAgAAiEA0BIAEhAQtBxwAhEAysAQsgEEEVRw2DASAAQdEANgIcIAAgATYCFCAAQeOXgIAANgIQIABBFTYCDEEAIRAMxAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDF4LIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMwwELIABBADYCHCAAIBQ2AhQgAEHBqICAADYCECAAQQc2AgwgAEEANgIAQQAhEAzCAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMXQsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAzBAQtBACEQIABBADYCHCAAIAE2AhQgAEGAkYCAADYCECAAQQk2AgwMwAELIBBBFUYNfSAAQQA2AhwgACABNgIUIABBlI2AgAA2AhAgAEEhNgIMQQAhEAy/AQtBASEWQQAhF0EAIRRBASEQCyAAIBA6ACsgAUEBaiEBAkACQCAALQAtQRBxDQACQAJAAkAgAC0AKg4DAQACBAsgFkUNAwwCCyAUDQEMAgsgF0UNAQsgACgCBCEQIABBADYCBAJAIAAgECABEK2AgIAAIhANACABIQEMXAsgAEHYADYCHCAAIAE2AhQgACAQNgIMQQAhEAy+AQsgACgCBCEEIABBADYCBAJAIAAgBCABEK2AgIAAIgQNACABIQEMrQELIABB2QA2AhwgACABNgIUIAAgBDYCDEEAIRAMvQELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARCtgICAACIEDQAgASEBDKsBCyAAQdoANgIcIAAgATYCFCAAIAQ2AgxBACEQDLwBCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQrYCAgAAiBA0AIAEhAQypAQsgAEHcADYCHCAAIAE2AhQgACAENgIMQQAhEAy7AQsCQCABLQAAQVBqIhBB/wFxQQpPDQAgACAQOgAqIAFBAWohAUHPACEQDKIBCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQrYCAgAAiBA0AIAEhAQynAQsgAEHeADYCHCAAIAE2AhQgACAENgIMQQAhEAy6AQsgAEEANgIAIBdBAWohAQJAIAAtAClBI08NACABIQEMWQsgAEEANgIcIAAgATYCFCAAQdOJgIAANgIQIABBCDYCDEEAIRAMuQELIABBADYCAAtBACEQIABBADYCHCAAIAE2AhQgAEGQs4CAADYCECAAQQg2AgwMtwELIABBADYCACAXQQFqIQECQCAALQApQSFHDQAgASEBDFYLIABBADYCHCAAIAE2AhQgAEGbioCAADYCECAAQQg2AgxBACEQDLYBCyAAQQA2AgAgF0EBaiEBAkAgAC0AKSIQQV1qQQtPDQAgASEBDFULAkAgEEEGSw0AQQEgEHRBygBxRQ0AIAEhAQxVC0EAIRAgAEEANgIcIAAgATYCFCAAQfeJgIAANgIQIABBCDYCDAy1AQsgEEEVRg1xIABBADYCHCAAIAE2AhQgAEG5jYCAADYCECAAQRo2AgxBACEQDLQBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxUCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDLMBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQdIANgIcIAAgATYCFCAAIBA2AgxBACEQDLIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDLEBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxRCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDLABCyAAQQA2AhwgACABNgIUIABBxoqAgAA2AhAgAEEHNgIMQQAhEAyvAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAyuAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAytAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMTQsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAysAQsgAEEANgIcIAAgATYCFCAAQdyIgIAANgIQIABBBzYCDEEAIRAMqwELIBBBP0cNASABQQFqIQELQQUhEAyQAQtBACEQIABBADYCHCAAIAE2AhQgAEH9koCAADYCECAAQQc2AgwMqAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMpwELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMpgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEYLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMpQELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0gA2AhwgACAUNgIUIAAgATYCDEEAIRAMpAELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0wA2AhwgACAUNgIUIAAgATYCDEEAIRAMowELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDEMLIABB5QA2AhwgACAUNgIUIAAgATYCDEEAIRAMogELIABBADYCHCAAIBQ2AhQgAEHDj4CAADYCECAAQQc2AgxBACEQDKEBCyAAQQA2AhwgACABNgIUIABBw4+AgAA2AhAgAEEHNgIMQQAhEAygAQtBACEQIABBADYCHCAAIBQ2AhQgAEGMnICAADYCECAAQQc2AgwMnwELIABBADYCHCAAIBQ2AhQgAEGMnICAADYCECAAQQc2AgxBACEQDJ4BCyAAQQA2AhwgACAUNgIUIABB/pGAgAA2AhAgAEEHNgIMQQAhEAydAQsgAEEANgIcIAAgATYCFCAAQY6bgIAANgIQIABBBjYCDEEAIRAMnAELIBBBFUYNVyAAQQA2AhwgACABNgIUIABBzI6AgAA2AhAgAEEgNgIMQQAhEAybAQsgAEEANgIAIBBBAWohAUEkIRALIAAgEDoAKSAAKAIEIRAgAEEANgIEIAAgECABEKuAgIAAIhANVCABIQEMPgsgAEEANgIAC0EAIRAgAEEANgIcIAAgBDYCFCAAQfGbgIAANgIQIABBBjYCDAyXAQsgAUEVRg1QIABBADYCHCAAIAU2AhQgAEHwjICAADYCECAAQRs2AgxBACEQDJYBCyAAKAIEIQUgAEEANgIEIAAgBSAQEKmAgIAAIgUNASAQQQFqIQULQa0BIRAMewsgAEHBATYCHCAAIAU2AgwgACAQQQFqNgIUQQAhEAyTAQsgACgCBCEGIABBADYCBCAAIAYgEBCpgICAACIGDQEgEEEBaiEGC0GuASEQDHgLIABBwgE2AhwgACAGNgIMIAAgEEEBajYCFEEAIRAMkAELIABBADYCHCAAIAc2AhQgAEGXi4CAADYCECAAQQ02AgxBACEQDI8BCyAAQQA2AhwgACAINgIUIABB45CAgAA2AhAgAEEJNgIMQQAhEAyOAQsgAEEANgIcIAAgCDYCFCAAQZSNgIAANgIQIABBITYCDEEAIRAMjQELQQEhFkEAIRdBACEUQQEhEAsgACAQOgArIAlBAWohCAJAAkAgAC0ALUEQcQ0AAkACQAJAIAAtACoOAwEAAgQLIBZFDQMMAgsgFA0BDAILIBdFDQELIAAoAgQhECAAQQA2AgQgACAQIAgQrYCAgAAiEEUNPSAAQckBNgIcIAAgCDYCFCAAIBA2AgxBACEQDIwBCyAAKAIEIQQgAEEANgIEIAAgBCAIEK2AgIAAIgRFDXYgAEHKATYCHCAAIAg2AhQgACAENgIMQQAhEAyLAQsgACgCBCEEIABBADYCBCAAIAQgCRCtgICAACIERQ10IABBywE2AhwgACAJNgIUIAAgBDYCDEEAIRAMigELIAAoAgQhBCAAQQA2AgQgACAEIAoQrYCAgAAiBEUNciAAQc0BNgIcIAAgCjYCFCAAIAQ2AgxBACEQDIkBCwJAIAstAABBUGoiEEH/AXFBCk8NACAAIBA6ACogC0EBaiEKQbYBIRAMcAsgACgCBCEEIABBADYCBCAAIAQgCxCtgICAACIERQ1wIABBzwE2AhwgACALNgIUIAAgBDYCDEEAIRAMiAELIABBADYCHCAAIAQ2AhQgAEGQs4CAADYCECAAQQg2AgwgAEEANgIAQQAhEAyHAQsgAUEVRg0/IABBADYCHCAAIAw2AhQgAEHMjoCAADYCECAAQSA2AgxBACEQDIYBCyAAQYEEOwEoIAAoAgQhECAAQgA3AwAgACAQIAxBAWoiDBCrgICAACIQRQ04IABB0wE2AhwgACAMNgIUIAAgEDYCDEEAIRAMhQELIABBADYCAAtBACEQIABBADYCHCAAIAQ2AhQgAEHYm4CAADYCECAAQQg2AgwMgwELIAAoAgQhECAAQgA3AwAgACAQIAtBAWoiCxCrgICAACIQDQFBxgEhEAxpCyAAQQI6ACgMVQsgAEHVATYCHCAAIAs2AhQgACAQNgIMQQAhEAyAAQsgEEEVRg03IABBADYCHCAAIAQ2AhQgAEGkjICAADYCECAAQRA2AgxBACEQDH8LIAAtADRBAUcNNCAAIAQgAhC8gICAACIQRQ00IBBBFUcNNSAAQdwBNgIcIAAgBDYCFCAAQdWWgIAANgIQIABBFTYCDEEAIRAMfgtBACEQIABBADYCHCAAQa+LgIAANgIQIABBAjYCDCAAIBRBAWo2AhQMfQtBACEQDGMLQQIhEAxiC0ENIRAMYQtBDyEQDGALQSUhEAxfC0ETIRAMXgtBFSEQDF0LQRYhEAxcC0EXIRAMWwtBGCEQDFoLQRkhEAxZC0EaIRAMWAtBGyEQDFcLQRwhEAxWC0EdIRAMVQtBHyEQDFQLQSEhEAxTC0EjIRAMUgtBxgAhEAxRC0EuIRAMUAtBLyEQDE8LQTshEAxOC0E9IRAMTQtByAAhEAxMC0HJACEQDEsLQcsAIRAMSgtBzAAhEAxJC0HOACEQDEgLQdEAIRAMRwtB1QAhEAxGC0HYACEQDEULQdkAIRAMRAtB2wAhEAxDC0HkACEQDEILQeUAIRAMQQtB8QAhEAxAC0H0ACEQDD8LQY0BIRAMPgtBlwEhEAw9C0GpASEQDDwLQawBIRAMOwtBwAEhEAw6C0G5ASEQDDkLQa8BIRAMOAtBsQEhEAw3C0GyASEQDDYLQbQBIRAMNQtBtQEhEAw0C0G6ASEQDDMLQb0BIRAMMgtBvwEhEAwxC0HBASEQDDALIABBADYCHCAAIAQ2AhQgAEHpi4CAADYCECAAQR82AgxBACEQDEgLIABB2wE2AhwgACAENgIUIABB+paAgAA2AhAgAEEVNgIMQQAhEAxHCyAAQfgANgIcIAAgDDYCFCAAQcqYgIAANgIQIABBFTYCDEEAIRAMRgsgAEHRADYCHCAAIAU2AhQgAEGwl4CAADYCECAAQRU2AgxBACEQDEULIABB+QA2AhwgACABNgIUIAAgEDYCDEEAIRAMRAsgAEH4ADYCHCAAIAE2AhQgAEHKmICAADYCECAAQRU2AgxBACEQDEMLIABB5AA2AhwgACABNgIUIABB45eAgAA2AhAgAEEVNgIMQQAhEAxCCyAAQdcANgIcIAAgATYCFCAAQcmXgIAANgIQIABBFTYCDEEAIRAMQQsgAEEANgIcIAAgATYCFCAAQbmNgIAANgIQIABBGjYCDEEAIRAMQAsgAEHCADYCHCAAIAE2AhQgAEHjmICAADYCECAAQRU2AgxBACEQDD8LIABBADYCBCAAIA8gDxCxgICAACIERQ0BIABBOjYCHCAAIAQ2AgwgACAPQQFqNgIUQQAhEAw+CyAAKAIEIQQgAEEANgIEAkAgACAEIAEQsYCAgAAiBEUNACAAQTs2AhwgACAENgIMIAAgAUEBajYCFEEAIRAMPgsgAUEBaiEBDC0LIA9BAWohAQwtCyAAQQA2AhwgACAPNgIUIABB5JKAgAA2AhAgAEEENgIMQQAhEAw7CyAAQTY2AhwgACAENgIUIAAgAjYCDEEAIRAMOgsgAEEuNgIcIAAgDjYCFCAAIAQ2AgxBACEQDDkLIABB0AA2AhwgACABNgIUIABBkZiAgAA2AhAgAEEVNgIMQQAhEAw4CyANQQFqIQEMLAsgAEEVNgIcIAAgATYCFCAAQYKZgIAANgIQIABBFTYCDEEAIRAMNgsgAEEbNgIcIAAgATYCFCAAQZGXgIAANgIQIABBFTYCDEEAIRAMNQsgAEEPNgIcIAAgATYCFCAAQZGXgIAANgIQIABBFTYCDEEAIRAMNAsgAEELNgIcIAAgATYCFCAAQZGXgIAANgIQIABBFTYCDEEAIRAMMwsgAEEaNgIcIAAgATYCFCAAQYKZgIAANgIQIABBFTYCDEEAIRAMMgsgAEELNgIcIAAgATYCFCAAQYKZgIAANgIQIABBFTYCDEEAIRAMMQsgAEEKNgIcIAAgATYCFCAAQeSWgIAANgIQIABBFTYCDEEAIRAMMAsgAEEeNgIcIAAgATYCFCAAQfmXgIAANgIQIABBFTYCDEEAIRAMLwsgAEEANgIcIAAgEDYCFCAAQdqNgIAANgIQIABBFDYCDEEAIRAMLgsgAEEENgIcIAAgATYCFCAAQbCYgIAANgIQIABBFTYCDEEAIRAMLQsgAEEANgIAIAtBAWohCwtBuAEhEAwSCyAAQQA2AgAgEEEBaiEBQfUAIRAMEQsgASEBAkAgAC0AKUEFRw0AQeMAIRAMEQtB4gAhEAwQC0EAIRAgAEEANgIcIABB5JGAgAA2AhAgAEEHNgIMIAAgFEEBajYCFAwoCyAAQQA2AgAgF0EBaiEBQcAAIRAMDgtBASEBCyAAIAE6ACwgAEEANgIAIBdBAWohAQtBKCEQDAsLIAEhAQtBOCEQDAkLAkAgASIPIAJGDQADQAJAIA8tAABBgL6AgABqLQAAIgFBAUYNACABQQJHDQMgD0EBaiEBDAQLIA9BAWoiDyACRw0AC0E+IRAMIgtBPiEQDCELIABBADoALCAPIQEMAQtBCyEQDAYLQTohEAwFCyABQQFqIQFBLSEQDAQLIAAgAToALCAAQQA2AgAgFkEBaiEBQQwhEAwDCyAAQQA2AgAgF0EBaiEBQQohEAwCCyAAQQA2AgALIABBADoALCANIQFBCSEQDAALC0EAIRAgAEEANgIcIAAgCzYCFCAAQc2QgIAANgIQIABBCTYCDAwXC0EAIRAgAEEANgIcIAAgCjYCFCAAQemKgIAANgIQIABBCTYCDAwWC0EAIRAgAEEANgIcIAAgCTYCFCAAQbeQgIAANgIQIABBCTYCDAwVC0EAIRAgAEEANgIcIAAgCDYCFCAAQZyRgIAANgIQIABBCTYCDAwUC0EAIRAgAEEANgIcIAAgATYCFCAAQc2QgIAANgIQIABBCTYCDAwTC0EAIRAgAEEANgIcIAAgATYCFCAAQemKgIAANgIQIABBCTYCDAwSC0EAIRAgAEEANgIcIAAgATYCFCAAQbeQgIAANgIQIABBCTYCDAwRC0EAIRAgAEEANgIcIAAgATYCFCAAQZyRgIAANgIQIABBCTYCDAwQC0EAIRAgAEEANgIcIAAgATYCFCAAQZeVgIAANgIQIABBDzYCDAwPC0EAIRAgAEEANgIcIAAgATYCFCAAQZeVgIAANgIQIABBDzYCDAwOC0EAIRAgAEEANgIcIAAgATYCFCAAQcCSgIAANgIQIABBCzYCDAwNC0EAIRAgAEEANgIcIAAgATYCFCAAQZWJgIAANgIQIABBCzYCDAwMC0EAIRAgAEEANgIcIAAgATYCFCAAQeGPgIAANgIQIABBCjYCDAwLC0EAIRAgAEEANgIcIAAgATYCFCAAQfuPgIAANgIQIABBCjYCDAwKC0EAIRAgAEEANgIcIAAgATYCFCAAQfGZgIAANgIQIABBAjYCDAwJC0EAIRAgAEEANgIcIAAgATYCFCAAQcSUgIAANgIQIABBAjYCDAwIC0EAIRAgAEEANgIcIAAgATYCFCAAQfKVgIAANgIQIABBAjYCDAwHCyAAQQI2AhwgACABNgIUIABBnJqAgAA2AhAgAEEWNgIMQQAhEAwGC0EBIRAMBQtB1AAhECABIgQgAkYNBCADQQhqIAAgBCACQdjCgIAAQQoQxYCAgAAgAygCDCEEIAMoAggOAwEEAgALEMqAgIAAAAsgAEEANgIcIABBtZqAgAA2AhAgAEEXNgIMIAAgBEEBajYCFEEAIRAMAgsgAEEANgIcIAAgBDYCFCAAQcqagIAANgIQIABBCTYCDEEAIRAMAQsCQCABIgQgAkcNAEEiIRAMAQsgAEGJgICAADYCCCAAIAQ2AgRBISEQCyADQRBqJICAgIAAIBALrwEBAn8gASgCACEGAkACQCACIANGDQAgBCAGaiEEIAYgA2ogAmshByACIAZBf3MgBWoiBmohBQNAAkAgAi0AACAELQAARg0AQQIhBAwDCwJAIAYNAEEAIQQgBSECDAMLIAZBf2ohBiAEQQFqIQQgAkEBaiICIANHDQALIAchBiADIQILIABBATYCACABIAY2AgAgACACNgIEDwsgAUEANgIAIAAgBDYCACAAIAI2AgQLCgAgABDHgICAAAvyNgELfyOAgICAAEEQayIBJICAgIAAAkBBACgCoNCAgAANAEEAEMuAgIAAQYDUhIAAayICQdkASQ0AQQAhAwJAQQAoAuDTgIAAIgQNAEEAQn83AuzTgIAAQQBCgICEgICAwAA3AuTTgIAAQQAgAUEIakFwcUHYqtWqBXMiBDYC4NOAgABBAEEANgL004CAAEEAQQA2AsTTgIAAC0EAIAI2AszTgIAAQQBBgNSEgAA2AsjTgIAAQQBBgNSEgAA2ApjQgIAAQQAgBDYCrNCAgABBAEF/NgKo0ICAAANAIANBxNCAgABqIANBuNCAgABqIgQ2AgAgBCADQbDQgIAAaiIFNgIAIANBvNCAgABqIAU2AgAgA0HM0ICAAGogA0HA0ICAAGoiBTYCACAFIAQ2AgAgA0HU0ICAAGogA0HI0ICAAGoiBDYCACAEIAU2AgAgA0HQ0ICAAGogBDYCACADQSBqIgNBgAJHDQALQYDUhIAAQXhBgNSEgABrQQ9xQQBBgNSEgABBCGpBD3EbIgNqIgRBBGogAkFIaiIFIANrIgNBAXI2AgBBAEEAKALw04CAADYCpNCAgABBACADNgKU0ICAAEEAIAQ2AqDQgIAAQYDUhIAAIAVqQTg2AgQLAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB7AFLDQACQEEAKAKI0ICAACIGQRAgAEETakFwcSAAQQtJGyICQQN2IgR2IgNBA3FFDQACQAJAIANBAXEgBHJBAXMiBUEDdCIEQbDQgIAAaiIDIARBuNCAgABqKAIAIgQoAggiAkcNAEEAIAZBfiAFd3E2AojQgIAADAELIAMgAjYCCCACIAM2AgwLIARBCGohAyAEIAVBA3QiBUEDcjYCBCAEIAVqIgQgBCgCBEEBcjYCBAwMCyACQQAoApDQgIAAIgdNDQECQCADRQ0AAkACQCADIAR0QQIgBHQiA0EAIANrcnEiA0EAIANrcUF/aiIDIANBDHZBEHEiA3YiBEEFdkEIcSIFIANyIAQgBXYiA0ECdkEEcSIEciADIAR2IgNBAXZBAnEiBHIgAyAEdiIDQQF2QQFxIgRyIAMgBHZqIgRBA3QiA0Gw0ICAAGoiBSADQbjQgIAAaigCACIDKAIIIgBHDQBBACAGQX4gBHdxIgY2AojQgIAADAELIAUgADYCCCAAIAU2AgwLIAMgAkEDcjYCBCADIARBA3QiBGogBCACayIFNgIAIAMgAmoiACAFQQFyNgIEAkAgB0UNACAHQXhxQbDQgIAAaiECQQAoApzQgIAAIQQCQAJAIAZBASAHQQN2dCIIcQ0AQQAgBiAIcjYCiNCAgAAgAiEIDAELIAIoAgghCAsgCCAENgIMIAIgBDYCCCAEIAI2AgwgBCAINgIICyADQQhqIQNBACAANgKc0ICAAEEAIAU2ApDQgIAADAwLQQAoAozQgIAAIglFDQEgCUEAIAlrcUF/aiIDIANBDHZBEHEiA3YiBEEFdkEIcSIFIANyIAQgBXYiA0ECdkEEcSIEciADIAR2IgNBAXZBAnEiBHIgAyAEdiIDQQF2QQFxIgRyIAMgBHZqQQJ0QbjSgIAAaigCACIAKAIEQXhxIAJrIQQgACEFAkADQAJAIAUoAhAiAw0AIAVBFGooAgAiA0UNAgsgAygCBEF4cSACayIFIAQgBSAESSIFGyEEIAMgACAFGyEAIAMhBQwACwsgACgCGCEKAkAgACgCDCIIIABGDQAgACgCCCIDQQAoApjQgIAASRogCCADNgIIIAMgCDYCDAwLCwJAIABBFGoiBSgCACIDDQAgACgCECIDRQ0DIABBEGohBQsDQCAFIQsgAyIIQRRqIgUoAgAiAw0AIAhBEGohBSAIKAIQIgMNAAsgC0EANgIADAoLQX8hAiAAQb9/Sw0AIABBE2oiA0FwcSECQQAoAozQgIAAIgdFDQBBACELAkAgAkGAAkkNAEEfIQsgAkH///8HSw0AIANBCHYiAyADQYD+P2pBEHZBCHEiA3QiBCAEQYDgH2pBEHZBBHEiBHQiBSAFQYCAD2pBEHZBAnEiBXRBD3YgAyAEciAFcmsiA0EBdCACIANBFWp2QQFxckEcaiELC0EAIAJrIQQCQAJAAkACQCALQQJ0QbjSgIAAaigCACIFDQBBACEDQQAhCAwBC0EAIQMgAkEAQRkgC0EBdmsgC0EfRht0IQBBACEIA0ACQCAFKAIEQXhxIAJrIgYgBE8NACAGIQQgBSEIIAYNAEEAIQQgBSEIIAUhAwwDCyADIAVBFGooAgAiBiAGIAUgAEEddkEEcWpBEGooAgAiBUYbIAMgBhshAyAAQQF0IQAgBQ0ACwsCQCADIAhyDQBBACEIQQIgC3QiA0EAIANrciAHcSIDRQ0DIANBACADa3FBf2oiAyADQQx2QRBxIgN2IgVBBXZBCHEiACADciAFIAB2IgNBAnZBBHEiBXIgAyAFdiIDQQF2QQJxIgVyIAMgBXYiA0EBdkEBcSIFciADIAV2akECdEG40oCAAGooAgAhAwsgA0UNAQsDQCADKAIEQXhxIAJrIgYgBEkhAAJAIAMoAhAiBQ0AIANBFGooAgAhBQsgBiAEIAAbIQQgAyAIIAAbIQggBSEDIAUNAAsLIAhFDQAgBEEAKAKQ0ICAACACa08NACAIKAIYIQsCQCAIKAIMIgAgCEYNACAIKAIIIgNBACgCmNCAgABJGiAAIAM2AgggAyAANgIMDAkLAkAgCEEUaiIFKAIAIgMNACAIKAIQIgNFDQMgCEEQaiEFCwNAIAUhBiADIgBBFGoiBSgCACIDDQAgAEEQaiEFIAAoAhAiAw0ACyAGQQA2AgAMCAsCQEEAKAKQ0ICAACIDIAJJDQBBACgCnNCAgAAhBAJAAkAgAyACayIFQRBJDQAgBCACaiIAIAVBAXI2AgRBACAFNgKQ0ICAAEEAIAA2ApzQgIAAIAQgA2ogBTYCACAEIAJBA3I2AgQMAQsgBCADQQNyNgIEIAQgA2oiAyADKAIEQQFyNgIEQQBBADYCnNCAgABBAEEANgKQ0ICAAAsgBEEIaiEDDAoLAkBBACgClNCAgAAiACACTQ0AQQAoAqDQgIAAIgMgAmoiBCAAIAJrIgVBAXI2AgRBACAFNgKU0ICAAEEAIAQ2AqDQgIAAIAMgAkEDcjYCBCADQQhqIQMMCgsCQAJAQQAoAuDTgIAARQ0AQQAoAujTgIAAIQQMAQtBAEJ/NwLs04CAAEEAQoCAhICAgMAANwLk04CAAEEAIAFBDGpBcHFB2KrVqgVzNgLg04CAAEEAQQA2AvTTgIAAQQBBADYCxNOAgABBgIAEIQQLQQAhAwJAIAQgAkHHAGoiB2oiBkEAIARrIgtxIgggAksNAEEAQTA2AvjTgIAADAoLAkBBACgCwNOAgAAiA0UNAAJAQQAoArjTgIAAIgQgCGoiBSAETQ0AIAUgA00NAQtBACEDQQBBMDYC+NOAgAAMCgtBAC0AxNOAgABBBHENBAJAAkACQEEAKAKg0ICAACIERQ0AQcjTgIAAIQMDQAJAIAMoAgAiBSAESw0AIAUgAygCBGogBEsNAwsgAygCCCIDDQALC0EAEMuAgIAAIgBBf0YNBSAIIQYCQEEAKALk04CAACIDQX9qIgQgAHFFDQAgCCAAayAEIABqQQAgA2txaiEGCyAGIAJNDQUgBkH+////B0sNBQJAQQAoAsDTgIAAIgNFDQBBACgCuNOAgAAiBCAGaiIFIARNDQYgBSADSw0GCyAGEMuAgIAAIgMgAEcNAQwHCyAGIABrIAtxIgZB/v///wdLDQQgBhDLgICAACIAIAMoAgAgAygCBGpGDQMgACEDCwJAIANBf0YNACACQcgAaiAGTQ0AAkAgByAGa0EAKALo04CAACIEakEAIARrcSIEQf7///8HTQ0AIAMhAAwHCwJAIAQQy4CAgABBf0YNACAEIAZqIQYgAyEADAcLQQAgBmsQy4CAgAAaDAQLIAMhACADQX9HDQUMAwtBACEIDAcLQQAhAAwFCyAAQX9HDQILQQBBACgCxNOAgABBBHI2AsTTgIAACyAIQf7///8HSw0BIAgQy4CAgAAhAEEAEMuAgIAAIQMgAEF/Rg0BIANBf0YNASAAIANPDQEgAyAAayIGIAJBOGpNDQELQQBBACgCuNOAgAAgBmoiAzYCuNOAgAACQCADQQAoArzTgIAATQ0AQQAgAzYCvNOAgAALAkACQAJAAkBBACgCoNCAgAAiBEUNAEHI04CAACEDA0AgACADKAIAIgUgAygCBCIIakYNAiADKAIIIgMNAAwDCwsCQAJAQQAoApjQgIAAIgNFDQAgACADTw0BC0EAIAA2ApjQgIAAC0EAIQNBACAGNgLM04CAAEEAIAA2AsjTgIAAQQBBfzYCqNCAgABBAEEAKALg04CAADYCrNCAgABBAEEANgLU04CAAANAIANBxNCAgABqIANBuNCAgABqIgQ2AgAgBCADQbDQgIAAaiIFNgIAIANBvNCAgABqIAU2AgAgA0HM0ICAAGogA0HA0ICAAGoiBTYCACAFIAQ2AgAgA0HU0ICAAGogA0HI0ICAAGoiBDYCACAEIAU2AgAgA0HQ0ICAAGogBDYCACADQSBqIgNBgAJHDQALIABBeCAAa0EPcUEAIABBCGpBD3EbIgNqIgQgBkFIaiIFIANrIgNBAXI2AgRBAEEAKALw04CAADYCpNCAgABBACADNgKU0ICAAEEAIAQ2AqDQgIAAIAAgBWpBODYCBAwCCyADLQAMQQhxDQAgBCAFSQ0AIAQgAE8NACAEQXggBGtBD3FBACAEQQhqQQ9xGyIFaiIAQQAoApTQgIAAIAZqIgsgBWsiBUEBcjYCBCADIAggBmo2AgRBAEEAKALw04CAADYCpNCAgABBACAFNgKU0ICAAEEAIAA2AqDQgIAAIAQgC2pBODYCBAwBCwJAIABBACgCmNCAgAAiCE8NAEEAIAA2ApjQgIAAIAAhCAsgACAGaiEFQcjTgIAAIQMCQAJAAkACQAJAAkACQANAIAMoAgAgBUYNASADKAIIIgMNAAwCCwsgAy0ADEEIcUUNAQtByNOAgAAhAwNAAkAgAygCACIFIARLDQAgBSADKAIEaiIFIARLDQMLIAMoAgghAwwACwsgAyAANgIAIAMgAygCBCAGajYCBCAAQXggAGtBD3FBACAAQQhqQQ9xG2oiCyACQQNyNgIEIAVBeCAFa0EPcUEAIAVBCGpBD3EbaiIGIAsgAmoiAmshAwJAIAYgBEcNAEEAIAI2AqDQgIAAQQBBACgClNCAgAAgA2oiAzYClNCAgAAgAiADQQFyNgIEDAMLAkAgBkEAKAKc0ICAAEcNAEEAIAI2ApzQgIAAQQBBACgCkNCAgAAgA2oiAzYCkNCAgAAgAiADQQFyNgIEIAIgA2ogAzYCAAwDCwJAIAYoAgQiBEEDcUEBRw0AIARBeHEhBwJAAkAgBEH/AUsNACAGKAIIIgUgBEEDdiIIQQN0QbDQgIAAaiIARhoCQCAGKAIMIgQgBUcNAEEAQQAoAojQgIAAQX4gCHdxNgKI0ICAAAwCCyAEIABGGiAEIAU2AgggBSAENgIMDAELIAYoAhghCQJAAkAgBigCDCIAIAZGDQAgBigCCCIEIAhJGiAAIAQ2AgggBCAANgIMDAELAkAgBkEUaiIEKAIAIgUNACAGQRBqIgQoAgAiBQ0AQQAhAAwBCwNAIAQhCCAFIgBBFGoiBCgCACIFDQAgAEEQaiEEIAAoAhAiBQ0ACyAIQQA2AgALIAlFDQACQAJAIAYgBigCHCIFQQJ0QbjSgIAAaiIEKAIARw0AIAQgADYCACAADQFBAEEAKAKM0ICAAEF+IAV3cTYCjNCAgAAMAgsgCUEQQRQgCSgCECAGRhtqIAA2AgAgAEUNAQsgACAJNgIYAkAgBigCECIERQ0AIAAgBDYCECAEIAA2AhgLIAYoAhQiBEUNACAAQRRqIAQ2AgAgBCAANgIYCyAHIANqIQMgBiAHaiIGKAIEIQQLIAYgBEF+cTYCBCACIANqIAM2AgAgAiADQQFyNgIEAkAgA0H/AUsNACADQXhxQbDQgIAAaiEEAkACQEEAKAKI0ICAACIFQQEgA0EDdnQiA3ENAEEAIAUgA3I2AojQgIAAIAQhAwwBCyAEKAIIIQMLIAMgAjYCDCAEIAI2AgggAiAENgIMIAIgAzYCCAwDC0EfIQQCQCADQf///wdLDQAgA0EIdiIEIARBgP4/akEQdkEIcSIEdCIFIAVBgOAfakEQdkEEcSIFdCIAIABBgIAPakEQdkECcSIAdEEPdiAEIAVyIAByayIEQQF0IAMgBEEVanZBAXFyQRxqIQQLIAIgBDYCHCACQgA3AhAgBEECdEG40oCAAGohBQJAQQAoAozQgIAAIgBBASAEdCIIcQ0AIAUgAjYCAEEAIAAgCHI2AozQgIAAIAIgBTYCGCACIAI2AgggAiACNgIMDAMLIANBAEEZIARBAXZrIARBH0YbdCEEIAUoAgAhAANAIAAiBSgCBEF4cSADRg0CIARBHXYhACAEQQF0IQQgBSAAQQRxakEQaiIIKAIAIgANAAsgCCACNgIAIAIgBTYCGCACIAI2AgwgAiACNgIIDAILIABBeCAAa0EPcUEAIABBCGpBD3EbIgNqIgsgBkFIaiIIIANrIgNBAXI2AgQgACAIakE4NgIEIAQgBUE3IAVrQQ9xQQAgBUFJakEPcRtqQUFqIgggCCAEQRBqSRsiCEEjNgIEQQBBACgC8NOAgAA2AqTQgIAAQQAgAzYClNCAgABBACALNgKg0ICAACAIQRBqQQApAtDTgIAANwIAIAhBACkCyNOAgAA3AghBACAIQQhqNgLQ04CAAEEAIAY2AszTgIAAQQAgADYCyNOAgABBAEEANgLU04CAACAIQSRqIQMDQCADQQc2AgAgA0EEaiIDIAVJDQALIAggBEYNAyAIIAgoAgRBfnE2AgQgCCAIIARrIgA2AgAgBCAAQQFyNgIEAkAgAEH/AUsNACAAQXhxQbDQgIAAaiEDAkACQEEAKAKI0ICAACIFQQEgAEEDdnQiAHENAEEAIAUgAHI2AojQgIAAIAMhBQwBCyADKAIIIQULIAUgBDYCDCADIAQ2AgggBCADNgIMIAQgBTYCCAwEC0EfIQMCQCAAQf///wdLDQAgAEEIdiIDIANBgP4/akEQdkEIcSIDdCIFIAVBgOAfakEQdkEEcSIFdCIIIAhBgIAPakEQdkECcSIIdEEPdiADIAVyIAhyayIDQQF0IAAgA0EVanZBAXFyQRxqIQMLIAQgAzYCHCAEQgA3AhAgA0ECdEG40oCAAGohBQJAQQAoAozQgIAAIghBASADdCIGcQ0AIAUgBDYCAEEAIAggBnI2AozQgIAAIAQgBTYCGCAEIAQ2AgggBCAENgIMDAQLIABBAEEZIANBAXZrIANBH0YbdCEDIAUoAgAhCANAIAgiBSgCBEF4cSAARg0DIANBHXYhCCADQQF0IQMgBSAIQQRxakEQaiIGKAIAIggNAAsgBiAENgIAIAQgBTYCGCAEIAQ2AgwgBCAENgIIDAMLIAUoAggiAyACNgIMIAUgAjYCCCACQQA2AhggAiAFNgIMIAIgAzYCCAsgC0EIaiEDDAULIAUoAggiAyAENgIMIAUgBDYCCCAEQQA2AhggBCAFNgIMIAQgAzYCCAtBACgClNCAgAAiAyACTQ0AQQAoAqDQgIAAIgQgAmoiBSADIAJrIgNBAXI2AgRBACADNgKU0ICAAEEAIAU2AqDQgIAAIAQgAkEDcjYCBCAEQQhqIQMMAwtBACEDQQBBMDYC+NOAgAAMAgsCQCALRQ0AAkACQCAIIAgoAhwiBUECdEG40oCAAGoiAygCAEcNACADIAA2AgAgAA0BQQAgB0F+IAV3cSIHNgKM0ICAAAwCCyALQRBBFCALKAIQIAhGG2ogADYCACAARQ0BCyAAIAs2AhgCQCAIKAIQIgNFDQAgACADNgIQIAMgADYCGAsgCEEUaigCACIDRQ0AIABBFGogAzYCACADIAA2AhgLAkACQCAEQQ9LDQAgCCAEIAJqIgNBA3I2AgQgCCADaiIDIAMoAgRBAXI2AgQMAQsgCCACaiIAIARBAXI2AgQgCCACQQNyNgIEIAAgBGogBDYCAAJAIARB/wFLDQAgBEF4cUGw0ICAAGohAwJAAkBBACgCiNCAgAAiBUEBIARBA3Z0IgRxDQBBACAFIARyNgKI0ICAACADIQQMAQsgAygCCCEECyAEIAA2AgwgAyAANgIIIAAgAzYCDCAAIAQ2AggMAQtBHyEDAkAgBEH///8HSw0AIARBCHYiAyADQYD+P2pBEHZBCHEiA3QiBSAFQYDgH2pBEHZBBHEiBXQiAiACQYCAD2pBEHZBAnEiAnRBD3YgAyAFciACcmsiA0EBdCAEIANBFWp2QQFxckEcaiEDCyAAIAM2AhwgAEIANwIQIANBAnRBuNKAgABqIQUCQCAHQQEgA3QiAnENACAFIAA2AgBBACAHIAJyNgKM0ICAACAAIAU2AhggACAANgIIIAAgADYCDAwBCyAEQQBBGSADQQF2ayADQR9GG3QhAyAFKAIAIQICQANAIAIiBSgCBEF4cSAERg0BIANBHXYhAiADQQF0IQMgBSACQQRxakEQaiIGKAIAIgINAAsgBiAANgIAIAAgBTYCGCAAIAA2AgwgACAANgIIDAELIAUoAggiAyAANgIMIAUgADYCCCAAQQA2AhggACAFNgIMIAAgAzYCCAsgCEEIaiEDDAELAkAgCkUNAAJAAkAgACAAKAIcIgVBAnRBuNKAgABqIgMoAgBHDQAgAyAINgIAIAgNAUEAIAlBfiAFd3E2AozQgIAADAILIApBEEEUIAooAhAgAEYbaiAINgIAIAhFDQELIAggCjYCGAJAIAAoAhAiA0UNACAIIAM2AhAgAyAINgIYCyAAQRRqKAIAIgNFDQAgCEEUaiADNgIAIAMgCDYCGAsCQAJAIARBD0sNACAAIAQgAmoiA0EDcjYCBCAAIANqIgMgAygCBEEBcjYCBAwBCyAAIAJqIgUgBEEBcjYCBCAAIAJBA3I2AgQgBSAEaiAENgIAAkAgB0UNACAHQXhxQbDQgIAAaiECQQAoApzQgIAAIQMCQAJAQQEgB0EDdnQiCCAGcQ0AQQAgCCAGcjYCiNCAgAAgAiEIDAELIAIoAgghCAsgCCADNgIMIAIgAzYCCCADIAI2AgwgAyAINgIIC0EAIAU2ApzQgIAAQQAgBDYCkNCAgAALIABBCGohAwsgAUEQaiSAgICAACADCwoAIAAQyYCAgAAL4g0BB38CQCAARQ0AIABBeGoiASAAQXxqKAIAIgJBeHEiAGohAwJAIAJBAXENACACQQNxRQ0BIAEgASgCACICayIBQQAoApjQgIAAIgRJDQEgAiAAaiEAAkAgAUEAKAKc0ICAAEYNAAJAIAJB/wFLDQAgASgCCCIEIAJBA3YiBUEDdEGw0ICAAGoiBkYaAkAgASgCDCICIARHDQBBAEEAKAKI0ICAAEF+IAV3cTYCiNCAgAAMAwsgAiAGRhogAiAENgIIIAQgAjYCDAwCCyABKAIYIQcCQAJAIAEoAgwiBiABRg0AIAEoAggiAiAESRogBiACNgIIIAIgBjYCDAwBCwJAIAFBFGoiAigCACIEDQAgAUEQaiICKAIAIgQNAEEAIQYMAQsDQCACIQUgBCIGQRRqIgIoAgAiBA0AIAZBEGohAiAGKAIQIgQNAAsgBUEANgIACyAHRQ0BAkACQCABIAEoAhwiBEECdEG40oCAAGoiAigCAEcNACACIAY2AgAgBg0BQQBBACgCjNCAgABBfiAEd3E2AozQgIAADAMLIAdBEEEUIAcoAhAgAUYbaiAGNgIAIAZFDQILIAYgBzYCGAJAIAEoAhAiAkUNACAGIAI2AhAgAiAGNgIYCyABKAIUIgJFDQEgBkEUaiACNgIAIAIgBjYCGAwBCyADKAIEIgJBA3FBA0cNACADIAJBfnE2AgRBACAANgKQ0ICAACABIABqIAA2AgAgASAAQQFyNgIEDwsgASADTw0AIAMoAgQiAkEBcUUNAAJAAkAgAkECcQ0AAkAgA0EAKAKg0ICAAEcNAEEAIAE2AqDQgIAAQQBBACgClNCAgAAgAGoiADYClNCAgAAgASAAQQFyNgIEIAFBACgCnNCAgABHDQNBAEEANgKQ0ICAAEEAQQA2ApzQgIAADwsCQCADQQAoApzQgIAARw0AQQAgATYCnNCAgABBAEEAKAKQ0ICAACAAaiIANgKQ0ICAACABIABBAXI2AgQgASAAaiAANgIADwsgAkF4cSAAaiEAAkACQCACQf8BSw0AIAMoAggiBCACQQN2IgVBA3RBsNCAgABqIgZGGgJAIAMoAgwiAiAERw0AQQBBACgCiNCAgABBfiAFd3E2AojQgIAADAILIAIgBkYaIAIgBDYCCCAEIAI2AgwMAQsgAygCGCEHAkACQCADKAIMIgYgA0YNACADKAIIIgJBACgCmNCAgABJGiAGIAI2AgggAiAGNgIMDAELAkAgA0EUaiICKAIAIgQNACADQRBqIgIoAgAiBA0AQQAhBgwBCwNAIAIhBSAEIgZBFGoiAigCACIEDQAgBkEQaiECIAYoAhAiBA0ACyAFQQA2AgALIAdFDQACQAJAIAMgAygCHCIEQQJ0QbjSgIAAaiICKAIARw0AIAIgBjYCACAGDQFBAEEAKAKM0ICAAEF+IAR3cTYCjNCAgAAMAgsgB0EQQRQgBygCECADRhtqIAY2AgAgBkUNAQsgBiAHNgIYAkAgAygCECICRQ0AIAYgAjYCECACIAY2AhgLIAMoAhQiAkUNACAGQRRqIAI2AgAgAiAGNgIYCyABIABqIAA2AgAgASAAQQFyNgIEIAFBACgCnNCAgABHDQFBACAANgKQ0ICAAA8LIAMgAkF+cTYCBCABIABqIAA2AgAgASAAQQFyNgIECwJAIABB/wFLDQAgAEF4cUGw0ICAAGohAgJAAkBBACgCiNCAgAAiBEEBIABBA3Z0IgBxDQBBACAEIAByNgKI0ICAACACIQAMAQsgAigCCCEACyAAIAE2AgwgAiABNgIIIAEgAjYCDCABIAA2AggPC0EfIQICQCAAQf///wdLDQAgAEEIdiICIAJBgP4/akEQdkEIcSICdCIEIARBgOAfakEQdkEEcSIEdCIGIAZBgIAPakEQdkECcSIGdEEPdiACIARyIAZyayICQQF0IAAgAkEVanZBAXFyQRxqIQILIAEgAjYCHCABQgA3AhAgAkECdEG40oCAAGohBAJAAkBBACgCjNCAgAAiBkEBIAJ0IgNxDQAgBCABNgIAQQAgBiADcjYCjNCAgAAgASAENgIYIAEgATYCCCABIAE2AgwMAQsgAEEAQRkgAkEBdmsgAkEfRht0IQIgBCgCACEGAkADQCAGIgQoAgRBeHEgAEYNASACQR12IQYgAkEBdCECIAQgBkEEcWpBEGoiAygCACIGDQALIAMgATYCACABIAQ2AhggASABNgIMIAEgATYCCAwBCyAEKAIIIgAgATYCDCAEIAE2AgggAUEANgIYIAEgBDYCDCABIAA2AggLQQBBACgCqNCAgABBf2oiAUF/IAEbNgKo0ICAAAsLBAAAAAtOAAJAIAANAD8AQRB0DwsCQCAAQf//A3ENACAAQX9MDQACQCAAQRB2QAAiAEF/Rw0AQQBBMDYC+NOAgABBfw8LIABBEHQPCxDKgICAAAAL8gICA38BfgJAIAJFDQAgACABOgAAIAIgAGoiA0F/aiABOgAAIAJBA0kNACAAIAE6AAIgACABOgABIANBfWogAToAACADQX5qIAE6AAAgAkEHSQ0AIAAgAToAAyADQXxqIAE6AAAgAkEJSQ0AIABBACAAa0EDcSIEaiIDIAFB/wFxQYGChAhsIgE2AgAgAyACIARrQXxxIgRqIgJBfGogATYCACAEQQlJDQAgAyABNgIIIAMgATYCBCACQXhqIAE2AgAgAkF0aiABNgIAIARBGUkNACADIAE2AhggAyABNgIUIAMgATYCECADIAE2AgwgAkFwaiABNgIAIAJBbGogATYCACACQWhqIAE2AgAgAkFkaiABNgIAIAQgA0EEcUEYciIFayICQSBJDQAgAa1CgYCAgBB+IQYgAyAFaiEBA0AgASAGNwMYIAEgBjcDECABIAY3AwggASAGNwMAIAFBIGohASACQWBqIgJBH0sNAAsLIAALC45IAQBBgAgLhkgBAAAAAgAAAAMAAAAAAAAAAAAAAAQAAAAFAAAAAAAAAAAAAAAGAAAABwAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEludmFsaWQgY2hhciBpbiB1cmwgcXVlcnkAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9ib2R5AENvbnRlbnQtTGVuZ3RoIG92ZXJmbG93AENodW5rIHNpemUgb3ZlcmZsb3cAUmVzcG9uc2Ugb3ZlcmZsb3cASW52YWxpZCBtZXRob2QgZm9yIEhUVFAveC54IHJlcXVlc3QASW52YWxpZCBtZXRob2QgZm9yIFJUU1AveC54IHJlcXVlc3QARXhwZWN0ZWQgU09VUkNFIG1ldGhvZCBmb3IgSUNFL3gueCByZXF1ZXN0AEludmFsaWQgY2hhciBpbiB1cmwgZnJhZ21lbnQgc3RhcnQARXhwZWN0ZWQgZG90AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fc3RhdHVzAEludmFsaWQgcmVzcG9uc2Ugc3RhdHVzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21ldGhvZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lYCBjYWxsYmFjayBlcnJvcgBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNlcnZlcgBJbnZhbGlkIGhlYWRlciB2YWx1ZSBjaGFyAEludmFsaWQgaGVhZGVyIGZpZWxkIGNoYXIAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl92ZXJzaW9uAEludmFsaWQgbWlub3IgdmVyc2lvbgBJbnZhbGlkIG1ham9yIHZlcnNpb24ARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgdmVyc2lvbgBFeHBlY3RlZCBDUkxGIGFmdGVyIHZlcnNpb24ASW52YWxpZCBIVFRQIHZlcnNpb24ASW52YWxpZCBoZWFkZXIgdG9rZW4AU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl91cmwASW52YWxpZCBjaGFyYWN0ZXJzIGluIHVybABVbmV4cGVjdGVkIHN0YXJ0IGNoYXIgaW4gdXJsAERvdWJsZSBAIGluIHVybABFbXB0eSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXJhY3RlciBpbiBDb250ZW50LUxlbmd0aABEdXBsaWNhdGUgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyIGluIHVybCBwYXRoAENvbnRlbnQtTGVuZ3RoIGNhbid0IGJlIHByZXNlbnQgd2l0aCBUcmFuc2Zlci1FbmNvZGluZwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBzaXplAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX3ZhbHVlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgdmFsdWUATWlzc2luZyBleHBlY3RlZCBMRiBhZnRlciBoZWFkZXIgdmFsdWUASW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fbmFtZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIG5hbWUAUGF1c2Ugb24gQ09OTkVDVC9VcGdyYWRlAFBhdXNlIG9uIFBSSS9VcGdyYWRlAEV4cGVjdGVkIEhUVFAvMiBDb25uZWN0aW9uIFByZWZhY2UAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9tZXRob2QARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgbWV0aG9kAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX2ZpZWxkAFBhdXNlZABJbnZhbGlkIHdvcmQgZW5jb3VudGVyZWQASW52YWxpZCBtZXRob2QgZW5jb3VudGVyZWQAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzY2hlbWEAUmVxdWVzdCBoYXMgaW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX0NIVU5LX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX05BTUVfQ09NUExFVEUASFBFX0NCX01FU1NBR0VfQ09NUExFVEUASFBFX0NCX01FVEhPRF9DT01QTEVURQBIUEVfQ0JfSEVBREVSX0ZJRUxEX0NPTVBMRVRFAERFTEVURQBIUEVfSU5WQUxJRF9FT0ZfU1RBVEUASU5WQUxJRF9TU0xfQ0VSVElGSUNBVEUAUEFVU0UATk9fUkVTUE9OU0UAVU5TVVBQT1JURURfTUVESUFfVFlQRQBHT05FAE5PVF9BQ0NFUFRBQkxFAFNFUlZJQ0VfVU5BVkFJTEFCTEUAUkFOR0VfTk9UX1NBVElTRklBQkxFAE9SSUdJTl9JU19VTlJFQUNIQUJMRQBSRVNQT05TRV9JU19TVEFMRQBQVVJHRQBNRVJHRQBSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFAFJFUVVFU1RfSEVBREVSX1RPT19MQVJHRQBQQVlMT0FEX1RPT19MQVJHRQBJTlNVRkZJQ0lFTlRfU1RPUkFHRQBIUEVfUEFVU0VEX1VQR1JBREUASFBFX1BBVVNFRF9IMl9VUEdSQURFAFNPVVJDRQBBTk5PVU5DRQBUUkFDRQBIUEVfVU5FWFBFQ1RFRF9TUEFDRQBERVNDUklCRQBVTlNVQlNDUklCRQBSRUNPUkQASFBFX0lOVkFMSURfTUVUSE9EAE5PVF9GT1VORABQUk9QRklORABVTkJJTkQAUkVCSU5EAFVOQVVUSE9SSVpFRABNRVRIT0RfTk9UX0FMTE9XRUQASFRUUF9WRVJTSU9OX05PVF9TVVBQT1JURUQAQUxSRUFEWV9SRVBPUlRFRABBQ0NFUFRFRABOT1RfSU1QTEVNRU5URUQATE9PUF9ERVRFQ1RFRABIUEVfQ1JfRVhQRUNURUQASFBFX0xGX0VYUEVDVEVEAENSRUFURUQASU1fVVNFRABIUEVfUEFVU0VEAFRJTUVPVVRfT0NDVVJFRABQQVlNRU5UX1JFUVVJUkVEAFBSRUNPTkRJVElPTl9SRVFVSVJFRABQUk9YWV9BVVRIRU5USUNBVElPTl9SRVFVSVJFRABORVRXT1JLX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAExFTkdUSF9SRVFVSVJFRABTU0xfQ0VSVElGSUNBVEVfUkVRVUlSRUQAVVBHUkFERV9SRVFVSVJFRABQQUdFX0VYUElSRUQAUFJFQ09ORElUSU9OX0ZBSUxFRABFWFBFQ1RBVElPTl9GQUlMRUQAUkVWQUxJREFUSU9OX0ZBSUxFRABTU0xfSEFORFNIQUtFX0ZBSUxFRABMT0NLRUQAVFJBTlNGT1JNQVRJT05fQVBQTElFRABOT1RfTU9ESUZJRUQATk9UX0VYVEVOREVEAEJBTkRXSURUSF9MSU1JVF9FWENFRURFRABTSVRFX0lTX09WRVJMT0FERUQASEVBRABFeHBlY3RlZCBIVFRQLwAAXhMAACYTAAAwEAAA8BcAAJ0TAAAVEgAAORcAAPASAAAKEAAAdRIAAK0SAACCEwAATxQAAH8QAACgFQAAIxQAAIkSAACLFAAATRUAANQRAADPFAAAEBgAAMkWAADcFgAAwREAAOAXAAC7FAAAdBQAAHwVAADlFAAACBcAAB8QAABlFQAAoxQAACgVAAACFQAAmRUAACwQAACLGQAATw8AANQOAABqEAAAzhAAAAIXAACJDgAAbhMAABwTAABmFAAAVhcAAMETAADNEwAAbBMAAGgXAABmFwAAXxcAACITAADODwAAaQ4AANgOAABjFgAAyxMAAKoOAAAoFwAAJhcAAMUTAABdFgAA6BEAAGcTAABlEwAA8hYAAHMTAAAdFwAA+RYAAPMRAADPDgAAzhUAAAwSAACzEQAApREAAGEQAAAyFwAAuxMAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIDAgICAgIAAAICAAICAAICAgICAgICAgIABAAAAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAACAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbG9zZWVlcC1hbGl2ZQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEAAAEBAAEBAAEBAQEBAQEBAQEAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AAAAAAAAAAAAAAAAAAAByYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AAAAAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQIAAQMAAAAAAAAAAAAAAAAAAAAAAAAEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAQAAAgAAAAAAAAAAAAAAAAAAAAAAAAMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABOT1VOQ0VFQ0tPVVRORUNURVRFQ1JJQkVMVVNIRVRFQURTRUFSQ0hSR0VDVElWSVRZTEVOREFSVkVPVElGWVBUSU9OU0NIU0VBWVNUQVRDSEdFT1JESVJFQ1RPUlRSQ0hQQVJBTUVURVJVUkNFQlNDUklCRUFSRE9XTkFDRUlORE5LQ0tVQlNDUklCRUhUVFAvQURUUC8="},53434:Wt=>{Wt.exports="AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJsbGh0dHBfc3RhdHVzX25hbWUAIRpsbGh0dHBfc2V0X2xlbmllbnRfaGVhZGVycwAiIWxsaHR0cF9zZXRfbGVuaWVudF9jaHVua2VkX2xlbmd0aAAjHWxsaHR0cF9zZXRfbGVuaWVudF9rZWVwX2FsaXZlACQkbGxodHRwX3NldF9sZW5pZW50X3RyYW5zZmVyX2VuY29kaW5nACUYbGxodHRwX21lc3NhZ2VfbmVlZHNfZW9mAD8JFwEAQQELEQECAwQFCwYHNTk3MS8tJyspCrLgAkUCAAsIABCIgICAAAsZACAAEMKAgIAAGiAAIAI2AjggACABOgAoCxwAIAAgAC8BMiAALQAuIAAQwYCAgAAQgICAgAALKgEBf0HAABDGgICAACIBEMKAgIAAGiABQYCIgIAANgI4IAEgADoAKCABCwoAIAAQyICAgAALBwAgAC0AKAsHACAALQAqCwcAIAAtACsLBwAgAC0AKQsHACAALwEyCwcAIAAtAC4LRQEEfyAAKAIYIQEgAC0ALSECIAAtACghAyAAKAI4IQQgABDCgICAABogACAENgI4IAAgAzoAKCAAIAI6AC0gACABNgIYCxEAIAAgASABIAJqEMOAgIAACxAAIABBAEHcABDMgICAABoLZwEBf0EAIQECQCAAKAIMDQACQAJAAkACQCAALQAvDgMBAAMCCyAAKAI4IgFFDQAgASgCLCIBRQ0AIAAgARGAgICAAAAiAQ0DC0EADwsQyoCAgAAACyAAQcOWgIAANgIQQQ4hAQsgAQseAAJAIAAoAgwNACAAQdGbgIAANgIQIABBFTYCDAsLFgACQCAAKAIMQRVHDQAgAEEANgIMCwsWAAJAIAAoAgxBFkcNACAAQQA2AgwLCwcAIAAoAgwLBwAgACgCEAsJACAAIAE2AhALBwAgACgCFAsiAAJAIABBJEkNABDKgICAAAALIABBAnRBoLOAgABqKAIACyIAAkAgAEEuSQ0AEMqAgIAAAAsgAEECdEGwtICAAGooAgAL7gsBAX9B66iAgAAhAQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABBnH9qDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0Hhp4CAAA8LQaShgIAADwtBy6yAgAAPC0H+sYCAAA8LQcCkgIAADwtBq6SAgAAPC0GNqICAAA8LQeKmgIAADwtBgLCAgAAPC0G5r4CAAA8LQdekgIAADwtB75+AgAAPC0Hhn4CAAA8LQfqfgIAADwtB8qCAgAAPC0Gor4CAAA8LQa6ygIAADwtBiLCAgAAPC0Hsp4CAAA8LQYKigIAADwtBjp2AgAAPC0HQroCAAA8LQcqjgIAADwtBxbKAgAAPC0HfnICAAA8LQdKcgIAADwtBxKCAgAAPC0HXoICAAA8LQaKfgIAADwtB7a6AgAAPC0GrsICAAA8LQdSlgIAADwtBzK6AgAAPC0H6roCAAA8LQfyrgIAADwtB0rCAgAAPC0HxnYCAAA8LQbuggIAADwtB96uAgAAPC0GQsYCAAA8LQdexgIAADwtBoq2AgAAPC0HUp4CAAA8LQeCrgIAADwtBn6yAgAAPC0HrsYCAAA8LQdWfgIAADwtByrGAgAAPC0HepYCAAA8LQdSegIAADwtB9JyAgAAPC0GnsoCAAA8LQbGdgIAADwtBoJ2AgAAPC0G5sYCAAA8LQbywgIAADwtBkqGAgAAPC0GzpoCAAA8LQemsgIAADwtBrJ6AgAAPC0HUq4CAAA8LQfemgIAADwtBgKaAgAAPC0GwoYCAAA8LQf6egIAADwtBjaOAgAAPC0GJrYCAAA8LQfeigIAADwtBoLGAgAAPC0Gun4CAAA8LQcalgIAADwtB6J6AgAAPC0GTooCAAA8LQcKvgIAADwtBw52AgAAPC0GLrICAAA8LQeGdgIAADwtBja+AgAAPC0HqoYCAAA8LQbStgIAADwtB0q+AgAAPC0HfsoCAAA8LQdKygIAADwtB8LCAgAAPC0GpooCAAA8LQfmjgIAADwtBmZ6AgAAPC0G1rICAAA8LQZuwgIAADwtBkrKAgAAPC0G2q4CAAA8LQcKigIAADwtB+LKAgAAPC0GepYCAAA8LQdCigIAADwtBup6AgAAPC0GBnoCAAA8LEMqAgIAAAAtB1qGAgAAhAQsgAQsWACAAIAAtAC1B/gFxIAFBAEdyOgAtCxkAIAAgAC0ALUH9AXEgAUEAR0EBdHI6AC0LGQAgACAALQAtQfsBcSABQQBHQQJ0cjoALQsZACAAIAAtAC1B9wFxIAFBAEdBA3RyOgAtCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAgAiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCBCIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQcaRgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIwIgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAggiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEH2ioCAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCNCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIMIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABB7ZqAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAjgiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCECIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQZWQgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAI8IgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAhQiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEGqm4CAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCQCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIYIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABB7ZOAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAkQiBEUNACAAIAQRgICAgAAAIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCJCIERQ0AIAAgBBGAgICAAAAhAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIsIgRFDQAgACAEEYCAgIAAACEDCyADC0kBAn9BACEDAkAgACgCOCIERQ0AIAQoAigiBEUNACAAIAEgAiABayAEEYGAgIAAACIDQX9HDQAgAEH2iICAADYCEEEYIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCUCIERQ0AIAAgBBGAgICAAAAhAwsgAwtJAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAIcIgRFDQAgACABIAIgAWsgBBGBgICAAAAiA0F/Rw0AIABBwpmAgAA2AhBBGCEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAkgiBEUNACAAIAQRgICAgAAAIQMLIAMLSQECf0EAIQMCQCAAKAI4IgRFDQAgBCgCICIERQ0AIAAgASACIAFrIAQRgYCAgAAAIgNBf0cNACAAQZSUgIAANgIQQRghAwsgAwsuAQJ/QQAhAwJAIAAoAjgiBEUNACAEKAJMIgRFDQAgACAEEYCAgIAAACEDCyADCy4BAn9BACEDAkAgACgCOCIERQ0AIAQoAlQiBEUNACAAIAQRgICAgAAAIQMLIAMLLgECf0EAIQMCQCAAKAI4IgRFDQAgBCgCWCIERQ0AIAAgBBGAgICAAAAhAwsgAwtFAQF/AkACQCAALwEwQRRxQRRHDQBBASEDIAAtAChBAUYNASAALwEyQeUARiEDDAELIAAtAClBBUYhAwsgACADOgAuQQAL/gEBA39BASEDAkAgAC8BMCIEQQhxDQAgACkDIEIAUiEDCwJAAkAgAC0ALkUNAEEBIQUgAC0AKUEFRg0BQQEhBSAEQcAAcUUgA3FBAUcNAQtBACEFIARBwABxDQBBAiEFIARB//8DcSIDQQhxDQACQCADQYAEcUUNAAJAIAAtAChBAUcNACAALQAtQQpxDQBBBQ8LQQQPCwJAIANBIHENAAJAIAAtAChBAUYNACAALwEyQf//A3EiAEGcf2pB5ABJDQAgAEHMAUYNACAAQbACRg0AQQQhBSAEQShxRQ0CIANBiARxQYAERg0CC0EADwtBAEEDIAApAyBQGyEFCyAFC2IBAn9BACEBAkAgAC0AKEEBRg0AIAAvATJB//8DcSICQZx/akHkAEkNACACQcwBRg0AIAJBsAJGDQAgAC8BMCIAQcAAcQ0AQQEhASAAQYgEcUGABEYNACAAQShxRSEBCyABC6cBAQN/AkACQAJAIAAtACpFDQAgAC0AK0UNAEEAIQMgAC8BMCIEQQJxRQ0BDAILQQAhAyAALwEwIgRBAXFFDQELQQEhAyAALQAoQQFGDQAgAC8BMkH//wNxIgVBnH9qQeQASQ0AIAVBzAFGDQAgBUGwAkYNACAEQcAAcQ0AQQAhAyAEQYgEcUGABEYNACAEQShxQQBHIQMLIABBADsBMCAAQQA6AC8gAwuZAQECfwJAAkACQCAALQAqRQ0AIAAtACtFDQBBACEBIAAvATAiAkECcUUNAQwCC0EAIQEgAC8BMCICQQFxRQ0BC0EBIQEgAC0AKEEBRg0AIAAvATJB//8DcSIAQZx/akHkAEkNACAAQcwBRg0AIABBsAJGDQAgAkHAAHENAEEAIQEgAkGIBHFBgARGDQAgAkEocUEARyEBCyABC0kBAXsgAEEQav0MAAAAAAAAAAAAAAAAAAAAACIB/QsDACAAIAH9CwMAIABBMGogAf0LAwAgAEEgaiAB/QsDACAAQd0BNgIcQQALewEBfwJAIAAoAgwiAw0AAkAgACgCBEUNACAAIAE2AgQLAkAgACABIAIQxICAgAAiAw0AIAAoAgwPCyAAIAM2AhxBACEDIAAoAgQiAUUNACAAIAEgAiAAKAIIEYGAgIAAACIBRQ0AIAAgAjYCFCAAIAE2AgwgASEDCyADC+TzAQMOfwN+BH8jgICAgABBEGsiAySAgICAACABIQQgASEFIAEhBiABIQcgASEIIAEhCSABIQogASELIAEhDCABIQ0gASEOIAEhDwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIcIhBBf2oO3QHaAQHZAQIDBAUGBwgJCgsMDQ7YAQ8Q1wEREtYBExQVFhcYGRob4AHfARwdHtUBHyAhIiMkJdQBJicoKSorLNMB0gEtLtEB0AEvMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUbbAUdISUrPAc4BS80BTMwBTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEBkgGTAZQBlQGWAZcBmAGZAZoBmwGcAZ0BngGfAaABoQGiAaMBpAGlAaYBpwGoAakBqgGrAawBrQGuAa8BsAGxAbIBswG0AbUBtgG3AcsBygG4AckBuQHIAboBuwG8Ab0BvgG/AcABwQHCAcMBxAHFAcYBANwBC0EAIRAMxgELQQ4hEAzFAQtBDSEQDMQBC0EPIRAMwwELQRAhEAzCAQtBEyEQDMEBC0EUIRAMwAELQRUhEAy/AQtBFiEQDL4BC0EXIRAMvQELQRghEAy8AQtBGSEQDLsBC0EaIRAMugELQRshEAy5AQtBHCEQDLgBC0EIIRAMtwELQR0hEAy2AQtBICEQDLUBC0EfIRAMtAELQQchEAyzAQtBISEQDLIBC0EiIRAMsQELQR4hEAywAQtBIyEQDK8BC0ESIRAMrgELQREhEAytAQtBJCEQDKwBC0ElIRAMqwELQSYhEAyqAQtBJyEQDKkBC0HDASEQDKgBC0EpIRAMpwELQSshEAymAQtBLCEQDKUBC0EtIRAMpAELQS4hEAyjAQtBLyEQDKIBC0HEASEQDKEBC0EwIRAMoAELQTQhEAyfAQtBDCEQDJ4BC0ExIRAMnQELQTIhEAycAQtBMyEQDJsBC0E5IRAMmgELQTUhEAyZAQtBxQEhEAyYAQtBCyEQDJcBC0E6IRAMlgELQTYhEAyVAQtBCiEQDJQBC0E3IRAMkwELQTghEAySAQtBPCEQDJEBC0E7IRAMkAELQT0hEAyPAQtBCSEQDI4BC0EoIRAMjQELQT4hEAyMAQtBPyEQDIsBC0HAACEQDIoBC0HBACEQDIkBC0HCACEQDIgBC0HDACEQDIcBC0HEACEQDIYBC0HFACEQDIUBC0HGACEQDIQBC0EqIRAMgwELQccAIRAMggELQcgAIRAMgQELQckAIRAMgAELQcoAIRAMfwtBywAhEAx+C0HNACEQDH0LQcwAIRAMfAtBzgAhEAx7C0HPACEQDHoLQdAAIRAMeQtB0QAhEAx4C0HSACEQDHcLQdMAIRAMdgtB1AAhEAx1C0HWACEQDHQLQdUAIRAMcwtBBiEQDHILQdcAIRAMcQtBBSEQDHALQdgAIRAMbwtBBCEQDG4LQdkAIRAMbQtB2gAhEAxsC0HbACEQDGsLQdwAIRAMagtBAyEQDGkLQd0AIRAMaAtB3gAhEAxnC0HfACEQDGYLQeEAIRAMZQtB4AAhEAxkC0HiACEQDGMLQeMAIRAMYgtBAiEQDGELQeQAIRAMYAtB5QAhEAxfC0HmACEQDF4LQecAIRAMXQtB6AAhEAxcC0HpACEQDFsLQeoAIRAMWgtB6wAhEAxZC0HsACEQDFgLQe0AIRAMVwtB7gAhEAxWC0HvACEQDFULQfAAIRAMVAtB8QAhEAxTC0HyACEQDFILQfMAIRAMUQtB9AAhEAxQC0H1ACEQDE8LQfYAIRAMTgtB9wAhEAxNC0H4ACEQDEwLQfkAIRAMSwtB+gAhEAxKC0H7ACEQDEkLQfwAIRAMSAtB/QAhEAxHC0H+ACEQDEYLQf8AIRAMRQtBgAEhEAxEC0GBASEQDEMLQYIBIRAMQgtBgwEhEAxBC0GEASEQDEALQYUBIRAMPwtBhgEhEAw+C0GHASEQDD0LQYgBIRAMPAtBiQEhEAw7C0GKASEQDDoLQYsBIRAMOQtBjAEhEAw4C0GNASEQDDcLQY4BIRAMNgtBjwEhEAw1C0GQASEQDDQLQZEBIRAMMwtBkgEhEAwyC0GTASEQDDELQZQBIRAMMAtBlQEhEAwvC0GWASEQDC4LQZcBIRAMLQtBmAEhEAwsC0GZASEQDCsLQZoBIRAMKgtBmwEhEAwpC0GcASEQDCgLQZ0BIRAMJwtBngEhEAwmC0GfASEQDCULQaABIRAMJAtBoQEhEAwjC0GiASEQDCILQaMBIRAMIQtBpAEhEAwgC0GlASEQDB8LQaYBIRAMHgtBpwEhEAwdC0GoASEQDBwLQakBIRAMGwtBqgEhEAwaC0GrASEQDBkLQawBIRAMGAtBrQEhEAwXC0GuASEQDBYLQQEhEAwVC0GvASEQDBQLQbABIRAMEwtBsQEhEAwSC0GzASEQDBELQbIBIRAMEAtBtAEhEAwPC0G1ASEQDA4LQbYBIRAMDQtBtwEhEAwMC0G4ASEQDAsLQbkBIRAMCgtBugEhEAwJC0G7ASEQDAgLQcYBIRAMBwtBvAEhEAwGC0G9ASEQDAULQb4BIRAMBAtBvwEhEAwDC0HAASEQDAILQcIBIRAMAQtBwQEhEAsDQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAOxwEAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB4fICEjJSg/QEFERUZHSElKS0xNT1BRUlPeA1dZW1xdYGJlZmdoaWprbG1vcHFyc3R1dnd4eXp7fH1+gAGCAYUBhgGHAYkBiwGMAY0BjgGPAZABkQGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4BnwGgAaEBogGjAaQBpQGmAacBqAGpAaoBqwGsAa0BrgGvAbABsQGyAbMBtAG1AbYBtwG4AbkBugG7AbwBvQG+Ab8BwAHBAcIBwwHEAcUBxgHHAcgByQHKAcsBzAHNAc4BzwHQAdEB0gHTAdQB1QHWAdcB2AHZAdoB2wHcAd0B3gHgAeEB4gHjAeQB5QHmAecB6AHpAeoB6wHsAe0B7gHvAfAB8QHyAfMBmQKkArAC/gL+AgsgASIEIAJHDfMBQd0BIRAM/wMLIAEiECACRw3dAUHDASEQDP4DCyABIgEgAkcNkAFB9wAhEAz9AwsgASIBIAJHDYYBQe8AIRAM/AMLIAEiASACRw1/QeoAIRAM+wMLIAEiASACRw17QegAIRAM+gMLIAEiASACRw14QeYAIRAM+QMLIAEiASACRw0aQRghEAz4AwsgASIBIAJHDRRBEiEQDPcDCyABIgEgAkcNWUHFACEQDPYDCyABIgEgAkcNSkE/IRAM9QMLIAEiASACRw1IQTwhEAz0AwsgASIBIAJHDUFBMSEQDPMDCyAALQAuQQFGDesDDIcCCyAAIAEiASACEMCAgIAAQQFHDeYBIABCADcDIAznAQsgACABIgEgAhC0gICAACIQDecBIAEhAQz1AgsCQCABIgEgAkcNAEEGIRAM8AMLIAAgAUEBaiIBIAIQu4CAgAAiEA3oASABIQEMMQsgAEIANwMgQRIhEAzVAwsgASIQIAJHDStBHSEQDO0DCwJAIAEiASACRg0AIAFBAWohAUEQIRAM1AMLQQchEAzsAwsgAEIAIAApAyAiESACIAEiEGutIhJ9IhMgEyARVhs3AyAgESASViIURQ3lAUEIIRAM6wMLAkAgASIBIAJGDQAgAEGJgICAADYCCCAAIAE2AgQgASEBQRQhEAzSAwtBCSEQDOoDCyABIQEgACkDIFAN5AEgASEBDPICCwJAIAEiASACRw0AQQshEAzpAwsgACABQQFqIgEgAhC2gICAACIQDeUBIAEhAQzyAgsgACABIgEgAhC4gICAACIQDeUBIAEhAQzyAgsgACABIgEgAhC4gICAACIQDeYBIAEhAQwNCyAAIAEiASACELqAgIAAIhAN5wEgASEBDPACCwJAIAEiASACRw0AQQ8hEAzlAwsgAS0AACIQQTtGDQggEEENRw3oASABQQFqIQEM7wILIAAgASIBIAIQuoCAgAAiEA3oASABIQEM8gILA0ACQCABLQAAQfC1gIAAai0AACIQQQFGDQAgEEECRw3rASAAKAIEIRAgAEEANgIEIAAgECABQQFqIgEQuYCAgAAiEA3qASABIQEM9AILIAFBAWoiASACRw0AC0ESIRAM4gMLIAAgASIBIAIQuoCAgAAiEA3pASABIQEMCgsgASIBIAJHDQZBGyEQDOADCwJAIAEiASACRw0AQRYhEAzgAwsgAEGKgICAADYCCCAAIAE2AgQgACABIAIQuICAgAAiEA3qASABIQFBICEQDMYDCwJAIAEiASACRg0AA0ACQCABLQAAQfC3gIAAai0AACIQQQJGDQACQCAQQX9qDgTlAewBAOsB7AELIAFBAWohAUEIIRAMyAMLIAFBAWoiASACRw0AC0EVIRAM3wMLQRUhEAzeAwsDQAJAIAEtAABB8LmAgABqLQAAIhBBAkYNACAQQX9qDgTeAewB4AHrAewBCyABQQFqIgEgAkcNAAtBGCEQDN0DCwJAIAEiASACRg0AIABBi4CAgAA2AgggACABNgIEIAEhAUEHIRAMxAMLQRkhEAzcAwsgAUEBaiEBDAILAkAgASIUIAJHDQBBGiEQDNsDCyAUIQECQCAULQAAQXNqDhTdAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gLuAu4C7gLuAgDuAgtBACEQIABBADYCHCAAQa+LgIAANgIQIABBAjYCDCAAIBRBAWo2AhQM2gMLAkAgAS0AACIQQTtGDQAgEEENRw3oASABQQFqIQEM5QILIAFBAWohAQtBIiEQDL8DCwJAIAEiECACRw0AQRwhEAzYAwtCACERIBAhASAQLQAAQVBqDjfnAeYBAQIDBAUGBwgAAAAAAAAACQoLDA0OAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPEBESExQAC0EeIRAMvQMLQgIhEQzlAQtCAyERDOQBC0IEIREM4wELQgUhEQziAQtCBiERDOEBC0IHIREM4AELQgghEQzfAQtCCSERDN4BC0IKIREM3QELQgshEQzcAQtCDCERDNsBC0INIREM2gELQg4hEQzZAQtCDyERDNgBC0IKIREM1wELQgshEQzWAQtCDCERDNUBC0INIREM1AELQg4hEQzTAQtCDyERDNIBC0IAIRECQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAtAABBUGoON+UB5AEAAQIDBAUGB+YB5gHmAeYB5gHmAeYBCAkKCwwN5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAeYB5gHmAQ4PEBESE+YBC0ICIREM5AELQgMhEQzjAQtCBCERDOIBC0IFIREM4QELQgYhEQzgAQtCByERDN8BC0IIIREM3gELQgkhEQzdAQtCCiERDNwBC0ILIREM2wELQgwhEQzaAQtCDSERDNkBC0IOIREM2AELQg8hEQzXAQtCCiERDNYBC0ILIREM1QELQgwhEQzUAQtCDSERDNMBC0IOIREM0gELQg8hEQzRAQsgAEIAIAApAyAiESACIAEiEGutIhJ9IhMgEyARVhs3AyAgESASViIURQ3SAUEfIRAMwAMLAkAgASIBIAJGDQAgAEGJgICAADYCCCAAIAE2AgQgASEBQSQhEAynAwtBICEQDL8DCyAAIAEiECACEL6AgIAAQX9qDgW2AQDFAgHRAdIBC0ERIRAMpAMLIABBAToALyAQIQEMuwMLIAEiASACRw3SAUEkIRAMuwMLIAEiDSACRw0eQcYAIRAMugMLIAAgASIBIAIQsoCAgAAiEA3UASABIQEMtQELIAEiECACRw0mQdAAIRAMuAMLAkAgASIBIAJHDQBBKCEQDLgDCyAAQQA2AgQgAEGMgICAADYCCCAAIAEgARCxgICAACIQDdMBIAEhAQzYAQsCQCABIhAgAkcNAEEpIRAMtwMLIBAtAAAiAUEgRg0UIAFBCUcN0wEgEEEBaiEBDBULAkAgASIBIAJGDQAgAUEBaiEBDBcLQSohEAy1AwsCQCABIhAgAkcNAEErIRAMtQMLAkAgEC0AACIBQQlGDQAgAUEgRw3VAQsgAC0ALEEIRg3TASAQIQEMkQMLAkAgASIBIAJHDQBBLCEQDLQDCyABLQAAQQpHDdUBIAFBAWohAQzJAgsgASIOIAJHDdUBQS8hEAyyAwsDQAJAIAEtAAAiEEEgRg0AAkAgEEF2ag4EANwB3AEA2gELIAEhAQzgAQsgAUEBaiIBIAJHDQALQTEhEAyxAwtBMiEQIAEiFCACRg2wAyACIBRrIAAoAgAiAWohFSAUIAFrQQNqIRYCQANAIBQtAAAiF0EgciAXIBdBv39qQf8BcUEaSRtB/wFxIAFB8LuAgABqLQAARw0BAkAgAUEDRw0AQQYhAQyWAwsgAUEBaiEBIBRBAWoiFCACRw0ACyAAIBU2AgAMsQMLIABBADYCACAUIQEM2QELQTMhECABIhQgAkYNrwMgAiAUayAAKAIAIgFqIRUgFCABa0EIaiEWAkADQCAULQAAIhdBIHIgFyAXQb9/akH/AXFBGkkbQf8BcSABQfS7gIAAai0AAEcNAQJAIAFBCEcNAEEFIQEMlQMLIAFBAWohASAUQQFqIhQgAkcNAAsgACAVNgIADLADCyAAQQA2AgAgFCEBDNgBC0E0IRAgASIUIAJGDa4DIAIgFGsgACgCACIBaiEVIBQgAWtBBWohFgJAA0AgFC0AACIXQSByIBcgF0G/f2pB/wFxQRpJG0H/AXEgAUHQwoCAAGotAABHDQECQCABQQVHDQBBByEBDJQDCyABQQFqIQEgFEEBaiIUIAJHDQALIAAgFTYCAAyvAwsgAEEANgIAIBQhAQzXAQsCQCABIgEgAkYNAANAAkAgAS0AAEGAvoCAAGotAAAiEEEBRg0AIBBBAkYNCiABIQEM3QELIAFBAWoiASACRw0AC0EwIRAMrgMLQTAhEAytAwsCQCABIgEgAkYNAANAAkAgAS0AACIQQSBGDQAgEEF2ag4E2QHaAdoB2QHaAQsgAUEBaiIBIAJHDQALQTghEAytAwtBOCEQDKwDCwNAAkAgAS0AACIQQSBGDQAgEEEJRw0DCyABQQFqIgEgAkcNAAtBPCEQDKsDCwNAAkAgAS0AACIQQSBGDQACQAJAIBBBdmoOBNoBAQHaAQALIBBBLEYN2wELIAEhAQwECyABQQFqIgEgAkcNAAtBPyEQDKoDCyABIQEM2wELQcAAIRAgASIUIAJGDagDIAIgFGsgACgCACIBaiEWIBQgAWtBBmohFwJAA0AgFC0AAEEgciABQYDAgIAAai0AAEcNASABQQZGDY4DIAFBAWohASAUQQFqIhQgAkcNAAsgACAWNgIADKkDCyAAQQA2AgAgFCEBC0E2IRAMjgMLAkAgASIPIAJHDQBBwQAhEAynAwsgAEGMgICAADYCCCAAIA82AgQgDyEBIAAtACxBf2oOBM0B1QHXAdkBhwMLIAFBAWohAQzMAQsCQCABIgEgAkYNAANAAkAgAS0AACIQQSByIBAgEEG/f2pB/wFxQRpJG0H/AXEiEEEJRg0AIBBBIEYNAAJAAkACQAJAIBBBnX9qDhMAAwMDAwMDAwEDAwMDAwMDAwMCAwsgAUEBaiEBQTEhEAyRAwsgAUEBaiEBQTIhEAyQAwsgAUEBaiEBQTMhEAyPAwsgASEBDNABCyABQQFqIgEgAkcNAAtBNSEQDKUDC0E1IRAMpAMLAkAgASIBIAJGDQADQAJAIAEtAABBgLyAgABqLQAAQQFGDQAgASEBDNMBCyABQQFqIgEgAkcNAAtBPSEQDKQDC0E9IRAMowMLIAAgASIBIAIQsICAgAAiEA3WASABIQEMAQsgEEEBaiEBC0E8IRAMhwMLAkAgASIBIAJHDQBBwgAhEAygAwsCQANAAkAgAS0AAEF3ag4YAAL+Av4ChAP+Av4C/gL+Av4C/gL+Av4C/gL+Av4C/gL+Av4C/gL+Av4C/gIA/gILIAFBAWoiASACRw0AC0HCACEQDKADCyABQQFqIQEgAC0ALUEBcUUNvQEgASEBC0EsIRAMhQMLIAEiASACRw3TAUHEACEQDJ0DCwNAAkAgAS0AAEGQwICAAGotAABBAUYNACABIQEMtwILIAFBAWoiASACRw0AC0HFACEQDJwDCyANLQAAIhBBIEYNswEgEEE6Rw2BAyAAKAIEIQEgAEEANgIEIAAgASANEK+AgIAAIgEN0AEgDUEBaiEBDLMCC0HHACEQIAEiDSACRg2aAyACIA1rIAAoAgAiAWohFiANIAFrQQVqIRcDQCANLQAAIhRBIHIgFCAUQb9/akH/AXFBGkkbQf8BcSABQZDCgIAAai0AAEcNgAMgAUEFRg30AiABQQFqIQEgDUEBaiINIAJHDQALIAAgFjYCAAyaAwtByAAhECABIg0gAkYNmQMgAiANayAAKAIAIgFqIRYgDSABa0EJaiEXA0AgDS0AACIUQSByIBQgFEG/f2pB/wFxQRpJG0H/AXEgAUGWwoCAAGotAABHDf8CAkAgAUEJRw0AQQIhAQz1AgsgAUEBaiEBIA1BAWoiDSACRw0ACyAAIBY2AgAMmQMLAkAgASINIAJHDQBByQAhEAyZAwsCQAJAIA0tAAAiAUEgciABIAFBv39qQf8BcUEaSRtB/wFxQZJ/ag4HAIADgAOAA4ADgAMBgAMLIA1BAWohAUE+IRAMgAMLIA1BAWohAUE/IRAM/wILQcoAIRAgASINIAJGDZcDIAIgDWsgACgCACIBaiEWIA0gAWtBAWohFwNAIA0tAAAiFEEgciAUIBRBv39qQf8BcUEaSRtB/wFxIAFBoMKAgABqLQAARw39AiABQQFGDfACIAFBAWohASANQQFqIg0gAkcNAAsgACAWNgIADJcDC0HLACEQIAEiDSACRg2WAyACIA1rIAAoAgAiAWohFiANIAFrQQ5qIRcDQCANLQAAIhRBIHIgFCAUQb9/akH/AXFBGkkbQf8BcSABQaLCgIAAai0AAEcN/AIgAUEORg3wAiABQQFqIQEgDUEBaiINIAJHDQALIAAgFjYCAAyWAwtBzAAhECABIg0gAkYNlQMgAiANayAAKAIAIgFqIRYgDSABa0EPaiEXA0AgDS0AACIUQSByIBQgFEG/f2pB/wFxQRpJG0H/AXEgAUHAwoCAAGotAABHDfsCAkAgAUEPRw0AQQMhAQzxAgsgAUEBaiEBIA1BAWoiDSACRw0ACyAAIBY2AgAMlQMLQc0AIRAgASINIAJGDZQDIAIgDWsgACgCACIBaiEWIA0gAWtBBWohFwNAIA0tAAAiFEEgciAUIBRBv39qQf8BcUEaSRtB/wFxIAFB0MKAgABqLQAARw36AgJAIAFBBUcNAEEEIQEM8AILIAFBAWohASANQQFqIg0gAkcNAAsgACAWNgIADJQDCwJAIAEiDSACRw0AQc4AIRAMlAMLAkACQAJAAkAgDS0AACIBQSByIAEgAUG/f2pB/wFxQRpJG0H/AXFBnX9qDhMA/QL9Av0C/QL9Av0C/QL9Av0C/QL9Av0CAf0C/QL9AgID/QILIA1BAWohAUHBACEQDP0CCyANQQFqIQFBwgAhEAz8AgsgDUEBaiEBQcMAIRAM+wILIA1BAWohAUHEACEQDPoCCwJAIAEiASACRg0AIABBjYCAgAA2AgggACABNgIEIAEhAUHFACEQDPoCC0HPACEQDJIDCyAQIQECQAJAIBAtAABBdmoOBAGoAqgCAKgCCyAQQQFqIQELQSchEAz4AgsCQCABIgEgAkcNAEHRACEQDJEDCwJAIAEtAABBIEYNACABIQEMjQELIAFBAWohASAALQAtQQFxRQ3HASABIQEMjAELIAEiFyACRw3IAUHSACEQDI8DC0HTACEQIAEiFCACRg2OAyACIBRrIAAoAgAiAWohFiAUIAFrQQFqIRcDQCAULQAAIAFB1sKAgABqLQAARw3MASABQQFGDccBIAFBAWohASAUQQFqIhQgAkcNAAsgACAWNgIADI4DCwJAIAEiASACRw0AQdUAIRAMjgMLIAEtAABBCkcNzAEgAUEBaiEBDMcBCwJAIAEiASACRw0AQdYAIRAMjQMLAkACQCABLQAAQXZqDgQAzQHNAQHNAQsgAUEBaiEBDMcBCyABQQFqIQFBygAhEAzzAgsgACABIgEgAhCugICAACIQDcsBIAEhAUHNACEQDPICCyAALQApQSJGDYUDDKYCCwJAIAEiASACRw0AQdsAIRAMigMLQQAhFEEBIRdBASEWQQAhEAJAAkACQAJAAkACQAJAAkACQCABLQAAQVBqDgrUAdMBAAECAwQFBgjVAQtBAiEQDAYLQQMhEAwFC0EEIRAMBAtBBSEQDAMLQQYhEAwCC0EHIRAMAQtBCCEQC0EAIRdBACEWQQAhFAzMAQtBCSEQQQEhFEEAIRdBACEWDMsBCwJAIAEiASACRw0AQd0AIRAMiQMLIAEtAABBLkcNzAEgAUEBaiEBDKYCCyABIgEgAkcNzAFB3wAhEAyHAwsCQCABIgEgAkYNACAAQY6AgIAANgIIIAAgATYCBCABIQFB0AAhEAzuAgtB4AAhEAyGAwtB4QAhECABIgEgAkYNhQMgAiABayAAKAIAIhRqIRYgASAUa0EDaiEXA0AgAS0AACAUQeLCgIAAai0AAEcNzQEgFEEDRg3MASAUQQFqIRQgAUEBaiIBIAJHDQALIAAgFjYCAAyFAwtB4gAhECABIgEgAkYNhAMgAiABayAAKAIAIhRqIRYgASAUa0ECaiEXA0AgAS0AACAUQebCgIAAai0AAEcNzAEgFEECRg3OASAUQQFqIRQgAUEBaiIBIAJHDQALIAAgFjYCAAyEAwtB4wAhECABIgEgAkYNgwMgAiABayAAKAIAIhRqIRYgASAUa0EDaiEXA0AgAS0AACAUQenCgIAAai0AAEcNywEgFEEDRg3OASAUQQFqIRQgAUEBaiIBIAJHDQALIAAgFjYCAAyDAwsCQCABIgEgAkcNAEHlACEQDIMDCyAAIAFBAWoiASACEKiAgIAAIhANzQEgASEBQdYAIRAM6QILAkAgASIBIAJGDQADQAJAIAEtAAAiEEEgRg0AAkACQAJAIBBBuH9qDgsAAc8BzwHPAc8BzwHPAc8BzwECzwELIAFBAWohAUHSACEQDO0CCyABQQFqIQFB0wAhEAzsAgsgAUEBaiEBQdQAIRAM6wILIAFBAWoiASACRw0AC0HkACEQDIIDC0HkACEQDIEDCwNAAkAgAS0AAEHwwoCAAGotAAAiEEEBRg0AIBBBfmoOA88B0AHRAdIBCyABQQFqIgEgAkcNAAtB5gAhEAyAAwsCQCABIgEgAkYNACABQQFqIQEMAwtB5wAhEAz/AgsDQAJAIAEtAABB8MSAgABqLQAAIhBBAUYNAAJAIBBBfmoOBNIB0wHUAQDVAQsgASEBQdcAIRAM5wILIAFBAWoiASACRw0AC0HoACEQDP4CCwJAIAEiASACRw0AQekAIRAM/gILAkAgAS0AACIQQXZqDhq6AdUB1QG8AdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHVAdUB1QHVAcoB1QHVAQDTAQsgAUEBaiEBC0EGIRAM4wILA0ACQCABLQAAQfDGgIAAai0AAEEBRg0AIAEhAQyeAgsgAUEBaiIBIAJHDQALQeoAIRAM+wILAkAgASIBIAJGDQAgAUEBaiEBDAMLQesAIRAM+gILAkAgASIBIAJHDQBB7AAhEAz6AgsgAUEBaiEBDAELAkAgASIBIAJHDQBB7QAhEAz5AgsgAUEBaiEBC0EEIRAM3gILAkAgASIUIAJHDQBB7gAhEAz3AgsgFCEBAkACQAJAIBQtAABB8MiAgABqLQAAQX9qDgfUAdUB1gEAnAIBAtcBCyAUQQFqIQEMCgsgFEEBaiEBDM0BC0EAIRAgAEEANgIcIABBm5KAgAA2AhAgAEEHNgIMIAAgFEEBajYCFAz2AgsCQANAAkAgAS0AAEHwyICAAGotAAAiEEEERg0AAkACQCAQQX9qDgfSAdMB1AHZAQAEAdkBCyABIQFB2gAhEAzgAgsgAUEBaiEBQdwAIRAM3wILIAFBAWoiASACRw0AC0HvACEQDPYCCyABQQFqIQEMywELAkAgASIUIAJHDQBB8AAhEAz1AgsgFC0AAEEvRw3UASAUQQFqIQEMBgsCQCABIhQgAkcNAEHxACEQDPQCCwJAIBQtAAAiAUEvRw0AIBRBAWohAUHdACEQDNsCCyABQXZqIgRBFksN0wFBASAEdEGJgIACcUUN0wEMygILAkAgASIBIAJGDQAgAUEBaiEBQd4AIRAM2gILQfIAIRAM8gILAkAgASIUIAJHDQBB9AAhEAzyAgsgFCEBAkAgFC0AAEHwzICAAGotAABBf2oOA8kClAIA1AELQeEAIRAM2AILAkAgASIUIAJGDQADQAJAIBQtAABB8MqAgABqLQAAIgFBA0YNAAJAIAFBf2oOAssCANUBCyAUIQFB3wAhEAzaAgsgFEEBaiIUIAJHDQALQfMAIRAM8QILQfMAIRAM8AILAkAgASIBIAJGDQAgAEGPgICAADYCCCAAIAE2AgQgASEBQeAAIRAM1wILQfUAIRAM7wILAkAgASIBIAJHDQBB9gAhEAzvAgsgAEGPgICAADYCCCAAIAE2AgQgASEBC0EDIRAM1AILA0AgAS0AAEEgRw3DAiABQQFqIgEgAkcNAAtB9wAhEAzsAgsCQCABIgEgAkcNAEH4ACEQDOwCCyABLQAAQSBHDc4BIAFBAWohAQzvAQsgACABIgEgAhCsgICAACIQDc4BIAEhAQyOAgsCQCABIgQgAkcNAEH6ACEQDOoCCyAELQAAQcwARw3RASAEQQFqIQFBEyEQDM8BCwJAIAEiBCACRw0AQfsAIRAM6QILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEANAIAQtAAAgAUHwzoCAAGotAABHDdABIAFBBUYNzgEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBB+wAhEAzoAgsCQCABIgQgAkcNAEH8ACEQDOgCCwJAAkAgBC0AAEG9f2oODADRAdEB0QHRAdEB0QHRAdEB0QHRAQHRAQsgBEEBaiEBQeYAIRAMzwILIARBAWohAUHnACEQDM4CCwJAIAEiBCACRw0AQf0AIRAM5wILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQe3PgIAAai0AAEcNzwEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQf0AIRAM5wILIABBADYCACAQQQFqIQFBECEQDMwBCwJAIAEiBCACRw0AQf4AIRAM5gILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEAJAA0AgBC0AACABQfbOgIAAai0AAEcNzgEgAUEFRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQf4AIRAM5gILIABBADYCACAQQQFqIQFBFiEQDMsBCwJAIAEiBCACRw0AQf8AIRAM5QILIAIgBGsgACgCACIBaiEUIAQgAWtBA2ohEAJAA0AgBC0AACABQfzOgIAAai0AAEcNzQEgAUEDRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQf8AIRAM5QILIABBADYCACAQQQFqIQFBBSEQDMoBCwJAIAEiBCACRw0AQYABIRAM5AILIAQtAABB2QBHDcsBIARBAWohAUEIIRAMyQELAkAgASIEIAJHDQBBgQEhEAzjAgsCQAJAIAQtAABBsn9qDgMAzAEBzAELIARBAWohAUHrACEQDMoCCyAEQQFqIQFB7AAhEAzJAgsCQCABIgQgAkcNAEGCASEQDOICCwJAAkAgBC0AAEG4f2oOCADLAcsBywHLAcsBywEBywELIARBAWohAUHqACEQDMkCCyAEQQFqIQFB7QAhEAzIAgsCQCABIgQgAkcNAEGDASEQDOECCyACIARrIAAoAgAiAWohECAEIAFrQQJqIRQCQANAIAQtAAAgAUGAz4CAAGotAABHDckBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgEDYCAEGDASEQDOECC0EAIRAgAEEANgIAIBRBAWohAQzGAQsCQCABIgQgAkcNAEGEASEQDOACCyACIARrIAAoAgAiAWohFCAEIAFrQQRqIRACQANAIAQtAAAgAUGDz4CAAGotAABHDcgBIAFBBEYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGEASEQDOACCyAAQQA2AgAgEEEBaiEBQSMhEAzFAQsCQCABIgQgAkcNAEGFASEQDN8CCwJAAkAgBC0AAEG0f2oOCADIAcgByAHIAcgByAEByAELIARBAWohAUHvACEQDMYCCyAEQQFqIQFB8AAhEAzFAgsCQCABIgQgAkcNAEGGASEQDN4CCyAELQAAQcUARw3FASAEQQFqIQEMgwILAkAgASIEIAJHDQBBhwEhEAzdAgsgAiAEayAAKAIAIgFqIRQgBCABa0EDaiEQAkADQCAELQAAIAFBiM+AgABqLQAARw3FASABQQNGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBhwEhEAzdAgsgAEEANgIAIBBBAWohAUEtIRAMwgELAkAgASIEIAJHDQBBiAEhEAzcAgsgAiAEayAAKAIAIgFqIRQgBCABa0EIaiEQAkADQCAELQAAIAFB0M+AgABqLQAARw3EASABQQhGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBiAEhEAzcAgsgAEEANgIAIBBBAWohAUEpIRAMwQELAkAgASIBIAJHDQBBiQEhEAzbAgtBASEQIAEtAABB3wBHDcABIAFBAWohAQyBAgsCQCABIgQgAkcNAEGKASEQDNoCCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRADQCAELQAAIAFBjM+AgABqLQAARw3BASABQQFGDa8CIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQYoBIRAM2QILAkAgASIEIAJHDQBBiwEhEAzZAgsgAiAEayAAKAIAIgFqIRQgBCABa0ECaiEQAkADQCAELQAAIAFBjs+AgABqLQAARw3BASABQQJGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBiwEhEAzZAgsgAEEANgIAIBBBAWohAUECIRAMvgELAkAgASIEIAJHDQBBjAEhEAzYAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFB8M+AgABqLQAARw3AASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBjAEhEAzYAgsgAEEANgIAIBBBAWohAUEfIRAMvQELAkAgASIEIAJHDQBBjQEhEAzXAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFB8s+AgABqLQAARw2/ASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBjQEhEAzXAgsgAEEANgIAIBBBAWohAUEJIRAMvAELAkAgASIEIAJHDQBBjgEhEAzWAgsCQAJAIAQtAABBt39qDgcAvwG/Ab8BvwG/AQG/AQsgBEEBaiEBQfgAIRAMvQILIARBAWohAUH5ACEQDLwCCwJAIAEiBCACRw0AQY8BIRAM1QILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEAJAA0AgBC0AACABQZHPgIAAai0AAEcNvQEgAUEFRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQY8BIRAM1QILIABBADYCACAQQQFqIQFBGCEQDLoBCwJAIAEiBCACRw0AQZABIRAM1AILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQZfPgIAAai0AAEcNvAEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZABIRAM1AILIABBADYCACAQQQFqIQFBFyEQDLkBCwJAIAEiBCACRw0AQZEBIRAM0wILIAIgBGsgACgCACIBaiEUIAQgAWtBBmohEAJAA0AgBC0AACABQZrPgIAAai0AAEcNuwEgAUEGRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZEBIRAM0wILIABBADYCACAQQQFqIQFBFSEQDLgBCwJAIAEiBCACRw0AQZIBIRAM0gILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEAJAA0AgBC0AACABQaHPgIAAai0AAEcNugEgAUEFRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZIBIRAM0gILIABBADYCACAQQQFqIQFBHiEQDLcBCwJAIAEiBCACRw0AQZMBIRAM0QILIAQtAABBzABHDbgBIARBAWohAUEKIRAMtgELAkAgBCACRw0AQZQBIRAM0AILAkACQCAELQAAQb9/ag4PALkBuQG5AbkBuQG5AbkBuQG5AbkBuQG5AbkBAbkBCyAEQQFqIQFB/gAhEAy3AgsgBEEBaiEBQf8AIRAMtgILAkAgBCACRw0AQZUBIRAMzwILAkACQCAELQAAQb9/ag4DALgBAbgBCyAEQQFqIQFB/QAhEAy2AgsgBEEBaiEEQYABIRAMtQILAkAgBCACRw0AQZYBIRAMzgILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQafPgIAAai0AAEcNtgEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZYBIRAMzgILIABBADYCACAQQQFqIQFBCyEQDLMBCwJAIAQgAkcNAEGXASEQDM0CCwJAAkACQAJAIAQtAABBU2oOIwC4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBuAG4AbgBAbgBuAG4AbgBuAECuAG4AbgBA7gBCyAEQQFqIQFB+wAhEAy2AgsgBEEBaiEBQfwAIRAMtQILIARBAWohBEGBASEQDLQCCyAEQQFqIQRBggEhEAyzAgsCQCAEIAJHDQBBmAEhEAzMAgsgAiAEayAAKAIAIgFqIRQgBCABa0EEaiEQAkADQCAELQAAIAFBqc+AgABqLQAARw20ASABQQRGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBmAEhEAzMAgsgAEEANgIAIBBBAWohAUEZIRAMsQELAkAgBCACRw0AQZkBIRAMywILIAIgBGsgACgCACIBaiEUIAQgAWtBBWohEAJAA0AgBC0AACABQa7PgIAAai0AAEcNswEgAUEFRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZkBIRAMywILIABBADYCACAQQQFqIQFBBiEQDLABCwJAIAQgAkcNAEGaASEQDMoCCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRACQANAIAQtAAAgAUG0z4CAAGotAABHDbIBIAFBAUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGaASEQDMoCCyAAQQA2AgAgEEEBaiEBQRwhEAyvAQsCQCAEIAJHDQBBmwEhEAzJAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFBts+AgABqLQAARw2xASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBmwEhEAzJAgsgAEEANgIAIBBBAWohAUEnIRAMrgELAkAgBCACRw0AQZwBIRAMyAILAkACQCAELQAAQax/ag4CAAGxAQsgBEEBaiEEQYYBIRAMrwILIARBAWohBEGHASEQDK4CCwJAIAQgAkcNAEGdASEQDMcCCyACIARrIAAoAgAiAWohFCAEIAFrQQFqIRACQANAIAQtAAAgAUG4z4CAAGotAABHDa8BIAFBAUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGdASEQDMcCCyAAQQA2AgAgEEEBaiEBQSYhEAysAQsCQCAEIAJHDQBBngEhEAzGAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFBus+AgABqLQAARw2uASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBngEhEAzGAgsgAEEANgIAIBBBAWohAUEDIRAMqwELAkAgBCACRw0AQZ8BIRAMxQILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQe3PgIAAai0AAEcNrQEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQZ8BIRAMxQILIABBADYCACAQQQFqIQFBDCEQDKoBCwJAIAQgAkcNAEGgASEQDMQCCyACIARrIAAoAgAiAWohFCAEIAFrQQNqIRACQANAIAQtAAAgAUG8z4CAAGotAABHDawBIAFBA0YNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGgASEQDMQCCyAAQQA2AgAgEEEBaiEBQQ0hEAypAQsCQCAEIAJHDQBBoQEhEAzDAgsCQAJAIAQtAABBun9qDgsArAGsAawBrAGsAawBrAGsAawBAawBCyAEQQFqIQRBiwEhEAyqAgsgBEEBaiEEQYwBIRAMqQILAkAgBCACRw0AQaIBIRAMwgILIAQtAABB0ABHDakBIARBAWohBAzpAQsCQCAEIAJHDQBBowEhEAzBAgsCQAJAIAQtAABBt39qDgcBqgGqAaoBqgGqAQCqAQsgBEEBaiEEQY4BIRAMqAILIARBAWohAUEiIRAMpgELAkAgBCACRw0AQaQBIRAMwAILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQcDPgIAAai0AAEcNqAEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQaQBIRAMwAILIABBADYCACAQQQFqIQFBHSEQDKUBCwJAIAQgAkcNAEGlASEQDL8CCwJAAkAgBC0AAEGuf2oOAwCoAQGoAQsgBEEBaiEEQZABIRAMpgILIARBAWohAUEEIRAMpAELAkAgBCACRw0AQaYBIRAMvgILAkACQAJAAkACQCAELQAAQb9/ag4VAKoBqgGqAaoBqgGqAaoBqgGqAaoBAaoBqgECqgGqAQOqAaoBBKoBCyAEQQFqIQRBiAEhEAyoAgsgBEEBaiEEQYkBIRAMpwILIARBAWohBEGKASEQDKYCCyAEQQFqIQRBjwEhEAylAgsgBEEBaiEEQZEBIRAMpAILAkAgBCACRw0AQacBIRAMvQILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQe3PgIAAai0AAEcNpQEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQacBIRAMvQILIABBADYCACAQQQFqIQFBESEQDKIBCwJAIAQgAkcNAEGoASEQDLwCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHCz4CAAGotAABHDaQBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGoASEQDLwCCyAAQQA2AgAgEEEBaiEBQSwhEAyhAQsCQCAEIAJHDQBBqQEhEAy7AgsgAiAEayAAKAIAIgFqIRQgBCABa0EEaiEQAkADQCAELQAAIAFBxc+AgABqLQAARw2jASABQQRGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBqQEhEAy7AgsgAEEANgIAIBBBAWohAUErIRAMoAELAkAgBCACRw0AQaoBIRAMugILIAIgBGsgACgCACIBaiEUIAQgAWtBAmohEAJAA0AgBC0AACABQcrPgIAAai0AAEcNogEgAUECRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQaoBIRAMugILIABBADYCACAQQQFqIQFBFCEQDJ8BCwJAIAQgAkcNAEGrASEQDLkCCwJAAkACQAJAIAQtAABBvn9qDg8AAQKkAaQBpAGkAaQBpAGkAaQBpAGkAaQBA6QBCyAEQQFqIQRBkwEhEAyiAgsgBEEBaiEEQZQBIRAMoQILIARBAWohBEGVASEQDKACCyAEQQFqIQRBlgEhEAyfAgsCQCAEIAJHDQBBrAEhEAy4AgsgBC0AAEHFAEcNnwEgBEEBaiEEDOABCwJAIAQgAkcNAEGtASEQDLcCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHNz4CAAGotAABHDZ8BIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEGtASEQDLcCCyAAQQA2AgAgEEEBaiEBQQ4hEAycAQsCQCAEIAJHDQBBrgEhEAy2AgsgBC0AAEHQAEcNnQEgBEEBaiEBQSUhEAybAQsCQCAEIAJHDQBBrwEhEAy1AgsgAiAEayAAKAIAIgFqIRQgBCABa0EIaiEQAkADQCAELQAAIAFB0M+AgABqLQAARw2dASABQQhGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBrwEhEAy1AgsgAEEANgIAIBBBAWohAUEqIRAMmgELAkAgBCACRw0AQbABIRAMtAILAkACQCAELQAAQat/ag4LAJ0BnQGdAZ0BnQGdAZ0BnQGdAQGdAQsgBEEBaiEEQZoBIRAMmwILIARBAWohBEGbASEQDJoCCwJAIAQgAkcNAEGxASEQDLMCCwJAAkAgBC0AAEG/f2oOFACcAZwBnAGcAZwBnAGcAZwBnAGcAZwBnAGcAZwBnAGcAZwBnAEBnAELIARBAWohBEGZASEQDJoCCyAEQQFqIQRBnAEhEAyZAgsCQCAEIAJHDQBBsgEhEAyyAgsgAiAEayAAKAIAIgFqIRQgBCABa0EDaiEQAkADQCAELQAAIAFB2c+AgABqLQAARw2aASABQQNGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBsgEhEAyyAgsgAEEANgIAIBBBAWohAUEhIRAMlwELAkAgBCACRw0AQbMBIRAMsQILIAIgBGsgACgCACIBaiEUIAQgAWtBBmohEAJAA0AgBC0AACABQd3PgIAAai0AAEcNmQEgAUEGRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQbMBIRAMsQILIABBADYCACAQQQFqIQFBGiEQDJYBCwJAIAQgAkcNAEG0ASEQDLACCwJAAkACQCAELQAAQbt/ag4RAJoBmgGaAZoBmgGaAZoBmgGaAQGaAZoBmgGaAZoBApoBCyAEQQFqIQRBnQEhEAyYAgsgBEEBaiEEQZ4BIRAMlwILIARBAWohBEGfASEQDJYCCwJAIAQgAkcNAEG1ASEQDK8CCyACIARrIAAoAgAiAWohFCAEIAFrQQVqIRACQANAIAQtAAAgAUHkz4CAAGotAABHDZcBIAFBBUYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEG1ASEQDK8CCyAAQQA2AgAgEEEBaiEBQSghEAyUAQsCQCAEIAJHDQBBtgEhEAyuAgsgAiAEayAAKAIAIgFqIRQgBCABa0ECaiEQAkADQCAELQAAIAFB6s+AgABqLQAARw2WASABQQJGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBtgEhEAyuAgsgAEEANgIAIBBBAWohAUEHIRAMkwELAkAgBCACRw0AQbcBIRAMrQILAkACQCAELQAAQbt/ag4OAJYBlgGWAZYBlgGWAZYBlgGWAZYBlgGWAQGWAQsgBEEBaiEEQaEBIRAMlAILIARBAWohBEGiASEQDJMCCwJAIAQgAkcNAEG4ASEQDKwCCyACIARrIAAoAgAiAWohFCAEIAFrQQJqIRACQANAIAQtAAAgAUHtz4CAAGotAABHDZQBIAFBAkYNASABQQFqIQEgBEEBaiIEIAJHDQALIAAgFDYCAEG4ASEQDKwCCyAAQQA2AgAgEEEBaiEBQRIhEAyRAQsCQCAEIAJHDQBBuQEhEAyrAgsgAiAEayAAKAIAIgFqIRQgBCABa0EBaiEQAkADQCAELQAAIAFB8M+AgABqLQAARw2TASABQQFGDQEgAUEBaiEBIARBAWoiBCACRw0ACyAAIBQ2AgBBuQEhEAyrAgsgAEEANgIAIBBBAWohAUEgIRAMkAELAkAgBCACRw0AQboBIRAMqgILIAIgBGsgACgCACIBaiEUIAQgAWtBAWohEAJAA0AgBC0AACABQfLPgIAAai0AAEcNkgEgAUEBRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQboBIRAMqgILIABBADYCACAQQQFqIQFBDyEQDI8BCwJAIAQgAkcNAEG7ASEQDKkCCwJAAkAgBC0AAEG3f2oOBwCSAZIBkgGSAZIBAZIBCyAEQQFqIQRBpQEhEAyQAgsgBEEBaiEEQaYBIRAMjwILAkAgBCACRw0AQbwBIRAMqAILIAIgBGsgACgCACIBaiEUIAQgAWtBB2ohEAJAA0AgBC0AACABQfTPgIAAai0AAEcNkAEgAUEHRg0BIAFBAWohASAEQQFqIgQgAkcNAAsgACAUNgIAQbwBIRAMqAILIABBADYCACAQQQFqIQFBGyEQDI0BCwJAIAQgAkcNAEG9ASEQDKcCCwJAAkACQCAELQAAQb5/ag4SAJEBkQGRAZEBkQGRAZEBkQGRAQGRAZEBkQGRAZEBkQECkQELIARBAWohBEGkASEQDI8CCyAEQQFqIQRBpwEhEAyOAgsgBEEBaiEEQagBIRAMjQILAkAgBCACRw0AQb4BIRAMpgILIAQtAABBzgBHDY0BIARBAWohBAzPAQsCQCAEIAJHDQBBvwEhEAylAgsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAELQAAQb9/ag4VAAECA5wBBAUGnAGcAZwBBwgJCgucAQwNDg+cAQsgBEEBaiEBQegAIRAMmgILIARBAWohAUHpACEQDJkCCyAEQQFqIQFB7gAhEAyYAgsgBEEBaiEBQfIAIRAMlwILIARBAWohAUHzACEQDJYCCyAEQQFqIQFB9gAhEAyVAgsgBEEBaiEBQfcAIRAMlAILIARBAWohAUH6ACEQDJMCCyAEQQFqIQRBgwEhEAySAgsgBEEBaiEEQYQBIRAMkQILIARBAWohBEGFASEQDJACCyAEQQFqIQRBkgEhEAyPAgsgBEEBaiEEQZgBIRAMjgILIARBAWohBEGgASEQDI0CCyAEQQFqIQRBowEhEAyMAgsgBEEBaiEEQaoBIRAMiwILAkAgBCACRg0AIABBkICAgAA2AgggACAENgIEQasBIRAMiwILQcABIRAMowILIAAgBSACEKqAgIAAIgENiwEgBSEBDFwLAkAgBiACRg0AIAZBAWohBQyNAQtBwgEhEAyhAgsDQAJAIBAtAABBdmoOBIwBAACPAQALIBBBAWoiECACRw0AC0HDASEQDKACCwJAIAcgAkYNACAAQZGAgIAANgIIIAAgBzYCBCAHIQFBASEQDIcCC0HEASEQDJ8CCwJAIAcgAkcNAEHFASEQDJ8CCwJAAkAgBy0AAEF2ag4EAc4BzgEAzgELIAdBAWohBgyNAQsgB0EBaiEFDIkBCwJAIAcgAkcNAEHGASEQDJ4CCwJAAkAgBy0AAEF2ag4XAY8BjwEBjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BAI8BCyAHQQFqIQcLQbABIRAMhAILAkAgCCACRw0AQcgBIRAMnQILIAgtAABBIEcNjQEgAEEAOwEyIAhBAWohAUGzASEQDIMCCyABIRcCQANAIBciByACRg0BIActAABBUGpB/wFxIhBBCk8NzAECQCAALwEyIhRBmTNLDQAgACAUQQpsIhQ7ATIgEEH//wNzIBRB/v8DcUkNACAHQQFqIRcgACAUIBBqIhA7ATIgEEH//wNxQegHSQ0BCwtBACEQIABBADYCHCAAQcGJgIAANgIQIABBDTYCDCAAIAdBAWo2AhQMnAILQccBIRAMmwILIAAgCCACEK6AgIAAIhBFDcoBIBBBFUcNjAEgAEHIATYCHCAAIAg2AhQgAEHJl4CAADYCECAAQRU2AgxBACEQDJoCCwJAIAkgAkcNAEHMASEQDJoCC0EAIRRBASEXQQEhFkEAIRACQAJAAkACQAJAAkACQAJAAkAgCS0AAEFQag4KlgGVAQABAgMEBQYIlwELQQIhEAwGC0EDIRAMBQtBBCEQDAQLQQUhEAwDC0EGIRAMAgtBByEQDAELQQghEAtBACEXQQAhFkEAIRQMjgELQQkhEEEBIRRBACEXQQAhFgyNAQsCQCAKIAJHDQBBzgEhEAyZAgsgCi0AAEEuRw2OASAKQQFqIQkMygELIAsgAkcNjgFB0AEhEAyXAgsCQCALIAJGDQAgAEGOgICAADYCCCAAIAs2AgRBtwEhEAz+AQtB0QEhEAyWAgsCQCAEIAJHDQBB0gEhEAyWAgsgAiAEayAAKAIAIhBqIRQgBCAQa0EEaiELA0AgBC0AACAQQfzPgIAAai0AAEcNjgEgEEEERg3pASAQQQFqIRAgBEEBaiIEIAJHDQALIAAgFDYCAEHSASEQDJUCCyAAIAwgAhCsgICAACIBDY0BIAwhAQy4AQsCQCAEIAJHDQBB1AEhEAyUAgsgAiAEayAAKAIAIhBqIRQgBCAQa0EBaiEMA0AgBC0AACAQQYHQgIAAai0AAEcNjwEgEEEBRg2OASAQQQFqIRAgBEEBaiIEIAJHDQALIAAgFDYCAEHUASEQDJMCCwJAIAQgAkcNAEHWASEQDJMCCyACIARrIAAoAgAiEGohFCAEIBBrQQJqIQsDQCAELQAAIBBBg9CAgABqLQAARw2OASAQQQJGDZABIBBBAWohECAEQQFqIgQgAkcNAAsgACAUNgIAQdYBIRAMkgILAkAgBCACRw0AQdcBIRAMkgILAkACQCAELQAAQbt/ag4QAI8BjwGPAY8BjwGPAY8BjwGPAY8BjwGPAY8BjwEBjwELIARBAWohBEG7ASEQDPkBCyAEQQFqIQRBvAEhEAz4AQsCQCAEIAJHDQBB2AEhEAyRAgsgBC0AAEHIAEcNjAEgBEEBaiEEDMQBCwJAIAQgAkYNACAAQZCAgIAANgIIIAAgBDYCBEG+ASEQDPcBC0HZASEQDI8CCwJAIAQgAkcNAEHaASEQDI8CCyAELQAAQcgARg3DASAAQQE6ACgMuQELIABBAjoALyAAIAQgAhCmgICAACIQDY0BQcIBIRAM9AELIAAtAChBf2oOArcBuQG4AQsDQAJAIAQtAABBdmoOBACOAY4BAI4BCyAEQQFqIgQgAkcNAAtB3QEhEAyLAgsgAEEAOgAvIAAtAC1BBHFFDYQCCyAAQQA6AC8gAEEBOgA0IAEhAQyMAQsgEEEVRg3aASAAQQA2AhwgACABNgIUIABBp46AgAA2AhAgAEESNgIMQQAhEAyIAgsCQCAAIBAgAhC0gICAACIEDQAgECEBDIECCwJAIARBFUcNACAAQQM2AhwgACAQNgIUIABBsJiAgAA2AhAgAEEVNgIMQQAhEAyIAgsgAEEANgIcIAAgEDYCFCAAQaeOgIAANgIQIABBEjYCDEEAIRAMhwILIBBBFUYN1gEgAEEANgIcIAAgATYCFCAAQdqNgIAANgIQIABBFDYCDEEAIRAMhgILIAAoAgQhFyAAQQA2AgQgECARp2oiFiEBIAAgFyAQIBYgFBsiEBC1gICAACIURQ2NASAAQQc2AhwgACAQNgIUIAAgFDYCDEEAIRAMhQILIAAgAC8BMEGAAXI7ATAgASEBC0EqIRAM6gELIBBBFUYN0QEgAEEANgIcIAAgATYCFCAAQYOMgIAANgIQIABBEzYCDEEAIRAMggILIBBBFUYNzwEgAEEANgIcIAAgATYCFCAAQZqPgIAANgIQIABBIjYCDEEAIRAMgQILIAAoAgQhECAAQQA2AgQCQCAAIBAgARC3gICAACIQDQAgAUEBaiEBDI0BCyAAQQw2AhwgACAQNgIMIAAgAUEBajYCFEEAIRAMgAILIBBBFUYNzAEgAEEANgIcIAAgATYCFCAAQZqPgIAANgIQIABBIjYCDEEAIRAM/wELIAAoAgQhECAAQQA2AgQCQCAAIBAgARC3gICAACIQDQAgAUEBaiEBDIwBCyAAQQ02AhwgACAQNgIMIAAgAUEBajYCFEEAIRAM/gELIBBBFUYNyQEgAEEANgIcIAAgATYCFCAAQcaMgIAANgIQIABBIzYCDEEAIRAM/QELIAAoAgQhECAAQQA2AgQCQCAAIBAgARC5gICAACIQDQAgAUEBaiEBDIsBCyAAQQ42AhwgACAQNgIMIAAgAUEBajYCFEEAIRAM/AELIABBADYCHCAAIAE2AhQgAEHAlYCAADYCECAAQQI2AgxBACEQDPsBCyAQQRVGDcUBIABBADYCHCAAIAE2AhQgAEHGjICAADYCECAAQSM2AgxBACEQDPoBCyAAQRA2AhwgACABNgIUIAAgEDYCDEEAIRAM+QELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARC5gICAACIEDQAgAUEBaiEBDPEBCyAAQRE2AhwgACAENgIMIAAgAUEBajYCFEEAIRAM+AELIBBBFUYNwQEgAEEANgIcIAAgATYCFCAAQcaMgIAANgIQIABBIzYCDEEAIRAM9wELIAAoAgQhECAAQQA2AgQCQCAAIBAgARC5gICAACIQDQAgAUEBaiEBDIgBCyAAQRM2AhwgACAQNgIMIAAgAUEBajYCFEEAIRAM9gELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARC5gICAACIEDQAgAUEBaiEBDO0BCyAAQRQ2AhwgACAENgIMIAAgAUEBajYCFEEAIRAM9QELIBBBFUYNvQEgAEEANgIcIAAgATYCFCAAQZqPgIAANgIQIABBIjYCDEEAIRAM9AELIAAoAgQhECAAQQA2AgQCQCAAIBAgARC3gICAACIQDQAgAUEBaiEBDIYBCyAAQRY2AhwgACAQNgIMIAAgAUEBajYCFEEAIRAM8wELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARC3gICAACIEDQAgAUEBaiEBDOkBCyAAQRc2AhwgACAENgIMIAAgAUEBajYCFEEAIRAM8gELIABBADYCHCAAIAE2AhQgAEHNk4CAADYCECAAQQw2AgxBACEQDPEBC0IBIRELIBBBAWohAQJAIAApAyAiEkL//////////w9WDQAgACASQgSGIBGENwMgIAEhAQyEAQsgAEEANgIcIAAgATYCFCAAQa2JgIAANgIQIABBDDYCDEEAIRAM7wELIABBADYCHCAAIBA2AhQgAEHNk4CAADYCECAAQQw2AgxBACEQDO4BCyAAKAIEIRcgAEEANgIEIBAgEadqIhYhASAAIBcgECAWIBQbIhAQtYCAgAAiFEUNcyAAQQU2AhwgACAQNgIUIAAgFDYCDEEAIRAM7QELIABBADYCHCAAIBA2AhQgAEGqnICAADYCECAAQQ82AgxBACEQDOwBCyAAIBAgAhC0gICAACIBDQEgECEBC0EOIRAM0QELAkAgAUEVRw0AIABBAjYCHCAAIBA2AhQgAEGwmICAADYCECAAQRU2AgxBACEQDOoBCyAAQQA2AhwgACAQNgIUIABBp46AgAA2AhAgAEESNgIMQQAhEAzpAQsgAUEBaiEQAkAgAC8BMCIBQYABcUUNAAJAIAAgECACELuAgIAAIgENACAQIQEMcAsgAUEVRw26ASAAQQU2AhwgACAQNgIUIABB+ZeAgAA2AhAgAEEVNgIMQQAhEAzpAQsCQCABQaAEcUGgBEcNACAALQAtQQJxDQAgAEEANgIcIAAgEDYCFCAAQZaTgIAANgIQIABBBDYCDEEAIRAM6QELIAAgECACEL2AgIAAGiAQIQECQAJAAkACQAJAIAAgECACELOAgIAADhYCAQAEBAQEBAQEBAQEBAQEBAQEBAQDBAsgAEEBOgAuCyAAIAAvATBBwAByOwEwIBAhAQtBJiEQDNEBCyAAQSM2AhwgACAQNgIUIABBpZaAgAA2AhAgAEEVNgIMQQAhEAzpAQsgAEEANgIcIAAgEDYCFCAAQdWLgIAANgIQIABBETYCDEEAIRAM6AELIAAtAC1BAXFFDQFBwwEhEAzOAQsCQCANIAJGDQADQAJAIA0tAABBIEYNACANIQEMxAELIA1BAWoiDSACRw0AC0ElIRAM5wELQSUhEAzmAQsgACgCBCEEIABBADYCBCAAIAQgDRCvgICAACIERQ2tASAAQSY2AhwgACAENgIMIAAgDUEBajYCFEEAIRAM5QELIBBBFUYNqwEgAEEANgIcIAAgATYCFCAAQf2NgIAANgIQIABBHTYCDEEAIRAM5AELIABBJzYCHCAAIAE2AhQgACAQNgIMQQAhEAzjAQsgECEBQQEhFAJAAkACQAJAAkACQAJAIAAtACxBfmoOBwYFBQMBAgAFCyAAIAAvATBBCHI7ATAMAwtBAiEUDAELQQQhFAsgAEEBOgAsIAAgAC8BMCAUcjsBMAsgECEBC0ErIRAMygELIABBADYCHCAAIBA2AhQgAEGrkoCAADYCECAAQQs2AgxBACEQDOIBCyAAQQA2AhwgACABNgIUIABB4Y+AgAA2AhAgAEEKNgIMQQAhEAzhAQsgAEEAOgAsIBAhAQy9AQsgECEBQQEhFAJAAkACQAJAAkAgAC0ALEF7ag4EAwECAAULIAAgAC8BMEEIcjsBMAwDC0ECIRQMAQtBBCEUCyAAQQE6ACwgACAALwEwIBRyOwEwCyAQIQELQSkhEAzFAQsgAEEANgIcIAAgATYCFCAAQfCUgIAANgIQIABBAzYCDEEAIRAM3QELAkAgDi0AAEENRw0AIAAoAgQhASAAQQA2AgQCQCAAIAEgDhCxgICAACIBDQAgDkEBaiEBDHULIABBLDYCHCAAIAE2AgwgACAOQQFqNgIUQQAhEAzdAQsgAC0ALUEBcUUNAUHEASEQDMMBCwJAIA4gAkcNAEEtIRAM3AELAkACQANAAkAgDi0AAEF2ag4EAgAAAwALIA5BAWoiDiACRw0AC0EtIRAM3QELIAAoAgQhASAAQQA2AgQCQCAAIAEgDhCxgICAACIBDQAgDiEBDHQLIABBLDYCHCAAIA42AhQgACABNgIMQQAhEAzcAQsgACgCBCEBIABBADYCBAJAIAAgASAOELGAgIAAIgENACAOQQFqIQEMcwsgAEEsNgIcIAAgATYCDCAAIA5BAWo2AhRBACEQDNsBCyAAKAIEIQQgAEEANgIEIAAgBCAOELGAgIAAIgQNoAEgDiEBDM4BCyAQQSxHDQEgAUEBaiEQQQEhAQJAAkACQAJAAkAgAC0ALEF7ag4EAwECBAALIBAhAQwEC0ECIQEMAQtBBCEBCyAAQQE6ACwgACAALwEwIAFyOwEwIBAhAQwBCyAAIAAvATBBCHI7ATAgECEBC0E5IRAMvwELIABBADoALCABIQELQTQhEAy9AQsgACAALwEwQSByOwEwIAEhAQwCCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQsYCAgAAiBA0AIAEhAQzHAQsgAEE3NgIcIAAgATYCFCAAIAQ2AgxBACEQDNQBCyAAQQg6ACwgASEBC0EwIRAMuQELAkAgAC0AKEEBRg0AIAEhAQwECyAALQAtQQhxRQ2TASABIQEMAwsgAC0AMEEgcQ2UAUHFASEQDLcBCwJAIA8gAkYNAAJAA0ACQCAPLQAAQVBqIgFB/wFxQQpJDQAgDyEBQTUhEAy6AQsgACkDICIRQpmz5syZs+bMGVYNASAAIBFCCn4iETcDICARIAGtQv8BgyISQn+FVg0BIAAgESASfDcDICAPQQFqIg8gAkcNAAtBOSEQDNEBCyAAKAIEIQIgAEEANgIEIAAgAiAPQQFqIgQQsYCAgAAiAg2VASAEIQEMwwELQTkhEAzPAQsCQCAALwEwIgFBCHFFDQAgAC0AKEEBRw0AIAAtAC1BCHFFDZABCyAAIAFB9/sDcUGABHI7ATAgDyEBC0E3IRAMtAELIAAgAC8BMEEQcjsBMAyrAQsgEEEVRg2LASAAQQA2AhwgACABNgIUIABB8I6AgAA2AhAgAEEcNgIMQQAhEAzLAQsgAEHDADYCHCAAIAE2AgwgACANQQFqNgIUQQAhEAzKAQsCQCABLQAAQTpHDQAgACgCBCEQIABBADYCBAJAIAAgECABEK+AgIAAIhANACABQQFqIQEMYwsgAEHDADYCHCAAIBA2AgwgACABQQFqNgIUQQAhEAzKAQsgAEEANgIcIAAgATYCFCAAQbGRgIAANgIQIABBCjYCDEEAIRAMyQELIABBADYCHCAAIAE2AhQgAEGgmYCAADYCECAAQR42AgxBACEQDMgBCyAAQQA2AgALIABBgBI7ASogACAXQQFqIgEgAhCogICAACIQDQEgASEBC0HHACEQDKwBCyAQQRVHDYMBIABB0QA2AhwgACABNgIUIABB45eAgAA2AhAgAEEVNgIMQQAhEAzEAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMXgsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAzDAQsgAEEANgIcIAAgFDYCFCAAQcGogIAANgIQIABBBzYCDCAAQQA2AgBBACEQDMIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxdCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDMEBC0EAIRAgAEEANgIcIAAgATYCFCAAQYCRgIAANgIQIABBCTYCDAzAAQsgEEEVRg19IABBADYCHCAAIAE2AhQgAEGUjYCAADYCECAAQSE2AgxBACEQDL8BC0EBIRZBACEXQQAhFEEBIRALIAAgEDoAKyABQQFqIQECQAJAIAAtAC1BEHENAAJAAkACQCAALQAqDgMBAAIECyAWRQ0DDAILIBQNAQwCCyAXRQ0BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQrYCAgAAiEA0AIAEhAQxcCyAAQdgANgIcIAAgATYCFCAAIBA2AgxBACEQDL4BCyAAKAIEIQQgAEEANgIEAkAgACAEIAEQrYCAgAAiBA0AIAEhAQytAQsgAEHZADYCHCAAIAE2AhQgACAENgIMQQAhEAy9AQsgACgCBCEEIABBADYCBAJAIAAgBCABEK2AgIAAIgQNACABIQEMqwELIABB2gA2AhwgACABNgIUIAAgBDYCDEEAIRAMvAELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARCtgICAACIEDQAgASEBDKkBCyAAQdwANgIcIAAgATYCFCAAIAQ2AgxBACEQDLsBCwJAIAEtAABBUGoiEEH/AXFBCk8NACAAIBA6ACogAUEBaiEBQc8AIRAMogELIAAoAgQhBCAAQQA2AgQCQCAAIAQgARCtgICAACIEDQAgASEBDKcBCyAAQd4ANgIcIAAgATYCFCAAIAQ2AgxBACEQDLoBCyAAQQA2AgAgF0EBaiEBAkAgAC0AKUEjTw0AIAEhAQxZCyAAQQA2AhwgACABNgIUIABB04mAgAA2AhAgAEEINgIMQQAhEAy5AQsgAEEANgIAC0EAIRAgAEEANgIcIAAgATYCFCAAQZCzgIAANgIQIABBCDYCDAy3AQsgAEEANgIAIBdBAWohAQJAIAAtAClBIUcNACABIQEMVgsgAEEANgIcIAAgATYCFCAAQZuKgIAANgIQIABBCDYCDEEAIRAMtgELIABBADYCACAXQQFqIQECQCAALQApIhBBXWpBC08NACABIQEMVQsCQCAQQQZLDQBBASAQdEHKAHFFDQAgASEBDFULQQAhECAAQQA2AhwgACABNgIUIABB94mAgAA2AhAgAEEINgIMDLUBCyAQQRVGDXEgAEEANgIcIAAgATYCFCAAQbmNgIAANgIQIABBGjYCDEEAIRAMtAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDFQLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMswELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDE0LIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMsgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDE0LIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMsQELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDFELIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMsAELIABBADYCHCAAIAE2AhQgAEHGioCAADYCECAAQQc2AgxBACEQDK8BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxJCyAAQdIANgIcIAAgATYCFCAAIBA2AgxBACEQDK4BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxJCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDK0BCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDKwBCyAAQQA2AhwgACABNgIUIABB3IiAgAA2AhAgAEEHNgIMQQAhEAyrAQsgEEE/Rw0BIAFBAWohAQtBBSEQDJABC0EAIRAgAEEANgIcIAAgATYCFCAAQf2SgIAANgIQIABBBzYCDAyoAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMQgsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAynAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMQgsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAymAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMRgsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAylAQsgACgCBCEBIABBADYCBAJAIAAgASAUEKeAgIAAIgENACAUIQEMPwsgAEHSADYCHCAAIBQ2AhQgACABNgIMQQAhEAykAQsgACgCBCEBIABBADYCBAJAIAAgASAUEKeAgIAAIgENACAUIQEMPwsgAEHTADYCHCAAIBQ2AhQgACABNgIMQQAhEAyjAQsgACgCBCEBIABBADYCBAJAIAAgASAUEKeAgIAAIgENACAUIQEMQwsgAEHlADYCHCAAIBQ2AhQgACABNgIMQQAhEAyiAQsgAEEANgIcIAAgFDYCFCAAQcOPgIAANgIQIABBBzYCDEEAIRAMoQELIABBADYCHCAAIAE2AhQgAEHDj4CAADYCECAAQQc2AgxBACEQDKABC0EAIRAgAEEANgIcIAAgFDYCFCAAQYycgIAANgIQIABBBzYCDAyfAQsgAEEANgIcIAAgFDYCFCAAQYycgIAANgIQIABBBzYCDEEAIRAMngELIABBADYCHCAAIBQ2AhQgAEH+kYCAADYCECAAQQc2AgxBACEQDJ0BCyAAQQA2AhwgACABNgIUIABBjpuAgAA2AhAgAEEGNgIMQQAhEAycAQsgEEEVRg1XIABBADYCHCAAIAE2AhQgAEHMjoCAADYCECAAQSA2AgxBACEQDJsBCyAAQQA2AgAgEEEBaiEBQSQhEAsgACAQOgApIAAoAgQhECAAQQA2AgQgACAQIAEQq4CAgAAiEA1UIAEhAQw+CyAAQQA2AgALQQAhECAAQQA2AhwgACAENgIUIABB8ZuAgAA2AhAgAEEGNgIMDJcBCyABQRVGDVAgAEEANgIcIAAgBTYCFCAAQfCMgIAANgIQIABBGzYCDEEAIRAMlgELIAAoAgQhBSAAQQA2AgQgACAFIBAQqYCAgAAiBQ0BIBBBAWohBQtBrQEhEAx7CyAAQcEBNgIcIAAgBTYCDCAAIBBBAWo2AhRBACEQDJMBCyAAKAIEIQYgAEEANgIEIAAgBiAQEKmAgIAAIgYNASAQQQFqIQYLQa4BIRAMeAsgAEHCATYCHCAAIAY2AgwgACAQQQFqNgIUQQAhEAyQAQsgAEEANgIcIAAgBzYCFCAAQZeLgIAANgIQIABBDTYCDEEAIRAMjwELIABBADYCHCAAIAg2AhQgAEHjkICAADYCECAAQQk2AgxBACEQDI4BCyAAQQA2AhwgACAINgIUIABBlI2AgAA2AhAgAEEhNgIMQQAhEAyNAQtBASEWQQAhF0EAIRRBASEQCyAAIBA6ACsgCUEBaiEIAkACQCAALQAtQRBxDQACQAJAAkAgAC0AKg4DAQACBAsgFkUNAwwCCyAUDQEMAgsgF0UNAQsgACgCBCEQIABBADYCBCAAIBAgCBCtgICAACIQRQ09IABByQE2AhwgACAINgIUIAAgEDYCDEEAIRAMjAELIAAoAgQhBCAAQQA2AgQgACAEIAgQrYCAgAAiBEUNdiAAQcoBNgIcIAAgCDYCFCAAIAQ2AgxBACEQDIsBCyAAKAIEIQQgAEEANgIEIAAgBCAJEK2AgIAAIgRFDXQgAEHLATYCHCAAIAk2AhQgACAENgIMQQAhEAyKAQsgACgCBCEEIABBADYCBCAAIAQgChCtgICAACIERQ1yIABBzQE2AhwgACAKNgIUIAAgBDYCDEEAIRAMiQELAkAgCy0AAEFQaiIQQf8BcUEKTw0AIAAgEDoAKiALQQFqIQpBtgEhEAxwCyAAKAIEIQQgAEEANgIEIAAgBCALEK2AgIAAIgRFDXAgAEHPATYCHCAAIAs2AhQgACAENgIMQQAhEAyIAQsgAEEANgIcIAAgBDYCFCAAQZCzgIAANgIQIABBCDYCDCAAQQA2AgBBACEQDIcBCyABQRVGDT8gAEEANgIcIAAgDDYCFCAAQcyOgIAANgIQIABBIDYCDEEAIRAMhgELIABBgQQ7ASggACgCBCEQIABCADcDACAAIBAgDEEBaiIMEKuAgIAAIhBFDTggAEHTATYCHCAAIAw2AhQgACAQNgIMQQAhEAyFAQsgAEEANgIAC0EAIRAgAEEANgIcIAAgBDYCFCAAQdibgIAANgIQIABBCDYCDAyDAQsgACgCBCEQIABCADcDACAAIBAgC0EBaiILEKuAgIAAIhANAUHGASEQDGkLIABBAjoAKAxVCyAAQdUBNgIcIAAgCzYCFCAAIBA2AgxBACEQDIABCyAQQRVGDTcgAEEANgIcIAAgBDYCFCAAQaSMgIAANgIQIABBEDYCDEEAIRAMfwsgAC0ANEEBRw00IAAgBCACELyAgIAAIhBFDTQgEEEVRw01IABB3AE2AhwgACAENgIUIABB1ZaAgAA2AhAgAEEVNgIMQQAhEAx+C0EAIRAgAEEANgIcIABBr4uAgAA2AhAgAEECNgIMIAAgFEEBajYCFAx9C0EAIRAMYwtBAiEQDGILQQ0hEAxhC0EPIRAMYAtBJSEQDF8LQRMhEAxeC0EVIRAMXQtBFiEQDFwLQRchEAxbC0EYIRAMWgtBGSEQDFkLQRohEAxYC0EbIRAMVwtBHCEQDFYLQR0hEAxVC0EfIRAMVAtBISEQDFMLQSMhEAxSC0HGACEQDFELQS4hEAxQC0EvIRAMTwtBOyEQDE4LQT0hEAxNC0HIACEQDEwLQckAIRAMSwtBywAhEAxKC0HMACEQDEkLQc4AIRAMSAtB0QAhEAxHC0HVACEQDEYLQdgAIRAMRQtB2QAhEAxEC0HbACEQDEMLQeQAIRAMQgtB5QAhEAxBC0HxACEQDEALQfQAIRAMPwtBjQEhEAw+C0GXASEQDD0LQakBIRAMPAtBrAEhEAw7C0HAASEQDDoLQbkBIRAMOQtBrwEhEAw4C0GxASEQDDcLQbIBIRAMNgtBtAEhEAw1C0G1ASEQDDQLQboBIRAMMwtBvQEhEAwyC0G/ASEQDDELQcEBIRAMMAsgAEEANgIcIAAgBDYCFCAAQemLgIAANgIQIABBHzYCDEEAIRAMSAsgAEHbATYCHCAAIAQ2AhQgAEH6loCAADYCECAAQRU2AgxBACEQDEcLIABB+AA2AhwgACAMNgIUIABBypiAgAA2AhAgAEEVNgIMQQAhEAxGCyAAQdEANgIcIAAgBTYCFCAAQbCXgIAANgIQIABBFTYCDEEAIRAMRQsgAEH5ADYCHCAAIAE2AhQgACAQNgIMQQAhEAxECyAAQfgANgIcIAAgATYCFCAAQcqYgIAANgIQIABBFTYCDEEAIRAMQwsgAEHkADYCHCAAIAE2AhQgAEHjl4CAADYCECAAQRU2AgxBACEQDEILIABB1wA2AhwgACABNgIUIABByZeAgAA2AhAgAEEVNgIMQQAhEAxBCyAAQQA2AhwgACABNgIUIABBuY2AgAA2AhAgAEEaNgIMQQAhEAxACyAAQcIANgIcIAAgATYCFCAAQeOYgIAANgIQIABBFTYCDEEAIRAMPwsgAEEANgIEIAAgDyAPELGAgIAAIgRFDQEgAEE6NgIcIAAgBDYCDCAAIA9BAWo2AhRBACEQDD4LIAAoAgQhBCAAQQA2AgQCQCAAIAQgARCxgICAACIERQ0AIABBOzYCHCAAIAQ2AgwgACABQQFqNgIUQQAhEAw+CyABQQFqIQEMLQsgD0EBaiEBDC0LIABBADYCHCAAIA82AhQgAEHkkoCAADYCECAAQQQ2AgxBACEQDDsLIABBNjYCHCAAIAQ2AhQgACACNgIMQQAhEAw6CyAAQS42AhwgACAONgIUIAAgBDYCDEEAIRAMOQsgAEHQADYCHCAAIAE2AhQgAEGRmICAADYCECAAQRU2AgxBACEQDDgLIA1BAWohAQwsCyAAQRU2AhwgACABNgIUIABBgpmAgAA2AhAgAEEVNgIMQQAhEAw2CyAAQRs2AhwgACABNgIUIABBkZeAgAA2AhAgAEEVNgIMQQAhEAw1CyAAQQ82AhwgACABNgIUIABBkZeAgAA2AhAgAEEVNgIMQQAhEAw0CyAAQQs2AhwgACABNgIUIABBkZeAgAA2AhAgAEEVNgIMQQAhEAwzCyAAQRo2AhwgACABNgIUIABBgpmAgAA2AhAgAEEVNgIMQQAhEAwyCyAAQQs2AhwgACABNgIUIABBgpmAgAA2AhAgAEEVNgIMQQAhEAwxCyAAQQo2AhwgACABNgIUIABB5JaAgAA2AhAgAEEVNgIMQQAhEAwwCyAAQR42AhwgACABNgIUIABB+ZeAgAA2AhAgAEEVNgIMQQAhEAwvCyAAQQA2AhwgACAQNgIUIABB2o2AgAA2AhAgAEEUNgIMQQAhEAwuCyAAQQQ2AhwgACABNgIUIABBsJiAgAA2AhAgAEEVNgIMQQAhEAwtCyAAQQA2AgAgC0EBaiELC0G4ASEQDBILIABBADYCACAQQQFqIQFB9QAhEAwRCyABIQECQCAALQApQQVHDQBB4wAhEAwRC0HiACEQDBALQQAhECAAQQA2AhwgAEHkkYCAADYCECAAQQc2AgwgACAUQQFqNgIUDCgLIABBADYCACAXQQFqIQFBwAAhEAwOC0EBIQELIAAgAToALCAAQQA2AgAgF0EBaiEBC0EoIRAMCwsgASEBC0E4IRAMCQsCQCABIg8gAkYNAANAAkAgDy0AAEGAvoCAAGotAAAiAUEBRg0AIAFBAkcNAyAPQQFqIQEMBAsgD0EBaiIPIAJHDQALQT4hEAwiC0E+IRAMIQsgAEEAOgAsIA8hAQwBC0ELIRAMBgtBOiEQDAULIAFBAWohAUEtIRAMBAsgACABOgAsIABBADYCACAWQQFqIQFBDCEQDAMLIABBADYCACAXQQFqIQFBCiEQDAILIABBADYCAAsgAEEAOgAsIA0hAUEJIRAMAAsLQQAhECAAQQA2AhwgACALNgIUIABBzZCAgAA2AhAgAEEJNgIMDBcLQQAhECAAQQA2AhwgACAKNgIUIABB6YqAgAA2AhAgAEEJNgIMDBYLQQAhECAAQQA2AhwgACAJNgIUIABBt5CAgAA2AhAgAEEJNgIMDBULQQAhECAAQQA2AhwgACAINgIUIABBnJGAgAA2AhAgAEEJNgIMDBQLQQAhECAAQQA2AhwgACABNgIUIABBzZCAgAA2AhAgAEEJNgIMDBMLQQAhECAAQQA2AhwgACABNgIUIABB6YqAgAA2AhAgAEEJNgIMDBILQQAhECAAQQA2AhwgACABNgIUIABBt5CAgAA2AhAgAEEJNgIMDBELQQAhECAAQQA2AhwgACABNgIUIABBnJGAgAA2AhAgAEEJNgIMDBALQQAhECAAQQA2AhwgACABNgIUIABBl5WAgAA2AhAgAEEPNgIMDA8LQQAhECAAQQA2AhwgACABNgIUIABBl5WAgAA2AhAgAEEPNgIMDA4LQQAhECAAQQA2AhwgACABNgIUIABBwJKAgAA2AhAgAEELNgIMDA0LQQAhECAAQQA2AhwgACABNgIUIABBlYmAgAA2AhAgAEELNgIMDAwLQQAhECAAQQA2AhwgACABNgIUIABB4Y+AgAA2AhAgAEEKNgIMDAsLQQAhECAAQQA2AhwgACABNgIUIABB+4+AgAA2AhAgAEEKNgIMDAoLQQAhECAAQQA2AhwgACABNgIUIABB8ZmAgAA2AhAgAEECNgIMDAkLQQAhECAAQQA2AhwgACABNgIUIABBxJSAgAA2AhAgAEECNgIMDAgLQQAhECAAQQA2AhwgACABNgIUIABB8pWAgAA2AhAgAEECNgIMDAcLIABBAjYCHCAAIAE2AhQgAEGcmoCAADYCECAAQRY2AgxBACEQDAYLQQEhEAwFC0HUACEQIAEiBCACRg0EIANBCGogACAEIAJB2MKAgABBChDFgICAACADKAIMIQQgAygCCA4DAQQCAAsQyoCAgAAACyAAQQA2AhwgAEG1moCAADYCECAAQRc2AgwgACAEQQFqNgIUQQAhEAwCCyAAQQA2AhwgACAENgIUIABBypqAgAA2AhAgAEEJNgIMQQAhEAwBCwJAIAEiBCACRw0AQSIhEAwBCyAAQYmAgIAANgIIIAAgBDYCBEEhIRALIANBEGokgICAgAAgEAuvAQECfyABKAIAIQYCQAJAIAIgA0YNACAEIAZqIQQgBiADaiACayEHIAIgBkF/cyAFaiIGaiEFA0ACQCACLQAAIAQtAABGDQBBAiEEDAMLAkAgBg0AQQAhBCAFIQIMAwsgBkF/aiEGIARBAWohBCACQQFqIgIgA0cNAAsgByEGIAMhAgsgAEEBNgIAIAEgBjYCACAAIAI2AgQPCyABQQA2AgAgACAENgIAIAAgAjYCBAsKACAAEMeAgIAAC/I2AQt/I4CAgIAAQRBrIgEkgICAgAACQEEAKAKg0ICAAA0AQQAQy4CAgABBgNSEgABrIgJB2QBJDQBBACEDAkBBACgC4NOAgAAiBA0AQQBCfzcC7NOAgABBAEKAgISAgIDAADcC5NOAgABBACABQQhqQXBxQdiq1aoFcyIENgLg04CAAEEAQQA2AvTTgIAAQQBBADYCxNOAgAALQQAgAjYCzNOAgABBAEGA1ISAADYCyNOAgABBAEGA1ISAADYCmNCAgABBACAENgKs0ICAAEEAQX82AqjQgIAAA0AgA0HE0ICAAGogA0G40ICAAGoiBDYCACAEIANBsNCAgABqIgU2AgAgA0G80ICAAGogBTYCACADQczQgIAAaiADQcDQgIAAaiIFNgIAIAUgBDYCACADQdTQgIAAaiADQcjQgIAAaiIENgIAIAQgBTYCACADQdDQgIAAaiAENgIAIANBIGoiA0GAAkcNAAtBgNSEgABBeEGA1ISAAGtBD3FBAEGA1ISAAEEIakEPcRsiA2oiBEEEaiACQUhqIgUgA2siA0EBcjYCAEEAQQAoAvDTgIAANgKk0ICAAEEAIAM2ApTQgIAAQQAgBDYCoNCAgABBgNSEgAAgBWpBODYCBAsCQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAEHsAUsNAAJAQQAoAojQgIAAIgZBECAAQRNqQXBxIABBC0kbIgJBA3YiBHYiA0EDcUUNAAJAAkAgA0EBcSAEckEBcyIFQQN0IgRBsNCAgABqIgMgBEG40ICAAGooAgAiBCgCCCICRw0AQQAgBkF+IAV3cTYCiNCAgAAMAQsgAyACNgIIIAIgAzYCDAsgBEEIaiEDIAQgBUEDdCIFQQNyNgIEIAQgBWoiBCAEKAIEQQFyNgIEDAwLIAJBACgCkNCAgAAiB00NAQJAIANFDQACQAJAIAMgBHRBAiAEdCIDQQAgA2tycSIDQQAgA2txQX9qIgMgA0EMdkEQcSIDdiIEQQV2QQhxIgUgA3IgBCAFdiIDQQJ2QQRxIgRyIAMgBHYiA0EBdkECcSIEciADIAR2IgNBAXZBAXEiBHIgAyAEdmoiBEEDdCIDQbDQgIAAaiIFIANBuNCAgABqKAIAIgMoAggiAEcNAEEAIAZBfiAEd3EiBjYCiNCAgAAMAQsgBSAANgIIIAAgBTYCDAsgAyACQQNyNgIEIAMgBEEDdCIEaiAEIAJrIgU2AgAgAyACaiIAIAVBAXI2AgQCQCAHRQ0AIAdBeHFBsNCAgABqIQJBACgCnNCAgAAhBAJAAkAgBkEBIAdBA3Z0IghxDQBBACAGIAhyNgKI0ICAACACIQgMAQsgAigCCCEICyAIIAQ2AgwgAiAENgIIIAQgAjYCDCAEIAg2AggLIANBCGohA0EAIAA2ApzQgIAAQQAgBTYCkNCAgAAMDAtBACgCjNCAgAAiCUUNASAJQQAgCWtxQX9qIgMgA0EMdkEQcSIDdiIEQQV2QQhxIgUgA3IgBCAFdiIDQQJ2QQRxIgRyIAMgBHYiA0EBdkECcSIEciADIAR2IgNBAXZBAXEiBHIgAyAEdmpBAnRBuNKAgABqKAIAIgAoAgRBeHEgAmshBCAAIQUCQANAAkAgBSgCECIDDQAgBUEUaigCACIDRQ0CCyADKAIEQXhxIAJrIgUgBCAFIARJIgUbIQQgAyAAIAUbIQAgAyEFDAALCyAAKAIYIQoCQCAAKAIMIgggAEYNACAAKAIIIgNBACgCmNCAgABJGiAIIAM2AgggAyAINgIMDAsLAkAgAEEUaiIFKAIAIgMNACAAKAIQIgNFDQMgAEEQaiEFCwNAIAUhCyADIghBFGoiBSgCACIDDQAgCEEQaiEFIAgoAhAiAw0ACyALQQA2AgAMCgtBfyECIABBv39LDQAgAEETaiIDQXBxIQJBACgCjNCAgAAiB0UNAEEAIQsCQCACQYACSQ0AQR8hCyACQf///wdLDQAgA0EIdiIDIANBgP4/akEQdkEIcSIDdCIEIARBgOAfakEQdkEEcSIEdCIFIAVBgIAPakEQdkECcSIFdEEPdiADIARyIAVyayIDQQF0IAIgA0EVanZBAXFyQRxqIQsLQQAgAmshBAJAAkACQAJAIAtBAnRBuNKAgABqKAIAIgUNAEEAIQNBACEIDAELQQAhAyACQQBBGSALQQF2ayALQR9GG3QhAEEAIQgDQAJAIAUoAgRBeHEgAmsiBiAETw0AIAYhBCAFIQggBg0AQQAhBCAFIQggBSEDDAMLIAMgBUEUaigCACIGIAYgBSAAQR12QQRxakEQaigCACIFRhsgAyAGGyEDIABBAXQhACAFDQALCwJAIAMgCHINAEEAIQhBAiALdCIDQQAgA2tyIAdxIgNFDQMgA0EAIANrcUF/aiIDIANBDHZBEHEiA3YiBUEFdkEIcSIAIANyIAUgAHYiA0ECdkEEcSIFciADIAV2IgNBAXZBAnEiBXIgAyAFdiIDQQF2QQFxIgVyIAMgBXZqQQJ0QbjSgIAAaigCACEDCyADRQ0BCwNAIAMoAgRBeHEgAmsiBiAESSEAAkAgAygCECIFDQAgA0EUaigCACEFCyAGIAQgABshBCADIAggABshCCAFIQMgBQ0ACwsgCEUNACAEQQAoApDQgIAAIAJrTw0AIAgoAhghCwJAIAgoAgwiACAIRg0AIAgoAggiA0EAKAKY0ICAAEkaIAAgAzYCCCADIAA2AgwMCQsCQCAIQRRqIgUoAgAiAw0AIAgoAhAiA0UNAyAIQRBqIQULA0AgBSEGIAMiAEEUaiIFKAIAIgMNACAAQRBqIQUgACgCECIDDQALIAZBADYCAAwICwJAQQAoApDQgIAAIgMgAkkNAEEAKAKc0ICAACEEAkACQCADIAJrIgVBEEkNACAEIAJqIgAgBUEBcjYCBEEAIAU2ApDQgIAAQQAgADYCnNCAgAAgBCADaiAFNgIAIAQgAkEDcjYCBAwBCyAEIANBA3I2AgQgBCADaiIDIAMoAgRBAXI2AgRBAEEANgKc0ICAAEEAQQA2ApDQgIAACyAEQQhqIQMMCgsCQEEAKAKU0ICAACIAIAJNDQBBACgCoNCAgAAiAyACaiIEIAAgAmsiBUEBcjYCBEEAIAU2ApTQgIAAQQAgBDYCoNCAgAAgAyACQQNyNgIEIANBCGohAwwKCwJAAkBBACgC4NOAgABFDQBBACgC6NOAgAAhBAwBC0EAQn83AuzTgIAAQQBCgICEgICAwAA3AuTTgIAAQQAgAUEMakFwcUHYqtWqBXM2AuDTgIAAQQBBADYC9NOAgABBAEEANgLE04CAAEGAgAQhBAtBACEDAkAgBCACQccAaiIHaiIGQQAgBGsiC3EiCCACSw0AQQBBMDYC+NOAgAAMCgsCQEEAKALA04CAACIDRQ0AAkBBACgCuNOAgAAiBCAIaiIFIARNDQAgBSADTQ0BC0EAIQNBAEEwNgL404CAAAwKC0EALQDE04CAAEEEcQ0EAkACQAJAQQAoAqDQgIAAIgRFDQBByNOAgAAhAwNAAkAgAygCACIFIARLDQAgBSADKAIEaiAESw0DCyADKAIIIgMNAAsLQQAQy4CAgAAiAEF/Rg0FIAghBgJAQQAoAuTTgIAAIgNBf2oiBCAAcUUNACAIIABrIAQgAGpBACADa3FqIQYLIAYgAk0NBSAGQf7///8HSw0FAkBBACgCwNOAgAAiA0UNAEEAKAK404CAACIEIAZqIgUgBE0NBiAFIANLDQYLIAYQy4CAgAAiAyAARw0BDAcLIAYgAGsgC3EiBkH+////B0sNBCAGEMuAgIAAIgAgAygCACADKAIEakYNAyAAIQMLAkAgA0F/Rg0AIAJByABqIAZNDQACQCAHIAZrQQAoAujTgIAAIgRqQQAgBGtxIgRB/v///wdNDQAgAyEADAcLAkAgBBDLgICAAEF/Rg0AIAQgBmohBiADIQAMBwtBACAGaxDLgICAABoMBAsgAyEAIANBf0cNBQwDC0EAIQgMBwtBACEADAULIABBf0cNAgtBAEEAKALE04CAAEEEcjYCxNOAgAALIAhB/v///wdLDQEgCBDLgICAACEAQQAQy4CAgAAhAyAAQX9GDQEgA0F/Rg0BIAAgA08NASADIABrIgYgAkE4ak0NAQtBAEEAKAK404CAACAGaiIDNgK404CAAAJAIANBACgCvNOAgABNDQBBACADNgK804CAAAsCQAJAAkACQEEAKAKg0ICAACIERQ0AQcjTgIAAIQMDQCAAIAMoAgAiBSADKAIEIghqRg0CIAMoAggiAw0ADAMLCwJAAkBBACgCmNCAgAAiA0UNACAAIANPDQELQQAgADYCmNCAgAALQQAhA0EAIAY2AszTgIAAQQAgADYCyNOAgABBAEF/NgKo0ICAAEEAQQAoAuDTgIAANgKs0ICAAEEAQQA2AtTTgIAAA0AgA0HE0ICAAGogA0G40ICAAGoiBDYCACAEIANBsNCAgABqIgU2AgAgA0G80ICAAGogBTYCACADQczQgIAAaiADQcDQgIAAaiIFNgIAIAUgBDYCACADQdTQgIAAaiADQcjQgIAAaiIENgIAIAQgBTYCACADQdDQgIAAaiAENgIAIANBIGoiA0GAAkcNAAsgAEF4IABrQQ9xQQAgAEEIakEPcRsiA2oiBCAGQUhqIgUgA2siA0EBcjYCBEEAQQAoAvDTgIAANgKk0ICAAEEAIAM2ApTQgIAAQQAgBDYCoNCAgAAgACAFakE4NgIEDAILIAMtAAxBCHENACAEIAVJDQAgBCAATw0AIARBeCAEa0EPcUEAIARBCGpBD3EbIgVqIgBBACgClNCAgAAgBmoiCyAFayIFQQFyNgIEIAMgCCAGajYCBEEAQQAoAvDTgIAANgKk0ICAAEEAIAU2ApTQgIAAQQAgADYCoNCAgAAgBCALakE4NgIEDAELAkAgAEEAKAKY0ICAACIITw0AQQAgADYCmNCAgAAgACEICyAAIAZqIQVByNOAgAAhAwJAAkACQAJAAkACQAJAA0AgAygCACAFRg0BIAMoAggiAw0ADAILCyADLQAMQQhxRQ0BC0HI04CAACEDA0ACQCADKAIAIgUgBEsNACAFIAMoAgRqIgUgBEsNAwsgAygCCCEDDAALCyADIAA2AgAgAyADKAIEIAZqNgIEIABBeCAAa0EPcUEAIABBCGpBD3EbaiILIAJBA3I2AgQgBUF4IAVrQQ9xQQAgBUEIakEPcRtqIgYgCyACaiICayEDAkAgBiAERw0AQQAgAjYCoNCAgABBAEEAKAKU0ICAACADaiIDNgKU0ICAACACIANBAXI2AgQMAwsCQCAGQQAoApzQgIAARw0AQQAgAjYCnNCAgABBAEEAKAKQ0ICAACADaiIDNgKQ0ICAACACIANBAXI2AgQgAiADaiADNgIADAMLAkAgBigCBCIEQQNxQQFHDQAgBEF4cSEHAkACQCAEQf8BSw0AIAYoAggiBSAEQQN2IghBA3RBsNCAgABqIgBGGgJAIAYoAgwiBCAFRw0AQQBBACgCiNCAgABBfiAId3E2AojQgIAADAILIAQgAEYaIAQgBTYCCCAFIAQ2AgwMAQsgBigCGCEJAkACQCAGKAIMIgAgBkYNACAGKAIIIgQgCEkaIAAgBDYCCCAEIAA2AgwMAQsCQCAGQRRqIgQoAgAiBQ0AIAZBEGoiBCgCACIFDQBBACEADAELA0AgBCEIIAUiAEEUaiIEKAIAIgUNACAAQRBqIQQgACgCECIFDQALIAhBADYCAAsgCUUNAAJAAkAgBiAGKAIcIgVBAnRBuNKAgABqIgQoAgBHDQAgBCAANgIAIAANAUEAQQAoAozQgIAAQX4gBXdxNgKM0ICAAAwCCyAJQRBBFCAJKAIQIAZGG2ogADYCACAARQ0BCyAAIAk2AhgCQCAGKAIQIgRFDQAgACAENgIQIAQgADYCGAsgBigCFCIERQ0AIABBFGogBDYCACAEIAA2AhgLIAcgA2ohAyAGIAdqIgYoAgQhBAsgBiAEQX5xNgIEIAIgA2ogAzYCACACIANBAXI2AgQCQCADQf8BSw0AIANBeHFBsNCAgABqIQQCQAJAQQAoAojQgIAAIgVBASADQQN2dCIDcQ0AQQAgBSADcjYCiNCAgAAgBCEDDAELIAQoAgghAwsgAyACNgIMIAQgAjYCCCACIAQ2AgwgAiADNgIIDAMLQR8hBAJAIANB////B0sNACADQQh2IgQgBEGA/j9qQRB2QQhxIgR0IgUgBUGA4B9qQRB2QQRxIgV0IgAgAEGAgA9qQRB2QQJxIgB0QQ92IAQgBXIgAHJrIgRBAXQgAyAEQRVqdkEBcXJBHGohBAsgAiAENgIcIAJCADcCECAEQQJ0QbjSgIAAaiEFAkBBACgCjNCAgAAiAEEBIAR0IghxDQAgBSACNgIAQQAgACAIcjYCjNCAgAAgAiAFNgIYIAIgAjYCCCACIAI2AgwMAwsgA0EAQRkgBEEBdmsgBEEfRht0IQQgBSgCACEAA0AgACIFKAIEQXhxIANGDQIgBEEddiEAIARBAXQhBCAFIABBBHFqQRBqIggoAgAiAA0ACyAIIAI2AgAgAiAFNgIYIAIgAjYCDCACIAI2AggMAgsgAEF4IABrQQ9xQQAgAEEIakEPcRsiA2oiCyAGQUhqIgggA2siA0EBcjYCBCAAIAhqQTg2AgQgBCAFQTcgBWtBD3FBACAFQUlqQQ9xG2pBQWoiCCAIIARBEGpJGyIIQSM2AgRBAEEAKALw04CAADYCpNCAgABBACADNgKU0ICAAEEAIAs2AqDQgIAAIAhBEGpBACkC0NOAgAA3AgAgCEEAKQLI04CAADcCCEEAIAhBCGo2AtDTgIAAQQAgBjYCzNOAgABBACAANgLI04CAAEEAQQA2AtTTgIAAIAhBJGohAwNAIANBBzYCACADQQRqIgMgBUkNAAsgCCAERg0DIAggCCgCBEF+cTYCBCAIIAggBGsiADYCACAEIABBAXI2AgQCQCAAQf8BSw0AIABBeHFBsNCAgABqIQMCQAJAQQAoAojQgIAAIgVBASAAQQN2dCIAcQ0AQQAgBSAAcjYCiNCAgAAgAyEFDAELIAMoAgghBQsgBSAENgIMIAMgBDYCCCAEIAM2AgwgBCAFNgIIDAQLQR8hAwJAIABB////B0sNACAAQQh2IgMgA0GA/j9qQRB2QQhxIgN0IgUgBUGA4B9qQRB2QQRxIgV0IgggCEGAgA9qQRB2QQJxIgh0QQ92IAMgBXIgCHJrIgNBAXQgACADQRVqdkEBcXJBHGohAwsgBCADNgIcIARCADcCECADQQJ0QbjSgIAAaiEFAkBBACgCjNCAgAAiCEEBIAN0IgZxDQAgBSAENgIAQQAgCCAGcjYCjNCAgAAgBCAFNgIYIAQgBDYCCCAEIAQ2AgwMBAsgAEEAQRkgA0EBdmsgA0EfRht0IQMgBSgCACEIA0AgCCIFKAIEQXhxIABGDQMgA0EddiEIIANBAXQhAyAFIAhBBHFqQRBqIgYoAgAiCA0ACyAGIAQ2AgAgBCAFNgIYIAQgBDYCDCAEIAQ2AggMAwsgBSgCCCIDIAI2AgwgBSACNgIIIAJBADYCGCACIAU2AgwgAiADNgIICyALQQhqIQMMBQsgBSgCCCIDIAQ2AgwgBSAENgIIIARBADYCGCAEIAU2AgwgBCADNgIIC0EAKAKU0ICAACIDIAJNDQBBACgCoNCAgAAiBCACaiIFIAMgAmsiA0EBcjYCBEEAIAM2ApTQgIAAQQAgBTYCoNCAgAAgBCACQQNyNgIEIARBCGohAwwDC0EAIQNBAEEwNgL404CAAAwCCwJAIAtFDQACQAJAIAggCCgCHCIFQQJ0QbjSgIAAaiIDKAIARw0AIAMgADYCACAADQFBACAHQX4gBXdxIgc2AozQgIAADAILIAtBEEEUIAsoAhAgCEYbaiAANgIAIABFDQELIAAgCzYCGAJAIAgoAhAiA0UNACAAIAM2AhAgAyAANgIYCyAIQRRqKAIAIgNFDQAgAEEUaiADNgIAIAMgADYCGAsCQAJAIARBD0sNACAIIAQgAmoiA0EDcjYCBCAIIANqIgMgAygCBEEBcjYCBAwBCyAIIAJqIgAgBEEBcjYCBCAIIAJBA3I2AgQgACAEaiAENgIAAkAgBEH/AUsNACAEQXhxQbDQgIAAaiEDAkACQEEAKAKI0ICAACIFQQEgBEEDdnQiBHENAEEAIAUgBHI2AojQgIAAIAMhBAwBCyADKAIIIQQLIAQgADYCDCADIAA2AgggACADNgIMIAAgBDYCCAwBC0EfIQMCQCAEQf///wdLDQAgBEEIdiIDIANBgP4/akEQdkEIcSIDdCIFIAVBgOAfakEQdkEEcSIFdCICIAJBgIAPakEQdkECcSICdEEPdiADIAVyIAJyayIDQQF0IAQgA0EVanZBAXFyQRxqIQMLIAAgAzYCHCAAQgA3AhAgA0ECdEG40oCAAGohBQJAIAdBASADdCICcQ0AIAUgADYCAEEAIAcgAnI2AozQgIAAIAAgBTYCGCAAIAA2AgggACAANgIMDAELIARBAEEZIANBAXZrIANBH0YbdCEDIAUoAgAhAgJAA0AgAiIFKAIEQXhxIARGDQEgA0EddiECIANBAXQhAyAFIAJBBHFqQRBqIgYoAgAiAg0ACyAGIAA2AgAgACAFNgIYIAAgADYCDCAAIAA2AggMAQsgBSgCCCIDIAA2AgwgBSAANgIIIABBADYCGCAAIAU2AgwgACADNgIICyAIQQhqIQMMAQsCQCAKRQ0AAkACQCAAIAAoAhwiBUECdEG40oCAAGoiAygCAEcNACADIAg2AgAgCA0BQQAgCUF+IAV3cTYCjNCAgAAMAgsgCkEQQRQgCigCECAARhtqIAg2AgAgCEUNAQsgCCAKNgIYAkAgACgCECIDRQ0AIAggAzYCECADIAg2AhgLIABBFGooAgAiA0UNACAIQRRqIAM2AgAgAyAINgIYCwJAAkAgBEEPSw0AIAAgBCACaiIDQQNyNgIEIAAgA2oiAyADKAIEQQFyNgIEDAELIAAgAmoiBSAEQQFyNgIEIAAgAkEDcjYCBCAFIARqIAQ2AgACQCAHRQ0AIAdBeHFBsNCAgABqIQJBACgCnNCAgAAhAwJAAkBBASAHQQN2dCIIIAZxDQBBACAIIAZyNgKI0ICAACACIQgMAQsgAigCCCEICyAIIAM2AgwgAiADNgIIIAMgAjYCDCADIAg2AggLQQAgBTYCnNCAgABBACAENgKQ0ICAAAsgAEEIaiEDCyABQRBqJICAgIAAIAMLCgAgABDJgICAAAviDQEHfwJAIABFDQAgAEF4aiIBIABBfGooAgAiAkF4cSIAaiEDAkAgAkEBcQ0AIAJBA3FFDQEgASABKAIAIgJrIgFBACgCmNCAgAAiBEkNASACIABqIQACQCABQQAoApzQgIAARg0AAkAgAkH/AUsNACABKAIIIgQgAkEDdiIFQQN0QbDQgIAAaiIGRhoCQCABKAIMIgIgBEcNAEEAQQAoAojQgIAAQX4gBXdxNgKI0ICAAAwDCyACIAZGGiACIAQ2AgggBCACNgIMDAILIAEoAhghBwJAAkAgASgCDCIGIAFGDQAgASgCCCICIARJGiAGIAI2AgggAiAGNgIMDAELAkAgAUEUaiICKAIAIgQNACABQRBqIgIoAgAiBA0AQQAhBgwBCwNAIAIhBSAEIgZBFGoiAigCACIEDQAgBkEQaiECIAYoAhAiBA0ACyAFQQA2AgALIAdFDQECQAJAIAEgASgCHCIEQQJ0QbjSgIAAaiICKAIARw0AIAIgBjYCACAGDQFBAEEAKAKM0ICAAEF+IAR3cTYCjNCAgAAMAwsgB0EQQRQgBygCECABRhtqIAY2AgAgBkUNAgsgBiAHNgIYAkAgASgCECICRQ0AIAYgAjYCECACIAY2AhgLIAEoAhQiAkUNASAGQRRqIAI2AgAgAiAGNgIYDAELIAMoAgQiAkEDcUEDRw0AIAMgAkF+cTYCBEEAIAA2ApDQgIAAIAEgAGogADYCACABIABBAXI2AgQPCyABIANPDQAgAygCBCICQQFxRQ0AAkACQCACQQJxDQACQCADQQAoAqDQgIAARw0AQQAgATYCoNCAgABBAEEAKAKU0ICAACAAaiIANgKU0ICAACABIABBAXI2AgQgAUEAKAKc0ICAAEcNA0EAQQA2ApDQgIAAQQBBADYCnNCAgAAPCwJAIANBACgCnNCAgABHDQBBACABNgKc0ICAAEEAQQAoApDQgIAAIABqIgA2ApDQgIAAIAEgAEEBcjYCBCABIABqIAA2AgAPCyACQXhxIABqIQACQAJAIAJB/wFLDQAgAygCCCIEIAJBA3YiBUEDdEGw0ICAAGoiBkYaAkAgAygCDCICIARHDQBBAEEAKAKI0ICAAEF+IAV3cTYCiNCAgAAMAgsgAiAGRhogAiAENgIIIAQgAjYCDAwBCyADKAIYIQcCQAJAIAMoAgwiBiADRg0AIAMoAggiAkEAKAKY0ICAAEkaIAYgAjYCCCACIAY2AgwMAQsCQCADQRRqIgIoAgAiBA0AIANBEGoiAigCACIEDQBBACEGDAELA0AgAiEFIAQiBkEUaiICKAIAIgQNACAGQRBqIQIgBigCECIEDQALIAVBADYCAAsgB0UNAAJAAkAgAyADKAIcIgRBAnRBuNKAgABqIgIoAgBHDQAgAiAGNgIAIAYNAUEAQQAoAozQgIAAQX4gBHdxNgKM0ICAAAwCCyAHQRBBFCAHKAIQIANGG2ogBjYCACAGRQ0BCyAGIAc2AhgCQCADKAIQIgJFDQAgBiACNgIQIAIgBjYCGAsgAygCFCICRQ0AIAZBFGogAjYCACACIAY2AhgLIAEgAGogADYCACABIABBAXI2AgQgAUEAKAKc0ICAAEcNAUEAIAA2ApDQgIAADwsgAyACQX5xNgIEIAEgAGogADYCACABIABBAXI2AgQLAkAgAEH/AUsNACAAQXhxQbDQgIAAaiECAkACQEEAKAKI0ICAACIEQQEgAEEDdnQiAHENAEEAIAQgAHI2AojQgIAAIAIhAAwBCyACKAIIIQALIAAgATYCDCACIAE2AgggASACNgIMIAEgADYCCA8LQR8hAgJAIABB////B0sNACAAQQh2IgIgAkGA/j9qQRB2QQhxIgJ0IgQgBEGA4B9qQRB2QQRxIgR0IgYgBkGAgA9qQRB2QQJxIgZ0QQ92IAIgBHIgBnJrIgJBAXQgACACQRVqdkEBcXJBHGohAgsgASACNgIcIAFCADcCECACQQJ0QbjSgIAAaiEEAkACQEEAKAKM0ICAACIGQQEgAnQiA3ENACAEIAE2AgBBACAGIANyNgKM0ICAACABIAQ2AhggASABNgIIIAEgATYCDAwBCyAAQQBBGSACQQF2ayACQR9GG3QhAiAEKAIAIQYCQANAIAYiBCgCBEF4cSAARg0BIAJBHXYhBiACQQF0IQIgBCAGQQRxakEQaiIDKAIAIgYNAAsgAyABNgIAIAEgBDYCGCABIAE2AgwgASABNgIIDAELIAQoAggiACABNgIMIAQgATYCCCABQQA2AhggASAENgIMIAEgADYCCAtBAEEAKAKo0ICAAEF/aiIBQX8gARs2AqjQgIAACwsEAAAAC04AAkAgAA0APwBBEHQPCwJAIABB//8DcQ0AIABBf0wNAAJAIABBEHZAACIAQX9HDQBBAEEwNgL404CAAEF/DwsgAEEQdA8LEMqAgIAAAAvyAgIDfwF+AkAgAkUNACAAIAE6AAAgAiAAaiIDQX9qIAE6AAAgAkEDSQ0AIAAgAToAAiAAIAE6AAEgA0F9aiABOgAAIANBfmogAToAACACQQdJDQAgACABOgADIANBfGogAToAACACQQlJDQAgAEEAIABrQQNxIgRqIgMgAUH/AXFBgYKECGwiATYCACADIAIgBGtBfHEiBGoiAkF8aiABNgIAIARBCUkNACADIAE2AgggAyABNgIEIAJBeGogATYCACACQXRqIAE2AgAgBEEZSQ0AIAMgATYCGCADIAE2AhQgAyABNgIQIAMgATYCDCACQXBqIAE2AgAgAkFsaiABNgIAIAJBaGogATYCACACQWRqIAE2AgAgBCADQQRxQRhyIgVrIgJBIEkNACABrUKBgICAEH4hBiADIAVqIQEDQCABIAY3AxggASAGNwMQIAEgBjcDCCABIAY3AwAgAUEgaiEBIAJBYGoiAkEfSw0ACwsgAAsLjkgBAEGACAuGSAEAAAACAAAAAwAAAAAAAAAAAAAABAAAAAUAAAAAAAAAAAAAAAYAAAAHAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsb3NlZWVwLWFsaXZlAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgAAAAAAAAAAAAAAAAAAAHJhbnNmZXItZW5jb2RpbmdwZ3JhZGUNCg0KDQpTTQ0KDQpUVFAvQ0UvVFNQLwAAAAAAAAAAAAAAAAECAAEDAAAAAAAAAAAAAAAAAAAAAAAABAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAABAAACAAAAAAAAAAAAAAAAAAAAAAAAAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAgAAAAACAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw=="},50172:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.enumToMap=void 0;function enumToMap(Wt){const Pt={};Object.keys(Wt).forEach((en=>{const tn=Wt[en];if(typeof tn==="number"){Pt[en]=tn}}));return Pt}Pt.enumToMap=enumToMap},47501:(Wt,Pt,en)=>{"use strict";const{kClients:tn}=en(36443);const nn=en(59965);const{kAgent:an,kMockAgentSet:rn,kMockAgentGet:In,kDispatches:sn,kIsMockActive:on,kNetConnect:cn,kGetNetConnect:dn,kOptions:un,kFactory:pn}=en(91117);const mn=en(47365);const bn=en(94004);const{matchValue:Gn,buildMockOptions:hn}=en(53397);const{InvalidArgumentError:Zn,UndiciError:An}=en(68707);const Wn=en(28611);const Nn=en(91529);const gn=en(56142);class FakeWeakRef{constructor(Wt){this.value=Wt}deref(){return this.value}}class MockAgent extends Wn{constructor(Wt){super(Wt);this[cn]=true;this[on]=true;if(Wt&&Wt.agent&&typeof Wt.agent.dispatch!=="function"){throw new Zn("Argument opts.agent must implement Agent")}const Pt=Wt&&Wt.agent?Wt.agent:new nn(Wt);this[an]=Pt;this[tn]=Pt[tn];this[un]=hn(Wt)}get(Wt){let Pt=this[In](Wt);if(!Pt){Pt=this[pn](Wt);this[rn](Wt,Pt)}return Pt}dispatch(Wt,Pt){this.get(Wt.origin);return this[an].dispatch(Wt,Pt)}async close(){await this[an].close();this[tn].clear()}deactivate(){this[on]=false}activate(){this[on]=true}enableNetConnect(Wt){if(typeof Wt==="string"||typeof Wt==="function"||Wt instanceof RegExp){if(Array.isArray(this[cn])){this[cn].push(Wt)}else{this[cn]=[Wt]}}else if(typeof Wt==="undefined"){this[cn]=true}else{throw new Zn("Unsupported matcher. Must be one of String|Function|RegExp.")}}disableNetConnect(){this[cn]=false}get isMockActive(){return this[on]}[rn](Wt,Pt){this[tn].set(Wt,new FakeWeakRef(Pt))}[pn](Wt){const Pt=Object.assign({agent:this},this[un]);return this[un]&&this[un].connections===1?new mn(Wt,Pt):new bn(Wt,Pt)}[In](Wt){const Pt=this[tn].get(Wt);if(Pt){return Pt.deref()}if(typeof Wt!=="string"){const Pt=this[pn]("http://localhost:9999");this[rn](Wt,Pt);return Pt}for(const[Pt,en]of Array.from(this[tn])){const tn=en.deref();if(tn&&typeof Pt!=="string"&&Gn(Pt,Wt)){const Pt=this[pn](Wt);this[rn](Wt,Pt);Pt[sn]=tn[sn];return Pt}}}[dn](){return this[cn]}pendingInterceptors(){const Wt=this[tn];return Array.from(Wt.entries()).flatMap((([Wt,Pt])=>Pt.deref()[sn].map((Pt=>({...Pt,origin:Wt}))))).filter((({pending:Wt})=>Wt))}assertNoPendingInterceptors({pendingInterceptorsFormatter:Wt=new gn}={}){const Pt=this.pendingInterceptors();if(Pt.length===0){return}const en=new Nn("interceptor","interceptors").pluralize(Pt.length);throw new An(`\n${en.count} ${en.noun} ${en.is} pending:\n\n${Wt.format(Pt)}\n`.trim())}}Wt.exports=MockAgent},47365:(Wt,Pt,en)=>{"use strict";const{promisify:tn}=en(39023);const nn=en(86197);const{buildMockDispatch:an}=en(53397);const{kDispatches:rn,kMockAgent:In,kClose:sn,kOriginalClose:on,kOrigin:cn,kOriginalDispatch:dn,kConnected:un}=en(91117);const{MockInterceptor:pn}=en(31511);const mn=en(36443);const{InvalidArgumentError:bn}=en(68707);class MockClient extends nn{constructor(Wt,Pt){super(Wt,Pt);if(!Pt||!Pt.agent||typeof Pt.agent.dispatch!=="function"){throw new bn("Argument opts.agent must implement Agent")}this[In]=Pt.agent;this[cn]=Wt;this[rn]=[];this[un]=1;this[dn]=this.dispatch;this[on]=this.close.bind(this);this.dispatch=an.call(this);this.close=this[sn]}get[mn.kConnected](){return this[un]}intercept(Wt){return new pn(Wt,this[rn])}async[sn](){await tn(this[on])();this[un]=0;this[In][mn.kClients].delete(this[cn])}}Wt.exports=MockClient},52429:(Wt,Pt,en)=>{"use strict";const{UndiciError:tn}=en(68707);class MockNotMatchedError extends tn{constructor(Wt){super(Wt);Error.captureStackTrace(this,MockNotMatchedError);this.name="MockNotMatchedError";this.message=Wt||"The request does not match any registered mock dispatches";this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}}Wt.exports={MockNotMatchedError:MockNotMatchedError}},31511:(Wt,Pt,en)=>{"use strict";const{getResponseData:tn,buildKey:nn,addMockDispatch:an}=en(53397);const{kDispatches:rn,kDispatchKey:In,kDefaultHeaders:sn,kDefaultTrailers:on,kContentLength:cn,kMockDispatch:dn}=en(91117);const{InvalidArgumentError:un}=en(68707);const{buildURL:pn}=en(3440);class MockScope{constructor(Wt){this[dn]=Wt}delay(Wt){if(typeof Wt!=="number"||!Number.isInteger(Wt)||Wt<=0){throw new un("waitInMs must be a valid integer > 0")}this[dn].delay=Wt;return this}persist(){this[dn].persist=true;return this}times(Wt){if(typeof Wt!=="number"||!Number.isInteger(Wt)||Wt<=0){throw new un("repeatTimes must be a valid integer > 0")}this[dn].times=Wt;return this}}class MockInterceptor{constructor(Wt,Pt){if(typeof Wt!=="object"){throw new un("opts must be an object")}if(typeof Wt.path==="undefined"){throw new un("opts.path must be defined")}if(typeof Wt.method==="undefined"){Wt.method="GET"}if(typeof Wt.path==="string"){if(Wt.query){Wt.path=pn(Wt.path,Wt.query)}else{const Pt=new URL(Wt.path,"data://");Wt.path=Pt.pathname+Pt.search}}if(typeof Wt.method==="string"){Wt.method=Wt.method.toUpperCase()}this[In]=nn(Wt);this[rn]=Pt;this[sn]={};this[on]={};this[cn]=false}createMockScopeDispatchData(Wt,Pt,en={}){const nn=tn(Pt);const an=this[cn]?{"content-length":nn.length}:{};const rn={...this[sn],...an,...en.headers};const In={...this[on],...en.trailers};return{statusCode:Wt,data:Pt,headers:rn,trailers:In}}validateReplyParameters(Wt,Pt,en){if(typeof Wt==="undefined"){throw new un("statusCode must be defined")}if(typeof Pt==="undefined"){throw new un("data must be defined")}if(typeof en!=="object"){throw new un("responseOptions must be an object")}}reply(Wt){if(typeof Wt==="function"){const wrappedDefaultsCallback=Pt=>{const en=Wt(Pt);if(typeof en!=="object"){throw new un("reply options callback must return an object")}const{statusCode:tn,data:nn="",responseOptions:an={}}=en;this.validateReplyParameters(tn,nn,an);return{...this.createMockScopeDispatchData(tn,nn,an)}};const Pt=an(this[rn],this[In],wrappedDefaultsCallback);return new MockScope(Pt)}const[Pt,en="",tn={}]=[...arguments];this.validateReplyParameters(Pt,en,tn);const nn=this.createMockScopeDispatchData(Pt,en,tn);const sn=an(this[rn],this[In],nn);return new MockScope(sn)}replyWithError(Wt){if(typeof Wt==="undefined"){throw new un("error must be defined")}const Pt=an(this[rn],this[In],{error:Wt});return new MockScope(Pt)}defaultReplyHeaders(Wt){if(typeof Wt==="undefined"){throw new un("headers must be defined")}this[sn]=Wt;return this}defaultReplyTrailers(Wt){if(typeof Wt==="undefined"){throw new un("trailers must be defined")}this[on]=Wt;return this}replyContentLength(){this[cn]=true;return this}}Wt.exports.MockInterceptor=MockInterceptor;Wt.exports.MockScope=MockScope},94004:(Wt,Pt,en)=>{"use strict";const{promisify:tn}=en(39023);const nn=en(35076);const{buildMockDispatch:an}=en(53397);const{kDispatches:rn,kMockAgent:In,kClose:sn,kOriginalClose:on,kOrigin:cn,kOriginalDispatch:dn,kConnected:un}=en(91117);const{MockInterceptor:pn}=en(31511);const mn=en(36443);const{InvalidArgumentError:bn}=en(68707);class MockPool extends nn{constructor(Wt,Pt){super(Wt,Pt);if(!Pt||!Pt.agent||typeof Pt.agent.dispatch!=="function"){throw new bn("Argument opts.agent must implement Agent")}this[In]=Pt.agent;this[cn]=Wt;this[rn]=[];this[un]=1;this[dn]=this.dispatch;this[on]=this.close.bind(this);this.dispatch=an.call(this);this.close=this[sn]}get[mn.kConnected](){return this[un]}intercept(Wt){return new pn(Wt,this[rn])}async[sn](){await tn(this[on])();this[un]=0;this[In][mn.kClients].delete(this[cn])}}Wt.exports=MockPool},91117:Wt=>{"use strict";Wt.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}},53397:(Wt,Pt,en)=>{"use strict";const{MockNotMatchedError:tn}=en(52429);const{kDispatches:nn,kMockAgent:an,kOriginalDispatch:rn,kOrigin:In,kGetNetConnect:sn}=en(91117);const{buildURL:on,nop:cn}=en(3440);const{STATUS_CODES:dn}=en(58611);const{types:{isPromise:un}}=en(39023);function matchValue(Wt,Pt){if(typeof Wt==="string"){return Wt===Pt}if(Wt instanceof RegExp){return Wt.test(Pt)}if(typeof Wt==="function"){return Wt(Pt)===true}return false}function lowerCaseEntries(Wt){return Object.fromEntries(Object.entries(Wt).map((([Wt,Pt])=>[Wt.toLocaleLowerCase(),Pt])))}function getHeaderByName(Wt,Pt){if(Array.isArray(Wt)){for(let en=0;en!Wt)).filter((({path:Wt})=>matchValue(safeUrl(Wt),nn)));if(an.length===0){throw new tn(`Mock dispatch not matched for path '${nn}'`)}an=an.filter((({method:Wt})=>matchValue(Wt,Pt.method)));if(an.length===0){throw new tn(`Mock dispatch not matched for method '${Pt.method}'`)}an=an.filter((({body:Wt})=>typeof Wt!=="undefined"?matchValue(Wt,Pt.body):true));if(an.length===0){throw new tn(`Mock dispatch not matched for body '${Pt.body}'`)}an=an.filter((Wt=>matchHeaders(Wt,Pt.headers)));if(an.length===0){throw new tn(`Mock dispatch not matched for headers '${typeof Pt.headers==="object"?JSON.stringify(Pt.headers):Pt.headers}'`)}return an[0]}function addMockDispatch(Wt,Pt,en){const tn={timesInvoked:0,times:1,persist:false,consumed:false};const nn=typeof en==="function"?{callback:en}:{...en};const an={...tn,...Pt,pending:true,data:{error:null,...nn}};Wt.push(an);return an}function deleteMockDispatch(Wt,Pt){const en=Wt.findIndex((Wt=>{if(!Wt.consumed){return false}return matchKey(Wt,Pt)}));if(en!==-1){Wt.splice(en,1)}}function buildKey(Wt){const{path:Pt,method:en,body:tn,headers:nn,query:an}=Wt;return{path:Pt,method:en,body:tn,headers:nn,query:an}}function generateKeyValues(Wt){return Object.entries(Wt).reduce(((Wt,[Pt,en])=>[...Wt,Buffer.from(`${Pt}`),Array.isArray(en)?en.map((Wt=>Buffer.from(`${Wt}`))):Buffer.from(`${en}`)]),[])}function getStatusText(Wt){return dn[Wt]||"unknown"}async function getResponse(Wt){const Pt=[];for await(const en of Wt){Pt.push(en)}return Buffer.concat(Pt).toString("utf8")}function mockDispatch(Wt,Pt){const en=buildKey(Wt);const tn=getMockDispatch(this[nn],en);tn.timesInvoked++;if(tn.data.callback){tn.data={...tn.data,...tn.data.callback(Wt)}}const{data:{statusCode:an,data:rn,headers:In,trailers:sn,error:on},delay:dn,persist:pn}=tn;const{timesInvoked:mn,times:bn}=tn;tn.consumed=!pn&&mn>=bn;tn.pending=mn0){setTimeout((()=>{handleReply(this[nn])}),dn)}else{handleReply(this[nn])}function handleReply(tn,nn=rn){const on=Array.isArray(Wt.headers)?buildHeadersFromArray(Wt.headers):Wt.headers;const dn=typeof nn==="function"?nn({...Wt,headers:on}):nn;if(un(dn)){dn.then((Wt=>handleReply(tn,Wt)));return}const pn=getResponseData(dn);const mn=generateKeyValues(In);const bn=generateKeyValues(sn);Pt.abort=cn;Pt.onHeaders(an,mn,resume,getStatusText(an));Pt.onData(Buffer.from(pn));Pt.onComplete(bn);deleteMockDispatch(tn,en)}function resume(){}return true}function buildMockDispatch(){const Wt=this[an];const Pt=this[In];const en=this[rn];return function dispatch(nn,an){if(Wt.isMockActive){try{mockDispatch.call(this,nn,an)}catch(rn){if(rn instanceof tn){const In=Wt[sn]();if(In===false){throw new tn(`${rn.message}: subsequent request to origin ${Pt} was not allowed (net.connect disabled)`)}if(checkNetConnect(In,Pt)){en.call(this,nn,an)}else{throw new tn(`${rn.message}: subsequent request to origin ${Pt} was not allowed (net.connect is not enabled for this origin)`)}}else{throw rn}}}else{en.call(this,nn,an)}}}function checkNetConnect(Wt,Pt){const en=new URL(Pt);if(Wt===true){return true}else if(Array.isArray(Wt)&&Wt.some((Wt=>matchValue(Wt,en.host)))){return true}return false}function buildMockOptions(Wt){if(Wt){const{agent:Pt,...en}=Wt;return en}}Wt.exports={getResponseData:getResponseData,getMockDispatch:getMockDispatch,addMockDispatch:addMockDispatch,deleteMockDispatch:deleteMockDispatch,buildKey:buildKey,generateKeyValues:generateKeyValues,matchValue:matchValue,getResponse:getResponse,getStatusText:getStatusText,mockDispatch:mockDispatch,buildMockDispatch:buildMockDispatch,checkNetConnect:checkNetConnect,buildMockOptions:buildMockOptions,getHeaderByName:getHeaderByName}},56142:(Wt,Pt,en)=>{"use strict";const{Transform:tn}=en(2203);const{Console:nn}=en(64236);Wt.exports=class PendingInterceptorsFormatter{constructor({disableColors:Wt}={}){this.transform=new tn({transform(Wt,Pt,en){en(null,Wt)}});this.logger=new nn({stdout:this.transform,inspectOptions:{colors:!Wt&&!process.env.CI}})}format(Wt){const Pt=Wt.map((({method:Wt,path:Pt,data:{statusCode:en},persist:tn,times:nn,timesInvoked:an,origin:rn})=>({Method:Wt,Origin:rn,Path:Pt,"Status code":en,Persistent:tn?"✅":"❌",Invocations:an,Remaining:tn?Infinity:nn-an})));this.logger.table(Pt);return this.transform.read().toString()}}},91529:Wt=>{"use strict";const Pt={pronoun:"it",is:"is",was:"was",this:"this"};const en={pronoun:"they",is:"are",was:"were",this:"these"};Wt.exports=class Pluralizer{constructor(Wt,Pt){this.singular=Wt;this.plural=Pt}pluralize(Wt){const tn=Wt===1;const nn=tn?Pt:en;const an=tn?this.singular:this.plural;return{...nn,count:Wt,noun:an}}}},34869:Wt=>{"use strict";const Pt=2048;const en=Pt-1;class FixedCircularBuffer{constructor(){this.bottom=0;this.top=0;this.list=new Array(Pt);this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&en)===this.bottom}push(Wt){this.list[this.top]=Wt;this.top=this.top+1&en}shift(){const Wt=this.list[this.bottom];if(Wt===undefined)return null;this.list[this.bottom]=undefined;this.bottom=this.bottom+1&en;return Wt}}Wt.exports=class FixedQueue{constructor(){this.head=this.tail=new FixedCircularBuffer}isEmpty(){return this.head.isEmpty()}push(Wt){if(this.head.isFull()){this.head=this.head.next=new FixedCircularBuffer}this.head.push(Wt)}shift(){const Wt=this.tail;const Pt=Wt.shift();if(Wt.isEmpty()&&Wt.next!==null){this.tail=Wt.next}return Pt}}},58640:(Wt,Pt,en)=>{"use strict";const tn=en(50001);const nn=en(34869);const{kConnected:an,kSize:rn,kRunning:In,kPending:sn,kQueued:on,kBusy:cn,kFree:dn,kUrl:un,kClose:pn,kDestroy:mn,kDispatch:bn}=en(36443);const Gn=en(24622);const hn=Symbol("clients");const Zn=Symbol("needDrain");const An=Symbol("queue");const Wn=Symbol("closed resolve");const Nn=Symbol("onDrain");const gn=Symbol("onConnect");const yn=Symbol("onDisconnect");const vn=Symbol("onConnectionError");const Yn=Symbol("get dispatcher");const En=Symbol("add client");const Vn=Symbol("remove client");const Rn=Symbol("stats");class PoolBase extends tn{constructor(){super();this[An]=new nn;this[hn]=[];this[on]=0;const Wt=this;this[Nn]=function onDrain(Pt,en){const tn=Wt[An];let nn=false;while(!nn){const Pt=tn.shift();if(!Pt){break}Wt[on]--;nn=!this.dispatch(Pt.opts,Pt.handler)}this[Zn]=nn;if(!this[Zn]&&Wt[Zn]){Wt[Zn]=false;Wt.emit("drain",Pt,[Wt,...en])}if(Wt[Wn]&&tn.isEmpty()){Promise.all(Wt[hn].map((Wt=>Wt.close()))).then(Wt[Wn])}};this[gn]=(Pt,en)=>{Wt.emit("connect",Pt,[Wt,...en])};this[yn]=(Pt,en,tn)=>{Wt.emit("disconnect",Pt,[Wt,...en],tn)};this[vn]=(Pt,en,tn)=>{Wt.emit("connectionError",Pt,[Wt,...en],tn)};this[Rn]=new Gn(this)}get[cn](){return this[Zn]}get[an](){return this[hn].filter((Wt=>Wt[an])).length}get[dn](){return this[hn].filter((Wt=>Wt[an]&&!Wt[Zn])).length}get[sn](){let Wt=this[on];for(const{[sn]:Pt}of this[hn]){Wt+=Pt}return Wt}get[In](){let Wt=0;for(const{[In]:Pt}of this[hn]){Wt+=Pt}return Wt}get[rn](){let Wt=this[on];for(const{[rn]:Pt}of this[hn]){Wt+=Pt}return Wt}get stats(){return this[Rn]}async[pn](){if(this[An].isEmpty()){return Promise.all(this[hn].map((Wt=>Wt.close())))}else{return new Promise((Wt=>{this[Wn]=Wt}))}}async[mn](Wt){while(true){const Pt=this[An].shift();if(!Pt){break}Pt.handler.onError(Wt)}return Promise.all(this[hn].map((Pt=>Pt.destroy(Wt))))}[bn](Wt,Pt){const en=this[Yn]();if(!en){this[Zn]=true;this[An].push({opts:Wt,handler:Pt});this[on]++}else if(!en.dispatch(Wt,Pt)){en[Zn]=true;this[Zn]=!this[Yn]()}return!this[Zn]}[En](Wt){Wt.on("drain",this[Nn]).on("connect",this[gn]).on("disconnect",this[yn]).on("connectionError",this[vn]);this[hn].push(Wt);if(this[Zn]){process.nextTick((()=>{if(this[Zn]){this[Nn](Wt[un],[this,Wt])}}))}return this}[Vn](Wt){Wt.close((()=>{const Pt=this[hn].indexOf(Wt);if(Pt!==-1){this[hn].splice(Pt,1)}}));this[Zn]=this[hn].some((Wt=>!Wt[Zn]&&Wt.closed!==true&&Wt.destroyed!==true))}}Wt.exports={PoolBase:PoolBase,kClients:hn,kNeedDrain:Zn,kAddClient:En,kRemoveClient:Vn,kGetDispatcher:Yn}},24622:(Wt,Pt,en)=>{const{kFree:tn,kConnected:nn,kPending:an,kQueued:rn,kRunning:In,kSize:sn}=en(36443);const on=Symbol("pool");class PoolStats{constructor(Wt){this[on]=Wt}get connected(){return this[on][nn]}get free(){return this[on][tn]}get pending(){return this[on][an]}get queued(){return this[on][rn]}get running(){return this[on][In]}get size(){return this[on][sn]}}Wt.exports=PoolStats},35076:(Wt,Pt,en)=>{"use strict";const{PoolBase:tn,kClients:nn,kNeedDrain:an,kAddClient:rn,kGetDispatcher:In}=en(58640);const sn=en(86197);const{InvalidArgumentError:on}=en(68707);const cn=en(3440);const{kUrl:dn,kInterceptors:un}=en(36443);const pn=en(59136);const mn=Symbol("options");const bn=Symbol("connections");const Gn=Symbol("factory");function defaultFactory(Wt,Pt){return new sn(Wt,Pt)}class Pool extends tn{constructor(Wt,{connections:Pt,factory:en=defaultFactory,connect:tn,connectTimeout:nn,tls:an,maxCachedSessions:rn,socketPath:In,autoSelectFamily:sn,autoSelectFamilyAttemptTimeout:hn,allowH2:Zn,...An}={}){super();if(Pt!=null&&(!Number.isFinite(Pt)||Pt<0)){throw new on("invalid connections")}if(typeof en!=="function"){throw new on("factory must be a function.")}if(tn!=null&&typeof tn!=="function"&&typeof tn!=="object"){throw new on("connect must be a function or an object")}if(typeof tn!=="function"){tn=pn({...an,maxCachedSessions:rn,allowH2:Zn,socketPath:In,timeout:nn,...cn.nodeHasAutoSelectFamily&&sn?{autoSelectFamily:sn,autoSelectFamilyAttemptTimeout:hn}:undefined,...tn})}this[un]=An.interceptors&&An.interceptors.Pool&&Array.isArray(An.interceptors.Pool)?An.interceptors.Pool:[];this[bn]=Pt||null;this[dn]=cn.parseOrigin(Wt);this[mn]={...cn.deepClone(An),connect:tn,allowH2:Zn};this[mn].interceptors=An.interceptors?{...An.interceptors}:undefined;this[Gn]=en}[In](){let Wt=this[nn].find((Wt=>!Wt[an]));if(Wt){return Wt}if(!this[bn]||this[nn].length{"use strict";const{kProxy:tn,kClose:nn,kDestroy:an,kInterceptors:rn}=en(36443);const{URL:In}=en(87016);const sn=en(59965);const on=en(35076);const cn=en(50001);const{InvalidArgumentError:dn,RequestAbortedError:un}=en(68707);const pn=en(59136);const mn=Symbol("proxy agent");const bn=Symbol("proxy client");const Gn=Symbol("proxy headers");const hn=Symbol("request tls settings");const Zn=Symbol("proxy tls settings");const An=Symbol("connect endpoint function");function defaultProtocolPort(Wt){return Wt==="https:"?443:80}function buildProxyOptions(Wt){if(typeof Wt==="string"){Wt={uri:Wt}}if(!Wt||!Wt.uri){throw new dn("Proxy opts.uri is mandatory")}return{uri:Wt.uri,protocol:Wt.protocol||"https"}}function defaultFactory(Wt,Pt){return new on(Wt,Pt)}class ProxyAgent extends cn{constructor(Wt){super(Wt);this[tn]=buildProxyOptions(Wt);this[mn]=new sn(Wt);this[rn]=Wt.interceptors&&Wt.interceptors.ProxyAgent&&Array.isArray(Wt.interceptors.ProxyAgent)?Wt.interceptors.ProxyAgent:[];if(typeof Wt==="string"){Wt={uri:Wt}}if(!Wt||!Wt.uri){throw new dn("Proxy opts.uri is mandatory")}const{clientFactory:Pt=defaultFactory}=Wt;if(typeof Pt!=="function"){throw new dn("Proxy opts.clientFactory must be a function.")}this[hn]=Wt.requestTls;this[Zn]=Wt.proxyTls;this[Gn]=Wt.headers||{};const en=new In(Wt.uri);const{origin:nn,port:an,host:on,username:cn,password:Wn}=en;if(Wt.auth&&Wt.token){throw new dn("opts.auth cannot be used in combination with opts.token")}else if(Wt.auth){this[Gn]["proxy-authorization"]=`Basic ${Wt.auth}`}else if(Wt.token){this[Gn]["proxy-authorization"]=Wt.token}else if(cn&&Wn){this[Gn]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(cn)}:${decodeURIComponent(Wn)}`).toString("base64")}`}const Nn=pn({...Wt.proxyTls});this[An]=pn({...Wt.requestTls});this[bn]=Pt(en,{connect:Nn});this[mn]=new sn({...Wt,connect:async(Wt,Pt)=>{let en=Wt.host;if(!Wt.port){en+=`:${defaultProtocolPort(Wt.protocol)}`}try{const{socket:tn,statusCode:rn}=await this[bn].connect({origin:nn,port:an,path:en,signal:Wt.signal,headers:{...this[Gn],host:on}});if(rn!==200){tn.on("error",(()=>{})).destroy();Pt(new un(`Proxy response (${rn}) !== 200 when HTTP Tunneling`))}if(Wt.protocol!=="https:"){Pt(null,tn);return}let In;if(this[hn]){In=this[hn].servername}else{In=Wt.servername}this[An]({...Wt,servername:In,httpSocket:tn},Pt)}catch(Wt){Pt(Wt)}}})}dispatch(Wt,Pt){const{host:en}=new In(Wt.origin);const tn=buildHeaders(Wt.headers);throwIfProxyAuthIsSent(tn);return this[mn].dispatch({...Wt,headers:{...tn,host:en}},Pt)}async[nn](){await this[mn].close();await this[bn].close()}async[an](){await this[mn].destroy();await this[bn].destroy()}}function buildHeaders(Wt){if(Array.isArray(Wt)){const Pt={};for(let en=0;enWt.toLowerCase()==="proxy-authorization"));if(Pt){throw new dn("Proxy-Authorization should be sent in ProxyAgent constructor")}}Wt.exports=ProxyAgent},28804:Wt=>{"use strict";let Pt=Date.now();let en;const tn=[];function onTimeout(){Pt=Date.now();let Wt=tn.length;let en=0;while(en0&&Pt>=nn.state){nn.state=-1;nn.callback(nn.opaque)}if(nn.state===-1){nn.state=-2;if(en!==Wt-1){tn[en]=tn.pop()}else{tn.pop()}Wt-=1}else{en+=1}}if(tn.length>0){refreshTimeout()}}function refreshTimeout(){if(en&&en.refresh){en.refresh()}else{clearTimeout(en);en=setTimeout(onTimeout,1e3);if(en.unref){en.unref()}}}class Timeout{constructor(Wt,Pt,en){this.callback=Wt;this.delay=Pt;this.opaque=en;this.state=-2;this.refresh()}refresh(){if(this.state===-2){tn.push(this);if(!en||tn.length===1){refreshTimeout()}}this.state=0}clear(){this.state=-1}}Wt.exports={setTimeout(Wt,Pt,en){return Pt<1e3?setTimeout(Wt,Pt,en):new Timeout(Wt,Pt,en)},clearTimeout(Wt){if(Wt instanceof Timeout){Wt.clear()}else{clearTimeout(Wt)}}}},68550:(Wt,Pt,en)=>{"use strict";const tn=en(31637);const{uid:nn,states:an}=en(45913);const{kReadyState:rn,kSentClose:In,kByteParser:sn,kReceivedClose:on}=en(62933);const{fireEvent:cn,failWebsocketConnection:dn}=en(3574);const{CloseEvent:un}=en(46255);const{makeRequest:pn}=en(25194);const{fetching:mn}=en(12315);const{Headers:bn}=en(26349);const{getGlobalDispatcher:Gn}=en(32581);const{kHeadersList:hn}=en(36443);const Zn={};Zn.open=tn.channel("undici:websocket:open");Zn.close=tn.channel("undici:websocket:close");Zn.socketError=tn.channel("undici:websocket:socket_error");let An;try{An=en(76982)}catch{}function establishWebSocketConnection(Wt,Pt,en,tn,an){const rn=Wt;rn.protocol=Wt.protocol==="ws:"?"http:":"https:";const In=pn({urlList:[rn],serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(an.headers){const Wt=new bn(an.headers)[hn];In.headersList=Wt}const sn=An.randomBytes(16).toString("base64");In.headersList.append("sec-websocket-key",sn);In.headersList.append("sec-websocket-version","13");for(const Wt of Pt){In.headersList.append("sec-websocket-protocol",Wt)}const on="";const cn=mn({request:In,useParallelQueue:true,dispatcher:an.dispatcher??Gn(),processResponse(Wt){if(Wt.type==="error"||Wt.status!==101){dn(en,"Received network error or non-101 status code.");return}if(Pt.length!==0&&!Wt.headersList.get("Sec-WebSocket-Protocol")){dn(en,"Server did not respond with sent protocols.");return}if(Wt.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){dn(en,'Server did not set Upgrade header to "websocket".');return}if(Wt.headersList.get("Connection")?.toLowerCase()!=="upgrade"){dn(en,'Server did not set Connection header to "upgrade".');return}const an=Wt.headersList.get("Sec-WebSocket-Accept");const rn=An.createHash("sha1").update(sn+nn).digest("base64");if(an!==rn){dn(en,"Incorrect hash received in Sec-WebSocket-Accept header.");return}const cn=Wt.headersList.get("Sec-WebSocket-Extensions");if(cn!==null&&cn!==on){dn(en,"Received different permessage-deflate than the one set.");return}const un=Wt.headersList.get("Sec-WebSocket-Protocol");if(un!==null&&un!==In.headersList.get("Sec-WebSocket-Protocol")){dn(en,"Protocol was not set in the opening handshake.");return}Wt.socket.on("data",onSocketData);Wt.socket.on("close",onSocketClose);Wt.socket.on("error",onSocketError);if(Zn.open.hasSubscribers){Zn.open.publish({address:Wt.socket.address(),protocol:un,extensions:cn})}tn(Wt)}});return cn}function onSocketData(Wt){if(!this.ws[sn].write(Wt)){this.pause()}}function onSocketClose(){const{ws:Wt}=this;const Pt=Wt[In]&&Wt[on];let en=1005;let tn="";const nn=Wt[sn].closingInfo;if(nn){en=nn.code??1005;tn=nn.reason}else if(!Wt[In]){en=1006}Wt[rn]=an.CLOSED;cn("close",Wt,un,{wasClean:Pt,code:en,reason:tn});if(Zn.close.hasSubscribers){Zn.close.publish({websocket:Wt,code:en,reason:tn})}}function onSocketError(Wt){const{ws:Pt}=this;Pt[rn]=an.CLOSING;if(Zn.socketError.hasSubscribers){Zn.socketError.publish(Wt)}this.destroy()}Wt.exports={establishWebSocketConnection:establishWebSocketConnection}},45913:Wt=>{"use strict";const Pt="258EAFA5-E914-47DA-95CA-C5AB0DC85B11";const en={enumerable:true,writable:false,configurable:false};const tn={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};const nn={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10};const an=2**16-1;const rn={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4};const In=Buffer.allocUnsafe(0);Wt.exports={uid:Pt,staticPropertyDescriptors:en,states:tn,opcodes:nn,maxUnsigned16Bit:an,parserStates:rn,emptyBuffer:In}},46255:(Wt,Pt,en)=>{"use strict";const{webidl:tn}=en(74222);const{kEnumerableProperty:nn}=en(3440);const{MessagePort:an}=en(28167);class MessageEvent extends Event{#r;constructor(Wt,Pt={}){tn.argumentLengthCheck(arguments,1,{header:"MessageEvent constructor"});Wt=tn.converters.DOMString(Wt);Pt=tn.converters.MessageEventInit(Pt);super(Wt,Pt);this.#r=Pt}get data(){tn.brandCheck(this,MessageEvent);return this.#r.data}get origin(){tn.brandCheck(this,MessageEvent);return this.#r.origin}get lastEventId(){tn.brandCheck(this,MessageEvent);return this.#r.lastEventId}get source(){tn.brandCheck(this,MessageEvent);return this.#r.source}get ports(){tn.brandCheck(this,MessageEvent);if(!Object.isFrozen(this.#r.ports)){Object.freeze(this.#r.ports)}return this.#r.ports}initMessageEvent(Wt,Pt=false,en=false,nn=null,an="",rn="",In=null,sn=[]){tn.brandCheck(this,MessageEvent);tn.argumentLengthCheck(arguments,1,{header:"MessageEvent.initMessageEvent"});return new MessageEvent(Wt,{bubbles:Pt,cancelable:en,data:nn,origin:an,lastEventId:rn,source:In,ports:sn})}}class CloseEvent extends Event{#r;constructor(Wt,Pt={}){tn.argumentLengthCheck(arguments,1,{header:"CloseEvent constructor"});Wt=tn.converters.DOMString(Wt);Pt=tn.converters.CloseEventInit(Pt);super(Wt,Pt);this.#r=Pt}get wasClean(){tn.brandCheck(this,CloseEvent);return this.#r.wasClean}get code(){tn.brandCheck(this,CloseEvent);return this.#r.code}get reason(){tn.brandCheck(this,CloseEvent);return this.#r.reason}}class ErrorEvent extends Event{#r;constructor(Wt,Pt){tn.argumentLengthCheck(arguments,1,{header:"ErrorEvent constructor"});super(Wt,Pt);Wt=tn.converters.DOMString(Wt);Pt=tn.converters.ErrorEventInit(Pt??{});this.#r=Pt}get message(){tn.brandCheck(this,ErrorEvent);return this.#r.message}get filename(){tn.brandCheck(this,ErrorEvent);return this.#r.filename}get lineno(){tn.brandCheck(this,ErrorEvent);return this.#r.lineno}get colno(){tn.brandCheck(this,ErrorEvent);return this.#r.colno}get error(){tn.brandCheck(this,ErrorEvent);return this.#r.error}}Object.defineProperties(MessageEvent.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:true},data:nn,origin:nn,lastEventId:nn,source:nn,ports:nn,initMessageEvent:nn});Object.defineProperties(CloseEvent.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:true},reason:nn,code:nn,wasClean:nn});Object.defineProperties(ErrorEvent.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:true},message:nn,filename:nn,lineno:nn,colno:nn,error:nn});tn.converters.MessagePort=tn.interfaceConverter(an);tn.converters["sequence"]=tn.sequenceConverter(tn.converters.MessagePort);const rn=[{key:"bubbles",converter:tn.converters.boolean,defaultValue:false},{key:"cancelable",converter:tn.converters.boolean,defaultValue:false},{key:"composed",converter:tn.converters.boolean,defaultValue:false}];tn.converters.MessageEventInit=tn.dictionaryConverter([...rn,{key:"data",converter:tn.converters.any,defaultValue:null},{key:"origin",converter:tn.converters.USVString,defaultValue:""},{key:"lastEventId",converter:tn.converters.DOMString,defaultValue:""},{key:"source",converter:tn.nullableConverter(tn.converters.MessagePort),defaultValue:null},{key:"ports",converter:tn.converters["sequence"],get defaultValue(){return[]}}]);tn.converters.CloseEventInit=tn.dictionaryConverter([...rn,{key:"wasClean",converter:tn.converters.boolean,defaultValue:false},{key:"code",converter:tn.converters["unsigned short"],defaultValue:0},{key:"reason",converter:tn.converters.USVString,defaultValue:""}]);tn.converters.ErrorEventInit=tn.dictionaryConverter([...rn,{key:"message",converter:tn.converters.DOMString,defaultValue:""},{key:"filename",converter:tn.converters.USVString,defaultValue:""},{key:"lineno",converter:tn.converters["unsigned long"],defaultValue:0},{key:"colno",converter:tn.converters["unsigned long"],defaultValue:0},{key:"error",converter:tn.converters.any}]);Wt.exports={MessageEvent:MessageEvent,CloseEvent:CloseEvent,ErrorEvent:ErrorEvent}},31237:(Wt,Pt,en)=>{"use strict";const{maxUnsigned16Bit:tn}=en(45913);let nn;try{nn=en(76982)}catch{}class WebsocketFrameSend{constructor(Wt){this.frameData=Wt;this.maskKey=nn.randomBytes(4)}createFrame(Wt){const Pt=this.frameData?.byteLength??0;let en=Pt;let nn=6;if(Pt>tn){nn+=8;en=127}else if(Pt>125){nn+=2;en=126}const an=Buffer.allocUnsafe(Pt+nn);an[0]=an[1]=0;an[0]|=128;an[0]=(an[0]&240)+Wt; +/*! ws. MIT License. Einar Otto Stangvik */an[nn-4]=this.maskKey[0];an[nn-3]=this.maskKey[1];an[nn-2]=this.maskKey[2];an[nn-1]=this.maskKey[3];an[1]=en;if(en===126){an.writeUInt16BE(Pt,2)}else if(en===127){an[2]=an[3]=0;an.writeUIntBE(Pt,4,6)}an[1]|=128;for(let Wt=0;Wt{"use strict";const{Writable:tn}=en(2203);const nn=en(31637);const{parserStates:an,opcodes:rn,states:In,emptyBuffer:sn}=en(45913);const{kReadyState:on,kSentClose:cn,kResponse:dn,kReceivedClose:un}=en(62933);const{isValidStatusCode:pn,failWebsocketConnection:mn,websocketMessageReceived:bn}=en(3574);const{WebsocketFrameSend:Gn}=en(31237);const hn={};hn.ping=nn.channel("undici:websocket:ping");hn.pong=nn.channel("undici:websocket:pong");class ByteParser extends tn{#I=[];#s=0;#o=an.INFO;#c={};#i=[];constructor(Wt){super();this.ws=Wt}_write(Wt,Pt,en){this.#I.push(Wt);this.#s+=Wt.length;this.run(en)}run(Wt){while(true){if(this.#o===an.INFO){if(this.#s<2){return Wt()}const Pt=this.consume(2);this.#c.fin=(Pt[0]&128)!==0;this.#c.opcode=Pt[0]&15;this.#c.originalOpcode??=this.#c.opcode;this.#c.fragmented=!this.#c.fin&&this.#c.opcode!==rn.CONTINUATION;if(this.#c.fragmented&&this.#c.opcode!==rn.BINARY&&this.#c.opcode!==rn.TEXT){mn(this.ws,"Invalid frame type was fragmented.");return}const en=Pt[1]&127;if(en<=125){this.#c.payloadLength=en;this.#o=an.READ_DATA}else if(en===126){this.#o=an.PAYLOADLENGTH_16}else if(en===127){this.#o=an.PAYLOADLENGTH_64}if(this.#c.fragmented&&en>125){mn(this.ws,"Fragmented frame exceeded 125 bytes.");return}else if((this.#c.opcode===rn.PING||this.#c.opcode===rn.PONG||this.#c.opcode===rn.CLOSE)&&en>125){mn(this.ws,"Payload length for control frame exceeded 125 bytes.");return}else if(this.#c.opcode===rn.CLOSE){if(en===1){mn(this.ws,"Received close frame with a 1-byte body.");return}const Wt=this.consume(en);this.#c.closeInfo=this.parseCloseBody(false,Wt);if(!this.ws[cn]){const Wt=Buffer.allocUnsafe(2);Wt.writeUInt16BE(this.#c.closeInfo.code,0);const Pt=new Gn(Wt);this.ws[dn].socket.write(Pt.createFrame(rn.CLOSE),(Wt=>{if(!Wt){this.ws[cn]=true}}))}this.ws[on]=In.CLOSING;this.ws[un]=true;this.end();return}else if(this.#c.opcode===rn.PING){const Pt=this.consume(en);if(!this.ws[un]){const Wt=new Gn(Pt);this.ws[dn].socket.write(Wt.createFrame(rn.PONG));if(hn.ping.hasSubscribers){hn.ping.publish({payload:Pt})}}this.#o=an.INFO;if(this.#s>0){continue}else{Wt();return}}else if(this.#c.opcode===rn.PONG){const Pt=this.consume(en);if(hn.pong.hasSubscribers){hn.pong.publish({payload:Pt})}if(this.#s>0){continue}else{Wt();return}}}else if(this.#o===an.PAYLOADLENGTH_16){if(this.#s<2){return Wt()}const Pt=this.consume(2);this.#c.payloadLength=Pt.readUInt16BE(0);this.#o=an.READ_DATA}else if(this.#o===an.PAYLOADLENGTH_64){if(this.#s<8){return Wt()}const Pt=this.consume(8);const en=Pt.readUInt32BE(0);if(en>2**31-1){mn(this.ws,"Received payload length > 2^31 bytes.");return}const tn=Pt.readUInt32BE(4);this.#c.payloadLength=(en<<8)+tn;this.#o=an.READ_DATA}else if(this.#o===an.READ_DATA){if(this.#s=this.#c.payloadLength){const Wt=this.consume(this.#c.payloadLength);this.#i.push(Wt);if(!this.#c.fragmented||this.#c.fin&&this.#c.opcode===rn.CONTINUATION){const Wt=Buffer.concat(this.#i);bn(this.ws,this.#c.originalOpcode,Wt);this.#c={};this.#i.length=0}this.#o=an.INFO}}if(this.#s>0){continue}else{Wt();break}}}consume(Wt){if(Wt>this.#s){return null}else if(Wt===0){return sn}if(this.#I[0].length===Wt){this.#s-=this.#I[0].length;return this.#I.shift()}const Pt=Buffer.allocUnsafe(Wt);let en=0;while(en!==Wt){const tn=this.#I[0];const{length:nn}=tn;if(nn+en===Wt){Pt.set(this.#I.shift(),en);break}else if(nn+en>Wt){Pt.set(tn.subarray(0,Wt-en),en);this.#I[0]=tn.subarray(Wt-en);break}else{Pt.set(this.#I.shift(),en);en+=tn.length}}this.#s-=Wt;return Pt}parseCloseBody(Wt,Pt){let en;if(Pt.length>=2){en=Pt.readUInt16BE(0)}if(Wt){if(!pn(en)){return null}return{code:en}}let tn=Pt.subarray(2);if(tn[0]===239&&tn[1]===187&&tn[2]===191){tn=tn.subarray(3)}if(en!==undefined&&!pn(en)){return null}try{tn=new TextDecoder("utf-8",{fatal:true}).decode(tn)}catch{return null}return{code:en,reason:tn}}get closingInfo(){return this.#c.closeInfo}}Wt.exports={ByteParser:ByteParser}},62933:Wt=>{"use strict";Wt.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}},3574:(Wt,Pt,en)=>{"use strict";const{kReadyState:tn,kController:nn,kResponse:an,kBinaryType:rn,kWebSocketURL:In}=en(62933);const{states:sn,opcodes:on}=en(45913);const{MessageEvent:cn,ErrorEvent:dn}=en(46255);function isEstablished(Wt){return Wt[tn]===sn.OPEN}function isClosing(Wt){return Wt[tn]===sn.CLOSING}function isClosed(Wt){return Wt[tn]===sn.CLOSED}function fireEvent(Wt,Pt,en=Event,tn){const nn=new en(Wt,tn);Pt.dispatchEvent(nn)}function websocketMessageReceived(Wt,Pt,en){if(Wt[tn]!==sn.OPEN){return}let nn;if(Pt===on.TEXT){try{nn=new TextDecoder("utf-8",{fatal:true}).decode(en)}catch{failWebsocketConnection(Wt,"Received invalid UTF-8 in text frame.");return}}else if(Pt===on.BINARY){if(Wt[rn]==="blob"){nn=new Blob([en])}else{nn=new Uint8Array(en).buffer}}fireEvent("message",Wt,cn,{origin:Wt[In].origin,data:nn})}function isValidSubprotocol(Wt){if(Wt.length===0){return false}for(const Pt of Wt){const Wt=Pt.charCodeAt(0);if(Wt<33||Wt>126||Pt==="("||Pt===")"||Pt==="<"||Pt===">"||Pt==="@"||Pt===","||Pt===";"||Pt===":"||Pt==="\\"||Pt==='"'||Pt==="/"||Pt==="["||Pt==="]"||Pt==="?"||Pt==="="||Pt==="{"||Pt==="}"||Wt===32||Wt===9){return false}}return true}function isValidStatusCode(Wt){if(Wt>=1e3&&Wt<1015){return Wt!==1004&&Wt!==1005&&Wt!==1006}return Wt>=3e3&&Wt<=4999}function failWebsocketConnection(Wt,Pt){const{[nn]:en,[an]:tn}=Wt;en.abort();if(tn?.socket&&!tn.socket.destroyed){tn.socket.destroy()}if(Pt){fireEvent("error",Wt,dn,{error:new Error(Pt)})}}Wt.exports={isEstablished:isEstablished,isClosing:isClosing,isClosed:isClosed,fireEvent:fireEvent,isValidSubprotocol:isValidSubprotocol,isValidStatusCode:isValidStatusCode,failWebsocketConnection:failWebsocketConnection,websocketMessageReceived:websocketMessageReceived}},55171:(Wt,Pt,en)=>{"use strict";const{webidl:tn}=en(74222);const{DOMException:nn}=en(87326);const{URLSerializer:an}=en(94322);const{getGlobalOrigin:rn}=en(75628);const{staticPropertyDescriptors:In,states:sn,opcodes:on,emptyBuffer:cn}=en(45913);const{kWebSocketURL:dn,kReadyState:un,kController:pn,kBinaryType:mn,kResponse:bn,kSentClose:Gn,kByteParser:hn}=en(62933);const{isEstablished:Zn,isClosing:An,isValidSubprotocol:Wn,failWebsocketConnection:Nn,fireEvent:gn}=en(3574);const{establishWebSocketConnection:yn}=en(68550);const{WebsocketFrameSend:vn}=en(31237);const{ByteParser:Yn}=en(43171);const{kEnumerableProperty:En,isBlobLike:Vn}=en(3440);const{getGlobalDispatcher:Rn}=en(32581);const{types:wn}=en(39023);let Fn=false;class WebSocket extends EventTarget{#d={open:null,error:null,close:null,message:null};#u=0;#p="";#m="";constructor(Wt,Pt=[]){super();tn.argumentLengthCheck(arguments,1,{header:"WebSocket constructor"});if(!Fn){Fn=true;process.emitWarning("WebSockets are experimental, expect them to change at any time.",{code:"UNDICI-WS"})}const en=tn.converters["DOMString or sequence or WebSocketInit"](Pt);Wt=tn.converters.USVString(Wt);Pt=en.protocols;const an=rn();let In;try{In=new URL(Wt,an)}catch(Wt){throw new nn(Wt,"SyntaxError")}if(In.protocol==="http:"){In.protocol="ws:"}else if(In.protocol==="https:"){In.protocol="wss:"}if(In.protocol!=="ws:"&&In.protocol!=="wss:"){throw new nn(`Expected a ws: or wss: protocol, got ${In.protocol}`,"SyntaxError")}if(In.hash||In.href.endsWith("#")){throw new nn("Got fragment","SyntaxError")}if(typeof Pt==="string"){Pt=[Pt]}if(Pt.length!==new Set(Pt.map((Wt=>Wt.toLowerCase()))).size){throw new nn("Invalid Sec-WebSocket-Protocol value","SyntaxError")}if(Pt.length>0&&!Pt.every((Wt=>Wn(Wt)))){throw new nn("Invalid Sec-WebSocket-Protocol value","SyntaxError")}this[dn]=new URL(In.href);this[pn]=yn(In,Pt,this,(Wt=>this.#b(Wt)),en);this[un]=WebSocket.CONNECTING;this[mn]="blob"}close(Wt=undefined,Pt=undefined){tn.brandCheck(this,WebSocket);if(Wt!==undefined){Wt=tn.converters["unsigned short"](Wt,{clamp:true})}if(Pt!==undefined){Pt=tn.converters.USVString(Pt)}if(Wt!==undefined){if(Wt!==1e3&&(Wt<3e3||Wt>4999)){throw new nn("invalid code","InvalidAccessError")}}let en=0;if(Pt!==undefined){en=Buffer.byteLength(Pt);if(en>123){throw new nn(`Reason must be less than 123 bytes; received ${en}`,"SyntaxError")}}if(this[un]===WebSocket.CLOSING||this[un]===WebSocket.CLOSED){}else if(!Zn(this)){Nn(this,"Connection was closed before it was established.");this[un]=WebSocket.CLOSING}else if(!An(this)){const tn=new vn;if(Wt!==undefined&&Pt===undefined){tn.frameData=Buffer.allocUnsafe(2);tn.frameData.writeUInt16BE(Wt,0)}else if(Wt!==undefined&&Pt!==undefined){tn.frameData=Buffer.allocUnsafe(2+en);tn.frameData.writeUInt16BE(Wt,0);tn.frameData.write(Pt,2,"utf-8")}else{tn.frameData=cn}const nn=this[bn].socket;nn.write(tn.createFrame(on.CLOSE),(Wt=>{if(!Wt){this[Gn]=true}}));this[un]=sn.CLOSING}else{this[un]=WebSocket.CLOSING}}send(Wt){tn.brandCheck(this,WebSocket);tn.argumentLengthCheck(arguments,1,{header:"WebSocket.send"});Wt=tn.converters.WebSocketSendData(Wt);if(this[un]===WebSocket.CONNECTING){throw new nn("Sent before connected.","InvalidStateError")}if(!Zn(this)||An(this)){return}const Pt=this[bn].socket;if(typeof Wt==="string"){const en=Buffer.from(Wt);const tn=new vn(en);const nn=tn.createFrame(on.TEXT);this.#u+=en.byteLength;Pt.write(nn,(()=>{this.#u-=en.byteLength}))}else if(wn.isArrayBuffer(Wt)){const en=Buffer.from(Wt);const tn=new vn(en);const nn=tn.createFrame(on.BINARY);this.#u+=en.byteLength;Pt.write(nn,(()=>{this.#u-=en.byteLength}))}else if(ArrayBuffer.isView(Wt)){const en=Buffer.from(Wt,Wt.byteOffset,Wt.byteLength);const tn=new vn(en);const nn=tn.createFrame(on.BINARY);this.#u+=en.byteLength;Pt.write(nn,(()=>{this.#u-=en.byteLength}))}else if(Vn(Wt)){const en=new vn;Wt.arrayBuffer().then((Wt=>{const tn=Buffer.from(Wt);en.frameData=tn;const nn=en.createFrame(on.BINARY);this.#u+=tn.byteLength;Pt.write(nn,(()=>{this.#u-=tn.byteLength}))}))}}get readyState(){tn.brandCheck(this,WebSocket);return this[un]}get bufferedAmount(){tn.brandCheck(this,WebSocket);return this.#u}get url(){tn.brandCheck(this,WebSocket);return an(this[dn])}get extensions(){tn.brandCheck(this,WebSocket);return this.#m}get protocol(){tn.brandCheck(this,WebSocket);return this.#p}get onopen(){tn.brandCheck(this,WebSocket);return this.#d.open}set onopen(Wt){tn.brandCheck(this,WebSocket);if(this.#d.open){this.removeEventListener("open",this.#d.open)}if(typeof Wt==="function"){this.#d.open=Wt;this.addEventListener("open",Wt)}else{this.#d.open=null}}get onerror(){tn.brandCheck(this,WebSocket);return this.#d.error}set onerror(Wt){tn.brandCheck(this,WebSocket);if(this.#d.error){this.removeEventListener("error",this.#d.error)}if(typeof Wt==="function"){this.#d.error=Wt;this.addEventListener("error",Wt)}else{this.#d.error=null}}get onclose(){tn.brandCheck(this,WebSocket);return this.#d.close}set onclose(Wt){tn.brandCheck(this,WebSocket);if(this.#d.close){this.removeEventListener("close",this.#d.close)}if(typeof Wt==="function"){this.#d.close=Wt;this.addEventListener("close",Wt)}else{this.#d.close=null}}get onmessage(){tn.brandCheck(this,WebSocket);return this.#d.message}set onmessage(Wt){tn.brandCheck(this,WebSocket);if(this.#d.message){this.removeEventListener("message",this.#d.message)}if(typeof Wt==="function"){this.#d.message=Wt;this.addEventListener("message",Wt)}else{this.#d.message=null}}get binaryType(){tn.brandCheck(this,WebSocket);return this[mn]}set binaryType(Wt){tn.brandCheck(this,WebSocket);if(Wt!=="blob"&&Wt!=="arraybuffer"){this[mn]="blob"}else{this[mn]=Wt}}#b(Wt){this[bn]=Wt;const Pt=new Yn(this);Pt.on("drain",(function onParserDrain(){this.ws[bn].socket.resume()}));Wt.socket.ws=this;this[hn]=Pt;this[un]=sn.OPEN;const en=Wt.headersList.get("sec-websocket-extensions");if(en!==null){this.#m=en}const tn=Wt.headersList.get("sec-websocket-protocol");if(tn!==null){this.#p=tn}gn("open",this)}}WebSocket.CONNECTING=WebSocket.prototype.CONNECTING=sn.CONNECTING;WebSocket.OPEN=WebSocket.prototype.OPEN=sn.OPEN;WebSocket.CLOSING=WebSocket.prototype.CLOSING=sn.CLOSING;WebSocket.CLOSED=WebSocket.prototype.CLOSED=sn.CLOSED;Object.defineProperties(WebSocket.prototype,{CONNECTING:In,OPEN:In,CLOSING:In,CLOSED:In,url:En,readyState:En,bufferedAmount:En,onopen:En,onerror:En,onclose:En,close:En,onmessage:En,binaryType:En,send:En,extensions:En,protocol:En,[Symbol.toStringTag]:{value:"WebSocket",writable:false,enumerable:false,configurable:true}});Object.defineProperties(WebSocket,{CONNECTING:In,OPEN:In,CLOSING:In,CLOSED:In});tn.converters["sequence"]=tn.sequenceConverter(tn.converters.DOMString);tn.converters["DOMString or sequence"]=function(Wt){if(tn.util.Type(Wt)==="Object"&&Symbol.iterator in Wt){return tn.converters["sequence"](Wt)}return tn.converters.DOMString(Wt)};tn.converters.WebSocketInit=tn.dictionaryConverter([{key:"protocols",converter:tn.converters["DOMString or sequence"],get defaultValue(){return[]}},{key:"dispatcher",converter:Wt=>Wt,get defaultValue(){return Rn()}},{key:"headers",converter:tn.nullableConverter(tn.converters.HeadersInit)}]);tn.converters["DOMString or sequence or WebSocketInit"]=function(Wt){if(tn.util.Type(Wt)==="Object"&&!(Symbol.iterator in Wt)){return tn.converters.WebSocketInit(Wt)}return{protocols:tn.converters["DOMString or sequence"](Wt)}};tn.converters.WebSocketSendData=function(Wt){if(tn.util.Type(Wt)==="Object"){if(Vn(Wt)){return tn.converters.Blob(Wt,{strict:false})}if(ArrayBuffer.isView(Wt)||wn.isAnyArrayBuffer(Wt)){return tn.converters.BufferSource(Wt)}}return tn.converters.USVString(Wt)};Wt.exports={WebSocket:WebSocket}},33843:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});function getUserAgent(){if(typeof navigator==="object"&&"userAgent"in navigator){return navigator.userAgent}if(typeof process==="object"&&process.version!==undefined){return`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`}return""}Pt.getUserAgent=getUserAgent},97291:(Wt,Pt,en)=>{"use strict";var tn=en(76120),nn=en(50617),an=/^[\x00-\x20\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+/,rn=/[\n\r\t]/g,In=/^[A-Za-z][A-Za-z0-9+-.]*:\/\//,sn=/:\d+$/,on=/^([a-z][a-z0-9.+-]*:)?(\/\/)?([\\/]+)?([\S\s]*)/i,cn=/^[a-zA-Z]:/;function trimLeft(Wt){return(Wt?Wt:"").toString().replace(an,"")}var dn=[["#","hash"],["?","query"],function sanitize(Wt,Pt){return isSpecial(Pt.protocol)?Wt.replace(/\\/g,"/"):Wt},["/","pathname"],["@","auth",1],[NaN,"host",undefined,1,1],[/:(\d*)$/,"port",undefined,1],[NaN,"hostname",undefined,1,1]];var un={hash:1,query:1};function lolcation(Wt){var Pt;if(typeof window!=="undefined")Pt=window;else if(typeof global!=="undefined")Pt=global;else if(typeof self!=="undefined")Pt=self;else Pt={};var en=Pt.location||{};Wt=Wt||en;var tn={},nn=typeof Wt,an;if("blob:"===Wt.protocol){tn=new Url(unescape(Wt.pathname),{})}else if("string"===nn){tn=new Url(Wt,{});for(an in un)delete tn[an]}else if("object"===nn){for(an in Wt){if(an in un)continue;tn[an]=Wt[an]}if(tn.slashes===undefined){tn.slashes=In.test(Wt.href)}}return tn}function isSpecial(Wt){return Wt==="file:"||Wt==="ftp:"||Wt==="http:"||Wt==="https:"||Wt==="ws:"||Wt==="wss:"}function extractProtocol(Wt,Pt){Wt=trimLeft(Wt);Wt=Wt.replace(rn,"");Pt=Pt||{};var en=on.exec(Wt);var tn=en[1]?en[1].toLowerCase():"";var nn=!!en[2];var an=!!en[3];var In=0;var sn;if(nn){if(an){sn=en[2]+en[3]+en[4];In=en[2].length+en[3].length}else{sn=en[2]+en[4];In=en[2].length}}else{if(an){sn=en[3]+en[4];In=en[3].length}else{sn=en[4]}}if(tn==="file:"){if(In>=2){sn=sn.slice(2)}}else if(isSpecial(tn)){sn=en[4]}else if(tn){if(nn){sn=sn.slice(2)}}else if(In>=2&&isSpecial(Pt.protocol)){sn=en[4]}return{protocol:tn,slashes:nn||isSpecial(tn),slashesCount:In,rest:sn}}function resolve(Wt,Pt){if(Wt==="")return Pt;var en=(Pt||"/").split("/").slice(0,-1).concat(Wt.split("/")),tn=en.length,nn=en[tn-1],an=false,rn=0;while(tn--){if(en[tn]==="."){en.splice(tn,1)}else if(en[tn]===".."){en.splice(tn,1);rn++}else if(rn){if(tn===0)an=true;en.splice(tn,1);rn--}}if(an)en.unshift("");if(nn==="."||nn==="..")en.push("");return en.join("/")}function Url(Wt,Pt,en){Wt=trimLeft(Wt);Wt=Wt.replace(rn,"");if(!(this instanceof Url)){return new Url(Wt,Pt,en)}var an,In,sn,on,un,pn,mn=dn.slice(),bn=typeof Pt,Gn=this,hn=0;if("object"!==bn&&"string"!==bn){en=Pt;Pt=null}if(en&&"function"!==typeof en)en=nn.parse;Pt=lolcation(Pt);In=extractProtocol(Wt||"",Pt);an=!In.protocol&&!In.slashes;Gn.slashes=In.slashes||an&&Pt.slashes;Gn.protocol=In.protocol||Pt.protocol||"";Wt=In.rest;if(In.protocol==="file:"&&(In.slashesCount!==2||cn.test(Wt))||!In.slashes&&(In.protocol||In.slashesCount<2||!isSpecial(Gn.protocol))){mn[3]=[/(.*)/,"pathname"]}for(;hn{"use strict";const tn=en(87878);const{NAMESPACES:nn}=en(10142);function generatePrefix(Wt,Pt,en){const tn=`ns${en}`;Wt[Pt]=[tn];return tn}function preferredPrefixString(Wt,Pt,en){const tn=Wt[Pt];if(!tn){return null}if(tn.includes(en)){return en}return tn[tn.length-1]}function serializeAttributeValue(Wt){if(Wt===null){return""}return Wt.replace(/&/gu,"&").replace(/"/gu,""").replace(//gu,">").replace(/\t/gu," ").replace(/\n/gu," ").replace(/\r/gu," ")}function serializeAttributes(Wt,Pt,en,an,rn,In){let sn="";const on=Object.create(null);for(const cn of Wt.attributes){if(rn&&on[cn.namespaceURI]&&on[cn.namespaceURI].has(cn.localName)){throw new Error("Found duplicated attribute")}if(!on[cn.namespaceURI]){on[cn.namespaceURI]=new Set}on[cn.namespaceURI].add(cn.localName);const Wt=cn.namespaceURI;let dn=null;if(Wt!==null){dn=preferredPrefixString(Pt,Wt,cn.prefix);if(Wt===nn.XMLNS){if(cn.value===nn.XML||cn.prefix===null&&an||cn.prefix!==null&&en[cn.localName]!==cn.value&&Pt[cn.value].includes(cn.localName)){continue}if(rn&&cn.value===nn.XMLNS){throw new Error("The XMLNS namespace is reserved and cannot be applied as an element's namespace via XML parsing")}if(rn&&cn.value===""){throw new Error("Namespace prefix declarations cannot be used to undeclare a namespace")}if(cn.prefix==="xmlns"){dn="xmlns"}}else if(dn===null){dn=generatePrefix(Pt,Wt,In.prefixIndex++);sn+=` xmlns:${dn}="${serializeAttributeValue(Wt,rn)}"`}}sn+=" ";if(dn!==null){sn+=`${dn}:`}if(rn&&(cn.localName.includes(":")||!tn.name(cn.localName)||cn.localName==="xmlns"&&Wt===null)){throw new Error("Invalid attribute localName value")}sn+=`${cn.localName}="${serializeAttributeValue(cn.value,rn)}"`}return sn}Wt.exports.preferredPrefixString=preferredPrefixString;Wt.exports.generatePrefix=generatePrefix;Wt.exports.serializeAttributeValue=serializeAttributeValue;Wt.exports.serializeAttributes=serializeAttributes},10142:Wt=>{"use strict";Wt.exports.NAMESPACES={HTML:"http://www.w3.org/1999/xhtml",XML:"http://www.w3.org/XML/1998/namespace",XMLNS:"http://www.w3.org/2000/xmlns/"};Wt.exports.NODE_TYPES={ELEMENT_NODE:1,ATTRIBUTE_NODE:2,TEXT_NODE:3,CDATA_SECTION_NODE:4,ENTITY_REFERENCE_NODE:5,ENTITY_NODE:6,PROCESSING_INSTRUCTION_NODE:7,COMMENT_NODE:8,DOCUMENT_NODE:9,DOCUMENT_TYPE_NODE:10,DOCUMENT_FRAGMENT_NODE:11,NOTATION_NODE:12};Wt.exports.VOID_ELEMENTS=new Set(["area","base","basefont","bgsound","br","col","embed","frame","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"])},3481:(Wt,Pt,en)=>{"use strict";const tn=en(87878);const nn=en(75394);const{NAMESPACES:an,VOID_ELEMENTS:rn,NODE_TYPES:In}=en(10142);const sn=/^(\x09|\x0A|\x0D|[\x20-\uD7FF]|[\uE000-\uFFFD]|[\u{10000}-\u{10FFFF}])*$/u;const on=/^(\x20|\x0D|\x0A|[a-zA-Z0-9]|[-'()+,./:=?;!*#@$_%])*$/u;function asciiCaseInsensitiveMatch(Wt,Pt){if(Wt.length!==Pt.length){return false}for(let en=0;en`}function serializeProcessingInstruction(Wt,Pt,en,tn){if(tn&&(Wt.target.includes(":")||asciiCaseInsensitiveMatch(Wt.target,"xml"))){throw new Error("Failed to serialize XML: processing instruction node target is not well-formed.")}if(tn&&(!sn.test(Wt.data)||Wt.data.includes("?>"))){throw new Error("Failed to serialize XML: processing instruction node data is not well-formed.")}return``}function serializeDocument(Wt,Pt,en,tn,nn){if(tn&&Wt.documentElement===null){throw new Error("Failed to serialize XML: document does not have a document element.")}let an="";for(const rn of Wt.childNodes){an+=xmlSerialization(rn,Pt,en,tn,nn)}return an}function serializeDocumentFragment(Wt,Pt,en,tn,nn){let an="";for(const rn of Wt.childNodes){an+=xmlSerialization(rn,Pt,en,tn,nn)}return an}function serializeText(Wt,Pt,en,tn){if(tn&&!sn.test(Wt.data)){throw new Error("Failed to serialize XML: text node data is not well-formed.")}return Wt.data.replace(/&/gu,"&").replace(//gu,">")}function serializeComment(Wt,Pt,en,tn){if(tn&&!sn.test(Wt.data)){throw new Error("Failed to serialize XML: comment node data is not well-formed.")}if(tn&&(Wt.data.includes("--")||Wt.data.endsWith("-"))){throw new Error("Failed to serialize XML: found hyphens in illegal places in comment node data.")}return`\x3c!--${Wt.data}--\x3e`}function serializeElement(Wt,Pt,en,In,sn){if(In&&(Wt.localName.includes(":")||!tn.name(Wt.localName))){throw new Error("Failed to serialize XML: element node localName is not a valid XML name.")}let on="<";let cn="";let dn=false;let un=false;const pn={...en};const mn=Object.create(null);const bn=recordNamespaceInformation(Wt,pn,mn);let Gn=Pt;const hn=Wt.namespaceURI;if(Gn===hn){if(bn!==null){un=true}if(hn===an.XML){cn=`xml:${Wt.localName}`}else{cn=Wt.localName}on+=cn}else{let{prefix:Pt}=Wt;let en=nn.preferredPrefixString(pn,hn,Pt);if(Pt==="xmlns"){if(In){throw new Error('Failed to serialize XML: element nodes can\'t have a prefix of "xmlns".')}en="xmlns"}if(en!==null){cn=`${en}:${Wt.localName}`;if(bn!==null&&bn!==an.XML){Gn=bn===""?null:bn}on+=cn}else if(Pt!==null){if(Pt in mn){Pt=nn.generatePrefix(pn,hn,sn.prefixIndex++)}if(pn[hn]){pn[hn].push(Pt)}else{pn[hn]=[Pt]}cn=`${Pt}:${Wt.localName}`;on+=`${cn} xmlns:${Pt}="${nn.serializeAttributeValue(hn,In)}"`;if(bn!==null){Gn=bn===""?null:bn}}else if(bn===null||bn!==hn){un=true;cn=Wt.localName;Gn=hn;on+=`${cn} xmlns="${nn.serializeAttributeValue(hn,In)}"`}else{cn=Wt.localName;Gn=hn;on+=cn}}on+=nn.serializeAttributes(Wt,pn,mn,un,In,sn);if(hn===an.HTML&&Wt.childNodes.length===0&&rn.has(Wt.localName)){on+=" /";dn=true}else if(hn!==an.HTML&&Wt.childNodes.length===0){on+="/";dn=true}on+=">";if(dn){return on}if(hn===an.HTML&&Wt.localName==="template"){on+=xmlSerialization(Wt.content,Gn,pn,In,sn)}else{for(const Pt of Wt.childNodes){on+=xmlSerialization(Pt,Gn,pn,In,sn)}}on+=``;return on}function serializeCDATASection(Wt){return``}function xmlSerialization(Wt,Pt,en,tn,nn){switch(Wt.nodeType){case In.ELEMENT_NODE:return serializeElement(Wt,Pt,en,tn,nn);case In.DOCUMENT_NODE:return serializeDocument(Wt,Pt,en,tn,nn);case In.COMMENT_NODE:return serializeComment(Wt,Pt,en,tn);case In.TEXT_NODE:return serializeText(Wt,Pt,en,tn);case In.DOCUMENT_FRAGMENT_NODE:return serializeDocumentFragment(Wt,Pt,en,tn,nn);case In.DOCUMENT_TYPE_NODE:return serializeDocumentType(Wt,Pt,en,tn);case In.PROCESSING_INSTRUCTION_NODE:return serializeProcessingInstruction(Wt,Pt,en,tn);case In.ATTRIBUTE_NODE:return"";case In.CDATA_SECTION_NODE:return serializeCDATASection(Wt);default:throw new TypeError("Failed to serialize XML: only Nodes can be serialized.")}}Wt.exports=(Wt,{requireWellFormed:Pt=false}={})=>{const en=Object.create(null);en["http://www.w3.org/XML/1998/namespace"]=["xml"];return xmlSerialization(Wt,null,en,Pt,{prefixIndex:1})}},37125:(Wt,Pt)=>{"use strict";function makeException(Wt,Pt,en){if(en.globals){Wt=en.globals[Wt.name]}return new Wt(`${en.context?en.context:"Value"} ${Pt}.`)}function toNumber(Wt,Pt){if(typeof Wt==="bigint"){throw makeException(TypeError,"is a BigInt which cannot be converted to a number",Pt)}if(!Pt.globals){return Number(Wt)}return Pt.globals.Number(Wt)}function evenRound(Wt){if(Wt>0&&Wt%1===+.5&&(Wt&1)===0||Wt<0&&Wt%1===-.5&&(Wt&1)===1){return censorNegativeZero(Math.floor(Wt))}return censorNegativeZero(Math.round(Wt))}function integerPart(Wt){return censorNegativeZero(Math.trunc(Wt))}function sign(Wt){return Wt<0?-1:1}function modulo(Wt,Pt){const en=Wt%Pt;if(sign(Pt)!==sign(en)){return en+Pt}return en}function censorNegativeZero(Wt){return Wt===0?0:Wt}function createIntegerConversion(Wt,{unsigned:Pt}){let en,tn;if(Pt){en=0;tn=2**Wt-1}else{en=-(2**(Wt-1));tn=2**(Wt-1)-1}const nn=2**Wt;const an=2**(Wt-1);return(Wt,rn={})=>{let In=toNumber(Wt,rn);In=censorNegativeZero(In);if(rn.enforceRange){if(!Number.isFinite(In)){throw makeException(TypeError,"is not a finite number",rn)}In=integerPart(In);if(Intn){throw makeException(TypeError,`is outside the accepted range of ${en} to ${tn}, inclusive`,rn)}return In}if(!Number.isNaN(In)&&rn.clamp){In=Math.min(Math.max(In,en),tn);In=evenRound(In);return In}if(!Number.isFinite(In)||In===0){return 0}In=integerPart(In);if(In>=en&&In<=tn){return In}In=modulo(In,nn);if(!Pt&&In>=an){return In-nn}return In}}function createLongLongConversion(Wt,{unsigned:Pt}){const en=Number.MAX_SAFE_INTEGER;const tn=Pt?0:Number.MIN_SAFE_INTEGER;const nn=Pt?BigInt.asUintN:BigInt.asIntN;return(Pt,an={})=>{let rn=toNumber(Pt,an);rn=censorNegativeZero(rn);if(an.enforceRange){if(!Number.isFinite(rn)){throw makeException(TypeError,"is not a finite number",an)}rn=integerPart(rn);if(rnen){throw makeException(TypeError,`is outside the accepted range of ${tn} to ${en}, inclusive`,an)}return rn}if(!Number.isNaN(rn)&&an.clamp){rn=Math.min(Math.max(rn,tn),en);rn=evenRound(rn);return rn}if(!Number.isFinite(rn)||rn===0){return 0}let In=BigInt(integerPart(rn));In=nn(Wt,In);return Number(In)}}Pt.any=Wt=>Wt;Pt.undefined=()=>undefined;Pt.boolean=Wt=>Boolean(Wt);Pt.byte=createIntegerConversion(8,{unsigned:false});Pt.octet=createIntegerConversion(8,{unsigned:true});Pt.short=createIntegerConversion(16,{unsigned:false});Pt["unsigned short"]=createIntegerConversion(16,{unsigned:true});Pt.long=createIntegerConversion(32,{unsigned:false});Pt["unsigned long"]=createIntegerConversion(32,{unsigned:true});Pt["long long"]=createLongLongConversion(64,{unsigned:false});Pt["unsigned long long"]=createLongLongConversion(64,{unsigned:true});Pt.double=(Wt,Pt={})=>{const en=toNumber(Wt,Pt);if(!Number.isFinite(en)){throw makeException(TypeError,"is not a finite floating-point value",Pt)}return en};Pt["unrestricted double"]=(Wt,Pt={})=>{const en=toNumber(Wt,Pt);return en};Pt.float=(Wt,Pt={})=>{const en=toNumber(Wt,Pt);if(!Number.isFinite(en)){throw makeException(TypeError,"is not a finite floating-point value",Pt)}if(Object.is(en,-0)){return en}const tn=Math.fround(en);if(!Number.isFinite(tn)){throw makeException(TypeError,"is outside the range of a single-precision floating-point value",Pt)}return tn};Pt["unrestricted float"]=(Wt,Pt={})=>{const en=toNumber(Wt,Pt);if(isNaN(en)){return en}if(Object.is(en,-0)){return en}return Math.fround(en)};Pt.DOMString=(Wt,Pt={})=>{if(Pt.treatNullAsEmptyString&&Wt===null){return""}if(typeof Wt==="symbol"){throw makeException(TypeError,"is a symbol, which cannot be converted to a string",Pt)}const en=Pt.globals?Pt.globals.String:String;return en(Wt)};Pt.ByteString=(Wt,en={})=>{const tn=Pt.DOMString(Wt,en);let nn;for(let Wt=0;(nn=tn.codePointAt(Wt))!==undefined;++Wt){if(nn>255){throw makeException(TypeError,"is not a valid ByteString",en)}}return tn};Pt.USVString=(Wt,en={})=>{const tn=Pt.DOMString(Wt,en);const nn=tn.length;const an=[];for(let Wt=0;Wt57343){an.push(String.fromCodePoint(Pt))}else if(56320<=Pt&&Pt<=57343){an.push(String.fromCodePoint(65533))}else if(Wt===nn-1){an.push(String.fromCodePoint(65533))}else{const en=tn.charCodeAt(Wt+1);if(56320<=en&&en<=57343){const tn=Pt&1023;const nn=en&1023;an.push(String.fromCodePoint((2<<15)+(2<<9)*tn+nn));++Wt}else{an.push(String.fromCodePoint(65533))}}}return an.join("")};Pt.object=(Wt,Pt={})=>{if(Wt===null||typeof Wt!=="object"&&typeof Wt!=="function"){throw makeException(TypeError,"is not an object",Pt)}return Wt};const en=Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get;const tn=typeof SharedArrayBuffer==="function"?Object.getOwnPropertyDescriptor(SharedArrayBuffer.prototype,"byteLength").get:null;function isNonSharedArrayBuffer(Wt){try{en.call(Wt);return true}catch{return false}}function isSharedArrayBuffer(Wt){try{tn.call(Wt);return true}catch{return false}}function isArrayBufferDetached(Wt){try{new Uint8Array(Wt);return false}catch{return true}}Pt.ArrayBuffer=(Wt,Pt={})=>{if(!isNonSharedArrayBuffer(Wt)){if(Pt.allowShared&&!isSharedArrayBuffer(Wt)){throw makeException(TypeError,"is not an ArrayBuffer or SharedArrayBuffer",Pt)}throw makeException(TypeError,"is not an ArrayBuffer",Pt)}if(isArrayBufferDetached(Wt)){throw makeException(TypeError,"is a detached ArrayBuffer",Pt)}return Wt};const nn=Object.getOwnPropertyDescriptor(DataView.prototype,"byteLength").get;Pt.DataView=(Wt,Pt={})=>{try{nn.call(Wt)}catch(Wt){throw makeException(TypeError,"is not a DataView",Pt)}if(!Pt.allowShared&&isSharedArrayBuffer(Wt.buffer)){throw makeException(TypeError,"is backed by a SharedArrayBuffer, which is not allowed",Pt)}if(isArrayBufferDetached(Wt.buffer)){throw makeException(TypeError,"is backed by a detached ArrayBuffer",Pt)}return Wt};const an=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Uint8Array).prototype,Symbol.toStringTag).get;[Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Uint8ClampedArray,Float32Array,Float64Array].forEach((Wt=>{const{name:en}=Wt;const tn=/^[AEIOU]/u.test(en)?"an":"a";Pt[en]=(Wt,Pt={})=>{if(!ArrayBuffer.isView(Wt)||an.call(Wt)!==en){throw makeException(TypeError,`is not ${tn} ${en} object`,Pt)}if(!Pt.allowShared&&isSharedArrayBuffer(Wt.buffer)){throw makeException(TypeError,"is a view on a SharedArrayBuffer, which is not allowed",Pt)}if(isArrayBufferDetached(Wt.buffer)){throw makeException(TypeError,"is a view on a detached ArrayBuffer",Pt)}return Wt}}));Pt.ArrayBufferView=(Wt,Pt={})=>{if(!ArrayBuffer.isView(Wt)){throw makeException(TypeError,"is not a view on an ArrayBuffer or SharedArrayBuffer",Pt)}if(!Pt.allowShared&&isSharedArrayBuffer(Wt.buffer)){throw makeException(TypeError,"is a view on a SharedArrayBuffer, which is not allowed",Pt)}if(isArrayBufferDetached(Wt.buffer)){throw makeException(TypeError,"is a view on a detached ArrayBuffer",Pt)}return Wt};Pt.BufferSource=(Wt,Pt={})=>{if(ArrayBuffer.isView(Wt)){if(!Pt.allowShared&&isSharedArrayBuffer(Wt.buffer)){throw makeException(TypeError,"is a view on a SharedArrayBuffer, which is not allowed",Pt)}if(isArrayBufferDetached(Wt.buffer)){throw makeException(TypeError,"is a view on a detached ArrayBuffer",Pt)}return Wt}if(!Pt.allowShared&&!isNonSharedArrayBuffer(Wt)){throw makeException(TypeError,"is not an ArrayBuffer or a view on one",Pt)}if(Pt.allowShared&&!isSharedArrayBuffer(Wt)&&!isNonSharedArrayBuffer(Wt)){throw makeException(TypeError,"is not an ArrayBuffer, SharedArrayBuffer, or a view on one",Pt)}if(isArrayBufferDetached(Wt)){throw makeException(TypeError,"is a detached ArrayBuffer",Pt)}return Wt};Pt.DOMTimeStamp=Pt["unsigned long long"]},86476:(Wt,Pt,en)=>{"use strict";const tn=en(31748);const nn=en(33485);const an=en(40052);const rn=new Set(nn);Pt.labelToName=Wt=>{Wt=String(Wt).trim().toLowerCase();return an[Wt]||null};Pt.decode=(Wt,en)=>{let nn=en;if(!Pt.isSupported(nn)){throw new RangeError(`"${nn}" is not a supported encoding name`)}const an=Pt.getBOMEncoding(Wt);if(an!==null){nn=an}if(nn==="x-user-defined"){let Pt="";for(const en of Wt){if(en<=127){Pt+=String.fromCodePoint(en)}else{Pt+=String.fromCodePoint(63360+en-128)}}return Pt}return tn.decode(Wt,nn)};Pt.getBOMEncoding=Wt=>{if(Wt[0]===254&&Wt[1]===255){return"UTF-16BE"}else if(Wt[0]===255&&Wt[1]===254){return"UTF-16LE"}else if(Wt[0]===239&&Wt[1]===187&&Wt[2]===191){return"UTF-8"}return null};Pt.isSupported=Wt=>rn.has(String(Wt))},31989:(Wt,Pt,en)=>{"use strict";const{asciiLowercase:tn,solelyContainsHTTPTokenCodePoints:nn,soleyContainsHTTPQuotedStringTokenCodePoints:an}=en(40866);Wt.exports=class MIMETypeParameters{constructor(Wt){this._map=Wt}get size(){return this._map.size}get(Wt){Wt=tn(String(Wt));return this._map.get(Wt)}has(Wt){Wt=tn(String(Wt));return this._map.has(Wt)}set(Wt,Pt){Wt=tn(String(Wt));Pt=String(Pt);if(!nn(Wt)){throw new Error(`Invalid MIME type parameter name "${Wt}": only HTTP token code points are valid.`)}if(!an(Pt)){throw new Error(`Invalid MIME type parameter value "${Pt}": only HTTP quoted-string token code points are `+`valid.`)}return this._map.set(Wt,Pt)}clear(){this._map.clear()}delete(Wt){Wt=tn(String(Wt));return this._map.delete(Wt)}forEach(Wt,Pt){this._map.forEach(Wt,Pt)}keys(){return this._map.keys()}values(){return this._map.values()}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}}},59344:(Wt,Pt,en)=>{"use strict";const tn=en(31989);const nn=en(56312);const an=en(95479);const{asciiLowercase:rn,solelyContainsHTTPTokenCodePoints:In}=en(40866);Wt.exports=class MIMEType{constructor(Wt){Wt=String(Wt);const Pt=nn(Wt);if(Pt===null){throw new Error(`Could not parse MIME type string "${Wt}"`)}this._type=Pt.type;this._subtype=Pt.subtype;this._parameters=new tn(Pt.parameters)}static parse(Wt){try{return new this(Wt)}catch(Wt){return null}}get essence(){return`${this.type}/${this.subtype}`}get type(){return this._type}set type(Wt){Wt=rn(String(Wt));if(Wt.length===0){throw new Error("Invalid type: must be a non-empty string")}if(!In(Wt)){throw new Error(`Invalid type ${Wt}: must contain only HTTP token code points`)}this._type=Wt}get subtype(){return this._subtype}set subtype(Wt){Wt=rn(String(Wt));if(Wt.length===0){throw new Error("Invalid subtype: must be a non-empty string")}if(!In(Wt)){throw new Error(`Invalid subtype ${Wt}: must contain only HTTP token code points`)}this._subtype=Wt}get parameters(){return this._parameters}toString(){return an(this)}isJavaScript({prohibitParameters:Wt=false}={}){switch(this._type){case"text":{switch(this._subtype){case"ecmascript":case"javascript":case"javascript1.0":case"javascript1.1":case"javascript1.2":case"javascript1.3":case"javascript1.4":case"javascript1.5":case"jscript":case"livescript":case"x-ecmascript":case"x-javascript":{return!Wt||this._parameters.size===0}default:{return false}}}case"application":{switch(this._subtype){case"ecmascript":case"javascript":case"x-ecmascript":case"x-javascript":{return!Wt||this._parameters.size===0}default:{return false}}}default:{return false}}}isXML(){return this._subtype==="xml"&&(this._type==="text"||this._type==="application")||this._subtype.endsWith("+xml")}isHTML(){return this._subtype==="html"&&this._type==="text"}}},56312:(Wt,Pt,en)=>{"use strict";const{removeLeadingAndTrailingHTTPWhitespace:tn,removeTrailingHTTPWhitespace:nn,isHTTPWhitespaceChar:an,solelyContainsHTTPTokenCodePoints:rn,soleyContainsHTTPQuotedStringTokenCodePoints:In,asciiLowercase:sn,collectAnHTTPQuotedString:on}=en(40866);Wt.exports=Wt=>{Wt=tn(Wt);let Pt=0;let en="";while(Pt=Wt.length){return null}++Pt;let cn="";while(Pt0&&rn(en)&&In(tn)&&!dn.parameters.has(en)){dn.parameters.set(en,tn)}}return dn}},95479:(Wt,Pt,en)=>{"use strict";const{solelyContainsHTTPTokenCodePoints:tn}=en(40866);Wt.exports=Wt=>{let Pt=`${Wt.type}/${Wt.subtype}`;if(Wt.parameters.size===0){return Pt}for(let[en,nn]of Wt.parameters){Pt+=";";Pt+=en;Pt+="=";if(!tn(nn)||nn.length===0){nn=nn.replace(/(["\\])/gu,"\\$1");nn=`"${nn}"`}Pt+=nn}return Pt}},40866:(Wt,Pt)=>{"use strict";Pt.removeLeadingAndTrailingHTTPWhitespace=Wt=>Wt.replace(/^[ \t\n\r]+/u,"").replace(/[ \t\n\r]+$/u,"");Pt.removeTrailingHTTPWhitespace=Wt=>Wt.replace(/[ \t\n\r]+$/u,"");Pt.isHTTPWhitespaceChar=Wt=>Wt===" "||Wt==="\t"||Wt==="\n"||Wt==="\r";Pt.solelyContainsHTTPTokenCodePoints=Wt=>/^[-!#$%&'*+.^_`|~A-Za-z0-9]*$/u.test(Wt);Pt.soleyContainsHTTPQuotedStringTokenCodePoints=Wt=>/^[\t\u0020-\u007E\u0080-\u00FF]*$/u.test(Wt);Pt.asciiLowercase=Wt=>Wt.replace(/[A-Z]/gu,(Wt=>Wt.toLowerCase()));Pt.collectAnHTTPQuotedString=(Wt,Pt)=>{let en="";Pt++;while(true){while(Pt=Wt.length){break}const tn=Wt[Pt];++Pt;if(tn==="\\"){if(Pt>=Wt.length){en+="\\";break}en+=Wt[Pt];++Pt}else{break}}return[en,Pt]}},78012:(Wt,Pt,en)=>{"use strict";const{URL:tn,URLSearchParams:nn}=en(74108);const an=en(20905);const rn=en(687);const In={Array:Array,Object:Object,Promise:Promise,String:String,TypeError:TypeError};tn.install(In,["Window"]);nn.install(In,["Window"]);Pt.URL=In.URL;Pt.URLSearchParams=In.URLSearchParams;Pt.parseURL=an.parseURL;Pt.basicURLParse=an.basicURLParse;Pt.serializeURL=an.serializeURL;Pt.serializePath=an.serializePath;Pt.serializeHost=an.serializeHost;Pt.serializeInteger=an.serializeInteger;Pt.serializeURLOrigin=an.serializeURLOrigin;Pt.setTheUsername=an.setTheUsername;Pt.setThePassword=an.setThePassword;Pt.cannotHaveAUsernamePasswordPort=an.cannotHaveAUsernamePasswordPort;Pt.hasAnOpaquePath=an.hasAnOpaquePath;Pt.percentDecodeString=rn.percentDecodeString;Pt.percentDecodeBytes=rn.percentDecodeBytes},66426:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(39857);Pt.convert=(Wt,Pt,{context:en="The provided value"}={})=>{if(typeof Pt!=="function"){throw new Wt.TypeError(en+" is not a function")}function invokeTheCallbackFunction(...an){const rn=nn.tryWrapperForImpl(this);let In;for(let Wt=0;Wt{for(let Wt=0;Wt{"use strict";const tn=en(20905);const nn=en(36367);const an=en(63627);Pt.implementation=class URLImpl{constructor(Wt,Pt){const en=Pt[0];const nn=Pt[1];let rn=null;if(nn!==undefined){rn=tn.basicURLParse(nn);if(rn===null){throw new TypeError(`Invalid base URL: ${nn}`)}}const In=tn.basicURLParse(en,{baseURL:rn});if(In===null){throw new TypeError(`Invalid URL: ${en}`)}const sn=In.query!==null?In.query:"";this._url=In;this._query=an.createImpl(Wt,[sn],{doNotStripQMark:true});this._query._url=this}static canParse(Wt,Pt){let en=null;if(Pt!==undefined){en=tn.basicURLParse(Pt);if(en===null){return false}}const nn=tn.basicURLParse(Wt,{baseURL:en});if(nn===null){return false}return true}get href(){return tn.serializeURL(this._url)}set href(Wt){const Pt=tn.basicURLParse(Wt);if(Pt===null){throw new TypeError(`Invalid URL: ${Wt}`)}this._url=Pt;this._query._list.splice(0);const{query:en}=Pt;if(en!==null){this._query._list=nn.parseUrlencodedString(en)}}get origin(){return tn.serializeURLOrigin(this._url)}get protocol(){return`${this._url.scheme}:`}set protocol(Wt){tn.basicURLParse(`${Wt}:`,{url:this._url,stateOverride:"scheme start"})}get username(){return this._url.username}set username(Wt){if(tn.cannotHaveAUsernamePasswordPort(this._url)){return}tn.setTheUsername(this._url,Wt)}get password(){return this._url.password}set password(Wt){if(tn.cannotHaveAUsernamePasswordPort(this._url)){return}tn.setThePassword(this._url,Wt)}get host(){const Wt=this._url;if(Wt.host===null){return""}if(Wt.port===null){return tn.serializeHost(Wt.host)}return`${tn.serializeHost(Wt.host)}:${tn.serializeInteger(Wt.port)}`}set host(Wt){if(tn.hasAnOpaquePath(this._url)){return}tn.basicURLParse(Wt,{url:this._url,stateOverride:"host"})}get hostname(){if(this._url.host===null){return""}return tn.serializeHost(this._url.host)}set hostname(Wt){if(tn.hasAnOpaquePath(this._url)){return}tn.basicURLParse(Wt,{url:this._url,stateOverride:"hostname"})}get port(){if(this._url.port===null){return""}return tn.serializeInteger(this._url.port)}set port(Wt){if(tn.cannotHaveAUsernamePasswordPort(this._url)){return}if(Wt===""){this._url.port=null}else{tn.basicURLParse(Wt,{url:this._url,stateOverride:"port"})}}get pathname(){return tn.serializePath(this._url)}set pathname(Wt){if(tn.hasAnOpaquePath(this._url)){return}this._url.path=[];tn.basicURLParse(Wt,{url:this._url,stateOverride:"path start"})}get search(){if(this._url.query===null||this._url.query===""){return""}return`?${this._url.query}`}set search(Wt){const Pt=this._url;if(Wt===""){Pt.query=null;this._query._list=[];this._potentiallyStripTrailingSpacesFromAnOpaquePath();return}const en=Wt[0]==="?"?Wt.substring(1):Wt;Pt.query="";tn.basicURLParse(en,{url:Pt,stateOverride:"query"});this._query._list=nn.parseUrlencodedString(en)}get searchParams(){return this._query}get hash(){if(this._url.fragment===null||this._url.fragment===""){return""}return`#${this._url.fragment}`}set hash(Wt){if(Wt===""){this._url.fragment=null;this._potentiallyStripTrailingSpacesFromAnOpaquePath();return}const Pt=Wt[0]==="#"?Wt.substring(1):Wt;this._url.fragment="";tn.basicURLParse(Pt,{url:this._url,stateOverride:"fragment"})}toJSON(){return this.href}_potentiallyStripTrailingSpacesFromAnOpaquePath(){if(!tn.hasAnOpaquePath(this._url)){return}if(this._url.fragment!==null){return}if(this._url.query!==null){return}this._url.path=this._url.path.replace(/\u0020+$/u,"")}}},66633:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(39857);const an=nn.implSymbol;const rn=nn.ctorRegistrySymbol;const In="URL";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,an)&&Wt[an]instanceof on.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof on.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'URL'.`)};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[rn]["URL"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],rn={})=>{rn.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,an,{value:new on.implementation(en,tn,rn),configurable:true});Wt[an][nn.wrapperSymbol]=Wt;if(on.init){on.init(Wt[an])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,an,{value:Object.create(on.implementation.prototype),configurable:true});tn[an][nn.wrapperSymbol]=tn;if(on.init){on.init(tn[an])}return tn[an]};const sn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>sn.has(Wt)))){return}const rn=nn.initCtorRegistry(Wt);class URL{constructor(en){if(arguments.length<1){throw new Wt.TypeError(`Failed to construct 'URL': 1 argument required, but only ${arguments.length} present.`)}const nn=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to construct 'URL': parameter 1",globals:Wt});nn.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["USVString"](Pt,{context:"Failed to construct 'URL': parameter 2",globals:Wt})}nn.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,nn)}toJSON(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'toJSON' called on an object that is not a valid instance of URL.")}return en[an].toJSON()}get href(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get href' called on an object that is not a valid instance of URL.")}return en[an]["href"]}set href(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set href' called on an object that is not a valid instance of URL.")}en=tn["USVString"](en,{context:"Failed to set the 'href' property on 'URL': The provided value",globals:Wt});nn[an]["href"]=en}toString(){const en=this;if(!Pt.is(en)){throw new Wt.TypeError("'toString' called on an object that is not a valid instance of URL.")}return en[an]["href"]}get origin(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get origin' called on an object that is not a valid instance of URL.")}return en[an]["origin"]}get protocol(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get protocol' called on an object that is not a valid instance of URL.")}return en[an]["protocol"]}set protocol(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set protocol' called on an object that is not a valid instance of URL.")}en=tn["USVString"](en,{context:"Failed to set the 'protocol' property on 'URL': The provided value",globals:Wt});nn[an]["protocol"]=en}get username(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get username' called on an object that is not a valid instance of URL.")}return en[an]["username"]}set username(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set username' called on an object that is not a valid instance of URL.")}en=tn["USVString"](en,{context:"Failed to set the 'username' property on 'URL': The provided value",globals:Wt});nn[an]["username"]=en}get password(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get password' called on an object that is not a valid instance of URL.")}return en[an]["password"]}set password(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set password' called on an object that is not a valid instance of URL.")}en=tn["USVString"](en,{context:"Failed to set the 'password' property on 'URL': The provided value",globals:Wt});nn[an]["password"]=en}get host(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get host' called on an object that is not a valid instance of URL.")}return en[an]["host"]}set host(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set host' called on an object that is not a valid instance of URL.")}en=tn["USVString"](en,{context:"Failed to set the 'host' property on 'URL': The provided value",globals:Wt});nn[an]["host"]=en}get hostname(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hostname' called on an object that is not a valid instance of URL.")}return en[an]["hostname"]}set hostname(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set hostname' called on an object that is not a valid instance of URL.")}en=tn["USVString"](en,{context:"Failed to set the 'hostname' property on 'URL': The provided value",globals:Wt});nn[an]["hostname"]=en}get port(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get port' called on an object that is not a valid instance of URL.")}return en[an]["port"]}set port(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set port' called on an object that is not a valid instance of URL.")}en=tn["USVString"](en,{context:"Failed to set the 'port' property on 'URL': The provided value",globals:Wt});nn[an]["port"]=en}get pathname(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get pathname' called on an object that is not a valid instance of URL.")}return en[an]["pathname"]}set pathname(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set pathname' called on an object that is not a valid instance of URL.")}en=tn["USVString"](en,{context:"Failed to set the 'pathname' property on 'URL': The provided value",globals:Wt});nn[an]["pathname"]=en}get search(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get search' called on an object that is not a valid instance of URL.")}return en[an]["search"]}set search(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set search' called on an object that is not a valid instance of URL.")}en=tn["USVString"](en,{context:"Failed to set the 'search' property on 'URL': The provided value",globals:Wt});nn[an]["search"]=en}get searchParams(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get searchParams' called on an object that is not a valid instance of URL.")}return nn.getSameObject(this,"searchParams",(()=>nn.tryWrapperForImpl(en[an]["searchParams"])))}get hash(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'get hash' called on an object that is not a valid instance of URL.")}return en[an]["hash"]}set hash(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'set hash' called on an object that is not a valid instance of URL.")}en=tn["USVString"](en,{context:"Failed to set the 'hash' property on 'URL': The provided value",globals:Wt});nn[an]["hash"]=en}static canParse(Pt){if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'canParse' on 'URL': 1 argument required, but only ${arguments.length} present.`)}const en=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'canParse' on 'URL': parameter 1",globals:Wt});en.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["USVString"](Pt,{context:"Failed to execute 'canParse' on 'URL': parameter 2",globals:Wt})}en.push(Pt)}return on.implementation.canParse(...en)}}Object.defineProperties(URL.prototype,{toJSON:{enumerable:true},href:{enumerable:true},toString:{enumerable:true},origin:{enumerable:true},protocol:{enumerable:true},username:{enumerable:true},password:{enumerable:true},host:{enumerable:true},hostname:{enumerable:true},port:{enumerable:true},pathname:{enumerable:true},search:{enumerable:true},searchParams:{enumerable:true},hash:{enumerable:true},[Symbol.toStringTag]:{value:"URL",configurable:true}});Object.defineProperties(URL,{canParse:{enumerable:true}});rn[In]=URL;Object.defineProperty(Wt,In,{configurable:true,writable:true,value:URL});if(en.includes("Window")){Object.defineProperty(Wt,"webkitURL",{configurable:true,writable:true,value:URL})}};const on=en(23184)},12894:(Wt,Pt,en)=>{"use strict";const tn=en(36367);Pt.implementation=class URLSearchParamsImpl{constructor(Wt,Pt,{doNotStripQMark:en=false}){let nn=Pt[0];this._list=[];this._url=null;if(!en&&typeof nn==="string"&&nn[0]==="?"){nn=nn.slice(1)}if(Array.isArray(nn)){for(const Wt of nn){if(Wt.length!==2){throw new TypeError("Failed to construct 'URLSearchParams': parameter 1 sequence's element does not "+"contain exactly two elements.")}this._list.push([Wt[0],Wt[1]])}}else if(typeof nn==="object"&&Object.getPrototypeOf(nn)===null){for(const Wt of Object.keys(nn)){const Pt=nn[Wt];this._list.push([Wt,Pt])}}else{this._list=tn.parseUrlencodedString(nn)}}_updateSteps(){if(this._url!==null){let Wt=tn.serializeUrlencoded(this._list);if(Wt===""){Wt=null}this._url._url.query=Wt;if(Wt===null){this._url._potentiallyStripTrailingSpacesFromAnOpaquePath()}}}get size(){return this._list.length}append(Wt,Pt){this._list.push([Wt,Pt]);this._updateSteps()}delete(Wt,Pt){let en=0;while(en{if(Wt[0]Pt[0]){return 1}return 0}));this._updateSteps()}[Symbol.iterator](){return this._list[Symbol.iterator]()}toString(){return tn.serializeUrlencoded(this._list)}}},63627:(Wt,Pt,en)=>{"use strict";const tn=en(37125);const nn=en(39857);const an=en(66426);const rn=nn.newObjectInRealm;const In=nn.implSymbol;const sn=nn.ctorRegistrySymbol;const on="URLSearchParams";Pt.is=Wt=>nn.isObject(Wt)&&nn.hasOwn(Wt,In)&&Wt[In]instanceof dn.implementation;Pt.isImpl=Wt=>nn.isObject(Wt)&&Wt instanceof dn.implementation;Pt.convert=(Wt,en,{context:tn="The provided value"}={})=>{if(Pt.is(en)){return nn.implForWrapper(en)}throw new Wt.TypeError(`${tn} is not of type 'URLSearchParams'.`)};Pt.createDefaultIterator=(Wt,Pt,en)=>{const tn=Wt[sn];const an=tn["URLSearchParams Iterator"];const rn=Object.create(an);Object.defineProperty(rn,nn.iterInternalSymbol,{value:{target:Pt,kind:en,index:0},configurable:true});return rn};function makeWrapper(Wt,Pt){let en;if(Pt!==undefined){en=Pt.prototype}if(!nn.isObject(en)){en=Wt[sn]["URLSearchParams"].prototype}return Object.create(en)}Pt.create=(Wt,en,tn)=>{const nn=makeWrapper(Wt);return Pt.setup(nn,Wt,en,tn)};Pt.createImpl=(Wt,en,tn)=>{const an=Pt.create(Wt,en,tn);return nn.implForWrapper(an)};Pt._internalSetup=(Wt,Pt)=>{};Pt.setup=(Wt,en,tn=[],an={})=>{an.wrapper=Wt;Pt._internalSetup(Wt,en);Object.defineProperty(Wt,In,{value:new dn.implementation(en,tn,an),configurable:true});Wt[In][nn.wrapperSymbol]=Wt;if(dn.init){dn.init(Wt[In])}return Wt};Pt["new"]=(Wt,en)=>{const tn=makeWrapper(Wt,en);Pt._internalSetup(tn,Wt);Object.defineProperty(tn,In,{value:Object.create(dn.implementation.prototype),configurable:true});tn[In][nn.wrapperSymbol]=tn;if(dn.init){dn.init(tn[In])}return tn[In]};const cn=new Set(["Window","Worker"]);Pt.install=(Wt,en)=>{if(!en.some((Wt=>cn.has(Wt)))){return}const sn=nn.initCtorRegistry(Wt);class URLSearchParams{constructor(){const en=[];{let Pt=arguments[0];if(Pt!==undefined){if(nn.isObject(Pt)){if(Pt[Symbol.iterator]!==undefined){if(!nn.isObject(Pt)){throw new Wt.TypeError("Failed to construct 'URLSearchParams': parameter 1"+" sequence"+" is not an iterable object.")}else{const en=[];const an=Pt;for(let Pt of an){if(!nn.isObject(Pt)){throw new Wt.TypeError("Failed to construct 'URLSearchParams': parameter 1"+" sequence"+"'s element"+" is not an iterable object.")}else{const en=[];const nn=Pt;for(let Pt of nn){Pt=tn["USVString"](Pt,{context:"Failed to construct 'URLSearchParams': parameter 1"+" sequence"+"'s element"+"'s element",globals:Wt});en.push(Pt)}Pt=en}en.push(Pt)}Pt=en}}else{if(!nn.isObject(Pt)){throw new Wt.TypeError("Failed to construct 'URLSearchParams': parameter 1"+" record"+" is not an object.")}else{const en=Object.create(null);for(const nn of Reflect.ownKeys(Pt)){const an=Object.getOwnPropertyDescriptor(Pt,nn);if(an&&an.enumerable){let an=nn;an=tn["USVString"](an,{context:"Failed to construct 'URLSearchParams': parameter 1"+" record"+"'s key",globals:Wt});let rn=Pt[nn];rn=tn["USVString"](rn,{context:"Failed to construct 'URLSearchParams': parameter 1"+" record"+"'s value",globals:Wt});en[an]=rn}}Pt=en}}}else{Pt=tn["USVString"](Pt,{context:"Failed to construct 'URLSearchParams': parameter 1",globals:Wt})}}else{Pt=""}en.push(Pt)}return Pt.setup(Object.create(new.target.prototype),Wt,en)}append(en,an){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'append' called on an object that is not a valid instance of URLSearchParams.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'append' on 'URLSearchParams': 2 arguments required, but only ${arguments.length} present.`)}const sn=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'append' on 'URLSearchParams': parameter 1",globals:Wt});sn.push(Pt)}{let Pt=arguments[1];Pt=tn["USVString"](Pt,{context:"Failed to execute 'append' on 'URLSearchParams': parameter 2",globals:Wt});sn.push(Pt)}return nn.tryWrapperForImpl(rn[In].append(...sn))}delete(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'delete' called on an object that is not a valid instance of URLSearchParams.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'delete' on 'URLSearchParams': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'delete' on 'URLSearchParams': parameter 1",globals:Wt});rn.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["USVString"](Pt,{context:"Failed to execute 'delete' on 'URLSearchParams': parameter 2",globals:Wt})}rn.push(Pt)}return nn.tryWrapperForImpl(an[In].delete(...rn))}get(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'get' called on an object that is not a valid instance of URLSearchParams.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'get' on 'URLSearchParams': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'get' on 'URLSearchParams': parameter 1",globals:Wt});an.push(Pt)}return nn[In].get(...an)}getAll(en){const an=this!==null&&this!==undefined?this:Wt;if(!Pt.is(an)){throw new Wt.TypeError("'getAll' called on an object that is not a valid instance of URLSearchParams.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'getAll' on 'URLSearchParams': 1 argument required, but only ${arguments.length} present.`)}const rn=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'getAll' on 'URLSearchParams': parameter 1",globals:Wt});rn.push(Pt)}return nn.tryWrapperForImpl(an[In].getAll(...rn))}has(en){const nn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(nn)){throw new Wt.TypeError("'has' called on an object that is not a valid instance of URLSearchParams.")}if(arguments.length<1){throw new Wt.TypeError(`Failed to execute 'has' on 'URLSearchParams': 1 argument required, but only ${arguments.length} present.`)}const an=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'has' on 'URLSearchParams': parameter 1",globals:Wt});an.push(Pt)}{let Pt=arguments[1];if(Pt!==undefined){Pt=tn["USVString"](Pt,{context:"Failed to execute 'has' on 'URLSearchParams': parameter 2",globals:Wt})}an.push(Pt)}return nn[In].has(...an)}set(en,an){const rn=this!==null&&this!==undefined?this:Wt;if(!Pt.is(rn)){throw new Wt.TypeError("'set' called on an object that is not a valid instance of URLSearchParams.")}if(arguments.length<2){throw new Wt.TypeError(`Failed to execute 'set' on 'URLSearchParams': 2 arguments required, but only ${arguments.length} present.`)}const sn=[];{let Pt=arguments[0];Pt=tn["USVString"](Pt,{context:"Failed to execute 'set' on 'URLSearchParams': parameter 1",globals:Wt});sn.push(Pt)}{let Pt=arguments[1];Pt=tn["USVString"](Pt,{context:"Failed to execute 'set' on 'URLSearchParams': parameter 2",globals:Wt});sn.push(Pt)}return nn.tryWrapperForImpl(rn[In].set(...sn))}sort(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'sort' called on an object that is not a valid instance of URLSearchParams.")}return nn.tryWrapperForImpl(en[In].sort())}toString(){const en=this!==null&&this!==undefined?this:Wt;if(!Pt.is(en)){throw new Wt.TypeError("'toString' called on an object that is not a valid instance of URLSearchParams.")}return en[In].toString()}keys(){if(!Pt.is(this)){throw new Wt.TypeError("'keys' called on an object that is not a valid instance of URLSearchParams.")}return Pt.createDefaultIterator(Wt,this,"key")}values(){if(!Pt.is(this)){throw new Wt.TypeError("'values' called on an object that is not a valid instance of URLSearchParams.")}return Pt.createDefaultIterator(Wt,this,"value")}entries(){if(!Pt.is(this)){throw new Wt.TypeError("'entries' called on an object that is not a valid instance of URLSearchParams.")}return Pt.createDefaultIterator(Wt,this,"key+value")}forEach(en){if(!Pt.is(this)){throw new Wt.TypeError("'forEach' called on an object that is not a valid instance of URLSearchParams.")}if(arguments.length<1){throw new Wt.TypeError("Failed to execute 'forEach' on 'iterable': 1 argument required, but only 0 present.")}en=an.convert(Wt,en,{context:"Failed to execute 'forEach' on 'iterable': The callback provided as parameter 1"});const tn=arguments[1];let rn=Array.from(this[In]);let sn=0;while(sn=on){return rn(Wt,{value:undefined,done:true})}const cn=sn[an];Pt.index=an+1;return rn(Wt,nn.iteratorResult(cn.map(nn.tryWrapperForImpl),tn))}});Object.defineProperty(Wt,on,{configurable:true,writable:true,value:URLSearchParams})};const dn=en(12894)},84887:Wt=>{"use strict";const Pt=new TextEncoder;const en=new TextDecoder("utf-8",{ignoreBOM:true});function utf8Encode(Wt){return Pt.encode(Wt)}function utf8DecodeWithoutBOM(Wt){return en.decode(Wt)}Wt.exports={utf8Encode:utf8Encode,utf8DecodeWithoutBOM:utf8DecodeWithoutBOM}},63102:Wt=>{"use strict";function isASCIIDigit(Wt){return Wt>=48&&Wt<=57}function isASCIIAlpha(Wt){return Wt>=65&&Wt<=90||Wt>=97&&Wt<=122}function isASCIIAlphanumeric(Wt){return isASCIIAlpha(Wt)||isASCIIDigit(Wt)}function isASCIIHex(Wt){return isASCIIDigit(Wt)||Wt>=65&&Wt<=70||Wt>=97&&Wt<=102}Wt.exports={isASCIIDigit:isASCIIDigit,isASCIIAlpha:isASCIIAlpha,isASCIIAlphanumeric:isASCIIAlphanumeric,isASCIIHex:isASCIIHex}},687:(Wt,Pt,en)=>{"use strict";const{isASCIIHex:tn}=en(63102);const{utf8Encode:nn}=en(84887);function p(Wt){return Wt.codePointAt(0)}function percentEncode(Wt){let Pt=Wt.toString(16).toUpperCase();if(Pt.length===1){Pt=`0${Pt}`}return`%${Pt}`}function percentDecodeBytes(Wt){const Pt=new Uint8Array(Wt.byteLength);let en=0;for(let nn=0;nn126}const an=new Set([p(" "),p('"'),p("<"),p(">"),p("`")]);function isFragmentPercentEncode(Wt){return isC0ControlPercentEncode(Wt)||an.has(Wt)}const rn=new Set([p(" "),p('"'),p("#"),p("<"),p(">")]);function isQueryPercentEncode(Wt){return isC0ControlPercentEncode(Wt)||rn.has(Wt)}function isSpecialQueryPercentEncode(Wt){return isQueryPercentEncode(Wt)||Wt===p("'")}const In=new Set([p("?"),p("`"),p("{"),p("}")]);function isPathPercentEncode(Wt){return isQueryPercentEncode(Wt)||In.has(Wt)}const sn=new Set([p("/"),p(":"),p(";"),p("="),p("@"),p("["),p("\\"),p("]"),p("^"),p("|")]);function isUserinfoPercentEncode(Wt){return isPathPercentEncode(Wt)||sn.has(Wt)}const on=new Set([p("$"),p("%"),p("&"),p("+"),p(",")]);function isComponentPercentEncode(Wt){return isUserinfoPercentEncode(Wt)||on.has(Wt)}const cn=new Set([p("!"),p("'"),p("("),p(")"),p("~")]);function isURLEncodedPercentEncode(Wt){return isComponentPercentEncode(Wt)||cn.has(Wt)}function utf8PercentEncodeCodePointInternal(Wt,Pt){const en=nn(Wt);let tn="";for(const Wt of en){if(!Pt(Wt)){tn+=String.fromCharCode(Wt)}else{tn+=percentEncode(Wt)}}return tn}function utf8PercentEncodeCodePoint(Wt,Pt){return utf8PercentEncodeCodePointInternal(String.fromCodePoint(Wt),Pt)}function utf8PercentEncodeString(Wt,Pt,en=false){let tn="";for(const nn of Wt){if(en&&nn===" "){tn+="+"}else{tn+=utf8PercentEncodeCodePointInternal(nn,Pt)}}return tn}Wt.exports={isC0ControlPercentEncode:isC0ControlPercentEncode,isFragmentPercentEncode:isFragmentPercentEncode,isQueryPercentEncode:isQueryPercentEncode,isSpecialQueryPercentEncode:isSpecialQueryPercentEncode,isPathPercentEncode:isPathPercentEncode,isUserinfoPercentEncode:isUserinfoPercentEncode,isURLEncodedPercentEncode:isURLEncodedPercentEncode,percentDecodeString:percentDecodeString,percentDecodeBytes:percentDecodeBytes,utf8PercentEncodeString:utf8PercentEncodeString,utf8PercentEncodeCodePoint:utf8PercentEncodeCodePoint}},20905:(Wt,Pt,en)=>{"use strict";const tn=en(1552);const nn=en(63102);const{utf8DecodeWithoutBOM:an}=en(84887);const{percentDecodeString:rn,utf8PercentEncodeCodePoint:In,utf8PercentEncodeString:sn,isC0ControlPercentEncode:on,isFragmentPercentEncode:cn,isQueryPercentEncode:dn,isSpecialQueryPercentEncode:un,isPathPercentEncode:pn,isUserinfoPercentEncode:mn}=en(687);function p(Wt){return Wt.codePointAt(0)}const bn={ftp:21,file:null,http:80,https:443,ws:80,wss:443};const Gn=Symbol("failure");function countSymbols(Wt){return[...Wt].length}function at(Wt,Pt){const en=Wt[Pt];return isNaN(en)?undefined:String.fromCodePoint(en)}function isSingleDot(Wt){return Wt==="."||Wt.toLowerCase()==="%2e"}function isDoubleDot(Wt){Wt=Wt.toLowerCase();return Wt===".."||Wt==="%2e."||Wt===".%2e"||Wt==="%2e%2e"}function isWindowsDriveLetterCodePoints(Wt,Pt){return nn.isASCIIAlpha(Wt)&&(Pt===p(":")||Pt===p("|"))}function isWindowsDriveLetterString(Wt){return Wt.length===2&&nn.isASCIIAlpha(Wt.codePointAt(0))&&(Wt[1]===":"||Wt[1]==="|")}function isNormalizedWindowsDriveLetterString(Wt){return Wt.length===2&&nn.isASCIIAlpha(Wt.codePointAt(0))&&Wt[1]===":"}function containsForbiddenHostCodePoint(Wt){return Wt.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|<|>|\?|@|\[|\\|\]|\^|\|/u)!==-1}function containsForbiddenDomainCodePoint(Wt){return containsForbiddenHostCodePoint(Wt)||Wt.search(/[\u0000-\u001F]|%|\u007F/u)!==-1}function isSpecialScheme(Wt){return bn[Wt]!==undefined}function isSpecial(Wt){return isSpecialScheme(Wt.scheme)}function isNotSpecial(Wt){return!isSpecialScheme(Wt.scheme)}function defaultPort(Wt){return bn[Wt]}function parseIPv4Number(Wt){if(Wt===""){return Gn}let Pt=10;if(Wt.length>=2&&Wt.charAt(0)==="0"&&Wt.charAt(1).toLowerCase()==="x"){Wt=Wt.substring(2);Pt=16}else if(Wt.length>=2&&Wt.charAt(0)==="0"){Wt=Wt.substring(1);Pt=8}if(Wt===""){return 0}let en=/[^0-7]/u;if(Pt===10){en=/[^0-9]/u}if(Pt===16){en=/[^0-9A-Fa-f]/u}if(en.test(Wt)){return Gn}return parseInt(Wt,Pt)}function parseIPv4(Wt){const Pt=Wt.split(".");if(Pt[Pt.length-1]===""){if(Pt.length>1){Pt.pop()}}if(Pt.length>4){return Gn}const en=[];for(const Wt of Pt){const Pt=parseIPv4Number(Wt);if(Pt===Gn){return Gn}en.push(Pt)}for(let Wt=0;Wt255){return Gn}}if(en[en.length-1]>=256**(5-en.length)){return Gn}let tn=en.pop();let nn=0;for(const Wt of en){tn+=Wt*256**(3-nn);++nn}return tn}function serializeIPv4(Wt){let Pt="";let en=Wt;for(let Wt=1;Wt<=4;++Wt){Pt=String(en%256)+Pt;if(Wt!==4){Pt=`.${Pt}`}en=Math.floor(en/256)}return Pt}function parseIPv6(Wt){const Pt=[0,0,0,0,0,0,0,0];let en=0;let tn=null;let an=0;Wt=Array.from(Wt,(Wt=>Wt.codePointAt(0)));if(Wt[an]===p(":")){if(Wt[an+1]!==p(":")){return Gn}an+=2;++en;tn=en}while(an6){return Gn}let tn=0;while(Wt[an]!==undefined){let rn=null;if(tn>0){if(Wt[an]===p(".")&&tn<4){++an}else{return Gn}}if(!nn.isASCIIDigit(Wt[an])){return Gn}while(nn.isASCIIDigit(Wt[an])){const Pt=parseInt(at(Wt,an));if(rn===null){rn=Pt}else if(rn===0){return Gn}else{rn=rn*10+Pt}if(rn>255){return Gn}++an}Pt[en]=Pt[en]*256+rn;++tn;if(tn===2||tn===4){++en}}if(tn!==4){return Gn}break}else if(Wt[an]===p(":")){++an;if(Wt[an]===undefined){return Gn}}else if(Wt[an]!==undefined){return Gn}Pt[en]=rn;++en}if(tn!==null){let Wt=en-tn;en=7;while(en!==0&&Wt>0){const nn=Pt[tn+Wt-1];Pt[tn+Wt-1]=Pt[en];Pt[en]=nn;--en;--Wt}}else if(tn===null&&en!==8){return Gn}return Pt}function serializeIPv6(Wt){let Pt="";const en=findLongestZeroSequence(Wt);let tn=false;for(let nn=0;nn<=7;++nn){if(tn&&Wt[nn]===0){continue}else if(tn){tn=false}if(en===nn){const Wt=nn===0?"::":":";Pt+=Wt;tn=true;continue}Pt+=Wt[nn].toString(16);if(nn!==7){Pt+=":"}}return Pt}function parseHost(Wt,Pt=false){if(Wt[0]==="["){if(Wt[Wt.length-1]!=="]"){return Gn}return parseIPv6(Wt.substring(1,Wt.length-1))}if(Pt){return parseOpaqueHost(Wt)}const en=an(rn(Wt));const tn=domainToASCII(en);if(tn===Gn){return Gn}if(containsForbiddenDomainCodePoint(tn)){return Gn}if(endsInANumber(tn)){return parseIPv4(tn)}return tn}function endsInANumber(Wt){const Pt=Wt.split(".");if(Pt[Pt.length-1]===""){if(Pt.length===1){return false}Pt.pop()}const en=Pt[Pt.length-1];if(parseIPv4Number(en)!==Gn){return true}if(/^[0-9]+$/u.test(en)){return true}return false}function parseOpaqueHost(Wt){if(containsForbiddenHostCodePoint(Wt)){return Gn}return sn(Wt,on)}function findLongestZeroSequence(Wt){let Pt=null;let en=1;let tn=null;let nn=0;for(let an=0;anen){Pt=tn;en=nn}tn=null;nn=0}else{if(tn===null){tn=an}++nn}}if(nn>en){return tn}return Pt}function serializeHost(Wt){if(typeof Wt==="number"){return serializeIPv4(Wt)}if(Wt instanceof Array){return`[${serializeIPv6(Wt)}]`}return Wt}function domainToASCII(Wt,Pt=false){const en=tn.toASCII(Wt,{checkBidi:true,checkHyphens:false,checkJoiners:true,useSTD3ASCIIRules:Pt,verifyDNSLength:Pt});if(en===null||en===""){return Gn}return en}function trimControlChars(Wt){return Wt.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/gu,"")}function trimTabAndNewline(Wt){return Wt.replace(/\u0009|\u000A|\u000D/gu,"")}function shortenPath(Wt){const{path:Pt}=Wt;if(Pt.length===0){return}if(Wt.scheme==="file"&&Pt.length===1&&isNormalizedWindowsDriveLetter(Pt[0])){return}Pt.pop()}function includesCredentials(Wt){return Wt.username!==""||Wt.password!==""}function cannotHaveAUsernamePasswordPort(Wt){return Wt.host===null||Wt.host===""||Wt.scheme==="file"}function hasAnOpaquePath(Wt){return typeof Wt.path==="string"}function isNormalizedWindowsDriveLetter(Wt){return/^[A-Za-z]:$/u.test(Wt)}function URLStateMachine(Wt,Pt,en,tn,nn){this.pointer=0;this.input=Wt;this.base=Pt||null;this.encodingOverride=en||"utf-8";this.stateOverride=nn;this.url=tn;this.failure=false;this.parseError=false;if(!this.url){this.url={scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null};const Wt=trimControlChars(this.input);if(Wt!==this.input){this.parseError=true}this.input=Wt}const an=trimTabAndNewline(this.input);if(an!==this.input){this.parseError=true}this.input=an;this.state=nn||"scheme start";this.buffer="";this.atFlag=false;this.arrFlag=false;this.passwordTokenSeenFlag=false;this.input=Array.from(this.input,(Wt=>Wt.codePointAt(0)));for(;this.pointer<=this.input.length;++this.pointer){const Wt=this.input[this.pointer];const Pt=isNaN(Wt)?undefined:String.fromCodePoint(Wt);const en=this[`parse ${this.state}`](Wt,Pt);if(!en){break}else if(en===Gn){this.failure=true;break}}}URLStateMachine.prototype["parse scheme start"]=function parseSchemeStart(Wt,Pt){if(nn.isASCIIAlpha(Wt)){this.buffer+=Pt.toLowerCase();this.state="scheme"}else if(!this.stateOverride){this.state="no scheme";--this.pointer}else{this.parseError=true;return Gn}return true};URLStateMachine.prototype["parse scheme"]=function parseScheme(Wt,Pt){if(nn.isASCIIAlphanumeric(Wt)||Wt===p("+")||Wt===p("-")||Wt===p(".")){this.buffer+=Pt.toLowerCase()}else if(Wt===p(":")){if(this.stateOverride){if(isSpecial(this.url)&&!isSpecialScheme(this.buffer)){return false}if(!isSpecial(this.url)&&isSpecialScheme(this.buffer)){return false}if((includesCredentials(this.url)||this.url.port!==null)&&this.buffer==="file"){return false}if(this.url.scheme==="file"&&this.url.host===""){return false}}this.url.scheme=this.buffer;if(this.stateOverride){if(this.url.port===defaultPort(this.url.scheme)){this.url.port=null}return false}this.buffer="";if(this.url.scheme==="file"){if(this.input[this.pointer+1]!==p("/")||this.input[this.pointer+2]!==p("/")){this.parseError=true}this.state="file"}else if(isSpecial(this.url)&&this.base!==null&&this.base.scheme===this.url.scheme){this.state="special relative or authority"}else if(isSpecial(this.url)){this.state="special authority slashes"}else if(this.input[this.pointer+1]===p("/")){this.state="path or authority";++this.pointer}else{this.url.path="";this.state="opaque path"}}else if(!this.stateOverride){this.buffer="";this.state="no scheme";this.pointer=-1}else{this.parseError=true;return Gn}return true};URLStateMachine.prototype["parse no scheme"]=function parseNoScheme(Wt){if(this.base===null||hasAnOpaquePath(this.base)&&Wt!==p("#")){return Gn}else if(hasAnOpaquePath(this.base)&&Wt===p("#")){this.url.scheme=this.base.scheme;this.url.path=this.base.path;this.url.query=this.base.query;this.url.fragment="";this.state="fragment"}else if(this.base.scheme==="file"){this.state="file";--this.pointer}else{this.state="relative";--this.pointer}return true};URLStateMachine.prototype["parse special relative or authority"]=function parseSpecialRelativeOrAuthority(Wt){if(Wt===p("/")&&this.input[this.pointer+1]===p("/")){this.state="special authority ignore slashes";++this.pointer}else{this.parseError=true;this.state="relative";--this.pointer}return true};URLStateMachine.prototype["parse path or authority"]=function parsePathOrAuthority(Wt){if(Wt===p("/")){this.state="authority"}else{this.state="path";--this.pointer}return true};URLStateMachine.prototype["parse relative"]=function parseRelative(Wt){this.url.scheme=this.base.scheme;if(Wt===p("/")){this.state="relative slash"}else if(isSpecial(this.url)&&Wt===p("\\")){this.parseError=true;this.state="relative slash"}else{this.url.username=this.base.username;this.url.password=this.base.password;this.url.host=this.base.host;this.url.port=this.base.port;this.url.path=this.base.path.slice();this.url.query=this.base.query;if(Wt===p("?")){this.url.query="";this.state="query"}else if(Wt===p("#")){this.url.fragment="";this.state="fragment"}else if(!isNaN(Wt)){this.url.query=null;this.url.path.pop();this.state="path";--this.pointer}}return true};URLStateMachine.prototype["parse relative slash"]=function parseRelativeSlash(Wt){if(isSpecial(this.url)&&(Wt===p("/")||Wt===p("\\"))){if(Wt===p("\\")){this.parseError=true}this.state="special authority ignore slashes"}else if(Wt===p("/")){this.state="authority"}else{this.url.username=this.base.username;this.url.password=this.base.password;this.url.host=this.base.host;this.url.port=this.base.port;this.state="path";--this.pointer}return true};URLStateMachine.prototype["parse special authority slashes"]=function parseSpecialAuthoritySlashes(Wt){if(Wt===p("/")&&this.input[this.pointer+1]===p("/")){this.state="special authority ignore slashes";++this.pointer}else{this.parseError=true;this.state="special authority ignore slashes";--this.pointer}return true};URLStateMachine.prototype["parse special authority ignore slashes"]=function parseSpecialAuthorityIgnoreSlashes(Wt){if(Wt!==p("/")&&Wt!==p("\\")){this.state="authority";--this.pointer}else{this.parseError=true}return true};URLStateMachine.prototype["parse authority"]=function parseAuthority(Wt,Pt){if(Wt===p("@")){this.parseError=true;if(this.atFlag){this.buffer=`%40${this.buffer}`}this.atFlag=true;const Wt=countSymbols(this.buffer);for(let Pt=0;Pt2**16-1){this.parseError=true;return Gn}this.url.port=Wt===defaultPort(this.url.scheme)?null:Wt;this.buffer=""}if(this.stateOverride){return false}this.state="path start";--this.pointer}else{this.parseError=true;return Gn}return true};const hn=new Set([p("/"),p("\\"),p("?"),p("#")]);function startsWithWindowsDriveLetter(Wt,Pt){const en=Wt.length-Pt;return en>=2&&isWindowsDriveLetterCodePoints(Wt[Pt],Wt[Pt+1])&&(en===2||hn.has(Wt[Pt+2]))}URLStateMachine.prototype["parse file"]=function parseFile(Wt){this.url.scheme="file";this.url.host="";if(Wt===p("/")||Wt===p("\\")){if(Wt===p("\\")){this.parseError=true}this.state="file slash"}else if(this.base!==null&&this.base.scheme==="file"){this.url.host=this.base.host;this.url.path=this.base.path.slice();this.url.query=this.base.query;if(Wt===p("?")){this.url.query="";this.state="query"}else if(Wt===p("#")){this.url.fragment="";this.state="fragment"}else if(!isNaN(Wt)){this.url.query=null;if(!startsWithWindowsDriveLetter(this.input,this.pointer)){shortenPath(this.url)}else{this.parseError=true;this.url.path=[]}this.state="path";--this.pointer}}else{this.state="path";--this.pointer}return true};URLStateMachine.prototype["parse file slash"]=function parseFileSlash(Wt){if(Wt===p("/")||Wt===p("\\")){if(Wt===p("\\")){this.parseError=true}this.state="file host"}else{if(this.base!==null&&this.base.scheme==="file"){if(!startsWithWindowsDriveLetter(this.input,this.pointer)&&isNormalizedWindowsDriveLetterString(this.base.path[0])){this.url.path.push(this.base.path[0])}this.url.host=this.base.host}this.state="path";--this.pointer}return true};URLStateMachine.prototype["parse file host"]=function parseFileHost(Wt,Pt){if(isNaN(Wt)||Wt===p("/")||Wt===p("\\")||Wt===p("?")||Wt===p("#")){--this.pointer;if(!this.stateOverride&&isWindowsDriveLetterString(this.buffer)){this.parseError=true;this.state="path"}else if(this.buffer===""){this.url.host="";if(this.stateOverride){return false}this.state="path start"}else{let Wt=parseHost(this.buffer,isNotSpecial(this.url));if(Wt===Gn){return Gn}if(Wt==="localhost"){Wt=""}this.url.host=Wt;if(this.stateOverride){return false}this.buffer="";this.state="path start"}}else{this.buffer+=Pt}return true};URLStateMachine.prototype["parse path start"]=function parsePathStart(Wt){if(isSpecial(this.url)){if(Wt===p("\\")){this.parseError=true}this.state="path";if(Wt!==p("/")&&Wt!==p("\\")){--this.pointer}}else if(!this.stateOverride&&Wt===p("?")){this.url.query="";this.state="query"}else if(!this.stateOverride&&Wt===p("#")){this.url.fragment="";this.state="fragment"}else if(Wt!==undefined){this.state="path";if(Wt!==p("/")){--this.pointer}}else if(this.stateOverride&&this.url.host===null){this.url.path.push("")}return true};URLStateMachine.prototype["parse path"]=function parsePath(Wt){if(isNaN(Wt)||Wt===p("/")||isSpecial(this.url)&&Wt===p("\\")||!this.stateOverride&&(Wt===p("?")||Wt===p("#"))){if(isSpecial(this.url)&&Wt===p("\\")){this.parseError=true}if(isDoubleDot(this.buffer)){shortenPath(this.url);if(Wt!==p("/")&&!(isSpecial(this.url)&&Wt===p("\\"))){this.url.path.push("")}}else if(isSingleDot(this.buffer)&&Wt!==p("/")&&!(isSpecial(this.url)&&Wt===p("\\"))){this.url.path.push("")}else if(!isSingleDot(this.buffer)){if(this.url.scheme==="file"&&this.url.path.length===0&&isWindowsDriveLetterString(this.buffer)){this.buffer=`${this.buffer[0]}:`}this.url.path.push(this.buffer)}this.buffer="";if(Wt===p("?")){this.url.query="";this.state="query"}if(Wt===p("#")){this.url.fragment="";this.state="fragment"}}else{if(Wt===p("%")&&(!nn.isASCIIHex(this.input[this.pointer+1])||!nn.isASCIIHex(this.input[this.pointer+2]))){this.parseError=true}this.buffer+=In(Wt,pn)}return true};URLStateMachine.prototype["parse opaque path"]=function parseOpaquePath(Wt){if(Wt===p("?")){this.url.query="";this.state="query"}else if(Wt===p("#")){this.url.fragment="";this.state="fragment"}else{if(!isNaN(Wt)&&Wt!==p("%")){this.parseError=true}if(Wt===p("%")&&(!nn.isASCIIHex(this.input[this.pointer+1])||!nn.isASCIIHex(this.input[this.pointer+2]))){this.parseError=true}if(!isNaN(Wt)){this.url.path+=In(Wt,on)}}return true};URLStateMachine.prototype["parse query"]=function parseQuery(Wt,Pt){if(!isSpecial(this.url)||this.url.scheme==="ws"||this.url.scheme==="wss"){this.encodingOverride="utf-8"}if(!this.stateOverride&&Wt===p("#")||isNaN(Wt)){const Pt=isSpecial(this.url)?un:dn;this.url.query+=sn(this.buffer,Pt);this.buffer="";if(Wt===p("#")){this.url.fragment="";this.state="fragment"}}else if(!isNaN(Wt)){if(Wt===p("%")&&(!nn.isASCIIHex(this.input[this.pointer+1])||!nn.isASCIIHex(this.input[this.pointer+2]))){this.parseError=true}this.buffer+=Pt}return true};URLStateMachine.prototype["parse fragment"]=function parseFragment(Wt){if(!isNaN(Wt)){if(Wt===p("%")&&(!nn.isASCIIHex(this.input[this.pointer+1])||!nn.isASCIIHex(this.input[this.pointer+2]))){this.parseError=true}this.url.fragment+=In(Wt,cn)}return true};function serializeURL(Wt,Pt){let en=`${Wt.scheme}:`;if(Wt.host!==null){en+="//";if(Wt.username!==""||Wt.password!==""){en+=Wt.username;if(Wt.password!==""){en+=`:${Wt.password}`}en+="@"}en+=serializeHost(Wt.host);if(Wt.port!==null){en+=`:${Wt.port}`}}if(Wt.host===null&&!hasAnOpaquePath(Wt)&&Wt.path.length>1&&Wt.path[0]===""){en+="/."}en+=serializePath(Wt);if(Wt.query!==null){en+=`?${Wt.query}`}if(!Pt&&Wt.fragment!==null){en+=`#${Wt.fragment}`}return en}function serializeOrigin(Wt){let Pt=`${Wt.scheme}://`;Pt+=serializeHost(Wt.host);if(Wt.port!==null){Pt+=`:${Wt.port}`}return Pt}function serializePath(Wt){if(hasAnOpaquePath(Wt)){return Wt.path}let Pt="";for(const en of Wt.path){Pt+=`/${en}`}return Pt}Wt.exports.serializeURL=serializeURL;Wt.exports.serializePath=serializePath;Wt.exports.serializeURLOrigin=function(Pt){switch(Pt.scheme){case"blob":{const en=Wt.exports.parseURL(serializePath(Pt));if(en===null){return"null"}if(en.scheme!=="http"&&en.scheme!=="https"){return"null"}return Wt.exports.serializeURLOrigin(en)}case"ftp":case"http":case"https":case"ws":case"wss":return serializeOrigin({scheme:Pt.scheme,host:Pt.host,port:Pt.port});case"file":return"null";default:return"null"}};Wt.exports.basicURLParse=function(Wt,Pt){if(Pt===undefined){Pt={}}const en=new URLStateMachine(Wt,Pt.baseURL,Pt.encodingOverride,Pt.url,Pt.stateOverride);if(en.failure){return null}return en.url};Wt.exports.setTheUsername=function(Wt,Pt){Wt.username=sn(Pt,mn)};Wt.exports.setThePassword=function(Wt,Pt){Wt.password=sn(Pt,mn)};Wt.exports.serializeHost=serializeHost;Wt.exports.cannotHaveAUsernamePasswordPort=cannotHaveAUsernamePasswordPort;Wt.exports.hasAnOpaquePath=hasAnOpaquePath;Wt.exports.serializeInteger=function(Wt){return String(Wt)};Wt.exports.parseURL=function(Pt,en){if(en===undefined){en={}}return Wt.exports.basicURLParse(Pt,{baseURL:en.baseURL,encodingOverride:en.encodingOverride})}},36367:(Wt,Pt,en)=>{"use strict";const{utf8Encode:tn,utf8DecodeWithoutBOM:nn}=en(84887);const{percentDecodeBytes:an,utf8PercentEncodeString:rn,isURLEncodedPercentEncode:In}=en(687);function p(Wt){return Wt.codePointAt(0)}function parseUrlencoded(Wt){const Pt=strictlySplitByteSequence(Wt,p("&"));const en=[];for(const Wt of Pt){if(Wt.length===0){continue}let Pt,tn;const rn=Wt.indexOf(p("="));if(rn>=0){Pt=Wt.slice(0,rn);tn=Wt.slice(rn+1)}else{Pt=Wt;tn=new Uint8Array(0)}Pt=replaceByteInByteSequence(Pt,43,32);tn=replaceByteInByteSequence(tn,43,32);const In=nn(an(Pt));const sn=nn(an(tn));en.push([In,sn])}return en}function parseUrlencodedString(Wt){return parseUrlencoded(tn(Wt))}function serializeUrlencoded(Wt,Pt=undefined){let en="utf-8";if(Pt!==undefined){en=Pt}let tn="";for(const[Pt,nn]of Wt.entries()){const Wt=rn(nn[0],In,true);let an=nn[1];if(nn.length>2&&nn[2]!==undefined){if(nn[2]==="hidden"&&Wt==="_charset_"){an=en}else if(nn[2]==="file"){an=an.name}}an=rn(an,In,true);if(Pt!==0){tn+="&"}tn+=`${Wt}=${an}`}return tn}function strictlySplitByteSequence(Wt,Pt){const en=[];let tn=0;let nn=Wt.indexOf(Pt);while(nn>=0){en.push(Wt.slice(tn,nn));tn=nn+1;nn=Wt.indexOf(Pt,tn)}if(tn!==Wt.length){en.push(Wt.slice(tn))}return en}function replaceByteInByteSequence(Wt,Pt,en){let tn=Wt.indexOf(Pt);while(tn>=0){Wt[tn]=en;tn=Wt.indexOf(Pt,tn+1)}return Wt}Wt.exports={parseUrlencodedString:parseUrlencodedString,serializeUrlencoded:serializeUrlencoded}},39857:(Wt,Pt)=>{"use strict";function isObject(Wt){return typeof Wt==="object"&&Wt!==null||typeof Wt==="function"}const en=Function.prototype.call.bind(Object.prototype.hasOwnProperty);function define(Wt,Pt){for(const en of Reflect.ownKeys(Pt)){const tn=Reflect.getOwnPropertyDescriptor(Pt,en);if(tn&&!Reflect.defineProperty(Wt,en,tn)){throw new TypeError(`Cannot redefine property: ${String(en)}`)}}}function newObjectInRealm(Wt,Pt){const en=initCtorRegistry(Wt);return Object.defineProperties(Object.create(en["%Object.prototype%"]),Object.getOwnPropertyDescriptors(Pt))}const tn=Symbol("wrapper");const nn=Symbol("impl");const an=Symbol("SameObject caches");const rn=Symbol.for("[webidl2js] constructor registry");const In=Object.getPrototypeOf(Object.getPrototypeOf((async function*(){})).prototype);function initCtorRegistry(Wt){if(en(Wt,rn)){return Wt[rn]}const Pt=Object.create(null);Pt["%Object.prototype%"]=Wt.Object.prototype;Pt["%IteratorPrototype%"]=Object.getPrototypeOf(Object.getPrototypeOf((new Wt.Array)[Symbol.iterator]()));try{Pt["%AsyncIteratorPrototype%"]=Object.getPrototypeOf(Object.getPrototypeOf(Wt.eval("(async function* () {})").prototype))}catch{Pt["%AsyncIteratorPrototype%"]=In}Wt[rn]=Pt;return Pt}function getSameObject(Wt,Pt,en){if(!Wt[an]){Wt[an]=Object.create(null)}if(Pt in Wt[an]){return Wt[an][Pt]}Wt[an][Pt]=en();return Wt[an][Pt]}function wrapperForImpl(Wt){return Wt?Wt[tn]:null}function implForWrapper(Wt){return Wt?Wt[nn]:null}function tryWrapperForImpl(Wt){const Pt=wrapperForImpl(Wt);return Pt?Pt:Wt}function tryImplForWrapper(Wt){const Pt=implForWrapper(Wt);return Pt?Pt:Wt}const sn=Symbol("internal");function isArrayIndexPropName(Wt){if(typeof Wt!=="string"){return false}const Pt=Wt>>>0;if(Pt===2**32-1){return false}const en=`${Pt}`;if(Wt!==en){return false}return true}const on=Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get;function isArrayBuffer(Wt){try{on.call(Wt);return true}catch(Wt){return false}}function iteratorResult([Wt,Pt],en){let tn;switch(en){case"key":tn=Wt;break;case"value":tn=Pt;break;case"key+value":tn=[Wt,Pt];break}return{value:tn,done:false}}const cn=Symbol("supports property index");const dn=Symbol("supported property indices");const un=Symbol("supports property name");const pn=Symbol("supported property names");const mn=Symbol("indexed property get");const bn=Symbol("indexed property set new");const Gn=Symbol("indexed property set existing");const hn=Symbol("named property get");const Zn=Symbol("named property set new");const An=Symbol("named property set existing");const Wn=Symbol("named property delete");const Nn=Symbol("async iterator get the next iteration result");const gn=Symbol("async iterator return steps");const yn=Symbol("async iterator initialization steps");const vn=Symbol("async iterator end of iteration");Wt.exports=Pt={isObject:isObject,hasOwn:en,define:define,newObjectInRealm:newObjectInRealm,wrapperSymbol:tn,implSymbol:nn,getSameObject:getSameObject,ctorRegistrySymbol:rn,initCtorRegistry:initCtorRegistry,wrapperForImpl:wrapperForImpl,implForWrapper:implForWrapper,tryWrapperForImpl:tryWrapperForImpl,tryImplForWrapper:tryImplForWrapper,iterInternalSymbol:sn,isArrayBuffer:isArrayBuffer,isArrayIndexPropName:isArrayIndexPropName,supportsPropertyIndex:cn,supportedPropertyIndices:dn,supportsPropertyName:un,supportedPropertyNames:pn,indexedGet:mn,indexedSetNew:bn,indexedSetExisting:Gn,namedGet:hn,namedSetNew:Zn,namedSetExisting:An,namedDelete:Wn,asyncIteratorNext:Nn,asyncIteratorReturn:gn,asyncIteratorInit:yn,asyncIteratorEOI:vn,iteratorResult:iteratorResult}},74108:(Wt,Pt,en)=>{"use strict";const tn=en(66633);const nn=en(63627);Pt.URL=tn;Pt.URLSearchParams=nn},58264:Wt=>{Wt.exports=wrappy;function wrappy(Wt,Pt){if(Wt&&Pt)return wrappy(Wt)(Pt);if(typeof Wt!=="function")throw new TypeError("need wrapper function");Object.keys(Wt).forEach((function(Pt){wrapper[Pt]=Wt[Pt]}));return wrapper;function wrapper(){var Pt=new Array(arguments.length);for(var en=0;en{"use strict";const tn=en(56681);tn.createWebSocketStream=en(86412);tn.Server=en(70129);tn.Receiver=en(20893);tn.Sender=en(7389);tn.WebSocket=tn;tn.WebSocketServer=tn.Server;Wt.exports=tn},95803:(Wt,Pt,en)=>{"use strict";const{EMPTY_BUFFER:tn}=en(71791);const nn=Buffer[Symbol.species];function concat(Wt,Pt){if(Wt.length===0)return tn;if(Wt.length===1)return Wt[0];const en=Buffer.allocUnsafe(Pt);let an=0;for(let Pt=0;Pt{"use strict";const Pt=["nodebuffer","arraybuffer","fragments"];const en=typeof Blob!=="undefined";if(en)Pt.push("blob");Wt.exports={BINARY_TYPES:Pt,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:en,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}},34634:(Wt,Pt,en)=>{"use strict";const{kForOnEventAttribute:tn,kListener:nn}=en(71791);const an=Symbol("kCode");const rn=Symbol("kData");const In=Symbol("kError");const sn=Symbol("kMessage");const on=Symbol("kReason");const cn=Symbol("kTarget");const dn=Symbol("kType");const un=Symbol("kWasClean");class Event{constructor(Wt){this[cn]=null;this[dn]=Wt}get target(){return this[cn]}get type(){return this[dn]}}Object.defineProperty(Event.prototype,"target",{enumerable:true});Object.defineProperty(Event.prototype,"type",{enumerable:true});class CloseEvent extends Event{constructor(Wt,Pt={}){super(Wt);this[an]=Pt.code===undefined?0:Pt.code;this[on]=Pt.reason===undefined?"":Pt.reason;this[un]=Pt.wasClean===undefined?false:Pt.wasClean}get code(){return this[an]}get reason(){return this[on]}get wasClean(){return this[un]}}Object.defineProperty(CloseEvent.prototype,"code",{enumerable:true});Object.defineProperty(CloseEvent.prototype,"reason",{enumerable:true});Object.defineProperty(CloseEvent.prototype,"wasClean",{enumerable:true});class ErrorEvent extends Event{constructor(Wt,Pt={}){super(Wt);this[In]=Pt.error===undefined?null:Pt.error;this[sn]=Pt.message===undefined?"":Pt.message}get error(){return this[In]}get message(){return this[sn]}}Object.defineProperty(ErrorEvent.prototype,"error",{enumerable:true});Object.defineProperty(ErrorEvent.prototype,"message",{enumerable:true});class MessageEvent extends Event{constructor(Wt,Pt={}){super(Wt);this[rn]=Pt.data===undefined?null:Pt.data}get data(){return this[rn]}}Object.defineProperty(MessageEvent.prototype,"data",{enumerable:true});const pn={addEventListener(Wt,Pt,en={}){for(const an of this.listeners(Wt)){if(!en[tn]&&an[nn]===Pt&&!an[tn]){return}}let an;if(Wt==="message"){an=function onMessage(Wt,en){const tn=new MessageEvent("message",{data:en?Wt:Wt.toString()});tn[cn]=this;callListener(Pt,this,tn)}}else if(Wt==="close"){an=function onClose(Wt,en){const tn=new CloseEvent("close",{code:Wt,reason:en.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});tn[cn]=this;callListener(Pt,this,tn)}}else if(Wt==="error"){an=function onError(Wt){const en=new ErrorEvent("error",{error:Wt,message:Wt.message});en[cn]=this;callListener(Pt,this,en)}}else if(Wt==="open"){an=function onOpen(){const Wt=new Event("open");Wt[cn]=this;callListener(Pt,this,Wt)}}else{return}an[tn]=!!en[tn];an[nn]=Pt;if(en.once){this.once(Wt,an)}else{this.on(Wt,an)}},removeEventListener(Wt,Pt){for(const en of this.listeners(Wt)){if(en[nn]===Pt&&!en[tn]){this.removeListener(Wt,en);break}}}};Wt.exports={CloseEvent:CloseEvent,ErrorEvent:ErrorEvent,Event:Event,EventTarget:pn,MessageEvent:MessageEvent};function callListener(Wt,Pt,en){if(typeof Wt==="object"&&Wt.handleEvent){Wt.handleEvent.call(Wt,en)}else{Wt.call(Pt,en)}}},61335:(Wt,Pt,en)=>{"use strict";const{tokenChars:tn}=en(26615);function push(Wt,Pt,en){if(Wt[Pt]===undefined)Wt[Pt]=[en];else Wt[Pt].push(en)}function parse(Wt){const Pt=Object.create(null);let en=Object.create(null);let nn=false;let an=false;let rn=false;let In;let sn;let on=-1;let cn=-1;let dn=-1;let un=0;for(;un{let en=Wt[Pt];if(!Array.isArray(en))en=[en];return en.map((Wt=>[Pt].concat(Object.keys(Wt).map((Pt=>{let en=Wt[Pt];if(!Array.isArray(en))en=[en];return en.map((Wt=>Wt===true?Pt:`${Pt}=${Wt}`)).join("; ")}))).join("; "))).join(", ")})).join(", ")}Wt.exports={format:format,parse:parse}},10958:Wt=>{"use strict";const Pt=Symbol("kDone");const en=Symbol("kRun");class Limiter{constructor(Wt){this[Pt]=()=>{this.pending--;this[en]()};this.concurrency=Wt||Infinity;this.jobs=[];this.pending=0}add(Wt){this.jobs.push(Wt);this[en]()}[en](){if(this.pending===this.concurrency)return;if(this.jobs.length){const Wt=this.jobs.shift();this.pending++;Wt(this[Pt])}}}Wt.exports=Limiter},4376:(Wt,Pt,en)=>{"use strict";const tn=en(43106);const nn=en(95803);const an=en(10958);const{kStatusCode:rn}=en(71791);const In=Buffer[Symbol.species];const sn=Buffer.from([0,0,255,255]);const on=Symbol("permessage-deflate");const cn=Symbol("total-length");const dn=Symbol("callback");const un=Symbol("buffers");const pn=Symbol("error");let mn;class PerMessageDeflate{constructor(Wt,Pt,en){this._maxPayload=en|0;this._options=Wt||{};this._threshold=this._options.threshold!==undefined?this._options.threshold:1024;this._isServer=!!Pt;this._deflate=null;this._inflate=null;this.params=null;if(!mn){const Wt=this._options.concurrencyLimit!==undefined?this._options.concurrencyLimit:10;mn=new an(Wt)}}static get extensionName(){return"permessage-deflate"}offer(){const Wt={};if(this._options.serverNoContextTakeover){Wt.server_no_context_takeover=true}if(this._options.clientNoContextTakeover){Wt.client_no_context_takeover=true}if(this._options.serverMaxWindowBits){Wt.server_max_window_bits=this._options.serverMaxWindowBits}if(this._options.clientMaxWindowBits){Wt.client_max_window_bits=this._options.clientMaxWindowBits}else if(this._options.clientMaxWindowBits==null){Wt.client_max_window_bits=true}return Wt}accept(Wt){Wt=this.normalizeParams(Wt);this.params=this._isServer?this.acceptAsServer(Wt):this.acceptAsClient(Wt);return this.params}cleanup(){if(this._inflate){this._inflate.close();this._inflate=null}if(this._deflate){const Wt=this._deflate[dn];this._deflate.close();this._deflate=null;if(Wt){Wt(new Error("The deflate stream was closed while data was being processed"))}}}acceptAsServer(Wt){const Pt=this._options;const en=Wt.find((Wt=>{if(Pt.serverNoContextTakeover===false&&Wt.server_no_context_takeover||Wt.server_max_window_bits&&(Pt.serverMaxWindowBits===false||typeof Pt.serverMaxWindowBits==="number"&&Pt.serverMaxWindowBits>Wt.server_max_window_bits)||typeof Pt.clientMaxWindowBits==="number"&&!Wt.client_max_window_bits){return false}return true}));if(!en){throw new Error("None of the extension offers can be accepted")}if(Pt.serverNoContextTakeover){en.server_no_context_takeover=true}if(Pt.clientNoContextTakeover){en.client_no_context_takeover=true}if(typeof Pt.serverMaxWindowBits==="number"){en.server_max_window_bits=Pt.serverMaxWindowBits}if(typeof Pt.clientMaxWindowBits==="number"){en.client_max_window_bits=Pt.clientMaxWindowBits}else if(en.client_max_window_bits===true||Pt.clientMaxWindowBits===false){delete en.client_max_window_bits}return en}acceptAsClient(Wt){const Pt=Wt[0];if(this._options.clientNoContextTakeover===false&&Pt.client_no_context_takeover){throw new Error('Unexpected parameter "client_no_context_takeover"')}if(!Pt.client_max_window_bits){if(typeof this._options.clientMaxWindowBits==="number"){Pt.client_max_window_bits=this._options.clientMaxWindowBits}}else if(this._options.clientMaxWindowBits===false||typeof this._options.clientMaxWindowBits==="number"&&Pt.client_max_window_bits>this._options.clientMaxWindowBits){throw new Error('Unexpected or invalid parameter "client_max_window_bits"')}return Pt}normalizeParams(Wt){Wt.forEach((Wt=>{Object.keys(Wt).forEach((Pt=>{let en=Wt[Pt];if(en.length>1){throw new Error(`Parameter "${Pt}" must have only a single value`)}en=en[0];if(Pt==="client_max_window_bits"){if(en!==true){const Wt=+en;if(!Number.isInteger(Wt)||Wt<8||Wt>15){throw new TypeError(`Invalid value for parameter "${Pt}": ${en}`)}en=Wt}else if(!this._isServer){throw new TypeError(`Invalid value for parameter "${Pt}": ${en}`)}}else if(Pt==="server_max_window_bits"){const Wt=+en;if(!Number.isInteger(Wt)||Wt<8||Wt>15){throw new TypeError(`Invalid value for parameter "${Pt}": ${en}`)}en=Wt}else if(Pt==="client_no_context_takeover"||Pt==="server_no_context_takeover"){if(en!==true){throw new TypeError(`Invalid value for parameter "${Pt}": ${en}`)}}else{throw new Error(`Unknown parameter "${Pt}"`)}Wt[Pt]=en}))}));return Wt}decompress(Wt,Pt,en){mn.add((tn=>{this._decompress(Wt,Pt,((Wt,Pt)=>{tn();en(Wt,Pt)}))}))}compress(Wt,Pt,en){mn.add((tn=>{this._compress(Wt,Pt,((Wt,Pt)=>{tn();en(Wt,Pt)}))}))}_decompress(Wt,Pt,en){const an=this._isServer?"client":"server";if(!this._inflate){const Wt=`${an}_max_window_bits`;const Pt=typeof this.params[Wt]!=="number"?tn.Z_DEFAULT_WINDOWBITS:this.params[Wt];this._inflate=tn.createInflateRaw({...this._options.zlibInflateOptions,windowBits:Pt});this._inflate[on]=this;this._inflate[cn]=0;this._inflate[un]=[];this._inflate.on("error",inflateOnError);this._inflate.on("data",inflateOnData)}this._inflate[dn]=en;this._inflate.write(Wt);if(Pt)this._inflate.write(sn);this._inflate.flush((()=>{const Wt=this._inflate[pn];if(Wt){this._inflate.close();this._inflate=null;en(Wt);return}const tn=nn.concat(this._inflate[un],this._inflate[cn]);if(this._inflate._readableState.endEmitted){this._inflate.close();this._inflate=null}else{this._inflate[cn]=0;this._inflate[un]=[];if(Pt&&this.params[`${an}_no_context_takeover`]){this._inflate.reset()}}en(null,tn)}))}_compress(Wt,Pt,en){const an=this._isServer?"server":"client";if(!this._deflate){const Wt=`${an}_max_window_bits`;const Pt=typeof this.params[Wt]!=="number"?tn.Z_DEFAULT_WINDOWBITS:this.params[Wt];this._deflate=tn.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:Pt});this._deflate[cn]=0;this._deflate[un]=[];this._deflate.on("data",deflateOnData)}this._deflate[dn]=en;this._deflate.write(Wt);this._deflate.flush(tn.Z_SYNC_FLUSH,(()=>{if(!this._deflate){return}let Wt=nn.concat(this._deflate[un],this._deflate[cn]);if(Pt){Wt=new In(Wt.buffer,Wt.byteOffset,Wt.length-4)}this._deflate[dn]=null;this._deflate[cn]=0;this._deflate[un]=[];if(Pt&&this.params[`${an}_no_context_takeover`]){this._deflate.reset()}en(null,Wt)}))}}Wt.exports=PerMessageDeflate;function deflateOnData(Wt){this[un].push(Wt);this[cn]+=Wt.length}function inflateOnData(Wt){this[cn]+=Wt.length;if(this[on]._maxPayload<1||this[cn]<=this[on]._maxPayload){this[un].push(Wt);return}this[pn]=new RangeError("Max payload size exceeded");this[pn].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH";this[pn][rn]=1009;this.removeListener("data",inflateOnData);this.reset()}function inflateOnError(Wt){this[on]._inflate=null;Wt[rn]=1007;this[dn](Wt)}},20893:(Wt,Pt,en)=>{"use strict";const{Writable:tn}=en(2203);const nn=en(4376);const{BINARY_TYPES:an,EMPTY_BUFFER:rn,kStatusCode:In,kWebSocket:sn}=en(71791);const{concat:on,toArrayBuffer:cn,unmask:dn}=en(95803);const{isValidStatusCode:un,isValidUTF8:pn}=en(26615);const mn=Buffer[Symbol.species];const bn=0;const Gn=1;const hn=2;const Zn=3;const An=4;const Wn=5;const Nn=6;class Receiver extends tn{constructor(Wt={}){super();this._allowSynchronousEvents=Wt.allowSynchronousEvents!==undefined?Wt.allowSynchronousEvents:true;this._binaryType=Wt.binaryType||an[0];this._extensions=Wt.extensions||{};this._isServer=!!Wt.isServer;this._maxPayload=Wt.maxPayload|0;this._skipUTF8Validation=!!Wt.skipUTF8Validation;this[sn]=undefined;this._bufferedBytes=0;this._buffers=[];this._compressed=false;this._payloadLength=0;this._mask=undefined;this._fragmented=0;this._masked=false;this._fin=false;this._opcode=0;this._totalPayloadLength=0;this._messageLength=0;this._fragments=[];this._errored=false;this._loop=false;this._state=bn}_write(Wt,Pt,en){if(this._opcode===8&&this._state==bn)return en();this._bufferedBytes+=Wt.length;this._buffers.push(Wt);this.startLoop(en)}consume(Wt){this._bufferedBytes-=Wt;if(Wt===this._buffers[0].length)return this._buffers.shift();if(Wt=en.length){Pt.set(this._buffers.shift(),tn)}else{Pt.set(new Uint8Array(en.buffer,en.byteOffset,Wt),tn);this._buffers[0]=new mn(en.buffer,en.byteOffset+Wt,en.length-Wt)}Wt-=en.length}while(Wt>0);return Pt}startLoop(Wt){this._loop=true;do{switch(this._state){case bn:this.getInfo(Wt);break;case Gn:this.getPayloadLength16(Wt);break;case hn:this.getPayloadLength64(Wt);break;case Zn:this.getMask();break;case An:this.getData(Wt);break;case Wn:case Nn:this._loop=false;return}}while(this._loop);if(!this._errored)Wt()}getInfo(Wt){if(this._bufferedBytes<2){this._loop=false;return}const Pt=this.consume(2);if((Pt[0]&48)!==0){const Pt=this.createError(RangeError,"RSV2 and RSV3 must be clear",true,1002,"WS_ERR_UNEXPECTED_RSV_2_3");Wt(Pt);return}const en=(Pt[0]&64)===64;if(en&&!this._extensions[nn.extensionName]){const Pt=this.createError(RangeError,"RSV1 must be clear",true,1002,"WS_ERR_UNEXPECTED_RSV_1");Wt(Pt);return}this._fin=(Pt[0]&128)===128;this._opcode=Pt[0]&15;this._payloadLength=Pt[1]&127;if(this._opcode===0){if(en){const Pt=this.createError(RangeError,"RSV1 must be clear",true,1002,"WS_ERR_UNEXPECTED_RSV_1");Wt(Pt);return}if(!this._fragmented){const Pt=this.createError(RangeError,"invalid opcode 0",true,1002,"WS_ERR_INVALID_OPCODE");Wt(Pt);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){const Pt=this.createError(RangeError,`invalid opcode ${this._opcode}`,true,1002,"WS_ERR_INVALID_OPCODE");Wt(Pt);return}this._compressed=en}else if(this._opcode>7&&this._opcode<11){if(!this._fin){const Pt=this.createError(RangeError,"FIN must be set",true,1002,"WS_ERR_EXPECTED_FIN");Wt(Pt);return}if(en){const Pt=this.createError(RangeError,"RSV1 must be clear",true,1002,"WS_ERR_UNEXPECTED_RSV_1");Wt(Pt);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){const Pt=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,true,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");Wt(Pt);return}}else{const Pt=this.createError(RangeError,`invalid opcode ${this._opcode}`,true,1002,"WS_ERR_INVALID_OPCODE");Wt(Pt);return}if(!this._fin&&!this._fragmented)this._fragmented=this._opcode;this._masked=(Pt[1]&128)===128;if(this._isServer){if(!this._masked){const Pt=this.createError(RangeError,"MASK must be set",true,1002,"WS_ERR_EXPECTED_MASK");Wt(Pt);return}}else if(this._masked){const Pt=this.createError(RangeError,"MASK must be clear",true,1002,"WS_ERR_UNEXPECTED_MASK");Wt(Pt);return}if(this._payloadLength===126)this._state=Gn;else if(this._payloadLength===127)this._state=hn;else this.haveLength(Wt)}getPayloadLength16(Wt){if(this._bufferedBytes<2){this._loop=false;return}this._payloadLength=this.consume(2).readUInt16BE(0);this.haveLength(Wt)}getPayloadLength64(Wt){if(this._bufferedBytes<8){this._loop=false;return}const Pt=this.consume(8);const en=Pt.readUInt32BE(0);if(en>Math.pow(2,53-32)-1){const Pt=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",false,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");Wt(Pt);return}this._payloadLength=en*Math.pow(2,32)+Pt.readUInt32BE(4);this.haveLength(Wt)}haveLength(Wt){if(this._payloadLength&&this._opcode<8){this._totalPayloadLength+=this._payloadLength;if(this._totalPayloadLength>this._maxPayload&&this._maxPayload>0){const Pt=this.createError(RangeError,"Max payload size exceeded",false,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");Wt(Pt);return}}if(this._masked)this._state=Zn;else this._state=An}getMask(){if(this._bufferedBytes<4){this._loop=false;return}this._mask=this.consume(4);this._state=An}getData(Wt){let Pt=rn;if(this._payloadLength){if(this._bufferedBytes7){this.controlMessage(Pt,Wt);return}if(this._compressed){this._state=Wn;this.decompress(Pt,Wt);return}if(Pt.length){this._messageLength=this._totalPayloadLength;this._fragments.push(Pt)}this.dataMessage(Wt)}decompress(Wt,Pt){const en=this._extensions[nn.extensionName];en.decompress(Wt,this._fin,((Wt,en)=>{if(Wt)return Pt(Wt);if(en.length){this._messageLength+=en.length;if(this._messageLength>this._maxPayload&&this._maxPayload>0){const Wt=this.createError(RangeError,"Max payload size exceeded",false,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");Pt(Wt);return}this._fragments.push(en)}this.dataMessage(Pt);if(this._state===bn)this.startLoop(Pt)}))}dataMessage(Wt){if(!this._fin){this._state=bn;return}const Pt=this._messageLength;const en=this._fragments;this._totalPayloadLength=0;this._messageLength=0;this._fragmented=0;this._fragments=[];if(this._opcode===2){let tn;if(this._binaryType==="nodebuffer"){tn=on(en,Pt)}else if(this._binaryType==="arraybuffer"){tn=cn(on(en,Pt))}else if(this._binaryType==="blob"){tn=new Blob(en)}else{tn=en}if(this._allowSynchronousEvents){this.emit("message",tn,true);this._state=bn}else{this._state=Nn;setImmediate((()=>{this.emit("message",tn,true);this._state=bn;this.startLoop(Wt)}))}}else{const tn=on(en,Pt);if(!this._skipUTF8Validation&&!pn(tn)){const Pt=this.createError(Error,"invalid UTF-8 sequence",true,1007,"WS_ERR_INVALID_UTF8");Wt(Pt);return}if(this._state===Wn||this._allowSynchronousEvents){this.emit("message",tn,false);this._state=bn}else{this._state=Nn;setImmediate((()=>{this.emit("message",tn,false);this._state=bn;this.startLoop(Wt)}))}}}controlMessage(Wt,Pt){if(this._opcode===8){if(Wt.length===0){this._loop=false;this.emit("conclude",1005,rn);this.end()}else{const en=Wt.readUInt16BE(0);if(!un(en)){const Wt=this.createError(RangeError,`invalid status code ${en}`,true,1002,"WS_ERR_INVALID_CLOSE_CODE");Pt(Wt);return}const tn=new mn(Wt.buffer,Wt.byteOffset+2,Wt.length-2);if(!this._skipUTF8Validation&&!pn(tn)){const Wt=this.createError(Error,"invalid UTF-8 sequence",true,1007,"WS_ERR_INVALID_UTF8");Pt(Wt);return}this._loop=false;this.emit("conclude",en,tn);this.end()}this._state=bn;return}if(this._allowSynchronousEvents){this.emit(this._opcode===9?"ping":"pong",Wt);this._state=bn}else{this._state=Nn;setImmediate((()=>{this.emit(this._opcode===9?"ping":"pong",Wt);this._state=bn;this.startLoop(Pt)}))}}createError(Wt,Pt,en,tn,nn){this._loop=false;this._errored=true;const an=new Wt(en?`Invalid WebSocket frame: ${Pt}`:Pt);Error.captureStackTrace(an,this.createError);an.code=nn;an[In]=tn;return an}}Wt.exports=Receiver},7389:(Wt,Pt,en)=>{"use strict";const{Duplex:tn}=en(2203);const{randomFillSync:nn}=en(76982);const an=en(4376);const{EMPTY_BUFFER:rn,kWebSocket:In,NOOP:sn}=en(71791);const{isBlob:on,isValidStatusCode:cn}=en(26615);const{mask:dn,toBuffer:un}=en(95803);const pn=Symbol("kByteLength");const mn=Buffer.alloc(4);const bn=8*1024;let Gn;let hn=bn;const Zn=0;const An=1;const Wn=2;class Sender{constructor(Wt,Pt,en){this._extensions=Pt||{};if(en){this._generateMask=en;this._maskBuffer=Buffer.alloc(4)}this._socket=Wt;this._firstFragment=true;this._compress=false;this._bufferedBytes=0;this._queue=[];this._state=Zn;this.onerror=sn;this[In]=undefined}static frame(Wt,Pt){let en;let tn=false;let an=2;let rn=false;if(Pt.mask){en=Pt.maskBuffer||mn;if(Pt.generateMask){Pt.generateMask(en)}else{if(hn===bn){if(Gn===undefined){Gn=Buffer.alloc(bn)}nn(Gn,0,bn);hn=0}en[0]=Gn[hn++];en[1]=Gn[hn++];en[2]=Gn[hn++];en[3]=Gn[hn++]}rn=(en[0]|en[1]|en[2]|en[3])===0;an=6}let In;if(typeof Wt==="string"){if((!Pt.mask||rn)&&Pt[pn]!==undefined){In=Pt[pn]}else{Wt=Buffer.from(Wt);In=Wt.length}}else{In=Wt.length;tn=Pt.mask&&Pt.readOnly&&!rn}let sn=In;if(In>=65536){an+=8;sn=127}else if(In>125){an+=2;sn=126}const on=Buffer.allocUnsafe(tn?In+an:an);on[0]=Pt.fin?Pt.opcode|128:Pt.opcode;if(Pt.rsv1)on[0]|=64;on[1]=sn;if(sn===126){on.writeUInt16BE(In,2)}else if(sn===127){on[2]=on[3]=0;on.writeUIntBE(In,4,6)}if(!Pt.mask)return[on,Wt];on[1]|=128;on[an-4]=en[0];on[an-3]=en[1];on[an-2]=en[2];on[an-1]=en[3];if(rn)return[on,Wt];if(tn){dn(Wt,en,on,an,In);return[on]}dn(Wt,en,Wt,0,In);return[on,Wt]}close(Wt,Pt,en,tn){let nn;if(Wt===undefined){nn=rn}else if(typeof Wt!=="number"||!cn(Wt)){throw new TypeError("First argument must be a valid error code number")}else if(Pt===undefined||!Pt.length){nn=Buffer.allocUnsafe(2);nn.writeUInt16BE(Wt,0)}else{const en=Buffer.byteLength(Pt);if(en>123){throw new RangeError("The message must not be greater than 123 bytes")}nn=Buffer.allocUnsafe(2+en);nn.writeUInt16BE(Wt,0);if(typeof Pt==="string"){nn.write(Pt,2)}else{nn.set(Pt,2)}}const an={[pn]:nn.length,fin:true,generateMask:this._generateMask,mask:en,maskBuffer:this._maskBuffer,opcode:8,readOnly:false,rsv1:false};if(this._state!==Zn){this.enqueue([this.dispatch,nn,false,an,tn])}else{this.sendFrame(Sender.frame(nn,an),tn)}}ping(Wt,Pt,en){let tn;let nn;if(typeof Wt==="string"){tn=Buffer.byteLength(Wt);nn=false}else if(on(Wt)){tn=Wt.size;nn=false}else{Wt=un(Wt);tn=Wt.length;nn=un.readOnly}if(tn>125){throw new RangeError("The data size must not be greater than 125 bytes")}const an={[pn]:tn,fin:true,generateMask:this._generateMask,mask:Pt,maskBuffer:this._maskBuffer,opcode:9,readOnly:nn,rsv1:false};if(on(Wt)){if(this._state!==Zn){this.enqueue([this.getBlobData,Wt,false,an,en])}else{this.getBlobData(Wt,false,an,en)}}else if(this._state!==Zn){this.enqueue([this.dispatch,Wt,false,an,en])}else{this.sendFrame(Sender.frame(Wt,an),en)}}pong(Wt,Pt,en){let tn;let nn;if(typeof Wt==="string"){tn=Buffer.byteLength(Wt);nn=false}else if(on(Wt)){tn=Wt.size;nn=false}else{Wt=un(Wt);tn=Wt.length;nn=un.readOnly}if(tn>125){throw new RangeError("The data size must not be greater than 125 bytes")}const an={[pn]:tn,fin:true,generateMask:this._generateMask,mask:Pt,maskBuffer:this._maskBuffer,opcode:10,readOnly:nn,rsv1:false};if(on(Wt)){if(this._state!==Zn){this.enqueue([this.getBlobData,Wt,false,an,en])}else{this.getBlobData(Wt,false,an,en)}}else if(this._state!==Zn){this.enqueue([this.dispatch,Wt,false,an,en])}else{this.sendFrame(Sender.frame(Wt,an),en)}}send(Wt,Pt,en){const tn=this._extensions[an.extensionName];let nn=Pt.binary?2:1;let rn=Pt.compress;let In;let sn;if(typeof Wt==="string"){In=Buffer.byteLength(Wt);sn=false}else if(on(Wt)){In=Wt.size;sn=false}else{Wt=un(Wt);In=Wt.length;sn=un.readOnly}if(this._firstFragment){this._firstFragment=false;if(rn&&tn&&tn.params[tn._isServer?"server_no_context_takeover":"client_no_context_takeover"]){rn=In>=tn._threshold}this._compress=rn}else{rn=false;nn=0}if(Pt.fin)this._firstFragment=true;const cn={[pn]:In,fin:Pt.fin,generateMask:this._generateMask,mask:Pt.mask,maskBuffer:this._maskBuffer,opcode:nn,readOnly:sn,rsv1:rn};if(on(Wt)){if(this._state!==Zn){this.enqueue([this.getBlobData,Wt,this._compress,cn,en])}else{this.getBlobData(Wt,this._compress,cn,en)}}else if(this._state!==Zn){this.enqueue([this.dispatch,Wt,this._compress,cn,en])}else{this.dispatch(Wt,this._compress,cn,en)}}getBlobData(Wt,Pt,en,tn){this._bufferedBytes+=en[pn];this._state=Wn;Wt.arrayBuffer().then((Wt=>{if(this._socket.destroyed){const Wt=new Error("The socket was closed while the blob was being read");process.nextTick(callCallbacks,this,Wt,tn);return}this._bufferedBytes-=en[pn];const nn=un(Wt);if(!Pt){this._state=Zn;this.sendFrame(Sender.frame(nn,en),tn);this.dequeue()}else{this.dispatch(nn,Pt,en,tn)}})).catch((Wt=>{process.nextTick(onError,this,Wt,tn)}))}dispatch(Wt,Pt,en,tn){if(!Pt){this.sendFrame(Sender.frame(Wt,en),tn);return}const nn=this._extensions[an.extensionName];this._bufferedBytes+=en[pn];this._state=An;nn.compress(Wt,en.fin,((Wt,Pt)=>{if(this._socket.destroyed){const Wt=new Error("The socket was closed while data was being compressed");callCallbacks(this,Wt,tn);return}this._bufferedBytes-=en[pn];this._state=Zn;en.readOnly=false;this.sendFrame(Sender.frame(Pt,en),tn);this.dequeue()}))}dequeue(){while(this._state===Zn&&this._queue.length){const Wt=this._queue.shift();this._bufferedBytes-=Wt[3][pn];Reflect.apply(Wt[0],this,Wt.slice(1))}}enqueue(Wt){this._bufferedBytes+=Wt[3][pn];this._queue.push(Wt)}sendFrame(Wt,Pt){if(Wt.length===2){this._socket.cork();this._socket.write(Wt[0]);this._socket.write(Wt[1],Pt);this._socket.uncork()}else{this._socket.write(Wt[0],Pt)}}}Wt.exports=Sender;function callCallbacks(Wt,Pt,en){if(typeof en==="function")en(Pt);for(let en=0;en{"use strict";const{Duplex:tn}=en(2203);function emitClose(Wt){Wt.emit("close")}function duplexOnEnd(){if(!this.destroyed&&this._writableState.finished){this.destroy()}}function duplexOnError(Wt){this.removeListener("error",duplexOnError);this.destroy();if(this.listenerCount("error")===0){this.emit("error",Wt)}}function createWebSocketStream(Wt,Pt){let en=true;const nn=new tn({...Pt,autoDestroy:false,emitClose:false,objectMode:false,writableObjectMode:false});Wt.on("message",(function message(Pt,en){const tn=!en&&nn._readableState.objectMode?Pt.toString():Pt;if(!nn.push(tn))Wt.pause()}));Wt.once("error",(function error(Wt){if(nn.destroyed)return;en=false;nn.destroy(Wt)}));Wt.once("close",(function close(){if(nn.destroyed)return;nn.push(null)}));nn._destroy=function(Pt,tn){if(Wt.readyState===Wt.CLOSED){tn(Pt);process.nextTick(emitClose,nn);return}let an=false;Wt.once("error",(function error(Wt){an=true;tn(Wt)}));Wt.once("close",(function close(){if(!an)tn(Pt);process.nextTick(emitClose,nn)}));if(en)Wt.terminate()};nn._final=function(Pt){if(Wt.readyState===Wt.CONNECTING){Wt.once("open",(function open(){nn._final(Pt)}));return}if(Wt._socket===null)return;if(Wt._socket._writableState.finished){Pt();if(nn._readableState.endEmitted)nn.destroy()}else{Wt._socket.once("finish",(function finish(){Pt()}));Wt.close()}};nn._read=function(){if(Wt.isPaused)Wt.resume()};nn._write=function(Pt,en,tn){if(Wt.readyState===Wt.CONNECTING){Wt.once("open",(function open(){nn._write(Pt,en,tn)}));return}Wt.send(Pt,tn)};nn.on("end",duplexOnEnd);nn.on("error",duplexOnError);return nn}Wt.exports=createWebSocketStream},43332:(Wt,Pt,en)=>{"use strict";const{tokenChars:tn}=en(26615);function parse(Wt){const Pt=new Set;let en=-1;let nn=-1;let an=0;for(an;an{"use strict";const{isUtf8:tn}=en(20181);const{hasBlob:nn}=en(71791);const an=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function isValidStatusCode(Wt){return Wt>=1e3&&Wt<=1014&&Wt!==1004&&Wt!==1005&&Wt!==1006||Wt>=3e3&&Wt<=4999}function _isValidUTF8(Wt){const Pt=Wt.length;let en=0;while(en=Pt||(Wt[en+1]&192)!==128||(Wt[en+2]&192)!==128||Wt[en]===224&&(Wt[en+1]&224)===128||Wt[en]===237&&(Wt[en+1]&224)===160){return false}en+=3}else if((Wt[en]&248)===240){if(en+3>=Pt||(Wt[en+1]&192)!==128||(Wt[en+2]&192)!==128||(Wt[en+3]&192)!==128||Wt[en]===240&&(Wt[en+1]&240)===128||Wt[en]===244&&Wt[en+1]>143||Wt[en]>244){return false}en+=4}else{return false}}return true}function isBlob(Wt){return nn&&typeof Wt==="object"&&typeof Wt.arrayBuffer==="function"&&typeof Wt.type==="string"&&typeof Wt.stream==="function"&&(Wt[Symbol.toStringTag]==="Blob"||Wt[Symbol.toStringTag]==="File")}Wt.exports={isBlob:isBlob,isValidStatusCode:isValidStatusCode,isValidUTF8:_isValidUTF8,tokenChars:an};if(tn){Wt.exports.isValidUTF8=function(Wt){return Wt.length<24?_isValidUTF8(Wt):tn(Wt)}}else if(!process.env.WS_NO_UTF_8_VALIDATE){try{const Pt=en(62414);Wt.exports.isValidUTF8=function(Wt){return Wt.length<32?_isValidUTF8(Wt):Pt(Wt)}}catch(Wt){}}},70129:(Wt,Pt,en)=>{"use strict";const tn=en(24434);const nn=en(58611);const{Duplex:an}=en(2203);const{createHash:rn}=en(76982);const In=en(61335);const sn=en(4376);const on=en(43332);const cn=en(56681);const{GUID:dn,kWebSocket:un}=en(71791);const pn=/^[+/0-9A-Za-z]{22}==$/;const mn=0;const bn=1;const Gn=2;class WebSocketServer extends tn{constructor(Wt,Pt){super();Wt={allowSynchronousEvents:true,autoPong:true,maxPayload:100*1024*1024,skipUTF8Validation:false,perMessageDeflate:false,handleProtocols:null,clientTracking:true,verifyClient:null,noServer:false,backlog:null,server:null,host:null,path:null,port:null,WebSocket:cn,...Wt};if(Wt.port==null&&!Wt.server&&!Wt.noServer||Wt.port!=null&&(Wt.server||Wt.noServer)||Wt.server&&Wt.noServer){throw new TypeError('One and only one of the "port", "server", or "noServer" options '+"must be specified")}if(Wt.port!=null){this._server=nn.createServer(((Wt,Pt)=>{const en=nn.STATUS_CODES[426];Pt.writeHead(426,{"Content-Length":en.length,"Content-Type":"text/plain"});Pt.end(en)}));this._server.listen(Wt.port,Wt.host,Wt.backlog,Pt)}else if(Wt.server){this._server=Wt.server}if(this._server){const Wt=this.emit.bind(this,"connection");this._removeListeners=addListeners(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(Pt,en,tn)=>{this.handleUpgrade(Pt,en,tn,Wt)}})}if(Wt.perMessageDeflate===true)Wt.perMessageDeflate={};if(Wt.clientTracking){this.clients=new Set;this._shouldEmitClose=false}this.options=Wt;this._state=mn}address(){if(this.options.noServer){throw new Error('The server is operating in "noServer" mode')}if(!this._server)return null;return this._server.address()}close(Wt){if(this._state===Gn){if(Wt){this.once("close",(()=>{Wt(new Error("The server is not running"))}))}process.nextTick(emitClose,this);return}if(Wt)this.once("close",Wt);if(this._state===bn)return;this._state=bn;if(this.options.noServer||this.options.server){if(this._server){this._removeListeners();this._removeListeners=this._server=null}if(this.clients){if(!this.clients.size){process.nextTick(emitClose,this)}else{this._shouldEmitClose=true}}else{process.nextTick(emitClose,this)}}else{const Wt=this._server;this._removeListeners();this._removeListeners=this._server=null;Wt.close((()=>{emitClose(this)}))}}shouldHandle(Wt){if(this.options.path){const Pt=Wt.url.indexOf("?");const en=Pt!==-1?Wt.url.slice(0,Pt):Wt.url;if(en!==this.options.path)return false}return true}handleUpgrade(Wt,Pt,en,tn){Pt.on("error",socketOnError);const nn=Wt.headers["sec-websocket-key"];const an=Wt.headers.upgrade;const rn=+Wt.headers["sec-websocket-version"];if(Wt.method!=="GET"){const en="Invalid HTTP method";abortHandshakeOrEmitwsClientError(this,Wt,Pt,405,en);return}if(an===undefined||an.toLowerCase()!=="websocket"){const en="Invalid Upgrade header";abortHandshakeOrEmitwsClientError(this,Wt,Pt,400,en);return}if(nn===undefined||!pn.test(nn)){const en="Missing or invalid Sec-WebSocket-Key header";abortHandshakeOrEmitwsClientError(this,Wt,Pt,400,en);return}if(rn!==8&&rn!==13){const en="Missing or invalid Sec-WebSocket-Version header";abortHandshakeOrEmitwsClientError(this,Wt,Pt,400,en);return}if(!this.shouldHandle(Wt)){abortHandshake(Pt,400);return}const cn=Wt.headers["sec-websocket-protocol"];let dn=new Set;if(cn!==undefined){try{dn=on.parse(cn)}catch(en){const tn="Invalid Sec-WebSocket-Protocol header";abortHandshakeOrEmitwsClientError(this,Wt,Pt,400,tn);return}}const un=Wt.headers["sec-websocket-extensions"];const mn={};if(this.options.perMessageDeflate&&un!==undefined){const en=new sn(this.options.perMessageDeflate,true,this.options.maxPayload);try{const Wt=In.parse(un);if(Wt[sn.extensionName]){en.accept(Wt[sn.extensionName]);mn[sn.extensionName]=en}}catch(en){const tn="Invalid or unacceptable Sec-WebSocket-Extensions header";abortHandshakeOrEmitwsClientError(this,Wt,Pt,400,tn);return}}if(this.options.verifyClient){const an={origin:Wt.headers[`${rn===8?"sec-websocket-origin":"origin"}`],secure:!!(Wt.socket.authorized||Wt.socket.encrypted),req:Wt};if(this.options.verifyClient.length===2){this.options.verifyClient(an,((an,rn,In,sn)=>{if(!an){return abortHandshake(Pt,rn||401,In,sn)}this.completeUpgrade(mn,nn,dn,Wt,Pt,en,tn)}));return}if(!this.options.verifyClient(an))return abortHandshake(Pt,401)}this.completeUpgrade(mn,nn,dn,Wt,Pt,en,tn)}completeUpgrade(Wt,Pt,en,tn,nn,an,on){if(!nn.readable||!nn.writable)return nn.destroy();if(nn[un]){throw new Error("server.handleUpgrade() was called more than once with the same "+"socket, possibly due to a misconfiguration")}if(this._state>mn)return abortHandshake(nn,503);const cn=rn("sha1").update(Pt+dn).digest("base64");const pn=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${cn}`];const bn=new this.options.WebSocket(null,undefined,this.options);if(en.size){const Wt=this.options.handleProtocols?this.options.handleProtocols(en,tn):en.values().next().value;if(Wt){pn.push(`Sec-WebSocket-Protocol: ${Wt}`);bn._protocol=Wt}}if(Wt[sn.extensionName]){const Pt=Wt[sn.extensionName].params;const en=In.format({[sn.extensionName]:[Pt]});pn.push(`Sec-WebSocket-Extensions: ${en}`);bn._extensions=Wt}this.emit("headers",pn,tn);nn.write(pn.concat("\r\n").join("\r\n"));nn.removeListener("error",socketOnError);bn.setSocket(nn,an,{allowSynchronousEvents:this.options.allowSynchronousEvents,maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation});if(this.clients){this.clients.add(bn);bn.on("close",(()=>{this.clients.delete(bn);if(this._shouldEmitClose&&!this.clients.size){process.nextTick(emitClose,this)}}))}on(bn,tn)}}Wt.exports=WebSocketServer;function addListeners(Wt,Pt){for(const en of Object.keys(Pt))Wt.on(en,Pt[en]);return function removeListeners(){for(const en of Object.keys(Pt)){Wt.removeListener(en,Pt[en])}}}function emitClose(Wt){Wt._state=Gn;Wt.emit("close")}function socketOnError(){this.destroy()}function abortHandshake(Wt,Pt,en,tn){en=en||nn.STATUS_CODES[Pt];tn={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(en),...tn};Wt.once("finish",Wt.destroy);Wt.end(`HTTP/1.1 ${Pt} ${nn.STATUS_CODES[Pt]}\r\n`+Object.keys(tn).map((Wt=>`${Wt}: ${tn[Wt]}`)).join("\r\n")+"\r\n\r\n"+en)}function abortHandshakeOrEmitwsClientError(Wt,Pt,en,tn,nn){if(Wt.listenerCount("wsClientError")){const tn=new Error(nn);Error.captureStackTrace(tn,abortHandshakeOrEmitwsClientError);Wt.emit("wsClientError",tn,en,Pt)}else{abortHandshake(en,tn,nn)}}},56681:(Wt,Pt,en)=>{"use strict";const tn=en(24434);const nn=en(65692);const an=en(58611);const rn=en(69278);const In=en(64756);const{randomBytes:sn,createHash:on}=en(76982);const{Duplex:cn,Readable:dn}=en(2203);const{URL:un}=en(87016);const pn=en(4376);const mn=en(20893);const bn=en(7389);const{isBlob:Gn}=en(26615);const{BINARY_TYPES:hn,EMPTY_BUFFER:Zn,GUID:An,kForOnEventAttribute:Wn,kListener:Nn,kStatusCode:gn,kWebSocket:yn,NOOP:vn}=en(71791);const{EventTarget:{addEventListener:Yn,removeEventListener:En}}=en(34634);const{format:Vn,parse:Rn}=en(61335);const{toBuffer:wn}=en(95803);const Fn=30*1e3;const Qn=Symbol("kAborted");const fn=[8,13];const Hn=["CONNECTING","OPEN","CLOSING","CLOSED"];const Cn=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/;class WebSocket extends tn{constructor(Wt,Pt,en){super();this._binaryType=hn[0];this._closeCode=1006;this._closeFrameReceived=false;this._closeFrameSent=false;this._closeMessage=Zn;this._closeTimer=null;this._errorEmitted=false;this._extensions={};this._paused=false;this._protocol="";this._readyState=WebSocket.CONNECTING;this._receiver=null;this._sender=null;this._socket=null;if(Wt!==null){this._bufferedAmount=0;this._isServer=false;this._redirects=0;if(Pt===undefined){Pt=[]}else if(!Array.isArray(Pt)){if(typeof Pt==="object"&&Pt!==null){en=Pt;Pt=[]}else{Pt=[Pt]}}initAsClient(this,Wt,Pt,en)}else{this._autoPong=en.autoPong;this._isServer=true}}get binaryType(){return this._binaryType}set binaryType(Wt){if(!hn.includes(Wt))return;this._binaryType=Wt;if(this._receiver)this._receiver._binaryType=Wt}get bufferedAmount(){if(!this._socket)return this._bufferedAmount;return this._socket._writableState.length+this._sender._bufferedBytes}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(Wt,Pt,en){const tn=new mn({allowSynchronousEvents:en.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:en.maxPayload,skipUTF8Validation:en.skipUTF8Validation});const nn=new bn(Wt,this._extensions,en.generateMask);this._receiver=tn;this._sender=nn;this._socket=Wt;tn[yn]=this;nn[yn]=this;Wt[yn]=this;tn.on("conclude",receiverOnConclude);tn.on("drain",receiverOnDrain);tn.on("error",receiverOnError);tn.on("message",receiverOnMessage);tn.on("ping",receiverOnPing);tn.on("pong",receiverOnPong);nn.onerror=senderOnError;if(Wt.setTimeout)Wt.setTimeout(0);if(Wt.setNoDelay)Wt.setNoDelay();if(Pt.length>0)Wt.unshift(Pt);Wt.on("close",socketOnClose);Wt.on("data",socketOnData);Wt.on("end",socketOnEnd);Wt.on("error",socketOnError);this._readyState=WebSocket.OPEN;this.emit("open")}emitClose(){if(!this._socket){this._readyState=WebSocket.CLOSED;this.emit("close",this._closeCode,this._closeMessage);return}if(this._extensions[pn.extensionName]){this._extensions[pn.extensionName].cleanup()}this._receiver.removeAllListeners();this._readyState=WebSocket.CLOSED;this.emit("close",this._closeCode,this._closeMessage)}close(Wt,Pt){if(this.readyState===WebSocket.CLOSED)return;if(this.readyState===WebSocket.CONNECTING){const Wt="WebSocket was closed before the connection was established";abortHandshake(this,this._req,Wt);return}if(this.readyState===WebSocket.CLOSING){if(this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)){this._socket.end()}return}this._readyState=WebSocket.CLOSING;this._sender.close(Wt,Pt,!this._isServer,(Wt=>{if(Wt)return;this._closeFrameSent=true;if(this._closeFrameReceived||this._receiver._writableState.errorEmitted){this._socket.end()}}));setCloseTimer(this)}pause(){if(this.readyState===WebSocket.CONNECTING||this.readyState===WebSocket.CLOSED){return}this._paused=true;this._socket.pause()}ping(Wt,Pt,en){if(this.readyState===WebSocket.CONNECTING){throw new Error("WebSocket is not open: readyState 0 (CONNECTING)")}if(typeof Wt==="function"){en=Wt;Wt=Pt=undefined}else if(typeof Pt==="function"){en=Pt;Pt=undefined}if(typeof Wt==="number")Wt=Wt.toString();if(this.readyState!==WebSocket.OPEN){sendAfterClose(this,Wt,en);return}if(Pt===undefined)Pt=!this._isServer;this._sender.ping(Wt||Zn,Pt,en)}pong(Wt,Pt,en){if(this.readyState===WebSocket.CONNECTING){throw new Error("WebSocket is not open: readyState 0 (CONNECTING)")}if(typeof Wt==="function"){en=Wt;Wt=Pt=undefined}else if(typeof Pt==="function"){en=Pt;Pt=undefined}if(typeof Wt==="number")Wt=Wt.toString();if(this.readyState!==WebSocket.OPEN){sendAfterClose(this,Wt,en);return}if(Pt===undefined)Pt=!this._isServer;this._sender.pong(Wt||Zn,Pt,en)}resume(){if(this.readyState===WebSocket.CONNECTING||this.readyState===WebSocket.CLOSED){return}this._paused=false;if(!this._receiver._writableState.needDrain)this._socket.resume()}send(Wt,Pt,en){if(this.readyState===WebSocket.CONNECTING){throw new Error("WebSocket is not open: readyState 0 (CONNECTING)")}if(typeof Pt==="function"){en=Pt;Pt={}}if(typeof Wt==="number")Wt=Wt.toString();if(this.readyState!==WebSocket.OPEN){sendAfterClose(this,Wt,en);return}const tn={binary:typeof Wt!=="string",mask:!this._isServer,compress:true,fin:true,...Pt};if(!this._extensions[pn.extensionName]){tn.compress=false}this._sender.send(Wt||Zn,tn,en)}terminate(){if(this.readyState===WebSocket.CLOSED)return;if(this.readyState===WebSocket.CONNECTING){const Wt="WebSocket was closed before the connection was established";abortHandshake(this,this._req,Wt);return}if(this._socket){this._readyState=WebSocket.CLOSING;this._socket.destroy()}}}Object.defineProperty(WebSocket,"CONNECTING",{enumerable:true,value:Hn.indexOf("CONNECTING")});Object.defineProperty(WebSocket.prototype,"CONNECTING",{enumerable:true,value:Hn.indexOf("CONNECTING")});Object.defineProperty(WebSocket,"OPEN",{enumerable:true,value:Hn.indexOf("OPEN")});Object.defineProperty(WebSocket.prototype,"OPEN",{enumerable:true,value:Hn.indexOf("OPEN")});Object.defineProperty(WebSocket,"CLOSING",{enumerable:true,value:Hn.indexOf("CLOSING")});Object.defineProperty(WebSocket.prototype,"CLOSING",{enumerable:true,value:Hn.indexOf("CLOSING")});Object.defineProperty(WebSocket,"CLOSED",{enumerable:true,value:Hn.indexOf("CLOSED")});Object.defineProperty(WebSocket.prototype,"CLOSED",{enumerable:true,value:Hn.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach((Wt=>{Object.defineProperty(WebSocket.prototype,Wt,{enumerable:true})}));["open","error","close","message"].forEach((Wt=>{Object.defineProperty(WebSocket.prototype,`on${Wt}`,{enumerable:true,get(){for(const Pt of this.listeners(Wt)){if(Pt[Wn])return Pt[Nn]}return null},set(Pt){for(const Pt of this.listeners(Wt)){if(Pt[Wn]){this.removeListener(Wt,Pt);break}}if(typeof Pt!=="function")return;this.addEventListener(Wt,Pt,{[Wn]:true})}})}));WebSocket.prototype.addEventListener=Yn;WebSocket.prototype.removeEventListener=En;Wt.exports=WebSocket;function initAsClient(Wt,Pt,en,tn){const rn={allowSynchronousEvents:true,autoPong:true,protocolVersion:fn[1],maxPayload:100*1024*1024,skipUTF8Validation:false,perMessageDeflate:true,followRedirects:false,maxRedirects:10,...tn,socketPath:undefined,hostname:undefined,protocol:undefined,timeout:undefined,method:"GET",host:undefined,path:undefined,port:undefined};Wt._autoPong=rn.autoPong;if(!fn.includes(rn.protocolVersion)){throw new RangeError(`Unsupported protocol version: ${rn.protocolVersion} `+`(supported versions: ${fn.join(", ")})`)}let In;if(Pt instanceof un){In=Pt}else{try{In=new un(Pt)}catch(Wt){throw new SyntaxError(`Invalid URL: ${Pt}`)}}if(In.protocol==="http:"){In.protocol="ws:"}else if(In.protocol==="https:"){In.protocol="wss:"}Wt._url=In.href;const cn=In.protocol==="wss:";const dn=In.protocol==="ws+unix:";let mn;if(In.protocol!=="ws:"&&!cn&&!dn){mn='The URL\'s protocol must be one of "ws:", "wss:", '+'"http:", "https", or "ws+unix:"'}else if(dn&&!In.pathname){mn="The URL's pathname is empty"}else if(In.hash){mn="The URL contains a fragment identifier"}if(mn){const Pt=new SyntaxError(mn);if(Wt._redirects===0){throw Pt}else{emitErrorAndClose(Wt,Pt);return}}const bn=cn?443:80;const Gn=sn(16).toString("base64");const hn=cn?nn.request:an.request;const Zn=new Set;let Wn;rn.createConnection=rn.createConnection||(cn?tlsConnect:netConnect);rn.defaultPort=rn.defaultPort||bn;rn.port=In.port||bn;rn.host=In.hostname.startsWith("[")?In.hostname.slice(1,-1):In.hostname;rn.headers={...rn.headers,"Sec-WebSocket-Version":rn.protocolVersion,"Sec-WebSocket-Key":Gn,Connection:"Upgrade",Upgrade:"websocket"};rn.path=In.pathname+In.search;rn.timeout=rn.handshakeTimeout;if(rn.perMessageDeflate){Wn=new pn(rn.perMessageDeflate!==true?rn.perMessageDeflate:{},false,rn.maxPayload);rn.headers["Sec-WebSocket-Extensions"]=Vn({[pn.extensionName]:Wn.offer()})}if(en.length){for(const Wt of en){if(typeof Wt!=="string"||!Cn.test(Wt)||Zn.has(Wt)){throw new SyntaxError("An invalid or duplicated subprotocol was specified")}Zn.add(Wt)}rn.headers["Sec-WebSocket-Protocol"]=en.join(",")}if(rn.origin){if(rn.protocolVersion<13){rn.headers["Sec-WebSocket-Origin"]=rn.origin}else{rn.headers.Origin=rn.origin}}if(In.username||In.password){rn.auth=`${In.username}:${In.password}`}if(dn){const Wt=rn.path.split(":");rn.socketPath=Wt[0];rn.path=Wt[1]}let Nn;if(rn.followRedirects){if(Wt._redirects===0){Wt._originalIpc=dn;Wt._originalSecure=cn;Wt._originalHostOrSocketPath=dn?rn.socketPath:In.host;const Pt=tn&&tn.headers;tn={...tn,headers:{}};if(Pt){for(const[Wt,en]of Object.entries(Pt)){tn.headers[Wt.toLowerCase()]=en}}}else if(Wt.listenerCount("redirect")===0){const Pt=dn?Wt._originalIpc?rn.socketPath===Wt._originalHostOrSocketPath:false:Wt._originalIpc?false:In.host===Wt._originalHostOrSocketPath;if(!Pt||Wt._originalSecure&&!cn){delete rn.headers.authorization;delete rn.headers.cookie;if(!Pt)delete rn.headers.host;rn.auth=undefined}}if(rn.auth&&!tn.headers.authorization){tn.headers.authorization="Basic "+Buffer.from(rn.auth).toString("base64")}Nn=Wt._req=hn(rn);if(Wt._redirects){Wt.emit("redirect",Wt.url,Nn)}}else{Nn=Wt._req=hn(rn)}if(rn.timeout){Nn.on("timeout",(()=>{abortHandshake(Wt,Nn,"Opening handshake has timed out")}))}Nn.on("error",(Pt=>{if(Nn===null||Nn[Qn])return;Nn=Wt._req=null;emitErrorAndClose(Wt,Pt)}));Nn.on("response",(nn=>{const an=nn.headers.location;const In=nn.statusCode;if(an&&rn.followRedirects&&In>=300&&In<400){if(++Wt._redirects>rn.maxRedirects){abortHandshake(Wt,Nn,"Maximum redirects exceeded");return}Nn.abort();let nn;try{nn=new un(an,Pt)}catch(Pt){const en=new SyntaxError(`Invalid URL: ${an}`);emitErrorAndClose(Wt,en);return}initAsClient(Wt,nn,en,tn)}else if(!Wt.emit("unexpected-response",Nn,nn)){abortHandshake(Wt,Nn,`Unexpected server response: ${nn.statusCode}`)}}));Nn.on("upgrade",((Pt,en,tn)=>{Wt.emit("upgrade",Pt);if(Wt.readyState!==WebSocket.CONNECTING)return;Nn=Wt._req=null;const nn=Pt.headers.upgrade;if(nn===undefined||nn.toLowerCase()!=="websocket"){abortHandshake(Wt,en,"Invalid Upgrade header");return}const an=on("sha1").update(Gn+An).digest("base64");if(Pt.headers["sec-websocket-accept"]!==an){abortHandshake(Wt,en,"Invalid Sec-WebSocket-Accept header");return}const In=Pt.headers["sec-websocket-protocol"];let sn;if(In!==undefined){if(!Zn.size){sn="Server sent a subprotocol but none was requested"}else if(!Zn.has(In)){sn="Server sent an invalid subprotocol"}}else if(Zn.size){sn="Server sent no subprotocol"}if(sn){abortHandshake(Wt,en,sn);return}if(In)Wt._protocol=In;const cn=Pt.headers["sec-websocket-extensions"];if(cn!==undefined){if(!Wn){const Pt="Server sent a Sec-WebSocket-Extensions header but no extension "+"was requested";abortHandshake(Wt,en,Pt);return}let Pt;try{Pt=Rn(cn)}catch(Pt){const tn="Invalid Sec-WebSocket-Extensions header";abortHandshake(Wt,en,tn);return}const tn=Object.keys(Pt);if(tn.length!==1||tn[0]!==pn.extensionName){const Pt="Server indicated an extension that was not requested";abortHandshake(Wt,en,Pt);return}try{Wn.accept(Pt[pn.extensionName])}catch(Pt){const tn="Invalid Sec-WebSocket-Extensions header";abortHandshake(Wt,en,tn);return}Wt._extensions[pn.extensionName]=Wn}Wt.setSocket(en,tn,{allowSynchronousEvents:rn.allowSynchronousEvents,generateMask:rn.generateMask,maxPayload:rn.maxPayload,skipUTF8Validation:rn.skipUTF8Validation})}));if(rn.finishRequest){rn.finishRequest(Nn,Wt)}else{Nn.end()}}function emitErrorAndClose(Wt,Pt){Wt._readyState=WebSocket.CLOSING;Wt._errorEmitted=true;Wt.emit("error",Pt);Wt.emitClose()}function netConnect(Wt){Wt.path=Wt.socketPath;return rn.connect(Wt)}function tlsConnect(Wt){Wt.path=undefined;if(!Wt.servername&&Wt.servername!==""){Wt.servername=rn.isIP(Wt.host)?"":Wt.host}return In.connect(Wt)}function abortHandshake(Wt,Pt,en){Wt._readyState=WebSocket.CLOSING;const tn=new Error(en);Error.captureStackTrace(tn,abortHandshake);if(Pt.setHeader){Pt[Qn]=true;Pt.abort();if(Pt.socket&&!Pt.socket.destroyed){Pt.socket.destroy()}process.nextTick(emitErrorAndClose,Wt,tn)}else{Pt.destroy(tn);Pt.once("error",Wt.emit.bind(Wt,"error"));Pt.once("close",Wt.emitClose.bind(Wt))}}function sendAfterClose(Wt,Pt,en){if(Pt){const en=Gn(Pt)?Pt.size:wn(Pt).length;if(Wt._socket)Wt._sender._bufferedBytes+=en;else Wt._bufferedAmount+=en}if(en){const Pt=new Error(`WebSocket is not open: readyState ${Wt.readyState} `+`(${Hn[Wt.readyState]})`);process.nextTick(en,Pt)}}function receiverOnConclude(Wt,Pt){const en=this[yn];en._closeFrameReceived=true;en._closeMessage=Pt;en._closeCode=Wt;if(en._socket[yn]===undefined)return;en._socket.removeListener("data",socketOnData);process.nextTick(resume,en._socket);if(Wt===1005)en.close();else en.close(Wt,Pt)}function receiverOnDrain(){const Wt=this[yn];if(!Wt.isPaused)Wt._socket.resume()}function receiverOnError(Wt){const Pt=this[yn];if(Pt._socket[yn]!==undefined){Pt._socket.removeListener("data",socketOnData);process.nextTick(resume,Pt._socket);Pt.close(Wt[gn])}if(!Pt._errorEmitted){Pt._errorEmitted=true;Pt.emit("error",Wt)}}function receiverOnFinish(){this[yn].emitClose()}function receiverOnMessage(Wt,Pt){this[yn].emit("message",Wt,Pt)}function receiverOnPing(Wt){const Pt=this[yn];if(Pt._autoPong)Pt.pong(Wt,!this._isServer,vn);Pt.emit("ping",Wt)}function receiverOnPong(Wt){this[yn].emit("pong",Wt)}function resume(Wt){Wt.resume()}function senderOnError(Wt){const Pt=this[yn];if(Pt.readyState===WebSocket.CLOSED)return;if(Pt.readyState===WebSocket.OPEN){Pt._readyState=WebSocket.CLOSING;setCloseTimer(Pt)}this._socket.end();if(!Pt._errorEmitted){Pt._errorEmitted=true;Pt.emit("error",Wt)}}function setCloseTimer(Wt){Wt._closeTimer=setTimeout(Wt._socket.destroy.bind(Wt._socket),Fn)}function socketOnClose(){const Wt=this[yn];this.removeListener("close",socketOnClose);this.removeListener("data",socketOnData);this.removeListener("end",socketOnEnd);Wt._readyState=WebSocket.CLOSING;let Pt;if(!this._readableState.endEmitted&&!Wt._closeFrameReceived&&!Wt._receiver._writableState.errorEmitted&&(Pt=Wt._socket.read())!==null){Wt._receiver.write(Pt)}Wt._receiver.end();this[yn]=undefined;clearTimeout(Wt._closeTimer);if(Wt._receiver._writableState.finished||Wt._receiver._writableState.errorEmitted){Wt.emitClose()}else{Wt._receiver.on("error",receiverOnFinish);Wt._receiver.on("finish",receiverOnFinish)}}function socketOnData(Wt){if(!this[yn]._receiver.write(Wt)){this.pause()}}function socketOnEnd(){const Wt=this[yn];Wt._readyState=WebSocket.CLOSING;Wt._receiver.end();this.end()}function socketOnError(){const Wt=this[yn];this.removeListener("error",socketOnError);this.on("error",vn);if(Wt){Wt._readyState=WebSocket.CLOSING;this.destroy()}}},87878:(Wt,Pt)=>{"use strict";Pt.name=Wt=>/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/u.test(Wt);Pt.qname=Wt=>/(?:^[A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}][A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*:[A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}][A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$)|(?:^[A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}][A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$)/u.test(Wt)},96950:(Wt,Pt)=>{"use strict"; +/** + * Character classes and associated utilities for the 5th edition of XML 1.0. * - */ -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Base58 = exports.Base32 = exports.BaseX = void 0; -var bytes_1 = __nccwpck_require__(42006); -var properties_1 = __nccwpck_require__(61338); -var BaseX = /** @class */ (function () { - function BaseX(alphabet) { - (0, properties_1.defineReadOnly)(this, "alphabet", alphabet); - (0, properties_1.defineReadOnly)(this, "base", alphabet.length); - (0, properties_1.defineReadOnly)(this, "_alphabetMap", {}); - (0, properties_1.defineReadOnly)(this, "_leader", alphabet.charAt(0)); - // pre-compute lookup table - for (var i = 0; i < alphabet.length; i++) { - this._alphabetMap[alphabet.charAt(i)] = i; - } - } - BaseX.prototype.encode = function (value) { - var source = (0, bytes_1.arrayify)(value); - if (source.length === 0) { - return ""; - } - var digits = [0]; - for (var i = 0; i < source.length; ++i) { - var carry = source[i]; - for (var j = 0; j < digits.length; ++j) { - carry += digits[j] << 8; - digits[j] = carry % this.base; - carry = (carry / this.base) | 0; - } - while (carry > 0) { - digits.push(carry % this.base); - carry = (carry / this.base) | 0; - } - } - var string = ""; - // deal with leading zeros - for (var k = 0; source[k] === 0 && k < source.length - 1; ++k) { - string += this._leader; - } - // convert digits to a string - for (var q = digits.length - 1; q >= 0; --q) { - string += this.alphabet[digits[q]]; - } - return string; - }; - BaseX.prototype.decode = function (value) { - if (typeof (value) !== "string") { - throw new TypeError("Expected String"); - } - var bytes = []; - if (value.length === 0) { - return new Uint8Array(bytes); - } - bytes.push(0); - for (var i = 0; i < value.length; i++) { - var byte = this._alphabetMap[value[i]]; - if (byte === undefined) { - throw new Error("Non-base" + this.base + " character"); - } - var carry = byte; - for (var j = 0; j < bytes.length; ++j) { - carry += bytes[j] * this.base; - bytes[j] = carry & 0xff; - carry >>= 8; - } - while (carry > 0) { - bytes.push(carry & 0xff); - carry >>= 8; - } - } - // deal with leading zeros - for (var k = 0; value[k] === this._leader && k < value.length - 1; ++k) { - bytes.push(0); - } - return (0, bytes_1.arrayify)(new Uint8Array(bytes.reverse())); - }; - return BaseX; -}()); -exports.BaseX = BaseX; -var Base32 = new BaseX("abcdefghijklmnopqrstuvwxyz234567"); -exports.Base32 = Base32; -var Base58 = new BaseX("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"); -exports.Base58 = Base58; -//console.log(Base58.decode("Qmd2V777o5XvJbYMeMb8k2nU5f8d3ciUQ5YpYuWhzv8iDj")) -//console.log(Base58.encode(Base58.decode("Qmd2V777o5XvJbYMeMb8k2nU5f8d3ciUQ5YpYuWhzv8iDj"))) -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 6151: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "bignumber/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 11157: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports._base16To36 = exports._base36To16 = exports.BigNumber = exports.isBigNumberish = void 0; + * @author Louis-Dominique Dubeau + * @license MIT + * @copyright Louis-Dominique Dubeau + */Object.defineProperty(Pt,"__esModule",{value:true});Pt.CHAR="\t\n\r -퟿-�𐀀-􏿿";Pt.S=" \t\r\n";Pt.NAME_START_CHAR=":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿";Pt.NAME_CHAR="-"+Pt.NAME_START_CHAR+".0-9·̀-ͯ‿-⁀";Pt.CHAR_RE=new RegExp("^["+Pt.CHAR+"]$","u");Pt.S_RE=new RegExp("^["+Pt.S+"]+$","u");Pt.NAME_START_CHAR_RE=new RegExp("^["+Pt.NAME_START_CHAR+"]$","u");Pt.NAME_CHAR_RE=new RegExp("^["+Pt.NAME_CHAR+"]$","u");Pt.NAME_RE=new RegExp("^["+Pt.NAME_START_CHAR+"]["+Pt.NAME_CHAR+"]*$","u");Pt.NMTOKEN_RE=new RegExp("^["+Pt.NAME_CHAR+"]+$","u");var en=9;var tn=10;var nn=13;var an=32;Pt.S_LIST=[an,tn,nn,en];function isChar(Wt){return Wt>=an&&Wt<=55295||Wt===tn||Wt===nn||Wt===en||Wt>=57344&&Wt<=65533||Wt>=65536&&Wt<=1114111}Pt.isChar=isChar;function isS(Wt){return Wt===an||Wt===tn||Wt===nn||Wt===en}Pt.isS=isS;function isNameStartChar(Wt){return Wt>=65&&Wt<=90||Wt>=97&&Wt<=122||Wt===58||Wt===95||Wt===8204||Wt===8205||Wt>=192&&Wt<=214||Wt>=216&&Wt<=246||Wt>=248&&Wt<=767||Wt>=880&&Wt<=893||Wt>=895&&Wt<=8191||Wt>=8304&&Wt<=8591||Wt>=11264&&Wt<=12271||Wt>=12289&&Wt<=55295||Wt>=63744&&Wt<=64975||Wt>=65008&&Wt<=65533||Wt>=65536&&Wt<=983039}Pt.isNameStartChar=isNameStartChar;function isNameChar(Wt){return isNameStartChar(Wt)||Wt>=48&&Wt<=57||Wt===45||Wt===46||Wt===183||Wt>=768&&Wt<=879||Wt>=8255&&Wt<=8256}Pt.isNameChar=isNameChar},24488:(Wt,Pt)=>{"use strict"; /** - * BigNumber + * Character classes and associated utilities for the 2nd edition of XML 1.1. * - * A wrapper around the BN.js object. We use the BN.js library - * because it is used by elliptic, so it is required regardless. + * @author Louis-Dominique Dubeau + * @license MIT + * @copyright Louis-Dominique Dubeau + */Object.defineProperty(Pt,"__esModule",{value:true});Pt.CHAR="-퟿-�𐀀-􏿿";Pt.RESTRICTED_CHAR="-\b\v\f--„†-Ÿ";Pt.S=" \t\r\n";Pt.NAME_START_CHAR=":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿";Pt.NAME_CHAR="-"+Pt.NAME_START_CHAR+".0-9·̀-ͯ‿-⁀";Pt.CHAR_RE=new RegExp("^["+Pt.CHAR+"]$","u");Pt.RESTRICTED_CHAR_RE=new RegExp("^["+Pt.RESTRICTED_CHAR+"]$","u");Pt.S_RE=new RegExp("^["+Pt.S+"]+$","u");Pt.NAME_START_CHAR_RE=new RegExp("^["+Pt.NAME_START_CHAR+"]$","u");Pt.NAME_CHAR_RE=new RegExp("^["+Pt.NAME_CHAR+"]$","u");Pt.NAME_RE=new RegExp("^["+Pt.NAME_START_CHAR+"]["+Pt.NAME_CHAR+"]*$","u");Pt.NMTOKEN_RE=new RegExp("^["+Pt.NAME_CHAR+"]+$","u");var en=9;var tn=10;var nn=13;var an=32;Pt.S_LIST=[an,tn,nn,en];function isChar(Wt){return Wt>=1&&Wt<=55295||Wt>=57344&&Wt<=65533||Wt>=65536&&Wt<=1114111}Pt.isChar=isChar;function isRestrictedChar(Wt){return Wt>=1&&Wt<=8||Wt===11||Wt===12||Wt>=14&&Wt<=31||Wt>=127&&Wt<=132||Wt>=134&&Wt<=159}Pt.isRestrictedChar=isRestrictedChar;function isCharAndNotRestricted(Wt){return Wt===9||Wt===10||Wt===13||Wt>31&&Wt<127||Wt===133||Wt>159&&Wt<=55295||Wt>=57344&&Wt<=65533||Wt>=65536&&Wt<=1114111}Pt.isCharAndNotRestricted=isCharAndNotRestricted;function isS(Wt){return Wt===an||Wt===tn||Wt===nn||Wt===en}Pt.isS=isS;function isNameStartChar(Wt){return Wt>=65&&Wt<=90||Wt>=97&&Wt<=122||Wt===58||Wt===95||Wt===8204||Wt===8205||Wt>=192&&Wt<=214||Wt>=216&&Wt<=246||Wt>=248&&Wt<=767||Wt>=880&&Wt<=893||Wt>=895&&Wt<=8191||Wt>=8304&&Wt<=8591||Wt>=11264&&Wt<=12271||Wt>=12289&&Wt<=55295||Wt>=63744&&Wt<=64975||Wt>=65008&&Wt<=65533||Wt>=65536&&Wt<=983039}Pt.isNameStartChar=isNameStartChar;function isNameChar(Wt){return isNameStartChar(Wt)||Wt>=48&&Wt<=57||Wt===45||Wt===46||Wt===183||Wt>=768&&Wt<=879||Wt>=8255&&Wt<=8256}Pt.isNameChar=isNameChar},85699:(Wt,Pt)=>{"use strict"; +/** + * Character class utilities for XML NS 1.0 edition 3. * - */ -var bn_js_1 = __importDefault(__nccwpck_require__(10633)); -var BN = bn_js_1.default.BN; -var bytes_1 = __nccwpck_require__(42006); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(6151); -var logger = new logger_1.Logger(_version_1.version); -var _constructorGuard = {}; -var MAX_SAFE = 0x1fffffffffffff; -function isBigNumberish(value) { - return (value != null) && (BigNumber.isBigNumber(value) || - (typeof (value) === "number" && (value % 1) === 0) || - (typeof (value) === "string" && !!value.match(/^-?[0-9]+$/)) || - (0, bytes_1.isHexString)(value) || - (typeof (value) === "bigint") || - (0, bytes_1.isBytes)(value)); -} -exports.isBigNumberish = isBigNumberish; -// Only warn about passing 10 into radix once -var _warnedToStringRadix = false; -var BigNumber = /** @class */ (function () { - function BigNumber(constructorGuard, hex) { - if (constructorGuard !== _constructorGuard) { - logger.throwError("cannot call constructor directly; use BigNumber.from", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "new (BigNumber)" - }); - } - this._hex = hex; - this._isBigNumber = true; - Object.freeze(this); - } - BigNumber.prototype.fromTwos = function (value) { - return toBigNumber(toBN(this).fromTwos(value)); - }; - BigNumber.prototype.toTwos = function (value) { - return toBigNumber(toBN(this).toTwos(value)); - }; - BigNumber.prototype.abs = function () { - if (this._hex[0] === "-") { - return BigNumber.from(this._hex.substring(1)); - } - return this; - }; - BigNumber.prototype.add = function (other) { - return toBigNumber(toBN(this).add(toBN(other))); - }; - BigNumber.prototype.sub = function (other) { - return toBigNumber(toBN(this).sub(toBN(other))); - }; - BigNumber.prototype.div = function (other) { - var o = BigNumber.from(other); - if (o.isZero()) { - throwFault("division-by-zero", "div"); - } - return toBigNumber(toBN(this).div(toBN(other))); - }; - BigNumber.prototype.mul = function (other) { - return toBigNumber(toBN(this).mul(toBN(other))); - }; - BigNumber.prototype.mod = function (other) { - var value = toBN(other); - if (value.isNeg()) { - throwFault("division-by-zero", "mod"); - } - return toBigNumber(toBN(this).umod(value)); - }; - BigNumber.prototype.pow = function (other) { - var value = toBN(other); - if (value.isNeg()) { - throwFault("negative-power", "pow"); - } - return toBigNumber(toBN(this).pow(value)); - }; - BigNumber.prototype.and = function (other) { - var value = toBN(other); - if (this.isNegative() || value.isNeg()) { - throwFault("unbound-bitwise-result", "and"); - } - return toBigNumber(toBN(this).and(value)); - }; - BigNumber.prototype.or = function (other) { - var value = toBN(other); - if (this.isNegative() || value.isNeg()) { - throwFault("unbound-bitwise-result", "or"); - } - return toBigNumber(toBN(this).or(value)); - }; - BigNumber.prototype.xor = function (other) { - var value = toBN(other); - if (this.isNegative() || value.isNeg()) { - throwFault("unbound-bitwise-result", "xor"); - } - return toBigNumber(toBN(this).xor(value)); - }; - BigNumber.prototype.mask = function (value) { - if (this.isNegative() || value < 0) { - throwFault("negative-width", "mask"); - } - return toBigNumber(toBN(this).maskn(value)); - }; - BigNumber.prototype.shl = function (value) { - if (this.isNegative() || value < 0) { - throwFault("negative-width", "shl"); - } - return toBigNumber(toBN(this).shln(value)); - }; - BigNumber.prototype.shr = function (value) { - if (this.isNegative() || value < 0) { - throwFault("negative-width", "shr"); - } - return toBigNumber(toBN(this).shrn(value)); - }; - BigNumber.prototype.eq = function (other) { - return toBN(this).eq(toBN(other)); - }; - BigNumber.prototype.lt = function (other) { - return toBN(this).lt(toBN(other)); - }; - BigNumber.prototype.lte = function (other) { - return toBN(this).lte(toBN(other)); - }; - BigNumber.prototype.gt = function (other) { - return toBN(this).gt(toBN(other)); - }; - BigNumber.prototype.gte = function (other) { - return toBN(this).gte(toBN(other)); - }; - BigNumber.prototype.isNegative = function () { - return (this._hex[0] === "-"); - }; - BigNumber.prototype.isZero = function () { - return toBN(this).isZero(); - }; - BigNumber.prototype.toNumber = function () { - try { - return toBN(this).toNumber(); - } - catch (error) { - throwFault("overflow", "toNumber", this.toString()); - } - return null; - }; - BigNumber.prototype.toBigInt = function () { - try { - return BigInt(this.toString()); - } - catch (e) { } - return logger.throwError("this platform does not support BigInt", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - value: this.toString() - }); - }; - BigNumber.prototype.toString = function () { - // Lots of people expect this, which we do not support, so check (See: #889) - if (arguments.length > 0) { - if (arguments[0] === 10) { - if (!_warnedToStringRadix) { - _warnedToStringRadix = true; - logger.warn("BigNumber.toString does not accept any parameters; base-10 is assumed"); - } - } - else if (arguments[0] === 16) { - logger.throwError("BigNumber.toString does not accept any parameters; use bigNumber.toHexString()", logger_1.Logger.errors.UNEXPECTED_ARGUMENT, {}); - } - else { - logger.throwError("BigNumber.toString does not accept parameters", logger_1.Logger.errors.UNEXPECTED_ARGUMENT, {}); - } - } - return toBN(this).toString(10); - }; - BigNumber.prototype.toHexString = function () { - return this._hex; - }; - BigNumber.prototype.toJSON = function (key) { - return { type: "BigNumber", hex: this.toHexString() }; - }; - BigNumber.from = function (value) { - if (value instanceof BigNumber) { - return value; - } - if (typeof (value) === "string") { - if (value.match(/^-?0x[0-9a-f]+$/i)) { - return new BigNumber(_constructorGuard, toHex(value)); - } - if (value.match(/^-?[0-9]+$/)) { - return new BigNumber(_constructorGuard, toHex(new BN(value))); - } - return logger.throwArgumentError("invalid BigNumber string", "value", value); - } - if (typeof (value) === "number") { - if (value % 1) { - throwFault("underflow", "BigNumber.from", value); - } - if (value >= MAX_SAFE || value <= -MAX_SAFE) { - throwFault("overflow", "BigNumber.from", value); - } - return BigNumber.from(String(value)); - } - var anyValue = value; - if (typeof (anyValue) === "bigint") { - return BigNumber.from(anyValue.toString()); - } - if ((0, bytes_1.isBytes)(anyValue)) { - return BigNumber.from((0, bytes_1.hexlify)(anyValue)); - } - if (anyValue) { - // Hexable interface (takes priority) - if (anyValue.toHexString) { - var hex = anyValue.toHexString(); - if (typeof (hex) === "string") { - return BigNumber.from(hex); - } - } - else { - // For now, handle legacy JSON-ified values (goes away in v6) - var hex = anyValue._hex; - // New-form JSON - if (hex == null && anyValue.type === "BigNumber") { - hex = anyValue.hex; - } - if (typeof (hex) === "string") { - if ((0, bytes_1.isHexString)(hex) || (hex[0] === "-" && (0, bytes_1.isHexString)(hex.substring(1)))) { - return BigNumber.from(hex); - } - } - } - } - return logger.throwArgumentError("invalid BigNumber value", "value", value); - }; - BigNumber.isBigNumber = function (value) { - return !!(value && value._isBigNumber); - }; - return BigNumber; -}()); -exports.BigNumber = BigNumber; -// Normalize the hex string -function toHex(value) { - // For BN, call on the hex string - if (typeof (value) !== "string") { - return toHex(value.toString(16)); - } - // If negative, prepend the negative sign to the normalized positive value - if (value[0] === "-") { - // Strip off the negative sign - value = value.substring(1); - // Cannot have multiple negative signs (e.g. "--0x04") - if (value[0] === "-") { - logger.throwArgumentError("invalid hex", "value", value); - } - // Call toHex on the positive component - value = toHex(value); - // Do not allow "-0x00" - if (value === "0x00") { - return value; - } - // Negate the value - return "-" + value; - } - // Add a "0x" prefix if missing - if (value.substring(0, 2) !== "0x") { - value = "0x" + value; - } - // Normalize zero - if (value === "0x") { - return "0x00"; - } - // Make the string even length - if (value.length % 2) { - value = "0x0" + value.substring(2); - } - // Trim to smallest even-length string - while (value.length > 4 && value.substring(0, 4) === "0x00") { - value = "0x" + value.substring(4); - } - return value; -} -function toBigNumber(value) { - return BigNumber.from(toHex(value)); -} -function toBN(value) { - var hex = BigNumber.from(value).toHexString(); - if (hex[0] === "-") { - return (new BN("-" + hex.substring(3), 16)); - } - return new BN(hex.substring(2), 16); -} -function throwFault(fault, operation, value) { - var params = { fault: fault, operation: operation }; - if (value != null) { - params.value = value; - } - return logger.throwError(fault, logger_1.Logger.errors.NUMERIC_FAULT, params); -} -// value should have no prefix -function _base36To16(value) { - return (new BN(value, 36)).toString(16); -} -exports._base36To16 = _base36To16; -// value should have no prefix -function _base16To36(value) { - return (new BN(value, 16)).toString(36); -} -exports._base16To36 = _base16To36; -//# sourceMappingURL=bignumber.js.map - -/***/ }), - -/***/ 91297: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.FixedNumber = exports.FixedFormat = exports.parseFixed = exports.formatFixed = void 0; -var bytes_1 = __nccwpck_require__(42006); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(6151); -var logger = new logger_1.Logger(_version_1.version); -var bignumber_1 = __nccwpck_require__(11157); -var _constructorGuard = {}; -var Zero = bignumber_1.BigNumber.from(0); -var NegativeOne = bignumber_1.BigNumber.from(-1); -function throwFault(message, fault, operation, value) { - var params = { fault: fault, operation: operation }; - if (value !== undefined) { - params.value = value; - } - return logger.throwError(message, logger_1.Logger.errors.NUMERIC_FAULT, params); -} -// Constant to pull zeros from for multipliers -var zeros = "0"; -while (zeros.length < 256) { - zeros += zeros; -} -// Returns a string "1" followed by decimal "0"s -function getMultiplier(decimals) { - if (typeof (decimals) !== "number") { - try { - decimals = bignumber_1.BigNumber.from(decimals).toNumber(); - } - catch (e) { } - } - if (typeof (decimals) === "number" && decimals >= 0 && decimals <= 256 && !(decimals % 1)) { - return ("1" + zeros.substring(0, decimals)); - } - return logger.throwArgumentError("invalid decimal size", "decimals", decimals); -} -function formatFixed(value, decimals) { - if (decimals == null) { - decimals = 0; - } - var multiplier = getMultiplier(decimals); - // Make sure wei is a big number (convert as necessary) - value = bignumber_1.BigNumber.from(value); - var negative = value.lt(Zero); - if (negative) { - value = value.mul(NegativeOne); - } - var fraction = value.mod(multiplier).toString(); - while (fraction.length < multiplier.length - 1) { - fraction = "0" + fraction; - } - // Strip training 0 - fraction = fraction.match(/^([0-9]*[1-9]|0)(0*)/)[1]; - var whole = value.div(multiplier).toString(); - if (multiplier.length === 1) { - value = whole; - } - else { - value = whole + "." + fraction; - } - if (negative) { - value = "-" + value; - } - return value; -} -exports.formatFixed = formatFixed; -function parseFixed(value, decimals) { - if (decimals == null) { - decimals = 0; - } - var multiplier = getMultiplier(decimals); - if (typeof (value) !== "string" || !value.match(/^-?[0-9.]+$/)) { - logger.throwArgumentError("invalid decimal value", "value", value); - } - // Is it negative? - var negative = (value.substring(0, 1) === "-"); - if (negative) { - value = value.substring(1); - } - if (value === ".") { - logger.throwArgumentError("missing value", "value", value); - } - // Split it into a whole and fractional part - var comps = value.split("."); - if (comps.length > 2) { - logger.throwArgumentError("too many decimal points", "value", value); - } - var whole = comps[0], fraction = comps[1]; - if (!whole) { - whole = "0"; - } - if (!fraction) { - fraction = "0"; - } - // Trim trailing zeros - while (fraction[fraction.length - 1] === "0") { - fraction = fraction.substring(0, fraction.length - 1); - } - // Check the fraction doesn't exceed our decimals size - if (fraction.length > multiplier.length - 1) { - throwFault("fractional component exceeds decimals", "underflow", "parseFixed"); - } - // If decimals is 0, we have an empty string for fraction - if (fraction === "") { - fraction = "0"; - } - // Fully pad the string with zeros to get to wei - while (fraction.length < multiplier.length - 1) { - fraction += "0"; - } - var wholeValue = bignumber_1.BigNumber.from(whole); - var fractionValue = bignumber_1.BigNumber.from(fraction); - var wei = (wholeValue.mul(multiplier)).add(fractionValue); - if (negative) { - wei = wei.mul(NegativeOne); - } - return wei; -} -exports.parseFixed = parseFixed; -var FixedFormat = /** @class */ (function () { - function FixedFormat(constructorGuard, signed, width, decimals) { - if (constructorGuard !== _constructorGuard) { - logger.throwError("cannot use FixedFormat constructor; use FixedFormat.from", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "new FixedFormat" - }); - } - this.signed = signed; - this.width = width; - this.decimals = decimals; - this.name = (signed ? "" : "u") + "fixed" + String(width) + "x" + String(decimals); - this._multiplier = getMultiplier(decimals); - Object.freeze(this); - } - FixedFormat.from = function (value) { - if (value instanceof FixedFormat) { - return value; - } - if (typeof (value) === "number") { - value = "fixed128x" + value; - } - var signed = true; - var width = 128; - var decimals = 18; - if (typeof (value) === "string") { - if (value === "fixed") { - // defaults... - } - else if (value === "ufixed") { - signed = false; - } - else { - var match = value.match(/^(u?)fixed([0-9]+)x([0-9]+)$/); - if (!match) { - logger.throwArgumentError("invalid fixed format", "format", value); - } - signed = (match[1] !== "u"); - width = parseInt(match[2]); - decimals = parseInt(match[3]); - } - } - else if (value) { - var check = function (key, type, defaultValue) { - if (value[key] == null) { - return defaultValue; - } - if (typeof (value[key]) !== type) { - logger.throwArgumentError("invalid fixed format (" + key + " not " + type + ")", "format." + key, value[key]); - } - return value[key]; - }; - signed = check("signed", "boolean", signed); - width = check("width", "number", width); - decimals = check("decimals", "number", decimals); - } - if (width % 8) { - logger.throwArgumentError("invalid fixed format width (not byte aligned)", "format.width", width); - } - if (decimals > 80) { - logger.throwArgumentError("invalid fixed format (decimals too large)", "format.decimals", decimals); - } - return new FixedFormat(_constructorGuard, signed, width, decimals); - }; - return FixedFormat; -}()); -exports.FixedFormat = FixedFormat; -var FixedNumber = /** @class */ (function () { - function FixedNumber(constructorGuard, hex, value, format) { - if (constructorGuard !== _constructorGuard) { - logger.throwError("cannot use FixedNumber constructor; use FixedNumber.from", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "new FixedFormat" - }); - } - this.format = format; - this._hex = hex; - this._value = value; - this._isFixedNumber = true; - Object.freeze(this); - } - FixedNumber.prototype._checkFormat = function (other) { - if (this.format.name !== other.format.name) { - logger.throwArgumentError("incompatible format; use fixedNumber.toFormat", "other", other); - } - }; - FixedNumber.prototype.addUnsafe = function (other) { - this._checkFormat(other); - var a = parseFixed(this._value, this.format.decimals); - var b = parseFixed(other._value, other.format.decimals); - return FixedNumber.fromValue(a.add(b), this.format.decimals, this.format); - }; - FixedNumber.prototype.subUnsafe = function (other) { - this._checkFormat(other); - var a = parseFixed(this._value, this.format.decimals); - var b = parseFixed(other._value, other.format.decimals); - return FixedNumber.fromValue(a.sub(b), this.format.decimals, this.format); - }; - FixedNumber.prototype.mulUnsafe = function (other) { - this._checkFormat(other); - var a = parseFixed(this._value, this.format.decimals); - var b = parseFixed(other._value, other.format.decimals); - return FixedNumber.fromValue(a.mul(b).div(this.format._multiplier), this.format.decimals, this.format); - }; - FixedNumber.prototype.divUnsafe = function (other) { - this._checkFormat(other); - var a = parseFixed(this._value, this.format.decimals); - var b = parseFixed(other._value, other.format.decimals); - return FixedNumber.fromValue(a.mul(this.format._multiplier).div(b), this.format.decimals, this.format); - }; - FixedNumber.prototype.floor = function () { - var comps = this.toString().split("."); - if (comps.length === 1) { - comps.push("0"); - } - var result = FixedNumber.from(comps[0], this.format); - var hasFraction = !comps[1].match(/^(0*)$/); - if (this.isNegative() && hasFraction) { - result = result.subUnsafe(ONE.toFormat(result.format)); - } - return result; - }; - FixedNumber.prototype.ceiling = function () { - var comps = this.toString().split("."); - if (comps.length === 1) { - comps.push("0"); - } - var result = FixedNumber.from(comps[0], this.format); - var hasFraction = !comps[1].match(/^(0*)$/); - if (!this.isNegative() && hasFraction) { - result = result.addUnsafe(ONE.toFormat(result.format)); - } - return result; - }; - // @TODO: Support other rounding algorithms - FixedNumber.prototype.round = function (decimals) { - if (decimals == null) { - decimals = 0; - } - // If we are already in range, we're done - var comps = this.toString().split("."); - if (comps.length === 1) { - comps.push("0"); - } - if (decimals < 0 || decimals > 80 || (decimals % 1)) { - logger.throwArgumentError("invalid decimal count", "decimals", decimals); - } - if (comps[1].length <= decimals) { - return this; - } - var factor = FixedNumber.from("1" + zeros.substring(0, decimals), this.format); - var bump = BUMP.toFormat(this.format); - return this.mulUnsafe(factor).addUnsafe(bump).floor().divUnsafe(factor); - }; - FixedNumber.prototype.isZero = function () { - return (this._value === "0.0" || this._value === "0"); - }; - FixedNumber.prototype.isNegative = function () { - return (this._value[0] === "-"); - }; - FixedNumber.prototype.toString = function () { return this._value; }; - FixedNumber.prototype.toHexString = function (width) { - if (width == null) { - return this._hex; - } - if (width % 8) { - logger.throwArgumentError("invalid byte width", "width", width); - } - var hex = bignumber_1.BigNumber.from(this._hex).fromTwos(this.format.width).toTwos(width).toHexString(); - return (0, bytes_1.hexZeroPad)(hex, width / 8); - }; - FixedNumber.prototype.toUnsafeFloat = function () { return parseFloat(this.toString()); }; - FixedNumber.prototype.toFormat = function (format) { - return FixedNumber.fromString(this._value, format); - }; - FixedNumber.fromValue = function (value, decimals, format) { - // If decimals looks more like a format, and there is no format, shift the parameters - if (format == null && decimals != null && !(0, bignumber_1.isBigNumberish)(decimals)) { - format = decimals; - decimals = null; - } - if (decimals == null) { - decimals = 0; - } - if (format == null) { - format = "fixed"; - } - return FixedNumber.fromString(formatFixed(value, decimals), FixedFormat.from(format)); - }; - FixedNumber.fromString = function (value, format) { - if (format == null) { - format = "fixed"; - } - var fixedFormat = FixedFormat.from(format); - var numeric = parseFixed(value, fixedFormat.decimals); - if (!fixedFormat.signed && numeric.lt(Zero)) { - throwFault("unsigned value cannot be negative", "overflow", "value", value); - } - var hex = null; - if (fixedFormat.signed) { - hex = numeric.toTwos(fixedFormat.width).toHexString(); - } - else { - hex = numeric.toHexString(); - hex = (0, bytes_1.hexZeroPad)(hex, fixedFormat.width / 8); - } - var decimal = formatFixed(numeric, fixedFormat.decimals); - return new FixedNumber(_constructorGuard, hex, decimal, fixedFormat); - }; - FixedNumber.fromBytes = function (value, format) { - if (format == null) { - format = "fixed"; - } - var fixedFormat = FixedFormat.from(format); - if ((0, bytes_1.arrayify)(value).length > fixedFormat.width / 8) { - throw new Error("overflow"); - } - var numeric = bignumber_1.BigNumber.from(value); - if (fixedFormat.signed) { - numeric = numeric.fromTwos(fixedFormat.width); - } - var hex = numeric.toTwos((fixedFormat.signed ? 0 : 1) + fixedFormat.width).toHexString(); - var decimal = formatFixed(numeric, fixedFormat.decimals); - return new FixedNumber(_constructorGuard, hex, decimal, fixedFormat); - }; - FixedNumber.from = function (value, format) { - if (typeof (value) === "string") { - return FixedNumber.fromString(value, format); - } - if ((0, bytes_1.isBytes)(value)) { - return FixedNumber.fromBytes(value, format); - } - try { - return FixedNumber.fromValue(value, 0, format); - } - catch (error) { - // Allow NUMERIC_FAULT to bubble up - if (error.code !== logger_1.Logger.errors.INVALID_ARGUMENT) { - throw error; - } - } - return logger.throwArgumentError("invalid FixedNumber value", "value", value); - }; - FixedNumber.isFixedNumber = function (value) { - return !!(value && value._isFixedNumber); - }; - return FixedNumber; -}()); -exports.FixedNumber = FixedNumber; -var ONE = FixedNumber.from(1); -var BUMP = FixedNumber.from("0.5"); -//# sourceMappingURL=fixednumber.js.map - -/***/ }), - -/***/ 18202: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports._base36To16 = exports._base16To36 = exports.parseFixed = exports.FixedNumber = exports.FixedFormat = exports.formatFixed = exports.BigNumber = void 0; -var bignumber_1 = __nccwpck_require__(11157); -Object.defineProperty(exports, "BigNumber", ({ enumerable: true, get: function () { return bignumber_1.BigNumber; } })); -var fixednumber_1 = __nccwpck_require__(91297); -Object.defineProperty(exports, "formatFixed", ({ enumerable: true, get: function () { return fixednumber_1.formatFixed; } })); -Object.defineProperty(exports, "FixedFormat", ({ enumerable: true, get: function () { return fixednumber_1.FixedFormat; } })); -Object.defineProperty(exports, "FixedNumber", ({ enumerable: true, get: function () { return fixednumber_1.FixedNumber; } })); -Object.defineProperty(exports, "parseFixed", ({ enumerable: true, get: function () { return fixednumber_1.parseFixed; } })); -// Internal methods used by address -var bignumber_2 = __nccwpck_require__(11157); -Object.defineProperty(exports, "_base16To36", ({ enumerable: true, get: function () { return bignumber_2._base16To36; } })); -Object.defineProperty(exports, "_base36To16", ({ enumerable: true, get: function () { return bignumber_2._base36To16; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 28539: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "bytes/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 42006: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.joinSignature = exports.splitSignature = exports.hexZeroPad = exports.hexStripZeros = exports.hexValue = exports.hexConcat = exports.hexDataSlice = exports.hexDataLength = exports.hexlify = exports.isHexString = exports.zeroPad = exports.stripZeros = exports.concat = exports.arrayify = exports.isBytes = exports.isBytesLike = void 0; -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(28539); -var logger = new logger_1.Logger(_version_1.version); -/////////////////////////////// -function isHexable(value) { - return !!(value.toHexString); -} -function addSlice(array) { - if (array.slice) { - return array; - } - array.slice = function () { - var args = Array.prototype.slice.call(arguments); - return addSlice(new Uint8Array(Array.prototype.slice.apply(array, args))); - }; - return array; -} -function isBytesLike(value) { - return ((isHexString(value) && !(value.length % 2)) || isBytes(value)); -} -exports.isBytesLike = isBytesLike; -function isInteger(value) { - return (typeof (value) === "number" && value == value && (value % 1) === 0); -} -function isBytes(value) { - if (value == null) { - return false; - } - if (value.constructor === Uint8Array) { - return true; - } - if (typeof (value) === "string") { - return false; - } - if (!isInteger(value.length) || value.length < 0) { - return false; - } - for (var i = 0; i < value.length; i++) { - var v = value[i]; - if (!isInteger(v) || v < 0 || v >= 256) { - return false; - } - } - return true; -} -exports.isBytes = isBytes; -function arrayify(value, options) { - if (!options) { - options = {}; - } - if (typeof (value) === "number") { - logger.checkSafeUint53(value, "invalid arrayify value"); - var result = []; - while (value) { - result.unshift(value & 0xff); - value = parseInt(String(value / 256)); - } - if (result.length === 0) { - result.push(0); - } - return addSlice(new Uint8Array(result)); - } - if (options.allowMissingPrefix && typeof (value) === "string" && value.substring(0, 2) !== "0x") { - value = "0x" + value; - } - if (isHexable(value)) { - value = value.toHexString(); - } - if (isHexString(value)) { - var hex = value.substring(2); - if (hex.length % 2) { - if (options.hexPad === "left") { - hex = "0" + hex; - } - else if (options.hexPad === "right") { - hex += "0"; - } - else { - logger.throwArgumentError("hex data is odd-length", "value", value); - } - } - var result = []; - for (var i = 0; i < hex.length; i += 2) { - result.push(parseInt(hex.substring(i, i + 2), 16)); - } - return addSlice(new Uint8Array(result)); - } - if (isBytes(value)) { - return addSlice(new Uint8Array(value)); - } - return logger.throwArgumentError("invalid arrayify value", "value", value); -} -exports.arrayify = arrayify; -function concat(items) { - var objects = items.map(function (item) { return arrayify(item); }); - var length = objects.reduce(function (accum, item) { return (accum + item.length); }, 0); - var result = new Uint8Array(length); - objects.reduce(function (offset, object) { - result.set(object, offset); - return offset + object.length; - }, 0); - return addSlice(result); -} -exports.concat = concat; -function stripZeros(value) { - var result = arrayify(value); - if (result.length === 0) { - return result; - } - // Find the first non-zero entry - var start = 0; - while (start < result.length && result[start] === 0) { - start++; - } - // If we started with zeros, strip them - if (start) { - result = result.slice(start); - } - return result; -} -exports.stripZeros = stripZeros; -function zeroPad(value, length) { - value = arrayify(value); - if (value.length > length) { - logger.throwArgumentError("value out of range", "value", arguments[0]); - } - var result = new Uint8Array(length); - result.set(value, length - value.length); - return addSlice(result); -} -exports.zeroPad = zeroPad; -function isHexString(value, length) { - if (typeof (value) !== "string" || !value.match(/^0x[0-9A-Fa-f]*$/)) { - return false; - } - if (length && value.length !== 2 + 2 * length) { - return false; - } - return true; -} -exports.isHexString = isHexString; -var HexCharacters = "0123456789abcdef"; -function hexlify(value, options) { - if (!options) { - options = {}; - } - if (typeof (value) === "number") { - logger.checkSafeUint53(value, "invalid hexlify value"); - var hex = ""; - while (value) { - hex = HexCharacters[value & 0xf] + hex; - value = Math.floor(value / 16); - } - if (hex.length) { - if (hex.length % 2) { - hex = "0" + hex; - } - return "0x" + hex; - } - return "0x00"; - } - if (typeof (value) === "bigint") { - value = value.toString(16); - if (value.length % 2) { - return ("0x0" + value); - } - return "0x" + value; - } - if (options.allowMissingPrefix && typeof (value) === "string" && value.substring(0, 2) !== "0x") { - value = "0x" + value; - } - if (isHexable(value)) { - return value.toHexString(); - } - if (isHexString(value)) { - if (value.length % 2) { - if (options.hexPad === "left") { - value = "0x0" + value.substring(2); - } - else if (options.hexPad === "right") { - value += "0"; - } - else { - logger.throwArgumentError("hex data is odd-length", "value", value); - } - } - return value.toLowerCase(); - } - if (isBytes(value)) { - var result = "0x"; - for (var i = 0; i < value.length; i++) { - var v = value[i]; - result += HexCharacters[(v & 0xf0) >> 4] + HexCharacters[v & 0x0f]; - } - return result; - } - return logger.throwArgumentError("invalid hexlify value", "value", value); -} -exports.hexlify = hexlify; -/* -function unoddify(value: BytesLike | Hexable | number): BytesLike | Hexable | number { - if (typeof(value) === "string" && value.length % 2 && value.substring(0, 2) === "0x") { - return "0x0" + value.substring(2); - } - return value; -} -*/ -function hexDataLength(data) { - if (typeof (data) !== "string") { - data = hexlify(data); - } - else if (!isHexString(data) || (data.length % 2)) { - return null; - } - return (data.length - 2) / 2; -} -exports.hexDataLength = hexDataLength; -function hexDataSlice(data, offset, endOffset) { - if (typeof (data) !== "string") { - data = hexlify(data); - } - else if (!isHexString(data) || (data.length % 2)) { - logger.throwArgumentError("invalid hexData", "value", data); - } - offset = 2 + 2 * offset; - if (endOffset != null) { - return "0x" + data.substring(offset, 2 + 2 * endOffset); - } - return "0x" + data.substring(offset); -} -exports.hexDataSlice = hexDataSlice; -function hexConcat(items) { - var result = "0x"; - items.forEach(function (item) { - result += hexlify(item).substring(2); - }); - return result; -} -exports.hexConcat = hexConcat; -function hexValue(value) { - var trimmed = hexStripZeros(hexlify(value, { hexPad: "left" })); - if (trimmed === "0x") { - return "0x0"; - } - return trimmed; -} -exports.hexValue = hexValue; -function hexStripZeros(value) { - if (typeof (value) !== "string") { - value = hexlify(value); - } - if (!isHexString(value)) { - logger.throwArgumentError("invalid hex string", "value", value); - } - value = value.substring(2); - var offset = 0; - while (offset < value.length && value[offset] === "0") { - offset++; - } - return "0x" + value.substring(offset); -} -exports.hexStripZeros = hexStripZeros; -function hexZeroPad(value, length) { - if (typeof (value) !== "string") { - value = hexlify(value); - } - else if (!isHexString(value)) { - logger.throwArgumentError("invalid hex string", "value", value); - } - if (value.length > 2 * length + 2) { - logger.throwArgumentError("value out of range", "value", arguments[1]); - } - while (value.length < 2 * length + 2) { - value = "0x0" + value.substring(2); - } - return value; -} -exports.hexZeroPad = hexZeroPad; -function splitSignature(signature) { - var result = { - r: "0x", - s: "0x", - _vs: "0x", - recoveryParam: 0, - v: 0, - yParityAndS: "0x", - compact: "0x" - }; - if (isBytesLike(signature)) { - var bytes = arrayify(signature); - // Get the r, s and v - if (bytes.length === 64) { - // EIP-2098; pull the v from the top bit of s and clear it - result.v = 27 + (bytes[32] >> 7); - bytes[32] &= 0x7f; - result.r = hexlify(bytes.slice(0, 32)); - result.s = hexlify(bytes.slice(32, 64)); - } - else if (bytes.length === 65) { - result.r = hexlify(bytes.slice(0, 32)); - result.s = hexlify(bytes.slice(32, 64)); - result.v = bytes[64]; - } - else { - logger.throwArgumentError("invalid signature string", "signature", signature); - } - // Allow a recid to be used as the v - if (result.v < 27) { - if (result.v === 0 || result.v === 1) { - result.v += 27; - } - else { - logger.throwArgumentError("signature invalid v byte", "signature", signature); - } - } - // Compute recoveryParam from v - result.recoveryParam = 1 - (result.v % 2); - // Compute _vs from recoveryParam and s - if (result.recoveryParam) { - bytes[32] |= 0x80; - } - result._vs = hexlify(bytes.slice(32, 64)); - } - else { - result.r = signature.r; - result.s = signature.s; - result.v = signature.v; - result.recoveryParam = signature.recoveryParam; - result._vs = signature._vs; - // If the _vs is available, use it to populate missing s, v and recoveryParam - // and verify non-missing s, v and recoveryParam - if (result._vs != null) { - var vs_1 = zeroPad(arrayify(result._vs), 32); - result._vs = hexlify(vs_1); - // Set or check the recid - var recoveryParam = ((vs_1[0] >= 128) ? 1 : 0); - if (result.recoveryParam == null) { - result.recoveryParam = recoveryParam; - } - else if (result.recoveryParam !== recoveryParam) { - logger.throwArgumentError("signature recoveryParam mismatch _vs", "signature", signature); - } - // Set or check the s - vs_1[0] &= 0x7f; - var s = hexlify(vs_1); - if (result.s == null) { - result.s = s; - } - else if (result.s !== s) { - logger.throwArgumentError("signature v mismatch _vs", "signature", signature); - } - } - // Use recid and v to populate each other - if (result.recoveryParam == null) { - if (result.v == null) { - logger.throwArgumentError("signature missing v and recoveryParam", "signature", signature); - } - else if (result.v === 0 || result.v === 1) { - result.recoveryParam = result.v; - } - else { - result.recoveryParam = 1 - (result.v % 2); - } - } - else { - if (result.v == null) { - result.v = 27 + result.recoveryParam; - } - else { - var recId = (result.v === 0 || result.v === 1) ? result.v : (1 - (result.v % 2)); - if (result.recoveryParam !== recId) { - logger.throwArgumentError("signature recoveryParam mismatch v", "signature", signature); - } - } - } - if (result.r == null || !isHexString(result.r)) { - logger.throwArgumentError("signature missing or invalid r", "signature", signature); - } - else { - result.r = hexZeroPad(result.r, 32); - } - if (result.s == null || !isHexString(result.s)) { - logger.throwArgumentError("signature missing or invalid s", "signature", signature); - } - else { - result.s = hexZeroPad(result.s, 32); - } - var vs = arrayify(result.s); - if (vs[0] >= 128) { - logger.throwArgumentError("signature s out of range", "signature", signature); - } - if (result.recoveryParam) { - vs[0] |= 0x80; - } - var _vs = hexlify(vs); - if (result._vs) { - if (!isHexString(result._vs)) { - logger.throwArgumentError("signature invalid _vs", "signature", signature); - } - result._vs = hexZeroPad(result._vs, 32); - } - // Set or check the _vs - if (result._vs == null) { - result._vs = _vs; - } - else if (result._vs !== _vs) { - logger.throwArgumentError("signature _vs mismatch v and s", "signature", signature); - } - } - result.yParityAndS = result._vs; - result.compact = result.r + result.yParityAndS.substring(2); - return result; -} -exports.splitSignature = splitSignature; -function joinSignature(signature) { - signature = splitSignature(signature); - return hexlify(concat([ - signature.r, - signature.s, - (signature.recoveryParam ? "0x1c" : "0x1b") - ])); -} -exports.joinSignature = joinSignature; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 89224: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.AddressZero = void 0; -exports.AddressZero = "0x0000000000000000000000000000000000000000"; -//# sourceMappingURL=addresses.js.map - -/***/ }), - -/***/ 40662: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.MaxInt256 = exports.MinInt256 = exports.MaxUint256 = exports.WeiPerEther = exports.Two = exports.One = exports.Zero = exports.NegativeOne = void 0; -var bignumber_1 = __nccwpck_require__(18202); -var NegativeOne = ( /*#__PURE__*/bignumber_1.BigNumber.from(-1)); -exports.NegativeOne = NegativeOne; -var Zero = ( /*#__PURE__*/bignumber_1.BigNumber.from(0)); -exports.Zero = Zero; -var One = ( /*#__PURE__*/bignumber_1.BigNumber.from(1)); -exports.One = One; -var Two = ( /*#__PURE__*/bignumber_1.BigNumber.from(2)); -exports.Two = Two; -var WeiPerEther = ( /*#__PURE__*/bignumber_1.BigNumber.from("1000000000000000000")); -exports.WeiPerEther = WeiPerEther; -var MaxUint256 = ( /*#__PURE__*/bignumber_1.BigNumber.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff")); -exports.MaxUint256 = MaxUint256; -var MinInt256 = ( /*#__PURE__*/bignumber_1.BigNumber.from("-0x8000000000000000000000000000000000000000000000000000000000000000")); -exports.MinInt256 = MinInt256; -var MaxInt256 = ( /*#__PURE__*/bignumber_1.BigNumber.from("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff")); -exports.MaxInt256 = MaxInt256; -//# sourceMappingURL=bignumbers.js.map - -/***/ }), - -/***/ 35550: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.HashZero = void 0; -exports.HashZero = "0x0000000000000000000000000000000000000000000000000000000000000000"; -//# sourceMappingURL=hashes.js.map - -/***/ }), - -/***/ 99848: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.EtherSymbol = exports.HashZero = exports.MaxInt256 = exports.MinInt256 = exports.MaxUint256 = exports.WeiPerEther = exports.Two = exports.One = exports.Zero = exports.NegativeOne = exports.AddressZero = void 0; -var addresses_1 = __nccwpck_require__(89224); -Object.defineProperty(exports, "AddressZero", ({ enumerable: true, get: function () { return addresses_1.AddressZero; } })); -var bignumbers_1 = __nccwpck_require__(40662); -Object.defineProperty(exports, "NegativeOne", ({ enumerable: true, get: function () { return bignumbers_1.NegativeOne; } })); -Object.defineProperty(exports, "Zero", ({ enumerable: true, get: function () { return bignumbers_1.Zero; } })); -Object.defineProperty(exports, "One", ({ enumerable: true, get: function () { return bignumbers_1.One; } })); -Object.defineProperty(exports, "Two", ({ enumerable: true, get: function () { return bignumbers_1.Two; } })); -Object.defineProperty(exports, "WeiPerEther", ({ enumerable: true, get: function () { return bignumbers_1.WeiPerEther; } })); -Object.defineProperty(exports, "MaxUint256", ({ enumerable: true, get: function () { return bignumbers_1.MaxUint256; } })); -Object.defineProperty(exports, "MinInt256", ({ enumerable: true, get: function () { return bignumbers_1.MinInt256; } })); -Object.defineProperty(exports, "MaxInt256", ({ enumerable: true, get: function () { return bignumbers_1.MaxInt256; } })); -var hashes_1 = __nccwpck_require__(35550); -Object.defineProperty(exports, "HashZero", ({ enumerable: true, get: function () { return hashes_1.HashZero; } })); -var strings_1 = __nccwpck_require__(18178); -Object.defineProperty(exports, "EtherSymbol", ({ enumerable: true, get: function () { return strings_1.EtherSymbol; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 18178: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.EtherSymbol = void 0; -// NFKC (composed) // (decomposed) -exports.EtherSymbol = "\u039e"; // "\uD835\uDF63"; -//# sourceMappingURL=strings.js.map - -/***/ }), - -/***/ 96511: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "contracts/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 98322: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -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 }; - } -}; -var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { - if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { - if (ar || !(i in from)) { - if (!ar) ar = Array.prototype.slice.call(from, 0, i); - ar[i] = from[i]; - } - } - return to.concat(ar || Array.prototype.slice.call(from)); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ContractFactory = exports.Contract = exports.BaseContract = void 0; -var abi_1 = __nccwpck_require__(30219); -var abstract_provider_1 = __nccwpck_require__(12825); -var abstract_signer_1 = __nccwpck_require__(53870); -var address_1 = __nccwpck_require__(75745); -var bignumber_1 = __nccwpck_require__(18202); -var bytes_1 = __nccwpck_require__(42006); -var properties_1 = __nccwpck_require__(61338); -var transactions_1 = __nccwpck_require__(62394); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(96511); -var logger = new logger_1.Logger(_version_1.version); -; -; -/////////////////////////////// -var allowedTransactionKeys = { - chainId: true, data: true, from: true, gasLimit: true, gasPrice: true, nonce: true, to: true, value: true, - type: true, accessList: true, - maxFeePerGas: true, maxPriorityFeePerGas: true, - customData: true, - ccipReadEnabled: true -}; -function resolveName(resolver, nameOrPromise) { - return __awaiter(this, void 0, void 0, function () { - var name, address; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, nameOrPromise]; - case 1: - name = _a.sent(); - if (typeof (name) !== "string") { - logger.throwArgumentError("invalid address or ENS name", "name", name); - } - // If it is already an address, just use it (after adding checksum) - try { - return [2 /*return*/, (0, address_1.getAddress)(name)]; - } - catch (error) { } - if (!resolver) { - logger.throwError("a provider or signer is needed to resolve ENS names", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "resolveName" - }); - } - return [4 /*yield*/, resolver.resolveName(name)]; - case 2: - address = _a.sent(); - if (address == null) { - logger.throwArgumentError("resolver or addr is not configured for ENS name", "name", name); - } - return [2 /*return*/, address]; - } - }); - }); -} -// Recursively replaces ENS names with promises to resolve the name and resolves all properties -function resolveAddresses(resolver, value, paramType) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (!Array.isArray(paramType)) return [3 /*break*/, 2]; - return [4 /*yield*/, Promise.all(paramType.map(function (paramType, index) { - return resolveAddresses(resolver, ((Array.isArray(value)) ? value[index] : value[paramType.name]), paramType); - }))]; - case 1: return [2 /*return*/, _a.sent()]; - case 2: - if (!(paramType.type === "address")) return [3 /*break*/, 4]; - return [4 /*yield*/, resolveName(resolver, value)]; - case 3: return [2 /*return*/, _a.sent()]; - case 4: - if (!(paramType.type === "tuple")) return [3 /*break*/, 6]; - return [4 /*yield*/, resolveAddresses(resolver, value, paramType.components)]; - case 5: return [2 /*return*/, _a.sent()]; - case 6: - if (!(paramType.baseType === "array")) return [3 /*break*/, 8]; - if (!Array.isArray(value)) { - return [2 /*return*/, Promise.reject(logger.makeError("invalid value for array", logger_1.Logger.errors.INVALID_ARGUMENT, { - argument: "value", - value: value - }))]; - } - return [4 /*yield*/, Promise.all(value.map(function (v) { return resolveAddresses(resolver, v, paramType.arrayChildren); }))]; - case 7: return [2 /*return*/, _a.sent()]; - case 8: return [2 /*return*/, value]; - } - }); - }); -} -function populateTransaction(contract, fragment, args) { - return __awaiter(this, void 0, void 0, function () { - var overrides, resolved, data, tx, ro, intrinsic, bytes, i, roValue, leftovers; - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - overrides = {}; - if (args.length === fragment.inputs.length + 1 && typeof (args[args.length - 1]) === "object") { - overrides = (0, properties_1.shallowCopy)(args.pop()); - } - // Make sure the parameter count matches - logger.checkArgumentCount(args.length, fragment.inputs.length, "passed to contract"); - // Populate "from" override (allow promises) - if (contract.signer) { - if (overrides.from) { - // Contracts with a Signer are from the Signer's frame-of-reference; - // but we allow overriding "from" if it matches the signer - overrides.from = (0, properties_1.resolveProperties)({ - override: resolveName(contract.signer, overrides.from), - signer: contract.signer.getAddress() - }).then(function (check) { return __awaiter(_this, void 0, void 0, function () { - return __generator(this, function (_a) { - if ((0, address_1.getAddress)(check.signer) !== check.override) { - logger.throwError("Contract with a Signer cannot override from", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "overrides.from" - }); - } - return [2 /*return*/, check.override]; - }); - }); }); - } - else { - overrides.from = contract.signer.getAddress(); - } - } - else if (overrides.from) { - overrides.from = resolveName(contract.provider, overrides.from); - //} else { - // Contracts without a signer can override "from", and if - // unspecified the zero address is used - //overrides.from = AddressZero; - } - return [4 /*yield*/, (0, properties_1.resolveProperties)({ - args: resolveAddresses(contract.signer || contract.provider, args, fragment.inputs), - address: contract.resolvedAddress, - overrides: ((0, properties_1.resolveProperties)(overrides) || {}) - })]; - case 1: - resolved = _a.sent(); - data = contract.interface.encodeFunctionData(fragment, resolved.args); - tx = { - data: data, - to: resolved.address - }; - ro = resolved.overrides; - // Populate simple overrides - if (ro.nonce != null) { - tx.nonce = bignumber_1.BigNumber.from(ro.nonce).toNumber(); - } - if (ro.gasLimit != null) { - tx.gasLimit = bignumber_1.BigNumber.from(ro.gasLimit); - } - if (ro.gasPrice != null) { - tx.gasPrice = bignumber_1.BigNumber.from(ro.gasPrice); - } - if (ro.maxFeePerGas != null) { - tx.maxFeePerGas = bignumber_1.BigNumber.from(ro.maxFeePerGas); - } - if (ro.maxPriorityFeePerGas != null) { - tx.maxPriorityFeePerGas = bignumber_1.BigNumber.from(ro.maxPriorityFeePerGas); - } - if (ro.from != null) { - tx.from = ro.from; - } - if (ro.type != null) { - tx.type = ro.type; - } - if (ro.accessList != null) { - tx.accessList = (0, transactions_1.accessListify)(ro.accessList); - } - // If there was no "gasLimit" override, but the ABI specifies a default, use it - if (tx.gasLimit == null && fragment.gas != null) { - intrinsic = 21000; - bytes = (0, bytes_1.arrayify)(data); - for (i = 0; i < bytes.length; i++) { - intrinsic += 4; - if (bytes[i]) { - intrinsic += 64; - } - } - tx.gasLimit = bignumber_1.BigNumber.from(fragment.gas).add(intrinsic); - } - // Populate "value" override - if (ro.value) { - roValue = bignumber_1.BigNumber.from(ro.value); - if (!roValue.isZero() && !fragment.payable) { - logger.throwError("non-payable method cannot override value", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "overrides.value", - value: overrides.value - }); - } - tx.value = roValue; - } - if (ro.customData) { - tx.customData = (0, properties_1.shallowCopy)(ro.customData); - } - if (ro.ccipReadEnabled) { - tx.ccipReadEnabled = !!ro.ccipReadEnabled; - } - // Remove the overrides - delete overrides.nonce; - delete overrides.gasLimit; - delete overrides.gasPrice; - delete overrides.from; - delete overrides.value; - delete overrides.type; - delete overrides.accessList; - delete overrides.maxFeePerGas; - delete overrides.maxPriorityFeePerGas; - delete overrides.customData; - delete overrides.ccipReadEnabled; - leftovers = Object.keys(overrides).filter(function (key) { return (overrides[key] != null); }); - if (leftovers.length) { - logger.throwError("cannot override " + leftovers.map(function (l) { return JSON.stringify(l); }).join(","), logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "overrides", - overrides: leftovers - }); - } - return [2 /*return*/, tx]; - } - }); - }); -} -function buildPopulate(contract, fragment) { - return function () { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i] = arguments[_i]; - } - return populateTransaction(contract, fragment, args); - }; -} -function buildEstimate(contract, fragment) { - var signerOrProvider = (contract.signer || contract.provider); - return function () { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i] = arguments[_i]; - } - return __awaiter(this, void 0, void 0, function () { - var tx; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (!signerOrProvider) { - logger.throwError("estimate require a provider or signer", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "estimateGas" - }); - } - return [4 /*yield*/, populateTransaction(contract, fragment, args)]; - case 1: - tx = _a.sent(); - return [4 /*yield*/, signerOrProvider.estimateGas(tx)]; - case 2: return [2 /*return*/, _a.sent()]; - } - }); - }); - }; -} -function addContractWait(contract, tx) { - var wait = tx.wait.bind(tx); - tx.wait = function (confirmations) { - return wait(confirmations).then(function (receipt) { - receipt.events = receipt.logs.map(function (log) { - var event = (0, properties_1.deepCopy)(log); - var parsed = null; - try { - parsed = contract.interface.parseLog(log); - } - catch (e) { } - // Successfully parsed the event log; include it - if (parsed) { - event.args = parsed.args; - event.decode = function (data, topics) { - return contract.interface.decodeEventLog(parsed.eventFragment, data, topics); - }; - event.event = parsed.name; - event.eventSignature = parsed.signature; - } - // Useful operations - event.removeListener = function () { return contract.provider; }; - event.getBlock = function () { - return contract.provider.getBlock(receipt.blockHash); - }; - event.getTransaction = function () { - return contract.provider.getTransaction(receipt.transactionHash); - }; - event.getTransactionReceipt = function () { - return Promise.resolve(receipt); - }; - return event; - }); - return receipt; - }); - }; -} -function buildCall(contract, fragment, collapseSimple) { - var signerOrProvider = (contract.signer || contract.provider); - return function () { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i] = arguments[_i]; - } - return __awaiter(this, void 0, void 0, function () { - var blockTag, overrides, tx, result, value; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - blockTag = undefined; - if (!(args.length === fragment.inputs.length + 1 && typeof (args[args.length - 1]) === "object")) return [3 /*break*/, 3]; - overrides = (0, properties_1.shallowCopy)(args.pop()); - if (!(overrides.blockTag != null)) return [3 /*break*/, 2]; - return [4 /*yield*/, overrides.blockTag]; - case 1: - blockTag = _a.sent(); - _a.label = 2; - case 2: - delete overrides.blockTag; - args.push(overrides); - _a.label = 3; - case 3: - if (!(contract.deployTransaction != null)) return [3 /*break*/, 5]; - return [4 /*yield*/, contract._deployed(blockTag)]; - case 4: - _a.sent(); - _a.label = 5; - case 5: return [4 /*yield*/, populateTransaction(contract, fragment, args)]; - case 6: - tx = _a.sent(); - return [4 /*yield*/, signerOrProvider.call(tx, blockTag)]; - case 7: - result = _a.sent(); - try { - value = contract.interface.decodeFunctionResult(fragment, result); - if (collapseSimple && fragment.outputs.length === 1) { - value = value[0]; - } - return [2 /*return*/, value]; - } - catch (error) { - if (error.code === logger_1.Logger.errors.CALL_EXCEPTION) { - error.address = contract.address; - error.args = args; - error.transaction = tx; - } - throw error; - } - return [2 /*return*/]; - } - }); - }); - }; -} -function buildSend(contract, fragment) { - return function () { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i] = arguments[_i]; - } - return __awaiter(this, void 0, void 0, function () { - var txRequest, tx; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (!contract.signer) { - logger.throwError("sending a transaction requires a signer", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "sendTransaction" - }); - } - if (!(contract.deployTransaction != null)) return [3 /*break*/, 2]; - return [4 /*yield*/, contract._deployed()]; - case 1: - _a.sent(); - _a.label = 2; - case 2: return [4 /*yield*/, populateTransaction(contract, fragment, args)]; - case 3: - txRequest = _a.sent(); - return [4 /*yield*/, contract.signer.sendTransaction(txRequest)]; - case 4: - tx = _a.sent(); - // Tweak the tx.wait so the receipt has extra properties - addContractWait(contract, tx); - return [2 /*return*/, tx]; - } - }); - }); - }; -} -function buildDefault(contract, fragment, collapseSimple) { - if (fragment.constant) { - return buildCall(contract, fragment, collapseSimple); - } - return buildSend(contract, fragment); -} -function getEventTag(filter) { - if (filter.address && (filter.topics == null || filter.topics.length === 0)) { - return "*"; - } - return (filter.address || "*") + "@" + (filter.topics ? filter.topics.map(function (topic) { - if (Array.isArray(topic)) { - return topic.join("|"); - } - return topic; - }).join(":") : ""); -} -var RunningEvent = /** @class */ (function () { - function RunningEvent(tag, filter) { - (0, properties_1.defineReadOnly)(this, "tag", tag); - (0, properties_1.defineReadOnly)(this, "filter", filter); - this._listeners = []; - } - RunningEvent.prototype.addListener = function (listener, once) { - this._listeners.push({ listener: listener, once: once }); - }; - RunningEvent.prototype.removeListener = function (listener) { - var done = false; - this._listeners = this._listeners.filter(function (item) { - if (done || item.listener !== listener) { - return true; - } - done = true; - return false; - }); - }; - RunningEvent.prototype.removeAllListeners = function () { - this._listeners = []; - }; - RunningEvent.prototype.listeners = function () { - return this._listeners.map(function (i) { return i.listener; }); - }; - RunningEvent.prototype.listenerCount = function () { - return this._listeners.length; - }; - RunningEvent.prototype.run = function (args) { - var _this = this; - var listenerCount = this.listenerCount(); - this._listeners = this._listeners.filter(function (item) { - var argsCopy = args.slice(); - // Call the callback in the next event loop - setTimeout(function () { - item.listener.apply(_this, argsCopy); - }, 0); - // Reschedule it if it not "once" - return !(item.once); - }); - return listenerCount; - }; - RunningEvent.prototype.prepareEvent = function (event) { - }; - // Returns the array that will be applied to an emit - RunningEvent.prototype.getEmit = function (event) { - return [event]; - }; - return RunningEvent; -}()); -var ErrorRunningEvent = /** @class */ (function (_super) { - __extends(ErrorRunningEvent, _super); - function ErrorRunningEvent() { - return _super.call(this, "error", null) || this; - } - return ErrorRunningEvent; -}(RunningEvent)); -// @TODO Fragment should inherit Wildcard? and just override getEmit? -// or have a common abstract super class, with enough constructor -// options to configure both. -// A Fragment Event will populate all the properties that Wildcard -// will, and additionally dereference the arguments when emitting -var FragmentRunningEvent = /** @class */ (function (_super) { - __extends(FragmentRunningEvent, _super); - function FragmentRunningEvent(address, contractInterface, fragment, topics) { - var _this = this; - var filter = { - address: address - }; - var topic = contractInterface.getEventTopic(fragment); - if (topics) { - if (topic !== topics[0]) { - logger.throwArgumentError("topic mismatch", "topics", topics); - } - filter.topics = topics.slice(); - } - else { - filter.topics = [topic]; - } - _this = _super.call(this, getEventTag(filter), filter) || this; - (0, properties_1.defineReadOnly)(_this, "address", address); - (0, properties_1.defineReadOnly)(_this, "interface", contractInterface); - (0, properties_1.defineReadOnly)(_this, "fragment", fragment); - return _this; - } - FragmentRunningEvent.prototype.prepareEvent = function (event) { - var _this = this; - _super.prototype.prepareEvent.call(this, event); - event.event = this.fragment.name; - event.eventSignature = this.fragment.format(); - event.decode = function (data, topics) { - return _this.interface.decodeEventLog(_this.fragment, data, topics); - }; - try { - event.args = this.interface.decodeEventLog(this.fragment, event.data, event.topics); - } - catch (error) { - event.args = null; - event.decodeError = error; - } - }; - FragmentRunningEvent.prototype.getEmit = function (event) { - var errors = (0, abi_1.checkResultErrors)(event.args); - if (errors.length) { - throw errors[0].error; - } - var args = (event.args || []).slice(); - args.push(event); - return args; - }; - return FragmentRunningEvent; -}(RunningEvent)); -// A Wildcard Event will attempt to populate: -// - event The name of the event name -// - eventSignature The full signature of the event -// - decode A function to decode data and topics -// - args The decoded data and topics -var WildcardRunningEvent = /** @class */ (function (_super) { - __extends(WildcardRunningEvent, _super); - function WildcardRunningEvent(address, contractInterface) { - var _this = _super.call(this, "*", { address: address }) || this; - (0, properties_1.defineReadOnly)(_this, "address", address); - (0, properties_1.defineReadOnly)(_this, "interface", contractInterface); - return _this; - } - WildcardRunningEvent.prototype.prepareEvent = function (event) { - var _this = this; - _super.prototype.prepareEvent.call(this, event); - try { - var parsed_1 = this.interface.parseLog(event); - event.event = parsed_1.name; - event.eventSignature = parsed_1.signature; - event.decode = function (data, topics) { - return _this.interface.decodeEventLog(parsed_1.eventFragment, data, topics); - }; - event.args = parsed_1.args; - } - catch (error) { - // No matching event - } - }; - return WildcardRunningEvent; -}(RunningEvent)); -var BaseContract = /** @class */ (function () { - function BaseContract(addressOrName, contractInterface, signerOrProvider) { - var _newTarget = this.constructor; - var _this = this; - // @TODO: Maybe still check the addressOrName looks like a valid address or name? - //address = getAddress(address); - (0, properties_1.defineReadOnly)(this, "interface", (0, properties_1.getStatic)(_newTarget, "getInterface")(contractInterface)); - if (signerOrProvider == null) { - (0, properties_1.defineReadOnly)(this, "provider", null); - (0, properties_1.defineReadOnly)(this, "signer", null); - } - else if (abstract_signer_1.Signer.isSigner(signerOrProvider)) { - (0, properties_1.defineReadOnly)(this, "provider", signerOrProvider.provider || null); - (0, properties_1.defineReadOnly)(this, "signer", signerOrProvider); - } - else if (abstract_provider_1.Provider.isProvider(signerOrProvider)) { - (0, properties_1.defineReadOnly)(this, "provider", signerOrProvider); - (0, properties_1.defineReadOnly)(this, "signer", null); - } - else { - logger.throwArgumentError("invalid signer or provider", "signerOrProvider", signerOrProvider); - } - (0, properties_1.defineReadOnly)(this, "callStatic", {}); - (0, properties_1.defineReadOnly)(this, "estimateGas", {}); - (0, properties_1.defineReadOnly)(this, "functions", {}); - (0, properties_1.defineReadOnly)(this, "populateTransaction", {}); - (0, properties_1.defineReadOnly)(this, "filters", {}); - { - var uniqueFilters_1 = {}; - Object.keys(this.interface.events).forEach(function (eventSignature) { - var event = _this.interface.events[eventSignature]; - (0, properties_1.defineReadOnly)(_this.filters, eventSignature, function () { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i] = arguments[_i]; - } - return { - address: _this.address, - topics: _this.interface.encodeFilterTopics(event, args) - }; - }); - if (!uniqueFilters_1[event.name]) { - uniqueFilters_1[event.name] = []; - } - uniqueFilters_1[event.name].push(eventSignature); - }); - Object.keys(uniqueFilters_1).forEach(function (name) { - var filters = uniqueFilters_1[name]; - if (filters.length === 1) { - (0, properties_1.defineReadOnly)(_this.filters, name, _this.filters[filters[0]]); - } - else { - logger.warn("Duplicate definition of " + name + " (" + filters.join(", ") + ")"); - } - }); - } - (0, properties_1.defineReadOnly)(this, "_runningEvents", {}); - (0, properties_1.defineReadOnly)(this, "_wrappedEmits", {}); - if (addressOrName == null) { - logger.throwArgumentError("invalid contract address or ENS name", "addressOrName", addressOrName); - } - (0, properties_1.defineReadOnly)(this, "address", addressOrName); - if (this.provider) { - (0, properties_1.defineReadOnly)(this, "resolvedAddress", resolveName(this.provider, addressOrName)); - } - else { - try { - (0, properties_1.defineReadOnly)(this, "resolvedAddress", Promise.resolve((0, address_1.getAddress)(addressOrName))); - } - catch (error) { - // Without a provider, we cannot use ENS names - logger.throwError("provider is required to use ENS name as contract address", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "new Contract" - }); - } - } - // Swallow bad ENS names to prevent Unhandled Exceptions - this.resolvedAddress.catch(function (e) { }); - var uniqueNames = {}; - var uniqueSignatures = {}; - Object.keys(this.interface.functions).forEach(function (signature) { - var fragment = _this.interface.functions[signature]; - // Check that the signature is unique; if not the ABI generation has - // not been cleaned or may be incorrectly generated - if (uniqueSignatures[signature]) { - logger.warn("Duplicate ABI entry for " + JSON.stringify(signature)); - return; - } - uniqueSignatures[signature] = true; - // Track unique names; we only expose bare named functions if they - // are ambiguous - { - var name_1 = fragment.name; - if (!uniqueNames["%" + name_1]) { - uniqueNames["%" + name_1] = []; - } - uniqueNames["%" + name_1].push(signature); - } - if (_this[signature] == null) { - (0, properties_1.defineReadOnly)(_this, signature, buildDefault(_this, fragment, true)); - } - // We do not collapse simple calls on this bucket, which allows - // frameworks to safely use this without introspection as well as - // allows decoding error recovery. - if (_this.functions[signature] == null) { - (0, properties_1.defineReadOnly)(_this.functions, signature, buildDefault(_this, fragment, false)); - } - if (_this.callStatic[signature] == null) { - (0, properties_1.defineReadOnly)(_this.callStatic, signature, buildCall(_this, fragment, true)); - } - if (_this.populateTransaction[signature] == null) { - (0, properties_1.defineReadOnly)(_this.populateTransaction, signature, buildPopulate(_this, fragment)); - } - if (_this.estimateGas[signature] == null) { - (0, properties_1.defineReadOnly)(_this.estimateGas, signature, buildEstimate(_this, fragment)); - } - }); - Object.keys(uniqueNames).forEach(function (name) { - // Ambiguous names to not get attached as bare names - var signatures = uniqueNames[name]; - if (signatures.length > 1) { - return; - } - // Strip off the leading "%" used for prototype protection - name = name.substring(1); - var signature = signatures[0]; - // If overwriting a member property that is null, swallow the error - try { - if (_this[name] == null) { - (0, properties_1.defineReadOnly)(_this, name, _this[signature]); - } - } - catch (e) { } - if (_this.functions[name] == null) { - (0, properties_1.defineReadOnly)(_this.functions, name, _this.functions[signature]); - } - if (_this.callStatic[name] == null) { - (0, properties_1.defineReadOnly)(_this.callStatic, name, _this.callStatic[signature]); - } - if (_this.populateTransaction[name] == null) { - (0, properties_1.defineReadOnly)(_this.populateTransaction, name, _this.populateTransaction[signature]); - } - if (_this.estimateGas[name] == null) { - (0, properties_1.defineReadOnly)(_this.estimateGas, name, _this.estimateGas[signature]); - } - }); - } - BaseContract.getContractAddress = function (transaction) { - return (0, address_1.getContractAddress)(transaction); - }; - BaseContract.getInterface = function (contractInterface) { - if (abi_1.Interface.isInterface(contractInterface)) { - return contractInterface; - } - return new abi_1.Interface(contractInterface); - }; - // @TODO: Allow timeout? - BaseContract.prototype.deployed = function () { - return this._deployed(); - }; - BaseContract.prototype._deployed = function (blockTag) { - var _this = this; - if (!this._deployedPromise) { - // If we were just deployed, we know the transaction we should occur in - if (this.deployTransaction) { - this._deployedPromise = this.deployTransaction.wait().then(function () { - return _this; - }); - } - else { - // @TODO: Once we allow a timeout to be passed in, we will wait - // up to that many blocks for getCode - // Otherwise, poll for our code to be deployed - this._deployedPromise = this.provider.getCode(this.address, blockTag).then(function (code) { - if (code === "0x") { - logger.throwError("contract not deployed", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - contractAddress: _this.address, - operation: "getDeployed" - }); - } - return _this; - }); - } - } - return this._deployedPromise; - }; - // @TODO: - // estimateFallback(overrides?: TransactionRequest): Promise - // @TODO: - // estimateDeploy(bytecode: string, ...args): Promise - BaseContract.prototype.fallback = function (overrides) { - var _this = this; - if (!this.signer) { - logger.throwError("sending a transactions require a signer", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { operation: "sendTransaction(fallback)" }); - } - var tx = (0, properties_1.shallowCopy)(overrides || {}); - ["from", "to"].forEach(function (key) { - if (tx[key] == null) { - return; - } - logger.throwError("cannot override " + key, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { operation: key }); - }); - tx.to = this.resolvedAddress; - return this.deployed().then(function () { - return _this.signer.sendTransaction(tx); - }); - }; - // Reconnect to a different signer or provider - BaseContract.prototype.connect = function (signerOrProvider) { - if (typeof (signerOrProvider) === "string") { - signerOrProvider = new abstract_signer_1.VoidSigner(signerOrProvider, this.provider); - } - var contract = new (this.constructor)(this.address, this.interface, signerOrProvider); - if (this.deployTransaction) { - (0, properties_1.defineReadOnly)(contract, "deployTransaction", this.deployTransaction); - } - return contract; - }; - // Re-attach to a different on-chain instance of this contract - BaseContract.prototype.attach = function (addressOrName) { - return new (this.constructor)(addressOrName, this.interface, this.signer || this.provider); - }; - BaseContract.isIndexed = function (value) { - return abi_1.Indexed.isIndexed(value); - }; - BaseContract.prototype._normalizeRunningEvent = function (runningEvent) { - // Already have an instance of this event running; we can re-use it - if (this._runningEvents[runningEvent.tag]) { - return this._runningEvents[runningEvent.tag]; - } - return runningEvent; - }; - BaseContract.prototype._getRunningEvent = function (eventName) { - if (typeof (eventName) === "string") { - // Listen for "error" events (if your contract has an error event, include - // the full signature to bypass this special event keyword) - if (eventName === "error") { - return this._normalizeRunningEvent(new ErrorRunningEvent()); - } - // Listen for any event that is registered - if (eventName === "event") { - return this._normalizeRunningEvent(new RunningEvent("event", null)); - } - // Listen for any event - if (eventName === "*") { - return this._normalizeRunningEvent(new WildcardRunningEvent(this.address, this.interface)); - } - // Get the event Fragment (throws if ambiguous/unknown event) - var fragment = this.interface.getEvent(eventName); - return this._normalizeRunningEvent(new FragmentRunningEvent(this.address, this.interface, fragment)); - } - // We have topics to filter by... - if (eventName.topics && eventName.topics.length > 0) { - // Is it a known topichash? (throws if no matching topichash) - try { - var topic = eventName.topics[0]; - if (typeof (topic) !== "string") { - throw new Error("invalid topic"); // @TODO: May happen for anonymous events - } - var fragment = this.interface.getEvent(topic); - return this._normalizeRunningEvent(new FragmentRunningEvent(this.address, this.interface, fragment, eventName.topics)); - } - catch (error) { } - // Filter by the unknown topichash - var filter = { - address: this.address, - topics: eventName.topics - }; - return this._normalizeRunningEvent(new RunningEvent(getEventTag(filter), filter)); - } - return this._normalizeRunningEvent(new WildcardRunningEvent(this.address, this.interface)); - }; - BaseContract.prototype._checkRunningEvents = function (runningEvent) { - if (runningEvent.listenerCount() === 0) { - delete this._runningEvents[runningEvent.tag]; - // If we have a poller for this, remove it - var emit = this._wrappedEmits[runningEvent.tag]; - if (emit && runningEvent.filter) { - this.provider.off(runningEvent.filter, emit); - delete this._wrappedEmits[runningEvent.tag]; - } - } - }; - // Subclasses can override this to gracefully recover - // from parse errors if they wish - BaseContract.prototype._wrapEvent = function (runningEvent, log, listener) { - var _this = this; - var event = (0, properties_1.deepCopy)(log); - event.removeListener = function () { - if (!listener) { - return; - } - runningEvent.removeListener(listener); - _this._checkRunningEvents(runningEvent); - }; - event.getBlock = function () { return _this.provider.getBlock(log.blockHash); }; - event.getTransaction = function () { return _this.provider.getTransaction(log.transactionHash); }; - event.getTransactionReceipt = function () { return _this.provider.getTransactionReceipt(log.transactionHash); }; - // This may throw if the topics and data mismatch the signature - runningEvent.prepareEvent(event); - return event; - }; - BaseContract.prototype._addEventListener = function (runningEvent, listener, once) { - var _this = this; - if (!this.provider) { - logger.throwError("events require a provider or a signer with a provider", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { operation: "once" }); - } - runningEvent.addListener(listener, once); - // Track this running event and its listeners (may already be there; but no hard in updating) - this._runningEvents[runningEvent.tag] = runningEvent; - // If we are not polling the provider, start polling - if (!this._wrappedEmits[runningEvent.tag]) { - var wrappedEmit = function (log) { - var event = _this._wrapEvent(runningEvent, log, listener); - // Try to emit the result for the parameterized event... - if (event.decodeError == null) { - try { - var args = runningEvent.getEmit(event); - _this.emit.apply(_this, __spreadArray([runningEvent.filter], args, false)); - } - catch (error) { - event.decodeError = error.error; - } - } - // Always emit "event" for fragment-base events - if (runningEvent.filter != null) { - _this.emit("event", event); - } - // Emit "error" if there was an error - if (event.decodeError != null) { - _this.emit("error", event.decodeError, event); - } - }; - this._wrappedEmits[runningEvent.tag] = wrappedEmit; - // Special events, like "error" do not have a filter - if (runningEvent.filter != null) { - this.provider.on(runningEvent.filter, wrappedEmit); - } - } - }; - BaseContract.prototype.queryFilter = function (event, fromBlockOrBlockhash, toBlock) { - var _this = this; - var runningEvent = this._getRunningEvent(event); - var filter = (0, properties_1.shallowCopy)(runningEvent.filter); - if (typeof (fromBlockOrBlockhash) === "string" && (0, bytes_1.isHexString)(fromBlockOrBlockhash, 32)) { - if (toBlock != null) { - logger.throwArgumentError("cannot specify toBlock with blockhash", "toBlock", toBlock); - } - filter.blockHash = fromBlockOrBlockhash; - } - else { - filter.fromBlock = ((fromBlockOrBlockhash != null) ? fromBlockOrBlockhash : 0); - filter.toBlock = ((toBlock != null) ? toBlock : "latest"); - } - return this.provider.getLogs(filter).then(function (logs) { - return logs.map(function (log) { return _this._wrapEvent(runningEvent, log, null); }); - }); - }; - BaseContract.prototype.on = function (event, listener) { - this._addEventListener(this._getRunningEvent(event), listener, false); - return this; - }; - BaseContract.prototype.once = function (event, listener) { - this._addEventListener(this._getRunningEvent(event), listener, true); - return this; - }; - BaseContract.prototype.emit = function (eventName) { - var args = []; - for (var _i = 1; _i < arguments.length; _i++) { - args[_i - 1] = arguments[_i]; - } - if (!this.provider) { - return false; - } - var runningEvent = this._getRunningEvent(eventName); - var result = (runningEvent.run(args) > 0); - // May have drained all the "once" events; check for living events - this._checkRunningEvents(runningEvent); - return result; - }; - BaseContract.prototype.listenerCount = function (eventName) { - var _this = this; - if (!this.provider) { - return 0; - } - if (eventName == null) { - return Object.keys(this._runningEvents).reduce(function (accum, key) { - return accum + _this._runningEvents[key].listenerCount(); - }, 0); - } - return this._getRunningEvent(eventName).listenerCount(); - }; - BaseContract.prototype.listeners = function (eventName) { - if (!this.provider) { - return []; - } - if (eventName == null) { - var result_1 = []; - for (var tag in this._runningEvents) { - this._runningEvents[tag].listeners().forEach(function (listener) { - result_1.push(listener); - }); - } - return result_1; - } - return this._getRunningEvent(eventName).listeners(); - }; - BaseContract.prototype.removeAllListeners = function (eventName) { - if (!this.provider) { - return this; - } - if (eventName == null) { - for (var tag in this._runningEvents) { - var runningEvent_1 = this._runningEvents[tag]; - runningEvent_1.removeAllListeners(); - this._checkRunningEvents(runningEvent_1); - } - return this; - } - // Delete any listeners - var runningEvent = this._getRunningEvent(eventName); - runningEvent.removeAllListeners(); - this._checkRunningEvents(runningEvent); - return this; - }; - BaseContract.prototype.off = function (eventName, listener) { - if (!this.provider) { - return this; - } - var runningEvent = this._getRunningEvent(eventName); - runningEvent.removeListener(listener); - this._checkRunningEvents(runningEvent); - return this; - }; - BaseContract.prototype.removeListener = function (eventName, listener) { - return this.off(eventName, listener); - }; - return BaseContract; -}()); -exports.BaseContract = BaseContract; -var Contract = /** @class */ (function (_super) { - __extends(Contract, _super); - function Contract() { - return _super !== null && _super.apply(this, arguments) || this; - } - return Contract; -}(BaseContract)); -exports.Contract = Contract; -var ContractFactory = /** @class */ (function () { - function ContractFactory(contractInterface, bytecode, signer) { - var _newTarget = this.constructor; - var bytecodeHex = null; - if (typeof (bytecode) === "string") { - bytecodeHex = bytecode; - } - else if ((0, bytes_1.isBytes)(bytecode)) { - bytecodeHex = (0, bytes_1.hexlify)(bytecode); - } - else if (bytecode && typeof (bytecode.object) === "string") { - // Allow the bytecode object from the Solidity compiler - bytecodeHex = bytecode.object; - } - else { - // Crash in the next verification step - bytecodeHex = "!"; - } - // Make sure it is 0x prefixed - if (bytecodeHex.substring(0, 2) !== "0x") { - bytecodeHex = "0x" + bytecodeHex; - } - // Make sure the final result is valid bytecode - if (!(0, bytes_1.isHexString)(bytecodeHex) || (bytecodeHex.length % 2)) { - logger.throwArgumentError("invalid bytecode", "bytecode", bytecode); - } - // If we have a signer, make sure it is valid - if (signer && !abstract_signer_1.Signer.isSigner(signer)) { - logger.throwArgumentError("invalid signer", "signer", signer); - } - (0, properties_1.defineReadOnly)(this, "bytecode", bytecodeHex); - (0, properties_1.defineReadOnly)(this, "interface", (0, properties_1.getStatic)(_newTarget, "getInterface")(contractInterface)); - (0, properties_1.defineReadOnly)(this, "signer", signer || null); - } - // @TODO: Future; rename to populateTransaction? - ContractFactory.prototype.getDeployTransaction = function () { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i] = arguments[_i]; - } - var tx = {}; - // If we have 1 additional argument, we allow transaction overrides - if (args.length === this.interface.deploy.inputs.length + 1 && typeof (args[args.length - 1]) === "object") { - tx = (0, properties_1.shallowCopy)(args.pop()); - for (var key in tx) { - if (!allowedTransactionKeys[key]) { - throw new Error("unknown transaction override " + key); - } - } - } - // Do not allow these to be overridden in a deployment transaction - ["data", "from", "to"].forEach(function (key) { - if (tx[key] == null) { - return; - } - logger.throwError("cannot override " + key, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { operation: key }); - }); - if (tx.value) { - var value = bignumber_1.BigNumber.from(tx.value); - if (!value.isZero() && !this.interface.deploy.payable) { - logger.throwError("non-payable constructor cannot override value", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "overrides.value", - value: tx.value - }); - } - } - // Make sure the call matches the constructor signature - logger.checkArgumentCount(args.length, this.interface.deploy.inputs.length, " in Contract constructor"); - // Set the data to the bytecode + the encoded constructor arguments - tx.data = (0, bytes_1.hexlify)((0, bytes_1.concat)([ - this.bytecode, - this.interface.encodeDeploy(args) - ])); - return tx; - }; - ContractFactory.prototype.deploy = function () { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i] = arguments[_i]; - } - return __awaiter(this, void 0, void 0, function () { - var overrides, params, unsignedTx, tx, address, contract; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - overrides = {}; - // If 1 extra parameter was passed in, it contains overrides - if (args.length === this.interface.deploy.inputs.length + 1) { - overrides = args.pop(); - } - // Make sure the call matches the constructor signature - logger.checkArgumentCount(args.length, this.interface.deploy.inputs.length, " in Contract constructor"); - return [4 /*yield*/, resolveAddresses(this.signer, args, this.interface.deploy.inputs)]; - case 1: - params = _a.sent(); - params.push(overrides); - unsignedTx = this.getDeployTransaction.apply(this, params); - return [4 /*yield*/, this.signer.sendTransaction(unsignedTx)]; - case 2: - tx = _a.sent(); - address = (0, properties_1.getStatic)(this.constructor, "getContractAddress")(tx); - contract = (0, properties_1.getStatic)(this.constructor, "getContract")(address, this.interface, this.signer); - // Add the modified wait that wraps events - addContractWait(contract, tx); - (0, properties_1.defineReadOnly)(contract, "deployTransaction", tx); - return [2 /*return*/, contract]; - } - }); - }); - }; - ContractFactory.prototype.attach = function (address) { - return (this.constructor).getContract(address, this.interface, this.signer); - }; - ContractFactory.prototype.connect = function (signer) { - return new (this.constructor)(this.interface, this.bytecode, signer); - }; - ContractFactory.fromSolidity = function (compilerOutput, signer) { - if (compilerOutput == null) { - logger.throwError("missing compiler output", logger_1.Logger.errors.MISSING_ARGUMENT, { argument: "compilerOutput" }); - } - if (typeof (compilerOutput) === "string") { - compilerOutput = JSON.parse(compilerOutput); - } - var abi = compilerOutput.abi; - var bytecode = null; - if (compilerOutput.bytecode) { - bytecode = compilerOutput.bytecode; - } - else if (compilerOutput.evm && compilerOutput.evm.bytecode) { - bytecode = compilerOutput.evm.bytecode; - } - return new this(abi, bytecode, signer); - }; - ContractFactory.getInterface = function (contractInterface) { - return Contract.getInterface(contractInterface); - }; - ContractFactory.getContractAddress = function (tx) { - return (0, address_1.getContractAddress)(tx); - }; - ContractFactory.getContract = function (address, contractInterface, signer) { - return new Contract(address, contractInterface, signer); - }; - return ContractFactory; -}()); -exports.ContractFactory = ContractFactory; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 14891: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "hash/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 92302: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -/** - * MIT License - * - * Copyright (c) 2021 Andrew Raffensperger - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - * - * This is a near carbon-copy of the original source (link below) with the - * TypeScript typings added and a few tweaks to make it ES3-compatible. - * - * See: https://github.com/adraffy/ens-normalize.js - */ -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.read_emoji_trie = exports.read_zero_terminated_array = exports.read_mapped_map = exports.read_member_array = exports.signed = exports.read_compressed_payload = exports.read_payload = exports.decode_arithmetic = void 0; -// https://github.com/behnammodi/polyfill/blob/master/array.polyfill.js -function flat(array, depth) { - if (depth == null) { - depth = 1; - } - var result = []; - var forEach = result.forEach; - var flatDeep = function (arr, depth) { - forEach.call(arr, function (val) { - if (depth > 0 && Array.isArray(val)) { - flatDeep(val, depth - 1); - } - else { - result.push(val); - } - }); - }; - flatDeep(array, depth); - return result; -} -function fromEntries(array) { - var result = {}; - for (var i = 0; i < array.length; i++) { - var value = array[i]; - result[value[0]] = value[1]; - } - return result; -} -function decode_arithmetic(bytes) { - var pos = 0; - function u16() { return (bytes[pos++] << 8) | bytes[pos++]; } - // decode the frequency table - var symbol_count = u16(); - var total = 1; - var acc = [0, 1]; // first symbol has frequency 1 - for (var i = 1; i < symbol_count; i++) { - acc.push(total += u16()); - } - // skip the sized-payload that the last 3 symbols index into - var skip = u16(); - var pos_payload = pos; - pos += skip; - var read_width = 0; - var read_buffer = 0; - function read_bit() { - if (read_width == 0) { - // this will read beyond end of buffer - // but (undefined|0) => zero pad - read_buffer = (read_buffer << 8) | bytes[pos++]; - read_width = 8; - } - return (read_buffer >> --read_width) & 1; - } - var N = 31; - var FULL = Math.pow(2, N); - var HALF = FULL >>> 1; - var QRTR = HALF >> 1; - var MASK = FULL - 1; - // fill register - var register = 0; - for (var i = 0; i < N; i++) - register = (register << 1) | read_bit(); - var symbols = []; - var low = 0; - var range = FULL; // treat like a float - while (true) { - var value = Math.floor((((register - low + 1) * total) - 1) / range); - var start = 0; - var end = symbol_count; - while (end - start > 1) { // binary search - var mid = (start + end) >>> 1; - if (value < acc[mid]) { - end = mid; - } - else { - start = mid; - } - } - if (start == 0) - break; // first symbol is end mark - symbols.push(start); - var a = low + Math.floor(range * acc[start] / total); - var b = low + Math.floor(range * acc[start + 1] / total) - 1; - while (((a ^ b) & HALF) == 0) { - register = (register << 1) & MASK | read_bit(); - a = (a << 1) & MASK; - b = (b << 1) & MASK | 1; - } - while (a & ~b & QRTR) { - register = (register & HALF) | ((register << 1) & (MASK >>> 1)) | read_bit(); - a = (a << 1) ^ HALF; - b = ((b ^ HALF) << 1) | HALF | 1; - } - low = a; - range = 1 + b - a; - } - var offset = symbol_count - 4; - return symbols.map(function (x) { - switch (x - offset) { - case 3: return offset + 0x10100 + ((bytes[pos_payload++] << 16) | (bytes[pos_payload++] << 8) | bytes[pos_payload++]); - case 2: return offset + 0x100 + ((bytes[pos_payload++] << 8) | bytes[pos_payload++]); - case 1: return offset + bytes[pos_payload++]; - default: return x - 1; - } - }); -} -exports.decode_arithmetic = decode_arithmetic; -// returns an iterator which returns the next symbol -function read_payload(v) { - var pos = 0; - return function () { return v[pos++]; }; -} -exports.read_payload = read_payload; -function read_compressed_payload(bytes) { - return read_payload(decode_arithmetic(bytes)); -} -exports.read_compressed_payload = read_compressed_payload; -// eg. [0,1,2,3...] => [0,-1,1,-2,...] -function signed(i) { - return (i & 1) ? (~i >> 1) : (i >> 1); -} -exports.signed = signed; -function read_counts(n, next) { - var v = Array(n); - for (var i = 0; i < n; i++) - v[i] = 1 + next(); - return v; -} -function read_ascending(n, next) { - var v = Array(n); - for (var i = 0, x = -1; i < n; i++) - v[i] = x += 1 + next(); - return v; -} -function read_deltas(n, next) { - var v = Array(n); - for (var i = 0, x = 0; i < n; i++) - v[i] = x += signed(next()); - return v; -} -function read_member_array(next, lookup) { - var v = read_ascending(next(), next); - var n = next(); - var vX = read_ascending(n, next); - var vN = read_counts(n, next); - for (var i = 0; i < n; i++) { - for (var j = 0; j < vN[i]; j++) { - v.push(vX[i] + j); - } - } - return lookup ? v.map(function (x) { return lookup[x]; }) : v; -} -exports.read_member_array = read_member_array; -// returns array of -// [x, ys] => single replacement rule -// [x, ys, n, dx, dx] => linear map -function read_mapped_map(next) { - var ret = []; - while (true) { - var w = next(); - if (w == 0) - break; - ret.push(read_linear_table(w, next)); - } - while (true) { - var w = next() - 1; - if (w < 0) - break; - ret.push(read_replacement_table(w, next)); - } - return fromEntries(flat(ret)); -} -exports.read_mapped_map = read_mapped_map; -function read_zero_terminated_array(next) { - var v = []; - while (true) { - var i = next(); - if (i == 0) - break; - v.push(i); - } - return v; -} -exports.read_zero_terminated_array = read_zero_terminated_array; -function read_transposed(n, w, next) { - var m = Array(n).fill(undefined).map(function () { return []; }); - for (var i = 0; i < w; i++) { - read_deltas(n, next).forEach(function (x, j) { return m[j].push(x); }); - } - return m; -} -function read_linear_table(w, next) { - var dx = 1 + next(); - var dy = next(); - var vN = read_zero_terminated_array(next); - var m = read_transposed(vN.length, 1 + w, next); - return flat(m.map(function (v, i) { - var x = v[0], ys = v.slice(1); - //let [x, ...ys] = v; - //return Array(vN[i]).fill().map((_, j) => { - return Array(vN[i]).fill(undefined).map(function (_, j) { - var j_dy = j * dy; - return [x + j * dx, ys.map(function (y) { return y + j_dy; })]; - }); - })); -} -function read_replacement_table(w, next) { - var n = 1 + next(); - var m = read_transposed(n, 1 + w, next); - return m.map(function (v) { return [v[0], v.slice(1)]; }); -} -function read_emoji_trie(next) { - var sorted = read_member_array(next).sort(function (a, b) { return a - b; }); - return read(); - function read() { - var branches = []; - while (true) { - var keys = read_member_array(next, sorted); - if (keys.length == 0) - break; - branches.push({ set: new Set(keys), node: read() }); - } - branches.sort(function (a, b) { return b.set.size - a.set.size; }); // sort by likelihood - var temp = next(); - var valid = temp % 3; - temp = (temp / 3) | 0; - var fe0f = !!(temp & 1); - temp >>= 1; - var save = temp == 1; - var check = temp == 2; - return { branches: branches, valid: valid, fe0f: fe0f, save: save, check: check }; - } -} -exports.read_emoji_trie = read_emoji_trie; -//# sourceMappingURL=decoder.js.map - -/***/ }), - -/***/ 97666: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - + * @author Louis-Dominique Dubeau + * @license MIT + * @copyright Louis-Dominique Dubeau + */Object.defineProperty(Pt,"__esModule",{value:true});Pt.NC_NAME_START_CHAR="A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿";Pt.NC_NAME_CHAR="-"+Pt.NC_NAME_START_CHAR+".0-9·̀-ͯ‿-⁀";Pt.NC_NAME_START_CHAR_RE=new RegExp("^["+Pt.NC_NAME_START_CHAR+"]$","u");Pt.NC_NAME_CHAR_RE=new RegExp("^["+Pt.NC_NAME_CHAR+"]$","u");Pt.NC_NAME_RE=new RegExp("^["+Pt.NC_NAME_START_CHAR+"]["+Pt.NC_NAME_CHAR+"]*$","u");function isNCNameStartChar(Wt){return Wt>=65&&Wt<=90||Wt===95||Wt>=97&&Wt<=122||Wt>=192&&Wt<=214||Wt>=216&&Wt<=246||Wt>=248&&Wt<=767||Wt>=880&&Wt<=893||Wt>=895&&Wt<=8191||Wt>=8204&&Wt<=8205||Wt>=8304&&Wt<=8591||Wt>=11264&&Wt<=12271||Wt>=12289&&Wt<=55295||Wt>=63744&&Wt<=64975||Wt>=65008&&Wt<=65533||Wt>=65536&&Wt<=983039}Pt.isNCNameStartChar=isNCNameStartChar;function isNCNameChar(Wt){return isNCNameStartChar(Wt)||(Wt===45||Wt===46||Wt>=48&&Wt<=57||Wt===183||Wt>=768&&Wt<=879||Wt>=8255&&Wt<=8256)}Pt.isNCNameChar=isNCNameChar},18327:module=>{module.exports=eval("require")("bufferutil")},79989:module=>{module.exports=eval("require")("canvas")},42078:module=>{module.exports=eval("require")("encoding")},62414:module=>{module.exports=eval("require")("utf-8-validate")},42613:Wt=>{"use strict";Wt.exports=require("assert")},90290:Wt=>{"use strict";Wt.exports=require("async_hooks")},20181:Wt=>{"use strict";Wt.exports=require("buffer")},35317:Wt=>{"use strict";Wt.exports=require("child_process")},64236:Wt=>{"use strict";Wt.exports=require("console")},76982:Wt=>{"use strict";Wt.exports=require("crypto")},31637:Wt=>{"use strict";Wt.exports=require("diagnostics_channel")},24434:Wt=>{"use strict";Wt.exports=require("events")},79896:Wt=>{"use strict";Wt.exports=require("fs")},58611:Wt=>{"use strict";Wt.exports=require("http")},85675:Wt=>{"use strict";Wt.exports=require("http2")},65692:Wt=>{"use strict";Wt.exports=require("https")},69278:Wt=>{"use strict";Wt.exports=require("net")},78474:Wt=>{"use strict";Wt.exports=require("node:events")},57075:Wt=>{"use strict";Wt.exports=require("node:stream")},57975:Wt=>{"use strict";Wt.exports=require("node:util")},70857:Wt=>{"use strict";Wt.exports=require("os")},16928:Wt=>{"use strict";Wt.exports=require("path")},82987:Wt=>{"use strict";Wt.exports=require("perf_hooks")},24876:Wt=>{"use strict";Wt.exports=require("punycode")},83480:Wt=>{"use strict";Wt.exports=require("querystring")},2203:Wt=>{"use strict";Wt.exports=require("stream")},63774:Wt=>{"use strict";Wt.exports=require("stream/web")},13193:Wt=>{"use strict";Wt.exports=require("string_decoder")},53557:Wt=>{"use strict";Wt.exports=require("timers")},64756:Wt=>{"use strict";Wt.exports=require("tls")},52018:Wt=>{"use strict";Wt.exports=require("tty")},87016:Wt=>{"use strict";Wt.exports=require("url")},39023:Wt=>{"use strict";Wt.exports=require("util")},98253:Wt=>{"use strict";Wt.exports=require("util/types")},69154:Wt=>{"use strict";Wt.exports=require("vm")},28167:Wt=>{"use strict";Wt.exports=require("worker_threads")},43106:Wt=>{"use strict";Wt.exports=require("zlib")},27182:(Wt,Pt,en)=>{"use strict";const tn=en(57075).Writable;const nn=en(57975).inherits;const an=en(84136);const rn=en(50612);const In=en(62271);const sn=45;const on=Buffer.from("-");const cn=Buffer.from("\r\n");const EMPTY_FN=function(){};function Dicer(Wt){if(!(this instanceof Dicer)){return new Dicer(Wt)}tn.call(this,Wt);if(!Wt||!Wt.headerFirst&&typeof Wt.boundary!=="string"){throw new TypeError("Boundary required")}if(typeof Wt.boundary==="string"){this.setBoundary(Wt.boundary)}else{this._bparser=undefined}this._headerFirst=Wt.headerFirst;this._dashes=0;this._parts=0;this._finished=false;this._realFinish=false;this._isPreamble=true;this._justMatched=false;this._firstWrite=true;this._inHeader=true;this._part=undefined;this._cb=undefined;this._ignoreData=false;this._partOpts={highWaterMark:Wt.partHwm};this._pause=false;const Pt=this;this._hparser=new In(Wt);this._hparser.on("header",(function(Wt){Pt._inHeader=false;Pt._part.emit("header",Wt)}))}nn(Dicer,tn);Dicer.prototype.emit=function(Wt){if(Wt==="finish"&&!this._realFinish){if(!this._finished){const Wt=this;process.nextTick((function(){Wt.emit("error",new Error("Unexpected end of multipart data"));if(Wt._part&&!Wt._ignoreData){const Pt=Wt._isPreamble?"Preamble":"Part";Wt._part.emit("error",new Error(Pt+" terminated early due to unexpected end of multipart data"));Wt._part.push(null);process.nextTick((function(){Wt._realFinish=true;Wt.emit("finish");Wt._realFinish=false}));return}Wt._realFinish=true;Wt.emit("finish");Wt._realFinish=false}))}}else{tn.prototype.emit.apply(this,arguments)}};Dicer.prototype._write=function(Wt,Pt,en){if(!this._hparser&&!this._bparser){return en()}if(this._headerFirst&&this._isPreamble){if(!this._part){this._part=new rn(this._partOpts);if(this.listenerCount("preamble")!==0){this.emit("preamble",this._part)}else{this._ignore()}}const Pt=this._hparser.push(Wt);if(!this._inHeader&&Pt!==undefined&&Pt{"use strict";const tn=en(78474).EventEmitter;const nn=en(57975).inherits;const an=en(22393);const rn=en(84136);const In=Buffer.from("\r\n\r\n");const sn=/\r\n/g;const on=/^([^:]+):[ \t]?([\x00-\xFF]+)?$/;function HeaderParser(Wt){tn.call(this);Wt=Wt||{};const Pt=this;this.nread=0;this.maxed=false;this.npairs=0;this.maxHeaderPairs=an(Wt,"maxHeaderPairs",2e3);this.maxHeaderSize=an(Wt,"maxHeaderSize",80*1024);this.buffer="";this.header={};this.finished=false;this.ss=new rn(In);this.ss.on("info",(function(Wt,en,tn,nn){if(en&&!Pt.maxed){if(Pt.nread+nn-tn>=Pt.maxHeaderSize){nn=Pt.maxHeaderSize-Pt.nread+tn;Pt.nread=Pt.maxHeaderSize;Pt.maxed=true}else{Pt.nread+=nn-tn}Pt.buffer+=en.toString("binary",tn,nn)}if(Wt){Pt._finish()}}))}nn(HeaderParser,tn);HeaderParser.prototype.push=function(Wt){const Pt=this.ss.push(Wt);if(this.finished){return Pt}};HeaderParser.prototype.reset=function(){this.finished=false;this.buffer="";this.header={};this.ss.reset()};HeaderParser.prototype._finish=function(){if(this.buffer){this._parseHeader()}this.ss.matches=this.ss.maxMatches;const Wt=this.header;this.header={};this.buffer="";this.finished=true;this.nread=this.npairs=0;this.maxed=false;this.emit("header",Wt)};HeaderParser.prototype._parseHeader=function(){if(this.npairs===this.maxHeaderPairs){return}const Wt=this.buffer.split(sn);const Pt=Wt.length;let en,tn;for(var nn=0;nn{"use strict";const tn=en(57975).inherits;const nn=en(57075).Readable;function PartStream(Wt){nn.call(this,Wt)}tn(PartStream,nn);PartStream.prototype._read=function(Wt){};Wt.exports=PartStream},84136:(Wt,Pt,en)=>{"use strict";const tn=en(78474).EventEmitter;const nn=en(57975).inherits;function SBMH(Wt){if(typeof Wt==="string"){Wt=Buffer.from(Wt)}if(!Buffer.isBuffer(Wt)){throw new TypeError("The needle has to be a String or a Buffer.")}const Pt=Wt.length;if(Pt===0){throw new Error("The needle cannot be an empty String/Buffer.")}if(Pt>256){throw new Error("The needle cannot have a length bigger than 256.")}this.maxMatches=Infinity;this.matches=0;this._occ=new Array(256).fill(Pt);this._lookbehind_size=0;this._needle=Wt;this._bufpos=0;this._lookbehind=Buffer.alloc(Pt);for(var en=0;en=0){this.emit("info",false,this._lookbehind,0,this._lookbehind_size);this._lookbehind_size=0}else{const en=this._lookbehind_size+an;if(en>0){this.emit("info",false,this._lookbehind,0,en)}this._lookbehind.copy(this._lookbehind,0,en,this._lookbehind_size-en);this._lookbehind_size-=en;Wt.copy(this._lookbehind,this._lookbehind_size);this._lookbehind_size+=Pt;this._bufpos=Pt;return Pt}}an+=(an>=0)*this._bufpos;if(Wt.indexOf(en,an)!==-1){an=Wt.indexOf(en,an);++this.matches;if(an>0){this.emit("info",true,Wt,this._bufpos,an)}else{this.emit("info",true)}return this._bufpos=an+tn}else{an=Pt-tn}while(an0){this.emit("info",false,Wt,this._bufpos,an{"use strict";const tn=en(57075).Writable;const{inherits:nn}=en(57975);const an=en(27182);const rn=en(41192);const In=en(80855);const sn=en(8929);function Busboy(Wt){if(!(this instanceof Busboy)){return new Busboy(Wt)}if(typeof Wt!=="object"){throw new TypeError("Busboy expected an options-Object.")}if(typeof Wt.headers!=="object"){throw new TypeError("Busboy expected an options-Object with headers-attribute.")}if(typeof Wt.headers["content-type"]!=="string"){throw new TypeError("Missing Content-Type-header.")}const{headers:Pt,...en}=Wt;this.opts={autoDestroy:false,...en};tn.call(this,this.opts);this._done=false;this._parser=this.getParserByHeaders(Pt);this._finished=false}nn(Busboy,tn);Busboy.prototype.emit=function(Wt){if(Wt==="finish"){if(!this._done){this._parser?.end();return}else if(this._finished){return}this._finished=true}tn.prototype.emit.apply(this,arguments)};Busboy.prototype.getParserByHeaders=function(Wt){const Pt=sn(Wt["content-type"]);const en={defCharset:this.opts.defCharset,fileHwm:this.opts.fileHwm,headers:Wt,highWaterMark:this.opts.highWaterMark,isPartAFile:this.opts.isPartAFile,limits:this.opts.limits,parsedConType:Pt,preservePath:this.opts.preservePath};if(rn.detect.test(Pt[0])){return new rn(this,en)}if(In.detect.test(Pt[0])){return new In(this,en)}throw new Error("Unsupported Content-Type.")};Busboy.prototype._write=function(Wt,Pt,en){this._parser.write(Wt,en)};Wt.exports=Busboy;Wt.exports["default"]=Busboy;Wt.exports.Busboy=Busboy;Wt.exports.Dicer=an},41192:(Wt,Pt,en)=>{"use strict";const{Readable:tn}=en(57075);const{inherits:nn}=en(57975);const an=en(27182);const rn=en(8929);const In=en(72747);const sn=en(20692);const on=en(22393);const cn=/^boundary$/i;const dn=/^form-data$/i;const un=/^charset$/i;const pn=/^filename$/i;const mn=/^name$/i;Multipart.detect=/^multipart\/form-data/i;function Multipart(Wt,Pt){let en;let tn;const nn=this;let bn;const Gn=Pt.limits;const hn=Pt.isPartAFile||((Wt,Pt,en)=>Pt==="application/octet-stream"||en!==undefined);const Zn=Pt.parsedConType||[];const An=Pt.defCharset||"utf8";const Wn=Pt.preservePath;const Nn={highWaterMark:Pt.fileHwm};for(en=0,tn=Zn.length;enEn){nn.parser.removeListener("part",onPart);nn.parser.on("part",skipPart);Wt.hitPartsLimit=true;Wt.emit("partsLimit");return skipPart(Pt)}if(Hn){const Wt=Hn;Wt.emit("end");Wt.removeAllListeners("end")}Pt.on("header",(function(an){let on;let cn;let bn;let Gn;let Zn;let En;let Vn=0;if(an["content-type"]){bn=rn(an["content-type"][0]);if(bn[0]){on=bn[0].toLowerCase();for(en=0,tn=bn.length;enyn){const tn=yn-Vn+Wt.length;if(tn>0){en.push(Wt.slice(0,tn))}en.truncated=true;en.bytesRead=yn;Pt.removeAllListeners("data");en.emit("limit");return}else if(!en.push(Wt)){nn._pause=true}en.bytesRead=Vn};Cn=function(){fn=undefined;en.push(null)}}else{if(Fn===Yn){if(!Wt.hitFieldsLimit){Wt.hitFieldsLimit=true;Wt.emit("fieldsLimit")}return skipPart(Pt)}++Fn;++Qn;let en="";let tn=false;Hn=Pt;Rn=function(Wt){if((Vn+=Wt.length)>gn){const nn=gn-(Vn-Wt.length);en+=Wt.toString("binary",0,nn);tn=true;Pt.removeAllListeners("data")}else{en+=Wt.toString("binary")}};Cn=function(){Hn=undefined;if(en.length){en=In(en,"binary",Gn)}Wt.emit("field",cn,en,false,tn,Zn,on);--Qn;checkFinished()}}Pt._readableState.sync=false;Pt.on("data",Rn);Pt.on("end",Cn)})).on("error",(function(Wt){if(fn){fn.emit("error",Wt)}}))})).on("error",(function(Pt){Wt.emit("error",Pt)})).on("finish",(function(){Cn=true;checkFinished()}))}Multipart.prototype.write=function(Wt,Pt){const en=this.parser.write(Wt);if(en&&!this._pause){Pt()}else{this._needDrain=!en;this._cb=Pt}};Multipart.prototype.end=function(){const Wt=this;if(Wt.parser.writable){Wt.parser.end()}else if(!Wt._boy._done){process.nextTick((function(){Wt._boy._done=true;Wt._boy.emit("finish")}))}};function skipPart(Wt){Wt.resume()}function FileStream(Wt){tn.call(this,Wt);this.bytesRead=0;this.truncated=false}nn(FileStream,tn);FileStream.prototype._read=function(Wt){};Wt.exports=Multipart},80855:(Wt,Pt,en)=>{"use strict";const tn=en(11496);const nn=en(72747);const an=en(22393);const rn=/^charset$/i;UrlEncoded.detect=/^application\/x-www-form-urlencoded/i;function UrlEncoded(Wt,Pt){const en=Pt.limits;const nn=Pt.parsedConType;this.boy=Wt;this.fieldSizeLimit=an(en,"fieldSize",1*1024*1024);this.fieldNameSizeLimit=an(en,"fieldNameSize",100);this.fieldsLimit=an(en,"fields",Infinity);let In;for(var sn=0,on=nn.length;snrn){this._key+=this.decoder.write(Wt.toString("binary",rn,en))}this._state="val";this._hitLimit=false;this._checkingBytes=true;this._val="";this._bytesVal=0;this._valTrunc=false;this.decoder.reset();rn=en+1}else if(tn!==undefined){++this._fields;let en;const an=this._keyTrunc;if(tn>rn){en=this._key+=this.decoder.write(Wt.toString("binary",rn,tn))}else{en=this._key}this._hitLimit=false;this._checkingBytes=true;this._key="";this._bytesKey=0;this._keyTrunc=false;this.decoder.reset();if(en.length){this.boy.emit("field",nn(en,"binary",this.charset),"",an,false)}rn=tn+1;if(this._fields===this.fieldsLimit){return Pt()}}else if(this._hitLimit){if(an>rn){this._key+=this.decoder.write(Wt.toString("binary",rn,an))}rn=an;if((this._bytesKey=this._key.length)===this.fieldNameSizeLimit){this._checkingBytes=false;this._keyTrunc=true}}else{if(rnrn){this._val+=this.decoder.write(Wt.toString("binary",rn,tn))}this.boy.emit("field",nn(this._key,"binary",this.charset),nn(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc);this._state="key";this._hitLimit=false;this._checkingBytes=true;this._key="";this._bytesKey=0;this._keyTrunc=false;this.decoder.reset();rn=tn+1;if(this._fields===this.fieldsLimit){return Pt()}}else if(this._hitLimit){if(an>rn){this._val+=this.decoder.write(Wt.toString("binary",rn,an))}rn=an;if(this._val===""&&this.fieldSizeLimit===0||(this._bytesVal=this._val.length)===this.fieldSizeLimit){this._checkingBytes=false;this._valTrunc=true}}else{if(rn0){this.boy.emit("field",nn(this._key,"binary",this.charset),"",this._keyTrunc,false)}else if(this._state==="val"){this.boy.emit("field",nn(this._key,"binary",this.charset),nn(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc)}this.boy._done=true;this.boy.emit("finish")};Wt.exports=UrlEncoded},11496:Wt=>{"use strict";const Pt=/\+/g;const en=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];function Decoder(){this.buffer=undefined}Decoder.prototype.write=function(Wt){Wt=Wt.replace(Pt," ");let tn="";let nn=0;let an=0;const rn=Wt.length;for(;nnan){tn+=Wt.substring(an,nn);an=nn}this.buffer="";++an}}if(an{"use strict";Wt.exports=function basename(Wt){if(typeof Wt!=="string"){return""}for(var Pt=Wt.length-1;Pt>=0;--Pt){switch(Wt.charCodeAt(Pt)){case 47:case 92:Wt=Wt.slice(Pt+1);return Wt===".."||Wt==="."?"":Wt}}return Wt===".."||Wt==="."?"":Wt}},72747:function(Wt){"use strict";const Pt=new TextDecoder("utf-8");const en=new Map([["utf-8",Pt],["utf8",Pt]]);function getDecoder(Wt){let Pt;while(true){switch(Wt){case"utf-8":case"utf8":return tn.utf8;case"latin1":case"ascii":case"us-ascii":case"iso-8859-1":case"iso8859-1":case"iso88591":case"iso_8859-1":case"windows-1252":case"iso_8859-1:1987":case"cp1252":case"x-cp1252":return tn.latin1;case"utf16le":case"utf-16le":case"ucs2":case"ucs-2":return tn.utf16le;case"base64":return tn.base64;default:if(Pt===undefined){Pt=true;Wt=Wt.toLowerCase();continue}return tn.other.bind(Wt)}}}const tn={utf8:(Wt,Pt)=>{if(Wt.length===0){return""}if(typeof Wt==="string"){Wt=Buffer.from(Wt,Pt)}return Wt.utf8Slice(0,Wt.length)},latin1:(Wt,Pt)=>{if(Wt.length===0){return""}if(typeof Wt==="string"){return Wt}return Wt.latin1Slice(0,Wt.length)},utf16le:(Wt,Pt)=>{if(Wt.length===0){return""}if(typeof Wt==="string"){Wt=Buffer.from(Wt,Pt)}return Wt.ucs2Slice(0,Wt.length)},base64:(Wt,Pt)=>{if(Wt.length===0){return""}if(typeof Wt==="string"){Wt=Buffer.from(Wt,Pt)}return Wt.base64Slice(0,Wt.length)},other:(Wt,Pt)=>{if(Wt.length===0){return""}if(typeof Wt==="string"){Wt=Buffer.from(Wt,Pt)}if(en.has(this.toString())){try{return en.get(this).decode(Wt)}catch{}}return typeof Wt==="string"?Wt:Wt.toString()}};function decodeText(Wt,Pt,en){if(Wt){return getDecoder(en)(Wt,Pt)}return Wt}Wt.exports=decodeText},22393:Wt=>{"use strict";Wt.exports=function getLimit(Wt,Pt,en){if(!Wt||Wt[Pt]===undefined||Wt[Pt]===null){return en}if(typeof Wt[Pt]!=="number"||isNaN(Wt[Pt])){throw new TypeError("Limit "+Pt+" is not a valid number")}return Wt[Pt]}},8929:(Wt,Pt,en)=>{"use strict";const tn=en(72747);const nn=/%[a-fA-F0-9][a-fA-F0-9]/g;const an={"%00":"\0","%01":"","%02":"","%03":"","%04":"","%05":"","%06":"","%07":"","%08":"\b","%09":"\t","%0a":"\n","%0A":"\n","%0b":"\v","%0B":"\v","%0c":"\f","%0C":"\f","%0d":"\r","%0D":"\r","%0e":"","%0E":"","%0f":"","%0F":"","%10":"","%11":"","%12":"","%13":"","%14":"","%15":"","%16":"","%17":"","%18":"","%19":"","%1a":"","%1A":"","%1b":"","%1B":"","%1c":"","%1C":"","%1d":"","%1D":"","%1e":"","%1E":"","%1f":"","%1F":"","%20":" ","%21":"!","%22":'"',"%23":"#","%24":"$","%25":"%","%26":"&","%27":"'","%28":"(","%29":")","%2a":"*","%2A":"*","%2b":"+","%2B":"+","%2c":",","%2C":",","%2d":"-","%2D":"-","%2e":".","%2E":".","%2f":"/","%2F":"/","%30":"0","%31":"1","%32":"2","%33":"3","%34":"4","%35":"5","%36":"6","%37":"7","%38":"8","%39":"9","%3a":":","%3A":":","%3b":";","%3B":";","%3c":"<","%3C":"<","%3d":"=","%3D":"=","%3e":">","%3E":">","%3f":"?","%3F":"?","%40":"@","%41":"A","%42":"B","%43":"C","%44":"D","%45":"E","%46":"F","%47":"G","%48":"H","%49":"I","%4a":"J","%4A":"J","%4b":"K","%4B":"K","%4c":"L","%4C":"L","%4d":"M","%4D":"M","%4e":"N","%4E":"N","%4f":"O","%4F":"O","%50":"P","%51":"Q","%52":"R","%53":"S","%54":"T","%55":"U","%56":"V","%57":"W","%58":"X","%59":"Y","%5a":"Z","%5A":"Z","%5b":"[","%5B":"[","%5c":"\\","%5C":"\\","%5d":"]","%5D":"]","%5e":"^","%5E":"^","%5f":"_","%5F":"_","%60":"`","%61":"a","%62":"b","%63":"c","%64":"d","%65":"e","%66":"f","%67":"g","%68":"h","%69":"i","%6a":"j","%6A":"j","%6b":"k","%6B":"k","%6c":"l","%6C":"l","%6d":"m","%6D":"m","%6e":"n","%6E":"n","%6f":"o","%6F":"o","%70":"p","%71":"q","%72":"r","%73":"s","%74":"t","%75":"u","%76":"v","%77":"w","%78":"x","%79":"y","%7a":"z","%7A":"z","%7b":"{","%7B":"{","%7c":"|","%7C":"|","%7d":"}","%7D":"}","%7e":"~","%7E":"~","%7f":"","%7F":"","%80":"€","%81":"","%82":"‚","%83":"ƒ","%84":"„","%85":"…","%86":"†","%87":"‡","%88":"ˆ","%89":"‰","%8a":"Š","%8A":"Š","%8b":"‹","%8B":"‹","%8c":"Œ","%8C":"Œ","%8d":"","%8D":"","%8e":"Ž","%8E":"Ž","%8f":"","%8F":"","%90":"","%91":"‘","%92":"’","%93":"“","%94":"”","%95":"•","%96":"–","%97":"—","%98":"˜","%99":"™","%9a":"š","%9A":"š","%9b":"›","%9B":"›","%9c":"œ","%9C":"œ","%9d":"","%9D":"","%9e":"ž","%9E":"ž","%9f":"Ÿ","%9F":"Ÿ","%a0":" ","%A0":" ","%a1":"¡","%A1":"¡","%a2":"¢","%A2":"¢","%a3":"£","%A3":"£","%a4":"¤","%A4":"¤","%a5":"¥","%A5":"¥","%a6":"¦","%A6":"¦","%a7":"§","%A7":"§","%a8":"¨","%A8":"¨","%a9":"©","%A9":"©","%aa":"ª","%Aa":"ª","%aA":"ª","%AA":"ª","%ab":"«","%Ab":"«","%aB":"«","%AB":"«","%ac":"¬","%Ac":"¬","%aC":"¬","%AC":"¬","%ad":"­","%Ad":"­","%aD":"­","%AD":"­","%ae":"®","%Ae":"®","%aE":"®","%AE":"®","%af":"¯","%Af":"¯","%aF":"¯","%AF":"¯","%b0":"°","%B0":"°","%b1":"±","%B1":"±","%b2":"²","%B2":"²","%b3":"³","%B3":"³","%b4":"´","%B4":"´","%b5":"µ","%B5":"µ","%b6":"¶","%B6":"¶","%b7":"·","%B7":"·","%b8":"¸","%B8":"¸","%b9":"¹","%B9":"¹","%ba":"º","%Ba":"º","%bA":"º","%BA":"º","%bb":"»","%Bb":"»","%bB":"»","%BB":"»","%bc":"¼","%Bc":"¼","%bC":"¼","%BC":"¼","%bd":"½","%Bd":"½","%bD":"½","%BD":"½","%be":"¾","%Be":"¾","%bE":"¾","%BE":"¾","%bf":"¿","%Bf":"¿","%bF":"¿","%BF":"¿","%c0":"À","%C0":"À","%c1":"Á","%C1":"Á","%c2":"Â","%C2":"Â","%c3":"Ã","%C3":"Ã","%c4":"Ä","%C4":"Ä","%c5":"Å","%C5":"Å","%c6":"Æ","%C6":"Æ","%c7":"Ç","%C7":"Ç","%c8":"È","%C8":"È","%c9":"É","%C9":"É","%ca":"Ê","%Ca":"Ê","%cA":"Ê","%CA":"Ê","%cb":"Ë","%Cb":"Ë","%cB":"Ë","%CB":"Ë","%cc":"Ì","%Cc":"Ì","%cC":"Ì","%CC":"Ì","%cd":"Í","%Cd":"Í","%cD":"Í","%CD":"Í","%ce":"Î","%Ce":"Î","%cE":"Î","%CE":"Î","%cf":"Ï","%Cf":"Ï","%cF":"Ï","%CF":"Ï","%d0":"Ð","%D0":"Ð","%d1":"Ñ","%D1":"Ñ","%d2":"Ò","%D2":"Ò","%d3":"Ó","%D3":"Ó","%d4":"Ô","%D4":"Ô","%d5":"Õ","%D5":"Õ","%d6":"Ö","%D6":"Ö","%d7":"×","%D7":"×","%d8":"Ø","%D8":"Ø","%d9":"Ù","%D9":"Ù","%da":"Ú","%Da":"Ú","%dA":"Ú","%DA":"Ú","%db":"Û","%Db":"Û","%dB":"Û","%DB":"Û","%dc":"Ü","%Dc":"Ü","%dC":"Ü","%DC":"Ü","%dd":"Ý","%Dd":"Ý","%dD":"Ý","%DD":"Ý","%de":"Þ","%De":"Þ","%dE":"Þ","%DE":"Þ","%df":"ß","%Df":"ß","%dF":"ß","%DF":"ß","%e0":"à","%E0":"à","%e1":"á","%E1":"á","%e2":"â","%E2":"â","%e3":"ã","%E3":"ã","%e4":"ä","%E4":"ä","%e5":"å","%E5":"å","%e6":"æ","%E6":"æ","%e7":"ç","%E7":"ç","%e8":"è","%E8":"è","%e9":"é","%E9":"é","%ea":"ê","%Ea":"ê","%eA":"ê","%EA":"ê","%eb":"ë","%Eb":"ë","%eB":"ë","%EB":"ë","%ec":"ì","%Ec":"ì","%eC":"ì","%EC":"ì","%ed":"í","%Ed":"í","%eD":"í","%ED":"í","%ee":"î","%Ee":"î","%eE":"î","%EE":"î","%ef":"ï","%Ef":"ï","%eF":"ï","%EF":"ï","%f0":"ð","%F0":"ð","%f1":"ñ","%F1":"ñ","%f2":"ò","%F2":"ò","%f3":"ó","%F3":"ó","%f4":"ô","%F4":"ô","%f5":"õ","%F5":"õ","%f6":"ö","%F6":"ö","%f7":"÷","%F7":"÷","%f8":"ø","%F8":"ø","%f9":"ù","%F9":"ù","%fa":"ú","%Fa":"ú","%fA":"ú","%FA":"ú","%fb":"û","%Fb":"û","%fB":"û","%FB":"û","%fc":"ü","%Fc":"ü","%fC":"ü","%FC":"ü","%fd":"ý","%Fd":"ý","%fD":"ý","%FD":"ý","%fe":"þ","%Fe":"þ","%fE":"þ","%FE":"þ","%ff":"ÿ","%Ff":"ÿ","%fF":"ÿ","%FF":"ÿ"};function encodedReplacer(Wt){return an[Wt]}const rn=0;const In=1;const sn=2;const on=3;function parseParams(Wt){const Pt=[];let en=rn;let an="";let cn=false;let dn=false;let un=0;let pn="";const mn=Wt.length;for(var bn=0;bn{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.getDocumentMode=Pt.isConforming=void 0;const tn=en(81510);const nn="html";const an="about:legacy-compat";const rn="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd";const In=["+//silmaril//dtd html pro v0r11 19970101//","-//as//dtd html 3.0 aswedit + extensions//","-//advasoft ltd//dtd html 3.0 aswedit + extensions//","-//ietf//dtd html 2.0 level 1//","-//ietf//dtd html 2.0 level 2//","-//ietf//dtd html 2.0 strict level 1//","-//ietf//dtd html 2.0 strict level 2//","-//ietf//dtd html 2.0 strict//","-//ietf//dtd html 2.0//","-//ietf//dtd html 2.1e//","-//ietf//dtd html 3.0//","-//ietf//dtd html 3.2 final//","-//ietf//dtd html 3.2//","-//ietf//dtd html 3//","-//ietf//dtd html level 0//","-//ietf//dtd html level 1//","-//ietf//dtd html level 2//","-//ietf//dtd html level 3//","-//ietf//dtd html strict level 0//","-//ietf//dtd html strict level 1//","-//ietf//dtd html strict level 2//","-//ietf//dtd html strict level 3//","-//ietf//dtd html strict//","-//ietf//dtd html//","-//metrius//dtd metrius presentational//","-//microsoft//dtd internet explorer 2.0 html strict//","-//microsoft//dtd internet explorer 2.0 html//","-//microsoft//dtd internet explorer 2.0 tables//","-//microsoft//dtd internet explorer 3.0 html strict//","-//microsoft//dtd internet explorer 3.0 html//","-//microsoft//dtd internet explorer 3.0 tables//","-//netscape comm. corp.//dtd html//","-//netscape comm. corp.//dtd strict html//","-//o'reilly and associates//dtd html 2.0//","-//o'reilly and associates//dtd html extended 1.0//","-//o'reilly and associates//dtd html extended relaxed 1.0//","-//sq//dtd html 2.0 hotmetal + extensions//","-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//","-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//","-//spyglass//dtd html 2.0 extended//","-//sun microsystems corp.//dtd hotjava html//","-//sun microsystems corp.//dtd hotjava strict html//","-//w3c//dtd html 3 1995-03-24//","-//w3c//dtd html 3.2 draft//","-//w3c//dtd html 3.2 final//","-//w3c//dtd html 3.2//","-//w3c//dtd html 3.2s draft//","-//w3c//dtd html 4.0 frameset//","-//w3c//dtd html 4.0 transitional//","-//w3c//dtd html experimental 19960712//","-//w3c//dtd html experimental 970421//","-//w3c//dtd w3 html//","-//w3o//dtd w3 html 3.0//","-//webtechs//dtd mozilla html 2.0//","-//webtechs//dtd mozilla html//"];const sn=[...In,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"];const on=new Set(["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"]);const cn=["-//w3c//dtd xhtml 1.0 frameset//","-//w3c//dtd xhtml 1.0 transitional//"];const dn=[...cn,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"];function hasPrefix(Wt,Pt){return Pt.some((Pt=>Wt.startsWith(Pt)))}function isConforming(Wt){return Wt.name===nn&&Wt.publicId===null&&(Wt.systemId===null||Wt.systemId===an)}Pt.isConforming=isConforming;function getDocumentMode(Wt){if(Wt.name!==nn){return tn.DOCUMENT_MODE.QUIRKS}const{systemId:Pt}=Wt;if(Pt&&Pt.toLowerCase()===rn){return tn.DOCUMENT_MODE.QUIRKS}let{publicId:en}=Wt;if(en!==null){en=en.toLowerCase();if(on.has(en)){return tn.DOCUMENT_MODE.QUIRKS}let Wt=Pt===null?sn:In;if(hasPrefix(en,Wt)){return tn.DOCUMENT_MODE.QUIRKS}Wt=Pt===null?cn:dn;if(hasPrefix(en,Wt)){return tn.DOCUMENT_MODE.LIMITED_QUIRKS}}return tn.DOCUMENT_MODE.NO_QUIRKS}Pt.getDocumentMode=getDocumentMode},69322:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.ERR=void 0;var en;(function(Wt){Wt["controlCharacterInInputStream"]="control-character-in-input-stream";Wt["noncharacterInInputStream"]="noncharacter-in-input-stream";Wt["surrogateInInputStream"]="surrogate-in-input-stream";Wt["nonVoidHtmlElementStartTagWithTrailingSolidus"]="non-void-html-element-start-tag-with-trailing-solidus";Wt["endTagWithAttributes"]="end-tag-with-attributes";Wt["endTagWithTrailingSolidus"]="end-tag-with-trailing-solidus";Wt["unexpectedSolidusInTag"]="unexpected-solidus-in-tag";Wt["unexpectedNullCharacter"]="unexpected-null-character";Wt["unexpectedQuestionMarkInsteadOfTagName"]="unexpected-question-mark-instead-of-tag-name";Wt["invalidFirstCharacterOfTagName"]="invalid-first-character-of-tag-name";Wt["unexpectedEqualsSignBeforeAttributeName"]="unexpected-equals-sign-before-attribute-name";Wt["missingEndTagName"]="missing-end-tag-name";Wt["unexpectedCharacterInAttributeName"]="unexpected-character-in-attribute-name";Wt["unknownNamedCharacterReference"]="unknown-named-character-reference";Wt["missingSemicolonAfterCharacterReference"]="missing-semicolon-after-character-reference";Wt["unexpectedCharacterAfterDoctypeSystemIdentifier"]="unexpected-character-after-doctype-system-identifier";Wt["unexpectedCharacterInUnquotedAttributeValue"]="unexpected-character-in-unquoted-attribute-value";Wt["eofBeforeTagName"]="eof-before-tag-name";Wt["eofInTag"]="eof-in-tag";Wt["missingAttributeValue"]="missing-attribute-value";Wt["missingWhitespaceBetweenAttributes"]="missing-whitespace-between-attributes";Wt["missingWhitespaceAfterDoctypePublicKeyword"]="missing-whitespace-after-doctype-public-keyword";Wt["missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers"]="missing-whitespace-between-doctype-public-and-system-identifiers";Wt["missingWhitespaceAfterDoctypeSystemKeyword"]="missing-whitespace-after-doctype-system-keyword";Wt["missingQuoteBeforeDoctypePublicIdentifier"]="missing-quote-before-doctype-public-identifier";Wt["missingQuoteBeforeDoctypeSystemIdentifier"]="missing-quote-before-doctype-system-identifier";Wt["missingDoctypePublicIdentifier"]="missing-doctype-public-identifier";Wt["missingDoctypeSystemIdentifier"]="missing-doctype-system-identifier";Wt["abruptDoctypePublicIdentifier"]="abrupt-doctype-public-identifier";Wt["abruptDoctypeSystemIdentifier"]="abrupt-doctype-system-identifier";Wt["cdataInHtmlContent"]="cdata-in-html-content";Wt["incorrectlyOpenedComment"]="incorrectly-opened-comment";Wt["eofInScriptHtmlCommentLikeText"]="eof-in-script-html-comment-like-text";Wt["eofInDoctype"]="eof-in-doctype";Wt["nestedComment"]="nested-comment";Wt["abruptClosingOfEmptyComment"]="abrupt-closing-of-empty-comment";Wt["eofInComment"]="eof-in-comment";Wt["incorrectlyClosedComment"]="incorrectly-closed-comment";Wt["eofInCdata"]="eof-in-cdata";Wt["absenceOfDigitsInNumericCharacterReference"]="absence-of-digits-in-numeric-character-reference";Wt["nullCharacterReference"]="null-character-reference";Wt["surrogateCharacterReference"]="surrogate-character-reference";Wt["characterReferenceOutsideUnicodeRange"]="character-reference-outside-unicode-range";Wt["controlCharacterReference"]="control-character-reference";Wt["noncharacterCharacterReference"]="noncharacter-character-reference";Wt["missingWhitespaceBeforeDoctypeName"]="missing-whitespace-before-doctype-name";Wt["missingDoctypeName"]="missing-doctype-name";Wt["invalidCharacterSequenceAfterDoctypeName"]="invalid-character-sequence-after-doctype-name";Wt["duplicateAttribute"]="duplicate-attribute";Wt["nonConformingDoctype"]="non-conforming-doctype";Wt["missingDoctype"]="missing-doctype";Wt["misplacedDoctype"]="misplaced-doctype";Wt["endTagWithoutMatchingOpenElement"]="end-tag-without-matching-open-element";Wt["closingOfElementWithOpenChildElements"]="closing-of-element-with-open-child-elements";Wt["disallowedContentInNoscriptInHead"]="disallowed-content-in-noscript-in-head";Wt["openElementsLeftAfterEof"]="open-elements-left-after-eof";Wt["abandonedHeadElementChild"]="abandoned-head-element-child";Wt["misplacedStartTagForHeadElement"]="misplaced-start-tag-for-head-element";Wt["nestedNoscriptInHead"]="nested-noscript-in-head";Wt["eofInElementThatCanContainOnlyText"]="eof-in-element-that-can-contain-only-text"})(en=Pt.ERR||(Pt.ERR={}))},79319:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.isIntegrationPoint=Pt.adjustTokenSVGTagName=Pt.adjustTokenXMLAttrs=Pt.adjustTokenSVGAttrs=Pt.adjustTokenMathMLAttrs=Pt.causesExit=Pt.SVG_TAG_NAMES_ADJUSTMENT_MAP=void 0;const tn=en(81510);const nn={TEXT_HTML:"text/html",APPLICATION_XML:"application/xhtml+xml"};const an="definitionurl";const rn="definitionURL";const In=new Map(["attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map((Wt=>[Wt.toLowerCase(),Wt])));const sn=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:tn.NS.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:tn.NS.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:tn.NS.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:tn.NS.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:tn.NS.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:tn.NS.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:tn.NS.XLINK}],["xml:base",{prefix:"xml",name:"base",namespace:tn.NS.XML}],["xml:lang",{prefix:"xml",name:"lang",namespace:tn.NS.XML}],["xml:space",{prefix:"xml",name:"space",namespace:tn.NS.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:tn.NS.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:tn.NS.XMLNS}]]);Pt.SVG_TAG_NAMES_ADJUSTMENT_MAP=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map((Wt=>[Wt.toLowerCase(),Wt])));const on=new Set([tn.TAG_ID.B,tn.TAG_ID.BIG,tn.TAG_ID.BLOCKQUOTE,tn.TAG_ID.BODY,tn.TAG_ID.BR,tn.TAG_ID.CENTER,tn.TAG_ID.CODE,tn.TAG_ID.DD,tn.TAG_ID.DIV,tn.TAG_ID.DL,tn.TAG_ID.DT,tn.TAG_ID.EM,tn.TAG_ID.EMBED,tn.TAG_ID.H1,tn.TAG_ID.H2,tn.TAG_ID.H3,tn.TAG_ID.H4,tn.TAG_ID.H5,tn.TAG_ID.H6,tn.TAG_ID.HEAD,tn.TAG_ID.HR,tn.TAG_ID.I,tn.TAG_ID.IMG,tn.TAG_ID.LI,tn.TAG_ID.LISTING,tn.TAG_ID.MENU,tn.TAG_ID.META,tn.TAG_ID.NOBR,tn.TAG_ID.OL,tn.TAG_ID.P,tn.TAG_ID.PRE,tn.TAG_ID.RUBY,tn.TAG_ID.S,tn.TAG_ID.SMALL,tn.TAG_ID.SPAN,tn.TAG_ID.STRONG,tn.TAG_ID.STRIKE,tn.TAG_ID.SUB,tn.TAG_ID.SUP,tn.TAG_ID.TABLE,tn.TAG_ID.TT,tn.TAG_ID.U,tn.TAG_ID.UL,tn.TAG_ID.VAR]);function causesExit(Wt){const Pt=Wt.tagID;const en=Pt===tn.TAG_ID.FONT&&Wt.attrs.some((({name:Wt})=>Wt===tn.ATTRS.COLOR||Wt===tn.ATTRS.SIZE||Wt===tn.ATTRS.FACE));return en||on.has(Pt)}Pt.causesExit=causesExit;function adjustTokenMathMLAttrs(Wt){for(let Pt=0;Pt{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.hasUnescapedText=Pt.isNumberedHeader=Pt.SPECIAL_ELEMENTS=Pt.getTagID=Pt.TAG_ID=Pt.TAG_NAMES=Pt.DOCUMENT_MODE=Pt.ATTRS=Pt.NS=void 0;var en;(function(Wt){Wt["HTML"]="http://www.w3.org/1999/xhtml";Wt["MATHML"]="http://www.w3.org/1998/Math/MathML";Wt["SVG"]="http://www.w3.org/2000/svg";Wt["XLINK"]="http://www.w3.org/1999/xlink";Wt["XML"]="http://www.w3.org/XML/1998/namespace";Wt["XMLNS"]="http://www.w3.org/2000/xmlns/"})(en=Pt.NS||(Pt.NS={}));var tn;(function(Wt){Wt["TYPE"]="type";Wt["ACTION"]="action";Wt["ENCODING"]="encoding";Wt["PROMPT"]="prompt";Wt["NAME"]="name";Wt["COLOR"]="color";Wt["FACE"]="face";Wt["SIZE"]="size"})(tn=Pt.ATTRS||(Pt.ATTRS={}));var nn;(function(Wt){Wt["NO_QUIRKS"]="no-quirks";Wt["QUIRKS"]="quirks";Wt["LIMITED_QUIRKS"]="limited-quirks"})(nn=Pt.DOCUMENT_MODE||(Pt.DOCUMENT_MODE={}));var an;(function(Wt){Wt["A"]="a";Wt["ADDRESS"]="address";Wt["ANNOTATION_XML"]="annotation-xml";Wt["APPLET"]="applet";Wt["AREA"]="area";Wt["ARTICLE"]="article";Wt["ASIDE"]="aside";Wt["B"]="b";Wt["BASE"]="base";Wt["BASEFONT"]="basefont";Wt["BGSOUND"]="bgsound";Wt["BIG"]="big";Wt["BLOCKQUOTE"]="blockquote";Wt["BODY"]="body";Wt["BR"]="br";Wt["BUTTON"]="button";Wt["CAPTION"]="caption";Wt["CENTER"]="center";Wt["CODE"]="code";Wt["COL"]="col";Wt["COLGROUP"]="colgroup";Wt["DD"]="dd";Wt["DESC"]="desc";Wt["DETAILS"]="details";Wt["DIALOG"]="dialog";Wt["DIR"]="dir";Wt["DIV"]="div";Wt["DL"]="dl";Wt["DT"]="dt";Wt["EM"]="em";Wt["EMBED"]="embed";Wt["FIELDSET"]="fieldset";Wt["FIGCAPTION"]="figcaption";Wt["FIGURE"]="figure";Wt["FONT"]="font";Wt["FOOTER"]="footer";Wt["FOREIGN_OBJECT"]="foreignObject";Wt["FORM"]="form";Wt["FRAME"]="frame";Wt["FRAMESET"]="frameset";Wt["H1"]="h1";Wt["H2"]="h2";Wt["H3"]="h3";Wt["H4"]="h4";Wt["H5"]="h5";Wt["H6"]="h6";Wt["HEAD"]="head";Wt["HEADER"]="header";Wt["HGROUP"]="hgroup";Wt["HR"]="hr";Wt["HTML"]="html";Wt["I"]="i";Wt["IMG"]="img";Wt["IMAGE"]="image";Wt["INPUT"]="input";Wt["IFRAME"]="iframe";Wt["KEYGEN"]="keygen";Wt["LABEL"]="label";Wt["LI"]="li";Wt["LINK"]="link";Wt["LISTING"]="listing";Wt["MAIN"]="main";Wt["MALIGNMARK"]="malignmark";Wt["MARQUEE"]="marquee";Wt["MATH"]="math";Wt["MENU"]="menu";Wt["META"]="meta";Wt["MGLYPH"]="mglyph";Wt["MI"]="mi";Wt["MO"]="mo";Wt["MN"]="mn";Wt["MS"]="ms";Wt["MTEXT"]="mtext";Wt["NAV"]="nav";Wt["NOBR"]="nobr";Wt["NOFRAMES"]="noframes";Wt["NOEMBED"]="noembed";Wt["NOSCRIPT"]="noscript";Wt["OBJECT"]="object";Wt["OL"]="ol";Wt["OPTGROUP"]="optgroup";Wt["OPTION"]="option";Wt["P"]="p";Wt["PARAM"]="param";Wt["PLAINTEXT"]="plaintext";Wt["PRE"]="pre";Wt["RB"]="rb";Wt["RP"]="rp";Wt["RT"]="rt";Wt["RTC"]="rtc";Wt["RUBY"]="ruby";Wt["S"]="s";Wt["SCRIPT"]="script";Wt["SECTION"]="section";Wt["SELECT"]="select";Wt["SOURCE"]="source";Wt["SMALL"]="small";Wt["SPAN"]="span";Wt["STRIKE"]="strike";Wt["STRONG"]="strong";Wt["STYLE"]="style";Wt["SUB"]="sub";Wt["SUMMARY"]="summary";Wt["SUP"]="sup";Wt["TABLE"]="table";Wt["TBODY"]="tbody";Wt["TEMPLATE"]="template";Wt["TEXTAREA"]="textarea";Wt["TFOOT"]="tfoot";Wt["TD"]="td";Wt["TH"]="th";Wt["THEAD"]="thead";Wt["TITLE"]="title";Wt["TR"]="tr";Wt["TRACK"]="track";Wt["TT"]="tt";Wt["U"]="u";Wt["UL"]="ul";Wt["SVG"]="svg";Wt["VAR"]="var";Wt["WBR"]="wbr";Wt["XMP"]="xmp"})(an=Pt.TAG_NAMES||(Pt.TAG_NAMES={}));var rn;(function(Wt){Wt[Wt["UNKNOWN"]=0]="UNKNOWN";Wt[Wt["A"]=1]="A";Wt[Wt["ADDRESS"]=2]="ADDRESS";Wt[Wt["ANNOTATION_XML"]=3]="ANNOTATION_XML";Wt[Wt["APPLET"]=4]="APPLET";Wt[Wt["AREA"]=5]="AREA";Wt[Wt["ARTICLE"]=6]="ARTICLE";Wt[Wt["ASIDE"]=7]="ASIDE";Wt[Wt["B"]=8]="B";Wt[Wt["BASE"]=9]="BASE";Wt[Wt["BASEFONT"]=10]="BASEFONT";Wt[Wt["BGSOUND"]=11]="BGSOUND";Wt[Wt["BIG"]=12]="BIG";Wt[Wt["BLOCKQUOTE"]=13]="BLOCKQUOTE";Wt[Wt["BODY"]=14]="BODY";Wt[Wt["BR"]=15]="BR";Wt[Wt["BUTTON"]=16]="BUTTON";Wt[Wt["CAPTION"]=17]="CAPTION";Wt[Wt["CENTER"]=18]="CENTER";Wt[Wt["CODE"]=19]="CODE";Wt[Wt["COL"]=20]="COL";Wt[Wt["COLGROUP"]=21]="COLGROUP";Wt[Wt["DD"]=22]="DD";Wt[Wt["DESC"]=23]="DESC";Wt[Wt["DETAILS"]=24]="DETAILS";Wt[Wt["DIALOG"]=25]="DIALOG";Wt[Wt["DIR"]=26]="DIR";Wt[Wt["DIV"]=27]="DIV";Wt[Wt["DL"]=28]="DL";Wt[Wt["DT"]=29]="DT";Wt[Wt["EM"]=30]="EM";Wt[Wt["EMBED"]=31]="EMBED";Wt[Wt["FIELDSET"]=32]="FIELDSET";Wt[Wt["FIGCAPTION"]=33]="FIGCAPTION";Wt[Wt["FIGURE"]=34]="FIGURE";Wt[Wt["FONT"]=35]="FONT";Wt[Wt["FOOTER"]=36]="FOOTER";Wt[Wt["FOREIGN_OBJECT"]=37]="FOREIGN_OBJECT";Wt[Wt["FORM"]=38]="FORM";Wt[Wt["FRAME"]=39]="FRAME";Wt[Wt["FRAMESET"]=40]="FRAMESET";Wt[Wt["H1"]=41]="H1";Wt[Wt["H2"]=42]="H2";Wt[Wt["H3"]=43]="H3";Wt[Wt["H4"]=44]="H4";Wt[Wt["H5"]=45]="H5";Wt[Wt["H6"]=46]="H6";Wt[Wt["HEAD"]=47]="HEAD";Wt[Wt["HEADER"]=48]="HEADER";Wt[Wt["HGROUP"]=49]="HGROUP";Wt[Wt["HR"]=50]="HR";Wt[Wt["HTML"]=51]="HTML";Wt[Wt["I"]=52]="I";Wt[Wt["IMG"]=53]="IMG";Wt[Wt["IMAGE"]=54]="IMAGE";Wt[Wt["INPUT"]=55]="INPUT";Wt[Wt["IFRAME"]=56]="IFRAME";Wt[Wt["KEYGEN"]=57]="KEYGEN";Wt[Wt["LABEL"]=58]="LABEL";Wt[Wt["LI"]=59]="LI";Wt[Wt["LINK"]=60]="LINK";Wt[Wt["LISTING"]=61]="LISTING";Wt[Wt["MAIN"]=62]="MAIN";Wt[Wt["MALIGNMARK"]=63]="MALIGNMARK";Wt[Wt["MARQUEE"]=64]="MARQUEE";Wt[Wt["MATH"]=65]="MATH";Wt[Wt["MENU"]=66]="MENU";Wt[Wt["META"]=67]="META";Wt[Wt["MGLYPH"]=68]="MGLYPH";Wt[Wt["MI"]=69]="MI";Wt[Wt["MO"]=70]="MO";Wt[Wt["MN"]=71]="MN";Wt[Wt["MS"]=72]="MS";Wt[Wt["MTEXT"]=73]="MTEXT";Wt[Wt["NAV"]=74]="NAV";Wt[Wt["NOBR"]=75]="NOBR";Wt[Wt["NOFRAMES"]=76]="NOFRAMES";Wt[Wt["NOEMBED"]=77]="NOEMBED";Wt[Wt["NOSCRIPT"]=78]="NOSCRIPT";Wt[Wt["OBJECT"]=79]="OBJECT";Wt[Wt["OL"]=80]="OL";Wt[Wt["OPTGROUP"]=81]="OPTGROUP";Wt[Wt["OPTION"]=82]="OPTION";Wt[Wt["P"]=83]="P";Wt[Wt["PARAM"]=84]="PARAM";Wt[Wt["PLAINTEXT"]=85]="PLAINTEXT";Wt[Wt["PRE"]=86]="PRE";Wt[Wt["RB"]=87]="RB";Wt[Wt["RP"]=88]="RP";Wt[Wt["RT"]=89]="RT";Wt[Wt["RTC"]=90]="RTC";Wt[Wt["RUBY"]=91]="RUBY";Wt[Wt["S"]=92]="S";Wt[Wt["SCRIPT"]=93]="SCRIPT";Wt[Wt["SECTION"]=94]="SECTION";Wt[Wt["SELECT"]=95]="SELECT";Wt[Wt["SOURCE"]=96]="SOURCE";Wt[Wt["SMALL"]=97]="SMALL";Wt[Wt["SPAN"]=98]="SPAN";Wt[Wt["STRIKE"]=99]="STRIKE";Wt[Wt["STRONG"]=100]="STRONG";Wt[Wt["STYLE"]=101]="STYLE";Wt[Wt["SUB"]=102]="SUB";Wt[Wt["SUMMARY"]=103]="SUMMARY";Wt[Wt["SUP"]=104]="SUP";Wt[Wt["TABLE"]=105]="TABLE";Wt[Wt["TBODY"]=106]="TBODY";Wt[Wt["TEMPLATE"]=107]="TEMPLATE";Wt[Wt["TEXTAREA"]=108]="TEXTAREA";Wt[Wt["TFOOT"]=109]="TFOOT";Wt[Wt["TD"]=110]="TD";Wt[Wt["TH"]=111]="TH";Wt[Wt["THEAD"]=112]="THEAD";Wt[Wt["TITLE"]=113]="TITLE";Wt[Wt["TR"]=114]="TR";Wt[Wt["TRACK"]=115]="TRACK";Wt[Wt["TT"]=116]="TT";Wt[Wt["U"]=117]="U";Wt[Wt["UL"]=118]="UL";Wt[Wt["SVG"]=119]="SVG";Wt[Wt["VAR"]=120]="VAR";Wt[Wt["WBR"]=121]="WBR";Wt[Wt["XMP"]=122]="XMP"})(rn=Pt.TAG_ID||(Pt.TAG_ID={}));const In=new Map([[an.A,rn.A],[an.ADDRESS,rn.ADDRESS],[an.ANNOTATION_XML,rn.ANNOTATION_XML],[an.APPLET,rn.APPLET],[an.AREA,rn.AREA],[an.ARTICLE,rn.ARTICLE],[an.ASIDE,rn.ASIDE],[an.B,rn.B],[an.BASE,rn.BASE],[an.BASEFONT,rn.BASEFONT],[an.BGSOUND,rn.BGSOUND],[an.BIG,rn.BIG],[an.BLOCKQUOTE,rn.BLOCKQUOTE],[an.BODY,rn.BODY],[an.BR,rn.BR],[an.BUTTON,rn.BUTTON],[an.CAPTION,rn.CAPTION],[an.CENTER,rn.CENTER],[an.CODE,rn.CODE],[an.COL,rn.COL],[an.COLGROUP,rn.COLGROUP],[an.DD,rn.DD],[an.DESC,rn.DESC],[an.DETAILS,rn.DETAILS],[an.DIALOG,rn.DIALOG],[an.DIR,rn.DIR],[an.DIV,rn.DIV],[an.DL,rn.DL],[an.DT,rn.DT],[an.EM,rn.EM],[an.EMBED,rn.EMBED],[an.FIELDSET,rn.FIELDSET],[an.FIGCAPTION,rn.FIGCAPTION],[an.FIGURE,rn.FIGURE],[an.FONT,rn.FONT],[an.FOOTER,rn.FOOTER],[an.FOREIGN_OBJECT,rn.FOREIGN_OBJECT],[an.FORM,rn.FORM],[an.FRAME,rn.FRAME],[an.FRAMESET,rn.FRAMESET],[an.H1,rn.H1],[an.H2,rn.H2],[an.H3,rn.H3],[an.H4,rn.H4],[an.H5,rn.H5],[an.H6,rn.H6],[an.HEAD,rn.HEAD],[an.HEADER,rn.HEADER],[an.HGROUP,rn.HGROUP],[an.HR,rn.HR],[an.HTML,rn.HTML],[an.I,rn.I],[an.IMG,rn.IMG],[an.IMAGE,rn.IMAGE],[an.INPUT,rn.INPUT],[an.IFRAME,rn.IFRAME],[an.KEYGEN,rn.KEYGEN],[an.LABEL,rn.LABEL],[an.LI,rn.LI],[an.LINK,rn.LINK],[an.LISTING,rn.LISTING],[an.MAIN,rn.MAIN],[an.MALIGNMARK,rn.MALIGNMARK],[an.MARQUEE,rn.MARQUEE],[an.MATH,rn.MATH],[an.MENU,rn.MENU],[an.META,rn.META],[an.MGLYPH,rn.MGLYPH],[an.MI,rn.MI],[an.MO,rn.MO],[an.MN,rn.MN],[an.MS,rn.MS],[an.MTEXT,rn.MTEXT],[an.NAV,rn.NAV],[an.NOBR,rn.NOBR],[an.NOFRAMES,rn.NOFRAMES],[an.NOEMBED,rn.NOEMBED],[an.NOSCRIPT,rn.NOSCRIPT],[an.OBJECT,rn.OBJECT],[an.OL,rn.OL],[an.OPTGROUP,rn.OPTGROUP],[an.OPTION,rn.OPTION],[an.P,rn.P],[an.PARAM,rn.PARAM],[an.PLAINTEXT,rn.PLAINTEXT],[an.PRE,rn.PRE],[an.RB,rn.RB],[an.RP,rn.RP],[an.RT,rn.RT],[an.RTC,rn.RTC],[an.RUBY,rn.RUBY],[an.S,rn.S],[an.SCRIPT,rn.SCRIPT],[an.SECTION,rn.SECTION],[an.SELECT,rn.SELECT],[an.SOURCE,rn.SOURCE],[an.SMALL,rn.SMALL],[an.SPAN,rn.SPAN],[an.STRIKE,rn.STRIKE],[an.STRONG,rn.STRONG],[an.STYLE,rn.STYLE],[an.SUB,rn.SUB],[an.SUMMARY,rn.SUMMARY],[an.SUP,rn.SUP],[an.TABLE,rn.TABLE],[an.TBODY,rn.TBODY],[an.TEMPLATE,rn.TEMPLATE],[an.TEXTAREA,rn.TEXTAREA],[an.TFOOT,rn.TFOOT],[an.TD,rn.TD],[an.TH,rn.TH],[an.THEAD,rn.THEAD],[an.TITLE,rn.TITLE],[an.TR,rn.TR],[an.TRACK,rn.TRACK],[an.TT,rn.TT],[an.U,rn.U],[an.UL,rn.UL],[an.SVG,rn.SVG],[an.VAR,rn.VAR],[an.WBR,rn.WBR],[an.XMP,rn.XMP]]);function getTagID(Wt){var Pt;return(Pt=In.get(Wt))!==null&&Pt!==void 0?Pt:rn.UNKNOWN}Pt.getTagID=getTagID;const sn=rn;Pt.SPECIAL_ELEMENTS={[en.HTML]:new Set([sn.ADDRESS,sn.APPLET,sn.AREA,sn.ARTICLE,sn.ASIDE,sn.BASE,sn.BASEFONT,sn.BGSOUND,sn.BLOCKQUOTE,sn.BODY,sn.BR,sn.BUTTON,sn.CAPTION,sn.CENTER,sn.COL,sn.COLGROUP,sn.DD,sn.DETAILS,sn.DIR,sn.DIV,sn.DL,sn.DT,sn.EMBED,sn.FIELDSET,sn.FIGCAPTION,sn.FIGURE,sn.FOOTER,sn.FORM,sn.FRAME,sn.FRAMESET,sn.H1,sn.H2,sn.H3,sn.H4,sn.H5,sn.H6,sn.HEAD,sn.HEADER,sn.HGROUP,sn.HR,sn.HTML,sn.IFRAME,sn.IMG,sn.INPUT,sn.LI,sn.LINK,sn.LISTING,sn.MAIN,sn.MARQUEE,sn.MENU,sn.META,sn.NAV,sn.NOEMBED,sn.NOFRAMES,sn.NOSCRIPT,sn.OBJECT,sn.OL,sn.P,sn.PARAM,sn.PLAINTEXT,sn.PRE,sn.SCRIPT,sn.SECTION,sn.SELECT,sn.SOURCE,sn.STYLE,sn.SUMMARY,sn.TABLE,sn.TBODY,sn.TD,sn.TEMPLATE,sn.TEXTAREA,sn.TFOOT,sn.TH,sn.THEAD,sn.TITLE,sn.TR,sn.TRACK,sn.UL,sn.WBR,sn.XMP]),[en.MATHML]:new Set([sn.MI,sn.MO,sn.MN,sn.MS,sn.MTEXT,sn.ANNOTATION_XML]),[en.SVG]:new Set([sn.TITLE,sn.FOREIGN_OBJECT,sn.DESC]),[en.XLINK]:new Set,[en.XML]:new Set,[en.XMLNS]:new Set};function isNumberedHeader(Wt){return Wt===sn.H1||Wt===sn.H2||Wt===sn.H3||Wt===sn.H4||Wt===sn.H5||Wt===sn.H6}Pt.isNumberedHeader=isNumberedHeader;const on=new Set([an.STYLE,an.SCRIPT,an.XMP,an.IFRAME,an.NOEMBED,an.NOFRAMES,an.PLAINTEXT]);function hasUnescapedText(Wt,Pt){return on.has(Wt)||Pt&&Wt===an.NOSCRIPT}Pt.hasUnescapedText=hasUnescapedText},30294:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.getTokenAttr=Pt.TokenType=void 0;var en;(function(Wt){Wt[Wt["CHARACTER"]=0]="CHARACTER";Wt[Wt["NULL_CHARACTER"]=1]="NULL_CHARACTER";Wt[Wt["WHITESPACE_CHARACTER"]=2]="WHITESPACE_CHARACTER";Wt[Wt["START_TAG"]=3]="START_TAG";Wt[Wt["END_TAG"]=4]="END_TAG";Wt[Wt["COMMENT"]=5]="COMMENT";Wt[Wt["DOCTYPE"]=6]="DOCTYPE";Wt[Wt["EOF"]=7]="EOF";Wt[Wt["HIBERNATION"]=8]="HIBERNATION"})(en=Pt.TokenType||(Pt.TokenType={}));function getTokenAttr(Wt,Pt){for(let en=Wt.attrs.length-1;en>=0;en--){if(Wt.attrs[en].name===Pt){return Wt.attrs[en].value}}return null}Pt.getTokenAttr=getTokenAttr},73616:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.isUndefinedCodePoint=Pt.isControlCodePoint=Pt.getSurrogatePairCodePoint=Pt.isSurrogatePair=Pt.isSurrogate=Pt.SEQUENCES=Pt.CODE_POINTS=Pt.REPLACEMENT_CHARACTER=void 0;const en=new Set([65534,65535,131070,131071,196606,196607,262142,262143,327678,327679,393214,393215,458750,458751,524286,524287,589822,589823,655358,655359,720894,720895,786430,786431,851966,851967,917502,917503,983038,983039,1048574,1048575,1114110,1114111]);Pt.REPLACEMENT_CHARACTER="�";var tn;(function(Wt){Wt[Wt["EOF"]=-1]="EOF";Wt[Wt["NULL"]=0]="NULL";Wt[Wt["TABULATION"]=9]="TABULATION";Wt[Wt["CARRIAGE_RETURN"]=13]="CARRIAGE_RETURN";Wt[Wt["LINE_FEED"]=10]="LINE_FEED";Wt[Wt["FORM_FEED"]=12]="FORM_FEED";Wt[Wt["SPACE"]=32]="SPACE";Wt[Wt["EXCLAMATION_MARK"]=33]="EXCLAMATION_MARK";Wt[Wt["QUOTATION_MARK"]=34]="QUOTATION_MARK";Wt[Wt["NUMBER_SIGN"]=35]="NUMBER_SIGN";Wt[Wt["AMPERSAND"]=38]="AMPERSAND";Wt[Wt["APOSTROPHE"]=39]="APOSTROPHE";Wt[Wt["HYPHEN_MINUS"]=45]="HYPHEN_MINUS";Wt[Wt["SOLIDUS"]=47]="SOLIDUS";Wt[Wt["DIGIT_0"]=48]="DIGIT_0";Wt[Wt["DIGIT_9"]=57]="DIGIT_9";Wt[Wt["SEMICOLON"]=59]="SEMICOLON";Wt[Wt["LESS_THAN_SIGN"]=60]="LESS_THAN_SIGN";Wt[Wt["EQUALS_SIGN"]=61]="EQUALS_SIGN";Wt[Wt["GREATER_THAN_SIGN"]=62]="GREATER_THAN_SIGN";Wt[Wt["QUESTION_MARK"]=63]="QUESTION_MARK";Wt[Wt["LATIN_CAPITAL_A"]=65]="LATIN_CAPITAL_A";Wt[Wt["LATIN_CAPITAL_F"]=70]="LATIN_CAPITAL_F";Wt[Wt["LATIN_CAPITAL_X"]=88]="LATIN_CAPITAL_X";Wt[Wt["LATIN_CAPITAL_Z"]=90]="LATIN_CAPITAL_Z";Wt[Wt["RIGHT_SQUARE_BRACKET"]=93]="RIGHT_SQUARE_BRACKET";Wt[Wt["GRAVE_ACCENT"]=96]="GRAVE_ACCENT";Wt[Wt["LATIN_SMALL_A"]=97]="LATIN_SMALL_A";Wt[Wt["LATIN_SMALL_F"]=102]="LATIN_SMALL_F";Wt[Wt["LATIN_SMALL_X"]=120]="LATIN_SMALL_X";Wt[Wt["LATIN_SMALL_Z"]=122]="LATIN_SMALL_Z";Wt[Wt["REPLACEMENT_CHARACTER"]=65533]="REPLACEMENT_CHARACTER"})(tn=Pt.CODE_POINTS||(Pt.CODE_POINTS={}));Pt.SEQUENCES={DASH_DASH:"--",CDATA_START:"[CDATA[",DOCTYPE:"doctype",SCRIPT:"script",PUBLIC:"public",SYSTEM:"system"};function isSurrogate(Wt){return Wt>=55296&&Wt<=57343}Pt.isSurrogate=isSurrogate;function isSurrogatePair(Wt){return Wt>=56320&&Wt<=57343}Pt.isSurrogatePair=isSurrogatePair;function getSurrogatePairCodePoint(Wt,Pt){return(Wt-55296)*1024+9216+Pt}Pt.getSurrogatePairCodePoint=getSurrogatePairCodePoint;function isControlCodePoint(Wt){return Wt!==32&&Wt!==10&&Wt!==13&&Wt!==9&&Wt!==12&&Wt>=1&&Wt<=31||Wt>=127&&Wt<=159}Pt.isControlCodePoint=isControlCodePoint;function isUndefinedCodePoint(Wt){return Wt>=64976&&Wt<=65007||en.has(Wt)}Pt.isUndefinedCodePoint=isUndefinedCodePoint},50069:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.parseFragment=Pt.parse=Pt.TokenizerMode=Pt.Tokenizer=Pt.Token=Pt.html=Pt.foreignContent=Pt.ErrorCodes=Pt.serializeOuter=Pt.serialize=Pt.Parser=Pt.defaultTreeAdapter=void 0;const tn=en(99945);var nn=en(24760);Object.defineProperty(Pt,"defaultTreeAdapter",{enumerable:true,get:function(){return nn.defaultTreeAdapter}});var an=en(99945);Object.defineProperty(Pt,"Parser",{enumerable:true,get:function(){return an.Parser}});var rn=en(47950);Object.defineProperty(Pt,"serialize",{enumerable:true,get:function(){return rn.serialize}});Object.defineProperty(Pt,"serializeOuter",{enumerable:true,get:function(){return rn.serializeOuter}});var In=en(69322);Object.defineProperty(Pt,"ErrorCodes",{enumerable:true,get:function(){return In.ERR}});Pt.foreignContent=en(79319);Pt.html=en(81510);Pt.Token=en(30294);var sn=en(55007);Object.defineProperty(Pt,"Tokenizer",{enumerable:true,get:function(){return sn.Tokenizer}});Object.defineProperty(Pt,"TokenizerMode",{enumerable:true,get:function(){return sn.TokenizerMode}});function parse(Wt,Pt){return tn.Parser.parse(Wt,Pt)}Pt.parse=parse;function parseFragment(Wt,Pt,en){if(typeof Wt==="string"){en=Pt;Pt=Wt;Wt=null}const nn=tn.Parser.getFragmentParser(Wt,en);nn.tokenizer.write(Pt,true);return nn.getFragment()}Pt.parseFragment=parseFragment},69048:(Wt,Pt)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.FormattingElementList=Pt.EntryType=void 0;const en=3;var tn;(function(Wt){Wt[Wt["Marker"]=0]="Marker";Wt[Wt["Element"]=1]="Element"})(tn=Pt.EntryType||(Pt.EntryType={}));const nn={type:tn.Marker};class FormattingElementList{constructor(Wt){this.treeAdapter=Wt;this.entries=[];this.bookmark=null}_getNoahArkConditionCandidates(Wt,Pt){const en=[];const nn=Pt.length;const an=this.treeAdapter.getTagName(Wt);const rn=this.treeAdapter.getNamespaceURI(Wt);for(let Wt=0;Wt[Wt.name,Wt.value])));let an=0;for(let Wt=0;Wtnn.get(Wt.name)===Wt.value))){an+=1;if(an>=en){this.entries.splice(Pt.idx,1)}}}}insertMarker(){this.entries.unshift(nn)}pushElement(Wt,Pt){this._ensureNoahArkCondition(Wt);this.entries.unshift({type:tn.Element,element:Wt,token:Pt})}insertElementAfterBookmark(Wt,Pt){const en=this.entries.indexOf(this.bookmark);this.entries.splice(en,0,{type:tn.Element,element:Wt,token:Pt})}removeEntry(Wt){const Pt=this.entries.indexOf(Wt);if(Pt>=0){this.entries.splice(Pt,1)}}clearToLastMarker(){const Wt=this.entries.indexOf(nn);if(Wt>=0){this.entries.splice(0,Wt+1)}else{this.entries.length=0}}getElementEntryInScopeWithTagName(Wt){const Pt=this.entries.find((Pt=>Pt.type===tn.Marker||this.treeAdapter.getTagName(Pt.element)===Wt));return Pt&&Pt.type===tn.Element?Pt:null}getElementEntry(Wt){return this.entries.find((Pt=>Pt.type===tn.Element&&Pt.element===Wt))}}Pt.FormattingElementList=FormattingElementList},99945:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Parser=void 0;const tn=en(55007);const nn=en(54857);const an=en(69048);const rn=en(24760);const In=en(32377);const sn=en(79319);const on=en(69322);const cn=en(73616);const dn=en(81510);const un=en(30294);const pn="hidden";const mn=8;const bn=3;var Gn;(function(Wt){Wt[Wt["INITIAL"]=0]="INITIAL";Wt[Wt["BEFORE_HTML"]=1]="BEFORE_HTML";Wt[Wt["BEFORE_HEAD"]=2]="BEFORE_HEAD";Wt[Wt["IN_HEAD"]=3]="IN_HEAD";Wt[Wt["IN_HEAD_NO_SCRIPT"]=4]="IN_HEAD_NO_SCRIPT";Wt[Wt["AFTER_HEAD"]=5]="AFTER_HEAD";Wt[Wt["IN_BODY"]=6]="IN_BODY";Wt[Wt["TEXT"]=7]="TEXT";Wt[Wt["IN_TABLE"]=8]="IN_TABLE";Wt[Wt["IN_TABLE_TEXT"]=9]="IN_TABLE_TEXT";Wt[Wt["IN_CAPTION"]=10]="IN_CAPTION";Wt[Wt["IN_COLUMN_GROUP"]=11]="IN_COLUMN_GROUP";Wt[Wt["IN_TABLE_BODY"]=12]="IN_TABLE_BODY";Wt[Wt["IN_ROW"]=13]="IN_ROW";Wt[Wt["IN_CELL"]=14]="IN_CELL";Wt[Wt["IN_SELECT"]=15]="IN_SELECT";Wt[Wt["IN_SELECT_IN_TABLE"]=16]="IN_SELECT_IN_TABLE";Wt[Wt["IN_TEMPLATE"]=17]="IN_TEMPLATE";Wt[Wt["AFTER_BODY"]=18]="AFTER_BODY";Wt[Wt["IN_FRAMESET"]=19]="IN_FRAMESET";Wt[Wt["AFTER_FRAMESET"]=20]="AFTER_FRAMESET";Wt[Wt["AFTER_AFTER_BODY"]=21]="AFTER_AFTER_BODY";Wt[Wt["AFTER_AFTER_FRAMESET"]=22]="AFTER_AFTER_FRAMESET"})(Gn||(Gn={}));const hn={startLine:-1,startCol:-1,startOffset:-1,endLine:-1,endCol:-1,endOffset:-1};const Zn=new Set([dn.TAG_ID.TABLE,dn.TAG_ID.TBODY,dn.TAG_ID.TFOOT,dn.TAG_ID.THEAD,dn.TAG_ID.TR]);const An={scriptingEnabled:true,sourceCodeLocationInfo:false,treeAdapter:rn.defaultTreeAdapter,onParseError:null};class Parser{constructor(Wt,Pt,en=null,rn=null){this.fragmentContext=en;this.scriptHandler=rn;this.currentToken=null;this.stopped=false;this.insertionMode=Gn.INITIAL;this.originalInsertionMode=Gn.INITIAL;this.headElement=null;this.formElement=null;this.currentNotInHTML=false;this.tmplInsertionModeStack=[];this.pendingCharacterTokens=[];this.hasNonWhitespacePendingCharacterToken=false;this.framesetOk=true;this.skipNextNewLine=false;this.fosterParentingEnabled=false;this.options=Object.assign(Object.assign({},An),Wt);this.treeAdapter=this.options.treeAdapter;this.onParseError=this.options.onParseError;if(this.onParseError){this.options.sourceCodeLocationInfo=true}this.document=Pt!==null&&Pt!==void 0?Pt:this.treeAdapter.createDocument();this.tokenizer=new tn.Tokenizer(this.options,this);this.activeFormattingElements=new an.FormattingElementList(this.treeAdapter);this.fragmentContextID=en?(0,dn.getTagID)(this.treeAdapter.getTagName(en)):dn.TAG_ID.UNKNOWN;this._setContextModes(en!==null&&en!==void 0?en:this.document,this.fragmentContextID);this.openElements=new nn.OpenElementStack(this.document,this.treeAdapter,this)}static parse(Wt,Pt){const en=new this(Pt);en.tokenizer.write(Wt,true);return en.document}static getFragmentParser(Wt,Pt){const en=Object.assign(Object.assign({},An),Pt);Wt!==null&&Wt!==void 0?Wt:Wt=en.treeAdapter.createElement(dn.TAG_NAMES.TEMPLATE,dn.NS.HTML,[]);const tn=en.treeAdapter.createElement("documentmock",dn.NS.HTML,[]);const nn=new this(en,tn,Wt);if(nn.fragmentContextID===dn.TAG_ID.TEMPLATE){nn.tmplInsertionModeStack.unshift(Gn.IN_TEMPLATE)}nn._initTokenizerForFragmentParsing();nn._insertFakeRootElement();nn._resetInsertionMode();nn._findFormInFragmentContext();return nn}getFragment(){const Wt=this.treeAdapter.getFirstChild(this.document);const Pt=this.treeAdapter.createDocumentFragment();this._adoptNodes(Wt,Pt);return Pt}_err(Wt,Pt,en){var tn;if(!this.onParseError)return;const nn=(tn=Wt.location)!==null&&tn!==void 0?tn:hn;const an={code:Pt,startLine:nn.startLine,startCol:nn.startCol,startOffset:nn.startOffset,endLine:en?nn.startLine:nn.endLine,endCol:en?nn.startCol:nn.endCol,endOffset:en?nn.startOffset:nn.endOffset};this.onParseError(an)}onItemPush(Wt,Pt,en){var tn,nn;(nn=(tn=this.treeAdapter).onItemPush)===null||nn===void 0?void 0:nn.call(tn,Wt);if(en&&this.openElements.stackTop>0)this._setContextModes(Wt,Pt)}onItemPop(Wt,Pt){var en,tn;if(this.options.sourceCodeLocationInfo){this._setEndLocation(Wt,this.currentToken)}(tn=(en=this.treeAdapter).onItemPop)===null||tn===void 0?void 0:tn.call(en,Wt,this.openElements.current);if(Pt){let Wt;let Pt;if(this.openElements.stackTop===0&&this.fragmentContext){Wt=this.fragmentContext;Pt=this.fragmentContextID}else{({current:Wt,currentTagId:Pt}=this.openElements)}this._setContextModes(Wt,Pt)}}_setContextModes(Wt,Pt){const en=Wt===this.document||this.treeAdapter.getNamespaceURI(Wt)===dn.NS.HTML;this.currentNotInHTML=!en;this.tokenizer.inForeignNode=!en&&!this._isIntegrationPoint(Pt,Wt)}_switchToTextParsing(Wt,Pt){this._insertElement(Wt,dn.NS.HTML);this.tokenizer.state=Pt;this.originalInsertionMode=this.insertionMode;this.insertionMode=Gn.TEXT}switchToPlaintextParsing(){this.insertionMode=Gn.TEXT;this.originalInsertionMode=Gn.IN_BODY;this.tokenizer.state=tn.TokenizerMode.PLAINTEXT}_getAdjustedCurrentElement(){return this.openElements.stackTop===0&&this.fragmentContext?this.fragmentContext:this.openElements.current}_findFormInFragmentContext(){let Wt=this.fragmentContext;while(Wt){if(this.treeAdapter.getTagName(Wt)===dn.TAG_NAMES.FORM){this.formElement=Wt;break}Wt=this.treeAdapter.getParentNode(Wt)}}_initTokenizerForFragmentParsing(){if(!this.fragmentContext||this.treeAdapter.getNamespaceURI(this.fragmentContext)!==dn.NS.HTML){return}switch(this.fragmentContextID){case dn.TAG_ID.TITLE:case dn.TAG_ID.TEXTAREA:{this.tokenizer.state=tn.TokenizerMode.RCDATA;break}case dn.TAG_ID.STYLE:case dn.TAG_ID.XMP:case dn.TAG_ID.IFRAME:case dn.TAG_ID.NOEMBED:case dn.TAG_ID.NOFRAMES:case dn.TAG_ID.NOSCRIPT:{this.tokenizer.state=tn.TokenizerMode.RAWTEXT;break}case dn.TAG_ID.SCRIPT:{this.tokenizer.state=tn.TokenizerMode.SCRIPT_DATA;break}case dn.TAG_ID.PLAINTEXT:{this.tokenizer.state=tn.TokenizerMode.PLAINTEXT;break}default:}}_setDocumentType(Wt){const Pt=Wt.name||"";const en=Wt.publicId||"";const tn=Wt.systemId||"";this.treeAdapter.setDocumentType(this.document,Pt,en,tn);if(Wt.location){const Pt=this.treeAdapter.getChildNodes(this.document);const en=Pt.find((Wt=>this.treeAdapter.isDocumentTypeNode(Wt)));if(en){this.treeAdapter.setNodeSourceCodeLocation(en,Wt.location)}}}_attachElementToTree(Wt,Pt){if(this.options.sourceCodeLocationInfo){const en=Pt&&Object.assign(Object.assign({},Pt),{startTag:Pt});this.treeAdapter.setNodeSourceCodeLocation(Wt,en)}if(this._shouldFosterParentOnInsertion()){this._fosterParentElement(Wt)}else{const Pt=this.openElements.currentTmplContentOrNode;this.treeAdapter.appendChild(Pt,Wt)}}_appendElement(Wt,Pt){const en=this.treeAdapter.createElement(Wt.tagName,Pt,Wt.attrs);this._attachElementToTree(en,Wt.location)}_insertElement(Wt,Pt){const en=this.treeAdapter.createElement(Wt.tagName,Pt,Wt.attrs);this._attachElementToTree(en,Wt.location);this.openElements.push(en,Wt.tagID)}_insertFakeElement(Wt,Pt){const en=this.treeAdapter.createElement(Wt,dn.NS.HTML,[]);this._attachElementToTree(en,null);this.openElements.push(en,Pt)}_insertTemplate(Wt){const Pt=this.treeAdapter.createElement(Wt.tagName,dn.NS.HTML,Wt.attrs);const en=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(Pt,en);this._attachElementToTree(Pt,Wt.location);this.openElements.push(Pt,Wt.tagID);if(this.options.sourceCodeLocationInfo)this.treeAdapter.setNodeSourceCodeLocation(en,null)}_insertFakeRootElement(){const Wt=this.treeAdapter.createElement(dn.TAG_NAMES.HTML,dn.NS.HTML,[]);if(this.options.sourceCodeLocationInfo)this.treeAdapter.setNodeSourceCodeLocation(Wt,null);this.treeAdapter.appendChild(this.openElements.current,Wt);this.openElements.push(Wt,dn.TAG_ID.HTML)}_appendCommentNode(Wt,Pt){const en=this.treeAdapter.createCommentNode(Wt.data);this.treeAdapter.appendChild(Pt,en);if(this.options.sourceCodeLocationInfo){this.treeAdapter.setNodeSourceCodeLocation(en,Wt.location)}}_insertCharacters(Wt){let Pt;let en;if(this._shouldFosterParentOnInsertion()){({parent:Pt,beforeElement:en}=this._findFosterParentingLocation());if(en){this.treeAdapter.insertTextBefore(Pt,Wt.chars,en)}else{this.treeAdapter.insertText(Pt,Wt.chars)}}else{Pt=this.openElements.currentTmplContentOrNode;this.treeAdapter.insertText(Pt,Wt.chars)}if(!Wt.location)return;const tn=this.treeAdapter.getChildNodes(Pt);const nn=en?tn.lastIndexOf(en):tn.length;const an=tn[nn-1];const rn=this.treeAdapter.getNodeSourceCodeLocation(an);if(rn){const{endLine:Pt,endCol:en,endOffset:tn}=Wt.location;this.treeAdapter.updateNodeSourceCodeLocation(an,{endLine:Pt,endCol:en,endOffset:tn})}else if(this.options.sourceCodeLocationInfo){this.treeAdapter.setNodeSourceCodeLocation(an,Wt.location)}}_adoptNodes(Wt,Pt){for(let en=this.treeAdapter.getFirstChild(Wt);en;en=this.treeAdapter.getFirstChild(Wt)){this.treeAdapter.detachNode(en);this.treeAdapter.appendChild(Pt,en)}}_setEndLocation(Wt,Pt){if(this.treeAdapter.getNodeSourceCodeLocation(Wt)&&Pt.location){const en=Pt.location;const tn=this.treeAdapter.getTagName(Wt);const nn=Pt.type===un.TokenType.END_TAG&&tn===Pt.tagName?{endTag:Object.assign({},en),endLine:en.endLine,endCol:en.endCol,endOffset:en.endOffset}:{endLine:en.startLine,endCol:en.startCol,endOffset:en.startOffset};this.treeAdapter.updateNodeSourceCodeLocation(Wt,nn)}}shouldProcessStartTagTokenInForeignContent(Wt){if(!this.currentNotInHTML)return false;let Pt;let en;if(this.openElements.stackTop===0&&this.fragmentContext){Pt=this.fragmentContext;en=this.fragmentContextID}else{({current:Pt,currentTagId:en}=this.openElements)}if(Wt.tagID===dn.TAG_ID.SVG&&this.treeAdapter.getTagName(Pt)===dn.TAG_NAMES.ANNOTATION_XML&&this.treeAdapter.getNamespaceURI(Pt)===dn.NS.MATHML){return false}return this.tokenizer.inForeignNode||(Wt.tagID===dn.TAG_ID.MGLYPH||Wt.tagID===dn.TAG_ID.MALIGNMARK)&&!this._isIntegrationPoint(en,Pt,dn.NS.HTML)}_processToken(Wt){switch(Wt.type){case un.TokenType.CHARACTER:{this.onCharacter(Wt);break}case un.TokenType.NULL_CHARACTER:{this.onNullCharacter(Wt);break}case un.TokenType.COMMENT:{this.onComment(Wt);break}case un.TokenType.DOCTYPE:{this.onDoctype(Wt);break}case un.TokenType.START_TAG:{this._processStartTag(Wt);break}case un.TokenType.END_TAG:{this.onEndTag(Wt);break}case un.TokenType.EOF:{this.onEof(Wt);break}case un.TokenType.WHITESPACE_CHARACTER:{this.onWhitespaceCharacter(Wt);break}}}_isIntegrationPoint(Wt,Pt,en){const tn=this.treeAdapter.getNamespaceURI(Pt);const nn=this.treeAdapter.getAttrList(Pt);return sn.isIntegrationPoint(Wt,tn,nn,en)}_reconstructActiveFormattingElements(){const Wt=this.activeFormattingElements.entries.length;if(Wt){const Pt=this.activeFormattingElements.entries.findIndex((Wt=>Wt.type===an.EntryType.Marker||this.openElements.contains(Wt.element)));const en=Pt<0?Wt-1:Pt-1;for(let Wt=en;Wt>=0;Wt--){const Pt=this.activeFormattingElements.entries[Wt];this._insertElement(Pt.token,this.treeAdapter.getNamespaceURI(Pt.element));Pt.element=this.openElements.current}}}_closeTableCell(){this.openElements.generateImpliedEndTags();this.openElements.popUntilTableCellPopped();this.activeFormattingElements.clearToLastMarker();this.insertionMode=Gn.IN_ROW}_closePElement(){this.openElements.generateImpliedEndTagsWithExclusion(dn.TAG_ID.P);this.openElements.popUntilTagNamePopped(dn.TAG_ID.P)}_resetInsertionMode(){for(let Wt=this.openElements.stackTop;Wt>=0;Wt--){switch(Wt===0&&this.fragmentContext?this.fragmentContextID:this.openElements.tagIDs[Wt]){case dn.TAG_ID.TR:{this.insertionMode=Gn.IN_ROW;return}case dn.TAG_ID.TBODY:case dn.TAG_ID.THEAD:case dn.TAG_ID.TFOOT:{this.insertionMode=Gn.IN_TABLE_BODY;return}case dn.TAG_ID.CAPTION:{this.insertionMode=Gn.IN_CAPTION;return}case dn.TAG_ID.COLGROUP:{this.insertionMode=Gn.IN_COLUMN_GROUP;return}case dn.TAG_ID.TABLE:{this.insertionMode=Gn.IN_TABLE;return}case dn.TAG_ID.BODY:{this.insertionMode=Gn.IN_BODY;return}case dn.TAG_ID.FRAMESET:{this.insertionMode=Gn.IN_FRAMESET;return}case dn.TAG_ID.SELECT:{this._resetInsertionModeForSelect(Wt);return}case dn.TAG_ID.TEMPLATE:{this.insertionMode=this.tmplInsertionModeStack[0];return}case dn.TAG_ID.HTML:{this.insertionMode=this.headElement?Gn.AFTER_HEAD:Gn.BEFORE_HEAD;return}case dn.TAG_ID.TD:case dn.TAG_ID.TH:{if(Wt>0){this.insertionMode=Gn.IN_CELL;return}break}case dn.TAG_ID.HEAD:{if(Wt>0){this.insertionMode=Gn.IN_HEAD;return}break}}}this.insertionMode=Gn.IN_BODY}_resetInsertionModeForSelect(Wt){if(Wt>0){for(let Pt=Wt-1;Pt>0;Pt--){const Wt=this.openElements.tagIDs[Pt];if(Wt===dn.TAG_ID.TEMPLATE){break}else if(Wt===dn.TAG_ID.TABLE){this.insertionMode=Gn.IN_SELECT_IN_TABLE;return}}}this.insertionMode=Gn.IN_SELECT}_isElementCausesFosterParenting(Wt){return Zn.has(Wt)}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this._isElementCausesFosterParenting(this.openElements.currentTagId)}_findFosterParentingLocation(){for(let Wt=this.openElements.stackTop;Wt>=0;Wt--){const Pt=this.openElements.items[Wt];switch(this.openElements.tagIDs[Wt]){case dn.TAG_ID.TEMPLATE:{if(this.treeAdapter.getNamespaceURI(Pt)===dn.NS.HTML){return{parent:this.treeAdapter.getTemplateContent(Pt),beforeElement:null}}break}case dn.TAG_ID.TABLE:{const en=this.treeAdapter.getParentNode(Pt);if(en){return{parent:en,beforeElement:Pt}}return{parent:this.openElements.items[Wt-1],beforeElement:null}}default:}}return{parent:this.openElements.items[0],beforeElement:null}}_fosterParentElement(Wt){const Pt=this._findFosterParentingLocation();if(Pt.beforeElement){this.treeAdapter.insertBefore(Pt.parent,Wt,Pt.beforeElement)}else{this.treeAdapter.appendChild(Pt.parent,Wt)}}_isSpecialElement(Wt,Pt){const en=this.treeAdapter.getNamespaceURI(Wt);return dn.SPECIAL_ELEMENTS[en].has(Pt)}onCharacter(Wt){this.skipNextNewLine=false;if(this.tokenizer.inForeignNode){characterInForeignContent(this,Wt);return}switch(this.insertionMode){case Gn.INITIAL:{tokenInInitialMode(this,Wt);break}case Gn.BEFORE_HTML:{tokenBeforeHtml(this,Wt);break}case Gn.BEFORE_HEAD:{tokenBeforeHead(this,Wt);break}case Gn.IN_HEAD:{tokenInHead(this,Wt);break}case Gn.IN_HEAD_NO_SCRIPT:{tokenInHeadNoScript(this,Wt);break}case Gn.AFTER_HEAD:{tokenAfterHead(this,Wt);break}case Gn.IN_BODY:case Gn.IN_CAPTION:case Gn.IN_CELL:case Gn.IN_TEMPLATE:{characterInBody(this,Wt);break}case Gn.TEXT:case Gn.IN_SELECT:case Gn.IN_SELECT_IN_TABLE:{this._insertCharacters(Wt);break}case Gn.IN_TABLE:case Gn.IN_TABLE_BODY:case Gn.IN_ROW:{characterInTable(this,Wt);break}case Gn.IN_TABLE_TEXT:{characterInTableText(this,Wt);break}case Gn.IN_COLUMN_GROUP:{tokenInColumnGroup(this,Wt);break}case Gn.AFTER_BODY:{tokenAfterBody(this,Wt);break}case Gn.AFTER_AFTER_BODY:{tokenAfterAfterBody(this,Wt);break}default:}}onNullCharacter(Wt){this.skipNextNewLine=false;if(this.tokenizer.inForeignNode){nullCharacterInForeignContent(this,Wt);return}switch(this.insertionMode){case Gn.INITIAL:{tokenInInitialMode(this,Wt);break}case Gn.BEFORE_HTML:{tokenBeforeHtml(this,Wt);break}case Gn.BEFORE_HEAD:{tokenBeforeHead(this,Wt);break}case Gn.IN_HEAD:{tokenInHead(this,Wt);break}case Gn.IN_HEAD_NO_SCRIPT:{tokenInHeadNoScript(this,Wt);break}case Gn.AFTER_HEAD:{tokenAfterHead(this,Wt);break}case Gn.TEXT:{this._insertCharacters(Wt);break}case Gn.IN_TABLE:case Gn.IN_TABLE_BODY:case Gn.IN_ROW:{characterInTable(this,Wt);break}case Gn.IN_COLUMN_GROUP:{tokenInColumnGroup(this,Wt);break}case Gn.AFTER_BODY:{tokenAfterBody(this,Wt);break}case Gn.AFTER_AFTER_BODY:{tokenAfterAfterBody(this,Wt);break}default:}}onComment(Wt){this.skipNextNewLine=false;if(this.currentNotInHTML){appendComment(this,Wt);return}switch(this.insertionMode){case Gn.INITIAL:case Gn.BEFORE_HTML:case Gn.BEFORE_HEAD:case Gn.IN_HEAD:case Gn.IN_HEAD_NO_SCRIPT:case Gn.AFTER_HEAD:case Gn.IN_BODY:case Gn.IN_TABLE:case Gn.IN_CAPTION:case Gn.IN_COLUMN_GROUP:case Gn.IN_TABLE_BODY:case Gn.IN_ROW:case Gn.IN_CELL:case Gn.IN_SELECT:case Gn.IN_SELECT_IN_TABLE:case Gn.IN_TEMPLATE:case Gn.IN_FRAMESET:case Gn.AFTER_FRAMESET:{appendComment(this,Wt);break}case Gn.IN_TABLE_TEXT:{tokenInTableText(this,Wt);break}case Gn.AFTER_BODY:{appendCommentToRootHtmlElement(this,Wt);break}case Gn.AFTER_AFTER_BODY:case Gn.AFTER_AFTER_FRAMESET:{appendCommentToDocument(this,Wt);break}default:}}onDoctype(Wt){this.skipNextNewLine=false;switch(this.insertionMode){case Gn.INITIAL:{doctypeInInitialMode(this,Wt);break}case Gn.BEFORE_HEAD:case Gn.IN_HEAD:case Gn.IN_HEAD_NO_SCRIPT:case Gn.AFTER_HEAD:{this._err(Wt,on.ERR.misplacedDoctype);break}case Gn.IN_TABLE_TEXT:{tokenInTableText(this,Wt);break}default:}}onStartTag(Wt){this.skipNextNewLine=false;this.currentToken=Wt;this._processStartTag(Wt);if(Wt.selfClosing&&!Wt.ackSelfClosing){this._err(Wt,on.ERR.nonVoidHtmlElementStartTagWithTrailingSolidus)}}_processStartTag(Wt){if(this.shouldProcessStartTagTokenInForeignContent(Wt)){startTagInForeignContent(this,Wt)}else{this._startTagOutsideForeignContent(Wt)}}_startTagOutsideForeignContent(Wt){switch(this.insertionMode){case Gn.INITIAL:{tokenInInitialMode(this,Wt);break}case Gn.BEFORE_HTML:{startTagBeforeHtml(this,Wt);break}case Gn.BEFORE_HEAD:{startTagBeforeHead(this,Wt);break}case Gn.IN_HEAD:{startTagInHead(this,Wt);break}case Gn.IN_HEAD_NO_SCRIPT:{startTagInHeadNoScript(this,Wt);break}case Gn.AFTER_HEAD:{startTagAfterHead(this,Wt);break}case Gn.IN_BODY:{startTagInBody(this,Wt);break}case Gn.IN_TABLE:{startTagInTable(this,Wt);break}case Gn.IN_TABLE_TEXT:{tokenInTableText(this,Wt);break}case Gn.IN_CAPTION:{startTagInCaption(this,Wt);break}case Gn.IN_COLUMN_GROUP:{startTagInColumnGroup(this,Wt);break}case Gn.IN_TABLE_BODY:{startTagInTableBody(this,Wt);break}case Gn.IN_ROW:{startTagInRow(this,Wt);break}case Gn.IN_CELL:{startTagInCell(this,Wt);break}case Gn.IN_SELECT:{startTagInSelect(this,Wt);break}case Gn.IN_SELECT_IN_TABLE:{startTagInSelectInTable(this,Wt);break}case Gn.IN_TEMPLATE:{startTagInTemplate(this,Wt);break}case Gn.AFTER_BODY:{startTagAfterBody(this,Wt);break}case Gn.IN_FRAMESET:{startTagInFrameset(this,Wt);break}case Gn.AFTER_FRAMESET:{startTagAfterFrameset(this,Wt);break}case Gn.AFTER_AFTER_BODY:{startTagAfterAfterBody(this,Wt);break}case Gn.AFTER_AFTER_FRAMESET:{startTagAfterAfterFrameset(this,Wt);break}default:}}onEndTag(Wt){this.skipNextNewLine=false;this.currentToken=Wt;if(this.currentNotInHTML){endTagInForeignContent(this,Wt)}else{this._endTagOutsideForeignContent(Wt)}}_endTagOutsideForeignContent(Wt){switch(this.insertionMode){case Gn.INITIAL:{tokenInInitialMode(this,Wt);break}case Gn.BEFORE_HTML:{endTagBeforeHtml(this,Wt);break}case Gn.BEFORE_HEAD:{endTagBeforeHead(this,Wt);break}case Gn.IN_HEAD:{endTagInHead(this,Wt);break}case Gn.IN_HEAD_NO_SCRIPT:{endTagInHeadNoScript(this,Wt);break}case Gn.AFTER_HEAD:{endTagAfterHead(this,Wt);break}case Gn.IN_BODY:{endTagInBody(this,Wt);break}case Gn.TEXT:{endTagInText(this,Wt);break}case Gn.IN_TABLE:{endTagInTable(this,Wt);break}case Gn.IN_TABLE_TEXT:{tokenInTableText(this,Wt);break}case Gn.IN_CAPTION:{endTagInCaption(this,Wt);break}case Gn.IN_COLUMN_GROUP:{endTagInColumnGroup(this,Wt);break}case Gn.IN_TABLE_BODY:{endTagInTableBody(this,Wt);break}case Gn.IN_ROW:{endTagInRow(this,Wt);break}case Gn.IN_CELL:{endTagInCell(this,Wt);break}case Gn.IN_SELECT:{endTagInSelect(this,Wt);break}case Gn.IN_SELECT_IN_TABLE:{endTagInSelectInTable(this,Wt);break}case Gn.IN_TEMPLATE:{endTagInTemplate(this,Wt);break}case Gn.AFTER_BODY:{endTagAfterBody(this,Wt);break}case Gn.IN_FRAMESET:{endTagInFrameset(this,Wt);break}case Gn.AFTER_FRAMESET:{endTagAfterFrameset(this,Wt);break}case Gn.AFTER_AFTER_BODY:{tokenAfterAfterBody(this,Wt);break}default:}}onEof(Wt){switch(this.insertionMode){case Gn.INITIAL:{tokenInInitialMode(this,Wt);break}case Gn.BEFORE_HTML:{tokenBeforeHtml(this,Wt);break}case Gn.BEFORE_HEAD:{tokenBeforeHead(this,Wt);break}case Gn.IN_HEAD:{tokenInHead(this,Wt);break}case Gn.IN_HEAD_NO_SCRIPT:{tokenInHeadNoScript(this,Wt);break}case Gn.AFTER_HEAD:{tokenAfterHead(this,Wt);break}case Gn.IN_BODY:case Gn.IN_TABLE:case Gn.IN_CAPTION:case Gn.IN_COLUMN_GROUP:case Gn.IN_TABLE_BODY:case Gn.IN_ROW:case Gn.IN_CELL:case Gn.IN_SELECT:case Gn.IN_SELECT_IN_TABLE:{eofInBody(this,Wt);break}case Gn.TEXT:{eofInText(this,Wt);break}case Gn.IN_TABLE_TEXT:{tokenInTableText(this,Wt);break}case Gn.IN_TEMPLATE:{eofInTemplate(this,Wt);break}case Gn.AFTER_BODY:case Gn.IN_FRAMESET:case Gn.AFTER_FRAMESET:case Gn.AFTER_AFTER_BODY:case Gn.AFTER_AFTER_FRAMESET:{stopParsing(this,Wt);break}default:}}onWhitespaceCharacter(Wt){if(this.skipNextNewLine){this.skipNextNewLine=false;if(Wt.chars.charCodeAt(0)===cn.CODE_POINTS.LINE_FEED){if(Wt.chars.length===1){return}Wt.chars=Wt.chars.substr(1)}}if(this.tokenizer.inForeignNode){this._insertCharacters(Wt);return}switch(this.insertionMode){case Gn.IN_HEAD:case Gn.IN_HEAD_NO_SCRIPT:case Gn.AFTER_HEAD:case Gn.TEXT:case Gn.IN_COLUMN_GROUP:case Gn.IN_SELECT:case Gn.IN_SELECT_IN_TABLE:case Gn.IN_FRAMESET:case Gn.AFTER_FRAMESET:{this._insertCharacters(Wt);break}case Gn.IN_BODY:case Gn.IN_CAPTION:case Gn.IN_CELL:case Gn.IN_TEMPLATE:case Gn.AFTER_BODY:case Gn.AFTER_AFTER_BODY:case Gn.AFTER_AFTER_FRAMESET:{whitespaceCharacterInBody(this,Wt);break}case Gn.IN_TABLE:case Gn.IN_TABLE_BODY:case Gn.IN_ROW:{characterInTable(this,Wt);break}case Gn.IN_TABLE_TEXT:{whitespaceCharacterInTableText(this,Wt);break}default:}}}Pt.Parser=Parser;function aaObtainFormattingElementEntry(Wt,Pt){let en=Wt.activeFormattingElements.getElementEntryInScopeWithTagName(Pt.tagName);if(en){if(!Wt.openElements.contains(en.element)){Wt.activeFormattingElements.removeEntry(en);en=null}else if(!Wt.openElements.hasInScope(Pt.tagID)){en=null}}else{genericEndTagInBody(Wt,Pt)}return en}function aaObtainFurthestBlock(Wt,Pt){let en=null;let tn=Wt.openElements.stackTop;for(;tn>=0;tn--){const nn=Wt.openElements.items[tn];if(nn===Pt.element){break}if(Wt._isSpecialElement(nn,Wt.openElements.tagIDs[tn])){en=nn}}if(!en){Wt.openElements.shortenToLength(tn<0?0:tn);Wt.activeFormattingElements.removeEntry(Pt)}return en}function aaInnerLoop(Wt,Pt,en){let tn=Pt;let nn=Wt.openElements.getCommonAncestor(Pt);for(let an=0,rn=nn;rn!==en;an++,rn=nn){nn=Wt.openElements.getCommonAncestor(rn);const en=Wt.activeFormattingElements.getElementEntry(rn);const In=en&&an>=bn;const sn=!en||In;if(sn){if(In){Wt.activeFormattingElements.removeEntry(en)}Wt.openElements.remove(rn)}else{rn=aaRecreateElementFromEntry(Wt,en);if(tn===Pt){Wt.activeFormattingElements.bookmark=en}Wt.treeAdapter.detachNode(tn);Wt.treeAdapter.appendChild(rn,tn);tn=rn}}return tn}function aaRecreateElementFromEntry(Wt,Pt){const en=Wt.treeAdapter.getNamespaceURI(Pt.element);const tn=Wt.treeAdapter.createElement(Pt.token.tagName,en,Pt.token.attrs);Wt.openElements.replace(Pt.element,tn);Pt.element=tn;return tn}function aaInsertLastNodeInCommonAncestor(Wt,Pt,en){const tn=Wt.treeAdapter.getTagName(Pt);const nn=(0,dn.getTagID)(tn);if(Wt._isElementCausesFosterParenting(nn)){Wt._fosterParentElement(en)}else{const tn=Wt.treeAdapter.getNamespaceURI(Pt);if(nn===dn.TAG_ID.TEMPLATE&&tn===dn.NS.HTML){Pt=Wt.treeAdapter.getTemplateContent(Pt)}Wt.treeAdapter.appendChild(Pt,en)}}function aaReplaceFormattingElement(Wt,Pt,en){const tn=Wt.treeAdapter.getNamespaceURI(en.element);const{token:nn}=en;const an=Wt.treeAdapter.createElement(nn.tagName,tn,nn.attrs);Wt._adoptNodes(Pt,an);Wt.treeAdapter.appendChild(Pt,an);Wt.activeFormattingElements.insertElementAfterBookmark(an,nn);Wt.activeFormattingElements.removeEntry(en);Wt.openElements.remove(en.element);Wt.openElements.insertAfter(Pt,an,nn.tagID)}function callAdoptionAgency(Wt,Pt){for(let en=0;en=en;tn--){Wt._setEndLocation(Wt.openElements.items[tn],Pt)}if(!Wt.fragmentContext&&Wt.openElements.stackTop>=0){const en=Wt.openElements.items[0];const tn=Wt.treeAdapter.getNodeSourceCodeLocation(en);if(tn&&!tn.endTag){Wt._setEndLocation(en,Pt);if(Wt.openElements.stackTop>=1){const en=Wt.openElements.items[1];const tn=Wt.treeAdapter.getNodeSourceCodeLocation(en);if(tn&&!tn.endTag){Wt._setEndLocation(en,Pt)}}}}}}function doctypeInInitialMode(Wt,Pt){Wt._setDocumentType(Pt);const en=Pt.forceQuirks?dn.DOCUMENT_MODE.QUIRKS:In.getDocumentMode(Pt);if(!In.isConforming(Pt)){Wt._err(Pt,on.ERR.nonConformingDoctype)}Wt.treeAdapter.setDocumentMode(Wt.document,en);Wt.insertionMode=Gn.BEFORE_HTML}function tokenInInitialMode(Wt,Pt){Wt._err(Pt,on.ERR.missingDoctype,true);Wt.treeAdapter.setDocumentMode(Wt.document,dn.DOCUMENT_MODE.QUIRKS);Wt.insertionMode=Gn.BEFORE_HTML;Wt._processToken(Pt)}function startTagBeforeHtml(Wt,Pt){if(Pt.tagID===dn.TAG_ID.HTML){Wt._insertElement(Pt,dn.NS.HTML);Wt.insertionMode=Gn.BEFORE_HEAD}else{tokenBeforeHtml(Wt,Pt)}}function endTagBeforeHtml(Wt,Pt){const en=Pt.tagID;if(en===dn.TAG_ID.HTML||en===dn.TAG_ID.HEAD||en===dn.TAG_ID.BODY||en===dn.TAG_ID.BR){tokenBeforeHtml(Wt,Pt)}}function tokenBeforeHtml(Wt,Pt){Wt._insertFakeRootElement();Wt.insertionMode=Gn.BEFORE_HEAD;Wt._processToken(Pt)}function startTagBeforeHead(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.HTML:{startTagInBody(Wt,Pt);break}case dn.TAG_ID.HEAD:{Wt._insertElement(Pt,dn.NS.HTML);Wt.headElement=Wt.openElements.current;Wt.insertionMode=Gn.IN_HEAD;break}default:{tokenBeforeHead(Wt,Pt)}}}function endTagBeforeHead(Wt,Pt){const en=Pt.tagID;if(en===dn.TAG_ID.HEAD||en===dn.TAG_ID.BODY||en===dn.TAG_ID.HTML||en===dn.TAG_ID.BR){tokenBeforeHead(Wt,Pt)}else{Wt._err(Pt,on.ERR.endTagWithoutMatchingOpenElement)}}function tokenBeforeHead(Wt,Pt){Wt._insertFakeElement(dn.TAG_NAMES.HEAD,dn.TAG_ID.HEAD);Wt.headElement=Wt.openElements.current;Wt.insertionMode=Gn.IN_HEAD;Wt._processToken(Pt)}function startTagInHead(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.HTML:{startTagInBody(Wt,Pt);break}case dn.TAG_ID.BASE:case dn.TAG_ID.BASEFONT:case dn.TAG_ID.BGSOUND:case dn.TAG_ID.LINK:case dn.TAG_ID.META:{Wt._appendElement(Pt,dn.NS.HTML);Pt.ackSelfClosing=true;break}case dn.TAG_ID.TITLE:{Wt._switchToTextParsing(Pt,tn.TokenizerMode.RCDATA);break}case dn.TAG_ID.NOSCRIPT:{if(Wt.options.scriptingEnabled){Wt._switchToTextParsing(Pt,tn.TokenizerMode.RAWTEXT)}else{Wt._insertElement(Pt,dn.NS.HTML);Wt.insertionMode=Gn.IN_HEAD_NO_SCRIPT}break}case dn.TAG_ID.NOFRAMES:case dn.TAG_ID.STYLE:{Wt._switchToTextParsing(Pt,tn.TokenizerMode.RAWTEXT);break}case dn.TAG_ID.SCRIPT:{Wt._switchToTextParsing(Pt,tn.TokenizerMode.SCRIPT_DATA);break}case dn.TAG_ID.TEMPLATE:{Wt._insertTemplate(Pt);Wt.activeFormattingElements.insertMarker();Wt.framesetOk=false;Wt.insertionMode=Gn.IN_TEMPLATE;Wt.tmplInsertionModeStack.unshift(Gn.IN_TEMPLATE);break}case dn.TAG_ID.HEAD:{Wt._err(Pt,on.ERR.misplacedStartTagForHeadElement);break}default:{tokenInHead(Wt,Pt)}}}function endTagInHead(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.HEAD:{Wt.openElements.pop();Wt.insertionMode=Gn.AFTER_HEAD;break}case dn.TAG_ID.BODY:case dn.TAG_ID.BR:case dn.TAG_ID.HTML:{tokenInHead(Wt,Pt);break}case dn.TAG_ID.TEMPLATE:{templateEndTagInHead(Wt,Pt);break}default:{Wt._err(Pt,on.ERR.endTagWithoutMatchingOpenElement)}}}function templateEndTagInHead(Wt,Pt){if(Wt.openElements.tmplCount>0){Wt.openElements.generateImpliedEndTagsThoroughly();if(Wt.openElements.currentTagId!==dn.TAG_ID.TEMPLATE){Wt._err(Pt,on.ERR.closingOfElementWithOpenChildElements)}Wt.openElements.popUntilTagNamePopped(dn.TAG_ID.TEMPLATE);Wt.activeFormattingElements.clearToLastMarker();Wt.tmplInsertionModeStack.shift();Wt._resetInsertionMode()}else{Wt._err(Pt,on.ERR.endTagWithoutMatchingOpenElement)}}function tokenInHead(Wt,Pt){Wt.openElements.pop();Wt.insertionMode=Gn.AFTER_HEAD;Wt._processToken(Pt)}function startTagInHeadNoScript(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.HTML:{startTagInBody(Wt,Pt);break}case dn.TAG_ID.BASEFONT:case dn.TAG_ID.BGSOUND:case dn.TAG_ID.HEAD:case dn.TAG_ID.LINK:case dn.TAG_ID.META:case dn.TAG_ID.NOFRAMES:case dn.TAG_ID.STYLE:{startTagInHead(Wt,Pt);break}case dn.TAG_ID.NOSCRIPT:{Wt._err(Pt,on.ERR.nestedNoscriptInHead);break}default:{tokenInHeadNoScript(Wt,Pt)}}}function endTagInHeadNoScript(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.NOSCRIPT:{Wt.openElements.pop();Wt.insertionMode=Gn.IN_HEAD;break}case dn.TAG_ID.BR:{tokenInHeadNoScript(Wt,Pt);break}default:{Wt._err(Pt,on.ERR.endTagWithoutMatchingOpenElement)}}}function tokenInHeadNoScript(Wt,Pt){const en=Pt.type===un.TokenType.EOF?on.ERR.openElementsLeftAfterEof:on.ERR.disallowedContentInNoscriptInHead;Wt._err(Pt,en);Wt.openElements.pop();Wt.insertionMode=Gn.IN_HEAD;Wt._processToken(Pt)}function startTagAfterHead(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.HTML:{startTagInBody(Wt,Pt);break}case dn.TAG_ID.BODY:{Wt._insertElement(Pt,dn.NS.HTML);Wt.framesetOk=false;Wt.insertionMode=Gn.IN_BODY;break}case dn.TAG_ID.FRAMESET:{Wt._insertElement(Pt,dn.NS.HTML);Wt.insertionMode=Gn.IN_FRAMESET;break}case dn.TAG_ID.BASE:case dn.TAG_ID.BASEFONT:case dn.TAG_ID.BGSOUND:case dn.TAG_ID.LINK:case dn.TAG_ID.META:case dn.TAG_ID.NOFRAMES:case dn.TAG_ID.SCRIPT:case dn.TAG_ID.STYLE:case dn.TAG_ID.TEMPLATE:case dn.TAG_ID.TITLE:{Wt._err(Pt,on.ERR.abandonedHeadElementChild);Wt.openElements.push(Wt.headElement,dn.TAG_ID.HEAD);startTagInHead(Wt,Pt);Wt.openElements.remove(Wt.headElement);break}case dn.TAG_ID.HEAD:{Wt._err(Pt,on.ERR.misplacedStartTagForHeadElement);break}default:{tokenAfterHead(Wt,Pt)}}}function endTagAfterHead(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.BODY:case dn.TAG_ID.HTML:case dn.TAG_ID.BR:{tokenAfterHead(Wt,Pt);break}case dn.TAG_ID.TEMPLATE:{templateEndTagInHead(Wt,Pt);break}default:{Wt._err(Pt,on.ERR.endTagWithoutMatchingOpenElement)}}}function tokenAfterHead(Wt,Pt){Wt._insertFakeElement(dn.TAG_NAMES.BODY,dn.TAG_ID.BODY);Wt.insertionMode=Gn.IN_BODY;modeInBody(Wt,Pt)}function modeInBody(Wt,Pt){switch(Pt.type){case un.TokenType.CHARACTER:{characterInBody(Wt,Pt);break}case un.TokenType.WHITESPACE_CHARACTER:{whitespaceCharacterInBody(Wt,Pt);break}case un.TokenType.COMMENT:{appendComment(Wt,Pt);break}case un.TokenType.START_TAG:{startTagInBody(Wt,Pt);break}case un.TokenType.END_TAG:{endTagInBody(Wt,Pt);break}case un.TokenType.EOF:{eofInBody(Wt,Pt);break}default:}}function whitespaceCharacterInBody(Wt,Pt){Wt._reconstructActiveFormattingElements();Wt._insertCharacters(Pt)}function characterInBody(Wt,Pt){Wt._reconstructActiveFormattingElements();Wt._insertCharacters(Pt);Wt.framesetOk=false}function htmlStartTagInBody(Wt,Pt){if(Wt.openElements.tmplCount===0){Wt.treeAdapter.adoptAttributes(Wt.openElements.items[0],Pt.attrs)}}function bodyStartTagInBody(Wt,Pt){const en=Wt.openElements.tryPeekProperlyNestedBodyElement();if(en&&Wt.openElements.tmplCount===0){Wt.framesetOk=false;Wt.treeAdapter.adoptAttributes(en,Pt.attrs)}}function framesetStartTagInBody(Wt,Pt){const en=Wt.openElements.tryPeekProperlyNestedBodyElement();if(Wt.framesetOk&&en){Wt.treeAdapter.detachNode(en);Wt.openElements.popAllUpToHtmlElement();Wt._insertElement(Pt,dn.NS.HTML);Wt.insertionMode=Gn.IN_FRAMESET}}function addressStartTagInBody(Wt,Pt){if(Wt.openElements.hasInButtonScope(dn.TAG_ID.P)){Wt._closePElement()}Wt._insertElement(Pt,dn.NS.HTML)}function numberedHeaderStartTagInBody(Wt,Pt){if(Wt.openElements.hasInButtonScope(dn.TAG_ID.P)){Wt._closePElement()}if((0,dn.isNumberedHeader)(Wt.openElements.currentTagId)){Wt.openElements.pop()}Wt._insertElement(Pt,dn.NS.HTML)}function preStartTagInBody(Wt,Pt){if(Wt.openElements.hasInButtonScope(dn.TAG_ID.P)){Wt._closePElement()}Wt._insertElement(Pt,dn.NS.HTML);Wt.skipNextNewLine=true;Wt.framesetOk=false}function formStartTagInBody(Wt,Pt){const en=Wt.openElements.tmplCount>0;if(!Wt.formElement||en){if(Wt.openElements.hasInButtonScope(dn.TAG_ID.P)){Wt._closePElement()}Wt._insertElement(Pt,dn.NS.HTML);if(!en){Wt.formElement=Wt.openElements.current}}}function listItemStartTagInBody(Wt,Pt){Wt.framesetOk=false;const en=Pt.tagID;for(let Pt=Wt.openElements.stackTop;Pt>=0;Pt--){const tn=Wt.openElements.tagIDs[Pt];if(en===dn.TAG_ID.LI&&tn===dn.TAG_ID.LI||(en===dn.TAG_ID.DD||en===dn.TAG_ID.DT)&&(tn===dn.TAG_ID.DD||tn===dn.TAG_ID.DT)){Wt.openElements.generateImpliedEndTagsWithExclusion(tn);Wt.openElements.popUntilTagNamePopped(tn);break}if(tn!==dn.TAG_ID.ADDRESS&&tn!==dn.TAG_ID.DIV&&tn!==dn.TAG_ID.P&&Wt._isSpecialElement(Wt.openElements.items[Pt],tn)){break}}if(Wt.openElements.hasInButtonScope(dn.TAG_ID.P)){Wt._closePElement()}Wt._insertElement(Pt,dn.NS.HTML)}function plaintextStartTagInBody(Wt,Pt){if(Wt.openElements.hasInButtonScope(dn.TAG_ID.P)){Wt._closePElement()}Wt._insertElement(Pt,dn.NS.HTML);Wt.tokenizer.state=tn.TokenizerMode.PLAINTEXT}function buttonStartTagInBody(Wt,Pt){if(Wt.openElements.hasInScope(dn.TAG_ID.BUTTON)){Wt.openElements.generateImpliedEndTags();Wt.openElements.popUntilTagNamePopped(dn.TAG_ID.BUTTON)}Wt._reconstructActiveFormattingElements();Wt._insertElement(Pt,dn.NS.HTML);Wt.framesetOk=false}function aStartTagInBody(Wt,Pt){const en=Wt.activeFormattingElements.getElementEntryInScopeWithTagName(dn.TAG_NAMES.A);if(en){callAdoptionAgency(Wt,Pt);Wt.openElements.remove(en.element);Wt.activeFormattingElements.removeEntry(en)}Wt._reconstructActiveFormattingElements();Wt._insertElement(Pt,dn.NS.HTML);Wt.activeFormattingElements.pushElement(Wt.openElements.current,Pt)}function bStartTagInBody(Wt,Pt){Wt._reconstructActiveFormattingElements();Wt._insertElement(Pt,dn.NS.HTML);Wt.activeFormattingElements.pushElement(Wt.openElements.current,Pt)}function nobrStartTagInBody(Wt,Pt){Wt._reconstructActiveFormattingElements();if(Wt.openElements.hasInScope(dn.TAG_ID.NOBR)){callAdoptionAgency(Wt,Pt);Wt._reconstructActiveFormattingElements()}Wt._insertElement(Pt,dn.NS.HTML);Wt.activeFormattingElements.pushElement(Wt.openElements.current,Pt)}function appletStartTagInBody(Wt,Pt){Wt._reconstructActiveFormattingElements();Wt._insertElement(Pt,dn.NS.HTML);Wt.activeFormattingElements.insertMarker();Wt.framesetOk=false}function tableStartTagInBody(Wt,Pt){if(Wt.treeAdapter.getDocumentMode(Wt.document)!==dn.DOCUMENT_MODE.QUIRKS&&Wt.openElements.hasInButtonScope(dn.TAG_ID.P)){Wt._closePElement()}Wt._insertElement(Pt,dn.NS.HTML);Wt.framesetOk=false;Wt.insertionMode=Gn.IN_TABLE}function areaStartTagInBody(Wt,Pt){Wt._reconstructActiveFormattingElements();Wt._appendElement(Pt,dn.NS.HTML);Wt.framesetOk=false;Pt.ackSelfClosing=true}function isHiddenInput(Wt){const Pt=(0,un.getTokenAttr)(Wt,dn.ATTRS.TYPE);return Pt!=null&&Pt.toLowerCase()===pn}function inputStartTagInBody(Wt,Pt){Wt._reconstructActiveFormattingElements();Wt._appendElement(Pt,dn.NS.HTML);if(!isHiddenInput(Pt)){Wt.framesetOk=false}Pt.ackSelfClosing=true}function paramStartTagInBody(Wt,Pt){Wt._appendElement(Pt,dn.NS.HTML);Pt.ackSelfClosing=true}function hrStartTagInBody(Wt,Pt){if(Wt.openElements.hasInButtonScope(dn.TAG_ID.P)){Wt._closePElement()}Wt._appendElement(Pt,dn.NS.HTML);Wt.framesetOk=false;Pt.ackSelfClosing=true}function imageStartTagInBody(Wt,Pt){Pt.tagName=dn.TAG_NAMES.IMG;Pt.tagID=dn.TAG_ID.IMG;areaStartTagInBody(Wt,Pt)}function textareaStartTagInBody(Wt,Pt){Wt._insertElement(Pt,dn.NS.HTML);Wt.skipNextNewLine=true;Wt.tokenizer.state=tn.TokenizerMode.RCDATA;Wt.originalInsertionMode=Wt.insertionMode;Wt.framesetOk=false;Wt.insertionMode=Gn.TEXT}function xmpStartTagInBody(Wt,Pt){if(Wt.openElements.hasInButtonScope(dn.TAG_ID.P)){Wt._closePElement()}Wt._reconstructActiveFormattingElements();Wt.framesetOk=false;Wt._switchToTextParsing(Pt,tn.TokenizerMode.RAWTEXT)}function iframeStartTagInBody(Wt,Pt){Wt.framesetOk=false;Wt._switchToTextParsing(Pt,tn.TokenizerMode.RAWTEXT)}function noembedStartTagInBody(Wt,Pt){Wt._switchToTextParsing(Pt,tn.TokenizerMode.RAWTEXT)}function selectStartTagInBody(Wt,Pt){Wt._reconstructActiveFormattingElements();Wt._insertElement(Pt,dn.NS.HTML);Wt.framesetOk=false;Wt.insertionMode=Wt.insertionMode===Gn.IN_TABLE||Wt.insertionMode===Gn.IN_CAPTION||Wt.insertionMode===Gn.IN_TABLE_BODY||Wt.insertionMode===Gn.IN_ROW||Wt.insertionMode===Gn.IN_CELL?Gn.IN_SELECT_IN_TABLE:Gn.IN_SELECT}function optgroupStartTagInBody(Wt,Pt){if(Wt.openElements.currentTagId===dn.TAG_ID.OPTION){Wt.openElements.pop()}Wt._reconstructActiveFormattingElements();Wt._insertElement(Pt,dn.NS.HTML)}function rbStartTagInBody(Wt,Pt){if(Wt.openElements.hasInScope(dn.TAG_ID.RUBY)){Wt.openElements.generateImpliedEndTags()}Wt._insertElement(Pt,dn.NS.HTML)}function rtStartTagInBody(Wt,Pt){if(Wt.openElements.hasInScope(dn.TAG_ID.RUBY)){Wt.openElements.generateImpliedEndTagsWithExclusion(dn.TAG_ID.RTC)}Wt._insertElement(Pt,dn.NS.HTML)}function mathStartTagInBody(Wt,Pt){Wt._reconstructActiveFormattingElements();sn.adjustTokenMathMLAttrs(Pt);sn.adjustTokenXMLAttrs(Pt);if(Pt.selfClosing){Wt._appendElement(Pt,dn.NS.MATHML)}else{Wt._insertElement(Pt,dn.NS.MATHML)}Pt.ackSelfClosing=true}function svgStartTagInBody(Wt,Pt){Wt._reconstructActiveFormattingElements();sn.adjustTokenSVGAttrs(Pt);sn.adjustTokenXMLAttrs(Pt);if(Pt.selfClosing){Wt._appendElement(Pt,dn.NS.SVG)}else{Wt._insertElement(Pt,dn.NS.SVG)}Pt.ackSelfClosing=true}function genericStartTagInBody(Wt,Pt){Wt._reconstructActiveFormattingElements();Wt._insertElement(Pt,dn.NS.HTML)}function startTagInBody(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.I:case dn.TAG_ID.S:case dn.TAG_ID.B:case dn.TAG_ID.U:case dn.TAG_ID.EM:case dn.TAG_ID.TT:case dn.TAG_ID.BIG:case dn.TAG_ID.CODE:case dn.TAG_ID.FONT:case dn.TAG_ID.SMALL:case dn.TAG_ID.STRIKE:case dn.TAG_ID.STRONG:{bStartTagInBody(Wt,Pt);break}case dn.TAG_ID.A:{aStartTagInBody(Wt,Pt);break}case dn.TAG_ID.H1:case dn.TAG_ID.H2:case dn.TAG_ID.H3:case dn.TAG_ID.H4:case dn.TAG_ID.H5:case dn.TAG_ID.H6:{numberedHeaderStartTagInBody(Wt,Pt);break}case dn.TAG_ID.P:case dn.TAG_ID.DL:case dn.TAG_ID.OL:case dn.TAG_ID.UL:case dn.TAG_ID.DIV:case dn.TAG_ID.DIR:case dn.TAG_ID.NAV:case dn.TAG_ID.MAIN:case dn.TAG_ID.MENU:case dn.TAG_ID.ASIDE:case dn.TAG_ID.CENTER:case dn.TAG_ID.FIGURE:case dn.TAG_ID.FOOTER:case dn.TAG_ID.HEADER:case dn.TAG_ID.HGROUP:case dn.TAG_ID.DIALOG:case dn.TAG_ID.DETAILS:case dn.TAG_ID.ADDRESS:case dn.TAG_ID.ARTICLE:case dn.TAG_ID.SECTION:case dn.TAG_ID.SUMMARY:case dn.TAG_ID.FIELDSET:case dn.TAG_ID.BLOCKQUOTE:case dn.TAG_ID.FIGCAPTION:{addressStartTagInBody(Wt,Pt);break}case dn.TAG_ID.LI:case dn.TAG_ID.DD:case dn.TAG_ID.DT:{listItemStartTagInBody(Wt,Pt);break}case dn.TAG_ID.BR:case dn.TAG_ID.IMG:case dn.TAG_ID.WBR:case dn.TAG_ID.AREA:case dn.TAG_ID.EMBED:case dn.TAG_ID.KEYGEN:{areaStartTagInBody(Wt,Pt);break}case dn.TAG_ID.HR:{hrStartTagInBody(Wt,Pt);break}case dn.TAG_ID.RB:case dn.TAG_ID.RTC:{rbStartTagInBody(Wt,Pt);break}case dn.TAG_ID.RT:case dn.TAG_ID.RP:{rtStartTagInBody(Wt,Pt);break}case dn.TAG_ID.PRE:case dn.TAG_ID.LISTING:{preStartTagInBody(Wt,Pt);break}case dn.TAG_ID.XMP:{xmpStartTagInBody(Wt,Pt);break}case dn.TAG_ID.SVG:{svgStartTagInBody(Wt,Pt);break}case dn.TAG_ID.HTML:{htmlStartTagInBody(Wt,Pt);break}case dn.TAG_ID.BASE:case dn.TAG_ID.LINK:case dn.TAG_ID.META:case dn.TAG_ID.STYLE:case dn.TAG_ID.TITLE:case dn.TAG_ID.SCRIPT:case dn.TAG_ID.BGSOUND:case dn.TAG_ID.BASEFONT:case dn.TAG_ID.TEMPLATE:{startTagInHead(Wt,Pt);break}case dn.TAG_ID.BODY:{bodyStartTagInBody(Wt,Pt);break}case dn.TAG_ID.FORM:{formStartTagInBody(Wt,Pt);break}case dn.TAG_ID.NOBR:{nobrStartTagInBody(Wt,Pt);break}case dn.TAG_ID.MATH:{mathStartTagInBody(Wt,Pt);break}case dn.TAG_ID.TABLE:{tableStartTagInBody(Wt,Pt);break}case dn.TAG_ID.INPUT:{inputStartTagInBody(Wt,Pt);break}case dn.TAG_ID.PARAM:case dn.TAG_ID.TRACK:case dn.TAG_ID.SOURCE:{paramStartTagInBody(Wt,Pt);break}case dn.TAG_ID.IMAGE:{imageStartTagInBody(Wt,Pt);break}case dn.TAG_ID.BUTTON:{buttonStartTagInBody(Wt,Pt);break}case dn.TAG_ID.APPLET:case dn.TAG_ID.OBJECT:case dn.TAG_ID.MARQUEE:{appletStartTagInBody(Wt,Pt);break}case dn.TAG_ID.IFRAME:{iframeStartTagInBody(Wt,Pt);break}case dn.TAG_ID.SELECT:{selectStartTagInBody(Wt,Pt);break}case dn.TAG_ID.OPTION:case dn.TAG_ID.OPTGROUP:{optgroupStartTagInBody(Wt,Pt);break}case dn.TAG_ID.NOEMBED:{noembedStartTagInBody(Wt,Pt);break}case dn.TAG_ID.FRAMESET:{framesetStartTagInBody(Wt,Pt);break}case dn.TAG_ID.TEXTAREA:{textareaStartTagInBody(Wt,Pt);break}case dn.TAG_ID.NOSCRIPT:{if(Wt.options.scriptingEnabled){noembedStartTagInBody(Wt,Pt)}else{genericStartTagInBody(Wt,Pt)}break}case dn.TAG_ID.PLAINTEXT:{plaintextStartTagInBody(Wt,Pt);break}case dn.TAG_ID.COL:case dn.TAG_ID.TH:case dn.TAG_ID.TD:case dn.TAG_ID.TR:case dn.TAG_ID.HEAD:case dn.TAG_ID.FRAME:case dn.TAG_ID.TBODY:case dn.TAG_ID.TFOOT:case dn.TAG_ID.THEAD:case dn.TAG_ID.CAPTION:case dn.TAG_ID.COLGROUP:{break}default:{genericStartTagInBody(Wt,Pt)}}}function bodyEndTagInBody(Wt,Pt){if(Wt.openElements.hasInScope(dn.TAG_ID.BODY)){Wt.insertionMode=Gn.AFTER_BODY;if(Wt.options.sourceCodeLocationInfo){const en=Wt.openElements.tryPeekProperlyNestedBodyElement();if(en){Wt._setEndLocation(en,Pt)}}}}function htmlEndTagInBody(Wt,Pt){if(Wt.openElements.hasInScope(dn.TAG_ID.BODY)){Wt.insertionMode=Gn.AFTER_BODY;endTagAfterBody(Wt,Pt)}}function addressEndTagInBody(Wt,Pt){const en=Pt.tagID;if(Wt.openElements.hasInScope(en)){Wt.openElements.generateImpliedEndTags();Wt.openElements.popUntilTagNamePopped(en)}}function formEndTagInBody(Wt){const Pt=Wt.openElements.tmplCount>0;const{formElement:en}=Wt;if(!Pt){Wt.formElement=null}if((en||Pt)&&Wt.openElements.hasInScope(dn.TAG_ID.FORM)){Wt.openElements.generateImpliedEndTags();if(Pt){Wt.openElements.popUntilTagNamePopped(dn.TAG_ID.FORM)}else if(en){Wt.openElements.remove(en)}}}function pEndTagInBody(Wt){if(!Wt.openElements.hasInButtonScope(dn.TAG_ID.P)){Wt._insertFakeElement(dn.TAG_NAMES.P,dn.TAG_ID.P)}Wt._closePElement()}function liEndTagInBody(Wt){if(Wt.openElements.hasInListItemScope(dn.TAG_ID.LI)){Wt.openElements.generateImpliedEndTagsWithExclusion(dn.TAG_ID.LI);Wt.openElements.popUntilTagNamePopped(dn.TAG_ID.LI)}}function ddEndTagInBody(Wt,Pt){const en=Pt.tagID;if(Wt.openElements.hasInScope(en)){Wt.openElements.generateImpliedEndTagsWithExclusion(en);Wt.openElements.popUntilTagNamePopped(en)}}function numberedHeaderEndTagInBody(Wt){if(Wt.openElements.hasNumberedHeaderInScope()){Wt.openElements.generateImpliedEndTags();Wt.openElements.popUntilNumberedHeaderPopped()}}function appletEndTagInBody(Wt,Pt){const en=Pt.tagID;if(Wt.openElements.hasInScope(en)){Wt.openElements.generateImpliedEndTags();Wt.openElements.popUntilTagNamePopped(en);Wt.activeFormattingElements.clearToLastMarker()}}function brEndTagInBody(Wt){Wt._reconstructActiveFormattingElements();Wt._insertFakeElement(dn.TAG_NAMES.BR,dn.TAG_ID.BR);Wt.openElements.pop();Wt.framesetOk=false}function genericEndTagInBody(Wt,Pt){const en=Pt.tagName;const tn=Pt.tagID;for(let Pt=Wt.openElements.stackTop;Pt>0;Pt--){const nn=Wt.openElements.items[Pt];const an=Wt.openElements.tagIDs[Pt];if(tn===an&&(tn!==dn.TAG_ID.UNKNOWN||Wt.treeAdapter.getTagName(nn)===en)){Wt.openElements.generateImpliedEndTagsWithExclusion(tn);if(Wt.openElements.stackTop>=Pt)Wt.openElements.shortenToLength(Pt);break}if(Wt._isSpecialElement(nn,an)){break}}}function endTagInBody(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.A:case dn.TAG_ID.B:case dn.TAG_ID.I:case dn.TAG_ID.S:case dn.TAG_ID.U:case dn.TAG_ID.EM:case dn.TAG_ID.TT:case dn.TAG_ID.BIG:case dn.TAG_ID.CODE:case dn.TAG_ID.FONT:case dn.TAG_ID.NOBR:case dn.TAG_ID.SMALL:case dn.TAG_ID.STRIKE:case dn.TAG_ID.STRONG:{callAdoptionAgency(Wt,Pt);break}case dn.TAG_ID.P:{pEndTagInBody(Wt);break}case dn.TAG_ID.DL:case dn.TAG_ID.UL:case dn.TAG_ID.OL:case dn.TAG_ID.DIR:case dn.TAG_ID.DIV:case dn.TAG_ID.NAV:case dn.TAG_ID.PRE:case dn.TAG_ID.MAIN:case dn.TAG_ID.MENU:case dn.TAG_ID.ASIDE:case dn.TAG_ID.BUTTON:case dn.TAG_ID.CENTER:case dn.TAG_ID.FIGURE:case dn.TAG_ID.FOOTER:case dn.TAG_ID.HEADER:case dn.TAG_ID.HGROUP:case dn.TAG_ID.DIALOG:case dn.TAG_ID.ADDRESS:case dn.TAG_ID.ARTICLE:case dn.TAG_ID.DETAILS:case dn.TAG_ID.SECTION:case dn.TAG_ID.SUMMARY:case dn.TAG_ID.LISTING:case dn.TAG_ID.FIELDSET:case dn.TAG_ID.BLOCKQUOTE:case dn.TAG_ID.FIGCAPTION:{addressEndTagInBody(Wt,Pt);break}case dn.TAG_ID.LI:{liEndTagInBody(Wt);break}case dn.TAG_ID.DD:case dn.TAG_ID.DT:{ddEndTagInBody(Wt,Pt);break}case dn.TAG_ID.H1:case dn.TAG_ID.H2:case dn.TAG_ID.H3:case dn.TAG_ID.H4:case dn.TAG_ID.H5:case dn.TAG_ID.H6:{numberedHeaderEndTagInBody(Wt);break}case dn.TAG_ID.BR:{brEndTagInBody(Wt);break}case dn.TAG_ID.BODY:{bodyEndTagInBody(Wt,Pt);break}case dn.TAG_ID.HTML:{htmlEndTagInBody(Wt,Pt);break}case dn.TAG_ID.FORM:{formEndTagInBody(Wt);break}case dn.TAG_ID.APPLET:case dn.TAG_ID.OBJECT:case dn.TAG_ID.MARQUEE:{appletEndTagInBody(Wt,Pt);break}case dn.TAG_ID.TEMPLATE:{templateEndTagInHead(Wt,Pt);break}default:{genericEndTagInBody(Wt,Pt)}}}function eofInBody(Wt,Pt){if(Wt.tmplInsertionModeStack.length>0){eofInTemplate(Wt,Pt)}else{stopParsing(Wt,Pt)}}function endTagInText(Wt,Pt){var en;if(Pt.tagID===dn.TAG_ID.SCRIPT){(en=Wt.scriptHandler)===null||en===void 0?void 0:en.call(Wt,Wt.openElements.current)}Wt.openElements.pop();Wt.insertionMode=Wt.originalInsertionMode}function eofInText(Wt,Pt){Wt._err(Pt,on.ERR.eofInElementThatCanContainOnlyText);Wt.openElements.pop();Wt.insertionMode=Wt.originalInsertionMode;Wt.onEof(Pt)}function characterInTable(Wt,Pt){if(Zn.has(Wt.openElements.currentTagId)){Wt.pendingCharacterTokens.length=0;Wt.hasNonWhitespacePendingCharacterToken=false;Wt.originalInsertionMode=Wt.insertionMode;Wt.insertionMode=Gn.IN_TABLE_TEXT;switch(Pt.type){case un.TokenType.CHARACTER:{characterInTableText(Wt,Pt);break}case un.TokenType.WHITESPACE_CHARACTER:{whitespaceCharacterInTableText(Wt,Pt);break}}}else{tokenInTable(Wt,Pt)}}function captionStartTagInTable(Wt,Pt){Wt.openElements.clearBackToTableContext();Wt.activeFormattingElements.insertMarker();Wt._insertElement(Pt,dn.NS.HTML);Wt.insertionMode=Gn.IN_CAPTION}function colgroupStartTagInTable(Wt,Pt){Wt.openElements.clearBackToTableContext();Wt._insertElement(Pt,dn.NS.HTML);Wt.insertionMode=Gn.IN_COLUMN_GROUP}function colStartTagInTable(Wt,Pt){Wt.openElements.clearBackToTableContext();Wt._insertFakeElement(dn.TAG_NAMES.COLGROUP,dn.TAG_ID.COLGROUP);Wt.insertionMode=Gn.IN_COLUMN_GROUP;startTagInColumnGroup(Wt,Pt)}function tbodyStartTagInTable(Wt,Pt){Wt.openElements.clearBackToTableContext();Wt._insertElement(Pt,dn.NS.HTML);Wt.insertionMode=Gn.IN_TABLE_BODY}function tdStartTagInTable(Wt,Pt){Wt.openElements.clearBackToTableContext();Wt._insertFakeElement(dn.TAG_NAMES.TBODY,dn.TAG_ID.TBODY);Wt.insertionMode=Gn.IN_TABLE_BODY;startTagInTableBody(Wt,Pt)}function tableStartTagInTable(Wt,Pt){if(Wt.openElements.hasInTableScope(dn.TAG_ID.TABLE)){Wt.openElements.popUntilTagNamePopped(dn.TAG_ID.TABLE);Wt._resetInsertionMode();Wt._processStartTag(Pt)}}function inputStartTagInTable(Wt,Pt){if(isHiddenInput(Pt)){Wt._appendElement(Pt,dn.NS.HTML)}else{tokenInTable(Wt,Pt)}Pt.ackSelfClosing=true}function formStartTagInTable(Wt,Pt){if(!Wt.formElement&&Wt.openElements.tmplCount===0){Wt._insertElement(Pt,dn.NS.HTML);Wt.formElement=Wt.openElements.current;Wt.openElements.pop()}}function startTagInTable(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.TD:case dn.TAG_ID.TH:case dn.TAG_ID.TR:{tdStartTagInTable(Wt,Pt);break}case dn.TAG_ID.STYLE:case dn.TAG_ID.SCRIPT:case dn.TAG_ID.TEMPLATE:{startTagInHead(Wt,Pt);break}case dn.TAG_ID.COL:{colStartTagInTable(Wt,Pt);break}case dn.TAG_ID.FORM:{formStartTagInTable(Wt,Pt);break}case dn.TAG_ID.TABLE:{tableStartTagInTable(Wt,Pt);break}case dn.TAG_ID.TBODY:case dn.TAG_ID.TFOOT:case dn.TAG_ID.THEAD:{tbodyStartTagInTable(Wt,Pt);break}case dn.TAG_ID.INPUT:{inputStartTagInTable(Wt,Pt);break}case dn.TAG_ID.CAPTION:{captionStartTagInTable(Wt,Pt);break}case dn.TAG_ID.COLGROUP:{colgroupStartTagInTable(Wt,Pt);break}default:{tokenInTable(Wt,Pt)}}}function endTagInTable(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.TABLE:{if(Wt.openElements.hasInTableScope(dn.TAG_ID.TABLE)){Wt.openElements.popUntilTagNamePopped(dn.TAG_ID.TABLE);Wt._resetInsertionMode()}break}case dn.TAG_ID.TEMPLATE:{templateEndTagInHead(Wt,Pt);break}case dn.TAG_ID.BODY:case dn.TAG_ID.CAPTION:case dn.TAG_ID.COL:case dn.TAG_ID.COLGROUP:case dn.TAG_ID.HTML:case dn.TAG_ID.TBODY:case dn.TAG_ID.TD:case dn.TAG_ID.TFOOT:case dn.TAG_ID.TH:case dn.TAG_ID.THEAD:case dn.TAG_ID.TR:{break}default:{tokenInTable(Wt,Pt)}}}function tokenInTable(Wt,Pt){const en=Wt.fosterParentingEnabled;Wt.fosterParentingEnabled=true;modeInBody(Wt,Pt);Wt.fosterParentingEnabled=en}function whitespaceCharacterInTableText(Wt,Pt){Wt.pendingCharacterTokens.push(Pt)}function characterInTableText(Wt,Pt){Wt.pendingCharacterTokens.push(Pt);Wt.hasNonWhitespacePendingCharacterToken=true}function tokenInTableText(Wt,Pt){let en=0;if(Wt.hasNonWhitespacePendingCharacterToken){for(;en0&&Wt.openElements.currentTagId===dn.TAG_ID.OPTION&&Wt.openElements.tagIDs[Wt.openElements.stackTop-1]===dn.TAG_ID.OPTGROUP){Wt.openElements.pop()}if(Wt.openElements.currentTagId===dn.TAG_ID.OPTGROUP){Wt.openElements.pop()}break}case dn.TAG_ID.OPTION:{if(Wt.openElements.currentTagId===dn.TAG_ID.OPTION){Wt.openElements.pop()}break}case dn.TAG_ID.SELECT:{if(Wt.openElements.hasInSelectScope(dn.TAG_ID.SELECT)){Wt.openElements.popUntilTagNamePopped(dn.TAG_ID.SELECT);Wt._resetInsertionMode()}break}case dn.TAG_ID.TEMPLATE:{templateEndTagInHead(Wt,Pt);break}default:}}function startTagInSelectInTable(Wt,Pt){const en=Pt.tagID;if(en===dn.TAG_ID.CAPTION||en===dn.TAG_ID.TABLE||en===dn.TAG_ID.TBODY||en===dn.TAG_ID.TFOOT||en===dn.TAG_ID.THEAD||en===dn.TAG_ID.TR||en===dn.TAG_ID.TD||en===dn.TAG_ID.TH){Wt.openElements.popUntilTagNamePopped(dn.TAG_ID.SELECT);Wt._resetInsertionMode();Wt._processStartTag(Pt)}else{startTagInSelect(Wt,Pt)}}function endTagInSelectInTable(Wt,Pt){const en=Pt.tagID;if(en===dn.TAG_ID.CAPTION||en===dn.TAG_ID.TABLE||en===dn.TAG_ID.TBODY||en===dn.TAG_ID.TFOOT||en===dn.TAG_ID.THEAD||en===dn.TAG_ID.TR||en===dn.TAG_ID.TD||en===dn.TAG_ID.TH){if(Wt.openElements.hasInTableScope(en)){Wt.openElements.popUntilTagNamePopped(dn.TAG_ID.SELECT);Wt._resetInsertionMode();Wt.onEndTag(Pt)}}else{endTagInSelect(Wt,Pt)}}function startTagInTemplate(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.BASE:case dn.TAG_ID.BASEFONT:case dn.TAG_ID.BGSOUND:case dn.TAG_ID.LINK:case dn.TAG_ID.META:case dn.TAG_ID.NOFRAMES:case dn.TAG_ID.SCRIPT:case dn.TAG_ID.STYLE:case dn.TAG_ID.TEMPLATE:case dn.TAG_ID.TITLE:{startTagInHead(Wt,Pt);break}case dn.TAG_ID.CAPTION:case dn.TAG_ID.COLGROUP:case dn.TAG_ID.TBODY:case dn.TAG_ID.TFOOT:case dn.TAG_ID.THEAD:{Wt.tmplInsertionModeStack[0]=Gn.IN_TABLE;Wt.insertionMode=Gn.IN_TABLE;startTagInTable(Wt,Pt);break}case dn.TAG_ID.COL:{Wt.tmplInsertionModeStack[0]=Gn.IN_COLUMN_GROUP;Wt.insertionMode=Gn.IN_COLUMN_GROUP;startTagInColumnGroup(Wt,Pt);break}case dn.TAG_ID.TR:{Wt.tmplInsertionModeStack[0]=Gn.IN_TABLE_BODY;Wt.insertionMode=Gn.IN_TABLE_BODY;startTagInTableBody(Wt,Pt);break}case dn.TAG_ID.TD:case dn.TAG_ID.TH:{Wt.tmplInsertionModeStack[0]=Gn.IN_ROW;Wt.insertionMode=Gn.IN_ROW;startTagInRow(Wt,Pt);break}default:{Wt.tmplInsertionModeStack[0]=Gn.IN_BODY;Wt.insertionMode=Gn.IN_BODY;startTagInBody(Wt,Pt)}}}function endTagInTemplate(Wt,Pt){if(Pt.tagID===dn.TAG_ID.TEMPLATE){templateEndTagInHead(Wt,Pt)}}function eofInTemplate(Wt,Pt){if(Wt.openElements.tmplCount>0){Wt.openElements.popUntilTagNamePopped(dn.TAG_ID.TEMPLATE);Wt.activeFormattingElements.clearToLastMarker();Wt.tmplInsertionModeStack.shift();Wt._resetInsertionMode();Wt.onEof(Pt)}else{stopParsing(Wt,Pt)}}function startTagAfterBody(Wt,Pt){if(Pt.tagID===dn.TAG_ID.HTML){startTagInBody(Wt,Pt)}else{tokenAfterBody(Wt,Pt)}}function endTagAfterBody(Wt,Pt){var en;if(Pt.tagID===dn.TAG_ID.HTML){if(!Wt.fragmentContext){Wt.insertionMode=Gn.AFTER_AFTER_BODY}if(Wt.options.sourceCodeLocationInfo&&Wt.openElements.tagIDs[0]===dn.TAG_ID.HTML){Wt._setEndLocation(Wt.openElements.items[0],Pt);const tn=Wt.openElements.items[1];if(tn&&!((en=Wt.treeAdapter.getNodeSourceCodeLocation(tn))===null||en===void 0?void 0:en.endTag)){Wt._setEndLocation(tn,Pt)}}}else{tokenAfterBody(Wt,Pt)}}function tokenAfterBody(Wt,Pt){Wt.insertionMode=Gn.IN_BODY;modeInBody(Wt,Pt)}function startTagInFrameset(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.HTML:{startTagInBody(Wt,Pt);break}case dn.TAG_ID.FRAMESET:{Wt._insertElement(Pt,dn.NS.HTML);break}case dn.TAG_ID.FRAME:{Wt._appendElement(Pt,dn.NS.HTML);Pt.ackSelfClosing=true;break}case dn.TAG_ID.NOFRAMES:{startTagInHead(Wt,Pt);break}default:}}function endTagInFrameset(Wt,Pt){if(Pt.tagID===dn.TAG_ID.FRAMESET&&!Wt.openElements.isRootHtmlElementCurrent()){Wt.openElements.pop();if(!Wt.fragmentContext&&Wt.openElements.currentTagId!==dn.TAG_ID.FRAMESET){Wt.insertionMode=Gn.AFTER_FRAMESET}}}function startTagAfterFrameset(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.HTML:{startTagInBody(Wt,Pt);break}case dn.TAG_ID.NOFRAMES:{startTagInHead(Wt,Pt);break}default:}}function endTagAfterFrameset(Wt,Pt){if(Pt.tagID===dn.TAG_ID.HTML){Wt.insertionMode=Gn.AFTER_AFTER_FRAMESET}}function startTagAfterAfterBody(Wt,Pt){if(Pt.tagID===dn.TAG_ID.HTML){startTagInBody(Wt,Pt)}else{tokenAfterAfterBody(Wt,Pt)}}function tokenAfterAfterBody(Wt,Pt){Wt.insertionMode=Gn.IN_BODY;modeInBody(Wt,Pt)}function startTagAfterAfterFrameset(Wt,Pt){switch(Pt.tagID){case dn.TAG_ID.HTML:{startTagInBody(Wt,Pt);break}case dn.TAG_ID.NOFRAMES:{startTagInHead(Wt,Pt);break}default:}}function nullCharacterInForeignContent(Wt,Pt){Pt.chars=cn.REPLACEMENT_CHARACTER;Wt._insertCharacters(Pt)}function characterInForeignContent(Wt,Pt){Wt._insertCharacters(Pt);Wt.framesetOk=false}function popUntilHtmlOrIntegrationPoint(Wt){while(Wt.treeAdapter.getNamespaceURI(Wt.openElements.current)!==dn.NS.HTML&&!Wt._isIntegrationPoint(Wt.openElements.currentTagId,Wt.openElements.current)){Wt.openElements.pop()}}function startTagInForeignContent(Wt,Pt){if(sn.causesExit(Pt)){popUntilHtmlOrIntegrationPoint(Wt);Wt._startTagOutsideForeignContent(Pt)}else{const en=Wt._getAdjustedCurrentElement();const tn=Wt.treeAdapter.getNamespaceURI(en);if(tn===dn.NS.MATHML){sn.adjustTokenMathMLAttrs(Pt)}else if(tn===dn.NS.SVG){sn.adjustTokenSVGTagName(Pt);sn.adjustTokenSVGAttrs(Pt)}sn.adjustTokenXMLAttrs(Pt);if(Pt.selfClosing){Wt._appendElement(Pt,tn)}else{Wt._insertElement(Pt,tn)}Pt.ackSelfClosing=true}}function endTagInForeignContent(Wt,Pt){if(Pt.tagID===dn.TAG_ID.P||Pt.tagID===dn.TAG_ID.BR){popUntilHtmlOrIntegrationPoint(Wt);Wt._endTagOutsideForeignContent(Pt);return}for(let en=Wt.openElements.stackTop;en>0;en--){const tn=Wt.openElements.items[en];if(Wt.treeAdapter.getNamespaceURI(tn)===dn.NS.HTML){Wt._endTagOutsideForeignContent(Pt);break}const nn=Wt.treeAdapter.getTagName(tn);if(nn.toLowerCase()===Pt.tagName){Pt.tagName=nn;Wt.openElements.shortenToLength(en);break}}}},54857:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.OpenElementStack=void 0;const tn=en(81510);const nn=new Set([tn.TAG_ID.DD,tn.TAG_ID.DT,tn.TAG_ID.LI,tn.TAG_ID.OPTGROUP,tn.TAG_ID.OPTION,tn.TAG_ID.P,tn.TAG_ID.RB,tn.TAG_ID.RP,tn.TAG_ID.RT,tn.TAG_ID.RTC]);const an=new Set([...nn,tn.TAG_ID.CAPTION,tn.TAG_ID.COLGROUP,tn.TAG_ID.TBODY,tn.TAG_ID.TD,tn.TAG_ID.TFOOT,tn.TAG_ID.TH,tn.TAG_ID.THEAD,tn.TAG_ID.TR]);const rn=new Map([[tn.TAG_ID.APPLET,tn.NS.HTML],[tn.TAG_ID.CAPTION,tn.NS.HTML],[tn.TAG_ID.HTML,tn.NS.HTML],[tn.TAG_ID.MARQUEE,tn.NS.HTML],[tn.TAG_ID.OBJECT,tn.NS.HTML],[tn.TAG_ID.TABLE,tn.NS.HTML],[tn.TAG_ID.TD,tn.NS.HTML],[tn.TAG_ID.TEMPLATE,tn.NS.HTML],[tn.TAG_ID.TH,tn.NS.HTML],[tn.TAG_ID.ANNOTATION_XML,tn.NS.MATHML],[tn.TAG_ID.MI,tn.NS.MATHML],[tn.TAG_ID.MN,tn.NS.MATHML],[tn.TAG_ID.MO,tn.NS.MATHML],[tn.TAG_ID.MS,tn.NS.MATHML],[tn.TAG_ID.MTEXT,tn.NS.MATHML],[tn.TAG_ID.DESC,tn.NS.SVG],[tn.TAG_ID.FOREIGN_OBJECT,tn.NS.SVG],[tn.TAG_ID.TITLE,tn.NS.SVG]]);const In=[tn.TAG_ID.H1,tn.TAG_ID.H2,tn.TAG_ID.H3,tn.TAG_ID.H4,tn.TAG_ID.H5,tn.TAG_ID.H6];const sn=[tn.TAG_ID.TR,tn.TAG_ID.TEMPLATE,tn.TAG_ID.HTML];const on=[tn.TAG_ID.TBODY,tn.TAG_ID.TFOOT,tn.TAG_ID.THEAD,tn.TAG_ID.TEMPLATE,tn.TAG_ID.HTML];const cn=[tn.TAG_ID.TABLE,tn.TAG_ID.TEMPLATE,tn.TAG_ID.HTML];const dn=[tn.TAG_ID.TD,tn.TAG_ID.TH];class OpenElementStack{get currentTmplContentOrNode(){return this._isInTemplate()?this.treeAdapter.getTemplateContent(this.current):this.current}constructor(Wt,Pt,en){this.treeAdapter=Pt;this.handler=en;this.items=[];this.tagIDs=[];this.stackTop=-1;this.tmplCount=0;this.currentTagId=tn.TAG_ID.UNKNOWN;this.current=Wt}_indexOf(Wt){return this.items.lastIndexOf(Wt,this.stackTop)}_isInTemplate(){return this.currentTagId===tn.TAG_ID.TEMPLATE&&this.treeAdapter.getNamespaceURI(this.current)===tn.NS.HTML}_updateCurrentElement(){this.current=this.items[this.stackTop];this.currentTagId=this.tagIDs[this.stackTop]}push(Wt,Pt){this.stackTop++;this.items[this.stackTop]=Wt;this.current=Wt;this.tagIDs[this.stackTop]=Pt;this.currentTagId=Pt;if(this._isInTemplate()){this.tmplCount++}this.handler.onItemPush(Wt,Pt,true)}pop(){const Wt=this.current;if(this.tmplCount>0&&this._isInTemplate()){this.tmplCount--}this.stackTop--;this._updateCurrentElement();this.handler.onItemPop(Wt,true)}replace(Wt,Pt){const en=this._indexOf(Wt);this.items[en]=Pt;if(en===this.stackTop){this.current=Pt}}insertAfter(Wt,Pt,en){const tn=this._indexOf(Wt)+1;this.items.splice(tn,0,Pt);this.tagIDs.splice(tn,0,en);this.stackTop++;if(tn===this.stackTop){this._updateCurrentElement()}this.handler.onItemPush(this.current,this.currentTagId,tn===this.stackTop)}popUntilTagNamePopped(Wt){let Pt=this.stackTop+1;do{Pt=this.tagIDs.lastIndexOf(Wt,Pt-1)}while(Pt>0&&this.treeAdapter.getNamespaceURI(this.items[Pt])!==tn.NS.HTML);this.shortenToLength(Pt<0?0:Pt)}shortenToLength(Wt){while(this.stackTop>=Wt){const Pt=this.current;if(this.tmplCount>0&&this._isInTemplate()){this.tmplCount-=1}this.stackTop--;this._updateCurrentElement();this.handler.onItemPop(Pt,this.stackTop=0;en--){if(Wt.includes(this.tagIDs[en])&&this.treeAdapter.getNamespaceURI(this.items[en])===Pt){return en}}return-1}clearBackTo(Wt,Pt){const en=this._indexOfTagNames(Wt,Pt);this.shortenToLength(en+1)}clearBackToTableContext(){this.clearBackTo(cn,tn.NS.HTML)}clearBackToTableBodyContext(){this.clearBackTo(on,tn.NS.HTML)}clearBackToTableRowContext(){this.clearBackTo(sn,tn.NS.HTML)}remove(Wt){const Pt=this._indexOf(Wt);if(Pt>=0){if(Pt===this.stackTop){this.pop()}else{this.items.splice(Pt,1);this.tagIDs.splice(Pt,1);this.stackTop--;this._updateCurrentElement();this.handler.onItemPop(Wt,false)}}}tryPeekProperlyNestedBodyElement(){return this.stackTop>=1&&this.tagIDs[1]===tn.TAG_ID.BODY?this.items[1]:null}contains(Wt){return this._indexOf(Wt)>-1}getCommonAncestor(Wt){const Pt=this._indexOf(Wt)-1;return Pt>=0?this.items[Pt]:null}isRootHtmlElementCurrent(){return this.stackTop===0&&this.tagIDs[0]===tn.TAG_ID.HTML}hasInScope(Wt){for(let Pt=this.stackTop;Pt>=0;Pt--){const en=this.tagIDs[Pt];const nn=this.treeAdapter.getNamespaceURI(this.items[Pt]);if(en===Wt&&nn===tn.NS.HTML){return true}if(rn.get(en)===nn){return false}}return true}hasNumberedHeaderInScope(){for(let Wt=this.stackTop;Wt>=0;Wt--){const Pt=this.tagIDs[Wt];const en=this.treeAdapter.getNamespaceURI(this.items[Wt]);if((0,tn.isNumberedHeader)(Pt)&&en===tn.NS.HTML){return true}if(rn.get(Pt)===en){return false}}return true}hasInListItemScope(Wt){for(let Pt=this.stackTop;Pt>=0;Pt--){const en=this.tagIDs[Pt];const nn=this.treeAdapter.getNamespaceURI(this.items[Pt]);if(en===Wt&&nn===tn.NS.HTML){return true}if((en===tn.TAG_ID.UL||en===tn.TAG_ID.OL)&&nn===tn.NS.HTML||rn.get(en)===nn){return false}}return true}hasInButtonScope(Wt){for(let Pt=this.stackTop;Pt>=0;Pt--){const en=this.tagIDs[Pt];const nn=this.treeAdapter.getNamespaceURI(this.items[Pt]);if(en===Wt&&nn===tn.NS.HTML){return true}if(en===tn.TAG_ID.BUTTON&&nn===tn.NS.HTML||rn.get(en)===nn){return false}}return true}hasInTableScope(Wt){for(let Pt=this.stackTop;Pt>=0;Pt--){const en=this.tagIDs[Pt];const nn=this.treeAdapter.getNamespaceURI(this.items[Pt]);if(nn!==tn.NS.HTML){continue}if(en===Wt){return true}if(en===tn.TAG_ID.TABLE||en===tn.TAG_ID.TEMPLATE||en===tn.TAG_ID.HTML){return false}}return true}hasTableBodyContextInTableScope(){for(let Wt=this.stackTop;Wt>=0;Wt--){const Pt=this.tagIDs[Wt];const en=this.treeAdapter.getNamespaceURI(this.items[Wt]);if(en!==tn.NS.HTML){continue}if(Pt===tn.TAG_ID.TBODY||Pt===tn.TAG_ID.THEAD||Pt===tn.TAG_ID.TFOOT){return true}if(Pt===tn.TAG_ID.TABLE||Pt===tn.TAG_ID.HTML){return false}}return true}hasInSelectScope(Wt){for(let Pt=this.stackTop;Pt>=0;Pt--){const en=this.tagIDs[Pt];const nn=this.treeAdapter.getNamespaceURI(this.items[Pt]);if(nn!==tn.NS.HTML){continue}if(en===Wt){return true}if(en!==tn.TAG_ID.OPTION&&en!==tn.TAG_ID.OPTGROUP){return false}}return true}generateImpliedEndTags(){while(nn.has(this.currentTagId)){this.pop()}}generateImpliedEndTagsThoroughly(){while(an.has(this.currentTagId)){this.pop()}}generateImpliedEndTagsWithExclusion(Wt){while(this.currentTagId!==Wt&&an.has(this.currentTagId)){this.pop()}}}Pt.OpenElementStack=OpenElementStack},47950:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.serializeOuter=Pt.serialize=void 0;const tn=en(81510);const nn=en(6104);const an=en(24760);const rn=new Set([tn.TAG_NAMES.AREA,tn.TAG_NAMES.BASE,tn.TAG_NAMES.BASEFONT,tn.TAG_NAMES.BGSOUND,tn.TAG_NAMES.BR,tn.TAG_NAMES.COL,tn.TAG_NAMES.EMBED,tn.TAG_NAMES.FRAME,tn.TAG_NAMES.HR,tn.TAG_NAMES.IMG,tn.TAG_NAMES.INPUT,tn.TAG_NAMES.KEYGEN,tn.TAG_NAMES.LINK,tn.TAG_NAMES.META,tn.TAG_NAMES.PARAM,tn.TAG_NAMES.SOURCE,tn.TAG_NAMES.TRACK,tn.TAG_NAMES.WBR]);function isVoidElement(Wt,Pt){return Pt.treeAdapter.isElementNode(Wt)&&Pt.treeAdapter.getNamespaceURI(Wt)===tn.NS.HTML&&rn.has(Pt.treeAdapter.getTagName(Wt))}const In={treeAdapter:an.defaultTreeAdapter,scriptingEnabled:true};function serialize(Wt,Pt){const en=Object.assign(Object.assign({},In),Pt);if(isVoidElement(Wt,en)){return""}return serializeChildNodes(Wt,en)}Pt.serialize=serialize;function serializeOuter(Wt,Pt){const en=Object.assign(Object.assign({},In),Pt);return serializeNode(Wt,en)}Pt.serializeOuter=serializeOuter;function serializeChildNodes(Wt,Pt){let en="";const nn=Pt.treeAdapter.isElementNode(Wt)&&Pt.treeAdapter.getTagName(Wt)===tn.TAG_NAMES.TEMPLATE&&Pt.treeAdapter.getNamespaceURI(Wt)===tn.NS.HTML?Pt.treeAdapter.getTemplateContent(Wt):Wt;const an=Pt.treeAdapter.getChildNodes(nn);if(an){for(const Wt of an){en+=serializeNode(Wt,Pt)}}return en}function serializeNode(Wt,Pt){if(Pt.treeAdapter.isElementNode(Wt)){return serializeElement(Wt,Pt)}if(Pt.treeAdapter.isTextNode(Wt)){return serializeTextNode(Wt,Pt)}if(Pt.treeAdapter.isCommentNode(Wt)){return serializeCommentNode(Wt,Pt)}if(Pt.treeAdapter.isDocumentTypeNode(Wt)){return serializeDocumentTypeNode(Wt,Pt)}return""}function serializeElement(Wt,Pt){const en=Pt.treeAdapter.getTagName(Wt);return`<${en}${serializeAttributes(Wt,Pt)}>${isVoidElement(Wt,Pt)?"":`${serializeChildNodes(Wt,Pt)}`}`}function serializeAttributes(Wt,{treeAdapter:Pt}){let en="";for(const an of Pt.getAttrList(Wt)){en+=" ";if(!an.namespace){en+=an.name}else switch(an.namespace){case tn.NS.XML:{en+=`xml:${an.name}`;break}case tn.NS.XMLNS:{if(an.name!=="xmlns"){en+="xmlns:"}en+=an.name;break}case tn.NS.XLINK:{en+=`xlink:${an.name}`;break}default:{en+=`${an.prefix}:${an.name}`}}en+=`="${(0,nn.escapeAttribute)(an.value)}"`}return en}function serializeTextNode(Wt,Pt){const{treeAdapter:en}=Pt;const an=en.getTextNodeContent(Wt);const rn=en.getParentNode(Wt);const In=rn&&en.isElementNode(rn)&&en.getTagName(rn);return In&&en.getNamespaceURI(rn)===tn.NS.HTML&&(0,tn.hasUnescapedText)(In,Pt.scriptingEnabled)?an:(0,nn.escapeText)(an)}function serializeCommentNode(Wt,{treeAdapter:Pt}){return`\x3c!--${Pt.getCommentNodeContent(Wt)}--\x3e`}function serializeDocumentTypeNode(Wt,{treeAdapter:Pt}){return``}},55007:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Tokenizer=Pt.TokenizerMode=void 0;const tn=en(50732);const nn=en(73616);const an=en(30294);const rn=en(31469);const In=en(69322);const sn=en(81510);const on=new Map([[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]);var cn;(function(Wt){Wt[Wt["DATA"]=0]="DATA";Wt[Wt["RCDATA"]=1]="RCDATA";Wt[Wt["RAWTEXT"]=2]="RAWTEXT";Wt[Wt["SCRIPT_DATA"]=3]="SCRIPT_DATA";Wt[Wt["PLAINTEXT"]=4]="PLAINTEXT";Wt[Wt["TAG_OPEN"]=5]="TAG_OPEN";Wt[Wt["END_TAG_OPEN"]=6]="END_TAG_OPEN";Wt[Wt["TAG_NAME"]=7]="TAG_NAME";Wt[Wt["RCDATA_LESS_THAN_SIGN"]=8]="RCDATA_LESS_THAN_SIGN";Wt[Wt["RCDATA_END_TAG_OPEN"]=9]="RCDATA_END_TAG_OPEN";Wt[Wt["RCDATA_END_TAG_NAME"]=10]="RCDATA_END_TAG_NAME";Wt[Wt["RAWTEXT_LESS_THAN_SIGN"]=11]="RAWTEXT_LESS_THAN_SIGN";Wt[Wt["RAWTEXT_END_TAG_OPEN"]=12]="RAWTEXT_END_TAG_OPEN";Wt[Wt["RAWTEXT_END_TAG_NAME"]=13]="RAWTEXT_END_TAG_NAME";Wt[Wt["SCRIPT_DATA_LESS_THAN_SIGN"]=14]="SCRIPT_DATA_LESS_THAN_SIGN";Wt[Wt["SCRIPT_DATA_END_TAG_OPEN"]=15]="SCRIPT_DATA_END_TAG_OPEN";Wt[Wt["SCRIPT_DATA_END_TAG_NAME"]=16]="SCRIPT_DATA_END_TAG_NAME";Wt[Wt["SCRIPT_DATA_ESCAPE_START"]=17]="SCRIPT_DATA_ESCAPE_START";Wt[Wt["SCRIPT_DATA_ESCAPE_START_DASH"]=18]="SCRIPT_DATA_ESCAPE_START_DASH";Wt[Wt["SCRIPT_DATA_ESCAPED"]=19]="SCRIPT_DATA_ESCAPED";Wt[Wt["SCRIPT_DATA_ESCAPED_DASH"]=20]="SCRIPT_DATA_ESCAPED_DASH";Wt[Wt["SCRIPT_DATA_ESCAPED_DASH_DASH"]=21]="SCRIPT_DATA_ESCAPED_DASH_DASH";Wt[Wt["SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN"]=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN";Wt[Wt["SCRIPT_DATA_ESCAPED_END_TAG_OPEN"]=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN";Wt[Wt["SCRIPT_DATA_ESCAPED_END_TAG_NAME"]=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME";Wt[Wt["SCRIPT_DATA_DOUBLE_ESCAPE_START"]=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START";Wt[Wt["SCRIPT_DATA_DOUBLE_ESCAPED"]=26]="SCRIPT_DATA_DOUBLE_ESCAPED";Wt[Wt["SCRIPT_DATA_DOUBLE_ESCAPED_DASH"]=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH";Wt[Wt["SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH"]=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH";Wt[Wt["SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN"]=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN";Wt[Wt["SCRIPT_DATA_DOUBLE_ESCAPE_END"]=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END";Wt[Wt["BEFORE_ATTRIBUTE_NAME"]=31]="BEFORE_ATTRIBUTE_NAME";Wt[Wt["ATTRIBUTE_NAME"]=32]="ATTRIBUTE_NAME";Wt[Wt["AFTER_ATTRIBUTE_NAME"]=33]="AFTER_ATTRIBUTE_NAME";Wt[Wt["BEFORE_ATTRIBUTE_VALUE"]=34]="BEFORE_ATTRIBUTE_VALUE";Wt[Wt["ATTRIBUTE_VALUE_DOUBLE_QUOTED"]=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED";Wt[Wt["ATTRIBUTE_VALUE_SINGLE_QUOTED"]=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED";Wt[Wt["ATTRIBUTE_VALUE_UNQUOTED"]=37]="ATTRIBUTE_VALUE_UNQUOTED";Wt[Wt["AFTER_ATTRIBUTE_VALUE_QUOTED"]=38]="AFTER_ATTRIBUTE_VALUE_QUOTED";Wt[Wt["SELF_CLOSING_START_TAG"]=39]="SELF_CLOSING_START_TAG";Wt[Wt["BOGUS_COMMENT"]=40]="BOGUS_COMMENT";Wt[Wt["MARKUP_DECLARATION_OPEN"]=41]="MARKUP_DECLARATION_OPEN";Wt[Wt["COMMENT_START"]=42]="COMMENT_START";Wt[Wt["COMMENT_START_DASH"]=43]="COMMENT_START_DASH";Wt[Wt["COMMENT"]=44]="COMMENT";Wt[Wt["COMMENT_LESS_THAN_SIGN"]=45]="COMMENT_LESS_THAN_SIGN";Wt[Wt["COMMENT_LESS_THAN_SIGN_BANG"]=46]="COMMENT_LESS_THAN_SIGN_BANG";Wt[Wt["COMMENT_LESS_THAN_SIGN_BANG_DASH"]=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH";Wt[Wt["COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH"]=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH";Wt[Wt["COMMENT_END_DASH"]=49]="COMMENT_END_DASH";Wt[Wt["COMMENT_END"]=50]="COMMENT_END";Wt[Wt["COMMENT_END_BANG"]=51]="COMMENT_END_BANG";Wt[Wt["DOCTYPE"]=52]="DOCTYPE";Wt[Wt["BEFORE_DOCTYPE_NAME"]=53]="BEFORE_DOCTYPE_NAME";Wt[Wt["DOCTYPE_NAME"]=54]="DOCTYPE_NAME";Wt[Wt["AFTER_DOCTYPE_NAME"]=55]="AFTER_DOCTYPE_NAME";Wt[Wt["AFTER_DOCTYPE_PUBLIC_KEYWORD"]=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD";Wt[Wt["BEFORE_DOCTYPE_PUBLIC_IDENTIFIER"]=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER";Wt[Wt["DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED"]=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED";Wt[Wt["DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED"]=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED";Wt[Wt["AFTER_DOCTYPE_PUBLIC_IDENTIFIER"]=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER";Wt[Wt["BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS"]=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS";Wt[Wt["AFTER_DOCTYPE_SYSTEM_KEYWORD"]=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD";Wt[Wt["BEFORE_DOCTYPE_SYSTEM_IDENTIFIER"]=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER";Wt[Wt["DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED"]=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED";Wt[Wt["DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED"]=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED";Wt[Wt["AFTER_DOCTYPE_SYSTEM_IDENTIFIER"]=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER";Wt[Wt["BOGUS_DOCTYPE"]=67]="BOGUS_DOCTYPE";Wt[Wt["CDATA_SECTION"]=68]="CDATA_SECTION";Wt[Wt["CDATA_SECTION_BRACKET"]=69]="CDATA_SECTION_BRACKET";Wt[Wt["CDATA_SECTION_END"]=70]="CDATA_SECTION_END";Wt[Wt["CHARACTER_REFERENCE"]=71]="CHARACTER_REFERENCE";Wt[Wt["NAMED_CHARACTER_REFERENCE"]=72]="NAMED_CHARACTER_REFERENCE";Wt[Wt["AMBIGUOUS_AMPERSAND"]=73]="AMBIGUOUS_AMPERSAND";Wt[Wt["NUMERIC_CHARACTER_REFERENCE"]=74]="NUMERIC_CHARACTER_REFERENCE";Wt[Wt["HEXADEMICAL_CHARACTER_REFERENCE_START"]=75]="HEXADEMICAL_CHARACTER_REFERENCE_START";Wt[Wt["HEXADEMICAL_CHARACTER_REFERENCE"]=76]="HEXADEMICAL_CHARACTER_REFERENCE";Wt[Wt["DECIMAL_CHARACTER_REFERENCE"]=77]="DECIMAL_CHARACTER_REFERENCE";Wt[Wt["NUMERIC_CHARACTER_REFERENCE_END"]=78]="NUMERIC_CHARACTER_REFERENCE_END"})(cn||(cn={}));Pt.TokenizerMode={DATA:cn.DATA,RCDATA:cn.RCDATA,RAWTEXT:cn.RAWTEXT,SCRIPT_DATA:cn.SCRIPT_DATA,PLAINTEXT:cn.PLAINTEXT,CDATA_SECTION:cn.CDATA_SECTION};function isAsciiDigit(Wt){return Wt>=nn.CODE_POINTS.DIGIT_0&&Wt<=nn.CODE_POINTS.DIGIT_9}function isAsciiUpper(Wt){return Wt>=nn.CODE_POINTS.LATIN_CAPITAL_A&&Wt<=nn.CODE_POINTS.LATIN_CAPITAL_Z}function isAsciiLower(Wt){return Wt>=nn.CODE_POINTS.LATIN_SMALL_A&&Wt<=nn.CODE_POINTS.LATIN_SMALL_Z}function isAsciiLetter(Wt){return isAsciiLower(Wt)||isAsciiUpper(Wt)}function isAsciiAlphaNumeric(Wt){return isAsciiLetter(Wt)||isAsciiDigit(Wt)}function isAsciiUpperHexDigit(Wt){return Wt>=nn.CODE_POINTS.LATIN_CAPITAL_A&&Wt<=nn.CODE_POINTS.LATIN_CAPITAL_F}function isAsciiLowerHexDigit(Wt){return Wt>=nn.CODE_POINTS.LATIN_SMALL_A&&Wt<=nn.CODE_POINTS.LATIN_SMALL_F}function isAsciiHexDigit(Wt){return isAsciiDigit(Wt)||isAsciiUpperHexDigit(Wt)||isAsciiLowerHexDigit(Wt)}function toAsciiLower(Wt){return Wt+32}function isWhitespace(Wt){return Wt===nn.CODE_POINTS.SPACE||Wt===nn.CODE_POINTS.LINE_FEED||Wt===nn.CODE_POINTS.TABULATION||Wt===nn.CODE_POINTS.FORM_FEED}function isEntityInAttributeInvalidEnd(Wt){return Wt===nn.CODE_POINTS.EQUALS_SIGN||isAsciiAlphaNumeric(Wt)}function isScriptDataDoubleEscapeSequenceEnd(Wt){return isWhitespace(Wt)||Wt===nn.CODE_POINTS.SOLIDUS||Wt===nn.CODE_POINTS.GREATER_THAN_SIGN}class Tokenizer{constructor(Wt,Pt){this.options=Wt;this.handler=Pt;this.paused=false;this.inLoop=false;this.inForeignNode=false;this.lastStartTagName="";this.active=false;this.state=cn.DATA;this.returnState=cn.DATA;this.charRefCode=-1;this.consumedAfterSnapshot=-1;this.currentCharacterToken=null;this.currentToken=null;this.currentAttr={name:"",value:""};this.preprocessor=new tn.Preprocessor(Pt);this.currentLocation=this.getCurrentLocation(-1)}_err(Wt){var Pt,en;(en=(Pt=this.handler).onParseError)===null||en===void 0?void 0:en.call(Pt,this.preprocessor.getError(Wt))}getCurrentLocation(Wt){if(!this.options.sourceCodeLocationInfo){return null}return{startLine:this.preprocessor.line,startCol:this.preprocessor.col-Wt,startOffset:this.preprocessor.offset-Wt,endLine:-1,endCol:-1,endOffset:-1}}_runParsingLoop(){if(this.inLoop)return;this.inLoop=true;while(this.active&&!this.paused){this.consumedAfterSnapshot=0;const Wt=this._consume();if(!this._ensureHibernation()){this._callState(Wt)}}this.inLoop=false}pause(){this.paused=true}resume(Wt){if(!this.paused){throw new Error("Parser was already resumed")}this.paused=false;if(this.inLoop)return;this._runParsingLoop();if(!this.paused){Wt===null||Wt===void 0?void 0:Wt()}}write(Wt,Pt,en){this.active=true;this.preprocessor.write(Wt,Pt);this._runParsingLoop();if(!this.paused){en===null||en===void 0?void 0:en()}}insertHtmlAtCurrentPos(Wt){this.active=true;this.preprocessor.insertHtmlAtCurrentPos(Wt);this._runParsingLoop()}_ensureHibernation(){if(this.preprocessor.endOfChunkHit){this._unconsume(this.consumedAfterSnapshot);this.active=false;return true}return false}_consume(){this.consumedAfterSnapshot++;return this.preprocessor.advance()}_unconsume(Wt){this.consumedAfterSnapshot-=Wt;this.preprocessor.retreat(Wt)}_reconsumeInState(Wt,Pt){this.state=Wt;this._callState(Pt)}_advanceBy(Wt){this.consumedAfterSnapshot+=Wt;for(let Pt=0;Pt0){this._err(In.ERR.endTagWithAttributes)}if(Wt.selfClosing){this._err(In.ERR.endTagWithTrailingSolidus)}this.handler.onEndTag(Wt)}this.preprocessor.dropParsedChunk()}emitCurrentComment(Wt){this.prepareToken(Wt);this.handler.onComment(Wt);this.preprocessor.dropParsedChunk()}emitCurrentDoctype(Wt){this.prepareToken(Wt);this.handler.onDoctype(Wt);this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(Wt){if(this.currentCharacterToken){if(Wt&&this.currentCharacterToken.location){this.currentCharacterToken.location.endLine=Wt.startLine;this.currentCharacterToken.location.endCol=Wt.startCol;this.currentCharacterToken.location.endOffset=Wt.startOffset}switch(this.currentCharacterToken.type){case an.TokenType.CHARACTER:{this.handler.onCharacter(this.currentCharacterToken);break}case an.TokenType.NULL_CHARACTER:{this.handler.onNullCharacter(this.currentCharacterToken);break}case an.TokenType.WHITESPACE_CHARACTER:{this.handler.onWhitespaceCharacter(this.currentCharacterToken);break}}this.currentCharacterToken=null}}_emitEOFToken(){const Wt=this.getCurrentLocation(0);if(Wt){Wt.endLine=Wt.startLine;Wt.endCol=Wt.startCol;Wt.endOffset=Wt.startOffset}this._emitCurrentCharacterToken(Wt);this.handler.onEof({type:an.TokenType.EOF,location:Wt});this.active=false}_appendCharToCurrentCharacterToken(Wt,Pt){if(this.currentCharacterToken){if(this.currentCharacterToken.type!==Wt){this.currentLocation=this.getCurrentLocation(0);this._emitCurrentCharacterToken(this.currentLocation);this.preprocessor.dropParsedChunk()}else{this.currentCharacterToken.chars+=Pt;return}}this._createCharacterToken(Wt,Pt)}_emitCodePoint(Wt){const Pt=isWhitespace(Wt)?an.TokenType.WHITESPACE_CHARACTER:Wt===nn.CODE_POINTS.NULL?an.TokenType.NULL_CHARACTER:an.TokenType.CHARACTER;this._appendCharToCurrentCharacterToken(Pt,String.fromCodePoint(Wt))}_emitChars(Wt){this._appendCharToCurrentCharacterToken(an.TokenType.CHARACTER,Wt)}_matchNamedCharacterReference(Wt){let Pt=null;let en=0;let tn=false;for(let an=0,In=rn.htmlDecodeTree[0];an>=0;Wt=this._consume()){an=(0,rn.determineBranch)(rn.htmlDecodeTree,In,an+1,Wt);if(an<0)break;en+=1;In=rn.htmlDecodeTree[an];const sn=In&rn.BinTrieFlags.VALUE_LENGTH;if(sn){const In=(sn>>14)-1;if(Wt!==nn.CODE_POINTS.SEMICOLON&&this._isCharacterReferenceInAttribute()&&isEntityInAttributeInvalidEnd(this.preprocessor.peek(1))){Pt=[nn.CODE_POINTS.AMPERSAND];an+=In}else{Pt=In===0?[rn.htmlDecodeTree[an]&~rn.BinTrieFlags.VALUE_LENGTH]:In===1?[rn.htmlDecodeTree[++an]]:[rn.htmlDecodeTree[++an],rn.htmlDecodeTree[++an]];en=0;tn=Wt!==nn.CODE_POINTS.SEMICOLON}if(In===0){this._consume();break}}}this._unconsume(en);if(tn&&!this.preprocessor.endOfChunkHit){this._err(In.ERR.missingSemicolonAfterCharacterReference)}this._unconsume(1);return Pt}_isCharacterReferenceInAttribute(){return this.returnState===cn.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===cn.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===cn.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(Wt){if(this._isCharacterReferenceInAttribute()){this.currentAttr.value+=String.fromCodePoint(Wt)}else{this._emitCodePoint(Wt)}}_callState(Wt){switch(this.state){case cn.DATA:{this._stateData(Wt);break}case cn.RCDATA:{this._stateRcdata(Wt);break}case cn.RAWTEXT:{this._stateRawtext(Wt);break}case cn.SCRIPT_DATA:{this._stateScriptData(Wt);break}case cn.PLAINTEXT:{this._statePlaintext(Wt);break}case cn.TAG_OPEN:{this._stateTagOpen(Wt);break}case cn.END_TAG_OPEN:{this._stateEndTagOpen(Wt);break}case cn.TAG_NAME:{this._stateTagName(Wt);break}case cn.RCDATA_LESS_THAN_SIGN:{this._stateRcdataLessThanSign(Wt);break}case cn.RCDATA_END_TAG_OPEN:{this._stateRcdataEndTagOpen(Wt);break}case cn.RCDATA_END_TAG_NAME:{this._stateRcdataEndTagName(Wt);break}case cn.RAWTEXT_LESS_THAN_SIGN:{this._stateRawtextLessThanSign(Wt);break}case cn.RAWTEXT_END_TAG_OPEN:{this._stateRawtextEndTagOpen(Wt);break}case cn.RAWTEXT_END_TAG_NAME:{this._stateRawtextEndTagName(Wt);break}case cn.SCRIPT_DATA_LESS_THAN_SIGN:{this._stateScriptDataLessThanSign(Wt);break}case cn.SCRIPT_DATA_END_TAG_OPEN:{this._stateScriptDataEndTagOpen(Wt);break}case cn.SCRIPT_DATA_END_TAG_NAME:{this._stateScriptDataEndTagName(Wt);break}case cn.SCRIPT_DATA_ESCAPE_START:{this._stateScriptDataEscapeStart(Wt);break}case cn.SCRIPT_DATA_ESCAPE_START_DASH:{this._stateScriptDataEscapeStartDash(Wt);break}case cn.SCRIPT_DATA_ESCAPED:{this._stateScriptDataEscaped(Wt);break}case cn.SCRIPT_DATA_ESCAPED_DASH:{this._stateScriptDataEscapedDash(Wt);break}case cn.SCRIPT_DATA_ESCAPED_DASH_DASH:{this._stateScriptDataEscapedDashDash(Wt);break}case cn.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataEscapedLessThanSign(Wt);break}case cn.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:{this._stateScriptDataEscapedEndTagOpen(Wt);break}case cn.SCRIPT_DATA_ESCAPED_END_TAG_NAME:{this._stateScriptDataEscapedEndTagName(Wt);break}case cn.SCRIPT_DATA_DOUBLE_ESCAPE_START:{this._stateScriptDataDoubleEscapeStart(Wt);break}case cn.SCRIPT_DATA_DOUBLE_ESCAPED:{this._stateScriptDataDoubleEscaped(Wt);break}case cn.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:{this._stateScriptDataDoubleEscapedDash(Wt);break}case cn.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:{this._stateScriptDataDoubleEscapedDashDash(Wt);break}case cn.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataDoubleEscapedLessThanSign(Wt);break}case cn.SCRIPT_DATA_DOUBLE_ESCAPE_END:{this._stateScriptDataDoubleEscapeEnd(Wt);break}case cn.BEFORE_ATTRIBUTE_NAME:{this._stateBeforeAttributeName(Wt);break}case cn.ATTRIBUTE_NAME:{this._stateAttributeName(Wt);break}case cn.AFTER_ATTRIBUTE_NAME:{this._stateAfterAttributeName(Wt);break}case cn.BEFORE_ATTRIBUTE_VALUE:{this._stateBeforeAttributeValue(Wt);break}case cn.ATTRIBUTE_VALUE_DOUBLE_QUOTED:{this._stateAttributeValueDoubleQuoted(Wt);break}case cn.ATTRIBUTE_VALUE_SINGLE_QUOTED:{this._stateAttributeValueSingleQuoted(Wt);break}case cn.ATTRIBUTE_VALUE_UNQUOTED:{this._stateAttributeValueUnquoted(Wt);break}case cn.AFTER_ATTRIBUTE_VALUE_QUOTED:{this._stateAfterAttributeValueQuoted(Wt);break}case cn.SELF_CLOSING_START_TAG:{this._stateSelfClosingStartTag(Wt);break}case cn.BOGUS_COMMENT:{this._stateBogusComment(Wt);break}case cn.MARKUP_DECLARATION_OPEN:{this._stateMarkupDeclarationOpen(Wt);break}case cn.COMMENT_START:{this._stateCommentStart(Wt);break}case cn.COMMENT_START_DASH:{this._stateCommentStartDash(Wt);break}case cn.COMMENT:{this._stateComment(Wt);break}case cn.COMMENT_LESS_THAN_SIGN:{this._stateCommentLessThanSign(Wt);break}case cn.COMMENT_LESS_THAN_SIGN_BANG:{this._stateCommentLessThanSignBang(Wt);break}case cn.COMMENT_LESS_THAN_SIGN_BANG_DASH:{this._stateCommentLessThanSignBangDash(Wt);break}case cn.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:{this._stateCommentLessThanSignBangDashDash(Wt);break}case cn.COMMENT_END_DASH:{this._stateCommentEndDash(Wt);break}case cn.COMMENT_END:{this._stateCommentEnd(Wt);break}case cn.COMMENT_END_BANG:{this._stateCommentEndBang(Wt);break}case cn.DOCTYPE:{this._stateDoctype(Wt);break}case cn.BEFORE_DOCTYPE_NAME:{this._stateBeforeDoctypeName(Wt);break}case cn.DOCTYPE_NAME:{this._stateDoctypeName(Wt);break}case cn.AFTER_DOCTYPE_NAME:{this._stateAfterDoctypeName(Wt);break}case cn.AFTER_DOCTYPE_PUBLIC_KEYWORD:{this._stateAfterDoctypePublicKeyword(Wt);break}case cn.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateBeforeDoctypePublicIdentifier(Wt);break}case cn.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypePublicIdentifierDoubleQuoted(Wt);break}case cn.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypePublicIdentifierSingleQuoted(Wt);break}case cn.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateAfterDoctypePublicIdentifier(Wt);break}case cn.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:{this._stateBetweenDoctypePublicAndSystemIdentifiers(Wt);break}case cn.AFTER_DOCTYPE_SYSTEM_KEYWORD:{this._stateAfterDoctypeSystemKeyword(Wt);break}case cn.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateBeforeDoctypeSystemIdentifier(Wt);break}case cn.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypeSystemIdentifierDoubleQuoted(Wt);break}case cn.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypeSystemIdentifierSingleQuoted(Wt);break}case cn.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateAfterDoctypeSystemIdentifier(Wt);break}case cn.BOGUS_DOCTYPE:{this._stateBogusDoctype(Wt);break}case cn.CDATA_SECTION:{this._stateCdataSection(Wt);break}case cn.CDATA_SECTION_BRACKET:{this._stateCdataSectionBracket(Wt);break}case cn.CDATA_SECTION_END:{this._stateCdataSectionEnd(Wt);break}case cn.CHARACTER_REFERENCE:{this._stateCharacterReference(Wt);break}case cn.NAMED_CHARACTER_REFERENCE:{this._stateNamedCharacterReference(Wt);break}case cn.AMBIGUOUS_AMPERSAND:{this._stateAmbiguousAmpersand(Wt);break}case cn.NUMERIC_CHARACTER_REFERENCE:{this._stateNumericCharacterReference(Wt);break}case cn.HEXADEMICAL_CHARACTER_REFERENCE_START:{this._stateHexademicalCharacterReferenceStart(Wt);break}case cn.HEXADEMICAL_CHARACTER_REFERENCE:{this._stateHexademicalCharacterReference(Wt);break}case cn.DECIMAL_CHARACTER_REFERENCE:{this._stateDecimalCharacterReference(Wt);break}case cn.NUMERIC_CHARACTER_REFERENCE_END:{this._stateNumericCharacterReferenceEnd(Wt);break}default:{throw new Error("Unknown state")}}}_stateData(Wt){switch(Wt){case nn.CODE_POINTS.LESS_THAN_SIGN:{this.state=cn.TAG_OPEN;break}case nn.CODE_POINTS.AMPERSAND:{this.returnState=cn.DATA;this.state=cn.CHARACTER_REFERENCE;break}case nn.CODE_POINTS.NULL:{this._err(In.ERR.unexpectedNullCharacter);this._emitCodePoint(Wt);break}case nn.CODE_POINTS.EOF:{this._emitEOFToken();break}default:{this._emitCodePoint(Wt)}}}_stateRcdata(Wt){switch(Wt){case nn.CODE_POINTS.AMPERSAND:{this.returnState=cn.RCDATA;this.state=cn.CHARACTER_REFERENCE;break}case nn.CODE_POINTS.LESS_THAN_SIGN:{this.state=cn.RCDATA_LESS_THAN_SIGN;break}case nn.CODE_POINTS.NULL:{this._err(In.ERR.unexpectedNullCharacter);this._emitChars(nn.REPLACEMENT_CHARACTER);break}case nn.CODE_POINTS.EOF:{this._emitEOFToken();break}default:{this._emitCodePoint(Wt)}}}_stateRawtext(Wt){switch(Wt){case nn.CODE_POINTS.LESS_THAN_SIGN:{this.state=cn.RAWTEXT_LESS_THAN_SIGN;break}case nn.CODE_POINTS.NULL:{this._err(In.ERR.unexpectedNullCharacter);this._emitChars(nn.REPLACEMENT_CHARACTER);break}case nn.CODE_POINTS.EOF:{this._emitEOFToken();break}default:{this._emitCodePoint(Wt)}}}_stateScriptData(Wt){switch(Wt){case nn.CODE_POINTS.LESS_THAN_SIGN:{this.state=cn.SCRIPT_DATA_LESS_THAN_SIGN;break}case nn.CODE_POINTS.NULL:{this._err(In.ERR.unexpectedNullCharacter);this._emitChars(nn.REPLACEMENT_CHARACTER);break}case nn.CODE_POINTS.EOF:{this._emitEOFToken();break}default:{this._emitCodePoint(Wt)}}}_statePlaintext(Wt){switch(Wt){case nn.CODE_POINTS.NULL:{this._err(In.ERR.unexpectedNullCharacter);this._emitChars(nn.REPLACEMENT_CHARACTER);break}case nn.CODE_POINTS.EOF:{this._emitEOFToken();break}default:{this._emitCodePoint(Wt)}}}_stateTagOpen(Wt){if(isAsciiLetter(Wt)){this._createStartTagToken();this.state=cn.TAG_NAME;this._stateTagName(Wt)}else switch(Wt){case nn.CODE_POINTS.EXCLAMATION_MARK:{this.state=cn.MARKUP_DECLARATION_OPEN;break}case nn.CODE_POINTS.SOLIDUS:{this.state=cn.END_TAG_OPEN;break}case nn.CODE_POINTS.QUESTION_MARK:{this._err(In.ERR.unexpectedQuestionMarkInsteadOfTagName);this._createCommentToken(1);this.state=cn.BOGUS_COMMENT;this._stateBogusComment(Wt);break}case nn.CODE_POINTS.EOF:{this._err(In.ERR.eofBeforeTagName);this._emitChars("<");this._emitEOFToken();break}default:{this._err(In.ERR.invalidFirstCharacterOfTagName);this._emitChars("<");this.state=cn.DATA;this._stateData(Wt)}}}_stateEndTagOpen(Wt){if(isAsciiLetter(Wt)){this._createEndTagToken();this.state=cn.TAG_NAME;this._stateTagName(Wt)}else switch(Wt){case nn.CODE_POINTS.GREATER_THAN_SIGN:{this._err(In.ERR.missingEndTagName);this.state=cn.DATA;break}case nn.CODE_POINTS.EOF:{this._err(In.ERR.eofBeforeTagName);this._emitChars("");break}case nn.CODE_POINTS.NULL:{this._err(In.ERR.unexpectedNullCharacter);this.state=cn.SCRIPT_DATA_ESCAPED;this._emitChars(nn.REPLACEMENT_CHARACTER);break}case nn.CODE_POINTS.EOF:{this._err(In.ERR.eofInScriptHtmlCommentLikeText);this._emitEOFToken();break}default:{this.state=cn.SCRIPT_DATA_ESCAPED;this._emitCodePoint(Wt)}}}_stateScriptDataEscapedLessThanSign(Wt){if(Wt===nn.CODE_POINTS.SOLIDUS){this.state=cn.SCRIPT_DATA_ESCAPED_END_TAG_OPEN}else if(isAsciiLetter(Wt)){this._emitChars("<");this.state=cn.SCRIPT_DATA_DOUBLE_ESCAPE_START;this._stateScriptDataDoubleEscapeStart(Wt)}else{this._emitChars("<");this.state=cn.SCRIPT_DATA_ESCAPED;this._stateScriptDataEscaped(Wt)}}_stateScriptDataEscapedEndTagOpen(Wt){if(isAsciiLetter(Wt)){this.state=cn.SCRIPT_DATA_ESCAPED_END_TAG_NAME;this._stateScriptDataEscapedEndTagName(Wt)}else{this._emitChars("");break}case nn.CODE_POINTS.NULL:{this._err(In.ERR.unexpectedNullCharacter);this.state=cn.SCRIPT_DATA_DOUBLE_ESCAPED;this._emitChars(nn.REPLACEMENT_CHARACTER);break}case nn.CODE_POINTS.EOF:{this._err(In.ERR.eofInScriptHtmlCommentLikeText);this._emitEOFToken();break}default:{this.state=cn.SCRIPT_DATA_DOUBLE_ESCAPED;this._emitCodePoint(Wt)}}}_stateScriptDataDoubleEscapedLessThanSign(Wt){if(Wt===nn.CODE_POINTS.SOLIDUS){this.state=cn.SCRIPT_DATA_DOUBLE_ESCAPE_END;this._emitChars("/")}else{this.state=cn.SCRIPT_DATA_DOUBLE_ESCAPED;this._stateScriptDataDoubleEscaped(Wt)}}_stateScriptDataDoubleEscapeEnd(Wt){if(this.preprocessor.startsWith(nn.SEQUENCES.SCRIPT,false)&&isScriptDataDoubleEscapeSequenceEnd(this.preprocessor.peek(nn.SEQUENCES.SCRIPT.length))){this._emitCodePoint(Wt);for(let Wt=0;Wt1114111){this._err(In.ERR.characterReferenceOutsideUnicodeRange);this.charRefCode=nn.CODE_POINTS.REPLACEMENT_CHARACTER}else if((0,nn.isSurrogate)(this.charRefCode)){this._err(In.ERR.surrogateCharacterReference);this.charRefCode=nn.CODE_POINTS.REPLACEMENT_CHARACTER}else if((0,nn.isUndefinedCodePoint)(this.charRefCode)){this._err(In.ERR.noncharacterCharacterReference)}else if((0,nn.isControlCodePoint)(this.charRefCode)||this.charRefCode===nn.CODE_POINTS.CARRIAGE_RETURN){this._err(In.ERR.controlCharacterReference);const Wt=on.get(this.charRefCode);if(Wt!==undefined){this.charRefCode=Wt}}this._flushCodePointConsumedAsCharacterReference(this.charRefCode);this._reconsumeInState(this.returnState,Wt)}}Pt.Tokenizer=Tokenizer},50732:(Wt,Pt,en)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.Preprocessor=void 0;const tn=en(73616);const nn=en(69322);const an=1<<16;class Preprocessor{constructor(Wt){this.handler=Wt;this.html="";this.pos=-1;this.lastGapPos=-2;this.gapStack=[];this.skipNextNewLine=false;this.lastChunkWritten=false;this.endOfChunkHit=false;this.bufferWaterline=an;this.isEol=false;this.lineStartPos=0;this.droppedBufferSize=0;this.line=1;this.lastErrOffset=-1}get col(){return this.pos-this.lineStartPos+Number(this.lastGapPos!==this.pos)}get offset(){return this.droppedBufferSize+this.pos}getError(Wt){const{line:Pt,col:en,offset:tn}=this;return{code:Wt,startLine:Pt,endLine:Pt,startCol:en,endCol:en,startOffset:tn,endOffset:tn}}_err(Wt){if(this.handler.onParseError&&this.lastErrOffset!==this.offset){this.lastErrOffset=this.offset;this.handler.onParseError(this.getError(Wt))}}_addGap(){this.gapStack.push(this.lastGapPos);this.lastGapPos=this.pos}_processSurrogate(Wt){if(this.pos!==this.html.length-1){const Pt=this.html.charCodeAt(this.pos+1);if((0,tn.isSurrogatePair)(Pt)){this.pos++;this._addGap();return(0,tn.getSurrogatePairCodePoint)(Wt,Pt)}}else if(!this.lastChunkWritten){this.endOfChunkHit=true;return tn.CODE_POINTS.EOF}this._err(nn.ERR.surrogateInInputStream);return Wt}willDropParsedChunk(){return this.pos>this.bufferWaterline}dropParsedChunk(){if(this.willDropParsedChunk()){this.html=this.html.substring(this.pos);this.lineStartPos-=this.pos;this.droppedBufferSize+=this.pos;this.pos=0;this.lastGapPos=-2;this.gapStack.length=0}}write(Wt,Pt){if(this.html.length>0){this.html+=Wt}else{this.html=Wt}this.endOfChunkHit=false;this.lastChunkWritten=Pt}insertHtmlAtCurrentPos(Wt){this.html=this.html.substring(0,this.pos+1)+Wt+this.html.substring(this.pos+1);this.endOfChunkHit=false}startsWith(Wt,Pt){if(this.pos+Wt.length>this.html.length){this.endOfChunkHit=!this.lastChunkWritten;return false}if(Pt){return this.html.startsWith(Wt,this.pos)}for(let Pt=0;Pt=this.html.length){this.endOfChunkHit=!this.lastChunkWritten;return tn.CODE_POINTS.EOF}const en=this.html.charCodeAt(Pt);return en===tn.CODE_POINTS.CARRIAGE_RETURN?tn.CODE_POINTS.LINE_FEED:en}advance(){this.pos++;if(this.isEol){this.isEol=false;this.line++;this.lineStartPos=this.pos}if(this.pos>=this.html.length){this.endOfChunkHit=!this.lastChunkWritten;return tn.CODE_POINTS.EOF}let Wt=this.html.charCodeAt(this.pos);if(Wt===tn.CODE_POINTS.CARRIAGE_RETURN){this.isEol=true;this.skipNextNewLine=true;return tn.CODE_POINTS.LINE_FEED}if(Wt===tn.CODE_POINTS.LINE_FEED){this.isEol=true;if(this.skipNextNewLine){this.line--;this.skipNextNewLine=false;this._addGap();return this.advance()}}this.skipNextNewLine=false;if((0,tn.isSurrogate)(Wt)){Wt=this._processSurrogate(Wt)}const Pt=this.handler.onParseError===null||Wt>31&&Wt<127||Wt===tn.CODE_POINTS.LINE_FEED||Wt===tn.CODE_POINTS.CARRIAGE_RETURN||Wt>159&&Wt<64976;if(!Pt){this._checkForProblematicCharacters(Wt)}return Wt}_checkForProblematicCharacters(Wt){if((0,tn.isControlCodePoint)(Wt)){this._err(nn.ERR.controlCharacterInInputStream)}else if((0,tn.isUndefinedCodePoint)(Wt)){this._err(nn.ERR.noncharacterInInputStream)}}retreat(Wt){this.pos-=Wt;while(this.pos{"use strict";Object.defineProperty(Pt,"__esModule",{value:true});Pt.defaultTreeAdapter=void 0;const tn=en(81510);function createTextNode(Wt){return{nodeName:"#text",value:Wt,parentNode:null}}Pt.defaultTreeAdapter={createDocument(){return{nodeName:"#document",mode:tn.DOCUMENT_MODE.NO_QUIRKS,childNodes:[]}},createDocumentFragment(){return{nodeName:"#document-fragment",childNodes:[]}},createElement(Wt,Pt,en){return{nodeName:Wt,tagName:Wt,attrs:en,namespaceURI:Pt,childNodes:[],parentNode:null}},createCommentNode(Wt){return{nodeName:"#comment",data:Wt,parentNode:null}},appendChild(Wt,Pt){Wt.childNodes.push(Pt);Pt.parentNode=Wt},insertBefore(Wt,Pt,en){const tn=Wt.childNodes.indexOf(en);Wt.childNodes.splice(tn,0,Pt);Pt.parentNode=Wt},setTemplateContent(Wt,Pt){Wt.content=Pt},getTemplateContent(Wt){return Wt.content},setDocumentType(Wt,en,tn,nn){const an=Wt.childNodes.find((Wt=>Wt.nodeName==="#documentType"));if(an){an.name=en;an.publicId=tn;an.systemId=nn}else{const an={nodeName:"#documentType",name:en,publicId:tn,systemId:nn,parentNode:null};Pt.defaultTreeAdapter.appendChild(Wt,an)}},setDocumentMode(Wt,Pt){Wt.mode=Pt},getDocumentMode(Wt){return Wt.mode},detachNode(Wt){if(Wt.parentNode){const Pt=Wt.parentNode.childNodes.indexOf(Wt);Wt.parentNode.childNodes.splice(Pt,1);Wt.parentNode=null}},insertText(Wt,en){if(Wt.childNodes.length>0){const tn=Wt.childNodes[Wt.childNodes.length-1];if(Pt.defaultTreeAdapter.isTextNode(tn)){tn.value+=en;return}}Pt.defaultTreeAdapter.appendChild(Wt,createTextNode(en))},insertTextBefore(Wt,en,tn){const nn=Wt.childNodes[Wt.childNodes.indexOf(tn)-1];if(nn&&Pt.defaultTreeAdapter.isTextNode(nn)){nn.value+=en}else{Pt.defaultTreeAdapter.insertBefore(Wt,createTextNode(en),tn)}},adoptAttributes(Wt,Pt){const en=new Set(Wt.attrs.map((Wt=>Wt.name)));for(let tn=0;tn{"use strict";var tn=en(41127);var nn=en(63301);var an=en(84454);var rn=en(92223);var In=en(87103);var sn=en(90334);var on=en(13142);function resolveCollection(Wt,Pt,en,tn,nn,an){const rn=en.type==="block-map"?In.resolveBlockMap(Wt,Pt,en,tn,an):en.type==="block-seq"?sn.resolveBlockSeq(Wt,Pt,en,tn,an):on.resolveFlowCollection(Wt,Pt,en,tn,an);const cn=rn.constructor;if(nn==="!"||nn===cn.tagName){rn.tag=cn.tagName;return rn}if(nn)rn.tag=nn;return rn}function composeCollection(Wt,Pt,en,In,sn){const on=!In?null:Pt.directives.tagName(In.source,(Wt=>sn(In,"TAG_RESOLVE_FAILED",Wt)));const cn=en.type==="block-map"?"map":en.type==="block-seq"?"seq":en.start.source==="{"?"map":"seq";if(!In||!on||on==="!"||on===an.YAMLMap.tagName&&cn==="map"||on===rn.YAMLSeq.tagName&&cn==="seq"||!cn){return resolveCollection(Wt,Pt,en,sn,on)}let dn=Pt.schema.tags.find((Wt=>Wt.tag===on&&Wt.collection===cn));if(!dn){const tn=Pt.schema.knownTags[on];if(tn&&tn.collection===cn){Pt.schema.tags.push(Object.assign({},tn,{default:false}));dn=tn}else{if(tn?.collection){sn(In,"BAD_COLLECTION_TYPE",`${tn.tag} used for ${cn} collection, but expects ${tn.collection}`,true)}else{sn(In,"TAG_RESOLVE_FAILED",`Unresolved tag: ${on}`,true)}return resolveCollection(Wt,Pt,en,sn,on)}}const un=resolveCollection(Wt,Pt,en,sn,on,dn);const pn=dn.resolve?.(un,(Wt=>sn(In,"TAG_RESOLVE_FAILED",Wt)),Pt.options)??un;const mn=tn.isNode(pn)?pn:new nn.Scalar(pn);mn.range=un.range;mn.tag=on;if(dn?.format)mn.format=dn.format;return mn}Pt.composeCollection=composeCollection},23683:(Wt,Pt,en)=>{"use strict";var tn=en(3021);var nn=en(45937);var an=en(17788);var rn=en(34631);function composeDoc(Wt,Pt,{offset:en,start:In,value:sn,end:on},cn){const dn=Object.assign({_directives:Pt},Wt);const un=new tn.Document(undefined,dn);const pn={atRoot:true,directives:un.directives,options:un.options,schema:un.schema};const mn=rn.resolveProps(In,{indicator:"doc-start",next:sn??on?.[0],offset:en,onError:cn,startOnNewline:true});if(mn.found){un.directives.docStart=true;if(sn&&(sn.type==="block-map"||sn.type==="block-seq")&&!mn.hasNewline)cn(mn.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}un.contents=sn?nn.composeNode(pn,sn,mn,cn):nn.composeEmptyNode(pn,mn.end,In,null,mn,cn);const bn=un.contents.range[2];const Gn=an.resolveEnd(on,bn,false,cn);if(Gn.comment)un.comment=Gn.comment;un.range=[en,bn,Gn.offset];return un}Pt.composeDoc=composeDoc},45937:(Wt,Pt,en)=>{"use strict";var tn=en(4065);var nn=en(57349);var an=en(5413);var rn=en(17788);var In=en(22599);const sn={composeNode:composeNode,composeEmptyNode:composeEmptyNode};function composeNode(Wt,Pt,en,tn){const{spaceBefore:rn,comment:In,anchor:on,tag:cn}=en;let dn;let un=true;switch(Pt.type){case"alias":dn=composeAlias(Wt,Pt,tn);if(on||cn)tn(Pt,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":dn=an.composeScalar(Wt,Pt,cn,tn);if(on)dn.anchor=on.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":dn=nn.composeCollection(sn,Wt,Pt,cn,tn);if(on)dn.anchor=on.source.substring(1);break;default:{const nn=Pt.type==="error"?Pt.message:`Unsupported token (type: ${Pt.type})`;tn(Pt,"UNEXPECTED_TOKEN",nn);dn=composeEmptyNode(Wt,Pt.offset,undefined,null,en,tn);un=false}}if(on&&dn.anchor==="")tn(on,"BAD_ALIAS","Anchor cannot be an empty string");if(rn)dn.spaceBefore=true;if(In){if(Pt.type==="scalar"&&Pt.source==="")dn.comment=In;else dn.commentBefore=In}if(Wt.options.keepSourceTokens&&un)dn.srcToken=Pt;return dn}function composeEmptyNode(Wt,Pt,en,tn,{spaceBefore:nn,comment:rn,anchor:sn,tag:on,end:cn},dn){const un={type:"scalar",offset:In.emptyScalarPosition(Pt,en,tn),indent:-1,source:""};const pn=an.composeScalar(Wt,un,on,dn);if(sn){pn.anchor=sn.source.substring(1);if(pn.anchor==="")dn(sn,"BAD_ALIAS","Anchor cannot be an empty string")}if(nn)pn.spaceBefore=true;if(rn){pn.comment=rn;pn.range[2]=cn}return pn}function composeAlias({options:Wt},{offset:Pt,source:en,end:nn},an){const In=new tn.Alias(en.substring(1));if(In.source==="")an(Pt,"BAD_ALIAS","Alias cannot be an empty string");if(In.source.endsWith(":"))an(Pt+en.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",true);const sn=Pt+en.length;const on=rn.resolveEnd(nn,sn,Wt.strict,an);In.range=[Pt,sn,on.offset];if(on.comment)In.comment=on.comment;return In}Pt.composeEmptyNode=composeEmptyNode;Pt.composeNode=composeNode},5413:(Wt,Pt,en)=>{"use strict";var tn=en(41127);var nn=en(63301);var an=en(48913);var rn=en(76842);function composeScalar(Wt,Pt,en,In){const{value:sn,type:on,comment:cn,range:dn}=Pt.type==="block-scalar"?an.resolveBlockScalar(Pt,Wt.options.strict,In):rn.resolveFlowScalar(Pt,Wt.options.strict,In);const un=en?Wt.directives.tagName(en.source,(Wt=>In(en,"TAG_RESOLVE_FAILED",Wt))):null;const pn=en&&un?findScalarTagByName(Wt.schema,sn,un,en,In):Pt.type==="scalar"?findScalarTagByTest(Wt,sn,Pt,In):Wt.schema[tn.SCALAR];let mn;try{const an=pn.resolve(sn,(Wt=>In(en??Pt,"TAG_RESOLVE_FAILED",Wt)),Wt.options);mn=tn.isScalar(an)?an:new nn.Scalar(an)}catch(Wt){const tn=Wt instanceof Error?Wt.message:String(Wt);In(en??Pt,"TAG_RESOLVE_FAILED",tn);mn=new nn.Scalar(sn)}mn.range=dn;mn.source=sn;if(on)mn.type=on;if(un)mn.tag=un;if(pn.format)mn.format=pn.format;if(cn)mn.comment=cn;return mn}function findScalarTagByName(Wt,Pt,en,nn,an){if(en==="!")return Wt[tn.SCALAR];const rn=[];for(const Pt of Wt.tags){if(!Pt.collection&&Pt.tag===en){if(Pt.default&&Pt.test)rn.push(Pt);else return Pt}}for(const Wt of rn)if(Wt.test?.test(Pt))return Wt;const In=Wt.knownTags[en];if(In&&!In.collection){Wt.tags.push(Object.assign({},In,{default:false,test:undefined}));return In}an(nn,"TAG_RESOLVE_FAILED",`Unresolved tag: ${en}`,en!=="tag:yaml.org,2002:str");return Wt[tn.SCALAR]}function findScalarTagByTest({directives:Wt,schema:Pt},en,nn,an){const rn=Pt.tags.find((Wt=>Wt.default&&Wt.test?.test(en)))||Pt[tn.SCALAR];if(Pt.compat){const In=Pt.compat.find((Wt=>Wt.default&&Wt.test?.test(en)))??Pt[tn.SCALAR];if(rn.tag!==In.tag){const Pt=Wt.tagString(rn.tag);const en=Wt.tagString(In.tag);const tn=`Value may be parsed as either ${Pt} or ${en}`;an(nn,"TAG_RESOLVE_FAILED",tn,true)}}return rn}Pt.composeScalar=composeScalar},89984:(Wt,Pt,en)=>{"use strict";var tn=en(61342);var nn=en(3021);var an=en(91464);var rn=en(41127);var In=en(23683);var sn=en(17788);function getErrorPos(Wt){if(typeof Wt==="number")return[Wt,Wt+1];if(Array.isArray(Wt))return Wt.length===2?Wt:[Wt[0],Wt[1]];const{offset:Pt,source:en}=Wt;return[Pt,Pt+(typeof en==="string"?en.length:1)]}function parsePrelude(Wt){let Pt="";let en=false;let tn=false;for(let nn=0;nn{const nn=getErrorPos(Wt);if(tn)this.warnings.push(new an.YAMLWarning(nn,Pt,en));else this.errors.push(new an.YAMLParseError(nn,Pt,en))};this.directives=new tn.Directives({version:Wt.version||"1.2"});this.options=Wt}decorate(Wt,Pt){const{comment:en,afterEmptyLine:tn}=parsePrelude(this.prelude);if(en){const nn=Wt.contents;if(Pt){Wt.comment=Wt.comment?`${Wt.comment}\n${en}`:en}else if(tn||Wt.directives.docStart||!nn){Wt.commentBefore=en}else if(rn.isCollection(nn)&&!nn.flow&&nn.items.length>0){let Wt=nn.items[0];if(rn.isPair(Wt))Wt=Wt.key;const Pt=Wt.commentBefore;Wt.commentBefore=Pt?`${en}\n${Pt}`:en}else{const Wt=nn.commentBefore;nn.commentBefore=Wt?`${en}\n${Wt}`:en}}if(Pt){Array.prototype.push.apply(Wt.errors,this.errors);Array.prototype.push.apply(Wt.warnings,this.warnings)}else{Wt.errors=this.errors;Wt.warnings=this.warnings}this.prelude=[];this.errors=[];this.warnings=[]}streamInfo(){return{comment:parsePrelude(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(Wt,Pt=false,en=-1){for(const Pt of Wt)yield*this.next(Pt);yield*this.end(Pt,en)}*next(Wt){if(process.env.LOG_STREAM)console.dir(Wt,{depth:null});switch(Wt.type){case"directive":this.directives.add(Wt.source,((Pt,en,tn)=>{const nn=getErrorPos(Wt);nn[0]+=Pt;this.onError(nn,"BAD_DIRECTIVE",en,tn)}));this.prelude.push(Wt.source);this.atDirectives=true;break;case"document":{const Pt=In.composeDoc(this.options,this.directives,Wt,this.onError);if(this.atDirectives&&!Pt.directives.docStart)this.onError(Wt,"MISSING_CHAR","Missing directives-end/doc-start indicator line");this.decorate(Pt,false);if(this.doc)yield this.doc;this.doc=Pt;this.atDirectives=false;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(Wt.source);break;case"error":{const Pt=Wt.source?`${Wt.message}: ${JSON.stringify(Wt.source)}`:Wt.message;const en=new an.YAMLParseError(getErrorPos(Wt),"UNEXPECTED_TOKEN",Pt);if(this.atDirectives||!this.doc)this.errors.push(en);else this.doc.errors.push(en);break}case"doc-end":{if(!this.doc){const Pt="Unexpected doc-end without preceding document";this.errors.push(new an.YAMLParseError(getErrorPos(Wt),"UNEXPECTED_TOKEN",Pt));break}this.doc.directives.docEnd=true;const Pt=sn.resolveEnd(Wt.end,Wt.offset+Wt.source.length,this.doc.options.strict,this.onError);this.decorate(this.doc,true);if(Pt.comment){const Wt=this.doc.comment;this.doc.comment=Wt?`${Wt}\n${Pt.comment}`:Pt.comment}this.doc.range[2]=Pt.offset;break}default:this.errors.push(new an.YAMLParseError(getErrorPos(Wt),"UNEXPECTED_TOKEN",`Unsupported token ${Wt.type}`))}}*end(Wt=false,Pt=-1){if(this.doc){this.decorate(this.doc,true);yield this.doc;this.doc=null}else if(Wt){const Wt=Object.assign({_directives:this.directives},this.options);const en=new nn.Document(undefined,Wt);if(this.atDirectives)this.onError(Pt,"MISSING_CHAR","Missing directives-end indicator line");en.range=[0,Pt,Pt];this.decorate(en,false);yield en}}}Pt.Composer=Composer},87103:(Wt,Pt,en)=>{"use strict";var tn=en(57165);var nn=en(84454);var an=en(34631);var rn=en(9499);var In=en(74051);var sn=en(81187);const on="All mapping items must start at the same column";function resolveBlockMap({composeNode:Wt,composeEmptyNode:Pt},en,cn,dn,un){const pn=un?.nodeClass??nn.YAMLMap;const mn=new pn(en.schema);if(en.atRoot)en.atRoot=false;let bn=cn.offset;let Gn=null;for(const nn of cn.items){const{start:un,key:pn,sep:hn,value:Zn}=nn;const An=an.resolveProps(un,{indicator:"explicit-key-ind",next:pn??hn?.[0],offset:bn,onError:dn,startOnNewline:true});const Wn=!An.found;if(Wn){if(pn){if(pn.type==="block-seq")dn(bn,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in pn&&pn.indent!==cn.indent)dn(bn,"BAD_INDENT",on)}if(!An.anchor&&!An.tag&&!hn){Gn=An.end;if(An.comment){if(mn.comment)mn.comment+="\n"+An.comment;else mn.comment=An.comment}continue}if(An.hasNewlineAfterProp||rn.containsNewline(pn)){dn(pn??un[un.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}}else if(An.found?.indent!==cn.indent){dn(bn,"BAD_INDENT",on)}const Nn=An.end;const gn=pn?Wt(en,pn,An,dn):Pt(en,Nn,un,null,An,dn);if(en.schema.compat)In.flowIndentCheck(cn.indent,pn,dn);if(sn.mapIncludes(en,mn.items,gn))dn(Nn,"DUPLICATE_KEY","Map keys must be unique");const yn=an.resolveProps(hn??[],{indicator:"map-value-ind",next:Zn,offset:gn.range[2],onError:dn,startOnNewline:!pn||pn.type==="block-scalar"});bn=yn.end;if(yn.found){if(Wn){if(Zn?.type==="block-map"&&!yn.hasNewline)dn(bn,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(en.options.strict&&An.start{"use strict";var tn=en(63301);function resolveBlockScalar(Wt,Pt,en){const nn=Wt.offset;const an=parseBlockScalarHeader(Wt,Pt,en);if(!an)return{value:"",type:null,comment:"",range:[nn,nn,nn]};const rn=an.mode===">"?tn.Scalar.BLOCK_FOLDED:tn.Scalar.BLOCK_LITERAL;const In=Wt.source?splitLines(Wt.source):[];let sn=In.length;for(let Wt=In.length-1;Wt>=0;--Wt){const Pt=In[Wt][1];if(Pt===""||Pt==="\r")sn=Wt;else break}if(sn===0){const Pt=an.chomp==="+"&&In.length>0?"\n".repeat(Math.max(1,In.length-1)):"";let en=nn+an.length;if(Wt.source)en+=Wt.source.length;return{value:Pt,type:rn,comment:an.comment,range:[nn,en,en]}}let on=Wt.indent+an.indent;let cn=Wt.offset+an.length;let dn=0;for(let Wt=0;Wton)on=Pt.length}else{if(Pt.length=sn;--Wt){if(In[Wt][0].length>on)sn=Wt+1}let un="";let pn="";let mn=false;for(let Wt=0;Wton||nn[0]==="\t"){if(pn===" ")pn="\n";else if(!mn&&pn==="\n")pn="\n\n";un+=pn+Pt.slice(on)+nn;pn="\n";mn=true}else if(nn===""){if(pn==="\n")un+="\n";else pn="\n"}else{un+=pn+nn;pn=" ";mn=false}}switch(an.chomp){case"-":break;case"+":for(let Wt=sn;Wt{"use strict";var tn=en(92223);var nn=en(34631);var an=en(74051);function resolveBlockSeq({composeNode:Wt,composeEmptyNode:Pt},en,rn,In,sn){const on=sn?.nodeClass??tn.YAMLSeq;const cn=new on(en.schema);if(en.atRoot)en.atRoot=false;let dn=rn.offset;let un=null;for(const{start:tn,value:sn}of rn.items){const on=nn.resolveProps(tn,{indicator:"seq-item-ind",next:sn,offset:dn,onError:In,startOnNewline:true});if(!on.found){if(on.anchor||on.tag||sn){if(sn&&sn.type==="block-seq")In(on.end,"BAD_INDENT","All sequence items must start at the same column");else In(dn,"MISSING_CHAR","Sequence item without - indicator")}else{un=on.end;if(on.comment)cn.comment=on.comment;continue}}const pn=sn?Wt(en,sn,on,In):Pt(en,on.end,tn,null,on,In);if(en.schema.compat)an.flowIndentCheck(rn.indent,sn,In);dn=pn.range[2];cn.items.push(pn)}cn.range=[rn.offset,dn,un??dn];return cn}Pt.resolveBlockSeq=resolveBlockSeq},17788:(Wt,Pt)=>{"use strict";function resolveEnd(Wt,Pt,en,tn){let nn="";if(Wt){let an=false;let rn="";for(const In of Wt){const{source:Wt,type:sn}=In;switch(sn){case"space":an=true;break;case"comment":{if(en&&!an)tn(In,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const Pt=Wt.substring(1)||" ";if(!nn)nn=Pt;else nn+=rn+Pt;rn="";break}case"newline":if(nn)rn+=Wt;an=true;break;default:tn(In,"UNEXPECTED_TOKEN",`Unexpected ${sn} at node end`)}Pt+=Wt.length}}return{comment:nn,offset:Pt}}Pt.resolveEnd=resolveEnd},13142:(Wt,Pt,en)=>{"use strict";var tn=en(41127);var nn=en(57165);var an=en(84454);var rn=en(92223);var In=en(17788);var sn=en(34631);var on=en(9499);var cn=en(81187);const dn="Block collections are not allowed within flow collections";const isBlock=Wt=>Wt&&(Wt.type==="block-map"||Wt.type==="block-seq");function resolveFlowCollection({composeNode:Wt,composeEmptyNode:Pt},en,un,pn,mn){const bn=un.start.source==="{";const Gn=bn?"flow map":"flow sequence";const hn=mn?.nodeClass??(bn?an.YAMLMap:rn.YAMLSeq);const Zn=new hn(en.schema);Zn.flow=true;const An=en.atRoot;if(An)en.atRoot=false;let Wn=un.offset+un.start.source.length;for(let rn=0;rn0){const Wt=In.resolveEnd(yn,vn,en.options.strict,pn);if(Wt.comment){if(Zn.comment)Zn.comment+="\n"+Wt.comment;else Zn.comment=Wt.comment}Zn.range=[un.offset,vn,Wt.offset]}else{Zn.range=[un.offset,vn,vn]}return Zn}Pt.resolveFlowCollection=resolveFlowCollection},76842:(Wt,Pt,en)=>{"use strict";var tn=en(63301);var nn=en(17788);function resolveFlowScalar(Wt,Pt,en){const{offset:an,type:rn,source:In,end:sn}=Wt;let on;let cn;const _onError=(Wt,Pt,tn)=>en(an+Wt,Pt,tn);switch(rn){case"scalar":on=tn.Scalar.PLAIN;cn=plainValue(In,_onError);break;case"single-quoted-scalar":on=tn.Scalar.QUOTE_SINGLE;cn=singleQuotedValue(In,_onError);break;case"double-quoted-scalar":on=tn.Scalar.QUOTE_DOUBLE;cn=doubleQuotedValue(In,_onError);break;default:en(Wt,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${rn}`);return{value:"",type:null,comment:"",range:[an,an+In.length,an+In.length]}}const dn=an+In.length;const un=nn.resolveEnd(sn,dn,Pt,en);return{value:cn,type:on,comment:un.comment,range:[an,dn,un.offset]}}function plainValue(Wt,Pt){let en="";switch(Wt[0]){case"\t":en="a tab character";break;case",":en="flow indicator character ,";break;case"%":en="directive indicator character %";break;case"|":case">":{en=`block scalar indicator ${Wt[0]}`;break}case"@":case"`":{en=`reserved character ${Wt[0]}`;break}}if(en)Pt(0,"BAD_SCALAR_START",`Plain value cannot start with ${en}`);return foldLines(Wt)}function singleQuotedValue(Wt,Pt){if(Wt[Wt.length-1]!=="'"||Wt.length===1)Pt(Wt.length,"MISSING_CHAR","Missing closing 'quote");return foldLines(Wt.slice(1,-1)).replace(/''/g,"'")}function foldLines(Wt){let Pt,en;try{Pt=new RegExp("(.*?)(?Pt?Wt.slice(Pt,tn+1):nn}else{en+=nn}}if(Wt[Wt.length-1]!=='"'||Wt.length===1)Pt(Wt.length,"MISSING_CHAR",'Missing closing "quote');return en}function foldNewline(Wt,Pt){let en="";let tn=Wt[Pt+1];while(tn===" "||tn==="\t"||tn==="\n"||tn==="\r"){if(tn==="\r"&&Wt[Pt+2]!=="\n")break;if(tn==="\n")en+="\n";Pt+=1;tn=Wt[Pt+1]}if(!en)en=" ";return{fold:en,offset:Pt}}const an={0:"\0",a:"",b:"\b",e:"",f:"\f",n:"\n",r:"\r",t:"\t",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function parseCharCode(Wt,Pt,en,tn){const nn=Wt.substr(Pt,en);const an=nn.length===en&&/^[0-9a-fA-F]+$/.test(nn);const rn=an?parseInt(nn,16):NaN;if(isNaN(rn)){const nn=Wt.substr(Pt-2,en+2);tn(Pt-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${nn}`);return nn}return String.fromCodePoint(rn)}Pt.resolveFlowScalar=resolveFlowScalar},34631:(Wt,Pt)=>{"use strict";function resolveProps(Wt,{flow:Pt,indicator:en,next:tn,offset:nn,onError:an,startOnNewline:rn}){let In=false;let sn=rn;let on=rn;let cn="";let dn="";let un=false;let pn=false;let mn=false;let bn=null;let Gn=null;let hn=null;let Zn=null;let An=null;for(const tn of Wt){if(mn){if(tn.type!=="space"&&tn.type!=="newline"&&tn.type!=="comma")an(tn.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");mn=false}switch(tn.type){case"space":if(!Pt&&sn&&en!=="doc-start"&&tn.source[0]==="\t")an(tn,"TAB_AS_INDENT","Tabs are not allowed as indentation");on=true;break;case"comment":{if(!on)an(tn,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const Wt=tn.source.substring(1)||" ";if(!cn)cn=Wt;else cn+=dn+Wt;dn="";sn=false;break}case"newline":if(sn){if(cn)cn+=tn.source;else In=true}else dn+=tn.source;sn=true;un=true;if(bn||Gn)pn=true;on=true;break;case"anchor":if(bn)an(tn,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(tn.source.endsWith(":"))an(tn.offset+tn.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",true);bn=tn;if(An===null)An=tn.offset;sn=false;on=false;mn=true;break;case"tag":{if(Gn)an(tn,"MULTIPLE_TAGS","A node can have at most one tag");Gn=tn;if(An===null)An=tn.offset;sn=false;on=false;mn=true;break}case en:if(bn||Gn)an(tn,"BAD_PROP_ORDER",`Anchors and tags must be after the ${tn.source} indicator`);if(Zn)an(tn,"UNEXPECTED_TOKEN",`Unexpected ${tn.source} in ${Pt??"collection"}`);Zn=tn;sn=false;on=false;break;case"comma":if(Pt){if(hn)an(tn,"UNEXPECTED_TOKEN",`Unexpected , in ${Pt}`);hn=tn;sn=false;on=false;break}default:an(tn,"UNEXPECTED_TOKEN",`Unexpected ${tn.type} token`);sn=false;on=false}}const Wn=Wt[Wt.length-1];const Nn=Wn?Wn.offset+Wn.source.length:nn;if(mn&&tn&&tn.type!=="space"&&tn.type!=="newline"&&tn.type!=="comma"&&(tn.type!=="scalar"||tn.source!==""))an(tn.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");return{comma:hn,found:Zn,spaceBefore:In,comment:cn,hasNewline:un,hasNewlineAfterProp:pn,anchor:bn,tag:Gn,end:Nn,start:An??Nn}}Pt.resolveProps=resolveProps},9499:(Wt,Pt)=>{"use strict";function containsNewline(Wt){if(!Wt)return null;switch(Wt.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(Wt.source.includes("\n"))return true;if(Wt.end)for(const Pt of Wt.end)if(Pt.type==="newline")return true;return false;case"flow-collection":for(const Pt of Wt.items){for(const Wt of Pt.start)if(Wt.type==="newline")return true;if(Pt.sep)for(const Wt of Pt.sep)if(Wt.type==="newline")return true;if(containsNewline(Pt.key)||containsNewline(Pt.value))return true}return false;default:return true}}Pt.containsNewline=containsNewline},22599:(Wt,Pt)=>{"use strict";function emptyScalarPosition(Wt,Pt,en){if(Pt){if(en===null)en=Pt.length;for(let tn=en-1;tn>=0;--tn){let en=Pt[tn];switch(en.type){case"space":case"comment":case"newline":Wt-=en.source.length;continue}en=Pt[++tn];while(en?.type==="space"){Wt+=en.source.length;en=Pt[++tn]}break}}return Wt}Pt.emptyScalarPosition=emptyScalarPosition},74051:(Wt,Pt,en)=>{"use strict";var tn=en(9499);function flowIndentCheck(Wt,Pt,en){if(Pt?.type==="flow-collection"){const nn=Pt.end[0];if(nn.indent===Wt&&(nn.source==="]"||nn.source==="}")&&tn.containsNewline(Pt)){const Wt="Flow end indicator should be more indented than parent";en(nn,"BAD_INDENT",Wt,true)}}}Pt.flowIndentCheck=flowIndentCheck},81187:(Wt,Pt,en)=>{"use strict";var tn=en(41127);function mapIncludes(Wt,Pt,en){const{uniqueKeys:nn}=Wt.options;if(nn===false)return false;const an=typeof nn==="function"?nn:(Pt,en)=>Pt===en||tn.isScalar(Pt)&&tn.isScalar(en)&&Pt.value===en.value&&!(Pt.value==="<<"&&Wt.schema.merge);return Pt.some((Wt=>an(Wt.key,en)))}Pt.mapIncludes=mapIncludes},3021:(Wt,Pt,en)=>{"use strict";var tn=en(4065);var nn=en(40101);var an=en(41127);var rn=en(57165);var In=en(74043);var sn=en(45840);var on=en(6829);var cn=en(71596);var dn=en(83661);var un=en(42404);var pn=en(61342);class Document{constructor(Wt,Pt,en){this.commentBefore=null;this.comment=null;this.errors=[];this.warnings=[];Object.defineProperty(this,an.NODE_TYPE,{value:an.DOC});let tn=null;if(typeof Pt==="function"||Array.isArray(Pt)){tn=Pt}else if(en===undefined&&Pt){en=Pt;Pt=undefined}const nn=Object.assign({intAsBigInt:false,keepSourceTokens:false,logLevel:"warn",prettyErrors:true,strict:true,uniqueKeys:true,version:"1.2"},en);this.options=nn;let{version:rn}=nn;if(en?._directives){this.directives=en._directives.atDocument();if(this.directives.yaml.explicit)rn=this.directives.yaml.version}else this.directives=new pn.Directives({version:rn});this.setSchema(rn,en);this.contents=Wt===undefined?null:this.createNode(Wt,tn,en)}clone(){const Wt=Object.create(Document.prototype,{[an.NODE_TYPE]:{value:an.DOC}});Wt.commentBefore=this.commentBefore;Wt.comment=this.comment;Wt.errors=this.errors.slice();Wt.warnings=this.warnings.slice();Wt.options=Object.assign({},this.options);if(this.directives)Wt.directives=this.directives.clone();Wt.schema=this.schema.clone();Wt.contents=an.isNode(this.contents)?this.contents.clone(Wt.schema):this.contents;if(this.range)Wt.range=this.range.slice();return Wt}add(Wt){if(assertCollection(this.contents))this.contents.add(Wt)}addIn(Wt,Pt){if(assertCollection(this.contents))this.contents.addIn(Wt,Pt)}createAlias(Wt,Pt){if(!Wt.anchor){const en=cn.anchorNames(this);Wt.anchor=!Pt||en.has(Pt)?cn.findNewAnchor(Pt||"a",en):Pt}return new tn.Alias(Wt.anchor)}createNode(Wt,Pt,en){let tn=undefined;if(typeof Pt==="function"){Wt=Pt.call({"":Wt},"",Wt);tn=Pt}else if(Array.isArray(Pt)){const keyToStr=Wt=>typeof Wt==="number"||Wt instanceof String||Wt instanceof Number;const Wt=Pt.filter(keyToStr).map(String);if(Wt.length>0)Pt=Pt.concat(Wt);tn=Pt}else if(en===undefined&&Pt){en=Pt;Pt=undefined}const{aliasDuplicateObjects:nn,anchorPrefix:rn,flow:In,keepUndefined:sn,onTagObj:on,tag:dn}=en??{};const{onAnchor:pn,setAnchors:mn,sourceObjects:bn}=cn.createNodeAnchors(this,rn||"a");const Gn={aliasDuplicateObjects:nn??true,keepUndefined:sn??false,onAnchor:pn,onTagObj:on,replacer:tn,schema:this.schema,sourceObjects:bn};const hn=un.createNode(Wt,dn,Gn);if(In&&an.isCollection(hn))hn.flow=true;mn();return hn}createPair(Wt,Pt,en={}){const tn=this.createNode(Wt,null,en);const nn=this.createNode(Pt,null,en);return new rn.Pair(tn,nn)}delete(Wt){return assertCollection(this.contents)?this.contents.delete(Wt):false}deleteIn(Wt){if(nn.isEmptyPath(Wt)){if(this.contents==null)return false;this.contents=null;return true}return assertCollection(this.contents)?this.contents.deleteIn(Wt):false}get(Wt,Pt){return an.isCollection(this.contents)?this.contents.get(Wt,Pt):undefined}getIn(Wt,Pt){if(nn.isEmptyPath(Wt))return!Pt&&an.isScalar(this.contents)?this.contents.value:this.contents;return an.isCollection(this.contents)?this.contents.getIn(Wt,Pt):undefined}has(Wt){return an.isCollection(this.contents)?this.contents.has(Wt):false}hasIn(Wt){if(nn.isEmptyPath(Wt))return this.contents!==undefined;return an.isCollection(this.contents)?this.contents.hasIn(Wt):false}set(Wt,Pt){if(this.contents==null){this.contents=nn.collectionFromPath(this.schema,[Wt],Pt)}else if(assertCollection(this.contents)){this.contents.set(Wt,Pt)}}setIn(Wt,Pt){if(nn.isEmptyPath(Wt)){this.contents=Pt}else if(this.contents==null){this.contents=nn.collectionFromPath(this.schema,Array.from(Wt),Pt)}else if(assertCollection(this.contents)){this.contents.setIn(Wt,Pt)}}setSchema(Wt,Pt={}){if(typeof Wt==="number")Wt=String(Wt);let en;switch(Wt){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new pn.Directives({version:"1.1"});en={merge:true,resolveKnownTags:false,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=Wt;else this.directives=new pn.Directives({version:Wt});en={merge:false,resolveKnownTags:true,schema:"core"};break;case null:if(this.directives)delete this.directives;en=null;break;default:{const Pt=JSON.stringify(Wt);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${Pt}`)}}if(Pt.schema instanceof Object)this.schema=Pt.schema;else if(en)this.schema=new sn.Schema(Object.assign(en,Pt));else throw new Error(`With a null YAML version, the { schema: Schema } option is required`)}toJS({json:Wt,jsonArg:Pt,mapAsMap:en,maxAliasCount:tn,onAnchor:nn,reviver:an}={}){const rn={anchors:new Map,doc:this,keep:!Wt,mapAsMap:en===true,mapKeyWarned:false,maxAliasCount:typeof tn==="number"?tn:100};const sn=In.toJS(this.contents,Pt??"",rn);if(typeof nn==="function")for(const{count:Wt,res:Pt}of rn.anchors.values())nn(Pt,Wt);return typeof an==="function"?dn.applyReviver(an,{"":sn},"",sn):sn}toJSON(Wt,Pt){return this.toJS({json:true,jsonArg:Wt,mapAsMap:false,onAnchor:Pt})}toString(Wt={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in Wt&&(!Number.isInteger(Wt.indent)||Number(Wt.indent)<=0)){const Pt=JSON.stringify(Wt.indent);throw new Error(`"indent" option must be a positive integer, not ${Pt}`)}return on.stringifyDocument(this,Wt)}}function assertCollection(Wt){if(an.isCollection(Wt))return true;throw new Error("Expected a YAML collection as document contents")}Pt.Document=Document},71596:(Wt,Pt,en)=>{"use strict";var tn=en(41127);var nn=en(10204);function anchorIsValid(Wt){if(/[\x00-\x19\s,[\]{}]/.test(Wt)){const Pt=JSON.stringify(Wt);const en=`Anchor must not contain whitespace or control characters: ${Pt}`;throw new Error(en)}return true}function anchorNames(Wt){const Pt=new Set;nn.visit(Wt,{Value(Wt,en){if(en.anchor)Pt.add(en.anchor)}});return Pt}function findNewAnchor(Wt,Pt){for(let en=1;true;++en){const tn=`${Wt}${en}`;if(!Pt.has(tn))return tn}}function createNodeAnchors(Wt,Pt){const en=[];const nn=new Map;let an=null;return{onAnchor:tn=>{en.push(tn);if(!an)an=anchorNames(Wt);const nn=findNewAnchor(Pt,an);an.add(nn);return nn},setAnchors:()=>{for(const Wt of en){const Pt=nn.get(Wt);if(typeof Pt==="object"&&Pt.anchor&&(tn.isScalar(Pt.node)||tn.isCollection(Pt.node))){Pt.node.anchor=Pt.anchor}else{const Pt=new Error("Failed to resolve repeated object (this should not happen)");Pt.source=Wt;throw Pt}}},sourceObjects:nn}}Pt.anchorIsValid=anchorIsValid;Pt.anchorNames=anchorNames;Pt.createNodeAnchors=createNodeAnchors;Pt.findNewAnchor=findNewAnchor},83661:(Wt,Pt)=>{"use strict";function applyReviver(Wt,Pt,en,tn){if(tn&&typeof tn==="object"){if(Array.isArray(tn)){for(let Pt=0,en=tn.length;Pt{"use strict";var tn=en(4065);var nn=en(41127);var an=en(63301);const rn="tag:yaml.org,2002:";function findTagObject(Wt,Pt,en){if(Pt){const Wt=en.filter((Wt=>Wt.tag===Pt));const tn=Wt.find((Wt=>!Wt.format))??Wt[0];if(!tn)throw new Error(`Tag ${Pt} not found`);return tn}return en.find((Pt=>Pt.identify?.(Wt)&&!Pt.format))}function createNode(Wt,Pt,en){if(nn.isDocument(Wt))Wt=Wt.contents;if(nn.isNode(Wt))return Wt;if(nn.isPair(Wt)){const Pt=en.schema[nn.MAP].createNode?.(en.schema,null,en);Pt.items.push(Wt);return Pt}if(Wt instanceof String||Wt instanceof Number||Wt instanceof Boolean||typeof BigInt!=="undefined"&&Wt instanceof BigInt){Wt=Wt.valueOf()}const{aliasDuplicateObjects:In,onAnchor:sn,onTagObj:on,schema:cn,sourceObjects:dn}=en;let un=undefined;if(In&&Wt&&typeof Wt==="object"){un=dn.get(Wt);if(un){if(!un.anchor)un.anchor=sn(Wt);return new tn.Alias(un.anchor)}else{un={anchor:null,node:null};dn.set(Wt,un)}}if(Pt?.startsWith("!!"))Pt=rn+Pt.slice(2);let pn=findTagObject(Wt,Pt,cn.tags);if(!pn){if(Wt&&typeof Wt.toJSON==="function"){Wt=Wt.toJSON()}if(!Wt||typeof Wt!=="object"){const Pt=new an.Scalar(Wt);if(un)un.node=Pt;return Pt}pn=Wt instanceof Map?cn[nn.MAP]:Symbol.iterator in Object(Wt)?cn[nn.SEQ]:cn[nn.MAP]}if(on){on(pn);delete en.onTagObj}const mn=pn?.createNode?pn.createNode(en.schema,Wt,en):typeof pn?.nodeClass?.from==="function"?pn.nodeClass.from(en.schema,Wt,en):new an.Scalar(Wt);if(Pt)mn.tag=Pt;else if(!pn.default)mn.tag=pn.tag;if(un)un.node=mn;return mn}Pt.createNode=createNode},61342:(Wt,Pt,en)=>{"use strict";var tn=en(41127);var nn=en(10204);const an={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"};const escapeTagName=Wt=>Wt.replace(/[!,[\]{}]/g,(Wt=>an[Wt]));class Directives{constructor(Wt,Pt){this.docStart=null;this.docEnd=false;this.yaml=Object.assign({},Directives.defaultYaml,Wt);this.tags=Object.assign({},Directives.defaultTags,Pt)}clone(){const Wt=new Directives(this.yaml,this.tags);Wt.docStart=this.docStart;return Wt}atDocument(){const Wt=new Directives(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=true;break;case"1.2":this.atNextDocument=false;this.yaml={explicit:Directives.defaultYaml.explicit,version:"1.2"};this.tags=Object.assign({},Directives.defaultTags);break}return Wt}add(Wt,Pt){if(this.atNextDocument){this.yaml={explicit:Directives.defaultYaml.explicit,version:"1.1"};this.tags=Object.assign({},Directives.defaultTags);this.atNextDocument=false}const en=Wt.trim().split(/[ \t]+/);const tn=en.shift();switch(tn){case"%TAG":{if(en.length!==2){Pt(0,"%TAG directive should contain exactly two parts");if(en.length<2)return false}const[Wt,tn]=en;this.tags[Wt]=tn;return true}case"%YAML":{this.yaml.explicit=true;if(en.length!==1){Pt(0,"%YAML directive should contain exactly one part");return false}const[Wt]=en;if(Wt==="1.1"||Wt==="1.2"){this.yaml.version=Wt;return true}else{const en=/^\d+\.\d+$/.test(Wt);Pt(6,`Unsupported YAML version ${Wt}`,en);return false}}default:Pt(0,`Unknown directive ${tn}`,true);return false}}tagName(Wt,Pt){if(Wt==="!")return"!";if(Wt[0]!=="!"){Pt(`Not a valid tag: ${Wt}`);return null}if(Wt[1]==="<"){const en=Wt.slice(2,-1);if(en==="!"||en==="!!"){Pt(`Verbatim tags aren't resolved, so ${Wt} is invalid.`);return null}if(Wt[Wt.length-1]!==">")Pt("Verbatim tags must end with a >");return en}const[,en,tn]=Wt.match(/^(.*!)([^!]*)$/s);if(!tn)Pt(`The ${Wt} tag has no suffix`);const nn=this.tags[en];if(nn){try{return nn+decodeURIComponent(tn)}catch(Wt){Pt(String(Wt));return null}}if(en==="!")return Wt;Pt(`Could not resolve tag: ${Wt}`);return null}tagString(Wt){for(const[Pt,en]of Object.entries(this.tags)){if(Wt.startsWith(en))return Pt+escapeTagName(Wt.substring(en.length))}return Wt[0]==="!"?Wt:`!<${Wt}>`}toString(Wt){const Pt=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[];const en=Object.entries(this.tags);let an;if(Wt&&en.length>0&&tn.isNode(Wt.contents)){const Pt={};nn.visit(Wt.contents,((Wt,en)=>{if(tn.isNode(en)&&en.tag)Pt[en.tag]=true}));an=Object.keys(Pt)}else an=[];for(const[tn,nn]of en){if(tn==="!!"&&nn==="tag:yaml.org,2002:")continue;if(!Wt||an.some((Wt=>Wt.startsWith(nn))))Pt.push(`%TAG ${tn} ${nn}`)}return Pt.join("\n")}}Directives.defaultYaml={explicit:false,version:"1.2"};Directives.defaultTags={"!!":"tag:yaml.org,2002:"};Pt.Directives=Directives},91464:(Wt,Pt)=>{"use strict";class YAMLError extends Error{constructor(Wt,Pt,en,tn){super();this.name=Wt;this.code=en;this.message=tn;this.pos=Pt}}class YAMLParseError extends YAMLError{constructor(Wt,Pt,en){super("YAMLParseError",Wt,Pt,en)}}class YAMLWarning extends YAMLError{constructor(Wt,Pt,en){super("YAMLWarning",Wt,Pt,en)}}const prettifyError=(Wt,Pt)=>en=>{if(en.pos[0]===-1)return;en.linePos=en.pos.map((Wt=>Pt.linePos(Wt)));const{line:tn,col:nn}=en.linePos[0];en.message+=` at line ${tn}, column ${nn}`;let an=nn-1;let rn=Wt.substring(Pt.lineStarts[tn-1],Pt.lineStarts[tn]).replace(/[\n\r]+$/,"");if(an>=60&&rn.length>80){const Wt=Math.min(an-39,rn.length-79);rn="…"+rn.substring(Wt);an-=Wt-1}if(rn.length>80)rn=rn.substring(0,79)+"…";if(tn>1&&/^ *$/.test(rn.substring(0,an))){let en=Wt.substring(Pt.lineStarts[tn-2],Pt.lineStarts[tn-1]);if(en.length>80)en=en.substring(0,79)+"…\n";rn=en+rn}if(/[^ ]/.test(rn)){let Wt=1;const Pt=en.linePos[1];if(Pt&&Pt.line===tn&&Pt.col>nn){Wt=Math.max(1,Math.min(Pt.col-nn,80-an))}const In=" ".repeat(an)+"^".repeat(Wt);en.message+=`:\n\n${rn}\n${In}\n`}};Pt.YAMLError=YAMLError;Pt.YAMLParseError=YAMLParseError;Pt.YAMLWarning=YAMLWarning;Pt.prettifyError=prettifyError},38815:(Wt,Pt,en)=>{"use strict";var tn;var nn=en(89984);var an=en(3021);var rn=en(45840);var In=en(91464);var sn=en(4065);var on=en(41127);var cn=en(57165);var dn=en(63301);var un=en(84454);var pn=en(92223);var mn=en(3461);var bn=en(40361);var Gn=en(66628);var hn=en(3456);var Zn=en(84047);var An=en(10204);tn=nn.Composer;tn=an.Document;tn=rn.Schema;tn=In.YAMLError;tn=In.YAMLParseError;tn=In.YAMLWarning;tn=sn.Alias;tn=on.isAlias;tn=on.isCollection;tn=on.isDocument;tn=on.isMap;tn=on.isNode;tn=on.isPair;tn=on.isScalar;tn=on.isSeq;tn=cn.Pair;tn=dn.Scalar;tn=un.YAMLMap;tn=pn.YAMLSeq;tn=mn;tn=bn.Lexer;tn=Gn.LineCounter;tn=hn.Parser;tn=Zn.parse;tn=Zn.parseAllDocuments;tn=Zn.parseDocument;Pt.As=Zn.stringify;tn=An.visit;tn=An.visitAsync},57249:(Wt,Pt)=>{"use strict";function debug(Wt,...Pt){if(Wt==="debug")console.log(...Pt)}function warn(Wt,Pt){if(Wt==="debug"||Wt==="warn"){if(typeof process!=="undefined"&&process.emitWarning)process.emitWarning(Pt);else console.warn(Pt)}}Pt.debug=debug;Pt.warn=warn},4065:(Wt,Pt,en)=>{"use strict";var tn=en(71596);var nn=en(10204);var an=en(41127);var rn=en(66673);var In=en(74043);class Alias extends rn.NodeBase{constructor(Wt){super(an.ALIAS);this.source=Wt;Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(Wt){let Pt=undefined;nn.visit(Wt,{Node:(Wt,en)=>{if(en===this)return nn.visit.BREAK;if(en.anchor===this.source)Pt=en}});return Pt}toJSON(Wt,Pt){if(!Pt)return{source:this.source};const{anchors:en,doc:tn,maxAliasCount:nn}=Pt;const an=this.resolve(tn);if(!an){const Wt=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(Wt)}let rn=en.get(an);if(!rn){In.toJS(an,null,Pt);rn=en.get(an)}if(!rn||rn.res===undefined){const Wt="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(Wt)}if(nn>=0){rn.count+=1;if(rn.aliasCount===0)rn.aliasCount=getAliasCount(tn,an,en);if(rn.count*rn.aliasCount>nn){const Wt="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(Wt)}}return rn.res}toString(Wt,Pt,en){const nn=`*${this.source}`;if(Wt){tn.anchorIsValid(this.source);if(Wt.options.verifyAliasOrder&&!Wt.anchors.has(this.source)){const Wt=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(Wt)}if(Wt.implicitKey)return`${nn} `}return nn}}function getAliasCount(Wt,Pt,en){if(an.isAlias(Pt)){const tn=Pt.resolve(Wt);const nn=en&&tn&&en.get(tn);return nn?nn.count*nn.aliasCount:0}else if(an.isCollection(Pt)){let tn=0;for(const nn of Pt.items){const Pt=getAliasCount(Wt,nn,en);if(Pt>tn)tn=Pt}return tn}else if(an.isPair(Pt)){const tn=getAliasCount(Wt,Pt.key,en);const nn=getAliasCount(Wt,Pt.value,en);return Math.max(tn,nn)}return 1}Pt.Alias=Alias},40101:(Wt,Pt,en)=>{"use strict";var tn=en(42404);var nn=en(41127);var an=en(66673);function collectionFromPath(Wt,Pt,en){let nn=en;for(let Wt=Pt.length-1;Wt>=0;--Wt){const en=Pt[Wt];if(typeof en==="number"&&Number.isInteger(en)&&en>=0){const Wt=[];Wt[en]=nn;nn=Wt}else{nn=new Map([[en,nn]])}}return tn.createNode(nn,undefined,{aliasDuplicateObjects:false,keepUndefined:false,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:Wt,sourceObjects:new Map})}const isEmptyPath=Wt=>Wt==null||typeof Wt==="object"&&!!Wt[Symbol.iterator]().next().done;class Collection extends an.NodeBase{constructor(Wt,Pt){super(Wt);Object.defineProperty(this,"schema",{value:Pt,configurable:true,enumerable:false,writable:true})}clone(Wt){const Pt=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(Wt)Pt.schema=Wt;Pt.items=Pt.items.map((Pt=>nn.isNode(Pt)||nn.isPair(Pt)?Pt.clone(Wt):Pt));if(this.range)Pt.range=this.range.slice();return Pt}addIn(Wt,Pt){if(isEmptyPath(Wt))this.add(Pt);else{const[en,...tn]=Wt;const an=this.get(en,true);if(nn.isCollection(an))an.addIn(tn,Pt);else if(an===undefined&&this.schema)this.set(en,collectionFromPath(this.schema,tn,Pt));else throw new Error(`Expected YAML collection at ${en}. Remaining path: ${tn}`)}}deleteIn(Wt){const[Pt,...en]=Wt;if(en.length===0)return this.delete(Pt);const tn=this.get(Pt,true);if(nn.isCollection(tn))return tn.deleteIn(en);else throw new Error(`Expected YAML collection at ${Pt}. Remaining path: ${en}`)}getIn(Wt,Pt){const[en,...tn]=Wt;const an=this.get(en,true);if(tn.length===0)return!Pt&&nn.isScalar(an)?an.value:an;else return nn.isCollection(an)?an.getIn(tn,Pt):undefined}hasAllNullValues(Wt){return this.items.every((Pt=>{if(!nn.isPair(Pt))return false;const en=Pt.value;return en==null||Wt&&nn.isScalar(en)&&en.value==null&&!en.commentBefore&&!en.comment&&!en.tag}))}hasIn(Wt){const[Pt,...en]=Wt;if(en.length===0)return this.has(Pt);const tn=this.get(Pt,true);return nn.isCollection(tn)?tn.hasIn(en):false}setIn(Wt,Pt){const[en,...tn]=Wt;if(tn.length===0){this.set(en,Pt)}else{const Wt=this.get(en,true);if(nn.isCollection(Wt))Wt.setIn(tn,Pt);else if(Wt===undefined&&this.schema)this.set(en,collectionFromPath(this.schema,tn,Pt));else throw new Error(`Expected YAML collection at ${en}. Remaining path: ${tn}`)}}}Collection.maxFlowStringSingleLineLength=60;Pt.Collection=Collection;Pt.collectionFromPath=collectionFromPath;Pt.isEmptyPath=isEmptyPath},66673:(Wt,Pt,en)=>{"use strict";var tn=en(83661);var nn=en(41127);var an=en(74043);class NodeBase{constructor(Wt){Object.defineProperty(this,nn.NODE_TYPE,{value:Wt})}clone(){const Wt=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)Wt.range=this.range.slice();return Wt}toJS(Wt,{mapAsMap:Pt,maxAliasCount:en,onAnchor:rn,reviver:In}={}){if(!nn.isDocument(Wt))throw new TypeError("A document argument is required");const sn={anchors:new Map,doc:Wt,keep:true,mapAsMap:Pt===true,mapKeyWarned:false,maxAliasCount:typeof en==="number"?en:100};const on=an.toJS(this,"",sn);if(typeof rn==="function")for(const{count:Wt,res:Pt}of sn.anchors.values())rn(Pt,Wt);return typeof In==="function"?tn.applyReviver(In,{"":on},"",on):on}}Pt.NodeBase=NodeBase},57165:(Wt,Pt,en)=>{"use strict";var tn=en(42404);var nn=en(59748);var an=en(97104);var rn=en(41127);function createPair(Wt,Pt,en){const nn=tn.createNode(Wt,undefined,en);const an=tn.createNode(Pt,undefined,en);return new Pair(nn,an)}class Pair{constructor(Wt,Pt=null){Object.defineProperty(this,rn.NODE_TYPE,{value:rn.PAIR});this.key=Wt;this.value=Pt}clone(Wt){let{key:Pt,value:en}=this;if(rn.isNode(Pt))Pt=Pt.clone(Wt);if(rn.isNode(en))en=en.clone(Wt);return new Pair(Pt,en)}toJSON(Wt,Pt){const en=Pt?.mapAsMap?new Map:{};return an.addPairToJSMap(Pt,en,this)}toString(Wt,Pt,en){return Wt?.doc?nn.stringifyPair(this,Wt,Pt,en):JSON.stringify(this)}}Pt.Pair=Pair;Pt.createPair=createPair},63301:(Wt,Pt,en)=>{"use strict";var tn=en(41127);var nn=en(66673);var an=en(74043);const isScalarValue=Wt=>!Wt||typeof Wt!=="function"&&typeof Wt!=="object";class Scalar extends nn.NodeBase{constructor(Wt){super(tn.SCALAR);this.value=Wt}toJSON(Wt,Pt){return Pt?.keep?this.value:an.toJS(this.value,Wt,Pt)}toString(){return String(this.value)}}Scalar.BLOCK_FOLDED="BLOCK_FOLDED";Scalar.BLOCK_LITERAL="BLOCK_LITERAL";Scalar.PLAIN="PLAIN";Scalar.QUOTE_DOUBLE="QUOTE_DOUBLE";Scalar.QUOTE_SINGLE="QUOTE_SINGLE";Pt.Scalar=Scalar;Pt.isScalarValue=isScalarValue},84454:(Wt,Pt,en)=>{"use strict";var tn=en(61212);var nn=en(97104);var an=en(40101);var rn=en(41127);var In=en(57165);var sn=en(63301);function findPair(Wt,Pt){const en=rn.isScalar(Pt)?Pt.value:Pt;for(const tn of Wt){if(rn.isPair(tn)){if(tn.key===Pt||tn.key===en)return tn;if(rn.isScalar(tn.key)&&tn.key.value===en)return tn}}return undefined}class YAMLMap extends an.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(Wt){super(rn.MAP,Wt);this.items=[]}static from(Wt,Pt,en){const{keepUndefined:tn,replacer:nn}=en;const an=new this(Wt);const add=(Wt,rn)=>{if(typeof nn==="function")rn=nn.call(Pt,Wt,rn);else if(Array.isArray(nn)&&!nn.includes(Wt))return;if(rn!==undefined||tn)an.items.push(In.createPair(Wt,rn,en))};if(Pt instanceof Map){for(const[Wt,en]of Pt)add(Wt,en)}else if(Pt&&typeof Pt==="object"){for(const Wt of Object.keys(Pt))add(Wt,Pt[Wt])}if(typeof Wt.sortMapEntries==="function"){an.items.sort(Wt.sortMapEntries)}return an}add(Wt,Pt){let en;if(rn.isPair(Wt))en=Wt;else if(!Wt||typeof Wt!=="object"||!("key"in Wt)){en=new In.Pair(Wt,Wt?.value)}else en=new In.Pair(Wt.key,Wt.value);const tn=findPair(this.items,en.key);const nn=this.schema?.sortMapEntries;if(tn){if(!Pt)throw new Error(`Key ${en.key} already set`);if(rn.isScalar(tn.value)&&sn.isScalarValue(en.value))tn.value.value=en.value;else tn.value=en.value}else if(nn){const Wt=this.items.findIndex((Wt=>nn(en,Wt)<0));if(Wt===-1)this.items.push(en);else this.items.splice(Wt,0,en)}else{this.items.push(en)}}delete(Wt){const Pt=findPair(this.items,Wt);if(!Pt)return false;const en=this.items.splice(this.items.indexOf(Pt),1);return en.length>0}get(Wt,Pt){const en=findPair(this.items,Wt);const tn=en?.value;return(!Pt&&rn.isScalar(tn)?tn.value:tn)??undefined}has(Wt){return!!findPair(this.items,Wt)}set(Wt,Pt){this.add(new In.Pair(Wt,Pt),true)}toJSON(Wt,Pt,en){const tn=en?new en:Pt?.mapAsMap?new Map:{};if(Pt?.onCreate)Pt.onCreate(tn);for(const Wt of this.items)nn.addPairToJSMap(Pt,tn,Wt);return tn}toString(Wt,Pt,en){if(!Wt)return JSON.stringify(this);for(const Wt of this.items){if(!rn.isPair(Wt))throw new Error(`Map items must all be pairs; found ${JSON.stringify(Wt)} instead`)}if(!Wt.allNullValues&&this.hasAllNullValues(false))Wt=Object.assign({},Wt,{allNullValues:true});return tn.stringifyCollection(this,Wt,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:Wt.indent||"",onChompKeep:en,onComment:Pt})}}Pt.YAMLMap=YAMLMap;Pt.findPair=findPair},92223:(Wt,Pt,en)=>{"use strict";var tn=en(42404);var nn=en(61212);var an=en(40101);var rn=en(41127);var In=en(63301);var sn=en(74043);class YAMLSeq extends an.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(Wt){super(rn.SEQ,Wt);this.items=[]}add(Wt){this.items.push(Wt)}delete(Wt){const Pt=asItemIndex(Wt);if(typeof Pt!=="number")return false;const en=this.items.splice(Pt,1);return en.length>0}get(Wt,Pt){const en=asItemIndex(Wt);if(typeof en!=="number")return undefined;const tn=this.items[en];return!Pt&&rn.isScalar(tn)?tn.value:tn}has(Wt){const Pt=asItemIndex(Wt);return typeof Pt==="number"&&Pt=0?Pt:null}Pt.YAMLSeq=YAMLSeq},97104:(Wt,Pt,en)=>{"use strict";var tn=en(57249);var nn=en(2148);var an=en(41127);var rn=en(63301);var In=en(74043);const sn="<<";function addPairToJSMap(Wt,Pt,{key:en,value:tn}){if(Wt?.doc.schema.merge&&isMergeKey(en)){tn=an.isAlias(tn)?tn.resolve(Wt.doc):tn;if(an.isSeq(tn))for(const en of tn.items)mergeToJSMap(Wt,Pt,en);else if(Array.isArray(tn))for(const en of tn)mergeToJSMap(Wt,Pt,en);else mergeToJSMap(Wt,Pt,tn)}else{const nn=In.toJS(en,"",Wt);if(Pt instanceof Map){Pt.set(nn,In.toJS(tn,nn,Wt))}else if(Pt instanceof Set){Pt.add(nn)}else{const an=stringifyKey(en,nn,Wt);const rn=In.toJS(tn,an,Wt);if(an in Pt)Object.defineProperty(Pt,an,{value:rn,writable:true,enumerable:true,configurable:true});else Pt[an]=rn}}return Pt}const isMergeKey=Wt=>Wt===sn||an.isScalar(Wt)&&Wt.value===sn&&(!Wt.type||Wt.type===rn.Scalar.PLAIN);function mergeToJSMap(Wt,Pt,en){const tn=Wt&&an.isAlias(en)?en.resolve(Wt.doc):en;if(!an.isMap(tn))throw new Error("Merge sources must be maps or map aliases");const nn=tn.toJSON(null,Wt,Map);for(const[Wt,en]of nn){if(Pt instanceof Map){if(!Pt.has(Wt))Pt.set(Wt,en)}else if(Pt instanceof Set){Pt.add(Wt)}else if(!Object.prototype.hasOwnProperty.call(Pt,Wt)){Object.defineProperty(Pt,Wt,{value:en,writable:true,enumerable:true,configurable:true})}}return Pt}function stringifyKey(Wt,Pt,en){if(Pt===null)return"";if(typeof Pt!=="object")return String(Pt);if(an.isNode(Wt)&&en?.doc){const Pt=nn.createStringifyContext(en.doc,{});Pt.anchors=new Set;for(const Wt of en.anchors.keys())Pt.anchors.add(Wt.anchor);Pt.inFlow=true;Pt.inStringifyKey=true;const an=Wt.toString(Pt);if(!en.mapKeyWarned){let Wt=JSON.stringify(an);if(Wt.length>40)Wt=Wt.substring(0,36)+'..."';tn.warn(en.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${Wt}. Set mapAsMap: true to use object keys.`);en.mapKeyWarned=true}return an}return JSON.stringify(Pt)}Pt.addPairToJSMap=addPairToJSMap},41127:(Wt,Pt)=>{"use strict";const en=Symbol.for("yaml.alias");const tn=Symbol.for("yaml.document");const nn=Symbol.for("yaml.map");const an=Symbol.for("yaml.pair");const rn=Symbol.for("yaml.scalar");const In=Symbol.for("yaml.seq");const sn=Symbol.for("yaml.node.type");const isAlias=Wt=>!!Wt&&typeof Wt==="object"&&Wt[sn]===en;const isDocument=Wt=>!!Wt&&typeof Wt==="object"&&Wt[sn]===tn;const isMap=Wt=>!!Wt&&typeof Wt==="object"&&Wt[sn]===nn;const isPair=Wt=>!!Wt&&typeof Wt==="object"&&Wt[sn]===an;const isScalar=Wt=>!!Wt&&typeof Wt==="object"&&Wt[sn]===rn;const isSeq=Wt=>!!Wt&&typeof Wt==="object"&&Wt[sn]===In;function isCollection(Wt){if(Wt&&typeof Wt==="object")switch(Wt[sn]){case nn:case In:return true}return false}function isNode(Wt){if(Wt&&typeof Wt==="object")switch(Wt[sn]){case en:case nn:case rn:case In:return true}return false}const hasAnchor=Wt=>(isScalar(Wt)||isCollection(Wt))&&!!Wt.anchor;Pt.ALIAS=en;Pt.DOC=tn;Pt.MAP=nn;Pt.NODE_TYPE=sn;Pt.PAIR=an;Pt.SCALAR=rn;Pt.SEQ=In;Pt.hasAnchor=hasAnchor;Pt.isAlias=isAlias;Pt.isCollection=isCollection;Pt.isDocument=isDocument;Pt.isMap=isMap;Pt.isNode=isNode;Pt.isPair=isPair;Pt.isScalar=isScalar;Pt.isSeq=isSeq},74043:(Wt,Pt,en)=>{"use strict";var tn=en(41127);function toJS(Wt,Pt,en){if(Array.isArray(Wt))return Wt.map(((Wt,Pt)=>toJS(Wt,String(Pt),en)));if(Wt&&typeof Wt.toJSON==="function"){if(!en||!tn.hasAnchor(Wt))return Wt.toJSON(Pt,en);const nn={aliasCount:0,count:1,res:undefined};en.anchors.set(Wt,nn);en.onCreate=Wt=>{nn.res=Wt;delete en.onCreate};const an=Wt.toJSON(Pt,en);if(en.onCreate)en.onCreate(an);return an}if(typeof Wt==="bigint"&&!en?.keep)return Number(Wt);return Wt}Pt.toJS=toJS},60110:(Wt,Pt,en)=>{"use strict";var tn=en(48913);var nn=en(76842);var an=en(91464);var rn=en(83069);function resolveAsScalar(Wt,Pt=true,en){if(Wt){const _onError=(Wt,Pt,tn)=>{const nn=typeof Wt==="number"?Wt:Array.isArray(Wt)?Wt[0]:Wt.offset;if(en)en(nn,Pt,tn);else throw new an.YAMLParseError([nn,nn+1],Pt,tn)};switch(Wt.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return nn.resolveFlowScalar(Wt,Pt,_onError);case"block-scalar":return tn.resolveBlockScalar(Wt,Pt,_onError)}}return null}function createScalarToken(Wt,Pt){const{implicitKey:en=false,indent:tn,inFlow:nn=false,offset:an=-1,type:In="PLAIN"}=Pt;const sn=rn.stringifyString({type:In,value:Wt},{implicitKey:en,indent:tn>0?" ".repeat(tn):"",inFlow:nn,options:{blockQuote:true,lineWidth:-1}});const on=Pt.end??[{type:"newline",offset:-1,indent:tn,source:"\n"}];switch(sn[0]){case"|":case">":{const Wt=sn.indexOf("\n");const Pt=sn.substring(0,Wt);const en=sn.substring(Wt+1)+"\n";const nn=[{type:"block-scalar-header",offset:an,indent:tn,source:Pt}];if(!addEndtoBlockProps(nn,on))nn.push({type:"newline",offset:-1,indent:tn,source:"\n"});return{type:"block-scalar",offset:an,indent:tn,props:nn,source:en}}case'"':return{type:"double-quoted-scalar",offset:an,indent:tn,source:sn,end:on};case"'":return{type:"single-quoted-scalar",offset:an,indent:tn,source:sn,end:on};default:return{type:"scalar",offset:an,indent:tn,source:sn,end:on}}}function setScalarValue(Wt,Pt,en={}){let{afterKey:tn=false,implicitKey:nn=false,inFlow:an=false,type:In}=en;let sn="indent"in Wt?Wt.indent:null;if(tn&&typeof sn==="number")sn+=2;if(!In)switch(Wt.type){case"single-quoted-scalar":In="QUOTE_SINGLE";break;case"double-quoted-scalar":In="QUOTE_DOUBLE";break;case"block-scalar":{const Pt=Wt.props[0];if(Pt.type!=="block-scalar-header")throw new Error("Invalid block scalar header");In=Pt.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:In="PLAIN"}const on=rn.stringifyString({type:In,value:Pt},{implicitKey:nn||sn===null,indent:sn!==null&&sn>0?" ".repeat(sn):"",inFlow:an,options:{blockQuote:true,lineWidth:-1}});switch(on[0]){case"|":case">":setBlockScalarValue(Wt,on);break;case'"':setFlowScalarValue(Wt,on,"double-quoted-scalar");break;case"'":setFlowScalarValue(Wt,on,"single-quoted-scalar");break;default:setFlowScalarValue(Wt,on,"scalar")}}function setBlockScalarValue(Wt,Pt){const en=Pt.indexOf("\n");const tn=Pt.substring(0,en);const nn=Pt.substring(en+1)+"\n";if(Wt.type==="block-scalar"){const Pt=Wt.props[0];if(Pt.type!=="block-scalar-header")throw new Error("Invalid block scalar header");Pt.source=tn;Wt.source=nn}else{const{offset:Pt}=Wt;const en="indent"in Wt?Wt.indent:-1;const an=[{type:"block-scalar-header",offset:Pt,indent:en,source:tn}];if(!addEndtoBlockProps(an,"end"in Wt?Wt.end:undefined))an.push({type:"newline",offset:-1,indent:en,source:"\n"});for(const Pt of Object.keys(Wt))if(Pt!=="type"&&Pt!=="offset")delete Wt[Pt];Object.assign(Wt,{type:"block-scalar",indent:en,props:an,source:nn})}}function addEndtoBlockProps(Wt,Pt){if(Pt)for(const en of Pt)switch(en.type){case"space":case"comment":Wt.push(en);break;case"newline":Wt.push(en);return true}return false}function setFlowScalarValue(Wt,Pt,en){switch(Wt.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":Wt.type=en;Wt.source=Pt;break;case"block-scalar":{const tn=Wt.props.slice(1);let nn=Pt.length;if(Wt.props[0].type==="block-scalar-header")nn-=Wt.props[0].source.length;for(const Wt of tn)Wt.offset+=nn;delete Wt.props;Object.assign(Wt,{type:en,source:Pt,end:tn});break}case"block-map":case"block-seq":{const tn=Wt.offset+Pt.length;const nn={type:"newline",offset:tn,indent:Wt.indent,source:"\n"};delete Wt.items;Object.assign(Wt,{type:en,source:Pt,end:[nn]});break}default:{const tn="indent"in Wt?Wt.indent:-1;const nn="end"in Wt&&Array.isArray(Wt.end)?Wt.end.filter((Wt=>Wt.type==="space"||Wt.type==="comment"||Wt.type==="newline")):[];for(const Pt of Object.keys(Wt))if(Pt!=="type"&&Pt!=="offset")delete Wt[Pt];Object.assign(Wt,{type:en,indent:tn,source:Pt,end:nn})}}}Pt.createScalarToken=createScalarToken;Pt.resolveAsScalar=resolveAsScalar;Pt.setScalarValue=setScalarValue},91733:(Wt,Pt)=>{"use strict";const stringify=Wt=>"type"in Wt?stringifyToken(Wt):stringifyItem(Wt);function stringifyToken(Wt){switch(Wt.type){case"block-scalar":{let Pt="";for(const en of Wt.props)Pt+=stringifyToken(en);return Pt+Wt.source}case"block-map":case"block-seq":{let Pt="";for(const en of Wt.items)Pt+=stringifyItem(en);return Pt}case"flow-collection":{let Pt=Wt.start.source;for(const en of Wt.items)Pt+=stringifyItem(en);for(const en of Wt.end)Pt+=en.source;return Pt}case"document":{let Pt=stringifyItem(Wt);if(Wt.end)for(const en of Wt.end)Pt+=en.source;return Pt}default:{let Pt=Wt.source;if("end"in Wt&&Wt.end)for(const en of Wt.end)Pt+=en.source;return Pt}}}function stringifyItem({start:Wt,key:Pt,sep:en,value:tn}){let nn="";for(const Pt of Wt)nn+=Pt.source;if(Pt)nn+=stringifyToken(Pt);if(en)for(const Wt of en)nn+=Wt.source;if(tn)nn+=stringifyToken(tn);return nn}Pt.stringify=stringify},97715:(Wt,Pt)=>{"use strict";const en=Symbol("break visit");const tn=Symbol("skip children");const nn=Symbol("remove item");function visit(Wt,Pt){if("type"in Wt&&Wt.type==="document")Wt={start:Wt.start,value:Wt.value};_visit(Object.freeze([]),Wt,Pt)}visit.BREAK=en;visit.SKIP=tn;visit.REMOVE=nn;visit.itemAtPath=(Wt,Pt)=>{let en=Wt;for(const[Wt,tn]of Pt){const Pt=en?.[Wt];if(Pt&&"items"in Pt){en=Pt.items[tn]}else return undefined}return en};visit.parentCollection=(Wt,Pt)=>{const en=visit.itemAtPath(Wt,Pt.slice(0,-1));const tn=Pt[Pt.length-1][0];const nn=en?.[tn];if(nn&&"items"in nn)return nn;throw new Error("Parent collection not found")};function _visit(Wt,Pt,tn){let an=tn(Pt,Wt);if(typeof an==="symbol")return an;for(const rn of["key","value"]){const In=Pt[rn];if(In&&"items"in In){for(let Pt=0;Pt{"use strict";var tn=en(60110);var nn=en(91733);var an=en(97715);const rn="\ufeff";const In="";const sn="";const on="";const isCollection=Wt=>!!Wt&&"items"in Wt;const isScalar=Wt=>!!Wt&&(Wt.type==="scalar"||Wt.type==="single-quoted-scalar"||Wt.type==="double-quoted-scalar"||Wt.type==="block-scalar");function prettyToken(Wt){switch(Wt){case rn:return"";case In:return"";case sn:return"";case on:return"";default:return JSON.stringify(Wt)}}function tokenType(Wt){switch(Wt){case rn:return"byte-order-mark";case In:return"doc-mode";case sn:return"flow-error-end";case on:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case"\n":case"\r\n":return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(Wt[0]){case" ":case"\t":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}Pt.createScalarToken=tn.createScalarToken;Pt.resolveAsScalar=tn.resolveAsScalar;Pt.setScalarValue=tn.setScalarValue;Pt.stringify=nn.stringify;Pt.visit=an.visit;Pt.BOM=rn;Pt.DOCUMENT=In;Pt.FLOW_END=sn;Pt.SCALAR=on;Pt.isCollection=isCollection;Pt.isScalar=isScalar;Pt.prettyToken=prettyToken;Pt.tokenType=tokenType},40361:(Wt,Pt,en)=>{"use strict";var tn=en(3461);function isEmpty(Wt){switch(Wt){case undefined:case" ":case"\n":case"\r":case"\t":return true;default:return false}}const nn="0123456789ABCDEFabcdef".split("");const an="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()".split("");const rn=",[]{}".split("");const In=" ,[]{}\n\r\t".split("");const isNotAnchorChar=Wt=>!Wt||In.includes(Wt);class Lexer{constructor(){this.atEnd=false;this.blockScalarIndent=-1;this.blockScalarKeep=false;this.buffer="";this.flowKey=false;this.flowLevel=0;this.indentNext=0;this.indentValue=0;this.lineEndPos=null;this.next=null;this.pos=0}*lex(Wt,Pt=false){if(Wt){this.buffer=this.buffer?this.buffer+Wt:Wt;this.lineEndPos=null}this.atEnd=!Pt;let en=this.next??"stream";while(en&&(Pt||this.hasChars(1)))en=yield*this.parseNext(en)}atLineEnd(){let Wt=this.pos;let Pt=this.buffer[Wt];while(Pt===" "||Pt==="\t")Pt=this.buffer[++Wt];if(!Pt||Pt==="#"||Pt==="\n")return true;if(Pt==="\r")return this.buffer[Wt+1]==="\n";return false}charAt(Wt){return this.buffer[this.pos+Wt]}continueScalar(Wt){let Pt=this.buffer[Wt];if(this.indentNext>0){let en=0;while(Pt===" ")Pt=this.buffer[++en+Wt];if(Pt==="\r"){const Pt=this.buffer[en+Wt+1];if(Pt==="\n"||!Pt&&!this.atEnd)return Wt+en+1}return Pt==="\n"||en>=this.indentNext||!Pt&&!this.atEnd?Wt+en:-1}if(Pt==="-"||Pt==="."){const Pt=this.buffer.substr(Wt,3);if((Pt==="---"||Pt==="...")&&isEmpty(this.buffer[Wt+3]))return-1}return Wt}getLine(){let Wt=this.lineEndPos;if(typeof Wt!=="number"||Wt!==-1&&Wtthis.indentValue&&!isEmpty(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){const[Wt,Pt]=this.peek(2);if(!Pt&&!this.atEnd)return this.setNext("block-start");if((Wt==="-"||Wt==="?"||Wt===":")&&isEmpty(Pt)){const Wt=(yield*this.pushCount(1))+(yield*this.pushSpaces(true));this.indentNext=this.indentValue+1;this.indentValue+=Wt;return yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(true);const Wt=this.getLine();if(Wt===null)return this.setNext("doc");let Pt=yield*this.pushIndicators();switch(Wt[Pt]){case"#":yield*this.pushCount(Wt.length-Pt);case undefined:yield*this.pushNewline();return yield*this.parseLineStart();case"{":case"[":yield*this.pushCount(1);this.flowKey=false;this.flowLevel=1;return"flow";case"}":case"]":yield*this.pushCount(1);return"doc";case"*":yield*this.pushUntil(isNotAnchorChar);return"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":Pt+=(yield*this.parseBlockScalarHeader());Pt+=(yield*this.pushSpaces(true));yield*this.pushCount(Wt.length-Pt);yield*this.pushNewline();return yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let Wt,Pt;let en=-1;do{Wt=yield*this.pushNewline();if(Wt>0){Pt=yield*this.pushSpaces(false);this.indentValue=en=Pt}else{Pt=0}Pt+=(yield*this.pushSpaces(true))}while(Wt+Pt>0);const nn=this.getLine();if(nn===null)return this.setNext("flow");if(en!==-1&&en"0"&&Pt<="9")this.blockScalarIndent=Number(Pt)-1;else if(Pt!=="-")break}return yield*this.pushUntil((Wt=>isEmpty(Wt)||Wt==="#"))}*parseBlockScalar(){let Wt=this.pos-1;let Pt=0;let en;e:for(let tn=this.pos;en=this.buffer[tn];++tn){switch(en){case" ":Pt+=1;break;case"\n":Wt=tn;Pt=0;break;case"\r":{const Wt=this.buffer[tn+1];if(!Wt&&!this.atEnd)return this.setNext("block-scalar");if(Wt==="\n")break}default:break e}}if(!en&&!this.atEnd)return this.setNext("block-scalar");if(Pt>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=Pt;else this.indentNext+=this.blockScalarIndent;do{const Pt=this.continueScalar(Wt+1);if(Pt===-1)break;Wt=this.buffer.indexOf("\n",Pt)}while(Wt!==-1);if(Wt===-1){if(!this.atEnd)return this.setNext("block-scalar");Wt=this.buffer.length}}if(!this.blockScalarKeep){do{let en=Wt-1;let tn=this.buffer[en];if(tn==="\r")tn=this.buffer[--en];const nn=en;while(tn===" "||tn==="\t")tn=this.buffer[--en];if(tn==="\n"&&en>=this.pos&&en+1+Pt>nn)Wt=en;else break}while(true)}yield tn.SCALAR;yield*this.pushToIndex(Wt+1,true);return yield*this.parseLineStart()}*parsePlainScalar(){const Wt=this.flowLevel>0;let Pt=this.pos-1;let en=this.pos-1;let nn;while(nn=this.buffer[++en]){if(nn===":"){const tn=this.buffer[en+1];if(isEmpty(tn)||Wt&&tn===",")break;Pt=en}else if(isEmpty(nn)){let tn=this.buffer[en+1];if(nn==="\r"){if(tn==="\n"){en+=1;nn="\n";tn=this.buffer[en+1]}else Pt=en}if(tn==="#"||Wt&&rn.includes(tn))break;if(nn==="\n"){const Wt=this.continueScalar(en+1);if(Wt===-1)break;en=Math.max(en,Wt-2)}}else{if(Wt&&rn.includes(nn))break;Pt=en}}if(!nn&&!this.atEnd)return this.setNext("plain-scalar");yield tn.SCALAR;yield*this.pushToIndex(Pt+1,true);return Wt?"flow":"doc"}*pushCount(Wt){if(Wt>0){yield this.buffer.substr(this.pos,Wt);this.pos+=Wt;return Wt}return 0}*pushToIndex(Wt,Pt){const en=this.buffer.slice(this.pos,Wt);if(en){yield en;this.pos+=en.length;return en.length}else if(Pt)yield"";return 0}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(true))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(isNotAnchorChar))+(yield*this.pushSpaces(true))+(yield*this.pushIndicators());case"-":case"?":case":":{const Wt=this.flowLevel>0;const Pt=this.charAt(1);if(isEmpty(Pt)||Wt&&rn.includes(Pt)){if(!Wt)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=false;return(yield*this.pushCount(1))+(yield*this.pushSpaces(true))+(yield*this.pushIndicators())}}}return 0}*pushTag(){if(this.charAt(1)==="<"){let Wt=this.pos+2;let Pt=this.buffer[Wt];while(!isEmpty(Pt)&&Pt!==">")Pt=this.buffer[++Wt];return yield*this.pushToIndex(Pt===">"?Wt+1:Wt,false)}else{let Wt=this.pos+1;let Pt=this.buffer[Wt];while(Pt){if(an.includes(Pt))Pt=this.buffer[++Wt];else if(Pt==="%"&&nn.includes(this.buffer[Wt+1])&&nn.includes(this.buffer[Wt+2])){Pt=this.buffer[Wt+=3]}else break}return yield*this.pushToIndex(Wt,false)}}*pushNewline(){const Wt=this.buffer[this.pos];if(Wt==="\n")return yield*this.pushCount(1);else if(Wt==="\r"&&this.charAt(1)==="\n")return yield*this.pushCount(2);else return 0}*pushSpaces(Wt){let Pt=this.pos-1;let en;do{en=this.buffer[++Pt]}while(en===" "||Wt&&en==="\t");const tn=Pt-this.pos;if(tn>0){yield this.buffer.substr(this.pos,tn);this.pos=Pt}return tn}*pushUntil(Wt){let Pt=this.pos;let en=this.buffer[Pt];while(!Wt(en))en=this.buffer[++Pt];return yield*this.pushToIndex(Pt,false)}}Pt.Lexer=Lexer},66628:(Wt,Pt)=>{"use strict";class LineCounter{constructor(){this.lineStarts=[];this.addNewLine=Wt=>this.lineStarts.push(Wt);this.linePos=Wt=>{let Pt=0;let en=this.lineStarts.length;while(Pt>1;if(this.lineStarts[tn]{"use strict";var tn=en(3461);var nn=en(40361);function includesToken(Wt,Pt){for(let en=0;en=0){switch(Wt[Pt].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}}while(Wt[++Pt]?.type==="space"){}return Wt.splice(Pt,Wt.length)}function fixFlowSeqItems(Wt){if(Wt.start.type==="flow-seq-start"){for(const Pt of Wt.items){if(Pt.sep&&!Pt.value&&!includesToken(Pt.start,"explicit-key-ind")&&!includesToken(Pt.sep,"map-value-ind")){if(Pt.key)Pt.value=Pt.key;delete Pt.key;if(isFlowToken(Pt.value)){if(Pt.value.end)Array.prototype.push.apply(Pt.value.end,Pt.sep);else Pt.value.end=Pt.sep}else Array.prototype.push.apply(Pt.start,Pt.sep);delete Pt.sep}}}}class Parser{constructor(Wt){this.atNewLine=true;this.atScalar=false;this.indent=0;this.offset=0;this.onKeyLine=false;this.stack=[];this.source="";this.type="";this.lexer=new nn.Lexer;this.onNewLine=Wt}*parse(Wt,Pt=false){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(const en of this.lexer.lex(Wt,Pt))yield*this.next(en);if(!Pt)yield*this.end()}*next(Wt){this.source=Wt;if(process.env.LOG_TOKENS)console.log("|",tn.prettyToken(Wt));if(this.atScalar){this.atScalar=false;yield*this.step();this.offset+=Wt.length;return}const Pt=tn.tokenType(Wt);if(!Pt){const Pt=`Not a YAML token: ${Wt}`;yield*this.pop({type:"error",offset:this.offset,message:Pt,source:Wt});this.offset+=Wt.length}else if(Pt==="scalar"){this.atNewLine=false;this.atScalar=true;this.type="scalar"}else{this.type=Pt;yield*this.step();switch(Pt){case"newline":this.atNewLine=true;this.indent=0;if(this.onNewLine)this.onNewLine(this.offset+Wt.length);break;case"space":if(this.atNewLine&&Wt[0]===" ")this.indent+=Wt.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=Wt.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=false}this.offset+=Wt.length}}*end(){while(this.stack.length>0)yield*this.pop()}get sourceToken(){const Wt={type:this.type,offset:this.offset,indent:this.indent,source:this.source};return Wt}*step(){const Wt=this.peek(1);if(this.type==="doc-end"&&(!Wt||Wt.type!=="doc-end")){while(this.stack.length>0)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!Wt)return yield*this.stream();switch(Wt.type){case"document":return yield*this.document(Wt);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(Wt);case"block-scalar":return yield*this.blockScalar(Wt);case"block-map":return yield*this.blockMap(Wt);case"block-seq":return yield*this.blockSequence(Wt);case"flow-collection":return yield*this.flowCollection(Wt);case"doc-end":return yield*this.documentEnd(Wt)}yield*this.pop()}peek(Wt){return this.stack[this.stack.length-Wt]}*pop(Wt){const Pt=Wt??this.stack.pop();if(!Pt){const Wt="Tried to pop an empty stack";yield{type:"error",offset:this.offset,source:"",message:Wt}}else if(this.stack.length===0){yield Pt}else{const Wt=this.peek(1);if(Pt.type==="block-scalar"){Pt.indent="indent"in Wt?Wt.indent:0}else if(Pt.type==="flow-collection"&&Wt.type==="document"){Pt.indent=0}if(Pt.type==="flow-collection")fixFlowSeqItems(Pt);switch(Wt.type){case"document":Wt.value=Pt;break;case"block-scalar":Wt.props.push(Pt);break;case"block-map":{const en=Wt.items[Wt.items.length-1];if(en.value){Wt.items.push({start:[],key:Pt,sep:[]});this.onKeyLine=true;return}else if(en.sep){en.value=Pt}else{Object.assign(en,{key:Pt,sep:[]});this.onKeyLine=!includesToken(en.start,"explicit-key-ind");return}break}case"block-seq":{const en=Wt.items[Wt.items.length-1];if(en.value)Wt.items.push({start:[],value:Pt});else en.value=Pt;break}case"flow-collection":{const en=Wt.items[Wt.items.length-1];if(!en||en.value)Wt.items.push({start:[],key:Pt,sep:[]});else if(en.sep)en.value=Pt;else Object.assign(en,{key:Pt,sep:[]});return}default:yield*this.pop();yield*this.pop(Pt)}if((Wt.type==="document"||Wt.type==="block-map"||Wt.type==="block-seq")&&(Pt.type==="block-map"||Pt.type==="block-seq")){const en=Pt.items[Pt.items.length-1];if(en&&!en.sep&&!en.value&&en.start.length>0&&findNonEmptyIndex(en.start)===-1&&(Pt.indent===0||en.start.every((Wt=>Wt.type!=="comment"||Wt.indent=Wt.indent){const en=!this.onKeyLine&&this.indent===Wt.indent&&Pt.sep&&this.type!=="seq-item-ind";let tn=[];if(en&&Pt.sep&&!Pt.value){const en=[];for(let tn=0;tnWt.indent)en.length=0;break;default:en.length=0}}if(en.length>=2)tn=Pt.sep.splice(en[1])}switch(this.type){case"anchor":case"tag":if(en||Pt.value){tn.push(this.sourceToken);Wt.items.push({start:tn});this.onKeyLine=true}else if(Pt.sep){Pt.sep.push(this.sourceToken)}else{Pt.start.push(this.sourceToken)}return;case"explicit-key-ind":if(!Pt.sep&&!includesToken(Pt.start,"explicit-key-ind")){Pt.start.push(this.sourceToken)}else if(en||Pt.value){tn.push(this.sourceToken);Wt.items.push({start:tn})}else{this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]})}this.onKeyLine=true;return;case"map-value-ind":if(includesToken(Pt.start,"explicit-key-ind")){if(!Pt.sep){if(includesToken(Pt.start,"newline")){Object.assign(Pt,{key:null,sep:[this.sourceToken]})}else{const Wt=getFirstKeyStartProps(Pt.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Wt,key:null,sep:[this.sourceToken]}]})}}else if(Pt.value){Wt.items.push({start:[],key:null,sep:[this.sourceToken]})}else if(includesToken(Pt.sep,"map-value-ind")){this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:tn,key:null,sep:[this.sourceToken]}]})}else if(isFlowToken(Pt.key)&&!includesToken(Pt.sep,"newline")){const Wt=getFirstKeyStartProps(Pt.start);const en=Pt.key;const tn=Pt.sep;tn.push(this.sourceToken);delete Pt.key,delete Pt.sep;this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Wt,key:en,sep:tn}]})}else if(tn.length>0){Pt.sep=Pt.sep.concat(tn,this.sourceToken)}else{Pt.sep.push(this.sourceToken)}}else{if(!Pt.sep){Object.assign(Pt,{key:null,sep:[this.sourceToken]})}else if(Pt.value||en){Wt.items.push({start:tn,key:null,sep:[this.sourceToken]})}else if(includesToken(Pt.sep,"map-value-ind")){this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]})}else{Pt.sep.push(this.sourceToken)}}this.onKeyLine=true;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const nn=this.flowScalar(this.type);if(en||Pt.value){Wt.items.push({start:tn,key:nn,sep:[]});this.onKeyLine=true}else if(Pt.sep){this.stack.push(nn)}else{Object.assign(Pt,{key:nn,sep:[]});this.onKeyLine=true}return}default:{const nn=this.startBlockValue(Wt);if(nn){if(en&&nn.type!=="block-seq"&&includesToken(Pt.start,"explicit-key-ind")){Wt.items.push({start:tn})}this.stack.push(nn);return}}}}yield*this.pop();yield*this.step()}*blockSequence(Wt){const Pt=Wt.items[Wt.items.length-1];switch(this.type){case"newline":if(Pt.value){const en="end"in Pt.value?Pt.value.end:undefined;const tn=Array.isArray(en)?en[en.length-1]:undefined;if(tn?.type==="comment")en?.push(this.sourceToken);else Wt.items.push({start:[this.sourceToken]})}else Pt.start.push(this.sourceToken);return;case"space":case"comment":if(Pt.value)Wt.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(Pt.start,Wt.indent)){const en=Wt.items[Wt.items.length-2];const tn=en?.value?.end;if(Array.isArray(tn)){Array.prototype.push.apply(tn,Pt.start);tn.push(this.sourceToken);Wt.items.pop();return}}Pt.start.push(this.sourceToken)}return;case"anchor":case"tag":if(Pt.value||this.indent<=Wt.indent)break;Pt.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==Wt.indent)break;if(Pt.value||includesToken(Pt.start,"seq-item-ind"))Wt.items.push({start:[this.sourceToken]});else Pt.start.push(this.sourceToken);return}if(this.indent>Wt.indent){const Pt=this.startBlockValue(Wt);if(Pt){this.stack.push(Pt);return}}yield*this.pop();yield*this.step()}*flowCollection(Wt){const Pt=Wt.items[Wt.items.length-1];if(this.type==="flow-error-end"){let Wt;do{yield*this.pop();Wt=this.peek(1)}while(Wt&&Wt.type==="flow-collection")}else if(Wt.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!Pt||Pt.sep)Wt.items.push({start:[this.sourceToken]});else Pt.start.push(this.sourceToken);return;case"map-value-ind":if(!Pt||Pt.value)Wt.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Pt.sep)Pt.sep.push(this.sourceToken);else Object.assign(Pt,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":if(!Pt||Pt.value)Wt.items.push({start:[this.sourceToken]});else if(Pt.sep)Pt.sep.push(this.sourceToken);else Pt.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const en=this.flowScalar(this.type);if(!Pt||Pt.value)Wt.items.push({start:[],key:en,sep:[]});else if(Pt.sep)this.stack.push(en);else Object.assign(Pt,{key:en,sep:[]});return}case"flow-map-end":case"flow-seq-end":Wt.end.push(this.sourceToken);return}const en=this.startBlockValue(Wt);if(en)this.stack.push(en);else{yield*this.pop();yield*this.step()}}else{const Pt=this.peek(2);if(Pt.type==="block-map"&&(this.type==="map-value-ind"&&Pt.indent===Wt.indent||this.type==="newline"&&!Pt.items[Pt.items.length-1].sep)){yield*this.pop();yield*this.step()}else if(this.type==="map-value-ind"&&Pt.type!=="flow-collection"){const en=getPrevProps(Pt);const tn=getFirstKeyStartProps(en);fixFlowSeqItems(Wt);const nn=Wt.end.splice(1,Wt.end.length);nn.push(this.sourceToken);const an={type:"block-map",offset:Wt.offset,indent:Wt.indent,items:[{start:tn,key:Wt,sep:nn}]};this.onKeyLine=true;this.stack[this.stack.length-1]=an}else{yield*this.lineEnd(Wt)}}}flowScalar(Wt){if(this.onNewLine){let Wt=this.source.indexOf("\n")+1;while(Wt!==0){this.onNewLine(this.offset+Wt);Wt=this.source.indexOf("\n",Wt)+1}}return{type:Wt,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(Wt){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=true;const Pt=getPrevProps(Wt);const en=getFirstKeyStartProps(Pt);en.push(this.sourceToken);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:en}]}}case"map-value-ind":{this.onKeyLine=true;const Pt=getPrevProps(Wt);const en=getFirstKeyStartProps(Pt);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:en,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(Wt,Pt){if(this.type!=="comment")return false;if(this.indent<=Pt)return false;return Wt.every((Wt=>Wt.type==="newline"||Wt.type==="space"))}*documentEnd(Wt){if(this.type!=="doc-mode"){if(Wt.end)Wt.end.push(this.sourceToken);else Wt.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(Wt){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop();yield*this.step();break;case"newline":this.onKeyLine=false;case"space":case"comment":default:if(Wt.end)Wt.end.push(this.sourceToken);else Wt.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}Pt.Parser=Parser},84047:(Wt,Pt,en)=>{"use strict";var tn=en(89984);var nn=en(3021);var an=en(91464);var rn=en(57249);var In=en(66628);var sn=en(3456);function parseOptions(Wt){const Pt=Wt.prettyErrors!==false;const en=Wt.lineCounter||Pt&&new In.LineCounter||null;return{lineCounter:en,prettyErrors:Pt}}function parseAllDocuments(Wt,Pt={}){const{lineCounter:en,prettyErrors:nn}=parseOptions(Pt);const rn=new sn.Parser(en?.addNewLine);const In=new tn.Composer(Pt);const on=Array.from(In.compose(rn.parse(Wt)));if(nn&&en)for(const Pt of on){Pt.errors.forEach(an.prettifyError(Wt,en));Pt.warnings.forEach(an.prettifyError(Wt,en))}if(on.length>0)return on;return Object.assign([],{empty:true},In.streamInfo())}function parseDocument(Wt,Pt={}){const{lineCounter:en,prettyErrors:nn}=parseOptions(Pt);const rn=new sn.Parser(en?.addNewLine);const In=new tn.Composer(Pt);let on=null;for(const Pt of In.compose(rn.parse(Wt),true,Wt.length)){if(!on)on=Pt;else if(on.options.logLevel!=="silent"){on.errors.push(new an.YAMLParseError(Pt.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}}if(nn&&en){on.errors.forEach(an.prettifyError(Wt,en));on.warnings.forEach(an.prettifyError(Wt,en))}return on}function parse(Wt,Pt,en){let tn=undefined;if(typeof Pt==="function"){tn=Pt}else if(en===undefined&&Pt&&typeof Pt==="object"){en=Pt}const nn=parseDocument(Wt,en);if(!nn)return null;nn.warnings.forEach((Wt=>rn.warn(nn.options.logLevel,Wt)));if(nn.errors.length>0){if(nn.options.logLevel!=="silent")throw nn.errors[0];else nn.errors=[]}return nn.toJS(Object.assign({reviver:tn},en))}function stringify(Wt,Pt,en){let tn=null;if(typeof Pt==="function"||Array.isArray(Pt)){tn=Pt}else if(en===undefined&&Pt){en=Pt}if(typeof en==="string")en=en.length;if(typeof en==="number"){const Wt=Math.round(en);en=Wt<1?undefined:Wt>8?{indent:8}:{indent:Wt}}if(Wt===undefined){const{keepUndefined:Wt}=en??Pt??{};if(!Wt)return undefined}return new nn.Document(Wt,tn,en).toString(en)}Pt.parse=parse;Pt.parseAllDocuments=parseAllDocuments;Pt.parseDocument=parseDocument;Pt.stringify=stringify},45840:(Wt,Pt,en)=>{"use strict";var tn=en(41127);var nn=en(47451);var an=en(1706);var rn=en(66464);var In=en(90018);const sortMapEntriesByKey=(Wt,Pt)=>Wt.keyPt.key?1:0;class Schema{constructor({compat:Wt,customTags:Pt,merge:en,resolveKnownTags:sn,schema:on,sortMapEntries:cn,toStringDefaults:dn}){this.compat=Array.isArray(Wt)?In.getTags(Wt,"compat"):Wt?In.getTags(null,Wt):null;this.merge=!!en;this.name=typeof on==="string"&&on||"core";this.knownTags=sn?In.coreKnownTags:{};this.tags=In.getTags(Pt,this.name);this.toStringOptions=dn??null;Object.defineProperty(this,tn.MAP,{value:nn.map});Object.defineProperty(this,tn.SCALAR,{value:rn.string});Object.defineProperty(this,tn.SEQ,{value:an.seq});this.sortMapEntries=typeof cn==="function"?cn:cn===true?sortMapEntriesByKey:null}clone(){const Wt=Object.create(Schema.prototype,Object.getOwnPropertyDescriptors(this));Wt.tags=this.tags.slice();return Wt}}Pt.Schema=Schema},47451:(Wt,Pt,en)=>{"use strict";var tn=en(41127);var nn=en(84454);const an={collection:"map",default:true,nodeClass:nn.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(Wt,Pt){if(!tn.isMap(Wt))Pt("Expected a mapping for this tag");return Wt},createNode:(Wt,Pt,en)=>nn.YAMLMap.from(Wt,Pt,en)};Pt.map=an},73632:(Wt,Pt,en)=>{"use strict";var tn=en(63301);const nn={identify:Wt=>Wt==null,createNode:()=>new tn.Scalar(null),default:true,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new tn.Scalar(null),stringify:({source:Wt},Pt)=>typeof Wt==="string"&&nn.test.test(Wt)?Wt:Pt.options.nullStr};Pt.nullTag=nn},1706:(Wt,Pt,en)=>{"use strict";var tn=en(41127);var nn=en(92223);const an={collection:"seq",default:true,nodeClass:nn.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(Wt,Pt){if(!tn.isSeq(Wt))Pt("Expected a sequence for this tag");return Wt},createNode:(Wt,Pt,en)=>nn.YAMLSeq.from(Wt,Pt,en)};Pt.seq=an},66464:(Wt,Pt,en)=>{"use strict";var tn=en(83069);const nn={identify:Wt=>typeof Wt==="string",default:true,tag:"tag:yaml.org,2002:str",resolve:Wt=>Wt,stringify(Wt,Pt,en,nn){Pt=Object.assign({actualString:true},Pt);return tn.stringifyString(Wt,Pt,en,nn)}};Pt.string=nn},73959:(Wt,Pt,en)=>{"use strict";var tn=en(63301);const nn={identify:Wt=>typeof Wt==="boolean",default:true,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:Wt=>new tn.Scalar(Wt[0]==="t"||Wt[0]==="T"),stringify({source:Wt,value:Pt},en){if(Wt&&nn.test.test(Wt)){const en=Wt[0]==="t"||Wt[0]==="T";if(Pt===en)return Wt}return Pt?en.options.trueStr:en.options.falseStr}};Pt.boolTag=nn},38405:(Wt,Pt,en)=>{"use strict";var tn=en(63301);var nn=en(28689);const an={identify:Wt=>typeof Wt==="number",default:true,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF|nan|NaN|NAN))$/,resolve:Wt=>Wt.slice(-3).toLowerCase()==="nan"?NaN:Wt[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:nn.stringifyNumber};const rn={identify:Wt=>typeof Wt==="number",default:true,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:Wt=>parseFloat(Wt),stringify(Wt){const Pt=Number(Wt.value);return isFinite(Pt)?Pt.toExponential():nn.stringifyNumber(Wt)}};const In={identify:Wt=>typeof Wt==="number",default:true,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(Wt){const Pt=new tn.Scalar(parseFloat(Wt));const en=Wt.indexOf(".");if(en!==-1&&Wt[Wt.length-1]==="0")Pt.minFractionDigits=Wt.length-en-1;return Pt},stringify:nn.stringifyNumber};Pt.float=In;Pt.floatExp=rn;Pt.floatNaN=an},59874:(Wt,Pt,en)=>{"use strict";var tn=en(28689);const intIdentify=Wt=>typeof Wt==="bigint"||Number.isInteger(Wt);const intResolve=(Wt,Pt,en,{intAsBigInt:tn})=>tn?BigInt(Wt):parseInt(Wt.substring(Pt),en);function intStringify(Wt,Pt,en){const{value:nn}=Wt;if(intIdentify(nn)&&nn>=0)return en+nn.toString(Pt);return tn.stringifyNumber(Wt)}const nn={identify:Wt=>intIdentify(Wt)&&Wt>=0,default:true,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(Wt,Pt,en)=>intResolve(Wt,2,8,en),stringify:Wt=>intStringify(Wt,8,"0o")};const an={identify:intIdentify,default:true,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(Wt,Pt,en)=>intResolve(Wt,0,10,en),stringify:tn.stringifyNumber};const rn={identify:Wt=>intIdentify(Wt)&&Wt>=0,default:true,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(Wt,Pt,en)=>intResolve(Wt,2,16,en),stringify:Wt=>intStringify(Wt,16,"0x")};Pt.int=an;Pt.intHex=rn;Pt.intOct=nn},70896:(Wt,Pt,en)=>{"use strict";var tn=en(47451);var nn=en(73632);var an=en(1706);var rn=en(66464);var In=en(73959);var sn=en(38405);var on=en(59874);const cn=[tn.map,an.seq,rn.string,nn.nullTag,In.boolTag,on.intOct,on.int,on.intHex,sn.floatNaN,sn.floatExp,sn.float];Pt.schema=cn},33559:(Wt,Pt,en)=>{"use strict";var tn=en(63301);var nn=en(47451);var an=en(1706);function intIdentify(Wt){return typeof Wt==="bigint"||Number.isInteger(Wt)}const stringifyJSON=({value:Wt})=>JSON.stringify(Wt);const rn=[{identify:Wt=>typeof Wt==="string",default:true,tag:"tag:yaml.org,2002:str",resolve:Wt=>Wt,stringify:stringifyJSON},{identify:Wt=>Wt==null,createNode:()=>new tn.Scalar(null),default:true,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:stringifyJSON},{identify:Wt=>typeof Wt==="boolean",default:true,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:Wt=>Wt==="true",stringify:stringifyJSON},{identify:intIdentify,default:true,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(Wt,Pt,{intAsBigInt:en})=>en?BigInt(Wt):parseInt(Wt,10),stringify:({value:Wt})=>intIdentify(Wt)?Wt.toString():JSON.stringify(Wt)},{identify:Wt=>typeof Wt==="number",default:true,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:Wt=>parseFloat(Wt),stringify:stringifyJSON}];const In={default:true,tag:"",test:/^/,resolve(Wt,Pt){Pt(`Unresolved plain scalar ${JSON.stringify(Wt)}`);return Wt}};const sn=[nn.map,an.seq].concat(rn,In);Pt.schema=sn},90018:(Wt,Pt,en)=>{"use strict";var tn=en(47451);var nn=en(73632);var an=en(1706);var rn=en(66464);var In=en(73959);var sn=en(38405);var on=en(59874);var cn=en(70896);var dn=en(33559);var un=en(56083);var pn=en(50303);var mn=en(18385);var bn=en(35913);var Gn=en(81528);var hn=en(24371);const Zn=new Map([["core",cn.schema],["failsafe",[tn.map,an.seq,rn.string]],["json",dn.schema],["yaml11",bn.schema],["yaml-1.1",bn.schema]]);const An={binary:un.binary,bool:In.boolTag,float:sn.float,floatExp:sn.floatExp,floatNaN:sn.floatNaN,floatTime:hn.floatTime,int:on.int,intHex:on.intHex,intOct:on.intOct,intTime:hn.intTime,map:tn.map,null:nn.nullTag,omap:pn.omap,pairs:mn.pairs,seq:an.seq,set:Gn.set,timestamp:hn.timestamp};const Wn={"tag:yaml.org,2002:binary":un.binary,"tag:yaml.org,2002:omap":pn.omap,"tag:yaml.org,2002:pairs":mn.pairs,"tag:yaml.org,2002:set":Gn.set,"tag:yaml.org,2002:timestamp":hn.timestamp};function getTags(Wt,Pt){let en=Zn.get(Pt);if(!en){if(Array.isArray(Wt))en=[];else{const Wt=Array.from(Zn.keys()).filter((Wt=>Wt!=="yaml11")).map((Wt=>JSON.stringify(Wt))).join(", ");throw new Error(`Unknown schema "${Pt}"; use one of ${Wt} or define customTags array`)}}if(Array.isArray(Wt)){for(const Pt of Wt)en=en.concat(Pt)}else if(typeof Wt==="function"){en=Wt(en.slice())}return en.map((Wt=>{if(typeof Wt!=="string")return Wt;const Pt=An[Wt];if(Pt)return Pt;const en=Object.keys(An).map((Wt=>JSON.stringify(Wt))).join(", ");throw new Error(`Unknown custom tag "${Wt}"; use one of ${en}`)}))}Pt.coreKnownTags=Wn;Pt.getTags=getTags},56083:(Wt,Pt,en)=>{"use strict";var tn=en(63301);var nn=en(83069);const an={identify:Wt=>Wt instanceof Uint8Array,default:false,tag:"tag:yaml.org,2002:binary",resolve(Wt,Pt){if(typeof Buffer==="function"){return Buffer.from(Wt,"base64")}else if(typeof atob==="function"){const Pt=atob(Wt.replace(/[\n\r]/g,""));const en=new Uint8Array(Pt.length);for(let Wt=0;Wt{"use strict";var tn=en(63301);function boolStringify({value:Wt,source:Pt},en){const tn=Wt?nn:an;if(Pt&&tn.test.test(Pt))return Pt;return Wt?en.options.trueStr:en.options.falseStr}const nn={identify:Wt=>Wt===true,default:true,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new tn.Scalar(true),stringify:boolStringify};const an={identify:Wt=>Wt===false,default:true,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,resolve:()=>new tn.Scalar(false),stringify:boolStringify};Pt.falseTag=an;Pt.trueTag=nn},35782:(Wt,Pt,en)=>{"use strict";var tn=en(63301);var nn=en(28689);const an={identify:Wt=>typeof Wt==="number",default:true,tag:"tag:yaml.org,2002:float",test:/^[-+]?\.(?:inf|Inf|INF|nan|NaN|NAN)$/,resolve:Wt=>Wt.slice(-3).toLowerCase()==="nan"?NaN:Wt[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:nn.stringifyNumber};const rn={identify:Wt=>typeof Wt==="number",default:true,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:Wt=>parseFloat(Wt.replace(/_/g,"")),stringify(Wt){const Pt=Number(Wt.value);return isFinite(Pt)?Pt.toExponential():nn.stringifyNumber(Wt)}};const In={identify:Wt=>typeof Wt==="number",default:true,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(Wt){const Pt=new tn.Scalar(parseFloat(Wt.replace(/_/g,"")));const en=Wt.indexOf(".");if(en!==-1){const tn=Wt.substring(en+1).replace(/_/g,"");if(tn[tn.length-1]==="0")Pt.minFractionDigits=tn.length}return Pt},stringify:nn.stringifyNumber};Pt.float=In;Pt.floatExp=rn;Pt.floatNaN=an},10873:(Wt,Pt,en)=>{"use strict";var tn=en(28689);const intIdentify=Wt=>typeof Wt==="bigint"||Number.isInteger(Wt);function intResolve(Wt,Pt,en,{intAsBigInt:tn}){const nn=Wt[0];if(nn==="-"||nn==="+")Pt+=1;Wt=Wt.substring(Pt).replace(/_/g,"");if(tn){switch(en){case 2:Wt=`0b${Wt}`;break;case 8:Wt=`0o${Wt}`;break;case 16:Wt=`0x${Wt}`;break}const Pt=BigInt(Wt);return nn==="-"?BigInt(-1)*Pt:Pt}const an=parseInt(Wt,en);return nn==="-"?-1*an:an}function intStringify(Wt,Pt,en){const{value:nn}=Wt;if(intIdentify(nn)){const Wt=nn.toString(Pt);return nn<0?"-"+en+Wt.substr(1):en+Wt}return tn.stringifyNumber(Wt)}const nn={identify:intIdentify,default:true,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(Wt,Pt,en)=>intResolve(Wt,2,2,en),stringify:Wt=>intStringify(Wt,2,"0b")};const an={identify:intIdentify,default:true,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(Wt,Pt,en)=>intResolve(Wt,1,8,en),stringify:Wt=>intStringify(Wt,8,"0")};const rn={identify:intIdentify,default:true,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(Wt,Pt,en)=>intResolve(Wt,0,10,en),stringify:tn.stringifyNumber};const In={identify:intIdentify,default:true,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(Wt,Pt,en)=>intResolve(Wt,2,16,en),stringify:Wt=>intStringify(Wt,16,"0x")};Pt.int=rn;Pt.intBin=nn;Pt.intHex=In;Pt.intOct=an},50303:(Wt,Pt,en)=>{"use strict";var tn=en(41127);var nn=en(74043);var an=en(84454);var rn=en(92223);var In=en(18385);class YAMLOMap extends rn.YAMLSeq{constructor(){super();this.add=an.YAMLMap.prototype.add.bind(this);this.delete=an.YAMLMap.prototype.delete.bind(this);this.get=an.YAMLMap.prototype.get.bind(this);this.has=an.YAMLMap.prototype.has.bind(this);this.set=an.YAMLMap.prototype.set.bind(this);this.tag=YAMLOMap.tag}toJSON(Wt,Pt){if(!Pt)return super.toJSON(Wt);const en=new Map;if(Pt?.onCreate)Pt.onCreate(en);for(const Wt of this.items){let an,rn;if(tn.isPair(Wt)){an=nn.toJS(Wt.key,"",Pt);rn=nn.toJS(Wt.value,an,Pt)}else{an=nn.toJS(Wt,"",Pt)}if(en.has(an))throw new Error("Ordered maps must not include duplicate keys");en.set(an,rn)}return en}static from(Wt,Pt,en){const tn=In.createPairs(Wt,Pt,en);const nn=new this;nn.items=tn.items;return nn}}YAMLOMap.tag="tag:yaml.org,2002:omap";const sn={collection:"seq",identify:Wt=>Wt instanceof Map,nodeClass:YAMLOMap,default:false,tag:"tag:yaml.org,2002:omap",resolve(Wt,Pt){const en=In.resolvePairs(Wt,Pt);const nn=[];for(const{key:Wt}of en.items){if(tn.isScalar(Wt)){if(nn.includes(Wt.value)){Pt(`Ordered maps must not include duplicate keys: ${Wt.value}`)}else{nn.push(Wt.value)}}}return Object.assign(new YAMLOMap,en)},createNode:(Wt,Pt,en)=>YAMLOMap.from(Wt,Pt,en)};Pt.YAMLOMap=YAMLOMap;Pt.omap=sn},18385:(Wt,Pt,en)=>{"use strict";var tn=en(41127);var nn=en(57165);var an=en(63301);var rn=en(92223);function resolvePairs(Wt,Pt){if(tn.isSeq(Wt)){for(let en=0;en1)Pt("Each pair must have its own sequence indicator");const Wt=rn.items[0]||new nn.Pair(new an.Scalar(null));if(rn.commentBefore)Wt.key.commentBefore=Wt.key.commentBefore?`${rn.commentBefore}\n${Wt.key.commentBefore}`:rn.commentBefore;if(rn.comment){const Pt=Wt.value??Wt.key;Pt.comment=Pt.comment?`${rn.comment}\n${Pt.comment}`:rn.comment}rn=Wt}Wt.items[en]=tn.isPair(rn)?rn:new nn.Pair(rn)}}else Pt("Expected a sequence for this tag");return Wt}function createPairs(Wt,Pt,en){const{replacer:tn}=en;const an=new rn.YAMLSeq(Wt);an.tag="tag:yaml.org,2002:pairs";let In=0;if(Pt&&Symbol.iterator in Object(Pt))for(let Wt of Pt){if(typeof tn==="function")Wt=tn.call(Pt,String(In++),Wt);let rn,sn;if(Array.isArray(Wt)){if(Wt.length===2){rn=Wt[0];sn=Wt[1]}else throw new TypeError(`Expected [key, value] tuple: ${Wt}`)}else if(Wt&&Wt instanceof Object){const Pt=Object.keys(Wt);if(Pt.length===1){rn=Pt[0];sn=Wt[rn]}else{throw new TypeError(`Expected tuple with one key, not ${Pt.length} keys`)}}else{rn=Wt}an.items.push(nn.createPair(rn,sn,en))}return an}const In={collection:"seq",default:false,tag:"tag:yaml.org,2002:pairs",resolve:resolvePairs,createNode:createPairs};Pt.createPairs=createPairs;Pt.pairs=In;Pt.resolvePairs=resolvePairs},35913:(Wt,Pt,en)=>{"use strict";var tn=en(47451);var nn=en(73632);var an=en(1706);var rn=en(66464);var In=en(56083);var sn=en(88398);var on=en(35782);var cn=en(10873);var dn=en(50303);var un=en(18385);var pn=en(81528);var mn=en(24371);const bn=[tn.map,an.seq,rn.string,nn.nullTag,sn.trueTag,sn.falseTag,cn.intBin,cn.intOct,cn.int,cn.intHex,on.floatNaN,on.floatExp,on.float,In.binary,dn.omap,un.pairs,pn.set,mn.intTime,mn.floatTime,mn.timestamp];Pt.schema=bn},81528:(Wt,Pt,en)=>{"use strict";var tn=en(41127);var nn=en(57165);var an=en(84454);class YAMLSet extends an.YAMLMap{constructor(Wt){super(Wt);this.tag=YAMLSet.tag}add(Wt){let Pt;if(tn.isPair(Wt))Pt=Wt;else if(Wt&&typeof Wt==="object"&&"key"in Wt&&"value"in Wt&&Wt.value===null)Pt=new nn.Pair(Wt.key,null);else Pt=new nn.Pair(Wt,null);const en=an.findPair(this.items,Pt.key);if(!en)this.items.push(Pt)}get(Wt,Pt){const en=an.findPair(this.items,Wt);return!Pt&&tn.isPair(en)?tn.isScalar(en.key)?en.key.value:en.key:en}set(Wt,Pt){if(typeof Pt!=="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof Pt}`);const en=an.findPair(this.items,Wt);if(en&&!Pt){this.items.splice(this.items.indexOf(en),1)}else if(!en&&Pt){this.items.push(new nn.Pair(Wt))}}toJSON(Wt,Pt){return super.toJSON(Wt,Pt,Set)}toString(Wt,Pt,en){if(!Wt)return JSON.stringify(this);if(this.hasAllNullValues(true))return super.toString(Object.assign({},Wt,{allNullValues:true}),Pt,en);else throw new Error("Set items must all have null values")}static from(Wt,Pt,en){const{replacer:tn}=en;const an=new this(Wt);if(Pt&&Symbol.iterator in Object(Pt))for(let Wt of Pt){if(typeof tn==="function")Wt=tn.call(Pt,Wt,Wt);an.items.push(nn.createPair(Wt,null,en))}return an}}YAMLSet.tag="tag:yaml.org,2002:set";const rn={collection:"map",identify:Wt=>Wt instanceof Set,nodeClass:YAMLSet,default:false,tag:"tag:yaml.org,2002:set",createNode:(Wt,Pt,en)=>YAMLSet.from(Wt,Pt,en),resolve(Wt,Pt){if(tn.isMap(Wt)){if(Wt.hasAllNullValues(true))return Object.assign(new YAMLSet,Wt);else Pt("Set items must all have null values")}else Pt("Expected a mapping for this tag");return Wt}};Pt.YAMLSet=YAMLSet;Pt.set=rn},24371:(Wt,Pt,en)=>{"use strict";var tn=en(28689);function parseSexagesimal(Wt,Pt){const en=Wt[0];const tn=en==="-"||en==="+"?Wt.substring(1):Wt;const num=Wt=>Pt?BigInt(Wt):Number(Wt);const nn=tn.replace(/_/g,"").split(":").reduce(((Wt,Pt)=>Wt*num(60)+num(Pt)),num(0));return en==="-"?num(-1)*nn:nn}function stringifySexagesimal(Wt){let{value:Pt}=Wt;let num=Wt=>Wt;if(typeof Pt==="bigint")num=Wt=>BigInt(Wt);else if(isNaN(Pt)||!isFinite(Pt))return tn.stringifyNumber(Wt);let en="";if(Pt<0){en="-";Pt*=num(-1)}const nn=num(60);const an=[Pt%nn];if(Pt<60){an.unshift(0)}else{Pt=(Pt-an[0])/nn;an.unshift(Pt%nn);if(Pt>=60){Pt=(Pt-an[0])/nn;an.unshift(Pt)}}return en+an.map((Wt=>String(Wt).padStart(2,"0"))).join(":").replace(/000000\d*$/,"")}const nn={identify:Wt=>typeof Wt==="bigint"||Number.isInteger(Wt),default:true,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(Wt,Pt,{intAsBigInt:en})=>parseSexagesimal(Wt,en),stringify:stringifySexagesimal};const an={identify:Wt=>typeof Wt==="number",default:true,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:Wt=>parseSexagesimal(Wt,false),stringify:stringifySexagesimal};const rn={identify:Wt=>Wt instanceof Date,default:true,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})"+"(?:"+"(?:t|T|[ \\t]+)"+"([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)"+"(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?"+")?$"),resolve(Wt){const Pt=Wt.match(rn.test);if(!Pt)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");const[,en,tn,nn,an,In,sn]=Pt.map(Number);const on=Pt[7]?Number((Pt[7]+"00").substr(1,3)):0;let cn=Date.UTC(en,tn-1,nn,an||0,In||0,sn||0,on);const dn=Pt[8];if(dn&&dn!=="Z"){let Wt=parseSexagesimal(dn,false);if(Math.abs(Wt)<30)Wt*=60;cn-=6e4*Wt}return new Date(cn)},stringify:({value:Wt})=>Wt.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")};Pt.floatTime=an;Pt.intTime=nn;Pt.timestamp=rn},34475:(Wt,Pt)=>{"use strict";const en="flow";const tn="block";const nn="quoted";function foldFlowLines(Wt,Pt,en="flow",{indentAtStart:an,lineWidth:rn=80,minContentWidth:In=20,onFold:sn,onOverflow:on}={}){if(!rn||rn<0)return Wt;const cn=Math.max(1+In,1+rn-Pt.length);if(Wt.length<=cn)return Wt;const dn=[];const un={};let pn=rn-Pt.length;if(typeof an==="number"){if(an>rn-Math.max(2,In))dn.push(0);else pn=rn-an}let mn=undefined;let bn=undefined;let Gn=false;let hn=-1;let Zn=-1;let An=-1;if(en===tn){hn=consumeMoreIndentedLines(Wt,hn,Pt.length);if(hn!==-1)pn=hn+cn}for(let an;an=Wt[hn+=1];){if(en===nn&&an==="\\"){Zn=hn;switch(Wt[hn+1]){case"x":hn+=3;break;case"u":hn+=5;break;case"U":hn+=9;break;default:hn+=1}An=hn}if(an==="\n"){if(en===tn)hn=consumeMoreIndentedLines(Wt,hn,Pt.length);pn=hn+Pt.length+cn;mn=undefined}else{if(an===" "&&bn&&bn!==" "&&bn!=="\n"&&bn!=="\t"){const Pt=Wt[hn+1];if(Pt&&Pt!==" "&&Pt!=="\n"&&Pt!=="\t")mn=hn}if(hn>=pn){if(mn){dn.push(mn);pn=mn+cn;mn=undefined}else if(en===nn){while(bn===" "||bn==="\t"){bn=an;an=Wt[hn+=1];Gn=true}const Pt=hn>An+1?hn-2:Zn-1;if(un[Pt])return Wt;dn.push(Pt);un[Pt]=true;pn=Pt+cn;mn=undefined}else{Gn=true}}}bn=an}if(Gn&&on)on();if(dn.length===0)return Wt;if(sn)sn();let Wn=Wt.slice(0,dn[0]);for(let tn=0;tn{"use strict";var tn=en(71596);var nn=en(41127);var an=en(59799);var rn=en(83069);function createStringifyContext(Wt,Pt){const en=Object.assign({blockQuote:true,commentString:an.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:false,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:true,indentSeq:true,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:false,singleQuote:null,trueStr:"true",verifyAliasOrder:true},Wt.schema.toStringOptions,Pt);let tn;switch(en.collectionStyle){case"block":tn=false;break;case"flow":tn=true;break;default:tn=null}return{anchors:new Set,doc:Wt,flowCollectionPadding:en.flowCollectionPadding?" ":"",indent:"",indentStep:typeof en.indent==="number"?" ".repeat(en.indent):" ",inFlow:tn,options:en}}function getTagObject(Wt,Pt){if(Pt.tag){const en=Wt.filter((Wt=>Wt.tag===Pt.tag));if(en.length>0)return en.find((Wt=>Wt.format===Pt.format))??en[0]}let en=undefined;let tn;if(nn.isScalar(Pt)){tn=Pt.value;const nn=Wt.filter((Wt=>Wt.identify?.(tn)));en=nn.find((Wt=>Wt.format===Pt.format))??nn.find((Wt=>!Wt.format))}else{tn=Pt;en=Wt.find((Wt=>Wt.nodeClass&&tn instanceof Wt.nodeClass))}if(!en){const Wt=tn?.constructor?.name??typeof tn;throw new Error(`Tag not resolved for ${Wt} value`)}return en}function stringifyProps(Wt,Pt,{anchors:en,doc:an}){if(!an.directives)return"";const rn=[];const In=(nn.isScalar(Wt)||nn.isCollection(Wt))&&Wt.anchor;if(In&&tn.anchorIsValid(In)){en.add(In);rn.push(`&${In}`)}const sn=Wt.tag?Wt.tag:Pt.default?null:Pt.tag;if(sn)rn.push(an.directives.tagString(sn));return rn.join(" ")}function stringify(Wt,Pt,en,tn){if(nn.isPair(Wt))return Wt.toString(Pt,en,tn);if(nn.isAlias(Wt)){if(Pt.doc.directives)return Wt.toString(Pt);if(Pt.resolvedAliases?.has(Wt)){throw new TypeError(`Cannot stringify circular structure without alias nodes`)}else{if(Pt.resolvedAliases)Pt.resolvedAliases.add(Wt);else Pt.resolvedAliases=new Set([Wt]);Wt=Wt.resolve(Pt.doc)}}let an=undefined;const In=nn.isNode(Wt)?Wt:Pt.doc.createNode(Wt,{onTagObj:Wt=>an=Wt});if(!an)an=getTagObject(Pt.doc.schema.tags,In);const sn=stringifyProps(In,an,Pt);if(sn.length>0)Pt.indentAtStart=(Pt.indentAtStart??0)+sn.length+1;const on=typeof an.stringify==="function"?an.stringify(In,Pt,en,tn):nn.isScalar(In)?rn.stringifyString(In,Pt,en,tn):In.toString(Pt,en,tn);if(!sn)return on;return nn.isScalar(In)||on[0]==="{"||on[0]==="["?`${sn} ${on}`:`${sn}\n${Pt.indent}${on}`}Pt.createStringifyContext=createStringifyContext;Pt.stringify=stringify},61212:(Wt,Pt,en)=>{"use strict";var tn=en(41127);var nn=en(2148);var an=en(59799);function stringifyCollection(Wt,Pt,en){const tn=Pt.inFlow??Wt.flow;const nn=tn?stringifyFlowCollection:stringifyBlockCollection;return nn(Wt,Pt,en)}function stringifyBlockCollection({comment:Wt,items:Pt},en,{blockItemPrefix:rn,flowChars:In,itemIndent:sn,onChompKeep:on,onComment:cn}){const{indent:dn,options:{commentString:un}}=en;const pn=Object.assign({},en,{indent:sn,type:null});let mn=false;const bn=[];for(let Wt=0;Wton=null),(()=>mn=true));if(on)cn+=an.lineComment(cn,sn,un(on));if(mn&&on)mn=false;bn.push(rn+cn)}let Gn;if(bn.length===0){Gn=In.start+In.end}else{Gn=bn[0];for(let Wt=1;Wtsn=null));if(enpn||on.includes("\n")))un=true;mn.push(on);pn=mn.length}const{start:bn,end:Gn}=en;if(mn.length===0){return bn+Gn}else{if(!un){const Wt=mn.reduce(((Wt,Pt)=>Wt+Pt.length+2),2);un=Pt.options.lineWidth>0&&Wt>Pt.options.lineWidth}if(un){let Wt=bn;for(const Pt of mn)Wt+=Pt?`\n${sn}${In}${Pt}`:"\n";return`${Wt}\n${In}${Gn}`}else{return`${bn}${on}${mn.join(" ")}${on}${Gn}`}}}function addCommentBefore({indent:Wt,options:{commentString:Pt}},en,tn,nn){if(tn&&nn)tn=tn.replace(/^\n+/,"");if(tn){const nn=an.indentComment(Pt(tn),Wt);en.push(nn.trimStart())}}Pt.stringifyCollection=stringifyCollection},59799:(Wt,Pt)=>{"use strict";const stringifyComment=Wt=>Wt.replace(/^(?!$)(?: $)?/gm,"#");function indentComment(Wt,Pt){if(/^\n+$/.test(Wt))return Wt.substring(1);return Pt?Wt.replace(/^(?! *$)/gm,Pt):Wt}const lineComment=(Wt,Pt,en)=>Wt.endsWith("\n")?indentComment(en,Pt):en.includes("\n")?"\n"+indentComment(en,Pt):(Wt.endsWith(" ")?"":" ")+en;Pt.indentComment=indentComment;Pt.lineComment=lineComment;Pt.stringifyComment=stringifyComment},6829:(Wt,Pt,en)=>{"use strict";var tn=en(41127);var nn=en(2148);var an=en(59799);function stringifyDocument(Wt,Pt){const en=[];let rn=Pt.directives===true;if(Pt.directives!==false&&Wt.directives){const Pt=Wt.directives.toString(Wt);if(Pt){en.push(Pt);rn=true}else if(Wt.directives.docStart)rn=true}if(rn)en.push("---");const In=nn.createStringifyContext(Wt,Pt);const{commentString:sn}=In.options;if(Wt.commentBefore){if(en.length!==1)en.unshift("");const Pt=sn(Wt.commentBefore);en.unshift(an.indentComment(Pt,""))}let on=false;let cn=null;if(Wt.contents){if(tn.isNode(Wt.contents)){if(Wt.contents.spaceBefore&&rn)en.push("");if(Wt.contents.commentBefore){const Pt=sn(Wt.contents.commentBefore);en.push(an.indentComment(Pt,""))}In.forceBlockIndent=!!Wt.comment;cn=Wt.contents.comment}const Pt=cn?undefined:()=>on=true;let dn=nn.stringify(Wt.contents,In,(()=>cn=null),Pt);if(cn)dn+=an.lineComment(dn,"",sn(cn));if((dn[0]==="|"||dn[0]===">")&&en[en.length-1]==="---"){en[en.length-1]=`--- ${dn}`}else en.push(dn)}else{en.push(nn.stringify(Wt.contents,In))}if(Wt.directives?.docEnd){if(Wt.comment){const Pt=sn(Wt.comment);if(Pt.includes("\n")){en.push("...");en.push(an.indentComment(Pt,""))}else{en.push(`... ${Pt}`)}}else{en.push("...")}}else{let Pt=Wt.comment;if(Pt&&on)Pt=Pt.replace(/^\n+/,"");if(Pt){if((!on||cn)&&en[en.length-1]!=="")en.push("");en.push(an.indentComment(sn(Pt),""))}}return en.join("\n")+"\n"}Pt.stringifyDocument=stringifyDocument},28689:(Wt,Pt)=>{"use strict";function stringifyNumber({format:Wt,minFractionDigits:Pt,tag:en,value:tn}){if(typeof tn==="bigint")return String(tn);const nn=typeof tn==="number"?tn:Number(tn);if(!isFinite(nn))return isNaN(nn)?".nan":nn<0?"-.inf":".inf";let an=JSON.stringify(tn);if(!Wt&&Pt&&(!en||en==="tag:yaml.org,2002:float")&&/^\d/.test(an)){let Wt=an.indexOf(".");if(Wt<0){Wt=an.length;an+="."}let en=Pt-(an.length-Wt-1);while(en-- >0)an+="0"}return an}Pt.stringifyNumber=stringifyNumber},59748:(Wt,Pt,en)=>{"use strict";var tn=en(41127);var nn=en(63301);var an=en(2148);var rn=en(59799);function stringifyPair({key:Wt,value:Pt},en,In,sn){const{allNullValues:on,doc:cn,indent:dn,indentStep:un,options:{commentString:pn,indentSeq:mn,simpleKeys:bn}}=en;let Gn=tn.isNode(Wt)&&Wt.comment||null;if(bn){if(Gn){throw new Error("With simple keys, key nodes cannot have comments")}if(tn.isCollection(Wt)){const Wt="With simple keys, collection cannot be used as a key value";throw new Error(Wt)}}let hn=!bn&&(!Wt||Gn&&Pt==null&&!en.inFlow||tn.isCollection(Wt)||(tn.isScalar(Wt)?Wt.type===nn.Scalar.BLOCK_FOLDED||Wt.type===nn.Scalar.BLOCK_LITERAL:typeof Wt==="object"));en=Object.assign({},en,{allNullValues:false,implicitKey:!hn&&(bn||!on),indent:dn+un});let Zn=false;let An=false;let Wn=an.stringify(Wt,en,(()=>Zn=true),(()=>An=true));if(!hn&&!en.inFlow&&Wn.length>1024){if(bn)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");hn=true}if(en.inFlow){if(on||Pt==null){if(Zn&&In)In();return Wn===""?"?":hn?`? ${Wn}`:Wn}}else if(on&&!bn||Pt==null&&hn){Wn=`? ${Wn}`;if(Gn&&!Zn){Wn+=rn.lineComment(Wn,en.indent,pn(Gn))}else if(An&&sn)sn();return Wn}if(Zn)Gn=null;if(hn){if(Gn)Wn+=rn.lineComment(Wn,en.indent,pn(Gn));Wn=`? ${Wn}\n${dn}:`}else{Wn=`${Wn}:`;if(Gn)Wn+=rn.lineComment(Wn,en.indent,pn(Gn))}let Nn,gn,yn;if(tn.isNode(Pt)){Nn=!!Pt.spaceBefore;gn=Pt.commentBefore;yn=Pt.comment}else{Nn=false;gn=null;yn=null;if(Pt&&typeof Pt==="object")Pt=cn.createNode(Pt)}en.implicitKey=false;if(!hn&&!Gn&&tn.isScalar(Pt))en.indentAtStart=Wn.length+1;An=false;if(!mn&&un.length>=2&&!en.inFlow&&!hn&&tn.isSeq(Pt)&&!Pt.flow&&!Pt.tag&&!Pt.anchor){en.indent=en.indent.substring(2)}let vn=false;const Yn=an.stringify(Pt,en,(()=>vn=true),(()=>An=true));let En=" ";if(Gn||Nn||gn){En=Nn?"\n":"";if(gn){const Wt=pn(gn);En+=`\n${rn.indentComment(Wt,en.indent)}`}if(Yn===""&&!en.inFlow){if(En==="\n")En="\n\n"}else{En+=`\n${en.indent}`}}else if(!hn&&tn.isCollection(Pt)){const Wt=Yn[0];const tn=Yn.indexOf("\n");const nn=tn!==-1;const an=en.inFlow??Pt.flow??Pt.items.length===0;if(nn||!an){let Pt=false;if(nn&&(Wt==="&"||Wt==="!")){let en=Yn.indexOf(" ");if(Wt==="&"&&en!==-1&&en{"use strict";var tn=en(63301);var nn=en(34475);const getFoldOptions=(Wt,Pt)=>({indentAtStart:Pt?Wt.indent.length:Wt.indentAtStart,lineWidth:Wt.options.lineWidth,minContentWidth:Wt.options.minContentWidth});const containsDocumentMarker=Wt=>/^(%|---|\.\.\.)/m.test(Wt);function lineLengthOverLimit(Wt,Pt,en){if(!Pt||Pt<0)return false;const tn=Pt-en;const nn=Wt.length;if(nn<=tn)return false;for(let Pt=0,en=0;Pttn)return true;en=Pt+1;if(nn-en<=tn)return false}}return true}function doubleQuotedString(Wt,Pt){const en=JSON.stringify(Wt);if(Pt.options.doubleQuotedAsJSON)return en;const{implicitKey:tn}=Pt;const an=Pt.options.doubleQuotedMinMultiLineLength;const rn=Pt.indent||(containsDocumentMarker(Wt)?" ":"");let In="";let sn=0;for(let Wt=0,Pt=en[Wt];Pt;Pt=en[++Wt]){if(Pt===" "&&en[Wt+1]==="\\"&&en[Wt+2]==="n"){In+=en.slice(sn,Wt)+"\\ ";Wt+=1;sn=Wt;Pt="\\"}if(Pt==="\\")switch(en[Wt+1]){case"u":{In+=en.slice(sn,Wt);const Pt=en.substr(Wt+2,4);switch(Pt){case"0000":In+="\\0";break;case"0007":In+="\\a";break;case"000b":In+="\\v";break;case"001b":In+="\\e";break;case"0085":In+="\\N";break;case"00a0":In+="\\_";break;case"2028":In+="\\L";break;case"2029":In+="\\P";break;default:if(Pt.substr(0,2)==="00")In+="\\x"+Pt.substr(2);else In+=en.substr(Wt,6)}Wt+=5;sn=Wt+1}break;case"n":if(tn||en[Wt+2]==='"'||en.length\n";let mn;let bn;for(bn=en.length;bn>0;--bn){const Wt=en[bn-1];if(Wt!=="\n"&&Wt!=="\t"&&Wt!==" ")break}let Gn=en.substring(bn);const hn=Gn.indexOf("\n");if(hn===-1){mn="-"}else if(en===Gn||hn!==Gn.length-1){mn="+";if(sn)sn()}else{mn=""}if(Gn){en=en.slice(0,-Gn.length);if(Gn[Gn.length-1]==="\n")Gn=Gn.slice(0,-1);Gn=Gn.replace(an,`$&${un}`)}let Zn=false;let An;let Wn=-1;for(An=0;An")+(Zn?gn:"")+mn;if(Wt){yn+=" "+cn(Wt.replace(/ ?[\r\n]+/g," "));if(In)In()}if(pn){en=en.replace(/\n+/g,`$&${un}`);return`${yn}\n${un}${Nn}${en}${Gn}`}en=en.replace(/\n+/g,"\n$&").replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${un}`);const vn=nn.foldFlowLines(`${Nn}${en}${Gn}`,un,nn.FOLD_BLOCK,getFoldOptions(rn,true));return`${yn}\n${un}${vn}`}function plainString(Wt,Pt,en,an){const{type:rn,value:In}=Wt;const{actualString:sn,implicitKey:on,indent:cn,indentStep:dn,inFlow:un}=Pt;if(on&&In.includes("\n")||un&&/[[\]{},]/.test(In)){return quotedString(In,Pt)}if(!In||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(In)){return on||un||!In.includes("\n")?quotedString(In,Pt):blockString(Wt,Pt,en,an)}if(!on&&!un&&rn!==tn.Scalar.PLAIN&&In.includes("\n")){return blockString(Wt,Pt,en,an)}if(containsDocumentMarker(In)){if(cn===""){Pt.forceBlockIndent=true;return blockString(Wt,Pt,en,an)}else if(on&&cn===dn){return quotedString(In,Pt)}}const pn=In.replace(/\n+/g,`$&\n${cn}`);if(sn){const test=Wt=>Wt.default&&Wt.tag!=="tag:yaml.org,2002:str"&&Wt.test?.test(pn);const{compat:Wt,tags:en}=Pt.doc.schema;if(en.some(test)||Wt?.some(test))return quotedString(In,Pt)}return on?pn:nn.foldFlowLines(pn,cn,nn.FOLD_FLOW,getFoldOptions(Pt,false))}function stringifyString(Wt,Pt,en,nn){const{implicitKey:an,inFlow:rn}=Pt;const In=typeof Wt.value==="string"?Wt:Object.assign({},Wt,{value:String(Wt.value)});let{type:sn}=Wt;if(sn!==tn.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(In.value))sn=tn.Scalar.QUOTE_DOUBLE}const _stringify=Wt=>{switch(Wt){case tn.Scalar.BLOCK_FOLDED:case tn.Scalar.BLOCK_LITERAL:return an||rn?quotedString(In.value,Pt):blockString(In,Pt,en,nn);case tn.Scalar.QUOTE_DOUBLE:return doubleQuotedString(In.value,Pt);case tn.Scalar.QUOTE_SINGLE:return singleQuotedString(In.value,Pt);case tn.Scalar.PLAIN:return plainString(In,Pt,en,nn);default:return null}};let on=_stringify(sn);if(on===null){const{defaultKeyType:Wt,defaultStringType:en}=Pt.options;const tn=an&&Wt||en;on=_stringify(tn);if(on===null)throw new Error(`Unsupported default string type ${tn}`)}return on}Pt.stringifyString=stringifyString},10204:(Wt,Pt,en)=>{"use strict";var tn=en(41127);const nn=Symbol("break visit");const an=Symbol("skip children");const rn=Symbol("remove node");function visit(Wt,Pt){const en=initVisitor(Pt);if(tn.isDocument(Wt)){const Pt=visit_(null,Wt.contents,en,Object.freeze([Wt]));if(Pt===rn)Wt.contents=null}else visit_(null,Wt,en,Object.freeze([]))}visit.BREAK=nn;visit.SKIP=an;visit.REMOVE=rn;function visit_(Wt,Pt,en,an){const In=callVisitor(Wt,Pt,en,an);if(tn.isNode(In)||tn.isPair(In)){replaceNode(Wt,an,In);return visit_(Wt,In,en,an)}if(typeof In!=="symbol"){if(tn.isCollection(Pt)){an=Object.freeze(an.concat(Pt));for(let Wt=0;Wt{"use strict";en.d(Pt,{Y:()=>Blob}); /** - * MIT License - * - * Copyright (c) 2021 Andrew Raffensperger - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - * - * This is a near carbon-copy of the original source (link below) with the - * TypeScript typings added and a few tweaks to make it ES3-compatible. - * - * See: https://github.com/adraffy/ens-normalize.js + * @license + * web-streams-polyfill v4.0.0-beta.3 + * Copyright 2021 Mattias Buelens, Diwank Singh Tomer and other contributors. + * This code is released under the MIT license. + * SPDX-License-Identifier: MIT */ -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.getData = void 0; -var base64_1 = __nccwpck_require__(99032); -var decoder_js_1 = __nccwpck_require__(92302); -function getData() { - return (0, decoder_js_1.read_compressed_payload)((0, base64_1.decode)('AEQF2AO2DEsA2wIrAGsBRABxAN8AZwCcAEwAqgA0AGwAUgByADcATAAVAFYAIQAyACEAKAAYAFgAGwAjABQAMAAmADIAFAAfABQAKwATACoADgAbAA8AHQAYABoAGQAxADgALAAoADwAEwA9ABMAGgARAA4ADwAWABMAFgAIAA8AHgQXBYMA5BHJAS8JtAYoAe4AExozi0UAH21tAaMnBT8CrnIyhrMDhRgDygIBUAEHcoFHUPe8AXBjAewCjgDQR8IICIcEcQLwATXCDgzvHwBmBoHNAqsBdBcUAykgDhAMShskMgo8AY8jqAQfAUAfHw8BDw87MioGlCIPBwZCa4ELatMAAMspJVgsDl8AIhckSg8XAHdvTwBcIQEiDT4OPhUqbyECAEoAS34Aej8Ybx83JgT/Xw8gHxZ/7w8RICxPHA9vBw+Pfw8PHwAPFv+fAsAvCc8vEr8ivwD/EQ8Bol8OEBa/A78hrwAPCU8vESNvvwWfHwNfAVoDHr+ZAAED34YaAdJPAK7PLwSEgDLHAGo1Pz8Pvx9fUwMrpb8O/58VTzAPIBoXIyQJNF8hpwIVAT8YGAUADDNBaX3RAMomJCg9EhUeA29MABsZBTMNJipjOhc19gcIDR8bBwQHEggCWi6DIgLuAQYA+BAFCha3A5XiAEsqM7UFFgFLhAMjFTMYE1Klnw74nRVBG/ASCm0BYRN/BrsU3VoWy+S0vV8LQx+vN8gF2AC2AK5EAWwApgYDKmAAroQ0NDQ0AT+OCg7wAAIHRAbpNgVcBV0APTA5BfbPFgMLzcYL/QqqA82eBALKCjQCjqYCht0/k2+OAsXQAoP3ASTKDgDw6ACKAUYCMpIKJpRaAE4A5womABzZvs0REEKiACIQAd5QdAECAj4Ywg/wGqY2AVgAYADYvAoCGAEubA0gvAY2ALAAbpbvqpyEAGAEpgQAJgAG7gAgAEACmghUFwCqAMpAINQIwC4DthRAAPcycKgApoIdABwBfCisABoATwBqASIAvhnSBP8aH/ECeAKXAq40NjgDBTwFYQU6AXs3oABgAD4XNgmcCY1eCl5tIFZeUqGgyoNHABgAEQAaABNwWQAmABMATPMa3T34ADldyprmM1M2XociUQgLzvwAXT3xABgAEQAaABNwIGFAnADD8AAgAD4BBJWzaCcIAIEBFMAWwKoAAdq9BWAF5wLQpALEtQAKUSGkahR4GnJM+gsAwCgeFAiUAECQ0BQuL8AAIAAAADKeIheclvFqQAAETr4iAMxIARMgAMIoHhQIAn0E0pDQFC4HhznoAAAAIAI2C0/4lvFqQAAETgBJJwYCAy4ABgYAFAA8MBKYEH4eRhTkAjYeFcgACAYAeABsOqyQ5gRwDayqugEgaIIAtgoACgDmEABmBAWGme5OBJJA2m4cDeoAmITWAXwrMgOgAGwBCh6CBXYF1Tzg1wKAAFdiuABRAFwAXQBsAG8AdgBrAHYAbwCEAHEwfxQBVE5TEQADVFhTBwBDANILAqcCzgLTApQCrQL6vAAMAL8APLhNBKkE6glGKTAU4Dr4N2EYEwBCkABKk8rHAbYBmwIoAiU4Ajf/Aq4CowCAANIChzgaNBsCsTgeODcFXrgClQKdAqQBiQGYAqsCsjTsNHsfNPA0ixsAWTWiOAMFPDQSNCk2BDZHNow2TTZUNhk28Jk9VzI3QkEoAoICoQKwAqcAQAAxBV4FXbS9BW47YkIXP1ciUqs05DS/FwABUwJW11e6nHuYZmSh/RAYA8oMKvZ8KASoUAJYWAJ6ILAsAZSoqjpgA0ocBIhmDgDWAAawRDQoAAcuAj5iAHABZiR2AIgiHgCaAU68ACxuHAG0ygM8MiZIAlgBdF4GagJqAPZOHAMuBgoATkYAsABiAHgAMLoGDPj0HpKEBAAOJgAuALggTAHWAeAMEDbd20Uege0ADwAWADkAQgA9OHd+2MUQZBBhBgNNDkxxPxUQArEPqwvqERoM1irQ090ANK4H8ANYB/ADWANYB/AH8ANYB/ADWANYA1gDWBwP8B/YxRBkD00EcgWTBZAE2wiIJk4RhgctCNdUEnQjHEwDSgEBIypJITuYMxAlR0wRTQgIATZHbKx9PQNMMbBU+pCnA9AyVDlxBgMedhKlAC8PeCE1uk6DekxxpQpQT7NX9wBFBgASqwAS5gBJDSgAUCwGPQBI4zTYABNGAE2bAE3KAExdGABKaAbgAFBXAFCOAFBJABI2SWdObALDOq0//QomCZhvwHdTBkIQHCemEPgMNAG2ATwN7kvZBPIGPATKH34ZGg/OlZ0Ipi3eDO4m5C6igFsj9iqEBe5L9TzeC05RaQ9aC2YJ5DpkgU8DIgEOIowK3g06CG4Q9ArKbA3mEUYHOgPWSZsApgcCCxIdNhW2JhFirQsKOXgG/Br3C5AmsBMqev0F1BoiBk4BKhsAANAu6IWxWjJcHU9gBgQLJiPIFKlQIQ0mQLh4SRocBxYlqgKSQ3FKiFE3HpQh9zw+DWcuFFF9B/Y8BhlQC4I8n0asRQ8R0z6OPUkiSkwtBDaALDAnjAnQD4YMunxzAVoJIgmyDHITMhEYN8YIOgcaLpclJxYIIkaWYJsE+KAD9BPSAwwFQAlCBxQDthwuEy8VKgUOgSXYAvQ21i60ApBWgQEYBcwPJh/gEFFH4Q7qCJwCZgOEJewALhUiABginAhEZABgj9lTBi7MCMhqbSN1A2gU6GIRdAeSDlgHqBw0FcAc4nDJXgyGCSiksAlcAXYJmgFgBOQICjVcjKEgQmdUi1kYnCBiQUBd/QIyDGYVoES+h3kCjA9sEhwBNgF0BzoNAgJ4Ee4RbBCWCOyGBTW2M/k6JgRQIYQgEgooA1BszwsoJvoM+WoBpBJjAw00PnfvZ6xgtyUX/gcaMsZBYSHyC5NPzgydGsIYQ1QvGeUHwAP0GvQn60FYBgADpAQUOk4z7wS+C2oIjAlAAEoOpBgH2BhrCnKM0QEyjAG4mgNYkoQCcJAGOAcMAGgMiAV65gAeAqgIpAAGANADWAA6Aq4HngAaAIZCAT4DKDABIuYCkAOUCDLMAZYwAfQqBBzEDBYA+DhuSwLDsgKAa2ajBd5ZAo8CSjYBTiYEBk9IUgOwcuIA3ABMBhTgSAEWrEvMG+REAeBwLADIAPwABjYHBkIBzgH0bgC4AWALMgmjtLYBTuoqAIQAFmwB2AKKAN4ANgCA8gFUAE4FWvoF1AJQSgESMhksWGIBvAMgATQBDgB6BsyOpsoIIARuB9QCEBwV4gLvLwe2AgMi4BPOQsYCvd9WADIXUu5eZwqoCqdeaAC0YTQHMnM9UQAPH6k+yAdy/BZIiQImSwBQ5gBQQzSaNTFWSTYBpwGqKQK38AFtqwBI/wK37gK3rQK3sAK6280C0gK33AK3zxAAUEIAUD9SklKDArekArw5AEQAzAHCO147WTteO1k7XjtZO147WTteO1kDmChYI03AVU0oJqkKbV9GYewMpw3VRMk6ShPcYFJgMxPJLbgUwhXPJVcZPhq9JwYl5VUKDwUt1GYxCC00dhe9AEApaYNCY4ceMQpMHOhTklT5LRwAskujM7ANrRsWREEFSHXuYisWDwojAmSCAmJDXE6wXDchAqH4AmiZAmYKAp+FOBwMAmY8AmYnBG8EgAN/FAN+kzkHOXgYOYM6JCQCbB4CMjc4CwJtyAJtr/CLADRoRiwBaADfAOIASwYHmQyOAP8MwwAOtgJ3MAJ2o0ACeUxEAni7Hl3cRa9G9AJ8QAJ6yQJ9CgJ88UgBSH5kJQAsFklZSlwWGErNAtECAtDNSygDiFADh+dExpEzAvKiXQQDA69Lz0wuJgTQTU1NsAKLQAKK2cIcCB5EaAa4Ao44Ao5dQZiCAo7aAo5deVG1UzYLUtVUhgKT/AKTDQDqAB1VH1WwVdEHLBwplocy4nhnRTw6ApegAu+zWCKpAFomApaQApZ9nQCqWa1aCoJOADwClrYClk9cRVzSApnMApllXMtdCBoCnJw5wzqeApwXAp+cAp65iwAeEDIrEAKd8gKekwC2PmE1YfACntQCoG8BqgKeoCACnk+mY8lkKCYsAiewAiZ/AqD8AqBN2AKmMAKlzwKoAAB+AqfzaH1osgAESmodatICrOQCrK8CrWgCrQMCVx4CVd0CseLYAx9PbJgCsr4OArLpGGzhbWRtSWADJc4Ctl08QG6RAylGArhfArlIFgK5K3hwN3DiAr0aAy2zAzISAr6JcgMDM3ICvhtzI3NQAsPMAsMFc4N0TDZGdOEDPKgDPJsDPcACxX0CxkgCxhGKAshqUgLIRQLJUALJLwJkngLd03h6YniveSZL0QMYpGcDAmH1GfSVJXsMXpNevBICz2wCz20wTFTT9BSgAMeuAs90ASrrA04TfkwGAtwoAtuLAtJQA1JdA1NgAQIDVY2AikABzBfuYUZ2AILPg44C2sgC2d+EEYRKpz0DhqYAMANkD4ZyWvoAVgLfZgLeuXR4AuIw7RUB8zEoAfScAfLTiALr9ALpcXoAAur6AurlAPpIAboC7ooC652Wq5cEAu5AA4XhmHpw4XGiAvMEAGoDjheZlAL3FAORbwOSiAL3mQL52gL4Z5odmqy8OJsfA52EAv77ARwAOp8dn7QDBY4DpmsDptoA0sYDBmuhiaIGCgMMSgFgASACtgNGAJwEgLpoBgC8BGzAEowcggCEDC6kdjoAJAM0C5IKRoABZCgiAIzw3AYBLACkfng9ogigkgNmWAN6AEQCvrkEVqTGAwCsBRbAA+4iQkMCHR072jI2PTbUNsk2RjY5NvA23TZKNiU3EDcZN5I+RTxDRTBCJkK5VBYKFhZfwQCWygU3AJBRHpu+OytgNxa61A40GMsYjsn7BVwFXQVcBV0FaAVdBVwFXQVcBV0FXAVdBVwFXUsaCNyKAK4AAQUHBwKU7oICoW1e7jAEzgPxA+YDwgCkBFDAwADABKzAAOxFLhitA1UFTDeyPkM+bj51QkRCuwTQWWQ8X+0AWBYzsACNA8xwzAGm7EZ/QisoCTAbLDs6fnLfb8H2GccsbgFw13M1HAVkBW/Jxsm9CNRO8E8FDD0FBQw9FkcClOYCoMFegpDfADgcMiA2AJQACB8AsigKAIzIEAJKeBIApY5yPZQIAKQiHb4fvj5BKSRPQrZCOz0oXyxgOywfKAnGbgMClQaCAkILXgdeCD9IIGUgQj5fPoY+dT52Ao5CM0dAX9BTVG9SDzFwWTQAbxBzJF/lOEIQQglCCkKJIAls5AcClQICoKPMODEFxhi6KSAbiyfIRrMjtCgdWCAkPlFBIitCsEJRzAbMAV/OEyQzDg0OAQQEJ36i328/Mk9AybDJsQlq3tDRApUKAkFzXf1d/j9uALYP6hCoFgCTGD8kPsFKQiobrm0+zj0KSD8kPnVCRBwMDyJRTHFgMTJa5rwXQiQ2YfI/JD7BMEJEHGINTw4TOFlIRzwJO0icMQpyPyQ+wzJCRBv6DVgnKB01NgUKj2bwYzMqCoBkznBgEF+zYDIocwRIX+NgHj4HICNfh2C4CwdwFWpTG/lgUhYGAwRfv2Ts8mAaXzVgml/XYIJfuWC4HI1gUF9pYJZgMR6ilQHMAOwLAlDRefC0in4AXAEJA6PjCwc0IamOANMMCAECRQDFNRTZBgd+CwQlRA+r6+gLBDEFBnwUBXgKATIArwAGRAAHA3cDdAN2A3kDdwN9A3oDdQN7A30DfAN4A3oDfQAYEAAlAtYASwMAUAFsAHcKAHcAmgB3AHUAdQB2AHVu8UgAygDAAHcAdQB1AHYAdQALCgB3AAsAmgB3AAsCOwB3AAtu8UgAygDAAHgKAJoAdwB3AHUAdQB2AHUAeAB1AHUAdgB1bvFIAMoAwAALCgCaAHcACwB3AAsCOwB3AAtu8UgAygDAAH4ACwGgALcBpwC6AahdAu0COwLtbvFIAMoAwAALCgCaAu0ACwLtAAsCOwLtAAtu8UgAygDAA24ACwNvAAu0VsQAAzsAABCkjUIpAAsAUIusOggWcgMeBxVsGwL67U/2HlzmWOEeOgALASvuAAseAfpKUpnpGgYJDCIZM6YyARUE9ThqAD5iXQgnAJYJPnOzw0ZAEZxEKsIAkA4DhAHnTAIDxxUDK0lxCQlPYgIvIQVYJQBVqE1GakUAKGYiDToSBA1EtAYAXQJYAIF8GgMHRyAAIAjOe9YncekRAA0KACUrjwE7Ayc6AAYWAqaiKG4McEcqANoN3+Mg9TwCBhIkuCny+JwUQ29L008JluRxu3K+oAdqiHOqFH0AG5SUIfUJ5SxCGfxdipRzqTmT4V5Zb+r1Uo4Vm+NqSSEl2mNvR2JhIa8SpYO6ntdwFXHCWTCK8f2+Hxo7uiG3drDycAuKIMP5bhi06ACnqArH1rz4Rqg//lm6SgJGEVbF9xJHISaR6HxqxSnkw6shDnelHKNEfGUXSJRJ1GcsmtJw25xrZMDK9gXSm1/YMkdX4/6NKYOdtk/NQ3/NnDASjTc3fPjIjW/5sVfVObX2oTDWkr1dF9f3kxBsD3/3aQO8hPfRz+e0uEiJqt1161griu7gz8hDDwtpy+F+BWtefnKHZPAxcZoWbnznhJpy0e842j36bcNzGnIEusgGX0a8ZxsnjcSsPDZ09yZ36fCQbriHeQ72JRMILNl6ePPf2HWoVwgWAm1fb3V2sAY0+B6rAXqSwPBgseVmoqsBTSrm91+XasMYYySI8eeRxH3ZvHkMz3BQ5aJ3iUVbYPNM3/7emRtjlsMgv/9VyTsyt/mK+8fgWeT6SoFaclXqn42dAIsvAarF5vNNWHzKSkKQ/8Hfk5ZWK7r9yliOsooyBjRhfkHP4Q2DkWXQi6FG/9r/IwbmkV5T7JSopHKn1pJwm9tb5Ot0oyN1Z2mPpKXHTxx2nlK08fKk1hEYA8WgVVWL5lgx0iTv+KdojJeU23ZDjmiubXOxVXJKKi2Wjuh2HLZOFLiSC7Tls5SMh4f+Pj6xUSrNjFqLGehRNB8lC0QSLNmkJJx/wSG3MnjE9T1CkPwJI0wH2lfzwETIiVqUxg0dfu5q39Gt+hwdcxkhhNvQ4TyrBceof3Mhs/IxFci1HmHr4FMZgXEEczPiGCx0HRwzAqDq2j9AVm1kwN0mRVLWLylgtoPNapF5cY4Y1wJh/e0BBwZj44YgZrDNqvD/9Hv7GFYdUQeDJuQ3EWI4HaKqavU1XjC/n41kT4L79kqGq0kLhdTZvgP3TA3fS0ozVz+5piZsoOtIvBUFoMKbNcmBL6YxxaUAusHB38XrS8dQMnQwJfUUkpRoGr5AUeWicvBTzyK9g77+yCkf5PAysL7r/JjcZgrbvRpMW9iyaxZvKO6ceZN2EwIxKwVFPuvFuiEPGCoagbMo+SpydLrXqBzNCDGFCrO/rkcwa2xhokQZ5CdZ0AsU3JfSqJ6n5I14YA+P/uAgfhPU84Tlw7cEFfp7AEE8ey4sP12PTt4Cods1GRgDOB5xvyiR5m+Bx8O5nBCNctU8BevfV5A08x6RHd5jcwPTMDSZJOedIZ1cGQ704lxbAzqZOP05ZxaOghzSdvFBHYqomATARyAADK4elP8Ly3IrUZKfWh23Xy20uBUmLS4Pfagu9+oyVa2iPgqRP3F2CTUsvJ7+RYnN8fFZbU/HVvxvcFFDKkiTqV5UBZ3Gz54JAKByi9hkKMZJvuGgcSYXFmw08UyoQyVdfTD1/dMkCHXcTGAKeROgArsvmRrQTLUOXioOHGK2QkjHuoYFgXciZoTJd6Fs5q1QX1G+p/e26hYsEf7QZD1nnIyl/SFkNtYYmmBhpBrxl9WbY0YpHWRuw2Ll/tj9mD8P4snVzJl4F9J+1arVeTb9E5r2ILH04qStjxQNwn3m4YNqxmaNbLAqW2TN6LidwuJRqS+NXbtqxoeDXpxeGWmxzSkWxjkyCkX4NQRme6q5SAcC+M7+9ETfA/EwrzQajKakCwYyeunP6ZFlxU2oMEn1Pz31zeStW74G406ZJFCl1wAXIoUKkWotYEpOuXB1uVNxJ63dpJEqfxBeptwIHNrPz8BllZoIcBoXwgfJ+8VAUnVPvRvexnw0Ma/WiGYuJO5y8QTvEYBigFmhUxY5RqzE8OcywN/8m4UYrlaniJO75XQ6KSo9+tWHlu+hMi0UVdiKQp7NelnoZUzNaIyBPVeOwK6GNp+FfHuPOoyhaWuNvTYFkvxscMQWDh+zeFCFkgwbXftiV23ywJ4+uwRqmg9k3KzwIQpzppt8DBBOMbrqwQM5Gb05sEwdKzMiAqOloaA/lr0KA+1pr0/+HiWoiIjHA/wir2nIuS3PeU/ji3O6ZwoxcR1SZ9FhtLC5S0FIzFhbBWcGVP/KpxOPSiUoAdWUpqKH++6Scz507iCcxYI6rdMBICPJZea7OcmeFw5mObJSiqpjg2UoWNIs+cFhyDSt6geV5qgi3FunmwwDoGSMgerFOZGX1m0dMCYo5XOruxO063dwENK9DbnVM9wYFREzh4vyU1WYYJ/LRRp6oxgjqP/X5a8/4Af6p6NWkQferzBmXme0zY/4nwMJm/wd1tIqSwGz+E3xPEAOoZlJit3XddD7/BT1pllzOx+8bmQtANQ/S6fZexc6qi3W+Q2xcmXTUhuS5mpHQRvcxZUN0S5+PL9lXWUAaRZhEH8hTdAcuNMMCuVNKTEGtSUKNi3O6KhSaTzck8csZ2vWRZ+d7mW8c4IKwXIYd25S/zIftPkwPzufjEvOHWVD1m+FjpDVUTV0DGDuHj6QnaEwLu/dEgdLQOg9E1Sro9XHJ8ykLAwtPu+pxqKDuFexqON1sKQm7rwbE1E68UCfA/erovrTCG+DBSNg0l4goDQvZN6uNlbyLpcZAwj2UclycvLpIZMgv4yRlpb3YuMftozorbcGVHt/VeDV3+Fdf1TP0iuaCsPi2G4XeGhsyF1ubVDxkoJhmniQ0/jSg/eYML9KLfnCFgISWkp91eauR3IQvED0nAPXK+6hPCYs+n3+hCZbiskmVMG2da+0EsZPonUeIY8EbfusQXjsK/eFDaosbPjEfQS0RKG7yj5GG69M7MeO1HmiUYocgygJHL6M1qzUDDwUSmr99V7Sdr2F3JjQAJY+F0yH33Iv3+C9M38eML7gTgmNu/r2bUMiPvpYbZ6v1/IaESirBHNa7mPKn4dEmYg7v/+HQgPN1G79jBQ1+soydfDC2r+h2Bl/KIc5KjMK7OH6nb1jLsNf0EHVe2KBiE51ox636uyG6Lho0t3J34L5QY/ilE3mikaF4HKXG1mG1rCevT1Vv6GavltxoQe/bMrpZvRggnBxSEPEeEzkEdOxTnPXHVjUYdw8JYvjB/o7Eegc3Ma+NUxLLnsK0kJlinPmUHzHGtrk5+CAbVzFOBqpyy3QVUnzTDfC/0XD94/okH+OB+i7g9lolhWIjSnfIb+Eq43ZXOWmwvjyV/qqD+t0e+7mTEM74qP/Ozt8nmC7mRpyu63OB4KnUzFc074SqoyPUAgM+/TJGFo6T44EHnQU4X4z6qannVqgw/U7zCpwcmXV1AubIrvOmkKHazJAR55ePjp5tLBsN8vAqs3NAHdcEHOR2xQ0lsNAFzSUuxFQCFYvXLZJdOj9p4fNq6p0HBGUik2YzaI4xySy91KzhQ0+q1hjxvImRwPRf76tChlRkhRCi74NXZ9qUNeIwP+s5p+3m5nwPdNOHgSLD79n7O9m1n1uDHiMntq4nkYwV5OZ1ENbXxFd4PgrlvavZsyUO4MqYlqqn1O8W/I1dEZq5dXhrbETLaZIbC2Kj/Aa/QM+fqUOHdf0tXAQ1huZ3cmWECWSXy/43j35+Mvq9xws7JKseriZ1pEWKc8qlzNrGPUGcVgOa9cPJYIJsGnJTAUsEcDOEVULO5x0rXBijc1lgXEzQQKhROf8zIV82w8eswc78YX11KYLWQRcgHNJElBxfXr72lS2RBSl07qTKorO2uUDZr3sFhYsvnhLZn0A94KRzJ/7DEGIAhW5ZWFpL8gEwu1aLA9MuWZzNwl8Oze9Y+bX+v9gywRVnoB5I/8kXTXU3141yRLYrIOOz6SOnyHNy4SieqzkBXharjfjqq1q6tklaEbA8Qfm2DaIPs7OTq/nvJBjKfO2H9bH2cCMh1+5gspfycu8f/cuuRmtDjyqZ7uCIMyjdV3a+p3fqmXsRx4C8lujezIFHnQiVTXLXuI1XrwN3+siYYj2HHTvESUx8DlOTXpak9qFRK+L3mgJ1WsD7F4cu1aJoFoYQnu+wGDMOjJM3kiBQWHCcvhJ/HRdxodOQp45YZaOTA22Nb4XKCVxqkbwMYFhzYQYIAnCW8FW14uf98jhUG2zrKhQQ0q0CEq0t5nXyvUyvR8DvD69LU+g3i+HFWQMQ8PqZuHD+sNKAV0+M6EJC0szq7rEr7B5bQ8BcNHzvDMc9eqB5ZCQdTf80Obn4uzjwpYU7SISdtV0QGa9D3Wrh2BDQtpBKxaNFV+/Cy2P/Sv+8s7Ud0Fd74X4+o/TNztWgETUapy+majNQ68Lq3ee0ZO48VEbTZYiH1Co4OlfWef82RWeyUXo7woM03PyapGfikTnQinoNq5z5veLpeMV3HCAMTaZmA1oGLAn7XS3XYsz+XK7VMQsc4XKrmDXOLU/pSXVNUq8dIqTba///3x6LiLS6xs1xuCAYSfcQ3+rQgmu7uvf3THKt5Ooo97TqcbRqxx7EASizaQCBQllG/rYxVapMLgtLbZS64w1MDBMXX+PQpBKNwqUKOf2DDRDUXQf9EhOS0Qj4nTmlA8dzSLz/G1d+Ud8MTy/6ghhdiLpeerGY/UlDOfiuqFsMUU5/UYlP+BAmgRLuNpvrUaLlVkrqDievNVEAwF+4CoM1MZTmjxjJMsKJq+u8Zd7tNCUFy6LiyYXRJQ4VyvEQFFaCGKsxIwQkk7EzZ6LTJq2hUuPhvAW+gQnSG6J+MszC+7QCRHcnqDdyNRJ6T9xyS87A6MDutbzKGvGktpbXqtzWtXb9HsfK2cBMomjN9a4y+TaJLnXxAeX/HWzmf4cR4vALt/P4w4qgKY04ml4ZdLOinFYS6cup3G/1ie4+t1eOnpBNlqGqs75ilzkT4+DsZQxNvaSKJ//6zIbbk/M7LOhFmRc/1R+kBtz7JFGdZm/COotIdvQoXpTqP/1uqEUmCb/QWoGLMwO5ANcHzxdY48IGP5+J+zKOTBFZ4Pid+GTM+Wq12MV/H86xEJptBa6T+p3kgpwLedManBHC2GgNrFpoN2xnrMz9WFWX/8/ygSBkavq2Uv7FdCsLEYLu9LLIvAU0bNRDtzYl+/vXmjpIvuJFYjmI0im6QEYqnIeMsNjXG4vIutIGHijeAG/9EDBozKV5cldkHbLxHh25vT+ZEzbhXlqvpzKJwcEgfNwLAKFeo0/pvEE10XDB+EXRTXtSzJozQKFFAJhMxYkVaCW+E9AL7tMeU8acxidHqzb6lX4691UsDpy/LLRmT+epgW56+5Cw8tB4kMUv6s9lh3eRKbyGs+H/4mQMaYzPTf2OOdokEn+zzgvoD3FqNKk8QqGAXVsqcGdXrT62fSPkR2vROFi68A6se86UxRUk4cajfPyCC4G5wDhD+zNq4jodQ4u4n/m37Lr36n4LIAAsVr02dFi9AiwA81MYs2rm4eDlDNmdMRvEKRHfBwW5DdMNp0jPFZMeARqF/wL4XBfd+EMLBfMzpH5GH6NaW+1vrvMdg+VxDzatk3MXgO3ro3P/DpcC6+Mo4MySJhKJhSR01SGGGp5hPWmrrUgrv3lDnP+HhcI3nt3YqBoVAVTBAQT5iuhTg8nvPtd8ZeYj6w1x6RqGUBrSku7+N1+BaasZvjTk64RoIDlL8brpEcJx3OmY7jLoZsswdtmhfC/G21llXhITOwmvRDDeTTPbyASOa16cF5/A1fZAidJpqju3wYAy9avPR1ya6eNp9K8XYrrtuxlqi+bDKwlfrYdR0RRiKRVTLOH85+ZY7XSmzRpfZBJjaTa81VDcJHpZnZnSQLASGYW9l51ZV/h7eVzTi3Hv6hUsgc/51AqJRTkpbFVLXXszoBL8nBX0u/0jBLT8nH+fJePbrwURT58OY+UieRjd1vs04w0VG5VN2U6MoGZkQzKN/ptz0Q366dxoTGmj7i1NQGHi9GgnquXFYdrCfZBmeb7s0T6yrdlZH5cZuwHFyIJ/kAtGsTg0xH5taAAq44BAk1CPk9KVVbqQzrCUiFdF/6gtlPQ8bHHc1G1W92MXGZ5HEHftyLYs8mbD/9xYRUWkHmlM0zC2ilJlnNgV4bfALpQghxOUoZL7VTqtCHIaQSXm+YUMnpkXybnV+A6xlm2CVy8fn0Xlm2XRa0+zzOa21JWWmixfiPMSCZ7qA4rS93VN3pkpF1s5TonQjisHf7iU9ZGvUPOAKZcR1pbeVf/Ul7OhepGCaId9wOtqo7pJ7yLcBZ0pFkOF28y4zEI/kcUNmutBHaQpBdNM8vjCS6HZRokkeo88TBAjGyG7SR+6vUgTcyK9Imalj0kuxz0wmK+byQU11AiJFk/ya5dNduRClcnU64yGu/ieWSeOos1t3ep+RPIWQ2pyTYVbZltTbsb7NiwSi3AV+8KLWk7LxCnfZUetEM8ThnsSoGH38/nyAwFguJp8FjvlHtcWZuU4hPva0rHfr0UhOOJ/F6vS62FW7KzkmRll2HEc7oUq4fyi5T70Vl7YVIfsPHUCdHesf9Lk7WNVWO75JDkYbMI8TOW8JKVtLY9d6UJRITO8oKo0xS+o99Yy04iniGHAaGj88kEWgwv0OrHdY/nr76DOGNS59hXCGXzTKUvDl9iKpLSWYN1lxIeyywdNpTkhay74w2jFT6NS8qkjo5CxA1yfSYwp6AJIZNKIeEK5PJAW7ORgWgwp0VgzYpqovMrWxbu+DGZ6Lhie1RAqpzm8VUzKJOH3mCzWuTOLsN3VT/dv2eeYe9UjbR8YTBsLz7q60VN1sU51k+um1f8JxD5pPhbhSC8rRaB454tmh6YUWrJI3+GWY0qeWioj/tbkYITOkJaeuGt4JrJvHA+l0Gu7kY7XOaa05alMnRWVCXqFgLIwSY4uF59Ue5SU4QKuc/HamDxbr0x6csCetXGoP7Qn1Bk/J9DsynO/UD6iZ1Hyrz+jit0hDCwi/E9OjgKTbB3ZQKQ/0ZOvevfNHG0NK4Aj3Cp7NpRk07RT1i/S0EL93Ag8GRgKI9CfpajKyK6+Jj/PI1KO5/85VAwz2AwzP8FTBb075IxCXv6T9RVvWT2tUaqxDS92zrGUbWzUYk9mSs82pECH+fkqsDt93VW++4YsR/dHCYcQSYTO/KaBMDj9LSD/J/+z20Kq8XvZUAIHtm9hRPP3ItbuAu2Hm5lkPs92pd7kCxgRs0xOVBnZ13ccdA0aunrwv9SdqElJRC3g+oCu+nXyCgmXUs9yMjTMAIHfxZV+aPKcZeUBWt057Xo85Ks1Ir5gzEHCWqZEhrLZMuF11ziGtFQUds/EESajhagzcKsxamcSZxGth4UII+adPhQkUnx2WyN+4YWR+r3f8MnkyGFuR4zjzxJS8WsQYR5PTyRaD9ixa6Mh741nBHbzfjXHskGDq179xaRNrCIB1z1xRfWfjqw2pHc1zk9xlPpL8sQWAIuETZZhbnmL54rceXVNRvUiKrrqIkeogsl0XXb17ylNb0f4GA9Wd44vffEG8FSZGHEL2fbaTGRcSiCeA8PmA/f6Hz8HCS76fXUHwgwkzSwlI71ekZ7Fapmlk/KC+Hs8hUcw3N2LN5LhkVYyizYFl/uPeVP5lsoJHhhfWvvSWruCUW1ZcJOeuTbrDgywJ/qG07gZJplnTvLcYdNaH0KMYOYMGX+rB4NGPFmQsNaIwlWrfCezxre8zXBrsMT+edVLbLqN1BqB76JH4BvZTqUIMfGwPGEn+EnmTV86fPBaYbFL3DFEhjB45CewkXEAtJxk4/Ms2pPXnaRqdky0HOYdcUcE2zcXq4vaIvW2/v0nHFJH2XXe22ueDmq/18XGtELSq85j9X8q0tcNSSKJIX8FTuJF/Pf8j5PhqG2u+osvsLxYrvvfeVJL+4tkcXcr9JV7v0ERmj/X6fM3NC4j6dS1+9Umr2oPavqiAydTZPLMNRGY23LO9zAVDly7jD+70G5TPPLdhRIl4WxcYjLnM+SNcJ26FOrkrISUtPObIz5Zb3AG612krnpy15RMW+1cQjlnWFI6538qky9axd2oJmHIHP08KyP0ubGO+TQNOYuv2uh17yCIvR8VcStw7o1g0NM60sk+8Tq7YfIBJrtp53GkvzXH7OA0p8/n/u1satf/VJhtR1l8Wa6Gmaug7haSpaCaYQax6ta0mkutlb+eAOSG1aobM81D9A4iS1RRlzBBoVX6tU1S6WE2N9ORY6DfeLRC4l9Rvr5h95XDWB2mR1d4WFudpsgVYwiTwT31ljskD8ZyDOlm5DkGh9N/UB/0AI5Xvb8ZBmai2hQ4BWMqFwYnzxwB26YHSOv9WgY3JXnvoN+2R4rqGVh/LLDMtpFP+SpMGJNWvbIl5SOodbCczW2RKleksPoUeGEzrjtKHVdtZA+kfqO+rVx/iclCqwoopepvJpSTDjT+b9GWylGRF8EDbGlw6eUzmJM95Ovoz+kwLX3c2fTjFeYEsE7vUZm3mqdGJuKh2w9/QGSaqRHs99aScGOdDqkFcACoqdbBoQqqjamhH6Q9ng39JCg3lrGJwd50Qk9ovnqBTr8MME7Ps2wiVfygUmPoUBJJfJWX5Nda0nuncbFkA==')); -} -exports.getData = getData; -//# sourceMappingURL=include.js.map - -/***/ }), - -/***/ 89365: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -/** - * MIT License - * - * Copyright (c) 2021 Andrew Raffensperger - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - * - * This is a near carbon-copy of the original source (link below) with the - * TypeScript typings added and a few tweaks to make it ES3-compatible. - * - * See: https://github.com/adraffy/ens-normalize.js +const tn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?Symbol:Wt=>`Symbol(${Wt})`;function t(){}function r(Wt){return"object"==typeof Wt&&null!==Wt||"function"==typeof Wt}const nn=t;function n(Wt,Pt){try{Object.defineProperty(Wt,"name",{value:Pt,configurable:!0})}catch(Wt){}}const an=Promise,rn=Promise.prototype.then,In=Promise.resolve.bind(an),sn=Promise.reject.bind(an);function u(Wt){return new an(Wt)}function c(Wt){return In(Wt)}function d(Wt){return sn(Wt)}function f(Wt,Pt,en){return rn.call(Wt,Pt,en)}function b(Wt,Pt,en){f(f(Wt,Pt,en),void 0,nn)}function h(Wt,Pt){b(Wt,Pt)}function _(Wt,Pt){b(Wt,void 0,Pt)}function p(Wt,Pt,en){return f(Wt,Pt,en)}function m(Wt){f(Wt,void 0,nn)}let y=Wt=>{if("function"==typeof queueMicrotask)y=queueMicrotask;else{const Wt=c(void 0);y=Pt=>f(Wt,Pt)}return y(Wt)};function g(Wt,Pt,en){if("function"!=typeof Wt)throw new TypeError("Argument is not a function");return Function.prototype.apply.call(Wt,Pt,en)}function w(Wt,Pt,en){try{return c(g(Wt,Pt,en))}catch(Wt){return d(Wt)}}class S{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(Wt){const Pt=this._back;let en=Pt;16383===Pt._elements.length&&(en={_elements:[],_next:void 0}),Pt._elements.push(Wt),en!==Pt&&(this._back=en,Pt._next=en),++this._size}shift(){const Wt=this._front;let Pt=Wt;const en=this._cursor;let tn=en+1;const nn=Wt._elements,an=nn[en];return 16384===tn&&(Pt=Wt._next,tn=0),--this._size,this._cursor=tn,Wt!==Pt&&(this._front=Pt),nn[en]=void 0,an}forEach(Wt){let Pt=this._cursor,en=this._front,tn=en._elements;for(;!(Pt===tn.length&&void 0===en._next||Pt===tn.length&&(en=en._next,tn=en._elements,Pt=0,0===tn.length));)Wt(tn[Pt]),++Pt}peek(){const Wt=this._front,Pt=this._cursor;return Wt._elements[Pt]}}const on=tn("[[AbortSteps]]"),cn=tn("[[ErrorSteps]]"),dn=tn("[[CancelSteps]]"),un=tn("[[PullSteps]]"),pn=tn("[[ReleaseSteps]]");function E(Wt,Pt){Wt._ownerReadableStream=Pt,Pt._reader=Wt,"readable"===Pt._state?O(Wt):"closed"===Pt._state?function(Wt){O(Wt),j(Wt)}(Wt):B(Wt,Pt._storedError)}function P(Wt,Pt){return Gt(Wt._ownerReadableStream,Pt)}function W(Wt){const Pt=Wt._ownerReadableStream;"readable"===Pt._state?A(Wt,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):function(Wt,Pt){B(Wt,Pt)}(Wt,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),Pt._readableStreamController[pn](),Pt._reader=void 0,Wt._ownerReadableStream=void 0}function k(Wt){return new TypeError("Cannot "+Wt+" a stream using a released reader")}function O(Wt){Wt._closedPromise=u(((Pt,en)=>{Wt._closedPromise_resolve=Pt,Wt._closedPromise_reject=en}))}function B(Wt,Pt){O(Wt),A(Wt,Pt)}function A(Wt,Pt){void 0!==Wt._closedPromise_reject&&(m(Wt._closedPromise),Wt._closedPromise_reject(Pt),Wt._closedPromise_resolve=void 0,Wt._closedPromise_reject=void 0)}function j(Wt){void 0!==Wt._closedPromise_resolve&&(Wt._closedPromise_resolve(void 0),Wt._closedPromise_resolve=void 0,Wt._closedPromise_reject=void 0)}const mn=Number.isFinite||function(Wt){return"number"==typeof Wt&&isFinite(Wt)},bn=Math.trunc||function(Wt){return Wt<0?Math.ceil(Wt):Math.floor(Wt)};function F(Wt,Pt){if(void 0!==Wt&&("object"!=typeof(en=Wt)&&"function"!=typeof en))throw new TypeError(`${Pt} is not an object.`);var en}function I(Wt,Pt){if("function"!=typeof Wt)throw new TypeError(`${Pt} is not a function.`)}function D(Wt,Pt){if(!function(Wt){return"object"==typeof Wt&&null!==Wt||"function"==typeof Wt}(Wt))throw new TypeError(`${Pt} is not an object.`)}function $(Wt,Pt,en){if(void 0===Wt)throw new TypeError(`Parameter ${Pt} is required in '${en}'.`)}function M(Wt,Pt,en){if(void 0===Wt)throw new TypeError(`${Pt} is required in '${en}'.`)}function Y(Wt){return Number(Wt)}function Q(Wt){return 0===Wt?0:Wt}function N(Wt,Pt){const en=Number.MAX_SAFE_INTEGER;let tn=Number(Wt);if(tn=Q(tn),!mn(tn))throw new TypeError(`${Pt} is not a finite number`);if(tn=function(Wt){return Q(bn(Wt))}(tn),tn<0||tn>en)throw new TypeError(`${Pt} is outside the accepted range of 0 to ${en}, inclusive`);return mn(tn)&&0!==tn?tn:0}function H(Wt){if(!r(Wt))return!1;if("function"!=typeof Wt.getReader)return!1;try{return"boolean"==typeof Wt.locked}catch(Wt){return!1}}function x(Wt){if(!r(Wt))return!1;if("function"!=typeof Wt.getWriter)return!1;try{return"boolean"==typeof Wt.locked}catch(Wt){return!1}}function V(Wt,Pt){if(!Vt(Wt))throw new TypeError(`${Pt} is not a ReadableStream.`)}function U(Wt,Pt){Wt._reader._readRequests.push(Pt)}function G(Wt,Pt,en){const tn=Wt._reader._readRequests.shift();en?tn._closeSteps():tn._chunkSteps(Pt)}function X(Wt){return Wt._reader._readRequests.length}function J(Wt){const Pt=Wt._reader;return void 0!==Pt&&!!K(Pt)}class ReadableStreamDefaultReader{constructor(Wt){if($(Wt,1,"ReadableStreamDefaultReader"),V(Wt,"First parameter"),Ut(Wt))throw new TypeError("This stream has already been locked for exclusive reading by another reader");E(this,Wt),this._readRequests=new S}get closed(){return K(this)?this._closedPromise:d(ee("closed"))}cancel(Wt){return K(this)?void 0===this._ownerReadableStream?d(k("cancel")):P(this,Wt):d(ee("cancel"))}read(){if(!K(this))return d(ee("read"));if(void 0===this._ownerReadableStream)return d(k("read from"));let Wt,Pt;const en=u(((en,tn)=>{Wt=en,Pt=tn}));return function(Wt,Pt){const en=Wt._ownerReadableStream;en._disturbed=!0,"closed"===en._state?Pt._closeSteps():"errored"===en._state?Pt._errorSteps(en._storedError):en._readableStreamController[un](Pt)}(this,{_chunkSteps:Pt=>Wt({value:Pt,done:!1}),_closeSteps:()=>Wt({value:void 0,done:!0}),_errorSteps:Wt=>Pt(Wt)}),en}releaseLock(){if(!K(this))throw ee("releaseLock");void 0!==this._ownerReadableStream&&function(Wt){W(Wt);const Pt=new TypeError("Reader was released");Z(Wt,Pt)}(this)}}function K(Wt){return!!r(Wt)&&(!!Object.prototype.hasOwnProperty.call(Wt,"_readRequests")&&Wt instanceof ReadableStreamDefaultReader)}function Z(Wt,Pt){const en=Wt._readRequests;Wt._readRequests=new S,en.forEach((Wt=>{Wt._errorSteps(Pt)}))}function ee(Wt){return new TypeError(`ReadableStreamDefaultReader.prototype.${Wt} can only be used on a ReadableStreamDefaultReader`)}Object.defineProperties(ReadableStreamDefaultReader.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),n(ReadableStreamDefaultReader.prototype.cancel,"cancel"),n(ReadableStreamDefaultReader.prototype.read,"read"),n(ReadableStreamDefaultReader.prototype.releaseLock,"releaseLock"),"symbol"==typeof tn.toStringTag&&Object.defineProperty(ReadableStreamDefaultReader.prototype,tn.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});class te{constructor(Wt,Pt){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=Wt,this._preventCancel=Pt}next(){const e=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?p(this._ongoingPromise,e,e):e(),this._ongoingPromise}return(Wt){const t=()=>this._returnSteps(Wt);return this._ongoingPromise?p(this._ongoingPromise,t,t):t()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});const Wt=this._reader;return void 0===Wt?d(k("iterate")):f(Wt.read(),(Wt=>{var Pt;return this._ongoingPromise=void 0,Wt.done&&(this._isFinished=!0,null===(Pt=this._reader)||void 0===Pt||Pt.releaseLock(),this._reader=void 0),Wt}),(Wt=>{var Pt;throw this._ongoingPromise=void 0,this._isFinished=!0,null===(Pt=this._reader)||void 0===Pt||Pt.releaseLock(),this._reader=void 0,Wt}))}_returnSteps(Wt){if(this._isFinished)return Promise.resolve({value:Wt,done:!0});this._isFinished=!0;const Pt=this._reader;if(void 0===Pt)return d(k("finish iterating"));if(this._reader=void 0,!this._preventCancel){const en=Pt.cancel(Wt);return Pt.releaseLock(),p(en,(()=>({value:Wt,done:!0})))}return Pt.releaseLock(),c({value:Wt,done:!0})}}const Gn={next(){return oe(this)?this._asyncIteratorImpl.next():d(ne("next"))},return(Wt){return oe(this)?this._asyncIteratorImpl.return(Wt):d(ne("return"))}};function oe(Wt){if(!r(Wt))return!1;if(!Object.prototype.hasOwnProperty.call(Wt,"_asyncIteratorImpl"))return!1;try{return Wt._asyncIteratorImpl instanceof te}catch(Wt){return!1}}function ne(Wt){return new TypeError(`ReadableStreamAsyncIterator.${Wt} can only be used on a ReadableSteamAsyncIterator`)}"symbol"==typeof tn.asyncIterator&&Object.defineProperty(Gn,tn.asyncIterator,{value(){return this},writable:!0,configurable:!0});const hn=Number.isNaN||function(Wt){return Wt!=Wt};function ie(Wt,Pt,en,tn,nn){new Uint8Array(Wt).set(new Uint8Array(en,tn,nn),Pt)}function le(Wt){const Pt=function(Wt,Pt,en){if(Wt.slice)return Wt.slice(Pt,en);const tn=en-Pt,nn=new ArrayBuffer(tn);return ie(nn,0,Wt,Pt,tn),nn}(Wt.buffer,Wt.byteOffset,Wt.byteOffset+Wt.byteLength);return new Uint8Array(Pt)}function se(Wt){const Pt=Wt._queue.shift();return Wt._queueTotalSize-=Pt.size,Wt._queueTotalSize<0&&(Wt._queueTotalSize=0),Pt.value}function ue(Wt,Pt,en){if("number"!=typeof(tn=en)||hn(tn)||tn<0||en===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");var tn;Wt._queue.push({value:Pt,size:en}),Wt._queueTotalSize+=en}function ce(Wt){Wt._queue=new S,Wt._queueTotalSize=0}class ReadableStreamBYOBRequest{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!fe(this))throw Be("view");return this._view}respond(Wt){if(!fe(this))throw Be("respond");if($(Wt,1,"respond"),Wt=N(Wt,"First parameter"),void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");this._view.buffer,function(Wt,Pt){const en=Wt._pendingPullIntos.peek();if("closed"===Wt._controlledReadableByteStream._state){if(0!==Pt)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(0===Pt)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(en.bytesFilled+Pt>en.byteLength)throw new RangeError("bytesWritten out of range")}en.buffer=en.buffer,qe(Wt,Pt)}(this._associatedReadableByteStreamController,Wt)}respondWithNewView(Wt){if(!fe(this))throw Be("respondWithNewView");if($(Wt,1,"respondWithNewView"),!ArrayBuffer.isView(Wt))throw new TypeError("You can only respond with array buffer views");if(void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");Wt.buffer,function(Wt,Pt){const en=Wt._pendingPullIntos.peek();if("closed"===Wt._controlledReadableByteStream._state){if(0!==Pt.byteLength)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(0===Pt.byteLength)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(en.byteOffset+en.bytesFilled!==Pt.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(en.bufferByteLength!==Pt.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(en.bytesFilled+Pt.byteLength>en.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");const tn=Pt.byteLength;en.buffer=Pt.buffer,qe(Wt,tn)}(this._associatedReadableByteStreamController,Wt)}}Object.defineProperties(ReadableStreamBYOBRequest.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),n(ReadableStreamBYOBRequest.prototype.respond,"respond"),n(ReadableStreamBYOBRequest.prototype.respondWithNewView,"respondWithNewView"),"symbol"==typeof tn.toStringTag&&Object.defineProperty(ReadableStreamBYOBRequest.prototype,tn.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class ReadableByteStreamController{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!de(this))throw Ae("byobRequest");return function(Wt){if(null===Wt._byobRequest&&Wt._pendingPullIntos.length>0){const Pt=Wt._pendingPullIntos.peek(),en=new Uint8Array(Pt.buffer,Pt.byteOffset+Pt.bytesFilled,Pt.byteLength-Pt.bytesFilled),tn=Object.create(ReadableStreamBYOBRequest.prototype);!function(Wt,Pt,en){Wt._associatedReadableByteStreamController=Pt,Wt._view=en}(tn,Wt,en),Wt._byobRequest=tn}return Wt._byobRequest}(this)}get desiredSize(){if(!de(this))throw Ae("desiredSize");return ke(this)}close(){if(!de(this))throw Ae("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");const Wt=this._controlledReadableByteStream._state;if("readable"!==Wt)throw new TypeError(`The stream (in ${Wt} state) is not in the readable state and cannot be closed`);!function(Wt){const Pt=Wt._controlledReadableByteStream;if(Wt._closeRequested||"readable"!==Pt._state)return;if(Wt._queueTotalSize>0)return void(Wt._closeRequested=!0);if(Wt._pendingPullIntos.length>0){if(Wt._pendingPullIntos.peek().bytesFilled>0){const Pt=new TypeError("Insufficient bytes to fill elements in the given buffer");throw Pe(Wt,Pt),Pt}}Ee(Wt),Xt(Pt)}(this)}enqueue(Wt){if(!de(this))throw Ae("enqueue");if($(Wt,1,"enqueue"),!ArrayBuffer.isView(Wt))throw new TypeError("chunk must be an array buffer view");if(0===Wt.byteLength)throw new TypeError("chunk must have non-zero byteLength");if(0===Wt.buffer.byteLength)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");const Pt=this._controlledReadableByteStream._state;if("readable"!==Pt)throw new TypeError(`The stream (in ${Pt} state) is not in the readable state and cannot be enqueued to`);!function(Wt,Pt){const en=Wt._controlledReadableByteStream;if(Wt._closeRequested||"readable"!==en._state)return;const tn=Pt.buffer,nn=Pt.byteOffset,an=Pt.byteLength,rn=tn;if(Wt._pendingPullIntos.length>0){const Pt=Wt._pendingPullIntos.peek();Pt.buffer,0,Re(Wt),Pt.buffer=Pt.buffer,"none"===Pt.readerType&&ge(Wt,Pt)}if(J(en))if(function(Wt){const Pt=Wt._controlledReadableByteStream._reader;for(;Pt._readRequests.length>0;){if(0===Wt._queueTotalSize)return;We(Wt,Pt._readRequests.shift())}}(Wt),0===X(en))me(Wt,rn,nn,an);else{Wt._pendingPullIntos.length>0&&Ce(Wt);G(en,new Uint8Array(rn,nn,an),!1)}else Le(en)?(me(Wt,rn,nn,an),Te(Wt)):me(Wt,rn,nn,an);be(Wt)}(this,Wt)}error(Wt){if(!de(this))throw Ae("error");Pe(this,Wt)}[dn](Wt){he(this),ce(this);const Pt=this._cancelAlgorithm(Wt);return Ee(this),Pt}[un](Wt){const Pt=this._controlledReadableByteStream;if(this._queueTotalSize>0)return void We(this,Wt);const en=this._autoAllocateChunkSize;if(void 0!==en){let tn;try{tn=new ArrayBuffer(en)}catch(Pt){return void Wt._errorSteps(Pt)}const nn={buffer:tn,bufferByteLength:en,byteOffset:0,byteLength:en,bytesFilled:0,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(nn)}U(Pt,Wt),be(this)}[pn](){if(this._pendingPullIntos.length>0){const Wt=this._pendingPullIntos.peek();Wt.readerType="none",this._pendingPullIntos=new S,this._pendingPullIntos.push(Wt)}}}function de(Wt){return!!r(Wt)&&(!!Object.prototype.hasOwnProperty.call(Wt,"_controlledReadableByteStream")&&Wt instanceof ReadableByteStreamController)}function fe(Wt){return!!r(Wt)&&(!!Object.prototype.hasOwnProperty.call(Wt,"_associatedReadableByteStreamController")&&Wt instanceof ReadableStreamBYOBRequest)}function be(Wt){const Pt=function(Wt){const Pt=Wt._controlledReadableByteStream;if("readable"!==Pt._state)return!1;if(Wt._closeRequested)return!1;if(!Wt._started)return!1;if(J(Pt)&&X(Pt)>0)return!0;if(Le(Pt)&&ze(Pt)>0)return!0;if(ke(Wt)>0)return!0;return!1}(Wt);if(!Pt)return;if(Wt._pulling)return void(Wt._pullAgain=!0);Wt._pulling=!0;b(Wt._pullAlgorithm(),(()=>(Wt._pulling=!1,Wt._pullAgain&&(Wt._pullAgain=!1,be(Wt)),null)),(Pt=>(Pe(Wt,Pt),null)))}function he(Wt){Re(Wt),Wt._pendingPullIntos=new S}function _e(Wt,Pt){let en=!1;"closed"===Wt._state&&(en=!0);const tn=pe(Pt);"default"===Pt.readerType?G(Wt,tn,en):function(Wt,Pt,en){const tn=Wt._reader._readIntoRequests.shift();en?tn._closeSteps(Pt):tn._chunkSteps(Pt)}(Wt,tn,en)}function pe(Wt){const Pt=Wt.bytesFilled,en=Wt.elementSize;return new Wt.viewConstructor(Wt.buffer,Wt.byteOffset,Pt/en)}function me(Wt,Pt,en,tn){Wt._queue.push({buffer:Pt,byteOffset:en,byteLength:tn}),Wt._queueTotalSize+=tn}function ye(Wt,Pt,en,tn){let nn;try{nn=Pt.slice(en,en+tn)}catch(Pt){throw Pe(Wt,Pt),Pt}me(Wt,nn,0,tn)}function ge(Wt,Pt){Pt.bytesFilled>0&&ye(Wt,Pt.buffer,Pt.byteOffset,Pt.bytesFilled),Ce(Wt)}function we(Wt,Pt){const en=Pt.elementSize,tn=Pt.bytesFilled-Pt.bytesFilled%en,nn=Math.min(Wt._queueTotalSize,Pt.byteLength-Pt.bytesFilled),an=Pt.bytesFilled+nn,rn=an-an%en;let In=nn,sn=!1;rn>tn&&(In=rn-Pt.bytesFilled,sn=!0);const on=Wt._queue;for(;In>0;){const en=on.peek(),tn=Math.min(In,en.byteLength),nn=Pt.byteOffset+Pt.bytesFilled;ie(Pt.buffer,nn,en.buffer,en.byteOffset,tn),en.byteLength===tn?on.shift():(en.byteOffset+=tn,en.byteLength-=tn),Wt._queueTotalSize-=tn,Se(Wt,tn,Pt),In-=tn}return sn}function Se(Wt,Pt,en){en.bytesFilled+=Pt}function ve(Wt){0===Wt._queueTotalSize&&Wt._closeRequested?(Ee(Wt),Xt(Wt._controlledReadableByteStream)):be(Wt)}function Re(Wt){null!==Wt._byobRequest&&(Wt._byobRequest._associatedReadableByteStreamController=void 0,Wt._byobRequest._view=null,Wt._byobRequest=null)}function Te(Wt){for(;Wt._pendingPullIntos.length>0;){if(0===Wt._queueTotalSize)return;const Pt=Wt._pendingPullIntos.peek();we(Wt,Pt)&&(Ce(Wt),_e(Wt._controlledReadableByteStream,Pt))}}function qe(Wt,Pt){const en=Wt._pendingPullIntos.peek();Re(Wt);"closed"===Wt._controlledReadableByteStream._state?function(Wt,Pt){"none"===Pt.readerType&&Ce(Wt);const en=Wt._controlledReadableByteStream;if(Le(en))for(;ze(en)>0;)_e(en,Ce(Wt))}(Wt,en):function(Wt,Pt,en){if(Se(0,Pt,en),"none"===en.readerType)return ge(Wt,en),void Te(Wt);if(en.bytesFilled0){const Pt=en.byteOffset+en.bytesFilled;ye(Wt,en.buffer,Pt-tn,tn)}en.bytesFilled-=tn,_e(Wt._controlledReadableByteStream,en),Te(Wt)}(Wt,Pt,en),be(Wt)}function Ce(Wt){return Wt._pendingPullIntos.shift()}function Ee(Wt){Wt._pullAlgorithm=void 0,Wt._cancelAlgorithm=void 0}function Pe(Wt,Pt){const en=Wt._controlledReadableByteStream;"readable"===en._state&&(he(Wt),ce(Wt),Ee(Wt),Jt(en,Pt))}function We(Wt,Pt){const en=Wt._queue.shift();Wt._queueTotalSize-=en.byteLength,ve(Wt);const tn=new Uint8Array(en.buffer,en.byteOffset,en.byteLength);Pt._chunkSteps(tn)}function ke(Wt){const Pt=Wt._controlledReadableByteStream._state;return"errored"===Pt?null:"closed"===Pt?0:Wt._strategyHWM-Wt._queueTotalSize}function Oe(Wt,Pt,en){const tn=Object.create(ReadableByteStreamController.prototype);let nn,an,rn;nn=void 0!==Pt.start?()=>Pt.start(tn):()=>{},an=void 0!==Pt.pull?()=>Pt.pull(tn):()=>c(void 0),rn=void 0!==Pt.cancel?Wt=>Pt.cancel(Wt):()=>c(void 0);const In=Pt.autoAllocateChunkSize;if(0===In)throw new TypeError("autoAllocateChunkSize must be greater than 0");!function(Wt,Pt,en,tn,nn,an,rn){Pt._controlledReadableByteStream=Wt,Pt._pullAgain=!1,Pt._pulling=!1,Pt._byobRequest=null,Pt._queue=Pt._queueTotalSize=void 0,ce(Pt),Pt._closeRequested=!1,Pt._started=!1,Pt._strategyHWM=an,Pt._pullAlgorithm=tn,Pt._cancelAlgorithm=nn,Pt._autoAllocateChunkSize=rn,Pt._pendingPullIntos=new S,Wt._readableStreamController=Pt,b(c(en()),(()=>(Pt._started=!0,be(Pt),null)),(Wt=>(Pe(Pt,Wt),null)))}(Wt,tn,nn,an,rn,en,In)}function Be(Wt){return new TypeError(`ReadableStreamBYOBRequest.prototype.${Wt} can only be used on a ReadableStreamBYOBRequest`)}function Ae(Wt){return new TypeError(`ReadableByteStreamController.prototype.${Wt} can only be used on a ReadableByteStreamController`)}function je(Wt,Pt){Wt._reader._readIntoRequests.push(Pt)}function ze(Wt){return Wt._reader._readIntoRequests.length}function Le(Wt){const Pt=Wt._reader;return void 0!==Pt&&!!Fe(Pt)}Object.defineProperties(ReadableByteStreamController.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),n(ReadableByteStreamController.prototype.close,"close"),n(ReadableByteStreamController.prototype.enqueue,"enqueue"),n(ReadableByteStreamController.prototype.error,"error"),"symbol"==typeof tn.toStringTag&&Object.defineProperty(ReadableByteStreamController.prototype,tn.toStringTag,{value:"ReadableByteStreamController",configurable:!0});class ReadableStreamBYOBReader{constructor(Wt){if($(Wt,1,"ReadableStreamBYOBReader"),V(Wt,"First parameter"),Ut(Wt))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!de(Wt._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");E(this,Wt),this._readIntoRequests=new S}get closed(){return Fe(this)?this._closedPromise:d(De("closed"))}cancel(Wt){return Fe(this)?void 0===this._ownerReadableStream?d(k("cancel")):P(this,Wt):d(De("cancel"))}read(Wt){if(!Fe(this))return d(De("read"));if(!ArrayBuffer.isView(Wt))return d(new TypeError("view must be an array buffer view"));if(0===Wt.byteLength)return d(new TypeError("view must have non-zero byteLength"));if(0===Wt.buffer.byteLength)return d(new TypeError("view's buffer must have non-zero byteLength"));if(Wt.buffer,void 0===this._ownerReadableStream)return d(k("read from"));let Pt,en;const tn=u(((Wt,tn)=>{Pt=Wt,en=tn}));return function(Wt,Pt,en){const tn=Wt._ownerReadableStream;tn._disturbed=!0,"errored"===tn._state?en._errorSteps(tn._storedError):function(Wt,Pt,en){const tn=Wt._controlledReadableByteStream;let nn=1;Pt.constructor!==DataView&&(nn=Pt.constructor.BYTES_PER_ELEMENT);const an=Pt.constructor,rn=Pt.buffer,In={buffer:rn,bufferByteLength:rn.byteLength,byteOffset:Pt.byteOffset,byteLength:Pt.byteLength,bytesFilled:0,elementSize:nn,viewConstructor:an,readerType:"byob"};if(Wt._pendingPullIntos.length>0)return Wt._pendingPullIntos.push(In),void je(tn,en);if("closed"!==tn._state){if(Wt._queueTotalSize>0){if(we(Wt,In)){const Pt=pe(In);return ve(Wt),void en._chunkSteps(Pt)}if(Wt._closeRequested){const Pt=new TypeError("Insufficient bytes to fill elements in the given buffer");return Pe(Wt,Pt),void en._errorSteps(Pt)}}Wt._pendingPullIntos.push(In),je(tn,en),be(Wt)}else{const Wt=new an(In.buffer,In.byteOffset,0);en._closeSteps(Wt)}}(tn._readableStreamController,Pt,en)}(this,Wt,{_chunkSteps:Wt=>Pt({value:Wt,done:!1}),_closeSteps:Wt=>Pt({value:Wt,done:!0}),_errorSteps:Wt=>en(Wt)}),tn}releaseLock(){if(!Fe(this))throw De("releaseLock");void 0!==this._ownerReadableStream&&function(Wt){W(Wt);const Pt=new TypeError("Reader was released");Ie(Wt,Pt)}(this)}}function Fe(Wt){return!!r(Wt)&&(!!Object.prototype.hasOwnProperty.call(Wt,"_readIntoRequests")&&Wt instanceof ReadableStreamBYOBReader)}function Ie(Wt,Pt){const en=Wt._readIntoRequests;Wt._readIntoRequests=new S,en.forEach((Wt=>{Wt._errorSteps(Pt)}))}function De(Wt){return new TypeError(`ReadableStreamBYOBReader.prototype.${Wt} can only be used on a ReadableStreamBYOBReader`)}function $e(Wt,Pt){const{highWaterMark:en}=Wt;if(void 0===en)return Pt;if(hn(en)||en<0)throw new RangeError("Invalid highWaterMark");return en}function Me(Wt){const{size:Pt}=Wt;return Pt||(()=>1)}function Ye(Wt,Pt){F(Wt,Pt);const en=null==Wt?void 0:Wt.highWaterMark,tn=null==Wt?void 0:Wt.size;return{highWaterMark:void 0===en?void 0:Y(en),size:void 0===tn?void 0:Qe(tn,`${Pt} has member 'size' that`)}}function Qe(Wt,Pt){return I(Wt,Pt),Pt=>Y(Wt(Pt))}function Ne(Wt,Pt,en){return I(Wt,en),en=>w(Wt,Pt,[en])}function He(Wt,Pt,en){return I(Wt,en),()=>w(Wt,Pt,[])}function xe(Wt,Pt,en){return I(Wt,en),en=>g(Wt,Pt,[en])}function Ve(Wt,Pt,en){return I(Wt,en),(en,tn)=>w(Wt,Pt,[en,tn])}Object.defineProperties(ReadableStreamBYOBReader.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),n(ReadableStreamBYOBReader.prototype.cancel,"cancel"),n(ReadableStreamBYOBReader.prototype.read,"read"),n(ReadableStreamBYOBReader.prototype.releaseLock,"releaseLock"),"symbol"==typeof tn.toStringTag&&Object.defineProperty(ReadableStreamBYOBReader.prototype,tn.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});const Zn="function"==typeof AbortController;class WritableStream{constructor(Wt={},Pt={}){void 0===Wt?Wt=null:D(Wt,"First parameter");const en=Ye(Pt,"Second parameter"),tn=function(Wt,Pt){F(Wt,Pt);const en=null==Wt?void 0:Wt.abort,tn=null==Wt?void 0:Wt.close,nn=null==Wt?void 0:Wt.start,an=null==Wt?void 0:Wt.type,rn=null==Wt?void 0:Wt.write;return{abort:void 0===en?void 0:Ne(en,Wt,`${Pt} has member 'abort' that`),close:void 0===tn?void 0:He(tn,Wt,`${Pt} has member 'close' that`),start:void 0===nn?void 0:xe(nn,Wt,`${Pt} has member 'start' that`),write:void 0===rn?void 0:Ve(rn,Wt,`${Pt} has member 'write' that`),type:an}}(Wt,"First parameter");var nn;(nn=this)._state="writable",nn._storedError=void 0,nn._writer=void 0,nn._writableStreamController=void 0,nn._writeRequests=new S,nn._inFlightWriteRequest=void 0,nn._closeRequest=void 0,nn._inFlightCloseRequest=void 0,nn._pendingAbortRequest=void 0,nn._backpressure=!1;if(void 0!==tn.type)throw new RangeError("Invalid type is specified");const an=Me(en);!function(Wt,Pt,en,tn){const nn=Object.create(WritableStreamDefaultController.prototype);let an,rn,In,sn;an=void 0!==Pt.start?()=>Pt.start(nn):()=>{};rn=void 0!==Pt.write?Wt=>Pt.write(Wt,nn):()=>c(void 0);In=void 0!==Pt.close?()=>Pt.close():()=>c(void 0);sn=void 0!==Pt.abort?Wt=>Pt.abort(Wt):()=>c(void 0);!function(Wt,Pt,en,tn,nn,an,rn,In){Pt._controlledWritableStream=Wt,Wt._writableStreamController=Pt,Pt._queue=void 0,Pt._queueTotalSize=void 0,ce(Pt),Pt._abortReason=void 0,Pt._abortController=function(){if(Zn)return new AbortController}(),Pt._started=!1,Pt._strategySizeAlgorithm=In,Pt._strategyHWM=rn,Pt._writeAlgorithm=tn,Pt._closeAlgorithm=nn,Pt._abortAlgorithm=an;const sn=bt(Pt);nt(Wt,sn);const on=en();b(c(on),(()=>(Pt._started=!0,dt(Pt),null)),(en=>(Pt._started=!0,Ze(Wt,en),null)))}(Wt,nn,an,rn,In,sn,en,tn)}(this,tn,$e(en,1),an)}get locked(){if(!Ge(this))throw _t("locked");return Xe(this)}abort(Wt){return Ge(this)?Xe(this)?d(new TypeError("Cannot abort a stream that already has a writer")):Je(this,Wt):d(_t("abort"))}close(){return Ge(this)?Xe(this)?d(new TypeError("Cannot close a stream that already has a writer")):rt(this)?d(new TypeError("Cannot close an already-closing stream")):Ke(this):d(_t("close"))}getWriter(){if(!Ge(this))throw _t("getWriter");return new WritableStreamDefaultWriter(this)}}function Ge(Wt){return!!r(Wt)&&(!!Object.prototype.hasOwnProperty.call(Wt,"_writableStreamController")&&Wt instanceof WritableStream)}function Xe(Wt){return void 0!==Wt._writer}function Je(Wt,Pt){var en;if("closed"===Wt._state||"errored"===Wt._state)return c(void 0);Wt._writableStreamController._abortReason=Pt,null===(en=Wt._writableStreamController._abortController)||void 0===en||en.abort(Pt);const tn=Wt._state;if("closed"===tn||"errored"===tn)return c(void 0);if(void 0!==Wt._pendingAbortRequest)return Wt._pendingAbortRequest._promise;let nn=!1;"erroring"===tn&&(nn=!0,Pt=void 0);const an=u(((en,tn)=>{Wt._pendingAbortRequest={_promise:void 0,_resolve:en,_reject:tn,_reason:Pt,_wasAlreadyErroring:nn}}));return Wt._pendingAbortRequest._promise=an,nn||et(Wt,Pt),an}function Ke(Wt){const Pt=Wt._state;if("closed"===Pt||"errored"===Pt)return d(new TypeError(`The stream (in ${Pt} state) is not in the writable state and cannot be closed`));const en=u(((Pt,en)=>{const tn={_resolve:Pt,_reject:en};Wt._closeRequest=tn})),tn=Wt._writer;var nn;return void 0!==tn&&Wt._backpressure&&"writable"===Pt&&Et(tn),ue(nn=Wt._writableStreamController,An,0),dt(nn),en}function Ze(Wt,Pt){"writable"!==Wt._state?tt(Wt):et(Wt,Pt)}function et(Wt,Pt){const en=Wt._writableStreamController;Wt._state="erroring",Wt._storedError=Pt;const tn=Wt._writer;void 0!==tn&&it(tn,Pt),!function(Wt){if(void 0===Wt._inFlightWriteRequest&&void 0===Wt._inFlightCloseRequest)return!1;return!0}(Wt)&&en._started&&tt(Wt)}function tt(Wt){Wt._state="errored",Wt._writableStreamController[cn]();const Pt=Wt._storedError;if(Wt._writeRequests.forEach((Wt=>{Wt._reject(Pt)})),Wt._writeRequests=new S,void 0===Wt._pendingAbortRequest)return void ot(Wt);const en=Wt._pendingAbortRequest;if(Wt._pendingAbortRequest=void 0,en._wasAlreadyErroring)return en._reject(Pt),void ot(Wt);b(Wt._writableStreamController[on](en._reason),(()=>(en._resolve(),ot(Wt),null)),(Pt=>(en._reject(Pt),ot(Wt),null)))}function rt(Wt){return void 0!==Wt._closeRequest||void 0!==Wt._inFlightCloseRequest}function ot(Wt){void 0!==Wt._closeRequest&&(Wt._closeRequest._reject(Wt._storedError),Wt._closeRequest=void 0);const Pt=Wt._writer;void 0!==Pt&&St(Pt,Wt._storedError)}function nt(Wt,Pt){const en=Wt._writer;void 0!==en&&Pt!==Wt._backpressure&&(Pt?function(Wt){Rt(Wt)}(en):Et(en)),Wt._backpressure=Pt}Object.defineProperties(WritableStream.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),n(WritableStream.prototype.abort,"abort"),n(WritableStream.prototype.close,"close"),n(WritableStream.prototype.getWriter,"getWriter"),"symbol"==typeof tn.toStringTag&&Object.defineProperty(WritableStream.prototype,tn.toStringTag,{value:"WritableStream",configurable:!0});class WritableStreamDefaultWriter{constructor(Wt){if($(Wt,1,"WritableStreamDefaultWriter"),function(Wt,Pt){if(!Ge(Wt))throw new TypeError(`${Pt} is not a WritableStream.`)}(Wt,"First parameter"),Xe(Wt))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=Wt,Wt._writer=this;const Pt=Wt._state;if("writable"===Pt)!rt(Wt)&&Wt._backpressure?Rt(this):qt(this),gt(this);else if("erroring"===Pt)Tt(this,Wt._storedError),gt(this);else if("closed"===Pt)qt(this),gt(en=this),vt(en);else{const Pt=Wt._storedError;Tt(this,Pt),wt(this,Pt)}var en}get closed(){return at(this)?this._closedPromise:d(mt("closed"))}get desiredSize(){if(!at(this))throw mt("desiredSize");if(void 0===this._ownerWritableStream)throw yt("desiredSize");return function(Wt){const Pt=Wt._ownerWritableStream,en=Pt._state;if("errored"===en||"erroring"===en)return null;if("closed"===en)return 0;return ct(Pt._writableStreamController)}(this)}get ready(){return at(this)?this._readyPromise:d(mt("ready"))}abort(Wt){return at(this)?void 0===this._ownerWritableStream?d(yt("abort")):function(Wt,Pt){return Je(Wt._ownerWritableStream,Pt)}(this,Wt):d(mt("abort"))}close(){if(!at(this))return d(mt("close"));const Wt=this._ownerWritableStream;return void 0===Wt?d(yt("close")):rt(Wt)?d(new TypeError("Cannot close an already-closing stream")):Ke(this._ownerWritableStream)}releaseLock(){if(!at(this))throw mt("releaseLock");void 0!==this._ownerWritableStream&&function(Wt){const Pt=Wt._ownerWritableStream,en=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");it(Wt,en),function(Wt,Pt){"pending"===Wt._closedPromiseState?St(Wt,Pt):function(Wt,Pt){wt(Wt,Pt)}(Wt,Pt)}(Wt,en),Pt._writer=void 0,Wt._ownerWritableStream=void 0}(this)}write(Wt){return at(this)?void 0===this._ownerWritableStream?d(yt("write to")):function(Wt,Pt){const en=Wt._ownerWritableStream,tn=en._writableStreamController,nn=function(Wt,Pt){try{return Wt._strategySizeAlgorithm(Pt)}catch(Pt){return ft(Wt,Pt),1}}(tn,Pt);if(en!==Wt._ownerWritableStream)return d(yt("write to"));const an=en._state;if("errored"===an)return d(en._storedError);if(rt(en)||"closed"===an)return d(new TypeError("The stream is closing or closed and cannot be written to"));if("erroring"===an)return d(en._storedError);const rn=function(Wt){return u(((Pt,en)=>{const tn={_resolve:Pt,_reject:en};Wt._writeRequests.push(tn)}))}(en);return function(Wt,Pt,en){try{ue(Wt,Pt,en)}catch(Pt){return void ft(Wt,Pt)}const tn=Wt._controlledWritableStream;if(!rt(tn)&&"writable"===tn._state){nt(tn,bt(Wt))}dt(Wt)}(tn,Pt,nn),rn}(this,Wt):d(mt("write"))}}function at(Wt){return!!r(Wt)&&(!!Object.prototype.hasOwnProperty.call(Wt,"_ownerWritableStream")&&Wt instanceof WritableStreamDefaultWriter)}function it(Wt,Pt){"pending"===Wt._readyPromiseState?Ct(Wt,Pt):function(Wt,Pt){Tt(Wt,Pt)}(Wt,Pt)}Object.defineProperties(WritableStreamDefaultWriter.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),n(WritableStreamDefaultWriter.prototype.abort,"abort"),n(WritableStreamDefaultWriter.prototype.close,"close"),n(WritableStreamDefaultWriter.prototype.releaseLock,"releaseLock"),n(WritableStreamDefaultWriter.prototype.write,"write"),"symbol"==typeof tn.toStringTag&&Object.defineProperty(WritableStreamDefaultWriter.prototype,tn.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});const An={};class WritableStreamDefaultController{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!st(this))throw pt("abortReason");return this._abortReason}get signal(){if(!st(this))throw pt("signal");if(void 0===this._abortController)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(Wt){if(!st(this))throw pt("error");"writable"===this._controlledWritableStream._state&&ht(this,Wt)}[on](Wt){const Pt=this._abortAlgorithm(Wt);return ut(this),Pt}[cn](){ce(this)}}function st(Wt){return!!r(Wt)&&(!!Object.prototype.hasOwnProperty.call(Wt,"_controlledWritableStream")&&Wt instanceof WritableStreamDefaultController)}function ut(Wt){Wt._writeAlgorithm=void 0,Wt._closeAlgorithm=void 0,Wt._abortAlgorithm=void 0,Wt._strategySizeAlgorithm=void 0}function ct(Wt){return Wt._strategyHWM-Wt._queueTotalSize}function dt(Wt){const Pt=Wt._controlledWritableStream;if(!Wt._started)return;if(void 0!==Pt._inFlightWriteRequest)return;if("erroring"===Pt._state)return void tt(Pt);if(0===Wt._queue.length)return;const en=Wt._queue.peek().value;en===An?function(Wt){const Pt=Wt._controlledWritableStream;(function(Wt){Wt._inFlightCloseRequest=Wt._closeRequest,Wt._closeRequest=void 0})(Pt),se(Wt);const en=Wt._closeAlgorithm();ut(Wt),b(en,(()=>(function(Wt){Wt._inFlightCloseRequest._resolve(void 0),Wt._inFlightCloseRequest=void 0,"erroring"===Wt._state&&(Wt._storedError=void 0,void 0!==Wt._pendingAbortRequest&&(Wt._pendingAbortRequest._resolve(),Wt._pendingAbortRequest=void 0)),Wt._state="closed";const Pt=Wt._writer;void 0!==Pt&&vt(Pt)}(Pt),null)),(Wt=>(function(Wt,Pt){Wt._inFlightCloseRequest._reject(Pt),Wt._inFlightCloseRequest=void 0,void 0!==Wt._pendingAbortRequest&&(Wt._pendingAbortRequest._reject(Pt),Wt._pendingAbortRequest=void 0),Ze(Wt,Pt)}(Pt,Wt),null)))}(Wt):function(Wt,Pt){const en=Wt._controlledWritableStream;!function(Wt){Wt._inFlightWriteRequest=Wt._writeRequests.shift()}(en);b(Wt._writeAlgorithm(Pt),(()=>{!function(Wt){Wt._inFlightWriteRequest._resolve(void 0),Wt._inFlightWriteRequest=void 0}(en);const Pt=en._state;if(se(Wt),!rt(en)&&"writable"===Pt){const Pt=bt(Wt);nt(en,Pt)}return dt(Wt),null}),(Pt=>("writable"===en._state&&ut(Wt),function(Wt,Pt){Wt._inFlightWriteRequest._reject(Pt),Wt._inFlightWriteRequest=void 0,Ze(Wt,Pt)}(en,Pt),null)))}(Wt,en)}function ft(Wt,Pt){"writable"===Wt._controlledWritableStream._state&&ht(Wt,Pt)}function bt(Wt){return ct(Wt)<=0}function ht(Wt,Pt){const en=Wt._controlledWritableStream;ut(Wt),et(en,Pt)}function _t(Wt){return new TypeError(`WritableStream.prototype.${Wt} can only be used on a WritableStream`)}function pt(Wt){return new TypeError(`WritableStreamDefaultController.prototype.${Wt} can only be used on a WritableStreamDefaultController`)}function mt(Wt){return new TypeError(`WritableStreamDefaultWriter.prototype.${Wt} can only be used on a WritableStreamDefaultWriter`)}function yt(Wt){return new TypeError("Cannot "+Wt+" a stream using a released writer")}function gt(Wt){Wt._closedPromise=u(((Pt,en)=>{Wt._closedPromise_resolve=Pt,Wt._closedPromise_reject=en,Wt._closedPromiseState="pending"}))}function wt(Wt,Pt){gt(Wt),St(Wt,Pt)}function St(Wt,Pt){void 0!==Wt._closedPromise_reject&&(m(Wt._closedPromise),Wt._closedPromise_reject(Pt),Wt._closedPromise_resolve=void 0,Wt._closedPromise_reject=void 0,Wt._closedPromiseState="rejected")}function vt(Wt){void 0!==Wt._closedPromise_resolve&&(Wt._closedPromise_resolve(void 0),Wt._closedPromise_resolve=void 0,Wt._closedPromise_reject=void 0,Wt._closedPromiseState="resolved")}function Rt(Wt){Wt._readyPromise=u(((Pt,en)=>{Wt._readyPromise_resolve=Pt,Wt._readyPromise_reject=en})),Wt._readyPromiseState="pending"}function Tt(Wt,Pt){Rt(Wt),Ct(Wt,Pt)}function qt(Wt){Rt(Wt),Et(Wt)}function Ct(Wt,Pt){void 0!==Wt._readyPromise_reject&&(m(Wt._readyPromise),Wt._readyPromise_reject(Pt),Wt._readyPromise_resolve=void 0,Wt._readyPromise_reject=void 0,Wt._readyPromiseState="rejected")}function Et(Wt){void 0!==Wt._readyPromise_resolve&&(Wt._readyPromise_resolve(void 0),Wt._readyPromise_resolve=void 0,Wt._readyPromise_reject=void 0,Wt._readyPromiseState="fulfilled")}Object.defineProperties(WritableStreamDefaultController.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),"symbol"==typeof tn.toStringTag&&Object.defineProperty(WritableStreamDefaultController.prototype,tn.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});const Wn="undefined"!=typeof DOMException?DOMException:void 0;const Nn=function(Wt){if("function"!=typeof Wt&&"object"!=typeof Wt)return!1;try{return new Wt,!0}catch(Wt){return!1}}(Wn)?Wn:function(){const e=function(Wt,Pt){this.message=Wt||"",this.name=Pt||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return e.prototype=Object.create(Error.prototype),Object.defineProperty(e.prototype,"constructor",{value:e,writable:!0,configurable:!0}),e}();function kt(Wt,Pt,en,tn,nn,an){const rn=Wt.getReader(),In=Pt.getWriter();Vt(Wt)&&(Wt._disturbed=!0);let sn,on,cn,dn=!1,un=!1,pn="readable",mn="writable",bn=!1,Gn=!1;const hn=u((Wt=>{cn=Wt}));let Zn=Promise.resolve(void 0);return u(((An,Wn)=>{let gn;function O(){if(dn)return;const Wt=u(((Wt,Pt)=>{!function r(en){en?Wt():f(function(){if(dn)return c(!0);return f(In.ready,(()=>f(rn.read(),(Wt=>!!Wt.done||(Zn=In.write(Wt.value),m(Zn),!1)))))}(),r,Pt)}(!1)}));m(Wt)}function B(){return pn="closed",en?L():z((()=>(Ge(Pt)&&(bn=rt(Pt),mn=Pt._state),bn||"closed"===mn?c(void 0):"erroring"===mn||"errored"===mn?d(on):(bn=!0,In.close()))),!1,void 0),null}function A(Wt){return dn||(pn="errored",sn=Wt,tn?L(!0,Wt):z((()=>In.abort(Wt)),!0,Wt)),null}function j(Wt){return un||(mn="errored",on=Wt,nn?L(!0,Wt):z((()=>rn.cancel(Wt)),!0,Wt)),null}if(void 0!==an&&(gn=()=>{const Wt=void 0!==an.reason?an.reason:new Nn("Aborted","AbortError"),Pt=[];tn||Pt.push((()=>"writable"===mn?In.abort(Wt):c(void 0))),nn||Pt.push((()=>"readable"===pn?rn.cancel(Wt):c(void 0))),z((()=>Promise.all(Pt.map((Wt=>Wt())))),!0,Wt)},an.aborted?gn():an.addEventListener("abort",gn)),Vt(Wt)&&(pn=Wt._state,sn=Wt._storedError),Ge(Pt)&&(mn=Pt._state,on=Pt._storedError,bn=rt(Pt)),Vt(Wt)&&Ge(Pt)&&(Gn=!0,cn()),"errored"===pn)A(sn);else if("erroring"===mn||"errored"===mn)j(on);else if("closed"===pn)B();else if(bn||"closed"===mn){const Wt=new TypeError("the destination writable stream closed before all data could be piped to it");nn?L(!0,Wt):z((()=>rn.cancel(Wt)),!0,Wt)}function z(Wt,Pt,en){function o(){return"writable"!==mn||bn?n():h(function(){let Wt;return c(function t(){if(Wt!==Zn)return Wt=Zn,p(Zn,t,t)}())}(),n),null}function n(){return Wt?b(Wt(),(()=>F(Pt,en)),(Wt=>F(!0,Wt))):F(Pt,en),null}dn||(dn=!0,Gn?o():h(hn,o))}function L(Wt,Pt){z(void 0,Wt,Pt)}function F(Wt,Pt){return un=!0,In.releaseLock(),rn.releaseLock(),void 0!==an&&an.removeEventListener("abort",gn),Wt?Wn(Pt):An(void 0),null}dn||(b(rn.closed,B,A),b(In.closed,(function(){return un||(mn="closed"),null}),j)),Gn?O():y((()=>{Gn=!0,cn(),O()}))}))}function Ot(Wt,Pt){return function(Wt){try{return Wt.getReader({mode:"byob"}).releaseLock(),!0}catch(Wt){return!1}}(Wt)?function(Wt){let Pt,en,tn,nn,an,rn=Wt.getReader(),In=!1,sn=!1,on=!1,cn=!1,dn=!1,un=!1;const pn=u((Wt=>{an=Wt}));function y(Wt){_(Wt.closed,(Pt=>(Wt!==rn||(tn.error(Pt),nn.error(Pt),dn&&un||an(void 0)),null)))}function g(){In&&(rn.releaseLock(),rn=Wt.getReader(),y(rn),In=!1),b(rn.read(),(Wt=>{var Pt,en;if(on=!1,cn=!1,Wt.done)return dn||tn.close(),un||nn.close(),null===(Pt=tn.byobRequest)||void 0===Pt||Pt.respond(0),null===(en=nn.byobRequest)||void 0===en||en.respond(0),dn&&un||an(void 0),null;const In=Wt.value,pn=In;let mn=In;if(!dn&&!un)try{mn=le(In)}catch(Wt){return tn.error(Wt),nn.error(Wt),an(rn.cancel(Wt)),null}return dn||tn.enqueue(pn),un||nn.enqueue(mn),sn=!1,on?S():cn&&v(),null}),(()=>(sn=!1,null)))}function w(Pt,en){In||(rn.releaseLock(),rn=Wt.getReader({mode:"byob"}),y(rn),In=!0);const pn=en?nn:tn,mn=en?tn:nn;b(rn.read(Pt),(Wt=>{var Pt;on=!1,cn=!1;const tn=en?un:dn,nn=en?dn:un;if(Wt.done){tn||pn.close(),nn||mn.close();const en=Wt.value;return void 0!==en&&(tn||pn.byobRequest.respondWithNewView(en),nn||null===(Pt=mn.byobRequest)||void 0===Pt||Pt.respond(0)),tn&&nn||an(void 0),null}const In=Wt.value;if(nn)tn||pn.byobRequest.respondWithNewView(In);else{let Pt;try{Pt=le(In)}catch(Wt){return pn.error(Wt),mn.error(Wt),an(rn.cancel(Wt)),null}tn||pn.byobRequest.respondWithNewView(In),mn.enqueue(Pt)}return sn=!1,on?S():cn&&v(),null}),(()=>(sn=!1,null)))}function S(){if(sn)return on=!0,c(void 0);sn=!0;const Wt=tn.byobRequest;return null===Wt?g():w(Wt.view,!1),c(void 0)}function v(){if(sn)return cn=!0,c(void 0);sn=!0;const Wt=nn.byobRequest;return null===Wt?g():w(Wt.view,!0),c(void 0)}function R(Wt){if(dn=!0,Pt=Wt,un){const Wt=[Pt,en],tn=rn.cancel(Wt);an(tn)}return pn}function T(Wt){if(un=!0,en=Wt,dn){const Wt=[Pt,en],tn=rn.cancel(Wt);an(tn)}return pn}const mn=new ReadableStream({type:"bytes",start(Wt){tn=Wt},pull:S,cancel:R}),bn=new ReadableStream({type:"bytes",start(Wt){nn=Wt},pull:v,cancel:T});return y(rn),[mn,bn]}(Wt):function(Wt,Pt){const en=Wt.getReader();let tn,nn,an,rn,In,sn=!1,on=!1,cn=!1,dn=!1;const un=u((Wt=>{In=Wt}));function m(){return sn?(on=!0,c(void 0)):(sn=!0,b(en.read(),(Wt=>{if(on=!1,Wt.done)return cn||an.close(),dn||rn.close(),cn&&dn||In(void 0),null;const Pt=Wt.value,en=Pt,tn=Pt;return cn||an.enqueue(en),dn||rn.enqueue(tn),sn=!1,on&&m(),null}),(()=>(sn=!1,null))),c(void 0))}function y(Wt){if(cn=!0,tn=Wt,dn){const Wt=[tn,nn],Pt=en.cancel(Wt);In(Pt)}return un}function g(Wt){if(dn=!0,nn=Wt,cn){const Wt=[tn,nn],Pt=en.cancel(Wt);In(Pt)}return un}const pn=new ReadableStream({start(Wt){an=Wt},pull:m,cancel:y}),mn=new ReadableStream({start(Wt){rn=Wt},pull:m,cancel:g});return _(en.closed,(Wt=>(an.error(Wt),rn.error(Wt),cn&&dn||In(void 0),null))),[pn,mn]}(Wt)}class ReadableStreamDefaultController{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!Bt(this))throw Dt("desiredSize");return Lt(this)}close(){if(!Bt(this))throw Dt("close");if(!Ft(this))throw new TypeError("The stream is not in a state that permits close");!function(Wt){if(!Ft(Wt))return;const Pt=Wt._controlledReadableStream;Wt._closeRequested=!0,0===Wt._queue.length&&(jt(Wt),Xt(Pt))}(this)}enqueue(Wt){if(!Bt(this))throw Dt("enqueue");if(!Ft(this))throw new TypeError("The stream is not in a state that permits enqueue");return function(Wt,Pt){if(!Ft(Wt))return;const en=Wt._controlledReadableStream;if(Ut(en)&&X(en)>0)G(en,Pt,!1);else{let en;try{en=Wt._strategySizeAlgorithm(Pt)}catch(Pt){throw zt(Wt,Pt),Pt}try{ue(Wt,Pt,en)}catch(Pt){throw zt(Wt,Pt),Pt}}At(Wt)}(this,Wt)}error(Wt){if(!Bt(this))throw Dt("error");zt(this,Wt)}[dn](Wt){ce(this);const Pt=this._cancelAlgorithm(Wt);return jt(this),Pt}[un](Wt){const Pt=this._controlledReadableStream;if(this._queue.length>0){const en=se(this);this._closeRequested&&0===this._queue.length?(jt(this),Xt(Pt)):At(this),Wt._chunkSteps(en)}else U(Pt,Wt),At(this)}[pn](){}}function Bt(Wt){return!!r(Wt)&&(!!Object.prototype.hasOwnProperty.call(Wt,"_controlledReadableStream")&&Wt instanceof ReadableStreamDefaultController)}function At(Wt){const Pt=function(Wt){const Pt=Wt._controlledReadableStream;if(!Ft(Wt))return!1;if(!Wt._started)return!1;if(Ut(Pt)&&X(Pt)>0)return!0;if(Lt(Wt)>0)return!0;return!1}(Wt);if(!Pt)return;if(Wt._pulling)return void(Wt._pullAgain=!0);Wt._pulling=!0;b(Wt._pullAlgorithm(),(()=>(Wt._pulling=!1,Wt._pullAgain&&(Wt._pullAgain=!1,At(Wt)),null)),(Pt=>(zt(Wt,Pt),null)))}function jt(Wt){Wt._pullAlgorithm=void 0,Wt._cancelAlgorithm=void 0,Wt._strategySizeAlgorithm=void 0}function zt(Wt,Pt){const en=Wt._controlledReadableStream;"readable"===en._state&&(ce(Wt),jt(Wt),Jt(en,Pt))}function Lt(Wt){const Pt=Wt._controlledReadableStream._state;return"errored"===Pt?null:"closed"===Pt?0:Wt._strategyHWM-Wt._queueTotalSize}function Ft(Wt){return!Wt._closeRequested&&"readable"===Wt._controlledReadableStream._state}function It(Wt,Pt,en,tn){const nn=Object.create(ReadableStreamDefaultController.prototype);let an,rn,In;an=void 0!==Pt.start?()=>Pt.start(nn):()=>{},rn=void 0!==Pt.pull?()=>Pt.pull(nn):()=>c(void 0),In=void 0!==Pt.cancel?Wt=>Pt.cancel(Wt):()=>c(void 0),function(Wt,Pt,en,tn,nn,an,rn){Pt._controlledReadableStream=Wt,Pt._queue=void 0,Pt._queueTotalSize=void 0,ce(Pt),Pt._started=!1,Pt._closeRequested=!1,Pt._pullAgain=!1,Pt._pulling=!1,Pt._strategySizeAlgorithm=rn,Pt._strategyHWM=an,Pt._pullAlgorithm=tn,Pt._cancelAlgorithm=nn,Wt._readableStreamController=Pt,b(c(en()),(()=>(Pt._started=!0,At(Pt),null)),(Wt=>(zt(Pt,Wt),null)))}(Wt,nn,an,rn,In,en,tn)}function Dt(Wt){return new TypeError(`ReadableStreamDefaultController.prototype.${Wt} can only be used on a ReadableStreamDefaultController`)}function $t(Wt,Pt,en){return I(Wt,en),en=>w(Wt,Pt,[en])}function Mt(Wt,Pt,en){return I(Wt,en),en=>w(Wt,Pt,[en])}function Yt(Wt,Pt,en){return I(Wt,en),en=>g(Wt,Pt,[en])}function Qt(Wt,Pt){if("bytes"!==(Wt=`${Wt}`))throw new TypeError(`${Pt} '${Wt}' is not a valid enumeration value for ReadableStreamType`);return Wt}function Nt(Wt,Pt){if("byob"!==(Wt=`${Wt}`))throw new TypeError(`${Pt} '${Wt}' is not a valid enumeration value for ReadableStreamReaderMode`);return Wt}function Ht(Wt,Pt){F(Wt,Pt);const en=null==Wt?void 0:Wt.preventAbort,tn=null==Wt?void 0:Wt.preventCancel,nn=null==Wt?void 0:Wt.preventClose,an=null==Wt?void 0:Wt.signal;return void 0!==an&&function(Wt,Pt){if(!function(Wt){if("object"!=typeof Wt||null===Wt)return!1;try{return"boolean"==typeof Wt.aborted}catch(Wt){return!1}}(Wt))throw new TypeError(`${Pt} is not an AbortSignal.`)}(an,`${Pt} has member 'signal' that`),{preventAbort:Boolean(en),preventCancel:Boolean(tn),preventClose:Boolean(nn),signal:an}}function xt(Wt,Pt){F(Wt,Pt);const en=null==Wt?void 0:Wt.readable;M(en,"readable","ReadableWritablePair"),function(Wt,Pt){if(!H(Wt))throw new TypeError(`${Pt} is not a ReadableStream.`)}(en,`${Pt} has member 'readable' that`);const tn=null==Wt?void 0:Wt.writable;return M(tn,"writable","ReadableWritablePair"),function(Wt,Pt){if(!x(Wt))throw new TypeError(`${Pt} is not a WritableStream.`)}(tn,`${Pt} has member 'writable' that`),{readable:en,writable:tn}}Object.defineProperties(ReadableStreamDefaultController.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),n(ReadableStreamDefaultController.prototype.close,"close"),n(ReadableStreamDefaultController.prototype.enqueue,"enqueue"),n(ReadableStreamDefaultController.prototype.error,"error"),"symbol"==typeof tn.toStringTag&&Object.defineProperty(ReadableStreamDefaultController.prototype,tn.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});class ReadableStream{constructor(Wt={},Pt={}){void 0===Wt?Wt=null:D(Wt,"First parameter");const en=Ye(Pt,"Second parameter"),tn=function(Wt,Pt){F(Wt,Pt);const en=Wt,tn=null==en?void 0:en.autoAllocateChunkSize,nn=null==en?void 0:en.cancel,an=null==en?void 0:en.pull,rn=null==en?void 0:en.start,In=null==en?void 0:en.type;return{autoAllocateChunkSize:void 0===tn?void 0:N(tn,`${Pt} has member 'autoAllocateChunkSize' that`),cancel:void 0===nn?void 0:$t(nn,en,`${Pt} has member 'cancel' that`),pull:void 0===an?void 0:Mt(an,en,`${Pt} has member 'pull' that`),start:void 0===rn?void 0:Yt(rn,en,`${Pt} has member 'start' that`),type:void 0===In?void 0:Qt(In,`${Pt} has member 'type' that`)}}(Wt,"First parameter");var nn;if((nn=this)._state="readable",nn._reader=void 0,nn._storedError=void 0,nn._disturbed=!1,"bytes"===tn.type){if(void 0!==en.size)throw new RangeError("The strategy for a byte stream cannot have a size function");Oe(this,tn,$e(en,0))}else{const Wt=Me(en);It(this,tn,$e(en,1),Wt)}}get locked(){if(!Vt(this))throw Kt("locked");return Ut(this)}cancel(Wt){return Vt(this)?Ut(this)?d(new TypeError("Cannot cancel a stream that already has a reader")):Gt(this,Wt):d(Kt("cancel"))}getReader(Wt){if(!Vt(this))throw Kt("getReader");return void 0===function(Wt,Pt){F(Wt,Pt);const en=null==Wt?void 0:Wt.mode;return{mode:void 0===en?void 0:Nt(en,`${Pt} has member 'mode' that`)}}(Wt,"First parameter").mode?new ReadableStreamDefaultReader(this):function(Wt){return new ReadableStreamBYOBReader(Wt)}(this)}pipeThrough(Wt,Pt={}){if(!H(this))throw Kt("pipeThrough");$(Wt,1,"pipeThrough");const en=xt(Wt,"First parameter"),tn=Ht(Pt,"Second parameter");if(this.locked)throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(en.writable.locked)throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");return m(kt(this,en.writable,tn.preventClose,tn.preventAbort,tn.preventCancel,tn.signal)),en.readable}pipeTo(Wt,Pt={}){if(!H(this))return d(Kt("pipeTo"));if(void 0===Wt)return d("Parameter 1 is required in 'pipeTo'.");if(!x(Wt))return d(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let en;try{en=Ht(Pt,"Second parameter")}catch(Wt){return d(Wt)}return this.locked?d(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):Wt.locked?d(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):kt(this,Wt,en.preventClose,en.preventAbort,en.preventCancel,en.signal)}tee(){if(!H(this))throw Kt("tee");if(this.locked)throw new TypeError("Cannot tee a stream that already has a reader");return Ot(this)}values(Wt){if(!H(this))throw Kt("values");return function(Wt,Pt){const en=Wt.getReader(),tn=new te(en,Pt),nn=Object.create(Gn);return nn._asyncIteratorImpl=tn,nn}(this,function(Wt,Pt){F(Wt,Pt);const en=null==Wt?void 0:Wt.preventCancel;return{preventCancel:Boolean(en)}}(Wt,"First parameter").preventCancel)}}function Vt(Wt){return!!r(Wt)&&(!!Object.prototype.hasOwnProperty.call(Wt,"_readableStreamController")&&Wt instanceof ReadableStream)}function Ut(Wt){return void 0!==Wt._reader}function Gt(Wt,Pt){if(Wt._disturbed=!0,"closed"===Wt._state)return c(void 0);if("errored"===Wt._state)return d(Wt._storedError);Xt(Wt);const en=Wt._reader;if(void 0!==en&&Fe(en)){const Wt=en._readIntoRequests;en._readIntoRequests=new S,Wt.forEach((Wt=>{Wt._closeSteps(void 0)}))}return p(Wt._readableStreamController[dn](Pt),t)}function Xt(Wt){Wt._state="closed";const Pt=Wt._reader;if(void 0!==Pt&&(j(Pt),K(Pt))){const Wt=Pt._readRequests;Pt._readRequests=new S,Wt.forEach((Wt=>{Wt._closeSteps()}))}}function Jt(Wt,Pt){Wt._state="errored",Wt._storedError=Pt;const en=Wt._reader;void 0!==en&&(A(en,Pt),K(en)?Z(en,Pt):Ie(en,Pt))}function Kt(Wt){return new TypeError(`ReadableStream.prototype.${Wt} can only be used on a ReadableStream`)}function Zt(Wt,Pt){F(Wt,Pt);const en=null==Wt?void 0:Wt.highWaterMark;return M(en,"highWaterMark","QueuingStrategyInit"),{highWaterMark:Y(en)}}Object.defineProperties(ReadableStream.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),n(ReadableStream.prototype.cancel,"cancel"),n(ReadableStream.prototype.getReader,"getReader"),n(ReadableStream.prototype.pipeThrough,"pipeThrough"),n(ReadableStream.prototype.pipeTo,"pipeTo"),n(ReadableStream.prototype.tee,"tee"),n(ReadableStream.prototype.values,"values"),"symbol"==typeof tn.toStringTag&&Object.defineProperty(ReadableStream.prototype,tn.toStringTag,{value:"ReadableStream",configurable:!0}),"symbol"==typeof tn.asyncIterator&&Object.defineProperty(ReadableStream.prototype,tn.asyncIterator,{value:ReadableStream.prototype.values,writable:!0,configurable:!0});const er=Wt=>Wt.byteLength;n(er,"size");class ByteLengthQueuingStrategy{constructor(Wt){$(Wt,1,"ByteLengthQueuingStrategy"),Wt=Zt(Wt,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=Wt.highWaterMark}get highWaterMark(){if(!rr(this))throw tr("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!rr(this))throw tr("size");return er}}function tr(Wt){return new TypeError(`ByteLengthQueuingStrategy.prototype.${Wt} can only be used on a ByteLengthQueuingStrategy`)}function rr(Wt){return!!r(Wt)&&(!!Object.prototype.hasOwnProperty.call(Wt,"_byteLengthQueuingStrategyHighWaterMark")&&Wt instanceof ByteLengthQueuingStrategy)}Object.defineProperties(ByteLengthQueuingStrategy.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),"symbol"==typeof tn.toStringTag&&Object.defineProperty(ByteLengthQueuingStrategy.prototype,tn.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});const or=()=>1;n(or,"size");class CountQueuingStrategy{constructor(Wt){$(Wt,1,"CountQueuingStrategy"),Wt=Zt(Wt,"First parameter"),this._countQueuingStrategyHighWaterMark=Wt.highWaterMark}get highWaterMark(){if(!ar(this))throw nr("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!ar(this))throw nr("size");return or}}function nr(Wt){return new TypeError(`CountQueuingStrategy.prototype.${Wt} can only be used on a CountQueuingStrategy`)}function ar(Wt){return!!r(Wt)&&(!!Object.prototype.hasOwnProperty.call(Wt,"_countQueuingStrategyHighWaterMark")&&Wt instanceof CountQueuingStrategy)}function ir(Wt,Pt,en){return I(Wt,en),en=>w(Wt,Pt,[en])}function lr(Wt,Pt,en){return I(Wt,en),en=>g(Wt,Pt,[en])}function sr(Wt,Pt,en){return I(Wt,en),(en,tn)=>w(Wt,Pt,[en,tn])}Object.defineProperties(CountQueuingStrategy.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),"symbol"==typeof tn.toStringTag&&Object.defineProperty(CountQueuingStrategy.prototype,tn.toStringTag,{value:"CountQueuingStrategy",configurable:!0});class TransformStream{constructor(Wt={},Pt={},en={}){void 0===Wt&&(Wt=null);const tn=Ye(Pt,"Second parameter"),nn=Ye(en,"Third parameter"),an=function(Wt,Pt){F(Wt,Pt);const en=null==Wt?void 0:Wt.flush,tn=null==Wt?void 0:Wt.readableType,nn=null==Wt?void 0:Wt.start,an=null==Wt?void 0:Wt.transform,rn=null==Wt?void 0:Wt.writableType;return{flush:void 0===en?void 0:ir(en,Wt,`${Pt} has member 'flush' that`),readableType:tn,start:void 0===nn?void 0:lr(nn,Wt,`${Pt} has member 'start' that`),transform:void 0===an?void 0:sr(an,Wt,`${Pt} has member 'transform' that`),writableType:rn}}(Wt,"First parameter");if(void 0!==an.readableType)throw new RangeError("Invalid readableType specified");if(void 0!==an.writableType)throw new RangeError("Invalid writableType specified");const rn=$e(nn,0),In=Me(nn),sn=$e(tn,1),on=Me(tn);let cn;!function(Wt,Pt,en,tn,nn,an){function i(){return Pt}function l(Pt){return function(Wt,Pt){const en=Wt._transformStreamController;if(Wt._backpressure){return p(Wt._backpressureChangePromise,(()=>{if("erroring"===(Ge(Wt._writable)?Wt._writable._state:Wt._writableState))throw Ge(Wt._writable)?Wt._writable._storedError:Wt._writableStoredError;return pr(en,Pt)}))}return pr(en,Pt)}(Wt,Pt)}function s(Pt){return function(Wt,Pt){return cr(Wt,Pt),c(void 0)}(Wt,Pt)}function u(){return function(Wt){const Pt=Wt._transformStreamController,en=Pt._flushAlgorithm();return hr(Pt),p(en,(()=>{if("errored"===Wt._readableState)throw Wt._readableStoredError;gr(Wt)&&wr(Wt)}),(Pt=>{throw cr(Wt,Pt),Wt._readableStoredError}))}(Wt)}function d(){return function(Wt){return fr(Wt,!1),Wt._backpressureChangePromise}(Wt)}function f(Pt){return dr(Wt,Pt),c(void 0)}Wt._writableState="writable",Wt._writableStoredError=void 0,Wt._writableHasInFlightOperation=!1,Wt._writableStarted=!1,Wt._writable=function(Wt,Pt,en,tn,nn,an,rn){return new WritableStream({start(en){Wt._writableController=en;try{const Pt=en.signal;void 0!==Pt&&Pt.addEventListener("abort",(()=>{"writable"===Wt._writableState&&(Wt._writableState="erroring",Pt.reason&&(Wt._writableStoredError=Pt.reason))}))}catch(Wt){}return p(Pt(),(()=>(Wt._writableStarted=!0,Cr(Wt),null)),(Pt=>{throw Wt._writableStarted=!0,Rr(Wt,Pt),Pt}))},write:Pt=>(function(Wt){Wt._writableHasInFlightOperation=!0}(Wt),p(en(Pt),(()=>(function(Wt){Wt._writableHasInFlightOperation=!1}(Wt),Cr(Wt),null)),(Pt=>{throw function(Wt,Pt){Wt._writableHasInFlightOperation=!1,Rr(Wt,Pt)}(Wt,Pt),Pt}))),close:()=>(function(Wt){Wt._writableHasInFlightOperation=!0}(Wt),p(tn(),(()=>(function(Wt){Wt._writableHasInFlightOperation=!1;"erroring"===Wt._writableState&&(Wt._writableStoredError=void 0);Wt._writableState="closed"}(Wt),null)),(Pt=>{throw function(Wt,Pt){Wt._writableHasInFlightOperation=!1,Wt._writableState,Rr(Wt,Pt)}(Wt,Pt),Pt}))),abort:Pt=>(Wt._writableState="errored",Wt._writableStoredError=Pt,nn(Pt))},{highWaterMark:an,size:rn})}(Wt,i,l,u,s,en,tn),Wt._readableState="readable",Wt._readableStoredError=void 0,Wt._readableCloseRequested=!1,Wt._readablePulling=!1,Wt._readable=function(Wt,Pt,en,tn,nn,an){return new ReadableStream({start:en=>(Wt._readableController=en,Pt().catch((Pt=>{Sr(Wt,Pt)}))),pull:()=>(Wt._readablePulling=!0,en().catch((Pt=>{Sr(Wt,Pt)}))),cancel:Pt=>(Wt._readableState="closed",tn(Pt))},{highWaterMark:nn,size:an})}(Wt,i,d,f,nn,an),Wt._backpressure=void 0,Wt._backpressureChangePromise=void 0,Wt._backpressureChangePromise_resolve=void 0,fr(Wt,!0),Wt._transformStreamController=void 0}(this,u((Wt=>{cn=Wt})),sn,on,rn,In),function(Wt,Pt){const en=Object.create(TransformStreamDefaultController.prototype);let tn,nn;tn=void 0!==Pt.transform?Wt=>Pt.transform(Wt,en):Wt=>{try{return _r(en,Wt),c(void 0)}catch(Wt){return d(Wt)}};nn=void 0!==Pt.flush?()=>Pt.flush(en):()=>c(void 0);!function(Wt,Pt,en,tn){Pt._controlledTransformStream=Wt,Wt._transformStreamController=Pt,Pt._transformAlgorithm=en,Pt._flushAlgorithm=tn}(Wt,en,tn,nn)}(this,an),void 0!==an.start?cn(an.start(this._transformStreamController)):cn(void 0)}get readable(){if(!ur(this))throw yr("readable");return this._readable}get writable(){if(!ur(this))throw yr("writable");return this._writable}}function ur(Wt){return!!r(Wt)&&(!!Object.prototype.hasOwnProperty.call(Wt,"_transformStreamController")&&Wt instanceof TransformStream)}function cr(Wt,Pt){Sr(Wt,Pt),dr(Wt,Pt)}function dr(Wt,Pt){hr(Wt._transformStreamController),function(Wt,Pt){Wt._writableController.error(Pt);"writable"===Wt._writableState&&Tr(Wt,Pt)}(Wt,Pt),Wt._backpressure&&fr(Wt,!1)}function fr(Wt,Pt){void 0!==Wt._backpressureChangePromise&&Wt._backpressureChangePromise_resolve(),Wt._backpressureChangePromise=u((Pt=>{Wt._backpressureChangePromise_resolve=Pt})),Wt._backpressure=Pt}Object.defineProperties(TransformStream.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),"symbol"==typeof tn.toStringTag&&Object.defineProperty(TransformStream.prototype,tn.toStringTag,{value:"TransformStream",configurable:!0});class TransformStreamDefaultController{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!br(this))throw mr("desiredSize");return vr(this._controlledTransformStream)}enqueue(Wt){if(!br(this))throw mr("enqueue");_r(this,Wt)}error(Wt){if(!br(this))throw mr("error");var Pt;Pt=Wt,cr(this._controlledTransformStream,Pt)}terminate(){if(!br(this))throw mr("terminate");!function(Wt){const Pt=Wt._controlledTransformStream;gr(Pt)&&wr(Pt);const en=new TypeError("TransformStream terminated");dr(Pt,en)}(this)}}function br(Wt){return!!r(Wt)&&(!!Object.prototype.hasOwnProperty.call(Wt,"_controlledTransformStream")&&Wt instanceof TransformStreamDefaultController)}function hr(Wt){Wt._transformAlgorithm=void 0,Wt._flushAlgorithm=void 0}function _r(Wt,Pt){const en=Wt._controlledTransformStream;if(!gr(en))throw new TypeError("Readable side is not in a state that permits enqueue");try{!function(Wt,Pt){Wt._readablePulling=!1;try{Wt._readableController.enqueue(Pt)}catch(Pt){throw Sr(Wt,Pt),Pt}}(en,Pt)}catch(Wt){throw dr(en,Wt),en._readableStoredError}const tn=function(Wt){return!function(Wt){if(!gr(Wt))return!1;if(Wt._readablePulling)return!0;if(vr(Wt)>0)return!0;return!1}(Wt)}(en);tn!==en._backpressure&&fr(en,!0)}function pr(Wt,Pt){return p(Wt._transformAlgorithm(Pt),void 0,(Pt=>{throw cr(Wt._controlledTransformStream,Pt),Pt}))}function mr(Wt){return new TypeError(`TransformStreamDefaultController.prototype.${Wt} can only be used on a TransformStreamDefaultController`)}function yr(Wt){return new TypeError(`TransformStream.prototype.${Wt} can only be used on a TransformStream`)}function gr(Wt){return!Wt._readableCloseRequested&&"readable"===Wt._readableState}function wr(Wt){Wt._readableState="closed",Wt._readableCloseRequested=!0,Wt._readableController.close()}function Sr(Wt,Pt){"readable"===Wt._readableState&&(Wt._readableState="errored",Wt._readableStoredError=Pt),Wt._readableController.error(Pt)}function vr(Wt){return Wt._readableController.desiredSize}function Rr(Wt,Pt){"writable"!==Wt._writableState?qr(Wt):Tr(Wt,Pt)}function Tr(Wt,Pt){Wt._writableState="erroring",Wt._writableStoredError=Pt,!function(Wt){return Wt._writableHasInFlightOperation}(Wt)&&Wt._writableStarted&&qr(Wt)}function qr(Wt){Wt._writableState="errored"}function Cr(Wt){"erroring"===Wt._writableState&&qr(Wt)}Object.defineProperties(TransformStreamDefaultController.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),n(TransformStreamDefaultController.prototype.enqueue,"enqueue"),n(TransformStreamDefaultController.prototype.error,"error"),n(TransformStreamDefaultController.prototype.terminate,"terminate"),"symbol"==typeof tn.toStringTag&&Object.defineProperty(TransformStreamDefaultController.prototype,tn.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});var gn=en(5122); +/*! Based on fetch-blob. MIT License. Jimmy Wärting & David Frank */ +const yn=65536;async function*clonePart(Wt){const Pt=Wt.byteOffset+Wt.byteLength;let en=Wt.byteOffset;while(en!==Pt){const tn=Math.min(Pt-en,yn);const nn=Wt.buffer.slice(en,en+tn);en+=nn.byteLength;yield new Uint8Array(nn)}}async function*consumeNodeBlob(Wt){let Pt=0;while(Pt!==Wt.size){const en=Wt.slice(Pt,Math.min(Wt.size,Pt+yn));const tn=await en.arrayBuffer();Pt+=tn.byteLength;yield new Uint8Array(tn)}}async function*consumeBlobParts(Wt,Pt=false){for(const en of Wt){if(ArrayBuffer.isView(en)){if(Pt){yield*clonePart(en)}else{yield en}}else if((0,gn.T)(en.stream)){yield*en.stream()}else{yield*consumeNodeBlob(en)}}}function*sliceBlob(Wt,Pt,en=0,tn){tn!==null&&tn!==void 0?tn:tn=Pt;let nn=en<0?Math.max(Pt+en,0):Math.min(en,Pt);let an=tn<0?Math.max(Pt+tn,0):Math.min(tn,Pt);const rn=Math.max(an-nn,0);let In=0;for(const Pt of Wt){if(In>=rn){break}const Wt=ArrayBuffer.isView(Pt)?Pt.byteLength:Pt.size;if(nn&&Wt<=nn){nn-=Wt;an-=Wt}else{let en;if(ArrayBuffer.isView(Pt)){en=Pt.subarray(nn,Math.min(Wt,an));In+=en.byteLength}else{en=Pt.slice(nn,Math.min(Wt,an));In+=en.size}an-=Wt;nn=0;yield en}}} +/*! Based on fetch-blob. MIT License. Jimmy Wärting & David Frank */ +var vn=undefined&&undefined.__classPrivateFieldGet||function(Wt,Pt,en,tn){if(en==="a"&&!tn)throw new TypeError("Private accessor was defined without a getter");if(typeof Pt==="function"?Wt!==Pt||!tn:!Pt.has(Wt))throw new TypeError("Cannot read private member from an object whose class did not declare it");return en==="m"?tn:en==="a"?tn.call(Wt):tn?tn.value:Pt.get(Wt)};var Yn=undefined&&undefined.__classPrivateFieldSet||function(Wt,Pt,en,tn,nn){if(tn==="m")throw new TypeError("Private method is not writable");if(tn==="a"&&!nn)throw new TypeError("Private accessor was defined without a setter");if(typeof Pt==="function"?Wt!==Pt||!nn:!Pt.has(Wt))throw new TypeError("Cannot write private member to an object whose class did not declare it");return tn==="a"?nn.call(Wt,en):nn?nn.value=en:Pt.set(Wt,en),en};var En,Vn,Rn;class Blob{constructor(Wt=[],Pt={}){En.set(this,[]);Vn.set(this,"");Rn.set(this,0);Pt!==null&&Pt!==void 0?Pt:Pt={};if(typeof Wt!=="object"||Wt===null){throw new TypeError("Failed to construct 'Blob': "+"The provided value cannot be converted to a sequence.")}if(!(0,gn.T)(Wt[Symbol.iterator])){throw new TypeError("Failed to construct 'Blob': "+"The object must have a callable @@iterator property.")}if(typeof Pt!=="object"&&!(0,gn.T)(Pt)){throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.")}const en=new TextEncoder;for(const Pt of Wt){let Wt;if(ArrayBuffer.isView(Pt)){Wt=new Uint8Array(Pt.buffer.slice(Pt.byteOffset,Pt.byteOffset+Pt.byteLength))}else if(Pt instanceof ArrayBuffer){Wt=new Uint8Array(Pt.slice(0))}else if(Pt instanceof Blob){Wt=Pt}else{Wt=en.encode(String(Pt))}Yn(this,Rn,vn(this,Rn,"f")+(ArrayBuffer.isView(Wt)?Wt.byteLength:Wt.size),"f");vn(this,En,"f").push(Wt)}const tn=Pt.type===undefined?"":String(Pt.type);Yn(this,Vn,/^[\x20-\x7E]*$/.test(tn)?tn:"","f")}static[(En=new WeakMap,Vn=new WeakMap,Rn=new WeakMap,Symbol.hasInstance)](Wt){return Boolean(Wt&&typeof Wt==="object"&&(0,gn.T)(Wt.constructor)&&((0,gn.T)(Wt.stream)||(0,gn.T)(Wt.arrayBuffer))&&/^(Blob|File)$/.test(Wt[Symbol.toStringTag]))}get type(){return vn(this,Vn,"f")}get size(){return vn(this,Rn,"f")}slice(Wt,Pt,en){return new Blob(sliceBlob(vn(this,En,"f"),this.size,Wt,Pt),{type:en})}async text(){const Wt=new TextDecoder;let Pt="";for await(const en of consumeBlobParts(vn(this,En,"f"))){Pt+=Wt.decode(en,{stream:true})}Pt+=Wt.decode();return Pt}async arrayBuffer(){const Wt=new Uint8Array(this.size);let Pt=0;for await(const en of consumeBlobParts(vn(this,En,"f"))){Wt.set(en,Pt);Pt+=en.length}return Wt.buffer}stream(){const Wt=consumeBlobParts(vn(this,En,"f"),true);return new ReadableStream({async pull(Pt){const{value:en,done:tn}=await Wt.next();if(tn){return queueMicrotask((()=>Pt.close()))}Pt.enqueue(en)},async cancel(){await Wt.return()}})}get[Symbol.toStringTag](){return"Blob"}}Object.defineProperties(Blob.prototype,{type:{enumerable:true},size:{enumerable:true},slice:{enumerable:true},stream:{enumerable:true},text:{enumerable:true},arrayBuffer:{enumerable:true}})},2928:(Wt,Pt,en)=>{"use strict";en.d(Pt,{Z:()=>File});var tn=en(58289);var nn=undefined&&undefined.__classPrivateFieldSet||function(Wt,Pt,en,tn,nn){if(tn==="m")throw new TypeError("Private method is not writable");if(tn==="a"&&!nn)throw new TypeError("Private accessor was defined without a setter");if(typeof Pt==="function"?Wt!==Pt||!nn:!Pt.has(Wt))throw new TypeError("Cannot write private member to an object whose class did not declare it");return tn==="a"?nn.call(Wt,en):nn?nn.value=en:Pt.set(Wt,en),en};var an=undefined&&undefined.__classPrivateFieldGet||function(Wt,Pt,en,tn){if(en==="a"&&!tn)throw new TypeError("Private accessor was defined without a getter");if(typeof Pt==="function"?Wt!==Pt||!tn:!Pt.has(Wt))throw new TypeError("Cannot read private member from an object whose class did not declare it");return en==="m"?tn:en==="a"?tn.call(Wt):tn?tn.value:Pt.get(Wt)};var rn,In;class File extends tn.Y{constructor(Wt,Pt,en={}){super(Wt,en);rn.set(this,void 0);In.set(this,0);if(arguments.length<2){throw new TypeError("Failed to construct 'File': 2 arguments required, "+`but only ${arguments.length} present.`)}nn(this,rn,String(Pt),"f");const tn=en.lastModified===undefined?Date.now():Number(en.lastModified);if(!Number.isNaN(tn)){nn(this,In,tn,"f")}}static[(rn=new WeakMap,In=new WeakMap,Symbol.hasInstance)](Wt){return Wt instanceof tn.Y&&Wt[Symbol.toStringTag]==="File"&&typeof Wt.name==="string"}get name(){return an(this,rn,"f")}get lastModified(){return an(this,In,"f")}get webkitRelativePath(){return""}get[Symbol.toStringTag](){return"File"}}},80928:(Wt,Pt,en)=>{"use strict";en.d(Pt,{f:()=>isFile});var tn=en(2928);const isFile=Wt=>Wt instanceof tn.Z},5122:(Wt,Pt,en)=>{"use strict";en.d(Pt,{T:()=>isFunction});const isFunction=Wt=>typeof Wt==="function"},63370:Wt=>{"use strict";Wt.exports=JSON.parse('[[[0,44],"disallowed_STD3_valid"],[[45,46],"valid"],[[47,47],"disallowed_STD3_valid"],[[48,57],"valid"],[[58,64],"disallowed_STD3_valid"],[[65,65],"mapped",[97]],[[66,66],"mapped",[98]],[[67,67],"mapped",[99]],[[68,68],"mapped",[100]],[[69,69],"mapped",[101]],[[70,70],"mapped",[102]],[[71,71],"mapped",[103]],[[72,72],"mapped",[104]],[[73,73],"mapped",[105]],[[74,74],"mapped",[106]],[[75,75],"mapped",[107]],[[76,76],"mapped",[108]],[[77,77],"mapped",[109]],[[78,78],"mapped",[110]],[[79,79],"mapped",[111]],[[80,80],"mapped",[112]],[[81,81],"mapped",[113]],[[82,82],"mapped",[114]],[[83,83],"mapped",[115]],[[84,84],"mapped",[116]],[[85,85],"mapped",[117]],[[86,86],"mapped",[118]],[[87,87],"mapped",[119]],[[88,88],"mapped",[120]],[[89,89],"mapped",[121]],[[90,90],"mapped",[122]],[[91,96],"disallowed_STD3_valid"],[[97,122],"valid"],[[123,127],"disallowed_STD3_valid"],[[128,159],"disallowed"],[[160,160],"disallowed_STD3_mapped",[32]],[[161,167],"valid",[],"NV8"],[[168,168],"disallowed_STD3_mapped",[32,776]],[[169,169],"valid",[],"NV8"],[[170,170],"mapped",[97]],[[171,172],"valid",[],"NV8"],[[173,173],"ignored"],[[174,174],"valid",[],"NV8"],[[175,175],"disallowed_STD3_mapped",[32,772]],[[176,177],"valid",[],"NV8"],[[178,178],"mapped",[50]],[[179,179],"mapped",[51]],[[180,180],"disallowed_STD3_mapped",[32,769]],[[181,181],"mapped",[956]],[[182,182],"valid",[],"NV8"],[[183,183],"valid"],[[184,184],"disallowed_STD3_mapped",[32,807]],[[185,185],"mapped",[49]],[[186,186],"mapped",[111]],[[187,187],"valid",[],"NV8"],[[188,188],"mapped",[49,8260,52]],[[189,189],"mapped",[49,8260,50]],[[190,190],"mapped",[51,8260,52]],[[191,191],"valid",[],"NV8"],[[192,192],"mapped",[224]],[[193,193],"mapped",[225]],[[194,194],"mapped",[226]],[[195,195],"mapped",[227]],[[196,196],"mapped",[228]],[[197,197],"mapped",[229]],[[198,198],"mapped",[230]],[[199,199],"mapped",[231]],[[200,200],"mapped",[232]],[[201,201],"mapped",[233]],[[202,202],"mapped",[234]],[[203,203],"mapped",[235]],[[204,204],"mapped",[236]],[[205,205],"mapped",[237]],[[206,206],"mapped",[238]],[[207,207],"mapped",[239]],[[208,208],"mapped",[240]],[[209,209],"mapped",[241]],[[210,210],"mapped",[242]],[[211,211],"mapped",[243]],[[212,212],"mapped",[244]],[[213,213],"mapped",[245]],[[214,214],"mapped",[246]],[[215,215],"valid",[],"NV8"],[[216,216],"mapped",[248]],[[217,217],"mapped",[249]],[[218,218],"mapped",[250]],[[219,219],"mapped",[251]],[[220,220],"mapped",[252]],[[221,221],"mapped",[253]],[[222,222],"mapped",[254]],[[223,223],"deviation",[115,115]],[[224,246],"valid"],[[247,247],"valid",[],"NV8"],[[248,255],"valid"],[[256,256],"mapped",[257]],[[257,257],"valid"],[[258,258],"mapped",[259]],[[259,259],"valid"],[[260,260],"mapped",[261]],[[261,261],"valid"],[[262,262],"mapped",[263]],[[263,263],"valid"],[[264,264],"mapped",[265]],[[265,265],"valid"],[[266,266],"mapped",[267]],[[267,267],"valid"],[[268,268],"mapped",[269]],[[269,269],"valid"],[[270,270],"mapped",[271]],[[271,271],"valid"],[[272,272],"mapped",[273]],[[273,273],"valid"],[[274,274],"mapped",[275]],[[275,275],"valid"],[[276,276],"mapped",[277]],[[277,277],"valid"],[[278,278],"mapped",[279]],[[279,279],"valid"],[[280,280],"mapped",[281]],[[281,281],"valid"],[[282,282],"mapped",[283]],[[283,283],"valid"],[[284,284],"mapped",[285]],[[285,285],"valid"],[[286,286],"mapped",[287]],[[287,287],"valid"],[[288,288],"mapped",[289]],[[289,289],"valid"],[[290,290],"mapped",[291]],[[291,291],"valid"],[[292,292],"mapped",[293]],[[293,293],"valid"],[[294,294],"mapped",[295]],[[295,295],"valid"],[[296,296],"mapped",[297]],[[297,297],"valid"],[[298,298],"mapped",[299]],[[299,299],"valid"],[[300,300],"mapped",[301]],[[301,301],"valid"],[[302,302],"mapped",[303]],[[303,303],"valid"],[[304,304],"mapped",[105,775]],[[305,305],"valid"],[[306,307],"mapped",[105,106]],[[308,308],"mapped",[309]],[[309,309],"valid"],[[310,310],"mapped",[311]],[[311,312],"valid"],[[313,313],"mapped",[314]],[[314,314],"valid"],[[315,315],"mapped",[316]],[[316,316],"valid"],[[317,317],"mapped",[318]],[[318,318],"valid"],[[319,320],"mapped",[108,183]],[[321,321],"mapped",[322]],[[322,322],"valid"],[[323,323],"mapped",[324]],[[324,324],"valid"],[[325,325],"mapped",[326]],[[326,326],"valid"],[[327,327],"mapped",[328]],[[328,328],"valid"],[[329,329],"mapped",[700,110]],[[330,330],"mapped",[331]],[[331,331],"valid"],[[332,332],"mapped",[333]],[[333,333],"valid"],[[334,334],"mapped",[335]],[[335,335],"valid"],[[336,336],"mapped",[337]],[[337,337],"valid"],[[338,338],"mapped",[339]],[[339,339],"valid"],[[340,340],"mapped",[341]],[[341,341],"valid"],[[342,342],"mapped",[343]],[[343,343],"valid"],[[344,344],"mapped",[345]],[[345,345],"valid"],[[346,346],"mapped",[347]],[[347,347],"valid"],[[348,348],"mapped",[349]],[[349,349],"valid"],[[350,350],"mapped",[351]],[[351,351],"valid"],[[352,352],"mapped",[353]],[[353,353],"valid"],[[354,354],"mapped",[355]],[[355,355],"valid"],[[356,356],"mapped",[357]],[[357,357],"valid"],[[358,358],"mapped",[359]],[[359,359],"valid"],[[360,360],"mapped",[361]],[[361,361],"valid"],[[362,362],"mapped",[363]],[[363,363],"valid"],[[364,364],"mapped",[365]],[[365,365],"valid"],[[366,366],"mapped",[367]],[[367,367],"valid"],[[368,368],"mapped",[369]],[[369,369],"valid"],[[370,370],"mapped",[371]],[[371,371],"valid"],[[372,372],"mapped",[373]],[[373,373],"valid"],[[374,374],"mapped",[375]],[[375,375],"valid"],[[376,376],"mapped",[255]],[[377,377],"mapped",[378]],[[378,378],"valid"],[[379,379],"mapped",[380]],[[380,380],"valid"],[[381,381],"mapped",[382]],[[382,382],"valid"],[[383,383],"mapped",[115]],[[384,384],"valid"],[[385,385],"mapped",[595]],[[386,386],"mapped",[387]],[[387,387],"valid"],[[388,388],"mapped",[389]],[[389,389],"valid"],[[390,390],"mapped",[596]],[[391,391],"mapped",[392]],[[392,392],"valid"],[[393,393],"mapped",[598]],[[394,394],"mapped",[599]],[[395,395],"mapped",[396]],[[396,397],"valid"],[[398,398],"mapped",[477]],[[399,399],"mapped",[601]],[[400,400],"mapped",[603]],[[401,401],"mapped",[402]],[[402,402],"valid"],[[403,403],"mapped",[608]],[[404,404],"mapped",[611]],[[405,405],"valid"],[[406,406],"mapped",[617]],[[407,407],"mapped",[616]],[[408,408],"mapped",[409]],[[409,411],"valid"],[[412,412],"mapped",[623]],[[413,413],"mapped",[626]],[[414,414],"valid"],[[415,415],"mapped",[629]],[[416,416],"mapped",[417]],[[417,417],"valid"],[[418,418],"mapped",[419]],[[419,419],"valid"],[[420,420],"mapped",[421]],[[421,421],"valid"],[[422,422],"mapped",[640]],[[423,423],"mapped",[424]],[[424,424],"valid"],[[425,425],"mapped",[643]],[[426,427],"valid"],[[428,428],"mapped",[429]],[[429,429],"valid"],[[430,430],"mapped",[648]],[[431,431],"mapped",[432]],[[432,432],"valid"],[[433,433],"mapped",[650]],[[434,434],"mapped",[651]],[[435,435],"mapped",[436]],[[436,436],"valid"],[[437,437],"mapped",[438]],[[438,438],"valid"],[[439,439],"mapped",[658]],[[440,440],"mapped",[441]],[[441,443],"valid"],[[444,444],"mapped",[445]],[[445,451],"valid"],[[452,454],"mapped",[100,382]],[[455,457],"mapped",[108,106]],[[458,460],"mapped",[110,106]],[[461,461],"mapped",[462]],[[462,462],"valid"],[[463,463],"mapped",[464]],[[464,464],"valid"],[[465,465],"mapped",[466]],[[466,466],"valid"],[[467,467],"mapped",[468]],[[468,468],"valid"],[[469,469],"mapped",[470]],[[470,470],"valid"],[[471,471],"mapped",[472]],[[472,472],"valid"],[[473,473],"mapped",[474]],[[474,474],"valid"],[[475,475],"mapped",[476]],[[476,477],"valid"],[[478,478],"mapped",[479]],[[479,479],"valid"],[[480,480],"mapped",[481]],[[481,481],"valid"],[[482,482],"mapped",[483]],[[483,483],"valid"],[[484,484],"mapped",[485]],[[485,485],"valid"],[[486,486],"mapped",[487]],[[487,487],"valid"],[[488,488],"mapped",[489]],[[489,489],"valid"],[[490,490],"mapped",[491]],[[491,491],"valid"],[[492,492],"mapped",[493]],[[493,493],"valid"],[[494,494],"mapped",[495]],[[495,496],"valid"],[[497,499],"mapped",[100,122]],[[500,500],"mapped",[501]],[[501,501],"valid"],[[502,502],"mapped",[405]],[[503,503],"mapped",[447]],[[504,504],"mapped",[505]],[[505,505],"valid"],[[506,506],"mapped",[507]],[[507,507],"valid"],[[508,508],"mapped",[509]],[[509,509],"valid"],[[510,510],"mapped",[511]],[[511,511],"valid"],[[512,512],"mapped",[513]],[[513,513],"valid"],[[514,514],"mapped",[515]],[[515,515],"valid"],[[516,516],"mapped",[517]],[[517,517],"valid"],[[518,518],"mapped",[519]],[[519,519],"valid"],[[520,520],"mapped",[521]],[[521,521],"valid"],[[522,522],"mapped",[523]],[[523,523],"valid"],[[524,524],"mapped",[525]],[[525,525],"valid"],[[526,526],"mapped",[527]],[[527,527],"valid"],[[528,528],"mapped",[529]],[[529,529],"valid"],[[530,530],"mapped",[531]],[[531,531],"valid"],[[532,532],"mapped",[533]],[[533,533],"valid"],[[534,534],"mapped",[535]],[[535,535],"valid"],[[536,536],"mapped",[537]],[[537,537],"valid"],[[538,538],"mapped",[539]],[[539,539],"valid"],[[540,540],"mapped",[541]],[[541,541],"valid"],[[542,542],"mapped",[543]],[[543,543],"valid"],[[544,544],"mapped",[414]],[[545,545],"valid"],[[546,546],"mapped",[547]],[[547,547],"valid"],[[548,548],"mapped",[549]],[[549,549],"valid"],[[550,550],"mapped",[551]],[[551,551],"valid"],[[552,552],"mapped",[553]],[[553,553],"valid"],[[554,554],"mapped",[555]],[[555,555],"valid"],[[556,556],"mapped",[557]],[[557,557],"valid"],[[558,558],"mapped",[559]],[[559,559],"valid"],[[560,560],"mapped",[561]],[[561,561],"valid"],[[562,562],"mapped",[563]],[[563,563],"valid"],[[564,566],"valid"],[[567,569],"valid"],[[570,570],"mapped",[11365]],[[571,571],"mapped",[572]],[[572,572],"valid"],[[573,573],"mapped",[410]],[[574,574],"mapped",[11366]],[[575,576],"valid"],[[577,577],"mapped",[578]],[[578,578],"valid"],[[579,579],"mapped",[384]],[[580,580],"mapped",[649]],[[581,581],"mapped",[652]],[[582,582],"mapped",[583]],[[583,583],"valid"],[[584,584],"mapped",[585]],[[585,585],"valid"],[[586,586],"mapped",[587]],[[587,587],"valid"],[[588,588],"mapped",[589]],[[589,589],"valid"],[[590,590],"mapped",[591]],[[591,591],"valid"],[[592,680],"valid"],[[681,685],"valid"],[[686,687],"valid"],[[688,688],"mapped",[104]],[[689,689],"mapped",[614]],[[690,690],"mapped",[106]],[[691,691],"mapped",[114]],[[692,692],"mapped",[633]],[[693,693],"mapped",[635]],[[694,694],"mapped",[641]],[[695,695],"mapped",[119]],[[696,696],"mapped",[121]],[[697,705],"valid"],[[706,709],"valid",[],"NV8"],[[710,721],"valid"],[[722,727],"valid",[],"NV8"],[[728,728],"disallowed_STD3_mapped",[32,774]],[[729,729],"disallowed_STD3_mapped",[32,775]],[[730,730],"disallowed_STD3_mapped",[32,778]],[[731,731],"disallowed_STD3_mapped",[32,808]],[[732,732],"disallowed_STD3_mapped",[32,771]],[[733,733],"disallowed_STD3_mapped",[32,779]],[[734,734],"valid",[],"NV8"],[[735,735],"valid",[],"NV8"],[[736,736],"mapped",[611]],[[737,737],"mapped",[108]],[[738,738],"mapped",[115]],[[739,739],"mapped",[120]],[[740,740],"mapped",[661]],[[741,745],"valid",[],"NV8"],[[746,747],"valid",[],"NV8"],[[748,748],"valid"],[[749,749],"valid",[],"NV8"],[[750,750],"valid"],[[751,767],"valid",[],"NV8"],[[768,831],"valid"],[[832,832],"mapped",[768]],[[833,833],"mapped",[769]],[[834,834],"valid"],[[835,835],"mapped",[787]],[[836,836],"mapped",[776,769]],[[837,837],"mapped",[953]],[[838,846],"valid"],[[847,847],"ignored"],[[848,855],"valid"],[[856,860],"valid"],[[861,863],"valid"],[[864,865],"valid"],[[866,866],"valid"],[[867,879],"valid"],[[880,880],"mapped",[881]],[[881,881],"valid"],[[882,882],"mapped",[883]],[[883,883],"valid"],[[884,884],"mapped",[697]],[[885,885],"valid"],[[886,886],"mapped",[887]],[[887,887],"valid"],[[888,889],"disallowed"],[[890,890],"disallowed_STD3_mapped",[32,953]],[[891,893],"valid"],[[894,894],"disallowed_STD3_mapped",[59]],[[895,895],"mapped",[1011]],[[896,899],"disallowed"],[[900,900],"disallowed_STD3_mapped",[32,769]],[[901,901],"disallowed_STD3_mapped",[32,776,769]],[[902,902],"mapped",[940]],[[903,903],"mapped",[183]],[[904,904],"mapped",[941]],[[905,905],"mapped",[942]],[[906,906],"mapped",[943]],[[907,907],"disallowed"],[[908,908],"mapped",[972]],[[909,909],"disallowed"],[[910,910],"mapped",[973]],[[911,911],"mapped",[974]],[[912,912],"valid"],[[913,913],"mapped",[945]],[[914,914],"mapped",[946]],[[915,915],"mapped",[947]],[[916,916],"mapped",[948]],[[917,917],"mapped",[949]],[[918,918],"mapped",[950]],[[919,919],"mapped",[951]],[[920,920],"mapped",[952]],[[921,921],"mapped",[953]],[[922,922],"mapped",[954]],[[923,923],"mapped",[955]],[[924,924],"mapped",[956]],[[925,925],"mapped",[957]],[[926,926],"mapped",[958]],[[927,927],"mapped",[959]],[[928,928],"mapped",[960]],[[929,929],"mapped",[961]],[[930,930],"disallowed"],[[931,931],"mapped",[963]],[[932,932],"mapped",[964]],[[933,933],"mapped",[965]],[[934,934],"mapped",[966]],[[935,935],"mapped",[967]],[[936,936],"mapped",[968]],[[937,937],"mapped",[969]],[[938,938],"mapped",[970]],[[939,939],"mapped",[971]],[[940,961],"valid"],[[962,962],"deviation",[963]],[[963,974],"valid"],[[975,975],"mapped",[983]],[[976,976],"mapped",[946]],[[977,977],"mapped",[952]],[[978,978],"mapped",[965]],[[979,979],"mapped",[973]],[[980,980],"mapped",[971]],[[981,981],"mapped",[966]],[[982,982],"mapped",[960]],[[983,983],"valid"],[[984,984],"mapped",[985]],[[985,985],"valid"],[[986,986],"mapped",[987]],[[987,987],"valid"],[[988,988],"mapped",[989]],[[989,989],"valid"],[[990,990],"mapped",[991]],[[991,991],"valid"],[[992,992],"mapped",[993]],[[993,993],"valid"],[[994,994],"mapped",[995]],[[995,995],"valid"],[[996,996],"mapped",[997]],[[997,997],"valid"],[[998,998],"mapped",[999]],[[999,999],"valid"],[[1000,1000],"mapped",[1001]],[[1001,1001],"valid"],[[1002,1002],"mapped",[1003]],[[1003,1003],"valid"],[[1004,1004],"mapped",[1005]],[[1005,1005],"valid"],[[1006,1006],"mapped",[1007]],[[1007,1007],"valid"],[[1008,1008],"mapped",[954]],[[1009,1009],"mapped",[961]],[[1010,1010],"mapped",[963]],[[1011,1011],"valid"],[[1012,1012],"mapped",[952]],[[1013,1013],"mapped",[949]],[[1014,1014],"valid",[],"NV8"],[[1015,1015],"mapped",[1016]],[[1016,1016],"valid"],[[1017,1017],"mapped",[963]],[[1018,1018],"mapped",[1019]],[[1019,1019],"valid"],[[1020,1020],"valid"],[[1021,1021],"mapped",[891]],[[1022,1022],"mapped",[892]],[[1023,1023],"mapped",[893]],[[1024,1024],"mapped",[1104]],[[1025,1025],"mapped",[1105]],[[1026,1026],"mapped",[1106]],[[1027,1027],"mapped",[1107]],[[1028,1028],"mapped",[1108]],[[1029,1029],"mapped",[1109]],[[1030,1030],"mapped",[1110]],[[1031,1031],"mapped",[1111]],[[1032,1032],"mapped",[1112]],[[1033,1033],"mapped",[1113]],[[1034,1034],"mapped",[1114]],[[1035,1035],"mapped",[1115]],[[1036,1036],"mapped",[1116]],[[1037,1037],"mapped",[1117]],[[1038,1038],"mapped",[1118]],[[1039,1039],"mapped",[1119]],[[1040,1040],"mapped",[1072]],[[1041,1041],"mapped",[1073]],[[1042,1042],"mapped",[1074]],[[1043,1043],"mapped",[1075]],[[1044,1044],"mapped",[1076]],[[1045,1045],"mapped",[1077]],[[1046,1046],"mapped",[1078]],[[1047,1047],"mapped",[1079]],[[1048,1048],"mapped",[1080]],[[1049,1049],"mapped",[1081]],[[1050,1050],"mapped",[1082]],[[1051,1051],"mapped",[1083]],[[1052,1052],"mapped",[1084]],[[1053,1053],"mapped",[1085]],[[1054,1054],"mapped",[1086]],[[1055,1055],"mapped",[1087]],[[1056,1056],"mapped",[1088]],[[1057,1057],"mapped",[1089]],[[1058,1058],"mapped",[1090]],[[1059,1059],"mapped",[1091]],[[1060,1060],"mapped",[1092]],[[1061,1061],"mapped",[1093]],[[1062,1062],"mapped",[1094]],[[1063,1063],"mapped",[1095]],[[1064,1064],"mapped",[1096]],[[1065,1065],"mapped",[1097]],[[1066,1066],"mapped",[1098]],[[1067,1067],"mapped",[1099]],[[1068,1068],"mapped",[1100]],[[1069,1069],"mapped",[1101]],[[1070,1070],"mapped",[1102]],[[1071,1071],"mapped",[1103]],[[1072,1103],"valid"],[[1104,1104],"valid"],[[1105,1116],"valid"],[[1117,1117],"valid"],[[1118,1119],"valid"],[[1120,1120],"mapped",[1121]],[[1121,1121],"valid"],[[1122,1122],"mapped",[1123]],[[1123,1123],"valid"],[[1124,1124],"mapped",[1125]],[[1125,1125],"valid"],[[1126,1126],"mapped",[1127]],[[1127,1127],"valid"],[[1128,1128],"mapped",[1129]],[[1129,1129],"valid"],[[1130,1130],"mapped",[1131]],[[1131,1131],"valid"],[[1132,1132],"mapped",[1133]],[[1133,1133],"valid"],[[1134,1134],"mapped",[1135]],[[1135,1135],"valid"],[[1136,1136],"mapped",[1137]],[[1137,1137],"valid"],[[1138,1138],"mapped",[1139]],[[1139,1139],"valid"],[[1140,1140],"mapped",[1141]],[[1141,1141],"valid"],[[1142,1142],"mapped",[1143]],[[1143,1143],"valid"],[[1144,1144],"mapped",[1145]],[[1145,1145],"valid"],[[1146,1146],"mapped",[1147]],[[1147,1147],"valid"],[[1148,1148],"mapped",[1149]],[[1149,1149],"valid"],[[1150,1150],"mapped",[1151]],[[1151,1151],"valid"],[[1152,1152],"mapped",[1153]],[[1153,1153],"valid"],[[1154,1154],"valid",[],"NV8"],[[1155,1158],"valid"],[[1159,1159],"valid"],[[1160,1161],"valid",[],"NV8"],[[1162,1162],"mapped",[1163]],[[1163,1163],"valid"],[[1164,1164],"mapped",[1165]],[[1165,1165],"valid"],[[1166,1166],"mapped",[1167]],[[1167,1167],"valid"],[[1168,1168],"mapped",[1169]],[[1169,1169],"valid"],[[1170,1170],"mapped",[1171]],[[1171,1171],"valid"],[[1172,1172],"mapped",[1173]],[[1173,1173],"valid"],[[1174,1174],"mapped",[1175]],[[1175,1175],"valid"],[[1176,1176],"mapped",[1177]],[[1177,1177],"valid"],[[1178,1178],"mapped",[1179]],[[1179,1179],"valid"],[[1180,1180],"mapped",[1181]],[[1181,1181],"valid"],[[1182,1182],"mapped",[1183]],[[1183,1183],"valid"],[[1184,1184],"mapped",[1185]],[[1185,1185],"valid"],[[1186,1186],"mapped",[1187]],[[1187,1187],"valid"],[[1188,1188],"mapped",[1189]],[[1189,1189],"valid"],[[1190,1190],"mapped",[1191]],[[1191,1191],"valid"],[[1192,1192],"mapped",[1193]],[[1193,1193],"valid"],[[1194,1194],"mapped",[1195]],[[1195,1195],"valid"],[[1196,1196],"mapped",[1197]],[[1197,1197],"valid"],[[1198,1198],"mapped",[1199]],[[1199,1199],"valid"],[[1200,1200],"mapped",[1201]],[[1201,1201],"valid"],[[1202,1202],"mapped",[1203]],[[1203,1203],"valid"],[[1204,1204],"mapped",[1205]],[[1205,1205],"valid"],[[1206,1206],"mapped",[1207]],[[1207,1207],"valid"],[[1208,1208],"mapped",[1209]],[[1209,1209],"valid"],[[1210,1210],"mapped",[1211]],[[1211,1211],"valid"],[[1212,1212],"mapped",[1213]],[[1213,1213],"valid"],[[1214,1214],"mapped",[1215]],[[1215,1215],"valid"],[[1216,1216],"disallowed"],[[1217,1217],"mapped",[1218]],[[1218,1218],"valid"],[[1219,1219],"mapped",[1220]],[[1220,1220],"valid"],[[1221,1221],"mapped",[1222]],[[1222,1222],"valid"],[[1223,1223],"mapped",[1224]],[[1224,1224],"valid"],[[1225,1225],"mapped",[1226]],[[1226,1226],"valid"],[[1227,1227],"mapped",[1228]],[[1228,1228],"valid"],[[1229,1229],"mapped",[1230]],[[1230,1230],"valid"],[[1231,1231],"valid"],[[1232,1232],"mapped",[1233]],[[1233,1233],"valid"],[[1234,1234],"mapped",[1235]],[[1235,1235],"valid"],[[1236,1236],"mapped",[1237]],[[1237,1237],"valid"],[[1238,1238],"mapped",[1239]],[[1239,1239],"valid"],[[1240,1240],"mapped",[1241]],[[1241,1241],"valid"],[[1242,1242],"mapped",[1243]],[[1243,1243],"valid"],[[1244,1244],"mapped",[1245]],[[1245,1245],"valid"],[[1246,1246],"mapped",[1247]],[[1247,1247],"valid"],[[1248,1248],"mapped",[1249]],[[1249,1249],"valid"],[[1250,1250],"mapped",[1251]],[[1251,1251],"valid"],[[1252,1252],"mapped",[1253]],[[1253,1253],"valid"],[[1254,1254],"mapped",[1255]],[[1255,1255],"valid"],[[1256,1256],"mapped",[1257]],[[1257,1257],"valid"],[[1258,1258],"mapped",[1259]],[[1259,1259],"valid"],[[1260,1260],"mapped",[1261]],[[1261,1261],"valid"],[[1262,1262],"mapped",[1263]],[[1263,1263],"valid"],[[1264,1264],"mapped",[1265]],[[1265,1265],"valid"],[[1266,1266],"mapped",[1267]],[[1267,1267],"valid"],[[1268,1268],"mapped",[1269]],[[1269,1269],"valid"],[[1270,1270],"mapped",[1271]],[[1271,1271],"valid"],[[1272,1272],"mapped",[1273]],[[1273,1273],"valid"],[[1274,1274],"mapped",[1275]],[[1275,1275],"valid"],[[1276,1276],"mapped",[1277]],[[1277,1277],"valid"],[[1278,1278],"mapped",[1279]],[[1279,1279],"valid"],[[1280,1280],"mapped",[1281]],[[1281,1281],"valid"],[[1282,1282],"mapped",[1283]],[[1283,1283],"valid"],[[1284,1284],"mapped",[1285]],[[1285,1285],"valid"],[[1286,1286],"mapped",[1287]],[[1287,1287],"valid"],[[1288,1288],"mapped",[1289]],[[1289,1289],"valid"],[[1290,1290],"mapped",[1291]],[[1291,1291],"valid"],[[1292,1292],"mapped",[1293]],[[1293,1293],"valid"],[[1294,1294],"mapped",[1295]],[[1295,1295],"valid"],[[1296,1296],"mapped",[1297]],[[1297,1297],"valid"],[[1298,1298],"mapped",[1299]],[[1299,1299],"valid"],[[1300,1300],"mapped",[1301]],[[1301,1301],"valid"],[[1302,1302],"mapped",[1303]],[[1303,1303],"valid"],[[1304,1304],"mapped",[1305]],[[1305,1305],"valid"],[[1306,1306],"mapped",[1307]],[[1307,1307],"valid"],[[1308,1308],"mapped",[1309]],[[1309,1309],"valid"],[[1310,1310],"mapped",[1311]],[[1311,1311],"valid"],[[1312,1312],"mapped",[1313]],[[1313,1313],"valid"],[[1314,1314],"mapped",[1315]],[[1315,1315],"valid"],[[1316,1316],"mapped",[1317]],[[1317,1317],"valid"],[[1318,1318],"mapped",[1319]],[[1319,1319],"valid"],[[1320,1320],"mapped",[1321]],[[1321,1321],"valid"],[[1322,1322],"mapped",[1323]],[[1323,1323],"valid"],[[1324,1324],"mapped",[1325]],[[1325,1325],"valid"],[[1326,1326],"mapped",[1327]],[[1327,1327],"valid"],[[1328,1328],"disallowed"],[[1329,1329],"mapped",[1377]],[[1330,1330],"mapped",[1378]],[[1331,1331],"mapped",[1379]],[[1332,1332],"mapped",[1380]],[[1333,1333],"mapped",[1381]],[[1334,1334],"mapped",[1382]],[[1335,1335],"mapped",[1383]],[[1336,1336],"mapped",[1384]],[[1337,1337],"mapped",[1385]],[[1338,1338],"mapped",[1386]],[[1339,1339],"mapped",[1387]],[[1340,1340],"mapped",[1388]],[[1341,1341],"mapped",[1389]],[[1342,1342],"mapped",[1390]],[[1343,1343],"mapped",[1391]],[[1344,1344],"mapped",[1392]],[[1345,1345],"mapped",[1393]],[[1346,1346],"mapped",[1394]],[[1347,1347],"mapped",[1395]],[[1348,1348],"mapped",[1396]],[[1349,1349],"mapped",[1397]],[[1350,1350],"mapped",[1398]],[[1351,1351],"mapped",[1399]],[[1352,1352],"mapped",[1400]],[[1353,1353],"mapped",[1401]],[[1354,1354],"mapped",[1402]],[[1355,1355],"mapped",[1403]],[[1356,1356],"mapped",[1404]],[[1357,1357],"mapped",[1405]],[[1358,1358],"mapped",[1406]],[[1359,1359],"mapped",[1407]],[[1360,1360],"mapped",[1408]],[[1361,1361],"mapped",[1409]],[[1362,1362],"mapped",[1410]],[[1363,1363],"mapped",[1411]],[[1364,1364],"mapped",[1412]],[[1365,1365],"mapped",[1413]],[[1366,1366],"mapped",[1414]],[[1367,1368],"disallowed"],[[1369,1369],"valid"],[[1370,1375],"valid",[],"NV8"],[[1376,1376],"disallowed"],[[1377,1414],"valid"],[[1415,1415],"mapped",[1381,1410]],[[1416,1416],"disallowed"],[[1417,1417],"valid",[],"NV8"],[[1418,1418],"valid",[],"NV8"],[[1419,1420],"disallowed"],[[1421,1422],"valid",[],"NV8"],[[1423,1423],"valid",[],"NV8"],[[1424,1424],"disallowed"],[[1425,1441],"valid"],[[1442,1442],"valid"],[[1443,1455],"valid"],[[1456,1465],"valid"],[[1466,1466],"valid"],[[1467,1469],"valid"],[[1470,1470],"valid",[],"NV8"],[[1471,1471],"valid"],[[1472,1472],"valid",[],"NV8"],[[1473,1474],"valid"],[[1475,1475],"valid",[],"NV8"],[[1476,1476],"valid"],[[1477,1477],"valid"],[[1478,1478],"valid",[],"NV8"],[[1479,1479],"valid"],[[1480,1487],"disallowed"],[[1488,1514],"valid"],[[1515,1519],"disallowed"],[[1520,1524],"valid"],[[1525,1535],"disallowed"],[[1536,1539],"disallowed"],[[1540,1540],"disallowed"],[[1541,1541],"disallowed"],[[1542,1546],"valid",[],"NV8"],[[1547,1547],"valid",[],"NV8"],[[1548,1548],"valid",[],"NV8"],[[1549,1551],"valid",[],"NV8"],[[1552,1557],"valid"],[[1558,1562],"valid"],[[1563,1563],"valid",[],"NV8"],[[1564,1564],"disallowed"],[[1565,1565],"disallowed"],[[1566,1566],"valid",[],"NV8"],[[1567,1567],"valid",[],"NV8"],[[1568,1568],"valid"],[[1569,1594],"valid"],[[1595,1599],"valid"],[[1600,1600],"valid",[],"NV8"],[[1601,1618],"valid"],[[1619,1621],"valid"],[[1622,1624],"valid"],[[1625,1630],"valid"],[[1631,1631],"valid"],[[1632,1641],"valid"],[[1642,1645],"valid",[],"NV8"],[[1646,1647],"valid"],[[1648,1652],"valid"],[[1653,1653],"mapped",[1575,1652]],[[1654,1654],"mapped",[1608,1652]],[[1655,1655],"mapped",[1735,1652]],[[1656,1656],"mapped",[1610,1652]],[[1657,1719],"valid"],[[1720,1721],"valid"],[[1722,1726],"valid"],[[1727,1727],"valid"],[[1728,1742],"valid"],[[1743,1743],"valid"],[[1744,1747],"valid"],[[1748,1748],"valid",[],"NV8"],[[1749,1756],"valid"],[[1757,1757],"disallowed"],[[1758,1758],"valid",[],"NV8"],[[1759,1768],"valid"],[[1769,1769],"valid",[],"NV8"],[[1770,1773],"valid"],[[1774,1775],"valid"],[[1776,1785],"valid"],[[1786,1790],"valid"],[[1791,1791],"valid"],[[1792,1805],"valid",[],"NV8"],[[1806,1806],"disallowed"],[[1807,1807],"disallowed"],[[1808,1836],"valid"],[[1837,1839],"valid"],[[1840,1866],"valid"],[[1867,1868],"disallowed"],[[1869,1871],"valid"],[[1872,1901],"valid"],[[1902,1919],"valid"],[[1920,1968],"valid"],[[1969,1969],"valid"],[[1970,1983],"disallowed"],[[1984,2037],"valid"],[[2038,2042],"valid",[],"NV8"],[[2043,2047],"disallowed"],[[2048,2093],"valid"],[[2094,2095],"disallowed"],[[2096,2110],"valid",[],"NV8"],[[2111,2111],"disallowed"],[[2112,2139],"valid"],[[2140,2141],"disallowed"],[[2142,2142],"valid",[],"NV8"],[[2143,2207],"disallowed"],[[2208,2208],"valid"],[[2209,2209],"valid"],[[2210,2220],"valid"],[[2221,2226],"valid"],[[2227,2228],"valid"],[[2229,2274],"disallowed"],[[2275,2275],"valid"],[[2276,2302],"valid"],[[2303,2303],"valid"],[[2304,2304],"valid"],[[2305,2307],"valid"],[[2308,2308],"valid"],[[2309,2361],"valid"],[[2362,2363],"valid"],[[2364,2381],"valid"],[[2382,2382],"valid"],[[2383,2383],"valid"],[[2384,2388],"valid"],[[2389,2389],"valid"],[[2390,2391],"valid"],[[2392,2392],"mapped",[2325,2364]],[[2393,2393],"mapped",[2326,2364]],[[2394,2394],"mapped",[2327,2364]],[[2395,2395],"mapped",[2332,2364]],[[2396,2396],"mapped",[2337,2364]],[[2397,2397],"mapped",[2338,2364]],[[2398,2398],"mapped",[2347,2364]],[[2399,2399],"mapped",[2351,2364]],[[2400,2403],"valid"],[[2404,2405],"valid",[],"NV8"],[[2406,2415],"valid"],[[2416,2416],"valid",[],"NV8"],[[2417,2418],"valid"],[[2419,2423],"valid"],[[2424,2424],"valid"],[[2425,2426],"valid"],[[2427,2428],"valid"],[[2429,2429],"valid"],[[2430,2431],"valid"],[[2432,2432],"valid"],[[2433,2435],"valid"],[[2436,2436],"disallowed"],[[2437,2444],"valid"],[[2445,2446],"disallowed"],[[2447,2448],"valid"],[[2449,2450],"disallowed"],[[2451,2472],"valid"],[[2473,2473],"disallowed"],[[2474,2480],"valid"],[[2481,2481],"disallowed"],[[2482,2482],"valid"],[[2483,2485],"disallowed"],[[2486,2489],"valid"],[[2490,2491],"disallowed"],[[2492,2492],"valid"],[[2493,2493],"valid"],[[2494,2500],"valid"],[[2501,2502],"disallowed"],[[2503,2504],"valid"],[[2505,2506],"disallowed"],[[2507,2509],"valid"],[[2510,2510],"valid"],[[2511,2518],"disallowed"],[[2519,2519],"valid"],[[2520,2523],"disallowed"],[[2524,2524],"mapped",[2465,2492]],[[2525,2525],"mapped",[2466,2492]],[[2526,2526],"disallowed"],[[2527,2527],"mapped",[2479,2492]],[[2528,2531],"valid"],[[2532,2533],"disallowed"],[[2534,2545],"valid"],[[2546,2554],"valid",[],"NV8"],[[2555,2555],"valid",[],"NV8"],[[2556,2560],"disallowed"],[[2561,2561],"valid"],[[2562,2562],"valid"],[[2563,2563],"valid"],[[2564,2564],"disallowed"],[[2565,2570],"valid"],[[2571,2574],"disallowed"],[[2575,2576],"valid"],[[2577,2578],"disallowed"],[[2579,2600],"valid"],[[2601,2601],"disallowed"],[[2602,2608],"valid"],[[2609,2609],"disallowed"],[[2610,2610],"valid"],[[2611,2611],"mapped",[2610,2620]],[[2612,2612],"disallowed"],[[2613,2613],"valid"],[[2614,2614],"mapped",[2616,2620]],[[2615,2615],"disallowed"],[[2616,2617],"valid"],[[2618,2619],"disallowed"],[[2620,2620],"valid"],[[2621,2621],"disallowed"],[[2622,2626],"valid"],[[2627,2630],"disallowed"],[[2631,2632],"valid"],[[2633,2634],"disallowed"],[[2635,2637],"valid"],[[2638,2640],"disallowed"],[[2641,2641],"valid"],[[2642,2648],"disallowed"],[[2649,2649],"mapped",[2582,2620]],[[2650,2650],"mapped",[2583,2620]],[[2651,2651],"mapped",[2588,2620]],[[2652,2652],"valid"],[[2653,2653],"disallowed"],[[2654,2654],"mapped",[2603,2620]],[[2655,2661],"disallowed"],[[2662,2676],"valid"],[[2677,2677],"valid"],[[2678,2688],"disallowed"],[[2689,2691],"valid"],[[2692,2692],"disallowed"],[[2693,2699],"valid"],[[2700,2700],"valid"],[[2701,2701],"valid"],[[2702,2702],"disallowed"],[[2703,2705],"valid"],[[2706,2706],"disallowed"],[[2707,2728],"valid"],[[2729,2729],"disallowed"],[[2730,2736],"valid"],[[2737,2737],"disallowed"],[[2738,2739],"valid"],[[2740,2740],"disallowed"],[[2741,2745],"valid"],[[2746,2747],"disallowed"],[[2748,2757],"valid"],[[2758,2758],"disallowed"],[[2759,2761],"valid"],[[2762,2762],"disallowed"],[[2763,2765],"valid"],[[2766,2767],"disallowed"],[[2768,2768],"valid"],[[2769,2783],"disallowed"],[[2784,2784],"valid"],[[2785,2787],"valid"],[[2788,2789],"disallowed"],[[2790,2799],"valid"],[[2800,2800],"valid",[],"NV8"],[[2801,2801],"valid",[],"NV8"],[[2802,2808],"disallowed"],[[2809,2809],"valid"],[[2810,2816],"disallowed"],[[2817,2819],"valid"],[[2820,2820],"disallowed"],[[2821,2828],"valid"],[[2829,2830],"disallowed"],[[2831,2832],"valid"],[[2833,2834],"disallowed"],[[2835,2856],"valid"],[[2857,2857],"disallowed"],[[2858,2864],"valid"],[[2865,2865],"disallowed"],[[2866,2867],"valid"],[[2868,2868],"disallowed"],[[2869,2869],"valid"],[[2870,2873],"valid"],[[2874,2875],"disallowed"],[[2876,2883],"valid"],[[2884,2884],"valid"],[[2885,2886],"disallowed"],[[2887,2888],"valid"],[[2889,2890],"disallowed"],[[2891,2893],"valid"],[[2894,2901],"disallowed"],[[2902,2903],"valid"],[[2904,2907],"disallowed"],[[2908,2908],"mapped",[2849,2876]],[[2909,2909],"mapped",[2850,2876]],[[2910,2910],"disallowed"],[[2911,2913],"valid"],[[2914,2915],"valid"],[[2916,2917],"disallowed"],[[2918,2927],"valid"],[[2928,2928],"valid",[],"NV8"],[[2929,2929],"valid"],[[2930,2935],"valid",[],"NV8"],[[2936,2945],"disallowed"],[[2946,2947],"valid"],[[2948,2948],"disallowed"],[[2949,2954],"valid"],[[2955,2957],"disallowed"],[[2958,2960],"valid"],[[2961,2961],"disallowed"],[[2962,2965],"valid"],[[2966,2968],"disallowed"],[[2969,2970],"valid"],[[2971,2971],"disallowed"],[[2972,2972],"valid"],[[2973,2973],"disallowed"],[[2974,2975],"valid"],[[2976,2978],"disallowed"],[[2979,2980],"valid"],[[2981,2983],"disallowed"],[[2984,2986],"valid"],[[2987,2989],"disallowed"],[[2990,2997],"valid"],[[2998,2998],"valid"],[[2999,3001],"valid"],[[3002,3005],"disallowed"],[[3006,3010],"valid"],[[3011,3013],"disallowed"],[[3014,3016],"valid"],[[3017,3017],"disallowed"],[[3018,3021],"valid"],[[3022,3023],"disallowed"],[[3024,3024],"valid"],[[3025,3030],"disallowed"],[[3031,3031],"valid"],[[3032,3045],"disallowed"],[[3046,3046],"valid"],[[3047,3055],"valid"],[[3056,3058],"valid",[],"NV8"],[[3059,3066],"valid",[],"NV8"],[[3067,3071],"disallowed"],[[3072,3072],"valid"],[[3073,3075],"valid"],[[3076,3076],"disallowed"],[[3077,3084],"valid"],[[3085,3085],"disallowed"],[[3086,3088],"valid"],[[3089,3089],"disallowed"],[[3090,3112],"valid"],[[3113,3113],"disallowed"],[[3114,3123],"valid"],[[3124,3124],"valid"],[[3125,3129],"valid"],[[3130,3132],"disallowed"],[[3133,3133],"valid"],[[3134,3140],"valid"],[[3141,3141],"disallowed"],[[3142,3144],"valid"],[[3145,3145],"disallowed"],[[3146,3149],"valid"],[[3150,3156],"disallowed"],[[3157,3158],"valid"],[[3159,3159],"disallowed"],[[3160,3161],"valid"],[[3162,3162],"valid"],[[3163,3167],"disallowed"],[[3168,3169],"valid"],[[3170,3171],"valid"],[[3172,3173],"disallowed"],[[3174,3183],"valid"],[[3184,3191],"disallowed"],[[3192,3199],"valid",[],"NV8"],[[3200,3200],"disallowed"],[[3201,3201],"valid"],[[3202,3203],"valid"],[[3204,3204],"disallowed"],[[3205,3212],"valid"],[[3213,3213],"disallowed"],[[3214,3216],"valid"],[[3217,3217],"disallowed"],[[3218,3240],"valid"],[[3241,3241],"disallowed"],[[3242,3251],"valid"],[[3252,3252],"disallowed"],[[3253,3257],"valid"],[[3258,3259],"disallowed"],[[3260,3261],"valid"],[[3262,3268],"valid"],[[3269,3269],"disallowed"],[[3270,3272],"valid"],[[3273,3273],"disallowed"],[[3274,3277],"valid"],[[3278,3284],"disallowed"],[[3285,3286],"valid"],[[3287,3293],"disallowed"],[[3294,3294],"valid"],[[3295,3295],"disallowed"],[[3296,3297],"valid"],[[3298,3299],"valid"],[[3300,3301],"disallowed"],[[3302,3311],"valid"],[[3312,3312],"disallowed"],[[3313,3314],"valid"],[[3315,3328],"disallowed"],[[3329,3329],"valid"],[[3330,3331],"valid"],[[3332,3332],"disallowed"],[[3333,3340],"valid"],[[3341,3341],"disallowed"],[[3342,3344],"valid"],[[3345,3345],"disallowed"],[[3346,3368],"valid"],[[3369,3369],"valid"],[[3370,3385],"valid"],[[3386,3386],"valid"],[[3387,3388],"disallowed"],[[3389,3389],"valid"],[[3390,3395],"valid"],[[3396,3396],"valid"],[[3397,3397],"disallowed"],[[3398,3400],"valid"],[[3401,3401],"disallowed"],[[3402,3405],"valid"],[[3406,3406],"valid"],[[3407,3414],"disallowed"],[[3415,3415],"valid"],[[3416,3422],"disallowed"],[[3423,3423],"valid"],[[3424,3425],"valid"],[[3426,3427],"valid"],[[3428,3429],"disallowed"],[[3430,3439],"valid"],[[3440,3445],"valid",[],"NV8"],[[3446,3448],"disallowed"],[[3449,3449],"valid",[],"NV8"],[[3450,3455],"valid"],[[3456,3457],"disallowed"],[[3458,3459],"valid"],[[3460,3460],"disallowed"],[[3461,3478],"valid"],[[3479,3481],"disallowed"],[[3482,3505],"valid"],[[3506,3506],"disallowed"],[[3507,3515],"valid"],[[3516,3516],"disallowed"],[[3517,3517],"valid"],[[3518,3519],"disallowed"],[[3520,3526],"valid"],[[3527,3529],"disallowed"],[[3530,3530],"valid"],[[3531,3534],"disallowed"],[[3535,3540],"valid"],[[3541,3541],"disallowed"],[[3542,3542],"valid"],[[3543,3543],"disallowed"],[[3544,3551],"valid"],[[3552,3557],"disallowed"],[[3558,3567],"valid"],[[3568,3569],"disallowed"],[[3570,3571],"valid"],[[3572,3572],"valid",[],"NV8"],[[3573,3584],"disallowed"],[[3585,3634],"valid"],[[3635,3635],"mapped",[3661,3634]],[[3636,3642],"valid"],[[3643,3646],"disallowed"],[[3647,3647],"valid",[],"NV8"],[[3648,3662],"valid"],[[3663,3663],"valid",[],"NV8"],[[3664,3673],"valid"],[[3674,3675],"valid",[],"NV8"],[[3676,3712],"disallowed"],[[3713,3714],"valid"],[[3715,3715],"disallowed"],[[3716,3716],"valid"],[[3717,3718],"disallowed"],[[3719,3720],"valid"],[[3721,3721],"disallowed"],[[3722,3722],"valid"],[[3723,3724],"disallowed"],[[3725,3725],"valid"],[[3726,3731],"disallowed"],[[3732,3735],"valid"],[[3736,3736],"disallowed"],[[3737,3743],"valid"],[[3744,3744],"disallowed"],[[3745,3747],"valid"],[[3748,3748],"disallowed"],[[3749,3749],"valid"],[[3750,3750],"disallowed"],[[3751,3751],"valid"],[[3752,3753],"disallowed"],[[3754,3755],"valid"],[[3756,3756],"disallowed"],[[3757,3762],"valid"],[[3763,3763],"mapped",[3789,3762]],[[3764,3769],"valid"],[[3770,3770],"disallowed"],[[3771,3773],"valid"],[[3774,3775],"disallowed"],[[3776,3780],"valid"],[[3781,3781],"disallowed"],[[3782,3782],"valid"],[[3783,3783],"disallowed"],[[3784,3789],"valid"],[[3790,3791],"disallowed"],[[3792,3801],"valid"],[[3802,3803],"disallowed"],[[3804,3804],"mapped",[3755,3737]],[[3805,3805],"mapped",[3755,3745]],[[3806,3807],"valid"],[[3808,3839],"disallowed"],[[3840,3840],"valid"],[[3841,3850],"valid",[],"NV8"],[[3851,3851],"valid"],[[3852,3852],"mapped",[3851]],[[3853,3863],"valid",[],"NV8"],[[3864,3865],"valid"],[[3866,3871],"valid",[],"NV8"],[[3872,3881],"valid"],[[3882,3892],"valid",[],"NV8"],[[3893,3893],"valid"],[[3894,3894],"valid",[],"NV8"],[[3895,3895],"valid"],[[3896,3896],"valid",[],"NV8"],[[3897,3897],"valid"],[[3898,3901],"valid",[],"NV8"],[[3902,3906],"valid"],[[3907,3907],"mapped",[3906,4023]],[[3908,3911],"valid"],[[3912,3912],"disallowed"],[[3913,3916],"valid"],[[3917,3917],"mapped",[3916,4023]],[[3918,3921],"valid"],[[3922,3922],"mapped",[3921,4023]],[[3923,3926],"valid"],[[3927,3927],"mapped",[3926,4023]],[[3928,3931],"valid"],[[3932,3932],"mapped",[3931,4023]],[[3933,3944],"valid"],[[3945,3945],"mapped",[3904,4021]],[[3946,3946],"valid"],[[3947,3948],"valid"],[[3949,3952],"disallowed"],[[3953,3954],"valid"],[[3955,3955],"mapped",[3953,3954]],[[3956,3956],"valid"],[[3957,3957],"mapped",[3953,3956]],[[3958,3958],"mapped",[4018,3968]],[[3959,3959],"mapped",[4018,3953,3968]],[[3960,3960],"mapped",[4019,3968]],[[3961,3961],"mapped",[4019,3953,3968]],[[3962,3968],"valid"],[[3969,3969],"mapped",[3953,3968]],[[3970,3972],"valid"],[[3973,3973],"valid",[],"NV8"],[[3974,3979],"valid"],[[3980,3983],"valid"],[[3984,3986],"valid"],[[3987,3987],"mapped",[3986,4023]],[[3988,3989],"valid"],[[3990,3990],"valid"],[[3991,3991],"valid"],[[3992,3992],"disallowed"],[[3993,3996],"valid"],[[3997,3997],"mapped",[3996,4023]],[[3998,4001],"valid"],[[4002,4002],"mapped",[4001,4023]],[[4003,4006],"valid"],[[4007,4007],"mapped",[4006,4023]],[[4008,4011],"valid"],[[4012,4012],"mapped",[4011,4023]],[[4013,4013],"valid"],[[4014,4016],"valid"],[[4017,4023],"valid"],[[4024,4024],"valid"],[[4025,4025],"mapped",[3984,4021]],[[4026,4028],"valid"],[[4029,4029],"disallowed"],[[4030,4037],"valid",[],"NV8"],[[4038,4038],"valid"],[[4039,4044],"valid",[],"NV8"],[[4045,4045],"disallowed"],[[4046,4046],"valid",[],"NV8"],[[4047,4047],"valid",[],"NV8"],[[4048,4049],"valid",[],"NV8"],[[4050,4052],"valid",[],"NV8"],[[4053,4056],"valid",[],"NV8"],[[4057,4058],"valid",[],"NV8"],[[4059,4095],"disallowed"],[[4096,4129],"valid"],[[4130,4130],"valid"],[[4131,4135],"valid"],[[4136,4136],"valid"],[[4137,4138],"valid"],[[4139,4139],"valid"],[[4140,4146],"valid"],[[4147,4149],"valid"],[[4150,4153],"valid"],[[4154,4159],"valid"],[[4160,4169],"valid"],[[4170,4175],"valid",[],"NV8"],[[4176,4185],"valid"],[[4186,4249],"valid"],[[4250,4253],"valid"],[[4254,4255],"valid",[],"NV8"],[[4256,4293],"disallowed"],[[4294,4294],"disallowed"],[[4295,4295],"mapped",[11559]],[[4296,4300],"disallowed"],[[4301,4301],"mapped",[11565]],[[4302,4303],"disallowed"],[[4304,4342],"valid"],[[4343,4344],"valid"],[[4345,4346],"valid"],[[4347,4347],"valid",[],"NV8"],[[4348,4348],"mapped",[4316]],[[4349,4351],"valid"],[[4352,4441],"valid",[],"NV8"],[[4442,4446],"valid",[],"NV8"],[[4447,4448],"disallowed"],[[4449,4514],"valid",[],"NV8"],[[4515,4519],"valid",[],"NV8"],[[4520,4601],"valid",[],"NV8"],[[4602,4607],"valid",[],"NV8"],[[4608,4614],"valid"],[[4615,4615],"valid"],[[4616,4678],"valid"],[[4679,4679],"valid"],[[4680,4680],"valid"],[[4681,4681],"disallowed"],[[4682,4685],"valid"],[[4686,4687],"disallowed"],[[4688,4694],"valid"],[[4695,4695],"disallowed"],[[4696,4696],"valid"],[[4697,4697],"disallowed"],[[4698,4701],"valid"],[[4702,4703],"disallowed"],[[4704,4742],"valid"],[[4743,4743],"valid"],[[4744,4744],"valid"],[[4745,4745],"disallowed"],[[4746,4749],"valid"],[[4750,4751],"disallowed"],[[4752,4782],"valid"],[[4783,4783],"valid"],[[4784,4784],"valid"],[[4785,4785],"disallowed"],[[4786,4789],"valid"],[[4790,4791],"disallowed"],[[4792,4798],"valid"],[[4799,4799],"disallowed"],[[4800,4800],"valid"],[[4801,4801],"disallowed"],[[4802,4805],"valid"],[[4806,4807],"disallowed"],[[4808,4814],"valid"],[[4815,4815],"valid"],[[4816,4822],"valid"],[[4823,4823],"disallowed"],[[4824,4846],"valid"],[[4847,4847],"valid"],[[4848,4878],"valid"],[[4879,4879],"valid"],[[4880,4880],"valid"],[[4881,4881],"disallowed"],[[4882,4885],"valid"],[[4886,4887],"disallowed"],[[4888,4894],"valid"],[[4895,4895],"valid"],[[4896,4934],"valid"],[[4935,4935],"valid"],[[4936,4954],"valid"],[[4955,4956],"disallowed"],[[4957,4958],"valid"],[[4959,4959],"valid"],[[4960,4960],"valid",[],"NV8"],[[4961,4988],"valid",[],"NV8"],[[4989,4991],"disallowed"],[[4992,5007],"valid"],[[5008,5017],"valid",[],"NV8"],[[5018,5023],"disallowed"],[[5024,5108],"valid"],[[5109,5109],"valid"],[[5110,5111],"disallowed"],[[5112,5112],"mapped",[5104]],[[5113,5113],"mapped",[5105]],[[5114,5114],"mapped",[5106]],[[5115,5115],"mapped",[5107]],[[5116,5116],"mapped",[5108]],[[5117,5117],"mapped",[5109]],[[5118,5119],"disallowed"],[[5120,5120],"valid",[],"NV8"],[[5121,5740],"valid"],[[5741,5742],"valid",[],"NV8"],[[5743,5750],"valid"],[[5751,5759],"valid"],[[5760,5760],"disallowed"],[[5761,5786],"valid"],[[5787,5788],"valid",[],"NV8"],[[5789,5791],"disallowed"],[[5792,5866],"valid"],[[5867,5872],"valid",[],"NV8"],[[5873,5880],"valid"],[[5881,5887],"disallowed"],[[5888,5900],"valid"],[[5901,5901],"disallowed"],[[5902,5908],"valid"],[[5909,5919],"disallowed"],[[5920,5940],"valid"],[[5941,5942],"valid",[],"NV8"],[[5943,5951],"disallowed"],[[5952,5971],"valid"],[[5972,5983],"disallowed"],[[5984,5996],"valid"],[[5997,5997],"disallowed"],[[5998,6000],"valid"],[[6001,6001],"disallowed"],[[6002,6003],"valid"],[[6004,6015],"disallowed"],[[6016,6067],"valid"],[[6068,6069],"disallowed"],[[6070,6099],"valid"],[[6100,6102],"valid",[],"NV8"],[[6103,6103],"valid"],[[6104,6107],"valid",[],"NV8"],[[6108,6108],"valid"],[[6109,6109],"valid"],[[6110,6111],"disallowed"],[[6112,6121],"valid"],[[6122,6127],"disallowed"],[[6128,6137],"valid",[],"NV8"],[[6138,6143],"disallowed"],[[6144,6149],"valid",[],"NV8"],[[6150,6150],"disallowed"],[[6151,6154],"valid",[],"NV8"],[[6155,6157],"ignored"],[[6158,6158],"disallowed"],[[6159,6159],"disallowed"],[[6160,6169],"valid"],[[6170,6175],"disallowed"],[[6176,6263],"valid"],[[6264,6271],"disallowed"],[[6272,6313],"valid"],[[6314,6314],"valid"],[[6315,6319],"disallowed"],[[6320,6389],"valid"],[[6390,6399],"disallowed"],[[6400,6428],"valid"],[[6429,6430],"valid"],[[6431,6431],"disallowed"],[[6432,6443],"valid"],[[6444,6447],"disallowed"],[[6448,6459],"valid"],[[6460,6463],"disallowed"],[[6464,6464],"valid",[],"NV8"],[[6465,6467],"disallowed"],[[6468,6469],"valid",[],"NV8"],[[6470,6509],"valid"],[[6510,6511],"disallowed"],[[6512,6516],"valid"],[[6517,6527],"disallowed"],[[6528,6569],"valid"],[[6570,6571],"valid"],[[6572,6575],"disallowed"],[[6576,6601],"valid"],[[6602,6607],"disallowed"],[[6608,6617],"valid"],[[6618,6618],"valid",[],"XV8"],[[6619,6621],"disallowed"],[[6622,6623],"valid",[],"NV8"],[[6624,6655],"valid",[],"NV8"],[[6656,6683],"valid"],[[6684,6685],"disallowed"],[[6686,6687],"valid",[],"NV8"],[[6688,6750],"valid"],[[6751,6751],"disallowed"],[[6752,6780],"valid"],[[6781,6782],"disallowed"],[[6783,6793],"valid"],[[6794,6799],"disallowed"],[[6800,6809],"valid"],[[6810,6815],"disallowed"],[[6816,6822],"valid",[],"NV8"],[[6823,6823],"valid"],[[6824,6829],"valid",[],"NV8"],[[6830,6831],"disallowed"],[[6832,6845],"valid"],[[6846,6846],"valid",[],"NV8"],[[6847,6911],"disallowed"],[[6912,6987],"valid"],[[6988,6991],"disallowed"],[[6992,7001],"valid"],[[7002,7018],"valid",[],"NV8"],[[7019,7027],"valid"],[[7028,7036],"valid",[],"NV8"],[[7037,7039],"disallowed"],[[7040,7082],"valid"],[[7083,7085],"valid"],[[7086,7097],"valid"],[[7098,7103],"valid"],[[7104,7155],"valid"],[[7156,7163],"disallowed"],[[7164,7167],"valid",[],"NV8"],[[7168,7223],"valid"],[[7224,7226],"disallowed"],[[7227,7231],"valid",[],"NV8"],[[7232,7241],"valid"],[[7242,7244],"disallowed"],[[7245,7293],"valid"],[[7294,7295],"valid",[],"NV8"],[[7296,7359],"disallowed"],[[7360,7367],"valid",[],"NV8"],[[7368,7375],"disallowed"],[[7376,7378],"valid"],[[7379,7379],"valid",[],"NV8"],[[7380,7410],"valid"],[[7411,7414],"valid"],[[7415,7415],"disallowed"],[[7416,7417],"valid"],[[7418,7423],"disallowed"],[[7424,7467],"valid"],[[7468,7468],"mapped",[97]],[[7469,7469],"mapped",[230]],[[7470,7470],"mapped",[98]],[[7471,7471],"valid"],[[7472,7472],"mapped",[100]],[[7473,7473],"mapped",[101]],[[7474,7474],"mapped",[477]],[[7475,7475],"mapped",[103]],[[7476,7476],"mapped",[104]],[[7477,7477],"mapped",[105]],[[7478,7478],"mapped",[106]],[[7479,7479],"mapped",[107]],[[7480,7480],"mapped",[108]],[[7481,7481],"mapped",[109]],[[7482,7482],"mapped",[110]],[[7483,7483],"valid"],[[7484,7484],"mapped",[111]],[[7485,7485],"mapped",[547]],[[7486,7486],"mapped",[112]],[[7487,7487],"mapped",[114]],[[7488,7488],"mapped",[116]],[[7489,7489],"mapped",[117]],[[7490,7490],"mapped",[119]],[[7491,7491],"mapped",[97]],[[7492,7492],"mapped",[592]],[[7493,7493],"mapped",[593]],[[7494,7494],"mapped",[7426]],[[7495,7495],"mapped",[98]],[[7496,7496],"mapped",[100]],[[7497,7497],"mapped",[101]],[[7498,7498],"mapped",[601]],[[7499,7499],"mapped",[603]],[[7500,7500],"mapped",[604]],[[7501,7501],"mapped",[103]],[[7502,7502],"valid"],[[7503,7503],"mapped",[107]],[[7504,7504],"mapped",[109]],[[7505,7505],"mapped",[331]],[[7506,7506],"mapped",[111]],[[7507,7507],"mapped",[596]],[[7508,7508],"mapped",[7446]],[[7509,7509],"mapped",[7447]],[[7510,7510],"mapped",[112]],[[7511,7511],"mapped",[116]],[[7512,7512],"mapped",[117]],[[7513,7513],"mapped",[7453]],[[7514,7514],"mapped",[623]],[[7515,7515],"mapped",[118]],[[7516,7516],"mapped",[7461]],[[7517,7517],"mapped",[946]],[[7518,7518],"mapped",[947]],[[7519,7519],"mapped",[948]],[[7520,7520],"mapped",[966]],[[7521,7521],"mapped",[967]],[[7522,7522],"mapped",[105]],[[7523,7523],"mapped",[114]],[[7524,7524],"mapped",[117]],[[7525,7525],"mapped",[118]],[[7526,7526],"mapped",[946]],[[7527,7527],"mapped",[947]],[[7528,7528],"mapped",[961]],[[7529,7529],"mapped",[966]],[[7530,7530],"mapped",[967]],[[7531,7531],"valid"],[[7532,7543],"valid"],[[7544,7544],"mapped",[1085]],[[7545,7578],"valid"],[[7579,7579],"mapped",[594]],[[7580,7580],"mapped",[99]],[[7581,7581],"mapped",[597]],[[7582,7582],"mapped",[240]],[[7583,7583],"mapped",[604]],[[7584,7584],"mapped",[102]],[[7585,7585],"mapped",[607]],[[7586,7586],"mapped",[609]],[[7587,7587],"mapped",[613]],[[7588,7588],"mapped",[616]],[[7589,7589],"mapped",[617]],[[7590,7590],"mapped",[618]],[[7591,7591],"mapped",[7547]],[[7592,7592],"mapped",[669]],[[7593,7593],"mapped",[621]],[[7594,7594],"mapped",[7557]],[[7595,7595],"mapped",[671]],[[7596,7596],"mapped",[625]],[[7597,7597],"mapped",[624]],[[7598,7598],"mapped",[626]],[[7599,7599],"mapped",[627]],[[7600,7600],"mapped",[628]],[[7601,7601],"mapped",[629]],[[7602,7602],"mapped",[632]],[[7603,7603],"mapped",[642]],[[7604,7604],"mapped",[643]],[[7605,7605],"mapped",[427]],[[7606,7606],"mapped",[649]],[[7607,7607],"mapped",[650]],[[7608,7608],"mapped",[7452]],[[7609,7609],"mapped",[651]],[[7610,7610],"mapped",[652]],[[7611,7611],"mapped",[122]],[[7612,7612],"mapped",[656]],[[7613,7613],"mapped",[657]],[[7614,7614],"mapped",[658]],[[7615,7615],"mapped",[952]],[[7616,7619],"valid"],[[7620,7626],"valid"],[[7627,7654],"valid"],[[7655,7669],"valid"],[[7670,7675],"disallowed"],[[7676,7676],"valid"],[[7677,7677],"valid"],[[7678,7679],"valid"],[[7680,7680],"mapped",[7681]],[[7681,7681],"valid"],[[7682,7682],"mapped",[7683]],[[7683,7683],"valid"],[[7684,7684],"mapped",[7685]],[[7685,7685],"valid"],[[7686,7686],"mapped",[7687]],[[7687,7687],"valid"],[[7688,7688],"mapped",[7689]],[[7689,7689],"valid"],[[7690,7690],"mapped",[7691]],[[7691,7691],"valid"],[[7692,7692],"mapped",[7693]],[[7693,7693],"valid"],[[7694,7694],"mapped",[7695]],[[7695,7695],"valid"],[[7696,7696],"mapped",[7697]],[[7697,7697],"valid"],[[7698,7698],"mapped",[7699]],[[7699,7699],"valid"],[[7700,7700],"mapped",[7701]],[[7701,7701],"valid"],[[7702,7702],"mapped",[7703]],[[7703,7703],"valid"],[[7704,7704],"mapped",[7705]],[[7705,7705],"valid"],[[7706,7706],"mapped",[7707]],[[7707,7707],"valid"],[[7708,7708],"mapped",[7709]],[[7709,7709],"valid"],[[7710,7710],"mapped",[7711]],[[7711,7711],"valid"],[[7712,7712],"mapped",[7713]],[[7713,7713],"valid"],[[7714,7714],"mapped",[7715]],[[7715,7715],"valid"],[[7716,7716],"mapped",[7717]],[[7717,7717],"valid"],[[7718,7718],"mapped",[7719]],[[7719,7719],"valid"],[[7720,7720],"mapped",[7721]],[[7721,7721],"valid"],[[7722,7722],"mapped",[7723]],[[7723,7723],"valid"],[[7724,7724],"mapped",[7725]],[[7725,7725],"valid"],[[7726,7726],"mapped",[7727]],[[7727,7727],"valid"],[[7728,7728],"mapped",[7729]],[[7729,7729],"valid"],[[7730,7730],"mapped",[7731]],[[7731,7731],"valid"],[[7732,7732],"mapped",[7733]],[[7733,7733],"valid"],[[7734,7734],"mapped",[7735]],[[7735,7735],"valid"],[[7736,7736],"mapped",[7737]],[[7737,7737],"valid"],[[7738,7738],"mapped",[7739]],[[7739,7739],"valid"],[[7740,7740],"mapped",[7741]],[[7741,7741],"valid"],[[7742,7742],"mapped",[7743]],[[7743,7743],"valid"],[[7744,7744],"mapped",[7745]],[[7745,7745],"valid"],[[7746,7746],"mapped",[7747]],[[7747,7747],"valid"],[[7748,7748],"mapped",[7749]],[[7749,7749],"valid"],[[7750,7750],"mapped",[7751]],[[7751,7751],"valid"],[[7752,7752],"mapped",[7753]],[[7753,7753],"valid"],[[7754,7754],"mapped",[7755]],[[7755,7755],"valid"],[[7756,7756],"mapped",[7757]],[[7757,7757],"valid"],[[7758,7758],"mapped",[7759]],[[7759,7759],"valid"],[[7760,7760],"mapped",[7761]],[[7761,7761],"valid"],[[7762,7762],"mapped",[7763]],[[7763,7763],"valid"],[[7764,7764],"mapped",[7765]],[[7765,7765],"valid"],[[7766,7766],"mapped",[7767]],[[7767,7767],"valid"],[[7768,7768],"mapped",[7769]],[[7769,7769],"valid"],[[7770,7770],"mapped",[7771]],[[7771,7771],"valid"],[[7772,7772],"mapped",[7773]],[[7773,7773],"valid"],[[7774,7774],"mapped",[7775]],[[7775,7775],"valid"],[[7776,7776],"mapped",[7777]],[[7777,7777],"valid"],[[7778,7778],"mapped",[7779]],[[7779,7779],"valid"],[[7780,7780],"mapped",[7781]],[[7781,7781],"valid"],[[7782,7782],"mapped",[7783]],[[7783,7783],"valid"],[[7784,7784],"mapped",[7785]],[[7785,7785],"valid"],[[7786,7786],"mapped",[7787]],[[7787,7787],"valid"],[[7788,7788],"mapped",[7789]],[[7789,7789],"valid"],[[7790,7790],"mapped",[7791]],[[7791,7791],"valid"],[[7792,7792],"mapped",[7793]],[[7793,7793],"valid"],[[7794,7794],"mapped",[7795]],[[7795,7795],"valid"],[[7796,7796],"mapped",[7797]],[[7797,7797],"valid"],[[7798,7798],"mapped",[7799]],[[7799,7799],"valid"],[[7800,7800],"mapped",[7801]],[[7801,7801],"valid"],[[7802,7802],"mapped",[7803]],[[7803,7803],"valid"],[[7804,7804],"mapped",[7805]],[[7805,7805],"valid"],[[7806,7806],"mapped",[7807]],[[7807,7807],"valid"],[[7808,7808],"mapped",[7809]],[[7809,7809],"valid"],[[7810,7810],"mapped",[7811]],[[7811,7811],"valid"],[[7812,7812],"mapped",[7813]],[[7813,7813],"valid"],[[7814,7814],"mapped",[7815]],[[7815,7815],"valid"],[[7816,7816],"mapped",[7817]],[[7817,7817],"valid"],[[7818,7818],"mapped",[7819]],[[7819,7819],"valid"],[[7820,7820],"mapped",[7821]],[[7821,7821],"valid"],[[7822,7822],"mapped",[7823]],[[7823,7823],"valid"],[[7824,7824],"mapped",[7825]],[[7825,7825],"valid"],[[7826,7826],"mapped",[7827]],[[7827,7827],"valid"],[[7828,7828],"mapped",[7829]],[[7829,7833],"valid"],[[7834,7834],"mapped",[97,702]],[[7835,7835],"mapped",[7777]],[[7836,7837],"valid"],[[7838,7838],"mapped",[115,115]],[[7839,7839],"valid"],[[7840,7840],"mapped",[7841]],[[7841,7841],"valid"],[[7842,7842],"mapped",[7843]],[[7843,7843],"valid"],[[7844,7844],"mapped",[7845]],[[7845,7845],"valid"],[[7846,7846],"mapped",[7847]],[[7847,7847],"valid"],[[7848,7848],"mapped",[7849]],[[7849,7849],"valid"],[[7850,7850],"mapped",[7851]],[[7851,7851],"valid"],[[7852,7852],"mapped",[7853]],[[7853,7853],"valid"],[[7854,7854],"mapped",[7855]],[[7855,7855],"valid"],[[7856,7856],"mapped",[7857]],[[7857,7857],"valid"],[[7858,7858],"mapped",[7859]],[[7859,7859],"valid"],[[7860,7860],"mapped",[7861]],[[7861,7861],"valid"],[[7862,7862],"mapped",[7863]],[[7863,7863],"valid"],[[7864,7864],"mapped",[7865]],[[7865,7865],"valid"],[[7866,7866],"mapped",[7867]],[[7867,7867],"valid"],[[7868,7868],"mapped",[7869]],[[7869,7869],"valid"],[[7870,7870],"mapped",[7871]],[[7871,7871],"valid"],[[7872,7872],"mapped",[7873]],[[7873,7873],"valid"],[[7874,7874],"mapped",[7875]],[[7875,7875],"valid"],[[7876,7876],"mapped",[7877]],[[7877,7877],"valid"],[[7878,7878],"mapped",[7879]],[[7879,7879],"valid"],[[7880,7880],"mapped",[7881]],[[7881,7881],"valid"],[[7882,7882],"mapped",[7883]],[[7883,7883],"valid"],[[7884,7884],"mapped",[7885]],[[7885,7885],"valid"],[[7886,7886],"mapped",[7887]],[[7887,7887],"valid"],[[7888,7888],"mapped",[7889]],[[7889,7889],"valid"],[[7890,7890],"mapped",[7891]],[[7891,7891],"valid"],[[7892,7892],"mapped",[7893]],[[7893,7893],"valid"],[[7894,7894],"mapped",[7895]],[[7895,7895],"valid"],[[7896,7896],"mapped",[7897]],[[7897,7897],"valid"],[[7898,7898],"mapped",[7899]],[[7899,7899],"valid"],[[7900,7900],"mapped",[7901]],[[7901,7901],"valid"],[[7902,7902],"mapped",[7903]],[[7903,7903],"valid"],[[7904,7904],"mapped",[7905]],[[7905,7905],"valid"],[[7906,7906],"mapped",[7907]],[[7907,7907],"valid"],[[7908,7908],"mapped",[7909]],[[7909,7909],"valid"],[[7910,7910],"mapped",[7911]],[[7911,7911],"valid"],[[7912,7912],"mapped",[7913]],[[7913,7913],"valid"],[[7914,7914],"mapped",[7915]],[[7915,7915],"valid"],[[7916,7916],"mapped",[7917]],[[7917,7917],"valid"],[[7918,7918],"mapped",[7919]],[[7919,7919],"valid"],[[7920,7920],"mapped",[7921]],[[7921,7921],"valid"],[[7922,7922],"mapped",[7923]],[[7923,7923],"valid"],[[7924,7924],"mapped",[7925]],[[7925,7925],"valid"],[[7926,7926],"mapped",[7927]],[[7927,7927],"valid"],[[7928,7928],"mapped",[7929]],[[7929,7929],"valid"],[[7930,7930],"mapped",[7931]],[[7931,7931],"valid"],[[7932,7932],"mapped",[7933]],[[7933,7933],"valid"],[[7934,7934],"mapped",[7935]],[[7935,7935],"valid"],[[7936,7943],"valid"],[[7944,7944],"mapped",[7936]],[[7945,7945],"mapped",[7937]],[[7946,7946],"mapped",[7938]],[[7947,7947],"mapped",[7939]],[[7948,7948],"mapped",[7940]],[[7949,7949],"mapped",[7941]],[[7950,7950],"mapped",[7942]],[[7951,7951],"mapped",[7943]],[[7952,7957],"valid"],[[7958,7959],"disallowed"],[[7960,7960],"mapped",[7952]],[[7961,7961],"mapped",[7953]],[[7962,7962],"mapped",[7954]],[[7963,7963],"mapped",[7955]],[[7964,7964],"mapped",[7956]],[[7965,7965],"mapped",[7957]],[[7966,7967],"disallowed"],[[7968,7975],"valid"],[[7976,7976],"mapped",[7968]],[[7977,7977],"mapped",[7969]],[[7978,7978],"mapped",[7970]],[[7979,7979],"mapped",[7971]],[[7980,7980],"mapped",[7972]],[[7981,7981],"mapped",[7973]],[[7982,7982],"mapped",[7974]],[[7983,7983],"mapped",[7975]],[[7984,7991],"valid"],[[7992,7992],"mapped",[7984]],[[7993,7993],"mapped",[7985]],[[7994,7994],"mapped",[7986]],[[7995,7995],"mapped",[7987]],[[7996,7996],"mapped",[7988]],[[7997,7997],"mapped",[7989]],[[7998,7998],"mapped",[7990]],[[7999,7999],"mapped",[7991]],[[8000,8005],"valid"],[[8006,8007],"disallowed"],[[8008,8008],"mapped",[8000]],[[8009,8009],"mapped",[8001]],[[8010,8010],"mapped",[8002]],[[8011,8011],"mapped",[8003]],[[8012,8012],"mapped",[8004]],[[8013,8013],"mapped",[8005]],[[8014,8015],"disallowed"],[[8016,8023],"valid"],[[8024,8024],"disallowed"],[[8025,8025],"mapped",[8017]],[[8026,8026],"disallowed"],[[8027,8027],"mapped",[8019]],[[8028,8028],"disallowed"],[[8029,8029],"mapped",[8021]],[[8030,8030],"disallowed"],[[8031,8031],"mapped",[8023]],[[8032,8039],"valid"],[[8040,8040],"mapped",[8032]],[[8041,8041],"mapped",[8033]],[[8042,8042],"mapped",[8034]],[[8043,8043],"mapped",[8035]],[[8044,8044],"mapped",[8036]],[[8045,8045],"mapped",[8037]],[[8046,8046],"mapped",[8038]],[[8047,8047],"mapped",[8039]],[[8048,8048],"valid"],[[8049,8049],"mapped",[940]],[[8050,8050],"valid"],[[8051,8051],"mapped",[941]],[[8052,8052],"valid"],[[8053,8053],"mapped",[942]],[[8054,8054],"valid"],[[8055,8055],"mapped",[943]],[[8056,8056],"valid"],[[8057,8057],"mapped",[972]],[[8058,8058],"valid"],[[8059,8059],"mapped",[973]],[[8060,8060],"valid"],[[8061,8061],"mapped",[974]],[[8062,8063],"disallowed"],[[8064,8064],"mapped",[7936,953]],[[8065,8065],"mapped",[7937,953]],[[8066,8066],"mapped",[7938,953]],[[8067,8067],"mapped",[7939,953]],[[8068,8068],"mapped",[7940,953]],[[8069,8069],"mapped",[7941,953]],[[8070,8070],"mapped",[7942,953]],[[8071,8071],"mapped",[7943,953]],[[8072,8072],"mapped",[7936,953]],[[8073,8073],"mapped",[7937,953]],[[8074,8074],"mapped",[7938,953]],[[8075,8075],"mapped",[7939,953]],[[8076,8076],"mapped",[7940,953]],[[8077,8077],"mapped",[7941,953]],[[8078,8078],"mapped",[7942,953]],[[8079,8079],"mapped",[7943,953]],[[8080,8080],"mapped",[7968,953]],[[8081,8081],"mapped",[7969,953]],[[8082,8082],"mapped",[7970,953]],[[8083,8083],"mapped",[7971,953]],[[8084,8084],"mapped",[7972,953]],[[8085,8085],"mapped",[7973,953]],[[8086,8086],"mapped",[7974,953]],[[8087,8087],"mapped",[7975,953]],[[8088,8088],"mapped",[7968,953]],[[8089,8089],"mapped",[7969,953]],[[8090,8090],"mapped",[7970,953]],[[8091,8091],"mapped",[7971,953]],[[8092,8092],"mapped",[7972,953]],[[8093,8093],"mapped",[7973,953]],[[8094,8094],"mapped",[7974,953]],[[8095,8095],"mapped",[7975,953]],[[8096,8096],"mapped",[8032,953]],[[8097,8097],"mapped",[8033,953]],[[8098,8098],"mapped",[8034,953]],[[8099,8099],"mapped",[8035,953]],[[8100,8100],"mapped",[8036,953]],[[8101,8101],"mapped",[8037,953]],[[8102,8102],"mapped",[8038,953]],[[8103,8103],"mapped",[8039,953]],[[8104,8104],"mapped",[8032,953]],[[8105,8105],"mapped",[8033,953]],[[8106,8106],"mapped",[8034,953]],[[8107,8107],"mapped",[8035,953]],[[8108,8108],"mapped",[8036,953]],[[8109,8109],"mapped",[8037,953]],[[8110,8110],"mapped",[8038,953]],[[8111,8111],"mapped",[8039,953]],[[8112,8113],"valid"],[[8114,8114],"mapped",[8048,953]],[[8115,8115],"mapped",[945,953]],[[8116,8116],"mapped",[940,953]],[[8117,8117],"disallowed"],[[8118,8118],"valid"],[[8119,8119],"mapped",[8118,953]],[[8120,8120],"mapped",[8112]],[[8121,8121],"mapped",[8113]],[[8122,8122],"mapped",[8048]],[[8123,8123],"mapped",[940]],[[8124,8124],"mapped",[945,953]],[[8125,8125],"disallowed_STD3_mapped",[32,787]],[[8126,8126],"mapped",[953]],[[8127,8127],"disallowed_STD3_mapped",[32,787]],[[8128,8128],"disallowed_STD3_mapped",[32,834]],[[8129,8129],"disallowed_STD3_mapped",[32,776,834]],[[8130,8130],"mapped",[8052,953]],[[8131,8131],"mapped",[951,953]],[[8132,8132],"mapped",[942,953]],[[8133,8133],"disallowed"],[[8134,8134],"valid"],[[8135,8135],"mapped",[8134,953]],[[8136,8136],"mapped",[8050]],[[8137,8137],"mapped",[941]],[[8138,8138],"mapped",[8052]],[[8139,8139],"mapped",[942]],[[8140,8140],"mapped",[951,953]],[[8141,8141],"disallowed_STD3_mapped",[32,787,768]],[[8142,8142],"disallowed_STD3_mapped",[32,787,769]],[[8143,8143],"disallowed_STD3_mapped",[32,787,834]],[[8144,8146],"valid"],[[8147,8147],"mapped",[912]],[[8148,8149],"disallowed"],[[8150,8151],"valid"],[[8152,8152],"mapped",[8144]],[[8153,8153],"mapped",[8145]],[[8154,8154],"mapped",[8054]],[[8155,8155],"mapped",[943]],[[8156,8156],"disallowed"],[[8157,8157],"disallowed_STD3_mapped",[32,788,768]],[[8158,8158],"disallowed_STD3_mapped",[32,788,769]],[[8159,8159],"disallowed_STD3_mapped",[32,788,834]],[[8160,8162],"valid"],[[8163,8163],"mapped",[944]],[[8164,8167],"valid"],[[8168,8168],"mapped",[8160]],[[8169,8169],"mapped",[8161]],[[8170,8170],"mapped",[8058]],[[8171,8171],"mapped",[973]],[[8172,8172],"mapped",[8165]],[[8173,8173],"disallowed_STD3_mapped",[32,776,768]],[[8174,8174],"disallowed_STD3_mapped",[32,776,769]],[[8175,8175],"disallowed_STD3_mapped",[96]],[[8176,8177],"disallowed"],[[8178,8178],"mapped",[8060,953]],[[8179,8179],"mapped",[969,953]],[[8180,8180],"mapped",[974,953]],[[8181,8181],"disallowed"],[[8182,8182],"valid"],[[8183,8183],"mapped",[8182,953]],[[8184,8184],"mapped",[8056]],[[8185,8185],"mapped",[972]],[[8186,8186],"mapped",[8060]],[[8187,8187],"mapped",[974]],[[8188,8188],"mapped",[969,953]],[[8189,8189],"disallowed_STD3_mapped",[32,769]],[[8190,8190],"disallowed_STD3_mapped",[32,788]],[[8191,8191],"disallowed"],[[8192,8202],"disallowed_STD3_mapped",[32]],[[8203,8203],"ignored"],[[8204,8205],"deviation",[]],[[8206,8207],"disallowed"],[[8208,8208],"valid",[],"NV8"],[[8209,8209],"mapped",[8208]],[[8210,8214],"valid",[],"NV8"],[[8215,8215],"disallowed_STD3_mapped",[32,819]],[[8216,8227],"valid",[],"NV8"],[[8228,8230],"disallowed"],[[8231,8231],"valid",[],"NV8"],[[8232,8238],"disallowed"],[[8239,8239],"disallowed_STD3_mapped",[32]],[[8240,8242],"valid",[],"NV8"],[[8243,8243],"mapped",[8242,8242]],[[8244,8244],"mapped",[8242,8242,8242]],[[8245,8245],"valid",[],"NV8"],[[8246,8246],"mapped",[8245,8245]],[[8247,8247],"mapped",[8245,8245,8245]],[[8248,8251],"valid",[],"NV8"],[[8252,8252],"disallowed_STD3_mapped",[33,33]],[[8253,8253],"valid",[],"NV8"],[[8254,8254],"disallowed_STD3_mapped",[32,773]],[[8255,8262],"valid",[],"NV8"],[[8263,8263],"disallowed_STD3_mapped",[63,63]],[[8264,8264],"disallowed_STD3_mapped",[63,33]],[[8265,8265],"disallowed_STD3_mapped",[33,63]],[[8266,8269],"valid",[],"NV8"],[[8270,8274],"valid",[],"NV8"],[[8275,8276],"valid",[],"NV8"],[[8277,8278],"valid",[],"NV8"],[[8279,8279],"mapped",[8242,8242,8242,8242]],[[8280,8286],"valid",[],"NV8"],[[8287,8287],"disallowed_STD3_mapped",[32]],[[8288,8288],"ignored"],[[8289,8291],"disallowed"],[[8292,8292],"ignored"],[[8293,8293],"disallowed"],[[8294,8297],"disallowed"],[[8298,8303],"disallowed"],[[8304,8304],"mapped",[48]],[[8305,8305],"mapped",[105]],[[8306,8307],"disallowed"],[[8308,8308],"mapped",[52]],[[8309,8309],"mapped",[53]],[[8310,8310],"mapped",[54]],[[8311,8311],"mapped",[55]],[[8312,8312],"mapped",[56]],[[8313,8313],"mapped",[57]],[[8314,8314],"disallowed_STD3_mapped",[43]],[[8315,8315],"mapped",[8722]],[[8316,8316],"disallowed_STD3_mapped",[61]],[[8317,8317],"disallowed_STD3_mapped",[40]],[[8318,8318],"disallowed_STD3_mapped",[41]],[[8319,8319],"mapped",[110]],[[8320,8320],"mapped",[48]],[[8321,8321],"mapped",[49]],[[8322,8322],"mapped",[50]],[[8323,8323],"mapped",[51]],[[8324,8324],"mapped",[52]],[[8325,8325],"mapped",[53]],[[8326,8326],"mapped",[54]],[[8327,8327],"mapped",[55]],[[8328,8328],"mapped",[56]],[[8329,8329],"mapped",[57]],[[8330,8330],"disallowed_STD3_mapped",[43]],[[8331,8331],"mapped",[8722]],[[8332,8332],"disallowed_STD3_mapped",[61]],[[8333,8333],"disallowed_STD3_mapped",[40]],[[8334,8334],"disallowed_STD3_mapped",[41]],[[8335,8335],"disallowed"],[[8336,8336],"mapped",[97]],[[8337,8337],"mapped",[101]],[[8338,8338],"mapped",[111]],[[8339,8339],"mapped",[120]],[[8340,8340],"mapped",[601]],[[8341,8341],"mapped",[104]],[[8342,8342],"mapped",[107]],[[8343,8343],"mapped",[108]],[[8344,8344],"mapped",[109]],[[8345,8345],"mapped",[110]],[[8346,8346],"mapped",[112]],[[8347,8347],"mapped",[115]],[[8348,8348],"mapped",[116]],[[8349,8351],"disallowed"],[[8352,8359],"valid",[],"NV8"],[[8360,8360],"mapped",[114,115]],[[8361,8362],"valid",[],"NV8"],[[8363,8363],"valid",[],"NV8"],[[8364,8364],"valid",[],"NV8"],[[8365,8367],"valid",[],"NV8"],[[8368,8369],"valid",[],"NV8"],[[8370,8373],"valid",[],"NV8"],[[8374,8376],"valid",[],"NV8"],[[8377,8377],"valid",[],"NV8"],[[8378,8378],"valid",[],"NV8"],[[8379,8381],"valid",[],"NV8"],[[8382,8382],"valid",[],"NV8"],[[8383,8399],"disallowed"],[[8400,8417],"valid",[],"NV8"],[[8418,8419],"valid",[],"NV8"],[[8420,8426],"valid",[],"NV8"],[[8427,8427],"valid",[],"NV8"],[[8428,8431],"valid",[],"NV8"],[[8432,8432],"valid",[],"NV8"],[[8433,8447],"disallowed"],[[8448,8448],"disallowed_STD3_mapped",[97,47,99]],[[8449,8449],"disallowed_STD3_mapped",[97,47,115]],[[8450,8450],"mapped",[99]],[[8451,8451],"mapped",[176,99]],[[8452,8452],"valid",[],"NV8"],[[8453,8453],"disallowed_STD3_mapped",[99,47,111]],[[8454,8454],"disallowed_STD3_mapped",[99,47,117]],[[8455,8455],"mapped",[603]],[[8456,8456],"valid",[],"NV8"],[[8457,8457],"mapped",[176,102]],[[8458,8458],"mapped",[103]],[[8459,8462],"mapped",[104]],[[8463,8463],"mapped",[295]],[[8464,8465],"mapped",[105]],[[8466,8467],"mapped",[108]],[[8468,8468],"valid",[],"NV8"],[[8469,8469],"mapped",[110]],[[8470,8470],"mapped",[110,111]],[[8471,8472],"valid",[],"NV8"],[[8473,8473],"mapped",[112]],[[8474,8474],"mapped",[113]],[[8475,8477],"mapped",[114]],[[8478,8479],"valid",[],"NV8"],[[8480,8480],"mapped",[115,109]],[[8481,8481],"mapped",[116,101,108]],[[8482,8482],"mapped",[116,109]],[[8483,8483],"valid",[],"NV8"],[[8484,8484],"mapped",[122]],[[8485,8485],"valid",[],"NV8"],[[8486,8486],"mapped",[969]],[[8487,8487],"valid",[],"NV8"],[[8488,8488],"mapped",[122]],[[8489,8489],"valid",[],"NV8"],[[8490,8490],"mapped",[107]],[[8491,8491],"mapped",[229]],[[8492,8492],"mapped",[98]],[[8493,8493],"mapped",[99]],[[8494,8494],"valid",[],"NV8"],[[8495,8496],"mapped",[101]],[[8497,8497],"mapped",[102]],[[8498,8498],"disallowed"],[[8499,8499],"mapped",[109]],[[8500,8500],"mapped",[111]],[[8501,8501],"mapped",[1488]],[[8502,8502],"mapped",[1489]],[[8503,8503],"mapped",[1490]],[[8504,8504],"mapped",[1491]],[[8505,8505],"mapped",[105]],[[8506,8506],"valid",[],"NV8"],[[8507,8507],"mapped",[102,97,120]],[[8508,8508],"mapped",[960]],[[8509,8510],"mapped",[947]],[[8511,8511],"mapped",[960]],[[8512,8512],"mapped",[8721]],[[8513,8516],"valid",[],"NV8"],[[8517,8518],"mapped",[100]],[[8519,8519],"mapped",[101]],[[8520,8520],"mapped",[105]],[[8521,8521],"mapped",[106]],[[8522,8523],"valid",[],"NV8"],[[8524,8524],"valid",[],"NV8"],[[8525,8525],"valid",[],"NV8"],[[8526,8526],"valid"],[[8527,8527],"valid",[],"NV8"],[[8528,8528],"mapped",[49,8260,55]],[[8529,8529],"mapped",[49,8260,57]],[[8530,8530],"mapped",[49,8260,49,48]],[[8531,8531],"mapped",[49,8260,51]],[[8532,8532],"mapped",[50,8260,51]],[[8533,8533],"mapped",[49,8260,53]],[[8534,8534],"mapped",[50,8260,53]],[[8535,8535],"mapped",[51,8260,53]],[[8536,8536],"mapped",[52,8260,53]],[[8537,8537],"mapped",[49,8260,54]],[[8538,8538],"mapped",[53,8260,54]],[[8539,8539],"mapped",[49,8260,56]],[[8540,8540],"mapped",[51,8260,56]],[[8541,8541],"mapped",[53,8260,56]],[[8542,8542],"mapped",[55,8260,56]],[[8543,8543],"mapped",[49,8260]],[[8544,8544],"mapped",[105]],[[8545,8545],"mapped",[105,105]],[[8546,8546],"mapped",[105,105,105]],[[8547,8547],"mapped",[105,118]],[[8548,8548],"mapped",[118]],[[8549,8549],"mapped",[118,105]],[[8550,8550],"mapped",[118,105,105]],[[8551,8551],"mapped",[118,105,105,105]],[[8552,8552],"mapped",[105,120]],[[8553,8553],"mapped",[120]],[[8554,8554],"mapped",[120,105]],[[8555,8555],"mapped",[120,105,105]],[[8556,8556],"mapped",[108]],[[8557,8557],"mapped",[99]],[[8558,8558],"mapped",[100]],[[8559,8559],"mapped",[109]],[[8560,8560],"mapped",[105]],[[8561,8561],"mapped",[105,105]],[[8562,8562],"mapped",[105,105,105]],[[8563,8563],"mapped",[105,118]],[[8564,8564],"mapped",[118]],[[8565,8565],"mapped",[118,105]],[[8566,8566],"mapped",[118,105,105]],[[8567,8567],"mapped",[118,105,105,105]],[[8568,8568],"mapped",[105,120]],[[8569,8569],"mapped",[120]],[[8570,8570],"mapped",[120,105]],[[8571,8571],"mapped",[120,105,105]],[[8572,8572],"mapped",[108]],[[8573,8573],"mapped",[99]],[[8574,8574],"mapped",[100]],[[8575,8575],"mapped",[109]],[[8576,8578],"valid",[],"NV8"],[[8579,8579],"disallowed"],[[8580,8580],"valid"],[[8581,8584],"valid",[],"NV8"],[[8585,8585],"mapped",[48,8260,51]],[[8586,8587],"valid",[],"NV8"],[[8588,8591],"disallowed"],[[8592,8682],"valid",[],"NV8"],[[8683,8691],"valid",[],"NV8"],[[8692,8703],"valid",[],"NV8"],[[8704,8747],"valid",[],"NV8"],[[8748,8748],"mapped",[8747,8747]],[[8749,8749],"mapped",[8747,8747,8747]],[[8750,8750],"valid",[],"NV8"],[[8751,8751],"mapped",[8750,8750]],[[8752,8752],"mapped",[8750,8750,8750]],[[8753,8799],"valid",[],"NV8"],[[8800,8800],"disallowed_STD3_valid"],[[8801,8813],"valid",[],"NV8"],[[8814,8815],"disallowed_STD3_valid"],[[8816,8945],"valid",[],"NV8"],[[8946,8959],"valid",[],"NV8"],[[8960,8960],"valid",[],"NV8"],[[8961,8961],"valid",[],"NV8"],[[8962,9000],"valid",[],"NV8"],[[9001,9001],"mapped",[12296]],[[9002,9002],"mapped",[12297]],[[9003,9082],"valid",[],"NV8"],[[9083,9083],"valid",[],"NV8"],[[9084,9084],"valid",[],"NV8"],[[9085,9114],"valid",[],"NV8"],[[9115,9166],"valid",[],"NV8"],[[9167,9168],"valid",[],"NV8"],[[9169,9179],"valid",[],"NV8"],[[9180,9191],"valid",[],"NV8"],[[9192,9192],"valid",[],"NV8"],[[9193,9203],"valid",[],"NV8"],[[9204,9210],"valid",[],"NV8"],[[9211,9215],"disallowed"],[[9216,9252],"valid",[],"NV8"],[[9253,9254],"valid",[],"NV8"],[[9255,9279],"disallowed"],[[9280,9290],"valid",[],"NV8"],[[9291,9311],"disallowed"],[[9312,9312],"mapped",[49]],[[9313,9313],"mapped",[50]],[[9314,9314],"mapped",[51]],[[9315,9315],"mapped",[52]],[[9316,9316],"mapped",[53]],[[9317,9317],"mapped",[54]],[[9318,9318],"mapped",[55]],[[9319,9319],"mapped",[56]],[[9320,9320],"mapped",[57]],[[9321,9321],"mapped",[49,48]],[[9322,9322],"mapped",[49,49]],[[9323,9323],"mapped",[49,50]],[[9324,9324],"mapped",[49,51]],[[9325,9325],"mapped",[49,52]],[[9326,9326],"mapped",[49,53]],[[9327,9327],"mapped",[49,54]],[[9328,9328],"mapped",[49,55]],[[9329,9329],"mapped",[49,56]],[[9330,9330],"mapped",[49,57]],[[9331,9331],"mapped",[50,48]],[[9332,9332],"disallowed_STD3_mapped",[40,49,41]],[[9333,9333],"disallowed_STD3_mapped",[40,50,41]],[[9334,9334],"disallowed_STD3_mapped",[40,51,41]],[[9335,9335],"disallowed_STD3_mapped",[40,52,41]],[[9336,9336],"disallowed_STD3_mapped",[40,53,41]],[[9337,9337],"disallowed_STD3_mapped",[40,54,41]],[[9338,9338],"disallowed_STD3_mapped",[40,55,41]],[[9339,9339],"disallowed_STD3_mapped",[40,56,41]],[[9340,9340],"disallowed_STD3_mapped",[40,57,41]],[[9341,9341],"disallowed_STD3_mapped",[40,49,48,41]],[[9342,9342],"disallowed_STD3_mapped",[40,49,49,41]],[[9343,9343],"disallowed_STD3_mapped",[40,49,50,41]],[[9344,9344],"disallowed_STD3_mapped",[40,49,51,41]],[[9345,9345],"disallowed_STD3_mapped",[40,49,52,41]],[[9346,9346],"disallowed_STD3_mapped",[40,49,53,41]],[[9347,9347],"disallowed_STD3_mapped",[40,49,54,41]],[[9348,9348],"disallowed_STD3_mapped",[40,49,55,41]],[[9349,9349],"disallowed_STD3_mapped",[40,49,56,41]],[[9350,9350],"disallowed_STD3_mapped",[40,49,57,41]],[[9351,9351],"disallowed_STD3_mapped",[40,50,48,41]],[[9352,9371],"disallowed"],[[9372,9372],"disallowed_STD3_mapped",[40,97,41]],[[9373,9373],"disallowed_STD3_mapped",[40,98,41]],[[9374,9374],"disallowed_STD3_mapped",[40,99,41]],[[9375,9375],"disallowed_STD3_mapped",[40,100,41]],[[9376,9376],"disallowed_STD3_mapped",[40,101,41]],[[9377,9377],"disallowed_STD3_mapped",[40,102,41]],[[9378,9378],"disallowed_STD3_mapped",[40,103,41]],[[9379,9379],"disallowed_STD3_mapped",[40,104,41]],[[9380,9380],"disallowed_STD3_mapped",[40,105,41]],[[9381,9381],"disallowed_STD3_mapped",[40,106,41]],[[9382,9382],"disallowed_STD3_mapped",[40,107,41]],[[9383,9383],"disallowed_STD3_mapped",[40,108,41]],[[9384,9384],"disallowed_STD3_mapped",[40,109,41]],[[9385,9385],"disallowed_STD3_mapped",[40,110,41]],[[9386,9386],"disallowed_STD3_mapped",[40,111,41]],[[9387,9387],"disallowed_STD3_mapped",[40,112,41]],[[9388,9388],"disallowed_STD3_mapped",[40,113,41]],[[9389,9389],"disallowed_STD3_mapped",[40,114,41]],[[9390,9390],"disallowed_STD3_mapped",[40,115,41]],[[9391,9391],"disallowed_STD3_mapped",[40,116,41]],[[9392,9392],"disallowed_STD3_mapped",[40,117,41]],[[9393,9393],"disallowed_STD3_mapped",[40,118,41]],[[9394,9394],"disallowed_STD3_mapped",[40,119,41]],[[9395,9395],"disallowed_STD3_mapped",[40,120,41]],[[9396,9396],"disallowed_STD3_mapped",[40,121,41]],[[9397,9397],"disallowed_STD3_mapped",[40,122,41]],[[9398,9398],"mapped",[97]],[[9399,9399],"mapped",[98]],[[9400,9400],"mapped",[99]],[[9401,9401],"mapped",[100]],[[9402,9402],"mapped",[101]],[[9403,9403],"mapped",[102]],[[9404,9404],"mapped",[103]],[[9405,9405],"mapped",[104]],[[9406,9406],"mapped",[105]],[[9407,9407],"mapped",[106]],[[9408,9408],"mapped",[107]],[[9409,9409],"mapped",[108]],[[9410,9410],"mapped",[109]],[[9411,9411],"mapped",[110]],[[9412,9412],"mapped",[111]],[[9413,9413],"mapped",[112]],[[9414,9414],"mapped",[113]],[[9415,9415],"mapped",[114]],[[9416,9416],"mapped",[115]],[[9417,9417],"mapped",[116]],[[9418,9418],"mapped",[117]],[[9419,9419],"mapped",[118]],[[9420,9420],"mapped",[119]],[[9421,9421],"mapped",[120]],[[9422,9422],"mapped",[121]],[[9423,9423],"mapped",[122]],[[9424,9424],"mapped",[97]],[[9425,9425],"mapped",[98]],[[9426,9426],"mapped",[99]],[[9427,9427],"mapped",[100]],[[9428,9428],"mapped",[101]],[[9429,9429],"mapped",[102]],[[9430,9430],"mapped",[103]],[[9431,9431],"mapped",[104]],[[9432,9432],"mapped",[105]],[[9433,9433],"mapped",[106]],[[9434,9434],"mapped",[107]],[[9435,9435],"mapped",[108]],[[9436,9436],"mapped",[109]],[[9437,9437],"mapped",[110]],[[9438,9438],"mapped",[111]],[[9439,9439],"mapped",[112]],[[9440,9440],"mapped",[113]],[[9441,9441],"mapped",[114]],[[9442,9442],"mapped",[115]],[[9443,9443],"mapped",[116]],[[9444,9444],"mapped",[117]],[[9445,9445],"mapped",[118]],[[9446,9446],"mapped",[119]],[[9447,9447],"mapped",[120]],[[9448,9448],"mapped",[121]],[[9449,9449],"mapped",[122]],[[9450,9450],"mapped",[48]],[[9451,9470],"valid",[],"NV8"],[[9471,9471],"valid",[],"NV8"],[[9472,9621],"valid",[],"NV8"],[[9622,9631],"valid",[],"NV8"],[[9632,9711],"valid",[],"NV8"],[[9712,9719],"valid",[],"NV8"],[[9720,9727],"valid",[],"NV8"],[[9728,9747],"valid",[],"NV8"],[[9748,9749],"valid",[],"NV8"],[[9750,9751],"valid",[],"NV8"],[[9752,9752],"valid",[],"NV8"],[[9753,9753],"valid",[],"NV8"],[[9754,9839],"valid",[],"NV8"],[[9840,9841],"valid",[],"NV8"],[[9842,9853],"valid",[],"NV8"],[[9854,9855],"valid",[],"NV8"],[[9856,9865],"valid",[],"NV8"],[[9866,9873],"valid",[],"NV8"],[[9874,9884],"valid",[],"NV8"],[[9885,9885],"valid",[],"NV8"],[[9886,9887],"valid",[],"NV8"],[[9888,9889],"valid",[],"NV8"],[[9890,9905],"valid",[],"NV8"],[[9906,9906],"valid",[],"NV8"],[[9907,9916],"valid",[],"NV8"],[[9917,9919],"valid",[],"NV8"],[[9920,9923],"valid",[],"NV8"],[[9924,9933],"valid",[],"NV8"],[[9934,9934],"valid",[],"NV8"],[[9935,9953],"valid",[],"NV8"],[[9954,9954],"valid",[],"NV8"],[[9955,9955],"valid",[],"NV8"],[[9956,9959],"valid",[],"NV8"],[[9960,9983],"valid",[],"NV8"],[[9984,9984],"valid",[],"NV8"],[[9985,9988],"valid",[],"NV8"],[[9989,9989],"valid",[],"NV8"],[[9990,9993],"valid",[],"NV8"],[[9994,9995],"valid",[],"NV8"],[[9996,10023],"valid",[],"NV8"],[[10024,10024],"valid",[],"NV8"],[[10025,10059],"valid",[],"NV8"],[[10060,10060],"valid",[],"NV8"],[[10061,10061],"valid",[],"NV8"],[[10062,10062],"valid",[],"NV8"],[[10063,10066],"valid",[],"NV8"],[[10067,10069],"valid",[],"NV8"],[[10070,10070],"valid",[],"NV8"],[[10071,10071],"valid",[],"NV8"],[[10072,10078],"valid",[],"NV8"],[[10079,10080],"valid",[],"NV8"],[[10081,10087],"valid",[],"NV8"],[[10088,10101],"valid",[],"NV8"],[[10102,10132],"valid",[],"NV8"],[[10133,10135],"valid",[],"NV8"],[[10136,10159],"valid",[],"NV8"],[[10160,10160],"valid",[],"NV8"],[[10161,10174],"valid",[],"NV8"],[[10175,10175],"valid",[],"NV8"],[[10176,10182],"valid",[],"NV8"],[[10183,10186],"valid",[],"NV8"],[[10187,10187],"valid",[],"NV8"],[[10188,10188],"valid",[],"NV8"],[[10189,10189],"valid",[],"NV8"],[[10190,10191],"valid",[],"NV8"],[[10192,10219],"valid",[],"NV8"],[[10220,10223],"valid",[],"NV8"],[[10224,10239],"valid",[],"NV8"],[[10240,10495],"valid",[],"NV8"],[[10496,10763],"valid",[],"NV8"],[[10764,10764],"mapped",[8747,8747,8747,8747]],[[10765,10867],"valid",[],"NV8"],[[10868,10868],"disallowed_STD3_mapped",[58,58,61]],[[10869,10869],"disallowed_STD3_mapped",[61,61]],[[10870,10870],"disallowed_STD3_mapped",[61,61,61]],[[10871,10971],"valid",[],"NV8"],[[10972,10972],"mapped",[10973,824]],[[10973,11007],"valid",[],"NV8"],[[11008,11021],"valid",[],"NV8"],[[11022,11027],"valid",[],"NV8"],[[11028,11034],"valid",[],"NV8"],[[11035,11039],"valid",[],"NV8"],[[11040,11043],"valid",[],"NV8"],[[11044,11084],"valid",[],"NV8"],[[11085,11087],"valid",[],"NV8"],[[11088,11092],"valid",[],"NV8"],[[11093,11097],"valid",[],"NV8"],[[11098,11123],"valid",[],"NV8"],[[11124,11125],"disallowed"],[[11126,11157],"valid",[],"NV8"],[[11158,11159],"disallowed"],[[11160,11193],"valid",[],"NV8"],[[11194,11196],"disallowed"],[[11197,11208],"valid",[],"NV8"],[[11209,11209],"disallowed"],[[11210,11217],"valid",[],"NV8"],[[11218,11243],"disallowed"],[[11244,11247],"valid",[],"NV8"],[[11248,11263],"disallowed"],[[11264,11264],"mapped",[11312]],[[11265,11265],"mapped",[11313]],[[11266,11266],"mapped",[11314]],[[11267,11267],"mapped",[11315]],[[11268,11268],"mapped",[11316]],[[11269,11269],"mapped",[11317]],[[11270,11270],"mapped",[11318]],[[11271,11271],"mapped",[11319]],[[11272,11272],"mapped",[11320]],[[11273,11273],"mapped",[11321]],[[11274,11274],"mapped",[11322]],[[11275,11275],"mapped",[11323]],[[11276,11276],"mapped",[11324]],[[11277,11277],"mapped",[11325]],[[11278,11278],"mapped",[11326]],[[11279,11279],"mapped",[11327]],[[11280,11280],"mapped",[11328]],[[11281,11281],"mapped",[11329]],[[11282,11282],"mapped",[11330]],[[11283,11283],"mapped",[11331]],[[11284,11284],"mapped",[11332]],[[11285,11285],"mapped",[11333]],[[11286,11286],"mapped",[11334]],[[11287,11287],"mapped",[11335]],[[11288,11288],"mapped",[11336]],[[11289,11289],"mapped",[11337]],[[11290,11290],"mapped",[11338]],[[11291,11291],"mapped",[11339]],[[11292,11292],"mapped",[11340]],[[11293,11293],"mapped",[11341]],[[11294,11294],"mapped",[11342]],[[11295,11295],"mapped",[11343]],[[11296,11296],"mapped",[11344]],[[11297,11297],"mapped",[11345]],[[11298,11298],"mapped",[11346]],[[11299,11299],"mapped",[11347]],[[11300,11300],"mapped",[11348]],[[11301,11301],"mapped",[11349]],[[11302,11302],"mapped",[11350]],[[11303,11303],"mapped",[11351]],[[11304,11304],"mapped",[11352]],[[11305,11305],"mapped",[11353]],[[11306,11306],"mapped",[11354]],[[11307,11307],"mapped",[11355]],[[11308,11308],"mapped",[11356]],[[11309,11309],"mapped",[11357]],[[11310,11310],"mapped",[11358]],[[11311,11311],"disallowed"],[[11312,11358],"valid"],[[11359,11359],"disallowed"],[[11360,11360],"mapped",[11361]],[[11361,11361],"valid"],[[11362,11362],"mapped",[619]],[[11363,11363],"mapped",[7549]],[[11364,11364],"mapped",[637]],[[11365,11366],"valid"],[[11367,11367],"mapped",[11368]],[[11368,11368],"valid"],[[11369,11369],"mapped",[11370]],[[11370,11370],"valid"],[[11371,11371],"mapped",[11372]],[[11372,11372],"valid"],[[11373,11373],"mapped",[593]],[[11374,11374],"mapped",[625]],[[11375,11375],"mapped",[592]],[[11376,11376],"mapped",[594]],[[11377,11377],"valid"],[[11378,11378],"mapped",[11379]],[[11379,11379],"valid"],[[11380,11380],"valid"],[[11381,11381],"mapped",[11382]],[[11382,11383],"valid"],[[11384,11387],"valid"],[[11388,11388],"mapped",[106]],[[11389,11389],"mapped",[118]],[[11390,11390],"mapped",[575]],[[11391,11391],"mapped",[576]],[[11392,11392],"mapped",[11393]],[[11393,11393],"valid"],[[11394,11394],"mapped",[11395]],[[11395,11395],"valid"],[[11396,11396],"mapped",[11397]],[[11397,11397],"valid"],[[11398,11398],"mapped",[11399]],[[11399,11399],"valid"],[[11400,11400],"mapped",[11401]],[[11401,11401],"valid"],[[11402,11402],"mapped",[11403]],[[11403,11403],"valid"],[[11404,11404],"mapped",[11405]],[[11405,11405],"valid"],[[11406,11406],"mapped",[11407]],[[11407,11407],"valid"],[[11408,11408],"mapped",[11409]],[[11409,11409],"valid"],[[11410,11410],"mapped",[11411]],[[11411,11411],"valid"],[[11412,11412],"mapped",[11413]],[[11413,11413],"valid"],[[11414,11414],"mapped",[11415]],[[11415,11415],"valid"],[[11416,11416],"mapped",[11417]],[[11417,11417],"valid"],[[11418,11418],"mapped",[11419]],[[11419,11419],"valid"],[[11420,11420],"mapped",[11421]],[[11421,11421],"valid"],[[11422,11422],"mapped",[11423]],[[11423,11423],"valid"],[[11424,11424],"mapped",[11425]],[[11425,11425],"valid"],[[11426,11426],"mapped",[11427]],[[11427,11427],"valid"],[[11428,11428],"mapped",[11429]],[[11429,11429],"valid"],[[11430,11430],"mapped",[11431]],[[11431,11431],"valid"],[[11432,11432],"mapped",[11433]],[[11433,11433],"valid"],[[11434,11434],"mapped",[11435]],[[11435,11435],"valid"],[[11436,11436],"mapped",[11437]],[[11437,11437],"valid"],[[11438,11438],"mapped",[11439]],[[11439,11439],"valid"],[[11440,11440],"mapped",[11441]],[[11441,11441],"valid"],[[11442,11442],"mapped",[11443]],[[11443,11443],"valid"],[[11444,11444],"mapped",[11445]],[[11445,11445],"valid"],[[11446,11446],"mapped",[11447]],[[11447,11447],"valid"],[[11448,11448],"mapped",[11449]],[[11449,11449],"valid"],[[11450,11450],"mapped",[11451]],[[11451,11451],"valid"],[[11452,11452],"mapped",[11453]],[[11453,11453],"valid"],[[11454,11454],"mapped",[11455]],[[11455,11455],"valid"],[[11456,11456],"mapped",[11457]],[[11457,11457],"valid"],[[11458,11458],"mapped",[11459]],[[11459,11459],"valid"],[[11460,11460],"mapped",[11461]],[[11461,11461],"valid"],[[11462,11462],"mapped",[11463]],[[11463,11463],"valid"],[[11464,11464],"mapped",[11465]],[[11465,11465],"valid"],[[11466,11466],"mapped",[11467]],[[11467,11467],"valid"],[[11468,11468],"mapped",[11469]],[[11469,11469],"valid"],[[11470,11470],"mapped",[11471]],[[11471,11471],"valid"],[[11472,11472],"mapped",[11473]],[[11473,11473],"valid"],[[11474,11474],"mapped",[11475]],[[11475,11475],"valid"],[[11476,11476],"mapped",[11477]],[[11477,11477],"valid"],[[11478,11478],"mapped",[11479]],[[11479,11479],"valid"],[[11480,11480],"mapped",[11481]],[[11481,11481],"valid"],[[11482,11482],"mapped",[11483]],[[11483,11483],"valid"],[[11484,11484],"mapped",[11485]],[[11485,11485],"valid"],[[11486,11486],"mapped",[11487]],[[11487,11487],"valid"],[[11488,11488],"mapped",[11489]],[[11489,11489],"valid"],[[11490,11490],"mapped",[11491]],[[11491,11492],"valid"],[[11493,11498],"valid",[],"NV8"],[[11499,11499],"mapped",[11500]],[[11500,11500],"valid"],[[11501,11501],"mapped",[11502]],[[11502,11505],"valid"],[[11506,11506],"mapped",[11507]],[[11507,11507],"valid"],[[11508,11512],"disallowed"],[[11513,11519],"valid",[],"NV8"],[[11520,11557],"valid"],[[11558,11558],"disallowed"],[[11559,11559],"valid"],[[11560,11564],"disallowed"],[[11565,11565],"valid"],[[11566,11567],"disallowed"],[[11568,11621],"valid"],[[11622,11623],"valid"],[[11624,11630],"disallowed"],[[11631,11631],"mapped",[11617]],[[11632,11632],"valid",[],"NV8"],[[11633,11646],"disallowed"],[[11647,11647],"valid"],[[11648,11670],"valid"],[[11671,11679],"disallowed"],[[11680,11686],"valid"],[[11687,11687],"disallowed"],[[11688,11694],"valid"],[[11695,11695],"disallowed"],[[11696,11702],"valid"],[[11703,11703],"disallowed"],[[11704,11710],"valid"],[[11711,11711],"disallowed"],[[11712,11718],"valid"],[[11719,11719],"disallowed"],[[11720,11726],"valid"],[[11727,11727],"disallowed"],[[11728,11734],"valid"],[[11735,11735],"disallowed"],[[11736,11742],"valid"],[[11743,11743],"disallowed"],[[11744,11775],"valid"],[[11776,11799],"valid",[],"NV8"],[[11800,11803],"valid",[],"NV8"],[[11804,11805],"valid",[],"NV8"],[[11806,11822],"valid",[],"NV8"],[[11823,11823],"valid"],[[11824,11824],"valid",[],"NV8"],[[11825,11825],"valid",[],"NV8"],[[11826,11835],"valid",[],"NV8"],[[11836,11842],"valid",[],"NV8"],[[11843,11903],"disallowed"],[[11904,11929],"valid",[],"NV8"],[[11930,11930],"disallowed"],[[11931,11934],"valid",[],"NV8"],[[11935,11935],"mapped",[27597]],[[11936,12018],"valid",[],"NV8"],[[12019,12019],"mapped",[40863]],[[12020,12031],"disallowed"],[[12032,12032],"mapped",[19968]],[[12033,12033],"mapped",[20008]],[[12034,12034],"mapped",[20022]],[[12035,12035],"mapped",[20031]],[[12036,12036],"mapped",[20057]],[[12037,12037],"mapped",[20101]],[[12038,12038],"mapped",[20108]],[[12039,12039],"mapped",[20128]],[[12040,12040],"mapped",[20154]],[[12041,12041],"mapped",[20799]],[[12042,12042],"mapped",[20837]],[[12043,12043],"mapped",[20843]],[[12044,12044],"mapped",[20866]],[[12045,12045],"mapped",[20886]],[[12046,12046],"mapped",[20907]],[[12047,12047],"mapped",[20960]],[[12048,12048],"mapped",[20981]],[[12049,12049],"mapped",[20992]],[[12050,12050],"mapped",[21147]],[[12051,12051],"mapped",[21241]],[[12052,12052],"mapped",[21269]],[[12053,12053],"mapped",[21274]],[[12054,12054],"mapped",[21304]],[[12055,12055],"mapped",[21313]],[[12056,12056],"mapped",[21340]],[[12057,12057],"mapped",[21353]],[[12058,12058],"mapped",[21378]],[[12059,12059],"mapped",[21430]],[[12060,12060],"mapped",[21448]],[[12061,12061],"mapped",[21475]],[[12062,12062],"mapped",[22231]],[[12063,12063],"mapped",[22303]],[[12064,12064],"mapped",[22763]],[[12065,12065],"mapped",[22786]],[[12066,12066],"mapped",[22794]],[[12067,12067],"mapped",[22805]],[[12068,12068],"mapped",[22823]],[[12069,12069],"mapped",[22899]],[[12070,12070],"mapped",[23376]],[[12071,12071],"mapped",[23424]],[[12072,12072],"mapped",[23544]],[[12073,12073],"mapped",[23567]],[[12074,12074],"mapped",[23586]],[[12075,12075],"mapped",[23608]],[[12076,12076],"mapped",[23662]],[[12077,12077],"mapped",[23665]],[[12078,12078],"mapped",[24027]],[[12079,12079],"mapped",[24037]],[[12080,12080],"mapped",[24049]],[[12081,12081],"mapped",[24062]],[[12082,12082],"mapped",[24178]],[[12083,12083],"mapped",[24186]],[[12084,12084],"mapped",[24191]],[[12085,12085],"mapped",[24308]],[[12086,12086],"mapped",[24318]],[[12087,12087],"mapped",[24331]],[[12088,12088],"mapped",[24339]],[[12089,12089],"mapped",[24400]],[[12090,12090],"mapped",[24417]],[[12091,12091],"mapped",[24435]],[[12092,12092],"mapped",[24515]],[[12093,12093],"mapped",[25096]],[[12094,12094],"mapped",[25142]],[[12095,12095],"mapped",[25163]],[[12096,12096],"mapped",[25903]],[[12097,12097],"mapped",[25908]],[[12098,12098],"mapped",[25991]],[[12099,12099],"mapped",[26007]],[[12100,12100],"mapped",[26020]],[[12101,12101],"mapped",[26041]],[[12102,12102],"mapped",[26080]],[[12103,12103],"mapped",[26085]],[[12104,12104],"mapped",[26352]],[[12105,12105],"mapped",[26376]],[[12106,12106],"mapped",[26408]],[[12107,12107],"mapped",[27424]],[[12108,12108],"mapped",[27490]],[[12109,12109],"mapped",[27513]],[[12110,12110],"mapped",[27571]],[[12111,12111],"mapped",[27595]],[[12112,12112],"mapped",[27604]],[[12113,12113],"mapped",[27611]],[[12114,12114],"mapped",[27663]],[[12115,12115],"mapped",[27668]],[[12116,12116],"mapped",[27700]],[[12117,12117],"mapped",[28779]],[[12118,12118],"mapped",[29226]],[[12119,12119],"mapped",[29238]],[[12120,12120],"mapped",[29243]],[[12121,12121],"mapped",[29247]],[[12122,12122],"mapped",[29255]],[[12123,12123],"mapped",[29273]],[[12124,12124],"mapped",[29275]],[[12125,12125],"mapped",[29356]],[[12126,12126],"mapped",[29572]],[[12127,12127],"mapped",[29577]],[[12128,12128],"mapped",[29916]],[[12129,12129],"mapped",[29926]],[[12130,12130],"mapped",[29976]],[[12131,12131],"mapped",[29983]],[[12132,12132],"mapped",[29992]],[[12133,12133],"mapped",[30000]],[[12134,12134],"mapped",[30091]],[[12135,12135],"mapped",[30098]],[[12136,12136],"mapped",[30326]],[[12137,12137],"mapped",[30333]],[[12138,12138],"mapped",[30382]],[[12139,12139],"mapped",[30399]],[[12140,12140],"mapped",[30446]],[[12141,12141],"mapped",[30683]],[[12142,12142],"mapped",[30690]],[[12143,12143],"mapped",[30707]],[[12144,12144],"mapped",[31034]],[[12145,12145],"mapped",[31160]],[[12146,12146],"mapped",[31166]],[[12147,12147],"mapped",[31348]],[[12148,12148],"mapped",[31435]],[[12149,12149],"mapped",[31481]],[[12150,12150],"mapped",[31859]],[[12151,12151],"mapped",[31992]],[[12152,12152],"mapped",[32566]],[[12153,12153],"mapped",[32593]],[[12154,12154],"mapped",[32650]],[[12155,12155],"mapped",[32701]],[[12156,12156],"mapped",[32769]],[[12157,12157],"mapped",[32780]],[[12158,12158],"mapped",[32786]],[[12159,12159],"mapped",[32819]],[[12160,12160],"mapped",[32895]],[[12161,12161],"mapped",[32905]],[[12162,12162],"mapped",[33251]],[[12163,12163],"mapped",[33258]],[[12164,12164],"mapped",[33267]],[[12165,12165],"mapped",[33276]],[[12166,12166],"mapped",[33292]],[[12167,12167],"mapped",[33307]],[[12168,12168],"mapped",[33311]],[[12169,12169],"mapped",[33390]],[[12170,12170],"mapped",[33394]],[[12171,12171],"mapped",[33400]],[[12172,12172],"mapped",[34381]],[[12173,12173],"mapped",[34411]],[[12174,12174],"mapped",[34880]],[[12175,12175],"mapped",[34892]],[[12176,12176],"mapped",[34915]],[[12177,12177],"mapped",[35198]],[[12178,12178],"mapped",[35211]],[[12179,12179],"mapped",[35282]],[[12180,12180],"mapped",[35328]],[[12181,12181],"mapped",[35895]],[[12182,12182],"mapped",[35910]],[[12183,12183],"mapped",[35925]],[[12184,12184],"mapped",[35960]],[[12185,12185],"mapped",[35997]],[[12186,12186],"mapped",[36196]],[[12187,12187],"mapped",[36208]],[[12188,12188],"mapped",[36275]],[[12189,12189],"mapped",[36523]],[[12190,12190],"mapped",[36554]],[[12191,12191],"mapped",[36763]],[[12192,12192],"mapped",[36784]],[[12193,12193],"mapped",[36789]],[[12194,12194],"mapped",[37009]],[[12195,12195],"mapped",[37193]],[[12196,12196],"mapped",[37318]],[[12197,12197],"mapped",[37324]],[[12198,12198],"mapped",[37329]],[[12199,12199],"mapped",[38263]],[[12200,12200],"mapped",[38272]],[[12201,12201],"mapped",[38428]],[[12202,12202],"mapped",[38582]],[[12203,12203],"mapped",[38585]],[[12204,12204],"mapped",[38632]],[[12205,12205],"mapped",[38737]],[[12206,12206],"mapped",[38750]],[[12207,12207],"mapped",[38754]],[[12208,12208],"mapped",[38761]],[[12209,12209],"mapped",[38859]],[[12210,12210],"mapped",[38893]],[[12211,12211],"mapped",[38899]],[[12212,12212],"mapped",[38913]],[[12213,12213],"mapped",[39080]],[[12214,12214],"mapped",[39131]],[[12215,12215],"mapped",[39135]],[[12216,12216],"mapped",[39318]],[[12217,12217],"mapped",[39321]],[[12218,12218],"mapped",[39340]],[[12219,12219],"mapped",[39592]],[[12220,12220],"mapped",[39640]],[[12221,12221],"mapped",[39647]],[[12222,12222],"mapped",[39717]],[[12223,12223],"mapped",[39727]],[[12224,12224],"mapped",[39730]],[[12225,12225],"mapped",[39740]],[[12226,12226],"mapped",[39770]],[[12227,12227],"mapped",[40165]],[[12228,12228],"mapped",[40565]],[[12229,12229],"mapped",[40575]],[[12230,12230],"mapped",[40613]],[[12231,12231],"mapped",[40635]],[[12232,12232],"mapped",[40643]],[[12233,12233],"mapped",[40653]],[[12234,12234],"mapped",[40657]],[[12235,12235],"mapped",[40697]],[[12236,12236],"mapped",[40701]],[[12237,12237],"mapped",[40718]],[[12238,12238],"mapped",[40723]],[[12239,12239],"mapped",[40736]],[[12240,12240],"mapped",[40763]],[[12241,12241],"mapped",[40778]],[[12242,12242],"mapped",[40786]],[[12243,12243],"mapped",[40845]],[[12244,12244],"mapped",[40860]],[[12245,12245],"mapped",[40864]],[[12246,12271],"disallowed"],[[12272,12283],"disallowed"],[[12284,12287],"disallowed"],[[12288,12288],"disallowed_STD3_mapped",[32]],[[12289,12289],"valid",[],"NV8"],[[12290,12290],"mapped",[46]],[[12291,12292],"valid",[],"NV8"],[[12293,12295],"valid"],[[12296,12329],"valid",[],"NV8"],[[12330,12333],"valid"],[[12334,12341],"valid",[],"NV8"],[[12342,12342],"mapped",[12306]],[[12343,12343],"valid",[],"NV8"],[[12344,12344],"mapped",[21313]],[[12345,12345],"mapped",[21316]],[[12346,12346],"mapped",[21317]],[[12347,12347],"valid",[],"NV8"],[[12348,12348],"valid"],[[12349,12349],"valid",[],"NV8"],[[12350,12350],"valid",[],"NV8"],[[12351,12351],"valid",[],"NV8"],[[12352,12352],"disallowed"],[[12353,12436],"valid"],[[12437,12438],"valid"],[[12439,12440],"disallowed"],[[12441,12442],"valid"],[[12443,12443],"disallowed_STD3_mapped",[32,12441]],[[12444,12444],"disallowed_STD3_mapped",[32,12442]],[[12445,12446],"valid"],[[12447,12447],"mapped",[12424,12426]],[[12448,12448],"valid",[],"NV8"],[[12449,12542],"valid"],[[12543,12543],"mapped",[12467,12488]],[[12544,12548],"disallowed"],[[12549,12588],"valid"],[[12589,12589],"valid"],[[12590,12592],"disallowed"],[[12593,12593],"mapped",[4352]],[[12594,12594],"mapped",[4353]],[[12595,12595],"mapped",[4522]],[[12596,12596],"mapped",[4354]],[[12597,12597],"mapped",[4524]],[[12598,12598],"mapped",[4525]],[[12599,12599],"mapped",[4355]],[[12600,12600],"mapped",[4356]],[[12601,12601],"mapped",[4357]],[[12602,12602],"mapped",[4528]],[[12603,12603],"mapped",[4529]],[[12604,12604],"mapped",[4530]],[[12605,12605],"mapped",[4531]],[[12606,12606],"mapped",[4532]],[[12607,12607],"mapped",[4533]],[[12608,12608],"mapped",[4378]],[[12609,12609],"mapped",[4358]],[[12610,12610],"mapped",[4359]],[[12611,12611],"mapped",[4360]],[[12612,12612],"mapped",[4385]],[[12613,12613],"mapped",[4361]],[[12614,12614],"mapped",[4362]],[[12615,12615],"mapped",[4363]],[[12616,12616],"mapped",[4364]],[[12617,12617],"mapped",[4365]],[[12618,12618],"mapped",[4366]],[[12619,12619],"mapped",[4367]],[[12620,12620],"mapped",[4368]],[[12621,12621],"mapped",[4369]],[[12622,12622],"mapped",[4370]],[[12623,12623],"mapped",[4449]],[[12624,12624],"mapped",[4450]],[[12625,12625],"mapped",[4451]],[[12626,12626],"mapped",[4452]],[[12627,12627],"mapped",[4453]],[[12628,12628],"mapped",[4454]],[[12629,12629],"mapped",[4455]],[[12630,12630],"mapped",[4456]],[[12631,12631],"mapped",[4457]],[[12632,12632],"mapped",[4458]],[[12633,12633],"mapped",[4459]],[[12634,12634],"mapped",[4460]],[[12635,12635],"mapped",[4461]],[[12636,12636],"mapped",[4462]],[[12637,12637],"mapped",[4463]],[[12638,12638],"mapped",[4464]],[[12639,12639],"mapped",[4465]],[[12640,12640],"mapped",[4466]],[[12641,12641],"mapped",[4467]],[[12642,12642],"mapped",[4468]],[[12643,12643],"mapped",[4469]],[[12644,12644],"disallowed"],[[12645,12645],"mapped",[4372]],[[12646,12646],"mapped",[4373]],[[12647,12647],"mapped",[4551]],[[12648,12648],"mapped",[4552]],[[12649,12649],"mapped",[4556]],[[12650,12650],"mapped",[4558]],[[12651,12651],"mapped",[4563]],[[12652,12652],"mapped",[4567]],[[12653,12653],"mapped",[4569]],[[12654,12654],"mapped",[4380]],[[12655,12655],"mapped",[4573]],[[12656,12656],"mapped",[4575]],[[12657,12657],"mapped",[4381]],[[12658,12658],"mapped",[4382]],[[12659,12659],"mapped",[4384]],[[12660,12660],"mapped",[4386]],[[12661,12661],"mapped",[4387]],[[12662,12662],"mapped",[4391]],[[12663,12663],"mapped",[4393]],[[12664,12664],"mapped",[4395]],[[12665,12665],"mapped",[4396]],[[12666,12666],"mapped",[4397]],[[12667,12667],"mapped",[4398]],[[12668,12668],"mapped",[4399]],[[12669,12669],"mapped",[4402]],[[12670,12670],"mapped",[4406]],[[12671,12671],"mapped",[4416]],[[12672,12672],"mapped",[4423]],[[12673,12673],"mapped",[4428]],[[12674,12674],"mapped",[4593]],[[12675,12675],"mapped",[4594]],[[12676,12676],"mapped",[4439]],[[12677,12677],"mapped",[4440]],[[12678,12678],"mapped",[4441]],[[12679,12679],"mapped",[4484]],[[12680,12680],"mapped",[4485]],[[12681,12681],"mapped",[4488]],[[12682,12682],"mapped",[4497]],[[12683,12683],"mapped",[4498]],[[12684,12684],"mapped",[4500]],[[12685,12685],"mapped",[4510]],[[12686,12686],"mapped",[4513]],[[12687,12687],"disallowed"],[[12688,12689],"valid",[],"NV8"],[[12690,12690],"mapped",[19968]],[[12691,12691],"mapped",[20108]],[[12692,12692],"mapped",[19977]],[[12693,12693],"mapped",[22235]],[[12694,12694],"mapped",[19978]],[[12695,12695],"mapped",[20013]],[[12696,12696],"mapped",[19979]],[[12697,12697],"mapped",[30002]],[[12698,12698],"mapped",[20057]],[[12699,12699],"mapped",[19993]],[[12700,12700],"mapped",[19969]],[[12701,12701],"mapped",[22825]],[[12702,12702],"mapped",[22320]],[[12703,12703],"mapped",[20154]],[[12704,12727],"valid"],[[12728,12730],"valid"],[[12731,12735],"disallowed"],[[12736,12751],"valid",[],"NV8"],[[12752,12771],"valid",[],"NV8"],[[12772,12783],"disallowed"],[[12784,12799],"valid"],[[12800,12800],"disallowed_STD3_mapped",[40,4352,41]],[[12801,12801],"disallowed_STD3_mapped",[40,4354,41]],[[12802,12802],"disallowed_STD3_mapped",[40,4355,41]],[[12803,12803],"disallowed_STD3_mapped",[40,4357,41]],[[12804,12804],"disallowed_STD3_mapped",[40,4358,41]],[[12805,12805],"disallowed_STD3_mapped",[40,4359,41]],[[12806,12806],"disallowed_STD3_mapped",[40,4361,41]],[[12807,12807],"disallowed_STD3_mapped",[40,4363,41]],[[12808,12808],"disallowed_STD3_mapped",[40,4364,41]],[[12809,12809],"disallowed_STD3_mapped",[40,4366,41]],[[12810,12810],"disallowed_STD3_mapped",[40,4367,41]],[[12811,12811],"disallowed_STD3_mapped",[40,4368,41]],[[12812,12812],"disallowed_STD3_mapped",[40,4369,41]],[[12813,12813],"disallowed_STD3_mapped",[40,4370,41]],[[12814,12814],"disallowed_STD3_mapped",[40,44032,41]],[[12815,12815],"disallowed_STD3_mapped",[40,45208,41]],[[12816,12816],"disallowed_STD3_mapped",[40,45796,41]],[[12817,12817],"disallowed_STD3_mapped",[40,46972,41]],[[12818,12818],"disallowed_STD3_mapped",[40,47560,41]],[[12819,12819],"disallowed_STD3_mapped",[40,48148,41]],[[12820,12820],"disallowed_STD3_mapped",[40,49324,41]],[[12821,12821],"disallowed_STD3_mapped",[40,50500,41]],[[12822,12822],"disallowed_STD3_mapped",[40,51088,41]],[[12823,12823],"disallowed_STD3_mapped",[40,52264,41]],[[12824,12824],"disallowed_STD3_mapped",[40,52852,41]],[[12825,12825],"disallowed_STD3_mapped",[40,53440,41]],[[12826,12826],"disallowed_STD3_mapped",[40,54028,41]],[[12827,12827],"disallowed_STD3_mapped",[40,54616,41]],[[12828,12828],"disallowed_STD3_mapped",[40,51452,41]],[[12829,12829],"disallowed_STD3_mapped",[40,50724,51204,41]],[[12830,12830],"disallowed_STD3_mapped",[40,50724,54980,41]],[[12831,12831],"disallowed"],[[12832,12832],"disallowed_STD3_mapped",[40,19968,41]],[[12833,12833],"disallowed_STD3_mapped",[40,20108,41]],[[12834,12834],"disallowed_STD3_mapped",[40,19977,41]],[[12835,12835],"disallowed_STD3_mapped",[40,22235,41]],[[12836,12836],"disallowed_STD3_mapped",[40,20116,41]],[[12837,12837],"disallowed_STD3_mapped",[40,20845,41]],[[12838,12838],"disallowed_STD3_mapped",[40,19971,41]],[[12839,12839],"disallowed_STD3_mapped",[40,20843,41]],[[12840,12840],"disallowed_STD3_mapped",[40,20061,41]],[[12841,12841],"disallowed_STD3_mapped",[40,21313,41]],[[12842,12842],"disallowed_STD3_mapped",[40,26376,41]],[[12843,12843],"disallowed_STD3_mapped",[40,28779,41]],[[12844,12844],"disallowed_STD3_mapped",[40,27700,41]],[[12845,12845],"disallowed_STD3_mapped",[40,26408,41]],[[12846,12846],"disallowed_STD3_mapped",[40,37329,41]],[[12847,12847],"disallowed_STD3_mapped",[40,22303,41]],[[12848,12848],"disallowed_STD3_mapped",[40,26085,41]],[[12849,12849],"disallowed_STD3_mapped",[40,26666,41]],[[12850,12850],"disallowed_STD3_mapped",[40,26377,41]],[[12851,12851],"disallowed_STD3_mapped",[40,31038,41]],[[12852,12852],"disallowed_STD3_mapped",[40,21517,41]],[[12853,12853],"disallowed_STD3_mapped",[40,29305,41]],[[12854,12854],"disallowed_STD3_mapped",[40,36001,41]],[[12855,12855],"disallowed_STD3_mapped",[40,31069,41]],[[12856,12856],"disallowed_STD3_mapped",[40,21172,41]],[[12857,12857],"disallowed_STD3_mapped",[40,20195,41]],[[12858,12858],"disallowed_STD3_mapped",[40,21628,41]],[[12859,12859],"disallowed_STD3_mapped",[40,23398,41]],[[12860,12860],"disallowed_STD3_mapped",[40,30435,41]],[[12861,12861],"disallowed_STD3_mapped",[40,20225,41]],[[12862,12862],"disallowed_STD3_mapped",[40,36039,41]],[[12863,12863],"disallowed_STD3_mapped",[40,21332,41]],[[12864,12864],"disallowed_STD3_mapped",[40,31085,41]],[[12865,12865],"disallowed_STD3_mapped",[40,20241,41]],[[12866,12866],"disallowed_STD3_mapped",[40,33258,41]],[[12867,12867],"disallowed_STD3_mapped",[40,33267,41]],[[12868,12868],"mapped",[21839]],[[12869,12869],"mapped",[24188]],[[12870,12870],"mapped",[25991]],[[12871,12871],"mapped",[31631]],[[12872,12879],"valid",[],"NV8"],[[12880,12880],"mapped",[112,116,101]],[[12881,12881],"mapped",[50,49]],[[12882,12882],"mapped",[50,50]],[[12883,12883],"mapped",[50,51]],[[12884,12884],"mapped",[50,52]],[[12885,12885],"mapped",[50,53]],[[12886,12886],"mapped",[50,54]],[[12887,12887],"mapped",[50,55]],[[12888,12888],"mapped",[50,56]],[[12889,12889],"mapped",[50,57]],[[12890,12890],"mapped",[51,48]],[[12891,12891],"mapped",[51,49]],[[12892,12892],"mapped",[51,50]],[[12893,12893],"mapped",[51,51]],[[12894,12894],"mapped",[51,52]],[[12895,12895],"mapped",[51,53]],[[12896,12896],"mapped",[4352]],[[12897,12897],"mapped",[4354]],[[12898,12898],"mapped",[4355]],[[12899,12899],"mapped",[4357]],[[12900,12900],"mapped",[4358]],[[12901,12901],"mapped",[4359]],[[12902,12902],"mapped",[4361]],[[12903,12903],"mapped",[4363]],[[12904,12904],"mapped",[4364]],[[12905,12905],"mapped",[4366]],[[12906,12906],"mapped",[4367]],[[12907,12907],"mapped",[4368]],[[12908,12908],"mapped",[4369]],[[12909,12909],"mapped",[4370]],[[12910,12910],"mapped",[44032]],[[12911,12911],"mapped",[45208]],[[12912,12912],"mapped",[45796]],[[12913,12913],"mapped",[46972]],[[12914,12914],"mapped",[47560]],[[12915,12915],"mapped",[48148]],[[12916,12916],"mapped",[49324]],[[12917,12917],"mapped",[50500]],[[12918,12918],"mapped",[51088]],[[12919,12919],"mapped",[52264]],[[12920,12920],"mapped",[52852]],[[12921,12921],"mapped",[53440]],[[12922,12922],"mapped",[54028]],[[12923,12923],"mapped",[54616]],[[12924,12924],"mapped",[52280,44256]],[[12925,12925],"mapped",[51452,51032]],[[12926,12926],"mapped",[50864]],[[12927,12927],"valid",[],"NV8"],[[12928,12928],"mapped",[19968]],[[12929,12929],"mapped",[20108]],[[12930,12930],"mapped",[19977]],[[12931,12931],"mapped",[22235]],[[12932,12932],"mapped",[20116]],[[12933,12933],"mapped",[20845]],[[12934,12934],"mapped",[19971]],[[12935,12935],"mapped",[20843]],[[12936,12936],"mapped",[20061]],[[12937,12937],"mapped",[21313]],[[12938,12938],"mapped",[26376]],[[12939,12939],"mapped",[28779]],[[12940,12940],"mapped",[27700]],[[12941,12941],"mapped",[26408]],[[12942,12942],"mapped",[37329]],[[12943,12943],"mapped",[22303]],[[12944,12944],"mapped",[26085]],[[12945,12945],"mapped",[26666]],[[12946,12946],"mapped",[26377]],[[12947,12947],"mapped",[31038]],[[12948,12948],"mapped",[21517]],[[12949,12949],"mapped",[29305]],[[12950,12950],"mapped",[36001]],[[12951,12951],"mapped",[31069]],[[12952,12952],"mapped",[21172]],[[12953,12953],"mapped",[31192]],[[12954,12954],"mapped",[30007]],[[12955,12955],"mapped",[22899]],[[12956,12956],"mapped",[36969]],[[12957,12957],"mapped",[20778]],[[12958,12958],"mapped",[21360]],[[12959,12959],"mapped",[27880]],[[12960,12960],"mapped",[38917]],[[12961,12961],"mapped",[20241]],[[12962,12962],"mapped",[20889]],[[12963,12963],"mapped",[27491]],[[12964,12964],"mapped",[19978]],[[12965,12965],"mapped",[20013]],[[12966,12966],"mapped",[19979]],[[12967,12967],"mapped",[24038]],[[12968,12968],"mapped",[21491]],[[12969,12969],"mapped",[21307]],[[12970,12970],"mapped",[23447]],[[12971,12971],"mapped",[23398]],[[12972,12972],"mapped",[30435]],[[12973,12973],"mapped",[20225]],[[12974,12974],"mapped",[36039]],[[12975,12975],"mapped",[21332]],[[12976,12976],"mapped",[22812]],[[12977,12977],"mapped",[51,54]],[[12978,12978],"mapped",[51,55]],[[12979,12979],"mapped",[51,56]],[[12980,12980],"mapped",[51,57]],[[12981,12981],"mapped",[52,48]],[[12982,12982],"mapped",[52,49]],[[12983,12983],"mapped",[52,50]],[[12984,12984],"mapped",[52,51]],[[12985,12985],"mapped",[52,52]],[[12986,12986],"mapped",[52,53]],[[12987,12987],"mapped",[52,54]],[[12988,12988],"mapped",[52,55]],[[12989,12989],"mapped",[52,56]],[[12990,12990],"mapped",[52,57]],[[12991,12991],"mapped",[53,48]],[[12992,12992],"mapped",[49,26376]],[[12993,12993],"mapped",[50,26376]],[[12994,12994],"mapped",[51,26376]],[[12995,12995],"mapped",[52,26376]],[[12996,12996],"mapped",[53,26376]],[[12997,12997],"mapped",[54,26376]],[[12998,12998],"mapped",[55,26376]],[[12999,12999],"mapped",[56,26376]],[[13000,13000],"mapped",[57,26376]],[[13001,13001],"mapped",[49,48,26376]],[[13002,13002],"mapped",[49,49,26376]],[[13003,13003],"mapped",[49,50,26376]],[[13004,13004],"mapped",[104,103]],[[13005,13005],"mapped",[101,114,103]],[[13006,13006],"mapped",[101,118]],[[13007,13007],"mapped",[108,116,100]],[[13008,13008],"mapped",[12450]],[[13009,13009],"mapped",[12452]],[[13010,13010],"mapped",[12454]],[[13011,13011],"mapped",[12456]],[[13012,13012],"mapped",[12458]],[[13013,13013],"mapped",[12459]],[[13014,13014],"mapped",[12461]],[[13015,13015],"mapped",[12463]],[[13016,13016],"mapped",[12465]],[[13017,13017],"mapped",[12467]],[[13018,13018],"mapped",[12469]],[[13019,13019],"mapped",[12471]],[[13020,13020],"mapped",[12473]],[[13021,13021],"mapped",[12475]],[[13022,13022],"mapped",[12477]],[[13023,13023],"mapped",[12479]],[[13024,13024],"mapped",[12481]],[[13025,13025],"mapped",[12484]],[[13026,13026],"mapped",[12486]],[[13027,13027],"mapped",[12488]],[[13028,13028],"mapped",[12490]],[[13029,13029],"mapped",[12491]],[[13030,13030],"mapped",[12492]],[[13031,13031],"mapped",[12493]],[[13032,13032],"mapped",[12494]],[[13033,13033],"mapped",[12495]],[[13034,13034],"mapped",[12498]],[[13035,13035],"mapped",[12501]],[[13036,13036],"mapped",[12504]],[[13037,13037],"mapped",[12507]],[[13038,13038],"mapped",[12510]],[[13039,13039],"mapped",[12511]],[[13040,13040],"mapped",[12512]],[[13041,13041],"mapped",[12513]],[[13042,13042],"mapped",[12514]],[[13043,13043],"mapped",[12516]],[[13044,13044],"mapped",[12518]],[[13045,13045],"mapped",[12520]],[[13046,13046],"mapped",[12521]],[[13047,13047],"mapped",[12522]],[[13048,13048],"mapped",[12523]],[[13049,13049],"mapped",[12524]],[[13050,13050],"mapped",[12525]],[[13051,13051],"mapped",[12527]],[[13052,13052],"mapped",[12528]],[[13053,13053],"mapped",[12529]],[[13054,13054],"mapped",[12530]],[[13055,13055],"disallowed"],[[13056,13056],"mapped",[12450,12497,12540,12488]],[[13057,13057],"mapped",[12450,12523,12501,12449]],[[13058,13058],"mapped",[12450,12531,12506,12450]],[[13059,13059],"mapped",[12450,12540,12523]],[[13060,13060],"mapped",[12452,12491,12531,12464]],[[13061,13061],"mapped",[12452,12531,12481]],[[13062,13062],"mapped",[12454,12457,12531]],[[13063,13063],"mapped",[12456,12473,12463,12540,12489]],[[13064,13064],"mapped",[12456,12540,12459,12540]],[[13065,13065],"mapped",[12458,12531,12473]],[[13066,13066],"mapped",[12458,12540,12512]],[[13067,13067],"mapped",[12459,12452,12522]],[[13068,13068],"mapped",[12459,12521,12483,12488]],[[13069,13069],"mapped",[12459,12525,12522,12540]],[[13070,13070],"mapped",[12460,12525,12531]],[[13071,13071],"mapped",[12460,12531,12510]],[[13072,13072],"mapped",[12462,12460]],[[13073,13073],"mapped",[12462,12491,12540]],[[13074,13074],"mapped",[12461,12517,12522,12540]],[[13075,13075],"mapped",[12462,12523,12480,12540]],[[13076,13076],"mapped",[12461,12525]],[[13077,13077],"mapped",[12461,12525,12464,12521,12512]],[[13078,13078],"mapped",[12461,12525,12513,12540,12488,12523]],[[13079,13079],"mapped",[12461,12525,12527,12483,12488]],[[13080,13080],"mapped",[12464,12521,12512]],[[13081,13081],"mapped",[12464,12521,12512,12488,12531]],[[13082,13082],"mapped",[12463,12523,12476,12452,12525]],[[13083,13083],"mapped",[12463,12525,12540,12493]],[[13084,13084],"mapped",[12465,12540,12473]],[[13085,13085],"mapped",[12467,12523,12490]],[[13086,13086],"mapped",[12467,12540,12509]],[[13087,13087],"mapped",[12469,12452,12463,12523]],[[13088,13088],"mapped",[12469,12531,12481,12540,12512]],[[13089,13089],"mapped",[12471,12522,12531,12464]],[[13090,13090],"mapped",[12475,12531,12481]],[[13091,13091],"mapped",[12475,12531,12488]],[[13092,13092],"mapped",[12480,12540,12473]],[[13093,13093],"mapped",[12487,12471]],[[13094,13094],"mapped",[12489,12523]],[[13095,13095],"mapped",[12488,12531]],[[13096,13096],"mapped",[12490,12494]],[[13097,13097],"mapped",[12494,12483,12488]],[[13098,13098],"mapped",[12495,12452,12484]],[[13099,13099],"mapped",[12497,12540,12475,12531,12488]],[[13100,13100],"mapped",[12497,12540,12484]],[[13101,13101],"mapped",[12496,12540,12524,12523]],[[13102,13102],"mapped",[12500,12450,12473,12488,12523]],[[13103,13103],"mapped",[12500,12463,12523]],[[13104,13104],"mapped",[12500,12467]],[[13105,13105],"mapped",[12499,12523]],[[13106,13106],"mapped",[12501,12449,12521,12483,12489]],[[13107,13107],"mapped",[12501,12451,12540,12488]],[[13108,13108],"mapped",[12502,12483,12471,12455,12523]],[[13109,13109],"mapped",[12501,12521,12531]],[[13110,13110],"mapped",[12504,12463,12479,12540,12523]],[[13111,13111],"mapped",[12506,12477]],[[13112,13112],"mapped",[12506,12491,12498]],[[13113,13113],"mapped",[12504,12523,12484]],[[13114,13114],"mapped",[12506,12531,12473]],[[13115,13115],"mapped",[12506,12540,12472]],[[13116,13116],"mapped",[12505,12540,12479]],[[13117,13117],"mapped",[12509,12452,12531,12488]],[[13118,13118],"mapped",[12508,12523,12488]],[[13119,13119],"mapped",[12507,12531]],[[13120,13120],"mapped",[12509,12531,12489]],[[13121,13121],"mapped",[12507,12540,12523]],[[13122,13122],"mapped",[12507,12540,12531]],[[13123,13123],"mapped",[12510,12452,12463,12525]],[[13124,13124],"mapped",[12510,12452,12523]],[[13125,13125],"mapped",[12510,12483,12495]],[[13126,13126],"mapped",[12510,12523,12463]],[[13127,13127],"mapped",[12510,12531,12471,12519,12531]],[[13128,13128],"mapped",[12511,12463,12525,12531]],[[13129,13129],"mapped",[12511,12522]],[[13130,13130],"mapped",[12511,12522,12496,12540,12523]],[[13131,13131],"mapped",[12513,12460]],[[13132,13132],"mapped",[12513,12460,12488,12531]],[[13133,13133],"mapped",[12513,12540,12488,12523]],[[13134,13134],"mapped",[12516,12540,12489]],[[13135,13135],"mapped",[12516,12540,12523]],[[13136,13136],"mapped",[12518,12450,12531]],[[13137,13137],"mapped",[12522,12483,12488,12523]],[[13138,13138],"mapped",[12522,12521]],[[13139,13139],"mapped",[12523,12500,12540]],[[13140,13140],"mapped",[12523,12540,12502,12523]],[[13141,13141],"mapped",[12524,12512]],[[13142,13142],"mapped",[12524,12531,12488,12466,12531]],[[13143,13143],"mapped",[12527,12483,12488]],[[13144,13144],"mapped",[48,28857]],[[13145,13145],"mapped",[49,28857]],[[13146,13146],"mapped",[50,28857]],[[13147,13147],"mapped",[51,28857]],[[13148,13148],"mapped",[52,28857]],[[13149,13149],"mapped",[53,28857]],[[13150,13150],"mapped",[54,28857]],[[13151,13151],"mapped",[55,28857]],[[13152,13152],"mapped",[56,28857]],[[13153,13153],"mapped",[57,28857]],[[13154,13154],"mapped",[49,48,28857]],[[13155,13155],"mapped",[49,49,28857]],[[13156,13156],"mapped",[49,50,28857]],[[13157,13157],"mapped",[49,51,28857]],[[13158,13158],"mapped",[49,52,28857]],[[13159,13159],"mapped",[49,53,28857]],[[13160,13160],"mapped",[49,54,28857]],[[13161,13161],"mapped",[49,55,28857]],[[13162,13162],"mapped",[49,56,28857]],[[13163,13163],"mapped",[49,57,28857]],[[13164,13164],"mapped",[50,48,28857]],[[13165,13165],"mapped",[50,49,28857]],[[13166,13166],"mapped",[50,50,28857]],[[13167,13167],"mapped",[50,51,28857]],[[13168,13168],"mapped",[50,52,28857]],[[13169,13169],"mapped",[104,112,97]],[[13170,13170],"mapped",[100,97]],[[13171,13171],"mapped",[97,117]],[[13172,13172],"mapped",[98,97,114]],[[13173,13173],"mapped",[111,118]],[[13174,13174],"mapped",[112,99]],[[13175,13175],"mapped",[100,109]],[[13176,13176],"mapped",[100,109,50]],[[13177,13177],"mapped",[100,109,51]],[[13178,13178],"mapped",[105,117]],[[13179,13179],"mapped",[24179,25104]],[[13180,13180],"mapped",[26157,21644]],[[13181,13181],"mapped",[22823,27491]],[[13182,13182],"mapped",[26126,27835]],[[13183,13183],"mapped",[26666,24335,20250,31038]],[[13184,13184],"mapped",[112,97]],[[13185,13185],"mapped",[110,97]],[[13186,13186],"mapped",[956,97]],[[13187,13187],"mapped",[109,97]],[[13188,13188],"mapped",[107,97]],[[13189,13189],"mapped",[107,98]],[[13190,13190],"mapped",[109,98]],[[13191,13191],"mapped",[103,98]],[[13192,13192],"mapped",[99,97,108]],[[13193,13193],"mapped",[107,99,97,108]],[[13194,13194],"mapped",[112,102]],[[13195,13195],"mapped",[110,102]],[[13196,13196],"mapped",[956,102]],[[13197,13197],"mapped",[956,103]],[[13198,13198],"mapped",[109,103]],[[13199,13199],"mapped",[107,103]],[[13200,13200],"mapped",[104,122]],[[13201,13201],"mapped",[107,104,122]],[[13202,13202],"mapped",[109,104,122]],[[13203,13203],"mapped",[103,104,122]],[[13204,13204],"mapped",[116,104,122]],[[13205,13205],"mapped",[956,108]],[[13206,13206],"mapped",[109,108]],[[13207,13207],"mapped",[100,108]],[[13208,13208],"mapped",[107,108]],[[13209,13209],"mapped",[102,109]],[[13210,13210],"mapped",[110,109]],[[13211,13211],"mapped",[956,109]],[[13212,13212],"mapped",[109,109]],[[13213,13213],"mapped",[99,109]],[[13214,13214],"mapped",[107,109]],[[13215,13215],"mapped",[109,109,50]],[[13216,13216],"mapped",[99,109,50]],[[13217,13217],"mapped",[109,50]],[[13218,13218],"mapped",[107,109,50]],[[13219,13219],"mapped",[109,109,51]],[[13220,13220],"mapped",[99,109,51]],[[13221,13221],"mapped",[109,51]],[[13222,13222],"mapped",[107,109,51]],[[13223,13223],"mapped",[109,8725,115]],[[13224,13224],"mapped",[109,8725,115,50]],[[13225,13225],"mapped",[112,97]],[[13226,13226],"mapped",[107,112,97]],[[13227,13227],"mapped",[109,112,97]],[[13228,13228],"mapped",[103,112,97]],[[13229,13229],"mapped",[114,97,100]],[[13230,13230],"mapped",[114,97,100,8725,115]],[[13231,13231],"mapped",[114,97,100,8725,115,50]],[[13232,13232],"mapped",[112,115]],[[13233,13233],"mapped",[110,115]],[[13234,13234],"mapped",[956,115]],[[13235,13235],"mapped",[109,115]],[[13236,13236],"mapped",[112,118]],[[13237,13237],"mapped",[110,118]],[[13238,13238],"mapped",[956,118]],[[13239,13239],"mapped",[109,118]],[[13240,13240],"mapped",[107,118]],[[13241,13241],"mapped",[109,118]],[[13242,13242],"mapped",[112,119]],[[13243,13243],"mapped",[110,119]],[[13244,13244],"mapped",[956,119]],[[13245,13245],"mapped",[109,119]],[[13246,13246],"mapped",[107,119]],[[13247,13247],"mapped",[109,119]],[[13248,13248],"mapped",[107,969]],[[13249,13249],"mapped",[109,969]],[[13250,13250],"disallowed"],[[13251,13251],"mapped",[98,113]],[[13252,13252],"mapped",[99,99]],[[13253,13253],"mapped",[99,100]],[[13254,13254],"mapped",[99,8725,107,103]],[[13255,13255],"disallowed"],[[13256,13256],"mapped",[100,98]],[[13257,13257],"mapped",[103,121]],[[13258,13258],"mapped",[104,97]],[[13259,13259],"mapped",[104,112]],[[13260,13260],"mapped",[105,110]],[[13261,13261],"mapped",[107,107]],[[13262,13262],"mapped",[107,109]],[[13263,13263],"mapped",[107,116]],[[13264,13264],"mapped",[108,109]],[[13265,13265],"mapped",[108,110]],[[13266,13266],"mapped",[108,111,103]],[[13267,13267],"mapped",[108,120]],[[13268,13268],"mapped",[109,98]],[[13269,13269],"mapped",[109,105,108]],[[13270,13270],"mapped",[109,111,108]],[[13271,13271],"mapped",[112,104]],[[13272,13272],"disallowed"],[[13273,13273],"mapped",[112,112,109]],[[13274,13274],"mapped",[112,114]],[[13275,13275],"mapped",[115,114]],[[13276,13276],"mapped",[115,118]],[[13277,13277],"mapped",[119,98]],[[13278,13278],"mapped",[118,8725,109]],[[13279,13279],"mapped",[97,8725,109]],[[13280,13280],"mapped",[49,26085]],[[13281,13281],"mapped",[50,26085]],[[13282,13282],"mapped",[51,26085]],[[13283,13283],"mapped",[52,26085]],[[13284,13284],"mapped",[53,26085]],[[13285,13285],"mapped",[54,26085]],[[13286,13286],"mapped",[55,26085]],[[13287,13287],"mapped",[56,26085]],[[13288,13288],"mapped",[57,26085]],[[13289,13289],"mapped",[49,48,26085]],[[13290,13290],"mapped",[49,49,26085]],[[13291,13291],"mapped",[49,50,26085]],[[13292,13292],"mapped",[49,51,26085]],[[13293,13293],"mapped",[49,52,26085]],[[13294,13294],"mapped",[49,53,26085]],[[13295,13295],"mapped",[49,54,26085]],[[13296,13296],"mapped",[49,55,26085]],[[13297,13297],"mapped",[49,56,26085]],[[13298,13298],"mapped",[49,57,26085]],[[13299,13299],"mapped",[50,48,26085]],[[13300,13300],"mapped",[50,49,26085]],[[13301,13301],"mapped",[50,50,26085]],[[13302,13302],"mapped",[50,51,26085]],[[13303,13303],"mapped",[50,52,26085]],[[13304,13304],"mapped",[50,53,26085]],[[13305,13305],"mapped",[50,54,26085]],[[13306,13306],"mapped",[50,55,26085]],[[13307,13307],"mapped",[50,56,26085]],[[13308,13308],"mapped",[50,57,26085]],[[13309,13309],"mapped",[51,48,26085]],[[13310,13310],"mapped",[51,49,26085]],[[13311,13311],"mapped",[103,97,108]],[[13312,19893],"valid"],[[19894,19903],"disallowed"],[[19904,19967],"valid",[],"NV8"],[[19968,40869],"valid"],[[40870,40891],"valid"],[[40892,40899],"valid"],[[40900,40907],"valid"],[[40908,40908],"valid"],[[40909,40917],"valid"],[[40918,40959],"disallowed"],[[40960,42124],"valid"],[[42125,42127],"disallowed"],[[42128,42145],"valid",[],"NV8"],[[42146,42147],"valid",[],"NV8"],[[42148,42163],"valid",[],"NV8"],[[42164,42164],"valid",[],"NV8"],[[42165,42176],"valid",[],"NV8"],[[42177,42177],"valid",[],"NV8"],[[42178,42180],"valid",[],"NV8"],[[42181,42181],"valid",[],"NV8"],[[42182,42182],"valid",[],"NV8"],[[42183,42191],"disallowed"],[[42192,42237],"valid"],[[42238,42239],"valid",[],"NV8"],[[42240,42508],"valid"],[[42509,42511],"valid",[],"NV8"],[[42512,42539],"valid"],[[42540,42559],"disallowed"],[[42560,42560],"mapped",[42561]],[[42561,42561],"valid"],[[42562,42562],"mapped",[42563]],[[42563,42563],"valid"],[[42564,42564],"mapped",[42565]],[[42565,42565],"valid"],[[42566,42566],"mapped",[42567]],[[42567,42567],"valid"],[[42568,42568],"mapped",[42569]],[[42569,42569],"valid"],[[42570,42570],"mapped",[42571]],[[42571,42571],"valid"],[[42572,42572],"mapped",[42573]],[[42573,42573],"valid"],[[42574,42574],"mapped",[42575]],[[42575,42575],"valid"],[[42576,42576],"mapped",[42577]],[[42577,42577],"valid"],[[42578,42578],"mapped",[42579]],[[42579,42579],"valid"],[[42580,42580],"mapped",[42581]],[[42581,42581],"valid"],[[42582,42582],"mapped",[42583]],[[42583,42583],"valid"],[[42584,42584],"mapped",[42585]],[[42585,42585],"valid"],[[42586,42586],"mapped",[42587]],[[42587,42587],"valid"],[[42588,42588],"mapped",[42589]],[[42589,42589],"valid"],[[42590,42590],"mapped",[42591]],[[42591,42591],"valid"],[[42592,42592],"mapped",[42593]],[[42593,42593],"valid"],[[42594,42594],"mapped",[42595]],[[42595,42595],"valid"],[[42596,42596],"mapped",[42597]],[[42597,42597],"valid"],[[42598,42598],"mapped",[42599]],[[42599,42599],"valid"],[[42600,42600],"mapped",[42601]],[[42601,42601],"valid"],[[42602,42602],"mapped",[42603]],[[42603,42603],"valid"],[[42604,42604],"mapped",[42605]],[[42605,42607],"valid"],[[42608,42611],"valid",[],"NV8"],[[42612,42619],"valid"],[[42620,42621],"valid"],[[42622,42622],"valid",[],"NV8"],[[42623,42623],"valid"],[[42624,42624],"mapped",[42625]],[[42625,42625],"valid"],[[42626,42626],"mapped",[42627]],[[42627,42627],"valid"],[[42628,42628],"mapped",[42629]],[[42629,42629],"valid"],[[42630,42630],"mapped",[42631]],[[42631,42631],"valid"],[[42632,42632],"mapped",[42633]],[[42633,42633],"valid"],[[42634,42634],"mapped",[42635]],[[42635,42635],"valid"],[[42636,42636],"mapped",[42637]],[[42637,42637],"valid"],[[42638,42638],"mapped",[42639]],[[42639,42639],"valid"],[[42640,42640],"mapped",[42641]],[[42641,42641],"valid"],[[42642,42642],"mapped",[42643]],[[42643,42643],"valid"],[[42644,42644],"mapped",[42645]],[[42645,42645],"valid"],[[42646,42646],"mapped",[42647]],[[42647,42647],"valid"],[[42648,42648],"mapped",[42649]],[[42649,42649],"valid"],[[42650,42650],"mapped",[42651]],[[42651,42651],"valid"],[[42652,42652],"mapped",[1098]],[[42653,42653],"mapped",[1100]],[[42654,42654],"valid"],[[42655,42655],"valid"],[[42656,42725],"valid"],[[42726,42735],"valid",[],"NV8"],[[42736,42737],"valid"],[[42738,42743],"valid",[],"NV8"],[[42744,42751],"disallowed"],[[42752,42774],"valid",[],"NV8"],[[42775,42778],"valid"],[[42779,42783],"valid"],[[42784,42785],"valid",[],"NV8"],[[42786,42786],"mapped",[42787]],[[42787,42787],"valid"],[[42788,42788],"mapped",[42789]],[[42789,42789],"valid"],[[42790,42790],"mapped",[42791]],[[42791,42791],"valid"],[[42792,42792],"mapped",[42793]],[[42793,42793],"valid"],[[42794,42794],"mapped",[42795]],[[42795,42795],"valid"],[[42796,42796],"mapped",[42797]],[[42797,42797],"valid"],[[42798,42798],"mapped",[42799]],[[42799,42801],"valid"],[[42802,42802],"mapped",[42803]],[[42803,42803],"valid"],[[42804,42804],"mapped",[42805]],[[42805,42805],"valid"],[[42806,42806],"mapped",[42807]],[[42807,42807],"valid"],[[42808,42808],"mapped",[42809]],[[42809,42809],"valid"],[[42810,42810],"mapped",[42811]],[[42811,42811],"valid"],[[42812,42812],"mapped",[42813]],[[42813,42813],"valid"],[[42814,42814],"mapped",[42815]],[[42815,42815],"valid"],[[42816,42816],"mapped",[42817]],[[42817,42817],"valid"],[[42818,42818],"mapped",[42819]],[[42819,42819],"valid"],[[42820,42820],"mapped",[42821]],[[42821,42821],"valid"],[[42822,42822],"mapped",[42823]],[[42823,42823],"valid"],[[42824,42824],"mapped",[42825]],[[42825,42825],"valid"],[[42826,42826],"mapped",[42827]],[[42827,42827],"valid"],[[42828,42828],"mapped",[42829]],[[42829,42829],"valid"],[[42830,42830],"mapped",[42831]],[[42831,42831],"valid"],[[42832,42832],"mapped",[42833]],[[42833,42833],"valid"],[[42834,42834],"mapped",[42835]],[[42835,42835],"valid"],[[42836,42836],"mapped",[42837]],[[42837,42837],"valid"],[[42838,42838],"mapped",[42839]],[[42839,42839],"valid"],[[42840,42840],"mapped",[42841]],[[42841,42841],"valid"],[[42842,42842],"mapped",[42843]],[[42843,42843],"valid"],[[42844,42844],"mapped",[42845]],[[42845,42845],"valid"],[[42846,42846],"mapped",[42847]],[[42847,42847],"valid"],[[42848,42848],"mapped",[42849]],[[42849,42849],"valid"],[[42850,42850],"mapped",[42851]],[[42851,42851],"valid"],[[42852,42852],"mapped",[42853]],[[42853,42853],"valid"],[[42854,42854],"mapped",[42855]],[[42855,42855],"valid"],[[42856,42856],"mapped",[42857]],[[42857,42857],"valid"],[[42858,42858],"mapped",[42859]],[[42859,42859],"valid"],[[42860,42860],"mapped",[42861]],[[42861,42861],"valid"],[[42862,42862],"mapped",[42863]],[[42863,42863],"valid"],[[42864,42864],"mapped",[42863]],[[42865,42872],"valid"],[[42873,42873],"mapped",[42874]],[[42874,42874],"valid"],[[42875,42875],"mapped",[42876]],[[42876,42876],"valid"],[[42877,42877],"mapped",[7545]],[[42878,42878],"mapped",[42879]],[[42879,42879],"valid"],[[42880,42880],"mapped",[42881]],[[42881,42881],"valid"],[[42882,42882],"mapped",[42883]],[[42883,42883],"valid"],[[42884,42884],"mapped",[42885]],[[42885,42885],"valid"],[[42886,42886],"mapped",[42887]],[[42887,42888],"valid"],[[42889,42890],"valid",[],"NV8"],[[42891,42891],"mapped",[42892]],[[42892,42892],"valid"],[[42893,42893],"mapped",[613]],[[42894,42894],"valid"],[[42895,42895],"valid"],[[42896,42896],"mapped",[42897]],[[42897,42897],"valid"],[[42898,42898],"mapped",[42899]],[[42899,42899],"valid"],[[42900,42901],"valid"],[[42902,42902],"mapped",[42903]],[[42903,42903],"valid"],[[42904,42904],"mapped",[42905]],[[42905,42905],"valid"],[[42906,42906],"mapped",[42907]],[[42907,42907],"valid"],[[42908,42908],"mapped",[42909]],[[42909,42909],"valid"],[[42910,42910],"mapped",[42911]],[[42911,42911],"valid"],[[42912,42912],"mapped",[42913]],[[42913,42913],"valid"],[[42914,42914],"mapped",[42915]],[[42915,42915],"valid"],[[42916,42916],"mapped",[42917]],[[42917,42917],"valid"],[[42918,42918],"mapped",[42919]],[[42919,42919],"valid"],[[42920,42920],"mapped",[42921]],[[42921,42921],"valid"],[[42922,42922],"mapped",[614]],[[42923,42923],"mapped",[604]],[[42924,42924],"mapped",[609]],[[42925,42925],"mapped",[620]],[[42926,42927],"disallowed"],[[42928,42928],"mapped",[670]],[[42929,42929],"mapped",[647]],[[42930,42930],"mapped",[669]],[[42931,42931],"mapped",[43859]],[[42932,42932],"mapped",[42933]],[[42933,42933],"valid"],[[42934,42934],"mapped",[42935]],[[42935,42935],"valid"],[[42936,42998],"disallowed"],[[42999,42999],"valid"],[[43000,43000],"mapped",[295]],[[43001,43001],"mapped",[339]],[[43002,43002],"valid"],[[43003,43007],"valid"],[[43008,43047],"valid"],[[43048,43051],"valid",[],"NV8"],[[43052,43055],"disallowed"],[[43056,43065],"valid",[],"NV8"],[[43066,43071],"disallowed"],[[43072,43123],"valid"],[[43124,43127],"valid",[],"NV8"],[[43128,43135],"disallowed"],[[43136,43204],"valid"],[[43205,43213],"disallowed"],[[43214,43215],"valid",[],"NV8"],[[43216,43225],"valid"],[[43226,43231],"disallowed"],[[43232,43255],"valid"],[[43256,43258],"valid",[],"NV8"],[[43259,43259],"valid"],[[43260,43260],"valid",[],"NV8"],[[43261,43261],"valid"],[[43262,43263],"disallowed"],[[43264,43309],"valid"],[[43310,43311],"valid",[],"NV8"],[[43312,43347],"valid"],[[43348,43358],"disallowed"],[[43359,43359],"valid",[],"NV8"],[[43360,43388],"valid",[],"NV8"],[[43389,43391],"disallowed"],[[43392,43456],"valid"],[[43457,43469],"valid",[],"NV8"],[[43470,43470],"disallowed"],[[43471,43481],"valid"],[[43482,43485],"disallowed"],[[43486,43487],"valid",[],"NV8"],[[43488,43518],"valid"],[[43519,43519],"disallowed"],[[43520,43574],"valid"],[[43575,43583],"disallowed"],[[43584,43597],"valid"],[[43598,43599],"disallowed"],[[43600,43609],"valid"],[[43610,43611],"disallowed"],[[43612,43615],"valid",[],"NV8"],[[43616,43638],"valid"],[[43639,43641],"valid",[],"NV8"],[[43642,43643],"valid"],[[43644,43647],"valid"],[[43648,43714],"valid"],[[43715,43738],"disallowed"],[[43739,43741],"valid"],[[43742,43743],"valid",[],"NV8"],[[43744,43759],"valid"],[[43760,43761],"valid",[],"NV8"],[[43762,43766],"valid"],[[43767,43776],"disallowed"],[[43777,43782],"valid"],[[43783,43784],"disallowed"],[[43785,43790],"valid"],[[43791,43792],"disallowed"],[[43793,43798],"valid"],[[43799,43807],"disallowed"],[[43808,43814],"valid"],[[43815,43815],"disallowed"],[[43816,43822],"valid"],[[43823,43823],"disallowed"],[[43824,43866],"valid"],[[43867,43867],"valid",[],"NV8"],[[43868,43868],"mapped",[42791]],[[43869,43869],"mapped",[43831]],[[43870,43870],"mapped",[619]],[[43871,43871],"mapped",[43858]],[[43872,43875],"valid"],[[43876,43877],"valid"],[[43878,43887],"disallowed"],[[43888,43888],"mapped",[5024]],[[43889,43889],"mapped",[5025]],[[43890,43890],"mapped",[5026]],[[43891,43891],"mapped",[5027]],[[43892,43892],"mapped",[5028]],[[43893,43893],"mapped",[5029]],[[43894,43894],"mapped",[5030]],[[43895,43895],"mapped",[5031]],[[43896,43896],"mapped",[5032]],[[43897,43897],"mapped",[5033]],[[43898,43898],"mapped",[5034]],[[43899,43899],"mapped",[5035]],[[43900,43900],"mapped",[5036]],[[43901,43901],"mapped",[5037]],[[43902,43902],"mapped",[5038]],[[43903,43903],"mapped",[5039]],[[43904,43904],"mapped",[5040]],[[43905,43905],"mapped",[5041]],[[43906,43906],"mapped",[5042]],[[43907,43907],"mapped",[5043]],[[43908,43908],"mapped",[5044]],[[43909,43909],"mapped",[5045]],[[43910,43910],"mapped",[5046]],[[43911,43911],"mapped",[5047]],[[43912,43912],"mapped",[5048]],[[43913,43913],"mapped",[5049]],[[43914,43914],"mapped",[5050]],[[43915,43915],"mapped",[5051]],[[43916,43916],"mapped",[5052]],[[43917,43917],"mapped",[5053]],[[43918,43918],"mapped",[5054]],[[43919,43919],"mapped",[5055]],[[43920,43920],"mapped",[5056]],[[43921,43921],"mapped",[5057]],[[43922,43922],"mapped",[5058]],[[43923,43923],"mapped",[5059]],[[43924,43924],"mapped",[5060]],[[43925,43925],"mapped",[5061]],[[43926,43926],"mapped",[5062]],[[43927,43927],"mapped",[5063]],[[43928,43928],"mapped",[5064]],[[43929,43929],"mapped",[5065]],[[43930,43930],"mapped",[5066]],[[43931,43931],"mapped",[5067]],[[43932,43932],"mapped",[5068]],[[43933,43933],"mapped",[5069]],[[43934,43934],"mapped",[5070]],[[43935,43935],"mapped",[5071]],[[43936,43936],"mapped",[5072]],[[43937,43937],"mapped",[5073]],[[43938,43938],"mapped",[5074]],[[43939,43939],"mapped",[5075]],[[43940,43940],"mapped",[5076]],[[43941,43941],"mapped",[5077]],[[43942,43942],"mapped",[5078]],[[43943,43943],"mapped",[5079]],[[43944,43944],"mapped",[5080]],[[43945,43945],"mapped",[5081]],[[43946,43946],"mapped",[5082]],[[43947,43947],"mapped",[5083]],[[43948,43948],"mapped",[5084]],[[43949,43949],"mapped",[5085]],[[43950,43950],"mapped",[5086]],[[43951,43951],"mapped",[5087]],[[43952,43952],"mapped",[5088]],[[43953,43953],"mapped",[5089]],[[43954,43954],"mapped",[5090]],[[43955,43955],"mapped",[5091]],[[43956,43956],"mapped",[5092]],[[43957,43957],"mapped",[5093]],[[43958,43958],"mapped",[5094]],[[43959,43959],"mapped",[5095]],[[43960,43960],"mapped",[5096]],[[43961,43961],"mapped",[5097]],[[43962,43962],"mapped",[5098]],[[43963,43963],"mapped",[5099]],[[43964,43964],"mapped",[5100]],[[43965,43965],"mapped",[5101]],[[43966,43966],"mapped",[5102]],[[43967,43967],"mapped",[5103]],[[43968,44010],"valid"],[[44011,44011],"valid",[],"NV8"],[[44012,44013],"valid"],[[44014,44015],"disallowed"],[[44016,44025],"valid"],[[44026,44031],"disallowed"],[[44032,55203],"valid"],[[55204,55215],"disallowed"],[[55216,55238],"valid",[],"NV8"],[[55239,55242],"disallowed"],[[55243,55291],"valid",[],"NV8"],[[55292,55295],"disallowed"],[[55296,57343],"disallowed"],[[57344,63743],"disallowed"],[[63744,63744],"mapped",[35912]],[[63745,63745],"mapped",[26356]],[[63746,63746],"mapped",[36554]],[[63747,63747],"mapped",[36040]],[[63748,63748],"mapped",[28369]],[[63749,63749],"mapped",[20018]],[[63750,63750],"mapped",[21477]],[[63751,63752],"mapped",[40860]],[[63753,63753],"mapped",[22865]],[[63754,63754],"mapped",[37329]],[[63755,63755],"mapped",[21895]],[[63756,63756],"mapped",[22856]],[[63757,63757],"mapped",[25078]],[[63758,63758],"mapped",[30313]],[[63759,63759],"mapped",[32645]],[[63760,63760],"mapped",[34367]],[[63761,63761],"mapped",[34746]],[[63762,63762],"mapped",[35064]],[[63763,63763],"mapped",[37007]],[[63764,63764],"mapped",[27138]],[[63765,63765],"mapped",[27931]],[[63766,63766],"mapped",[28889]],[[63767,63767],"mapped",[29662]],[[63768,63768],"mapped",[33853]],[[63769,63769],"mapped",[37226]],[[63770,63770],"mapped",[39409]],[[63771,63771],"mapped",[20098]],[[63772,63772],"mapped",[21365]],[[63773,63773],"mapped",[27396]],[[63774,63774],"mapped",[29211]],[[63775,63775],"mapped",[34349]],[[63776,63776],"mapped",[40478]],[[63777,63777],"mapped",[23888]],[[63778,63778],"mapped",[28651]],[[63779,63779],"mapped",[34253]],[[63780,63780],"mapped",[35172]],[[63781,63781],"mapped",[25289]],[[63782,63782],"mapped",[33240]],[[63783,63783],"mapped",[34847]],[[63784,63784],"mapped",[24266]],[[63785,63785],"mapped",[26391]],[[63786,63786],"mapped",[28010]],[[63787,63787],"mapped",[29436]],[[63788,63788],"mapped",[37070]],[[63789,63789],"mapped",[20358]],[[63790,63790],"mapped",[20919]],[[63791,63791],"mapped",[21214]],[[63792,63792],"mapped",[25796]],[[63793,63793],"mapped",[27347]],[[63794,63794],"mapped",[29200]],[[63795,63795],"mapped",[30439]],[[63796,63796],"mapped",[32769]],[[63797,63797],"mapped",[34310]],[[63798,63798],"mapped",[34396]],[[63799,63799],"mapped",[36335]],[[63800,63800],"mapped",[38706]],[[63801,63801],"mapped",[39791]],[[63802,63802],"mapped",[40442]],[[63803,63803],"mapped",[30860]],[[63804,63804],"mapped",[31103]],[[63805,63805],"mapped",[32160]],[[63806,63806],"mapped",[33737]],[[63807,63807],"mapped",[37636]],[[63808,63808],"mapped",[40575]],[[63809,63809],"mapped",[35542]],[[63810,63810],"mapped",[22751]],[[63811,63811],"mapped",[24324]],[[63812,63812],"mapped",[31840]],[[63813,63813],"mapped",[32894]],[[63814,63814],"mapped",[29282]],[[63815,63815],"mapped",[30922]],[[63816,63816],"mapped",[36034]],[[63817,63817],"mapped",[38647]],[[63818,63818],"mapped",[22744]],[[63819,63819],"mapped",[23650]],[[63820,63820],"mapped",[27155]],[[63821,63821],"mapped",[28122]],[[63822,63822],"mapped",[28431]],[[63823,63823],"mapped",[32047]],[[63824,63824],"mapped",[32311]],[[63825,63825],"mapped",[38475]],[[63826,63826],"mapped",[21202]],[[63827,63827],"mapped",[32907]],[[63828,63828],"mapped",[20956]],[[63829,63829],"mapped",[20940]],[[63830,63830],"mapped",[31260]],[[63831,63831],"mapped",[32190]],[[63832,63832],"mapped",[33777]],[[63833,63833],"mapped",[38517]],[[63834,63834],"mapped",[35712]],[[63835,63835],"mapped",[25295]],[[63836,63836],"mapped",[27138]],[[63837,63837],"mapped",[35582]],[[63838,63838],"mapped",[20025]],[[63839,63839],"mapped",[23527]],[[63840,63840],"mapped",[24594]],[[63841,63841],"mapped",[29575]],[[63842,63842],"mapped",[30064]],[[63843,63843],"mapped",[21271]],[[63844,63844],"mapped",[30971]],[[63845,63845],"mapped",[20415]],[[63846,63846],"mapped",[24489]],[[63847,63847],"mapped",[19981]],[[63848,63848],"mapped",[27852]],[[63849,63849],"mapped",[25976]],[[63850,63850],"mapped",[32034]],[[63851,63851],"mapped",[21443]],[[63852,63852],"mapped",[22622]],[[63853,63853],"mapped",[30465]],[[63854,63854],"mapped",[33865]],[[63855,63855],"mapped",[35498]],[[63856,63856],"mapped",[27578]],[[63857,63857],"mapped",[36784]],[[63858,63858],"mapped",[27784]],[[63859,63859],"mapped",[25342]],[[63860,63860],"mapped",[33509]],[[63861,63861],"mapped",[25504]],[[63862,63862],"mapped",[30053]],[[63863,63863],"mapped",[20142]],[[63864,63864],"mapped",[20841]],[[63865,63865],"mapped",[20937]],[[63866,63866],"mapped",[26753]],[[63867,63867],"mapped",[31975]],[[63868,63868],"mapped",[33391]],[[63869,63869],"mapped",[35538]],[[63870,63870],"mapped",[37327]],[[63871,63871],"mapped",[21237]],[[63872,63872],"mapped",[21570]],[[63873,63873],"mapped",[22899]],[[63874,63874],"mapped",[24300]],[[63875,63875],"mapped",[26053]],[[63876,63876],"mapped",[28670]],[[63877,63877],"mapped",[31018]],[[63878,63878],"mapped",[38317]],[[63879,63879],"mapped",[39530]],[[63880,63880],"mapped",[40599]],[[63881,63881],"mapped",[40654]],[[63882,63882],"mapped",[21147]],[[63883,63883],"mapped",[26310]],[[63884,63884],"mapped",[27511]],[[63885,63885],"mapped",[36706]],[[63886,63886],"mapped",[24180]],[[63887,63887],"mapped",[24976]],[[63888,63888],"mapped",[25088]],[[63889,63889],"mapped",[25754]],[[63890,63890],"mapped",[28451]],[[63891,63891],"mapped",[29001]],[[63892,63892],"mapped",[29833]],[[63893,63893],"mapped",[31178]],[[63894,63894],"mapped",[32244]],[[63895,63895],"mapped",[32879]],[[63896,63896],"mapped",[36646]],[[63897,63897],"mapped",[34030]],[[63898,63898],"mapped",[36899]],[[63899,63899],"mapped",[37706]],[[63900,63900],"mapped",[21015]],[[63901,63901],"mapped",[21155]],[[63902,63902],"mapped",[21693]],[[63903,63903],"mapped",[28872]],[[63904,63904],"mapped",[35010]],[[63905,63905],"mapped",[35498]],[[63906,63906],"mapped",[24265]],[[63907,63907],"mapped",[24565]],[[63908,63908],"mapped",[25467]],[[63909,63909],"mapped",[27566]],[[63910,63910],"mapped",[31806]],[[63911,63911],"mapped",[29557]],[[63912,63912],"mapped",[20196]],[[63913,63913],"mapped",[22265]],[[63914,63914],"mapped",[23527]],[[63915,63915],"mapped",[23994]],[[63916,63916],"mapped",[24604]],[[63917,63917],"mapped",[29618]],[[63918,63918],"mapped",[29801]],[[63919,63919],"mapped",[32666]],[[63920,63920],"mapped",[32838]],[[63921,63921],"mapped",[37428]],[[63922,63922],"mapped",[38646]],[[63923,63923],"mapped",[38728]],[[63924,63924],"mapped",[38936]],[[63925,63925],"mapped",[20363]],[[63926,63926],"mapped",[31150]],[[63927,63927],"mapped",[37300]],[[63928,63928],"mapped",[38584]],[[63929,63929],"mapped",[24801]],[[63930,63930],"mapped",[20102]],[[63931,63931],"mapped",[20698]],[[63932,63932],"mapped",[23534]],[[63933,63933],"mapped",[23615]],[[63934,63934],"mapped",[26009]],[[63935,63935],"mapped",[27138]],[[63936,63936],"mapped",[29134]],[[63937,63937],"mapped",[30274]],[[63938,63938],"mapped",[34044]],[[63939,63939],"mapped",[36988]],[[63940,63940],"mapped",[40845]],[[63941,63941],"mapped",[26248]],[[63942,63942],"mapped",[38446]],[[63943,63943],"mapped",[21129]],[[63944,63944],"mapped",[26491]],[[63945,63945],"mapped",[26611]],[[63946,63946],"mapped",[27969]],[[63947,63947],"mapped",[28316]],[[63948,63948],"mapped",[29705]],[[63949,63949],"mapped",[30041]],[[63950,63950],"mapped",[30827]],[[63951,63951],"mapped",[32016]],[[63952,63952],"mapped",[39006]],[[63953,63953],"mapped",[20845]],[[63954,63954],"mapped",[25134]],[[63955,63955],"mapped",[38520]],[[63956,63956],"mapped",[20523]],[[63957,63957],"mapped",[23833]],[[63958,63958],"mapped",[28138]],[[63959,63959],"mapped",[36650]],[[63960,63960],"mapped",[24459]],[[63961,63961],"mapped",[24900]],[[63962,63962],"mapped",[26647]],[[63963,63963],"mapped",[29575]],[[63964,63964],"mapped",[38534]],[[63965,63965],"mapped",[21033]],[[63966,63966],"mapped",[21519]],[[63967,63967],"mapped",[23653]],[[63968,63968],"mapped",[26131]],[[63969,63969],"mapped",[26446]],[[63970,63970],"mapped",[26792]],[[63971,63971],"mapped",[27877]],[[63972,63972],"mapped",[29702]],[[63973,63973],"mapped",[30178]],[[63974,63974],"mapped",[32633]],[[63975,63975],"mapped",[35023]],[[63976,63976],"mapped",[35041]],[[63977,63977],"mapped",[37324]],[[63978,63978],"mapped",[38626]],[[63979,63979],"mapped",[21311]],[[63980,63980],"mapped",[28346]],[[63981,63981],"mapped",[21533]],[[63982,63982],"mapped",[29136]],[[63983,63983],"mapped",[29848]],[[63984,63984],"mapped",[34298]],[[63985,63985],"mapped",[38563]],[[63986,63986],"mapped",[40023]],[[63987,63987],"mapped",[40607]],[[63988,63988],"mapped",[26519]],[[63989,63989],"mapped",[28107]],[[63990,63990],"mapped",[33256]],[[63991,63991],"mapped",[31435]],[[63992,63992],"mapped",[31520]],[[63993,63993],"mapped",[31890]],[[63994,63994],"mapped",[29376]],[[63995,63995],"mapped",[28825]],[[63996,63996],"mapped",[35672]],[[63997,63997],"mapped",[20160]],[[63998,63998],"mapped",[33590]],[[63999,63999],"mapped",[21050]],[[64000,64000],"mapped",[20999]],[[64001,64001],"mapped",[24230]],[[64002,64002],"mapped",[25299]],[[64003,64003],"mapped",[31958]],[[64004,64004],"mapped",[23429]],[[64005,64005],"mapped",[27934]],[[64006,64006],"mapped",[26292]],[[64007,64007],"mapped",[36667]],[[64008,64008],"mapped",[34892]],[[64009,64009],"mapped",[38477]],[[64010,64010],"mapped",[35211]],[[64011,64011],"mapped",[24275]],[[64012,64012],"mapped",[20800]],[[64013,64013],"mapped",[21952]],[[64014,64015],"valid"],[[64016,64016],"mapped",[22618]],[[64017,64017],"valid"],[[64018,64018],"mapped",[26228]],[[64019,64020],"valid"],[[64021,64021],"mapped",[20958]],[[64022,64022],"mapped",[29482]],[[64023,64023],"mapped",[30410]],[[64024,64024],"mapped",[31036]],[[64025,64025],"mapped",[31070]],[[64026,64026],"mapped",[31077]],[[64027,64027],"mapped",[31119]],[[64028,64028],"mapped",[38742]],[[64029,64029],"mapped",[31934]],[[64030,64030],"mapped",[32701]],[[64031,64031],"valid"],[[64032,64032],"mapped",[34322]],[[64033,64033],"valid"],[[64034,64034],"mapped",[35576]],[[64035,64036],"valid"],[[64037,64037],"mapped",[36920]],[[64038,64038],"mapped",[37117]],[[64039,64041],"valid"],[[64042,64042],"mapped",[39151]],[[64043,64043],"mapped",[39164]],[[64044,64044],"mapped",[39208]],[[64045,64045],"mapped",[40372]],[[64046,64046],"mapped",[37086]],[[64047,64047],"mapped",[38583]],[[64048,64048],"mapped",[20398]],[[64049,64049],"mapped",[20711]],[[64050,64050],"mapped",[20813]],[[64051,64051],"mapped",[21193]],[[64052,64052],"mapped",[21220]],[[64053,64053],"mapped",[21329]],[[64054,64054],"mapped",[21917]],[[64055,64055],"mapped",[22022]],[[64056,64056],"mapped",[22120]],[[64057,64057],"mapped",[22592]],[[64058,64058],"mapped",[22696]],[[64059,64059],"mapped",[23652]],[[64060,64060],"mapped",[23662]],[[64061,64061],"mapped",[24724]],[[64062,64062],"mapped",[24936]],[[64063,64063],"mapped",[24974]],[[64064,64064],"mapped",[25074]],[[64065,64065],"mapped",[25935]],[[64066,64066],"mapped",[26082]],[[64067,64067],"mapped",[26257]],[[64068,64068],"mapped",[26757]],[[64069,64069],"mapped",[28023]],[[64070,64070],"mapped",[28186]],[[64071,64071],"mapped",[28450]],[[64072,64072],"mapped",[29038]],[[64073,64073],"mapped",[29227]],[[64074,64074],"mapped",[29730]],[[64075,64075],"mapped",[30865]],[[64076,64076],"mapped",[31038]],[[64077,64077],"mapped",[31049]],[[64078,64078],"mapped",[31048]],[[64079,64079],"mapped",[31056]],[[64080,64080],"mapped",[31062]],[[64081,64081],"mapped",[31069]],[[64082,64082],"mapped",[31117]],[[64083,64083],"mapped",[31118]],[[64084,64084],"mapped",[31296]],[[64085,64085],"mapped",[31361]],[[64086,64086],"mapped",[31680]],[[64087,64087],"mapped",[32244]],[[64088,64088],"mapped",[32265]],[[64089,64089],"mapped",[32321]],[[64090,64090],"mapped",[32626]],[[64091,64091],"mapped",[32773]],[[64092,64092],"mapped",[33261]],[[64093,64094],"mapped",[33401]],[[64095,64095],"mapped",[33879]],[[64096,64096],"mapped",[35088]],[[64097,64097],"mapped",[35222]],[[64098,64098],"mapped",[35585]],[[64099,64099],"mapped",[35641]],[[64100,64100],"mapped",[36051]],[[64101,64101],"mapped",[36104]],[[64102,64102],"mapped",[36790]],[[64103,64103],"mapped",[36920]],[[64104,64104],"mapped",[38627]],[[64105,64105],"mapped",[38911]],[[64106,64106],"mapped",[38971]],[[64107,64107],"mapped",[24693]],[[64108,64108],"mapped",[148206]],[[64109,64109],"mapped",[33304]],[[64110,64111],"disallowed"],[[64112,64112],"mapped",[20006]],[[64113,64113],"mapped",[20917]],[[64114,64114],"mapped",[20840]],[[64115,64115],"mapped",[20352]],[[64116,64116],"mapped",[20805]],[[64117,64117],"mapped",[20864]],[[64118,64118],"mapped",[21191]],[[64119,64119],"mapped",[21242]],[[64120,64120],"mapped",[21917]],[[64121,64121],"mapped",[21845]],[[64122,64122],"mapped",[21913]],[[64123,64123],"mapped",[21986]],[[64124,64124],"mapped",[22618]],[[64125,64125],"mapped",[22707]],[[64126,64126],"mapped",[22852]],[[64127,64127],"mapped",[22868]],[[64128,64128],"mapped",[23138]],[[64129,64129],"mapped",[23336]],[[64130,64130],"mapped",[24274]],[[64131,64131],"mapped",[24281]],[[64132,64132],"mapped",[24425]],[[64133,64133],"mapped",[24493]],[[64134,64134],"mapped",[24792]],[[64135,64135],"mapped",[24910]],[[64136,64136],"mapped",[24840]],[[64137,64137],"mapped",[24974]],[[64138,64138],"mapped",[24928]],[[64139,64139],"mapped",[25074]],[[64140,64140],"mapped",[25140]],[[64141,64141],"mapped",[25540]],[[64142,64142],"mapped",[25628]],[[64143,64143],"mapped",[25682]],[[64144,64144],"mapped",[25942]],[[64145,64145],"mapped",[26228]],[[64146,64146],"mapped",[26391]],[[64147,64147],"mapped",[26395]],[[64148,64148],"mapped",[26454]],[[64149,64149],"mapped",[27513]],[[64150,64150],"mapped",[27578]],[[64151,64151],"mapped",[27969]],[[64152,64152],"mapped",[28379]],[[64153,64153],"mapped",[28363]],[[64154,64154],"mapped",[28450]],[[64155,64155],"mapped",[28702]],[[64156,64156],"mapped",[29038]],[[64157,64157],"mapped",[30631]],[[64158,64158],"mapped",[29237]],[[64159,64159],"mapped",[29359]],[[64160,64160],"mapped",[29482]],[[64161,64161],"mapped",[29809]],[[64162,64162],"mapped",[29958]],[[64163,64163],"mapped",[30011]],[[64164,64164],"mapped",[30237]],[[64165,64165],"mapped",[30239]],[[64166,64166],"mapped",[30410]],[[64167,64167],"mapped",[30427]],[[64168,64168],"mapped",[30452]],[[64169,64169],"mapped",[30538]],[[64170,64170],"mapped",[30528]],[[64171,64171],"mapped",[30924]],[[64172,64172],"mapped",[31409]],[[64173,64173],"mapped",[31680]],[[64174,64174],"mapped",[31867]],[[64175,64175],"mapped",[32091]],[[64176,64176],"mapped",[32244]],[[64177,64177],"mapped",[32574]],[[64178,64178],"mapped",[32773]],[[64179,64179],"mapped",[33618]],[[64180,64180],"mapped",[33775]],[[64181,64181],"mapped",[34681]],[[64182,64182],"mapped",[35137]],[[64183,64183],"mapped",[35206]],[[64184,64184],"mapped",[35222]],[[64185,64185],"mapped",[35519]],[[64186,64186],"mapped",[35576]],[[64187,64187],"mapped",[35531]],[[64188,64188],"mapped",[35585]],[[64189,64189],"mapped",[35582]],[[64190,64190],"mapped",[35565]],[[64191,64191],"mapped",[35641]],[[64192,64192],"mapped",[35722]],[[64193,64193],"mapped",[36104]],[[64194,64194],"mapped",[36664]],[[64195,64195],"mapped",[36978]],[[64196,64196],"mapped",[37273]],[[64197,64197],"mapped",[37494]],[[64198,64198],"mapped",[38524]],[[64199,64199],"mapped",[38627]],[[64200,64200],"mapped",[38742]],[[64201,64201],"mapped",[38875]],[[64202,64202],"mapped",[38911]],[[64203,64203],"mapped",[38923]],[[64204,64204],"mapped",[38971]],[[64205,64205],"mapped",[39698]],[[64206,64206],"mapped",[40860]],[[64207,64207],"mapped",[141386]],[[64208,64208],"mapped",[141380]],[[64209,64209],"mapped",[144341]],[[64210,64210],"mapped",[15261]],[[64211,64211],"mapped",[16408]],[[64212,64212],"mapped",[16441]],[[64213,64213],"mapped",[152137]],[[64214,64214],"mapped",[154832]],[[64215,64215],"mapped",[163539]],[[64216,64216],"mapped",[40771]],[[64217,64217],"mapped",[40846]],[[64218,64255],"disallowed"],[[64256,64256],"mapped",[102,102]],[[64257,64257],"mapped",[102,105]],[[64258,64258],"mapped",[102,108]],[[64259,64259],"mapped",[102,102,105]],[[64260,64260],"mapped",[102,102,108]],[[64261,64262],"mapped",[115,116]],[[64263,64274],"disallowed"],[[64275,64275],"mapped",[1396,1398]],[[64276,64276],"mapped",[1396,1381]],[[64277,64277],"mapped",[1396,1387]],[[64278,64278],"mapped",[1406,1398]],[[64279,64279],"mapped",[1396,1389]],[[64280,64284],"disallowed"],[[64285,64285],"mapped",[1497,1460]],[[64286,64286],"valid"],[[64287,64287],"mapped",[1522,1463]],[[64288,64288],"mapped",[1506]],[[64289,64289],"mapped",[1488]],[[64290,64290],"mapped",[1491]],[[64291,64291],"mapped",[1492]],[[64292,64292],"mapped",[1499]],[[64293,64293],"mapped",[1500]],[[64294,64294],"mapped",[1501]],[[64295,64295],"mapped",[1512]],[[64296,64296],"mapped",[1514]],[[64297,64297],"disallowed_STD3_mapped",[43]],[[64298,64298],"mapped",[1513,1473]],[[64299,64299],"mapped",[1513,1474]],[[64300,64300],"mapped",[1513,1468,1473]],[[64301,64301],"mapped",[1513,1468,1474]],[[64302,64302],"mapped",[1488,1463]],[[64303,64303],"mapped",[1488,1464]],[[64304,64304],"mapped",[1488,1468]],[[64305,64305],"mapped",[1489,1468]],[[64306,64306],"mapped",[1490,1468]],[[64307,64307],"mapped",[1491,1468]],[[64308,64308],"mapped",[1492,1468]],[[64309,64309],"mapped",[1493,1468]],[[64310,64310],"mapped",[1494,1468]],[[64311,64311],"disallowed"],[[64312,64312],"mapped",[1496,1468]],[[64313,64313],"mapped",[1497,1468]],[[64314,64314],"mapped",[1498,1468]],[[64315,64315],"mapped",[1499,1468]],[[64316,64316],"mapped",[1500,1468]],[[64317,64317],"disallowed"],[[64318,64318],"mapped",[1502,1468]],[[64319,64319],"disallowed"],[[64320,64320],"mapped",[1504,1468]],[[64321,64321],"mapped",[1505,1468]],[[64322,64322],"disallowed"],[[64323,64323],"mapped",[1507,1468]],[[64324,64324],"mapped",[1508,1468]],[[64325,64325],"disallowed"],[[64326,64326],"mapped",[1510,1468]],[[64327,64327],"mapped",[1511,1468]],[[64328,64328],"mapped",[1512,1468]],[[64329,64329],"mapped",[1513,1468]],[[64330,64330],"mapped",[1514,1468]],[[64331,64331],"mapped",[1493,1465]],[[64332,64332],"mapped",[1489,1471]],[[64333,64333],"mapped",[1499,1471]],[[64334,64334],"mapped",[1508,1471]],[[64335,64335],"mapped",[1488,1500]],[[64336,64337],"mapped",[1649]],[[64338,64341],"mapped",[1659]],[[64342,64345],"mapped",[1662]],[[64346,64349],"mapped",[1664]],[[64350,64353],"mapped",[1658]],[[64354,64357],"mapped",[1663]],[[64358,64361],"mapped",[1657]],[[64362,64365],"mapped",[1700]],[[64366,64369],"mapped",[1702]],[[64370,64373],"mapped",[1668]],[[64374,64377],"mapped",[1667]],[[64378,64381],"mapped",[1670]],[[64382,64385],"mapped",[1671]],[[64386,64387],"mapped",[1677]],[[64388,64389],"mapped",[1676]],[[64390,64391],"mapped",[1678]],[[64392,64393],"mapped",[1672]],[[64394,64395],"mapped",[1688]],[[64396,64397],"mapped",[1681]],[[64398,64401],"mapped",[1705]],[[64402,64405],"mapped",[1711]],[[64406,64409],"mapped",[1715]],[[64410,64413],"mapped",[1713]],[[64414,64415],"mapped",[1722]],[[64416,64419],"mapped",[1723]],[[64420,64421],"mapped",[1728]],[[64422,64425],"mapped",[1729]],[[64426,64429],"mapped",[1726]],[[64430,64431],"mapped",[1746]],[[64432,64433],"mapped",[1747]],[[64434,64449],"valid",[],"NV8"],[[64450,64466],"disallowed"],[[64467,64470],"mapped",[1709]],[[64471,64472],"mapped",[1735]],[[64473,64474],"mapped",[1734]],[[64475,64476],"mapped",[1736]],[[64477,64477],"mapped",[1735,1652]],[[64478,64479],"mapped",[1739]],[[64480,64481],"mapped",[1733]],[[64482,64483],"mapped",[1737]],[[64484,64487],"mapped",[1744]],[[64488,64489],"mapped",[1609]],[[64490,64491],"mapped",[1574,1575]],[[64492,64493],"mapped",[1574,1749]],[[64494,64495],"mapped",[1574,1608]],[[64496,64497],"mapped",[1574,1735]],[[64498,64499],"mapped",[1574,1734]],[[64500,64501],"mapped",[1574,1736]],[[64502,64504],"mapped",[1574,1744]],[[64505,64507],"mapped",[1574,1609]],[[64508,64511],"mapped",[1740]],[[64512,64512],"mapped",[1574,1580]],[[64513,64513],"mapped",[1574,1581]],[[64514,64514],"mapped",[1574,1605]],[[64515,64515],"mapped",[1574,1609]],[[64516,64516],"mapped",[1574,1610]],[[64517,64517],"mapped",[1576,1580]],[[64518,64518],"mapped",[1576,1581]],[[64519,64519],"mapped",[1576,1582]],[[64520,64520],"mapped",[1576,1605]],[[64521,64521],"mapped",[1576,1609]],[[64522,64522],"mapped",[1576,1610]],[[64523,64523],"mapped",[1578,1580]],[[64524,64524],"mapped",[1578,1581]],[[64525,64525],"mapped",[1578,1582]],[[64526,64526],"mapped",[1578,1605]],[[64527,64527],"mapped",[1578,1609]],[[64528,64528],"mapped",[1578,1610]],[[64529,64529],"mapped",[1579,1580]],[[64530,64530],"mapped",[1579,1605]],[[64531,64531],"mapped",[1579,1609]],[[64532,64532],"mapped",[1579,1610]],[[64533,64533],"mapped",[1580,1581]],[[64534,64534],"mapped",[1580,1605]],[[64535,64535],"mapped",[1581,1580]],[[64536,64536],"mapped",[1581,1605]],[[64537,64537],"mapped",[1582,1580]],[[64538,64538],"mapped",[1582,1581]],[[64539,64539],"mapped",[1582,1605]],[[64540,64540],"mapped",[1587,1580]],[[64541,64541],"mapped",[1587,1581]],[[64542,64542],"mapped",[1587,1582]],[[64543,64543],"mapped",[1587,1605]],[[64544,64544],"mapped",[1589,1581]],[[64545,64545],"mapped",[1589,1605]],[[64546,64546],"mapped",[1590,1580]],[[64547,64547],"mapped",[1590,1581]],[[64548,64548],"mapped",[1590,1582]],[[64549,64549],"mapped",[1590,1605]],[[64550,64550],"mapped",[1591,1581]],[[64551,64551],"mapped",[1591,1605]],[[64552,64552],"mapped",[1592,1605]],[[64553,64553],"mapped",[1593,1580]],[[64554,64554],"mapped",[1593,1605]],[[64555,64555],"mapped",[1594,1580]],[[64556,64556],"mapped",[1594,1605]],[[64557,64557],"mapped",[1601,1580]],[[64558,64558],"mapped",[1601,1581]],[[64559,64559],"mapped",[1601,1582]],[[64560,64560],"mapped",[1601,1605]],[[64561,64561],"mapped",[1601,1609]],[[64562,64562],"mapped",[1601,1610]],[[64563,64563],"mapped",[1602,1581]],[[64564,64564],"mapped",[1602,1605]],[[64565,64565],"mapped",[1602,1609]],[[64566,64566],"mapped",[1602,1610]],[[64567,64567],"mapped",[1603,1575]],[[64568,64568],"mapped",[1603,1580]],[[64569,64569],"mapped",[1603,1581]],[[64570,64570],"mapped",[1603,1582]],[[64571,64571],"mapped",[1603,1604]],[[64572,64572],"mapped",[1603,1605]],[[64573,64573],"mapped",[1603,1609]],[[64574,64574],"mapped",[1603,1610]],[[64575,64575],"mapped",[1604,1580]],[[64576,64576],"mapped",[1604,1581]],[[64577,64577],"mapped",[1604,1582]],[[64578,64578],"mapped",[1604,1605]],[[64579,64579],"mapped",[1604,1609]],[[64580,64580],"mapped",[1604,1610]],[[64581,64581],"mapped",[1605,1580]],[[64582,64582],"mapped",[1605,1581]],[[64583,64583],"mapped",[1605,1582]],[[64584,64584],"mapped",[1605,1605]],[[64585,64585],"mapped",[1605,1609]],[[64586,64586],"mapped",[1605,1610]],[[64587,64587],"mapped",[1606,1580]],[[64588,64588],"mapped",[1606,1581]],[[64589,64589],"mapped",[1606,1582]],[[64590,64590],"mapped",[1606,1605]],[[64591,64591],"mapped",[1606,1609]],[[64592,64592],"mapped",[1606,1610]],[[64593,64593],"mapped",[1607,1580]],[[64594,64594],"mapped",[1607,1605]],[[64595,64595],"mapped",[1607,1609]],[[64596,64596],"mapped",[1607,1610]],[[64597,64597],"mapped",[1610,1580]],[[64598,64598],"mapped",[1610,1581]],[[64599,64599],"mapped",[1610,1582]],[[64600,64600],"mapped",[1610,1605]],[[64601,64601],"mapped",[1610,1609]],[[64602,64602],"mapped",[1610,1610]],[[64603,64603],"mapped",[1584,1648]],[[64604,64604],"mapped",[1585,1648]],[[64605,64605],"mapped",[1609,1648]],[[64606,64606],"disallowed_STD3_mapped",[32,1612,1617]],[[64607,64607],"disallowed_STD3_mapped",[32,1613,1617]],[[64608,64608],"disallowed_STD3_mapped",[32,1614,1617]],[[64609,64609],"disallowed_STD3_mapped",[32,1615,1617]],[[64610,64610],"disallowed_STD3_mapped",[32,1616,1617]],[[64611,64611],"disallowed_STD3_mapped",[32,1617,1648]],[[64612,64612],"mapped",[1574,1585]],[[64613,64613],"mapped",[1574,1586]],[[64614,64614],"mapped",[1574,1605]],[[64615,64615],"mapped",[1574,1606]],[[64616,64616],"mapped",[1574,1609]],[[64617,64617],"mapped",[1574,1610]],[[64618,64618],"mapped",[1576,1585]],[[64619,64619],"mapped",[1576,1586]],[[64620,64620],"mapped",[1576,1605]],[[64621,64621],"mapped",[1576,1606]],[[64622,64622],"mapped",[1576,1609]],[[64623,64623],"mapped",[1576,1610]],[[64624,64624],"mapped",[1578,1585]],[[64625,64625],"mapped",[1578,1586]],[[64626,64626],"mapped",[1578,1605]],[[64627,64627],"mapped",[1578,1606]],[[64628,64628],"mapped",[1578,1609]],[[64629,64629],"mapped",[1578,1610]],[[64630,64630],"mapped",[1579,1585]],[[64631,64631],"mapped",[1579,1586]],[[64632,64632],"mapped",[1579,1605]],[[64633,64633],"mapped",[1579,1606]],[[64634,64634],"mapped",[1579,1609]],[[64635,64635],"mapped",[1579,1610]],[[64636,64636],"mapped",[1601,1609]],[[64637,64637],"mapped",[1601,1610]],[[64638,64638],"mapped",[1602,1609]],[[64639,64639],"mapped",[1602,1610]],[[64640,64640],"mapped",[1603,1575]],[[64641,64641],"mapped",[1603,1604]],[[64642,64642],"mapped",[1603,1605]],[[64643,64643],"mapped",[1603,1609]],[[64644,64644],"mapped",[1603,1610]],[[64645,64645],"mapped",[1604,1605]],[[64646,64646],"mapped",[1604,1609]],[[64647,64647],"mapped",[1604,1610]],[[64648,64648],"mapped",[1605,1575]],[[64649,64649],"mapped",[1605,1605]],[[64650,64650],"mapped",[1606,1585]],[[64651,64651],"mapped",[1606,1586]],[[64652,64652],"mapped",[1606,1605]],[[64653,64653],"mapped",[1606,1606]],[[64654,64654],"mapped",[1606,1609]],[[64655,64655],"mapped",[1606,1610]],[[64656,64656],"mapped",[1609,1648]],[[64657,64657],"mapped",[1610,1585]],[[64658,64658],"mapped",[1610,1586]],[[64659,64659],"mapped",[1610,1605]],[[64660,64660],"mapped",[1610,1606]],[[64661,64661],"mapped",[1610,1609]],[[64662,64662],"mapped",[1610,1610]],[[64663,64663],"mapped",[1574,1580]],[[64664,64664],"mapped",[1574,1581]],[[64665,64665],"mapped",[1574,1582]],[[64666,64666],"mapped",[1574,1605]],[[64667,64667],"mapped",[1574,1607]],[[64668,64668],"mapped",[1576,1580]],[[64669,64669],"mapped",[1576,1581]],[[64670,64670],"mapped",[1576,1582]],[[64671,64671],"mapped",[1576,1605]],[[64672,64672],"mapped",[1576,1607]],[[64673,64673],"mapped",[1578,1580]],[[64674,64674],"mapped",[1578,1581]],[[64675,64675],"mapped",[1578,1582]],[[64676,64676],"mapped",[1578,1605]],[[64677,64677],"mapped",[1578,1607]],[[64678,64678],"mapped",[1579,1605]],[[64679,64679],"mapped",[1580,1581]],[[64680,64680],"mapped",[1580,1605]],[[64681,64681],"mapped",[1581,1580]],[[64682,64682],"mapped",[1581,1605]],[[64683,64683],"mapped",[1582,1580]],[[64684,64684],"mapped",[1582,1605]],[[64685,64685],"mapped",[1587,1580]],[[64686,64686],"mapped",[1587,1581]],[[64687,64687],"mapped",[1587,1582]],[[64688,64688],"mapped",[1587,1605]],[[64689,64689],"mapped",[1589,1581]],[[64690,64690],"mapped",[1589,1582]],[[64691,64691],"mapped",[1589,1605]],[[64692,64692],"mapped",[1590,1580]],[[64693,64693],"mapped",[1590,1581]],[[64694,64694],"mapped",[1590,1582]],[[64695,64695],"mapped",[1590,1605]],[[64696,64696],"mapped",[1591,1581]],[[64697,64697],"mapped",[1592,1605]],[[64698,64698],"mapped",[1593,1580]],[[64699,64699],"mapped",[1593,1605]],[[64700,64700],"mapped",[1594,1580]],[[64701,64701],"mapped",[1594,1605]],[[64702,64702],"mapped",[1601,1580]],[[64703,64703],"mapped",[1601,1581]],[[64704,64704],"mapped",[1601,1582]],[[64705,64705],"mapped",[1601,1605]],[[64706,64706],"mapped",[1602,1581]],[[64707,64707],"mapped",[1602,1605]],[[64708,64708],"mapped",[1603,1580]],[[64709,64709],"mapped",[1603,1581]],[[64710,64710],"mapped",[1603,1582]],[[64711,64711],"mapped",[1603,1604]],[[64712,64712],"mapped",[1603,1605]],[[64713,64713],"mapped",[1604,1580]],[[64714,64714],"mapped",[1604,1581]],[[64715,64715],"mapped",[1604,1582]],[[64716,64716],"mapped",[1604,1605]],[[64717,64717],"mapped",[1604,1607]],[[64718,64718],"mapped",[1605,1580]],[[64719,64719],"mapped",[1605,1581]],[[64720,64720],"mapped",[1605,1582]],[[64721,64721],"mapped",[1605,1605]],[[64722,64722],"mapped",[1606,1580]],[[64723,64723],"mapped",[1606,1581]],[[64724,64724],"mapped",[1606,1582]],[[64725,64725],"mapped",[1606,1605]],[[64726,64726],"mapped",[1606,1607]],[[64727,64727],"mapped",[1607,1580]],[[64728,64728],"mapped",[1607,1605]],[[64729,64729],"mapped",[1607,1648]],[[64730,64730],"mapped",[1610,1580]],[[64731,64731],"mapped",[1610,1581]],[[64732,64732],"mapped",[1610,1582]],[[64733,64733],"mapped",[1610,1605]],[[64734,64734],"mapped",[1610,1607]],[[64735,64735],"mapped",[1574,1605]],[[64736,64736],"mapped",[1574,1607]],[[64737,64737],"mapped",[1576,1605]],[[64738,64738],"mapped",[1576,1607]],[[64739,64739],"mapped",[1578,1605]],[[64740,64740],"mapped",[1578,1607]],[[64741,64741],"mapped",[1579,1605]],[[64742,64742],"mapped",[1579,1607]],[[64743,64743],"mapped",[1587,1605]],[[64744,64744],"mapped",[1587,1607]],[[64745,64745],"mapped",[1588,1605]],[[64746,64746],"mapped",[1588,1607]],[[64747,64747],"mapped",[1603,1604]],[[64748,64748],"mapped",[1603,1605]],[[64749,64749],"mapped",[1604,1605]],[[64750,64750],"mapped",[1606,1605]],[[64751,64751],"mapped",[1606,1607]],[[64752,64752],"mapped",[1610,1605]],[[64753,64753],"mapped",[1610,1607]],[[64754,64754],"mapped",[1600,1614,1617]],[[64755,64755],"mapped",[1600,1615,1617]],[[64756,64756],"mapped",[1600,1616,1617]],[[64757,64757],"mapped",[1591,1609]],[[64758,64758],"mapped",[1591,1610]],[[64759,64759],"mapped",[1593,1609]],[[64760,64760],"mapped",[1593,1610]],[[64761,64761],"mapped",[1594,1609]],[[64762,64762],"mapped",[1594,1610]],[[64763,64763],"mapped",[1587,1609]],[[64764,64764],"mapped",[1587,1610]],[[64765,64765],"mapped",[1588,1609]],[[64766,64766],"mapped",[1588,1610]],[[64767,64767],"mapped",[1581,1609]],[[64768,64768],"mapped",[1581,1610]],[[64769,64769],"mapped",[1580,1609]],[[64770,64770],"mapped",[1580,1610]],[[64771,64771],"mapped",[1582,1609]],[[64772,64772],"mapped",[1582,1610]],[[64773,64773],"mapped",[1589,1609]],[[64774,64774],"mapped",[1589,1610]],[[64775,64775],"mapped",[1590,1609]],[[64776,64776],"mapped",[1590,1610]],[[64777,64777],"mapped",[1588,1580]],[[64778,64778],"mapped",[1588,1581]],[[64779,64779],"mapped",[1588,1582]],[[64780,64780],"mapped",[1588,1605]],[[64781,64781],"mapped",[1588,1585]],[[64782,64782],"mapped",[1587,1585]],[[64783,64783],"mapped",[1589,1585]],[[64784,64784],"mapped",[1590,1585]],[[64785,64785],"mapped",[1591,1609]],[[64786,64786],"mapped",[1591,1610]],[[64787,64787],"mapped",[1593,1609]],[[64788,64788],"mapped",[1593,1610]],[[64789,64789],"mapped",[1594,1609]],[[64790,64790],"mapped",[1594,1610]],[[64791,64791],"mapped",[1587,1609]],[[64792,64792],"mapped",[1587,1610]],[[64793,64793],"mapped",[1588,1609]],[[64794,64794],"mapped",[1588,1610]],[[64795,64795],"mapped",[1581,1609]],[[64796,64796],"mapped",[1581,1610]],[[64797,64797],"mapped",[1580,1609]],[[64798,64798],"mapped",[1580,1610]],[[64799,64799],"mapped",[1582,1609]],[[64800,64800],"mapped",[1582,1610]],[[64801,64801],"mapped",[1589,1609]],[[64802,64802],"mapped",[1589,1610]],[[64803,64803],"mapped",[1590,1609]],[[64804,64804],"mapped",[1590,1610]],[[64805,64805],"mapped",[1588,1580]],[[64806,64806],"mapped",[1588,1581]],[[64807,64807],"mapped",[1588,1582]],[[64808,64808],"mapped",[1588,1605]],[[64809,64809],"mapped",[1588,1585]],[[64810,64810],"mapped",[1587,1585]],[[64811,64811],"mapped",[1589,1585]],[[64812,64812],"mapped",[1590,1585]],[[64813,64813],"mapped",[1588,1580]],[[64814,64814],"mapped",[1588,1581]],[[64815,64815],"mapped",[1588,1582]],[[64816,64816],"mapped",[1588,1605]],[[64817,64817],"mapped",[1587,1607]],[[64818,64818],"mapped",[1588,1607]],[[64819,64819],"mapped",[1591,1605]],[[64820,64820],"mapped",[1587,1580]],[[64821,64821],"mapped",[1587,1581]],[[64822,64822],"mapped",[1587,1582]],[[64823,64823],"mapped",[1588,1580]],[[64824,64824],"mapped",[1588,1581]],[[64825,64825],"mapped",[1588,1582]],[[64826,64826],"mapped",[1591,1605]],[[64827,64827],"mapped",[1592,1605]],[[64828,64829],"mapped",[1575,1611]],[[64830,64831],"valid",[],"NV8"],[[64832,64847],"disallowed"],[[64848,64848],"mapped",[1578,1580,1605]],[[64849,64850],"mapped",[1578,1581,1580]],[[64851,64851],"mapped",[1578,1581,1605]],[[64852,64852],"mapped",[1578,1582,1605]],[[64853,64853],"mapped",[1578,1605,1580]],[[64854,64854],"mapped",[1578,1605,1581]],[[64855,64855],"mapped",[1578,1605,1582]],[[64856,64857],"mapped",[1580,1605,1581]],[[64858,64858],"mapped",[1581,1605,1610]],[[64859,64859],"mapped",[1581,1605,1609]],[[64860,64860],"mapped",[1587,1581,1580]],[[64861,64861],"mapped",[1587,1580,1581]],[[64862,64862],"mapped",[1587,1580,1609]],[[64863,64864],"mapped",[1587,1605,1581]],[[64865,64865],"mapped",[1587,1605,1580]],[[64866,64867],"mapped",[1587,1605,1605]],[[64868,64869],"mapped",[1589,1581,1581]],[[64870,64870],"mapped",[1589,1605,1605]],[[64871,64872],"mapped",[1588,1581,1605]],[[64873,64873],"mapped",[1588,1580,1610]],[[64874,64875],"mapped",[1588,1605,1582]],[[64876,64877],"mapped",[1588,1605,1605]],[[64878,64878],"mapped",[1590,1581,1609]],[[64879,64880],"mapped",[1590,1582,1605]],[[64881,64882],"mapped",[1591,1605,1581]],[[64883,64883],"mapped",[1591,1605,1605]],[[64884,64884],"mapped",[1591,1605,1610]],[[64885,64885],"mapped",[1593,1580,1605]],[[64886,64887],"mapped",[1593,1605,1605]],[[64888,64888],"mapped",[1593,1605,1609]],[[64889,64889],"mapped",[1594,1605,1605]],[[64890,64890],"mapped",[1594,1605,1610]],[[64891,64891],"mapped",[1594,1605,1609]],[[64892,64893],"mapped",[1601,1582,1605]],[[64894,64894],"mapped",[1602,1605,1581]],[[64895,64895],"mapped",[1602,1605,1605]],[[64896,64896],"mapped",[1604,1581,1605]],[[64897,64897],"mapped",[1604,1581,1610]],[[64898,64898],"mapped",[1604,1581,1609]],[[64899,64900],"mapped",[1604,1580,1580]],[[64901,64902],"mapped",[1604,1582,1605]],[[64903,64904],"mapped",[1604,1605,1581]],[[64905,64905],"mapped",[1605,1581,1580]],[[64906,64906],"mapped",[1605,1581,1605]],[[64907,64907],"mapped",[1605,1581,1610]],[[64908,64908],"mapped",[1605,1580,1581]],[[64909,64909],"mapped",[1605,1580,1605]],[[64910,64910],"mapped",[1605,1582,1580]],[[64911,64911],"mapped",[1605,1582,1605]],[[64912,64913],"disallowed"],[[64914,64914],"mapped",[1605,1580,1582]],[[64915,64915],"mapped",[1607,1605,1580]],[[64916,64916],"mapped",[1607,1605,1605]],[[64917,64917],"mapped",[1606,1581,1605]],[[64918,64918],"mapped",[1606,1581,1609]],[[64919,64920],"mapped",[1606,1580,1605]],[[64921,64921],"mapped",[1606,1580,1609]],[[64922,64922],"mapped",[1606,1605,1610]],[[64923,64923],"mapped",[1606,1605,1609]],[[64924,64925],"mapped",[1610,1605,1605]],[[64926,64926],"mapped",[1576,1582,1610]],[[64927,64927],"mapped",[1578,1580,1610]],[[64928,64928],"mapped",[1578,1580,1609]],[[64929,64929],"mapped",[1578,1582,1610]],[[64930,64930],"mapped",[1578,1582,1609]],[[64931,64931],"mapped",[1578,1605,1610]],[[64932,64932],"mapped",[1578,1605,1609]],[[64933,64933],"mapped",[1580,1605,1610]],[[64934,64934],"mapped",[1580,1581,1609]],[[64935,64935],"mapped",[1580,1605,1609]],[[64936,64936],"mapped",[1587,1582,1609]],[[64937,64937],"mapped",[1589,1581,1610]],[[64938,64938],"mapped",[1588,1581,1610]],[[64939,64939],"mapped",[1590,1581,1610]],[[64940,64940],"mapped",[1604,1580,1610]],[[64941,64941],"mapped",[1604,1605,1610]],[[64942,64942],"mapped",[1610,1581,1610]],[[64943,64943],"mapped",[1610,1580,1610]],[[64944,64944],"mapped",[1610,1605,1610]],[[64945,64945],"mapped",[1605,1605,1610]],[[64946,64946],"mapped",[1602,1605,1610]],[[64947,64947],"mapped",[1606,1581,1610]],[[64948,64948],"mapped",[1602,1605,1581]],[[64949,64949],"mapped",[1604,1581,1605]],[[64950,64950],"mapped",[1593,1605,1610]],[[64951,64951],"mapped",[1603,1605,1610]],[[64952,64952],"mapped",[1606,1580,1581]],[[64953,64953],"mapped",[1605,1582,1610]],[[64954,64954],"mapped",[1604,1580,1605]],[[64955,64955],"mapped",[1603,1605,1605]],[[64956,64956],"mapped",[1604,1580,1605]],[[64957,64957],"mapped",[1606,1580,1581]],[[64958,64958],"mapped",[1580,1581,1610]],[[64959,64959],"mapped",[1581,1580,1610]],[[64960,64960],"mapped",[1605,1580,1610]],[[64961,64961],"mapped",[1601,1605,1610]],[[64962,64962],"mapped",[1576,1581,1610]],[[64963,64963],"mapped",[1603,1605,1605]],[[64964,64964],"mapped",[1593,1580,1605]],[[64965,64965],"mapped",[1589,1605,1605]],[[64966,64966],"mapped",[1587,1582,1610]],[[64967,64967],"mapped",[1606,1580,1610]],[[64968,64975],"disallowed"],[[64976,65007],"disallowed"],[[65008,65008],"mapped",[1589,1604,1746]],[[65009,65009],"mapped",[1602,1604,1746]],[[65010,65010],"mapped",[1575,1604,1604,1607]],[[65011,65011],"mapped",[1575,1603,1576,1585]],[[65012,65012],"mapped",[1605,1581,1605,1583]],[[65013,65013],"mapped",[1589,1604,1593,1605]],[[65014,65014],"mapped",[1585,1587,1608,1604]],[[65015,65015],"mapped",[1593,1604,1610,1607]],[[65016,65016],"mapped",[1608,1587,1604,1605]],[[65017,65017],"mapped",[1589,1604,1609]],[[65018,65018],"disallowed_STD3_mapped",[1589,1604,1609,32,1575,1604,1604,1607,32,1593,1604,1610,1607,32,1608,1587,1604,1605]],[[65019,65019],"disallowed_STD3_mapped",[1580,1604,32,1580,1604,1575,1604,1607]],[[65020,65020],"mapped",[1585,1740,1575,1604]],[[65021,65021],"valid",[],"NV8"],[[65022,65023],"disallowed"],[[65024,65039],"ignored"],[[65040,65040],"disallowed_STD3_mapped",[44]],[[65041,65041],"mapped",[12289]],[[65042,65042],"disallowed"],[[65043,65043],"disallowed_STD3_mapped",[58]],[[65044,65044],"disallowed_STD3_mapped",[59]],[[65045,65045],"disallowed_STD3_mapped",[33]],[[65046,65046],"disallowed_STD3_mapped",[63]],[[65047,65047],"mapped",[12310]],[[65048,65048],"mapped",[12311]],[[65049,65049],"disallowed"],[[65050,65055],"disallowed"],[[65056,65059],"valid"],[[65060,65062],"valid"],[[65063,65069],"valid"],[[65070,65071],"valid"],[[65072,65072],"disallowed"],[[65073,65073],"mapped",[8212]],[[65074,65074],"mapped",[8211]],[[65075,65076],"disallowed_STD3_mapped",[95]],[[65077,65077],"disallowed_STD3_mapped",[40]],[[65078,65078],"disallowed_STD3_mapped",[41]],[[65079,65079],"disallowed_STD3_mapped",[123]],[[65080,65080],"disallowed_STD3_mapped",[125]],[[65081,65081],"mapped",[12308]],[[65082,65082],"mapped",[12309]],[[65083,65083],"mapped",[12304]],[[65084,65084],"mapped",[12305]],[[65085,65085],"mapped",[12298]],[[65086,65086],"mapped",[12299]],[[65087,65087],"mapped",[12296]],[[65088,65088],"mapped",[12297]],[[65089,65089],"mapped",[12300]],[[65090,65090],"mapped",[12301]],[[65091,65091],"mapped",[12302]],[[65092,65092],"mapped",[12303]],[[65093,65094],"valid",[],"NV8"],[[65095,65095],"disallowed_STD3_mapped",[91]],[[65096,65096],"disallowed_STD3_mapped",[93]],[[65097,65100],"disallowed_STD3_mapped",[32,773]],[[65101,65103],"disallowed_STD3_mapped",[95]],[[65104,65104],"disallowed_STD3_mapped",[44]],[[65105,65105],"mapped",[12289]],[[65106,65106],"disallowed"],[[65107,65107],"disallowed"],[[65108,65108],"disallowed_STD3_mapped",[59]],[[65109,65109],"disallowed_STD3_mapped",[58]],[[65110,65110],"disallowed_STD3_mapped",[63]],[[65111,65111],"disallowed_STD3_mapped",[33]],[[65112,65112],"mapped",[8212]],[[65113,65113],"disallowed_STD3_mapped",[40]],[[65114,65114],"disallowed_STD3_mapped",[41]],[[65115,65115],"disallowed_STD3_mapped",[123]],[[65116,65116],"disallowed_STD3_mapped",[125]],[[65117,65117],"mapped",[12308]],[[65118,65118],"mapped",[12309]],[[65119,65119],"disallowed_STD3_mapped",[35]],[[65120,65120],"disallowed_STD3_mapped",[38]],[[65121,65121],"disallowed_STD3_mapped",[42]],[[65122,65122],"disallowed_STD3_mapped",[43]],[[65123,65123],"mapped",[45]],[[65124,65124],"disallowed_STD3_mapped",[60]],[[65125,65125],"disallowed_STD3_mapped",[62]],[[65126,65126],"disallowed_STD3_mapped",[61]],[[65127,65127],"disallowed"],[[65128,65128],"disallowed_STD3_mapped",[92]],[[65129,65129],"disallowed_STD3_mapped",[36]],[[65130,65130],"disallowed_STD3_mapped",[37]],[[65131,65131],"disallowed_STD3_mapped",[64]],[[65132,65135],"disallowed"],[[65136,65136],"disallowed_STD3_mapped",[32,1611]],[[65137,65137],"mapped",[1600,1611]],[[65138,65138],"disallowed_STD3_mapped",[32,1612]],[[65139,65139],"valid"],[[65140,65140],"disallowed_STD3_mapped",[32,1613]],[[65141,65141],"disallowed"],[[65142,65142],"disallowed_STD3_mapped",[32,1614]],[[65143,65143],"mapped",[1600,1614]],[[65144,65144],"disallowed_STD3_mapped",[32,1615]],[[65145,65145],"mapped",[1600,1615]],[[65146,65146],"disallowed_STD3_mapped",[32,1616]],[[65147,65147],"mapped",[1600,1616]],[[65148,65148],"disallowed_STD3_mapped",[32,1617]],[[65149,65149],"mapped",[1600,1617]],[[65150,65150],"disallowed_STD3_mapped",[32,1618]],[[65151,65151],"mapped",[1600,1618]],[[65152,65152],"mapped",[1569]],[[65153,65154],"mapped",[1570]],[[65155,65156],"mapped",[1571]],[[65157,65158],"mapped",[1572]],[[65159,65160],"mapped",[1573]],[[65161,65164],"mapped",[1574]],[[65165,65166],"mapped",[1575]],[[65167,65170],"mapped",[1576]],[[65171,65172],"mapped",[1577]],[[65173,65176],"mapped",[1578]],[[65177,65180],"mapped",[1579]],[[65181,65184],"mapped",[1580]],[[65185,65188],"mapped",[1581]],[[65189,65192],"mapped",[1582]],[[65193,65194],"mapped",[1583]],[[65195,65196],"mapped",[1584]],[[65197,65198],"mapped",[1585]],[[65199,65200],"mapped",[1586]],[[65201,65204],"mapped",[1587]],[[65205,65208],"mapped",[1588]],[[65209,65212],"mapped",[1589]],[[65213,65216],"mapped",[1590]],[[65217,65220],"mapped",[1591]],[[65221,65224],"mapped",[1592]],[[65225,65228],"mapped",[1593]],[[65229,65232],"mapped",[1594]],[[65233,65236],"mapped",[1601]],[[65237,65240],"mapped",[1602]],[[65241,65244],"mapped",[1603]],[[65245,65248],"mapped",[1604]],[[65249,65252],"mapped",[1605]],[[65253,65256],"mapped",[1606]],[[65257,65260],"mapped",[1607]],[[65261,65262],"mapped",[1608]],[[65263,65264],"mapped",[1609]],[[65265,65268],"mapped",[1610]],[[65269,65270],"mapped",[1604,1570]],[[65271,65272],"mapped",[1604,1571]],[[65273,65274],"mapped",[1604,1573]],[[65275,65276],"mapped",[1604,1575]],[[65277,65278],"disallowed"],[[65279,65279],"ignored"],[[65280,65280],"disallowed"],[[65281,65281],"disallowed_STD3_mapped",[33]],[[65282,65282],"disallowed_STD3_mapped",[34]],[[65283,65283],"disallowed_STD3_mapped",[35]],[[65284,65284],"disallowed_STD3_mapped",[36]],[[65285,65285],"disallowed_STD3_mapped",[37]],[[65286,65286],"disallowed_STD3_mapped",[38]],[[65287,65287],"disallowed_STD3_mapped",[39]],[[65288,65288],"disallowed_STD3_mapped",[40]],[[65289,65289],"disallowed_STD3_mapped",[41]],[[65290,65290],"disallowed_STD3_mapped",[42]],[[65291,65291],"disallowed_STD3_mapped",[43]],[[65292,65292],"disallowed_STD3_mapped",[44]],[[65293,65293],"mapped",[45]],[[65294,65294],"mapped",[46]],[[65295,65295],"disallowed_STD3_mapped",[47]],[[65296,65296],"mapped",[48]],[[65297,65297],"mapped",[49]],[[65298,65298],"mapped",[50]],[[65299,65299],"mapped",[51]],[[65300,65300],"mapped",[52]],[[65301,65301],"mapped",[53]],[[65302,65302],"mapped",[54]],[[65303,65303],"mapped",[55]],[[65304,65304],"mapped",[56]],[[65305,65305],"mapped",[57]],[[65306,65306],"disallowed_STD3_mapped",[58]],[[65307,65307],"disallowed_STD3_mapped",[59]],[[65308,65308],"disallowed_STD3_mapped",[60]],[[65309,65309],"disallowed_STD3_mapped",[61]],[[65310,65310],"disallowed_STD3_mapped",[62]],[[65311,65311],"disallowed_STD3_mapped",[63]],[[65312,65312],"disallowed_STD3_mapped",[64]],[[65313,65313],"mapped",[97]],[[65314,65314],"mapped",[98]],[[65315,65315],"mapped",[99]],[[65316,65316],"mapped",[100]],[[65317,65317],"mapped",[101]],[[65318,65318],"mapped",[102]],[[65319,65319],"mapped",[103]],[[65320,65320],"mapped",[104]],[[65321,65321],"mapped",[105]],[[65322,65322],"mapped",[106]],[[65323,65323],"mapped",[107]],[[65324,65324],"mapped",[108]],[[65325,65325],"mapped",[109]],[[65326,65326],"mapped",[110]],[[65327,65327],"mapped",[111]],[[65328,65328],"mapped",[112]],[[65329,65329],"mapped",[113]],[[65330,65330],"mapped",[114]],[[65331,65331],"mapped",[115]],[[65332,65332],"mapped",[116]],[[65333,65333],"mapped",[117]],[[65334,65334],"mapped",[118]],[[65335,65335],"mapped",[119]],[[65336,65336],"mapped",[120]],[[65337,65337],"mapped",[121]],[[65338,65338],"mapped",[122]],[[65339,65339],"disallowed_STD3_mapped",[91]],[[65340,65340],"disallowed_STD3_mapped",[92]],[[65341,65341],"disallowed_STD3_mapped",[93]],[[65342,65342],"disallowed_STD3_mapped",[94]],[[65343,65343],"disallowed_STD3_mapped",[95]],[[65344,65344],"disallowed_STD3_mapped",[96]],[[65345,65345],"mapped",[97]],[[65346,65346],"mapped",[98]],[[65347,65347],"mapped",[99]],[[65348,65348],"mapped",[100]],[[65349,65349],"mapped",[101]],[[65350,65350],"mapped",[102]],[[65351,65351],"mapped",[103]],[[65352,65352],"mapped",[104]],[[65353,65353],"mapped",[105]],[[65354,65354],"mapped",[106]],[[65355,65355],"mapped",[107]],[[65356,65356],"mapped",[108]],[[65357,65357],"mapped",[109]],[[65358,65358],"mapped",[110]],[[65359,65359],"mapped",[111]],[[65360,65360],"mapped",[112]],[[65361,65361],"mapped",[113]],[[65362,65362],"mapped",[114]],[[65363,65363],"mapped",[115]],[[65364,65364],"mapped",[116]],[[65365,65365],"mapped",[117]],[[65366,65366],"mapped",[118]],[[65367,65367],"mapped",[119]],[[65368,65368],"mapped",[120]],[[65369,65369],"mapped",[121]],[[65370,65370],"mapped",[122]],[[65371,65371],"disallowed_STD3_mapped",[123]],[[65372,65372],"disallowed_STD3_mapped",[124]],[[65373,65373],"disallowed_STD3_mapped",[125]],[[65374,65374],"disallowed_STD3_mapped",[126]],[[65375,65375],"mapped",[10629]],[[65376,65376],"mapped",[10630]],[[65377,65377],"mapped",[46]],[[65378,65378],"mapped",[12300]],[[65379,65379],"mapped",[12301]],[[65380,65380],"mapped",[12289]],[[65381,65381],"mapped",[12539]],[[65382,65382],"mapped",[12530]],[[65383,65383],"mapped",[12449]],[[65384,65384],"mapped",[12451]],[[65385,65385],"mapped",[12453]],[[65386,65386],"mapped",[12455]],[[65387,65387],"mapped",[12457]],[[65388,65388],"mapped",[12515]],[[65389,65389],"mapped",[12517]],[[65390,65390],"mapped",[12519]],[[65391,65391],"mapped",[12483]],[[65392,65392],"mapped",[12540]],[[65393,65393],"mapped",[12450]],[[65394,65394],"mapped",[12452]],[[65395,65395],"mapped",[12454]],[[65396,65396],"mapped",[12456]],[[65397,65397],"mapped",[12458]],[[65398,65398],"mapped",[12459]],[[65399,65399],"mapped",[12461]],[[65400,65400],"mapped",[12463]],[[65401,65401],"mapped",[12465]],[[65402,65402],"mapped",[12467]],[[65403,65403],"mapped",[12469]],[[65404,65404],"mapped",[12471]],[[65405,65405],"mapped",[12473]],[[65406,65406],"mapped",[12475]],[[65407,65407],"mapped",[12477]],[[65408,65408],"mapped",[12479]],[[65409,65409],"mapped",[12481]],[[65410,65410],"mapped",[12484]],[[65411,65411],"mapped",[12486]],[[65412,65412],"mapped",[12488]],[[65413,65413],"mapped",[12490]],[[65414,65414],"mapped",[12491]],[[65415,65415],"mapped",[12492]],[[65416,65416],"mapped",[12493]],[[65417,65417],"mapped",[12494]],[[65418,65418],"mapped",[12495]],[[65419,65419],"mapped",[12498]],[[65420,65420],"mapped",[12501]],[[65421,65421],"mapped",[12504]],[[65422,65422],"mapped",[12507]],[[65423,65423],"mapped",[12510]],[[65424,65424],"mapped",[12511]],[[65425,65425],"mapped",[12512]],[[65426,65426],"mapped",[12513]],[[65427,65427],"mapped",[12514]],[[65428,65428],"mapped",[12516]],[[65429,65429],"mapped",[12518]],[[65430,65430],"mapped",[12520]],[[65431,65431],"mapped",[12521]],[[65432,65432],"mapped",[12522]],[[65433,65433],"mapped",[12523]],[[65434,65434],"mapped",[12524]],[[65435,65435],"mapped",[12525]],[[65436,65436],"mapped",[12527]],[[65437,65437],"mapped",[12531]],[[65438,65438],"mapped",[12441]],[[65439,65439],"mapped",[12442]],[[65440,65440],"disallowed"],[[65441,65441],"mapped",[4352]],[[65442,65442],"mapped",[4353]],[[65443,65443],"mapped",[4522]],[[65444,65444],"mapped",[4354]],[[65445,65445],"mapped",[4524]],[[65446,65446],"mapped",[4525]],[[65447,65447],"mapped",[4355]],[[65448,65448],"mapped",[4356]],[[65449,65449],"mapped",[4357]],[[65450,65450],"mapped",[4528]],[[65451,65451],"mapped",[4529]],[[65452,65452],"mapped",[4530]],[[65453,65453],"mapped",[4531]],[[65454,65454],"mapped",[4532]],[[65455,65455],"mapped",[4533]],[[65456,65456],"mapped",[4378]],[[65457,65457],"mapped",[4358]],[[65458,65458],"mapped",[4359]],[[65459,65459],"mapped",[4360]],[[65460,65460],"mapped",[4385]],[[65461,65461],"mapped",[4361]],[[65462,65462],"mapped",[4362]],[[65463,65463],"mapped",[4363]],[[65464,65464],"mapped",[4364]],[[65465,65465],"mapped",[4365]],[[65466,65466],"mapped",[4366]],[[65467,65467],"mapped",[4367]],[[65468,65468],"mapped",[4368]],[[65469,65469],"mapped",[4369]],[[65470,65470],"mapped",[4370]],[[65471,65473],"disallowed"],[[65474,65474],"mapped",[4449]],[[65475,65475],"mapped",[4450]],[[65476,65476],"mapped",[4451]],[[65477,65477],"mapped",[4452]],[[65478,65478],"mapped",[4453]],[[65479,65479],"mapped",[4454]],[[65480,65481],"disallowed"],[[65482,65482],"mapped",[4455]],[[65483,65483],"mapped",[4456]],[[65484,65484],"mapped",[4457]],[[65485,65485],"mapped",[4458]],[[65486,65486],"mapped",[4459]],[[65487,65487],"mapped",[4460]],[[65488,65489],"disallowed"],[[65490,65490],"mapped",[4461]],[[65491,65491],"mapped",[4462]],[[65492,65492],"mapped",[4463]],[[65493,65493],"mapped",[4464]],[[65494,65494],"mapped",[4465]],[[65495,65495],"mapped",[4466]],[[65496,65497],"disallowed"],[[65498,65498],"mapped",[4467]],[[65499,65499],"mapped",[4468]],[[65500,65500],"mapped",[4469]],[[65501,65503],"disallowed"],[[65504,65504],"mapped",[162]],[[65505,65505],"mapped",[163]],[[65506,65506],"mapped",[172]],[[65507,65507],"disallowed_STD3_mapped",[32,772]],[[65508,65508],"mapped",[166]],[[65509,65509],"mapped",[165]],[[65510,65510],"mapped",[8361]],[[65511,65511],"disallowed"],[[65512,65512],"mapped",[9474]],[[65513,65513],"mapped",[8592]],[[65514,65514],"mapped",[8593]],[[65515,65515],"mapped",[8594]],[[65516,65516],"mapped",[8595]],[[65517,65517],"mapped",[9632]],[[65518,65518],"mapped",[9675]],[[65519,65528],"disallowed"],[[65529,65531],"disallowed"],[[65532,65532],"disallowed"],[[65533,65533],"disallowed"],[[65534,65535],"disallowed"],[[65536,65547],"valid"],[[65548,65548],"disallowed"],[[65549,65574],"valid"],[[65575,65575],"disallowed"],[[65576,65594],"valid"],[[65595,65595],"disallowed"],[[65596,65597],"valid"],[[65598,65598],"disallowed"],[[65599,65613],"valid"],[[65614,65615],"disallowed"],[[65616,65629],"valid"],[[65630,65663],"disallowed"],[[65664,65786],"valid"],[[65787,65791],"disallowed"],[[65792,65794],"valid",[],"NV8"],[[65795,65798],"disallowed"],[[65799,65843],"valid",[],"NV8"],[[65844,65846],"disallowed"],[[65847,65855],"valid",[],"NV8"],[[65856,65930],"valid",[],"NV8"],[[65931,65932],"valid",[],"NV8"],[[65933,65935],"disallowed"],[[65936,65947],"valid",[],"NV8"],[[65948,65951],"disallowed"],[[65952,65952],"valid",[],"NV8"],[[65953,65999],"disallowed"],[[66000,66044],"valid",[],"NV8"],[[66045,66045],"valid"],[[66046,66175],"disallowed"],[[66176,66204],"valid"],[[66205,66207],"disallowed"],[[66208,66256],"valid"],[[66257,66271],"disallowed"],[[66272,66272],"valid"],[[66273,66299],"valid",[],"NV8"],[[66300,66303],"disallowed"],[[66304,66334],"valid"],[[66335,66335],"valid"],[[66336,66339],"valid",[],"NV8"],[[66340,66351],"disallowed"],[[66352,66368],"valid"],[[66369,66369],"valid",[],"NV8"],[[66370,66377],"valid"],[[66378,66378],"valid",[],"NV8"],[[66379,66383],"disallowed"],[[66384,66426],"valid"],[[66427,66431],"disallowed"],[[66432,66461],"valid"],[[66462,66462],"disallowed"],[[66463,66463],"valid",[],"NV8"],[[66464,66499],"valid"],[[66500,66503],"disallowed"],[[66504,66511],"valid"],[[66512,66517],"valid",[],"NV8"],[[66518,66559],"disallowed"],[[66560,66560],"mapped",[66600]],[[66561,66561],"mapped",[66601]],[[66562,66562],"mapped",[66602]],[[66563,66563],"mapped",[66603]],[[66564,66564],"mapped",[66604]],[[66565,66565],"mapped",[66605]],[[66566,66566],"mapped",[66606]],[[66567,66567],"mapped",[66607]],[[66568,66568],"mapped",[66608]],[[66569,66569],"mapped",[66609]],[[66570,66570],"mapped",[66610]],[[66571,66571],"mapped",[66611]],[[66572,66572],"mapped",[66612]],[[66573,66573],"mapped",[66613]],[[66574,66574],"mapped",[66614]],[[66575,66575],"mapped",[66615]],[[66576,66576],"mapped",[66616]],[[66577,66577],"mapped",[66617]],[[66578,66578],"mapped",[66618]],[[66579,66579],"mapped",[66619]],[[66580,66580],"mapped",[66620]],[[66581,66581],"mapped",[66621]],[[66582,66582],"mapped",[66622]],[[66583,66583],"mapped",[66623]],[[66584,66584],"mapped",[66624]],[[66585,66585],"mapped",[66625]],[[66586,66586],"mapped",[66626]],[[66587,66587],"mapped",[66627]],[[66588,66588],"mapped",[66628]],[[66589,66589],"mapped",[66629]],[[66590,66590],"mapped",[66630]],[[66591,66591],"mapped",[66631]],[[66592,66592],"mapped",[66632]],[[66593,66593],"mapped",[66633]],[[66594,66594],"mapped",[66634]],[[66595,66595],"mapped",[66635]],[[66596,66596],"mapped",[66636]],[[66597,66597],"mapped",[66637]],[[66598,66598],"mapped",[66638]],[[66599,66599],"mapped",[66639]],[[66600,66637],"valid"],[[66638,66717],"valid"],[[66718,66719],"disallowed"],[[66720,66729],"valid"],[[66730,66815],"disallowed"],[[66816,66855],"valid"],[[66856,66863],"disallowed"],[[66864,66915],"valid"],[[66916,66926],"disallowed"],[[66927,66927],"valid",[],"NV8"],[[66928,67071],"disallowed"],[[67072,67382],"valid"],[[67383,67391],"disallowed"],[[67392,67413],"valid"],[[67414,67423],"disallowed"],[[67424,67431],"valid"],[[67432,67583],"disallowed"],[[67584,67589],"valid"],[[67590,67591],"disallowed"],[[67592,67592],"valid"],[[67593,67593],"disallowed"],[[67594,67637],"valid"],[[67638,67638],"disallowed"],[[67639,67640],"valid"],[[67641,67643],"disallowed"],[[67644,67644],"valid"],[[67645,67646],"disallowed"],[[67647,67647],"valid"],[[67648,67669],"valid"],[[67670,67670],"disallowed"],[[67671,67679],"valid",[],"NV8"],[[67680,67702],"valid"],[[67703,67711],"valid",[],"NV8"],[[67712,67742],"valid"],[[67743,67750],"disallowed"],[[67751,67759],"valid",[],"NV8"],[[67760,67807],"disallowed"],[[67808,67826],"valid"],[[67827,67827],"disallowed"],[[67828,67829],"valid"],[[67830,67834],"disallowed"],[[67835,67839],"valid",[],"NV8"],[[67840,67861],"valid"],[[67862,67865],"valid",[],"NV8"],[[67866,67867],"valid",[],"NV8"],[[67868,67870],"disallowed"],[[67871,67871],"valid",[],"NV8"],[[67872,67897],"valid"],[[67898,67902],"disallowed"],[[67903,67903],"valid",[],"NV8"],[[67904,67967],"disallowed"],[[67968,68023],"valid"],[[68024,68027],"disallowed"],[[68028,68029],"valid",[],"NV8"],[[68030,68031],"valid"],[[68032,68047],"valid",[],"NV8"],[[68048,68049],"disallowed"],[[68050,68095],"valid",[],"NV8"],[[68096,68099],"valid"],[[68100,68100],"disallowed"],[[68101,68102],"valid"],[[68103,68107],"disallowed"],[[68108,68115],"valid"],[[68116,68116],"disallowed"],[[68117,68119],"valid"],[[68120,68120],"disallowed"],[[68121,68147],"valid"],[[68148,68151],"disallowed"],[[68152,68154],"valid"],[[68155,68158],"disallowed"],[[68159,68159],"valid"],[[68160,68167],"valid",[],"NV8"],[[68168,68175],"disallowed"],[[68176,68184],"valid",[],"NV8"],[[68185,68191],"disallowed"],[[68192,68220],"valid"],[[68221,68223],"valid",[],"NV8"],[[68224,68252],"valid"],[[68253,68255],"valid",[],"NV8"],[[68256,68287],"disallowed"],[[68288,68295],"valid"],[[68296,68296],"valid",[],"NV8"],[[68297,68326],"valid"],[[68327,68330],"disallowed"],[[68331,68342],"valid",[],"NV8"],[[68343,68351],"disallowed"],[[68352,68405],"valid"],[[68406,68408],"disallowed"],[[68409,68415],"valid",[],"NV8"],[[68416,68437],"valid"],[[68438,68439],"disallowed"],[[68440,68447],"valid",[],"NV8"],[[68448,68466],"valid"],[[68467,68471],"disallowed"],[[68472,68479],"valid",[],"NV8"],[[68480,68497],"valid"],[[68498,68504],"disallowed"],[[68505,68508],"valid",[],"NV8"],[[68509,68520],"disallowed"],[[68521,68527],"valid",[],"NV8"],[[68528,68607],"disallowed"],[[68608,68680],"valid"],[[68681,68735],"disallowed"],[[68736,68736],"mapped",[68800]],[[68737,68737],"mapped",[68801]],[[68738,68738],"mapped",[68802]],[[68739,68739],"mapped",[68803]],[[68740,68740],"mapped",[68804]],[[68741,68741],"mapped",[68805]],[[68742,68742],"mapped",[68806]],[[68743,68743],"mapped",[68807]],[[68744,68744],"mapped",[68808]],[[68745,68745],"mapped",[68809]],[[68746,68746],"mapped",[68810]],[[68747,68747],"mapped",[68811]],[[68748,68748],"mapped",[68812]],[[68749,68749],"mapped",[68813]],[[68750,68750],"mapped",[68814]],[[68751,68751],"mapped",[68815]],[[68752,68752],"mapped",[68816]],[[68753,68753],"mapped",[68817]],[[68754,68754],"mapped",[68818]],[[68755,68755],"mapped",[68819]],[[68756,68756],"mapped",[68820]],[[68757,68757],"mapped",[68821]],[[68758,68758],"mapped",[68822]],[[68759,68759],"mapped",[68823]],[[68760,68760],"mapped",[68824]],[[68761,68761],"mapped",[68825]],[[68762,68762],"mapped",[68826]],[[68763,68763],"mapped",[68827]],[[68764,68764],"mapped",[68828]],[[68765,68765],"mapped",[68829]],[[68766,68766],"mapped",[68830]],[[68767,68767],"mapped",[68831]],[[68768,68768],"mapped",[68832]],[[68769,68769],"mapped",[68833]],[[68770,68770],"mapped",[68834]],[[68771,68771],"mapped",[68835]],[[68772,68772],"mapped",[68836]],[[68773,68773],"mapped",[68837]],[[68774,68774],"mapped",[68838]],[[68775,68775],"mapped",[68839]],[[68776,68776],"mapped",[68840]],[[68777,68777],"mapped",[68841]],[[68778,68778],"mapped",[68842]],[[68779,68779],"mapped",[68843]],[[68780,68780],"mapped",[68844]],[[68781,68781],"mapped",[68845]],[[68782,68782],"mapped",[68846]],[[68783,68783],"mapped",[68847]],[[68784,68784],"mapped",[68848]],[[68785,68785],"mapped",[68849]],[[68786,68786],"mapped",[68850]],[[68787,68799],"disallowed"],[[68800,68850],"valid"],[[68851,68857],"disallowed"],[[68858,68863],"valid",[],"NV8"],[[68864,69215],"disallowed"],[[69216,69246],"valid",[],"NV8"],[[69247,69631],"disallowed"],[[69632,69702],"valid"],[[69703,69709],"valid",[],"NV8"],[[69710,69713],"disallowed"],[[69714,69733],"valid",[],"NV8"],[[69734,69743],"valid"],[[69744,69758],"disallowed"],[[69759,69759],"valid"],[[69760,69818],"valid"],[[69819,69820],"valid",[],"NV8"],[[69821,69821],"disallowed"],[[69822,69825],"valid",[],"NV8"],[[69826,69839],"disallowed"],[[69840,69864],"valid"],[[69865,69871],"disallowed"],[[69872,69881],"valid"],[[69882,69887],"disallowed"],[[69888,69940],"valid"],[[69941,69941],"disallowed"],[[69942,69951],"valid"],[[69952,69955],"valid",[],"NV8"],[[69956,69967],"disallowed"],[[69968,70003],"valid"],[[70004,70005],"valid",[],"NV8"],[[70006,70006],"valid"],[[70007,70015],"disallowed"],[[70016,70084],"valid"],[[70085,70088],"valid",[],"NV8"],[[70089,70089],"valid",[],"NV8"],[[70090,70092],"valid"],[[70093,70093],"valid",[],"NV8"],[[70094,70095],"disallowed"],[[70096,70105],"valid"],[[70106,70106],"valid"],[[70107,70107],"valid",[],"NV8"],[[70108,70108],"valid"],[[70109,70111],"valid",[],"NV8"],[[70112,70112],"disallowed"],[[70113,70132],"valid",[],"NV8"],[[70133,70143],"disallowed"],[[70144,70161],"valid"],[[70162,70162],"disallowed"],[[70163,70199],"valid"],[[70200,70205],"valid",[],"NV8"],[[70206,70271],"disallowed"],[[70272,70278],"valid"],[[70279,70279],"disallowed"],[[70280,70280],"valid"],[[70281,70281],"disallowed"],[[70282,70285],"valid"],[[70286,70286],"disallowed"],[[70287,70301],"valid"],[[70302,70302],"disallowed"],[[70303,70312],"valid"],[[70313,70313],"valid",[],"NV8"],[[70314,70319],"disallowed"],[[70320,70378],"valid"],[[70379,70383],"disallowed"],[[70384,70393],"valid"],[[70394,70399],"disallowed"],[[70400,70400],"valid"],[[70401,70403],"valid"],[[70404,70404],"disallowed"],[[70405,70412],"valid"],[[70413,70414],"disallowed"],[[70415,70416],"valid"],[[70417,70418],"disallowed"],[[70419,70440],"valid"],[[70441,70441],"disallowed"],[[70442,70448],"valid"],[[70449,70449],"disallowed"],[[70450,70451],"valid"],[[70452,70452],"disallowed"],[[70453,70457],"valid"],[[70458,70459],"disallowed"],[[70460,70468],"valid"],[[70469,70470],"disallowed"],[[70471,70472],"valid"],[[70473,70474],"disallowed"],[[70475,70477],"valid"],[[70478,70479],"disallowed"],[[70480,70480],"valid"],[[70481,70486],"disallowed"],[[70487,70487],"valid"],[[70488,70492],"disallowed"],[[70493,70499],"valid"],[[70500,70501],"disallowed"],[[70502,70508],"valid"],[[70509,70511],"disallowed"],[[70512,70516],"valid"],[[70517,70783],"disallowed"],[[70784,70853],"valid"],[[70854,70854],"valid",[],"NV8"],[[70855,70855],"valid"],[[70856,70863],"disallowed"],[[70864,70873],"valid"],[[70874,71039],"disallowed"],[[71040,71093],"valid"],[[71094,71095],"disallowed"],[[71096,71104],"valid"],[[71105,71113],"valid",[],"NV8"],[[71114,71127],"valid",[],"NV8"],[[71128,71133],"valid"],[[71134,71167],"disallowed"],[[71168,71232],"valid"],[[71233,71235],"valid",[],"NV8"],[[71236,71236],"valid"],[[71237,71247],"disallowed"],[[71248,71257],"valid"],[[71258,71295],"disallowed"],[[71296,71351],"valid"],[[71352,71359],"disallowed"],[[71360,71369],"valid"],[[71370,71423],"disallowed"],[[71424,71449],"valid"],[[71450,71452],"disallowed"],[[71453,71467],"valid"],[[71468,71471],"disallowed"],[[71472,71481],"valid"],[[71482,71487],"valid",[],"NV8"],[[71488,71839],"disallowed"],[[71840,71840],"mapped",[71872]],[[71841,71841],"mapped",[71873]],[[71842,71842],"mapped",[71874]],[[71843,71843],"mapped",[71875]],[[71844,71844],"mapped",[71876]],[[71845,71845],"mapped",[71877]],[[71846,71846],"mapped",[71878]],[[71847,71847],"mapped",[71879]],[[71848,71848],"mapped",[71880]],[[71849,71849],"mapped",[71881]],[[71850,71850],"mapped",[71882]],[[71851,71851],"mapped",[71883]],[[71852,71852],"mapped",[71884]],[[71853,71853],"mapped",[71885]],[[71854,71854],"mapped",[71886]],[[71855,71855],"mapped",[71887]],[[71856,71856],"mapped",[71888]],[[71857,71857],"mapped",[71889]],[[71858,71858],"mapped",[71890]],[[71859,71859],"mapped",[71891]],[[71860,71860],"mapped",[71892]],[[71861,71861],"mapped",[71893]],[[71862,71862],"mapped",[71894]],[[71863,71863],"mapped",[71895]],[[71864,71864],"mapped",[71896]],[[71865,71865],"mapped",[71897]],[[71866,71866],"mapped",[71898]],[[71867,71867],"mapped",[71899]],[[71868,71868],"mapped",[71900]],[[71869,71869],"mapped",[71901]],[[71870,71870],"mapped",[71902]],[[71871,71871],"mapped",[71903]],[[71872,71913],"valid"],[[71914,71922],"valid",[],"NV8"],[[71923,71934],"disallowed"],[[71935,71935],"valid"],[[71936,72383],"disallowed"],[[72384,72440],"valid"],[[72441,73727],"disallowed"],[[73728,74606],"valid"],[[74607,74648],"valid"],[[74649,74649],"valid"],[[74650,74751],"disallowed"],[[74752,74850],"valid",[],"NV8"],[[74851,74862],"valid",[],"NV8"],[[74863,74863],"disallowed"],[[74864,74867],"valid",[],"NV8"],[[74868,74868],"valid",[],"NV8"],[[74869,74879],"disallowed"],[[74880,75075],"valid"],[[75076,77823],"disallowed"],[[77824,78894],"valid"],[[78895,82943],"disallowed"],[[82944,83526],"valid"],[[83527,92159],"disallowed"],[[92160,92728],"valid"],[[92729,92735],"disallowed"],[[92736,92766],"valid"],[[92767,92767],"disallowed"],[[92768,92777],"valid"],[[92778,92781],"disallowed"],[[92782,92783],"valid",[],"NV8"],[[92784,92879],"disallowed"],[[92880,92909],"valid"],[[92910,92911],"disallowed"],[[92912,92916],"valid"],[[92917,92917],"valid",[],"NV8"],[[92918,92927],"disallowed"],[[92928,92982],"valid"],[[92983,92991],"valid",[],"NV8"],[[92992,92995],"valid"],[[92996,92997],"valid",[],"NV8"],[[92998,93007],"disallowed"],[[93008,93017],"valid"],[[93018,93018],"disallowed"],[[93019,93025],"valid",[],"NV8"],[[93026,93026],"disallowed"],[[93027,93047],"valid"],[[93048,93052],"disallowed"],[[93053,93071],"valid"],[[93072,93951],"disallowed"],[[93952,94020],"valid"],[[94021,94031],"disallowed"],[[94032,94078],"valid"],[[94079,94094],"disallowed"],[[94095,94111],"valid"],[[94112,110591],"disallowed"],[[110592,110593],"valid"],[[110594,113663],"disallowed"],[[113664,113770],"valid"],[[113771,113775],"disallowed"],[[113776,113788],"valid"],[[113789,113791],"disallowed"],[[113792,113800],"valid"],[[113801,113807],"disallowed"],[[113808,113817],"valid"],[[113818,113819],"disallowed"],[[113820,113820],"valid",[],"NV8"],[[113821,113822],"valid"],[[113823,113823],"valid",[],"NV8"],[[113824,113827],"ignored"],[[113828,118783],"disallowed"],[[118784,119029],"valid",[],"NV8"],[[119030,119039],"disallowed"],[[119040,119078],"valid",[],"NV8"],[[119079,119080],"disallowed"],[[119081,119081],"valid",[],"NV8"],[[119082,119133],"valid",[],"NV8"],[[119134,119134],"mapped",[119127,119141]],[[119135,119135],"mapped",[119128,119141]],[[119136,119136],"mapped",[119128,119141,119150]],[[119137,119137],"mapped",[119128,119141,119151]],[[119138,119138],"mapped",[119128,119141,119152]],[[119139,119139],"mapped",[119128,119141,119153]],[[119140,119140],"mapped",[119128,119141,119154]],[[119141,119154],"valid",[],"NV8"],[[119155,119162],"disallowed"],[[119163,119226],"valid",[],"NV8"],[[119227,119227],"mapped",[119225,119141]],[[119228,119228],"mapped",[119226,119141]],[[119229,119229],"mapped",[119225,119141,119150]],[[119230,119230],"mapped",[119226,119141,119150]],[[119231,119231],"mapped",[119225,119141,119151]],[[119232,119232],"mapped",[119226,119141,119151]],[[119233,119261],"valid",[],"NV8"],[[119262,119272],"valid",[],"NV8"],[[119273,119295],"disallowed"],[[119296,119365],"valid",[],"NV8"],[[119366,119551],"disallowed"],[[119552,119638],"valid",[],"NV8"],[[119639,119647],"disallowed"],[[119648,119665],"valid",[],"NV8"],[[119666,119807],"disallowed"],[[119808,119808],"mapped",[97]],[[119809,119809],"mapped",[98]],[[119810,119810],"mapped",[99]],[[119811,119811],"mapped",[100]],[[119812,119812],"mapped",[101]],[[119813,119813],"mapped",[102]],[[119814,119814],"mapped",[103]],[[119815,119815],"mapped",[104]],[[119816,119816],"mapped",[105]],[[119817,119817],"mapped",[106]],[[119818,119818],"mapped",[107]],[[119819,119819],"mapped",[108]],[[119820,119820],"mapped",[109]],[[119821,119821],"mapped",[110]],[[119822,119822],"mapped",[111]],[[119823,119823],"mapped",[112]],[[119824,119824],"mapped",[113]],[[119825,119825],"mapped",[114]],[[119826,119826],"mapped",[115]],[[119827,119827],"mapped",[116]],[[119828,119828],"mapped",[117]],[[119829,119829],"mapped",[118]],[[119830,119830],"mapped",[119]],[[119831,119831],"mapped",[120]],[[119832,119832],"mapped",[121]],[[119833,119833],"mapped",[122]],[[119834,119834],"mapped",[97]],[[119835,119835],"mapped",[98]],[[119836,119836],"mapped",[99]],[[119837,119837],"mapped",[100]],[[119838,119838],"mapped",[101]],[[119839,119839],"mapped",[102]],[[119840,119840],"mapped",[103]],[[119841,119841],"mapped",[104]],[[119842,119842],"mapped",[105]],[[119843,119843],"mapped",[106]],[[119844,119844],"mapped",[107]],[[119845,119845],"mapped",[108]],[[119846,119846],"mapped",[109]],[[119847,119847],"mapped",[110]],[[119848,119848],"mapped",[111]],[[119849,119849],"mapped",[112]],[[119850,119850],"mapped",[113]],[[119851,119851],"mapped",[114]],[[119852,119852],"mapped",[115]],[[119853,119853],"mapped",[116]],[[119854,119854],"mapped",[117]],[[119855,119855],"mapped",[118]],[[119856,119856],"mapped",[119]],[[119857,119857],"mapped",[120]],[[119858,119858],"mapped",[121]],[[119859,119859],"mapped",[122]],[[119860,119860],"mapped",[97]],[[119861,119861],"mapped",[98]],[[119862,119862],"mapped",[99]],[[119863,119863],"mapped",[100]],[[119864,119864],"mapped",[101]],[[119865,119865],"mapped",[102]],[[119866,119866],"mapped",[103]],[[119867,119867],"mapped",[104]],[[119868,119868],"mapped",[105]],[[119869,119869],"mapped",[106]],[[119870,119870],"mapped",[107]],[[119871,119871],"mapped",[108]],[[119872,119872],"mapped",[109]],[[119873,119873],"mapped",[110]],[[119874,119874],"mapped",[111]],[[119875,119875],"mapped",[112]],[[119876,119876],"mapped",[113]],[[119877,119877],"mapped",[114]],[[119878,119878],"mapped",[115]],[[119879,119879],"mapped",[116]],[[119880,119880],"mapped",[117]],[[119881,119881],"mapped",[118]],[[119882,119882],"mapped",[119]],[[119883,119883],"mapped",[120]],[[119884,119884],"mapped",[121]],[[119885,119885],"mapped",[122]],[[119886,119886],"mapped",[97]],[[119887,119887],"mapped",[98]],[[119888,119888],"mapped",[99]],[[119889,119889],"mapped",[100]],[[119890,119890],"mapped",[101]],[[119891,119891],"mapped",[102]],[[119892,119892],"mapped",[103]],[[119893,119893],"disallowed"],[[119894,119894],"mapped",[105]],[[119895,119895],"mapped",[106]],[[119896,119896],"mapped",[107]],[[119897,119897],"mapped",[108]],[[119898,119898],"mapped",[109]],[[119899,119899],"mapped",[110]],[[119900,119900],"mapped",[111]],[[119901,119901],"mapped",[112]],[[119902,119902],"mapped",[113]],[[119903,119903],"mapped",[114]],[[119904,119904],"mapped",[115]],[[119905,119905],"mapped",[116]],[[119906,119906],"mapped",[117]],[[119907,119907],"mapped",[118]],[[119908,119908],"mapped",[119]],[[119909,119909],"mapped",[120]],[[119910,119910],"mapped",[121]],[[119911,119911],"mapped",[122]],[[119912,119912],"mapped",[97]],[[119913,119913],"mapped",[98]],[[119914,119914],"mapped",[99]],[[119915,119915],"mapped",[100]],[[119916,119916],"mapped",[101]],[[119917,119917],"mapped",[102]],[[119918,119918],"mapped",[103]],[[119919,119919],"mapped",[104]],[[119920,119920],"mapped",[105]],[[119921,119921],"mapped",[106]],[[119922,119922],"mapped",[107]],[[119923,119923],"mapped",[108]],[[119924,119924],"mapped",[109]],[[119925,119925],"mapped",[110]],[[119926,119926],"mapped",[111]],[[119927,119927],"mapped",[112]],[[119928,119928],"mapped",[113]],[[119929,119929],"mapped",[114]],[[119930,119930],"mapped",[115]],[[119931,119931],"mapped",[116]],[[119932,119932],"mapped",[117]],[[119933,119933],"mapped",[118]],[[119934,119934],"mapped",[119]],[[119935,119935],"mapped",[120]],[[119936,119936],"mapped",[121]],[[119937,119937],"mapped",[122]],[[119938,119938],"mapped",[97]],[[119939,119939],"mapped",[98]],[[119940,119940],"mapped",[99]],[[119941,119941],"mapped",[100]],[[119942,119942],"mapped",[101]],[[119943,119943],"mapped",[102]],[[119944,119944],"mapped",[103]],[[119945,119945],"mapped",[104]],[[119946,119946],"mapped",[105]],[[119947,119947],"mapped",[106]],[[119948,119948],"mapped",[107]],[[119949,119949],"mapped",[108]],[[119950,119950],"mapped",[109]],[[119951,119951],"mapped",[110]],[[119952,119952],"mapped",[111]],[[119953,119953],"mapped",[112]],[[119954,119954],"mapped",[113]],[[119955,119955],"mapped",[114]],[[119956,119956],"mapped",[115]],[[119957,119957],"mapped",[116]],[[119958,119958],"mapped",[117]],[[119959,119959],"mapped",[118]],[[119960,119960],"mapped",[119]],[[119961,119961],"mapped",[120]],[[119962,119962],"mapped",[121]],[[119963,119963],"mapped",[122]],[[119964,119964],"mapped",[97]],[[119965,119965],"disallowed"],[[119966,119966],"mapped",[99]],[[119967,119967],"mapped",[100]],[[119968,119969],"disallowed"],[[119970,119970],"mapped",[103]],[[119971,119972],"disallowed"],[[119973,119973],"mapped",[106]],[[119974,119974],"mapped",[107]],[[119975,119976],"disallowed"],[[119977,119977],"mapped",[110]],[[119978,119978],"mapped",[111]],[[119979,119979],"mapped",[112]],[[119980,119980],"mapped",[113]],[[119981,119981],"disallowed"],[[119982,119982],"mapped",[115]],[[119983,119983],"mapped",[116]],[[119984,119984],"mapped",[117]],[[119985,119985],"mapped",[118]],[[119986,119986],"mapped",[119]],[[119987,119987],"mapped",[120]],[[119988,119988],"mapped",[121]],[[119989,119989],"mapped",[122]],[[119990,119990],"mapped",[97]],[[119991,119991],"mapped",[98]],[[119992,119992],"mapped",[99]],[[119993,119993],"mapped",[100]],[[119994,119994],"disallowed"],[[119995,119995],"mapped",[102]],[[119996,119996],"disallowed"],[[119997,119997],"mapped",[104]],[[119998,119998],"mapped",[105]],[[119999,119999],"mapped",[106]],[[120000,120000],"mapped",[107]],[[120001,120001],"mapped",[108]],[[120002,120002],"mapped",[109]],[[120003,120003],"mapped",[110]],[[120004,120004],"disallowed"],[[120005,120005],"mapped",[112]],[[120006,120006],"mapped",[113]],[[120007,120007],"mapped",[114]],[[120008,120008],"mapped",[115]],[[120009,120009],"mapped",[116]],[[120010,120010],"mapped",[117]],[[120011,120011],"mapped",[118]],[[120012,120012],"mapped",[119]],[[120013,120013],"mapped",[120]],[[120014,120014],"mapped",[121]],[[120015,120015],"mapped",[122]],[[120016,120016],"mapped",[97]],[[120017,120017],"mapped",[98]],[[120018,120018],"mapped",[99]],[[120019,120019],"mapped",[100]],[[120020,120020],"mapped",[101]],[[120021,120021],"mapped",[102]],[[120022,120022],"mapped",[103]],[[120023,120023],"mapped",[104]],[[120024,120024],"mapped",[105]],[[120025,120025],"mapped",[106]],[[120026,120026],"mapped",[107]],[[120027,120027],"mapped",[108]],[[120028,120028],"mapped",[109]],[[120029,120029],"mapped",[110]],[[120030,120030],"mapped",[111]],[[120031,120031],"mapped",[112]],[[120032,120032],"mapped",[113]],[[120033,120033],"mapped",[114]],[[120034,120034],"mapped",[115]],[[120035,120035],"mapped",[116]],[[120036,120036],"mapped",[117]],[[120037,120037],"mapped",[118]],[[120038,120038],"mapped",[119]],[[120039,120039],"mapped",[120]],[[120040,120040],"mapped",[121]],[[120041,120041],"mapped",[122]],[[120042,120042],"mapped",[97]],[[120043,120043],"mapped",[98]],[[120044,120044],"mapped",[99]],[[120045,120045],"mapped",[100]],[[120046,120046],"mapped",[101]],[[120047,120047],"mapped",[102]],[[120048,120048],"mapped",[103]],[[120049,120049],"mapped",[104]],[[120050,120050],"mapped",[105]],[[120051,120051],"mapped",[106]],[[120052,120052],"mapped",[107]],[[120053,120053],"mapped",[108]],[[120054,120054],"mapped",[109]],[[120055,120055],"mapped",[110]],[[120056,120056],"mapped",[111]],[[120057,120057],"mapped",[112]],[[120058,120058],"mapped",[113]],[[120059,120059],"mapped",[114]],[[120060,120060],"mapped",[115]],[[120061,120061],"mapped",[116]],[[120062,120062],"mapped",[117]],[[120063,120063],"mapped",[118]],[[120064,120064],"mapped",[119]],[[120065,120065],"mapped",[120]],[[120066,120066],"mapped",[121]],[[120067,120067],"mapped",[122]],[[120068,120068],"mapped",[97]],[[120069,120069],"mapped",[98]],[[120070,120070],"disallowed"],[[120071,120071],"mapped",[100]],[[120072,120072],"mapped",[101]],[[120073,120073],"mapped",[102]],[[120074,120074],"mapped",[103]],[[120075,120076],"disallowed"],[[120077,120077],"mapped",[106]],[[120078,120078],"mapped",[107]],[[120079,120079],"mapped",[108]],[[120080,120080],"mapped",[109]],[[120081,120081],"mapped",[110]],[[120082,120082],"mapped",[111]],[[120083,120083],"mapped",[112]],[[120084,120084],"mapped",[113]],[[120085,120085],"disallowed"],[[120086,120086],"mapped",[115]],[[120087,120087],"mapped",[116]],[[120088,120088],"mapped",[117]],[[120089,120089],"mapped",[118]],[[120090,120090],"mapped",[119]],[[120091,120091],"mapped",[120]],[[120092,120092],"mapped",[121]],[[120093,120093],"disallowed"],[[120094,120094],"mapped",[97]],[[120095,120095],"mapped",[98]],[[120096,120096],"mapped",[99]],[[120097,120097],"mapped",[100]],[[120098,120098],"mapped",[101]],[[120099,120099],"mapped",[102]],[[120100,120100],"mapped",[103]],[[120101,120101],"mapped",[104]],[[120102,120102],"mapped",[105]],[[120103,120103],"mapped",[106]],[[120104,120104],"mapped",[107]],[[120105,120105],"mapped",[108]],[[120106,120106],"mapped",[109]],[[120107,120107],"mapped",[110]],[[120108,120108],"mapped",[111]],[[120109,120109],"mapped",[112]],[[120110,120110],"mapped",[113]],[[120111,120111],"mapped",[114]],[[120112,120112],"mapped",[115]],[[120113,120113],"mapped",[116]],[[120114,120114],"mapped",[117]],[[120115,120115],"mapped",[118]],[[120116,120116],"mapped",[119]],[[120117,120117],"mapped",[120]],[[120118,120118],"mapped",[121]],[[120119,120119],"mapped",[122]],[[120120,120120],"mapped",[97]],[[120121,120121],"mapped",[98]],[[120122,120122],"disallowed"],[[120123,120123],"mapped",[100]],[[120124,120124],"mapped",[101]],[[120125,120125],"mapped",[102]],[[120126,120126],"mapped",[103]],[[120127,120127],"disallowed"],[[120128,120128],"mapped",[105]],[[120129,120129],"mapped",[106]],[[120130,120130],"mapped",[107]],[[120131,120131],"mapped",[108]],[[120132,120132],"mapped",[109]],[[120133,120133],"disallowed"],[[120134,120134],"mapped",[111]],[[120135,120137],"disallowed"],[[120138,120138],"mapped",[115]],[[120139,120139],"mapped",[116]],[[120140,120140],"mapped",[117]],[[120141,120141],"mapped",[118]],[[120142,120142],"mapped",[119]],[[120143,120143],"mapped",[120]],[[120144,120144],"mapped",[121]],[[120145,120145],"disallowed"],[[120146,120146],"mapped",[97]],[[120147,120147],"mapped",[98]],[[120148,120148],"mapped",[99]],[[120149,120149],"mapped",[100]],[[120150,120150],"mapped",[101]],[[120151,120151],"mapped",[102]],[[120152,120152],"mapped",[103]],[[120153,120153],"mapped",[104]],[[120154,120154],"mapped",[105]],[[120155,120155],"mapped",[106]],[[120156,120156],"mapped",[107]],[[120157,120157],"mapped",[108]],[[120158,120158],"mapped",[109]],[[120159,120159],"mapped",[110]],[[120160,120160],"mapped",[111]],[[120161,120161],"mapped",[112]],[[120162,120162],"mapped",[113]],[[120163,120163],"mapped",[114]],[[120164,120164],"mapped",[115]],[[120165,120165],"mapped",[116]],[[120166,120166],"mapped",[117]],[[120167,120167],"mapped",[118]],[[120168,120168],"mapped",[119]],[[120169,120169],"mapped",[120]],[[120170,120170],"mapped",[121]],[[120171,120171],"mapped",[122]],[[120172,120172],"mapped",[97]],[[120173,120173],"mapped",[98]],[[120174,120174],"mapped",[99]],[[120175,120175],"mapped",[100]],[[120176,120176],"mapped",[101]],[[120177,120177],"mapped",[102]],[[120178,120178],"mapped",[103]],[[120179,120179],"mapped",[104]],[[120180,120180],"mapped",[105]],[[120181,120181],"mapped",[106]],[[120182,120182],"mapped",[107]],[[120183,120183],"mapped",[108]],[[120184,120184],"mapped",[109]],[[120185,120185],"mapped",[110]],[[120186,120186],"mapped",[111]],[[120187,120187],"mapped",[112]],[[120188,120188],"mapped",[113]],[[120189,120189],"mapped",[114]],[[120190,120190],"mapped",[115]],[[120191,120191],"mapped",[116]],[[120192,120192],"mapped",[117]],[[120193,120193],"mapped",[118]],[[120194,120194],"mapped",[119]],[[120195,120195],"mapped",[120]],[[120196,120196],"mapped",[121]],[[120197,120197],"mapped",[122]],[[120198,120198],"mapped",[97]],[[120199,120199],"mapped",[98]],[[120200,120200],"mapped",[99]],[[120201,120201],"mapped",[100]],[[120202,120202],"mapped",[101]],[[120203,120203],"mapped",[102]],[[120204,120204],"mapped",[103]],[[120205,120205],"mapped",[104]],[[120206,120206],"mapped",[105]],[[120207,120207],"mapped",[106]],[[120208,120208],"mapped",[107]],[[120209,120209],"mapped",[108]],[[120210,120210],"mapped",[109]],[[120211,120211],"mapped",[110]],[[120212,120212],"mapped",[111]],[[120213,120213],"mapped",[112]],[[120214,120214],"mapped",[113]],[[120215,120215],"mapped",[114]],[[120216,120216],"mapped",[115]],[[120217,120217],"mapped",[116]],[[120218,120218],"mapped",[117]],[[120219,120219],"mapped",[118]],[[120220,120220],"mapped",[119]],[[120221,120221],"mapped",[120]],[[120222,120222],"mapped",[121]],[[120223,120223],"mapped",[122]],[[120224,120224],"mapped",[97]],[[120225,120225],"mapped",[98]],[[120226,120226],"mapped",[99]],[[120227,120227],"mapped",[100]],[[120228,120228],"mapped",[101]],[[120229,120229],"mapped",[102]],[[120230,120230],"mapped",[103]],[[120231,120231],"mapped",[104]],[[120232,120232],"mapped",[105]],[[120233,120233],"mapped",[106]],[[120234,120234],"mapped",[107]],[[120235,120235],"mapped",[108]],[[120236,120236],"mapped",[109]],[[120237,120237],"mapped",[110]],[[120238,120238],"mapped",[111]],[[120239,120239],"mapped",[112]],[[120240,120240],"mapped",[113]],[[120241,120241],"mapped",[114]],[[120242,120242],"mapped",[115]],[[120243,120243],"mapped",[116]],[[120244,120244],"mapped",[117]],[[120245,120245],"mapped",[118]],[[120246,120246],"mapped",[119]],[[120247,120247],"mapped",[120]],[[120248,120248],"mapped",[121]],[[120249,120249],"mapped",[122]],[[120250,120250],"mapped",[97]],[[120251,120251],"mapped",[98]],[[120252,120252],"mapped",[99]],[[120253,120253],"mapped",[100]],[[120254,120254],"mapped",[101]],[[120255,120255],"mapped",[102]],[[120256,120256],"mapped",[103]],[[120257,120257],"mapped",[104]],[[120258,120258],"mapped",[105]],[[120259,120259],"mapped",[106]],[[120260,120260],"mapped",[107]],[[120261,120261],"mapped",[108]],[[120262,120262],"mapped",[109]],[[120263,120263],"mapped",[110]],[[120264,120264],"mapped",[111]],[[120265,120265],"mapped",[112]],[[120266,120266],"mapped",[113]],[[120267,120267],"mapped",[114]],[[120268,120268],"mapped",[115]],[[120269,120269],"mapped",[116]],[[120270,120270],"mapped",[117]],[[120271,120271],"mapped",[118]],[[120272,120272],"mapped",[119]],[[120273,120273],"mapped",[120]],[[120274,120274],"mapped",[121]],[[120275,120275],"mapped",[122]],[[120276,120276],"mapped",[97]],[[120277,120277],"mapped",[98]],[[120278,120278],"mapped",[99]],[[120279,120279],"mapped",[100]],[[120280,120280],"mapped",[101]],[[120281,120281],"mapped",[102]],[[120282,120282],"mapped",[103]],[[120283,120283],"mapped",[104]],[[120284,120284],"mapped",[105]],[[120285,120285],"mapped",[106]],[[120286,120286],"mapped",[107]],[[120287,120287],"mapped",[108]],[[120288,120288],"mapped",[109]],[[120289,120289],"mapped",[110]],[[120290,120290],"mapped",[111]],[[120291,120291],"mapped",[112]],[[120292,120292],"mapped",[113]],[[120293,120293],"mapped",[114]],[[120294,120294],"mapped",[115]],[[120295,120295],"mapped",[116]],[[120296,120296],"mapped",[117]],[[120297,120297],"mapped",[118]],[[120298,120298],"mapped",[119]],[[120299,120299],"mapped",[120]],[[120300,120300],"mapped",[121]],[[120301,120301],"mapped",[122]],[[120302,120302],"mapped",[97]],[[120303,120303],"mapped",[98]],[[120304,120304],"mapped",[99]],[[120305,120305],"mapped",[100]],[[120306,120306],"mapped",[101]],[[120307,120307],"mapped",[102]],[[120308,120308],"mapped",[103]],[[120309,120309],"mapped",[104]],[[120310,120310],"mapped",[105]],[[120311,120311],"mapped",[106]],[[120312,120312],"mapped",[107]],[[120313,120313],"mapped",[108]],[[120314,120314],"mapped",[109]],[[120315,120315],"mapped",[110]],[[120316,120316],"mapped",[111]],[[120317,120317],"mapped",[112]],[[120318,120318],"mapped",[113]],[[120319,120319],"mapped",[114]],[[120320,120320],"mapped",[115]],[[120321,120321],"mapped",[116]],[[120322,120322],"mapped",[117]],[[120323,120323],"mapped",[118]],[[120324,120324],"mapped",[119]],[[120325,120325],"mapped",[120]],[[120326,120326],"mapped",[121]],[[120327,120327],"mapped",[122]],[[120328,120328],"mapped",[97]],[[120329,120329],"mapped",[98]],[[120330,120330],"mapped",[99]],[[120331,120331],"mapped",[100]],[[120332,120332],"mapped",[101]],[[120333,120333],"mapped",[102]],[[120334,120334],"mapped",[103]],[[120335,120335],"mapped",[104]],[[120336,120336],"mapped",[105]],[[120337,120337],"mapped",[106]],[[120338,120338],"mapped",[107]],[[120339,120339],"mapped",[108]],[[120340,120340],"mapped",[109]],[[120341,120341],"mapped",[110]],[[120342,120342],"mapped",[111]],[[120343,120343],"mapped",[112]],[[120344,120344],"mapped",[113]],[[120345,120345],"mapped",[114]],[[120346,120346],"mapped",[115]],[[120347,120347],"mapped",[116]],[[120348,120348],"mapped",[117]],[[120349,120349],"mapped",[118]],[[120350,120350],"mapped",[119]],[[120351,120351],"mapped",[120]],[[120352,120352],"mapped",[121]],[[120353,120353],"mapped",[122]],[[120354,120354],"mapped",[97]],[[120355,120355],"mapped",[98]],[[120356,120356],"mapped",[99]],[[120357,120357],"mapped",[100]],[[120358,120358],"mapped",[101]],[[120359,120359],"mapped",[102]],[[120360,120360],"mapped",[103]],[[120361,120361],"mapped",[104]],[[120362,120362],"mapped",[105]],[[120363,120363],"mapped",[106]],[[120364,120364],"mapped",[107]],[[120365,120365],"mapped",[108]],[[120366,120366],"mapped",[109]],[[120367,120367],"mapped",[110]],[[120368,120368],"mapped",[111]],[[120369,120369],"mapped",[112]],[[120370,120370],"mapped",[113]],[[120371,120371],"mapped",[114]],[[120372,120372],"mapped",[115]],[[120373,120373],"mapped",[116]],[[120374,120374],"mapped",[117]],[[120375,120375],"mapped",[118]],[[120376,120376],"mapped",[119]],[[120377,120377],"mapped",[120]],[[120378,120378],"mapped",[121]],[[120379,120379],"mapped",[122]],[[120380,120380],"mapped",[97]],[[120381,120381],"mapped",[98]],[[120382,120382],"mapped",[99]],[[120383,120383],"mapped",[100]],[[120384,120384],"mapped",[101]],[[120385,120385],"mapped",[102]],[[120386,120386],"mapped",[103]],[[120387,120387],"mapped",[104]],[[120388,120388],"mapped",[105]],[[120389,120389],"mapped",[106]],[[120390,120390],"mapped",[107]],[[120391,120391],"mapped",[108]],[[120392,120392],"mapped",[109]],[[120393,120393],"mapped",[110]],[[120394,120394],"mapped",[111]],[[120395,120395],"mapped",[112]],[[120396,120396],"mapped",[113]],[[120397,120397],"mapped",[114]],[[120398,120398],"mapped",[115]],[[120399,120399],"mapped",[116]],[[120400,120400],"mapped",[117]],[[120401,120401],"mapped",[118]],[[120402,120402],"mapped",[119]],[[120403,120403],"mapped",[120]],[[120404,120404],"mapped",[121]],[[120405,120405],"mapped",[122]],[[120406,120406],"mapped",[97]],[[120407,120407],"mapped",[98]],[[120408,120408],"mapped",[99]],[[120409,120409],"mapped",[100]],[[120410,120410],"mapped",[101]],[[120411,120411],"mapped",[102]],[[120412,120412],"mapped",[103]],[[120413,120413],"mapped",[104]],[[120414,120414],"mapped",[105]],[[120415,120415],"mapped",[106]],[[120416,120416],"mapped",[107]],[[120417,120417],"mapped",[108]],[[120418,120418],"mapped",[109]],[[120419,120419],"mapped",[110]],[[120420,120420],"mapped",[111]],[[120421,120421],"mapped",[112]],[[120422,120422],"mapped",[113]],[[120423,120423],"mapped",[114]],[[120424,120424],"mapped",[115]],[[120425,120425],"mapped",[116]],[[120426,120426],"mapped",[117]],[[120427,120427],"mapped",[118]],[[120428,120428],"mapped",[119]],[[120429,120429],"mapped",[120]],[[120430,120430],"mapped",[121]],[[120431,120431],"mapped",[122]],[[120432,120432],"mapped",[97]],[[120433,120433],"mapped",[98]],[[120434,120434],"mapped",[99]],[[120435,120435],"mapped",[100]],[[120436,120436],"mapped",[101]],[[120437,120437],"mapped",[102]],[[120438,120438],"mapped",[103]],[[120439,120439],"mapped",[104]],[[120440,120440],"mapped",[105]],[[120441,120441],"mapped",[106]],[[120442,120442],"mapped",[107]],[[120443,120443],"mapped",[108]],[[120444,120444],"mapped",[109]],[[120445,120445],"mapped",[110]],[[120446,120446],"mapped",[111]],[[120447,120447],"mapped",[112]],[[120448,120448],"mapped",[113]],[[120449,120449],"mapped",[114]],[[120450,120450],"mapped",[115]],[[120451,120451],"mapped",[116]],[[120452,120452],"mapped",[117]],[[120453,120453],"mapped",[118]],[[120454,120454],"mapped",[119]],[[120455,120455],"mapped",[120]],[[120456,120456],"mapped",[121]],[[120457,120457],"mapped",[122]],[[120458,120458],"mapped",[97]],[[120459,120459],"mapped",[98]],[[120460,120460],"mapped",[99]],[[120461,120461],"mapped",[100]],[[120462,120462],"mapped",[101]],[[120463,120463],"mapped",[102]],[[120464,120464],"mapped",[103]],[[120465,120465],"mapped",[104]],[[120466,120466],"mapped",[105]],[[120467,120467],"mapped",[106]],[[120468,120468],"mapped",[107]],[[120469,120469],"mapped",[108]],[[120470,120470],"mapped",[109]],[[120471,120471],"mapped",[110]],[[120472,120472],"mapped",[111]],[[120473,120473],"mapped",[112]],[[120474,120474],"mapped",[113]],[[120475,120475],"mapped",[114]],[[120476,120476],"mapped",[115]],[[120477,120477],"mapped",[116]],[[120478,120478],"mapped",[117]],[[120479,120479],"mapped",[118]],[[120480,120480],"mapped",[119]],[[120481,120481],"mapped",[120]],[[120482,120482],"mapped",[121]],[[120483,120483],"mapped",[122]],[[120484,120484],"mapped",[305]],[[120485,120485],"mapped",[567]],[[120486,120487],"disallowed"],[[120488,120488],"mapped",[945]],[[120489,120489],"mapped",[946]],[[120490,120490],"mapped",[947]],[[120491,120491],"mapped",[948]],[[120492,120492],"mapped",[949]],[[120493,120493],"mapped",[950]],[[120494,120494],"mapped",[951]],[[120495,120495],"mapped",[952]],[[120496,120496],"mapped",[953]],[[120497,120497],"mapped",[954]],[[120498,120498],"mapped",[955]],[[120499,120499],"mapped",[956]],[[120500,120500],"mapped",[957]],[[120501,120501],"mapped",[958]],[[120502,120502],"mapped",[959]],[[120503,120503],"mapped",[960]],[[120504,120504],"mapped",[961]],[[120505,120505],"mapped",[952]],[[120506,120506],"mapped",[963]],[[120507,120507],"mapped",[964]],[[120508,120508],"mapped",[965]],[[120509,120509],"mapped",[966]],[[120510,120510],"mapped",[967]],[[120511,120511],"mapped",[968]],[[120512,120512],"mapped",[969]],[[120513,120513],"mapped",[8711]],[[120514,120514],"mapped",[945]],[[120515,120515],"mapped",[946]],[[120516,120516],"mapped",[947]],[[120517,120517],"mapped",[948]],[[120518,120518],"mapped",[949]],[[120519,120519],"mapped",[950]],[[120520,120520],"mapped",[951]],[[120521,120521],"mapped",[952]],[[120522,120522],"mapped",[953]],[[120523,120523],"mapped",[954]],[[120524,120524],"mapped",[955]],[[120525,120525],"mapped",[956]],[[120526,120526],"mapped",[957]],[[120527,120527],"mapped",[958]],[[120528,120528],"mapped",[959]],[[120529,120529],"mapped",[960]],[[120530,120530],"mapped",[961]],[[120531,120532],"mapped",[963]],[[120533,120533],"mapped",[964]],[[120534,120534],"mapped",[965]],[[120535,120535],"mapped",[966]],[[120536,120536],"mapped",[967]],[[120537,120537],"mapped",[968]],[[120538,120538],"mapped",[969]],[[120539,120539],"mapped",[8706]],[[120540,120540],"mapped",[949]],[[120541,120541],"mapped",[952]],[[120542,120542],"mapped",[954]],[[120543,120543],"mapped",[966]],[[120544,120544],"mapped",[961]],[[120545,120545],"mapped",[960]],[[120546,120546],"mapped",[945]],[[120547,120547],"mapped",[946]],[[120548,120548],"mapped",[947]],[[120549,120549],"mapped",[948]],[[120550,120550],"mapped",[949]],[[120551,120551],"mapped",[950]],[[120552,120552],"mapped",[951]],[[120553,120553],"mapped",[952]],[[120554,120554],"mapped",[953]],[[120555,120555],"mapped",[954]],[[120556,120556],"mapped",[955]],[[120557,120557],"mapped",[956]],[[120558,120558],"mapped",[957]],[[120559,120559],"mapped",[958]],[[120560,120560],"mapped",[959]],[[120561,120561],"mapped",[960]],[[120562,120562],"mapped",[961]],[[120563,120563],"mapped",[952]],[[120564,120564],"mapped",[963]],[[120565,120565],"mapped",[964]],[[120566,120566],"mapped",[965]],[[120567,120567],"mapped",[966]],[[120568,120568],"mapped",[967]],[[120569,120569],"mapped",[968]],[[120570,120570],"mapped",[969]],[[120571,120571],"mapped",[8711]],[[120572,120572],"mapped",[945]],[[120573,120573],"mapped",[946]],[[120574,120574],"mapped",[947]],[[120575,120575],"mapped",[948]],[[120576,120576],"mapped",[949]],[[120577,120577],"mapped",[950]],[[120578,120578],"mapped",[951]],[[120579,120579],"mapped",[952]],[[120580,120580],"mapped",[953]],[[120581,120581],"mapped",[954]],[[120582,120582],"mapped",[955]],[[120583,120583],"mapped",[956]],[[120584,120584],"mapped",[957]],[[120585,120585],"mapped",[958]],[[120586,120586],"mapped",[959]],[[120587,120587],"mapped",[960]],[[120588,120588],"mapped",[961]],[[120589,120590],"mapped",[963]],[[120591,120591],"mapped",[964]],[[120592,120592],"mapped",[965]],[[120593,120593],"mapped",[966]],[[120594,120594],"mapped",[967]],[[120595,120595],"mapped",[968]],[[120596,120596],"mapped",[969]],[[120597,120597],"mapped",[8706]],[[120598,120598],"mapped",[949]],[[120599,120599],"mapped",[952]],[[120600,120600],"mapped",[954]],[[120601,120601],"mapped",[966]],[[120602,120602],"mapped",[961]],[[120603,120603],"mapped",[960]],[[120604,120604],"mapped",[945]],[[120605,120605],"mapped",[946]],[[120606,120606],"mapped",[947]],[[120607,120607],"mapped",[948]],[[120608,120608],"mapped",[949]],[[120609,120609],"mapped",[950]],[[120610,120610],"mapped",[951]],[[120611,120611],"mapped",[952]],[[120612,120612],"mapped",[953]],[[120613,120613],"mapped",[954]],[[120614,120614],"mapped",[955]],[[120615,120615],"mapped",[956]],[[120616,120616],"mapped",[957]],[[120617,120617],"mapped",[958]],[[120618,120618],"mapped",[959]],[[120619,120619],"mapped",[960]],[[120620,120620],"mapped",[961]],[[120621,120621],"mapped",[952]],[[120622,120622],"mapped",[963]],[[120623,120623],"mapped",[964]],[[120624,120624],"mapped",[965]],[[120625,120625],"mapped",[966]],[[120626,120626],"mapped",[967]],[[120627,120627],"mapped",[968]],[[120628,120628],"mapped",[969]],[[120629,120629],"mapped",[8711]],[[120630,120630],"mapped",[945]],[[120631,120631],"mapped",[946]],[[120632,120632],"mapped",[947]],[[120633,120633],"mapped",[948]],[[120634,120634],"mapped",[949]],[[120635,120635],"mapped",[950]],[[120636,120636],"mapped",[951]],[[120637,120637],"mapped",[952]],[[120638,120638],"mapped",[953]],[[120639,120639],"mapped",[954]],[[120640,120640],"mapped",[955]],[[120641,120641],"mapped",[956]],[[120642,120642],"mapped",[957]],[[120643,120643],"mapped",[958]],[[120644,120644],"mapped",[959]],[[120645,120645],"mapped",[960]],[[120646,120646],"mapped",[961]],[[120647,120648],"mapped",[963]],[[120649,120649],"mapped",[964]],[[120650,120650],"mapped",[965]],[[120651,120651],"mapped",[966]],[[120652,120652],"mapped",[967]],[[120653,120653],"mapped",[968]],[[120654,120654],"mapped",[969]],[[120655,120655],"mapped",[8706]],[[120656,120656],"mapped",[949]],[[120657,120657],"mapped",[952]],[[120658,120658],"mapped",[954]],[[120659,120659],"mapped",[966]],[[120660,120660],"mapped",[961]],[[120661,120661],"mapped",[960]],[[120662,120662],"mapped",[945]],[[120663,120663],"mapped",[946]],[[120664,120664],"mapped",[947]],[[120665,120665],"mapped",[948]],[[120666,120666],"mapped",[949]],[[120667,120667],"mapped",[950]],[[120668,120668],"mapped",[951]],[[120669,120669],"mapped",[952]],[[120670,120670],"mapped",[953]],[[120671,120671],"mapped",[954]],[[120672,120672],"mapped",[955]],[[120673,120673],"mapped",[956]],[[120674,120674],"mapped",[957]],[[120675,120675],"mapped",[958]],[[120676,120676],"mapped",[959]],[[120677,120677],"mapped",[960]],[[120678,120678],"mapped",[961]],[[120679,120679],"mapped",[952]],[[120680,120680],"mapped",[963]],[[120681,120681],"mapped",[964]],[[120682,120682],"mapped",[965]],[[120683,120683],"mapped",[966]],[[120684,120684],"mapped",[967]],[[120685,120685],"mapped",[968]],[[120686,120686],"mapped",[969]],[[120687,120687],"mapped",[8711]],[[120688,120688],"mapped",[945]],[[120689,120689],"mapped",[946]],[[120690,120690],"mapped",[947]],[[120691,120691],"mapped",[948]],[[120692,120692],"mapped",[949]],[[120693,120693],"mapped",[950]],[[120694,120694],"mapped",[951]],[[120695,120695],"mapped",[952]],[[120696,120696],"mapped",[953]],[[120697,120697],"mapped",[954]],[[120698,120698],"mapped",[955]],[[120699,120699],"mapped",[956]],[[120700,120700],"mapped",[957]],[[120701,120701],"mapped",[958]],[[120702,120702],"mapped",[959]],[[120703,120703],"mapped",[960]],[[120704,120704],"mapped",[961]],[[120705,120706],"mapped",[963]],[[120707,120707],"mapped",[964]],[[120708,120708],"mapped",[965]],[[120709,120709],"mapped",[966]],[[120710,120710],"mapped",[967]],[[120711,120711],"mapped",[968]],[[120712,120712],"mapped",[969]],[[120713,120713],"mapped",[8706]],[[120714,120714],"mapped",[949]],[[120715,120715],"mapped",[952]],[[120716,120716],"mapped",[954]],[[120717,120717],"mapped",[966]],[[120718,120718],"mapped",[961]],[[120719,120719],"mapped",[960]],[[120720,120720],"mapped",[945]],[[120721,120721],"mapped",[946]],[[120722,120722],"mapped",[947]],[[120723,120723],"mapped",[948]],[[120724,120724],"mapped",[949]],[[120725,120725],"mapped",[950]],[[120726,120726],"mapped",[951]],[[120727,120727],"mapped",[952]],[[120728,120728],"mapped",[953]],[[120729,120729],"mapped",[954]],[[120730,120730],"mapped",[955]],[[120731,120731],"mapped",[956]],[[120732,120732],"mapped",[957]],[[120733,120733],"mapped",[958]],[[120734,120734],"mapped",[959]],[[120735,120735],"mapped",[960]],[[120736,120736],"mapped",[961]],[[120737,120737],"mapped",[952]],[[120738,120738],"mapped",[963]],[[120739,120739],"mapped",[964]],[[120740,120740],"mapped",[965]],[[120741,120741],"mapped",[966]],[[120742,120742],"mapped",[967]],[[120743,120743],"mapped",[968]],[[120744,120744],"mapped",[969]],[[120745,120745],"mapped",[8711]],[[120746,120746],"mapped",[945]],[[120747,120747],"mapped",[946]],[[120748,120748],"mapped",[947]],[[120749,120749],"mapped",[948]],[[120750,120750],"mapped",[949]],[[120751,120751],"mapped",[950]],[[120752,120752],"mapped",[951]],[[120753,120753],"mapped",[952]],[[120754,120754],"mapped",[953]],[[120755,120755],"mapped",[954]],[[120756,120756],"mapped",[955]],[[120757,120757],"mapped",[956]],[[120758,120758],"mapped",[957]],[[120759,120759],"mapped",[958]],[[120760,120760],"mapped",[959]],[[120761,120761],"mapped",[960]],[[120762,120762],"mapped",[961]],[[120763,120764],"mapped",[963]],[[120765,120765],"mapped",[964]],[[120766,120766],"mapped",[965]],[[120767,120767],"mapped",[966]],[[120768,120768],"mapped",[967]],[[120769,120769],"mapped",[968]],[[120770,120770],"mapped",[969]],[[120771,120771],"mapped",[8706]],[[120772,120772],"mapped",[949]],[[120773,120773],"mapped",[952]],[[120774,120774],"mapped",[954]],[[120775,120775],"mapped",[966]],[[120776,120776],"mapped",[961]],[[120777,120777],"mapped",[960]],[[120778,120779],"mapped",[989]],[[120780,120781],"disallowed"],[[120782,120782],"mapped",[48]],[[120783,120783],"mapped",[49]],[[120784,120784],"mapped",[50]],[[120785,120785],"mapped",[51]],[[120786,120786],"mapped",[52]],[[120787,120787],"mapped",[53]],[[120788,120788],"mapped",[54]],[[120789,120789],"mapped",[55]],[[120790,120790],"mapped",[56]],[[120791,120791],"mapped",[57]],[[120792,120792],"mapped",[48]],[[120793,120793],"mapped",[49]],[[120794,120794],"mapped",[50]],[[120795,120795],"mapped",[51]],[[120796,120796],"mapped",[52]],[[120797,120797],"mapped",[53]],[[120798,120798],"mapped",[54]],[[120799,120799],"mapped",[55]],[[120800,120800],"mapped",[56]],[[120801,120801],"mapped",[57]],[[120802,120802],"mapped",[48]],[[120803,120803],"mapped",[49]],[[120804,120804],"mapped",[50]],[[120805,120805],"mapped",[51]],[[120806,120806],"mapped",[52]],[[120807,120807],"mapped",[53]],[[120808,120808],"mapped",[54]],[[120809,120809],"mapped",[55]],[[120810,120810],"mapped",[56]],[[120811,120811],"mapped",[57]],[[120812,120812],"mapped",[48]],[[120813,120813],"mapped",[49]],[[120814,120814],"mapped",[50]],[[120815,120815],"mapped",[51]],[[120816,120816],"mapped",[52]],[[120817,120817],"mapped",[53]],[[120818,120818],"mapped",[54]],[[120819,120819],"mapped",[55]],[[120820,120820],"mapped",[56]],[[120821,120821],"mapped",[57]],[[120822,120822],"mapped",[48]],[[120823,120823],"mapped",[49]],[[120824,120824],"mapped",[50]],[[120825,120825],"mapped",[51]],[[120826,120826],"mapped",[52]],[[120827,120827],"mapped",[53]],[[120828,120828],"mapped",[54]],[[120829,120829],"mapped",[55]],[[120830,120830],"mapped",[56]],[[120831,120831],"mapped",[57]],[[120832,121343],"valid",[],"NV8"],[[121344,121398],"valid"],[[121399,121402],"valid",[],"NV8"],[[121403,121452],"valid"],[[121453,121460],"valid",[],"NV8"],[[121461,121461],"valid"],[[121462,121475],"valid",[],"NV8"],[[121476,121476],"valid"],[[121477,121483],"valid",[],"NV8"],[[121484,121498],"disallowed"],[[121499,121503],"valid"],[[121504,121504],"disallowed"],[[121505,121519],"valid"],[[121520,124927],"disallowed"],[[124928,125124],"valid"],[[125125,125126],"disallowed"],[[125127,125135],"valid",[],"NV8"],[[125136,125142],"valid"],[[125143,126463],"disallowed"],[[126464,126464],"mapped",[1575]],[[126465,126465],"mapped",[1576]],[[126466,126466],"mapped",[1580]],[[126467,126467],"mapped",[1583]],[[126468,126468],"disallowed"],[[126469,126469],"mapped",[1608]],[[126470,126470],"mapped",[1586]],[[126471,126471],"mapped",[1581]],[[126472,126472],"mapped",[1591]],[[126473,126473],"mapped",[1610]],[[126474,126474],"mapped",[1603]],[[126475,126475],"mapped",[1604]],[[126476,126476],"mapped",[1605]],[[126477,126477],"mapped",[1606]],[[126478,126478],"mapped",[1587]],[[126479,126479],"mapped",[1593]],[[126480,126480],"mapped",[1601]],[[126481,126481],"mapped",[1589]],[[126482,126482],"mapped",[1602]],[[126483,126483],"mapped",[1585]],[[126484,126484],"mapped",[1588]],[[126485,126485],"mapped",[1578]],[[126486,126486],"mapped",[1579]],[[126487,126487],"mapped",[1582]],[[126488,126488],"mapped",[1584]],[[126489,126489],"mapped",[1590]],[[126490,126490],"mapped",[1592]],[[126491,126491],"mapped",[1594]],[[126492,126492],"mapped",[1646]],[[126493,126493],"mapped",[1722]],[[126494,126494],"mapped",[1697]],[[126495,126495],"mapped",[1647]],[[126496,126496],"disallowed"],[[126497,126497],"mapped",[1576]],[[126498,126498],"mapped",[1580]],[[126499,126499],"disallowed"],[[126500,126500],"mapped",[1607]],[[126501,126502],"disallowed"],[[126503,126503],"mapped",[1581]],[[126504,126504],"disallowed"],[[126505,126505],"mapped",[1610]],[[126506,126506],"mapped",[1603]],[[126507,126507],"mapped",[1604]],[[126508,126508],"mapped",[1605]],[[126509,126509],"mapped",[1606]],[[126510,126510],"mapped",[1587]],[[126511,126511],"mapped",[1593]],[[126512,126512],"mapped",[1601]],[[126513,126513],"mapped",[1589]],[[126514,126514],"mapped",[1602]],[[126515,126515],"disallowed"],[[126516,126516],"mapped",[1588]],[[126517,126517],"mapped",[1578]],[[126518,126518],"mapped",[1579]],[[126519,126519],"mapped",[1582]],[[126520,126520],"disallowed"],[[126521,126521],"mapped",[1590]],[[126522,126522],"disallowed"],[[126523,126523],"mapped",[1594]],[[126524,126529],"disallowed"],[[126530,126530],"mapped",[1580]],[[126531,126534],"disallowed"],[[126535,126535],"mapped",[1581]],[[126536,126536],"disallowed"],[[126537,126537],"mapped",[1610]],[[126538,126538],"disallowed"],[[126539,126539],"mapped",[1604]],[[126540,126540],"disallowed"],[[126541,126541],"mapped",[1606]],[[126542,126542],"mapped",[1587]],[[126543,126543],"mapped",[1593]],[[126544,126544],"disallowed"],[[126545,126545],"mapped",[1589]],[[126546,126546],"mapped",[1602]],[[126547,126547],"disallowed"],[[126548,126548],"mapped",[1588]],[[126549,126550],"disallowed"],[[126551,126551],"mapped",[1582]],[[126552,126552],"disallowed"],[[126553,126553],"mapped",[1590]],[[126554,126554],"disallowed"],[[126555,126555],"mapped",[1594]],[[126556,126556],"disallowed"],[[126557,126557],"mapped",[1722]],[[126558,126558],"disallowed"],[[126559,126559],"mapped",[1647]],[[126560,126560],"disallowed"],[[126561,126561],"mapped",[1576]],[[126562,126562],"mapped",[1580]],[[126563,126563],"disallowed"],[[126564,126564],"mapped",[1607]],[[126565,126566],"disallowed"],[[126567,126567],"mapped",[1581]],[[126568,126568],"mapped",[1591]],[[126569,126569],"mapped",[1610]],[[126570,126570],"mapped",[1603]],[[126571,126571],"disallowed"],[[126572,126572],"mapped",[1605]],[[126573,126573],"mapped",[1606]],[[126574,126574],"mapped",[1587]],[[126575,126575],"mapped",[1593]],[[126576,126576],"mapped",[1601]],[[126577,126577],"mapped",[1589]],[[126578,126578],"mapped",[1602]],[[126579,126579],"disallowed"],[[126580,126580],"mapped",[1588]],[[126581,126581],"mapped",[1578]],[[126582,126582],"mapped",[1579]],[[126583,126583],"mapped",[1582]],[[126584,126584],"disallowed"],[[126585,126585],"mapped",[1590]],[[126586,126586],"mapped",[1592]],[[126587,126587],"mapped",[1594]],[[126588,126588],"mapped",[1646]],[[126589,126589],"disallowed"],[[126590,126590],"mapped",[1697]],[[126591,126591],"disallowed"],[[126592,126592],"mapped",[1575]],[[126593,126593],"mapped",[1576]],[[126594,126594],"mapped",[1580]],[[126595,126595],"mapped",[1583]],[[126596,126596],"mapped",[1607]],[[126597,126597],"mapped",[1608]],[[126598,126598],"mapped",[1586]],[[126599,126599],"mapped",[1581]],[[126600,126600],"mapped",[1591]],[[126601,126601],"mapped",[1610]],[[126602,126602],"disallowed"],[[126603,126603],"mapped",[1604]],[[126604,126604],"mapped",[1605]],[[126605,126605],"mapped",[1606]],[[126606,126606],"mapped",[1587]],[[126607,126607],"mapped",[1593]],[[126608,126608],"mapped",[1601]],[[126609,126609],"mapped",[1589]],[[126610,126610],"mapped",[1602]],[[126611,126611],"mapped",[1585]],[[126612,126612],"mapped",[1588]],[[126613,126613],"mapped",[1578]],[[126614,126614],"mapped",[1579]],[[126615,126615],"mapped",[1582]],[[126616,126616],"mapped",[1584]],[[126617,126617],"mapped",[1590]],[[126618,126618],"mapped",[1592]],[[126619,126619],"mapped",[1594]],[[126620,126624],"disallowed"],[[126625,126625],"mapped",[1576]],[[126626,126626],"mapped",[1580]],[[126627,126627],"mapped",[1583]],[[126628,126628],"disallowed"],[[126629,126629],"mapped",[1608]],[[126630,126630],"mapped",[1586]],[[126631,126631],"mapped",[1581]],[[126632,126632],"mapped",[1591]],[[126633,126633],"mapped",[1610]],[[126634,126634],"disallowed"],[[126635,126635],"mapped",[1604]],[[126636,126636],"mapped",[1605]],[[126637,126637],"mapped",[1606]],[[126638,126638],"mapped",[1587]],[[126639,126639],"mapped",[1593]],[[126640,126640],"mapped",[1601]],[[126641,126641],"mapped",[1589]],[[126642,126642],"mapped",[1602]],[[126643,126643],"mapped",[1585]],[[126644,126644],"mapped",[1588]],[[126645,126645],"mapped",[1578]],[[126646,126646],"mapped",[1579]],[[126647,126647],"mapped",[1582]],[[126648,126648],"mapped",[1584]],[[126649,126649],"mapped",[1590]],[[126650,126650],"mapped",[1592]],[[126651,126651],"mapped",[1594]],[[126652,126703],"disallowed"],[[126704,126705],"valid",[],"NV8"],[[126706,126975],"disallowed"],[[126976,127019],"valid",[],"NV8"],[[127020,127023],"disallowed"],[[127024,127123],"valid",[],"NV8"],[[127124,127135],"disallowed"],[[127136,127150],"valid",[],"NV8"],[[127151,127152],"disallowed"],[[127153,127166],"valid",[],"NV8"],[[127167,127167],"valid",[],"NV8"],[[127168,127168],"disallowed"],[[127169,127183],"valid",[],"NV8"],[[127184,127184],"disallowed"],[[127185,127199],"valid",[],"NV8"],[[127200,127221],"valid",[],"NV8"],[[127222,127231],"disallowed"],[[127232,127232],"disallowed"],[[127233,127233],"disallowed_STD3_mapped",[48,44]],[[127234,127234],"disallowed_STD3_mapped",[49,44]],[[127235,127235],"disallowed_STD3_mapped",[50,44]],[[127236,127236],"disallowed_STD3_mapped",[51,44]],[[127237,127237],"disallowed_STD3_mapped",[52,44]],[[127238,127238],"disallowed_STD3_mapped",[53,44]],[[127239,127239],"disallowed_STD3_mapped",[54,44]],[[127240,127240],"disallowed_STD3_mapped",[55,44]],[[127241,127241],"disallowed_STD3_mapped",[56,44]],[[127242,127242],"disallowed_STD3_mapped",[57,44]],[[127243,127244],"valid",[],"NV8"],[[127245,127247],"disallowed"],[[127248,127248],"disallowed_STD3_mapped",[40,97,41]],[[127249,127249],"disallowed_STD3_mapped",[40,98,41]],[[127250,127250],"disallowed_STD3_mapped",[40,99,41]],[[127251,127251],"disallowed_STD3_mapped",[40,100,41]],[[127252,127252],"disallowed_STD3_mapped",[40,101,41]],[[127253,127253],"disallowed_STD3_mapped",[40,102,41]],[[127254,127254],"disallowed_STD3_mapped",[40,103,41]],[[127255,127255],"disallowed_STD3_mapped",[40,104,41]],[[127256,127256],"disallowed_STD3_mapped",[40,105,41]],[[127257,127257],"disallowed_STD3_mapped",[40,106,41]],[[127258,127258],"disallowed_STD3_mapped",[40,107,41]],[[127259,127259],"disallowed_STD3_mapped",[40,108,41]],[[127260,127260],"disallowed_STD3_mapped",[40,109,41]],[[127261,127261],"disallowed_STD3_mapped",[40,110,41]],[[127262,127262],"disallowed_STD3_mapped",[40,111,41]],[[127263,127263],"disallowed_STD3_mapped",[40,112,41]],[[127264,127264],"disallowed_STD3_mapped",[40,113,41]],[[127265,127265],"disallowed_STD3_mapped",[40,114,41]],[[127266,127266],"disallowed_STD3_mapped",[40,115,41]],[[127267,127267],"disallowed_STD3_mapped",[40,116,41]],[[127268,127268],"disallowed_STD3_mapped",[40,117,41]],[[127269,127269],"disallowed_STD3_mapped",[40,118,41]],[[127270,127270],"disallowed_STD3_mapped",[40,119,41]],[[127271,127271],"disallowed_STD3_mapped",[40,120,41]],[[127272,127272],"disallowed_STD3_mapped",[40,121,41]],[[127273,127273],"disallowed_STD3_mapped",[40,122,41]],[[127274,127274],"mapped",[12308,115,12309]],[[127275,127275],"mapped",[99]],[[127276,127276],"mapped",[114]],[[127277,127277],"mapped",[99,100]],[[127278,127278],"mapped",[119,122]],[[127279,127279],"disallowed"],[[127280,127280],"mapped",[97]],[[127281,127281],"mapped",[98]],[[127282,127282],"mapped",[99]],[[127283,127283],"mapped",[100]],[[127284,127284],"mapped",[101]],[[127285,127285],"mapped",[102]],[[127286,127286],"mapped",[103]],[[127287,127287],"mapped",[104]],[[127288,127288],"mapped",[105]],[[127289,127289],"mapped",[106]],[[127290,127290],"mapped",[107]],[[127291,127291],"mapped",[108]],[[127292,127292],"mapped",[109]],[[127293,127293],"mapped",[110]],[[127294,127294],"mapped",[111]],[[127295,127295],"mapped",[112]],[[127296,127296],"mapped",[113]],[[127297,127297],"mapped",[114]],[[127298,127298],"mapped",[115]],[[127299,127299],"mapped",[116]],[[127300,127300],"mapped",[117]],[[127301,127301],"mapped",[118]],[[127302,127302],"mapped",[119]],[[127303,127303],"mapped",[120]],[[127304,127304],"mapped",[121]],[[127305,127305],"mapped",[122]],[[127306,127306],"mapped",[104,118]],[[127307,127307],"mapped",[109,118]],[[127308,127308],"mapped",[115,100]],[[127309,127309],"mapped",[115,115]],[[127310,127310],"mapped",[112,112,118]],[[127311,127311],"mapped",[119,99]],[[127312,127318],"valid",[],"NV8"],[[127319,127319],"valid",[],"NV8"],[[127320,127326],"valid",[],"NV8"],[[127327,127327],"valid",[],"NV8"],[[127328,127337],"valid",[],"NV8"],[[127338,127338],"mapped",[109,99]],[[127339,127339],"mapped",[109,100]],[[127340,127343],"disallowed"],[[127344,127352],"valid",[],"NV8"],[[127353,127353],"valid",[],"NV8"],[[127354,127354],"valid",[],"NV8"],[[127355,127356],"valid",[],"NV8"],[[127357,127358],"valid",[],"NV8"],[[127359,127359],"valid",[],"NV8"],[[127360,127369],"valid",[],"NV8"],[[127370,127373],"valid",[],"NV8"],[[127374,127375],"valid",[],"NV8"],[[127376,127376],"mapped",[100,106]],[[127377,127386],"valid",[],"NV8"],[[127387,127461],"disallowed"],[[127462,127487],"valid",[],"NV8"],[[127488,127488],"mapped",[12411,12363]],[[127489,127489],"mapped",[12467,12467]],[[127490,127490],"mapped",[12469]],[[127491,127503],"disallowed"],[[127504,127504],"mapped",[25163]],[[127505,127505],"mapped",[23383]],[[127506,127506],"mapped",[21452]],[[127507,127507],"mapped",[12487]],[[127508,127508],"mapped",[20108]],[[127509,127509],"mapped",[22810]],[[127510,127510],"mapped",[35299]],[[127511,127511],"mapped",[22825]],[[127512,127512],"mapped",[20132]],[[127513,127513],"mapped",[26144]],[[127514,127514],"mapped",[28961]],[[127515,127515],"mapped",[26009]],[[127516,127516],"mapped",[21069]],[[127517,127517],"mapped",[24460]],[[127518,127518],"mapped",[20877]],[[127519,127519],"mapped",[26032]],[[127520,127520],"mapped",[21021]],[[127521,127521],"mapped",[32066]],[[127522,127522],"mapped",[29983]],[[127523,127523],"mapped",[36009]],[[127524,127524],"mapped",[22768]],[[127525,127525],"mapped",[21561]],[[127526,127526],"mapped",[28436]],[[127527,127527],"mapped",[25237]],[[127528,127528],"mapped",[25429]],[[127529,127529],"mapped",[19968]],[[127530,127530],"mapped",[19977]],[[127531,127531],"mapped",[36938]],[[127532,127532],"mapped",[24038]],[[127533,127533],"mapped",[20013]],[[127534,127534],"mapped",[21491]],[[127535,127535],"mapped",[25351]],[[127536,127536],"mapped",[36208]],[[127537,127537],"mapped",[25171]],[[127538,127538],"mapped",[31105]],[[127539,127539],"mapped",[31354]],[[127540,127540],"mapped",[21512]],[[127541,127541],"mapped",[28288]],[[127542,127542],"mapped",[26377]],[[127543,127543],"mapped",[26376]],[[127544,127544],"mapped",[30003]],[[127545,127545],"mapped",[21106]],[[127546,127546],"mapped",[21942]],[[127547,127551],"disallowed"],[[127552,127552],"mapped",[12308,26412,12309]],[[127553,127553],"mapped",[12308,19977,12309]],[[127554,127554],"mapped",[12308,20108,12309]],[[127555,127555],"mapped",[12308,23433,12309]],[[127556,127556],"mapped",[12308,28857,12309]],[[127557,127557],"mapped",[12308,25171,12309]],[[127558,127558],"mapped",[12308,30423,12309]],[[127559,127559],"mapped",[12308,21213,12309]],[[127560,127560],"mapped",[12308,25943,12309]],[[127561,127567],"disallowed"],[[127568,127568],"mapped",[24471]],[[127569,127569],"mapped",[21487]],[[127570,127743],"disallowed"],[[127744,127776],"valid",[],"NV8"],[[127777,127788],"valid",[],"NV8"],[[127789,127791],"valid",[],"NV8"],[[127792,127797],"valid",[],"NV8"],[[127798,127798],"valid",[],"NV8"],[[127799,127868],"valid",[],"NV8"],[[127869,127869],"valid",[],"NV8"],[[127870,127871],"valid",[],"NV8"],[[127872,127891],"valid",[],"NV8"],[[127892,127903],"valid",[],"NV8"],[[127904,127940],"valid",[],"NV8"],[[127941,127941],"valid",[],"NV8"],[[127942,127946],"valid",[],"NV8"],[[127947,127950],"valid",[],"NV8"],[[127951,127955],"valid",[],"NV8"],[[127956,127967],"valid",[],"NV8"],[[127968,127984],"valid",[],"NV8"],[[127985,127991],"valid",[],"NV8"],[[127992,127999],"valid",[],"NV8"],[[128000,128062],"valid",[],"NV8"],[[128063,128063],"valid",[],"NV8"],[[128064,128064],"valid",[],"NV8"],[[128065,128065],"valid",[],"NV8"],[[128066,128247],"valid",[],"NV8"],[[128248,128248],"valid",[],"NV8"],[[128249,128252],"valid",[],"NV8"],[[128253,128254],"valid",[],"NV8"],[[128255,128255],"valid",[],"NV8"],[[128256,128317],"valid",[],"NV8"],[[128318,128319],"valid",[],"NV8"],[[128320,128323],"valid",[],"NV8"],[[128324,128330],"valid",[],"NV8"],[[128331,128335],"valid",[],"NV8"],[[128336,128359],"valid",[],"NV8"],[[128360,128377],"valid",[],"NV8"],[[128378,128378],"disallowed"],[[128379,128419],"valid",[],"NV8"],[[128420,128420],"disallowed"],[[128421,128506],"valid",[],"NV8"],[[128507,128511],"valid",[],"NV8"],[[128512,128512],"valid",[],"NV8"],[[128513,128528],"valid",[],"NV8"],[[128529,128529],"valid",[],"NV8"],[[128530,128532],"valid",[],"NV8"],[[128533,128533],"valid",[],"NV8"],[[128534,128534],"valid",[],"NV8"],[[128535,128535],"valid",[],"NV8"],[[128536,128536],"valid",[],"NV8"],[[128537,128537],"valid",[],"NV8"],[[128538,128538],"valid",[],"NV8"],[[128539,128539],"valid",[],"NV8"],[[128540,128542],"valid",[],"NV8"],[[128543,128543],"valid",[],"NV8"],[[128544,128549],"valid",[],"NV8"],[[128550,128551],"valid",[],"NV8"],[[128552,128555],"valid",[],"NV8"],[[128556,128556],"valid",[],"NV8"],[[128557,128557],"valid",[],"NV8"],[[128558,128559],"valid",[],"NV8"],[[128560,128563],"valid",[],"NV8"],[[128564,128564],"valid",[],"NV8"],[[128565,128576],"valid",[],"NV8"],[[128577,128578],"valid",[],"NV8"],[[128579,128580],"valid",[],"NV8"],[[128581,128591],"valid",[],"NV8"],[[128592,128639],"valid",[],"NV8"],[[128640,128709],"valid",[],"NV8"],[[128710,128719],"valid",[],"NV8"],[[128720,128720],"valid",[],"NV8"],[[128721,128735],"disallowed"],[[128736,128748],"valid",[],"NV8"],[[128749,128751],"disallowed"],[[128752,128755],"valid",[],"NV8"],[[128756,128767],"disallowed"],[[128768,128883],"valid",[],"NV8"],[[128884,128895],"disallowed"],[[128896,128980],"valid",[],"NV8"],[[128981,129023],"disallowed"],[[129024,129035],"valid",[],"NV8"],[[129036,129039],"disallowed"],[[129040,129095],"valid",[],"NV8"],[[129096,129103],"disallowed"],[[129104,129113],"valid",[],"NV8"],[[129114,129119],"disallowed"],[[129120,129159],"valid",[],"NV8"],[[129160,129167],"disallowed"],[[129168,129197],"valid",[],"NV8"],[[129198,129295],"disallowed"],[[129296,129304],"valid",[],"NV8"],[[129305,129407],"disallowed"],[[129408,129412],"valid",[],"NV8"],[[129413,129471],"disallowed"],[[129472,129472],"valid",[],"NV8"],[[129473,131069],"disallowed"],[[131070,131071],"disallowed"],[[131072,173782],"valid"],[[173783,173823],"disallowed"],[[173824,177972],"valid"],[[177973,177983],"disallowed"],[[177984,178205],"valid"],[[178206,178207],"disallowed"],[[178208,183969],"valid"],[[183970,194559],"disallowed"],[[194560,194560],"mapped",[20029]],[[194561,194561],"mapped",[20024]],[[194562,194562],"mapped",[20033]],[[194563,194563],"mapped",[131362]],[[194564,194564],"mapped",[20320]],[[194565,194565],"mapped",[20398]],[[194566,194566],"mapped",[20411]],[[194567,194567],"mapped",[20482]],[[194568,194568],"mapped",[20602]],[[194569,194569],"mapped",[20633]],[[194570,194570],"mapped",[20711]],[[194571,194571],"mapped",[20687]],[[194572,194572],"mapped",[13470]],[[194573,194573],"mapped",[132666]],[[194574,194574],"mapped",[20813]],[[194575,194575],"mapped",[20820]],[[194576,194576],"mapped",[20836]],[[194577,194577],"mapped",[20855]],[[194578,194578],"mapped",[132380]],[[194579,194579],"mapped",[13497]],[[194580,194580],"mapped",[20839]],[[194581,194581],"mapped",[20877]],[[194582,194582],"mapped",[132427]],[[194583,194583],"mapped",[20887]],[[194584,194584],"mapped",[20900]],[[194585,194585],"mapped",[20172]],[[194586,194586],"mapped",[20908]],[[194587,194587],"mapped",[20917]],[[194588,194588],"mapped",[168415]],[[194589,194589],"mapped",[20981]],[[194590,194590],"mapped",[20995]],[[194591,194591],"mapped",[13535]],[[194592,194592],"mapped",[21051]],[[194593,194593],"mapped",[21062]],[[194594,194594],"mapped",[21106]],[[194595,194595],"mapped",[21111]],[[194596,194596],"mapped",[13589]],[[194597,194597],"mapped",[21191]],[[194598,194598],"mapped",[21193]],[[194599,194599],"mapped",[21220]],[[194600,194600],"mapped",[21242]],[[194601,194601],"mapped",[21253]],[[194602,194602],"mapped",[21254]],[[194603,194603],"mapped",[21271]],[[194604,194604],"mapped",[21321]],[[194605,194605],"mapped",[21329]],[[194606,194606],"mapped",[21338]],[[194607,194607],"mapped",[21363]],[[194608,194608],"mapped",[21373]],[[194609,194611],"mapped",[21375]],[[194612,194612],"mapped",[133676]],[[194613,194613],"mapped",[28784]],[[194614,194614],"mapped",[21450]],[[194615,194615],"mapped",[21471]],[[194616,194616],"mapped",[133987]],[[194617,194617],"mapped",[21483]],[[194618,194618],"mapped",[21489]],[[194619,194619],"mapped",[21510]],[[194620,194620],"mapped",[21662]],[[194621,194621],"mapped",[21560]],[[194622,194622],"mapped",[21576]],[[194623,194623],"mapped",[21608]],[[194624,194624],"mapped",[21666]],[[194625,194625],"mapped",[21750]],[[194626,194626],"mapped",[21776]],[[194627,194627],"mapped",[21843]],[[194628,194628],"mapped",[21859]],[[194629,194630],"mapped",[21892]],[[194631,194631],"mapped",[21913]],[[194632,194632],"mapped",[21931]],[[194633,194633],"mapped",[21939]],[[194634,194634],"mapped",[21954]],[[194635,194635],"mapped",[22294]],[[194636,194636],"mapped",[22022]],[[194637,194637],"mapped",[22295]],[[194638,194638],"mapped",[22097]],[[194639,194639],"mapped",[22132]],[[194640,194640],"mapped",[20999]],[[194641,194641],"mapped",[22766]],[[194642,194642],"mapped",[22478]],[[194643,194643],"mapped",[22516]],[[194644,194644],"mapped",[22541]],[[194645,194645],"mapped",[22411]],[[194646,194646],"mapped",[22578]],[[194647,194647],"mapped",[22577]],[[194648,194648],"mapped",[22700]],[[194649,194649],"mapped",[136420]],[[194650,194650],"mapped",[22770]],[[194651,194651],"mapped",[22775]],[[194652,194652],"mapped",[22790]],[[194653,194653],"mapped",[22810]],[[194654,194654],"mapped",[22818]],[[194655,194655],"mapped",[22882]],[[194656,194656],"mapped",[136872]],[[194657,194657],"mapped",[136938]],[[194658,194658],"mapped",[23020]],[[194659,194659],"mapped",[23067]],[[194660,194660],"mapped",[23079]],[[194661,194661],"mapped",[23000]],[[194662,194662],"mapped",[23142]],[[194663,194663],"mapped",[14062]],[[194664,194664],"disallowed"],[[194665,194665],"mapped",[23304]],[[194666,194667],"mapped",[23358]],[[194668,194668],"mapped",[137672]],[[194669,194669],"mapped",[23491]],[[194670,194670],"mapped",[23512]],[[194671,194671],"mapped",[23527]],[[194672,194672],"mapped",[23539]],[[194673,194673],"mapped",[138008]],[[194674,194674],"mapped",[23551]],[[194675,194675],"mapped",[23558]],[[194676,194676],"disallowed"],[[194677,194677],"mapped",[23586]],[[194678,194678],"mapped",[14209]],[[194679,194679],"mapped",[23648]],[[194680,194680],"mapped",[23662]],[[194681,194681],"mapped",[23744]],[[194682,194682],"mapped",[23693]],[[194683,194683],"mapped",[138724]],[[194684,194684],"mapped",[23875]],[[194685,194685],"mapped",[138726]],[[194686,194686],"mapped",[23918]],[[194687,194687],"mapped",[23915]],[[194688,194688],"mapped",[23932]],[[194689,194689],"mapped",[24033]],[[194690,194690],"mapped",[24034]],[[194691,194691],"mapped",[14383]],[[194692,194692],"mapped",[24061]],[[194693,194693],"mapped",[24104]],[[194694,194694],"mapped",[24125]],[[194695,194695],"mapped",[24169]],[[194696,194696],"mapped",[14434]],[[194697,194697],"mapped",[139651]],[[194698,194698],"mapped",[14460]],[[194699,194699],"mapped",[24240]],[[194700,194700],"mapped",[24243]],[[194701,194701],"mapped",[24246]],[[194702,194702],"mapped",[24266]],[[194703,194703],"mapped",[172946]],[[194704,194704],"mapped",[24318]],[[194705,194706],"mapped",[140081]],[[194707,194707],"mapped",[33281]],[[194708,194709],"mapped",[24354]],[[194710,194710],"mapped",[14535]],[[194711,194711],"mapped",[144056]],[[194712,194712],"mapped",[156122]],[[194713,194713],"mapped",[24418]],[[194714,194714],"mapped",[24427]],[[194715,194715],"mapped",[14563]],[[194716,194716],"mapped",[24474]],[[194717,194717],"mapped",[24525]],[[194718,194718],"mapped",[24535]],[[194719,194719],"mapped",[24569]],[[194720,194720],"mapped",[24705]],[[194721,194721],"mapped",[14650]],[[194722,194722],"mapped",[14620]],[[194723,194723],"mapped",[24724]],[[194724,194724],"mapped",[141012]],[[194725,194725],"mapped",[24775]],[[194726,194726],"mapped",[24904]],[[194727,194727],"mapped",[24908]],[[194728,194728],"mapped",[24910]],[[194729,194729],"mapped",[24908]],[[194730,194730],"mapped",[24954]],[[194731,194731],"mapped",[24974]],[[194732,194732],"mapped",[25010]],[[194733,194733],"mapped",[24996]],[[194734,194734],"mapped",[25007]],[[194735,194735],"mapped",[25054]],[[194736,194736],"mapped",[25074]],[[194737,194737],"mapped",[25078]],[[194738,194738],"mapped",[25104]],[[194739,194739],"mapped",[25115]],[[194740,194740],"mapped",[25181]],[[194741,194741],"mapped",[25265]],[[194742,194742],"mapped",[25300]],[[194743,194743],"mapped",[25424]],[[194744,194744],"mapped",[142092]],[[194745,194745],"mapped",[25405]],[[194746,194746],"mapped",[25340]],[[194747,194747],"mapped",[25448]],[[194748,194748],"mapped",[25475]],[[194749,194749],"mapped",[25572]],[[194750,194750],"mapped",[142321]],[[194751,194751],"mapped",[25634]],[[194752,194752],"mapped",[25541]],[[194753,194753],"mapped",[25513]],[[194754,194754],"mapped",[14894]],[[194755,194755],"mapped",[25705]],[[194756,194756],"mapped",[25726]],[[194757,194757],"mapped",[25757]],[[194758,194758],"mapped",[25719]],[[194759,194759],"mapped",[14956]],[[194760,194760],"mapped",[25935]],[[194761,194761],"mapped",[25964]],[[194762,194762],"mapped",[143370]],[[194763,194763],"mapped",[26083]],[[194764,194764],"mapped",[26360]],[[194765,194765],"mapped",[26185]],[[194766,194766],"mapped",[15129]],[[194767,194767],"mapped",[26257]],[[194768,194768],"mapped",[15112]],[[194769,194769],"mapped",[15076]],[[194770,194770],"mapped",[20882]],[[194771,194771],"mapped",[20885]],[[194772,194772],"mapped",[26368]],[[194773,194773],"mapped",[26268]],[[194774,194774],"mapped",[32941]],[[194775,194775],"mapped",[17369]],[[194776,194776],"mapped",[26391]],[[194777,194777],"mapped",[26395]],[[194778,194778],"mapped",[26401]],[[194779,194779],"mapped",[26462]],[[194780,194780],"mapped",[26451]],[[194781,194781],"mapped",[144323]],[[194782,194782],"mapped",[15177]],[[194783,194783],"mapped",[26618]],[[194784,194784],"mapped",[26501]],[[194785,194785],"mapped",[26706]],[[194786,194786],"mapped",[26757]],[[194787,194787],"mapped",[144493]],[[194788,194788],"mapped",[26766]],[[194789,194789],"mapped",[26655]],[[194790,194790],"mapped",[26900]],[[194791,194791],"mapped",[15261]],[[194792,194792],"mapped",[26946]],[[194793,194793],"mapped",[27043]],[[194794,194794],"mapped",[27114]],[[194795,194795],"mapped",[27304]],[[194796,194796],"mapped",[145059]],[[194797,194797],"mapped",[27355]],[[194798,194798],"mapped",[15384]],[[194799,194799],"mapped",[27425]],[[194800,194800],"mapped",[145575]],[[194801,194801],"mapped",[27476]],[[194802,194802],"mapped",[15438]],[[194803,194803],"mapped",[27506]],[[194804,194804],"mapped",[27551]],[[194805,194805],"mapped",[27578]],[[194806,194806],"mapped",[27579]],[[194807,194807],"mapped",[146061]],[[194808,194808],"mapped",[138507]],[[194809,194809],"mapped",[146170]],[[194810,194810],"mapped",[27726]],[[194811,194811],"mapped",[146620]],[[194812,194812],"mapped",[27839]],[[194813,194813],"mapped",[27853]],[[194814,194814],"mapped",[27751]],[[194815,194815],"mapped",[27926]],[[194816,194816],"mapped",[27966]],[[194817,194817],"mapped",[28023]],[[194818,194818],"mapped",[27969]],[[194819,194819],"mapped",[28009]],[[194820,194820],"mapped",[28024]],[[194821,194821],"mapped",[28037]],[[194822,194822],"mapped",[146718]],[[194823,194823],"mapped",[27956]],[[194824,194824],"mapped",[28207]],[[194825,194825],"mapped",[28270]],[[194826,194826],"mapped",[15667]],[[194827,194827],"mapped",[28363]],[[194828,194828],"mapped",[28359]],[[194829,194829],"mapped",[147153]],[[194830,194830],"mapped",[28153]],[[194831,194831],"mapped",[28526]],[[194832,194832],"mapped",[147294]],[[194833,194833],"mapped",[147342]],[[194834,194834],"mapped",[28614]],[[194835,194835],"mapped",[28729]],[[194836,194836],"mapped",[28702]],[[194837,194837],"mapped",[28699]],[[194838,194838],"mapped",[15766]],[[194839,194839],"mapped",[28746]],[[194840,194840],"mapped",[28797]],[[194841,194841],"mapped",[28791]],[[194842,194842],"mapped",[28845]],[[194843,194843],"mapped",[132389]],[[194844,194844],"mapped",[28997]],[[194845,194845],"mapped",[148067]],[[194846,194846],"mapped",[29084]],[[194847,194847],"disallowed"],[[194848,194848],"mapped",[29224]],[[194849,194849],"mapped",[29237]],[[194850,194850],"mapped",[29264]],[[194851,194851],"mapped",[149000]],[[194852,194852],"mapped",[29312]],[[194853,194853],"mapped",[29333]],[[194854,194854],"mapped",[149301]],[[194855,194855],"mapped",[149524]],[[194856,194856],"mapped",[29562]],[[194857,194857],"mapped",[29579]],[[194858,194858],"mapped",[16044]],[[194859,194859],"mapped",[29605]],[[194860,194861],"mapped",[16056]],[[194862,194862],"mapped",[29767]],[[194863,194863],"mapped",[29788]],[[194864,194864],"mapped",[29809]],[[194865,194865],"mapped",[29829]],[[194866,194866],"mapped",[29898]],[[194867,194867],"mapped",[16155]],[[194868,194868],"mapped",[29988]],[[194869,194869],"mapped",[150582]],[[194870,194870],"mapped",[30014]],[[194871,194871],"mapped",[150674]],[[194872,194872],"mapped",[30064]],[[194873,194873],"mapped",[139679]],[[194874,194874],"mapped",[30224]],[[194875,194875],"mapped",[151457]],[[194876,194876],"mapped",[151480]],[[194877,194877],"mapped",[151620]],[[194878,194878],"mapped",[16380]],[[194879,194879],"mapped",[16392]],[[194880,194880],"mapped",[30452]],[[194881,194881],"mapped",[151795]],[[194882,194882],"mapped",[151794]],[[194883,194883],"mapped",[151833]],[[194884,194884],"mapped",[151859]],[[194885,194885],"mapped",[30494]],[[194886,194887],"mapped",[30495]],[[194888,194888],"mapped",[30538]],[[194889,194889],"mapped",[16441]],[[194890,194890],"mapped",[30603]],[[194891,194891],"mapped",[16454]],[[194892,194892],"mapped",[16534]],[[194893,194893],"mapped",[152605]],[[194894,194894],"mapped",[30798]],[[194895,194895],"mapped",[30860]],[[194896,194896],"mapped",[30924]],[[194897,194897],"mapped",[16611]],[[194898,194898],"mapped",[153126]],[[194899,194899],"mapped",[31062]],[[194900,194900],"mapped",[153242]],[[194901,194901],"mapped",[153285]],[[194902,194902],"mapped",[31119]],[[194903,194903],"mapped",[31211]],[[194904,194904],"mapped",[16687]],[[194905,194905],"mapped",[31296]],[[194906,194906],"mapped",[31306]],[[194907,194907],"mapped",[31311]],[[194908,194908],"mapped",[153980]],[[194909,194910],"mapped",[154279]],[[194911,194911],"disallowed"],[[194912,194912],"mapped",[16898]],[[194913,194913],"mapped",[154539]],[[194914,194914],"mapped",[31686]],[[194915,194915],"mapped",[31689]],[[194916,194916],"mapped",[16935]],[[194917,194917],"mapped",[154752]],[[194918,194918],"mapped",[31954]],[[194919,194919],"mapped",[17056]],[[194920,194920],"mapped",[31976]],[[194921,194921],"mapped",[31971]],[[194922,194922],"mapped",[32000]],[[194923,194923],"mapped",[155526]],[[194924,194924],"mapped",[32099]],[[194925,194925],"mapped",[17153]],[[194926,194926],"mapped",[32199]],[[194927,194927],"mapped",[32258]],[[194928,194928],"mapped",[32325]],[[194929,194929],"mapped",[17204]],[[194930,194930],"mapped",[156200]],[[194931,194931],"mapped",[156231]],[[194932,194932],"mapped",[17241]],[[194933,194933],"mapped",[156377]],[[194934,194934],"mapped",[32634]],[[194935,194935],"mapped",[156478]],[[194936,194936],"mapped",[32661]],[[194937,194937],"mapped",[32762]],[[194938,194938],"mapped",[32773]],[[194939,194939],"mapped",[156890]],[[194940,194940],"mapped",[156963]],[[194941,194941],"mapped",[32864]],[[194942,194942],"mapped",[157096]],[[194943,194943],"mapped",[32880]],[[194944,194944],"mapped",[144223]],[[194945,194945],"mapped",[17365]],[[194946,194946],"mapped",[32946]],[[194947,194947],"mapped",[33027]],[[194948,194948],"mapped",[17419]],[[194949,194949],"mapped",[33086]],[[194950,194950],"mapped",[23221]],[[194951,194951],"mapped",[157607]],[[194952,194952],"mapped",[157621]],[[194953,194953],"mapped",[144275]],[[194954,194954],"mapped",[144284]],[[194955,194955],"mapped",[33281]],[[194956,194956],"mapped",[33284]],[[194957,194957],"mapped",[36766]],[[194958,194958],"mapped",[17515]],[[194959,194959],"mapped",[33425]],[[194960,194960],"mapped",[33419]],[[194961,194961],"mapped",[33437]],[[194962,194962],"mapped",[21171]],[[194963,194963],"mapped",[33457]],[[194964,194964],"mapped",[33459]],[[194965,194965],"mapped",[33469]],[[194966,194966],"mapped",[33510]],[[194967,194967],"mapped",[158524]],[[194968,194968],"mapped",[33509]],[[194969,194969],"mapped",[33565]],[[194970,194970],"mapped",[33635]],[[194971,194971],"mapped",[33709]],[[194972,194972],"mapped",[33571]],[[194973,194973],"mapped",[33725]],[[194974,194974],"mapped",[33767]],[[194975,194975],"mapped",[33879]],[[194976,194976],"mapped",[33619]],[[194977,194977],"mapped",[33738]],[[194978,194978],"mapped",[33740]],[[194979,194979],"mapped",[33756]],[[194980,194980],"mapped",[158774]],[[194981,194981],"mapped",[159083]],[[194982,194982],"mapped",[158933]],[[194983,194983],"mapped",[17707]],[[194984,194984],"mapped",[34033]],[[194985,194985],"mapped",[34035]],[[194986,194986],"mapped",[34070]],[[194987,194987],"mapped",[160714]],[[194988,194988],"mapped",[34148]],[[194989,194989],"mapped",[159532]],[[194990,194990],"mapped",[17757]],[[194991,194991],"mapped",[17761]],[[194992,194992],"mapped",[159665]],[[194993,194993],"mapped",[159954]],[[194994,194994],"mapped",[17771]],[[194995,194995],"mapped",[34384]],[[194996,194996],"mapped",[34396]],[[194997,194997],"mapped",[34407]],[[194998,194998],"mapped",[34409]],[[194999,194999],"mapped",[34473]],[[195000,195000],"mapped",[34440]],[[195001,195001],"mapped",[34574]],[[195002,195002],"mapped",[34530]],[[195003,195003],"mapped",[34681]],[[195004,195004],"mapped",[34600]],[[195005,195005],"mapped",[34667]],[[195006,195006],"mapped",[34694]],[[195007,195007],"disallowed"],[[195008,195008],"mapped",[34785]],[[195009,195009],"mapped",[34817]],[[195010,195010],"mapped",[17913]],[[195011,195011],"mapped",[34912]],[[195012,195012],"mapped",[34915]],[[195013,195013],"mapped",[161383]],[[195014,195014],"mapped",[35031]],[[195015,195015],"mapped",[35038]],[[195016,195016],"mapped",[17973]],[[195017,195017],"mapped",[35066]],[[195018,195018],"mapped",[13499]],[[195019,195019],"mapped",[161966]],[[195020,195020],"mapped",[162150]],[[195021,195021],"mapped",[18110]],[[195022,195022],"mapped",[18119]],[[195023,195023],"mapped",[35488]],[[195024,195024],"mapped",[35565]],[[195025,195025],"mapped",[35722]],[[195026,195026],"mapped",[35925]],[[195027,195027],"mapped",[162984]],[[195028,195028],"mapped",[36011]],[[195029,195029],"mapped",[36033]],[[195030,195030],"mapped",[36123]],[[195031,195031],"mapped",[36215]],[[195032,195032],"mapped",[163631]],[[195033,195033],"mapped",[133124]],[[195034,195034],"mapped",[36299]],[[195035,195035],"mapped",[36284]],[[195036,195036],"mapped",[36336]],[[195037,195037],"mapped",[133342]],[[195038,195038],"mapped",[36564]],[[195039,195039],"mapped",[36664]],[[195040,195040],"mapped",[165330]],[[195041,195041],"mapped",[165357]],[[195042,195042],"mapped",[37012]],[[195043,195043],"mapped",[37105]],[[195044,195044],"mapped",[37137]],[[195045,195045],"mapped",[165678]],[[195046,195046],"mapped",[37147]],[[195047,195047],"mapped",[37432]],[[195048,195048],"mapped",[37591]],[[195049,195049],"mapped",[37592]],[[195050,195050],"mapped",[37500]],[[195051,195051],"mapped",[37881]],[[195052,195052],"mapped",[37909]],[[195053,195053],"mapped",[166906]],[[195054,195054],"mapped",[38283]],[[195055,195055],"mapped",[18837]],[[195056,195056],"mapped",[38327]],[[195057,195057],"mapped",[167287]],[[195058,195058],"mapped",[18918]],[[195059,195059],"mapped",[38595]],[[195060,195060],"mapped",[23986]],[[195061,195061],"mapped",[38691]],[[195062,195062],"mapped",[168261]],[[195063,195063],"mapped",[168474]],[[195064,195064],"mapped",[19054]],[[195065,195065],"mapped",[19062]],[[195066,195066],"mapped",[38880]],[[195067,195067],"mapped",[168970]],[[195068,195068],"mapped",[19122]],[[195069,195069],"mapped",[169110]],[[195070,195071],"mapped",[38923]],[[195072,195072],"mapped",[38953]],[[195073,195073],"mapped",[169398]],[[195074,195074],"mapped",[39138]],[[195075,195075],"mapped",[19251]],[[195076,195076],"mapped",[39209]],[[195077,195077],"mapped",[39335]],[[195078,195078],"mapped",[39362]],[[195079,195079],"mapped",[39422]],[[195080,195080],"mapped",[19406]],[[195081,195081],"mapped",[170800]],[[195082,195082],"mapped",[39698]],[[195083,195083],"mapped",[40000]],[[195084,195084],"mapped",[40189]],[[195085,195085],"mapped",[19662]],[[195086,195086],"mapped",[19693]],[[195087,195087],"mapped",[40295]],[[195088,195088],"mapped",[172238]],[[195089,195089],"mapped",[19704]],[[195090,195090],"mapped",[172293]],[[195091,195091],"mapped",[172558]],[[195092,195092],"mapped",[172689]],[[195093,195093],"mapped",[40635]],[[195094,195094],"mapped",[19798]],[[195095,195095],"mapped",[40697]],[[195096,195096],"mapped",[40702]],[[195097,195097],"mapped",[40709]],[[195098,195098],"mapped",[40719]],[[195099,195099],"mapped",[40726]],[[195100,195100],"mapped",[40763]],[[195101,195101],"mapped",[173568]],[[195102,196605],"disallowed"],[[196606,196607],"disallowed"],[[196608,262141],"disallowed"],[[262142,262143],"disallowed"],[[262144,327677],"disallowed"],[[327678,327679],"disallowed"],[[327680,393213],"disallowed"],[[393214,393215],"disallowed"],[[393216,458749],"disallowed"],[[458750,458751],"disallowed"],[[458752,524285],"disallowed"],[[524286,524287],"disallowed"],[[524288,589821],"disallowed"],[[589822,589823],"disallowed"],[[589824,655357],"disallowed"],[[655358,655359],"disallowed"],[[655360,720893],"disallowed"],[[720894,720895],"disallowed"],[[720896,786429],"disallowed"],[[786430,786431],"disallowed"],[[786432,851965],"disallowed"],[[851966,851967],"disallowed"],[[851968,917501],"disallowed"],[[917502,917503],"disallowed"],[[917504,917504],"disallowed"],[[917505,917505],"disallowed"],[[917506,917535],"disallowed"],[[917536,917631],"disallowed"],[[917632,917759],"disallowed"],[[917760,917999],"ignored"],[[918000,983037],"disallowed"],[[983038,983039],"disallowed"],[[983040,1048573],"disallowed"],[[1048574,1048575],"disallowed"],[[1048576,1114109],"disallowed"],[[1114110,1114111],"disallowed"]]')},13680:Wt=>{"use strict";Wt.exports=JSON.parse('["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","transparent","currentcolor"]')},80056:Wt=>{"use strict";Wt.exports=JSON.parse('{"name":"dotenv","version":"16.4.5","description":"Loads environment variables from .env file","main":"lib/main.js","types":"lib/main.d.ts","exports":{".":{"types":"./lib/main.d.ts","require":"./lib/main.js","default":"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},"scripts":{"dts-check":"tsc --project tests/types/tsconfig.json","lint":"standard","lint-readme":"standard-markdown","pretest":"npm run lint && npm run dts-check","test":"tap tests/*.js --100 -Rspec","test:coverage":"tap --coverage-report=lcov","prerelease":"npm test","release":"standard-version"},"repository":{"type":"git","url":"git://github.com/motdotla/dotenv.git"},"funding":"https://dotenvx.com","keywords":["dotenv","env",".env","environment","variables","config","settings"],"readmeFilename":"README.md","license":"BSD-2-Clause","devDependencies":{"@definitelytyped/dtslint":"^0.0.133","@types/node":"^18.11.3","decache":"^4.6.1","sinon":"^14.0.1","standard":"^17.0.0","standard-markdown":"^7.1.0","standard-version":"^9.5.0","tap":"^16.3.0","tar":"^6.1.11","typescript":"^4.8.4"},"engines":{"node":">=12"},"browser":{"fs":false}}')},1636:Wt=>{"use strict";Wt.exports={rE:"6.5.4"}},43267:Wt=>{"use strict";Wt.exports=JSON.parse('[["8740","䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅㮕䜶䝄䱇䱀𤊿𣘗𧍒𦺋𧃒䱗𪍑䝏䗚䲅𧱬䴇䪤䚡𦬣爥𥩔𡩣𣸆𣽡晍囻"],["8767","綕夝𨮹㷴霴𧯯寛𡵞媤㘥𩺰嫑宷峼杮薓𩥅瑡璝㡵𡵓𣚞𦀡㻬"],["87a1","𥣞㫵竼龗𤅡𨤍𣇪𠪊𣉞䌊蒄龖鐯䤰蘓墖靊鈘秐稲晠権袝瑌篅枂稬剏遆㓦珄𥶹瓆鿇垳䤯呌䄱𣚎堘穲𧭥讏䚮𦺈䆁𥶙箮𢒼鿈𢓁𢓉𢓌鿉蔄𣖻䂴鿊䓡𪷿拁灮鿋"],["8840","㇀",4,"𠄌㇅𠃑𠃍㇆㇇𠃋𡿨㇈𠃊㇉㇊㇋㇌𠄎㇍㇎ĀÁǍÀĒÉĚÈŌÓǑÒ࿿Ê̄Ế࿿Ê̌ỀÊāáǎàɑēéěèīíǐìōóǒòūúǔùǖǘǚ"],["88a1","ǜü࿿ê̄ế࿿ê̌ềêɡ⏚⏛"],["8940","𪎩𡅅"],["8943","攊"],["8946","丽滝鵎釟"],["894c","𧜵撑会伨侨兖兴农凤务动医华发变团声处备夲头学实実岚庆总斉柾栄桥济炼电纤纬纺织经统缆缷艺苏药视设询车轧轮"],["89a1","琑糼緍楆竉刧"],["89ab","醌碸酞肼"],["89b0","贋胶𠧧"],["89b5","肟黇䳍鷉鸌䰾𩷶𧀎鸊𪄳㗁"],["89c1","溚舾甙"],["89c5","䤑马骏龙禇𨑬𡷊𠗐𢫦两亁亀亇亿仫伷㑌侽㹈倃傈㑽㒓㒥円夅凛凼刅争剹劐匧㗇厩㕑厰㕓参吣㕭㕲㚁咓咣咴咹哐哯唘唣唨㖘唿㖥㖿嗗㗅"],["8a40","𧶄唥"],["8a43","𠱂𠴕𥄫喐𢳆㧬𠍁蹆𤶸𩓥䁓𨂾睺𢰸㨴䟕𨅝𦧲𤷪擝𠵼𠾴𠳕𡃴撍蹾𠺖𠰋𠽤𢲩𨉖𤓓"],["8a64","𠵆𩩍𨃩䟴𤺧𢳂骲㩧𩗴㿭㔆𥋇𩟔𧣈𢵄鵮頕"],["8a76","䏙𦂥撴哣𢵌𢯊𡁷㧻𡁯"],["8aa1","𦛚𦜖𧦠擪𥁒𠱃蹨𢆡𨭌𠜱"],["8aac","䠋𠆩㿺塳𢶍"],["8ab2","𤗈𠓼𦂗𠽌𠶖啹䂻䎺"],["8abb","䪴𢩦𡂝膪飵𠶜捹㧾𢝵跀嚡摼㹃"],["8ac9","𪘁𠸉𢫏𢳉"],["8ace","𡃈𣧂㦒㨆𨊛㕸𥹉𢃇噒𠼱𢲲𩜠㒼氽𤸻"],["8adf","𧕴𢺋𢈈𪙛𨳍𠹺𠰴𦠜羓𡃏𢠃𢤹㗻𥇣𠺌𠾍𠺪㾓𠼰𠵇𡅏𠹌"],["8af6","𠺫𠮩𠵈𡃀𡄽㿹𢚖搲𠾭"],["8b40","𣏴𧘹𢯎𠵾𠵿𢱑𢱕㨘𠺘𡃇𠼮𪘲𦭐𨳒𨶙𨳊閪哌苄喹"],["8b55","𩻃鰦骶𧝞𢷮煀腭胬尜𦕲脴㞗卟𨂽醶𠻺𠸏𠹷𠻻㗝𤷫㘉𠳖嚯𢞵𡃉𠸐𠹸𡁸𡅈𨈇𡑕𠹹𤹐𢶤婔𡀝𡀞𡃵𡃶垜𠸑"],["8ba1","𧚔𨋍𠾵𠹻𥅾㜃𠾶𡆀𥋘𪊽𤧚𡠺𤅷𨉼墙剨㘚𥜽箲孨䠀䬬鼧䧧鰟鮍𥭴𣄽嗻㗲嚉丨夂𡯁屮靑𠂆乛亻㔾尣彑忄㣺扌攵歺氵氺灬爫丬犭𤣩罒礻糹罓𦉪㓁"],["8bde","𦍋耂肀𦘒𦥑卝衤见𧢲讠贝钅镸长门𨸏韦页风飞饣𩠐鱼鸟黄歯龜丷𠂇阝户钢"],["8c40","倻淾𩱳龦㷉袏𤅎灷峵䬠𥇍㕙𥴰愢𨨲辧釶熑朙玺𣊁𪄇㲋𡦀䬐磤琂冮𨜏䀉橣𪊺䈣蘏𠩯稪𩥇𨫪靕灍匤𢁾鏴盙𨧣龧矝亣俰傼丯众龨吴綋墒壐𡶶庒庙忂𢜒斋"],["8ca1","𣏹椙橃𣱣泿"],["8ca7","爀𤔅玌㻛𤨓嬕璹讃𥲤𥚕窓篬糃繬苸薗龩袐龪躹龫迏蕟駠鈡龬𨶹𡐿䁱䊢娚"],["8cc9","顨杫䉶圽"],["8cce","藖𤥻芿𧄍䲁𦵴嵻𦬕𦾾龭龮宖龯曧繛湗秊㶈䓃𣉖𢞖䎚䔶"],["8ce6","峕𣬚諹屸㴒𣕑嵸龲煗䕘𤃬𡸣䱷㥸㑊𠆤𦱁諌侴𠈹妿腬顖𩣺弻"],["8d40","𠮟"],["8d42","𢇁𨥭䄂䚻𩁹㼇龳𪆵䃸㟖䛷𦱆䅼𨚲𧏿䕭㣔𥒚䕡䔛䶉䱻䵶䗪㿈𤬏㙡䓞䒽䇭崾嵈嵖㷼㠏嶤嶹㠠㠸幂庽弥徃㤈㤔㤿㥍惗愽峥㦉憷憹懏㦸戬抐拥挘㧸嚱"],["8da1","㨃揢揻搇摚㩋擀崕嘡龟㪗斆㪽旿晓㫲暒㬢朖㭂枤栀㭘桊梄㭲㭱㭻椉楃牜楤榟榅㮼槖㯝橥橴橱檂㯬檙㯲檫檵櫔櫶殁毁毪汵沪㳋洂洆洦涁㳯涤涱渕渘温溆𨧀溻滢滚齿滨滩漤漴㵆𣽁澁澾㵪㵵熷岙㶊瀬㶑灐灔灯灿炉𠌥䏁㗱𠻘"],["8e40","𣻗垾𦻓焾𥟠㙎榢𨯩孴穉𥣡𩓙穥穽𥦬窻窰竂竃燑𦒍䇊竚竝竪䇯咲𥰁笋筕笩𥌎𥳾箢筯莜𥮴𦱿篐萡箒箸𥴠㶭𥱥蒒篺簆簵𥳁籄粃𤢂粦晽𤕸糉糇糦籴糳糵糎"],["8ea1","繧䔝𦹄絝𦻖璍綉綫焵綳緒𤁗𦀩緤㴓緵𡟹緥𨍭縝𦄡𦅚繮纒䌫鑬縧罀罁罇礶𦋐駡羗𦍑羣𡙡𠁨䕜𣝦䔃𨌺翺𦒉者耈耝耨耯𪂇𦳃耻耼聡𢜔䦉𦘦𣷣𦛨朥肧𨩈脇脚墰𢛶汿𦒘𤾸擧𡒊舘𡡞橓𤩥𤪕䑺舩𠬍𦩒𣵾俹𡓽蓢荢𦬊𤦧𣔰𡝳𣷸芪椛芳䇛"],["8f40","蕋苐茚𠸖𡞴㛁𣅽𣕚艻苢茘𣺋𦶣𦬅𦮗𣗎㶿茝嗬莅䔋𦶥莬菁菓㑾𦻔橗蕚㒖𦹂𢻯葘𥯤葱㷓䓤檧葊𣲵祘蒨𦮖𦹷𦹃蓞萏莑䒠蒓蓤𥲑䉀𥳀䕃蔴嫲𦺙䔧蕳䔖枿蘖"],["8fa1","𨘥𨘻藁𧂈蘂𡖂𧃍䕫䕪蘨㙈𡢢号𧎚虾蝱𪃸蟮𢰧螱蟚蠏噡虬桖䘏衅衆𧗠𣶹𧗤衞袜䙛袴袵揁装睷𧜏覇覊覦覩覧覼𨨥觧𧤤𧪽誜瞓釾誐𧩙竩𧬺𣾏䜓𧬸煼謌謟𥐰𥕥謿譌譍誩𤩺讐讛誯𡛟䘕衏貛𧵔𧶏貫㜥𧵓賖𧶘𧶽贒贃𡤐賛灜贑𤳉㻐起"],["9040","趩𨀂𡀔𤦊㭼𨆼𧄌竧躭躶軃鋔輙輭𨍥𨐒辥錃𪊟𠩐辳䤪𨧞𨔽𣶻廸𣉢迹𪀔𨚼𨔁𢌥㦀𦻗逷𨔼𧪾遡𨕬𨘋邨𨜓郄𨛦邮都酧㫰醩釄粬𨤳𡺉鈎沟鉁鉢𥖹銹𨫆𣲛𨬌𥗛"],["90a1","𠴱錬鍫𨫡𨯫炏嫃𨫢𨫥䥥鉄𨯬𨰹𨯿鍳鑛躼閅閦鐦閠濶䊹𢙺𨛘𡉼𣸮䧟氜陻隖䅬隣𦻕懚隶磵𨫠隽双䦡𦲸𠉴𦐐𩂯𩃥𤫑𡤕𣌊霱虂霶䨏䔽䖅𤫩灵孁霛靜𩇕靗孊𩇫靟鐥僐𣂷𣂼鞉鞟鞱鞾韀韒韠𥑬韮琜𩐳響韵𩐝𧥺䫑頴頳顋顦㬎𧅵㵑𠘰𤅜"],["9140","𥜆飊颷飈飇䫿𦴧𡛓喰飡飦飬鍸餹𤨩䭲𩡗𩤅駵騌騻騐驘𥜥㛄𩂱𩯕髠髢𩬅髴䰎鬔鬭𨘀倴鬴𦦨㣃𣁽魐魀𩴾婅𡡣鮎𤉋鰂鯿鰌𩹨鷔𩾷𪆒𪆫𪃡𪄣𪇟鵾鶃𪄴鸎梈"],["91a1","鷄𢅛𪆓𪈠𡤻𪈳鴹𪂹𪊴麐麕麞麢䴴麪麯𤍤黁㭠㧥㴝伲㞾𨰫鼂鼈䮖鐤𦶢鼗鼖鼹嚟嚊齅馸𩂋韲葿齢齩竜龎爖䮾𤥵𤦻煷𤧸𤍈𤩑玞𨯚𡣺禟𨥾𨸶鍩鏳𨩄鋬鎁鏋𨥬𤒹爗㻫睲穃烐𤑳𤏸煾𡟯炣𡢾𣖙㻇𡢅𥐯𡟸㜢𡛻𡠹㛡𡝴𡣑𥽋㜣𡛀坛𤨥𡏾𡊨"],["9240","𡏆𡒶蔃𣚦蔃葕𤦔𧅥𣸱𥕜𣻻𧁒䓴𣛮𩦝𦼦柹㜳㰕㷧塬𡤢栐䁗𣜿𤃡𤂋𤄏𦰡哋嚞𦚱嚒𠿟𠮨𠸍鏆𨬓鎜仸儫㠙𤐶亼𠑥𠍿佋侊𥙑婨𠆫𠏋㦙𠌊𠐔㐵伩𠋀𨺳𠉵諚𠈌亘"],["92a1","働儍侢伃𤨎𣺊佂倮偬傁俌俥偘僼兙兛兝兞湶𣖕𣸹𣺿浲𡢄𣺉冨凃𠗠䓝𠒣𠒒𠒑赺𨪜𠜎剙劤𠡳勡鍮䙺熌𤎌𠰠𤦬𡃤槑𠸝瑹㻞璙琔瑖玘䮎𤪼𤂍叐㖄爏𤃉喴𠍅响𠯆圝鉝雴鍦埝垍坿㘾壋媙𨩆𡛺𡝯𡜐娬妸銏婾嫏娒𥥆𡧳𡡡𤊕㛵洅瑃娡𥺃"],["9340","媁𨯗𠐓鏠璌𡌃焅䥲鐈𨧻鎽㞠尞岞幞幈𡦖𡥼𣫮廍孏𡤃𡤄㜁𡢠㛝𡛾㛓脪𨩇𡶺𣑲𨦨弌弎𡤧𡞫婫𡜻孄蘔𧗽衠恾𢡠𢘫忛㺸𢖯𢖾𩂈𦽳懀𠀾𠁆𢘛憙憘恵𢲛𢴇𤛔𩅍"],["93a1","摱𤙥𢭪㨩𢬢𣑐𩣪𢹸挷𪑛撶挱揑𤧣𢵧护𢲡搻敫楲㯴𣂎𣊭𤦉𣊫唍𣋠𡣙𩐿曎𣊉𣆳㫠䆐𥖄𨬢𥖏𡛼𥕛𥐥磮𣄃𡠪𣈴㑤𣈏𣆂𤋉暎𦴤晫䮓昰𧡰𡷫晣𣋒𣋡昞𥡲㣑𣠺𣞼㮙𣞢𣏾瓐㮖枏𤘪梶栞㯄檾㡣𣟕𤒇樳橒櫉欅𡤒攑梘橌㯗橺歗𣿀𣲚鎠鋲𨯪𨫋"],["9440","銉𨀞𨧜鑧涥漋𤧬浧𣽿㶏渄𤀼娽渊塇洤硂焻𤌚𤉶烱牐犇犔𤞏𤜥兹𤪤𠗫瑺𣻸𣙟𤩊𤤗𥿡㼆㺱𤫟𨰣𣼵悧㻳瓌琼鎇琷䒟𦷪䕑疃㽣𤳙𤴆㽘畕癳𪗆㬙瑨𨫌𤦫𤦎㫻"],["94a1","㷍𤩎㻿𤧅𤣳釺圲鍂𨫣𡡤僟𥈡𥇧睸𣈲眎眏睻𤚗𣞁㩞𤣰琸璛㺿𤪺𤫇䃈𤪖𦆮錇𥖁砞碍碈磒珐祙𧝁𥛣䄎禛蒖禥樭𣻺稺秴䅮𡛦䄲鈵秱𠵌𤦌𠊙𣶺𡝮㖗啫㕰㚪𠇔𠰍竢婙𢛵𥪯𥪜娍𠉛磰娪𥯆竾䇹籝籭䈑𥮳𥺼𥺦糍𤧹𡞰粎籼粮檲緜縇緓罎𦉡"],["9540","𦅜𧭈綗𥺂䉪𦭵𠤖柖𠁎𣗏埄𦐒𦏸𤥢翝笧𠠬𥫩𥵃笌𥸎駦虅驣樜𣐿㧢𤧷𦖭騟𦖠蒀𧄧𦳑䓪脷䐂胆脉腂𦞴飃𦩂艢艥𦩑葓𦶧蘐𧈛媆䅿𡡀嬫𡢡嫤𡣘蚠蜨𣶏蠭𧐢娂"],["95a1","衮佅袇袿裦襥襍𥚃襔𧞅𧞄𨯵𨯙𨮜𨧹㺭蒣䛵䛏㟲訽訜𩑈彍鈫𤊄旔焩烄𡡅鵭貟賩𧷜妚矃姰䍮㛔踪躧𤰉輰轊䋴汘澻𢌡䢛潹溋𡟚鯩㚵𤤯邻邗啱䤆醻鐄𨩋䁢𨫼鐧𨰝𨰻蓥訫閙閧閗閖𨴴瑅㻂𤣿𤩂𤏪㻧𣈥随𨻧𨹦𨹥㻌𤧭𤩸𣿮琒瑫㻼靁𩂰"],["9640","桇䨝𩂓𥟟靝鍨𨦉𨰦𨬯𦎾銺嬑譩䤼珹𤈛鞛靱餸𠼦巁𨯅𤪲頟𩓚鋶𩗗釥䓀𨭐𤩧𨭤飜𨩅㼀鈪䤥萔餻饍𧬆㷽馛䭯馪驜𨭥𥣈檏騡嫾騯𩣱䮐𩥈馼䮽䮗鍽塲𡌂堢𤦸"],["96a1","𡓨硄𢜟𣶸棅㵽鑘㤧慐𢞁𢥫愇鱏鱓鱻鰵鰐魿鯏𩸭鮟𪇵𪃾鴡䲮𤄄鸘䲰鴌𪆴𪃭𪃳𩤯鶥蒽𦸒𦿟𦮂藼䔳𦶤𦺄𦷰萠藮𦸀𣟗𦁤秢𣖜𣙀䤭𤧞㵢鏛銾鍈𠊿碹鉷鑍俤㑀遤𥕝砽硔碶硋𡝗𣇉𤥁㚚佲濚濙瀞瀞吔𤆵垻壳垊鴖埗焴㒯𤆬燫𦱀𤾗嬨𡞵𨩉"],["9740","愌嫎娋䊼𤒈㜬䭻𨧼鎻鎸𡣖𠼝葲𦳀𡐓𤋺𢰦𤏁妔𣶷𦝁綨𦅛𦂤𤦹𤦋𨧺鋥珢㻩璴𨭣𡢟㻡𤪳櫘珳珻㻖𤨾𤪔𡟙𤩦𠎧𡐤𤧥瑈𤤖炥𤥶銄珦鍟𠓾錱𨫎𨨖鎆𨯧𥗕䤵𨪂煫"],["97a1","𤥃𠳿嚤𠘚𠯫𠲸唂秄𡟺緾𡛂𤩐𡡒䔮鐁㜊𨫀𤦭妰𡢿𡢃𧒄媡㛢𣵛㚰鉟婹𨪁𡡢鍴㳍𠪴䪖㦊僴㵩㵌𡎜煵䋻𨈘渏𩃤䓫浗𧹏灧沯㳖𣿭𣸭渂漌㵯𠏵畑㚼㓈䚀㻚䡱姄鉮䤾轁𨰜𦯀堒埈㛖𡑒烾𤍢𤩱𢿣𡊰𢎽梹楧𡎘𣓥𧯴𣛟𨪃𣟖𣏺𤲟樚𣚭𦲷萾䓟䓎"],["9840","𦴦𦵑𦲂𦿞漗𧄉茽𡜺菭𦲀𧁓𡟛妉媂𡞳婡婱𡤅𤇼㜭姯𡜼㛇熎鎐暚𤊥婮娫𤊓樫𣻹𧜶𤑛𤋊焝𤉙𨧡侰𦴨峂𤓎𧹍𤎽樌𤉖𡌄炦焳𤏩㶥泟勇𤩏繥姫崯㷳彜𤩝𡟟綤萦"],["98a1","咅𣫺𣌀𠈔坾𠣕𠘙㿥𡾞𪊶瀃𩅛嵰玏糓𨩙𩐠俈翧狍猐𧫴猸猹𥛶獁獈㺩𧬘遬燵𤣲珡臶㻊県㻑沢国琙琞琟㻢㻰㻴㻺瓓㼎㽓畂畭畲疍㽼痈痜㿀癍㿗癴㿜発𤽜熈嘣覀塩䀝睃䀹条䁅㗛瞘䁪䁯属瞾矋売砘点砜䂨砹硇硑硦葈𥔵礳栃礲䄃"],["9940","䄉禑禙辻稆込䅧窑䆲窼艹䇄竏竛䇏両筢筬筻簒簛䉠䉺类粜䊌粸䊔糭输烀𠳏総緔緐緽羮羴犟䎗耠耥笹耮耱联㷌垴炠肷胩䏭脌猪脎脒畠脔䐁㬹腖腙腚"],["99a1","䐓堺腼膄䐥膓䐭膥埯臁臤艔䒏芦艶苊苘苿䒰荗险榊萅烵葤惣蒈䔄蒾蓡蓸蔐蔸蕒䔻蕯蕰藠䕷虲蚒蚲蛯际螋䘆䘗袮裿褤襇覑𧥧訩訸誔誴豑賔賲贜䞘塟跃䟭仮踺嗘坔蹱嗵躰䠷軎転軤軭軲辷迁迊迌逳駄䢭飠鈓䤞鈨鉘鉫銱銮銿"],["9a40","鋣鋫鋳鋴鋽鍃鎄鎭䥅䥑麿鐗匁鐝鐭鐾䥪鑔鑹锭関䦧间阳䧥枠䨤靀䨵鞲韂噔䫤惨颹䬙飱塄餎餙冴餜餷饂饝饢䭰駅䮝騼鬏窃魩鮁鯝鯱鯴䱭鰠㝯𡯂鵉鰺"],["9aa1","黾噐鶓鶽鷀鷼银辶鹻麬麱麽黆铜黢黱黸竈齄𠂔𠊷𠎠椚铃妬𠓗塀铁㞹𠗕𠘕𠙶𡚺块煳𠫂𠫍𠮿呪吆𠯋咞𠯻𠰻𠱓𠱥𠱼惧𠲍噺𠲵𠳝𠳭𠵯𠶲𠷈楕鰯螥𠸄𠸎𠻗𠾐𠼭𠹳尠𠾼帋𡁜𡁏𡁶朞𡁻𡂈𡂖㙇𡂿𡃓𡄯𡄻卤蒭𡋣𡍵𡌶讁𡕷𡘙𡟃𡟇乸炻𡠭𡥪"],["9b40","𡨭𡩅𡰪𡱰𡲬𡻈拃𡻕𡼕熘桕𢁅槩㛈𢉼𢏗𢏺𢜪𢡱𢥏苽𢥧𢦓𢫕覥𢫨辠𢬎鞸𢬿顇骽𢱌"],["9b62","𢲈𢲷𥯨𢴈𢴒𢶷𢶕𢹂𢽴𢿌𣀳𣁦𣌟𣏞徱晈暿𧩹𣕧𣗳爁𤦺矗𣘚𣜖纇𠍆墵朎"],["9ba1","椘𣪧𧙗𥿢𣸑𣺹𧗾𢂚䣐䪸𤄙𨪚𤋮𤌍𤀻𤌴𤎖𤩅𠗊凒𠘑妟𡺨㮾𣳿𤐄𤓖垈𤙴㦛𤜯𨗨𩧉㝢𢇃譞𨭎駖𤠒𤣻𤨕爉𤫀𠱸奥𤺥𤾆𠝹軚𥀬劏圿煱𥊙𥐙𣽊𤪧喼𥑆𥑮𦭒釔㑳𥔿𧘲𥕞䜘𥕢𥕦𥟇𤤿𥡝偦㓻𣏌惞𥤃䝼𨥈𥪮𥮉𥰆𡶐垡煑澶𦄂𧰒遖𦆲𤾚譢𦐂𦑊"],["9c40","嵛𦯷輶𦒄𡤜諪𤧶𦒈𣿯𦔒䯀𦖿𦚵𢜛鑥𥟡憕娧晉侻嚹𤔡𦛼乪𤤴陖涏𦲽㘘襷𦞙𦡮𦐑𦡞營𦣇筂𩃀𠨑𦤦鄄𦤹穅鷰𦧺騦𦨭㙟𦑩𠀡禃𦨴𦭛崬𣔙菏𦮝䛐𦲤画补𦶮墶"],["9ca1","㜜𢖍𧁋𧇍㱔𧊀𧊅銁𢅺𧊋錰𧋦𤧐氹钟𧑐𠻸蠧裵𢤦𨑳𡞱溸𤨪𡠠㦤㚹尐秣䔿暶𩲭𩢤襃𧟌𧡘囖䃟𡘊㦡𣜯𨃨𡏅熭荦𧧝𩆨婧䲷𧂯𨦫𧧽𧨊𧬋𧵦𤅺筃祾𨀉澵𪋟樃𨌘厢𦸇鎿栶靝𨅯𨀣𦦵𡏭𣈯𨁈嶅𨰰𨂃圕頣𨥉嶫𤦈斾槕叒𤪥𣾁㰑朶𨂐𨃴𨄮𡾡𨅏"],["9d40","𨆉𨆯𨈚𨌆𨌯𨎊㗊𨑨𨚪䣺揦𨥖砈鉕𨦸䏲𨧧䏟𨧨𨭆𨯔姸𨰉輋𨿅𩃬筑𩄐𩄼㷷𩅞𤫊运犏嚋𩓧𩗩𩖰𩖸𩜲𩣑𩥉𩥪𩧃𩨨𩬎𩵚𩶛纟𩻸𩼣䲤镇𪊓熢𪋿䶑递𪗋䶜𠲜达嗁"],["9da1","辺𢒰边𤪓䔉繿潖檱仪㓤𨬬𧢝㜺躀𡟵𨀤𨭬𨮙𧨾𦚯㷫𧙕𣲷𥘵𥥖亚𥺁𦉘嚿𠹭踎孭𣺈𤲞揞拐𡟶𡡻攰嘭𥱊吚𥌑㷆𩶘䱽嘢嘞罉𥻘奵𣵀蝰东𠿪𠵉𣚺脗鵞贘瘻鱅癎瞹鍅吲腈苷嘥脲萘肽嗪祢噃吖𠺝㗎嘅嗱曱𨋢㘭甴嗰喺咗啲𠱁𠲖廐𥅈𠹶𢱢"],["9e40","𠺢麫絚嗞𡁵抝靭咔賍燶酶揼掹揾啩𢭃鱲𢺳冚㓟𠶧冧呍唞唓癦踭𦢊疱肶蠄螆裇膶萜𡃁䓬猄𤜆宐茋𦢓噻𢛴𧴯𤆣𧵳𦻐𧊶酰𡇙鈈𣳼𪚩𠺬𠻹牦𡲢䝎𤿂𧿹𠿫䃺"],["9ea1","鱝攟𢶠䣳𤟠𩵼𠿬𠸊恢𧖣𠿭"],["9ead","𦁈𡆇熣纎鵐业丄㕷嬍沲卧㚬㧜卽㚥𤘘墚𤭮舭呋垪𥪕𠥹"],["9ec5","㩒𢑥獴𩺬䴉鯭𣳾𩼰䱛𤾩𩖞𩿞葜𣶶𧊲𦞳𣜠挮紥𣻷𣸬㨪逈勌㹴㙺䗩𠒎癀嫰𠺶硺𧼮墧䂿噼鮋嵴癔𪐴麅䳡痹㟻愙𣃚𤏲"],["9ef5","噝𡊩垧𤥣𩸆刴𧂮㖭汊鵼"],["9f40","籖鬹埞𡝬屓擓𩓐𦌵𧅤蚭𠴨𦴢𤫢𠵱"],["9f4f","凾𡼏嶎霃𡷑麁遌笟鬂峑箣扨挵髿篏鬪籾鬮籂粆鰕篼鬉鼗鰛𤤾齚啳寃俽麘俲剠㸆勑坧偖妷帒韈鶫轜呩鞴饀鞺匬愰"],["9fa1","椬叚鰊鴂䰻陁榀傦畆𡝭駚剳"],["9fae","酙隁酜"],["9fb2","酑𨺗捿𦴣櫊嘑醎畺抅𠏼獏籰𥰡𣳽"],["9fc1","𤤙盖鮝个𠳔莾衂"],["9fc9","届槀僭坺刟巵从氱𠇲伹咜哚劚趂㗾弌㗳"],["9fdb","歒酼龥鮗頮颴骺麨麄煺笔"],["9fe7","毺蠘罸"],["9feb","嘠𪙊蹷齓"],["9ff0","跔蹏鸜踁抂𨍽踨蹵竓𤩷稾磘泪詧瘇"],["a040","𨩚鼦泎蟖痃𪊲硓咢贌狢獱謭猂瓱賫𤪻蘯徺袠䒷"],["a055","𡠻𦸅"],["a058","詾𢔛"],["a05b","惽癧髗鵄鍮鮏蟵"],["a063","蠏賷猬霡鮰㗖犲䰇籑饊𦅙慙䰄麖慽"],["a073","坟慯抦戹拎㩜懢厪𣏵捤栂㗒"],["a0a1","嵗𨯂迚𨸹"],["a0a6","僙𡵆礆匲阸𠼻䁥"],["a0ae","矾"],["a0b0","糂𥼚糚稭聦聣絍甅瓲覔舚朌聢𧒆聛瓰脃眤覉𦟌畓𦻑螩蟎臈螌詉貭譃眫瓸蓚㘵榲趦"],["a0d4","覩瑨涹蟁𤀑瓧㷛煶悤憜㳑煢恷"],["a0e2","罱𨬭牐惩䭾删㰘𣳇𥻗𧙖𥔱𡥄𡋾𩤃𦷜𧂭峁𦆭𨨏𣙷𠃮𦡆𤼎䕢嬟𦍌齐麦𦉫"],["a3c0","␀",31,"␡"],["c6a1","①",9,"⑴",9,"ⅰ",9,"丶丿亅亠冂冖冫勹匸卩厶夊宀巛⼳广廴彐彡攴无疒癶辵隶¨ˆヽヾゝゞ〃仝々〆〇ー[]✽ぁ",23],["c740","す",58,"ァアィイ"],["c7a1","ゥ",81,"А",5,"ЁЖ",4],["c840","Л",26,"ёж",25,"⇧↸↹㇏𠃌乚𠂊刂䒑"],["c8a1","龰冈龱𧘇"],["c8cd","¬¦'"㈱№℡゛゜⺀⺄⺆⺇⺈⺊⺌⺍⺕⺜⺝⺥⺧⺪⺬⺮⺶⺼⺾⻆⻊⻌⻍⻏⻖⻗⻞⻣"],["c8f5","ʃɐɛɔɵœøŋʊɪ"],["f9fe","■"],["fa40","𠕇鋛𠗟𣿅蕌䊵珯况㙉𤥂𨧤鍄𡧛苮𣳈砼杄拟𤤳𨦪𠊠𦮳𡌅侫𢓭倈𦴩𧪄𣘀𤪱𢔓倩𠍾徤𠎀𠍇滛𠐟偽儁㑺儎顬㝃萖𤦤𠒇兠𣎴兪𠯿𢃼𠋥𢔰𠖎𣈳𡦃宂蝽𠖳𣲙冲冸"],["faa1","鴴凉减凑㳜凓𤪦决凢卂凭菍椾𣜭彻刋刦刼劵剗劔効勅簕蕂勠蘍𦬓包𨫞啉滙𣾀𠥔𣿬匳卄𠯢泋𡜦栛珕恊㺪㣌𡛨燝䒢卭却𨚫卾卿𡖖𡘓矦厓𨪛厠厫厮玧𥝲㽙玜叁叅汉义埾叙㪫𠮏叠𣿫𢶣叶𠱷吓灹唫晗浛呭𦭓𠵴啝咏咤䞦𡜍𠻝㶴𠵍"],["fb40","𨦼𢚘啇䳭启琗喆喩嘅𡣗𤀺䕒𤐵暳𡂴嘷曍𣊊暤暭噍噏磱囱鞇叾圀囯园𨭦㘣𡉏坆𤆥汮炋坂㚱𦱾埦𡐖堃𡑔𤍣堦𤯵塜墪㕡壠壜𡈼壻寿坃𪅐𤉸鏓㖡够梦㛃湙"],["fba1","𡘾娤啓𡚒蔅姉𠵎𦲁𦴪𡟜姙𡟻𡞲𦶦浱𡠨𡛕姹𦹅媫婣㛦𤦩婷㜈媖瑥嫓𦾡𢕔㶅𡤑㜲𡚸広勐孶斈孼𧨎䀄䡝𠈄寕慠𡨴𥧌𠖥寳宝䴐尅𡭄尓珎尔𡲥𦬨屉䣝岅峩峯嶋𡷹𡸷崐崘嵆𡺤岺巗苼㠭𤤁𢁉𢅳芇㠶㯂帮檊幵幺𤒼𠳓厦亷廐厨𡝱帉廴𨒂"],["fc40","廹廻㢠廼栾鐛弍𠇁弢㫞䢮𡌺强𦢈𢏐彘𢑱彣鞽𦹮彲鍀𨨶徧嶶㵟𥉐𡽪𧃸𢙨釖𠊞𨨩怱暅𡡷㥣㷇㘹垐𢞴祱㹀悞悤悳𤦂𤦏𧩓璤僡媠慤萤慂慈𦻒憁凴𠙖憇宪𣾷"],["fca1","𢡟懓𨮝𩥝懐㤲𢦀𢣁怣慜攞掋𠄘担𡝰拕𢸍捬𤧟㨗搸揸𡎎𡟼撐澊𢸶頔𤂌𥜝擡擥鑻㩦携㩗敍漖𤨨𤨣斅敭敟𣁾斵𤥀䬷旑䃘𡠩无旣忟𣐀昘𣇷𣇸晄𣆤𣆥晋𠹵晧𥇦晳晴𡸽𣈱𨗴𣇈𥌓矅𢣷馤朂𤎜𤨡㬫槺𣟂杞杧杢𤇍𩃭柗䓩栢湐鈼栁𣏦𦶠桝"],["fd40","𣑯槡樋𨫟楳棃𣗍椁椀㴲㨁𣘼㮀枬楡𨩊䋼椶榘㮡𠏉荣傐槹𣙙𢄪橅𣜃檝㯳枱櫈𩆜㰍欝𠤣惞欵歴𢟍溵𣫛𠎵𡥘㝀吡𣭚毡𣻼毜氷𢒋𤣱𦭑汚舦汹𣶼䓅𣶽𤆤𤤌𤤀"],["fda1","𣳉㛥㳫𠴲鮃𣇹𢒑羏样𦴥𦶡𦷫涖浜湼漄𤥿𤂅𦹲蔳𦽴凇沜渝萮𨬡港𣸯瑓𣾂秌湏媑𣁋濸㜍澝𣸰滺𡒗𤀽䕕鏰潄潜㵎潴𩅰㴻澟𤅄濓𤂑𤅕𤀹𣿰𣾴𤄿凟𤅖𤅗𤅀𦇝灋灾炧炁烌烕烖烟䄄㷨熴熖𤉷焫煅媈煊煮岜𤍥煏鍢𤋁焬𤑚𤨧𤨢熺𨯨炽爎"],["fe40","鑂爕夑鑃爤鍁𥘅爮牀𤥴梽牕牗㹕𣁄栍漽犂猪猫𤠣𨠫䣭𨠄猨献珏玪𠰺𦨮珉瑉𤇢𡛧𤨤昣㛅𤦷𤦍𤧻珷琕椃𤨦琹𠗃㻗瑜𢢭瑠𨺲瑇珤瑶莹瑬㜰瑴鏱樬璂䥓𤪌"],["fea1","𤅟𤩹𨮏孆𨰃𡢞瓈𡦈甎瓩甞𨻙𡩋寗𨺬鎅畍畊畧畮𤾂㼄𤴓疎瑝疞疴瘂瘬癑癏癯癶𦏵皐臯㟸𦤑𦤎皡皥皷盌𦾟葢𥂝𥅽𡸜眞眦着撯𥈠睘𣊬瞯𨥤𨥨𡛁矴砉𡍶𤨒棊碯磇磓隥礮𥗠磗礴碱𧘌辸袄𨬫𦂃𢘜禆褀椂禀𥡗禝𧬹礼禩渪𧄦㺨秆𩄍秔"]]')},74488:Wt=>{"use strict";Wt.exports=JSON.parse('[["0","\\u0000",127,"€"],["8140","丂丄丅丆丏丒丗丟丠両丣並丩丮丯丱丳丵丷丼乀乁乂乄乆乊乑乕乗乚乛乢乣乤乥乧乨乪",5,"乲乴",9,"乿",6,"亇亊"],["8180","亐亖亗亙亜亝亞亣亪亯亰亱亴亶亷亸亹亼亽亾仈仌仏仐仒仚仛仜仠仢仦仧仩仭仮仯仱仴仸仹仺仼仾伀伂",6,"伋伌伒",4,"伜伝伡伣伨伩伬伭伮伱伳伵伷伹伻伾",4,"佄佅佇",5,"佒佔佖佡佢佦佨佪佫佭佮佱佲併佷佸佹佺佽侀侁侂侅來侇侊侌侎侐侒侓侕侖侘侙侚侜侞侟価侢"],["8240","侤侫侭侰",4,"侶",8,"俀俁係俆俇俈俉俋俌俍俒",4,"俙俛俠俢俤俥俧俫俬俰俲俴俵俶俷俹俻俼俽俿",11],["8280","個倎倐們倓倕倖倗倛倝倞倠倢倣値倧倫倯",10,"倻倽倿偀偁偂偄偅偆偉偊偋偍偐",4,"偖偗偘偙偛偝",7,"偦",5,"偭",8,"偸偹偺偼偽傁傂傃傄傆傇傉傊傋傌傎",20,"傤傦傪傫傭",4,"傳",6,"傼"],["8340","傽",17,"僐",5,"僗僘僙僛",10,"僨僩僪僫僯僰僱僲僴僶",4,"僼",9,"儈"],["8380","儉儊儌",5,"儓",13,"儢",28,"兂兇兊兌兎兏児兒兓兗兘兙兛兝",4,"兣兤兦內兩兪兯兲兺兾兿冃冄円冇冊冋冎冏冐冑冓冔冘冚冝冞冟冡冣冦",4,"冭冮冴冸冹冺冾冿凁凂凃凅凈凊凍凎凐凒",5],["8440","凘凙凚凜凞凟凢凣凥",5,"凬凮凱凲凴凷凾刄刅刉刋刌刏刐刓刔刕刜刞刟刡刢刣別刦刧刪刬刯刱刲刴刵刼刾剄",5,"剋剎剏剒剓剕剗剘"],["8480","剙剚剛剝剟剠剢剣剤剦剨剫剬剭剮剰剱剳",9,"剾劀劃",4,"劉",6,"劑劒劔",6,"劜劤劥劦劧劮劯劰労",9,"勀勁勂勄勅勆勈勊勌勍勎勏勑勓勔動勗務",5,"勠勡勢勣勥",10,"勱",7,"勻勼勽匁匂匃匄匇匉匊匋匌匎"],["8540","匑匒匓匔匘匛匜匞匟匢匤匥匧匨匩匫匬匭匯",9,"匼匽區卂卄卆卋卌卍卐協単卙卛卝卥卨卪卬卭卲卶卹卻卼卽卾厀厁厃厇厈厊厎厏"],["8580","厐",4,"厖厗厙厛厜厞厠厡厤厧厪厫厬厭厯",6,"厷厸厹厺厼厽厾叀參",4,"収叏叐叒叓叕叚叜叝叞叡叢叧叴叺叾叿吀吂吅吇吋吔吘吙吚吜吢吤吥吪吰吳吶吷吺吽吿呁呂呄呅呇呉呌呍呎呏呑呚呝",4,"呣呥呧呩",7,"呴呹呺呾呿咁咃咅咇咈咉咊咍咑咓咗咘咜咞咟咠咡"],["8640","咢咥咮咰咲咵咶咷咹咺咼咾哃哅哊哋哖哘哛哠",4,"哫哬哯哰哱哴",5,"哻哾唀唂唃唄唅唈唊",4,"唒唓唕",5,"唜唝唞唟唡唥唦"],["8680","唨唩唫唭唲唴唵唶唸唹唺唻唽啀啂啅啇啈啋",4,"啑啒啓啔啗",4,"啝啞啟啠啢啣啨啩啫啯",5,"啹啺啽啿喅喆喌喍喎喐喒喓喕喖喗喚喛喞喠",6,"喨",8,"喲喴営喸喺喼喿",4,"嗆嗇嗈嗊嗋嗎嗏嗐嗕嗗",4,"嗞嗠嗢嗧嗩嗭嗮嗰嗱嗴嗶嗸",4,"嗿嘂嘃嘄嘅"],["8740","嘆嘇嘊嘋嘍嘐",7,"嘙嘚嘜嘝嘠嘡嘢嘥嘦嘨嘩嘪嘫嘮嘯嘰嘳嘵嘷嘸嘺嘼嘽嘾噀",11,"噏",4,"噕噖噚噛噝",4],["8780","噣噥噦噧噭噮噯噰噲噳噴噵噷噸噹噺噽",7,"嚇",6,"嚐嚑嚒嚔",14,"嚤",10,"嚰",6,"嚸嚹嚺嚻嚽",12,"囋",8,"囕囖囘囙囜団囥",5,"囬囮囯囲図囶囷囸囻囼圀圁圂圅圇國",6],["8840","園",9,"圝圞圠圡圢圤圥圦圧圫圱圲圴",4,"圼圽圿坁坃坄坅坆坈坉坋坒",4,"坘坙坢坣坥坧坬坮坰坱坲坴坵坸坹坺坽坾坿垀"],["8880","垁垇垈垉垊垍",4,"垔",6,"垜垝垞垟垥垨垪垬垯垰垱垳垵垶垷垹",8,"埄",6,"埌埍埐埑埓埖埗埛埜埞埡埢埣埥",7,"埮埰埱埲埳埵埶執埻埼埾埿堁堃堄堅堈堉堊堌堎堏堐堒堓堔堖堗堘堚堛堜堝堟堢堣堥",4,"堫",4,"報堲堳場堶",7],["8940","堾",5,"塅",6,"塎塏塐塒塓塕塖塗塙",4,"塟",5,"塦",4,"塭",16,"塿墂墄墆墇墈墊墋墌"],["8980","墍",4,"墔",4,"墛墜墝墠",7,"墪",17,"墽墾墿壀壂壃壄壆",10,"壒壓壔壖",13,"壥",5,"壭壯壱売壴壵壷壸壺",7,"夃夅夆夈",4,"夎夐夑夒夓夗夘夛夝夞夠夡夢夣夦夨夬夰夲夳夵夶夻"],["8a40","夽夾夿奀奃奅奆奊奌奍奐奒奓奙奛",4,"奡奣奤奦",12,"奵奷奺奻奼奾奿妀妅妉妋妌妎妏妐妑妔妕妘妚妛妜妝妟妠妡妢妦"],["8a80","妧妬妭妰妱妳",5,"妺妼妽妿",6,"姇姈姉姌姍姎姏姕姖姙姛姞",4,"姤姦姧姩姪姫姭",11,"姺姼姽姾娀娂娊娋娍娎娏娐娒娔娕娖娗娙娚娛娝娞娡娢娤娦娧娨娪",6,"娳娵娷",4,"娽娾娿婁",4,"婇婈婋",9,"婖婗婘婙婛",5],["8b40","婡婣婤婥婦婨婩婫",8,"婸婹婻婼婽婾媀",17,"媓",6,"媜",13,"媫媬"],["8b80","媭",4,"媴媶媷媹",4,"媿嫀嫃",5,"嫊嫋嫍",4,"嫓嫕嫗嫙嫚嫛嫝嫞嫟嫢嫤嫥嫧嫨嫪嫬",4,"嫲",22,"嬊",11,"嬘",25,"嬳嬵嬶嬸",7,"孁",6],["8c40","孈",7,"孒孖孞孠孡孧孨孫孭孮孯孲孴孶孷學孹孻孼孾孿宂宆宊宍宎宐宑宒宔宖実宧宨宩宬宭宮宯宱宲宷宺宻宼寀寁寃寈寉寊寋寍寎寏"],["8c80","寑寔",8,"寠寢寣實寧審",4,"寯寱",6,"寽対尀専尃尅將專尋尌對導尐尒尓尗尙尛尞尟尠尡尣尦尨尩尪尫尭尮尯尰尲尳尵尶尷屃屄屆屇屌屍屒屓屔屖屗屘屚屛屜屝屟屢層屧",6,"屰屲",6,"屻屼屽屾岀岃",4,"岉岊岋岎岏岒岓岕岝",4,"岤",4],["8d40","岪岮岯岰岲岴岶岹岺岻岼岾峀峂峃峅",5,"峌",5,"峓",5,"峚",6,"峢峣峧峩峫峬峮峯峱",9,"峼",4],["8d80","崁崄崅崈",5,"崏",4,"崕崗崘崙崚崜崝崟",4,"崥崨崪崫崬崯",4,"崵",7,"崿",7,"嵈嵉嵍",10,"嵙嵚嵜嵞",10,"嵪嵭嵮嵰嵱嵲嵳嵵",12,"嶃",21,"嶚嶛嶜嶞嶟嶠"],["8e40","嶡",21,"嶸",12,"巆",6,"巎",12,"巜巟巠巣巤巪巬巭"],["8e80","巰巵巶巸",4,"巿帀帄帇帉帊帋帍帎帒帓帗帞",7,"帨",4,"帯帰帲",4,"帹帺帾帿幀幁幃幆",5,"幍",6,"幖",4,"幜幝幟幠幣",14,"幵幷幹幾庁庂広庅庈庉庌庍庎庒庘庛庝庡庢庣庤庨",4,"庮",4,"庴庺庻庼庽庿",6],["8f40","廆廇廈廋",5,"廔廕廗廘廙廚廜",11,"廩廫",8,"廵廸廹廻廼廽弅弆弇弉弌弍弎弐弒弔弖弙弚弜弝弞弡弢弣弤"],["8f80","弨弫弬弮弰弲",6,"弻弽弾弿彁",14,"彑彔彙彚彛彜彞彟彠彣彥彧彨彫彮彯彲彴彵彶彸彺彽彾彿徃徆徍徎徏徑従徔徖徚徛徝從徟徠徢",5,"復徫徬徯",5,"徶徸徹徺徻徾",4,"忇忈忊忋忎忓忔忕忚忛応忞忟忢忣忥忦忨忩忬忯忰忲忳忴忶忷忹忺忼怇"],["9040","怈怉怋怌怐怑怓怗怘怚怞怟怢怣怤怬怭怮怰",4,"怶",4,"怽怾恀恄",6,"恌恎恏恑恓恔恖恗恘恛恜恞恟恠恡恥恦恮恱恲恴恵恷恾悀"],["9080","悁悂悅悆悇悈悊悋悎悏悐悑悓悕悗悘悙悜悞悡悢悤悥悧悩悪悮悰悳悵悶悷悹悺悽",7,"惇惈惉惌",4,"惒惓惔惖惗惙惛惞惡",4,"惪惱惲惵惷惸惻",4,"愂愃愄愅愇愊愋愌愐",4,"愖愗愘愙愛愜愝愞愡愢愥愨愩愪愬",18,"慀",6],["9140","慇慉態慍慏慐慒慓慔慖",6,"慞慟慠慡慣慤慥慦慩",6,"慱慲慳慴慶慸",18,"憌憍憏",4,"憕"],["9180","憖",6,"憞",8,"憪憫憭",9,"憸",5,"憿懀懁懃",4,"應懌",4,"懓懕",16,"懧",13,"懶",8,"戀",5,"戇戉戓戔戙戜戝戞戠戣戦戧戨戩戫戭戯戰戱戲戵戶戸",4,"扂扄扅扆扊"],["9240","扏扐払扖扗扙扚扜",6,"扤扥扨扱扲扴扵扷扸扺扻扽抁抂抃抅抆抇抈抋",5,"抔抙抜抝択抣抦抧抩抪抭抮抯抰抲抳抴抶抷抸抺抾拀拁"],["9280","拃拋拏拑拕拝拞拠拡拤拪拫拰拲拵拸拹拺拻挀挃挄挅挆挊挋挌挍挏挐挒挓挔挕挗挘挙挜挦挧挩挬挭挮挰挱挳",5,"挻挼挾挿捀捁捄捇捈捊捑捒捓捔捖",7,"捠捤捥捦捨捪捫捬捯捰捲捳捴捵捸捹捼捽捾捿掁掃掄掅掆掋掍掑掓掔掕掗掙",6,"採掤掦掫掯掱掲掵掶掹掻掽掿揀"],["9340","揁揂揃揅揇揈揊揋揌揑揓揔揕揗",6,"揟揢揤",4,"揫揬揮揯揰揱揳揵揷揹揺揻揼揾搃搄搆",4,"損搎搑搒搕",5,"搝搟搢搣搤"],["9380","搥搧搨搩搫搮",5,"搵",4,"搻搼搾摀摂摃摉摋",6,"摓摕摖摗摙",4,"摟",7,"摨摪摫摬摮",9,"摻",6,"撃撆撈",8,"撓撔撗撘撚撛撜撝撟",4,"撥撦撧撨撪撫撯撱撲撳撴撶撹撻撽撾撿擁擃擄擆",6,"擏擑擓擔擕擖擙據"],["9440","擛擜擝擟擠擡擣擥擧",24,"攁",7,"攊",7,"攓",4,"攙",8],["9480","攢攣攤攦",4,"攬攭攰攱攲攳攷攺攼攽敀",4,"敆敇敊敋敍敎敐敒敓敔敗敘敚敜敟敠敡敤敥敧敨敩敪敭敮敯敱敳敵敶數",14,"斈斉斊斍斎斏斒斔斕斖斘斚斝斞斠斢斣斦斨斪斬斮斱",7,"斺斻斾斿旀旂旇旈旉旊旍旐旑旓旔旕旘",7,"旡旣旤旪旫"],["9540","旲旳旴旵旸旹旻",4,"昁昄昅昇昈昉昋昍昐昑昒昖昗昘昚昛昜昞昡昢昣昤昦昩昪昫昬昮昰昲昳昷",4,"昽昿晀時晄",6,"晍晎晐晑晘"],["9580","晙晛晜晝晞晠晢晣晥晧晩",4,"晱晲晳晵晸晹晻晼晽晿暀暁暃暅暆暈暉暊暋暍暎暏暐暒暓暔暕暘",4,"暞",8,"暩",4,"暯",4,"暵暶暷暸暺暻暼暽暿",25,"曚曞",7,"曧曨曪",5,"曱曵曶書曺曻曽朁朂會"],["9640","朄朅朆朇朌朎朏朑朒朓朖朘朙朚朜朞朠",5,"朧朩朮朰朲朳朶朷朸朹朻朼朾朿杁杄杅杇杊杋杍杒杔杕杗",4,"杝杢杣杤杦杧杫杬杮東杴杶"],["9680","杸杹杺杻杽枀枂枃枅枆枈枊枌枍枎枏枑枒枓枔枖枙枛枟枠枡枤枦枩枬枮枱枲枴枹",7,"柂柅",9,"柕柖柗柛柟柡柣柤柦柧柨柪柫柭柮柲柵",7,"柾栁栂栃栄栆栍栐栒栔栕栘",4,"栞栟栠栢",6,"栫",6,"栴栵栶栺栻栿桇桋桍桏桒桖",5],["9740","桜桝桞桟桪桬",7,"桵桸",8,"梂梄梇",7,"梐梑梒梔梕梖梘",9,"梣梤梥梩梪梫梬梮梱梲梴梶梷梸"],["9780","梹",6,"棁棃",5,"棊棌棎棏棐棑棓棔棖棗棙棛",4,"棡棢棤",9,"棯棲棳棴棶棷棸棻棽棾棿椀椂椃椄椆",4,"椌椏椑椓",11,"椡椢椣椥",7,"椮椯椱椲椳椵椶椷椸椺椻椼椾楀楁楃",16,"楕楖楘楙楛楜楟"],["9840","楡楢楤楥楧楨楩楪楬業楯楰楲",4,"楺楻楽楾楿榁榃榅榊榋榌榎",5,"榖榗榙榚榝",9,"榩榪榬榮榯榰榲榳榵榶榸榹榺榼榽"],["9880","榾榿槀槂",7,"構槍槏槑槒槓槕",5,"槜槝槞槡",11,"槮槯槰槱槳",9,"槾樀",9,"樋",11,"標",5,"樠樢",5,"権樫樬樭樮樰樲樳樴樶",6,"樿",4,"橅橆橈",7,"橑",6,"橚"],["9940","橜",4,"橢橣橤橦",10,"橲",6,"橺橻橽橾橿檁檂檃檅",8,"檏檒",4,"檘",7,"檡",5],["9980","檧檨檪檭",114,"欥欦欨",6],["9a40","欯欰欱欳欴欵欶欸欻欼欽欿歀歁歂歄歅歈歊歋歍",11,"歚",7,"歨歩歫",13,"歺歽歾歿殀殅殈"],["9a80","殌殎殏殐殑殔殕殗殘殙殜",4,"殢",7,"殫",7,"殶殸",6,"毀毃毄毆",4,"毌毎毐毑毘毚毜",4,"毢",7,"毬毭毮毰毱毲毴毶毷毸毺毻毼毾",6,"氈",4,"氎氒気氜氝氞氠氣氥氫氬氭氱氳氶氷氹氺氻氼氾氿汃汄汅汈汋",4,"汑汒汓汖汘"],["9b40","汙汚汢汣汥汦汧汫",4,"汱汳汵汷汸決汻汼汿沀沄沇沊沋沍沎沑沒沕沖沗沘沚沜沝沞沠沢沨沬沯沰沴沵沶沷沺泀況泂泃泆泇泈泋泍泎泏泑泒泘"],["9b80","泙泚泜泝泟泤泦泧泩泬泭泲泴泹泿洀洂洃洅洆洈洉洊洍洏洐洑洓洔洕洖洘洜洝洟",5,"洦洨洩洬洭洯洰洴洶洷洸洺洿浀浂浄浉浌浐浕浖浗浘浛浝浟浡浢浤浥浧浨浫浬浭浰浱浲浳浵浶浹浺浻浽",4,"涃涄涆涇涊涋涍涏涐涒涖",4,"涜涢涥涬涭涰涱涳涴涶涷涹",5,"淁淂淃淈淉淊"],["9c40","淍淎淏淐淒淓淔淕淗淚淛淜淟淢淣淥淧淨淩淪淭淯淰淲淴淵淶淸淺淽",7,"渆渇済渉渋渏渒渓渕渘渙減渜渞渟渢渦渧渨渪測渮渰渱渳渵"],["9c80","渶渷渹渻",7,"湅",7,"湏湐湑湒湕湗湙湚湜湝湞湠",10,"湬湭湯",14,"満溁溂溄溇溈溊",4,"溑",6,"溙溚溛溝溞溠溡溣溤溦溨溩溫溬溭溮溰溳溵溸溹溼溾溿滀滃滄滅滆滈滉滊滌滍滎滐滒滖滘滙滛滜滝滣滧滪",5],["9d40","滰滱滲滳滵滶滷滸滺",7,"漃漄漅漇漈漊",4,"漐漑漒漖",9,"漡漢漣漥漦漧漨漬漮漰漲漴漵漷",6,"漿潀潁潂"],["9d80","潃潄潅潈潉潊潌潎",9,"潙潚潛潝潟潠潡潣潤潥潧",5,"潯潰潱潳潵潶潷潹潻潽",6,"澅澆澇澊澋澏",12,"澝澞澟澠澢",4,"澨",10,"澴澵澷澸澺",5,"濁濃",5,"濊",6,"濓",10,"濟濢濣濤濥"],["9e40","濦",7,"濰",32,"瀒",7,"瀜",6,"瀤",6],["9e80","瀫",9,"瀶瀷瀸瀺",17,"灍灎灐",13,"灟",11,"灮灱灲灳灴灷灹灺灻災炁炂炃炄炆炇炈炋炌炍炏炐炑炓炗炘炚炛炞",12,"炰炲炴炵炶為炾炿烄烅烆烇烉烋",12,"烚"],["9f40","烜烝烞烠烡烢烣烥烪烮烰",6,"烸烺烻烼烾",10,"焋",4,"焑焒焔焗焛",10,"焧",7,"焲焳焴"],["9f80","焵焷",13,"煆煇煈煉煋煍煏",12,"煝煟",4,"煥煩",4,"煯煰煱煴煵煶煷煹煻煼煾",5,"熅",4,"熋熌熍熎熐熑熒熓熕熖熗熚",4,"熡",6,"熩熪熫熭",5,"熴熶熷熸熺",8,"燄",9,"燏",4],["a040","燖",9,"燡燢燣燤燦燨",5,"燯",9,"燺",11,"爇",19],["a080","爛爜爞",9,"爩爫爭爮爯爲爳爴爺爼爾牀",6,"牉牊牋牎牏牐牑牓牔牕牗牘牚牜牞牠牣牤牥牨牪牫牬牭牰牱牳牴牶牷牸牻牼牽犂犃犅",4,"犌犎犐犑犓",11,"犠",11,"犮犱犲犳犵犺",6,"狅狆狇狉狊狋狌狏狑狓狔狕狖狘狚狛"],["a1a1"," 、。·ˉˇ¨〃々—~‖…‘’“”〔〕〈",7,"〖〗【】±×÷∶∧∨∑∏∪∩∈∷√⊥∥∠⌒⊙∫∮≡≌≈∽∝≠≮≯≤≥∞∵∴♂♀°′″℃$¤¢£‰§№☆★○●◎◇◆□■△▲※→←↑↓〓"],["a2a1","ⅰ",9],["a2b1","⒈",19,"⑴",19,"①",9],["a2e5","㈠",9],["a2f1","Ⅰ",11],["a3a1","!"#¥%",88," ̄"],["a4a1","ぁ",82],["a5a1","ァ",85],["a6a1","Α",16,"Σ",6],["a6c1","α",16,"σ",6],["a6e0","︵︶︹︺︿﹀︽︾﹁﹂﹃﹄"],["a6ee","︻︼︷︸︱"],["a6f4","︳︴"],["a7a1","А",5,"ЁЖ",25],["a7d1","а",5,"ёж",25],["a840","ˊˋ˙–―‥‵℅℉↖↗↘↙∕∟∣≒≦≧⊿═",35,"▁",6],["a880","█",7,"▓▔▕▼▽◢◣◤◥☉⊕〒〝〞"],["a8a1","āáǎàēéěèīíǐìōóǒòūúǔùǖǘǚǜüêɑ"],["a8bd","ńň"],["a8c0","ɡ"],["a8c5","ㄅ",36],["a940","〡",8,"㊣㎎㎏㎜㎝㎞㎡㏄㏎㏑㏒㏕︰¬¦"],["a959","℡㈱"],["a95c","‐"],["a960","ー゛゜ヽヾ〆ゝゞ﹉",9,"﹔﹕﹖﹗﹙",8],["a980","﹢",4,"﹨﹩﹪﹫"],["a996","〇"],["a9a4","─",75],["aa40","狜狝狟狢",5,"狪狫狵狶狹狽狾狿猀猂猄",5,"猋猌猍猏猐猑猒猔猘猙猚猟猠猣猤猦猧猨猭猯猰猲猳猵猶猺猻猼猽獀",8],["aa80","獉獊獋獌獎獏獑獓獔獕獖獘",7,"獡",10,"獮獰獱"],["ab40","獲",11,"獿",4,"玅玆玈玊玌玍玏玐玒玓玔玕玗玘玙玚玜玝玞玠玡玣",5,"玪玬玭玱玴玵玶玸玹玼玽玾玿珁珃",4],["ab80","珋珌珎珒",6,"珚珛珜珝珟珡珢珣珤珦珨珪珫珬珮珯珰珱珳",4],["ac40","珸",10,"琄琇琈琋琌琍琎琑",8,"琜",5,"琣琤琧琩琫琭琯琱琲琷",4,"琽琾琿瑀瑂",11],["ac80","瑎",6,"瑖瑘瑝瑠",12,"瑮瑯瑱",4,"瑸瑹瑺"],["ad40","瑻瑼瑽瑿璂璄璅璆璈璉璊璌璍璏璑",10,"璝璟",7,"璪",15,"璻",12],["ad80","瓈",9,"瓓",8,"瓝瓟瓡瓥瓧",6,"瓰瓱瓲"],["ae40","瓳瓵瓸",6,"甀甁甂甃甅",7,"甎甐甒甔甕甖甗甛甝甞甠",4,"甦甧甪甮甴甶甹甼甽甿畁畂畃畄畆畇畉畊畍畐畑畒畓畕畖畗畘"],["ae80","畝",7,"畧畨畩畫",6,"畳畵當畷畺",4,"疀疁疂疄疅疇"],["af40","疈疉疊疌疍疎疐疓疕疘疛疜疞疢疦",4,"疭疶疷疺疻疿痀痁痆痋痌痎痏痐痑痓痗痙痚痜痝痟痠痡痥痩痬痭痮痯痲痳痵痶痷痸痺痻痽痾瘂瘄瘆瘇"],["af80","瘈瘉瘋瘍瘎瘏瘑瘒瘓瘔瘖瘚瘜瘝瘞瘡瘣瘧瘨瘬瘮瘯瘱瘲瘶瘷瘹瘺瘻瘽癁療癄"],["b040","癅",6,"癎",5,"癕癗",4,"癝癟癠癡癢癤",6,"癬癭癮癰",7,"癹発發癿皀皁皃皅皉皊皌皍皏皐皒皔皕皗皘皚皛"],["b080","皜",7,"皥",8,"皯皰皳皵",9,"盀盁盃啊阿埃挨哎唉哀皑癌蔼矮艾碍爱隘鞍氨安俺按暗岸胺案肮昂盎凹敖熬翱袄傲奥懊澳芭捌扒叭吧笆八疤巴拔跋靶把耙坝霸罢爸白柏百摆佰败拜稗斑班搬扳般颁板版扮拌伴瓣半办绊邦帮梆榜膀绑棒磅蚌镑傍谤苞胞包褒剥"],["b140","盄盇盉盋盌盓盕盙盚盜盝盞盠",4,"盦",7,"盰盳盵盶盷盺盻盽盿眀眂眃眅眆眊県眎",10,"眛眜眝眞眡眣眤眥眧眪眫"],["b180","眬眮眰",4,"眹眻眽眾眿睂睄睅睆睈",7,"睒",7,"睜薄雹保堡饱宝抱报暴豹鲍爆杯碑悲卑北辈背贝钡倍狈备惫焙被奔苯本笨崩绷甭泵蹦迸逼鼻比鄙笔彼碧蓖蔽毕毙毖币庇痹闭敝弊必辟壁臂避陛鞭边编贬扁便变卞辨辩辫遍标彪膘表鳖憋别瘪彬斌濒滨宾摈兵冰柄丙秉饼炳"],["b240","睝睞睟睠睤睧睩睪睭",11,"睺睻睼瞁瞂瞃瞆",5,"瞏瞐瞓",11,"瞡瞣瞤瞦瞨瞫瞭瞮瞯瞱瞲瞴瞶",4],["b280","瞼瞾矀",12,"矎",8,"矘矙矚矝",4,"矤病并玻菠播拨钵波博勃搏铂箔伯帛舶脖膊渤泊驳捕卜哺补埠不布步簿部怖擦猜裁材才财睬踩采彩菜蔡餐参蚕残惭惨灿苍舱仓沧藏操糙槽曹草厕策侧册测层蹭插叉茬茶查碴搽察岔差诧拆柴豺搀掺蝉馋谗缠铲产阐颤昌猖"],["b340","矦矨矪矯矰矱矲矴矵矷矹矺矻矼砃",5,"砊砋砎砏砐砓砕砙砛砞砠砡砢砤砨砪砫砮砯砱砲砳砵砶砽砿硁硂硃硄硆硈硉硊硋硍硏硑硓硔硘硙硚"],["b380","硛硜硞",11,"硯",7,"硸硹硺硻硽",6,"场尝常长偿肠厂敞畅唱倡超抄钞朝嘲潮巢吵炒车扯撤掣彻澈郴臣辰尘晨忱沉陈趁衬撑称城橙成呈乘程惩澄诚承逞骋秤吃痴持匙池迟弛驰耻齿侈尺赤翅斥炽充冲虫崇宠抽酬畴踌稠愁筹仇绸瞅丑臭初出橱厨躇锄雏滁除楚"],["b440","碄碅碆碈碊碋碏碐碒碔碕碖碙碝碞碠碢碤碦碨",7,"碵碶碷碸確碻碼碽碿磀磂磃磄磆磇磈磌磍磎磏磑磒磓磖磗磘磚",9],["b480","磤磥磦磧磩磪磫磭",4,"磳磵磶磸磹磻",5,"礂礃礄礆",6,"础储矗搐触处揣川穿椽传船喘串疮窗幢床闯创吹炊捶锤垂春椿醇唇淳纯蠢戳绰疵茨磁雌辞慈瓷词此刺赐次聪葱囱匆从丛凑粗醋簇促蹿篡窜摧崔催脆瘁粹淬翠村存寸磋撮搓措挫错搭达答瘩打大呆歹傣戴带殆代贷袋待逮"],["b540","礍",5,"礔",9,"礟",4,"礥",14,"礵",4,"礽礿祂祃祄祅祇祊",8,"祔祕祘祙祡祣"],["b580","祤祦祩祪祫祬祮祰",6,"祹祻",4,"禂禃禆禇禈禉禋禌禍禎禐禑禒怠耽担丹单郸掸胆旦氮但惮淡诞弹蛋当挡党荡档刀捣蹈倒岛祷导到稻悼道盗德得的蹬灯登等瞪凳邓堤低滴迪敌笛狄涤翟嫡抵底地蒂第帝弟递缔颠掂滇碘点典靛垫电佃甸店惦奠淀殿碉叼雕凋刁掉吊钓调跌爹碟蝶迭谍叠"],["b640","禓",6,"禛",11,"禨",10,"禴",4,"禼禿秂秄秅秇秈秊秌秎秏秐秓秔秖秗秙",5,"秠秡秢秥秨秪"],["b680","秬秮秱",6,"秹秺秼秾秿稁稄稅稇稈稉稊稌稏",4,"稕稖稘稙稛稜丁盯叮钉顶鼎锭定订丢东冬董懂动栋侗恫冻洞兜抖斗陡豆逗痘都督毒犊独读堵睹赌杜镀肚度渡妒端短锻段断缎堆兑队对墩吨蹲敦顿囤钝盾遁掇哆多夺垛躲朵跺舵剁惰堕蛾峨鹅俄额讹娥恶厄扼遏鄂饿恩而儿耳尔饵洱二"],["b740","稝稟稡稢稤",14,"稴稵稶稸稺稾穀",5,"穇",9,"穒",4,"穘",16],["b780","穩",6,"穱穲穳穵穻穼穽穾窂窅窇窉窊窋窌窎窏窐窓窔窙窚窛窞窡窢贰发罚筏伐乏阀法珐藩帆番翻樊矾钒繁凡烦反返范贩犯饭泛坊芳方肪房防妨仿访纺放菲非啡飞肥匪诽吠肺废沸费芬酚吩氛分纷坟焚汾粉奋份忿愤粪丰封枫蜂峰锋风疯烽逢冯缝讽奉凤佛否夫敷肤孵扶拂辐幅氟符伏俘服"],["b840","窣窤窧窩窪窫窮",4,"窴",10,"竀",10,"竌",9,"竗竘竚竛竜竝竡竢竤竧",5,"竮竰竱竲竳"],["b880","竴",4,"竻竼竾笀笁笂笅笇笉笌笍笎笐笒笓笖笗笘笚笜笝笟笡笢笣笧笩笭浮涪福袱弗甫抚辅俯釜斧脯腑府腐赴副覆赋复傅付阜父腹负富讣附妇缚咐噶嘎该改概钙盖溉干甘杆柑竿肝赶感秆敢赣冈刚钢缸肛纲岗港杠篙皋高膏羔糕搞镐稿告哥歌搁戈鸽胳疙割革葛格蛤阁隔铬个各给根跟耕更庚羹"],["b940","笯笰笲笴笵笶笷笹笻笽笿",5,"筆筈筊筍筎筓筕筗筙筜筞筟筡筣",10,"筯筰筳筴筶筸筺筼筽筿箁箂箃箄箆",6,"箎箏"],["b980","箑箒箓箖箘箙箚箛箞箟箠箣箤箥箮箯箰箲箳箵箶箷箹",7,"篂篃範埂耿梗工攻功恭龚供躬公宫弓巩汞拱贡共钩勾沟苟狗垢构购够辜菇咕箍估沽孤姑鼓古蛊骨谷股故顾固雇刮瓜剐寡挂褂乖拐怪棺关官冠观管馆罐惯灌贯光广逛瑰规圭硅归龟闺轨鬼诡癸桂柜跪贵刽辊滚棍锅郭国果裹过哈"],["ba40","篅篈築篊篋篍篎篏篐篒篔",4,"篛篜篞篟篠篢篣篤篧篨篩篫篬篭篯篰篲",4,"篸篹篺篻篽篿",7,"簈簉簊簍簎簐",5,"簗簘簙"],["ba80","簚",4,"簠",5,"簨簩簫",12,"簹",5,"籂骸孩海氦亥害骇酣憨邯韩含涵寒函喊罕翰撼捍旱憾悍焊汗汉夯杭航壕嚎豪毫郝好耗号浩呵喝荷菏核禾和何合盒貉阂河涸赫褐鹤贺嘿黑痕很狠恨哼亨横衡恒轰哄烘虹鸿洪宏弘红喉侯猴吼厚候后呼乎忽瑚壶葫胡蝴狐糊湖"],["bb40","籃",9,"籎",36,"籵",5,"籾",9],["bb80","粈粊",6,"粓粔粖粙粚粛粠粡粣粦粧粨粩粫粬粭粯粰粴",4,"粺粻弧虎唬护互沪户花哗华猾滑画划化话槐徊怀淮坏欢环桓还缓换患唤痪豢焕涣宦幻荒慌黄磺蝗簧皇凰惶煌晃幌恍谎灰挥辉徽恢蛔回毁悔慧卉惠晦贿秽会烩汇讳诲绘荤昏婚魂浑混豁活伙火获或惑霍货祸击圾基机畸稽积箕"],["bc40","粿糀糂糃糄糆糉糋糎",6,"糘糚糛糝糞糡",6,"糩",5,"糰",7,"糹糺糼",13,"紋",5],["bc80","紑",14,"紡紣紤紥紦紨紩紪紬紭紮細",6,"肌饥迹激讥鸡姬绩缉吉极棘辑籍集及急疾汲即嫉级挤几脊己蓟技冀季伎祭剂悸济寄寂计记既忌际妓继纪嘉枷夹佳家加荚颊贾甲钾假稼价架驾嫁歼监坚尖笺间煎兼肩艰奸缄茧检柬碱硷拣捡简俭剪减荐槛鉴践贱见键箭件"],["bd40","紷",54,"絯",7],["bd80","絸",32,"健舰剑饯渐溅涧建僵姜将浆江疆蒋桨奖讲匠酱降蕉椒礁焦胶交郊浇骄娇嚼搅铰矫侥脚狡角饺缴绞剿教酵轿较叫窖揭接皆秸街阶截劫节桔杰捷睫竭洁结解姐戒藉芥界借介疥诫届巾筋斤金今津襟紧锦仅谨进靳晋禁近烬浸"],["be40","継",12,"綧",6,"綯",42],["be80","線",32,"尽劲荆兢茎睛晶鲸京惊精粳经井警景颈静境敬镜径痉靖竟竞净炯窘揪究纠玖韭久灸九酒厩救旧臼舅咎就疚鞠拘狙疽居驹菊局咀矩举沮聚拒据巨具距踞锯俱句惧炬剧捐鹃娟倦眷卷绢撅攫抉掘倔爵觉决诀绝均菌钧军君峻"],["bf40","緻",62],["bf80","縺縼",4,"繂",4,"繈",21,"俊竣浚郡骏喀咖卡咯开揩楷凯慨刊堪勘坎砍看康慷糠扛抗亢炕考拷烤靠坷苛柯棵磕颗科壳咳可渴克刻客课肯啃垦恳坑吭空恐孔控抠口扣寇枯哭窟苦酷库裤夸垮挎跨胯块筷侩快宽款匡筐狂框矿眶旷况亏盔岿窥葵奎魁傀"],["c040","繞",35,"纃",23,"纜纝纞"],["c080","纮纴纻纼绖绤绬绹缊缐缞缷缹缻",6,"罃罆",9,"罒罓馈愧溃坤昆捆困括扩廓阔垃拉喇蜡腊辣啦莱来赖蓝婪栏拦篮阑兰澜谰揽览懒缆烂滥琅榔狼廊郎朗浪捞劳牢老佬姥酪烙涝勒乐雷镭蕾磊累儡垒擂肋类泪棱楞冷厘梨犁黎篱狸离漓理李里鲤礼莉荔吏栗丽厉励砾历利傈例俐"],["c140","罖罙罛罜罝罞罠罣",4,"罫罬罭罯罰罳罵罶罷罸罺罻罼罽罿羀羂",7,"羋羍羏",4,"羕",4,"羛羜羠羢羣羥羦羨",6,"羱"],["c180","羳",4,"羺羻羾翀翂翃翄翆翇翈翉翋翍翏",4,"翖翗翙",5,"翢翣痢立粒沥隶力璃哩俩联莲连镰廉怜涟帘敛脸链恋炼练粮凉梁粱良两辆量晾亮谅撩聊僚疗燎寥辽潦了撂镣廖料列裂烈劣猎琳林磷霖临邻鳞淋凛赁吝拎玲菱零龄铃伶羚凌灵陵岭领另令溜琉榴硫馏留刘瘤流柳六龙聋咙笼窿"],["c240","翤翧翨翪翫翬翭翯翲翴",6,"翽翾翿耂耇耈耉耊耎耏耑耓耚耛耝耞耟耡耣耤耫",5,"耲耴耹耺耼耾聀聁聄聅聇聈聉聎聏聐聑聓聕聖聗"],["c280","聙聛",13,"聫",5,"聲",11,"隆垄拢陇楼娄搂篓漏陋芦卢颅庐炉掳卤虏鲁麓碌露路赂鹿潞禄录陆戮驴吕铝侣旅履屡缕虑氯律率滤绿峦挛孪滦卵乱掠略抡轮伦仑沦纶论萝螺罗逻锣箩骡裸落洛骆络妈麻玛码蚂马骂嘛吗埋买麦卖迈脉瞒馒蛮满蔓曼慢漫"],["c340","聾肁肂肅肈肊肍",5,"肔肕肗肙肞肣肦肧肨肬肰肳肵肶肸肹肻胅胇",4,"胏",6,"胘胟胠胢胣胦胮胵胷胹胻胾胿脀脁脃脄脅脇脈脋"],["c380","脌脕脗脙脛脜脝脟",12,"脭脮脰脳脴脵脷脹",4,"脿谩芒茫盲氓忙莽猫茅锚毛矛铆卯茂冒帽貌贸么玫枚梅酶霉煤没眉媒镁每美昧寐妹媚门闷们萌蒙檬盟锰猛梦孟眯醚靡糜迷谜弥米秘觅泌蜜密幂棉眠绵冕免勉娩缅面苗描瞄藐秒渺庙妙蔑灭民抿皿敏悯闽明螟鸣铭名命谬摸"],["c440","腀",5,"腇腉腍腎腏腒腖腗腘腛",4,"腡腢腣腤腦腨腪腫腬腯腲腳腵腶腷腸膁膃",4,"膉膋膌膍膎膐膒",5,"膙膚膞",4,"膤膥"],["c480","膧膩膫",7,"膴",5,"膼膽膾膿臄臅臇臈臉臋臍",6,"摹蘑模膜磨摩魔抹末莫墨默沫漠寞陌谋牟某拇牡亩姆母墓暮幕募慕木目睦牧穆拿哪呐钠那娜纳氖乃奶耐奈南男难囊挠脑恼闹淖呢馁内嫩能妮霓倪泥尼拟你匿腻逆溺蔫拈年碾撵捻念娘酿鸟尿捏聂孽啮镊镍涅您柠狞凝宁"],["c540","臔",14,"臤臥臦臨臩臫臮",4,"臵",5,"臽臿舃與",4,"舎舏舑舓舕",5,"舝舠舤舥舦舧舩舮舲舺舼舽舿"],["c580","艀艁艂艃艅艆艈艊艌艍艎艐",7,"艙艛艜艝艞艠",7,"艩拧泞牛扭钮纽脓浓农弄奴努怒女暖虐疟挪懦糯诺哦欧鸥殴藕呕偶沤啪趴爬帕怕琶拍排牌徘湃派攀潘盘磐盼畔判叛乓庞旁耪胖抛咆刨炮袍跑泡呸胚培裴赔陪配佩沛喷盆砰抨烹澎彭蓬棚硼篷膨朋鹏捧碰坯砒霹批披劈琵毗"],["c640","艪艫艬艭艱艵艶艷艸艻艼芀芁芃芅芆芇芉芌芐芓芔芕芖芚芛芞芠芢芣芧芲芵芶芺芻芼芿苀苂苃苅苆苉苐苖苙苚苝苢苧苨苩苪苬苭苮苰苲苳苵苶苸"],["c680","苺苼",4,"茊茋茍茐茒茓茖茘茙茝",9,"茩茪茮茰茲茷茻茽啤脾疲皮匹痞僻屁譬篇偏片骗飘漂瓢票撇瞥拼频贫品聘乒坪苹萍平凭瓶评屏坡泼颇婆破魄迫粕剖扑铺仆莆葡菩蒲埔朴圃普浦谱曝瀑期欺栖戚妻七凄漆柒沏其棋奇歧畦崎脐齐旗祈祁骑起岂乞企启契砌器气迄弃汽泣讫掐"],["c740","茾茿荁荂荄荅荈荊",4,"荓荕",4,"荝荢荰",6,"荹荺荾",6,"莇莈莊莋莌莍莏莐莑莔莕莖莗莙莚莝莟莡",6,"莬莭莮"],["c780","莯莵莻莾莿菂菃菄菆菈菉菋菍菎菐菑菒菓菕菗菙菚菛菞菢菣菤菦菧菨菫菬菭恰洽牵扦钎铅千迁签仟谦乾黔钱钳前潜遣浅谴堑嵌欠歉枪呛腔羌墙蔷强抢橇锹敲悄桥瞧乔侨巧鞘撬翘峭俏窍切茄且怯窃钦侵亲秦琴勤芹擒禽寝沁青轻氢倾卿清擎晴氰情顷请庆琼穷秋丘邱球求囚酋泅趋区蛆曲躯屈驱渠"],["c840","菮華菳",4,"菺菻菼菾菿萀萂萅萇萈萉萊萐萒",5,"萙萚萛萞",5,"萩",7,"萲",5,"萹萺萻萾",7,"葇葈葉"],["c880","葊",6,"葒",4,"葘葝葞葟葠葢葤",4,"葪葮葯葰葲葴葷葹葻葼取娶龋趣去圈颧权醛泉全痊拳犬券劝缺炔瘸却鹊榷确雀裙群然燃冉染瓤壤攘嚷让饶扰绕惹热壬仁人忍韧任认刃妊纫扔仍日戎茸蓉荣融熔溶容绒冗揉柔肉茹蠕儒孺如辱乳汝入褥软阮蕊瑞锐闰润若弱撒洒萨腮鳃塞赛三叁"],["c940","葽",4,"蒃蒄蒅蒆蒊蒍蒏",7,"蒘蒚蒛蒝蒞蒟蒠蒢",12,"蒰蒱蒳蒵蒶蒷蒻蒼蒾蓀蓂蓃蓅蓆蓇蓈蓋蓌蓎蓏蓒蓔蓕蓗"],["c980","蓘",4,"蓞蓡蓢蓤蓧",4,"蓭蓮蓯蓱",10,"蓽蓾蔀蔁蔂伞散桑嗓丧搔骚扫嫂瑟色涩森僧莎砂杀刹沙纱傻啥煞筛晒珊苫杉山删煽衫闪陕擅赡膳善汕扇缮墒伤商赏晌上尚裳梢捎稍烧芍勺韶少哨邵绍奢赊蛇舌舍赦摄射慑涉社设砷申呻伸身深娠绅神沈审婶甚肾慎渗声生甥牲升绳"],["ca40","蔃",8,"蔍蔎蔏蔐蔒蔔蔕蔖蔘蔙蔛蔜蔝蔞蔠蔢",8,"蔭",9,"蔾",4,"蕄蕅蕆蕇蕋",10],["ca80","蕗蕘蕚蕛蕜蕝蕟",4,"蕥蕦蕧蕩",8,"蕳蕵蕶蕷蕸蕼蕽蕿薀薁省盛剩胜圣师失狮施湿诗尸虱十石拾时什食蚀实识史矢使屎驶始式示士世柿事拭誓逝势是嗜噬适仕侍释饰氏市恃室视试收手首守寿授售受瘦兽蔬枢梳殊抒输叔舒淑疏书赎孰熟薯暑曙署蜀黍鼠属术述树束戍竖墅庶数漱"],["cb40","薂薃薆薈",6,"薐",10,"薝",6,"薥薦薧薩薫薬薭薱",5,"薸薺",6,"藂",6,"藊",4,"藑藒"],["cb80","藔藖",5,"藝",6,"藥藦藧藨藪",14,"恕刷耍摔衰甩帅栓拴霜双爽谁水睡税吮瞬顺舜说硕朔烁斯撕嘶思私司丝死肆寺嗣四伺似饲巳松耸怂颂送宋讼诵搜艘擞嗽苏酥俗素速粟僳塑溯宿诉肃酸蒜算虽隋随绥髓碎岁穗遂隧祟孙损笋蓑梭唆缩琐索锁所塌他它她塔"],["cc40","藹藺藼藽藾蘀",4,"蘆",10,"蘒蘓蘔蘕蘗",15,"蘨蘪",13,"蘹蘺蘻蘽蘾蘿虀"],["cc80","虁",11,"虒虓處",4,"虛虜虝號虠虡虣",7,"獭挞蹋踏胎苔抬台泰酞太态汰坍摊贪瘫滩坛檀痰潭谭谈坦毯袒碳探叹炭汤塘搪堂棠膛唐糖倘躺淌趟烫掏涛滔绦萄桃逃淘陶讨套特藤腾疼誊梯剔踢锑提题蹄啼体替嚏惕涕剃屉天添填田甜恬舔腆挑条迢眺跳贴铁帖厅听烃"],["cd40","虭虯虰虲",6,"蚃",6,"蚎",4,"蚔蚖",5,"蚞",4,"蚥蚦蚫蚭蚮蚲蚳蚷蚸蚹蚻",4,"蛁蛂蛃蛅蛈蛌蛍蛒蛓蛕蛖蛗蛚蛜"],["cd80","蛝蛠蛡蛢蛣蛥蛦蛧蛨蛪蛫蛬蛯蛵蛶蛷蛺蛻蛼蛽蛿蜁蜄蜅蜆蜋蜌蜎蜏蜐蜑蜔蜖汀廷停亭庭挺艇通桐酮瞳同铜彤童桶捅筒统痛偷投头透凸秃突图徒途涂屠土吐兔湍团推颓腿蜕褪退吞屯臀拖托脱鸵陀驮驼椭妥拓唾挖哇蛙洼娃瓦袜歪外豌弯湾玩顽丸烷完碗挽晚皖惋宛婉万腕汪王亡枉网往旺望忘妄威"],["ce40","蜙蜛蜝蜟蜠蜤蜦蜧蜨蜪蜫蜬蜭蜯蜰蜲蜳蜵蜶蜸蜹蜺蜼蜽蝀",6,"蝊蝋蝍蝏蝐蝑蝒蝔蝕蝖蝘蝚",5,"蝡蝢蝦",7,"蝯蝱蝲蝳蝵"],["ce80","蝷蝸蝹蝺蝿螀螁螄螆螇螉螊螌螎",4,"螔螕螖螘",6,"螠",4,"巍微危韦违桅围唯惟为潍维苇萎委伟伪尾纬未蔚味畏胃喂魏位渭谓尉慰卫瘟温蚊文闻纹吻稳紊问嗡翁瓮挝蜗涡窝我斡卧握沃巫呜钨乌污诬屋无芜梧吾吴毋武五捂午舞伍侮坞戊雾晤物勿务悟误昔熙析西硒矽晰嘻吸锡牺"],["cf40","螥螦螧螩螪螮螰螱螲螴螶螷螸螹螻螼螾螿蟁",4,"蟇蟈蟉蟌",4,"蟔",6,"蟜蟝蟞蟟蟡蟢蟣蟤蟦蟧蟨蟩蟫蟬蟭蟯",9],["cf80","蟺蟻蟼蟽蟿蠀蠁蠂蠄",5,"蠋",7,"蠔蠗蠘蠙蠚蠜",4,"蠣稀息希悉膝夕惜熄烯溪汐犀檄袭席习媳喜铣洗系隙戏细瞎虾匣霞辖暇峡侠狭下厦夏吓掀锨先仙鲜纤咸贤衔舷闲涎弦嫌显险现献县腺馅羡宪陷限线相厢镶香箱襄湘乡翔祥详想响享项巷橡像向象萧硝霄削哮嚣销消宵淆晓"],["d040","蠤",13,"蠳",5,"蠺蠻蠽蠾蠿衁衂衃衆",5,"衎",5,"衕衖衘衚",6,"衦衧衪衭衯衱衳衴衵衶衸衹衺"],["d080","衻衼袀袃袆袇袉袊袌袎袏袐袑袓袔袕袗",4,"袝",4,"袣袥",5,"小孝校肖啸笑效楔些歇蝎鞋协挟携邪斜胁谐写械卸蟹懈泄泻谢屑薪芯锌欣辛新忻心信衅星腥猩惺兴刑型形邢行醒幸杏性姓兄凶胸匈汹雄熊休修羞朽嗅锈秀袖绣墟戌需虚嘘须徐许蓄酗叙旭序畜恤絮婿绪续轩喧宣悬旋玄"],["d140","袬袮袯袰袲",4,"袸袹袺袻袽袾袿裀裃裄裇裈裊裋裌裍裏裐裑裓裖裗裚",4,"裠裡裦裧裩",6,"裲裵裶裷裺裻製裿褀褁褃",5],["d180","褉褋",4,"褑褔",4,"褜",4,"褢褣褤褦褧褨褩褬褭褮褯褱褲褳褵褷选癣眩绚靴薛学穴雪血勋熏循旬询寻驯巡殉汛训讯逊迅压押鸦鸭呀丫芽牙蚜崖衙涯雅哑亚讶焉咽阉烟淹盐严研蜒岩延言颜阎炎沿奄掩眼衍演艳堰燕厌砚雁唁彦焰宴谚验殃央鸯秧杨扬佯疡羊洋阳氧仰痒养样漾邀腰妖瑶"],["d240","褸",8,"襂襃襅",24,"襠",5,"襧",19,"襼"],["d280","襽襾覀覂覄覅覇",26,"摇尧遥窑谣姚咬舀药要耀椰噎耶爷野冶也页掖业叶曳腋夜液一壹医揖铱依伊衣颐夷遗移仪胰疑沂宜姨彝椅蚁倚已乙矣以艺抑易邑屹亿役臆逸肄疫亦裔意毅忆义益溢诣议谊译异翼翌绎茵荫因殷音阴姻吟银淫寅饮尹引隐"],["d340","覢",30,"觃觍觓觔觕觗觘觙觛觝觟觠觡觢觤觧觨觩觪觬觭觮觰觱觲觴",6],["d380","觻",4,"訁",5,"計",21,"印英樱婴鹰应缨莹萤营荧蝇迎赢盈影颖硬映哟拥佣臃痈庸雍踊蛹咏泳涌永恿勇用幽优悠忧尤由邮铀犹油游酉有友右佑釉诱又幼迂淤于盂榆虞愚舆余俞逾鱼愉渝渔隅予娱雨与屿禹宇语羽玉域芋郁吁遇喻峪御愈欲狱育誉"],["d440","訞",31,"訿",8,"詉",21],["d480","詟",25,"詺",6,"浴寓裕预豫驭鸳渊冤元垣袁原援辕园员圆猿源缘远苑愿怨院曰约越跃钥岳粤月悦阅耘云郧匀陨允运蕴酝晕韵孕匝砸杂栽哉灾宰载再在咱攒暂赞赃脏葬遭糟凿藻枣早澡蚤躁噪造皂灶燥责择则泽贼怎增憎曾赠扎喳渣札轧"],["d540","誁",7,"誋",7,"誔",46],["d580","諃",32,"铡闸眨栅榨咋乍炸诈摘斋宅窄债寨瞻毡詹粘沾盏斩辗崭展蘸栈占战站湛绽樟章彰漳张掌涨杖丈帐账仗胀瘴障招昭找沼赵照罩兆肇召遮折哲蛰辙者锗蔗这浙珍斟真甄砧臻贞针侦枕疹诊震振镇阵蒸挣睁征狰争怔整拯正政"],["d640","諤",34,"謈",27],["d680","謤謥謧",30,"帧症郑证芝枝支吱蜘知肢脂汁之织职直植殖执值侄址指止趾只旨纸志挚掷至致置帜峙制智秩稚质炙痔滞治窒中盅忠钟衷终种肿重仲众舟周州洲诌粥轴肘帚咒皱宙昼骤珠株蛛朱猪诸诛逐竹烛煮拄瞩嘱主著柱助蛀贮铸筑"],["d740","譆",31,"譧",4,"譭",25],["d780","讇",24,"讬讱讻诇诐诪谉谞住注祝驻抓爪拽专砖转撰赚篆桩庄装妆撞壮状椎锥追赘坠缀谆准捉拙卓桌琢茁酌啄着灼浊兹咨资姿滋淄孜紫仔籽滓子自渍字鬃棕踪宗综总纵邹走奏揍租足卒族祖诅阻组钻纂嘴醉最罪尊遵昨左佐柞做作坐座"],["d840","谸",8,"豂豃豄豅豈豊豋豍",7,"豖豗豘豙豛",5,"豣",6,"豬",6,"豴豵豶豷豻",6,"貃貄貆貇"],["d880","貈貋貍",6,"貕貖貗貙",20,"亍丌兀丐廿卅丕亘丞鬲孬噩丨禺丿匕乇夭爻卮氐囟胤馗毓睾鼗丶亟鼐乜乩亓芈孛啬嘏仄厍厝厣厥厮靥赝匚叵匦匮匾赜卦卣刂刈刎刭刳刿剀剌剞剡剜蒯剽劂劁劐劓冂罔亻仃仉仂仨仡仫仞伛仳伢佤仵伥伧伉伫佞佧攸佚佝"],["d940","貮",62],["d980","賭",32,"佟佗伲伽佶佴侑侉侃侏佾佻侪佼侬侔俦俨俪俅俚俣俜俑俟俸倩偌俳倬倏倮倭俾倜倌倥倨偾偃偕偈偎偬偻傥傧傩傺僖儆僭僬僦僮儇儋仝氽佘佥俎龠汆籴兮巽黉馘冁夔勹匍訇匐凫夙兕亠兖亳衮袤亵脔裒禀嬴蠃羸冫冱冽冼"],["da40","贎",14,"贠赑赒赗赟赥赨赩赪赬赮赯赱赲赸",8,"趂趃趆趇趈趉趌",4,"趒趓趕",9,"趠趡"],["da80","趢趤",12,"趲趶趷趹趻趽跀跁跂跅跇跈跉跊跍跐跒跓跔凇冖冢冥讠讦讧讪讴讵讷诂诃诋诏诎诒诓诔诖诘诙诜诟诠诤诨诩诮诰诳诶诹诼诿谀谂谄谇谌谏谑谒谔谕谖谙谛谘谝谟谠谡谥谧谪谫谮谯谲谳谵谶卩卺阝阢阡阱阪阽阼陂陉陔陟陧陬陲陴隈隍隗隰邗邛邝邙邬邡邴邳邶邺"],["db40","跕跘跙跜跠跡跢跥跦跧跩跭跮跰跱跲跴跶跼跾",6,"踆踇踈踋踍踎踐踑踒踓踕",7,"踠踡踤",4,"踫踭踰踲踳踴踶踷踸踻踼踾"],["db80","踿蹃蹅蹆蹌",4,"蹓",5,"蹚",11,"蹧蹨蹪蹫蹮蹱邸邰郏郅邾郐郄郇郓郦郢郜郗郛郫郯郾鄄鄢鄞鄣鄱鄯鄹酃酆刍奂劢劬劭劾哿勐勖勰叟燮矍廴凵凼鬯厶弁畚巯坌垩垡塾墼壅壑圩圬圪圳圹圮圯坜圻坂坩垅坫垆坼坻坨坭坶坳垭垤垌垲埏垧垴垓垠埕埘埚埙埒垸埴埯埸埤埝"],["dc40","蹳蹵蹷",4,"蹽蹾躀躂躃躄躆躈",6,"躑躒躓躕",6,"躝躟",11,"躭躮躰躱躳",6,"躻",7],["dc80","軃",10,"軏",21,"堋堍埽埭堀堞堙塄堠塥塬墁墉墚墀馨鼙懿艹艽艿芏芊芨芄芎芑芗芙芫芸芾芰苈苊苣芘芷芮苋苌苁芩芴芡芪芟苄苎芤苡茉苷苤茏茇苜苴苒苘茌苻苓茑茚茆茔茕苠苕茜荑荛荜茈莒茼茴茱莛荞茯荏荇荃荟荀茗荠茭茺茳荦荥"],["dd40","軥",62],["dd80","輤",32,"荨茛荩荬荪荭荮莰荸莳莴莠莪莓莜莅荼莶莩荽莸荻莘莞莨莺莼菁萁菥菘堇萘萋菝菽菖萜萸萑萆菔菟萏萃菸菹菪菅菀萦菰菡葜葑葚葙葳蒇蒈葺蒉葸萼葆葩葶蒌蒎萱葭蓁蓍蓐蓦蒽蓓蓊蒿蒺蓠蒡蒹蒴蒗蓥蓣蔌甍蔸蓰蔹蔟蔺"],["de40","轅",32,"轪辀辌辒辝辠辡辢辤辥辦辧辪辬辭辮辯農辳辴辵辷辸辺辻込辿迀迃迆"],["de80","迉",4,"迏迒迖迗迚迠迡迣迧迬迯迱迲迴迵迶迺迻迼迾迿逇逈逌逎逓逕逘蕖蔻蓿蓼蕙蕈蕨蕤蕞蕺瞢蕃蕲蕻薤薨薇薏蕹薮薜薅薹薷薰藓藁藜藿蘧蘅蘩蘖蘼廾弈夼奁耷奕奚奘匏尢尥尬尴扌扪抟抻拊拚拗拮挢拶挹捋捃掭揶捱捺掎掴捭掬掊捩掮掼揲揸揠揿揄揞揎摒揆掾摅摁搋搛搠搌搦搡摞撄摭撖"],["df40","這逜連逤逥逧",5,"逰",4,"逷逹逺逽逿遀遃遅遆遈",4,"過達違遖遙遚遜",5,"遤遦遧適遪遫遬遯",4,"遶",6,"遾邁"],["df80","還邅邆邇邉邊邌",4,"邒邔邖邘邚邜邞邟邠邤邥邧邨邩邫邭邲邷邼邽邿郀摺撷撸撙撺擀擐擗擤擢攉攥攮弋忒甙弑卟叱叽叩叨叻吒吖吆呋呒呓呔呖呃吡呗呙吣吲咂咔呷呱呤咚咛咄呶呦咝哐咭哂咴哒咧咦哓哔呲咣哕咻咿哌哙哚哜咩咪咤哝哏哞唛哧唠哽唔哳唢唣唏唑唧唪啧喏喵啉啭啁啕唿啐唼"],["e040","郂郃郆郈郉郋郌郍郒郔郕郖郘郙郚郞郟郠郣郤郥郩郪郬郮郰郱郲郳郵郶郷郹郺郻郼郿鄀鄁鄃鄅",19,"鄚鄛鄜"],["e080","鄝鄟鄠鄡鄤",10,"鄰鄲",6,"鄺",8,"酄唷啖啵啶啷唳唰啜喋嗒喃喱喹喈喁喟啾嗖喑啻嗟喽喾喔喙嗪嗷嗉嘟嗑嗫嗬嗔嗦嗝嗄嗯嗥嗲嗳嗌嗍嗨嗵嗤辔嘞嘈嘌嘁嘤嘣嗾嘀嘧嘭噘嘹噗嘬噍噢噙噜噌噔嚆噤噱噫噻噼嚅嚓嚯囔囗囝囡囵囫囹囿圄圊圉圜帏帙帔帑帱帻帼"],["e140","酅酇酈酑酓酔酕酖酘酙酛酜酟酠酦酧酨酫酭酳酺酻酼醀",4,"醆醈醊醎醏醓",6,"醜",5,"醤",5,"醫醬醰醱醲醳醶醷醸醹醻"],["e180","醼",10,"釈釋釐釒",9,"針",8,"帷幄幔幛幞幡岌屺岍岐岖岈岘岙岑岚岜岵岢岽岬岫岱岣峁岷峄峒峤峋峥崂崃崧崦崮崤崞崆崛嵘崾崴崽嵬嵛嵯嵝嵫嵋嵊嵩嵴嶂嶙嶝豳嶷巅彳彷徂徇徉後徕徙徜徨徭徵徼衢彡犭犰犴犷犸狃狁狎狍狒狨狯狩狲狴狷猁狳猃狺"],["e240","釦",62],["e280","鈥",32,"狻猗猓猡猊猞猝猕猢猹猥猬猸猱獐獍獗獠獬獯獾舛夥飧夤夂饣饧",5,"饴饷饽馀馄馇馊馍馐馑馓馔馕庀庑庋庖庥庠庹庵庾庳赓廒廑廛廨廪膺忄忉忖忏怃忮怄忡忤忾怅怆忪忭忸怙怵怦怛怏怍怩怫怊怿怡恸恹恻恺恂"],["e340","鉆",45,"鉵",16],["e380","銆",7,"銏",24,"恪恽悖悚悭悝悃悒悌悛惬悻悱惝惘惆惚悴愠愦愕愣惴愀愎愫慊慵憬憔憧憷懔懵忝隳闩闫闱闳闵闶闼闾阃阄阆阈阊阋阌阍阏阒阕阖阗阙阚丬爿戕氵汔汜汊沣沅沐沔沌汨汩汴汶沆沩泐泔沭泷泸泱泗沲泠泖泺泫泮沱泓泯泾"],["e440","銨",5,"銯",24,"鋉",31],["e480","鋩",32,"洹洧洌浃浈洇洄洙洎洫浍洮洵洚浏浒浔洳涑浯涞涠浞涓涔浜浠浼浣渚淇淅淞渎涿淠渑淦淝淙渖涫渌涮渫湮湎湫溲湟溆湓湔渲渥湄滟溱溘滠漭滢溥溧溽溻溷滗溴滏溏滂溟潢潆潇漤漕滹漯漶潋潴漪漉漩澉澍澌潸潲潼潺濑"],["e540","錊",51,"錿",10],["e580","鍊",31,"鍫濉澧澹澶濂濡濮濞濠濯瀚瀣瀛瀹瀵灏灞宀宄宕宓宥宸甯骞搴寤寮褰寰蹇謇辶迓迕迥迮迤迩迦迳迨逅逄逋逦逑逍逖逡逵逶逭逯遄遑遒遐遨遘遢遛暹遴遽邂邈邃邋彐彗彖彘尻咫屐屙孱屣屦羼弪弩弭艴弼鬻屮妁妃妍妩妪妣"],["e640","鍬",34,"鎐",27],["e680","鎬",29,"鏋鏌鏍妗姊妫妞妤姒妲妯姗妾娅娆姝娈姣姘姹娌娉娲娴娑娣娓婀婧婊婕娼婢婵胬媪媛婷婺媾嫫媲嫒嫔媸嫠嫣嫱嫖嫦嫘嫜嬉嬗嬖嬲嬷孀尕尜孚孥孳孑孓孢驵驷驸驺驿驽骀骁骅骈骊骐骒骓骖骘骛骜骝骟骠骢骣骥骧纟纡纣纥纨纩"],["e740","鏎",7,"鏗",54],["e780","鐎",32,"纭纰纾绀绁绂绉绋绌绐绔绗绛绠绡绨绫绮绯绱绲缍绶绺绻绾缁缂缃缇缈缋缌缏缑缒缗缙缜缛缟缡",6,"缪缫缬缭缯",4,"缵幺畿巛甾邕玎玑玮玢玟珏珂珑玷玳珀珉珈珥珙顼琊珩珧珞玺珲琏琪瑛琦琥琨琰琮琬"],["e840","鐯",14,"鐿",43,"鑬鑭鑮鑯"],["e880","鑰",20,"钑钖钘铇铏铓铔铚铦铻锜锠琛琚瑁瑜瑗瑕瑙瑷瑭瑾璜璎璀璁璇璋璞璨璩璐璧瓒璺韪韫韬杌杓杞杈杩枥枇杪杳枘枧杵枨枞枭枋杷杼柰栉柘栊柩枰栌柙枵柚枳柝栀柃枸柢栎柁柽栲栳桠桡桎桢桄桤梃栝桕桦桁桧桀栾桊桉栩梵梏桴桷梓桫棂楮棼椟椠棹"],["e940","锧锳锽镃镈镋镕镚镠镮镴镵長",7,"門",42],["e980","閫",32,"椤棰椋椁楗棣椐楱椹楠楂楝榄楫榀榘楸椴槌榇榈槎榉楦楣楹榛榧榻榫榭槔榱槁槊槟榕槠榍槿樯槭樗樘橥槲橄樾檠橐橛樵檎橹樽樨橘橼檑檐檩檗檫猷獒殁殂殇殄殒殓殍殚殛殡殪轫轭轱轲轳轵轶轸轷轹轺轼轾辁辂辄辇辋"],["ea40","闌",27,"闬闿阇阓阘阛阞阠阣",6,"阫阬阭阯阰阷阸阹阺阾陁陃陊陎陏陑陒陓陖陗"],["ea80","陘陙陚陜陝陞陠陣陥陦陫陭",4,"陳陸",12,"隇隉隊辍辎辏辘辚軎戋戗戛戟戢戡戥戤戬臧瓯瓴瓿甏甑甓攴旮旯旰昊昙杲昃昕昀炅曷昝昴昱昶昵耆晟晔晁晏晖晡晗晷暄暌暧暝暾曛曜曦曩贲贳贶贻贽赀赅赆赈赉赇赍赕赙觇觊觋觌觎觏觐觑牮犟牝牦牯牾牿犄犋犍犏犒挈挲掰"],["eb40","隌階隑隒隓隕隖隚際隝",9,"隨",7,"隱隲隴隵隷隸隺隻隿雂雃雈雊雋雐雑雓雔雖",9,"雡",6,"雫"],["eb80","雬雭雮雰雱雲雴雵雸雺電雼雽雿霂霃霅霊霋霌霐霑霒霔霕霗",4,"霝霟霠搿擘耄毪毳毽毵毹氅氇氆氍氕氘氙氚氡氩氤氪氲攵敕敫牍牒牖爰虢刖肟肜肓肼朊肽肱肫肭肴肷胧胨胩胪胛胂胄胙胍胗朐胝胫胱胴胭脍脎胲胼朕脒豚脶脞脬脘脲腈腌腓腴腙腚腱腠腩腼腽腭腧塍媵膈膂膑滕膣膪臌朦臊膻"],["ec40","霡",8,"霫霬霮霯霱霳",4,"霺霻霼霽霿",18,"靔靕靗靘靚靜靝靟靣靤靦靧靨靪",7],["ec80","靲靵靷",4,"靽",7,"鞆",4,"鞌鞎鞏鞐鞓鞕鞖鞗鞙",4,"臁膦欤欷欹歃歆歙飑飒飓飕飙飚殳彀毂觳斐齑斓於旆旄旃旌旎旒旖炀炜炖炝炻烀炷炫炱烨烊焐焓焖焯焱煳煜煨煅煲煊煸煺熘熳熵熨熠燠燔燧燹爝爨灬焘煦熹戾戽扃扈扉礻祀祆祉祛祜祓祚祢祗祠祯祧祺禅禊禚禧禳忑忐"],["ed40","鞞鞟鞡鞢鞤",6,"鞬鞮鞰鞱鞳鞵",46],["ed80","韤韥韨韮",4,"韴韷",23,"怼恝恚恧恁恙恣悫愆愍慝憩憝懋懑戆肀聿沓泶淼矶矸砀砉砗砘砑斫砭砜砝砹砺砻砟砼砥砬砣砩硎硭硖硗砦硐硇硌硪碛碓碚碇碜碡碣碲碹碥磔磙磉磬磲礅磴礓礤礞礴龛黹黻黼盱眄眍盹眇眈眚眢眙眭眦眵眸睐睑睇睃睚睨"],["ee40","頏",62],["ee80","顎",32,"睢睥睿瞍睽瞀瞌瞑瞟瞠瞰瞵瞽町畀畎畋畈畛畲畹疃罘罡罟詈罨罴罱罹羁罾盍盥蠲钅钆钇钋钊钌钍钏钐钔钗钕钚钛钜钣钤钫钪钭钬钯钰钲钴钶",4,"钼钽钿铄铈",6,"铐铑铒铕铖铗铙铘铛铞铟铠铢铤铥铧铨铪"],["ef40","顯",5,"颋颎颒颕颙颣風",37,"飏飐飔飖飗飛飜飝飠",4],["ef80","飥飦飩",30,"铩铫铮铯铳铴铵铷铹铼铽铿锃锂锆锇锉锊锍锎锏锒",4,"锘锛锝锞锟锢锪锫锩锬锱锲锴锶锷锸锼锾锿镂锵镄镅镆镉镌镎镏镒镓镔镖镗镘镙镛镞镟镝镡镢镤",8,"镯镱镲镳锺矧矬雉秕秭秣秫稆嵇稃稂稞稔"],["f040","餈",4,"餎餏餑",28,"餯",26],["f080","饊",9,"饖",12,"饤饦饳饸饹饻饾馂馃馉稹稷穑黏馥穰皈皎皓皙皤瓞瓠甬鸠鸢鸨",4,"鸲鸱鸶鸸鸷鸹鸺鸾鹁鹂鹄鹆鹇鹈鹉鹋鹌鹎鹑鹕鹗鹚鹛鹜鹞鹣鹦",6,"鹱鹭鹳疒疔疖疠疝疬疣疳疴疸痄疱疰痃痂痖痍痣痨痦痤痫痧瘃痱痼痿瘐瘀瘅瘌瘗瘊瘥瘘瘕瘙"],["f140","馌馎馚",10,"馦馧馩",47],["f180","駙",32,"瘛瘼瘢瘠癀瘭瘰瘿瘵癃瘾瘳癍癞癔癜癖癫癯翊竦穸穹窀窆窈窕窦窠窬窨窭窳衤衩衲衽衿袂袢裆袷袼裉裢裎裣裥裱褚裼裨裾裰褡褙褓褛褊褴褫褶襁襦襻疋胥皲皴矜耒耔耖耜耠耢耥耦耧耩耨耱耋耵聃聆聍聒聩聱覃顸颀颃"],["f240","駺",62],["f280","騹",32,"颉颌颍颏颔颚颛颞颟颡颢颥颦虍虔虬虮虿虺虼虻蚨蚍蚋蚬蚝蚧蚣蚪蚓蚩蚶蛄蚵蛎蚰蚺蚱蚯蛉蛏蚴蛩蛱蛲蛭蛳蛐蜓蛞蛴蛟蛘蛑蜃蜇蛸蜈蜊蜍蜉蜣蜻蜞蜥蜮蜚蜾蝈蜴蜱蜩蜷蜿螂蜢蝽蝾蝻蝠蝰蝌蝮螋蝓蝣蝼蝤蝙蝥螓螯螨蟒"],["f340","驚",17,"驲骃骉骍骎骔骕骙骦骩",6,"骲骳骴骵骹骻骽骾骿髃髄髆",4,"髍髎髏髐髒體髕髖髗髙髚髛髜"],["f380","髝髞髠髢髣髤髥髧髨髩髪髬髮髰",8,"髺髼",6,"鬄鬅鬆蟆螈螅螭螗螃螫蟥螬螵螳蟋蟓螽蟑蟀蟊蟛蟪蟠蟮蠖蠓蟾蠊蠛蠡蠹蠼缶罂罄罅舐竺竽笈笃笄笕笊笫笏筇笸笪笙笮笱笠笥笤笳笾笞筘筚筅筵筌筝筠筮筻筢筲筱箐箦箧箸箬箝箨箅箪箜箢箫箴篑篁篌篝篚篥篦篪簌篾篼簏簖簋"],["f440","鬇鬉",5,"鬐鬑鬒鬔",10,"鬠鬡鬢鬤",10,"鬰鬱鬳",7,"鬽鬾鬿魀魆魊魋魌魎魐魒魓魕",5],["f480","魛",32,"簟簪簦簸籁籀臾舁舂舄臬衄舡舢舣舭舯舨舫舸舻舳舴舾艄艉艋艏艚艟艨衾袅袈裘裟襞羝羟羧羯羰羲籼敉粑粝粜粞粢粲粼粽糁糇糌糍糈糅糗糨艮暨羿翎翕翥翡翦翩翮翳糸絷綦綮繇纛麸麴赳趄趔趑趱赧赭豇豉酊酐酎酏酤"],["f540","魼",62],["f580","鮻",32,"酢酡酰酩酯酽酾酲酴酹醌醅醐醍醑醢醣醪醭醮醯醵醴醺豕鹾趸跫踅蹙蹩趵趿趼趺跄跖跗跚跞跎跏跛跆跬跷跸跣跹跻跤踉跽踔踝踟踬踮踣踯踺蹀踹踵踽踱蹉蹁蹂蹑蹒蹊蹰蹶蹼蹯蹴躅躏躔躐躜躞豸貂貊貅貘貔斛觖觞觚觜"],["f640","鯜",62],["f680","鰛",32,"觥觫觯訾謦靓雩雳雯霆霁霈霏霎霪霭霰霾龀龃龅",5,"龌黾鼋鼍隹隼隽雎雒瞿雠銎銮鋈錾鍪鏊鎏鐾鑫鱿鲂鲅鲆鲇鲈稣鲋鲎鲐鲑鲒鲔鲕鲚鲛鲞",5,"鲥",4,"鲫鲭鲮鲰",7,"鲺鲻鲼鲽鳄鳅鳆鳇鳊鳋"],["f740","鰼",62],["f780","鱻鱽鱾鲀鲃鲄鲉鲊鲌鲏鲓鲖鲗鲘鲙鲝鲪鲬鲯鲹鲾",4,"鳈鳉鳑鳒鳚鳛鳠鳡鳌",4,"鳓鳔鳕鳗鳘鳙鳜鳝鳟鳢靼鞅鞑鞒鞔鞯鞫鞣鞲鞴骱骰骷鹘骶骺骼髁髀髅髂髋髌髑魅魃魇魉魈魍魑飨餍餮饕饔髟髡髦髯髫髻髭髹鬈鬏鬓鬟鬣麽麾縻麂麇麈麋麒鏖麝麟黛黜黝黠黟黢黩黧黥黪黯鼢鼬鼯鼹鼷鼽鼾齄"],["f840","鳣",62],["f880","鴢",32],["f940","鵃",62],["f980","鶂",32],["fa40","鶣",62],["fa80","鷢",32],["fb40","鸃",27,"鸤鸧鸮鸰鸴鸻鸼鹀鹍鹐鹒鹓鹔鹖鹙鹝鹟鹠鹡鹢鹥鹮鹯鹲鹴",9,"麀"],["fb80","麁麃麄麅麆麉麊麌",5,"麔",8,"麞麠",5,"麧麨麩麪"],["fc40","麫",8,"麵麶麷麹麺麼麿",4,"黅黆黇黈黊黋黌黐黒黓黕黖黗黙黚點黡黣黤黦黨黫黬黭黮黰",8,"黺黽黿",6],["fc80","鼆",4,"鼌鼏鼑鼒鼔鼕鼖鼘鼚",5,"鼡鼣",8,"鼭鼮鼰鼱"],["fd40","鼲",4,"鼸鼺鼼鼿",4,"齅",10,"齒",38],["fd80","齹",5,"龁龂龍",11,"龜龝龞龡",4,"郎凉秊裏隣"],["fe40","兀嗀﨎﨏﨑﨓﨔礼﨟蘒﨡﨣﨤﨧﨨﨩"]]')},21166:Wt=>{"use strict";Wt.exports=JSON.parse('[["0","\\u0000",127],["8141","갂갃갅갆갋",4,"갘갞갟갡갢갣갥",6,"갮갲갳갴"],["8161","갵갶갷갺갻갽갾갿걁",9,"걌걎",5,"걕"],["8181","걖걗걙걚걛걝",18,"걲걳걵걶걹걻",4,"겂겇겈겍겎겏겑겒겓겕",6,"겞겢",5,"겫겭겮겱",6,"겺겾겿곀곂곃곅곆곇곉곊곋곍",7,"곖곘",7,"곢곣곥곦곩곫곭곮곲곴곷",4,"곾곿괁괂괃괅괇",4,"괎괐괒괓"],["8241","괔괕괖괗괙괚괛괝괞괟괡",7,"괪괫괮",5],["8261","괶괷괹괺괻괽",6,"굆굈굊",5,"굑굒굓굕굖굗"],["8281","굙",7,"굢굤",7,"굮굯굱굲굷굸굹굺굾궀궃",4,"궊궋궍궎궏궑",10,"궞",5,"궥",17,"궸",7,"귂귃귅귆귇귉",6,"귒귔",7,"귝귞귟귡귢귣귥",18],["8341","귺귻귽귾긂",5,"긊긌긎",5,"긕",7],["8361","긝",18,"긲긳긵긶긹긻긼"],["8381","긽긾긿깂깄깇깈깉깋깏깑깒깓깕깗",4,"깞깢깣깤깦깧깪깫깭깮깯깱",6,"깺깾",5,"꺆",5,"꺍",46,"꺿껁껂껃껅",6,"껎껒",5,"껚껛껝",8],["8441","껦껧껩껪껬껮",5,"껵껶껷껹껺껻껽",8],["8461","꼆꼉꼊꼋꼌꼎꼏꼑",18],["8481","꼤",7,"꼮꼯꼱꼳꼵",6,"꼾꽀꽄꽅꽆꽇꽊",5,"꽑",10,"꽞",5,"꽦",18,"꽺",5,"꾁꾂꾃꾅꾆꾇꾉",6,"꾒꾓꾔꾖",5,"꾝",26,"꾺꾻꾽꾾"],["8541","꾿꿁",5,"꿊꿌꿏",4,"꿕",6,"꿝",4],["8561","꿢",5,"꿪",5,"꿲꿳꿵꿶꿷꿹",6,"뀂뀃"],["8581","뀅",6,"뀍뀎뀏뀑뀒뀓뀕",6,"뀞",9,"뀩",26,"끆끇끉끋끍끏끐끑끒끖끘끚끛끜끞",29,"끾끿낁낂낃낅",6,"낎낐낒",5,"낛낝낞낣낤"],["8641","낥낦낧낪낰낲낶낷낹낺낻낽",6,"냆냊",5,"냒"],["8661","냓냕냖냗냙",6,"냡냢냣냤냦",10],["8681","냱",22,"넊넍넎넏넑넔넕넖넗넚넞",4,"넦넧넩넪넫넭",6,"넶넺",5,"녂녃녅녆녇녉",6,"녒녓녖녗녙녚녛녝녞녟녡",22,"녺녻녽녾녿놁놃",4,"놊놌놎놏놐놑놕놖놗놙놚놛놝"],["8741","놞",9,"놩",15],["8761","놹",18,"뇍뇎뇏뇑뇒뇓뇕"],["8781","뇖",5,"뇞뇠",7,"뇪뇫뇭뇮뇯뇱",7,"뇺뇼뇾",5,"눆눇눉눊눍",6,"눖눘눚",5,"눡",18,"눵",6,"눽",26,"뉙뉚뉛뉝뉞뉟뉡",6,"뉪",4],["8841","뉯",4,"뉶",5,"뉽",6,"늆늇늈늊",4],["8861","늏늒늓늕늖늗늛",4,"늢늤늧늨늩늫늭늮늯늱늲늳늵늶늷"],["8881","늸",15,"닊닋닍닎닏닑닓",4,"닚닜닞닟닠닡닣닧닩닪닰닱닲닶닼닽닾댂댃댅댆댇댉",6,"댒댖",5,"댝",54,"덗덙덚덝덠덡덢덣"],["8941","덦덨덪덬덭덯덲덳덵덶덷덹",6,"뎂뎆",5,"뎍"],["8961","뎎뎏뎑뎒뎓뎕",10,"뎢",5,"뎩뎪뎫뎭"],["8981","뎮",21,"돆돇돉돊돍돏돑돒돓돖돘돚돜돞돟돡돢돣돥돦돧돩",18,"돽",18,"됑",6,"됙됚됛됝됞됟됡",6,"됪됬",7,"됵",15],["8a41","둅",10,"둒둓둕둖둗둙",6,"둢둤둦"],["8a61","둧",4,"둭",18,"뒁뒂"],["8a81","뒃",4,"뒉",19,"뒞",5,"뒥뒦뒧뒩뒪뒫뒭",7,"뒶뒸뒺",5,"듁듂듃듅듆듇듉",6,"듑듒듓듔듖",5,"듞듟듡듢듥듧",4,"듮듰듲",5,"듹",26,"딖딗딙딚딝"],["8b41","딞",5,"딦딫",4,"딲딳딵딶딷딹",6,"땂땆"],["8b61","땇땈땉땊땎땏땑땒땓땕",6,"땞땢",8],["8b81","땫",52,"떢떣떥떦떧떩떬떭떮떯떲떶",4,"떾떿뗁뗂뗃뗅",6,"뗎뗒",5,"뗙",18,"뗭",18],["8c41","똀",15,"똒똓똕똖똗똙",4],["8c61","똞",6,"똦",5,"똭",6,"똵",5],["8c81","똻",12,"뙉",26,"뙥뙦뙧뙩",50,"뚞뚟뚡뚢뚣뚥",5,"뚭뚮뚯뚰뚲",16],["8d41","뛃",16,"뛕",8],["8d61","뛞",17,"뛱뛲뛳뛵뛶뛷뛹뛺"],["8d81","뛻",4,"뜂뜃뜄뜆",33,"뜪뜫뜭뜮뜱",6,"뜺뜼",7,"띅띆띇띉띊띋띍",6,"띖",9,"띡띢띣띥띦띧띩",6,"띲띴띶",5,"띾띿랁랂랃랅",6,"랎랓랔랕랚랛랝랞"],["8e41","랟랡",6,"랪랮",5,"랶랷랹",8],["8e61","럂",4,"럈럊",19],["8e81","럞",13,"럮럯럱럲럳럵",6,"럾렂",4,"렊렋렍렎렏렑",6,"렚렜렞",5,"렦렧렩렪렫렭",6,"렶렺",5,"롁롂롃롅",11,"롒롔",7,"롞롟롡롢롣롥",6,"롮롰롲",5,"롹롺롻롽",7],["8f41","뢅",7,"뢎",17],["8f61","뢠",7,"뢩",6,"뢱뢲뢳뢵뢶뢷뢹",4],["8f81","뢾뢿룂룄룆",5,"룍룎룏룑룒룓룕",7,"룞룠룢",5,"룪룫룭룮룯룱",6,"룺룼룾",5,"뤅",18,"뤙",6,"뤡",26,"뤾뤿륁륂륃륅",6,"륍륎륐륒",5],["9041","륚륛륝륞륟륡",6,"륪륬륮",5,"륶륷륹륺륻륽"],["9061","륾",5,"릆릈릋릌릏",15],["9081","릟",12,"릮릯릱릲릳릵",6,"릾맀맂",5,"맊맋맍맓",4,"맚맜맟맠맢맦맧맩맪맫맭",6,"맶맻",4,"먂",5,"먉",11,"먖",33,"먺먻먽먾먿멁멃멄멅멆"],["9141","멇멊멌멏멐멑멒멖멗멙멚멛멝",6,"멦멪",5],["9161","멲멳멵멶멷멹",9,"몆몈몉몊몋몍",5],["9181","몓",20,"몪몭몮몯몱몳",4,"몺몼몾",5,"뫅뫆뫇뫉",14,"뫚",33,"뫽뫾뫿묁묂묃묅",7,"묎묐묒",5,"묙묚묛묝묞묟묡",6],["9241","묨묪묬",7,"묷묹묺묿",4,"뭆뭈뭊뭋뭌뭎뭑뭒"],["9261","뭓뭕뭖뭗뭙",7,"뭢뭤",7,"뭭",4],["9281","뭲",21,"뮉뮊뮋뮍뮎뮏뮑",18,"뮥뮦뮧뮩뮪뮫뮭",6,"뮵뮶뮸",7,"믁믂믃믅믆믇믉",6,"믑믒믔",35,"믺믻믽믾밁"],["9341","밃",4,"밊밎밐밒밓밙밚밠밡밢밣밦밨밪밫밬밮밯밲밳밵"],["9361","밶밷밹",6,"뱂뱆뱇뱈뱊뱋뱎뱏뱑",8],["9381","뱚뱛뱜뱞",37,"벆벇벉벊벍벏",4,"벖벘벛",4,"벢벣벥벦벩",6,"벲벶",5,"벾벿볁볂볃볅",7,"볎볒볓볔볖볗볙볚볛볝",22,"볷볹볺볻볽"],["9441","볾",5,"봆봈봊",5,"봑봒봓봕",8],["9461","봞",5,"봥",6,"봭",12],["9481","봺",5,"뵁",6,"뵊뵋뵍뵎뵏뵑",6,"뵚",9,"뵥뵦뵧뵩",22,"붂붃붅붆붋",4,"붒붔붖붗붘붛붝",6,"붥",10,"붱",6,"붹",24],["9541","뷒뷓뷖뷗뷙뷚뷛뷝",11,"뷪",5,"뷱"],["9561","뷲뷳뷵뷶뷷뷹",6,"븁븂븄븆",5,"븎븏븑븒븓"],["9581","븕",6,"븞븠",35,"빆빇빉빊빋빍빏",4,"빖빘빜빝빞빟빢빣빥빦빧빩빫",4,"빲빶",4,"빾빿뺁뺂뺃뺅",6,"뺎뺒",5,"뺚",13,"뺩",14],["9641","뺸",23,"뻒뻓"],["9661","뻕뻖뻙",6,"뻡뻢뻦",5,"뻭",8],["9681","뻶",10,"뼂",5,"뼊",13,"뼚뼞",33,"뽂뽃뽅뽆뽇뽉",6,"뽒뽓뽔뽖",44],["9741","뾃",16,"뾕",8],["9761","뾞",17,"뾱",7],["9781","뾹",11,"뿆",5,"뿎뿏뿑뿒뿓뿕",6,"뿝뿞뿠뿢",89,"쀽쀾쀿"],["9841","쁀",16,"쁒",5,"쁙쁚쁛"],["9861","쁝쁞쁟쁡",6,"쁪",15],["9881","쁺",21,"삒삓삕삖삗삙",6,"삢삤삦",5,"삮삱삲삷",4,"삾샂샃샄샆샇샊샋샍샎샏샑",6,"샚샞",5,"샦샧샩샪샫샭",6,"샶샸샺",5,"섁섂섃섅섆섇섉",6,"섑섒섓섔섖",5,"섡섢섥섨섩섪섫섮"],["9941","섲섳섴섵섷섺섻섽섾섿셁",6,"셊셎",5,"셖셗"],["9961","셙셚셛셝",6,"셦셪",5,"셱셲셳셵셶셷셹셺셻"],["9981","셼",8,"솆",5,"솏솑솒솓솕솗",4,"솞솠솢솣솤솦솧솪솫솭솮솯솱",11,"솾",5,"쇅쇆쇇쇉쇊쇋쇍",6,"쇕쇖쇙",6,"쇡쇢쇣쇥쇦쇧쇩",6,"쇲쇴",7,"쇾쇿숁숂숃숅",6,"숎숐숒",5,"숚숛숝숞숡숢숣"],["9a41","숤숥숦숧숪숬숮숰숳숵",16],["9a61","쉆쉇쉉",6,"쉒쉓쉕쉖쉗쉙",6,"쉡쉢쉣쉤쉦"],["9a81","쉧",4,"쉮쉯쉱쉲쉳쉵",6,"쉾슀슂",5,"슊",5,"슑",6,"슙슚슜슞",5,"슦슧슩슪슫슮",5,"슶슸슺",33,"싞싟싡싢싥",5,"싮싰싲싳싴싵싷싺싽싾싿쌁",6,"쌊쌋쌎쌏"],["9b41","쌐쌑쌒쌖쌗쌙쌚쌛쌝",6,"쌦쌧쌪",8],["9b61","쌳",17,"썆",7],["9b81","썎",25,"썪썫썭썮썯썱썳",4,"썺썻썾",5,"쎅쎆쎇쎉쎊쎋쎍",50,"쏁",22,"쏚"],["9c41","쏛쏝쏞쏡쏣",4,"쏪쏫쏬쏮",5,"쏶쏷쏹",5],["9c61","쏿",8,"쐉",6,"쐑",9],["9c81","쐛",8,"쐥",6,"쐭쐮쐯쐱쐲쐳쐵",6,"쐾",9,"쑉",26,"쑦쑧쑩쑪쑫쑭",6,"쑶쑷쑸쑺",5,"쒁",18,"쒕",6,"쒝",12],["9d41","쒪",13,"쒹쒺쒻쒽",8],["9d61","쓆",25],["9d81","쓠",8,"쓪",5,"쓲쓳쓵쓶쓷쓹쓻쓼쓽쓾씂",9,"씍씎씏씑씒씓씕",6,"씝",10,"씪씫씭씮씯씱",6,"씺씼씾",5,"앆앇앋앏앐앑앒앖앚앛앜앟앢앣앥앦앧앩",6,"앲앶",5,"앾앿얁얂얃얅얆얈얉얊얋얎얐얒얓얔"],["9e41","얖얙얚얛얝얞얟얡",7,"얪",9,"얶"],["9e61","얷얺얿",4,"엋엍엏엒엓엕엖엗엙",6,"엢엤엦엧"],["9e81","엨엩엪엫엯엱엲엳엵엸엹엺엻옂옃옄옉옊옋옍옎옏옑",6,"옚옝",6,"옦옧옩옪옫옯옱옲옶옸옺옼옽옾옿왂왃왅왆왇왉",6,"왒왖",5,"왞왟왡",10,"왭왮왰왲",5,"왺왻왽왾왿욁",6,"욊욌욎",5,"욖욗욙욚욛욝",6,"욦"],["9f41","욨욪",5,"욲욳욵욶욷욻",4,"웂웄웆",5,"웎"],["9f61","웏웑웒웓웕",6,"웞웟웢",5,"웪웫웭웮웯웱웲"],["9f81","웳",4,"웺웻웼웾",5,"윆윇윉윊윋윍",6,"윖윘윚",5,"윢윣윥윦윧윩",6,"윲윴윶윸윹윺윻윾윿읁읂읃읅",4,"읋읎읐읙읚읛읝읞읟읡",6,"읩읪읬",7,"읶읷읹읺읻읿잀잁잂잆잋잌잍잏잒잓잕잙잛",4,"잢잧",4,"잮잯잱잲잳잵잶잷"],["a041","잸잹잺잻잾쟂",5,"쟊쟋쟍쟏쟑",6,"쟙쟚쟛쟜"],["a061","쟞",5,"쟥쟦쟧쟩쟪쟫쟭",13],["a081","쟻",4,"젂젃젅젆젇젉젋",4,"젒젔젗",4,"젞젟젡젢젣젥",6,"젮젰젲",5,"젹젺젻젽젾젿졁",6,"졊졋졎",5,"졕",26,"졲졳졵졶졷졹졻",4,"좂좄좈좉좊좎",5,"좕",7,"좞좠좢좣좤"],["a141","좥좦좧좩",18,"좾좿죀죁"],["a161","죂죃죅죆죇죉죊죋죍",6,"죖죘죚",5,"죢죣죥"],["a181","죦",14,"죶",5,"죾죿줁줂줃줇",4,"줎 、。·‥…¨〃­―∥\∼‘’“”〔〕〈",9,"±×÷≠≤≥∞∴°′″℃Å¢£¥♂♀∠⊥⌒∂∇≡≒§※☆★○●◎◇◆□■△▲▽▼→←↑↓↔〓≪≫√∽∝∵∫∬∈∋⊆⊇⊂⊃∪∩∧∨¬"],["a241","줐줒",5,"줙",18],["a261","줭",6,"줵",18],["a281","쥈",7,"쥒쥓쥕쥖쥗쥙",6,"쥢쥤",7,"쥭쥮쥯⇒⇔∀∃´~ˇ˘˝˚˙¸˛¡¿ː∮∑∏¤℉‰◁◀▷▶♤♠♡♥♧♣⊙◈▣◐◑▒▤▥▨▧▦▩♨☏☎☜☞¶†‡↕↗↙↖↘♭♩♪♬㉿㈜№㏇™㏂㏘℡€®"],["a341","쥱쥲쥳쥵",6,"쥽",10,"즊즋즍즎즏"],["a361","즑",6,"즚즜즞",16],["a381","즯",16,"짂짃짅짆짉짋",4,"짒짔짗짘짛!",58,"₩]",32," ̄"],["a441","짞짟짡짣짥짦짨짩짪짫짮짲",5,"짺짻짽짾짿쨁쨂쨃쨄"],["a461","쨅쨆쨇쨊쨎",5,"쨕쨖쨗쨙",12],["a481","쨦쨧쨨쨪",28,"ㄱ",93],["a541","쩇",4,"쩎쩏쩑쩒쩓쩕",6,"쩞쩢",5,"쩩쩪"],["a561","쩫",17,"쩾",5,"쪅쪆"],["a581","쪇",16,"쪙",14,"ⅰ",9],["a5b0","Ⅰ",9],["a5c1","Α",16,"Σ",6],["a5e1","α",16,"σ",6],["a641","쪨",19,"쪾쪿쫁쫂쫃쫅"],["a661","쫆",5,"쫎쫐쫒쫔쫕쫖쫗쫚",5,"쫡",6],["a681","쫨쫩쫪쫫쫭",6,"쫵",18,"쬉쬊─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂┒┑┚┙┖┕┎┍┞┟┡┢┦┧┩┪┭┮┱┲┵┶┹┺┽┾╀╁╃",7],["a741","쬋",4,"쬑쬒쬓쬕쬖쬗쬙",6,"쬢",7],["a761","쬪",22,"쭂쭃쭄"],["a781","쭅쭆쭇쭊쭋쭍쭎쭏쭑",6,"쭚쭛쭜쭞",5,"쭥",7,"㎕㎖㎗ℓ㎘㏄㎣㎤㎥㎦㎙",9,"㏊㎍㎎㎏㏏㎈㎉㏈㎧㎨㎰",9,"㎀",4,"㎺",5,"㎐",4,"Ω㏀㏁㎊㎋㎌㏖㏅㎭㎮㎯㏛㎩㎪㎫㎬㏝㏐㏓㏃㏉㏜㏆"],["a841","쭭",10,"쭺",14],["a861","쮉",18,"쮝",6],["a881","쮤",19,"쮹",11,"ÆЪĦ"],["a8a6","IJ"],["a8a8","ĿŁØŒºÞŦŊ"],["a8b1","㉠",27,"ⓐ",25,"①",14,"½⅓⅔¼¾⅛⅜⅝⅞"],["a941","쯅",14,"쯕",10],["a961","쯠쯡쯢쯣쯥쯦쯨쯪",18],["a981","쯽",14,"찎찏찑찒찓찕",6,"찞찟찠찣찤æđðħıijĸŀłøœßþŧŋʼn㈀",27,"⒜",25,"⑴",14,"¹²³⁴ⁿ₁₂₃₄"],["aa41","찥찦찪찫찭찯찱",6,"찺찿",4,"챆챇챉챊챋챍챎"],["aa61","챏",4,"챖챚",5,"챡챢챣챥챧챩",6,"챱챲"],["aa81","챳챴챶",29,"ぁ",82],["ab41","첔첕첖첗첚첛첝첞첟첡",6,"첪첮",5,"첶첷첹"],["ab61","첺첻첽",6,"쳆쳈쳊",5,"쳑쳒쳓쳕",5],["ab81","쳛",8,"쳥",6,"쳭쳮쳯쳱",12,"ァ",85],["ac41","쳾쳿촀촂",5,"촊촋촍촎촏촑",6,"촚촜촞촟촠"],["ac61","촡촢촣촥촦촧촩촪촫촭",11,"촺",4],["ac81","촿",28,"쵝쵞쵟А",5,"ЁЖ",25],["acd1","а",5,"ёж",25],["ad41","쵡쵢쵣쵥",6,"쵮쵰쵲",5,"쵹",7],["ad61","춁",6,"춉",10,"춖춗춙춚춛춝춞춟"],["ad81","춠춡춢춣춦춨춪",5,"춱",18,"췅"],["ae41","췆",5,"췍췎췏췑",16],["ae61","췢",5,"췩췪췫췭췮췯췱",6,"췺췼췾",4],["ae81","츃츅츆츇츉츊츋츍",6,"츕츖츗츘츚",5,"츢츣츥츦츧츩츪츫"],["af41","츬츭츮츯츲츴츶",19],["af61","칊",13,"칚칛칝칞칢",5,"칪칬"],["af81","칮",5,"칶칷칹칺칻칽",6,"캆캈캊",5,"캒캓캕캖캗캙"],["b041","캚",5,"캢캦",5,"캮",12],["b061","캻",5,"컂",19],["b081","컖",13,"컦컧컩컪컭",6,"컶컺",5,"가각간갇갈갉갊감",7,"같",4,"갠갤갬갭갯갰갱갸갹갼걀걋걍걔걘걜거걱건걷걸걺검겁것겄겅겆겉겊겋게겐겔겜겝겟겠겡겨격겪견겯결겸겹겻겼경곁계곈곌곕곗고곡곤곧골곪곬곯곰곱곳공곶과곽관괄괆"],["b141","켂켃켅켆켇켉",6,"켒켔켖",5,"켝켞켟켡켢켣"],["b161","켥",6,"켮켲",5,"켹",11],["b181","콅",14,"콖콗콙콚콛콝",6,"콦콨콪콫콬괌괍괏광괘괜괠괩괬괭괴괵괸괼굄굅굇굉교굔굘굡굣구국군굳굴굵굶굻굼굽굿궁궂궈궉권궐궜궝궤궷귀귁귄귈귐귑귓규균귤그극근귿글긁금급긋긍긔기긱긴긷길긺김깁깃깅깆깊까깍깎깐깔깖깜깝깟깠깡깥깨깩깬깰깸"],["b241","콭콮콯콲콳콵콶콷콹",6,"쾁쾂쾃쾄쾆",5,"쾍"],["b261","쾎",18,"쾢",5,"쾩"],["b281","쾪",5,"쾱",18,"쿅",6,"깹깻깼깽꺄꺅꺌꺼꺽꺾껀껄껌껍껏껐껑께껙껜껨껫껭껴껸껼꼇꼈꼍꼐꼬꼭꼰꼲꼴꼼꼽꼿꽁꽂꽃꽈꽉꽐꽜꽝꽤꽥꽹꾀꾄꾈꾐꾑꾕꾜꾸꾹꾼꿀꿇꿈꿉꿋꿍꿎꿔꿜꿨꿩꿰꿱꿴꿸뀀뀁뀄뀌뀐뀔뀜뀝뀨끄끅끈끊끌끎끓끔끕끗끙"],["b341","쿌",19,"쿢쿣쿥쿦쿧쿩"],["b361","쿪",5,"쿲쿴쿶",5,"쿽쿾쿿퀁퀂퀃퀅",5],["b381","퀋",5,"퀒",5,"퀙",19,"끝끼끽낀낄낌낍낏낑나낙낚난낟날낡낢남납낫",4,"낱낳내낵낸낼냄냅냇냈냉냐냑냔냘냠냥너넉넋넌널넒넓넘넙넛넜넝넣네넥넨넬넴넵넷넸넹녀녁년녈념녑녔녕녘녜녠노녹논놀놂놈놉놋농높놓놔놘놜놨뇌뇐뇔뇜뇝"],["b441","퀮",5,"퀶퀷퀹퀺퀻퀽",6,"큆큈큊",5],["b461","큑큒큓큕큖큗큙",6,"큡",10,"큮큯"],["b481","큱큲큳큵",6,"큾큿킀킂",18,"뇟뇨뇩뇬뇰뇹뇻뇽누눅눈눋눌눔눕눗눙눠눴눼뉘뉜뉠뉨뉩뉴뉵뉼늄늅늉느늑는늘늙늚늠늡늣능늦늪늬늰늴니닉닌닐닒님닙닛닝닢다닥닦단닫",4,"닳담답닷",4,"닿대댁댄댈댐댑댓댔댕댜더덕덖던덛덜덞덟덤덥"],["b541","킕",14,"킦킧킩킪킫킭",5],["b561","킳킶킸킺",5,"탂탃탅탆탇탊",5,"탒탖",4],["b581","탛탞탟탡탢탣탥",6,"탮탲",5,"탹",11,"덧덩덫덮데덱덴델뎀뎁뎃뎄뎅뎌뎐뎔뎠뎡뎨뎬도독돈돋돌돎돐돔돕돗동돛돝돠돤돨돼됐되된될됨됩됫됴두둑둔둘둠둡둣둥둬뒀뒈뒝뒤뒨뒬뒵뒷뒹듀듄듈듐듕드득든듣들듦듬듭듯등듸디딕딘딛딜딤딥딧딨딩딪따딱딴딸"],["b641","턅",7,"턎",17],["b661","턠",15,"턲턳턵턶턷턹턻턼턽턾"],["b681","턿텂텆",5,"텎텏텑텒텓텕",6,"텞텠텢",5,"텩텪텫텭땀땁땃땄땅땋때땍땐땔땜땝땟땠땡떠떡떤떨떪떫떰떱떳떴떵떻떼떽뗀뗄뗌뗍뗏뗐뗑뗘뗬또똑똔똘똥똬똴뙈뙤뙨뚜뚝뚠뚤뚫뚬뚱뛔뛰뛴뛸뜀뜁뜅뜨뜩뜬뜯뜰뜸뜹뜻띄띈띌띔띕띠띤띨띰띱띳띵라락란랄람랍랏랐랑랒랖랗"],["b741","텮",13,"텽",6,"톅톆톇톉톊"],["b761","톋",20,"톢톣톥톦톧"],["b781","톩",6,"톲톴톶톷톸톹톻톽톾톿퇁",14,"래랙랜랠램랩랫랬랭랴략랸럇량러럭런럴럼럽럿렀렁렇레렉렌렐렘렙렛렝려력련렬렴렵렷렸령례롄롑롓로록론롤롬롭롯롱롸롼뢍뢨뢰뢴뢸룀룁룃룅료룐룔룝룟룡루룩룬룰룸룹룻룽뤄뤘뤠뤼뤽륀륄륌륏륑류륙륜률륨륩"],["b841","퇐",7,"퇙",17],["b861","퇫",8,"퇵퇶퇷퇹",13],["b881","툈툊",5,"툑",24,"륫륭르륵른를름릅릇릉릊릍릎리릭린릴림립릿링마막만많",4,"맘맙맛망맞맡맣매맥맨맬맴맵맷맸맹맺먀먁먈먕머먹먼멀멂멈멉멋멍멎멓메멕멘멜멤멥멧멨멩며멱면멸몃몄명몇몌모목몫몬몰몲몸몹못몽뫄뫈뫘뫙뫼"],["b941","툪툫툮툯툱툲툳툵",6,"툾퉀퉂",5,"퉉퉊퉋퉌"],["b961","퉍",14,"퉝",6,"퉥퉦퉧퉨"],["b981","퉩",22,"튂튃튅튆튇튉튊튋튌묀묄묍묏묑묘묜묠묩묫무묵묶문묻물묽묾뭄뭅뭇뭉뭍뭏뭐뭔뭘뭡뭣뭬뮈뮌뮐뮤뮨뮬뮴뮷므믄믈믐믓미믹민믿밀밂밈밉밋밌밍및밑바",4,"받",4,"밤밥밧방밭배백밴밸뱀뱁뱃뱄뱅뱉뱌뱍뱐뱝버벅번벋벌벎범법벗"],["ba41","튍튎튏튒튓튔튖",5,"튝튞튟튡튢튣튥",6,"튭"],["ba61","튮튯튰튲",5,"튺튻튽튾틁틃",4,"틊틌",5],["ba81","틒틓틕틖틗틙틚틛틝",6,"틦",9,"틲틳틵틶틷틹틺벙벚베벡벤벧벨벰벱벳벴벵벼벽변별볍볏볐병볕볘볜보복볶본볼봄봅봇봉봐봔봤봬뵀뵈뵉뵌뵐뵘뵙뵤뵨부북분붇불붉붊붐붑붓붕붙붚붜붤붰붸뷔뷕뷘뷜뷩뷰뷴뷸븀븃븅브븍븐블븜븝븟비빅빈빌빎빔빕빗빙빚빛빠빡빤"],["bb41","틻",4,"팂팄팆",5,"팏팑팒팓팕팗",4,"팞팢팣"],["bb61","팤팦팧팪팫팭팮팯팱",6,"팺팾",5,"퍆퍇퍈퍉"],["bb81","퍊",31,"빨빪빰빱빳빴빵빻빼빽뺀뺄뺌뺍뺏뺐뺑뺘뺙뺨뻐뻑뻔뻗뻘뻠뻣뻤뻥뻬뼁뼈뼉뼘뼙뼛뼜뼝뽀뽁뽄뽈뽐뽑뽕뾔뾰뿅뿌뿍뿐뿔뿜뿟뿡쀼쁑쁘쁜쁠쁨쁩삐삑삔삘삠삡삣삥사삭삯산삳살삵삶삼삽삿샀상샅새색샌샐샘샙샛샜생샤"],["bc41","퍪",17,"퍾퍿펁펂펃펅펆펇"],["bc61","펈펉펊펋펎펒",5,"펚펛펝펞펟펡",6,"펪펬펮"],["bc81","펯",4,"펵펶펷펹펺펻펽",6,"폆폇폊",5,"폑",5,"샥샨샬샴샵샷샹섀섄섈섐섕서",4,"섣설섦섧섬섭섯섰성섶세섹센셀셈셉셋셌셍셔셕션셜셤셥셧셨셩셰셴셸솅소속솎손솔솖솜솝솟송솥솨솩솬솰솽쇄쇈쇌쇔쇗쇘쇠쇤쇨쇰쇱쇳쇼쇽숀숄숌숍숏숑수숙순숟술숨숩숫숭"],["bd41","폗폙",7,"폢폤",7,"폮폯폱폲폳폵폶폷"],["bd61","폸폹폺폻폾퐀퐂",5,"퐉",13],["bd81","퐗",5,"퐞",25,"숯숱숲숴쉈쉐쉑쉔쉘쉠쉥쉬쉭쉰쉴쉼쉽쉿슁슈슉슐슘슛슝스슥슨슬슭슴습슷승시식신싣실싫심십싯싱싶싸싹싻싼쌀쌈쌉쌌쌍쌓쌔쌕쌘쌜쌤쌥쌨쌩썅써썩썬썰썲썸썹썼썽쎄쎈쎌쏀쏘쏙쏜쏟쏠쏢쏨쏩쏭쏴쏵쏸쐈쐐쐤쐬쐰"],["be41","퐸",7,"푁푂푃푅",14],["be61","푔",7,"푝푞푟푡푢푣푥",7,"푮푰푱푲"],["be81","푳",4,"푺푻푽푾풁풃",4,"풊풌풎",5,"풕",8,"쐴쐼쐽쑈쑤쑥쑨쑬쑴쑵쑹쒀쒔쒜쒸쒼쓩쓰쓱쓴쓸쓺쓿씀씁씌씐씔씜씨씩씬씰씸씹씻씽아악안앉않알앍앎앓암압앗았앙앝앞애액앤앨앰앱앳앴앵야약얀얄얇얌얍얏양얕얗얘얜얠얩어억언얹얻얼얽얾엄",6,"엌엎"],["bf41","풞",10,"풪",14],["bf61","풹",18,"퓍퓎퓏퓑퓒퓓퓕"],["bf81","퓖",5,"퓝퓞퓠",7,"퓩퓪퓫퓭퓮퓯퓱",6,"퓹퓺퓼에엑엔엘엠엡엣엥여역엮연열엶엷염",5,"옅옆옇예옌옐옘옙옛옜오옥온올옭옮옰옳옴옵옷옹옻와왁완왈왐왑왓왔왕왜왝왠왬왯왱외왹왼욀욈욉욋욍요욕욘욜욤욥욧용우욱운울욹욺움웁웃웅워웍원월웜웝웠웡웨"],["c041","퓾",5,"픅픆픇픉픊픋픍",6,"픖픘",5],["c061","픞",25],["c081","픸픹픺픻픾픿핁핂핃핅",6,"핎핐핒",5,"핚핛핝핞핟핡핢핣웩웬웰웸웹웽위윅윈윌윔윕윗윙유육윤율윰윱윳융윷으윽은을읊음읍읏응",7,"읜읠읨읫이익인일읽읾잃임입잇있잉잊잎자작잔잖잗잘잚잠잡잣잤장잦재잭잰잴잼잽잿쟀쟁쟈쟉쟌쟎쟐쟘쟝쟤쟨쟬저적전절젊"],["c141","핤핦핧핪핬핮",5,"핶핷핹핺핻핽",6,"햆햊햋"],["c161","햌햍햎햏햑",19,"햦햧"],["c181","햨",31,"점접젓정젖제젝젠젤젬젭젯젱져젼졀졈졉졌졍졔조족존졸졺좀좁좃종좆좇좋좌좍좔좝좟좡좨좼좽죄죈죌죔죕죗죙죠죡죤죵주죽준줄줅줆줌줍줏중줘줬줴쥐쥑쥔쥘쥠쥡쥣쥬쥰쥴쥼즈즉즌즐즘즙즛증지직진짇질짊짐집짓"],["c241","헊헋헍헎헏헑헓",4,"헚헜헞",5,"헦헧헩헪헫헭헮"],["c261","헯",4,"헶헸헺",5,"혂혃혅혆혇혉",6,"혒"],["c281","혖",5,"혝혞혟혡혢혣혥",7,"혮",9,"혺혻징짖짙짚짜짝짠짢짤짧짬짭짯짰짱째짹짼쨀쨈쨉쨋쨌쨍쨔쨘쨩쩌쩍쩐쩔쩜쩝쩟쩠쩡쩨쩽쪄쪘쪼쪽쫀쫄쫌쫍쫏쫑쫓쫘쫙쫠쫬쫴쬈쬐쬔쬘쬠쬡쭁쭈쭉쭌쭐쭘쭙쭝쭤쭸쭹쮜쮸쯔쯤쯧쯩찌찍찐찔찜찝찡찢찧차착찬찮찰참찹찻"],["c341","혽혾혿홁홂홃홄홆홇홊홌홎홏홐홒홓홖홗홙홚홛홝",4],["c361","홢",4,"홨홪",5,"홲홳홵",11],["c381","횁횂횄횆",5,"횎횏횑횒횓횕",7,"횞횠횢",5,"횩횪찼창찾채책챈챌챔챕챗챘챙챠챤챦챨챰챵처척천철첨첩첫첬청체첵첸첼쳄쳅쳇쳉쳐쳔쳤쳬쳰촁초촉촌촐촘촙촛총촤촨촬촹최쵠쵤쵬쵭쵯쵱쵸춈추축춘출춤춥춧충춰췄췌췐취췬췰췸췹췻췽츄츈츌츔츙츠측츤츨츰츱츳층"],["c441","횫횭횮횯횱",7,"횺횼",7,"훆훇훉훊훋"],["c461","훍훎훏훐훒훓훕훖훘훚",5,"훡훢훣훥훦훧훩",4],["c481","훮훯훱훲훳훴훶",5,"훾훿휁휂휃휅",11,"휒휓휔치칙친칟칠칡침칩칫칭카칵칸칼캄캅캇캉캐캑캔캘캠캡캣캤캥캬캭컁커컥컨컫컬컴컵컷컸컹케켁켄켈켐켑켓켕켜켠켤켬켭켯켰켱켸코콕콘콜콤콥콧콩콰콱콴콸쾀쾅쾌쾡쾨쾰쿄쿠쿡쿤쿨쿰쿱쿳쿵쿼퀀퀄퀑퀘퀭퀴퀵퀸퀼"],["c541","휕휖휗휚휛휝휞휟휡",6,"휪휬휮",5,"휶휷휹"],["c561","휺휻휽",6,"흅흆흈흊",5,"흒흓흕흚",4],["c581","흟흢흤흦흧흨흪흫흭흮흯흱흲흳흵",6,"흾흿힀힂",5,"힊힋큄큅큇큉큐큔큘큠크큭큰클큼큽킁키킥킨킬킴킵킷킹타탁탄탈탉탐탑탓탔탕태택탠탤탬탭탯탰탱탸턍터턱턴털턺텀텁텃텄텅테텍텐텔템텝텟텡텨텬텼톄톈토톡톤톨톰톱톳통톺톼퇀퇘퇴퇸툇툉툐투툭툰툴툼툽툿퉁퉈퉜"],["c641","힍힎힏힑",6,"힚힜힞",5],["c6a1","퉤튀튁튄튈튐튑튕튜튠튤튬튱트특튼튿틀틂틈틉틋틔틘틜틤틥티틱틴틸팀팁팃팅파팍팎판팔팖팜팝팟팠팡팥패팩팬팰팸팹팻팼팽퍄퍅퍼퍽펀펄펌펍펏펐펑페펙펜펠펨펩펫펭펴편펼폄폅폈평폐폘폡폣포폭폰폴폼폽폿퐁"],["c7a1","퐈퐝푀푄표푠푤푭푯푸푹푼푿풀풂품풉풋풍풔풩퓌퓐퓔퓜퓟퓨퓬퓰퓸퓻퓽프픈플픔픕픗피픽핀필핌핍핏핑하학한할핥함합핫항해핵핸핼햄햅햇했행햐향허헉헌헐헒험헙헛헝헤헥헨헬헴헵헷헹혀혁현혈혐협혓혔형혜혠"],["c8a1","혤혭호혹혼홀홅홈홉홋홍홑화확환활홧황홰홱홴횃횅회획횐횔횝횟횡효횬횰횹횻후훅훈훌훑훔훗훙훠훤훨훰훵훼훽휀휄휑휘휙휜휠휨휩휫휭휴휵휸휼흄흇흉흐흑흔흖흗흘흙흠흡흣흥흩희흰흴흼흽힁히힉힌힐힘힙힛힝"],["caa1","伽佳假價加可呵哥嘉嫁家暇架枷柯歌珂痂稼苛茄街袈訶賈跏軻迦駕刻却各恪慤殼珏脚覺角閣侃刊墾奸姦干幹懇揀杆柬桿澗癎看磵稈竿簡肝艮艱諫間乫喝曷渴碣竭葛褐蝎鞨勘坎堪嵌感憾戡敢柑橄減甘疳監瞰紺邯鑑鑒龕"],["cba1","匣岬甲胛鉀閘剛堈姜岡崗康强彊慷江畺疆糠絳綱羌腔舡薑襁講鋼降鱇介价個凱塏愷愾慨改槪漑疥皆盖箇芥蓋豈鎧開喀客坑更粳羹醵倨去居巨拒据據擧渠炬祛距踞車遽鉅鋸乾件健巾建愆楗腱虔蹇鍵騫乞傑杰桀儉劍劒檢"],["cca1","瞼鈐黔劫怯迲偈憩揭擊格檄激膈覡隔堅牽犬甄絹繭肩見譴遣鵑抉決潔結缺訣兼慊箝謙鉗鎌京俓倞傾儆勁勍卿坰境庚徑慶憬擎敬景暻更梗涇炅烱璟璥瓊痙硬磬竟競絅經耕耿脛莖警輕逕鏡頃頸驚鯨係啓堺契季屆悸戒桂械"],["cda1","棨溪界癸磎稽系繫繼計誡谿階鷄古叩告呱固姑孤尻庫拷攷故敲暠枯槁沽痼皐睾稿羔考股膏苦苽菰藁蠱袴誥賈辜錮雇顧高鼓哭斛曲梏穀谷鵠困坤崑昆梱棍滾琨袞鯤汨滑骨供公共功孔工恐恭拱控攻珙空蚣貢鞏串寡戈果瓜"],["cea1","科菓誇課跨過鍋顆廓槨藿郭串冠官寬慣棺款灌琯瓘管罐菅觀貫關館刮恝括适侊光匡壙廣曠洸炚狂珖筐胱鑛卦掛罫乖傀塊壞怪愧拐槐魁宏紘肱轟交僑咬喬嬌嶠巧攪敎校橋狡皎矯絞翹膠蕎蛟較轎郊餃驕鮫丘久九仇俱具勾"],["cfa1","區口句咎嘔坵垢寇嶇廐懼拘救枸柩構歐毆毬求溝灸狗玖球瞿矩究絿耉臼舅舊苟衢謳購軀逑邱鉤銶駒驅鳩鷗龜國局菊鞠鞫麴君窘群裙軍郡堀屈掘窟宮弓穹窮芎躬倦券勸卷圈拳捲權淃眷厥獗蕨蹶闕机櫃潰詭軌饋句晷歸貴"],["d0a1","鬼龜叫圭奎揆槻珪硅窺竅糾葵規赳逵閨勻均畇筠菌鈞龜橘克剋劇戟棘極隙僅劤勤懃斤根槿瑾筋芹菫覲謹近饉契今妗擒昑檎琴禁禽芩衾衿襟金錦伋及急扱汲級給亘兢矜肯企伎其冀嗜器圻基埼夔奇妓寄岐崎己幾忌技旗旣"],["d1a1","朞期杞棋棄機欺氣汽沂淇玘琦琪璂璣畸畿碁磯祁祇祈祺箕紀綺羈耆耭肌記譏豈起錡錤飢饑騎騏驥麒緊佶吉拮桔金喫儺喇奈娜懦懶拏拿癩",5,"那樂",4,"諾酪駱亂卵暖欄煖爛蘭難鸞捏捺南嵐枏楠湳濫男藍襤拉"],["d2a1","納臘蠟衲囊娘廊",4,"乃來內奈柰耐冷女年撚秊念恬拈捻寧寗努勞奴弩怒擄櫓爐瑙盧",5,"駑魯",10,"濃籠聾膿農惱牢磊腦賂雷尿壘",7,"嫩訥杻紐勒",5,"能菱陵尼泥匿溺多茶"],["d3a1","丹亶但單團壇彖斷旦檀段湍短端簞緞蛋袒鄲鍛撻澾獺疸達啖坍憺擔曇淡湛潭澹痰聃膽蕁覃談譚錟沓畓答踏遝唐堂塘幢戇撞棠當糖螳黨代垈坮大對岱帶待戴擡玳臺袋貸隊黛宅德悳倒刀到圖堵塗導屠島嶋度徒悼挑掉搗桃"],["d4a1","棹櫂淘渡滔濤燾盜睹禱稻萄覩賭跳蹈逃途道都鍍陶韜毒瀆牘犢獨督禿篤纛讀墩惇敦旽暾沌焞燉豚頓乭突仝冬凍動同憧東桐棟洞潼疼瞳童胴董銅兜斗杜枓痘竇荳讀豆逗頭屯臀芚遁遯鈍得嶝橙燈登等藤謄鄧騰喇懶拏癩羅"],["d5a1","蘿螺裸邏樂洛烙珞絡落諾酪駱丹亂卵欄欒瀾爛蘭鸞剌辣嵐擥攬欖濫籃纜藍襤覽拉臘蠟廊朗浪狼琅瑯螂郞來崍徠萊冷掠略亮倆兩凉梁樑粮粱糧良諒輛量侶儷勵呂廬慮戾旅櫚濾礪藜蠣閭驢驪麗黎力曆歷瀝礫轢靂憐戀攣漣"],["d6a1","煉璉練聯蓮輦連鍊冽列劣洌烈裂廉斂殮濂簾獵令伶囹寧岺嶺怜玲笭羚翎聆逞鈴零靈領齡例澧禮醴隷勞怒撈擄櫓潞瀘爐盧老蘆虜路輅露魯鷺鹵碌祿綠菉錄鹿麓論壟弄朧瀧瓏籠聾儡瀨牢磊賂賚賴雷了僚寮廖料燎療瞭聊蓼"],["d7a1","遼鬧龍壘婁屢樓淚漏瘻累縷蔞褸鏤陋劉旒柳榴流溜瀏琉瑠留瘤硫謬類六戮陸侖倫崙淪綸輪律慄栗率隆勒肋凜凌楞稜綾菱陵俚利厘吏唎履悧李梨浬犁狸理璃異痢籬罹羸莉裏裡里釐離鯉吝潾燐璘藺躪隣鱗麟林淋琳臨霖砬"],["d8a1","立笠粒摩瑪痲碼磨馬魔麻寞幕漠膜莫邈万卍娩巒彎慢挽晩曼滿漫灣瞞萬蔓蠻輓饅鰻唜抹末沫茉襪靺亡妄忘忙望網罔芒茫莽輞邙埋妹媒寐昧枚梅每煤罵買賣邁魅脈貊陌驀麥孟氓猛盲盟萌冪覓免冕勉棉沔眄眠綿緬面麵滅"],["d9a1","蔑冥名命明暝椧溟皿瞑茗蓂螟酩銘鳴袂侮冒募姆帽慕摸摹暮某模母毛牟牡瑁眸矛耗芼茅謀謨貌木沐牧目睦穆鶩歿沒夢朦蒙卯墓妙廟描昴杳渺猫竗苗錨務巫憮懋戊拇撫无楙武毋無珷畝繆舞茂蕪誣貿霧鵡墨默們刎吻問文"],["daa1","汶紊紋聞蚊門雯勿沕物味媚尾嵋彌微未梶楣渼湄眉米美薇謎迷靡黴岷悶愍憫敏旻旼民泯玟珉緡閔密蜜謐剝博拍搏撲朴樸泊珀璞箔粕縛膊舶薄迫雹駁伴半反叛拌搬攀斑槃泮潘班畔瘢盤盼磐磻礬絆般蟠返頒飯勃拔撥渤潑"],["dba1","發跋醱鉢髮魃倣傍坊妨尨幇彷房放方旁昉枋榜滂磅紡肪膀舫芳蒡蚌訪謗邦防龐倍俳北培徘拜排杯湃焙盃背胚裴裵褙賠輩配陪伯佰帛柏栢白百魄幡樊煩燔番磻繁蕃藩飜伐筏罰閥凡帆梵氾汎泛犯範范法琺僻劈壁擘檗璧癖"],["dca1","碧蘗闢霹便卞弁變辨辯邊別瞥鱉鼈丙倂兵屛幷昞昺柄棅炳甁病秉竝輧餠騈保堡報寶普步洑湺潽珤甫菩補褓譜輔伏僕匐卜宓復服福腹茯蔔複覆輹輻馥鰒本乶俸奉封峯峰捧棒烽熢琫縫蓬蜂逢鋒鳳不付俯傅剖副否咐埠夫婦"],["dda1","孚孵富府復扶敷斧浮溥父符簿缶腐腑膚艀芙莩訃負賦賻赴趺部釜阜附駙鳧北分吩噴墳奔奮忿憤扮昐汾焚盆粉糞紛芬賁雰不佛弗彿拂崩朋棚硼繃鵬丕備匕匪卑妃婢庇悲憊扉批斐枇榧比毖毗毘沸泌琵痺砒碑秕秘粃緋翡肥"],["dea1","脾臂菲蜚裨誹譬費鄙非飛鼻嚬嬪彬斌檳殯浜濱瀕牝玭貧賓頻憑氷聘騁乍事些仕伺似使俟僿史司唆嗣四士奢娑寫寺射巳師徙思捨斜斯柶査梭死沙泗渣瀉獅砂社祀祠私篩紗絲肆舍莎蓑蛇裟詐詞謝賜赦辭邪飼駟麝削數朔索"],["dfa1","傘刪山散汕珊産疝算蒜酸霰乷撒殺煞薩三參杉森渗芟蔘衫揷澁鈒颯上傷像償商喪嘗孀尙峠常床庠廂想桑橡湘爽牀狀相祥箱翔裳觴詳象賞霜塞璽賽嗇塞穡索色牲生甥省笙墅壻嶼序庶徐恕抒捿敍暑曙書栖棲犀瑞筮絮緖署"],["e0a1","胥舒薯西誓逝鋤黍鼠夕奭席惜昔晳析汐淅潟石碩蓆釋錫仙僊先善嬋宣扇敾旋渲煽琁瑄璇璿癬禪線繕羨腺膳船蘚蟬詵跣選銑鐥饍鮮卨屑楔泄洩渫舌薛褻設說雪齧剡暹殲纖蟾贍閃陝攝涉燮葉城姓宬性惺成星晟猩珹盛省筬"],["e1a1","聖聲腥誠醒世勢歲洗稅笹細說貰召嘯塑宵小少巢所掃搔昭梳沼消溯瀟炤燒甦疏疎瘙笑篠簫素紹蔬蕭蘇訴逍遡邵銷韶騷俗屬束涑粟續謖贖速孫巽損蓀遜飡率宋悚松淞訟誦送頌刷殺灑碎鎖衰釗修受嗽囚垂壽嫂守岫峀帥愁"],["e2a1","戍手授搜收數樹殊水洙漱燧狩獸琇璲瘦睡秀穗竪粹綏綬繡羞脩茱蒐蓚藪袖誰讐輸遂邃酬銖銹隋隧隨雖需須首髓鬚叔塾夙孰宿淑潚熟琡璹肅菽巡徇循恂旬栒楯橓殉洵淳珣盾瞬筍純脣舜荀蓴蕣詢諄醇錞順馴戌術述鉥崇崧"],["e3a1","嵩瑟膝蝨濕拾習褶襲丞乘僧勝升承昇繩蠅陞侍匙嘶始媤尸屎屍市弑恃施是時枾柴猜矢示翅蒔蓍視試詩諡豕豺埴寔式息拭植殖湜熄篒蝕識軾食飾伸侁信呻娠宸愼新晨燼申神紳腎臣莘薪藎蜃訊身辛辰迅失室實悉審尋心沁"],["e4a1","沈深瀋甚芯諶什十拾雙氏亞俄兒啞娥峨我牙芽莪蛾衙訝阿雅餓鴉鵝堊岳嶽幄惡愕握樂渥鄂鍔顎鰐齷安岸按晏案眼雁鞍顔鮟斡謁軋閼唵岩巖庵暗癌菴闇壓押狎鴨仰央怏昻殃秧鴦厓哀埃崖愛曖涯碍艾隘靄厄扼掖液縊腋額"],["e5a1","櫻罌鶯鸚也倻冶夜惹揶椰爺耶若野弱掠略約若葯蒻藥躍亮佯兩凉壤孃恙揚攘敭暘梁楊樣洋瀁煬痒瘍禳穰糧羊良襄諒讓釀陽量養圄御於漁瘀禦語馭魚齬億憶抑檍臆偃堰彦焉言諺孼蘖俺儼嚴奄掩淹嶪業円予余勵呂女如廬"],["e6a1","旅歟汝濾璵礖礪與艅茹輿轝閭餘驪麗黎亦力域役易曆歷疫繹譯轢逆驛嚥堧姸娟宴年延憐戀捐挻撚椽沇沿涎涓淵演漣烟然煙煉燃燕璉硏硯秊筵緣練縯聯衍軟輦蓮連鉛鍊鳶列劣咽悅涅烈熱裂說閱厭廉念捻染殮炎焰琰艶苒"],["e7a1","簾閻髥鹽曄獵燁葉令囹塋寧嶺嶸影怜映暎楹榮永泳渶潁濚瀛瀯煐營獰玲瑛瑩瓔盈穎纓羚聆英詠迎鈴鍈零霙靈領乂倪例刈叡曳汭濊猊睿穢芮藝蘂禮裔詣譽豫醴銳隸霓預五伍俉傲午吾吳嗚塢墺奧娛寤悟惡懊敖旿晤梧汚澳"],["e8a1","烏熬獒筽蜈誤鰲鼇屋沃獄玉鈺溫瑥瘟穩縕蘊兀壅擁瓮甕癰翁邕雍饔渦瓦窩窪臥蛙蝸訛婉完宛梡椀浣玩琓琬碗緩翫脘腕莞豌阮頑曰往旺枉汪王倭娃歪矮外嵬巍猥畏了僚僥凹堯夭妖姚寥寮尿嶢拗搖撓擾料曜樂橈燎燿瑤療"],["e9a1","窈窯繇繞耀腰蓼蟯要謠遙遼邀饒慾欲浴縟褥辱俑傭冗勇埇墉容庸慂榕涌湧溶熔瑢用甬聳茸蓉踊鎔鏞龍于佑偶優又友右宇寓尤愚憂旴牛玗瑀盂祐禑禹紆羽芋藕虞迂遇郵釪隅雨雩勖彧旭昱栯煜稶郁頊云暈橒殞澐熉耘芸蕓"],["eaa1","運隕雲韻蔚鬱亐熊雄元原員圓園垣媛嫄寃怨愿援沅洹湲源爰猿瑗苑袁轅遠阮院願鴛月越鉞位偉僞危圍委威尉慰暐渭爲瑋緯胃萎葦蔿蝟衛褘謂違韋魏乳侑儒兪劉唯喩孺宥幼幽庾悠惟愈愉揄攸有杻柔柚柳楡楢油洧流游溜"],["eba1","濡猶猷琉瑜由留癒硫紐維臾萸裕誘諛諭踰蹂遊逾遺酉釉鍮類六堉戮毓肉育陸倫允奫尹崙淪潤玧胤贇輪鈗閏律慄栗率聿戎瀜絨融隆垠恩慇殷誾銀隱乙吟淫蔭陰音飮揖泣邑凝應膺鷹依倚儀宜意懿擬椅毅疑矣義艤薏蟻衣誼"],["eca1","議醫二以伊利吏夷姨履已弛彛怡易李梨泥爾珥理異痍痢移罹而耳肄苡荑裏裡貽貳邇里離飴餌匿溺瀷益翊翌翼謚人仁刃印吝咽因姻寅引忍湮燐璘絪茵藺蚓認隣靭靷鱗麟一佚佾壹日溢逸鎰馹任壬妊姙恁林淋稔臨荏賃入卄"],["eda1","立笠粒仍剩孕芿仔刺咨姉姿子字孜恣慈滋炙煮玆瓷疵磁紫者自茨蔗藉諮資雌作勺嚼斫昨灼炸爵綽芍酌雀鵲孱棧殘潺盞岑暫潛箴簪蠶雜丈仗匠場墻壯奬將帳庄張掌暲杖樟檣欌漿牆狀獐璋章粧腸臟臧莊葬蔣薔藏裝贓醬長"],["eea1","障再哉在宰才材栽梓渽滓災縡裁財載齋齎爭箏諍錚佇低儲咀姐底抵杵楮樗沮渚狙猪疽箸紵苧菹著藷詛貯躇這邸雎齟勣吊嫡寂摘敵滴狄炙的積笛籍績翟荻謫賊赤跡蹟迪迹適鏑佃佺傳全典前剪塡塼奠專展廛悛戰栓殿氈澱"],["efa1","煎琠田甸畑癲筌箋箭篆纏詮輾轉鈿銓錢鐫電顚顫餞切截折浙癤竊節絶占岾店漸点粘霑鮎點接摺蝶丁井亭停偵呈姃定幀庭廷征情挺政整旌晶晸柾楨檉正汀淀淨渟湞瀞炡玎珽町睛碇禎程穽精綎艇訂諪貞鄭酊釘鉦鋌錠霆靖"],["f0a1","靜頂鼎制劑啼堤帝弟悌提梯濟祭第臍薺製諸蹄醍除際霽題齊俎兆凋助嘲弔彫措操早晁曺曹朝條棗槽漕潮照燥爪璪眺祖祚租稠窕粗糟組繰肇藻蚤詔調趙躁造遭釣阻雕鳥族簇足鏃存尊卒拙猝倧宗從悰慫棕淙琮種終綜縱腫"],["f1a1","踪踵鍾鐘佐坐左座挫罪主住侏做姝胄呪周嗾奏宙州廚晝朱柱株注洲湊澍炷珠疇籌紂紬綢舟蛛註誅走躊輳週酎酒鑄駐竹粥俊儁准埈寯峻晙樽浚準濬焌畯竣蠢逡遵雋駿茁中仲衆重卽櫛楫汁葺增憎曾拯烝甑症繒蒸證贈之只"],["f2a1","咫地址志持指摯支旨智枝枳止池沚漬知砥祉祗紙肢脂至芝芷蜘誌識贄趾遲直稙稷織職唇嗔塵振搢晉晋桭榛殄津溱珍瑨璡畛疹盡眞瞋秦縉縝臻蔯袗診賑軫辰進鎭陣陳震侄叱姪嫉帙桎瓆疾秩窒膣蛭質跌迭斟朕什執潗緝輯"],["f3a1","鏶集徵懲澄且侘借叉嗟嵯差次此磋箚茶蹉車遮捉搾着窄錯鑿齪撰澯燦璨瓚竄簒纂粲纘讚贊鑽餐饌刹察擦札紮僭參塹慘慙懺斬站讒讖倉倡創唱娼廠彰愴敞昌昶暢槍滄漲猖瘡窓脹艙菖蒼債埰寀寨彩採砦綵菜蔡采釵冊柵策"],["f4a1","責凄妻悽處倜刺剔尺慽戚拓擲斥滌瘠脊蹠陟隻仟千喘天川擅泉淺玔穿舛薦賤踐遷釧闡阡韆凸哲喆徹撤澈綴輟轍鐵僉尖沾添甛瞻簽籤詹諂堞妾帖捷牒疊睫諜貼輒廳晴淸聽菁請靑鯖切剃替涕滯締諦逮遞體初剿哨憔抄招梢"],["f5a1","椒楚樵炒焦硝礁礎秒稍肖艸苕草蕉貂超酢醋醮促囑燭矗蜀觸寸忖村邨叢塚寵悤憁摠總聰蔥銃撮催崔最墜抽推椎楸樞湫皺秋芻萩諏趨追鄒酋醜錐錘鎚雛騶鰍丑畜祝竺筑築縮蓄蹙蹴軸逐春椿瑃出朮黜充忠沖蟲衝衷悴膵萃"],["f6a1","贅取吹嘴娶就炊翠聚脆臭趣醉驟鷲側仄厠惻測層侈値嗤峙幟恥梔治淄熾痔痴癡稚穉緇緻置致蚩輜雉馳齒則勅飭親七柒漆侵寢枕沈浸琛砧針鍼蟄秤稱快他咤唾墮妥惰打拖朶楕舵陀馱駝倬卓啄坼度托拓擢晫柝濁濯琢琸託"],["f7a1","鐸呑嘆坦彈憚歎灘炭綻誕奪脫探眈耽貪塔搭榻宕帑湯糖蕩兌台太怠態殆汰泰笞胎苔跆邰颱宅擇澤撑攄兎吐土討慟桶洞痛筒統通堆槌腿褪退頹偸套妬投透鬪慝特闖坡婆巴把播擺杷波派爬琶破罷芭跛頗判坂板版瓣販辦鈑"],["f8a1","阪八叭捌佩唄悖敗沛浿牌狽稗覇貝彭澎烹膨愎便偏扁片篇編翩遍鞭騙貶坪平枰萍評吠嬖幣廢弊斃肺蔽閉陛佈包匍匏咆哺圃布怖抛抱捕暴泡浦疱砲胞脯苞葡蒲袍褒逋鋪飽鮑幅暴曝瀑爆輻俵剽彪慓杓標漂瓢票表豹飇飄驃"],["f9a1","品稟楓諷豊風馮彼披疲皮被避陂匹弼必泌珌畢疋筆苾馝乏逼下何厦夏廈昰河瑕荷蝦賀遐霞鰕壑學虐謔鶴寒恨悍旱汗漢澣瀚罕翰閑閒限韓割轄函含咸啣喊檻涵緘艦銜陷鹹合哈盒蛤閤闔陜亢伉姮嫦巷恒抗杭桁沆港缸肛航"],["faa1","行降項亥偕咳垓奚孩害懈楷海瀣蟹解該諧邂駭骸劾核倖幸杏荇行享向嚮珦鄕響餉饗香噓墟虛許憲櫶獻軒歇險驗奕爀赫革俔峴弦懸晛泫炫玄玹現眩睍絃絢縣舷衒見賢鉉顯孑穴血頁嫌俠協夾峽挾浹狹脅脇莢鋏頰亨兄刑型"],["fba1","形泂滎瀅灐炯熒珩瑩荊螢衡逈邢鎣馨兮彗惠慧暳蕙蹊醯鞋乎互呼壕壺好岵弧戶扈昊晧毫浩淏湖滸澔濠濩灝狐琥瑚瓠皓祜糊縞胡芦葫蒿虎號蝴護豪鎬頀顥惑或酷婚昏混渾琿魂忽惚笏哄弘汞泓洪烘紅虹訌鴻化和嬅樺火畵"],["fca1","禍禾花華話譁貨靴廓擴攫確碻穫丸喚奐宦幻患換歡晥桓渙煥環紈還驩鰥活滑猾豁闊凰幌徨恍惶愰慌晃晄榥況湟滉潢煌璜皇篁簧荒蝗遑隍黃匯回廻徊恢悔懷晦會檜淮澮灰獪繪膾茴蛔誨賄劃獲宖橫鐄哮嚆孝效斅曉梟涍淆"],["fda1","爻肴酵驍侯候厚后吼喉嗅帿後朽煦珝逅勛勳塤壎焄熏燻薰訓暈薨喧暄煊萱卉喙毁彙徽揮暉煇諱輝麾休携烋畦虧恤譎鷸兇凶匈洶胸黑昕欣炘痕吃屹紇訖欠欽歆吸恰洽翕興僖凞喜噫囍姬嬉希憙憘戱晞曦熙熹熺犧禧稀羲詰"]]')},72324:Wt=>{"use strict";Wt.exports=JSON.parse('[["0","\\u0000",127],["a140"," ,、。.‧;:?!︰…‥﹐﹑﹒·﹔﹕﹖﹗|–︱—︳╴︴﹏()︵︶{}︷︸〔〕︹︺【】︻︼《》︽︾〈〉︿﹀「」﹁﹂『』﹃﹄﹙﹚"],["a1a1","﹛﹜﹝﹞‘’“”〝〞‵′#&*※§〃○●△▲◎☆★◇◆□■▽▼㊣℅¯ ̄_ˍ﹉﹊﹍﹎﹋﹌﹟﹠﹡+-×÷±√<>=≦≧≠∞≒≡﹢",4,"~∩∪⊥∠∟⊿㏒㏑∫∮∵∴♀♂⊕⊙↑↓←→↖↗↙↘∥∣/"],["a240","\∕﹨$¥〒¢£%@℃℉﹩﹪﹫㏕㎜㎝㎞㏎㎡㎎㎏㏄°兙兛兞兝兡兣嗧瓩糎▁",7,"▏▎▍▌▋▊▉┼┴┬┤├▔─│▕┌┐└┘╭"],["a2a1","╮╰╯═╞╪╡◢◣◥◤╱╲╳0",9,"Ⅰ",9,"〡",8,"十卄卅A",25,"a",21],["a340","wxyzΑ",16,"Σ",6,"α",16,"σ",6,"ㄅ",10],["a3a1","ㄐ",25,"˙ˉˊˇˋ"],["a3e1","€"],["a440","一乙丁七乃九了二人儿入八几刀刁力匕十卜又三下丈上丫丸凡久么也乞于亡兀刃勺千叉口土士夕大女子孑孓寸小尢尸山川工己已巳巾干廾弋弓才"],["a4a1","丑丐不中丰丹之尹予云井互五亢仁什仃仆仇仍今介仄元允內六兮公冗凶分切刈勻勾勿化匹午升卅卞厄友及反壬天夫太夭孔少尤尺屯巴幻廿弔引心戈戶手扎支文斗斤方日曰月木欠止歹毋比毛氏水火爪父爻片牙牛犬王丙"],["a540","世丕且丘主乍乏乎以付仔仕他仗代令仙仞充兄冉冊冬凹出凸刊加功包匆北匝仟半卉卡占卯卮去可古右召叮叩叨叼司叵叫另只史叱台句叭叻四囚外"],["a5a1","央失奴奶孕它尼巨巧左市布平幼弁弘弗必戊打扔扒扑斥旦朮本未末札正母民氐永汁汀氾犯玄玉瓜瓦甘生用甩田由甲申疋白皮皿目矛矢石示禾穴立丞丟乒乓乩亙交亦亥仿伉伙伊伕伍伐休伏仲件任仰仳份企伋光兇兆先全"],["a640","共再冰列刑划刎刖劣匈匡匠印危吉吏同吊吐吁吋各向名合吃后吆吒因回囝圳地在圭圬圯圩夙多夷夸妄奸妃好她如妁字存宇守宅安寺尖屹州帆并年"],["a6a1","式弛忙忖戎戌戍成扣扛托收早旨旬旭曲曳有朽朴朱朵次此死氖汝汗汙江池汐汕污汛汍汎灰牟牝百竹米糸缶羊羽老考而耒耳聿肉肋肌臣自至臼舌舛舟艮色艾虫血行衣西阡串亨位住佇佗佞伴佛何估佐佑伽伺伸佃佔似但佣"],["a740","作你伯低伶余佝佈佚兌克免兵冶冷別判利刪刨劫助努劬匣即卵吝吭吞吾否呎吧呆呃吳呈呂君吩告吹吻吸吮吵吶吠吼呀吱含吟听囪困囤囫坊坑址坍"],["a7a1","均坎圾坐坏圻壯夾妝妒妨妞妣妙妖妍妤妓妊妥孝孜孚孛完宋宏尬局屁尿尾岐岑岔岌巫希序庇床廷弄弟彤形彷役忘忌志忍忱快忸忪戒我抄抗抖技扶抉扭把扼找批扳抒扯折扮投抓抑抆改攻攸旱更束李杏材村杜杖杞杉杆杠"],["a840","杓杗步每求汞沙沁沈沉沅沛汪決沐汰沌汨沖沒汽沃汲汾汴沆汶沍沔沘沂灶灼災灸牢牡牠狄狂玖甬甫男甸皂盯矣私秀禿究系罕肖肓肝肘肛肚育良芒"],["a8a1","芋芍見角言谷豆豕貝赤走足身車辛辰迂迆迅迄巡邑邢邪邦那酉釆里防阮阱阪阬並乖乳事些亞享京佯依侍佳使佬供例來侃佰併侈佩佻侖佾侏侑佺兔兒兕兩具其典冽函刻券刷刺到刮制剁劾劻卒協卓卑卦卷卸卹取叔受味呵"],["a940","咖呸咕咀呻呷咄咒咆呼咐呱呶和咚呢周咋命咎固垃坷坪坩坡坦坤坼夜奉奇奈奄奔妾妻委妹妮姑姆姐姍始姓姊妯妳姒姅孟孤季宗定官宜宙宛尚屈居"],["a9a1","屆岷岡岸岩岫岱岳帘帚帖帕帛帑幸庚店府底庖延弦弧弩往征彿彼忝忠忽念忿怏怔怯怵怖怪怕怡性怩怫怛或戕房戾所承拉拌拄抿拂抹拒招披拓拔拋拈抨抽押拐拙拇拍抵拚抱拘拖拗拆抬拎放斧於旺昔易昌昆昂明昀昏昕昊"],["aa40","昇服朋杭枋枕東果杳杷枇枝林杯杰板枉松析杵枚枓杼杪杲欣武歧歿氓氛泣注泳沱泌泥河沽沾沼波沫法泓沸泄油況沮泗泅泱沿治泡泛泊沬泯泜泖泠"],["aaa1","炕炎炒炊炙爬爭爸版牧物狀狎狙狗狐玩玨玟玫玥甽疝疙疚的盂盲直知矽社祀祁秉秈空穹竺糾罔羌羋者肺肥肢肱股肫肩肴肪肯臥臾舍芳芝芙芭芽芟芹花芬芥芯芸芣芰芾芷虎虱初表軋迎返近邵邸邱邶采金長門阜陀阿阻附"],["ab40","陂隹雨青非亟亭亮信侵侯便俠俑俏保促侶俘俟俊俗侮俐俄係俚俎俞侷兗冒冑冠剎剃削前剌剋則勇勉勃勁匍南卻厚叛咬哀咨哎哉咸咦咳哇哂咽咪品"],["aba1","哄哈咯咫咱咻咩咧咿囿垂型垠垣垢城垮垓奕契奏奎奐姜姘姿姣姨娃姥姪姚姦威姻孩宣宦室客宥封屎屏屍屋峙峒巷帝帥帟幽庠度建弈弭彥很待徊律徇後徉怒思怠急怎怨恍恰恨恢恆恃恬恫恪恤扁拜挖按拼拭持拮拽指拱拷"],["ac40","拯括拾拴挑挂政故斫施既春昭映昧是星昨昱昤曷柿染柱柔某柬架枯柵柩柯柄柑枴柚查枸柏柞柳枰柙柢柝柒歪殃殆段毒毗氟泉洋洲洪流津洌洱洞洗"],["aca1","活洽派洶洛泵洹洧洸洩洮洵洎洫炫為炳炬炯炭炸炮炤爰牲牯牴狩狠狡玷珊玻玲珍珀玳甚甭畏界畎畋疫疤疥疢疣癸皆皇皈盈盆盃盅省盹相眉看盾盼眇矜砂研砌砍祆祉祈祇禹禺科秒秋穿突竿竽籽紂紅紀紉紇約紆缸美羿耄"],["ad40","耐耍耑耶胖胥胚胃胄背胡胛胎胞胤胝致舢苧范茅苣苛苦茄若茂茉苒苗英茁苜苔苑苞苓苟苯茆虐虹虻虺衍衫要觔計訂訃貞負赴赳趴軍軌述迦迢迪迥"],["ada1","迭迫迤迨郊郎郁郃酋酊重閂限陋陌降面革韋韭音頁風飛食首香乘亳倌倍倣俯倦倥俸倩倖倆值借倚倒們俺倀倔倨俱倡個候倘俳修倭倪俾倫倉兼冤冥冢凍凌准凋剖剜剔剛剝匪卿原厝叟哨唐唁唷哼哥哲唆哺唔哩哭員唉哮哪"],["ae40","哦唧唇哽唏圃圄埂埔埋埃堉夏套奘奚娑娘娜娟娛娓姬娠娣娩娥娌娉孫屘宰害家宴宮宵容宸射屑展屐峭峽峻峪峨峰島崁峴差席師庫庭座弱徒徑徐恙"],["aea1","恣恥恐恕恭恩息悄悟悚悍悔悌悅悖扇拳挈拿捎挾振捕捂捆捏捉挺捐挽挪挫挨捍捌效敉料旁旅時晉晏晃晒晌晅晁書朔朕朗校核案框桓根桂桔栩梳栗桌桑栽柴桐桀格桃株桅栓栘桁殊殉殷氣氧氨氦氤泰浪涕消涇浦浸海浙涓"],["af40","浬涉浮浚浴浩涌涊浹涅浥涔烊烘烤烙烈烏爹特狼狹狽狸狷玆班琉珮珠珪珞畔畝畜畚留疾病症疲疳疽疼疹痂疸皋皰益盍盎眩真眠眨矩砰砧砸砝破砷"],["afa1","砥砭砠砟砲祕祐祠祟祖神祝祗祚秤秣秧租秦秩秘窄窈站笆笑粉紡紗紋紊素索純紐紕級紜納紙紛缺罟羔翅翁耆耘耕耙耗耽耿胱脂胰脅胭胴脆胸胳脈能脊胼胯臭臬舀舐航舫舨般芻茫荒荔荊茸荐草茵茴荏茲茹茶茗荀茱茨荃"],["b040","虔蚊蚪蚓蚤蚩蚌蚣蚜衰衷袁袂衽衹記訐討訌訕訊託訓訖訏訑豈豺豹財貢起躬軒軔軏辱送逆迷退迺迴逃追逅迸邕郡郝郢酒配酌釘針釗釜釙閃院陣陡"],["b0a1","陛陝除陘陞隻飢馬骨高鬥鬲鬼乾偺偽停假偃偌做偉健偶偎偕偵側偷偏倏偯偭兜冕凰剪副勒務勘動匐匏匙匿區匾參曼商啪啦啄啞啡啃啊唱啖問啕唯啤唸售啜唬啣唳啁啗圈國圉域堅堊堆埠埤基堂堵執培夠奢娶婁婉婦婪婀"],["b140","娼婢婚婆婊孰寇寅寄寂宿密尉專將屠屜屝崇崆崎崛崖崢崑崩崔崙崤崧崗巢常帶帳帷康庸庶庵庾張強彗彬彩彫得徙從徘御徠徜恿患悉悠您惋悴惦悽"],["b1a1","情悻悵惜悼惘惕惆惟悸惚惇戚戛扈掠控捲掖探接捷捧掘措捱掩掉掃掛捫推掄授掙採掬排掏掀捻捩捨捺敝敖救教敗啟敏敘敕敔斜斛斬族旋旌旎晝晚晤晨晦晞曹勗望梁梯梢梓梵桿桶梱梧梗械梃棄梭梆梅梔條梨梟梡梂欲殺"],["b240","毫毬氫涎涼淳淙液淡淌淤添淺清淇淋涯淑涮淞淹涸混淵淅淒渚涵淚淫淘淪深淮淨淆淄涪淬涿淦烹焉焊烽烯爽牽犁猜猛猖猓猙率琅琊球理現琍瓠瓶"],["b2a1","瓷甜產略畦畢異疏痔痕疵痊痍皎盔盒盛眷眾眼眶眸眺硫硃硎祥票祭移窒窕笠笨笛第符笙笞笮粒粗粕絆絃統紮紹紼絀細紳組累終紲紱缽羞羚翌翎習耜聊聆脯脖脣脫脩脰脤舂舵舷舶船莎莞莘荸莢莖莽莫莒莊莓莉莠荷荻荼"],["b340","莆莧處彪蛇蛀蚶蛄蚵蛆蛋蚱蚯蛉術袞袈被袒袖袍袋覓規訪訝訣訥許設訟訛訢豉豚販責貫貨貪貧赧赦趾趺軛軟這逍通逗連速逝逐逕逞造透逢逖逛途"],["b3a1","部郭都酗野釵釦釣釧釭釩閉陪陵陳陸陰陴陶陷陬雀雪雩章竟頂頃魚鳥鹵鹿麥麻傢傍傅備傑傀傖傘傚最凱割剴創剩勞勝勛博厥啻喀喧啼喊喝喘喂喜喪喔喇喋喃喳單喟唾喲喚喻喬喱啾喉喫喙圍堯堪場堤堰報堡堝堠壹壺奠"],["b440","婷媚婿媒媛媧孳孱寒富寓寐尊尋就嵌嵐崴嵇巽幅帽幀幃幾廊廁廂廄弼彭復循徨惑惡悲悶惠愜愣惺愕惰惻惴慨惱愎惶愉愀愒戟扉掣掌描揀揩揉揆揍"],["b4a1","插揣提握揖揭揮捶援揪換摒揚揹敞敦敢散斑斐斯普晰晴晶景暑智晾晷曾替期朝棺棕棠棘棗椅棟棵森棧棹棒棲棣棋棍植椒椎棉棚楮棻款欺欽殘殖殼毯氮氯氬港游湔渡渲湧湊渠渥渣減湛湘渤湖湮渭渦湯渴湍渺測湃渝渾滋"],["b540","溉渙湎湣湄湲湩湟焙焚焦焰無然煮焜牌犄犀猶猥猴猩琺琪琳琢琥琵琶琴琯琛琦琨甥甦畫番痢痛痣痙痘痞痠登發皖皓皴盜睏短硝硬硯稍稈程稅稀窘"],["b5a1","窗窖童竣等策筆筐筒答筍筋筏筑粟粥絞結絨絕紫絮絲絡給絢絰絳善翔翕耋聒肅腕腔腋腑腎脹腆脾腌腓腴舒舜菩萃菸萍菠菅萋菁華菱菴著萊菰萌菌菽菲菊萸萎萄菜萇菔菟虛蛟蛙蛭蛔蛛蛤蛐蛞街裁裂袱覃視註詠評詞証詁"],["b640","詔詛詐詆訴診訶詖象貂貯貼貳貽賁費賀貴買貶貿貸越超趁跎距跋跚跑跌跛跆軻軸軼辜逮逵週逸進逶鄂郵鄉郾酣酥量鈔鈕鈣鈉鈞鈍鈐鈇鈑閔閏開閑"],["b6a1","間閒閎隊階隋陽隅隆隍陲隄雁雅雄集雇雯雲韌項順須飧飪飯飩飲飭馮馭黃黍黑亂傭債傲傳僅傾催傷傻傯僇剿剷剽募勦勤勢勣匯嗟嗨嗓嗦嗎嗜嗇嗑嗣嗤嗯嗚嗡嗅嗆嗥嗉園圓塞塑塘塗塚塔填塌塭塊塢塒塋奧嫁嫉嫌媾媽媼"],["b740","媳嫂媲嵩嵯幌幹廉廈弒彙徬微愚意慈感想愛惹愁愈慎慌慄慍愾愴愧愍愆愷戡戢搓搾搞搪搭搽搬搏搜搔損搶搖搗搆敬斟新暗暉暇暈暖暄暘暍會榔業"],["b7a1","楚楷楠楔極椰概楊楨楫楞楓楹榆楝楣楛歇歲毀殿毓毽溢溯滓溶滂源溝滇滅溥溘溼溺溫滑準溜滄滔溪溧溴煎煙煩煤煉照煜煬煦煌煥煞煆煨煖爺牒猷獅猿猾瑯瑚瑕瑟瑞瑁琿瑙瑛瑜當畸瘀痰瘁痲痱痺痿痴痳盞盟睛睫睦睞督"],["b840","睹睪睬睜睥睨睢矮碎碰碗碘碌碉硼碑碓硿祺祿禁萬禽稜稚稠稔稟稞窟窠筷節筠筮筧粱粳粵經絹綑綁綏絛置罩罪署義羨群聖聘肆肄腱腰腸腥腮腳腫"],["b8a1","腹腺腦舅艇蒂葷落萱葵葦葫葉葬葛萼萵葡董葩葭葆虞虜號蛹蜓蜈蜇蜀蛾蛻蜂蜃蜆蜊衙裟裔裙補裘裝裡裊裕裒覜解詫該詳試詩詰誇詼詣誠話誅詭詢詮詬詹詻訾詨豢貊貉賊資賈賄貲賃賂賅跡跟跨路跳跺跪跤跦躲較載軾輊"],["b940","辟農運遊道遂達逼違遐遇遏過遍遑逾遁鄒鄗酬酪酩釉鈷鉗鈸鈽鉀鈾鉛鉋鉤鉑鈴鉉鉍鉅鈹鈿鉚閘隘隔隕雍雋雉雊雷電雹零靖靴靶預頑頓頊頒頌飼飴"],["b9a1","飽飾馳馱馴髡鳩麂鼎鼓鼠僧僮僥僖僭僚僕像僑僱僎僩兢凳劃劂匱厭嗾嘀嘛嘗嗽嘔嘆嘉嘍嘎嗷嘖嘟嘈嘐嗶團圖塵塾境墓墊塹墅塽壽夥夢夤奪奩嫡嫦嫩嫗嫖嫘嫣孵寞寧寡寥實寨寢寤察對屢嶄嶇幛幣幕幗幔廓廖弊彆彰徹慇"],["ba40","愿態慷慢慣慟慚慘慵截撇摘摔撤摸摟摺摑摧搴摭摻敲斡旗旖暢暨暝榜榨榕槁榮槓構榛榷榻榫榴槐槍榭槌榦槃榣歉歌氳漳演滾漓滴漩漾漠漬漏漂漢"],["baa1","滿滯漆漱漸漲漣漕漫漯澈漪滬漁滲滌滷熔熙煽熊熄熒爾犒犖獄獐瑤瑣瑪瑰瑭甄疑瘧瘍瘋瘉瘓盡監瞄睽睿睡磁碟碧碳碩碣禎福禍種稱窪窩竭端管箕箋筵算箝箔箏箸箇箄粹粽精綻綰綜綽綾綠緊綴網綱綺綢綿綵綸維緒緇綬"],["bb40","罰翠翡翟聞聚肇腐膀膏膈膊腿膂臧臺與舔舞艋蓉蒿蓆蓄蒙蒞蒲蒜蓋蒸蓀蓓蒐蒼蓑蓊蜿蜜蜻蜢蜥蜴蜘蝕蜷蜩裳褂裴裹裸製裨褚裯誦誌語誣認誡誓誤"],["bba1","說誥誨誘誑誚誧豪貍貌賓賑賒赫趙趕跼輔輒輕輓辣遠遘遜遣遙遞遢遝遛鄙鄘鄞酵酸酷酴鉸銀銅銘銖鉻銓銜銨鉼銑閡閨閩閣閥閤隙障際雌雒需靼鞅韶頗領颯颱餃餅餌餉駁骯骰髦魁魂鳴鳶鳳麼鼻齊億儀僻僵價儂儈儉儅凜"],["bc40","劇劈劉劍劊勰厲嘮嘻嘹嘲嘿嘴嘩噓噎噗噴嘶嘯嘰墀墟增墳墜墮墩墦奭嬉嫻嬋嫵嬌嬈寮寬審寫層履嶝嶔幢幟幡廢廚廟廝廣廠彈影德徵慶慧慮慝慕憂"],["bca1","慼慰慫慾憧憐憫憎憬憚憤憔憮戮摩摯摹撞撲撈撐撰撥撓撕撩撒撮播撫撚撬撙撢撳敵敷數暮暫暴暱樣樟槨樁樞標槽模樓樊槳樂樅槭樑歐歎殤毅毆漿潼澄潑潦潔澆潭潛潸潮澎潺潰潤澗潘滕潯潠潟熟熬熱熨牖犛獎獗瑩璋璃"],["bd40","瑾璀畿瘠瘩瘟瘤瘦瘡瘢皚皺盤瞎瞇瞌瞑瞋磋磅確磊碾磕碼磐稿稼穀稽稷稻窯窮箭箱範箴篆篇篁箠篌糊締練緯緻緘緬緝編緣線緞緩綞緙緲緹罵罷羯"],["bda1","翩耦膛膜膝膠膚膘蔗蔽蔚蓮蔬蔭蔓蔑蔣蔡蔔蓬蔥蓿蔆螂蝴蝶蝠蝦蝸蝨蝙蝗蝌蝓衛衝褐複褒褓褕褊誼諒談諄誕請諸課諉諂調誰論諍誶誹諛豌豎豬賠賞賦賤賬賭賢賣賜質賡赭趟趣踫踐踝踢踏踩踟踡踞躺輝輛輟輩輦輪輜輞"],["be40","輥適遮遨遭遷鄰鄭鄧鄱醇醉醋醃鋅銻銷鋪銬鋤鋁銳銼鋒鋇鋰銲閭閱霄霆震霉靠鞍鞋鞏頡頫頜颳養餓餒餘駝駐駟駛駑駕駒駙骷髮髯鬧魅魄魷魯鴆鴉"],["bea1","鴃麩麾黎墨齒儒儘儔儐儕冀冪凝劑劓勳噙噫噹噩噤噸噪器噥噱噯噬噢噶壁墾壇壅奮嬝嬴學寰導彊憲憑憩憊懍憶憾懊懈戰擅擁擋撻撼據擄擇擂操撿擒擔撾整曆曉暹曄曇暸樽樸樺橙橫橘樹橄橢橡橋橇樵機橈歙歷氅濂澱澡"],["bf40","濃澤濁澧澳激澹澶澦澠澴熾燉燐燒燈燕熹燎燙燜燃燄獨璜璣璘璟璞瓢甌甍瘴瘸瘺盧盥瞠瞞瞟瞥磨磚磬磧禦積穎穆穌穋窺篙簑築篤篛篡篩篦糕糖縊"],["bfa1","縑縈縛縣縞縝縉縐罹羲翰翱翮耨膳膩膨臻興艘艙蕊蕙蕈蕨蕩蕃蕉蕭蕪蕞螃螟螞螢融衡褪褲褥褫褡親覦諦諺諫諱謀諜諧諮諾謁謂諷諭諳諶諼豫豭貓賴蹄踱踴蹂踹踵輻輯輸輳辨辦遵遴選遲遼遺鄴醒錠錶鋸錳錯錢鋼錫錄錚"],["c040","錐錦錡錕錮錙閻隧隨險雕霎霑霖霍霓霏靛靜靦鞘頰頸頻頷頭頹頤餐館餞餛餡餚駭駢駱骸骼髻髭鬨鮑鴕鴣鴦鴨鴒鴛默黔龍龜優償儡儲勵嚎嚀嚐嚅嚇"],["c0a1","嚏壕壓壑壎嬰嬪嬤孺尷屨嶼嶺嶽嶸幫彌徽應懂懇懦懋戲戴擎擊擘擠擰擦擬擱擢擭斂斃曙曖檀檔檄檢檜櫛檣橾檗檐檠歜殮毚氈濘濱濟濠濛濤濫濯澀濬濡濩濕濮濰燧營燮燦燥燭燬燴燠爵牆獰獲璩環璦璨癆療癌盪瞳瞪瞰瞬"],["c140","瞧瞭矯磷磺磴磯礁禧禪穗窿簇簍篾篷簌篠糠糜糞糢糟糙糝縮績繆縷縲繃縫總縱繅繁縴縹繈縵縿縯罄翳翼聱聲聰聯聳臆臃膺臂臀膿膽臉膾臨舉艱薪"],["c1a1","薄蕾薜薑薔薯薛薇薨薊虧蟀蟑螳蟒蟆螫螻螺蟈蟋褻褶襄褸褽覬謎謗謙講謊謠謝謄謐豁谿豳賺賽購賸賻趨蹉蹋蹈蹊轄輾轂轅輿避遽還邁邂邀鄹醣醞醜鍍鎂錨鍵鍊鍥鍋錘鍾鍬鍛鍰鍚鍔闊闋闌闈闆隱隸雖霜霞鞠韓顆颶餵騁"],["c240","駿鮮鮫鮪鮭鴻鴿麋黏點黜黝黛鼾齋叢嚕嚮壙壘嬸彝懣戳擴擲擾攆擺擻擷斷曜朦檳檬櫃檻檸櫂檮檯歟歸殯瀉瀋濾瀆濺瀑瀏燻燼燾燸獷獵璧璿甕癖癘"],["c2a1","癒瞽瞿瞻瞼礎禮穡穢穠竄竅簫簧簪簞簣簡糧織繕繞繚繡繒繙罈翹翻職聶臍臏舊藏薩藍藐藉薰薺薹薦蟯蟬蟲蟠覆覲觴謨謹謬謫豐贅蹙蹣蹦蹤蹟蹕軀轉轍邇邃邈醫醬釐鎔鎊鎖鎢鎳鎮鎬鎰鎘鎚鎗闔闖闐闕離雜雙雛雞霤鞣鞦"],["c340","鞭韹額顏題顎顓颺餾餿餽餮馥騎髁鬃鬆魏魎魍鯊鯉鯽鯈鯀鵑鵝鵠黠鼕鼬儳嚥壞壟壢寵龐廬懲懷懶懵攀攏曠曝櫥櫝櫚櫓瀛瀟瀨瀚瀝瀕瀘爆爍牘犢獸"],["c3a1","獺璽瓊瓣疇疆癟癡矇礙禱穫穩簾簿簸簽簷籀繫繭繹繩繪羅繳羶羹羸臘藩藝藪藕藤藥藷蟻蠅蠍蟹蟾襠襟襖襞譁譜識證譚譎譏譆譙贈贊蹼蹲躇蹶蹬蹺蹴轔轎辭邊邋醱醮鏡鏑鏟鏃鏈鏜鏝鏖鏢鏍鏘鏤鏗鏨關隴難霪霧靡韜韻類"],["c440","願顛颼饅饉騖騙鬍鯨鯧鯖鯛鶉鵡鵲鵪鵬麒麗麓麴勸嚨嚷嚶嚴嚼壤孀孃孽寶巉懸懺攘攔攙曦朧櫬瀾瀰瀲爐獻瓏癢癥礦礪礬礫竇競籌籃籍糯糰辮繽繼"],["c4a1","纂罌耀臚艦藻藹蘑藺蘆蘋蘇蘊蠔蠕襤覺觸議譬警譯譟譫贏贍躉躁躅躂醴釋鐘鐃鏽闡霰飄饒饑馨騫騰騷騵鰓鰍鹹麵黨鼯齟齣齡儷儸囁囀囂夔屬巍懼懾攝攜斕曩櫻欄櫺殲灌爛犧瓖瓔癩矓籐纏續羼蘗蘭蘚蠣蠢蠡蠟襪襬覽譴"],["c540","護譽贓躊躍躋轟辯醺鐮鐳鐵鐺鐸鐲鐫闢霸霹露響顧顥饗驅驃驀騾髏魔魑鰭鰥鶯鶴鷂鶸麝黯鼙齜齦齧儼儻囈囊囉孿巔巒彎懿攤權歡灑灘玀瓤疊癮癬"],["c5a1","禳籠籟聾聽臟襲襯觼讀贖贗躑躓轡酈鑄鑑鑒霽霾韃韁顫饕驕驍髒鬚鱉鰱鰾鰻鷓鷗鼴齬齪龔囌巖戀攣攫攪曬欐瓚竊籤籣籥纓纖纔臢蘸蘿蠱變邐邏鑣鑠鑤靨顯饜驚驛驗髓體髑鱔鱗鱖鷥麟黴囑壩攬灞癱癲矗罐羈蠶蠹衢讓讒"],["c640","讖艷贛釀鑪靂靈靄韆顰驟鬢魘鱟鷹鷺鹼鹽鼇齷齲廳欖灣籬籮蠻觀躡釁鑲鑰顱饞髖鬣黌灤矚讚鑷韉驢驥纜讜躪釅鑽鑾鑼鱷鱸黷豔鑿鸚爨驪鬱鸛鸞籲"],["c940","乂乜凵匚厂万丌乇亍囗兀屮彳丏冇与丮亓仂仉仈冘勼卬厹圠夃夬尐巿旡殳毌气爿丱丼仨仜仩仡仝仚刌匜卌圢圣夗夯宁宄尒尻屴屳帄庀庂忉戉扐氕"],["c9a1","氶汃氿氻犮犰玊禸肊阞伎优伬仵伔仱伀价伈伝伂伅伢伓伄仴伒冱刓刉刐劦匢匟卍厊吇囡囟圮圪圴夼妀奼妅奻奾奷奿孖尕尥屼屺屻屾巟幵庄异弚彴忕忔忏扜扞扤扡扦扢扙扠扚扥旯旮朾朹朸朻机朿朼朳氘汆汒汜汏汊汔汋"],["ca40","汌灱牞犴犵玎甪癿穵网艸艼芀艽艿虍襾邙邗邘邛邔阢阤阠阣佖伻佢佉体佤伾佧佒佟佁佘伭伳伿佡冏冹刜刞刡劭劮匉卣卲厎厏吰吷吪呔呅吙吜吥吘"],["caa1","吽呏呁吨吤呇囮囧囥坁坅坌坉坋坒夆奀妦妘妠妗妎妢妐妏妧妡宎宒尨尪岍岏岈岋岉岒岊岆岓岕巠帊帎庋庉庌庈庍弅弝彸彶忒忑忐忭忨忮忳忡忤忣忺忯忷忻怀忴戺抃抌抎抏抔抇扱扻扺扰抁抈扷扽扲扴攷旰旴旳旲旵杅杇"],["cb40","杙杕杌杈杝杍杚杋毐氙氚汸汧汫沄沋沏汱汯汩沚汭沇沕沜汦汳汥汻沎灴灺牣犿犽狃狆狁犺狅玕玗玓玔玒町甹疔疕皁礽耴肕肙肐肒肜芐芏芅芎芑芓"],["cba1","芊芃芄豸迉辿邟邡邥邞邧邠阰阨阯阭丳侘佼侅佽侀侇佶佴侉侄佷佌侗佪侚佹侁佸侐侜侔侞侒侂侕佫佮冞冼冾刵刲刳剆刱劼匊匋匼厒厔咇呿咁咑咂咈呫呺呾呥呬呴呦咍呯呡呠咘呣呧呤囷囹坯坲坭坫坱坰坶垀坵坻坳坴坢"],["cc40","坨坽夌奅妵妺姏姎妲姌姁妶妼姃姖妱妽姀姈妴姇孢孥宓宕屄屇岮岤岠岵岯岨岬岟岣岭岢岪岧岝岥岶岰岦帗帔帙弨弢弣弤彔徂彾彽忞忥怭怦怙怲怋"],["cca1","怴怊怗怳怚怞怬怢怍怐怮怓怑怌怉怜戔戽抭抴拑抾抪抶拊抮抳抯抻抩抰抸攽斨斻昉旼昄昒昈旻昃昋昍昅旽昑昐曶朊枅杬枎枒杶杻枘枆构杴枍枌杺枟枑枙枃杽极杸杹枔欥殀歾毞氝沓泬泫泮泙沶泔沭泧沷泐泂沺泃泆泭泲"],["cd40","泒泝沴沊沝沀泞泀洰泍泇沰泹泏泩泑炔炘炅炓炆炄炑炖炂炚炃牪狖狋狘狉狜狒狔狚狌狑玤玡玭玦玢玠玬玝瓝瓨甿畀甾疌疘皯盳盱盰盵矸矼矹矻矺"],["cda1","矷祂礿秅穸穻竻籵糽耵肏肮肣肸肵肭舠芠苀芫芚芘芛芵芧芮芼芞芺芴芨芡芩苂芤苃芶芢虰虯虭虮豖迒迋迓迍迖迕迗邲邴邯邳邰阹阽阼阺陃俍俅俓侲俉俋俁俔俜俙侻侳俛俇俖侺俀侹俬剄剉勀勂匽卼厗厖厙厘咺咡咭咥哏"],["ce40","哃茍咷咮哖咶哅哆咠呰咼咢咾呲哞咰垵垞垟垤垌垗垝垛垔垘垏垙垥垚垕壴复奓姡姞姮娀姱姝姺姽姼姶姤姲姷姛姩姳姵姠姾姴姭宨屌峐峘峌峗峋峛"],["cea1","峞峚峉峇峊峖峓峔峏峈峆峎峟峸巹帡帢帣帠帤庰庤庢庛庣庥弇弮彖徆怷怹恔恲恞恅恓恇恉恛恌恀恂恟怤恄恘恦恮扂扃拏挍挋拵挎挃拫拹挏挌拸拶挀挓挔拺挕拻拰敁敃斪斿昶昡昲昵昜昦昢昳昫昺昝昴昹昮朏朐柁柲柈枺"],["cf40","柜枻柸柘柀枷柅柫柤柟枵柍枳柷柶柮柣柂枹柎柧柰枲柼柆柭柌枮柦柛柺柉柊柃柪柋欨殂殄殶毖毘毠氠氡洨洴洭洟洼洿洒洊泚洳洄洙洺洚洑洀洝浂"],["cfa1","洁洘洷洃洏浀洇洠洬洈洢洉洐炷炟炾炱炰炡炴炵炩牁牉牊牬牰牳牮狊狤狨狫狟狪狦狣玅珌珂珈珅玹玶玵玴珫玿珇玾珃珆玸珋瓬瓮甮畇畈疧疪癹盄眈眃眄眅眊盷盻盺矧矨砆砑砒砅砐砏砎砉砃砓祊祌祋祅祄秕种秏秖秎窀"],["d040","穾竑笀笁籺籸籹籿粀粁紃紈紁罘羑羍羾耇耎耏耔耷胘胇胠胑胈胂胐胅胣胙胜胊胕胉胏胗胦胍臿舡芔苙苾苹茇苨茀苕茺苫苖苴苬苡苲苵茌苻苶苰苪"],["d0a1","苤苠苺苳苭虷虴虼虳衁衎衧衪衩觓訄訇赲迣迡迮迠郱邽邿郕郅邾郇郋郈釔釓陔陏陑陓陊陎倞倅倇倓倢倰倛俵俴倳倷倬俶俷倗倜倠倧倵倯倱倎党冔冓凊凄凅凈凎剡剚剒剞剟剕剢勍匎厞唦哢唗唒哧哳哤唚哿唄唈哫唑唅哱"],["d140","唊哻哷哸哠唎唃唋圁圂埌堲埕埒垺埆垽垼垸垶垿埇埐垹埁夎奊娙娖娭娮娕娏娗娊娞娳孬宧宭宬尃屖屔峬峿峮峱峷崀峹帩帨庨庮庪庬弳弰彧恝恚恧"],["d1a1","恁悢悈悀悒悁悝悃悕悛悗悇悜悎戙扆拲挐捖挬捄捅挶捃揤挹捋捊挼挩捁挴捘捔捙挭捇挳捚捑挸捗捀捈敊敆旆旃旄旂晊晟晇晑朒朓栟栚桉栲栳栻桋桏栖栱栜栵栫栭栯桎桄栴栝栒栔栦栨栮桍栺栥栠欬欯欭欱欴歭肂殈毦毤"],["d240","毨毣毢毧氥浺浣浤浶洍浡涒浘浢浭浯涑涍淯浿涆浞浧浠涗浰浼浟涂涘洯浨涋浾涀涄洖涃浻浽浵涐烜烓烑烝烋缹烢烗烒烞烠烔烍烅烆烇烚烎烡牂牸"],["d2a1","牷牶猀狺狴狾狶狳狻猁珓珙珥珖玼珧珣珩珜珒珛珔珝珚珗珘珨瓞瓟瓴瓵甡畛畟疰痁疻痄痀疿疶疺皊盉眝眛眐眓眒眣眑眕眙眚眢眧砣砬砢砵砯砨砮砫砡砩砳砪砱祔祛祏祜祓祒祑秫秬秠秮秭秪秜秞秝窆窉窅窋窌窊窇竘笐"],["d340","笄笓笅笏笈笊笎笉笒粄粑粊粌粈粍粅紞紝紑紎紘紖紓紟紒紏紌罜罡罞罠罝罛羖羒翃翂翀耖耾耹胺胲胹胵脁胻脀舁舯舥茳茭荄茙荑茥荖茿荁茦茜茢"],["d3a1","荂荎茛茪茈茼荍茖茤茠茷茯茩荇荅荌荓茞茬荋茧荈虓虒蚢蚨蚖蚍蚑蚞蚇蚗蚆蚋蚚蚅蚥蚙蚡蚧蚕蚘蚎蚝蚐蚔衃衄衭衵衶衲袀衱衿衯袃衾衴衼訒豇豗豻貤貣赶赸趵趷趶軑軓迾迵适迿迻逄迼迶郖郠郙郚郣郟郥郘郛郗郜郤酐"],["d440","酎酏釕釢釚陜陟隼飣髟鬯乿偰偪偡偞偠偓偋偝偲偈偍偁偛偊偢倕偅偟偩偫偣偤偆偀偮偳偗偑凐剫剭剬剮勖勓匭厜啵啶唼啍啐唴唪啑啢唶唵唰啒啅"],["d4a1","唌唲啥啎唹啈唭唻啀啋圊圇埻堔埢埶埜埴堀埭埽堈埸堋埳埏堇埮埣埲埥埬埡堎埼堐埧堁堌埱埩埰堍堄奜婠婘婕婧婞娸娵婭婐婟婥婬婓婤婗婃婝婒婄婛婈媎娾婍娹婌婰婩婇婑婖婂婜孲孮寁寀屙崞崋崝崚崠崌崨崍崦崥崏"],["d540","崰崒崣崟崮帾帴庱庴庹庲庳弶弸徛徖徟悊悐悆悾悰悺惓惔惏惤惙惝惈悱惛悷惊悿惃惍惀挲捥掊掂捽掽掞掭掝掗掫掎捯掇掐据掯捵掜捭掮捼掤挻掟"],["d5a1","捸掅掁掑掍捰敓旍晥晡晛晙晜晢朘桹梇梐梜桭桮梮梫楖桯梣梬梩桵桴梲梏桷梒桼桫桲梪梀桱桾梛梖梋梠梉梤桸桻梑梌梊桽欶欳欷欸殑殏殍殎殌氪淀涫涴涳湴涬淩淢涷淶淔渀淈淠淟淖涾淥淜淝淛淴淊涽淭淰涺淕淂淏淉"],["d640","淐淲淓淽淗淍淣涻烺焍烷焗烴焌烰焄烳焐烼烿焆焓焀烸烶焋焂焎牾牻牼牿猝猗猇猑猘猊猈狿猏猞玈珶珸珵琄琁珽琇琀珺珼珿琌琋珴琈畤畣痎痒痏"],["d6a1","痋痌痑痐皏皉盓眹眯眭眱眲眴眳眽眥眻眵硈硒硉硍硊硌砦硅硐祤祧祩祪祣祫祡离秺秸秶秷窏窔窐笵筇笴笥笰笢笤笳笘笪笝笱笫笭笯笲笸笚笣粔粘粖粣紵紽紸紶紺絅紬紩絁絇紾紿絊紻紨罣羕羜羝羛翊翋翍翐翑翇翏翉耟"],["d740","耞耛聇聃聈脘脥脙脛脭脟脬脞脡脕脧脝脢舑舸舳舺舴舲艴莐莣莨莍荺荳莤荴莏莁莕莙荵莔莩荽莃莌莝莛莪莋荾莥莯莈莗莰荿莦莇莮荶莚虙虖蚿蚷"],["d7a1","蛂蛁蛅蚺蚰蛈蚹蚳蚸蛌蚴蚻蚼蛃蚽蚾衒袉袕袨袢袪袚袑袡袟袘袧袙袛袗袤袬袌袓袎覂觖觙觕訰訧訬訞谹谻豜豝豽貥赽赻赹趼跂趹趿跁軘軞軝軜軗軠軡逤逋逑逜逌逡郯郪郰郴郲郳郔郫郬郩酖酘酚酓酕釬釴釱釳釸釤釹釪"],["d840","釫釷釨釮镺閆閈陼陭陫陱陯隿靪頄飥馗傛傕傔傞傋傣傃傌傎傝偨傜傒傂傇兟凔匒匑厤厧喑喨喥喭啷噅喢喓喈喏喵喁喣喒喤啽喌喦啿喕喡喎圌堩堷"],["d8a1","堙堞堧堣堨埵塈堥堜堛堳堿堶堮堹堸堭堬堻奡媯媔媟婺媢媞婸媦婼媥媬媕媮娷媄媊媗媃媋媩婻婽媌媜媏媓媝寪寍寋寔寑寊寎尌尰崷嵃嵫嵁嵋崿崵嵑嵎嵕崳崺嵒崽崱嵙嵂崹嵉崸崼崲崶嵀嵅幄幁彘徦徥徫惉悹惌惢惎惄愔"],["d940","惲愊愖愅惵愓惸惼惾惁愃愘愝愐惿愄愋扊掔掱掰揎揥揨揯揃撝揳揊揠揶揕揲揵摡揟掾揝揜揄揘揓揂揇揌揋揈揰揗揙攲敧敪敤敜敨敥斌斝斞斮旐旒"],["d9a1","晼晬晻暀晱晹晪晲朁椌棓椄棜椪棬棪棱椏棖棷棫棤棶椓椐棳棡椇棌椈楰梴椑棯棆椔棸棐棽棼棨椋椊椗棎棈棝棞棦棴棑椆棔棩椕椥棇欹欻欿欼殔殗殙殕殽毰毲毳氰淼湆湇渟湉溈渼渽湅湢渫渿湁湝湳渜渳湋湀湑渻渃渮湞"],["da40","湨湜湡渱渨湠湱湫渹渢渰湓湥渧湸湤湷湕湹湒湦渵渶湚焠焞焯烻焮焱焣焥焢焲焟焨焺焛牋牚犈犉犆犅犋猒猋猰猢猱猳猧猲猭猦猣猵猌琮琬琰琫琖"],["daa1","琚琡琭琱琤琣琝琩琠琲瓻甯畯畬痧痚痡痦痝痟痤痗皕皒盚睆睇睄睍睅睊睎睋睌矞矬硠硤硥硜硭硱硪确硰硩硨硞硢祴祳祲祰稂稊稃稌稄窙竦竤筊笻筄筈筌筎筀筘筅粢粞粨粡絘絯絣絓絖絧絪絏絭絜絫絒絔絩絑絟絎缾缿罥"],["db40","罦羢羠羡翗聑聏聐胾胔腃腊腒腏腇脽腍脺臦臮臷臸臹舄舼舽舿艵茻菏菹萣菀菨萒菧菤菼菶萐菆菈菫菣莿萁菝菥菘菿菡菋菎菖菵菉萉萏菞萑萆菂菳"],["dba1","菕菺菇菑菪萓菃菬菮菄菻菗菢萛菛菾蛘蛢蛦蛓蛣蛚蛪蛝蛫蛜蛬蛩蛗蛨蛑衈衖衕袺裗袹袸裀袾袶袼袷袽袲褁裉覕覘覗觝觚觛詎詍訹詙詀詗詘詄詅詒詈詑詊詌詏豟貁貀貺貾貰貹貵趄趀趉跘跓跍跇跖跜跏跕跙跈跗跅軯軷軺"],["dc40","軹軦軮軥軵軧軨軶軫軱軬軴軩逭逴逯鄆鄬鄄郿郼鄈郹郻鄁鄀鄇鄅鄃酡酤酟酢酠鈁鈊鈥鈃鈚鈦鈏鈌鈀鈒釿釽鈆鈄鈧鈂鈜鈤鈙鈗鈅鈖镻閍閌閐隇陾隈"],["dca1","隉隃隀雂雈雃雱雰靬靰靮頇颩飫鳦黹亃亄亶傽傿僆傮僄僊傴僈僂傰僁傺傱僋僉傶傸凗剺剸剻剼嗃嗛嗌嗐嗋嗊嗝嗀嗔嗄嗩喿嗒喍嗏嗕嗢嗖嗈嗲嗍嗙嗂圔塓塨塤塏塍塉塯塕塎塝塙塥塛堽塣塱壼嫇嫄嫋媺媸媱媵媰媿嫈媻嫆"],["dd40","媷嫀嫊媴媶嫍媹媐寖寘寙尟尳嵱嵣嵊嵥嵲嵬嵞嵨嵧嵢巰幏幎幊幍幋廅廌廆廋廇彀徯徭惷慉慊愫慅愶愲愮慆愯慏愩慀戠酨戣戥戤揅揱揫搐搒搉搠搤"],["dda1","搳摃搟搕搘搹搷搢搣搌搦搰搨摁搵搯搊搚摀搥搧搋揧搛搮搡搎敯斒旓暆暌暕暐暋暊暙暔晸朠楦楟椸楎楢楱椿楅楪椹楂楗楙楺楈楉椵楬椳椽楥棰楸椴楩楀楯楄楶楘楁楴楌椻楋椷楜楏楑椲楒椯楻椼歆歅歃歂歈歁殛嗀毻毼"],["de40","毹毷毸溛滖滈溏滀溟溓溔溠溱溹滆滒溽滁溞滉溷溰滍溦滏溲溾滃滜滘溙溒溎溍溤溡溿溳滐滊溗溮溣煇煔煒煣煠煁煝煢煲煸煪煡煂煘煃煋煰煟煐煓"],["dea1","煄煍煚牏犍犌犑犐犎猼獂猻猺獀獊獉瑄瑊瑋瑒瑑瑗瑀瑏瑐瑎瑂瑆瑍瑔瓡瓿瓾瓽甝畹畷榃痯瘏瘃痷痾痼痹痸瘐痻痶痭痵痽皙皵盝睕睟睠睒睖睚睩睧睔睙睭矠碇碚碔碏碄碕碅碆碡碃硹碙碀碖硻祼禂祽祹稑稘稙稒稗稕稢稓"],["df40","稛稐窣窢窞竫筦筤筭筴筩筲筥筳筱筰筡筸筶筣粲粴粯綈綆綀綍絿綅絺綎絻綃絼綌綔綄絽綒罭罫罧罨罬羦羥羧翛翜耡腤腠腷腜腩腛腢腲朡腞腶腧腯"],["dfa1","腄腡舝艉艄艀艂艅蓱萿葖葶葹蒏蒍葥葑葀蒆葧萰葍葽葚葙葴葳葝蔇葞萷萺萴葺葃葸萲葅萩菙葋萯葂萭葟葰萹葎葌葒葯蓅蒎萻葇萶萳葨葾葄萫葠葔葮葐蜋蜄蛷蜌蛺蛖蛵蝍蛸蜎蜉蜁蛶蜍蜅裖裋裍裎裞裛裚裌裐覅覛觟觥觤"],["e040","觡觠觢觜触詶誆詿詡訿詷誂誄詵誃誁詴詺谼豋豊豥豤豦貆貄貅賌赨赩趑趌趎趏趍趓趔趐趒跰跠跬跱跮跐跩跣跢跧跲跫跴輆軿輁輀輅輇輈輂輋遒逿"],["e0a1","遄遉逽鄐鄍鄏鄑鄖鄔鄋鄎酮酯鉈鉒鈰鈺鉦鈳鉥鉞銃鈮鉊鉆鉭鉬鉏鉠鉧鉯鈶鉡鉰鈱鉔鉣鉐鉲鉎鉓鉌鉖鈲閟閜閞閛隒隓隑隗雎雺雽雸雵靳靷靸靲頏頍頎颬飶飹馯馲馰馵骭骫魛鳪鳭鳧麀黽僦僔僗僨僳僛僪僝僤僓僬僰僯僣僠"],["e140","凘劀劁勩勫匰厬嘧嘕嘌嘒嗼嘏嘜嘁嘓嘂嗺嘝嘄嗿嗹墉塼墐墘墆墁塿塴墋塺墇墑墎塶墂墈塻墔墏壾奫嫜嫮嫥嫕嫪嫚嫭嫫嫳嫢嫠嫛嫬嫞嫝嫙嫨嫟孷寠"],["e1a1","寣屣嶂嶀嵽嶆嵺嶁嵷嶊嶉嶈嵾嵼嶍嵹嵿幘幙幓廘廑廗廎廜廕廙廒廔彄彃彯徶愬愨慁慞慱慳慒慓慲慬憀慴慔慺慛慥愻慪慡慖戩戧戫搫摍摛摝摴摶摲摳摽摵摦撦摎撂摞摜摋摓摠摐摿搿摬摫摙摥摷敳斠暡暠暟朅朄朢榱榶槉"],["e240","榠槎榖榰榬榼榑榙榎榧榍榩榾榯榿槄榽榤槔榹槊榚槏榳榓榪榡榞槙榗榐槂榵榥槆歊歍歋殞殟殠毃毄毾滎滵滱漃漥滸漷滻漮漉潎漙漚漧漘漻漒滭漊"],["e2a1","漶潳滹滮漭潀漰漼漵滫漇漎潃漅滽滶漹漜滼漺漟漍漞漈漡熇熐熉熀熅熂熏煻熆熁熗牄牓犗犕犓獃獍獑獌瑢瑳瑱瑵瑲瑧瑮甀甂甃畽疐瘖瘈瘌瘕瘑瘊瘔皸瞁睼瞅瞂睮瞀睯睾瞃碲碪碴碭碨硾碫碞碥碠碬碢碤禘禊禋禖禕禔禓"],["e340","禗禈禒禐稫穊稰稯稨稦窨窫窬竮箈箜箊箑箐箖箍箌箛箎箅箘劄箙箤箂粻粿粼粺綧綷緂綣綪緁緀緅綝緎緄緆緋緌綯綹綖綼綟綦綮綩綡緉罳翢翣翥翞"],["e3a1","耤聝聜膉膆膃膇膍膌膋舕蒗蒤蒡蒟蒺蓎蓂蒬蒮蒫蒹蒴蓁蓍蒪蒚蒱蓐蒝蒧蒻蒢蒔蓇蓌蒛蒩蒯蒨蓖蒘蒶蓏蒠蓗蓔蓒蓛蒰蒑虡蜳蜣蜨蝫蝀蜮蜞蜡蜙蜛蝃蜬蝁蜾蝆蜠蜲蜪蜭蜼蜒蜺蜱蜵蝂蜦蜧蜸蜤蜚蜰蜑裷裧裱裲裺裾裮裼裶裻"],["e440","裰裬裫覝覡覟覞觩觫觨誫誙誋誒誏誖谽豨豩賕賏賗趖踉踂跿踍跽踊踃踇踆踅跾踀踄輐輑輎輍鄣鄜鄠鄢鄟鄝鄚鄤鄡鄛酺酲酹酳銥銤鉶銛鉺銠銔銪銍"],["e4a1","銦銚銫鉹銗鉿銣鋮銎銂銕銢鉽銈銡銊銆銌銙銧鉾銇銩銝銋鈭隞隡雿靘靽靺靾鞃鞀鞂靻鞄鞁靿韎韍頖颭颮餂餀餇馝馜駃馹馻馺駂馽駇骱髣髧鬾鬿魠魡魟鳱鳲鳵麧僿儃儰僸儆儇僶僾儋儌僽儊劋劌勱勯噈噂噌嘵噁噊噉噆噘"],["e540","噚噀嘳嘽嘬嘾嘸嘪嘺圚墫墝墱墠墣墯墬墥墡壿嫿嫴嫽嫷嫶嬃嫸嬂嫹嬁嬇嬅嬏屧嶙嶗嶟嶒嶢嶓嶕嶠嶜嶡嶚嶞幩幝幠幜緳廛廞廡彉徲憋憃慹憱憰憢憉"],["e5a1","憛憓憯憭憟憒憪憡憍慦憳戭摮摰撖撠撅撗撜撏撋撊撌撣撟摨撱撘敶敺敹敻斲斳暵暰暩暲暷暪暯樀樆樗槥槸樕槱槤樠槿槬槢樛樝槾樧槲槮樔槷槧橀樈槦槻樍槼槫樉樄樘樥樏槶樦樇槴樖歑殥殣殢殦氁氀毿氂潁漦潾澇濆澒"],["e640","澍澉澌潢潏澅潚澖潶潬澂潕潲潒潐潗澔澓潝漀潡潫潽潧澐潓澋潩潿澕潣潷潪潻熲熯熛熰熠熚熩熵熝熥熞熤熡熪熜熧熳犘犚獘獒獞獟獠獝獛獡獚獙"],["e6a1","獢璇璉璊璆璁瑽璅璈瑼瑹甈甇畾瘥瘞瘙瘝瘜瘣瘚瘨瘛皜皝皞皛瞍瞏瞉瞈磍碻磏磌磑磎磔磈磃磄磉禚禡禠禜禢禛歶稹窲窴窳箷篋箾箬篎箯箹篊箵糅糈糌糋緷緛緪緧緗緡縃緺緦緶緱緰緮緟罶羬羰羭翭翫翪翬翦翨聤聧膣膟"],["e740","膞膕膢膙膗舖艏艓艒艐艎艑蔤蔻蔏蔀蔩蔎蔉蔍蔟蔊蔧蔜蓻蔫蓺蔈蔌蓴蔪蓲蔕蓷蓫蓳蓼蔒蓪蓩蔖蓾蔨蔝蔮蔂蓽蔞蓶蔱蔦蓧蓨蓰蓯蓹蔘蔠蔰蔋蔙蔯虢"],["e7a1","蝖蝣蝤蝷蟡蝳蝘蝔蝛蝒蝡蝚蝑蝞蝭蝪蝐蝎蝟蝝蝯蝬蝺蝮蝜蝥蝏蝻蝵蝢蝧蝩衚褅褌褔褋褗褘褙褆褖褑褎褉覢覤覣觭觰觬諏諆誸諓諑諔諕誻諗誾諀諅諘諃誺誽諙谾豍貏賥賟賙賨賚賝賧趠趜趡趛踠踣踥踤踮踕踛踖踑踙踦踧"],["e840","踔踒踘踓踜踗踚輬輤輘輚輠輣輖輗遳遰遯遧遫鄯鄫鄩鄪鄲鄦鄮醅醆醊醁醂醄醀鋐鋃鋄鋀鋙銶鋏鋱鋟鋘鋩鋗鋝鋌鋯鋂鋨鋊鋈鋎鋦鋍鋕鋉鋠鋞鋧鋑鋓"],["e8a1","銵鋡鋆銴镼閬閫閮閰隤隢雓霅霈霂靚鞊鞎鞈韐韏頞頝頦頩頨頠頛頧颲餈飺餑餔餖餗餕駜駍駏駓駔駎駉駖駘駋駗駌骳髬髫髳髲髱魆魃魧魴魱魦魶魵魰魨魤魬鳼鳺鳽鳿鳷鴇鴀鳹鳻鴈鴅鴄麃黓鼏鼐儜儓儗儚儑凞匴叡噰噠噮"],["e940","噳噦噣噭噲噞噷圜圛壈墽壉墿墺壂墼壆嬗嬙嬛嬡嬔嬓嬐嬖嬨嬚嬠嬞寯嶬嶱嶩嶧嶵嶰嶮嶪嶨嶲嶭嶯嶴幧幨幦幯廩廧廦廨廥彋徼憝憨憖懅憴懆懁懌憺"],["e9a1","憿憸憌擗擖擐擏擉撽撉擃擛擳擙攳敿敼斢曈暾曀曊曋曏暽暻暺曌朣樴橦橉橧樲橨樾橝橭橶橛橑樨橚樻樿橁橪橤橐橏橔橯橩橠樼橞橖橕橍橎橆歕歔歖殧殪殫毈毇氄氃氆澭濋澣濇澼濎濈潞濄澽澞濊澨瀄澥澮澺澬澪濏澿澸"],["ea40","澢濉澫濍澯澲澰燅燂熿熸燖燀燁燋燔燊燇燏熽燘熼燆燚燛犝犞獩獦獧獬獥獫獪瑿璚璠璔璒璕璡甋疀瘯瘭瘱瘽瘳瘼瘵瘲瘰皻盦瞚瞝瞡瞜瞛瞢瞣瞕瞙"],["eaa1","瞗磝磩磥磪磞磣磛磡磢磭磟磠禤穄穈穇窶窸窵窱窷篞篣篧篝篕篥篚篨篹篔篪篢篜篫篘篟糒糔糗糐糑縒縡縗縌縟縠縓縎縜縕縚縢縋縏縖縍縔縥縤罃罻罼罺羱翯耪耩聬膱膦膮膹膵膫膰膬膴膲膷膧臲艕艖艗蕖蕅蕫蕍蕓蕡蕘"],["eb40","蕀蕆蕤蕁蕢蕄蕑蕇蕣蔾蕛蕱蕎蕮蕵蕕蕧蕠薌蕦蕝蕔蕥蕬虣虥虤螛螏螗螓螒螈螁螖螘蝹螇螣螅螐螑螝螄螔螜螚螉褞褦褰褭褮褧褱褢褩褣褯褬褟觱諠"],["eba1","諢諲諴諵諝謔諤諟諰諈諞諡諨諿諯諻貑貒貐賵賮賱賰賳赬赮趥趧踳踾踸蹀蹅踶踼踽蹁踰踿躽輶輮輵輲輹輷輴遶遹遻邆郺鄳鄵鄶醓醐醑醍醏錧錞錈錟錆錏鍺錸錼錛錣錒錁鍆錭錎錍鋋錝鋺錥錓鋹鋷錴錂錤鋿錩錹錵錪錔錌"],["ec40","錋鋾錉錀鋻錖閼闍閾閹閺閶閿閵閽隩雔霋霒霐鞙鞗鞔韰韸頵頯頲餤餟餧餩馞駮駬駥駤駰駣駪駩駧骹骿骴骻髶髺髹髷鬳鮀鮅鮇魼魾魻鮂鮓鮒鮐魺鮕"],["eca1","魽鮈鴥鴗鴠鴞鴔鴩鴝鴘鴢鴐鴙鴟麈麆麇麮麭黕黖黺鼒鼽儦儥儢儤儠儩勴嚓嚌嚍嚆嚄嚃噾嚂噿嚁壖壔壏壒嬭嬥嬲嬣嬬嬧嬦嬯嬮孻寱寲嶷幬幪徾徻懃憵憼懧懠懥懤懨懞擯擩擣擫擤擨斁斀斶旚曒檍檖檁檥檉檟檛檡檞檇檓檎"],["ed40","檕檃檨檤檑橿檦檚檅檌檒歛殭氉濌澩濴濔濣濜濭濧濦濞濲濝濢濨燡燱燨燲燤燰燢獳獮獯璗璲璫璐璪璭璱璥璯甐甑甒甏疄癃癈癉癇皤盩瞵瞫瞲瞷瞶"],["eda1","瞴瞱瞨矰磳磽礂磻磼磲礅磹磾礄禫禨穜穛穖穘穔穚窾竀竁簅簏篲簀篿篻簎篴簋篳簂簉簃簁篸篽簆篰篱簐簊糨縭縼繂縳顈縸縪繉繀繇縩繌縰縻縶繄縺罅罿罾罽翴翲耬膻臄臌臊臅臇膼臩艛艚艜薃薀薏薧薕薠薋薣蕻薤薚薞"],["ee40","蕷蕼薉薡蕺蕸蕗薎薖薆薍薙薝薁薢薂薈薅蕹蕶薘薐薟虨螾螪螭蟅螰螬螹螵螼螮蟉蟃蟂蟌螷螯蟄蟊螴螶螿螸螽蟞螲褵褳褼褾襁襒褷襂覭覯覮觲觳謞"],["eea1","謘謖謑謅謋謢謏謒謕謇謍謈謆謜謓謚豏豰豲豱豯貕貔賹赯蹎蹍蹓蹐蹌蹇轃轀邅遾鄸醚醢醛醙醟醡醝醠鎡鎃鎯鍤鍖鍇鍼鍘鍜鍶鍉鍐鍑鍠鍭鎏鍌鍪鍹鍗鍕鍒鍏鍱鍷鍻鍡鍞鍣鍧鎀鍎鍙闇闀闉闃闅閷隮隰隬霠霟霘霝霙鞚鞡鞜"],["ef40","鞞鞝韕韔韱顁顄顊顉顅顃餥餫餬餪餳餲餯餭餱餰馘馣馡騂駺駴駷駹駸駶駻駽駾駼騃骾髾髽鬁髼魈鮚鮨鮞鮛鮦鮡鮥鮤鮆鮢鮠鮯鴳鵁鵧鴶鴮鴯鴱鴸鴰"],["efa1","鵅鵂鵃鴾鴷鵀鴽翵鴭麊麉麍麰黈黚黻黿鼤鼣鼢齔龠儱儭儮嚘嚜嚗嚚嚝嚙奰嬼屩屪巀幭幮懘懟懭懮懱懪懰懫懖懩擿攄擽擸攁攃擼斔旛曚曛曘櫅檹檽櫡櫆檺檶檷櫇檴檭歞毉氋瀇瀌瀍瀁瀅瀔瀎濿瀀濻瀦濼濷瀊爁燿燹爃燽獶"],["f040","璸瓀璵瓁璾璶璻瓂甔甓癜癤癙癐癓癗癚皦皽盬矂瞺磿礌礓礔礉礐礒礑禭禬穟簜簩簙簠簟簭簝簦簨簢簥簰繜繐繖繣繘繢繟繑繠繗繓羵羳翷翸聵臑臒"],["f0a1","臐艟艞薴藆藀藃藂薳薵薽藇藄薿藋藎藈藅薱薶藒蘤薸薷薾虩蟧蟦蟢蟛蟫蟪蟥蟟蟳蟤蟔蟜蟓蟭蟘蟣螤蟗蟙蠁蟴蟨蟝襓襋襏襌襆襐襑襉謪謧謣謳謰謵譇謯謼謾謱謥謷謦謶謮謤謻謽謺豂豵貙貘貗賾贄贂贀蹜蹢蹠蹗蹖蹞蹥蹧"],["f140","蹛蹚蹡蹝蹩蹔轆轇轈轋鄨鄺鄻鄾醨醥醧醯醪鎵鎌鎒鎷鎛鎝鎉鎧鎎鎪鎞鎦鎕鎈鎙鎟鎍鎱鎑鎲鎤鎨鎴鎣鎥闒闓闑隳雗雚巂雟雘雝霣霢霥鞬鞮鞨鞫鞤鞪"],["f1a1","鞢鞥韗韙韖韘韺顐顑顒颸饁餼餺騏騋騉騍騄騑騊騅騇騆髀髜鬈鬄鬅鬩鬵魊魌魋鯇鯆鯃鮿鯁鮵鮸鯓鮶鯄鮹鮽鵜鵓鵏鵊鵛鵋鵙鵖鵌鵗鵒鵔鵟鵘鵚麎麌黟鼁鼀鼖鼥鼫鼪鼩鼨齌齕儴儵劖勷厴嚫嚭嚦嚧嚪嚬壚壝壛夒嬽嬾嬿巃幰"],["f240","徿懻攇攐攍攉攌攎斄旞旝曞櫧櫠櫌櫑櫙櫋櫟櫜櫐櫫櫏櫍櫞歠殰氌瀙瀧瀠瀖瀫瀡瀢瀣瀩瀗瀤瀜瀪爌爊爇爂爅犥犦犤犣犡瓋瓅璷瓃甖癠矉矊矄矱礝礛"],["f2a1","礡礜礗礞禰穧穨簳簼簹簬簻糬糪繶繵繸繰繷繯繺繲繴繨罋罊羃羆羷翽翾聸臗臕艤艡艣藫藱藭藙藡藨藚藗藬藲藸藘藟藣藜藑藰藦藯藞藢蠀蟺蠃蟶蟷蠉蠌蠋蠆蟼蠈蟿蠊蠂襢襚襛襗襡襜襘襝襙覈覷覶觶譐譈譊譀譓譖譔譋譕"],["f340","譑譂譒譗豃豷豶貚贆贇贉趬趪趭趫蹭蹸蹳蹪蹯蹻軂轒轑轏轐轓辴酀鄿醰醭鏞鏇鏏鏂鏚鏐鏹鏬鏌鏙鎩鏦鏊鏔鏮鏣鏕鏄鏎鏀鏒鏧镽闚闛雡霩霫霬霨霦"],["f3a1","鞳鞷鞶韝韞韟顜顙顝顗颿颽颻颾饈饇饃馦馧騚騕騥騝騤騛騢騠騧騣騞騜騔髂鬋鬊鬎鬌鬷鯪鯫鯠鯞鯤鯦鯢鯰鯔鯗鯬鯜鯙鯥鯕鯡鯚鵷鶁鶊鶄鶈鵱鶀鵸鶆鶋鶌鵽鵫鵴鵵鵰鵩鶅鵳鵻鶂鵯鵹鵿鶇鵨麔麑黀黼鼭齀齁齍齖齗齘匷嚲"],["f440","嚵嚳壣孅巆巇廮廯忀忁懹攗攖攕攓旟曨曣曤櫳櫰櫪櫨櫹櫱櫮櫯瀼瀵瀯瀷瀴瀱灂瀸瀿瀺瀹灀瀻瀳灁爓爔犨獽獼璺皫皪皾盭矌矎矏矍矲礥礣礧礨礤礩"],["f4a1","禲穮穬穭竷籉籈籊籇籅糮繻繾纁纀羺翿聹臛臙舋艨艩蘢藿蘁藾蘛蘀藶蘄蘉蘅蘌藽蠙蠐蠑蠗蠓蠖襣襦覹觷譠譪譝譨譣譥譧譭趮躆躈躄轙轖轗轕轘轚邍酃酁醷醵醲醳鐋鐓鏻鐠鐏鐔鏾鐕鐐鐨鐙鐍鏵鐀鏷鐇鐎鐖鐒鏺鐉鏸鐊鏿"],["f540","鏼鐌鏶鐑鐆闞闠闟霮霯鞹鞻韽韾顠顢顣顟飁飂饐饎饙饌饋饓騲騴騱騬騪騶騩騮騸騭髇髊髆鬐鬒鬑鰋鰈鯷鰅鰒鯸鱀鰇鰎鰆鰗鰔鰉鶟鶙鶤鶝鶒鶘鶐鶛"],["f5a1","鶠鶔鶜鶪鶗鶡鶚鶢鶨鶞鶣鶿鶩鶖鶦鶧麙麛麚黥黤黧黦鼰鼮齛齠齞齝齙龑儺儹劘劗囃嚽嚾孈孇巋巏廱懽攛欂櫼欃櫸欀灃灄灊灈灉灅灆爝爚爙獾甗癪矐礭礱礯籔籓糲纊纇纈纋纆纍罍羻耰臝蘘蘪蘦蘟蘣蘜蘙蘧蘮蘡蘠蘩蘞蘥"],["f640","蠩蠝蠛蠠蠤蠜蠫衊襭襩襮襫觺譹譸譅譺譻贐贔趯躎躌轞轛轝酆酄酅醹鐿鐻鐶鐩鐽鐼鐰鐹鐪鐷鐬鑀鐱闥闤闣霵霺鞿韡顤飉飆飀饘饖騹騽驆驄驂驁騺"],["f6a1","騿髍鬕鬗鬘鬖鬺魒鰫鰝鰜鰬鰣鰨鰩鰤鰡鶷鶶鶼鷁鷇鷊鷏鶾鷅鷃鶻鶵鷎鶹鶺鶬鷈鶱鶭鷌鶳鷍鶲鹺麜黫黮黭鼛鼘鼚鼱齎齥齤龒亹囆囅囋奱孋孌巕巑廲攡攠攦攢欋欈欉氍灕灖灗灒爞爟犩獿瓘瓕瓙瓗癭皭礵禴穰穱籗籜籙籛籚"],["f740","糴糱纑罏羇臞艫蘴蘵蘳蘬蘲蘶蠬蠨蠦蠪蠥襱覿覾觻譾讄讂讆讅譿贕躕躔躚躒躐躖躗轠轢酇鑌鑐鑊鑋鑏鑇鑅鑈鑉鑆霿韣顪顩飋饔饛驎驓驔驌驏驈驊"],["f7a1","驉驒驐髐鬙鬫鬻魖魕鱆鱈鰿鱄鰹鰳鱁鰼鰷鰴鰲鰽鰶鷛鷒鷞鷚鷋鷐鷜鷑鷟鷩鷙鷘鷖鷵鷕鷝麶黰鼵鼳鼲齂齫龕龢儽劙壨壧奲孍巘蠯彏戁戃戄攩攥斖曫欑欒欏毊灛灚爢玂玁玃癰矔籧籦纕艬蘺虀蘹蘼蘱蘻蘾蠰蠲蠮蠳襶襴襳觾"],["f840","讌讎讋讈豅贙躘轤轣醼鑢鑕鑝鑗鑞韄韅頀驖驙鬞鬟鬠鱒鱘鱐鱊鱍鱋鱕鱙鱌鱎鷻鷷鷯鷣鷫鷸鷤鷶鷡鷮鷦鷲鷰鷢鷬鷴鷳鷨鷭黂黐黲黳鼆鼜鼸鼷鼶齃齏"],["f8a1","齱齰齮齯囓囍孎屭攭曭曮欓灟灡灝灠爣瓛瓥矕礸禷禶籪纗羉艭虃蠸蠷蠵衋讔讕躞躟躠躝醾醽釂鑫鑨鑩雥靆靃靇韇韥驞髕魙鱣鱧鱦鱢鱞鱠鸂鷾鸇鸃鸆鸅鸀鸁鸉鷿鷽鸄麠鼞齆齴齵齶囔攮斸欘欙欗欚灢爦犪矘矙礹籩籫糶纚"],["f940","纘纛纙臠臡虆虇虈襹襺襼襻觿讘讙躥躤躣鑮鑭鑯鑱鑳靉顲饟鱨鱮鱭鸋鸍鸐鸏鸒鸑麡黵鼉齇齸齻齺齹圞灦籯蠼趲躦釃鑴鑸鑶鑵驠鱴鱳鱱鱵鸔鸓黶鼊"],["f9a1","龤灨灥糷虪蠾蠽蠿讞貜躩軉靋顳顴飌饡馫驤驦驧鬤鸕鸗齈戇欞爧虌躨钂钀钁驩驨鬮鸙爩虋讟钃鱹麷癵驫鱺鸝灩灪麤齾齉龘碁銹裏墻恒粧嫺╔╦╗╠╬╣╚╩╝╒╤╕╞╪╡╘╧╛╓╥╖╟╫╢╙╨╜║═╭╮╰╯▓"]]')},56406:Wt=>{"use strict";Wt.exports=JSON.parse('[["0","\\u0000",127],["8ea1","。",62],["a1a1"," 、。,.・:;?!゛゜´`¨^ ̄_ヽヾゝゞ〃仝々〆〇ー―‐/\~∥|…‥‘’“”()〔〕[]{}〈",9,"+-±×÷=≠<>≦≧∞∴♂♀°′″℃¥$¢£%#&*@§☆★○●◎◇"],["a2a1","◆□■△▲▽▼※〒→←↑↓〓"],["a2ba","∈∋⊆⊇⊂⊃∪∩"],["a2ca","∧∨¬⇒⇔∀∃"],["a2dc","∠⊥⌒∂∇≡≒≪≫√∽∝∵∫∬"],["a2f2","ʼn♯♭♪†‡¶"],["a2fe","◯"],["a3b0","0",9],["a3c1","A",25],["a3e1","a",25],["a4a1","ぁ",82],["a5a1","ァ",85],["a6a1","Α",16,"Σ",6],["a6c1","α",16,"σ",6],["a7a1","А",5,"ЁЖ",25],["a7d1","а",5,"ёж",25],["a8a1","─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂"],["ada1","①",19,"Ⅰ",9],["adc0","㍉㌔㌢㍍㌘㌧㌃㌶㍑㍗㌍㌦㌣㌫㍊㌻㎜㎝㎞㎎㎏㏄㎡"],["addf","㍻〝〟№㏍℡㊤",4,"㈱㈲㈹㍾㍽㍼≒≡∫∮∑√⊥∠∟⊿∵∩∪"],["b0a1","亜唖娃阿哀愛挨姶逢葵茜穐悪握渥旭葦芦鯵梓圧斡扱宛姐虻飴絢綾鮎或粟袷安庵按暗案闇鞍杏以伊位依偉囲夷委威尉惟意慰易椅為畏異移維緯胃萎衣謂違遺医井亥域育郁磯一壱溢逸稲茨芋鰯允印咽員因姻引飲淫胤蔭"],["b1a1","院陰隠韻吋右宇烏羽迂雨卯鵜窺丑碓臼渦嘘唄欝蔚鰻姥厩浦瓜閏噂云運雲荏餌叡営嬰影映曳栄永泳洩瑛盈穎頴英衛詠鋭液疫益駅悦謁越閲榎厭円園堰奄宴延怨掩援沿演炎焔煙燕猿縁艶苑薗遠鉛鴛塩於汚甥凹央奥往応"],["b2a1","押旺横欧殴王翁襖鴬鴎黄岡沖荻億屋憶臆桶牡乙俺卸恩温穏音下化仮何伽価佳加可嘉夏嫁家寡科暇果架歌河火珂禍禾稼箇花苛茄荷華菓蝦課嘩貨迦過霞蚊俄峨我牙画臥芽蛾賀雅餓駕介会解回塊壊廻快怪悔恢懐戒拐改"],["b3a1","魁晦械海灰界皆絵芥蟹開階貝凱劾外咳害崖慨概涯碍蓋街該鎧骸浬馨蛙垣柿蛎鈎劃嚇各廓拡撹格核殻獲確穫覚角赫較郭閣隔革学岳楽額顎掛笠樫橿梶鰍潟割喝恰括活渇滑葛褐轄且鰹叶椛樺鞄株兜竃蒲釜鎌噛鴨栢茅萱"],["b4a1","粥刈苅瓦乾侃冠寒刊勘勧巻喚堪姦完官寛干幹患感慣憾換敢柑桓棺款歓汗漢澗潅環甘監看竿管簡緩缶翰肝艦莞観諌貫還鑑間閑関陥韓館舘丸含岸巌玩癌眼岩翫贋雁頑顔願企伎危喜器基奇嬉寄岐希幾忌揮机旗既期棋棄"],["b5a1","機帰毅気汽畿祈季稀紀徽規記貴起軌輝飢騎鬼亀偽儀妓宜戯技擬欺犠疑祇義蟻誼議掬菊鞠吉吃喫桔橘詰砧杵黍却客脚虐逆丘久仇休及吸宮弓急救朽求汲泣灸球究窮笈級糾給旧牛去居巨拒拠挙渠虚許距鋸漁禦魚亨享京"],["b6a1","供侠僑兇競共凶協匡卿叫喬境峡強彊怯恐恭挟教橋況狂狭矯胸脅興蕎郷鏡響饗驚仰凝尭暁業局曲極玉桐粁僅勤均巾錦斤欣欽琴禁禽筋緊芹菌衿襟謹近金吟銀九倶句区狗玖矩苦躯駆駈駒具愚虞喰空偶寓遇隅串櫛釧屑屈"],["b7a1","掘窟沓靴轡窪熊隈粂栗繰桑鍬勲君薫訓群軍郡卦袈祁係傾刑兄啓圭珪型契形径恵慶慧憩掲携敬景桂渓畦稽系経継繋罫茎荊蛍計詣警軽頚鶏芸迎鯨劇戟撃激隙桁傑欠決潔穴結血訣月件倹倦健兼券剣喧圏堅嫌建憲懸拳捲"],["b8a1","検権牽犬献研硯絹県肩見謙賢軒遣鍵険顕験鹸元原厳幻弦減源玄現絃舷言諺限乎個古呼固姑孤己庫弧戸故枯湖狐糊袴股胡菰虎誇跨鈷雇顧鼓五互伍午呉吾娯後御悟梧檎瑚碁語誤護醐乞鯉交佼侯候倖光公功効勾厚口向"],["b9a1","后喉坑垢好孔孝宏工巧巷幸広庚康弘恒慌抗拘控攻昂晃更杭校梗構江洪浩港溝甲皇硬稿糠紅紘絞綱耕考肯肱腔膏航荒行衡講貢購郊酵鉱砿鋼閤降項香高鴻剛劫号合壕拷濠豪轟麹克刻告国穀酷鵠黒獄漉腰甑忽惚骨狛込"],["baa1","此頃今困坤墾婚恨懇昏昆根梱混痕紺艮魂些佐叉唆嵯左差査沙瑳砂詐鎖裟坐座挫債催再最哉塞妻宰彩才採栽歳済災采犀砕砦祭斎細菜裁載際剤在材罪財冴坂阪堺榊肴咲崎埼碕鷺作削咋搾昨朔柵窄策索錯桜鮭笹匙冊刷"],["bba1","察拶撮擦札殺薩雑皐鯖捌錆鮫皿晒三傘参山惨撒散桟燦珊産算纂蚕讃賛酸餐斬暫残仕仔伺使刺司史嗣四士始姉姿子屍市師志思指支孜斯施旨枝止死氏獅祉私糸紙紫肢脂至視詞詩試誌諮資賜雌飼歯事似侍児字寺慈持時"],["bca1","次滋治爾璽痔磁示而耳自蒔辞汐鹿式識鴫竺軸宍雫七叱執失嫉室悉湿漆疾質実蔀篠偲柴芝屡蕊縞舎写射捨赦斜煮社紗者謝車遮蛇邪借勺尺杓灼爵酌釈錫若寂弱惹主取守手朱殊狩珠種腫趣酒首儒受呪寿授樹綬需囚収周"],["bda1","宗就州修愁拾洲秀秋終繍習臭舟蒐衆襲讐蹴輯週酋酬集醜什住充十従戎柔汁渋獣縦重銃叔夙宿淑祝縮粛塾熟出術述俊峻春瞬竣舜駿准循旬楯殉淳準潤盾純巡遵醇順処初所暑曙渚庶緒署書薯藷諸助叙女序徐恕鋤除傷償"],["bea1","勝匠升召哨商唱嘗奨妾娼宵将小少尚庄床廠彰承抄招掌捷昇昌昭晶松梢樟樵沼消渉湘焼焦照症省硝礁祥称章笑粧紹肖菖蒋蕉衝裳訟証詔詳象賞醤鉦鍾鐘障鞘上丈丞乗冗剰城場壌嬢常情擾条杖浄状畳穣蒸譲醸錠嘱埴飾"],["bfa1","拭植殖燭織職色触食蝕辱尻伸信侵唇娠寝審心慎振新晋森榛浸深申疹真神秦紳臣芯薪親診身辛進針震人仁刃塵壬尋甚尽腎訊迅陣靭笥諏須酢図厨逗吹垂帥推水炊睡粋翠衰遂酔錐錘随瑞髄崇嵩数枢趨雛据杉椙菅頗雀裾"],["c0a1","澄摺寸世瀬畝是凄制勢姓征性成政整星晴棲栖正清牲生盛精聖声製西誠誓請逝醒青静斉税脆隻席惜戚斥昔析石積籍績脊責赤跡蹟碩切拙接摂折設窃節説雪絶舌蝉仙先千占宣専尖川戦扇撰栓栴泉浅洗染潜煎煽旋穿箭線"],["c1a1","繊羨腺舛船薦詮賎践選遷銭銑閃鮮前善漸然全禅繕膳糎噌塑岨措曾曽楚狙疏疎礎祖租粗素組蘇訴阻遡鼠僧創双叢倉喪壮奏爽宋層匝惣想捜掃挿掻操早曹巣槍槽漕燥争痩相窓糟総綜聡草荘葬蒼藻装走送遭鎗霜騒像増憎"],["c2a1","臓蔵贈造促側則即息捉束測足速俗属賊族続卒袖其揃存孫尊損村遜他多太汰詑唾堕妥惰打柁舵楕陀駄騨体堆対耐岱帯待怠態戴替泰滞胎腿苔袋貸退逮隊黛鯛代台大第醍題鷹滝瀧卓啄宅托択拓沢濯琢託鐸濁諾茸凧蛸只"],["c3a1","叩但達辰奪脱巽竪辿棚谷狸鱈樽誰丹単嘆坦担探旦歎淡湛炭短端箪綻耽胆蛋誕鍛団壇弾断暖檀段男談値知地弛恥智池痴稚置致蜘遅馳築畜竹筑蓄逐秩窒茶嫡着中仲宙忠抽昼柱注虫衷註酎鋳駐樗瀦猪苧著貯丁兆凋喋寵"],["c4a1","帖帳庁弔張彫徴懲挑暢朝潮牒町眺聴脹腸蝶調諜超跳銚長頂鳥勅捗直朕沈珍賃鎮陳津墜椎槌追鎚痛通塚栂掴槻佃漬柘辻蔦綴鍔椿潰坪壷嬬紬爪吊釣鶴亭低停偵剃貞呈堤定帝底庭廷弟悌抵挺提梯汀碇禎程締艇訂諦蹄逓"],["c5a1","邸鄭釘鼎泥摘擢敵滴的笛適鏑溺哲徹撤轍迭鉄典填天展店添纏甜貼転顛点伝殿澱田電兎吐堵塗妬屠徒斗杜渡登菟賭途都鍍砥砺努度土奴怒倒党冬凍刀唐塔塘套宕島嶋悼投搭東桃梼棟盗淘湯涛灯燈当痘祷等答筒糖統到"],["c6a1","董蕩藤討謄豆踏逃透鐙陶頭騰闘働動同堂導憧撞洞瞳童胴萄道銅峠鴇匿得徳涜特督禿篤毒独読栃橡凸突椴届鳶苫寅酉瀞噸屯惇敦沌豚遁頓呑曇鈍奈那内乍凪薙謎灘捺鍋楢馴縄畷南楠軟難汝二尼弐迩匂賑肉虹廿日乳入"],["c7a1","如尿韮任妊忍認濡禰祢寧葱猫熱年念捻撚燃粘乃廼之埜嚢悩濃納能脳膿農覗蚤巴把播覇杷波派琶破婆罵芭馬俳廃拝排敗杯盃牌背肺輩配倍培媒梅楳煤狽買売賠陪這蝿秤矧萩伯剥博拍柏泊白箔粕舶薄迫曝漠爆縛莫駁麦"],["c8a1","函箱硲箸肇筈櫨幡肌畑畠八鉢溌発醗髪伐罰抜筏閥鳩噺塙蛤隼伴判半反叛帆搬斑板氾汎版犯班畔繁般藩販範釆煩頒飯挽晩番盤磐蕃蛮匪卑否妃庇彼悲扉批披斐比泌疲皮碑秘緋罷肥被誹費避非飛樋簸備尾微枇毘琵眉美"],["c9a1","鼻柊稗匹疋髭彦膝菱肘弼必畢筆逼桧姫媛紐百謬俵彪標氷漂瓢票表評豹廟描病秒苗錨鋲蒜蛭鰭品彬斌浜瀕貧賓頻敏瓶不付埠夫婦富冨布府怖扶敷斧普浮父符腐膚芙譜負賦赴阜附侮撫武舞葡蕪部封楓風葺蕗伏副復幅服"],["caa1","福腹複覆淵弗払沸仏物鮒分吻噴墳憤扮焚奮粉糞紛雰文聞丙併兵塀幣平弊柄並蔽閉陛米頁僻壁癖碧別瞥蔑箆偏変片篇編辺返遍便勉娩弁鞭保舗鋪圃捕歩甫補輔穂募墓慕戊暮母簿菩倣俸包呆報奉宝峰峯崩庖抱捧放方朋"],["cba1","法泡烹砲縫胞芳萌蓬蜂褒訪豊邦鋒飽鳳鵬乏亡傍剖坊妨帽忘忙房暴望某棒冒紡肪膨謀貌貿鉾防吠頬北僕卜墨撲朴牧睦穆釦勃没殆堀幌奔本翻凡盆摩磨魔麻埋妹昧枚毎哩槙幕膜枕鮪柾鱒桝亦俣又抹末沫迄侭繭麿万慢満"],["cca1","漫蔓味未魅巳箕岬密蜜湊蓑稔脈妙粍民眠務夢無牟矛霧鵡椋婿娘冥名命明盟迷銘鳴姪牝滅免棉綿緬面麺摸模茂妄孟毛猛盲網耗蒙儲木黙目杢勿餅尤戻籾貰問悶紋門匁也冶夜爺耶野弥矢厄役約薬訳躍靖柳薮鑓愉愈油癒"],["cda1","諭輸唯佑優勇友宥幽悠憂揖有柚湧涌猶猷由祐裕誘遊邑郵雄融夕予余与誉輿預傭幼妖容庸揚揺擁曜楊様洋溶熔用窯羊耀葉蓉要謡踊遥陽養慾抑欲沃浴翌翼淀羅螺裸来莱頼雷洛絡落酪乱卵嵐欄濫藍蘭覧利吏履李梨理璃"],["cea1","痢裏裡里離陸律率立葎掠略劉流溜琉留硫粒隆竜龍侶慮旅虜了亮僚両凌寮料梁涼猟療瞭稜糧良諒遼量陵領力緑倫厘林淋燐琳臨輪隣鱗麟瑠塁涙累類令伶例冷励嶺怜玲礼苓鈴隷零霊麗齢暦歴列劣烈裂廉恋憐漣煉簾練聯"],["cfa1","蓮連錬呂魯櫓炉賂路露労婁廊弄朗楼榔浪漏牢狼篭老聾蝋郎六麓禄肋録論倭和話歪賄脇惑枠鷲亙亘鰐詫藁蕨椀湾碗腕"],["d0a1","弌丐丕个丱丶丼丿乂乖乘亂亅豫亊舒弍于亞亟亠亢亰亳亶从仍仄仆仂仗仞仭仟价伉佚估佛佝佗佇佶侈侏侘佻佩佰侑佯來侖儘俔俟俎俘俛俑俚俐俤俥倚倨倔倪倥倅伜俶倡倩倬俾俯們倆偃假會偕偐偈做偖偬偸傀傚傅傴傲"],["d1a1","僉僊傳僂僖僞僥僭僣僮價僵儉儁儂儖儕儔儚儡儺儷儼儻儿兀兒兌兔兢竸兩兪兮冀冂囘册冉冏冑冓冕冖冤冦冢冩冪冫决冱冲冰况冽凅凉凛几處凩凭凰凵凾刄刋刔刎刧刪刮刳刹剏剄剋剌剞剔剪剴剩剳剿剽劍劔劒剱劈劑辨"],["d2a1","辧劬劭劼劵勁勍勗勞勣勦飭勠勳勵勸勹匆匈甸匍匐匏匕匚匣匯匱匳匸區卆卅丗卉卍凖卞卩卮夘卻卷厂厖厠厦厥厮厰厶參簒雙叟曼燮叮叨叭叺吁吽呀听吭吼吮吶吩吝呎咏呵咎呟呱呷呰咒呻咀呶咄咐咆哇咢咸咥咬哄哈咨"],["d3a1","咫哂咤咾咼哘哥哦唏唔哽哮哭哺哢唹啀啣啌售啜啅啖啗唸唳啝喙喀咯喊喟啻啾喘喞單啼喃喩喇喨嗚嗅嗟嗄嗜嗤嗔嘔嗷嘖嗾嗽嘛嗹噎噐營嘴嘶嘲嘸噫噤嘯噬噪嚆嚀嚊嚠嚔嚏嚥嚮嚶嚴囂嚼囁囃囀囈囎囑囓囗囮囹圀囿圄圉"],["d4a1","圈國圍圓團圖嗇圜圦圷圸坎圻址坏坩埀垈坡坿垉垓垠垳垤垪垰埃埆埔埒埓堊埖埣堋堙堝塲堡塢塋塰毀塒堽塹墅墹墟墫墺壞墻墸墮壅壓壑壗壙壘壥壜壤壟壯壺壹壻壼壽夂夊夐夛梦夥夬夭夲夸夾竒奕奐奎奚奘奢奠奧奬奩"],["d5a1","奸妁妝佞侫妣妲姆姨姜妍姙姚娥娟娑娜娉娚婀婬婉娵娶婢婪媚媼媾嫋嫂媽嫣嫗嫦嫩嫖嫺嫻嬌嬋嬖嬲嫐嬪嬶嬾孃孅孀孑孕孚孛孥孩孰孳孵學斈孺宀它宦宸寃寇寉寔寐寤實寢寞寥寫寰寶寳尅將專對尓尠尢尨尸尹屁屆屎屓"],["d6a1","屐屏孱屬屮乢屶屹岌岑岔妛岫岻岶岼岷峅岾峇峙峩峽峺峭嶌峪崋崕崗嵜崟崛崑崔崢崚崙崘嵌嵒嵎嵋嵬嵳嵶嶇嶄嶂嶢嶝嶬嶮嶽嶐嶷嶼巉巍巓巒巖巛巫已巵帋帚帙帑帛帶帷幄幃幀幎幗幔幟幢幤幇幵并幺麼广庠廁廂廈廐廏"],["d7a1","廖廣廝廚廛廢廡廨廩廬廱廳廰廴廸廾弃弉彝彜弋弑弖弩弭弸彁彈彌彎弯彑彖彗彙彡彭彳彷徃徂彿徊很徑徇從徙徘徠徨徭徼忖忻忤忸忱忝悳忿怡恠怙怐怩怎怱怛怕怫怦怏怺恚恁恪恷恟恊恆恍恣恃恤恂恬恫恙悁悍惧悃悚"],["d8a1","悄悛悖悗悒悧悋惡悸惠惓悴忰悽惆悵惘慍愕愆惶惷愀惴惺愃愡惻惱愍愎慇愾愨愧慊愿愼愬愴愽慂慄慳慷慘慙慚慫慴慯慥慱慟慝慓慵憙憖憇憬憔憚憊憑憫憮懌懊應懷懈懃懆憺懋罹懍懦懣懶懺懴懿懽懼懾戀戈戉戍戌戔戛"],["d9a1","戞戡截戮戰戲戳扁扎扞扣扛扠扨扼抂抉找抒抓抖拔抃抔拗拑抻拏拿拆擔拈拜拌拊拂拇抛拉挌拮拱挧挂挈拯拵捐挾捍搜捏掖掎掀掫捶掣掏掉掟掵捫捩掾揩揀揆揣揉插揶揄搖搴搆搓搦搶攝搗搨搏摧摯摶摎攪撕撓撥撩撈撼"],["daa1","據擒擅擇撻擘擂擱擧舉擠擡抬擣擯攬擶擴擲擺攀擽攘攜攅攤攣攫攴攵攷收攸畋效敖敕敍敘敞敝敲數斂斃變斛斟斫斷旃旆旁旄旌旒旛旙无旡旱杲昊昃旻杳昵昶昴昜晏晄晉晁晞晝晤晧晨晟晢晰暃暈暎暉暄暘暝曁暹曉暾暼"],["dba1","曄暸曖曚曠昿曦曩曰曵曷朏朖朞朦朧霸朮朿朶杁朸朷杆杞杠杙杣杤枉杰枩杼杪枌枋枦枡枅枷柯枴柬枳柩枸柤柞柝柢柮枹柎柆柧檜栞框栩桀桍栲桎梳栫桙档桷桿梟梏梭梔條梛梃檮梹桴梵梠梺椏梍桾椁棊椈棘椢椦棡椌棍"],["dca1","棔棧棕椶椒椄棗棣椥棹棠棯椨椪椚椣椡棆楹楷楜楸楫楔楾楮椹楴椽楙椰楡楞楝榁楪榲榮槐榿槁槓榾槎寨槊槝榻槃榧樮榑榠榜榕榴槞槨樂樛槿權槹槲槧樅榱樞槭樔槫樊樒櫁樣樓橄樌橲樶橸橇橢橙橦橈樸樢檐檍檠檄檢檣"],["dda1","檗蘗檻櫃櫂檸檳檬櫞櫑櫟檪櫚櫪櫻欅蘖櫺欒欖鬱欟欸欷盜欹飮歇歃歉歐歙歔歛歟歡歸歹歿殀殄殃殍殘殕殞殤殪殫殯殲殱殳殷殼毆毋毓毟毬毫毳毯麾氈氓气氛氤氣汞汕汢汪沂沍沚沁沛汾汨汳沒沐泄泱泓沽泗泅泝沮沱沾"],["dea1","沺泛泯泙泪洟衍洶洫洽洸洙洵洳洒洌浣涓浤浚浹浙涎涕濤涅淹渕渊涵淇淦涸淆淬淞淌淨淒淅淺淙淤淕淪淮渭湮渮渙湲湟渾渣湫渫湶湍渟湃渺湎渤滿渝游溂溪溘滉溷滓溽溯滄溲滔滕溏溥滂溟潁漑灌滬滸滾漿滲漱滯漲滌"],["dfa1","漾漓滷澆潺潸澁澀潯潛濳潭澂潼潘澎澑濂潦澳澣澡澤澹濆澪濟濕濬濔濘濱濮濛瀉瀋濺瀑瀁瀏濾瀛瀚潴瀝瀘瀟瀰瀾瀲灑灣炙炒炯烱炬炸炳炮烟烋烝烙焉烽焜焙煥煕熈煦煢煌煖煬熏燻熄熕熨熬燗熹熾燒燉燔燎燠燬燧燵燼"],["e0a1","燹燿爍爐爛爨爭爬爰爲爻爼爿牀牆牋牘牴牾犂犁犇犒犖犢犧犹犲狃狆狄狎狒狢狠狡狹狷倏猗猊猜猖猝猴猯猩猥猾獎獏默獗獪獨獰獸獵獻獺珈玳珎玻珀珥珮珞璢琅瑯琥珸琲琺瑕琿瑟瑙瑁瑜瑩瑰瑣瑪瑶瑾璋璞璧瓊瓏瓔珱"],["e1a1","瓠瓣瓧瓩瓮瓲瓰瓱瓸瓷甄甃甅甌甎甍甕甓甞甦甬甼畄畍畊畉畛畆畚畩畤畧畫畭畸當疆疇畴疊疉疂疔疚疝疥疣痂疳痃疵疽疸疼疱痍痊痒痙痣痞痾痿痼瘁痰痺痲痳瘋瘍瘉瘟瘧瘠瘡瘢瘤瘴瘰瘻癇癈癆癜癘癡癢癨癩癪癧癬癰"],["e2a1","癲癶癸發皀皃皈皋皎皖皓皙皚皰皴皸皹皺盂盍盖盒盞盡盥盧盪蘯盻眈眇眄眩眤眞眥眦眛眷眸睇睚睨睫睛睥睿睾睹瞎瞋瞑瞠瞞瞰瞶瞹瞿瞼瞽瞻矇矍矗矚矜矣矮矼砌砒礦砠礪硅碎硴碆硼碚碌碣碵碪碯磑磆磋磔碾碼磅磊磬"],["e3a1","磧磚磽磴礇礒礑礙礬礫祀祠祗祟祚祕祓祺祿禊禝禧齋禪禮禳禹禺秉秕秧秬秡秣稈稍稘稙稠稟禀稱稻稾稷穃穗穉穡穢穩龝穰穹穽窈窗窕窘窖窩竈窰窶竅竄窿邃竇竊竍竏竕竓站竚竝竡竢竦竭竰笂笏笊笆笳笘笙笞笵笨笶筐"],["e4a1","筺笄筍笋筌筅筵筥筴筧筰筱筬筮箝箘箟箍箜箚箋箒箏筝箙篋篁篌篏箴篆篝篩簑簔篦篥籠簀簇簓篳篷簗簍篶簣簧簪簟簷簫簽籌籃籔籏籀籐籘籟籤籖籥籬籵粃粐粤粭粢粫粡粨粳粲粱粮粹粽糀糅糂糘糒糜糢鬻糯糲糴糶糺紆"],["e5a1","紂紜紕紊絅絋紮紲紿紵絆絳絖絎絲絨絮絏絣經綉絛綏絽綛綺綮綣綵緇綽綫總綢綯緜綸綟綰緘緝緤緞緻緲緡縅縊縣縡縒縱縟縉縋縢繆繦縻縵縹繃縷縲縺繧繝繖繞繙繚繹繪繩繼繻纃緕繽辮繿纈纉續纒纐纓纔纖纎纛纜缸缺"],["e6a1","罅罌罍罎罐网罕罔罘罟罠罨罩罧罸羂羆羃羈羇羌羔羞羝羚羣羯羲羹羮羶羸譱翅翆翊翕翔翡翦翩翳翹飜耆耄耋耒耘耙耜耡耨耿耻聊聆聒聘聚聟聢聨聳聲聰聶聹聽聿肄肆肅肛肓肚肭冐肬胛胥胙胝胄胚胖脉胯胱脛脩脣脯腋"],["e7a1","隋腆脾腓腑胼腱腮腥腦腴膃膈膊膀膂膠膕膤膣腟膓膩膰膵膾膸膽臀臂膺臉臍臑臙臘臈臚臟臠臧臺臻臾舁舂舅與舊舍舐舖舩舫舸舳艀艙艘艝艚艟艤艢艨艪艫舮艱艷艸艾芍芒芫芟芻芬苡苣苟苒苴苳苺莓范苻苹苞茆苜茉苙"],["e8a1","茵茴茖茲茱荀茹荐荅茯茫茗茘莅莚莪莟莢莖茣莎莇莊荼莵荳荵莠莉莨菴萓菫菎菽萃菘萋菁菷萇菠菲萍萢萠莽萸蔆菻葭萪萼蕚蒄葷葫蒭葮蒂葩葆萬葯葹萵蓊葢蒹蒿蒟蓙蓍蒻蓚蓐蓁蓆蓖蒡蔡蓿蓴蔗蔘蔬蔟蔕蔔蓼蕀蕣蕘蕈"],["e9a1","蕁蘂蕋蕕薀薤薈薑薊薨蕭薔薛藪薇薜蕷蕾薐藉薺藏薹藐藕藝藥藜藹蘊蘓蘋藾藺蘆蘢蘚蘰蘿虍乕虔號虧虱蚓蚣蚩蚪蚋蚌蚶蚯蛄蛆蚰蛉蠣蚫蛔蛞蛩蛬蛟蛛蛯蜒蜆蜈蜀蜃蛻蜑蜉蜍蛹蜊蜴蜿蜷蜻蜥蜩蜚蝠蝟蝸蝌蝎蝴蝗蝨蝮蝙"],["eaa1","蝓蝣蝪蠅螢螟螂螯蟋螽蟀蟐雖螫蟄螳蟇蟆螻蟯蟲蟠蠏蠍蟾蟶蟷蠎蟒蠑蠖蠕蠢蠡蠱蠶蠹蠧蠻衄衂衒衙衞衢衫袁衾袞衵衽袵衲袂袗袒袮袙袢袍袤袰袿袱裃裄裔裘裙裝裹褂裼裴裨裲褄褌褊褓襃褞褥褪褫襁襄褻褶褸襌褝襠襞"],["eba1","襦襤襭襪襯襴襷襾覃覈覊覓覘覡覩覦覬覯覲覺覽覿觀觚觜觝觧觴觸訃訖訐訌訛訝訥訶詁詛詒詆詈詼詭詬詢誅誂誄誨誡誑誥誦誚誣諄諍諂諚諫諳諧諤諱謔諠諢諷諞諛謌謇謚諡謖謐謗謠謳鞫謦謫謾謨譁譌譏譎證譖譛譚譫"],["eca1","譟譬譯譴譽讀讌讎讒讓讖讙讚谺豁谿豈豌豎豐豕豢豬豸豺貂貉貅貊貍貎貔豼貘戝貭貪貽貲貳貮貶賈賁賤賣賚賽賺賻贄贅贊贇贏贍贐齎贓賍贔贖赧赭赱赳趁趙跂趾趺跏跚跖跌跛跋跪跫跟跣跼踈踉跿踝踞踐踟蹂踵踰踴蹊"],["eda1","蹇蹉蹌蹐蹈蹙蹤蹠踪蹣蹕蹶蹲蹼躁躇躅躄躋躊躓躑躔躙躪躡躬躰軆躱躾軅軈軋軛軣軼軻軫軾輊輅輕輒輙輓輜輟輛輌輦輳輻輹轅轂輾轌轉轆轎轗轜轢轣轤辜辟辣辭辯辷迚迥迢迪迯邇迴逅迹迺逑逕逡逍逞逖逋逧逶逵逹迸"],["eea1","遏遐遑遒逎遉逾遖遘遞遨遯遶隨遲邂遽邁邀邊邉邏邨邯邱邵郢郤扈郛鄂鄒鄙鄲鄰酊酖酘酣酥酩酳酲醋醉醂醢醫醯醪醵醴醺釀釁釉釋釐釖釟釡釛釼釵釶鈞釿鈔鈬鈕鈑鉞鉗鉅鉉鉤鉈銕鈿鉋鉐銜銖銓銛鉚鋏銹銷鋩錏鋺鍄錮"],["efa1","錙錢錚錣錺錵錻鍜鍠鍼鍮鍖鎰鎬鎭鎔鎹鏖鏗鏨鏥鏘鏃鏝鏐鏈鏤鐚鐔鐓鐃鐇鐐鐶鐫鐵鐡鐺鑁鑒鑄鑛鑠鑢鑞鑪鈩鑰鑵鑷鑽鑚鑼鑾钁鑿閂閇閊閔閖閘閙閠閨閧閭閼閻閹閾闊濶闃闍闌闕闔闖關闡闥闢阡阨阮阯陂陌陏陋陷陜陞"],["f0a1","陝陟陦陲陬隍隘隕隗險隧隱隲隰隴隶隸隹雎雋雉雍襍雜霍雕雹霄霆霈霓霎霑霏霖霙霤霪霰霹霽霾靄靆靈靂靉靜靠靤靦靨勒靫靱靹鞅靼鞁靺鞆鞋鞏鞐鞜鞨鞦鞣鞳鞴韃韆韈韋韜韭齏韲竟韶韵頏頌頸頤頡頷頽顆顏顋顫顯顰"],["f1a1","顱顴顳颪颯颱颶飄飃飆飩飫餃餉餒餔餘餡餝餞餤餠餬餮餽餾饂饉饅饐饋饑饒饌饕馗馘馥馭馮馼駟駛駝駘駑駭駮駱駲駻駸騁騏騅駢騙騫騷驅驂驀驃騾驕驍驛驗驟驢驥驤驩驫驪骭骰骼髀髏髑髓體髞髟髢髣髦髯髫髮髴髱髷"],["f2a1","髻鬆鬘鬚鬟鬢鬣鬥鬧鬨鬩鬪鬮鬯鬲魄魃魏魍魎魑魘魴鮓鮃鮑鮖鮗鮟鮠鮨鮴鯀鯊鮹鯆鯏鯑鯒鯣鯢鯤鯔鯡鰺鯲鯱鯰鰕鰔鰉鰓鰌鰆鰈鰒鰊鰄鰮鰛鰥鰤鰡鰰鱇鰲鱆鰾鱚鱠鱧鱶鱸鳧鳬鳰鴉鴈鳫鴃鴆鴪鴦鶯鴣鴟鵄鴕鴒鵁鴿鴾鵆鵈"],["f3a1","鵝鵞鵤鵑鵐鵙鵲鶉鶇鶫鵯鵺鶚鶤鶩鶲鷄鷁鶻鶸鶺鷆鷏鷂鷙鷓鷸鷦鷭鷯鷽鸚鸛鸞鹵鹹鹽麁麈麋麌麒麕麑麝麥麩麸麪麭靡黌黎黏黐黔黜點黝黠黥黨黯黴黶黷黹黻黼黽鼇鼈皷鼕鼡鼬鼾齊齒齔齣齟齠齡齦齧齬齪齷齲齶龕龜龠"],["f4a1","堯槇遙瑤凜熙"],["f9a1","纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德"],["faa1","忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱"],["fba1","犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚"],["fca1","釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑"],["fcf1","ⅰ",9,"¬¦'""],["8fa2af","˘ˇ¸˙˝¯˛˚~΄΅"],["8fa2c2","¡¦¿"],["8fa2eb","ºª©®™¤№"],["8fa6e1","ΆΈΉΊΪ"],["8fa6e7","Ό"],["8fa6e9","ΎΫ"],["8fa6ec","Ώ"],["8fa6f1","άέήίϊΐόςύϋΰώ"],["8fa7c2","Ђ",10,"ЎЏ"],["8fa7f2","ђ",10,"ўџ"],["8fa9a1","ÆĐ"],["8fa9a4","Ħ"],["8fa9a6","IJ"],["8fa9a8","ŁĿ"],["8fa9ab","ŊØŒ"],["8fa9af","ŦÞ"],["8fa9c1","æđðħıijĸłŀʼnŋøœßŧþ"],["8faaa1","ÁÀÄÂĂǍĀĄÅÃĆĈČÇĊĎÉÈËÊĚĖĒĘ"],["8faaba","ĜĞĢĠĤÍÌÏÎǏİĪĮĨĴĶĹĽĻŃŇŅÑÓÒÖÔǑŐŌÕŔŘŖŚŜŠŞŤŢÚÙÜÛŬǓŰŪŲŮŨǗǛǙǕŴÝŸŶŹŽŻ"],["8faba1","áàäâăǎāąåãćĉčçċďéèëêěėēęǵĝğ"],["8fabbd","ġĥíìïîǐ"],["8fabc5","īįĩĵķĺľļńňņñóòöôǒőōõŕřŗśŝšşťţúùüûŭǔűūųůũǘǜǚǖŵýÿŷźžż"],["8fb0a1","丂丄丅丌丒丟丣两丨丫丮丯丰丵乀乁乄乇乑乚乜乣乨乩乴乵乹乿亍亖亗亝亯亹仃仐仚仛仠仡仢仨仯仱仳仵份仾仿伀伂伃伈伋伌伒伕伖众伙伮伱你伳伵伷伹伻伾佀佂佈佉佋佌佒佔佖佘佟佣佪佬佮佱佷佸佹佺佽佾侁侂侄"],["8fb1a1","侅侉侊侌侎侐侒侓侔侗侙侚侞侟侲侷侹侻侼侽侾俀俁俅俆俈俉俋俌俍俏俒俜俠俢俰俲俼俽俿倀倁倄倇倊倌倎倐倓倗倘倛倜倝倞倢倧倮倰倲倳倵偀偁偂偅偆偊偌偎偑偒偓偗偙偟偠偢偣偦偧偪偭偰偱倻傁傃傄傆傊傎傏傐"],["8fb2a1","傒傓傔傖傛傜傞",4,"傪傯傰傹傺傽僀僃僄僇僌僎僐僓僔僘僜僝僟僢僤僦僨僩僯僱僶僺僾儃儆儇儈儋儌儍儎僲儐儗儙儛儜儝儞儣儧儨儬儭儯儱儳儴儵儸儹兂兊兏兓兕兗兘兟兤兦兾冃冄冋冎冘冝冡冣冭冸冺冼冾冿凂"],["8fb3a1","凈减凑凒凓凕凘凞凢凥凮凲凳凴凷刁刂刅划刓刕刖刘刢刨刱刲刵刼剅剉剕剗剘剚剜剟剠剡剦剮剷剸剹劀劂劅劊劌劓劕劖劗劘劚劜劤劥劦劧劯劰劶劷劸劺劻劽勀勄勆勈勌勏勑勔勖勛勜勡勥勨勩勪勬勰勱勴勶勷匀匃匊匋"],["8fb4a1","匌匑匓匘匛匜匞匟匥匧匨匩匫匬匭匰匲匵匼匽匾卂卌卋卙卛卡卣卥卬卭卲卹卾厃厇厈厎厓厔厙厝厡厤厪厫厯厲厴厵厷厸厺厽叀叅叏叒叓叕叚叝叞叠另叧叵吂吓吚吡吧吨吪启吱吴吵呃呄呇呍呏呞呢呤呦呧呩呫呭呮呴呿"],["8fb5a1","咁咃咅咈咉咍咑咕咖咜咟咡咦咧咩咪咭咮咱咷咹咺咻咿哆哊响哎哠哪哬哯哶哼哾哿唀唁唅唈唉唌唍唎唕唪唫唲唵唶唻唼唽啁啇啉啊啍啐啑啘啚啛啞啠啡啤啦啿喁喂喆喈喎喏喑喒喓喔喗喣喤喭喲喿嗁嗃嗆嗉嗋嗌嗎嗑嗒"],["8fb6a1","嗓嗗嗘嗛嗞嗢嗩嗶嗿嘅嘈嘊嘍",5,"嘙嘬嘰嘳嘵嘷嘹嘻嘼嘽嘿噀噁噃噄噆噉噋噍噏噔噞噠噡噢噣噦噩噭噯噱噲噵嚄嚅嚈嚋嚌嚕嚙嚚嚝嚞嚟嚦嚧嚨嚩嚫嚬嚭嚱嚳嚷嚾囅囉囊囋囏囐囌囍囙囜囝囟囡囤",4,"囱囫园"],["8fb7a1","囶囷圁圂圇圊圌圑圕圚圛圝圠圢圣圤圥圩圪圬圮圯圳圴圽圾圿坅坆坌坍坒坢坥坧坨坫坭",4,"坳坴坵坷坹坺坻坼坾垁垃垌垔垗垙垚垜垝垞垟垡垕垧垨垩垬垸垽埇埈埌埏埕埝埞埤埦埧埩埭埰埵埶埸埽埾埿堃堄堈堉埡"],["8fb8a1","堌堍堛堞堟堠堦堧堭堲堹堿塉塌塍塏塐塕塟塡塤塧塨塸塼塿墀墁墇墈墉墊墌墍墏墐墔墖墝墠墡墢墦墩墱墲壄墼壂壈壍壎壐壒壔壖壚壝壡壢壩壳夅夆夋夌夒夓夔虁夝夡夣夤夨夯夰夳夵夶夿奃奆奒奓奙奛奝奞奟奡奣奫奭"],["8fb9a1","奯奲奵奶她奻奼妋妌妎妒妕妗妟妤妧妭妮妯妰妳妷妺妼姁姃姄姈姊姍姒姝姞姟姣姤姧姮姯姱姲姴姷娀娄娌娍娎娒娓娞娣娤娧娨娪娭娰婄婅婇婈婌婐婕婞婣婥婧婭婷婺婻婾媋媐媓媖媙媜媞媟媠媢媧媬媱媲媳媵媸媺媻媿"],["8fbaa1","嫄嫆嫈嫏嫚嫜嫠嫥嫪嫮嫵嫶嫽嬀嬁嬈嬗嬴嬙嬛嬝嬡嬥嬭嬸孁孋孌孒孖孞孨孮孯孼孽孾孿宁宄宆宊宎宐宑宓宔宖宨宩宬宭宯宱宲宷宺宼寀寁寍寏寖",4,"寠寯寱寴寽尌尗尞尟尣尦尩尫尬尮尰尲尵尶屙屚屜屢屣屧屨屩"],["8fbba1","屭屰屴屵屺屻屼屽岇岈岊岏岒岝岟岠岢岣岦岪岲岴岵岺峉峋峒峝峗峮峱峲峴崁崆崍崒崫崣崤崦崧崱崴崹崽崿嵂嵃嵆嵈嵕嵑嵙嵊嵟嵠嵡嵢嵤嵪嵭嵰嵹嵺嵾嵿嶁嶃嶈嶊嶒嶓嶔嶕嶙嶛嶟嶠嶧嶫嶰嶴嶸嶹巃巇巋巐巎巘巙巠巤"],["8fbca1","巩巸巹帀帇帍帒帔帕帘帟帠帮帨帲帵帾幋幐幉幑幖幘幛幜幞幨幪",4,"幰庀庋庎庢庤庥庨庪庬庱庳庽庾庿廆廌廋廎廑廒廔廕廜廞廥廫异弆弇弈弎弙弜弝弡弢弣弤弨弫弬弮弰弴弶弻弽弿彀彄彅彇彍彐彔彘彛彠彣彤彧"],["8fbda1","彯彲彴彵彸彺彽彾徉徍徏徖徜徝徢徧徫徤徬徯徰徱徸忄忇忈忉忋忐",4,"忞忡忢忨忩忪忬忭忮忯忲忳忶忺忼怇怊怍怓怔怗怘怚怟怤怭怳怵恀恇恈恉恌恑恔恖恗恝恡恧恱恾恿悂悆悈悊悎悑悓悕悘悝悞悢悤悥您悰悱悷"],["8fbea1","悻悾惂惄惈惉惊惋惎惏惔惕惙惛惝惞惢惥惲惵惸惼惽愂愇愊愌愐",4,"愖愗愙愜愞愢愪愫愰愱愵愶愷愹慁慅慆慉慞慠慬慲慸慻慼慿憀憁憃憄憋憍憒憓憗憘憜憝憟憠憥憨憪憭憸憹憼懀懁懂懎懏懕懜懝懞懟懡懢懧懩懥"],["8fbfa1","懬懭懯戁戃戄戇戓戕戜戠戢戣戧戩戫戹戽扂扃扄扆扌扐扑扒扔扖扚扜扤扭扯扳扺扽抍抎抏抐抦抨抳抶抷抺抾抿拄拎拕拖拚拪拲拴拼拽挃挄挊挋挍挐挓挖挘挩挪挭挵挶挹挼捁捂捃捄捆捊捋捎捒捓捔捘捛捥捦捬捭捱捴捵"],["8fc0a1","捸捼捽捿掂掄掇掊掐掔掕掙掚掞掤掦掭掮掯掽揁揅揈揎揑揓揔揕揜揠揥揪揬揲揳揵揸揹搉搊搐搒搔搘搞搠搢搤搥搩搪搯搰搵搽搿摋摏摑摒摓摔摚摛摜摝摟摠摡摣摭摳摴摻摽撅撇撏撐撑撘撙撛撝撟撡撣撦撨撬撳撽撾撿"],["8fc1a1","擄擉擊擋擌擎擐擑擕擗擤擥擩擪擭擰擵擷擻擿攁攄攈攉攊攏攓攔攖攙攛攞攟攢攦攩攮攱攺攼攽敃敇敉敐敒敔敟敠敧敫敺敽斁斅斊斒斕斘斝斠斣斦斮斲斳斴斿旂旈旉旎旐旔旖旘旟旰旲旴旵旹旾旿昀昄昈昉昍昑昒昕昖昝"],["8fc2a1","昞昡昢昣昤昦昩昪昫昬昮昰昱昳昹昷晀晅晆晊晌晑晎晗晘晙晛晜晠晡曻晪晫晬晾晳晵晿晷晸晹晻暀晼暋暌暍暐暒暙暚暛暜暟暠暤暭暱暲暵暻暿曀曂曃曈曌曎曏曔曛曟曨曫曬曮曺朅朇朎朓朙朜朠朢朳朾杅杇杈杌杔杕杝"],["8fc3a1","杦杬杮杴杶杻极构枎枏枑枓枖枘枙枛枰枱枲枵枻枼枽柹柀柂柃柅柈柉柒柗柙柜柡柦柰柲柶柷桒栔栙栝栟栨栧栬栭栯栰栱栳栻栿桄桅桊桌桕桗桘桛桫桮",4,"桵桹桺桻桼梂梄梆梈梖梘梚梜梡梣梥梩梪梮梲梻棅棈棌棏"],["8fc4a1","棐棑棓棖棙棜棝棥棨棪棫棬棭棰棱棵棶棻棼棽椆椉椊椐椑椓椖椗椱椳椵椸椻楂楅楉楎楗楛楣楤楥楦楨楩楬楰楱楲楺楻楿榀榍榒榖榘榡榥榦榨榫榭榯榷榸榺榼槅槈槑槖槗槢槥槮槯槱槳槵槾樀樁樃樏樑樕樚樝樠樤樨樰樲"],["8fc5a1","樴樷樻樾樿橅橆橉橊橎橐橑橒橕橖橛橤橧橪橱橳橾檁檃檆檇檉檋檑檛檝檞檟檥檫檯檰檱檴檽檾檿櫆櫉櫈櫌櫐櫔櫕櫖櫜櫝櫤櫧櫬櫰櫱櫲櫼櫽欂欃欆欇欉欏欐欑欗欛欞欤欨欫欬欯欵欶欻欿歆歊歍歒歖歘歝歠歧歫歮歰歵歽"],["8fc6a1","歾殂殅殗殛殟殠殢殣殨殩殬殭殮殰殸殹殽殾毃毄毉毌毖毚毡毣毦毧毮毱毷毹毿氂氄氅氉氍氎氐氒氙氟氦氧氨氬氮氳氵氶氺氻氿汊汋汍汏汒汔汙汛汜汫汭汯汴汶汸汹汻沅沆沇沉沔沕沗沘沜沟沰沲沴泂泆泍泏泐泑泒泔泖"],["8fc7a1","泚泜泠泧泩泫泬泮泲泴洄洇洊洎洏洑洓洚洦洧洨汧洮洯洱洹洼洿浗浞浟浡浥浧浯浰浼涂涇涑涒涔涖涗涘涪涬涴涷涹涽涿淄淈淊淎淏淖淛淝淟淠淢淥淩淯淰淴淶淼渀渄渞渢渧渲渶渹渻渼湄湅湈湉湋湏湑湒湓湔湗湜湝湞"],["8fc8a1","湢湣湨湳湻湽溍溓溙溠溧溭溮溱溳溻溿滀滁滃滇滈滊滍滎滏滫滭滮滹滻滽漄漈漊漌漍漖漘漚漛漦漩漪漯漰漳漶漻漼漭潏潑潒潓潗潙潚潝潞潡潢潨潬潽潾澃澇澈澋澌澍澐澒澓澔澖澚澟澠澥澦澧澨澮澯澰澵澶澼濅濇濈濊"],["8fc9a1","濚濞濨濩濰濵濹濼濽瀀瀅瀆瀇瀍瀗瀠瀣瀯瀴瀷瀹瀼灃灄灈灉灊灋灔灕灝灞灎灤灥灬灮灵灶灾炁炅炆炔",4,"炛炤炫炰炱炴炷烊烑烓烔烕烖烘烜烤烺焃",4,"焋焌焏焞焠焫焭焯焰焱焸煁煅煆煇煊煋煐煒煗煚煜煞煠"],["8fcaa1","煨煹熀熅熇熌熒熚熛熠熢熯熰熲熳熺熿燀燁燄燋燌燓燖燙燚燜燸燾爀爇爈爉爓爗爚爝爟爤爫爯爴爸爹牁牂牃牅牎牏牐牓牕牖牚牜牞牠牣牨牫牮牯牱牷牸牻牼牿犄犉犍犎犓犛犨犭犮犱犴犾狁狇狉狌狕狖狘狟狥狳狴狺狻"],["8fcba1","狾猂猄猅猇猋猍猒猓猘猙猞猢猤猧猨猬猱猲猵猺猻猽獃獍獐獒獖獘獝獞獟獠獦獧獩獫獬獮獯獱獷獹獼玀玁玃玅玆玎玐玓玕玗玘玜玞玟玠玢玥玦玪玫玭玵玷玹玼玽玿珅珆珉珋珌珏珒珓珖珙珝珡珣珦珧珩珴珵珷珹珺珻珽"],["8fcca1","珿琀琁琄琇琊琑琚琛琤琦琨",9,"琹瑀瑃瑄瑆瑇瑋瑍瑑瑒瑗瑝瑢瑦瑧瑨瑫瑭瑮瑱瑲璀璁璅璆璇璉璏璐璑璒璘璙璚璜璟璠璡璣璦璨璩璪璫璮璯璱璲璵璹璻璿瓈瓉瓌瓐瓓瓘瓚瓛瓞瓟瓤瓨瓪瓫瓯瓴瓺瓻瓼瓿甆"],["8fcda1","甒甖甗甠甡甤甧甩甪甯甶甹甽甾甿畀畃畇畈畎畐畒畗畞畟畡畯畱畹",5,"疁疅疐疒疓疕疙疜疢疤疴疺疿痀痁痄痆痌痎痏痗痜痟痠痡痤痧痬痮痯痱痹瘀瘂瘃瘄瘇瘈瘊瘌瘏瘒瘓瘕瘖瘙瘛瘜瘝瘞瘣瘥瘦瘩瘭瘲瘳瘵瘸瘹"],["8fcea1","瘺瘼癊癀癁癃癄癅癉癋癕癙癟癤癥癭癮癯癱癴皁皅皌皍皕皛皜皝皟皠皢",6,"皪皭皽盁盅盉盋盌盎盔盙盠盦盨盬盰盱盶盹盼眀眆眊眎眒眔眕眗眙眚眜眢眨眭眮眯眴眵眶眹眽眾睂睅睆睊睍睎睏睒睖睗睜睞睟睠睢"],["8fcfa1","睤睧睪睬睰睲睳睴睺睽瞀瞄瞌瞍瞔瞕瞖瞚瞟瞢瞧瞪瞮瞯瞱瞵瞾矃矉矑矒矕矙矞矟矠矤矦矪矬矰矱矴矸矻砅砆砉砍砎砑砝砡砢砣砭砮砰砵砷硃硄硇硈硌硎硒硜硞硠硡硣硤硨硪确硺硾碊碏碔碘碡碝碞碟碤碨碬碭碰碱碲碳"],["8fd0a1","碻碽碿磇磈磉磌磎磒磓磕磖磤磛磟磠磡磦磪磲磳礀磶磷磺磻磿礆礌礐礚礜礞礟礠礥礧礩礭礱礴礵礻礽礿祄祅祆祊祋祏祑祔祘祛祜祧祩祫祲祹祻祼祾禋禌禑禓禔禕禖禘禛禜禡禨禩禫禯禱禴禸离秂秄秇秈秊秏秔秖秚秝秞"],["8fd1a1","秠秢秥秪秫秭秱秸秼稂稃稇稉稊稌稑稕稛稞稡稧稫稭稯稰稴稵稸稹稺穄穅穇穈穌穕穖穙穜穝穟穠穥穧穪穭穵穸穾窀窂窅窆窊窋窐窑窔窞窠窣窬窳窵窹窻窼竆竉竌竎竑竛竨竩竫竬竱竴竻竽竾笇笔笟笣笧笩笪笫笭笮笯笰"],["8fd2a1","笱笴笽笿筀筁筇筎筕筠筤筦筩筪筭筯筲筳筷箄箉箎箐箑箖箛箞箠箥箬箯箰箲箵箶箺箻箼箽篂篅篈篊篔篖篗篙篚篛篨篪篲篴篵篸篹篺篼篾簁簂簃簄簆簉簋簌簎簏簙簛簠簥簦簨簬簱簳簴簶簹簺籆籊籕籑籒籓籙",5],["8fd3a1","籡籣籧籩籭籮籰籲籹籼籽粆粇粏粔粞粠粦粰粶粷粺粻粼粿糄糇糈糉糍糏糓糔糕糗糙糚糝糦糩糫糵紃紇紈紉紏紑紒紓紖紝紞紣紦紪紭紱紼紽紾絀絁絇絈絍絑絓絗絙絚絜絝絥絧絪絰絸絺絻絿綁綂綃綅綆綈綋綌綍綑綖綗綝"],["8fd4a1","綞綦綧綪綳綶綷綹緂",4,"緌緍緎緗緙縀緢緥緦緪緫緭緱緵緶緹緺縈縐縑縕縗縜縝縠縧縨縬縭縯縳縶縿繄繅繇繎繐繒繘繟繡繢繥繫繮繯繳繸繾纁纆纇纊纍纑纕纘纚纝纞缼缻缽缾缿罃罄罇罏罒罓罛罜罝罡罣罤罥罦罭"],["8fd5a1","罱罽罾罿羀羋羍羏羐羑羖羗羜羡羢羦羪羭羴羼羿翀翃翈翎翏翛翟翣翥翨翬翮翯翲翺翽翾翿耇耈耊耍耎耏耑耓耔耖耝耞耟耠耤耦耬耮耰耴耵耷耹耺耼耾聀聄聠聤聦聭聱聵肁肈肎肜肞肦肧肫肸肹胈胍胏胒胔胕胗胘胠胭胮"],["8fd6a1","胰胲胳胶胹胺胾脃脋脖脗脘脜脞脠脤脧脬脰脵脺脼腅腇腊腌腒腗腠腡腧腨腩腭腯腷膁膐膄膅膆膋膎膖膘膛膞膢膮膲膴膻臋臃臅臊臎臏臕臗臛臝臞臡臤臫臬臰臱臲臵臶臸臹臽臿舀舃舏舓舔舙舚舝舡舢舨舲舴舺艃艄艅艆"],["8fd7a1","艋艎艏艑艖艜艠艣艧艭艴艻艽艿芀芁芃芄芇芉芊芎芑芔芖芘芚芛芠芡芣芤芧芨芩芪芮芰芲芴芷芺芼芾芿苆苐苕苚苠苢苤苨苪苭苯苶苷苽苾茀茁茇茈茊茋荔茛茝茞茟茡茢茬茭茮茰茳茷茺茼茽荂荃荄荇荍荎荑荕荖荗荰荸"],["8fd8a1","荽荿莀莂莄莆莍莒莔莕莘莙莛莜莝莦莧莩莬莾莿菀菇菉菏菐菑菔菝荓菨菪菶菸菹菼萁萆萊萏萑萕萙莭萯萹葅葇葈葊葍葏葑葒葖葘葙葚葜葠葤葥葧葪葰葳葴葶葸葼葽蒁蒅蒒蒓蒕蒞蒦蒨蒩蒪蒯蒱蒴蒺蒽蒾蓀蓂蓇蓈蓌蓏蓓"],["8fd9a1","蓜蓧蓪蓯蓰蓱蓲蓷蔲蓺蓻蓽蔂蔃蔇蔌蔎蔐蔜蔞蔢蔣蔤蔥蔧蔪蔫蔯蔳蔴蔶蔿蕆蕏",4,"蕖蕙蕜",6,"蕤蕫蕯蕹蕺蕻蕽蕿薁薅薆薉薋薌薏薓薘薝薟薠薢薥薧薴薶薷薸薼薽薾薿藂藇藊藋藎薭藘藚藟藠藦藨藭藳藶藼"],["8fdaa1","藿蘀蘄蘅蘍蘎蘐蘑蘒蘘蘙蘛蘞蘡蘧蘩蘶蘸蘺蘼蘽虀虂虆虒虓虖虗虘虙虝虠",4,"虩虬虯虵虶虷虺蚍蚑蚖蚘蚚蚜蚡蚦蚧蚨蚭蚱蚳蚴蚵蚷蚸蚹蚿蛀蛁蛃蛅蛑蛒蛕蛗蛚蛜蛠蛣蛥蛧蚈蛺蛼蛽蜄蜅蜇蜋蜎蜏蜐蜓蜔蜙蜞蜟蜡蜣"],["8fdba1","蜨蜮蜯蜱蜲蜹蜺蜼蜽蜾蝀蝃蝅蝍蝘蝝蝡蝤蝥蝯蝱蝲蝻螃",6,"螋螌螐螓螕螗螘螙螞螠螣螧螬螭螮螱螵螾螿蟁蟈蟉蟊蟎蟕蟖蟙蟚蟜蟟蟢蟣蟤蟪蟫蟭蟱蟳蟸蟺蟿蠁蠃蠆蠉蠊蠋蠐蠙蠒蠓蠔蠘蠚蠛蠜蠞蠟蠨蠭蠮蠰蠲蠵"],["8fdca1","蠺蠼衁衃衅衈衉衊衋衎衑衕衖衘衚衜衟衠衤衩衱衹衻袀袘袚袛袜袟袠袨袪袺袽袾裀裊",4,"裑裒裓裛裞裧裯裰裱裵裷褁褆褍褎褏褕褖褘褙褚褜褠褦褧褨褰褱褲褵褹褺褾襀襂襅襆襉襏襒襗襚襛襜襡襢襣襫襮襰襳襵襺"],["8fdda1","襻襼襽覉覍覐覔覕覛覜覟覠覥覰覴覵覶覷覼觔",4,"觥觩觫觭觱觳觶觹觽觿訄訅訇訏訑訒訔訕訞訠訢訤訦訫訬訯訵訷訽訾詀詃詅詇詉詍詎詓詖詗詘詜詝詡詥詧詵詶詷詹詺詻詾詿誀誃誆誋誏誐誒誖誗誙誟誧誩誮誯誳"],["8fdea1","誶誷誻誾諃諆諈諉諊諑諓諔諕諗諝諟諬諰諴諵諶諼諿謅謆謋謑謜謞謟謊謭謰謷謼譂",4,"譈譒譓譔譙譍譞譣譭譶譸譹譼譾讁讄讅讋讍讏讔讕讜讞讟谸谹谽谾豅豇豉豋豏豑豓豔豗豘豛豝豙豣豤豦豨豩豭豳豵豶豻豾貆"],["8fdfa1","貇貋貐貒貓貙貛貜貤貹貺賅賆賉賋賏賖賕賙賝賡賨賬賯賰賲賵賷賸賾賿贁贃贉贒贗贛赥赩赬赮赿趂趄趈趍趐趑趕趞趟趠趦趫趬趯趲趵趷趹趻跀跅跆跇跈跊跎跑跔跕跗跙跤跥跧跬跰趼跱跲跴跽踁踄踅踆踋踑踔踖踠踡踢"],["8fe0a1","踣踦踧踱踳踶踷踸踹踽蹀蹁蹋蹍蹎蹏蹔蹛蹜蹝蹞蹡蹢蹩蹬蹭蹯蹰蹱蹹蹺蹻躂躃躉躐躒躕躚躛躝躞躢躧躩躭躮躳躵躺躻軀軁軃軄軇軏軑軔軜軨軮軰軱軷軹軺軭輀輂輇輈輏輐輖輗輘輞輠輡輣輥輧輨輬輭輮輴輵輶輷輺轀轁"],["8fe1a1","轃轇轏轑",4,"轘轝轞轥辝辠辡辤辥辦辵辶辸达迀迁迆迊迋迍运迒迓迕迠迣迤迨迮迱迵迶迻迾适逄逈逌逘逛逨逩逯逪逬逭逳逴逷逿遃遄遌遛遝遢遦遧遬遰遴遹邅邈邋邌邎邐邕邗邘邙邛邠邡邢邥邰邲邳邴邶邽郌邾郃"],["8fe2a1","郄郅郇郈郕郗郘郙郜郝郟郥郒郶郫郯郰郴郾郿鄀鄄鄅鄆鄈鄍鄐鄔鄖鄗鄘鄚鄜鄞鄠鄥鄢鄣鄧鄩鄮鄯鄱鄴鄶鄷鄹鄺鄼鄽酃酇酈酏酓酗酙酚酛酡酤酧酭酴酹酺酻醁醃醅醆醊醎醑醓醔醕醘醞醡醦醨醬醭醮醰醱醲醳醶醻醼醽醿"],["8fe3a1","釂釃釅釓釔釗釙釚釞釤釥釩釪釬",5,"釷釹釻釽鈀鈁鈄鈅鈆鈇鈉鈊鈌鈐鈒鈓鈖鈘鈜鈝鈣鈤鈥鈦鈨鈮鈯鈰鈳鈵鈶鈸鈹鈺鈼鈾鉀鉂鉃鉆鉇鉊鉍鉎鉏鉑鉘鉙鉜鉝鉠鉡鉥鉧鉨鉩鉮鉯鉰鉵",4,"鉻鉼鉽鉿銈銉銊銍銎銒銗"],["8fe4a1","銙銟銠銤銥銧銨銫銯銲銶銸銺銻銼銽銿",4,"鋅鋆鋇鋈鋋鋌鋍鋎鋐鋓鋕鋗鋘鋙鋜鋝鋟鋠鋡鋣鋥鋧鋨鋬鋮鋰鋹鋻鋿錀錂錈錍錑錔錕錜錝錞錟錡錤錥錧錩錪錳錴錶錷鍇鍈鍉鍐鍑鍒鍕鍗鍘鍚鍞鍤鍥鍧鍩鍪鍭鍯鍰鍱鍳鍴鍶"],["8fe5a1","鍺鍽鍿鎀鎁鎂鎈鎊鎋鎍鎏鎒鎕鎘鎛鎞鎡鎣鎤鎦鎨鎫鎴鎵鎶鎺鎩鏁鏄鏅鏆鏇鏉",4,"鏓鏙鏜鏞鏟鏢鏦鏧鏹鏷鏸鏺鏻鏽鐁鐂鐄鐈鐉鐍鐎鐏鐕鐖鐗鐟鐮鐯鐱鐲鐳鐴鐻鐿鐽鑃鑅鑈鑊鑌鑕鑙鑜鑟鑡鑣鑨鑫鑭鑮鑯鑱鑲钄钃镸镹"],["8fe6a1","镾閄閈閌閍閎閝閞閟閡閦閩閫閬閴閶閺閽閿闆闈闉闋闐闑闒闓闙闚闝闞闟闠闤闦阝阞阢阤阥阦阬阱阳阷阸阹阺阼阽陁陒陔陖陗陘陡陮陴陻陼陾陿隁隂隃隄隉隑隖隚隝隟隤隥隦隩隮隯隳隺雊雒嶲雘雚雝雞雟雩雯雱雺霂"],["8fe7a1","霃霅霉霚霛霝霡霢霣霨霱霳靁靃靊靎靏靕靗靘靚靛靣靧靪靮靳靶靷靸靻靽靿鞀鞉鞕鞖鞗鞙鞚鞞鞟鞢鞬鞮鞱鞲鞵鞶鞸鞹鞺鞼鞾鞿韁韄韅韇韉韊韌韍韎韐韑韔韗韘韙韝韞韠韛韡韤韯韱韴韷韸韺頇頊頙頍頎頔頖頜頞頠頣頦"],["8fe8a1","頫頮頯頰頲頳頵頥頾顄顇顊顑顒顓顖顗顙顚顢顣顥顦顪顬颫颭颮颰颴颷颸颺颻颿飂飅飈飌飡飣飥飦飧飪飳飶餂餇餈餑餕餖餗餚餛餜餟餢餦餧餫餱",4,"餹餺餻餼饀饁饆饇饈饍饎饔饘饙饛饜饞饟饠馛馝馟馦馰馱馲馵"],["8fe9a1","馹馺馽馿駃駉駓駔駙駚駜駞駧駪駫駬駰駴駵駹駽駾騂騃騄騋騌騐騑騖騞騠騢騣騤騧騭騮騳騵騶騸驇驁驄驊驋驌驎驑驔驖驝骪骬骮骯骲骴骵骶骹骻骾骿髁髃髆髈髎髐髒髕髖髗髛髜髠髤髥髧髩髬髲髳髵髹髺髽髿",4],["8feaa1","鬄鬅鬈鬉鬋鬌鬍鬎鬐鬒鬖鬙鬛鬜鬠鬦鬫鬭鬳鬴鬵鬷鬹鬺鬽魈魋魌魕魖魗魛魞魡魣魥魦魨魪",4,"魳魵魷魸魹魿鮀鮄鮅鮆鮇鮉鮊鮋鮍鮏鮐鮔鮚鮝鮞鮦鮧鮩鮬鮰鮱鮲鮷鮸鮻鮼鮾鮿鯁鯇鯈鯎鯐鯗鯘鯝鯟鯥鯧鯪鯫鯯鯳鯷鯸"],["8feba1","鯹鯺鯽鯿鰀鰂鰋鰏鰑鰖鰘鰙鰚鰜鰞鰢鰣鰦",4,"鰱鰵鰶鰷鰽鱁鱃鱄鱅鱉鱊鱎鱏鱐鱓鱔鱖鱘鱛鱝鱞鱟鱣鱩鱪鱜鱫鱨鱮鱰鱲鱵鱷鱻鳦鳲鳷鳹鴋鴂鴑鴗鴘鴜鴝鴞鴯鴰鴲鴳鴴鴺鴼鵅鴽鵂鵃鵇鵊鵓鵔鵟鵣鵢鵥鵩鵪鵫鵰鵶鵷鵻"],["8feca1","鵼鵾鶃鶄鶆鶊鶍鶎鶒鶓鶕鶖鶗鶘鶡鶪鶬鶮鶱鶵鶹鶼鶿鷃鷇鷉鷊鷔鷕鷖鷗鷚鷞鷟鷠鷥鷧鷩鷫鷮鷰鷳鷴鷾鸊鸂鸇鸎鸐鸑鸒鸕鸖鸙鸜鸝鹺鹻鹼麀麂麃麄麅麇麎麏麖麘麛麞麤麨麬麮麯麰麳麴麵黆黈黋黕黟黤黧黬黭黮黰黱黲黵"],["8feda1","黸黿鼂鼃鼉鼏鼐鼑鼒鼔鼖鼗鼙鼚鼛鼟鼢鼦鼪鼫鼯鼱鼲鼴鼷鼹鼺鼼鼽鼿齁齃",4,"齓齕齖齗齘齚齝齞齨齩齭",4,"齳齵齺齽龏龐龑龒龔龖龗龞龡龢龣龥"]]')},99129:Wt=>{"use strict";Wt.exports=JSON.parse('{"uChars":[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],"gbChars":[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189000]}')},55914:Wt=>{"use strict";Wt.exports=JSON.parse('[["a140","",62],["a180","",32],["a240","",62],["a280","",32],["a2ab","",5],["a2e3","€"],["a2ef",""],["a2fd",""],["a340","",62],["a380","",31," "],["a440","",62],["a480","",32],["a4f4","",10],["a540","",62],["a580","",32],["a5f7","",7],["a640","",62],["a680","",32],["a6b9","",7],["a6d9","",6],["a6ec",""],["a6f3",""],["a6f6","",8],["a740","",62],["a780","",32],["a7c2","",14],["a7f2","",12],["a896","",10],["a8bc","ḿ"],["a8bf","ǹ"],["a8c1",""],["a8ea","",20],["a958",""],["a95b",""],["a95d",""],["a989","〾⿰",11],["a997","",12],["a9f0","",14],["aaa1","",93],["aba1","",93],["aca1","",93],["ada1","",93],["aea1","",93],["afa1","",93],["d7fa","",4],["f8a1","",93],["f9a1","",93],["faa1","",93],["fba1","",93],["fca1","",93],["fda1","",93],["fe50","⺁⺄㑳㑇⺈⺋㖞㘚㘎⺌⺗㥮㤘㧏㧟㩳㧐㭎㱮㳠⺧⺪䁖䅟⺮䌷⺳⺶⺷䎱䎬⺻䏝䓖䙡䙌"],["fe80","䜣䜩䝼䞍⻊䥇䥺䥽䦂䦃䦅䦆䦟䦛䦷䦶䲣䲟䲠䲡䱷䲢䴓",6,"䶮",93],["8135f437",""]]')},40679:Wt=>{"use strict";Wt.exports=JSON.parse('[["0","\\u0000",128],["a1","。",62],["8140"," 、。,.・:;?!゛゜´`¨^ ̄_ヽヾゝゞ〃仝々〆〇ー―‐/\~∥|…‥‘’“”()〔〕[]{}〈",9,"+-±×"],["8180","÷=≠<>≦≧∞∴♂♀°′″℃¥$¢£%#&*@§☆★○●◎◇◆□■△▲▽▼※〒→←↑↓〓"],["81b8","∈∋⊆⊇⊂⊃∪∩"],["81c8","∧∨¬⇒⇔∀∃"],["81da","∠⊥⌒∂∇≡≒≪≫√∽∝∵∫∬"],["81f0","ʼn♯♭♪†‡¶"],["81fc","◯"],["824f","0",9],["8260","A",25],["8281","a",25],["829f","ぁ",82],["8340","ァ",62],["8380","ム",22],["839f","Α",16,"Σ",6],["83bf","α",16,"σ",6],["8440","А",5,"ЁЖ",25],["8470","а",5,"ёж",7],["8480","о",17],["849f","─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂"],["8740","①",19,"Ⅰ",9],["875f","㍉㌔㌢㍍㌘㌧㌃㌶㍑㍗㌍㌦㌣㌫㍊㌻㎜㎝㎞㎎㎏㏄㎡"],["877e","㍻"],["8780","〝〟№㏍℡㊤",4,"㈱㈲㈹㍾㍽㍼≒≡∫∮∑√⊥∠∟⊿∵∩∪"],["889f","亜唖娃阿哀愛挨姶逢葵茜穐悪握渥旭葦芦鯵梓圧斡扱宛姐虻飴絢綾鮎或粟袷安庵按暗案闇鞍杏以伊位依偉囲夷委威尉惟意慰易椅為畏異移維緯胃萎衣謂違遺医井亥域育郁磯一壱溢逸稲茨芋鰯允印咽員因姻引飲淫胤蔭"],["8940","院陰隠韻吋右宇烏羽迂雨卯鵜窺丑碓臼渦嘘唄欝蔚鰻姥厩浦瓜閏噂云運雲荏餌叡営嬰影映曳栄永泳洩瑛盈穎頴英衛詠鋭液疫益駅悦謁越閲榎厭円"],["8980","園堰奄宴延怨掩援沿演炎焔煙燕猿縁艶苑薗遠鉛鴛塩於汚甥凹央奥往応押旺横欧殴王翁襖鴬鴎黄岡沖荻億屋憶臆桶牡乙俺卸恩温穏音下化仮何伽価佳加可嘉夏嫁家寡科暇果架歌河火珂禍禾稼箇花苛茄荷華菓蝦課嘩貨迦過霞蚊俄峨我牙画臥芽蛾賀雅餓駕介会解回塊壊廻快怪悔恢懐戒拐改"],["8a40","魁晦械海灰界皆絵芥蟹開階貝凱劾外咳害崖慨概涯碍蓋街該鎧骸浬馨蛙垣柿蛎鈎劃嚇各廓拡撹格核殻獲確穫覚角赫較郭閣隔革学岳楽額顎掛笠樫"],["8a80","橿梶鰍潟割喝恰括活渇滑葛褐轄且鰹叶椛樺鞄株兜竃蒲釜鎌噛鴨栢茅萱粥刈苅瓦乾侃冠寒刊勘勧巻喚堪姦完官寛干幹患感慣憾換敢柑桓棺款歓汗漢澗潅環甘監看竿管簡緩缶翰肝艦莞観諌貫還鑑間閑関陥韓館舘丸含岸巌玩癌眼岩翫贋雁頑顔願企伎危喜器基奇嬉寄岐希幾忌揮机旗既期棋棄"],["8b40","機帰毅気汽畿祈季稀紀徽規記貴起軌輝飢騎鬼亀偽儀妓宜戯技擬欺犠疑祇義蟻誼議掬菊鞠吉吃喫桔橘詰砧杵黍却客脚虐逆丘久仇休及吸宮弓急救"],["8b80","朽求汲泣灸球究窮笈級糾給旧牛去居巨拒拠挙渠虚許距鋸漁禦魚亨享京供侠僑兇競共凶協匡卿叫喬境峡強彊怯恐恭挟教橋況狂狭矯胸脅興蕎郷鏡響饗驚仰凝尭暁業局曲極玉桐粁僅勤均巾錦斤欣欽琴禁禽筋緊芹菌衿襟謹近金吟銀九倶句区狗玖矩苦躯駆駈駒具愚虞喰空偶寓遇隅串櫛釧屑屈"],["8c40","掘窟沓靴轡窪熊隈粂栗繰桑鍬勲君薫訓群軍郡卦袈祁係傾刑兄啓圭珪型契形径恵慶慧憩掲携敬景桂渓畦稽系経継繋罫茎荊蛍計詣警軽頚鶏芸迎鯨"],["8c80","劇戟撃激隙桁傑欠決潔穴結血訣月件倹倦健兼券剣喧圏堅嫌建憲懸拳捲検権牽犬献研硯絹県肩見謙賢軒遣鍵険顕験鹸元原厳幻弦減源玄現絃舷言諺限乎個古呼固姑孤己庫弧戸故枯湖狐糊袴股胡菰虎誇跨鈷雇顧鼓五互伍午呉吾娯後御悟梧檎瑚碁語誤護醐乞鯉交佼侯候倖光公功効勾厚口向"],["8d40","后喉坑垢好孔孝宏工巧巷幸広庚康弘恒慌抗拘控攻昂晃更杭校梗構江洪浩港溝甲皇硬稿糠紅紘絞綱耕考肯肱腔膏航荒行衡講貢購郊酵鉱砿鋼閤降"],["8d80","項香高鴻剛劫号合壕拷濠豪轟麹克刻告国穀酷鵠黒獄漉腰甑忽惚骨狛込此頃今困坤墾婚恨懇昏昆根梱混痕紺艮魂些佐叉唆嵯左差査沙瑳砂詐鎖裟坐座挫債催再最哉塞妻宰彩才採栽歳済災采犀砕砦祭斎細菜裁載際剤在材罪財冴坂阪堺榊肴咲崎埼碕鷺作削咋搾昨朔柵窄策索錯桜鮭笹匙冊刷"],["8e40","察拶撮擦札殺薩雑皐鯖捌錆鮫皿晒三傘参山惨撒散桟燦珊産算纂蚕讃賛酸餐斬暫残仕仔伺使刺司史嗣四士始姉姿子屍市師志思指支孜斯施旨枝止"],["8e80","死氏獅祉私糸紙紫肢脂至視詞詩試誌諮資賜雌飼歯事似侍児字寺慈持時次滋治爾璽痔磁示而耳自蒔辞汐鹿式識鴫竺軸宍雫七叱執失嫉室悉湿漆疾質実蔀篠偲柴芝屡蕊縞舎写射捨赦斜煮社紗者謝車遮蛇邪借勺尺杓灼爵酌釈錫若寂弱惹主取守手朱殊狩珠種腫趣酒首儒受呪寿授樹綬需囚収周"],["8f40","宗就州修愁拾洲秀秋終繍習臭舟蒐衆襲讐蹴輯週酋酬集醜什住充十従戎柔汁渋獣縦重銃叔夙宿淑祝縮粛塾熟出術述俊峻春瞬竣舜駿准循旬楯殉淳"],["8f80","準潤盾純巡遵醇順処初所暑曙渚庶緒署書薯藷諸助叙女序徐恕鋤除傷償勝匠升召哨商唱嘗奨妾娼宵将小少尚庄床廠彰承抄招掌捷昇昌昭晶松梢樟樵沼消渉湘焼焦照症省硝礁祥称章笑粧紹肖菖蒋蕉衝裳訟証詔詳象賞醤鉦鍾鐘障鞘上丈丞乗冗剰城場壌嬢常情擾条杖浄状畳穣蒸譲醸錠嘱埴飾"],["9040","拭植殖燭織職色触食蝕辱尻伸信侵唇娠寝審心慎振新晋森榛浸深申疹真神秦紳臣芯薪親診身辛進針震人仁刃塵壬尋甚尽腎訊迅陣靭笥諏須酢図厨"],["9080","逗吹垂帥推水炊睡粋翠衰遂酔錐錘随瑞髄崇嵩数枢趨雛据杉椙菅頗雀裾澄摺寸世瀬畝是凄制勢姓征性成政整星晴棲栖正清牲生盛精聖声製西誠誓請逝醒青静斉税脆隻席惜戚斥昔析石積籍績脊責赤跡蹟碩切拙接摂折設窃節説雪絶舌蝉仙先千占宣専尖川戦扇撰栓栴泉浅洗染潜煎煽旋穿箭線"],["9140","繊羨腺舛船薦詮賎践選遷銭銑閃鮮前善漸然全禅繕膳糎噌塑岨措曾曽楚狙疏疎礎祖租粗素組蘇訴阻遡鼠僧創双叢倉喪壮奏爽宋層匝惣想捜掃挿掻"],["9180","操早曹巣槍槽漕燥争痩相窓糟総綜聡草荘葬蒼藻装走送遭鎗霜騒像増憎臓蔵贈造促側則即息捉束測足速俗属賊族続卒袖其揃存孫尊損村遜他多太汰詑唾堕妥惰打柁舵楕陀駄騨体堆対耐岱帯待怠態戴替泰滞胎腿苔袋貸退逮隊黛鯛代台大第醍題鷹滝瀧卓啄宅托択拓沢濯琢託鐸濁諾茸凧蛸只"],["9240","叩但達辰奪脱巽竪辿棚谷狸鱈樽誰丹単嘆坦担探旦歎淡湛炭短端箪綻耽胆蛋誕鍛団壇弾断暖檀段男談値知地弛恥智池痴稚置致蜘遅馳築畜竹筑蓄"],["9280","逐秩窒茶嫡着中仲宙忠抽昼柱注虫衷註酎鋳駐樗瀦猪苧著貯丁兆凋喋寵帖帳庁弔張彫徴懲挑暢朝潮牒町眺聴脹腸蝶調諜超跳銚長頂鳥勅捗直朕沈珍賃鎮陳津墜椎槌追鎚痛通塚栂掴槻佃漬柘辻蔦綴鍔椿潰坪壷嬬紬爪吊釣鶴亭低停偵剃貞呈堤定帝底庭廷弟悌抵挺提梯汀碇禎程締艇訂諦蹄逓"],["9340","邸鄭釘鼎泥摘擢敵滴的笛適鏑溺哲徹撤轍迭鉄典填天展店添纏甜貼転顛点伝殿澱田電兎吐堵塗妬屠徒斗杜渡登菟賭途都鍍砥砺努度土奴怒倒党冬"],["9380","凍刀唐塔塘套宕島嶋悼投搭東桃梼棟盗淘湯涛灯燈当痘祷等答筒糖統到董蕩藤討謄豆踏逃透鐙陶頭騰闘働動同堂導憧撞洞瞳童胴萄道銅峠鴇匿得徳涜特督禿篤毒独読栃橡凸突椴届鳶苫寅酉瀞噸屯惇敦沌豚遁頓呑曇鈍奈那内乍凪薙謎灘捺鍋楢馴縄畷南楠軟難汝二尼弐迩匂賑肉虹廿日乳入"],["9440","如尿韮任妊忍認濡禰祢寧葱猫熱年念捻撚燃粘乃廼之埜嚢悩濃納能脳膿農覗蚤巴把播覇杷波派琶破婆罵芭馬俳廃拝排敗杯盃牌背肺輩配倍培媒梅"],["9480","楳煤狽買売賠陪這蝿秤矧萩伯剥博拍柏泊白箔粕舶薄迫曝漠爆縛莫駁麦函箱硲箸肇筈櫨幡肌畑畠八鉢溌発醗髪伐罰抜筏閥鳩噺塙蛤隼伴判半反叛帆搬斑板氾汎版犯班畔繁般藩販範釆煩頒飯挽晩番盤磐蕃蛮匪卑否妃庇彼悲扉批披斐比泌疲皮碑秘緋罷肥被誹費避非飛樋簸備尾微枇毘琵眉美"],["9540","鼻柊稗匹疋髭彦膝菱肘弼必畢筆逼桧姫媛紐百謬俵彪標氷漂瓢票表評豹廟描病秒苗錨鋲蒜蛭鰭品彬斌浜瀕貧賓頻敏瓶不付埠夫婦富冨布府怖扶敷"],["9580","斧普浮父符腐膚芙譜負賦赴阜附侮撫武舞葡蕪部封楓風葺蕗伏副復幅服福腹複覆淵弗払沸仏物鮒分吻噴墳憤扮焚奮粉糞紛雰文聞丙併兵塀幣平弊柄並蔽閉陛米頁僻壁癖碧別瞥蔑箆偏変片篇編辺返遍便勉娩弁鞭保舗鋪圃捕歩甫補輔穂募墓慕戊暮母簿菩倣俸包呆報奉宝峰峯崩庖抱捧放方朋"],["9640","法泡烹砲縫胞芳萌蓬蜂褒訪豊邦鋒飽鳳鵬乏亡傍剖坊妨帽忘忙房暴望某棒冒紡肪膨謀貌貿鉾防吠頬北僕卜墨撲朴牧睦穆釦勃没殆堀幌奔本翻凡盆"],["9680","摩磨魔麻埋妹昧枚毎哩槙幕膜枕鮪柾鱒桝亦俣又抹末沫迄侭繭麿万慢満漫蔓味未魅巳箕岬密蜜湊蓑稔脈妙粍民眠務夢無牟矛霧鵡椋婿娘冥名命明盟迷銘鳴姪牝滅免棉綿緬面麺摸模茂妄孟毛猛盲網耗蒙儲木黙目杢勿餅尤戻籾貰問悶紋門匁也冶夜爺耶野弥矢厄役約薬訳躍靖柳薮鑓愉愈油癒"],["9740","諭輸唯佑優勇友宥幽悠憂揖有柚湧涌猶猷由祐裕誘遊邑郵雄融夕予余与誉輿預傭幼妖容庸揚揺擁曜楊様洋溶熔用窯羊耀葉蓉要謡踊遥陽養慾抑欲"],["9780","沃浴翌翼淀羅螺裸来莱頼雷洛絡落酪乱卵嵐欄濫藍蘭覧利吏履李梨理璃痢裏裡里離陸律率立葎掠略劉流溜琉留硫粒隆竜龍侶慮旅虜了亮僚両凌寮料梁涼猟療瞭稜糧良諒遼量陵領力緑倫厘林淋燐琳臨輪隣鱗麟瑠塁涙累類令伶例冷励嶺怜玲礼苓鈴隷零霊麗齢暦歴列劣烈裂廉恋憐漣煉簾練聯"],["9840","蓮連錬呂魯櫓炉賂路露労婁廊弄朗楼榔浪漏牢狼篭老聾蝋郎六麓禄肋録論倭和話歪賄脇惑枠鷲亙亘鰐詫藁蕨椀湾碗腕"],["989f","弌丐丕个丱丶丼丿乂乖乘亂亅豫亊舒弍于亞亟亠亢亰亳亶从仍仄仆仂仗仞仭仟价伉佚估佛佝佗佇佶侈侏侘佻佩佰侑佯來侖儘俔俟俎俘俛俑俚俐俤俥倚倨倔倪倥倅伜俶倡倩倬俾俯們倆偃假會偕偐偈做偖偬偸傀傚傅傴傲"],["9940","僉僊傳僂僖僞僥僭僣僮價僵儉儁儂儖儕儔儚儡儺儷儼儻儿兀兒兌兔兢竸兩兪兮冀冂囘册冉冏冑冓冕冖冤冦冢冩冪冫决冱冲冰况冽凅凉凛几處凩凭"],["9980","凰凵凾刄刋刔刎刧刪刮刳刹剏剄剋剌剞剔剪剴剩剳剿剽劍劔劒剱劈劑辨辧劬劭劼劵勁勍勗勞勣勦飭勠勳勵勸勹匆匈甸匍匐匏匕匚匣匯匱匳匸區卆卅丗卉卍凖卞卩卮夘卻卷厂厖厠厦厥厮厰厶參簒雙叟曼燮叮叨叭叺吁吽呀听吭吼吮吶吩吝呎咏呵咎呟呱呷呰咒呻咀呶咄咐咆哇咢咸咥咬哄哈咨"],["9a40","咫哂咤咾咼哘哥哦唏唔哽哮哭哺哢唹啀啣啌售啜啅啖啗唸唳啝喙喀咯喊喟啻啾喘喞單啼喃喩喇喨嗚嗅嗟嗄嗜嗤嗔嘔嗷嘖嗾嗽嘛嗹噎噐營嘴嘶嘲嘸"],["9a80","噫噤嘯噬噪嚆嚀嚊嚠嚔嚏嚥嚮嚶嚴囂嚼囁囃囀囈囎囑囓囗囮囹圀囿圄圉圈國圍圓團圖嗇圜圦圷圸坎圻址坏坩埀垈坡坿垉垓垠垳垤垪垰埃埆埔埒埓堊埖埣堋堙堝塲堡塢塋塰毀塒堽塹墅墹墟墫墺壞墻墸墮壅壓壑壗壙壘壥壜壤壟壯壺壹壻壼壽夂夊夐夛梦夥夬夭夲夸夾竒奕奐奎奚奘奢奠奧奬奩"],["9b40","奸妁妝佞侫妣妲姆姨姜妍姙姚娥娟娑娜娉娚婀婬婉娵娶婢婪媚媼媾嫋嫂媽嫣嫗嫦嫩嫖嫺嫻嬌嬋嬖嬲嫐嬪嬶嬾孃孅孀孑孕孚孛孥孩孰孳孵學斈孺宀"],["9b80","它宦宸寃寇寉寔寐寤實寢寞寥寫寰寶寳尅將專對尓尠尢尨尸尹屁屆屎屓屐屏孱屬屮乢屶屹岌岑岔妛岫岻岶岼岷峅岾峇峙峩峽峺峭嶌峪崋崕崗嵜崟崛崑崔崢崚崙崘嵌嵒嵎嵋嵬嵳嵶嶇嶄嶂嶢嶝嶬嶮嶽嶐嶷嶼巉巍巓巒巖巛巫已巵帋帚帙帑帛帶帷幄幃幀幎幗幔幟幢幤幇幵并幺麼广庠廁廂廈廐廏"],["9c40","廖廣廝廚廛廢廡廨廩廬廱廳廰廴廸廾弃弉彝彜弋弑弖弩弭弸彁彈彌彎弯彑彖彗彙彡彭彳彷徃徂彿徊很徑徇從徙徘徠徨徭徼忖忻忤忸忱忝悳忿怡恠"],["9c80","怙怐怩怎怱怛怕怫怦怏怺恚恁恪恷恟恊恆恍恣恃恤恂恬恫恙悁悍惧悃悚悄悛悖悗悒悧悋惡悸惠惓悴忰悽惆悵惘慍愕愆惶惷愀惴惺愃愡惻惱愍愎慇愾愨愧慊愿愼愬愴愽慂慄慳慷慘慙慚慫慴慯慥慱慟慝慓慵憙憖憇憬憔憚憊憑憫憮懌懊應懷懈懃懆憺懋罹懍懦懣懶懺懴懿懽懼懾戀戈戉戍戌戔戛"],["9d40","戞戡截戮戰戲戳扁扎扞扣扛扠扨扼抂抉找抒抓抖拔抃抔拗拑抻拏拿拆擔拈拜拌拊拂拇抛拉挌拮拱挧挂挈拯拵捐挾捍搜捏掖掎掀掫捶掣掏掉掟掵捫"],["9d80","捩掾揩揀揆揣揉插揶揄搖搴搆搓搦搶攝搗搨搏摧摯摶摎攪撕撓撥撩撈撼據擒擅擇撻擘擂擱擧舉擠擡抬擣擯攬擶擴擲擺攀擽攘攜攅攤攣攫攴攵攷收攸畋效敖敕敍敘敞敝敲數斂斃變斛斟斫斷旃旆旁旄旌旒旛旙无旡旱杲昊昃旻杳昵昶昴昜晏晄晉晁晞晝晤晧晨晟晢晰暃暈暎暉暄暘暝曁暹曉暾暼"],["9e40","曄暸曖曚曠昿曦曩曰曵曷朏朖朞朦朧霸朮朿朶杁朸朷杆杞杠杙杣杤枉杰枩杼杪枌枋枦枡枅枷柯枴柬枳柩枸柤柞柝柢柮枹柎柆柧檜栞框栩桀桍栲桎"],["9e80","梳栫桙档桷桿梟梏梭梔條梛梃檮梹桴梵梠梺椏梍桾椁棊椈棘椢椦棡椌棍棔棧棕椶椒椄棗棣椥棹棠棯椨椪椚椣椡棆楹楷楜楸楫楔楾楮椹楴椽楙椰楡楞楝榁楪榲榮槐榿槁槓榾槎寨槊槝榻槃榧樮榑榠榜榕榴槞槨樂樛槿權槹槲槧樅榱樞槭樔槫樊樒櫁樣樓橄樌橲樶橸橇橢橙橦橈樸樢檐檍檠檄檢檣"],["9f40","檗蘗檻櫃櫂檸檳檬櫞櫑櫟檪櫚櫪櫻欅蘖櫺欒欖鬱欟欸欷盜欹飮歇歃歉歐歙歔歛歟歡歸歹歿殀殄殃殍殘殕殞殤殪殫殯殲殱殳殷殼毆毋毓毟毬毫毳毯"],["9f80","麾氈氓气氛氤氣汞汕汢汪沂沍沚沁沛汾汨汳沒沐泄泱泓沽泗泅泝沮沱沾沺泛泯泙泪洟衍洶洫洽洸洙洵洳洒洌浣涓浤浚浹浙涎涕濤涅淹渕渊涵淇淦涸淆淬淞淌淨淒淅淺淙淤淕淪淮渭湮渮渙湲湟渾渣湫渫湶湍渟湃渺湎渤滿渝游溂溪溘滉溷滓溽溯滄溲滔滕溏溥滂溟潁漑灌滬滸滾漿滲漱滯漲滌"],["e040","漾漓滷澆潺潸澁澀潯潛濳潭澂潼潘澎澑濂潦澳澣澡澤澹濆澪濟濕濬濔濘濱濮濛瀉瀋濺瀑瀁瀏濾瀛瀚潴瀝瀘瀟瀰瀾瀲灑灣炙炒炯烱炬炸炳炮烟烋烝"],["e080","烙焉烽焜焙煥煕熈煦煢煌煖煬熏燻熄熕熨熬燗熹熾燒燉燔燎燠燬燧燵燼燹燿爍爐爛爨爭爬爰爲爻爼爿牀牆牋牘牴牾犂犁犇犒犖犢犧犹犲狃狆狄狎狒狢狠狡狹狷倏猗猊猜猖猝猴猯猩猥猾獎獏默獗獪獨獰獸獵獻獺珈玳珎玻珀珥珮珞璢琅瑯琥珸琲琺瑕琿瑟瑙瑁瑜瑩瑰瑣瑪瑶瑾璋璞璧瓊瓏瓔珱"],["e140","瓠瓣瓧瓩瓮瓲瓰瓱瓸瓷甄甃甅甌甎甍甕甓甞甦甬甼畄畍畊畉畛畆畚畩畤畧畫畭畸當疆疇畴疊疉疂疔疚疝疥疣痂疳痃疵疽疸疼疱痍痊痒痙痣痞痾痿"],["e180","痼瘁痰痺痲痳瘋瘍瘉瘟瘧瘠瘡瘢瘤瘴瘰瘻癇癈癆癜癘癡癢癨癩癪癧癬癰癲癶癸發皀皃皈皋皎皖皓皙皚皰皴皸皹皺盂盍盖盒盞盡盥盧盪蘯盻眈眇眄眩眤眞眥眦眛眷眸睇睚睨睫睛睥睿睾睹瞎瞋瞑瞠瞞瞰瞶瞹瞿瞼瞽瞻矇矍矗矚矜矣矮矼砌砒礦砠礪硅碎硴碆硼碚碌碣碵碪碯磑磆磋磔碾碼磅磊磬"],["e240","磧磚磽磴礇礒礑礙礬礫祀祠祗祟祚祕祓祺祿禊禝禧齋禪禮禳禹禺秉秕秧秬秡秣稈稍稘稙稠稟禀稱稻稾稷穃穗穉穡穢穩龝穰穹穽窈窗窕窘窖窩竈窰"],["e280","窶竅竄窿邃竇竊竍竏竕竓站竚竝竡竢竦竭竰笂笏笊笆笳笘笙笞笵笨笶筐筺笄筍笋筌筅筵筥筴筧筰筱筬筮箝箘箟箍箜箚箋箒箏筝箙篋篁篌篏箴篆篝篩簑簔篦篥籠簀簇簓篳篷簗簍篶簣簧簪簟簷簫簽籌籃籔籏籀籐籘籟籤籖籥籬籵粃粐粤粭粢粫粡粨粳粲粱粮粹粽糀糅糂糘糒糜糢鬻糯糲糴糶糺紆"],["e340","紂紜紕紊絅絋紮紲紿紵絆絳絖絎絲絨絮絏絣經綉絛綏絽綛綺綮綣綵緇綽綫總綢綯緜綸綟綰緘緝緤緞緻緲緡縅縊縣縡縒縱縟縉縋縢繆繦縻縵縹繃縷"],["e380","縲縺繧繝繖繞繙繚繹繪繩繼繻纃緕繽辮繿纈纉續纒纐纓纔纖纎纛纜缸缺罅罌罍罎罐网罕罔罘罟罠罨罩罧罸羂羆羃羈羇羌羔羞羝羚羣羯羲羹羮羶羸譱翅翆翊翕翔翡翦翩翳翹飜耆耄耋耒耘耙耜耡耨耿耻聊聆聒聘聚聟聢聨聳聲聰聶聹聽聿肄肆肅肛肓肚肭冐肬胛胥胙胝胄胚胖脉胯胱脛脩脣脯腋"],["e440","隋腆脾腓腑胼腱腮腥腦腴膃膈膊膀膂膠膕膤膣腟膓膩膰膵膾膸膽臀臂膺臉臍臑臙臘臈臚臟臠臧臺臻臾舁舂舅與舊舍舐舖舩舫舸舳艀艙艘艝艚艟艤"],["e480","艢艨艪艫舮艱艷艸艾芍芒芫芟芻芬苡苣苟苒苴苳苺莓范苻苹苞茆苜茉苙茵茴茖茲茱荀茹荐荅茯茫茗茘莅莚莪莟莢莖茣莎莇莊荼莵荳荵莠莉莨菴萓菫菎菽萃菘萋菁菷萇菠菲萍萢萠莽萸蔆菻葭萪萼蕚蒄葷葫蒭葮蒂葩葆萬葯葹萵蓊葢蒹蒿蒟蓙蓍蒻蓚蓐蓁蓆蓖蒡蔡蓿蓴蔗蔘蔬蔟蔕蔔蓼蕀蕣蕘蕈"],["e540","蕁蘂蕋蕕薀薤薈薑薊薨蕭薔薛藪薇薜蕷蕾薐藉薺藏薹藐藕藝藥藜藹蘊蘓蘋藾藺蘆蘢蘚蘰蘿虍乕虔號虧虱蚓蚣蚩蚪蚋蚌蚶蚯蛄蛆蚰蛉蠣蚫蛔蛞蛩蛬"],["e580","蛟蛛蛯蜒蜆蜈蜀蜃蛻蜑蜉蜍蛹蜊蜴蜿蜷蜻蜥蜩蜚蝠蝟蝸蝌蝎蝴蝗蝨蝮蝙蝓蝣蝪蠅螢螟螂螯蟋螽蟀蟐雖螫蟄螳蟇蟆螻蟯蟲蟠蠏蠍蟾蟶蟷蠎蟒蠑蠖蠕蠢蠡蠱蠶蠹蠧蠻衄衂衒衙衞衢衫袁衾袞衵衽袵衲袂袗袒袮袙袢袍袤袰袿袱裃裄裔裘裙裝裹褂裼裴裨裲褄褌褊褓襃褞褥褪褫襁襄褻褶褸襌褝襠襞"],["e640","襦襤襭襪襯襴襷襾覃覈覊覓覘覡覩覦覬覯覲覺覽覿觀觚觜觝觧觴觸訃訖訐訌訛訝訥訶詁詛詒詆詈詼詭詬詢誅誂誄誨誡誑誥誦誚誣諄諍諂諚諫諳諧"],["e680","諤諱謔諠諢諷諞諛謌謇謚諡謖謐謗謠謳鞫謦謫謾謨譁譌譏譎證譖譛譚譫譟譬譯譴譽讀讌讎讒讓讖讙讚谺豁谿豈豌豎豐豕豢豬豸豺貂貉貅貊貍貎貔豼貘戝貭貪貽貲貳貮貶賈賁賤賣賚賽賺賻贄贅贊贇贏贍贐齎贓賍贔贖赧赭赱赳趁趙跂趾趺跏跚跖跌跛跋跪跫跟跣跼踈踉跿踝踞踐踟蹂踵踰踴蹊"],["e740","蹇蹉蹌蹐蹈蹙蹤蹠踪蹣蹕蹶蹲蹼躁躇躅躄躋躊躓躑躔躙躪躡躬躰軆躱躾軅軈軋軛軣軼軻軫軾輊輅輕輒輙輓輜輟輛輌輦輳輻輹轅轂輾轌轉轆轎轗轜"],["e780","轢轣轤辜辟辣辭辯辷迚迥迢迪迯邇迴逅迹迺逑逕逡逍逞逖逋逧逶逵逹迸遏遐遑遒逎遉逾遖遘遞遨遯遶隨遲邂遽邁邀邊邉邏邨邯邱邵郢郤扈郛鄂鄒鄙鄲鄰酊酖酘酣酥酩酳酲醋醉醂醢醫醯醪醵醴醺釀釁釉釋釐釖釟釡釛釼釵釶鈞釿鈔鈬鈕鈑鉞鉗鉅鉉鉤鉈銕鈿鉋鉐銜銖銓銛鉚鋏銹銷鋩錏鋺鍄錮"],["e840","錙錢錚錣錺錵錻鍜鍠鍼鍮鍖鎰鎬鎭鎔鎹鏖鏗鏨鏥鏘鏃鏝鏐鏈鏤鐚鐔鐓鐃鐇鐐鐶鐫鐵鐡鐺鑁鑒鑄鑛鑠鑢鑞鑪鈩鑰鑵鑷鑽鑚鑼鑾钁鑿閂閇閊閔閖閘閙"],["e880","閠閨閧閭閼閻閹閾闊濶闃闍闌闕闔闖關闡闥闢阡阨阮阯陂陌陏陋陷陜陞陝陟陦陲陬隍隘隕隗險隧隱隲隰隴隶隸隹雎雋雉雍襍雜霍雕雹霄霆霈霓霎霑霏霖霙霤霪霰霹霽霾靄靆靈靂靉靜靠靤靦靨勒靫靱靹鞅靼鞁靺鞆鞋鞏鞐鞜鞨鞦鞣鞳鞴韃韆韈韋韜韭齏韲竟韶韵頏頌頸頤頡頷頽顆顏顋顫顯顰"],["e940","顱顴顳颪颯颱颶飄飃飆飩飫餃餉餒餔餘餡餝餞餤餠餬餮餽餾饂饉饅饐饋饑饒饌饕馗馘馥馭馮馼駟駛駝駘駑駭駮駱駲駻駸騁騏騅駢騙騫騷驅驂驀驃"],["e980","騾驕驍驛驗驟驢驥驤驩驫驪骭骰骼髀髏髑髓體髞髟髢髣髦髯髫髮髴髱髷髻鬆鬘鬚鬟鬢鬣鬥鬧鬨鬩鬪鬮鬯鬲魄魃魏魍魎魑魘魴鮓鮃鮑鮖鮗鮟鮠鮨鮴鯀鯊鮹鯆鯏鯑鯒鯣鯢鯤鯔鯡鰺鯲鯱鯰鰕鰔鰉鰓鰌鰆鰈鰒鰊鰄鰮鰛鰥鰤鰡鰰鱇鰲鱆鰾鱚鱠鱧鱶鱸鳧鳬鳰鴉鴈鳫鴃鴆鴪鴦鶯鴣鴟鵄鴕鴒鵁鴿鴾鵆鵈"],["ea40","鵝鵞鵤鵑鵐鵙鵲鶉鶇鶫鵯鵺鶚鶤鶩鶲鷄鷁鶻鶸鶺鷆鷏鷂鷙鷓鷸鷦鷭鷯鷽鸚鸛鸞鹵鹹鹽麁麈麋麌麒麕麑麝麥麩麸麪麭靡黌黎黏黐黔黜點黝黠黥黨黯"],["ea80","黴黶黷黹黻黼黽鼇鼈皷鼕鼡鼬鼾齊齒齔齣齟齠齡齦齧齬齪齷齲齶龕龜龠堯槇遙瑤凜熙"],["ed40","纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏"],["ed80","塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱"],["ee40","犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙"],["ee80","蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑"],["eeef","ⅰ",9,"¬¦'""],["f040","",62],["f080","",124],["f140","",62],["f180","",124],["f240","",62],["f280","",124],["f340","",62],["f380","",124],["f440","",62],["f480","",124],["f540","",62],["f580","",124],["f640","",62],["f680","",124],["f740","",62],["f780","",124],["f840","",62],["f880","",124],["f940",""],["fa40","ⅰ",9,"Ⅰ",9,"¬¦'"㈱№℡∵纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊"],["fa80","兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯"],["fb40","涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神"],["fb80","祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙"],["fc40","髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑"]]')},75282:Wt=>{"use strict";Wt.exports=JSON.parse('{"Object":{"writable":true,"enumerable":false,"configurable":true},"Function":{"writable":true,"enumerable":false,"configurable":true},"Array":{"writable":true,"enumerable":false,"configurable":true},"Number":{"writable":true,"enumerable":false,"configurable":true},"parseFloat":{"writable":true,"enumerable":false,"configurable":true},"parseInt":{"writable":true,"enumerable":false,"configurable":true},"Infinity":{"writable":false,"enumerable":false,"configurable":false},"NaN":{"writable":false,"enumerable":false,"configurable":false},"undefined":{"writable":false,"enumerable":false,"configurable":false},"Boolean":{"writable":true,"enumerable":false,"configurable":true},"String":{"writable":true,"enumerable":false,"configurable":true},"Symbol":{"writable":true,"enumerable":false,"configurable":true},"Date":{"writable":true,"enumerable":false,"configurable":true},"Promise":{"writable":true,"enumerable":false,"configurable":true},"RegExp":{"writable":true,"enumerable":false,"configurable":true},"Error":{"writable":true,"enumerable":false,"configurable":true},"AggregateError":{"writable":true,"enumerable":false,"configurable":true},"EvalError":{"writable":true,"enumerable":false,"configurable":true},"RangeError":{"writable":true,"enumerable":false,"configurable":true},"ReferenceError":{"writable":true,"enumerable":false,"configurable":true},"SyntaxError":{"writable":true,"enumerable":false,"configurable":true},"TypeError":{"writable":true,"enumerable":false,"configurable":true},"URIError":{"writable":true,"enumerable":false,"configurable":true},"globalThis":{"writable":true,"enumerable":false,"configurable":true},"JSON":{"writable":true,"enumerable":false,"configurable":true},"Math":{"writable":true,"enumerable":false,"configurable":true},"Intl":{"writable":true,"enumerable":false,"configurable":true},"ArrayBuffer":{"writable":true,"enumerable":false,"configurable":true},"Atomics":{"writable":true,"enumerable":false,"configurable":true},"Uint8Array":{"writable":true,"enumerable":false,"configurable":true},"Int8Array":{"writable":true,"enumerable":false,"configurable":true},"Uint16Array":{"writable":true,"enumerable":false,"configurable":true},"Int16Array":{"writable":true,"enumerable":false,"configurable":true},"Uint32Array":{"writable":true,"enumerable":false,"configurable":true},"Int32Array":{"writable":true,"enumerable":false,"configurable":true},"Float32Array":{"writable":true,"enumerable":false,"configurable":true},"Float64Array":{"writable":true,"enumerable":false,"configurable":true},"Uint8ClampedArray":{"writable":true,"enumerable":false,"configurable":true},"BigUint64Array":{"writable":true,"enumerable":false,"configurable":true},"BigInt64Array":{"writable":true,"enumerable":false,"configurable":true},"DataView":{"writable":true,"enumerable":false,"configurable":true},"Map":{"writable":true,"enumerable":false,"configurable":true},"BigInt":{"writable":true,"enumerable":false,"configurable":true},"Set":{"writable":true,"enumerable":false,"configurable":true},"WeakMap":{"writable":true,"enumerable":false,"configurable":true},"WeakSet":{"writable":true,"enumerable":false,"configurable":true},"Proxy":{"writable":true,"enumerable":false,"configurable":true},"Reflect":{"writable":true,"enumerable":false,"configurable":true},"FinalizationRegistry":{"writable":true,"enumerable":false,"configurable":true},"WeakRef":{"writable":true,"enumerable":false,"configurable":true},"decodeURI":{"writable":true,"enumerable":false,"configurable":true},"decodeURIComponent":{"writable":true,"enumerable":false,"configurable":true},"encodeURI":{"writable":true,"enumerable":false,"configurable":true},"encodeURIComponent":{"writable":true,"enumerable":false,"configurable":true},"escape":{"writable":true,"enumerable":false,"configurable":true},"unescape":{"writable":true,"enumerable":false,"configurable":true},"eval":{"writable":true,"enumerable":false,"configurable":true},"isFinite":{"writable":true,"enumerable":false,"configurable":true},"isNaN":{"writable":true,"enumerable":false,"configurable":true},"SharedArrayBuffer":{"writable":true,"enumerable":false,"configurable":true},"WebAssembly":{"writable":true,"enumerable":false,"configurable":true}}')},92949:Wt=>{"use strict";Wt.exports={rE:"24.0.0"}},81813:Wt=>{"use strict";Wt.exports=JSON.parse('{"application/1d-interleaved-parityfec":{"source":"iana"},"application/3gpdash-qoe-report+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/3gpp-ims+xml":{"source":"iana","compressible":true},"application/3gpphal+json":{"source":"iana","compressible":true},"application/3gpphalforms+json":{"source":"iana","compressible":true},"application/a2l":{"source":"iana"},"application/ace+cbor":{"source":"iana"},"application/activemessage":{"source":"iana"},"application/activity+json":{"source":"iana","compressible":true},"application/alto-costmap+json":{"source":"iana","compressible":true},"application/alto-costmapfilter+json":{"source":"iana","compressible":true},"application/alto-directory+json":{"source":"iana","compressible":true},"application/alto-endpointcost+json":{"source":"iana","compressible":true},"application/alto-endpointcostparams+json":{"source":"iana","compressible":true},"application/alto-endpointprop+json":{"source":"iana","compressible":true},"application/alto-endpointpropparams+json":{"source":"iana","compressible":true},"application/alto-error+json":{"source":"iana","compressible":true},"application/alto-networkmap+json":{"source":"iana","compressible":true},"application/alto-networkmapfilter+json":{"source":"iana","compressible":true},"application/alto-updatestreamcontrol+json":{"source":"iana","compressible":true},"application/alto-updatestreamparams+json":{"source":"iana","compressible":true},"application/aml":{"source":"iana"},"application/andrew-inset":{"source":"iana","extensions":["ez"]},"application/applefile":{"source":"iana"},"application/applixware":{"source":"apache","extensions":["aw"]},"application/at+jwt":{"source":"iana"},"application/atf":{"source":"iana"},"application/atfx":{"source":"iana"},"application/atom+xml":{"source":"iana","compressible":true,"extensions":["atom"]},"application/atomcat+xml":{"source":"iana","compressible":true,"extensions":["atomcat"]},"application/atomdeleted+xml":{"source":"iana","compressible":true,"extensions":["atomdeleted"]},"application/atomicmail":{"source":"iana"},"application/atomsvc+xml":{"source":"iana","compressible":true,"extensions":["atomsvc"]},"application/atsc-dwd+xml":{"source":"iana","compressible":true,"extensions":["dwd"]},"application/atsc-dynamic-event-message":{"source":"iana"},"application/atsc-held+xml":{"source":"iana","compressible":true,"extensions":["held"]},"application/atsc-rdt+json":{"source":"iana","compressible":true},"application/atsc-rsat+xml":{"source":"iana","compressible":true,"extensions":["rsat"]},"application/atxml":{"source":"iana"},"application/auth-policy+xml":{"source":"iana","compressible":true},"application/bacnet-xdd+zip":{"source":"iana","compressible":false},"application/batch-smtp":{"source":"iana"},"application/bdoc":{"compressible":false,"extensions":["bdoc"]},"application/beep+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/calendar+json":{"source":"iana","compressible":true},"application/calendar+xml":{"source":"iana","compressible":true,"extensions":["xcs"]},"application/call-completion":{"source":"iana"},"application/cals-1840":{"source":"iana"},"application/captive+json":{"source":"iana","compressible":true},"application/cbor":{"source":"iana"},"application/cbor-seq":{"source":"iana"},"application/cccex":{"source":"iana"},"application/ccmp+xml":{"source":"iana","compressible":true},"application/ccxml+xml":{"source":"iana","compressible":true,"extensions":["ccxml"]},"application/cdfx+xml":{"source":"iana","compressible":true,"extensions":["cdfx"]},"application/cdmi-capability":{"source":"iana","extensions":["cdmia"]},"application/cdmi-container":{"source":"iana","extensions":["cdmic"]},"application/cdmi-domain":{"source":"iana","extensions":["cdmid"]},"application/cdmi-object":{"source":"iana","extensions":["cdmio"]},"application/cdmi-queue":{"source":"iana","extensions":["cdmiq"]},"application/cdni":{"source":"iana"},"application/cea":{"source":"iana"},"application/cea-2018+xml":{"source":"iana","compressible":true},"application/cellml+xml":{"source":"iana","compressible":true},"application/cfw":{"source":"iana"},"application/city+json":{"source":"iana","compressible":true},"application/clr":{"source":"iana"},"application/clue+xml":{"source":"iana","compressible":true},"application/clue_info+xml":{"source":"iana","compressible":true},"application/cms":{"source":"iana"},"application/cnrp+xml":{"source":"iana","compressible":true},"application/coap-group+json":{"source":"iana","compressible":true},"application/coap-payload":{"source":"iana"},"application/commonground":{"source":"iana"},"application/conference-info+xml":{"source":"iana","compressible":true},"application/cose":{"source":"iana"},"application/cose-key":{"source":"iana"},"application/cose-key-set":{"source":"iana"},"application/cpl+xml":{"source":"iana","compressible":true,"extensions":["cpl"]},"application/csrattrs":{"source":"iana"},"application/csta+xml":{"source":"iana","compressible":true},"application/cstadata+xml":{"source":"iana","compressible":true},"application/csvm+json":{"source":"iana","compressible":true},"application/cu-seeme":{"source":"apache","extensions":["cu"]},"application/cwt":{"source":"iana"},"application/cybercash":{"source":"iana"},"application/dart":{"compressible":true},"application/dash+xml":{"source":"iana","compressible":true,"extensions":["mpd"]},"application/dash-patch+xml":{"source":"iana","compressible":true,"extensions":["mpp"]},"application/dashdelta":{"source":"iana"},"application/davmount+xml":{"source":"iana","compressible":true,"extensions":["davmount"]},"application/dca-rft":{"source":"iana"},"application/dcd":{"source":"iana"},"application/dec-dx":{"source":"iana"},"application/dialog-info+xml":{"source":"iana","compressible":true},"application/dicom":{"source":"iana"},"application/dicom+json":{"source":"iana","compressible":true},"application/dicom+xml":{"source":"iana","compressible":true},"application/dii":{"source":"iana"},"application/dit":{"source":"iana"},"application/dns":{"source":"iana"},"application/dns+json":{"source":"iana","compressible":true},"application/dns-message":{"source":"iana"},"application/docbook+xml":{"source":"apache","compressible":true,"extensions":["dbk"]},"application/dots+cbor":{"source":"iana"},"application/dskpp+xml":{"source":"iana","compressible":true},"application/dssc+der":{"source":"iana","extensions":["dssc"]},"application/dssc+xml":{"source":"iana","compressible":true,"extensions":["xdssc"]},"application/dvcs":{"source":"iana"},"application/ecmascript":{"source":"iana","compressible":true,"extensions":["es","ecma"]},"application/edi-consent":{"source":"iana"},"application/edi-x12":{"source":"iana","compressible":false},"application/edifact":{"source":"iana","compressible":false},"application/efi":{"source":"iana"},"application/elm+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/elm+xml":{"source":"iana","compressible":true},"application/emergencycalldata.cap+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/emergencycalldata.comment+xml":{"source":"iana","compressible":true},"application/emergencycalldata.control+xml":{"source":"iana","compressible":true},"application/emergencycalldata.deviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.ecall.msd":{"source":"iana"},"application/emergencycalldata.providerinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.serviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.subscriberinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.veds+xml":{"source":"iana","compressible":true},"application/emma+xml":{"source":"iana","compressible":true,"extensions":["emma"]},"application/emotionml+xml":{"source":"iana","compressible":true,"extensions":["emotionml"]},"application/encaprtp":{"source":"iana"},"application/epp+xml":{"source":"iana","compressible":true},"application/epub+zip":{"source":"iana","compressible":false,"extensions":["epub"]},"application/eshop":{"source":"iana"},"application/exi":{"source":"iana","extensions":["exi"]},"application/expect-ct-report+json":{"source":"iana","compressible":true},"application/express":{"source":"iana","extensions":["exp"]},"application/fastinfoset":{"source":"iana"},"application/fastsoap":{"source":"iana"},"application/fdt+xml":{"source":"iana","compressible":true,"extensions":["fdt"]},"application/fhir+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/fhir+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/fido.trusted-apps+json":{"compressible":true},"application/fits":{"source":"iana"},"application/flexfec":{"source":"iana"},"application/font-sfnt":{"source":"iana"},"application/font-tdpfr":{"source":"iana","extensions":["pfr"]},"application/font-woff":{"source":"iana","compressible":false},"application/framework-attributes+xml":{"source":"iana","compressible":true},"application/geo+json":{"source":"iana","compressible":true,"extensions":["geojson"]},"application/geo+json-seq":{"source":"iana"},"application/geopackage+sqlite3":{"source":"iana"},"application/geoxacml+xml":{"source":"iana","compressible":true},"application/gltf-buffer":{"source":"iana"},"application/gml+xml":{"source":"iana","compressible":true,"extensions":["gml"]},"application/gpx+xml":{"source":"apache","compressible":true,"extensions":["gpx"]},"application/gxf":{"source":"apache","extensions":["gxf"]},"application/gzip":{"source":"iana","compressible":false,"extensions":["gz"]},"application/h224":{"source":"iana"},"application/held+xml":{"source":"iana","compressible":true},"application/hjson":{"extensions":["hjson"]},"application/http":{"source":"iana"},"application/hyperstudio":{"source":"iana","extensions":["stk"]},"application/ibe-key-request+xml":{"source":"iana","compressible":true},"application/ibe-pkg-reply+xml":{"source":"iana","compressible":true},"application/ibe-pp-data":{"source":"iana"},"application/iges":{"source":"iana"},"application/im-iscomposing+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/index":{"source":"iana"},"application/index.cmd":{"source":"iana"},"application/index.obj":{"source":"iana"},"application/index.response":{"source":"iana"},"application/index.vnd":{"source":"iana"},"application/inkml+xml":{"source":"iana","compressible":true,"extensions":["ink","inkml"]},"application/iotp":{"source":"iana"},"application/ipfix":{"source":"iana","extensions":["ipfix"]},"application/ipp":{"source":"iana"},"application/isup":{"source":"iana"},"application/its+xml":{"source":"iana","compressible":true,"extensions":["its"]},"application/java-archive":{"source":"apache","compressible":false,"extensions":["jar","war","ear"]},"application/java-serialized-object":{"source":"apache","compressible":false,"extensions":["ser"]},"application/java-vm":{"source":"apache","compressible":false,"extensions":["class"]},"application/javascript":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["js","mjs"]},"application/jf2feed+json":{"source":"iana","compressible":true},"application/jose":{"source":"iana"},"application/jose+json":{"source":"iana","compressible":true},"application/jrd+json":{"source":"iana","compressible":true},"application/jscalendar+json":{"source":"iana","compressible":true},"application/json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["json","map"]},"application/json-patch+json":{"source":"iana","compressible":true},"application/json-seq":{"source":"iana"},"application/json5":{"extensions":["json5"]},"application/jsonml+json":{"source":"apache","compressible":true,"extensions":["jsonml"]},"application/jwk+json":{"source":"iana","compressible":true},"application/jwk-set+json":{"source":"iana","compressible":true},"application/jwt":{"source":"iana"},"application/kpml-request+xml":{"source":"iana","compressible":true},"application/kpml-response+xml":{"source":"iana","compressible":true},"application/ld+json":{"source":"iana","compressible":true,"extensions":["jsonld"]},"application/lgr+xml":{"source":"iana","compressible":true,"extensions":["lgr"]},"application/link-format":{"source":"iana"},"application/load-control+xml":{"source":"iana","compressible":true},"application/lost+xml":{"source":"iana","compressible":true,"extensions":["lostxml"]},"application/lostsync+xml":{"source":"iana","compressible":true},"application/lpf+zip":{"source":"iana","compressible":false},"application/lxf":{"source":"iana"},"application/mac-binhex40":{"source":"iana","extensions":["hqx"]},"application/mac-compactpro":{"source":"apache","extensions":["cpt"]},"application/macwriteii":{"source":"iana"},"application/mads+xml":{"source":"iana","compressible":true,"extensions":["mads"]},"application/manifest+json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["webmanifest"]},"application/marc":{"source":"iana","extensions":["mrc"]},"application/marcxml+xml":{"source":"iana","compressible":true,"extensions":["mrcx"]},"application/mathematica":{"source":"iana","extensions":["ma","nb","mb"]},"application/mathml+xml":{"source":"iana","compressible":true,"extensions":["mathml"]},"application/mathml-content+xml":{"source":"iana","compressible":true},"application/mathml-presentation+xml":{"source":"iana","compressible":true},"application/mbms-associated-procedure-description+xml":{"source":"iana","compressible":true},"application/mbms-deregister+xml":{"source":"iana","compressible":true},"application/mbms-envelope+xml":{"source":"iana","compressible":true},"application/mbms-msk+xml":{"source":"iana","compressible":true},"application/mbms-msk-response+xml":{"source":"iana","compressible":true},"application/mbms-protection-description+xml":{"source":"iana","compressible":true},"application/mbms-reception-report+xml":{"source":"iana","compressible":true},"application/mbms-register+xml":{"source":"iana","compressible":true},"application/mbms-register-response+xml":{"source":"iana","compressible":true},"application/mbms-schedule+xml":{"source":"iana","compressible":true},"application/mbms-user-service-description+xml":{"source":"iana","compressible":true},"application/mbox":{"source":"iana","extensions":["mbox"]},"application/media-policy-dataset+xml":{"source":"iana","compressible":true,"extensions":["mpf"]},"application/media_control+xml":{"source":"iana","compressible":true},"application/mediaservercontrol+xml":{"source":"iana","compressible":true,"extensions":["mscml"]},"application/merge-patch+json":{"source":"iana","compressible":true},"application/metalink+xml":{"source":"apache","compressible":true,"extensions":["metalink"]},"application/metalink4+xml":{"source":"iana","compressible":true,"extensions":["meta4"]},"application/mets+xml":{"source":"iana","compressible":true,"extensions":["mets"]},"application/mf4":{"source":"iana"},"application/mikey":{"source":"iana"},"application/mipc":{"source":"iana"},"application/missing-blocks+cbor-seq":{"source":"iana"},"application/mmt-aei+xml":{"source":"iana","compressible":true,"extensions":["maei"]},"application/mmt-usd+xml":{"source":"iana","compressible":true,"extensions":["musd"]},"application/mods+xml":{"source":"iana","compressible":true,"extensions":["mods"]},"application/moss-keys":{"source":"iana"},"application/moss-signature":{"source":"iana"},"application/mosskey-data":{"source":"iana"},"application/mosskey-request":{"source":"iana"},"application/mp21":{"source":"iana","extensions":["m21","mp21"]},"application/mp4":{"source":"iana","extensions":["mp4s","m4p"]},"application/mpeg4-generic":{"source":"iana"},"application/mpeg4-iod":{"source":"iana"},"application/mpeg4-iod-xmt":{"source":"iana"},"application/mrb-consumer+xml":{"source":"iana","compressible":true},"application/mrb-publish+xml":{"source":"iana","compressible":true},"application/msc-ivr+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msc-mixer+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msword":{"source":"iana","compressible":false,"extensions":["doc","dot"]},"application/mud+json":{"source":"iana","compressible":true},"application/multipart-core":{"source":"iana"},"application/mxf":{"source":"iana","extensions":["mxf"]},"application/n-quads":{"source":"iana","extensions":["nq"]},"application/n-triples":{"source":"iana","extensions":["nt"]},"application/nasdata":{"source":"iana"},"application/news-checkgroups":{"source":"iana","charset":"US-ASCII"},"application/news-groupinfo":{"source":"iana","charset":"US-ASCII"},"application/news-transmission":{"source":"iana"},"application/nlsml+xml":{"source":"iana","compressible":true},"application/node":{"source":"iana","extensions":["cjs"]},"application/nss":{"source":"iana"},"application/oauth-authz-req+jwt":{"source":"iana"},"application/oblivious-dns-message":{"source":"iana"},"application/ocsp-request":{"source":"iana"},"application/ocsp-response":{"source":"iana"},"application/octet-stream":{"source":"iana","compressible":false,"extensions":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{"source":"iana","extensions":["oda"]},"application/odm+xml":{"source":"iana","compressible":true},"application/odx":{"source":"iana"},"application/oebps-package+xml":{"source":"iana","compressible":true,"extensions":["opf"]},"application/ogg":{"source":"iana","compressible":false,"extensions":["ogx"]},"application/omdoc+xml":{"source":"apache","compressible":true,"extensions":["omdoc"]},"application/onenote":{"source":"apache","extensions":["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{"source":"iana","compressible":true},"application/oscore":{"source":"iana"},"application/oxps":{"source":"iana","extensions":["oxps"]},"application/p21":{"source":"iana"},"application/p21+zip":{"source":"iana","compressible":false},"application/p2p-overlay+xml":{"source":"iana","compressible":true,"extensions":["relo"]},"application/parityfec":{"source":"iana"},"application/passport":{"source":"iana"},"application/patch-ops-error+xml":{"source":"iana","compressible":true,"extensions":["xer"]},"application/pdf":{"source":"iana","compressible":false,"extensions":["pdf"]},"application/pdx":{"source":"iana"},"application/pem-certificate-chain":{"source":"iana"},"application/pgp-encrypted":{"source":"iana","compressible":false,"extensions":["pgp"]},"application/pgp-keys":{"source":"iana","extensions":["asc"]},"application/pgp-signature":{"source":"iana","extensions":["asc","sig"]},"application/pics-rules":{"source":"apache","extensions":["prf"]},"application/pidf+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pidf-diff+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pkcs10":{"source":"iana","extensions":["p10"]},"application/pkcs12":{"source":"iana"},"application/pkcs7-mime":{"source":"iana","extensions":["p7m","p7c"]},"application/pkcs7-signature":{"source":"iana","extensions":["p7s"]},"application/pkcs8":{"source":"iana","extensions":["p8"]},"application/pkcs8-encrypted":{"source":"iana"},"application/pkix-attr-cert":{"source":"iana","extensions":["ac"]},"application/pkix-cert":{"source":"iana","extensions":["cer"]},"application/pkix-crl":{"source":"iana","extensions":["crl"]},"application/pkix-pkipath":{"source":"iana","extensions":["pkipath"]},"application/pkixcmp":{"source":"iana","extensions":["pki"]},"application/pls+xml":{"source":"iana","compressible":true,"extensions":["pls"]},"application/poc-settings+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/postscript":{"source":"iana","compressible":true,"extensions":["ai","eps","ps"]},"application/ppsp-tracker+json":{"source":"iana","compressible":true},"application/problem+json":{"source":"iana","compressible":true},"application/problem+xml":{"source":"iana","compressible":true},"application/provenance+xml":{"source":"iana","compressible":true,"extensions":["provx"]},"application/prs.alvestrand.titrax-sheet":{"source":"iana"},"application/prs.cww":{"source":"iana","extensions":["cww"]},"application/prs.cyn":{"source":"iana","charset":"7-BIT"},"application/prs.hpub+zip":{"source":"iana","compressible":false},"application/prs.nprend":{"source":"iana"},"application/prs.plucker":{"source":"iana"},"application/prs.rdf-xml-crypt":{"source":"iana"},"application/prs.xsf+xml":{"source":"iana","compressible":true},"application/pskc+xml":{"source":"iana","compressible":true,"extensions":["pskcxml"]},"application/pvd+json":{"source":"iana","compressible":true},"application/qsig":{"source":"iana"},"application/raml+yaml":{"compressible":true,"extensions":["raml"]},"application/raptorfec":{"source":"iana"},"application/rdap+json":{"source":"iana","compressible":true},"application/rdf+xml":{"source":"iana","compressible":true,"extensions":["rdf","owl"]},"application/reginfo+xml":{"source":"iana","compressible":true,"extensions":["rif"]},"application/relax-ng-compact-syntax":{"source":"iana","extensions":["rnc"]},"application/remote-printing":{"source":"iana"},"application/reputon+json":{"source":"iana","compressible":true},"application/resource-lists+xml":{"source":"iana","compressible":true,"extensions":["rl"]},"application/resource-lists-diff+xml":{"source":"iana","compressible":true,"extensions":["rld"]},"application/rfc+xml":{"source":"iana","compressible":true},"application/riscos":{"source":"iana"},"application/rlmi+xml":{"source":"iana","compressible":true},"application/rls-services+xml":{"source":"iana","compressible":true,"extensions":["rs"]},"application/route-apd+xml":{"source":"iana","compressible":true,"extensions":["rapd"]},"application/route-s-tsid+xml":{"source":"iana","compressible":true,"extensions":["sls"]},"application/route-usd+xml":{"source":"iana","compressible":true,"extensions":["rusd"]},"application/rpki-ghostbusters":{"source":"iana","extensions":["gbr"]},"application/rpki-manifest":{"source":"iana","extensions":["mft"]},"application/rpki-publication":{"source":"iana"},"application/rpki-roa":{"source":"iana","extensions":["roa"]},"application/rpki-updown":{"source":"iana"},"application/rsd+xml":{"source":"apache","compressible":true,"extensions":["rsd"]},"application/rss+xml":{"source":"apache","compressible":true,"extensions":["rss"]},"application/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"application/rtploopback":{"source":"iana"},"application/rtx":{"source":"iana"},"application/samlassertion+xml":{"source":"iana","compressible":true},"application/samlmetadata+xml":{"source":"iana","compressible":true},"application/sarif+json":{"source":"iana","compressible":true},"application/sarif-external-properties+json":{"source":"iana","compressible":true},"application/sbe":{"source":"iana"},"application/sbml+xml":{"source":"iana","compressible":true,"extensions":["sbml"]},"application/scaip+xml":{"source":"iana","compressible":true},"application/scim+json":{"source":"iana","compressible":true},"application/scvp-cv-request":{"source":"iana","extensions":["scq"]},"application/scvp-cv-response":{"source":"iana","extensions":["scs"]},"application/scvp-vp-request":{"source":"iana","extensions":["spq"]},"application/scvp-vp-response":{"source":"iana","extensions":["spp"]},"application/sdp":{"source":"iana","extensions":["sdp"]},"application/secevent+jwt":{"source":"iana"},"application/senml+cbor":{"source":"iana"},"application/senml+json":{"source":"iana","compressible":true},"application/senml+xml":{"source":"iana","compressible":true,"extensions":["senmlx"]},"application/senml-etch+cbor":{"source":"iana"},"application/senml-etch+json":{"source":"iana","compressible":true},"application/senml-exi":{"source":"iana"},"application/sensml+cbor":{"source":"iana"},"application/sensml+json":{"source":"iana","compressible":true},"application/sensml+xml":{"source":"iana","compressible":true,"extensions":["sensmlx"]},"application/sensml-exi":{"source":"iana"},"application/sep+xml":{"source":"iana","compressible":true},"application/sep-exi":{"source":"iana"},"application/session-info":{"source":"iana"},"application/set-payment":{"source":"iana"},"application/set-payment-initiation":{"source":"iana","extensions":["setpay"]},"application/set-registration":{"source":"iana"},"application/set-registration-initiation":{"source":"iana","extensions":["setreg"]},"application/sgml":{"source":"iana"},"application/sgml-open-catalog":{"source":"iana"},"application/shf+xml":{"source":"iana","compressible":true,"extensions":["shf"]},"application/sieve":{"source":"iana","extensions":["siv","sieve"]},"application/simple-filter+xml":{"source":"iana","compressible":true},"application/simple-message-summary":{"source":"iana"},"application/simplesymbolcontainer":{"source":"iana"},"application/sipc":{"source":"iana"},"application/slate":{"source":"iana"},"application/smil":{"source":"iana"},"application/smil+xml":{"source":"iana","compressible":true,"extensions":["smi","smil"]},"application/smpte336m":{"source":"iana"},"application/soap+fastinfoset":{"source":"iana"},"application/soap+xml":{"source":"iana","compressible":true},"application/sparql-query":{"source":"iana","extensions":["rq"]},"application/sparql-results+xml":{"source":"iana","compressible":true,"extensions":["srx"]},"application/spdx+json":{"source":"iana","compressible":true},"application/spirits-event+xml":{"source":"iana","compressible":true},"application/sql":{"source":"iana"},"application/srgs":{"source":"iana","extensions":["gram"]},"application/srgs+xml":{"source":"iana","compressible":true,"extensions":["grxml"]},"application/sru+xml":{"source":"iana","compressible":true,"extensions":["sru"]},"application/ssdl+xml":{"source":"apache","compressible":true,"extensions":["ssdl"]},"application/ssml+xml":{"source":"iana","compressible":true,"extensions":["ssml"]},"application/stix+json":{"source":"iana","compressible":true},"application/swid+xml":{"source":"iana","compressible":true,"extensions":["swidtag"]},"application/tamp-apex-update":{"source":"iana"},"application/tamp-apex-update-confirm":{"source":"iana"},"application/tamp-community-update":{"source":"iana"},"application/tamp-community-update-confirm":{"source":"iana"},"application/tamp-error":{"source":"iana"},"application/tamp-sequence-adjust":{"source":"iana"},"application/tamp-sequence-adjust-confirm":{"source":"iana"},"application/tamp-status-query":{"source":"iana"},"application/tamp-status-response":{"source":"iana"},"application/tamp-update":{"source":"iana"},"application/tamp-update-confirm":{"source":"iana"},"application/tar":{"compressible":true},"application/taxii+json":{"source":"iana","compressible":true},"application/td+json":{"source":"iana","compressible":true},"application/tei+xml":{"source":"iana","compressible":true,"extensions":["tei","teicorpus"]},"application/tetra_isi":{"source":"iana"},"application/thraud+xml":{"source":"iana","compressible":true,"extensions":["tfi"]},"application/timestamp-query":{"source":"iana"},"application/timestamp-reply":{"source":"iana"},"application/timestamped-data":{"source":"iana","extensions":["tsd"]},"application/tlsrpt+gzip":{"source":"iana"},"application/tlsrpt+json":{"source":"iana","compressible":true},"application/tnauthlist":{"source":"iana"},"application/token-introspection+jwt":{"source":"iana"},"application/toml":{"compressible":true,"extensions":["toml"]},"application/trickle-ice-sdpfrag":{"source":"iana"},"application/trig":{"source":"iana","extensions":["trig"]},"application/ttml+xml":{"source":"iana","compressible":true,"extensions":["ttml"]},"application/tve-trigger":{"source":"iana"},"application/tzif":{"source":"iana"},"application/tzif-leap":{"source":"iana"},"application/ubjson":{"compressible":false,"extensions":["ubj"]},"application/ulpfec":{"source":"iana"},"application/urc-grpsheet+xml":{"source":"iana","compressible":true},"application/urc-ressheet+xml":{"source":"iana","compressible":true,"extensions":["rsheet"]},"application/urc-targetdesc+xml":{"source":"iana","compressible":true,"extensions":["td"]},"application/urc-uisocketdesc+xml":{"source":"iana","compressible":true},"application/vcard+json":{"source":"iana","compressible":true},"application/vcard+xml":{"source":"iana","compressible":true},"application/vemmi":{"source":"iana"},"application/vividence.scriptfile":{"source":"apache"},"application/vnd.1000minds.decision-model+xml":{"source":"iana","compressible":true,"extensions":["1km"]},"application/vnd.3gpp-prose+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc3ch+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-v2x-local-service-information":{"source":"iana"},"application/vnd.3gpp.5gnas":{"source":"iana"},"application/vnd.3gpp.access-transfer-events+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.bsf+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gmop+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gtpc":{"source":"iana"},"application/vnd.3gpp.interworking-data":{"source":"iana"},"application/vnd.3gpp.lpp":{"source":"iana"},"application/vnd.3gpp.mc-signalling-ear":{"source":"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-payload":{"source":"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-signalling":{"source":"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-floor-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-signed+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-init-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-transmission-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mid-call+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ngap":{"source":"iana"},"application/vnd.3gpp.pfcp":{"source":"iana"},"application/vnd.3gpp.pic-bw-large":{"source":"iana","extensions":["plb"]},"application/vnd.3gpp.pic-bw-small":{"source":"iana","extensions":["psb"]},"application/vnd.3gpp.pic-bw-var":{"source":"iana","extensions":["pvb"]},"application/vnd.3gpp.s1ap":{"source":"iana"},"application/vnd.3gpp.sms":{"source":"iana"},"application/vnd.3gpp.sms+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-ext+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.state-and-event-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ussd+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.bcmcsinfo+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.sms":{"source":"iana"},"application/vnd.3gpp2.tcap":{"source":"iana","extensions":["tcap"]},"application/vnd.3lightssoftware.imagescal":{"source":"iana"},"application/vnd.3m.post-it-notes":{"source":"iana","extensions":["pwn"]},"application/vnd.accpac.simply.aso":{"source":"iana","extensions":["aso"]},"application/vnd.accpac.simply.imp":{"source":"iana","extensions":["imp"]},"application/vnd.acucobol":{"source":"iana","extensions":["acu"]},"application/vnd.acucorp":{"source":"iana","extensions":["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{"source":"apache","compressible":false,"extensions":["air"]},"application/vnd.adobe.flash.movie":{"source":"iana"},"application/vnd.adobe.formscentral.fcdt":{"source":"iana","extensions":["fcdt"]},"application/vnd.adobe.fxp":{"source":"iana","extensions":["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{"source":"iana"},"application/vnd.adobe.xdp+xml":{"source":"iana","compressible":true,"extensions":["xdp"]},"application/vnd.adobe.xfdf":{"source":"iana","extensions":["xfdf"]},"application/vnd.aether.imp":{"source":"iana"},"application/vnd.afpc.afplinedata":{"source":"iana"},"application/vnd.afpc.afplinedata-pagedef":{"source":"iana"},"application/vnd.afpc.cmoca-cmresource":{"source":"iana"},"application/vnd.afpc.foca-charset":{"source":"iana"},"application/vnd.afpc.foca-codedfont":{"source":"iana"},"application/vnd.afpc.foca-codepage":{"source":"iana"},"application/vnd.afpc.modca":{"source":"iana"},"application/vnd.afpc.modca-cmtable":{"source":"iana"},"application/vnd.afpc.modca-formdef":{"source":"iana"},"application/vnd.afpc.modca-mediummap":{"source":"iana"},"application/vnd.afpc.modca-objectcontainer":{"source":"iana"},"application/vnd.afpc.modca-overlay":{"source":"iana"},"application/vnd.afpc.modca-pagesegment":{"source":"iana"},"application/vnd.age":{"source":"iana","extensions":["age"]},"application/vnd.ah-barcode":{"source":"iana"},"application/vnd.ahead.space":{"source":"iana","extensions":["ahead"]},"application/vnd.airzip.filesecure.azf":{"source":"iana","extensions":["azf"]},"application/vnd.airzip.filesecure.azs":{"source":"iana","extensions":["azs"]},"application/vnd.amadeus+json":{"source":"iana","compressible":true},"application/vnd.amazon.ebook":{"source":"apache","extensions":["azw"]},"application/vnd.amazon.mobi8-ebook":{"source":"iana"},"application/vnd.americandynamics.acc":{"source":"iana","extensions":["acc"]},"application/vnd.amiga.ami":{"source":"iana","extensions":["ami"]},"application/vnd.amundsen.maze+xml":{"source":"iana","compressible":true},"application/vnd.android.ota":{"source":"iana"},"application/vnd.android.package-archive":{"source":"apache","compressible":false,"extensions":["apk"]},"application/vnd.anki":{"source":"iana"},"application/vnd.anser-web-certificate-issue-initiation":{"source":"iana","extensions":["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{"source":"apache","extensions":["fti"]},"application/vnd.antix.game-component":{"source":"iana","extensions":["atx"]},"application/vnd.apache.arrow.file":{"source":"iana"},"application/vnd.apache.arrow.stream":{"source":"iana"},"application/vnd.apache.thrift.binary":{"source":"iana"},"application/vnd.apache.thrift.compact":{"source":"iana"},"application/vnd.apache.thrift.json":{"source":"iana"},"application/vnd.api+json":{"source":"iana","compressible":true},"application/vnd.aplextor.warrp+json":{"source":"iana","compressible":true},"application/vnd.apothekende.reservation+json":{"source":"iana","compressible":true},"application/vnd.apple.installer+xml":{"source":"iana","compressible":true,"extensions":["mpkg"]},"application/vnd.apple.keynote":{"source":"iana","extensions":["key"]},"application/vnd.apple.mpegurl":{"source":"iana","extensions":["m3u8"]},"application/vnd.apple.numbers":{"source":"iana","extensions":["numbers"]},"application/vnd.apple.pages":{"source":"iana","extensions":["pages"]},"application/vnd.apple.pkpass":{"compressible":false,"extensions":["pkpass"]},"application/vnd.arastra.swi":{"source":"iana"},"application/vnd.aristanetworks.swi":{"source":"iana","extensions":["swi"]},"application/vnd.artisan+json":{"source":"iana","compressible":true},"application/vnd.artsquare":{"source":"iana"},"application/vnd.astraea-software.iota":{"source":"iana","extensions":["iota"]},"application/vnd.audiograph":{"source":"iana","extensions":["aep"]},"application/vnd.autopackage":{"source":"iana"},"application/vnd.avalon+json":{"source":"iana","compressible":true},"application/vnd.avistar+xml":{"source":"iana","compressible":true},"application/vnd.balsamiq.bmml+xml":{"source":"iana","compressible":true,"extensions":["bmml"]},"application/vnd.balsamiq.bmpr":{"source":"iana"},"application/vnd.banana-accounting":{"source":"iana"},"application/vnd.bbf.usp.error":{"source":"iana"},"application/vnd.bbf.usp.msg":{"source":"iana"},"application/vnd.bbf.usp.msg+json":{"source":"iana","compressible":true},"application/vnd.bekitzur-stech+json":{"source":"iana","compressible":true},"application/vnd.bint.med-content":{"source":"iana"},"application/vnd.biopax.rdf+xml":{"source":"iana","compressible":true},"application/vnd.blink-idb-value-wrapper":{"source":"iana"},"application/vnd.blueice.multipass":{"source":"iana","extensions":["mpm"]},"application/vnd.bluetooth.ep.oob":{"source":"iana"},"application/vnd.bluetooth.le.oob":{"source":"iana"},"application/vnd.bmi":{"source":"iana","extensions":["bmi"]},"application/vnd.bpf":{"source":"iana"},"application/vnd.bpf3":{"source":"iana"},"application/vnd.businessobjects":{"source":"iana","extensions":["rep"]},"application/vnd.byu.uapi+json":{"source":"iana","compressible":true},"application/vnd.cab-jscript":{"source":"iana"},"application/vnd.canon-cpdl":{"source":"iana"},"application/vnd.canon-lips":{"source":"iana"},"application/vnd.capasystems-pg+json":{"source":"iana","compressible":true},"application/vnd.cendio.thinlinc.clientconf":{"source":"iana"},"application/vnd.century-systems.tcp_stream":{"source":"iana"},"application/vnd.chemdraw+xml":{"source":"iana","compressible":true,"extensions":["cdxml"]},"application/vnd.chess-pgn":{"source":"iana"},"application/vnd.chipnuts.karaoke-mmd":{"source":"iana","extensions":["mmd"]},"application/vnd.ciedi":{"source":"iana"},"application/vnd.cinderella":{"source":"iana","extensions":["cdy"]},"application/vnd.cirpack.isdn-ext":{"source":"iana"},"application/vnd.citationstyles.style+xml":{"source":"iana","compressible":true,"extensions":["csl"]},"application/vnd.claymore":{"source":"iana","extensions":["cla"]},"application/vnd.cloanto.rp9":{"source":"iana","extensions":["rp9"]},"application/vnd.clonk.c4group":{"source":"iana","extensions":["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{"source":"iana","extensions":["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{"source":"iana","extensions":["c11amz"]},"application/vnd.coffeescript":{"source":"iana"},"application/vnd.collabio.xodocuments.document":{"source":"iana"},"application/vnd.collabio.xodocuments.document-template":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation-template":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{"source":"iana"},"application/vnd.collection+json":{"source":"iana","compressible":true},"application/vnd.collection.doc+json":{"source":"iana","compressible":true},"application/vnd.collection.next+json":{"source":"iana","compressible":true},"application/vnd.comicbook+zip":{"source":"iana","compressible":false},"application/vnd.comicbook-rar":{"source":"iana"},"application/vnd.commerce-battelle":{"source":"iana"},"application/vnd.commonspace":{"source":"iana","extensions":["csp"]},"application/vnd.contact.cmsg":{"source":"iana","extensions":["cdbcmsg"]},"application/vnd.coreos.ignition+json":{"source":"iana","compressible":true},"application/vnd.cosmocaller":{"source":"iana","extensions":["cmc"]},"application/vnd.crick.clicker":{"source":"iana","extensions":["clkx"]},"application/vnd.crick.clicker.keyboard":{"source":"iana","extensions":["clkk"]},"application/vnd.crick.clicker.palette":{"source":"iana","extensions":["clkp"]},"application/vnd.crick.clicker.template":{"source":"iana","extensions":["clkt"]},"application/vnd.crick.clicker.wordbank":{"source":"iana","extensions":["clkw"]},"application/vnd.criticaltools.wbs+xml":{"source":"iana","compressible":true,"extensions":["wbs"]},"application/vnd.cryptii.pipe+json":{"source":"iana","compressible":true},"application/vnd.crypto-shade-file":{"source":"iana"},"application/vnd.cryptomator.encrypted":{"source":"iana"},"application/vnd.cryptomator.vault":{"source":"iana"},"application/vnd.ctc-posml":{"source":"iana","extensions":["pml"]},"application/vnd.ctct.ws+xml":{"source":"iana","compressible":true},"application/vnd.cups-pdf":{"source":"iana"},"application/vnd.cups-postscript":{"source":"iana"},"application/vnd.cups-ppd":{"source":"iana","extensions":["ppd"]},"application/vnd.cups-raster":{"source":"iana"},"application/vnd.cups-raw":{"source":"iana"},"application/vnd.curl":{"source":"iana"},"application/vnd.curl.car":{"source":"apache","extensions":["car"]},"application/vnd.curl.pcurl":{"source":"apache","extensions":["pcurl"]},"application/vnd.cyan.dean.root+xml":{"source":"iana","compressible":true},"application/vnd.cybank":{"source":"iana"},"application/vnd.cyclonedx+json":{"source":"iana","compressible":true},"application/vnd.cyclonedx+xml":{"source":"iana","compressible":true},"application/vnd.d2l.coursepackage1p0+zip":{"source":"iana","compressible":false},"application/vnd.d3m-dataset":{"source":"iana"},"application/vnd.d3m-problem":{"source":"iana"},"application/vnd.dart":{"source":"iana","compressible":true,"extensions":["dart"]},"application/vnd.data-vision.rdz":{"source":"iana","extensions":["rdz"]},"application/vnd.datapackage+json":{"source":"iana","compressible":true},"application/vnd.dataresource+json":{"source":"iana","compressible":true},"application/vnd.dbf":{"source":"iana","extensions":["dbf"]},"application/vnd.debian.binary-package":{"source":"iana"},"application/vnd.dece.data":{"source":"iana","extensions":["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{"source":"iana","compressible":true,"extensions":["uvt","uvvt"]},"application/vnd.dece.unspecified":{"source":"iana","extensions":["uvx","uvvx"]},"application/vnd.dece.zip":{"source":"iana","extensions":["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{"source":"iana","extensions":["fe_launch"]},"application/vnd.desmume.movie":{"source":"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{"source":"iana"},"application/vnd.dm.delegation+xml":{"source":"iana","compressible":true},"application/vnd.dna":{"source":"iana","extensions":["dna"]},"application/vnd.document+json":{"source":"iana","compressible":true},"application/vnd.dolby.mlp":{"source":"apache","extensions":["mlp"]},"application/vnd.dolby.mobile.1":{"source":"iana"},"application/vnd.dolby.mobile.2":{"source":"iana"},"application/vnd.doremir.scorecloud-binary-document":{"source":"iana"},"application/vnd.dpgraph":{"source":"iana","extensions":["dpg"]},"application/vnd.dreamfactory":{"source":"iana","extensions":["dfac"]},"application/vnd.drive+json":{"source":"iana","compressible":true},"application/vnd.ds-keypoint":{"source":"apache","extensions":["kpxx"]},"application/vnd.dtg.local":{"source":"iana"},"application/vnd.dtg.local.flash":{"source":"iana"},"application/vnd.dtg.local.html":{"source":"iana"},"application/vnd.dvb.ait":{"source":"iana","extensions":["ait"]},"application/vnd.dvb.dvbisl+xml":{"source":"iana","compressible":true},"application/vnd.dvb.dvbj":{"source":"iana"},"application/vnd.dvb.esgcontainer":{"source":"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess2":{"source":"iana"},"application/vnd.dvb.ipdcesgpdd":{"source":"iana"},"application/vnd.dvb.ipdcroaming":{"source":"iana"},"application/vnd.dvb.iptv.alfec-base":{"source":"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{"source":"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-container+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-generic+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-msglist+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-request+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-response+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-init+xml":{"source":"iana","compressible":true},"application/vnd.dvb.pfr":{"source":"iana"},"application/vnd.dvb.service":{"source":"iana","extensions":["svc"]},"application/vnd.dxr":{"source":"iana"},"application/vnd.dynageo":{"source":"iana","extensions":["geo"]},"application/vnd.dzr":{"source":"iana"},"application/vnd.easykaraoke.cdgdownload":{"source":"iana"},"application/vnd.ecdis-update":{"source":"iana"},"application/vnd.ecip.rlp":{"source":"iana"},"application/vnd.eclipse.ditto+json":{"source":"iana","compressible":true},"application/vnd.ecowin.chart":{"source":"iana","extensions":["mag"]},"application/vnd.ecowin.filerequest":{"source":"iana"},"application/vnd.ecowin.fileupdate":{"source":"iana"},"application/vnd.ecowin.series":{"source":"iana"},"application/vnd.ecowin.seriesrequest":{"source":"iana"},"application/vnd.ecowin.seriesupdate":{"source":"iana"},"application/vnd.efi.img":{"source":"iana"},"application/vnd.efi.iso":{"source":"iana"},"application/vnd.emclient.accessrequest+xml":{"source":"iana","compressible":true},"application/vnd.enliven":{"source":"iana","extensions":["nml"]},"application/vnd.enphase.envoy":{"source":"iana"},"application/vnd.eprints.data+xml":{"source":"iana","compressible":true},"application/vnd.epson.esf":{"source":"iana","extensions":["esf"]},"application/vnd.epson.msf":{"source":"iana","extensions":["msf"]},"application/vnd.epson.quickanime":{"source":"iana","extensions":["qam"]},"application/vnd.epson.salt":{"source":"iana","extensions":["slt"]},"application/vnd.epson.ssf":{"source":"iana","extensions":["ssf"]},"application/vnd.ericsson.quickcall":{"source":"iana"},"application/vnd.espass-espass+zip":{"source":"iana","compressible":false},"application/vnd.eszigno3+xml":{"source":"iana","compressible":true,"extensions":["es3","et3"]},"application/vnd.etsi.aoc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.asic-e+zip":{"source":"iana","compressible":false},"application/vnd.etsi.asic-s+zip":{"source":"iana","compressible":false},"application/vnd.etsi.cug+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvcommand+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-bc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-cod+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-npvr+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvservice+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsync+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvueprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mcid+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mheg5":{"source":"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{"source":"iana","compressible":true},"application/vnd.etsi.pstn+xml":{"source":"iana","compressible":true},"application/vnd.etsi.sci+xml":{"source":"iana","compressible":true},"application/vnd.etsi.simservs+xml":{"source":"iana","compressible":true},"application/vnd.etsi.timestamp-token":{"source":"iana"},"application/vnd.etsi.tsl+xml":{"source":"iana","compressible":true},"application/vnd.etsi.tsl.der":{"source":"iana"},"application/vnd.eu.kasparian.car+json":{"source":"iana","compressible":true},"application/vnd.eudora.data":{"source":"iana"},"application/vnd.evolv.ecig.profile":{"source":"iana"},"application/vnd.evolv.ecig.settings":{"source":"iana"},"application/vnd.evolv.ecig.theme":{"source":"iana"},"application/vnd.exstream-empower+zip":{"source":"iana","compressible":false},"application/vnd.exstream-package":{"source":"iana"},"application/vnd.ezpix-album":{"source":"iana","extensions":["ez2"]},"application/vnd.ezpix-package":{"source":"iana","extensions":["ez3"]},"application/vnd.f-secure.mobile":{"source":"iana"},"application/vnd.familysearch.gedcom+zip":{"source":"iana","compressible":false},"application/vnd.fastcopy-disk-image":{"source":"iana"},"application/vnd.fdf":{"source":"iana","extensions":["fdf"]},"application/vnd.fdsn.mseed":{"source":"iana","extensions":["mseed"]},"application/vnd.fdsn.seed":{"source":"iana","extensions":["seed","dataless"]},"application/vnd.ffsns":{"source":"iana"},"application/vnd.ficlab.flb+zip":{"source":"iana","compressible":false},"application/vnd.filmit.zfc":{"source":"iana"},"application/vnd.fints":{"source":"iana"},"application/vnd.firemonkeys.cloudcell":{"source":"iana"},"application/vnd.flographit":{"source":"iana","extensions":["gph"]},"application/vnd.fluxtime.clip":{"source":"iana","extensions":["ftc"]},"application/vnd.font-fontforge-sfd":{"source":"iana"},"application/vnd.framemaker":{"source":"iana","extensions":["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{"source":"iana","extensions":["fnc"]},"application/vnd.frogans.ltf":{"source":"iana","extensions":["ltf"]},"application/vnd.fsc.weblaunch":{"source":"iana","extensions":["fsc"]},"application/vnd.fujifilm.fb.docuworks":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.container":{"source":"iana"},"application/vnd.fujifilm.fb.jfi+xml":{"source":"iana","compressible":true},"application/vnd.fujitsu.oasys":{"source":"iana","extensions":["oas"]},"application/vnd.fujitsu.oasys2":{"source":"iana","extensions":["oa2"]},"application/vnd.fujitsu.oasys3":{"source":"iana","extensions":["oa3"]},"application/vnd.fujitsu.oasysgp":{"source":"iana","extensions":["fg5"]},"application/vnd.fujitsu.oasysprs":{"source":"iana","extensions":["bh2"]},"application/vnd.fujixerox.art-ex":{"source":"iana"},"application/vnd.fujixerox.art4":{"source":"iana"},"application/vnd.fujixerox.ddd":{"source":"iana","extensions":["ddd"]},"application/vnd.fujixerox.docuworks":{"source":"iana","extensions":["xdw"]},"application/vnd.fujixerox.docuworks.binder":{"source":"iana","extensions":["xbd"]},"application/vnd.fujixerox.docuworks.container":{"source":"iana"},"application/vnd.fujixerox.hbpl":{"source":"iana"},"application/vnd.fut-misnet":{"source":"iana"},"application/vnd.futoin+cbor":{"source":"iana"},"application/vnd.futoin+json":{"source":"iana","compressible":true},"application/vnd.fuzzysheet":{"source":"iana","extensions":["fzs"]},"application/vnd.genomatix.tuxedo":{"source":"iana","extensions":["txd"]},"application/vnd.gentics.grd+json":{"source":"iana","compressible":true},"application/vnd.geo+json":{"source":"iana","compressible":true},"application/vnd.geocube+xml":{"source":"iana","compressible":true},"application/vnd.geogebra.file":{"source":"iana","extensions":["ggb"]},"application/vnd.geogebra.slides":{"source":"iana"},"application/vnd.geogebra.tool":{"source":"iana","extensions":["ggt"]},"application/vnd.geometry-explorer":{"source":"iana","extensions":["gex","gre"]},"application/vnd.geonext":{"source":"iana","extensions":["gxt"]},"application/vnd.geoplan":{"source":"iana","extensions":["g2w"]},"application/vnd.geospace":{"source":"iana","extensions":["g3w"]},"application/vnd.gerber":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt-response":{"source":"iana"},"application/vnd.gmx":{"source":"iana","extensions":["gmx"]},"application/vnd.google-apps.document":{"compressible":false,"extensions":["gdoc"]},"application/vnd.google-apps.presentation":{"compressible":false,"extensions":["gslides"]},"application/vnd.google-apps.spreadsheet":{"compressible":false,"extensions":["gsheet"]},"application/vnd.google-earth.kml+xml":{"source":"iana","compressible":true,"extensions":["kml"]},"application/vnd.google-earth.kmz":{"source":"iana","compressible":false,"extensions":["kmz"]},"application/vnd.gov.sk.e-form+xml":{"source":"iana","compressible":true},"application/vnd.gov.sk.e-form+zip":{"source":"iana","compressible":false},"application/vnd.gov.sk.xmldatacontainer+xml":{"source":"iana","compressible":true},"application/vnd.grafeq":{"source":"iana","extensions":["gqf","gqs"]},"application/vnd.gridmp":{"source":"iana"},"application/vnd.groove-account":{"source":"iana","extensions":["gac"]},"application/vnd.groove-help":{"source":"iana","extensions":["ghf"]},"application/vnd.groove-identity-message":{"source":"iana","extensions":["gim"]},"application/vnd.groove-injector":{"source":"iana","extensions":["grv"]},"application/vnd.groove-tool-message":{"source":"iana","extensions":["gtm"]},"application/vnd.groove-tool-template":{"source":"iana","extensions":["tpl"]},"application/vnd.groove-vcard":{"source":"iana","extensions":["vcg"]},"application/vnd.hal+json":{"source":"iana","compressible":true},"application/vnd.hal+xml":{"source":"iana","compressible":true,"extensions":["hal"]},"application/vnd.handheld-entertainment+xml":{"source":"iana","compressible":true,"extensions":["zmm"]},"application/vnd.hbci":{"source":"iana","extensions":["hbci"]},"application/vnd.hc+json":{"source":"iana","compressible":true},"application/vnd.hcl-bireports":{"source":"iana"},"application/vnd.hdt":{"source":"iana"},"application/vnd.heroku+json":{"source":"iana","compressible":true},"application/vnd.hhe.lesson-player":{"source":"iana","extensions":["les"]},"application/vnd.hl7cda+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.hl7v2+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.hp-hpgl":{"source":"iana","extensions":["hpgl"]},"application/vnd.hp-hpid":{"source":"iana","extensions":["hpid"]},"application/vnd.hp-hps":{"source":"iana","extensions":["hps"]},"application/vnd.hp-jlyt":{"source":"iana","extensions":["jlt"]},"application/vnd.hp-pcl":{"source":"iana","extensions":["pcl"]},"application/vnd.hp-pclxl":{"source":"iana","extensions":["pclxl"]},"application/vnd.httphone":{"source":"iana"},"application/vnd.hydrostatix.sof-data":{"source":"iana","extensions":["sfd-hdstx"]},"application/vnd.hyper+json":{"source":"iana","compressible":true},"application/vnd.hyper-item+json":{"source":"iana","compressible":true},"application/vnd.hyperdrive+json":{"source":"iana","compressible":true},"application/vnd.hzn-3d-crossword":{"source":"iana"},"application/vnd.ibm.afplinedata":{"source":"iana"},"application/vnd.ibm.electronic-media":{"source":"iana"},"application/vnd.ibm.minipay":{"source":"iana","extensions":["mpy"]},"application/vnd.ibm.modcap":{"source":"iana","extensions":["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{"source":"iana","extensions":["irm"]},"application/vnd.ibm.secure-container":{"source":"iana","extensions":["sc"]},"application/vnd.iccprofile":{"source":"iana","extensions":["icc","icm"]},"application/vnd.ieee.1905":{"source":"iana"},"application/vnd.igloader":{"source":"iana","extensions":["igl"]},"application/vnd.imagemeter.folder+zip":{"source":"iana","compressible":false},"application/vnd.imagemeter.image+zip":{"source":"iana","compressible":false},"application/vnd.immervision-ivp":{"source":"iana","extensions":["ivp"]},"application/vnd.immervision-ivu":{"source":"iana","extensions":["ivu"]},"application/vnd.ims.imsccv1p1":{"source":"iana"},"application/vnd.ims.imsccv1p2":{"source":"iana"},"application/vnd.ims.imsccv1p3":{"source":"iana"},"application/vnd.ims.lis.v2.result+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy.id+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings.simple+json":{"source":"iana","compressible":true},"application/vnd.informedcontrol.rms+xml":{"source":"iana","compressible":true},"application/vnd.informix-visionary":{"source":"iana"},"application/vnd.infotech.project":{"source":"iana"},"application/vnd.infotech.project+xml":{"source":"iana","compressible":true},"application/vnd.innopath.wamp.notification":{"source":"iana"},"application/vnd.insors.igm":{"source":"iana","extensions":["igm"]},"application/vnd.intercon.formnet":{"source":"iana","extensions":["xpw","xpx"]},"application/vnd.intergeo":{"source":"iana","extensions":["i2g"]},"application/vnd.intertrust.digibox":{"source":"iana"},"application/vnd.intertrust.nncp":{"source":"iana"},"application/vnd.intu.qbo":{"source":"iana","extensions":["qbo"]},"application/vnd.intu.qfx":{"source":"iana","extensions":["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.conceptitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.knowledgeitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsmessage+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.packageitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.planningitem+xml":{"source":"iana","compressible":true},"application/vnd.ipunplugged.rcprofile":{"source":"iana","extensions":["rcprofile"]},"application/vnd.irepository.package+xml":{"source":"iana","compressible":true,"extensions":["irp"]},"application/vnd.is-xpr":{"source":"iana","extensions":["xpr"]},"application/vnd.isac.fcs":{"source":"iana","extensions":["fcs"]},"application/vnd.iso11783-10+zip":{"source":"iana","compressible":false},"application/vnd.jam":{"source":"iana","extensions":["jam"]},"application/vnd.japannet-directory-service":{"source":"iana"},"application/vnd.japannet-jpnstore-wakeup":{"source":"iana"},"application/vnd.japannet-payment-wakeup":{"source":"iana"},"application/vnd.japannet-registration":{"source":"iana"},"application/vnd.japannet-registration-wakeup":{"source":"iana"},"application/vnd.japannet-setstore-wakeup":{"source":"iana"},"application/vnd.japannet-verification":{"source":"iana"},"application/vnd.japannet-verification-wakeup":{"source":"iana"},"application/vnd.jcp.javame.midlet-rms":{"source":"iana","extensions":["rms"]},"application/vnd.jisp":{"source":"iana","extensions":["jisp"]},"application/vnd.joost.joda-archive":{"source":"iana","extensions":["joda"]},"application/vnd.jsk.isdn-ngn":{"source":"iana"},"application/vnd.kahootz":{"source":"iana","extensions":["ktz","ktr"]},"application/vnd.kde.karbon":{"source":"iana","extensions":["karbon"]},"application/vnd.kde.kchart":{"source":"iana","extensions":["chrt"]},"application/vnd.kde.kformula":{"source":"iana","extensions":["kfo"]},"application/vnd.kde.kivio":{"source":"iana","extensions":["flw"]},"application/vnd.kde.kontour":{"source":"iana","extensions":["kon"]},"application/vnd.kde.kpresenter":{"source":"iana","extensions":["kpr","kpt"]},"application/vnd.kde.kspread":{"source":"iana","extensions":["ksp"]},"application/vnd.kde.kword":{"source":"iana","extensions":["kwd","kwt"]},"application/vnd.kenameaapp":{"source":"iana","extensions":["htke"]},"application/vnd.kidspiration":{"source":"iana","extensions":["kia"]},"application/vnd.kinar":{"source":"iana","extensions":["kne","knp"]},"application/vnd.koan":{"source":"iana","extensions":["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{"source":"iana","extensions":["sse"]},"application/vnd.las":{"source":"iana"},"application/vnd.las.las+json":{"source":"iana","compressible":true},"application/vnd.las.las+xml":{"source":"iana","compressible":true,"extensions":["lasxml"]},"application/vnd.laszip":{"source":"iana"},"application/vnd.leap+json":{"source":"iana","compressible":true},"application/vnd.liberty-request+xml":{"source":"iana","compressible":true},"application/vnd.llamagraphics.life-balance.desktop":{"source":"iana","extensions":["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{"source":"iana","compressible":true,"extensions":["lbe"]},"application/vnd.logipipe.circuit+zip":{"source":"iana","compressible":false},"application/vnd.loom":{"source":"iana"},"application/vnd.lotus-1-2-3":{"source":"iana","extensions":["123"]},"application/vnd.lotus-approach":{"source":"iana","extensions":["apr"]},"application/vnd.lotus-freelance":{"source":"iana","extensions":["pre"]},"application/vnd.lotus-notes":{"source":"iana","extensions":["nsf"]},"application/vnd.lotus-organizer":{"source":"iana","extensions":["org"]},"application/vnd.lotus-screencam":{"source":"iana","extensions":["scm"]},"application/vnd.lotus-wordpro":{"source":"iana","extensions":["lwp"]},"application/vnd.macports.portpkg":{"source":"iana","extensions":["portpkg"]},"application/vnd.mapbox-vector-tile":{"source":"iana","extensions":["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.conftoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.license+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.mdcf":{"source":"iana"},"application/vnd.mason+json":{"source":"iana","compressible":true},"application/vnd.maxar.archive.3tz+zip":{"source":"iana","compressible":false},"application/vnd.maxmind.maxmind-db":{"source":"iana"},"application/vnd.mcd":{"source":"iana","extensions":["mcd"]},"application/vnd.medcalcdata":{"source":"iana","extensions":["mc1"]},"application/vnd.mediastation.cdkey":{"source":"iana","extensions":["cdkey"]},"application/vnd.meridian-slingshot":{"source":"iana"},"application/vnd.mfer":{"source":"iana","extensions":["mwf"]},"application/vnd.mfmp":{"source":"iana","extensions":["mfm"]},"application/vnd.micro+json":{"source":"iana","compressible":true},"application/vnd.micrografx.flo":{"source":"iana","extensions":["flo"]},"application/vnd.micrografx.igx":{"source":"iana","extensions":["igx"]},"application/vnd.microsoft.portable-executable":{"source":"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{"source":"iana"},"application/vnd.miele+json":{"source":"iana","compressible":true},"application/vnd.mif":{"source":"iana","extensions":["mif"]},"application/vnd.minisoft-hp3000-save":{"source":"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{"source":"iana"},"application/vnd.mobius.daf":{"source":"iana","extensions":["daf"]},"application/vnd.mobius.dis":{"source":"iana","extensions":["dis"]},"application/vnd.mobius.mbk":{"source":"iana","extensions":["mbk"]},"application/vnd.mobius.mqy":{"source":"iana","extensions":["mqy"]},"application/vnd.mobius.msl":{"source":"iana","extensions":["msl"]},"application/vnd.mobius.plc":{"source":"iana","extensions":["plc"]},"application/vnd.mobius.txf":{"source":"iana","extensions":["txf"]},"application/vnd.mophun.application":{"source":"iana","extensions":["mpn"]},"application/vnd.mophun.certificate":{"source":"iana","extensions":["mpc"]},"application/vnd.motorola.flexsuite":{"source":"iana"},"application/vnd.motorola.flexsuite.adsi":{"source":"iana"},"application/vnd.motorola.flexsuite.fis":{"source":"iana"},"application/vnd.motorola.flexsuite.gotap":{"source":"iana"},"application/vnd.motorola.flexsuite.kmr":{"source":"iana"},"application/vnd.motorola.flexsuite.ttc":{"source":"iana"},"application/vnd.motorola.flexsuite.wem":{"source":"iana"},"application/vnd.motorola.iprm":{"source":"iana"},"application/vnd.mozilla.xul+xml":{"source":"iana","compressible":true,"extensions":["xul"]},"application/vnd.ms-3mfdocument":{"source":"iana"},"application/vnd.ms-artgalry":{"source":"iana","extensions":["cil"]},"application/vnd.ms-asf":{"source":"iana"},"application/vnd.ms-cab-compressed":{"source":"iana","extensions":["cab"]},"application/vnd.ms-color.iccprofile":{"source":"apache"},"application/vnd.ms-excel":{"source":"iana","compressible":false,"extensions":["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{"source":"iana","extensions":["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{"source":"iana","extensions":["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{"source":"iana","extensions":["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{"source":"iana","extensions":["xltm"]},"application/vnd.ms-fontobject":{"source":"iana","compressible":true,"extensions":["eot"]},"application/vnd.ms-htmlhelp":{"source":"iana","extensions":["chm"]},"application/vnd.ms-ims":{"source":"iana","extensions":["ims"]},"application/vnd.ms-lrm":{"source":"iana","extensions":["lrm"]},"application/vnd.ms-office.activex+xml":{"source":"iana","compressible":true},"application/vnd.ms-officetheme":{"source":"iana","extensions":["thmx"]},"application/vnd.ms-opentype":{"source":"apache","compressible":true},"application/vnd.ms-outlook":{"compressible":false,"extensions":["msg"]},"application/vnd.ms-package.obfuscated-opentype":{"source":"apache"},"application/vnd.ms-pki.seccat":{"source":"apache","extensions":["cat"]},"application/vnd.ms-pki.stl":{"source":"apache","extensions":["stl"]},"application/vnd.ms-playready.initiator+xml":{"source":"iana","compressible":true},"application/vnd.ms-powerpoint":{"source":"iana","compressible":false,"extensions":["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{"source":"iana","extensions":["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{"source":"iana","extensions":["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{"source":"iana","extensions":["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{"source":"iana","extensions":["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{"source":"iana","extensions":["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{"source":"iana","compressible":true},"application/vnd.ms-printing.printticket+xml":{"source":"apache","compressible":true},"application/vnd.ms-printschematicket+xml":{"source":"iana","compressible":true},"application/vnd.ms-project":{"source":"iana","extensions":["mpp","mpt"]},"application/vnd.ms-tnef":{"source":"iana"},"application/vnd.ms-windows.devicepairing":{"source":"iana"},"application/vnd.ms-windows.nwprinting.oob":{"source":"iana"},"application/vnd.ms-windows.printerpairing":{"source":"iana"},"application/vnd.ms-windows.wsd.oob":{"source":"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.lic-resp":{"source":"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.meter-resp":{"source":"iana"},"application/vnd.ms-word.document.macroenabled.12":{"source":"iana","extensions":["docm"]},"application/vnd.ms-word.template.macroenabled.12":{"source":"iana","extensions":["dotm"]},"application/vnd.ms-works":{"source":"iana","extensions":["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{"source":"iana","extensions":["wpl"]},"application/vnd.ms-xpsdocument":{"source":"iana","compressible":false,"extensions":["xps"]},"application/vnd.msa-disk-image":{"source":"iana"},"application/vnd.mseq":{"source":"iana","extensions":["mseq"]},"application/vnd.msign":{"source":"iana"},"application/vnd.multiad.creator":{"source":"iana"},"application/vnd.multiad.creator.cif":{"source":"iana"},"application/vnd.music-niff":{"source":"iana"},"application/vnd.musician":{"source":"iana","extensions":["mus"]},"application/vnd.muvee.style":{"source":"iana","extensions":["msty"]},"application/vnd.mynfc":{"source":"iana","extensions":["taglet"]},"application/vnd.nacamar.ybrid+json":{"source":"iana","compressible":true},"application/vnd.ncd.control":{"source":"iana"},"application/vnd.ncd.reference":{"source":"iana"},"application/vnd.nearst.inv+json":{"source":"iana","compressible":true},"application/vnd.nebumind.line":{"source":"iana"},"application/vnd.nervana":{"source":"iana"},"application/vnd.netfpx":{"source":"iana"},"application/vnd.neurolanguage.nlu":{"source":"iana","extensions":["nlu"]},"application/vnd.nimn":{"source":"iana"},"application/vnd.nintendo.nitro.rom":{"source":"iana"},"application/vnd.nintendo.snes.rom":{"source":"iana"},"application/vnd.nitf":{"source":"iana","extensions":["ntf","nitf"]},"application/vnd.noblenet-directory":{"source":"iana","extensions":["nnd"]},"application/vnd.noblenet-sealer":{"source":"iana","extensions":["nns"]},"application/vnd.noblenet-web":{"source":"iana","extensions":["nnw"]},"application/vnd.nokia.catalogs":{"source":"iana"},"application/vnd.nokia.conml+wbxml":{"source":"iana"},"application/vnd.nokia.conml+xml":{"source":"iana","compressible":true},"application/vnd.nokia.iptv.config+xml":{"source":"iana","compressible":true},"application/vnd.nokia.isds-radio-presets":{"source":"iana"},"application/vnd.nokia.landmark+wbxml":{"source":"iana"},"application/vnd.nokia.landmark+xml":{"source":"iana","compressible":true},"application/vnd.nokia.landmarkcollection+xml":{"source":"iana","compressible":true},"application/vnd.nokia.n-gage.ac+xml":{"source":"iana","compressible":true,"extensions":["ac"]},"application/vnd.nokia.n-gage.data":{"source":"iana","extensions":["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{"source":"iana","extensions":["n-gage"]},"application/vnd.nokia.ncd":{"source":"iana"},"application/vnd.nokia.pcd+wbxml":{"source":"iana"},"application/vnd.nokia.pcd+xml":{"source":"iana","compressible":true},"application/vnd.nokia.radio-preset":{"source":"iana","extensions":["rpst"]},"application/vnd.nokia.radio-presets":{"source":"iana","extensions":["rpss"]},"application/vnd.novadigm.edm":{"source":"iana","extensions":["edm"]},"application/vnd.novadigm.edx":{"source":"iana","extensions":["edx"]},"application/vnd.novadigm.ext":{"source":"iana","extensions":["ext"]},"application/vnd.ntt-local.content-share":{"source":"iana"},"application/vnd.ntt-local.file-transfer":{"source":"iana"},"application/vnd.ntt-local.ogw_remote-access":{"source":"iana"},"application/vnd.ntt-local.sip-ta_remote":{"source":"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{"source":"iana"},"application/vnd.oasis.opendocument.chart":{"source":"iana","extensions":["odc"]},"application/vnd.oasis.opendocument.chart-template":{"source":"iana","extensions":["otc"]},"application/vnd.oasis.opendocument.database":{"source":"iana","extensions":["odb"]},"application/vnd.oasis.opendocument.formula":{"source":"iana","extensions":["odf"]},"application/vnd.oasis.opendocument.formula-template":{"source":"iana","extensions":["odft"]},"application/vnd.oasis.opendocument.graphics":{"source":"iana","compressible":false,"extensions":["odg"]},"application/vnd.oasis.opendocument.graphics-template":{"source":"iana","extensions":["otg"]},"application/vnd.oasis.opendocument.image":{"source":"iana","extensions":["odi"]},"application/vnd.oasis.opendocument.image-template":{"source":"iana","extensions":["oti"]},"application/vnd.oasis.opendocument.presentation":{"source":"iana","compressible":false,"extensions":["odp"]},"application/vnd.oasis.opendocument.presentation-template":{"source":"iana","extensions":["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{"source":"iana","compressible":false,"extensions":["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{"source":"iana","extensions":["ots"]},"application/vnd.oasis.opendocument.text":{"source":"iana","compressible":false,"extensions":["odt"]},"application/vnd.oasis.opendocument.text-master":{"source":"iana","extensions":["odm"]},"application/vnd.oasis.opendocument.text-template":{"source":"iana","extensions":["ott"]},"application/vnd.oasis.opendocument.text-web":{"source":"iana","extensions":["oth"]},"application/vnd.obn":{"source":"iana"},"application/vnd.ocf+cbor":{"source":"iana"},"application/vnd.oci.image.manifest.v1+json":{"source":"iana","compressible":true},"application/vnd.oftn.l10n+json":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessdownload+xml":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessstreaming+xml":{"source":"iana","compressible":true},"application/vnd.oipf.cspg-hexbinary":{"source":"iana"},"application/vnd.oipf.dae.svg+xml":{"source":"iana","compressible":true},"application/vnd.oipf.dae.xhtml+xml":{"source":"iana","compressible":true},"application/vnd.oipf.mippvcontrolmessage+xml":{"source":"iana","compressible":true},"application/vnd.oipf.pae.gem":{"source":"iana"},"application/vnd.oipf.spdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.oipf.spdlist+xml":{"source":"iana","compressible":true},"application/vnd.oipf.ueprofile+xml":{"source":"iana","compressible":true},"application/vnd.oipf.userprofile+xml":{"source":"iana","compressible":true},"application/vnd.olpc-sugar":{"source":"iana","extensions":["xo"]},"application/vnd.oma-scws-config":{"source":"iana"},"application/vnd.oma-scws-http-request":{"source":"iana"},"application/vnd.oma-scws-http-response":{"source":"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.drm-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.imd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.ltkm":{"source":"iana"},"application/vnd.oma.bcast.notification+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.provisioningtrigger":{"source":"iana"},"application/vnd.oma.bcast.sgboot":{"source":"iana"},"application/vnd.oma.bcast.sgdd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sgdu":{"source":"iana"},"application/vnd.oma.bcast.simple-symbol-container":{"source":"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sprov+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.stkm":{"source":"iana"},"application/vnd.oma.cab-address-book+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-feature-handler+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-pcc+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-subs-invite+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-user-prefs+xml":{"source":"iana","compressible":true},"application/vnd.oma.dcd":{"source":"iana"},"application/vnd.oma.dcdc":{"source":"iana"},"application/vnd.oma.dd2+xml":{"source":"iana","compressible":true,"extensions":["dd2"]},"application/vnd.oma.drm.risd+xml":{"source":"iana","compressible":true},"application/vnd.oma.group-usage-list+xml":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+cbor":{"source":"iana"},"application/vnd.oma.lwm2m+json":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+tlv":{"source":"iana"},"application/vnd.oma.pal+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.detailed-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.final-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.groups+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.invocation-descriptor+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.optimized-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.push":{"source":"iana"},"application/vnd.oma.scidm.messages+xml":{"source":"iana","compressible":true},"application/vnd.oma.xcap-directory+xml":{"source":"iana","compressible":true},"application/vnd.omads-email+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-file+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-folder+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omaloc-supl-init":{"source":"iana"},"application/vnd.onepager":{"source":"iana"},"application/vnd.onepagertamp":{"source":"iana"},"application/vnd.onepagertamx":{"source":"iana"},"application/vnd.onepagertat":{"source":"iana"},"application/vnd.onepagertatp":{"source":"iana"},"application/vnd.onepagertatx":{"source":"iana"},"application/vnd.openblox.game+xml":{"source":"iana","compressible":true,"extensions":["obgx"]},"application/vnd.openblox.game-binary":{"source":"iana"},"application/vnd.openeye.oeb":{"source":"iana"},"application/vnd.openofficeorg.extension":{"source":"apache","extensions":["oxt"]},"application/vnd.openstreetmap.data+xml":{"source":"iana","compressible":true,"extensions":["osm"]},"application/vnd.opentimestamps.ots":{"source":"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawing+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{"source":"iana","compressible":false,"extensions":["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slide":{"source":"iana","extensions":["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{"source":"iana","extensions":["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.template":{"source":"iana","extensions":["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{"source":"iana","compressible":false,"extensions":["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{"source":"iana","extensions":["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.theme+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.vmldrawing":{"source":"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{"source":"iana","compressible":false,"extensions":["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{"source":"iana","extensions":["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.core-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.relationships+xml":{"source":"iana","compressible":true},"application/vnd.oracle.resource+json":{"source":"iana","compressible":true},"application/vnd.orange.indata":{"source":"iana"},"application/vnd.osa.netdeploy":{"source":"iana"},"application/vnd.osgeo.mapguide.package":{"source":"iana","extensions":["mgp"]},"application/vnd.osgi.bundle":{"source":"iana"},"application/vnd.osgi.dp":{"source":"iana","extensions":["dp"]},"application/vnd.osgi.subsystem":{"source":"iana","extensions":["esa"]},"application/vnd.otps.ct-kip+xml":{"source":"iana","compressible":true},"application/vnd.oxli.countgraph":{"source":"iana"},"application/vnd.pagerduty+json":{"source":"iana","compressible":true},"application/vnd.palm":{"source":"iana","extensions":["pdb","pqa","oprc"]},"application/vnd.panoply":{"source":"iana"},"application/vnd.paos.xml":{"source":"iana"},"application/vnd.patentdive":{"source":"iana"},"application/vnd.patientecommsdoc":{"source":"iana"},"application/vnd.pawaafile":{"source":"iana","extensions":["paw"]},"application/vnd.pcos":{"source":"iana"},"application/vnd.pg.format":{"source":"iana","extensions":["str"]},"application/vnd.pg.osasli":{"source":"iana","extensions":["ei6"]},"application/vnd.piaccess.application-licence":{"source":"iana"},"application/vnd.picsel":{"source":"iana","extensions":["efif"]},"application/vnd.pmi.widget":{"source":"iana","extensions":["wg"]},"application/vnd.poc.group-advertisement+xml":{"source":"iana","compressible":true},"application/vnd.pocketlearn":{"source":"iana","extensions":["plf"]},"application/vnd.powerbuilder6":{"source":"iana","extensions":["pbd"]},"application/vnd.powerbuilder6-s":{"source":"iana"},"application/vnd.powerbuilder7":{"source":"iana"},"application/vnd.powerbuilder7-s":{"source":"iana"},"application/vnd.powerbuilder75":{"source":"iana"},"application/vnd.powerbuilder75-s":{"source":"iana"},"application/vnd.preminet":{"source":"iana"},"application/vnd.previewsystems.box":{"source":"iana","extensions":["box"]},"application/vnd.proteus.magazine":{"source":"iana","extensions":["mgz"]},"application/vnd.psfs":{"source":"iana"},"application/vnd.publishare-delta-tree":{"source":"iana","extensions":["qps"]},"application/vnd.pvi.ptid1":{"source":"iana","extensions":["ptid"]},"application/vnd.pwg-multiplexed":{"source":"iana"},"application/vnd.pwg-xhtml-print+xml":{"source":"iana","compressible":true},"application/vnd.qualcomm.brew-app-res":{"source":"iana"},"application/vnd.quarantainenet":{"source":"iana"},"application/vnd.quark.quarkxpress":{"source":"iana","extensions":["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{"source":"iana"},"application/vnd.radisys.moml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conn+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-stream+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-base+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-detect+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-group+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-speech+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-transform+xml":{"source":"iana","compressible":true},"application/vnd.rainstor.data":{"source":"iana"},"application/vnd.rapid":{"source":"iana"},"application/vnd.rar":{"source":"iana","extensions":["rar"]},"application/vnd.realvnc.bed":{"source":"iana","extensions":["bed"]},"application/vnd.recordare.musicxml":{"source":"iana","extensions":["mxl"]},"application/vnd.recordare.musicxml+xml":{"source":"iana","compressible":true,"extensions":["musicxml"]},"application/vnd.renlearn.rlprint":{"source":"iana"},"application/vnd.resilient.logic":{"source":"iana"},"application/vnd.restful+json":{"source":"iana","compressible":true},"application/vnd.rig.cryptonote":{"source":"iana","extensions":["cryptonote"]},"application/vnd.rim.cod":{"source":"apache","extensions":["cod"]},"application/vnd.rn-realmedia":{"source":"apache","extensions":["rm"]},"application/vnd.rn-realmedia-vbr":{"source":"apache","extensions":["rmvb"]},"application/vnd.route66.link66+xml":{"source":"iana","compressible":true,"extensions":["link66"]},"application/vnd.rs-274x":{"source":"iana"},"application/vnd.ruckus.download":{"source":"iana"},"application/vnd.s3sms":{"source":"iana"},"application/vnd.sailingtracker.track":{"source":"iana","extensions":["st"]},"application/vnd.sar":{"source":"iana"},"application/vnd.sbm.cid":{"source":"iana"},"application/vnd.sbm.mid2":{"source":"iana"},"application/vnd.scribus":{"source":"iana"},"application/vnd.sealed.3df":{"source":"iana"},"application/vnd.sealed.csf":{"source":"iana"},"application/vnd.sealed.doc":{"source":"iana"},"application/vnd.sealed.eml":{"source":"iana"},"application/vnd.sealed.mht":{"source":"iana"},"application/vnd.sealed.net":{"source":"iana"},"application/vnd.sealed.ppt":{"source":"iana"},"application/vnd.sealed.tiff":{"source":"iana"},"application/vnd.sealed.xls":{"source":"iana"},"application/vnd.sealedmedia.softseal.html":{"source":"iana"},"application/vnd.sealedmedia.softseal.pdf":{"source":"iana"},"application/vnd.seemail":{"source":"iana","extensions":["see"]},"application/vnd.seis+json":{"source":"iana","compressible":true},"application/vnd.sema":{"source":"iana","extensions":["sema"]},"application/vnd.semd":{"source":"iana","extensions":["semd"]},"application/vnd.semf":{"source":"iana","extensions":["semf"]},"application/vnd.shade-save-file":{"source":"iana"},"application/vnd.shana.informed.formdata":{"source":"iana","extensions":["ifm"]},"application/vnd.shana.informed.formtemplate":{"source":"iana","extensions":["itp"]},"application/vnd.shana.informed.interchange":{"source":"iana","extensions":["iif"]},"application/vnd.shana.informed.package":{"source":"iana","extensions":["ipk"]},"application/vnd.shootproof+json":{"source":"iana","compressible":true},"application/vnd.shopkick+json":{"source":"iana","compressible":true},"application/vnd.shp":{"source":"iana"},"application/vnd.shx":{"source":"iana"},"application/vnd.sigrok.session":{"source":"iana"},"application/vnd.simtech-mindmapper":{"source":"iana","extensions":["twd","twds"]},"application/vnd.siren+json":{"source":"iana","compressible":true},"application/vnd.smaf":{"source":"iana","extensions":["mmf"]},"application/vnd.smart.notebook":{"source":"iana"},"application/vnd.smart.teacher":{"source":"iana","extensions":["teacher"]},"application/vnd.snesdev-page-table":{"source":"iana"},"application/vnd.software602.filler.form+xml":{"source":"iana","compressible":true,"extensions":["fo"]},"application/vnd.software602.filler.form-xml-zip":{"source":"iana"},"application/vnd.solent.sdkm+xml":{"source":"iana","compressible":true,"extensions":["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{"source":"iana","extensions":["dxp"]},"application/vnd.spotfire.sfs":{"source":"iana","extensions":["sfs"]},"application/vnd.sqlite3":{"source":"iana"},"application/vnd.sss-cod":{"source":"iana"},"application/vnd.sss-dtf":{"source":"iana"},"application/vnd.sss-ntf":{"source":"iana"},"application/vnd.stardivision.calc":{"source":"apache","extensions":["sdc"]},"application/vnd.stardivision.draw":{"source":"apache","extensions":["sda"]},"application/vnd.stardivision.impress":{"source":"apache","extensions":["sdd"]},"application/vnd.stardivision.math":{"source":"apache","extensions":["smf"]},"application/vnd.stardivision.writer":{"source":"apache","extensions":["sdw","vor"]},"application/vnd.stardivision.writer-global":{"source":"apache","extensions":["sgl"]},"application/vnd.stepmania.package":{"source":"iana","extensions":["smzip"]},"application/vnd.stepmania.stepchart":{"source":"iana","extensions":["sm"]},"application/vnd.street-stream":{"source":"iana"},"application/vnd.sun.wadl+xml":{"source":"iana","compressible":true,"extensions":["wadl"]},"application/vnd.sun.xml.calc":{"source":"apache","extensions":["sxc"]},"application/vnd.sun.xml.calc.template":{"source":"apache","extensions":["stc"]},"application/vnd.sun.xml.draw":{"source":"apache","extensions":["sxd"]},"application/vnd.sun.xml.draw.template":{"source":"apache","extensions":["std"]},"application/vnd.sun.xml.impress":{"source":"apache","extensions":["sxi"]},"application/vnd.sun.xml.impress.template":{"source":"apache","extensions":["sti"]},"application/vnd.sun.xml.math":{"source":"apache","extensions":["sxm"]},"application/vnd.sun.xml.writer":{"source":"apache","extensions":["sxw"]},"application/vnd.sun.xml.writer.global":{"source":"apache","extensions":["sxg"]},"application/vnd.sun.xml.writer.template":{"source":"apache","extensions":["stw"]},"application/vnd.sus-calendar":{"source":"iana","extensions":["sus","susp"]},"application/vnd.svd":{"source":"iana","extensions":["svd"]},"application/vnd.swiftview-ics":{"source":"iana"},"application/vnd.sycle+xml":{"source":"iana","compressible":true},"application/vnd.syft+json":{"source":"iana","compressible":true},"application/vnd.symbian.install":{"source":"apache","extensions":["sis","sisx"]},"application/vnd.syncml+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xsm"]},"application/vnd.syncml.dm+wbxml":{"source":"iana","charset":"UTF-8","extensions":["bdm"]},"application/vnd.syncml.dm+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xdm"]},"application/vnd.syncml.dm.notification":{"source":"iana"},"application/vnd.syncml.dmddf+wbxml":{"source":"iana"},"application/vnd.syncml.dmddf+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{"source":"iana"},"application/vnd.syncml.dmtnds+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.syncml.ds.notification":{"source":"iana"},"application/vnd.tableschema+json":{"source":"iana","compressible":true},"application/vnd.tao.intent-module-archive":{"source":"iana","extensions":["tao"]},"application/vnd.tcpdump.pcap":{"source":"iana","extensions":["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{"source":"iana","compressible":true},"application/vnd.tmd.mediaflex.api+xml":{"source":"iana","compressible":true},"application/vnd.tml":{"source":"iana"},"application/vnd.tmobile-livetv":{"source":"iana","extensions":["tmo"]},"application/vnd.tri.onesource":{"source":"iana"},"application/vnd.trid.tpt":{"source":"iana","extensions":["tpt"]},"application/vnd.triscape.mxs":{"source":"iana","extensions":["mxs"]},"application/vnd.trueapp":{"source":"iana","extensions":["tra"]},"application/vnd.truedoc":{"source":"iana"},"application/vnd.ubisoft.webplayer":{"source":"iana"},"application/vnd.ufdl":{"source":"iana","extensions":["ufd","ufdl"]},"application/vnd.uiq.theme":{"source":"iana","extensions":["utz"]},"application/vnd.umajin":{"source":"iana","extensions":["umj"]},"application/vnd.unity":{"source":"iana","extensions":["unityweb"]},"application/vnd.uoml+xml":{"source":"iana","compressible":true,"extensions":["uoml"]},"application/vnd.uplanet.alert":{"source":"iana"},"application/vnd.uplanet.alert-wbxml":{"source":"iana"},"application/vnd.uplanet.bearer-choice":{"source":"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{"source":"iana"},"application/vnd.uplanet.cacheop":{"source":"iana"},"application/vnd.uplanet.cacheop-wbxml":{"source":"iana"},"application/vnd.uplanet.channel":{"source":"iana"},"application/vnd.uplanet.channel-wbxml":{"source":"iana"},"application/vnd.uplanet.list":{"source":"iana"},"application/vnd.uplanet.list-wbxml":{"source":"iana"},"application/vnd.uplanet.listcmd":{"source":"iana"},"application/vnd.uplanet.listcmd-wbxml":{"source":"iana"},"application/vnd.uplanet.signal":{"source":"iana"},"application/vnd.uri-map":{"source":"iana"},"application/vnd.valve.source.material":{"source":"iana"},"application/vnd.vcx":{"source":"iana","extensions":["vcx"]},"application/vnd.vd-study":{"source":"iana"},"application/vnd.vectorworks":{"source":"iana"},"application/vnd.vel+json":{"source":"iana","compressible":true},"application/vnd.verimatrix.vcas":{"source":"iana"},"application/vnd.veritone.aion+json":{"source":"iana","compressible":true},"application/vnd.veryant.thin":{"source":"iana"},"application/vnd.ves.encrypted":{"source":"iana"},"application/vnd.vidsoft.vidconference":{"source":"iana"},"application/vnd.visio":{"source":"iana","extensions":["vsd","vst","vss","vsw"]},"application/vnd.visionary":{"source":"iana","extensions":["vis"]},"application/vnd.vividence.scriptfile":{"source":"iana"},"application/vnd.vsf":{"source":"iana","extensions":["vsf"]},"application/vnd.wap.sic":{"source":"iana"},"application/vnd.wap.slc":{"source":"iana"},"application/vnd.wap.wbxml":{"source":"iana","charset":"UTF-8","extensions":["wbxml"]},"application/vnd.wap.wmlc":{"source":"iana","extensions":["wmlc"]},"application/vnd.wap.wmlscriptc":{"source":"iana","extensions":["wmlsc"]},"application/vnd.webturbo":{"source":"iana","extensions":["wtb"]},"application/vnd.wfa.dpp":{"source":"iana"},"application/vnd.wfa.p2p":{"source":"iana"},"application/vnd.wfa.wsc":{"source":"iana"},"application/vnd.windows.devicepairing":{"source":"iana"},"application/vnd.wmc":{"source":"iana"},"application/vnd.wmf.bootstrap":{"source":"iana"},"application/vnd.wolfram.mathematica":{"source":"iana"},"application/vnd.wolfram.mathematica.package":{"source":"iana"},"application/vnd.wolfram.player":{"source":"iana","extensions":["nbp"]},"application/vnd.wordperfect":{"source":"iana","extensions":["wpd"]},"application/vnd.wqd":{"source":"iana","extensions":["wqd"]},"application/vnd.wrq-hp3000-labelled":{"source":"iana"},"application/vnd.wt.stf":{"source":"iana","extensions":["stf"]},"application/vnd.wv.csp+wbxml":{"source":"iana"},"application/vnd.wv.csp+xml":{"source":"iana","compressible":true},"application/vnd.wv.ssp+xml":{"source":"iana","compressible":true},"application/vnd.xacml+json":{"source":"iana","compressible":true},"application/vnd.xara":{"source":"iana","extensions":["xar"]},"application/vnd.xfdl":{"source":"iana","extensions":["xfdl"]},"application/vnd.xfdl.webform":{"source":"iana"},"application/vnd.xmi+xml":{"source":"iana","compressible":true},"application/vnd.xmpie.cpkg":{"source":"iana"},"application/vnd.xmpie.dpkg":{"source":"iana"},"application/vnd.xmpie.plan":{"source":"iana"},"application/vnd.xmpie.ppkg":{"source":"iana"},"application/vnd.xmpie.xlim":{"source":"iana"},"application/vnd.yamaha.hv-dic":{"source":"iana","extensions":["hvd"]},"application/vnd.yamaha.hv-script":{"source":"iana","extensions":["hvs"]},"application/vnd.yamaha.hv-voice":{"source":"iana","extensions":["hvp"]},"application/vnd.yamaha.openscoreformat":{"source":"iana","extensions":["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{"source":"iana","compressible":true,"extensions":["osfpvg"]},"application/vnd.yamaha.remote-setup":{"source":"iana"},"application/vnd.yamaha.smaf-audio":{"source":"iana","extensions":["saf"]},"application/vnd.yamaha.smaf-phrase":{"source":"iana","extensions":["spf"]},"application/vnd.yamaha.through-ngn":{"source":"iana"},"application/vnd.yamaha.tunnel-udpencap":{"source":"iana"},"application/vnd.yaoweme":{"source":"iana"},"application/vnd.yellowriver-custom-menu":{"source":"iana","extensions":["cmp"]},"application/vnd.youtube.yt":{"source":"iana"},"application/vnd.zul":{"source":"iana","extensions":["zir","zirz"]},"application/vnd.zzazz.deck+xml":{"source":"iana","compressible":true,"extensions":["zaz"]},"application/voicexml+xml":{"source":"iana","compressible":true,"extensions":["vxml"]},"application/voucher-cms+json":{"source":"iana","compressible":true},"application/vq-rtcpxr":{"source":"iana"},"application/wasm":{"source":"iana","compressible":true,"extensions":["wasm"]},"application/watcherinfo+xml":{"source":"iana","compressible":true,"extensions":["wif"]},"application/webpush-options+json":{"source":"iana","compressible":true},"application/whoispp-query":{"source":"iana"},"application/whoispp-response":{"source":"iana"},"application/widget":{"source":"iana","extensions":["wgt"]},"application/winhlp":{"source":"apache","extensions":["hlp"]},"application/wita":{"source":"iana"},"application/wordperfect5.1":{"source":"iana"},"application/wsdl+xml":{"source":"iana","compressible":true,"extensions":["wsdl"]},"application/wspolicy+xml":{"source":"iana","compressible":true,"extensions":["wspolicy"]},"application/x-7z-compressed":{"source":"apache","compressible":false,"extensions":["7z"]},"application/x-abiword":{"source":"apache","extensions":["abw"]},"application/x-ace-compressed":{"source":"apache","extensions":["ace"]},"application/x-amf":{"source":"apache"},"application/x-apple-diskimage":{"source":"apache","extensions":["dmg"]},"application/x-arj":{"compressible":false,"extensions":["arj"]},"application/x-authorware-bin":{"source":"apache","extensions":["aab","x32","u32","vox"]},"application/x-authorware-map":{"source":"apache","extensions":["aam"]},"application/x-authorware-seg":{"source":"apache","extensions":["aas"]},"application/x-bcpio":{"source":"apache","extensions":["bcpio"]},"application/x-bdoc":{"compressible":false,"extensions":["bdoc"]},"application/x-bittorrent":{"source":"apache","extensions":["torrent"]},"application/x-blorb":{"source":"apache","extensions":["blb","blorb"]},"application/x-bzip":{"source":"apache","compressible":false,"extensions":["bz"]},"application/x-bzip2":{"source":"apache","compressible":false,"extensions":["bz2","boz"]},"application/x-cbr":{"source":"apache","extensions":["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{"source":"apache","extensions":["vcd"]},"application/x-cfs-compressed":{"source":"apache","extensions":["cfs"]},"application/x-chat":{"source":"apache","extensions":["chat"]},"application/x-chess-pgn":{"source":"apache","extensions":["pgn"]},"application/x-chrome-extension":{"extensions":["crx"]},"application/x-cocoa":{"source":"nginx","extensions":["cco"]},"application/x-compress":{"source":"apache"},"application/x-conference":{"source":"apache","extensions":["nsc"]},"application/x-cpio":{"source":"apache","extensions":["cpio"]},"application/x-csh":{"source":"apache","extensions":["csh"]},"application/x-deb":{"compressible":false},"application/x-debian-package":{"source":"apache","extensions":["deb","udeb"]},"application/x-dgc-compressed":{"source":"apache","extensions":["dgc"]},"application/x-director":{"source":"apache","extensions":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{"source":"apache","extensions":["wad"]},"application/x-dtbncx+xml":{"source":"apache","compressible":true,"extensions":["ncx"]},"application/x-dtbook+xml":{"source":"apache","compressible":true,"extensions":["dtb"]},"application/x-dtbresource+xml":{"source":"apache","compressible":true,"extensions":["res"]},"application/x-dvi":{"source":"apache","compressible":false,"extensions":["dvi"]},"application/x-envoy":{"source":"apache","extensions":["evy"]},"application/x-eva":{"source":"apache","extensions":["eva"]},"application/x-font-bdf":{"source":"apache","extensions":["bdf"]},"application/x-font-dos":{"source":"apache"},"application/x-font-framemaker":{"source":"apache"},"application/x-font-ghostscript":{"source":"apache","extensions":["gsf"]},"application/x-font-libgrx":{"source":"apache"},"application/x-font-linux-psf":{"source":"apache","extensions":["psf"]},"application/x-font-pcf":{"source":"apache","extensions":["pcf"]},"application/x-font-snf":{"source":"apache","extensions":["snf"]},"application/x-font-speedo":{"source":"apache"},"application/x-font-sunos-news":{"source":"apache"},"application/x-font-type1":{"source":"apache","extensions":["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{"source":"apache"},"application/x-freearc":{"source":"apache","extensions":["arc"]},"application/x-futuresplash":{"source":"apache","extensions":["spl"]},"application/x-gca-compressed":{"source":"apache","extensions":["gca"]},"application/x-glulx":{"source":"apache","extensions":["ulx"]},"application/x-gnumeric":{"source":"apache","extensions":["gnumeric"]},"application/x-gramps-xml":{"source":"apache","extensions":["gramps"]},"application/x-gtar":{"source":"apache","extensions":["gtar"]},"application/x-gzip":{"source":"apache"},"application/x-hdf":{"source":"apache","extensions":["hdf"]},"application/x-httpd-php":{"compressible":true,"extensions":["php"]},"application/x-install-instructions":{"source":"apache","extensions":["install"]},"application/x-iso9660-image":{"source":"apache","extensions":["iso"]},"application/x-iwork-keynote-sffkey":{"extensions":["key"]},"application/x-iwork-numbers-sffnumbers":{"extensions":["numbers"]},"application/x-iwork-pages-sffpages":{"extensions":["pages"]},"application/x-java-archive-diff":{"source":"nginx","extensions":["jardiff"]},"application/x-java-jnlp-file":{"source":"apache","compressible":false,"extensions":["jnlp"]},"application/x-javascript":{"compressible":true},"application/x-keepass2":{"extensions":["kdbx"]},"application/x-latex":{"source":"apache","compressible":false,"extensions":["latex"]},"application/x-lua-bytecode":{"extensions":["luac"]},"application/x-lzh-compressed":{"source":"apache","extensions":["lzh","lha"]},"application/x-makeself":{"source":"nginx","extensions":["run"]},"application/x-mie":{"source":"apache","extensions":["mie"]},"application/x-mobipocket-ebook":{"source":"apache","extensions":["prc","mobi"]},"application/x-mpegurl":{"compressible":false},"application/x-ms-application":{"source":"apache","extensions":["application"]},"application/x-ms-shortcut":{"source":"apache","extensions":["lnk"]},"application/x-ms-wmd":{"source":"apache","extensions":["wmd"]},"application/x-ms-wmz":{"source":"apache","extensions":["wmz"]},"application/x-ms-xbap":{"source":"apache","extensions":["xbap"]},"application/x-msaccess":{"source":"apache","extensions":["mdb"]},"application/x-msbinder":{"source":"apache","extensions":["obd"]},"application/x-mscardfile":{"source":"apache","extensions":["crd"]},"application/x-msclip":{"source":"apache","extensions":["clp"]},"application/x-msdos-program":{"extensions":["exe"]},"application/x-msdownload":{"source":"apache","extensions":["exe","dll","com","bat","msi"]},"application/x-msmediaview":{"source":"apache","extensions":["mvb","m13","m14"]},"application/x-msmetafile":{"source":"apache","extensions":["wmf","wmz","emf","emz"]},"application/x-msmoney":{"source":"apache","extensions":["mny"]},"application/x-mspublisher":{"source":"apache","extensions":["pub"]},"application/x-msschedule":{"source":"apache","extensions":["scd"]},"application/x-msterminal":{"source":"apache","extensions":["trm"]},"application/x-mswrite":{"source":"apache","extensions":["wri"]},"application/x-netcdf":{"source":"apache","extensions":["nc","cdf"]},"application/x-ns-proxy-autoconfig":{"compressible":true,"extensions":["pac"]},"application/x-nzb":{"source":"apache","extensions":["nzb"]},"application/x-perl":{"source":"nginx","extensions":["pl","pm"]},"application/x-pilot":{"source":"nginx","extensions":["prc","pdb"]},"application/x-pkcs12":{"source":"apache","compressible":false,"extensions":["p12","pfx"]},"application/x-pkcs7-certificates":{"source":"apache","extensions":["p7b","spc"]},"application/x-pkcs7-certreqresp":{"source":"apache","extensions":["p7r"]},"application/x-pki-message":{"source":"iana"},"application/x-rar-compressed":{"source":"apache","compressible":false,"extensions":["rar"]},"application/x-redhat-package-manager":{"source":"nginx","extensions":["rpm"]},"application/x-research-info-systems":{"source":"apache","extensions":["ris"]},"application/x-sea":{"source":"nginx","extensions":["sea"]},"application/x-sh":{"source":"apache","compressible":true,"extensions":["sh"]},"application/x-shar":{"source":"apache","extensions":["shar"]},"application/x-shockwave-flash":{"source":"apache","compressible":false,"extensions":["swf"]},"application/x-silverlight-app":{"source":"apache","extensions":["xap"]},"application/x-sql":{"source":"apache","extensions":["sql"]},"application/x-stuffit":{"source":"apache","compressible":false,"extensions":["sit"]},"application/x-stuffitx":{"source":"apache","extensions":["sitx"]},"application/x-subrip":{"source":"apache","extensions":["srt"]},"application/x-sv4cpio":{"source":"apache","extensions":["sv4cpio"]},"application/x-sv4crc":{"source":"apache","extensions":["sv4crc"]},"application/x-t3vm-image":{"source":"apache","extensions":["t3"]},"application/x-tads":{"source":"apache","extensions":["gam"]},"application/x-tar":{"source":"apache","compressible":true,"extensions":["tar"]},"application/x-tcl":{"source":"apache","extensions":["tcl","tk"]},"application/x-tex":{"source":"apache","extensions":["tex"]},"application/x-tex-tfm":{"source":"apache","extensions":["tfm"]},"application/x-texinfo":{"source":"apache","extensions":["texinfo","texi"]},"application/x-tgif":{"source":"apache","extensions":["obj"]},"application/x-ustar":{"source":"apache","extensions":["ustar"]},"application/x-virtualbox-hdd":{"compressible":true,"extensions":["hdd"]},"application/x-virtualbox-ova":{"compressible":true,"extensions":["ova"]},"application/x-virtualbox-ovf":{"compressible":true,"extensions":["ovf"]},"application/x-virtualbox-vbox":{"compressible":true,"extensions":["vbox"]},"application/x-virtualbox-vbox-extpack":{"compressible":false,"extensions":["vbox-extpack"]},"application/x-virtualbox-vdi":{"compressible":true,"extensions":["vdi"]},"application/x-virtualbox-vhd":{"compressible":true,"extensions":["vhd"]},"application/x-virtualbox-vmdk":{"compressible":true,"extensions":["vmdk"]},"application/x-wais-source":{"source":"apache","extensions":["src"]},"application/x-web-app-manifest+json":{"compressible":true,"extensions":["webapp"]},"application/x-www-form-urlencoded":{"source":"iana","compressible":true},"application/x-x509-ca-cert":{"source":"iana","extensions":["der","crt","pem"]},"application/x-x509-ca-ra-cert":{"source":"iana"},"application/x-x509-next-ca-cert":{"source":"iana"},"application/x-xfig":{"source":"apache","extensions":["fig"]},"application/x-xliff+xml":{"source":"apache","compressible":true,"extensions":["xlf"]},"application/x-xpinstall":{"source":"apache","compressible":false,"extensions":["xpi"]},"application/x-xz":{"source":"apache","extensions":["xz"]},"application/x-zmachine":{"source":"apache","extensions":["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{"source":"iana"},"application/xacml+xml":{"source":"iana","compressible":true},"application/xaml+xml":{"source":"apache","compressible":true,"extensions":["xaml"]},"application/xcap-att+xml":{"source":"iana","compressible":true,"extensions":["xav"]},"application/xcap-caps+xml":{"source":"iana","compressible":true,"extensions":["xca"]},"application/xcap-diff+xml":{"source":"iana","compressible":true,"extensions":["xdf"]},"application/xcap-el+xml":{"source":"iana","compressible":true,"extensions":["xel"]},"application/xcap-error+xml":{"source":"iana","compressible":true},"application/xcap-ns+xml":{"source":"iana","compressible":true,"extensions":["xns"]},"application/xcon-conference-info+xml":{"source":"iana","compressible":true},"application/xcon-conference-info-diff+xml":{"source":"iana","compressible":true},"application/xenc+xml":{"source":"iana","compressible":true,"extensions":["xenc"]},"application/xhtml+xml":{"source":"iana","compressible":true,"extensions":["xhtml","xht"]},"application/xhtml-voice+xml":{"source":"apache","compressible":true},"application/xliff+xml":{"source":"iana","compressible":true,"extensions":["xlf"]},"application/xml":{"source":"iana","compressible":true,"extensions":["xml","xsl","xsd","rng"]},"application/xml-dtd":{"source":"iana","compressible":true,"extensions":["dtd"]},"application/xml-external-parsed-entity":{"source":"iana"},"application/xml-patch+xml":{"source":"iana","compressible":true},"application/xmpp+xml":{"source":"iana","compressible":true},"application/xop+xml":{"source":"iana","compressible":true,"extensions":["xop"]},"application/xproc+xml":{"source":"apache","compressible":true,"extensions":["xpl"]},"application/xslt+xml":{"source":"iana","compressible":true,"extensions":["xsl","xslt"]},"application/xspf+xml":{"source":"apache","compressible":true,"extensions":["xspf"]},"application/xv+xml":{"source":"iana","compressible":true,"extensions":["mxml","xhvml","xvml","xvm"]},"application/yang":{"source":"iana","extensions":["yang"]},"application/yang-data+json":{"source":"iana","compressible":true},"application/yang-data+xml":{"source":"iana","compressible":true},"application/yang-patch+json":{"source":"iana","compressible":true},"application/yang-patch+xml":{"source":"iana","compressible":true},"application/yin+xml":{"source":"iana","compressible":true,"extensions":["yin"]},"application/zip":{"source":"iana","compressible":false,"extensions":["zip"]},"application/zlib":{"source":"iana"},"application/zstd":{"source":"iana"},"audio/1d-interleaved-parityfec":{"source":"iana"},"audio/32kadpcm":{"source":"iana"},"audio/3gpp":{"source":"iana","compressible":false,"extensions":["3gpp"]},"audio/3gpp2":{"source":"iana"},"audio/aac":{"source":"iana"},"audio/ac3":{"source":"iana"},"audio/adpcm":{"source":"apache","extensions":["adp"]},"audio/amr":{"source":"iana","extensions":["amr"]},"audio/amr-wb":{"source":"iana"},"audio/amr-wb+":{"source":"iana"},"audio/aptx":{"source":"iana"},"audio/asc":{"source":"iana"},"audio/atrac-advanced-lossless":{"source":"iana"},"audio/atrac-x":{"source":"iana"},"audio/atrac3":{"source":"iana"},"audio/basic":{"source":"iana","compressible":false,"extensions":["au","snd"]},"audio/bv16":{"source":"iana"},"audio/bv32":{"source":"iana"},"audio/clearmode":{"source":"iana"},"audio/cn":{"source":"iana"},"audio/dat12":{"source":"iana"},"audio/dls":{"source":"iana"},"audio/dsr-es201108":{"source":"iana"},"audio/dsr-es202050":{"source":"iana"},"audio/dsr-es202211":{"source":"iana"},"audio/dsr-es202212":{"source":"iana"},"audio/dv":{"source":"iana"},"audio/dvi4":{"source":"iana"},"audio/eac3":{"source":"iana"},"audio/encaprtp":{"source":"iana"},"audio/evrc":{"source":"iana"},"audio/evrc-qcp":{"source":"iana"},"audio/evrc0":{"source":"iana"},"audio/evrc1":{"source":"iana"},"audio/evrcb":{"source":"iana"},"audio/evrcb0":{"source":"iana"},"audio/evrcb1":{"source":"iana"},"audio/evrcnw":{"source":"iana"},"audio/evrcnw0":{"source":"iana"},"audio/evrcnw1":{"source":"iana"},"audio/evrcwb":{"source":"iana"},"audio/evrcwb0":{"source":"iana"},"audio/evrcwb1":{"source":"iana"},"audio/evs":{"source":"iana"},"audio/flexfec":{"source":"iana"},"audio/fwdred":{"source":"iana"},"audio/g711-0":{"source":"iana"},"audio/g719":{"source":"iana"},"audio/g722":{"source":"iana"},"audio/g7221":{"source":"iana"},"audio/g723":{"source":"iana"},"audio/g726-16":{"source":"iana"},"audio/g726-24":{"source":"iana"},"audio/g726-32":{"source":"iana"},"audio/g726-40":{"source":"iana"},"audio/g728":{"source":"iana"},"audio/g729":{"source":"iana"},"audio/g7291":{"source":"iana"},"audio/g729d":{"source":"iana"},"audio/g729e":{"source":"iana"},"audio/gsm":{"source":"iana"},"audio/gsm-efr":{"source":"iana"},"audio/gsm-hr-08":{"source":"iana"},"audio/ilbc":{"source":"iana"},"audio/ip-mr_v2.5":{"source":"iana"},"audio/isac":{"source":"apache"},"audio/l16":{"source":"iana"},"audio/l20":{"source":"iana"},"audio/l24":{"source":"iana","compressible":false},"audio/l8":{"source":"iana"},"audio/lpc":{"source":"iana"},"audio/melp":{"source":"iana"},"audio/melp1200":{"source":"iana"},"audio/melp2400":{"source":"iana"},"audio/melp600":{"source":"iana"},"audio/mhas":{"source":"iana"},"audio/midi":{"source":"apache","extensions":["mid","midi","kar","rmi"]},"audio/mobile-xmf":{"source":"iana","extensions":["mxmf"]},"audio/mp3":{"compressible":false,"extensions":["mp3"]},"audio/mp4":{"source":"iana","compressible":false,"extensions":["m4a","mp4a"]},"audio/mp4a-latm":{"source":"iana"},"audio/mpa":{"source":"iana"},"audio/mpa-robust":{"source":"iana"},"audio/mpeg":{"source":"iana","compressible":false,"extensions":["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{"source":"iana"},"audio/musepack":{"source":"apache"},"audio/ogg":{"source":"iana","compressible":false,"extensions":["oga","ogg","spx","opus"]},"audio/opus":{"source":"iana"},"audio/parityfec":{"source":"iana"},"audio/pcma":{"source":"iana"},"audio/pcma-wb":{"source":"iana"},"audio/pcmu":{"source":"iana"},"audio/pcmu-wb":{"source":"iana"},"audio/prs.sid":{"source":"iana"},"audio/qcelp":{"source":"iana"},"audio/raptorfec":{"source":"iana"},"audio/red":{"source":"iana"},"audio/rtp-enc-aescm128":{"source":"iana"},"audio/rtp-midi":{"source":"iana"},"audio/rtploopback":{"source":"iana"},"audio/rtx":{"source":"iana"},"audio/s3m":{"source":"apache","extensions":["s3m"]},"audio/scip":{"source":"iana"},"audio/silk":{"source":"apache","extensions":["sil"]},"audio/smv":{"source":"iana"},"audio/smv-qcp":{"source":"iana"},"audio/smv0":{"source":"iana"},"audio/sofa":{"source":"iana"},"audio/sp-midi":{"source":"iana"},"audio/speex":{"source":"iana"},"audio/t140c":{"source":"iana"},"audio/t38":{"source":"iana"},"audio/telephone-event":{"source":"iana"},"audio/tetra_acelp":{"source":"iana"},"audio/tetra_acelp_bb":{"source":"iana"},"audio/tone":{"source":"iana"},"audio/tsvcis":{"source":"iana"},"audio/uemclip":{"source":"iana"},"audio/ulpfec":{"source":"iana"},"audio/usac":{"source":"iana"},"audio/vdvi":{"source":"iana"},"audio/vmr-wb":{"source":"iana"},"audio/vnd.3gpp.iufp":{"source":"iana"},"audio/vnd.4sb":{"source":"iana"},"audio/vnd.audiokoz":{"source":"iana"},"audio/vnd.celp":{"source":"iana"},"audio/vnd.cisco.nse":{"source":"iana"},"audio/vnd.cmles.radio-events":{"source":"iana"},"audio/vnd.cns.anp1":{"source":"iana"},"audio/vnd.cns.inf1":{"source":"iana"},"audio/vnd.dece.audio":{"source":"iana","extensions":["uva","uvva"]},"audio/vnd.digital-winds":{"source":"iana","extensions":["eol"]},"audio/vnd.dlna.adts":{"source":"iana"},"audio/vnd.dolby.heaac.1":{"source":"iana"},"audio/vnd.dolby.heaac.2":{"source":"iana"},"audio/vnd.dolby.mlp":{"source":"iana"},"audio/vnd.dolby.mps":{"source":"iana"},"audio/vnd.dolby.pl2":{"source":"iana"},"audio/vnd.dolby.pl2x":{"source":"iana"},"audio/vnd.dolby.pl2z":{"source":"iana"},"audio/vnd.dolby.pulse.1":{"source":"iana"},"audio/vnd.dra":{"source":"iana","extensions":["dra"]},"audio/vnd.dts":{"source":"iana","extensions":["dts"]},"audio/vnd.dts.hd":{"source":"iana","extensions":["dtshd"]},"audio/vnd.dts.uhd":{"source":"iana"},"audio/vnd.dvb.file":{"source":"iana"},"audio/vnd.everad.plj":{"source":"iana"},"audio/vnd.hns.audio":{"source":"iana"},"audio/vnd.lucent.voice":{"source":"iana","extensions":["lvp"]},"audio/vnd.ms-playready.media.pya":{"source":"iana","extensions":["pya"]},"audio/vnd.nokia.mobile-xmf":{"source":"iana"},"audio/vnd.nortel.vbk":{"source":"iana"},"audio/vnd.nuera.ecelp4800":{"source":"iana","extensions":["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{"source":"iana","extensions":["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{"source":"iana","extensions":["ecelp9600"]},"audio/vnd.octel.sbc":{"source":"iana"},"audio/vnd.presonus.multitrack":{"source":"iana"},"audio/vnd.qcelp":{"source":"iana"},"audio/vnd.rhetorex.32kadpcm":{"source":"iana"},"audio/vnd.rip":{"source":"iana","extensions":["rip"]},"audio/vnd.rn-realaudio":{"compressible":false},"audio/vnd.sealedmedia.softseal.mpeg":{"source":"iana"},"audio/vnd.vmx.cvsd":{"source":"iana"},"audio/vnd.wave":{"compressible":false},"audio/vorbis":{"source":"iana","compressible":false},"audio/vorbis-config":{"source":"iana"},"audio/wav":{"compressible":false,"extensions":["wav"]},"audio/wave":{"compressible":false,"extensions":["wav"]},"audio/webm":{"source":"apache","compressible":false,"extensions":["weba"]},"audio/x-aac":{"source":"apache","compressible":false,"extensions":["aac"]},"audio/x-aiff":{"source":"apache","extensions":["aif","aiff","aifc"]},"audio/x-caf":{"source":"apache","compressible":false,"extensions":["caf"]},"audio/x-flac":{"source":"apache","extensions":["flac"]},"audio/x-m4a":{"source":"nginx","extensions":["m4a"]},"audio/x-matroska":{"source":"apache","extensions":["mka"]},"audio/x-mpegurl":{"source":"apache","extensions":["m3u"]},"audio/x-ms-wax":{"source":"apache","extensions":["wax"]},"audio/x-ms-wma":{"source":"apache","extensions":["wma"]},"audio/x-pn-realaudio":{"source":"apache","extensions":["ram","ra"]},"audio/x-pn-realaudio-plugin":{"source":"apache","extensions":["rmp"]},"audio/x-realaudio":{"source":"nginx","extensions":["ra"]},"audio/x-tta":{"source":"apache"},"audio/x-wav":{"source":"apache","extensions":["wav"]},"audio/xm":{"source":"apache","extensions":["xm"]},"chemical/x-cdx":{"source":"apache","extensions":["cdx"]},"chemical/x-cif":{"source":"apache","extensions":["cif"]},"chemical/x-cmdf":{"source":"apache","extensions":["cmdf"]},"chemical/x-cml":{"source":"apache","extensions":["cml"]},"chemical/x-csml":{"source":"apache","extensions":["csml"]},"chemical/x-pdb":{"source":"apache"},"chemical/x-xyz":{"source":"apache","extensions":["xyz"]},"font/collection":{"source":"iana","extensions":["ttc"]},"font/otf":{"source":"iana","compressible":true,"extensions":["otf"]},"font/sfnt":{"source":"iana"},"font/ttf":{"source":"iana","compressible":true,"extensions":["ttf"]},"font/woff":{"source":"iana","extensions":["woff"]},"font/woff2":{"source":"iana","extensions":["woff2"]},"image/aces":{"source":"iana","extensions":["exr"]},"image/apng":{"compressible":false,"extensions":["apng"]},"image/avci":{"source":"iana","extensions":["avci"]},"image/avcs":{"source":"iana","extensions":["avcs"]},"image/avif":{"source":"iana","compressible":false,"extensions":["avif"]},"image/bmp":{"source":"iana","compressible":true,"extensions":["bmp"]},"image/cgm":{"source":"iana","extensions":["cgm"]},"image/dicom-rle":{"source":"iana","extensions":["drle"]},"image/emf":{"source":"iana","extensions":["emf"]},"image/fits":{"source":"iana","extensions":["fits"]},"image/g3fax":{"source":"iana","extensions":["g3"]},"image/gif":{"source":"iana","compressible":false,"extensions":["gif"]},"image/heic":{"source":"iana","extensions":["heic"]},"image/heic-sequence":{"source":"iana","extensions":["heics"]},"image/heif":{"source":"iana","extensions":["heif"]},"image/heif-sequence":{"source":"iana","extensions":["heifs"]},"image/hej2k":{"source":"iana","extensions":["hej2"]},"image/hsj2":{"source":"iana","extensions":["hsj2"]},"image/ief":{"source":"iana","extensions":["ief"]},"image/jls":{"source":"iana","extensions":["jls"]},"image/jp2":{"source":"iana","compressible":false,"extensions":["jp2","jpg2"]},"image/jpeg":{"source":"iana","compressible":false,"extensions":["jpeg","jpg","jpe"]},"image/jph":{"source":"iana","extensions":["jph"]},"image/jphc":{"source":"iana","extensions":["jhc"]},"image/jpm":{"source":"iana","compressible":false,"extensions":["jpm"]},"image/jpx":{"source":"iana","compressible":false,"extensions":["jpx","jpf"]},"image/jxr":{"source":"iana","extensions":["jxr"]},"image/jxra":{"source":"iana","extensions":["jxra"]},"image/jxrs":{"source":"iana","extensions":["jxrs"]},"image/jxs":{"source":"iana","extensions":["jxs"]},"image/jxsc":{"source":"iana","extensions":["jxsc"]},"image/jxsi":{"source":"iana","extensions":["jxsi"]},"image/jxss":{"source":"iana","extensions":["jxss"]},"image/ktx":{"source":"iana","extensions":["ktx"]},"image/ktx2":{"source":"iana","extensions":["ktx2"]},"image/naplps":{"source":"iana"},"image/pjpeg":{"compressible":false},"image/png":{"source":"iana","compressible":false,"extensions":["png"]},"image/prs.btif":{"source":"iana","extensions":["btif"]},"image/prs.pti":{"source":"iana","extensions":["pti"]},"image/pwg-raster":{"source":"iana"},"image/sgi":{"source":"apache","extensions":["sgi"]},"image/svg+xml":{"source":"iana","compressible":true,"extensions":["svg","svgz"]},"image/t38":{"source":"iana","extensions":["t38"]},"image/tiff":{"source":"iana","compressible":false,"extensions":["tif","tiff"]},"image/tiff-fx":{"source":"iana","extensions":["tfx"]},"image/vnd.adobe.photoshop":{"source":"iana","compressible":true,"extensions":["psd"]},"image/vnd.airzip.accelerator.azv":{"source":"iana","extensions":["azv"]},"image/vnd.cns.inf2":{"source":"iana"},"image/vnd.dece.graphic":{"source":"iana","extensions":["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{"source":"iana","extensions":["djvu","djv"]},"image/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"image/vnd.dwg":{"source":"iana","extensions":["dwg"]},"image/vnd.dxf":{"source":"iana","extensions":["dxf"]},"image/vnd.fastbidsheet":{"source":"iana","extensions":["fbs"]},"image/vnd.fpx":{"source":"iana","extensions":["fpx"]},"image/vnd.fst":{"source":"iana","extensions":["fst"]},"image/vnd.fujixerox.edmics-mmr":{"source":"iana","extensions":["mmr"]},"image/vnd.fujixerox.edmics-rlc":{"source":"iana","extensions":["rlc"]},"image/vnd.globalgraphics.pgb":{"source":"iana"},"image/vnd.microsoft.icon":{"source":"iana","compressible":true,"extensions":["ico"]},"image/vnd.mix":{"source":"iana"},"image/vnd.mozilla.apng":{"source":"iana"},"image/vnd.ms-dds":{"compressible":true,"extensions":["dds"]},"image/vnd.ms-modi":{"source":"iana","extensions":["mdi"]},"image/vnd.ms-photo":{"source":"apache","extensions":["wdp"]},"image/vnd.net-fpx":{"source":"iana","extensions":["npx"]},"image/vnd.pco.b16":{"source":"iana","extensions":["b16"]},"image/vnd.radiance":{"source":"iana"},"image/vnd.sealed.png":{"source":"iana"},"image/vnd.sealedmedia.softseal.gif":{"source":"iana"},"image/vnd.sealedmedia.softseal.jpg":{"source":"iana"},"image/vnd.svf":{"source":"iana"},"image/vnd.tencent.tap":{"source":"iana","extensions":["tap"]},"image/vnd.valve.source.texture":{"source":"iana","extensions":["vtf"]},"image/vnd.wap.wbmp":{"source":"iana","extensions":["wbmp"]},"image/vnd.xiff":{"source":"iana","extensions":["xif"]},"image/vnd.zbrush.pcx":{"source":"iana","extensions":["pcx"]},"image/webp":{"source":"apache","extensions":["webp"]},"image/wmf":{"source":"iana","extensions":["wmf"]},"image/x-3ds":{"source":"apache","extensions":["3ds"]},"image/x-cmu-raster":{"source":"apache","extensions":["ras"]},"image/x-cmx":{"source":"apache","extensions":["cmx"]},"image/x-freehand":{"source":"apache","extensions":["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{"source":"apache","compressible":true,"extensions":["ico"]},"image/x-jng":{"source":"nginx","extensions":["jng"]},"image/x-mrsid-image":{"source":"apache","extensions":["sid"]},"image/x-ms-bmp":{"source":"nginx","compressible":true,"extensions":["bmp"]},"image/x-pcx":{"source":"apache","extensions":["pcx"]},"image/x-pict":{"source":"apache","extensions":["pic","pct"]},"image/x-portable-anymap":{"source":"apache","extensions":["pnm"]},"image/x-portable-bitmap":{"source":"apache","extensions":["pbm"]},"image/x-portable-graymap":{"source":"apache","extensions":["pgm"]},"image/x-portable-pixmap":{"source":"apache","extensions":["ppm"]},"image/x-rgb":{"source":"apache","extensions":["rgb"]},"image/x-tga":{"source":"apache","extensions":["tga"]},"image/x-xbitmap":{"source":"apache","extensions":["xbm"]},"image/x-xcf":{"compressible":false},"image/x-xpixmap":{"source":"apache","extensions":["xpm"]},"image/x-xwindowdump":{"source":"apache","extensions":["xwd"]},"message/cpim":{"source":"iana"},"message/delivery-status":{"source":"iana"},"message/disposition-notification":{"source":"iana","extensions":["disposition-notification"]},"message/external-body":{"source":"iana"},"message/feedback-report":{"source":"iana"},"message/global":{"source":"iana","extensions":["u8msg"]},"message/global-delivery-status":{"source":"iana","extensions":["u8dsn"]},"message/global-disposition-notification":{"source":"iana","extensions":["u8mdn"]},"message/global-headers":{"source":"iana","extensions":["u8hdr"]},"message/http":{"source":"iana","compressible":false},"message/imdn+xml":{"source":"iana","compressible":true},"message/news":{"source":"iana"},"message/partial":{"source":"iana","compressible":false},"message/rfc822":{"source":"iana","compressible":true,"extensions":["eml","mime"]},"message/s-http":{"source":"iana"},"message/sip":{"source":"iana"},"message/sipfrag":{"source":"iana"},"message/tracking-status":{"source":"iana"},"message/vnd.si.simp":{"source":"iana"},"message/vnd.wfa.wsc":{"source":"iana","extensions":["wsc"]},"model/3mf":{"source":"iana","extensions":["3mf"]},"model/e57":{"source":"iana"},"model/gltf+json":{"source":"iana","compressible":true,"extensions":["gltf"]},"model/gltf-binary":{"source":"iana","compressible":true,"extensions":["glb"]},"model/iges":{"source":"iana","compressible":false,"extensions":["igs","iges"]},"model/mesh":{"source":"iana","compressible":false,"extensions":["msh","mesh","silo"]},"model/mtl":{"source":"iana","extensions":["mtl"]},"model/obj":{"source":"iana","extensions":["obj"]},"model/step":{"source":"iana"},"model/step+xml":{"source":"iana","compressible":true,"extensions":["stpx"]},"model/step+zip":{"source":"iana","compressible":false,"extensions":["stpz"]},"model/step-xml+zip":{"source":"iana","compressible":false,"extensions":["stpxz"]},"model/stl":{"source":"iana","extensions":["stl"]},"model/vnd.collada+xml":{"source":"iana","compressible":true,"extensions":["dae"]},"model/vnd.dwf":{"source":"iana","extensions":["dwf"]},"model/vnd.flatland.3dml":{"source":"iana"},"model/vnd.gdl":{"source":"iana","extensions":["gdl"]},"model/vnd.gs-gdl":{"source":"apache"},"model/vnd.gs.gdl":{"source":"iana"},"model/vnd.gtw":{"source":"iana","extensions":["gtw"]},"model/vnd.moml+xml":{"source":"iana","compressible":true},"model/vnd.mts":{"source":"iana","extensions":["mts"]},"model/vnd.opengex":{"source":"iana","extensions":["ogex"]},"model/vnd.parasolid.transmit.binary":{"source":"iana","extensions":["x_b"]},"model/vnd.parasolid.transmit.text":{"source":"iana","extensions":["x_t"]},"model/vnd.pytha.pyox":{"source":"iana"},"model/vnd.rosette.annotated-data-model":{"source":"iana"},"model/vnd.sap.vds":{"source":"iana","extensions":["vds"]},"model/vnd.usdz+zip":{"source":"iana","compressible":false,"extensions":["usdz"]},"model/vnd.valve.source.compiled-map":{"source":"iana","extensions":["bsp"]},"model/vnd.vtu":{"source":"iana","extensions":["vtu"]},"model/vrml":{"source":"iana","compressible":false,"extensions":["wrl","vrml"]},"model/x3d+binary":{"source":"apache","compressible":false,"extensions":["x3db","x3dbz"]},"model/x3d+fastinfoset":{"source":"iana","extensions":["x3db"]},"model/x3d+vrml":{"source":"apache","compressible":false,"extensions":["x3dv","x3dvz"]},"model/x3d+xml":{"source":"iana","compressible":true,"extensions":["x3d","x3dz"]},"model/x3d-vrml":{"source":"iana","extensions":["x3dv"]},"multipart/alternative":{"source":"iana","compressible":false},"multipart/appledouble":{"source":"iana"},"multipart/byteranges":{"source":"iana"},"multipart/digest":{"source":"iana"},"multipart/encrypted":{"source":"iana","compressible":false},"multipart/form-data":{"source":"iana","compressible":false},"multipart/header-set":{"source":"iana"},"multipart/mixed":{"source":"iana"},"multipart/multilingual":{"source":"iana"},"multipart/parallel":{"source":"iana"},"multipart/related":{"source":"iana","compressible":false},"multipart/report":{"source":"iana"},"multipart/signed":{"source":"iana","compressible":false},"multipart/vnd.bint.med-plus":{"source":"iana"},"multipart/voice-message":{"source":"iana"},"multipart/x-mixed-replace":{"source":"iana"},"text/1d-interleaved-parityfec":{"source":"iana"},"text/cache-manifest":{"source":"iana","compressible":true,"extensions":["appcache","manifest"]},"text/calendar":{"source":"iana","extensions":["ics","ifb"]},"text/calender":{"compressible":true},"text/cmd":{"compressible":true},"text/coffeescript":{"extensions":["coffee","litcoffee"]},"text/cql":{"source":"iana"},"text/cql-expression":{"source":"iana"},"text/cql-identifier":{"source":"iana"},"text/css":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["css"]},"text/csv":{"source":"iana","compressible":true,"extensions":["csv"]},"text/csv-schema":{"source":"iana"},"text/directory":{"source":"iana"},"text/dns":{"source":"iana"},"text/ecmascript":{"source":"iana"},"text/encaprtp":{"source":"iana"},"text/enriched":{"source":"iana"},"text/fhirpath":{"source":"iana"},"text/flexfec":{"source":"iana"},"text/fwdred":{"source":"iana"},"text/gff3":{"source":"iana"},"text/grammar-ref-list":{"source":"iana"},"text/html":{"source":"iana","compressible":true,"extensions":["html","htm","shtml"]},"text/jade":{"extensions":["jade"]},"text/javascript":{"source":"iana","compressible":true},"text/jcr-cnd":{"source":"iana"},"text/jsx":{"compressible":true,"extensions":["jsx"]},"text/less":{"compressible":true,"extensions":["less"]},"text/markdown":{"source":"iana","compressible":true,"extensions":["markdown","md"]},"text/mathml":{"source":"nginx","extensions":["mml"]},"text/mdx":{"compressible":true,"extensions":["mdx"]},"text/mizar":{"source":"iana"},"text/n3":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["n3"]},"text/parameters":{"source":"iana","charset":"UTF-8"},"text/parityfec":{"source":"iana"},"text/plain":{"source":"iana","compressible":true,"extensions":["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{"source":"iana","charset":"UTF-8"},"text/prs.fallenstein.rst":{"source":"iana"},"text/prs.lines.tag":{"source":"iana","extensions":["dsc"]},"text/prs.prop.logic":{"source":"iana"},"text/raptorfec":{"source":"iana"},"text/red":{"source":"iana"},"text/rfc822-headers":{"source":"iana"},"text/richtext":{"source":"iana","compressible":true,"extensions":["rtx"]},"text/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"text/rtp-enc-aescm128":{"source":"iana"},"text/rtploopback":{"source":"iana"},"text/rtx":{"source":"iana"},"text/sgml":{"source":"iana","extensions":["sgml","sgm"]},"text/shaclc":{"source":"iana"},"text/shex":{"source":"iana","extensions":["shex"]},"text/slim":{"extensions":["slim","slm"]},"text/spdx":{"source":"iana","extensions":["spdx"]},"text/strings":{"source":"iana"},"text/stylus":{"extensions":["stylus","styl"]},"text/t140":{"source":"iana"},"text/tab-separated-values":{"source":"iana","compressible":true,"extensions":["tsv"]},"text/troff":{"source":"iana","extensions":["t","tr","roff","man","me","ms"]},"text/turtle":{"source":"iana","charset":"UTF-8","extensions":["ttl"]},"text/ulpfec":{"source":"iana"},"text/uri-list":{"source":"iana","compressible":true,"extensions":["uri","uris","urls"]},"text/vcard":{"source":"iana","compressible":true,"extensions":["vcard"]},"text/vnd.a":{"source":"iana"},"text/vnd.abc":{"source":"iana"},"text/vnd.ascii-art":{"source":"iana"},"text/vnd.curl":{"source":"iana","extensions":["curl"]},"text/vnd.curl.dcurl":{"source":"apache","extensions":["dcurl"]},"text/vnd.curl.mcurl":{"source":"apache","extensions":["mcurl"]},"text/vnd.curl.scurl":{"source":"apache","extensions":["scurl"]},"text/vnd.debian.copyright":{"source":"iana","charset":"UTF-8"},"text/vnd.dmclientscript":{"source":"iana"},"text/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"text/vnd.esmertec.theme-descriptor":{"source":"iana","charset":"UTF-8"},"text/vnd.familysearch.gedcom":{"source":"iana","extensions":["ged"]},"text/vnd.ficlab.flt":{"source":"iana"},"text/vnd.fly":{"source":"iana","extensions":["fly"]},"text/vnd.fmi.flexstor":{"source":"iana","extensions":["flx"]},"text/vnd.gml":{"source":"iana"},"text/vnd.graphviz":{"source":"iana","extensions":["gv"]},"text/vnd.hans":{"source":"iana"},"text/vnd.hgl":{"source":"iana"},"text/vnd.in3d.3dml":{"source":"iana","extensions":["3dml"]},"text/vnd.in3d.spot":{"source":"iana","extensions":["spot"]},"text/vnd.iptc.newsml":{"source":"iana"},"text/vnd.iptc.nitf":{"source":"iana"},"text/vnd.latex-z":{"source":"iana"},"text/vnd.motorola.reflex":{"source":"iana"},"text/vnd.ms-mediapackage":{"source":"iana"},"text/vnd.net2phone.commcenter.command":{"source":"iana"},"text/vnd.radisys.msml-basic-layout":{"source":"iana"},"text/vnd.senx.warpscript":{"source":"iana"},"text/vnd.si.uricatalogue":{"source":"iana"},"text/vnd.sosi":{"source":"iana"},"text/vnd.sun.j2me.app-descriptor":{"source":"iana","charset":"UTF-8","extensions":["jad"]},"text/vnd.trolltech.linguist":{"source":"iana","charset":"UTF-8"},"text/vnd.wap.si":{"source":"iana"},"text/vnd.wap.sl":{"source":"iana"},"text/vnd.wap.wml":{"source":"iana","extensions":["wml"]},"text/vnd.wap.wmlscript":{"source":"iana","extensions":["wmls"]},"text/vtt":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["vtt"]},"text/x-asm":{"source":"apache","extensions":["s","asm"]},"text/x-c":{"source":"apache","extensions":["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{"source":"nginx","extensions":["htc"]},"text/x-fortran":{"source":"apache","extensions":["f","for","f77","f90"]},"text/x-gwt-rpc":{"compressible":true},"text/x-handlebars-template":{"extensions":["hbs"]},"text/x-java-source":{"source":"apache","extensions":["java"]},"text/x-jquery-tmpl":{"compressible":true},"text/x-lua":{"extensions":["lua"]},"text/x-markdown":{"compressible":true,"extensions":["mkd"]},"text/x-nfo":{"source":"apache","extensions":["nfo"]},"text/x-opml":{"source":"apache","extensions":["opml"]},"text/x-org":{"compressible":true,"extensions":["org"]},"text/x-pascal":{"source":"apache","extensions":["p","pas"]},"text/x-processing":{"compressible":true,"extensions":["pde"]},"text/x-sass":{"extensions":["sass"]},"text/x-scss":{"extensions":["scss"]},"text/x-setext":{"source":"apache","extensions":["etx"]},"text/x-sfv":{"source":"apache","extensions":["sfv"]},"text/x-suse-ymp":{"compressible":true,"extensions":["ymp"]},"text/x-uuencode":{"source":"apache","extensions":["uu"]},"text/x-vcalendar":{"source":"apache","extensions":["vcs"]},"text/x-vcard":{"source":"apache","extensions":["vcf"]},"text/xml":{"source":"iana","compressible":true,"extensions":["xml"]},"text/xml-external-parsed-entity":{"source":"iana"},"text/yaml":{"compressible":true,"extensions":["yaml","yml"]},"video/1d-interleaved-parityfec":{"source":"iana"},"video/3gpp":{"source":"iana","extensions":["3gp","3gpp"]},"video/3gpp-tt":{"source":"iana"},"video/3gpp2":{"source":"iana","extensions":["3g2"]},"video/av1":{"source":"iana"},"video/bmpeg":{"source":"iana"},"video/bt656":{"source":"iana"},"video/celb":{"source":"iana"},"video/dv":{"source":"iana"},"video/encaprtp":{"source":"iana"},"video/ffv1":{"source":"iana"},"video/flexfec":{"source":"iana"},"video/h261":{"source":"iana","extensions":["h261"]},"video/h263":{"source":"iana","extensions":["h263"]},"video/h263-1998":{"source":"iana"},"video/h263-2000":{"source":"iana"},"video/h264":{"source":"iana","extensions":["h264"]},"video/h264-rcdo":{"source":"iana"},"video/h264-svc":{"source":"iana"},"video/h265":{"source":"iana"},"video/iso.segment":{"source":"iana","extensions":["m4s"]},"video/jpeg":{"source":"iana","extensions":["jpgv"]},"video/jpeg2000":{"source":"iana"},"video/jpm":{"source":"apache","extensions":["jpm","jpgm"]},"video/jxsv":{"source":"iana"},"video/mj2":{"source":"iana","extensions":["mj2","mjp2"]},"video/mp1s":{"source":"iana"},"video/mp2p":{"source":"iana"},"video/mp2t":{"source":"iana","extensions":["ts"]},"video/mp4":{"source":"iana","compressible":false,"extensions":["mp4","mp4v","mpg4"]},"video/mp4v-es":{"source":"iana"},"video/mpeg":{"source":"iana","compressible":false,"extensions":["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{"source":"iana"},"video/mpv":{"source":"iana"},"video/nv":{"source":"iana"},"video/ogg":{"source":"iana","compressible":false,"extensions":["ogv"]},"video/parityfec":{"source":"iana"},"video/pointer":{"source":"iana"},"video/quicktime":{"source":"iana","compressible":false,"extensions":["qt","mov"]},"video/raptorfec":{"source":"iana"},"video/raw":{"source":"iana"},"video/rtp-enc-aescm128":{"source":"iana"},"video/rtploopback":{"source":"iana"},"video/rtx":{"source":"iana"},"video/scip":{"source":"iana"},"video/smpte291":{"source":"iana"},"video/smpte292m":{"source":"iana"},"video/ulpfec":{"source":"iana"},"video/vc1":{"source":"iana"},"video/vc2":{"source":"iana"},"video/vnd.cctv":{"source":"iana"},"video/vnd.dece.hd":{"source":"iana","extensions":["uvh","uvvh"]},"video/vnd.dece.mobile":{"source":"iana","extensions":["uvm","uvvm"]},"video/vnd.dece.mp4":{"source":"iana"},"video/vnd.dece.pd":{"source":"iana","extensions":["uvp","uvvp"]},"video/vnd.dece.sd":{"source":"iana","extensions":["uvs","uvvs"]},"video/vnd.dece.video":{"source":"iana","extensions":["uvv","uvvv"]},"video/vnd.directv.mpeg":{"source":"iana"},"video/vnd.directv.mpeg-tts":{"source":"iana"},"video/vnd.dlna.mpeg-tts":{"source":"iana"},"video/vnd.dvb.file":{"source":"iana","extensions":["dvb"]},"video/vnd.fvt":{"source":"iana","extensions":["fvt"]},"video/vnd.hns.video":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.ttsavc":{"source":"iana"},"video/vnd.iptvforum.ttsmpeg2":{"source":"iana"},"video/vnd.motorola.video":{"source":"iana"},"video/vnd.motorola.videop":{"source":"iana"},"video/vnd.mpegurl":{"source":"iana","extensions":["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{"source":"iana","extensions":["pyv"]},"video/vnd.nokia.interleaved-multimedia":{"source":"iana"},"video/vnd.nokia.mp4vr":{"source":"iana"},"video/vnd.nokia.videovoip":{"source":"iana"},"video/vnd.objectvideo":{"source":"iana"},"video/vnd.radgamettools.bink":{"source":"iana"},"video/vnd.radgamettools.smacker":{"source":"iana"},"video/vnd.sealed.mpeg1":{"source":"iana"},"video/vnd.sealed.mpeg4":{"source":"iana"},"video/vnd.sealed.swf":{"source":"iana"},"video/vnd.sealedmedia.softseal.mov":{"source":"iana"},"video/vnd.uvvu.mp4":{"source":"iana","extensions":["uvu","uvvu"]},"video/vnd.vivo":{"source":"iana","extensions":["viv"]},"video/vnd.youtube.yt":{"source":"iana"},"video/vp8":{"source":"iana"},"video/vp9":{"source":"iana"},"video/webm":{"source":"apache","compressible":false,"extensions":["webm"]},"video/x-f4v":{"source":"apache","extensions":["f4v"]},"video/x-fli":{"source":"apache","extensions":["fli"]},"video/x-flv":{"source":"apache","compressible":false,"extensions":["flv"]},"video/x-m4v":{"source":"apache","extensions":["m4v"]},"video/x-matroska":{"source":"apache","compressible":false,"extensions":["mkv","mk3d","mks"]},"video/x-mng":{"source":"apache","extensions":["mng"]},"video/x-ms-asf":{"source":"apache","extensions":["asf","asx"]},"video/x-ms-vob":{"source":"apache","extensions":["vob"]},"video/x-ms-wm":{"source":"apache","extensions":["wm"]},"video/x-ms-wmv":{"source":"apache","compressible":false,"extensions":["wmv"]},"video/x-ms-wmx":{"source":"apache","extensions":["wmx"]},"video/x-ms-wvx":{"source":"apache","extensions":["wvx"]},"video/x-msvideo":{"source":"apache","extensions":["avi"]},"video/x-sgi-movie":{"source":"apache","extensions":["movie"]},"video/x-smv":{"source":"apache","extensions":["smv"]},"x-conference/x-cooltalk":{"source":"apache","extensions":["ice"]},"x-shader/x-fragment":{"compressible":true},"x-shader/x-vertex":{"compressible":true}}')},92594:Wt=>{"use strict";Wt.exports=JSON.parse('[[[0,44],"disallowed_STD3_valid"],[[45,46],"valid"],[[47,47],"disallowed_STD3_valid"],[[48,57],"valid"],[[58,64],"disallowed_STD3_valid"],[[65,65],"mapped",[97]],[[66,66],"mapped",[98]],[[67,67],"mapped",[99]],[[68,68],"mapped",[100]],[[69,69],"mapped",[101]],[[70,70],"mapped",[102]],[[71,71],"mapped",[103]],[[72,72],"mapped",[104]],[[73,73],"mapped",[105]],[[74,74],"mapped",[106]],[[75,75],"mapped",[107]],[[76,76],"mapped",[108]],[[77,77],"mapped",[109]],[[78,78],"mapped",[110]],[[79,79],"mapped",[111]],[[80,80],"mapped",[112]],[[81,81],"mapped",[113]],[[82,82],"mapped",[114]],[[83,83],"mapped",[115]],[[84,84],"mapped",[116]],[[85,85],"mapped",[117]],[[86,86],"mapped",[118]],[[87,87],"mapped",[119]],[[88,88],"mapped",[120]],[[89,89],"mapped",[121]],[[90,90],"mapped",[122]],[[91,96],"disallowed_STD3_valid"],[[97,122],"valid"],[[123,127],"disallowed_STD3_valid"],[[128,159],"disallowed"],[[160,160],"disallowed_STD3_mapped",[32]],[[161,167],"valid",[],"NV8"],[[168,168],"disallowed_STD3_mapped",[32,776]],[[169,169],"valid",[],"NV8"],[[170,170],"mapped",[97]],[[171,172],"valid",[],"NV8"],[[173,173],"ignored"],[[174,174],"valid",[],"NV8"],[[175,175],"disallowed_STD3_mapped",[32,772]],[[176,177],"valid",[],"NV8"],[[178,178],"mapped",[50]],[[179,179],"mapped",[51]],[[180,180],"disallowed_STD3_mapped",[32,769]],[[181,181],"mapped",[956]],[[182,182],"valid",[],"NV8"],[[183,183],"valid"],[[184,184],"disallowed_STD3_mapped",[32,807]],[[185,185],"mapped",[49]],[[186,186],"mapped",[111]],[[187,187],"valid",[],"NV8"],[[188,188],"mapped",[49,8260,52]],[[189,189],"mapped",[49,8260,50]],[[190,190],"mapped",[51,8260,52]],[[191,191],"valid",[],"NV8"],[[192,192],"mapped",[224]],[[193,193],"mapped",[225]],[[194,194],"mapped",[226]],[[195,195],"mapped",[227]],[[196,196],"mapped",[228]],[[197,197],"mapped",[229]],[[198,198],"mapped",[230]],[[199,199],"mapped",[231]],[[200,200],"mapped",[232]],[[201,201],"mapped",[233]],[[202,202],"mapped",[234]],[[203,203],"mapped",[235]],[[204,204],"mapped",[236]],[[205,205],"mapped",[237]],[[206,206],"mapped",[238]],[[207,207],"mapped",[239]],[[208,208],"mapped",[240]],[[209,209],"mapped",[241]],[[210,210],"mapped",[242]],[[211,211],"mapped",[243]],[[212,212],"mapped",[244]],[[213,213],"mapped",[245]],[[214,214],"mapped",[246]],[[215,215],"valid",[],"NV8"],[[216,216],"mapped",[248]],[[217,217],"mapped",[249]],[[218,218],"mapped",[250]],[[219,219],"mapped",[251]],[[220,220],"mapped",[252]],[[221,221],"mapped",[253]],[[222,222],"mapped",[254]],[[223,223],"deviation",[115,115]],[[224,246],"valid"],[[247,247],"valid",[],"NV8"],[[248,255],"valid"],[[256,256],"mapped",[257]],[[257,257],"valid"],[[258,258],"mapped",[259]],[[259,259],"valid"],[[260,260],"mapped",[261]],[[261,261],"valid"],[[262,262],"mapped",[263]],[[263,263],"valid"],[[264,264],"mapped",[265]],[[265,265],"valid"],[[266,266],"mapped",[267]],[[267,267],"valid"],[[268,268],"mapped",[269]],[[269,269],"valid"],[[270,270],"mapped",[271]],[[271,271],"valid"],[[272,272],"mapped",[273]],[[273,273],"valid"],[[274,274],"mapped",[275]],[[275,275],"valid"],[[276,276],"mapped",[277]],[[277,277],"valid"],[[278,278],"mapped",[279]],[[279,279],"valid"],[[280,280],"mapped",[281]],[[281,281],"valid"],[[282,282],"mapped",[283]],[[283,283],"valid"],[[284,284],"mapped",[285]],[[285,285],"valid"],[[286,286],"mapped",[287]],[[287,287],"valid"],[[288,288],"mapped",[289]],[[289,289],"valid"],[[290,290],"mapped",[291]],[[291,291],"valid"],[[292,292],"mapped",[293]],[[293,293],"valid"],[[294,294],"mapped",[295]],[[295,295],"valid"],[[296,296],"mapped",[297]],[[297,297],"valid"],[[298,298],"mapped",[299]],[[299,299],"valid"],[[300,300],"mapped",[301]],[[301,301],"valid"],[[302,302],"mapped",[303]],[[303,303],"valid"],[[304,304],"mapped",[105,775]],[[305,305],"valid"],[[306,307],"mapped",[105,106]],[[308,308],"mapped",[309]],[[309,309],"valid"],[[310,310],"mapped",[311]],[[311,312],"valid"],[[313,313],"mapped",[314]],[[314,314],"valid"],[[315,315],"mapped",[316]],[[316,316],"valid"],[[317,317],"mapped",[318]],[[318,318],"valid"],[[319,320],"mapped",[108,183]],[[321,321],"mapped",[322]],[[322,322],"valid"],[[323,323],"mapped",[324]],[[324,324],"valid"],[[325,325],"mapped",[326]],[[326,326],"valid"],[[327,327],"mapped",[328]],[[328,328],"valid"],[[329,329],"mapped",[700,110]],[[330,330],"mapped",[331]],[[331,331],"valid"],[[332,332],"mapped",[333]],[[333,333],"valid"],[[334,334],"mapped",[335]],[[335,335],"valid"],[[336,336],"mapped",[337]],[[337,337],"valid"],[[338,338],"mapped",[339]],[[339,339],"valid"],[[340,340],"mapped",[341]],[[341,341],"valid"],[[342,342],"mapped",[343]],[[343,343],"valid"],[[344,344],"mapped",[345]],[[345,345],"valid"],[[346,346],"mapped",[347]],[[347,347],"valid"],[[348,348],"mapped",[349]],[[349,349],"valid"],[[350,350],"mapped",[351]],[[351,351],"valid"],[[352,352],"mapped",[353]],[[353,353],"valid"],[[354,354],"mapped",[355]],[[355,355],"valid"],[[356,356],"mapped",[357]],[[357,357],"valid"],[[358,358],"mapped",[359]],[[359,359],"valid"],[[360,360],"mapped",[361]],[[361,361],"valid"],[[362,362],"mapped",[363]],[[363,363],"valid"],[[364,364],"mapped",[365]],[[365,365],"valid"],[[366,366],"mapped",[367]],[[367,367],"valid"],[[368,368],"mapped",[369]],[[369,369],"valid"],[[370,370],"mapped",[371]],[[371,371],"valid"],[[372,372],"mapped",[373]],[[373,373],"valid"],[[374,374],"mapped",[375]],[[375,375],"valid"],[[376,376],"mapped",[255]],[[377,377],"mapped",[378]],[[378,378],"valid"],[[379,379],"mapped",[380]],[[380,380],"valid"],[[381,381],"mapped",[382]],[[382,382],"valid"],[[383,383],"mapped",[115]],[[384,384],"valid"],[[385,385],"mapped",[595]],[[386,386],"mapped",[387]],[[387,387],"valid"],[[388,388],"mapped",[389]],[[389,389],"valid"],[[390,390],"mapped",[596]],[[391,391],"mapped",[392]],[[392,392],"valid"],[[393,393],"mapped",[598]],[[394,394],"mapped",[599]],[[395,395],"mapped",[396]],[[396,397],"valid"],[[398,398],"mapped",[477]],[[399,399],"mapped",[601]],[[400,400],"mapped",[603]],[[401,401],"mapped",[402]],[[402,402],"valid"],[[403,403],"mapped",[608]],[[404,404],"mapped",[611]],[[405,405],"valid"],[[406,406],"mapped",[617]],[[407,407],"mapped",[616]],[[408,408],"mapped",[409]],[[409,411],"valid"],[[412,412],"mapped",[623]],[[413,413],"mapped",[626]],[[414,414],"valid"],[[415,415],"mapped",[629]],[[416,416],"mapped",[417]],[[417,417],"valid"],[[418,418],"mapped",[419]],[[419,419],"valid"],[[420,420],"mapped",[421]],[[421,421],"valid"],[[422,422],"mapped",[640]],[[423,423],"mapped",[424]],[[424,424],"valid"],[[425,425],"mapped",[643]],[[426,427],"valid"],[[428,428],"mapped",[429]],[[429,429],"valid"],[[430,430],"mapped",[648]],[[431,431],"mapped",[432]],[[432,432],"valid"],[[433,433],"mapped",[650]],[[434,434],"mapped",[651]],[[435,435],"mapped",[436]],[[436,436],"valid"],[[437,437],"mapped",[438]],[[438,438],"valid"],[[439,439],"mapped",[658]],[[440,440],"mapped",[441]],[[441,443],"valid"],[[444,444],"mapped",[445]],[[445,451],"valid"],[[452,454],"mapped",[100,382]],[[455,457],"mapped",[108,106]],[[458,460],"mapped",[110,106]],[[461,461],"mapped",[462]],[[462,462],"valid"],[[463,463],"mapped",[464]],[[464,464],"valid"],[[465,465],"mapped",[466]],[[466,466],"valid"],[[467,467],"mapped",[468]],[[468,468],"valid"],[[469,469],"mapped",[470]],[[470,470],"valid"],[[471,471],"mapped",[472]],[[472,472],"valid"],[[473,473],"mapped",[474]],[[474,474],"valid"],[[475,475],"mapped",[476]],[[476,477],"valid"],[[478,478],"mapped",[479]],[[479,479],"valid"],[[480,480],"mapped",[481]],[[481,481],"valid"],[[482,482],"mapped",[483]],[[483,483],"valid"],[[484,484],"mapped",[485]],[[485,485],"valid"],[[486,486],"mapped",[487]],[[487,487],"valid"],[[488,488],"mapped",[489]],[[489,489],"valid"],[[490,490],"mapped",[491]],[[491,491],"valid"],[[492,492],"mapped",[493]],[[493,493],"valid"],[[494,494],"mapped",[495]],[[495,496],"valid"],[[497,499],"mapped",[100,122]],[[500,500],"mapped",[501]],[[501,501],"valid"],[[502,502],"mapped",[405]],[[503,503],"mapped",[447]],[[504,504],"mapped",[505]],[[505,505],"valid"],[[506,506],"mapped",[507]],[[507,507],"valid"],[[508,508],"mapped",[509]],[[509,509],"valid"],[[510,510],"mapped",[511]],[[511,511],"valid"],[[512,512],"mapped",[513]],[[513,513],"valid"],[[514,514],"mapped",[515]],[[515,515],"valid"],[[516,516],"mapped",[517]],[[517,517],"valid"],[[518,518],"mapped",[519]],[[519,519],"valid"],[[520,520],"mapped",[521]],[[521,521],"valid"],[[522,522],"mapped",[523]],[[523,523],"valid"],[[524,524],"mapped",[525]],[[525,525],"valid"],[[526,526],"mapped",[527]],[[527,527],"valid"],[[528,528],"mapped",[529]],[[529,529],"valid"],[[530,530],"mapped",[531]],[[531,531],"valid"],[[532,532],"mapped",[533]],[[533,533],"valid"],[[534,534],"mapped",[535]],[[535,535],"valid"],[[536,536],"mapped",[537]],[[537,537],"valid"],[[538,538],"mapped",[539]],[[539,539],"valid"],[[540,540],"mapped",[541]],[[541,541],"valid"],[[542,542],"mapped",[543]],[[543,543],"valid"],[[544,544],"mapped",[414]],[[545,545],"valid"],[[546,546],"mapped",[547]],[[547,547],"valid"],[[548,548],"mapped",[549]],[[549,549],"valid"],[[550,550],"mapped",[551]],[[551,551],"valid"],[[552,552],"mapped",[553]],[[553,553],"valid"],[[554,554],"mapped",[555]],[[555,555],"valid"],[[556,556],"mapped",[557]],[[557,557],"valid"],[[558,558],"mapped",[559]],[[559,559],"valid"],[[560,560],"mapped",[561]],[[561,561],"valid"],[[562,562],"mapped",[563]],[[563,563],"valid"],[[564,566],"valid"],[[567,569],"valid"],[[570,570],"mapped",[11365]],[[571,571],"mapped",[572]],[[572,572],"valid"],[[573,573],"mapped",[410]],[[574,574],"mapped",[11366]],[[575,576],"valid"],[[577,577],"mapped",[578]],[[578,578],"valid"],[[579,579],"mapped",[384]],[[580,580],"mapped",[649]],[[581,581],"mapped",[652]],[[582,582],"mapped",[583]],[[583,583],"valid"],[[584,584],"mapped",[585]],[[585,585],"valid"],[[586,586],"mapped",[587]],[[587,587],"valid"],[[588,588],"mapped",[589]],[[589,589],"valid"],[[590,590],"mapped",[591]],[[591,591],"valid"],[[592,680],"valid"],[[681,685],"valid"],[[686,687],"valid"],[[688,688],"mapped",[104]],[[689,689],"mapped",[614]],[[690,690],"mapped",[106]],[[691,691],"mapped",[114]],[[692,692],"mapped",[633]],[[693,693],"mapped",[635]],[[694,694],"mapped",[641]],[[695,695],"mapped",[119]],[[696,696],"mapped",[121]],[[697,705],"valid"],[[706,709],"valid",[],"NV8"],[[710,721],"valid"],[[722,727],"valid",[],"NV8"],[[728,728],"disallowed_STD3_mapped",[32,774]],[[729,729],"disallowed_STD3_mapped",[32,775]],[[730,730],"disallowed_STD3_mapped",[32,778]],[[731,731],"disallowed_STD3_mapped",[32,808]],[[732,732],"disallowed_STD3_mapped",[32,771]],[[733,733],"disallowed_STD3_mapped",[32,779]],[[734,734],"valid",[],"NV8"],[[735,735],"valid",[],"NV8"],[[736,736],"mapped",[611]],[[737,737],"mapped",[108]],[[738,738],"mapped",[115]],[[739,739],"mapped",[120]],[[740,740],"mapped",[661]],[[741,745],"valid",[],"NV8"],[[746,747],"valid",[],"NV8"],[[748,748],"valid"],[[749,749],"valid",[],"NV8"],[[750,750],"valid"],[[751,767],"valid",[],"NV8"],[[768,831],"valid"],[[832,832],"mapped",[768]],[[833,833],"mapped",[769]],[[834,834],"valid"],[[835,835],"mapped",[787]],[[836,836],"mapped",[776,769]],[[837,837],"mapped",[953]],[[838,846],"valid"],[[847,847],"ignored"],[[848,855],"valid"],[[856,860],"valid"],[[861,863],"valid"],[[864,865],"valid"],[[866,866],"valid"],[[867,879],"valid"],[[880,880],"mapped",[881]],[[881,881],"valid"],[[882,882],"mapped",[883]],[[883,883],"valid"],[[884,884],"mapped",[697]],[[885,885],"valid"],[[886,886],"mapped",[887]],[[887,887],"valid"],[[888,889],"disallowed"],[[890,890],"disallowed_STD3_mapped",[32,953]],[[891,893],"valid"],[[894,894],"disallowed_STD3_mapped",[59]],[[895,895],"mapped",[1011]],[[896,899],"disallowed"],[[900,900],"disallowed_STD3_mapped",[32,769]],[[901,901],"disallowed_STD3_mapped",[32,776,769]],[[902,902],"mapped",[940]],[[903,903],"mapped",[183]],[[904,904],"mapped",[941]],[[905,905],"mapped",[942]],[[906,906],"mapped",[943]],[[907,907],"disallowed"],[[908,908],"mapped",[972]],[[909,909],"disallowed"],[[910,910],"mapped",[973]],[[911,911],"mapped",[974]],[[912,912],"valid"],[[913,913],"mapped",[945]],[[914,914],"mapped",[946]],[[915,915],"mapped",[947]],[[916,916],"mapped",[948]],[[917,917],"mapped",[949]],[[918,918],"mapped",[950]],[[919,919],"mapped",[951]],[[920,920],"mapped",[952]],[[921,921],"mapped",[953]],[[922,922],"mapped",[954]],[[923,923],"mapped",[955]],[[924,924],"mapped",[956]],[[925,925],"mapped",[957]],[[926,926],"mapped",[958]],[[927,927],"mapped",[959]],[[928,928],"mapped",[960]],[[929,929],"mapped",[961]],[[930,930],"disallowed"],[[931,931],"mapped",[963]],[[932,932],"mapped",[964]],[[933,933],"mapped",[965]],[[934,934],"mapped",[966]],[[935,935],"mapped",[967]],[[936,936],"mapped",[968]],[[937,937],"mapped",[969]],[[938,938],"mapped",[970]],[[939,939],"mapped",[971]],[[940,961],"valid"],[[962,962],"deviation",[963]],[[963,974],"valid"],[[975,975],"mapped",[983]],[[976,976],"mapped",[946]],[[977,977],"mapped",[952]],[[978,978],"mapped",[965]],[[979,979],"mapped",[973]],[[980,980],"mapped",[971]],[[981,981],"mapped",[966]],[[982,982],"mapped",[960]],[[983,983],"valid"],[[984,984],"mapped",[985]],[[985,985],"valid"],[[986,986],"mapped",[987]],[[987,987],"valid"],[[988,988],"mapped",[989]],[[989,989],"valid"],[[990,990],"mapped",[991]],[[991,991],"valid"],[[992,992],"mapped",[993]],[[993,993],"valid"],[[994,994],"mapped",[995]],[[995,995],"valid"],[[996,996],"mapped",[997]],[[997,997],"valid"],[[998,998],"mapped",[999]],[[999,999],"valid"],[[1000,1000],"mapped",[1001]],[[1001,1001],"valid"],[[1002,1002],"mapped",[1003]],[[1003,1003],"valid"],[[1004,1004],"mapped",[1005]],[[1005,1005],"valid"],[[1006,1006],"mapped",[1007]],[[1007,1007],"valid"],[[1008,1008],"mapped",[954]],[[1009,1009],"mapped",[961]],[[1010,1010],"mapped",[963]],[[1011,1011],"valid"],[[1012,1012],"mapped",[952]],[[1013,1013],"mapped",[949]],[[1014,1014],"valid",[],"NV8"],[[1015,1015],"mapped",[1016]],[[1016,1016],"valid"],[[1017,1017],"mapped",[963]],[[1018,1018],"mapped",[1019]],[[1019,1019],"valid"],[[1020,1020],"valid"],[[1021,1021],"mapped",[891]],[[1022,1022],"mapped",[892]],[[1023,1023],"mapped",[893]],[[1024,1024],"mapped",[1104]],[[1025,1025],"mapped",[1105]],[[1026,1026],"mapped",[1106]],[[1027,1027],"mapped",[1107]],[[1028,1028],"mapped",[1108]],[[1029,1029],"mapped",[1109]],[[1030,1030],"mapped",[1110]],[[1031,1031],"mapped",[1111]],[[1032,1032],"mapped",[1112]],[[1033,1033],"mapped",[1113]],[[1034,1034],"mapped",[1114]],[[1035,1035],"mapped",[1115]],[[1036,1036],"mapped",[1116]],[[1037,1037],"mapped",[1117]],[[1038,1038],"mapped",[1118]],[[1039,1039],"mapped",[1119]],[[1040,1040],"mapped",[1072]],[[1041,1041],"mapped",[1073]],[[1042,1042],"mapped",[1074]],[[1043,1043],"mapped",[1075]],[[1044,1044],"mapped",[1076]],[[1045,1045],"mapped",[1077]],[[1046,1046],"mapped",[1078]],[[1047,1047],"mapped",[1079]],[[1048,1048],"mapped",[1080]],[[1049,1049],"mapped",[1081]],[[1050,1050],"mapped",[1082]],[[1051,1051],"mapped",[1083]],[[1052,1052],"mapped",[1084]],[[1053,1053],"mapped",[1085]],[[1054,1054],"mapped",[1086]],[[1055,1055],"mapped",[1087]],[[1056,1056],"mapped",[1088]],[[1057,1057],"mapped",[1089]],[[1058,1058],"mapped",[1090]],[[1059,1059],"mapped",[1091]],[[1060,1060],"mapped",[1092]],[[1061,1061],"mapped",[1093]],[[1062,1062],"mapped",[1094]],[[1063,1063],"mapped",[1095]],[[1064,1064],"mapped",[1096]],[[1065,1065],"mapped",[1097]],[[1066,1066],"mapped",[1098]],[[1067,1067],"mapped",[1099]],[[1068,1068],"mapped",[1100]],[[1069,1069],"mapped",[1101]],[[1070,1070],"mapped",[1102]],[[1071,1071],"mapped",[1103]],[[1072,1103],"valid"],[[1104,1104],"valid"],[[1105,1116],"valid"],[[1117,1117],"valid"],[[1118,1119],"valid"],[[1120,1120],"mapped",[1121]],[[1121,1121],"valid"],[[1122,1122],"mapped",[1123]],[[1123,1123],"valid"],[[1124,1124],"mapped",[1125]],[[1125,1125],"valid"],[[1126,1126],"mapped",[1127]],[[1127,1127],"valid"],[[1128,1128],"mapped",[1129]],[[1129,1129],"valid"],[[1130,1130],"mapped",[1131]],[[1131,1131],"valid"],[[1132,1132],"mapped",[1133]],[[1133,1133],"valid"],[[1134,1134],"mapped",[1135]],[[1135,1135],"valid"],[[1136,1136],"mapped",[1137]],[[1137,1137],"valid"],[[1138,1138],"mapped",[1139]],[[1139,1139],"valid"],[[1140,1140],"mapped",[1141]],[[1141,1141],"valid"],[[1142,1142],"mapped",[1143]],[[1143,1143],"valid"],[[1144,1144],"mapped",[1145]],[[1145,1145],"valid"],[[1146,1146],"mapped",[1147]],[[1147,1147],"valid"],[[1148,1148],"mapped",[1149]],[[1149,1149],"valid"],[[1150,1150],"mapped",[1151]],[[1151,1151],"valid"],[[1152,1152],"mapped",[1153]],[[1153,1153],"valid"],[[1154,1154],"valid",[],"NV8"],[[1155,1158],"valid"],[[1159,1159],"valid"],[[1160,1161],"valid",[],"NV8"],[[1162,1162],"mapped",[1163]],[[1163,1163],"valid"],[[1164,1164],"mapped",[1165]],[[1165,1165],"valid"],[[1166,1166],"mapped",[1167]],[[1167,1167],"valid"],[[1168,1168],"mapped",[1169]],[[1169,1169],"valid"],[[1170,1170],"mapped",[1171]],[[1171,1171],"valid"],[[1172,1172],"mapped",[1173]],[[1173,1173],"valid"],[[1174,1174],"mapped",[1175]],[[1175,1175],"valid"],[[1176,1176],"mapped",[1177]],[[1177,1177],"valid"],[[1178,1178],"mapped",[1179]],[[1179,1179],"valid"],[[1180,1180],"mapped",[1181]],[[1181,1181],"valid"],[[1182,1182],"mapped",[1183]],[[1183,1183],"valid"],[[1184,1184],"mapped",[1185]],[[1185,1185],"valid"],[[1186,1186],"mapped",[1187]],[[1187,1187],"valid"],[[1188,1188],"mapped",[1189]],[[1189,1189],"valid"],[[1190,1190],"mapped",[1191]],[[1191,1191],"valid"],[[1192,1192],"mapped",[1193]],[[1193,1193],"valid"],[[1194,1194],"mapped",[1195]],[[1195,1195],"valid"],[[1196,1196],"mapped",[1197]],[[1197,1197],"valid"],[[1198,1198],"mapped",[1199]],[[1199,1199],"valid"],[[1200,1200],"mapped",[1201]],[[1201,1201],"valid"],[[1202,1202],"mapped",[1203]],[[1203,1203],"valid"],[[1204,1204],"mapped",[1205]],[[1205,1205],"valid"],[[1206,1206],"mapped",[1207]],[[1207,1207],"valid"],[[1208,1208],"mapped",[1209]],[[1209,1209],"valid"],[[1210,1210],"mapped",[1211]],[[1211,1211],"valid"],[[1212,1212],"mapped",[1213]],[[1213,1213],"valid"],[[1214,1214],"mapped",[1215]],[[1215,1215],"valid"],[[1216,1216],"disallowed"],[[1217,1217],"mapped",[1218]],[[1218,1218],"valid"],[[1219,1219],"mapped",[1220]],[[1220,1220],"valid"],[[1221,1221],"mapped",[1222]],[[1222,1222],"valid"],[[1223,1223],"mapped",[1224]],[[1224,1224],"valid"],[[1225,1225],"mapped",[1226]],[[1226,1226],"valid"],[[1227,1227],"mapped",[1228]],[[1228,1228],"valid"],[[1229,1229],"mapped",[1230]],[[1230,1230],"valid"],[[1231,1231],"valid"],[[1232,1232],"mapped",[1233]],[[1233,1233],"valid"],[[1234,1234],"mapped",[1235]],[[1235,1235],"valid"],[[1236,1236],"mapped",[1237]],[[1237,1237],"valid"],[[1238,1238],"mapped",[1239]],[[1239,1239],"valid"],[[1240,1240],"mapped",[1241]],[[1241,1241],"valid"],[[1242,1242],"mapped",[1243]],[[1243,1243],"valid"],[[1244,1244],"mapped",[1245]],[[1245,1245],"valid"],[[1246,1246],"mapped",[1247]],[[1247,1247],"valid"],[[1248,1248],"mapped",[1249]],[[1249,1249],"valid"],[[1250,1250],"mapped",[1251]],[[1251,1251],"valid"],[[1252,1252],"mapped",[1253]],[[1253,1253],"valid"],[[1254,1254],"mapped",[1255]],[[1255,1255],"valid"],[[1256,1256],"mapped",[1257]],[[1257,1257],"valid"],[[1258,1258],"mapped",[1259]],[[1259,1259],"valid"],[[1260,1260],"mapped",[1261]],[[1261,1261],"valid"],[[1262,1262],"mapped",[1263]],[[1263,1263],"valid"],[[1264,1264],"mapped",[1265]],[[1265,1265],"valid"],[[1266,1266],"mapped",[1267]],[[1267,1267],"valid"],[[1268,1268],"mapped",[1269]],[[1269,1269],"valid"],[[1270,1270],"mapped",[1271]],[[1271,1271],"valid"],[[1272,1272],"mapped",[1273]],[[1273,1273],"valid"],[[1274,1274],"mapped",[1275]],[[1275,1275],"valid"],[[1276,1276],"mapped",[1277]],[[1277,1277],"valid"],[[1278,1278],"mapped",[1279]],[[1279,1279],"valid"],[[1280,1280],"mapped",[1281]],[[1281,1281],"valid"],[[1282,1282],"mapped",[1283]],[[1283,1283],"valid"],[[1284,1284],"mapped",[1285]],[[1285,1285],"valid"],[[1286,1286],"mapped",[1287]],[[1287,1287],"valid"],[[1288,1288],"mapped",[1289]],[[1289,1289],"valid"],[[1290,1290],"mapped",[1291]],[[1291,1291],"valid"],[[1292,1292],"mapped",[1293]],[[1293,1293],"valid"],[[1294,1294],"mapped",[1295]],[[1295,1295],"valid"],[[1296,1296],"mapped",[1297]],[[1297,1297],"valid"],[[1298,1298],"mapped",[1299]],[[1299,1299],"valid"],[[1300,1300],"mapped",[1301]],[[1301,1301],"valid"],[[1302,1302],"mapped",[1303]],[[1303,1303],"valid"],[[1304,1304],"mapped",[1305]],[[1305,1305],"valid"],[[1306,1306],"mapped",[1307]],[[1307,1307],"valid"],[[1308,1308],"mapped",[1309]],[[1309,1309],"valid"],[[1310,1310],"mapped",[1311]],[[1311,1311],"valid"],[[1312,1312],"mapped",[1313]],[[1313,1313],"valid"],[[1314,1314],"mapped",[1315]],[[1315,1315],"valid"],[[1316,1316],"mapped",[1317]],[[1317,1317],"valid"],[[1318,1318],"mapped",[1319]],[[1319,1319],"valid"],[[1320,1320],"mapped",[1321]],[[1321,1321],"valid"],[[1322,1322],"mapped",[1323]],[[1323,1323],"valid"],[[1324,1324],"mapped",[1325]],[[1325,1325],"valid"],[[1326,1326],"mapped",[1327]],[[1327,1327],"valid"],[[1328,1328],"disallowed"],[[1329,1329],"mapped",[1377]],[[1330,1330],"mapped",[1378]],[[1331,1331],"mapped",[1379]],[[1332,1332],"mapped",[1380]],[[1333,1333],"mapped",[1381]],[[1334,1334],"mapped",[1382]],[[1335,1335],"mapped",[1383]],[[1336,1336],"mapped",[1384]],[[1337,1337],"mapped",[1385]],[[1338,1338],"mapped",[1386]],[[1339,1339],"mapped",[1387]],[[1340,1340],"mapped",[1388]],[[1341,1341],"mapped",[1389]],[[1342,1342],"mapped",[1390]],[[1343,1343],"mapped",[1391]],[[1344,1344],"mapped",[1392]],[[1345,1345],"mapped",[1393]],[[1346,1346],"mapped",[1394]],[[1347,1347],"mapped",[1395]],[[1348,1348],"mapped",[1396]],[[1349,1349],"mapped",[1397]],[[1350,1350],"mapped",[1398]],[[1351,1351],"mapped",[1399]],[[1352,1352],"mapped",[1400]],[[1353,1353],"mapped",[1401]],[[1354,1354],"mapped",[1402]],[[1355,1355],"mapped",[1403]],[[1356,1356],"mapped",[1404]],[[1357,1357],"mapped",[1405]],[[1358,1358],"mapped",[1406]],[[1359,1359],"mapped",[1407]],[[1360,1360],"mapped",[1408]],[[1361,1361],"mapped",[1409]],[[1362,1362],"mapped",[1410]],[[1363,1363],"mapped",[1411]],[[1364,1364],"mapped",[1412]],[[1365,1365],"mapped",[1413]],[[1366,1366],"mapped",[1414]],[[1367,1368],"disallowed"],[[1369,1369],"valid"],[[1370,1375],"valid",[],"NV8"],[[1376,1376],"disallowed"],[[1377,1414],"valid"],[[1415,1415],"mapped",[1381,1410]],[[1416,1416],"disallowed"],[[1417,1417],"valid",[],"NV8"],[[1418,1418],"valid",[],"NV8"],[[1419,1420],"disallowed"],[[1421,1422],"valid",[],"NV8"],[[1423,1423],"valid",[],"NV8"],[[1424,1424],"disallowed"],[[1425,1441],"valid"],[[1442,1442],"valid"],[[1443,1455],"valid"],[[1456,1465],"valid"],[[1466,1466],"valid"],[[1467,1469],"valid"],[[1470,1470],"valid",[],"NV8"],[[1471,1471],"valid"],[[1472,1472],"valid",[],"NV8"],[[1473,1474],"valid"],[[1475,1475],"valid",[],"NV8"],[[1476,1476],"valid"],[[1477,1477],"valid"],[[1478,1478],"valid",[],"NV8"],[[1479,1479],"valid"],[[1480,1487],"disallowed"],[[1488,1514],"valid"],[[1515,1519],"disallowed"],[[1520,1524],"valid"],[[1525,1535],"disallowed"],[[1536,1539],"disallowed"],[[1540,1540],"disallowed"],[[1541,1541],"disallowed"],[[1542,1546],"valid",[],"NV8"],[[1547,1547],"valid",[],"NV8"],[[1548,1548],"valid",[],"NV8"],[[1549,1551],"valid",[],"NV8"],[[1552,1557],"valid"],[[1558,1562],"valid"],[[1563,1563],"valid",[],"NV8"],[[1564,1564],"disallowed"],[[1565,1565],"disallowed"],[[1566,1566],"valid",[],"NV8"],[[1567,1567],"valid",[],"NV8"],[[1568,1568],"valid"],[[1569,1594],"valid"],[[1595,1599],"valid"],[[1600,1600],"valid",[],"NV8"],[[1601,1618],"valid"],[[1619,1621],"valid"],[[1622,1624],"valid"],[[1625,1630],"valid"],[[1631,1631],"valid"],[[1632,1641],"valid"],[[1642,1645],"valid",[],"NV8"],[[1646,1647],"valid"],[[1648,1652],"valid"],[[1653,1653],"mapped",[1575,1652]],[[1654,1654],"mapped",[1608,1652]],[[1655,1655],"mapped",[1735,1652]],[[1656,1656],"mapped",[1610,1652]],[[1657,1719],"valid"],[[1720,1721],"valid"],[[1722,1726],"valid"],[[1727,1727],"valid"],[[1728,1742],"valid"],[[1743,1743],"valid"],[[1744,1747],"valid"],[[1748,1748],"valid",[],"NV8"],[[1749,1756],"valid"],[[1757,1757],"disallowed"],[[1758,1758],"valid",[],"NV8"],[[1759,1768],"valid"],[[1769,1769],"valid",[],"NV8"],[[1770,1773],"valid"],[[1774,1775],"valid"],[[1776,1785],"valid"],[[1786,1790],"valid"],[[1791,1791],"valid"],[[1792,1805],"valid",[],"NV8"],[[1806,1806],"disallowed"],[[1807,1807],"disallowed"],[[1808,1836],"valid"],[[1837,1839],"valid"],[[1840,1866],"valid"],[[1867,1868],"disallowed"],[[1869,1871],"valid"],[[1872,1901],"valid"],[[1902,1919],"valid"],[[1920,1968],"valid"],[[1969,1969],"valid"],[[1970,1983],"disallowed"],[[1984,2037],"valid"],[[2038,2042],"valid",[],"NV8"],[[2043,2047],"disallowed"],[[2048,2093],"valid"],[[2094,2095],"disallowed"],[[2096,2110],"valid",[],"NV8"],[[2111,2111],"disallowed"],[[2112,2139],"valid"],[[2140,2141],"disallowed"],[[2142,2142],"valid",[],"NV8"],[[2143,2207],"disallowed"],[[2208,2208],"valid"],[[2209,2209],"valid"],[[2210,2220],"valid"],[[2221,2226],"valid"],[[2227,2228],"valid"],[[2229,2274],"disallowed"],[[2275,2275],"valid"],[[2276,2302],"valid"],[[2303,2303],"valid"],[[2304,2304],"valid"],[[2305,2307],"valid"],[[2308,2308],"valid"],[[2309,2361],"valid"],[[2362,2363],"valid"],[[2364,2381],"valid"],[[2382,2382],"valid"],[[2383,2383],"valid"],[[2384,2388],"valid"],[[2389,2389],"valid"],[[2390,2391],"valid"],[[2392,2392],"mapped",[2325,2364]],[[2393,2393],"mapped",[2326,2364]],[[2394,2394],"mapped",[2327,2364]],[[2395,2395],"mapped",[2332,2364]],[[2396,2396],"mapped",[2337,2364]],[[2397,2397],"mapped",[2338,2364]],[[2398,2398],"mapped",[2347,2364]],[[2399,2399],"mapped",[2351,2364]],[[2400,2403],"valid"],[[2404,2405],"valid",[],"NV8"],[[2406,2415],"valid"],[[2416,2416],"valid",[],"NV8"],[[2417,2418],"valid"],[[2419,2423],"valid"],[[2424,2424],"valid"],[[2425,2426],"valid"],[[2427,2428],"valid"],[[2429,2429],"valid"],[[2430,2431],"valid"],[[2432,2432],"valid"],[[2433,2435],"valid"],[[2436,2436],"disallowed"],[[2437,2444],"valid"],[[2445,2446],"disallowed"],[[2447,2448],"valid"],[[2449,2450],"disallowed"],[[2451,2472],"valid"],[[2473,2473],"disallowed"],[[2474,2480],"valid"],[[2481,2481],"disallowed"],[[2482,2482],"valid"],[[2483,2485],"disallowed"],[[2486,2489],"valid"],[[2490,2491],"disallowed"],[[2492,2492],"valid"],[[2493,2493],"valid"],[[2494,2500],"valid"],[[2501,2502],"disallowed"],[[2503,2504],"valid"],[[2505,2506],"disallowed"],[[2507,2509],"valid"],[[2510,2510],"valid"],[[2511,2518],"disallowed"],[[2519,2519],"valid"],[[2520,2523],"disallowed"],[[2524,2524],"mapped",[2465,2492]],[[2525,2525],"mapped",[2466,2492]],[[2526,2526],"disallowed"],[[2527,2527],"mapped",[2479,2492]],[[2528,2531],"valid"],[[2532,2533],"disallowed"],[[2534,2545],"valid"],[[2546,2554],"valid",[],"NV8"],[[2555,2555],"valid",[],"NV8"],[[2556,2560],"disallowed"],[[2561,2561],"valid"],[[2562,2562],"valid"],[[2563,2563],"valid"],[[2564,2564],"disallowed"],[[2565,2570],"valid"],[[2571,2574],"disallowed"],[[2575,2576],"valid"],[[2577,2578],"disallowed"],[[2579,2600],"valid"],[[2601,2601],"disallowed"],[[2602,2608],"valid"],[[2609,2609],"disallowed"],[[2610,2610],"valid"],[[2611,2611],"mapped",[2610,2620]],[[2612,2612],"disallowed"],[[2613,2613],"valid"],[[2614,2614],"mapped",[2616,2620]],[[2615,2615],"disallowed"],[[2616,2617],"valid"],[[2618,2619],"disallowed"],[[2620,2620],"valid"],[[2621,2621],"disallowed"],[[2622,2626],"valid"],[[2627,2630],"disallowed"],[[2631,2632],"valid"],[[2633,2634],"disallowed"],[[2635,2637],"valid"],[[2638,2640],"disallowed"],[[2641,2641],"valid"],[[2642,2648],"disallowed"],[[2649,2649],"mapped",[2582,2620]],[[2650,2650],"mapped",[2583,2620]],[[2651,2651],"mapped",[2588,2620]],[[2652,2652],"valid"],[[2653,2653],"disallowed"],[[2654,2654],"mapped",[2603,2620]],[[2655,2661],"disallowed"],[[2662,2676],"valid"],[[2677,2677],"valid"],[[2678,2688],"disallowed"],[[2689,2691],"valid"],[[2692,2692],"disallowed"],[[2693,2699],"valid"],[[2700,2700],"valid"],[[2701,2701],"valid"],[[2702,2702],"disallowed"],[[2703,2705],"valid"],[[2706,2706],"disallowed"],[[2707,2728],"valid"],[[2729,2729],"disallowed"],[[2730,2736],"valid"],[[2737,2737],"disallowed"],[[2738,2739],"valid"],[[2740,2740],"disallowed"],[[2741,2745],"valid"],[[2746,2747],"disallowed"],[[2748,2757],"valid"],[[2758,2758],"disallowed"],[[2759,2761],"valid"],[[2762,2762],"disallowed"],[[2763,2765],"valid"],[[2766,2767],"disallowed"],[[2768,2768],"valid"],[[2769,2783],"disallowed"],[[2784,2784],"valid"],[[2785,2787],"valid"],[[2788,2789],"disallowed"],[[2790,2799],"valid"],[[2800,2800],"valid",[],"NV8"],[[2801,2801],"valid",[],"NV8"],[[2802,2808],"disallowed"],[[2809,2809],"valid"],[[2810,2816],"disallowed"],[[2817,2819],"valid"],[[2820,2820],"disallowed"],[[2821,2828],"valid"],[[2829,2830],"disallowed"],[[2831,2832],"valid"],[[2833,2834],"disallowed"],[[2835,2856],"valid"],[[2857,2857],"disallowed"],[[2858,2864],"valid"],[[2865,2865],"disallowed"],[[2866,2867],"valid"],[[2868,2868],"disallowed"],[[2869,2869],"valid"],[[2870,2873],"valid"],[[2874,2875],"disallowed"],[[2876,2883],"valid"],[[2884,2884],"valid"],[[2885,2886],"disallowed"],[[2887,2888],"valid"],[[2889,2890],"disallowed"],[[2891,2893],"valid"],[[2894,2901],"disallowed"],[[2902,2903],"valid"],[[2904,2907],"disallowed"],[[2908,2908],"mapped",[2849,2876]],[[2909,2909],"mapped",[2850,2876]],[[2910,2910],"disallowed"],[[2911,2913],"valid"],[[2914,2915],"valid"],[[2916,2917],"disallowed"],[[2918,2927],"valid"],[[2928,2928],"valid",[],"NV8"],[[2929,2929],"valid"],[[2930,2935],"valid",[],"NV8"],[[2936,2945],"disallowed"],[[2946,2947],"valid"],[[2948,2948],"disallowed"],[[2949,2954],"valid"],[[2955,2957],"disallowed"],[[2958,2960],"valid"],[[2961,2961],"disallowed"],[[2962,2965],"valid"],[[2966,2968],"disallowed"],[[2969,2970],"valid"],[[2971,2971],"disallowed"],[[2972,2972],"valid"],[[2973,2973],"disallowed"],[[2974,2975],"valid"],[[2976,2978],"disallowed"],[[2979,2980],"valid"],[[2981,2983],"disallowed"],[[2984,2986],"valid"],[[2987,2989],"disallowed"],[[2990,2997],"valid"],[[2998,2998],"valid"],[[2999,3001],"valid"],[[3002,3005],"disallowed"],[[3006,3010],"valid"],[[3011,3013],"disallowed"],[[3014,3016],"valid"],[[3017,3017],"disallowed"],[[3018,3021],"valid"],[[3022,3023],"disallowed"],[[3024,3024],"valid"],[[3025,3030],"disallowed"],[[3031,3031],"valid"],[[3032,3045],"disallowed"],[[3046,3046],"valid"],[[3047,3055],"valid"],[[3056,3058],"valid",[],"NV8"],[[3059,3066],"valid",[],"NV8"],[[3067,3071],"disallowed"],[[3072,3072],"valid"],[[3073,3075],"valid"],[[3076,3076],"disallowed"],[[3077,3084],"valid"],[[3085,3085],"disallowed"],[[3086,3088],"valid"],[[3089,3089],"disallowed"],[[3090,3112],"valid"],[[3113,3113],"disallowed"],[[3114,3123],"valid"],[[3124,3124],"valid"],[[3125,3129],"valid"],[[3130,3132],"disallowed"],[[3133,3133],"valid"],[[3134,3140],"valid"],[[3141,3141],"disallowed"],[[3142,3144],"valid"],[[3145,3145],"disallowed"],[[3146,3149],"valid"],[[3150,3156],"disallowed"],[[3157,3158],"valid"],[[3159,3159],"disallowed"],[[3160,3161],"valid"],[[3162,3162],"valid"],[[3163,3167],"disallowed"],[[3168,3169],"valid"],[[3170,3171],"valid"],[[3172,3173],"disallowed"],[[3174,3183],"valid"],[[3184,3191],"disallowed"],[[3192,3199],"valid",[],"NV8"],[[3200,3200],"disallowed"],[[3201,3201],"valid"],[[3202,3203],"valid"],[[3204,3204],"disallowed"],[[3205,3212],"valid"],[[3213,3213],"disallowed"],[[3214,3216],"valid"],[[3217,3217],"disallowed"],[[3218,3240],"valid"],[[3241,3241],"disallowed"],[[3242,3251],"valid"],[[3252,3252],"disallowed"],[[3253,3257],"valid"],[[3258,3259],"disallowed"],[[3260,3261],"valid"],[[3262,3268],"valid"],[[3269,3269],"disallowed"],[[3270,3272],"valid"],[[3273,3273],"disallowed"],[[3274,3277],"valid"],[[3278,3284],"disallowed"],[[3285,3286],"valid"],[[3287,3293],"disallowed"],[[3294,3294],"valid"],[[3295,3295],"disallowed"],[[3296,3297],"valid"],[[3298,3299],"valid"],[[3300,3301],"disallowed"],[[3302,3311],"valid"],[[3312,3312],"disallowed"],[[3313,3314],"valid"],[[3315,3328],"disallowed"],[[3329,3329],"valid"],[[3330,3331],"valid"],[[3332,3332],"disallowed"],[[3333,3340],"valid"],[[3341,3341],"disallowed"],[[3342,3344],"valid"],[[3345,3345],"disallowed"],[[3346,3368],"valid"],[[3369,3369],"valid"],[[3370,3385],"valid"],[[3386,3386],"valid"],[[3387,3388],"disallowed"],[[3389,3389],"valid"],[[3390,3395],"valid"],[[3396,3396],"valid"],[[3397,3397],"disallowed"],[[3398,3400],"valid"],[[3401,3401],"disallowed"],[[3402,3405],"valid"],[[3406,3406],"valid"],[[3407,3414],"disallowed"],[[3415,3415],"valid"],[[3416,3422],"disallowed"],[[3423,3423],"valid"],[[3424,3425],"valid"],[[3426,3427],"valid"],[[3428,3429],"disallowed"],[[3430,3439],"valid"],[[3440,3445],"valid",[],"NV8"],[[3446,3448],"disallowed"],[[3449,3449],"valid",[],"NV8"],[[3450,3455],"valid"],[[3456,3457],"disallowed"],[[3458,3459],"valid"],[[3460,3460],"disallowed"],[[3461,3478],"valid"],[[3479,3481],"disallowed"],[[3482,3505],"valid"],[[3506,3506],"disallowed"],[[3507,3515],"valid"],[[3516,3516],"disallowed"],[[3517,3517],"valid"],[[3518,3519],"disallowed"],[[3520,3526],"valid"],[[3527,3529],"disallowed"],[[3530,3530],"valid"],[[3531,3534],"disallowed"],[[3535,3540],"valid"],[[3541,3541],"disallowed"],[[3542,3542],"valid"],[[3543,3543],"disallowed"],[[3544,3551],"valid"],[[3552,3557],"disallowed"],[[3558,3567],"valid"],[[3568,3569],"disallowed"],[[3570,3571],"valid"],[[3572,3572],"valid",[],"NV8"],[[3573,3584],"disallowed"],[[3585,3634],"valid"],[[3635,3635],"mapped",[3661,3634]],[[3636,3642],"valid"],[[3643,3646],"disallowed"],[[3647,3647],"valid",[],"NV8"],[[3648,3662],"valid"],[[3663,3663],"valid",[],"NV8"],[[3664,3673],"valid"],[[3674,3675],"valid",[],"NV8"],[[3676,3712],"disallowed"],[[3713,3714],"valid"],[[3715,3715],"disallowed"],[[3716,3716],"valid"],[[3717,3718],"disallowed"],[[3719,3720],"valid"],[[3721,3721],"disallowed"],[[3722,3722],"valid"],[[3723,3724],"disallowed"],[[3725,3725],"valid"],[[3726,3731],"disallowed"],[[3732,3735],"valid"],[[3736,3736],"disallowed"],[[3737,3743],"valid"],[[3744,3744],"disallowed"],[[3745,3747],"valid"],[[3748,3748],"disallowed"],[[3749,3749],"valid"],[[3750,3750],"disallowed"],[[3751,3751],"valid"],[[3752,3753],"disallowed"],[[3754,3755],"valid"],[[3756,3756],"disallowed"],[[3757,3762],"valid"],[[3763,3763],"mapped",[3789,3762]],[[3764,3769],"valid"],[[3770,3770],"disallowed"],[[3771,3773],"valid"],[[3774,3775],"disallowed"],[[3776,3780],"valid"],[[3781,3781],"disallowed"],[[3782,3782],"valid"],[[3783,3783],"disallowed"],[[3784,3789],"valid"],[[3790,3791],"disallowed"],[[3792,3801],"valid"],[[3802,3803],"disallowed"],[[3804,3804],"mapped",[3755,3737]],[[3805,3805],"mapped",[3755,3745]],[[3806,3807],"valid"],[[3808,3839],"disallowed"],[[3840,3840],"valid"],[[3841,3850],"valid",[],"NV8"],[[3851,3851],"valid"],[[3852,3852],"mapped",[3851]],[[3853,3863],"valid",[],"NV8"],[[3864,3865],"valid"],[[3866,3871],"valid",[],"NV8"],[[3872,3881],"valid"],[[3882,3892],"valid",[],"NV8"],[[3893,3893],"valid"],[[3894,3894],"valid",[],"NV8"],[[3895,3895],"valid"],[[3896,3896],"valid",[],"NV8"],[[3897,3897],"valid"],[[3898,3901],"valid",[],"NV8"],[[3902,3906],"valid"],[[3907,3907],"mapped",[3906,4023]],[[3908,3911],"valid"],[[3912,3912],"disallowed"],[[3913,3916],"valid"],[[3917,3917],"mapped",[3916,4023]],[[3918,3921],"valid"],[[3922,3922],"mapped",[3921,4023]],[[3923,3926],"valid"],[[3927,3927],"mapped",[3926,4023]],[[3928,3931],"valid"],[[3932,3932],"mapped",[3931,4023]],[[3933,3944],"valid"],[[3945,3945],"mapped",[3904,4021]],[[3946,3946],"valid"],[[3947,3948],"valid"],[[3949,3952],"disallowed"],[[3953,3954],"valid"],[[3955,3955],"mapped",[3953,3954]],[[3956,3956],"valid"],[[3957,3957],"mapped",[3953,3956]],[[3958,3958],"mapped",[4018,3968]],[[3959,3959],"mapped",[4018,3953,3968]],[[3960,3960],"mapped",[4019,3968]],[[3961,3961],"mapped",[4019,3953,3968]],[[3962,3968],"valid"],[[3969,3969],"mapped",[3953,3968]],[[3970,3972],"valid"],[[3973,3973],"valid",[],"NV8"],[[3974,3979],"valid"],[[3980,3983],"valid"],[[3984,3986],"valid"],[[3987,3987],"mapped",[3986,4023]],[[3988,3989],"valid"],[[3990,3990],"valid"],[[3991,3991],"valid"],[[3992,3992],"disallowed"],[[3993,3996],"valid"],[[3997,3997],"mapped",[3996,4023]],[[3998,4001],"valid"],[[4002,4002],"mapped",[4001,4023]],[[4003,4006],"valid"],[[4007,4007],"mapped",[4006,4023]],[[4008,4011],"valid"],[[4012,4012],"mapped",[4011,4023]],[[4013,4013],"valid"],[[4014,4016],"valid"],[[4017,4023],"valid"],[[4024,4024],"valid"],[[4025,4025],"mapped",[3984,4021]],[[4026,4028],"valid"],[[4029,4029],"disallowed"],[[4030,4037],"valid",[],"NV8"],[[4038,4038],"valid"],[[4039,4044],"valid",[],"NV8"],[[4045,4045],"disallowed"],[[4046,4046],"valid",[],"NV8"],[[4047,4047],"valid",[],"NV8"],[[4048,4049],"valid",[],"NV8"],[[4050,4052],"valid",[],"NV8"],[[4053,4056],"valid",[],"NV8"],[[4057,4058],"valid",[],"NV8"],[[4059,4095],"disallowed"],[[4096,4129],"valid"],[[4130,4130],"valid"],[[4131,4135],"valid"],[[4136,4136],"valid"],[[4137,4138],"valid"],[[4139,4139],"valid"],[[4140,4146],"valid"],[[4147,4149],"valid"],[[4150,4153],"valid"],[[4154,4159],"valid"],[[4160,4169],"valid"],[[4170,4175],"valid",[],"NV8"],[[4176,4185],"valid"],[[4186,4249],"valid"],[[4250,4253],"valid"],[[4254,4255],"valid",[],"NV8"],[[4256,4293],"disallowed"],[[4294,4294],"disallowed"],[[4295,4295],"mapped",[11559]],[[4296,4300],"disallowed"],[[4301,4301],"mapped",[11565]],[[4302,4303],"disallowed"],[[4304,4342],"valid"],[[4343,4344],"valid"],[[4345,4346],"valid"],[[4347,4347],"valid",[],"NV8"],[[4348,4348],"mapped",[4316]],[[4349,4351],"valid"],[[4352,4441],"valid",[],"NV8"],[[4442,4446],"valid",[],"NV8"],[[4447,4448],"disallowed"],[[4449,4514],"valid",[],"NV8"],[[4515,4519],"valid",[],"NV8"],[[4520,4601],"valid",[],"NV8"],[[4602,4607],"valid",[],"NV8"],[[4608,4614],"valid"],[[4615,4615],"valid"],[[4616,4678],"valid"],[[4679,4679],"valid"],[[4680,4680],"valid"],[[4681,4681],"disallowed"],[[4682,4685],"valid"],[[4686,4687],"disallowed"],[[4688,4694],"valid"],[[4695,4695],"disallowed"],[[4696,4696],"valid"],[[4697,4697],"disallowed"],[[4698,4701],"valid"],[[4702,4703],"disallowed"],[[4704,4742],"valid"],[[4743,4743],"valid"],[[4744,4744],"valid"],[[4745,4745],"disallowed"],[[4746,4749],"valid"],[[4750,4751],"disallowed"],[[4752,4782],"valid"],[[4783,4783],"valid"],[[4784,4784],"valid"],[[4785,4785],"disallowed"],[[4786,4789],"valid"],[[4790,4791],"disallowed"],[[4792,4798],"valid"],[[4799,4799],"disallowed"],[[4800,4800],"valid"],[[4801,4801],"disallowed"],[[4802,4805],"valid"],[[4806,4807],"disallowed"],[[4808,4814],"valid"],[[4815,4815],"valid"],[[4816,4822],"valid"],[[4823,4823],"disallowed"],[[4824,4846],"valid"],[[4847,4847],"valid"],[[4848,4878],"valid"],[[4879,4879],"valid"],[[4880,4880],"valid"],[[4881,4881],"disallowed"],[[4882,4885],"valid"],[[4886,4887],"disallowed"],[[4888,4894],"valid"],[[4895,4895],"valid"],[[4896,4934],"valid"],[[4935,4935],"valid"],[[4936,4954],"valid"],[[4955,4956],"disallowed"],[[4957,4958],"valid"],[[4959,4959],"valid"],[[4960,4960],"valid",[],"NV8"],[[4961,4988],"valid",[],"NV8"],[[4989,4991],"disallowed"],[[4992,5007],"valid"],[[5008,5017],"valid",[],"NV8"],[[5018,5023],"disallowed"],[[5024,5108],"valid"],[[5109,5109],"valid"],[[5110,5111],"disallowed"],[[5112,5112],"mapped",[5104]],[[5113,5113],"mapped",[5105]],[[5114,5114],"mapped",[5106]],[[5115,5115],"mapped",[5107]],[[5116,5116],"mapped",[5108]],[[5117,5117],"mapped",[5109]],[[5118,5119],"disallowed"],[[5120,5120],"valid",[],"NV8"],[[5121,5740],"valid"],[[5741,5742],"valid",[],"NV8"],[[5743,5750],"valid"],[[5751,5759],"valid"],[[5760,5760],"disallowed"],[[5761,5786],"valid"],[[5787,5788],"valid",[],"NV8"],[[5789,5791],"disallowed"],[[5792,5866],"valid"],[[5867,5872],"valid",[],"NV8"],[[5873,5880],"valid"],[[5881,5887],"disallowed"],[[5888,5900],"valid"],[[5901,5901],"disallowed"],[[5902,5908],"valid"],[[5909,5919],"disallowed"],[[5920,5940],"valid"],[[5941,5942],"valid",[],"NV8"],[[5943,5951],"disallowed"],[[5952,5971],"valid"],[[5972,5983],"disallowed"],[[5984,5996],"valid"],[[5997,5997],"disallowed"],[[5998,6000],"valid"],[[6001,6001],"disallowed"],[[6002,6003],"valid"],[[6004,6015],"disallowed"],[[6016,6067],"valid"],[[6068,6069],"disallowed"],[[6070,6099],"valid"],[[6100,6102],"valid",[],"NV8"],[[6103,6103],"valid"],[[6104,6107],"valid",[],"NV8"],[[6108,6108],"valid"],[[6109,6109],"valid"],[[6110,6111],"disallowed"],[[6112,6121],"valid"],[[6122,6127],"disallowed"],[[6128,6137],"valid",[],"NV8"],[[6138,6143],"disallowed"],[[6144,6149],"valid",[],"NV8"],[[6150,6150],"disallowed"],[[6151,6154],"valid",[],"NV8"],[[6155,6157],"ignored"],[[6158,6158],"disallowed"],[[6159,6159],"disallowed"],[[6160,6169],"valid"],[[6170,6175],"disallowed"],[[6176,6263],"valid"],[[6264,6271],"disallowed"],[[6272,6313],"valid"],[[6314,6314],"valid"],[[6315,6319],"disallowed"],[[6320,6389],"valid"],[[6390,6399],"disallowed"],[[6400,6428],"valid"],[[6429,6430],"valid"],[[6431,6431],"disallowed"],[[6432,6443],"valid"],[[6444,6447],"disallowed"],[[6448,6459],"valid"],[[6460,6463],"disallowed"],[[6464,6464],"valid",[],"NV8"],[[6465,6467],"disallowed"],[[6468,6469],"valid",[],"NV8"],[[6470,6509],"valid"],[[6510,6511],"disallowed"],[[6512,6516],"valid"],[[6517,6527],"disallowed"],[[6528,6569],"valid"],[[6570,6571],"valid"],[[6572,6575],"disallowed"],[[6576,6601],"valid"],[[6602,6607],"disallowed"],[[6608,6617],"valid"],[[6618,6618],"valid",[],"XV8"],[[6619,6621],"disallowed"],[[6622,6623],"valid",[],"NV8"],[[6624,6655],"valid",[],"NV8"],[[6656,6683],"valid"],[[6684,6685],"disallowed"],[[6686,6687],"valid",[],"NV8"],[[6688,6750],"valid"],[[6751,6751],"disallowed"],[[6752,6780],"valid"],[[6781,6782],"disallowed"],[[6783,6793],"valid"],[[6794,6799],"disallowed"],[[6800,6809],"valid"],[[6810,6815],"disallowed"],[[6816,6822],"valid",[],"NV8"],[[6823,6823],"valid"],[[6824,6829],"valid",[],"NV8"],[[6830,6831],"disallowed"],[[6832,6845],"valid"],[[6846,6846],"valid",[],"NV8"],[[6847,6911],"disallowed"],[[6912,6987],"valid"],[[6988,6991],"disallowed"],[[6992,7001],"valid"],[[7002,7018],"valid",[],"NV8"],[[7019,7027],"valid"],[[7028,7036],"valid",[],"NV8"],[[7037,7039],"disallowed"],[[7040,7082],"valid"],[[7083,7085],"valid"],[[7086,7097],"valid"],[[7098,7103],"valid"],[[7104,7155],"valid"],[[7156,7163],"disallowed"],[[7164,7167],"valid",[],"NV8"],[[7168,7223],"valid"],[[7224,7226],"disallowed"],[[7227,7231],"valid",[],"NV8"],[[7232,7241],"valid"],[[7242,7244],"disallowed"],[[7245,7293],"valid"],[[7294,7295],"valid",[],"NV8"],[[7296,7359],"disallowed"],[[7360,7367],"valid",[],"NV8"],[[7368,7375],"disallowed"],[[7376,7378],"valid"],[[7379,7379],"valid",[],"NV8"],[[7380,7410],"valid"],[[7411,7414],"valid"],[[7415,7415],"disallowed"],[[7416,7417],"valid"],[[7418,7423],"disallowed"],[[7424,7467],"valid"],[[7468,7468],"mapped",[97]],[[7469,7469],"mapped",[230]],[[7470,7470],"mapped",[98]],[[7471,7471],"valid"],[[7472,7472],"mapped",[100]],[[7473,7473],"mapped",[101]],[[7474,7474],"mapped",[477]],[[7475,7475],"mapped",[103]],[[7476,7476],"mapped",[104]],[[7477,7477],"mapped",[105]],[[7478,7478],"mapped",[106]],[[7479,7479],"mapped",[107]],[[7480,7480],"mapped",[108]],[[7481,7481],"mapped",[109]],[[7482,7482],"mapped",[110]],[[7483,7483],"valid"],[[7484,7484],"mapped",[111]],[[7485,7485],"mapped",[547]],[[7486,7486],"mapped",[112]],[[7487,7487],"mapped",[114]],[[7488,7488],"mapped",[116]],[[7489,7489],"mapped",[117]],[[7490,7490],"mapped",[119]],[[7491,7491],"mapped",[97]],[[7492,7492],"mapped",[592]],[[7493,7493],"mapped",[593]],[[7494,7494],"mapped",[7426]],[[7495,7495],"mapped",[98]],[[7496,7496],"mapped",[100]],[[7497,7497],"mapped",[101]],[[7498,7498],"mapped",[601]],[[7499,7499],"mapped",[603]],[[7500,7500],"mapped",[604]],[[7501,7501],"mapped",[103]],[[7502,7502],"valid"],[[7503,7503],"mapped",[107]],[[7504,7504],"mapped",[109]],[[7505,7505],"mapped",[331]],[[7506,7506],"mapped",[111]],[[7507,7507],"mapped",[596]],[[7508,7508],"mapped",[7446]],[[7509,7509],"mapped",[7447]],[[7510,7510],"mapped",[112]],[[7511,7511],"mapped",[116]],[[7512,7512],"mapped",[117]],[[7513,7513],"mapped",[7453]],[[7514,7514],"mapped",[623]],[[7515,7515],"mapped",[118]],[[7516,7516],"mapped",[7461]],[[7517,7517],"mapped",[946]],[[7518,7518],"mapped",[947]],[[7519,7519],"mapped",[948]],[[7520,7520],"mapped",[966]],[[7521,7521],"mapped",[967]],[[7522,7522],"mapped",[105]],[[7523,7523],"mapped",[114]],[[7524,7524],"mapped",[117]],[[7525,7525],"mapped",[118]],[[7526,7526],"mapped",[946]],[[7527,7527],"mapped",[947]],[[7528,7528],"mapped",[961]],[[7529,7529],"mapped",[966]],[[7530,7530],"mapped",[967]],[[7531,7531],"valid"],[[7532,7543],"valid"],[[7544,7544],"mapped",[1085]],[[7545,7578],"valid"],[[7579,7579],"mapped",[594]],[[7580,7580],"mapped",[99]],[[7581,7581],"mapped",[597]],[[7582,7582],"mapped",[240]],[[7583,7583],"mapped",[604]],[[7584,7584],"mapped",[102]],[[7585,7585],"mapped",[607]],[[7586,7586],"mapped",[609]],[[7587,7587],"mapped",[613]],[[7588,7588],"mapped",[616]],[[7589,7589],"mapped",[617]],[[7590,7590],"mapped",[618]],[[7591,7591],"mapped",[7547]],[[7592,7592],"mapped",[669]],[[7593,7593],"mapped",[621]],[[7594,7594],"mapped",[7557]],[[7595,7595],"mapped",[671]],[[7596,7596],"mapped",[625]],[[7597,7597],"mapped",[624]],[[7598,7598],"mapped",[626]],[[7599,7599],"mapped",[627]],[[7600,7600],"mapped",[628]],[[7601,7601],"mapped",[629]],[[7602,7602],"mapped",[632]],[[7603,7603],"mapped",[642]],[[7604,7604],"mapped",[643]],[[7605,7605],"mapped",[427]],[[7606,7606],"mapped",[649]],[[7607,7607],"mapped",[650]],[[7608,7608],"mapped",[7452]],[[7609,7609],"mapped",[651]],[[7610,7610],"mapped",[652]],[[7611,7611],"mapped",[122]],[[7612,7612],"mapped",[656]],[[7613,7613],"mapped",[657]],[[7614,7614],"mapped",[658]],[[7615,7615],"mapped",[952]],[[7616,7619],"valid"],[[7620,7626],"valid"],[[7627,7654],"valid"],[[7655,7669],"valid"],[[7670,7675],"disallowed"],[[7676,7676],"valid"],[[7677,7677],"valid"],[[7678,7679],"valid"],[[7680,7680],"mapped",[7681]],[[7681,7681],"valid"],[[7682,7682],"mapped",[7683]],[[7683,7683],"valid"],[[7684,7684],"mapped",[7685]],[[7685,7685],"valid"],[[7686,7686],"mapped",[7687]],[[7687,7687],"valid"],[[7688,7688],"mapped",[7689]],[[7689,7689],"valid"],[[7690,7690],"mapped",[7691]],[[7691,7691],"valid"],[[7692,7692],"mapped",[7693]],[[7693,7693],"valid"],[[7694,7694],"mapped",[7695]],[[7695,7695],"valid"],[[7696,7696],"mapped",[7697]],[[7697,7697],"valid"],[[7698,7698],"mapped",[7699]],[[7699,7699],"valid"],[[7700,7700],"mapped",[7701]],[[7701,7701],"valid"],[[7702,7702],"mapped",[7703]],[[7703,7703],"valid"],[[7704,7704],"mapped",[7705]],[[7705,7705],"valid"],[[7706,7706],"mapped",[7707]],[[7707,7707],"valid"],[[7708,7708],"mapped",[7709]],[[7709,7709],"valid"],[[7710,7710],"mapped",[7711]],[[7711,7711],"valid"],[[7712,7712],"mapped",[7713]],[[7713,7713],"valid"],[[7714,7714],"mapped",[7715]],[[7715,7715],"valid"],[[7716,7716],"mapped",[7717]],[[7717,7717],"valid"],[[7718,7718],"mapped",[7719]],[[7719,7719],"valid"],[[7720,7720],"mapped",[7721]],[[7721,7721],"valid"],[[7722,7722],"mapped",[7723]],[[7723,7723],"valid"],[[7724,7724],"mapped",[7725]],[[7725,7725],"valid"],[[7726,7726],"mapped",[7727]],[[7727,7727],"valid"],[[7728,7728],"mapped",[7729]],[[7729,7729],"valid"],[[7730,7730],"mapped",[7731]],[[7731,7731],"valid"],[[7732,7732],"mapped",[7733]],[[7733,7733],"valid"],[[7734,7734],"mapped",[7735]],[[7735,7735],"valid"],[[7736,7736],"mapped",[7737]],[[7737,7737],"valid"],[[7738,7738],"mapped",[7739]],[[7739,7739],"valid"],[[7740,7740],"mapped",[7741]],[[7741,7741],"valid"],[[7742,7742],"mapped",[7743]],[[7743,7743],"valid"],[[7744,7744],"mapped",[7745]],[[7745,7745],"valid"],[[7746,7746],"mapped",[7747]],[[7747,7747],"valid"],[[7748,7748],"mapped",[7749]],[[7749,7749],"valid"],[[7750,7750],"mapped",[7751]],[[7751,7751],"valid"],[[7752,7752],"mapped",[7753]],[[7753,7753],"valid"],[[7754,7754],"mapped",[7755]],[[7755,7755],"valid"],[[7756,7756],"mapped",[7757]],[[7757,7757],"valid"],[[7758,7758],"mapped",[7759]],[[7759,7759],"valid"],[[7760,7760],"mapped",[7761]],[[7761,7761],"valid"],[[7762,7762],"mapped",[7763]],[[7763,7763],"valid"],[[7764,7764],"mapped",[7765]],[[7765,7765],"valid"],[[7766,7766],"mapped",[7767]],[[7767,7767],"valid"],[[7768,7768],"mapped",[7769]],[[7769,7769],"valid"],[[7770,7770],"mapped",[7771]],[[7771,7771],"valid"],[[7772,7772],"mapped",[7773]],[[7773,7773],"valid"],[[7774,7774],"mapped",[7775]],[[7775,7775],"valid"],[[7776,7776],"mapped",[7777]],[[7777,7777],"valid"],[[7778,7778],"mapped",[7779]],[[7779,7779],"valid"],[[7780,7780],"mapped",[7781]],[[7781,7781],"valid"],[[7782,7782],"mapped",[7783]],[[7783,7783],"valid"],[[7784,7784],"mapped",[7785]],[[7785,7785],"valid"],[[7786,7786],"mapped",[7787]],[[7787,7787],"valid"],[[7788,7788],"mapped",[7789]],[[7789,7789],"valid"],[[7790,7790],"mapped",[7791]],[[7791,7791],"valid"],[[7792,7792],"mapped",[7793]],[[7793,7793],"valid"],[[7794,7794],"mapped",[7795]],[[7795,7795],"valid"],[[7796,7796],"mapped",[7797]],[[7797,7797],"valid"],[[7798,7798],"mapped",[7799]],[[7799,7799],"valid"],[[7800,7800],"mapped",[7801]],[[7801,7801],"valid"],[[7802,7802],"mapped",[7803]],[[7803,7803],"valid"],[[7804,7804],"mapped",[7805]],[[7805,7805],"valid"],[[7806,7806],"mapped",[7807]],[[7807,7807],"valid"],[[7808,7808],"mapped",[7809]],[[7809,7809],"valid"],[[7810,7810],"mapped",[7811]],[[7811,7811],"valid"],[[7812,7812],"mapped",[7813]],[[7813,7813],"valid"],[[7814,7814],"mapped",[7815]],[[7815,7815],"valid"],[[7816,7816],"mapped",[7817]],[[7817,7817],"valid"],[[7818,7818],"mapped",[7819]],[[7819,7819],"valid"],[[7820,7820],"mapped",[7821]],[[7821,7821],"valid"],[[7822,7822],"mapped",[7823]],[[7823,7823],"valid"],[[7824,7824],"mapped",[7825]],[[7825,7825],"valid"],[[7826,7826],"mapped",[7827]],[[7827,7827],"valid"],[[7828,7828],"mapped",[7829]],[[7829,7833],"valid"],[[7834,7834],"mapped",[97,702]],[[7835,7835],"mapped",[7777]],[[7836,7837],"valid"],[[7838,7838],"mapped",[115,115]],[[7839,7839],"valid"],[[7840,7840],"mapped",[7841]],[[7841,7841],"valid"],[[7842,7842],"mapped",[7843]],[[7843,7843],"valid"],[[7844,7844],"mapped",[7845]],[[7845,7845],"valid"],[[7846,7846],"mapped",[7847]],[[7847,7847],"valid"],[[7848,7848],"mapped",[7849]],[[7849,7849],"valid"],[[7850,7850],"mapped",[7851]],[[7851,7851],"valid"],[[7852,7852],"mapped",[7853]],[[7853,7853],"valid"],[[7854,7854],"mapped",[7855]],[[7855,7855],"valid"],[[7856,7856],"mapped",[7857]],[[7857,7857],"valid"],[[7858,7858],"mapped",[7859]],[[7859,7859],"valid"],[[7860,7860],"mapped",[7861]],[[7861,7861],"valid"],[[7862,7862],"mapped",[7863]],[[7863,7863],"valid"],[[7864,7864],"mapped",[7865]],[[7865,7865],"valid"],[[7866,7866],"mapped",[7867]],[[7867,7867],"valid"],[[7868,7868],"mapped",[7869]],[[7869,7869],"valid"],[[7870,7870],"mapped",[7871]],[[7871,7871],"valid"],[[7872,7872],"mapped",[7873]],[[7873,7873],"valid"],[[7874,7874],"mapped",[7875]],[[7875,7875],"valid"],[[7876,7876],"mapped",[7877]],[[7877,7877],"valid"],[[7878,7878],"mapped",[7879]],[[7879,7879],"valid"],[[7880,7880],"mapped",[7881]],[[7881,7881],"valid"],[[7882,7882],"mapped",[7883]],[[7883,7883],"valid"],[[7884,7884],"mapped",[7885]],[[7885,7885],"valid"],[[7886,7886],"mapped",[7887]],[[7887,7887],"valid"],[[7888,7888],"mapped",[7889]],[[7889,7889],"valid"],[[7890,7890],"mapped",[7891]],[[7891,7891],"valid"],[[7892,7892],"mapped",[7893]],[[7893,7893],"valid"],[[7894,7894],"mapped",[7895]],[[7895,7895],"valid"],[[7896,7896],"mapped",[7897]],[[7897,7897],"valid"],[[7898,7898],"mapped",[7899]],[[7899,7899],"valid"],[[7900,7900],"mapped",[7901]],[[7901,7901],"valid"],[[7902,7902],"mapped",[7903]],[[7903,7903],"valid"],[[7904,7904],"mapped",[7905]],[[7905,7905],"valid"],[[7906,7906],"mapped",[7907]],[[7907,7907],"valid"],[[7908,7908],"mapped",[7909]],[[7909,7909],"valid"],[[7910,7910],"mapped",[7911]],[[7911,7911],"valid"],[[7912,7912],"mapped",[7913]],[[7913,7913],"valid"],[[7914,7914],"mapped",[7915]],[[7915,7915],"valid"],[[7916,7916],"mapped",[7917]],[[7917,7917],"valid"],[[7918,7918],"mapped",[7919]],[[7919,7919],"valid"],[[7920,7920],"mapped",[7921]],[[7921,7921],"valid"],[[7922,7922],"mapped",[7923]],[[7923,7923],"valid"],[[7924,7924],"mapped",[7925]],[[7925,7925],"valid"],[[7926,7926],"mapped",[7927]],[[7927,7927],"valid"],[[7928,7928],"mapped",[7929]],[[7929,7929],"valid"],[[7930,7930],"mapped",[7931]],[[7931,7931],"valid"],[[7932,7932],"mapped",[7933]],[[7933,7933],"valid"],[[7934,7934],"mapped",[7935]],[[7935,7935],"valid"],[[7936,7943],"valid"],[[7944,7944],"mapped",[7936]],[[7945,7945],"mapped",[7937]],[[7946,7946],"mapped",[7938]],[[7947,7947],"mapped",[7939]],[[7948,7948],"mapped",[7940]],[[7949,7949],"mapped",[7941]],[[7950,7950],"mapped",[7942]],[[7951,7951],"mapped",[7943]],[[7952,7957],"valid"],[[7958,7959],"disallowed"],[[7960,7960],"mapped",[7952]],[[7961,7961],"mapped",[7953]],[[7962,7962],"mapped",[7954]],[[7963,7963],"mapped",[7955]],[[7964,7964],"mapped",[7956]],[[7965,7965],"mapped",[7957]],[[7966,7967],"disallowed"],[[7968,7975],"valid"],[[7976,7976],"mapped",[7968]],[[7977,7977],"mapped",[7969]],[[7978,7978],"mapped",[7970]],[[7979,7979],"mapped",[7971]],[[7980,7980],"mapped",[7972]],[[7981,7981],"mapped",[7973]],[[7982,7982],"mapped",[7974]],[[7983,7983],"mapped",[7975]],[[7984,7991],"valid"],[[7992,7992],"mapped",[7984]],[[7993,7993],"mapped",[7985]],[[7994,7994],"mapped",[7986]],[[7995,7995],"mapped",[7987]],[[7996,7996],"mapped",[7988]],[[7997,7997],"mapped",[7989]],[[7998,7998],"mapped",[7990]],[[7999,7999],"mapped",[7991]],[[8000,8005],"valid"],[[8006,8007],"disallowed"],[[8008,8008],"mapped",[8000]],[[8009,8009],"mapped",[8001]],[[8010,8010],"mapped",[8002]],[[8011,8011],"mapped",[8003]],[[8012,8012],"mapped",[8004]],[[8013,8013],"mapped",[8005]],[[8014,8015],"disallowed"],[[8016,8023],"valid"],[[8024,8024],"disallowed"],[[8025,8025],"mapped",[8017]],[[8026,8026],"disallowed"],[[8027,8027],"mapped",[8019]],[[8028,8028],"disallowed"],[[8029,8029],"mapped",[8021]],[[8030,8030],"disallowed"],[[8031,8031],"mapped",[8023]],[[8032,8039],"valid"],[[8040,8040],"mapped",[8032]],[[8041,8041],"mapped",[8033]],[[8042,8042],"mapped",[8034]],[[8043,8043],"mapped",[8035]],[[8044,8044],"mapped",[8036]],[[8045,8045],"mapped",[8037]],[[8046,8046],"mapped",[8038]],[[8047,8047],"mapped",[8039]],[[8048,8048],"valid"],[[8049,8049],"mapped",[940]],[[8050,8050],"valid"],[[8051,8051],"mapped",[941]],[[8052,8052],"valid"],[[8053,8053],"mapped",[942]],[[8054,8054],"valid"],[[8055,8055],"mapped",[943]],[[8056,8056],"valid"],[[8057,8057],"mapped",[972]],[[8058,8058],"valid"],[[8059,8059],"mapped",[973]],[[8060,8060],"valid"],[[8061,8061],"mapped",[974]],[[8062,8063],"disallowed"],[[8064,8064],"mapped",[7936,953]],[[8065,8065],"mapped",[7937,953]],[[8066,8066],"mapped",[7938,953]],[[8067,8067],"mapped",[7939,953]],[[8068,8068],"mapped",[7940,953]],[[8069,8069],"mapped",[7941,953]],[[8070,8070],"mapped",[7942,953]],[[8071,8071],"mapped",[7943,953]],[[8072,8072],"mapped",[7936,953]],[[8073,8073],"mapped",[7937,953]],[[8074,8074],"mapped",[7938,953]],[[8075,8075],"mapped",[7939,953]],[[8076,8076],"mapped",[7940,953]],[[8077,8077],"mapped",[7941,953]],[[8078,8078],"mapped",[7942,953]],[[8079,8079],"mapped",[7943,953]],[[8080,8080],"mapped",[7968,953]],[[8081,8081],"mapped",[7969,953]],[[8082,8082],"mapped",[7970,953]],[[8083,8083],"mapped",[7971,953]],[[8084,8084],"mapped",[7972,953]],[[8085,8085],"mapped",[7973,953]],[[8086,8086],"mapped",[7974,953]],[[8087,8087],"mapped",[7975,953]],[[8088,8088],"mapped",[7968,953]],[[8089,8089],"mapped",[7969,953]],[[8090,8090],"mapped",[7970,953]],[[8091,8091],"mapped",[7971,953]],[[8092,8092],"mapped",[7972,953]],[[8093,8093],"mapped",[7973,953]],[[8094,8094],"mapped",[7974,953]],[[8095,8095],"mapped",[7975,953]],[[8096,8096],"mapped",[8032,953]],[[8097,8097],"mapped",[8033,953]],[[8098,8098],"mapped",[8034,953]],[[8099,8099],"mapped",[8035,953]],[[8100,8100],"mapped",[8036,953]],[[8101,8101],"mapped",[8037,953]],[[8102,8102],"mapped",[8038,953]],[[8103,8103],"mapped",[8039,953]],[[8104,8104],"mapped",[8032,953]],[[8105,8105],"mapped",[8033,953]],[[8106,8106],"mapped",[8034,953]],[[8107,8107],"mapped",[8035,953]],[[8108,8108],"mapped",[8036,953]],[[8109,8109],"mapped",[8037,953]],[[8110,8110],"mapped",[8038,953]],[[8111,8111],"mapped",[8039,953]],[[8112,8113],"valid"],[[8114,8114],"mapped",[8048,953]],[[8115,8115],"mapped",[945,953]],[[8116,8116],"mapped",[940,953]],[[8117,8117],"disallowed"],[[8118,8118],"valid"],[[8119,8119],"mapped",[8118,953]],[[8120,8120],"mapped",[8112]],[[8121,8121],"mapped",[8113]],[[8122,8122],"mapped",[8048]],[[8123,8123],"mapped",[940]],[[8124,8124],"mapped",[945,953]],[[8125,8125],"disallowed_STD3_mapped",[32,787]],[[8126,8126],"mapped",[953]],[[8127,8127],"disallowed_STD3_mapped",[32,787]],[[8128,8128],"disallowed_STD3_mapped",[32,834]],[[8129,8129],"disallowed_STD3_mapped",[32,776,834]],[[8130,8130],"mapped",[8052,953]],[[8131,8131],"mapped",[951,953]],[[8132,8132],"mapped",[942,953]],[[8133,8133],"disallowed"],[[8134,8134],"valid"],[[8135,8135],"mapped",[8134,953]],[[8136,8136],"mapped",[8050]],[[8137,8137],"mapped",[941]],[[8138,8138],"mapped",[8052]],[[8139,8139],"mapped",[942]],[[8140,8140],"mapped",[951,953]],[[8141,8141],"disallowed_STD3_mapped",[32,787,768]],[[8142,8142],"disallowed_STD3_mapped",[32,787,769]],[[8143,8143],"disallowed_STD3_mapped",[32,787,834]],[[8144,8146],"valid"],[[8147,8147],"mapped",[912]],[[8148,8149],"disallowed"],[[8150,8151],"valid"],[[8152,8152],"mapped",[8144]],[[8153,8153],"mapped",[8145]],[[8154,8154],"mapped",[8054]],[[8155,8155],"mapped",[943]],[[8156,8156],"disallowed"],[[8157,8157],"disallowed_STD3_mapped",[32,788,768]],[[8158,8158],"disallowed_STD3_mapped",[32,788,769]],[[8159,8159],"disallowed_STD3_mapped",[32,788,834]],[[8160,8162],"valid"],[[8163,8163],"mapped",[944]],[[8164,8167],"valid"],[[8168,8168],"mapped",[8160]],[[8169,8169],"mapped",[8161]],[[8170,8170],"mapped",[8058]],[[8171,8171],"mapped",[973]],[[8172,8172],"mapped",[8165]],[[8173,8173],"disallowed_STD3_mapped",[32,776,768]],[[8174,8174],"disallowed_STD3_mapped",[32,776,769]],[[8175,8175],"disallowed_STD3_mapped",[96]],[[8176,8177],"disallowed"],[[8178,8178],"mapped",[8060,953]],[[8179,8179],"mapped",[969,953]],[[8180,8180],"mapped",[974,953]],[[8181,8181],"disallowed"],[[8182,8182],"valid"],[[8183,8183],"mapped",[8182,953]],[[8184,8184],"mapped",[8056]],[[8185,8185],"mapped",[972]],[[8186,8186],"mapped",[8060]],[[8187,8187],"mapped",[974]],[[8188,8188],"mapped",[969,953]],[[8189,8189],"disallowed_STD3_mapped",[32,769]],[[8190,8190],"disallowed_STD3_mapped",[32,788]],[[8191,8191],"disallowed"],[[8192,8202],"disallowed_STD3_mapped",[32]],[[8203,8203],"ignored"],[[8204,8205],"deviation",[]],[[8206,8207],"disallowed"],[[8208,8208],"valid",[],"NV8"],[[8209,8209],"mapped",[8208]],[[8210,8214],"valid",[],"NV8"],[[8215,8215],"disallowed_STD3_mapped",[32,819]],[[8216,8227],"valid",[],"NV8"],[[8228,8230],"disallowed"],[[8231,8231],"valid",[],"NV8"],[[8232,8238],"disallowed"],[[8239,8239],"disallowed_STD3_mapped",[32]],[[8240,8242],"valid",[],"NV8"],[[8243,8243],"mapped",[8242,8242]],[[8244,8244],"mapped",[8242,8242,8242]],[[8245,8245],"valid",[],"NV8"],[[8246,8246],"mapped",[8245,8245]],[[8247,8247],"mapped",[8245,8245,8245]],[[8248,8251],"valid",[],"NV8"],[[8252,8252],"disallowed_STD3_mapped",[33,33]],[[8253,8253],"valid",[],"NV8"],[[8254,8254],"disallowed_STD3_mapped",[32,773]],[[8255,8262],"valid",[],"NV8"],[[8263,8263],"disallowed_STD3_mapped",[63,63]],[[8264,8264],"disallowed_STD3_mapped",[63,33]],[[8265,8265],"disallowed_STD3_mapped",[33,63]],[[8266,8269],"valid",[],"NV8"],[[8270,8274],"valid",[],"NV8"],[[8275,8276],"valid",[],"NV8"],[[8277,8278],"valid",[],"NV8"],[[8279,8279],"mapped",[8242,8242,8242,8242]],[[8280,8286],"valid",[],"NV8"],[[8287,8287],"disallowed_STD3_mapped",[32]],[[8288,8288],"ignored"],[[8289,8291],"disallowed"],[[8292,8292],"ignored"],[[8293,8293],"disallowed"],[[8294,8297],"disallowed"],[[8298,8303],"disallowed"],[[8304,8304],"mapped",[48]],[[8305,8305],"mapped",[105]],[[8306,8307],"disallowed"],[[8308,8308],"mapped",[52]],[[8309,8309],"mapped",[53]],[[8310,8310],"mapped",[54]],[[8311,8311],"mapped",[55]],[[8312,8312],"mapped",[56]],[[8313,8313],"mapped",[57]],[[8314,8314],"disallowed_STD3_mapped",[43]],[[8315,8315],"mapped",[8722]],[[8316,8316],"disallowed_STD3_mapped",[61]],[[8317,8317],"disallowed_STD3_mapped",[40]],[[8318,8318],"disallowed_STD3_mapped",[41]],[[8319,8319],"mapped",[110]],[[8320,8320],"mapped",[48]],[[8321,8321],"mapped",[49]],[[8322,8322],"mapped",[50]],[[8323,8323],"mapped",[51]],[[8324,8324],"mapped",[52]],[[8325,8325],"mapped",[53]],[[8326,8326],"mapped",[54]],[[8327,8327],"mapped",[55]],[[8328,8328],"mapped",[56]],[[8329,8329],"mapped",[57]],[[8330,8330],"disallowed_STD3_mapped",[43]],[[8331,8331],"mapped",[8722]],[[8332,8332],"disallowed_STD3_mapped",[61]],[[8333,8333],"disallowed_STD3_mapped",[40]],[[8334,8334],"disallowed_STD3_mapped",[41]],[[8335,8335],"disallowed"],[[8336,8336],"mapped",[97]],[[8337,8337],"mapped",[101]],[[8338,8338],"mapped",[111]],[[8339,8339],"mapped",[120]],[[8340,8340],"mapped",[601]],[[8341,8341],"mapped",[104]],[[8342,8342],"mapped",[107]],[[8343,8343],"mapped",[108]],[[8344,8344],"mapped",[109]],[[8345,8345],"mapped",[110]],[[8346,8346],"mapped",[112]],[[8347,8347],"mapped",[115]],[[8348,8348],"mapped",[116]],[[8349,8351],"disallowed"],[[8352,8359],"valid",[],"NV8"],[[8360,8360],"mapped",[114,115]],[[8361,8362],"valid",[],"NV8"],[[8363,8363],"valid",[],"NV8"],[[8364,8364],"valid",[],"NV8"],[[8365,8367],"valid",[],"NV8"],[[8368,8369],"valid",[],"NV8"],[[8370,8373],"valid",[],"NV8"],[[8374,8376],"valid",[],"NV8"],[[8377,8377],"valid",[],"NV8"],[[8378,8378],"valid",[],"NV8"],[[8379,8381],"valid",[],"NV8"],[[8382,8382],"valid",[],"NV8"],[[8383,8399],"disallowed"],[[8400,8417],"valid",[],"NV8"],[[8418,8419],"valid",[],"NV8"],[[8420,8426],"valid",[],"NV8"],[[8427,8427],"valid",[],"NV8"],[[8428,8431],"valid",[],"NV8"],[[8432,8432],"valid",[],"NV8"],[[8433,8447],"disallowed"],[[8448,8448],"disallowed_STD3_mapped",[97,47,99]],[[8449,8449],"disallowed_STD3_mapped",[97,47,115]],[[8450,8450],"mapped",[99]],[[8451,8451],"mapped",[176,99]],[[8452,8452],"valid",[],"NV8"],[[8453,8453],"disallowed_STD3_mapped",[99,47,111]],[[8454,8454],"disallowed_STD3_mapped",[99,47,117]],[[8455,8455],"mapped",[603]],[[8456,8456],"valid",[],"NV8"],[[8457,8457],"mapped",[176,102]],[[8458,8458],"mapped",[103]],[[8459,8462],"mapped",[104]],[[8463,8463],"mapped",[295]],[[8464,8465],"mapped",[105]],[[8466,8467],"mapped",[108]],[[8468,8468],"valid",[],"NV8"],[[8469,8469],"mapped",[110]],[[8470,8470],"mapped",[110,111]],[[8471,8472],"valid",[],"NV8"],[[8473,8473],"mapped",[112]],[[8474,8474],"mapped",[113]],[[8475,8477],"mapped",[114]],[[8478,8479],"valid",[],"NV8"],[[8480,8480],"mapped",[115,109]],[[8481,8481],"mapped",[116,101,108]],[[8482,8482],"mapped",[116,109]],[[8483,8483],"valid",[],"NV8"],[[8484,8484],"mapped",[122]],[[8485,8485],"valid",[],"NV8"],[[8486,8486],"mapped",[969]],[[8487,8487],"valid",[],"NV8"],[[8488,8488],"mapped",[122]],[[8489,8489],"valid",[],"NV8"],[[8490,8490],"mapped",[107]],[[8491,8491],"mapped",[229]],[[8492,8492],"mapped",[98]],[[8493,8493],"mapped",[99]],[[8494,8494],"valid",[],"NV8"],[[8495,8496],"mapped",[101]],[[8497,8497],"mapped",[102]],[[8498,8498],"disallowed"],[[8499,8499],"mapped",[109]],[[8500,8500],"mapped",[111]],[[8501,8501],"mapped",[1488]],[[8502,8502],"mapped",[1489]],[[8503,8503],"mapped",[1490]],[[8504,8504],"mapped",[1491]],[[8505,8505],"mapped",[105]],[[8506,8506],"valid",[],"NV8"],[[8507,8507],"mapped",[102,97,120]],[[8508,8508],"mapped",[960]],[[8509,8510],"mapped",[947]],[[8511,8511],"mapped",[960]],[[8512,8512],"mapped",[8721]],[[8513,8516],"valid",[],"NV8"],[[8517,8518],"mapped",[100]],[[8519,8519],"mapped",[101]],[[8520,8520],"mapped",[105]],[[8521,8521],"mapped",[106]],[[8522,8523],"valid",[],"NV8"],[[8524,8524],"valid",[],"NV8"],[[8525,8525],"valid",[],"NV8"],[[8526,8526],"valid"],[[8527,8527],"valid",[],"NV8"],[[8528,8528],"mapped",[49,8260,55]],[[8529,8529],"mapped",[49,8260,57]],[[8530,8530],"mapped",[49,8260,49,48]],[[8531,8531],"mapped",[49,8260,51]],[[8532,8532],"mapped",[50,8260,51]],[[8533,8533],"mapped",[49,8260,53]],[[8534,8534],"mapped",[50,8260,53]],[[8535,8535],"mapped",[51,8260,53]],[[8536,8536],"mapped",[52,8260,53]],[[8537,8537],"mapped",[49,8260,54]],[[8538,8538],"mapped",[53,8260,54]],[[8539,8539],"mapped",[49,8260,56]],[[8540,8540],"mapped",[51,8260,56]],[[8541,8541],"mapped",[53,8260,56]],[[8542,8542],"mapped",[55,8260,56]],[[8543,8543],"mapped",[49,8260]],[[8544,8544],"mapped",[105]],[[8545,8545],"mapped",[105,105]],[[8546,8546],"mapped",[105,105,105]],[[8547,8547],"mapped",[105,118]],[[8548,8548],"mapped",[118]],[[8549,8549],"mapped",[118,105]],[[8550,8550],"mapped",[118,105,105]],[[8551,8551],"mapped",[118,105,105,105]],[[8552,8552],"mapped",[105,120]],[[8553,8553],"mapped",[120]],[[8554,8554],"mapped",[120,105]],[[8555,8555],"mapped",[120,105,105]],[[8556,8556],"mapped",[108]],[[8557,8557],"mapped",[99]],[[8558,8558],"mapped",[100]],[[8559,8559],"mapped",[109]],[[8560,8560],"mapped",[105]],[[8561,8561],"mapped",[105,105]],[[8562,8562],"mapped",[105,105,105]],[[8563,8563],"mapped",[105,118]],[[8564,8564],"mapped",[118]],[[8565,8565],"mapped",[118,105]],[[8566,8566],"mapped",[118,105,105]],[[8567,8567],"mapped",[118,105,105,105]],[[8568,8568],"mapped",[105,120]],[[8569,8569],"mapped",[120]],[[8570,8570],"mapped",[120,105]],[[8571,8571],"mapped",[120,105,105]],[[8572,8572],"mapped",[108]],[[8573,8573],"mapped",[99]],[[8574,8574],"mapped",[100]],[[8575,8575],"mapped",[109]],[[8576,8578],"valid",[],"NV8"],[[8579,8579],"disallowed"],[[8580,8580],"valid"],[[8581,8584],"valid",[],"NV8"],[[8585,8585],"mapped",[48,8260,51]],[[8586,8587],"valid",[],"NV8"],[[8588,8591],"disallowed"],[[8592,8682],"valid",[],"NV8"],[[8683,8691],"valid",[],"NV8"],[[8692,8703],"valid",[],"NV8"],[[8704,8747],"valid",[],"NV8"],[[8748,8748],"mapped",[8747,8747]],[[8749,8749],"mapped",[8747,8747,8747]],[[8750,8750],"valid",[],"NV8"],[[8751,8751],"mapped",[8750,8750]],[[8752,8752],"mapped",[8750,8750,8750]],[[8753,8799],"valid",[],"NV8"],[[8800,8800],"disallowed_STD3_valid"],[[8801,8813],"valid",[],"NV8"],[[8814,8815],"disallowed_STD3_valid"],[[8816,8945],"valid",[],"NV8"],[[8946,8959],"valid",[],"NV8"],[[8960,8960],"valid",[],"NV8"],[[8961,8961],"valid",[],"NV8"],[[8962,9000],"valid",[],"NV8"],[[9001,9001],"mapped",[12296]],[[9002,9002],"mapped",[12297]],[[9003,9082],"valid",[],"NV8"],[[9083,9083],"valid",[],"NV8"],[[9084,9084],"valid",[],"NV8"],[[9085,9114],"valid",[],"NV8"],[[9115,9166],"valid",[],"NV8"],[[9167,9168],"valid",[],"NV8"],[[9169,9179],"valid",[],"NV8"],[[9180,9191],"valid",[],"NV8"],[[9192,9192],"valid",[],"NV8"],[[9193,9203],"valid",[],"NV8"],[[9204,9210],"valid",[],"NV8"],[[9211,9215],"disallowed"],[[9216,9252],"valid",[],"NV8"],[[9253,9254],"valid",[],"NV8"],[[9255,9279],"disallowed"],[[9280,9290],"valid",[],"NV8"],[[9291,9311],"disallowed"],[[9312,9312],"mapped",[49]],[[9313,9313],"mapped",[50]],[[9314,9314],"mapped",[51]],[[9315,9315],"mapped",[52]],[[9316,9316],"mapped",[53]],[[9317,9317],"mapped",[54]],[[9318,9318],"mapped",[55]],[[9319,9319],"mapped",[56]],[[9320,9320],"mapped",[57]],[[9321,9321],"mapped",[49,48]],[[9322,9322],"mapped",[49,49]],[[9323,9323],"mapped",[49,50]],[[9324,9324],"mapped",[49,51]],[[9325,9325],"mapped",[49,52]],[[9326,9326],"mapped",[49,53]],[[9327,9327],"mapped",[49,54]],[[9328,9328],"mapped",[49,55]],[[9329,9329],"mapped",[49,56]],[[9330,9330],"mapped",[49,57]],[[9331,9331],"mapped",[50,48]],[[9332,9332],"disallowed_STD3_mapped",[40,49,41]],[[9333,9333],"disallowed_STD3_mapped",[40,50,41]],[[9334,9334],"disallowed_STD3_mapped",[40,51,41]],[[9335,9335],"disallowed_STD3_mapped",[40,52,41]],[[9336,9336],"disallowed_STD3_mapped",[40,53,41]],[[9337,9337],"disallowed_STD3_mapped",[40,54,41]],[[9338,9338],"disallowed_STD3_mapped",[40,55,41]],[[9339,9339],"disallowed_STD3_mapped",[40,56,41]],[[9340,9340],"disallowed_STD3_mapped",[40,57,41]],[[9341,9341],"disallowed_STD3_mapped",[40,49,48,41]],[[9342,9342],"disallowed_STD3_mapped",[40,49,49,41]],[[9343,9343],"disallowed_STD3_mapped",[40,49,50,41]],[[9344,9344],"disallowed_STD3_mapped",[40,49,51,41]],[[9345,9345],"disallowed_STD3_mapped",[40,49,52,41]],[[9346,9346],"disallowed_STD3_mapped",[40,49,53,41]],[[9347,9347],"disallowed_STD3_mapped",[40,49,54,41]],[[9348,9348],"disallowed_STD3_mapped",[40,49,55,41]],[[9349,9349],"disallowed_STD3_mapped",[40,49,56,41]],[[9350,9350],"disallowed_STD3_mapped",[40,49,57,41]],[[9351,9351],"disallowed_STD3_mapped",[40,50,48,41]],[[9352,9371],"disallowed"],[[9372,9372],"disallowed_STD3_mapped",[40,97,41]],[[9373,9373],"disallowed_STD3_mapped",[40,98,41]],[[9374,9374],"disallowed_STD3_mapped",[40,99,41]],[[9375,9375],"disallowed_STD3_mapped",[40,100,41]],[[9376,9376],"disallowed_STD3_mapped",[40,101,41]],[[9377,9377],"disallowed_STD3_mapped",[40,102,41]],[[9378,9378],"disallowed_STD3_mapped",[40,103,41]],[[9379,9379],"disallowed_STD3_mapped",[40,104,41]],[[9380,9380],"disallowed_STD3_mapped",[40,105,41]],[[9381,9381],"disallowed_STD3_mapped",[40,106,41]],[[9382,9382],"disallowed_STD3_mapped",[40,107,41]],[[9383,9383],"disallowed_STD3_mapped",[40,108,41]],[[9384,9384],"disallowed_STD3_mapped",[40,109,41]],[[9385,9385],"disallowed_STD3_mapped",[40,110,41]],[[9386,9386],"disallowed_STD3_mapped",[40,111,41]],[[9387,9387],"disallowed_STD3_mapped",[40,112,41]],[[9388,9388],"disallowed_STD3_mapped",[40,113,41]],[[9389,9389],"disallowed_STD3_mapped",[40,114,41]],[[9390,9390],"disallowed_STD3_mapped",[40,115,41]],[[9391,9391],"disallowed_STD3_mapped",[40,116,41]],[[9392,9392],"disallowed_STD3_mapped",[40,117,41]],[[9393,9393],"disallowed_STD3_mapped",[40,118,41]],[[9394,9394],"disallowed_STD3_mapped",[40,119,41]],[[9395,9395],"disallowed_STD3_mapped",[40,120,41]],[[9396,9396],"disallowed_STD3_mapped",[40,121,41]],[[9397,9397],"disallowed_STD3_mapped",[40,122,41]],[[9398,9398],"mapped",[97]],[[9399,9399],"mapped",[98]],[[9400,9400],"mapped",[99]],[[9401,9401],"mapped",[100]],[[9402,9402],"mapped",[101]],[[9403,9403],"mapped",[102]],[[9404,9404],"mapped",[103]],[[9405,9405],"mapped",[104]],[[9406,9406],"mapped",[105]],[[9407,9407],"mapped",[106]],[[9408,9408],"mapped",[107]],[[9409,9409],"mapped",[108]],[[9410,9410],"mapped",[109]],[[9411,9411],"mapped",[110]],[[9412,9412],"mapped",[111]],[[9413,9413],"mapped",[112]],[[9414,9414],"mapped",[113]],[[9415,9415],"mapped",[114]],[[9416,9416],"mapped",[115]],[[9417,9417],"mapped",[116]],[[9418,9418],"mapped",[117]],[[9419,9419],"mapped",[118]],[[9420,9420],"mapped",[119]],[[9421,9421],"mapped",[120]],[[9422,9422],"mapped",[121]],[[9423,9423],"mapped",[122]],[[9424,9424],"mapped",[97]],[[9425,9425],"mapped",[98]],[[9426,9426],"mapped",[99]],[[9427,9427],"mapped",[100]],[[9428,9428],"mapped",[101]],[[9429,9429],"mapped",[102]],[[9430,9430],"mapped",[103]],[[9431,9431],"mapped",[104]],[[9432,9432],"mapped",[105]],[[9433,9433],"mapped",[106]],[[9434,9434],"mapped",[107]],[[9435,9435],"mapped",[108]],[[9436,9436],"mapped",[109]],[[9437,9437],"mapped",[110]],[[9438,9438],"mapped",[111]],[[9439,9439],"mapped",[112]],[[9440,9440],"mapped",[113]],[[9441,9441],"mapped",[114]],[[9442,9442],"mapped",[115]],[[9443,9443],"mapped",[116]],[[9444,9444],"mapped",[117]],[[9445,9445],"mapped",[118]],[[9446,9446],"mapped",[119]],[[9447,9447],"mapped",[120]],[[9448,9448],"mapped",[121]],[[9449,9449],"mapped",[122]],[[9450,9450],"mapped",[48]],[[9451,9470],"valid",[],"NV8"],[[9471,9471],"valid",[],"NV8"],[[9472,9621],"valid",[],"NV8"],[[9622,9631],"valid",[],"NV8"],[[9632,9711],"valid",[],"NV8"],[[9712,9719],"valid",[],"NV8"],[[9720,9727],"valid",[],"NV8"],[[9728,9747],"valid",[],"NV8"],[[9748,9749],"valid",[],"NV8"],[[9750,9751],"valid",[],"NV8"],[[9752,9752],"valid",[],"NV8"],[[9753,9753],"valid",[],"NV8"],[[9754,9839],"valid",[],"NV8"],[[9840,9841],"valid",[],"NV8"],[[9842,9853],"valid",[],"NV8"],[[9854,9855],"valid",[],"NV8"],[[9856,9865],"valid",[],"NV8"],[[9866,9873],"valid",[],"NV8"],[[9874,9884],"valid",[],"NV8"],[[9885,9885],"valid",[],"NV8"],[[9886,9887],"valid",[],"NV8"],[[9888,9889],"valid",[],"NV8"],[[9890,9905],"valid",[],"NV8"],[[9906,9906],"valid",[],"NV8"],[[9907,9916],"valid",[],"NV8"],[[9917,9919],"valid",[],"NV8"],[[9920,9923],"valid",[],"NV8"],[[9924,9933],"valid",[],"NV8"],[[9934,9934],"valid",[],"NV8"],[[9935,9953],"valid",[],"NV8"],[[9954,9954],"valid",[],"NV8"],[[9955,9955],"valid",[],"NV8"],[[9956,9959],"valid",[],"NV8"],[[9960,9983],"valid",[],"NV8"],[[9984,9984],"valid",[],"NV8"],[[9985,9988],"valid",[],"NV8"],[[9989,9989],"valid",[],"NV8"],[[9990,9993],"valid",[],"NV8"],[[9994,9995],"valid",[],"NV8"],[[9996,10023],"valid",[],"NV8"],[[10024,10024],"valid",[],"NV8"],[[10025,10059],"valid",[],"NV8"],[[10060,10060],"valid",[],"NV8"],[[10061,10061],"valid",[],"NV8"],[[10062,10062],"valid",[],"NV8"],[[10063,10066],"valid",[],"NV8"],[[10067,10069],"valid",[],"NV8"],[[10070,10070],"valid",[],"NV8"],[[10071,10071],"valid",[],"NV8"],[[10072,10078],"valid",[],"NV8"],[[10079,10080],"valid",[],"NV8"],[[10081,10087],"valid",[],"NV8"],[[10088,10101],"valid",[],"NV8"],[[10102,10132],"valid",[],"NV8"],[[10133,10135],"valid",[],"NV8"],[[10136,10159],"valid",[],"NV8"],[[10160,10160],"valid",[],"NV8"],[[10161,10174],"valid",[],"NV8"],[[10175,10175],"valid",[],"NV8"],[[10176,10182],"valid",[],"NV8"],[[10183,10186],"valid",[],"NV8"],[[10187,10187],"valid",[],"NV8"],[[10188,10188],"valid",[],"NV8"],[[10189,10189],"valid",[],"NV8"],[[10190,10191],"valid",[],"NV8"],[[10192,10219],"valid",[],"NV8"],[[10220,10223],"valid",[],"NV8"],[[10224,10239],"valid",[],"NV8"],[[10240,10495],"valid",[],"NV8"],[[10496,10763],"valid",[],"NV8"],[[10764,10764],"mapped",[8747,8747,8747,8747]],[[10765,10867],"valid",[],"NV8"],[[10868,10868],"disallowed_STD3_mapped",[58,58,61]],[[10869,10869],"disallowed_STD3_mapped",[61,61]],[[10870,10870],"disallowed_STD3_mapped",[61,61,61]],[[10871,10971],"valid",[],"NV8"],[[10972,10972],"mapped",[10973,824]],[[10973,11007],"valid",[],"NV8"],[[11008,11021],"valid",[],"NV8"],[[11022,11027],"valid",[],"NV8"],[[11028,11034],"valid",[],"NV8"],[[11035,11039],"valid",[],"NV8"],[[11040,11043],"valid",[],"NV8"],[[11044,11084],"valid",[],"NV8"],[[11085,11087],"valid",[],"NV8"],[[11088,11092],"valid",[],"NV8"],[[11093,11097],"valid",[],"NV8"],[[11098,11123],"valid",[],"NV8"],[[11124,11125],"disallowed"],[[11126,11157],"valid",[],"NV8"],[[11158,11159],"disallowed"],[[11160,11193],"valid",[],"NV8"],[[11194,11196],"disallowed"],[[11197,11208],"valid",[],"NV8"],[[11209,11209],"disallowed"],[[11210,11217],"valid",[],"NV8"],[[11218,11243],"disallowed"],[[11244,11247],"valid",[],"NV8"],[[11248,11263],"disallowed"],[[11264,11264],"mapped",[11312]],[[11265,11265],"mapped",[11313]],[[11266,11266],"mapped",[11314]],[[11267,11267],"mapped",[11315]],[[11268,11268],"mapped",[11316]],[[11269,11269],"mapped",[11317]],[[11270,11270],"mapped",[11318]],[[11271,11271],"mapped",[11319]],[[11272,11272],"mapped",[11320]],[[11273,11273],"mapped",[11321]],[[11274,11274],"mapped",[11322]],[[11275,11275],"mapped",[11323]],[[11276,11276],"mapped",[11324]],[[11277,11277],"mapped",[11325]],[[11278,11278],"mapped",[11326]],[[11279,11279],"mapped",[11327]],[[11280,11280],"mapped",[11328]],[[11281,11281],"mapped",[11329]],[[11282,11282],"mapped",[11330]],[[11283,11283],"mapped",[11331]],[[11284,11284],"mapped",[11332]],[[11285,11285],"mapped",[11333]],[[11286,11286],"mapped",[11334]],[[11287,11287],"mapped",[11335]],[[11288,11288],"mapped",[11336]],[[11289,11289],"mapped",[11337]],[[11290,11290],"mapped",[11338]],[[11291,11291],"mapped",[11339]],[[11292,11292],"mapped",[11340]],[[11293,11293],"mapped",[11341]],[[11294,11294],"mapped",[11342]],[[11295,11295],"mapped",[11343]],[[11296,11296],"mapped",[11344]],[[11297,11297],"mapped",[11345]],[[11298,11298],"mapped",[11346]],[[11299,11299],"mapped",[11347]],[[11300,11300],"mapped",[11348]],[[11301,11301],"mapped",[11349]],[[11302,11302],"mapped",[11350]],[[11303,11303],"mapped",[11351]],[[11304,11304],"mapped",[11352]],[[11305,11305],"mapped",[11353]],[[11306,11306],"mapped",[11354]],[[11307,11307],"mapped",[11355]],[[11308,11308],"mapped",[11356]],[[11309,11309],"mapped",[11357]],[[11310,11310],"mapped",[11358]],[[11311,11311],"disallowed"],[[11312,11358],"valid"],[[11359,11359],"disallowed"],[[11360,11360],"mapped",[11361]],[[11361,11361],"valid"],[[11362,11362],"mapped",[619]],[[11363,11363],"mapped",[7549]],[[11364,11364],"mapped",[637]],[[11365,11366],"valid"],[[11367,11367],"mapped",[11368]],[[11368,11368],"valid"],[[11369,11369],"mapped",[11370]],[[11370,11370],"valid"],[[11371,11371],"mapped",[11372]],[[11372,11372],"valid"],[[11373,11373],"mapped",[593]],[[11374,11374],"mapped",[625]],[[11375,11375],"mapped",[592]],[[11376,11376],"mapped",[594]],[[11377,11377],"valid"],[[11378,11378],"mapped",[11379]],[[11379,11379],"valid"],[[11380,11380],"valid"],[[11381,11381],"mapped",[11382]],[[11382,11383],"valid"],[[11384,11387],"valid"],[[11388,11388],"mapped",[106]],[[11389,11389],"mapped",[118]],[[11390,11390],"mapped",[575]],[[11391,11391],"mapped",[576]],[[11392,11392],"mapped",[11393]],[[11393,11393],"valid"],[[11394,11394],"mapped",[11395]],[[11395,11395],"valid"],[[11396,11396],"mapped",[11397]],[[11397,11397],"valid"],[[11398,11398],"mapped",[11399]],[[11399,11399],"valid"],[[11400,11400],"mapped",[11401]],[[11401,11401],"valid"],[[11402,11402],"mapped",[11403]],[[11403,11403],"valid"],[[11404,11404],"mapped",[11405]],[[11405,11405],"valid"],[[11406,11406],"mapped",[11407]],[[11407,11407],"valid"],[[11408,11408],"mapped",[11409]],[[11409,11409],"valid"],[[11410,11410],"mapped",[11411]],[[11411,11411],"valid"],[[11412,11412],"mapped",[11413]],[[11413,11413],"valid"],[[11414,11414],"mapped",[11415]],[[11415,11415],"valid"],[[11416,11416],"mapped",[11417]],[[11417,11417],"valid"],[[11418,11418],"mapped",[11419]],[[11419,11419],"valid"],[[11420,11420],"mapped",[11421]],[[11421,11421],"valid"],[[11422,11422],"mapped",[11423]],[[11423,11423],"valid"],[[11424,11424],"mapped",[11425]],[[11425,11425],"valid"],[[11426,11426],"mapped",[11427]],[[11427,11427],"valid"],[[11428,11428],"mapped",[11429]],[[11429,11429],"valid"],[[11430,11430],"mapped",[11431]],[[11431,11431],"valid"],[[11432,11432],"mapped",[11433]],[[11433,11433],"valid"],[[11434,11434],"mapped",[11435]],[[11435,11435],"valid"],[[11436,11436],"mapped",[11437]],[[11437,11437],"valid"],[[11438,11438],"mapped",[11439]],[[11439,11439],"valid"],[[11440,11440],"mapped",[11441]],[[11441,11441],"valid"],[[11442,11442],"mapped",[11443]],[[11443,11443],"valid"],[[11444,11444],"mapped",[11445]],[[11445,11445],"valid"],[[11446,11446],"mapped",[11447]],[[11447,11447],"valid"],[[11448,11448],"mapped",[11449]],[[11449,11449],"valid"],[[11450,11450],"mapped",[11451]],[[11451,11451],"valid"],[[11452,11452],"mapped",[11453]],[[11453,11453],"valid"],[[11454,11454],"mapped",[11455]],[[11455,11455],"valid"],[[11456,11456],"mapped",[11457]],[[11457,11457],"valid"],[[11458,11458],"mapped",[11459]],[[11459,11459],"valid"],[[11460,11460],"mapped",[11461]],[[11461,11461],"valid"],[[11462,11462],"mapped",[11463]],[[11463,11463],"valid"],[[11464,11464],"mapped",[11465]],[[11465,11465],"valid"],[[11466,11466],"mapped",[11467]],[[11467,11467],"valid"],[[11468,11468],"mapped",[11469]],[[11469,11469],"valid"],[[11470,11470],"mapped",[11471]],[[11471,11471],"valid"],[[11472,11472],"mapped",[11473]],[[11473,11473],"valid"],[[11474,11474],"mapped",[11475]],[[11475,11475],"valid"],[[11476,11476],"mapped",[11477]],[[11477,11477],"valid"],[[11478,11478],"mapped",[11479]],[[11479,11479],"valid"],[[11480,11480],"mapped",[11481]],[[11481,11481],"valid"],[[11482,11482],"mapped",[11483]],[[11483,11483],"valid"],[[11484,11484],"mapped",[11485]],[[11485,11485],"valid"],[[11486,11486],"mapped",[11487]],[[11487,11487],"valid"],[[11488,11488],"mapped",[11489]],[[11489,11489],"valid"],[[11490,11490],"mapped",[11491]],[[11491,11492],"valid"],[[11493,11498],"valid",[],"NV8"],[[11499,11499],"mapped",[11500]],[[11500,11500],"valid"],[[11501,11501],"mapped",[11502]],[[11502,11505],"valid"],[[11506,11506],"mapped",[11507]],[[11507,11507],"valid"],[[11508,11512],"disallowed"],[[11513,11519],"valid",[],"NV8"],[[11520,11557],"valid"],[[11558,11558],"disallowed"],[[11559,11559],"valid"],[[11560,11564],"disallowed"],[[11565,11565],"valid"],[[11566,11567],"disallowed"],[[11568,11621],"valid"],[[11622,11623],"valid"],[[11624,11630],"disallowed"],[[11631,11631],"mapped",[11617]],[[11632,11632],"valid",[],"NV8"],[[11633,11646],"disallowed"],[[11647,11647],"valid"],[[11648,11670],"valid"],[[11671,11679],"disallowed"],[[11680,11686],"valid"],[[11687,11687],"disallowed"],[[11688,11694],"valid"],[[11695,11695],"disallowed"],[[11696,11702],"valid"],[[11703,11703],"disallowed"],[[11704,11710],"valid"],[[11711,11711],"disallowed"],[[11712,11718],"valid"],[[11719,11719],"disallowed"],[[11720,11726],"valid"],[[11727,11727],"disallowed"],[[11728,11734],"valid"],[[11735,11735],"disallowed"],[[11736,11742],"valid"],[[11743,11743],"disallowed"],[[11744,11775],"valid"],[[11776,11799],"valid",[],"NV8"],[[11800,11803],"valid",[],"NV8"],[[11804,11805],"valid",[],"NV8"],[[11806,11822],"valid",[],"NV8"],[[11823,11823],"valid"],[[11824,11824],"valid",[],"NV8"],[[11825,11825],"valid",[],"NV8"],[[11826,11835],"valid",[],"NV8"],[[11836,11842],"valid",[],"NV8"],[[11843,11903],"disallowed"],[[11904,11929],"valid",[],"NV8"],[[11930,11930],"disallowed"],[[11931,11934],"valid",[],"NV8"],[[11935,11935],"mapped",[27597]],[[11936,12018],"valid",[],"NV8"],[[12019,12019],"mapped",[40863]],[[12020,12031],"disallowed"],[[12032,12032],"mapped",[19968]],[[12033,12033],"mapped",[20008]],[[12034,12034],"mapped",[20022]],[[12035,12035],"mapped",[20031]],[[12036,12036],"mapped",[20057]],[[12037,12037],"mapped",[20101]],[[12038,12038],"mapped",[20108]],[[12039,12039],"mapped",[20128]],[[12040,12040],"mapped",[20154]],[[12041,12041],"mapped",[20799]],[[12042,12042],"mapped",[20837]],[[12043,12043],"mapped",[20843]],[[12044,12044],"mapped",[20866]],[[12045,12045],"mapped",[20886]],[[12046,12046],"mapped",[20907]],[[12047,12047],"mapped",[20960]],[[12048,12048],"mapped",[20981]],[[12049,12049],"mapped",[20992]],[[12050,12050],"mapped",[21147]],[[12051,12051],"mapped",[21241]],[[12052,12052],"mapped",[21269]],[[12053,12053],"mapped",[21274]],[[12054,12054],"mapped",[21304]],[[12055,12055],"mapped",[21313]],[[12056,12056],"mapped",[21340]],[[12057,12057],"mapped",[21353]],[[12058,12058],"mapped",[21378]],[[12059,12059],"mapped",[21430]],[[12060,12060],"mapped",[21448]],[[12061,12061],"mapped",[21475]],[[12062,12062],"mapped",[22231]],[[12063,12063],"mapped",[22303]],[[12064,12064],"mapped",[22763]],[[12065,12065],"mapped",[22786]],[[12066,12066],"mapped",[22794]],[[12067,12067],"mapped",[22805]],[[12068,12068],"mapped",[22823]],[[12069,12069],"mapped",[22899]],[[12070,12070],"mapped",[23376]],[[12071,12071],"mapped",[23424]],[[12072,12072],"mapped",[23544]],[[12073,12073],"mapped",[23567]],[[12074,12074],"mapped",[23586]],[[12075,12075],"mapped",[23608]],[[12076,12076],"mapped",[23662]],[[12077,12077],"mapped",[23665]],[[12078,12078],"mapped",[24027]],[[12079,12079],"mapped",[24037]],[[12080,12080],"mapped",[24049]],[[12081,12081],"mapped",[24062]],[[12082,12082],"mapped",[24178]],[[12083,12083],"mapped",[24186]],[[12084,12084],"mapped",[24191]],[[12085,12085],"mapped",[24308]],[[12086,12086],"mapped",[24318]],[[12087,12087],"mapped",[24331]],[[12088,12088],"mapped",[24339]],[[12089,12089],"mapped",[24400]],[[12090,12090],"mapped",[24417]],[[12091,12091],"mapped",[24435]],[[12092,12092],"mapped",[24515]],[[12093,12093],"mapped",[25096]],[[12094,12094],"mapped",[25142]],[[12095,12095],"mapped",[25163]],[[12096,12096],"mapped",[25903]],[[12097,12097],"mapped",[25908]],[[12098,12098],"mapped",[25991]],[[12099,12099],"mapped",[26007]],[[12100,12100],"mapped",[26020]],[[12101,12101],"mapped",[26041]],[[12102,12102],"mapped",[26080]],[[12103,12103],"mapped",[26085]],[[12104,12104],"mapped",[26352]],[[12105,12105],"mapped",[26376]],[[12106,12106],"mapped",[26408]],[[12107,12107],"mapped",[27424]],[[12108,12108],"mapped",[27490]],[[12109,12109],"mapped",[27513]],[[12110,12110],"mapped",[27571]],[[12111,12111],"mapped",[27595]],[[12112,12112],"mapped",[27604]],[[12113,12113],"mapped",[27611]],[[12114,12114],"mapped",[27663]],[[12115,12115],"mapped",[27668]],[[12116,12116],"mapped",[27700]],[[12117,12117],"mapped",[28779]],[[12118,12118],"mapped",[29226]],[[12119,12119],"mapped",[29238]],[[12120,12120],"mapped",[29243]],[[12121,12121],"mapped",[29247]],[[12122,12122],"mapped",[29255]],[[12123,12123],"mapped",[29273]],[[12124,12124],"mapped",[29275]],[[12125,12125],"mapped",[29356]],[[12126,12126],"mapped",[29572]],[[12127,12127],"mapped",[29577]],[[12128,12128],"mapped",[29916]],[[12129,12129],"mapped",[29926]],[[12130,12130],"mapped",[29976]],[[12131,12131],"mapped",[29983]],[[12132,12132],"mapped",[29992]],[[12133,12133],"mapped",[30000]],[[12134,12134],"mapped",[30091]],[[12135,12135],"mapped",[30098]],[[12136,12136],"mapped",[30326]],[[12137,12137],"mapped",[30333]],[[12138,12138],"mapped",[30382]],[[12139,12139],"mapped",[30399]],[[12140,12140],"mapped",[30446]],[[12141,12141],"mapped",[30683]],[[12142,12142],"mapped",[30690]],[[12143,12143],"mapped",[30707]],[[12144,12144],"mapped",[31034]],[[12145,12145],"mapped",[31160]],[[12146,12146],"mapped",[31166]],[[12147,12147],"mapped",[31348]],[[12148,12148],"mapped",[31435]],[[12149,12149],"mapped",[31481]],[[12150,12150],"mapped",[31859]],[[12151,12151],"mapped",[31992]],[[12152,12152],"mapped",[32566]],[[12153,12153],"mapped",[32593]],[[12154,12154],"mapped",[32650]],[[12155,12155],"mapped",[32701]],[[12156,12156],"mapped",[32769]],[[12157,12157],"mapped",[32780]],[[12158,12158],"mapped",[32786]],[[12159,12159],"mapped",[32819]],[[12160,12160],"mapped",[32895]],[[12161,12161],"mapped",[32905]],[[12162,12162],"mapped",[33251]],[[12163,12163],"mapped",[33258]],[[12164,12164],"mapped",[33267]],[[12165,12165],"mapped",[33276]],[[12166,12166],"mapped",[33292]],[[12167,12167],"mapped",[33307]],[[12168,12168],"mapped",[33311]],[[12169,12169],"mapped",[33390]],[[12170,12170],"mapped",[33394]],[[12171,12171],"mapped",[33400]],[[12172,12172],"mapped",[34381]],[[12173,12173],"mapped",[34411]],[[12174,12174],"mapped",[34880]],[[12175,12175],"mapped",[34892]],[[12176,12176],"mapped",[34915]],[[12177,12177],"mapped",[35198]],[[12178,12178],"mapped",[35211]],[[12179,12179],"mapped",[35282]],[[12180,12180],"mapped",[35328]],[[12181,12181],"mapped",[35895]],[[12182,12182],"mapped",[35910]],[[12183,12183],"mapped",[35925]],[[12184,12184],"mapped",[35960]],[[12185,12185],"mapped",[35997]],[[12186,12186],"mapped",[36196]],[[12187,12187],"mapped",[36208]],[[12188,12188],"mapped",[36275]],[[12189,12189],"mapped",[36523]],[[12190,12190],"mapped",[36554]],[[12191,12191],"mapped",[36763]],[[12192,12192],"mapped",[36784]],[[12193,12193],"mapped",[36789]],[[12194,12194],"mapped",[37009]],[[12195,12195],"mapped",[37193]],[[12196,12196],"mapped",[37318]],[[12197,12197],"mapped",[37324]],[[12198,12198],"mapped",[37329]],[[12199,12199],"mapped",[38263]],[[12200,12200],"mapped",[38272]],[[12201,12201],"mapped",[38428]],[[12202,12202],"mapped",[38582]],[[12203,12203],"mapped",[38585]],[[12204,12204],"mapped",[38632]],[[12205,12205],"mapped",[38737]],[[12206,12206],"mapped",[38750]],[[12207,12207],"mapped",[38754]],[[12208,12208],"mapped",[38761]],[[12209,12209],"mapped",[38859]],[[12210,12210],"mapped",[38893]],[[12211,12211],"mapped",[38899]],[[12212,12212],"mapped",[38913]],[[12213,12213],"mapped",[39080]],[[12214,12214],"mapped",[39131]],[[12215,12215],"mapped",[39135]],[[12216,12216],"mapped",[39318]],[[12217,12217],"mapped",[39321]],[[12218,12218],"mapped",[39340]],[[12219,12219],"mapped",[39592]],[[12220,12220],"mapped",[39640]],[[12221,12221],"mapped",[39647]],[[12222,12222],"mapped",[39717]],[[12223,12223],"mapped",[39727]],[[12224,12224],"mapped",[39730]],[[12225,12225],"mapped",[39740]],[[12226,12226],"mapped",[39770]],[[12227,12227],"mapped",[40165]],[[12228,12228],"mapped",[40565]],[[12229,12229],"mapped",[40575]],[[12230,12230],"mapped",[40613]],[[12231,12231],"mapped",[40635]],[[12232,12232],"mapped",[40643]],[[12233,12233],"mapped",[40653]],[[12234,12234],"mapped",[40657]],[[12235,12235],"mapped",[40697]],[[12236,12236],"mapped",[40701]],[[12237,12237],"mapped",[40718]],[[12238,12238],"mapped",[40723]],[[12239,12239],"mapped",[40736]],[[12240,12240],"mapped",[40763]],[[12241,12241],"mapped",[40778]],[[12242,12242],"mapped",[40786]],[[12243,12243],"mapped",[40845]],[[12244,12244],"mapped",[40860]],[[12245,12245],"mapped",[40864]],[[12246,12271],"disallowed"],[[12272,12283],"disallowed"],[[12284,12287],"disallowed"],[[12288,12288],"disallowed_STD3_mapped",[32]],[[12289,12289],"valid",[],"NV8"],[[12290,12290],"mapped",[46]],[[12291,12292],"valid",[],"NV8"],[[12293,12295],"valid"],[[12296,12329],"valid",[],"NV8"],[[12330,12333],"valid"],[[12334,12341],"valid",[],"NV8"],[[12342,12342],"mapped",[12306]],[[12343,12343],"valid",[],"NV8"],[[12344,12344],"mapped",[21313]],[[12345,12345],"mapped",[21316]],[[12346,12346],"mapped",[21317]],[[12347,12347],"valid",[],"NV8"],[[12348,12348],"valid"],[[12349,12349],"valid",[],"NV8"],[[12350,12350],"valid",[],"NV8"],[[12351,12351],"valid",[],"NV8"],[[12352,12352],"disallowed"],[[12353,12436],"valid"],[[12437,12438],"valid"],[[12439,12440],"disallowed"],[[12441,12442],"valid"],[[12443,12443],"disallowed_STD3_mapped",[32,12441]],[[12444,12444],"disallowed_STD3_mapped",[32,12442]],[[12445,12446],"valid"],[[12447,12447],"mapped",[12424,12426]],[[12448,12448],"valid",[],"NV8"],[[12449,12542],"valid"],[[12543,12543],"mapped",[12467,12488]],[[12544,12548],"disallowed"],[[12549,12588],"valid"],[[12589,12589],"valid"],[[12590,12592],"disallowed"],[[12593,12593],"mapped",[4352]],[[12594,12594],"mapped",[4353]],[[12595,12595],"mapped",[4522]],[[12596,12596],"mapped",[4354]],[[12597,12597],"mapped",[4524]],[[12598,12598],"mapped",[4525]],[[12599,12599],"mapped",[4355]],[[12600,12600],"mapped",[4356]],[[12601,12601],"mapped",[4357]],[[12602,12602],"mapped",[4528]],[[12603,12603],"mapped",[4529]],[[12604,12604],"mapped",[4530]],[[12605,12605],"mapped",[4531]],[[12606,12606],"mapped",[4532]],[[12607,12607],"mapped",[4533]],[[12608,12608],"mapped",[4378]],[[12609,12609],"mapped",[4358]],[[12610,12610],"mapped",[4359]],[[12611,12611],"mapped",[4360]],[[12612,12612],"mapped",[4385]],[[12613,12613],"mapped",[4361]],[[12614,12614],"mapped",[4362]],[[12615,12615],"mapped",[4363]],[[12616,12616],"mapped",[4364]],[[12617,12617],"mapped",[4365]],[[12618,12618],"mapped",[4366]],[[12619,12619],"mapped",[4367]],[[12620,12620],"mapped",[4368]],[[12621,12621],"mapped",[4369]],[[12622,12622],"mapped",[4370]],[[12623,12623],"mapped",[4449]],[[12624,12624],"mapped",[4450]],[[12625,12625],"mapped",[4451]],[[12626,12626],"mapped",[4452]],[[12627,12627],"mapped",[4453]],[[12628,12628],"mapped",[4454]],[[12629,12629],"mapped",[4455]],[[12630,12630],"mapped",[4456]],[[12631,12631],"mapped",[4457]],[[12632,12632],"mapped",[4458]],[[12633,12633],"mapped",[4459]],[[12634,12634],"mapped",[4460]],[[12635,12635],"mapped",[4461]],[[12636,12636],"mapped",[4462]],[[12637,12637],"mapped",[4463]],[[12638,12638],"mapped",[4464]],[[12639,12639],"mapped",[4465]],[[12640,12640],"mapped",[4466]],[[12641,12641],"mapped",[4467]],[[12642,12642],"mapped",[4468]],[[12643,12643],"mapped",[4469]],[[12644,12644],"disallowed"],[[12645,12645],"mapped",[4372]],[[12646,12646],"mapped",[4373]],[[12647,12647],"mapped",[4551]],[[12648,12648],"mapped",[4552]],[[12649,12649],"mapped",[4556]],[[12650,12650],"mapped",[4558]],[[12651,12651],"mapped",[4563]],[[12652,12652],"mapped",[4567]],[[12653,12653],"mapped",[4569]],[[12654,12654],"mapped",[4380]],[[12655,12655],"mapped",[4573]],[[12656,12656],"mapped",[4575]],[[12657,12657],"mapped",[4381]],[[12658,12658],"mapped",[4382]],[[12659,12659],"mapped",[4384]],[[12660,12660],"mapped",[4386]],[[12661,12661],"mapped",[4387]],[[12662,12662],"mapped",[4391]],[[12663,12663],"mapped",[4393]],[[12664,12664],"mapped",[4395]],[[12665,12665],"mapped",[4396]],[[12666,12666],"mapped",[4397]],[[12667,12667],"mapped",[4398]],[[12668,12668],"mapped",[4399]],[[12669,12669],"mapped",[4402]],[[12670,12670],"mapped",[4406]],[[12671,12671],"mapped",[4416]],[[12672,12672],"mapped",[4423]],[[12673,12673],"mapped",[4428]],[[12674,12674],"mapped",[4593]],[[12675,12675],"mapped",[4594]],[[12676,12676],"mapped",[4439]],[[12677,12677],"mapped",[4440]],[[12678,12678],"mapped",[4441]],[[12679,12679],"mapped",[4484]],[[12680,12680],"mapped",[4485]],[[12681,12681],"mapped",[4488]],[[12682,12682],"mapped",[4497]],[[12683,12683],"mapped",[4498]],[[12684,12684],"mapped",[4500]],[[12685,12685],"mapped",[4510]],[[12686,12686],"mapped",[4513]],[[12687,12687],"disallowed"],[[12688,12689],"valid",[],"NV8"],[[12690,12690],"mapped",[19968]],[[12691,12691],"mapped",[20108]],[[12692,12692],"mapped",[19977]],[[12693,12693],"mapped",[22235]],[[12694,12694],"mapped",[19978]],[[12695,12695],"mapped",[20013]],[[12696,12696],"mapped",[19979]],[[12697,12697],"mapped",[30002]],[[12698,12698],"mapped",[20057]],[[12699,12699],"mapped",[19993]],[[12700,12700],"mapped",[19969]],[[12701,12701],"mapped",[22825]],[[12702,12702],"mapped",[22320]],[[12703,12703],"mapped",[20154]],[[12704,12727],"valid"],[[12728,12730],"valid"],[[12731,12735],"disallowed"],[[12736,12751],"valid",[],"NV8"],[[12752,12771],"valid",[],"NV8"],[[12772,12783],"disallowed"],[[12784,12799],"valid"],[[12800,12800],"disallowed_STD3_mapped",[40,4352,41]],[[12801,12801],"disallowed_STD3_mapped",[40,4354,41]],[[12802,12802],"disallowed_STD3_mapped",[40,4355,41]],[[12803,12803],"disallowed_STD3_mapped",[40,4357,41]],[[12804,12804],"disallowed_STD3_mapped",[40,4358,41]],[[12805,12805],"disallowed_STD3_mapped",[40,4359,41]],[[12806,12806],"disallowed_STD3_mapped",[40,4361,41]],[[12807,12807],"disallowed_STD3_mapped",[40,4363,41]],[[12808,12808],"disallowed_STD3_mapped",[40,4364,41]],[[12809,12809],"disallowed_STD3_mapped",[40,4366,41]],[[12810,12810],"disallowed_STD3_mapped",[40,4367,41]],[[12811,12811],"disallowed_STD3_mapped",[40,4368,41]],[[12812,12812],"disallowed_STD3_mapped",[40,4369,41]],[[12813,12813],"disallowed_STD3_mapped",[40,4370,41]],[[12814,12814],"disallowed_STD3_mapped",[40,44032,41]],[[12815,12815],"disallowed_STD3_mapped",[40,45208,41]],[[12816,12816],"disallowed_STD3_mapped",[40,45796,41]],[[12817,12817],"disallowed_STD3_mapped",[40,46972,41]],[[12818,12818],"disallowed_STD3_mapped",[40,47560,41]],[[12819,12819],"disallowed_STD3_mapped",[40,48148,41]],[[12820,12820],"disallowed_STD3_mapped",[40,49324,41]],[[12821,12821],"disallowed_STD3_mapped",[40,50500,41]],[[12822,12822],"disallowed_STD3_mapped",[40,51088,41]],[[12823,12823],"disallowed_STD3_mapped",[40,52264,41]],[[12824,12824],"disallowed_STD3_mapped",[40,52852,41]],[[12825,12825],"disallowed_STD3_mapped",[40,53440,41]],[[12826,12826],"disallowed_STD3_mapped",[40,54028,41]],[[12827,12827],"disallowed_STD3_mapped",[40,54616,41]],[[12828,12828],"disallowed_STD3_mapped",[40,51452,41]],[[12829,12829],"disallowed_STD3_mapped",[40,50724,51204,41]],[[12830,12830],"disallowed_STD3_mapped",[40,50724,54980,41]],[[12831,12831],"disallowed"],[[12832,12832],"disallowed_STD3_mapped",[40,19968,41]],[[12833,12833],"disallowed_STD3_mapped",[40,20108,41]],[[12834,12834],"disallowed_STD3_mapped",[40,19977,41]],[[12835,12835],"disallowed_STD3_mapped",[40,22235,41]],[[12836,12836],"disallowed_STD3_mapped",[40,20116,41]],[[12837,12837],"disallowed_STD3_mapped",[40,20845,41]],[[12838,12838],"disallowed_STD3_mapped",[40,19971,41]],[[12839,12839],"disallowed_STD3_mapped",[40,20843,41]],[[12840,12840],"disallowed_STD3_mapped",[40,20061,41]],[[12841,12841],"disallowed_STD3_mapped",[40,21313,41]],[[12842,12842],"disallowed_STD3_mapped",[40,26376,41]],[[12843,12843],"disallowed_STD3_mapped",[40,28779,41]],[[12844,12844],"disallowed_STD3_mapped",[40,27700,41]],[[12845,12845],"disallowed_STD3_mapped",[40,26408,41]],[[12846,12846],"disallowed_STD3_mapped",[40,37329,41]],[[12847,12847],"disallowed_STD3_mapped",[40,22303,41]],[[12848,12848],"disallowed_STD3_mapped",[40,26085,41]],[[12849,12849],"disallowed_STD3_mapped",[40,26666,41]],[[12850,12850],"disallowed_STD3_mapped",[40,26377,41]],[[12851,12851],"disallowed_STD3_mapped",[40,31038,41]],[[12852,12852],"disallowed_STD3_mapped",[40,21517,41]],[[12853,12853],"disallowed_STD3_mapped",[40,29305,41]],[[12854,12854],"disallowed_STD3_mapped",[40,36001,41]],[[12855,12855],"disallowed_STD3_mapped",[40,31069,41]],[[12856,12856],"disallowed_STD3_mapped",[40,21172,41]],[[12857,12857],"disallowed_STD3_mapped",[40,20195,41]],[[12858,12858],"disallowed_STD3_mapped",[40,21628,41]],[[12859,12859],"disallowed_STD3_mapped",[40,23398,41]],[[12860,12860],"disallowed_STD3_mapped",[40,30435,41]],[[12861,12861],"disallowed_STD3_mapped",[40,20225,41]],[[12862,12862],"disallowed_STD3_mapped",[40,36039,41]],[[12863,12863],"disallowed_STD3_mapped",[40,21332,41]],[[12864,12864],"disallowed_STD3_mapped",[40,31085,41]],[[12865,12865],"disallowed_STD3_mapped",[40,20241,41]],[[12866,12866],"disallowed_STD3_mapped",[40,33258,41]],[[12867,12867],"disallowed_STD3_mapped",[40,33267,41]],[[12868,12868],"mapped",[21839]],[[12869,12869],"mapped",[24188]],[[12870,12870],"mapped",[25991]],[[12871,12871],"mapped",[31631]],[[12872,12879],"valid",[],"NV8"],[[12880,12880],"mapped",[112,116,101]],[[12881,12881],"mapped",[50,49]],[[12882,12882],"mapped",[50,50]],[[12883,12883],"mapped",[50,51]],[[12884,12884],"mapped",[50,52]],[[12885,12885],"mapped",[50,53]],[[12886,12886],"mapped",[50,54]],[[12887,12887],"mapped",[50,55]],[[12888,12888],"mapped",[50,56]],[[12889,12889],"mapped",[50,57]],[[12890,12890],"mapped",[51,48]],[[12891,12891],"mapped",[51,49]],[[12892,12892],"mapped",[51,50]],[[12893,12893],"mapped",[51,51]],[[12894,12894],"mapped",[51,52]],[[12895,12895],"mapped",[51,53]],[[12896,12896],"mapped",[4352]],[[12897,12897],"mapped",[4354]],[[12898,12898],"mapped",[4355]],[[12899,12899],"mapped",[4357]],[[12900,12900],"mapped",[4358]],[[12901,12901],"mapped",[4359]],[[12902,12902],"mapped",[4361]],[[12903,12903],"mapped",[4363]],[[12904,12904],"mapped",[4364]],[[12905,12905],"mapped",[4366]],[[12906,12906],"mapped",[4367]],[[12907,12907],"mapped",[4368]],[[12908,12908],"mapped",[4369]],[[12909,12909],"mapped",[4370]],[[12910,12910],"mapped",[44032]],[[12911,12911],"mapped",[45208]],[[12912,12912],"mapped",[45796]],[[12913,12913],"mapped",[46972]],[[12914,12914],"mapped",[47560]],[[12915,12915],"mapped",[48148]],[[12916,12916],"mapped",[49324]],[[12917,12917],"mapped",[50500]],[[12918,12918],"mapped",[51088]],[[12919,12919],"mapped",[52264]],[[12920,12920],"mapped",[52852]],[[12921,12921],"mapped",[53440]],[[12922,12922],"mapped",[54028]],[[12923,12923],"mapped",[54616]],[[12924,12924],"mapped",[52280,44256]],[[12925,12925],"mapped",[51452,51032]],[[12926,12926],"mapped",[50864]],[[12927,12927],"valid",[],"NV8"],[[12928,12928],"mapped",[19968]],[[12929,12929],"mapped",[20108]],[[12930,12930],"mapped",[19977]],[[12931,12931],"mapped",[22235]],[[12932,12932],"mapped",[20116]],[[12933,12933],"mapped",[20845]],[[12934,12934],"mapped",[19971]],[[12935,12935],"mapped",[20843]],[[12936,12936],"mapped",[20061]],[[12937,12937],"mapped",[21313]],[[12938,12938],"mapped",[26376]],[[12939,12939],"mapped",[28779]],[[12940,12940],"mapped",[27700]],[[12941,12941],"mapped",[26408]],[[12942,12942],"mapped",[37329]],[[12943,12943],"mapped",[22303]],[[12944,12944],"mapped",[26085]],[[12945,12945],"mapped",[26666]],[[12946,12946],"mapped",[26377]],[[12947,12947],"mapped",[31038]],[[12948,12948],"mapped",[21517]],[[12949,12949],"mapped",[29305]],[[12950,12950],"mapped",[36001]],[[12951,12951],"mapped",[31069]],[[12952,12952],"mapped",[21172]],[[12953,12953],"mapped",[31192]],[[12954,12954],"mapped",[30007]],[[12955,12955],"mapped",[22899]],[[12956,12956],"mapped",[36969]],[[12957,12957],"mapped",[20778]],[[12958,12958],"mapped",[21360]],[[12959,12959],"mapped",[27880]],[[12960,12960],"mapped",[38917]],[[12961,12961],"mapped",[20241]],[[12962,12962],"mapped",[20889]],[[12963,12963],"mapped",[27491]],[[12964,12964],"mapped",[19978]],[[12965,12965],"mapped",[20013]],[[12966,12966],"mapped",[19979]],[[12967,12967],"mapped",[24038]],[[12968,12968],"mapped",[21491]],[[12969,12969],"mapped",[21307]],[[12970,12970],"mapped",[23447]],[[12971,12971],"mapped",[23398]],[[12972,12972],"mapped",[30435]],[[12973,12973],"mapped",[20225]],[[12974,12974],"mapped",[36039]],[[12975,12975],"mapped",[21332]],[[12976,12976],"mapped",[22812]],[[12977,12977],"mapped",[51,54]],[[12978,12978],"mapped",[51,55]],[[12979,12979],"mapped",[51,56]],[[12980,12980],"mapped",[51,57]],[[12981,12981],"mapped",[52,48]],[[12982,12982],"mapped",[52,49]],[[12983,12983],"mapped",[52,50]],[[12984,12984],"mapped",[52,51]],[[12985,12985],"mapped",[52,52]],[[12986,12986],"mapped",[52,53]],[[12987,12987],"mapped",[52,54]],[[12988,12988],"mapped",[52,55]],[[12989,12989],"mapped",[52,56]],[[12990,12990],"mapped",[52,57]],[[12991,12991],"mapped",[53,48]],[[12992,12992],"mapped",[49,26376]],[[12993,12993],"mapped",[50,26376]],[[12994,12994],"mapped",[51,26376]],[[12995,12995],"mapped",[52,26376]],[[12996,12996],"mapped",[53,26376]],[[12997,12997],"mapped",[54,26376]],[[12998,12998],"mapped",[55,26376]],[[12999,12999],"mapped",[56,26376]],[[13000,13000],"mapped",[57,26376]],[[13001,13001],"mapped",[49,48,26376]],[[13002,13002],"mapped",[49,49,26376]],[[13003,13003],"mapped",[49,50,26376]],[[13004,13004],"mapped",[104,103]],[[13005,13005],"mapped",[101,114,103]],[[13006,13006],"mapped",[101,118]],[[13007,13007],"mapped",[108,116,100]],[[13008,13008],"mapped",[12450]],[[13009,13009],"mapped",[12452]],[[13010,13010],"mapped",[12454]],[[13011,13011],"mapped",[12456]],[[13012,13012],"mapped",[12458]],[[13013,13013],"mapped",[12459]],[[13014,13014],"mapped",[12461]],[[13015,13015],"mapped",[12463]],[[13016,13016],"mapped",[12465]],[[13017,13017],"mapped",[12467]],[[13018,13018],"mapped",[12469]],[[13019,13019],"mapped",[12471]],[[13020,13020],"mapped",[12473]],[[13021,13021],"mapped",[12475]],[[13022,13022],"mapped",[12477]],[[13023,13023],"mapped",[12479]],[[13024,13024],"mapped",[12481]],[[13025,13025],"mapped",[12484]],[[13026,13026],"mapped",[12486]],[[13027,13027],"mapped",[12488]],[[13028,13028],"mapped",[12490]],[[13029,13029],"mapped",[12491]],[[13030,13030],"mapped",[12492]],[[13031,13031],"mapped",[12493]],[[13032,13032],"mapped",[12494]],[[13033,13033],"mapped",[12495]],[[13034,13034],"mapped",[12498]],[[13035,13035],"mapped",[12501]],[[13036,13036],"mapped",[12504]],[[13037,13037],"mapped",[12507]],[[13038,13038],"mapped",[12510]],[[13039,13039],"mapped",[12511]],[[13040,13040],"mapped",[12512]],[[13041,13041],"mapped",[12513]],[[13042,13042],"mapped",[12514]],[[13043,13043],"mapped",[12516]],[[13044,13044],"mapped",[12518]],[[13045,13045],"mapped",[12520]],[[13046,13046],"mapped",[12521]],[[13047,13047],"mapped",[12522]],[[13048,13048],"mapped",[12523]],[[13049,13049],"mapped",[12524]],[[13050,13050],"mapped",[12525]],[[13051,13051],"mapped",[12527]],[[13052,13052],"mapped",[12528]],[[13053,13053],"mapped",[12529]],[[13054,13054],"mapped",[12530]],[[13055,13055],"disallowed"],[[13056,13056],"mapped",[12450,12497,12540,12488]],[[13057,13057],"mapped",[12450,12523,12501,12449]],[[13058,13058],"mapped",[12450,12531,12506,12450]],[[13059,13059],"mapped",[12450,12540,12523]],[[13060,13060],"mapped",[12452,12491,12531,12464]],[[13061,13061],"mapped",[12452,12531,12481]],[[13062,13062],"mapped",[12454,12457,12531]],[[13063,13063],"mapped",[12456,12473,12463,12540,12489]],[[13064,13064],"mapped",[12456,12540,12459,12540]],[[13065,13065],"mapped",[12458,12531,12473]],[[13066,13066],"mapped",[12458,12540,12512]],[[13067,13067],"mapped",[12459,12452,12522]],[[13068,13068],"mapped",[12459,12521,12483,12488]],[[13069,13069],"mapped",[12459,12525,12522,12540]],[[13070,13070],"mapped",[12460,12525,12531]],[[13071,13071],"mapped",[12460,12531,12510]],[[13072,13072],"mapped",[12462,12460]],[[13073,13073],"mapped",[12462,12491,12540]],[[13074,13074],"mapped",[12461,12517,12522,12540]],[[13075,13075],"mapped",[12462,12523,12480,12540]],[[13076,13076],"mapped",[12461,12525]],[[13077,13077],"mapped",[12461,12525,12464,12521,12512]],[[13078,13078],"mapped",[12461,12525,12513,12540,12488,12523]],[[13079,13079],"mapped",[12461,12525,12527,12483,12488]],[[13080,13080],"mapped",[12464,12521,12512]],[[13081,13081],"mapped",[12464,12521,12512,12488,12531]],[[13082,13082],"mapped",[12463,12523,12476,12452,12525]],[[13083,13083],"mapped",[12463,12525,12540,12493]],[[13084,13084],"mapped",[12465,12540,12473]],[[13085,13085],"mapped",[12467,12523,12490]],[[13086,13086],"mapped",[12467,12540,12509]],[[13087,13087],"mapped",[12469,12452,12463,12523]],[[13088,13088],"mapped",[12469,12531,12481,12540,12512]],[[13089,13089],"mapped",[12471,12522,12531,12464]],[[13090,13090],"mapped",[12475,12531,12481]],[[13091,13091],"mapped",[12475,12531,12488]],[[13092,13092],"mapped",[12480,12540,12473]],[[13093,13093],"mapped",[12487,12471]],[[13094,13094],"mapped",[12489,12523]],[[13095,13095],"mapped",[12488,12531]],[[13096,13096],"mapped",[12490,12494]],[[13097,13097],"mapped",[12494,12483,12488]],[[13098,13098],"mapped",[12495,12452,12484]],[[13099,13099],"mapped",[12497,12540,12475,12531,12488]],[[13100,13100],"mapped",[12497,12540,12484]],[[13101,13101],"mapped",[12496,12540,12524,12523]],[[13102,13102],"mapped",[12500,12450,12473,12488,12523]],[[13103,13103],"mapped",[12500,12463,12523]],[[13104,13104],"mapped",[12500,12467]],[[13105,13105],"mapped",[12499,12523]],[[13106,13106],"mapped",[12501,12449,12521,12483,12489]],[[13107,13107],"mapped",[12501,12451,12540,12488]],[[13108,13108],"mapped",[12502,12483,12471,12455,12523]],[[13109,13109],"mapped",[12501,12521,12531]],[[13110,13110],"mapped",[12504,12463,12479,12540,12523]],[[13111,13111],"mapped",[12506,12477]],[[13112,13112],"mapped",[12506,12491,12498]],[[13113,13113],"mapped",[12504,12523,12484]],[[13114,13114],"mapped",[12506,12531,12473]],[[13115,13115],"mapped",[12506,12540,12472]],[[13116,13116],"mapped",[12505,12540,12479]],[[13117,13117],"mapped",[12509,12452,12531,12488]],[[13118,13118],"mapped",[12508,12523,12488]],[[13119,13119],"mapped",[12507,12531]],[[13120,13120],"mapped",[12509,12531,12489]],[[13121,13121],"mapped",[12507,12540,12523]],[[13122,13122],"mapped",[12507,12540,12531]],[[13123,13123],"mapped",[12510,12452,12463,12525]],[[13124,13124],"mapped",[12510,12452,12523]],[[13125,13125],"mapped",[12510,12483,12495]],[[13126,13126],"mapped",[12510,12523,12463]],[[13127,13127],"mapped",[12510,12531,12471,12519,12531]],[[13128,13128],"mapped",[12511,12463,12525,12531]],[[13129,13129],"mapped",[12511,12522]],[[13130,13130],"mapped",[12511,12522,12496,12540,12523]],[[13131,13131],"mapped",[12513,12460]],[[13132,13132],"mapped",[12513,12460,12488,12531]],[[13133,13133],"mapped",[12513,12540,12488,12523]],[[13134,13134],"mapped",[12516,12540,12489]],[[13135,13135],"mapped",[12516,12540,12523]],[[13136,13136],"mapped",[12518,12450,12531]],[[13137,13137],"mapped",[12522,12483,12488,12523]],[[13138,13138],"mapped",[12522,12521]],[[13139,13139],"mapped",[12523,12500,12540]],[[13140,13140],"mapped",[12523,12540,12502,12523]],[[13141,13141],"mapped",[12524,12512]],[[13142,13142],"mapped",[12524,12531,12488,12466,12531]],[[13143,13143],"mapped",[12527,12483,12488]],[[13144,13144],"mapped",[48,28857]],[[13145,13145],"mapped",[49,28857]],[[13146,13146],"mapped",[50,28857]],[[13147,13147],"mapped",[51,28857]],[[13148,13148],"mapped",[52,28857]],[[13149,13149],"mapped",[53,28857]],[[13150,13150],"mapped",[54,28857]],[[13151,13151],"mapped",[55,28857]],[[13152,13152],"mapped",[56,28857]],[[13153,13153],"mapped",[57,28857]],[[13154,13154],"mapped",[49,48,28857]],[[13155,13155],"mapped",[49,49,28857]],[[13156,13156],"mapped",[49,50,28857]],[[13157,13157],"mapped",[49,51,28857]],[[13158,13158],"mapped",[49,52,28857]],[[13159,13159],"mapped",[49,53,28857]],[[13160,13160],"mapped",[49,54,28857]],[[13161,13161],"mapped",[49,55,28857]],[[13162,13162],"mapped",[49,56,28857]],[[13163,13163],"mapped",[49,57,28857]],[[13164,13164],"mapped",[50,48,28857]],[[13165,13165],"mapped",[50,49,28857]],[[13166,13166],"mapped",[50,50,28857]],[[13167,13167],"mapped",[50,51,28857]],[[13168,13168],"mapped",[50,52,28857]],[[13169,13169],"mapped",[104,112,97]],[[13170,13170],"mapped",[100,97]],[[13171,13171],"mapped",[97,117]],[[13172,13172],"mapped",[98,97,114]],[[13173,13173],"mapped",[111,118]],[[13174,13174],"mapped",[112,99]],[[13175,13175],"mapped",[100,109]],[[13176,13176],"mapped",[100,109,50]],[[13177,13177],"mapped",[100,109,51]],[[13178,13178],"mapped",[105,117]],[[13179,13179],"mapped",[24179,25104]],[[13180,13180],"mapped",[26157,21644]],[[13181,13181],"mapped",[22823,27491]],[[13182,13182],"mapped",[26126,27835]],[[13183,13183],"mapped",[26666,24335,20250,31038]],[[13184,13184],"mapped",[112,97]],[[13185,13185],"mapped",[110,97]],[[13186,13186],"mapped",[956,97]],[[13187,13187],"mapped",[109,97]],[[13188,13188],"mapped",[107,97]],[[13189,13189],"mapped",[107,98]],[[13190,13190],"mapped",[109,98]],[[13191,13191],"mapped",[103,98]],[[13192,13192],"mapped",[99,97,108]],[[13193,13193],"mapped",[107,99,97,108]],[[13194,13194],"mapped",[112,102]],[[13195,13195],"mapped",[110,102]],[[13196,13196],"mapped",[956,102]],[[13197,13197],"mapped",[956,103]],[[13198,13198],"mapped",[109,103]],[[13199,13199],"mapped",[107,103]],[[13200,13200],"mapped",[104,122]],[[13201,13201],"mapped",[107,104,122]],[[13202,13202],"mapped",[109,104,122]],[[13203,13203],"mapped",[103,104,122]],[[13204,13204],"mapped",[116,104,122]],[[13205,13205],"mapped",[956,108]],[[13206,13206],"mapped",[109,108]],[[13207,13207],"mapped",[100,108]],[[13208,13208],"mapped",[107,108]],[[13209,13209],"mapped",[102,109]],[[13210,13210],"mapped",[110,109]],[[13211,13211],"mapped",[956,109]],[[13212,13212],"mapped",[109,109]],[[13213,13213],"mapped",[99,109]],[[13214,13214],"mapped",[107,109]],[[13215,13215],"mapped",[109,109,50]],[[13216,13216],"mapped",[99,109,50]],[[13217,13217],"mapped",[109,50]],[[13218,13218],"mapped",[107,109,50]],[[13219,13219],"mapped",[109,109,51]],[[13220,13220],"mapped",[99,109,51]],[[13221,13221],"mapped",[109,51]],[[13222,13222],"mapped",[107,109,51]],[[13223,13223],"mapped",[109,8725,115]],[[13224,13224],"mapped",[109,8725,115,50]],[[13225,13225],"mapped",[112,97]],[[13226,13226],"mapped",[107,112,97]],[[13227,13227],"mapped",[109,112,97]],[[13228,13228],"mapped",[103,112,97]],[[13229,13229],"mapped",[114,97,100]],[[13230,13230],"mapped",[114,97,100,8725,115]],[[13231,13231],"mapped",[114,97,100,8725,115,50]],[[13232,13232],"mapped",[112,115]],[[13233,13233],"mapped",[110,115]],[[13234,13234],"mapped",[956,115]],[[13235,13235],"mapped",[109,115]],[[13236,13236],"mapped",[112,118]],[[13237,13237],"mapped",[110,118]],[[13238,13238],"mapped",[956,118]],[[13239,13239],"mapped",[109,118]],[[13240,13240],"mapped",[107,118]],[[13241,13241],"mapped",[109,118]],[[13242,13242],"mapped",[112,119]],[[13243,13243],"mapped",[110,119]],[[13244,13244],"mapped",[956,119]],[[13245,13245],"mapped",[109,119]],[[13246,13246],"mapped",[107,119]],[[13247,13247],"mapped",[109,119]],[[13248,13248],"mapped",[107,969]],[[13249,13249],"mapped",[109,969]],[[13250,13250],"disallowed"],[[13251,13251],"mapped",[98,113]],[[13252,13252],"mapped",[99,99]],[[13253,13253],"mapped",[99,100]],[[13254,13254],"mapped",[99,8725,107,103]],[[13255,13255],"disallowed"],[[13256,13256],"mapped",[100,98]],[[13257,13257],"mapped",[103,121]],[[13258,13258],"mapped",[104,97]],[[13259,13259],"mapped",[104,112]],[[13260,13260],"mapped",[105,110]],[[13261,13261],"mapped",[107,107]],[[13262,13262],"mapped",[107,109]],[[13263,13263],"mapped",[107,116]],[[13264,13264],"mapped",[108,109]],[[13265,13265],"mapped",[108,110]],[[13266,13266],"mapped",[108,111,103]],[[13267,13267],"mapped",[108,120]],[[13268,13268],"mapped",[109,98]],[[13269,13269],"mapped",[109,105,108]],[[13270,13270],"mapped",[109,111,108]],[[13271,13271],"mapped",[112,104]],[[13272,13272],"disallowed"],[[13273,13273],"mapped",[112,112,109]],[[13274,13274],"mapped",[112,114]],[[13275,13275],"mapped",[115,114]],[[13276,13276],"mapped",[115,118]],[[13277,13277],"mapped",[119,98]],[[13278,13278],"mapped",[118,8725,109]],[[13279,13279],"mapped",[97,8725,109]],[[13280,13280],"mapped",[49,26085]],[[13281,13281],"mapped",[50,26085]],[[13282,13282],"mapped",[51,26085]],[[13283,13283],"mapped",[52,26085]],[[13284,13284],"mapped",[53,26085]],[[13285,13285],"mapped",[54,26085]],[[13286,13286],"mapped",[55,26085]],[[13287,13287],"mapped",[56,26085]],[[13288,13288],"mapped",[57,26085]],[[13289,13289],"mapped",[49,48,26085]],[[13290,13290],"mapped",[49,49,26085]],[[13291,13291],"mapped",[49,50,26085]],[[13292,13292],"mapped",[49,51,26085]],[[13293,13293],"mapped",[49,52,26085]],[[13294,13294],"mapped",[49,53,26085]],[[13295,13295],"mapped",[49,54,26085]],[[13296,13296],"mapped",[49,55,26085]],[[13297,13297],"mapped",[49,56,26085]],[[13298,13298],"mapped",[49,57,26085]],[[13299,13299],"mapped",[50,48,26085]],[[13300,13300],"mapped",[50,49,26085]],[[13301,13301],"mapped",[50,50,26085]],[[13302,13302],"mapped",[50,51,26085]],[[13303,13303],"mapped",[50,52,26085]],[[13304,13304],"mapped",[50,53,26085]],[[13305,13305],"mapped",[50,54,26085]],[[13306,13306],"mapped",[50,55,26085]],[[13307,13307],"mapped",[50,56,26085]],[[13308,13308],"mapped",[50,57,26085]],[[13309,13309],"mapped",[51,48,26085]],[[13310,13310],"mapped",[51,49,26085]],[[13311,13311],"mapped",[103,97,108]],[[13312,19893],"valid"],[[19894,19903],"disallowed"],[[19904,19967],"valid",[],"NV8"],[[19968,40869],"valid"],[[40870,40891],"valid"],[[40892,40899],"valid"],[[40900,40907],"valid"],[[40908,40908],"valid"],[[40909,40917],"valid"],[[40918,40959],"disallowed"],[[40960,42124],"valid"],[[42125,42127],"disallowed"],[[42128,42145],"valid",[],"NV8"],[[42146,42147],"valid",[],"NV8"],[[42148,42163],"valid",[],"NV8"],[[42164,42164],"valid",[],"NV8"],[[42165,42176],"valid",[],"NV8"],[[42177,42177],"valid",[],"NV8"],[[42178,42180],"valid",[],"NV8"],[[42181,42181],"valid",[],"NV8"],[[42182,42182],"valid",[],"NV8"],[[42183,42191],"disallowed"],[[42192,42237],"valid"],[[42238,42239],"valid",[],"NV8"],[[42240,42508],"valid"],[[42509,42511],"valid",[],"NV8"],[[42512,42539],"valid"],[[42540,42559],"disallowed"],[[42560,42560],"mapped",[42561]],[[42561,42561],"valid"],[[42562,42562],"mapped",[42563]],[[42563,42563],"valid"],[[42564,42564],"mapped",[42565]],[[42565,42565],"valid"],[[42566,42566],"mapped",[42567]],[[42567,42567],"valid"],[[42568,42568],"mapped",[42569]],[[42569,42569],"valid"],[[42570,42570],"mapped",[42571]],[[42571,42571],"valid"],[[42572,42572],"mapped",[42573]],[[42573,42573],"valid"],[[42574,42574],"mapped",[42575]],[[42575,42575],"valid"],[[42576,42576],"mapped",[42577]],[[42577,42577],"valid"],[[42578,42578],"mapped",[42579]],[[42579,42579],"valid"],[[42580,42580],"mapped",[42581]],[[42581,42581],"valid"],[[42582,42582],"mapped",[42583]],[[42583,42583],"valid"],[[42584,42584],"mapped",[42585]],[[42585,42585],"valid"],[[42586,42586],"mapped",[42587]],[[42587,42587],"valid"],[[42588,42588],"mapped",[42589]],[[42589,42589],"valid"],[[42590,42590],"mapped",[42591]],[[42591,42591],"valid"],[[42592,42592],"mapped",[42593]],[[42593,42593],"valid"],[[42594,42594],"mapped",[42595]],[[42595,42595],"valid"],[[42596,42596],"mapped",[42597]],[[42597,42597],"valid"],[[42598,42598],"mapped",[42599]],[[42599,42599],"valid"],[[42600,42600],"mapped",[42601]],[[42601,42601],"valid"],[[42602,42602],"mapped",[42603]],[[42603,42603],"valid"],[[42604,42604],"mapped",[42605]],[[42605,42607],"valid"],[[42608,42611],"valid",[],"NV8"],[[42612,42619],"valid"],[[42620,42621],"valid"],[[42622,42622],"valid",[],"NV8"],[[42623,42623],"valid"],[[42624,42624],"mapped",[42625]],[[42625,42625],"valid"],[[42626,42626],"mapped",[42627]],[[42627,42627],"valid"],[[42628,42628],"mapped",[42629]],[[42629,42629],"valid"],[[42630,42630],"mapped",[42631]],[[42631,42631],"valid"],[[42632,42632],"mapped",[42633]],[[42633,42633],"valid"],[[42634,42634],"mapped",[42635]],[[42635,42635],"valid"],[[42636,42636],"mapped",[42637]],[[42637,42637],"valid"],[[42638,42638],"mapped",[42639]],[[42639,42639],"valid"],[[42640,42640],"mapped",[42641]],[[42641,42641],"valid"],[[42642,42642],"mapped",[42643]],[[42643,42643],"valid"],[[42644,42644],"mapped",[42645]],[[42645,42645],"valid"],[[42646,42646],"mapped",[42647]],[[42647,42647],"valid"],[[42648,42648],"mapped",[42649]],[[42649,42649],"valid"],[[42650,42650],"mapped",[42651]],[[42651,42651],"valid"],[[42652,42652],"mapped",[1098]],[[42653,42653],"mapped",[1100]],[[42654,42654],"valid"],[[42655,42655],"valid"],[[42656,42725],"valid"],[[42726,42735],"valid",[],"NV8"],[[42736,42737],"valid"],[[42738,42743],"valid",[],"NV8"],[[42744,42751],"disallowed"],[[42752,42774],"valid",[],"NV8"],[[42775,42778],"valid"],[[42779,42783],"valid"],[[42784,42785],"valid",[],"NV8"],[[42786,42786],"mapped",[42787]],[[42787,42787],"valid"],[[42788,42788],"mapped",[42789]],[[42789,42789],"valid"],[[42790,42790],"mapped",[42791]],[[42791,42791],"valid"],[[42792,42792],"mapped",[42793]],[[42793,42793],"valid"],[[42794,42794],"mapped",[42795]],[[42795,42795],"valid"],[[42796,42796],"mapped",[42797]],[[42797,42797],"valid"],[[42798,42798],"mapped",[42799]],[[42799,42801],"valid"],[[42802,42802],"mapped",[42803]],[[42803,42803],"valid"],[[42804,42804],"mapped",[42805]],[[42805,42805],"valid"],[[42806,42806],"mapped",[42807]],[[42807,42807],"valid"],[[42808,42808],"mapped",[42809]],[[42809,42809],"valid"],[[42810,42810],"mapped",[42811]],[[42811,42811],"valid"],[[42812,42812],"mapped",[42813]],[[42813,42813],"valid"],[[42814,42814],"mapped",[42815]],[[42815,42815],"valid"],[[42816,42816],"mapped",[42817]],[[42817,42817],"valid"],[[42818,42818],"mapped",[42819]],[[42819,42819],"valid"],[[42820,42820],"mapped",[42821]],[[42821,42821],"valid"],[[42822,42822],"mapped",[42823]],[[42823,42823],"valid"],[[42824,42824],"mapped",[42825]],[[42825,42825],"valid"],[[42826,42826],"mapped",[42827]],[[42827,42827],"valid"],[[42828,42828],"mapped",[42829]],[[42829,42829],"valid"],[[42830,42830],"mapped",[42831]],[[42831,42831],"valid"],[[42832,42832],"mapped",[42833]],[[42833,42833],"valid"],[[42834,42834],"mapped",[42835]],[[42835,42835],"valid"],[[42836,42836],"mapped",[42837]],[[42837,42837],"valid"],[[42838,42838],"mapped",[42839]],[[42839,42839],"valid"],[[42840,42840],"mapped",[42841]],[[42841,42841],"valid"],[[42842,42842],"mapped",[42843]],[[42843,42843],"valid"],[[42844,42844],"mapped",[42845]],[[42845,42845],"valid"],[[42846,42846],"mapped",[42847]],[[42847,42847],"valid"],[[42848,42848],"mapped",[42849]],[[42849,42849],"valid"],[[42850,42850],"mapped",[42851]],[[42851,42851],"valid"],[[42852,42852],"mapped",[42853]],[[42853,42853],"valid"],[[42854,42854],"mapped",[42855]],[[42855,42855],"valid"],[[42856,42856],"mapped",[42857]],[[42857,42857],"valid"],[[42858,42858],"mapped",[42859]],[[42859,42859],"valid"],[[42860,42860],"mapped",[42861]],[[42861,42861],"valid"],[[42862,42862],"mapped",[42863]],[[42863,42863],"valid"],[[42864,42864],"mapped",[42863]],[[42865,42872],"valid"],[[42873,42873],"mapped",[42874]],[[42874,42874],"valid"],[[42875,42875],"mapped",[42876]],[[42876,42876],"valid"],[[42877,42877],"mapped",[7545]],[[42878,42878],"mapped",[42879]],[[42879,42879],"valid"],[[42880,42880],"mapped",[42881]],[[42881,42881],"valid"],[[42882,42882],"mapped",[42883]],[[42883,42883],"valid"],[[42884,42884],"mapped",[42885]],[[42885,42885],"valid"],[[42886,42886],"mapped",[42887]],[[42887,42888],"valid"],[[42889,42890],"valid",[],"NV8"],[[42891,42891],"mapped",[42892]],[[42892,42892],"valid"],[[42893,42893],"mapped",[613]],[[42894,42894],"valid"],[[42895,42895],"valid"],[[42896,42896],"mapped",[42897]],[[42897,42897],"valid"],[[42898,42898],"mapped",[42899]],[[42899,42899],"valid"],[[42900,42901],"valid"],[[42902,42902],"mapped",[42903]],[[42903,42903],"valid"],[[42904,42904],"mapped",[42905]],[[42905,42905],"valid"],[[42906,42906],"mapped",[42907]],[[42907,42907],"valid"],[[42908,42908],"mapped",[42909]],[[42909,42909],"valid"],[[42910,42910],"mapped",[42911]],[[42911,42911],"valid"],[[42912,42912],"mapped",[42913]],[[42913,42913],"valid"],[[42914,42914],"mapped",[42915]],[[42915,42915],"valid"],[[42916,42916],"mapped",[42917]],[[42917,42917],"valid"],[[42918,42918],"mapped",[42919]],[[42919,42919],"valid"],[[42920,42920],"mapped",[42921]],[[42921,42921],"valid"],[[42922,42922],"mapped",[614]],[[42923,42923],"mapped",[604]],[[42924,42924],"mapped",[609]],[[42925,42925],"mapped",[620]],[[42926,42927],"disallowed"],[[42928,42928],"mapped",[670]],[[42929,42929],"mapped",[647]],[[42930,42930],"mapped",[669]],[[42931,42931],"mapped",[43859]],[[42932,42932],"mapped",[42933]],[[42933,42933],"valid"],[[42934,42934],"mapped",[42935]],[[42935,42935],"valid"],[[42936,42998],"disallowed"],[[42999,42999],"valid"],[[43000,43000],"mapped",[295]],[[43001,43001],"mapped",[339]],[[43002,43002],"valid"],[[43003,43007],"valid"],[[43008,43047],"valid"],[[43048,43051],"valid",[],"NV8"],[[43052,43055],"disallowed"],[[43056,43065],"valid",[],"NV8"],[[43066,43071],"disallowed"],[[43072,43123],"valid"],[[43124,43127],"valid",[],"NV8"],[[43128,43135],"disallowed"],[[43136,43204],"valid"],[[43205,43213],"disallowed"],[[43214,43215],"valid",[],"NV8"],[[43216,43225],"valid"],[[43226,43231],"disallowed"],[[43232,43255],"valid"],[[43256,43258],"valid",[],"NV8"],[[43259,43259],"valid"],[[43260,43260],"valid",[],"NV8"],[[43261,43261],"valid"],[[43262,43263],"disallowed"],[[43264,43309],"valid"],[[43310,43311],"valid",[],"NV8"],[[43312,43347],"valid"],[[43348,43358],"disallowed"],[[43359,43359],"valid",[],"NV8"],[[43360,43388],"valid",[],"NV8"],[[43389,43391],"disallowed"],[[43392,43456],"valid"],[[43457,43469],"valid",[],"NV8"],[[43470,43470],"disallowed"],[[43471,43481],"valid"],[[43482,43485],"disallowed"],[[43486,43487],"valid",[],"NV8"],[[43488,43518],"valid"],[[43519,43519],"disallowed"],[[43520,43574],"valid"],[[43575,43583],"disallowed"],[[43584,43597],"valid"],[[43598,43599],"disallowed"],[[43600,43609],"valid"],[[43610,43611],"disallowed"],[[43612,43615],"valid",[],"NV8"],[[43616,43638],"valid"],[[43639,43641],"valid",[],"NV8"],[[43642,43643],"valid"],[[43644,43647],"valid"],[[43648,43714],"valid"],[[43715,43738],"disallowed"],[[43739,43741],"valid"],[[43742,43743],"valid",[],"NV8"],[[43744,43759],"valid"],[[43760,43761],"valid",[],"NV8"],[[43762,43766],"valid"],[[43767,43776],"disallowed"],[[43777,43782],"valid"],[[43783,43784],"disallowed"],[[43785,43790],"valid"],[[43791,43792],"disallowed"],[[43793,43798],"valid"],[[43799,43807],"disallowed"],[[43808,43814],"valid"],[[43815,43815],"disallowed"],[[43816,43822],"valid"],[[43823,43823],"disallowed"],[[43824,43866],"valid"],[[43867,43867],"valid",[],"NV8"],[[43868,43868],"mapped",[42791]],[[43869,43869],"mapped",[43831]],[[43870,43870],"mapped",[619]],[[43871,43871],"mapped",[43858]],[[43872,43875],"valid"],[[43876,43877],"valid"],[[43878,43887],"disallowed"],[[43888,43888],"mapped",[5024]],[[43889,43889],"mapped",[5025]],[[43890,43890],"mapped",[5026]],[[43891,43891],"mapped",[5027]],[[43892,43892],"mapped",[5028]],[[43893,43893],"mapped",[5029]],[[43894,43894],"mapped",[5030]],[[43895,43895],"mapped",[5031]],[[43896,43896],"mapped",[5032]],[[43897,43897],"mapped",[5033]],[[43898,43898],"mapped",[5034]],[[43899,43899],"mapped",[5035]],[[43900,43900],"mapped",[5036]],[[43901,43901],"mapped",[5037]],[[43902,43902],"mapped",[5038]],[[43903,43903],"mapped",[5039]],[[43904,43904],"mapped",[5040]],[[43905,43905],"mapped",[5041]],[[43906,43906],"mapped",[5042]],[[43907,43907],"mapped",[5043]],[[43908,43908],"mapped",[5044]],[[43909,43909],"mapped",[5045]],[[43910,43910],"mapped",[5046]],[[43911,43911],"mapped",[5047]],[[43912,43912],"mapped",[5048]],[[43913,43913],"mapped",[5049]],[[43914,43914],"mapped",[5050]],[[43915,43915],"mapped",[5051]],[[43916,43916],"mapped",[5052]],[[43917,43917],"mapped",[5053]],[[43918,43918],"mapped",[5054]],[[43919,43919],"mapped",[5055]],[[43920,43920],"mapped",[5056]],[[43921,43921],"mapped",[5057]],[[43922,43922],"mapped",[5058]],[[43923,43923],"mapped",[5059]],[[43924,43924],"mapped",[5060]],[[43925,43925],"mapped",[5061]],[[43926,43926],"mapped",[5062]],[[43927,43927],"mapped",[5063]],[[43928,43928],"mapped",[5064]],[[43929,43929],"mapped",[5065]],[[43930,43930],"mapped",[5066]],[[43931,43931],"mapped",[5067]],[[43932,43932],"mapped",[5068]],[[43933,43933],"mapped",[5069]],[[43934,43934],"mapped",[5070]],[[43935,43935],"mapped",[5071]],[[43936,43936],"mapped",[5072]],[[43937,43937],"mapped",[5073]],[[43938,43938],"mapped",[5074]],[[43939,43939],"mapped",[5075]],[[43940,43940],"mapped",[5076]],[[43941,43941],"mapped",[5077]],[[43942,43942],"mapped",[5078]],[[43943,43943],"mapped",[5079]],[[43944,43944],"mapped",[5080]],[[43945,43945],"mapped",[5081]],[[43946,43946],"mapped",[5082]],[[43947,43947],"mapped",[5083]],[[43948,43948],"mapped",[5084]],[[43949,43949],"mapped",[5085]],[[43950,43950],"mapped",[5086]],[[43951,43951],"mapped",[5087]],[[43952,43952],"mapped",[5088]],[[43953,43953],"mapped",[5089]],[[43954,43954],"mapped",[5090]],[[43955,43955],"mapped",[5091]],[[43956,43956],"mapped",[5092]],[[43957,43957],"mapped",[5093]],[[43958,43958],"mapped",[5094]],[[43959,43959],"mapped",[5095]],[[43960,43960],"mapped",[5096]],[[43961,43961],"mapped",[5097]],[[43962,43962],"mapped",[5098]],[[43963,43963],"mapped",[5099]],[[43964,43964],"mapped",[5100]],[[43965,43965],"mapped",[5101]],[[43966,43966],"mapped",[5102]],[[43967,43967],"mapped",[5103]],[[43968,44010],"valid"],[[44011,44011],"valid",[],"NV8"],[[44012,44013],"valid"],[[44014,44015],"disallowed"],[[44016,44025],"valid"],[[44026,44031],"disallowed"],[[44032,55203],"valid"],[[55204,55215],"disallowed"],[[55216,55238],"valid",[],"NV8"],[[55239,55242],"disallowed"],[[55243,55291],"valid",[],"NV8"],[[55292,55295],"disallowed"],[[55296,57343],"disallowed"],[[57344,63743],"disallowed"],[[63744,63744],"mapped",[35912]],[[63745,63745],"mapped",[26356]],[[63746,63746],"mapped",[36554]],[[63747,63747],"mapped",[36040]],[[63748,63748],"mapped",[28369]],[[63749,63749],"mapped",[20018]],[[63750,63750],"mapped",[21477]],[[63751,63752],"mapped",[40860]],[[63753,63753],"mapped",[22865]],[[63754,63754],"mapped",[37329]],[[63755,63755],"mapped",[21895]],[[63756,63756],"mapped",[22856]],[[63757,63757],"mapped",[25078]],[[63758,63758],"mapped",[30313]],[[63759,63759],"mapped",[32645]],[[63760,63760],"mapped",[34367]],[[63761,63761],"mapped",[34746]],[[63762,63762],"mapped",[35064]],[[63763,63763],"mapped",[37007]],[[63764,63764],"mapped",[27138]],[[63765,63765],"mapped",[27931]],[[63766,63766],"mapped",[28889]],[[63767,63767],"mapped",[29662]],[[63768,63768],"mapped",[33853]],[[63769,63769],"mapped",[37226]],[[63770,63770],"mapped",[39409]],[[63771,63771],"mapped",[20098]],[[63772,63772],"mapped",[21365]],[[63773,63773],"mapped",[27396]],[[63774,63774],"mapped",[29211]],[[63775,63775],"mapped",[34349]],[[63776,63776],"mapped",[40478]],[[63777,63777],"mapped",[23888]],[[63778,63778],"mapped",[28651]],[[63779,63779],"mapped",[34253]],[[63780,63780],"mapped",[35172]],[[63781,63781],"mapped",[25289]],[[63782,63782],"mapped",[33240]],[[63783,63783],"mapped",[34847]],[[63784,63784],"mapped",[24266]],[[63785,63785],"mapped",[26391]],[[63786,63786],"mapped",[28010]],[[63787,63787],"mapped",[29436]],[[63788,63788],"mapped",[37070]],[[63789,63789],"mapped",[20358]],[[63790,63790],"mapped",[20919]],[[63791,63791],"mapped",[21214]],[[63792,63792],"mapped",[25796]],[[63793,63793],"mapped",[27347]],[[63794,63794],"mapped",[29200]],[[63795,63795],"mapped",[30439]],[[63796,63796],"mapped",[32769]],[[63797,63797],"mapped",[34310]],[[63798,63798],"mapped",[34396]],[[63799,63799],"mapped",[36335]],[[63800,63800],"mapped",[38706]],[[63801,63801],"mapped",[39791]],[[63802,63802],"mapped",[40442]],[[63803,63803],"mapped",[30860]],[[63804,63804],"mapped",[31103]],[[63805,63805],"mapped",[32160]],[[63806,63806],"mapped",[33737]],[[63807,63807],"mapped",[37636]],[[63808,63808],"mapped",[40575]],[[63809,63809],"mapped",[35542]],[[63810,63810],"mapped",[22751]],[[63811,63811],"mapped",[24324]],[[63812,63812],"mapped",[31840]],[[63813,63813],"mapped",[32894]],[[63814,63814],"mapped",[29282]],[[63815,63815],"mapped",[30922]],[[63816,63816],"mapped",[36034]],[[63817,63817],"mapped",[38647]],[[63818,63818],"mapped",[22744]],[[63819,63819],"mapped",[23650]],[[63820,63820],"mapped",[27155]],[[63821,63821],"mapped",[28122]],[[63822,63822],"mapped",[28431]],[[63823,63823],"mapped",[32047]],[[63824,63824],"mapped",[32311]],[[63825,63825],"mapped",[38475]],[[63826,63826],"mapped",[21202]],[[63827,63827],"mapped",[32907]],[[63828,63828],"mapped",[20956]],[[63829,63829],"mapped",[20940]],[[63830,63830],"mapped",[31260]],[[63831,63831],"mapped",[32190]],[[63832,63832],"mapped",[33777]],[[63833,63833],"mapped",[38517]],[[63834,63834],"mapped",[35712]],[[63835,63835],"mapped",[25295]],[[63836,63836],"mapped",[27138]],[[63837,63837],"mapped",[35582]],[[63838,63838],"mapped",[20025]],[[63839,63839],"mapped",[23527]],[[63840,63840],"mapped",[24594]],[[63841,63841],"mapped",[29575]],[[63842,63842],"mapped",[30064]],[[63843,63843],"mapped",[21271]],[[63844,63844],"mapped",[30971]],[[63845,63845],"mapped",[20415]],[[63846,63846],"mapped",[24489]],[[63847,63847],"mapped",[19981]],[[63848,63848],"mapped",[27852]],[[63849,63849],"mapped",[25976]],[[63850,63850],"mapped",[32034]],[[63851,63851],"mapped",[21443]],[[63852,63852],"mapped",[22622]],[[63853,63853],"mapped",[30465]],[[63854,63854],"mapped",[33865]],[[63855,63855],"mapped",[35498]],[[63856,63856],"mapped",[27578]],[[63857,63857],"mapped",[36784]],[[63858,63858],"mapped",[27784]],[[63859,63859],"mapped",[25342]],[[63860,63860],"mapped",[33509]],[[63861,63861],"mapped",[25504]],[[63862,63862],"mapped",[30053]],[[63863,63863],"mapped",[20142]],[[63864,63864],"mapped",[20841]],[[63865,63865],"mapped",[20937]],[[63866,63866],"mapped",[26753]],[[63867,63867],"mapped",[31975]],[[63868,63868],"mapped",[33391]],[[63869,63869],"mapped",[35538]],[[63870,63870],"mapped",[37327]],[[63871,63871],"mapped",[21237]],[[63872,63872],"mapped",[21570]],[[63873,63873],"mapped",[22899]],[[63874,63874],"mapped",[24300]],[[63875,63875],"mapped",[26053]],[[63876,63876],"mapped",[28670]],[[63877,63877],"mapped",[31018]],[[63878,63878],"mapped",[38317]],[[63879,63879],"mapped",[39530]],[[63880,63880],"mapped",[40599]],[[63881,63881],"mapped",[40654]],[[63882,63882],"mapped",[21147]],[[63883,63883],"mapped",[26310]],[[63884,63884],"mapped",[27511]],[[63885,63885],"mapped",[36706]],[[63886,63886],"mapped",[24180]],[[63887,63887],"mapped",[24976]],[[63888,63888],"mapped",[25088]],[[63889,63889],"mapped",[25754]],[[63890,63890],"mapped",[28451]],[[63891,63891],"mapped",[29001]],[[63892,63892],"mapped",[29833]],[[63893,63893],"mapped",[31178]],[[63894,63894],"mapped",[32244]],[[63895,63895],"mapped",[32879]],[[63896,63896],"mapped",[36646]],[[63897,63897],"mapped",[34030]],[[63898,63898],"mapped",[36899]],[[63899,63899],"mapped",[37706]],[[63900,63900],"mapped",[21015]],[[63901,63901],"mapped",[21155]],[[63902,63902],"mapped",[21693]],[[63903,63903],"mapped",[28872]],[[63904,63904],"mapped",[35010]],[[63905,63905],"mapped",[35498]],[[63906,63906],"mapped",[24265]],[[63907,63907],"mapped",[24565]],[[63908,63908],"mapped",[25467]],[[63909,63909],"mapped",[27566]],[[63910,63910],"mapped",[31806]],[[63911,63911],"mapped",[29557]],[[63912,63912],"mapped",[20196]],[[63913,63913],"mapped",[22265]],[[63914,63914],"mapped",[23527]],[[63915,63915],"mapped",[23994]],[[63916,63916],"mapped",[24604]],[[63917,63917],"mapped",[29618]],[[63918,63918],"mapped",[29801]],[[63919,63919],"mapped",[32666]],[[63920,63920],"mapped",[32838]],[[63921,63921],"mapped",[37428]],[[63922,63922],"mapped",[38646]],[[63923,63923],"mapped",[38728]],[[63924,63924],"mapped",[38936]],[[63925,63925],"mapped",[20363]],[[63926,63926],"mapped",[31150]],[[63927,63927],"mapped",[37300]],[[63928,63928],"mapped",[38584]],[[63929,63929],"mapped",[24801]],[[63930,63930],"mapped",[20102]],[[63931,63931],"mapped",[20698]],[[63932,63932],"mapped",[23534]],[[63933,63933],"mapped",[23615]],[[63934,63934],"mapped",[26009]],[[63935,63935],"mapped",[27138]],[[63936,63936],"mapped",[29134]],[[63937,63937],"mapped",[30274]],[[63938,63938],"mapped",[34044]],[[63939,63939],"mapped",[36988]],[[63940,63940],"mapped",[40845]],[[63941,63941],"mapped",[26248]],[[63942,63942],"mapped",[38446]],[[63943,63943],"mapped",[21129]],[[63944,63944],"mapped",[26491]],[[63945,63945],"mapped",[26611]],[[63946,63946],"mapped",[27969]],[[63947,63947],"mapped",[28316]],[[63948,63948],"mapped",[29705]],[[63949,63949],"mapped",[30041]],[[63950,63950],"mapped",[30827]],[[63951,63951],"mapped",[32016]],[[63952,63952],"mapped",[39006]],[[63953,63953],"mapped",[20845]],[[63954,63954],"mapped",[25134]],[[63955,63955],"mapped",[38520]],[[63956,63956],"mapped",[20523]],[[63957,63957],"mapped",[23833]],[[63958,63958],"mapped",[28138]],[[63959,63959],"mapped",[36650]],[[63960,63960],"mapped",[24459]],[[63961,63961],"mapped",[24900]],[[63962,63962],"mapped",[26647]],[[63963,63963],"mapped",[29575]],[[63964,63964],"mapped",[38534]],[[63965,63965],"mapped",[21033]],[[63966,63966],"mapped",[21519]],[[63967,63967],"mapped",[23653]],[[63968,63968],"mapped",[26131]],[[63969,63969],"mapped",[26446]],[[63970,63970],"mapped",[26792]],[[63971,63971],"mapped",[27877]],[[63972,63972],"mapped",[29702]],[[63973,63973],"mapped",[30178]],[[63974,63974],"mapped",[32633]],[[63975,63975],"mapped",[35023]],[[63976,63976],"mapped",[35041]],[[63977,63977],"mapped",[37324]],[[63978,63978],"mapped",[38626]],[[63979,63979],"mapped",[21311]],[[63980,63980],"mapped",[28346]],[[63981,63981],"mapped",[21533]],[[63982,63982],"mapped",[29136]],[[63983,63983],"mapped",[29848]],[[63984,63984],"mapped",[34298]],[[63985,63985],"mapped",[38563]],[[63986,63986],"mapped",[40023]],[[63987,63987],"mapped",[40607]],[[63988,63988],"mapped",[26519]],[[63989,63989],"mapped",[28107]],[[63990,63990],"mapped",[33256]],[[63991,63991],"mapped",[31435]],[[63992,63992],"mapped",[31520]],[[63993,63993],"mapped",[31890]],[[63994,63994],"mapped",[29376]],[[63995,63995],"mapped",[28825]],[[63996,63996],"mapped",[35672]],[[63997,63997],"mapped",[20160]],[[63998,63998],"mapped",[33590]],[[63999,63999],"mapped",[21050]],[[64000,64000],"mapped",[20999]],[[64001,64001],"mapped",[24230]],[[64002,64002],"mapped",[25299]],[[64003,64003],"mapped",[31958]],[[64004,64004],"mapped",[23429]],[[64005,64005],"mapped",[27934]],[[64006,64006],"mapped",[26292]],[[64007,64007],"mapped",[36667]],[[64008,64008],"mapped",[34892]],[[64009,64009],"mapped",[38477]],[[64010,64010],"mapped",[35211]],[[64011,64011],"mapped",[24275]],[[64012,64012],"mapped",[20800]],[[64013,64013],"mapped",[21952]],[[64014,64015],"valid"],[[64016,64016],"mapped",[22618]],[[64017,64017],"valid"],[[64018,64018],"mapped",[26228]],[[64019,64020],"valid"],[[64021,64021],"mapped",[20958]],[[64022,64022],"mapped",[29482]],[[64023,64023],"mapped",[30410]],[[64024,64024],"mapped",[31036]],[[64025,64025],"mapped",[31070]],[[64026,64026],"mapped",[31077]],[[64027,64027],"mapped",[31119]],[[64028,64028],"mapped",[38742]],[[64029,64029],"mapped",[31934]],[[64030,64030],"mapped",[32701]],[[64031,64031],"valid"],[[64032,64032],"mapped",[34322]],[[64033,64033],"valid"],[[64034,64034],"mapped",[35576]],[[64035,64036],"valid"],[[64037,64037],"mapped",[36920]],[[64038,64038],"mapped",[37117]],[[64039,64041],"valid"],[[64042,64042],"mapped",[39151]],[[64043,64043],"mapped",[39164]],[[64044,64044],"mapped",[39208]],[[64045,64045],"mapped",[40372]],[[64046,64046],"mapped",[37086]],[[64047,64047],"mapped",[38583]],[[64048,64048],"mapped",[20398]],[[64049,64049],"mapped",[20711]],[[64050,64050],"mapped",[20813]],[[64051,64051],"mapped",[21193]],[[64052,64052],"mapped",[21220]],[[64053,64053],"mapped",[21329]],[[64054,64054],"mapped",[21917]],[[64055,64055],"mapped",[22022]],[[64056,64056],"mapped",[22120]],[[64057,64057],"mapped",[22592]],[[64058,64058],"mapped",[22696]],[[64059,64059],"mapped",[23652]],[[64060,64060],"mapped",[23662]],[[64061,64061],"mapped",[24724]],[[64062,64062],"mapped",[24936]],[[64063,64063],"mapped",[24974]],[[64064,64064],"mapped",[25074]],[[64065,64065],"mapped",[25935]],[[64066,64066],"mapped",[26082]],[[64067,64067],"mapped",[26257]],[[64068,64068],"mapped",[26757]],[[64069,64069],"mapped",[28023]],[[64070,64070],"mapped",[28186]],[[64071,64071],"mapped",[28450]],[[64072,64072],"mapped",[29038]],[[64073,64073],"mapped",[29227]],[[64074,64074],"mapped",[29730]],[[64075,64075],"mapped",[30865]],[[64076,64076],"mapped",[31038]],[[64077,64077],"mapped",[31049]],[[64078,64078],"mapped",[31048]],[[64079,64079],"mapped",[31056]],[[64080,64080],"mapped",[31062]],[[64081,64081],"mapped",[31069]],[[64082,64082],"mapped",[31117]],[[64083,64083],"mapped",[31118]],[[64084,64084],"mapped",[31296]],[[64085,64085],"mapped",[31361]],[[64086,64086],"mapped",[31680]],[[64087,64087],"mapped",[32244]],[[64088,64088],"mapped",[32265]],[[64089,64089],"mapped",[32321]],[[64090,64090],"mapped",[32626]],[[64091,64091],"mapped",[32773]],[[64092,64092],"mapped",[33261]],[[64093,64094],"mapped",[33401]],[[64095,64095],"mapped",[33879]],[[64096,64096],"mapped",[35088]],[[64097,64097],"mapped",[35222]],[[64098,64098],"mapped",[35585]],[[64099,64099],"mapped",[35641]],[[64100,64100],"mapped",[36051]],[[64101,64101],"mapped",[36104]],[[64102,64102],"mapped",[36790]],[[64103,64103],"mapped",[36920]],[[64104,64104],"mapped",[38627]],[[64105,64105],"mapped",[38911]],[[64106,64106],"mapped",[38971]],[[64107,64107],"mapped",[24693]],[[64108,64108],"mapped",[148206]],[[64109,64109],"mapped",[33304]],[[64110,64111],"disallowed"],[[64112,64112],"mapped",[20006]],[[64113,64113],"mapped",[20917]],[[64114,64114],"mapped",[20840]],[[64115,64115],"mapped",[20352]],[[64116,64116],"mapped",[20805]],[[64117,64117],"mapped",[20864]],[[64118,64118],"mapped",[21191]],[[64119,64119],"mapped",[21242]],[[64120,64120],"mapped",[21917]],[[64121,64121],"mapped",[21845]],[[64122,64122],"mapped",[21913]],[[64123,64123],"mapped",[21986]],[[64124,64124],"mapped",[22618]],[[64125,64125],"mapped",[22707]],[[64126,64126],"mapped",[22852]],[[64127,64127],"mapped",[22868]],[[64128,64128],"mapped",[23138]],[[64129,64129],"mapped",[23336]],[[64130,64130],"mapped",[24274]],[[64131,64131],"mapped",[24281]],[[64132,64132],"mapped",[24425]],[[64133,64133],"mapped",[24493]],[[64134,64134],"mapped",[24792]],[[64135,64135],"mapped",[24910]],[[64136,64136],"mapped",[24840]],[[64137,64137],"mapped",[24974]],[[64138,64138],"mapped",[24928]],[[64139,64139],"mapped",[25074]],[[64140,64140],"mapped",[25140]],[[64141,64141],"mapped",[25540]],[[64142,64142],"mapped",[25628]],[[64143,64143],"mapped",[25682]],[[64144,64144],"mapped",[25942]],[[64145,64145],"mapped",[26228]],[[64146,64146],"mapped",[26391]],[[64147,64147],"mapped",[26395]],[[64148,64148],"mapped",[26454]],[[64149,64149],"mapped",[27513]],[[64150,64150],"mapped",[27578]],[[64151,64151],"mapped",[27969]],[[64152,64152],"mapped",[28379]],[[64153,64153],"mapped",[28363]],[[64154,64154],"mapped",[28450]],[[64155,64155],"mapped",[28702]],[[64156,64156],"mapped",[29038]],[[64157,64157],"mapped",[30631]],[[64158,64158],"mapped",[29237]],[[64159,64159],"mapped",[29359]],[[64160,64160],"mapped",[29482]],[[64161,64161],"mapped",[29809]],[[64162,64162],"mapped",[29958]],[[64163,64163],"mapped",[30011]],[[64164,64164],"mapped",[30237]],[[64165,64165],"mapped",[30239]],[[64166,64166],"mapped",[30410]],[[64167,64167],"mapped",[30427]],[[64168,64168],"mapped",[30452]],[[64169,64169],"mapped",[30538]],[[64170,64170],"mapped",[30528]],[[64171,64171],"mapped",[30924]],[[64172,64172],"mapped",[31409]],[[64173,64173],"mapped",[31680]],[[64174,64174],"mapped",[31867]],[[64175,64175],"mapped",[32091]],[[64176,64176],"mapped",[32244]],[[64177,64177],"mapped",[32574]],[[64178,64178],"mapped",[32773]],[[64179,64179],"mapped",[33618]],[[64180,64180],"mapped",[33775]],[[64181,64181],"mapped",[34681]],[[64182,64182],"mapped",[35137]],[[64183,64183],"mapped",[35206]],[[64184,64184],"mapped",[35222]],[[64185,64185],"mapped",[35519]],[[64186,64186],"mapped",[35576]],[[64187,64187],"mapped",[35531]],[[64188,64188],"mapped",[35585]],[[64189,64189],"mapped",[35582]],[[64190,64190],"mapped",[35565]],[[64191,64191],"mapped",[35641]],[[64192,64192],"mapped",[35722]],[[64193,64193],"mapped",[36104]],[[64194,64194],"mapped",[36664]],[[64195,64195],"mapped",[36978]],[[64196,64196],"mapped",[37273]],[[64197,64197],"mapped",[37494]],[[64198,64198],"mapped",[38524]],[[64199,64199],"mapped",[38627]],[[64200,64200],"mapped",[38742]],[[64201,64201],"mapped",[38875]],[[64202,64202],"mapped",[38911]],[[64203,64203],"mapped",[38923]],[[64204,64204],"mapped",[38971]],[[64205,64205],"mapped",[39698]],[[64206,64206],"mapped",[40860]],[[64207,64207],"mapped",[141386]],[[64208,64208],"mapped",[141380]],[[64209,64209],"mapped",[144341]],[[64210,64210],"mapped",[15261]],[[64211,64211],"mapped",[16408]],[[64212,64212],"mapped",[16441]],[[64213,64213],"mapped",[152137]],[[64214,64214],"mapped",[154832]],[[64215,64215],"mapped",[163539]],[[64216,64216],"mapped",[40771]],[[64217,64217],"mapped",[40846]],[[64218,64255],"disallowed"],[[64256,64256],"mapped",[102,102]],[[64257,64257],"mapped",[102,105]],[[64258,64258],"mapped",[102,108]],[[64259,64259],"mapped",[102,102,105]],[[64260,64260],"mapped",[102,102,108]],[[64261,64262],"mapped",[115,116]],[[64263,64274],"disallowed"],[[64275,64275],"mapped",[1396,1398]],[[64276,64276],"mapped",[1396,1381]],[[64277,64277],"mapped",[1396,1387]],[[64278,64278],"mapped",[1406,1398]],[[64279,64279],"mapped",[1396,1389]],[[64280,64284],"disallowed"],[[64285,64285],"mapped",[1497,1460]],[[64286,64286],"valid"],[[64287,64287],"mapped",[1522,1463]],[[64288,64288],"mapped",[1506]],[[64289,64289],"mapped",[1488]],[[64290,64290],"mapped",[1491]],[[64291,64291],"mapped",[1492]],[[64292,64292],"mapped",[1499]],[[64293,64293],"mapped",[1500]],[[64294,64294],"mapped",[1501]],[[64295,64295],"mapped",[1512]],[[64296,64296],"mapped",[1514]],[[64297,64297],"disallowed_STD3_mapped",[43]],[[64298,64298],"mapped",[1513,1473]],[[64299,64299],"mapped",[1513,1474]],[[64300,64300],"mapped",[1513,1468,1473]],[[64301,64301],"mapped",[1513,1468,1474]],[[64302,64302],"mapped",[1488,1463]],[[64303,64303],"mapped",[1488,1464]],[[64304,64304],"mapped",[1488,1468]],[[64305,64305],"mapped",[1489,1468]],[[64306,64306],"mapped",[1490,1468]],[[64307,64307],"mapped",[1491,1468]],[[64308,64308],"mapped",[1492,1468]],[[64309,64309],"mapped",[1493,1468]],[[64310,64310],"mapped",[1494,1468]],[[64311,64311],"disallowed"],[[64312,64312],"mapped",[1496,1468]],[[64313,64313],"mapped",[1497,1468]],[[64314,64314],"mapped",[1498,1468]],[[64315,64315],"mapped",[1499,1468]],[[64316,64316],"mapped",[1500,1468]],[[64317,64317],"disallowed"],[[64318,64318],"mapped",[1502,1468]],[[64319,64319],"disallowed"],[[64320,64320],"mapped",[1504,1468]],[[64321,64321],"mapped",[1505,1468]],[[64322,64322],"disallowed"],[[64323,64323],"mapped",[1507,1468]],[[64324,64324],"mapped",[1508,1468]],[[64325,64325],"disallowed"],[[64326,64326],"mapped",[1510,1468]],[[64327,64327],"mapped",[1511,1468]],[[64328,64328],"mapped",[1512,1468]],[[64329,64329],"mapped",[1513,1468]],[[64330,64330],"mapped",[1514,1468]],[[64331,64331],"mapped",[1493,1465]],[[64332,64332],"mapped",[1489,1471]],[[64333,64333],"mapped",[1499,1471]],[[64334,64334],"mapped",[1508,1471]],[[64335,64335],"mapped",[1488,1500]],[[64336,64337],"mapped",[1649]],[[64338,64341],"mapped",[1659]],[[64342,64345],"mapped",[1662]],[[64346,64349],"mapped",[1664]],[[64350,64353],"mapped",[1658]],[[64354,64357],"mapped",[1663]],[[64358,64361],"mapped",[1657]],[[64362,64365],"mapped",[1700]],[[64366,64369],"mapped",[1702]],[[64370,64373],"mapped",[1668]],[[64374,64377],"mapped",[1667]],[[64378,64381],"mapped",[1670]],[[64382,64385],"mapped",[1671]],[[64386,64387],"mapped",[1677]],[[64388,64389],"mapped",[1676]],[[64390,64391],"mapped",[1678]],[[64392,64393],"mapped",[1672]],[[64394,64395],"mapped",[1688]],[[64396,64397],"mapped",[1681]],[[64398,64401],"mapped",[1705]],[[64402,64405],"mapped",[1711]],[[64406,64409],"mapped",[1715]],[[64410,64413],"mapped",[1713]],[[64414,64415],"mapped",[1722]],[[64416,64419],"mapped",[1723]],[[64420,64421],"mapped",[1728]],[[64422,64425],"mapped",[1729]],[[64426,64429],"mapped",[1726]],[[64430,64431],"mapped",[1746]],[[64432,64433],"mapped",[1747]],[[64434,64449],"valid",[],"NV8"],[[64450,64466],"disallowed"],[[64467,64470],"mapped",[1709]],[[64471,64472],"mapped",[1735]],[[64473,64474],"mapped",[1734]],[[64475,64476],"mapped",[1736]],[[64477,64477],"mapped",[1735,1652]],[[64478,64479],"mapped",[1739]],[[64480,64481],"mapped",[1733]],[[64482,64483],"mapped",[1737]],[[64484,64487],"mapped",[1744]],[[64488,64489],"mapped",[1609]],[[64490,64491],"mapped",[1574,1575]],[[64492,64493],"mapped",[1574,1749]],[[64494,64495],"mapped",[1574,1608]],[[64496,64497],"mapped",[1574,1735]],[[64498,64499],"mapped",[1574,1734]],[[64500,64501],"mapped",[1574,1736]],[[64502,64504],"mapped",[1574,1744]],[[64505,64507],"mapped",[1574,1609]],[[64508,64511],"mapped",[1740]],[[64512,64512],"mapped",[1574,1580]],[[64513,64513],"mapped",[1574,1581]],[[64514,64514],"mapped",[1574,1605]],[[64515,64515],"mapped",[1574,1609]],[[64516,64516],"mapped",[1574,1610]],[[64517,64517],"mapped",[1576,1580]],[[64518,64518],"mapped",[1576,1581]],[[64519,64519],"mapped",[1576,1582]],[[64520,64520],"mapped",[1576,1605]],[[64521,64521],"mapped",[1576,1609]],[[64522,64522],"mapped",[1576,1610]],[[64523,64523],"mapped",[1578,1580]],[[64524,64524],"mapped",[1578,1581]],[[64525,64525],"mapped",[1578,1582]],[[64526,64526],"mapped",[1578,1605]],[[64527,64527],"mapped",[1578,1609]],[[64528,64528],"mapped",[1578,1610]],[[64529,64529],"mapped",[1579,1580]],[[64530,64530],"mapped",[1579,1605]],[[64531,64531],"mapped",[1579,1609]],[[64532,64532],"mapped",[1579,1610]],[[64533,64533],"mapped",[1580,1581]],[[64534,64534],"mapped",[1580,1605]],[[64535,64535],"mapped",[1581,1580]],[[64536,64536],"mapped",[1581,1605]],[[64537,64537],"mapped",[1582,1580]],[[64538,64538],"mapped",[1582,1581]],[[64539,64539],"mapped",[1582,1605]],[[64540,64540],"mapped",[1587,1580]],[[64541,64541],"mapped",[1587,1581]],[[64542,64542],"mapped",[1587,1582]],[[64543,64543],"mapped",[1587,1605]],[[64544,64544],"mapped",[1589,1581]],[[64545,64545],"mapped",[1589,1605]],[[64546,64546],"mapped",[1590,1580]],[[64547,64547],"mapped",[1590,1581]],[[64548,64548],"mapped",[1590,1582]],[[64549,64549],"mapped",[1590,1605]],[[64550,64550],"mapped",[1591,1581]],[[64551,64551],"mapped",[1591,1605]],[[64552,64552],"mapped",[1592,1605]],[[64553,64553],"mapped",[1593,1580]],[[64554,64554],"mapped",[1593,1605]],[[64555,64555],"mapped",[1594,1580]],[[64556,64556],"mapped",[1594,1605]],[[64557,64557],"mapped",[1601,1580]],[[64558,64558],"mapped",[1601,1581]],[[64559,64559],"mapped",[1601,1582]],[[64560,64560],"mapped",[1601,1605]],[[64561,64561],"mapped",[1601,1609]],[[64562,64562],"mapped",[1601,1610]],[[64563,64563],"mapped",[1602,1581]],[[64564,64564],"mapped",[1602,1605]],[[64565,64565],"mapped",[1602,1609]],[[64566,64566],"mapped",[1602,1610]],[[64567,64567],"mapped",[1603,1575]],[[64568,64568],"mapped",[1603,1580]],[[64569,64569],"mapped",[1603,1581]],[[64570,64570],"mapped",[1603,1582]],[[64571,64571],"mapped",[1603,1604]],[[64572,64572],"mapped",[1603,1605]],[[64573,64573],"mapped",[1603,1609]],[[64574,64574],"mapped",[1603,1610]],[[64575,64575],"mapped",[1604,1580]],[[64576,64576],"mapped",[1604,1581]],[[64577,64577],"mapped",[1604,1582]],[[64578,64578],"mapped",[1604,1605]],[[64579,64579],"mapped",[1604,1609]],[[64580,64580],"mapped",[1604,1610]],[[64581,64581],"mapped",[1605,1580]],[[64582,64582],"mapped",[1605,1581]],[[64583,64583],"mapped",[1605,1582]],[[64584,64584],"mapped",[1605,1605]],[[64585,64585],"mapped",[1605,1609]],[[64586,64586],"mapped",[1605,1610]],[[64587,64587],"mapped",[1606,1580]],[[64588,64588],"mapped",[1606,1581]],[[64589,64589],"mapped",[1606,1582]],[[64590,64590],"mapped",[1606,1605]],[[64591,64591],"mapped",[1606,1609]],[[64592,64592],"mapped",[1606,1610]],[[64593,64593],"mapped",[1607,1580]],[[64594,64594],"mapped",[1607,1605]],[[64595,64595],"mapped",[1607,1609]],[[64596,64596],"mapped",[1607,1610]],[[64597,64597],"mapped",[1610,1580]],[[64598,64598],"mapped",[1610,1581]],[[64599,64599],"mapped",[1610,1582]],[[64600,64600],"mapped",[1610,1605]],[[64601,64601],"mapped",[1610,1609]],[[64602,64602],"mapped",[1610,1610]],[[64603,64603],"mapped",[1584,1648]],[[64604,64604],"mapped",[1585,1648]],[[64605,64605],"mapped",[1609,1648]],[[64606,64606],"disallowed_STD3_mapped",[32,1612,1617]],[[64607,64607],"disallowed_STD3_mapped",[32,1613,1617]],[[64608,64608],"disallowed_STD3_mapped",[32,1614,1617]],[[64609,64609],"disallowed_STD3_mapped",[32,1615,1617]],[[64610,64610],"disallowed_STD3_mapped",[32,1616,1617]],[[64611,64611],"disallowed_STD3_mapped",[32,1617,1648]],[[64612,64612],"mapped",[1574,1585]],[[64613,64613],"mapped",[1574,1586]],[[64614,64614],"mapped",[1574,1605]],[[64615,64615],"mapped",[1574,1606]],[[64616,64616],"mapped",[1574,1609]],[[64617,64617],"mapped",[1574,1610]],[[64618,64618],"mapped",[1576,1585]],[[64619,64619],"mapped",[1576,1586]],[[64620,64620],"mapped",[1576,1605]],[[64621,64621],"mapped",[1576,1606]],[[64622,64622],"mapped",[1576,1609]],[[64623,64623],"mapped",[1576,1610]],[[64624,64624],"mapped",[1578,1585]],[[64625,64625],"mapped",[1578,1586]],[[64626,64626],"mapped",[1578,1605]],[[64627,64627],"mapped",[1578,1606]],[[64628,64628],"mapped",[1578,1609]],[[64629,64629],"mapped",[1578,1610]],[[64630,64630],"mapped",[1579,1585]],[[64631,64631],"mapped",[1579,1586]],[[64632,64632],"mapped",[1579,1605]],[[64633,64633],"mapped",[1579,1606]],[[64634,64634],"mapped",[1579,1609]],[[64635,64635],"mapped",[1579,1610]],[[64636,64636],"mapped",[1601,1609]],[[64637,64637],"mapped",[1601,1610]],[[64638,64638],"mapped",[1602,1609]],[[64639,64639],"mapped",[1602,1610]],[[64640,64640],"mapped",[1603,1575]],[[64641,64641],"mapped",[1603,1604]],[[64642,64642],"mapped",[1603,1605]],[[64643,64643],"mapped",[1603,1609]],[[64644,64644],"mapped",[1603,1610]],[[64645,64645],"mapped",[1604,1605]],[[64646,64646],"mapped",[1604,1609]],[[64647,64647],"mapped",[1604,1610]],[[64648,64648],"mapped",[1605,1575]],[[64649,64649],"mapped",[1605,1605]],[[64650,64650],"mapped",[1606,1585]],[[64651,64651],"mapped",[1606,1586]],[[64652,64652],"mapped",[1606,1605]],[[64653,64653],"mapped",[1606,1606]],[[64654,64654],"mapped",[1606,1609]],[[64655,64655],"mapped",[1606,1610]],[[64656,64656],"mapped",[1609,1648]],[[64657,64657],"mapped",[1610,1585]],[[64658,64658],"mapped",[1610,1586]],[[64659,64659],"mapped",[1610,1605]],[[64660,64660],"mapped",[1610,1606]],[[64661,64661],"mapped",[1610,1609]],[[64662,64662],"mapped",[1610,1610]],[[64663,64663],"mapped",[1574,1580]],[[64664,64664],"mapped",[1574,1581]],[[64665,64665],"mapped",[1574,1582]],[[64666,64666],"mapped",[1574,1605]],[[64667,64667],"mapped",[1574,1607]],[[64668,64668],"mapped",[1576,1580]],[[64669,64669],"mapped",[1576,1581]],[[64670,64670],"mapped",[1576,1582]],[[64671,64671],"mapped",[1576,1605]],[[64672,64672],"mapped",[1576,1607]],[[64673,64673],"mapped",[1578,1580]],[[64674,64674],"mapped",[1578,1581]],[[64675,64675],"mapped",[1578,1582]],[[64676,64676],"mapped",[1578,1605]],[[64677,64677],"mapped",[1578,1607]],[[64678,64678],"mapped",[1579,1605]],[[64679,64679],"mapped",[1580,1581]],[[64680,64680],"mapped",[1580,1605]],[[64681,64681],"mapped",[1581,1580]],[[64682,64682],"mapped",[1581,1605]],[[64683,64683],"mapped",[1582,1580]],[[64684,64684],"mapped",[1582,1605]],[[64685,64685],"mapped",[1587,1580]],[[64686,64686],"mapped",[1587,1581]],[[64687,64687],"mapped",[1587,1582]],[[64688,64688],"mapped",[1587,1605]],[[64689,64689],"mapped",[1589,1581]],[[64690,64690],"mapped",[1589,1582]],[[64691,64691],"mapped",[1589,1605]],[[64692,64692],"mapped",[1590,1580]],[[64693,64693],"mapped",[1590,1581]],[[64694,64694],"mapped",[1590,1582]],[[64695,64695],"mapped",[1590,1605]],[[64696,64696],"mapped",[1591,1581]],[[64697,64697],"mapped",[1592,1605]],[[64698,64698],"mapped",[1593,1580]],[[64699,64699],"mapped",[1593,1605]],[[64700,64700],"mapped",[1594,1580]],[[64701,64701],"mapped",[1594,1605]],[[64702,64702],"mapped",[1601,1580]],[[64703,64703],"mapped",[1601,1581]],[[64704,64704],"mapped",[1601,1582]],[[64705,64705],"mapped",[1601,1605]],[[64706,64706],"mapped",[1602,1581]],[[64707,64707],"mapped",[1602,1605]],[[64708,64708],"mapped",[1603,1580]],[[64709,64709],"mapped",[1603,1581]],[[64710,64710],"mapped",[1603,1582]],[[64711,64711],"mapped",[1603,1604]],[[64712,64712],"mapped",[1603,1605]],[[64713,64713],"mapped",[1604,1580]],[[64714,64714],"mapped",[1604,1581]],[[64715,64715],"mapped",[1604,1582]],[[64716,64716],"mapped",[1604,1605]],[[64717,64717],"mapped",[1604,1607]],[[64718,64718],"mapped",[1605,1580]],[[64719,64719],"mapped",[1605,1581]],[[64720,64720],"mapped",[1605,1582]],[[64721,64721],"mapped",[1605,1605]],[[64722,64722],"mapped",[1606,1580]],[[64723,64723],"mapped",[1606,1581]],[[64724,64724],"mapped",[1606,1582]],[[64725,64725],"mapped",[1606,1605]],[[64726,64726],"mapped",[1606,1607]],[[64727,64727],"mapped",[1607,1580]],[[64728,64728],"mapped",[1607,1605]],[[64729,64729],"mapped",[1607,1648]],[[64730,64730],"mapped",[1610,1580]],[[64731,64731],"mapped",[1610,1581]],[[64732,64732],"mapped",[1610,1582]],[[64733,64733],"mapped",[1610,1605]],[[64734,64734],"mapped",[1610,1607]],[[64735,64735],"mapped",[1574,1605]],[[64736,64736],"mapped",[1574,1607]],[[64737,64737],"mapped",[1576,1605]],[[64738,64738],"mapped",[1576,1607]],[[64739,64739],"mapped",[1578,1605]],[[64740,64740],"mapped",[1578,1607]],[[64741,64741],"mapped",[1579,1605]],[[64742,64742],"mapped",[1579,1607]],[[64743,64743],"mapped",[1587,1605]],[[64744,64744],"mapped",[1587,1607]],[[64745,64745],"mapped",[1588,1605]],[[64746,64746],"mapped",[1588,1607]],[[64747,64747],"mapped",[1603,1604]],[[64748,64748],"mapped",[1603,1605]],[[64749,64749],"mapped",[1604,1605]],[[64750,64750],"mapped",[1606,1605]],[[64751,64751],"mapped",[1606,1607]],[[64752,64752],"mapped",[1610,1605]],[[64753,64753],"mapped",[1610,1607]],[[64754,64754],"mapped",[1600,1614,1617]],[[64755,64755],"mapped",[1600,1615,1617]],[[64756,64756],"mapped",[1600,1616,1617]],[[64757,64757],"mapped",[1591,1609]],[[64758,64758],"mapped",[1591,1610]],[[64759,64759],"mapped",[1593,1609]],[[64760,64760],"mapped",[1593,1610]],[[64761,64761],"mapped",[1594,1609]],[[64762,64762],"mapped",[1594,1610]],[[64763,64763],"mapped",[1587,1609]],[[64764,64764],"mapped",[1587,1610]],[[64765,64765],"mapped",[1588,1609]],[[64766,64766],"mapped",[1588,1610]],[[64767,64767],"mapped",[1581,1609]],[[64768,64768],"mapped",[1581,1610]],[[64769,64769],"mapped",[1580,1609]],[[64770,64770],"mapped",[1580,1610]],[[64771,64771],"mapped",[1582,1609]],[[64772,64772],"mapped",[1582,1610]],[[64773,64773],"mapped",[1589,1609]],[[64774,64774],"mapped",[1589,1610]],[[64775,64775],"mapped",[1590,1609]],[[64776,64776],"mapped",[1590,1610]],[[64777,64777],"mapped",[1588,1580]],[[64778,64778],"mapped",[1588,1581]],[[64779,64779],"mapped",[1588,1582]],[[64780,64780],"mapped",[1588,1605]],[[64781,64781],"mapped",[1588,1585]],[[64782,64782],"mapped",[1587,1585]],[[64783,64783],"mapped",[1589,1585]],[[64784,64784],"mapped",[1590,1585]],[[64785,64785],"mapped",[1591,1609]],[[64786,64786],"mapped",[1591,1610]],[[64787,64787],"mapped",[1593,1609]],[[64788,64788],"mapped",[1593,1610]],[[64789,64789],"mapped",[1594,1609]],[[64790,64790],"mapped",[1594,1610]],[[64791,64791],"mapped",[1587,1609]],[[64792,64792],"mapped",[1587,1610]],[[64793,64793],"mapped",[1588,1609]],[[64794,64794],"mapped",[1588,1610]],[[64795,64795],"mapped",[1581,1609]],[[64796,64796],"mapped",[1581,1610]],[[64797,64797],"mapped",[1580,1609]],[[64798,64798],"mapped",[1580,1610]],[[64799,64799],"mapped",[1582,1609]],[[64800,64800],"mapped",[1582,1610]],[[64801,64801],"mapped",[1589,1609]],[[64802,64802],"mapped",[1589,1610]],[[64803,64803],"mapped",[1590,1609]],[[64804,64804],"mapped",[1590,1610]],[[64805,64805],"mapped",[1588,1580]],[[64806,64806],"mapped",[1588,1581]],[[64807,64807],"mapped",[1588,1582]],[[64808,64808],"mapped",[1588,1605]],[[64809,64809],"mapped",[1588,1585]],[[64810,64810],"mapped",[1587,1585]],[[64811,64811],"mapped",[1589,1585]],[[64812,64812],"mapped",[1590,1585]],[[64813,64813],"mapped",[1588,1580]],[[64814,64814],"mapped",[1588,1581]],[[64815,64815],"mapped",[1588,1582]],[[64816,64816],"mapped",[1588,1605]],[[64817,64817],"mapped",[1587,1607]],[[64818,64818],"mapped",[1588,1607]],[[64819,64819],"mapped",[1591,1605]],[[64820,64820],"mapped",[1587,1580]],[[64821,64821],"mapped",[1587,1581]],[[64822,64822],"mapped",[1587,1582]],[[64823,64823],"mapped",[1588,1580]],[[64824,64824],"mapped",[1588,1581]],[[64825,64825],"mapped",[1588,1582]],[[64826,64826],"mapped",[1591,1605]],[[64827,64827],"mapped",[1592,1605]],[[64828,64829],"mapped",[1575,1611]],[[64830,64831],"valid",[],"NV8"],[[64832,64847],"disallowed"],[[64848,64848],"mapped",[1578,1580,1605]],[[64849,64850],"mapped",[1578,1581,1580]],[[64851,64851],"mapped",[1578,1581,1605]],[[64852,64852],"mapped",[1578,1582,1605]],[[64853,64853],"mapped",[1578,1605,1580]],[[64854,64854],"mapped",[1578,1605,1581]],[[64855,64855],"mapped",[1578,1605,1582]],[[64856,64857],"mapped",[1580,1605,1581]],[[64858,64858],"mapped",[1581,1605,1610]],[[64859,64859],"mapped",[1581,1605,1609]],[[64860,64860],"mapped",[1587,1581,1580]],[[64861,64861],"mapped",[1587,1580,1581]],[[64862,64862],"mapped",[1587,1580,1609]],[[64863,64864],"mapped",[1587,1605,1581]],[[64865,64865],"mapped",[1587,1605,1580]],[[64866,64867],"mapped",[1587,1605,1605]],[[64868,64869],"mapped",[1589,1581,1581]],[[64870,64870],"mapped",[1589,1605,1605]],[[64871,64872],"mapped",[1588,1581,1605]],[[64873,64873],"mapped",[1588,1580,1610]],[[64874,64875],"mapped",[1588,1605,1582]],[[64876,64877],"mapped",[1588,1605,1605]],[[64878,64878],"mapped",[1590,1581,1609]],[[64879,64880],"mapped",[1590,1582,1605]],[[64881,64882],"mapped",[1591,1605,1581]],[[64883,64883],"mapped",[1591,1605,1605]],[[64884,64884],"mapped",[1591,1605,1610]],[[64885,64885],"mapped",[1593,1580,1605]],[[64886,64887],"mapped",[1593,1605,1605]],[[64888,64888],"mapped",[1593,1605,1609]],[[64889,64889],"mapped",[1594,1605,1605]],[[64890,64890],"mapped",[1594,1605,1610]],[[64891,64891],"mapped",[1594,1605,1609]],[[64892,64893],"mapped",[1601,1582,1605]],[[64894,64894],"mapped",[1602,1605,1581]],[[64895,64895],"mapped",[1602,1605,1605]],[[64896,64896],"mapped",[1604,1581,1605]],[[64897,64897],"mapped",[1604,1581,1610]],[[64898,64898],"mapped",[1604,1581,1609]],[[64899,64900],"mapped",[1604,1580,1580]],[[64901,64902],"mapped",[1604,1582,1605]],[[64903,64904],"mapped",[1604,1605,1581]],[[64905,64905],"mapped",[1605,1581,1580]],[[64906,64906],"mapped",[1605,1581,1605]],[[64907,64907],"mapped",[1605,1581,1610]],[[64908,64908],"mapped",[1605,1580,1581]],[[64909,64909],"mapped",[1605,1580,1605]],[[64910,64910],"mapped",[1605,1582,1580]],[[64911,64911],"mapped",[1605,1582,1605]],[[64912,64913],"disallowed"],[[64914,64914],"mapped",[1605,1580,1582]],[[64915,64915],"mapped",[1607,1605,1580]],[[64916,64916],"mapped",[1607,1605,1605]],[[64917,64917],"mapped",[1606,1581,1605]],[[64918,64918],"mapped",[1606,1581,1609]],[[64919,64920],"mapped",[1606,1580,1605]],[[64921,64921],"mapped",[1606,1580,1609]],[[64922,64922],"mapped",[1606,1605,1610]],[[64923,64923],"mapped",[1606,1605,1609]],[[64924,64925],"mapped",[1610,1605,1605]],[[64926,64926],"mapped",[1576,1582,1610]],[[64927,64927],"mapped",[1578,1580,1610]],[[64928,64928],"mapped",[1578,1580,1609]],[[64929,64929],"mapped",[1578,1582,1610]],[[64930,64930],"mapped",[1578,1582,1609]],[[64931,64931],"mapped",[1578,1605,1610]],[[64932,64932],"mapped",[1578,1605,1609]],[[64933,64933],"mapped",[1580,1605,1610]],[[64934,64934],"mapped",[1580,1581,1609]],[[64935,64935],"mapped",[1580,1605,1609]],[[64936,64936],"mapped",[1587,1582,1609]],[[64937,64937],"mapped",[1589,1581,1610]],[[64938,64938],"mapped",[1588,1581,1610]],[[64939,64939],"mapped",[1590,1581,1610]],[[64940,64940],"mapped",[1604,1580,1610]],[[64941,64941],"mapped",[1604,1605,1610]],[[64942,64942],"mapped",[1610,1581,1610]],[[64943,64943],"mapped",[1610,1580,1610]],[[64944,64944],"mapped",[1610,1605,1610]],[[64945,64945],"mapped",[1605,1605,1610]],[[64946,64946],"mapped",[1602,1605,1610]],[[64947,64947],"mapped",[1606,1581,1610]],[[64948,64948],"mapped",[1602,1605,1581]],[[64949,64949],"mapped",[1604,1581,1605]],[[64950,64950],"mapped",[1593,1605,1610]],[[64951,64951],"mapped",[1603,1605,1610]],[[64952,64952],"mapped",[1606,1580,1581]],[[64953,64953],"mapped",[1605,1582,1610]],[[64954,64954],"mapped",[1604,1580,1605]],[[64955,64955],"mapped",[1603,1605,1605]],[[64956,64956],"mapped",[1604,1580,1605]],[[64957,64957],"mapped",[1606,1580,1581]],[[64958,64958],"mapped",[1580,1581,1610]],[[64959,64959],"mapped",[1581,1580,1610]],[[64960,64960],"mapped",[1605,1580,1610]],[[64961,64961],"mapped",[1601,1605,1610]],[[64962,64962],"mapped",[1576,1581,1610]],[[64963,64963],"mapped",[1603,1605,1605]],[[64964,64964],"mapped",[1593,1580,1605]],[[64965,64965],"mapped",[1589,1605,1605]],[[64966,64966],"mapped",[1587,1582,1610]],[[64967,64967],"mapped",[1606,1580,1610]],[[64968,64975],"disallowed"],[[64976,65007],"disallowed"],[[65008,65008],"mapped",[1589,1604,1746]],[[65009,65009],"mapped",[1602,1604,1746]],[[65010,65010],"mapped",[1575,1604,1604,1607]],[[65011,65011],"mapped",[1575,1603,1576,1585]],[[65012,65012],"mapped",[1605,1581,1605,1583]],[[65013,65013],"mapped",[1589,1604,1593,1605]],[[65014,65014],"mapped",[1585,1587,1608,1604]],[[65015,65015],"mapped",[1593,1604,1610,1607]],[[65016,65016],"mapped",[1608,1587,1604,1605]],[[65017,65017],"mapped",[1589,1604,1609]],[[65018,65018],"disallowed_STD3_mapped",[1589,1604,1609,32,1575,1604,1604,1607,32,1593,1604,1610,1607,32,1608,1587,1604,1605]],[[65019,65019],"disallowed_STD3_mapped",[1580,1604,32,1580,1604,1575,1604,1607]],[[65020,65020],"mapped",[1585,1740,1575,1604]],[[65021,65021],"valid",[],"NV8"],[[65022,65023],"disallowed"],[[65024,65039],"ignored"],[[65040,65040],"disallowed_STD3_mapped",[44]],[[65041,65041],"mapped",[12289]],[[65042,65042],"disallowed"],[[65043,65043],"disallowed_STD3_mapped",[58]],[[65044,65044],"disallowed_STD3_mapped",[59]],[[65045,65045],"disallowed_STD3_mapped",[33]],[[65046,65046],"disallowed_STD3_mapped",[63]],[[65047,65047],"mapped",[12310]],[[65048,65048],"mapped",[12311]],[[65049,65049],"disallowed"],[[65050,65055],"disallowed"],[[65056,65059],"valid"],[[65060,65062],"valid"],[[65063,65069],"valid"],[[65070,65071],"valid"],[[65072,65072],"disallowed"],[[65073,65073],"mapped",[8212]],[[65074,65074],"mapped",[8211]],[[65075,65076],"disallowed_STD3_mapped",[95]],[[65077,65077],"disallowed_STD3_mapped",[40]],[[65078,65078],"disallowed_STD3_mapped",[41]],[[65079,65079],"disallowed_STD3_mapped",[123]],[[65080,65080],"disallowed_STD3_mapped",[125]],[[65081,65081],"mapped",[12308]],[[65082,65082],"mapped",[12309]],[[65083,65083],"mapped",[12304]],[[65084,65084],"mapped",[12305]],[[65085,65085],"mapped",[12298]],[[65086,65086],"mapped",[12299]],[[65087,65087],"mapped",[12296]],[[65088,65088],"mapped",[12297]],[[65089,65089],"mapped",[12300]],[[65090,65090],"mapped",[12301]],[[65091,65091],"mapped",[12302]],[[65092,65092],"mapped",[12303]],[[65093,65094],"valid",[],"NV8"],[[65095,65095],"disallowed_STD3_mapped",[91]],[[65096,65096],"disallowed_STD3_mapped",[93]],[[65097,65100],"disallowed_STD3_mapped",[32,773]],[[65101,65103],"disallowed_STD3_mapped",[95]],[[65104,65104],"disallowed_STD3_mapped",[44]],[[65105,65105],"mapped",[12289]],[[65106,65106],"disallowed"],[[65107,65107],"disallowed"],[[65108,65108],"disallowed_STD3_mapped",[59]],[[65109,65109],"disallowed_STD3_mapped",[58]],[[65110,65110],"disallowed_STD3_mapped",[63]],[[65111,65111],"disallowed_STD3_mapped",[33]],[[65112,65112],"mapped",[8212]],[[65113,65113],"disallowed_STD3_mapped",[40]],[[65114,65114],"disallowed_STD3_mapped",[41]],[[65115,65115],"disallowed_STD3_mapped",[123]],[[65116,65116],"disallowed_STD3_mapped",[125]],[[65117,65117],"mapped",[12308]],[[65118,65118],"mapped",[12309]],[[65119,65119],"disallowed_STD3_mapped",[35]],[[65120,65120],"disallowed_STD3_mapped",[38]],[[65121,65121],"disallowed_STD3_mapped",[42]],[[65122,65122],"disallowed_STD3_mapped",[43]],[[65123,65123],"mapped",[45]],[[65124,65124],"disallowed_STD3_mapped",[60]],[[65125,65125],"disallowed_STD3_mapped",[62]],[[65126,65126],"disallowed_STD3_mapped",[61]],[[65127,65127],"disallowed"],[[65128,65128],"disallowed_STD3_mapped",[92]],[[65129,65129],"disallowed_STD3_mapped",[36]],[[65130,65130],"disallowed_STD3_mapped",[37]],[[65131,65131],"disallowed_STD3_mapped",[64]],[[65132,65135],"disallowed"],[[65136,65136],"disallowed_STD3_mapped",[32,1611]],[[65137,65137],"mapped",[1600,1611]],[[65138,65138],"disallowed_STD3_mapped",[32,1612]],[[65139,65139],"valid"],[[65140,65140],"disallowed_STD3_mapped",[32,1613]],[[65141,65141],"disallowed"],[[65142,65142],"disallowed_STD3_mapped",[32,1614]],[[65143,65143],"mapped",[1600,1614]],[[65144,65144],"disallowed_STD3_mapped",[32,1615]],[[65145,65145],"mapped",[1600,1615]],[[65146,65146],"disallowed_STD3_mapped",[32,1616]],[[65147,65147],"mapped",[1600,1616]],[[65148,65148],"disallowed_STD3_mapped",[32,1617]],[[65149,65149],"mapped",[1600,1617]],[[65150,65150],"disallowed_STD3_mapped",[32,1618]],[[65151,65151],"mapped",[1600,1618]],[[65152,65152],"mapped",[1569]],[[65153,65154],"mapped",[1570]],[[65155,65156],"mapped",[1571]],[[65157,65158],"mapped",[1572]],[[65159,65160],"mapped",[1573]],[[65161,65164],"mapped",[1574]],[[65165,65166],"mapped",[1575]],[[65167,65170],"mapped",[1576]],[[65171,65172],"mapped",[1577]],[[65173,65176],"mapped",[1578]],[[65177,65180],"mapped",[1579]],[[65181,65184],"mapped",[1580]],[[65185,65188],"mapped",[1581]],[[65189,65192],"mapped",[1582]],[[65193,65194],"mapped",[1583]],[[65195,65196],"mapped",[1584]],[[65197,65198],"mapped",[1585]],[[65199,65200],"mapped",[1586]],[[65201,65204],"mapped",[1587]],[[65205,65208],"mapped",[1588]],[[65209,65212],"mapped",[1589]],[[65213,65216],"mapped",[1590]],[[65217,65220],"mapped",[1591]],[[65221,65224],"mapped",[1592]],[[65225,65228],"mapped",[1593]],[[65229,65232],"mapped",[1594]],[[65233,65236],"mapped",[1601]],[[65237,65240],"mapped",[1602]],[[65241,65244],"mapped",[1603]],[[65245,65248],"mapped",[1604]],[[65249,65252],"mapped",[1605]],[[65253,65256],"mapped",[1606]],[[65257,65260],"mapped",[1607]],[[65261,65262],"mapped",[1608]],[[65263,65264],"mapped",[1609]],[[65265,65268],"mapped",[1610]],[[65269,65270],"mapped",[1604,1570]],[[65271,65272],"mapped",[1604,1571]],[[65273,65274],"mapped",[1604,1573]],[[65275,65276],"mapped",[1604,1575]],[[65277,65278],"disallowed"],[[65279,65279],"ignored"],[[65280,65280],"disallowed"],[[65281,65281],"disallowed_STD3_mapped",[33]],[[65282,65282],"disallowed_STD3_mapped",[34]],[[65283,65283],"disallowed_STD3_mapped",[35]],[[65284,65284],"disallowed_STD3_mapped",[36]],[[65285,65285],"disallowed_STD3_mapped",[37]],[[65286,65286],"disallowed_STD3_mapped",[38]],[[65287,65287],"disallowed_STD3_mapped",[39]],[[65288,65288],"disallowed_STD3_mapped",[40]],[[65289,65289],"disallowed_STD3_mapped",[41]],[[65290,65290],"disallowed_STD3_mapped",[42]],[[65291,65291],"disallowed_STD3_mapped",[43]],[[65292,65292],"disallowed_STD3_mapped",[44]],[[65293,65293],"mapped",[45]],[[65294,65294],"mapped",[46]],[[65295,65295],"disallowed_STD3_mapped",[47]],[[65296,65296],"mapped",[48]],[[65297,65297],"mapped",[49]],[[65298,65298],"mapped",[50]],[[65299,65299],"mapped",[51]],[[65300,65300],"mapped",[52]],[[65301,65301],"mapped",[53]],[[65302,65302],"mapped",[54]],[[65303,65303],"mapped",[55]],[[65304,65304],"mapped",[56]],[[65305,65305],"mapped",[57]],[[65306,65306],"disallowed_STD3_mapped",[58]],[[65307,65307],"disallowed_STD3_mapped",[59]],[[65308,65308],"disallowed_STD3_mapped",[60]],[[65309,65309],"disallowed_STD3_mapped",[61]],[[65310,65310],"disallowed_STD3_mapped",[62]],[[65311,65311],"disallowed_STD3_mapped",[63]],[[65312,65312],"disallowed_STD3_mapped",[64]],[[65313,65313],"mapped",[97]],[[65314,65314],"mapped",[98]],[[65315,65315],"mapped",[99]],[[65316,65316],"mapped",[100]],[[65317,65317],"mapped",[101]],[[65318,65318],"mapped",[102]],[[65319,65319],"mapped",[103]],[[65320,65320],"mapped",[104]],[[65321,65321],"mapped",[105]],[[65322,65322],"mapped",[106]],[[65323,65323],"mapped",[107]],[[65324,65324],"mapped",[108]],[[65325,65325],"mapped",[109]],[[65326,65326],"mapped",[110]],[[65327,65327],"mapped",[111]],[[65328,65328],"mapped",[112]],[[65329,65329],"mapped",[113]],[[65330,65330],"mapped",[114]],[[65331,65331],"mapped",[115]],[[65332,65332],"mapped",[116]],[[65333,65333],"mapped",[117]],[[65334,65334],"mapped",[118]],[[65335,65335],"mapped",[119]],[[65336,65336],"mapped",[120]],[[65337,65337],"mapped",[121]],[[65338,65338],"mapped",[122]],[[65339,65339],"disallowed_STD3_mapped",[91]],[[65340,65340],"disallowed_STD3_mapped",[92]],[[65341,65341],"disallowed_STD3_mapped",[93]],[[65342,65342],"disallowed_STD3_mapped",[94]],[[65343,65343],"disallowed_STD3_mapped",[95]],[[65344,65344],"disallowed_STD3_mapped",[96]],[[65345,65345],"mapped",[97]],[[65346,65346],"mapped",[98]],[[65347,65347],"mapped",[99]],[[65348,65348],"mapped",[100]],[[65349,65349],"mapped",[101]],[[65350,65350],"mapped",[102]],[[65351,65351],"mapped",[103]],[[65352,65352],"mapped",[104]],[[65353,65353],"mapped",[105]],[[65354,65354],"mapped",[106]],[[65355,65355],"mapped",[107]],[[65356,65356],"mapped",[108]],[[65357,65357],"mapped",[109]],[[65358,65358],"mapped",[110]],[[65359,65359],"mapped",[111]],[[65360,65360],"mapped",[112]],[[65361,65361],"mapped",[113]],[[65362,65362],"mapped",[114]],[[65363,65363],"mapped",[115]],[[65364,65364],"mapped",[116]],[[65365,65365],"mapped",[117]],[[65366,65366],"mapped",[118]],[[65367,65367],"mapped",[119]],[[65368,65368],"mapped",[120]],[[65369,65369],"mapped",[121]],[[65370,65370],"mapped",[122]],[[65371,65371],"disallowed_STD3_mapped",[123]],[[65372,65372],"disallowed_STD3_mapped",[124]],[[65373,65373],"disallowed_STD3_mapped",[125]],[[65374,65374],"disallowed_STD3_mapped",[126]],[[65375,65375],"mapped",[10629]],[[65376,65376],"mapped",[10630]],[[65377,65377],"mapped",[46]],[[65378,65378],"mapped",[12300]],[[65379,65379],"mapped",[12301]],[[65380,65380],"mapped",[12289]],[[65381,65381],"mapped",[12539]],[[65382,65382],"mapped",[12530]],[[65383,65383],"mapped",[12449]],[[65384,65384],"mapped",[12451]],[[65385,65385],"mapped",[12453]],[[65386,65386],"mapped",[12455]],[[65387,65387],"mapped",[12457]],[[65388,65388],"mapped",[12515]],[[65389,65389],"mapped",[12517]],[[65390,65390],"mapped",[12519]],[[65391,65391],"mapped",[12483]],[[65392,65392],"mapped",[12540]],[[65393,65393],"mapped",[12450]],[[65394,65394],"mapped",[12452]],[[65395,65395],"mapped",[12454]],[[65396,65396],"mapped",[12456]],[[65397,65397],"mapped",[12458]],[[65398,65398],"mapped",[12459]],[[65399,65399],"mapped",[12461]],[[65400,65400],"mapped",[12463]],[[65401,65401],"mapped",[12465]],[[65402,65402],"mapped",[12467]],[[65403,65403],"mapped",[12469]],[[65404,65404],"mapped",[12471]],[[65405,65405],"mapped",[12473]],[[65406,65406],"mapped",[12475]],[[65407,65407],"mapped",[12477]],[[65408,65408],"mapped",[12479]],[[65409,65409],"mapped",[12481]],[[65410,65410],"mapped",[12484]],[[65411,65411],"mapped",[12486]],[[65412,65412],"mapped",[12488]],[[65413,65413],"mapped",[12490]],[[65414,65414],"mapped",[12491]],[[65415,65415],"mapped",[12492]],[[65416,65416],"mapped",[12493]],[[65417,65417],"mapped",[12494]],[[65418,65418],"mapped",[12495]],[[65419,65419],"mapped",[12498]],[[65420,65420],"mapped",[12501]],[[65421,65421],"mapped",[12504]],[[65422,65422],"mapped",[12507]],[[65423,65423],"mapped",[12510]],[[65424,65424],"mapped",[12511]],[[65425,65425],"mapped",[12512]],[[65426,65426],"mapped",[12513]],[[65427,65427],"mapped",[12514]],[[65428,65428],"mapped",[12516]],[[65429,65429],"mapped",[12518]],[[65430,65430],"mapped",[12520]],[[65431,65431],"mapped",[12521]],[[65432,65432],"mapped",[12522]],[[65433,65433],"mapped",[12523]],[[65434,65434],"mapped",[12524]],[[65435,65435],"mapped",[12525]],[[65436,65436],"mapped",[12527]],[[65437,65437],"mapped",[12531]],[[65438,65438],"mapped",[12441]],[[65439,65439],"mapped",[12442]],[[65440,65440],"disallowed"],[[65441,65441],"mapped",[4352]],[[65442,65442],"mapped",[4353]],[[65443,65443],"mapped",[4522]],[[65444,65444],"mapped",[4354]],[[65445,65445],"mapped",[4524]],[[65446,65446],"mapped",[4525]],[[65447,65447],"mapped",[4355]],[[65448,65448],"mapped",[4356]],[[65449,65449],"mapped",[4357]],[[65450,65450],"mapped",[4528]],[[65451,65451],"mapped",[4529]],[[65452,65452],"mapped",[4530]],[[65453,65453],"mapped",[4531]],[[65454,65454],"mapped",[4532]],[[65455,65455],"mapped",[4533]],[[65456,65456],"mapped",[4378]],[[65457,65457],"mapped",[4358]],[[65458,65458],"mapped",[4359]],[[65459,65459],"mapped",[4360]],[[65460,65460],"mapped",[4385]],[[65461,65461],"mapped",[4361]],[[65462,65462],"mapped",[4362]],[[65463,65463],"mapped",[4363]],[[65464,65464],"mapped",[4364]],[[65465,65465],"mapped",[4365]],[[65466,65466],"mapped",[4366]],[[65467,65467],"mapped",[4367]],[[65468,65468],"mapped",[4368]],[[65469,65469],"mapped",[4369]],[[65470,65470],"mapped",[4370]],[[65471,65473],"disallowed"],[[65474,65474],"mapped",[4449]],[[65475,65475],"mapped",[4450]],[[65476,65476],"mapped",[4451]],[[65477,65477],"mapped",[4452]],[[65478,65478],"mapped",[4453]],[[65479,65479],"mapped",[4454]],[[65480,65481],"disallowed"],[[65482,65482],"mapped",[4455]],[[65483,65483],"mapped",[4456]],[[65484,65484],"mapped",[4457]],[[65485,65485],"mapped",[4458]],[[65486,65486],"mapped",[4459]],[[65487,65487],"mapped",[4460]],[[65488,65489],"disallowed"],[[65490,65490],"mapped",[4461]],[[65491,65491],"mapped",[4462]],[[65492,65492],"mapped",[4463]],[[65493,65493],"mapped",[4464]],[[65494,65494],"mapped",[4465]],[[65495,65495],"mapped",[4466]],[[65496,65497],"disallowed"],[[65498,65498],"mapped",[4467]],[[65499,65499],"mapped",[4468]],[[65500,65500],"mapped",[4469]],[[65501,65503],"disallowed"],[[65504,65504],"mapped",[162]],[[65505,65505],"mapped",[163]],[[65506,65506],"mapped",[172]],[[65507,65507],"disallowed_STD3_mapped",[32,772]],[[65508,65508],"mapped",[166]],[[65509,65509],"mapped",[165]],[[65510,65510],"mapped",[8361]],[[65511,65511],"disallowed"],[[65512,65512],"mapped",[9474]],[[65513,65513],"mapped",[8592]],[[65514,65514],"mapped",[8593]],[[65515,65515],"mapped",[8594]],[[65516,65516],"mapped",[8595]],[[65517,65517],"mapped",[9632]],[[65518,65518],"mapped",[9675]],[[65519,65528],"disallowed"],[[65529,65531],"disallowed"],[[65532,65532],"disallowed"],[[65533,65533],"disallowed"],[[65534,65535],"disallowed"],[[65536,65547],"valid"],[[65548,65548],"disallowed"],[[65549,65574],"valid"],[[65575,65575],"disallowed"],[[65576,65594],"valid"],[[65595,65595],"disallowed"],[[65596,65597],"valid"],[[65598,65598],"disallowed"],[[65599,65613],"valid"],[[65614,65615],"disallowed"],[[65616,65629],"valid"],[[65630,65663],"disallowed"],[[65664,65786],"valid"],[[65787,65791],"disallowed"],[[65792,65794],"valid",[],"NV8"],[[65795,65798],"disallowed"],[[65799,65843],"valid",[],"NV8"],[[65844,65846],"disallowed"],[[65847,65855],"valid",[],"NV8"],[[65856,65930],"valid",[],"NV8"],[[65931,65932],"valid",[],"NV8"],[[65933,65935],"disallowed"],[[65936,65947],"valid",[],"NV8"],[[65948,65951],"disallowed"],[[65952,65952],"valid",[],"NV8"],[[65953,65999],"disallowed"],[[66000,66044],"valid",[],"NV8"],[[66045,66045],"valid"],[[66046,66175],"disallowed"],[[66176,66204],"valid"],[[66205,66207],"disallowed"],[[66208,66256],"valid"],[[66257,66271],"disallowed"],[[66272,66272],"valid"],[[66273,66299],"valid",[],"NV8"],[[66300,66303],"disallowed"],[[66304,66334],"valid"],[[66335,66335],"valid"],[[66336,66339],"valid",[],"NV8"],[[66340,66351],"disallowed"],[[66352,66368],"valid"],[[66369,66369],"valid",[],"NV8"],[[66370,66377],"valid"],[[66378,66378],"valid",[],"NV8"],[[66379,66383],"disallowed"],[[66384,66426],"valid"],[[66427,66431],"disallowed"],[[66432,66461],"valid"],[[66462,66462],"disallowed"],[[66463,66463],"valid",[],"NV8"],[[66464,66499],"valid"],[[66500,66503],"disallowed"],[[66504,66511],"valid"],[[66512,66517],"valid",[],"NV8"],[[66518,66559],"disallowed"],[[66560,66560],"mapped",[66600]],[[66561,66561],"mapped",[66601]],[[66562,66562],"mapped",[66602]],[[66563,66563],"mapped",[66603]],[[66564,66564],"mapped",[66604]],[[66565,66565],"mapped",[66605]],[[66566,66566],"mapped",[66606]],[[66567,66567],"mapped",[66607]],[[66568,66568],"mapped",[66608]],[[66569,66569],"mapped",[66609]],[[66570,66570],"mapped",[66610]],[[66571,66571],"mapped",[66611]],[[66572,66572],"mapped",[66612]],[[66573,66573],"mapped",[66613]],[[66574,66574],"mapped",[66614]],[[66575,66575],"mapped",[66615]],[[66576,66576],"mapped",[66616]],[[66577,66577],"mapped",[66617]],[[66578,66578],"mapped",[66618]],[[66579,66579],"mapped",[66619]],[[66580,66580],"mapped",[66620]],[[66581,66581],"mapped",[66621]],[[66582,66582],"mapped",[66622]],[[66583,66583],"mapped",[66623]],[[66584,66584],"mapped",[66624]],[[66585,66585],"mapped",[66625]],[[66586,66586],"mapped",[66626]],[[66587,66587],"mapped",[66627]],[[66588,66588],"mapped",[66628]],[[66589,66589],"mapped",[66629]],[[66590,66590],"mapped",[66630]],[[66591,66591],"mapped",[66631]],[[66592,66592],"mapped",[66632]],[[66593,66593],"mapped",[66633]],[[66594,66594],"mapped",[66634]],[[66595,66595],"mapped",[66635]],[[66596,66596],"mapped",[66636]],[[66597,66597],"mapped",[66637]],[[66598,66598],"mapped",[66638]],[[66599,66599],"mapped",[66639]],[[66600,66637],"valid"],[[66638,66717],"valid"],[[66718,66719],"disallowed"],[[66720,66729],"valid"],[[66730,66815],"disallowed"],[[66816,66855],"valid"],[[66856,66863],"disallowed"],[[66864,66915],"valid"],[[66916,66926],"disallowed"],[[66927,66927],"valid",[],"NV8"],[[66928,67071],"disallowed"],[[67072,67382],"valid"],[[67383,67391],"disallowed"],[[67392,67413],"valid"],[[67414,67423],"disallowed"],[[67424,67431],"valid"],[[67432,67583],"disallowed"],[[67584,67589],"valid"],[[67590,67591],"disallowed"],[[67592,67592],"valid"],[[67593,67593],"disallowed"],[[67594,67637],"valid"],[[67638,67638],"disallowed"],[[67639,67640],"valid"],[[67641,67643],"disallowed"],[[67644,67644],"valid"],[[67645,67646],"disallowed"],[[67647,67647],"valid"],[[67648,67669],"valid"],[[67670,67670],"disallowed"],[[67671,67679],"valid",[],"NV8"],[[67680,67702],"valid"],[[67703,67711],"valid",[],"NV8"],[[67712,67742],"valid"],[[67743,67750],"disallowed"],[[67751,67759],"valid",[],"NV8"],[[67760,67807],"disallowed"],[[67808,67826],"valid"],[[67827,67827],"disallowed"],[[67828,67829],"valid"],[[67830,67834],"disallowed"],[[67835,67839],"valid",[],"NV8"],[[67840,67861],"valid"],[[67862,67865],"valid",[],"NV8"],[[67866,67867],"valid",[],"NV8"],[[67868,67870],"disallowed"],[[67871,67871],"valid",[],"NV8"],[[67872,67897],"valid"],[[67898,67902],"disallowed"],[[67903,67903],"valid",[],"NV8"],[[67904,67967],"disallowed"],[[67968,68023],"valid"],[[68024,68027],"disallowed"],[[68028,68029],"valid",[],"NV8"],[[68030,68031],"valid"],[[68032,68047],"valid",[],"NV8"],[[68048,68049],"disallowed"],[[68050,68095],"valid",[],"NV8"],[[68096,68099],"valid"],[[68100,68100],"disallowed"],[[68101,68102],"valid"],[[68103,68107],"disallowed"],[[68108,68115],"valid"],[[68116,68116],"disallowed"],[[68117,68119],"valid"],[[68120,68120],"disallowed"],[[68121,68147],"valid"],[[68148,68151],"disallowed"],[[68152,68154],"valid"],[[68155,68158],"disallowed"],[[68159,68159],"valid"],[[68160,68167],"valid",[],"NV8"],[[68168,68175],"disallowed"],[[68176,68184],"valid",[],"NV8"],[[68185,68191],"disallowed"],[[68192,68220],"valid"],[[68221,68223],"valid",[],"NV8"],[[68224,68252],"valid"],[[68253,68255],"valid",[],"NV8"],[[68256,68287],"disallowed"],[[68288,68295],"valid"],[[68296,68296],"valid",[],"NV8"],[[68297,68326],"valid"],[[68327,68330],"disallowed"],[[68331,68342],"valid",[],"NV8"],[[68343,68351],"disallowed"],[[68352,68405],"valid"],[[68406,68408],"disallowed"],[[68409,68415],"valid",[],"NV8"],[[68416,68437],"valid"],[[68438,68439],"disallowed"],[[68440,68447],"valid",[],"NV8"],[[68448,68466],"valid"],[[68467,68471],"disallowed"],[[68472,68479],"valid",[],"NV8"],[[68480,68497],"valid"],[[68498,68504],"disallowed"],[[68505,68508],"valid",[],"NV8"],[[68509,68520],"disallowed"],[[68521,68527],"valid",[],"NV8"],[[68528,68607],"disallowed"],[[68608,68680],"valid"],[[68681,68735],"disallowed"],[[68736,68736],"mapped",[68800]],[[68737,68737],"mapped",[68801]],[[68738,68738],"mapped",[68802]],[[68739,68739],"mapped",[68803]],[[68740,68740],"mapped",[68804]],[[68741,68741],"mapped",[68805]],[[68742,68742],"mapped",[68806]],[[68743,68743],"mapped",[68807]],[[68744,68744],"mapped",[68808]],[[68745,68745],"mapped",[68809]],[[68746,68746],"mapped",[68810]],[[68747,68747],"mapped",[68811]],[[68748,68748],"mapped",[68812]],[[68749,68749],"mapped",[68813]],[[68750,68750],"mapped",[68814]],[[68751,68751],"mapped",[68815]],[[68752,68752],"mapped",[68816]],[[68753,68753],"mapped",[68817]],[[68754,68754],"mapped",[68818]],[[68755,68755],"mapped",[68819]],[[68756,68756],"mapped",[68820]],[[68757,68757],"mapped",[68821]],[[68758,68758],"mapped",[68822]],[[68759,68759],"mapped",[68823]],[[68760,68760],"mapped",[68824]],[[68761,68761],"mapped",[68825]],[[68762,68762],"mapped",[68826]],[[68763,68763],"mapped",[68827]],[[68764,68764],"mapped",[68828]],[[68765,68765],"mapped",[68829]],[[68766,68766],"mapped",[68830]],[[68767,68767],"mapped",[68831]],[[68768,68768],"mapped",[68832]],[[68769,68769],"mapped",[68833]],[[68770,68770],"mapped",[68834]],[[68771,68771],"mapped",[68835]],[[68772,68772],"mapped",[68836]],[[68773,68773],"mapped",[68837]],[[68774,68774],"mapped",[68838]],[[68775,68775],"mapped",[68839]],[[68776,68776],"mapped",[68840]],[[68777,68777],"mapped",[68841]],[[68778,68778],"mapped",[68842]],[[68779,68779],"mapped",[68843]],[[68780,68780],"mapped",[68844]],[[68781,68781],"mapped",[68845]],[[68782,68782],"mapped",[68846]],[[68783,68783],"mapped",[68847]],[[68784,68784],"mapped",[68848]],[[68785,68785],"mapped",[68849]],[[68786,68786],"mapped",[68850]],[[68787,68799],"disallowed"],[[68800,68850],"valid"],[[68851,68857],"disallowed"],[[68858,68863],"valid",[],"NV8"],[[68864,69215],"disallowed"],[[69216,69246],"valid",[],"NV8"],[[69247,69631],"disallowed"],[[69632,69702],"valid"],[[69703,69709],"valid",[],"NV8"],[[69710,69713],"disallowed"],[[69714,69733],"valid",[],"NV8"],[[69734,69743],"valid"],[[69744,69758],"disallowed"],[[69759,69759],"valid"],[[69760,69818],"valid"],[[69819,69820],"valid",[],"NV8"],[[69821,69821],"disallowed"],[[69822,69825],"valid",[],"NV8"],[[69826,69839],"disallowed"],[[69840,69864],"valid"],[[69865,69871],"disallowed"],[[69872,69881],"valid"],[[69882,69887],"disallowed"],[[69888,69940],"valid"],[[69941,69941],"disallowed"],[[69942,69951],"valid"],[[69952,69955],"valid",[],"NV8"],[[69956,69967],"disallowed"],[[69968,70003],"valid"],[[70004,70005],"valid",[],"NV8"],[[70006,70006],"valid"],[[70007,70015],"disallowed"],[[70016,70084],"valid"],[[70085,70088],"valid",[],"NV8"],[[70089,70089],"valid",[],"NV8"],[[70090,70092],"valid"],[[70093,70093],"valid",[],"NV8"],[[70094,70095],"disallowed"],[[70096,70105],"valid"],[[70106,70106],"valid"],[[70107,70107],"valid",[],"NV8"],[[70108,70108],"valid"],[[70109,70111],"valid",[],"NV8"],[[70112,70112],"disallowed"],[[70113,70132],"valid",[],"NV8"],[[70133,70143],"disallowed"],[[70144,70161],"valid"],[[70162,70162],"disallowed"],[[70163,70199],"valid"],[[70200,70205],"valid",[],"NV8"],[[70206,70271],"disallowed"],[[70272,70278],"valid"],[[70279,70279],"disallowed"],[[70280,70280],"valid"],[[70281,70281],"disallowed"],[[70282,70285],"valid"],[[70286,70286],"disallowed"],[[70287,70301],"valid"],[[70302,70302],"disallowed"],[[70303,70312],"valid"],[[70313,70313],"valid",[],"NV8"],[[70314,70319],"disallowed"],[[70320,70378],"valid"],[[70379,70383],"disallowed"],[[70384,70393],"valid"],[[70394,70399],"disallowed"],[[70400,70400],"valid"],[[70401,70403],"valid"],[[70404,70404],"disallowed"],[[70405,70412],"valid"],[[70413,70414],"disallowed"],[[70415,70416],"valid"],[[70417,70418],"disallowed"],[[70419,70440],"valid"],[[70441,70441],"disallowed"],[[70442,70448],"valid"],[[70449,70449],"disallowed"],[[70450,70451],"valid"],[[70452,70452],"disallowed"],[[70453,70457],"valid"],[[70458,70459],"disallowed"],[[70460,70468],"valid"],[[70469,70470],"disallowed"],[[70471,70472],"valid"],[[70473,70474],"disallowed"],[[70475,70477],"valid"],[[70478,70479],"disallowed"],[[70480,70480],"valid"],[[70481,70486],"disallowed"],[[70487,70487],"valid"],[[70488,70492],"disallowed"],[[70493,70499],"valid"],[[70500,70501],"disallowed"],[[70502,70508],"valid"],[[70509,70511],"disallowed"],[[70512,70516],"valid"],[[70517,70783],"disallowed"],[[70784,70853],"valid"],[[70854,70854],"valid",[],"NV8"],[[70855,70855],"valid"],[[70856,70863],"disallowed"],[[70864,70873],"valid"],[[70874,71039],"disallowed"],[[71040,71093],"valid"],[[71094,71095],"disallowed"],[[71096,71104],"valid"],[[71105,71113],"valid",[],"NV8"],[[71114,71127],"valid",[],"NV8"],[[71128,71133],"valid"],[[71134,71167],"disallowed"],[[71168,71232],"valid"],[[71233,71235],"valid",[],"NV8"],[[71236,71236],"valid"],[[71237,71247],"disallowed"],[[71248,71257],"valid"],[[71258,71295],"disallowed"],[[71296,71351],"valid"],[[71352,71359],"disallowed"],[[71360,71369],"valid"],[[71370,71423],"disallowed"],[[71424,71449],"valid"],[[71450,71452],"disallowed"],[[71453,71467],"valid"],[[71468,71471],"disallowed"],[[71472,71481],"valid"],[[71482,71487],"valid",[],"NV8"],[[71488,71839],"disallowed"],[[71840,71840],"mapped",[71872]],[[71841,71841],"mapped",[71873]],[[71842,71842],"mapped",[71874]],[[71843,71843],"mapped",[71875]],[[71844,71844],"mapped",[71876]],[[71845,71845],"mapped",[71877]],[[71846,71846],"mapped",[71878]],[[71847,71847],"mapped",[71879]],[[71848,71848],"mapped",[71880]],[[71849,71849],"mapped",[71881]],[[71850,71850],"mapped",[71882]],[[71851,71851],"mapped",[71883]],[[71852,71852],"mapped",[71884]],[[71853,71853],"mapped",[71885]],[[71854,71854],"mapped",[71886]],[[71855,71855],"mapped",[71887]],[[71856,71856],"mapped",[71888]],[[71857,71857],"mapped",[71889]],[[71858,71858],"mapped",[71890]],[[71859,71859],"mapped",[71891]],[[71860,71860],"mapped",[71892]],[[71861,71861],"mapped",[71893]],[[71862,71862],"mapped",[71894]],[[71863,71863],"mapped",[71895]],[[71864,71864],"mapped",[71896]],[[71865,71865],"mapped",[71897]],[[71866,71866],"mapped",[71898]],[[71867,71867],"mapped",[71899]],[[71868,71868],"mapped",[71900]],[[71869,71869],"mapped",[71901]],[[71870,71870],"mapped",[71902]],[[71871,71871],"mapped",[71903]],[[71872,71913],"valid"],[[71914,71922],"valid",[],"NV8"],[[71923,71934],"disallowed"],[[71935,71935],"valid"],[[71936,72383],"disallowed"],[[72384,72440],"valid"],[[72441,73727],"disallowed"],[[73728,74606],"valid"],[[74607,74648],"valid"],[[74649,74649],"valid"],[[74650,74751],"disallowed"],[[74752,74850],"valid",[],"NV8"],[[74851,74862],"valid",[],"NV8"],[[74863,74863],"disallowed"],[[74864,74867],"valid",[],"NV8"],[[74868,74868],"valid",[],"NV8"],[[74869,74879],"disallowed"],[[74880,75075],"valid"],[[75076,77823],"disallowed"],[[77824,78894],"valid"],[[78895,82943],"disallowed"],[[82944,83526],"valid"],[[83527,92159],"disallowed"],[[92160,92728],"valid"],[[92729,92735],"disallowed"],[[92736,92766],"valid"],[[92767,92767],"disallowed"],[[92768,92777],"valid"],[[92778,92781],"disallowed"],[[92782,92783],"valid",[],"NV8"],[[92784,92879],"disallowed"],[[92880,92909],"valid"],[[92910,92911],"disallowed"],[[92912,92916],"valid"],[[92917,92917],"valid",[],"NV8"],[[92918,92927],"disallowed"],[[92928,92982],"valid"],[[92983,92991],"valid",[],"NV8"],[[92992,92995],"valid"],[[92996,92997],"valid",[],"NV8"],[[92998,93007],"disallowed"],[[93008,93017],"valid"],[[93018,93018],"disallowed"],[[93019,93025],"valid",[],"NV8"],[[93026,93026],"disallowed"],[[93027,93047],"valid"],[[93048,93052],"disallowed"],[[93053,93071],"valid"],[[93072,93951],"disallowed"],[[93952,94020],"valid"],[[94021,94031],"disallowed"],[[94032,94078],"valid"],[[94079,94094],"disallowed"],[[94095,94111],"valid"],[[94112,110591],"disallowed"],[[110592,110593],"valid"],[[110594,113663],"disallowed"],[[113664,113770],"valid"],[[113771,113775],"disallowed"],[[113776,113788],"valid"],[[113789,113791],"disallowed"],[[113792,113800],"valid"],[[113801,113807],"disallowed"],[[113808,113817],"valid"],[[113818,113819],"disallowed"],[[113820,113820],"valid",[],"NV8"],[[113821,113822],"valid"],[[113823,113823],"valid",[],"NV8"],[[113824,113827],"ignored"],[[113828,118783],"disallowed"],[[118784,119029],"valid",[],"NV8"],[[119030,119039],"disallowed"],[[119040,119078],"valid",[],"NV8"],[[119079,119080],"disallowed"],[[119081,119081],"valid",[],"NV8"],[[119082,119133],"valid",[],"NV8"],[[119134,119134],"mapped",[119127,119141]],[[119135,119135],"mapped",[119128,119141]],[[119136,119136],"mapped",[119128,119141,119150]],[[119137,119137],"mapped",[119128,119141,119151]],[[119138,119138],"mapped",[119128,119141,119152]],[[119139,119139],"mapped",[119128,119141,119153]],[[119140,119140],"mapped",[119128,119141,119154]],[[119141,119154],"valid",[],"NV8"],[[119155,119162],"disallowed"],[[119163,119226],"valid",[],"NV8"],[[119227,119227],"mapped",[119225,119141]],[[119228,119228],"mapped",[119226,119141]],[[119229,119229],"mapped",[119225,119141,119150]],[[119230,119230],"mapped",[119226,119141,119150]],[[119231,119231],"mapped",[119225,119141,119151]],[[119232,119232],"mapped",[119226,119141,119151]],[[119233,119261],"valid",[],"NV8"],[[119262,119272],"valid",[],"NV8"],[[119273,119295],"disallowed"],[[119296,119365],"valid",[],"NV8"],[[119366,119551],"disallowed"],[[119552,119638],"valid",[],"NV8"],[[119639,119647],"disallowed"],[[119648,119665],"valid",[],"NV8"],[[119666,119807],"disallowed"],[[119808,119808],"mapped",[97]],[[119809,119809],"mapped",[98]],[[119810,119810],"mapped",[99]],[[119811,119811],"mapped",[100]],[[119812,119812],"mapped",[101]],[[119813,119813],"mapped",[102]],[[119814,119814],"mapped",[103]],[[119815,119815],"mapped",[104]],[[119816,119816],"mapped",[105]],[[119817,119817],"mapped",[106]],[[119818,119818],"mapped",[107]],[[119819,119819],"mapped",[108]],[[119820,119820],"mapped",[109]],[[119821,119821],"mapped",[110]],[[119822,119822],"mapped",[111]],[[119823,119823],"mapped",[112]],[[119824,119824],"mapped",[113]],[[119825,119825],"mapped",[114]],[[119826,119826],"mapped",[115]],[[119827,119827],"mapped",[116]],[[119828,119828],"mapped",[117]],[[119829,119829],"mapped",[118]],[[119830,119830],"mapped",[119]],[[119831,119831],"mapped",[120]],[[119832,119832],"mapped",[121]],[[119833,119833],"mapped",[122]],[[119834,119834],"mapped",[97]],[[119835,119835],"mapped",[98]],[[119836,119836],"mapped",[99]],[[119837,119837],"mapped",[100]],[[119838,119838],"mapped",[101]],[[119839,119839],"mapped",[102]],[[119840,119840],"mapped",[103]],[[119841,119841],"mapped",[104]],[[119842,119842],"mapped",[105]],[[119843,119843],"mapped",[106]],[[119844,119844],"mapped",[107]],[[119845,119845],"mapped",[108]],[[119846,119846],"mapped",[109]],[[119847,119847],"mapped",[110]],[[119848,119848],"mapped",[111]],[[119849,119849],"mapped",[112]],[[119850,119850],"mapped",[113]],[[119851,119851],"mapped",[114]],[[119852,119852],"mapped",[115]],[[119853,119853],"mapped",[116]],[[119854,119854],"mapped",[117]],[[119855,119855],"mapped",[118]],[[119856,119856],"mapped",[119]],[[119857,119857],"mapped",[120]],[[119858,119858],"mapped",[121]],[[119859,119859],"mapped",[122]],[[119860,119860],"mapped",[97]],[[119861,119861],"mapped",[98]],[[119862,119862],"mapped",[99]],[[119863,119863],"mapped",[100]],[[119864,119864],"mapped",[101]],[[119865,119865],"mapped",[102]],[[119866,119866],"mapped",[103]],[[119867,119867],"mapped",[104]],[[119868,119868],"mapped",[105]],[[119869,119869],"mapped",[106]],[[119870,119870],"mapped",[107]],[[119871,119871],"mapped",[108]],[[119872,119872],"mapped",[109]],[[119873,119873],"mapped",[110]],[[119874,119874],"mapped",[111]],[[119875,119875],"mapped",[112]],[[119876,119876],"mapped",[113]],[[119877,119877],"mapped",[114]],[[119878,119878],"mapped",[115]],[[119879,119879],"mapped",[116]],[[119880,119880],"mapped",[117]],[[119881,119881],"mapped",[118]],[[119882,119882],"mapped",[119]],[[119883,119883],"mapped",[120]],[[119884,119884],"mapped",[121]],[[119885,119885],"mapped",[122]],[[119886,119886],"mapped",[97]],[[119887,119887],"mapped",[98]],[[119888,119888],"mapped",[99]],[[119889,119889],"mapped",[100]],[[119890,119890],"mapped",[101]],[[119891,119891],"mapped",[102]],[[119892,119892],"mapped",[103]],[[119893,119893],"disallowed"],[[119894,119894],"mapped",[105]],[[119895,119895],"mapped",[106]],[[119896,119896],"mapped",[107]],[[119897,119897],"mapped",[108]],[[119898,119898],"mapped",[109]],[[119899,119899],"mapped",[110]],[[119900,119900],"mapped",[111]],[[119901,119901],"mapped",[112]],[[119902,119902],"mapped",[113]],[[119903,119903],"mapped",[114]],[[119904,119904],"mapped",[115]],[[119905,119905],"mapped",[116]],[[119906,119906],"mapped",[117]],[[119907,119907],"mapped",[118]],[[119908,119908],"mapped",[119]],[[119909,119909],"mapped",[120]],[[119910,119910],"mapped",[121]],[[119911,119911],"mapped",[122]],[[119912,119912],"mapped",[97]],[[119913,119913],"mapped",[98]],[[119914,119914],"mapped",[99]],[[119915,119915],"mapped",[100]],[[119916,119916],"mapped",[101]],[[119917,119917],"mapped",[102]],[[119918,119918],"mapped",[103]],[[119919,119919],"mapped",[104]],[[119920,119920],"mapped",[105]],[[119921,119921],"mapped",[106]],[[119922,119922],"mapped",[107]],[[119923,119923],"mapped",[108]],[[119924,119924],"mapped",[109]],[[119925,119925],"mapped",[110]],[[119926,119926],"mapped",[111]],[[119927,119927],"mapped",[112]],[[119928,119928],"mapped",[113]],[[119929,119929],"mapped",[114]],[[119930,119930],"mapped",[115]],[[119931,119931],"mapped",[116]],[[119932,119932],"mapped",[117]],[[119933,119933],"mapped",[118]],[[119934,119934],"mapped",[119]],[[119935,119935],"mapped",[120]],[[119936,119936],"mapped",[121]],[[119937,119937],"mapped",[122]],[[119938,119938],"mapped",[97]],[[119939,119939],"mapped",[98]],[[119940,119940],"mapped",[99]],[[119941,119941],"mapped",[100]],[[119942,119942],"mapped",[101]],[[119943,119943],"mapped",[102]],[[119944,119944],"mapped",[103]],[[119945,119945],"mapped",[104]],[[119946,119946],"mapped",[105]],[[119947,119947],"mapped",[106]],[[119948,119948],"mapped",[107]],[[119949,119949],"mapped",[108]],[[119950,119950],"mapped",[109]],[[119951,119951],"mapped",[110]],[[119952,119952],"mapped",[111]],[[119953,119953],"mapped",[112]],[[119954,119954],"mapped",[113]],[[119955,119955],"mapped",[114]],[[119956,119956],"mapped",[115]],[[119957,119957],"mapped",[116]],[[119958,119958],"mapped",[117]],[[119959,119959],"mapped",[118]],[[119960,119960],"mapped",[119]],[[119961,119961],"mapped",[120]],[[119962,119962],"mapped",[121]],[[119963,119963],"mapped",[122]],[[119964,119964],"mapped",[97]],[[119965,119965],"disallowed"],[[119966,119966],"mapped",[99]],[[119967,119967],"mapped",[100]],[[119968,119969],"disallowed"],[[119970,119970],"mapped",[103]],[[119971,119972],"disallowed"],[[119973,119973],"mapped",[106]],[[119974,119974],"mapped",[107]],[[119975,119976],"disallowed"],[[119977,119977],"mapped",[110]],[[119978,119978],"mapped",[111]],[[119979,119979],"mapped",[112]],[[119980,119980],"mapped",[113]],[[119981,119981],"disallowed"],[[119982,119982],"mapped",[115]],[[119983,119983],"mapped",[116]],[[119984,119984],"mapped",[117]],[[119985,119985],"mapped",[118]],[[119986,119986],"mapped",[119]],[[119987,119987],"mapped",[120]],[[119988,119988],"mapped",[121]],[[119989,119989],"mapped",[122]],[[119990,119990],"mapped",[97]],[[119991,119991],"mapped",[98]],[[119992,119992],"mapped",[99]],[[119993,119993],"mapped",[100]],[[119994,119994],"disallowed"],[[119995,119995],"mapped",[102]],[[119996,119996],"disallowed"],[[119997,119997],"mapped",[104]],[[119998,119998],"mapped",[105]],[[119999,119999],"mapped",[106]],[[120000,120000],"mapped",[107]],[[120001,120001],"mapped",[108]],[[120002,120002],"mapped",[109]],[[120003,120003],"mapped",[110]],[[120004,120004],"disallowed"],[[120005,120005],"mapped",[112]],[[120006,120006],"mapped",[113]],[[120007,120007],"mapped",[114]],[[120008,120008],"mapped",[115]],[[120009,120009],"mapped",[116]],[[120010,120010],"mapped",[117]],[[120011,120011],"mapped",[118]],[[120012,120012],"mapped",[119]],[[120013,120013],"mapped",[120]],[[120014,120014],"mapped",[121]],[[120015,120015],"mapped",[122]],[[120016,120016],"mapped",[97]],[[120017,120017],"mapped",[98]],[[120018,120018],"mapped",[99]],[[120019,120019],"mapped",[100]],[[120020,120020],"mapped",[101]],[[120021,120021],"mapped",[102]],[[120022,120022],"mapped",[103]],[[120023,120023],"mapped",[104]],[[120024,120024],"mapped",[105]],[[120025,120025],"mapped",[106]],[[120026,120026],"mapped",[107]],[[120027,120027],"mapped",[108]],[[120028,120028],"mapped",[109]],[[120029,120029],"mapped",[110]],[[120030,120030],"mapped",[111]],[[120031,120031],"mapped",[112]],[[120032,120032],"mapped",[113]],[[120033,120033],"mapped",[114]],[[120034,120034],"mapped",[115]],[[120035,120035],"mapped",[116]],[[120036,120036],"mapped",[117]],[[120037,120037],"mapped",[118]],[[120038,120038],"mapped",[119]],[[120039,120039],"mapped",[120]],[[120040,120040],"mapped",[121]],[[120041,120041],"mapped",[122]],[[120042,120042],"mapped",[97]],[[120043,120043],"mapped",[98]],[[120044,120044],"mapped",[99]],[[120045,120045],"mapped",[100]],[[120046,120046],"mapped",[101]],[[120047,120047],"mapped",[102]],[[120048,120048],"mapped",[103]],[[120049,120049],"mapped",[104]],[[120050,120050],"mapped",[105]],[[120051,120051],"mapped",[106]],[[120052,120052],"mapped",[107]],[[120053,120053],"mapped",[108]],[[120054,120054],"mapped",[109]],[[120055,120055],"mapped",[110]],[[120056,120056],"mapped",[111]],[[120057,120057],"mapped",[112]],[[120058,120058],"mapped",[113]],[[120059,120059],"mapped",[114]],[[120060,120060],"mapped",[115]],[[120061,120061],"mapped",[116]],[[120062,120062],"mapped",[117]],[[120063,120063],"mapped",[118]],[[120064,120064],"mapped",[119]],[[120065,120065],"mapped",[120]],[[120066,120066],"mapped",[121]],[[120067,120067],"mapped",[122]],[[120068,120068],"mapped",[97]],[[120069,120069],"mapped",[98]],[[120070,120070],"disallowed"],[[120071,120071],"mapped",[100]],[[120072,120072],"mapped",[101]],[[120073,120073],"mapped",[102]],[[120074,120074],"mapped",[103]],[[120075,120076],"disallowed"],[[120077,120077],"mapped",[106]],[[120078,120078],"mapped",[107]],[[120079,120079],"mapped",[108]],[[120080,120080],"mapped",[109]],[[120081,120081],"mapped",[110]],[[120082,120082],"mapped",[111]],[[120083,120083],"mapped",[112]],[[120084,120084],"mapped",[113]],[[120085,120085],"disallowed"],[[120086,120086],"mapped",[115]],[[120087,120087],"mapped",[116]],[[120088,120088],"mapped",[117]],[[120089,120089],"mapped",[118]],[[120090,120090],"mapped",[119]],[[120091,120091],"mapped",[120]],[[120092,120092],"mapped",[121]],[[120093,120093],"disallowed"],[[120094,120094],"mapped",[97]],[[120095,120095],"mapped",[98]],[[120096,120096],"mapped",[99]],[[120097,120097],"mapped",[100]],[[120098,120098],"mapped",[101]],[[120099,120099],"mapped",[102]],[[120100,120100],"mapped",[103]],[[120101,120101],"mapped",[104]],[[120102,120102],"mapped",[105]],[[120103,120103],"mapped",[106]],[[120104,120104],"mapped",[107]],[[120105,120105],"mapped",[108]],[[120106,120106],"mapped",[109]],[[120107,120107],"mapped",[110]],[[120108,120108],"mapped",[111]],[[120109,120109],"mapped",[112]],[[120110,120110],"mapped",[113]],[[120111,120111],"mapped",[114]],[[120112,120112],"mapped",[115]],[[120113,120113],"mapped",[116]],[[120114,120114],"mapped",[117]],[[120115,120115],"mapped",[118]],[[120116,120116],"mapped",[119]],[[120117,120117],"mapped",[120]],[[120118,120118],"mapped",[121]],[[120119,120119],"mapped",[122]],[[120120,120120],"mapped",[97]],[[120121,120121],"mapped",[98]],[[120122,120122],"disallowed"],[[120123,120123],"mapped",[100]],[[120124,120124],"mapped",[101]],[[120125,120125],"mapped",[102]],[[120126,120126],"mapped",[103]],[[120127,120127],"disallowed"],[[120128,120128],"mapped",[105]],[[120129,120129],"mapped",[106]],[[120130,120130],"mapped",[107]],[[120131,120131],"mapped",[108]],[[120132,120132],"mapped",[109]],[[120133,120133],"disallowed"],[[120134,120134],"mapped",[111]],[[120135,120137],"disallowed"],[[120138,120138],"mapped",[115]],[[120139,120139],"mapped",[116]],[[120140,120140],"mapped",[117]],[[120141,120141],"mapped",[118]],[[120142,120142],"mapped",[119]],[[120143,120143],"mapped",[120]],[[120144,120144],"mapped",[121]],[[120145,120145],"disallowed"],[[120146,120146],"mapped",[97]],[[120147,120147],"mapped",[98]],[[120148,120148],"mapped",[99]],[[120149,120149],"mapped",[100]],[[120150,120150],"mapped",[101]],[[120151,120151],"mapped",[102]],[[120152,120152],"mapped",[103]],[[120153,120153],"mapped",[104]],[[120154,120154],"mapped",[105]],[[120155,120155],"mapped",[106]],[[120156,120156],"mapped",[107]],[[120157,120157],"mapped",[108]],[[120158,120158],"mapped",[109]],[[120159,120159],"mapped",[110]],[[120160,120160],"mapped",[111]],[[120161,120161],"mapped",[112]],[[120162,120162],"mapped",[113]],[[120163,120163],"mapped",[114]],[[120164,120164],"mapped",[115]],[[120165,120165],"mapped",[116]],[[120166,120166],"mapped",[117]],[[120167,120167],"mapped",[118]],[[120168,120168],"mapped",[119]],[[120169,120169],"mapped",[120]],[[120170,120170],"mapped",[121]],[[120171,120171],"mapped",[122]],[[120172,120172],"mapped",[97]],[[120173,120173],"mapped",[98]],[[120174,120174],"mapped",[99]],[[120175,120175],"mapped",[100]],[[120176,120176],"mapped",[101]],[[120177,120177],"mapped",[102]],[[120178,120178],"mapped",[103]],[[120179,120179],"mapped",[104]],[[120180,120180],"mapped",[105]],[[120181,120181],"mapped",[106]],[[120182,120182],"mapped",[107]],[[120183,120183],"mapped",[108]],[[120184,120184],"mapped",[109]],[[120185,120185],"mapped",[110]],[[120186,120186],"mapped",[111]],[[120187,120187],"mapped",[112]],[[120188,120188],"mapped",[113]],[[120189,120189],"mapped",[114]],[[120190,120190],"mapped",[115]],[[120191,120191],"mapped",[116]],[[120192,120192],"mapped",[117]],[[120193,120193],"mapped",[118]],[[120194,120194],"mapped",[119]],[[120195,120195],"mapped",[120]],[[120196,120196],"mapped",[121]],[[120197,120197],"mapped",[122]],[[120198,120198],"mapped",[97]],[[120199,120199],"mapped",[98]],[[120200,120200],"mapped",[99]],[[120201,120201],"mapped",[100]],[[120202,120202],"mapped",[101]],[[120203,120203],"mapped",[102]],[[120204,120204],"mapped",[103]],[[120205,120205],"mapped",[104]],[[120206,120206],"mapped",[105]],[[120207,120207],"mapped",[106]],[[120208,120208],"mapped",[107]],[[120209,120209],"mapped",[108]],[[120210,120210],"mapped",[109]],[[120211,120211],"mapped",[110]],[[120212,120212],"mapped",[111]],[[120213,120213],"mapped",[112]],[[120214,120214],"mapped",[113]],[[120215,120215],"mapped",[114]],[[120216,120216],"mapped",[115]],[[120217,120217],"mapped",[116]],[[120218,120218],"mapped",[117]],[[120219,120219],"mapped",[118]],[[120220,120220],"mapped",[119]],[[120221,120221],"mapped",[120]],[[120222,120222],"mapped",[121]],[[120223,120223],"mapped",[122]],[[120224,120224],"mapped",[97]],[[120225,120225],"mapped",[98]],[[120226,120226],"mapped",[99]],[[120227,120227],"mapped",[100]],[[120228,120228],"mapped",[101]],[[120229,120229],"mapped",[102]],[[120230,120230],"mapped",[103]],[[120231,120231],"mapped",[104]],[[120232,120232],"mapped",[105]],[[120233,120233],"mapped",[106]],[[120234,120234],"mapped",[107]],[[120235,120235],"mapped",[108]],[[120236,120236],"mapped",[109]],[[120237,120237],"mapped",[110]],[[120238,120238],"mapped",[111]],[[120239,120239],"mapped",[112]],[[120240,120240],"mapped",[113]],[[120241,120241],"mapped",[114]],[[120242,120242],"mapped",[115]],[[120243,120243],"mapped",[116]],[[120244,120244],"mapped",[117]],[[120245,120245],"mapped",[118]],[[120246,120246],"mapped",[119]],[[120247,120247],"mapped",[120]],[[120248,120248],"mapped",[121]],[[120249,120249],"mapped",[122]],[[120250,120250],"mapped",[97]],[[120251,120251],"mapped",[98]],[[120252,120252],"mapped",[99]],[[120253,120253],"mapped",[100]],[[120254,120254],"mapped",[101]],[[120255,120255],"mapped",[102]],[[120256,120256],"mapped",[103]],[[120257,120257],"mapped",[104]],[[120258,120258],"mapped",[105]],[[120259,120259],"mapped",[106]],[[120260,120260],"mapped",[107]],[[120261,120261],"mapped",[108]],[[120262,120262],"mapped",[109]],[[120263,120263],"mapped",[110]],[[120264,120264],"mapped",[111]],[[120265,120265],"mapped",[112]],[[120266,120266],"mapped",[113]],[[120267,120267],"mapped",[114]],[[120268,120268],"mapped",[115]],[[120269,120269],"mapped",[116]],[[120270,120270],"mapped",[117]],[[120271,120271],"mapped",[118]],[[120272,120272],"mapped",[119]],[[120273,120273],"mapped",[120]],[[120274,120274],"mapped",[121]],[[120275,120275],"mapped",[122]],[[120276,120276],"mapped",[97]],[[120277,120277],"mapped",[98]],[[120278,120278],"mapped",[99]],[[120279,120279],"mapped",[100]],[[120280,120280],"mapped",[101]],[[120281,120281],"mapped",[102]],[[120282,120282],"mapped",[103]],[[120283,120283],"mapped",[104]],[[120284,120284],"mapped",[105]],[[120285,120285],"mapped",[106]],[[120286,120286],"mapped",[107]],[[120287,120287],"mapped",[108]],[[120288,120288],"mapped",[109]],[[120289,120289],"mapped",[110]],[[120290,120290],"mapped",[111]],[[120291,120291],"mapped",[112]],[[120292,120292],"mapped",[113]],[[120293,120293],"mapped",[114]],[[120294,120294],"mapped",[115]],[[120295,120295],"mapped",[116]],[[120296,120296],"mapped",[117]],[[120297,120297],"mapped",[118]],[[120298,120298],"mapped",[119]],[[120299,120299],"mapped",[120]],[[120300,120300],"mapped",[121]],[[120301,120301],"mapped",[122]],[[120302,120302],"mapped",[97]],[[120303,120303],"mapped",[98]],[[120304,120304],"mapped",[99]],[[120305,120305],"mapped",[100]],[[120306,120306],"mapped",[101]],[[120307,120307],"mapped",[102]],[[120308,120308],"mapped",[103]],[[120309,120309],"mapped",[104]],[[120310,120310],"mapped",[105]],[[120311,120311],"mapped",[106]],[[120312,120312],"mapped",[107]],[[120313,120313],"mapped",[108]],[[120314,120314],"mapped",[109]],[[120315,120315],"mapped",[110]],[[120316,120316],"mapped",[111]],[[120317,120317],"mapped",[112]],[[120318,120318],"mapped",[113]],[[120319,120319],"mapped",[114]],[[120320,120320],"mapped",[115]],[[120321,120321],"mapped",[116]],[[120322,120322],"mapped",[117]],[[120323,120323],"mapped",[118]],[[120324,120324],"mapped",[119]],[[120325,120325],"mapped",[120]],[[120326,120326],"mapped",[121]],[[120327,120327],"mapped",[122]],[[120328,120328],"mapped",[97]],[[120329,120329],"mapped",[98]],[[120330,120330],"mapped",[99]],[[120331,120331],"mapped",[100]],[[120332,120332],"mapped",[101]],[[120333,120333],"mapped",[102]],[[120334,120334],"mapped",[103]],[[120335,120335],"mapped",[104]],[[120336,120336],"mapped",[105]],[[120337,120337],"mapped",[106]],[[120338,120338],"mapped",[107]],[[120339,120339],"mapped",[108]],[[120340,120340],"mapped",[109]],[[120341,120341],"mapped",[110]],[[120342,120342],"mapped",[111]],[[120343,120343],"mapped",[112]],[[120344,120344],"mapped",[113]],[[120345,120345],"mapped",[114]],[[120346,120346],"mapped",[115]],[[120347,120347],"mapped",[116]],[[120348,120348],"mapped",[117]],[[120349,120349],"mapped",[118]],[[120350,120350],"mapped",[119]],[[120351,120351],"mapped",[120]],[[120352,120352],"mapped",[121]],[[120353,120353],"mapped",[122]],[[120354,120354],"mapped",[97]],[[120355,120355],"mapped",[98]],[[120356,120356],"mapped",[99]],[[120357,120357],"mapped",[100]],[[120358,120358],"mapped",[101]],[[120359,120359],"mapped",[102]],[[120360,120360],"mapped",[103]],[[120361,120361],"mapped",[104]],[[120362,120362],"mapped",[105]],[[120363,120363],"mapped",[106]],[[120364,120364],"mapped",[107]],[[120365,120365],"mapped",[108]],[[120366,120366],"mapped",[109]],[[120367,120367],"mapped",[110]],[[120368,120368],"mapped",[111]],[[120369,120369],"mapped",[112]],[[120370,120370],"mapped",[113]],[[120371,120371],"mapped",[114]],[[120372,120372],"mapped",[115]],[[120373,120373],"mapped",[116]],[[120374,120374],"mapped",[117]],[[120375,120375],"mapped",[118]],[[120376,120376],"mapped",[119]],[[120377,120377],"mapped",[120]],[[120378,120378],"mapped",[121]],[[120379,120379],"mapped",[122]],[[120380,120380],"mapped",[97]],[[120381,120381],"mapped",[98]],[[120382,120382],"mapped",[99]],[[120383,120383],"mapped",[100]],[[120384,120384],"mapped",[101]],[[120385,120385],"mapped",[102]],[[120386,120386],"mapped",[103]],[[120387,120387],"mapped",[104]],[[120388,120388],"mapped",[105]],[[120389,120389],"mapped",[106]],[[120390,120390],"mapped",[107]],[[120391,120391],"mapped",[108]],[[120392,120392],"mapped",[109]],[[120393,120393],"mapped",[110]],[[120394,120394],"mapped",[111]],[[120395,120395],"mapped",[112]],[[120396,120396],"mapped",[113]],[[120397,120397],"mapped",[114]],[[120398,120398],"mapped",[115]],[[120399,120399],"mapped",[116]],[[120400,120400],"mapped",[117]],[[120401,120401],"mapped",[118]],[[120402,120402],"mapped",[119]],[[120403,120403],"mapped",[120]],[[120404,120404],"mapped",[121]],[[120405,120405],"mapped",[122]],[[120406,120406],"mapped",[97]],[[120407,120407],"mapped",[98]],[[120408,120408],"mapped",[99]],[[120409,120409],"mapped",[100]],[[120410,120410],"mapped",[101]],[[120411,120411],"mapped",[102]],[[120412,120412],"mapped",[103]],[[120413,120413],"mapped",[104]],[[120414,120414],"mapped",[105]],[[120415,120415],"mapped",[106]],[[120416,120416],"mapped",[107]],[[120417,120417],"mapped",[108]],[[120418,120418],"mapped",[109]],[[120419,120419],"mapped",[110]],[[120420,120420],"mapped",[111]],[[120421,120421],"mapped",[112]],[[120422,120422],"mapped",[113]],[[120423,120423],"mapped",[114]],[[120424,120424],"mapped",[115]],[[120425,120425],"mapped",[116]],[[120426,120426],"mapped",[117]],[[120427,120427],"mapped",[118]],[[120428,120428],"mapped",[119]],[[120429,120429],"mapped",[120]],[[120430,120430],"mapped",[121]],[[120431,120431],"mapped",[122]],[[120432,120432],"mapped",[97]],[[120433,120433],"mapped",[98]],[[120434,120434],"mapped",[99]],[[120435,120435],"mapped",[100]],[[120436,120436],"mapped",[101]],[[120437,120437],"mapped",[102]],[[120438,120438],"mapped",[103]],[[120439,120439],"mapped",[104]],[[120440,120440],"mapped",[105]],[[120441,120441],"mapped",[106]],[[120442,120442],"mapped",[107]],[[120443,120443],"mapped",[108]],[[120444,120444],"mapped",[109]],[[120445,120445],"mapped",[110]],[[120446,120446],"mapped",[111]],[[120447,120447],"mapped",[112]],[[120448,120448],"mapped",[113]],[[120449,120449],"mapped",[114]],[[120450,120450],"mapped",[115]],[[120451,120451],"mapped",[116]],[[120452,120452],"mapped",[117]],[[120453,120453],"mapped",[118]],[[120454,120454],"mapped",[119]],[[120455,120455],"mapped",[120]],[[120456,120456],"mapped",[121]],[[120457,120457],"mapped",[122]],[[120458,120458],"mapped",[97]],[[120459,120459],"mapped",[98]],[[120460,120460],"mapped",[99]],[[120461,120461],"mapped",[100]],[[120462,120462],"mapped",[101]],[[120463,120463],"mapped",[102]],[[120464,120464],"mapped",[103]],[[120465,120465],"mapped",[104]],[[120466,120466],"mapped",[105]],[[120467,120467],"mapped",[106]],[[120468,120468],"mapped",[107]],[[120469,120469],"mapped",[108]],[[120470,120470],"mapped",[109]],[[120471,120471],"mapped",[110]],[[120472,120472],"mapped",[111]],[[120473,120473],"mapped",[112]],[[120474,120474],"mapped",[113]],[[120475,120475],"mapped",[114]],[[120476,120476],"mapped",[115]],[[120477,120477],"mapped",[116]],[[120478,120478],"mapped",[117]],[[120479,120479],"mapped",[118]],[[120480,120480],"mapped",[119]],[[120481,120481],"mapped",[120]],[[120482,120482],"mapped",[121]],[[120483,120483],"mapped",[122]],[[120484,120484],"mapped",[305]],[[120485,120485],"mapped",[567]],[[120486,120487],"disallowed"],[[120488,120488],"mapped",[945]],[[120489,120489],"mapped",[946]],[[120490,120490],"mapped",[947]],[[120491,120491],"mapped",[948]],[[120492,120492],"mapped",[949]],[[120493,120493],"mapped",[950]],[[120494,120494],"mapped",[951]],[[120495,120495],"mapped",[952]],[[120496,120496],"mapped",[953]],[[120497,120497],"mapped",[954]],[[120498,120498],"mapped",[955]],[[120499,120499],"mapped",[956]],[[120500,120500],"mapped",[957]],[[120501,120501],"mapped",[958]],[[120502,120502],"mapped",[959]],[[120503,120503],"mapped",[960]],[[120504,120504],"mapped",[961]],[[120505,120505],"mapped",[952]],[[120506,120506],"mapped",[963]],[[120507,120507],"mapped",[964]],[[120508,120508],"mapped",[965]],[[120509,120509],"mapped",[966]],[[120510,120510],"mapped",[967]],[[120511,120511],"mapped",[968]],[[120512,120512],"mapped",[969]],[[120513,120513],"mapped",[8711]],[[120514,120514],"mapped",[945]],[[120515,120515],"mapped",[946]],[[120516,120516],"mapped",[947]],[[120517,120517],"mapped",[948]],[[120518,120518],"mapped",[949]],[[120519,120519],"mapped",[950]],[[120520,120520],"mapped",[951]],[[120521,120521],"mapped",[952]],[[120522,120522],"mapped",[953]],[[120523,120523],"mapped",[954]],[[120524,120524],"mapped",[955]],[[120525,120525],"mapped",[956]],[[120526,120526],"mapped",[957]],[[120527,120527],"mapped",[958]],[[120528,120528],"mapped",[959]],[[120529,120529],"mapped",[960]],[[120530,120530],"mapped",[961]],[[120531,120532],"mapped",[963]],[[120533,120533],"mapped",[964]],[[120534,120534],"mapped",[965]],[[120535,120535],"mapped",[966]],[[120536,120536],"mapped",[967]],[[120537,120537],"mapped",[968]],[[120538,120538],"mapped",[969]],[[120539,120539],"mapped",[8706]],[[120540,120540],"mapped",[949]],[[120541,120541],"mapped",[952]],[[120542,120542],"mapped",[954]],[[120543,120543],"mapped",[966]],[[120544,120544],"mapped",[961]],[[120545,120545],"mapped",[960]],[[120546,120546],"mapped",[945]],[[120547,120547],"mapped",[946]],[[120548,120548],"mapped",[947]],[[120549,120549],"mapped",[948]],[[120550,120550],"mapped",[949]],[[120551,120551],"mapped",[950]],[[120552,120552],"mapped",[951]],[[120553,120553],"mapped",[952]],[[120554,120554],"mapped",[953]],[[120555,120555],"mapped",[954]],[[120556,120556],"mapped",[955]],[[120557,120557],"mapped",[956]],[[120558,120558],"mapped",[957]],[[120559,120559],"mapped",[958]],[[120560,120560],"mapped",[959]],[[120561,120561],"mapped",[960]],[[120562,120562],"mapped",[961]],[[120563,120563],"mapped",[952]],[[120564,120564],"mapped",[963]],[[120565,120565],"mapped",[964]],[[120566,120566],"mapped",[965]],[[120567,120567],"mapped",[966]],[[120568,120568],"mapped",[967]],[[120569,120569],"mapped",[968]],[[120570,120570],"mapped",[969]],[[120571,120571],"mapped",[8711]],[[120572,120572],"mapped",[945]],[[120573,120573],"mapped",[946]],[[120574,120574],"mapped",[947]],[[120575,120575],"mapped",[948]],[[120576,120576],"mapped",[949]],[[120577,120577],"mapped",[950]],[[120578,120578],"mapped",[951]],[[120579,120579],"mapped",[952]],[[120580,120580],"mapped",[953]],[[120581,120581],"mapped",[954]],[[120582,120582],"mapped",[955]],[[120583,120583],"mapped",[956]],[[120584,120584],"mapped",[957]],[[120585,120585],"mapped",[958]],[[120586,120586],"mapped",[959]],[[120587,120587],"mapped",[960]],[[120588,120588],"mapped",[961]],[[120589,120590],"mapped",[963]],[[120591,120591],"mapped",[964]],[[120592,120592],"mapped",[965]],[[120593,120593],"mapped",[966]],[[120594,120594],"mapped",[967]],[[120595,120595],"mapped",[968]],[[120596,120596],"mapped",[969]],[[120597,120597],"mapped",[8706]],[[120598,120598],"mapped",[949]],[[120599,120599],"mapped",[952]],[[120600,120600],"mapped",[954]],[[120601,120601],"mapped",[966]],[[120602,120602],"mapped",[961]],[[120603,120603],"mapped",[960]],[[120604,120604],"mapped",[945]],[[120605,120605],"mapped",[946]],[[120606,120606],"mapped",[947]],[[120607,120607],"mapped",[948]],[[120608,120608],"mapped",[949]],[[120609,120609],"mapped",[950]],[[120610,120610],"mapped",[951]],[[120611,120611],"mapped",[952]],[[120612,120612],"mapped",[953]],[[120613,120613],"mapped",[954]],[[120614,120614],"mapped",[955]],[[120615,120615],"mapped",[956]],[[120616,120616],"mapped",[957]],[[120617,120617],"mapped",[958]],[[120618,120618],"mapped",[959]],[[120619,120619],"mapped",[960]],[[120620,120620],"mapped",[961]],[[120621,120621],"mapped",[952]],[[120622,120622],"mapped",[963]],[[120623,120623],"mapped",[964]],[[120624,120624],"mapped",[965]],[[120625,120625],"mapped",[966]],[[120626,120626],"mapped",[967]],[[120627,120627],"mapped",[968]],[[120628,120628],"mapped",[969]],[[120629,120629],"mapped",[8711]],[[120630,120630],"mapped",[945]],[[120631,120631],"mapped",[946]],[[120632,120632],"mapped",[947]],[[120633,120633],"mapped",[948]],[[120634,120634],"mapped",[949]],[[120635,120635],"mapped",[950]],[[120636,120636],"mapped",[951]],[[120637,120637],"mapped",[952]],[[120638,120638],"mapped",[953]],[[120639,120639],"mapped",[954]],[[120640,120640],"mapped",[955]],[[120641,120641],"mapped",[956]],[[120642,120642],"mapped",[957]],[[120643,120643],"mapped",[958]],[[120644,120644],"mapped",[959]],[[120645,120645],"mapped",[960]],[[120646,120646],"mapped",[961]],[[120647,120648],"mapped",[963]],[[120649,120649],"mapped",[964]],[[120650,120650],"mapped",[965]],[[120651,120651],"mapped",[966]],[[120652,120652],"mapped",[967]],[[120653,120653],"mapped",[968]],[[120654,120654],"mapped",[969]],[[120655,120655],"mapped",[8706]],[[120656,120656],"mapped",[949]],[[120657,120657],"mapped",[952]],[[120658,120658],"mapped",[954]],[[120659,120659],"mapped",[966]],[[120660,120660],"mapped",[961]],[[120661,120661],"mapped",[960]],[[120662,120662],"mapped",[945]],[[120663,120663],"mapped",[946]],[[120664,120664],"mapped",[947]],[[120665,120665],"mapped",[948]],[[120666,120666],"mapped",[949]],[[120667,120667],"mapped",[950]],[[120668,120668],"mapped",[951]],[[120669,120669],"mapped",[952]],[[120670,120670],"mapped",[953]],[[120671,120671],"mapped",[954]],[[120672,120672],"mapped",[955]],[[120673,120673],"mapped",[956]],[[120674,120674],"mapped",[957]],[[120675,120675],"mapped",[958]],[[120676,120676],"mapped",[959]],[[120677,120677],"mapped",[960]],[[120678,120678],"mapped",[961]],[[120679,120679],"mapped",[952]],[[120680,120680],"mapped",[963]],[[120681,120681],"mapped",[964]],[[120682,120682],"mapped",[965]],[[120683,120683],"mapped",[966]],[[120684,120684],"mapped",[967]],[[120685,120685],"mapped",[968]],[[120686,120686],"mapped",[969]],[[120687,120687],"mapped",[8711]],[[120688,120688],"mapped",[945]],[[120689,120689],"mapped",[946]],[[120690,120690],"mapped",[947]],[[120691,120691],"mapped",[948]],[[120692,120692],"mapped",[949]],[[120693,120693],"mapped",[950]],[[120694,120694],"mapped",[951]],[[120695,120695],"mapped",[952]],[[120696,120696],"mapped",[953]],[[120697,120697],"mapped",[954]],[[120698,120698],"mapped",[955]],[[120699,120699],"mapped",[956]],[[120700,120700],"mapped",[957]],[[120701,120701],"mapped",[958]],[[120702,120702],"mapped",[959]],[[120703,120703],"mapped",[960]],[[120704,120704],"mapped",[961]],[[120705,120706],"mapped",[963]],[[120707,120707],"mapped",[964]],[[120708,120708],"mapped",[965]],[[120709,120709],"mapped",[966]],[[120710,120710],"mapped",[967]],[[120711,120711],"mapped",[968]],[[120712,120712],"mapped",[969]],[[120713,120713],"mapped",[8706]],[[120714,120714],"mapped",[949]],[[120715,120715],"mapped",[952]],[[120716,120716],"mapped",[954]],[[120717,120717],"mapped",[966]],[[120718,120718],"mapped",[961]],[[120719,120719],"mapped",[960]],[[120720,120720],"mapped",[945]],[[120721,120721],"mapped",[946]],[[120722,120722],"mapped",[947]],[[120723,120723],"mapped",[948]],[[120724,120724],"mapped",[949]],[[120725,120725],"mapped",[950]],[[120726,120726],"mapped",[951]],[[120727,120727],"mapped",[952]],[[120728,120728],"mapped",[953]],[[120729,120729],"mapped",[954]],[[120730,120730],"mapped",[955]],[[120731,120731],"mapped",[956]],[[120732,120732],"mapped",[957]],[[120733,120733],"mapped",[958]],[[120734,120734],"mapped",[959]],[[120735,120735],"mapped",[960]],[[120736,120736],"mapped",[961]],[[120737,120737],"mapped",[952]],[[120738,120738],"mapped",[963]],[[120739,120739],"mapped",[964]],[[120740,120740],"mapped",[965]],[[120741,120741],"mapped",[966]],[[120742,120742],"mapped",[967]],[[120743,120743],"mapped",[968]],[[120744,120744],"mapped",[969]],[[120745,120745],"mapped",[8711]],[[120746,120746],"mapped",[945]],[[120747,120747],"mapped",[946]],[[120748,120748],"mapped",[947]],[[120749,120749],"mapped",[948]],[[120750,120750],"mapped",[949]],[[120751,120751],"mapped",[950]],[[120752,120752],"mapped",[951]],[[120753,120753],"mapped",[952]],[[120754,120754],"mapped",[953]],[[120755,120755],"mapped",[954]],[[120756,120756],"mapped",[955]],[[120757,120757],"mapped",[956]],[[120758,120758],"mapped",[957]],[[120759,120759],"mapped",[958]],[[120760,120760],"mapped",[959]],[[120761,120761],"mapped",[960]],[[120762,120762],"mapped",[961]],[[120763,120764],"mapped",[963]],[[120765,120765],"mapped",[964]],[[120766,120766],"mapped",[965]],[[120767,120767],"mapped",[966]],[[120768,120768],"mapped",[967]],[[120769,120769],"mapped",[968]],[[120770,120770],"mapped",[969]],[[120771,120771],"mapped",[8706]],[[120772,120772],"mapped",[949]],[[120773,120773],"mapped",[952]],[[120774,120774],"mapped",[954]],[[120775,120775],"mapped",[966]],[[120776,120776],"mapped",[961]],[[120777,120777],"mapped",[960]],[[120778,120779],"mapped",[989]],[[120780,120781],"disallowed"],[[120782,120782],"mapped",[48]],[[120783,120783],"mapped",[49]],[[120784,120784],"mapped",[50]],[[120785,120785],"mapped",[51]],[[120786,120786],"mapped",[52]],[[120787,120787],"mapped",[53]],[[120788,120788],"mapped",[54]],[[120789,120789],"mapped",[55]],[[120790,120790],"mapped",[56]],[[120791,120791],"mapped",[57]],[[120792,120792],"mapped",[48]],[[120793,120793],"mapped",[49]],[[120794,120794],"mapped",[50]],[[120795,120795],"mapped",[51]],[[120796,120796],"mapped",[52]],[[120797,120797],"mapped",[53]],[[120798,120798],"mapped",[54]],[[120799,120799],"mapped",[55]],[[120800,120800],"mapped",[56]],[[120801,120801],"mapped",[57]],[[120802,120802],"mapped",[48]],[[120803,120803],"mapped",[49]],[[120804,120804],"mapped",[50]],[[120805,120805],"mapped",[51]],[[120806,120806],"mapped",[52]],[[120807,120807],"mapped",[53]],[[120808,120808],"mapped",[54]],[[120809,120809],"mapped",[55]],[[120810,120810],"mapped",[56]],[[120811,120811],"mapped",[57]],[[120812,120812],"mapped",[48]],[[120813,120813],"mapped",[49]],[[120814,120814],"mapped",[50]],[[120815,120815],"mapped",[51]],[[120816,120816],"mapped",[52]],[[120817,120817],"mapped",[53]],[[120818,120818],"mapped",[54]],[[120819,120819],"mapped",[55]],[[120820,120820],"mapped",[56]],[[120821,120821],"mapped",[57]],[[120822,120822],"mapped",[48]],[[120823,120823],"mapped",[49]],[[120824,120824],"mapped",[50]],[[120825,120825],"mapped",[51]],[[120826,120826],"mapped",[52]],[[120827,120827],"mapped",[53]],[[120828,120828],"mapped",[54]],[[120829,120829],"mapped",[55]],[[120830,120830],"mapped",[56]],[[120831,120831],"mapped",[57]],[[120832,121343],"valid",[],"NV8"],[[121344,121398],"valid"],[[121399,121402],"valid",[],"NV8"],[[121403,121452],"valid"],[[121453,121460],"valid",[],"NV8"],[[121461,121461],"valid"],[[121462,121475],"valid",[],"NV8"],[[121476,121476],"valid"],[[121477,121483],"valid",[],"NV8"],[[121484,121498],"disallowed"],[[121499,121503],"valid"],[[121504,121504],"disallowed"],[[121505,121519],"valid"],[[121520,124927],"disallowed"],[[124928,125124],"valid"],[[125125,125126],"disallowed"],[[125127,125135],"valid",[],"NV8"],[[125136,125142],"valid"],[[125143,126463],"disallowed"],[[126464,126464],"mapped",[1575]],[[126465,126465],"mapped",[1576]],[[126466,126466],"mapped",[1580]],[[126467,126467],"mapped",[1583]],[[126468,126468],"disallowed"],[[126469,126469],"mapped",[1608]],[[126470,126470],"mapped",[1586]],[[126471,126471],"mapped",[1581]],[[126472,126472],"mapped",[1591]],[[126473,126473],"mapped",[1610]],[[126474,126474],"mapped",[1603]],[[126475,126475],"mapped",[1604]],[[126476,126476],"mapped",[1605]],[[126477,126477],"mapped",[1606]],[[126478,126478],"mapped",[1587]],[[126479,126479],"mapped",[1593]],[[126480,126480],"mapped",[1601]],[[126481,126481],"mapped",[1589]],[[126482,126482],"mapped",[1602]],[[126483,126483],"mapped",[1585]],[[126484,126484],"mapped",[1588]],[[126485,126485],"mapped",[1578]],[[126486,126486],"mapped",[1579]],[[126487,126487],"mapped",[1582]],[[126488,126488],"mapped",[1584]],[[126489,126489],"mapped",[1590]],[[126490,126490],"mapped",[1592]],[[126491,126491],"mapped",[1594]],[[126492,126492],"mapped",[1646]],[[126493,126493],"mapped",[1722]],[[126494,126494],"mapped",[1697]],[[126495,126495],"mapped",[1647]],[[126496,126496],"disallowed"],[[126497,126497],"mapped",[1576]],[[126498,126498],"mapped",[1580]],[[126499,126499],"disallowed"],[[126500,126500],"mapped",[1607]],[[126501,126502],"disallowed"],[[126503,126503],"mapped",[1581]],[[126504,126504],"disallowed"],[[126505,126505],"mapped",[1610]],[[126506,126506],"mapped",[1603]],[[126507,126507],"mapped",[1604]],[[126508,126508],"mapped",[1605]],[[126509,126509],"mapped",[1606]],[[126510,126510],"mapped",[1587]],[[126511,126511],"mapped",[1593]],[[126512,126512],"mapped",[1601]],[[126513,126513],"mapped",[1589]],[[126514,126514],"mapped",[1602]],[[126515,126515],"disallowed"],[[126516,126516],"mapped",[1588]],[[126517,126517],"mapped",[1578]],[[126518,126518],"mapped",[1579]],[[126519,126519],"mapped",[1582]],[[126520,126520],"disallowed"],[[126521,126521],"mapped",[1590]],[[126522,126522],"disallowed"],[[126523,126523],"mapped",[1594]],[[126524,126529],"disallowed"],[[126530,126530],"mapped",[1580]],[[126531,126534],"disallowed"],[[126535,126535],"mapped",[1581]],[[126536,126536],"disallowed"],[[126537,126537],"mapped",[1610]],[[126538,126538],"disallowed"],[[126539,126539],"mapped",[1604]],[[126540,126540],"disallowed"],[[126541,126541],"mapped",[1606]],[[126542,126542],"mapped",[1587]],[[126543,126543],"mapped",[1593]],[[126544,126544],"disallowed"],[[126545,126545],"mapped",[1589]],[[126546,126546],"mapped",[1602]],[[126547,126547],"disallowed"],[[126548,126548],"mapped",[1588]],[[126549,126550],"disallowed"],[[126551,126551],"mapped",[1582]],[[126552,126552],"disallowed"],[[126553,126553],"mapped",[1590]],[[126554,126554],"disallowed"],[[126555,126555],"mapped",[1594]],[[126556,126556],"disallowed"],[[126557,126557],"mapped",[1722]],[[126558,126558],"disallowed"],[[126559,126559],"mapped",[1647]],[[126560,126560],"disallowed"],[[126561,126561],"mapped",[1576]],[[126562,126562],"mapped",[1580]],[[126563,126563],"disallowed"],[[126564,126564],"mapped",[1607]],[[126565,126566],"disallowed"],[[126567,126567],"mapped",[1581]],[[126568,126568],"mapped",[1591]],[[126569,126569],"mapped",[1610]],[[126570,126570],"mapped",[1603]],[[126571,126571],"disallowed"],[[126572,126572],"mapped",[1605]],[[126573,126573],"mapped",[1606]],[[126574,126574],"mapped",[1587]],[[126575,126575],"mapped",[1593]],[[126576,126576],"mapped",[1601]],[[126577,126577],"mapped",[1589]],[[126578,126578],"mapped",[1602]],[[126579,126579],"disallowed"],[[126580,126580],"mapped",[1588]],[[126581,126581],"mapped",[1578]],[[126582,126582],"mapped",[1579]],[[126583,126583],"mapped",[1582]],[[126584,126584],"disallowed"],[[126585,126585],"mapped",[1590]],[[126586,126586],"mapped",[1592]],[[126587,126587],"mapped",[1594]],[[126588,126588],"mapped",[1646]],[[126589,126589],"disallowed"],[[126590,126590],"mapped",[1697]],[[126591,126591],"disallowed"],[[126592,126592],"mapped",[1575]],[[126593,126593],"mapped",[1576]],[[126594,126594],"mapped",[1580]],[[126595,126595],"mapped",[1583]],[[126596,126596],"mapped",[1607]],[[126597,126597],"mapped",[1608]],[[126598,126598],"mapped",[1586]],[[126599,126599],"mapped",[1581]],[[126600,126600],"mapped",[1591]],[[126601,126601],"mapped",[1610]],[[126602,126602],"disallowed"],[[126603,126603],"mapped",[1604]],[[126604,126604],"mapped",[1605]],[[126605,126605],"mapped",[1606]],[[126606,126606],"mapped",[1587]],[[126607,126607],"mapped",[1593]],[[126608,126608],"mapped",[1601]],[[126609,126609],"mapped",[1589]],[[126610,126610],"mapped",[1602]],[[126611,126611],"mapped",[1585]],[[126612,126612],"mapped",[1588]],[[126613,126613],"mapped",[1578]],[[126614,126614],"mapped",[1579]],[[126615,126615],"mapped",[1582]],[[126616,126616],"mapped",[1584]],[[126617,126617],"mapped",[1590]],[[126618,126618],"mapped",[1592]],[[126619,126619],"mapped",[1594]],[[126620,126624],"disallowed"],[[126625,126625],"mapped",[1576]],[[126626,126626],"mapped",[1580]],[[126627,126627],"mapped",[1583]],[[126628,126628],"disallowed"],[[126629,126629],"mapped",[1608]],[[126630,126630],"mapped",[1586]],[[126631,126631],"mapped",[1581]],[[126632,126632],"mapped",[1591]],[[126633,126633],"mapped",[1610]],[[126634,126634],"disallowed"],[[126635,126635],"mapped",[1604]],[[126636,126636],"mapped",[1605]],[[126637,126637],"mapped",[1606]],[[126638,126638],"mapped",[1587]],[[126639,126639],"mapped",[1593]],[[126640,126640],"mapped",[1601]],[[126641,126641],"mapped",[1589]],[[126642,126642],"mapped",[1602]],[[126643,126643],"mapped",[1585]],[[126644,126644],"mapped",[1588]],[[126645,126645],"mapped",[1578]],[[126646,126646],"mapped",[1579]],[[126647,126647],"mapped",[1582]],[[126648,126648],"mapped",[1584]],[[126649,126649],"mapped",[1590]],[[126650,126650],"mapped",[1592]],[[126651,126651],"mapped",[1594]],[[126652,126703],"disallowed"],[[126704,126705],"valid",[],"NV8"],[[126706,126975],"disallowed"],[[126976,127019],"valid",[],"NV8"],[[127020,127023],"disallowed"],[[127024,127123],"valid",[],"NV8"],[[127124,127135],"disallowed"],[[127136,127150],"valid",[],"NV8"],[[127151,127152],"disallowed"],[[127153,127166],"valid",[],"NV8"],[[127167,127167],"valid",[],"NV8"],[[127168,127168],"disallowed"],[[127169,127183],"valid",[],"NV8"],[[127184,127184],"disallowed"],[[127185,127199],"valid",[],"NV8"],[[127200,127221],"valid",[],"NV8"],[[127222,127231],"disallowed"],[[127232,127232],"disallowed"],[[127233,127233],"disallowed_STD3_mapped",[48,44]],[[127234,127234],"disallowed_STD3_mapped",[49,44]],[[127235,127235],"disallowed_STD3_mapped",[50,44]],[[127236,127236],"disallowed_STD3_mapped",[51,44]],[[127237,127237],"disallowed_STD3_mapped",[52,44]],[[127238,127238],"disallowed_STD3_mapped",[53,44]],[[127239,127239],"disallowed_STD3_mapped",[54,44]],[[127240,127240],"disallowed_STD3_mapped",[55,44]],[[127241,127241],"disallowed_STD3_mapped",[56,44]],[[127242,127242],"disallowed_STD3_mapped",[57,44]],[[127243,127244],"valid",[],"NV8"],[[127245,127247],"disallowed"],[[127248,127248],"disallowed_STD3_mapped",[40,97,41]],[[127249,127249],"disallowed_STD3_mapped",[40,98,41]],[[127250,127250],"disallowed_STD3_mapped",[40,99,41]],[[127251,127251],"disallowed_STD3_mapped",[40,100,41]],[[127252,127252],"disallowed_STD3_mapped",[40,101,41]],[[127253,127253],"disallowed_STD3_mapped",[40,102,41]],[[127254,127254],"disallowed_STD3_mapped",[40,103,41]],[[127255,127255],"disallowed_STD3_mapped",[40,104,41]],[[127256,127256],"disallowed_STD3_mapped",[40,105,41]],[[127257,127257],"disallowed_STD3_mapped",[40,106,41]],[[127258,127258],"disallowed_STD3_mapped",[40,107,41]],[[127259,127259],"disallowed_STD3_mapped",[40,108,41]],[[127260,127260],"disallowed_STD3_mapped",[40,109,41]],[[127261,127261],"disallowed_STD3_mapped",[40,110,41]],[[127262,127262],"disallowed_STD3_mapped",[40,111,41]],[[127263,127263],"disallowed_STD3_mapped",[40,112,41]],[[127264,127264],"disallowed_STD3_mapped",[40,113,41]],[[127265,127265],"disallowed_STD3_mapped",[40,114,41]],[[127266,127266],"disallowed_STD3_mapped",[40,115,41]],[[127267,127267],"disallowed_STD3_mapped",[40,116,41]],[[127268,127268],"disallowed_STD3_mapped",[40,117,41]],[[127269,127269],"disallowed_STD3_mapped",[40,118,41]],[[127270,127270],"disallowed_STD3_mapped",[40,119,41]],[[127271,127271],"disallowed_STD3_mapped",[40,120,41]],[[127272,127272],"disallowed_STD3_mapped",[40,121,41]],[[127273,127273],"disallowed_STD3_mapped",[40,122,41]],[[127274,127274],"mapped",[12308,115,12309]],[[127275,127275],"mapped",[99]],[[127276,127276],"mapped",[114]],[[127277,127277],"mapped",[99,100]],[[127278,127278],"mapped",[119,122]],[[127279,127279],"disallowed"],[[127280,127280],"mapped",[97]],[[127281,127281],"mapped",[98]],[[127282,127282],"mapped",[99]],[[127283,127283],"mapped",[100]],[[127284,127284],"mapped",[101]],[[127285,127285],"mapped",[102]],[[127286,127286],"mapped",[103]],[[127287,127287],"mapped",[104]],[[127288,127288],"mapped",[105]],[[127289,127289],"mapped",[106]],[[127290,127290],"mapped",[107]],[[127291,127291],"mapped",[108]],[[127292,127292],"mapped",[109]],[[127293,127293],"mapped",[110]],[[127294,127294],"mapped",[111]],[[127295,127295],"mapped",[112]],[[127296,127296],"mapped",[113]],[[127297,127297],"mapped",[114]],[[127298,127298],"mapped",[115]],[[127299,127299],"mapped",[116]],[[127300,127300],"mapped",[117]],[[127301,127301],"mapped",[118]],[[127302,127302],"mapped",[119]],[[127303,127303],"mapped",[120]],[[127304,127304],"mapped",[121]],[[127305,127305],"mapped",[122]],[[127306,127306],"mapped",[104,118]],[[127307,127307],"mapped",[109,118]],[[127308,127308],"mapped",[115,100]],[[127309,127309],"mapped",[115,115]],[[127310,127310],"mapped",[112,112,118]],[[127311,127311],"mapped",[119,99]],[[127312,127318],"valid",[],"NV8"],[[127319,127319],"valid",[],"NV8"],[[127320,127326],"valid",[],"NV8"],[[127327,127327],"valid",[],"NV8"],[[127328,127337],"valid",[],"NV8"],[[127338,127338],"mapped",[109,99]],[[127339,127339],"mapped",[109,100]],[[127340,127343],"disallowed"],[[127344,127352],"valid",[],"NV8"],[[127353,127353],"valid",[],"NV8"],[[127354,127354],"valid",[],"NV8"],[[127355,127356],"valid",[],"NV8"],[[127357,127358],"valid",[],"NV8"],[[127359,127359],"valid",[],"NV8"],[[127360,127369],"valid",[],"NV8"],[[127370,127373],"valid",[],"NV8"],[[127374,127375],"valid",[],"NV8"],[[127376,127376],"mapped",[100,106]],[[127377,127386],"valid",[],"NV8"],[[127387,127461],"disallowed"],[[127462,127487],"valid",[],"NV8"],[[127488,127488],"mapped",[12411,12363]],[[127489,127489],"mapped",[12467,12467]],[[127490,127490],"mapped",[12469]],[[127491,127503],"disallowed"],[[127504,127504],"mapped",[25163]],[[127505,127505],"mapped",[23383]],[[127506,127506],"mapped",[21452]],[[127507,127507],"mapped",[12487]],[[127508,127508],"mapped",[20108]],[[127509,127509],"mapped",[22810]],[[127510,127510],"mapped",[35299]],[[127511,127511],"mapped",[22825]],[[127512,127512],"mapped",[20132]],[[127513,127513],"mapped",[26144]],[[127514,127514],"mapped",[28961]],[[127515,127515],"mapped",[26009]],[[127516,127516],"mapped",[21069]],[[127517,127517],"mapped",[24460]],[[127518,127518],"mapped",[20877]],[[127519,127519],"mapped",[26032]],[[127520,127520],"mapped",[21021]],[[127521,127521],"mapped",[32066]],[[127522,127522],"mapped",[29983]],[[127523,127523],"mapped",[36009]],[[127524,127524],"mapped",[22768]],[[127525,127525],"mapped",[21561]],[[127526,127526],"mapped",[28436]],[[127527,127527],"mapped",[25237]],[[127528,127528],"mapped",[25429]],[[127529,127529],"mapped",[19968]],[[127530,127530],"mapped",[19977]],[[127531,127531],"mapped",[36938]],[[127532,127532],"mapped",[24038]],[[127533,127533],"mapped",[20013]],[[127534,127534],"mapped",[21491]],[[127535,127535],"mapped",[25351]],[[127536,127536],"mapped",[36208]],[[127537,127537],"mapped",[25171]],[[127538,127538],"mapped",[31105]],[[127539,127539],"mapped",[31354]],[[127540,127540],"mapped",[21512]],[[127541,127541],"mapped",[28288]],[[127542,127542],"mapped",[26377]],[[127543,127543],"mapped",[26376]],[[127544,127544],"mapped",[30003]],[[127545,127545],"mapped",[21106]],[[127546,127546],"mapped",[21942]],[[127547,127551],"disallowed"],[[127552,127552],"mapped",[12308,26412,12309]],[[127553,127553],"mapped",[12308,19977,12309]],[[127554,127554],"mapped",[12308,20108,12309]],[[127555,127555],"mapped",[12308,23433,12309]],[[127556,127556],"mapped",[12308,28857,12309]],[[127557,127557],"mapped",[12308,25171,12309]],[[127558,127558],"mapped",[12308,30423,12309]],[[127559,127559],"mapped",[12308,21213,12309]],[[127560,127560],"mapped",[12308,25943,12309]],[[127561,127567],"disallowed"],[[127568,127568],"mapped",[24471]],[[127569,127569],"mapped",[21487]],[[127570,127743],"disallowed"],[[127744,127776],"valid",[],"NV8"],[[127777,127788],"valid",[],"NV8"],[[127789,127791],"valid",[],"NV8"],[[127792,127797],"valid",[],"NV8"],[[127798,127798],"valid",[],"NV8"],[[127799,127868],"valid",[],"NV8"],[[127869,127869],"valid",[],"NV8"],[[127870,127871],"valid",[],"NV8"],[[127872,127891],"valid",[],"NV8"],[[127892,127903],"valid",[],"NV8"],[[127904,127940],"valid",[],"NV8"],[[127941,127941],"valid",[],"NV8"],[[127942,127946],"valid",[],"NV8"],[[127947,127950],"valid",[],"NV8"],[[127951,127955],"valid",[],"NV8"],[[127956,127967],"valid",[],"NV8"],[[127968,127984],"valid",[],"NV8"],[[127985,127991],"valid",[],"NV8"],[[127992,127999],"valid",[],"NV8"],[[128000,128062],"valid",[],"NV8"],[[128063,128063],"valid",[],"NV8"],[[128064,128064],"valid",[],"NV8"],[[128065,128065],"valid",[],"NV8"],[[128066,128247],"valid",[],"NV8"],[[128248,128248],"valid",[],"NV8"],[[128249,128252],"valid",[],"NV8"],[[128253,128254],"valid",[],"NV8"],[[128255,128255],"valid",[],"NV8"],[[128256,128317],"valid",[],"NV8"],[[128318,128319],"valid",[],"NV8"],[[128320,128323],"valid",[],"NV8"],[[128324,128330],"valid",[],"NV8"],[[128331,128335],"valid",[],"NV8"],[[128336,128359],"valid",[],"NV8"],[[128360,128377],"valid",[],"NV8"],[[128378,128378],"disallowed"],[[128379,128419],"valid",[],"NV8"],[[128420,128420],"disallowed"],[[128421,128506],"valid",[],"NV8"],[[128507,128511],"valid",[],"NV8"],[[128512,128512],"valid",[],"NV8"],[[128513,128528],"valid",[],"NV8"],[[128529,128529],"valid",[],"NV8"],[[128530,128532],"valid",[],"NV8"],[[128533,128533],"valid",[],"NV8"],[[128534,128534],"valid",[],"NV8"],[[128535,128535],"valid",[],"NV8"],[[128536,128536],"valid",[],"NV8"],[[128537,128537],"valid",[],"NV8"],[[128538,128538],"valid",[],"NV8"],[[128539,128539],"valid",[],"NV8"],[[128540,128542],"valid",[],"NV8"],[[128543,128543],"valid",[],"NV8"],[[128544,128549],"valid",[],"NV8"],[[128550,128551],"valid",[],"NV8"],[[128552,128555],"valid",[],"NV8"],[[128556,128556],"valid",[],"NV8"],[[128557,128557],"valid",[],"NV8"],[[128558,128559],"valid",[],"NV8"],[[128560,128563],"valid",[],"NV8"],[[128564,128564],"valid",[],"NV8"],[[128565,128576],"valid",[],"NV8"],[[128577,128578],"valid",[],"NV8"],[[128579,128580],"valid",[],"NV8"],[[128581,128591],"valid",[],"NV8"],[[128592,128639],"valid",[],"NV8"],[[128640,128709],"valid",[],"NV8"],[[128710,128719],"valid",[],"NV8"],[[128720,128720],"valid",[],"NV8"],[[128721,128735],"disallowed"],[[128736,128748],"valid",[],"NV8"],[[128749,128751],"disallowed"],[[128752,128755],"valid",[],"NV8"],[[128756,128767],"disallowed"],[[128768,128883],"valid",[],"NV8"],[[128884,128895],"disallowed"],[[128896,128980],"valid",[],"NV8"],[[128981,129023],"disallowed"],[[129024,129035],"valid",[],"NV8"],[[129036,129039],"disallowed"],[[129040,129095],"valid",[],"NV8"],[[129096,129103],"disallowed"],[[129104,129113],"valid",[],"NV8"],[[129114,129119],"disallowed"],[[129120,129159],"valid",[],"NV8"],[[129160,129167],"disallowed"],[[129168,129197],"valid",[],"NV8"],[[129198,129295],"disallowed"],[[129296,129304],"valid",[],"NV8"],[[129305,129407],"disallowed"],[[129408,129412],"valid",[],"NV8"],[[129413,129471],"disallowed"],[[129472,129472],"valid",[],"NV8"],[[129473,131069],"disallowed"],[[131070,131071],"disallowed"],[[131072,173782],"valid"],[[173783,173823],"disallowed"],[[173824,177972],"valid"],[[177973,177983],"disallowed"],[[177984,178205],"valid"],[[178206,178207],"disallowed"],[[178208,183969],"valid"],[[183970,194559],"disallowed"],[[194560,194560],"mapped",[20029]],[[194561,194561],"mapped",[20024]],[[194562,194562],"mapped",[20033]],[[194563,194563],"mapped",[131362]],[[194564,194564],"mapped",[20320]],[[194565,194565],"mapped",[20398]],[[194566,194566],"mapped",[20411]],[[194567,194567],"mapped",[20482]],[[194568,194568],"mapped",[20602]],[[194569,194569],"mapped",[20633]],[[194570,194570],"mapped",[20711]],[[194571,194571],"mapped",[20687]],[[194572,194572],"mapped",[13470]],[[194573,194573],"mapped",[132666]],[[194574,194574],"mapped",[20813]],[[194575,194575],"mapped",[20820]],[[194576,194576],"mapped",[20836]],[[194577,194577],"mapped",[20855]],[[194578,194578],"mapped",[132380]],[[194579,194579],"mapped",[13497]],[[194580,194580],"mapped",[20839]],[[194581,194581],"mapped",[20877]],[[194582,194582],"mapped",[132427]],[[194583,194583],"mapped",[20887]],[[194584,194584],"mapped",[20900]],[[194585,194585],"mapped",[20172]],[[194586,194586],"mapped",[20908]],[[194587,194587],"mapped",[20917]],[[194588,194588],"mapped",[168415]],[[194589,194589],"mapped",[20981]],[[194590,194590],"mapped",[20995]],[[194591,194591],"mapped",[13535]],[[194592,194592],"mapped",[21051]],[[194593,194593],"mapped",[21062]],[[194594,194594],"mapped",[21106]],[[194595,194595],"mapped",[21111]],[[194596,194596],"mapped",[13589]],[[194597,194597],"mapped",[21191]],[[194598,194598],"mapped",[21193]],[[194599,194599],"mapped",[21220]],[[194600,194600],"mapped",[21242]],[[194601,194601],"mapped",[21253]],[[194602,194602],"mapped",[21254]],[[194603,194603],"mapped",[21271]],[[194604,194604],"mapped",[21321]],[[194605,194605],"mapped",[21329]],[[194606,194606],"mapped",[21338]],[[194607,194607],"mapped",[21363]],[[194608,194608],"mapped",[21373]],[[194609,194611],"mapped",[21375]],[[194612,194612],"mapped",[133676]],[[194613,194613],"mapped",[28784]],[[194614,194614],"mapped",[21450]],[[194615,194615],"mapped",[21471]],[[194616,194616],"mapped",[133987]],[[194617,194617],"mapped",[21483]],[[194618,194618],"mapped",[21489]],[[194619,194619],"mapped",[21510]],[[194620,194620],"mapped",[21662]],[[194621,194621],"mapped",[21560]],[[194622,194622],"mapped",[21576]],[[194623,194623],"mapped",[21608]],[[194624,194624],"mapped",[21666]],[[194625,194625],"mapped",[21750]],[[194626,194626],"mapped",[21776]],[[194627,194627],"mapped",[21843]],[[194628,194628],"mapped",[21859]],[[194629,194630],"mapped",[21892]],[[194631,194631],"mapped",[21913]],[[194632,194632],"mapped",[21931]],[[194633,194633],"mapped",[21939]],[[194634,194634],"mapped",[21954]],[[194635,194635],"mapped",[22294]],[[194636,194636],"mapped",[22022]],[[194637,194637],"mapped",[22295]],[[194638,194638],"mapped",[22097]],[[194639,194639],"mapped",[22132]],[[194640,194640],"mapped",[20999]],[[194641,194641],"mapped",[22766]],[[194642,194642],"mapped",[22478]],[[194643,194643],"mapped",[22516]],[[194644,194644],"mapped",[22541]],[[194645,194645],"mapped",[22411]],[[194646,194646],"mapped",[22578]],[[194647,194647],"mapped",[22577]],[[194648,194648],"mapped",[22700]],[[194649,194649],"mapped",[136420]],[[194650,194650],"mapped",[22770]],[[194651,194651],"mapped",[22775]],[[194652,194652],"mapped",[22790]],[[194653,194653],"mapped",[22810]],[[194654,194654],"mapped",[22818]],[[194655,194655],"mapped",[22882]],[[194656,194656],"mapped",[136872]],[[194657,194657],"mapped",[136938]],[[194658,194658],"mapped",[23020]],[[194659,194659],"mapped",[23067]],[[194660,194660],"mapped",[23079]],[[194661,194661],"mapped",[23000]],[[194662,194662],"mapped",[23142]],[[194663,194663],"mapped",[14062]],[[194664,194664],"disallowed"],[[194665,194665],"mapped",[23304]],[[194666,194667],"mapped",[23358]],[[194668,194668],"mapped",[137672]],[[194669,194669],"mapped",[23491]],[[194670,194670],"mapped",[23512]],[[194671,194671],"mapped",[23527]],[[194672,194672],"mapped",[23539]],[[194673,194673],"mapped",[138008]],[[194674,194674],"mapped",[23551]],[[194675,194675],"mapped",[23558]],[[194676,194676],"disallowed"],[[194677,194677],"mapped",[23586]],[[194678,194678],"mapped",[14209]],[[194679,194679],"mapped",[23648]],[[194680,194680],"mapped",[23662]],[[194681,194681],"mapped",[23744]],[[194682,194682],"mapped",[23693]],[[194683,194683],"mapped",[138724]],[[194684,194684],"mapped",[23875]],[[194685,194685],"mapped",[138726]],[[194686,194686],"mapped",[23918]],[[194687,194687],"mapped",[23915]],[[194688,194688],"mapped",[23932]],[[194689,194689],"mapped",[24033]],[[194690,194690],"mapped",[24034]],[[194691,194691],"mapped",[14383]],[[194692,194692],"mapped",[24061]],[[194693,194693],"mapped",[24104]],[[194694,194694],"mapped",[24125]],[[194695,194695],"mapped",[24169]],[[194696,194696],"mapped",[14434]],[[194697,194697],"mapped",[139651]],[[194698,194698],"mapped",[14460]],[[194699,194699],"mapped",[24240]],[[194700,194700],"mapped",[24243]],[[194701,194701],"mapped",[24246]],[[194702,194702],"mapped",[24266]],[[194703,194703],"mapped",[172946]],[[194704,194704],"mapped",[24318]],[[194705,194706],"mapped",[140081]],[[194707,194707],"mapped",[33281]],[[194708,194709],"mapped",[24354]],[[194710,194710],"mapped",[14535]],[[194711,194711],"mapped",[144056]],[[194712,194712],"mapped",[156122]],[[194713,194713],"mapped",[24418]],[[194714,194714],"mapped",[24427]],[[194715,194715],"mapped",[14563]],[[194716,194716],"mapped",[24474]],[[194717,194717],"mapped",[24525]],[[194718,194718],"mapped",[24535]],[[194719,194719],"mapped",[24569]],[[194720,194720],"mapped",[24705]],[[194721,194721],"mapped",[14650]],[[194722,194722],"mapped",[14620]],[[194723,194723],"mapped",[24724]],[[194724,194724],"mapped",[141012]],[[194725,194725],"mapped",[24775]],[[194726,194726],"mapped",[24904]],[[194727,194727],"mapped",[24908]],[[194728,194728],"mapped",[24910]],[[194729,194729],"mapped",[24908]],[[194730,194730],"mapped",[24954]],[[194731,194731],"mapped",[24974]],[[194732,194732],"mapped",[25010]],[[194733,194733],"mapped",[24996]],[[194734,194734],"mapped",[25007]],[[194735,194735],"mapped",[25054]],[[194736,194736],"mapped",[25074]],[[194737,194737],"mapped",[25078]],[[194738,194738],"mapped",[25104]],[[194739,194739],"mapped",[25115]],[[194740,194740],"mapped",[25181]],[[194741,194741],"mapped",[25265]],[[194742,194742],"mapped",[25300]],[[194743,194743],"mapped",[25424]],[[194744,194744],"mapped",[142092]],[[194745,194745],"mapped",[25405]],[[194746,194746],"mapped",[25340]],[[194747,194747],"mapped",[25448]],[[194748,194748],"mapped",[25475]],[[194749,194749],"mapped",[25572]],[[194750,194750],"mapped",[142321]],[[194751,194751],"mapped",[25634]],[[194752,194752],"mapped",[25541]],[[194753,194753],"mapped",[25513]],[[194754,194754],"mapped",[14894]],[[194755,194755],"mapped",[25705]],[[194756,194756],"mapped",[25726]],[[194757,194757],"mapped",[25757]],[[194758,194758],"mapped",[25719]],[[194759,194759],"mapped",[14956]],[[194760,194760],"mapped",[25935]],[[194761,194761],"mapped",[25964]],[[194762,194762],"mapped",[143370]],[[194763,194763],"mapped",[26083]],[[194764,194764],"mapped",[26360]],[[194765,194765],"mapped",[26185]],[[194766,194766],"mapped",[15129]],[[194767,194767],"mapped",[26257]],[[194768,194768],"mapped",[15112]],[[194769,194769],"mapped",[15076]],[[194770,194770],"mapped",[20882]],[[194771,194771],"mapped",[20885]],[[194772,194772],"mapped",[26368]],[[194773,194773],"mapped",[26268]],[[194774,194774],"mapped",[32941]],[[194775,194775],"mapped",[17369]],[[194776,194776],"mapped",[26391]],[[194777,194777],"mapped",[26395]],[[194778,194778],"mapped",[26401]],[[194779,194779],"mapped",[26462]],[[194780,194780],"mapped",[26451]],[[194781,194781],"mapped",[144323]],[[194782,194782],"mapped",[15177]],[[194783,194783],"mapped",[26618]],[[194784,194784],"mapped",[26501]],[[194785,194785],"mapped",[26706]],[[194786,194786],"mapped",[26757]],[[194787,194787],"mapped",[144493]],[[194788,194788],"mapped",[26766]],[[194789,194789],"mapped",[26655]],[[194790,194790],"mapped",[26900]],[[194791,194791],"mapped",[15261]],[[194792,194792],"mapped",[26946]],[[194793,194793],"mapped",[27043]],[[194794,194794],"mapped",[27114]],[[194795,194795],"mapped",[27304]],[[194796,194796],"mapped",[145059]],[[194797,194797],"mapped",[27355]],[[194798,194798],"mapped",[15384]],[[194799,194799],"mapped",[27425]],[[194800,194800],"mapped",[145575]],[[194801,194801],"mapped",[27476]],[[194802,194802],"mapped",[15438]],[[194803,194803],"mapped",[27506]],[[194804,194804],"mapped",[27551]],[[194805,194805],"mapped",[27578]],[[194806,194806],"mapped",[27579]],[[194807,194807],"mapped",[146061]],[[194808,194808],"mapped",[138507]],[[194809,194809],"mapped",[146170]],[[194810,194810],"mapped",[27726]],[[194811,194811],"mapped",[146620]],[[194812,194812],"mapped",[27839]],[[194813,194813],"mapped",[27853]],[[194814,194814],"mapped",[27751]],[[194815,194815],"mapped",[27926]],[[194816,194816],"mapped",[27966]],[[194817,194817],"mapped",[28023]],[[194818,194818],"mapped",[27969]],[[194819,194819],"mapped",[28009]],[[194820,194820],"mapped",[28024]],[[194821,194821],"mapped",[28037]],[[194822,194822],"mapped",[146718]],[[194823,194823],"mapped",[27956]],[[194824,194824],"mapped",[28207]],[[194825,194825],"mapped",[28270]],[[194826,194826],"mapped",[15667]],[[194827,194827],"mapped",[28363]],[[194828,194828],"mapped",[28359]],[[194829,194829],"mapped",[147153]],[[194830,194830],"mapped",[28153]],[[194831,194831],"mapped",[28526]],[[194832,194832],"mapped",[147294]],[[194833,194833],"mapped",[147342]],[[194834,194834],"mapped",[28614]],[[194835,194835],"mapped",[28729]],[[194836,194836],"mapped",[28702]],[[194837,194837],"mapped",[28699]],[[194838,194838],"mapped",[15766]],[[194839,194839],"mapped",[28746]],[[194840,194840],"mapped",[28797]],[[194841,194841],"mapped",[28791]],[[194842,194842],"mapped",[28845]],[[194843,194843],"mapped",[132389]],[[194844,194844],"mapped",[28997]],[[194845,194845],"mapped",[148067]],[[194846,194846],"mapped",[29084]],[[194847,194847],"disallowed"],[[194848,194848],"mapped",[29224]],[[194849,194849],"mapped",[29237]],[[194850,194850],"mapped",[29264]],[[194851,194851],"mapped",[149000]],[[194852,194852],"mapped",[29312]],[[194853,194853],"mapped",[29333]],[[194854,194854],"mapped",[149301]],[[194855,194855],"mapped",[149524]],[[194856,194856],"mapped",[29562]],[[194857,194857],"mapped",[29579]],[[194858,194858],"mapped",[16044]],[[194859,194859],"mapped",[29605]],[[194860,194861],"mapped",[16056]],[[194862,194862],"mapped",[29767]],[[194863,194863],"mapped",[29788]],[[194864,194864],"mapped",[29809]],[[194865,194865],"mapped",[29829]],[[194866,194866],"mapped",[29898]],[[194867,194867],"mapped",[16155]],[[194868,194868],"mapped",[29988]],[[194869,194869],"mapped",[150582]],[[194870,194870],"mapped",[30014]],[[194871,194871],"mapped",[150674]],[[194872,194872],"mapped",[30064]],[[194873,194873],"mapped",[139679]],[[194874,194874],"mapped",[30224]],[[194875,194875],"mapped",[151457]],[[194876,194876],"mapped",[151480]],[[194877,194877],"mapped",[151620]],[[194878,194878],"mapped",[16380]],[[194879,194879],"mapped",[16392]],[[194880,194880],"mapped",[30452]],[[194881,194881],"mapped",[151795]],[[194882,194882],"mapped",[151794]],[[194883,194883],"mapped",[151833]],[[194884,194884],"mapped",[151859]],[[194885,194885],"mapped",[30494]],[[194886,194887],"mapped",[30495]],[[194888,194888],"mapped",[30538]],[[194889,194889],"mapped",[16441]],[[194890,194890],"mapped",[30603]],[[194891,194891],"mapped",[16454]],[[194892,194892],"mapped",[16534]],[[194893,194893],"mapped",[152605]],[[194894,194894],"mapped",[30798]],[[194895,194895],"mapped",[30860]],[[194896,194896],"mapped",[30924]],[[194897,194897],"mapped",[16611]],[[194898,194898],"mapped",[153126]],[[194899,194899],"mapped",[31062]],[[194900,194900],"mapped",[153242]],[[194901,194901],"mapped",[153285]],[[194902,194902],"mapped",[31119]],[[194903,194903],"mapped",[31211]],[[194904,194904],"mapped",[16687]],[[194905,194905],"mapped",[31296]],[[194906,194906],"mapped",[31306]],[[194907,194907],"mapped",[31311]],[[194908,194908],"mapped",[153980]],[[194909,194910],"mapped",[154279]],[[194911,194911],"disallowed"],[[194912,194912],"mapped",[16898]],[[194913,194913],"mapped",[154539]],[[194914,194914],"mapped",[31686]],[[194915,194915],"mapped",[31689]],[[194916,194916],"mapped",[16935]],[[194917,194917],"mapped",[154752]],[[194918,194918],"mapped",[31954]],[[194919,194919],"mapped",[17056]],[[194920,194920],"mapped",[31976]],[[194921,194921],"mapped",[31971]],[[194922,194922],"mapped",[32000]],[[194923,194923],"mapped",[155526]],[[194924,194924],"mapped",[32099]],[[194925,194925],"mapped",[17153]],[[194926,194926],"mapped",[32199]],[[194927,194927],"mapped",[32258]],[[194928,194928],"mapped",[32325]],[[194929,194929],"mapped",[17204]],[[194930,194930],"mapped",[156200]],[[194931,194931],"mapped",[156231]],[[194932,194932],"mapped",[17241]],[[194933,194933],"mapped",[156377]],[[194934,194934],"mapped",[32634]],[[194935,194935],"mapped",[156478]],[[194936,194936],"mapped",[32661]],[[194937,194937],"mapped",[32762]],[[194938,194938],"mapped",[32773]],[[194939,194939],"mapped",[156890]],[[194940,194940],"mapped",[156963]],[[194941,194941],"mapped",[32864]],[[194942,194942],"mapped",[157096]],[[194943,194943],"mapped",[32880]],[[194944,194944],"mapped",[144223]],[[194945,194945],"mapped",[17365]],[[194946,194946],"mapped",[32946]],[[194947,194947],"mapped",[33027]],[[194948,194948],"mapped",[17419]],[[194949,194949],"mapped",[33086]],[[194950,194950],"mapped",[23221]],[[194951,194951],"mapped",[157607]],[[194952,194952],"mapped",[157621]],[[194953,194953],"mapped",[144275]],[[194954,194954],"mapped",[144284]],[[194955,194955],"mapped",[33281]],[[194956,194956],"mapped",[33284]],[[194957,194957],"mapped",[36766]],[[194958,194958],"mapped",[17515]],[[194959,194959],"mapped",[33425]],[[194960,194960],"mapped",[33419]],[[194961,194961],"mapped",[33437]],[[194962,194962],"mapped",[21171]],[[194963,194963],"mapped",[33457]],[[194964,194964],"mapped",[33459]],[[194965,194965],"mapped",[33469]],[[194966,194966],"mapped",[33510]],[[194967,194967],"mapped",[158524]],[[194968,194968],"mapped",[33509]],[[194969,194969],"mapped",[33565]],[[194970,194970],"mapped",[33635]],[[194971,194971],"mapped",[33709]],[[194972,194972],"mapped",[33571]],[[194973,194973],"mapped",[33725]],[[194974,194974],"mapped",[33767]],[[194975,194975],"mapped",[33879]],[[194976,194976],"mapped",[33619]],[[194977,194977],"mapped",[33738]],[[194978,194978],"mapped",[33740]],[[194979,194979],"mapped",[33756]],[[194980,194980],"mapped",[158774]],[[194981,194981],"mapped",[159083]],[[194982,194982],"mapped",[158933]],[[194983,194983],"mapped",[17707]],[[194984,194984],"mapped",[34033]],[[194985,194985],"mapped",[34035]],[[194986,194986],"mapped",[34070]],[[194987,194987],"mapped",[160714]],[[194988,194988],"mapped",[34148]],[[194989,194989],"mapped",[159532]],[[194990,194990],"mapped",[17757]],[[194991,194991],"mapped",[17761]],[[194992,194992],"mapped",[159665]],[[194993,194993],"mapped",[159954]],[[194994,194994],"mapped",[17771]],[[194995,194995],"mapped",[34384]],[[194996,194996],"mapped",[34396]],[[194997,194997],"mapped",[34407]],[[194998,194998],"mapped",[34409]],[[194999,194999],"mapped",[34473]],[[195000,195000],"mapped",[34440]],[[195001,195001],"mapped",[34574]],[[195002,195002],"mapped",[34530]],[[195003,195003],"mapped",[34681]],[[195004,195004],"mapped",[34600]],[[195005,195005],"mapped",[34667]],[[195006,195006],"mapped",[34694]],[[195007,195007],"disallowed"],[[195008,195008],"mapped",[34785]],[[195009,195009],"mapped",[34817]],[[195010,195010],"mapped",[17913]],[[195011,195011],"mapped",[34912]],[[195012,195012],"mapped",[34915]],[[195013,195013],"mapped",[161383]],[[195014,195014],"mapped",[35031]],[[195015,195015],"mapped",[35038]],[[195016,195016],"mapped",[17973]],[[195017,195017],"mapped",[35066]],[[195018,195018],"mapped",[13499]],[[195019,195019],"mapped",[161966]],[[195020,195020],"mapped",[162150]],[[195021,195021],"mapped",[18110]],[[195022,195022],"mapped",[18119]],[[195023,195023],"mapped",[35488]],[[195024,195024],"mapped",[35565]],[[195025,195025],"mapped",[35722]],[[195026,195026],"mapped",[35925]],[[195027,195027],"mapped",[162984]],[[195028,195028],"mapped",[36011]],[[195029,195029],"mapped",[36033]],[[195030,195030],"mapped",[36123]],[[195031,195031],"mapped",[36215]],[[195032,195032],"mapped",[163631]],[[195033,195033],"mapped",[133124]],[[195034,195034],"mapped",[36299]],[[195035,195035],"mapped",[36284]],[[195036,195036],"mapped",[36336]],[[195037,195037],"mapped",[133342]],[[195038,195038],"mapped",[36564]],[[195039,195039],"mapped",[36664]],[[195040,195040],"mapped",[165330]],[[195041,195041],"mapped",[165357]],[[195042,195042],"mapped",[37012]],[[195043,195043],"mapped",[37105]],[[195044,195044],"mapped",[37137]],[[195045,195045],"mapped",[165678]],[[195046,195046],"mapped",[37147]],[[195047,195047],"mapped",[37432]],[[195048,195048],"mapped",[37591]],[[195049,195049],"mapped",[37592]],[[195050,195050],"mapped",[37500]],[[195051,195051],"mapped",[37881]],[[195052,195052],"mapped",[37909]],[[195053,195053],"mapped",[166906]],[[195054,195054],"mapped",[38283]],[[195055,195055],"mapped",[18837]],[[195056,195056],"mapped",[38327]],[[195057,195057],"mapped",[167287]],[[195058,195058],"mapped",[18918]],[[195059,195059],"mapped",[38595]],[[195060,195060],"mapped",[23986]],[[195061,195061],"mapped",[38691]],[[195062,195062],"mapped",[168261]],[[195063,195063],"mapped",[168474]],[[195064,195064],"mapped",[19054]],[[195065,195065],"mapped",[19062]],[[195066,195066],"mapped",[38880]],[[195067,195067],"mapped",[168970]],[[195068,195068],"mapped",[19122]],[[195069,195069],"mapped",[169110]],[[195070,195071],"mapped",[38923]],[[195072,195072],"mapped",[38953]],[[195073,195073],"mapped",[169398]],[[195074,195074],"mapped",[39138]],[[195075,195075],"mapped",[19251]],[[195076,195076],"mapped",[39209]],[[195077,195077],"mapped",[39335]],[[195078,195078],"mapped",[39362]],[[195079,195079],"mapped",[39422]],[[195080,195080],"mapped",[19406]],[[195081,195081],"mapped",[170800]],[[195082,195082],"mapped",[39698]],[[195083,195083],"mapped",[40000]],[[195084,195084],"mapped",[40189]],[[195085,195085],"mapped",[19662]],[[195086,195086],"mapped",[19693]],[[195087,195087],"mapped",[40295]],[[195088,195088],"mapped",[172238]],[[195089,195089],"mapped",[19704]],[[195090,195090],"mapped",[172293]],[[195091,195091],"mapped",[172558]],[[195092,195092],"mapped",[172689]],[[195093,195093],"mapped",[40635]],[[195094,195094],"mapped",[19798]],[[195095,195095],"mapped",[40697]],[[195096,195096],"mapped",[40702]],[[195097,195097],"mapped",[40709]],[[195098,195098],"mapped",[40719]],[[195099,195099],"mapped",[40726]],[[195100,195100],"mapped",[40763]],[[195101,195101],"mapped",[173568]],[[195102,196605],"disallowed"],[[196606,196607],"disallowed"],[[196608,262141],"disallowed"],[[262142,262143],"disallowed"],[[262144,327677],"disallowed"],[[327678,327679],"disallowed"],[[327680,393213],"disallowed"],[[393214,393215],"disallowed"],[[393216,458749],"disallowed"],[[458750,458751],"disallowed"],[[458752,524285],"disallowed"],[[524286,524287],"disallowed"],[[524288,589821],"disallowed"],[[589822,589823],"disallowed"],[[589824,655357],"disallowed"],[[655358,655359],"disallowed"],[[655360,720893],"disallowed"],[[720894,720895],"disallowed"],[[720896,786429],"disallowed"],[[786430,786431],"disallowed"],[[786432,851965],"disallowed"],[[851966,851967],"disallowed"],[[851968,917501],"disallowed"],[[917502,917503],"disallowed"],[[917504,917504],"disallowed"],[[917505,917505],"disallowed"],[[917506,917535],"disallowed"],[[917536,917631],"disallowed"],[[917632,917759],"disallowed"],[[917760,917999],"ignored"],[[918000,983037],"disallowed"],[[983038,983039],"disallowed"],[[983040,1048573],"disallowed"],[[1048574,1048575],"disallowed"],[[1048576,1114109],"disallowed"],[[1114110,1114111],"disallowed"]]')},12069:Wt=>{"use strict";Wt.exports=JSON.parse('["ac","com.ac","edu.ac","gov.ac","net.ac","mil.ac","org.ac","ad","nom.ad","ae","co.ae","net.ae","org.ae","sch.ae","ac.ae","gov.ae","mil.ae","aero","accident-investigation.aero","accident-prevention.aero","aerobatic.aero","aeroclub.aero","aerodrome.aero","agents.aero","aircraft.aero","airline.aero","airport.aero","air-surveillance.aero","airtraffic.aero","air-traffic-control.aero","ambulance.aero","amusement.aero","association.aero","author.aero","ballooning.aero","broker.aero","caa.aero","cargo.aero","catering.aero","certification.aero","championship.aero","charter.aero","civilaviation.aero","club.aero","conference.aero","consultant.aero","consulting.aero","control.aero","council.aero","crew.aero","design.aero","dgca.aero","educator.aero","emergency.aero","engine.aero","engineer.aero","entertainment.aero","equipment.aero","exchange.aero","express.aero","federation.aero","flight.aero","fuel.aero","gliding.aero","government.aero","groundhandling.aero","group.aero","hanggliding.aero","homebuilt.aero","insurance.aero","journal.aero","journalist.aero","leasing.aero","logistics.aero","magazine.aero","maintenance.aero","media.aero","microlight.aero","modelling.aero","navigation.aero","parachuting.aero","paragliding.aero","passenger-association.aero","pilot.aero","press.aero","production.aero","recreation.aero","repbody.aero","res.aero","research.aero","rotorcraft.aero","safety.aero","scientist.aero","services.aero","show.aero","skydiving.aero","software.aero","student.aero","trader.aero","trading.aero","trainer.aero","union.aero","workinggroup.aero","works.aero","af","gov.af","com.af","org.af","net.af","edu.af","ag","com.ag","org.ag","net.ag","co.ag","nom.ag","ai","off.ai","com.ai","net.ai","org.ai","al","com.al","edu.al","gov.al","mil.al","net.al","org.al","am","co.am","com.am","commune.am","net.am","org.am","ao","ed.ao","gv.ao","og.ao","co.ao","pb.ao","it.ao","aq","ar","bet.ar","com.ar","coop.ar","edu.ar","gob.ar","gov.ar","int.ar","mil.ar","musica.ar","mutual.ar","net.ar","org.ar","senasa.ar","tur.ar","arpa","e164.arpa","in-addr.arpa","ip6.arpa","iris.arpa","uri.arpa","urn.arpa","as","gov.as","asia","at","ac.at","co.at","gv.at","or.at","sth.ac.at","au","com.au","net.au","org.au","edu.au","gov.au","asn.au","id.au","info.au","conf.au","oz.au","act.au","nsw.au","nt.au","qld.au","sa.au","tas.au","vic.au","wa.au","act.edu.au","catholic.edu.au","nsw.edu.au","nt.edu.au","qld.edu.au","sa.edu.au","tas.edu.au","vic.edu.au","wa.edu.au","qld.gov.au","sa.gov.au","tas.gov.au","vic.gov.au","wa.gov.au","schools.nsw.edu.au","aw","com.aw","ax","az","com.az","net.az","int.az","gov.az","org.az","edu.az","info.az","pp.az","mil.az","name.az","pro.az","biz.az","ba","com.ba","edu.ba","gov.ba","mil.ba","net.ba","org.ba","bb","biz.bb","co.bb","com.bb","edu.bb","gov.bb","info.bb","net.bb","org.bb","store.bb","tv.bb","*.bd","be","ac.be","bf","gov.bf","bg","a.bg","b.bg","c.bg","d.bg","e.bg","f.bg","g.bg","h.bg","i.bg","j.bg","k.bg","l.bg","m.bg","n.bg","o.bg","p.bg","q.bg","r.bg","s.bg","t.bg","u.bg","v.bg","w.bg","x.bg","y.bg","z.bg","0.bg","1.bg","2.bg","3.bg","4.bg","5.bg","6.bg","7.bg","8.bg","9.bg","bh","com.bh","edu.bh","net.bh","org.bh","gov.bh","bi","co.bi","com.bi","edu.bi","or.bi","org.bi","biz","bj","asso.bj","barreau.bj","gouv.bj","bm","com.bm","edu.bm","gov.bm","net.bm","org.bm","bn","com.bn","edu.bn","gov.bn","net.bn","org.bn","bo","com.bo","edu.bo","gob.bo","int.bo","org.bo","net.bo","mil.bo","tv.bo","web.bo","academia.bo","agro.bo","arte.bo","blog.bo","bolivia.bo","ciencia.bo","cooperativa.bo","democracia.bo","deporte.bo","ecologia.bo","economia.bo","empresa.bo","indigena.bo","industria.bo","info.bo","medicina.bo","movimiento.bo","musica.bo","natural.bo","nombre.bo","noticias.bo","patria.bo","politica.bo","profesional.bo","plurinacional.bo","pueblo.bo","revista.bo","salud.bo","tecnologia.bo","tksat.bo","transporte.bo","wiki.bo","br","9guacu.br","abc.br","adm.br","adv.br","agr.br","aju.br","am.br","anani.br","aparecida.br","app.br","arq.br","art.br","ato.br","b.br","barueri.br","belem.br","bhz.br","bib.br","bio.br","blog.br","bmd.br","boavista.br","bsb.br","campinagrande.br","campinas.br","caxias.br","cim.br","cng.br","cnt.br","com.br","contagem.br","coop.br","coz.br","cri.br","cuiaba.br","curitiba.br","def.br","des.br","det.br","dev.br","ecn.br","eco.br","edu.br","emp.br","enf.br","eng.br","esp.br","etc.br","eti.br","far.br","feira.br","flog.br","floripa.br","fm.br","fnd.br","fortal.br","fot.br","foz.br","fst.br","g12.br","geo.br","ggf.br","goiania.br","gov.br","ac.gov.br","al.gov.br","am.gov.br","ap.gov.br","ba.gov.br","ce.gov.br","df.gov.br","es.gov.br","go.gov.br","ma.gov.br","mg.gov.br","ms.gov.br","mt.gov.br","pa.gov.br","pb.gov.br","pe.gov.br","pi.gov.br","pr.gov.br","rj.gov.br","rn.gov.br","ro.gov.br","rr.gov.br","rs.gov.br","sc.gov.br","se.gov.br","sp.gov.br","to.gov.br","gru.br","imb.br","ind.br","inf.br","jab.br","jampa.br","jdf.br","joinville.br","jor.br","jus.br","leg.br","lel.br","log.br","londrina.br","macapa.br","maceio.br","manaus.br","maringa.br","mat.br","med.br","mil.br","morena.br","mp.br","mus.br","natal.br","net.br","niteroi.br","*.nom.br","not.br","ntr.br","odo.br","ong.br","org.br","osasco.br","palmas.br","poa.br","ppg.br","pro.br","psc.br","psi.br","pvh.br","qsl.br","radio.br","rec.br","recife.br","rep.br","ribeirao.br","rio.br","riobranco.br","riopreto.br","salvador.br","sampa.br","santamaria.br","santoandre.br","saobernardo.br","saogonca.br","seg.br","sjc.br","slg.br","slz.br","sorocaba.br","srv.br","taxi.br","tc.br","tec.br","teo.br","the.br","tmp.br","trd.br","tur.br","tv.br","udi.br","vet.br","vix.br","vlog.br","wiki.br","zlg.br","bs","com.bs","net.bs","org.bs","edu.bs","gov.bs","bt","com.bt","edu.bt","gov.bt","net.bt","org.bt","bv","bw","co.bw","org.bw","by","gov.by","mil.by","com.by","of.by","bz","com.bz","net.bz","org.bz","edu.bz","gov.bz","ca","ab.ca","bc.ca","mb.ca","nb.ca","nf.ca","nl.ca","ns.ca","nt.ca","nu.ca","on.ca","pe.ca","qc.ca","sk.ca","yk.ca","gc.ca","cat","cc","cd","gov.cd","cf","cg","ch","ci","org.ci","or.ci","com.ci","co.ci","edu.ci","ed.ci","ac.ci","net.ci","go.ci","asso.ci","aéroport.ci","int.ci","presse.ci","md.ci","gouv.ci","*.ck","!www.ck","cl","co.cl","gob.cl","gov.cl","mil.cl","cm","co.cm","com.cm","gov.cm","net.cm","cn","ac.cn","com.cn","edu.cn","gov.cn","net.cn","org.cn","mil.cn","公司.cn","网络.cn","網絡.cn","ah.cn","bj.cn","cq.cn","fj.cn","gd.cn","gs.cn","gz.cn","gx.cn","ha.cn","hb.cn","he.cn","hi.cn","hl.cn","hn.cn","jl.cn","js.cn","jx.cn","ln.cn","nm.cn","nx.cn","qh.cn","sc.cn","sd.cn","sh.cn","sn.cn","sx.cn","tj.cn","xj.cn","xz.cn","yn.cn","zj.cn","hk.cn","mo.cn","tw.cn","co","arts.co","com.co","edu.co","firm.co","gov.co","info.co","int.co","mil.co","net.co","nom.co","org.co","rec.co","web.co","com","coop","cr","ac.cr","co.cr","ed.cr","fi.cr","go.cr","or.cr","sa.cr","cu","com.cu","edu.cu","org.cu","net.cu","gov.cu","inf.cu","cv","com.cv","edu.cv","int.cv","nome.cv","org.cv","cw","com.cw","edu.cw","net.cw","org.cw","cx","gov.cx","cy","ac.cy","biz.cy","com.cy","ekloges.cy","gov.cy","ltd.cy","mil.cy","net.cy","org.cy","press.cy","pro.cy","tm.cy","cz","de","dj","dk","dm","com.dm","net.dm","org.dm","edu.dm","gov.dm","do","art.do","com.do","edu.do","gob.do","gov.do","mil.do","net.do","org.do","sld.do","web.do","dz","art.dz","asso.dz","com.dz","edu.dz","gov.dz","org.dz","net.dz","pol.dz","soc.dz","tm.dz","ec","com.ec","info.ec","net.ec","fin.ec","k12.ec","med.ec","pro.ec","org.ec","edu.ec","gov.ec","gob.ec","mil.ec","edu","ee","edu.ee","gov.ee","riik.ee","lib.ee","med.ee","com.ee","pri.ee","aip.ee","org.ee","fie.ee","eg","com.eg","edu.eg","eun.eg","gov.eg","mil.eg","name.eg","net.eg","org.eg","sci.eg","*.er","es","com.es","nom.es","org.es","gob.es","edu.es","et","com.et","gov.et","org.et","edu.et","biz.et","name.et","info.et","net.et","eu","fi","aland.fi","fj","ac.fj","biz.fj","com.fj","gov.fj","info.fj","mil.fj","name.fj","net.fj","org.fj","pro.fj","*.fk","com.fm","edu.fm","net.fm","org.fm","fm","fo","fr","asso.fr","com.fr","gouv.fr","nom.fr","prd.fr","tm.fr","aeroport.fr","avocat.fr","avoues.fr","cci.fr","chambagri.fr","chirurgiens-dentistes.fr","experts-comptables.fr","geometre-expert.fr","greta.fr","huissier-justice.fr","medecin.fr","notaires.fr","pharmacien.fr","port.fr","veterinaire.fr","ga","gb","edu.gd","gov.gd","gd","ge","com.ge","edu.ge","gov.ge","org.ge","mil.ge","net.ge","pvt.ge","gf","gg","co.gg","net.gg","org.gg","gh","com.gh","edu.gh","gov.gh","org.gh","mil.gh","gi","com.gi","ltd.gi","gov.gi","mod.gi","edu.gi","org.gi","gl","co.gl","com.gl","edu.gl","net.gl","org.gl","gm","gn","ac.gn","com.gn","edu.gn","gov.gn","org.gn","net.gn","gov","gp","com.gp","net.gp","mobi.gp","edu.gp","org.gp","asso.gp","gq","gr","com.gr","edu.gr","net.gr","org.gr","gov.gr","gs","gt","com.gt","edu.gt","gob.gt","ind.gt","mil.gt","net.gt","org.gt","gu","com.gu","edu.gu","gov.gu","guam.gu","info.gu","net.gu","org.gu","web.gu","gw","gy","co.gy","com.gy","edu.gy","gov.gy","net.gy","org.gy","hk","com.hk","edu.hk","gov.hk","idv.hk","net.hk","org.hk","公司.hk","教育.hk","敎育.hk","政府.hk","個人.hk","个��.hk","箇人.hk","網络.hk","网络.hk","组織.hk","網絡.hk","网絡.hk","组织.hk","組織.hk","組织.hk","hm","hn","com.hn","edu.hn","org.hn","net.hn","mil.hn","gob.hn","hr","iz.hr","from.hr","name.hr","com.hr","ht","com.ht","shop.ht","firm.ht","info.ht","adult.ht","net.ht","pro.ht","org.ht","med.ht","art.ht","coop.ht","pol.ht","asso.ht","edu.ht","rel.ht","gouv.ht","perso.ht","hu","co.hu","info.hu","org.hu","priv.hu","sport.hu","tm.hu","2000.hu","agrar.hu","bolt.hu","casino.hu","city.hu","erotica.hu","erotika.hu","film.hu","forum.hu","games.hu","hotel.hu","ingatlan.hu","jogasz.hu","konyvelo.hu","lakas.hu","media.hu","news.hu","reklam.hu","sex.hu","shop.hu","suli.hu","szex.hu","tozsde.hu","utazas.hu","video.hu","id","ac.id","biz.id","co.id","desa.id","go.id","mil.id","my.id","net.id","or.id","ponpes.id","sch.id","web.id","ie","gov.ie","il","ac.il","co.il","gov.il","idf.il","k12.il","muni.il","net.il","org.il","im","ac.im","co.im","com.im","ltd.co.im","net.im","org.im","plc.co.im","tt.im","tv.im","in","co.in","firm.in","net.in","org.in","gen.in","ind.in","nic.in","ac.in","edu.in","res.in","gov.in","mil.in","info","int","eu.int","io","com.io","iq","gov.iq","edu.iq","mil.iq","com.iq","org.iq","net.iq","ir","ac.ir","co.ir","gov.ir","id.ir","net.ir","org.ir","sch.ir","ایران.ir","ايران.ir","is","net.is","com.is","edu.is","gov.is","org.is","int.is","it","gov.it","edu.it","abr.it","abruzzo.it","aosta-valley.it","aostavalley.it","bas.it","basilicata.it","cal.it","calabria.it","cam.it","campania.it","emilia-romagna.it","emiliaromagna.it","emr.it","friuli-v-giulia.it","friuli-ve-giulia.it","friuli-vegiulia.it","friuli-venezia-giulia.it","friuli-veneziagiulia.it","friuli-vgiulia.it","friuliv-giulia.it","friulive-giulia.it","friulivegiulia.it","friulivenezia-giulia.it","friuliveneziagiulia.it","friulivgiulia.it","fvg.it","laz.it","lazio.it","lig.it","liguria.it","lom.it","lombardia.it","lombardy.it","lucania.it","mar.it","marche.it","mol.it","molise.it","piedmont.it","piemonte.it","pmn.it","pug.it","puglia.it","sar.it","sardegna.it","sardinia.it","sic.it","sicilia.it","sicily.it","taa.it","tos.it","toscana.it","trentin-sud-tirol.it","trentin-süd-tirol.it","trentin-sudtirol.it","trentin-südtirol.it","trentin-sued-tirol.it","trentin-suedtirol.it","trentino-a-adige.it","trentino-aadige.it","trentino-alto-adige.it","trentino-altoadige.it","trentino-s-tirol.it","trentino-stirol.it","trentino-sud-tirol.it","trentino-süd-tirol.it","trentino-sudtirol.it","trentino-südtirol.it","trentino-sued-tirol.it","trentino-suedtirol.it","trentino.it","trentinoa-adige.it","trentinoaadige.it","trentinoalto-adige.it","trentinoaltoadige.it","trentinos-tirol.it","trentinostirol.it","trentinosud-tirol.it","trentinosüd-tirol.it","trentinosudtirol.it","trentinosüdtirol.it","trentinosued-tirol.it","trentinosuedtirol.it","trentinsud-tirol.it","trentinsüd-tirol.it","trentinsudtirol.it","trentinsüdtirol.it","trentinsued-tirol.it","trentinsuedtirol.it","tuscany.it","umb.it","umbria.it","val-d-aosta.it","val-daosta.it","vald-aosta.it","valdaosta.it","valle-aosta.it","valle-d-aosta.it","valle-daosta.it","valleaosta.it","valled-aosta.it","valledaosta.it","vallee-aoste.it","vallée-aoste.it","vallee-d-aoste.it","vallée-d-aoste.it","valleeaoste.it","valléeaoste.it","valleedaoste.it","valléedaoste.it","vao.it","vda.it","ven.it","veneto.it","ag.it","agrigento.it","al.it","alessandria.it","alto-adige.it","altoadige.it","an.it","ancona.it","andria-barletta-trani.it","andria-trani-barletta.it","andriabarlettatrani.it","andriatranibarletta.it","ao.it","aosta.it","aoste.it","ap.it","aq.it","aquila.it","ar.it","arezzo.it","ascoli-piceno.it","ascolipiceno.it","asti.it","at.it","av.it","avellino.it","ba.it","balsan-sudtirol.it","balsan-südtirol.it","balsan-suedtirol.it","balsan.it","bari.it","barletta-trani-andria.it","barlettatraniandria.it","belluno.it","benevento.it","bergamo.it","bg.it","bi.it","biella.it","bl.it","bn.it","bo.it","bologna.it","bolzano-altoadige.it","bolzano.it","bozen-sudtirol.it","bozen-südtirol.it","bozen-suedtirol.it","bozen.it","br.it","brescia.it","brindisi.it","bs.it","bt.it","bulsan-sudtirol.it","bulsan-südtirol.it","bulsan-suedtirol.it","bulsan.it","bz.it","ca.it","cagliari.it","caltanissetta.it","campidano-medio.it","campidanomedio.it","campobasso.it","carbonia-iglesias.it","carboniaiglesias.it","carrara-massa.it","carraramassa.it","caserta.it","catania.it","catanzaro.it","cb.it","ce.it","cesena-forli.it","cesena-forlì.it","cesenaforli.it","cesenaforlì.it","ch.it","chieti.it","ci.it","cl.it","cn.it","co.it","como.it","cosenza.it","cr.it","cremona.it","crotone.it","cs.it","ct.it","cuneo.it","cz.it","dell-ogliastra.it","dellogliastra.it","en.it","enna.it","fc.it","fe.it","fermo.it","ferrara.it","fg.it","fi.it","firenze.it","florence.it","fm.it","foggia.it","forli-cesena.it","forlì-cesena.it","forlicesena.it","forlìcesena.it","fr.it","frosinone.it","ge.it","genoa.it","genova.it","go.it","gorizia.it","gr.it","grosseto.it","iglesias-carbonia.it","iglesiascarbonia.it","im.it","imperia.it","is.it","isernia.it","kr.it","la-spezia.it","laquila.it","laspezia.it","latina.it","lc.it","le.it","lecce.it","lecco.it","li.it","livorno.it","lo.it","lodi.it","lt.it","lu.it","lucca.it","macerata.it","mantova.it","massa-carrara.it","massacarrara.it","matera.it","mb.it","mc.it","me.it","medio-campidano.it","mediocampidano.it","messina.it","mi.it","milan.it","milano.it","mn.it","mo.it","modena.it","monza-brianza.it","monza-e-della-brianza.it","monza.it","monzabrianza.it","monzaebrianza.it","monzaedellabrianza.it","ms.it","mt.it","na.it","naples.it","napoli.it","no.it","novara.it","nu.it","nuoro.it","og.it","ogliastra.it","olbia-tempio.it","olbiatempio.it","or.it","oristano.it","ot.it","pa.it","padova.it","padua.it","palermo.it","parma.it","pavia.it","pc.it","pd.it","pe.it","perugia.it","pesaro-urbino.it","pesarourbino.it","pescara.it","pg.it","pi.it","piacenza.it","pisa.it","pistoia.it","pn.it","po.it","pordenone.it","potenza.it","pr.it","prato.it","pt.it","pu.it","pv.it","pz.it","ra.it","ragusa.it","ravenna.it","rc.it","re.it","reggio-calabria.it","reggio-emilia.it","reggiocalabria.it","reggioemilia.it","rg.it","ri.it","rieti.it","rimini.it","rm.it","rn.it","ro.it","roma.it","rome.it","rovigo.it","sa.it","salerno.it","sassari.it","savona.it","si.it","siena.it","siracusa.it","so.it","sondrio.it","sp.it","sr.it","ss.it","suedtirol.it","südtirol.it","sv.it","ta.it","taranto.it","te.it","tempio-olbia.it","tempioolbia.it","teramo.it","terni.it","tn.it","to.it","torino.it","tp.it","tr.it","trani-andria-barletta.it","trani-barletta-andria.it","traniandriabarletta.it","tranibarlettaandria.it","trapani.it","trento.it","treviso.it","trieste.it","ts.it","turin.it","tv.it","ud.it","udine.it","urbino-pesaro.it","urbinopesaro.it","va.it","varese.it","vb.it","vc.it","ve.it","venezia.it","venice.it","verbania.it","vercelli.it","verona.it","vi.it","vibo-valentia.it","vibovalentia.it","vicenza.it","viterbo.it","vr.it","vs.it","vt.it","vv.it","je","co.je","net.je","org.je","*.jm","jo","com.jo","org.jo","net.jo","edu.jo","sch.jo","gov.jo","mil.jo","name.jo","jobs","jp","ac.jp","ad.jp","co.jp","ed.jp","go.jp","gr.jp","lg.jp","ne.jp","or.jp","aichi.jp","akita.jp","aomori.jp","chiba.jp","ehime.jp","fukui.jp","fukuoka.jp","fukushima.jp","gifu.jp","gunma.jp","hiroshima.jp","hokkaido.jp","hyogo.jp","ibaraki.jp","ishikawa.jp","iwate.jp","kagawa.jp","kagoshima.jp","kanagawa.jp","kochi.jp","kumamoto.jp","kyoto.jp","mie.jp","miyagi.jp","miyazaki.jp","nagano.jp","nagasaki.jp","nara.jp","niigata.jp","oita.jp","okayama.jp","okinawa.jp","osaka.jp","saga.jp","saitama.jp","shiga.jp","shimane.jp","shizuoka.jp","tochigi.jp","tokushima.jp","tokyo.jp","tottori.jp","toyama.jp","wakayama.jp","yamagata.jp","yamaguchi.jp","yamanashi.jp","栃木.jp","愛知.jp","愛媛.jp","兵庫.jp","熊本.jp","茨城.jp","北海道.jp","千葉.jp","和歌山.jp","長崎.jp","長野.jp","新潟.jp","青森.jp","静岡.jp","東京.jp","石川.jp","埼玉.jp","三重.jp","京都.jp","佐賀.jp","大分.jp","大阪.jp","奈良.jp","宮城.jp","宮崎.jp","富山.jp","山口.jp","山形.jp","山梨.jp","岩手.jp","岐阜.jp","岡山.jp","島根.jp","広島.jp","徳島.jp","沖縄.jp","滋賀.jp","神奈川.jp","福井.jp","福岡.jp","福島.jp","秋田.jp","群馬.jp","香川.jp","高知.jp","鳥取.jp","鹿児島.jp","*.kawasaki.jp","*.kitakyushu.jp","*.kobe.jp","*.nagoya.jp","*.sapporo.jp","*.sendai.jp","*.yokohama.jp","!city.kawasaki.jp","!city.kitakyushu.jp","!city.kobe.jp","!city.nagoya.jp","!city.sapporo.jp","!city.sendai.jp","!city.yokohama.jp","aisai.aichi.jp","ama.aichi.jp","anjo.aichi.jp","asuke.aichi.jp","chiryu.aichi.jp","chita.aichi.jp","fuso.aichi.jp","gamagori.aichi.jp","handa.aichi.jp","hazu.aichi.jp","hekinan.aichi.jp","higashiura.aichi.jp","ichinomiya.aichi.jp","inazawa.aichi.jp","inuyama.aichi.jp","isshiki.aichi.jp","iwakura.aichi.jp","kanie.aichi.jp","kariya.aichi.jp","kasugai.aichi.jp","kira.aichi.jp","kiyosu.aichi.jp","komaki.aichi.jp","konan.aichi.jp","kota.aichi.jp","mihama.aichi.jp","miyoshi.aichi.jp","nishio.aichi.jp","nisshin.aichi.jp","obu.aichi.jp","oguchi.aichi.jp","oharu.aichi.jp","okazaki.aichi.jp","owariasahi.aichi.jp","seto.aichi.jp","shikatsu.aichi.jp","shinshiro.aichi.jp","shitara.aichi.jp","tahara.aichi.jp","takahama.aichi.jp","tobishima.aichi.jp","toei.aichi.jp","togo.aichi.jp","tokai.aichi.jp","tokoname.aichi.jp","toyoake.aichi.jp","toyohashi.aichi.jp","toyokawa.aichi.jp","toyone.aichi.jp","toyota.aichi.jp","tsushima.aichi.jp","yatomi.aichi.jp","akita.akita.jp","daisen.akita.jp","fujisato.akita.jp","gojome.akita.jp","hachirogata.akita.jp","happou.akita.jp","higashinaruse.akita.jp","honjo.akita.jp","honjyo.akita.jp","ikawa.akita.jp","kamikoani.akita.jp","kamioka.akita.jp","katagami.akita.jp","kazuno.akita.jp","kitaakita.akita.jp","kosaka.akita.jp","kyowa.akita.jp","misato.akita.jp","mitane.akita.jp","moriyoshi.akita.jp","nikaho.akita.jp","noshiro.akita.jp","odate.akita.jp","oga.akita.jp","ogata.akita.jp","semboku.akita.jp","yokote.akita.jp","yurihonjo.akita.jp","aomori.aomori.jp","gonohe.aomori.jp","hachinohe.aomori.jp","hashikami.aomori.jp","hiranai.aomori.jp","hirosaki.aomori.jp","itayanagi.aomori.jp","kuroishi.aomori.jp","misawa.aomori.jp","mutsu.aomori.jp","nakadomari.aomori.jp","noheji.aomori.jp","oirase.aomori.jp","owani.aomori.jp","rokunohe.aomori.jp","sannohe.aomori.jp","shichinohe.aomori.jp","shingo.aomori.jp","takko.aomori.jp","towada.aomori.jp","tsugaru.aomori.jp","tsuruta.aomori.jp","abiko.chiba.jp","asahi.chiba.jp","chonan.chiba.jp","chosei.chiba.jp","choshi.chiba.jp","chuo.chiba.jp","funabashi.chiba.jp","futtsu.chiba.jp","hanamigawa.chiba.jp","ichihara.chiba.jp","ichikawa.chiba.jp","ichinomiya.chiba.jp","inzai.chiba.jp","isumi.chiba.jp","kamagaya.chiba.jp","kamogawa.chiba.jp","kashiwa.chiba.jp","katori.chiba.jp","katsuura.chiba.jp","kimitsu.chiba.jp","kisarazu.chiba.jp","kozaki.chiba.jp","kujukuri.chiba.jp","kyonan.chiba.jp","matsudo.chiba.jp","midori.chiba.jp","mihama.chiba.jp","minamiboso.chiba.jp","mobara.chiba.jp","mutsuzawa.chiba.jp","nagara.chiba.jp","nagareyama.chiba.jp","narashino.chiba.jp","narita.chiba.jp","noda.chiba.jp","oamishirasato.chiba.jp","omigawa.chiba.jp","onjuku.chiba.jp","otaki.chiba.jp","sakae.chiba.jp","sakura.chiba.jp","shimofusa.chiba.jp","shirako.chiba.jp","shiroi.chiba.jp","shisui.chiba.jp","sodegaura.chiba.jp","sosa.chiba.jp","tako.chiba.jp","tateyama.chiba.jp","togane.chiba.jp","tohnosho.chiba.jp","tomisato.chiba.jp","urayasu.chiba.jp","yachimata.chiba.jp","yachiyo.chiba.jp","yokaichiba.chiba.jp","yokoshibahikari.chiba.jp","yotsukaido.chiba.jp","ainan.ehime.jp","honai.ehime.jp","ikata.ehime.jp","imabari.ehime.jp","iyo.ehime.jp","kamijima.ehime.jp","kihoku.ehime.jp","kumakogen.ehime.jp","masaki.ehime.jp","matsuno.ehime.jp","matsuyama.ehime.jp","namikata.ehime.jp","niihama.ehime.jp","ozu.ehime.jp","saijo.ehime.jp","seiyo.ehime.jp","shikokuchuo.ehime.jp","tobe.ehime.jp","toon.ehime.jp","uchiko.ehime.jp","uwajima.ehime.jp","yawatahama.ehime.jp","echizen.fukui.jp","eiheiji.fukui.jp","fukui.fukui.jp","ikeda.fukui.jp","katsuyama.fukui.jp","mihama.fukui.jp","minamiechizen.fukui.jp","obama.fukui.jp","ohi.fukui.jp","ono.fukui.jp","sabae.fukui.jp","sakai.fukui.jp","takahama.fukui.jp","tsuruga.fukui.jp","wakasa.fukui.jp","ashiya.fukuoka.jp","buzen.fukuoka.jp","chikugo.fukuoka.jp","chikuho.fukuoka.jp","chikujo.fukuoka.jp","chikushino.fukuoka.jp","chikuzen.fukuoka.jp","chuo.fukuoka.jp","dazaifu.fukuoka.jp","fukuchi.fukuoka.jp","hakata.fukuoka.jp","higashi.fukuoka.jp","hirokawa.fukuoka.jp","hisayama.fukuoka.jp","iizuka.fukuoka.jp","inatsuki.fukuoka.jp","kaho.fukuoka.jp","kasuga.fukuoka.jp","kasuya.fukuoka.jp","kawara.fukuoka.jp","keisen.fukuoka.jp","koga.fukuoka.jp","kurate.fukuoka.jp","kurogi.fukuoka.jp","kurume.fukuoka.jp","minami.fukuoka.jp","miyako.fukuoka.jp","miyama.fukuoka.jp","miyawaka.fukuoka.jp","mizumaki.fukuoka.jp","munakata.fukuoka.jp","nakagawa.fukuoka.jp","nakama.fukuoka.jp","nishi.fukuoka.jp","nogata.fukuoka.jp","ogori.fukuoka.jp","okagaki.fukuoka.jp","okawa.fukuoka.jp","oki.fukuoka.jp","omuta.fukuoka.jp","onga.fukuoka.jp","onojo.fukuoka.jp","oto.fukuoka.jp","saigawa.fukuoka.jp","sasaguri.fukuoka.jp","shingu.fukuoka.jp","shinyoshitomi.fukuoka.jp","shonai.fukuoka.jp","soeda.fukuoka.jp","sue.fukuoka.jp","tachiarai.fukuoka.jp","tagawa.fukuoka.jp","takata.fukuoka.jp","toho.fukuoka.jp","toyotsu.fukuoka.jp","tsuiki.fukuoka.jp","ukiha.fukuoka.jp","umi.fukuoka.jp","usui.fukuoka.jp","yamada.fukuoka.jp","yame.fukuoka.jp","yanagawa.fukuoka.jp","yukuhashi.fukuoka.jp","aizubange.fukushima.jp","aizumisato.fukushima.jp","aizuwakamatsu.fukushima.jp","asakawa.fukushima.jp","bandai.fukushima.jp","date.fukushima.jp","fukushima.fukushima.jp","furudono.fukushima.jp","futaba.fukushima.jp","hanawa.fukushima.jp","higashi.fukushima.jp","hirata.fukushima.jp","hirono.fukushima.jp","iitate.fukushima.jp","inawashiro.fukushima.jp","ishikawa.fukushima.jp","iwaki.fukushima.jp","izumizaki.fukushima.jp","kagamiishi.fukushima.jp","kaneyama.fukushima.jp","kawamata.fukushima.jp","kitakata.fukushima.jp","kitashiobara.fukushima.jp","koori.fukushima.jp","koriyama.fukushima.jp","kunimi.fukushima.jp","miharu.fukushima.jp","mishima.fukushima.jp","namie.fukushima.jp","nango.fukushima.jp","nishiaizu.fukushima.jp","nishigo.fukushima.jp","okuma.fukushima.jp","omotego.fukushima.jp","ono.fukushima.jp","otama.fukushima.jp","samegawa.fukushima.jp","shimogo.fukushima.jp","shirakawa.fukushima.jp","showa.fukushima.jp","soma.fukushima.jp","sukagawa.fukushima.jp","taishin.fukushima.jp","tamakawa.fukushima.jp","tanagura.fukushima.jp","tenei.fukushima.jp","yabuki.fukushima.jp","yamato.fukushima.jp","yamatsuri.fukushima.jp","yanaizu.fukushima.jp","yugawa.fukushima.jp","anpachi.gifu.jp","ena.gifu.jp","gifu.gifu.jp","ginan.gifu.jp","godo.gifu.jp","gujo.gifu.jp","hashima.gifu.jp","hichiso.gifu.jp","hida.gifu.jp","higashishirakawa.gifu.jp","ibigawa.gifu.jp","ikeda.gifu.jp","kakamigahara.gifu.jp","kani.gifu.jp","kasahara.gifu.jp","kasamatsu.gifu.jp","kawaue.gifu.jp","kitagata.gifu.jp","mino.gifu.jp","minokamo.gifu.jp","mitake.gifu.jp","mizunami.gifu.jp","motosu.gifu.jp","nakatsugawa.gifu.jp","ogaki.gifu.jp","sakahogi.gifu.jp","seki.gifu.jp","sekigahara.gifu.jp","shirakawa.gifu.jp","tajimi.gifu.jp","takayama.gifu.jp","tarui.gifu.jp","toki.gifu.jp","tomika.gifu.jp","wanouchi.gifu.jp","yamagata.gifu.jp","yaotsu.gifu.jp","yoro.gifu.jp","annaka.gunma.jp","chiyoda.gunma.jp","fujioka.gunma.jp","higashiagatsuma.gunma.jp","isesaki.gunma.jp","itakura.gunma.jp","kanna.gunma.jp","kanra.gunma.jp","katashina.gunma.jp","kawaba.gunma.jp","kiryu.gunma.jp","kusatsu.gunma.jp","maebashi.gunma.jp","meiwa.gunma.jp","midori.gunma.jp","minakami.gunma.jp","naganohara.gunma.jp","nakanojo.gunma.jp","nanmoku.gunma.jp","numata.gunma.jp","oizumi.gunma.jp","ora.gunma.jp","ota.gunma.jp","shibukawa.gunma.jp","shimonita.gunma.jp","shinto.gunma.jp","showa.gunma.jp","takasaki.gunma.jp","takayama.gunma.jp","tamamura.gunma.jp","tatebayashi.gunma.jp","tomioka.gunma.jp","tsukiyono.gunma.jp","tsumagoi.gunma.jp","ueno.gunma.jp","yoshioka.gunma.jp","asaminami.hiroshima.jp","daiwa.hiroshima.jp","etajima.hiroshima.jp","fuchu.hiroshima.jp","fukuyama.hiroshima.jp","hatsukaichi.hiroshima.jp","higashihiroshima.hiroshima.jp","hongo.hiroshima.jp","jinsekikogen.hiroshima.jp","kaita.hiroshima.jp","kui.hiroshima.jp","kumano.hiroshima.jp","kure.hiroshima.jp","mihara.hiroshima.jp","miyoshi.hiroshima.jp","naka.hiroshima.jp","onomichi.hiroshima.jp","osakikamijima.hiroshima.jp","otake.hiroshima.jp","saka.hiroshima.jp","sera.hiroshima.jp","seranishi.hiroshima.jp","shinichi.hiroshima.jp","shobara.hiroshima.jp","takehara.hiroshima.jp","abashiri.hokkaido.jp","abira.hokkaido.jp","aibetsu.hokkaido.jp","akabira.hokkaido.jp","akkeshi.hokkaido.jp","asahikawa.hokkaido.jp","ashibetsu.hokkaido.jp","ashoro.hokkaido.jp","assabu.hokkaido.jp","atsuma.hokkaido.jp","bibai.hokkaido.jp","biei.hokkaido.jp","bifuka.hokkaido.jp","bihoro.hokkaido.jp","biratori.hokkaido.jp","chippubetsu.hokkaido.jp","chitose.hokkaido.jp","date.hokkaido.jp","ebetsu.hokkaido.jp","embetsu.hokkaido.jp","eniwa.hokkaido.jp","erimo.hokkaido.jp","esan.hokkaido.jp","esashi.hokkaido.jp","fukagawa.hokkaido.jp","fukushima.hokkaido.jp","furano.hokkaido.jp","furubira.hokkaido.jp","haboro.hokkaido.jp","hakodate.hokkaido.jp","hamatonbetsu.hokkaido.jp","hidaka.hokkaido.jp","higashikagura.hokkaido.jp","higashikawa.hokkaido.jp","hiroo.hokkaido.jp","hokuryu.hokkaido.jp","hokuto.hokkaido.jp","honbetsu.hokkaido.jp","horokanai.hokkaido.jp","horonobe.hokkaido.jp","ikeda.hokkaido.jp","imakane.hokkaido.jp","ishikari.hokkaido.jp","iwamizawa.hokkaido.jp","iwanai.hokkaido.jp","kamifurano.hokkaido.jp","kamikawa.hokkaido.jp","kamishihoro.hokkaido.jp","kamisunagawa.hokkaido.jp","kamoenai.hokkaido.jp","kayabe.hokkaido.jp","kembuchi.hokkaido.jp","kikonai.hokkaido.jp","kimobetsu.hokkaido.jp","kitahiroshima.hokkaido.jp","kitami.hokkaido.jp","kiyosato.hokkaido.jp","koshimizu.hokkaido.jp","kunneppu.hokkaido.jp","kuriyama.hokkaido.jp","kuromatsunai.hokkaido.jp","kushiro.hokkaido.jp","kutchan.hokkaido.jp","kyowa.hokkaido.jp","mashike.hokkaido.jp","matsumae.hokkaido.jp","mikasa.hokkaido.jp","minamifurano.hokkaido.jp","mombetsu.hokkaido.jp","moseushi.hokkaido.jp","mukawa.hokkaido.jp","muroran.hokkaido.jp","naie.hokkaido.jp","nakagawa.hokkaido.jp","nakasatsunai.hokkaido.jp","nakatombetsu.hokkaido.jp","nanae.hokkaido.jp","nanporo.hokkaido.jp","nayoro.hokkaido.jp","nemuro.hokkaido.jp","niikappu.hokkaido.jp","niki.hokkaido.jp","nishiokoppe.hokkaido.jp","noboribetsu.hokkaido.jp","numata.hokkaido.jp","obihiro.hokkaido.jp","obira.hokkaido.jp","oketo.hokkaido.jp","okoppe.hokkaido.jp","otaru.hokkaido.jp","otobe.hokkaido.jp","otofuke.hokkaido.jp","otoineppu.hokkaido.jp","oumu.hokkaido.jp","ozora.hokkaido.jp","pippu.hokkaido.jp","rankoshi.hokkaido.jp","rebun.hokkaido.jp","rikubetsu.hokkaido.jp","rishiri.hokkaido.jp","rishirifuji.hokkaido.jp","saroma.hokkaido.jp","sarufutsu.hokkaido.jp","shakotan.hokkaido.jp","shari.hokkaido.jp","shibecha.hokkaido.jp","shibetsu.hokkaido.jp","shikabe.hokkaido.jp","shikaoi.hokkaido.jp","shimamaki.hokkaido.jp","shimizu.hokkaido.jp","shimokawa.hokkaido.jp","shinshinotsu.hokkaido.jp","shintoku.hokkaido.jp","shiranuka.hokkaido.jp","shiraoi.hokkaido.jp","shiriuchi.hokkaido.jp","sobetsu.hokkaido.jp","sunagawa.hokkaido.jp","taiki.hokkaido.jp","takasu.hokkaido.jp","takikawa.hokkaido.jp","takinoue.hokkaido.jp","teshikaga.hokkaido.jp","tobetsu.hokkaido.jp","tohma.hokkaido.jp","tomakomai.hokkaido.jp","tomari.hokkaido.jp","toya.hokkaido.jp","toyako.hokkaido.jp","toyotomi.hokkaido.jp","toyoura.hokkaido.jp","tsubetsu.hokkaido.jp","tsukigata.hokkaido.jp","urakawa.hokkaido.jp","urausu.hokkaido.jp","uryu.hokkaido.jp","utashinai.hokkaido.jp","wakkanai.hokkaido.jp","wassamu.hokkaido.jp","yakumo.hokkaido.jp","yoichi.hokkaido.jp","aioi.hyogo.jp","akashi.hyogo.jp","ako.hyogo.jp","amagasaki.hyogo.jp","aogaki.hyogo.jp","asago.hyogo.jp","ashiya.hyogo.jp","awaji.hyogo.jp","fukusaki.hyogo.jp","goshiki.hyogo.jp","harima.hyogo.jp","himeji.hyogo.jp","ichikawa.hyogo.jp","inagawa.hyogo.jp","itami.hyogo.jp","kakogawa.hyogo.jp","kamigori.hyogo.jp","kamikawa.hyogo.jp","kasai.hyogo.jp","kasuga.hyogo.jp","kawanishi.hyogo.jp","miki.hyogo.jp","minamiawaji.hyogo.jp","nishinomiya.hyogo.jp","nishiwaki.hyogo.jp","ono.hyogo.jp","sanda.hyogo.jp","sannan.hyogo.jp","sasayama.hyogo.jp","sayo.hyogo.jp","shingu.hyogo.jp","shinonsen.hyogo.jp","shiso.hyogo.jp","sumoto.hyogo.jp","taishi.hyogo.jp","taka.hyogo.jp","takarazuka.hyogo.jp","takasago.hyogo.jp","takino.hyogo.jp","tamba.hyogo.jp","tatsuno.hyogo.jp","toyooka.hyogo.jp","yabu.hyogo.jp","yashiro.hyogo.jp","yoka.hyogo.jp","yokawa.hyogo.jp","ami.ibaraki.jp","asahi.ibaraki.jp","bando.ibaraki.jp","chikusei.ibaraki.jp","daigo.ibaraki.jp","fujishiro.ibaraki.jp","hitachi.ibaraki.jp","hitachinaka.ibaraki.jp","hitachiomiya.ibaraki.jp","hitachiota.ibaraki.jp","ibaraki.ibaraki.jp","ina.ibaraki.jp","inashiki.ibaraki.jp","itako.ibaraki.jp","iwama.ibaraki.jp","joso.ibaraki.jp","kamisu.ibaraki.jp","kasama.ibaraki.jp","kashima.ibaraki.jp","kasumigaura.ibaraki.jp","koga.ibaraki.jp","miho.ibaraki.jp","mito.ibaraki.jp","moriya.ibaraki.jp","naka.ibaraki.jp","namegata.ibaraki.jp","oarai.ibaraki.jp","ogawa.ibaraki.jp","omitama.ibaraki.jp","ryugasaki.ibaraki.jp","sakai.ibaraki.jp","sakuragawa.ibaraki.jp","shimodate.ibaraki.jp","shimotsuma.ibaraki.jp","shirosato.ibaraki.jp","sowa.ibaraki.jp","suifu.ibaraki.jp","takahagi.ibaraki.jp","tamatsukuri.ibaraki.jp","tokai.ibaraki.jp","tomobe.ibaraki.jp","tone.ibaraki.jp","toride.ibaraki.jp","tsuchiura.ibaraki.jp","tsukuba.ibaraki.jp","uchihara.ibaraki.jp","ushiku.ibaraki.jp","yachiyo.ibaraki.jp","yamagata.ibaraki.jp","yawara.ibaraki.jp","yuki.ibaraki.jp","anamizu.ishikawa.jp","hakui.ishikawa.jp","hakusan.ishikawa.jp","kaga.ishikawa.jp","kahoku.ishikawa.jp","kanazawa.ishikawa.jp","kawakita.ishikawa.jp","komatsu.ishikawa.jp","nakanoto.ishikawa.jp","nanao.ishikawa.jp","nomi.ishikawa.jp","nonoichi.ishikawa.jp","noto.ishikawa.jp","shika.ishikawa.jp","suzu.ishikawa.jp","tsubata.ishikawa.jp","tsurugi.ishikawa.jp","uchinada.ishikawa.jp","wajima.ishikawa.jp","fudai.iwate.jp","fujisawa.iwate.jp","hanamaki.iwate.jp","hiraizumi.iwate.jp","hirono.iwate.jp","ichinohe.iwate.jp","ichinoseki.iwate.jp","iwaizumi.iwate.jp","iwate.iwate.jp","joboji.iwate.jp","kamaishi.iwate.jp","kanegasaki.iwate.jp","karumai.iwate.jp","kawai.iwate.jp","kitakami.iwate.jp","kuji.iwate.jp","kunohe.iwate.jp","kuzumaki.iwate.jp","miyako.iwate.jp","mizusawa.iwate.jp","morioka.iwate.jp","ninohe.iwate.jp","noda.iwate.jp","ofunato.iwate.jp","oshu.iwate.jp","otsuchi.iwate.jp","rikuzentakata.iwate.jp","shiwa.iwate.jp","shizukuishi.iwate.jp","sumita.iwate.jp","tanohata.iwate.jp","tono.iwate.jp","yahaba.iwate.jp","yamada.iwate.jp","ayagawa.kagawa.jp","higashikagawa.kagawa.jp","kanonji.kagawa.jp","kotohira.kagawa.jp","manno.kagawa.jp","marugame.kagawa.jp","mitoyo.kagawa.jp","naoshima.kagawa.jp","sanuki.kagawa.jp","tadotsu.kagawa.jp","takamatsu.kagawa.jp","tonosho.kagawa.jp","uchinomi.kagawa.jp","utazu.kagawa.jp","zentsuji.kagawa.jp","akune.kagoshima.jp","amami.kagoshima.jp","hioki.kagoshima.jp","isa.kagoshima.jp","isen.kagoshima.jp","izumi.kagoshima.jp","kagoshima.kagoshima.jp","kanoya.kagoshima.jp","kawanabe.kagoshima.jp","kinko.kagoshima.jp","kouyama.kagoshima.jp","makurazaki.kagoshima.jp","matsumoto.kagoshima.jp","minamitane.kagoshima.jp","nakatane.kagoshima.jp","nishinoomote.kagoshima.jp","satsumasendai.kagoshima.jp","soo.kagoshima.jp","tarumizu.kagoshima.jp","yusui.kagoshima.jp","aikawa.kanagawa.jp","atsugi.kanagawa.jp","ayase.kanagawa.jp","chigasaki.kanagawa.jp","ebina.kanagawa.jp","fujisawa.kanagawa.jp","hadano.kanagawa.jp","hakone.kanagawa.jp","hiratsuka.kanagawa.jp","isehara.kanagawa.jp","kaisei.kanagawa.jp","kamakura.kanagawa.jp","kiyokawa.kanagawa.jp","matsuda.kanagawa.jp","minamiashigara.kanagawa.jp","miura.kanagawa.jp","nakai.kanagawa.jp","ninomiya.kanagawa.jp","odawara.kanagawa.jp","oi.kanagawa.jp","oiso.kanagawa.jp","sagamihara.kanagawa.jp","samukawa.kanagawa.jp","tsukui.kanagawa.jp","yamakita.kanagawa.jp","yamato.kanagawa.jp","yokosuka.kanagawa.jp","yugawara.kanagawa.jp","zama.kanagawa.jp","zushi.kanagawa.jp","aki.kochi.jp","geisei.kochi.jp","hidaka.kochi.jp","higashitsuno.kochi.jp","ino.kochi.jp","kagami.kochi.jp","kami.kochi.jp","kitagawa.kochi.jp","kochi.kochi.jp","mihara.kochi.jp","motoyama.kochi.jp","muroto.kochi.jp","nahari.kochi.jp","nakamura.kochi.jp","nankoku.kochi.jp","nishitosa.kochi.jp","niyodogawa.kochi.jp","ochi.kochi.jp","okawa.kochi.jp","otoyo.kochi.jp","otsuki.kochi.jp","sakawa.kochi.jp","sukumo.kochi.jp","susaki.kochi.jp","tosa.kochi.jp","tosashimizu.kochi.jp","toyo.kochi.jp","tsuno.kochi.jp","umaji.kochi.jp","yasuda.kochi.jp","yusuhara.kochi.jp","amakusa.kumamoto.jp","arao.kumamoto.jp","aso.kumamoto.jp","choyo.kumamoto.jp","gyokuto.kumamoto.jp","kamiamakusa.kumamoto.jp","kikuchi.kumamoto.jp","kumamoto.kumamoto.jp","mashiki.kumamoto.jp","mifune.kumamoto.jp","minamata.kumamoto.jp","minamioguni.kumamoto.jp","nagasu.kumamoto.jp","nishihara.kumamoto.jp","oguni.kumamoto.jp","ozu.kumamoto.jp","sumoto.kumamoto.jp","takamori.kumamoto.jp","uki.kumamoto.jp","uto.kumamoto.jp","yamaga.kumamoto.jp","yamato.kumamoto.jp","yatsushiro.kumamoto.jp","ayabe.kyoto.jp","fukuchiyama.kyoto.jp","higashiyama.kyoto.jp","ide.kyoto.jp","ine.kyoto.jp","joyo.kyoto.jp","kameoka.kyoto.jp","kamo.kyoto.jp","kita.kyoto.jp","kizu.kyoto.jp","kumiyama.kyoto.jp","kyotamba.kyoto.jp","kyotanabe.kyoto.jp","kyotango.kyoto.jp","maizuru.kyoto.jp","minami.kyoto.jp","minamiyamashiro.kyoto.jp","miyazu.kyoto.jp","muko.kyoto.jp","nagaokakyo.kyoto.jp","nakagyo.kyoto.jp","nantan.kyoto.jp","oyamazaki.kyoto.jp","sakyo.kyoto.jp","seika.kyoto.jp","tanabe.kyoto.jp","uji.kyoto.jp","ujitawara.kyoto.jp","wazuka.kyoto.jp","yamashina.kyoto.jp","yawata.kyoto.jp","asahi.mie.jp","inabe.mie.jp","ise.mie.jp","kameyama.mie.jp","kawagoe.mie.jp","kiho.mie.jp","kisosaki.mie.jp","kiwa.mie.jp","komono.mie.jp","kumano.mie.jp","kuwana.mie.jp","matsusaka.mie.jp","meiwa.mie.jp","mihama.mie.jp","minamiise.mie.jp","misugi.mie.jp","miyama.mie.jp","nabari.mie.jp","shima.mie.jp","suzuka.mie.jp","tado.mie.jp","taiki.mie.jp","taki.mie.jp","tamaki.mie.jp","toba.mie.jp","tsu.mie.jp","udono.mie.jp","ureshino.mie.jp","watarai.mie.jp","yokkaichi.mie.jp","furukawa.miyagi.jp","higashimatsushima.miyagi.jp","ishinomaki.miyagi.jp","iwanuma.miyagi.jp","kakuda.miyagi.jp","kami.miyagi.jp","kawasaki.miyagi.jp","marumori.miyagi.jp","matsushima.miyagi.jp","minamisanriku.miyagi.jp","misato.miyagi.jp","murata.miyagi.jp","natori.miyagi.jp","ogawara.miyagi.jp","ohira.miyagi.jp","onagawa.miyagi.jp","osaki.miyagi.jp","rifu.miyagi.jp","semine.miyagi.jp","shibata.miyagi.jp","shichikashuku.miyagi.jp","shikama.miyagi.jp","shiogama.miyagi.jp","shiroishi.miyagi.jp","tagajo.miyagi.jp","taiwa.miyagi.jp","tome.miyagi.jp","tomiya.miyagi.jp","wakuya.miyagi.jp","watari.miyagi.jp","yamamoto.miyagi.jp","zao.miyagi.jp","aya.miyazaki.jp","ebino.miyazaki.jp","gokase.miyazaki.jp","hyuga.miyazaki.jp","kadogawa.miyazaki.jp","kawaminami.miyazaki.jp","kijo.miyazaki.jp","kitagawa.miyazaki.jp","kitakata.miyazaki.jp","kitaura.miyazaki.jp","kobayashi.miyazaki.jp","kunitomi.miyazaki.jp","kushima.miyazaki.jp","mimata.miyazaki.jp","miyakonojo.miyazaki.jp","miyazaki.miyazaki.jp","morotsuka.miyazaki.jp","nichinan.miyazaki.jp","nishimera.miyazaki.jp","nobeoka.miyazaki.jp","saito.miyazaki.jp","shiiba.miyazaki.jp","shintomi.miyazaki.jp","takaharu.miyazaki.jp","takanabe.miyazaki.jp","takazaki.miyazaki.jp","tsuno.miyazaki.jp","achi.nagano.jp","agematsu.nagano.jp","anan.nagano.jp","aoki.nagano.jp","asahi.nagano.jp","azumino.nagano.jp","chikuhoku.nagano.jp","chikuma.nagano.jp","chino.nagano.jp","fujimi.nagano.jp","hakuba.nagano.jp","hara.nagano.jp","hiraya.nagano.jp","iida.nagano.jp","iijima.nagano.jp","iiyama.nagano.jp","iizuna.nagano.jp","ikeda.nagano.jp","ikusaka.nagano.jp","ina.nagano.jp","karuizawa.nagano.jp","kawakami.nagano.jp","kiso.nagano.jp","kisofukushima.nagano.jp","kitaaiki.nagano.jp","komagane.nagano.jp","komoro.nagano.jp","matsukawa.nagano.jp","matsumoto.nagano.jp","miasa.nagano.jp","minamiaiki.nagano.jp","minamimaki.nagano.jp","minamiminowa.nagano.jp","minowa.nagano.jp","miyada.nagano.jp","miyota.nagano.jp","mochizuki.nagano.jp","nagano.nagano.jp","nagawa.nagano.jp","nagiso.nagano.jp","nakagawa.nagano.jp","nakano.nagano.jp","nozawaonsen.nagano.jp","obuse.nagano.jp","ogawa.nagano.jp","okaya.nagano.jp","omachi.nagano.jp","omi.nagano.jp","ookuwa.nagano.jp","ooshika.nagano.jp","otaki.nagano.jp","otari.nagano.jp","sakae.nagano.jp","sakaki.nagano.jp","saku.nagano.jp","sakuho.nagano.jp","shimosuwa.nagano.jp","shinanomachi.nagano.jp","shiojiri.nagano.jp","suwa.nagano.jp","suzaka.nagano.jp","takagi.nagano.jp","takamori.nagano.jp","takayama.nagano.jp","tateshina.nagano.jp","tatsuno.nagano.jp","togakushi.nagano.jp","togura.nagano.jp","tomi.nagano.jp","ueda.nagano.jp","wada.nagano.jp","yamagata.nagano.jp","yamanouchi.nagano.jp","yasaka.nagano.jp","yasuoka.nagano.jp","chijiwa.nagasaki.jp","futsu.nagasaki.jp","goto.nagasaki.jp","hasami.nagasaki.jp","hirado.nagasaki.jp","iki.nagasaki.jp","isahaya.nagasaki.jp","kawatana.nagasaki.jp","kuchinotsu.nagasaki.jp","matsuura.nagasaki.jp","nagasaki.nagasaki.jp","obama.nagasaki.jp","omura.nagasaki.jp","oseto.nagasaki.jp","saikai.nagasaki.jp","sasebo.nagasaki.jp","seihi.nagasaki.jp","shimabara.nagasaki.jp","shinkamigoto.nagasaki.jp","togitsu.nagasaki.jp","tsushima.nagasaki.jp","unzen.nagasaki.jp","ando.nara.jp","gose.nara.jp","heguri.nara.jp","higashiyoshino.nara.jp","ikaruga.nara.jp","ikoma.nara.jp","kamikitayama.nara.jp","kanmaki.nara.jp","kashiba.nara.jp","kashihara.nara.jp","katsuragi.nara.jp","kawai.nara.jp","kawakami.nara.jp","kawanishi.nara.jp","koryo.nara.jp","kurotaki.nara.jp","mitsue.nara.jp","miyake.nara.jp","nara.nara.jp","nosegawa.nara.jp","oji.nara.jp","ouda.nara.jp","oyodo.nara.jp","sakurai.nara.jp","sango.nara.jp","shimoichi.nara.jp","shimokitayama.nara.jp","shinjo.nara.jp","soni.nara.jp","takatori.nara.jp","tawaramoto.nara.jp","tenkawa.nara.jp","tenri.nara.jp","uda.nara.jp","yamatokoriyama.nara.jp","yamatotakada.nara.jp","yamazoe.nara.jp","yoshino.nara.jp","aga.niigata.jp","agano.niigata.jp","gosen.niigata.jp","itoigawa.niigata.jp","izumozaki.niigata.jp","joetsu.niigata.jp","kamo.niigata.jp","kariwa.niigata.jp","kashiwazaki.niigata.jp","minamiuonuma.niigata.jp","mitsuke.niigata.jp","muika.niigata.jp","murakami.niigata.jp","myoko.niigata.jp","nagaoka.niigata.jp","niigata.niigata.jp","ojiya.niigata.jp","omi.niigata.jp","sado.niigata.jp","sanjo.niigata.jp","seiro.niigata.jp","seirou.niigata.jp","sekikawa.niigata.jp","shibata.niigata.jp","tagami.niigata.jp","tainai.niigata.jp","tochio.niigata.jp","tokamachi.niigata.jp","tsubame.niigata.jp","tsunan.niigata.jp","uonuma.niigata.jp","yahiko.niigata.jp","yoita.niigata.jp","yuzawa.niigata.jp","beppu.oita.jp","bungoono.oita.jp","bungotakada.oita.jp","hasama.oita.jp","hiji.oita.jp","himeshima.oita.jp","hita.oita.jp","kamitsue.oita.jp","kokonoe.oita.jp","kuju.oita.jp","kunisaki.oita.jp","kusu.oita.jp","oita.oita.jp","saiki.oita.jp","taketa.oita.jp","tsukumi.oita.jp","usa.oita.jp","usuki.oita.jp","yufu.oita.jp","akaiwa.okayama.jp","asakuchi.okayama.jp","bizen.okayama.jp","hayashima.okayama.jp","ibara.okayama.jp","kagamino.okayama.jp","kasaoka.okayama.jp","kibichuo.okayama.jp","kumenan.okayama.jp","kurashiki.okayama.jp","maniwa.okayama.jp","misaki.okayama.jp","nagi.okayama.jp","niimi.okayama.jp","nishiawakura.okayama.jp","okayama.okayama.jp","satosho.okayama.jp","setouchi.okayama.jp","shinjo.okayama.jp","shoo.okayama.jp","soja.okayama.jp","takahashi.okayama.jp","tamano.okayama.jp","tsuyama.okayama.jp","wake.okayama.jp","yakage.okayama.jp","aguni.okinawa.jp","ginowan.okinawa.jp","ginoza.okinawa.jp","gushikami.okinawa.jp","haebaru.okinawa.jp","higashi.okinawa.jp","hirara.okinawa.jp","iheya.okinawa.jp","ishigaki.okinawa.jp","ishikawa.okinawa.jp","itoman.okinawa.jp","izena.okinawa.jp","kadena.okinawa.jp","kin.okinawa.jp","kitadaito.okinawa.jp","kitanakagusuku.okinawa.jp","kumejima.okinawa.jp","kunigami.okinawa.jp","minamidaito.okinawa.jp","motobu.okinawa.jp","nago.okinawa.jp","naha.okinawa.jp","nakagusuku.okinawa.jp","nakijin.okinawa.jp","nanjo.okinawa.jp","nishihara.okinawa.jp","ogimi.okinawa.jp","okinawa.okinawa.jp","onna.okinawa.jp","shimoji.okinawa.jp","taketomi.okinawa.jp","tarama.okinawa.jp","tokashiki.okinawa.jp","tomigusuku.okinawa.jp","tonaki.okinawa.jp","urasoe.okinawa.jp","uruma.okinawa.jp","yaese.okinawa.jp","yomitan.okinawa.jp","yonabaru.okinawa.jp","yonaguni.okinawa.jp","zamami.okinawa.jp","abeno.osaka.jp","chihayaakasaka.osaka.jp","chuo.osaka.jp","daito.osaka.jp","fujiidera.osaka.jp","habikino.osaka.jp","hannan.osaka.jp","higashiosaka.osaka.jp","higashisumiyoshi.osaka.jp","higashiyodogawa.osaka.jp","hirakata.osaka.jp","ibaraki.osaka.jp","ikeda.osaka.jp","izumi.osaka.jp","izumiotsu.osaka.jp","izumisano.osaka.jp","kadoma.osaka.jp","kaizuka.osaka.jp","kanan.osaka.jp","kashiwara.osaka.jp","katano.osaka.jp","kawachinagano.osaka.jp","kishiwada.osaka.jp","kita.osaka.jp","kumatori.osaka.jp","matsubara.osaka.jp","minato.osaka.jp","minoh.osaka.jp","misaki.osaka.jp","moriguchi.osaka.jp","neyagawa.osaka.jp","nishi.osaka.jp","nose.osaka.jp","osakasayama.osaka.jp","sakai.osaka.jp","sayama.osaka.jp","sennan.osaka.jp","settsu.osaka.jp","shijonawate.osaka.jp","shimamoto.osaka.jp","suita.osaka.jp","tadaoka.osaka.jp","taishi.osaka.jp","tajiri.osaka.jp","takaishi.osaka.jp","takatsuki.osaka.jp","tondabayashi.osaka.jp","toyonaka.osaka.jp","toyono.osaka.jp","yao.osaka.jp","ariake.saga.jp","arita.saga.jp","fukudomi.saga.jp","genkai.saga.jp","hamatama.saga.jp","hizen.saga.jp","imari.saga.jp","kamimine.saga.jp","kanzaki.saga.jp","karatsu.saga.jp","kashima.saga.jp","kitagata.saga.jp","kitahata.saga.jp","kiyama.saga.jp","kouhoku.saga.jp","kyuragi.saga.jp","nishiarita.saga.jp","ogi.saga.jp","omachi.saga.jp","ouchi.saga.jp","saga.saga.jp","shiroishi.saga.jp","taku.saga.jp","tara.saga.jp","tosu.saga.jp","yoshinogari.saga.jp","arakawa.saitama.jp","asaka.saitama.jp","chichibu.saitama.jp","fujimi.saitama.jp","fujimino.saitama.jp","fukaya.saitama.jp","hanno.saitama.jp","hanyu.saitama.jp","hasuda.saitama.jp","hatogaya.saitama.jp","hatoyama.saitama.jp","hidaka.saitama.jp","higashichichibu.saitama.jp","higashimatsuyama.saitama.jp","honjo.saitama.jp","ina.saitama.jp","iruma.saitama.jp","iwatsuki.saitama.jp","kamiizumi.saitama.jp","kamikawa.saitama.jp","kamisato.saitama.jp","kasukabe.saitama.jp","kawagoe.saitama.jp","kawaguchi.saitama.jp","kawajima.saitama.jp","kazo.saitama.jp","kitamoto.saitama.jp","koshigaya.saitama.jp","kounosu.saitama.jp","kuki.saitama.jp","kumagaya.saitama.jp","matsubushi.saitama.jp","minano.saitama.jp","misato.saitama.jp","miyashiro.saitama.jp","miyoshi.saitama.jp","moroyama.saitama.jp","nagatoro.saitama.jp","namegawa.saitama.jp","niiza.saitama.jp","ogano.saitama.jp","ogawa.saitama.jp","ogose.saitama.jp","okegawa.saitama.jp","omiya.saitama.jp","otaki.saitama.jp","ranzan.saitama.jp","ryokami.saitama.jp","saitama.saitama.jp","sakado.saitama.jp","satte.saitama.jp","sayama.saitama.jp","shiki.saitama.jp","shiraoka.saitama.jp","soka.saitama.jp","sugito.saitama.jp","toda.saitama.jp","tokigawa.saitama.jp","tokorozawa.saitama.jp","tsurugashima.saitama.jp","urawa.saitama.jp","warabi.saitama.jp","yashio.saitama.jp","yokoze.saitama.jp","yono.saitama.jp","yorii.saitama.jp","yoshida.saitama.jp","yoshikawa.saitama.jp","yoshimi.saitama.jp","aisho.shiga.jp","gamo.shiga.jp","higashiomi.shiga.jp","hikone.shiga.jp","koka.shiga.jp","konan.shiga.jp","kosei.shiga.jp","koto.shiga.jp","kusatsu.shiga.jp","maibara.shiga.jp","moriyama.shiga.jp","nagahama.shiga.jp","nishiazai.shiga.jp","notogawa.shiga.jp","omihachiman.shiga.jp","otsu.shiga.jp","ritto.shiga.jp","ryuoh.shiga.jp","takashima.shiga.jp","takatsuki.shiga.jp","torahime.shiga.jp","toyosato.shiga.jp","yasu.shiga.jp","akagi.shimane.jp","ama.shimane.jp","gotsu.shimane.jp","hamada.shimane.jp","higashiizumo.shimane.jp","hikawa.shimane.jp","hikimi.shimane.jp","izumo.shimane.jp","kakinoki.shimane.jp","masuda.shimane.jp","matsue.shimane.jp","misato.shimane.jp","nishinoshima.shimane.jp","ohda.shimane.jp","okinoshima.shimane.jp","okuizumo.shimane.jp","shimane.shimane.jp","tamayu.shimane.jp","tsuwano.shimane.jp","unnan.shimane.jp","yakumo.shimane.jp","yasugi.shimane.jp","yatsuka.shimane.jp","arai.shizuoka.jp","atami.shizuoka.jp","fuji.shizuoka.jp","fujieda.shizuoka.jp","fujikawa.shizuoka.jp","fujinomiya.shizuoka.jp","fukuroi.shizuoka.jp","gotemba.shizuoka.jp","haibara.shizuoka.jp","hamamatsu.shizuoka.jp","higashiizu.shizuoka.jp","ito.shizuoka.jp","iwata.shizuoka.jp","izu.shizuoka.jp","izunokuni.shizuoka.jp","kakegawa.shizuoka.jp","kannami.shizuoka.jp","kawanehon.shizuoka.jp","kawazu.shizuoka.jp","kikugawa.shizuoka.jp","kosai.shizuoka.jp","makinohara.shizuoka.jp","matsuzaki.shizuoka.jp","minamiizu.shizuoka.jp","mishima.shizuoka.jp","morimachi.shizuoka.jp","nishiizu.shizuoka.jp","numazu.shizuoka.jp","omaezaki.shizuoka.jp","shimada.shizuoka.jp","shimizu.shizuoka.jp","shimoda.shizuoka.jp","shizuoka.shizuoka.jp","susono.shizuoka.jp","yaizu.shizuoka.jp","yoshida.shizuoka.jp","ashikaga.tochigi.jp","bato.tochigi.jp","haga.tochigi.jp","ichikai.tochigi.jp","iwafune.tochigi.jp","kaminokawa.tochigi.jp","kanuma.tochigi.jp","karasuyama.tochigi.jp","kuroiso.tochigi.jp","mashiko.tochigi.jp","mibu.tochigi.jp","moka.tochigi.jp","motegi.tochigi.jp","nasu.tochigi.jp","nasushiobara.tochigi.jp","nikko.tochigi.jp","nishikata.tochigi.jp","nogi.tochigi.jp","ohira.tochigi.jp","ohtawara.tochigi.jp","oyama.tochigi.jp","sakura.tochigi.jp","sano.tochigi.jp","shimotsuke.tochigi.jp","shioya.tochigi.jp","takanezawa.tochigi.jp","tochigi.tochigi.jp","tsuga.tochigi.jp","ujiie.tochigi.jp","utsunomiya.tochigi.jp","yaita.tochigi.jp","aizumi.tokushima.jp","anan.tokushima.jp","ichiba.tokushima.jp","itano.tokushima.jp","kainan.tokushima.jp","komatsushima.tokushima.jp","matsushige.tokushima.jp","mima.tokushima.jp","minami.tokushima.jp","miyoshi.tokushima.jp","mugi.tokushima.jp","nakagawa.tokushima.jp","naruto.tokushima.jp","sanagochi.tokushima.jp","shishikui.tokushima.jp","tokushima.tokushima.jp","wajiki.tokushima.jp","adachi.tokyo.jp","akiruno.tokyo.jp","akishima.tokyo.jp","aogashima.tokyo.jp","arakawa.tokyo.jp","bunkyo.tokyo.jp","chiyoda.tokyo.jp","chofu.tokyo.jp","chuo.tokyo.jp","edogawa.tokyo.jp","fuchu.tokyo.jp","fussa.tokyo.jp","hachijo.tokyo.jp","hachioji.tokyo.jp","hamura.tokyo.jp","higashikurume.tokyo.jp","higashimurayama.tokyo.jp","higashiyamato.tokyo.jp","hino.tokyo.jp","hinode.tokyo.jp","hinohara.tokyo.jp","inagi.tokyo.jp","itabashi.tokyo.jp","katsushika.tokyo.jp","kita.tokyo.jp","kiyose.tokyo.jp","kodaira.tokyo.jp","koganei.tokyo.jp","kokubunji.tokyo.jp","komae.tokyo.jp","koto.tokyo.jp","kouzushima.tokyo.jp","kunitachi.tokyo.jp","machida.tokyo.jp","meguro.tokyo.jp","minato.tokyo.jp","mitaka.tokyo.jp","mizuho.tokyo.jp","musashimurayama.tokyo.jp","musashino.tokyo.jp","nakano.tokyo.jp","nerima.tokyo.jp","ogasawara.tokyo.jp","okutama.tokyo.jp","ome.tokyo.jp","oshima.tokyo.jp","ota.tokyo.jp","setagaya.tokyo.jp","shibuya.tokyo.jp","shinagawa.tokyo.jp","shinjuku.tokyo.jp","suginami.tokyo.jp","sumida.tokyo.jp","tachikawa.tokyo.jp","taito.tokyo.jp","tama.tokyo.jp","toshima.tokyo.jp","chizu.tottori.jp","hino.tottori.jp","kawahara.tottori.jp","koge.tottori.jp","kotoura.tottori.jp","misasa.tottori.jp","nanbu.tottori.jp","nichinan.tottori.jp","sakaiminato.tottori.jp","tottori.tottori.jp","wakasa.tottori.jp","yazu.tottori.jp","yonago.tottori.jp","asahi.toyama.jp","fuchu.toyama.jp","fukumitsu.toyama.jp","funahashi.toyama.jp","himi.toyama.jp","imizu.toyama.jp","inami.toyama.jp","johana.toyama.jp","kamiichi.toyama.jp","kurobe.toyama.jp","nakaniikawa.toyama.jp","namerikawa.toyama.jp","nanto.toyama.jp","nyuzen.toyama.jp","oyabe.toyama.jp","taira.toyama.jp","takaoka.toyama.jp","tateyama.toyama.jp","toga.toyama.jp","tonami.toyama.jp","toyama.toyama.jp","unazuki.toyama.jp","uozu.toyama.jp","yamada.toyama.jp","arida.wakayama.jp","aridagawa.wakayama.jp","gobo.wakayama.jp","hashimoto.wakayama.jp","hidaka.wakayama.jp","hirogawa.wakayama.jp","inami.wakayama.jp","iwade.wakayama.jp","kainan.wakayama.jp","kamitonda.wakayama.jp","katsuragi.wakayama.jp","kimino.wakayama.jp","kinokawa.wakayama.jp","kitayama.wakayama.jp","koya.wakayama.jp","koza.wakayama.jp","kozagawa.wakayama.jp","kudoyama.wakayama.jp","kushimoto.wakayama.jp","mihama.wakayama.jp","misato.wakayama.jp","nachikatsuura.wakayama.jp","shingu.wakayama.jp","shirahama.wakayama.jp","taiji.wakayama.jp","tanabe.wakayama.jp","wakayama.wakayama.jp","yuasa.wakayama.jp","yura.wakayama.jp","asahi.yamagata.jp","funagata.yamagata.jp","higashine.yamagata.jp","iide.yamagata.jp","kahoku.yamagata.jp","kaminoyama.yamagata.jp","kaneyama.yamagata.jp","kawanishi.yamagata.jp","mamurogawa.yamagata.jp","mikawa.yamagata.jp","murayama.yamagata.jp","nagai.yamagata.jp","nakayama.yamagata.jp","nanyo.yamagata.jp","nishikawa.yamagata.jp","obanazawa.yamagata.jp","oe.yamagata.jp","oguni.yamagata.jp","ohkura.yamagata.jp","oishida.yamagata.jp","sagae.yamagata.jp","sakata.yamagata.jp","sakegawa.yamagata.jp","shinjo.yamagata.jp","shirataka.yamagata.jp","shonai.yamagata.jp","takahata.yamagata.jp","tendo.yamagata.jp","tozawa.yamagata.jp","tsuruoka.yamagata.jp","yamagata.yamagata.jp","yamanobe.yamagata.jp","yonezawa.yamagata.jp","yuza.yamagata.jp","abu.yamaguchi.jp","hagi.yamaguchi.jp","hikari.yamaguchi.jp","hofu.yamaguchi.jp","iwakuni.yamaguchi.jp","kudamatsu.yamaguchi.jp","mitou.yamaguchi.jp","nagato.yamaguchi.jp","oshima.yamaguchi.jp","shimonoseki.yamaguchi.jp","shunan.yamaguchi.jp","tabuse.yamaguchi.jp","tokuyama.yamaguchi.jp","toyota.yamaguchi.jp","ube.yamaguchi.jp","yuu.yamaguchi.jp","chuo.yamanashi.jp","doshi.yamanashi.jp","fuefuki.yamanashi.jp","fujikawa.yamanashi.jp","fujikawaguchiko.yamanashi.jp","fujiyoshida.yamanashi.jp","hayakawa.yamanashi.jp","hokuto.yamanashi.jp","ichikawamisato.yamanashi.jp","kai.yamanashi.jp","kofu.yamanashi.jp","koshu.yamanashi.jp","kosuge.yamanashi.jp","minami-alps.yamanashi.jp","minobu.yamanashi.jp","nakamichi.yamanashi.jp","nanbu.yamanashi.jp","narusawa.yamanashi.jp","nirasaki.yamanashi.jp","nishikatsura.yamanashi.jp","oshino.yamanashi.jp","otsuki.yamanashi.jp","showa.yamanashi.jp","tabayama.yamanashi.jp","tsuru.yamanashi.jp","uenohara.yamanashi.jp","yamanakako.yamanashi.jp","yamanashi.yamanashi.jp","ke","ac.ke","co.ke","go.ke","info.ke","me.ke","mobi.ke","ne.ke","or.ke","sc.ke","kg","org.kg","net.kg","com.kg","edu.kg","gov.kg","mil.kg","*.kh","ki","edu.ki","biz.ki","net.ki","org.ki","gov.ki","info.ki","com.ki","km","org.km","nom.km","gov.km","prd.km","tm.km","edu.km","mil.km","ass.km","com.km","coop.km","asso.km","presse.km","medecin.km","notaires.km","pharmaciens.km","veterinaire.km","gouv.km","kn","net.kn","org.kn","edu.kn","gov.kn","kp","com.kp","edu.kp","gov.kp","org.kp","rep.kp","tra.kp","kr","ac.kr","co.kr","es.kr","go.kr","hs.kr","kg.kr","mil.kr","ms.kr","ne.kr","or.kr","pe.kr","re.kr","sc.kr","busan.kr","chungbuk.kr","chungnam.kr","daegu.kr","daejeon.kr","gangwon.kr","gwangju.kr","gyeongbuk.kr","gyeonggi.kr","gyeongnam.kr","incheon.kr","jeju.kr","jeonbuk.kr","jeonnam.kr","seoul.kr","ulsan.kr","kw","com.kw","edu.kw","emb.kw","gov.kw","ind.kw","net.kw","org.kw","ky","com.ky","edu.ky","net.ky","org.ky","kz","org.kz","edu.kz","net.kz","gov.kz","mil.kz","com.kz","la","int.la","net.la","info.la","edu.la","gov.la","per.la","com.la","org.la","lb","com.lb","edu.lb","gov.lb","net.lb","org.lb","lc","com.lc","net.lc","co.lc","org.lc","edu.lc","gov.lc","li","lk","gov.lk","sch.lk","net.lk","int.lk","com.lk","org.lk","edu.lk","ngo.lk","soc.lk","web.lk","ltd.lk","assn.lk","grp.lk","hotel.lk","ac.lk","lr","com.lr","edu.lr","gov.lr","org.lr","net.lr","ls","ac.ls","biz.ls","co.ls","edu.ls","gov.ls","info.ls","net.ls","org.ls","sc.ls","lt","gov.lt","lu","lv","com.lv","edu.lv","gov.lv","org.lv","mil.lv","id.lv","net.lv","asn.lv","conf.lv","ly","com.ly","net.ly","gov.ly","plc.ly","edu.ly","sch.ly","med.ly","org.ly","id.ly","ma","co.ma","net.ma","gov.ma","org.ma","ac.ma","press.ma","mc","tm.mc","asso.mc","md","me","co.me","net.me","org.me","edu.me","ac.me","gov.me","its.me","priv.me","mg","org.mg","nom.mg","gov.mg","prd.mg","tm.mg","edu.mg","mil.mg","com.mg","co.mg","mh","mil","mk","com.mk","org.mk","net.mk","edu.mk","gov.mk","inf.mk","name.mk","ml","com.ml","edu.ml","gouv.ml","gov.ml","net.ml","org.ml","presse.ml","*.mm","mn","gov.mn","edu.mn","org.mn","mo","com.mo","net.mo","org.mo","edu.mo","gov.mo","mobi","mp","mq","mr","gov.mr","ms","com.ms","edu.ms","gov.ms","net.ms","org.ms","mt","com.mt","edu.mt","net.mt","org.mt","mu","com.mu","net.mu","org.mu","gov.mu","ac.mu","co.mu","or.mu","museum","academy.museum","agriculture.museum","air.museum","airguard.museum","alabama.museum","alaska.museum","amber.museum","ambulance.museum","american.museum","americana.museum","americanantiques.museum","americanart.museum","amsterdam.museum","and.museum","annefrank.museum","anthro.museum","anthropology.museum","antiques.museum","aquarium.museum","arboretum.museum","archaeological.museum","archaeology.museum","architecture.museum","art.museum","artanddesign.museum","artcenter.museum","artdeco.museum","arteducation.museum","artgallery.museum","arts.museum","artsandcrafts.museum","asmatart.museum","assassination.museum","assisi.museum","association.museum","astronomy.museum","atlanta.museum","austin.museum","australia.museum","automotive.museum","aviation.museum","axis.museum","badajoz.museum","baghdad.museum","bahn.museum","bale.museum","baltimore.museum","barcelona.museum","baseball.museum","basel.museum","baths.museum","bauern.museum","beauxarts.museum","beeldengeluid.museum","bellevue.museum","bergbau.museum","berkeley.museum","berlin.museum","bern.museum","bible.museum","bilbao.museum","bill.museum","birdart.museum","birthplace.museum","bonn.museum","boston.museum","botanical.museum","botanicalgarden.museum","botanicgarden.museum","botany.museum","brandywinevalley.museum","brasil.museum","bristol.museum","british.museum","britishcolumbia.museum","broadcast.museum","brunel.museum","brussel.museum","brussels.museum","bruxelles.museum","building.museum","burghof.museum","bus.museum","bushey.museum","cadaques.museum","california.museum","cambridge.museum","can.museum","canada.museum","capebreton.museum","carrier.museum","cartoonart.museum","casadelamoneda.museum","castle.museum","castres.museum","celtic.museum","center.museum","chattanooga.museum","cheltenham.museum","chesapeakebay.museum","chicago.museum","children.museum","childrens.museum","childrensgarden.museum","chiropractic.museum","chocolate.museum","christiansburg.museum","cincinnati.museum","cinema.museum","circus.museum","civilisation.museum","civilization.museum","civilwar.museum","clinton.museum","clock.museum","coal.museum","coastaldefence.museum","cody.museum","coldwar.museum","collection.museum","colonialwilliamsburg.museum","coloradoplateau.museum","columbia.museum","columbus.museum","communication.museum","communications.museum","community.museum","computer.museum","computerhistory.museum","comunicações.museum","contemporary.museum","contemporaryart.museum","convent.museum","copenhagen.museum","corporation.museum","correios-e-telecomunicações.museum","corvette.museum","costume.museum","countryestate.museum","county.museum","crafts.museum","cranbrook.museum","creation.museum","cultural.museum","culturalcenter.museum","culture.museum","cyber.museum","cymru.museum","dali.museum","dallas.museum","database.museum","ddr.museum","decorativearts.museum","delaware.museum","delmenhorst.museum","denmark.museum","depot.museum","design.museum","detroit.museum","dinosaur.museum","discovery.museum","dolls.museum","donostia.museum","durham.museum","eastafrica.museum","eastcoast.museum","education.museum","educational.museum","egyptian.museum","eisenbahn.museum","elburg.museum","elvendrell.museum","embroidery.museum","encyclopedic.museum","england.museum","entomology.museum","environment.museum","environmentalconservation.museum","epilepsy.museum","essex.museum","estate.museum","ethnology.museum","exeter.museum","exhibition.museum","family.museum","farm.museum","farmequipment.museum","farmers.museum","farmstead.museum","field.museum","figueres.museum","filatelia.museum","film.museum","fineart.museum","finearts.museum","finland.museum","flanders.museum","florida.museum","force.museum","fortmissoula.museum","fortworth.museum","foundation.museum","francaise.museum","frankfurt.museum","franziskaner.museum","freemasonry.museum","freiburg.museum","fribourg.museum","frog.museum","fundacio.museum","furniture.museum","gallery.museum","garden.museum","gateway.museum","geelvinck.museum","gemological.museum","geology.museum","georgia.museum","giessen.museum","glas.museum","glass.museum","gorge.museum","grandrapids.museum","graz.museum","guernsey.museum","halloffame.museum","hamburg.museum","handson.museum","harvestcelebration.museum","hawaii.museum","health.museum","heimatunduhren.museum","hellas.museum","helsinki.museum","hembygdsforbund.museum","heritage.museum","histoire.museum","historical.museum","historicalsociety.museum","historichouses.museum","historisch.museum","historisches.museum","history.museum","historyofscience.museum","horology.museum","house.museum","humanities.museum","illustration.museum","imageandsound.museum","indian.museum","indiana.museum","indianapolis.museum","indianmarket.museum","intelligence.museum","interactive.museum","iraq.museum","iron.museum","isleofman.museum","jamison.museum","jefferson.museum","jerusalem.museum","jewelry.museum","jewish.museum","jewishart.museum","jfk.museum","journalism.museum","judaica.museum","judygarland.museum","juedisches.museum","juif.museum","karate.museum","karikatur.museum","kids.museum","koebenhavn.museum","koeln.museum","kunst.museum","kunstsammlung.museum","kunstunddesign.museum","labor.museum","labour.museum","lajolla.museum","lancashire.museum","landes.museum","lans.museum","läns.museum","larsson.museum","lewismiller.museum","lincoln.museum","linz.museum","living.museum","livinghistory.museum","localhistory.museum","london.museum","losangeles.museum","louvre.museum","loyalist.museum","lucerne.museum","luxembourg.museum","luzern.museum","mad.museum","madrid.museum","mallorca.museum","manchester.museum","mansion.museum","mansions.museum","manx.museum","marburg.museum","maritime.museum","maritimo.museum","maryland.museum","marylhurst.museum","media.museum","medical.museum","medizinhistorisches.museum","meeres.museum","memorial.museum","mesaverde.museum","michigan.museum","midatlantic.museum","military.museum","mill.museum","miners.museum","mining.museum","minnesota.museum","missile.museum","missoula.museum","modern.museum","moma.museum","money.museum","monmouth.museum","monticello.museum","montreal.museum","moscow.museum","motorcycle.museum","muenchen.museum","muenster.museum","mulhouse.museum","muncie.museum","museet.museum","museumcenter.museum","museumvereniging.museum","music.museum","national.museum","nationalfirearms.museum","nationalheritage.museum","nativeamerican.museum","naturalhistory.museum","naturalhistorymuseum.museum","naturalsciences.museum","nature.museum","naturhistorisches.museum","natuurwetenschappen.museum","naumburg.museum","naval.museum","nebraska.museum","neues.museum","newhampshire.museum","newjersey.museum","newmexico.museum","newport.museum","newspaper.museum","newyork.museum","niepce.museum","norfolk.museum","north.museum","nrw.museum","nyc.museum","nyny.museum","oceanographic.museum","oceanographique.museum","omaha.museum","online.museum","ontario.museum","openair.museum","oregon.museum","oregontrail.museum","otago.museum","oxford.museum","pacific.museum","paderborn.museum","palace.museum","paleo.museum","palmsprings.museum","panama.museum","paris.museum","pasadena.museum","pharmacy.museum","philadelphia.museum","philadelphiaarea.museum","philately.museum","phoenix.museum","photography.museum","pilots.museum","pittsburgh.museum","planetarium.museum","plantation.museum","plants.museum","plaza.museum","portal.museum","portland.museum","portlligat.museum","posts-and-telecommunications.museum","preservation.museum","presidio.museum","press.museum","project.museum","public.museum","pubol.museum","quebec.museum","railroad.museum","railway.museum","research.museum","resistance.museum","riodejaneiro.museum","rochester.museum","rockart.museum","roma.museum","russia.museum","saintlouis.museum","salem.museum","salvadordali.museum","salzburg.museum","sandiego.museum","sanfrancisco.museum","santabarbara.museum","santacruz.museum","santafe.museum","saskatchewan.museum","satx.museum","savannahga.museum","schlesisches.museum","schoenbrunn.museum","schokoladen.museum","school.museum","schweiz.museum","science.museum","scienceandhistory.museum","scienceandindustry.museum","sciencecenter.museum","sciencecenters.museum","science-fiction.museum","sciencehistory.museum","sciences.museum","sciencesnaturelles.museum","scotland.museum","seaport.museum","settlement.museum","settlers.museum","shell.museum","sherbrooke.museum","sibenik.museum","silk.museum","ski.museum","skole.museum","society.museum","sologne.museum","soundandvision.museum","southcarolina.museum","southwest.museum","space.museum","spy.museum","square.museum","stadt.museum","stalbans.museum","starnberg.museum","state.museum","stateofdelaware.museum","station.museum","steam.museum","steiermark.museum","stjohn.museum","stockholm.museum","stpetersburg.museum","stuttgart.museum","suisse.museum","surgeonshall.museum","surrey.museum","svizzera.museum","sweden.museum","sydney.museum","tank.museum","tcm.museum","technology.museum","telekommunikation.museum","television.museum","texas.museum","textile.museum","theater.museum","time.museum","timekeeping.museum","topology.museum","torino.museum","touch.museum","town.museum","transport.museum","tree.museum","trolley.museum","trust.museum","trustee.museum","uhren.museum","ulm.museum","undersea.museum","university.museum","usa.museum","usantiques.museum","usarts.museum","uscountryestate.museum","usculture.museum","usdecorativearts.museum","usgarden.museum","ushistory.museum","ushuaia.museum","uslivinghistory.museum","utah.museum","uvic.museum","valley.museum","vantaa.museum","versailles.museum","viking.museum","village.museum","virginia.museum","virtual.museum","virtuel.museum","vlaanderen.museum","volkenkunde.museum","wales.museum","wallonie.museum","war.museum","washingtondc.museum","watchandclock.museum","watch-and-clock.museum","western.museum","westfalen.museum","whaling.museum","wildlife.museum","williamsburg.museum","windmill.museum","workshop.museum","york.museum","yorkshire.museum","yosemite.museum","youth.museum","zoological.museum","zoology.museum","ירושלים.museum","иком.museum","mv","aero.mv","biz.mv","com.mv","coop.mv","edu.mv","gov.mv","info.mv","int.mv","mil.mv","museum.mv","name.mv","net.mv","org.mv","pro.mv","mw","ac.mw","biz.mw","co.mw","com.mw","coop.mw","edu.mw","gov.mw","int.mw","museum.mw","net.mw","org.mw","mx","com.mx","org.mx","gob.mx","edu.mx","net.mx","my","biz.my","com.my","edu.my","gov.my","mil.my","name.my","net.my","org.my","mz","ac.mz","adv.mz","co.mz","edu.mz","gov.mz","mil.mz","net.mz","org.mz","na","info.na","pro.na","name.na","school.na","or.na","dr.na","us.na","mx.na","ca.na","in.na","cc.na","tv.na","ws.na","mobi.na","co.na","com.na","org.na","name","nc","asso.nc","nom.nc","ne","net","nf","com.nf","net.nf","per.nf","rec.nf","web.nf","arts.nf","firm.nf","info.nf","other.nf","store.nf","ng","com.ng","edu.ng","gov.ng","i.ng","mil.ng","mobi.ng","name.ng","net.ng","org.ng","sch.ng","ni","ac.ni","biz.ni","co.ni","com.ni","edu.ni","gob.ni","in.ni","info.ni","int.ni","mil.ni","net.ni","nom.ni","org.ni","web.ni","nl","no","fhs.no","vgs.no","fylkesbibl.no","folkebibl.no","museum.no","idrett.no","priv.no","mil.no","stat.no","dep.no","kommune.no","herad.no","aa.no","ah.no","bu.no","fm.no","hl.no","hm.no","jan-mayen.no","mr.no","nl.no","nt.no","of.no","ol.no","oslo.no","rl.no","sf.no","st.no","svalbard.no","tm.no","tr.no","va.no","vf.no","gs.aa.no","gs.ah.no","gs.bu.no","gs.fm.no","gs.hl.no","gs.hm.no","gs.jan-mayen.no","gs.mr.no","gs.nl.no","gs.nt.no","gs.of.no","gs.ol.no","gs.oslo.no","gs.rl.no","gs.sf.no","gs.st.no","gs.svalbard.no","gs.tm.no","gs.tr.no","gs.va.no","gs.vf.no","akrehamn.no","åkrehamn.no","algard.no","ålgård.no","arna.no","brumunddal.no","bryne.no","bronnoysund.no","brønnøysund.no","drobak.no","drøbak.no","egersund.no","fetsund.no","floro.no","florø.no","fredrikstad.no","hokksund.no","honefoss.no","hønefoss.no","jessheim.no","jorpeland.no","jørpeland.no","kirkenes.no","kopervik.no","krokstadelva.no","langevag.no","langevåg.no","leirvik.no","mjondalen.no","mjøndalen.no","mo-i-rana.no","mosjoen.no","mosjøen.no","nesoddtangen.no","orkanger.no","osoyro.no","osøyro.no","raholt.no","råholt.no","sandnessjoen.no","sandnessjøen.no","skedsmokorset.no","slattum.no","spjelkavik.no","stathelle.no","stavern.no","stjordalshalsen.no","stjørdalshalsen.no","tananger.no","tranby.no","vossevangen.no","afjord.no","åfjord.no","agdenes.no","al.no","ål.no","alesund.no","ålesund.no","alstahaug.no","alta.no","áltá.no","alaheadju.no","álaheadju.no","alvdal.no","amli.no","åmli.no","amot.no","åmot.no","andebu.no","andoy.no","andøy.no","andasuolo.no","ardal.no","årdal.no","aremark.no","arendal.no","ås.no","aseral.no","åseral.no","asker.no","askim.no","askvoll.no","askoy.no","askøy.no","asnes.no","åsnes.no","audnedaln.no","aukra.no","aure.no","aurland.no","aurskog-holand.no","aurskog-høland.no","austevoll.no","austrheim.no","averoy.no","averøy.no","balestrand.no","ballangen.no","balat.no","bálát.no","balsfjord.no","bahccavuotna.no","báhccavuotna.no","bamble.no","bardu.no","beardu.no","beiarn.no","bajddar.no","bájddar.no","baidar.no","báidár.no","berg.no","bergen.no","berlevag.no","berlevåg.no","bearalvahki.no","bearalváhki.no","bindal.no","birkenes.no","bjarkoy.no","bjarkøy.no","bjerkreim.no","bjugn.no","bodo.no","bodø.no","badaddja.no","bådåddjå.no","budejju.no","bokn.no","bremanger.no","bronnoy.no","brønnøy.no","bygland.no","bykle.no","barum.no","bærum.no","bo.telemark.no","bø.telemark.no","bo.nordland.no","bø.nordland.no","bievat.no","bievát.no","bomlo.no","bømlo.no","batsfjord.no","båtsfjord.no","bahcavuotna.no","báhcavuotna.no","dovre.no","drammen.no","drangedal.no","dyroy.no","dyrøy.no","donna.no","dønna.no","eid.no","eidfjord.no","eidsberg.no","eidskog.no","eidsvoll.no","eigersund.no","elverum.no","enebakk.no","engerdal.no","etne.no","etnedal.no","evenes.no","evenassi.no","evenášši.no","evje-og-hornnes.no","farsund.no","fauske.no","fuossko.no","fuoisku.no","fedje.no","fet.no","finnoy.no","finnøy.no","fitjar.no","fjaler.no","fjell.no","flakstad.no","flatanger.no","flekkefjord.no","flesberg.no","flora.no","fla.no","flå.no","folldal.no","forsand.no","fosnes.no","frei.no","frogn.no","froland.no","frosta.no","frana.no","fræna.no","froya.no","frøya.no","fusa.no","fyresdal.no","forde.no","førde.no","gamvik.no","gangaviika.no","gáŋgaviika.no","gaular.no","gausdal.no","gildeskal.no","gildeskål.no","giske.no","gjemnes.no","gjerdrum.no","gjerstad.no","gjesdal.no","gjovik.no","gjøvik.no","gloppen.no","gol.no","gran.no","grane.no","granvin.no","gratangen.no","grimstad.no","grong.no","kraanghke.no","kråanghke.no","grue.no","gulen.no","hadsel.no","halden.no","halsa.no","hamar.no","hamaroy.no","habmer.no","hábmer.no","hapmir.no","hápmir.no","hammerfest.no","hammarfeasta.no","hámmárfeasta.no","haram.no","hareid.no","harstad.no","hasvik.no","aknoluokta.no","ákŋoluokta.no","hattfjelldal.no","aarborte.no","haugesund.no","hemne.no","hemnes.no","hemsedal.no","heroy.more-og-romsdal.no","herøy.møre-og-romsdal.no","heroy.nordland.no","herøy.nordland.no","hitra.no","hjartdal.no","hjelmeland.no","hobol.no","hobøl.no","hof.no","hol.no","hole.no","holmestrand.no","holtalen.no","holtålen.no","hornindal.no","horten.no","hurdal.no","hurum.no","hvaler.no","hyllestad.no","hagebostad.no","hægebostad.no","hoyanger.no","høyanger.no","hoylandet.no","høylandet.no","ha.no","hå.no","ibestad.no","inderoy.no","inderøy.no","iveland.no","jevnaker.no","jondal.no","jolster.no","jølster.no","karasjok.no","karasjohka.no","kárášjohka.no","karlsoy.no","galsa.no","gálsá.no","karmoy.no","karmøy.no","kautokeino.no","guovdageaidnu.no","klepp.no","klabu.no","klæbu.no","kongsberg.no","kongsvinger.no","kragero.no","kragerø.no","kristiansand.no","kristiansund.no","krodsherad.no","krødsherad.no","kvalsund.no","rahkkeravju.no","ráhkkerávju.no","kvam.no","kvinesdal.no","kvinnherad.no","kviteseid.no","kvitsoy.no","kvitsøy.no","kvafjord.no","kvæfjord.no","giehtavuoatna.no","kvanangen.no","kvænangen.no","navuotna.no","návuotna.no","kafjord.no","kåfjord.no","gaivuotna.no","gáivuotna.no","larvik.no","lavangen.no","lavagis.no","loabat.no","loabát.no","lebesby.no","davvesiida.no","leikanger.no","leirfjord.no","leka.no","leksvik.no","lenvik.no","leangaviika.no","leaŋgaviika.no","lesja.no","levanger.no","lier.no","lierne.no","lillehammer.no","lillesand.no","lindesnes.no","lindas.no","lindås.no","lom.no","loppa.no","lahppi.no","láhppi.no","lund.no","lunner.no","luroy.no","lurøy.no","luster.no","lyngdal.no","lyngen.no","ivgu.no","lardal.no","lerdal.no","lærdal.no","lodingen.no","lødingen.no","lorenskog.no","lørenskog.no","loten.no","løten.no","malvik.no","masoy.no","måsøy.no","muosat.no","muosát.no","mandal.no","marker.no","marnardal.no","masfjorden.no","meland.no","meldal.no","melhus.no","meloy.no","meløy.no","meraker.no","meråker.no","moareke.no","moåreke.no","midsund.no","midtre-gauldal.no","modalen.no","modum.no","molde.no","moskenes.no","moss.no","mosvik.no","malselv.no","målselv.no","malatvuopmi.no","málatvuopmi.no","namdalseid.no","aejrie.no","namsos.no","namsskogan.no","naamesjevuemie.no","nååmesjevuemie.no","laakesvuemie.no","nannestad.no","narvik.no","narviika.no","naustdal.no","nedre-eiker.no","nes.akershus.no","nes.buskerud.no","nesna.no","nesodden.no","nesseby.no","unjarga.no","unjárga.no","nesset.no","nissedal.no","nittedal.no","nord-aurdal.no","nord-fron.no","nord-odal.no","norddal.no","nordkapp.no","davvenjarga.no","davvenjárga.no","nordre-land.no","nordreisa.no","raisa.no","ráisa.no","nore-og-uvdal.no","notodden.no","naroy.no","nærøy.no","notteroy.no","nøtterøy.no","odda.no","oksnes.no","øksnes.no","oppdal.no","oppegard.no","oppegård.no","orkdal.no","orland.no","ørland.no","orskog.no","ørskog.no","orsta.no","ørsta.no","os.hedmark.no","os.hordaland.no","osen.no","osteroy.no","osterøy.no","ostre-toten.no","østre-toten.no","overhalla.no","ovre-eiker.no","øvre-eiker.no","oyer.no","øyer.no","oygarden.no","øygarden.no","oystre-slidre.no","øystre-slidre.no","porsanger.no","porsangu.no","porsáŋgu.no","porsgrunn.no","radoy.no","radøy.no","rakkestad.no","rana.no","ruovat.no","randaberg.no","rauma.no","rendalen.no","rennebu.no","rennesoy.no","rennesøy.no","rindal.no","ringebu.no","ringerike.no","ringsaker.no","rissa.no","risor.no","risør.no","roan.no","rollag.no","rygge.no","ralingen.no","rælingen.no","rodoy.no","rødøy.no","romskog.no","rømskog.no","roros.no","røros.no","rost.no","røst.no","royken.no","røyken.no","royrvik.no","røyrvik.no","rade.no","råde.no","salangen.no","siellak.no","saltdal.no","salat.no","sálát.no","sálat.no","samnanger.no","sande.more-og-romsdal.no","sande.møre-og-romsdal.no","sande.vestfold.no","sandefjord.no","sandnes.no","sandoy.no","sandøy.no","sarpsborg.no","sauda.no","sauherad.no","sel.no","selbu.no","selje.no","seljord.no","sigdal.no","siljan.no","sirdal.no","skaun.no","skedsmo.no","ski.no","skien.no","skiptvet.no","skjervoy.no","skjervøy.no","skierva.no","skiervá.no","skjak.no","skjåk.no","skodje.no","skanland.no","skånland.no","skanit.no","skánit.no","smola.no","smøla.no","snillfjord.no","snasa.no","snåsa.no","snoasa.no","snaase.no","snåase.no","sogndal.no","sokndal.no","sola.no","solund.no","songdalen.no","sortland.no","spydeberg.no","stange.no","stavanger.no","steigen.no","steinkjer.no","stjordal.no","stjørdal.no","stokke.no","stor-elvdal.no","stord.no","stordal.no","storfjord.no","omasvuotna.no","strand.no","stranda.no","stryn.no","sula.no","suldal.no","sund.no","sunndal.no","surnadal.no","sveio.no","svelvik.no","sykkylven.no","sogne.no","søgne.no","somna.no","sømna.no","sondre-land.no","søndre-land.no","sor-aurdal.no","sør-aurdal.no","sor-fron.no","sør-fron.no","sor-odal.no","sør-odal.no","sor-varanger.no","sør-varanger.no","matta-varjjat.no","mátta-várjjat.no","sorfold.no","sørfold.no","sorreisa.no","sørreisa.no","sorum.no","sørum.no","tana.no","deatnu.no","time.no","tingvoll.no","tinn.no","tjeldsund.no","dielddanuorri.no","tjome.no","tjøme.no","tokke.no","tolga.no","torsken.no","tranoy.no","tranøy.no","tromso.no","tromsø.no","tromsa.no","romsa.no","trondheim.no","troandin.no","trysil.no","trana.no","træna.no","trogstad.no","trøgstad.no","tvedestrand.no","tydal.no","tynset.no","tysfjord.no","divtasvuodna.no","divttasvuotna.no","tysnes.no","tysvar.no","tysvær.no","tonsberg.no","tønsberg.no","ullensaker.no","ullensvang.no","ulvik.no","utsira.no","vadso.no","vadsø.no","cahcesuolo.no","čáhcesuolo.no","vaksdal.no","valle.no","vang.no","vanylven.no","vardo.no","vardø.no","varggat.no","várggát.no","vefsn.no","vaapste.no","vega.no","vegarshei.no","vegårshei.no","vennesla.no","verdal.no","verran.no","vestby.no","vestnes.no","vestre-slidre.no","vestre-toten.no","vestvagoy.no","vestvågøy.no","vevelstad.no","vik.no","vikna.no","vindafjord.no","volda.no","voss.no","varoy.no","værøy.no","vagan.no","vågan.no","voagat.no","vagsoy.no","vågsøy.no","vaga.no","vågå.no","valer.ostfold.no","våler.østfold.no","valer.hedmark.no","våler.hedmark.no","*.np","nr","biz.nr","info.nr","gov.nr","edu.nr","org.nr","net.nr","com.nr","nu","nz","ac.nz","co.nz","cri.nz","geek.nz","gen.nz","govt.nz","health.nz","iwi.nz","kiwi.nz","maori.nz","mil.nz","māori.nz","net.nz","org.nz","parliament.nz","school.nz","om","co.om","com.om","edu.om","gov.om","med.om","museum.om","net.om","org.om","pro.om","onion","org","pa","ac.pa","gob.pa","com.pa","org.pa","sld.pa","edu.pa","net.pa","ing.pa","abo.pa","med.pa","nom.pa","pe","edu.pe","gob.pe","nom.pe","mil.pe","org.pe","com.pe","net.pe","pf","com.pf","org.pf","edu.pf","*.pg","ph","com.ph","net.ph","org.ph","gov.ph","edu.ph","ngo.ph","mil.ph","i.ph","pk","com.pk","net.pk","edu.pk","org.pk","fam.pk","biz.pk","web.pk","gov.pk","gob.pk","gok.pk","gon.pk","gop.pk","gos.pk","info.pk","pl","com.pl","net.pl","org.pl","aid.pl","agro.pl","atm.pl","auto.pl","biz.pl","edu.pl","gmina.pl","gsm.pl","info.pl","mail.pl","miasta.pl","media.pl","mil.pl","nieruchomosci.pl","nom.pl","pc.pl","powiat.pl","priv.pl","realestate.pl","rel.pl","sex.pl","shop.pl","sklep.pl","sos.pl","szkola.pl","targi.pl","tm.pl","tourism.pl","travel.pl","turystyka.pl","gov.pl","ap.gov.pl","ic.gov.pl","is.gov.pl","us.gov.pl","kmpsp.gov.pl","kppsp.gov.pl","kwpsp.gov.pl","psp.gov.pl","wskr.gov.pl","kwp.gov.pl","mw.gov.pl","ug.gov.pl","um.gov.pl","umig.gov.pl","ugim.gov.pl","upow.gov.pl","uw.gov.pl","starostwo.gov.pl","pa.gov.pl","po.gov.pl","psse.gov.pl","pup.gov.pl","rzgw.gov.pl","sa.gov.pl","so.gov.pl","sr.gov.pl","wsa.gov.pl","sko.gov.pl","uzs.gov.pl","wiih.gov.pl","winb.gov.pl","pinb.gov.pl","wios.gov.pl","witd.gov.pl","wzmiuw.gov.pl","piw.gov.pl","wiw.gov.pl","griw.gov.pl","wif.gov.pl","oum.gov.pl","sdn.gov.pl","zp.gov.pl","uppo.gov.pl","mup.gov.pl","wuoz.gov.pl","konsulat.gov.pl","oirm.gov.pl","augustow.pl","babia-gora.pl","bedzin.pl","beskidy.pl","bialowieza.pl","bialystok.pl","bielawa.pl","bieszczady.pl","boleslawiec.pl","bydgoszcz.pl","bytom.pl","cieszyn.pl","czeladz.pl","czest.pl","dlugoleka.pl","elblag.pl","elk.pl","glogow.pl","gniezno.pl","gorlice.pl","grajewo.pl","ilawa.pl","jaworzno.pl","jelenia-gora.pl","jgora.pl","kalisz.pl","kazimierz-dolny.pl","karpacz.pl","kartuzy.pl","kaszuby.pl","katowice.pl","kepno.pl","ketrzyn.pl","klodzko.pl","kobierzyce.pl","kolobrzeg.pl","konin.pl","konskowola.pl","kutno.pl","lapy.pl","lebork.pl","legnica.pl","lezajsk.pl","limanowa.pl","lomza.pl","lowicz.pl","lubin.pl","lukow.pl","malbork.pl","malopolska.pl","mazowsze.pl","mazury.pl","mielec.pl","mielno.pl","mragowo.pl","naklo.pl","nowaruda.pl","nysa.pl","olawa.pl","olecko.pl","olkusz.pl","olsztyn.pl","opoczno.pl","opole.pl","ostroda.pl","ostroleka.pl","ostrowiec.pl","ostrowwlkp.pl","pila.pl","pisz.pl","podhale.pl","podlasie.pl","polkowice.pl","pomorze.pl","pomorskie.pl","prochowice.pl","pruszkow.pl","przeworsk.pl","pulawy.pl","radom.pl","rawa-maz.pl","rybnik.pl","rzeszow.pl","sanok.pl","sejny.pl","slask.pl","slupsk.pl","sosnowiec.pl","stalowa-wola.pl","skoczow.pl","starachowice.pl","stargard.pl","suwalki.pl","swidnica.pl","swiebodzin.pl","swinoujscie.pl","szczecin.pl","szczytno.pl","tarnobrzeg.pl","tgory.pl","turek.pl","tychy.pl","ustka.pl","walbrzych.pl","warmia.pl","warszawa.pl","waw.pl","wegrow.pl","wielun.pl","wlocl.pl","wloclawek.pl","wodzislaw.pl","wolomin.pl","wroclaw.pl","zachpomor.pl","zagan.pl","zarow.pl","zgora.pl","zgorzelec.pl","pm","pn","gov.pn","co.pn","org.pn","edu.pn","net.pn","post","pr","com.pr","net.pr","org.pr","gov.pr","edu.pr","isla.pr","pro.pr","biz.pr","info.pr","name.pr","est.pr","prof.pr","ac.pr","pro","aaa.pro","aca.pro","acct.pro","avocat.pro","bar.pro","cpa.pro","eng.pro","jur.pro","law.pro","med.pro","recht.pro","ps","edu.ps","gov.ps","sec.ps","plo.ps","com.ps","org.ps","net.ps","pt","net.pt","gov.pt","org.pt","edu.pt","int.pt","publ.pt","com.pt","nome.pt","pw","co.pw","ne.pw","or.pw","ed.pw","go.pw","belau.pw","py","com.py","coop.py","edu.py","gov.py","mil.py","net.py","org.py","qa","com.qa","edu.qa","gov.qa","mil.qa","name.qa","net.qa","org.qa","sch.qa","re","asso.re","com.re","nom.re","ro","arts.ro","com.ro","firm.ro","info.ro","nom.ro","nt.ro","org.ro","rec.ro","store.ro","tm.ro","www.ro","rs","ac.rs","co.rs","edu.rs","gov.rs","in.rs","org.rs","ru","rw","ac.rw","co.rw","coop.rw","gov.rw","mil.rw","net.rw","org.rw","sa","com.sa","net.sa","org.sa","gov.sa","med.sa","pub.sa","edu.sa","sch.sa","sb","com.sb","edu.sb","gov.sb","net.sb","org.sb","sc","com.sc","gov.sc","net.sc","org.sc","edu.sc","sd","com.sd","net.sd","org.sd","edu.sd","med.sd","tv.sd","gov.sd","info.sd","se","a.se","ac.se","b.se","bd.se","brand.se","c.se","d.se","e.se","f.se","fh.se","fhsk.se","fhv.se","g.se","h.se","i.se","k.se","komforb.se","kommunalforbund.se","komvux.se","l.se","lanbib.se","m.se","n.se","naturbruksgymn.se","o.se","org.se","p.se","parti.se","pp.se","press.se","r.se","s.se","t.se","tm.se","u.se","w.se","x.se","y.se","z.se","sg","com.sg","net.sg","org.sg","gov.sg","edu.sg","per.sg","sh","com.sh","net.sh","gov.sh","org.sh","mil.sh","si","sj","sk","sl","com.sl","net.sl","edu.sl","gov.sl","org.sl","sm","sn","art.sn","com.sn","edu.sn","gouv.sn","org.sn","perso.sn","univ.sn","so","com.so","edu.so","gov.so","me.so","net.so","org.so","sr","ss","biz.ss","com.ss","edu.ss","gov.ss","me.ss","net.ss","org.ss","sch.ss","st","co.st","com.st","consulado.st","edu.st","embaixada.st","mil.st","net.st","org.st","principe.st","saotome.st","store.st","su","sv","com.sv","edu.sv","gob.sv","org.sv","red.sv","sx","gov.sx","sy","edu.sy","gov.sy","net.sy","mil.sy","com.sy","org.sy","sz","co.sz","ac.sz","org.sz","tc","td","tel","tf","tg","th","ac.th","co.th","go.th","in.th","mi.th","net.th","or.th","tj","ac.tj","biz.tj","co.tj","com.tj","edu.tj","go.tj","gov.tj","int.tj","mil.tj","name.tj","net.tj","nic.tj","org.tj","test.tj","web.tj","tk","tl","gov.tl","tm","com.tm","co.tm","org.tm","net.tm","nom.tm","gov.tm","mil.tm","edu.tm","tn","com.tn","ens.tn","fin.tn","gov.tn","ind.tn","info.tn","intl.tn","mincom.tn","nat.tn","net.tn","org.tn","perso.tn","tourism.tn","to","com.to","gov.to","net.to","org.to","edu.to","mil.to","tr","av.tr","bbs.tr","bel.tr","biz.tr","com.tr","dr.tr","edu.tr","gen.tr","gov.tr","info.tr","mil.tr","k12.tr","kep.tr","name.tr","net.tr","org.tr","pol.tr","tel.tr","tsk.tr","tv.tr","web.tr","nc.tr","gov.nc.tr","tt","co.tt","com.tt","org.tt","net.tt","biz.tt","info.tt","pro.tt","int.tt","coop.tt","jobs.tt","mobi.tt","travel.tt","museum.tt","aero.tt","name.tt","gov.tt","edu.tt","tv","tw","edu.tw","gov.tw","mil.tw","com.tw","net.tw","org.tw","idv.tw","game.tw","ebiz.tw","club.tw","網路.tw","組織.tw","商業.tw","tz","ac.tz","co.tz","go.tz","hotel.tz","info.tz","me.tz","mil.tz","mobi.tz","ne.tz","or.tz","sc.tz","tv.tz","ua","com.ua","edu.ua","gov.ua","in.ua","net.ua","org.ua","cherkassy.ua","cherkasy.ua","chernigov.ua","chernihiv.ua","chernivtsi.ua","chernovtsy.ua","ck.ua","cn.ua","cr.ua","crimea.ua","cv.ua","dn.ua","dnepropetrovsk.ua","dnipropetrovsk.ua","donetsk.ua","dp.ua","if.ua","ivano-frankivsk.ua","kh.ua","kharkiv.ua","kharkov.ua","kherson.ua","khmelnitskiy.ua","khmelnytskyi.ua","kiev.ua","kirovograd.ua","km.ua","kr.ua","krym.ua","ks.ua","kv.ua","kyiv.ua","lg.ua","lt.ua","lugansk.ua","lutsk.ua","lv.ua","lviv.ua","mk.ua","mykolaiv.ua","nikolaev.ua","od.ua","odesa.ua","odessa.ua","pl.ua","poltava.ua","rivne.ua","rovno.ua","rv.ua","sb.ua","sebastopol.ua","sevastopol.ua","sm.ua","sumy.ua","te.ua","ternopil.ua","uz.ua","uzhgorod.ua","vinnica.ua","vinnytsia.ua","vn.ua","volyn.ua","yalta.ua","zaporizhzhe.ua","zaporizhzhia.ua","zhitomir.ua","zhytomyr.ua","zp.ua","zt.ua","ug","co.ug","or.ug","ac.ug","sc.ug","go.ug","ne.ug","com.ug","org.ug","uk","ac.uk","co.uk","gov.uk","ltd.uk","me.uk","net.uk","nhs.uk","org.uk","plc.uk","police.uk","*.sch.uk","us","dni.us","fed.us","isa.us","kids.us","nsn.us","ak.us","al.us","ar.us","as.us","az.us","ca.us","co.us","ct.us","dc.us","de.us","fl.us","ga.us","gu.us","hi.us","ia.us","id.us","il.us","in.us","ks.us","ky.us","la.us","ma.us","md.us","me.us","mi.us","mn.us","mo.us","ms.us","mt.us","nc.us","nd.us","ne.us","nh.us","nj.us","nm.us","nv.us","ny.us","oh.us","ok.us","or.us","pa.us","pr.us","ri.us","sc.us","sd.us","tn.us","tx.us","ut.us","vi.us","vt.us","va.us","wa.us","wi.us","wv.us","wy.us","k12.ak.us","k12.al.us","k12.ar.us","k12.as.us","k12.az.us","k12.ca.us","k12.co.us","k12.ct.us","k12.dc.us","k12.de.us","k12.fl.us","k12.ga.us","k12.gu.us","k12.ia.us","k12.id.us","k12.il.us","k12.in.us","k12.ks.us","k12.ky.us","k12.la.us","k12.ma.us","k12.md.us","k12.me.us","k12.mi.us","k12.mn.us","k12.mo.us","k12.ms.us","k12.mt.us","k12.nc.us","k12.ne.us","k12.nh.us","k12.nj.us","k12.nm.us","k12.nv.us","k12.ny.us","k12.oh.us","k12.ok.us","k12.or.us","k12.pa.us","k12.pr.us","k12.sc.us","k12.tn.us","k12.tx.us","k12.ut.us","k12.vi.us","k12.vt.us","k12.va.us","k12.wa.us","k12.wi.us","k12.wy.us","cc.ak.us","cc.al.us","cc.ar.us","cc.as.us","cc.az.us","cc.ca.us","cc.co.us","cc.ct.us","cc.dc.us","cc.de.us","cc.fl.us","cc.ga.us","cc.gu.us","cc.hi.us","cc.ia.us","cc.id.us","cc.il.us","cc.in.us","cc.ks.us","cc.ky.us","cc.la.us","cc.ma.us","cc.md.us","cc.me.us","cc.mi.us","cc.mn.us","cc.mo.us","cc.ms.us","cc.mt.us","cc.nc.us","cc.nd.us","cc.ne.us","cc.nh.us","cc.nj.us","cc.nm.us","cc.nv.us","cc.ny.us","cc.oh.us","cc.ok.us","cc.or.us","cc.pa.us","cc.pr.us","cc.ri.us","cc.sc.us","cc.sd.us","cc.tn.us","cc.tx.us","cc.ut.us","cc.vi.us","cc.vt.us","cc.va.us","cc.wa.us","cc.wi.us","cc.wv.us","cc.wy.us","lib.ak.us","lib.al.us","lib.ar.us","lib.as.us","lib.az.us","lib.ca.us","lib.co.us","lib.ct.us","lib.dc.us","lib.fl.us","lib.ga.us","lib.gu.us","lib.hi.us","lib.ia.us","lib.id.us","lib.il.us","lib.in.us","lib.ks.us","lib.ky.us","lib.la.us","lib.ma.us","lib.md.us","lib.me.us","lib.mi.us","lib.mn.us","lib.mo.us","lib.ms.us","lib.mt.us","lib.nc.us","lib.nd.us","lib.ne.us","lib.nh.us","lib.nj.us","lib.nm.us","lib.nv.us","lib.ny.us","lib.oh.us","lib.ok.us","lib.or.us","lib.pa.us","lib.pr.us","lib.ri.us","lib.sc.us","lib.sd.us","lib.tn.us","lib.tx.us","lib.ut.us","lib.vi.us","lib.vt.us","lib.va.us","lib.wa.us","lib.wi.us","lib.wy.us","pvt.k12.ma.us","chtr.k12.ma.us","paroch.k12.ma.us","ann-arbor.mi.us","cog.mi.us","dst.mi.us","eaton.mi.us","gen.mi.us","mus.mi.us","tec.mi.us","washtenaw.mi.us","uy","com.uy","edu.uy","gub.uy","mil.uy","net.uy","org.uy","uz","co.uz","com.uz","net.uz","org.uz","va","vc","com.vc","net.vc","org.vc","gov.vc","mil.vc","edu.vc","ve","arts.ve","bib.ve","co.ve","com.ve","e12.ve","edu.ve","firm.ve","gob.ve","gov.ve","info.ve","int.ve","mil.ve","net.ve","nom.ve","org.ve","rar.ve","rec.ve","store.ve","tec.ve","web.ve","vg","vi","co.vi","com.vi","k12.vi","net.vi","org.vi","vn","com.vn","net.vn","org.vn","edu.vn","gov.vn","int.vn","ac.vn","biz.vn","info.vn","name.vn","pro.vn","health.vn","vu","com.vu","edu.vu","net.vu","org.vu","wf","ws","com.ws","net.ws","org.ws","gov.ws","edu.ws","yt","امارات","հայ","বাংলা","бг","البحرين","бел","中国","中國","الجزائر","مصر","ею","ευ","موريتانيا","გე","ελ","香港","公司.香港","教育.香港","政府.香港","個人.香港","網絡.香港","組織.香港","ಭಾರತ","ଭାରତ","ভাৰত","भारतम्","भारोत","ڀارت","ഭാരതം","भारत","بارت","بھارت","భారత్","ભારત","ਭਾਰਤ","ভারত","இந்தியா","ایران","ايران","عراق","الاردن","한국","қаз","ລາວ","ලංකා","இலங்கை","المغرب","мкд","мон","澳門","澳门","مليسيا","عمان","پاکستان","پاكستان","فلسطين","срб","пр.срб","орг.срб","обр.срб","од.срб","упр.срб","ак.срб","рф","قطر","السعودية","السعودیة","السعودیۃ","السعوديه","سودان","新加坡","சிங்கப்பூர்","سورية","سوريا","ไทย","ศึกษา.ไทย","ธุรกิจ.ไทย","รัฐบาล.ไทย","ทหาร.ไทย","เน็ต.ไทย","องค์กร.ไทย","تونس","台灣","台湾","臺灣","укр","اليمن","xxx","ye","com.ye","edu.ye","gov.ye","net.ye","mil.ye","org.ye","ac.za","agric.za","alt.za","co.za","edu.za","gov.za","grondar.za","law.za","mil.za","net.za","ngo.za","nic.za","nis.za","nom.za","org.za","school.za","tm.za","web.za","zm","ac.zm","biz.zm","co.zm","com.zm","edu.zm","gov.zm","info.zm","mil.zm","net.zm","org.zm","sch.zm","zw","ac.zw","co.zw","gov.zw","mil.zw","org.zw","aaa","aarp","abarth","abb","abbott","abbvie","abc","able","abogado","abudhabi","academy","accenture","accountant","accountants","aco","actor","adac","ads","adult","aeg","aetna","afl","africa","agakhan","agency","aig","airbus","airforce","airtel","akdn","alfaromeo","alibaba","alipay","allfinanz","allstate","ally","alsace","alstom","amazon","americanexpress","americanfamily","amex","amfam","amica","amsterdam","analytics","android","anquan","anz","aol","apartments","app","apple","aquarelle","arab","aramco","archi","army","art","arte","asda","associates","athleta","attorney","auction","audi","audible","audio","auspost","author","auto","autos","avianca","aws","axa","azure","baby","baidu","banamex","bananarepublic","band","bank","bar","barcelona","barclaycard","barclays","barefoot","bargains","baseball","basketball","bauhaus","bayern","bbc","bbt","bbva","bcg","bcn","beats","beauty","beer","bentley","berlin","best","bestbuy","bet","bharti","bible","bid","bike","bing","bingo","bio","black","blackfriday","blockbuster","blog","bloomberg","blue","bms","bmw","bnpparibas","boats","boehringer","bofa","bom","bond","boo","book","booking","bosch","bostik","boston","bot","boutique","box","bradesco","bridgestone","broadway","broker","brother","brussels","bugatti","build","builders","business","buy","buzz","bzh","cab","cafe","cal","call","calvinklein","cam","camera","camp","cancerresearch","canon","capetown","capital","capitalone","car","caravan","cards","care","career","careers","cars","casa","case","cash","casino","catering","catholic","cba","cbn","cbre","cbs","center","ceo","cern","cfa","cfd","chanel","channel","charity","chase","chat","cheap","chintai","christmas","chrome","church","cipriani","circle","cisco","citadel","citi","citic","city","cityeats","claims","cleaning","click","clinic","clinique","clothing","cloud","club","clubmed","coach","codes","coffee","college","cologne","comcast","commbank","community","company","compare","computer","comsec","condos","construction","consulting","contact","contractors","cooking","cookingchannel","cool","corsica","country","coupon","coupons","courses","cpa","credit","creditcard","creditunion","cricket","crown","crs","cruise","cruises","cuisinella","cymru","cyou","dabur","dad","dance","data","date","dating","datsun","day","dclk","dds","deal","dealer","deals","degree","delivery","dell","deloitte","delta","democrat","dental","dentist","desi","design","dev","dhl","diamonds","diet","digital","direct","directory","discount","discover","dish","diy","dnp","docs","doctor","dog","domains","dot","download","drive","dtv","dubai","dunlop","dupont","durban","dvag","dvr","earth","eat","eco","edeka","education","email","emerck","energy","engineer","engineering","enterprises","epson","equipment","ericsson","erni","esq","estate","etisalat","eurovision","eus","events","exchange","expert","exposed","express","extraspace","fage","fail","fairwinds","faith","family","fan","fans","farm","farmers","fashion","fast","fedex","feedback","ferrari","ferrero","fiat","fidelity","fido","film","final","finance","financial","fire","firestone","firmdale","fish","fishing","fit","fitness","flickr","flights","flir","florist","flowers","fly","foo","food","foodnetwork","football","ford","forex","forsale","forum","foundation","fox","free","fresenius","frl","frogans","frontdoor","frontier","ftr","fujitsu","fun","fund","furniture","futbol","fyi","gal","gallery","gallo","gallup","game","games","gap","garden","gay","gbiz","gdn","gea","gent","genting","george","ggee","gift","gifts","gives","giving","glass","gle","global","globo","gmail","gmbh","gmo","gmx","godaddy","gold","goldpoint","golf","goo","goodyear","goog","google","gop","got","grainger","graphics","gratis","green","gripe","grocery","group","guardian","gucci","guge","guide","guitars","guru","hair","hamburg","hangout","haus","hbo","hdfc","hdfcbank","health","healthcare","help","helsinki","here","hermes","hgtv","hiphop","hisamitsu","hitachi","hiv","hkt","hockey","holdings","holiday","homedepot","homegoods","homes","homesense","honda","horse","hospital","host","hosting","hot","hoteles","hotels","hotmail","house","how","hsbc","hughes","hyatt","hyundai","ibm","icbc","ice","icu","ieee","ifm","ikano","imamat","imdb","immo","immobilien","inc","industries","infiniti","ing","ink","institute","insurance","insure","international","intuit","investments","ipiranga","irish","ismaili","ist","istanbul","itau","itv","jaguar","java","jcb","jeep","jetzt","jewelry","jio","jll","jmp","jnj","joburg","jot","joy","jpmorgan","jprs","juegos","juniper","kaufen","kddi","kerryhotels","kerrylogistics","kerryproperties","kfh","kia","kids","kim","kinder","kindle","kitchen","kiwi","koeln","komatsu","kosher","kpmg","kpn","krd","kred","kuokgroup","kyoto","lacaixa","lamborghini","lamer","lancaster","lancia","land","landrover","lanxess","lasalle","lat","latino","latrobe","law","lawyer","lds","lease","leclerc","lefrak","legal","lego","lexus","lgbt","lidl","life","lifeinsurance","lifestyle","lighting","like","lilly","limited","limo","lincoln","linde","link","lipsy","live","living","llc","llp","loan","loans","locker","locus","loft","lol","london","lotte","lotto","love","lpl","lplfinancial","ltd","ltda","lundbeck","luxe","luxury","macys","madrid","maif","maison","makeup","man","management","mango","map","market","marketing","markets","marriott","marshalls","maserati","mattel","mba","mckinsey","med","media","meet","melbourne","meme","memorial","men","menu","merckmsd","miami","microsoft","mini","mint","mit","mitsubishi","mlb","mls","mma","mobile","moda","moe","moi","mom","monash","money","monster","mormon","mortgage","moscow","moto","motorcycles","mov","movie","msd","mtn","mtr","music","mutual","nab","nagoya","natura","navy","nba","nec","netbank","netflix","network","neustar","new","news","next","nextdirect","nexus","nfl","ngo","nhk","nico","nike","nikon","ninja","nissan","nissay","nokia","northwesternmutual","norton","now","nowruz","nowtv","nra","nrw","ntt","nyc","obi","observer","office","okinawa","olayan","olayangroup","oldnavy","ollo","omega","one","ong","onl","online","ooo","open","oracle","orange","organic","origins","osaka","otsuka","ott","ovh","page","panasonic","paris","pars","partners","parts","party","passagens","pay","pccw","pet","pfizer","pharmacy","phd","philips","phone","photo","photography","photos","physio","pics","pictet","pictures","pid","pin","ping","pink","pioneer","pizza","place","play","playstation","plumbing","plus","pnc","pohl","poker","politie","porn","pramerica","praxi","press","prime","prod","productions","prof","progressive","promo","properties","property","protection","pru","prudential","pub","pwc","qpon","quebec","quest","racing","radio","read","realestate","realtor","realty","recipes","red","redstone","redumbrella","rehab","reise","reisen","reit","reliance","ren","rent","rentals","repair","report","republican","rest","restaurant","review","reviews","rexroth","rich","richardli","ricoh","ril","rio","rip","rocher","rocks","rodeo","rogers","room","rsvp","rugby","ruhr","run","rwe","ryukyu","saarland","safe","safety","sakura","sale","salon","samsclub","samsung","sandvik","sandvikcoromant","sanofi","sap","sarl","sas","save","saxo","sbi","sbs","sca","scb","schaeffler","schmidt","scholarships","school","schule","schwarz","science","scot","search","seat","secure","security","seek","select","sener","services","ses","seven","sew","sex","sexy","sfr","shangrila","sharp","shaw","shell","shia","shiksha","shoes","shop","shopping","shouji","show","showtime","silk","sina","singles","site","ski","skin","sky","skype","sling","smart","smile","sncf","soccer","social","softbank","software","sohu","solar","solutions","song","sony","soy","spa","space","sport","spot","srl","stada","staples","star","statebank","statefarm","stc","stcgroup","stockholm","storage","store","stream","studio","study","style","sucks","supplies","supply","support","surf","surgery","suzuki","swatch","swiss","sydney","systems","tab","taipei","talk","taobao","target","tatamotors","tatar","tattoo","tax","taxi","tci","tdk","team","tech","technology","temasek","tennis","teva","thd","theater","theatre","tiaa","tickets","tienda","tiffany","tips","tires","tirol","tjmaxx","tjx","tkmaxx","tmall","today","tokyo","tools","top","toray","toshiba","total","tours","town","toyota","toys","trade","trading","training","travel","travelchannel","travelers","travelersinsurance","trust","trv","tube","tui","tunes","tushu","tvs","ubank","ubs","unicom","university","uno","uol","ups","vacations","vana","vanguard","vegas","ventures","verisign","versicherung","vet","viajes","video","vig","viking","villas","vin","vip","virgin","visa","vision","viva","vivo","vlaanderen","vodka","volkswagen","volvo","vote","voting","voto","voyage","vuelos","wales","walmart","walter","wang","wanggou","watch","watches","weather","weatherchannel","webcam","weber","website","wedding","weibo","weir","whoswho","wien","wiki","williamhill","win","windows","wine","winners","wme","wolterskluwer","woodside","work","works","world","wow","wtc","wtf","xbox","xerox","xfinity","xihuan","xin","कॉम","セール","佛山","慈善","集团","在线","点看","คอม","八卦","موقع","公益","公司","香格里拉","网站","移动","我爱你","москва","католик","онлайн","сайт","联通","קום","时尚","微博","淡马锡","ファッション","орг","नेट","ストア","アマゾン","삼성","商标","商店","商城","дети","ポイント","新闻","家電","كوم","中文网","中信","娱乐","谷歌","電訊盈科","购物","クラウド","通販","网店","संगठन","餐厅","网络","ком","亚马逊","诺基亚","食品","飞利浦","手机","ارامكو","العليان","اتصالات","بازار","ابوظبي","كاثوليك","همراه","닷컴","政府","شبكة","بيتك","عرب","机构","组织机构","健康","招聘","рус","大拿","みんな","グーグル","世界","書籍","网址","닷넷","コム","天主教","游戏","vermögensberater","vermögensberatung","企业","信息","嘉里大酒店","嘉里","广东","政务","xyz","yachts","yahoo","yamaxun","yandex","yodobashi","yoga","yokohama","you","youtube","yun","zappos","zara","zero","zip","zone","zuerich","cc.ua","inf.ua","ltd.ua","611.to","graphox.us","*.devcdnaccesso.com","adobeaemcloud.com","*.dev.adobeaemcloud.com","hlx.live","adobeaemcloud.net","hlx.page","hlx3.page","beep.pl","airkitapps.com","airkitapps-au.com","airkitapps.eu","aivencloud.com","barsy.ca","*.compute.estate","*.alces.network","kasserver.com","altervista.org","alwaysdata.net","cloudfront.net","*.compute.amazonaws.com","*.compute-1.amazonaws.com","*.compute.amazonaws.com.cn","us-east-1.amazonaws.com","cn-north-1.eb.amazonaws.com.cn","cn-northwest-1.eb.amazonaws.com.cn","elasticbeanstalk.com","ap-northeast-1.elasticbeanstalk.com","ap-northeast-2.elasticbeanstalk.com","ap-northeast-3.elasticbeanstalk.com","ap-south-1.elasticbeanstalk.com","ap-southeast-1.elasticbeanstalk.com","ap-southeast-2.elasticbeanstalk.com","ca-central-1.elasticbeanstalk.com","eu-central-1.elasticbeanstalk.com","eu-west-1.elasticbeanstalk.com","eu-west-2.elasticbeanstalk.com","eu-west-3.elasticbeanstalk.com","sa-east-1.elasticbeanstalk.com","us-east-1.elasticbeanstalk.com","us-east-2.elasticbeanstalk.com","us-gov-west-1.elasticbeanstalk.com","us-west-1.elasticbeanstalk.com","us-west-2.elasticbeanstalk.com","*.elb.amazonaws.com","*.elb.amazonaws.com.cn","awsglobalaccelerator.com","s3.amazonaws.com","s3-ap-northeast-1.amazonaws.com","s3-ap-northeast-2.amazonaws.com","s3-ap-south-1.amazonaws.com","s3-ap-southeast-1.amazonaws.com","s3-ap-southeast-2.amazonaws.com","s3-ca-central-1.amazonaws.com","s3-eu-central-1.amazonaws.com","s3-eu-west-1.amazonaws.com","s3-eu-west-2.amazonaws.com","s3-eu-west-3.amazonaws.com","s3-external-1.amazonaws.com","s3-fips-us-gov-west-1.amazonaws.com","s3-sa-east-1.amazonaws.com","s3-us-gov-west-1.amazonaws.com","s3-us-east-2.amazonaws.com","s3-us-west-1.amazonaws.com","s3-us-west-2.amazonaws.com","s3.ap-northeast-2.amazonaws.com","s3.ap-south-1.amazonaws.com","s3.cn-north-1.amazonaws.com.cn","s3.ca-central-1.amazonaws.com","s3.eu-central-1.amazonaws.com","s3.eu-west-2.amazonaws.com","s3.eu-west-3.amazonaws.com","s3.us-east-2.amazonaws.com","s3.dualstack.ap-northeast-1.amazonaws.com","s3.dualstack.ap-northeast-2.amazonaws.com","s3.dualstack.ap-south-1.amazonaws.com","s3.dualstack.ap-southeast-1.amazonaws.com","s3.dualstack.ap-southeast-2.amazonaws.com","s3.dualstack.ca-central-1.amazonaws.com","s3.dualstack.eu-central-1.amazonaws.com","s3.dualstack.eu-west-1.amazonaws.com","s3.dualstack.eu-west-2.amazonaws.com","s3.dualstack.eu-west-3.amazonaws.com","s3.dualstack.sa-east-1.amazonaws.com","s3.dualstack.us-east-1.amazonaws.com","s3.dualstack.us-east-2.amazonaws.com","s3-website-us-east-1.amazonaws.com","s3-website-us-west-1.amazonaws.com","s3-website-us-west-2.amazonaws.com","s3-website-ap-northeast-1.amazonaws.com","s3-website-ap-southeast-1.amazonaws.com","s3-website-ap-southeast-2.amazonaws.com","s3-website-eu-west-1.amazonaws.com","s3-website-sa-east-1.amazonaws.com","s3-website.ap-northeast-2.amazonaws.com","s3-website.ap-south-1.amazonaws.com","s3-website.ca-central-1.amazonaws.com","s3-website.eu-central-1.amazonaws.com","s3-website.eu-west-2.amazonaws.com","s3-website.eu-west-3.amazonaws.com","s3-website.us-east-2.amazonaws.com","t3l3p0rt.net","tele.amune.org","apigee.io","siiites.com","appspacehosted.com","appspaceusercontent.com","appudo.net","on-aptible.com","user.aseinet.ne.jp","gv.vc","d.gv.vc","user.party.eus","pimienta.org","poivron.org","potager.org","sweetpepper.org","myasustor.com","cdn.prod.atlassian-dev.net","translated.page","myfritz.net","onavstack.net","*.awdev.ca","*.advisor.ws","ecommerce-shop.pl","b-data.io","backplaneapp.io","balena-devices.com","rs.ba","*.banzai.cloud","app.banzaicloud.io","*.backyards.banzaicloud.io","base.ec","official.ec","buyshop.jp","fashionstore.jp","handcrafted.jp","kawaiishop.jp","supersale.jp","theshop.jp","shopselect.net","base.shop","*.beget.app","betainabox.com","bnr.la","bitbucket.io","blackbaudcdn.net","of.je","bluebite.io","boomla.net","boutir.com","boxfuse.io","square7.ch","bplaced.com","bplaced.de","square7.de","bplaced.net","square7.net","shop.brendly.rs","browsersafetymark.io","uk0.bigv.io","dh.bytemark.co.uk","vm.bytemark.co.uk","cafjs.com","mycd.eu","drr.ac","uwu.ai","carrd.co","crd.co","ju.mp","ae.org","br.com","cn.com","com.de","com.se","de.com","eu.com","gb.net","hu.net","jp.net","jpn.com","mex.com","ru.com","sa.com","se.net","uk.com","uk.net","us.com","za.bz","za.com","ar.com","hu.com","kr.com","no.com","qc.com","uy.com","africa.com","gr.com","in.net","web.in","us.org","co.com","aus.basketball","nz.basketball","radio.am","radio.fm","c.la","certmgr.org","cx.ua","discourse.group","discourse.team","cleverapps.io","clerk.app","clerkstage.app","*.lcl.dev","*.lclstage.dev","*.stg.dev","*.stgstage.dev","clickrising.net","c66.me","cloud66.ws","cloud66.zone","jdevcloud.com","wpdevcloud.com","cloudaccess.host","freesite.host","cloudaccess.net","cloudcontrolled.com","cloudcontrolapp.com","*.cloudera.site","pages.dev","trycloudflare.com","workers.dev","wnext.app","co.ca","*.otap.co","co.cz","c.cdn77.org","cdn77-ssl.net","r.cdn77.net","rsc.cdn77.org","ssl.origin.cdn77-secure.org","cloudns.asia","cloudns.biz","cloudns.club","cloudns.cc","cloudns.eu","cloudns.in","cloudns.info","cloudns.org","cloudns.pro","cloudns.pw","cloudns.us","cnpy.gdn","codeberg.page","co.nl","co.no","webhosting.be","hosting-cluster.nl","ac.ru","edu.ru","gov.ru","int.ru","mil.ru","test.ru","dyn.cosidns.de","dynamisches-dns.de","dnsupdater.de","internet-dns.de","l-o-g-i-n.de","dynamic-dns.info","feste-ip.net","knx-server.net","static-access.net","realm.cz","*.cryptonomic.net","cupcake.is","curv.dev","*.customer-oci.com","*.oci.customer-oci.com","*.ocp.customer-oci.com","*.ocs.customer-oci.com","cyon.link","cyon.site","fnwk.site","folionetwork.site","platform0.app","daplie.me","localhost.daplie.me","dattolocal.com","dattorelay.com","dattoweb.com","mydatto.com","dattolocal.net","mydatto.net","biz.dk","co.dk","firm.dk","reg.dk","store.dk","dyndns.dappnode.io","*.dapps.earth","*.bzz.dapps.earth","builtwithdark.com","demo.datadetect.com","instance.datadetect.com","edgestack.me","ddns5.com","debian.net","deno.dev","deno-staging.dev","dedyn.io","deta.app","deta.dev","*.rss.my.id","*.diher.solutions","discordsays.com","discordsez.com","jozi.biz","dnshome.de","online.th","shop.th","drayddns.com","shoparena.pl","dreamhosters.com","mydrobo.com","drud.io","drud.us","duckdns.org","bip.sh","bitbridge.net","dy.fi","tunk.org","dyndns-at-home.com","dyndns-at-work.com","dyndns-blog.com","dyndns-free.com","dyndns-home.com","dyndns-ip.com","dyndns-mail.com","dyndns-office.com","dyndns-pics.com","dyndns-remote.com","dyndns-server.com","dyndns-web.com","dyndns-wiki.com","dyndns-work.com","dyndns.biz","dyndns.info","dyndns.org","dyndns.tv","at-band-camp.net","ath.cx","barrel-of-knowledge.info","barrell-of-knowledge.info","better-than.tv","blogdns.com","blogdns.net","blogdns.org","blogsite.org","boldlygoingnowhere.org","broke-it.net","buyshouses.net","cechire.com","dnsalias.com","dnsalias.net","dnsalias.org","dnsdojo.com","dnsdojo.net","dnsdojo.org","does-it.net","doesntexist.com","doesntexist.org","dontexist.com","dontexist.net","dontexist.org","doomdns.com","doomdns.org","dvrdns.org","dyn-o-saur.com","dynalias.com","dynalias.net","dynalias.org","dynathome.net","dyndns.ws","endofinternet.net","endofinternet.org","endoftheinternet.org","est-a-la-maison.com","est-a-la-masion.com","est-le-patron.com","est-mon-blogueur.com","for-better.biz","for-more.biz","for-our.info","for-some.biz","for-the.biz","forgot.her.name","forgot.his.name","from-ak.com","from-al.com","from-ar.com","from-az.net","from-ca.com","from-co.net","from-ct.com","from-dc.com","from-de.com","from-fl.com","from-ga.com","from-hi.com","from-ia.com","from-id.com","from-il.com","from-in.com","from-ks.com","from-ky.com","from-la.net","from-ma.com","from-md.com","from-me.org","from-mi.com","from-mn.com","from-mo.com","from-ms.com","from-mt.com","from-nc.com","from-nd.com","from-ne.com","from-nh.com","from-nj.com","from-nm.com","from-nv.com","from-ny.net","from-oh.com","from-ok.com","from-or.com","from-pa.com","from-pr.com","from-ri.com","from-sc.com","from-sd.com","from-tn.com","from-tx.com","from-ut.com","from-va.com","from-vt.com","from-wa.com","from-wi.com","from-wv.com","from-wy.com","ftpaccess.cc","fuettertdasnetz.de","game-host.org","game-server.cc","getmyip.com","gets-it.net","go.dyndns.org","gotdns.com","gotdns.org","groks-the.info","groks-this.info","ham-radio-op.net","here-for-more.info","hobby-site.com","hobby-site.org","home.dyndns.org","homedns.org","homeftp.net","homeftp.org","homeip.net","homelinux.com","homelinux.net","homelinux.org","homeunix.com","homeunix.net","homeunix.org","iamallama.com","in-the-band.net","is-a-anarchist.com","is-a-blogger.com","is-a-bookkeeper.com","is-a-bruinsfan.org","is-a-bulls-fan.com","is-a-candidate.org","is-a-caterer.com","is-a-celticsfan.org","is-a-chef.com","is-a-chef.net","is-a-chef.org","is-a-conservative.com","is-a-cpa.com","is-a-cubicle-slave.com","is-a-democrat.com","is-a-designer.com","is-a-doctor.com","is-a-financialadvisor.com","is-a-geek.com","is-a-geek.net","is-a-geek.org","is-a-green.com","is-a-guru.com","is-a-hard-worker.com","is-a-hunter.com","is-a-knight.org","is-a-landscaper.com","is-a-lawyer.com","is-a-liberal.com","is-a-libertarian.com","is-a-linux-user.org","is-a-llama.com","is-a-musician.com","is-a-nascarfan.com","is-a-nurse.com","is-a-painter.com","is-a-patsfan.org","is-a-personaltrainer.com","is-a-photographer.com","is-a-player.com","is-a-republican.com","is-a-rockstar.com","is-a-socialist.com","is-a-soxfan.org","is-a-student.com","is-a-teacher.com","is-a-techie.com","is-a-therapist.com","is-an-accountant.com","is-an-actor.com","is-an-actress.com","is-an-anarchist.com","is-an-artist.com","is-an-engineer.com","is-an-entertainer.com","is-by.us","is-certified.com","is-found.org","is-gone.com","is-into-anime.com","is-into-cars.com","is-into-cartoons.com","is-into-games.com","is-leet.com","is-lost.org","is-not-certified.com","is-saved.org","is-slick.com","is-uberleet.com","is-very-bad.org","is-very-evil.org","is-very-good.org","is-very-nice.org","is-very-sweet.org","is-with-theband.com","isa-geek.com","isa-geek.net","isa-geek.org","isa-hockeynut.com","issmarterthanyou.com","isteingeek.de","istmein.de","kicks-ass.net","kicks-ass.org","knowsitall.info","land-4-sale.us","lebtimnetz.de","leitungsen.de","likes-pie.com","likescandy.com","merseine.nu","mine.nu","misconfused.org","mypets.ws","myphotos.cc","neat-url.com","office-on-the.net","on-the-web.tv","podzone.net","podzone.org","readmyblog.org","saves-the-whales.com","scrapper-site.net","scrapping.cc","selfip.biz","selfip.com","selfip.info","selfip.net","selfip.org","sells-for-less.com","sells-for-u.com","sells-it.net","sellsyourhome.org","servebbs.com","servebbs.net","servebbs.org","serveftp.net","serveftp.org","servegame.org","shacknet.nu","simple-url.com","space-to-rent.com","stuff-4-sale.org","stuff-4-sale.us","teaches-yoga.com","thruhere.net","traeumtgerade.de","webhop.biz","webhop.info","webhop.net","webhop.org","worse-than.tv","writesthisblog.com","ddnss.de","dyn.ddnss.de","dyndns.ddnss.de","dyndns1.de","dyn-ip24.de","home-webserver.de","dyn.home-webserver.de","myhome-server.de","ddnss.org","definima.net","definima.io","ondigitalocean.app","*.digitaloceanspaces.com","bci.dnstrace.pro","ddnsfree.com","ddnsgeek.com","giize.com","gleeze.com","kozow.com","loseyourip.com","ooguy.com","theworkpc.com","casacam.net","dynu.net","accesscam.org","camdvr.org","freeddns.org","mywire.org","webredirect.org","myddns.rocks","blogsite.xyz","dynv6.net","e4.cz","eero.online","eero-stage.online","elementor.cloud","elementor.cool","en-root.fr","mytuleap.com","tuleap-partners.com","encr.app","encoreapi.com","onred.one","staging.onred.one","eu.encoway.cloud","eu.org","al.eu.org","asso.eu.org","at.eu.org","au.eu.org","be.eu.org","bg.eu.org","ca.eu.org","cd.eu.org","ch.eu.org","cn.eu.org","cy.eu.org","cz.eu.org","de.eu.org","dk.eu.org","edu.eu.org","ee.eu.org","es.eu.org","fi.eu.org","fr.eu.org","gr.eu.org","hr.eu.org","hu.eu.org","ie.eu.org","il.eu.org","in.eu.org","int.eu.org","is.eu.org","it.eu.org","jp.eu.org","kr.eu.org","lt.eu.org","lu.eu.org","lv.eu.org","mc.eu.org","me.eu.org","mk.eu.org","mt.eu.org","my.eu.org","net.eu.org","ng.eu.org","nl.eu.org","no.eu.org","nz.eu.org","paris.eu.org","pl.eu.org","pt.eu.org","q-a.eu.org","ro.eu.org","ru.eu.org","se.eu.org","si.eu.org","sk.eu.org","tr.eu.org","uk.eu.org","us.eu.org","eurodir.ru","eu-1.evennode.com","eu-2.evennode.com","eu-3.evennode.com","eu-4.evennode.com","us-1.evennode.com","us-2.evennode.com","us-3.evennode.com","us-4.evennode.com","twmail.cc","twmail.net","twmail.org","mymailer.com.tw","url.tw","onfabrica.com","apps.fbsbx.com","ru.net","adygeya.ru","bashkiria.ru","bir.ru","cbg.ru","com.ru","dagestan.ru","grozny.ru","kalmykia.ru","kustanai.ru","marine.ru","mordovia.ru","msk.ru","mytis.ru","nalchik.ru","nov.ru","pyatigorsk.ru","spb.ru","vladikavkaz.ru","vladimir.ru","abkhazia.su","adygeya.su","aktyubinsk.su","arkhangelsk.su","armenia.su","ashgabad.su","azerbaijan.su","balashov.su","bashkiria.su","bryansk.su","bukhara.su","chimkent.su","dagestan.su","east-kazakhstan.su","exnet.su","georgia.su","grozny.su","ivanovo.su","jambyl.su","kalmykia.su","kaluga.su","karacol.su","karaganda.su","karelia.su","khakassia.su","krasnodar.su","kurgan.su","kustanai.su","lenug.su","mangyshlak.su","mordovia.su","msk.su","murmansk.su","nalchik.su","navoi.su","north-kazakhstan.su","nov.su","obninsk.su","penza.su","pokrovsk.su","sochi.su","spb.su","tashkent.su","termez.su","togliatti.su","troitsk.su","tselinograd.su","tula.su","tuva.su","vladikavkaz.su","vladimir.su","vologda.su","channelsdvr.net","u.channelsdvr.net","edgecompute.app","fastly-terrarium.com","fastlylb.net","map.fastlylb.net","freetls.fastly.net","map.fastly.net","a.prod.fastly.net","global.prod.fastly.net","a.ssl.fastly.net","b.ssl.fastly.net","global.ssl.fastly.net","fastvps-server.com","fastvps.host","myfast.host","fastvps.site","myfast.space","fedorainfracloud.org","fedorapeople.org","cloud.fedoraproject.org","app.os.fedoraproject.org","app.os.stg.fedoraproject.org","conn.uk","copro.uk","hosp.uk","mydobiss.com","fh-muenster.io","filegear.me","filegear-au.me","filegear-de.me","filegear-gb.me","filegear-ie.me","filegear-jp.me","filegear-sg.me","firebaseapp.com","fireweb.app","flap.id","onflashdrive.app","fldrv.com","fly.dev","edgeapp.net","shw.io","flynnhosting.net","forgeblocks.com","id.forgerock.io","framer.app","framercanvas.com","*.frusky.de","ravpage.co.il","0e.vc","freebox-os.com","freeboxos.com","fbx-os.fr","fbxos.fr","freebox-os.fr","freeboxos.fr","freedesktop.org","freemyip.com","wien.funkfeuer.at","*.futurecms.at","*.ex.futurecms.at","*.in.futurecms.at","futurehosting.at","futuremailing.at","*.ex.ortsinfo.at","*.kunden.ortsinfo.at","*.statics.cloud","independent-commission.uk","independent-inquest.uk","independent-inquiry.uk","independent-panel.uk","independent-review.uk","public-inquiry.uk","royal-commission.uk","campaign.gov.uk","service.gov.uk","api.gov.uk","gehirn.ne.jp","usercontent.jp","gentapps.com","gentlentapis.com","lab.ms","cdn-edges.net","ghost.io","gsj.bz","githubusercontent.com","githubpreview.dev","github.io","gitlab.io","gitapp.si","gitpage.si","glitch.me","nog.community","co.ro","shop.ro","lolipop.io","angry.jp","babyblue.jp","babymilk.jp","backdrop.jp","bambina.jp","bitter.jp","blush.jp","boo.jp","boy.jp","boyfriend.jp","but.jp","candypop.jp","capoo.jp","catfood.jp","cheap.jp","chicappa.jp","chillout.jp","chips.jp","chowder.jp","chu.jp","ciao.jp","cocotte.jp","coolblog.jp","cranky.jp","cutegirl.jp","daa.jp","deca.jp","deci.jp","digick.jp","egoism.jp","fakefur.jp","fem.jp","flier.jp","floppy.jp","fool.jp","frenchkiss.jp","girlfriend.jp","girly.jp","gloomy.jp","gonna.jp","greater.jp","hacca.jp","heavy.jp","her.jp","hiho.jp","hippy.jp","holy.jp","hungry.jp","icurus.jp","itigo.jp","jellybean.jp","kikirara.jp","kill.jp","kilo.jp","kuron.jp","littlestar.jp","lolipopmc.jp","lolitapunk.jp","lomo.jp","lovepop.jp","lovesick.jp","main.jp","mods.jp","mond.jp","mongolian.jp","moo.jp","namaste.jp","nikita.jp","nobushi.jp","noor.jp","oops.jp","parallel.jp","parasite.jp","pecori.jp","peewee.jp","penne.jp","pepper.jp","perma.jp","pigboat.jp","pinoko.jp","punyu.jp","pupu.jp","pussycat.jp","pya.jp","raindrop.jp","readymade.jp","sadist.jp","schoolbus.jp","secret.jp","staba.jp","stripper.jp","sub.jp","sunnyday.jp","thick.jp","tonkotsu.jp","under.jp","upper.jp","velvet.jp","verse.jp","versus.jp","vivian.jp","watson.jp","weblike.jp","whitesnow.jp","zombie.jp","heteml.net","cloudapps.digital","london.cloudapps.digital","pymnt.uk","homeoffice.gov.uk","ro.im","goip.de","run.app","a.run.app","web.app","*.0emm.com","appspot.com","*.r.appspot.com","codespot.com","googleapis.com","googlecode.com","pagespeedmobilizer.com","publishproxy.com","withgoogle.com","withyoutube.com","*.gateway.dev","cloud.goog","translate.goog","*.usercontent.goog","cloudfunctions.net","blogspot.ae","blogspot.al","blogspot.am","blogspot.ba","blogspot.be","blogspot.bg","blogspot.bj","blogspot.ca","blogspot.cf","blogspot.ch","blogspot.cl","blogspot.co.at","blogspot.co.id","blogspot.co.il","blogspot.co.ke","blogspot.co.nz","blogspot.co.uk","blogspot.co.za","blogspot.com","blogspot.com.ar","blogspot.com.au","blogspot.com.br","blogspot.com.by","blogspot.com.co","blogspot.com.cy","blogspot.com.ee","blogspot.com.eg","blogspot.com.es","blogspot.com.mt","blogspot.com.ng","blogspot.com.tr","blogspot.com.uy","blogspot.cv","blogspot.cz","blogspot.de","blogspot.dk","blogspot.fi","blogspot.fr","blogspot.gr","blogspot.hk","blogspot.hr","blogspot.hu","blogspot.ie","blogspot.in","blogspot.is","blogspot.it","blogspot.jp","blogspot.kr","blogspot.li","blogspot.lt","blogspot.lu","blogspot.md","blogspot.mk","blogspot.mr","blogspot.mx","blogspot.my","blogspot.nl","blogspot.no","blogspot.pe","blogspot.pt","blogspot.qa","blogspot.re","blogspot.ro","blogspot.rs","blogspot.ru","blogspot.se","blogspot.sg","blogspot.si","blogspot.sk","blogspot.sn","blogspot.td","blogspot.tw","blogspot.ug","blogspot.vn","goupile.fr","gov.nl","awsmppl.com","günstigbestellen.de","günstigliefern.de","fin.ci","free.hr","caa.li","ua.rs","conf.se","hs.zone","hs.run","hashbang.sh","hasura.app","hasura-app.io","pages.it.hs-heilbronn.de","hepforge.org","herokuapp.com","herokussl.com","ravendb.cloud","myravendb.com","ravendb.community","ravendb.me","development.run","ravendb.run","homesklep.pl","secaas.hk","hoplix.shop","orx.biz","biz.gl","col.ng","firm.ng","gen.ng","ltd.ng","ngo.ng","edu.scot","sch.so","hostyhosting.io","häkkinen.fi","*.moonscale.io","moonscale.net","iki.fi","ibxos.it","iliadboxos.it","impertrixcdn.com","impertrix.com","smushcdn.com","wphostedmail.com","wpmucdn.com","tempurl.host","wpmudev.host","dyn-berlin.de","in-berlin.de","in-brb.de","in-butter.de","in-dsl.de","in-dsl.net","in-dsl.org","in-vpn.de","in-vpn.net","in-vpn.org","biz.at","info.at","info.cx","ac.leg.br","al.leg.br","am.leg.br","ap.leg.br","ba.leg.br","ce.leg.br","df.leg.br","es.leg.br","go.leg.br","ma.leg.br","mg.leg.br","ms.leg.br","mt.leg.br","pa.leg.br","pb.leg.br","pe.leg.br","pi.leg.br","pr.leg.br","rj.leg.br","rn.leg.br","ro.leg.br","rr.leg.br","rs.leg.br","sc.leg.br","se.leg.br","sp.leg.br","to.leg.br","pixolino.com","na4u.ru","iopsys.se","ipifony.net","iservschule.de","mein-iserv.de","schulplattform.de","schulserver.de","test-iserv.de","iserv.dev","iobb.net","mel.cloudlets.com.au","cloud.interhostsolutions.be","users.scale.virtualcloud.com.br","mycloud.by","alp1.ae.flow.ch","appengine.flow.ch","es-1.axarnet.cloud","diadem.cloud","vip.jelastic.cloud","jele.cloud","it1.eur.aruba.jenv-aruba.cloud","it1.jenv-aruba.cloud","keliweb.cloud","cs.keliweb.cloud","oxa.cloud","tn.oxa.cloud","uk.oxa.cloud","primetel.cloud","uk.primetel.cloud","ca.reclaim.cloud","uk.reclaim.cloud","us.reclaim.cloud","ch.trendhosting.cloud","de.trendhosting.cloud","jele.club","amscompute.com","clicketcloud.com","dopaas.com","hidora.com","paas.hosted-by-previder.com","rag-cloud.hosteur.com","rag-cloud-ch.hosteur.com","jcloud.ik-server.com","jcloud-ver-jpc.ik-server.com","demo.jelastic.com","kilatiron.com","paas.massivegrid.com","jed.wafaicloud.com","lon.wafaicloud.com","ryd.wafaicloud.com","j.scaleforce.com.cy","jelastic.dogado.eu","fi.cloudplatform.fi","demo.datacenter.fi","paas.datacenter.fi","jele.host","mircloud.host","paas.beebyte.io","sekd1.beebyteapp.io","jele.io","cloud-fr1.unispace.io","jc.neen.it","cloud.jelastic.open.tim.it","jcloud.kz","upaas.kazteleport.kz","cloudjiffy.net","fra1-de.cloudjiffy.net","west1-us.cloudjiffy.net","jls-sto1.elastx.net","jls-sto2.elastx.net","jls-sto3.elastx.net","faststacks.net","fr-1.paas.massivegrid.net","lon-1.paas.massivegrid.net","lon-2.paas.massivegrid.net","ny-1.paas.massivegrid.net","ny-2.paas.massivegrid.net","sg-1.paas.massivegrid.net","jelastic.saveincloud.net","nordeste-idc.saveincloud.net","j.scaleforce.net","jelastic.tsukaeru.net","sdscloud.pl","unicloud.pl","mircloud.ru","jelastic.regruhosting.ru","enscaled.sg","jele.site","jelastic.team","orangecloud.tn","j.layershift.co.uk","phx.enscaled.us","mircloud.us","myjino.ru","*.hosting.myjino.ru","*.landing.myjino.ru","*.spectrum.myjino.ru","*.vps.myjino.ru","jotelulu.cloud","*.triton.zone","*.cns.joyent.com","js.org","kaas.gg","khplay.nl","ktistory.com","kapsi.fi","keymachine.de","kinghost.net","uni5.net","knightpoint.systems","koobin.events","oya.to","kuleuven.cloud","ezproxy.kuleuven.be","co.krd","edu.krd","krellian.net","webthings.io","git-repos.de","lcube-server.de","svn-repos.de","leadpages.co","lpages.co","lpusercontent.com","lelux.site","co.business","co.education","co.events","co.financial","co.network","co.place","co.technology","app.lmpm.com","linkyard.cloud","linkyard-cloud.ch","members.linode.com","*.nodebalancer.linode.com","*.linodeobjects.com","ip.linodeusercontent.com","we.bs","*.user.localcert.dev","localzone.xyz","loginline.app","loginline.dev","loginline.io","loginline.services","loginline.site","servers.run","lohmus.me","krasnik.pl","leczna.pl","lubartow.pl","lublin.pl","poniatowa.pl","swidnik.pl","glug.org.uk","lug.org.uk","lugs.org.uk","barsy.bg","barsy.co.uk","barsyonline.co.uk","barsycenter.com","barsyonline.com","barsy.club","barsy.de","barsy.eu","barsy.in","barsy.info","barsy.io","barsy.me","barsy.menu","barsy.mobi","barsy.net","barsy.online","barsy.org","barsy.pro","barsy.pub","barsy.ro","barsy.shop","barsy.site","barsy.support","barsy.uk","*.magentosite.cloud","mayfirst.info","mayfirst.org","hb.cldmail.ru","cn.vu","mazeplay.com","mcpe.me","mcdir.me","mcdir.ru","mcpre.ru","vps.mcdir.ru","mediatech.by","mediatech.dev","hra.health","miniserver.com","memset.net","messerli.app","*.cloud.metacentrum.cz","custom.metacentrum.cz","flt.cloud.muni.cz","usr.cloud.muni.cz","meteorapp.com","eu.meteorapp.com","co.pl","*.azurecontainer.io","azurewebsites.net","azure-mobile.net","cloudapp.net","azurestaticapps.net","1.azurestaticapps.net","centralus.azurestaticapps.net","eastasia.azurestaticapps.net","eastus2.azurestaticapps.net","westeurope.azurestaticapps.net","westus2.azurestaticapps.net","csx.cc","mintere.site","forte.id","mozilla-iot.org","bmoattachments.org","net.ru","org.ru","pp.ru","hostedpi.com","customer.mythic-beasts.com","caracal.mythic-beasts.com","fentiger.mythic-beasts.com","lynx.mythic-beasts.com","ocelot.mythic-beasts.com","oncilla.mythic-beasts.com","onza.mythic-beasts.com","sphinx.mythic-beasts.com","vs.mythic-beasts.com","x.mythic-beasts.com","yali.mythic-beasts.com","cust.retrosnub.co.uk","ui.nabu.casa","pony.club","of.fashion","in.london","of.london","from.marketing","with.marketing","for.men","repair.men","and.mom","for.mom","for.one","under.one","for.sale","that.win","from.work","to.work","cloud.nospamproxy.com","netlify.app","4u.com","ngrok.io","nh-serv.co.uk","nfshost.com","*.developer.app","noop.app","*.northflank.app","*.build.run","*.code.run","*.database.run","*.migration.run","noticeable.news","dnsking.ch","mypi.co","n4t.co","001www.com","ddnslive.com","myiphost.com","forumz.info","16-b.it","32-b.it","64-b.it","soundcast.me","tcp4.me","dnsup.net","hicam.net","now-dns.net","ownip.net","vpndns.net","dynserv.org","now-dns.org","x443.pw","now-dns.top","ntdll.top","freeddns.us","crafting.xyz","zapto.xyz","nsupdate.info","nerdpol.ovh","blogsyte.com","brasilia.me","cable-modem.org","ciscofreak.com","collegefan.org","couchpotatofries.org","damnserver.com","ddns.me","ditchyourip.com","dnsfor.me","dnsiskinky.com","dvrcam.info","dynns.com","eating-organic.net","fantasyleague.cc","geekgalaxy.com","golffan.us","health-carereform.com","homesecuritymac.com","homesecuritypc.com","hopto.me","ilovecollege.info","loginto.me","mlbfan.org","mmafan.biz","myactivedirectory.com","mydissent.net","myeffect.net","mymediapc.net","mypsx.net","mysecuritycamera.com","mysecuritycamera.net","mysecuritycamera.org","net-freaks.com","nflfan.org","nhlfan.net","no-ip.ca","no-ip.co.uk","no-ip.net","noip.us","onthewifi.com","pgafan.net","point2this.com","pointto.us","privatizehealthinsurance.net","quicksytes.com","read-books.org","securitytactics.com","serveexchange.com","servehumour.com","servep2p.com","servesarcasm.com","stufftoread.com","ufcfan.org","unusualperson.com","workisboring.com","3utilities.com","bounceme.net","ddns.net","ddnsking.com","gotdns.ch","hopto.org","myftp.biz","myftp.org","myvnc.com","no-ip.biz","no-ip.info","no-ip.org","noip.me","redirectme.net","servebeer.com","serveblog.net","servecounterstrike.com","serveftp.com","servegame.com","servehalflife.com","servehttp.com","serveirc.com","serveminecraft.net","servemp3.com","servepics.com","servequake.com","sytes.net","webhop.me","zapto.org","stage.nodeart.io","pcloud.host","nyc.mn","static.observableusercontent.com","cya.gg","omg.lol","cloudycluster.net","omniwe.site","service.one","nid.io","opensocial.site","opencraft.hosting","orsites.com","operaunite.com","tech.orange","authgear-staging.com","authgearapps.com","skygearapp.com","outsystemscloud.com","*.webpaas.ovh.net","*.hosting.ovh.net","ownprovider.com","own.pm","*.owo.codes","ox.rs","oy.lc","pgfog.com","pagefrontapp.com","pagexl.com","*.paywhirl.com","bar0.net","bar1.net","bar2.net","rdv.to","art.pl","gliwice.pl","krakow.pl","poznan.pl","wroc.pl","zakopane.pl","pantheonsite.io","gotpantheon.com","mypep.link","perspecta.cloud","lk3.ru","on-web.fr","bc.platform.sh","ent.platform.sh","eu.platform.sh","us.platform.sh","*.platformsh.site","*.tst.site","platter-app.com","platter-app.dev","platterp.us","pdns.page","plesk.page","pleskns.com","dyn53.io","onporter.run","co.bn","postman-echo.com","pstmn.io","mock.pstmn.io","httpbin.org","prequalifyme.today","xen.prgmr.com","priv.at","prvcy.page","*.dweb.link","protonet.io","chirurgiens-dentistes-en-france.fr","byen.site","pubtls.org","pythonanywhere.com","eu.pythonanywhere.com","qoto.io","qualifioapp.com","qbuser.com","cloudsite.builders","instances.spawn.cc","instantcloud.cn","ras.ru","qa2.com","qcx.io","*.sys.qcx.io","dev-myqnapcloud.com","alpha-myqnapcloud.com","myqnapcloud.com","*.quipelements.com","vapor.cloud","vaporcloud.io","rackmaze.com","rackmaze.net","g.vbrplsbx.io","*.on-k3s.io","*.on-rancher.cloud","*.on-rio.io","readthedocs.io","rhcloud.com","app.render.com","onrender.com","repl.co","id.repl.co","repl.run","resindevice.io","devices.resinstaging.io","hzc.io","wellbeingzone.eu","wellbeingzone.co.uk","adimo.co.uk","itcouldbewor.se","git-pages.rit.edu","rocky.page","биз.рус","ком.рус","крым.рус","мир.рус","мск.рус","орг.рус","самара.рус","сочи.рус","спб.рус","я.рус","*.builder.code.com","*.dev-builder.code.com","*.stg-builder.code.com","sandcats.io","logoip.de","logoip.com","fr-par-1.baremetal.scw.cloud","fr-par-2.baremetal.scw.cloud","nl-ams-1.baremetal.scw.cloud","fnc.fr-par.scw.cloud","functions.fnc.fr-par.scw.cloud","k8s.fr-par.scw.cloud","nodes.k8s.fr-par.scw.cloud","s3.fr-par.scw.cloud","s3-website.fr-par.scw.cloud","whm.fr-par.scw.cloud","priv.instances.scw.cloud","pub.instances.scw.cloud","k8s.scw.cloud","k8s.nl-ams.scw.cloud","nodes.k8s.nl-ams.scw.cloud","s3.nl-ams.scw.cloud","s3-website.nl-ams.scw.cloud","whm.nl-ams.scw.cloud","k8s.pl-waw.scw.cloud","nodes.k8s.pl-waw.scw.cloud","s3.pl-waw.scw.cloud","s3-website.pl-waw.scw.cloud","scalebook.scw.cloud","smartlabeling.scw.cloud","dedibox.fr","schokokeks.net","gov.scot","service.gov.scot","scrysec.com","firewall-gateway.com","firewall-gateway.de","my-gateway.de","my-router.de","spdns.de","spdns.eu","firewall-gateway.net","my-firewall.org","myfirewall.org","spdns.org","seidat.net","sellfy.store","senseering.net","minisite.ms","magnet.page","biz.ua","co.ua","pp.ua","shiftcrypto.dev","shiftcrypto.io","shiftedit.io","myshopblocks.com","myshopify.com","shopitsite.com","shopware.store","mo-siemens.io","1kapp.com","appchizi.com","applinzi.com","sinaapp.com","vipsinaapp.com","siteleaf.net","bounty-full.com","alpha.bounty-full.com","beta.bounty-full.com","small-web.org","vp4.me","try-snowplow.com","srht.site","stackhero-network.com","musician.io","novecore.site","static.land","dev.static.land","sites.static.land","storebase.store","vps-host.net","atl.jelastic.vps-host.net","njs.jelastic.vps-host.net","ric.jelastic.vps-host.net","playstation-cloud.com","apps.lair.io","*.stolos.io","spacekit.io","customer.speedpartner.de","myspreadshop.at","myspreadshop.com.au","myspreadshop.be","myspreadshop.ca","myspreadshop.ch","myspreadshop.com","myspreadshop.de","myspreadshop.dk","myspreadshop.es","myspreadshop.fi","myspreadshop.fr","myspreadshop.ie","myspreadshop.it","myspreadshop.net","myspreadshop.nl","myspreadshop.no","myspreadshop.pl","myspreadshop.se","myspreadshop.co.uk","api.stdlib.com","storj.farm","utwente.io","soc.srcf.net","user.srcf.net","temp-dns.com","supabase.co","supabase.in","supabase.net","su.paba.se","*.s5y.io","*.sensiosite.cloud","syncloud.it","dscloud.biz","direct.quickconnect.cn","dsmynas.com","familyds.com","diskstation.me","dscloud.me","i234.me","myds.me","synology.me","dscloud.mobi","dsmynas.net","familyds.net","dsmynas.org","familyds.org","vpnplus.to","direct.quickconnect.to","tabitorder.co.il","taifun-dns.de","beta.tailscale.net","ts.net","gda.pl","gdansk.pl","gdynia.pl","med.pl","sopot.pl","site.tb-hosting.com","edugit.io","s3.teckids.org","telebit.app","telebit.io","*.telebit.xyz","gwiddle.co.uk","*.firenet.ch","*.svc.firenet.ch","reservd.com","thingdustdata.com","cust.dev.thingdust.io","cust.disrec.thingdust.io","cust.prod.thingdust.io","cust.testing.thingdust.io","reservd.dev.thingdust.io","reservd.disrec.thingdust.io","reservd.testing.thingdust.io","tickets.io","arvo.network","azimuth.network","tlon.network","torproject.net","pages.torproject.net","bloxcms.com","townnews-staging.com","tbits.me","12hp.at","2ix.at","4lima.at","lima-city.at","12hp.ch","2ix.ch","4lima.ch","lima-city.ch","trafficplex.cloud","de.cool","12hp.de","2ix.de","4lima.de","lima-city.de","1337.pictures","clan.rip","lima-city.rocks","webspace.rocks","lima.zone","*.transurl.be","*.transurl.eu","*.transurl.nl","site.transip.me","tuxfamily.org","dd-dns.de","diskstation.eu","diskstation.org","dray-dns.de","draydns.de","dyn-vpn.de","dynvpn.de","mein-vigor.de","my-vigor.de","my-wan.de","syno-ds.de","synology-diskstation.de","synology-ds.de","typedream.app","pro.typeform.com","uber.space","*.uberspace.de","hk.com","hk.org","ltd.hk","inc.hk","name.pm","sch.tf","biz.wf","sch.wf","org.yt","virtualuser.de","virtual-user.de","upli.io","urown.cloud","dnsupdate.info","lib.de.us","2038.io","vercel.app","vercel.dev","now.sh","router.management","v-info.info","voorloper.cloud","neko.am","nyaa.am","be.ax","cat.ax","es.ax","eu.ax","gg.ax","mc.ax","us.ax","xy.ax","nl.ci","xx.gl","app.gp","blog.gt","de.gt","to.gt","be.gy","cc.hn","blog.kg","io.kg","jp.kg","tv.kg","uk.kg","us.kg","de.ls","at.md","de.md","jp.md","to.md","indie.porn","vxl.sh","ch.tc","me.tc","we.tc","nyan.to","at.vg","blog.vu","dev.vu","me.vu","v.ua","*.vultrobjects.com","wafflecell.com","*.webhare.dev","reserve-online.net","reserve-online.com","bookonline.app","hotelwithflight.com","wedeploy.io","wedeploy.me","wedeploy.sh","remotewd.com","pages.wiardweb.com","wmflabs.org","toolforge.org","wmcloud.org","panel.gg","daemon.panel.gg","messwithdns.com","woltlab-demo.com","myforum.community","community-pro.de","diskussionsbereich.de","community-pro.net","meinforum.net","affinitylottery.org.uk","raffleentry.org.uk","weeklylottery.org.uk","wpenginepowered.com","js.wpenginepowered.com","wixsite.com","editorx.io","half.host","xnbay.com","u2.xnbay.com","u2-local.xnbay.com","cistron.nl","demon.nl","xs4all.space","yandexcloud.net","storage.yandexcloud.net","website.yandexcloud.net","official.academy","yolasite.com","ybo.faith","yombo.me","homelink.one","ybo.party","ybo.review","ybo.science","ybo.trade","ynh.fr","nohost.me","noho.st","za.net","za.org","bss.design","basicserver.io","virtualserver.io","enterprisecloud.nu"]')},92472:Wt=>{"use strict";Wt.exports=JSON.parse('[[[0,44],4],[[45,46],2],[47,4],[[48,57],2],[[58,64],4],[65,1,"a"],[66,1,"b"],[67,1,"c"],[68,1,"d"],[69,1,"e"],[70,1,"f"],[71,1,"g"],[72,1,"h"],[73,1,"i"],[74,1,"j"],[75,1,"k"],[76,1,"l"],[77,1,"m"],[78,1,"n"],[79,1,"o"],[80,1,"p"],[81,1,"q"],[82,1,"r"],[83,1,"s"],[84,1,"t"],[85,1,"u"],[86,1,"v"],[87,1,"w"],[88,1,"x"],[89,1,"y"],[90,1,"z"],[[91,96],4],[[97,122],2],[[123,127],4],[[128,159],3],[160,5," "],[[161,167],2],[168,5," ̈"],[169,2],[170,1,"a"],[[171,172],2],[173,7],[174,2],[175,5," ̄"],[[176,177],2],[178,1,"2"],[179,1,"3"],[180,5," ́"],[181,1,"μ"],[182,2],[183,2],[184,5," ̧"],[185,1,"1"],[186,1,"o"],[187,2],[188,1,"1⁄4"],[189,1,"1⁄2"],[190,1,"3⁄4"],[191,2],[192,1,"à"],[193,1,"á"],[194,1,"â"],[195,1,"ã"],[196,1,"ä"],[197,1,"å"],[198,1,"æ"],[199,1,"ç"],[200,1,"è"],[201,1,"é"],[202,1,"ê"],[203,1,"ë"],[204,1,"ì"],[205,1,"í"],[206,1,"î"],[207,1,"ï"],[208,1,"ð"],[209,1,"ñ"],[210,1,"ò"],[211,1,"ó"],[212,1,"ô"],[213,1,"õ"],[214,1,"ö"],[215,2],[216,1,"ø"],[217,1,"ù"],[218,1,"ú"],[219,1,"û"],[220,1,"ü"],[221,1,"ý"],[222,1,"þ"],[223,6,"ss"],[[224,246],2],[247,2],[[248,255],2],[256,1,"ā"],[257,2],[258,1,"ă"],[259,2],[260,1,"ą"],[261,2],[262,1,"ć"],[263,2],[264,1,"ĉ"],[265,2],[266,1,"ċ"],[267,2],[268,1,"č"],[269,2],[270,1,"ď"],[271,2],[272,1,"đ"],[273,2],[274,1,"ē"],[275,2],[276,1,"ĕ"],[277,2],[278,1,"ė"],[279,2],[280,1,"ę"],[281,2],[282,1,"ě"],[283,2],[284,1,"ĝ"],[285,2],[286,1,"ğ"],[287,2],[288,1,"ġ"],[289,2],[290,1,"ģ"],[291,2],[292,1,"ĥ"],[293,2],[294,1,"ħ"],[295,2],[296,1,"ĩ"],[297,2],[298,1,"ī"],[299,2],[300,1,"ĭ"],[301,2],[302,1,"į"],[303,2],[304,1,"i̇"],[305,2],[[306,307],1,"ij"],[308,1,"ĵ"],[309,2],[310,1,"ķ"],[[311,312],2],[313,1,"ĺ"],[314,2],[315,1,"ļ"],[316,2],[317,1,"ľ"],[318,2],[[319,320],1,"l·"],[321,1,"ł"],[322,2],[323,1,"ń"],[324,2],[325,1,"ņ"],[326,2],[327,1,"ň"],[328,2],[329,1,"ʼn"],[330,1,"ŋ"],[331,2],[332,1,"ō"],[333,2],[334,1,"ŏ"],[335,2],[336,1,"ő"],[337,2],[338,1,"œ"],[339,2],[340,1,"ŕ"],[341,2],[342,1,"ŗ"],[343,2],[344,1,"ř"],[345,2],[346,1,"ś"],[347,2],[348,1,"ŝ"],[349,2],[350,1,"ş"],[351,2],[352,1,"š"],[353,2],[354,1,"ţ"],[355,2],[356,1,"ť"],[357,2],[358,1,"ŧ"],[359,2],[360,1,"ũ"],[361,2],[362,1,"ū"],[363,2],[364,1,"ŭ"],[365,2],[366,1,"ů"],[367,2],[368,1,"ű"],[369,2],[370,1,"ų"],[371,2],[372,1,"ŵ"],[373,2],[374,1,"ŷ"],[375,2],[376,1,"ÿ"],[377,1,"ź"],[378,2],[379,1,"ż"],[380,2],[381,1,"ž"],[382,2],[383,1,"s"],[384,2],[385,1,"ɓ"],[386,1,"ƃ"],[387,2],[388,1,"ƅ"],[389,2],[390,1,"ɔ"],[391,1,"ƈ"],[392,2],[393,1,"ɖ"],[394,1,"ɗ"],[395,1,"ƌ"],[[396,397],2],[398,1,"ǝ"],[399,1,"ə"],[400,1,"ɛ"],[401,1,"ƒ"],[402,2],[403,1,"ɠ"],[404,1,"ɣ"],[405,2],[406,1,"ɩ"],[407,1,"ɨ"],[408,1,"ƙ"],[[409,411],2],[412,1,"ɯ"],[413,1,"ɲ"],[414,2],[415,1,"ɵ"],[416,1,"ơ"],[417,2],[418,1,"ƣ"],[419,2],[420,1,"ƥ"],[421,2],[422,1,"ʀ"],[423,1,"ƨ"],[424,2],[425,1,"ʃ"],[[426,427],2],[428,1,"ƭ"],[429,2],[430,1,"ʈ"],[431,1,"ư"],[432,2],[433,1,"ʊ"],[434,1,"ʋ"],[435,1,"ƴ"],[436,2],[437,1,"ƶ"],[438,2],[439,1,"ʒ"],[440,1,"ƹ"],[[441,443],2],[444,1,"ƽ"],[[445,451],2],[[452,454],1,"dž"],[[455,457],1,"lj"],[[458,460],1,"nj"],[461,1,"ǎ"],[462,2],[463,1,"ǐ"],[464,2],[465,1,"ǒ"],[466,2],[467,1,"ǔ"],[468,2],[469,1,"ǖ"],[470,2],[471,1,"ǘ"],[472,2],[473,1,"ǚ"],[474,2],[475,1,"ǜ"],[[476,477],2],[478,1,"ǟ"],[479,2],[480,1,"ǡ"],[481,2],[482,1,"ǣ"],[483,2],[484,1,"ǥ"],[485,2],[486,1,"ǧ"],[487,2],[488,1,"ǩ"],[489,2],[490,1,"ǫ"],[491,2],[492,1,"ǭ"],[493,2],[494,1,"ǯ"],[[495,496],2],[[497,499],1,"dz"],[500,1,"ǵ"],[501,2],[502,1,"ƕ"],[503,1,"ƿ"],[504,1,"ǹ"],[505,2],[506,1,"ǻ"],[507,2],[508,1,"ǽ"],[509,2],[510,1,"ǿ"],[511,2],[512,1,"ȁ"],[513,2],[514,1,"ȃ"],[515,2],[516,1,"ȅ"],[517,2],[518,1,"ȇ"],[519,2],[520,1,"ȉ"],[521,2],[522,1,"ȋ"],[523,2],[524,1,"ȍ"],[525,2],[526,1,"ȏ"],[527,2],[528,1,"ȑ"],[529,2],[530,1,"ȓ"],[531,2],[532,1,"ȕ"],[533,2],[534,1,"ȗ"],[535,2],[536,1,"ș"],[537,2],[538,1,"ț"],[539,2],[540,1,"ȝ"],[541,2],[542,1,"ȟ"],[543,2],[544,1,"ƞ"],[545,2],[546,1,"ȣ"],[547,2],[548,1,"ȥ"],[549,2],[550,1,"ȧ"],[551,2],[552,1,"ȩ"],[553,2],[554,1,"ȫ"],[555,2],[556,1,"ȭ"],[557,2],[558,1,"ȯ"],[559,2],[560,1,"ȱ"],[561,2],[562,1,"ȳ"],[563,2],[[564,566],2],[[567,569],2],[570,1,"ⱥ"],[571,1,"ȼ"],[572,2],[573,1,"ƚ"],[574,1,"ⱦ"],[[575,576],2],[577,1,"ɂ"],[578,2],[579,1,"ƀ"],[580,1,"ʉ"],[581,1,"ʌ"],[582,1,"ɇ"],[583,2],[584,1,"ɉ"],[585,2],[586,1,"ɋ"],[587,2],[588,1,"ɍ"],[589,2],[590,1,"ɏ"],[591,2],[[592,680],2],[[681,685],2],[[686,687],2],[688,1,"h"],[689,1,"ɦ"],[690,1,"j"],[691,1,"r"],[692,1,"ɹ"],[693,1,"ɻ"],[694,1,"ʁ"],[695,1,"w"],[696,1,"y"],[[697,705],2],[[706,709],2],[[710,721],2],[[722,727],2],[728,5," ̆"],[729,5," ̇"],[730,5," ̊"],[731,5," ̨"],[732,5," ̃"],[733,5," ̋"],[734,2],[735,2],[736,1,"ɣ"],[737,1,"l"],[738,1,"s"],[739,1,"x"],[740,1,"ʕ"],[[741,745],2],[[746,747],2],[748,2],[749,2],[750,2],[[751,767],2],[[768,831],2],[832,1,"̀"],[833,1,"́"],[834,2],[835,1,"̓"],[836,1,"̈́"],[837,1,"ι"],[[838,846],2],[847,7],[[848,855],2],[[856,860],2],[[861,863],2],[[864,865],2],[866,2],[[867,879],2],[880,1,"ͱ"],[881,2],[882,1,"ͳ"],[883,2],[884,1,"ʹ"],[885,2],[886,1,"ͷ"],[887,2],[[888,889],3],[890,5," ι"],[[891,893],2],[894,5,";"],[895,1,"ϳ"],[[896,899],3],[900,5," ́"],[901,5," ̈́"],[902,1,"ά"],[903,1,"·"],[904,1,"έ"],[905,1,"ή"],[906,1,"ί"],[907,3],[908,1,"ό"],[909,3],[910,1,"ύ"],[911,1,"ώ"],[912,2],[913,1,"α"],[914,1,"β"],[915,1,"γ"],[916,1,"δ"],[917,1,"ε"],[918,1,"ζ"],[919,1,"η"],[920,1,"θ"],[921,1,"ι"],[922,1,"κ"],[923,1,"λ"],[924,1,"μ"],[925,1,"ν"],[926,1,"ξ"],[927,1,"ο"],[928,1,"π"],[929,1,"ρ"],[930,3],[931,1,"σ"],[932,1,"τ"],[933,1,"υ"],[934,1,"φ"],[935,1,"χ"],[936,1,"ψ"],[937,1,"ω"],[938,1,"ϊ"],[939,1,"ϋ"],[[940,961],2],[962,6,"σ"],[[963,974],2],[975,1,"ϗ"],[976,1,"β"],[977,1,"θ"],[978,1,"υ"],[979,1,"ύ"],[980,1,"ϋ"],[981,1,"φ"],[982,1,"π"],[983,2],[984,1,"ϙ"],[985,2],[986,1,"ϛ"],[987,2],[988,1,"ϝ"],[989,2],[990,1,"ϟ"],[991,2],[992,1,"ϡ"],[993,2],[994,1,"ϣ"],[995,2],[996,1,"ϥ"],[997,2],[998,1,"ϧ"],[999,2],[1000,1,"ϩ"],[1001,2],[1002,1,"ϫ"],[1003,2],[1004,1,"ϭ"],[1005,2],[1006,1,"ϯ"],[1007,2],[1008,1,"κ"],[1009,1,"ρ"],[1010,1,"σ"],[1011,2],[1012,1,"θ"],[1013,1,"ε"],[1014,2],[1015,1,"ϸ"],[1016,2],[1017,1,"σ"],[1018,1,"ϻ"],[1019,2],[1020,2],[1021,1,"ͻ"],[1022,1,"ͼ"],[1023,1,"ͽ"],[1024,1,"ѐ"],[1025,1,"ё"],[1026,1,"ђ"],[1027,1,"ѓ"],[1028,1,"є"],[1029,1,"ѕ"],[1030,1,"і"],[1031,1,"ї"],[1032,1,"ј"],[1033,1,"љ"],[1034,1,"њ"],[1035,1,"ћ"],[1036,1,"ќ"],[1037,1,"ѝ"],[1038,1,"ў"],[1039,1,"џ"],[1040,1,"а"],[1041,1,"б"],[1042,1,"в"],[1043,1,"г"],[1044,1,"д"],[1045,1,"е"],[1046,1,"ж"],[1047,1,"з"],[1048,1,"и"],[1049,1,"й"],[1050,1,"к"],[1051,1,"л"],[1052,1,"м"],[1053,1,"н"],[1054,1,"о"],[1055,1,"п"],[1056,1,"р"],[1057,1,"с"],[1058,1,"т"],[1059,1,"у"],[1060,1,"ф"],[1061,1,"х"],[1062,1,"ц"],[1063,1,"ч"],[1064,1,"ш"],[1065,1,"щ"],[1066,1,"ъ"],[1067,1,"ы"],[1068,1,"ь"],[1069,1,"э"],[1070,1,"ю"],[1071,1,"я"],[[1072,1103],2],[1104,2],[[1105,1116],2],[1117,2],[[1118,1119],2],[1120,1,"ѡ"],[1121,2],[1122,1,"ѣ"],[1123,2],[1124,1,"ѥ"],[1125,2],[1126,1,"ѧ"],[1127,2],[1128,1,"ѩ"],[1129,2],[1130,1,"ѫ"],[1131,2],[1132,1,"ѭ"],[1133,2],[1134,1,"ѯ"],[1135,2],[1136,1,"ѱ"],[1137,2],[1138,1,"ѳ"],[1139,2],[1140,1,"ѵ"],[1141,2],[1142,1,"ѷ"],[1143,2],[1144,1,"ѹ"],[1145,2],[1146,1,"ѻ"],[1147,2],[1148,1,"ѽ"],[1149,2],[1150,1,"ѿ"],[1151,2],[1152,1,"ҁ"],[1153,2],[1154,2],[[1155,1158],2],[1159,2],[[1160,1161],2],[1162,1,"ҋ"],[1163,2],[1164,1,"ҍ"],[1165,2],[1166,1,"ҏ"],[1167,2],[1168,1,"ґ"],[1169,2],[1170,1,"ғ"],[1171,2],[1172,1,"ҕ"],[1173,2],[1174,1,"җ"],[1175,2],[1176,1,"ҙ"],[1177,2],[1178,1,"қ"],[1179,2],[1180,1,"ҝ"],[1181,2],[1182,1,"ҟ"],[1183,2],[1184,1,"ҡ"],[1185,2],[1186,1,"ң"],[1187,2],[1188,1,"ҥ"],[1189,2],[1190,1,"ҧ"],[1191,2],[1192,1,"ҩ"],[1193,2],[1194,1,"ҫ"],[1195,2],[1196,1,"ҭ"],[1197,2],[1198,1,"ү"],[1199,2],[1200,1,"ұ"],[1201,2],[1202,1,"ҳ"],[1203,2],[1204,1,"ҵ"],[1205,2],[1206,1,"ҷ"],[1207,2],[1208,1,"ҹ"],[1209,2],[1210,1,"һ"],[1211,2],[1212,1,"ҽ"],[1213,2],[1214,1,"ҿ"],[1215,2],[1216,3],[1217,1,"ӂ"],[1218,2],[1219,1,"ӄ"],[1220,2],[1221,1,"ӆ"],[1222,2],[1223,1,"ӈ"],[1224,2],[1225,1,"ӊ"],[1226,2],[1227,1,"ӌ"],[1228,2],[1229,1,"ӎ"],[1230,2],[1231,2],[1232,1,"ӑ"],[1233,2],[1234,1,"ӓ"],[1235,2],[1236,1,"ӕ"],[1237,2],[1238,1,"ӗ"],[1239,2],[1240,1,"ә"],[1241,2],[1242,1,"ӛ"],[1243,2],[1244,1,"ӝ"],[1245,2],[1246,1,"ӟ"],[1247,2],[1248,1,"ӡ"],[1249,2],[1250,1,"ӣ"],[1251,2],[1252,1,"ӥ"],[1253,2],[1254,1,"ӧ"],[1255,2],[1256,1,"ө"],[1257,2],[1258,1,"ӫ"],[1259,2],[1260,1,"ӭ"],[1261,2],[1262,1,"ӯ"],[1263,2],[1264,1,"ӱ"],[1265,2],[1266,1,"ӳ"],[1267,2],[1268,1,"ӵ"],[1269,2],[1270,1,"ӷ"],[1271,2],[1272,1,"ӹ"],[1273,2],[1274,1,"ӻ"],[1275,2],[1276,1,"ӽ"],[1277,2],[1278,1,"ӿ"],[1279,2],[1280,1,"ԁ"],[1281,2],[1282,1,"ԃ"],[1283,2],[1284,1,"ԅ"],[1285,2],[1286,1,"ԇ"],[1287,2],[1288,1,"ԉ"],[1289,2],[1290,1,"ԋ"],[1291,2],[1292,1,"ԍ"],[1293,2],[1294,1,"ԏ"],[1295,2],[1296,1,"ԑ"],[1297,2],[1298,1,"ԓ"],[1299,2],[1300,1,"ԕ"],[1301,2],[1302,1,"ԗ"],[1303,2],[1304,1,"ԙ"],[1305,2],[1306,1,"ԛ"],[1307,2],[1308,1,"ԝ"],[1309,2],[1310,1,"ԟ"],[1311,2],[1312,1,"ԡ"],[1313,2],[1314,1,"ԣ"],[1315,2],[1316,1,"ԥ"],[1317,2],[1318,1,"ԧ"],[1319,2],[1320,1,"ԩ"],[1321,2],[1322,1,"ԫ"],[1323,2],[1324,1,"ԭ"],[1325,2],[1326,1,"ԯ"],[1327,2],[1328,3],[1329,1,"ա"],[1330,1,"բ"],[1331,1,"գ"],[1332,1,"դ"],[1333,1,"ե"],[1334,1,"զ"],[1335,1,"է"],[1336,1,"ը"],[1337,1,"թ"],[1338,1,"ժ"],[1339,1,"ի"],[1340,1,"լ"],[1341,1,"խ"],[1342,1,"ծ"],[1343,1,"կ"],[1344,1,"հ"],[1345,1,"ձ"],[1346,1,"ղ"],[1347,1,"ճ"],[1348,1,"մ"],[1349,1,"յ"],[1350,1,"ն"],[1351,1,"շ"],[1352,1,"ո"],[1353,1,"չ"],[1354,1,"պ"],[1355,1,"ջ"],[1356,1,"ռ"],[1357,1,"ս"],[1358,1,"վ"],[1359,1,"տ"],[1360,1,"ր"],[1361,1,"ց"],[1362,1,"ւ"],[1363,1,"փ"],[1364,1,"ք"],[1365,1,"օ"],[1366,1,"ֆ"],[[1367,1368],3],[1369,2],[[1370,1375],2],[1376,2],[[1377,1414],2],[1415,1,"եւ"],[1416,2],[1417,2],[1418,2],[[1419,1420],3],[[1421,1422],2],[1423,2],[1424,3],[[1425,1441],2],[1442,2],[[1443,1455],2],[[1456,1465],2],[1466,2],[[1467,1469],2],[1470,2],[1471,2],[1472,2],[[1473,1474],2],[1475,2],[1476,2],[1477,2],[1478,2],[1479,2],[[1480,1487],3],[[1488,1514],2],[[1515,1518],3],[1519,2],[[1520,1524],2],[[1525,1535],3],[[1536,1539],3],[1540,3],[1541,3],[[1542,1546],2],[1547,2],[1548,2],[[1549,1551],2],[[1552,1557],2],[[1558,1562],2],[1563,2],[1564,3],[1565,2],[1566,2],[1567,2],[1568,2],[[1569,1594],2],[[1595,1599],2],[1600,2],[[1601,1618],2],[[1619,1621],2],[[1622,1624],2],[[1625,1630],2],[1631,2],[[1632,1641],2],[[1642,1645],2],[[1646,1647],2],[[1648,1652],2],[1653,1,"اٴ"],[1654,1,"وٴ"],[1655,1,"ۇٴ"],[1656,1,"يٴ"],[[1657,1719],2],[[1720,1721],2],[[1722,1726],2],[1727,2],[[1728,1742],2],[1743,2],[[1744,1747],2],[1748,2],[[1749,1756],2],[1757,3],[1758,2],[[1759,1768],2],[1769,2],[[1770,1773],2],[[1774,1775],2],[[1776,1785],2],[[1786,1790],2],[1791,2],[[1792,1805],2],[1806,3],[1807,3],[[1808,1836],2],[[1837,1839],2],[[1840,1866],2],[[1867,1868],3],[[1869,1871],2],[[1872,1901],2],[[1902,1919],2],[[1920,1968],2],[1969,2],[[1970,1983],3],[[1984,2037],2],[[2038,2042],2],[[2043,2044],3],[2045,2],[[2046,2047],2],[[2048,2093],2],[[2094,2095],3],[[2096,2110],2],[2111,3],[[2112,2139],2],[[2140,2141],3],[2142,2],[2143,3],[[2144,2154],2],[[2155,2159],3],[[2160,2183],2],[2184,2],[[2185,2190],2],[2191,3],[[2192,2193],3],[[2194,2199],3],[[2200,2207],2],[2208,2],[2209,2],[[2210,2220],2],[[2221,2226],2],[[2227,2228],2],[2229,2],[[2230,2237],2],[[2238,2247],2],[[2248,2258],2],[2259,2],[[2260,2273],2],[2274,3],[2275,2],[[2276,2302],2],[2303,2],[2304,2],[[2305,2307],2],[2308,2],[[2309,2361],2],[[2362,2363],2],[[2364,2381],2],[2382,2],[2383,2],[[2384,2388],2],[2389,2],[[2390,2391],2],[2392,1,"क़"],[2393,1,"ख़"],[2394,1,"ग़"],[2395,1,"ज़"],[2396,1,"ड़"],[2397,1,"ढ़"],[2398,1,"फ़"],[2399,1,"य़"],[[2400,2403],2],[[2404,2405],2],[[2406,2415],2],[2416,2],[[2417,2418],2],[[2419,2423],2],[2424,2],[[2425,2426],2],[[2427,2428],2],[2429,2],[[2430,2431],2],[2432,2],[[2433,2435],2],[2436,3],[[2437,2444],2],[[2445,2446],3],[[2447,2448],2],[[2449,2450],3],[[2451,2472],2],[2473,3],[[2474,2480],2],[2481,3],[2482,2],[[2483,2485],3],[[2486,2489],2],[[2490,2491],3],[2492,2],[2493,2],[[2494,2500],2],[[2501,2502],3],[[2503,2504],2],[[2505,2506],3],[[2507,2509],2],[2510,2],[[2511,2518],3],[2519,2],[[2520,2523],3],[2524,1,"ড়"],[2525,1,"ঢ়"],[2526,3],[2527,1,"য়"],[[2528,2531],2],[[2532,2533],3],[[2534,2545],2],[[2546,2554],2],[2555,2],[2556,2],[2557,2],[2558,2],[[2559,2560],3],[2561,2],[2562,2],[2563,2],[2564,3],[[2565,2570],2],[[2571,2574],3],[[2575,2576],2],[[2577,2578],3],[[2579,2600],2],[2601,3],[[2602,2608],2],[2609,3],[2610,2],[2611,1,"ਲ਼"],[2612,3],[2613,2],[2614,1,"ਸ਼"],[2615,3],[[2616,2617],2],[[2618,2619],3],[2620,2],[2621,3],[[2622,2626],2],[[2627,2630],3],[[2631,2632],2],[[2633,2634],3],[[2635,2637],2],[[2638,2640],3],[2641,2],[[2642,2648],3],[2649,1,"ਖ਼"],[2650,1,"ਗ਼"],[2651,1,"ਜ਼"],[2652,2],[2653,3],[2654,1,"ਫ਼"],[[2655,2661],3],[[2662,2676],2],[2677,2],[2678,2],[[2679,2688],3],[[2689,2691],2],[2692,3],[[2693,2699],2],[2700,2],[2701,2],[2702,3],[[2703,2705],2],[2706,3],[[2707,2728],2],[2729,3],[[2730,2736],2],[2737,3],[[2738,2739],2],[2740,3],[[2741,2745],2],[[2746,2747],3],[[2748,2757],2],[2758,3],[[2759,2761],2],[2762,3],[[2763,2765],2],[[2766,2767],3],[2768,2],[[2769,2783],3],[2784,2],[[2785,2787],2],[[2788,2789],3],[[2790,2799],2],[2800,2],[2801,2],[[2802,2808],3],[2809,2],[[2810,2815],2],[2816,3],[[2817,2819],2],[2820,3],[[2821,2828],2],[[2829,2830],3],[[2831,2832],2],[[2833,2834],3],[[2835,2856],2],[2857,3],[[2858,2864],2],[2865,3],[[2866,2867],2],[2868,3],[2869,2],[[2870,2873],2],[[2874,2875],3],[[2876,2883],2],[2884,2],[[2885,2886],3],[[2887,2888],2],[[2889,2890],3],[[2891,2893],2],[[2894,2900],3],[2901,2],[[2902,2903],2],[[2904,2907],3],[2908,1,"ଡ଼"],[2909,1,"ଢ଼"],[2910,3],[[2911,2913],2],[[2914,2915],2],[[2916,2917],3],[[2918,2927],2],[2928,2],[2929,2],[[2930,2935],2],[[2936,2945],3],[[2946,2947],2],[2948,3],[[2949,2954],2],[[2955,2957],3],[[2958,2960],2],[2961,3],[[2962,2965],2],[[2966,2968],3],[[2969,2970],2],[2971,3],[2972,2],[2973,3],[[2974,2975],2],[[2976,2978],3],[[2979,2980],2],[[2981,2983],3],[[2984,2986],2],[[2987,2989],3],[[2990,2997],2],[2998,2],[[2999,3001],2],[[3002,3005],3],[[3006,3010],2],[[3011,3013],3],[[3014,3016],2],[3017,3],[[3018,3021],2],[[3022,3023],3],[3024,2],[[3025,3030],3],[3031,2],[[3032,3045],3],[3046,2],[[3047,3055],2],[[3056,3058],2],[[3059,3066],2],[[3067,3071],3],[3072,2],[[3073,3075],2],[3076,2],[[3077,3084],2],[3085,3],[[3086,3088],2],[3089,3],[[3090,3112],2],[3113,3],[[3114,3123],2],[3124,2],[[3125,3129],2],[[3130,3131],3],[3132,2],[3133,2],[[3134,3140],2],[3141,3],[[3142,3144],2],[3145,3],[[3146,3149],2],[[3150,3156],3],[[3157,3158],2],[3159,3],[[3160,3161],2],[3162,2],[[3163,3164],3],[3165,2],[[3166,3167],3],[[3168,3169],2],[[3170,3171],2],[[3172,3173],3],[[3174,3183],2],[[3184,3190],3],[3191,2],[[3192,3199],2],[3200,2],[3201,2],[[3202,3203],2],[3204,2],[[3205,3212],2],[3213,3],[[3214,3216],2],[3217,3],[[3218,3240],2],[3241,3],[[3242,3251],2],[3252,3],[[3253,3257],2],[[3258,3259],3],[[3260,3261],2],[[3262,3268],2],[3269,3],[[3270,3272],2],[3273,3],[[3274,3277],2],[[3278,3284],3],[[3285,3286],2],[[3287,3292],3],[3293,2],[3294,2],[3295,3],[[3296,3297],2],[[3298,3299],2],[[3300,3301],3],[[3302,3311],2],[3312,3],[[3313,3314],2],[3315,2],[[3316,3327],3],[3328,2],[3329,2],[[3330,3331],2],[3332,2],[[3333,3340],2],[3341,3],[[3342,3344],2],[3345,3],[[3346,3368],2],[3369,2],[[3370,3385],2],[3386,2],[[3387,3388],2],[3389,2],[[3390,3395],2],[3396,2],[3397,3],[[3398,3400],2],[3401,3],[[3402,3405],2],[3406,2],[3407,2],[[3408,3411],3],[[3412,3414],2],[3415,2],[[3416,3422],2],[3423,2],[[3424,3425],2],[[3426,3427],2],[[3428,3429],3],[[3430,3439],2],[[3440,3445],2],[[3446,3448],2],[3449,2],[[3450,3455],2],[3456,3],[3457,2],[[3458,3459],2],[3460,3],[[3461,3478],2],[[3479,3481],3],[[3482,3505],2],[3506,3],[[3507,3515],2],[3516,3],[3517,2],[[3518,3519],3],[[3520,3526],2],[[3527,3529],3],[3530,2],[[3531,3534],3],[[3535,3540],2],[3541,3],[3542,2],[3543,3],[[3544,3551],2],[[3552,3557],3],[[3558,3567],2],[[3568,3569],3],[[3570,3571],2],[3572,2],[[3573,3584],3],[[3585,3634],2],[3635,1,"ํา"],[[3636,3642],2],[[3643,3646],3],[3647,2],[[3648,3662],2],[3663,2],[[3664,3673],2],[[3674,3675],2],[[3676,3712],3],[[3713,3714],2],[3715,3],[3716,2],[3717,3],[3718,2],[[3719,3720],2],[3721,2],[3722,2],[3723,3],[3724,2],[3725,2],[[3726,3731],2],[[3732,3735],2],[3736,2],[[3737,3743],2],[3744,2],[[3745,3747],2],[3748,3],[3749,2],[3750,3],[3751,2],[[3752,3753],2],[[3754,3755],2],[3756,2],[[3757,3762],2],[3763,1,"ໍາ"],[[3764,3769],2],[3770,2],[[3771,3773],2],[[3774,3775],3],[[3776,3780],2],[3781,3],[3782,2],[3783,3],[[3784,3789],2],[3790,2],[3791,3],[[3792,3801],2],[[3802,3803],3],[3804,1,"ຫນ"],[3805,1,"ຫມ"],[[3806,3807],2],[[3808,3839],3],[3840,2],[[3841,3850],2],[3851,2],[3852,1,"་"],[[3853,3863],2],[[3864,3865],2],[[3866,3871],2],[[3872,3881],2],[[3882,3892],2],[3893,2],[3894,2],[3895,2],[3896,2],[3897,2],[[3898,3901],2],[[3902,3906],2],[3907,1,"གྷ"],[[3908,3911],2],[3912,3],[[3913,3916],2],[3917,1,"ཌྷ"],[[3918,3921],2],[3922,1,"དྷ"],[[3923,3926],2],[3927,1,"བྷ"],[[3928,3931],2],[3932,1,"ཛྷ"],[[3933,3944],2],[3945,1,"ཀྵ"],[3946,2],[[3947,3948],2],[[3949,3952],3],[[3953,3954],2],[3955,1,"ཱི"],[3956,2],[3957,1,"ཱུ"],[3958,1,"ྲྀ"],[3959,1,"ྲཱྀ"],[3960,1,"ླྀ"],[3961,1,"ླཱྀ"],[[3962,3968],2],[3969,1,"ཱྀ"],[[3970,3972],2],[3973,2],[[3974,3979],2],[[3980,3983],2],[[3984,3986],2],[3987,1,"ྒྷ"],[[3988,3989],2],[3990,2],[3991,2],[3992,3],[[3993,3996],2],[3997,1,"ྜྷ"],[[3998,4001],2],[4002,1,"ྡྷ"],[[4003,4006],2],[4007,1,"ྦྷ"],[[4008,4011],2],[4012,1,"ྫྷ"],[4013,2],[[4014,4016],2],[[4017,4023],2],[4024,2],[4025,1,"ྐྵ"],[[4026,4028],2],[4029,3],[[4030,4037],2],[4038,2],[[4039,4044],2],[4045,3],[4046,2],[4047,2],[[4048,4049],2],[[4050,4052],2],[[4053,4056],2],[[4057,4058],2],[[4059,4095],3],[[4096,4129],2],[4130,2],[[4131,4135],2],[4136,2],[[4137,4138],2],[4139,2],[[4140,4146],2],[[4147,4149],2],[[4150,4153],2],[[4154,4159],2],[[4160,4169],2],[[4170,4175],2],[[4176,4185],2],[[4186,4249],2],[[4250,4253],2],[[4254,4255],2],[[4256,4293],3],[4294,3],[4295,1,"ⴧ"],[[4296,4300],3],[4301,1,"ⴭ"],[[4302,4303],3],[[4304,4342],2],[[4343,4344],2],[[4345,4346],2],[4347,2],[4348,1,"ნ"],[[4349,4351],2],[[4352,4441],2],[[4442,4446],2],[[4447,4448],3],[[4449,4514],2],[[4515,4519],2],[[4520,4601],2],[[4602,4607],2],[[4608,4614],2],[4615,2],[[4616,4678],2],[4679,2],[4680,2],[4681,3],[[4682,4685],2],[[4686,4687],3],[[4688,4694],2],[4695,3],[4696,2],[4697,3],[[4698,4701],2],[[4702,4703],3],[[4704,4742],2],[4743,2],[4744,2],[4745,3],[[4746,4749],2],[[4750,4751],3],[[4752,4782],2],[4783,2],[4784,2],[4785,3],[[4786,4789],2],[[4790,4791],3],[[4792,4798],2],[4799,3],[4800,2],[4801,3],[[4802,4805],2],[[4806,4807],3],[[4808,4814],2],[4815,2],[[4816,4822],2],[4823,3],[[4824,4846],2],[4847,2],[[4848,4878],2],[4879,2],[4880,2],[4881,3],[[4882,4885],2],[[4886,4887],3],[[4888,4894],2],[4895,2],[[4896,4934],2],[4935,2],[[4936,4954],2],[[4955,4956],3],[[4957,4958],2],[4959,2],[4960,2],[[4961,4988],2],[[4989,4991],3],[[4992,5007],2],[[5008,5017],2],[[5018,5023],3],[[5024,5108],2],[5109,2],[[5110,5111],3],[5112,1,"Ᏸ"],[5113,1,"Ᏹ"],[5114,1,"Ᏺ"],[5115,1,"Ᏻ"],[5116,1,"Ᏼ"],[5117,1,"Ᏽ"],[[5118,5119],3],[5120,2],[[5121,5740],2],[[5741,5742],2],[[5743,5750],2],[[5751,5759],2],[5760,3],[[5761,5786],2],[[5787,5788],2],[[5789,5791],3],[[5792,5866],2],[[5867,5872],2],[[5873,5880],2],[[5881,5887],3],[[5888,5900],2],[5901,2],[[5902,5908],2],[5909,2],[[5910,5918],3],[5919,2],[[5920,5940],2],[[5941,5942],2],[[5943,5951],3],[[5952,5971],2],[[5972,5983],3],[[5984,5996],2],[5997,3],[[5998,6000],2],[6001,3],[[6002,6003],2],[[6004,6015],3],[[6016,6067],2],[[6068,6069],3],[[6070,6099],2],[[6100,6102],2],[6103,2],[[6104,6107],2],[6108,2],[6109,2],[[6110,6111],3],[[6112,6121],2],[[6122,6127],3],[[6128,6137],2],[[6138,6143],3],[[6144,6149],2],[6150,3],[[6151,6154],2],[[6155,6157],7],[6158,3],[6159,7],[[6160,6169],2],[[6170,6175],3],[[6176,6263],2],[6264,2],[[6265,6271],3],[[6272,6313],2],[6314,2],[[6315,6319],3],[[6320,6389],2],[[6390,6399],3],[[6400,6428],2],[[6429,6430],2],[6431,3],[[6432,6443],2],[[6444,6447],3],[[6448,6459],2],[[6460,6463],3],[6464,2],[[6465,6467],3],[[6468,6469],2],[[6470,6509],2],[[6510,6511],3],[[6512,6516],2],[[6517,6527],3],[[6528,6569],2],[[6570,6571],2],[[6572,6575],3],[[6576,6601],2],[[6602,6607],3],[[6608,6617],2],[6618,2],[[6619,6621],3],[[6622,6623],2],[[6624,6655],2],[[6656,6683],2],[[6684,6685],3],[[6686,6687],2],[[6688,6750],2],[6751,3],[[6752,6780],2],[[6781,6782],3],[[6783,6793],2],[[6794,6799],3],[[6800,6809],2],[[6810,6815],3],[[6816,6822],2],[6823,2],[[6824,6829],2],[[6830,6831],3],[[6832,6845],2],[6846,2],[[6847,6848],2],[[6849,6862],2],[[6863,6911],3],[[6912,6987],2],[6988,2],[[6989,6991],3],[[6992,7001],2],[[7002,7018],2],[[7019,7027],2],[[7028,7036],2],[[7037,7038],2],[7039,3],[[7040,7082],2],[[7083,7085],2],[[7086,7097],2],[[7098,7103],2],[[7104,7155],2],[[7156,7163],3],[[7164,7167],2],[[7168,7223],2],[[7224,7226],3],[[7227,7231],2],[[7232,7241],2],[[7242,7244],3],[[7245,7293],2],[[7294,7295],2],[7296,1,"в"],[7297,1,"д"],[7298,1,"о"],[7299,1,"с"],[[7300,7301],1,"т"],[7302,1,"ъ"],[7303,1,"ѣ"],[7304,1,"ꙋ"],[[7305,7311],3],[7312,1,"ა"],[7313,1,"ბ"],[7314,1,"გ"],[7315,1,"დ"],[7316,1,"ე"],[7317,1,"ვ"],[7318,1,"ზ"],[7319,1,"თ"],[7320,1,"ი"],[7321,1,"კ"],[7322,1,"ლ"],[7323,1,"მ"],[7324,1,"ნ"],[7325,1,"ო"],[7326,1,"პ"],[7327,1,"ჟ"],[7328,1,"რ"],[7329,1,"ს"],[7330,1,"ტ"],[7331,1,"უ"],[7332,1,"ფ"],[7333,1,"ქ"],[7334,1,"ღ"],[7335,1,"ყ"],[7336,1,"შ"],[7337,1,"ჩ"],[7338,1,"ც"],[7339,1,"ძ"],[7340,1,"წ"],[7341,1,"ჭ"],[7342,1,"ხ"],[7343,1,"ჯ"],[7344,1,"ჰ"],[7345,1,"ჱ"],[7346,1,"ჲ"],[7347,1,"ჳ"],[7348,1,"ჴ"],[7349,1,"ჵ"],[7350,1,"ჶ"],[7351,1,"ჷ"],[7352,1,"ჸ"],[7353,1,"ჹ"],[7354,1,"ჺ"],[[7355,7356],3],[7357,1,"ჽ"],[7358,1,"ჾ"],[7359,1,"ჿ"],[[7360,7367],2],[[7368,7375],3],[[7376,7378],2],[7379,2],[[7380,7410],2],[[7411,7414],2],[7415,2],[[7416,7417],2],[7418,2],[[7419,7423],3],[[7424,7467],2],[7468,1,"a"],[7469,1,"æ"],[7470,1,"b"],[7471,2],[7472,1,"d"],[7473,1,"e"],[7474,1,"ǝ"],[7475,1,"g"],[7476,1,"h"],[7477,1,"i"],[7478,1,"j"],[7479,1,"k"],[7480,1,"l"],[7481,1,"m"],[7482,1,"n"],[7483,2],[7484,1,"o"],[7485,1,"ȣ"],[7486,1,"p"],[7487,1,"r"],[7488,1,"t"],[7489,1,"u"],[7490,1,"w"],[7491,1,"a"],[7492,1,"ɐ"],[7493,1,"ɑ"],[7494,1,"ᴂ"],[7495,1,"b"],[7496,1,"d"],[7497,1,"e"],[7498,1,"ə"],[7499,1,"ɛ"],[7500,1,"ɜ"],[7501,1,"g"],[7502,2],[7503,1,"k"],[7504,1,"m"],[7505,1,"ŋ"],[7506,1,"o"],[7507,1,"ɔ"],[7508,1,"ᴖ"],[7509,1,"ᴗ"],[7510,1,"p"],[7511,1,"t"],[7512,1,"u"],[7513,1,"ᴝ"],[7514,1,"ɯ"],[7515,1,"v"],[7516,1,"ᴥ"],[7517,1,"β"],[7518,1,"γ"],[7519,1,"δ"],[7520,1,"φ"],[7521,1,"χ"],[7522,1,"i"],[7523,1,"r"],[7524,1,"u"],[7525,1,"v"],[7526,1,"β"],[7527,1,"γ"],[7528,1,"ρ"],[7529,1,"φ"],[7530,1,"χ"],[7531,2],[[7532,7543],2],[7544,1,"н"],[[7545,7578],2],[7579,1,"ɒ"],[7580,1,"c"],[7581,1,"ɕ"],[7582,1,"ð"],[7583,1,"ɜ"],[7584,1,"f"],[7585,1,"ɟ"],[7586,1,"ɡ"],[7587,1,"ɥ"],[7588,1,"ɨ"],[7589,1,"ɩ"],[7590,1,"ɪ"],[7591,1,"ᵻ"],[7592,1,"ʝ"],[7593,1,"ɭ"],[7594,1,"ᶅ"],[7595,1,"ʟ"],[7596,1,"ɱ"],[7597,1,"ɰ"],[7598,1,"ɲ"],[7599,1,"ɳ"],[7600,1,"ɴ"],[7601,1,"ɵ"],[7602,1,"ɸ"],[7603,1,"ʂ"],[7604,1,"ʃ"],[7605,1,"ƫ"],[7606,1,"ʉ"],[7607,1,"ʊ"],[7608,1,"ᴜ"],[7609,1,"ʋ"],[7610,1,"ʌ"],[7611,1,"z"],[7612,1,"ʐ"],[7613,1,"ʑ"],[7614,1,"ʒ"],[7615,1,"θ"],[[7616,7619],2],[[7620,7626],2],[[7627,7654],2],[[7655,7669],2],[[7670,7673],2],[7674,2],[7675,2],[7676,2],[7677,2],[[7678,7679],2],[7680,1,"ḁ"],[7681,2],[7682,1,"ḃ"],[7683,2],[7684,1,"ḅ"],[7685,2],[7686,1,"ḇ"],[7687,2],[7688,1,"ḉ"],[7689,2],[7690,1,"ḋ"],[7691,2],[7692,1,"ḍ"],[7693,2],[7694,1,"ḏ"],[7695,2],[7696,1,"ḑ"],[7697,2],[7698,1,"ḓ"],[7699,2],[7700,1,"ḕ"],[7701,2],[7702,1,"ḗ"],[7703,2],[7704,1,"ḙ"],[7705,2],[7706,1,"ḛ"],[7707,2],[7708,1,"ḝ"],[7709,2],[7710,1,"ḟ"],[7711,2],[7712,1,"ḡ"],[7713,2],[7714,1,"ḣ"],[7715,2],[7716,1,"ḥ"],[7717,2],[7718,1,"ḧ"],[7719,2],[7720,1,"ḩ"],[7721,2],[7722,1,"ḫ"],[7723,2],[7724,1,"ḭ"],[7725,2],[7726,1,"ḯ"],[7727,2],[7728,1,"ḱ"],[7729,2],[7730,1,"ḳ"],[7731,2],[7732,1,"ḵ"],[7733,2],[7734,1,"ḷ"],[7735,2],[7736,1,"ḹ"],[7737,2],[7738,1,"ḻ"],[7739,2],[7740,1,"ḽ"],[7741,2],[7742,1,"ḿ"],[7743,2],[7744,1,"ṁ"],[7745,2],[7746,1,"ṃ"],[7747,2],[7748,1,"ṅ"],[7749,2],[7750,1,"ṇ"],[7751,2],[7752,1,"ṉ"],[7753,2],[7754,1,"ṋ"],[7755,2],[7756,1,"ṍ"],[7757,2],[7758,1,"ṏ"],[7759,2],[7760,1,"ṑ"],[7761,2],[7762,1,"ṓ"],[7763,2],[7764,1,"ṕ"],[7765,2],[7766,1,"ṗ"],[7767,2],[7768,1,"ṙ"],[7769,2],[7770,1,"ṛ"],[7771,2],[7772,1,"ṝ"],[7773,2],[7774,1,"ṟ"],[7775,2],[7776,1,"ṡ"],[7777,2],[7778,1,"ṣ"],[7779,2],[7780,1,"ṥ"],[7781,2],[7782,1,"ṧ"],[7783,2],[7784,1,"ṩ"],[7785,2],[7786,1,"ṫ"],[7787,2],[7788,1,"ṭ"],[7789,2],[7790,1,"ṯ"],[7791,2],[7792,1,"ṱ"],[7793,2],[7794,1,"ṳ"],[7795,2],[7796,1,"ṵ"],[7797,2],[7798,1,"ṷ"],[7799,2],[7800,1,"ṹ"],[7801,2],[7802,1,"ṻ"],[7803,2],[7804,1,"ṽ"],[7805,2],[7806,1,"ṿ"],[7807,2],[7808,1,"ẁ"],[7809,2],[7810,1,"ẃ"],[7811,2],[7812,1,"ẅ"],[7813,2],[7814,1,"ẇ"],[7815,2],[7816,1,"ẉ"],[7817,2],[7818,1,"ẋ"],[7819,2],[7820,1,"ẍ"],[7821,2],[7822,1,"ẏ"],[7823,2],[7824,1,"ẑ"],[7825,2],[7826,1,"ẓ"],[7827,2],[7828,1,"ẕ"],[[7829,7833],2],[7834,1,"aʾ"],[7835,1,"ṡ"],[[7836,7837],2],[7838,1,"ß"],[7839,2],[7840,1,"ạ"],[7841,2],[7842,1,"ả"],[7843,2],[7844,1,"ấ"],[7845,2],[7846,1,"ầ"],[7847,2],[7848,1,"ẩ"],[7849,2],[7850,1,"ẫ"],[7851,2],[7852,1,"ậ"],[7853,2],[7854,1,"ắ"],[7855,2],[7856,1,"ằ"],[7857,2],[7858,1,"ẳ"],[7859,2],[7860,1,"ẵ"],[7861,2],[7862,1,"ặ"],[7863,2],[7864,1,"ẹ"],[7865,2],[7866,1,"ẻ"],[7867,2],[7868,1,"ẽ"],[7869,2],[7870,1,"ế"],[7871,2],[7872,1,"ề"],[7873,2],[7874,1,"ể"],[7875,2],[7876,1,"ễ"],[7877,2],[7878,1,"ệ"],[7879,2],[7880,1,"ỉ"],[7881,2],[7882,1,"ị"],[7883,2],[7884,1,"ọ"],[7885,2],[7886,1,"ỏ"],[7887,2],[7888,1,"ố"],[7889,2],[7890,1,"ồ"],[7891,2],[7892,1,"ổ"],[7893,2],[7894,1,"ỗ"],[7895,2],[7896,1,"ộ"],[7897,2],[7898,1,"ớ"],[7899,2],[7900,1,"ờ"],[7901,2],[7902,1,"ở"],[7903,2],[7904,1,"ỡ"],[7905,2],[7906,1,"ợ"],[7907,2],[7908,1,"ụ"],[7909,2],[7910,1,"ủ"],[7911,2],[7912,1,"ứ"],[7913,2],[7914,1,"ừ"],[7915,2],[7916,1,"ử"],[7917,2],[7918,1,"ữ"],[7919,2],[7920,1,"ự"],[7921,2],[7922,1,"ỳ"],[7923,2],[7924,1,"ỵ"],[7925,2],[7926,1,"ỷ"],[7927,2],[7928,1,"ỹ"],[7929,2],[7930,1,"ỻ"],[7931,2],[7932,1,"ỽ"],[7933,2],[7934,1,"ỿ"],[7935,2],[[7936,7943],2],[7944,1,"ἀ"],[7945,1,"ἁ"],[7946,1,"ἂ"],[7947,1,"ἃ"],[7948,1,"ἄ"],[7949,1,"ἅ"],[7950,1,"ἆ"],[7951,1,"ἇ"],[[7952,7957],2],[[7958,7959],3],[7960,1,"ἐ"],[7961,1,"ἑ"],[7962,1,"ἒ"],[7963,1,"ἓ"],[7964,1,"ἔ"],[7965,1,"ἕ"],[[7966,7967],3],[[7968,7975],2],[7976,1,"ἠ"],[7977,1,"ἡ"],[7978,1,"ἢ"],[7979,1,"ἣ"],[7980,1,"ἤ"],[7981,1,"ἥ"],[7982,1,"ἦ"],[7983,1,"ἧ"],[[7984,7991],2],[7992,1,"ἰ"],[7993,1,"ἱ"],[7994,1,"ἲ"],[7995,1,"ἳ"],[7996,1,"ἴ"],[7997,1,"ἵ"],[7998,1,"ἶ"],[7999,1,"ἷ"],[[8000,8005],2],[[8006,8007],3],[8008,1,"ὀ"],[8009,1,"ὁ"],[8010,1,"ὂ"],[8011,1,"ὃ"],[8012,1,"ὄ"],[8013,1,"ὅ"],[[8014,8015],3],[[8016,8023],2],[8024,3],[8025,1,"ὑ"],[8026,3],[8027,1,"ὓ"],[8028,3],[8029,1,"ὕ"],[8030,3],[8031,1,"ὗ"],[[8032,8039],2],[8040,1,"ὠ"],[8041,1,"ὡ"],[8042,1,"ὢ"],[8043,1,"ὣ"],[8044,1,"ὤ"],[8045,1,"ὥ"],[8046,1,"ὦ"],[8047,1,"ὧ"],[8048,2],[8049,1,"ά"],[8050,2],[8051,1,"έ"],[8052,2],[8053,1,"ή"],[8054,2],[8055,1,"ί"],[8056,2],[8057,1,"ό"],[8058,2],[8059,1,"ύ"],[8060,2],[8061,1,"ώ"],[[8062,8063],3],[8064,1,"ἀι"],[8065,1,"ἁι"],[8066,1,"ἂι"],[8067,1,"ἃι"],[8068,1,"ἄι"],[8069,1,"ἅι"],[8070,1,"ἆι"],[8071,1,"ἇι"],[8072,1,"ἀι"],[8073,1,"ἁι"],[8074,1,"ἂι"],[8075,1,"ἃι"],[8076,1,"ἄι"],[8077,1,"ἅι"],[8078,1,"ἆι"],[8079,1,"ἇι"],[8080,1,"ἠι"],[8081,1,"ἡι"],[8082,1,"ἢι"],[8083,1,"ἣι"],[8084,1,"ἤι"],[8085,1,"ἥι"],[8086,1,"ἦι"],[8087,1,"ἧι"],[8088,1,"ἠι"],[8089,1,"ἡι"],[8090,1,"ἢι"],[8091,1,"ἣι"],[8092,1,"ἤι"],[8093,1,"ἥι"],[8094,1,"ἦι"],[8095,1,"ἧι"],[8096,1,"ὠι"],[8097,1,"ὡι"],[8098,1,"ὢι"],[8099,1,"ὣι"],[8100,1,"ὤι"],[8101,1,"ὥι"],[8102,1,"ὦι"],[8103,1,"ὧι"],[8104,1,"ὠι"],[8105,1,"ὡι"],[8106,1,"ὢι"],[8107,1,"ὣι"],[8108,1,"ὤι"],[8109,1,"ὥι"],[8110,1,"ὦι"],[8111,1,"ὧι"],[[8112,8113],2],[8114,1,"ὰι"],[8115,1,"αι"],[8116,1,"άι"],[8117,3],[8118,2],[8119,1,"ᾶι"],[8120,1,"ᾰ"],[8121,1,"ᾱ"],[8122,1,"ὰ"],[8123,1,"ά"],[8124,1,"αι"],[8125,5," ̓"],[8126,1,"ι"],[8127,5," ̓"],[8128,5," ͂"],[8129,5," ̈͂"],[8130,1,"ὴι"],[8131,1,"ηι"],[8132,1,"ήι"],[8133,3],[8134,2],[8135,1,"ῆι"],[8136,1,"ὲ"],[8137,1,"έ"],[8138,1,"ὴ"],[8139,1,"ή"],[8140,1,"ηι"],[8141,5," ̓̀"],[8142,5," ̓́"],[8143,5," ̓͂"],[[8144,8146],2],[8147,1,"ΐ"],[[8148,8149],3],[[8150,8151],2],[8152,1,"ῐ"],[8153,1,"ῑ"],[8154,1,"ὶ"],[8155,1,"ί"],[8156,3],[8157,5," ̔̀"],[8158,5," ̔́"],[8159,5," ̔͂"],[[8160,8162],2],[8163,1,"ΰ"],[[8164,8167],2],[8168,1,"ῠ"],[8169,1,"ῡ"],[8170,1,"ὺ"],[8171,1,"ύ"],[8172,1,"ῥ"],[8173,5," ̈̀"],[8174,5," ̈́"],[8175,5,"`"],[[8176,8177],3],[8178,1,"ὼι"],[8179,1,"ωι"],[8180,1,"ώι"],[8181,3],[8182,2],[8183,1,"ῶι"],[8184,1,"ὸ"],[8185,1,"ό"],[8186,1,"ὼ"],[8187,1,"ώ"],[8188,1,"ωι"],[8189,5," ́"],[8190,5," ̔"],[8191,3],[[8192,8202],5," "],[8203,7],[[8204,8205],6,""],[[8206,8207],3],[8208,2],[8209,1,"‐"],[[8210,8214],2],[8215,5," ̳"],[[8216,8227],2],[[8228,8230],3],[8231,2],[[8232,8238],3],[8239,5," "],[[8240,8242],2],[8243,1,"′′"],[8244,1,"′′′"],[8245,2],[8246,1,"‵‵"],[8247,1,"‵‵‵"],[[8248,8251],2],[8252,5,"!!"],[8253,2],[8254,5," ̅"],[[8255,8262],2],[8263,5,"??"],[8264,5,"?!"],[8265,5,"!?"],[[8266,8269],2],[[8270,8274],2],[[8275,8276],2],[[8277,8278],2],[8279,1,"′′′′"],[[8280,8286],2],[8287,5," "],[8288,7],[[8289,8291],3],[8292,7],[8293,3],[[8294,8297],3],[[8298,8303],3],[8304,1,"0"],[8305,1,"i"],[[8306,8307],3],[8308,1,"4"],[8309,1,"5"],[8310,1,"6"],[8311,1,"7"],[8312,1,"8"],[8313,1,"9"],[8314,5,"+"],[8315,1,"−"],[8316,5,"="],[8317,5,"("],[8318,5,")"],[8319,1,"n"],[8320,1,"0"],[8321,1,"1"],[8322,1,"2"],[8323,1,"3"],[8324,1,"4"],[8325,1,"5"],[8326,1,"6"],[8327,1,"7"],[8328,1,"8"],[8329,1,"9"],[8330,5,"+"],[8331,1,"−"],[8332,5,"="],[8333,5,"("],[8334,5,")"],[8335,3],[8336,1,"a"],[8337,1,"e"],[8338,1,"o"],[8339,1,"x"],[8340,1,"ə"],[8341,1,"h"],[8342,1,"k"],[8343,1,"l"],[8344,1,"m"],[8345,1,"n"],[8346,1,"p"],[8347,1,"s"],[8348,1,"t"],[[8349,8351],3],[[8352,8359],2],[8360,1,"rs"],[[8361,8362],2],[8363,2],[8364,2],[[8365,8367],2],[[8368,8369],2],[[8370,8373],2],[[8374,8376],2],[8377,2],[8378,2],[[8379,8381],2],[8382,2],[8383,2],[8384,2],[[8385,8399],3],[[8400,8417],2],[[8418,8419],2],[[8420,8426],2],[8427,2],[[8428,8431],2],[8432,2],[[8433,8447],3],[8448,5,"a/c"],[8449,5,"a/s"],[8450,1,"c"],[8451,1,"°c"],[8452,2],[8453,5,"c/o"],[8454,5,"c/u"],[8455,1,"ɛ"],[8456,2],[8457,1,"°f"],[8458,1,"g"],[[8459,8462],1,"h"],[8463,1,"ħ"],[[8464,8465],1,"i"],[[8466,8467],1,"l"],[8468,2],[8469,1,"n"],[8470,1,"no"],[[8471,8472],2],[8473,1,"p"],[8474,1,"q"],[[8475,8477],1,"r"],[[8478,8479],2],[8480,1,"sm"],[8481,1,"tel"],[8482,1,"tm"],[8483,2],[8484,1,"z"],[8485,2],[8486,1,"ω"],[8487,2],[8488,1,"z"],[8489,2],[8490,1,"k"],[8491,1,"å"],[8492,1,"b"],[8493,1,"c"],[8494,2],[[8495,8496],1,"e"],[8497,1,"f"],[8498,3],[8499,1,"m"],[8500,1,"o"],[8501,1,"א"],[8502,1,"ב"],[8503,1,"ג"],[8504,1,"ד"],[8505,1,"i"],[8506,2],[8507,1,"fax"],[8508,1,"π"],[[8509,8510],1,"γ"],[8511,1,"π"],[8512,1,"∑"],[[8513,8516],2],[[8517,8518],1,"d"],[8519,1,"e"],[8520,1,"i"],[8521,1,"j"],[[8522,8523],2],[8524,2],[8525,2],[8526,2],[8527,2],[8528,1,"1⁄7"],[8529,1,"1⁄9"],[8530,1,"1⁄10"],[8531,1,"1⁄3"],[8532,1,"2⁄3"],[8533,1,"1⁄5"],[8534,1,"2⁄5"],[8535,1,"3⁄5"],[8536,1,"4⁄5"],[8537,1,"1⁄6"],[8538,1,"5⁄6"],[8539,1,"1⁄8"],[8540,1,"3⁄8"],[8541,1,"5⁄8"],[8542,1,"7⁄8"],[8543,1,"1⁄"],[8544,1,"i"],[8545,1,"ii"],[8546,1,"iii"],[8547,1,"iv"],[8548,1,"v"],[8549,1,"vi"],[8550,1,"vii"],[8551,1,"viii"],[8552,1,"ix"],[8553,1,"x"],[8554,1,"xi"],[8555,1,"xii"],[8556,1,"l"],[8557,1,"c"],[8558,1,"d"],[8559,1,"m"],[8560,1,"i"],[8561,1,"ii"],[8562,1,"iii"],[8563,1,"iv"],[8564,1,"v"],[8565,1,"vi"],[8566,1,"vii"],[8567,1,"viii"],[8568,1,"ix"],[8569,1,"x"],[8570,1,"xi"],[8571,1,"xii"],[8572,1,"l"],[8573,1,"c"],[8574,1,"d"],[8575,1,"m"],[[8576,8578],2],[8579,3],[8580,2],[[8581,8584],2],[8585,1,"0⁄3"],[[8586,8587],2],[[8588,8591],3],[[8592,8682],2],[[8683,8691],2],[[8692,8703],2],[[8704,8747],2],[8748,1,"∫∫"],[8749,1,"∫∫∫"],[8750,2],[8751,1,"∮∮"],[8752,1,"∮∮∮"],[[8753,8945],2],[[8946,8959],2],[8960,2],[8961,2],[[8962,9000],2],[9001,1,"〈"],[9002,1,"〉"],[[9003,9082],2],[9083,2],[9084,2],[[9085,9114],2],[[9115,9166],2],[[9167,9168],2],[[9169,9179],2],[[9180,9191],2],[9192,2],[[9193,9203],2],[[9204,9210],2],[[9211,9214],2],[9215,2],[[9216,9252],2],[[9253,9254],2],[[9255,9279],3],[[9280,9290],2],[[9291,9311],3],[9312,1,"1"],[9313,1,"2"],[9314,1,"3"],[9315,1,"4"],[9316,1,"5"],[9317,1,"6"],[9318,1,"7"],[9319,1,"8"],[9320,1,"9"],[9321,1,"10"],[9322,1,"11"],[9323,1,"12"],[9324,1,"13"],[9325,1,"14"],[9326,1,"15"],[9327,1,"16"],[9328,1,"17"],[9329,1,"18"],[9330,1,"19"],[9331,1,"20"],[9332,5,"(1)"],[9333,5,"(2)"],[9334,5,"(3)"],[9335,5,"(4)"],[9336,5,"(5)"],[9337,5,"(6)"],[9338,5,"(7)"],[9339,5,"(8)"],[9340,5,"(9)"],[9341,5,"(10)"],[9342,5,"(11)"],[9343,5,"(12)"],[9344,5,"(13)"],[9345,5,"(14)"],[9346,5,"(15)"],[9347,5,"(16)"],[9348,5,"(17)"],[9349,5,"(18)"],[9350,5,"(19)"],[9351,5,"(20)"],[[9352,9371],3],[9372,5,"(a)"],[9373,5,"(b)"],[9374,5,"(c)"],[9375,5,"(d)"],[9376,5,"(e)"],[9377,5,"(f)"],[9378,5,"(g)"],[9379,5,"(h)"],[9380,5,"(i)"],[9381,5,"(j)"],[9382,5,"(k)"],[9383,5,"(l)"],[9384,5,"(m)"],[9385,5,"(n)"],[9386,5,"(o)"],[9387,5,"(p)"],[9388,5,"(q)"],[9389,5,"(r)"],[9390,5,"(s)"],[9391,5,"(t)"],[9392,5,"(u)"],[9393,5,"(v)"],[9394,5,"(w)"],[9395,5,"(x)"],[9396,5,"(y)"],[9397,5,"(z)"],[9398,1,"a"],[9399,1,"b"],[9400,1,"c"],[9401,1,"d"],[9402,1,"e"],[9403,1,"f"],[9404,1,"g"],[9405,1,"h"],[9406,1,"i"],[9407,1,"j"],[9408,1,"k"],[9409,1,"l"],[9410,1,"m"],[9411,1,"n"],[9412,1,"o"],[9413,1,"p"],[9414,1,"q"],[9415,1,"r"],[9416,1,"s"],[9417,1,"t"],[9418,1,"u"],[9419,1,"v"],[9420,1,"w"],[9421,1,"x"],[9422,1,"y"],[9423,1,"z"],[9424,1,"a"],[9425,1,"b"],[9426,1,"c"],[9427,1,"d"],[9428,1,"e"],[9429,1,"f"],[9430,1,"g"],[9431,1,"h"],[9432,1,"i"],[9433,1,"j"],[9434,1,"k"],[9435,1,"l"],[9436,1,"m"],[9437,1,"n"],[9438,1,"o"],[9439,1,"p"],[9440,1,"q"],[9441,1,"r"],[9442,1,"s"],[9443,1,"t"],[9444,1,"u"],[9445,1,"v"],[9446,1,"w"],[9447,1,"x"],[9448,1,"y"],[9449,1,"z"],[9450,1,"0"],[[9451,9470],2],[9471,2],[[9472,9621],2],[[9622,9631],2],[[9632,9711],2],[[9712,9719],2],[[9720,9727],2],[[9728,9747],2],[[9748,9749],2],[[9750,9751],2],[9752,2],[9753,2],[[9754,9839],2],[[9840,9841],2],[[9842,9853],2],[[9854,9855],2],[[9856,9865],2],[[9866,9873],2],[[9874,9884],2],[9885,2],[[9886,9887],2],[[9888,9889],2],[[9890,9905],2],[9906,2],[[9907,9916],2],[[9917,9919],2],[[9920,9923],2],[[9924,9933],2],[9934,2],[[9935,9953],2],[9954,2],[9955,2],[[9956,9959],2],[[9960,9983],2],[9984,2],[[9985,9988],2],[9989,2],[[9990,9993],2],[[9994,9995],2],[[9996,10023],2],[10024,2],[[10025,10059],2],[10060,2],[10061,2],[10062,2],[[10063,10066],2],[[10067,10069],2],[10070,2],[10071,2],[[10072,10078],2],[[10079,10080],2],[[10081,10087],2],[[10088,10101],2],[[10102,10132],2],[[10133,10135],2],[[10136,10159],2],[10160,2],[[10161,10174],2],[10175,2],[[10176,10182],2],[[10183,10186],2],[10187,2],[10188,2],[10189,2],[[10190,10191],2],[[10192,10219],2],[[10220,10223],2],[[10224,10239],2],[[10240,10495],2],[[10496,10763],2],[10764,1,"∫∫∫∫"],[[10765,10867],2],[10868,5,"::="],[10869,5,"=="],[10870,5,"==="],[[10871,10971],2],[10972,1,"⫝̸"],[[10973,11007],2],[[11008,11021],2],[[11022,11027],2],[[11028,11034],2],[[11035,11039],2],[[11040,11043],2],[[11044,11084],2],[[11085,11087],2],[[11088,11092],2],[[11093,11097],2],[[11098,11123],2],[[11124,11125],3],[[11126,11157],2],[11158,3],[11159,2],[[11160,11193],2],[[11194,11196],2],[[11197,11208],2],[11209,2],[[11210,11217],2],[11218,2],[[11219,11243],2],[[11244,11247],2],[[11248,11262],2],[11263,2],[11264,1,"ⰰ"],[11265,1,"ⰱ"],[11266,1,"ⰲ"],[11267,1,"ⰳ"],[11268,1,"ⰴ"],[11269,1,"ⰵ"],[11270,1,"ⰶ"],[11271,1,"ⰷ"],[11272,1,"ⰸ"],[11273,1,"ⰹ"],[11274,1,"ⰺ"],[11275,1,"ⰻ"],[11276,1,"ⰼ"],[11277,1,"ⰽ"],[11278,1,"ⰾ"],[11279,1,"ⰿ"],[11280,1,"ⱀ"],[11281,1,"ⱁ"],[11282,1,"ⱂ"],[11283,1,"ⱃ"],[11284,1,"ⱄ"],[11285,1,"ⱅ"],[11286,1,"ⱆ"],[11287,1,"ⱇ"],[11288,1,"ⱈ"],[11289,1,"ⱉ"],[11290,1,"ⱊ"],[11291,1,"ⱋ"],[11292,1,"ⱌ"],[11293,1,"ⱍ"],[11294,1,"ⱎ"],[11295,1,"ⱏ"],[11296,1,"ⱐ"],[11297,1,"ⱑ"],[11298,1,"ⱒ"],[11299,1,"ⱓ"],[11300,1,"ⱔ"],[11301,1,"ⱕ"],[11302,1,"ⱖ"],[11303,1,"ⱗ"],[11304,1,"ⱘ"],[11305,1,"ⱙ"],[11306,1,"ⱚ"],[11307,1,"ⱛ"],[11308,1,"ⱜ"],[11309,1,"ⱝ"],[11310,1,"ⱞ"],[11311,1,"ⱟ"],[[11312,11358],2],[11359,2],[11360,1,"ⱡ"],[11361,2],[11362,1,"ɫ"],[11363,1,"ᵽ"],[11364,1,"ɽ"],[[11365,11366],2],[11367,1,"ⱨ"],[11368,2],[11369,1,"ⱪ"],[11370,2],[11371,1,"ⱬ"],[11372,2],[11373,1,"ɑ"],[11374,1,"ɱ"],[11375,1,"ɐ"],[11376,1,"ɒ"],[11377,2],[11378,1,"ⱳ"],[11379,2],[11380,2],[11381,1,"ⱶ"],[[11382,11383],2],[[11384,11387],2],[11388,1,"j"],[11389,1,"v"],[11390,1,"ȿ"],[11391,1,"ɀ"],[11392,1,"ⲁ"],[11393,2],[11394,1,"ⲃ"],[11395,2],[11396,1,"ⲅ"],[11397,2],[11398,1,"ⲇ"],[11399,2],[11400,1,"ⲉ"],[11401,2],[11402,1,"ⲋ"],[11403,2],[11404,1,"ⲍ"],[11405,2],[11406,1,"ⲏ"],[11407,2],[11408,1,"ⲑ"],[11409,2],[11410,1,"ⲓ"],[11411,2],[11412,1,"ⲕ"],[11413,2],[11414,1,"ⲗ"],[11415,2],[11416,1,"ⲙ"],[11417,2],[11418,1,"ⲛ"],[11419,2],[11420,1,"ⲝ"],[11421,2],[11422,1,"ⲟ"],[11423,2],[11424,1,"ⲡ"],[11425,2],[11426,1,"ⲣ"],[11427,2],[11428,1,"ⲥ"],[11429,2],[11430,1,"ⲧ"],[11431,2],[11432,1,"ⲩ"],[11433,2],[11434,1,"ⲫ"],[11435,2],[11436,1,"ⲭ"],[11437,2],[11438,1,"ⲯ"],[11439,2],[11440,1,"ⲱ"],[11441,2],[11442,1,"ⲳ"],[11443,2],[11444,1,"ⲵ"],[11445,2],[11446,1,"ⲷ"],[11447,2],[11448,1,"ⲹ"],[11449,2],[11450,1,"ⲻ"],[11451,2],[11452,1,"ⲽ"],[11453,2],[11454,1,"ⲿ"],[11455,2],[11456,1,"ⳁ"],[11457,2],[11458,1,"ⳃ"],[11459,2],[11460,1,"ⳅ"],[11461,2],[11462,1,"ⳇ"],[11463,2],[11464,1,"ⳉ"],[11465,2],[11466,1,"ⳋ"],[11467,2],[11468,1,"ⳍ"],[11469,2],[11470,1,"ⳏ"],[11471,2],[11472,1,"ⳑ"],[11473,2],[11474,1,"ⳓ"],[11475,2],[11476,1,"ⳕ"],[11477,2],[11478,1,"ⳗ"],[11479,2],[11480,1,"ⳙ"],[11481,2],[11482,1,"ⳛ"],[11483,2],[11484,1,"ⳝ"],[11485,2],[11486,1,"ⳟ"],[11487,2],[11488,1,"ⳡ"],[11489,2],[11490,1,"ⳣ"],[[11491,11492],2],[[11493,11498],2],[11499,1,"ⳬ"],[11500,2],[11501,1,"ⳮ"],[[11502,11505],2],[11506,1,"ⳳ"],[11507,2],[[11508,11512],3],[[11513,11519],2],[[11520,11557],2],[11558,3],[11559,2],[[11560,11564],3],[11565,2],[[11566,11567],3],[[11568,11621],2],[[11622,11623],2],[[11624,11630],3],[11631,1,"ⵡ"],[11632,2],[[11633,11646],3],[11647,2],[[11648,11670],2],[[11671,11679],3],[[11680,11686],2],[11687,3],[[11688,11694],2],[11695,3],[[11696,11702],2],[11703,3],[[11704,11710],2],[11711,3],[[11712,11718],2],[11719,3],[[11720,11726],2],[11727,3],[[11728,11734],2],[11735,3],[[11736,11742],2],[11743,3],[[11744,11775],2],[[11776,11799],2],[[11800,11803],2],[[11804,11805],2],[[11806,11822],2],[11823,2],[11824,2],[11825,2],[[11826,11835],2],[[11836,11842],2],[[11843,11844],2],[[11845,11849],2],[[11850,11854],2],[11855,2],[[11856,11858],2],[[11859,11869],2],[[11870,11903],3],[[11904,11929],2],[11930,3],[[11931,11934],2],[11935,1,"母"],[[11936,12018],2],[12019,1,"龟"],[[12020,12031],3],[12032,1,"一"],[12033,1,"丨"],[12034,1,"丶"],[12035,1,"丿"],[12036,1,"乙"],[12037,1,"亅"],[12038,1,"二"],[12039,1,"亠"],[12040,1,"人"],[12041,1,"儿"],[12042,1,"入"],[12043,1,"八"],[12044,1,"冂"],[12045,1,"冖"],[12046,1,"冫"],[12047,1,"几"],[12048,1,"凵"],[12049,1,"刀"],[12050,1,"力"],[12051,1,"勹"],[12052,1,"匕"],[12053,1,"匚"],[12054,1,"匸"],[12055,1,"十"],[12056,1,"卜"],[12057,1,"卩"],[12058,1,"厂"],[12059,1,"厶"],[12060,1,"又"],[12061,1,"口"],[12062,1,"囗"],[12063,1,"土"],[12064,1,"士"],[12065,1,"夂"],[12066,1,"夊"],[12067,1,"夕"],[12068,1,"大"],[12069,1,"女"],[12070,1,"子"],[12071,1,"宀"],[12072,1,"寸"],[12073,1,"小"],[12074,1,"尢"],[12075,1,"尸"],[12076,1,"屮"],[12077,1,"山"],[12078,1,"巛"],[12079,1,"工"],[12080,1,"己"],[12081,1,"巾"],[12082,1,"干"],[12083,1,"幺"],[12084,1,"广"],[12085,1,"廴"],[12086,1,"廾"],[12087,1,"弋"],[12088,1,"弓"],[12089,1,"彐"],[12090,1,"彡"],[12091,1,"彳"],[12092,1,"心"],[12093,1,"戈"],[12094,1,"戶"],[12095,1,"手"],[12096,1,"支"],[12097,1,"攴"],[12098,1,"文"],[12099,1,"斗"],[12100,1,"斤"],[12101,1,"方"],[12102,1,"无"],[12103,1,"日"],[12104,1,"曰"],[12105,1,"月"],[12106,1,"木"],[12107,1,"欠"],[12108,1,"止"],[12109,1,"歹"],[12110,1,"殳"],[12111,1,"毋"],[12112,1,"比"],[12113,1,"毛"],[12114,1,"氏"],[12115,1,"气"],[12116,1,"水"],[12117,1,"火"],[12118,1,"爪"],[12119,1,"父"],[12120,1,"爻"],[12121,1,"爿"],[12122,1,"片"],[12123,1,"牙"],[12124,1,"牛"],[12125,1,"犬"],[12126,1,"玄"],[12127,1,"玉"],[12128,1,"瓜"],[12129,1,"瓦"],[12130,1,"甘"],[12131,1,"生"],[12132,1,"用"],[12133,1,"田"],[12134,1,"疋"],[12135,1,"疒"],[12136,1,"癶"],[12137,1,"白"],[12138,1,"皮"],[12139,1,"皿"],[12140,1,"目"],[12141,1,"矛"],[12142,1,"矢"],[12143,1,"石"],[12144,1,"示"],[12145,1,"禸"],[12146,1,"禾"],[12147,1,"穴"],[12148,1,"立"],[12149,1,"竹"],[12150,1,"米"],[12151,1,"糸"],[12152,1,"缶"],[12153,1,"网"],[12154,1,"羊"],[12155,1,"羽"],[12156,1,"老"],[12157,1,"而"],[12158,1,"耒"],[12159,1,"耳"],[12160,1,"聿"],[12161,1,"肉"],[12162,1,"臣"],[12163,1,"自"],[12164,1,"至"],[12165,1,"臼"],[12166,1,"舌"],[12167,1,"舛"],[12168,1,"舟"],[12169,1,"艮"],[12170,1,"色"],[12171,1,"艸"],[12172,1,"虍"],[12173,1,"虫"],[12174,1,"血"],[12175,1,"行"],[12176,1,"衣"],[12177,1,"襾"],[12178,1,"見"],[12179,1,"角"],[12180,1,"言"],[12181,1,"谷"],[12182,1,"豆"],[12183,1,"豕"],[12184,1,"豸"],[12185,1,"貝"],[12186,1,"赤"],[12187,1,"走"],[12188,1,"足"],[12189,1,"身"],[12190,1,"車"],[12191,1,"辛"],[12192,1,"辰"],[12193,1,"辵"],[12194,1,"邑"],[12195,1,"酉"],[12196,1,"釆"],[12197,1,"里"],[12198,1,"金"],[12199,1,"長"],[12200,1,"門"],[12201,1,"阜"],[12202,1,"隶"],[12203,1,"隹"],[12204,1,"雨"],[12205,1,"靑"],[12206,1,"非"],[12207,1,"面"],[12208,1,"革"],[12209,1,"韋"],[12210,1,"韭"],[12211,1,"音"],[12212,1,"頁"],[12213,1,"風"],[12214,1,"飛"],[12215,1,"食"],[12216,1,"首"],[12217,1,"香"],[12218,1,"馬"],[12219,1,"骨"],[12220,1,"高"],[12221,1,"髟"],[12222,1,"鬥"],[12223,1,"鬯"],[12224,1,"鬲"],[12225,1,"鬼"],[12226,1,"魚"],[12227,1,"鳥"],[12228,1,"鹵"],[12229,1,"鹿"],[12230,1,"麥"],[12231,1,"麻"],[12232,1,"黃"],[12233,1,"黍"],[12234,1,"黑"],[12235,1,"黹"],[12236,1,"黽"],[12237,1,"鼎"],[12238,1,"鼓"],[12239,1,"鼠"],[12240,1,"鼻"],[12241,1,"齊"],[12242,1,"齒"],[12243,1,"龍"],[12244,1,"龜"],[12245,1,"龠"],[[12246,12271],3],[[12272,12283],3],[[12284,12287],3],[12288,5," "],[12289,2],[12290,1,"."],[[12291,12292],2],[[12293,12295],2],[[12296,12329],2],[[12330,12333],2],[[12334,12341],2],[12342,1,"〒"],[12343,2],[12344,1,"十"],[12345,1,"卄"],[12346,1,"卅"],[12347,2],[12348,2],[12349,2],[12350,2],[12351,2],[12352,3],[[12353,12436],2],[[12437,12438],2],[[12439,12440],3],[[12441,12442],2],[12443,5," ゙"],[12444,5," ゚"],[[12445,12446],2],[12447,1,"より"],[12448,2],[[12449,12542],2],[12543,1,"コト"],[[12544,12548],3],[[12549,12588],2],[12589,2],[12590,2],[12591,2],[12592,3],[12593,1,"ᄀ"],[12594,1,"ᄁ"],[12595,1,"ᆪ"],[12596,1,"ᄂ"],[12597,1,"ᆬ"],[12598,1,"ᆭ"],[12599,1,"ᄃ"],[12600,1,"ᄄ"],[12601,1,"ᄅ"],[12602,1,"ᆰ"],[12603,1,"ᆱ"],[12604,1,"ᆲ"],[12605,1,"ᆳ"],[12606,1,"ᆴ"],[12607,1,"ᆵ"],[12608,1,"ᄚ"],[12609,1,"ᄆ"],[12610,1,"ᄇ"],[12611,1,"ᄈ"],[12612,1,"ᄡ"],[12613,1,"ᄉ"],[12614,1,"ᄊ"],[12615,1,"ᄋ"],[12616,1,"ᄌ"],[12617,1,"ᄍ"],[12618,1,"ᄎ"],[12619,1,"ᄏ"],[12620,1,"ᄐ"],[12621,1,"ᄑ"],[12622,1,"ᄒ"],[12623,1,"ᅡ"],[12624,1,"ᅢ"],[12625,1,"ᅣ"],[12626,1,"ᅤ"],[12627,1,"ᅥ"],[12628,1,"ᅦ"],[12629,1,"ᅧ"],[12630,1,"ᅨ"],[12631,1,"ᅩ"],[12632,1,"ᅪ"],[12633,1,"ᅫ"],[12634,1,"ᅬ"],[12635,1,"ᅭ"],[12636,1,"ᅮ"],[12637,1,"ᅯ"],[12638,1,"ᅰ"],[12639,1,"ᅱ"],[12640,1,"ᅲ"],[12641,1,"ᅳ"],[12642,1,"ᅴ"],[12643,1,"ᅵ"],[12644,3],[12645,1,"ᄔ"],[12646,1,"ᄕ"],[12647,1,"ᇇ"],[12648,1,"ᇈ"],[12649,1,"ᇌ"],[12650,1,"ᇎ"],[12651,1,"ᇓ"],[12652,1,"ᇗ"],[12653,1,"ᇙ"],[12654,1,"ᄜ"],[12655,1,"ᇝ"],[12656,1,"ᇟ"],[12657,1,"ᄝ"],[12658,1,"ᄞ"],[12659,1,"ᄠ"],[12660,1,"ᄢ"],[12661,1,"ᄣ"],[12662,1,"ᄧ"],[12663,1,"ᄩ"],[12664,1,"ᄫ"],[12665,1,"ᄬ"],[12666,1,"ᄭ"],[12667,1,"ᄮ"],[12668,1,"ᄯ"],[12669,1,"ᄲ"],[12670,1,"ᄶ"],[12671,1,"ᅀ"],[12672,1,"ᅇ"],[12673,1,"ᅌ"],[12674,1,"ᇱ"],[12675,1,"ᇲ"],[12676,1,"ᅗ"],[12677,1,"ᅘ"],[12678,1,"ᅙ"],[12679,1,"ᆄ"],[12680,1,"ᆅ"],[12681,1,"ᆈ"],[12682,1,"ᆑ"],[12683,1,"ᆒ"],[12684,1,"ᆔ"],[12685,1,"ᆞ"],[12686,1,"ᆡ"],[12687,3],[[12688,12689],2],[12690,1,"一"],[12691,1,"二"],[12692,1,"三"],[12693,1,"四"],[12694,1,"上"],[12695,1,"中"],[12696,1,"下"],[12697,1,"甲"],[12698,1,"乙"],[12699,1,"丙"],[12700,1,"丁"],[12701,1,"天"],[12702,1,"地"],[12703,1,"人"],[[12704,12727],2],[[12728,12730],2],[[12731,12735],2],[[12736,12751],2],[[12752,12771],2],[[12772,12782],3],[12783,3],[[12784,12799],2],[12800,5,"(ᄀ)"],[12801,5,"(ᄂ)"],[12802,5,"(ᄃ)"],[12803,5,"(ᄅ)"],[12804,5,"(ᄆ)"],[12805,5,"(ᄇ)"],[12806,5,"(ᄉ)"],[12807,5,"(ᄋ)"],[12808,5,"(ᄌ)"],[12809,5,"(ᄎ)"],[12810,5,"(ᄏ)"],[12811,5,"(ᄐ)"],[12812,5,"(ᄑ)"],[12813,5,"(ᄒ)"],[12814,5,"(가)"],[12815,5,"(나)"],[12816,5,"(다)"],[12817,5,"(라)"],[12818,5,"(마)"],[12819,5,"(바)"],[12820,5,"(사)"],[12821,5,"(아)"],[12822,5,"(자)"],[12823,5,"(차)"],[12824,5,"(카)"],[12825,5,"(타)"],[12826,5,"(파)"],[12827,5,"(하)"],[12828,5,"(주)"],[12829,5,"(오전)"],[12830,5,"(오후)"],[12831,3],[12832,5,"(一)"],[12833,5,"(二)"],[12834,5,"(三)"],[12835,5,"(四)"],[12836,5,"(五)"],[12837,5,"(六)"],[12838,5,"(七)"],[12839,5,"(八)"],[12840,5,"(九)"],[12841,5,"(十)"],[12842,5,"(月)"],[12843,5,"(火)"],[12844,5,"(水)"],[12845,5,"(木)"],[12846,5,"(金)"],[12847,5,"(土)"],[12848,5,"(日)"],[12849,5,"(株)"],[12850,5,"(有)"],[12851,5,"(社)"],[12852,5,"(名)"],[12853,5,"(特)"],[12854,5,"(財)"],[12855,5,"(祝)"],[12856,5,"(労)"],[12857,5,"(代)"],[12858,5,"(呼)"],[12859,5,"(学)"],[12860,5,"(監)"],[12861,5,"(企)"],[12862,5,"(資)"],[12863,5,"(協)"],[12864,5,"(祭)"],[12865,5,"(休)"],[12866,5,"(自)"],[12867,5,"(至)"],[12868,1,"問"],[12869,1,"幼"],[12870,1,"文"],[12871,1,"箏"],[[12872,12879],2],[12880,1,"pte"],[12881,1,"21"],[12882,1,"22"],[12883,1,"23"],[12884,1,"24"],[12885,1,"25"],[12886,1,"26"],[12887,1,"27"],[12888,1,"28"],[12889,1,"29"],[12890,1,"30"],[12891,1,"31"],[12892,1,"32"],[12893,1,"33"],[12894,1,"34"],[12895,1,"35"],[12896,1,"ᄀ"],[12897,1,"ᄂ"],[12898,1,"ᄃ"],[12899,1,"ᄅ"],[12900,1,"ᄆ"],[12901,1,"ᄇ"],[12902,1,"ᄉ"],[12903,1,"ᄋ"],[12904,1,"ᄌ"],[12905,1,"ᄎ"],[12906,1,"ᄏ"],[12907,1,"ᄐ"],[12908,1,"ᄑ"],[12909,1,"ᄒ"],[12910,1,"가"],[12911,1,"나"],[12912,1,"다"],[12913,1,"라"],[12914,1,"마"],[12915,1,"바"],[12916,1,"사"],[12917,1,"아"],[12918,1,"자"],[12919,1,"차"],[12920,1,"카"],[12921,1,"타"],[12922,1,"파"],[12923,1,"하"],[12924,1,"참고"],[12925,1,"주의"],[12926,1,"우"],[12927,2],[12928,1,"一"],[12929,1,"二"],[12930,1,"三"],[12931,1,"四"],[12932,1,"五"],[12933,1,"六"],[12934,1,"七"],[12935,1,"八"],[12936,1,"九"],[12937,1,"十"],[12938,1,"月"],[12939,1,"火"],[12940,1,"水"],[12941,1,"木"],[12942,1,"金"],[12943,1,"土"],[12944,1,"日"],[12945,1,"株"],[12946,1,"有"],[12947,1,"社"],[12948,1,"名"],[12949,1,"特"],[12950,1,"財"],[12951,1,"祝"],[12952,1,"労"],[12953,1,"秘"],[12954,1,"男"],[12955,1,"女"],[12956,1,"適"],[12957,1,"優"],[12958,1,"印"],[12959,1,"注"],[12960,1,"項"],[12961,1,"休"],[12962,1,"写"],[12963,1,"正"],[12964,1,"上"],[12965,1,"中"],[12966,1,"下"],[12967,1,"左"],[12968,1,"右"],[12969,1,"医"],[12970,1,"宗"],[12971,1,"学"],[12972,1,"監"],[12973,1,"企"],[12974,1,"資"],[12975,1,"協"],[12976,1,"夜"],[12977,1,"36"],[12978,1,"37"],[12979,1,"38"],[12980,1,"39"],[12981,1,"40"],[12982,1,"41"],[12983,1,"42"],[12984,1,"43"],[12985,1,"44"],[12986,1,"45"],[12987,1,"46"],[12988,1,"47"],[12989,1,"48"],[12990,1,"49"],[12991,1,"50"],[12992,1,"1月"],[12993,1,"2月"],[12994,1,"3月"],[12995,1,"4月"],[12996,1,"5月"],[12997,1,"6月"],[12998,1,"7月"],[12999,1,"8月"],[13000,1,"9月"],[13001,1,"10月"],[13002,1,"11月"],[13003,1,"12月"],[13004,1,"hg"],[13005,1,"erg"],[13006,1,"ev"],[13007,1,"ltd"],[13008,1,"ア"],[13009,1,"イ"],[13010,1,"ウ"],[13011,1,"エ"],[13012,1,"オ"],[13013,1,"カ"],[13014,1,"キ"],[13015,1,"ク"],[13016,1,"ケ"],[13017,1,"コ"],[13018,1,"サ"],[13019,1,"シ"],[13020,1,"ス"],[13021,1,"セ"],[13022,1,"ソ"],[13023,1,"タ"],[13024,1,"チ"],[13025,1,"ツ"],[13026,1,"テ"],[13027,1,"ト"],[13028,1,"ナ"],[13029,1,"ニ"],[13030,1,"ヌ"],[13031,1,"ネ"],[13032,1,"ノ"],[13033,1,"ハ"],[13034,1,"ヒ"],[13035,1,"フ"],[13036,1,"ヘ"],[13037,1,"ホ"],[13038,1,"マ"],[13039,1,"ミ"],[13040,1,"ム"],[13041,1,"メ"],[13042,1,"モ"],[13043,1,"ヤ"],[13044,1,"ユ"],[13045,1,"ヨ"],[13046,1,"ラ"],[13047,1,"リ"],[13048,1,"ル"],[13049,1,"レ"],[13050,1,"ロ"],[13051,1,"ワ"],[13052,1,"ヰ"],[13053,1,"ヱ"],[13054,1,"ヲ"],[13055,1,"令和"],[13056,1,"アパート"],[13057,1,"アルファ"],[13058,1,"アンペア"],[13059,1,"アール"],[13060,1,"イニング"],[13061,1,"インチ"],[13062,1,"ウォン"],[13063,1,"エスクード"],[13064,1,"エーカー"],[13065,1,"オンス"],[13066,1,"オーム"],[13067,1,"カイリ"],[13068,1,"カラット"],[13069,1,"カロリー"],[13070,1,"ガロン"],[13071,1,"ガンマ"],[13072,1,"ギガ"],[13073,1,"ギニー"],[13074,1,"キュリー"],[13075,1,"ギルダー"],[13076,1,"キロ"],[13077,1,"キログラム"],[13078,1,"キロメートル"],[13079,1,"キロワット"],[13080,1,"グラム"],[13081,1,"グラムトン"],[13082,1,"クルゼイロ"],[13083,1,"クローネ"],[13084,1,"ケース"],[13085,1,"コルナ"],[13086,1,"コーポ"],[13087,1,"サイクル"],[13088,1,"サンチーム"],[13089,1,"シリング"],[13090,1,"センチ"],[13091,1,"セント"],[13092,1,"ダース"],[13093,1,"デシ"],[13094,1,"ドル"],[13095,1,"トン"],[13096,1,"ナノ"],[13097,1,"ノット"],[13098,1,"ハイツ"],[13099,1,"パーセント"],[13100,1,"パーツ"],[13101,1,"バーレル"],[13102,1,"ピアストル"],[13103,1,"ピクル"],[13104,1,"ピコ"],[13105,1,"ビル"],[13106,1,"ファラッド"],[13107,1,"フィート"],[13108,1,"ブッシェル"],[13109,1,"フラン"],[13110,1,"ヘクタール"],[13111,1,"ペソ"],[13112,1,"ペニヒ"],[13113,1,"ヘルツ"],[13114,1,"ペンス"],[13115,1,"ページ"],[13116,1,"ベータ"],[13117,1,"ポイント"],[13118,1,"ボルト"],[13119,1,"ホン"],[13120,1,"ポンド"],[13121,1,"ホール"],[13122,1,"ホーン"],[13123,1,"マイクロ"],[13124,1,"マイル"],[13125,1,"マッハ"],[13126,1,"マルク"],[13127,1,"マンション"],[13128,1,"ミクロン"],[13129,1,"ミリ"],[13130,1,"ミリバール"],[13131,1,"メガ"],[13132,1,"メガトン"],[13133,1,"メートル"],[13134,1,"ヤード"],[13135,1,"ヤール"],[13136,1,"ユアン"],[13137,1,"リットル"],[13138,1,"リラ"],[13139,1,"ルピー"],[13140,1,"ルーブル"],[13141,1,"レム"],[13142,1,"レントゲン"],[13143,1,"ワット"],[13144,1,"0点"],[13145,1,"1点"],[13146,1,"2点"],[13147,1,"3点"],[13148,1,"4点"],[13149,1,"5点"],[13150,1,"6点"],[13151,1,"7点"],[13152,1,"8点"],[13153,1,"9点"],[13154,1,"10点"],[13155,1,"11点"],[13156,1,"12点"],[13157,1,"13点"],[13158,1,"14点"],[13159,1,"15点"],[13160,1,"16点"],[13161,1,"17点"],[13162,1,"18点"],[13163,1,"19点"],[13164,1,"20点"],[13165,1,"21点"],[13166,1,"22点"],[13167,1,"23点"],[13168,1,"24点"],[13169,1,"hpa"],[13170,1,"da"],[13171,1,"au"],[13172,1,"bar"],[13173,1,"ov"],[13174,1,"pc"],[13175,1,"dm"],[13176,1,"dm2"],[13177,1,"dm3"],[13178,1,"iu"],[13179,1,"平成"],[13180,1,"昭和"],[13181,1,"大正"],[13182,1,"明治"],[13183,1,"株式会社"],[13184,1,"pa"],[13185,1,"na"],[13186,1,"μa"],[13187,1,"ma"],[13188,1,"ka"],[13189,1,"kb"],[13190,1,"mb"],[13191,1,"gb"],[13192,1,"cal"],[13193,1,"kcal"],[13194,1,"pf"],[13195,1,"nf"],[13196,1,"μf"],[13197,1,"μg"],[13198,1,"mg"],[13199,1,"kg"],[13200,1,"hz"],[13201,1,"khz"],[13202,1,"mhz"],[13203,1,"ghz"],[13204,1,"thz"],[13205,1,"μl"],[13206,1,"ml"],[13207,1,"dl"],[13208,1,"kl"],[13209,1,"fm"],[13210,1,"nm"],[13211,1,"μm"],[13212,1,"mm"],[13213,1,"cm"],[13214,1,"km"],[13215,1,"mm2"],[13216,1,"cm2"],[13217,1,"m2"],[13218,1,"km2"],[13219,1,"mm3"],[13220,1,"cm3"],[13221,1,"m3"],[13222,1,"km3"],[13223,1,"m∕s"],[13224,1,"m∕s2"],[13225,1,"pa"],[13226,1,"kpa"],[13227,1,"mpa"],[13228,1,"gpa"],[13229,1,"rad"],[13230,1,"rad∕s"],[13231,1,"rad∕s2"],[13232,1,"ps"],[13233,1,"ns"],[13234,1,"μs"],[13235,1,"ms"],[13236,1,"pv"],[13237,1,"nv"],[13238,1,"μv"],[13239,1,"mv"],[13240,1,"kv"],[13241,1,"mv"],[13242,1,"pw"],[13243,1,"nw"],[13244,1,"μw"],[13245,1,"mw"],[13246,1,"kw"],[13247,1,"mw"],[13248,1,"kω"],[13249,1,"mω"],[13250,3],[13251,1,"bq"],[13252,1,"cc"],[13253,1,"cd"],[13254,1,"c∕kg"],[13255,3],[13256,1,"db"],[13257,1,"gy"],[13258,1,"ha"],[13259,1,"hp"],[13260,1,"in"],[13261,1,"kk"],[13262,1,"km"],[13263,1,"kt"],[13264,1,"lm"],[13265,1,"ln"],[13266,1,"log"],[13267,1,"lx"],[13268,1,"mb"],[13269,1,"mil"],[13270,1,"mol"],[13271,1,"ph"],[13272,3],[13273,1,"ppm"],[13274,1,"pr"],[13275,1,"sr"],[13276,1,"sv"],[13277,1,"wb"],[13278,1,"v∕m"],[13279,1,"a∕m"],[13280,1,"1日"],[13281,1,"2日"],[13282,1,"3日"],[13283,1,"4日"],[13284,1,"5日"],[13285,1,"6日"],[13286,1,"7日"],[13287,1,"8日"],[13288,1,"9日"],[13289,1,"10日"],[13290,1,"11日"],[13291,1,"12日"],[13292,1,"13日"],[13293,1,"14日"],[13294,1,"15日"],[13295,1,"16日"],[13296,1,"17日"],[13297,1,"18日"],[13298,1,"19日"],[13299,1,"20日"],[13300,1,"21日"],[13301,1,"22日"],[13302,1,"23日"],[13303,1,"24日"],[13304,1,"25日"],[13305,1,"26日"],[13306,1,"27日"],[13307,1,"28日"],[13308,1,"29日"],[13309,1,"30日"],[13310,1,"31日"],[13311,1,"gal"],[[13312,19893],2],[[19894,19903],2],[[19904,19967],2],[[19968,40869],2],[[40870,40891],2],[[40892,40899],2],[[40900,40907],2],[40908,2],[[40909,40917],2],[[40918,40938],2],[[40939,40943],2],[[40944,40956],2],[[40957,40959],2],[[40960,42124],2],[[42125,42127],3],[[42128,42145],2],[[42146,42147],2],[[42148,42163],2],[42164,2],[[42165,42176],2],[42177,2],[[42178,42180],2],[42181,2],[42182,2],[[42183,42191],3],[[42192,42237],2],[[42238,42239],2],[[42240,42508],2],[[42509,42511],2],[[42512,42539],2],[[42540,42559],3],[42560,1,"ꙁ"],[42561,2],[42562,1,"ꙃ"],[42563,2],[42564,1,"ꙅ"],[42565,2],[42566,1,"ꙇ"],[42567,2],[42568,1,"ꙉ"],[42569,2],[42570,1,"ꙋ"],[42571,2],[42572,1,"ꙍ"],[42573,2],[42574,1,"ꙏ"],[42575,2],[42576,1,"ꙑ"],[42577,2],[42578,1,"ꙓ"],[42579,2],[42580,1,"ꙕ"],[42581,2],[42582,1,"ꙗ"],[42583,2],[42584,1,"ꙙ"],[42585,2],[42586,1,"ꙛ"],[42587,2],[42588,1,"ꙝ"],[42589,2],[42590,1,"ꙟ"],[42591,2],[42592,1,"ꙡ"],[42593,2],[42594,1,"ꙣ"],[42595,2],[42596,1,"ꙥ"],[42597,2],[42598,1,"ꙧ"],[42599,2],[42600,1,"ꙩ"],[42601,2],[42602,1,"ꙫ"],[42603,2],[42604,1,"ꙭ"],[[42605,42607],2],[[42608,42611],2],[[42612,42619],2],[[42620,42621],2],[42622,2],[42623,2],[42624,1,"ꚁ"],[42625,2],[42626,1,"ꚃ"],[42627,2],[42628,1,"ꚅ"],[42629,2],[42630,1,"ꚇ"],[42631,2],[42632,1,"ꚉ"],[42633,2],[42634,1,"ꚋ"],[42635,2],[42636,1,"ꚍ"],[42637,2],[42638,1,"ꚏ"],[42639,2],[42640,1,"ꚑ"],[42641,2],[42642,1,"ꚓ"],[42643,2],[42644,1,"ꚕ"],[42645,2],[42646,1,"ꚗ"],[42647,2],[42648,1,"ꚙ"],[42649,2],[42650,1,"ꚛ"],[42651,2],[42652,1,"ъ"],[42653,1,"ь"],[42654,2],[42655,2],[[42656,42725],2],[[42726,42735],2],[[42736,42737],2],[[42738,42743],2],[[42744,42751],3],[[42752,42774],2],[[42775,42778],2],[[42779,42783],2],[[42784,42785],2],[42786,1,"ꜣ"],[42787,2],[42788,1,"ꜥ"],[42789,2],[42790,1,"ꜧ"],[42791,2],[42792,1,"ꜩ"],[42793,2],[42794,1,"ꜫ"],[42795,2],[42796,1,"ꜭ"],[42797,2],[42798,1,"ꜯ"],[[42799,42801],2],[42802,1,"ꜳ"],[42803,2],[42804,1,"ꜵ"],[42805,2],[42806,1,"ꜷ"],[42807,2],[42808,1,"ꜹ"],[42809,2],[42810,1,"ꜻ"],[42811,2],[42812,1,"ꜽ"],[42813,2],[42814,1,"ꜿ"],[42815,2],[42816,1,"ꝁ"],[42817,2],[42818,1,"ꝃ"],[42819,2],[42820,1,"ꝅ"],[42821,2],[42822,1,"ꝇ"],[42823,2],[42824,1,"ꝉ"],[42825,2],[42826,1,"ꝋ"],[42827,2],[42828,1,"ꝍ"],[42829,2],[42830,1,"ꝏ"],[42831,2],[42832,1,"ꝑ"],[42833,2],[42834,1,"ꝓ"],[42835,2],[42836,1,"ꝕ"],[42837,2],[42838,1,"ꝗ"],[42839,2],[42840,1,"ꝙ"],[42841,2],[42842,1,"ꝛ"],[42843,2],[42844,1,"ꝝ"],[42845,2],[42846,1,"ꝟ"],[42847,2],[42848,1,"ꝡ"],[42849,2],[42850,1,"ꝣ"],[42851,2],[42852,1,"ꝥ"],[42853,2],[42854,1,"ꝧ"],[42855,2],[42856,1,"ꝩ"],[42857,2],[42858,1,"ꝫ"],[42859,2],[42860,1,"ꝭ"],[42861,2],[42862,1,"ꝯ"],[42863,2],[42864,1,"ꝯ"],[[42865,42872],2],[42873,1,"ꝺ"],[42874,2],[42875,1,"ꝼ"],[42876,2],[42877,1,"ᵹ"],[42878,1,"ꝿ"],[42879,2],[42880,1,"ꞁ"],[42881,2],[42882,1,"ꞃ"],[42883,2],[42884,1,"ꞅ"],[42885,2],[42886,1,"ꞇ"],[[42887,42888],2],[[42889,42890],2],[42891,1,"ꞌ"],[42892,2],[42893,1,"ɥ"],[42894,2],[42895,2],[42896,1,"ꞑ"],[42897,2],[42898,1,"ꞓ"],[42899,2],[[42900,42901],2],[42902,1,"ꞗ"],[42903,2],[42904,1,"ꞙ"],[42905,2],[42906,1,"ꞛ"],[42907,2],[42908,1,"ꞝ"],[42909,2],[42910,1,"ꞟ"],[42911,2],[42912,1,"ꞡ"],[42913,2],[42914,1,"ꞣ"],[42915,2],[42916,1,"ꞥ"],[42917,2],[42918,1,"ꞧ"],[42919,2],[42920,1,"ꞩ"],[42921,2],[42922,1,"ɦ"],[42923,1,"ɜ"],[42924,1,"ɡ"],[42925,1,"ɬ"],[42926,1,"ɪ"],[42927,2],[42928,1,"ʞ"],[42929,1,"ʇ"],[42930,1,"ʝ"],[42931,1,"ꭓ"],[42932,1,"ꞵ"],[42933,2],[42934,1,"ꞷ"],[42935,2],[42936,1,"ꞹ"],[42937,2],[42938,1,"ꞻ"],[42939,2],[42940,1,"ꞽ"],[42941,2],[42942,1,"ꞿ"],[42943,2],[42944,1,"ꟁ"],[42945,2],[42946,1,"ꟃ"],[42947,2],[42948,1,"ꞔ"],[42949,1,"ʂ"],[42950,1,"ᶎ"],[42951,1,"ꟈ"],[42952,2],[42953,1,"ꟊ"],[42954,2],[[42955,42959],3],[42960,1,"ꟑ"],[42961,2],[42962,3],[42963,2],[42964,3],[42965,2],[42966,1,"ꟗ"],[42967,2],[42968,1,"ꟙ"],[42969,2],[[42970,42993],3],[42994,1,"c"],[42995,1,"f"],[42996,1,"q"],[42997,1,"ꟶ"],[42998,2],[42999,2],[43000,1,"ħ"],[43001,1,"œ"],[43002,2],[[43003,43007],2],[[43008,43047],2],[[43048,43051],2],[43052,2],[[43053,43055],3],[[43056,43065],2],[[43066,43071],3],[[43072,43123],2],[[43124,43127],2],[[43128,43135],3],[[43136,43204],2],[43205,2],[[43206,43213],3],[[43214,43215],2],[[43216,43225],2],[[43226,43231],3],[[43232,43255],2],[[43256,43258],2],[43259,2],[43260,2],[43261,2],[[43262,43263],2],[[43264,43309],2],[[43310,43311],2],[[43312,43347],2],[[43348,43358],3],[43359,2],[[43360,43388],2],[[43389,43391],3],[[43392,43456],2],[[43457,43469],2],[43470,3],[[43471,43481],2],[[43482,43485],3],[[43486,43487],2],[[43488,43518],2],[43519,3],[[43520,43574],2],[[43575,43583],3],[[43584,43597],2],[[43598,43599],3],[[43600,43609],2],[[43610,43611],3],[[43612,43615],2],[[43616,43638],2],[[43639,43641],2],[[43642,43643],2],[[43644,43647],2],[[43648,43714],2],[[43715,43738],3],[[43739,43741],2],[[43742,43743],2],[[43744,43759],2],[[43760,43761],2],[[43762,43766],2],[[43767,43776],3],[[43777,43782],2],[[43783,43784],3],[[43785,43790],2],[[43791,43792],3],[[43793,43798],2],[[43799,43807],3],[[43808,43814],2],[43815,3],[[43816,43822],2],[43823,3],[[43824,43866],2],[43867,2],[43868,1,"ꜧ"],[43869,1,"ꬷ"],[43870,1,"ɫ"],[43871,1,"ꭒ"],[[43872,43875],2],[[43876,43877],2],[[43878,43879],2],[43880,2],[43881,1,"ʍ"],[[43882,43883],2],[[43884,43887],3],[43888,1,"Ꭰ"],[43889,1,"Ꭱ"],[43890,1,"Ꭲ"],[43891,1,"Ꭳ"],[43892,1,"Ꭴ"],[43893,1,"Ꭵ"],[43894,1,"Ꭶ"],[43895,1,"Ꭷ"],[43896,1,"Ꭸ"],[43897,1,"Ꭹ"],[43898,1,"Ꭺ"],[43899,1,"Ꭻ"],[43900,1,"Ꭼ"],[43901,1,"Ꭽ"],[43902,1,"Ꭾ"],[43903,1,"Ꭿ"],[43904,1,"Ꮀ"],[43905,1,"Ꮁ"],[43906,1,"Ꮂ"],[43907,1,"Ꮃ"],[43908,1,"Ꮄ"],[43909,1,"Ꮅ"],[43910,1,"Ꮆ"],[43911,1,"Ꮇ"],[43912,1,"Ꮈ"],[43913,1,"Ꮉ"],[43914,1,"Ꮊ"],[43915,1,"Ꮋ"],[43916,1,"Ꮌ"],[43917,1,"Ꮍ"],[43918,1,"Ꮎ"],[43919,1,"Ꮏ"],[43920,1,"Ꮐ"],[43921,1,"Ꮑ"],[43922,1,"Ꮒ"],[43923,1,"Ꮓ"],[43924,1,"Ꮔ"],[43925,1,"Ꮕ"],[43926,1,"Ꮖ"],[43927,1,"Ꮗ"],[43928,1,"Ꮘ"],[43929,1,"Ꮙ"],[43930,1,"Ꮚ"],[43931,1,"Ꮛ"],[43932,1,"Ꮜ"],[43933,1,"Ꮝ"],[43934,1,"Ꮞ"],[43935,1,"Ꮟ"],[43936,1,"Ꮠ"],[43937,1,"Ꮡ"],[43938,1,"Ꮢ"],[43939,1,"Ꮣ"],[43940,1,"Ꮤ"],[43941,1,"Ꮥ"],[43942,1,"Ꮦ"],[43943,1,"Ꮧ"],[43944,1,"Ꮨ"],[43945,1,"Ꮩ"],[43946,1,"Ꮪ"],[43947,1,"Ꮫ"],[43948,1,"Ꮬ"],[43949,1,"Ꮭ"],[43950,1,"Ꮮ"],[43951,1,"Ꮯ"],[43952,1,"Ꮰ"],[43953,1,"Ꮱ"],[43954,1,"Ꮲ"],[43955,1,"Ꮳ"],[43956,1,"Ꮴ"],[43957,1,"Ꮵ"],[43958,1,"Ꮶ"],[43959,1,"Ꮷ"],[43960,1,"Ꮸ"],[43961,1,"Ꮹ"],[43962,1,"Ꮺ"],[43963,1,"Ꮻ"],[43964,1,"Ꮼ"],[43965,1,"Ꮽ"],[43966,1,"Ꮾ"],[43967,1,"Ꮿ"],[[43968,44010],2],[44011,2],[[44012,44013],2],[[44014,44015],3],[[44016,44025],2],[[44026,44031],3],[[44032,55203],2],[[55204,55215],3],[[55216,55238],2],[[55239,55242],3],[[55243,55291],2],[[55292,55295],3],[[55296,57343],3],[[57344,63743],3],[63744,1,"豈"],[63745,1,"更"],[63746,1,"車"],[63747,1,"賈"],[63748,1,"滑"],[63749,1,"串"],[63750,1,"句"],[[63751,63752],1,"龜"],[63753,1,"契"],[63754,1,"金"],[63755,1,"喇"],[63756,1,"奈"],[63757,1,"懶"],[63758,1,"癩"],[63759,1,"羅"],[63760,1,"蘿"],[63761,1,"螺"],[63762,1,"裸"],[63763,1,"邏"],[63764,1,"樂"],[63765,1,"洛"],[63766,1,"烙"],[63767,1,"珞"],[63768,1,"落"],[63769,1,"酪"],[63770,1,"駱"],[63771,1,"亂"],[63772,1,"卵"],[63773,1,"欄"],[63774,1,"爛"],[63775,1,"蘭"],[63776,1,"鸞"],[63777,1,"嵐"],[63778,1,"濫"],[63779,1,"藍"],[63780,1,"襤"],[63781,1,"拉"],[63782,1,"臘"],[63783,1,"蠟"],[63784,1,"廊"],[63785,1,"朗"],[63786,1,"浪"],[63787,1,"狼"],[63788,1,"郎"],[63789,1,"來"],[63790,1,"冷"],[63791,1,"勞"],[63792,1,"擄"],[63793,1,"櫓"],[63794,1,"爐"],[63795,1,"盧"],[63796,1,"老"],[63797,1,"蘆"],[63798,1,"虜"],[63799,1,"路"],[63800,1,"露"],[63801,1,"魯"],[63802,1,"鷺"],[63803,1,"碌"],[63804,1,"祿"],[63805,1,"綠"],[63806,1,"菉"],[63807,1,"錄"],[63808,1,"鹿"],[63809,1,"論"],[63810,1,"壟"],[63811,1,"弄"],[63812,1,"籠"],[63813,1,"聾"],[63814,1,"牢"],[63815,1,"磊"],[63816,1,"賂"],[63817,1,"雷"],[63818,1,"壘"],[63819,1,"屢"],[63820,1,"樓"],[63821,1,"淚"],[63822,1,"漏"],[63823,1,"累"],[63824,1,"縷"],[63825,1,"陋"],[63826,1,"勒"],[63827,1,"肋"],[63828,1,"凜"],[63829,1,"凌"],[63830,1,"稜"],[63831,1,"綾"],[63832,1,"菱"],[63833,1,"陵"],[63834,1,"讀"],[63835,1,"拏"],[63836,1,"樂"],[63837,1,"諾"],[63838,1,"丹"],[63839,1,"寧"],[63840,1,"怒"],[63841,1,"率"],[63842,1,"異"],[63843,1,"北"],[63844,1,"磻"],[63845,1,"便"],[63846,1,"復"],[63847,1,"不"],[63848,1,"泌"],[63849,1,"數"],[63850,1,"索"],[63851,1,"參"],[63852,1,"塞"],[63853,1,"省"],[63854,1,"葉"],[63855,1,"說"],[63856,1,"殺"],[63857,1,"辰"],[63858,1,"沈"],[63859,1,"拾"],[63860,1,"若"],[63861,1,"掠"],[63862,1,"略"],[63863,1,"亮"],[63864,1,"兩"],[63865,1,"凉"],[63866,1,"梁"],[63867,1,"糧"],[63868,1,"良"],[63869,1,"諒"],[63870,1,"量"],[63871,1,"勵"],[63872,1,"呂"],[63873,1,"女"],[63874,1,"廬"],[63875,1,"旅"],[63876,1,"濾"],[63877,1,"礪"],[63878,1,"閭"],[63879,1,"驪"],[63880,1,"麗"],[63881,1,"黎"],[63882,1,"力"],[63883,1,"曆"],[63884,1,"歷"],[63885,1,"轢"],[63886,1,"年"],[63887,1,"憐"],[63888,1,"戀"],[63889,1,"撚"],[63890,1,"漣"],[63891,1,"煉"],[63892,1,"璉"],[63893,1,"秊"],[63894,1,"練"],[63895,1,"聯"],[63896,1,"輦"],[63897,1,"蓮"],[63898,1,"連"],[63899,1,"鍊"],[63900,1,"列"],[63901,1,"劣"],[63902,1,"咽"],[63903,1,"烈"],[63904,1,"裂"],[63905,1,"說"],[63906,1,"廉"],[63907,1,"念"],[63908,1,"捻"],[63909,1,"殮"],[63910,1,"簾"],[63911,1,"獵"],[63912,1,"令"],[63913,1,"囹"],[63914,1,"寧"],[63915,1,"嶺"],[63916,1,"怜"],[63917,1,"玲"],[63918,1,"瑩"],[63919,1,"羚"],[63920,1,"聆"],[63921,1,"鈴"],[63922,1,"零"],[63923,1,"靈"],[63924,1,"領"],[63925,1,"例"],[63926,1,"禮"],[63927,1,"醴"],[63928,1,"隸"],[63929,1,"惡"],[63930,1,"了"],[63931,1,"僚"],[63932,1,"寮"],[63933,1,"尿"],[63934,1,"料"],[63935,1,"樂"],[63936,1,"燎"],[63937,1,"療"],[63938,1,"蓼"],[63939,1,"遼"],[63940,1,"龍"],[63941,1,"暈"],[63942,1,"阮"],[63943,1,"劉"],[63944,1,"杻"],[63945,1,"柳"],[63946,1,"流"],[63947,1,"溜"],[63948,1,"琉"],[63949,1,"留"],[63950,1,"硫"],[63951,1,"紐"],[63952,1,"類"],[63953,1,"六"],[63954,1,"戮"],[63955,1,"陸"],[63956,1,"倫"],[63957,1,"崙"],[63958,1,"淪"],[63959,1,"輪"],[63960,1,"律"],[63961,1,"慄"],[63962,1,"栗"],[63963,1,"率"],[63964,1,"隆"],[63965,1,"利"],[63966,1,"吏"],[63967,1,"履"],[63968,1,"易"],[63969,1,"李"],[63970,1,"梨"],[63971,1,"泥"],[63972,1,"理"],[63973,1,"痢"],[63974,1,"罹"],[63975,1,"裏"],[63976,1,"裡"],[63977,1,"里"],[63978,1,"離"],[63979,1,"匿"],[63980,1,"溺"],[63981,1,"吝"],[63982,1,"燐"],[63983,1,"璘"],[63984,1,"藺"],[63985,1,"隣"],[63986,1,"鱗"],[63987,1,"麟"],[63988,1,"林"],[63989,1,"淋"],[63990,1,"臨"],[63991,1,"立"],[63992,1,"笠"],[63993,1,"粒"],[63994,1,"狀"],[63995,1,"炙"],[63996,1,"識"],[63997,1,"什"],[63998,1,"茶"],[63999,1,"刺"],[64000,1,"切"],[64001,1,"度"],[64002,1,"拓"],[64003,1,"糖"],[64004,1,"宅"],[64005,1,"洞"],[64006,1,"暴"],[64007,1,"輻"],[64008,1,"行"],[64009,1,"降"],[64010,1,"見"],[64011,1,"廓"],[64012,1,"兀"],[64013,1,"嗀"],[[64014,64015],2],[64016,1,"塚"],[64017,2],[64018,1,"晴"],[[64019,64020],2],[64021,1,"凞"],[64022,1,"猪"],[64023,1,"益"],[64024,1,"礼"],[64025,1,"神"],[64026,1,"祥"],[64027,1,"福"],[64028,1,"靖"],[64029,1,"精"],[64030,1,"羽"],[64031,2],[64032,1,"蘒"],[64033,2],[64034,1,"諸"],[[64035,64036],2],[64037,1,"逸"],[64038,1,"都"],[[64039,64041],2],[64042,1,"飯"],[64043,1,"飼"],[64044,1,"館"],[64045,1,"鶴"],[64046,1,"郞"],[64047,1,"隷"],[64048,1,"侮"],[64049,1,"僧"],[64050,1,"免"],[64051,1,"勉"],[64052,1,"勤"],[64053,1,"卑"],[64054,1,"喝"],[64055,1,"嘆"],[64056,1,"器"],[64057,1,"塀"],[64058,1,"墨"],[64059,1,"層"],[64060,1,"屮"],[64061,1,"悔"],[64062,1,"慨"],[64063,1,"憎"],[64064,1,"懲"],[64065,1,"敏"],[64066,1,"既"],[64067,1,"暑"],[64068,1,"梅"],[64069,1,"海"],[64070,1,"渚"],[64071,1,"漢"],[64072,1,"煮"],[64073,1,"爫"],[64074,1,"琢"],[64075,1,"碑"],[64076,1,"社"],[64077,1,"祉"],[64078,1,"祈"],[64079,1,"祐"],[64080,1,"祖"],[64081,1,"祝"],[64082,1,"禍"],[64083,1,"禎"],[64084,1,"穀"],[64085,1,"突"],[64086,1,"節"],[64087,1,"練"],[64088,1,"縉"],[64089,1,"繁"],[64090,1,"署"],[64091,1,"者"],[64092,1,"臭"],[[64093,64094],1,"艹"],[64095,1,"著"],[64096,1,"褐"],[64097,1,"視"],[64098,1,"謁"],[64099,1,"謹"],[64100,1,"賓"],[64101,1,"贈"],[64102,1,"辶"],[64103,1,"逸"],[64104,1,"難"],[64105,1,"響"],[64106,1,"頻"],[64107,1,"恵"],[64108,1,"𤋮"],[64109,1,"舘"],[[64110,64111],3],[64112,1,"並"],[64113,1,"况"],[64114,1,"全"],[64115,1,"侀"],[64116,1,"充"],[64117,1,"冀"],[64118,1,"勇"],[64119,1,"勺"],[64120,1,"喝"],[64121,1,"啕"],[64122,1,"喙"],[64123,1,"嗢"],[64124,1,"塚"],[64125,1,"墳"],[64126,1,"奄"],[64127,1,"奔"],[64128,1,"婢"],[64129,1,"嬨"],[64130,1,"廒"],[64131,1,"廙"],[64132,1,"彩"],[64133,1,"徭"],[64134,1,"惘"],[64135,1,"慎"],[64136,1,"愈"],[64137,1,"憎"],[64138,1,"慠"],[64139,1,"懲"],[64140,1,"戴"],[64141,1,"揄"],[64142,1,"搜"],[64143,1,"摒"],[64144,1,"敖"],[64145,1,"晴"],[64146,1,"朗"],[64147,1,"望"],[64148,1,"杖"],[64149,1,"歹"],[64150,1,"殺"],[64151,1,"流"],[64152,1,"滛"],[64153,1,"滋"],[64154,1,"漢"],[64155,1,"瀞"],[64156,1,"煮"],[64157,1,"瞧"],[64158,1,"爵"],[64159,1,"犯"],[64160,1,"猪"],[64161,1,"瑱"],[64162,1,"甆"],[64163,1,"画"],[64164,1,"瘝"],[64165,1,"瘟"],[64166,1,"益"],[64167,1,"盛"],[64168,1,"直"],[64169,1,"睊"],[64170,1,"着"],[64171,1,"磌"],[64172,1,"窱"],[64173,1,"節"],[64174,1,"类"],[64175,1,"絛"],[64176,1,"練"],[64177,1,"缾"],[64178,1,"者"],[64179,1,"荒"],[64180,1,"華"],[64181,1,"蝹"],[64182,1,"襁"],[64183,1,"覆"],[64184,1,"視"],[64185,1,"調"],[64186,1,"諸"],[64187,1,"請"],[64188,1,"謁"],[64189,1,"諾"],[64190,1,"諭"],[64191,1,"謹"],[64192,1,"變"],[64193,1,"贈"],[64194,1,"輸"],[64195,1,"遲"],[64196,1,"醙"],[64197,1,"鉶"],[64198,1,"陼"],[64199,1,"難"],[64200,1,"靖"],[64201,1,"韛"],[64202,1,"響"],[64203,1,"頋"],[64204,1,"頻"],[64205,1,"鬒"],[64206,1,"龜"],[64207,1,"𢡊"],[64208,1,"𢡄"],[64209,1,"𣏕"],[64210,1,"㮝"],[64211,1,"䀘"],[64212,1,"䀹"],[64213,1,"𥉉"],[64214,1,"𥳐"],[64215,1,"𧻓"],[64216,1,"齃"],[64217,1,"龎"],[[64218,64255],3],[64256,1,"ff"],[64257,1,"fi"],[64258,1,"fl"],[64259,1,"ffi"],[64260,1,"ffl"],[[64261,64262],1,"st"],[[64263,64274],3],[64275,1,"մն"],[64276,1,"մե"],[64277,1,"մի"],[64278,1,"վն"],[64279,1,"մխ"],[[64280,64284],3],[64285,1,"יִ"],[64286,2],[64287,1,"ײַ"],[64288,1,"ע"],[64289,1,"א"],[64290,1,"ד"],[64291,1,"ה"],[64292,1,"כ"],[64293,1,"ל"],[64294,1,"ם"],[64295,1,"ר"],[64296,1,"ת"],[64297,5,"+"],[64298,1,"שׁ"],[64299,1,"שׂ"],[64300,1,"שּׁ"],[64301,1,"שּׂ"],[64302,1,"אַ"],[64303,1,"אָ"],[64304,1,"אּ"],[64305,1,"בּ"],[64306,1,"גּ"],[64307,1,"דּ"],[64308,1,"הּ"],[64309,1,"וּ"],[64310,1,"זּ"],[64311,3],[64312,1,"טּ"],[64313,1,"יּ"],[64314,1,"ךּ"],[64315,1,"כּ"],[64316,1,"לּ"],[64317,3],[64318,1,"מּ"],[64319,3],[64320,1,"נּ"],[64321,1,"סּ"],[64322,3],[64323,1,"ףּ"],[64324,1,"פּ"],[64325,3],[64326,1,"צּ"],[64327,1,"קּ"],[64328,1,"רּ"],[64329,1,"שּ"],[64330,1,"תּ"],[64331,1,"וֹ"],[64332,1,"בֿ"],[64333,1,"כֿ"],[64334,1,"פֿ"],[64335,1,"אל"],[[64336,64337],1,"ٱ"],[[64338,64341],1,"ٻ"],[[64342,64345],1,"پ"],[[64346,64349],1,"ڀ"],[[64350,64353],1,"ٺ"],[[64354,64357],1,"ٿ"],[[64358,64361],1,"ٹ"],[[64362,64365],1,"ڤ"],[[64366,64369],1,"ڦ"],[[64370,64373],1,"ڄ"],[[64374,64377],1,"ڃ"],[[64378,64381],1,"چ"],[[64382,64385],1,"ڇ"],[[64386,64387],1,"ڍ"],[[64388,64389],1,"ڌ"],[[64390,64391],1,"ڎ"],[[64392,64393],1,"ڈ"],[[64394,64395],1,"ژ"],[[64396,64397],1,"ڑ"],[[64398,64401],1,"ک"],[[64402,64405],1,"گ"],[[64406,64409],1,"ڳ"],[[64410,64413],1,"ڱ"],[[64414,64415],1,"ں"],[[64416,64419],1,"ڻ"],[[64420,64421],1,"ۀ"],[[64422,64425],1,"ہ"],[[64426,64429],1,"ھ"],[[64430,64431],1,"ے"],[[64432,64433],1,"ۓ"],[[64434,64449],2],[64450,2],[[64451,64466],3],[[64467,64470],1,"ڭ"],[[64471,64472],1,"ۇ"],[[64473,64474],1,"ۆ"],[[64475,64476],1,"ۈ"],[64477,1,"ۇٴ"],[[64478,64479],1,"ۋ"],[[64480,64481],1,"ۅ"],[[64482,64483],1,"ۉ"],[[64484,64487],1,"ې"],[[64488,64489],1,"ى"],[[64490,64491],1,"ئا"],[[64492,64493],1,"ئە"],[[64494,64495],1,"ئو"],[[64496,64497],1,"ئۇ"],[[64498,64499],1,"ئۆ"],[[64500,64501],1,"ئۈ"],[[64502,64504],1,"ئې"],[[64505,64507],1,"ئى"],[[64508,64511],1,"ی"],[64512,1,"ئج"],[64513,1,"ئح"],[64514,1,"ئم"],[64515,1,"ئى"],[64516,1,"ئي"],[64517,1,"بج"],[64518,1,"بح"],[64519,1,"بخ"],[64520,1,"بم"],[64521,1,"بى"],[64522,1,"بي"],[64523,1,"تج"],[64524,1,"تح"],[64525,1,"تخ"],[64526,1,"تم"],[64527,1,"تى"],[64528,1,"تي"],[64529,1,"ثج"],[64530,1,"ثم"],[64531,1,"ثى"],[64532,1,"ثي"],[64533,1,"جح"],[64534,1,"جم"],[64535,1,"حج"],[64536,1,"حم"],[64537,1,"خج"],[64538,1,"خح"],[64539,1,"خم"],[64540,1,"سج"],[64541,1,"سح"],[64542,1,"سخ"],[64543,1,"سم"],[64544,1,"صح"],[64545,1,"صم"],[64546,1,"ضج"],[64547,1,"ضح"],[64548,1,"ضخ"],[64549,1,"ضم"],[64550,1,"طح"],[64551,1,"طم"],[64552,1,"ظم"],[64553,1,"عج"],[64554,1,"عم"],[64555,1,"غج"],[64556,1,"غم"],[64557,1,"فج"],[64558,1,"فح"],[64559,1,"فخ"],[64560,1,"فم"],[64561,1,"فى"],[64562,1,"في"],[64563,1,"قح"],[64564,1,"قم"],[64565,1,"قى"],[64566,1,"قي"],[64567,1,"كا"],[64568,1,"كج"],[64569,1,"كح"],[64570,1,"كخ"],[64571,1,"كل"],[64572,1,"كم"],[64573,1,"كى"],[64574,1,"كي"],[64575,1,"لج"],[64576,1,"لح"],[64577,1,"لخ"],[64578,1,"لم"],[64579,1,"لى"],[64580,1,"لي"],[64581,1,"مج"],[64582,1,"مح"],[64583,1,"مخ"],[64584,1,"مم"],[64585,1,"مى"],[64586,1,"مي"],[64587,1,"نج"],[64588,1,"نح"],[64589,1,"نخ"],[64590,1,"نم"],[64591,1,"نى"],[64592,1,"ني"],[64593,1,"هج"],[64594,1,"هم"],[64595,1,"هى"],[64596,1,"هي"],[64597,1,"يج"],[64598,1,"يح"],[64599,1,"يخ"],[64600,1,"يم"],[64601,1,"يى"],[64602,1,"يي"],[64603,1,"ذٰ"],[64604,1,"رٰ"],[64605,1,"ىٰ"],[64606,5," ٌّ"],[64607,5," ٍّ"],[64608,5," َّ"],[64609,5," ُّ"],[64610,5," ِّ"],[64611,5," ّٰ"],[64612,1,"ئر"],[64613,1,"ئز"],[64614,1,"ئم"],[64615,1,"ئن"],[64616,1,"ئى"],[64617,1,"ئي"],[64618,1,"بر"],[64619,1,"بز"],[64620,1,"بم"],[64621,1,"بن"],[64622,1,"بى"],[64623,1,"بي"],[64624,1,"تر"],[64625,1,"تز"],[64626,1,"تم"],[64627,1,"تن"],[64628,1,"تى"],[64629,1,"تي"],[64630,1,"ثر"],[64631,1,"ثز"],[64632,1,"ثم"],[64633,1,"ثن"],[64634,1,"ثى"],[64635,1,"ثي"],[64636,1,"فى"],[64637,1,"في"],[64638,1,"قى"],[64639,1,"قي"],[64640,1,"كا"],[64641,1,"كل"],[64642,1,"كم"],[64643,1,"كى"],[64644,1,"كي"],[64645,1,"لم"],[64646,1,"لى"],[64647,1,"لي"],[64648,1,"ما"],[64649,1,"مم"],[64650,1,"نر"],[64651,1,"نز"],[64652,1,"نم"],[64653,1,"نن"],[64654,1,"نى"],[64655,1,"ني"],[64656,1,"ىٰ"],[64657,1,"ير"],[64658,1,"يز"],[64659,1,"يم"],[64660,1,"ين"],[64661,1,"يى"],[64662,1,"يي"],[64663,1,"ئج"],[64664,1,"ئح"],[64665,1,"ئخ"],[64666,1,"ئم"],[64667,1,"ئه"],[64668,1,"بج"],[64669,1,"بح"],[64670,1,"بخ"],[64671,1,"بم"],[64672,1,"به"],[64673,1,"تج"],[64674,1,"تح"],[64675,1,"تخ"],[64676,1,"تم"],[64677,1,"ته"],[64678,1,"ثم"],[64679,1,"جح"],[64680,1,"جم"],[64681,1,"حج"],[64682,1,"حم"],[64683,1,"خج"],[64684,1,"خم"],[64685,1,"سج"],[64686,1,"سح"],[64687,1,"سخ"],[64688,1,"سم"],[64689,1,"صح"],[64690,1,"صخ"],[64691,1,"صم"],[64692,1,"ضج"],[64693,1,"ضح"],[64694,1,"ضخ"],[64695,1,"ضم"],[64696,1,"طح"],[64697,1,"ظم"],[64698,1,"عج"],[64699,1,"عم"],[64700,1,"غج"],[64701,1,"غم"],[64702,1,"فج"],[64703,1,"فح"],[64704,1,"فخ"],[64705,1,"فم"],[64706,1,"قح"],[64707,1,"قم"],[64708,1,"كج"],[64709,1,"كح"],[64710,1,"كخ"],[64711,1,"كل"],[64712,1,"كم"],[64713,1,"لج"],[64714,1,"لح"],[64715,1,"لخ"],[64716,1,"لم"],[64717,1,"له"],[64718,1,"مج"],[64719,1,"مح"],[64720,1,"مخ"],[64721,1,"مم"],[64722,1,"نج"],[64723,1,"نح"],[64724,1,"نخ"],[64725,1,"نم"],[64726,1,"نه"],[64727,1,"هج"],[64728,1,"هم"],[64729,1,"هٰ"],[64730,1,"يج"],[64731,1,"يح"],[64732,1,"يخ"],[64733,1,"يم"],[64734,1,"يه"],[64735,1,"ئم"],[64736,1,"ئه"],[64737,1,"بم"],[64738,1,"به"],[64739,1,"تم"],[64740,1,"ته"],[64741,1,"ثم"],[64742,1,"ثه"],[64743,1,"سم"],[64744,1,"سه"],[64745,1,"شم"],[64746,1,"شه"],[64747,1,"كل"],[64748,1,"كم"],[64749,1,"لم"],[64750,1,"نم"],[64751,1,"نه"],[64752,1,"يم"],[64753,1,"يه"],[64754,1,"ـَّ"],[64755,1,"ـُّ"],[64756,1,"ـِّ"],[64757,1,"طى"],[64758,1,"طي"],[64759,1,"عى"],[64760,1,"عي"],[64761,1,"غى"],[64762,1,"غي"],[64763,1,"سى"],[64764,1,"سي"],[64765,1,"شى"],[64766,1,"شي"],[64767,1,"حى"],[64768,1,"حي"],[64769,1,"جى"],[64770,1,"جي"],[64771,1,"خى"],[64772,1,"خي"],[64773,1,"صى"],[64774,1,"صي"],[64775,1,"ضى"],[64776,1,"ضي"],[64777,1,"شج"],[64778,1,"شح"],[64779,1,"شخ"],[64780,1,"شم"],[64781,1,"شر"],[64782,1,"سر"],[64783,1,"صر"],[64784,1,"ضر"],[64785,1,"طى"],[64786,1,"طي"],[64787,1,"عى"],[64788,1,"عي"],[64789,1,"غى"],[64790,1,"غي"],[64791,1,"سى"],[64792,1,"سي"],[64793,1,"شى"],[64794,1,"شي"],[64795,1,"حى"],[64796,1,"حي"],[64797,1,"جى"],[64798,1,"جي"],[64799,1,"خى"],[64800,1,"خي"],[64801,1,"صى"],[64802,1,"صي"],[64803,1,"ضى"],[64804,1,"ضي"],[64805,1,"شج"],[64806,1,"شح"],[64807,1,"شخ"],[64808,1,"شم"],[64809,1,"شر"],[64810,1,"سر"],[64811,1,"صر"],[64812,1,"ضر"],[64813,1,"شج"],[64814,1,"شح"],[64815,1,"شخ"],[64816,1,"شم"],[64817,1,"سه"],[64818,1,"شه"],[64819,1,"طم"],[64820,1,"سج"],[64821,1,"سح"],[64822,1,"سخ"],[64823,1,"شج"],[64824,1,"شح"],[64825,1,"شخ"],[64826,1,"طم"],[64827,1,"ظم"],[[64828,64829],1,"اً"],[[64830,64831],2],[[64832,64847],2],[64848,1,"تجم"],[[64849,64850],1,"تحج"],[64851,1,"تحم"],[64852,1,"تخم"],[64853,1,"تمج"],[64854,1,"تمح"],[64855,1,"تمخ"],[[64856,64857],1,"جمح"],[64858,1,"حمي"],[64859,1,"حمى"],[64860,1,"سحج"],[64861,1,"سجح"],[64862,1,"سجى"],[[64863,64864],1,"سمح"],[64865,1,"سمج"],[[64866,64867],1,"سمم"],[[64868,64869],1,"صحح"],[64870,1,"صمم"],[[64871,64872],1,"شحم"],[64873,1,"شجي"],[[64874,64875],1,"شمخ"],[[64876,64877],1,"شمم"],[64878,1,"ضحى"],[[64879,64880],1,"ضخم"],[[64881,64882],1,"طمح"],[64883,1,"طمم"],[64884,1,"طمي"],[64885,1,"عجم"],[[64886,64887],1,"عمم"],[64888,1,"عمى"],[64889,1,"غمم"],[64890,1,"غمي"],[64891,1,"غمى"],[[64892,64893],1,"فخم"],[64894,1,"قمح"],[64895,1,"قمم"],[64896,1,"لحم"],[64897,1,"لحي"],[64898,1,"لحى"],[[64899,64900],1,"لجج"],[[64901,64902],1,"لخم"],[[64903,64904],1,"لمح"],[64905,1,"محج"],[64906,1,"محم"],[64907,1,"محي"],[64908,1,"مجح"],[64909,1,"مجم"],[64910,1,"مخج"],[64911,1,"مخم"],[[64912,64913],3],[64914,1,"مجخ"],[64915,1,"همج"],[64916,1,"همم"],[64917,1,"نحم"],[64918,1,"نحى"],[[64919,64920],1,"نجم"],[64921,1,"نجى"],[64922,1,"نمي"],[64923,1,"نمى"],[[64924,64925],1,"يمم"],[64926,1,"بخي"],[64927,1,"تجي"],[64928,1,"تجى"],[64929,1,"تخي"],[64930,1,"تخى"],[64931,1,"تمي"],[64932,1,"تمى"],[64933,1,"جمي"],[64934,1,"جحى"],[64935,1,"جمى"],[64936,1,"سخى"],[64937,1,"صحي"],[64938,1,"شحي"],[64939,1,"ضحي"],[64940,1,"لجي"],[64941,1,"لمي"],[64942,1,"يحي"],[64943,1,"يجي"],[64944,1,"يمي"],[64945,1,"ممي"],[64946,1,"قمي"],[64947,1,"نحي"],[64948,1,"قمح"],[64949,1,"لحم"],[64950,1,"عمي"],[64951,1,"كمي"],[64952,1,"نجح"],[64953,1,"مخي"],[64954,1,"لجم"],[64955,1,"كمم"],[64956,1,"لجم"],[64957,1,"نجح"],[64958,1,"جحي"],[64959,1,"حجي"],[64960,1,"مجي"],[64961,1,"فمي"],[64962,1,"بحي"],[64963,1,"كمم"],[64964,1,"عجم"],[64965,1,"صمم"],[64966,1,"سخي"],[64967,1,"نجي"],[[64968,64974],3],[64975,2],[[64976,65007],3],[65008,1,"صلے"],[65009,1,"قلے"],[65010,1,"الله"],[65011,1,"اكبر"],[65012,1,"محمد"],[65013,1,"صلعم"],[65014,1,"رسول"],[65015,1,"عليه"],[65016,1,"وسلم"],[65017,1,"صلى"],[65018,5,"صلى الله عليه وسلم"],[65019,5,"جل جلاله"],[65020,1,"ریال"],[65021,2],[[65022,65023],2],[[65024,65039],7],[65040,5,","],[65041,1,"、"],[65042,3],[65043,5,":"],[65044,5,";"],[65045,5,"!"],[65046,5,"?"],[65047,1,"〖"],[65048,1,"〗"],[65049,3],[[65050,65055],3],[[65056,65059],2],[[65060,65062],2],[[65063,65069],2],[[65070,65071],2],[65072,3],[65073,1,"—"],[65074,1,"–"],[[65075,65076],5,"_"],[65077,5,"("],[65078,5,")"],[65079,5,"{"],[65080,5,"}"],[65081,1,"〔"],[65082,1,"〕"],[65083,1,"【"],[65084,1,"】"],[65085,1,"《"],[65086,1,"》"],[65087,1,"〈"],[65088,1,"〉"],[65089,1,"「"],[65090,1,"」"],[65091,1,"『"],[65092,1,"』"],[[65093,65094],2],[65095,5,"["],[65096,5,"]"],[[65097,65100],5," ̅"],[[65101,65103],5,"_"],[65104,5,","],[65105,1,"、"],[65106,3],[65107,3],[65108,5,";"],[65109,5,":"],[65110,5,"?"],[65111,5,"!"],[65112,1,"—"],[65113,5,"("],[65114,5,")"],[65115,5,"{"],[65116,5,"}"],[65117,1,"〔"],[65118,1,"〕"],[65119,5,"#"],[65120,5,"&"],[65121,5,"*"],[65122,5,"+"],[65123,1,"-"],[65124,5,"<"],[65125,5,">"],[65126,5,"="],[65127,3],[65128,5,"\\\\"],[65129,5,"$"],[65130,5,"%"],[65131,5,"@"],[[65132,65135],3],[65136,5," ً"],[65137,1,"ـً"],[65138,5," ٌ"],[65139,2],[65140,5," ٍ"],[65141,3],[65142,5," َ"],[65143,1,"ـَ"],[65144,5," ُ"],[65145,1,"ـُ"],[65146,5," ِ"],[65147,1,"ـِ"],[65148,5," ّ"],[65149,1,"ـّ"],[65150,5," ْ"],[65151,1,"ـْ"],[65152,1,"ء"],[[65153,65154],1,"آ"],[[65155,65156],1,"أ"],[[65157,65158],1,"ؤ"],[[65159,65160],1,"إ"],[[65161,65164],1,"ئ"],[[65165,65166],1,"ا"],[[65167,65170],1,"ب"],[[65171,65172],1,"ة"],[[65173,65176],1,"ت"],[[65177,65180],1,"ث"],[[65181,65184],1,"ج"],[[65185,65188],1,"ح"],[[65189,65192],1,"خ"],[[65193,65194],1,"د"],[[65195,65196],1,"ذ"],[[65197,65198],1,"ر"],[[65199,65200],1,"ز"],[[65201,65204],1,"س"],[[65205,65208],1,"ش"],[[65209,65212],1,"ص"],[[65213,65216],1,"ض"],[[65217,65220],1,"ط"],[[65221,65224],1,"ظ"],[[65225,65228],1,"ع"],[[65229,65232],1,"غ"],[[65233,65236],1,"ف"],[[65237,65240],1,"ق"],[[65241,65244],1,"ك"],[[65245,65248],1,"ل"],[[65249,65252],1,"م"],[[65253,65256],1,"ن"],[[65257,65260],1,"ه"],[[65261,65262],1,"و"],[[65263,65264],1,"ى"],[[65265,65268],1,"ي"],[[65269,65270],1,"لآ"],[[65271,65272],1,"لأ"],[[65273,65274],1,"لإ"],[[65275,65276],1,"لا"],[[65277,65278],3],[65279,7],[65280,3],[65281,5,"!"],[65282,5,"\\""],[65283,5,"#"],[65284,5,"$"],[65285,5,"%"],[65286,5,"&"],[65287,5,"\'"],[65288,5,"("],[65289,5,")"],[65290,5,"*"],[65291,5,"+"],[65292,5,","],[65293,1,"-"],[65294,1,"."],[65295,5,"/"],[65296,1,"0"],[65297,1,"1"],[65298,1,"2"],[65299,1,"3"],[65300,1,"4"],[65301,1,"5"],[65302,1,"6"],[65303,1,"7"],[65304,1,"8"],[65305,1,"9"],[65306,5,":"],[65307,5,";"],[65308,5,"<"],[65309,5,"="],[65310,5,">"],[65311,5,"?"],[65312,5,"@"],[65313,1,"a"],[65314,1,"b"],[65315,1,"c"],[65316,1,"d"],[65317,1,"e"],[65318,1,"f"],[65319,1,"g"],[65320,1,"h"],[65321,1,"i"],[65322,1,"j"],[65323,1,"k"],[65324,1,"l"],[65325,1,"m"],[65326,1,"n"],[65327,1,"o"],[65328,1,"p"],[65329,1,"q"],[65330,1,"r"],[65331,1,"s"],[65332,1,"t"],[65333,1,"u"],[65334,1,"v"],[65335,1,"w"],[65336,1,"x"],[65337,1,"y"],[65338,1,"z"],[65339,5,"["],[65340,5,"\\\\"],[65341,5,"]"],[65342,5,"^"],[65343,5,"_"],[65344,5,"`"],[65345,1,"a"],[65346,1,"b"],[65347,1,"c"],[65348,1,"d"],[65349,1,"e"],[65350,1,"f"],[65351,1,"g"],[65352,1,"h"],[65353,1,"i"],[65354,1,"j"],[65355,1,"k"],[65356,1,"l"],[65357,1,"m"],[65358,1,"n"],[65359,1,"o"],[65360,1,"p"],[65361,1,"q"],[65362,1,"r"],[65363,1,"s"],[65364,1,"t"],[65365,1,"u"],[65366,1,"v"],[65367,1,"w"],[65368,1,"x"],[65369,1,"y"],[65370,1,"z"],[65371,5,"{"],[65372,5,"|"],[65373,5,"}"],[65374,5,"~"],[65375,1,"⦅"],[65376,1,"⦆"],[65377,1,"."],[65378,1,"「"],[65379,1,"」"],[65380,1,"、"],[65381,1,"・"],[65382,1,"ヲ"],[65383,1,"ァ"],[65384,1,"ィ"],[65385,1,"ゥ"],[65386,1,"ェ"],[65387,1,"ォ"],[65388,1,"ャ"],[65389,1,"ュ"],[65390,1,"ョ"],[65391,1,"ッ"],[65392,1,"ー"],[65393,1,"ア"],[65394,1,"イ"],[65395,1,"ウ"],[65396,1,"エ"],[65397,1,"オ"],[65398,1,"カ"],[65399,1,"キ"],[65400,1,"ク"],[65401,1,"ケ"],[65402,1,"コ"],[65403,1,"サ"],[65404,1,"シ"],[65405,1,"ス"],[65406,1,"セ"],[65407,1,"ソ"],[65408,1,"タ"],[65409,1,"チ"],[65410,1,"ツ"],[65411,1,"テ"],[65412,1,"ト"],[65413,1,"ナ"],[65414,1,"ニ"],[65415,1,"ヌ"],[65416,1,"ネ"],[65417,1,"ノ"],[65418,1,"ハ"],[65419,1,"ヒ"],[65420,1,"フ"],[65421,1,"ヘ"],[65422,1,"ホ"],[65423,1,"マ"],[65424,1,"ミ"],[65425,1,"ム"],[65426,1,"メ"],[65427,1,"モ"],[65428,1,"ヤ"],[65429,1,"ユ"],[65430,1,"ヨ"],[65431,1,"ラ"],[65432,1,"リ"],[65433,1,"ル"],[65434,1,"レ"],[65435,1,"ロ"],[65436,1,"ワ"],[65437,1,"ン"],[65438,1,"゙"],[65439,1,"゚"],[65440,3],[65441,1,"ᄀ"],[65442,1,"ᄁ"],[65443,1,"ᆪ"],[65444,1,"ᄂ"],[65445,1,"ᆬ"],[65446,1,"ᆭ"],[65447,1,"ᄃ"],[65448,1,"ᄄ"],[65449,1,"ᄅ"],[65450,1,"ᆰ"],[65451,1,"ᆱ"],[65452,1,"ᆲ"],[65453,1,"ᆳ"],[65454,1,"ᆴ"],[65455,1,"ᆵ"],[65456,1,"ᄚ"],[65457,1,"ᄆ"],[65458,1,"ᄇ"],[65459,1,"ᄈ"],[65460,1,"ᄡ"],[65461,1,"ᄉ"],[65462,1,"ᄊ"],[65463,1,"ᄋ"],[65464,1,"ᄌ"],[65465,1,"ᄍ"],[65466,1,"ᄎ"],[65467,1,"ᄏ"],[65468,1,"ᄐ"],[65469,1,"ᄑ"],[65470,1,"ᄒ"],[[65471,65473],3],[65474,1,"ᅡ"],[65475,1,"ᅢ"],[65476,1,"ᅣ"],[65477,1,"ᅤ"],[65478,1,"ᅥ"],[65479,1,"ᅦ"],[[65480,65481],3],[65482,1,"ᅧ"],[65483,1,"ᅨ"],[65484,1,"ᅩ"],[65485,1,"ᅪ"],[65486,1,"ᅫ"],[65487,1,"ᅬ"],[[65488,65489],3],[65490,1,"ᅭ"],[65491,1,"ᅮ"],[65492,1,"ᅯ"],[65493,1,"ᅰ"],[65494,1,"ᅱ"],[65495,1,"ᅲ"],[[65496,65497],3],[65498,1,"ᅳ"],[65499,1,"ᅴ"],[65500,1,"ᅵ"],[[65501,65503],3],[65504,1,"¢"],[65505,1,"£"],[65506,1,"¬"],[65507,5," ̄"],[65508,1,"¦"],[65509,1,"¥"],[65510,1,"₩"],[65511,3],[65512,1,"│"],[65513,1,"←"],[65514,1,"↑"],[65515,1,"→"],[65516,1,"↓"],[65517,1,"■"],[65518,1,"○"],[[65519,65528],3],[[65529,65531],3],[65532,3],[65533,3],[[65534,65535],3],[[65536,65547],2],[65548,3],[[65549,65574],2],[65575,3],[[65576,65594],2],[65595,3],[[65596,65597],2],[65598,3],[[65599,65613],2],[[65614,65615],3],[[65616,65629],2],[[65630,65663],3],[[65664,65786],2],[[65787,65791],3],[[65792,65794],2],[[65795,65798],3],[[65799,65843],2],[[65844,65846],3],[[65847,65855],2],[[65856,65930],2],[[65931,65932],2],[[65933,65934],2],[65935,3],[[65936,65947],2],[65948,2],[[65949,65951],3],[65952,2],[[65953,65999],3],[[66000,66044],2],[66045,2],[[66046,66175],3],[[66176,66204],2],[[66205,66207],3],[[66208,66256],2],[[66257,66271],3],[66272,2],[[66273,66299],2],[[66300,66303],3],[[66304,66334],2],[66335,2],[[66336,66339],2],[[66340,66348],3],[[66349,66351],2],[[66352,66368],2],[66369,2],[[66370,66377],2],[66378,2],[[66379,66383],3],[[66384,66426],2],[[66427,66431],3],[[66432,66461],2],[66462,3],[66463,2],[[66464,66499],2],[[66500,66503],3],[[66504,66511],2],[[66512,66517],2],[[66518,66559],3],[66560,1,"𐐨"],[66561,1,"𐐩"],[66562,1,"𐐪"],[66563,1,"𐐫"],[66564,1,"𐐬"],[66565,1,"𐐭"],[66566,1,"𐐮"],[66567,1,"𐐯"],[66568,1,"𐐰"],[66569,1,"𐐱"],[66570,1,"𐐲"],[66571,1,"𐐳"],[66572,1,"𐐴"],[66573,1,"𐐵"],[66574,1,"𐐶"],[66575,1,"𐐷"],[66576,1,"𐐸"],[66577,1,"𐐹"],[66578,1,"𐐺"],[66579,1,"𐐻"],[66580,1,"𐐼"],[66581,1,"𐐽"],[66582,1,"𐐾"],[66583,1,"𐐿"],[66584,1,"𐑀"],[66585,1,"𐑁"],[66586,1,"𐑂"],[66587,1,"𐑃"],[66588,1,"𐑄"],[66589,1,"𐑅"],[66590,1,"𐑆"],[66591,1,"𐑇"],[66592,1,"𐑈"],[66593,1,"𐑉"],[66594,1,"𐑊"],[66595,1,"𐑋"],[66596,1,"𐑌"],[66597,1,"𐑍"],[66598,1,"𐑎"],[66599,1,"𐑏"],[[66600,66637],2],[[66638,66717],2],[[66718,66719],3],[[66720,66729],2],[[66730,66735],3],[66736,1,"𐓘"],[66737,1,"𐓙"],[66738,1,"𐓚"],[66739,1,"𐓛"],[66740,1,"𐓜"],[66741,1,"𐓝"],[66742,1,"𐓞"],[66743,1,"𐓟"],[66744,1,"𐓠"],[66745,1,"𐓡"],[66746,1,"𐓢"],[66747,1,"𐓣"],[66748,1,"𐓤"],[66749,1,"𐓥"],[66750,1,"𐓦"],[66751,1,"𐓧"],[66752,1,"𐓨"],[66753,1,"𐓩"],[66754,1,"𐓪"],[66755,1,"𐓫"],[66756,1,"𐓬"],[66757,1,"𐓭"],[66758,1,"𐓮"],[66759,1,"𐓯"],[66760,1,"𐓰"],[66761,1,"𐓱"],[66762,1,"𐓲"],[66763,1,"𐓳"],[66764,1,"𐓴"],[66765,1,"𐓵"],[66766,1,"𐓶"],[66767,1,"𐓷"],[66768,1,"𐓸"],[66769,1,"𐓹"],[66770,1,"𐓺"],[66771,1,"𐓻"],[[66772,66775],3],[[66776,66811],2],[[66812,66815],3],[[66816,66855],2],[[66856,66863],3],[[66864,66915],2],[[66916,66926],3],[66927,2],[66928,1,"𐖗"],[66929,1,"𐖘"],[66930,1,"𐖙"],[66931,1,"𐖚"],[66932,1,"𐖛"],[66933,1,"𐖜"],[66934,1,"𐖝"],[66935,1,"𐖞"],[66936,1,"𐖟"],[66937,1,"𐖠"],[66938,1,"𐖡"],[66939,3],[66940,1,"𐖣"],[66941,1,"𐖤"],[66942,1,"𐖥"],[66943,1,"𐖦"],[66944,1,"𐖧"],[66945,1,"𐖨"],[66946,1,"𐖩"],[66947,1,"𐖪"],[66948,1,"𐖫"],[66949,1,"𐖬"],[66950,1,"𐖭"],[66951,1,"𐖮"],[66952,1,"𐖯"],[66953,1,"𐖰"],[66954,1,"𐖱"],[66955,3],[66956,1,"𐖳"],[66957,1,"𐖴"],[66958,1,"𐖵"],[66959,1,"𐖶"],[66960,1,"𐖷"],[66961,1,"𐖸"],[66962,1,"𐖹"],[66963,3],[66964,1,"𐖻"],[66965,1,"𐖼"],[66966,3],[[66967,66977],2],[66978,3],[[66979,66993],2],[66994,3],[[66995,67001],2],[67002,3],[[67003,67004],2],[[67005,67071],3],[[67072,67382],2],[[67383,67391],3],[[67392,67413],2],[[67414,67423],3],[[67424,67431],2],[[67432,67455],3],[67456,2],[67457,1,"ː"],[67458,1,"ˑ"],[67459,1,"æ"],[67460,1,"ʙ"],[67461,1,"ɓ"],[67462,3],[67463,1,"ʣ"],[67464,1,"ꭦ"],[67465,1,"ʥ"],[67466,1,"ʤ"],[67467,1,"ɖ"],[67468,1,"ɗ"],[67469,1,"ᶑ"],[67470,1,"ɘ"],[67471,1,"ɞ"],[67472,1,"ʩ"],[67473,1,"ɤ"],[67474,1,"ɢ"],[67475,1,"ɠ"],[67476,1,"ʛ"],[67477,1,"ħ"],[67478,1,"ʜ"],[67479,1,"ɧ"],[67480,1,"ʄ"],[67481,1,"ʪ"],[67482,1,"ʫ"],[67483,1,"ɬ"],[67484,1,"𝼄"],[67485,1,"ꞎ"],[67486,1,"ɮ"],[67487,1,"𝼅"],[67488,1,"ʎ"],[67489,1,"𝼆"],[67490,1,"ø"],[67491,1,"ɶ"],[67492,1,"ɷ"],[67493,1,"q"],[67494,1,"ɺ"],[67495,1,"𝼈"],[67496,1,"ɽ"],[67497,1,"ɾ"],[67498,1,"ʀ"],[67499,1,"ʨ"],[67500,1,"ʦ"],[67501,1,"ꭧ"],[67502,1,"ʧ"],[67503,1,"ʈ"],[67504,1,"ⱱ"],[67505,3],[67506,1,"ʏ"],[67507,1,"ʡ"],[67508,1,"ʢ"],[67509,1,"ʘ"],[67510,1,"ǀ"],[67511,1,"ǁ"],[67512,1,"ǂ"],[67513,1,"𝼊"],[67514,1,"𝼞"],[[67515,67583],3],[[67584,67589],2],[[67590,67591],3],[67592,2],[67593,3],[[67594,67637],2],[67638,3],[[67639,67640],2],[[67641,67643],3],[67644,2],[[67645,67646],3],[67647,2],[[67648,67669],2],[67670,3],[[67671,67679],2],[[67680,67702],2],[[67703,67711],2],[[67712,67742],2],[[67743,67750],3],[[67751,67759],2],[[67760,67807],3],[[67808,67826],2],[67827,3],[[67828,67829],2],[[67830,67834],3],[[67835,67839],2],[[67840,67861],2],[[67862,67865],2],[[67866,67867],2],[[67868,67870],3],[67871,2],[[67872,67897],2],[[67898,67902],3],[67903,2],[[67904,67967],3],[[67968,68023],2],[[68024,68027],3],[[68028,68029],2],[[68030,68031],2],[[68032,68047],2],[[68048,68049],3],[[68050,68095],2],[[68096,68099],2],[68100,3],[[68101,68102],2],[[68103,68107],3],[[68108,68115],2],[68116,3],[[68117,68119],2],[68120,3],[[68121,68147],2],[[68148,68149],2],[[68150,68151],3],[[68152,68154],2],[[68155,68158],3],[68159,2],[[68160,68167],2],[68168,2],[[68169,68175],3],[[68176,68184],2],[[68185,68191],3],[[68192,68220],2],[[68221,68223],2],[[68224,68252],2],[[68253,68255],2],[[68256,68287],3],[[68288,68295],2],[68296,2],[[68297,68326],2],[[68327,68330],3],[[68331,68342],2],[[68343,68351],3],[[68352,68405],2],[[68406,68408],3],[[68409,68415],2],[[68416,68437],2],[[68438,68439],3],[[68440,68447],2],[[68448,68466],2],[[68467,68471],3],[[68472,68479],2],[[68480,68497],2],[[68498,68504],3],[[68505,68508],2],[[68509,68520],3],[[68521,68527],2],[[68528,68607],3],[[68608,68680],2],[[68681,68735],3],[68736,1,"𐳀"],[68737,1,"𐳁"],[68738,1,"𐳂"],[68739,1,"𐳃"],[68740,1,"𐳄"],[68741,1,"𐳅"],[68742,1,"𐳆"],[68743,1,"𐳇"],[68744,1,"𐳈"],[68745,1,"𐳉"],[68746,1,"𐳊"],[68747,1,"𐳋"],[68748,1,"𐳌"],[68749,1,"𐳍"],[68750,1,"𐳎"],[68751,1,"𐳏"],[68752,1,"𐳐"],[68753,1,"𐳑"],[68754,1,"𐳒"],[68755,1,"𐳓"],[68756,1,"𐳔"],[68757,1,"𐳕"],[68758,1,"𐳖"],[68759,1,"𐳗"],[68760,1,"𐳘"],[68761,1,"𐳙"],[68762,1,"𐳚"],[68763,1,"𐳛"],[68764,1,"𐳜"],[68765,1,"𐳝"],[68766,1,"𐳞"],[68767,1,"𐳟"],[68768,1,"𐳠"],[68769,1,"𐳡"],[68770,1,"𐳢"],[68771,1,"𐳣"],[68772,1,"𐳤"],[68773,1,"𐳥"],[68774,1,"𐳦"],[68775,1,"𐳧"],[68776,1,"𐳨"],[68777,1,"𐳩"],[68778,1,"𐳪"],[68779,1,"𐳫"],[68780,1,"𐳬"],[68781,1,"𐳭"],[68782,1,"𐳮"],[68783,1,"𐳯"],[68784,1,"𐳰"],[68785,1,"𐳱"],[68786,1,"𐳲"],[[68787,68799],3],[[68800,68850],2],[[68851,68857],3],[[68858,68863],2],[[68864,68903],2],[[68904,68911],3],[[68912,68921],2],[[68922,69215],3],[[69216,69246],2],[69247,3],[[69248,69289],2],[69290,3],[[69291,69292],2],[69293,2],[[69294,69295],3],[[69296,69297],2],[[69298,69372],3],[[69373,69375],2],[[69376,69404],2],[[69405,69414],2],[69415,2],[[69416,69423],3],[[69424,69456],2],[[69457,69465],2],[[69466,69487],3],[[69488,69509],2],[[69510,69513],2],[[69514,69551],3],[[69552,69572],2],[[69573,69579],2],[[69580,69599],3],[[69600,69622],2],[[69623,69631],3],[[69632,69702],2],[[69703,69709],2],[[69710,69713],3],[[69714,69733],2],[[69734,69743],2],[[69744,69749],2],[[69750,69758],3],[69759,2],[[69760,69818],2],[[69819,69820],2],[69821,3],[[69822,69825],2],[69826,2],[[69827,69836],3],[69837,3],[[69838,69839],3],[[69840,69864],2],[[69865,69871],3],[[69872,69881],2],[[69882,69887],3],[[69888,69940],2],[69941,3],[[69942,69951],2],[[69952,69955],2],[[69956,69958],2],[69959,2],[[69960,69967],3],[[69968,70003],2],[[70004,70005],2],[70006,2],[[70007,70015],3],[[70016,70084],2],[[70085,70088],2],[[70089,70092],2],[70093,2],[[70094,70095],2],[[70096,70105],2],[70106,2],[70107,2],[70108,2],[[70109,70111],2],[70112,3],[[70113,70132],2],[[70133,70143],3],[[70144,70161],2],[70162,3],[[70163,70199],2],[[70200,70205],2],[70206,2],[[70207,70209],2],[[70210,70271],3],[[70272,70278],2],[70279,3],[70280,2],[70281,3],[[70282,70285],2],[70286,3],[[70287,70301],2],[70302,3],[[70303,70312],2],[70313,2],[[70314,70319],3],[[70320,70378],2],[[70379,70383],3],[[70384,70393],2],[[70394,70399],3],[70400,2],[[70401,70403],2],[70404,3],[[70405,70412],2],[[70413,70414],3],[[70415,70416],2],[[70417,70418],3],[[70419,70440],2],[70441,3],[[70442,70448],2],[70449,3],[[70450,70451],2],[70452,3],[[70453,70457],2],[70458,3],[70459,2],[[70460,70468],2],[[70469,70470],3],[[70471,70472],2],[[70473,70474],3],[[70475,70477],2],[[70478,70479],3],[70480,2],[[70481,70486],3],[70487,2],[[70488,70492],3],[[70493,70499],2],[[70500,70501],3],[[70502,70508],2],[[70509,70511],3],[[70512,70516],2],[[70517,70655],3],[[70656,70730],2],[[70731,70735],2],[[70736,70745],2],[70746,2],[70747,2],[70748,3],[70749,2],[70750,2],[70751,2],[[70752,70753],2],[[70754,70783],3],[[70784,70853],2],[70854,2],[70855,2],[[70856,70863],3],[[70864,70873],2],[[70874,71039],3],[[71040,71093],2],[[71094,71095],3],[[71096,71104],2],[[71105,71113],2],[[71114,71127],2],[[71128,71133],2],[[71134,71167],3],[[71168,71232],2],[[71233,71235],2],[71236,2],[[71237,71247],3],[[71248,71257],2],[[71258,71263],3],[[71264,71276],2],[[71277,71295],3],[[71296,71351],2],[71352,2],[71353,2],[[71354,71359],3],[[71360,71369],2],[[71370,71423],3],[[71424,71449],2],[71450,2],[[71451,71452],3],[[71453,71467],2],[[71468,71471],3],[[71472,71481],2],[[71482,71487],2],[[71488,71494],2],[[71495,71679],3],[[71680,71738],2],[71739,2],[[71740,71839],3],[71840,1,"𑣀"],[71841,1,"𑣁"],[71842,1,"𑣂"],[71843,1,"𑣃"],[71844,1,"𑣄"],[71845,1,"𑣅"],[71846,1,"𑣆"],[71847,1,"𑣇"],[71848,1,"𑣈"],[71849,1,"𑣉"],[71850,1,"𑣊"],[71851,1,"𑣋"],[71852,1,"𑣌"],[71853,1,"𑣍"],[71854,1,"𑣎"],[71855,1,"𑣏"],[71856,1,"𑣐"],[71857,1,"𑣑"],[71858,1,"𑣒"],[71859,1,"𑣓"],[71860,1,"𑣔"],[71861,1,"𑣕"],[71862,1,"𑣖"],[71863,1,"𑣗"],[71864,1,"𑣘"],[71865,1,"𑣙"],[71866,1,"𑣚"],[71867,1,"𑣛"],[71868,1,"𑣜"],[71869,1,"𑣝"],[71870,1,"𑣞"],[71871,1,"𑣟"],[[71872,71913],2],[[71914,71922],2],[[71923,71934],3],[71935,2],[[71936,71942],2],[[71943,71944],3],[71945,2],[[71946,71947],3],[[71948,71955],2],[71956,3],[[71957,71958],2],[71959,3],[[71960,71989],2],[71990,3],[[71991,71992],2],[[71993,71994],3],[[71995,72003],2],[[72004,72006],2],[[72007,72015],3],[[72016,72025],2],[[72026,72095],3],[[72096,72103],2],[[72104,72105],3],[[72106,72151],2],[[72152,72153],3],[[72154,72161],2],[72162,2],[[72163,72164],2],[[72165,72191],3],[[72192,72254],2],[[72255,72262],2],[72263,2],[[72264,72271],3],[[72272,72323],2],[[72324,72325],2],[[72326,72345],2],[[72346,72348],2],[72349,2],[[72350,72354],2],[[72355,72367],3],[[72368,72383],2],[[72384,72440],2],[[72441,72447],3],[[72448,72457],2],[[72458,72703],3],[[72704,72712],2],[72713,3],[[72714,72758],2],[72759,3],[[72760,72768],2],[[72769,72773],2],[[72774,72783],3],[[72784,72793],2],[[72794,72812],2],[[72813,72815],3],[[72816,72817],2],[[72818,72847],2],[[72848,72849],3],[[72850,72871],2],[72872,3],[[72873,72886],2],[[72887,72959],3],[[72960,72966],2],[72967,3],[[72968,72969],2],[72970,3],[[72971,73014],2],[[73015,73017],3],[73018,2],[73019,3],[[73020,73021],2],[73022,3],[[73023,73031],2],[[73032,73039],3],[[73040,73049],2],[[73050,73055],3],[[73056,73061],2],[73062,3],[[73063,73064],2],[73065,3],[[73066,73102],2],[73103,3],[[73104,73105],2],[73106,3],[[73107,73112],2],[[73113,73119],3],[[73120,73129],2],[[73130,73439],3],[[73440,73462],2],[[73463,73464],2],[[73465,73471],3],[[73472,73488],2],[73489,3],[[73490,73530],2],[[73531,73533],3],[[73534,73538],2],[[73539,73551],2],[[73552,73561],2],[[73562,73647],3],[73648,2],[[73649,73663],3],[[73664,73713],2],[[73714,73726],3],[73727,2],[[73728,74606],2],[[74607,74648],2],[74649,2],[[74650,74751],3],[[74752,74850],2],[[74851,74862],2],[74863,3],[[74864,74867],2],[74868,2],[[74869,74879],3],[[74880,75075],2],[[75076,77711],3],[[77712,77808],2],[[77809,77810],2],[[77811,77823],3],[[77824,78894],2],[78895,2],[[78896,78904],3],[[78905,78911],3],[[78912,78933],2],[[78934,82943],3],[[82944,83526],2],[[83527,92159],3],[[92160,92728],2],[[92729,92735],3],[[92736,92766],2],[92767,3],[[92768,92777],2],[[92778,92781],3],[[92782,92783],2],[[92784,92862],2],[92863,3],[[92864,92873],2],[[92874,92879],3],[[92880,92909],2],[[92910,92911],3],[[92912,92916],2],[92917,2],[[92918,92927],3],[[92928,92982],2],[[92983,92991],2],[[92992,92995],2],[[92996,92997],2],[[92998,93007],3],[[93008,93017],2],[93018,3],[[93019,93025],2],[93026,3],[[93027,93047],2],[[93048,93052],3],[[93053,93071],2],[[93072,93759],3],[93760,1,"𖹠"],[93761,1,"𖹡"],[93762,1,"𖹢"],[93763,1,"𖹣"],[93764,1,"𖹤"],[93765,1,"𖹥"],[93766,1,"𖹦"],[93767,1,"𖹧"],[93768,1,"𖹨"],[93769,1,"𖹩"],[93770,1,"𖹪"],[93771,1,"𖹫"],[93772,1,"𖹬"],[93773,1,"𖹭"],[93774,1,"𖹮"],[93775,1,"𖹯"],[93776,1,"𖹰"],[93777,1,"𖹱"],[93778,1,"𖹲"],[93779,1,"𖹳"],[93780,1,"𖹴"],[93781,1,"𖹵"],[93782,1,"𖹶"],[93783,1,"𖹷"],[93784,1,"𖹸"],[93785,1,"𖹹"],[93786,1,"𖹺"],[93787,1,"𖹻"],[93788,1,"𖹼"],[93789,1,"𖹽"],[93790,1,"𖹾"],[93791,1,"𖹿"],[[93792,93823],2],[[93824,93850],2],[[93851,93951],3],[[93952,94020],2],[[94021,94026],2],[[94027,94030],3],[94031,2],[[94032,94078],2],[[94079,94087],2],[[94088,94094],3],[[94095,94111],2],[[94112,94175],3],[94176,2],[94177,2],[94178,2],[94179,2],[94180,2],[[94181,94191],3],[[94192,94193],2],[[94194,94207],3],[[94208,100332],2],[[100333,100337],2],[[100338,100343],2],[[100344,100351],3],[[100352,101106],2],[[101107,101589],2],[[101590,101631],3],[[101632,101640],2],[[101641,110575],3],[[110576,110579],2],[110580,3],[[110581,110587],2],[110588,3],[[110589,110590],2],[110591,3],[[110592,110593],2],[[110594,110878],2],[[110879,110882],2],[[110883,110897],3],[110898,2],[[110899,110927],3],[[110928,110930],2],[[110931,110932],3],[110933,2],[[110934,110947],3],[[110948,110951],2],[[110952,110959],3],[[110960,111355],2],[[111356,113663],3],[[113664,113770],2],[[113771,113775],3],[[113776,113788],2],[[113789,113791],3],[[113792,113800],2],[[113801,113807],3],[[113808,113817],2],[[113818,113819],3],[113820,2],[[113821,113822],2],[113823,2],[[113824,113827],7],[[113828,118527],3],[[118528,118573],2],[[118574,118575],3],[[118576,118598],2],[[118599,118607],3],[[118608,118723],2],[[118724,118783],3],[[118784,119029],2],[[119030,119039],3],[[119040,119078],2],[[119079,119080],3],[119081,2],[[119082,119133],2],[119134,1,"𝅗𝅥"],[119135,1,"𝅘𝅥"],[119136,1,"𝅘𝅥𝅮"],[119137,1,"𝅘𝅥𝅯"],[119138,1,"𝅘𝅥𝅰"],[119139,1,"𝅘𝅥𝅱"],[119140,1,"𝅘𝅥𝅲"],[[119141,119154],2],[[119155,119162],3],[[119163,119226],2],[119227,1,"𝆹𝅥"],[119228,1,"𝆺𝅥"],[119229,1,"𝆹𝅥𝅮"],[119230,1,"𝆺𝅥𝅮"],[119231,1,"𝆹𝅥𝅯"],[119232,1,"𝆺𝅥𝅯"],[[119233,119261],2],[[119262,119272],2],[[119273,119274],2],[[119275,119295],3],[[119296,119365],2],[[119366,119487],3],[[119488,119507],2],[[119508,119519],3],[[119520,119539],2],[[119540,119551],3],[[119552,119638],2],[[119639,119647],3],[[119648,119665],2],[[119666,119672],2],[[119673,119807],3],[119808,1,"a"],[119809,1,"b"],[119810,1,"c"],[119811,1,"d"],[119812,1,"e"],[119813,1,"f"],[119814,1,"g"],[119815,1,"h"],[119816,1,"i"],[119817,1,"j"],[119818,1,"k"],[119819,1,"l"],[119820,1,"m"],[119821,1,"n"],[119822,1,"o"],[119823,1,"p"],[119824,1,"q"],[119825,1,"r"],[119826,1,"s"],[119827,1,"t"],[119828,1,"u"],[119829,1,"v"],[119830,1,"w"],[119831,1,"x"],[119832,1,"y"],[119833,1,"z"],[119834,1,"a"],[119835,1,"b"],[119836,1,"c"],[119837,1,"d"],[119838,1,"e"],[119839,1,"f"],[119840,1,"g"],[119841,1,"h"],[119842,1,"i"],[119843,1,"j"],[119844,1,"k"],[119845,1,"l"],[119846,1,"m"],[119847,1,"n"],[119848,1,"o"],[119849,1,"p"],[119850,1,"q"],[119851,1,"r"],[119852,1,"s"],[119853,1,"t"],[119854,1,"u"],[119855,1,"v"],[119856,1,"w"],[119857,1,"x"],[119858,1,"y"],[119859,1,"z"],[119860,1,"a"],[119861,1,"b"],[119862,1,"c"],[119863,1,"d"],[119864,1,"e"],[119865,1,"f"],[119866,1,"g"],[119867,1,"h"],[119868,1,"i"],[119869,1,"j"],[119870,1,"k"],[119871,1,"l"],[119872,1,"m"],[119873,1,"n"],[119874,1,"o"],[119875,1,"p"],[119876,1,"q"],[119877,1,"r"],[119878,1,"s"],[119879,1,"t"],[119880,1,"u"],[119881,1,"v"],[119882,1,"w"],[119883,1,"x"],[119884,1,"y"],[119885,1,"z"],[119886,1,"a"],[119887,1,"b"],[119888,1,"c"],[119889,1,"d"],[119890,1,"e"],[119891,1,"f"],[119892,1,"g"],[119893,3],[119894,1,"i"],[119895,1,"j"],[119896,1,"k"],[119897,1,"l"],[119898,1,"m"],[119899,1,"n"],[119900,1,"o"],[119901,1,"p"],[119902,1,"q"],[119903,1,"r"],[119904,1,"s"],[119905,1,"t"],[119906,1,"u"],[119907,1,"v"],[119908,1,"w"],[119909,1,"x"],[119910,1,"y"],[119911,1,"z"],[119912,1,"a"],[119913,1,"b"],[119914,1,"c"],[119915,1,"d"],[119916,1,"e"],[119917,1,"f"],[119918,1,"g"],[119919,1,"h"],[119920,1,"i"],[119921,1,"j"],[119922,1,"k"],[119923,1,"l"],[119924,1,"m"],[119925,1,"n"],[119926,1,"o"],[119927,1,"p"],[119928,1,"q"],[119929,1,"r"],[119930,1,"s"],[119931,1,"t"],[119932,1,"u"],[119933,1,"v"],[119934,1,"w"],[119935,1,"x"],[119936,1,"y"],[119937,1,"z"],[119938,1,"a"],[119939,1,"b"],[119940,1,"c"],[119941,1,"d"],[119942,1,"e"],[119943,1,"f"],[119944,1,"g"],[119945,1,"h"],[119946,1,"i"],[119947,1,"j"],[119948,1,"k"],[119949,1,"l"],[119950,1,"m"],[119951,1,"n"],[119952,1,"o"],[119953,1,"p"],[119954,1,"q"],[119955,1,"r"],[119956,1,"s"],[119957,1,"t"],[119958,1,"u"],[119959,1,"v"],[119960,1,"w"],[119961,1,"x"],[119962,1,"y"],[119963,1,"z"],[119964,1,"a"],[119965,3],[119966,1,"c"],[119967,1,"d"],[[119968,119969],3],[119970,1,"g"],[[119971,119972],3],[119973,1,"j"],[119974,1,"k"],[[119975,119976],3],[119977,1,"n"],[119978,1,"o"],[119979,1,"p"],[119980,1,"q"],[119981,3],[119982,1,"s"],[119983,1,"t"],[119984,1,"u"],[119985,1,"v"],[119986,1,"w"],[119987,1,"x"],[119988,1,"y"],[119989,1,"z"],[119990,1,"a"],[119991,1,"b"],[119992,1,"c"],[119993,1,"d"],[119994,3],[119995,1,"f"],[119996,3],[119997,1,"h"],[119998,1,"i"],[119999,1,"j"],[120000,1,"k"],[120001,1,"l"],[120002,1,"m"],[120003,1,"n"],[120004,3],[120005,1,"p"],[120006,1,"q"],[120007,1,"r"],[120008,1,"s"],[120009,1,"t"],[120010,1,"u"],[120011,1,"v"],[120012,1,"w"],[120013,1,"x"],[120014,1,"y"],[120015,1,"z"],[120016,1,"a"],[120017,1,"b"],[120018,1,"c"],[120019,1,"d"],[120020,1,"e"],[120021,1,"f"],[120022,1,"g"],[120023,1,"h"],[120024,1,"i"],[120025,1,"j"],[120026,1,"k"],[120027,1,"l"],[120028,1,"m"],[120029,1,"n"],[120030,1,"o"],[120031,1,"p"],[120032,1,"q"],[120033,1,"r"],[120034,1,"s"],[120035,1,"t"],[120036,1,"u"],[120037,1,"v"],[120038,1,"w"],[120039,1,"x"],[120040,1,"y"],[120041,1,"z"],[120042,1,"a"],[120043,1,"b"],[120044,1,"c"],[120045,1,"d"],[120046,1,"e"],[120047,1,"f"],[120048,1,"g"],[120049,1,"h"],[120050,1,"i"],[120051,1,"j"],[120052,1,"k"],[120053,1,"l"],[120054,1,"m"],[120055,1,"n"],[120056,1,"o"],[120057,1,"p"],[120058,1,"q"],[120059,1,"r"],[120060,1,"s"],[120061,1,"t"],[120062,1,"u"],[120063,1,"v"],[120064,1,"w"],[120065,1,"x"],[120066,1,"y"],[120067,1,"z"],[120068,1,"a"],[120069,1,"b"],[120070,3],[120071,1,"d"],[120072,1,"e"],[120073,1,"f"],[120074,1,"g"],[[120075,120076],3],[120077,1,"j"],[120078,1,"k"],[120079,1,"l"],[120080,1,"m"],[120081,1,"n"],[120082,1,"o"],[120083,1,"p"],[120084,1,"q"],[120085,3],[120086,1,"s"],[120087,1,"t"],[120088,1,"u"],[120089,1,"v"],[120090,1,"w"],[120091,1,"x"],[120092,1,"y"],[120093,3],[120094,1,"a"],[120095,1,"b"],[120096,1,"c"],[120097,1,"d"],[120098,1,"e"],[120099,1,"f"],[120100,1,"g"],[120101,1,"h"],[120102,1,"i"],[120103,1,"j"],[120104,1,"k"],[120105,1,"l"],[120106,1,"m"],[120107,1,"n"],[120108,1,"o"],[120109,1,"p"],[120110,1,"q"],[120111,1,"r"],[120112,1,"s"],[120113,1,"t"],[120114,1,"u"],[120115,1,"v"],[120116,1,"w"],[120117,1,"x"],[120118,1,"y"],[120119,1,"z"],[120120,1,"a"],[120121,1,"b"],[120122,3],[120123,1,"d"],[120124,1,"e"],[120125,1,"f"],[120126,1,"g"],[120127,3],[120128,1,"i"],[120129,1,"j"],[120130,1,"k"],[120131,1,"l"],[120132,1,"m"],[120133,3],[120134,1,"o"],[[120135,120137],3],[120138,1,"s"],[120139,1,"t"],[120140,1,"u"],[120141,1,"v"],[120142,1,"w"],[120143,1,"x"],[120144,1,"y"],[120145,3],[120146,1,"a"],[120147,1,"b"],[120148,1,"c"],[120149,1,"d"],[120150,1,"e"],[120151,1,"f"],[120152,1,"g"],[120153,1,"h"],[120154,1,"i"],[120155,1,"j"],[120156,1,"k"],[120157,1,"l"],[120158,1,"m"],[120159,1,"n"],[120160,1,"o"],[120161,1,"p"],[120162,1,"q"],[120163,1,"r"],[120164,1,"s"],[120165,1,"t"],[120166,1,"u"],[120167,1,"v"],[120168,1,"w"],[120169,1,"x"],[120170,1,"y"],[120171,1,"z"],[120172,1,"a"],[120173,1,"b"],[120174,1,"c"],[120175,1,"d"],[120176,1,"e"],[120177,1,"f"],[120178,1,"g"],[120179,1,"h"],[120180,1,"i"],[120181,1,"j"],[120182,1,"k"],[120183,1,"l"],[120184,1,"m"],[120185,1,"n"],[120186,1,"o"],[120187,1,"p"],[120188,1,"q"],[120189,1,"r"],[120190,1,"s"],[120191,1,"t"],[120192,1,"u"],[120193,1,"v"],[120194,1,"w"],[120195,1,"x"],[120196,1,"y"],[120197,1,"z"],[120198,1,"a"],[120199,1,"b"],[120200,1,"c"],[120201,1,"d"],[120202,1,"e"],[120203,1,"f"],[120204,1,"g"],[120205,1,"h"],[120206,1,"i"],[120207,1,"j"],[120208,1,"k"],[120209,1,"l"],[120210,1,"m"],[120211,1,"n"],[120212,1,"o"],[120213,1,"p"],[120214,1,"q"],[120215,1,"r"],[120216,1,"s"],[120217,1,"t"],[120218,1,"u"],[120219,1,"v"],[120220,1,"w"],[120221,1,"x"],[120222,1,"y"],[120223,1,"z"],[120224,1,"a"],[120225,1,"b"],[120226,1,"c"],[120227,1,"d"],[120228,1,"e"],[120229,1,"f"],[120230,1,"g"],[120231,1,"h"],[120232,1,"i"],[120233,1,"j"],[120234,1,"k"],[120235,1,"l"],[120236,1,"m"],[120237,1,"n"],[120238,1,"o"],[120239,1,"p"],[120240,1,"q"],[120241,1,"r"],[120242,1,"s"],[120243,1,"t"],[120244,1,"u"],[120245,1,"v"],[120246,1,"w"],[120247,1,"x"],[120248,1,"y"],[120249,1,"z"],[120250,1,"a"],[120251,1,"b"],[120252,1,"c"],[120253,1,"d"],[120254,1,"e"],[120255,1,"f"],[120256,1,"g"],[120257,1,"h"],[120258,1,"i"],[120259,1,"j"],[120260,1,"k"],[120261,1,"l"],[120262,1,"m"],[120263,1,"n"],[120264,1,"o"],[120265,1,"p"],[120266,1,"q"],[120267,1,"r"],[120268,1,"s"],[120269,1,"t"],[120270,1,"u"],[120271,1,"v"],[120272,1,"w"],[120273,1,"x"],[120274,1,"y"],[120275,1,"z"],[120276,1,"a"],[120277,1,"b"],[120278,1,"c"],[120279,1,"d"],[120280,1,"e"],[120281,1,"f"],[120282,1,"g"],[120283,1,"h"],[120284,1,"i"],[120285,1,"j"],[120286,1,"k"],[120287,1,"l"],[120288,1,"m"],[120289,1,"n"],[120290,1,"o"],[120291,1,"p"],[120292,1,"q"],[120293,1,"r"],[120294,1,"s"],[120295,1,"t"],[120296,1,"u"],[120297,1,"v"],[120298,1,"w"],[120299,1,"x"],[120300,1,"y"],[120301,1,"z"],[120302,1,"a"],[120303,1,"b"],[120304,1,"c"],[120305,1,"d"],[120306,1,"e"],[120307,1,"f"],[120308,1,"g"],[120309,1,"h"],[120310,1,"i"],[120311,1,"j"],[120312,1,"k"],[120313,1,"l"],[120314,1,"m"],[120315,1,"n"],[120316,1,"o"],[120317,1,"p"],[120318,1,"q"],[120319,1,"r"],[120320,1,"s"],[120321,1,"t"],[120322,1,"u"],[120323,1,"v"],[120324,1,"w"],[120325,1,"x"],[120326,1,"y"],[120327,1,"z"],[120328,1,"a"],[120329,1,"b"],[120330,1,"c"],[120331,1,"d"],[120332,1,"e"],[120333,1,"f"],[120334,1,"g"],[120335,1,"h"],[120336,1,"i"],[120337,1,"j"],[120338,1,"k"],[120339,1,"l"],[120340,1,"m"],[120341,1,"n"],[120342,1,"o"],[120343,1,"p"],[120344,1,"q"],[120345,1,"r"],[120346,1,"s"],[120347,1,"t"],[120348,1,"u"],[120349,1,"v"],[120350,1,"w"],[120351,1,"x"],[120352,1,"y"],[120353,1,"z"],[120354,1,"a"],[120355,1,"b"],[120356,1,"c"],[120357,1,"d"],[120358,1,"e"],[120359,1,"f"],[120360,1,"g"],[120361,1,"h"],[120362,1,"i"],[120363,1,"j"],[120364,1,"k"],[120365,1,"l"],[120366,1,"m"],[120367,1,"n"],[120368,1,"o"],[120369,1,"p"],[120370,1,"q"],[120371,1,"r"],[120372,1,"s"],[120373,1,"t"],[120374,1,"u"],[120375,1,"v"],[120376,1,"w"],[120377,1,"x"],[120378,1,"y"],[120379,1,"z"],[120380,1,"a"],[120381,1,"b"],[120382,1,"c"],[120383,1,"d"],[120384,1,"e"],[120385,1,"f"],[120386,1,"g"],[120387,1,"h"],[120388,1,"i"],[120389,1,"j"],[120390,1,"k"],[120391,1,"l"],[120392,1,"m"],[120393,1,"n"],[120394,1,"o"],[120395,1,"p"],[120396,1,"q"],[120397,1,"r"],[120398,1,"s"],[120399,1,"t"],[120400,1,"u"],[120401,1,"v"],[120402,1,"w"],[120403,1,"x"],[120404,1,"y"],[120405,1,"z"],[120406,1,"a"],[120407,1,"b"],[120408,1,"c"],[120409,1,"d"],[120410,1,"e"],[120411,1,"f"],[120412,1,"g"],[120413,1,"h"],[120414,1,"i"],[120415,1,"j"],[120416,1,"k"],[120417,1,"l"],[120418,1,"m"],[120419,1,"n"],[120420,1,"o"],[120421,1,"p"],[120422,1,"q"],[120423,1,"r"],[120424,1,"s"],[120425,1,"t"],[120426,1,"u"],[120427,1,"v"],[120428,1,"w"],[120429,1,"x"],[120430,1,"y"],[120431,1,"z"],[120432,1,"a"],[120433,1,"b"],[120434,1,"c"],[120435,1,"d"],[120436,1,"e"],[120437,1,"f"],[120438,1,"g"],[120439,1,"h"],[120440,1,"i"],[120441,1,"j"],[120442,1,"k"],[120443,1,"l"],[120444,1,"m"],[120445,1,"n"],[120446,1,"o"],[120447,1,"p"],[120448,1,"q"],[120449,1,"r"],[120450,1,"s"],[120451,1,"t"],[120452,1,"u"],[120453,1,"v"],[120454,1,"w"],[120455,1,"x"],[120456,1,"y"],[120457,1,"z"],[120458,1,"a"],[120459,1,"b"],[120460,1,"c"],[120461,1,"d"],[120462,1,"e"],[120463,1,"f"],[120464,1,"g"],[120465,1,"h"],[120466,1,"i"],[120467,1,"j"],[120468,1,"k"],[120469,1,"l"],[120470,1,"m"],[120471,1,"n"],[120472,1,"o"],[120473,1,"p"],[120474,1,"q"],[120475,1,"r"],[120476,1,"s"],[120477,1,"t"],[120478,1,"u"],[120479,1,"v"],[120480,1,"w"],[120481,1,"x"],[120482,1,"y"],[120483,1,"z"],[120484,1,"ı"],[120485,1,"ȷ"],[[120486,120487],3],[120488,1,"α"],[120489,1,"β"],[120490,1,"γ"],[120491,1,"δ"],[120492,1,"ε"],[120493,1,"ζ"],[120494,1,"η"],[120495,1,"θ"],[120496,1,"ι"],[120497,1,"κ"],[120498,1,"λ"],[120499,1,"μ"],[120500,1,"ν"],[120501,1,"ξ"],[120502,1,"ο"],[120503,1,"π"],[120504,1,"ρ"],[120505,1,"θ"],[120506,1,"σ"],[120507,1,"τ"],[120508,1,"υ"],[120509,1,"φ"],[120510,1,"χ"],[120511,1,"ψ"],[120512,1,"ω"],[120513,1,"∇"],[120514,1,"α"],[120515,1,"β"],[120516,1,"γ"],[120517,1,"δ"],[120518,1,"ε"],[120519,1,"ζ"],[120520,1,"η"],[120521,1,"θ"],[120522,1,"ι"],[120523,1,"κ"],[120524,1,"λ"],[120525,1,"μ"],[120526,1,"ν"],[120527,1,"ξ"],[120528,1,"ο"],[120529,1,"π"],[120530,1,"ρ"],[[120531,120532],1,"σ"],[120533,1,"τ"],[120534,1,"υ"],[120535,1,"φ"],[120536,1,"χ"],[120537,1,"ψ"],[120538,1,"ω"],[120539,1,"∂"],[120540,1,"ε"],[120541,1,"θ"],[120542,1,"κ"],[120543,1,"φ"],[120544,1,"ρ"],[120545,1,"π"],[120546,1,"α"],[120547,1,"β"],[120548,1,"γ"],[120549,1,"δ"],[120550,1,"ε"],[120551,1,"ζ"],[120552,1,"η"],[120553,1,"θ"],[120554,1,"ι"],[120555,1,"κ"],[120556,1,"λ"],[120557,1,"μ"],[120558,1,"ν"],[120559,1,"ξ"],[120560,1,"ο"],[120561,1,"π"],[120562,1,"ρ"],[120563,1,"θ"],[120564,1,"σ"],[120565,1,"τ"],[120566,1,"υ"],[120567,1,"φ"],[120568,1,"χ"],[120569,1,"ψ"],[120570,1,"ω"],[120571,1,"∇"],[120572,1,"α"],[120573,1,"β"],[120574,1,"γ"],[120575,1,"δ"],[120576,1,"ε"],[120577,1,"ζ"],[120578,1,"η"],[120579,1,"θ"],[120580,1,"ι"],[120581,1,"κ"],[120582,1,"λ"],[120583,1,"μ"],[120584,1,"ν"],[120585,1,"ξ"],[120586,1,"ο"],[120587,1,"π"],[120588,1,"ρ"],[[120589,120590],1,"σ"],[120591,1,"τ"],[120592,1,"υ"],[120593,1,"φ"],[120594,1,"χ"],[120595,1,"ψ"],[120596,1,"ω"],[120597,1,"∂"],[120598,1,"ε"],[120599,1,"θ"],[120600,1,"κ"],[120601,1,"φ"],[120602,1,"ρ"],[120603,1,"π"],[120604,1,"α"],[120605,1,"β"],[120606,1,"γ"],[120607,1,"δ"],[120608,1,"ε"],[120609,1,"ζ"],[120610,1,"η"],[120611,1,"θ"],[120612,1,"ι"],[120613,1,"κ"],[120614,1,"λ"],[120615,1,"μ"],[120616,1,"ν"],[120617,1,"ξ"],[120618,1,"ο"],[120619,1,"π"],[120620,1,"ρ"],[120621,1,"θ"],[120622,1,"σ"],[120623,1,"τ"],[120624,1,"υ"],[120625,1,"φ"],[120626,1,"χ"],[120627,1,"ψ"],[120628,1,"ω"],[120629,1,"∇"],[120630,1,"α"],[120631,1,"β"],[120632,1,"γ"],[120633,1,"δ"],[120634,1,"ε"],[120635,1,"ζ"],[120636,1,"η"],[120637,1,"θ"],[120638,1,"ι"],[120639,1,"κ"],[120640,1,"λ"],[120641,1,"μ"],[120642,1,"ν"],[120643,1,"ξ"],[120644,1,"ο"],[120645,1,"π"],[120646,1,"ρ"],[[120647,120648],1,"σ"],[120649,1,"τ"],[120650,1,"υ"],[120651,1,"φ"],[120652,1,"χ"],[120653,1,"ψ"],[120654,1,"ω"],[120655,1,"∂"],[120656,1,"ε"],[120657,1,"θ"],[120658,1,"κ"],[120659,1,"φ"],[120660,1,"ρ"],[120661,1,"π"],[120662,1,"α"],[120663,1,"β"],[120664,1,"γ"],[120665,1,"δ"],[120666,1,"ε"],[120667,1,"ζ"],[120668,1,"η"],[120669,1,"θ"],[120670,1,"ι"],[120671,1,"κ"],[120672,1,"λ"],[120673,1,"μ"],[120674,1,"ν"],[120675,1,"ξ"],[120676,1,"ο"],[120677,1,"π"],[120678,1,"ρ"],[120679,1,"θ"],[120680,1,"σ"],[120681,1,"τ"],[120682,1,"υ"],[120683,1,"φ"],[120684,1,"χ"],[120685,1,"ψ"],[120686,1,"ω"],[120687,1,"∇"],[120688,1,"α"],[120689,1,"β"],[120690,1,"γ"],[120691,1,"δ"],[120692,1,"ε"],[120693,1,"ζ"],[120694,1,"η"],[120695,1,"θ"],[120696,1,"ι"],[120697,1,"κ"],[120698,1,"λ"],[120699,1,"μ"],[120700,1,"ν"],[120701,1,"ξ"],[120702,1,"ο"],[120703,1,"π"],[120704,1,"ρ"],[[120705,120706],1,"σ"],[120707,1,"τ"],[120708,1,"υ"],[120709,1,"φ"],[120710,1,"χ"],[120711,1,"ψ"],[120712,1,"ω"],[120713,1,"∂"],[120714,1,"ε"],[120715,1,"θ"],[120716,1,"κ"],[120717,1,"φ"],[120718,1,"ρ"],[120719,1,"π"],[120720,1,"α"],[120721,1,"β"],[120722,1,"γ"],[120723,1,"δ"],[120724,1,"ε"],[120725,1,"ζ"],[120726,1,"η"],[120727,1,"θ"],[120728,1,"ι"],[120729,1,"κ"],[120730,1,"λ"],[120731,1,"μ"],[120732,1,"ν"],[120733,1,"ξ"],[120734,1,"ο"],[120735,1,"π"],[120736,1,"ρ"],[120737,1,"θ"],[120738,1,"σ"],[120739,1,"τ"],[120740,1,"υ"],[120741,1,"φ"],[120742,1,"χ"],[120743,1,"ψ"],[120744,1,"ω"],[120745,1,"∇"],[120746,1,"α"],[120747,1,"β"],[120748,1,"γ"],[120749,1,"δ"],[120750,1,"ε"],[120751,1,"ζ"],[120752,1,"η"],[120753,1,"θ"],[120754,1,"ι"],[120755,1,"κ"],[120756,1,"λ"],[120757,1,"μ"],[120758,1,"ν"],[120759,1,"ξ"],[120760,1,"ο"],[120761,1,"π"],[120762,1,"ρ"],[[120763,120764],1,"σ"],[120765,1,"τ"],[120766,1,"υ"],[120767,1,"φ"],[120768,1,"χ"],[120769,1,"ψ"],[120770,1,"ω"],[120771,1,"∂"],[120772,1,"ε"],[120773,1,"θ"],[120774,1,"κ"],[120775,1,"φ"],[120776,1,"ρ"],[120777,1,"π"],[[120778,120779],1,"ϝ"],[[120780,120781],3],[120782,1,"0"],[120783,1,"1"],[120784,1,"2"],[120785,1,"3"],[120786,1,"4"],[120787,1,"5"],[120788,1,"6"],[120789,1,"7"],[120790,1,"8"],[120791,1,"9"],[120792,1,"0"],[120793,1,"1"],[120794,1,"2"],[120795,1,"3"],[120796,1,"4"],[120797,1,"5"],[120798,1,"6"],[120799,1,"7"],[120800,1,"8"],[120801,1,"9"],[120802,1,"0"],[120803,1,"1"],[120804,1,"2"],[120805,1,"3"],[120806,1,"4"],[120807,1,"5"],[120808,1,"6"],[120809,1,"7"],[120810,1,"8"],[120811,1,"9"],[120812,1,"0"],[120813,1,"1"],[120814,1,"2"],[120815,1,"3"],[120816,1,"4"],[120817,1,"5"],[120818,1,"6"],[120819,1,"7"],[120820,1,"8"],[120821,1,"9"],[120822,1,"0"],[120823,1,"1"],[120824,1,"2"],[120825,1,"3"],[120826,1,"4"],[120827,1,"5"],[120828,1,"6"],[120829,1,"7"],[120830,1,"8"],[120831,1,"9"],[[120832,121343],2],[[121344,121398],2],[[121399,121402],2],[[121403,121452],2],[[121453,121460],2],[121461,2],[[121462,121475],2],[121476,2],[[121477,121483],2],[[121484,121498],3],[[121499,121503],2],[121504,3],[[121505,121519],2],[[121520,122623],3],[[122624,122654],2],[[122655,122660],3],[[122661,122666],2],[[122667,122879],3],[[122880,122886],2],[122887,3],[[122888,122904],2],[[122905,122906],3],[[122907,122913],2],[122914,3],[[122915,122916],2],[122917,3],[[122918,122922],2],[[122923,122927],3],[122928,1,"а"],[122929,1,"б"],[122930,1,"в"],[122931,1,"г"],[122932,1,"д"],[122933,1,"е"],[122934,1,"ж"],[122935,1,"з"],[122936,1,"и"],[122937,1,"к"],[122938,1,"л"],[122939,1,"м"],[122940,1,"о"],[122941,1,"п"],[122942,1,"р"],[122943,1,"с"],[122944,1,"т"],[122945,1,"у"],[122946,1,"ф"],[122947,1,"х"],[122948,1,"ц"],[122949,1,"ч"],[122950,1,"ш"],[122951,1,"ы"],[122952,1,"э"],[122953,1,"ю"],[122954,1,"ꚉ"],[122955,1,"ә"],[122956,1,"і"],[122957,1,"ј"],[122958,1,"ө"],[122959,1,"ү"],[122960,1,"ӏ"],[122961,1,"а"],[122962,1,"б"],[122963,1,"в"],[122964,1,"г"],[122965,1,"д"],[122966,1,"е"],[122967,1,"ж"],[122968,1,"з"],[122969,1,"и"],[122970,1,"к"],[122971,1,"л"],[122972,1,"о"],[122973,1,"п"],[122974,1,"с"],[122975,1,"у"],[122976,1,"ф"],[122977,1,"х"],[122978,1,"ц"],[122979,1,"ч"],[122980,1,"ш"],[122981,1,"ъ"],[122982,1,"ы"],[122983,1,"ґ"],[122984,1,"і"],[122985,1,"ѕ"],[122986,1,"џ"],[122987,1,"ҫ"],[122988,1,"ꙑ"],[122989,1,"ұ"],[[122990,123022],3],[123023,2],[[123024,123135],3],[[123136,123180],2],[[123181,123183],3],[[123184,123197],2],[[123198,123199],3],[[123200,123209],2],[[123210,123213],3],[123214,2],[123215,2],[[123216,123535],3],[[123536,123566],2],[[123567,123583],3],[[123584,123641],2],[[123642,123646],3],[123647,2],[[123648,124111],3],[[124112,124153],2],[[124154,124895],3],[[124896,124902],2],[124903,3],[[124904,124907],2],[124908,3],[[124909,124910],2],[124911,3],[[124912,124926],2],[124927,3],[[124928,125124],2],[[125125,125126],3],[[125127,125135],2],[[125136,125142],2],[[125143,125183],3],[125184,1,"𞤢"],[125185,1,"𞤣"],[125186,1,"𞤤"],[125187,1,"𞤥"],[125188,1,"𞤦"],[125189,1,"𞤧"],[125190,1,"𞤨"],[125191,1,"𞤩"],[125192,1,"𞤪"],[125193,1,"𞤫"],[125194,1,"𞤬"],[125195,1,"𞤭"],[125196,1,"𞤮"],[125197,1,"𞤯"],[125198,1,"𞤰"],[125199,1,"𞤱"],[125200,1,"𞤲"],[125201,1,"𞤳"],[125202,1,"𞤴"],[125203,1,"𞤵"],[125204,1,"𞤶"],[125205,1,"𞤷"],[125206,1,"𞤸"],[125207,1,"𞤹"],[125208,1,"𞤺"],[125209,1,"𞤻"],[125210,1,"𞤼"],[125211,1,"𞤽"],[125212,1,"𞤾"],[125213,1,"𞤿"],[125214,1,"𞥀"],[125215,1,"𞥁"],[125216,1,"𞥂"],[125217,1,"𞥃"],[[125218,125258],2],[125259,2],[[125260,125263],3],[[125264,125273],2],[[125274,125277],3],[[125278,125279],2],[[125280,126064],3],[[126065,126132],2],[[126133,126208],3],[[126209,126269],2],[[126270,126463],3],[126464,1,"ا"],[126465,1,"ب"],[126466,1,"ج"],[126467,1,"د"],[126468,3],[126469,1,"و"],[126470,1,"ز"],[126471,1,"ح"],[126472,1,"ط"],[126473,1,"ي"],[126474,1,"ك"],[126475,1,"ل"],[126476,1,"م"],[126477,1,"ن"],[126478,1,"س"],[126479,1,"ع"],[126480,1,"ف"],[126481,1,"ص"],[126482,1,"ق"],[126483,1,"ر"],[126484,1,"ش"],[126485,1,"ت"],[126486,1,"ث"],[126487,1,"خ"],[126488,1,"ذ"],[126489,1,"ض"],[126490,1,"ظ"],[126491,1,"غ"],[126492,1,"ٮ"],[126493,1,"ں"],[126494,1,"ڡ"],[126495,1,"ٯ"],[126496,3],[126497,1,"ب"],[126498,1,"ج"],[126499,3],[126500,1,"ه"],[[126501,126502],3],[126503,1,"ح"],[126504,3],[126505,1,"ي"],[126506,1,"ك"],[126507,1,"ل"],[126508,1,"م"],[126509,1,"ن"],[126510,1,"س"],[126511,1,"ع"],[126512,1,"ف"],[126513,1,"ص"],[126514,1,"ق"],[126515,3],[126516,1,"ش"],[126517,1,"ت"],[126518,1,"ث"],[126519,1,"خ"],[126520,3],[126521,1,"ض"],[126522,3],[126523,1,"غ"],[[126524,126529],3],[126530,1,"ج"],[[126531,126534],3],[126535,1,"ح"],[126536,3],[126537,1,"ي"],[126538,3],[126539,1,"ل"],[126540,3],[126541,1,"ن"],[126542,1,"س"],[126543,1,"ع"],[126544,3],[126545,1,"ص"],[126546,1,"ق"],[126547,3],[126548,1,"ش"],[[126549,126550],3],[126551,1,"خ"],[126552,3],[126553,1,"ض"],[126554,3],[126555,1,"غ"],[126556,3],[126557,1,"ں"],[126558,3],[126559,1,"ٯ"],[126560,3],[126561,1,"ب"],[126562,1,"ج"],[126563,3],[126564,1,"ه"],[[126565,126566],3],[126567,1,"ح"],[126568,1,"ط"],[126569,1,"ي"],[126570,1,"ك"],[126571,3],[126572,1,"م"],[126573,1,"ن"],[126574,1,"س"],[126575,1,"ع"],[126576,1,"ف"],[126577,1,"ص"],[126578,1,"ق"],[126579,3],[126580,1,"ش"],[126581,1,"ت"],[126582,1,"ث"],[126583,1,"خ"],[126584,3],[126585,1,"ض"],[126586,1,"ظ"],[126587,1,"غ"],[126588,1,"ٮ"],[126589,3],[126590,1,"ڡ"],[126591,3],[126592,1,"ا"],[126593,1,"ب"],[126594,1,"ج"],[126595,1,"د"],[126596,1,"ه"],[126597,1,"و"],[126598,1,"ز"],[126599,1,"ح"],[126600,1,"ط"],[126601,1,"ي"],[126602,3],[126603,1,"ل"],[126604,1,"م"],[126605,1,"ن"],[126606,1,"س"],[126607,1,"ع"],[126608,1,"ف"],[126609,1,"ص"],[126610,1,"ق"],[126611,1,"ر"],[126612,1,"ش"],[126613,1,"ت"],[126614,1,"ث"],[126615,1,"خ"],[126616,1,"ذ"],[126617,1,"ض"],[126618,1,"ظ"],[126619,1,"غ"],[[126620,126624],3],[126625,1,"ب"],[126626,1,"ج"],[126627,1,"د"],[126628,3],[126629,1,"و"],[126630,1,"ز"],[126631,1,"ح"],[126632,1,"ط"],[126633,1,"ي"],[126634,3],[126635,1,"ل"],[126636,1,"م"],[126637,1,"ن"],[126638,1,"س"],[126639,1,"ع"],[126640,1,"ف"],[126641,1,"ص"],[126642,1,"ق"],[126643,1,"ر"],[126644,1,"ش"],[126645,1,"ت"],[126646,1,"ث"],[126647,1,"خ"],[126648,1,"ذ"],[126649,1,"ض"],[126650,1,"ظ"],[126651,1,"غ"],[[126652,126703],3],[[126704,126705],2],[[126706,126975],3],[[126976,127019],2],[[127020,127023],3],[[127024,127123],2],[[127124,127135],3],[[127136,127150],2],[[127151,127152],3],[[127153,127166],2],[127167,2],[127168,3],[[127169,127183],2],[127184,3],[[127185,127199],2],[[127200,127221],2],[[127222,127231],3],[127232,3],[127233,5,"0,"],[127234,5,"1,"],[127235,5,"2,"],[127236,5,"3,"],[127237,5,"4,"],[127238,5,"5,"],[127239,5,"6,"],[127240,5,"7,"],[127241,5,"8,"],[127242,5,"9,"],[[127243,127244],2],[[127245,127247],2],[127248,5,"(a)"],[127249,5,"(b)"],[127250,5,"(c)"],[127251,5,"(d)"],[127252,5,"(e)"],[127253,5,"(f)"],[127254,5,"(g)"],[127255,5,"(h)"],[127256,5,"(i)"],[127257,5,"(j)"],[127258,5,"(k)"],[127259,5,"(l)"],[127260,5,"(m)"],[127261,5,"(n)"],[127262,5,"(o)"],[127263,5,"(p)"],[127264,5,"(q)"],[127265,5,"(r)"],[127266,5,"(s)"],[127267,5,"(t)"],[127268,5,"(u)"],[127269,5,"(v)"],[127270,5,"(w)"],[127271,5,"(x)"],[127272,5,"(y)"],[127273,5,"(z)"],[127274,1,"〔s〕"],[127275,1,"c"],[127276,1,"r"],[127277,1,"cd"],[127278,1,"wz"],[127279,2],[127280,1,"a"],[127281,1,"b"],[127282,1,"c"],[127283,1,"d"],[127284,1,"e"],[127285,1,"f"],[127286,1,"g"],[127287,1,"h"],[127288,1,"i"],[127289,1,"j"],[127290,1,"k"],[127291,1,"l"],[127292,1,"m"],[127293,1,"n"],[127294,1,"o"],[127295,1,"p"],[127296,1,"q"],[127297,1,"r"],[127298,1,"s"],[127299,1,"t"],[127300,1,"u"],[127301,1,"v"],[127302,1,"w"],[127303,1,"x"],[127304,1,"y"],[127305,1,"z"],[127306,1,"hv"],[127307,1,"mv"],[127308,1,"sd"],[127309,1,"ss"],[127310,1,"ppv"],[127311,1,"wc"],[[127312,127318],2],[127319,2],[[127320,127326],2],[127327,2],[[127328,127337],2],[127338,1,"mc"],[127339,1,"md"],[127340,1,"mr"],[[127341,127343],2],[[127344,127352],2],[127353,2],[127354,2],[[127355,127356],2],[[127357,127358],2],[127359,2],[[127360,127369],2],[[127370,127373],2],[[127374,127375],2],[127376,1,"dj"],[[127377,127386],2],[[127387,127404],2],[127405,2],[[127406,127461],3],[[127462,127487],2],[127488,1,"ほか"],[127489,1,"ココ"],[127490,1,"サ"],[[127491,127503],3],[127504,1,"手"],[127505,1,"字"],[127506,1,"双"],[127507,1,"デ"],[127508,1,"二"],[127509,1,"多"],[127510,1,"解"],[127511,1,"天"],[127512,1,"交"],[127513,1,"映"],[127514,1,"無"],[127515,1,"料"],[127516,1,"前"],[127517,1,"後"],[127518,1,"再"],[127519,1,"新"],[127520,1,"初"],[127521,1,"終"],[127522,1,"生"],[127523,1,"販"],[127524,1,"声"],[127525,1,"吹"],[127526,1,"演"],[127527,1,"投"],[127528,1,"捕"],[127529,1,"一"],[127530,1,"三"],[127531,1,"遊"],[127532,1,"左"],[127533,1,"中"],[127534,1,"右"],[127535,1,"指"],[127536,1,"走"],[127537,1,"打"],[127538,1,"禁"],[127539,1,"空"],[127540,1,"合"],[127541,1,"満"],[127542,1,"有"],[127543,1,"月"],[127544,1,"申"],[127545,1,"割"],[127546,1,"営"],[127547,1,"配"],[[127548,127551],3],[127552,1,"〔本〕"],[127553,1,"〔三〕"],[127554,1,"〔二〕"],[127555,1,"〔安〕"],[127556,1,"〔点〕"],[127557,1,"〔打〕"],[127558,1,"〔盗〕"],[127559,1,"〔勝〕"],[127560,1,"〔敗〕"],[[127561,127567],3],[127568,1,"得"],[127569,1,"可"],[[127570,127583],3],[[127584,127589],2],[[127590,127743],3],[[127744,127776],2],[[127777,127788],2],[[127789,127791],2],[[127792,127797],2],[127798,2],[[127799,127868],2],[127869,2],[[127870,127871],2],[[127872,127891],2],[[127892,127903],2],[[127904,127940],2],[127941,2],[[127942,127946],2],[[127947,127950],2],[[127951,127955],2],[[127956,127967],2],[[127968,127984],2],[[127985,127991],2],[[127992,127999],2],[[128000,128062],2],[128063,2],[128064,2],[128065,2],[[128066,128247],2],[128248,2],[[128249,128252],2],[[128253,128254],2],[128255,2],[[128256,128317],2],[[128318,128319],2],[[128320,128323],2],[[128324,128330],2],[[128331,128335],2],[[128336,128359],2],[[128360,128377],2],[128378,2],[[128379,128419],2],[128420,2],[[128421,128506],2],[[128507,128511],2],[128512,2],[[128513,128528],2],[128529,2],[[128530,128532],2],[128533,2],[128534,2],[128535,2],[128536,2],[128537,2],[128538,2],[128539,2],[[128540,128542],2],[128543,2],[[128544,128549],2],[[128550,128551],2],[[128552,128555],2],[128556,2],[128557,2],[[128558,128559],2],[[128560,128563],2],[128564,2],[[128565,128576],2],[[128577,128578],2],[[128579,128580],2],[[128581,128591],2],[[128592,128639],2],[[128640,128709],2],[[128710,128719],2],[128720,2],[[128721,128722],2],[[128723,128724],2],[128725,2],[[128726,128727],2],[[128728,128731],3],[128732,2],[[128733,128735],2],[[128736,128748],2],[[128749,128751],3],[[128752,128755],2],[[128756,128758],2],[[128759,128760],2],[128761,2],[128762,2],[[128763,128764],2],[[128765,128767],3],[[128768,128883],2],[[128884,128886],2],[[128887,128890],3],[[128891,128895],2],[[128896,128980],2],[[128981,128984],2],[128985,2],[[128986,128991],3],[[128992,129003],2],[[129004,129007],3],[129008,2],[[129009,129023],3],[[129024,129035],2],[[129036,129039],3],[[129040,129095],2],[[129096,129103],3],[[129104,129113],2],[[129114,129119],3],[[129120,129159],2],[[129160,129167],3],[[129168,129197],2],[[129198,129199],3],[[129200,129201],2],[[129202,129279],3],[[129280,129291],2],[129292,2],[[129293,129295],2],[[129296,129304],2],[[129305,129310],2],[129311,2],[[129312,129319],2],[[129320,129327],2],[129328,2],[[129329,129330],2],[[129331,129342],2],[129343,2],[[129344,129355],2],[129356,2],[[129357,129359],2],[[129360,129374],2],[[129375,129387],2],[[129388,129392],2],[129393,2],[129394,2],[[129395,129398],2],[[129399,129400],2],[129401,2],[129402,2],[129403,2],[[129404,129407],2],[[129408,129412],2],[[129413,129425],2],[[129426,129431],2],[[129432,129442],2],[[129443,129444],2],[[129445,129450],2],[[129451,129453],2],[[129454,129455],2],[[129456,129465],2],[[129466,129471],2],[129472,2],[[129473,129474],2],[[129475,129482],2],[129483,2],[129484,2],[[129485,129487],2],[[129488,129510],2],[[129511,129535],2],[[129536,129619],2],[[129620,129631],3],[[129632,129645],2],[[129646,129647],3],[[129648,129651],2],[129652,2],[[129653,129655],2],[[129656,129658],2],[[129659,129660],2],[[129661,129663],3],[[129664,129666],2],[[129667,129670],2],[[129671,129672],2],[[129673,129679],3],[[129680,129685],2],[[129686,129704],2],[[129705,129708],2],[[129709,129711],2],[[129712,129718],2],[[129719,129722],2],[[129723,129725],2],[129726,3],[129727,2],[[129728,129730],2],[[129731,129733],2],[[129734,129741],3],[[129742,129743],2],[[129744,129750],2],[[129751,129753],2],[[129754,129755],2],[[129756,129759],3],[[129760,129767],2],[129768,2],[[129769,129775],3],[[129776,129782],2],[[129783,129784],2],[[129785,129791],3],[[129792,129938],2],[129939,3],[[129940,129994],2],[[129995,130031],3],[130032,1,"0"],[130033,1,"1"],[130034,1,"2"],[130035,1,"3"],[130036,1,"4"],[130037,1,"5"],[130038,1,"6"],[130039,1,"7"],[130040,1,"8"],[130041,1,"9"],[[130042,131069],3],[[131070,131071],3],[[131072,173782],2],[[173783,173789],2],[[173790,173791],2],[[173792,173823],3],[[173824,177972],2],[[177973,177976],2],[177977,2],[[177978,177983],3],[[177984,178205],2],[[178206,178207],3],[[178208,183969],2],[[183970,183983],3],[[183984,191456],2],[[191457,191471],3],[[191472,192093],2],[[192094,194559],3],[194560,1,"丽"],[194561,1,"丸"],[194562,1,"乁"],[194563,1,"𠄢"],[194564,1,"你"],[194565,1,"侮"],[194566,1,"侻"],[194567,1,"倂"],[194568,1,"偺"],[194569,1,"備"],[194570,1,"僧"],[194571,1,"像"],[194572,1,"㒞"],[194573,1,"𠘺"],[194574,1,"免"],[194575,1,"兔"],[194576,1,"兤"],[194577,1,"具"],[194578,1,"𠔜"],[194579,1,"㒹"],[194580,1,"內"],[194581,1,"再"],[194582,1,"𠕋"],[194583,1,"冗"],[194584,1,"冤"],[194585,1,"仌"],[194586,1,"冬"],[194587,1,"况"],[194588,1,"𩇟"],[194589,1,"凵"],[194590,1,"刃"],[194591,1,"㓟"],[194592,1,"刻"],[194593,1,"剆"],[194594,1,"割"],[194595,1,"剷"],[194596,1,"㔕"],[194597,1,"勇"],[194598,1,"勉"],[194599,1,"勤"],[194600,1,"勺"],[194601,1,"包"],[194602,1,"匆"],[194603,1,"北"],[194604,1,"卉"],[194605,1,"卑"],[194606,1,"博"],[194607,1,"即"],[194608,1,"卽"],[[194609,194611],1,"卿"],[194612,1,"𠨬"],[194613,1,"灰"],[194614,1,"及"],[194615,1,"叟"],[194616,1,"𠭣"],[194617,1,"叫"],[194618,1,"叱"],[194619,1,"吆"],[194620,1,"咞"],[194621,1,"吸"],[194622,1,"呈"],[194623,1,"周"],[194624,1,"咢"],[194625,1,"哶"],[194626,1,"唐"],[194627,1,"啓"],[194628,1,"啣"],[[194629,194630],1,"善"],[194631,1,"喙"],[194632,1,"喫"],[194633,1,"喳"],[194634,1,"嗂"],[194635,1,"圖"],[194636,1,"嘆"],[194637,1,"圗"],[194638,1,"噑"],[194639,1,"噴"],[194640,1,"切"],[194641,1,"壮"],[194642,1,"城"],[194643,1,"埴"],[194644,1,"堍"],[194645,1,"型"],[194646,1,"堲"],[194647,1,"報"],[194648,1,"墬"],[194649,1,"𡓤"],[194650,1,"売"],[194651,1,"壷"],[194652,1,"夆"],[194653,1,"多"],[194654,1,"夢"],[194655,1,"奢"],[194656,1,"𡚨"],[194657,1,"𡛪"],[194658,1,"姬"],[194659,1,"娛"],[194660,1,"娧"],[194661,1,"姘"],[194662,1,"婦"],[194663,1,"㛮"],[194664,3],[194665,1,"嬈"],[[194666,194667],1,"嬾"],[194668,1,"𡧈"],[194669,1,"寃"],[194670,1,"寘"],[194671,1,"寧"],[194672,1,"寳"],[194673,1,"𡬘"],[194674,1,"寿"],[194675,1,"将"],[194676,3],[194677,1,"尢"],[194678,1,"㞁"],[194679,1,"屠"],[194680,1,"屮"],[194681,1,"峀"],[194682,1,"岍"],[194683,1,"𡷤"],[194684,1,"嵃"],[194685,1,"𡷦"],[194686,1,"嵮"],[194687,1,"嵫"],[194688,1,"嵼"],[194689,1,"巡"],[194690,1,"巢"],[194691,1,"㠯"],[194692,1,"巽"],[194693,1,"帨"],[194694,1,"帽"],[194695,1,"幩"],[194696,1,"㡢"],[194697,1,"𢆃"],[194698,1,"㡼"],[194699,1,"庰"],[194700,1,"庳"],[194701,1,"庶"],[194702,1,"廊"],[194703,1,"𪎒"],[194704,1,"廾"],[[194705,194706],1,"𢌱"],[194707,1,"舁"],[[194708,194709],1,"弢"],[194710,1,"㣇"],[194711,1,"𣊸"],[194712,1,"𦇚"],[194713,1,"形"],[194714,1,"彫"],[194715,1,"㣣"],[194716,1,"徚"],[194717,1,"忍"],[194718,1,"志"],[194719,1,"忹"],[194720,1,"悁"],[194721,1,"㤺"],[194722,1,"㤜"],[194723,1,"悔"],[194724,1,"𢛔"],[194725,1,"惇"],[194726,1,"慈"],[194727,1,"慌"],[194728,1,"慎"],[194729,1,"慌"],[194730,1,"慺"],[194731,1,"憎"],[194732,1,"憲"],[194733,1,"憤"],[194734,1,"憯"],[194735,1,"懞"],[194736,1,"懲"],[194737,1,"懶"],[194738,1,"成"],[194739,1,"戛"],[194740,1,"扝"],[194741,1,"抱"],[194742,1,"拔"],[194743,1,"捐"],[194744,1,"𢬌"],[194745,1,"挽"],[194746,1,"拼"],[194747,1,"捨"],[194748,1,"掃"],[194749,1,"揤"],[194750,1,"𢯱"],[194751,1,"搢"],[194752,1,"揅"],[194753,1,"掩"],[194754,1,"㨮"],[194755,1,"摩"],[194756,1,"摾"],[194757,1,"撝"],[194758,1,"摷"],[194759,1,"㩬"],[194760,1,"敏"],[194761,1,"敬"],[194762,1,"𣀊"],[194763,1,"旣"],[194764,1,"書"],[194765,1,"晉"],[194766,1,"㬙"],[194767,1,"暑"],[194768,1,"㬈"],[194769,1,"㫤"],[194770,1,"冒"],[194771,1,"冕"],[194772,1,"最"],[194773,1,"暜"],[194774,1,"肭"],[194775,1,"䏙"],[194776,1,"朗"],[194777,1,"望"],[194778,1,"朡"],[194779,1,"杞"],[194780,1,"杓"],[194781,1,"𣏃"],[194782,1,"㭉"],[194783,1,"柺"],[194784,1,"枅"],[194785,1,"桒"],[194786,1,"梅"],[194787,1,"𣑭"],[194788,1,"梎"],[194789,1,"栟"],[194790,1,"椔"],[194791,1,"㮝"],[194792,1,"楂"],[194793,1,"榣"],[194794,1,"槪"],[194795,1,"檨"],[194796,1,"𣚣"],[194797,1,"櫛"],[194798,1,"㰘"],[194799,1,"次"],[194800,1,"𣢧"],[194801,1,"歔"],[194802,1,"㱎"],[194803,1,"歲"],[194804,1,"殟"],[194805,1,"殺"],[194806,1,"殻"],[194807,1,"𣪍"],[194808,1,"𡴋"],[194809,1,"𣫺"],[194810,1,"汎"],[194811,1,"𣲼"],[194812,1,"沿"],[194813,1,"泍"],[194814,1,"汧"],[194815,1,"洖"],[194816,1,"派"],[194817,1,"海"],[194818,1,"流"],[194819,1,"浩"],[194820,1,"浸"],[194821,1,"涅"],[194822,1,"𣴞"],[194823,1,"洴"],[194824,1,"港"],[194825,1,"湮"],[194826,1,"㴳"],[194827,1,"滋"],[194828,1,"滇"],[194829,1,"𣻑"],[194830,1,"淹"],[194831,1,"潮"],[194832,1,"𣽞"],[194833,1,"𣾎"],[194834,1,"濆"],[194835,1,"瀹"],[194836,1,"瀞"],[194837,1,"瀛"],[194838,1,"㶖"],[194839,1,"灊"],[194840,1,"災"],[194841,1,"灷"],[194842,1,"炭"],[194843,1,"𠔥"],[194844,1,"煅"],[194845,1,"𤉣"],[194846,1,"熜"],[194847,3],[194848,1,"爨"],[194849,1,"爵"],[194850,1,"牐"],[194851,1,"𤘈"],[194852,1,"犀"],[194853,1,"犕"],[194854,1,"𤜵"],[194855,1,"𤠔"],[194856,1,"獺"],[194857,1,"王"],[194858,1,"㺬"],[194859,1,"玥"],[[194860,194861],1,"㺸"],[194862,1,"瑇"],[194863,1,"瑜"],[194864,1,"瑱"],[194865,1,"璅"],[194866,1,"瓊"],[194867,1,"㼛"],[194868,1,"甤"],[194869,1,"𤰶"],[194870,1,"甾"],[194871,1,"𤲒"],[194872,1,"異"],[194873,1,"𢆟"],[194874,1,"瘐"],[194875,1,"𤾡"],[194876,1,"𤾸"],[194877,1,"𥁄"],[194878,1,"㿼"],[194879,1,"䀈"],[194880,1,"直"],[194881,1,"𥃳"],[194882,1,"𥃲"],[194883,1,"𥄙"],[194884,1,"𥄳"],[194885,1,"眞"],[[194886,194887],1,"真"],[194888,1,"睊"],[194889,1,"䀹"],[194890,1,"瞋"],[194891,1,"䁆"],[194892,1,"䂖"],[194893,1,"𥐝"],[194894,1,"硎"],[194895,1,"碌"],[194896,1,"磌"],[194897,1,"䃣"],[194898,1,"𥘦"],[194899,1,"祖"],[194900,1,"𥚚"],[194901,1,"𥛅"],[194902,1,"福"],[194903,1,"秫"],[194904,1,"䄯"],[194905,1,"穀"],[194906,1,"穊"],[194907,1,"穏"],[194908,1,"𥥼"],[[194909,194910],1,"𥪧"],[194911,3],[194912,1,"䈂"],[194913,1,"𥮫"],[194914,1,"篆"],[194915,1,"築"],[194916,1,"䈧"],[194917,1,"𥲀"],[194918,1,"糒"],[194919,1,"䊠"],[194920,1,"糨"],[194921,1,"糣"],[194922,1,"紀"],[194923,1,"𥾆"],[194924,1,"絣"],[194925,1,"䌁"],[194926,1,"緇"],[194927,1,"縂"],[194928,1,"繅"],[194929,1,"䌴"],[194930,1,"𦈨"],[194931,1,"𦉇"],[194932,1,"䍙"],[194933,1,"𦋙"],[194934,1,"罺"],[194935,1,"𦌾"],[194936,1,"羕"],[194937,1,"翺"],[194938,1,"者"],[194939,1,"𦓚"],[194940,1,"𦔣"],[194941,1,"聠"],[194942,1,"𦖨"],[194943,1,"聰"],[194944,1,"𣍟"],[194945,1,"䏕"],[194946,1,"育"],[194947,1,"脃"],[194948,1,"䐋"],[194949,1,"脾"],[194950,1,"媵"],[194951,1,"𦞧"],[194952,1,"𦞵"],[194953,1,"𣎓"],[194954,1,"𣎜"],[194955,1,"舁"],[194956,1,"舄"],[194957,1,"辞"],[194958,1,"䑫"],[194959,1,"芑"],[194960,1,"芋"],[194961,1,"芝"],[194962,1,"劳"],[194963,1,"花"],[194964,1,"芳"],[194965,1,"芽"],[194966,1,"苦"],[194967,1,"𦬼"],[194968,1,"若"],[194969,1,"茝"],[194970,1,"荣"],[194971,1,"莭"],[194972,1,"茣"],[194973,1,"莽"],[194974,1,"菧"],[194975,1,"著"],[194976,1,"荓"],[194977,1,"菊"],[194978,1,"菌"],[194979,1,"菜"],[194980,1,"𦰶"],[194981,1,"𦵫"],[194982,1,"𦳕"],[194983,1,"䔫"],[194984,1,"蓱"],[194985,1,"蓳"],[194986,1,"蔖"],[194987,1,"𧏊"],[194988,1,"蕤"],[194989,1,"𦼬"],[194990,1,"䕝"],[194991,1,"䕡"],[194992,1,"𦾱"],[194993,1,"𧃒"],[194994,1,"䕫"],[194995,1,"虐"],[194996,1,"虜"],[194997,1,"虧"],[194998,1,"虩"],[194999,1,"蚩"],[195000,1,"蚈"],[195001,1,"蜎"],[195002,1,"蛢"],[195003,1,"蝹"],[195004,1,"蜨"],[195005,1,"蝫"],[195006,1,"螆"],[195007,3],[195008,1,"蟡"],[195009,1,"蠁"],[195010,1,"䗹"],[195011,1,"衠"],[195012,1,"衣"],[195013,1,"𧙧"],[195014,1,"裗"],[195015,1,"裞"],[195016,1,"䘵"],[195017,1,"裺"],[195018,1,"㒻"],[195019,1,"𧢮"],[195020,1,"𧥦"],[195021,1,"䚾"],[195022,1,"䛇"],[195023,1,"誠"],[195024,1,"諭"],[195025,1,"變"],[195026,1,"豕"],[195027,1,"𧲨"],[195028,1,"貫"],[195029,1,"賁"],[195030,1,"贛"],[195031,1,"起"],[195032,1,"𧼯"],[195033,1,"𠠄"],[195034,1,"跋"],[195035,1,"趼"],[195036,1,"跰"],[195037,1,"𠣞"],[195038,1,"軔"],[195039,1,"輸"],[195040,1,"𨗒"],[195041,1,"𨗭"],[195042,1,"邔"],[195043,1,"郱"],[195044,1,"鄑"],[195045,1,"𨜮"],[195046,1,"鄛"],[195047,1,"鈸"],[195048,1,"鋗"],[195049,1,"鋘"],[195050,1,"鉼"],[195051,1,"鏹"],[195052,1,"鐕"],[195053,1,"𨯺"],[195054,1,"開"],[195055,1,"䦕"],[195056,1,"閷"],[195057,1,"𨵷"],[195058,1,"䧦"],[195059,1,"雃"],[195060,1,"嶲"],[195061,1,"霣"],[195062,1,"𩅅"],[195063,1,"𩈚"],[195064,1,"䩮"],[195065,1,"䩶"],[195066,1,"韠"],[195067,1,"𩐊"],[195068,1,"䪲"],[195069,1,"𩒖"],[[195070,195071],1,"頋"],[195072,1,"頩"],[195073,1,"𩖶"],[195074,1,"飢"],[195075,1,"䬳"],[195076,1,"餩"],[195077,1,"馧"],[195078,1,"駂"],[195079,1,"駾"],[195080,1,"䯎"],[195081,1,"𩬰"],[195082,1,"鬒"],[195083,1,"鱀"],[195084,1,"鳽"],[195085,1,"䳎"],[195086,1,"䳭"],[195087,1,"鵧"],[195088,1,"𪃎"],[195089,1,"䳸"],[195090,1,"𪄅"],[195091,1,"𪈎"],[195092,1,"𪊑"],[195093,1,"麻"],[195094,1,"䵖"],[195095,1,"黹"],[195096,1,"黾"],[195097,1,"鼅"],[195098,1,"鼏"],[195099,1,"鼖"],[195100,1,"鼻"],[195101,1,"𪘀"],[[195102,196605],3],[[196606,196607],3],[[196608,201546],2],[[201547,201551],3],[[201552,205743],2],[[205744,262141],3],[[262142,262143],3],[[262144,327677],3],[[327678,327679],3],[[327680,393213],3],[[393214,393215],3],[[393216,458749],3],[[458750,458751],3],[[458752,524285],3],[[524286,524287],3],[[524288,589821],3],[[589822,589823],3],[[589824,655357],3],[[655358,655359],3],[[655360,720893],3],[[720894,720895],3],[[720896,786429],3],[[786430,786431],3],[[786432,851965],3],[[851966,851967],3],[[851968,917501],3],[[917502,917503],3],[917504,3],[917505,3],[[917506,917535],3],[[917536,917631],3],[[917632,917759],3],[[917760,917999],7],[[918000,983037],3],[[983038,983039],3],[[983040,1048573],3],[[1048574,1048575],3],[[1048576,1114109],3],[[1114110,1114111],3]]')},40052:Wt=>{"use strict";Wt.exports=JSON.parse('{"866":"IBM866","unicode-1-1-utf-8":"UTF-8","unicode11utf8":"UTF-8","unicode20utf8":"UTF-8","utf-8":"UTF-8","utf8":"UTF-8","x-unicode20utf8":"UTF-8","cp866":"IBM866","csibm866":"IBM866","ibm866":"IBM866","csisolatin2":"ISO-8859-2","iso-8859-2":"ISO-8859-2","iso-ir-101":"ISO-8859-2","iso8859-2":"ISO-8859-2","iso88592":"ISO-8859-2","iso_8859-2":"ISO-8859-2","iso_8859-2:1987":"ISO-8859-2","l2":"ISO-8859-2","latin2":"ISO-8859-2","csisolatin3":"ISO-8859-3","iso-8859-3":"ISO-8859-3","iso-ir-109":"ISO-8859-3","iso8859-3":"ISO-8859-3","iso88593":"ISO-8859-3","iso_8859-3":"ISO-8859-3","iso_8859-3:1988":"ISO-8859-3","l3":"ISO-8859-3","latin3":"ISO-8859-3","csisolatin4":"ISO-8859-4","iso-8859-4":"ISO-8859-4","iso-ir-110":"ISO-8859-4","iso8859-4":"ISO-8859-4","iso88594":"ISO-8859-4","iso_8859-4":"ISO-8859-4","iso_8859-4:1988":"ISO-8859-4","l4":"ISO-8859-4","latin4":"ISO-8859-4","csisolatincyrillic":"ISO-8859-5","cyrillic":"ISO-8859-5","iso-8859-5":"ISO-8859-5","iso-ir-144":"ISO-8859-5","iso8859-5":"ISO-8859-5","iso88595":"ISO-8859-5","iso_8859-5":"ISO-8859-5","iso_8859-5:1988":"ISO-8859-5","arabic":"ISO-8859-6","asmo-708":"ISO-8859-6","csiso88596e":"ISO-8859-6","csiso88596i":"ISO-8859-6","csisolatinarabic":"ISO-8859-6","ecma-114":"ISO-8859-6","iso-8859-6":"ISO-8859-6","iso-8859-6-e":"ISO-8859-6","iso-8859-6-i":"ISO-8859-6","iso-ir-127":"ISO-8859-6","iso8859-6":"ISO-8859-6","iso88596":"ISO-8859-6","iso_8859-6":"ISO-8859-6","iso_8859-6:1987":"ISO-8859-6","csisolatingreek":"ISO-8859-7","ecma-118":"ISO-8859-7","elot_928":"ISO-8859-7","greek":"ISO-8859-7","greek8":"ISO-8859-7","iso-8859-7":"ISO-8859-7","iso-ir-126":"ISO-8859-7","iso8859-7":"ISO-8859-7","iso88597":"ISO-8859-7","iso_8859-7":"ISO-8859-7","iso_8859-7:1987":"ISO-8859-7","sun_eu_greek":"ISO-8859-7","csiso88598e":"ISO-8859-8","csisolatinhebrew":"ISO-8859-8","hebrew":"ISO-8859-8","iso-8859-8":"ISO-8859-8","iso-8859-8-e":"ISO-8859-8","iso-ir-138":"ISO-8859-8","iso8859-8":"ISO-8859-8","iso88598":"ISO-8859-8","iso_8859-8":"ISO-8859-8","iso_8859-8:1988":"ISO-8859-8","visual":"ISO-8859-8","csisolatin6":"ISO-8859-10","iso-8859-10":"ISO-8859-10","iso-ir-157":"ISO-8859-10","iso8859-10":"ISO-8859-10","iso885910":"ISO-8859-10","l6":"ISO-8859-10","latin6":"ISO-8859-10","iso-8859-13":"ISO-8859-13","iso8859-13":"ISO-8859-13","iso885913":"ISO-8859-13","iso-8859-14":"ISO-8859-14","iso8859-14":"ISO-8859-14","iso885914":"ISO-8859-14","csisolatin9":"ISO-8859-15","iso-8859-15":"ISO-8859-15","iso8859-15":"ISO-8859-15","iso885915":"ISO-8859-15","iso_8859-15":"ISO-8859-15","l9":"ISO-8859-15","iso-8859-16":"ISO-8859-16","cskoi8r":"KOI8-R","koi":"KOI8-R","koi8":"KOI8-R","koi8-r":"KOI8-R","koi8_r":"KOI8-R","koi8-ru":"KOI8-U","koi8-u":"KOI8-U","csmacintosh":"macintosh","mac":"macintosh","macintosh":"macintosh","x-mac-roman":"macintosh","dos-874":"windows-874","iso-8859-11":"windows-874","iso8859-11":"windows-874","iso885911":"windows-874","tis-620":"windows-874","windows-874":"windows-874","cp1250":"windows-1250","windows-1250":"windows-1250","x-cp1250":"windows-1250","cp1251":"windows-1251","windows-1251":"windows-1251","x-cp1251":"windows-1251","ansi_x3.4-1968":"windows-1252","ascii":"windows-1252","cp1252":"windows-1252","cp819":"windows-1252","csisolatin1":"windows-1252","ibm819":"windows-1252","iso-8859-1":"windows-1252","iso-ir-100":"windows-1252","iso8859-1":"windows-1252","iso88591":"windows-1252","iso_8859-1":"windows-1252","iso_8859-1:1987":"windows-1252","l1":"windows-1252","latin1":"windows-1252","us-ascii":"windows-1252","windows-1252":"windows-1252","x-cp1252":"windows-1252","cp1253":"windows-1253","windows-1253":"windows-1253","x-cp1253":"windows-1253","cp1254":"windows-1254","csisolatin5":"windows-1254","iso-8859-9":"windows-1254","iso-ir-148":"windows-1254","iso8859-9":"windows-1254","iso88599":"windows-1254","iso_8859-9":"windows-1254","iso_8859-9:1989":"windows-1254","l5":"windows-1254","latin5":"windows-1254","windows-1254":"windows-1254","x-cp1254":"windows-1254","cp1255":"windows-1255","windows-1255":"windows-1255","x-cp1255":"windows-1255","cp1256":"windows-1256","windows-1256":"windows-1256","x-cp1256":"windows-1256","cp1257":"windows-1257","windows-1257":"windows-1257","x-cp1257":"windows-1257","cp1258":"windows-1258","windows-1258":"windows-1258","x-cp1258":"windows-1258","chinese":"GBK","csgb2312":"GBK","csiso58gb231280":"GBK","gb2312":"GBK","gb_2312":"GBK","gb_2312-80":"GBK","gbk":"GBK","iso-ir-58":"GBK","x-gbk":"GBK","gb18030":"gb18030","big5":"Big5","big5-hkscs":"Big5","cn-big5":"Big5","csbig5":"Big5","x-x-big5":"Big5","cseucpkdfmtjapanese":"EUC-JP","euc-jp":"EUC-JP","x-euc-jp":"EUC-JP","csshiftjis":"Shift_JIS","ms932":"Shift_JIS","ms_kanji":"Shift_JIS","shift-jis":"Shift_JIS","shift_jis":"Shift_JIS","sjis":"Shift_JIS","windows-31j":"Shift_JIS","x-sjis":"Shift_JIS","cseuckr":"EUC-KR","csksc56011987":"EUC-KR","euc-kr":"EUC-KR","iso-ir-149":"EUC-KR","korean":"EUC-KR","ks_c_5601-1987":"EUC-KR","ks_c_5601-1989":"EUC-KR","ksc5601":"EUC-KR","ksc_5601":"EUC-KR","windows-949":"EUC-KR","unicodefffe":"UTF-16BE","utf-16be":"UTF-16BE","csunicode":"UTF-16LE","iso-10646-ucs-2":"UTF-16LE","ucs-2":"UTF-16LE","unicode":"UTF-16LE","unicodefeff":"UTF-16LE","utf-16":"UTF-16LE","utf-16le":"UTF-16LE","x-user-defined":"x-user-defined"}')},33485:Wt=>{"use strict";Wt.exports=JSON.parse('["UTF-8","IBM866","ISO-8859-2","ISO-8859-3","ISO-8859-4","ISO-8859-5","ISO-8859-6","ISO-8859-7","ISO-8859-8","ISO-8859-10","ISO-8859-13","ISO-8859-14","ISO-8859-15","ISO-8859-16","KOI8-R","KOI8-U","macintosh","windows-874","windows-1250","windows-1251","windows-1252","windows-1253","windows-1254","windows-1255","windows-1256","windows-1257","windows-1258","GBK","gb18030","Big5","EUC-JP","Shift_JIS","EUC-KR","UTF-16BE","UTF-16LE","x-user-defined"]')}};var __webpack_module_cache__={};function __nccwpck_require__(Wt){var Pt=__webpack_module_cache__[Wt];if(Pt!==undefined){return Pt.exports}var en=__webpack_module_cache__[Wt]={id:Wt,loaded:false,exports:{}};var tn=true;try{__webpack_modules__[Wt].call(en.exports,en,en.exports,__nccwpck_require__);tn=false}finally{if(tn)delete __webpack_module_cache__[Wt]}en.loaded=true;return en.exports}__nccwpck_require__.m=__webpack_modules__;(()=>{__nccwpck_require__.d=(Wt,Pt)=>{for(var en in Pt){if(__nccwpck_require__.o(Pt,en)&&!__nccwpck_require__.o(Wt,en)){Object.defineProperty(Wt,en,{enumerable:true,get:Pt[en]})}}}})();(()=>{__nccwpck_require__.f={};__nccwpck_require__.e=Wt=>Promise.all(Object.keys(__nccwpck_require__.f).reduce(((Pt,en)=>{__nccwpck_require__.f[en](Wt,Pt);return Pt}),[]))})();(()=>{__nccwpck_require__.u=Wt=>""+Wt+".index.js"})();(()=>{__nccwpck_require__.o=(Wt,Pt)=>Object.prototype.hasOwnProperty.call(Wt,Pt)})();(()=>{__nccwpck_require__.r=Wt=>{if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(Wt,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(Wt,"__esModule",{value:true})}})();(()=>{__nccwpck_require__.nmd=Wt=>{Wt.paths=[];if(!Wt.children)Wt.children=[];return Wt}})();if(typeof __nccwpck_require__!=="undefined")__nccwpck_require__.ab=__dirname+"/";(()=>{var Wt={792:1};var installChunk=Pt=>{var en=Pt.modules,tn=Pt.ids,nn=Pt.runtime;for(var an in en){if(__nccwpck_require__.o(en,an)){__nccwpck_require__.m[an]=en[an]}}if(nn)nn(__nccwpck_require__);for(var rn=0;rn{if(!Wt[Pt]){if(true){installChunk(require("./"+__nccwpck_require__.u(Pt)))}else Wt[Pt]=1}}})();var __webpack_exports__={};(()=>{"use strict";__nccwpck_require__.r(__webpack_exports__);__nccwpck_require__.d(__webpack_exports__,{default:()=>Km});var Wt={};__nccwpck_require__.r(Wt);__nccwpck_require__.d(Wt,{Any:()=>any_Any,Array:()=>array_Array,AsyncIterator:()=>async_iterator_AsyncIterator,Awaited:()=>awaited_Awaited,BigInt:()=>bigint_BigInt,Boolean:()=>boolean_Boolean,Capitalize:()=>capitalize_Capitalize,Composite:()=>composite_Composite,Const:()=>const_Const,Constructor:()=>constructor_Constructor,ConstructorParameters:()=>constructor_parameters_ConstructorParameters,Date:()=>date_Date,Deref:()=>deref_deref_Deref,Enum:()=>enum_Enum,Exclude:()=>exclude_Exclude,Extends:()=>extends_Extends,Extract:()=>extract_Extract,Function:()=>function_Function,Index:()=>indexed_Index,InstanceType:()=>instance_type_InstanceType,Integer:()=>integer_Integer,Intersect:()=>intersect_Intersect,Iterator:()=>iterator_Iterator,KeyOf:()=>keyof_KeyOf,Literal:()=>literal_Literal,Lowercase:()=>lowercase_Lowercase,Mapped:()=>mapped_Mapped,Never:()=>never_Never,Not:()=>not_Not,Null:()=>null_Null,Number:()=>number_Number,Object:()=>vn,Omit:()=>omit_Omit,Optional:()=>optional_Optional,Parameters:()=>parameters_Parameters,Partial:()=>partial_Partial,Pick:()=>pick_Pick,Promise:()=>promise_Promise,Readonly:()=>readonly_Readonly,ReadonlyOptional:()=>readonly_optional_ReadonlyOptional,Record:()=>record_Record,Recursive:()=>recursive_Recursive,Ref:()=>ref_Ref,RegExp:()=>regexp_RegExp,Required:()=>required_Required,Rest:()=>rest_Rest,ReturnType:()=>return_type_ReturnType,Strict:()=>strict_Strict,String:()=>string_String,Symbol:()=>symbol_Symbol,TemplateLiteral:()=>template_literal_TemplateLiteral,Transform:()=>transform_Transform,Tuple:()=>tuple_Tuple,Uint8Array:()=>uint8array_Uint8Array,Uncapitalize:()=>uncapitalize_Uncapitalize,Undefined:()=>undefined_Undefined,Union:()=>union_Union,Unknown:()=>unknown_Unknown,Unsafe:()=>unsafe_Unsafe,Uppercase:()=>uppercase_Uppercase,Void:()=>void_Void});var Pt={};__nccwpck_require__.r(Pt);__nccwpck_require__.d(Pt,{xX:()=>APIConnectionError,qA:()=>APIConnectionTimeoutError,LG:()=>APIError,cH:()=>APIUserAbortError,v3:()=>AuthenticationError,v7:()=>BadRequestError,fK:()=>ConflictError,pf:()=>ContentFilterFinishReasonError,PO:()=>InternalServerError,k5:()=>LengthFinishReasonError,m_:()=>NotFoundError,vc:()=>error_OpenAIError,Ll:()=>PermissionDeniedError,OE:()=>RateLimitError,Is:()=>UnprocessableEntityError});var en={};__nccwpck_require__.r(en);__nccwpck_require__.d(en,{decode:()=>Hd,encode:()=>Xd,format:()=>format,parse:()=>_d});var tn={};__nccwpck_require__.r(tn);__nccwpck_require__.d(tn,{Any:()=>qd,Cc:()=>$d,Cf:()=>eu,P:()=>Kd,S:()=>Pd,Z:()=>tu});var nn={};__nccwpck_require__.r(nn);__nccwpck_require__.d(nn,{arrayReplaceAt:()=>arrayReplaceAt,assign:()=>utils_assign,escapeHtml:()=>escapeHtml,escapeRE:()=>escapeRE,fromCodePoint:()=>utils_fromCodePoint,has:()=>has,isMdAsciiPunct:()=>isMdAsciiPunct,isPunctChar:()=>isPunctChar,isSpace:()=>isSpace,isString:()=>isString,isValidEntityCode:()=>isValidEntityCode,isWhiteSpace:()=>isWhiteSpace,lib:()=>Cu,normalizeReference:()=>normalizeReference,unescapeAll:()=>unescapeAll,unescapeMd:()=>unescapeMd});var an={};__nccwpck_require__.r(an);__nccwpck_require__.d(an,{parseLinkDestination:()=>parseLinkDestination,parseLinkLabel:()=>parseLinkLabel,parseLinkTitle:()=>parseLinkTitle});var rn={};__nccwpck_require__.r(rn);__nccwpck_require__.d(rn,{Any:()=>any_any_Any,Array:()=>array_array_Array,AsyncIterator:()=>async_iterator_async_iterator_AsyncIterator,Awaited:()=>awaited_awaited_Awaited,BigInt:()=>bigint_bigint_BigInt,Boolean:()=>boolean_boolean_Boolean,Capitalize:()=>intrinsic_capitalize_Capitalize,Composite:()=>composite_composite_Composite,Const:()=>const_const_Const,Constructor:()=>constructor_constructor_Constructor,ConstructorParameters:()=>constructor_parameters_constructor_parameters_ConstructorParameters,Date:()=>date_date_Date,Deref:()=>type_deref_deref_Deref,Enum:()=>enum_enum_Enum,Exclude:()=>exclude_exclude_Exclude,Extends:()=>extends_extends_Extends,Extract:()=>extract_extract_Extract,Function:()=>function_function_Function,Index:()=>indexed_indexed_Index,InstanceType:()=>instance_type_instance_type_InstanceType,Integer:()=>integer_integer_Integer,Intersect:()=>intersect_intersect_Intersect,Iterator:()=>iterator_iterator_Iterator,KeyOf:()=>keyof_keyof_KeyOf,Literal:()=>literal_literal_Literal,Lowercase:()=>intrinsic_lowercase_Lowercase,Mapped:()=>mapped_mapped_Mapped,Never:()=>never_never_Never,Not:()=>not_not_Not,Null:()=>null_null_Null,Number:()=>number_number_Number,Object:()=>dm,Omit:()=>omit_omit_Omit,Optional:()=>optional_optional_Optional,Parameters:()=>parameters_parameters_Parameters,Partial:()=>partial_partial_Partial,Pick:()=>pick_pick_Pick,Promise:()=>promise_promise_Promise,Readonly:()=>readonly_readonly_Readonly,ReadonlyOptional:()=>readonly_optional_readonly_optional_ReadonlyOptional,Record:()=>record_record_Record,Recursive:()=>recursive_recursive_Recursive,Ref:()=>ref_ref_Ref,RegExp:()=>regexp_regexp_RegExp,Required:()=>required_required_Required,Rest:()=>rest_rest_Rest,ReturnType:()=>return_type_return_type_ReturnType,Strict:()=>strict_strict_Strict,String:()=>string_string_String,Symbol:()=>symbol_symbol_Symbol,TemplateLiteral:()=>template_literal_template_literal_TemplateLiteral,Transform:()=>transform_transform_Transform,Tuple:()=>tuple_tuple_Tuple,Uint8Array:()=>uint8array_uint8array_Uint8Array,Uncapitalize:()=>intrinsic_uncapitalize_Uncapitalize,Undefined:()=>undefined_undefined_Undefined,Union:()=>union_union_Union,Unknown:()=>unknown_unknown_Unknown,Unsafe:()=>unsafe_unsafe_Unsafe,Uppercase:()=>intrinsic_uppercase_Uppercase,Void:()=>void_void_Void});var In=__nccwpck_require__(37484);function guard_IsAsyncIterator(Wt){return guard_IsObject(Wt)&&Symbol.asyncIterator in Wt}function guard_IsIterator(Wt){return guard_IsObject(Wt)&&Symbol.iterator in Wt}function guard_IsStandardObject(Wt){return guard_IsObject(Wt)&&!guard_IsArray(Wt)&&guard_IsFunction(Wt.constructor)&&Wt.constructor.name==="Object"}function IsInstanceObject(Wt){return guard_IsObject(Wt)&&!guard_IsArray(Wt)&&guard_IsFunction(Wt.constructor)&&Wt.constructor.name!=="Object"}function guard_IsPromise(Wt){return Wt instanceof Promise}function guard_IsDate(Wt){return Wt instanceof Date&&Number.isFinite(Wt.getTime())}function IsMap(Wt){return Wt instanceof globalThis.Map}function IsSet(Wt){return Wt instanceof globalThis.Set}function IsRegExp(Wt){return Wt instanceof globalThis.RegExp}function guard_IsTypedArray(Wt){return ArrayBuffer.isView(Wt)}function IsInt8Array(Wt){return Wt instanceof globalThis.Int8Array}function guard_IsUint8Array(Wt){return Wt instanceof globalThis.Uint8Array}function IsUint8ClampedArray(Wt){return Wt instanceof globalThis.Uint8ClampedArray}function IsInt16Array(Wt){return Wt instanceof globalThis.Int16Array}function IsUint16Array(Wt){return Wt instanceof globalThis.Uint16Array}function IsInt32Array(Wt){return Wt instanceof globalThis.Int32Array}function IsUint32Array(Wt){return Wt instanceof globalThis.Uint32Array}function IsFloat32Array(Wt){return Wt instanceof globalThis.Float32Array}function IsFloat64Array(Wt){return Wt instanceof globalThis.Float64Array}function IsBigInt64Array(Wt){return Wt instanceof globalThis.BigInt64Array}function IsBigUint64Array(Wt){return Wt instanceof globalThis.BigUint64Array}function guard_HasPropertyKey(Wt,Pt){return Pt in Wt}function guard_IsObject(Wt){return Wt!==null&&typeof Wt==="object"}function guard_IsArray(Wt){return Array.isArray(Wt)&&!ArrayBuffer.isView(Wt)}function guard_IsUndefined(Wt){return Wt===undefined}function guard_IsNull(Wt){return Wt===null}function guard_IsBoolean(Wt){return typeof Wt==="boolean"}function guard_IsNumber(Wt){return typeof Wt==="number"}function guard_IsInteger(Wt){return guard_IsNumber(Wt)&&Number.isInteger(Wt)}function guard_IsBigInt(Wt){return typeof Wt==="bigint"}function guard_IsString(Wt){return typeof Wt==="string"}function guard_IsFunction(Wt){return typeof Wt==="function"}function guard_IsSymbol(Wt){return typeof Wt==="symbol"}function guard_IsValueType(Wt){return guard_IsBigInt(Wt)||guard_IsBoolean(Wt)||guard_IsNull(Wt)||guard_IsNumber(Wt)||guard_IsString(Wt)||guard_IsSymbol(Wt)||guard_IsUndefined(Wt)}var sn;(function(Wt){Wt.ExactOptionalPropertyTypes=false;Wt.AllowArrayObject=false;Wt.AllowNaN=false;Wt.AllowNullVoid=false;function IsExactOptionalProperty(Pt,en){return Wt.ExactOptionalPropertyTypes?en in Pt:Pt[en]!==undefined}Wt.IsExactOptionalProperty=IsExactOptionalProperty;function IsObjectLike(Pt){const en=guard_IsObject(Pt);return Wt.AllowArrayObject?en:en&&!guard_IsArray(Pt)}Wt.IsObjectLike=IsObjectLike;function IsRecordLike(Wt){return IsObjectLike(Wt)&&!(Wt instanceof Date)&&!(Wt instanceof Uint8Array)}Wt.IsRecordLike=IsRecordLike;function IsNumberLike(Pt){const en=guard_IsNumber(Pt);return Wt.AllowNaN?en:en&&Number.isFinite(Pt)}Wt.IsNumberLike=IsNumberLike;function IsVoidLike(Pt){const en=guard_IsUndefined(Pt);return Wt.AllowNullVoid?en||Pt===null:en}Wt.IsVoidLike=IsVoidLike})(sn||(sn={}));const on=new Map;function Entries(){return new Map(on)}function Clear(){return on.clear()}function Delete(Wt){return on.delete(Wt)}function Has(Wt){return on.has(Wt)}function format_Set(Wt,Pt){on.set(Wt,Pt)}function Get(Wt){return on.get(Wt)}const cn=new Map;function type_Entries(){return new Map(cn)}function type_Clear(){return cn.clear()}function type_Delete(Wt){return cn.delete(Wt)}function type_Has(Wt){return cn.has(Wt)}function type_Set(Wt,Pt){cn.set(Wt,Pt)}function type_Get(Wt){return cn.get(Wt)}const dn=Symbol.for("TypeBox.Transform");const un=Symbol.for("TypeBox.Readonly");const pn=Symbol.for("TypeBox.Optional");const mn=Symbol.for("TypeBox.Hint");const bn=Symbol.for("TypeBox.Kind");function unsafe_Unsafe(Wt={}){return{...Wt,[bn]:Wt[bn]??"Unsafe"}}class TypeBoxError extends Error{constructor(Wt){super(Wt)}}class TypeSystemDuplicateTypeKind extends TypeBoxError{constructor(Wt){super(`Duplicate type kind '${Wt}' detected`)}}class TypeSystemDuplicateFormat extends TypeBoxError{constructor(Wt){super(`Duplicate string format '${Wt}' detected`)}}var Gn;(function(Wt){function Type(Wt,Pt){if(type_Has(Wt))throw new TypeSystemDuplicateTypeKind(Wt);type_Set(Wt,Pt);return(Pt={})=>unsafe_Unsafe({...Pt,[bn]:Wt})}Wt.Type=Type;function Format(Wt,Pt){if(Has(Wt))throw new TypeSystemDuplicateFormat(Wt);format_Set(Wt,Pt);return Wt}Wt.Format=Format})(Gn||(Gn={}));function MappedKey(Wt){return{[Kind]:"MappedKey",keys:Wt}}function MappedResult(Wt){return{[bn]:"MappedResult",properties:Wt}}function value_IsAsyncIterator(Wt){return value_IsObject(Wt)&&!value_IsArray(Wt)&&!value_IsUint8Array(Wt)&&Symbol.asyncIterator in Wt}function value_IsArray(Wt){return Array.isArray(Wt)}function value_IsBigInt(Wt){return typeof Wt==="bigint"}function value_IsBoolean(Wt){return typeof Wt==="boolean"}function value_IsDate(Wt){return Wt instanceof globalThis.Date}function value_IsFunction(Wt){return typeof Wt==="function"}function value_IsIterator(Wt){return value_IsObject(Wt)&&!value_IsArray(Wt)&&!value_IsUint8Array(Wt)&&Symbol.iterator in Wt}function value_IsNull(Wt){return Wt===null}function value_IsNumber(Wt){return typeof Wt==="number"}function value_IsObject(Wt){return typeof Wt==="object"&&Wt!==null}function value_IsRegExp(Wt){return Wt instanceof globalThis.RegExp}function value_IsString(Wt){return typeof Wt==="string"}function value_IsSymbol(Wt){return typeof Wt==="symbol"}function value_IsUint8Array(Wt){return Wt instanceof globalThis.Uint8Array}function value_IsUndefined(Wt){return Wt===undefined}function ArrayType(Wt){return Wt.map((Wt=>Visit(Wt)))}function DateType(Wt){return new Date(Wt.getTime())}function Uint8ArrayType(Wt){return new Uint8Array(Wt)}function RegExpType(Wt){return new RegExp(Wt.source,Wt.flags)}function ObjectType(Wt){const Pt=Object.getOwnPropertyNames(Wt).reduce(((Pt,en)=>({...Pt,[en]:Visit(Wt[en])})),{});const en=Object.getOwnPropertySymbols(Wt).reduce(((Pt,en)=>({...Pt,[en]:Visit(Wt[en])})),{});return{...Pt,...en}}function Visit(Wt){return value_IsArray(Wt)?ArrayType(Wt):value_IsDate(Wt)?DateType(Wt):value_IsUint8Array(Wt)?Uint8ArrayType(Wt):value_IsRegExp(Wt)?RegExpType(Wt):value_IsObject(Wt)?ObjectType(Wt):Wt}function value_Clone(Wt){return Visit(Wt)}function CloneRest(Wt){return Wt.map((Wt=>CloneType(Wt)))}function CloneType(Wt,Pt={}){return{...value_Clone(Wt),...Pt}}function DiscardKey(Wt,Pt){const{[Pt]:en,...tn}=Wt;return tn}function Discard(Wt,Pt){return Pt.reduce(((Wt,Pt)=>DiscardKey(Wt,Pt)),Wt)}function array_Array(Wt,Pt={}){return{...Pt,[bn]:"Array",type:"array",items:CloneType(Wt)}}function async_iterator_AsyncIterator(Wt,Pt={}){return{...Pt,[bn]:"AsyncIterator",type:"AsyncIterator",items:CloneType(Wt)}}function constructor_Constructor(Wt,Pt,en){return{...en,[bn]:"Constructor",type:"Constructor",parameters:CloneRest(Wt),returns:CloneType(Pt)}}function function_Function(Wt,Pt,en){return{...en,[bn]:"Function",type:"Function",parameters:CloneRest(Wt),returns:CloneType(Pt)}}function never_Never(Wt={}){return{...Wt,[bn]:"Never",not:{}}}class TypeGuardUnknownTypeError extends TypeBoxError{}const hn=["Any","Array","AsyncIterator","BigInt","Boolean","Constructor","Date","Enum","Function","Integer","Intersect","Iterator","Literal","MappedKey","MappedResult","Not","Null","Number","Object","Promise","Record","Ref","RegExp","String","Symbol","TemplateLiteral","This","Tuple","Undefined","Union","Uint8Array","Unknown","Void"];function IsPattern(Wt){try{new RegExp(Wt);return true}catch{return false}}function IsControlCharacterFree(Wt){if(!value_IsString(Wt))return false;for(let Pt=0;Pt=7&&en<=13||en===27||en===127){return false}}return true}function IsAdditionalProperties(Wt){return IsOptionalBoolean(Wt)||type_IsSchema(Wt)}function IsOptionalBigInt(Wt){return value_IsUndefined(Wt)||value_IsBigInt(Wt)}function IsOptionalNumber(Wt){return value_IsUndefined(Wt)||value_IsNumber(Wt)}function IsOptionalBoolean(Wt){return value_IsUndefined(Wt)||value_IsBoolean(Wt)}function IsOptionalString(Wt){return value_IsUndefined(Wt)||value_IsString(Wt)}function IsOptionalPattern(Wt){return value_IsUndefined(Wt)||value_IsString(Wt)&&IsControlCharacterFree(Wt)&&IsPattern(Wt)}function IsOptionalFormat(Wt){return value_IsUndefined(Wt)||value_IsString(Wt)&&IsControlCharacterFree(Wt)}function IsOptionalSchema(Wt){return value_IsUndefined(Wt)||type_IsSchema(Wt)}function IsReadonly(Wt){return value_IsObject(Wt)&&Wt[un]==="Readonly"}function IsOptional(Wt){return value_IsObject(Wt)&&Wt[pn]==="Optional"}function IsAny(Wt){return IsKindOf(Wt,"Any")&&IsOptionalString(Wt.$id)}function type_IsArray(Wt){return IsKindOf(Wt,"Array")&&Wt.type==="array"&&IsOptionalString(Wt.$id)&&type_IsSchema(Wt.items)&&IsOptionalNumber(Wt.minItems)&&IsOptionalNumber(Wt.maxItems)&&IsOptionalBoolean(Wt.uniqueItems)&&IsOptionalSchema(Wt.contains)&&IsOptionalNumber(Wt.minContains)&&IsOptionalNumber(Wt.maxContains)}function type_IsAsyncIterator(Wt){return IsKindOf(Wt,"AsyncIterator")&&Wt.type==="AsyncIterator"&&IsOptionalString(Wt.$id)&&type_IsSchema(Wt.items)}function type_IsBigInt(Wt){return IsKindOf(Wt,"BigInt")&&Wt.type==="bigint"&&IsOptionalString(Wt.$id)&&IsOptionalBigInt(Wt.exclusiveMaximum)&&IsOptionalBigInt(Wt.exclusiveMinimum)&&IsOptionalBigInt(Wt.maximum)&&IsOptionalBigInt(Wt.minimum)&&IsOptionalBigInt(Wt.multipleOf)}function type_IsBoolean(Wt){return IsKindOf(Wt,"Boolean")&&Wt.type==="boolean"&&IsOptionalString(Wt.$id)}function IsConstructor(Wt){return IsKindOf(Wt,"Constructor")&&Wt.type==="Constructor"&&IsOptionalString(Wt.$id)&&value_IsArray(Wt.parameters)&&Wt.parameters.every((Wt=>type_IsSchema(Wt)))&&type_IsSchema(Wt.returns)}function type_IsDate(Wt){return IsKindOf(Wt,"Date")&&Wt.type==="Date"&&IsOptionalString(Wt.$id)&&IsOptionalNumber(Wt.exclusiveMaximumTimestamp)&&IsOptionalNumber(Wt.exclusiveMinimumTimestamp)&&IsOptionalNumber(Wt.maximumTimestamp)&&IsOptionalNumber(Wt.minimumTimestamp)&&IsOptionalNumber(Wt.multipleOfTimestamp)}function type_IsFunction(Wt){return IsKindOf(Wt,"Function")&&Wt.type==="Function"&&IsOptionalString(Wt.$id)&&value_IsArray(Wt.parameters)&&Wt.parameters.every((Wt=>type_IsSchema(Wt)))&&type_IsSchema(Wt.returns)}function type_IsInteger(Wt){return IsKindOf(Wt,"Integer")&&Wt.type==="integer"&&IsOptionalString(Wt.$id)&&IsOptionalNumber(Wt.exclusiveMaximum)&&IsOptionalNumber(Wt.exclusiveMinimum)&&IsOptionalNumber(Wt.maximum)&&IsOptionalNumber(Wt.minimum)&&IsOptionalNumber(Wt.multipleOf)}function IsProperties(Wt){return value_IsObject(Wt)&&Object.entries(Wt).every((([Wt,Pt])=>IsControlCharacterFree(Wt)&&type_IsSchema(Pt)))}function IsIntersect(Wt){return IsKindOf(Wt,"Intersect")&&(value_IsString(Wt.type)&&Wt.type!=="object"?false:true)&&value_IsArray(Wt.allOf)&&Wt.allOf.every((Wt=>type_IsSchema(Wt)&&!type_IsTransform(Wt)))&&IsOptionalString(Wt.type)&&(IsOptionalBoolean(Wt.unevaluatedProperties)||IsOptionalSchema(Wt.unevaluatedProperties))&&IsOptionalString(Wt.$id)}function type_IsIterator(Wt){return IsKindOf(Wt,"Iterator")&&Wt.type==="Iterator"&&IsOptionalString(Wt.$id)&&type_IsSchema(Wt.items)}function IsKindOf(Wt,Pt){return value_IsObject(Wt)&&bn in Wt&&Wt[bn]===Pt}function IsLiteralString(Wt){return IsLiteral(Wt)&&value_IsString(Wt.const)}function IsLiteralNumber(Wt){return IsLiteral(Wt)&&value_IsNumber(Wt.const)}function IsLiteralBoolean(Wt){return IsLiteral(Wt)&&value_IsBoolean(Wt.const)}function IsLiteral(Wt){return IsKindOf(Wt,"Literal")&&IsOptionalString(Wt.$id)&&IsLiteralValue(Wt.const)}function IsLiteralValue(Wt){return value_IsBoolean(Wt)||value_IsNumber(Wt)||value_IsString(Wt)}function IsMappedKey(Wt){return IsKindOf(Wt,"MappedKey")&&value_IsArray(Wt.keys)&&Wt.keys.every((Wt=>value_IsNumber(Wt)||value_IsString(Wt)))}function IsMappedResult(Wt){return IsKindOf(Wt,"MappedResult")&&IsProperties(Wt.properties)}function IsNever(Wt){return IsKindOf(Wt,"Never")&&value_IsObject(Wt.not)&&Object.getOwnPropertyNames(Wt.not).length===0}function IsNot(Wt){return IsKindOf(Wt,"Not")&&type_IsSchema(Wt.not)}function type_IsNull(Wt){return IsKindOf(Wt,"Null")&&Wt.type==="null"&&IsOptionalString(Wt.$id)}function type_IsNumber(Wt){return IsKindOf(Wt,"Number")&&Wt.type==="number"&&IsOptionalString(Wt.$id)&&IsOptionalNumber(Wt.exclusiveMaximum)&&IsOptionalNumber(Wt.exclusiveMinimum)&&IsOptionalNumber(Wt.maximum)&&IsOptionalNumber(Wt.minimum)&&IsOptionalNumber(Wt.multipleOf)}function type_IsObject(Wt){return IsKindOf(Wt,"Object")&&Wt.type==="object"&&IsOptionalString(Wt.$id)&&IsProperties(Wt.properties)&&IsAdditionalProperties(Wt.additionalProperties)&&IsOptionalNumber(Wt.minProperties)&&IsOptionalNumber(Wt.maxProperties)}function type_IsPromise(Wt){return IsKindOf(Wt,"Promise")&&Wt.type==="Promise"&&IsOptionalString(Wt.$id)&&type_IsSchema(Wt.item)}function IsRecord(Wt){return IsKindOf(Wt,"Record")&&Wt.type==="object"&&IsOptionalString(Wt.$id)&&IsAdditionalProperties(Wt.additionalProperties)&&value_IsObject(Wt.patternProperties)&&(Wt=>{const Pt=Object.getOwnPropertyNames(Wt.patternProperties);return Pt.length===1&&IsPattern(Pt[0])&&value_IsObject(Wt.patternProperties)&&type_IsSchema(Wt.patternProperties[Pt[0]])})(Wt)}function IsRecursive(Wt){return value_IsObject(Wt)&&mn in Wt&&Wt[mn]==="Recursive"}function IsRef(Wt){return IsKindOf(Wt,"Ref")&&IsOptionalString(Wt.$id)&&value_IsString(Wt.$ref)}function type_IsRegExp(Wt){return IsKindOf(Wt,"RegExp")&&IsOptionalString(Wt.$id)&&value_IsString(Wt.source)&&value_IsString(Wt.flags)&&IsOptionalNumber(Wt.maxLength)&&IsOptionalNumber(Wt.minLength)}function type_IsString(Wt){return IsKindOf(Wt,"String")&&Wt.type==="string"&&IsOptionalString(Wt.$id)&&IsOptionalNumber(Wt.minLength)&&IsOptionalNumber(Wt.maxLength)&&IsOptionalPattern(Wt.pattern)&&IsOptionalFormat(Wt.format)}function type_IsSymbol(Wt){return IsKindOf(Wt,"Symbol")&&Wt.type==="symbol"&&IsOptionalString(Wt.$id)}function IsTemplateLiteral(Wt){return IsKindOf(Wt,"TemplateLiteral")&&Wt.type==="string"&&value_IsString(Wt.pattern)&&Wt.pattern[0]==="^"&&Wt.pattern[Wt.pattern.length-1]==="$"}function IsThis(Wt){return IsKindOf(Wt,"This")&&IsOptionalString(Wt.$id)&&value_IsString(Wt.$ref)}function type_IsTransform(Wt){return value_IsObject(Wt)&&dn in Wt}function IsTuple(Wt){return IsKindOf(Wt,"Tuple")&&Wt.type==="array"&&IsOptionalString(Wt.$id)&&value_IsNumber(Wt.minItems)&&value_IsNumber(Wt.maxItems)&&Wt.minItems===Wt.maxItems&&(value_IsUndefined(Wt.items)&&value_IsUndefined(Wt.additionalItems)&&Wt.minItems===0||value_IsArray(Wt.items)&&Wt.items.every((Wt=>type_IsSchema(Wt))))}function type_IsUndefined(Wt){return IsKindOf(Wt,"Undefined")&&Wt.type==="undefined"&&IsOptionalString(Wt.$id)}function IsUnionLiteral(Wt){return IsUnion(Wt)&&Wt.anyOf.every((Wt=>IsLiteralString(Wt)||IsLiteralNumber(Wt)))}function IsUnion(Wt){return IsKindOf(Wt,"Union")&&IsOptionalString(Wt.$id)&&value_IsObject(Wt)&&value_IsArray(Wt.anyOf)&&Wt.anyOf.every((Wt=>type_IsSchema(Wt)))}function type_IsUint8Array(Wt){return IsKindOf(Wt,"Uint8Array")&&Wt.type==="Uint8Array"&&IsOptionalString(Wt.$id)&&IsOptionalNumber(Wt.minByteLength)&&IsOptionalNumber(Wt.maxByteLength)}function IsUnknown(Wt){return IsKindOf(Wt,"Unknown")&&IsOptionalString(Wt.$id)}function IsUnsafe(Wt){return IsKindOf(Wt,"Unsafe")}function IsVoid(Wt){return IsKindOf(Wt,"Void")&&Wt.type==="void"&&IsOptionalString(Wt.$id)}function IsKind(Wt){return value_IsObject(Wt)&&bn in Wt&&value_IsString(Wt[bn])&&!hn.includes(Wt[bn])}function type_IsSchema(Wt){return value_IsObject(Wt)&&(IsAny(Wt)||type_IsArray(Wt)||type_IsBoolean(Wt)||type_IsBigInt(Wt)||type_IsAsyncIterator(Wt)||IsConstructor(Wt)||type_IsDate(Wt)||type_IsFunction(Wt)||type_IsInteger(Wt)||IsIntersect(Wt)||type_IsIterator(Wt)||IsLiteral(Wt)||IsMappedKey(Wt)||IsMappedResult(Wt)||IsNever(Wt)||IsNot(Wt)||type_IsNull(Wt)||type_IsNumber(Wt)||type_IsObject(Wt)||type_IsPromise(Wt)||IsRecord(Wt)||IsRef(Wt)||type_IsRegExp(Wt)||type_IsString(Wt)||type_IsSymbol(Wt)||IsTemplateLiteral(Wt)||IsThis(Wt)||IsTuple(Wt)||type_IsUndefined(Wt)||IsUnion(Wt)||type_IsUint8Array(Wt)||IsUnknown(Wt)||IsUnsafe(Wt)||IsVoid(Wt)||IsKind(Wt))}function RemoveOptional(Wt){return Discard(CloneType(Wt),[pn])}function AddOptional(Wt){return{...CloneType(Wt),[pn]:"Optional"}}function OptionalWithFlag(Wt,Pt){return Pt===false?RemoveOptional(Wt):AddOptional(Wt)}function optional_Optional(Wt,Pt){const en=Pt??true;return IsMappedResult(Wt)?OptionalFromMappedResult(Wt,en):OptionalWithFlag(Wt,en)}function FromProperties(Wt,Pt){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((en,tn)=>({...en,[tn]:optional_Optional(Wt[tn],Pt)})),{})}function FromMappedResult(Wt,Pt){return FromProperties(Wt.properties,Pt)}function OptionalFromMappedResult(Wt,Pt){const en=FromMappedResult(Wt,Pt);return MappedResult(en)}function IntersectCreate(Wt,Pt){const en=Wt.every((Wt=>type_IsObject(Wt)));const tn=type_IsSchema(Pt.unevaluatedProperties)?{unevaluatedProperties:CloneType(Pt.unevaluatedProperties)}:{};return Pt.unevaluatedProperties===false||type_IsSchema(Pt.unevaluatedProperties)||en?{...Pt,...tn,[bn]:"Intersect",type:"object",allOf:CloneRest(Wt)}:{...Pt,...tn,[bn]:"Intersect",allOf:CloneRest(Wt)}}function IsIntersectOptional(Wt){return Wt.every((Wt=>IsOptional(Wt)))}function RemoveOptionalFromType(Wt){return Discard(Wt,[pn])}function RemoveOptionalFromRest(Wt){return Wt.map((Wt=>IsOptional(Wt)?RemoveOptionalFromType(Wt):Wt))}function ResolveIntersect(Wt,Pt){return IsIntersectOptional(Wt)?optional_Optional(IntersectCreate(RemoveOptionalFromRest(Wt),Pt)):IntersectCreate(RemoveOptionalFromRest(Wt),Pt)}function IntersectEvaluated(Wt,Pt={}){if(Wt.length===0)return never_Never(Pt);if(Wt.length===1)return CloneType(Wt[0],Pt);if(Wt.some((Wt=>type_IsTransform(Wt))))throw new Error("Cannot intersect transform types");return ResolveIntersect(Wt,Pt)}function intersect_Intersect(Wt,Pt={}){if(Wt.length===0)return never_Never(Pt);if(Wt.length===1)return CloneType(Wt[0],Pt);if(Wt.some((Wt=>type_IsTransform(Wt))))throw new Error("Cannot intersect transform types");return IntersectCreate(Wt,Pt)}function UnionCreate(Wt,Pt){return{...Pt,[bn]:"Union",anyOf:CloneRest(Wt)}}function IsUnionOptional(Wt){return Wt.some((Wt=>IsOptional(Wt)))}function union_evaluated_RemoveOptionalFromRest(Wt){return Wt.map((Wt=>IsOptional(Wt)?union_evaluated_RemoveOptionalFromType(Wt):Wt))}function union_evaluated_RemoveOptionalFromType(Wt){return Discard(Wt,[pn])}function ResolveUnion(Wt,Pt){return IsUnionOptional(Wt)?optional_Optional(UnionCreate(union_evaluated_RemoveOptionalFromRest(Wt),Pt)):UnionCreate(union_evaluated_RemoveOptionalFromRest(Wt),Pt)}function UnionEvaluated(Wt,Pt={}){return Wt.length===0?never_Never(Pt):Wt.length===1?CloneType(Wt[0],Pt):ResolveUnion(Wt,Pt)}function union_Union(Wt,Pt={}){return Wt.length===0?never_Never(Pt):Wt.length===1?CloneType(Wt[0],Pt):UnionCreate(Wt,Pt)}class TemplateLiteralParserError extends TypeBoxError{}function Unescape(Wt){return Wt.replace(/\\\$/g,"$").replace(/\\\*/g,"*").replace(/\\\^/g,"^").replace(/\\\|/g,"|").replace(/\\\(/g,"(").replace(/\\\)/g,")")}function IsNonEscaped(Wt,Pt,en){return Wt[Pt]===en&&Wt.charCodeAt(Pt-1)!==92}function IsOpenParen(Wt,Pt){return IsNonEscaped(Wt,Pt,"(")}function IsCloseParen(Wt,Pt){return IsNonEscaped(Wt,Pt,")")}function IsSeparator(Wt,Pt){return IsNonEscaped(Wt,Pt,"|")}function IsGroup(Wt){if(!(IsOpenParen(Wt,0)&&IsCloseParen(Wt,Wt.length-1)))return false;let Pt=0;for(let en=0;en0)tn.push(TemplateLiteralParse(Pt));en=nn+1}}const nn=Wt.slice(en);if(nn.length>0)tn.push(TemplateLiteralParse(nn));if(tn.length===0)return{type:"const",const:""};if(tn.length===1)return tn[0];return{type:"or",expr:tn}}function And(Wt){function Group(Wt,Pt){if(!IsOpenParen(Wt,Pt))throw new TemplateLiteralParserError(`TemplateLiteralParser: Index must point to open parens`);let en=0;for(let tn=Pt;tn0)Pt.push(TemplateLiteralParse(an));en=nn-1}}return Pt.length===0?{type:"const",const:""}:Pt.length===1?Pt[0]:{type:"and",expr:Pt}}function TemplateLiteralParse(Wt){return IsGroup(Wt)?TemplateLiteralParse(InGroup(Wt)):IsPrecedenceOr(Wt)?Or(Wt):IsPrecedenceAnd(Wt)?And(Wt):{type:"const",const:Unescape(Wt)}}function TemplateLiteralParseExact(Wt){return TemplateLiteralParse(Wt.slice(1,Wt.length-1))}class TemplateLiteralFiniteError extends TypeBoxError{}function IsNumberExpression(Wt){return Wt.type==="or"&&Wt.expr.length===2&&Wt.expr[0].type==="const"&&Wt.expr[0].const==="0"&&Wt.expr[1].type==="const"&&Wt.expr[1].const==="[1-9][0-9]*"}function IsBooleanExpression(Wt){return Wt.type==="or"&&Wt.expr.length===2&&Wt.expr[0].type==="const"&&Wt.expr[0].const==="true"&&Wt.expr[1].type==="const"&&Wt.expr[1].const==="false"}function IsStringExpression(Wt){return Wt.type==="const"&&Wt.const===".*"}function IsTemplateLiteralExpressionFinite(Wt){return IsNumberExpression(Wt)||IsStringExpression(Wt)?false:IsBooleanExpression(Wt)?true:Wt.type==="and"?Wt.expr.every((Wt=>IsTemplateLiteralExpressionFinite(Wt))):Wt.type==="or"?Wt.expr.every((Wt=>IsTemplateLiteralExpressionFinite(Wt))):Wt.type==="const"?true:(()=>{throw new TemplateLiteralFiniteError(`Unknown expression type`)})()}function finite_IsTemplateLiteralFinite(Wt){const Pt=TemplateLiteralParseExact(Wt.pattern);return IsTemplateLiteralExpressionFinite(Pt)}class TemplateLiteralGenerateError extends TypeBoxError{}function*GenerateReduce(Wt){if(Wt.length===1)return yield*Wt[0];for(const Pt of Wt[0]){for(const en of GenerateReduce(Wt.slice(1))){yield`${Pt}${en}`}}}function*GenerateAnd(Wt){return yield*GenerateReduce(Wt.expr.map((Wt=>[...TemplateLiteralExpressionGenerate(Wt)])))}function*GenerateOr(Wt){for(const Pt of Wt.expr)yield*TemplateLiteralExpressionGenerate(Pt)}function*GenerateConst(Wt){return yield Wt.const}function*TemplateLiteralExpressionGenerate(Wt){return Wt.type==="and"?yield*GenerateAnd(Wt):Wt.type==="or"?yield*GenerateOr(Wt):Wt.type==="const"?yield*GenerateConst(Wt):(()=>{throw new TemplateLiteralGenerateError("Unknown expression")})()}function generate_TemplateLiteralGenerate(Wt){const Pt=TemplateLiteralParseExact(Wt.pattern);return IsTemplateLiteralExpressionFinite(Pt)?[...TemplateLiteralExpressionGenerate(Pt)]:[]}function literal_Literal(Wt,Pt={}){return{...Pt,[bn]:"Literal",const:Wt,type:typeof Wt}}function boolean_Boolean(Wt={}){return{...Wt,[bn]:"Boolean",type:"boolean"}}function bigint_BigInt(Wt={}){return{...Wt,[bn]:"BigInt",type:"bigint"}}function number_Number(Wt={}){return{...Wt,[bn]:"Number",type:"number"}}function string_String(Wt={}){return{...Wt,[bn]:"String",type:"string"}}function*FromUnion(Wt){const Pt=Wt.trim().replace(/"|'/g,"");return Pt==="boolean"?yield boolean_Boolean():Pt==="number"?yield number_Number():Pt==="bigint"?yield bigint_BigInt():Pt==="string"?yield string_String():yield(()=>{const Wt=Pt.split("|").map((Wt=>literal_Literal(Wt.trim())));return Wt.length===0?never_Never():Wt.length===1?Wt[0]:UnionEvaluated(Wt)})()}function*FromTerminal(Wt){if(Wt[1]!=="{"){const Pt=literal_Literal("$");const en=FromSyntax(Wt.slice(1));return yield*[Pt,...en]}for(let Pt=2;Ptpattern_Visit(Wt,Pt))).join("|")})`:type_IsNumber(Wt)?`${Pt}${An}`:type_IsInteger(Wt)?`${Pt}${An}`:type_IsBigInt(Wt)?`${Pt}${An}`:type_IsString(Wt)?`${Pt}${Wn}`:IsLiteral(Wt)?`${Pt}${Escape(Wt.const.toString())}`:type_IsBoolean(Wt)?`${Pt}${Zn}`:(()=>{throw new TemplateLiteralPatternError(`Unexpected Kind '${Wt[bn]}'`)})()}function TemplateLiteralPattern(Wt){return`^${Wt.map((Wt=>pattern_Visit(Wt,""))).join("")}$`}function TemplateLiteralToUnion(Wt){const Pt=generate_TemplateLiteralGenerate(Wt);const en=Pt.map((Wt=>literal_Literal(Wt)));return UnionEvaluated(en)}function template_literal_TemplateLiteral(Wt,Pt={}){const en=value_IsString(Wt)?TemplateLiteralPattern(TemplateLiteralSyntax(Wt)):TemplateLiteralPattern(Wt);return{...Pt,[bn]:"TemplateLiteral",type:"string",pattern:en}}function FromTemplateLiteral(Wt){const Pt=generate_TemplateLiteralGenerate(Wt);return Pt.map((Wt=>Wt.toString()))}function indexed_property_keys_FromUnion(Wt){return Wt.reduce(((Wt,Pt)=>[...Wt,...IndexPropertyKeys(Pt)]),[])}function FromLiteral(Wt){return[Wt.toString()]}function IndexPropertyKeys(Wt){return[...new Set(IsTemplateLiteral(Wt)?FromTemplateLiteral(Wt):IsUnion(Wt)?indexed_property_keys_FromUnion(Wt.anyOf):IsLiteral(Wt)?FromLiteral(Wt.const):type_IsNumber(Wt)?["[number]"]:type_IsInteger(Wt)?["[number]"]:[])]}function indexed_from_mapped_result_FromProperties(Wt,Pt,en){return globalThis.Object.getOwnPropertyNames(Pt).reduce(((tn,nn)=>({...tn,[nn]:indexed_Index(Wt,IndexPropertyKeys(Pt[nn]),en)})),{})}function indexed_from_mapped_result_FromMappedResult(Wt,Pt,en){return indexed_from_mapped_result_FromProperties(Wt,Pt.properties,en)}function IndexFromMappedResult(Wt,Pt,en){const tn=indexed_from_mapped_result_FromMappedResult(Wt,Pt,en);return MappedResult(tn)}function FromRest(Wt,Pt){return Wt.map((Wt=>IndexFromPropertyKey(Wt,Pt)))}function FromIntersectRest(Wt){return Wt.filter((Wt=>!IsNever(Wt)))}function FromIntersect(Wt,Pt){return IntersectEvaluated(FromIntersectRest(FromRest(Wt,Pt)))}function FromUnionRest(Wt){return Wt.some((Wt=>IsNever(Wt)))?[]:Wt}function indexed_FromUnion(Wt,Pt){return UnionEvaluated(FromUnionRest(FromRest(Wt,Pt)))}function FromTuple(Wt,Pt){return Pt in Wt?Wt[Pt]:Pt==="[number]"?UnionEvaluated(Wt):never_Never()}function FromArray(Wt,Pt){return Pt==="[number]"?Wt:never_Never()}function FromProperty(Wt,Pt){return Pt in Wt?Wt[Pt]:never_Never()}function IndexFromPropertyKey(Wt,Pt){return IsIntersect(Wt)?FromIntersect(Wt.allOf,Pt):IsUnion(Wt)?indexed_FromUnion(Wt.anyOf,Pt):IsTuple(Wt)?FromTuple(Wt.items??[],Pt):type_IsArray(Wt)?FromArray(Wt.items,Pt):type_IsObject(Wt)?FromProperty(Wt.properties,Pt):never_Never()}function indexed_IndexFromPropertyKeys(Wt,Pt){return Pt.map((Pt=>IndexFromPropertyKey(Wt,Pt)))}function FromSchema(Wt,Pt){return UnionEvaluated(indexed_IndexFromPropertyKeys(Wt,Pt))}function indexed_Index(Wt,Pt,en={}){return IsMappedResult(Pt)?CloneType(IndexFromMappedResult(Wt,Pt,en)):IsMappedKey(Pt)?CloneType(IndexFromMappedKey(Wt,Pt,en)):type_IsSchema(Pt)?CloneType(FromSchema(Wt,IndexPropertyKeys(Pt)),en):CloneType(FromSchema(Wt,Pt),en)}function MappedIndexPropertyKey(Wt,Pt,en){return{[Pt]:indexed_Index(Wt,[Pt],en)}}function MappedIndexPropertyKeys(Wt,Pt,en){return Pt.reduce(((Pt,tn)=>({...Pt,...MappedIndexPropertyKey(Wt,tn,en)})),{})}function MappedIndexProperties(Wt,Pt,en){return MappedIndexPropertyKeys(Wt,Pt.keys,en)}function IndexFromMappedKey(Wt,Pt,en){const tn=MappedIndexProperties(Wt,Pt,en);return MappedResult(tn)}function iterator_Iterator(Wt,Pt={}){return{...Pt,[bn]:"Iterator",type:"Iterator",items:CloneType(Wt)}}function _Object(Wt,Pt={}){const en=globalThis.Object.getOwnPropertyNames(Wt);const tn=en.filter((Pt=>IsOptional(Wt[Pt])));const nn=en.filter((Wt=>!tn.includes(Wt)));const an=type_IsSchema(Pt.additionalProperties)?{additionalProperties:CloneType(Pt.additionalProperties)}:{};const rn=en.reduce(((Pt,en)=>({...Pt,[en]:CloneType(Wt[en])})),{});return nn.length>0?{...Pt,...an,[bn]:"Object",type:"object",properties:rn,required:nn}:{...Pt,...an,[bn]:"Object",type:"object",properties:rn}}const vn=_Object;function promise_Promise(Wt,Pt={}){return{...Pt,[bn]:"Promise",type:"Promise",item:CloneType(Wt)}}function RemoveReadonly(Wt){return Discard(CloneType(Wt),[un])}function AddReadonly(Wt){return{...CloneType(Wt),[un]:"Readonly"}}function ReadonlyWithFlag(Wt,Pt){return Pt===false?RemoveReadonly(Wt):AddReadonly(Wt)}function readonly_Readonly(Wt,Pt){const en=Pt??true;return IsMappedResult(Wt)?ReadonlyFromMappedResult(Wt,en):ReadonlyWithFlag(Wt,en)}function readonly_from_mapped_result_FromProperties(Wt,Pt){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((en,tn)=>({...en,[tn]:readonly_Readonly(Wt[tn],Pt)})),{})}function readonly_from_mapped_result_FromMappedResult(Wt,Pt){return readonly_from_mapped_result_FromProperties(Wt.properties,Pt)}function ReadonlyFromMappedResult(Wt,Pt){const en=readonly_from_mapped_result_FromMappedResult(Wt,Pt);return MappedResult(en)}function tuple_Tuple(Wt,Pt={}){const[en,tn,nn]=[false,Wt.length,Wt.length];return Wt.length>0?{...Pt,[bn]:"Tuple",type:"array",items:CloneRest(Wt),additionalItems:en,minItems:tn,maxItems:nn}:{...Pt,[bn]:"Tuple",type:"array",minItems:tn,maxItems:nn}}function SetIncludes(Wt,Pt){return Wt.includes(Pt)}function SetIsSubset(Wt,Pt){return Wt.every((Wt=>SetIncludes(Pt,Wt)))}function SetDistinct(Wt){return[...new Set(Wt)]}function SetIntersect(Wt,Pt){return Wt.filter((Wt=>Pt.includes(Wt)))}function SetUnion(Wt,Pt){return[...Wt,...Pt]}function SetComplement(Wt,Pt){return Wt.filter((Wt=>!Pt.includes(Wt)))}function SetIntersectManyResolve(Wt,Pt){return Wt.reduce(((Wt,Pt)=>SetIntersect(Wt,Pt)),Pt)}function SetIntersectMany(Wt){return Wt.length===1?Wt[0]:Wt.length>1?SetIntersectManyResolve(Wt.slice(1),Wt[0]):[]}function SetUnionMany(Wt){return Wt.reduce(((Wt,Pt)=>[...Wt,...Pt]),[])}function mapped_FromMappedResult(Wt,Pt){return Wt in Pt?FromSchemaType(Wt,Pt[Wt]):MappedResult(Pt)}function MappedKeyToKnownMappedResultProperties(Wt){return{[Wt]:literal_Literal(Wt)}}function MappedKeyToUnknownMappedResultProperties(Wt){return Wt.reduce(((Wt,Pt)=>({...Wt,[Pt]:literal_Literal(Pt)})),{})}function MappedKeyToMappedResultProperties(Wt,Pt){return SetIncludes(Pt,Wt)?MappedKeyToKnownMappedResultProperties(Wt):MappedKeyToUnknownMappedResultProperties(Pt)}function FromMappedKey(Wt,Pt){const en=MappedKeyToMappedResultProperties(Wt,Pt);return mapped_FromMappedResult(Wt,en)}function mapped_FromRest(Wt,Pt){return Pt.map((Pt=>FromSchemaType(Wt,Pt)))}function mapped_FromProperties(Wt,Pt){return globalThis.Object.getOwnPropertyNames(Pt).reduce(((en,tn)=>({...en,[tn]:FromSchemaType(Wt,Pt[tn])})),{})}function FromSchemaType(Wt,Pt){return IsOptional(Pt)?optional_Optional(FromSchemaType(Wt,Discard(Pt,[pn]))):IsReadonly(Pt)?readonly_Readonly(FromSchemaType(Wt,Discard(Pt,[un]))):IsMappedResult(Pt)?mapped_FromMappedResult(Wt,Pt.properties):IsMappedKey(Pt)?FromMappedKey(Wt,Pt.keys):IsConstructor(Pt)?constructor_Constructor(mapped_FromRest(Wt,Pt.parameters),FromSchemaType(Wt,Pt.returns)):type_IsFunction(Pt)?function_Function(mapped_FromRest(Wt,Pt.parameters),FromSchemaType(Wt,Pt.returns)):type_IsAsyncIterator(Pt)?async_iterator_AsyncIterator(FromSchemaType(Wt,Pt.items)):type_IsIterator(Pt)?iterator_Iterator(FromSchemaType(Wt,Pt.items)):IsIntersect(Pt)?intersect_Intersect(mapped_FromRest(Wt,Pt.allOf)):IsUnion(Pt)?union_Union(mapped_FromRest(Wt,Pt.anyOf)):IsTuple(Pt)?tuple_Tuple(mapped_FromRest(Wt,Pt.items??[])):type_IsObject(Pt)?vn(mapped_FromProperties(Wt,Pt.properties)):type_IsArray(Pt)?array_Array(FromSchemaType(Wt,Pt.items)):type_IsPromise(Pt)?promise_Promise(FromSchemaType(Wt,Pt.item)):Pt}function MappedFunctionReturnType(Wt,Pt,en={}){return Wt.reduce(((Wt,en)=>({...Wt,[en]:FromSchemaType(en,Pt)})),{})}function mapped_Mapped(Wt,Pt,en={}){const tn=type_IsSchema(Wt)?IndexPropertyKeys(Wt):Wt;const nn=Pt({[bn]:"MappedKey",keys:tn});const an=MappedFunctionReturnType(tn,nn);return CloneType(vn(an),en)}function keyof_property_keys_FromRest(Wt){return Wt.reduce(((Wt,Pt)=>[...Wt,keyof_property_keys_KeyOfPropertyKeys(Pt)]),[])}function keyof_property_keys_FromIntersect(Wt){const Pt=keyof_property_keys_FromRest(Wt);const en=SetUnionMany(Pt);return en}function keyof_property_keys_FromUnion(Wt){const Pt=keyof_property_keys_FromRest(Wt);const en=SetIntersectMany(Pt);return en}function keyof_property_keys_FromTuple(Wt){return Wt.map(((Wt,Pt)=>Pt.toString()))}function keyof_property_keys_FromArray(Wt){return["[number]"]}function keyof_property_keys_FromProperties(Wt){return globalThis.Object.getOwnPropertyNames(Wt)}function FromPatternProperties(Wt){if(!Yn)return[];const Pt=globalThis.Object.getOwnPropertyNames(Wt);return Pt.map((Wt=>Wt[0]==="^"&&Wt[Wt.length-1]==="$"?Wt.slice(1,Wt.length-1):Wt))}function keyof_property_keys_KeyOfPropertyKeys(Wt){return IsIntersect(Wt)?keyof_property_keys_FromIntersect(Wt.allOf):IsUnion(Wt)?keyof_property_keys_FromUnion(Wt.anyOf):IsTuple(Wt)?keyof_property_keys_FromTuple(Wt.items??[]):type_IsArray(Wt)?keyof_property_keys_FromArray(Wt.items):type_IsObject(Wt)?keyof_property_keys_FromProperties(Wt.properties):IsRecord(Wt)?FromPatternProperties(Wt.patternProperties):[]}let Yn=false;function keyof_property_keys_KeyOfPattern(Wt){Yn=true;const Pt=keyof_property_keys_KeyOfPropertyKeys(Wt);Yn=false;const en=Pt.map((Wt=>`(${Wt})`));return`^(${en.join("|")})$`}function KeyOfPropertyKeysToRest(Wt){return Wt.map((Wt=>Wt==="[number]"?number_Number():literal_Literal(Wt)))}function keyof_KeyOf(Wt,Pt={}){if(IsMappedResult(Wt)){return KeyOfFromMappedResult(Wt,Pt)}else{const en=keyof_property_keys_KeyOfPropertyKeys(Wt);const tn=KeyOfPropertyKeysToRest(en);const nn=UnionEvaluated(tn);return CloneType(nn,Pt)}}function keyof_from_mapped_result_FromProperties(Wt,Pt){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((en,tn)=>({...en,[tn]:keyof_KeyOf(Wt[tn],Pt)})),{})}function keyof_from_mapped_result_FromMappedResult(Wt,Pt){return keyof_from_mapped_result_FromProperties(Wt.properties,Pt)}function KeyOfFromMappedResult(Wt,Pt){const en=keyof_from_mapped_result_FromMappedResult(Wt,Pt);return MappedResult(en)}function extends_undefined_Intersect(Wt){return Wt.allOf.every((Wt=>extends_undefined_ExtendsUndefinedCheck(Wt)))}function extends_undefined_Union(Wt){return Wt.anyOf.some((Wt=>extends_undefined_ExtendsUndefinedCheck(Wt)))}function extends_undefined_Not(Wt){return!extends_undefined_ExtendsUndefinedCheck(Wt.not)}function extends_undefined_ExtendsUndefinedCheck(Wt){return Wt[bn]==="Intersect"?extends_undefined_Intersect(Wt):Wt[bn]==="Union"?extends_undefined_Union(Wt):Wt[bn]==="Not"?extends_undefined_Not(Wt):Wt[bn]==="Undefined"?true:false}function DefaultErrorFunction(Wt){switch(Wt.errorType){case Xn.ArrayContains:return"Expected array to contain at least one matching value";case Xn.ArrayMaxContains:return`Expected array to contain no more than ${Wt.schema.maxContains} matching values`;case Xn.ArrayMinContains:return`Expected array to contain at least ${Wt.schema.minContains} matching values`;case Xn.ArrayMaxItems:return`Expected array length to be less or equal to ${Wt.schema.maxItems}`;case Xn.ArrayMinItems:return`Expected array length to be greater or equal to ${Wt.schema.minItems}`;case Xn.ArrayUniqueItems:return"Expected array elements to be unique";case Xn.Array:return"Expected array";case Xn.AsyncIterator:return"Expected AsyncIterator";case Xn.BigIntExclusiveMaximum:return`Expected bigint to be less than ${Wt.schema.exclusiveMaximum}`;case Xn.BigIntExclusiveMinimum:return`Expected bigint to be greater than ${Wt.schema.exclusiveMinimum}`;case Xn.BigIntMaximum:return`Expected bigint to be less or equal to ${Wt.schema.maximum}`;case Xn.BigIntMinimum:return`Expected bigint to be greater or equal to ${Wt.schema.minimum}`;case Xn.BigIntMultipleOf:return`Expected bigint to be a multiple of ${Wt.schema.multipleOf}`;case Xn.BigInt:return"Expected bigint";case Xn.Boolean:return"Expected boolean";case Xn.DateExclusiveMinimumTimestamp:return`Expected Date timestamp to be greater than ${Wt.schema.exclusiveMinimumTimestamp}`;case Xn.DateExclusiveMaximumTimestamp:return`Expected Date timestamp to be less than ${Wt.schema.exclusiveMaximumTimestamp}`;case Xn.DateMinimumTimestamp:return`Expected Date timestamp to be greater or equal to ${Wt.schema.minimumTimestamp}`;case Xn.DateMaximumTimestamp:return`Expected Date timestamp to be less or equal to ${Wt.schema.maximumTimestamp}`;case Xn.DateMultipleOfTimestamp:return`Expected Date timestamp to be a multiple of ${Wt.schema.multipleOfTimestamp}`;case Xn.Date:return"Expected Date";case Xn.Function:return"Expected function";case Xn.IntegerExclusiveMaximum:return`Expected integer to be less than ${Wt.schema.exclusiveMaximum}`;case Xn.IntegerExclusiveMinimum:return`Expected integer to be greater than ${Wt.schema.exclusiveMinimum}`;case Xn.IntegerMaximum:return`Expected integer to be less or equal to ${Wt.schema.maximum}`;case Xn.IntegerMinimum:return`Expected integer to be greater or equal to ${Wt.schema.minimum}`;case Xn.IntegerMultipleOf:return`Expected integer to be a multiple of ${Wt.schema.multipleOf}`;case Xn.Integer:return"Expected integer";case Xn.IntersectUnevaluatedProperties:return"Unexpected property";case Xn.Intersect:return"Expected all values to match";case Xn.Iterator:return"Expected Iterator";case Xn.Literal:return`Expected ${typeof Wt.schema.const==="string"?`'${Wt.schema.const}'`:Wt.schema.const}`;case Xn.Never:return"Never";case Xn.Not:return"Value should not match";case Xn.Null:return"Expected null";case Xn.NumberExclusiveMaximum:return`Expected number to be less than ${Wt.schema.exclusiveMaximum}`;case Xn.NumberExclusiveMinimum:return`Expected number to be greater than ${Wt.schema.exclusiveMinimum}`;case Xn.NumberMaximum:return`Expected number to be less or equal to ${Wt.schema.maximum}`;case Xn.NumberMinimum:return`Expected number to be greater or equal to ${Wt.schema.minimum}`;case Xn.NumberMultipleOf:return`Expected number to be a multiple of ${Wt.schema.multipleOf}`;case Xn.Number:return"Expected number";case Xn.Object:return"Expected object";case Xn.ObjectAdditionalProperties:return"Unexpected property";case Xn.ObjectMaxProperties:return`Expected object to have no more than ${Wt.schema.maxProperties} properties`;case Xn.ObjectMinProperties:return`Expected object to have at least ${Wt.schema.minProperties} properties`;case Xn.ObjectRequiredProperty:return"Required property";case Xn.Promise:return"Expected Promise";case Xn.RegExp:return"Expected string to match regular expression";case Xn.StringFormatUnknown:return`Unknown format '${Wt.schema.format}'`;case Xn.StringFormat:return`Expected string to match '${Wt.schema.format}' format`;case Xn.StringMaxLength:return`Expected string length less or equal to ${Wt.schema.maxLength}`;case Xn.StringMinLength:return`Expected string length greater or equal to ${Wt.schema.minLength}`;case Xn.StringPattern:return`Expected string to match '${Wt.schema.pattern}'`;case Xn.String:return"Expected string";case Xn.Symbol:return"Expected symbol";case Xn.TupleLength:return`Expected tuple to have ${Wt.schema.maxItems||0} elements`;case Xn.Tuple:return"Expected tuple";case Xn.Uint8ArrayMaxByteLength:return`Expected byte length less or equal to ${Wt.schema.maxByteLength}`;case Xn.Uint8ArrayMinByteLength:return`Expected byte length greater or equal to ${Wt.schema.minByteLength}`;case Xn.Uint8Array:return"Expected Uint8Array";case Xn.Undefined:return"Expected undefined";case Xn.Union:return"Expected union value";case Xn.Void:return"Expected void";case Xn.Kind:return`Expected kind '${Wt.schema[bn]}'`;default:return"Unknown error type"}}let En=DefaultErrorFunction;function SetErrorFunction(Wt){En=Wt}function function_GetErrorFunction(){return En}class TypeDereferenceError extends TypeBoxError{schema;constructor(Wt){super(`Unable to dereference schema with $id '${Wt.$id}'`);this.schema=Wt}}function deref_Deref(Wt,Pt){const en=Pt.findIndex((Pt=>Pt.$id===Wt.$ref));if(en===-1)throw new TypeDereferenceError(Wt);return Pt[en]}class ValueHashError extends TypeBoxError{value;constructor(Wt){super(`Unable to hash value`);this.value=Wt}}var Vn;(function(Wt){Wt[Wt["Undefined"]=0]="Undefined";Wt[Wt["Null"]=1]="Null";Wt[Wt["Boolean"]=2]="Boolean";Wt[Wt["Number"]=3]="Number";Wt[Wt["String"]=4]="String";Wt[Wt["Object"]=5]="Object";Wt[Wt["Array"]=6]="Array";Wt[Wt["Date"]=7]="Date";Wt[Wt["Uint8Array"]=8]="Uint8Array";Wt[Wt["Symbol"]=9]="Symbol";Wt[Wt["BigInt"]=10]="BigInt"})(Vn||(Vn={}));let Rn=BigInt("14695981039346656037");const[wn,Fn]=[BigInt("1099511628211"),BigInt("2")**BigInt("64")];const Qn=Array.from({length:256}).map(((Wt,Pt)=>BigInt(Pt)));const fn=new Float64Array(1);const Hn=new DataView(fn.buffer);const Cn=new Uint8Array(fn.buffer);function*NumberToBytes(Wt){const Pt=Wt===0?1:Math.ceil(Math.floor(Math.log2(Wt)+1)/8);for(let en=0;en>8*(Pt-1-en)&255}}function hash_ArrayType(Wt){FNV1A64(Vn.Array);for(const Pt of Wt){hash_Visit(Pt)}}function BooleanType(Wt){FNV1A64(Vn.Boolean);FNV1A64(Wt?1:0)}function BigIntType(Wt){FNV1A64(Vn.BigInt);Hn.setBigInt64(0,Wt);for(const Wt of Cn){FNV1A64(Wt)}}function hash_DateType(Wt){FNV1A64(Vn.Date);hash_Visit(Wt.getTime())}function NullType(Wt){FNV1A64(Vn.Null)}function NumberType(Wt){FNV1A64(Vn.Number);Hn.setFloat64(0,Wt);for(const Wt of Cn){FNV1A64(Wt)}}function hash_ObjectType(Wt){FNV1A64(Vn.Object);for(const Pt of globalThis.Object.keys(Wt).sort()){hash_Visit(Pt);hash_Visit(Wt[Pt])}}function StringType(Wt){FNV1A64(Vn.String);for(let Pt=0;Pt=Wt.minItems)){yield errors_Create(Xn.ArrayMinItems,Wt,en,tn)}if(IsDefined(Wt.maxItems)&&!(tn.length<=Wt.maxItems)){yield errors_Create(Xn.ArrayMaxItems,Wt,en,tn)}for(let nn=0;nnerrors_Visit(nn,Pt,`${en}${an}`,tn).next().done===true?Wt+1:Wt),0);if(an===0){yield errors_Create(Xn.ArrayContains,Wt,en,tn)}if(guard_IsNumber(Wt.minContains)&&anWt.maxContains){yield errors_Create(Xn.ArrayMaxContains,Wt,en,tn)}}function*FromAsyncIterator(Wt,Pt,en,tn){if(!guard_IsAsyncIterator(tn))yield errors_Create(Xn.AsyncIterator,Wt,en,tn)}function*FromBigInt(Wt,Pt,en,tn){if(!guard_IsBigInt(tn))return yield errors_Create(Xn.BigInt,Wt,en,tn);if(IsDefined(Wt.exclusiveMaximum)&&!(tnWt.exclusiveMinimum)){yield errors_Create(Xn.BigIntExclusiveMinimum,Wt,en,tn)}if(IsDefined(Wt.maximum)&&!(tn<=Wt.maximum)){yield errors_Create(Xn.BigIntMaximum,Wt,en,tn)}if(IsDefined(Wt.minimum)&&!(tn>=Wt.minimum)){yield errors_Create(Xn.BigIntMinimum,Wt,en,tn)}if(IsDefined(Wt.multipleOf)&&!(tn%Wt.multipleOf===BigInt(0))){yield errors_Create(Xn.BigIntMultipleOf,Wt,en,tn)}}function*FromBoolean(Wt,Pt,en,tn){if(!guard_IsBoolean(tn))yield errors_Create(Xn.Boolean,Wt,en,tn)}function*FromConstructor(Wt,Pt,en,tn){yield*errors_Visit(Wt.returns,Pt,en,tn.prototype)}function*FromDate(Wt,Pt,en,tn){if(!guard_IsDate(tn))return yield errors_Create(Xn.Date,Wt,en,tn);if(IsDefined(Wt.exclusiveMaximumTimestamp)&&!(tn.getTime()Wt.exclusiveMinimumTimestamp)){yield errors_Create(Xn.DateExclusiveMinimumTimestamp,Wt,en,tn)}if(IsDefined(Wt.maximumTimestamp)&&!(tn.getTime()<=Wt.maximumTimestamp)){yield errors_Create(Xn.DateMaximumTimestamp,Wt,en,tn)}if(IsDefined(Wt.minimumTimestamp)&&!(tn.getTime()>=Wt.minimumTimestamp)){yield errors_Create(Xn.DateMinimumTimestamp,Wt,en,tn)}if(IsDefined(Wt.multipleOfTimestamp)&&!(tn.getTime()%Wt.multipleOfTimestamp===0)){yield errors_Create(Xn.DateMultipleOfTimestamp,Wt,en,tn)}}function*FromFunction(Wt,Pt,en,tn){if(!guard_IsFunction(tn))yield errors_Create(Xn.Function,Wt,en,tn)}function*FromInteger(Wt,Pt,en,tn){if(!guard_IsInteger(tn))return yield errors_Create(Xn.Integer,Wt,en,tn);if(IsDefined(Wt.exclusiveMaximum)&&!(tnWt.exclusiveMinimum)){yield errors_Create(Xn.IntegerExclusiveMinimum,Wt,en,tn)}if(IsDefined(Wt.maximum)&&!(tn<=Wt.maximum)){yield errors_Create(Xn.IntegerMaximum,Wt,en,tn)}if(IsDefined(Wt.minimum)&&!(tn>=Wt.minimum)){yield errors_Create(Xn.IntegerMinimum,Wt,en,tn)}if(IsDefined(Wt.multipleOf)&&!(tn%Wt.multipleOf===0)){yield errors_Create(Xn.IntegerMultipleOf,Wt,en,tn)}}function*errors_FromIntersect(Wt,Pt,en,tn){for(const nn of Wt.allOf){const an=errors_Visit(nn,Pt,en,tn).next();if(!an.done){yield errors_Create(Xn.Intersect,Wt,en,tn);yield an.value}}if(Wt.unevaluatedProperties===false){const Pt=new RegExp(keyof_property_keys_KeyOfPattern(Wt));for(const nn of Object.getOwnPropertyNames(tn)){if(!Pt.test(nn)){yield errors_Create(Xn.IntersectUnevaluatedProperties,Wt,`${en}/${nn}`,tn)}}}if(typeof Wt.unevaluatedProperties==="object"){const nn=new RegExp(keyof_property_keys_KeyOfPattern(Wt));for(const an of Object.getOwnPropertyNames(tn)){if(!nn.test(an)){const nn=errors_Visit(Wt.unevaluatedProperties,Pt,`${en}/${an}`,tn[an]).next();if(!nn.done)yield nn.value}}}}function*FromIterator(Wt,Pt,en,tn){if(!guard_IsIterator(tn))yield errors_Create(Xn.Iterator,Wt,en,tn)}function*errors_FromLiteral(Wt,Pt,en,tn){if(!(tn===Wt.const))yield errors_Create(Xn.Literal,Wt,en,tn)}function*FromNever(Wt,Pt,en,tn){yield errors_Create(Xn.Never,Wt,en,tn)}function*FromNot(Wt,Pt,en,tn){if(errors_Visit(Wt.not,Pt,en,tn).next().done===true)yield errors_Create(Xn.Not,Wt,en,tn)}function*FromNull(Wt,Pt,en,tn){if(!guard_IsNull(tn))yield errors_Create(Xn.Null,Wt,en,tn)}function*FromNumber(Wt,Pt,en,tn){if(!sn.IsNumberLike(tn))return yield errors_Create(Xn.Number,Wt,en,tn);if(IsDefined(Wt.exclusiveMaximum)&&!(tnWt.exclusiveMinimum)){yield errors_Create(Xn.NumberExclusiveMinimum,Wt,en,tn)}if(IsDefined(Wt.maximum)&&!(tn<=Wt.maximum)){yield errors_Create(Xn.NumberMaximum,Wt,en,tn)}if(IsDefined(Wt.minimum)&&!(tn>=Wt.minimum)){yield errors_Create(Xn.NumberMinimum,Wt,en,tn)}if(IsDefined(Wt.multipleOf)&&!(tn%Wt.multipleOf===0)){yield errors_Create(Xn.NumberMultipleOf,Wt,en,tn)}}function*FromObject(Wt,Pt,en,tn){if(!sn.IsObjectLike(tn))return yield errors_Create(Xn.Object,Wt,en,tn);if(IsDefined(Wt.minProperties)&&!(Object.getOwnPropertyNames(tn).length>=Wt.minProperties)){yield errors_Create(Xn.ObjectMinProperties,Wt,en,tn)}if(IsDefined(Wt.maxProperties)&&!(Object.getOwnPropertyNames(tn).length<=Wt.maxProperties)){yield errors_Create(Xn.ObjectMaxProperties,Wt,en,tn)}const nn=Array.isArray(Wt.required)?Wt.required:[];const an=Object.getOwnPropertyNames(Wt.properties);const rn=Object.getOwnPropertyNames(tn);for(const Pt of nn){if(rn.includes(Pt))continue;yield errors_Create(Xn.ObjectRequiredProperty,Wt.properties[Pt],`${en}/${EscapeKey(Pt)}`,undefined)}if(Wt.additionalProperties===false){for(const Pt of rn){if(!an.includes(Pt)){yield errors_Create(Xn.ObjectAdditionalProperties,Wt,`${en}/${EscapeKey(Pt)}`,tn[Pt])}}}if(typeof Wt.additionalProperties==="object"){for(const nn of rn){if(an.includes(nn))continue;yield*errors_Visit(Wt.additionalProperties,Pt,`${en}/${EscapeKey(nn)}`,tn[nn])}}for(const nn of an){const an=Wt.properties[nn];if(Wt.required&&Wt.required.includes(nn)){yield*errors_Visit(an,Pt,`${en}/${EscapeKey(nn)}`,tn[nn]);if(extends_undefined_ExtendsUndefinedCheck(Wt)&&!(nn in tn)){yield errors_Create(Xn.ObjectRequiredProperty,an,`${en}/${EscapeKey(nn)}`,undefined)}}else{if(sn.IsExactOptionalProperty(tn,nn)){yield*errors_Visit(an,Pt,`${en}/${EscapeKey(nn)}`,tn[nn])}}}}function*FromPromise(Wt,Pt,en,tn){if(!guard_IsPromise(tn))yield errors_Create(Xn.Promise,Wt,en,tn)}function*FromRecord(Wt,Pt,en,tn){if(!sn.IsRecordLike(tn))return yield errors_Create(Xn.Object,Wt,en,tn);if(IsDefined(Wt.minProperties)&&!(Object.getOwnPropertyNames(tn).length>=Wt.minProperties)){yield errors_Create(Xn.ObjectMinProperties,Wt,en,tn)}if(IsDefined(Wt.maxProperties)&&!(Object.getOwnPropertyNames(tn).length<=Wt.maxProperties)){yield errors_Create(Xn.ObjectMaxProperties,Wt,en,tn)}const[nn,an]=Object.entries(Wt.patternProperties)[0];const rn=new RegExp(nn);for(const[Wt,nn]of Object.entries(tn)){if(rn.test(Wt))yield*errors_Visit(an,Pt,`${en}/${EscapeKey(Wt)}`,nn)}if(typeof Wt.additionalProperties==="object"){for(const[nn,an]of Object.entries(tn)){if(!rn.test(nn))yield*errors_Visit(Wt.additionalProperties,Pt,`${en}/${EscapeKey(nn)}`,an)}}if(Wt.additionalProperties===false){for(const[Pt,nn]of Object.entries(tn)){if(rn.test(Pt))continue;return yield errors_Create(Xn.ObjectAdditionalProperties,Wt,`${en}/${EscapeKey(Pt)}`,nn)}}}function*FromRef(Wt,Pt,en,tn){yield*errors_Visit(deref_Deref(Wt,Pt),Pt,en,tn)}function*FromRegExp(Wt,Pt,en,tn){if(!guard_IsString(tn))return yield errors_Create(Xn.String,Wt,en,tn);if(IsDefined(Wt.minLength)&&!(tn.length>=Wt.minLength)){yield errors_Create(Xn.StringMinLength,Wt,en,tn)}if(IsDefined(Wt.maxLength)&&!(tn.length<=Wt.maxLength)){yield errors_Create(Xn.StringMaxLength,Wt,en,tn)}const nn=new RegExp(Wt.source,Wt.flags);if(!nn.test(tn)){return yield errors_Create(Xn.RegExp,Wt,en,tn)}}function*FromString(Wt,Pt,en,tn){if(!guard_IsString(tn))return yield errors_Create(Xn.String,Wt,en,tn);if(IsDefined(Wt.minLength)&&!(tn.length>=Wt.minLength)){yield errors_Create(Xn.StringMinLength,Wt,en,tn)}if(IsDefined(Wt.maxLength)&&!(tn.length<=Wt.maxLength)){yield errors_Create(Xn.StringMaxLength,Wt,en,tn)}if(guard_IsString(Wt.pattern)){const Pt=new RegExp(Wt.pattern);if(!Pt.test(tn)){yield errors_Create(Xn.StringPattern,Wt,en,tn)}}if(guard_IsString(Wt.format)){if(!Has(Wt.format)){yield errors_Create(Xn.StringFormatUnknown,Wt,en,tn)}else{const Pt=Get(Wt.format);if(!Pt(tn)){yield errors_Create(Xn.StringFormat,Wt,en,tn)}}}}function*FromSymbol(Wt,Pt,en,tn){if(!guard_IsSymbol(tn))yield errors_Create(Xn.Symbol,Wt,en,tn)}function*errors_FromTemplateLiteral(Wt,Pt,en,tn){if(!guard_IsString(tn))return yield errors_Create(Xn.String,Wt,en,tn);const nn=new RegExp(Wt.pattern);if(!nn.test(tn)){yield errors_Create(Xn.StringPattern,Wt,en,tn)}}function*FromThis(Wt,Pt,en,tn){yield*errors_Visit(deref_Deref(Wt,Pt),Pt,en,tn)}function*errors_FromTuple(Wt,Pt,en,tn){if(!guard_IsArray(tn))return yield errors_Create(Xn.Tuple,Wt,en,tn);if(Wt.items===undefined&&!(tn.length===0)){return yield errors_Create(Xn.TupleLength,Wt,en,tn)}if(!(tn.length===Wt.maxItems)){return yield errors_Create(Xn.TupleLength,Wt,en,tn)}if(!Wt.items){return}for(let nn=0;nn0){yield errors_Create(Xn.Union,Wt,en,tn)}}function*FromUint8Array(Wt,Pt,en,tn){if(!guard_IsUint8Array(tn))return yield errors_Create(Xn.Uint8Array,Wt,en,tn);if(IsDefined(Wt.maxByteLength)&&!(tn.length<=Wt.maxByteLength)){yield errors_Create(Xn.Uint8ArrayMaxByteLength,Wt,en,tn)}if(IsDefined(Wt.minByteLength)&&!(tn.length>=Wt.minByteLength)){yield errors_Create(Xn.Uint8ArrayMinByteLength,Wt,en,tn)}}function*FromUnknown(Wt,Pt,en,tn){}function*FromVoid(Wt,Pt,en,tn){if(!sn.IsVoidLike(tn))yield errors_Create(Xn.Void,Wt,en,tn)}function*FromKind(Wt,Pt,en,tn){const nn=type_Get(Wt[bn]);if(!nn(Wt,tn))yield errors_Create(Xn.Kind,Wt,en,tn)}function*errors_Visit(Wt,Pt,en,tn){const nn=IsDefined(Wt.$id)?[...Pt,Wt]:Pt;const an=Wt;switch(an[bn]){case"Any":return yield*FromAny(an,nn,en,tn);case"Array":return yield*errors_FromArray(an,nn,en,tn);case"AsyncIterator":return yield*FromAsyncIterator(an,nn,en,tn);case"BigInt":return yield*FromBigInt(an,nn,en,tn);case"Boolean":return yield*FromBoolean(an,nn,en,tn);case"Constructor":return yield*FromConstructor(an,nn,en,tn);case"Date":return yield*FromDate(an,nn,en,tn);case"Function":return yield*FromFunction(an,nn,en,tn);case"Integer":return yield*FromInteger(an,nn,en,tn);case"Intersect":return yield*errors_FromIntersect(an,nn,en,tn);case"Iterator":return yield*FromIterator(an,nn,en,tn);case"Literal":return yield*errors_FromLiteral(an,nn,en,tn);case"Never":return yield*FromNever(an,nn,en,tn);case"Not":return yield*FromNot(an,nn,en,tn);case"Null":return yield*FromNull(an,nn,en,tn);case"Number":return yield*FromNumber(an,nn,en,tn);case"Object":return yield*FromObject(an,nn,en,tn);case"Promise":return yield*FromPromise(an,nn,en,tn);case"Record":return yield*FromRecord(an,nn,en,tn);case"Ref":return yield*FromRef(an,nn,en,tn);case"RegExp":return yield*FromRegExp(an,nn,en,tn);case"String":return yield*FromString(an,nn,en,tn);case"Symbol":return yield*FromSymbol(an,nn,en,tn);case"TemplateLiteral":return yield*errors_FromTemplateLiteral(an,nn,en,tn);case"This":return yield*FromThis(an,nn,en,tn);case"Tuple":return yield*errors_FromTuple(an,nn,en,tn);case"Undefined":return yield*FromUndefined(an,nn,en,tn);case"Union":return yield*errors_FromUnion(an,nn,en,tn);case"Uint8Array":return yield*FromUint8Array(an,nn,en,tn);case"Unknown":return yield*FromUnknown(an,nn,en,tn);case"Void":return yield*FromVoid(an,nn,en,tn);default:if(!type_Has(an[bn]))throw new ValueErrorsUnknownTypeError(Wt);return yield*FromKind(an,nn,en,tn)}}function Errors(...Wt){const Pt=Wt.length===3?errors_Visit(Wt[0],Wt[1],"",Wt[2]):errors_Visit(Wt[0],[],"",Wt[1]);return new ValueErrorIterator(Pt)}function any_Any(Wt={}){return{...Wt,[bn]:"Any"}}function unknown_Unknown(Wt={}){return{...Wt,[bn]:"Unknown"}}class ExtendsResolverError extends TypeBoxError{}var kn;(function(Wt){Wt[Wt["Union"]=0]="Union";Wt[Wt["True"]=1]="True";Wt[Wt["False"]=2]="False"})(kn||(kn={}));function IntoBooleanResult(Wt){return Wt===kn.False?Wt:kn.True}function Throw(Wt){throw new ExtendsResolverError(Wt)}function IsStructuralRight(Wt){return IsNever(Wt)||IsIntersect(Wt)||IsUnion(Wt)||IsUnknown(Wt)||IsAny(Wt)}function StructuralRight(Wt,Pt){return IsNever(Pt)?FromNeverRight(Wt,Pt):IsIntersect(Pt)?FromIntersectRight(Wt,Pt):IsUnion(Pt)?FromUnionRight(Wt,Pt):IsUnknown(Pt)?FromUnknownRight(Wt,Pt):IsAny(Pt)?FromAnyRight(Wt,Pt):Throw("StructuralRight")}function FromAnyRight(Wt,Pt){return kn.True}function extends_check_FromAny(Wt,Pt){return IsIntersect(Pt)?FromIntersectRight(Wt,Pt):IsUnion(Pt)&&Pt.anyOf.some((Wt=>IsAny(Wt)||IsUnknown(Wt)))?kn.True:IsUnion(Pt)?kn.Union:IsUnknown(Pt)?kn.True:IsAny(Pt)?kn.True:kn.Union}function FromArrayRight(Wt,Pt){return IsUnknown(Wt)?kn.False:IsAny(Wt)?kn.Union:IsNever(Wt)?kn.True:kn.False}function extends_check_FromArray(Wt,Pt){return type_IsObject(Pt)&&IsObjectArrayLike(Pt)?kn.True:IsStructuralRight(Pt)?StructuralRight(Wt,Pt):!type_IsArray(Pt)?kn.False:IntoBooleanResult(extends_check_Visit(Wt.items,Pt.items))}function extends_check_FromAsyncIterator(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):!type_IsAsyncIterator(Pt)?kn.False:IntoBooleanResult(extends_check_Visit(Wt.items,Pt.items))}function extends_check_FromBigInt(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):IsRecord(Pt)?FromRecordRight(Wt,Pt):type_IsBigInt(Pt)?kn.True:kn.False}function FromBooleanRight(Wt,Pt){return IsLiteralBoolean(Wt)?kn.True:type_IsBoolean(Wt)?kn.True:kn.False}function extends_check_FromBoolean(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):IsRecord(Pt)?FromRecordRight(Wt,Pt):type_IsBoolean(Pt)?kn.True:kn.False}function extends_check_FromConstructor(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):!IsConstructor(Pt)?kn.False:Wt.parameters.length>Pt.parameters.length?kn.False:!Wt.parameters.every(((Wt,en)=>IntoBooleanResult(extends_check_Visit(Pt.parameters[en],Wt))===kn.True))?kn.False:IntoBooleanResult(extends_check_Visit(Wt.returns,Pt.returns))}function extends_check_FromDate(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):IsRecord(Pt)?FromRecordRight(Wt,Pt):type_IsDate(Pt)?kn.True:kn.False}function extends_check_FromFunction(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):!type_IsFunction(Pt)?kn.False:Wt.parameters.length>Pt.parameters.length?kn.False:!Wt.parameters.every(((Wt,en)=>IntoBooleanResult(extends_check_Visit(Pt.parameters[en],Wt))===kn.True))?kn.False:IntoBooleanResult(extends_check_Visit(Wt.returns,Pt.returns))}function FromIntegerRight(Wt,Pt){return IsLiteral(Wt)&&value_IsNumber(Wt.const)?kn.True:type_IsNumber(Wt)||type_IsInteger(Wt)?kn.True:kn.False}function extends_check_FromInteger(Wt,Pt){return type_IsInteger(Pt)||type_IsNumber(Pt)?kn.True:IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):IsRecord(Pt)?FromRecordRight(Wt,Pt):kn.False}function FromIntersectRight(Wt,Pt){return Pt.allOf.every((Pt=>extends_check_Visit(Wt,Pt)===kn.True))?kn.True:kn.False}function extends_check_FromIntersect(Wt,Pt){return Wt.allOf.some((Wt=>extends_check_Visit(Wt,Pt)===kn.True))?kn.True:kn.False}function extends_check_FromIterator(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):!type_IsIterator(Pt)?kn.False:IntoBooleanResult(extends_check_Visit(Wt.items,Pt.items))}function extends_check_FromLiteral(Wt,Pt){return IsLiteral(Pt)&&Pt.const===Wt.const?kn.True:IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):IsRecord(Pt)?FromRecordRight(Wt,Pt):type_IsString(Pt)?FromStringRight(Wt,Pt):type_IsNumber(Pt)?FromNumberRight(Wt,Pt):type_IsInteger(Pt)?FromIntegerRight(Wt,Pt):type_IsBoolean(Pt)?FromBooleanRight(Wt,Pt):kn.False}function FromNeverRight(Wt,Pt){return kn.False}function extends_check_FromNever(Wt,Pt){return kn.True}function UnwrapTNot(Wt){let[Pt,en]=[Wt,0];while(true){if(!IsNot(Pt))break;Pt=Pt.not;en+=1}return en%2===0?Pt:unknown_Unknown()}function extends_check_FromNot(Wt,Pt){return IsNot(Wt)?extends_check_Visit(UnwrapTNot(Wt),Pt):IsNot(Pt)?extends_check_Visit(Wt,UnwrapTNot(Pt)):Throw("Invalid fallthrough for Not")}function extends_check_FromNull(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):IsRecord(Pt)?FromRecordRight(Wt,Pt):type_IsNull(Pt)?kn.True:kn.False}function FromNumberRight(Wt,Pt){return IsLiteralNumber(Wt)?kn.True:type_IsNumber(Wt)||type_IsInteger(Wt)?kn.True:kn.False}function extends_check_FromNumber(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):IsRecord(Pt)?FromRecordRight(Wt,Pt):type_IsInteger(Pt)||type_IsNumber(Pt)?kn.True:kn.False}function IsObjectPropertyCount(Wt,Pt){return Object.getOwnPropertyNames(Wt.properties).length===Pt}function IsObjectStringLike(Wt){return IsObjectArrayLike(Wt)}function IsObjectSymbolLike(Wt){return IsObjectPropertyCount(Wt,0)||IsObjectPropertyCount(Wt,1)&&"description"in Wt.properties&&IsUnion(Wt.properties.description)&&Wt.properties.description.anyOf.length===2&&(type_IsString(Wt.properties.description.anyOf[0])&&type_IsUndefined(Wt.properties.description.anyOf[1])||type_IsString(Wt.properties.description.anyOf[1])&&type_IsUndefined(Wt.properties.description.anyOf[0]))}function IsObjectNumberLike(Wt){return IsObjectPropertyCount(Wt,0)}function IsObjectBooleanLike(Wt){return IsObjectPropertyCount(Wt,0)}function IsObjectBigIntLike(Wt){return IsObjectPropertyCount(Wt,0)}function IsObjectDateLike(Wt){return IsObjectPropertyCount(Wt,0)}function IsObjectUint8ArrayLike(Wt){return IsObjectArrayLike(Wt)}function IsObjectFunctionLike(Wt){const Pt=number_Number();return IsObjectPropertyCount(Wt,0)||IsObjectPropertyCount(Wt,1)&&"length"in Wt.properties&&IntoBooleanResult(extends_check_Visit(Wt.properties["length"],Pt))===kn.True}function IsObjectConstructorLike(Wt){return IsObjectPropertyCount(Wt,0)}function IsObjectArrayLike(Wt){const Pt=number_Number();return IsObjectPropertyCount(Wt,0)||IsObjectPropertyCount(Wt,1)&&"length"in Wt.properties&&IntoBooleanResult(extends_check_Visit(Wt.properties["length"],Pt))===kn.True}function IsObjectPromiseLike(Wt){const Pt=function_Function([any_Any()],any_Any());return IsObjectPropertyCount(Wt,0)||IsObjectPropertyCount(Wt,1)&&"then"in Wt.properties&&IntoBooleanResult(extends_check_Visit(Wt.properties["then"],Pt))===kn.True}function Property(Wt,Pt){return extends_check_Visit(Wt,Pt)===kn.False?kn.False:IsOptional(Wt)&&!IsOptional(Pt)?kn.False:kn.True}function FromObjectRight(Wt,Pt){return IsUnknown(Wt)?kn.False:IsAny(Wt)?kn.Union:IsNever(Wt)||IsLiteralString(Wt)&&IsObjectStringLike(Pt)||IsLiteralNumber(Wt)&&IsObjectNumberLike(Pt)||IsLiteralBoolean(Wt)&&IsObjectBooleanLike(Pt)||type_IsSymbol(Wt)&&IsObjectSymbolLike(Pt)||type_IsBigInt(Wt)&&IsObjectBigIntLike(Pt)||type_IsString(Wt)&&IsObjectStringLike(Pt)||type_IsSymbol(Wt)&&IsObjectSymbolLike(Pt)||type_IsNumber(Wt)&&IsObjectNumberLike(Pt)||type_IsInteger(Wt)&&IsObjectNumberLike(Pt)||type_IsBoolean(Wt)&&IsObjectBooleanLike(Pt)||type_IsUint8Array(Wt)&&IsObjectUint8ArrayLike(Pt)||type_IsDate(Wt)&&IsObjectDateLike(Pt)||IsConstructor(Wt)&&IsObjectConstructorLike(Pt)||type_IsFunction(Wt)&&IsObjectFunctionLike(Pt)?kn.True:IsRecord(Wt)&&type_IsString(RecordKey(Wt))?(()=>Pt[mn]==="Record"?kn.True:kn.False)():IsRecord(Wt)&&type_IsNumber(RecordKey(Wt))?(()=>IsObjectPropertyCount(Pt,0)?kn.True:kn.False)():kn.False}function extends_check_FromObject(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):IsRecord(Pt)?FromRecordRight(Wt,Pt):!type_IsObject(Pt)?kn.False:(()=>{for(const en of Object.getOwnPropertyNames(Pt.properties)){if(!(en in Wt.properties)&&!IsOptional(Pt.properties[en])){return kn.False}if(IsOptional(Pt.properties[en])){return kn.True}if(Property(Wt.properties[en],Pt.properties[en])===kn.False){return kn.False}}return kn.True})()}function extends_check_FromPromise(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)&&IsObjectPromiseLike(Pt)?kn.True:!type_IsPromise(Pt)?kn.False:IntoBooleanResult(extends_check_Visit(Wt.item,Pt.item))}function RecordKey(Wt){return gn in Wt.patternProperties?number_Number():yn in Wt.patternProperties?string_String():Throw("Unknown record key pattern")}function RecordValue(Wt){return gn in Wt.patternProperties?Wt.patternProperties[gn]:yn in Wt.patternProperties?Wt.patternProperties[yn]:Throw("Unable to get record value schema")}function FromRecordRight(Wt,Pt){const[en,tn]=[RecordKey(Pt),RecordValue(Pt)];return IsLiteralString(Wt)&&type_IsNumber(en)&&IntoBooleanResult(extends_check_Visit(Wt,tn))===kn.True?kn.True:type_IsUint8Array(Wt)&&type_IsNumber(en)?extends_check_Visit(Wt,tn):type_IsString(Wt)&&type_IsNumber(en)?extends_check_Visit(Wt,tn):type_IsArray(Wt)&&type_IsNumber(en)?extends_check_Visit(Wt,tn):type_IsObject(Wt)?(()=>{for(const Pt of Object.getOwnPropertyNames(Wt.properties)){if(Property(tn,Wt.properties[Pt])===kn.False){return kn.False}}return kn.True})():kn.False}function extends_check_FromRecord(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):!IsRecord(Pt)?kn.False:extends_check_Visit(RecordValue(Wt),RecordValue(Pt))}function extends_check_FromRegExp(Wt,Pt){const en=type_IsRegExp(Wt)?string_String():Wt;const tn=type_IsRegExp(Pt)?string_String():Pt;return extends_check_Visit(en,tn)}function FromStringRight(Wt,Pt){return IsLiteral(Wt)&&value_IsString(Wt.const)?kn.True:type_IsString(Wt)?kn.True:kn.False}function extends_check_FromString(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):IsRecord(Pt)?FromRecordRight(Wt,Pt):type_IsString(Pt)?kn.True:kn.False}function extends_check_FromSymbol(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):IsRecord(Pt)?FromRecordRight(Wt,Pt):type_IsSymbol(Pt)?kn.True:kn.False}function extends_check_FromTemplateLiteral(Wt,Pt){return IsTemplateLiteral(Wt)?extends_check_Visit(TemplateLiteralToUnion(Wt),Pt):IsTemplateLiteral(Pt)?extends_check_Visit(Wt,TemplateLiteralToUnion(Pt)):Throw("Invalid fallthrough for TemplateLiteral")}function IsArrayOfTuple(Wt,Pt){return type_IsArray(Pt)&&Wt.items!==undefined&&Wt.items.every((Wt=>extends_check_Visit(Wt,Pt.items)===kn.True))}function FromTupleRight(Wt,Pt){return IsNever(Wt)?kn.True:IsUnknown(Wt)?kn.False:IsAny(Wt)?kn.Union:kn.False}function extends_check_FromTuple(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)&&IsObjectArrayLike(Pt)?kn.True:type_IsArray(Pt)&&IsArrayOfTuple(Wt,Pt)?kn.True:!IsTuple(Pt)?kn.False:value_IsUndefined(Wt.items)&&!value_IsUndefined(Pt.items)||!value_IsUndefined(Wt.items)&&value_IsUndefined(Pt.items)?kn.False:value_IsUndefined(Wt.items)&&!value_IsUndefined(Pt.items)?kn.True:Wt.items.every(((Wt,en)=>extends_check_Visit(Wt,Pt.items[en])===kn.True))?kn.True:kn.False}function extends_check_FromUint8Array(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):IsRecord(Pt)?FromRecordRight(Wt,Pt):type_IsUint8Array(Pt)?kn.True:kn.False}function extends_check_FromUndefined(Wt,Pt){return IsStructuralRight(Pt)?StructuralRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):IsRecord(Pt)?FromRecordRight(Wt,Pt):IsVoid(Pt)?FromVoidRight(Wt,Pt):type_IsUndefined(Pt)?kn.True:kn.False}function FromUnionRight(Wt,Pt){return Pt.anyOf.some((Pt=>extends_check_Visit(Wt,Pt)===kn.True))?kn.True:kn.False}function extends_check_FromUnion(Wt,Pt){return Wt.anyOf.every((Wt=>extends_check_Visit(Wt,Pt)===kn.True))?kn.True:kn.False}function FromUnknownRight(Wt,Pt){return kn.True}function extends_check_FromUnknown(Wt,Pt){return IsNever(Pt)?FromNeverRight(Wt,Pt):IsIntersect(Pt)?FromIntersectRight(Wt,Pt):IsUnion(Pt)?FromUnionRight(Wt,Pt):IsAny(Pt)?FromAnyRight(Wt,Pt):type_IsString(Pt)?FromStringRight(Wt,Pt):type_IsNumber(Pt)?FromNumberRight(Wt,Pt):type_IsInteger(Pt)?FromIntegerRight(Wt,Pt):type_IsBoolean(Pt)?FromBooleanRight(Wt,Pt):type_IsArray(Pt)?FromArrayRight(Wt,Pt):IsTuple(Pt)?FromTupleRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):IsUnknown(Pt)?kn.True:kn.False}function FromVoidRight(Wt,Pt){return type_IsUndefined(Wt)?kn.True:type_IsUndefined(Wt)?kn.True:kn.False}function extends_check_FromVoid(Wt,Pt){return IsIntersect(Pt)?FromIntersectRight(Wt,Pt):IsUnion(Pt)?FromUnionRight(Wt,Pt):IsUnknown(Pt)?FromUnknownRight(Wt,Pt):IsAny(Pt)?FromAnyRight(Wt,Pt):type_IsObject(Pt)?FromObjectRight(Wt,Pt):IsVoid(Pt)?kn.True:kn.False}function extends_check_Visit(Wt,Pt){return IsTemplateLiteral(Wt)||IsTemplateLiteral(Pt)?extends_check_FromTemplateLiteral(Wt,Pt):type_IsRegExp(Wt)||type_IsRegExp(Pt)?extends_check_FromRegExp(Wt,Pt):IsNot(Wt)||IsNot(Pt)?extends_check_FromNot(Wt,Pt):IsAny(Wt)?extends_check_FromAny(Wt,Pt):type_IsArray(Wt)?extends_check_FromArray(Wt,Pt):type_IsBigInt(Wt)?extends_check_FromBigInt(Wt,Pt):type_IsBoolean(Wt)?extends_check_FromBoolean(Wt,Pt):type_IsAsyncIterator(Wt)?extends_check_FromAsyncIterator(Wt,Pt):IsConstructor(Wt)?extends_check_FromConstructor(Wt,Pt):type_IsDate(Wt)?extends_check_FromDate(Wt,Pt):type_IsFunction(Wt)?extends_check_FromFunction(Wt,Pt):type_IsInteger(Wt)?extends_check_FromInteger(Wt,Pt):IsIntersect(Wt)?extends_check_FromIntersect(Wt,Pt):type_IsIterator(Wt)?extends_check_FromIterator(Wt,Pt):IsLiteral(Wt)?extends_check_FromLiteral(Wt,Pt):IsNever(Wt)?extends_check_FromNever(Wt,Pt):type_IsNull(Wt)?extends_check_FromNull(Wt,Pt):type_IsNumber(Wt)?extends_check_FromNumber(Wt,Pt):type_IsObject(Wt)?extends_check_FromObject(Wt,Pt):IsRecord(Wt)?extends_check_FromRecord(Wt,Pt):type_IsString(Wt)?extends_check_FromString(Wt,Pt):type_IsSymbol(Wt)?extends_check_FromSymbol(Wt,Pt):IsTuple(Wt)?extends_check_FromTuple(Wt,Pt):type_IsPromise(Wt)?extends_check_FromPromise(Wt,Pt):type_IsUint8Array(Wt)?extends_check_FromUint8Array(Wt,Pt):type_IsUndefined(Wt)?extends_check_FromUndefined(Wt,Pt):IsUnion(Wt)?extends_check_FromUnion(Wt,Pt):IsUnknown(Wt)?extends_check_FromUnknown(Wt,Pt):IsVoid(Wt)?extends_check_FromVoid(Wt,Pt):Throw(`Unknown left type operand '${Wt[bn]}'`)}function ExtendsCheck(Wt,Pt){return extends_check_Visit(Wt,Pt)}function extends_from_mapped_result_FromProperties(Wt,Pt,en,tn,nn){return globalThis.Object.getOwnPropertyNames(Wt).reduce(((an,rn)=>({...an,[rn]:extends_Extends(Wt[rn],Pt,en,tn,nn)})),{})}function extends_from_mapped_result_FromMappedResult(Wt,Pt,en,tn,nn){return extends_from_mapped_result_FromProperties(Wt.properties,Pt,en,tn,nn)}function ExtendsFromMappedResult(Wt,Pt,en,tn,nn){const an=extends_from_mapped_result_FromMappedResult(Wt,Pt,en,tn,nn);return MappedResult(an)}function ExtendsResolve(Wt,Pt,en,tn){const nn=ExtendsCheck(Wt,Pt);return nn===kn.Union?union_Union([en,tn]):nn===kn.True?en:tn}function extends_Extends(Wt,Pt,en,tn,nn={}){return IsMappedResult(Wt)?ExtendsFromMappedResult(Wt,Pt,en,tn,nn):IsMappedKey(Wt)?CloneType(ExtendsFromMappedKey(Wt,Pt,en,tn,nn)):CloneType(ExtendsResolve(Wt,Pt,en,tn),nn)}function FromPropertyKey(Wt,Pt,en,tn,nn){return{[Wt]:extends_Extends(literal_Literal(Wt),Pt,en,tn,nn)}}function FromPropertyKeys(Wt,Pt,en,tn,nn){return Wt.reduce(((Wt,an)=>({...Wt,...FromPropertyKey(an,Pt,en,tn,nn)})),{})}function extends_from_mapped_key_FromMappedKey(Wt,Pt,en,tn,nn){return FromPropertyKeys(Wt.keys,Pt,en,tn,nn)}function ExtendsFromMappedKey(Wt,Pt,en,tn,nn){const an=extends_from_mapped_key_FromMappedKey(Wt,Pt,en,tn,nn);return MappedResult(an)}class ValueCheckUnknownTypeError extends TypeBoxError{schema;constructor(Wt){super(`Unknown type`);this.schema=Wt}}function IsAnyOrUnknown(Wt){return Wt[bn]==="Any"||Wt[bn]==="Unknown"}function check_IsDefined(Wt){return Wt!==undefined}function check_FromAny(Wt,Pt,en){return true}function check_FromArray(Wt,Pt,en){if(!guard_IsArray(en))return false;if(check_IsDefined(Wt.minItems)&&!(en.length>=Wt.minItems)){return false}if(check_IsDefined(Wt.maxItems)&&!(en.length<=Wt.maxItems)){return false}if(!en.every((en=>check_Visit(Wt.items,Pt,en)))){return false}if(Wt.uniqueItems===true&&!function(){const Wt=new Set;for(const Pt of en){const en=hash_Hash(Pt);if(Wt.has(en)){return false}else{Wt.add(en)}}return true}()){return false}if(!(check_IsDefined(Wt.contains)||guard_IsNumber(Wt.minContains)||guard_IsNumber(Wt.maxContains))){return true}const tn=check_IsDefined(Wt.contains)?Wt.contains:never_Never();const nn=en.reduce(((Wt,en)=>check_Visit(tn,Pt,en)?Wt+1:Wt),0);if(nn===0){return false}if(guard_IsNumber(Wt.minContains)&&nnWt.maxContains){return false}return true}function check_FromAsyncIterator(Wt,Pt,en){return guard_IsAsyncIterator(en)}function check_FromBigInt(Wt,Pt,en){if(!guard_IsBigInt(en))return false;if(check_IsDefined(Wt.exclusiveMaximum)&&!(enWt.exclusiveMinimum)){return false}if(check_IsDefined(Wt.maximum)&&!(en<=Wt.maximum)){return false}if(check_IsDefined(Wt.minimum)&&!(en>=Wt.minimum)){return false}if(check_IsDefined(Wt.multipleOf)&&!(en%Wt.multipleOf===BigInt(0))){return false}return true}function check_FromBoolean(Wt,Pt,en){return guard_IsBoolean(en)}function check_FromConstructor(Wt,Pt,en){return check_Visit(Wt.returns,Pt,en.prototype)}function check_FromDate(Wt,Pt,en){if(!guard_IsDate(en))return false;if(check_IsDefined(Wt.exclusiveMaximumTimestamp)&&!(en.getTime()Wt.exclusiveMinimumTimestamp)){return false}if(check_IsDefined(Wt.maximumTimestamp)&&!(en.getTime()<=Wt.maximumTimestamp)){return false}if(check_IsDefined(Wt.minimumTimestamp)&&!(en.getTime()>=Wt.minimumTimestamp)){return false}if(check_IsDefined(Wt.multipleOfTimestamp)&&!(en.getTime()%Wt.multipleOfTimestamp===0)){return false}return true}function check_FromFunction(Wt,Pt,en){return guard_IsFunction(en)}function check_FromInteger(Wt,Pt,en){if(!guard_IsInteger(en)){return false}if(check_IsDefined(Wt.exclusiveMaximum)&&!(enWt.exclusiveMinimum)){return false}if(check_IsDefined(Wt.maximum)&&!(en<=Wt.maximum)){return false}if(check_IsDefined(Wt.minimum)&&!(en>=Wt.minimum)){return false}if(check_IsDefined(Wt.multipleOf)&&!(en%Wt.multipleOf===0)){return false}return true}function check_FromIntersect(Wt,Pt,en){const tn=Wt.allOf.every((Wt=>check_Visit(Wt,Pt,en)));if(Wt.unevaluatedProperties===false){const Pt=new RegExp(keyof_property_keys_KeyOfPattern(Wt));const nn=Object.getOwnPropertyNames(en).every((Wt=>Pt.test(Wt)));return tn&&nn}else if(type_IsSchema(Wt.unevaluatedProperties)){const nn=new RegExp(keyof_property_keys_KeyOfPattern(Wt));const an=Object.getOwnPropertyNames(en).every((tn=>nn.test(tn)||check_Visit(Wt.unevaluatedProperties,Pt,en[tn])));return tn&&an}else{return tn}}function check_FromIterator(Wt,Pt,en){return guard_IsIterator(en)}function check_FromLiteral(Wt,Pt,en){return en===Wt.const}function check_FromNever(Wt,Pt,en){return false}function check_FromNot(Wt,Pt,en){return!check_Visit(Wt.not,Pt,en)}function check_FromNull(Wt,Pt,en){return guard_IsNull(en)}function check_FromNumber(Wt,Pt,en){if(!sn.IsNumberLike(en))return false;if(check_IsDefined(Wt.exclusiveMaximum)&&!(enWt.exclusiveMinimum)){return false}if(check_IsDefined(Wt.minimum)&&!(en>=Wt.minimum)){return false}if(check_IsDefined(Wt.maximum)&&!(en<=Wt.maximum)){return false}if(check_IsDefined(Wt.multipleOf)&&!(en%Wt.multipleOf===0)){return false}return true}function check_FromObject(Wt,Pt,en){if(!sn.IsObjectLike(en))return false;if(check_IsDefined(Wt.minProperties)&&!(Object.getOwnPropertyNames(en).length>=Wt.minProperties)){return false}if(check_IsDefined(Wt.maxProperties)&&!(Object.getOwnPropertyNames(en).length<=Wt.maxProperties)){return false}const tn=Object.getOwnPropertyNames(Wt.properties);for(const nn of tn){const tn=Wt.properties[nn];if(Wt.required&&Wt.required.includes(nn)){if(!check_Visit(tn,Pt,en[nn])){return false}if((extends_undefined_ExtendsUndefinedCheck(tn)||IsAnyOrUnknown(tn))&&!(nn in en)){return false}}else{if(sn.IsExactOptionalProperty(en,nn)&&!check_Visit(tn,Pt,en[nn])){return false}}}if(Wt.additionalProperties===false){const Pt=Object.getOwnPropertyNames(en);if(Wt.required&&Wt.required.length===tn.length&&Pt.length===tn.length){return true}else{return Pt.every((Wt=>tn.includes(Wt)))}}else if(typeof Wt.additionalProperties==="object"){const nn=Object.getOwnPropertyNames(en);return nn.every((nn=>tn.includes(nn)||check_Visit(Wt.additionalProperties,Pt,en[nn])))}else{return true}}function check_FromPromise(Wt,Pt,en){return guard_IsPromise(en)}function check_FromRecord(Wt,Pt,en){if(!sn.IsRecordLike(en)){return false}if(check_IsDefined(Wt.minProperties)&&!(Object.getOwnPropertyNames(en).length>=Wt.minProperties)){return false}if(check_IsDefined(Wt.maxProperties)&&!(Object.getOwnPropertyNames(en).length<=Wt.maxProperties)){return false}const[tn,nn]=Object.entries(Wt.patternProperties)[0];const an=new RegExp(tn);const rn=Object.entries(en).every((([Wt,en])=>an.test(Wt)?check_Visit(nn,Pt,en):true));const In=typeof Wt.additionalProperties==="object"?Object.entries(en).every((([en,tn])=>!an.test(en)?check_Visit(Wt.additionalProperties,Pt,tn):true)):true;const on=Wt.additionalProperties===false?Object.getOwnPropertyNames(en).every((Wt=>an.test(Wt))):true;return rn&&In&&on}function check_FromRef(Wt,Pt,en){return check_Visit(deref_Deref(Wt,Pt),Pt,en)}function check_FromRegExp(Wt,Pt,en){const tn=new RegExp(Wt.source,Wt.flags);if(check_IsDefined(Wt.minLength)){if(!(en.length>=Wt.minLength))return false}if(check_IsDefined(Wt.maxLength)){if(!(en.length<=Wt.maxLength))return false}return tn.test(en)}function check_FromString(Wt,Pt,en){if(!guard_IsString(en)){return false}if(check_IsDefined(Wt.minLength)){if(!(en.length>=Wt.minLength))return false}if(check_IsDefined(Wt.maxLength)){if(!(en.length<=Wt.maxLength))return false}if(check_IsDefined(Wt.pattern)){const Pt=new RegExp(Wt.pattern);if(!Pt.test(en))return false}if(check_IsDefined(Wt.format)){if(!Has(Wt.format))return false;const Pt=Get(Wt.format);return Pt(en)}return true}function check_FromSymbol(Wt,Pt,en){return guard_IsSymbol(en)}function check_FromTemplateLiteral(Wt,Pt,en){return guard_IsString(en)&&new RegExp(Wt.pattern).test(en)}function check_FromThis(Wt,Pt,en){return check_Visit(deref_Deref(Wt,Pt),Pt,en)}function check_FromTuple(Wt,Pt,en){if(!guard_IsArray(en)){return false}if(Wt.items===undefined&&!(en.length===0)){return false}if(!(en.length===Wt.maxItems)){return false}if(!Wt.items){return true}for(let tn=0;tncheck_Visit(Wt,Pt,en)))}function check_FromUint8Array(Wt,Pt,en){if(!guard_IsUint8Array(en)){return false}if(check_IsDefined(Wt.maxByteLength)&&!(en.length<=Wt.maxByteLength)){return false}if(check_IsDefined(Wt.minByteLength)&&!(en.length>=Wt.minByteLength)){return false}return true}function check_FromUnknown(Wt,Pt,en){return true}function check_FromVoid(Wt,Pt,en){return sn.IsVoidLike(en)}function check_FromKind(Wt,Pt,en){if(!type_Has(Wt[bn]))return false;const tn=type_Get(Wt[bn]);return tn(Wt,en)}function check_Visit(Wt,Pt,en){const tn=check_IsDefined(Wt.$id)?[...Pt,Wt]:Pt;const nn=Wt;switch(nn[bn]){case"Any":return check_FromAny(nn,tn,en);case"Array":return check_FromArray(nn,tn,en);case"AsyncIterator":return check_FromAsyncIterator(nn,tn,en);case"BigInt":return check_FromBigInt(nn,tn,en);case"Boolean":return check_FromBoolean(nn,tn,en);case"Constructor":return check_FromConstructor(nn,tn,en);case"Date":return check_FromDate(nn,tn,en);case"Function":return check_FromFunction(nn,tn,en);case"Integer":return check_FromInteger(nn,tn,en);case"Intersect":return check_FromIntersect(nn,tn,en);case"Iterator":return check_FromIterator(nn,tn,en);case"Literal":return check_FromLiteral(nn,tn,en);case"Never":return check_FromNever(nn,tn,en);case"Not":return check_FromNot(nn,tn,en);case"Null":return check_FromNull(nn,tn,en);case"Number":return check_FromNumber(nn,tn,en);case"Object":return check_FromObject(nn,tn,en);case"Promise":return check_FromPromise(nn,tn,en);case"Record":return check_FromRecord(nn,tn,en);case"Ref":return check_FromRef(nn,tn,en);case"RegExp":return check_FromRegExp(nn,tn,en);case"String":return check_FromString(nn,tn,en);case"Symbol":return check_FromSymbol(nn,tn,en);case"TemplateLiteral":return check_FromTemplateLiteral(nn,tn,en);case"This":return check_FromThis(nn,tn,en);case"Tuple":return check_FromTuple(nn,tn,en);case"Undefined":return check_FromUndefined(nn,tn,en);case"Union":return check_FromUnion(nn,tn,en);case"Uint8Array":return check_FromUint8Array(nn,tn,en);case"Unknown":return check_FromUnknown(nn,tn,en);case"Void":return check_FromVoid(nn,tn,en);default:if(!type_Has(nn[bn]))throw new ValueCheckUnknownTypeError(nn);return check_FromKind(nn,tn,en)}}function check_Check(...Wt){return Wt.length===3?check_Visit(Wt[0],Wt[1],Wt[2]):check_Visit(Wt[0],[],Wt[1])}function clone_ObjectType(Wt){const Pt=[...Object.getOwnPropertyNames(Wt),...Object.getOwnPropertySymbols(Wt)];return Pt.reduce(((Pt,en)=>({...Pt,[en]:clone_Clone(Wt[en])})),{})}function clone_ArrayType(Wt){return Wt.map((Wt=>clone_Clone(Wt)))}function TypedArrayType(Wt){return Wt.slice()}function clone_DateType(Wt){return new Date(Wt.toISOString())}function ValueType(Wt){return Wt}function clone_Clone(Wt){if(guard_IsArray(Wt))return clone_ArrayType(Wt);if(guard_IsDate(Wt))return clone_DateType(Wt);if(guard_IsStandardObject(Wt))return clone_ObjectType(Wt);if(guard_IsTypedArray(Wt))return TypedArrayType(Wt);if(guard_IsValueType(Wt))return ValueType(Wt);throw new Error("ValueClone: Unable to clone value")}class ValueCreateError extends TypeBoxError{schema;constructor(Wt,Pt){super(Pt);this.schema=Wt}}function FromDefault(Wt){return typeof Wt==="function"?Wt:clone_Clone(Wt)}function create_FromAny(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{return{}}}function create_FromArray(Wt,Pt){if(Wt.uniqueItems===true&&!guard_HasPropertyKey(Wt,"default")){throw new ValueCreateError(Wt,"Array with the uniqueItems constraint requires a default value")}else if("contains"in Wt&&!guard_HasPropertyKey(Wt,"default")){throw new ValueCreateError(Wt,"Array with the contains constraint requires a default value")}else if("default"in Wt){return FromDefault(Wt.default)}else if(Wt.minItems!==undefined){return Array.from({length:Wt.minItems}).map((en=>create_Visit(Wt.items,Pt)))}else{return[]}}function create_FromAsyncIterator(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{return async function*(){}()}}function create_FromBigInt(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{return BigInt(0)}}function create_FromBoolean(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{return false}}function create_FromConstructor(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{const en=create_Visit(Wt.returns,Pt);if(typeof en==="object"&&!Array.isArray(en)){return class{constructor(){for(const[Wt,Pt]of Object.entries(en)){const en=this;en[Wt]=Pt}}}}else{return class{}}}}function create_FromDate(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else if(Wt.minimumTimestamp!==undefined){return new Date(Wt.minimumTimestamp)}else{return new Date}}function create_FromFunction(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{return()=>create_Visit(Wt.returns,Pt)}}function create_FromInteger(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else if(Wt.minimum!==undefined){return Wt.minimum}else{return 0}}function create_FromIntersect(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{const en=Wt.allOf.reduce(((Wt,en)=>{const tn=create_Visit(en,Pt);return typeof tn==="object"?{...Wt,...tn}:tn}),{});if(!check_Check(Wt,Pt,en))throw new ValueCreateError(Wt,"Intersect produced invalid value. Consider using a default value.");return en}}function create_FromIterator(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{return function*(){}()}}function create_FromLiteral(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{return Wt.const}}function create_FromNever(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{throw new ValueCreateError(Wt,"Never types cannot be created. Consider using a default value.")}}function create_FromNot(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{throw new ValueCreateError(Wt,"Not types must have a default value")}}function create_FromNull(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{return null}}function create_FromNumber(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else if(Wt.minimum!==undefined){return Wt.minimum}else{return 0}}function create_FromObject(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{const en=new Set(Wt.required);return FromDefault(Wt.default)||Object.entries(Wt.properties).reduce(((Wt,[tn,nn])=>en.has(tn)?{...Wt,[tn]:create_Visit(nn,Pt)}:{...Wt}),{})}}function create_FromPromise(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{return Promise.resolve(create_Visit(Wt.item,Pt))}}function create_FromRecord(Wt,Pt){const[en,tn]=Object.entries(Wt.patternProperties)[0];if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else if(!(en===yn||en===gn)){const Wt=en.slice(1,en.length-1).split("|");return Wt.reduce(((Wt,en)=>({...Wt,[en]:create_Visit(tn,Pt)})),{})}else{return{}}}function create_FromRef(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{return create_Visit(deref_Deref(Wt,Pt),Pt)}}function create_FromRegExp(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{throw new ValueCreateError(Wt,"RegExp types cannot be created. Consider using a default value.")}}function create_FromString(Wt,Pt){if(Wt.pattern!==undefined){if(!guard_HasPropertyKey(Wt,"default")){throw new ValueCreateError(Wt,"String types with patterns must specify a default value")}else{return FromDefault(Wt.default)}}else if(Wt.format!==undefined){if(!guard_HasPropertyKey(Wt,"default")){throw new ValueCreateError(Wt,"String types with formats must specify a default value")}else{return FromDefault(Wt.default)}}else{if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else if(Wt.minLength!==undefined){return Array.from({length:Wt.minLength}).map((()=>" ")).join("")}else{return""}}}function create_FromSymbol(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else if("value"in Wt){return Symbol.for(Wt.value)}else{return Symbol()}}function create_FromTemplateLiteral(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}if(!finite_IsTemplateLiteralFinite(Wt))throw new ValueCreateError(Wt,"Can only create template literals that produce a finite variants. Consider using a default value.");const en=generate_TemplateLiteralGenerate(Wt);return en[0]}function create_FromThis(Wt,Pt){if(Ln++>Jn)throw new ValueCreateError(Wt,"Cannot create recursive type as it appears possibly infinite. Consider using a default.");if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{return create_Visit(deref_Deref(Wt,Pt),Pt)}}function create_FromTuple(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}if(Wt.items===undefined){return[]}else{return Array.from({length:Wt.minItems}).map(((en,tn)=>create_Visit(Wt.items[tn],Pt)))}}function create_FromUndefined(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{return undefined}}function create_FromUnion(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else if(Wt.anyOf.length===0){throw new Error("ValueCreate.Union: Cannot create Union with zero variants")}else{return create_Visit(Wt.anyOf[0],Pt)}}function create_FromUint8Array(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else if(Wt.minByteLength!==undefined){return new Uint8Array(Wt.minByteLength)}else{return new Uint8Array(0)}}function create_FromUnknown(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{return{}}}function create_FromVoid(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{return void 0}}function create_FromKind(Wt,Pt){if(guard_HasPropertyKey(Wt,"default")){return FromDefault(Wt.default)}else{throw new Error("User defined types must specify a default value")}}function create_Visit(Wt,Pt){const en=guard_IsString(Wt.$id)?[...Pt,Wt]:Pt;const tn=Wt;switch(tn[bn]){case"Any":return create_FromAny(tn,en);case"Array":return create_FromArray(tn,en);case"AsyncIterator":return create_FromAsyncIterator(tn,en);case"BigInt":return create_FromBigInt(tn,en);case"Boolean":return create_FromBoolean(tn,en);case"Constructor":return create_FromConstructor(tn,en);case"Date":return create_FromDate(tn,en);case"Function":return create_FromFunction(tn,en);case"Integer":return create_FromInteger(tn,en);case"Intersect":return create_FromIntersect(tn,en);case"Iterator":return create_FromIterator(tn,en);case"Literal":return create_FromLiteral(tn,en);case"Never":return create_FromNever(tn,en);case"Not":return create_FromNot(tn,en);case"Null":return create_FromNull(tn,en);case"Number":return create_FromNumber(tn,en);case"Object":return create_FromObject(tn,en);case"Promise":return create_FromPromise(tn,en);case"Record":return create_FromRecord(tn,en);case"Ref":return create_FromRef(tn,en);case"RegExp":return create_FromRegExp(tn,en);case"String":return create_FromString(tn,en);case"Symbol":return create_FromSymbol(tn,en);case"TemplateLiteral":return create_FromTemplateLiteral(tn,en);case"This":return create_FromThis(tn,en);case"Tuple":return create_FromTuple(tn,en);case"Undefined":return create_FromUndefined(tn,en);case"Union":return create_FromUnion(tn,en);case"Uint8Array":return create_FromUint8Array(tn,en);case"Unknown":return create_FromUnknown(tn,en);case"Void":return create_FromVoid(tn,en);default:if(!type_Has(tn[bn]))throw new ValueCreateError(tn,"Unknown type");return create_FromKind(tn,en)}}const Jn=512;let Ln=0;function create_Create(...Wt){Ln=0;return Wt.length===2?create_Visit(Wt[0],Wt[1]):create_Visit(Wt[0],[])}class ValueCastError extends TypeBoxError{schema;constructor(Wt,Pt){super(Pt);this.schema=Wt}}function ScoreUnion(Wt,Pt,en){if(Wt[bn]==="Object"&&typeof en==="object"&&!guard_IsNull(en)){const tn=Wt;const nn=Object.getOwnPropertyNames(en);const an=Object.entries(tn.properties);const[rn,In]=[1/an.length,an.length];return an.reduce(((Wt,[tn,an])=>{const sn=an[bn]==="Literal"&&an.const===en[tn]?In:0;const on=check_Check(an,Pt,en[tn])?rn:0;const cn=nn.includes(tn)?rn:0;return Wt+(sn+on+cn)}),0)}else{return check_Check(Wt,Pt,en)?1:0}}function SelectUnion(Wt,Pt,en){let[tn,nn]=[Wt.anyOf[0],0];for(const an of Wt.anyOf){const Wt=ScoreUnion(an,Pt,en);if(Wt>nn){tn=an;nn=Wt}}return tn}function CastUnion(Wt,Pt,en){if("default"in Wt){return typeof en==="function"?Wt.default:clone_Clone(Wt.default)}else{const tn=SelectUnion(Wt,Pt,en);return Cast(tn,Pt,en)}}function DefaultClone(Wt,Pt,en){return check_Check(Wt,Pt,en)?clone_Clone(en):create_Create(Wt,Pt)}function Default(Wt,Pt,en){return check_Check(Wt,Pt,en)?en:create_Create(Wt,Pt)}function cast_FromArray(Wt,Pt,en){if(check_Check(Wt,Pt,en))return clone_Clone(en);const tn=guard_IsArray(en)?clone_Clone(en):create_Create(Wt,Pt);const nn=guard_IsNumber(Wt.minItems)&&tn.lengthnull))]:tn;const an=guard_IsNumber(Wt.maxItems)&&nn.length>Wt.maxItems?nn.slice(0,Wt.maxItems):nn;const rn=an.map((en=>cast_Visit(Wt.items,Pt,en)));if(Wt.uniqueItems!==true)return rn;const In=[...new Set(rn)];if(!check_Check(Wt,Pt,In))throw new ValueCastError(Wt,"Array cast produced invalid data due to uniqueItems constraint");return In}function cast_FromConstructor(Wt,Pt,en){if(check_Check(Wt,Pt,en))return create_Create(Wt,Pt);const tn=new Set(Wt.returns.required||[]);const result=function(){};for(const[nn,an]of Object.entries(Wt.returns.properties)){if(!tn.has(nn)&&en.prototype[nn]===undefined)continue;result.prototype[nn]=cast_Visit(an,Pt,en.prototype[nn])}return result}function cast_FromIntersect(Wt,Pt,en){const tn=create_Create(Wt,Pt);const nn=guard_IsStandardObject(tn)&&guard_IsStandardObject(en)?{...tn,...en}:en;return check_Check(Wt,Pt,nn)?nn:create_Create(Wt,Pt)}function cast_FromNever(Wt,Pt,en){throw new ValueCastError(Wt,"Never types cannot be cast")}function cast_FromObject(Wt,Pt,en){if(check_Check(Wt,Pt,en))return en;if(en===null||typeof en!=="object")return create_Create(Wt,Pt);const tn=new Set(Wt.required||[]);const nn={};for(const[an,rn]of Object.entries(Wt.properties)){if(!tn.has(an)&&en[an]===undefined)continue;nn[an]=cast_Visit(rn,Pt,en[an])}if(typeof Wt.additionalProperties==="object"){const tn=Object.getOwnPropertyNames(Wt.properties);for(const an of Object.getOwnPropertyNames(en)){if(tn.includes(an))continue;nn[an]=cast_Visit(Wt.additionalProperties,Pt,en[an])}}return nn}function cast_FromRecord(Wt,Pt,en){if(check_Check(Wt,Pt,en))return clone_Clone(en);if(en===null||typeof en!=="object"||Array.isArray(en)||en instanceof Date)return create_Create(Wt,Pt);const tn=Object.getOwnPropertyNames(Wt.patternProperties)[0];const nn=Wt.patternProperties[tn];const an={};for(const[Wt,tn]of Object.entries(en)){an[Wt]=cast_Visit(nn,Pt,tn)}return an}function cast_FromRef(Wt,Pt,en){return cast_Visit(deref_Deref(Wt,Pt),Pt,en)}function cast_FromThis(Wt,Pt,en){return cast_Visit(deref_Deref(Wt,Pt),Pt,en)}function cast_FromTuple(Wt,Pt,en){if(check_Check(Wt,Pt,en))return clone_Clone(en);if(!guard_IsArray(en))return create_Create(Wt,Pt);if(Wt.items===undefined)return[];return Wt.items.map(((Wt,tn)=>cast_Visit(Wt,Pt,en[tn])))}function cast_FromUnion(Wt,Pt,en){return check_Check(Wt,Pt,en)?clone_Clone(en):CastUnion(Wt,Pt,en)}function cast_Visit(Wt,Pt,en){const tn=guard_IsString(Wt.$id)?[...Pt,Wt]:Pt;const nn=Wt;switch(Wt[bn]){case"Array":return cast_FromArray(nn,tn,en);case"Constructor":return cast_FromConstructor(nn,tn,en);case"Intersect":return cast_FromIntersect(nn,tn,en);case"Never":return cast_FromNever(nn,tn,en);case"Object":return cast_FromObject(nn,tn,en);case"Record":return cast_FromRecord(nn,tn,en);case"Ref":return cast_FromRef(nn,tn,en);case"This":return cast_FromThis(nn,tn,en);case"Tuple":return cast_FromTuple(nn,tn,en);case"Union":return cast_FromUnion(nn,tn,en);case"Date":case"Symbol":case"Uint8Array":return DefaultClone(Wt,Pt,en);default:return Default(nn,tn,en)}}function Cast(...Wt){return Wt.length===3?cast_Visit(Wt[0],Wt[1],Wt[2]):cast_Visit(Wt[0],[],Wt[1])}function IsCheckable(Wt){return type_IsSchema(Wt)&&Wt[bn]!=="Unsafe"}function clean_FromArray(Wt,Pt,en){if(!guard_IsArray(en))return en;return en.map((en=>clean_Visit(Wt.items,Pt,en)))}function clean_FromIntersect(Wt,Pt,en){const tn=Wt.unevaluatedProperties;const nn=Wt.allOf.map((Wt=>clean_Visit(Wt,Pt,clone_Clone(en))));const an=nn.reduce(((Wt,Pt)=>guard_IsObject(Pt)?{...Wt,...Pt}:Pt),{});if(!guard_IsObject(en)||!guard_IsObject(an)||!type_IsSchema(tn))return an;const rn=keyof_property_keys_KeyOfPropertyKeys(Wt);for(const Wt of Object.getOwnPropertyNames(en)){if(rn.includes(Wt))continue;if(check_Check(tn,Pt,en[Wt])){an[Wt]=clean_Visit(tn,Pt,en[Wt])}}return an}function clean_FromObject(Wt,Pt,en){if(!guard_IsObject(en)||guard_IsArray(en))return en;const tn=Wt.additionalProperties;for(const nn of Object.getOwnPropertyNames(en)){if(nn in Wt.properties){en[nn]=clean_Visit(Wt.properties[nn],Pt,en[nn]);continue}if(type_IsSchema(tn)&&check_Check(tn,Pt,en[nn])){en[nn]=clean_Visit(tn,Pt,en[nn]);continue}delete en[nn]}return en}function clean_FromRecord(Wt,Pt,en){if(!guard_IsObject(en))return en;const tn=Wt.additionalProperties;const nn=Object.keys(en);const[an,rn]=Object.entries(Wt.patternProperties)[0];const In=new RegExp(an);for(const Wt of nn){if(In.test(Wt)){en[Wt]=clean_Visit(rn,Pt,en[Wt]);continue}if(type_IsSchema(tn)&&check_Check(tn,Pt,en[Wt])){en[Wt]=clean_Visit(tn,Pt,en[Wt]);continue}delete en[Wt]}return en}function clean_FromRef(Wt,Pt,en){return clean_Visit(deref_Deref(Wt,Pt),Pt,en)}function clean_FromThis(Wt,Pt,en){return clean_Visit(deref_Deref(Wt,Pt),Pt,en)}function clean_FromTuple(Wt,Pt,en){if(!guard_IsArray(en))return en;if(guard_IsUndefined(Wt.items))return[];const tn=Math.min(en.length,Wt.items.length);for(let nn=0;nntn?en.slice(0,tn):en}function clean_FromUnion(Wt,Pt,en){for(const tn of Wt.anyOf){if(IsCheckable(tn)&&check_Check(tn,Pt,en)){return clean_Visit(tn,Pt,en)}}return en}function clean_Visit(Wt,Pt,en){const tn=guard_IsString(Wt.$id)?[...Pt,Wt]:Pt;const nn=Wt;switch(nn[bn]){case"Array":return clean_FromArray(nn,tn,en);case"Intersect":return clean_FromIntersect(nn,tn,en);case"Object":return clean_FromObject(nn,tn,en);case"Record":return clean_FromRecord(nn,tn,en);case"Ref":return clean_FromRef(nn,tn,en);case"This":return clean_FromThis(nn,tn,en);case"Tuple":return clean_FromTuple(nn,tn,en);case"Union":return clean_FromUnion(nn,tn,en);default:return en}}function Clean(...Wt){return Wt.length===3?clean_Visit(Wt[0],Wt[1],Wt[2]):clean_Visit(Wt[0],[],Wt[1])}function IsStringNumeric(Wt){return guard_IsString(Wt)&&!isNaN(Wt)&&!isNaN(parseFloat(Wt))}function IsValueToString(Wt){return guard_IsBigInt(Wt)||guard_IsBoolean(Wt)||guard_IsNumber(Wt)}function IsValueTrue(Wt){return Wt===true||guard_IsNumber(Wt)&&Wt===1||guard_IsBigInt(Wt)&&Wt===BigInt("1")||guard_IsString(Wt)&&(Wt.toLowerCase()==="true"||Wt==="1")}function IsValueFalse(Wt){return Wt===false||guard_IsNumber(Wt)&&(Wt===0||Object.is(Wt,-0))||guard_IsBigInt(Wt)&&Wt===BigInt("0")||guard_IsString(Wt)&&(Wt.toLowerCase()==="false"||Wt==="0"||Wt==="-0")}function IsTimeStringWithTimeZone(Wt){return guard_IsString(Wt)&&/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i.test(Wt)}function IsTimeStringWithoutTimeZone(Wt){return guard_IsString(Wt)&&/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)?$/i.test(Wt)}function IsDateTimeStringWithTimeZone(Wt){return guard_IsString(Wt)&&/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i.test(Wt)}function IsDateTimeStringWithoutTimeZone(Wt){return guard_IsString(Wt)&&/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)?$/i.test(Wt)}function IsDateString(Wt){return guard_IsString(Wt)&&/^\d\d\d\d-[0-1]\d-[0-3]\d$/i.test(Wt)}function TryConvertLiteralString(Wt,Pt){const en=TryConvertString(Wt);return en===Pt?en:Wt}function TryConvertLiteralNumber(Wt,Pt){const en=TryConvertNumber(Wt);return en===Pt?en:Wt}function TryConvertLiteralBoolean(Wt,Pt){const en=TryConvertBoolean(Wt);return en===Pt?en:Wt}function TryConvertLiteral(Wt,Pt){return guard_IsString(Wt.const)?TryConvertLiteralString(Pt,Wt.const):guard_IsNumber(Wt.const)?TryConvertLiteralNumber(Pt,Wt.const):guard_IsBoolean(Wt.const)?TryConvertLiteralBoolean(Pt,Wt.const):clone_Clone(Pt)}function TryConvertBoolean(Wt){return IsValueTrue(Wt)?true:IsValueFalse(Wt)?false:Wt}function TryConvertBigInt(Wt){return IsStringNumeric(Wt)?BigInt(parseInt(Wt)):guard_IsNumber(Wt)?BigInt(Wt|0):IsValueFalse(Wt)?BigInt(0):IsValueTrue(Wt)?BigInt(1):Wt}function TryConvertString(Wt){return IsValueToString(Wt)?Wt.toString():guard_IsSymbol(Wt)&&Wt.description!==undefined?Wt.description.toString():Wt}function TryConvertNumber(Wt){return IsStringNumeric(Wt)?parseFloat(Wt):IsValueTrue(Wt)?1:IsValueFalse(Wt)?0:Wt}function TryConvertInteger(Wt){return IsStringNumeric(Wt)?parseInt(Wt):guard_IsNumber(Wt)?Wt|0:IsValueTrue(Wt)?1:IsValueFalse(Wt)?0:Wt}function TryConvertNull(Wt){return guard_IsString(Wt)&&Wt.toLowerCase()==="null"?null:Wt}function TryConvertUndefined(Wt){return guard_IsString(Wt)&&Wt==="undefined"?undefined:Wt}function TryConvertDate(Wt){return guard_IsDate(Wt)?Wt:guard_IsNumber(Wt)?new Date(Wt):IsValueTrue(Wt)?new Date(1):IsValueFalse(Wt)?new Date(0):IsStringNumeric(Wt)?new Date(parseInt(Wt)):IsTimeStringWithoutTimeZone(Wt)?new Date(`1970-01-01T${Wt}.000Z`):IsTimeStringWithTimeZone(Wt)?new Date(`1970-01-01T${Wt}`):IsDateTimeStringWithoutTimeZone(Wt)?new Date(`${Wt}.000Z`):IsDateTimeStringWithTimeZone(Wt)?new Date(Wt):IsDateString(Wt)?new Date(`${Wt}T00:00:00.000Z`):Wt}function convert_Default(Wt){return Wt}function convert_FromArray(Wt,Pt,en){const tn=guard_IsArray(en)?en:[en];return tn.map((en=>convert_Visit(Wt.items,Pt,en)))}function convert_FromBigInt(Wt,Pt,en){return TryConvertBigInt(en)}function convert_FromBoolean(Wt,Pt,en){return TryConvertBoolean(en)}function convert_FromDate(Wt,Pt,en){return TryConvertDate(en)}function convert_FromInteger(Wt,Pt,en){return TryConvertInteger(en)}function convert_FromIntersect(Wt,Pt,en){return Wt.allOf.reduce(((Wt,en)=>convert_Visit(en,Pt,Wt)),en)}function convert_FromLiteral(Wt,Pt,en){return TryConvertLiteral(Wt,en)}function convert_FromNull(Wt,Pt,en){return TryConvertNull(en)}function convert_FromNumber(Wt,Pt,en){return TryConvertNumber(en)}function convert_FromObject(Wt,Pt,en){const tn=guard_IsObject(en);if(!tn)return en;return Object.getOwnPropertyNames(Wt.properties).reduce(((en,tn)=>!guard_IsUndefined(en[tn])?{...en,[tn]:convert_Visit(Wt.properties[tn],Pt,en[tn])}:{...en}),en)}function convert_FromRecord(Wt,Pt,en){const tn=Object.getOwnPropertyNames(Wt.patternProperties)[0];const nn=Wt.patternProperties[tn];const an={};for(const[Wt,tn]of Object.entries(en)){an[Wt]=convert_Visit(nn,Pt,tn)}return an}function convert_FromRef(Wt,Pt,en){return convert_Visit(deref_Deref(Wt,Pt),Pt,en)}function convert_FromString(Wt,Pt,en){return TryConvertString(en)}function convert_FromSymbol(Wt,Pt,en){return guard_IsString(en)||guard_IsNumber(en)?Symbol(en):en}function convert_FromThis(Wt,Pt,en){return convert_Visit(deref_Deref(Wt,Pt),Pt,en)}function convert_FromTuple(Wt,Pt,en){const tn=guard_IsArray(en)&&!guard_IsUndefined(Wt.items);if(!tn)return en;return en.map(((en,tn)=>tn{const nn=default_Visit(en,Pt,tn);return guard_IsObject(nn)?{...Wt,...nn}:nn}),{})}function default_FromObject(Wt,Pt,en){const tn=ValueOrDefault(Wt,en);if(!guard_IsObject(tn))return tn;const nn=Wt.additionalProperties;const an=Object.getOwnPropertyNames(Wt.properties);for(const en of an){if(!IsDefaultSchema(Wt.properties[en]))continue;tn[en]=default_Visit(Wt.properties[en],Pt,tn[en])}if(!IsDefaultSchema(nn))return tn;for(const Wt of Object.getOwnPropertyNames(tn)){if(an.includes(Wt))continue;tn[Wt]=default_Visit(nn,Pt,tn[Wt])}return tn}function default_FromRecord(Wt,Pt,en){const tn=ValueOrDefault(Wt,en);if(!guard_IsObject(tn))return tn;const nn=Wt.additionalProperties;const[an,rn]=Object.entries(Wt.patternProperties)[0];const In=new RegExp(an);for(const Wt of Object.getOwnPropertyNames(tn)){if(!(In.test(Wt)&&IsDefaultSchema(rn)))continue;tn[Wt]=default_Visit(rn,Pt,tn[Wt])}if(!IsDefaultSchema(nn))return tn;for(const Wt of Object.getOwnPropertyNames(tn)){if(In.test(Wt))continue;tn[Wt]=default_Visit(nn,Pt,tn[Wt])}return tn}function default_FromRef(Wt,Pt,en){return default_Visit(deref_Deref(Wt,Pt),Pt,ValueOrDefault(Wt,en))}function default_FromThis(Wt,Pt,en){return default_Visit(deref_Deref(Wt,Pt),Pt,en)}function default_FromTuple(Wt,Pt,en){const tn=ValueOrDefault(Wt,en);if(!guard_IsArray(tn)||guard_IsUndefined(Wt.items))return tn;const[nn,an]=[Wt.items,Math.max(Wt.items.length,tn.length)];for(let Wt=0;Wt=0;tn--){if(tn0&&Wt[0].path===""&&Wt[0].type==="update"}function IsIdentity(Wt){return Wt.length===0}function Patch(Wt,Pt){if(IsRootUpdate(Pt)){return clone_Clone(Pt[0].value)}if(IsIdentity(Pt)){return clone_Clone(Wt)}const en=clone_Clone(Wt);for(const Wt of Pt){switch(Wt.type){case"insert":{pointer_Set(en,Wt.path,Wt.value);break}case"update":{pointer_Set(en,Wt.path,Wt.value);break}case"delete":{pointer_Delete(en,Wt.path);break}}}return en}class ValueMutateError extends TypeBoxError{constructor(Wt){super(Wt)}}function mutate_ObjectType(Wt,Pt,en,tn){if(!guard_IsStandardObject(en)){pointer_Set(Wt,Pt,clone_Clone(tn))}else{const nn=Object.keys(en);const an=Object.keys(tn);for(const Wt of nn){if(!an.includes(Wt)){delete en[Wt]}}for(const Wt of an){if(!nn.includes(Wt)){en[Wt]=null}}for(const nn of an){mutate_Visit(Wt,`${Pt}/${nn}`,en[nn],tn[nn])}}}function mutate_ArrayType(Wt,Pt,en,tn){if(!guard_IsArray(en)){pointer_Set(Wt,Pt,clone_Clone(tn))}else{for(let nn=0;nndecode_Visit(Wt.items,Pt,`${en}/${nn}`,tn)))):decode_Default(Wt,en,tn)}function decode_FromIntersect(Wt,Pt,en,tn){if(!guard_IsStandardObject(tn)||guard_IsValueType(tn))return decode_Default(Wt,en,tn);const nn=keyof_property_keys_KeyOfPropertyKeys(Wt);const an=nn.reduce(((tn,nn)=>nn in tn?{...tn,[nn]:decode_Visit(indexed_Index(Wt,[nn]),Pt,`${en}/${nn}`,tn[nn])}:tn),tn);if(!type_IsTransform(Wt.unevaluatedProperties)){return decode_Default(Wt,en,an)}const rn=Object.getOwnPropertyNames(an);const In=Wt.unevaluatedProperties;const sn=rn.reduce(((Wt,Pt)=>!nn.includes(Pt)?{...Wt,[Pt]:decode_Default(In,`${en}/${Pt}`,Wt[Pt])}:Wt),an);return decode_Default(Wt,en,sn)}function decode_FromNot(Wt,Pt,en,tn){return decode_Default(Wt,en,decode_Visit(Wt.not,Pt,en,tn))}function decode_FromObject(Wt,Pt,en,tn){if(!guard_IsStandardObject(tn))return decode_Default(Wt,en,tn);const nn=keyof_property_keys_KeyOfPropertyKeys(Wt);const an=nn.reduce(((tn,nn)=>nn in tn?{...tn,[nn]:decode_Visit(Wt.properties[nn],Pt,`${en}/${nn}`,tn[nn])}:tn),tn);if(!type_IsSchema(Wt.additionalProperties)){return decode_Default(Wt,en,an)}const rn=Object.getOwnPropertyNames(an);const In=Wt.additionalProperties;const sn=rn.reduce(((Wt,Pt)=>!nn.includes(Pt)?{...Wt,[Pt]:decode_Default(In,`${en}/${Pt}`,Wt[Pt])}:Wt),an);return decode_Default(Wt,en,sn)}function decode_FromRecord(Wt,Pt,en,tn){if(!guard_IsStandardObject(tn))return decode_Default(Wt,en,tn);const nn=Object.getOwnPropertyNames(Wt.patternProperties)[0];const an=new RegExp(nn);const rn=Object.getOwnPropertyNames(tn).reduce(((tn,rn)=>an.test(rn)?{...tn,[rn]:decode_Visit(Wt.patternProperties[nn],Pt,`${en}/${rn}`,tn[rn])}:tn),tn);if(!type_IsSchema(Wt.additionalProperties)){return decode_Default(Wt,en,rn)}const In=Object.getOwnPropertyNames(rn);const sn=Wt.additionalProperties;const on=In.reduce(((Wt,Pt)=>!an.test(Pt)?{...Wt,[Pt]:decode_Default(sn,`${en}/${Pt}`,Wt[Pt])}:Wt),rn);return decode_Default(Wt,en,on)}function decode_FromRef(Wt,Pt,en,tn){const nn=deref_Deref(Wt,Pt);return decode_Default(Wt,en,decode_Visit(nn,Pt,en,tn))}function decode_FromThis(Wt,Pt,en,tn){const nn=deref_Deref(Wt,Pt);return decode_Default(Wt,en,decode_Visit(nn,Pt,en,tn))}function decode_FromTuple(Wt,Pt,en,tn){return guard_IsArray(tn)&&guard_IsArray(Wt.items)?decode_Default(Wt,en,Wt.items.map(((Wt,nn)=>decode_Visit(Wt,Pt,`${en}/${nn}`,tn[nn])))):decode_Default(Wt,en,tn)}function decode_FromUnion(Wt,Pt,en,tn){for(const nn of Wt.anyOf){if(!check_Check(nn,Pt,tn))continue;const an=decode_Visit(nn,Pt,en,tn);return decode_Default(Wt,en,an)}return decode_Default(Wt,en,tn)}function decode_Visit(Wt,Pt,en,tn){const nn=typeof Wt.$id==="string"?[...Pt,Wt]:Pt;const an=Wt;switch(Wt[bn]){case"Array":return decode_FromArray(an,nn,en,tn);case"Intersect":return decode_FromIntersect(an,nn,en,tn);case"Not":return decode_FromNot(an,nn,en,tn);case"Object":return decode_FromObject(an,nn,en,tn);case"Record":return decode_FromRecord(an,nn,en,tn);case"Ref":return decode_FromRef(an,nn,en,tn);case"Symbol":return decode_Default(an,en,tn);case"This":return decode_FromThis(an,nn,en,tn);case"Tuple":return decode_FromTuple(an,nn,en,tn);case"Union":return decode_FromUnion(an,nn,en,tn);default:return decode_Default(an,en,tn)}}function decode_TransformDecode(Wt,Pt,en){return decode_Visit(Wt,Pt,"",en)}class encode_TransformEncodeCheckError extends TypeBoxError{schema;value;error;constructor(Wt,Pt,en){super(`The encoded value does not match the expected schema`);this.schema=Wt;this.value=Pt;this.error=en}}class TransformEncodeError extends TypeBoxError{schema;path;value;error;constructor(Wt,Pt,en,tn){super(`${tn instanceof Error?tn.message:"Unknown error"}`);this.schema=Wt;this.path=Pt;this.value=en;this.error=tn}}function encode_Default(Wt,Pt,en){try{return type_IsTransform(Wt)?Wt[dn].Encode(en):en}catch(tn){throw new TransformEncodeError(Wt,Pt,en,tn)}}function encode_FromArray(Wt,Pt,en,tn){const nn=encode_Default(Wt,en,tn);return guard_IsArray(nn)?nn.map(((tn,nn)=>encode_Visit(Wt.items,Pt,`${en}/${nn}`,tn))):nn}function encode_FromIntersect(Wt,Pt,en,tn){const nn=encode_Default(Wt,en,tn);if(!guard_IsStandardObject(tn)||guard_IsValueType(tn))return nn;const an=keyof_property_keys_KeyOfPropertyKeys(Wt);const rn=an.reduce(((tn,an)=>an in nn?{...tn,[an]:encode_Visit(indexed_Index(Wt,[an]),Pt,`${en}/${an}`,tn[an])}:tn),nn);if(!type_IsTransform(Wt.unevaluatedProperties)){return encode_Default(Wt,en,rn)}const In=Object.getOwnPropertyNames(rn);const sn=Wt.unevaluatedProperties;return In.reduce(((Wt,Pt)=>!an.includes(Pt)?{...Wt,[Pt]:encode_Default(sn,`${en}/${Pt}`,Wt[Pt])}:Wt),rn)}function encode_FromNot(Wt,Pt,en,tn){return encode_Default(Wt.not,en,encode_Default(Wt,en,tn))}function encode_FromObject(Wt,Pt,en,tn){const nn=encode_Default(Wt,en,tn);if(!guard_IsStandardObject(tn))return nn;const an=keyof_property_keys_KeyOfPropertyKeys(Wt);const rn=an.reduce(((tn,nn)=>nn in tn?{...tn,[nn]:encode_Visit(Wt.properties[nn],Pt,`${en}/${nn}`,tn[nn])}:tn),nn);if(!type_IsSchema(Wt.additionalProperties)){return rn}const In=Object.getOwnPropertyNames(rn);const sn=Wt.additionalProperties;return In.reduce(((Wt,Pt)=>!an.includes(Pt)?{...Wt,[Pt]:encode_Default(sn,`${en}/${Pt}`,Wt[Pt])}:Wt),rn)}function encode_FromRecord(Wt,Pt,en,tn){const nn=encode_Default(Wt,en,tn);if(!guard_IsStandardObject(tn))return nn;const an=Object.getOwnPropertyNames(Wt.patternProperties)[0];const rn=new RegExp(an);const In=Object.getOwnPropertyNames(tn).reduce(((tn,nn)=>rn.test(nn)?{...tn,[nn]:encode_Visit(Wt.patternProperties[an],Pt,`${en}/${nn}`,tn[nn])}:tn),nn);if(!type_IsSchema(Wt.additionalProperties)){return encode_Default(Wt,en,In)}const sn=Object.getOwnPropertyNames(In);const on=Wt.additionalProperties;return sn.reduce(((Wt,Pt)=>!rn.test(Pt)?{...Wt,[Pt]:encode_Default(on,`${en}/${Pt}`,Wt[Pt])}:Wt),In)}function encode_FromRef(Wt,Pt,en,tn){const nn=deref_Deref(Wt,Pt);const an=encode_Visit(nn,Pt,en,tn);return encode_Default(Wt,en,an)}function encode_FromThis(Wt,Pt,en,tn){const nn=deref_Deref(Wt,Pt);const an=encode_Visit(nn,Pt,en,tn);return encode_Default(Wt,en,an)}function encode_FromTuple(Wt,Pt,en,tn){const nn=encode_Default(Wt,en,tn);return guard_IsArray(Wt.items)?Wt.items.map(((Wt,tn)=>encode_Visit(Wt,Pt,`${en}/${tn}`,nn[tn]))):[]}function encode_FromUnion(Wt,Pt,en,tn){for(const nn of Wt.anyOf){if(!check_Check(nn,Pt,tn))continue;const an=encode_Visit(nn,Pt,en,tn);return encode_Default(Wt,en,an)}for(const nn of Wt.anyOf){const an=encode_Visit(nn,Pt,en,tn);if(!check_Check(Wt,Pt,an))continue;return encode_Default(Wt,en,an)}return encode_Default(Wt,en,tn)}function encode_Visit(Wt,Pt,en,tn){const nn=typeof Wt.$id==="string"?[...Pt,Wt]:Pt;const an=Wt;switch(Wt[bn]){case"Array":return encode_FromArray(an,nn,en,tn);case"Intersect":return encode_FromIntersect(an,nn,en,tn);case"Not":return encode_FromNot(an,nn,en,tn);case"Object":return encode_FromObject(an,nn,en,tn);case"Record":return encode_FromRecord(an,nn,en,tn);case"Ref":return encode_FromRef(an,nn,en,tn);case"This":return encode_FromThis(an,nn,en,tn);case"Tuple":return encode_FromTuple(an,nn,en,tn);case"Union":return encode_FromUnion(an,nn,en,tn);default:return encode_Default(an,en,tn)}}function encode_TransformEncode(Wt,Pt,en){return encode_Visit(Wt,Pt,"",en)}function has_FromArray(Wt,Pt){return IsTransform(Wt)||has_Visit(Wt.items,Pt)}function has_FromAsyncIterator(Wt,Pt){return IsTransform(Wt)||has_Visit(Wt.items,Pt)}function has_FromConstructor(Wt,Pt){return IsTransform(Wt)||has_Visit(Wt.returns,Pt)||Wt.parameters.some((Wt=>has_Visit(Wt,Pt)))}function has_FromFunction(Wt,Pt){return IsTransform(Wt)||has_Visit(Wt.returns,Pt)||Wt.parameters.some((Wt=>has_Visit(Wt,Pt)))}function has_FromIntersect(Wt,Pt){return IsTransform(Wt)||IsTransform(Wt.unevaluatedProperties)||Wt.allOf.some((Wt=>has_Visit(Wt,Pt)))}function has_FromIterator(Wt,Pt){return IsTransform(Wt)||has_Visit(Wt.items,Pt)}function has_FromNot(Wt,Pt){return IsTransform(Wt)||has_Visit(Wt.not,Pt)}function has_FromObject(Wt,Pt){return IsTransform(Wt)||Object.values(Wt.properties).some((Wt=>has_Visit(Wt,Pt)))||IsSchema(Wt.additionalProperties)&&has_Visit(Wt.additionalProperties,Pt)}function has_FromPromise(Wt,Pt){return IsTransform(Wt)||has_Visit(Wt.item,Pt)}function has_FromRecord(Wt,Pt){const en=Object.getOwnPropertyNames(Wt.patternProperties)[0];const tn=Wt.patternProperties[en];return IsTransform(Wt)||has_Visit(tn,Pt)||IsSchema(Wt.additionalProperties)&&IsTransform(Wt.additionalProperties)}function has_FromRef(Wt,Pt){if(IsTransform(Wt))return true;return has_Visit(Deref(Wt,Pt),Pt)}function has_FromThis(Wt,Pt){if(IsTransform(Wt))return true;return has_Visit(Deref(Wt,Pt),Pt)}function has_FromTuple(Wt,Pt){return IsTransform(Wt)||!IsUndefined(Wt.items)&&Wt.items.some((Wt=>has_Visit(Wt,Pt)))}function has_FromUnion(Wt,Pt){return IsTransform(Wt)||Wt.anyOf.some((Wt=>has_Visit(Wt,Pt)))}function has_Visit(Wt,Pt){const en=IsString(Wt.$id)?[...Pt,Wt]:Pt;const tn=Wt;if(Wt.$id&&Un.has(Wt.$id))return false;if(Wt.$id)Un.add(Wt.$id);switch(Wt[Kind]){case"Array":return has_FromArray(tn,en);case"AsyncIterator":return has_FromAsyncIterator(tn,en);case"Constructor":return has_FromConstructor(tn,en);case"Function":return has_FromFunction(tn,en);case"Intersect":return has_FromIntersect(tn,en);case"Iterator":return has_FromIterator(tn,en);case"Not":return has_FromNot(tn,en);case"Object":return has_FromObject(tn,en);case"Promise":return has_FromPromise(tn,en);case"Record":return has_FromRecord(tn,en);case"Ref":return has_FromRef(tn,en);case"This":return has_FromThis(tn,en);case"Tuple":return has_FromTuple(tn,en);case"Union":return has_FromUnion(tn,en);default:return IsTransform(Wt)}}const Un=new Set;function has_HasTransform(Wt,Pt){Un.clear();return has_Visit(Wt,Pt)}function equal_ObjectType(Wt,Pt){if(!guard_IsStandardObject(Pt))return false;const en=[...Object.keys(Wt),...Object.getOwnPropertySymbols(Wt)];const tn=[...Object.keys(Pt),...Object.getOwnPropertySymbols(Pt)];if(en.length!==tn.length)return false;return en.every((en=>Equal(Wt[en],Pt[en])))}function equal_DateType(Wt,Pt){return guard_IsDate(Pt)&&Wt.getTime()===Pt.getTime()}function equal_ArrayType(Wt,Pt){if(!guard_IsArray(Pt)||Wt.length!==Pt.length)return false;return Wt.every(((Wt,en)=>Equal(Wt,Pt[en])))}function equal_TypedArrayType(Wt,Pt){if(!guard_IsTypedArray(Pt)||Wt.length!==Pt.length||Object.getPrototypeOf(Wt).constructor.name!==Object.getPrototypeOf(Pt).constructor.name)return false;return Wt.every(((Wt,en)=>Equal(Wt,Pt[en])))}function equal_ValueType(Wt,Pt){return Wt===Pt}function Equal(Wt,Pt){if(guard_IsStandardObject(Wt))return equal_ObjectType(Wt,Pt);if(guard_IsDate(Wt))return equal_DateType(Wt,Pt);if(guard_IsTypedArray(Wt))return equal_TypedArrayType(Wt,Pt);if(guard_IsArray(Wt))return equal_ArrayType(Wt,Pt);if(guard_IsValueType(Wt))return equal_ValueType(Wt,Pt);throw new Error("ValueEquals: Unable to compare value")}function value_Cast(...Wt){return Cast.apply(Cast,Wt)}function value_Create(...Wt){return create_Create.apply(create_Create,Wt)}function value_Check(...Wt){return check_Check.apply(check_Check,Wt)}function value_Clean(...Wt){return Clean.apply(Clean,Wt)}function value_Convert(...Wt){return Convert.apply(Convert,Wt)}function value_value_Clone(Wt){return clone_Clone(Wt)}function Decode(...Wt){const[Pt,en,tn]=Wt.length===3?[Wt[0],Wt[1],Wt[2]]:[Wt[0],[],Wt[1]];if(!value_Check(Pt,en,tn))throw new decode_TransformDecodeCheckError(Pt,tn,value_Errors(Pt,en,tn).First());return decode_TransformDecode(Pt,en,tn)}function value_Default(...Wt){return default_Default.apply(default_Default,Wt)}function Encode(...Wt){const[Pt,en,tn]=Wt.length===3?[Wt[0],Wt[1],Wt[2]]:[Wt[0],[],Wt[1]];const nn=encode_TransformEncode(Pt,en,tn);if(!value_Check(Pt,en,nn))throw new encode_TransformEncodeCheckError(Pt,nn,value_Errors(Pt,en,nn).First());return nn}function value_Errors(...Wt){return Errors.apply(Errors,Wt)}function value_Equal(Wt,Pt){return Equal(Wt,Pt)}function value_Diff(Wt,Pt){return Diff(Wt,Pt)}function value_Hash(Wt){return hash_Hash(Wt)}function value_Patch(Wt,Pt){return Patch(Wt,Pt)}function value_Mutate(Wt,Pt){Mutate(Wt,Pt)} +/*! + * decimal.js v10.4.3 + * An arbitrary-precision Decimal type for JavaScript. + * https://github.com/MikeMcl/decimal.js + * Copyright (c) 2022 Michael Mclaughlin + * MIT Licence */ -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ens_normalize = exports.ens_normalize_post_check = void 0; -var strings_1 = __nccwpck_require__(13859); -var include_js_1 = __nccwpck_require__(97666); -var r = (0, include_js_1.getData)(); -var decoder_js_1 = __nccwpck_require__(92302); -// @TODO: This should be lazily loaded -var VALID = new Set((0, decoder_js_1.read_member_array)(r)); -var IGNORED = new Set((0, decoder_js_1.read_member_array)(r)); -var MAPPED = (0, decoder_js_1.read_mapped_map)(r); -var EMOJI_ROOT = (0, decoder_js_1.read_emoji_trie)(r); -//const NFC_CHECK = new Set(read_member_array(r, Array.from(VALID.values()).sort((a, b) => a - b))); -//const STOP = 0x2E; -var HYPHEN = 0x2D; -var UNDERSCORE = 0x5F; -function explode_cp(name) { - return (0, strings_1.toUtf8CodePoints)(name); -} -function filter_fe0f(cps) { - return cps.filter(function (cp) { return cp != 0xFE0F; }); -} -function ens_normalize_post_check(name) { - for (var _i = 0, _a = name.split('.'); _i < _a.length; _i++) { - var label = _a[_i]; - var cps = explode_cp(label); - try { - for (var i = cps.lastIndexOf(UNDERSCORE) - 1; i >= 0; i--) { - if (cps[i] !== UNDERSCORE) { - throw new Error("underscore only allowed at start"); - } - } - if (cps.length >= 4 && cps.every(function (cp) { return cp < 0x80; }) && cps[2] === HYPHEN && cps[3] === HYPHEN) { - throw new Error("invalid label extension"); - } - } - catch (err) { - throw new Error("Invalid label \"" + label + "\": " + err.message); - } - } - return name; -} -exports.ens_normalize_post_check = ens_normalize_post_check; -function ens_normalize(name) { - return ens_normalize_post_check(normalize(name, filter_fe0f)); -} -exports.ens_normalize = ens_normalize; -function normalize(name, emoji_filter) { - var input = explode_cp(name).reverse(); // flip for pop - var output = []; - while (input.length) { - var emoji = consume_emoji_reversed(input); - if (emoji) { - output.push.apply(output, emoji_filter(emoji)); - continue; - } - var cp = input.pop(); - if (VALID.has(cp)) { - output.push(cp); - continue; - } - if (IGNORED.has(cp)) { - continue; - } - var cps = MAPPED[cp]; - if (cps) { - output.push.apply(output, cps); - continue; - } - throw new Error("Disallowed codepoint: 0x" + cp.toString(16).toUpperCase()); - } - return ens_normalize_post_check(nfc(String.fromCodePoint.apply(String, output))); -} -function nfc(s) { - return s.normalize('NFC'); -} -function consume_emoji_reversed(cps, eaten) { - var _a; - var node = EMOJI_ROOT; - var emoji; - var saved; - var stack = []; - var pos = cps.length; - if (eaten) - eaten.length = 0; // clear input buffer (if needed) - var _loop_1 = function () { - var cp = cps[--pos]; - node = (_a = node.branches.find(function (x) { return x.set.has(cp); })) === null || _a === void 0 ? void 0 : _a.node; - if (!node) - return "break"; - if (node.save) { // remember - saved = cp; - } - else if (node.check) { // check exclusion - if (cp === saved) - return "break"; - } - stack.push(cp); - if (node.fe0f) { - stack.push(0xFE0F); - if (pos > 0 && cps[pos - 1] == 0xFE0F) - pos--; // consume optional FE0F - } - if (node.valid) { // this is a valid emoji (so far) - emoji = stack.slice(); // copy stack - if (node.valid == 2) - emoji.splice(1, 1); // delete FE0F at position 1 (RGI ZWJ don't follow spec!) - if (eaten) - eaten.push.apply(eaten, cps.slice(pos).reverse()); // copy input (if needed) - cps.length = pos; // truncate - } - }; - while (pos) { - var state_1 = _loop_1(); - if (state_1 === "break") - break; - } - return emoji; -} -//# sourceMappingURL=lib.js.map - -/***/ }), - -/***/ 93562: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.id = void 0; -var keccak256_1 = __nccwpck_require__(56938); -var strings_1 = __nccwpck_require__(13859); -function id(text) { - return (0, keccak256_1.keccak256)((0, strings_1.toUtf8Bytes)(text)); -} -exports.id = id; -//# sourceMappingURL=id.js.map - -/***/ }), - -/***/ 91839: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports._TypedDataEncoder = exports.hashMessage = exports.messagePrefix = exports.ensNormalize = exports.isValidName = exports.namehash = exports.dnsEncode = exports.id = void 0; -var id_1 = __nccwpck_require__(93562); -Object.defineProperty(exports, "id", ({ enumerable: true, get: function () { return id_1.id; } })); -var namehash_1 = __nccwpck_require__(62292); -Object.defineProperty(exports, "dnsEncode", ({ enumerable: true, get: function () { return namehash_1.dnsEncode; } })); -Object.defineProperty(exports, "isValidName", ({ enumerable: true, get: function () { return namehash_1.isValidName; } })); -Object.defineProperty(exports, "namehash", ({ enumerable: true, get: function () { return namehash_1.namehash; } })); -var message_1 = __nccwpck_require__(52976); -Object.defineProperty(exports, "hashMessage", ({ enumerable: true, get: function () { return message_1.hashMessage; } })); -Object.defineProperty(exports, "messagePrefix", ({ enumerable: true, get: function () { return message_1.messagePrefix; } })); -var namehash_2 = __nccwpck_require__(62292); -Object.defineProperty(exports, "ensNormalize", ({ enumerable: true, get: function () { return namehash_2.ensNormalize; } })); -var typed_data_1 = __nccwpck_require__(64516); -Object.defineProperty(exports, "_TypedDataEncoder", ({ enumerable: true, get: function () { return typed_data_1.TypedDataEncoder; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 52976: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.hashMessage = exports.messagePrefix = void 0; -var bytes_1 = __nccwpck_require__(42006); -var keccak256_1 = __nccwpck_require__(56938); -var strings_1 = __nccwpck_require__(13859); -exports.messagePrefix = "\x19Ethereum Signed Message:\n"; -function hashMessage(message) { - if (typeof (message) === "string") { - message = (0, strings_1.toUtf8Bytes)(message); - } - return (0, keccak256_1.keccak256)((0, bytes_1.concat)([ - (0, strings_1.toUtf8Bytes)(exports.messagePrefix), - (0, strings_1.toUtf8Bytes)(String(message.length)), - message - ])); -} -exports.hashMessage = hashMessage; -//# sourceMappingURL=message.js.map - -/***/ }), - -/***/ 62292: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.dnsEncode = exports.namehash = exports.isValidName = exports.ensNormalize = void 0; -var bytes_1 = __nccwpck_require__(42006); -var strings_1 = __nccwpck_require__(13859); -var keccak256_1 = __nccwpck_require__(56938); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(14891); -var logger = new logger_1.Logger(_version_1.version); -var lib_1 = __nccwpck_require__(89365); -var Zeros = new Uint8Array(32); -Zeros.fill(0); -function checkComponent(comp) { - if (comp.length === 0) { - throw new Error("invalid ENS name; empty component"); - } - return comp; -} -function ensNameSplit(name) { - var bytes = (0, strings_1.toUtf8Bytes)((0, lib_1.ens_normalize)(name)); - var comps = []; - if (name.length === 0) { - return comps; - } - var last = 0; - for (var i = 0; i < bytes.length; i++) { - var d = bytes[i]; - // A separator (i.e. "."); copy this component - if (d === 0x2e) { - comps.push(checkComponent(bytes.slice(last, i))); - last = i + 1; - } - } - // There was a stray separator at the end of the name - if (last >= bytes.length) { - throw new Error("invalid ENS name; empty component"); - } - comps.push(checkComponent(bytes.slice(last))); - return comps; -} -function ensNormalize(name) { - return ensNameSplit(name).map(function (comp) { return (0, strings_1.toUtf8String)(comp); }).join("."); -} -exports.ensNormalize = ensNormalize; -function isValidName(name) { - try { - return (ensNameSplit(name).length !== 0); - } - catch (error) { } - return false; -} -exports.isValidName = isValidName; -function namehash(name) { - /* istanbul ignore if */ - if (typeof (name) !== "string") { - logger.throwArgumentError("invalid ENS name; not a string", "name", name); - } - var result = Zeros; - var comps = ensNameSplit(name); - while (comps.length) { - result = (0, keccak256_1.keccak256)((0, bytes_1.concat)([result, (0, keccak256_1.keccak256)(comps.pop())])); - } - return (0, bytes_1.hexlify)(result); -} -exports.namehash = namehash; -function dnsEncode(name) { - return (0, bytes_1.hexlify)((0, bytes_1.concat)(ensNameSplit(name).map(function (comp) { - // DNS does not allow components over 63 bytes in length - if (comp.length > 63) { - throw new Error("invalid DNS encoded entry; length exceeds 63 bytes"); - } - var bytes = new Uint8Array(comp.length + 1); - bytes.set(comp, 1); - bytes[0] = bytes.length - 1; - return bytes; - }))) + "00"; -} -exports.dnsEncode = dnsEncode; -//# sourceMappingURL=namehash.js.map - -/***/ }), - -/***/ 64516: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"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 })); -exports.TypedDataEncoder = void 0; -var address_1 = __nccwpck_require__(75745); -var bignumber_1 = __nccwpck_require__(18202); -var bytes_1 = __nccwpck_require__(42006); -var keccak256_1 = __nccwpck_require__(56938); -var properties_1 = __nccwpck_require__(61338); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(14891); -var logger = new logger_1.Logger(_version_1.version); -var id_1 = __nccwpck_require__(93562); -var padding = new Uint8Array(32); -padding.fill(0); -var NegativeOne = bignumber_1.BigNumber.from(-1); -var Zero = bignumber_1.BigNumber.from(0); -var One = bignumber_1.BigNumber.from(1); -var MaxUint256 = bignumber_1.BigNumber.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); -function hexPadRight(value) { - var bytes = (0, bytes_1.arrayify)(value); - var padOffset = bytes.length % 32; - if (padOffset) { - return (0, bytes_1.hexConcat)([bytes, padding.slice(padOffset)]); - } - return (0, bytes_1.hexlify)(bytes); -} -var hexTrue = (0, bytes_1.hexZeroPad)(One.toHexString(), 32); -var hexFalse = (0, bytes_1.hexZeroPad)(Zero.toHexString(), 32); -var domainFieldTypes = { - name: "string", - version: "string", - chainId: "uint256", - verifyingContract: "address", - salt: "bytes32" -}; -var domainFieldNames = [ - "name", "version", "chainId", "verifyingContract", "salt" -]; -function checkString(key) { - return function (value) { - if (typeof (value) !== "string") { - logger.throwArgumentError("invalid domain value for " + JSON.stringify(key), "domain." + key, value); - } - return value; - }; -} -var domainChecks = { - name: checkString("name"), - version: checkString("version"), - chainId: function (value) { - try { - return bignumber_1.BigNumber.from(value).toString(); - } - catch (error) { } - return logger.throwArgumentError("invalid domain value for \"chainId\"", "domain.chainId", value); - }, - verifyingContract: function (value) { - try { - return (0, address_1.getAddress)(value).toLowerCase(); - } - catch (error) { } - return logger.throwArgumentError("invalid domain value \"verifyingContract\"", "domain.verifyingContract", value); - }, - salt: function (value) { - try { - var bytes = (0, bytes_1.arrayify)(value); - if (bytes.length !== 32) { - throw new Error("bad length"); - } - return (0, bytes_1.hexlify)(bytes); - } - catch (error) { } - return logger.throwArgumentError("invalid domain value \"salt\"", "domain.salt", value); - } -}; -function getBaseEncoder(type) { - // intXX and uintXX - { - var match = type.match(/^(u?)int(\d*)$/); - if (match) { - var signed = (match[1] === ""); - var width = parseInt(match[2] || "256"); - if (width % 8 !== 0 || width > 256 || (match[2] && match[2] !== String(width))) { - logger.throwArgumentError("invalid numeric width", "type", type); - } - var boundsUpper_1 = MaxUint256.mask(signed ? (width - 1) : width); - var boundsLower_1 = signed ? boundsUpper_1.add(One).mul(NegativeOne) : Zero; - return function (value) { - var v = bignumber_1.BigNumber.from(value); - if (v.lt(boundsLower_1) || v.gt(boundsUpper_1)) { - logger.throwArgumentError("value out-of-bounds for " + type, "value", value); - } - return (0, bytes_1.hexZeroPad)(v.toTwos(256).toHexString(), 32); - }; - } - } - // bytesXX - { - var match = type.match(/^bytes(\d+)$/); - if (match) { - var width_1 = parseInt(match[1]); - if (width_1 === 0 || width_1 > 32 || match[1] !== String(width_1)) { - logger.throwArgumentError("invalid bytes width", "type", type); - } - return function (value) { - var bytes = (0, bytes_1.arrayify)(value); - if (bytes.length !== width_1) { - logger.throwArgumentError("invalid length for " + type, "value", value); - } - return hexPadRight(value); - }; - } - } - switch (type) { - case "address": return function (value) { - return (0, bytes_1.hexZeroPad)((0, address_1.getAddress)(value), 32); - }; - case "bool": return function (value) { - return ((!value) ? hexFalse : hexTrue); - }; - case "bytes": return function (value) { - return (0, keccak256_1.keccak256)(value); - }; - case "string": return function (value) { - return (0, id_1.id)(value); - }; - } - return null; -} -function encodeType(name, fields) { - return name + "(" + fields.map(function (_a) { - var name = _a.name, type = _a.type; - return (type + " " + name); - }).join(",") + ")"; -} -var TypedDataEncoder = /** @class */ (function () { - function TypedDataEncoder(types) { - (0, properties_1.defineReadOnly)(this, "types", Object.freeze((0, properties_1.deepCopy)(types))); - (0, properties_1.defineReadOnly)(this, "_encoderCache", {}); - (0, properties_1.defineReadOnly)(this, "_types", {}); - // Link struct types to their direct child structs - var links = {}; - // Link structs to structs which contain them as a child - var parents = {}; - // Link all subtypes within a given struct - var subtypes = {}; - Object.keys(types).forEach(function (type) { - links[type] = {}; - parents[type] = []; - subtypes[type] = {}; - }); - var _loop_1 = function (name_1) { - var uniqueNames = {}; - types[name_1].forEach(function (field) { - // Check each field has a unique name - if (uniqueNames[field.name]) { - logger.throwArgumentError("duplicate variable name " + JSON.stringify(field.name) + " in " + JSON.stringify(name_1), "types", types); - } - uniqueNames[field.name] = true; - // Get the base type (drop any array specifiers) - var baseType = field.type.match(/^([^\x5b]*)(\x5b|$)/)[1]; - if (baseType === name_1) { - logger.throwArgumentError("circular type reference to " + JSON.stringify(baseType), "types", types); - } - // Is this a base encoding type? - var encoder = getBaseEncoder(baseType); - if (encoder) { - return; - } - if (!parents[baseType]) { - logger.throwArgumentError("unknown type " + JSON.stringify(baseType), "types", types); - } - // Add linkage - parents[baseType].push(name_1); - links[name_1][baseType] = true; - }); - }; - for (var name_1 in types) { - _loop_1(name_1); - } - // Deduce the primary type - var primaryTypes = Object.keys(parents).filter(function (n) { return (parents[n].length === 0); }); - if (primaryTypes.length === 0) { - logger.throwArgumentError("missing primary type", "types", types); - } - else if (primaryTypes.length > 1) { - logger.throwArgumentError("ambiguous primary types or unused types: " + primaryTypes.map(function (t) { return (JSON.stringify(t)); }).join(", "), "types", types); - } - (0, properties_1.defineReadOnly)(this, "primaryType", primaryTypes[0]); - // Check for circular type references - function checkCircular(type, found) { - if (found[type]) { - logger.throwArgumentError("circular type reference to " + JSON.stringify(type), "types", types); - } - found[type] = true; - Object.keys(links[type]).forEach(function (child) { - if (!parents[child]) { - return; - } - // Recursively check children - checkCircular(child, found); - // Mark all ancestors as having this decendant - Object.keys(found).forEach(function (subtype) { - subtypes[subtype][child] = true; - }); - }); - delete found[type]; - } - checkCircular(this.primaryType, {}); - // Compute each fully describe type - for (var name_2 in subtypes) { - var st = Object.keys(subtypes[name_2]); - st.sort(); - this._types[name_2] = encodeType(name_2, types[name_2]) + st.map(function (t) { return encodeType(t, types[t]); }).join(""); - } - } - TypedDataEncoder.prototype.getEncoder = function (type) { - var encoder = this._encoderCache[type]; - if (!encoder) { - encoder = this._encoderCache[type] = this._getEncoder(type); - } - return encoder; - }; - TypedDataEncoder.prototype._getEncoder = function (type) { - var _this = this; - // Basic encoder type (address, bool, uint256, etc) - { - var encoder = getBaseEncoder(type); - if (encoder) { - return encoder; - } - } - // Array - var match = type.match(/^(.*)(\x5b(\d*)\x5d)$/); - if (match) { - var subtype_1 = match[1]; - var subEncoder_1 = this.getEncoder(subtype_1); - var length_1 = parseInt(match[3]); - return function (value) { - if (length_1 >= 0 && value.length !== length_1) { - logger.throwArgumentError("array length mismatch; expected length ${ arrayLength }", "value", value); - } - var result = value.map(subEncoder_1); - if (_this._types[subtype_1]) { - result = result.map(keccak256_1.keccak256); - } - return (0, keccak256_1.keccak256)((0, bytes_1.hexConcat)(result)); - }; - } - // Struct - var fields = this.types[type]; - if (fields) { - var encodedType_1 = (0, id_1.id)(this._types[type]); - return function (value) { - var values = fields.map(function (_a) { - var name = _a.name, type = _a.type; - var result = _this.getEncoder(type)(value[name]); - if (_this._types[type]) { - return (0, keccak256_1.keccak256)(result); - } - return result; - }); - values.unshift(encodedType_1); - return (0, bytes_1.hexConcat)(values); - }; - } - return logger.throwArgumentError("unknown type: " + type, "type", type); - }; - TypedDataEncoder.prototype.encodeType = function (name) { - var result = this._types[name]; - if (!result) { - logger.throwArgumentError("unknown type: " + JSON.stringify(name), "name", name); - } - return result; - }; - TypedDataEncoder.prototype.encodeData = function (type, value) { - return this.getEncoder(type)(value); - }; - TypedDataEncoder.prototype.hashStruct = function (name, value) { - return (0, keccak256_1.keccak256)(this.encodeData(name, value)); - }; - TypedDataEncoder.prototype.encode = function (value) { - return this.encodeData(this.primaryType, value); - }; - TypedDataEncoder.prototype.hash = function (value) { - return this.hashStruct(this.primaryType, value); - }; - TypedDataEncoder.prototype._visit = function (type, value, callback) { - var _this = this; - // Basic encoder type (address, bool, uint256, etc) - { - var encoder = getBaseEncoder(type); - if (encoder) { - return callback(type, value); - } - } - // Array - var match = type.match(/^(.*)(\x5b(\d*)\x5d)$/); - if (match) { - var subtype_2 = match[1]; - var length_2 = parseInt(match[3]); - if (length_2 >= 0 && value.length !== length_2) { - logger.throwArgumentError("array length mismatch; expected length ${ arrayLength }", "value", value); - } - return value.map(function (v) { return _this._visit(subtype_2, v, callback); }); - } - // Struct - var fields = this.types[type]; - if (fields) { - return fields.reduce(function (accum, _a) { - var name = _a.name, type = _a.type; - accum[name] = _this._visit(type, value[name], callback); - return accum; - }, {}); - } - return logger.throwArgumentError("unknown type: " + type, "type", type); - }; - TypedDataEncoder.prototype.visit = function (value, callback) { - return this._visit(this.primaryType, value, callback); - }; - TypedDataEncoder.from = function (types) { - return new TypedDataEncoder(types); - }; - TypedDataEncoder.getPrimaryType = function (types) { - return TypedDataEncoder.from(types).primaryType; - }; - TypedDataEncoder.hashStruct = function (name, types, value) { - return TypedDataEncoder.from(types).hashStruct(name, value); - }; - TypedDataEncoder.hashDomain = function (domain) { - var domainFields = []; - for (var name_3 in domain) { - var type = domainFieldTypes[name_3]; - if (!type) { - logger.throwArgumentError("invalid typed-data domain key: " + JSON.stringify(name_3), "domain", domain); - } - domainFields.push({ name: name_3, type: type }); - } - domainFields.sort(function (a, b) { - return domainFieldNames.indexOf(a.name) - domainFieldNames.indexOf(b.name); - }); - return TypedDataEncoder.hashStruct("EIP712Domain", { EIP712Domain: domainFields }, domain); - }; - TypedDataEncoder.encode = function (domain, types, value) { - return (0, bytes_1.hexConcat)([ - "0x1901", - TypedDataEncoder.hashDomain(domain), - TypedDataEncoder.from(types).hash(value) - ]); - }; - TypedDataEncoder.hash = function (domain, types, value) { - return (0, keccak256_1.keccak256)(TypedDataEncoder.encode(domain, types, value)); - }; - // Replaces all address types with ENS names with their looked up address - TypedDataEncoder.resolveNames = function (domain, types, value, resolveName) { - return __awaiter(this, void 0, void 0, function () { - var ensCache, encoder, _a, _b, _i, name_4, _c, _d; - return __generator(this, function (_e) { - switch (_e.label) { - case 0: - // Make a copy to isolate it from the object passed in - domain = (0, properties_1.shallowCopy)(domain); - ensCache = {}; - // Do we need to look up the domain's verifyingContract? - if (domain.verifyingContract && !(0, bytes_1.isHexString)(domain.verifyingContract, 20)) { - ensCache[domain.verifyingContract] = "0x"; - } - encoder = TypedDataEncoder.from(types); - // Get a list of all the addresses - encoder.visit(value, function (type, value) { - if (type === "address" && !(0, bytes_1.isHexString)(value, 20)) { - ensCache[value] = "0x"; - } - return value; - }); - _a = []; - for (_b in ensCache) - _a.push(_b); - _i = 0; - _e.label = 1; - case 1: - if (!(_i < _a.length)) return [3 /*break*/, 4]; - name_4 = _a[_i]; - _c = ensCache; - _d = name_4; - return [4 /*yield*/, resolveName(name_4)]; - case 2: - _c[_d] = _e.sent(); - _e.label = 3; - case 3: - _i++; - return [3 /*break*/, 1]; - case 4: - // Replace the domain verifyingContract if needed - if (domain.verifyingContract && ensCache[domain.verifyingContract]) { - domain.verifyingContract = ensCache[domain.verifyingContract]; - } - // Replace all ENS names with their address - value = encoder.visit(value, function (type, value) { - if (type === "address" && ensCache[value]) { - return ensCache[value]; - } - return value; - }); - return [2 /*return*/, { domain: domain, value: value }]; - } - }); - }); - }; - TypedDataEncoder.getPayload = function (domain, types, value) { - // Validate the domain fields - TypedDataEncoder.hashDomain(domain); - // Derive the EIP712Domain Struct reference type - var domainValues = {}; - var domainTypes = []; - domainFieldNames.forEach(function (name) { - var value = domain[name]; - if (value == null) { - return; - } - domainValues[name] = domainChecks[name](value); - domainTypes.push({ name: name, type: domainFieldTypes[name] }); - }); - var encoder = TypedDataEncoder.from(types); - var typesWithDomain = (0, properties_1.shallowCopy)(types); - if (typesWithDomain.EIP712Domain) { - logger.throwArgumentError("types must not contain EIP712Domain type", "types.EIP712Domain", types); - } - else { - typesWithDomain.EIP712Domain = domainTypes; - } - // Validate the data structures and types - encoder.encode(value); - return { - types: typesWithDomain, - domain: domainValues, - primaryType: encoder.primaryType, - message: encoder.visit(value, function (type, value) { - // bytes - if (type.match(/^bytes(\d*)/)) { - return (0, bytes_1.hexlify)((0, bytes_1.arrayify)(value)); - } - // uint or int - if (type.match(/^u?int/)) { - return bignumber_1.BigNumber.from(value).toString(); - } - switch (type) { - case "address": - return value.toLowerCase(); - case "bool": - return !!value; - case "string": - if (typeof (value) !== "string") { - logger.throwArgumentError("invalid string", "value", value); - } - return value; - } - return logger.throwArgumentError("unsupported type", "type", type); - }) - }; - }; - return TypedDataEncoder; -}()); -exports.TypedDataEncoder = TypedDataEncoder; -//# sourceMappingURL=typed-data.js.map - -/***/ }), - -/***/ 94620: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "hdnode/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 13067: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.getAccountPath = exports.isValidMnemonic = exports.entropyToMnemonic = exports.mnemonicToEntropy = exports.mnemonicToSeed = exports.HDNode = exports.defaultPath = void 0; -var basex_1 = __nccwpck_require__(31426); -var bytes_1 = __nccwpck_require__(42006); -var bignumber_1 = __nccwpck_require__(18202); -var strings_1 = __nccwpck_require__(13859); -var pbkdf2_1 = __nccwpck_require__(15686); -var properties_1 = __nccwpck_require__(61338); -var signing_key_1 = __nccwpck_require__(63928); -var sha2_1 = __nccwpck_require__(66935); -var transactions_1 = __nccwpck_require__(62394); -var wordlists_1 = __nccwpck_require__(78168); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(94620); -var logger = new logger_1.Logger(_version_1.version); -var N = bignumber_1.BigNumber.from("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"); -// "Bitcoin seed" -var MasterSecret = (0, strings_1.toUtf8Bytes)("Bitcoin seed"); -var HardenedBit = 0x80000000; -// Returns a byte with the MSB bits set -function getUpperMask(bits) { - return ((1 << bits) - 1) << (8 - bits); -} -// Returns a byte with the LSB bits set -function getLowerMask(bits) { - return (1 << bits) - 1; -} -function bytes32(value) { - return (0, bytes_1.hexZeroPad)((0, bytes_1.hexlify)(value), 32); -} -function base58check(data) { - return basex_1.Base58.encode((0, bytes_1.concat)([data, (0, bytes_1.hexDataSlice)((0, sha2_1.sha256)((0, sha2_1.sha256)(data)), 0, 4)])); -} -function getWordlist(wordlist) { - if (wordlist == null) { - return wordlists_1.wordlists["en"]; - } - if (typeof (wordlist) === "string") { - var words = wordlists_1.wordlists[wordlist]; - if (words == null) { - logger.throwArgumentError("unknown locale", "wordlist", wordlist); - } - return words; - } - return wordlist; -} -var _constructorGuard = {}; -exports.defaultPath = "m/44'/60'/0'/0/0"; -; -var HDNode = /** @class */ (function () { - /** - * This constructor should not be called directly. - * - * Please use: - * - fromMnemonic - * - fromSeed - */ - function HDNode(constructorGuard, privateKey, publicKey, parentFingerprint, chainCode, index, depth, mnemonicOrPath) { - /* istanbul ignore if */ - if (constructorGuard !== _constructorGuard) { - throw new Error("HDNode constructor cannot be called directly"); - } - if (privateKey) { - var signingKey = new signing_key_1.SigningKey(privateKey); - (0, properties_1.defineReadOnly)(this, "privateKey", signingKey.privateKey); - (0, properties_1.defineReadOnly)(this, "publicKey", signingKey.compressedPublicKey); - } - else { - (0, properties_1.defineReadOnly)(this, "privateKey", null); - (0, properties_1.defineReadOnly)(this, "publicKey", (0, bytes_1.hexlify)(publicKey)); - } - (0, properties_1.defineReadOnly)(this, "parentFingerprint", parentFingerprint); - (0, properties_1.defineReadOnly)(this, "fingerprint", (0, bytes_1.hexDataSlice)((0, sha2_1.ripemd160)((0, sha2_1.sha256)(this.publicKey)), 0, 4)); - (0, properties_1.defineReadOnly)(this, "address", (0, transactions_1.computeAddress)(this.publicKey)); - (0, properties_1.defineReadOnly)(this, "chainCode", chainCode); - (0, properties_1.defineReadOnly)(this, "index", index); - (0, properties_1.defineReadOnly)(this, "depth", depth); - if (mnemonicOrPath == null) { - // From a source that does not preserve the path (e.g. extended keys) - (0, properties_1.defineReadOnly)(this, "mnemonic", null); - (0, properties_1.defineReadOnly)(this, "path", null); - } - else if (typeof (mnemonicOrPath) === "string") { - // From a source that does not preserve the mnemonic (e.g. neutered) - (0, properties_1.defineReadOnly)(this, "mnemonic", null); - (0, properties_1.defineReadOnly)(this, "path", mnemonicOrPath); - } - else { - // From a fully qualified source - (0, properties_1.defineReadOnly)(this, "mnemonic", mnemonicOrPath); - (0, properties_1.defineReadOnly)(this, "path", mnemonicOrPath.path); - } - } - Object.defineProperty(HDNode.prototype, "extendedKey", { - get: function () { - // We only support the mainnet values for now, but if anyone needs - // testnet values, let me know. I believe current sentiment is that - // we should always use mainnet, and use BIP-44 to derive the network - // - Mainnet: public=0x0488B21E, private=0x0488ADE4 - // - Testnet: public=0x043587CF, private=0x04358394 - if (this.depth >= 256) { - throw new Error("Depth too large!"); - } - return base58check((0, bytes_1.concat)([ - ((this.privateKey != null) ? "0x0488ADE4" : "0x0488B21E"), - (0, bytes_1.hexlify)(this.depth), - this.parentFingerprint, - (0, bytes_1.hexZeroPad)((0, bytes_1.hexlify)(this.index), 4), - this.chainCode, - ((this.privateKey != null) ? (0, bytes_1.concat)(["0x00", this.privateKey]) : this.publicKey), - ])); - }, - enumerable: false, - configurable: true - }); - HDNode.prototype.neuter = function () { - return new HDNode(_constructorGuard, null, this.publicKey, this.parentFingerprint, this.chainCode, this.index, this.depth, this.path); - }; - HDNode.prototype._derive = function (index) { - if (index > 0xffffffff) { - throw new Error("invalid index - " + String(index)); - } - // Base path - var path = this.path; - if (path) { - path += "/" + (index & ~HardenedBit); - } - var data = new Uint8Array(37); - if (index & HardenedBit) { - if (!this.privateKey) { - throw new Error("cannot derive child of neutered node"); - } - // Data = 0x00 || ser_256(k_par) - data.set((0, bytes_1.arrayify)(this.privateKey), 1); - // Hardened path - if (path) { - path += "'"; - } - } - else { - // Data = ser_p(point(k_par)) - data.set((0, bytes_1.arrayify)(this.publicKey)); - } - // Data += ser_32(i) - for (var i = 24; i >= 0; i -= 8) { - data[33 + (i >> 3)] = ((index >> (24 - i)) & 0xff); - } - var I = (0, bytes_1.arrayify)((0, sha2_1.computeHmac)(sha2_1.SupportedAlgorithm.sha512, this.chainCode, data)); - var IL = I.slice(0, 32); - var IR = I.slice(32); - // The private key - var ki = null; - // The public key - var Ki = null; - if (this.privateKey) { - ki = bytes32(bignumber_1.BigNumber.from(IL).add(this.privateKey).mod(N)); - } - else { - var ek = new signing_key_1.SigningKey((0, bytes_1.hexlify)(IL)); - Ki = ek._addPoint(this.publicKey); - } - var mnemonicOrPath = path; - var srcMnemonic = this.mnemonic; - if (srcMnemonic) { - mnemonicOrPath = Object.freeze({ - phrase: srcMnemonic.phrase, - path: path, - locale: (srcMnemonic.locale || "en") - }); - } - return new HDNode(_constructorGuard, ki, Ki, this.fingerprint, bytes32(IR), index, this.depth + 1, mnemonicOrPath); - }; - HDNode.prototype.derivePath = function (path) { - var components = path.split("/"); - if (components.length === 0 || (components[0] === "m" && this.depth !== 0)) { - throw new Error("invalid path - " + path); - } - if (components[0] === "m") { - components.shift(); - } - var result = this; - for (var i = 0; i < components.length; i++) { - var component = components[i]; - if (component.match(/^[0-9]+'$/)) { - var index = parseInt(component.substring(0, component.length - 1)); - if (index >= HardenedBit) { - throw new Error("invalid path index - " + component); - } - result = result._derive(HardenedBit + index); - } - else if (component.match(/^[0-9]+$/)) { - var index = parseInt(component); - if (index >= HardenedBit) { - throw new Error("invalid path index - " + component); - } - result = result._derive(index); - } - else { - throw new Error("invalid path component - " + component); - } - } - return result; - }; - HDNode._fromSeed = function (seed, mnemonic) { - var seedArray = (0, bytes_1.arrayify)(seed); - if (seedArray.length < 16 || seedArray.length > 64) { - throw new Error("invalid seed"); - } - var I = (0, bytes_1.arrayify)((0, sha2_1.computeHmac)(sha2_1.SupportedAlgorithm.sha512, MasterSecret, seedArray)); - return new HDNode(_constructorGuard, bytes32(I.slice(0, 32)), null, "0x00000000", bytes32(I.slice(32)), 0, 0, mnemonic); - }; - HDNode.fromMnemonic = function (mnemonic, password, wordlist) { - // If a locale name was passed in, find the associated wordlist - wordlist = getWordlist(wordlist); - // Normalize the case and spacing in the mnemonic (throws if the mnemonic is invalid) - mnemonic = entropyToMnemonic(mnemonicToEntropy(mnemonic, wordlist), wordlist); - return HDNode._fromSeed(mnemonicToSeed(mnemonic, password), { - phrase: mnemonic, - path: "m", - locale: wordlist.locale - }); - }; - HDNode.fromSeed = function (seed) { - return HDNode._fromSeed(seed, null); - }; - HDNode.fromExtendedKey = function (extendedKey) { - var bytes = basex_1.Base58.decode(extendedKey); - if (bytes.length !== 82 || base58check(bytes.slice(0, 78)) !== extendedKey) { - logger.throwArgumentError("invalid extended key", "extendedKey", "[REDACTED]"); - } - var depth = bytes[4]; - var parentFingerprint = (0, bytes_1.hexlify)(bytes.slice(5, 9)); - var index = parseInt((0, bytes_1.hexlify)(bytes.slice(9, 13)).substring(2), 16); - var chainCode = (0, bytes_1.hexlify)(bytes.slice(13, 45)); - var key = bytes.slice(45, 78); - switch ((0, bytes_1.hexlify)(bytes.slice(0, 4))) { - // Public Key - case "0x0488b21e": - case "0x043587cf": - return new HDNode(_constructorGuard, null, (0, bytes_1.hexlify)(key), parentFingerprint, chainCode, index, depth, null); - // Private Key - case "0x0488ade4": - case "0x04358394 ": - if (key[0] !== 0) { - break; - } - return new HDNode(_constructorGuard, (0, bytes_1.hexlify)(key.slice(1)), null, parentFingerprint, chainCode, index, depth, null); - } - return logger.throwArgumentError("invalid extended key", "extendedKey", "[REDACTED]"); - }; - return HDNode; -}()); -exports.HDNode = HDNode; -function mnemonicToSeed(mnemonic, password) { - if (!password) { - password = ""; - } - var salt = (0, strings_1.toUtf8Bytes)("mnemonic" + password, strings_1.UnicodeNormalizationForm.NFKD); - return (0, pbkdf2_1.pbkdf2)((0, strings_1.toUtf8Bytes)(mnemonic, strings_1.UnicodeNormalizationForm.NFKD), salt, 2048, 64, "sha512"); -} -exports.mnemonicToSeed = mnemonicToSeed; -function mnemonicToEntropy(mnemonic, wordlist) { - wordlist = getWordlist(wordlist); - logger.checkNormalize(); - var words = wordlist.split(mnemonic); - if ((words.length % 3) !== 0) { - throw new Error("invalid mnemonic"); - } - var entropy = (0, bytes_1.arrayify)(new Uint8Array(Math.ceil(11 * words.length / 8))); - var offset = 0; - for (var i = 0; i < words.length; i++) { - var index = wordlist.getWordIndex(words[i].normalize("NFKD")); - if (index === -1) { - throw new Error("invalid mnemonic"); - } - for (var bit = 0; bit < 11; bit++) { - if (index & (1 << (10 - bit))) { - entropy[offset >> 3] |= (1 << (7 - (offset % 8))); - } - offset++; - } - } - var entropyBits = 32 * words.length / 3; - var checksumBits = words.length / 3; - var checksumMask = getUpperMask(checksumBits); - var checksum = (0, bytes_1.arrayify)((0, sha2_1.sha256)(entropy.slice(0, entropyBits / 8)))[0] & checksumMask; - if (checksum !== (entropy[entropy.length - 1] & checksumMask)) { - throw new Error("invalid checksum"); - } - return (0, bytes_1.hexlify)(entropy.slice(0, entropyBits / 8)); -} -exports.mnemonicToEntropy = mnemonicToEntropy; -function entropyToMnemonic(entropy, wordlist) { - wordlist = getWordlist(wordlist); - entropy = (0, bytes_1.arrayify)(entropy); - if ((entropy.length % 4) !== 0 || entropy.length < 16 || entropy.length > 32) { - throw new Error("invalid entropy"); - } - var indices = [0]; - var remainingBits = 11; - for (var i = 0; i < entropy.length; i++) { - // Consume the whole byte (with still more to go) - if (remainingBits > 8) { - indices[indices.length - 1] <<= 8; - indices[indices.length - 1] |= entropy[i]; - remainingBits -= 8; - // This byte will complete an 11-bit index - } - else { - indices[indices.length - 1] <<= remainingBits; - indices[indices.length - 1] |= entropy[i] >> (8 - remainingBits); - // Start the next word - indices.push(entropy[i] & getLowerMask(8 - remainingBits)); - remainingBits += 3; - } - } - // Compute the checksum bits - var checksumBits = entropy.length / 4; - var checksum = (0, bytes_1.arrayify)((0, sha2_1.sha256)(entropy))[0] & getUpperMask(checksumBits); - // Shift the checksum into the word indices - indices[indices.length - 1] <<= checksumBits; - indices[indices.length - 1] |= (checksum >> (8 - checksumBits)); - return wordlist.join(indices.map(function (index) { return wordlist.getWord(index); })); -} -exports.entropyToMnemonic = entropyToMnemonic; -function isValidMnemonic(mnemonic, wordlist) { - try { - mnemonicToEntropy(mnemonic, wordlist); - return true; - } - catch (error) { } - return false; -} -exports.isValidMnemonic = isValidMnemonic; -function getAccountPath(index) { - if (typeof (index) !== "number" || index < 0 || index >= HardenedBit || index % 1) { - logger.throwArgumentError("invalid account index", "index", index); - } - return "m/44'/60'/" + index + "'/0/0"; -} -exports.getAccountPath = getAccountPath; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 20771: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "json-wallets/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 41340: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.decrypt = exports.CrowdsaleAccount = void 0; -var aes_js_1 = __importDefault(__nccwpck_require__(63375)); -var address_1 = __nccwpck_require__(75745); -var bytes_1 = __nccwpck_require__(42006); -var keccak256_1 = __nccwpck_require__(56938); -var pbkdf2_1 = __nccwpck_require__(15686); -var strings_1 = __nccwpck_require__(13859); -var properties_1 = __nccwpck_require__(61338); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(20771); -var logger = new logger_1.Logger(_version_1.version); -var utils_1 = __nccwpck_require__(63503); -var CrowdsaleAccount = /** @class */ (function (_super) { - __extends(CrowdsaleAccount, _super); - function CrowdsaleAccount() { - return _super !== null && _super.apply(this, arguments) || this; - } - CrowdsaleAccount.prototype.isCrowdsaleAccount = function (value) { - return !!(value && value._isCrowdsaleAccount); - }; - return CrowdsaleAccount; -}(properties_1.Description)); -exports.CrowdsaleAccount = CrowdsaleAccount; -// See: https://github.com/ethereum/pyethsaletool -function decrypt(json, password) { - var data = JSON.parse(json); - password = (0, utils_1.getPassword)(password); - // Ethereum Address - var ethaddr = (0, address_1.getAddress)((0, utils_1.searchPath)(data, "ethaddr")); - // Encrypted Seed - var encseed = (0, utils_1.looseArrayify)((0, utils_1.searchPath)(data, "encseed")); - if (!encseed || (encseed.length % 16) !== 0) { - logger.throwArgumentError("invalid encseed", "json", json); - } - var key = (0, bytes_1.arrayify)((0, pbkdf2_1.pbkdf2)(password, password, 2000, 32, "sha256")).slice(0, 16); - var iv = encseed.slice(0, 16); - var encryptedSeed = encseed.slice(16); - // Decrypt the seed - var aesCbc = new aes_js_1.default.ModeOfOperation.cbc(key, iv); - var seed = aes_js_1.default.padding.pkcs7.strip((0, bytes_1.arrayify)(aesCbc.decrypt(encryptedSeed))); - // This wallet format is weird... Convert the binary encoded hex to a string. - var seedHex = ""; - for (var i = 0; i < seed.length; i++) { - seedHex += String.fromCharCode(seed[i]); - } - var seedHexBytes = (0, strings_1.toUtf8Bytes)(seedHex); - var privateKey = (0, keccak256_1.keccak256)(seedHexBytes); - return new CrowdsaleAccount({ - _isCrowdsaleAccount: true, - address: ethaddr, - privateKey: privateKey - }); -} -exports.decrypt = decrypt; -//# sourceMappingURL=crowdsale.js.map - -/***/ }), - -/***/ 3582: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.decryptJsonWalletSync = exports.decryptJsonWallet = exports.getJsonWalletAddress = exports.isKeystoreWallet = exports.isCrowdsaleWallet = exports.encryptKeystore = exports.decryptKeystoreSync = exports.decryptKeystore = exports.decryptCrowdsale = void 0; -var crowdsale_1 = __nccwpck_require__(41340); -Object.defineProperty(exports, "decryptCrowdsale", ({ enumerable: true, get: function () { return crowdsale_1.decrypt; } })); -var inspect_1 = __nccwpck_require__(27610); -Object.defineProperty(exports, "getJsonWalletAddress", ({ enumerable: true, get: function () { return inspect_1.getJsonWalletAddress; } })); -Object.defineProperty(exports, "isCrowdsaleWallet", ({ enumerable: true, get: function () { return inspect_1.isCrowdsaleWallet; } })); -Object.defineProperty(exports, "isKeystoreWallet", ({ enumerable: true, get: function () { return inspect_1.isKeystoreWallet; } })); -var keystore_1 = __nccwpck_require__(1692); -Object.defineProperty(exports, "decryptKeystore", ({ enumerable: true, get: function () { return keystore_1.decrypt; } })); -Object.defineProperty(exports, "decryptKeystoreSync", ({ enumerable: true, get: function () { return keystore_1.decryptSync; } })); -Object.defineProperty(exports, "encryptKeystore", ({ enumerable: true, get: function () { return keystore_1.encrypt; } })); -function decryptJsonWallet(json, password, progressCallback) { - if ((0, inspect_1.isCrowdsaleWallet)(json)) { - if (progressCallback) { - progressCallback(0); - } - var account = (0, crowdsale_1.decrypt)(json, password); - if (progressCallback) { - progressCallback(1); - } - return Promise.resolve(account); - } - if ((0, inspect_1.isKeystoreWallet)(json)) { - return (0, keystore_1.decrypt)(json, password, progressCallback); - } - return Promise.reject(new Error("invalid JSON wallet")); -} -exports.decryptJsonWallet = decryptJsonWallet; -function decryptJsonWalletSync(json, password) { - if ((0, inspect_1.isCrowdsaleWallet)(json)) { - return (0, crowdsale_1.decrypt)(json, password); - } - if ((0, inspect_1.isKeystoreWallet)(json)) { - return (0, keystore_1.decryptSync)(json, password); - } - throw new Error("invalid JSON wallet"); -} -exports.decryptJsonWalletSync = decryptJsonWalletSync; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 27610: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.getJsonWalletAddress = exports.isKeystoreWallet = exports.isCrowdsaleWallet = void 0; -var address_1 = __nccwpck_require__(75745); -function isCrowdsaleWallet(json) { - var data = null; - try { - data = JSON.parse(json); - } - catch (error) { - return false; - } - return (data.encseed && data.ethaddr); -} -exports.isCrowdsaleWallet = isCrowdsaleWallet; -function isKeystoreWallet(json) { - var data = null; - try { - data = JSON.parse(json); - } - catch (error) { - return false; - } - if (!data.version || parseInt(data.version) !== data.version || parseInt(data.version) !== 3) { - return false; - } - // @TODO: Put more checks to make sure it has kdf, iv and all that good stuff - return true; -} -exports.isKeystoreWallet = isKeystoreWallet; -//export function isJsonWallet(json: string): boolean { -// return (isSecretStorageWallet(json) || isCrowdsaleWallet(json)); -//} -function getJsonWalletAddress(json) { - if (isCrowdsaleWallet(json)) { - try { - return (0, address_1.getAddress)(JSON.parse(json).ethaddr); - } - catch (error) { - return null; - } - } - if (isKeystoreWallet(json)) { - try { - return (0, address_1.getAddress)(JSON.parse(json).address); - } - catch (error) { - return null; - } - } - return null; -} -exports.getJsonWalletAddress = getJsonWalletAddress; -//# sourceMappingURL=inspect.js.map - -/***/ }), - -/***/ 1692: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -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 }; - } -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.encrypt = exports.decrypt = exports.decryptSync = exports.KeystoreAccount = void 0; -var aes_js_1 = __importDefault(__nccwpck_require__(63375)); -var scrypt_js_1 = __importDefault(__nccwpck_require__(56606)); -var address_1 = __nccwpck_require__(75745); -var bytes_1 = __nccwpck_require__(42006); -var hdnode_1 = __nccwpck_require__(13067); -var keccak256_1 = __nccwpck_require__(56938); -var pbkdf2_1 = __nccwpck_require__(15686); -var random_1 = __nccwpck_require__(53728); -var properties_1 = __nccwpck_require__(61338); -var transactions_1 = __nccwpck_require__(62394); -var utils_1 = __nccwpck_require__(63503); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(20771); -var logger = new logger_1.Logger(_version_1.version); -// Exported Types -function hasMnemonic(value) { - return (value != null && value.mnemonic && value.mnemonic.phrase); -} -var KeystoreAccount = /** @class */ (function (_super) { - __extends(KeystoreAccount, _super); - function KeystoreAccount() { - return _super !== null && _super.apply(this, arguments) || this; - } - KeystoreAccount.prototype.isKeystoreAccount = function (value) { - return !!(value && value._isKeystoreAccount); - }; - return KeystoreAccount; -}(properties_1.Description)); -exports.KeystoreAccount = KeystoreAccount; -function _decrypt(data, key, ciphertext) { - var cipher = (0, utils_1.searchPath)(data, "crypto/cipher"); - if (cipher === "aes-128-ctr") { - var iv = (0, utils_1.looseArrayify)((0, utils_1.searchPath)(data, "crypto/cipherparams/iv")); - var counter = new aes_js_1.default.Counter(iv); - var aesCtr = new aes_js_1.default.ModeOfOperation.ctr(key, counter); - return (0, bytes_1.arrayify)(aesCtr.decrypt(ciphertext)); - } - return null; -} -function _getAccount(data, key) { - var ciphertext = (0, utils_1.looseArrayify)((0, utils_1.searchPath)(data, "crypto/ciphertext")); - var computedMAC = (0, bytes_1.hexlify)((0, keccak256_1.keccak256)((0, bytes_1.concat)([key.slice(16, 32), ciphertext]))).substring(2); - if (computedMAC !== (0, utils_1.searchPath)(data, "crypto/mac").toLowerCase()) { - throw new Error("invalid password"); - } - var privateKey = _decrypt(data, key.slice(0, 16), ciphertext); - if (!privateKey) { - logger.throwError("unsupported cipher", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "decrypt" - }); - } - var mnemonicKey = key.slice(32, 64); - var address = (0, transactions_1.computeAddress)(privateKey); - if (data.address) { - var check = data.address.toLowerCase(); - if (check.substring(0, 2) !== "0x") { - check = "0x" + check; - } - if ((0, address_1.getAddress)(check) !== address) { - throw new Error("address mismatch"); - } - } - var account = { - _isKeystoreAccount: true, - address: address, - privateKey: (0, bytes_1.hexlify)(privateKey) - }; - // Version 0.1 x-ethers metadata must contain an encrypted mnemonic phrase - if ((0, utils_1.searchPath)(data, "x-ethers/version") === "0.1") { - var mnemonicCiphertext = (0, utils_1.looseArrayify)((0, utils_1.searchPath)(data, "x-ethers/mnemonicCiphertext")); - var mnemonicIv = (0, utils_1.looseArrayify)((0, utils_1.searchPath)(data, "x-ethers/mnemonicCounter")); - var mnemonicCounter = new aes_js_1.default.Counter(mnemonicIv); - var mnemonicAesCtr = new aes_js_1.default.ModeOfOperation.ctr(mnemonicKey, mnemonicCounter); - var path = (0, utils_1.searchPath)(data, "x-ethers/path") || hdnode_1.defaultPath; - var locale = (0, utils_1.searchPath)(data, "x-ethers/locale") || "en"; - var entropy = (0, bytes_1.arrayify)(mnemonicAesCtr.decrypt(mnemonicCiphertext)); - try { - var mnemonic = (0, hdnode_1.entropyToMnemonic)(entropy, locale); - var node = hdnode_1.HDNode.fromMnemonic(mnemonic, null, locale).derivePath(path); - if (node.privateKey != account.privateKey) { - throw new Error("mnemonic mismatch"); - } - account.mnemonic = node.mnemonic; - } - catch (error) { - // If we don't have the locale wordlist installed to - // read this mnemonic, just bail and don't set the - // mnemonic - if (error.code !== logger_1.Logger.errors.INVALID_ARGUMENT || error.argument !== "wordlist") { - throw error; - } - } - } - return new KeystoreAccount(account); -} -function pbkdf2Sync(passwordBytes, salt, count, dkLen, prfFunc) { - return (0, bytes_1.arrayify)((0, pbkdf2_1.pbkdf2)(passwordBytes, salt, count, dkLen, prfFunc)); -} -function pbkdf2(passwordBytes, salt, count, dkLen, prfFunc) { - return Promise.resolve(pbkdf2Sync(passwordBytes, salt, count, dkLen, prfFunc)); -} -function _computeKdfKey(data, password, pbkdf2Func, scryptFunc, progressCallback) { - var passwordBytes = (0, utils_1.getPassword)(password); - var kdf = (0, utils_1.searchPath)(data, "crypto/kdf"); - if (kdf && typeof (kdf) === "string") { - var throwError = function (name, value) { - return logger.throwArgumentError("invalid key-derivation function parameters", name, value); - }; - if (kdf.toLowerCase() === "scrypt") { - var salt = (0, utils_1.looseArrayify)((0, utils_1.searchPath)(data, "crypto/kdfparams/salt")); - var N = parseInt((0, utils_1.searchPath)(data, "crypto/kdfparams/n")); - var r = parseInt((0, utils_1.searchPath)(data, "crypto/kdfparams/r")); - var p = parseInt((0, utils_1.searchPath)(data, "crypto/kdfparams/p")); - // Check for all required parameters - if (!N || !r || !p) { - throwError("kdf", kdf); - } - // Make sure N is a power of 2 - if ((N & (N - 1)) !== 0) { - throwError("N", N); - } - var dkLen = parseInt((0, utils_1.searchPath)(data, "crypto/kdfparams/dklen")); - if (dkLen !== 32) { - throwError("dklen", dkLen); - } - return scryptFunc(passwordBytes, salt, N, r, p, 64, progressCallback); - } - else if (kdf.toLowerCase() === "pbkdf2") { - var salt = (0, utils_1.looseArrayify)((0, utils_1.searchPath)(data, "crypto/kdfparams/salt")); - var prfFunc = null; - var prf = (0, utils_1.searchPath)(data, "crypto/kdfparams/prf"); - if (prf === "hmac-sha256") { - prfFunc = "sha256"; - } - else if (prf === "hmac-sha512") { - prfFunc = "sha512"; - } - else { - throwError("prf", prf); - } - var count = parseInt((0, utils_1.searchPath)(data, "crypto/kdfparams/c")); - var dkLen = parseInt((0, utils_1.searchPath)(data, "crypto/kdfparams/dklen")); - if (dkLen !== 32) { - throwError("dklen", dkLen); - } - return pbkdf2Func(passwordBytes, salt, count, dkLen, prfFunc); - } - } - return logger.throwArgumentError("unsupported key-derivation function", "kdf", kdf); -} -function decryptSync(json, password) { - var data = JSON.parse(json); - var key = _computeKdfKey(data, password, pbkdf2Sync, scrypt_js_1.default.syncScrypt); - return _getAccount(data, key); -} -exports.decryptSync = decryptSync; -function decrypt(json, password, progressCallback) { - return __awaiter(this, void 0, void 0, function () { - var data, key; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - data = JSON.parse(json); - return [4 /*yield*/, _computeKdfKey(data, password, pbkdf2, scrypt_js_1.default.scrypt, progressCallback)]; - case 1: - key = _a.sent(); - return [2 /*return*/, _getAccount(data, key)]; - } - }); - }); -} -exports.decrypt = decrypt; -function encrypt(account, password, options, progressCallback) { - try { - // Check the address matches the private key - if ((0, address_1.getAddress)(account.address) !== (0, transactions_1.computeAddress)(account.privateKey)) { - throw new Error("address/privateKey mismatch"); - } - // Check the mnemonic (if any) matches the private key - if (hasMnemonic(account)) { - var mnemonic = account.mnemonic; - var node = hdnode_1.HDNode.fromMnemonic(mnemonic.phrase, null, mnemonic.locale).derivePath(mnemonic.path || hdnode_1.defaultPath); - if (node.privateKey != account.privateKey) { - throw new Error("mnemonic mismatch"); - } - } - } - catch (e) { - return Promise.reject(e); - } - // The options are optional, so adjust the call as needed - if (typeof (options) === "function" && !progressCallback) { - progressCallback = options; - options = {}; - } - if (!options) { - options = {}; - } - var privateKey = (0, bytes_1.arrayify)(account.privateKey); - var passwordBytes = (0, utils_1.getPassword)(password); - var entropy = null; - var path = null; - var locale = null; - if (hasMnemonic(account)) { - var srcMnemonic = account.mnemonic; - entropy = (0, bytes_1.arrayify)((0, hdnode_1.mnemonicToEntropy)(srcMnemonic.phrase, srcMnemonic.locale || "en")); - path = srcMnemonic.path || hdnode_1.defaultPath; - locale = srcMnemonic.locale || "en"; - } - var client = options.client; - if (!client) { - client = "ethers.js"; - } - // Check/generate the salt - var salt = null; - if (options.salt) { - salt = (0, bytes_1.arrayify)(options.salt); - } - else { - salt = (0, random_1.randomBytes)(32); - ; - } - // Override initialization vector - var iv = null; - if (options.iv) { - iv = (0, bytes_1.arrayify)(options.iv); - if (iv.length !== 16) { - throw new Error("invalid iv"); - } - } - else { - iv = (0, random_1.randomBytes)(16); - } - // Override the uuid - var uuidRandom = null; - if (options.uuid) { - uuidRandom = (0, bytes_1.arrayify)(options.uuid); - if (uuidRandom.length !== 16) { - throw new Error("invalid uuid"); - } - } - else { - uuidRandom = (0, random_1.randomBytes)(16); - } - // Override the scrypt password-based key derivation function parameters - var N = (1 << 17), r = 8, p = 1; - if (options.scrypt) { - if (options.scrypt.N) { - N = options.scrypt.N; - } - if (options.scrypt.r) { - r = options.scrypt.r; - } - if (options.scrypt.p) { - p = options.scrypt.p; - } - } - // We take 64 bytes: - // - 32 bytes As normal for the Web3 secret storage (derivedKey, macPrefix) - // - 32 bytes AES key to encrypt mnemonic with (required here to be Ethers Wallet) - return scrypt_js_1.default.scrypt(passwordBytes, salt, N, r, p, 64, progressCallback).then(function (key) { - key = (0, bytes_1.arrayify)(key); - // This will be used to encrypt the wallet (as per Web3 secret storage) - var derivedKey = key.slice(0, 16); - var macPrefix = key.slice(16, 32); - // This will be used to encrypt the mnemonic phrase (if any) - var mnemonicKey = key.slice(32, 64); - // Encrypt the private key - var counter = new aes_js_1.default.Counter(iv); - var aesCtr = new aes_js_1.default.ModeOfOperation.ctr(derivedKey, counter); - var ciphertext = (0, bytes_1.arrayify)(aesCtr.encrypt(privateKey)); - // Compute the message authentication code, used to check the password - var mac = (0, keccak256_1.keccak256)((0, bytes_1.concat)([macPrefix, ciphertext])); - // See: https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition - var data = { - address: account.address.substring(2).toLowerCase(), - id: (0, utils_1.uuidV4)(uuidRandom), - version: 3, - crypto: { - cipher: "aes-128-ctr", - cipherparams: { - iv: (0, bytes_1.hexlify)(iv).substring(2), - }, - ciphertext: (0, bytes_1.hexlify)(ciphertext).substring(2), - kdf: "scrypt", - kdfparams: { - salt: (0, bytes_1.hexlify)(salt).substring(2), - n: N, - dklen: 32, - p: p, - r: r - }, - mac: mac.substring(2) - } - }; - // If we have a mnemonic, encrypt it into the JSON wallet - if (entropy) { - var mnemonicIv = (0, random_1.randomBytes)(16); - var mnemonicCounter = new aes_js_1.default.Counter(mnemonicIv); - var mnemonicAesCtr = new aes_js_1.default.ModeOfOperation.ctr(mnemonicKey, mnemonicCounter); - var mnemonicCiphertext = (0, bytes_1.arrayify)(mnemonicAesCtr.encrypt(entropy)); - var now = new Date(); - var timestamp = (now.getUTCFullYear() + "-" + - (0, utils_1.zpad)(now.getUTCMonth() + 1, 2) + "-" + - (0, utils_1.zpad)(now.getUTCDate(), 2) + "T" + - (0, utils_1.zpad)(now.getUTCHours(), 2) + "-" + - (0, utils_1.zpad)(now.getUTCMinutes(), 2) + "-" + - (0, utils_1.zpad)(now.getUTCSeconds(), 2) + ".0Z"); - data["x-ethers"] = { - client: client, - gethFilename: ("UTC--" + timestamp + "--" + data.address), - mnemonicCounter: (0, bytes_1.hexlify)(mnemonicIv).substring(2), - mnemonicCiphertext: (0, bytes_1.hexlify)(mnemonicCiphertext).substring(2), - path: path, - locale: locale, - version: "0.1" - }; - } - return JSON.stringify(data); - }); -} -exports.encrypt = encrypt; -//# sourceMappingURL=keystore.js.map - -/***/ }), - -/***/ 63503: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.uuidV4 = exports.searchPath = exports.getPassword = exports.zpad = exports.looseArrayify = void 0; -var bytes_1 = __nccwpck_require__(42006); -var strings_1 = __nccwpck_require__(13859); -function looseArrayify(hexString) { - if (typeof (hexString) === 'string' && hexString.substring(0, 2) !== '0x') { - hexString = '0x' + hexString; - } - return (0, bytes_1.arrayify)(hexString); -} -exports.looseArrayify = looseArrayify; -function zpad(value, length) { - value = String(value); - while (value.length < length) { - value = '0' + value; - } - return value; -} -exports.zpad = zpad; -function getPassword(password) { - if (typeof (password) === 'string') { - return (0, strings_1.toUtf8Bytes)(password, strings_1.UnicodeNormalizationForm.NFKC); - } - return (0, bytes_1.arrayify)(password); -} -exports.getPassword = getPassword; -function searchPath(object, path) { - var currentChild = object; - var comps = path.toLowerCase().split('/'); - for (var i = 0; i < comps.length; i++) { - // Search for a child object with a case-insensitive matching key - var matchingChild = null; - for (var key in currentChild) { - if (key.toLowerCase() === comps[i]) { - matchingChild = currentChild[key]; - break; - } - } - // Didn't find one. :'( - if (matchingChild === null) { - return null; - } - // Now check this child... - currentChild = matchingChild; - } - return currentChild; -} -exports.searchPath = searchPath; -// See: https://www.ietf.org/rfc/rfc4122.txt (Section 4.4) -function uuidV4(randomBytes) { - var bytes = (0, bytes_1.arrayify)(randomBytes); - // Section: 4.1.3: - // - time_hi_and_version[12:16] = 0b0100 - bytes[6] = (bytes[6] & 0x0f) | 0x40; - // Section 4.4 - // - clock_seq_hi_and_reserved[6] = 0b0 - // - clock_seq_hi_and_reserved[7] = 0b1 - bytes[8] = (bytes[8] & 0x3f) | 0x80; - var value = (0, bytes_1.hexlify)(bytes); - return [ - value.substring(2, 10), - value.substring(10, 14), - value.substring(14, 18), - value.substring(18, 22), - value.substring(22, 34), - ].join("-"); -} -exports.uuidV4 = uuidV4; -//# sourceMappingURL=utils.js.map - -/***/ }), - -/***/ 63375: -/***/ (function(module) { - -"use strict"; - - -(function(root) { - - function checkInt(value) { - return (parseInt(value) === value); - } - - function checkInts(arrayish) { - if (!checkInt(arrayish.length)) { return false; } - - for (var i = 0; i < arrayish.length; i++) { - if (!checkInt(arrayish[i]) || arrayish[i] < 0 || arrayish[i] > 255) { - return false; - } - } - - return true; - } - - function coerceArray(arg, copy) { - - // ArrayBuffer view - if (arg.buffer && ArrayBuffer.isView(arg) && arg.name === 'Uint8Array') { - - if (copy) { - if (arg.slice) { - arg = arg.slice(); - } else { - arg = Array.prototype.slice.call(arg); - } - } - - return arg; - } - - // It's an array; check it is a valid representation of a byte - if (Array.isArray(arg)) { - if (!checkInts(arg)) { - throw new Error('Array contains invalid value: ' + arg); - } - - return new Uint8Array(arg); - } - - // Something else, but behaves like an array (maybe a Buffer? Arguments?) - if (checkInt(arg.length) && checkInts(arg)) { - return new Uint8Array(arg); - } - - throw new Error('unsupported array-like object'); - } - - function createArray(length) { - return new Uint8Array(length); - } - - function copyArray(sourceArray, targetArray, targetStart, sourceStart, sourceEnd) { - if (sourceStart != null || sourceEnd != null) { - if (sourceArray.slice) { - sourceArray = sourceArray.slice(sourceStart, sourceEnd); - } else { - sourceArray = Array.prototype.slice.call(sourceArray, sourceStart, sourceEnd); - } - } - targetArray.set(sourceArray, targetStart); - } - - - - var convertUtf8 = (function() { - function toBytes(text) { - var result = [], i = 0; - text = encodeURI(text); - while (i < text.length) { - var c = text.charCodeAt(i++); - - // if it is a % sign, encode the following 2 bytes as a hex value - if (c === 37) { - result.push(parseInt(text.substr(i, 2), 16)) - i += 2; - - // otherwise, just the actual byte - } else { - result.push(c) - } - } - - return coerceArray(result); - } - - function fromBytes(bytes) { - var result = [], i = 0; - - while (i < bytes.length) { - var c = bytes[i]; - - if (c < 128) { - result.push(String.fromCharCode(c)); - i++; - } else if (c > 191 && c < 224) { - result.push(String.fromCharCode(((c & 0x1f) << 6) | (bytes[i + 1] & 0x3f))); - i += 2; - } else { - result.push(String.fromCharCode(((c & 0x0f) << 12) | ((bytes[i + 1] & 0x3f) << 6) | (bytes[i + 2] & 0x3f))); - i += 3; - } - } - - return result.join(''); - } - - return { - toBytes: toBytes, - fromBytes: fromBytes, - } - })(); - - var convertHex = (function() { - function toBytes(text) { - var result = []; - for (var i = 0; i < text.length; i += 2) { - result.push(parseInt(text.substr(i, 2), 16)); - } - - return result; - } - - // http://ixti.net/development/javascript/2011/11/11/base64-encodedecode-of-utf8-in-browser-with-js.html - var Hex = '0123456789abcdef'; - - function fromBytes(bytes) { - var result = []; - for (var i = 0; i < bytes.length; i++) { - var v = bytes[i]; - result.push(Hex[(v & 0xf0) >> 4] + Hex[v & 0x0f]); - } - return result.join(''); - } - - return { - toBytes: toBytes, - fromBytes: fromBytes, - } - })(); - - - // Number of rounds by keysize - var numberOfRounds = {16: 10, 24: 12, 32: 14} - - // Round constant words - var rcon = [0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1b, 0x36, 0x6c, 0xd8, 0xab, 0x4d, 0x9a, 0x2f, 0x5e, 0xbc, 0x63, 0xc6, 0x97, 0x35, 0x6a, 0xd4, 0xb3, 0x7d, 0xfa, 0xef, 0xc5, 0x91]; - - // S-box and Inverse S-box (S is for Substitution) - var S = [0x63, 0x7c, 0x77, 0x7b, 0xf2, 0x6b, 0x6f, 0xc5, 0x30, 0x01, 0x67, 0x2b, 0xfe, 0xd7, 0xab, 0x76, 0xca, 0x82, 0xc9, 0x7d, 0xfa, 0x59, 0x47, 0xf0, 0xad, 0xd4, 0xa2, 0xaf, 0x9c, 0xa4, 0x72, 0xc0, 0xb7, 0xfd, 0x93, 0x26, 0x36, 0x3f, 0xf7, 0xcc, 0x34, 0xa5, 0xe5, 0xf1, 0x71, 0xd8, 0x31, 0x15, 0x04, 0xc7, 0x23, 0xc3, 0x18, 0x96, 0x05, 0x9a, 0x07, 0x12, 0x80, 0xe2, 0xeb, 0x27, 0xb2, 0x75, 0x09, 0x83, 0x2c, 0x1a, 0x1b, 0x6e, 0x5a, 0xa0, 0x52, 0x3b, 0xd6, 0xb3, 0x29, 0xe3, 0x2f, 0x84, 0x53, 0xd1, 0x00, 0xed, 0x20, 0xfc, 0xb1, 0x5b, 0x6a, 0xcb, 0xbe, 0x39, 0x4a, 0x4c, 0x58, 0xcf, 0xd0, 0xef, 0xaa, 0xfb, 0x43, 0x4d, 0x33, 0x85, 0x45, 0xf9, 0x02, 0x7f, 0x50, 0x3c, 0x9f, 0xa8, 0x51, 0xa3, 0x40, 0x8f, 0x92, 0x9d, 0x38, 0xf5, 0xbc, 0xb6, 0xda, 0x21, 0x10, 0xff, 0xf3, 0xd2, 0xcd, 0x0c, 0x13, 0xec, 0x5f, 0x97, 0x44, 0x17, 0xc4, 0xa7, 0x7e, 0x3d, 0x64, 0x5d, 0x19, 0x73, 0x60, 0x81, 0x4f, 0xdc, 0x22, 0x2a, 0x90, 0x88, 0x46, 0xee, 0xb8, 0x14, 0xde, 0x5e, 0x0b, 0xdb, 0xe0, 0x32, 0x3a, 0x0a, 0x49, 0x06, 0x24, 0x5c, 0xc2, 0xd3, 0xac, 0x62, 0x91, 0x95, 0xe4, 0x79, 0xe7, 0xc8, 0x37, 0x6d, 0x8d, 0xd5, 0x4e, 0xa9, 0x6c, 0x56, 0xf4, 0xea, 0x65, 0x7a, 0xae, 0x08, 0xba, 0x78, 0x25, 0x2e, 0x1c, 0xa6, 0xb4, 0xc6, 0xe8, 0xdd, 0x74, 0x1f, 0x4b, 0xbd, 0x8b, 0x8a, 0x70, 0x3e, 0xb5, 0x66, 0x48, 0x03, 0xf6, 0x0e, 0x61, 0x35, 0x57, 0xb9, 0x86, 0xc1, 0x1d, 0x9e, 0xe1, 0xf8, 0x98, 0x11, 0x69, 0xd9, 0x8e, 0x94, 0x9b, 0x1e, 0x87, 0xe9, 0xce, 0x55, 0x28, 0xdf, 0x8c, 0xa1, 0x89, 0x0d, 0xbf, 0xe6, 0x42, 0x68, 0x41, 0x99, 0x2d, 0x0f, 0xb0, 0x54, 0xbb, 0x16]; - var Si =[0x52, 0x09, 0x6a, 0xd5, 0x30, 0x36, 0xa5, 0x38, 0xbf, 0x40, 0xa3, 0x9e, 0x81, 0xf3, 0xd7, 0xfb, 0x7c, 0xe3, 0x39, 0x82, 0x9b, 0x2f, 0xff, 0x87, 0x34, 0x8e, 0x43, 0x44, 0xc4, 0xde, 0xe9, 0xcb, 0x54, 0x7b, 0x94, 0x32, 0xa6, 0xc2, 0x23, 0x3d, 0xee, 0x4c, 0x95, 0x0b, 0x42, 0xfa, 0xc3, 0x4e, 0x08, 0x2e, 0xa1, 0x66, 0x28, 0xd9, 0x24, 0xb2, 0x76, 0x5b, 0xa2, 0x49, 0x6d, 0x8b, 0xd1, 0x25, 0x72, 0xf8, 0xf6, 0x64, 0x86, 0x68, 0x98, 0x16, 0xd4, 0xa4, 0x5c, 0xcc, 0x5d, 0x65, 0xb6, 0x92, 0x6c, 0x70, 0x48, 0x50, 0xfd, 0xed, 0xb9, 0xda, 0x5e, 0x15, 0x46, 0x57, 0xa7, 0x8d, 0x9d, 0x84, 0x90, 0xd8, 0xab, 0x00, 0x8c, 0xbc, 0xd3, 0x0a, 0xf7, 0xe4, 0x58, 0x05, 0xb8, 0xb3, 0x45, 0x06, 0xd0, 0x2c, 0x1e, 0x8f, 0xca, 0x3f, 0x0f, 0x02, 0xc1, 0xaf, 0xbd, 0x03, 0x01, 0x13, 0x8a, 0x6b, 0x3a, 0x91, 0x11, 0x41, 0x4f, 0x67, 0xdc, 0xea, 0x97, 0xf2, 0xcf, 0xce, 0xf0, 0xb4, 0xe6, 0x73, 0x96, 0xac, 0x74, 0x22, 0xe7, 0xad, 0x35, 0x85, 0xe2, 0xf9, 0x37, 0xe8, 0x1c, 0x75, 0xdf, 0x6e, 0x47, 0xf1, 0x1a, 0x71, 0x1d, 0x29, 0xc5, 0x89, 0x6f, 0xb7, 0x62, 0x0e, 0xaa, 0x18, 0xbe, 0x1b, 0xfc, 0x56, 0x3e, 0x4b, 0xc6, 0xd2, 0x79, 0x20, 0x9a, 0xdb, 0xc0, 0xfe, 0x78, 0xcd, 0x5a, 0xf4, 0x1f, 0xdd, 0xa8, 0x33, 0x88, 0x07, 0xc7, 0x31, 0xb1, 0x12, 0x10, 0x59, 0x27, 0x80, 0xec, 0x5f, 0x60, 0x51, 0x7f, 0xa9, 0x19, 0xb5, 0x4a, 0x0d, 0x2d, 0xe5, 0x7a, 0x9f, 0x93, 0xc9, 0x9c, 0xef, 0xa0, 0xe0, 0x3b, 0x4d, 0xae, 0x2a, 0xf5, 0xb0, 0xc8, 0xeb, 0xbb, 0x3c, 0x83, 0x53, 0x99, 0x61, 0x17, 0x2b, 0x04, 0x7e, 0xba, 0x77, 0xd6, 0x26, 0xe1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0c, 0x7d]; - - // Transformations for encryption - var T1 = [0xc66363a5, 0xf87c7c84, 0xee777799, 0xf67b7b8d, 0xfff2f20d, 0xd66b6bbd, 0xde6f6fb1, 0x91c5c554, 0x60303050, 0x02010103, 0xce6767a9, 0x562b2b7d, 0xe7fefe19, 0xb5d7d762, 0x4dababe6, 0xec76769a, 0x8fcaca45, 0x1f82829d, 0x89c9c940, 0xfa7d7d87, 0xeffafa15, 0xb25959eb, 0x8e4747c9, 0xfbf0f00b, 0x41adadec, 0xb3d4d467, 0x5fa2a2fd, 0x45afafea, 0x239c9cbf, 0x53a4a4f7, 0xe4727296, 0x9bc0c05b, 0x75b7b7c2, 0xe1fdfd1c, 0x3d9393ae, 0x4c26266a, 0x6c36365a, 0x7e3f3f41, 0xf5f7f702, 0x83cccc4f, 0x6834345c, 0x51a5a5f4, 0xd1e5e534, 0xf9f1f108, 0xe2717193, 0xabd8d873, 0x62313153, 0x2a15153f, 0x0804040c, 0x95c7c752, 0x46232365, 0x9dc3c35e, 0x30181828, 0x379696a1, 0x0a05050f, 0x2f9a9ab5, 0x0e070709, 0x24121236, 0x1b80809b, 0xdfe2e23d, 0xcdebeb26, 0x4e272769, 0x7fb2b2cd, 0xea75759f, 0x1209091b, 0x1d83839e, 0x582c2c74, 0x341a1a2e, 0x361b1b2d, 0xdc6e6eb2, 0xb45a5aee, 0x5ba0a0fb, 0xa45252f6, 0x763b3b4d, 0xb7d6d661, 0x7db3b3ce, 0x5229297b, 0xdde3e33e, 0x5e2f2f71, 0x13848497, 0xa65353f5, 0xb9d1d168, 0x00000000, 0xc1eded2c, 0x40202060, 0xe3fcfc1f, 0x79b1b1c8, 0xb65b5bed, 0xd46a6abe, 0x8dcbcb46, 0x67bebed9, 0x7239394b, 0x944a4ade, 0x984c4cd4, 0xb05858e8, 0x85cfcf4a, 0xbbd0d06b, 0xc5efef2a, 0x4faaaae5, 0xedfbfb16, 0x864343c5, 0x9a4d4dd7, 0x66333355, 0x11858594, 0x8a4545cf, 0xe9f9f910, 0x04020206, 0xfe7f7f81, 0xa05050f0, 0x783c3c44, 0x259f9fba, 0x4ba8a8e3, 0xa25151f3, 0x5da3a3fe, 0x804040c0, 0x058f8f8a, 0x3f9292ad, 0x219d9dbc, 0x70383848, 0xf1f5f504, 0x63bcbcdf, 0x77b6b6c1, 0xafdada75, 0x42212163, 0x20101030, 0xe5ffff1a, 0xfdf3f30e, 0xbfd2d26d, 0x81cdcd4c, 0x180c0c14, 0x26131335, 0xc3ecec2f, 0xbe5f5fe1, 0x359797a2, 0x884444cc, 0x2e171739, 0x93c4c457, 0x55a7a7f2, 0xfc7e7e82, 0x7a3d3d47, 0xc86464ac, 0xba5d5de7, 0x3219192b, 0xe6737395, 0xc06060a0, 0x19818198, 0x9e4f4fd1, 0xa3dcdc7f, 0x44222266, 0x542a2a7e, 0x3b9090ab, 0x0b888883, 0x8c4646ca, 0xc7eeee29, 0x6bb8b8d3, 0x2814143c, 0xa7dede79, 0xbc5e5ee2, 0x160b0b1d, 0xaddbdb76, 0xdbe0e03b, 0x64323256, 0x743a3a4e, 0x140a0a1e, 0x924949db, 0x0c06060a, 0x4824246c, 0xb85c5ce4, 0x9fc2c25d, 0xbdd3d36e, 0x43acacef, 0xc46262a6, 0x399191a8, 0x319595a4, 0xd3e4e437, 0xf279798b, 0xd5e7e732, 0x8bc8c843, 0x6e373759, 0xda6d6db7, 0x018d8d8c, 0xb1d5d564, 0x9c4e4ed2, 0x49a9a9e0, 0xd86c6cb4, 0xac5656fa, 0xf3f4f407, 0xcfeaea25, 0xca6565af, 0xf47a7a8e, 0x47aeaee9, 0x10080818, 0x6fbabad5, 0xf0787888, 0x4a25256f, 0x5c2e2e72, 0x381c1c24, 0x57a6a6f1, 0x73b4b4c7, 0x97c6c651, 0xcbe8e823, 0xa1dddd7c, 0xe874749c, 0x3e1f1f21, 0x964b4bdd, 0x61bdbddc, 0x0d8b8b86, 0x0f8a8a85, 0xe0707090, 0x7c3e3e42, 0x71b5b5c4, 0xcc6666aa, 0x904848d8, 0x06030305, 0xf7f6f601, 0x1c0e0e12, 0xc26161a3, 0x6a35355f, 0xae5757f9, 0x69b9b9d0, 0x17868691, 0x99c1c158, 0x3a1d1d27, 0x279e9eb9, 0xd9e1e138, 0xebf8f813, 0x2b9898b3, 0x22111133, 0xd26969bb, 0xa9d9d970, 0x078e8e89, 0x339494a7, 0x2d9b9bb6, 0x3c1e1e22, 0x15878792, 0xc9e9e920, 0x87cece49, 0xaa5555ff, 0x50282878, 0xa5dfdf7a, 0x038c8c8f, 0x59a1a1f8, 0x09898980, 0x1a0d0d17, 0x65bfbfda, 0xd7e6e631, 0x844242c6, 0xd06868b8, 0x824141c3, 0x299999b0, 0x5a2d2d77, 0x1e0f0f11, 0x7bb0b0cb, 0xa85454fc, 0x6dbbbbd6, 0x2c16163a]; - var T2 = [0xa5c66363, 0x84f87c7c, 0x99ee7777, 0x8df67b7b, 0x0dfff2f2, 0xbdd66b6b, 0xb1de6f6f, 0x5491c5c5, 0x50603030, 0x03020101, 0xa9ce6767, 0x7d562b2b, 0x19e7fefe, 0x62b5d7d7, 0xe64dabab, 0x9aec7676, 0x458fcaca, 0x9d1f8282, 0x4089c9c9, 0x87fa7d7d, 0x15effafa, 0xebb25959, 0xc98e4747, 0x0bfbf0f0, 0xec41adad, 0x67b3d4d4, 0xfd5fa2a2, 0xea45afaf, 0xbf239c9c, 0xf753a4a4, 0x96e47272, 0x5b9bc0c0, 0xc275b7b7, 0x1ce1fdfd, 0xae3d9393, 0x6a4c2626, 0x5a6c3636, 0x417e3f3f, 0x02f5f7f7, 0x4f83cccc, 0x5c683434, 0xf451a5a5, 0x34d1e5e5, 0x08f9f1f1, 0x93e27171, 0x73abd8d8, 0x53623131, 0x3f2a1515, 0x0c080404, 0x5295c7c7, 0x65462323, 0x5e9dc3c3, 0x28301818, 0xa1379696, 0x0f0a0505, 0xb52f9a9a, 0x090e0707, 0x36241212, 0x9b1b8080, 0x3ddfe2e2, 0x26cdebeb, 0x694e2727, 0xcd7fb2b2, 0x9fea7575, 0x1b120909, 0x9e1d8383, 0x74582c2c, 0x2e341a1a, 0x2d361b1b, 0xb2dc6e6e, 0xeeb45a5a, 0xfb5ba0a0, 0xf6a45252, 0x4d763b3b, 0x61b7d6d6, 0xce7db3b3, 0x7b522929, 0x3edde3e3, 0x715e2f2f, 0x97138484, 0xf5a65353, 0x68b9d1d1, 0x00000000, 0x2cc1eded, 0x60402020, 0x1fe3fcfc, 0xc879b1b1, 0xedb65b5b, 0xbed46a6a, 0x468dcbcb, 0xd967bebe, 0x4b723939, 0xde944a4a, 0xd4984c4c, 0xe8b05858, 0x4a85cfcf, 0x6bbbd0d0, 0x2ac5efef, 0xe54faaaa, 0x16edfbfb, 0xc5864343, 0xd79a4d4d, 0x55663333, 0x94118585, 0xcf8a4545, 0x10e9f9f9, 0x06040202, 0x81fe7f7f, 0xf0a05050, 0x44783c3c, 0xba259f9f, 0xe34ba8a8, 0xf3a25151, 0xfe5da3a3, 0xc0804040, 0x8a058f8f, 0xad3f9292, 0xbc219d9d, 0x48703838, 0x04f1f5f5, 0xdf63bcbc, 0xc177b6b6, 0x75afdada, 0x63422121, 0x30201010, 0x1ae5ffff, 0x0efdf3f3, 0x6dbfd2d2, 0x4c81cdcd, 0x14180c0c, 0x35261313, 0x2fc3ecec, 0xe1be5f5f, 0xa2359797, 0xcc884444, 0x392e1717, 0x5793c4c4, 0xf255a7a7, 0x82fc7e7e, 0x477a3d3d, 0xacc86464, 0xe7ba5d5d, 0x2b321919, 0x95e67373, 0xa0c06060, 0x98198181, 0xd19e4f4f, 0x7fa3dcdc, 0x66442222, 0x7e542a2a, 0xab3b9090, 0x830b8888, 0xca8c4646, 0x29c7eeee, 0xd36bb8b8, 0x3c281414, 0x79a7dede, 0xe2bc5e5e, 0x1d160b0b, 0x76addbdb, 0x3bdbe0e0, 0x56643232, 0x4e743a3a, 0x1e140a0a, 0xdb924949, 0x0a0c0606, 0x6c482424, 0xe4b85c5c, 0x5d9fc2c2, 0x6ebdd3d3, 0xef43acac, 0xa6c46262, 0xa8399191, 0xa4319595, 0x37d3e4e4, 0x8bf27979, 0x32d5e7e7, 0x438bc8c8, 0x596e3737, 0xb7da6d6d, 0x8c018d8d, 0x64b1d5d5, 0xd29c4e4e, 0xe049a9a9, 0xb4d86c6c, 0xfaac5656, 0x07f3f4f4, 0x25cfeaea, 0xafca6565, 0x8ef47a7a, 0xe947aeae, 0x18100808, 0xd56fbaba, 0x88f07878, 0x6f4a2525, 0x725c2e2e, 0x24381c1c, 0xf157a6a6, 0xc773b4b4, 0x5197c6c6, 0x23cbe8e8, 0x7ca1dddd, 0x9ce87474, 0x213e1f1f, 0xdd964b4b, 0xdc61bdbd, 0x860d8b8b, 0x850f8a8a, 0x90e07070, 0x427c3e3e, 0xc471b5b5, 0xaacc6666, 0xd8904848, 0x05060303, 0x01f7f6f6, 0x121c0e0e, 0xa3c26161, 0x5f6a3535, 0xf9ae5757, 0xd069b9b9, 0x91178686, 0x5899c1c1, 0x273a1d1d, 0xb9279e9e, 0x38d9e1e1, 0x13ebf8f8, 0xb32b9898, 0x33221111, 0xbbd26969, 0x70a9d9d9, 0x89078e8e, 0xa7339494, 0xb62d9b9b, 0x223c1e1e, 0x92158787, 0x20c9e9e9, 0x4987cece, 0xffaa5555, 0x78502828, 0x7aa5dfdf, 0x8f038c8c, 0xf859a1a1, 0x80098989, 0x171a0d0d, 0xda65bfbf, 0x31d7e6e6, 0xc6844242, 0xb8d06868, 0xc3824141, 0xb0299999, 0x775a2d2d, 0x111e0f0f, 0xcb7bb0b0, 0xfca85454, 0xd66dbbbb, 0x3a2c1616]; - var T3 = [0x63a5c663, 0x7c84f87c, 0x7799ee77, 0x7b8df67b, 0xf20dfff2, 0x6bbdd66b, 0x6fb1de6f, 0xc55491c5, 0x30506030, 0x01030201, 0x67a9ce67, 0x2b7d562b, 0xfe19e7fe, 0xd762b5d7, 0xabe64dab, 0x769aec76, 0xca458fca, 0x829d1f82, 0xc94089c9, 0x7d87fa7d, 0xfa15effa, 0x59ebb259, 0x47c98e47, 0xf00bfbf0, 0xadec41ad, 0xd467b3d4, 0xa2fd5fa2, 0xafea45af, 0x9cbf239c, 0xa4f753a4, 0x7296e472, 0xc05b9bc0, 0xb7c275b7, 0xfd1ce1fd, 0x93ae3d93, 0x266a4c26, 0x365a6c36, 0x3f417e3f, 0xf702f5f7, 0xcc4f83cc, 0x345c6834, 0xa5f451a5, 0xe534d1e5, 0xf108f9f1, 0x7193e271, 0xd873abd8, 0x31536231, 0x153f2a15, 0x040c0804, 0xc75295c7, 0x23654623, 0xc35e9dc3, 0x18283018, 0x96a13796, 0x050f0a05, 0x9ab52f9a, 0x07090e07, 0x12362412, 0x809b1b80, 0xe23ddfe2, 0xeb26cdeb, 0x27694e27, 0xb2cd7fb2, 0x759fea75, 0x091b1209, 0x839e1d83, 0x2c74582c, 0x1a2e341a, 0x1b2d361b, 0x6eb2dc6e, 0x5aeeb45a, 0xa0fb5ba0, 0x52f6a452, 0x3b4d763b, 0xd661b7d6, 0xb3ce7db3, 0x297b5229, 0xe33edde3, 0x2f715e2f, 0x84971384, 0x53f5a653, 0xd168b9d1, 0x00000000, 0xed2cc1ed, 0x20604020, 0xfc1fe3fc, 0xb1c879b1, 0x5bedb65b, 0x6abed46a, 0xcb468dcb, 0xbed967be, 0x394b7239, 0x4ade944a, 0x4cd4984c, 0x58e8b058, 0xcf4a85cf, 0xd06bbbd0, 0xef2ac5ef, 0xaae54faa, 0xfb16edfb, 0x43c58643, 0x4dd79a4d, 0x33556633, 0x85941185, 0x45cf8a45, 0xf910e9f9, 0x02060402, 0x7f81fe7f, 0x50f0a050, 0x3c44783c, 0x9fba259f, 0xa8e34ba8, 0x51f3a251, 0xa3fe5da3, 0x40c08040, 0x8f8a058f, 0x92ad3f92, 0x9dbc219d, 0x38487038, 0xf504f1f5, 0xbcdf63bc, 0xb6c177b6, 0xda75afda, 0x21634221, 0x10302010, 0xff1ae5ff, 0xf30efdf3, 0xd26dbfd2, 0xcd4c81cd, 0x0c14180c, 0x13352613, 0xec2fc3ec, 0x5fe1be5f, 0x97a23597, 0x44cc8844, 0x17392e17, 0xc45793c4, 0xa7f255a7, 0x7e82fc7e, 0x3d477a3d, 0x64acc864, 0x5de7ba5d, 0x192b3219, 0x7395e673, 0x60a0c060, 0x81981981, 0x4fd19e4f, 0xdc7fa3dc, 0x22664422, 0x2a7e542a, 0x90ab3b90, 0x88830b88, 0x46ca8c46, 0xee29c7ee, 0xb8d36bb8, 0x143c2814, 0xde79a7de, 0x5ee2bc5e, 0x0b1d160b, 0xdb76addb, 0xe03bdbe0, 0x32566432, 0x3a4e743a, 0x0a1e140a, 0x49db9249, 0x060a0c06, 0x246c4824, 0x5ce4b85c, 0xc25d9fc2, 0xd36ebdd3, 0xacef43ac, 0x62a6c462, 0x91a83991, 0x95a43195, 0xe437d3e4, 0x798bf279, 0xe732d5e7, 0xc8438bc8, 0x37596e37, 0x6db7da6d, 0x8d8c018d, 0xd564b1d5, 0x4ed29c4e, 0xa9e049a9, 0x6cb4d86c, 0x56faac56, 0xf407f3f4, 0xea25cfea, 0x65afca65, 0x7a8ef47a, 0xaee947ae, 0x08181008, 0xbad56fba, 0x7888f078, 0x256f4a25, 0x2e725c2e, 0x1c24381c, 0xa6f157a6, 0xb4c773b4, 0xc65197c6, 0xe823cbe8, 0xdd7ca1dd, 0x749ce874, 0x1f213e1f, 0x4bdd964b, 0xbddc61bd, 0x8b860d8b, 0x8a850f8a, 0x7090e070, 0x3e427c3e, 0xb5c471b5, 0x66aacc66, 0x48d89048, 0x03050603, 0xf601f7f6, 0x0e121c0e, 0x61a3c261, 0x355f6a35, 0x57f9ae57, 0xb9d069b9, 0x86911786, 0xc15899c1, 0x1d273a1d, 0x9eb9279e, 0xe138d9e1, 0xf813ebf8, 0x98b32b98, 0x11332211, 0x69bbd269, 0xd970a9d9, 0x8e89078e, 0x94a73394, 0x9bb62d9b, 0x1e223c1e, 0x87921587, 0xe920c9e9, 0xce4987ce, 0x55ffaa55, 0x28785028, 0xdf7aa5df, 0x8c8f038c, 0xa1f859a1, 0x89800989, 0x0d171a0d, 0xbfda65bf, 0xe631d7e6, 0x42c68442, 0x68b8d068, 0x41c38241, 0x99b02999, 0x2d775a2d, 0x0f111e0f, 0xb0cb7bb0, 0x54fca854, 0xbbd66dbb, 0x163a2c16]; - var T4 = [0x6363a5c6, 0x7c7c84f8, 0x777799ee, 0x7b7b8df6, 0xf2f20dff, 0x6b6bbdd6, 0x6f6fb1de, 0xc5c55491, 0x30305060, 0x01010302, 0x6767a9ce, 0x2b2b7d56, 0xfefe19e7, 0xd7d762b5, 0xababe64d, 0x76769aec, 0xcaca458f, 0x82829d1f, 0xc9c94089, 0x7d7d87fa, 0xfafa15ef, 0x5959ebb2, 0x4747c98e, 0xf0f00bfb, 0xadadec41, 0xd4d467b3, 0xa2a2fd5f, 0xafafea45, 0x9c9cbf23, 0xa4a4f753, 0x727296e4, 0xc0c05b9b, 0xb7b7c275, 0xfdfd1ce1, 0x9393ae3d, 0x26266a4c, 0x36365a6c, 0x3f3f417e, 0xf7f702f5, 0xcccc4f83, 0x34345c68, 0xa5a5f451, 0xe5e534d1, 0xf1f108f9, 0x717193e2, 0xd8d873ab, 0x31315362, 0x15153f2a, 0x04040c08, 0xc7c75295, 0x23236546, 0xc3c35e9d, 0x18182830, 0x9696a137, 0x05050f0a, 0x9a9ab52f, 0x0707090e, 0x12123624, 0x80809b1b, 0xe2e23ddf, 0xebeb26cd, 0x2727694e, 0xb2b2cd7f, 0x75759fea, 0x09091b12, 0x83839e1d, 0x2c2c7458, 0x1a1a2e34, 0x1b1b2d36, 0x6e6eb2dc, 0x5a5aeeb4, 0xa0a0fb5b, 0x5252f6a4, 0x3b3b4d76, 0xd6d661b7, 0xb3b3ce7d, 0x29297b52, 0xe3e33edd, 0x2f2f715e, 0x84849713, 0x5353f5a6, 0xd1d168b9, 0x00000000, 0xeded2cc1, 0x20206040, 0xfcfc1fe3, 0xb1b1c879, 0x5b5bedb6, 0x6a6abed4, 0xcbcb468d, 0xbebed967, 0x39394b72, 0x4a4ade94, 0x4c4cd498, 0x5858e8b0, 0xcfcf4a85, 0xd0d06bbb, 0xefef2ac5, 0xaaaae54f, 0xfbfb16ed, 0x4343c586, 0x4d4dd79a, 0x33335566, 0x85859411, 0x4545cf8a, 0xf9f910e9, 0x02020604, 0x7f7f81fe, 0x5050f0a0, 0x3c3c4478, 0x9f9fba25, 0xa8a8e34b, 0x5151f3a2, 0xa3a3fe5d, 0x4040c080, 0x8f8f8a05, 0x9292ad3f, 0x9d9dbc21, 0x38384870, 0xf5f504f1, 0xbcbcdf63, 0xb6b6c177, 0xdada75af, 0x21216342, 0x10103020, 0xffff1ae5, 0xf3f30efd, 0xd2d26dbf, 0xcdcd4c81, 0x0c0c1418, 0x13133526, 0xecec2fc3, 0x5f5fe1be, 0x9797a235, 0x4444cc88, 0x1717392e, 0xc4c45793, 0xa7a7f255, 0x7e7e82fc, 0x3d3d477a, 0x6464acc8, 0x5d5de7ba, 0x19192b32, 0x737395e6, 0x6060a0c0, 0x81819819, 0x4f4fd19e, 0xdcdc7fa3, 0x22226644, 0x2a2a7e54, 0x9090ab3b, 0x8888830b, 0x4646ca8c, 0xeeee29c7, 0xb8b8d36b, 0x14143c28, 0xdede79a7, 0x5e5ee2bc, 0x0b0b1d16, 0xdbdb76ad, 0xe0e03bdb, 0x32325664, 0x3a3a4e74, 0x0a0a1e14, 0x4949db92, 0x06060a0c, 0x24246c48, 0x5c5ce4b8, 0xc2c25d9f, 0xd3d36ebd, 0xacacef43, 0x6262a6c4, 0x9191a839, 0x9595a431, 0xe4e437d3, 0x79798bf2, 0xe7e732d5, 0xc8c8438b, 0x3737596e, 0x6d6db7da, 0x8d8d8c01, 0xd5d564b1, 0x4e4ed29c, 0xa9a9e049, 0x6c6cb4d8, 0x5656faac, 0xf4f407f3, 0xeaea25cf, 0x6565afca, 0x7a7a8ef4, 0xaeaee947, 0x08081810, 0xbabad56f, 0x787888f0, 0x25256f4a, 0x2e2e725c, 0x1c1c2438, 0xa6a6f157, 0xb4b4c773, 0xc6c65197, 0xe8e823cb, 0xdddd7ca1, 0x74749ce8, 0x1f1f213e, 0x4b4bdd96, 0xbdbddc61, 0x8b8b860d, 0x8a8a850f, 0x707090e0, 0x3e3e427c, 0xb5b5c471, 0x6666aacc, 0x4848d890, 0x03030506, 0xf6f601f7, 0x0e0e121c, 0x6161a3c2, 0x35355f6a, 0x5757f9ae, 0xb9b9d069, 0x86869117, 0xc1c15899, 0x1d1d273a, 0x9e9eb927, 0xe1e138d9, 0xf8f813eb, 0x9898b32b, 0x11113322, 0x6969bbd2, 0xd9d970a9, 0x8e8e8907, 0x9494a733, 0x9b9bb62d, 0x1e1e223c, 0x87879215, 0xe9e920c9, 0xcece4987, 0x5555ffaa, 0x28287850, 0xdfdf7aa5, 0x8c8c8f03, 0xa1a1f859, 0x89898009, 0x0d0d171a, 0xbfbfda65, 0xe6e631d7, 0x4242c684, 0x6868b8d0, 0x4141c382, 0x9999b029, 0x2d2d775a, 0x0f0f111e, 0xb0b0cb7b, 0x5454fca8, 0xbbbbd66d, 0x16163a2c]; - - // Transformations for decryption - var T5 = [0x51f4a750, 0x7e416553, 0x1a17a4c3, 0x3a275e96, 0x3bab6bcb, 0x1f9d45f1, 0xacfa58ab, 0x4be30393, 0x2030fa55, 0xad766df6, 0x88cc7691, 0xf5024c25, 0x4fe5d7fc, 0xc52acbd7, 0x26354480, 0xb562a38f, 0xdeb15a49, 0x25ba1b67, 0x45ea0e98, 0x5dfec0e1, 0xc32f7502, 0x814cf012, 0x8d4697a3, 0x6bd3f9c6, 0x038f5fe7, 0x15929c95, 0xbf6d7aeb, 0x955259da, 0xd4be832d, 0x587421d3, 0x49e06929, 0x8ec9c844, 0x75c2896a, 0xf48e7978, 0x99583e6b, 0x27b971dd, 0xbee14fb6, 0xf088ad17, 0xc920ac66, 0x7dce3ab4, 0x63df4a18, 0xe51a3182, 0x97513360, 0x62537f45, 0xb16477e0, 0xbb6bae84, 0xfe81a01c, 0xf9082b94, 0x70486858, 0x8f45fd19, 0x94de6c87, 0x527bf8b7, 0xab73d323, 0x724b02e2, 0xe31f8f57, 0x6655ab2a, 0xb2eb2807, 0x2fb5c203, 0x86c57b9a, 0xd33708a5, 0x302887f2, 0x23bfa5b2, 0x02036aba, 0xed16825c, 0x8acf1c2b, 0xa779b492, 0xf307f2f0, 0x4e69e2a1, 0x65daf4cd, 0x0605bed5, 0xd134621f, 0xc4a6fe8a, 0x342e539d, 0xa2f355a0, 0x058ae132, 0xa4f6eb75, 0x0b83ec39, 0x4060efaa, 0x5e719f06, 0xbd6e1051, 0x3e218af9, 0x96dd063d, 0xdd3e05ae, 0x4de6bd46, 0x91548db5, 0x71c45d05, 0x0406d46f, 0x605015ff, 0x1998fb24, 0xd6bde997, 0x894043cc, 0x67d99e77, 0xb0e842bd, 0x07898b88, 0xe7195b38, 0x79c8eedb, 0xa17c0a47, 0x7c420fe9, 0xf8841ec9, 0x00000000, 0x09808683, 0x322bed48, 0x1e1170ac, 0x6c5a724e, 0xfd0efffb, 0x0f853856, 0x3daed51e, 0x362d3927, 0x0a0fd964, 0x685ca621, 0x9b5b54d1, 0x24362e3a, 0x0c0a67b1, 0x9357e70f, 0xb4ee96d2, 0x1b9b919e, 0x80c0c54f, 0x61dc20a2, 0x5a774b69, 0x1c121a16, 0xe293ba0a, 0xc0a02ae5, 0x3c22e043, 0x121b171d, 0x0e090d0b, 0xf28bc7ad, 0x2db6a8b9, 0x141ea9c8, 0x57f11985, 0xaf75074c, 0xee99ddbb, 0xa37f60fd, 0xf701269f, 0x5c72f5bc, 0x44663bc5, 0x5bfb7e34, 0x8b432976, 0xcb23c6dc, 0xb6edfc68, 0xb8e4f163, 0xd731dcca, 0x42638510, 0x13972240, 0x84c61120, 0x854a247d, 0xd2bb3df8, 0xaef93211, 0xc729a16d, 0x1d9e2f4b, 0xdcb230f3, 0x0d8652ec, 0x77c1e3d0, 0x2bb3166c, 0xa970b999, 0x119448fa, 0x47e96422, 0xa8fc8cc4, 0xa0f03f1a, 0x567d2cd8, 0x223390ef, 0x87494ec7, 0xd938d1c1, 0x8ccaa2fe, 0x98d40b36, 0xa6f581cf, 0xa57ade28, 0xdab78e26, 0x3fadbfa4, 0x2c3a9de4, 0x5078920d, 0x6a5fcc9b, 0x547e4662, 0xf68d13c2, 0x90d8b8e8, 0x2e39f75e, 0x82c3aff5, 0x9f5d80be, 0x69d0937c, 0x6fd52da9, 0xcf2512b3, 0xc8ac993b, 0x10187da7, 0xe89c636e, 0xdb3bbb7b, 0xcd267809, 0x6e5918f4, 0xec9ab701, 0x834f9aa8, 0xe6956e65, 0xaaffe67e, 0x21bccf08, 0xef15e8e6, 0xbae79bd9, 0x4a6f36ce, 0xea9f09d4, 0x29b07cd6, 0x31a4b2af, 0x2a3f2331, 0xc6a59430, 0x35a266c0, 0x744ebc37, 0xfc82caa6, 0xe090d0b0, 0x33a7d815, 0xf104984a, 0x41ecdaf7, 0x7fcd500e, 0x1791f62f, 0x764dd68d, 0x43efb04d, 0xccaa4d54, 0xe49604df, 0x9ed1b5e3, 0x4c6a881b, 0xc12c1fb8, 0x4665517f, 0x9d5eea04, 0x018c355d, 0xfa877473, 0xfb0b412e, 0xb3671d5a, 0x92dbd252, 0xe9105633, 0x6dd64713, 0x9ad7618c, 0x37a10c7a, 0x59f8148e, 0xeb133c89, 0xcea927ee, 0xb761c935, 0xe11ce5ed, 0x7a47b13c, 0x9cd2df59, 0x55f2733f, 0x1814ce79, 0x73c737bf, 0x53f7cdea, 0x5ffdaa5b, 0xdf3d6f14, 0x7844db86, 0xcaaff381, 0xb968c43e, 0x3824342c, 0xc2a3405f, 0x161dc372, 0xbce2250c, 0x283c498b, 0xff0d9541, 0x39a80171, 0x080cb3de, 0xd8b4e49c, 0x6456c190, 0x7bcb8461, 0xd532b670, 0x486c5c74, 0xd0b85742]; - var T6 = [0x5051f4a7, 0x537e4165, 0xc31a17a4, 0x963a275e, 0xcb3bab6b, 0xf11f9d45, 0xabacfa58, 0x934be303, 0x552030fa, 0xf6ad766d, 0x9188cc76, 0x25f5024c, 0xfc4fe5d7, 0xd7c52acb, 0x80263544, 0x8fb562a3, 0x49deb15a, 0x6725ba1b, 0x9845ea0e, 0xe15dfec0, 0x02c32f75, 0x12814cf0, 0xa38d4697, 0xc66bd3f9, 0xe7038f5f, 0x9515929c, 0xebbf6d7a, 0xda955259, 0x2dd4be83, 0xd3587421, 0x2949e069, 0x448ec9c8, 0x6a75c289, 0x78f48e79, 0x6b99583e, 0xdd27b971, 0xb6bee14f, 0x17f088ad, 0x66c920ac, 0xb47dce3a, 0x1863df4a, 0x82e51a31, 0x60975133, 0x4562537f, 0xe0b16477, 0x84bb6bae, 0x1cfe81a0, 0x94f9082b, 0x58704868, 0x198f45fd, 0x8794de6c, 0xb7527bf8, 0x23ab73d3, 0xe2724b02, 0x57e31f8f, 0x2a6655ab, 0x07b2eb28, 0x032fb5c2, 0x9a86c57b, 0xa5d33708, 0xf2302887, 0xb223bfa5, 0xba02036a, 0x5ced1682, 0x2b8acf1c, 0x92a779b4, 0xf0f307f2, 0xa14e69e2, 0xcd65daf4, 0xd50605be, 0x1fd13462, 0x8ac4a6fe, 0x9d342e53, 0xa0a2f355, 0x32058ae1, 0x75a4f6eb, 0x390b83ec, 0xaa4060ef, 0x065e719f, 0x51bd6e10, 0xf93e218a, 0x3d96dd06, 0xaedd3e05, 0x464de6bd, 0xb591548d, 0x0571c45d, 0x6f0406d4, 0xff605015, 0x241998fb, 0x97d6bde9, 0xcc894043, 0x7767d99e, 0xbdb0e842, 0x8807898b, 0x38e7195b, 0xdb79c8ee, 0x47a17c0a, 0xe97c420f, 0xc9f8841e, 0x00000000, 0x83098086, 0x48322bed, 0xac1e1170, 0x4e6c5a72, 0xfbfd0eff, 0x560f8538, 0x1e3daed5, 0x27362d39, 0x640a0fd9, 0x21685ca6, 0xd19b5b54, 0x3a24362e, 0xb10c0a67, 0x0f9357e7, 0xd2b4ee96, 0x9e1b9b91, 0x4f80c0c5, 0xa261dc20, 0x695a774b, 0x161c121a, 0x0ae293ba, 0xe5c0a02a, 0x433c22e0, 0x1d121b17, 0x0b0e090d, 0xadf28bc7, 0xb92db6a8, 0xc8141ea9, 0x8557f119, 0x4caf7507, 0xbbee99dd, 0xfda37f60, 0x9ff70126, 0xbc5c72f5, 0xc544663b, 0x345bfb7e, 0x768b4329, 0xdccb23c6, 0x68b6edfc, 0x63b8e4f1, 0xcad731dc, 0x10426385, 0x40139722, 0x2084c611, 0x7d854a24, 0xf8d2bb3d, 0x11aef932, 0x6dc729a1, 0x4b1d9e2f, 0xf3dcb230, 0xec0d8652, 0xd077c1e3, 0x6c2bb316, 0x99a970b9, 0xfa119448, 0x2247e964, 0xc4a8fc8c, 0x1aa0f03f, 0xd8567d2c, 0xef223390, 0xc787494e, 0xc1d938d1, 0xfe8ccaa2, 0x3698d40b, 0xcfa6f581, 0x28a57ade, 0x26dab78e, 0xa43fadbf, 0xe42c3a9d, 0x0d507892, 0x9b6a5fcc, 0x62547e46, 0xc2f68d13, 0xe890d8b8, 0x5e2e39f7, 0xf582c3af, 0xbe9f5d80, 0x7c69d093, 0xa96fd52d, 0xb3cf2512, 0x3bc8ac99, 0xa710187d, 0x6ee89c63, 0x7bdb3bbb, 0x09cd2678, 0xf46e5918, 0x01ec9ab7, 0xa8834f9a, 0x65e6956e, 0x7eaaffe6, 0x0821bccf, 0xe6ef15e8, 0xd9bae79b, 0xce4a6f36, 0xd4ea9f09, 0xd629b07c, 0xaf31a4b2, 0x312a3f23, 0x30c6a594, 0xc035a266, 0x37744ebc, 0xa6fc82ca, 0xb0e090d0, 0x1533a7d8, 0x4af10498, 0xf741ecda, 0x0e7fcd50, 0x2f1791f6, 0x8d764dd6, 0x4d43efb0, 0x54ccaa4d, 0xdfe49604, 0xe39ed1b5, 0x1b4c6a88, 0xb8c12c1f, 0x7f466551, 0x049d5eea, 0x5d018c35, 0x73fa8774, 0x2efb0b41, 0x5ab3671d, 0x5292dbd2, 0x33e91056, 0x136dd647, 0x8c9ad761, 0x7a37a10c, 0x8e59f814, 0x89eb133c, 0xeecea927, 0x35b761c9, 0xede11ce5, 0x3c7a47b1, 0x599cd2df, 0x3f55f273, 0x791814ce, 0xbf73c737, 0xea53f7cd, 0x5b5ffdaa, 0x14df3d6f, 0x867844db, 0x81caaff3, 0x3eb968c4, 0x2c382434, 0x5fc2a340, 0x72161dc3, 0x0cbce225, 0x8b283c49, 0x41ff0d95, 0x7139a801, 0xde080cb3, 0x9cd8b4e4, 0x906456c1, 0x617bcb84, 0x70d532b6, 0x74486c5c, 0x42d0b857]; - var T7 = [0xa75051f4, 0x65537e41, 0xa4c31a17, 0x5e963a27, 0x6bcb3bab, 0x45f11f9d, 0x58abacfa, 0x03934be3, 0xfa552030, 0x6df6ad76, 0x769188cc, 0x4c25f502, 0xd7fc4fe5, 0xcbd7c52a, 0x44802635, 0xa38fb562, 0x5a49deb1, 0x1b6725ba, 0x0e9845ea, 0xc0e15dfe, 0x7502c32f, 0xf012814c, 0x97a38d46, 0xf9c66bd3, 0x5fe7038f, 0x9c951592, 0x7aebbf6d, 0x59da9552, 0x832dd4be, 0x21d35874, 0x692949e0, 0xc8448ec9, 0x896a75c2, 0x7978f48e, 0x3e6b9958, 0x71dd27b9, 0x4fb6bee1, 0xad17f088, 0xac66c920, 0x3ab47dce, 0x4a1863df, 0x3182e51a, 0x33609751, 0x7f456253, 0x77e0b164, 0xae84bb6b, 0xa01cfe81, 0x2b94f908, 0x68587048, 0xfd198f45, 0x6c8794de, 0xf8b7527b, 0xd323ab73, 0x02e2724b, 0x8f57e31f, 0xab2a6655, 0x2807b2eb, 0xc2032fb5, 0x7b9a86c5, 0x08a5d337, 0x87f23028, 0xa5b223bf, 0x6aba0203, 0x825ced16, 0x1c2b8acf, 0xb492a779, 0xf2f0f307, 0xe2a14e69, 0xf4cd65da, 0xbed50605, 0x621fd134, 0xfe8ac4a6, 0x539d342e, 0x55a0a2f3, 0xe132058a, 0xeb75a4f6, 0xec390b83, 0xefaa4060, 0x9f065e71, 0x1051bd6e, 0x8af93e21, 0x063d96dd, 0x05aedd3e, 0xbd464de6, 0x8db59154, 0x5d0571c4, 0xd46f0406, 0x15ff6050, 0xfb241998, 0xe997d6bd, 0x43cc8940, 0x9e7767d9, 0x42bdb0e8, 0x8b880789, 0x5b38e719, 0xeedb79c8, 0x0a47a17c, 0x0fe97c42, 0x1ec9f884, 0x00000000, 0x86830980, 0xed48322b, 0x70ac1e11, 0x724e6c5a, 0xfffbfd0e, 0x38560f85, 0xd51e3dae, 0x3927362d, 0xd9640a0f, 0xa621685c, 0x54d19b5b, 0x2e3a2436, 0x67b10c0a, 0xe70f9357, 0x96d2b4ee, 0x919e1b9b, 0xc54f80c0, 0x20a261dc, 0x4b695a77, 0x1a161c12, 0xba0ae293, 0x2ae5c0a0, 0xe0433c22, 0x171d121b, 0x0d0b0e09, 0xc7adf28b, 0xa8b92db6, 0xa9c8141e, 0x198557f1, 0x074caf75, 0xddbbee99, 0x60fda37f, 0x269ff701, 0xf5bc5c72, 0x3bc54466, 0x7e345bfb, 0x29768b43, 0xc6dccb23, 0xfc68b6ed, 0xf163b8e4, 0xdccad731, 0x85104263, 0x22401397, 0x112084c6, 0x247d854a, 0x3df8d2bb, 0x3211aef9, 0xa16dc729, 0x2f4b1d9e, 0x30f3dcb2, 0x52ec0d86, 0xe3d077c1, 0x166c2bb3, 0xb999a970, 0x48fa1194, 0x642247e9, 0x8cc4a8fc, 0x3f1aa0f0, 0x2cd8567d, 0x90ef2233, 0x4ec78749, 0xd1c1d938, 0xa2fe8cca, 0x0b3698d4, 0x81cfa6f5, 0xde28a57a, 0x8e26dab7, 0xbfa43fad, 0x9de42c3a, 0x920d5078, 0xcc9b6a5f, 0x4662547e, 0x13c2f68d, 0xb8e890d8, 0xf75e2e39, 0xaff582c3, 0x80be9f5d, 0x937c69d0, 0x2da96fd5, 0x12b3cf25, 0x993bc8ac, 0x7da71018, 0x636ee89c, 0xbb7bdb3b, 0x7809cd26, 0x18f46e59, 0xb701ec9a, 0x9aa8834f, 0x6e65e695, 0xe67eaaff, 0xcf0821bc, 0xe8e6ef15, 0x9bd9bae7, 0x36ce4a6f, 0x09d4ea9f, 0x7cd629b0, 0xb2af31a4, 0x23312a3f, 0x9430c6a5, 0x66c035a2, 0xbc37744e, 0xcaa6fc82, 0xd0b0e090, 0xd81533a7, 0x984af104, 0xdaf741ec, 0x500e7fcd, 0xf62f1791, 0xd68d764d, 0xb04d43ef, 0x4d54ccaa, 0x04dfe496, 0xb5e39ed1, 0x881b4c6a, 0x1fb8c12c, 0x517f4665, 0xea049d5e, 0x355d018c, 0x7473fa87, 0x412efb0b, 0x1d5ab367, 0xd25292db, 0x5633e910, 0x47136dd6, 0x618c9ad7, 0x0c7a37a1, 0x148e59f8, 0x3c89eb13, 0x27eecea9, 0xc935b761, 0xe5ede11c, 0xb13c7a47, 0xdf599cd2, 0x733f55f2, 0xce791814, 0x37bf73c7, 0xcdea53f7, 0xaa5b5ffd, 0x6f14df3d, 0xdb867844, 0xf381caaf, 0xc43eb968, 0x342c3824, 0x405fc2a3, 0xc372161d, 0x250cbce2, 0x498b283c, 0x9541ff0d, 0x017139a8, 0xb3de080c, 0xe49cd8b4, 0xc1906456, 0x84617bcb, 0xb670d532, 0x5c74486c, 0x5742d0b8]; - var T8 = [0xf4a75051, 0x4165537e, 0x17a4c31a, 0x275e963a, 0xab6bcb3b, 0x9d45f11f, 0xfa58abac, 0xe303934b, 0x30fa5520, 0x766df6ad, 0xcc769188, 0x024c25f5, 0xe5d7fc4f, 0x2acbd7c5, 0x35448026, 0x62a38fb5, 0xb15a49de, 0xba1b6725, 0xea0e9845, 0xfec0e15d, 0x2f7502c3, 0x4cf01281, 0x4697a38d, 0xd3f9c66b, 0x8f5fe703, 0x929c9515, 0x6d7aebbf, 0x5259da95, 0xbe832dd4, 0x7421d358, 0xe0692949, 0xc9c8448e, 0xc2896a75, 0x8e7978f4, 0x583e6b99, 0xb971dd27, 0xe14fb6be, 0x88ad17f0, 0x20ac66c9, 0xce3ab47d, 0xdf4a1863, 0x1a3182e5, 0x51336097, 0x537f4562, 0x6477e0b1, 0x6bae84bb, 0x81a01cfe, 0x082b94f9, 0x48685870, 0x45fd198f, 0xde6c8794, 0x7bf8b752, 0x73d323ab, 0x4b02e272, 0x1f8f57e3, 0x55ab2a66, 0xeb2807b2, 0xb5c2032f, 0xc57b9a86, 0x3708a5d3, 0x2887f230, 0xbfa5b223, 0x036aba02, 0x16825ced, 0xcf1c2b8a, 0x79b492a7, 0x07f2f0f3, 0x69e2a14e, 0xdaf4cd65, 0x05bed506, 0x34621fd1, 0xa6fe8ac4, 0x2e539d34, 0xf355a0a2, 0x8ae13205, 0xf6eb75a4, 0x83ec390b, 0x60efaa40, 0x719f065e, 0x6e1051bd, 0x218af93e, 0xdd063d96, 0x3e05aedd, 0xe6bd464d, 0x548db591, 0xc45d0571, 0x06d46f04, 0x5015ff60, 0x98fb2419, 0xbde997d6, 0x4043cc89, 0xd99e7767, 0xe842bdb0, 0x898b8807, 0x195b38e7, 0xc8eedb79, 0x7c0a47a1, 0x420fe97c, 0x841ec9f8, 0x00000000, 0x80868309, 0x2bed4832, 0x1170ac1e, 0x5a724e6c, 0x0efffbfd, 0x8538560f, 0xaed51e3d, 0x2d392736, 0x0fd9640a, 0x5ca62168, 0x5b54d19b, 0x362e3a24, 0x0a67b10c, 0x57e70f93, 0xee96d2b4, 0x9b919e1b, 0xc0c54f80, 0xdc20a261, 0x774b695a, 0x121a161c, 0x93ba0ae2, 0xa02ae5c0, 0x22e0433c, 0x1b171d12, 0x090d0b0e, 0x8bc7adf2, 0xb6a8b92d, 0x1ea9c814, 0xf1198557, 0x75074caf, 0x99ddbbee, 0x7f60fda3, 0x01269ff7, 0x72f5bc5c, 0x663bc544, 0xfb7e345b, 0x4329768b, 0x23c6dccb, 0xedfc68b6, 0xe4f163b8, 0x31dccad7, 0x63851042, 0x97224013, 0xc6112084, 0x4a247d85, 0xbb3df8d2, 0xf93211ae, 0x29a16dc7, 0x9e2f4b1d, 0xb230f3dc, 0x8652ec0d, 0xc1e3d077, 0xb3166c2b, 0x70b999a9, 0x9448fa11, 0xe9642247, 0xfc8cc4a8, 0xf03f1aa0, 0x7d2cd856, 0x3390ef22, 0x494ec787, 0x38d1c1d9, 0xcaa2fe8c, 0xd40b3698, 0xf581cfa6, 0x7ade28a5, 0xb78e26da, 0xadbfa43f, 0x3a9de42c, 0x78920d50, 0x5fcc9b6a, 0x7e466254, 0x8d13c2f6, 0xd8b8e890, 0x39f75e2e, 0xc3aff582, 0x5d80be9f, 0xd0937c69, 0xd52da96f, 0x2512b3cf, 0xac993bc8, 0x187da710, 0x9c636ee8, 0x3bbb7bdb, 0x267809cd, 0x5918f46e, 0x9ab701ec, 0x4f9aa883, 0x956e65e6, 0xffe67eaa, 0xbccf0821, 0x15e8e6ef, 0xe79bd9ba, 0x6f36ce4a, 0x9f09d4ea, 0xb07cd629, 0xa4b2af31, 0x3f23312a, 0xa59430c6, 0xa266c035, 0x4ebc3774, 0x82caa6fc, 0x90d0b0e0, 0xa7d81533, 0x04984af1, 0xecdaf741, 0xcd500e7f, 0x91f62f17, 0x4dd68d76, 0xefb04d43, 0xaa4d54cc, 0x9604dfe4, 0xd1b5e39e, 0x6a881b4c, 0x2c1fb8c1, 0x65517f46, 0x5eea049d, 0x8c355d01, 0x877473fa, 0x0b412efb, 0x671d5ab3, 0xdbd25292, 0x105633e9, 0xd647136d, 0xd7618c9a, 0xa10c7a37, 0xf8148e59, 0x133c89eb, 0xa927eece, 0x61c935b7, 0x1ce5ede1, 0x47b13c7a, 0xd2df599c, 0xf2733f55, 0x14ce7918, 0xc737bf73, 0xf7cdea53, 0xfdaa5b5f, 0x3d6f14df, 0x44db8678, 0xaff381ca, 0x68c43eb9, 0x24342c38, 0xa3405fc2, 0x1dc37216, 0xe2250cbc, 0x3c498b28, 0x0d9541ff, 0xa8017139, 0x0cb3de08, 0xb4e49cd8, 0x56c19064, 0xcb84617b, 0x32b670d5, 0x6c5c7448, 0xb85742d0]; - - // Transformations for decryption key expansion - var U1 = [0x00000000, 0x0e090d0b, 0x1c121a16, 0x121b171d, 0x3824342c, 0x362d3927, 0x24362e3a, 0x2a3f2331, 0x70486858, 0x7e416553, 0x6c5a724e, 0x62537f45, 0x486c5c74, 0x4665517f, 0x547e4662, 0x5a774b69, 0xe090d0b0, 0xee99ddbb, 0xfc82caa6, 0xf28bc7ad, 0xd8b4e49c, 0xd6bde997, 0xc4a6fe8a, 0xcaaff381, 0x90d8b8e8, 0x9ed1b5e3, 0x8ccaa2fe, 0x82c3aff5, 0xa8fc8cc4, 0xa6f581cf, 0xb4ee96d2, 0xbae79bd9, 0xdb3bbb7b, 0xd532b670, 0xc729a16d, 0xc920ac66, 0xe31f8f57, 0xed16825c, 0xff0d9541, 0xf104984a, 0xab73d323, 0xa57ade28, 0xb761c935, 0xb968c43e, 0x9357e70f, 0x9d5eea04, 0x8f45fd19, 0x814cf012, 0x3bab6bcb, 0x35a266c0, 0x27b971dd, 0x29b07cd6, 0x038f5fe7, 0x0d8652ec, 0x1f9d45f1, 0x119448fa, 0x4be30393, 0x45ea0e98, 0x57f11985, 0x59f8148e, 0x73c737bf, 0x7dce3ab4, 0x6fd52da9, 0x61dc20a2, 0xad766df6, 0xa37f60fd, 0xb16477e0, 0xbf6d7aeb, 0x955259da, 0x9b5b54d1, 0x894043cc, 0x87494ec7, 0xdd3e05ae, 0xd33708a5, 0xc12c1fb8, 0xcf2512b3, 0xe51a3182, 0xeb133c89, 0xf9082b94, 0xf701269f, 0x4de6bd46, 0x43efb04d, 0x51f4a750, 0x5ffdaa5b, 0x75c2896a, 0x7bcb8461, 0x69d0937c, 0x67d99e77, 0x3daed51e, 0x33a7d815, 0x21bccf08, 0x2fb5c203, 0x058ae132, 0x0b83ec39, 0x1998fb24, 0x1791f62f, 0x764dd68d, 0x7844db86, 0x6a5fcc9b, 0x6456c190, 0x4e69e2a1, 0x4060efaa, 0x527bf8b7, 0x5c72f5bc, 0x0605bed5, 0x080cb3de, 0x1a17a4c3, 0x141ea9c8, 0x3e218af9, 0x302887f2, 0x223390ef, 0x2c3a9de4, 0x96dd063d, 0x98d40b36, 0x8acf1c2b, 0x84c61120, 0xaef93211, 0xa0f03f1a, 0xb2eb2807, 0xbce2250c, 0xe6956e65, 0xe89c636e, 0xfa877473, 0xf48e7978, 0xdeb15a49, 0xd0b85742, 0xc2a3405f, 0xccaa4d54, 0x41ecdaf7, 0x4fe5d7fc, 0x5dfec0e1, 0x53f7cdea, 0x79c8eedb, 0x77c1e3d0, 0x65daf4cd, 0x6bd3f9c6, 0x31a4b2af, 0x3fadbfa4, 0x2db6a8b9, 0x23bfa5b2, 0x09808683, 0x07898b88, 0x15929c95, 0x1b9b919e, 0xa17c0a47, 0xaf75074c, 0xbd6e1051, 0xb3671d5a, 0x99583e6b, 0x97513360, 0x854a247d, 0x8b432976, 0xd134621f, 0xdf3d6f14, 0xcd267809, 0xc32f7502, 0xe9105633, 0xe7195b38, 0xf5024c25, 0xfb0b412e, 0x9ad7618c, 0x94de6c87, 0x86c57b9a, 0x88cc7691, 0xa2f355a0, 0xacfa58ab, 0xbee14fb6, 0xb0e842bd, 0xea9f09d4, 0xe49604df, 0xf68d13c2, 0xf8841ec9, 0xd2bb3df8, 0xdcb230f3, 0xcea927ee, 0xc0a02ae5, 0x7a47b13c, 0x744ebc37, 0x6655ab2a, 0x685ca621, 0x42638510, 0x4c6a881b, 0x5e719f06, 0x5078920d, 0x0a0fd964, 0x0406d46f, 0x161dc372, 0x1814ce79, 0x322bed48, 0x3c22e043, 0x2e39f75e, 0x2030fa55, 0xec9ab701, 0xe293ba0a, 0xf088ad17, 0xfe81a01c, 0xd4be832d, 0xdab78e26, 0xc8ac993b, 0xc6a59430, 0x9cd2df59, 0x92dbd252, 0x80c0c54f, 0x8ec9c844, 0xa4f6eb75, 0xaaffe67e, 0xb8e4f163, 0xb6edfc68, 0x0c0a67b1, 0x02036aba, 0x10187da7, 0x1e1170ac, 0x342e539d, 0x3a275e96, 0x283c498b, 0x26354480, 0x7c420fe9, 0x724b02e2, 0x605015ff, 0x6e5918f4, 0x44663bc5, 0x4a6f36ce, 0x587421d3, 0x567d2cd8, 0x37a10c7a, 0x39a80171, 0x2bb3166c, 0x25ba1b67, 0x0f853856, 0x018c355d, 0x13972240, 0x1d9e2f4b, 0x47e96422, 0x49e06929, 0x5bfb7e34, 0x55f2733f, 0x7fcd500e, 0x71c45d05, 0x63df4a18, 0x6dd64713, 0xd731dcca, 0xd938d1c1, 0xcb23c6dc, 0xc52acbd7, 0xef15e8e6, 0xe11ce5ed, 0xf307f2f0, 0xfd0efffb, 0xa779b492, 0xa970b999, 0xbb6bae84, 0xb562a38f, 0x9f5d80be, 0x91548db5, 0x834f9aa8, 0x8d4697a3]; - var U2 = [0x00000000, 0x0b0e090d, 0x161c121a, 0x1d121b17, 0x2c382434, 0x27362d39, 0x3a24362e, 0x312a3f23, 0x58704868, 0x537e4165, 0x4e6c5a72, 0x4562537f, 0x74486c5c, 0x7f466551, 0x62547e46, 0x695a774b, 0xb0e090d0, 0xbbee99dd, 0xa6fc82ca, 0xadf28bc7, 0x9cd8b4e4, 0x97d6bde9, 0x8ac4a6fe, 0x81caaff3, 0xe890d8b8, 0xe39ed1b5, 0xfe8ccaa2, 0xf582c3af, 0xc4a8fc8c, 0xcfa6f581, 0xd2b4ee96, 0xd9bae79b, 0x7bdb3bbb, 0x70d532b6, 0x6dc729a1, 0x66c920ac, 0x57e31f8f, 0x5ced1682, 0x41ff0d95, 0x4af10498, 0x23ab73d3, 0x28a57ade, 0x35b761c9, 0x3eb968c4, 0x0f9357e7, 0x049d5eea, 0x198f45fd, 0x12814cf0, 0xcb3bab6b, 0xc035a266, 0xdd27b971, 0xd629b07c, 0xe7038f5f, 0xec0d8652, 0xf11f9d45, 0xfa119448, 0x934be303, 0x9845ea0e, 0x8557f119, 0x8e59f814, 0xbf73c737, 0xb47dce3a, 0xa96fd52d, 0xa261dc20, 0xf6ad766d, 0xfda37f60, 0xe0b16477, 0xebbf6d7a, 0xda955259, 0xd19b5b54, 0xcc894043, 0xc787494e, 0xaedd3e05, 0xa5d33708, 0xb8c12c1f, 0xb3cf2512, 0x82e51a31, 0x89eb133c, 0x94f9082b, 0x9ff70126, 0x464de6bd, 0x4d43efb0, 0x5051f4a7, 0x5b5ffdaa, 0x6a75c289, 0x617bcb84, 0x7c69d093, 0x7767d99e, 0x1e3daed5, 0x1533a7d8, 0x0821bccf, 0x032fb5c2, 0x32058ae1, 0x390b83ec, 0x241998fb, 0x2f1791f6, 0x8d764dd6, 0x867844db, 0x9b6a5fcc, 0x906456c1, 0xa14e69e2, 0xaa4060ef, 0xb7527bf8, 0xbc5c72f5, 0xd50605be, 0xde080cb3, 0xc31a17a4, 0xc8141ea9, 0xf93e218a, 0xf2302887, 0xef223390, 0xe42c3a9d, 0x3d96dd06, 0x3698d40b, 0x2b8acf1c, 0x2084c611, 0x11aef932, 0x1aa0f03f, 0x07b2eb28, 0x0cbce225, 0x65e6956e, 0x6ee89c63, 0x73fa8774, 0x78f48e79, 0x49deb15a, 0x42d0b857, 0x5fc2a340, 0x54ccaa4d, 0xf741ecda, 0xfc4fe5d7, 0xe15dfec0, 0xea53f7cd, 0xdb79c8ee, 0xd077c1e3, 0xcd65daf4, 0xc66bd3f9, 0xaf31a4b2, 0xa43fadbf, 0xb92db6a8, 0xb223bfa5, 0x83098086, 0x8807898b, 0x9515929c, 0x9e1b9b91, 0x47a17c0a, 0x4caf7507, 0x51bd6e10, 0x5ab3671d, 0x6b99583e, 0x60975133, 0x7d854a24, 0x768b4329, 0x1fd13462, 0x14df3d6f, 0x09cd2678, 0x02c32f75, 0x33e91056, 0x38e7195b, 0x25f5024c, 0x2efb0b41, 0x8c9ad761, 0x8794de6c, 0x9a86c57b, 0x9188cc76, 0xa0a2f355, 0xabacfa58, 0xb6bee14f, 0xbdb0e842, 0xd4ea9f09, 0xdfe49604, 0xc2f68d13, 0xc9f8841e, 0xf8d2bb3d, 0xf3dcb230, 0xeecea927, 0xe5c0a02a, 0x3c7a47b1, 0x37744ebc, 0x2a6655ab, 0x21685ca6, 0x10426385, 0x1b4c6a88, 0x065e719f, 0x0d507892, 0x640a0fd9, 0x6f0406d4, 0x72161dc3, 0x791814ce, 0x48322bed, 0x433c22e0, 0x5e2e39f7, 0x552030fa, 0x01ec9ab7, 0x0ae293ba, 0x17f088ad, 0x1cfe81a0, 0x2dd4be83, 0x26dab78e, 0x3bc8ac99, 0x30c6a594, 0x599cd2df, 0x5292dbd2, 0x4f80c0c5, 0x448ec9c8, 0x75a4f6eb, 0x7eaaffe6, 0x63b8e4f1, 0x68b6edfc, 0xb10c0a67, 0xba02036a, 0xa710187d, 0xac1e1170, 0x9d342e53, 0x963a275e, 0x8b283c49, 0x80263544, 0xe97c420f, 0xe2724b02, 0xff605015, 0xf46e5918, 0xc544663b, 0xce4a6f36, 0xd3587421, 0xd8567d2c, 0x7a37a10c, 0x7139a801, 0x6c2bb316, 0x6725ba1b, 0x560f8538, 0x5d018c35, 0x40139722, 0x4b1d9e2f, 0x2247e964, 0x2949e069, 0x345bfb7e, 0x3f55f273, 0x0e7fcd50, 0x0571c45d, 0x1863df4a, 0x136dd647, 0xcad731dc, 0xc1d938d1, 0xdccb23c6, 0xd7c52acb, 0xe6ef15e8, 0xede11ce5, 0xf0f307f2, 0xfbfd0eff, 0x92a779b4, 0x99a970b9, 0x84bb6bae, 0x8fb562a3, 0xbe9f5d80, 0xb591548d, 0xa8834f9a, 0xa38d4697]; - var U3 = [0x00000000, 0x0d0b0e09, 0x1a161c12, 0x171d121b, 0x342c3824, 0x3927362d, 0x2e3a2436, 0x23312a3f, 0x68587048, 0x65537e41, 0x724e6c5a, 0x7f456253, 0x5c74486c, 0x517f4665, 0x4662547e, 0x4b695a77, 0xd0b0e090, 0xddbbee99, 0xcaa6fc82, 0xc7adf28b, 0xe49cd8b4, 0xe997d6bd, 0xfe8ac4a6, 0xf381caaf, 0xb8e890d8, 0xb5e39ed1, 0xa2fe8cca, 0xaff582c3, 0x8cc4a8fc, 0x81cfa6f5, 0x96d2b4ee, 0x9bd9bae7, 0xbb7bdb3b, 0xb670d532, 0xa16dc729, 0xac66c920, 0x8f57e31f, 0x825ced16, 0x9541ff0d, 0x984af104, 0xd323ab73, 0xde28a57a, 0xc935b761, 0xc43eb968, 0xe70f9357, 0xea049d5e, 0xfd198f45, 0xf012814c, 0x6bcb3bab, 0x66c035a2, 0x71dd27b9, 0x7cd629b0, 0x5fe7038f, 0x52ec0d86, 0x45f11f9d, 0x48fa1194, 0x03934be3, 0x0e9845ea, 0x198557f1, 0x148e59f8, 0x37bf73c7, 0x3ab47dce, 0x2da96fd5, 0x20a261dc, 0x6df6ad76, 0x60fda37f, 0x77e0b164, 0x7aebbf6d, 0x59da9552, 0x54d19b5b, 0x43cc8940, 0x4ec78749, 0x05aedd3e, 0x08a5d337, 0x1fb8c12c, 0x12b3cf25, 0x3182e51a, 0x3c89eb13, 0x2b94f908, 0x269ff701, 0xbd464de6, 0xb04d43ef, 0xa75051f4, 0xaa5b5ffd, 0x896a75c2, 0x84617bcb, 0x937c69d0, 0x9e7767d9, 0xd51e3dae, 0xd81533a7, 0xcf0821bc, 0xc2032fb5, 0xe132058a, 0xec390b83, 0xfb241998, 0xf62f1791, 0xd68d764d, 0xdb867844, 0xcc9b6a5f, 0xc1906456, 0xe2a14e69, 0xefaa4060, 0xf8b7527b, 0xf5bc5c72, 0xbed50605, 0xb3de080c, 0xa4c31a17, 0xa9c8141e, 0x8af93e21, 0x87f23028, 0x90ef2233, 0x9de42c3a, 0x063d96dd, 0x0b3698d4, 0x1c2b8acf, 0x112084c6, 0x3211aef9, 0x3f1aa0f0, 0x2807b2eb, 0x250cbce2, 0x6e65e695, 0x636ee89c, 0x7473fa87, 0x7978f48e, 0x5a49deb1, 0x5742d0b8, 0x405fc2a3, 0x4d54ccaa, 0xdaf741ec, 0xd7fc4fe5, 0xc0e15dfe, 0xcdea53f7, 0xeedb79c8, 0xe3d077c1, 0xf4cd65da, 0xf9c66bd3, 0xb2af31a4, 0xbfa43fad, 0xa8b92db6, 0xa5b223bf, 0x86830980, 0x8b880789, 0x9c951592, 0x919e1b9b, 0x0a47a17c, 0x074caf75, 0x1051bd6e, 0x1d5ab367, 0x3e6b9958, 0x33609751, 0x247d854a, 0x29768b43, 0x621fd134, 0x6f14df3d, 0x7809cd26, 0x7502c32f, 0x5633e910, 0x5b38e719, 0x4c25f502, 0x412efb0b, 0x618c9ad7, 0x6c8794de, 0x7b9a86c5, 0x769188cc, 0x55a0a2f3, 0x58abacfa, 0x4fb6bee1, 0x42bdb0e8, 0x09d4ea9f, 0x04dfe496, 0x13c2f68d, 0x1ec9f884, 0x3df8d2bb, 0x30f3dcb2, 0x27eecea9, 0x2ae5c0a0, 0xb13c7a47, 0xbc37744e, 0xab2a6655, 0xa621685c, 0x85104263, 0x881b4c6a, 0x9f065e71, 0x920d5078, 0xd9640a0f, 0xd46f0406, 0xc372161d, 0xce791814, 0xed48322b, 0xe0433c22, 0xf75e2e39, 0xfa552030, 0xb701ec9a, 0xba0ae293, 0xad17f088, 0xa01cfe81, 0x832dd4be, 0x8e26dab7, 0x993bc8ac, 0x9430c6a5, 0xdf599cd2, 0xd25292db, 0xc54f80c0, 0xc8448ec9, 0xeb75a4f6, 0xe67eaaff, 0xf163b8e4, 0xfc68b6ed, 0x67b10c0a, 0x6aba0203, 0x7da71018, 0x70ac1e11, 0x539d342e, 0x5e963a27, 0x498b283c, 0x44802635, 0x0fe97c42, 0x02e2724b, 0x15ff6050, 0x18f46e59, 0x3bc54466, 0x36ce4a6f, 0x21d35874, 0x2cd8567d, 0x0c7a37a1, 0x017139a8, 0x166c2bb3, 0x1b6725ba, 0x38560f85, 0x355d018c, 0x22401397, 0x2f4b1d9e, 0x642247e9, 0x692949e0, 0x7e345bfb, 0x733f55f2, 0x500e7fcd, 0x5d0571c4, 0x4a1863df, 0x47136dd6, 0xdccad731, 0xd1c1d938, 0xc6dccb23, 0xcbd7c52a, 0xe8e6ef15, 0xe5ede11c, 0xf2f0f307, 0xfffbfd0e, 0xb492a779, 0xb999a970, 0xae84bb6b, 0xa38fb562, 0x80be9f5d, 0x8db59154, 0x9aa8834f, 0x97a38d46]; - var U4 = [0x00000000, 0x090d0b0e, 0x121a161c, 0x1b171d12, 0x24342c38, 0x2d392736, 0x362e3a24, 0x3f23312a, 0x48685870, 0x4165537e, 0x5a724e6c, 0x537f4562, 0x6c5c7448, 0x65517f46, 0x7e466254, 0x774b695a, 0x90d0b0e0, 0x99ddbbee, 0x82caa6fc, 0x8bc7adf2, 0xb4e49cd8, 0xbde997d6, 0xa6fe8ac4, 0xaff381ca, 0xd8b8e890, 0xd1b5e39e, 0xcaa2fe8c, 0xc3aff582, 0xfc8cc4a8, 0xf581cfa6, 0xee96d2b4, 0xe79bd9ba, 0x3bbb7bdb, 0x32b670d5, 0x29a16dc7, 0x20ac66c9, 0x1f8f57e3, 0x16825ced, 0x0d9541ff, 0x04984af1, 0x73d323ab, 0x7ade28a5, 0x61c935b7, 0x68c43eb9, 0x57e70f93, 0x5eea049d, 0x45fd198f, 0x4cf01281, 0xab6bcb3b, 0xa266c035, 0xb971dd27, 0xb07cd629, 0x8f5fe703, 0x8652ec0d, 0x9d45f11f, 0x9448fa11, 0xe303934b, 0xea0e9845, 0xf1198557, 0xf8148e59, 0xc737bf73, 0xce3ab47d, 0xd52da96f, 0xdc20a261, 0x766df6ad, 0x7f60fda3, 0x6477e0b1, 0x6d7aebbf, 0x5259da95, 0x5b54d19b, 0x4043cc89, 0x494ec787, 0x3e05aedd, 0x3708a5d3, 0x2c1fb8c1, 0x2512b3cf, 0x1a3182e5, 0x133c89eb, 0x082b94f9, 0x01269ff7, 0xe6bd464d, 0xefb04d43, 0xf4a75051, 0xfdaa5b5f, 0xc2896a75, 0xcb84617b, 0xd0937c69, 0xd99e7767, 0xaed51e3d, 0xa7d81533, 0xbccf0821, 0xb5c2032f, 0x8ae13205, 0x83ec390b, 0x98fb2419, 0x91f62f17, 0x4dd68d76, 0x44db8678, 0x5fcc9b6a, 0x56c19064, 0x69e2a14e, 0x60efaa40, 0x7bf8b752, 0x72f5bc5c, 0x05bed506, 0x0cb3de08, 0x17a4c31a, 0x1ea9c814, 0x218af93e, 0x2887f230, 0x3390ef22, 0x3a9de42c, 0xdd063d96, 0xd40b3698, 0xcf1c2b8a, 0xc6112084, 0xf93211ae, 0xf03f1aa0, 0xeb2807b2, 0xe2250cbc, 0x956e65e6, 0x9c636ee8, 0x877473fa, 0x8e7978f4, 0xb15a49de, 0xb85742d0, 0xa3405fc2, 0xaa4d54cc, 0xecdaf741, 0xe5d7fc4f, 0xfec0e15d, 0xf7cdea53, 0xc8eedb79, 0xc1e3d077, 0xdaf4cd65, 0xd3f9c66b, 0xa4b2af31, 0xadbfa43f, 0xb6a8b92d, 0xbfa5b223, 0x80868309, 0x898b8807, 0x929c9515, 0x9b919e1b, 0x7c0a47a1, 0x75074caf, 0x6e1051bd, 0x671d5ab3, 0x583e6b99, 0x51336097, 0x4a247d85, 0x4329768b, 0x34621fd1, 0x3d6f14df, 0x267809cd, 0x2f7502c3, 0x105633e9, 0x195b38e7, 0x024c25f5, 0x0b412efb, 0xd7618c9a, 0xde6c8794, 0xc57b9a86, 0xcc769188, 0xf355a0a2, 0xfa58abac, 0xe14fb6be, 0xe842bdb0, 0x9f09d4ea, 0x9604dfe4, 0x8d13c2f6, 0x841ec9f8, 0xbb3df8d2, 0xb230f3dc, 0xa927eece, 0xa02ae5c0, 0x47b13c7a, 0x4ebc3774, 0x55ab2a66, 0x5ca62168, 0x63851042, 0x6a881b4c, 0x719f065e, 0x78920d50, 0x0fd9640a, 0x06d46f04, 0x1dc37216, 0x14ce7918, 0x2bed4832, 0x22e0433c, 0x39f75e2e, 0x30fa5520, 0x9ab701ec, 0x93ba0ae2, 0x88ad17f0, 0x81a01cfe, 0xbe832dd4, 0xb78e26da, 0xac993bc8, 0xa59430c6, 0xd2df599c, 0xdbd25292, 0xc0c54f80, 0xc9c8448e, 0xf6eb75a4, 0xffe67eaa, 0xe4f163b8, 0xedfc68b6, 0x0a67b10c, 0x036aba02, 0x187da710, 0x1170ac1e, 0x2e539d34, 0x275e963a, 0x3c498b28, 0x35448026, 0x420fe97c, 0x4b02e272, 0x5015ff60, 0x5918f46e, 0x663bc544, 0x6f36ce4a, 0x7421d358, 0x7d2cd856, 0xa10c7a37, 0xa8017139, 0xb3166c2b, 0xba1b6725, 0x8538560f, 0x8c355d01, 0x97224013, 0x9e2f4b1d, 0xe9642247, 0xe0692949, 0xfb7e345b, 0xf2733f55, 0xcd500e7f, 0xc45d0571, 0xdf4a1863, 0xd647136d, 0x31dccad7, 0x38d1c1d9, 0x23c6dccb, 0x2acbd7c5, 0x15e8e6ef, 0x1ce5ede1, 0x07f2f0f3, 0x0efffbfd, 0x79b492a7, 0x70b999a9, 0x6bae84bb, 0x62a38fb5, 0x5d80be9f, 0x548db591, 0x4f9aa883, 0x4697a38d]; - - function convertToInt32(bytes) { - var result = []; - for (var i = 0; i < bytes.length; i += 4) { - result.push( - (bytes[i ] << 24) | - (bytes[i + 1] << 16) | - (bytes[i + 2] << 8) | - bytes[i + 3] - ); - } - return result; - } - - var AES = function(key) { - if (!(this instanceof AES)) { - throw Error('AES must be instanitated with `new`'); - } - - Object.defineProperty(this, 'key', { - value: coerceArray(key, true) - }); - - this._prepare(); - } - - - AES.prototype._prepare = function() { - - var rounds = numberOfRounds[this.key.length]; - if (rounds == null) { - throw new Error('invalid key size (must be 16, 24 or 32 bytes)'); - } - - // encryption round keys - this._Ke = []; - - // decryption round keys - this._Kd = []; - - for (var i = 0; i <= rounds; i++) { - this._Ke.push([0, 0, 0, 0]); - this._Kd.push([0, 0, 0, 0]); - } - - var roundKeyCount = (rounds + 1) * 4; - var KC = this.key.length / 4; - - // convert the key into ints - var tk = convertToInt32(this.key); - - // copy values into round key arrays - var index; - for (var i = 0; i < KC; i++) { - index = i >> 2; - this._Ke[index][i % 4] = tk[i]; - this._Kd[rounds - index][i % 4] = tk[i]; - } - - // key expansion (fips-197 section 5.2) - var rconpointer = 0; - var t = KC, tt; - while (t < roundKeyCount) { - tt = tk[KC - 1]; - tk[0] ^= ((S[(tt >> 16) & 0xFF] << 24) ^ - (S[(tt >> 8) & 0xFF] << 16) ^ - (S[ tt & 0xFF] << 8) ^ - S[(tt >> 24) & 0xFF] ^ - (rcon[rconpointer] << 24)); - rconpointer += 1; - - // key expansion (for non-256 bit) - if (KC != 8) { - for (var i = 1; i < KC; i++) { - tk[i] ^= tk[i - 1]; - } - - // key expansion for 256-bit keys is "slightly different" (fips-197) - } else { - for (var i = 1; i < (KC / 2); i++) { - tk[i] ^= tk[i - 1]; - } - tt = tk[(KC / 2) - 1]; - - tk[KC / 2] ^= (S[ tt & 0xFF] ^ - (S[(tt >> 8) & 0xFF] << 8) ^ - (S[(tt >> 16) & 0xFF] << 16) ^ - (S[(tt >> 24) & 0xFF] << 24)); - - for (var i = (KC / 2) + 1; i < KC; i++) { - tk[i] ^= tk[i - 1]; - } - } - - // copy values into round key arrays - var i = 0, r, c; - while (i < KC && t < roundKeyCount) { - r = t >> 2; - c = t % 4; - this._Ke[r][c] = tk[i]; - this._Kd[rounds - r][c] = tk[i++]; - t++; - } - } - - // inverse-cipher-ify the decryption round key (fips-197 section 5.3) - for (var r = 1; r < rounds; r++) { - for (var c = 0; c < 4; c++) { - tt = this._Kd[r][c]; - this._Kd[r][c] = (U1[(tt >> 24) & 0xFF] ^ - U2[(tt >> 16) & 0xFF] ^ - U3[(tt >> 8) & 0xFF] ^ - U4[ tt & 0xFF]); - } - } - } - - AES.prototype.encrypt = function(plaintext) { - if (plaintext.length != 16) { - throw new Error('invalid plaintext size (must be 16 bytes)'); - } - - var rounds = this._Ke.length - 1; - var a = [0, 0, 0, 0]; - - // convert plaintext to (ints ^ key) - var t = convertToInt32(plaintext); - for (var i = 0; i < 4; i++) { - t[i] ^= this._Ke[0][i]; - } - - // apply round transforms - for (var r = 1; r < rounds; r++) { - for (var i = 0; i < 4; i++) { - a[i] = (T1[(t[ i ] >> 24) & 0xff] ^ - T2[(t[(i + 1) % 4] >> 16) & 0xff] ^ - T3[(t[(i + 2) % 4] >> 8) & 0xff] ^ - T4[ t[(i + 3) % 4] & 0xff] ^ - this._Ke[r][i]); - } - t = a.slice(); - } - - // the last round is special - var result = createArray(16), tt; - for (var i = 0; i < 4; i++) { - tt = this._Ke[rounds][i]; - result[4 * i ] = (S[(t[ i ] >> 24) & 0xff] ^ (tt >> 24)) & 0xff; - result[4 * i + 1] = (S[(t[(i + 1) % 4] >> 16) & 0xff] ^ (tt >> 16)) & 0xff; - result[4 * i + 2] = (S[(t[(i + 2) % 4] >> 8) & 0xff] ^ (tt >> 8)) & 0xff; - result[4 * i + 3] = (S[ t[(i + 3) % 4] & 0xff] ^ tt ) & 0xff; - } - - return result; - } - - AES.prototype.decrypt = function(ciphertext) { - if (ciphertext.length != 16) { - throw new Error('invalid ciphertext size (must be 16 bytes)'); - } - - var rounds = this._Kd.length - 1; - var a = [0, 0, 0, 0]; - - // convert plaintext to (ints ^ key) - var t = convertToInt32(ciphertext); - for (var i = 0; i < 4; i++) { - t[i] ^= this._Kd[0][i]; - } - - // apply round transforms - for (var r = 1; r < rounds; r++) { - for (var i = 0; i < 4; i++) { - a[i] = (T5[(t[ i ] >> 24) & 0xff] ^ - T6[(t[(i + 3) % 4] >> 16) & 0xff] ^ - T7[(t[(i + 2) % 4] >> 8) & 0xff] ^ - T8[ t[(i + 1) % 4] & 0xff] ^ - this._Kd[r][i]); - } - t = a.slice(); - } - - // the last round is special - var result = createArray(16), tt; - for (var i = 0; i < 4; i++) { - tt = this._Kd[rounds][i]; - result[4 * i ] = (Si[(t[ i ] >> 24) & 0xff] ^ (tt >> 24)) & 0xff; - result[4 * i + 1] = (Si[(t[(i + 3) % 4] >> 16) & 0xff] ^ (tt >> 16)) & 0xff; - result[4 * i + 2] = (Si[(t[(i + 2) % 4] >> 8) & 0xff] ^ (tt >> 8)) & 0xff; - result[4 * i + 3] = (Si[ t[(i + 1) % 4] & 0xff] ^ tt ) & 0xff; - } - - return result; - } - - - /** - * Mode Of Operation - Electonic Codebook (ECB) - */ - var ModeOfOperationECB = function(key) { - if (!(this instanceof ModeOfOperationECB)) { - throw Error('AES must be instanitated with `new`'); - } - - this.description = "Electronic Code Block"; - this.name = "ecb"; - - this._aes = new AES(key); - } - - ModeOfOperationECB.prototype.encrypt = function(plaintext) { - plaintext = coerceArray(plaintext); - - if ((plaintext.length % 16) !== 0) { - throw new Error('invalid plaintext size (must be multiple of 16 bytes)'); - } - - var ciphertext = createArray(plaintext.length); - var block = createArray(16); - - for (var i = 0; i < plaintext.length; i += 16) { - copyArray(plaintext, block, 0, i, i + 16); - block = this._aes.encrypt(block); - copyArray(block, ciphertext, i); - } - - return ciphertext; - } - - ModeOfOperationECB.prototype.decrypt = function(ciphertext) { - ciphertext = coerceArray(ciphertext); - - if ((ciphertext.length % 16) !== 0) { - throw new Error('invalid ciphertext size (must be multiple of 16 bytes)'); - } - - var plaintext = createArray(ciphertext.length); - var block = createArray(16); - - for (var i = 0; i < ciphertext.length; i += 16) { - copyArray(ciphertext, block, 0, i, i + 16); - block = this._aes.decrypt(block); - copyArray(block, plaintext, i); - } - - return plaintext; - } - - - /** - * Mode Of Operation - Cipher Block Chaining (CBC) - */ - var ModeOfOperationCBC = function(key, iv) { - if (!(this instanceof ModeOfOperationCBC)) { - throw Error('AES must be instanitated with `new`'); - } - - this.description = "Cipher Block Chaining"; - this.name = "cbc"; - - if (!iv) { - iv = createArray(16); - - } else if (iv.length != 16) { - throw new Error('invalid initialation vector size (must be 16 bytes)'); - } - - this._lastCipherblock = coerceArray(iv, true); - - this._aes = new AES(key); - } - - ModeOfOperationCBC.prototype.encrypt = function(plaintext) { - plaintext = coerceArray(plaintext); - - if ((plaintext.length % 16) !== 0) { - throw new Error('invalid plaintext size (must be multiple of 16 bytes)'); - } - - var ciphertext = createArray(plaintext.length); - var block = createArray(16); - - for (var i = 0; i < plaintext.length; i += 16) { - copyArray(plaintext, block, 0, i, i + 16); - - for (var j = 0; j < 16; j++) { - block[j] ^= this._lastCipherblock[j]; - } - - this._lastCipherblock = this._aes.encrypt(block); - copyArray(this._lastCipherblock, ciphertext, i); - } - - return ciphertext; - } - - ModeOfOperationCBC.prototype.decrypt = function(ciphertext) { - ciphertext = coerceArray(ciphertext); - - if ((ciphertext.length % 16) !== 0) { - throw new Error('invalid ciphertext size (must be multiple of 16 bytes)'); - } - - var plaintext = createArray(ciphertext.length); - var block = createArray(16); - - for (var i = 0; i < ciphertext.length; i += 16) { - copyArray(ciphertext, block, 0, i, i + 16); - block = this._aes.decrypt(block); - - for (var j = 0; j < 16; j++) { - plaintext[i + j] = block[j] ^ this._lastCipherblock[j]; - } - - copyArray(ciphertext, this._lastCipherblock, 0, i, i + 16); - } - - return plaintext; - } - - - /** - * Mode Of Operation - Cipher Feedback (CFB) - */ - var ModeOfOperationCFB = function(key, iv, segmentSize) { - if (!(this instanceof ModeOfOperationCFB)) { - throw Error('AES must be instanitated with `new`'); - } - - this.description = "Cipher Feedback"; - this.name = "cfb"; - - if (!iv) { - iv = createArray(16); - - } else if (iv.length != 16) { - throw new Error('invalid initialation vector size (must be 16 size)'); - } - - if (!segmentSize) { segmentSize = 1; } - - this.segmentSize = segmentSize; - - this._shiftRegister = coerceArray(iv, true); - - this._aes = new AES(key); - } - - ModeOfOperationCFB.prototype.encrypt = function(plaintext) { - if ((plaintext.length % this.segmentSize) != 0) { - throw new Error('invalid plaintext size (must be segmentSize bytes)'); - } - - var encrypted = coerceArray(plaintext, true); - - var xorSegment; - for (var i = 0; i < encrypted.length; i += this.segmentSize) { - xorSegment = this._aes.encrypt(this._shiftRegister); - for (var j = 0; j < this.segmentSize; j++) { - encrypted[i + j] ^= xorSegment[j]; - } - - // Shift the register - copyArray(this._shiftRegister, this._shiftRegister, 0, this.segmentSize); - copyArray(encrypted, this._shiftRegister, 16 - this.segmentSize, i, i + this.segmentSize); - } - - return encrypted; - } - - ModeOfOperationCFB.prototype.decrypt = function(ciphertext) { - if ((ciphertext.length % this.segmentSize) != 0) { - throw new Error('invalid ciphertext size (must be segmentSize bytes)'); - } - - var plaintext = coerceArray(ciphertext, true); - - var xorSegment; - for (var i = 0; i < plaintext.length; i += this.segmentSize) { - xorSegment = this._aes.encrypt(this._shiftRegister); - - for (var j = 0; j < this.segmentSize; j++) { - plaintext[i + j] ^= xorSegment[j]; - } - - // Shift the register - copyArray(this._shiftRegister, this._shiftRegister, 0, this.segmentSize); - copyArray(ciphertext, this._shiftRegister, 16 - this.segmentSize, i, i + this.segmentSize); - } - - return plaintext; - } - - /** - * Mode Of Operation - Output Feedback (OFB) - */ - var ModeOfOperationOFB = function(key, iv) { - if (!(this instanceof ModeOfOperationOFB)) { - throw Error('AES must be instanitated with `new`'); - } - - this.description = "Output Feedback"; - this.name = "ofb"; - - if (!iv) { - iv = createArray(16); - - } else if (iv.length != 16) { - throw new Error('invalid initialation vector size (must be 16 bytes)'); - } - - this._lastPrecipher = coerceArray(iv, true); - this._lastPrecipherIndex = 16; - - this._aes = new AES(key); - } - - ModeOfOperationOFB.prototype.encrypt = function(plaintext) { - var encrypted = coerceArray(plaintext, true); - - for (var i = 0; i < encrypted.length; i++) { - if (this._lastPrecipherIndex === 16) { - this._lastPrecipher = this._aes.encrypt(this._lastPrecipher); - this._lastPrecipherIndex = 0; - } - encrypted[i] ^= this._lastPrecipher[this._lastPrecipherIndex++]; - } - - return encrypted; - } - - // Decryption is symetric - ModeOfOperationOFB.prototype.decrypt = ModeOfOperationOFB.prototype.encrypt; - - - /** - * Counter object for CTR common mode of operation - */ - var Counter = function(initialValue) { - if (!(this instanceof Counter)) { - throw Error('Counter must be instanitated with `new`'); - } - - // We allow 0, but anything false-ish uses the default 1 - if (initialValue !== 0 && !initialValue) { initialValue = 1; } - - if (typeof(initialValue) === 'number') { - this._counter = createArray(16); - this.setValue(initialValue); - - } else { - this.setBytes(initialValue); - } - } - - Counter.prototype.setValue = function(value) { - if (typeof(value) !== 'number' || parseInt(value) != value) { - throw new Error('invalid counter value (must be an integer)'); - } - - for (var index = 15; index >= 0; --index) { - this._counter[index] = value % 256; - value = value >> 8; - } - } - - Counter.prototype.setBytes = function(bytes) { - bytes = coerceArray(bytes, true); - - if (bytes.length != 16) { - throw new Error('invalid counter bytes size (must be 16 bytes)'); - } - - this._counter = bytes; - }; - - Counter.prototype.increment = function() { - for (var i = 15; i >= 0; i--) { - if (this._counter[i] === 255) { - this._counter[i] = 0; - } else { - this._counter[i]++; - break; - } - } - } - - - /** - * Mode Of Operation - Counter (CTR) - */ - var ModeOfOperationCTR = function(key, counter) { - if (!(this instanceof ModeOfOperationCTR)) { - throw Error('AES must be instanitated with `new`'); - } - - this.description = "Counter"; - this.name = "ctr"; - - if (!(counter instanceof Counter)) { - counter = new Counter(counter) - } - - this._counter = counter; - - this._remainingCounter = null; - this._remainingCounterIndex = 16; - - this._aes = new AES(key); - } - - ModeOfOperationCTR.prototype.encrypt = function(plaintext) { - var encrypted = coerceArray(plaintext, true); - - for (var i = 0; i < encrypted.length; i++) { - if (this._remainingCounterIndex === 16) { - this._remainingCounter = this._aes.encrypt(this._counter._counter); - this._remainingCounterIndex = 0; - this._counter.increment(); - } - encrypted[i] ^= this._remainingCounter[this._remainingCounterIndex++]; - } - - return encrypted; - } - - // Decryption is symetric - ModeOfOperationCTR.prototype.decrypt = ModeOfOperationCTR.prototype.encrypt; - - - /////////////////////// - // Padding - - // See:https://tools.ietf.org/html/rfc2315 - function pkcs7pad(data) { - data = coerceArray(data, true); - var padder = 16 - (data.length % 16); - var result = createArray(data.length + padder); - copyArray(data, result); - for (var i = data.length; i < result.length; i++) { - result[i] = padder; - } - return result; - } - - function pkcs7strip(data) { - data = coerceArray(data, true); - if (data.length < 16) { throw new Error('PKCS#7 invalid length'); } - - var padder = data[data.length - 1]; - if (padder > 16) { throw new Error('PKCS#7 padding byte out of range'); } - - var length = data.length - padder; - for (var i = 0; i < padder; i++) { - if (data[length + i] !== padder) { - throw new Error('PKCS#7 invalid padding byte'); - } - } - - var result = createArray(length); - copyArray(data, result, 0, 0, length); - return result; - } - - /////////////////////// - // Exporting - - - // The block cipher - var aesjs = { - AES: AES, - Counter: Counter, - - ModeOfOperation: { - ecb: ModeOfOperationECB, - cbc: ModeOfOperationCBC, - cfb: ModeOfOperationCFB, - ofb: ModeOfOperationOFB, - ctr: ModeOfOperationCTR - }, - - utils: { - hex: convertHex, - utf8: convertUtf8 - }, - - padding: { - pkcs7: { - pad: pkcs7pad, - strip: pkcs7strip - } - }, - - _arrayTest: { - coerceArray: coerceArray, - createArray: createArray, - copyArray: copyArray, - } - }; - - - // node.js - if (true) { - module.exports = aesjs - - // RequireJS/AMD - // http://www.requirejs.org/docs/api.html - // https://github.com/amdjs/amdjs-api/wiki/AMD - } else {} - - -})(this); - - -/***/ }), - -/***/ 56938: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.keccak256 = void 0; -var js_sha3_1 = __importDefault(__nccwpck_require__(22157)); -var bytes_1 = __nccwpck_require__(42006); -function keccak256(data) { - return '0x' + js_sha3_1.default.keccak_256((0, bytes_1.arrayify)(data)); -} -exports.keccak256 = keccak256; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 97688: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "logger/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 76127: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Logger = exports.ErrorCode = exports.LogLevel = void 0; -var _permanentCensorErrors = false; -var _censorErrors = false; -var LogLevels = { debug: 1, "default": 2, info: 2, warning: 3, error: 4, off: 5 }; -var _logLevel = LogLevels["default"]; -var _version_1 = __nccwpck_require__(97688); -var _globalLogger = null; -function _checkNormalize() { - try { - var missing_1 = []; - // Make sure all forms of normalization are supported - ["NFD", "NFC", "NFKD", "NFKC"].forEach(function (form) { - try { - if ("test".normalize(form) !== "test") { - throw new Error("bad normalize"); - } - ; - } - catch (error) { - missing_1.push(form); - } - }); - if (missing_1.length) { - throw new Error("missing " + missing_1.join(", ")); - } - if (String.fromCharCode(0xe9).normalize("NFD") !== String.fromCharCode(0x65, 0x0301)) { - throw new Error("broken implementation"); - } - } - catch (error) { - return error.message; - } - return null; -} -var _normalizeError = _checkNormalize(); -var LogLevel; -(function (LogLevel) { - LogLevel["DEBUG"] = "DEBUG"; - LogLevel["INFO"] = "INFO"; - LogLevel["WARNING"] = "WARNING"; - LogLevel["ERROR"] = "ERROR"; - LogLevel["OFF"] = "OFF"; -})(LogLevel = exports.LogLevel || (exports.LogLevel = {})); -var ErrorCode; -(function (ErrorCode) { - /////////////////// - // Generic Errors - // Unknown Error - ErrorCode["UNKNOWN_ERROR"] = "UNKNOWN_ERROR"; - // Not Implemented - ErrorCode["NOT_IMPLEMENTED"] = "NOT_IMPLEMENTED"; - // Unsupported Operation - // - operation - ErrorCode["UNSUPPORTED_OPERATION"] = "UNSUPPORTED_OPERATION"; - // Network Error (i.e. Ethereum Network, such as an invalid chain ID) - // - event ("noNetwork" is not re-thrown in provider.ready; otherwise thrown) - ErrorCode["NETWORK_ERROR"] = "NETWORK_ERROR"; - // Some sort of bad response from the server - ErrorCode["SERVER_ERROR"] = "SERVER_ERROR"; - // Timeout - ErrorCode["TIMEOUT"] = "TIMEOUT"; - /////////////////// - // Operational Errors - // Buffer Overrun - ErrorCode["BUFFER_OVERRUN"] = "BUFFER_OVERRUN"; - // Numeric Fault - // - operation: the operation being executed - // - fault: the reason this faulted - ErrorCode["NUMERIC_FAULT"] = "NUMERIC_FAULT"; - /////////////////// - // Argument Errors - // Missing new operator to an object - // - name: The name of the class - ErrorCode["MISSING_NEW"] = "MISSING_NEW"; - // Invalid argument (e.g. value is incompatible with type) to a function: - // - argument: The argument name that was invalid - // - value: The value of the argument - ErrorCode["INVALID_ARGUMENT"] = "INVALID_ARGUMENT"; - // Missing argument to a function: - // - count: The number of arguments received - // - expectedCount: The number of arguments expected - ErrorCode["MISSING_ARGUMENT"] = "MISSING_ARGUMENT"; - // Too many arguments - // - count: The number of arguments received - // - expectedCount: The number of arguments expected - ErrorCode["UNEXPECTED_ARGUMENT"] = "UNEXPECTED_ARGUMENT"; - /////////////////// - // Blockchain Errors - // Call exception - // - transaction: the transaction - // - address?: the contract address - // - args?: The arguments passed into the function - // - method?: The Solidity method signature - // - errorSignature?: The EIP848 error signature - // - errorArgs?: The EIP848 error parameters - // - reason: The reason (only for EIP848 "Error(string)") - ErrorCode["CALL_EXCEPTION"] = "CALL_EXCEPTION"; - // Insufficient funds (< value + gasLimit * gasPrice) - // - transaction: the transaction attempted - ErrorCode["INSUFFICIENT_FUNDS"] = "INSUFFICIENT_FUNDS"; - // Nonce has already been used - // - transaction: the transaction attempted - ErrorCode["NONCE_EXPIRED"] = "NONCE_EXPIRED"; - // The replacement fee for the transaction is too low - // - transaction: the transaction attempted - ErrorCode["REPLACEMENT_UNDERPRICED"] = "REPLACEMENT_UNDERPRICED"; - // The gas limit could not be estimated - // - transaction: the transaction passed to estimateGas - ErrorCode["UNPREDICTABLE_GAS_LIMIT"] = "UNPREDICTABLE_GAS_LIMIT"; - // The transaction was replaced by one with a higher gas price - // - reason: "cancelled", "replaced" or "repriced" - // - cancelled: true if reason == "cancelled" or reason == "replaced") - // - hash: original transaction hash - // - replacement: the full TransactionsResponse for the replacement - // - receipt: the receipt of the replacement - ErrorCode["TRANSACTION_REPLACED"] = "TRANSACTION_REPLACED"; - /////////////////// - // Interaction Errors - // The user rejected the action, such as signing a message or sending - // a transaction - ErrorCode["ACTION_REJECTED"] = "ACTION_REJECTED"; -})(ErrorCode = exports.ErrorCode || (exports.ErrorCode = {})); -; -var HEX = "0123456789abcdef"; -var Logger = /** @class */ (function () { - function Logger(version) { - Object.defineProperty(this, "version", { - enumerable: true, - value: version, - writable: false - }); - } - Logger.prototype._log = function (logLevel, args) { - var level = logLevel.toLowerCase(); - if (LogLevels[level] == null) { - this.throwArgumentError("invalid log level name", "logLevel", logLevel); - } - if (_logLevel > LogLevels[level]) { - return; - } - console.log.apply(console, args); - }; - Logger.prototype.debug = function () { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i] = arguments[_i]; - } - this._log(Logger.levels.DEBUG, args); - }; - Logger.prototype.info = function () { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i] = arguments[_i]; - } - this._log(Logger.levels.INFO, args); - }; - Logger.prototype.warn = function () { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i] = arguments[_i]; - } - this._log(Logger.levels.WARNING, args); - }; - Logger.prototype.makeError = function (message, code, params) { - // Errors are being censored - if (_censorErrors) { - return this.makeError("censored error", code, {}); - } - if (!code) { - code = Logger.errors.UNKNOWN_ERROR; - } - if (!params) { - params = {}; - } - var messageDetails = []; - Object.keys(params).forEach(function (key) { - var value = params[key]; - try { - if (value instanceof Uint8Array) { - var hex = ""; - for (var i = 0; i < value.length; i++) { - hex += HEX[value[i] >> 4]; - hex += HEX[value[i] & 0x0f]; - } - messageDetails.push(key + "=Uint8Array(0x" + hex + ")"); - } - else { - messageDetails.push(key + "=" + JSON.stringify(value)); - } - } - catch (error) { - messageDetails.push(key + "=" + JSON.stringify(params[key].toString())); - } - }); - messageDetails.push("code=" + code); - messageDetails.push("version=" + this.version); - var reason = message; - var url = ""; - switch (code) { - case ErrorCode.NUMERIC_FAULT: { - url = "NUMERIC_FAULT"; - var fault = message; - switch (fault) { - case "overflow": - case "underflow": - case "division-by-zero": - url += "-" + fault; - break; - case "negative-power": - case "negative-width": - url += "-unsupported"; - break; - case "unbound-bitwise-result": - url += "-unbound-result"; - break; - } - break; - } - case ErrorCode.CALL_EXCEPTION: - case ErrorCode.INSUFFICIENT_FUNDS: - case ErrorCode.MISSING_NEW: - case ErrorCode.NONCE_EXPIRED: - case ErrorCode.REPLACEMENT_UNDERPRICED: - case ErrorCode.TRANSACTION_REPLACED: - case ErrorCode.UNPREDICTABLE_GAS_LIMIT: - url = code; - break; - } - if (url) { - message += " [ See: https:/\/links.ethers.org/v5-errors-" + url + " ]"; - } - if (messageDetails.length) { - message += " (" + messageDetails.join(", ") + ")"; - } - // @TODO: Any?? - var error = new Error(message); - error.reason = reason; - error.code = code; - Object.keys(params).forEach(function (key) { - error[key] = params[key]; - }); - return error; - }; - Logger.prototype.throwError = function (message, code, params) { - throw this.makeError(message, code, params); - }; - Logger.prototype.throwArgumentError = function (message, name, value) { - return this.throwError(message, Logger.errors.INVALID_ARGUMENT, { - argument: name, - value: value - }); - }; - Logger.prototype.assert = function (condition, message, code, params) { - if (!!condition) { - return; - } - this.throwError(message, code, params); - }; - Logger.prototype.assertArgument = function (condition, message, name, value) { - if (!!condition) { - return; - } - this.throwArgumentError(message, name, value); - }; - Logger.prototype.checkNormalize = function (message) { - if (message == null) { - message = "platform missing String.prototype.normalize"; - } - if (_normalizeError) { - this.throwError("platform missing String.prototype.normalize", Logger.errors.UNSUPPORTED_OPERATION, { - operation: "String.prototype.normalize", form: _normalizeError - }); - } - }; - Logger.prototype.checkSafeUint53 = function (value, message) { - if (typeof (value) !== "number") { - return; - } - if (message == null) { - message = "value not safe"; - } - if (value < 0 || value >= 0x1fffffffffffff) { - this.throwError(message, Logger.errors.NUMERIC_FAULT, { - operation: "checkSafeInteger", - fault: "out-of-safe-range", - value: value - }); - } - if (value % 1) { - this.throwError(message, Logger.errors.NUMERIC_FAULT, { - operation: "checkSafeInteger", - fault: "non-integer", - value: value - }); - } - }; - Logger.prototype.checkArgumentCount = function (count, expectedCount, message) { - if (message) { - message = ": " + message; - } - else { - message = ""; - } - if (count < expectedCount) { - this.throwError("missing argument" + message, Logger.errors.MISSING_ARGUMENT, { - count: count, - expectedCount: expectedCount - }); - } - if (count > expectedCount) { - this.throwError("too many arguments" + message, Logger.errors.UNEXPECTED_ARGUMENT, { - count: count, - expectedCount: expectedCount - }); - } - }; - Logger.prototype.checkNew = function (target, kind) { - if (target === Object || target == null) { - this.throwError("missing new", Logger.errors.MISSING_NEW, { name: kind.name }); - } - }; - Logger.prototype.checkAbstract = function (target, kind) { - if (target === kind) { - this.throwError("cannot instantiate abstract class " + JSON.stringify(kind.name) + " directly; use a sub-class", Logger.errors.UNSUPPORTED_OPERATION, { name: target.name, operation: "new" }); - } - else if (target === Object || target == null) { - this.throwError("missing new", Logger.errors.MISSING_NEW, { name: kind.name }); - } - }; - Logger.globalLogger = function () { - if (!_globalLogger) { - _globalLogger = new Logger(_version_1.version); - } - return _globalLogger; - }; - Logger.setCensorship = function (censorship, permanent) { - if (!censorship && permanent) { - this.globalLogger().throwError("cannot permanently disable censorship", Logger.errors.UNSUPPORTED_OPERATION, { - operation: "setCensorship" - }); - } - if (_permanentCensorErrors) { - if (!censorship) { - return; - } - this.globalLogger().throwError("error censorship permanent", Logger.errors.UNSUPPORTED_OPERATION, { - operation: "setCensorship" - }); - } - _censorErrors = !!censorship; - _permanentCensorErrors = !!permanent; - }; - Logger.setLogLevel = function (logLevel) { - var level = LogLevels[logLevel.toLowerCase()]; - if (level == null) { - Logger.globalLogger().warn("invalid log level - " + logLevel); - return; - } - _logLevel = level; - }; - Logger.from = function (version) { - return new Logger(version); - }; - Logger.errors = ErrorCode; - Logger.levels = LogLevel; - return Logger; -}()); -exports.Logger = Logger; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 66809: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "networks/5.7.1"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 23044: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.getNetwork = void 0; -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(66809); -var logger = new logger_1.Logger(_version_1.version); -; -function isRenetworkable(value) { - return (value && typeof (value.renetwork) === "function"); -} -function ethDefaultProvider(network) { - var func = function (providers, options) { - if (options == null) { - options = {}; - } - var providerList = []; - if (providers.InfuraProvider && options.infura !== "-") { - try { - providerList.push(new providers.InfuraProvider(network, options.infura)); - } - catch (error) { } - } - if (providers.EtherscanProvider && options.etherscan !== "-") { - try { - providerList.push(new providers.EtherscanProvider(network, options.etherscan)); - } - catch (error) { } - } - if (providers.AlchemyProvider && options.alchemy !== "-") { - try { - providerList.push(new providers.AlchemyProvider(network, options.alchemy)); - } - catch (error) { } - } - if (providers.PocketProvider && options.pocket !== "-") { - // These networks are currently faulty on Pocket as their - // network does not handle the Berlin hardfork, which is - // live on these ones. - // @TODO: This goes away once Pocket has upgraded their nodes - var skip = ["goerli", "ropsten", "rinkeby", "sepolia"]; - try { - var provider = new providers.PocketProvider(network, options.pocket); - if (provider.network && skip.indexOf(provider.network.name) === -1) { - providerList.push(provider); - } - } - catch (error) { } - } - if (providers.CloudflareProvider && options.cloudflare !== "-") { - try { - providerList.push(new providers.CloudflareProvider(network)); - } - catch (error) { } - } - if (providers.AnkrProvider && options.ankr !== "-") { - try { - var skip = ["ropsten"]; - var provider = new providers.AnkrProvider(network, options.ankr); - if (provider.network && skip.indexOf(provider.network.name) === -1) { - providerList.push(provider); - } - } - catch (error) { } - } - if (providerList.length === 0) { - return null; - } - if (providers.FallbackProvider) { - var quorum = 1; - if (options.quorum != null) { - quorum = options.quorum; - } - else if (network === "homestead") { - quorum = 2; - } - return new providers.FallbackProvider(providerList, quorum); - } - return providerList[0]; - }; - func.renetwork = function (network) { - return ethDefaultProvider(network); - }; - return func; -} -function etcDefaultProvider(url, network) { - var func = function (providers, options) { - if (providers.JsonRpcProvider) { - return new providers.JsonRpcProvider(url, network); - } - return null; - }; - func.renetwork = function (network) { - return etcDefaultProvider(url, network); - }; - return func; -} -var homestead = { - chainId: 1, - ensAddress: "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e", - name: "homestead", - _defaultProvider: ethDefaultProvider("homestead") -}; -var ropsten = { - chainId: 3, - ensAddress: "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e", - name: "ropsten", - _defaultProvider: ethDefaultProvider("ropsten") -}; -var classicMordor = { - chainId: 63, - name: "classicMordor", - _defaultProvider: etcDefaultProvider("https://www.ethercluster.com/mordor", "classicMordor") -}; -// See: https://chainlist.org -var networks = { - unspecified: { chainId: 0, name: "unspecified" }, - homestead: homestead, - mainnet: homestead, - morden: { chainId: 2, name: "morden" }, - ropsten: ropsten, - testnet: ropsten, - rinkeby: { - chainId: 4, - ensAddress: "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e", - name: "rinkeby", - _defaultProvider: ethDefaultProvider("rinkeby") - }, - kovan: { - chainId: 42, - name: "kovan", - _defaultProvider: ethDefaultProvider("kovan") - }, - goerli: { - chainId: 5, - ensAddress: "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e", - name: "goerli", - _defaultProvider: ethDefaultProvider("goerli") - }, - kintsugi: { chainId: 1337702, name: "kintsugi" }, - sepolia: { - chainId: 11155111, - name: "sepolia", - _defaultProvider: ethDefaultProvider("sepolia") - }, - // ETC (See: #351) - classic: { - chainId: 61, - name: "classic", - _defaultProvider: etcDefaultProvider("https:/\/www.ethercluster.com/etc", "classic") - }, - classicMorden: { chainId: 62, name: "classicMorden" }, - classicMordor: classicMordor, - classicTestnet: classicMordor, - classicKotti: { - chainId: 6, - name: "classicKotti", - _defaultProvider: etcDefaultProvider("https:/\/www.ethercluster.com/kotti", "classicKotti") - }, - xdai: { chainId: 100, name: "xdai" }, - matic: { - chainId: 137, - name: "matic", - _defaultProvider: ethDefaultProvider("matic") - }, - maticmum: { chainId: 80001, name: "maticmum" }, - optimism: { - chainId: 10, - name: "optimism", - _defaultProvider: ethDefaultProvider("optimism") - }, - "optimism-kovan": { chainId: 69, name: "optimism-kovan" }, - "optimism-goerli": { chainId: 420, name: "optimism-goerli" }, - arbitrum: { chainId: 42161, name: "arbitrum" }, - "arbitrum-rinkeby": { chainId: 421611, name: "arbitrum-rinkeby" }, - "arbitrum-goerli": { chainId: 421613, name: "arbitrum-goerli" }, - bnb: { chainId: 56, name: "bnb" }, - bnbt: { chainId: 97, name: "bnbt" }, -}; -/** - * getNetwork - * - * Converts a named common networks or chain ID (network ID) to a Network - * and verifies a network is a valid Network.. - */ -function getNetwork(network) { - // No network (null) - if (network == null) { - return null; - } - if (typeof (network) === "number") { - for (var name_1 in networks) { - var standard_1 = networks[name_1]; - if (standard_1.chainId === network) { - return { - name: standard_1.name, - chainId: standard_1.chainId, - ensAddress: (standard_1.ensAddress || null), - _defaultProvider: (standard_1._defaultProvider || null) - }; - } - } - return { - chainId: network, - name: "unknown" - }; - } - if (typeof (network) === "string") { - var standard_2 = networks[network]; - if (standard_2 == null) { - return null; - } - return { - name: standard_2.name, - chainId: standard_2.chainId, - ensAddress: standard_2.ensAddress, - _defaultProvider: (standard_2._defaultProvider || null) - }; - } - var standard = networks[network.name]; - // Not a standard network; check that it is a valid network in general - if (!standard) { - if (typeof (network.chainId) !== "number") { - logger.throwArgumentError("invalid network chainId", "network", network); - } - return network; - } - // Make sure the chainId matches the expected network chainId (or is 0; disable EIP-155) - if (network.chainId !== 0 && network.chainId !== standard.chainId) { - logger.throwArgumentError("network chainId mismatch", "network", network); - } - // @TODO: In the next major version add an attach function to a defaultProvider - // class and move the _defaultProvider internal to this file (extend Network) - var defaultProvider = network._defaultProvider || null; - if (defaultProvider == null && standard._defaultProvider) { - if (isRenetworkable(standard._defaultProvider)) { - defaultProvider = standard._defaultProvider.renetwork(network); - } - else { - defaultProvider = standard._defaultProvider; - } - } - // Standard Network (allow overriding the ENS address) - return { - name: network.name, - chainId: standard.chainId, - ensAddress: (network.ensAddress || standard.ensAddress || null), - _defaultProvider: defaultProvider - }; -} -exports.getNetwork = getNetwork; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 15686: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.pbkdf2 = void 0; -var pbkdf2_1 = __nccwpck_require__(5565); -Object.defineProperty(exports, "pbkdf2", ({ enumerable: true, get: function () { return pbkdf2_1.pbkdf2; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 5565: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.pbkdf2 = void 0; -var crypto_1 = __nccwpck_require__(76982); -var bytes_1 = __nccwpck_require__(42006); -function bufferify(value) { - return Buffer.from((0, bytes_1.arrayify)(value)); -} -function pbkdf2(password, salt, iterations, keylen, hashAlgorithm) { - return (0, bytes_1.hexlify)((0, crypto_1.pbkdf2Sync)(bufferify(password), bufferify(salt), iterations, keylen, hashAlgorithm)); -} -exports.pbkdf2 = pbkdf2; -//# sourceMappingURL=pbkdf2.js.map - -/***/ }), - -/***/ 5511: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "properties/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 61338: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"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 })); -exports.Description = exports.deepCopy = exports.shallowCopy = exports.checkProperties = exports.resolveProperties = exports.getStatic = exports.defineReadOnly = void 0; -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(5511); -var logger = new logger_1.Logger(_version_1.version); -function defineReadOnly(object, name, value) { - Object.defineProperty(object, name, { - enumerable: true, - value: value, - writable: false, - }); -} -exports.defineReadOnly = defineReadOnly; -// Crawl up the constructor chain to find a static method -function getStatic(ctor, key) { - for (var i = 0; i < 32; i++) { - if (ctor[key]) { - return ctor[key]; - } - if (!ctor.prototype || typeof (ctor.prototype) !== "object") { - break; - } - ctor = Object.getPrototypeOf(ctor.prototype).constructor; - } - return null; -} -exports.getStatic = getStatic; -function resolveProperties(object) { - return __awaiter(this, void 0, void 0, function () { - var promises, results; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - promises = Object.keys(object).map(function (key) { - var value = object[key]; - return Promise.resolve(value).then(function (v) { return ({ key: key, value: v }); }); - }); - return [4 /*yield*/, Promise.all(promises)]; - case 1: - results = _a.sent(); - return [2 /*return*/, results.reduce(function (accum, result) { - accum[(result.key)] = result.value; - return accum; - }, {})]; - } - }); - }); -} -exports.resolveProperties = resolveProperties; -function checkProperties(object, properties) { - if (!object || typeof (object) !== "object") { - logger.throwArgumentError("invalid object", "object", object); - } - Object.keys(object).forEach(function (key) { - if (!properties[key]) { - logger.throwArgumentError("invalid object key - " + key, "transaction:" + key, object); - } - }); -} -exports.checkProperties = checkProperties; -function shallowCopy(object) { - var result = {}; - for (var key in object) { - result[key] = object[key]; - } - return result; -} -exports.shallowCopy = shallowCopy; -var opaque = { bigint: true, boolean: true, "function": true, number: true, string: true }; -function _isFrozen(object) { - // Opaque objects are not mutable, so safe to copy by assignment - if (object === undefined || object === null || opaque[typeof (object)]) { - return true; - } - if (Array.isArray(object) || typeof (object) === "object") { - if (!Object.isFrozen(object)) { - return false; - } - var keys = Object.keys(object); - for (var i = 0; i < keys.length; i++) { - var value = null; - try { - value = object[keys[i]]; - } - catch (error) { - // If accessing a value triggers an error, it is a getter - // designed to do so (e.g. Result) and is therefore "frozen" - continue; - } - if (!_isFrozen(value)) { - return false; - } - } - return true; - } - return logger.throwArgumentError("Cannot deepCopy " + typeof (object), "object", object); -} -// Returns a new copy of object, such that no properties may be replaced. -// New properties may be added only to objects. -function _deepCopy(object) { - if (_isFrozen(object)) { - return object; - } - // Arrays are mutable, so we need to create a copy - if (Array.isArray(object)) { - return Object.freeze(object.map(function (item) { return deepCopy(item); })); - } - if (typeof (object) === "object") { - var result = {}; - for (var key in object) { - var value = object[key]; - if (value === undefined) { - continue; - } - defineReadOnly(result, key, deepCopy(value)); - } - return result; - } - return logger.throwArgumentError("Cannot deepCopy " + typeof (object), "object", object); -} -function deepCopy(object) { - return _deepCopy(object); -} -exports.deepCopy = deepCopy; -var Description = /** @class */ (function () { - function Description(info) { - for (var key in info) { - this[key] = deepCopy(info[key]); - } - } - return Description; -}()); -exports.Description = Description; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 25408: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "providers/5.7.2"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 45372: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.AlchemyProvider = exports.AlchemyWebSocketProvider = void 0; -var properties_1 = __nccwpck_require__(61338); -var formatter_1 = __nccwpck_require__(24293); -var websocket_provider_1 = __nccwpck_require__(35988); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -var url_json_rpc_provider_1 = __nccwpck_require__(56717); -// This key was provided to ethers.js by Alchemy to be used by the -// default provider, but it is recommended that for your own -// production environments, that you acquire your own API key at: -// https://dashboard.alchemyapi.io -var defaultApiKey = "_gg7wSSi0KMBsdKnGVfHDueq6xMB9EkC"; -var AlchemyWebSocketProvider = /** @class */ (function (_super) { - __extends(AlchemyWebSocketProvider, _super); - function AlchemyWebSocketProvider(network, apiKey) { - var _this = this; - var provider = new AlchemyProvider(network, apiKey); - var url = provider.connection.url.replace(/^http/i, "ws") - .replace(".alchemyapi.", ".ws.alchemyapi."); - _this = _super.call(this, url, provider.network) || this; - (0, properties_1.defineReadOnly)(_this, "apiKey", provider.apiKey); - return _this; - } - AlchemyWebSocketProvider.prototype.isCommunityResource = function () { - return (this.apiKey === defaultApiKey); - }; - return AlchemyWebSocketProvider; -}(websocket_provider_1.WebSocketProvider)); -exports.AlchemyWebSocketProvider = AlchemyWebSocketProvider; -var AlchemyProvider = /** @class */ (function (_super) { - __extends(AlchemyProvider, _super); - function AlchemyProvider() { - return _super !== null && _super.apply(this, arguments) || this; - } - AlchemyProvider.getWebSocketProvider = function (network, apiKey) { - return new AlchemyWebSocketProvider(network, apiKey); - }; - AlchemyProvider.getApiKey = function (apiKey) { - if (apiKey == null) { - return defaultApiKey; - } - if (apiKey && typeof (apiKey) !== "string") { - logger.throwArgumentError("invalid apiKey", "apiKey", apiKey); - } - return apiKey; - }; - AlchemyProvider.getUrl = function (network, apiKey) { - var host = null; - switch (network.name) { - case "homestead": - host = "eth-mainnet.alchemyapi.io/v2/"; - break; - case "goerli": - host = "eth-goerli.g.alchemy.com/v2/"; - break; - case "matic": - host = "polygon-mainnet.g.alchemy.com/v2/"; - break; - case "maticmum": - host = "polygon-mumbai.g.alchemy.com/v2/"; - break; - case "arbitrum": - host = "arb-mainnet.g.alchemy.com/v2/"; - break; - case "arbitrum-goerli": - host = "arb-goerli.g.alchemy.com/v2/"; - break; - case "optimism": - host = "opt-mainnet.g.alchemy.com/v2/"; - break; - case "optimism-goerli": - host = "opt-goerli.g.alchemy.com/v2/"; - break; - default: - logger.throwArgumentError("unsupported network", "network", arguments[0]); - } - return { - allowGzip: true, - url: ("https:/" + "/" + host + apiKey), - throttleCallback: function (attempt, url) { - if (apiKey === defaultApiKey) { - (0, formatter_1.showThrottleMessage)(); - } - return Promise.resolve(true); - } - }; - }; - AlchemyProvider.prototype.isCommunityResource = function () { - return (this.apiKey === defaultApiKey); - }; - return AlchemyProvider; -}(url_json_rpc_provider_1.UrlJsonRpcProvider)); -exports.AlchemyProvider = AlchemyProvider; -//# sourceMappingURL=alchemy-provider.js.map - -/***/ }), - -/***/ 32319: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.AnkrProvider = void 0; -var formatter_1 = __nccwpck_require__(24293); -var url_json_rpc_provider_1 = __nccwpck_require__(56717); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -var defaultApiKey = "9f7d929b018cdffb338517efa06f58359e86ff1ffd350bc889738523659e7972"; -function getHost(name) { - switch (name) { - case "homestead": - return "rpc.ankr.com/eth/"; - case "ropsten": - return "rpc.ankr.com/eth_ropsten/"; - case "rinkeby": - return "rpc.ankr.com/eth_rinkeby/"; - case "goerli": - return "rpc.ankr.com/eth_goerli/"; - case "matic": - return "rpc.ankr.com/polygon/"; - case "arbitrum": - return "rpc.ankr.com/arbitrum/"; - } - return logger.throwArgumentError("unsupported network", "name", name); -} -var AnkrProvider = /** @class */ (function (_super) { - __extends(AnkrProvider, _super); - function AnkrProvider() { - return _super !== null && _super.apply(this, arguments) || this; - } - AnkrProvider.prototype.isCommunityResource = function () { - return (this.apiKey === defaultApiKey); - }; - AnkrProvider.getApiKey = function (apiKey) { - if (apiKey == null) { - return defaultApiKey; - } - return apiKey; - }; - AnkrProvider.getUrl = function (network, apiKey) { - if (apiKey == null) { - apiKey = defaultApiKey; - } - var connection = { - allowGzip: true, - url: ("https:/\/" + getHost(network.name) + apiKey), - throttleCallback: function (attempt, url) { - if (apiKey.apiKey === defaultApiKey) { - (0, formatter_1.showThrottleMessage)(); - } - return Promise.resolve(true); - } - }; - if (apiKey.projectSecret != null) { - connection.user = ""; - connection.password = apiKey.projectSecret; - } - return connection; - }; - return AnkrProvider; -}(url_json_rpc_provider_1.UrlJsonRpcProvider)); -exports.AnkrProvider = AnkrProvider; -//# sourceMappingURL=ankr-provider.js.map - -/***/ }), - -/***/ 8090: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -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 }; - } -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.BaseProvider = exports.Resolver = exports.Event = void 0; -var abstract_provider_1 = __nccwpck_require__(12825); -var base64_1 = __nccwpck_require__(99032); -var basex_1 = __nccwpck_require__(31426); -var bignumber_1 = __nccwpck_require__(18202); -var bytes_1 = __nccwpck_require__(42006); -var constants_1 = __nccwpck_require__(99848); -var hash_1 = __nccwpck_require__(91839); -var networks_1 = __nccwpck_require__(23044); -var properties_1 = __nccwpck_require__(61338); -var sha2_1 = __nccwpck_require__(66935); -var strings_1 = __nccwpck_require__(13859); -var web_1 = __nccwpck_require__(72239); -var bech32_1 = __importDefault(__nccwpck_require__(15051)); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -var formatter_1 = __nccwpck_require__(24293); -var MAX_CCIP_REDIRECTS = 10; -////////////////////////////// -// Event Serializeing -function checkTopic(topic) { - if (topic == null) { - return "null"; - } - if ((0, bytes_1.hexDataLength)(topic) !== 32) { - logger.throwArgumentError("invalid topic", "topic", topic); - } - return topic.toLowerCase(); -} -function serializeTopics(topics) { - // Remove trailing null AND-topics; they are redundant - topics = topics.slice(); - while (topics.length > 0 && topics[topics.length - 1] == null) { - topics.pop(); - } - return topics.map(function (topic) { - if (Array.isArray(topic)) { - // Only track unique OR-topics - var unique_1 = {}; - topic.forEach(function (topic) { - unique_1[checkTopic(topic)] = true; - }); - // The order of OR-topics does not matter - var sorted = Object.keys(unique_1); - sorted.sort(); - return sorted.join("|"); - } - else { - return checkTopic(topic); - } - }).join("&"); -} -function deserializeTopics(data) { - if (data === "") { - return []; - } - return data.split(/&/g).map(function (topic) { - if (topic === "") { - return []; - } - var comps = topic.split("|").map(function (topic) { - return ((topic === "null") ? null : topic); - }); - return ((comps.length === 1) ? comps[0] : comps); - }); -} -function getEventTag(eventName) { - if (typeof (eventName) === "string") { - eventName = eventName.toLowerCase(); - if ((0, bytes_1.hexDataLength)(eventName) === 32) { - return "tx:" + eventName; - } - if (eventName.indexOf(":") === -1) { - return eventName; - } - } - else if (Array.isArray(eventName)) { - return "filter:*:" + serializeTopics(eventName); - } - else if (abstract_provider_1.ForkEvent.isForkEvent(eventName)) { - logger.warn("not implemented"); - throw new Error("not implemented"); - } - else if (eventName && typeof (eventName) === "object") { - return "filter:" + (eventName.address || "*") + ":" + serializeTopics(eventName.topics || []); - } - throw new Error("invalid event - " + eventName); -} -////////////////////////////// -// Helper Object -function getTime() { - return (new Date()).getTime(); -} -function stall(duration) { - return new Promise(function (resolve) { - setTimeout(resolve, duration); - }); -} -////////////////////////////// -// Provider Object -/** - * EventType - * - "block" - * - "poll" - * - "didPoll" - * - "pending" - * - "error" - * - "network" - * - filter - * - topics array - * - transaction hash - */ -var PollableEvents = ["block", "network", "pending", "poll"]; -var Event = /** @class */ (function () { - function Event(tag, listener, once) { - (0, properties_1.defineReadOnly)(this, "tag", tag); - (0, properties_1.defineReadOnly)(this, "listener", listener); - (0, properties_1.defineReadOnly)(this, "once", once); - this._lastBlockNumber = -2; - this._inflight = false; - } - Object.defineProperty(Event.prototype, "event", { - get: function () { - switch (this.type) { - case "tx": - return this.hash; - case "filter": - return this.filter; - } - return this.tag; - }, - enumerable: false, - configurable: true - }); - Object.defineProperty(Event.prototype, "type", { - get: function () { - return this.tag.split(":")[0]; - }, - enumerable: false, - configurable: true - }); - Object.defineProperty(Event.prototype, "hash", { - get: function () { - var comps = this.tag.split(":"); - if (comps[0] !== "tx") { - return null; - } - return comps[1]; - }, - enumerable: false, - configurable: true - }); - Object.defineProperty(Event.prototype, "filter", { - get: function () { - var comps = this.tag.split(":"); - if (comps[0] !== "filter") { - return null; - } - var address = comps[1]; - var topics = deserializeTopics(comps[2]); - var filter = {}; - if (topics.length > 0) { - filter.topics = topics; - } - if (address && address !== "*") { - filter.address = address; - } - return filter; - }, - enumerable: false, - configurable: true - }); - Event.prototype.pollable = function () { - return (this.tag.indexOf(":") >= 0 || PollableEvents.indexOf(this.tag) >= 0); - }; - return Event; -}()); -exports.Event = Event; -; -// https://github.com/satoshilabs/slips/blob/master/slip-0044.md -var coinInfos = { - "0": { symbol: "btc", p2pkh: 0x00, p2sh: 0x05, prefix: "bc" }, - "2": { symbol: "ltc", p2pkh: 0x30, p2sh: 0x32, prefix: "ltc" }, - "3": { symbol: "doge", p2pkh: 0x1e, p2sh: 0x16 }, - "60": { symbol: "eth", ilk: "eth" }, - "61": { symbol: "etc", ilk: "eth" }, - "700": { symbol: "xdai", ilk: "eth" }, -}; -function bytes32ify(value) { - return (0, bytes_1.hexZeroPad)(bignumber_1.BigNumber.from(value).toHexString(), 32); -} -// Compute the Base58Check encoded data (checksum is first 4 bytes of sha256d) -function base58Encode(data) { - return basex_1.Base58.encode((0, bytes_1.concat)([data, (0, bytes_1.hexDataSlice)((0, sha2_1.sha256)((0, sha2_1.sha256)(data)), 0, 4)])); -} -var matcherIpfs = new RegExp("^(ipfs):/\/(.*)$", "i"); -var matchers = [ - new RegExp("^(https):/\/(.*)$", "i"), - new RegExp("^(data):(.*)$", "i"), - matcherIpfs, - new RegExp("^eip155:[0-9]+/(erc[0-9]+):(.*)$", "i"), -]; -function _parseString(result, start) { - try { - return (0, strings_1.toUtf8String)(_parseBytes(result, start)); - } - catch (error) { } - return null; -} -function _parseBytes(result, start) { - if (result === "0x") { - return null; - } - var offset = bignumber_1.BigNumber.from((0, bytes_1.hexDataSlice)(result, start, start + 32)).toNumber(); - var length = bignumber_1.BigNumber.from((0, bytes_1.hexDataSlice)(result, offset, offset + 32)).toNumber(); - return (0, bytes_1.hexDataSlice)(result, offset + 32, offset + 32 + length); -} -// Trim off the ipfs:// prefix and return the default gateway URL -function getIpfsLink(link) { - if (link.match(/^ipfs:\/\/ipfs\//i)) { - link = link.substring(12); - } - else if (link.match(/^ipfs:\/\//i)) { - link = link.substring(7); - } - else { - logger.throwArgumentError("unsupported IPFS format", "link", link); - } - return "https://gateway.ipfs.io/ipfs/" + link; -} -function numPad(value) { - var result = (0, bytes_1.arrayify)(value); - if (result.length > 32) { - throw new Error("internal; should not happen"); - } - var padded = new Uint8Array(32); - padded.set(result, 32 - result.length); - return padded; -} -function bytesPad(value) { - if ((value.length % 32) === 0) { - return value; - } - var result = new Uint8Array(Math.ceil(value.length / 32) * 32); - result.set(value); - return result; -} -// ABI Encodes a series of (bytes, bytes, ...) -function encodeBytes(datas) { - var result = []; - var byteCount = 0; - // Add place-holders for pointers as we add items - for (var i = 0; i < datas.length; i++) { - result.push(null); - byteCount += 32; - } - for (var i = 0; i < datas.length; i++) { - var data = (0, bytes_1.arrayify)(datas[i]); - // Update the bytes offset - result[i] = numPad(byteCount); - // The length and padded value of data - result.push(numPad(data.length)); - result.push(bytesPad(data)); - byteCount += 32 + Math.ceil(data.length / 32) * 32; - } - return (0, bytes_1.hexConcat)(result); -} -var Resolver = /** @class */ (function () { - // The resolvedAddress is only for creating a ReverseLookup resolver - function Resolver(provider, address, name, resolvedAddress) { - (0, properties_1.defineReadOnly)(this, "provider", provider); - (0, properties_1.defineReadOnly)(this, "name", name); - (0, properties_1.defineReadOnly)(this, "address", provider.formatter.address(address)); - (0, properties_1.defineReadOnly)(this, "_resolvedAddress", resolvedAddress); - } - Resolver.prototype.supportsWildcard = function () { - var _this = this; - if (!this._supportsEip2544) { - // supportsInterface(bytes4 = selector("resolve(bytes,bytes)")) - this._supportsEip2544 = this.provider.call({ - to: this.address, - data: "0x01ffc9a79061b92300000000000000000000000000000000000000000000000000000000" - }).then(function (result) { - return bignumber_1.BigNumber.from(result).eq(1); - }).catch(function (error) { - if (error.code === logger_1.Logger.errors.CALL_EXCEPTION) { - return false; - } - // Rethrow the error: link is down, etc. Let future attempts retry. - _this._supportsEip2544 = null; - throw error; - }); - } - return this._supportsEip2544; - }; - Resolver.prototype._fetch = function (selector, parameters) { - return __awaiter(this, void 0, void 0, function () { - var tx, parseBytes, result, error_1; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - tx = { - to: this.address, - ccipReadEnabled: true, - data: (0, bytes_1.hexConcat)([selector, (0, hash_1.namehash)(this.name), (parameters || "0x")]) - }; - parseBytes = false; - return [4 /*yield*/, this.supportsWildcard()]; - case 1: - if (_a.sent()) { - parseBytes = true; - // selector("resolve(bytes,bytes)") - tx.data = (0, bytes_1.hexConcat)(["0x9061b923", encodeBytes([(0, hash_1.dnsEncode)(this.name), tx.data])]); - } - _a.label = 2; - case 2: - _a.trys.push([2, 4, , 5]); - return [4 /*yield*/, this.provider.call(tx)]; - case 3: - result = _a.sent(); - if (((0, bytes_1.arrayify)(result).length % 32) === 4) { - logger.throwError("resolver threw error", logger_1.Logger.errors.CALL_EXCEPTION, { - transaction: tx, data: result - }); - } - if (parseBytes) { - result = _parseBytes(result, 0); - } - return [2 /*return*/, result]; - case 4: - error_1 = _a.sent(); - if (error_1.code === logger_1.Logger.errors.CALL_EXCEPTION) { - return [2 /*return*/, null]; - } - throw error_1; - case 5: return [2 /*return*/]; - } - }); - }); - }; - Resolver.prototype._fetchBytes = function (selector, parameters) { - return __awaiter(this, void 0, void 0, function () { - var result; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this._fetch(selector, parameters)]; - case 1: - result = _a.sent(); - if (result != null) { - return [2 /*return*/, _parseBytes(result, 0)]; - } - return [2 /*return*/, null]; - } - }); - }); - }; - Resolver.prototype._getAddress = function (coinType, hexBytes) { - var coinInfo = coinInfos[String(coinType)]; - if (coinInfo == null) { - logger.throwError("unsupported coin type: " + coinType, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "getAddress(" + coinType + ")" - }); - } - if (coinInfo.ilk === "eth") { - return this.provider.formatter.address(hexBytes); - } - var bytes = (0, bytes_1.arrayify)(hexBytes); - // P2PKH: OP_DUP OP_HASH160 OP_EQUALVERIFY OP_CHECKSIG - if (coinInfo.p2pkh != null) { - var p2pkh = hexBytes.match(/^0x76a9([0-9a-f][0-9a-f])([0-9a-f]*)88ac$/); - if (p2pkh) { - var length_1 = parseInt(p2pkh[1], 16); - if (p2pkh[2].length === length_1 * 2 && length_1 >= 1 && length_1 <= 75) { - return base58Encode((0, bytes_1.concat)([[coinInfo.p2pkh], ("0x" + p2pkh[2])])); - } - } - } - // P2SH: OP_HASH160 OP_EQUAL - if (coinInfo.p2sh != null) { - var p2sh = hexBytes.match(/^0xa9([0-9a-f][0-9a-f])([0-9a-f]*)87$/); - if (p2sh) { - var length_2 = parseInt(p2sh[1], 16); - if (p2sh[2].length === length_2 * 2 && length_2 >= 1 && length_2 <= 75) { - return base58Encode((0, bytes_1.concat)([[coinInfo.p2sh], ("0x" + p2sh[2])])); - } - } - } - // Bech32 - if (coinInfo.prefix != null) { - var length_3 = bytes[1]; - // https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki#witness-program - var version_1 = bytes[0]; - if (version_1 === 0x00) { - if (length_3 !== 20 && length_3 !== 32) { - version_1 = -1; - } - } - else { - version_1 = -1; - } - if (version_1 >= 0 && bytes.length === 2 + length_3 && length_3 >= 1 && length_3 <= 75) { - var words = bech32_1.default.toWords(bytes.slice(2)); - words.unshift(version_1); - return bech32_1.default.encode(coinInfo.prefix, words); - } - } - return null; - }; - Resolver.prototype.getAddress = function (coinType) { - return __awaiter(this, void 0, void 0, function () { - var result, error_2, hexBytes, address; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (coinType == null) { - coinType = 60; - } - if (!(coinType === 60)) return [3 /*break*/, 4]; - _a.label = 1; - case 1: - _a.trys.push([1, 3, , 4]); - return [4 /*yield*/, this._fetch("0x3b3b57de")]; - case 2: - result = _a.sent(); - // No address - if (result === "0x" || result === constants_1.HashZero) { - return [2 /*return*/, null]; - } - return [2 /*return*/, this.provider.formatter.callAddress(result)]; - case 3: - error_2 = _a.sent(); - if (error_2.code === logger_1.Logger.errors.CALL_EXCEPTION) { - return [2 /*return*/, null]; - } - throw error_2; - case 4: return [4 /*yield*/, this._fetchBytes("0xf1cb7e06", bytes32ify(coinType))]; - case 5: - hexBytes = _a.sent(); - // No address - if (hexBytes == null || hexBytes === "0x") { - return [2 /*return*/, null]; - } - address = this._getAddress(coinType, hexBytes); - if (address == null) { - logger.throwError("invalid or unsupported coin data", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "getAddress(" + coinType + ")", - coinType: coinType, - data: hexBytes - }); - } - return [2 /*return*/, address]; - } - }); - }); - }; - Resolver.prototype.getAvatar = function () { - return __awaiter(this, void 0, void 0, function () { - var linkage, avatar, i, match, scheme, _a, selector, owner, _b, comps, addr, tokenId, tokenOwner, _c, _d, balance, _e, _f, tx, metadataUrl, _g, metadata, imageUrl, ipfs, error_3; - return __generator(this, function (_h) { - switch (_h.label) { - case 0: - linkage = [{ type: "name", content: this.name }]; - _h.label = 1; - case 1: - _h.trys.push([1, 19, , 20]); - return [4 /*yield*/, this.getText("avatar")]; - case 2: - avatar = _h.sent(); - if (avatar == null) { - return [2 /*return*/, null]; - } - i = 0; - _h.label = 3; - case 3: - if (!(i < matchers.length)) return [3 /*break*/, 18]; - match = avatar.match(matchers[i]); - if (match == null) { - return [3 /*break*/, 17]; - } - scheme = match[1].toLowerCase(); - _a = scheme; - switch (_a) { - case "https": return [3 /*break*/, 4]; - case "data": return [3 /*break*/, 5]; - case "ipfs": return [3 /*break*/, 6]; - case "erc721": return [3 /*break*/, 7]; - case "erc1155": return [3 /*break*/, 7]; - } - return [3 /*break*/, 17]; - case 4: - linkage.push({ type: "url", content: avatar }); - return [2 /*return*/, { linkage: linkage, url: avatar }]; - case 5: - linkage.push({ type: "data", content: avatar }); - return [2 /*return*/, { linkage: linkage, url: avatar }]; - case 6: - linkage.push({ type: "ipfs", content: avatar }); - return [2 /*return*/, { linkage: linkage, url: getIpfsLink(avatar) }]; - case 7: - selector = (scheme === "erc721") ? "0xc87b56dd" : "0x0e89341c"; - linkage.push({ type: scheme, content: avatar }); - _b = this._resolvedAddress; - if (_b) return [3 /*break*/, 9]; - return [4 /*yield*/, this.getAddress()]; - case 8: - _b = (_h.sent()); - _h.label = 9; - case 9: - owner = (_b); - comps = (match[2] || "").split("/"); - if (comps.length !== 2) { - return [2 /*return*/, null]; - } - return [4 /*yield*/, this.provider.formatter.address(comps[0])]; - case 10: - addr = _h.sent(); - tokenId = (0, bytes_1.hexZeroPad)(bignumber_1.BigNumber.from(comps[1]).toHexString(), 32); - if (!(scheme === "erc721")) return [3 /*break*/, 12]; - _d = (_c = this.provider.formatter).callAddress; - return [4 /*yield*/, this.provider.call({ - to: addr, data: (0, bytes_1.hexConcat)(["0x6352211e", tokenId]) - })]; - case 11: - tokenOwner = _d.apply(_c, [_h.sent()]); - if (owner !== tokenOwner) { - return [2 /*return*/, null]; - } - linkage.push({ type: "owner", content: tokenOwner }); - return [3 /*break*/, 14]; - case 12: - if (!(scheme === "erc1155")) return [3 /*break*/, 14]; - _f = (_e = bignumber_1.BigNumber).from; - return [4 /*yield*/, this.provider.call({ - to: addr, data: (0, bytes_1.hexConcat)(["0x00fdd58e", (0, bytes_1.hexZeroPad)(owner, 32), tokenId]) - })]; - case 13: - balance = _f.apply(_e, [_h.sent()]); - if (balance.isZero()) { - return [2 /*return*/, null]; - } - linkage.push({ type: "balance", content: balance.toString() }); - _h.label = 14; - case 14: - tx = { - to: this.provider.formatter.address(comps[0]), - data: (0, bytes_1.hexConcat)([selector, tokenId]) - }; - _g = _parseString; - return [4 /*yield*/, this.provider.call(tx)]; - case 15: - metadataUrl = _g.apply(void 0, [_h.sent(), 0]); - if (metadataUrl == null) { - return [2 /*return*/, null]; - } - linkage.push({ type: "metadata-url-base", content: metadataUrl }); - // ERC-1155 allows a generic {id} in the URL - if (scheme === "erc1155") { - metadataUrl = metadataUrl.replace("{id}", tokenId.substring(2)); - linkage.push({ type: "metadata-url-expanded", content: metadataUrl }); - } - // Transform IPFS metadata links - if (metadataUrl.match(/^ipfs:/i)) { - metadataUrl = getIpfsLink(metadataUrl); - } - linkage.push({ type: "metadata-url", content: metadataUrl }); - return [4 /*yield*/, (0, web_1.fetchJson)(metadataUrl)]; - case 16: - metadata = _h.sent(); - if (!metadata) { - return [2 /*return*/, null]; - } - linkage.push({ type: "metadata", content: JSON.stringify(metadata) }); - imageUrl = metadata.image; - if (typeof (imageUrl) !== "string") { - return [2 /*return*/, null]; - } - if (imageUrl.match(/^(https:\/\/|data:)/i)) { - // Allow - } - else { - ipfs = imageUrl.match(matcherIpfs); - if (ipfs == null) { - return [2 /*return*/, null]; - } - linkage.push({ type: "url-ipfs", content: imageUrl }); - imageUrl = getIpfsLink(imageUrl); - } - linkage.push({ type: "url", content: imageUrl }); - return [2 /*return*/, { linkage: linkage, url: imageUrl }]; - case 17: - i++; - return [3 /*break*/, 3]; - case 18: return [3 /*break*/, 20]; - case 19: - error_3 = _h.sent(); - return [3 /*break*/, 20]; - case 20: return [2 /*return*/, null]; - } - }); - }); - }; - Resolver.prototype.getContentHash = function () { - return __awaiter(this, void 0, void 0, function () { - var hexBytes, ipfs, length_4, ipns, length_5, swarm, skynet, urlSafe_1, hash; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this._fetchBytes("0xbc1c58d1")]; - case 1: - hexBytes = _a.sent(); - // No contenthash - if (hexBytes == null || hexBytes === "0x") { - return [2 /*return*/, null]; - } - ipfs = hexBytes.match(/^0xe3010170(([0-9a-f][0-9a-f])([0-9a-f][0-9a-f])([0-9a-f]*))$/); - if (ipfs) { - length_4 = parseInt(ipfs[3], 16); - if (ipfs[4].length === length_4 * 2) { - return [2 /*return*/, "ipfs:/\/" + basex_1.Base58.encode("0x" + ipfs[1])]; - } - } - ipns = hexBytes.match(/^0xe5010172(([0-9a-f][0-9a-f])([0-9a-f][0-9a-f])([0-9a-f]*))$/); - if (ipns) { - length_5 = parseInt(ipns[3], 16); - if (ipns[4].length === length_5 * 2) { - return [2 /*return*/, "ipns:/\/" + basex_1.Base58.encode("0x" + ipns[1])]; - } - } - swarm = hexBytes.match(/^0xe40101fa011b20([0-9a-f]*)$/); - if (swarm) { - if (swarm[1].length === (32 * 2)) { - return [2 /*return*/, "bzz:/\/" + swarm[1]]; - } - } - skynet = hexBytes.match(/^0x90b2c605([0-9a-f]*)$/); - if (skynet) { - if (skynet[1].length === (34 * 2)) { - urlSafe_1 = { "=": "", "+": "-", "/": "_" }; - hash = (0, base64_1.encode)("0x" + skynet[1]).replace(/[=+\/]/g, function (a) { return (urlSafe_1[a]); }); - return [2 /*return*/, "sia:/\/" + hash]; - } - } - return [2 /*return*/, logger.throwError("invalid or unsupported content hash data", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "getContentHash()", - data: hexBytes - })]; - } - }); - }); - }; - Resolver.prototype.getText = function (key) { - return __awaiter(this, void 0, void 0, function () { - var keyBytes, hexBytes; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - keyBytes = (0, strings_1.toUtf8Bytes)(key); - // The nodehash consumes the first slot, so the string pointer targets - // offset 64, with the length at offset 64 and data starting at offset 96 - keyBytes = (0, bytes_1.concat)([bytes32ify(64), bytes32ify(keyBytes.length), keyBytes]); - // Pad to word-size (32 bytes) - if ((keyBytes.length % 32) !== 0) { - keyBytes = (0, bytes_1.concat)([keyBytes, (0, bytes_1.hexZeroPad)("0x", 32 - (key.length % 32))]); - } - return [4 /*yield*/, this._fetchBytes("0x59d1d43c", (0, bytes_1.hexlify)(keyBytes))]; - case 1: - hexBytes = _a.sent(); - if (hexBytes == null || hexBytes === "0x") { - return [2 /*return*/, null]; - } - return [2 /*return*/, (0, strings_1.toUtf8String)(hexBytes)]; - } - }); - }); - }; - return Resolver; -}()); -exports.Resolver = Resolver; -var defaultFormatter = null; -var nextPollId = 1; -var BaseProvider = /** @class */ (function (_super) { - __extends(BaseProvider, _super); - /** - * ready - * - * A Promise that resolves only once the provider is ready. - * - * Sub-classes that call the super with a network without a chainId - * MUST set this. Standard named networks have a known chainId. - * - */ - function BaseProvider(network) { - var _newTarget = this.constructor; - var _this = _super.call(this) || this; - // Events being listened to - _this._events = []; - _this._emitted = { block: -2 }; - _this.disableCcipRead = false; - _this.formatter = _newTarget.getFormatter(); - // If network is any, this Provider allows the underlying - // network to change dynamically, and we auto-detect the - // current network - (0, properties_1.defineReadOnly)(_this, "anyNetwork", (network === "any")); - if (_this.anyNetwork) { - network = _this.detectNetwork(); - } - if (network instanceof Promise) { - _this._networkPromise = network; - // Squash any "unhandled promise" errors; that do not need to be handled - network.catch(function (error) { }); - // Trigger initial network setting (async) - _this._ready().catch(function (error) { }); - } - else { - var knownNetwork = (0, properties_1.getStatic)(_newTarget, "getNetwork")(network); - if (knownNetwork) { - (0, properties_1.defineReadOnly)(_this, "_network", knownNetwork); - _this.emit("network", knownNetwork, null); - } - else { - logger.throwArgumentError("invalid network", "network", network); - } - } - _this._maxInternalBlockNumber = -1024; - _this._lastBlockNumber = -2; - _this._maxFilterBlockRange = 10; - _this._pollingInterval = 4000; - _this._fastQueryDate = 0; - return _this; - } - BaseProvider.prototype._ready = function () { - return __awaiter(this, void 0, void 0, function () { - var network, error_4; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (!(this._network == null)) return [3 /*break*/, 7]; - network = null; - if (!this._networkPromise) return [3 /*break*/, 4]; - _a.label = 1; - case 1: - _a.trys.push([1, 3, , 4]); - return [4 /*yield*/, this._networkPromise]; - case 2: - network = _a.sent(); - return [3 /*break*/, 4]; - case 3: - error_4 = _a.sent(); - return [3 /*break*/, 4]; - case 4: - if (!(network == null)) return [3 /*break*/, 6]; - return [4 /*yield*/, this.detectNetwork()]; - case 5: - network = _a.sent(); - _a.label = 6; - case 6: - // This should never happen; every Provider sub-class should have - // suggested a network by here (or have thrown). - if (!network) { - logger.throwError("no network detected", logger_1.Logger.errors.UNKNOWN_ERROR, {}); - } - // Possible this call stacked so do not call defineReadOnly again - if (this._network == null) { - if (this.anyNetwork) { - this._network = network; - } - else { - (0, properties_1.defineReadOnly)(this, "_network", network); - } - this.emit("network", network, null); - } - _a.label = 7; - case 7: return [2 /*return*/, this._network]; - } - }); - }); - }; - Object.defineProperty(BaseProvider.prototype, "ready", { - // This will always return the most recently established network. - // For "any", this can change (a "network" event is emitted before - // any change is reflected); otherwise this cannot change - get: function () { - var _this = this; - return (0, web_1.poll)(function () { - return _this._ready().then(function (network) { - return network; - }, function (error) { - // If the network isn't running yet, we will wait - if (error.code === logger_1.Logger.errors.NETWORK_ERROR && error.event === "noNetwork") { - return undefined; - } - throw error; - }); - }); - }, - enumerable: false, - configurable: true - }); - // @TODO: Remove this and just create a singleton formatter - BaseProvider.getFormatter = function () { - if (defaultFormatter == null) { - defaultFormatter = new formatter_1.Formatter(); - } - return defaultFormatter; - }; - // @TODO: Remove this and just use getNetwork - BaseProvider.getNetwork = function (network) { - return (0, networks_1.getNetwork)((network == null) ? "homestead" : network); - }; - BaseProvider.prototype.ccipReadFetch = function (tx, calldata, urls) { - return __awaiter(this, void 0, void 0, function () { - var sender, data, errorMessages, i, url, href, json, result, errorMessage; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (this.disableCcipRead || urls.length === 0) { - return [2 /*return*/, null]; - } - sender = tx.to.toLowerCase(); - data = calldata.toLowerCase(); - errorMessages = []; - i = 0; - _a.label = 1; - case 1: - if (!(i < urls.length)) return [3 /*break*/, 4]; - url = urls[i]; - href = url.replace("{sender}", sender).replace("{data}", data); - json = (url.indexOf("{data}") >= 0) ? null : JSON.stringify({ data: data, sender: sender }); - return [4 /*yield*/, (0, web_1.fetchJson)({ url: href, errorPassThrough: true }, json, function (value, response) { - value.status = response.statusCode; - return value; - })]; - case 2: - result = _a.sent(); - if (result.data) { - return [2 /*return*/, result.data]; - } - errorMessage = (result.message || "unknown error"); - // 4xx indicates the result is not present; stop - if (result.status >= 400 && result.status < 500) { - return [2 /*return*/, logger.throwError("response not found during CCIP fetch: " + errorMessage, logger_1.Logger.errors.SERVER_ERROR, { url: url, errorMessage: errorMessage })]; - } - // 5xx indicates server issue; try the next url - errorMessages.push(errorMessage); - _a.label = 3; - case 3: - i++; - return [3 /*break*/, 1]; - case 4: return [2 /*return*/, logger.throwError("error encountered during CCIP fetch: " + errorMessages.map(function (m) { return JSON.stringify(m); }).join(", "), logger_1.Logger.errors.SERVER_ERROR, { - urls: urls, - errorMessages: errorMessages - })]; - } - }); - }); - }; - // Fetches the blockNumber, but will reuse any result that is less - // than maxAge old or has been requested since the last request - BaseProvider.prototype._getInternalBlockNumber = function (maxAge) { - return __awaiter(this, void 0, void 0, function () { - var internalBlockNumber, result, error_5, reqTime, checkInternalBlockNumber; - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this._ready()]; - case 1: - _a.sent(); - if (!(maxAge > 0)) return [3 /*break*/, 7]; - _a.label = 2; - case 2: - if (!this._internalBlockNumber) return [3 /*break*/, 7]; - internalBlockNumber = this._internalBlockNumber; - _a.label = 3; - case 3: - _a.trys.push([3, 5, , 6]); - return [4 /*yield*/, internalBlockNumber]; - case 4: - result = _a.sent(); - if ((getTime() - result.respTime) <= maxAge) { - return [2 /*return*/, result.blockNumber]; - } - // Too old; fetch a new value - return [3 /*break*/, 7]; - case 5: - error_5 = _a.sent(); - // The fetch rejected; if we are the first to get the - // rejection, drop through so we replace it with a new - // fetch; all others blocked will then get that fetch - // which won't match the one they "remembered" and loop - if (this._internalBlockNumber === internalBlockNumber) { - return [3 /*break*/, 7]; - } - return [3 /*break*/, 6]; - case 6: return [3 /*break*/, 2]; - case 7: - reqTime = getTime(); - checkInternalBlockNumber = (0, properties_1.resolveProperties)({ - blockNumber: this.perform("getBlockNumber", {}), - networkError: this.getNetwork().then(function (network) { return (null); }, function (error) { return (error); }) - }).then(function (_a) { - var blockNumber = _a.blockNumber, networkError = _a.networkError; - if (networkError) { - // Unremember this bad internal block number - if (_this._internalBlockNumber === checkInternalBlockNumber) { - _this._internalBlockNumber = null; - } - throw networkError; - } - var respTime = getTime(); - blockNumber = bignumber_1.BigNumber.from(blockNumber).toNumber(); - if (blockNumber < _this._maxInternalBlockNumber) { - blockNumber = _this._maxInternalBlockNumber; - } - _this._maxInternalBlockNumber = blockNumber; - _this._setFastBlockNumber(blockNumber); // @TODO: Still need this? - return { blockNumber: blockNumber, reqTime: reqTime, respTime: respTime }; - }); - this._internalBlockNumber = checkInternalBlockNumber; - // Swallow unhandled exceptions; if needed they are handled else where - checkInternalBlockNumber.catch(function (error) { - // Don't null the dead (rejected) fetch, if it has already been updated - if (_this._internalBlockNumber === checkInternalBlockNumber) { - _this._internalBlockNumber = null; - } - }); - return [4 /*yield*/, checkInternalBlockNumber]; - case 8: return [2 /*return*/, (_a.sent()).blockNumber]; - } - }); - }); - }; - BaseProvider.prototype.poll = function () { - return __awaiter(this, void 0, void 0, function () { - var pollId, runners, blockNumber, error_6, i; - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - pollId = nextPollId++; - runners = []; - blockNumber = null; - _a.label = 1; - case 1: - _a.trys.push([1, 3, , 4]); - return [4 /*yield*/, this._getInternalBlockNumber(100 + this.pollingInterval / 2)]; - case 2: - blockNumber = _a.sent(); - return [3 /*break*/, 4]; - case 3: - error_6 = _a.sent(); - this.emit("error", error_6); - return [2 /*return*/]; - case 4: - this._setFastBlockNumber(blockNumber); - // Emit a poll event after we have the latest (fast) block number - this.emit("poll", pollId, blockNumber); - // If the block has not changed, meh. - if (blockNumber === this._lastBlockNumber) { - this.emit("didPoll", pollId); - return [2 /*return*/]; - } - // First polling cycle, trigger a "block" events - if (this._emitted.block === -2) { - this._emitted.block = blockNumber - 1; - } - if (Math.abs((this._emitted.block) - blockNumber) > 1000) { - logger.warn("network block skew detected; skipping block events (emitted=" + this._emitted.block + " blockNumber" + blockNumber + ")"); - this.emit("error", logger.makeError("network block skew detected", logger_1.Logger.errors.NETWORK_ERROR, { - blockNumber: blockNumber, - event: "blockSkew", - previousBlockNumber: this._emitted.block - })); - this.emit("block", blockNumber); - } - else { - // Notify all listener for each block that has passed - for (i = this._emitted.block + 1; i <= blockNumber; i++) { - this.emit("block", i); - } - } - // The emitted block was updated, check for obsolete events - if (this._emitted.block !== blockNumber) { - this._emitted.block = blockNumber; - Object.keys(this._emitted).forEach(function (key) { - // The block event does not expire - if (key === "block") { - return; - } - // The block we were at when we emitted this event - var eventBlockNumber = _this._emitted[key]; - // We cannot garbage collect pending transactions or blocks here - // They should be garbage collected by the Provider when setting - // "pending" events - if (eventBlockNumber === "pending") { - return; - } - // Evict any transaction hashes or block hashes over 12 blocks - // old, since they should not return null anyways - if (blockNumber - eventBlockNumber > 12) { - delete _this._emitted[key]; - } - }); - } - // First polling cycle - if (this._lastBlockNumber === -2) { - this._lastBlockNumber = blockNumber - 1; - } - // Find all transaction hashes we are waiting on - this._events.forEach(function (event) { - switch (event.type) { - case "tx": { - var hash_2 = event.hash; - var runner = _this.getTransactionReceipt(hash_2).then(function (receipt) { - if (!receipt || receipt.blockNumber == null) { - return null; - } - _this._emitted["t:" + hash_2] = receipt.blockNumber; - _this.emit(hash_2, receipt); - return null; - }).catch(function (error) { _this.emit("error", error); }); - runners.push(runner); - break; - } - case "filter": { - // We only allow a single getLogs to be in-flight at a time - if (!event._inflight) { - event._inflight = true; - // This is the first filter for this event, so we want to - // restrict events to events that happened no earlier than now - if (event._lastBlockNumber === -2) { - event._lastBlockNumber = blockNumber - 1; - } - // Filter from the last *known* event; due to load-balancing - // and some nodes returning updated block numbers before - // indexing events, a logs result with 0 entries cannot be - // trusted and we must retry a range which includes it again - var filter_1 = event.filter; - filter_1.fromBlock = event._lastBlockNumber + 1; - filter_1.toBlock = blockNumber; - // Prevent fitler ranges from growing too wild, since it is quite - // likely there just haven't been any events to move the lastBlockNumber. - var minFromBlock = filter_1.toBlock - _this._maxFilterBlockRange; - if (minFromBlock > filter_1.fromBlock) { - filter_1.fromBlock = minFromBlock; - } - if (filter_1.fromBlock < 0) { - filter_1.fromBlock = 0; - } - var runner = _this.getLogs(filter_1).then(function (logs) { - // Allow the next getLogs - event._inflight = false; - if (logs.length === 0) { - return; - } - logs.forEach(function (log) { - // Only when we get an event for a given block number - // can we trust the events are indexed - if (log.blockNumber > event._lastBlockNumber) { - event._lastBlockNumber = log.blockNumber; - } - // Make sure we stall requests to fetch blocks and txs - _this._emitted["b:" + log.blockHash] = log.blockNumber; - _this._emitted["t:" + log.transactionHash] = log.blockNumber; - _this.emit(filter_1, log); - }); - }).catch(function (error) { - _this.emit("error", error); - // Allow another getLogs (the range was not updated) - event._inflight = false; - }); - runners.push(runner); - } - break; - } - } - }); - this._lastBlockNumber = blockNumber; - // Once all events for this loop have been processed, emit "didPoll" - Promise.all(runners).then(function () { - _this.emit("didPoll", pollId); - }).catch(function (error) { _this.emit("error", error); }); - return [2 /*return*/]; - } - }); - }); - }; - // Deprecated; do not use this - BaseProvider.prototype.resetEventsBlock = function (blockNumber) { - this._lastBlockNumber = blockNumber - 1; - if (this.polling) { - this.poll(); - } - }; - Object.defineProperty(BaseProvider.prototype, "network", { - get: function () { - return this._network; - }, - enumerable: false, - configurable: true - }); - // This method should query the network if the underlying network - // can change, such as when connected to a JSON-RPC backend - BaseProvider.prototype.detectNetwork = function () { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, logger.throwError("provider does not support network detection", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "provider.detectNetwork" - })]; - }); - }); - }; - BaseProvider.prototype.getNetwork = function () { - return __awaiter(this, void 0, void 0, function () { - var network, currentNetwork, error; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this._ready()]; - case 1: - network = _a.sent(); - return [4 /*yield*/, this.detectNetwork()]; - case 2: - currentNetwork = _a.sent(); - if (!(network.chainId !== currentNetwork.chainId)) return [3 /*break*/, 5]; - if (!this.anyNetwork) return [3 /*break*/, 4]; - this._network = currentNetwork; - // Reset all internal block number guards and caches - this._lastBlockNumber = -2; - this._fastBlockNumber = null; - this._fastBlockNumberPromise = null; - this._fastQueryDate = 0; - this._emitted.block = -2; - this._maxInternalBlockNumber = -1024; - this._internalBlockNumber = null; - // The "network" event MUST happen before this method resolves - // so any events have a chance to unregister, so we stall an - // additional event loop before returning from /this/ call - this.emit("network", currentNetwork, network); - return [4 /*yield*/, stall(0)]; - case 3: - _a.sent(); - return [2 /*return*/, this._network]; - case 4: - error = logger.makeError("underlying network changed", logger_1.Logger.errors.NETWORK_ERROR, { - event: "changed", - network: network, - detectedNetwork: currentNetwork - }); - this.emit("error", error); - throw error; - case 5: return [2 /*return*/, network]; - } - }); - }); - }; - Object.defineProperty(BaseProvider.prototype, "blockNumber", { - get: function () { - var _this = this; - this._getInternalBlockNumber(100 + this.pollingInterval / 2).then(function (blockNumber) { - _this._setFastBlockNumber(blockNumber); - }, function (error) { }); - return (this._fastBlockNumber != null) ? this._fastBlockNumber : -1; - }, - enumerable: false, - configurable: true - }); - Object.defineProperty(BaseProvider.prototype, "polling", { - get: function () { - return (this._poller != null); - }, - set: function (value) { - var _this = this; - if (value && !this._poller) { - this._poller = setInterval(function () { _this.poll(); }, this.pollingInterval); - if (!this._bootstrapPoll) { - this._bootstrapPoll = setTimeout(function () { - _this.poll(); - // We block additional polls until the polling interval - // is done, to prevent overwhelming the poll function - _this._bootstrapPoll = setTimeout(function () { - // If polling was disabled, something may require a poke - // since starting the bootstrap poll and it was disabled - if (!_this._poller) { - _this.poll(); - } - // Clear out the bootstrap so we can do another - _this._bootstrapPoll = null; - }, _this.pollingInterval); - }, 0); - } - } - else if (!value && this._poller) { - clearInterval(this._poller); - this._poller = null; - } - }, - enumerable: false, - configurable: true - }); - Object.defineProperty(BaseProvider.prototype, "pollingInterval", { - get: function () { - return this._pollingInterval; - }, - set: function (value) { - var _this = this; - if (typeof (value) !== "number" || value <= 0 || parseInt(String(value)) != value) { - throw new Error("invalid polling interval"); - } - this._pollingInterval = value; - if (this._poller) { - clearInterval(this._poller); - this._poller = setInterval(function () { _this.poll(); }, this._pollingInterval); - } - }, - enumerable: false, - configurable: true - }); - BaseProvider.prototype._getFastBlockNumber = function () { - var _this = this; - var now = getTime(); - // Stale block number, request a newer value - if ((now - this._fastQueryDate) > 2 * this._pollingInterval) { - this._fastQueryDate = now; - this._fastBlockNumberPromise = this.getBlockNumber().then(function (blockNumber) { - if (_this._fastBlockNumber == null || blockNumber > _this._fastBlockNumber) { - _this._fastBlockNumber = blockNumber; - } - return _this._fastBlockNumber; - }); - } - return this._fastBlockNumberPromise; - }; - BaseProvider.prototype._setFastBlockNumber = function (blockNumber) { - // Older block, maybe a stale request - if (this._fastBlockNumber != null && blockNumber < this._fastBlockNumber) { - return; - } - // Update the time we updated the blocknumber - this._fastQueryDate = getTime(); - // Newer block number, use it - if (this._fastBlockNumber == null || blockNumber > this._fastBlockNumber) { - this._fastBlockNumber = blockNumber; - this._fastBlockNumberPromise = Promise.resolve(blockNumber); - } - }; - BaseProvider.prototype.waitForTransaction = function (transactionHash, confirmations, timeout) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this._waitForTransaction(transactionHash, (confirmations == null) ? 1 : confirmations, timeout || 0, null)]; - }); - }); - }; - BaseProvider.prototype._waitForTransaction = function (transactionHash, confirmations, timeout, replaceable) { - return __awaiter(this, void 0, void 0, function () { - var receipt; - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.getTransactionReceipt(transactionHash)]; - case 1: - receipt = _a.sent(); - // Receipt is already good - if ((receipt ? receipt.confirmations : 0) >= confirmations) { - return [2 /*return*/, receipt]; - } - // Poll until the receipt is good... - return [2 /*return*/, new Promise(function (resolve, reject) { - var cancelFuncs = []; - var done = false; - var alreadyDone = function () { - if (done) { - return true; - } - done = true; - cancelFuncs.forEach(function (func) { func(); }); - return false; - }; - var minedHandler = function (receipt) { - if (receipt.confirmations < confirmations) { - return; - } - if (alreadyDone()) { - return; - } - resolve(receipt); - }; - _this.on(transactionHash, minedHandler); - cancelFuncs.push(function () { _this.removeListener(transactionHash, minedHandler); }); - if (replaceable) { - var lastBlockNumber_1 = replaceable.startBlock; - var scannedBlock_1 = null; - var replaceHandler_1 = function (blockNumber) { return __awaiter(_this, void 0, void 0, function () { - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (done) { - return [2 /*return*/]; - } - // Wait 1 second; this is only used in the case of a fault, so - // we will trade off a little bit of latency for more consistent - // results and fewer JSON-RPC calls - return [4 /*yield*/, stall(1000)]; - case 1: - // Wait 1 second; this is only used in the case of a fault, so - // we will trade off a little bit of latency for more consistent - // results and fewer JSON-RPC calls - _a.sent(); - this.getTransactionCount(replaceable.from).then(function (nonce) { return __awaiter(_this, void 0, void 0, function () { - var mined, block, ti, tx, receipt_1, reason; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (done) { - return [2 /*return*/]; - } - if (!(nonce <= replaceable.nonce)) return [3 /*break*/, 1]; - lastBlockNumber_1 = blockNumber; - return [3 /*break*/, 9]; - case 1: return [4 /*yield*/, this.getTransaction(transactionHash)]; - case 2: - mined = _a.sent(); - if (mined && mined.blockNumber != null) { - return [2 /*return*/]; - } - // First time scanning. We start a little earlier for some - // wiggle room here to handle the eventually consistent nature - // of blockchain (e.g. the getTransactionCount was for a - // different block) - if (scannedBlock_1 == null) { - scannedBlock_1 = lastBlockNumber_1 - 3; - if (scannedBlock_1 < replaceable.startBlock) { - scannedBlock_1 = replaceable.startBlock; - } - } - _a.label = 3; - case 3: - if (!(scannedBlock_1 <= blockNumber)) return [3 /*break*/, 9]; - if (done) { - return [2 /*return*/]; - } - return [4 /*yield*/, this.getBlockWithTransactions(scannedBlock_1)]; - case 4: - block = _a.sent(); - ti = 0; - _a.label = 5; - case 5: - if (!(ti < block.transactions.length)) return [3 /*break*/, 8]; - tx = block.transactions[ti]; - // Successfully mined! - if (tx.hash === transactionHash) { - return [2 /*return*/]; - } - if (!(tx.from === replaceable.from && tx.nonce === replaceable.nonce)) return [3 /*break*/, 7]; - if (done) { - return [2 /*return*/]; - } - return [4 /*yield*/, this.waitForTransaction(tx.hash, confirmations)]; - case 6: - receipt_1 = _a.sent(); - // Already resolved or rejected (prolly a timeout) - if (alreadyDone()) { - return [2 /*return*/]; - } - reason = "replaced"; - if (tx.data === replaceable.data && tx.to === replaceable.to && tx.value.eq(replaceable.value)) { - reason = "repriced"; - } - else if (tx.data === "0x" && tx.from === tx.to && tx.value.isZero()) { - reason = "cancelled"; - } - // Explain why we were replaced - reject(logger.makeError("transaction was replaced", logger_1.Logger.errors.TRANSACTION_REPLACED, { - cancelled: (reason === "replaced" || reason === "cancelled"), - reason: reason, - replacement: this._wrapTransaction(tx), - hash: transactionHash, - receipt: receipt_1 - })); - return [2 /*return*/]; - case 7: - ti++; - return [3 /*break*/, 5]; - case 8: - scannedBlock_1++; - return [3 /*break*/, 3]; - case 9: - if (done) { - return [2 /*return*/]; - } - this.once("block", replaceHandler_1); - return [2 /*return*/]; - } - }); - }); }, function (error) { - if (done) { - return; - } - _this.once("block", replaceHandler_1); - }); - return [2 /*return*/]; - } - }); - }); }; - if (done) { - return; - } - _this.once("block", replaceHandler_1); - cancelFuncs.push(function () { - _this.removeListener("block", replaceHandler_1); - }); - } - if (typeof (timeout) === "number" && timeout > 0) { - var timer_1 = setTimeout(function () { - if (alreadyDone()) { - return; - } - reject(logger.makeError("timeout exceeded", logger_1.Logger.errors.TIMEOUT, { timeout: timeout })); - }, timeout); - if (timer_1.unref) { - timer_1.unref(); - } - cancelFuncs.push(function () { clearTimeout(timer_1); }); - } - })]; - } - }); - }); - }; - BaseProvider.prototype.getBlockNumber = function () { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this._getInternalBlockNumber(0)]; - }); - }); - }; - BaseProvider.prototype.getGasPrice = function () { - return __awaiter(this, void 0, void 0, function () { - var result; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.getNetwork()]; - case 1: - _a.sent(); - return [4 /*yield*/, this.perform("getGasPrice", {})]; - case 2: - result = _a.sent(); - try { - return [2 /*return*/, bignumber_1.BigNumber.from(result)]; - } - catch (error) { - return [2 /*return*/, logger.throwError("bad result from backend", logger_1.Logger.errors.SERVER_ERROR, { - method: "getGasPrice", - result: result, - error: error - })]; - } - return [2 /*return*/]; - } - }); - }); - }; - BaseProvider.prototype.getBalance = function (addressOrName, blockTag) { - return __awaiter(this, void 0, void 0, function () { - var params, result; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.getNetwork()]; - case 1: - _a.sent(); - return [4 /*yield*/, (0, properties_1.resolveProperties)({ - address: this._getAddress(addressOrName), - blockTag: this._getBlockTag(blockTag) - })]; - case 2: - params = _a.sent(); - return [4 /*yield*/, this.perform("getBalance", params)]; - case 3: - result = _a.sent(); - try { - return [2 /*return*/, bignumber_1.BigNumber.from(result)]; - } - catch (error) { - return [2 /*return*/, logger.throwError("bad result from backend", logger_1.Logger.errors.SERVER_ERROR, { - method: "getBalance", - params: params, - result: result, - error: error - })]; - } - return [2 /*return*/]; - } - }); - }); - }; - BaseProvider.prototype.getTransactionCount = function (addressOrName, blockTag) { - return __awaiter(this, void 0, void 0, function () { - var params, result; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.getNetwork()]; - case 1: - _a.sent(); - return [4 /*yield*/, (0, properties_1.resolveProperties)({ - address: this._getAddress(addressOrName), - blockTag: this._getBlockTag(blockTag) - })]; - case 2: - params = _a.sent(); - return [4 /*yield*/, this.perform("getTransactionCount", params)]; - case 3: - result = _a.sent(); - try { - return [2 /*return*/, bignumber_1.BigNumber.from(result).toNumber()]; - } - catch (error) { - return [2 /*return*/, logger.throwError("bad result from backend", logger_1.Logger.errors.SERVER_ERROR, { - method: "getTransactionCount", - params: params, - result: result, - error: error - })]; - } - return [2 /*return*/]; - } - }); - }); - }; - BaseProvider.prototype.getCode = function (addressOrName, blockTag) { - return __awaiter(this, void 0, void 0, function () { - var params, result; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.getNetwork()]; - case 1: - _a.sent(); - return [4 /*yield*/, (0, properties_1.resolveProperties)({ - address: this._getAddress(addressOrName), - blockTag: this._getBlockTag(blockTag) - })]; - case 2: - params = _a.sent(); - return [4 /*yield*/, this.perform("getCode", params)]; - case 3: - result = _a.sent(); - try { - return [2 /*return*/, (0, bytes_1.hexlify)(result)]; - } - catch (error) { - return [2 /*return*/, logger.throwError("bad result from backend", logger_1.Logger.errors.SERVER_ERROR, { - method: "getCode", - params: params, - result: result, - error: error - })]; - } - return [2 /*return*/]; - } - }); - }); - }; - BaseProvider.prototype.getStorageAt = function (addressOrName, position, blockTag) { - return __awaiter(this, void 0, void 0, function () { - var params, result; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.getNetwork()]; - case 1: - _a.sent(); - return [4 /*yield*/, (0, properties_1.resolveProperties)({ - address: this._getAddress(addressOrName), - blockTag: this._getBlockTag(blockTag), - position: Promise.resolve(position).then(function (p) { return (0, bytes_1.hexValue)(p); }) - })]; - case 2: - params = _a.sent(); - return [4 /*yield*/, this.perform("getStorageAt", params)]; - case 3: - result = _a.sent(); - try { - return [2 /*return*/, (0, bytes_1.hexlify)(result)]; - } - catch (error) { - return [2 /*return*/, logger.throwError("bad result from backend", logger_1.Logger.errors.SERVER_ERROR, { - method: "getStorageAt", - params: params, - result: result, - error: error - })]; - } - return [2 /*return*/]; - } - }); - }); - }; - // This should be called by any subclass wrapping a TransactionResponse - BaseProvider.prototype._wrapTransaction = function (tx, hash, startBlock) { - var _this = this; - if (hash != null && (0, bytes_1.hexDataLength)(hash) !== 32) { - throw new Error("invalid response - sendTransaction"); - } - var result = tx; - // Check the hash we expect is the same as the hash the server reported - if (hash != null && tx.hash !== hash) { - logger.throwError("Transaction hash mismatch from Provider.sendTransaction.", logger_1.Logger.errors.UNKNOWN_ERROR, { expectedHash: tx.hash, returnedHash: hash }); - } - result.wait = function (confirms, timeout) { return __awaiter(_this, void 0, void 0, function () { - var replacement, receipt; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (confirms == null) { - confirms = 1; - } - if (timeout == null) { - timeout = 0; - } - replacement = undefined; - if (confirms !== 0 && startBlock != null) { - replacement = { - data: tx.data, - from: tx.from, - nonce: tx.nonce, - to: tx.to, - value: tx.value, - startBlock: startBlock - }; - } - return [4 /*yield*/, this._waitForTransaction(tx.hash, confirms, timeout, replacement)]; - case 1: - receipt = _a.sent(); - if (receipt == null && confirms === 0) { - return [2 /*return*/, null]; - } - // No longer pending, allow the polling loop to garbage collect this - this._emitted["t:" + tx.hash] = receipt.blockNumber; - if (receipt.status === 0) { - logger.throwError("transaction failed", logger_1.Logger.errors.CALL_EXCEPTION, { - transactionHash: tx.hash, - transaction: tx, - receipt: receipt - }); - } - return [2 /*return*/, receipt]; - } - }); - }); }; - return result; - }; - BaseProvider.prototype.sendTransaction = function (signedTransaction) { - return __awaiter(this, void 0, void 0, function () { - var hexTx, tx, blockNumber, hash, error_7; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.getNetwork()]; - case 1: - _a.sent(); - return [4 /*yield*/, Promise.resolve(signedTransaction).then(function (t) { return (0, bytes_1.hexlify)(t); })]; - case 2: - hexTx = _a.sent(); - tx = this.formatter.transaction(signedTransaction); - if (tx.confirmations == null) { - tx.confirmations = 0; - } - return [4 /*yield*/, this._getInternalBlockNumber(100 + 2 * this.pollingInterval)]; - case 3: - blockNumber = _a.sent(); - _a.label = 4; - case 4: - _a.trys.push([4, 6, , 7]); - return [4 /*yield*/, this.perform("sendTransaction", { signedTransaction: hexTx })]; - case 5: - hash = _a.sent(); - return [2 /*return*/, this._wrapTransaction(tx, hash, blockNumber)]; - case 6: - error_7 = _a.sent(); - error_7.transaction = tx; - error_7.transactionHash = tx.hash; - throw error_7; - case 7: return [2 /*return*/]; - } - }); - }); - }; - BaseProvider.prototype._getTransactionRequest = function (transaction) { - return __awaiter(this, void 0, void 0, function () { - var values, tx, _a, _b; - var _this = this; - return __generator(this, function (_c) { - switch (_c.label) { - case 0: return [4 /*yield*/, transaction]; - case 1: - values = _c.sent(); - tx = {}; - ["from", "to"].forEach(function (key) { - if (values[key] == null) { - return; - } - tx[key] = Promise.resolve(values[key]).then(function (v) { return (v ? _this._getAddress(v) : null); }); - }); - ["gasLimit", "gasPrice", "maxFeePerGas", "maxPriorityFeePerGas", "value"].forEach(function (key) { - if (values[key] == null) { - return; - } - tx[key] = Promise.resolve(values[key]).then(function (v) { return (v ? bignumber_1.BigNumber.from(v) : null); }); - }); - ["type"].forEach(function (key) { - if (values[key] == null) { - return; - } - tx[key] = Promise.resolve(values[key]).then(function (v) { return ((v != null) ? v : null); }); - }); - if (values.accessList) { - tx.accessList = this.formatter.accessList(values.accessList); - } - ["data"].forEach(function (key) { - if (values[key] == null) { - return; - } - tx[key] = Promise.resolve(values[key]).then(function (v) { return (v ? (0, bytes_1.hexlify)(v) : null); }); - }); - _b = (_a = this.formatter).transactionRequest; - return [4 /*yield*/, (0, properties_1.resolveProperties)(tx)]; - case 2: return [2 /*return*/, _b.apply(_a, [_c.sent()])]; - } - }); - }); - }; - BaseProvider.prototype._getFilter = function (filter) { - return __awaiter(this, void 0, void 0, function () { - var result, _a, _b; - var _this = this; - return __generator(this, function (_c) { - switch (_c.label) { - case 0: return [4 /*yield*/, filter]; - case 1: - filter = _c.sent(); - result = {}; - if (filter.address != null) { - result.address = this._getAddress(filter.address); - } - ["blockHash", "topics"].forEach(function (key) { - if (filter[key] == null) { - return; - } - result[key] = filter[key]; - }); - ["fromBlock", "toBlock"].forEach(function (key) { - if (filter[key] == null) { - return; - } - result[key] = _this._getBlockTag(filter[key]); - }); - _b = (_a = this.formatter).filter; - return [4 /*yield*/, (0, properties_1.resolveProperties)(result)]; - case 2: return [2 /*return*/, _b.apply(_a, [_c.sent()])]; - } - }); - }); - }; - BaseProvider.prototype._call = function (transaction, blockTag, attempt) { - return __awaiter(this, void 0, void 0, function () { - var txSender, result, data, sender, urls, urlsOffset, urlsLength, urlsData, u, url, calldata, callbackSelector, extraData, ccipResult, tx, error_8; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (attempt >= MAX_CCIP_REDIRECTS) { - logger.throwError("CCIP read exceeded maximum redirections", logger_1.Logger.errors.SERVER_ERROR, { - redirects: attempt, - transaction: transaction - }); - } - txSender = transaction.to; - return [4 /*yield*/, this.perform("call", { transaction: transaction, blockTag: blockTag })]; - case 1: - result = _a.sent(); - if (!(attempt >= 0 && blockTag === "latest" && txSender != null && result.substring(0, 10) === "0x556f1830" && ((0, bytes_1.hexDataLength)(result) % 32 === 4))) return [3 /*break*/, 5]; - _a.label = 2; - case 2: - _a.trys.push([2, 4, , 5]); - data = (0, bytes_1.hexDataSlice)(result, 4); - sender = (0, bytes_1.hexDataSlice)(data, 0, 32); - if (!bignumber_1.BigNumber.from(sender).eq(txSender)) { - logger.throwError("CCIP Read sender did not match", logger_1.Logger.errors.CALL_EXCEPTION, { - name: "OffchainLookup", - signature: "OffchainLookup(address,string[],bytes,bytes4,bytes)", - transaction: transaction, - data: result - }); - } - urls = []; - urlsOffset = bignumber_1.BigNumber.from((0, bytes_1.hexDataSlice)(data, 32, 64)).toNumber(); - urlsLength = bignumber_1.BigNumber.from((0, bytes_1.hexDataSlice)(data, urlsOffset, urlsOffset + 32)).toNumber(); - urlsData = (0, bytes_1.hexDataSlice)(data, urlsOffset + 32); - for (u = 0; u < urlsLength; u++) { - url = _parseString(urlsData, u * 32); - if (url == null) { - logger.throwError("CCIP Read contained corrupt URL string", logger_1.Logger.errors.CALL_EXCEPTION, { - name: "OffchainLookup", - signature: "OffchainLookup(address,string[],bytes,bytes4,bytes)", - transaction: transaction, - data: result - }); - } - urls.push(url); - } - calldata = _parseBytes(data, 64); - // Get the callbackSelector (bytes4) - if (!bignumber_1.BigNumber.from((0, bytes_1.hexDataSlice)(data, 100, 128)).isZero()) { - logger.throwError("CCIP Read callback selector included junk", logger_1.Logger.errors.CALL_EXCEPTION, { - name: "OffchainLookup", - signature: "OffchainLookup(address,string[],bytes,bytes4,bytes)", - transaction: transaction, - data: result - }); - } - callbackSelector = (0, bytes_1.hexDataSlice)(data, 96, 100); - extraData = _parseBytes(data, 128); - return [4 /*yield*/, this.ccipReadFetch(transaction, calldata, urls)]; - case 3: - ccipResult = _a.sent(); - if (ccipResult == null) { - logger.throwError("CCIP Read disabled or provided no URLs", logger_1.Logger.errors.CALL_EXCEPTION, { - name: "OffchainLookup", - signature: "OffchainLookup(address,string[],bytes,bytes4,bytes)", - transaction: transaction, - data: result - }); - } - tx = { - to: txSender, - data: (0, bytes_1.hexConcat)([callbackSelector, encodeBytes([ccipResult, extraData])]) - }; - return [2 /*return*/, this._call(tx, blockTag, attempt + 1)]; - case 4: - error_8 = _a.sent(); - if (error_8.code === logger_1.Logger.errors.SERVER_ERROR) { - throw error_8; - } - return [3 /*break*/, 5]; - case 5: - try { - return [2 /*return*/, (0, bytes_1.hexlify)(result)]; - } - catch (error) { - return [2 /*return*/, logger.throwError("bad result from backend", logger_1.Logger.errors.SERVER_ERROR, { - method: "call", - params: { transaction: transaction, blockTag: blockTag }, - result: result, - error: error - })]; - } - return [2 /*return*/]; - } - }); - }); - }; - BaseProvider.prototype.call = function (transaction, blockTag) { - return __awaiter(this, void 0, void 0, function () { - var resolved; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.getNetwork()]; - case 1: - _a.sent(); - return [4 /*yield*/, (0, properties_1.resolveProperties)({ - transaction: this._getTransactionRequest(transaction), - blockTag: this._getBlockTag(blockTag), - ccipReadEnabled: Promise.resolve(transaction.ccipReadEnabled) - })]; - case 2: - resolved = _a.sent(); - return [2 /*return*/, this._call(resolved.transaction, resolved.blockTag, resolved.ccipReadEnabled ? 0 : -1)]; - } - }); - }); - }; - BaseProvider.prototype.estimateGas = function (transaction) { - return __awaiter(this, void 0, void 0, function () { - var params, result; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.getNetwork()]; - case 1: - _a.sent(); - return [4 /*yield*/, (0, properties_1.resolveProperties)({ - transaction: this._getTransactionRequest(transaction) - })]; - case 2: - params = _a.sent(); - return [4 /*yield*/, this.perform("estimateGas", params)]; - case 3: - result = _a.sent(); - try { - return [2 /*return*/, bignumber_1.BigNumber.from(result)]; - } - catch (error) { - return [2 /*return*/, logger.throwError("bad result from backend", logger_1.Logger.errors.SERVER_ERROR, { - method: "estimateGas", - params: params, - result: result, - error: error - })]; - } - return [2 /*return*/]; - } - }); - }); - }; - BaseProvider.prototype._getAddress = function (addressOrName) { - return __awaiter(this, void 0, void 0, function () { - var address; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, addressOrName]; - case 1: - addressOrName = _a.sent(); - if (typeof (addressOrName) !== "string") { - logger.throwArgumentError("invalid address or ENS name", "name", addressOrName); - } - return [4 /*yield*/, this.resolveName(addressOrName)]; - case 2: - address = _a.sent(); - if (address == null) { - logger.throwError("ENS name not configured", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "resolveName(" + JSON.stringify(addressOrName) + ")" - }); - } - return [2 /*return*/, address]; - } - }); - }); - }; - BaseProvider.prototype._getBlock = function (blockHashOrBlockTag, includeTransactions) { - return __awaiter(this, void 0, void 0, function () { - var blockNumber, params, _a, error_9; - var _this = this; - return __generator(this, function (_b) { - switch (_b.label) { - case 0: return [4 /*yield*/, this.getNetwork()]; - case 1: - _b.sent(); - return [4 /*yield*/, blockHashOrBlockTag]; - case 2: - blockHashOrBlockTag = _b.sent(); - blockNumber = -128; - params = { - includeTransactions: !!includeTransactions - }; - if (!(0, bytes_1.isHexString)(blockHashOrBlockTag, 32)) return [3 /*break*/, 3]; - params.blockHash = blockHashOrBlockTag; - return [3 /*break*/, 6]; - case 3: - _b.trys.push([3, 5, , 6]); - _a = params; - return [4 /*yield*/, this._getBlockTag(blockHashOrBlockTag)]; - case 4: - _a.blockTag = _b.sent(); - if ((0, bytes_1.isHexString)(params.blockTag)) { - blockNumber = parseInt(params.blockTag.substring(2), 16); - } - return [3 /*break*/, 6]; - case 5: - error_9 = _b.sent(); - logger.throwArgumentError("invalid block hash or block tag", "blockHashOrBlockTag", blockHashOrBlockTag); - return [3 /*break*/, 6]; - case 6: return [2 /*return*/, (0, web_1.poll)(function () { return __awaiter(_this, void 0, void 0, function () { - var block, blockNumber_1, i, tx, confirmations, blockWithTxs; - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.perform("getBlock", params)]; - case 1: - block = _a.sent(); - // Block was not found - if (block == null) { - // For blockhashes, if we didn't say it existed, that blockhash may - // not exist. If we did see it though, perhaps from a log, we know - // it exists, and this node is just not caught up yet. - if (params.blockHash != null) { - if (this._emitted["b:" + params.blockHash] == null) { - return [2 /*return*/, null]; - } - } - // For block tags, if we are asking for a future block, we return null - if (params.blockTag != null) { - if (blockNumber > this._emitted.block) { - return [2 /*return*/, null]; - } - } - // Retry on the next block - return [2 /*return*/, undefined]; - } - if (!includeTransactions) return [3 /*break*/, 8]; - blockNumber_1 = null; - i = 0; - _a.label = 2; - case 2: - if (!(i < block.transactions.length)) return [3 /*break*/, 7]; - tx = block.transactions[i]; - if (!(tx.blockNumber == null)) return [3 /*break*/, 3]; - tx.confirmations = 0; - return [3 /*break*/, 6]; - case 3: - if (!(tx.confirmations == null)) return [3 /*break*/, 6]; - if (!(blockNumber_1 == null)) return [3 /*break*/, 5]; - return [4 /*yield*/, this._getInternalBlockNumber(100 + 2 * this.pollingInterval)]; - case 4: - blockNumber_1 = _a.sent(); - _a.label = 5; - case 5: - confirmations = (blockNumber_1 - tx.blockNumber) + 1; - if (confirmations <= 0) { - confirmations = 1; - } - tx.confirmations = confirmations; - _a.label = 6; - case 6: - i++; - return [3 /*break*/, 2]; - case 7: - blockWithTxs = this.formatter.blockWithTransactions(block); - blockWithTxs.transactions = blockWithTxs.transactions.map(function (tx) { return _this._wrapTransaction(tx); }); - return [2 /*return*/, blockWithTxs]; - case 8: return [2 /*return*/, this.formatter.block(block)]; - } - }); - }); }, { oncePoll: this })]; - } - }); - }); - }; - BaseProvider.prototype.getBlock = function (blockHashOrBlockTag) { - return (this._getBlock(blockHashOrBlockTag, false)); - }; - BaseProvider.prototype.getBlockWithTransactions = function (blockHashOrBlockTag) { - return (this._getBlock(blockHashOrBlockTag, true)); - }; - BaseProvider.prototype.getTransaction = function (transactionHash) { - return __awaiter(this, void 0, void 0, function () { - var params; - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.getNetwork()]; - case 1: - _a.sent(); - return [4 /*yield*/, transactionHash]; - case 2: - transactionHash = _a.sent(); - params = { transactionHash: this.formatter.hash(transactionHash, true) }; - return [2 /*return*/, (0, web_1.poll)(function () { return __awaiter(_this, void 0, void 0, function () { - var result, tx, blockNumber, confirmations; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.perform("getTransaction", params)]; - case 1: - result = _a.sent(); - if (result == null) { - if (this._emitted["t:" + transactionHash] == null) { - return [2 /*return*/, null]; - } - return [2 /*return*/, undefined]; - } - tx = this.formatter.transactionResponse(result); - if (!(tx.blockNumber == null)) return [3 /*break*/, 2]; - tx.confirmations = 0; - return [3 /*break*/, 4]; - case 2: - if (!(tx.confirmations == null)) return [3 /*break*/, 4]; - return [4 /*yield*/, this._getInternalBlockNumber(100 + 2 * this.pollingInterval)]; - case 3: - blockNumber = _a.sent(); - confirmations = (blockNumber - tx.blockNumber) + 1; - if (confirmations <= 0) { - confirmations = 1; - } - tx.confirmations = confirmations; - _a.label = 4; - case 4: return [2 /*return*/, this._wrapTransaction(tx)]; - } - }); - }); }, { oncePoll: this })]; - } - }); - }); - }; - BaseProvider.prototype.getTransactionReceipt = function (transactionHash) { - return __awaiter(this, void 0, void 0, function () { - var params; - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.getNetwork()]; - case 1: - _a.sent(); - return [4 /*yield*/, transactionHash]; - case 2: - transactionHash = _a.sent(); - params = { transactionHash: this.formatter.hash(transactionHash, true) }; - return [2 /*return*/, (0, web_1.poll)(function () { return __awaiter(_this, void 0, void 0, function () { - var result, receipt, blockNumber, confirmations; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.perform("getTransactionReceipt", params)]; - case 1: - result = _a.sent(); - if (result == null) { - if (this._emitted["t:" + transactionHash] == null) { - return [2 /*return*/, null]; - } - return [2 /*return*/, undefined]; - } - // "geth-etc" returns receipts before they are ready - if (result.blockHash == null) { - return [2 /*return*/, undefined]; - } - receipt = this.formatter.receipt(result); - if (!(receipt.blockNumber == null)) return [3 /*break*/, 2]; - receipt.confirmations = 0; - return [3 /*break*/, 4]; - case 2: - if (!(receipt.confirmations == null)) return [3 /*break*/, 4]; - return [4 /*yield*/, this._getInternalBlockNumber(100 + 2 * this.pollingInterval)]; - case 3: - blockNumber = _a.sent(); - confirmations = (blockNumber - receipt.blockNumber) + 1; - if (confirmations <= 0) { - confirmations = 1; - } - receipt.confirmations = confirmations; - _a.label = 4; - case 4: return [2 /*return*/, receipt]; - } - }); - }); }, { oncePoll: this })]; - } - }); - }); - }; - BaseProvider.prototype.getLogs = function (filter) { - return __awaiter(this, void 0, void 0, function () { - var params, logs; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.getNetwork()]; - case 1: - _a.sent(); - return [4 /*yield*/, (0, properties_1.resolveProperties)({ filter: this._getFilter(filter) })]; - case 2: - params = _a.sent(); - return [4 /*yield*/, this.perform("getLogs", params)]; - case 3: - logs = _a.sent(); - logs.forEach(function (log) { - if (log.removed == null) { - log.removed = false; - } - }); - return [2 /*return*/, formatter_1.Formatter.arrayOf(this.formatter.filterLog.bind(this.formatter))(logs)]; - } - }); - }); - }; - BaseProvider.prototype.getEtherPrice = function () { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.getNetwork()]; - case 1: - _a.sent(); - return [2 /*return*/, this.perform("getEtherPrice", {})]; - } - }); - }); - }; - BaseProvider.prototype._getBlockTag = function (blockTag) { - return __awaiter(this, void 0, void 0, function () { - var blockNumber; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, blockTag]; - case 1: - blockTag = _a.sent(); - if (!(typeof (blockTag) === "number" && blockTag < 0)) return [3 /*break*/, 3]; - if (blockTag % 1) { - logger.throwArgumentError("invalid BlockTag", "blockTag", blockTag); - } - return [4 /*yield*/, this._getInternalBlockNumber(100 + 2 * this.pollingInterval)]; - case 2: - blockNumber = _a.sent(); - blockNumber += blockTag; - if (blockNumber < 0) { - blockNumber = 0; - } - return [2 /*return*/, this.formatter.blockTag(blockNumber)]; - case 3: return [2 /*return*/, this.formatter.blockTag(blockTag)]; - } - }); - }); - }; - BaseProvider.prototype.getResolver = function (name) { - return __awaiter(this, void 0, void 0, function () { - var currentName, addr, resolver, _a; - return __generator(this, function (_b) { - switch (_b.label) { - case 0: - currentName = name; - _b.label = 1; - case 1: - if (false) {} - if (currentName === "" || currentName === ".") { - return [2 /*return*/, null]; - } - // Optimization since the eth node cannot change and does - // not have a wildcard resolver - if (name !== "eth" && currentName === "eth") { - return [2 /*return*/, null]; - } - return [4 /*yield*/, this._getResolver(currentName, "getResolver")]; - case 2: - addr = _b.sent(); - if (!(addr != null)) return [3 /*break*/, 5]; - resolver = new Resolver(this, addr, name); - _a = currentName !== name; - if (!_a) return [3 /*break*/, 4]; - return [4 /*yield*/, resolver.supportsWildcard()]; - case 3: - _a = !(_b.sent()); - _b.label = 4; - case 4: - // Legacy resolver found, using EIP-2544 so it isn't safe to use - if (_a) { - return [2 /*return*/, null]; - } - return [2 /*return*/, resolver]; - case 5: - // Get the parent node - currentName = currentName.split(".").slice(1).join("."); - return [3 /*break*/, 1]; - case 6: return [2 /*return*/]; - } - }); - }); - }; - BaseProvider.prototype._getResolver = function (name, operation) { - return __awaiter(this, void 0, void 0, function () { - var network, addrData, error_10; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (operation == null) { - operation = "ENS"; - } - return [4 /*yield*/, this.getNetwork()]; - case 1: - network = _a.sent(); - // No ENS... - if (!network.ensAddress) { - logger.throwError("network does not support ENS", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { operation: operation, network: network.name }); - } - _a.label = 2; - case 2: - _a.trys.push([2, 4, , 5]); - return [4 /*yield*/, this.call({ - to: network.ensAddress, - data: ("0x0178b8bf" + (0, hash_1.namehash)(name).substring(2)) - })]; - case 3: - addrData = _a.sent(); - return [2 /*return*/, this.formatter.callAddress(addrData)]; - case 4: - error_10 = _a.sent(); - return [3 /*break*/, 5]; - case 5: return [2 /*return*/, null]; - } - }); - }); - }; - BaseProvider.prototype.resolveName = function (name) { - return __awaiter(this, void 0, void 0, function () { - var resolver; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, name]; - case 1: - name = _a.sent(); - // If it is already an address, nothing to resolve - try { - return [2 /*return*/, Promise.resolve(this.formatter.address(name))]; - } - catch (error) { - // If is is a hexstring, the address is bad (See #694) - if ((0, bytes_1.isHexString)(name)) { - throw error; - } - } - if (typeof (name) !== "string") { - logger.throwArgumentError("invalid ENS name", "name", name); - } - return [4 /*yield*/, this.getResolver(name)]; - case 2: - resolver = _a.sent(); - if (!resolver) { - return [2 /*return*/, null]; - } - return [4 /*yield*/, resolver.getAddress()]; - case 3: return [2 /*return*/, _a.sent()]; - } - }); - }); - }; - BaseProvider.prototype.lookupAddress = function (address) { - return __awaiter(this, void 0, void 0, function () { - var node, resolverAddr, name, _a, addr; - return __generator(this, function (_b) { - switch (_b.label) { - case 0: return [4 /*yield*/, address]; - case 1: - address = _b.sent(); - address = this.formatter.address(address); - node = address.substring(2).toLowerCase() + ".addr.reverse"; - return [4 /*yield*/, this._getResolver(node, "lookupAddress")]; - case 2: - resolverAddr = _b.sent(); - if (resolverAddr == null) { - return [2 /*return*/, null]; - } - _a = _parseString; - return [4 /*yield*/, this.call({ - to: resolverAddr, - data: ("0x691f3431" + (0, hash_1.namehash)(node).substring(2)) - })]; - case 3: - name = _a.apply(void 0, [_b.sent(), 0]); - return [4 /*yield*/, this.resolveName(name)]; - case 4: - addr = _b.sent(); - if (addr != address) { - return [2 /*return*/, null]; - } - return [2 /*return*/, name]; - } - }); - }); - }; - BaseProvider.prototype.getAvatar = function (nameOrAddress) { - return __awaiter(this, void 0, void 0, function () { - var resolver, address, node, resolverAddress, avatar_1, error_11, name_1, _a, error_12, avatar; - return __generator(this, function (_b) { - switch (_b.label) { - case 0: - resolver = null; - if (!(0, bytes_1.isHexString)(nameOrAddress)) return [3 /*break*/, 10]; - address = this.formatter.address(nameOrAddress); - node = address.substring(2).toLowerCase() + ".addr.reverse"; - return [4 /*yield*/, this._getResolver(node, "getAvatar")]; - case 1: - resolverAddress = _b.sent(); - if (!resolverAddress) { - return [2 /*return*/, null]; - } - // Try resolving the avatar against the addr.reverse resolver - resolver = new Resolver(this, resolverAddress, node); - _b.label = 2; - case 2: - _b.trys.push([2, 4, , 5]); - return [4 /*yield*/, resolver.getAvatar()]; - case 3: - avatar_1 = _b.sent(); - if (avatar_1) { - return [2 /*return*/, avatar_1.url]; - } - return [3 /*break*/, 5]; - case 4: - error_11 = _b.sent(); - if (error_11.code !== logger_1.Logger.errors.CALL_EXCEPTION) { - throw error_11; - } - return [3 /*break*/, 5]; - case 5: - _b.trys.push([5, 8, , 9]); - _a = _parseString; - return [4 /*yield*/, this.call({ - to: resolverAddress, - data: ("0x691f3431" + (0, hash_1.namehash)(node).substring(2)) - })]; - case 6: - name_1 = _a.apply(void 0, [_b.sent(), 0]); - return [4 /*yield*/, this.getResolver(name_1)]; - case 7: - resolver = _b.sent(); - return [3 /*break*/, 9]; - case 8: - error_12 = _b.sent(); - if (error_12.code !== logger_1.Logger.errors.CALL_EXCEPTION) { - throw error_12; - } - return [2 /*return*/, null]; - case 9: return [3 /*break*/, 12]; - case 10: return [4 /*yield*/, this.getResolver(nameOrAddress)]; - case 11: - // ENS name; forward lookup with wildcard - resolver = _b.sent(); - if (!resolver) { - return [2 /*return*/, null]; - } - _b.label = 12; - case 12: return [4 /*yield*/, resolver.getAvatar()]; - case 13: - avatar = _b.sent(); - if (avatar == null) { - return [2 /*return*/, null]; - } - return [2 /*return*/, avatar.url]; - } - }); - }); - }; - BaseProvider.prototype.perform = function (method, params) { - return logger.throwError(method + " not implemented", logger_1.Logger.errors.NOT_IMPLEMENTED, { operation: method }); - }; - BaseProvider.prototype._startEvent = function (event) { - this.polling = (this._events.filter(function (e) { return e.pollable(); }).length > 0); - }; - BaseProvider.prototype._stopEvent = function (event) { - this.polling = (this._events.filter(function (e) { return e.pollable(); }).length > 0); - }; - BaseProvider.prototype._addEventListener = function (eventName, listener, once) { - var event = new Event(getEventTag(eventName), listener, once); - this._events.push(event); - this._startEvent(event); - return this; - }; - BaseProvider.prototype.on = function (eventName, listener) { - return this._addEventListener(eventName, listener, false); - }; - BaseProvider.prototype.once = function (eventName, listener) { - return this._addEventListener(eventName, listener, true); - }; - BaseProvider.prototype.emit = function (eventName) { - var _this = this; - var args = []; - for (var _i = 1; _i < arguments.length; _i++) { - args[_i - 1] = arguments[_i]; - } - var result = false; - var stopped = []; - var eventTag = getEventTag(eventName); - this._events = this._events.filter(function (event) { - if (event.tag !== eventTag) { - return true; - } - setTimeout(function () { - event.listener.apply(_this, args); - }, 0); - result = true; - if (event.once) { - stopped.push(event); - return false; - } - return true; - }); - stopped.forEach(function (event) { _this._stopEvent(event); }); - return result; - }; - BaseProvider.prototype.listenerCount = function (eventName) { - if (!eventName) { - return this._events.length; - } - var eventTag = getEventTag(eventName); - return this._events.filter(function (event) { - return (event.tag === eventTag); - }).length; - }; - BaseProvider.prototype.listeners = function (eventName) { - if (eventName == null) { - return this._events.map(function (event) { return event.listener; }); - } - var eventTag = getEventTag(eventName); - return this._events - .filter(function (event) { return (event.tag === eventTag); }) - .map(function (event) { return event.listener; }); - }; - BaseProvider.prototype.off = function (eventName, listener) { - var _this = this; - if (listener == null) { - return this.removeAllListeners(eventName); - } - var stopped = []; - var found = false; - var eventTag = getEventTag(eventName); - this._events = this._events.filter(function (event) { - if (event.tag !== eventTag || event.listener != listener) { - return true; - } - if (found) { - return true; - } - found = true; - stopped.push(event); - return false; - }); - stopped.forEach(function (event) { _this._stopEvent(event); }); - return this; - }; - BaseProvider.prototype.removeAllListeners = function (eventName) { - var _this = this; - var stopped = []; - if (eventName == null) { - stopped = this._events; - this._events = []; - } - else { - var eventTag_1 = getEventTag(eventName); - this._events = this._events.filter(function (event) { - if (event.tag !== eventTag_1) { - return true; - } - stopped.push(event); - return false; - }); - } - stopped.forEach(function (event) { _this._stopEvent(event); }); - return this; - }; - return BaseProvider; -}(abstract_provider_1.Provider)); -exports.BaseProvider = BaseProvider; -//# sourceMappingURL=base-provider.js.map - -/***/ }), - -/***/ 83832: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -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 })); -exports.CloudflareProvider = void 0; -var url_json_rpc_provider_1 = __nccwpck_require__(56717); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -var CloudflareProvider = /** @class */ (function (_super) { - __extends(CloudflareProvider, _super); - function CloudflareProvider() { - return _super !== null && _super.apply(this, arguments) || this; - } - CloudflareProvider.getApiKey = function (apiKey) { - if (apiKey != null) { - logger.throwArgumentError("apiKey not supported for cloudflare", "apiKey", apiKey); - } - return null; - }; - CloudflareProvider.getUrl = function (network, apiKey) { - var host = null; - switch (network.name) { - case "homestead": - host = "https://cloudflare-eth.com/"; - break; - default: - logger.throwArgumentError("unsupported network", "network", arguments[0]); - } - return host; - }; - CloudflareProvider.prototype.perform = function (method, params) { - return __awaiter(this, void 0, void 0, function () { - var block; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (!(method === "getBlockNumber")) return [3 /*break*/, 2]; - return [4 /*yield*/, _super.prototype.perform.call(this, "getBlock", { blockTag: "latest" })]; - case 1: - block = _a.sent(); - return [2 /*return*/, block.number]; - case 2: return [2 /*return*/, _super.prototype.perform.call(this, method, params)]; - } - }); - }); - }; - return CloudflareProvider; -}(url_json_rpc_provider_1.UrlJsonRpcProvider)); -exports.CloudflareProvider = CloudflareProvider; -//# sourceMappingURL=cloudflare-provider.js.map - -/***/ }), - -/***/ 54814: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -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 })); -exports.EtherscanProvider = void 0; -var bytes_1 = __nccwpck_require__(42006); -var properties_1 = __nccwpck_require__(61338); -var transactions_1 = __nccwpck_require__(62394); -var web_1 = __nccwpck_require__(72239); -var formatter_1 = __nccwpck_require__(24293); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -var base_provider_1 = __nccwpck_require__(8090); -// The transaction has already been sanitized by the calls in Provider -function getTransactionPostData(transaction) { - var result = {}; - for (var key in transaction) { - if (transaction[key] == null) { - continue; - } - var value = transaction[key]; - if (key === "type" && value === 0) { - continue; - } - // Quantity-types require no leading zero, unless 0 - if ({ type: true, gasLimit: true, gasPrice: true, maxFeePerGs: true, maxPriorityFeePerGas: true, nonce: true, value: true }[key]) { - value = (0, bytes_1.hexValue)((0, bytes_1.hexlify)(value)); - } - else if (key === "accessList") { - value = "[" + (0, transactions_1.accessListify)(value).map(function (set) { - return "{address:\"" + set.address + "\",storageKeys:[\"" + set.storageKeys.join('","') + "\"]}"; - }).join(",") + "]"; - } - else { - value = (0, bytes_1.hexlify)(value); - } - result[key] = value; - } - return result; -} -function getResult(result) { - // getLogs, getHistory have weird success responses - if (result.status == 0 && (result.message === "No records found" || result.message === "No transactions found")) { - return result.result; - } - if (result.status != 1 || typeof (result.message) !== "string" || !result.message.match(/^OK/)) { - var error = new Error("invalid response"); - error.result = JSON.stringify(result); - if ((result.result || "").toLowerCase().indexOf("rate limit") >= 0) { - error.throttleRetry = true; - } - throw error; - } - return result.result; -} -function getJsonResult(result) { - // This response indicates we are being throttled - if (result && result.status == 0 && result.message == "NOTOK" && (result.result || "").toLowerCase().indexOf("rate limit") >= 0) { - var error = new Error("throttled response"); - error.result = JSON.stringify(result); - error.throttleRetry = true; - throw error; - } - if (result.jsonrpc != "2.0") { - // @TODO: not any - var error = new Error("invalid response"); - error.result = JSON.stringify(result); - throw error; - } - if (result.error) { - // @TODO: not any - var error = new Error(result.error.message || "unknown error"); - if (result.error.code) { - error.code = result.error.code; - } - if (result.error.data) { - error.data = result.error.data; - } - throw error; - } - return result.result; -} -// The blockTag was normalized as a string by the Provider pre-perform operations -function checkLogTag(blockTag) { - if (blockTag === "pending") { - throw new Error("pending not supported"); - } - if (blockTag === "latest") { - return blockTag; - } - return parseInt(blockTag.substring(2), 16); -} -function checkError(method, error, transaction) { - // Undo the "convenience" some nodes are attempting to prevent backwards - // incompatibility; maybe for v6 consider forwarding reverts as errors - if (method === "call" && error.code === logger_1.Logger.errors.SERVER_ERROR) { - var e = error.error; - // Etherscan keeps changing their string - if (e && (e.message.match(/reverted/i) || e.message.match(/VM execution error/i))) { - // Etherscan prefixes the data like "Reverted 0x1234" - var data = e.data; - if (data) { - data = "0x" + data.replace(/^.*0x/i, ""); - } - if ((0, bytes_1.isHexString)(data)) { - return data; - } - logger.throwError("missing revert data in call exception", logger_1.Logger.errors.CALL_EXCEPTION, { - error: error, - data: "0x" - }); - } - } - // Get the message from any nested error structure - var message = error.message; - if (error.code === logger_1.Logger.errors.SERVER_ERROR) { - if (error.error && typeof (error.error.message) === "string") { - message = error.error.message; - } - else if (typeof (error.body) === "string") { - message = error.body; - } - else if (typeof (error.responseText) === "string") { - message = error.responseText; - } - } - message = (message || "").toLowerCase(); - // "Insufficient funds. The account you tried to send transaction from does not have enough funds. Required 21464000000000 and got: 0" - if (message.match(/insufficient funds/)) { - logger.throwError("insufficient funds for intrinsic transaction cost", logger_1.Logger.errors.INSUFFICIENT_FUNDS, { - error: error, - method: method, - transaction: transaction - }); - } - // "Transaction with the same hash was already imported." - if (message.match(/same hash was already imported|transaction nonce is too low|nonce too low/)) { - logger.throwError("nonce has already been used", logger_1.Logger.errors.NONCE_EXPIRED, { - error: error, - method: method, - transaction: transaction - }); - } - // "Transaction gas price is too low. There is another transaction with same nonce in the queue. Try increasing the gas price or incrementing the nonce." - if (message.match(/another transaction with same nonce/)) { - logger.throwError("replacement fee too low", logger_1.Logger.errors.REPLACEMENT_UNDERPRICED, { - error: error, - method: method, - transaction: transaction - }); - } - if (message.match(/execution failed due to an exception|execution reverted/)) { - logger.throwError("cannot estimate gas; transaction may fail or may require manual gas limit", logger_1.Logger.errors.UNPREDICTABLE_GAS_LIMIT, { - error: error, - method: method, - transaction: transaction - }); - } - throw error; -} -var EtherscanProvider = /** @class */ (function (_super) { - __extends(EtherscanProvider, _super); - function EtherscanProvider(network, apiKey) { - var _this = _super.call(this, network) || this; - (0, properties_1.defineReadOnly)(_this, "baseUrl", _this.getBaseUrl()); - (0, properties_1.defineReadOnly)(_this, "apiKey", apiKey || null); - return _this; - } - EtherscanProvider.prototype.getBaseUrl = function () { - switch (this.network ? this.network.name : "invalid") { - case "homestead": - return "https:/\/api.etherscan.io"; - case "goerli": - return "https:/\/api-goerli.etherscan.io"; - case "sepolia": - return "https:/\/api-sepolia.etherscan.io"; - case "matic": - return "https:/\/api.polygonscan.com"; - case "maticmum": - return "https:/\/api-testnet.polygonscan.com"; - case "arbitrum": - return "https:/\/api.arbiscan.io"; - case "arbitrum-goerli": - return "https:/\/api-goerli.arbiscan.io"; - case "optimism": - return "https:/\/api-optimistic.etherscan.io"; - case "optimism-goerli": - return "https:/\/api-goerli-optimistic.etherscan.io"; - default: - } - return logger.throwArgumentError("unsupported network", "network", this.network.name); - }; - EtherscanProvider.prototype.getUrl = function (module, params) { - var query = Object.keys(params).reduce(function (accum, key) { - var value = params[key]; - if (value != null) { - accum += "&" + key + "=" + value; - } - return accum; - }, ""); - var apiKey = ((this.apiKey) ? "&apikey=" + this.apiKey : ""); - return this.baseUrl + "/api?module=" + module + query + apiKey; - }; - EtherscanProvider.prototype.getPostUrl = function () { - return this.baseUrl + "/api"; - }; - EtherscanProvider.prototype.getPostData = function (module, params) { - params.module = module; - params.apikey = this.apiKey; - return params; - }; - EtherscanProvider.prototype.fetch = function (module, params, post) { - return __awaiter(this, void 0, void 0, function () { - var url, payload, procFunc, connection, payloadStr, result; - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - url = (post ? this.getPostUrl() : this.getUrl(module, params)); - payload = (post ? this.getPostData(module, params) : null); - procFunc = (module === "proxy") ? getJsonResult : getResult; - this.emit("debug", { - action: "request", - request: url, - provider: this - }); - connection = { - url: url, - throttleSlotInterval: 1000, - throttleCallback: function (attempt, url) { - if (_this.isCommunityResource()) { - (0, formatter_1.showThrottleMessage)(); - } - return Promise.resolve(true); - } - }; - payloadStr = null; - if (payload) { - connection.headers = { "content-type": "application/x-www-form-urlencoded; charset=UTF-8" }; - payloadStr = Object.keys(payload).map(function (key) { - return key + "=" + payload[key]; - }).join("&"); - } - return [4 /*yield*/, (0, web_1.fetchJson)(connection, payloadStr, procFunc || getJsonResult)]; - case 1: - result = _a.sent(); - this.emit("debug", { - action: "response", - request: url, - response: (0, properties_1.deepCopy)(result), - provider: this - }); - return [2 /*return*/, result]; - } - }); - }); - }; - EtherscanProvider.prototype.detectNetwork = function () { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, this.network]; - }); - }); - }; - EtherscanProvider.prototype.perform = function (method, params) { - return __awaiter(this, void 0, void 0, function () { - var _a, postData, error_1, postData, error_2, args, topic0, logs, blocks, i, log, block, _b; - return __generator(this, function (_c) { - switch (_c.label) { - case 0: - _a = method; - switch (_a) { - case "getBlockNumber": return [3 /*break*/, 1]; - case "getGasPrice": return [3 /*break*/, 2]; - case "getBalance": return [3 /*break*/, 3]; - case "getTransactionCount": return [3 /*break*/, 4]; - case "getCode": return [3 /*break*/, 5]; - case "getStorageAt": return [3 /*break*/, 6]; - case "sendTransaction": return [3 /*break*/, 7]; - case "getBlock": return [3 /*break*/, 8]; - case "getTransaction": return [3 /*break*/, 9]; - case "getTransactionReceipt": return [3 /*break*/, 10]; - case "call": return [3 /*break*/, 11]; - case "estimateGas": return [3 /*break*/, 15]; - case "getLogs": return [3 /*break*/, 19]; - case "getEtherPrice": return [3 /*break*/, 26]; - } - return [3 /*break*/, 28]; - case 1: return [2 /*return*/, this.fetch("proxy", { action: "eth_blockNumber" })]; - case 2: return [2 /*return*/, this.fetch("proxy", { action: "eth_gasPrice" })]; - case 3: - // Returns base-10 result - return [2 /*return*/, this.fetch("account", { - action: "balance", - address: params.address, - tag: params.blockTag - })]; - case 4: return [2 /*return*/, this.fetch("proxy", { - action: "eth_getTransactionCount", - address: params.address, - tag: params.blockTag - })]; - case 5: return [2 /*return*/, this.fetch("proxy", { - action: "eth_getCode", - address: params.address, - tag: params.blockTag - })]; - case 6: return [2 /*return*/, this.fetch("proxy", { - action: "eth_getStorageAt", - address: params.address, - position: params.position, - tag: params.blockTag - })]; - case 7: return [2 /*return*/, this.fetch("proxy", { - action: "eth_sendRawTransaction", - hex: params.signedTransaction - }, true).catch(function (error) { - return checkError("sendTransaction", error, params.signedTransaction); - })]; - case 8: - if (params.blockTag) { - return [2 /*return*/, this.fetch("proxy", { - action: "eth_getBlockByNumber", - tag: params.blockTag, - boolean: (params.includeTransactions ? "true" : "false") - })]; - } - throw new Error("getBlock by blockHash not implemented"); - case 9: return [2 /*return*/, this.fetch("proxy", { - action: "eth_getTransactionByHash", - txhash: params.transactionHash - })]; - case 10: return [2 /*return*/, this.fetch("proxy", { - action: "eth_getTransactionReceipt", - txhash: params.transactionHash - })]; - case 11: - if (params.blockTag !== "latest") { - throw new Error("EtherscanProvider does not support blockTag for call"); - } - postData = getTransactionPostData(params.transaction); - postData.module = "proxy"; - postData.action = "eth_call"; - _c.label = 12; - case 12: - _c.trys.push([12, 14, , 15]); - return [4 /*yield*/, this.fetch("proxy", postData, true)]; - case 13: return [2 /*return*/, _c.sent()]; - case 14: - error_1 = _c.sent(); - return [2 /*return*/, checkError("call", error_1, params.transaction)]; - case 15: - postData = getTransactionPostData(params.transaction); - postData.module = "proxy"; - postData.action = "eth_estimateGas"; - _c.label = 16; - case 16: - _c.trys.push([16, 18, , 19]); - return [4 /*yield*/, this.fetch("proxy", postData, true)]; - case 17: return [2 /*return*/, _c.sent()]; - case 18: - error_2 = _c.sent(); - return [2 /*return*/, checkError("estimateGas", error_2, params.transaction)]; - case 19: - args = { action: "getLogs" }; - if (params.filter.fromBlock) { - args.fromBlock = checkLogTag(params.filter.fromBlock); - } - if (params.filter.toBlock) { - args.toBlock = checkLogTag(params.filter.toBlock); - } - if (params.filter.address) { - args.address = params.filter.address; - } - // @TODO: We can handle slightly more complicated logs using the logs API - if (params.filter.topics && params.filter.topics.length > 0) { - if (params.filter.topics.length > 1) { - logger.throwError("unsupported topic count", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { topics: params.filter.topics }); - } - if (params.filter.topics.length === 1) { - topic0 = params.filter.topics[0]; - if (typeof (topic0) !== "string" || topic0.length !== 66) { - logger.throwError("unsupported topic format", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { topic0: topic0 }); - } - args.topic0 = topic0; - } - } - return [4 /*yield*/, this.fetch("logs", args)]; - case 20: - logs = _c.sent(); - blocks = {}; - i = 0; - _c.label = 21; - case 21: - if (!(i < logs.length)) return [3 /*break*/, 25]; - log = logs[i]; - if (log.blockHash != null) { - return [3 /*break*/, 24]; - } - if (!(blocks[log.blockNumber] == null)) return [3 /*break*/, 23]; - return [4 /*yield*/, this.getBlock(log.blockNumber)]; - case 22: - block = _c.sent(); - if (block) { - blocks[log.blockNumber] = block.hash; - } - _c.label = 23; - case 23: - log.blockHash = blocks[log.blockNumber]; - _c.label = 24; - case 24: - i++; - return [3 /*break*/, 21]; - case 25: return [2 /*return*/, logs]; - case 26: - if (this.network.name !== "homestead") { - return [2 /*return*/, 0.0]; - } - _b = parseFloat; - return [4 /*yield*/, this.fetch("stats", { action: "ethprice" })]; - case 27: return [2 /*return*/, _b.apply(void 0, [(_c.sent()).ethusd])]; - case 28: return [3 /*break*/, 29]; - case 29: return [2 /*return*/, _super.prototype.perform.call(this, method, params)]; - } - }); - }); - }; - // Note: The `page` page parameter only allows pagination within the - // 10,000 window available without a page and offset parameter - // Error: Result window is too large, PageNo x Offset size must - // be less than or equal to 10000 - EtherscanProvider.prototype.getHistory = function (addressOrName, startBlock, endBlock) { - return __awaiter(this, void 0, void 0, function () { - var params, result; - var _a; - var _this = this; - return __generator(this, function (_b) { - switch (_b.label) { - case 0: - _a = { - action: "txlist" - }; - return [4 /*yield*/, this.resolveName(addressOrName)]; - case 1: - params = (_a.address = (_b.sent()), - _a.startblock = ((startBlock == null) ? 0 : startBlock), - _a.endblock = ((endBlock == null) ? 99999999 : endBlock), - _a.sort = "asc", - _a); - return [4 /*yield*/, this.fetch("account", params)]; - case 2: - result = _b.sent(); - return [2 /*return*/, result.map(function (tx) { - ["contractAddress", "to"].forEach(function (key) { - if (tx[key] == "") { - delete tx[key]; - } - }); - if (tx.creates == null && tx.contractAddress != null) { - tx.creates = tx.contractAddress; - } - var item = _this.formatter.transactionResponse(tx); - if (tx.timeStamp) { - item.timestamp = parseInt(tx.timeStamp); - } - return item; - })]; - } - }); - }); - }; - EtherscanProvider.prototype.isCommunityResource = function () { - return (this.apiKey == null); - }; - return EtherscanProvider; -}(base_provider_1.BaseProvider)); -exports.EtherscanProvider = EtherscanProvider; -//# sourceMappingURL=etherscan-provider.js.map - -/***/ }), - -/***/ 46459: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -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 })); -exports.FallbackProvider = void 0; -var abstract_provider_1 = __nccwpck_require__(12825); -var bignumber_1 = __nccwpck_require__(18202); -var bytes_1 = __nccwpck_require__(42006); -var properties_1 = __nccwpck_require__(61338); -var random_1 = __nccwpck_require__(53728); -var web_1 = __nccwpck_require__(72239); -var base_provider_1 = __nccwpck_require__(8090); -var formatter_1 = __nccwpck_require__(24293); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -function now() { return (new Date()).getTime(); } -// Returns to network as long as all agree, or null if any is null. -// Throws an error if any two networks do not match. -function checkNetworks(networks) { - var result = null; - for (var i = 0; i < networks.length; i++) { - var network = networks[i]; - // Null! We do not know our network; bail. - if (network == null) { - return null; - } - if (result) { - // Make sure the network matches the previous networks - if (!(result.name === network.name && result.chainId === network.chainId && - ((result.ensAddress === network.ensAddress) || (result.ensAddress == null && network.ensAddress == null)))) { - logger.throwArgumentError("provider mismatch", "networks", networks); - } - } - else { - result = network; - } - } - return result; -} -function median(values, maxDelta) { - values = values.slice().sort(); - var middle = Math.floor(values.length / 2); - // Odd length; take the middle - if (values.length % 2) { - return values[middle]; - } - // Even length; take the average of the two middle - var a = values[middle - 1], b = values[middle]; - if (maxDelta != null && Math.abs(a - b) > maxDelta) { - return null; - } - return (a + b) / 2; -} -function serialize(value) { - if (value === null) { - return "null"; - } - else if (typeof (value) === "number" || typeof (value) === "boolean") { - return JSON.stringify(value); - } - else if (typeof (value) === "string") { - return value; - } - else if (bignumber_1.BigNumber.isBigNumber(value)) { - return value.toString(); - } - else if (Array.isArray(value)) { - return JSON.stringify(value.map(function (i) { return serialize(i); })); - } - else if (typeof (value) === "object") { - var keys = Object.keys(value); - keys.sort(); - return "{" + keys.map(function (key) { - var v = value[key]; - if (typeof (v) === "function") { - v = "[function]"; - } - else { - v = serialize(v); - } - return JSON.stringify(key) + ":" + v; - }).join(",") + "}"; - } - throw new Error("unknown value type: " + typeof (value)); -} -// Next request ID to use for emitting debug info -var nextRid = 1; -; -function stall(duration) { - var cancel = null; - var timer = null; - var promise = (new Promise(function (resolve) { - cancel = function () { - if (timer) { - clearTimeout(timer); - timer = null; - } - resolve(); - }; - timer = setTimeout(cancel, duration); - })); - var wait = function (func) { - promise = promise.then(func); - return promise; - }; - function getPromise() { - return promise; - } - return { cancel: cancel, getPromise: getPromise, wait: wait }; -} -var ForwardErrors = [ - logger_1.Logger.errors.CALL_EXCEPTION, - logger_1.Logger.errors.INSUFFICIENT_FUNDS, - logger_1.Logger.errors.NONCE_EXPIRED, - logger_1.Logger.errors.REPLACEMENT_UNDERPRICED, - logger_1.Logger.errors.UNPREDICTABLE_GAS_LIMIT -]; -var ForwardProperties = [ - "address", - "args", - "errorArgs", - "errorSignature", - "method", - "transaction", -]; -; -function exposeDebugConfig(config, now) { - var result = { - weight: config.weight - }; - Object.defineProperty(result, "provider", { get: function () { return config.provider; } }); - if (config.start) { - result.start = config.start; - } - if (now) { - result.duration = (now - config.start); - } - if (config.done) { - if (config.error) { - result.error = config.error; - } - else { - result.result = config.result || null; - } - } - return result; -} -function normalizedTally(normalize, quorum) { - return function (configs) { - // Count the votes for each result - var tally = {}; - configs.forEach(function (c) { - var value = normalize(c.result); - if (!tally[value]) { - tally[value] = { count: 0, result: c.result }; - } - tally[value].count++; - }); - // Check for a quorum on any given result - var keys = Object.keys(tally); - for (var i = 0; i < keys.length; i++) { - var check = tally[keys[i]]; - if (check.count >= quorum) { - return check.result; - } - } - // No quroum - return undefined; - }; -} -function getProcessFunc(provider, method, params) { - var normalize = serialize; - switch (method) { - case "getBlockNumber": - // Return the median value, unless there is (median + 1) is also - // present, in which case that is probably true and the median - // is going to be stale soon. In the event of a malicious node, - // the lie will be true soon enough. - return function (configs) { - var values = configs.map(function (c) { return c.result; }); - // Get the median block number - var blockNumber = median(configs.map(function (c) { return c.result; }), 2); - if (blockNumber == null) { - return undefined; - } - blockNumber = Math.ceil(blockNumber); - // If the next block height is present, its prolly safe to use - if (values.indexOf(blockNumber + 1) >= 0) { - blockNumber++; - } - // Don't ever roll back the blockNumber - if (blockNumber >= provider._highestBlockNumber) { - provider._highestBlockNumber = blockNumber; - } - return provider._highestBlockNumber; - }; - case "getGasPrice": - // Return the middle (round index up) value, similar to median - // but do not average even entries and choose the higher. - // Malicious actors must compromise 50% of the nodes to lie. - return function (configs) { - var values = configs.map(function (c) { return c.result; }); - values.sort(); - return values[Math.floor(values.length / 2)]; - }; - case "getEtherPrice": - // Returns the median price. Malicious actors must compromise at - // least 50% of the nodes to lie (in a meaningful way). - return function (configs) { - return median(configs.map(function (c) { return c.result; })); - }; - // No additional normalizing required; serialize is enough - case "getBalance": - case "getTransactionCount": - case "getCode": - case "getStorageAt": - case "call": - case "estimateGas": - case "getLogs": - break; - // We drop the confirmations from transactions as it is approximate - case "getTransaction": - case "getTransactionReceipt": - normalize = function (tx) { - if (tx == null) { - return null; - } - tx = (0, properties_1.shallowCopy)(tx); - tx.confirmations = -1; - return serialize(tx); - }; - break; - // We drop the confirmations from transactions as it is approximate - case "getBlock": - // We drop the confirmations from transactions as it is approximate - if (params.includeTransactions) { - normalize = function (block) { - if (block == null) { - return null; - } - block = (0, properties_1.shallowCopy)(block); - block.transactions = block.transactions.map(function (tx) { - tx = (0, properties_1.shallowCopy)(tx); - tx.confirmations = -1; - return tx; - }); - return serialize(block); - }; - } - else { - normalize = function (block) { - if (block == null) { - return null; - } - return serialize(block); - }; - } - break; - default: - throw new Error("unknown method: " + method); - } - // Return the result if and only if the expected quorum is - // satisfied and agreed upon for the final result. - return normalizedTally(normalize, provider.quorum); -} -// If we are doing a blockTag query, we need to make sure the backend is -// caught up to the FallbackProvider, before sending a request to it. -function waitForSync(config, blockNumber) { - return __awaiter(this, void 0, void 0, function () { - var provider; - return __generator(this, function (_a) { - provider = (config.provider); - if ((provider.blockNumber != null && provider.blockNumber >= blockNumber) || blockNumber === -1) { - return [2 /*return*/, provider]; - } - return [2 /*return*/, (0, web_1.poll)(function () { - return new Promise(function (resolve, reject) { - setTimeout(function () { - // We are synced - if (provider.blockNumber >= blockNumber) { - return resolve(provider); - } - // We're done; just quit - if (config.cancelled) { - return resolve(null); - } - // Try again, next block - return resolve(undefined); - }, 0); - }); - }, { oncePoll: provider })]; - }); - }); -} -function getRunner(config, currentBlockNumber, method, params) { - return __awaiter(this, void 0, void 0, function () { - var provider, _a, filter; - return __generator(this, function (_b) { - switch (_b.label) { - case 0: - provider = config.provider; - _a = method; - switch (_a) { - case "getBlockNumber": return [3 /*break*/, 1]; - case "getGasPrice": return [3 /*break*/, 1]; - case "getEtherPrice": return [3 /*break*/, 2]; - case "getBalance": return [3 /*break*/, 3]; - case "getTransactionCount": return [3 /*break*/, 3]; - case "getCode": return [3 /*break*/, 3]; - case "getStorageAt": return [3 /*break*/, 6]; - case "getBlock": return [3 /*break*/, 9]; - case "call": return [3 /*break*/, 12]; - case "estimateGas": return [3 /*break*/, 12]; - case "getTransaction": return [3 /*break*/, 15]; - case "getTransactionReceipt": return [3 /*break*/, 15]; - case "getLogs": return [3 /*break*/, 16]; - } - return [3 /*break*/, 19]; - case 1: return [2 /*return*/, provider[method]()]; - case 2: - if (provider.getEtherPrice) { - return [2 /*return*/, provider.getEtherPrice()]; - } - return [3 /*break*/, 19]; - case 3: - if (!(params.blockTag && (0, bytes_1.isHexString)(params.blockTag))) return [3 /*break*/, 5]; - return [4 /*yield*/, waitForSync(config, currentBlockNumber)]; - case 4: - provider = _b.sent(); - _b.label = 5; - case 5: return [2 /*return*/, provider[method](params.address, params.blockTag || "latest")]; - case 6: - if (!(params.blockTag && (0, bytes_1.isHexString)(params.blockTag))) return [3 /*break*/, 8]; - return [4 /*yield*/, waitForSync(config, currentBlockNumber)]; - case 7: - provider = _b.sent(); - _b.label = 8; - case 8: return [2 /*return*/, provider.getStorageAt(params.address, params.position, params.blockTag || "latest")]; - case 9: - if (!(params.blockTag && (0, bytes_1.isHexString)(params.blockTag))) return [3 /*break*/, 11]; - return [4 /*yield*/, waitForSync(config, currentBlockNumber)]; - case 10: - provider = _b.sent(); - _b.label = 11; - case 11: return [2 /*return*/, provider[(params.includeTransactions ? "getBlockWithTransactions" : "getBlock")](params.blockTag || params.blockHash)]; - case 12: - if (!(params.blockTag && (0, bytes_1.isHexString)(params.blockTag))) return [3 /*break*/, 14]; - return [4 /*yield*/, waitForSync(config, currentBlockNumber)]; - case 13: - provider = _b.sent(); - _b.label = 14; - case 14: - if (method === "call" && params.blockTag) { - return [2 /*return*/, provider[method](params.transaction, params.blockTag)]; - } - return [2 /*return*/, provider[method](params.transaction)]; - case 15: return [2 /*return*/, provider[method](params.transactionHash)]; - case 16: - filter = params.filter; - if (!((filter.fromBlock && (0, bytes_1.isHexString)(filter.fromBlock)) || (filter.toBlock && (0, bytes_1.isHexString)(filter.toBlock)))) return [3 /*break*/, 18]; - return [4 /*yield*/, waitForSync(config, currentBlockNumber)]; - case 17: - provider = _b.sent(); - _b.label = 18; - case 18: return [2 /*return*/, provider.getLogs(filter)]; - case 19: return [2 /*return*/, logger.throwError("unknown method error", logger_1.Logger.errors.UNKNOWN_ERROR, { - method: method, - params: params - })]; - } - }); - }); -} -var FallbackProvider = /** @class */ (function (_super) { - __extends(FallbackProvider, _super); - function FallbackProvider(providers, quorum) { - var _this = this; - if (providers.length === 0) { - logger.throwArgumentError("missing providers", "providers", providers); - } - var providerConfigs = providers.map(function (configOrProvider, index) { - if (abstract_provider_1.Provider.isProvider(configOrProvider)) { - var stallTimeout = (0, formatter_1.isCommunityResource)(configOrProvider) ? 2000 : 750; - var priority = 1; - return Object.freeze({ provider: configOrProvider, weight: 1, stallTimeout: stallTimeout, priority: priority }); - } - var config = (0, properties_1.shallowCopy)(configOrProvider); - if (config.priority == null) { - config.priority = 1; - } - if (config.stallTimeout == null) { - config.stallTimeout = (0, formatter_1.isCommunityResource)(configOrProvider) ? 2000 : 750; - } - if (config.weight == null) { - config.weight = 1; - } - var weight = config.weight; - if (weight % 1 || weight > 512 || weight < 1) { - logger.throwArgumentError("invalid weight; must be integer in [1, 512]", "providers[" + index + "].weight", weight); - } - return Object.freeze(config); - }); - var total = providerConfigs.reduce(function (accum, c) { return (accum + c.weight); }, 0); - if (quorum == null) { - quorum = total / 2; - } - else if (quorum > total) { - logger.throwArgumentError("quorum will always fail; larger than total weight", "quorum", quorum); - } - // Are all providers' networks are known - var networkOrReady = checkNetworks(providerConfigs.map(function (c) { return (c.provider).network; })); - // Not all networks are known; we must stall - if (networkOrReady == null) { - networkOrReady = new Promise(function (resolve, reject) { - setTimeout(function () { - _this.detectNetwork().then(resolve, reject); - }, 0); - }); - } - _this = _super.call(this, networkOrReady) || this; - // Preserve a copy, so we do not get mutated - (0, properties_1.defineReadOnly)(_this, "providerConfigs", Object.freeze(providerConfigs)); - (0, properties_1.defineReadOnly)(_this, "quorum", quorum); - _this._highestBlockNumber = -1; - return _this; - } - FallbackProvider.prototype.detectNetwork = function () { - return __awaiter(this, void 0, void 0, function () { - var networks; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, Promise.all(this.providerConfigs.map(function (c) { return c.provider.getNetwork(); }))]; - case 1: - networks = _a.sent(); - return [2 /*return*/, checkNetworks(networks)]; - } - }); - }); - }; - FallbackProvider.prototype.perform = function (method, params) { - return __awaiter(this, void 0, void 0, function () { - var results, i_1, result, processFunc, configs, currentBlockNumber, i, first, _loop_1, this_1, state_1; - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (!(method === "sendTransaction")) return [3 /*break*/, 2]; - return [4 /*yield*/, Promise.all(this.providerConfigs.map(function (c) { - return c.provider.sendTransaction(params.signedTransaction).then(function (result) { - return result.hash; - }, function (error) { - return error; - }); - }))]; - case 1: - results = _a.sent(); - // Any success is good enough (other errors are likely "already seen" errors - for (i_1 = 0; i_1 < results.length; i_1++) { - result = results[i_1]; - if (typeof (result) === "string") { - return [2 /*return*/, result]; - } - } - // They were all an error; pick the first error - throw results[0]; - case 2: - if (!(this._highestBlockNumber === -1 && method !== "getBlockNumber")) return [3 /*break*/, 4]; - return [4 /*yield*/, this.getBlockNumber()]; - case 3: - _a.sent(); - _a.label = 4; - case 4: - processFunc = getProcessFunc(this, method, params); - configs = (0, random_1.shuffled)(this.providerConfigs.map(properties_1.shallowCopy)); - configs.sort(function (a, b) { return (a.priority - b.priority); }); - currentBlockNumber = this._highestBlockNumber; - i = 0; - first = true; - _loop_1 = function () { - var t0, inflightWeight, _loop_2, waiting, results, result, errors; - return __generator(this, function (_b) { - switch (_b.label) { - case 0: - t0 = now(); - inflightWeight = configs.filter(function (c) { return (c.runner && ((t0 - c.start) < c.stallTimeout)); }) - .reduce(function (accum, c) { return (accum + c.weight); }, 0); - _loop_2 = function () { - var config = configs[i++]; - var rid = nextRid++; - config.start = now(); - config.staller = stall(config.stallTimeout); - config.staller.wait(function () { config.staller = null; }); - config.runner = getRunner(config, currentBlockNumber, method, params).then(function (result) { - config.done = true; - config.result = result; - if (_this.listenerCount("debug")) { - _this.emit("debug", { - action: "request", - rid: rid, - backend: exposeDebugConfig(config, now()), - request: { method: method, params: (0, properties_1.deepCopy)(params) }, - provider: _this - }); - } - }, function (error) { - config.done = true; - config.error = error; - if (_this.listenerCount("debug")) { - _this.emit("debug", { - action: "request", - rid: rid, - backend: exposeDebugConfig(config, now()), - request: { method: method, params: (0, properties_1.deepCopy)(params) }, - provider: _this - }); - } - }); - if (this_1.listenerCount("debug")) { - this_1.emit("debug", { - action: "request", - rid: rid, - backend: exposeDebugConfig(config, null), - request: { method: method, params: (0, properties_1.deepCopy)(params) }, - provider: this_1 - }); - } - inflightWeight += config.weight; - }; - // Start running enough to meet quorum - while (inflightWeight < this_1.quorum && i < configs.length) { - _loop_2(); - } - waiting = []; - configs.forEach(function (c) { - if (c.done || !c.runner) { - return; - } - waiting.push(c.runner); - if (c.staller) { - waiting.push(c.staller.getPromise()); - } - }); - if (!waiting.length) return [3 /*break*/, 2]; - return [4 /*yield*/, Promise.race(waiting)]; - case 1: - _b.sent(); - _b.label = 2; - case 2: - results = configs.filter(function (c) { return (c.done && c.error == null); }); - if (!(results.length >= this_1.quorum)) return [3 /*break*/, 5]; - result = processFunc(results); - if (result !== undefined) { - // Shut down any stallers - configs.forEach(function (c) { - if (c.staller) { - c.staller.cancel(); - } - c.cancelled = true; - }); - return [2 /*return*/, { value: result }]; - } - if (!!first) return [3 /*break*/, 4]; - return [4 /*yield*/, stall(100).getPromise()]; - case 3: - _b.sent(); - _b.label = 4; - case 4: - first = false; - _b.label = 5; - case 5: - errors = configs.reduce(function (accum, c) { - if (!c.done || c.error == null) { - return accum; - } - var code = (c.error).code; - if (ForwardErrors.indexOf(code) >= 0) { - if (!accum[code]) { - accum[code] = { error: c.error, weight: 0 }; - } - accum[code].weight += c.weight; - } - return accum; - }, ({})); - Object.keys(errors).forEach(function (errorCode) { - var tally = errors[errorCode]; - if (tally.weight < _this.quorum) { - return; - } - // Shut down any stallers - configs.forEach(function (c) { - if (c.staller) { - c.staller.cancel(); - } - c.cancelled = true; - }); - var e = (tally.error); - var props = {}; - ForwardProperties.forEach(function (name) { - if (e[name] == null) { - return; - } - props[name] = e[name]; - }); - logger.throwError(e.reason || e.message, errorCode, props); - }); - // All configs have run to completion; we will never get more data - if (configs.filter(function (c) { return !c.done; }).length === 0) { - return [2 /*return*/, "break"]; - } - return [2 /*return*/]; - } - }); - }; - this_1 = this; - _a.label = 5; - case 5: - if (false) {} - return [5 /*yield**/, _loop_1()]; - case 6: - state_1 = _a.sent(); - if (typeof state_1 === "object") - return [2 /*return*/, state_1.value]; - if (state_1 === "break") - return [3 /*break*/, 7]; - return [3 /*break*/, 5]; - case 7: - // Shut down any stallers; shouldn't be any - configs.forEach(function (c) { - if (c.staller) { - c.staller.cancel(); - } - c.cancelled = true; - }); - return [2 /*return*/, logger.throwError("failed to meet quorum", logger_1.Logger.errors.SERVER_ERROR, { - method: method, - params: params, - //results: configs.map((c) => c.result), - //errors: configs.map((c) => c.error), - results: configs.map(function (c) { return exposeDebugConfig(c); }), - provider: this - })]; - } - }); - }); - }; - return FallbackProvider; -}(base_provider_1.BaseProvider)); -exports.FallbackProvider = FallbackProvider; -//# sourceMappingURL=fallback-provider.js.map - -/***/ }), - -/***/ 24293: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.showThrottleMessage = exports.isCommunityResource = exports.isCommunityResourcable = exports.Formatter = void 0; -var address_1 = __nccwpck_require__(75745); -var bignumber_1 = __nccwpck_require__(18202); -var bytes_1 = __nccwpck_require__(42006); -var constants_1 = __nccwpck_require__(99848); -var properties_1 = __nccwpck_require__(61338); -var transactions_1 = __nccwpck_require__(62394); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -var Formatter = /** @class */ (function () { - function Formatter() { - this.formats = this.getDefaultFormats(); - } - Formatter.prototype.getDefaultFormats = function () { - var _this = this; - var formats = ({}); - var address = this.address.bind(this); - var bigNumber = this.bigNumber.bind(this); - var blockTag = this.blockTag.bind(this); - var data = this.data.bind(this); - var hash = this.hash.bind(this); - var hex = this.hex.bind(this); - var number = this.number.bind(this); - var type = this.type.bind(this); - var strictData = function (v) { return _this.data(v, true); }; - formats.transaction = { - hash: hash, - type: type, - accessList: Formatter.allowNull(this.accessList.bind(this), null), - blockHash: Formatter.allowNull(hash, null), - blockNumber: Formatter.allowNull(number, null), - transactionIndex: Formatter.allowNull(number, null), - confirmations: Formatter.allowNull(number, null), - from: address, - // either (gasPrice) or (maxPriorityFeePerGas + maxFeePerGas) - // must be set - gasPrice: Formatter.allowNull(bigNumber), - maxPriorityFeePerGas: Formatter.allowNull(bigNumber), - maxFeePerGas: Formatter.allowNull(bigNumber), - gasLimit: bigNumber, - to: Formatter.allowNull(address, null), - value: bigNumber, - nonce: number, - data: data, - r: Formatter.allowNull(this.uint256), - s: Formatter.allowNull(this.uint256), - v: Formatter.allowNull(number), - creates: Formatter.allowNull(address, null), - raw: Formatter.allowNull(data), - }; - formats.transactionRequest = { - from: Formatter.allowNull(address), - nonce: Formatter.allowNull(number), - gasLimit: Formatter.allowNull(bigNumber), - gasPrice: Formatter.allowNull(bigNumber), - maxPriorityFeePerGas: Formatter.allowNull(bigNumber), - maxFeePerGas: Formatter.allowNull(bigNumber), - to: Formatter.allowNull(address), - value: Formatter.allowNull(bigNumber), - data: Formatter.allowNull(strictData), - type: Formatter.allowNull(number), - accessList: Formatter.allowNull(this.accessList.bind(this), null), - }; - formats.receiptLog = { - transactionIndex: number, - blockNumber: number, - transactionHash: hash, - address: address, - topics: Formatter.arrayOf(hash), - data: data, - logIndex: number, - blockHash: hash, - }; - formats.receipt = { - to: Formatter.allowNull(this.address, null), - from: Formatter.allowNull(this.address, null), - contractAddress: Formatter.allowNull(address, null), - transactionIndex: number, - // should be allowNull(hash), but broken-EIP-658 support is handled in receipt - root: Formatter.allowNull(hex), - gasUsed: bigNumber, - logsBloom: Formatter.allowNull(data), - blockHash: hash, - transactionHash: hash, - logs: Formatter.arrayOf(this.receiptLog.bind(this)), - blockNumber: number, - confirmations: Formatter.allowNull(number, null), - cumulativeGasUsed: bigNumber, - effectiveGasPrice: Formatter.allowNull(bigNumber), - status: Formatter.allowNull(number), - type: type - }; - formats.block = { - hash: Formatter.allowNull(hash), - parentHash: hash, - number: number, - timestamp: number, - nonce: Formatter.allowNull(hex), - difficulty: this.difficulty.bind(this), - gasLimit: bigNumber, - gasUsed: bigNumber, - miner: Formatter.allowNull(address), - extraData: data, - transactions: Formatter.allowNull(Formatter.arrayOf(hash)), - baseFeePerGas: Formatter.allowNull(bigNumber) - }; - formats.blockWithTransactions = (0, properties_1.shallowCopy)(formats.block); - formats.blockWithTransactions.transactions = Formatter.allowNull(Formatter.arrayOf(this.transactionResponse.bind(this))); - formats.filter = { - fromBlock: Formatter.allowNull(blockTag, undefined), - toBlock: Formatter.allowNull(blockTag, undefined), - blockHash: Formatter.allowNull(hash, undefined), - address: Formatter.allowNull(address, undefined), - topics: Formatter.allowNull(this.topics.bind(this), undefined), - }; - formats.filterLog = { - blockNumber: Formatter.allowNull(number), - blockHash: Formatter.allowNull(hash), - transactionIndex: number, - removed: Formatter.allowNull(this.boolean.bind(this)), - address: address, - data: Formatter.allowFalsish(data, "0x"), - topics: Formatter.arrayOf(hash), - transactionHash: hash, - logIndex: number, - }; - return formats; - }; - Formatter.prototype.accessList = function (accessList) { - return (0, transactions_1.accessListify)(accessList || []); - }; - // Requires a BigNumberish that is within the IEEE754 safe integer range; returns a number - // Strict! Used on input. - Formatter.prototype.number = function (number) { - if (number === "0x") { - return 0; - } - return bignumber_1.BigNumber.from(number).toNumber(); - }; - Formatter.prototype.type = function (number) { - if (number === "0x" || number == null) { - return 0; - } - return bignumber_1.BigNumber.from(number).toNumber(); - }; - // Strict! Used on input. - Formatter.prototype.bigNumber = function (value) { - return bignumber_1.BigNumber.from(value); - }; - // Requires a boolean, "true" or "false"; returns a boolean - Formatter.prototype.boolean = function (value) { - if (typeof (value) === "boolean") { - return value; - } - if (typeof (value) === "string") { - value = value.toLowerCase(); - if (value === "true") { - return true; - } - if (value === "false") { - return false; - } - } - throw new Error("invalid boolean - " + value); - }; - Formatter.prototype.hex = function (value, strict) { - if (typeof (value) === "string") { - if (!strict && value.substring(0, 2) !== "0x") { - value = "0x" + value; - } - if ((0, bytes_1.isHexString)(value)) { - return value.toLowerCase(); - } - } - return logger.throwArgumentError("invalid hash", "value", value); - }; - Formatter.prototype.data = function (value, strict) { - var result = this.hex(value, strict); - if ((result.length % 2) !== 0) { - throw new Error("invalid data; odd-length - " + value); - } - return result; - }; - // Requires an address - // Strict! Used on input. - Formatter.prototype.address = function (value) { - return (0, address_1.getAddress)(value); - }; - Formatter.prototype.callAddress = function (value) { - if (!(0, bytes_1.isHexString)(value, 32)) { - return null; - } - var address = (0, address_1.getAddress)((0, bytes_1.hexDataSlice)(value, 12)); - return (address === constants_1.AddressZero) ? null : address; - }; - Formatter.prototype.contractAddress = function (value) { - return (0, address_1.getContractAddress)(value); - }; - // Strict! Used on input. - Formatter.prototype.blockTag = function (blockTag) { - if (blockTag == null) { - return "latest"; - } - if (blockTag === "earliest") { - return "0x0"; - } - switch (blockTag) { - case "earliest": return "0x0"; - case "latest": - case "pending": - case "safe": - case "finalized": - return blockTag; - } - if (typeof (blockTag) === "number" || (0, bytes_1.isHexString)(blockTag)) { - return (0, bytes_1.hexValue)(blockTag); - } - throw new Error("invalid blockTag"); - }; - // Requires a hash, optionally requires 0x prefix; returns prefixed lowercase hash. - Formatter.prototype.hash = function (value, strict) { - var result = this.hex(value, strict); - if ((0, bytes_1.hexDataLength)(result) !== 32) { - return logger.throwArgumentError("invalid hash", "value", value); - } - return result; - }; - // Returns the difficulty as a number, or if too large (i.e. PoA network) null - Formatter.prototype.difficulty = function (value) { - if (value == null) { - return null; - } - var v = bignumber_1.BigNumber.from(value); - try { - return v.toNumber(); - } - catch (error) { } - return null; - }; - Formatter.prototype.uint256 = function (value) { - if (!(0, bytes_1.isHexString)(value)) { - throw new Error("invalid uint256"); - } - return (0, bytes_1.hexZeroPad)(value, 32); - }; - Formatter.prototype._block = function (value, format) { - if (value.author != null && value.miner == null) { - value.miner = value.author; - } - // The difficulty may need to come from _difficulty in recursed blocks - var difficulty = (value._difficulty != null) ? value._difficulty : value.difficulty; - var result = Formatter.check(format, value); - result._difficulty = ((difficulty == null) ? null : bignumber_1.BigNumber.from(difficulty)); - return result; - }; - Formatter.prototype.block = function (value) { - return this._block(value, this.formats.block); - }; - Formatter.prototype.blockWithTransactions = function (value) { - return this._block(value, this.formats.blockWithTransactions); - }; - // Strict! Used on input. - Formatter.prototype.transactionRequest = function (value) { - return Formatter.check(this.formats.transactionRequest, value); - }; - Formatter.prototype.transactionResponse = function (transaction) { - // Rename gas to gasLimit - if (transaction.gas != null && transaction.gasLimit == null) { - transaction.gasLimit = transaction.gas; - } - // Some clients (TestRPC) do strange things like return 0x0 for the - // 0 address; correct this to be a real address - if (transaction.to && bignumber_1.BigNumber.from(transaction.to).isZero()) { - transaction.to = "0x0000000000000000000000000000000000000000"; - } - // Rename input to data - if (transaction.input != null && transaction.data == null) { - transaction.data = transaction.input; - } - // If to and creates are empty, populate the creates from the transaction - if (transaction.to == null && transaction.creates == null) { - transaction.creates = this.contractAddress(transaction); - } - if ((transaction.type === 1 || transaction.type === 2) && transaction.accessList == null) { - transaction.accessList = []; - } - var result = Formatter.check(this.formats.transaction, transaction); - if (transaction.chainId != null) { - var chainId = transaction.chainId; - if ((0, bytes_1.isHexString)(chainId)) { - chainId = bignumber_1.BigNumber.from(chainId).toNumber(); - } - result.chainId = chainId; - } - else { - var chainId = transaction.networkId; - // geth-etc returns chainId - if (chainId == null && result.v == null) { - chainId = transaction.chainId; - } - if ((0, bytes_1.isHexString)(chainId)) { - chainId = bignumber_1.BigNumber.from(chainId).toNumber(); - } - if (typeof (chainId) !== "number" && result.v != null) { - chainId = (result.v - 35) / 2; - if (chainId < 0) { - chainId = 0; - } - chainId = parseInt(chainId); - } - if (typeof (chainId) !== "number") { - chainId = 0; - } - result.chainId = chainId; - } - // 0x0000... should actually be null - if (result.blockHash && result.blockHash.replace(/0/g, "") === "x") { - result.blockHash = null; - } - return result; - }; - Formatter.prototype.transaction = function (value) { - return (0, transactions_1.parse)(value); - }; - Formatter.prototype.receiptLog = function (value) { - return Formatter.check(this.formats.receiptLog, value); - }; - Formatter.prototype.receipt = function (value) { - var result = Formatter.check(this.formats.receipt, value); - // RSK incorrectly implemented EIP-658, so we munge things a bit here for it - if (result.root != null) { - if (result.root.length <= 4) { - // Could be 0x00, 0x0, 0x01 or 0x1 - var value_1 = bignumber_1.BigNumber.from(result.root).toNumber(); - if (value_1 === 0 || value_1 === 1) { - // Make sure if both are specified, they match - if (result.status != null && (result.status !== value_1)) { - logger.throwArgumentError("alt-root-status/status mismatch", "value", { root: result.root, status: result.status }); - } - result.status = value_1; - delete result.root; - } - else { - logger.throwArgumentError("invalid alt-root-status", "value.root", result.root); - } - } - else if (result.root.length !== 66) { - // Must be a valid bytes32 - logger.throwArgumentError("invalid root hash", "value.root", result.root); - } - } - if (result.status != null) { - result.byzantium = true; - } - return result; - }; - Formatter.prototype.topics = function (value) { - var _this = this; - if (Array.isArray(value)) { - return value.map(function (v) { return _this.topics(v); }); - } - else if (value != null) { - return this.hash(value, true); - } - return null; - }; - Formatter.prototype.filter = function (value) { - return Formatter.check(this.formats.filter, value); - }; - Formatter.prototype.filterLog = function (value) { - return Formatter.check(this.formats.filterLog, value); - }; - Formatter.check = function (format, object) { - var result = {}; - for (var key in format) { - try { - var value = format[key](object[key]); - if (value !== undefined) { - result[key] = value; - } - } - catch (error) { - error.checkKey = key; - error.checkValue = object[key]; - throw error; - } - } - return result; - }; - // if value is null-ish, nullValue is returned - Formatter.allowNull = function (format, nullValue) { - return (function (value) { - if (value == null) { - return nullValue; - } - return format(value); - }); - }; - // If value is false-ish, replaceValue is returned - Formatter.allowFalsish = function (format, replaceValue) { - return (function (value) { - if (!value) { - return replaceValue; - } - return format(value); - }); - }; - // Requires an Array satisfying check - Formatter.arrayOf = function (format) { - return (function (array) { - if (!Array.isArray(array)) { - throw new Error("not an array"); - } - var result = []; - array.forEach(function (value) { - result.push(format(value)); - }); - return result; - }); - }; - return Formatter; -}()); -exports.Formatter = Formatter; -function isCommunityResourcable(value) { - return (value && typeof (value.isCommunityResource) === "function"); -} -exports.isCommunityResourcable = isCommunityResourcable; -function isCommunityResource(value) { - return (isCommunityResourcable(value) && value.isCommunityResource()); -} -exports.isCommunityResource = isCommunityResource; -// Show the throttle message only once -var throttleMessage = false; -function showThrottleMessage() { - if (throttleMessage) { - return; - } - throttleMessage = true; - console.log("========= NOTICE ========="); - console.log("Request-Rate Exceeded (this message will not be repeated)"); - console.log(""); - console.log("The default API keys for each service are provided as a highly-throttled,"); - console.log("community resource for low-traffic projects and early prototyping."); - console.log(""); - console.log("While your application will continue to function, we highly recommended"); - console.log("signing up for your own API keys to improve performance, increase your"); - console.log("request rate/limit and enable other perks, such as metrics and advanced APIs."); - console.log(""); - console.log("For more details: https:/\/docs.ethers.io/api-keys/"); - console.log("=========================="); -} -exports.showThrottleMessage = showThrottleMessage; -//# sourceMappingURL=formatter.js.map - -/***/ }), - -/***/ 74983: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Formatter = exports.showThrottleMessage = exports.isCommunityResourcable = exports.isCommunityResource = exports.getNetwork = exports.getDefaultProvider = exports.JsonRpcSigner = exports.IpcProvider = exports.WebSocketProvider = exports.Web3Provider = exports.StaticJsonRpcProvider = exports.PocketProvider = exports.NodesmithProvider = exports.JsonRpcBatchProvider = exports.JsonRpcProvider = exports.InfuraWebSocketProvider = exports.InfuraProvider = exports.EtherscanProvider = exports.CloudflareProvider = exports.AnkrProvider = exports.AlchemyWebSocketProvider = exports.AlchemyProvider = exports.FallbackProvider = exports.UrlJsonRpcProvider = exports.Resolver = exports.BaseProvider = exports.Provider = void 0; -var abstract_provider_1 = __nccwpck_require__(12825); -Object.defineProperty(exports, "Provider", ({ enumerable: true, get: function () { return abstract_provider_1.Provider; } })); -var networks_1 = __nccwpck_require__(23044); -Object.defineProperty(exports, "getNetwork", ({ enumerable: true, get: function () { return networks_1.getNetwork; } })); -var base_provider_1 = __nccwpck_require__(8090); -Object.defineProperty(exports, "BaseProvider", ({ enumerable: true, get: function () { return base_provider_1.BaseProvider; } })); -Object.defineProperty(exports, "Resolver", ({ enumerable: true, get: function () { return base_provider_1.Resolver; } })); -var alchemy_provider_1 = __nccwpck_require__(45372); -Object.defineProperty(exports, "AlchemyProvider", ({ enumerable: true, get: function () { return alchemy_provider_1.AlchemyProvider; } })); -Object.defineProperty(exports, "AlchemyWebSocketProvider", ({ enumerable: true, get: function () { return alchemy_provider_1.AlchemyWebSocketProvider; } })); -var ankr_provider_1 = __nccwpck_require__(32319); -Object.defineProperty(exports, "AnkrProvider", ({ enumerable: true, get: function () { return ankr_provider_1.AnkrProvider; } })); -var cloudflare_provider_1 = __nccwpck_require__(83832); -Object.defineProperty(exports, "CloudflareProvider", ({ enumerable: true, get: function () { return cloudflare_provider_1.CloudflareProvider; } })); -var etherscan_provider_1 = __nccwpck_require__(54814); -Object.defineProperty(exports, "EtherscanProvider", ({ enumerable: true, get: function () { return etherscan_provider_1.EtherscanProvider; } })); -var fallback_provider_1 = __nccwpck_require__(46459); -Object.defineProperty(exports, "FallbackProvider", ({ enumerable: true, get: function () { return fallback_provider_1.FallbackProvider; } })); -var ipc_provider_1 = __nccwpck_require__(54443); -Object.defineProperty(exports, "IpcProvider", ({ enumerable: true, get: function () { return ipc_provider_1.IpcProvider; } })); -var infura_provider_1 = __nccwpck_require__(65936); -Object.defineProperty(exports, "InfuraProvider", ({ enumerable: true, get: function () { return infura_provider_1.InfuraProvider; } })); -Object.defineProperty(exports, "InfuraWebSocketProvider", ({ enumerable: true, get: function () { return infura_provider_1.InfuraWebSocketProvider; } })); -var json_rpc_provider_1 = __nccwpck_require__(30697); -Object.defineProperty(exports, "JsonRpcProvider", ({ enumerable: true, get: function () { return json_rpc_provider_1.JsonRpcProvider; } })); -Object.defineProperty(exports, "JsonRpcSigner", ({ enumerable: true, get: function () { return json_rpc_provider_1.JsonRpcSigner; } })); -var json_rpc_batch_provider_1 = __nccwpck_require__(15802); -Object.defineProperty(exports, "JsonRpcBatchProvider", ({ enumerable: true, get: function () { return json_rpc_batch_provider_1.JsonRpcBatchProvider; } })); -var nodesmith_provider_1 = __nccwpck_require__(62572); -Object.defineProperty(exports, "NodesmithProvider", ({ enumerable: true, get: function () { return nodesmith_provider_1.NodesmithProvider; } })); -var pocket_provider_1 = __nccwpck_require__(29663); -Object.defineProperty(exports, "PocketProvider", ({ enumerable: true, get: function () { return pocket_provider_1.PocketProvider; } })); -var url_json_rpc_provider_1 = __nccwpck_require__(56717); -Object.defineProperty(exports, "StaticJsonRpcProvider", ({ enumerable: true, get: function () { return url_json_rpc_provider_1.StaticJsonRpcProvider; } })); -Object.defineProperty(exports, "UrlJsonRpcProvider", ({ enumerable: true, get: function () { return url_json_rpc_provider_1.UrlJsonRpcProvider; } })); -var web3_provider_1 = __nccwpck_require__(9676); -Object.defineProperty(exports, "Web3Provider", ({ enumerable: true, get: function () { return web3_provider_1.Web3Provider; } })); -var websocket_provider_1 = __nccwpck_require__(35988); -Object.defineProperty(exports, "WebSocketProvider", ({ enumerable: true, get: function () { return websocket_provider_1.WebSocketProvider; } })); -var formatter_1 = __nccwpck_require__(24293); -Object.defineProperty(exports, "Formatter", ({ enumerable: true, get: function () { return formatter_1.Formatter; } })); -Object.defineProperty(exports, "isCommunityResourcable", ({ enumerable: true, get: function () { return formatter_1.isCommunityResourcable; } })); -Object.defineProperty(exports, "isCommunityResource", ({ enumerable: true, get: function () { return formatter_1.isCommunityResource; } })); -Object.defineProperty(exports, "showThrottleMessage", ({ enumerable: true, get: function () { return formatter_1.showThrottleMessage; } })); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -//////////////////////// -// Helper Functions -function getDefaultProvider(network, options) { - if (network == null) { - network = "homestead"; - } - // If passed a URL, figure out the right type of provider based on the scheme - if (typeof (network) === "string") { - // @TODO: Add support for IpcProvider; maybe if it ends in ".ipc"? - // Handle http and ws (and their secure variants) - var match = network.match(/^(ws|http)s?:/i); - if (match) { - switch (match[1].toLowerCase()) { - case "http": - case "https": - return new json_rpc_provider_1.JsonRpcProvider(network); - case "ws": - case "wss": - return new websocket_provider_1.WebSocketProvider(network); - default: - logger.throwArgumentError("unsupported URL scheme", "network", network); - } - } - } - var n = (0, networks_1.getNetwork)(network); - if (!n || !n._defaultProvider) { - logger.throwError("unsupported getDefaultProvider network", logger_1.Logger.errors.NETWORK_ERROR, { - operation: "getDefaultProvider", - network: network - }); - } - return n._defaultProvider({ - FallbackProvider: fallback_provider_1.FallbackProvider, - AlchemyProvider: alchemy_provider_1.AlchemyProvider, - AnkrProvider: ankr_provider_1.AnkrProvider, - CloudflareProvider: cloudflare_provider_1.CloudflareProvider, - EtherscanProvider: etherscan_provider_1.EtherscanProvider, - InfuraProvider: infura_provider_1.InfuraProvider, - JsonRpcProvider: json_rpc_provider_1.JsonRpcProvider, - NodesmithProvider: nodesmith_provider_1.NodesmithProvider, - PocketProvider: pocket_provider_1.PocketProvider, - Web3Provider: web3_provider_1.Web3Provider, - IpcProvider: ipc_provider_1.IpcProvider, - }, options); -} -exports.getDefaultProvider = getDefaultProvider; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 65936: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.InfuraProvider = exports.InfuraWebSocketProvider = void 0; -var properties_1 = __nccwpck_require__(61338); -var websocket_provider_1 = __nccwpck_require__(35988); -var formatter_1 = __nccwpck_require__(24293); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -var url_json_rpc_provider_1 = __nccwpck_require__(56717); -var defaultProjectId = "84842078b09946638c03157f83405213"; -var InfuraWebSocketProvider = /** @class */ (function (_super) { - __extends(InfuraWebSocketProvider, _super); - function InfuraWebSocketProvider(network, apiKey) { - var _this = this; - var provider = new InfuraProvider(network, apiKey); - var connection = provider.connection; - if (connection.password) { - logger.throwError("INFURA WebSocket project secrets unsupported", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "InfuraProvider.getWebSocketProvider()" - }); - } - var url = connection.url.replace(/^http/i, "ws").replace("/v3/", "/ws/v3/"); - _this = _super.call(this, url, network) || this; - (0, properties_1.defineReadOnly)(_this, "apiKey", provider.projectId); - (0, properties_1.defineReadOnly)(_this, "projectId", provider.projectId); - (0, properties_1.defineReadOnly)(_this, "projectSecret", provider.projectSecret); - return _this; - } - InfuraWebSocketProvider.prototype.isCommunityResource = function () { - return (this.projectId === defaultProjectId); - }; - return InfuraWebSocketProvider; -}(websocket_provider_1.WebSocketProvider)); -exports.InfuraWebSocketProvider = InfuraWebSocketProvider; -var InfuraProvider = /** @class */ (function (_super) { - __extends(InfuraProvider, _super); - function InfuraProvider() { - return _super !== null && _super.apply(this, arguments) || this; - } - InfuraProvider.getWebSocketProvider = function (network, apiKey) { - return new InfuraWebSocketProvider(network, apiKey); - }; - InfuraProvider.getApiKey = function (apiKey) { - var apiKeyObj = { - apiKey: defaultProjectId, - projectId: defaultProjectId, - projectSecret: null - }; - if (apiKey == null) { - return apiKeyObj; - } - if (typeof (apiKey) === "string") { - apiKeyObj.projectId = apiKey; - } - else if (apiKey.projectSecret != null) { - logger.assertArgument((typeof (apiKey.projectId) === "string"), "projectSecret requires a projectId", "projectId", apiKey.projectId); - logger.assertArgument((typeof (apiKey.projectSecret) === "string"), "invalid projectSecret", "projectSecret", "[REDACTED]"); - apiKeyObj.projectId = apiKey.projectId; - apiKeyObj.projectSecret = apiKey.projectSecret; - } - else if (apiKey.projectId) { - apiKeyObj.projectId = apiKey.projectId; - } - apiKeyObj.apiKey = apiKeyObj.projectId; - return apiKeyObj; - }; - InfuraProvider.getUrl = function (network, apiKey) { - var host = null; - switch (network ? network.name : "unknown") { - case "homestead": - host = "mainnet.infura.io"; - break; - case "goerli": - host = "goerli.infura.io"; - break; - case "sepolia": - host = "sepolia.infura.io"; - break; - case "matic": - host = "polygon-mainnet.infura.io"; - break; - case "maticmum": - host = "polygon-mumbai.infura.io"; - break; - case "optimism": - host = "optimism-mainnet.infura.io"; - break; - case "optimism-goerli": - host = "optimism-goerli.infura.io"; - break; - case "arbitrum": - host = "arbitrum-mainnet.infura.io"; - break; - case "arbitrum-goerli": - host = "arbitrum-goerli.infura.io"; - break; - default: - logger.throwError("unsupported network", logger_1.Logger.errors.INVALID_ARGUMENT, { - argument: "network", - value: network - }); - } - var connection = { - allowGzip: true, - url: ("https:/" + "/" + host + "/v3/" + apiKey.projectId), - throttleCallback: function (attempt, url) { - if (apiKey.projectId === defaultProjectId) { - (0, formatter_1.showThrottleMessage)(); - } - return Promise.resolve(true); - } - }; - if (apiKey.projectSecret != null) { - connection.user = ""; - connection.password = apiKey.projectSecret; - } - return connection; - }; - InfuraProvider.prototype.isCommunityResource = function () { - return (this.projectId === defaultProjectId); - }; - return InfuraProvider; -}(url_json_rpc_provider_1.UrlJsonRpcProvider)); -exports.InfuraProvider = InfuraProvider; -//# sourceMappingURL=infura-provider.js.map - -/***/ }), - -/***/ 54443: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.IpcProvider = void 0; -var net_1 = __nccwpck_require__(69278); -var properties_1 = __nccwpck_require__(61338); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -var json_rpc_provider_1 = __nccwpck_require__(30697); -var IpcProvider = /** @class */ (function (_super) { - __extends(IpcProvider, _super); - function IpcProvider(path, network) { - var _this = this; - if (path == null) { - logger.throwError("missing path", logger_1.Logger.errors.MISSING_ARGUMENT, { arg: "path" }); - } - _this = _super.call(this, "ipc://" + path, network) || this; - (0, properties_1.defineReadOnly)(_this, "path", path); - return _this; - } - // @TODO: Create a connection to the IPC path and use filters instead of polling for block - IpcProvider.prototype.send = function (method, params) { - // This method is very simple right now. We create a new socket - // connection each time, which may be slower, but the main - // advantage we are aiming for now is security. This simplifies - // multiplexing requests (since we do not need to multiplex). - var _this = this; - var payload = JSON.stringify({ - method: method, - params: params, - id: 42, - jsonrpc: "2.0" - }); - return new Promise(function (resolve, reject) { - var response = Buffer.alloc(0); - var stream = (0, net_1.connect)(_this.path); - stream.on("data", function (data) { - response = Buffer.concat([response, data]); - }); - stream.on("end", function () { - try { - resolve(JSON.parse(response.toString()).result); - // @TODO: Better pull apart the error - stream.destroy(); - } - catch (error) { - reject(error); - stream.destroy(); - } - }); - stream.on("error", function (error) { - reject(error); - stream.destroy(); - }); - stream.write(payload); - stream.end(); - }); - }; - return IpcProvider; -}(json_rpc_provider_1.JsonRpcProvider)); -exports.IpcProvider = IpcProvider; -//# sourceMappingURL=ipc-provider.js.map - -/***/ }), - -/***/ 15802: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.JsonRpcBatchProvider = void 0; -var properties_1 = __nccwpck_require__(61338); -var web_1 = __nccwpck_require__(72239); -var json_rpc_provider_1 = __nccwpck_require__(30697); -// Experimental -var JsonRpcBatchProvider = /** @class */ (function (_super) { - __extends(JsonRpcBatchProvider, _super); - function JsonRpcBatchProvider() { - return _super !== null && _super.apply(this, arguments) || this; - } - JsonRpcBatchProvider.prototype.send = function (method, params) { - var _this = this; - var request = { - method: method, - params: params, - id: (this._nextId++), - jsonrpc: "2.0" - }; - if (this._pendingBatch == null) { - this._pendingBatch = []; - } - var inflightRequest = { request: request, resolve: null, reject: null }; - var promise = new Promise(function (resolve, reject) { - inflightRequest.resolve = resolve; - inflightRequest.reject = reject; - }); - this._pendingBatch.push(inflightRequest); - if (!this._pendingBatchAggregator) { - // Schedule batch for next event loop + short duration - this._pendingBatchAggregator = setTimeout(function () { - // Get teh current batch and clear it, so new requests - // go into the next batch - var batch = _this._pendingBatch; - _this._pendingBatch = null; - _this._pendingBatchAggregator = null; - // Get the request as an array of requests - var request = batch.map(function (inflight) { return inflight.request; }); - _this.emit("debug", { - action: "requestBatch", - request: (0, properties_1.deepCopy)(request), - provider: _this - }); - return (0, web_1.fetchJson)(_this.connection, JSON.stringify(request)).then(function (result) { - _this.emit("debug", { - action: "response", - request: request, - response: result, - provider: _this - }); - // For each result, feed it to the correct Promise, depending - // on whether it was a success or error - batch.forEach(function (inflightRequest, index) { - var payload = result[index]; - if (payload.error) { - var error = new Error(payload.error.message); - error.code = payload.error.code; - error.data = payload.error.data; - inflightRequest.reject(error); - } - else { - inflightRequest.resolve(payload.result); - } - }); - }, function (error) { - _this.emit("debug", { - action: "response", - error: error, - request: request, - provider: _this - }); - batch.forEach(function (inflightRequest) { - inflightRequest.reject(error); - }); - }); - }, 10); - } - return promise; - }; - return JsonRpcBatchProvider; -}(json_rpc_provider_1.JsonRpcProvider)); -exports.JsonRpcBatchProvider = JsonRpcBatchProvider; -//# sourceMappingURL=json-rpc-batch-provider.js.map - -/***/ }), - -/***/ 30697: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -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 })); -exports.JsonRpcProvider = exports.JsonRpcSigner = void 0; -var abstract_signer_1 = __nccwpck_require__(53870); -var bignumber_1 = __nccwpck_require__(18202); -var bytes_1 = __nccwpck_require__(42006); -var hash_1 = __nccwpck_require__(91839); -var properties_1 = __nccwpck_require__(61338); -var strings_1 = __nccwpck_require__(13859); -var transactions_1 = __nccwpck_require__(62394); -var web_1 = __nccwpck_require__(72239); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -var base_provider_1 = __nccwpck_require__(8090); -var errorGas = ["call", "estimateGas"]; -function spelunk(value, requireData) { - if (value == null) { - return null; - } - // These *are* the droids we're looking for. - if (typeof (value.message) === "string" && value.message.match("reverted")) { - var data = (0, bytes_1.isHexString)(value.data) ? value.data : null; - if (!requireData || data) { - return { message: value.message, data: data }; - } - } - // Spelunk further... - if (typeof (value) === "object") { - for (var key in value) { - var result = spelunk(value[key], requireData); - if (result) { - return result; - } - } - return null; - } - // Might be a JSON string we can further descend... - if (typeof (value) === "string") { - try { - return spelunk(JSON.parse(value), requireData); - } - catch (error) { } - } - return null; -} -function checkError(method, error, params) { - var transaction = params.transaction || params.signedTransaction; - // Undo the "convenience" some nodes are attempting to prevent backwards - // incompatibility; maybe for v6 consider forwarding reverts as errors - if (method === "call") { - var result = spelunk(error, true); - if (result) { - return result.data; - } - // Nothing descriptive.. - logger.throwError("missing revert data in call exception; Transaction reverted without a reason string", logger_1.Logger.errors.CALL_EXCEPTION, { - data: "0x", - transaction: transaction, - error: error - }); - } - if (method === "estimateGas") { - // Try to find something, with a preference on SERVER_ERROR body - var result = spelunk(error.body, false); - if (result == null) { - result = spelunk(error, false); - } - // Found "reverted", this is a CALL_EXCEPTION - if (result) { - logger.throwError("cannot estimate gas; transaction may fail or may require manual gas limit", logger_1.Logger.errors.UNPREDICTABLE_GAS_LIMIT, { - reason: result.message, - method: method, - transaction: transaction, - error: error - }); - } - } - // @TODO: Should we spelunk for message too? - var message = error.message; - if (error.code === logger_1.Logger.errors.SERVER_ERROR && error.error && typeof (error.error.message) === "string") { - message = error.error.message; - } - else if (typeof (error.body) === "string") { - message = error.body; - } - else if (typeof (error.responseText) === "string") { - message = error.responseText; - } - message = (message || "").toLowerCase(); - // "insufficient funds for gas * price + value + cost(data)" - if (message.match(/insufficient funds|base fee exceeds gas limit|InsufficientFunds/i)) { - logger.throwError("insufficient funds for intrinsic transaction cost", logger_1.Logger.errors.INSUFFICIENT_FUNDS, { - error: error, - method: method, - transaction: transaction - }); - } - // "nonce too low" - if (message.match(/nonce (is )?too low/i)) { - logger.throwError("nonce has already been used", logger_1.Logger.errors.NONCE_EXPIRED, { - error: error, - method: method, - transaction: transaction - }); - } - // "replacement transaction underpriced" - if (message.match(/replacement transaction underpriced|transaction gas price.*too low/i)) { - logger.throwError("replacement fee too low", logger_1.Logger.errors.REPLACEMENT_UNDERPRICED, { - error: error, - method: method, - transaction: transaction - }); - } - // "replacement transaction underpriced" - if (message.match(/only replay-protected/i)) { - logger.throwError("legacy pre-eip-155 transactions not supported", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - error: error, - method: method, - transaction: transaction - }); - } - if (errorGas.indexOf(method) >= 0 && message.match(/gas required exceeds allowance|always failing transaction|execution reverted|revert/)) { - logger.throwError("cannot estimate gas; transaction may fail or may require manual gas limit", logger_1.Logger.errors.UNPREDICTABLE_GAS_LIMIT, { - error: error, - method: method, - transaction: transaction - }); - } - throw error; -} -function timer(timeout) { - return new Promise(function (resolve) { - setTimeout(resolve, timeout); - }); -} -function getResult(payload) { - if (payload.error) { - // @TODO: not any - var error = new Error(payload.error.message); - error.code = payload.error.code; - error.data = payload.error.data; - throw error; - } - return payload.result; -} -function getLowerCase(value) { - if (value) { - return value.toLowerCase(); - } - return value; -} -var _constructorGuard = {}; -var JsonRpcSigner = /** @class */ (function (_super) { - __extends(JsonRpcSigner, _super); - function JsonRpcSigner(constructorGuard, provider, addressOrIndex) { - var _this = _super.call(this) || this; - if (constructorGuard !== _constructorGuard) { - throw new Error("do not call the JsonRpcSigner constructor directly; use provider.getSigner"); - } - (0, properties_1.defineReadOnly)(_this, "provider", provider); - if (addressOrIndex == null) { - addressOrIndex = 0; - } - if (typeof (addressOrIndex) === "string") { - (0, properties_1.defineReadOnly)(_this, "_address", _this.provider.formatter.address(addressOrIndex)); - (0, properties_1.defineReadOnly)(_this, "_index", null); - } - else if (typeof (addressOrIndex) === "number") { - (0, properties_1.defineReadOnly)(_this, "_index", addressOrIndex); - (0, properties_1.defineReadOnly)(_this, "_address", null); - } - else { - logger.throwArgumentError("invalid address or index", "addressOrIndex", addressOrIndex); - } - return _this; - } - JsonRpcSigner.prototype.connect = function (provider) { - return logger.throwError("cannot alter JSON-RPC Signer connection", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "connect" - }); - }; - JsonRpcSigner.prototype.connectUnchecked = function () { - return new UncheckedJsonRpcSigner(_constructorGuard, this.provider, this._address || this._index); - }; - JsonRpcSigner.prototype.getAddress = function () { - var _this = this; - if (this._address) { - return Promise.resolve(this._address); - } - return this.provider.send("eth_accounts", []).then(function (accounts) { - if (accounts.length <= _this._index) { - logger.throwError("unknown account #" + _this._index, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "getAddress" - }); - } - return _this.provider.formatter.address(accounts[_this._index]); - }); - }; - JsonRpcSigner.prototype.sendUncheckedTransaction = function (transaction) { - var _this = this; - transaction = (0, properties_1.shallowCopy)(transaction); - var fromAddress = this.getAddress().then(function (address) { - if (address) { - address = address.toLowerCase(); - } - return address; - }); - // The JSON-RPC for eth_sendTransaction uses 90000 gas; if the user - // wishes to use this, it is easy to specify explicitly, otherwise - // we look it up for them. - if (transaction.gasLimit == null) { - var estimate = (0, properties_1.shallowCopy)(transaction); - estimate.from = fromAddress; - transaction.gasLimit = this.provider.estimateGas(estimate); - } - if (transaction.to != null) { - transaction.to = Promise.resolve(transaction.to).then(function (to) { return __awaiter(_this, void 0, void 0, function () { - var address; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (to == null) { - return [2 /*return*/, null]; - } - return [4 /*yield*/, this.provider.resolveName(to)]; - case 1: - address = _a.sent(); - if (address == null) { - logger.throwArgumentError("provided ENS name resolves to null", "tx.to", to); - } - return [2 /*return*/, address]; - } - }); - }); }); - } - return (0, properties_1.resolveProperties)({ - tx: (0, properties_1.resolveProperties)(transaction), - sender: fromAddress - }).then(function (_a) { - var tx = _a.tx, sender = _a.sender; - if (tx.from != null) { - if (tx.from.toLowerCase() !== sender) { - logger.throwArgumentError("from address mismatch", "transaction", transaction); - } - } - else { - tx.from = sender; - } - var hexTx = _this.provider.constructor.hexlifyTransaction(tx, { from: true }); - return _this.provider.send("eth_sendTransaction", [hexTx]).then(function (hash) { - return hash; - }, function (error) { - if (typeof (error.message) === "string" && error.message.match(/user denied/i)) { - logger.throwError("user rejected transaction", logger_1.Logger.errors.ACTION_REJECTED, { - action: "sendTransaction", - transaction: tx - }); - } - return checkError("sendTransaction", error, hexTx); - }); - }); - }; - JsonRpcSigner.prototype.signTransaction = function (transaction) { - return logger.throwError("signing transactions is unsupported", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "signTransaction" - }); - }; - JsonRpcSigner.prototype.sendTransaction = function (transaction) { - return __awaiter(this, void 0, void 0, function () { - var blockNumber, hash, error_1; - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.provider._getInternalBlockNumber(100 + 2 * this.provider.pollingInterval)]; - case 1: - blockNumber = _a.sent(); - return [4 /*yield*/, this.sendUncheckedTransaction(transaction)]; - case 2: - hash = _a.sent(); - _a.label = 3; - case 3: - _a.trys.push([3, 5, , 6]); - return [4 /*yield*/, (0, web_1.poll)(function () { return __awaiter(_this, void 0, void 0, function () { - var tx; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, this.provider.getTransaction(hash)]; - case 1: - tx = _a.sent(); - if (tx === null) { - return [2 /*return*/, undefined]; - } - return [2 /*return*/, this.provider._wrapTransaction(tx, hash, blockNumber)]; - } - }); - }); }, { oncePoll: this.provider })]; - case 4: - // Unfortunately, JSON-RPC only provides and opaque transaction hash - // for a response, and we need the actual transaction, so we poll - // for it; it should show up very quickly - return [2 /*return*/, _a.sent()]; - case 5: - error_1 = _a.sent(); - error_1.transactionHash = hash; - throw error_1; - case 6: return [2 /*return*/]; - } - }); - }); - }; - JsonRpcSigner.prototype.signMessage = function (message) { - return __awaiter(this, void 0, void 0, function () { - var data, address, error_2; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - data = ((typeof (message) === "string") ? (0, strings_1.toUtf8Bytes)(message) : message); - return [4 /*yield*/, this.getAddress()]; - case 1: - address = _a.sent(); - _a.label = 2; - case 2: - _a.trys.push([2, 4, , 5]); - return [4 /*yield*/, this.provider.send("personal_sign", [(0, bytes_1.hexlify)(data), address.toLowerCase()])]; - case 3: return [2 /*return*/, _a.sent()]; - case 4: - error_2 = _a.sent(); - if (typeof (error_2.message) === "string" && error_2.message.match(/user denied/i)) { - logger.throwError("user rejected signing", logger_1.Logger.errors.ACTION_REJECTED, { - action: "signMessage", - from: address, - messageData: message - }); - } - throw error_2; - case 5: return [2 /*return*/]; - } - }); - }); - }; - JsonRpcSigner.prototype._legacySignMessage = function (message) { - return __awaiter(this, void 0, void 0, function () { - var data, address, error_3; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - data = ((typeof (message) === "string") ? (0, strings_1.toUtf8Bytes)(message) : message); - return [4 /*yield*/, this.getAddress()]; - case 1: - address = _a.sent(); - _a.label = 2; - case 2: - _a.trys.push([2, 4, , 5]); - return [4 /*yield*/, this.provider.send("eth_sign", [address.toLowerCase(), (0, bytes_1.hexlify)(data)])]; - case 3: - // https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_sign - return [2 /*return*/, _a.sent()]; - case 4: - error_3 = _a.sent(); - if (typeof (error_3.message) === "string" && error_3.message.match(/user denied/i)) { - logger.throwError("user rejected signing", logger_1.Logger.errors.ACTION_REJECTED, { - action: "_legacySignMessage", - from: address, - messageData: message - }); - } - throw error_3; - case 5: return [2 /*return*/]; - } - }); - }); - }; - JsonRpcSigner.prototype._signTypedData = function (domain, types, value) { - return __awaiter(this, void 0, void 0, function () { - var populated, address, error_4; - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, hash_1._TypedDataEncoder.resolveNames(domain, types, value, function (name) { - return _this.provider.resolveName(name); - })]; - case 1: - populated = _a.sent(); - return [4 /*yield*/, this.getAddress()]; - case 2: - address = _a.sent(); - _a.label = 3; - case 3: - _a.trys.push([3, 5, , 6]); - return [4 /*yield*/, this.provider.send("eth_signTypedData_v4", [ - address.toLowerCase(), - JSON.stringify(hash_1._TypedDataEncoder.getPayload(populated.domain, types, populated.value)) - ])]; - case 4: return [2 /*return*/, _a.sent()]; - case 5: - error_4 = _a.sent(); - if (typeof (error_4.message) === "string" && error_4.message.match(/user denied/i)) { - logger.throwError("user rejected signing", logger_1.Logger.errors.ACTION_REJECTED, { - action: "_signTypedData", - from: address, - messageData: { domain: populated.domain, types: types, value: populated.value } - }); - } - throw error_4; - case 6: return [2 /*return*/]; - } - }); - }); - }; - JsonRpcSigner.prototype.unlock = function (password) { - return __awaiter(this, void 0, void 0, function () { - var provider, address; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - provider = this.provider; - return [4 /*yield*/, this.getAddress()]; - case 1: - address = _a.sent(); - return [2 /*return*/, provider.send("personal_unlockAccount", [address.toLowerCase(), password, null])]; - } - }); - }); - }; - return JsonRpcSigner; -}(abstract_signer_1.Signer)); -exports.JsonRpcSigner = JsonRpcSigner; -var UncheckedJsonRpcSigner = /** @class */ (function (_super) { - __extends(UncheckedJsonRpcSigner, _super); - function UncheckedJsonRpcSigner() { - return _super !== null && _super.apply(this, arguments) || this; - } - UncheckedJsonRpcSigner.prototype.sendTransaction = function (transaction) { - var _this = this; - return this.sendUncheckedTransaction(transaction).then(function (hash) { - return { - hash: hash, - nonce: null, - gasLimit: null, - gasPrice: null, - data: null, - value: null, - chainId: null, - confirmations: 0, - from: null, - wait: function (confirmations) { return _this.provider.waitForTransaction(hash, confirmations); } - }; - }); - }; - return UncheckedJsonRpcSigner; -}(JsonRpcSigner)); -var allowedTransactionKeys = { - chainId: true, data: true, gasLimit: true, gasPrice: true, nonce: true, to: true, value: true, - type: true, accessList: true, - maxFeePerGas: true, maxPriorityFeePerGas: true -}; -var JsonRpcProvider = /** @class */ (function (_super) { - __extends(JsonRpcProvider, _super); - function JsonRpcProvider(url, network) { - var _this = this; - var networkOrReady = network; - // The network is unknown, query the JSON-RPC for it - if (networkOrReady == null) { - networkOrReady = new Promise(function (resolve, reject) { - setTimeout(function () { - _this.detectNetwork().then(function (network) { - resolve(network); - }, function (error) { - reject(error); - }); - }, 0); - }); - } - _this = _super.call(this, networkOrReady) || this; - // Default URL - if (!url) { - url = (0, properties_1.getStatic)(_this.constructor, "defaultUrl")(); - } - if (typeof (url) === "string") { - (0, properties_1.defineReadOnly)(_this, "connection", Object.freeze({ - url: url - })); - } - else { - (0, properties_1.defineReadOnly)(_this, "connection", Object.freeze((0, properties_1.shallowCopy)(url))); - } - _this._nextId = 42; - return _this; - } - Object.defineProperty(JsonRpcProvider.prototype, "_cache", { - get: function () { - if (this._eventLoopCache == null) { - this._eventLoopCache = {}; - } - return this._eventLoopCache; - }, - enumerable: false, - configurable: true - }); - JsonRpcProvider.defaultUrl = function () { - return "http:/\/localhost:8545"; - }; - JsonRpcProvider.prototype.detectNetwork = function () { - var _this = this; - if (!this._cache["detectNetwork"]) { - this._cache["detectNetwork"] = this._uncachedDetectNetwork(); - // Clear this cache at the beginning of the next event loop - setTimeout(function () { - _this._cache["detectNetwork"] = null; - }, 0); - } - return this._cache["detectNetwork"]; - }; - JsonRpcProvider.prototype._uncachedDetectNetwork = function () { - return __awaiter(this, void 0, void 0, function () { - var chainId, error_5, error_6, getNetwork; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, timer(0)]; - case 1: - _a.sent(); - chainId = null; - _a.label = 2; - case 2: - _a.trys.push([2, 4, , 9]); - return [4 /*yield*/, this.send("eth_chainId", [])]; - case 3: - chainId = _a.sent(); - return [3 /*break*/, 9]; - case 4: - error_5 = _a.sent(); - _a.label = 5; - case 5: - _a.trys.push([5, 7, , 8]); - return [4 /*yield*/, this.send("net_version", [])]; - case 6: - chainId = _a.sent(); - return [3 /*break*/, 8]; - case 7: - error_6 = _a.sent(); - return [3 /*break*/, 8]; - case 8: return [3 /*break*/, 9]; - case 9: - if (chainId != null) { - getNetwork = (0, properties_1.getStatic)(this.constructor, "getNetwork"); - try { - return [2 /*return*/, getNetwork(bignumber_1.BigNumber.from(chainId).toNumber())]; - } - catch (error) { - return [2 /*return*/, logger.throwError("could not detect network", logger_1.Logger.errors.NETWORK_ERROR, { - chainId: chainId, - event: "invalidNetwork", - serverError: error - })]; - } - } - return [2 /*return*/, logger.throwError("could not detect network", logger_1.Logger.errors.NETWORK_ERROR, { - event: "noNetwork" - })]; - } - }); - }); - }; - JsonRpcProvider.prototype.getSigner = function (addressOrIndex) { - return new JsonRpcSigner(_constructorGuard, this, addressOrIndex); - }; - JsonRpcProvider.prototype.getUncheckedSigner = function (addressOrIndex) { - return this.getSigner(addressOrIndex).connectUnchecked(); - }; - JsonRpcProvider.prototype.listAccounts = function () { - var _this = this; - return this.send("eth_accounts", []).then(function (accounts) { - return accounts.map(function (a) { return _this.formatter.address(a); }); - }); - }; - JsonRpcProvider.prototype.send = function (method, params) { - var _this = this; - var request = { - method: method, - params: params, - id: (this._nextId++), - jsonrpc: "2.0" - }; - this.emit("debug", { - action: "request", - request: (0, properties_1.deepCopy)(request), - provider: this - }); - // We can expand this in the future to any call, but for now these - // are the biggest wins and do not require any serializing parameters. - var cache = (["eth_chainId", "eth_blockNumber"].indexOf(method) >= 0); - if (cache && this._cache[method]) { - return this._cache[method]; - } - var result = (0, web_1.fetchJson)(this.connection, JSON.stringify(request), getResult).then(function (result) { - _this.emit("debug", { - action: "response", - request: request, - response: result, - provider: _this - }); - return result; - }, function (error) { - _this.emit("debug", { - action: "response", - error: error, - request: request, - provider: _this - }); - throw error; - }); - // Cache the fetch, but clear it on the next event loop - if (cache) { - this._cache[method] = result; - setTimeout(function () { - _this._cache[method] = null; - }, 0); - } - return result; - }; - JsonRpcProvider.prototype.prepareRequest = function (method, params) { - switch (method) { - case "getBlockNumber": - return ["eth_blockNumber", []]; - case "getGasPrice": - return ["eth_gasPrice", []]; - case "getBalance": - return ["eth_getBalance", [getLowerCase(params.address), params.blockTag]]; - case "getTransactionCount": - return ["eth_getTransactionCount", [getLowerCase(params.address), params.blockTag]]; - case "getCode": - return ["eth_getCode", [getLowerCase(params.address), params.blockTag]]; - case "getStorageAt": - return ["eth_getStorageAt", [getLowerCase(params.address), (0, bytes_1.hexZeroPad)(params.position, 32), params.blockTag]]; - case "sendTransaction": - return ["eth_sendRawTransaction", [params.signedTransaction]]; - case "getBlock": - if (params.blockTag) { - return ["eth_getBlockByNumber", [params.blockTag, !!params.includeTransactions]]; - } - else if (params.blockHash) { - return ["eth_getBlockByHash", [params.blockHash, !!params.includeTransactions]]; - } - return null; - case "getTransaction": - return ["eth_getTransactionByHash", [params.transactionHash]]; - case "getTransactionReceipt": - return ["eth_getTransactionReceipt", [params.transactionHash]]; - case "call": { - var hexlifyTransaction = (0, properties_1.getStatic)(this.constructor, "hexlifyTransaction"); - return ["eth_call", [hexlifyTransaction(params.transaction, { from: true }), params.blockTag]]; - } - case "estimateGas": { - var hexlifyTransaction = (0, properties_1.getStatic)(this.constructor, "hexlifyTransaction"); - return ["eth_estimateGas", [hexlifyTransaction(params.transaction, { from: true })]]; - } - case "getLogs": - if (params.filter && params.filter.address != null) { - params.filter.address = getLowerCase(params.filter.address); - } - return ["eth_getLogs", [params.filter]]; - default: - break; - } - return null; - }; - JsonRpcProvider.prototype.perform = function (method, params) { - return __awaiter(this, void 0, void 0, function () { - var tx, feeData, args, error_7; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (!(method === "call" || method === "estimateGas")) return [3 /*break*/, 2]; - tx = params.transaction; - if (!(tx && tx.type != null && bignumber_1.BigNumber.from(tx.type).isZero())) return [3 /*break*/, 2]; - if (!(tx.maxFeePerGas == null && tx.maxPriorityFeePerGas == null)) return [3 /*break*/, 2]; - return [4 /*yield*/, this.getFeeData()]; - case 1: - feeData = _a.sent(); - if (feeData.maxFeePerGas == null && feeData.maxPriorityFeePerGas == null) { - // Network doesn't know about EIP-1559 (and hence type) - params = (0, properties_1.shallowCopy)(params); - params.transaction = (0, properties_1.shallowCopy)(tx); - delete params.transaction.type; - } - _a.label = 2; - case 2: - args = this.prepareRequest(method, params); - if (args == null) { - logger.throwError(method + " not implemented", logger_1.Logger.errors.NOT_IMPLEMENTED, { operation: method }); - } - _a.label = 3; - case 3: - _a.trys.push([3, 5, , 6]); - return [4 /*yield*/, this.send(args[0], args[1])]; - case 4: return [2 /*return*/, _a.sent()]; - case 5: - error_7 = _a.sent(); - return [2 /*return*/, checkError(method, error_7, params)]; - case 6: return [2 /*return*/]; - } - }); - }); - }; - JsonRpcProvider.prototype._startEvent = function (event) { - if (event.tag === "pending") { - this._startPending(); - } - _super.prototype._startEvent.call(this, event); - }; - JsonRpcProvider.prototype._startPending = function () { - if (this._pendingFilter != null) { - return; - } - var self = this; - var pendingFilter = this.send("eth_newPendingTransactionFilter", []); - this._pendingFilter = pendingFilter; - pendingFilter.then(function (filterId) { - function poll() { - self.send("eth_getFilterChanges", [filterId]).then(function (hashes) { - if (self._pendingFilter != pendingFilter) { - return null; - } - var seq = Promise.resolve(); - hashes.forEach(function (hash) { - // @TODO: This should be garbage collected at some point... How? When? - self._emitted["t:" + hash.toLowerCase()] = "pending"; - seq = seq.then(function () { - return self.getTransaction(hash).then(function (tx) { - self.emit("pending", tx); - return null; - }); - }); - }); - return seq.then(function () { - return timer(1000); - }); - }).then(function () { - if (self._pendingFilter != pendingFilter) { - self.send("eth_uninstallFilter", [filterId]); - return; - } - setTimeout(function () { poll(); }, 0); - return null; - }).catch(function (error) { }); - } - poll(); - return filterId; - }).catch(function (error) { }); - }; - JsonRpcProvider.prototype._stopEvent = function (event) { - if (event.tag === "pending" && this.listenerCount("pending") === 0) { - this._pendingFilter = null; - } - _super.prototype._stopEvent.call(this, event); - }; - // Convert an ethers.js transaction into a JSON-RPC transaction - // - gasLimit => gas - // - All values hexlified - // - All numeric values zero-striped - // - All addresses are lowercased - // NOTE: This allows a TransactionRequest, but all values should be resolved - // before this is called - // @TODO: This will likely be removed in future versions and prepareRequest - // will be the preferred method for this. - JsonRpcProvider.hexlifyTransaction = function (transaction, allowExtra) { - // Check only allowed properties are given - var allowed = (0, properties_1.shallowCopy)(allowedTransactionKeys); - if (allowExtra) { - for (var key in allowExtra) { - if (allowExtra[key]) { - allowed[key] = true; - } - } - } - (0, properties_1.checkProperties)(transaction, allowed); - var result = {}; - // JSON-RPC now requires numeric values to be "quantity" values - ["chainId", "gasLimit", "gasPrice", "type", "maxFeePerGas", "maxPriorityFeePerGas", "nonce", "value"].forEach(function (key) { - if (transaction[key] == null) { - return; - } - var value = (0, bytes_1.hexValue)(bignumber_1.BigNumber.from(transaction[key])); - if (key === "gasLimit") { - key = "gas"; - } - result[key] = value; - }); - ["from", "to", "data"].forEach(function (key) { - if (transaction[key] == null) { - return; - } - result[key] = (0, bytes_1.hexlify)(transaction[key]); - }); - if (transaction.accessList) { - result["accessList"] = (0, transactions_1.accessListify)(transaction.accessList); - } - return result; - }; - return JsonRpcProvider; -}(base_provider_1.BaseProvider)); -exports.JsonRpcProvider = JsonRpcProvider; -//# sourceMappingURL=json-rpc-provider.js.map - -/***/ }), - -/***/ 62572: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; -/* istanbul ignore file */ - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.NodesmithProvider = void 0; -var url_json_rpc_provider_1 = __nccwpck_require__(56717); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -// Special API key provided by Nodesmith for ethers.js -var defaultApiKey = "ETHERS_JS_SHARED"; -var NodesmithProvider = /** @class */ (function (_super) { - __extends(NodesmithProvider, _super); - function NodesmithProvider() { - return _super !== null && _super.apply(this, arguments) || this; - } - NodesmithProvider.getApiKey = function (apiKey) { - if (apiKey && typeof (apiKey) !== "string") { - logger.throwArgumentError("invalid apiKey", "apiKey", apiKey); - } - return apiKey || defaultApiKey; - }; - NodesmithProvider.getUrl = function (network, apiKey) { - logger.warn("NodeSmith will be discontinued on 2019-12-20; please migrate to another platform."); - var host = null; - switch (network.name) { - case "homestead": - host = "https://ethereum.api.nodesmith.io/v1/mainnet/jsonrpc"; - break; - case "ropsten": - host = "https://ethereum.api.nodesmith.io/v1/ropsten/jsonrpc"; - break; - case "rinkeby": - host = "https://ethereum.api.nodesmith.io/v1/rinkeby/jsonrpc"; - break; - case "goerli": - host = "https://ethereum.api.nodesmith.io/v1/goerli/jsonrpc"; - break; - case "kovan": - host = "https://ethereum.api.nodesmith.io/v1/kovan/jsonrpc"; - break; - default: - logger.throwArgumentError("unsupported network", "network", arguments[0]); - } - return (host + "?apiKey=" + apiKey); - }; - return NodesmithProvider; -}(url_json_rpc_provider_1.UrlJsonRpcProvider)); -exports.NodesmithProvider = NodesmithProvider; -//# sourceMappingURL=nodesmith-provider.js.map - -/***/ }), - -/***/ 29663: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.PocketProvider = void 0; -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -var url_json_rpc_provider_1 = __nccwpck_require__(56717); -var defaultApplicationId = "62e1ad51b37b8e00394bda3b"; -var PocketProvider = /** @class */ (function (_super) { - __extends(PocketProvider, _super); - function PocketProvider() { - return _super !== null && _super.apply(this, arguments) || this; - } - PocketProvider.getApiKey = function (apiKey) { - var apiKeyObj = { - applicationId: null, - loadBalancer: true, - applicationSecretKey: null - }; - // Parse applicationId and applicationSecretKey - if (apiKey == null) { - apiKeyObj.applicationId = defaultApplicationId; - } - else if (typeof (apiKey) === "string") { - apiKeyObj.applicationId = apiKey; - } - else if (apiKey.applicationSecretKey != null) { - apiKeyObj.applicationId = apiKey.applicationId; - apiKeyObj.applicationSecretKey = apiKey.applicationSecretKey; - } - else if (apiKey.applicationId) { - apiKeyObj.applicationId = apiKey.applicationId; - } - else { - logger.throwArgumentError("unsupported PocketProvider apiKey", "apiKey", apiKey); - } - return apiKeyObj; - }; - PocketProvider.getUrl = function (network, apiKey) { - var host = null; - switch (network ? network.name : "unknown") { - case "goerli": - host = "eth-goerli.gateway.pokt.network"; - break; - case "homestead": - host = "eth-mainnet.gateway.pokt.network"; - break; - case "kovan": - host = "poa-kovan.gateway.pokt.network"; - break; - case "matic": - host = "poly-mainnet.gateway.pokt.network"; - break; - case "maticmum": - host = "polygon-mumbai-rpc.gateway.pokt.network"; - break; - case "rinkeby": - host = "eth-rinkeby.gateway.pokt.network"; - break; - case "ropsten": - host = "eth-ropsten.gateway.pokt.network"; - break; - default: - logger.throwError("unsupported network", logger_1.Logger.errors.INVALID_ARGUMENT, { - argument: "network", - value: network - }); - } - var url = "https://" + host + "/v1/lb/" + apiKey.applicationId; - var connection = { headers: {}, url: url }; - if (apiKey.applicationSecretKey != null) { - connection.user = ""; - connection.password = apiKey.applicationSecretKey; - } - return connection; - }; - PocketProvider.prototype.isCommunityResource = function () { - return (this.applicationId === defaultApplicationId); - }; - return PocketProvider; -}(url_json_rpc_provider_1.UrlJsonRpcProvider)); -exports.PocketProvider = PocketProvider; -//# sourceMappingURL=pocket-provider.js.map - -/***/ }), - -/***/ 56717: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -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 })); -exports.UrlJsonRpcProvider = exports.StaticJsonRpcProvider = void 0; -var properties_1 = __nccwpck_require__(61338); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -var json_rpc_provider_1 = __nccwpck_require__(30697); -// A StaticJsonRpcProvider is useful when you *know* for certain that -// the backend will never change, as it never calls eth_chainId to -// verify its backend. However, if the backend does change, the effects -// are undefined and may include: -// - inconsistent results -// - locking up the UI -// - block skew warnings -// - wrong results -// If the network is not explicit (i.e. auto-detection is expected), the -// node MUST be running and available to respond to requests BEFORE this -// is instantiated. -var StaticJsonRpcProvider = /** @class */ (function (_super) { - __extends(StaticJsonRpcProvider, _super); - function StaticJsonRpcProvider() { - return _super !== null && _super.apply(this, arguments) || this; - } - StaticJsonRpcProvider.prototype.detectNetwork = function () { - return __awaiter(this, void 0, void 0, function () { - var network; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - network = this.network; - if (!(network == null)) return [3 /*break*/, 2]; - return [4 /*yield*/, _super.prototype.detectNetwork.call(this)]; - case 1: - network = _a.sent(); - if (!network) { - logger.throwError("no network detected", logger_1.Logger.errors.UNKNOWN_ERROR, {}); - } - // If still not set, set it - if (this._network == null) { - // A static network does not support "any" - (0, properties_1.defineReadOnly)(this, "_network", network); - this.emit("network", network, null); - } - _a.label = 2; - case 2: return [2 /*return*/, network]; - } - }); - }); - }; - return StaticJsonRpcProvider; -}(json_rpc_provider_1.JsonRpcProvider)); -exports.StaticJsonRpcProvider = StaticJsonRpcProvider; -var UrlJsonRpcProvider = /** @class */ (function (_super) { - __extends(UrlJsonRpcProvider, _super); - function UrlJsonRpcProvider(network, apiKey) { - var _newTarget = this.constructor; - var _this = this; - logger.checkAbstract(_newTarget, UrlJsonRpcProvider); - // Normalize the Network and API Key - network = (0, properties_1.getStatic)(_newTarget, "getNetwork")(network); - apiKey = (0, properties_1.getStatic)(_newTarget, "getApiKey")(apiKey); - var connection = (0, properties_1.getStatic)(_newTarget, "getUrl")(network, apiKey); - _this = _super.call(this, connection, network) || this; - if (typeof (apiKey) === "string") { - (0, properties_1.defineReadOnly)(_this, "apiKey", apiKey); - } - else if (apiKey != null) { - Object.keys(apiKey).forEach(function (key) { - (0, properties_1.defineReadOnly)(_this, key, apiKey[key]); - }); - } - return _this; - } - UrlJsonRpcProvider.prototype._startPending = function () { - logger.warn("WARNING: API provider does not support pending filters"); - }; - UrlJsonRpcProvider.prototype.isCommunityResource = function () { - return false; - }; - UrlJsonRpcProvider.prototype.getSigner = function (address) { - return logger.throwError("API provider does not support signing", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { operation: "getSigner" }); - }; - UrlJsonRpcProvider.prototype.listAccounts = function () { - return Promise.resolve([]); - }; - // Return a defaultApiKey if null, otherwise validate the API key - UrlJsonRpcProvider.getApiKey = function (apiKey) { - return apiKey; - }; - // Returns the url or connection for the given network and API key. The - // API key will have been sanitized by the getApiKey first, so any validation - // or transformations can be done there. - UrlJsonRpcProvider.getUrl = function (network, apiKey) { - return logger.throwError("not implemented; sub-classes must override getUrl", logger_1.Logger.errors.NOT_IMPLEMENTED, { - operation: "getUrl" - }); - }; - return UrlJsonRpcProvider; -}(StaticJsonRpcProvider)); -exports.UrlJsonRpcProvider = UrlJsonRpcProvider; -//# sourceMappingURL=url-json-rpc-provider.js.map - -/***/ }), - -/***/ 9676: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Web3Provider = void 0; -var properties_1 = __nccwpck_require__(61338); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -var json_rpc_provider_1 = __nccwpck_require__(30697); -var _nextId = 1; -function buildWeb3LegacyFetcher(provider, sendFunc) { - var fetcher = "Web3LegacyFetcher"; - return function (method, params) { - var _this = this; - var request = { - method: method, - params: params, - id: (_nextId++), - jsonrpc: "2.0" - }; - return new Promise(function (resolve, reject) { - _this.emit("debug", { - action: "request", - fetcher: fetcher, - request: (0, properties_1.deepCopy)(request), - provider: _this - }); - sendFunc(request, function (error, response) { - if (error) { - _this.emit("debug", { - action: "response", - fetcher: fetcher, - error: error, - request: request, - provider: _this - }); - return reject(error); - } - _this.emit("debug", { - action: "response", - fetcher: fetcher, - request: request, - response: response, - provider: _this - }); - if (response.error) { - var error_1 = new Error(response.error.message); - error_1.code = response.error.code; - error_1.data = response.error.data; - return reject(error_1); - } - resolve(response.result); - }); - }); - }; -} -function buildEip1193Fetcher(provider) { - return function (method, params) { - var _this = this; - if (params == null) { - params = []; - } - var request = { method: method, params: params }; - this.emit("debug", { - action: "request", - fetcher: "Eip1193Fetcher", - request: (0, properties_1.deepCopy)(request), - provider: this - }); - return provider.request(request).then(function (response) { - _this.emit("debug", { - action: "response", - fetcher: "Eip1193Fetcher", - request: request, - response: response, - provider: _this - }); - return response; - }, function (error) { - _this.emit("debug", { - action: "response", - fetcher: "Eip1193Fetcher", - request: request, - error: error, - provider: _this - }); - throw error; - }); - }; -} -var Web3Provider = /** @class */ (function (_super) { - __extends(Web3Provider, _super); - function Web3Provider(provider, network) { - var _this = this; - if (provider == null) { - logger.throwArgumentError("missing provider", "provider", provider); - } - var path = null; - var jsonRpcFetchFunc = null; - var subprovider = null; - if (typeof (provider) === "function") { - path = "unknown:"; - jsonRpcFetchFunc = provider; - } - else { - path = provider.host || provider.path || ""; - if (!path && provider.isMetaMask) { - path = "metamask"; - } - subprovider = provider; - if (provider.request) { - if (path === "") { - path = "eip-1193:"; - } - jsonRpcFetchFunc = buildEip1193Fetcher(provider); - } - else if (provider.sendAsync) { - jsonRpcFetchFunc = buildWeb3LegacyFetcher(provider, provider.sendAsync.bind(provider)); - } - else if (provider.send) { - jsonRpcFetchFunc = buildWeb3LegacyFetcher(provider, provider.send.bind(provider)); - } - else { - logger.throwArgumentError("unsupported provider", "provider", provider); - } - if (!path) { - path = "unknown:"; - } - } - _this = _super.call(this, path, network) || this; - (0, properties_1.defineReadOnly)(_this, "jsonRpcFetchFunc", jsonRpcFetchFunc); - (0, properties_1.defineReadOnly)(_this, "provider", subprovider); - return _this; - } - Web3Provider.prototype.send = function (method, params) { - return this.jsonRpcFetchFunc(method, params); - }; - return Web3Provider; -}(json_rpc_provider_1.JsonRpcProvider)); -exports.Web3Provider = Web3Provider; -//# sourceMappingURL=web3-provider.js.map - -/***/ }), - -/***/ 35988: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -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 })); -exports.WebSocketProvider = void 0; -var bignumber_1 = __nccwpck_require__(18202); -var properties_1 = __nccwpck_require__(61338); -var json_rpc_provider_1 = __nccwpck_require__(30697); -var ws_1 = __nccwpck_require__(36665); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(25408); -var logger = new logger_1.Logger(_version_1.version); -/** - * Notes: - * - * This provider differs a bit from the polling providers. One main - * difference is how it handles consistency. The polling providers - * will stall responses to ensure a consistent state, while this - * WebSocket provider assumes the connected backend will manage this. - * - * For example, if a polling provider emits an event which indicates - * the event occurred in blockhash XXX, a call to fetch that block by - * its hash XXX, if not present will retry until it is present. This - * can occur when querying a pool of nodes that are mildly out of sync - * with each other. - */ -var NextId = 1; -// For more info about the Real-time Event API see: -// https://geth.ethereum.org/docs/rpc/pubsub -var WebSocketProvider = /** @class */ (function (_super) { - __extends(WebSocketProvider, _super); - function WebSocketProvider(url, network) { - var _this = this; - // This will be added in the future; please open an issue to expedite - if (network === "any") { - logger.throwError("WebSocketProvider does not support 'any' network yet", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "network:any" - }); - } - if (typeof (url) === "string") { - _this = _super.call(this, url, network) || this; - } - else { - _this = _super.call(this, "_websocket", network) || this; - } - _this._pollingInterval = -1; - _this._wsReady = false; - if (typeof (url) === "string") { - (0, properties_1.defineReadOnly)(_this, "_websocket", new ws_1.WebSocket(_this.connection.url)); - } - else { - (0, properties_1.defineReadOnly)(_this, "_websocket", url); - } - (0, properties_1.defineReadOnly)(_this, "_requests", {}); - (0, properties_1.defineReadOnly)(_this, "_subs", {}); - (0, properties_1.defineReadOnly)(_this, "_subIds", {}); - (0, properties_1.defineReadOnly)(_this, "_detectNetwork", _super.prototype.detectNetwork.call(_this)); - // Stall sending requests until the socket is open... - _this.websocket.onopen = function () { - _this._wsReady = true; - Object.keys(_this._requests).forEach(function (id) { - _this.websocket.send(_this._requests[id].payload); - }); - }; - _this.websocket.onmessage = function (messageEvent) { - var data = messageEvent.data; - var result = JSON.parse(data); - if (result.id != null) { - var id = String(result.id); - var request = _this._requests[id]; - delete _this._requests[id]; - if (result.result !== undefined) { - request.callback(null, result.result); - _this.emit("debug", { - action: "response", - request: JSON.parse(request.payload), - response: result.result, - provider: _this - }); - } - else { - var error = null; - if (result.error) { - error = new Error(result.error.message || "unknown error"); - (0, properties_1.defineReadOnly)(error, "code", result.error.code || null); - (0, properties_1.defineReadOnly)(error, "response", data); - } - else { - error = new Error("unknown error"); - } - request.callback(error, undefined); - _this.emit("debug", { - action: "response", - error: error, - request: JSON.parse(request.payload), - provider: _this - }); - } - } - else if (result.method === "eth_subscription") { - // Subscription... - var sub = _this._subs[result.params.subscription]; - if (sub) { - //this.emit.apply(this, ); - sub.processFunc(result.params.result); - } - } - else { - console.warn("this should not happen"); - } - }; - // This Provider does not actually poll, but we want to trigger - // poll events for things that depend on them (like stalling for - // block and transaction lookups) - var fauxPoll = setInterval(function () { - _this.emit("poll"); - }, 1000); - if (fauxPoll.unref) { - fauxPoll.unref(); - } - return _this; - } - Object.defineProperty(WebSocketProvider.prototype, "websocket", { - // Cannot narrow the type of _websocket, as that is not backwards compatible - // so we add a getter and let the WebSocket be a public API. - get: function () { return this._websocket; }, - enumerable: false, - configurable: true - }); - WebSocketProvider.prototype.detectNetwork = function () { - return this._detectNetwork; - }; - Object.defineProperty(WebSocketProvider.prototype, "pollingInterval", { - get: function () { - return 0; - }, - set: function (value) { - logger.throwError("cannot set polling interval on WebSocketProvider", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "setPollingInterval" - }); - }, - enumerable: false, - configurable: true - }); - WebSocketProvider.prototype.resetEventsBlock = function (blockNumber) { - logger.throwError("cannot reset events block on WebSocketProvider", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "resetEventBlock" - }); - }; - WebSocketProvider.prototype.poll = function () { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, null]; - }); - }); - }; - Object.defineProperty(WebSocketProvider.prototype, "polling", { - set: function (value) { - if (!value) { - return; - } - logger.throwError("cannot set polling on WebSocketProvider", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "setPolling" - }); - }, - enumerable: false, - configurable: true - }); - WebSocketProvider.prototype.send = function (method, params) { - var _this = this; - var rid = NextId++; - return new Promise(function (resolve, reject) { - function callback(error, result) { - if (error) { - return reject(error); - } - return resolve(result); - } - var payload = JSON.stringify({ - method: method, - params: params, - id: rid, - jsonrpc: "2.0" - }); - _this.emit("debug", { - action: "request", - request: JSON.parse(payload), - provider: _this - }); - _this._requests[String(rid)] = { callback: callback, payload: payload }; - if (_this._wsReady) { - _this.websocket.send(payload); - } - }); - }; - WebSocketProvider.defaultUrl = function () { - return "ws:/\/localhost:8546"; - }; - WebSocketProvider.prototype._subscribe = function (tag, param, processFunc) { - return __awaiter(this, void 0, void 0, function () { - var subIdPromise, subId; - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - subIdPromise = this._subIds[tag]; - if (subIdPromise == null) { - subIdPromise = Promise.all(param).then(function (param) { - return _this.send("eth_subscribe", param); - }); - this._subIds[tag] = subIdPromise; - } - return [4 /*yield*/, subIdPromise]; - case 1: - subId = _a.sent(); - this._subs[subId] = { tag: tag, processFunc: processFunc }; - return [2 /*return*/]; - } - }); - }); - }; - WebSocketProvider.prototype._startEvent = function (event) { - var _this = this; - switch (event.type) { - case "block": - this._subscribe("block", ["newHeads"], function (result) { - var blockNumber = bignumber_1.BigNumber.from(result.number).toNumber(); - _this._emitted.block = blockNumber; - _this.emit("block", blockNumber); - }); - break; - case "pending": - this._subscribe("pending", ["newPendingTransactions"], function (result) { - _this.emit("pending", result); - }); - break; - case "filter": - this._subscribe(event.tag, ["logs", this._getFilter(event.filter)], function (result) { - if (result.removed == null) { - result.removed = false; - } - _this.emit(event.filter, _this.formatter.filterLog(result)); - }); - break; - case "tx": { - var emitReceipt_1 = function (event) { - var hash = event.hash; - _this.getTransactionReceipt(hash).then(function (receipt) { - if (!receipt) { - return; - } - _this.emit(hash, receipt); - }); - }; - // In case it is already mined - emitReceipt_1(event); - // To keep things simple, we start up a single newHeads subscription - // to keep an eye out for transactions we are watching for. - // Starting a subscription for an event (i.e. "tx") that is already - // running is (basically) a nop. - this._subscribe("tx", ["newHeads"], function (result) { - _this._events.filter(function (e) { return (e.type === "tx"); }).forEach(emitReceipt_1); - }); - break; - } - // Nothing is needed - case "debug": - case "poll": - case "willPoll": - case "didPoll": - case "error": - break; - default: - console.log("unhandled:", event); - break; - } - }; - WebSocketProvider.prototype._stopEvent = function (event) { - var _this = this; - var tag = event.tag; - if (event.type === "tx") { - // There are remaining transaction event listeners - if (this._events.filter(function (e) { return (e.type === "tx"); }).length) { - return; - } - tag = "tx"; - } - else if (this.listenerCount(event.event)) { - // There are remaining event listeners - return; - } - var subId = this._subIds[tag]; - if (!subId) { - return; - } - delete this._subIds[tag]; - subId.then(function (subId) { - if (!_this._subs[subId]) { - return; - } - delete _this._subs[subId]; - _this.send("eth_unsubscribe", [subId]); - }); - }; - WebSocketProvider.prototype.destroy = function () { - return __awaiter(this, void 0, void 0, function () { - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (!(this.websocket.readyState === ws_1.WebSocket.CONNECTING)) return [3 /*break*/, 2]; - return [4 /*yield*/, (new Promise(function (resolve) { - _this.websocket.onopen = function () { - resolve(true); - }; - _this.websocket.onerror = function () { - resolve(false); - }; - }))]; - case 1: - _a.sent(); - _a.label = 2; - case 2: - // Hangup - // See: https://developer.mozilla.org/en-US/docs/Web/API/CloseEvent#Status_codes - this.websocket.close(1000); - return [2 /*return*/]; - } - }); - }); - }; - return WebSocketProvider; -}(json_rpc_provider_1.JsonRpcProvider)); -exports.WebSocketProvider = WebSocketProvider; -//# sourceMappingURL=websocket-provider.js.map - -/***/ }), - -/***/ 36665: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.WebSocket = void 0; -var ws_1 = __importDefault(__nccwpck_require__(1497)); -exports.WebSocket = ws_1.default; -//# sourceMappingURL=ws.js.map - -/***/ }), - -/***/ 1497: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -const WebSocket = __nccwpck_require__(9462); - -WebSocket.createWebSocketStream = __nccwpck_require__(62117); -WebSocket.Server = __nccwpck_require__(72672); -WebSocket.Receiver = __nccwpck_require__(18508); -WebSocket.Sender = __nccwpck_require__(31780); - -module.exports = WebSocket; - - -/***/ }), - -/***/ 17932: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -const { EMPTY_BUFFER } = __nccwpck_require__(83400); - -/** - * Merges an array of buffers into a new buffer. - * - * @param {Buffer[]} list The array of buffers to concat - * @param {Number} totalLength The total length of buffers in the list - * @return {Buffer} The resulting buffer - * @public - */ -function concat(list, totalLength) { - if (list.length === 0) return EMPTY_BUFFER; - if (list.length === 1) return list[0]; - - const target = Buffer.allocUnsafe(totalLength); - let offset = 0; - - for (let i = 0; i < list.length; i++) { - const buf = list[i]; - target.set(buf, offset); - offset += buf.length; - } - - if (offset < totalLength) return target.slice(0, offset); - - return target; -} - -/** - * Masks a buffer using the given mask. - * - * @param {Buffer} source The buffer to mask - * @param {Buffer} mask The mask to use - * @param {Buffer} output The buffer where to store the result - * @param {Number} offset The offset at which to start writing - * @param {Number} length The number of bytes to mask. - * @public - */ -function _mask(source, mask, output, offset, length) { - for (let i = 0; i < length; i++) { - output[offset + i] = source[i] ^ mask[i & 3]; - } -} - -/** - * Unmasks a buffer using the given mask. - * - * @param {Buffer} buffer The buffer to unmask - * @param {Buffer} mask The mask to use - * @public - */ -function _unmask(buffer, mask) { - // Required until https://github.com/nodejs/node/issues/9006 is resolved. - const length = buffer.length; - for (let i = 0; i < length; i++) { - buffer[i] ^= mask[i & 3]; - } -} - -/** - * Converts a buffer to an `ArrayBuffer`. - * - * @param {Buffer} buf The buffer to convert - * @return {ArrayBuffer} Converted buffer - * @public - */ -function toArrayBuffer(buf) { - if (buf.byteLength === buf.buffer.byteLength) { - return buf.buffer; - } - - return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength); -} - -/** - * Converts `data` to a `Buffer`. - * - * @param {*} data The data to convert - * @return {Buffer} The buffer - * @throws {TypeError} - * @public - */ -function toBuffer(data) { - toBuffer.readOnly = true; - - if (Buffer.isBuffer(data)) return data; - - let buf; - - if (data instanceof ArrayBuffer) { - buf = Buffer.from(data); - } else if (ArrayBuffer.isView(data)) { - buf = Buffer.from(data.buffer, data.byteOffset, data.byteLength); - } else { - buf = Buffer.from(data); - toBuffer.readOnly = false; - } - - return buf; -} - -try { - const bufferUtil = __nccwpck_require__(18327); - const bu = bufferUtil.BufferUtil || bufferUtil; - - module.exports = { - concat, - mask(source, mask, output, offset, length) { - if (length < 48) _mask(source, mask, output, offset, length); - else bu.mask(source, mask, output, offset, length); - }, - toArrayBuffer, - toBuffer, - unmask(buffer, mask) { - if (buffer.length < 32) _unmask(buffer, mask); - else bu.unmask(buffer, mask); - } - }; -} catch (e) /* istanbul ignore next */ { - module.exports = { - concat, - mask: _mask, - toArrayBuffer, - toBuffer, - unmask: _unmask - }; -} - - -/***/ }), - -/***/ 83400: -/***/ ((module) => { - -"use strict"; - - -module.exports = { - BINARY_TYPES: ['nodebuffer', 'arraybuffer', 'fragments'], - GUID: '258EAFA5-E914-47DA-95CA-C5AB0DC85B11', - kStatusCode: Symbol('status-code'), - kWebSocket: Symbol('websocket'), - EMPTY_BUFFER: Buffer.alloc(0), - NOOP: () => {} -}; - - -/***/ }), - -/***/ 92755: -/***/ ((module) => { - -"use strict"; - - -/** - * Class representing an event. - * - * @private - */ -class Event { - /** - * Create a new `Event`. - * - * @param {String} type The name of the event - * @param {Object} target A reference to the target to which the event was - * dispatched - */ - constructor(type, target) { - this.target = target; - this.type = type; - } -} - -/** - * Class representing a message event. - * - * @extends Event - * @private - */ -class MessageEvent extends Event { - /** - * Create a new `MessageEvent`. - * - * @param {(String|Buffer|ArrayBuffer|Buffer[])} data The received data - * @param {WebSocket} target A reference to the target to which the event was - * dispatched - */ - constructor(data, target) { - super('message', target); - - this.data = data; - } -} - -/** - * Class representing a close event. - * - * @extends Event - * @private - */ -class CloseEvent extends Event { - /** - * Create a new `CloseEvent`. - * - * @param {Number} code The status code explaining why the connection is being - * closed - * @param {String} reason A human-readable string explaining why the - * connection is closing - * @param {WebSocket} target A reference to the target to which the event was - * dispatched - */ - constructor(code, reason, target) { - super('close', target); - - this.wasClean = target._closeFrameReceived && target._closeFrameSent; - this.reason = reason; - this.code = code; - } -} - -/** - * Class representing an open event. - * - * @extends Event - * @private - */ -class OpenEvent extends Event { - /** - * Create a new `OpenEvent`. - * - * @param {WebSocket} target A reference to the target to which the event was - * dispatched - */ - constructor(target) { - super('open', target); - } -} - -/** - * Class representing an error event. - * - * @extends Event - * @private - */ -class ErrorEvent extends Event { - /** - * Create a new `ErrorEvent`. - * - * @param {Object} error The error that generated this event - * @param {WebSocket} target A reference to the target to which the event was - * dispatched - */ - constructor(error, target) { - super('error', target); - - this.message = error.message; - this.error = error; - } -} - -/** - * This provides methods for emulating the `EventTarget` interface. It's not - * meant to be used directly. - * - * @mixin - */ -const EventTarget = { - /** - * Register an event listener. - * - * @param {String} type A string representing the event type to listen for - * @param {Function} listener The listener to add - * @param {Object} [options] An options object specifies characteristics about - * the event listener - * @param {Boolean} [options.once=false] A `Boolean`` indicating that the - * listener should be invoked at most once after being added. If `true`, - * the listener would be automatically removed when invoked. - * @public - */ - addEventListener(type, listener, options) { - if (typeof listener !== 'function') return; - - function onMessage(data) { - listener.call(this, new MessageEvent(data, this)); - } - - function onClose(code, message) { - listener.call(this, new CloseEvent(code, message, this)); - } - - function onError(error) { - listener.call(this, new ErrorEvent(error, this)); - } - - function onOpen() { - listener.call(this, new OpenEvent(this)); - } - - const method = options && options.once ? 'once' : 'on'; - - if (type === 'message') { - onMessage._listener = listener; - this[method](type, onMessage); - } else if (type === 'close') { - onClose._listener = listener; - this[method](type, onClose); - } else if (type === 'error') { - onError._listener = listener; - this[method](type, onError); - } else if (type === 'open') { - onOpen._listener = listener; - this[method](type, onOpen); - } else { - this[method](type, listener); - } - }, - - /** - * Remove an event listener. - * - * @param {String} type A string representing the event type to remove - * @param {Function} listener The listener to remove - * @public - */ - removeEventListener(type, listener) { - const listeners = this.listeners(type); - - for (let i = 0; i < listeners.length; i++) { - if (listeners[i] === listener || listeners[i]._listener === listener) { - this.removeListener(type, listeners[i]); - } - } - } -}; - -module.exports = EventTarget; - - -/***/ }), - -/***/ 34752: -/***/ ((module) => { - -"use strict"; - - -// -// Allowed token characters: -// -// '!', '#', '$', '%', '&', ''', '*', '+', '-', -// '.', 0-9, A-Z, '^', '_', '`', a-z, '|', '~' -// -// tokenChars[32] === 0 // ' ' -// tokenChars[33] === 1 // '!' -// tokenChars[34] === 0 // '"' -// ... -// -// prettier-ignore -const tokenChars = [ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 15 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 31 - 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, // 32 - 47 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, // 48 - 63 - 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 64 - 79 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, // 80 - 95 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 96 - 111 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0 // 112 - 127 -]; - -/** - * Adds an offer to the map of extension offers or a parameter to the map of - * parameters. - * - * @param {Object} dest The map of extension offers or parameters - * @param {String} name The extension or parameter name - * @param {(Object|Boolean|String)} elem The extension parameters or the - * parameter value - * @private - */ -function push(dest, name, elem) { - if (dest[name] === undefined) dest[name] = [elem]; - else dest[name].push(elem); -} - -/** - * Parses the `Sec-WebSocket-Extensions` header into an object. - * - * @param {String} header The field value of the header - * @return {Object} The parsed object - * @public - */ -function parse(header) { - const offers = Object.create(null); - - if (header === undefined || header === '') return offers; - - let params = Object.create(null); - let mustUnescape = false; - let isEscaping = false; - let inQuotes = false; - let extensionName; - let paramName; - let start = -1; - let end = -1; - let i = 0; - - for (; i < header.length; i++) { - const code = header.charCodeAt(i); - - if (extensionName === undefined) { - if (end === -1 && tokenChars[code] === 1) { - if (start === -1) start = i; - } else if (code === 0x20 /* ' ' */ || code === 0x09 /* '\t' */) { - if (end === -1 && start !== -1) end = i; - } else if (code === 0x3b /* ';' */ || code === 0x2c /* ',' */) { - if (start === -1) { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - - if (end === -1) end = i; - const name = header.slice(start, end); - if (code === 0x2c) { - push(offers, name, params); - params = Object.create(null); - } else { - extensionName = name; - } - - start = end = -1; - } else { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - } else if (paramName === undefined) { - if (end === -1 && tokenChars[code] === 1) { - if (start === -1) start = i; - } else if (code === 0x20 || code === 0x09) { - if (end === -1 && start !== -1) end = i; - } else if (code === 0x3b || code === 0x2c) { - if (start === -1) { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - - if (end === -1) end = i; - push(params, header.slice(start, end), true); - if (code === 0x2c) { - push(offers, extensionName, params); - params = Object.create(null); - extensionName = undefined; - } - - start = end = -1; - } else if (code === 0x3d /* '=' */ && start !== -1 && end === -1) { - paramName = header.slice(start, i); - start = end = -1; - } else { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - } else { - // - // The value of a quoted-string after unescaping must conform to the - // token ABNF, so only token characters are valid. - // Ref: https://tools.ietf.org/html/rfc6455#section-9.1 - // - if (isEscaping) { - if (tokenChars[code] !== 1) { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - if (start === -1) start = i; - else if (!mustUnescape) mustUnescape = true; - isEscaping = false; - } else if (inQuotes) { - if (tokenChars[code] === 1) { - if (start === -1) start = i; - } else if (code === 0x22 /* '"' */ && start !== -1) { - inQuotes = false; - end = i; - } else if (code === 0x5c /* '\' */) { - isEscaping = true; - } else { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - } else if (code === 0x22 && header.charCodeAt(i - 1) === 0x3d) { - inQuotes = true; - } else if (end === -1 && tokenChars[code] === 1) { - if (start === -1) start = i; - } else if (start !== -1 && (code === 0x20 || code === 0x09)) { - if (end === -1) end = i; - } else if (code === 0x3b || code === 0x2c) { - if (start === -1) { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - - if (end === -1) end = i; - let value = header.slice(start, end); - if (mustUnescape) { - value = value.replace(/\\/g, ''); - mustUnescape = false; - } - push(params, paramName, value); - if (code === 0x2c) { - push(offers, extensionName, params); - params = Object.create(null); - extensionName = undefined; - } - - paramName = undefined; - start = end = -1; - } else { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - } - } - - if (start === -1 || inQuotes) { - throw new SyntaxError('Unexpected end of input'); - } - - if (end === -1) end = i; - const token = header.slice(start, end); - if (extensionName === undefined) { - push(offers, token, params); - } else { - if (paramName === undefined) { - push(params, token, true); - } else if (mustUnescape) { - push(params, paramName, token.replace(/\\/g, '')); - } else { - push(params, paramName, token); - } - push(offers, extensionName, params); - } - - return offers; -} - -/** - * Builds the `Sec-WebSocket-Extensions` header field value. - * - * @param {Object} extensions The map of extensions and parameters to format - * @return {String} A string representing the given object - * @public - */ -function format(extensions) { - return Object.keys(extensions) - .map((extension) => { - let configurations = extensions[extension]; - if (!Array.isArray(configurations)) configurations = [configurations]; - return configurations - .map((params) => { - return [extension] - .concat( - Object.keys(params).map((k) => { - let values = params[k]; - if (!Array.isArray(values)) values = [values]; - return values - .map((v) => (v === true ? k : `${k}=${v}`)) - .join('; '); - }) - ) - .join('; '); - }) - .join(', '); - }) - .join(', '); -} - -module.exports = { format, parse }; - - -/***/ }), - -/***/ 97733: -/***/ ((module) => { - -"use strict"; - - -const kDone = Symbol('kDone'); -const kRun = Symbol('kRun'); - -/** - * A very simple job queue with adjustable concurrency. Adapted from - * https://github.com/STRML/async-limiter - */ -class Limiter { - /** - * Creates a new `Limiter`. - * - * @param {Number} [concurrency=Infinity] The maximum number of jobs allowed - * to run concurrently - */ - constructor(concurrency) { - this[kDone] = () => { - this.pending--; - this[kRun](); - }; - this.concurrency = concurrency || Infinity; - this.jobs = []; - this.pending = 0; - } - - /** - * Adds a job to the queue. - * - * @param {Function} job The job to run - * @public - */ - add(job) { - this.jobs.push(job); - this[kRun](); - } - - /** - * Removes a job from the queue and runs it if possible. - * - * @private - */ - [kRun]() { - if (this.pending === this.concurrency) return; - - if (this.jobs.length) { - const job = this.jobs.shift(); - - this.pending++; - job(this[kDone]); - } - } -} - -module.exports = Limiter; - - -/***/ }), - -/***/ 88389: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -const zlib = __nccwpck_require__(43106); - -const bufferUtil = __nccwpck_require__(17932); -const Limiter = __nccwpck_require__(97733); -const { kStatusCode, NOOP } = __nccwpck_require__(83400); - -const TRAILER = Buffer.from([0x00, 0x00, 0xff, 0xff]); -const kPerMessageDeflate = Symbol('permessage-deflate'); -const kTotalLength = Symbol('total-length'); -const kCallback = Symbol('callback'); -const kBuffers = Symbol('buffers'); -const kError = Symbol('error'); - -// -// We limit zlib concurrency, which prevents severe memory fragmentation -// as documented in https://github.com/nodejs/node/issues/8871#issuecomment-250915913 -// and https://github.com/websockets/ws/issues/1202 -// -// Intentionally global; it's the global thread pool that's an issue. -// -let zlibLimiter; - -/** - * permessage-deflate implementation. - */ -class PerMessageDeflate { - /** - * Creates a PerMessageDeflate instance. - * - * @param {Object} [options] Configuration options - * @param {Boolean} [options.serverNoContextTakeover=false] Request/accept - * disabling of server context takeover - * @param {Boolean} [options.clientNoContextTakeover=false] Advertise/ - * acknowledge disabling of client context takeover - * @param {(Boolean|Number)} [options.serverMaxWindowBits] Request/confirm the - * use of a custom server window size - * @param {(Boolean|Number)} [options.clientMaxWindowBits] Advertise support - * for, or request, a custom client window size - * @param {Object} [options.zlibDeflateOptions] Options to pass to zlib on - * deflate - * @param {Object} [options.zlibInflateOptions] Options to pass to zlib on - * inflate - * @param {Number} [options.threshold=1024] Size (in bytes) below which - * messages should not be compressed - * @param {Number} [options.concurrencyLimit=10] The number of concurrent - * calls to zlib - * @param {Boolean} [isServer=false] Create the instance in either server or - * client mode - * @param {Number} [maxPayload=0] The maximum allowed message length - */ - constructor(options, isServer, maxPayload) { - this._maxPayload = maxPayload | 0; - this._options = options || {}; - this._threshold = - this._options.threshold !== undefined ? this._options.threshold : 1024; - this._isServer = !!isServer; - this._deflate = null; - this._inflate = null; - - this.params = null; - - if (!zlibLimiter) { - const concurrency = - this._options.concurrencyLimit !== undefined - ? this._options.concurrencyLimit - : 10; - zlibLimiter = new Limiter(concurrency); - } - } - - /** - * @type {String} - */ - static get extensionName() { - return 'permessage-deflate'; - } - - /** - * Create an extension negotiation offer. - * - * @return {Object} Extension parameters - * @public - */ - offer() { - const params = {}; - - if (this._options.serverNoContextTakeover) { - params.server_no_context_takeover = true; - } - if (this._options.clientNoContextTakeover) { - params.client_no_context_takeover = true; - } - if (this._options.serverMaxWindowBits) { - params.server_max_window_bits = this._options.serverMaxWindowBits; - } - if (this._options.clientMaxWindowBits) { - params.client_max_window_bits = this._options.clientMaxWindowBits; - } else if (this._options.clientMaxWindowBits == null) { - params.client_max_window_bits = true; - } - - return params; - } - - /** - * Accept an extension negotiation offer/response. - * - * @param {Array} configurations The extension negotiation offers/reponse - * @return {Object} Accepted configuration - * @public - */ - accept(configurations) { - configurations = this.normalizeParams(configurations); - - this.params = this._isServer - ? this.acceptAsServer(configurations) - : this.acceptAsClient(configurations); - - return this.params; - } - - /** - * Releases all resources used by the extension. - * - * @public - */ - cleanup() { - if (this._inflate) { - this._inflate.close(); - this._inflate = null; - } - - if (this._deflate) { - const callback = this._deflate[kCallback]; - - this._deflate.close(); - this._deflate = null; - - if (callback) { - callback( - new Error( - 'The deflate stream was closed while data was being processed' - ) - ); - } - } - } - - /** - * Accept an extension negotiation offer. - * - * @param {Array} offers The extension negotiation offers - * @return {Object} Accepted configuration - * @private - */ - acceptAsServer(offers) { - const opts = this._options; - const accepted = offers.find((params) => { - if ( - (opts.serverNoContextTakeover === false && - params.server_no_context_takeover) || - (params.server_max_window_bits && - (opts.serverMaxWindowBits === false || - (typeof opts.serverMaxWindowBits === 'number' && - opts.serverMaxWindowBits > params.server_max_window_bits))) || - (typeof opts.clientMaxWindowBits === 'number' && - !params.client_max_window_bits) - ) { - return false; - } - - return true; - }); - - if (!accepted) { - throw new Error('None of the extension offers can be accepted'); - } - - if (opts.serverNoContextTakeover) { - accepted.server_no_context_takeover = true; - } - if (opts.clientNoContextTakeover) { - accepted.client_no_context_takeover = true; - } - if (typeof opts.serverMaxWindowBits === 'number') { - accepted.server_max_window_bits = opts.serverMaxWindowBits; - } - if (typeof opts.clientMaxWindowBits === 'number') { - accepted.client_max_window_bits = opts.clientMaxWindowBits; - } else if ( - accepted.client_max_window_bits === true || - opts.clientMaxWindowBits === false - ) { - delete accepted.client_max_window_bits; - } - - return accepted; - } - - /** - * Accept the extension negotiation response. - * - * @param {Array} response The extension negotiation response - * @return {Object} Accepted configuration - * @private - */ - acceptAsClient(response) { - const params = response[0]; - - if ( - this._options.clientNoContextTakeover === false && - params.client_no_context_takeover - ) { - throw new Error('Unexpected parameter "client_no_context_takeover"'); - } - - if (!params.client_max_window_bits) { - if (typeof this._options.clientMaxWindowBits === 'number') { - params.client_max_window_bits = this._options.clientMaxWindowBits; - } - } else if ( - this._options.clientMaxWindowBits === false || - (typeof this._options.clientMaxWindowBits === 'number' && - params.client_max_window_bits > this._options.clientMaxWindowBits) - ) { - throw new Error( - 'Unexpected or invalid parameter "client_max_window_bits"' - ); - } - - return params; - } - - /** - * Normalize parameters. - * - * @param {Array} configurations The extension negotiation offers/reponse - * @return {Array} The offers/response with normalized parameters - * @private - */ - normalizeParams(configurations) { - configurations.forEach((params) => { - Object.keys(params).forEach((key) => { - let value = params[key]; - - if (value.length > 1) { - throw new Error(`Parameter "${key}" must have only a single value`); - } - - value = value[0]; - - if (key === 'client_max_window_bits') { - if (value !== true) { - const num = +value; - if (!Number.isInteger(num) || num < 8 || num > 15) { - throw new TypeError( - `Invalid value for parameter "${key}": ${value}` - ); - } - value = num; - } else if (!this._isServer) { - throw new TypeError( - `Invalid value for parameter "${key}": ${value}` - ); - } - } else if (key === 'server_max_window_bits') { - const num = +value; - if (!Number.isInteger(num) || num < 8 || num > 15) { - throw new TypeError( - `Invalid value for parameter "${key}": ${value}` - ); - } - value = num; - } else if ( - key === 'client_no_context_takeover' || - key === 'server_no_context_takeover' - ) { - if (value !== true) { - throw new TypeError( - `Invalid value for parameter "${key}": ${value}` - ); - } - } else { - throw new Error(`Unknown parameter "${key}"`); - } - - params[key] = value; - }); - }); - - return configurations; - } - - /** - * Decompress data. Concurrency limited. - * - * @param {Buffer} data Compressed data - * @param {Boolean} fin Specifies whether or not this is the last fragment - * @param {Function} callback Callback - * @public - */ - decompress(data, fin, callback) { - zlibLimiter.add((done) => { - this._decompress(data, fin, (err, result) => { - done(); - callback(err, result); - }); - }); - } - - /** - * Compress data. Concurrency limited. - * - * @param {Buffer} data Data to compress - * @param {Boolean} fin Specifies whether or not this is the last fragment - * @param {Function} callback Callback - * @public - */ - compress(data, fin, callback) { - zlibLimiter.add((done) => { - this._compress(data, fin, (err, result) => { - done(); - callback(err, result); - }); - }); - } - - /** - * Decompress data. - * - * @param {Buffer} data Compressed data - * @param {Boolean} fin Specifies whether or not this is the last fragment - * @param {Function} callback Callback - * @private - */ - _decompress(data, fin, callback) { - const endpoint = this._isServer ? 'client' : 'server'; - - if (!this._inflate) { - const key = `${endpoint}_max_window_bits`; - const windowBits = - typeof this.params[key] !== 'number' - ? zlib.Z_DEFAULT_WINDOWBITS - : this.params[key]; - - this._inflate = zlib.createInflateRaw({ - ...this._options.zlibInflateOptions, - windowBits - }); - this._inflate[kPerMessageDeflate] = this; - this._inflate[kTotalLength] = 0; - this._inflate[kBuffers] = []; - this._inflate.on('error', inflateOnError); - this._inflate.on('data', inflateOnData); - } - - this._inflate[kCallback] = callback; - - this._inflate.write(data); - if (fin) this._inflate.write(TRAILER); - - this._inflate.flush(() => { - const err = this._inflate[kError]; - - if (err) { - this._inflate.close(); - this._inflate = null; - callback(err); - return; - } - - const data = bufferUtil.concat( - this._inflate[kBuffers], - this._inflate[kTotalLength] - ); - - if (this._inflate._readableState.endEmitted) { - this._inflate.close(); - this._inflate = null; - } else { - this._inflate[kTotalLength] = 0; - this._inflate[kBuffers] = []; - - if (fin && this.params[`${endpoint}_no_context_takeover`]) { - this._inflate.reset(); - } - } - - callback(null, data); - }); - } - - /** - * Compress data. - * - * @param {Buffer} data Data to compress - * @param {Boolean} fin Specifies whether or not this is the last fragment - * @param {Function} callback Callback - * @private - */ - _compress(data, fin, callback) { - const endpoint = this._isServer ? 'server' : 'client'; - - if (!this._deflate) { - const key = `${endpoint}_max_window_bits`; - const windowBits = - typeof this.params[key] !== 'number' - ? zlib.Z_DEFAULT_WINDOWBITS - : this.params[key]; - - this._deflate = zlib.createDeflateRaw({ - ...this._options.zlibDeflateOptions, - windowBits - }); - - this._deflate[kTotalLength] = 0; - this._deflate[kBuffers] = []; - - // - // An `'error'` event is emitted, only on Node.js < 10.0.0, if the - // `zlib.DeflateRaw` instance is closed while data is being processed. - // This can happen if `PerMessageDeflate#cleanup()` is called at the wrong - // time due to an abnormal WebSocket closure. - // - this._deflate.on('error', NOOP); - this._deflate.on('data', deflateOnData); - } - - this._deflate[kCallback] = callback; - - this._deflate.write(data); - this._deflate.flush(zlib.Z_SYNC_FLUSH, () => { - if (!this._deflate) { - // - // The deflate stream was closed while data was being processed. - // - return; - } - - let data = bufferUtil.concat( - this._deflate[kBuffers], - this._deflate[kTotalLength] - ); - - if (fin) data = data.slice(0, data.length - 4); - - // - // Ensure that the callback will not be called again in - // `PerMessageDeflate#cleanup()`. - // - this._deflate[kCallback] = null; - - this._deflate[kTotalLength] = 0; - this._deflate[kBuffers] = []; - - if (fin && this.params[`${endpoint}_no_context_takeover`]) { - this._deflate.reset(); - } - - callback(null, data); - }); - } -} - -module.exports = PerMessageDeflate; - -/** - * The listener of the `zlib.DeflateRaw` stream `'data'` event. - * - * @param {Buffer} chunk A chunk of data - * @private - */ -function deflateOnData(chunk) { - this[kBuffers].push(chunk); - this[kTotalLength] += chunk.length; -} - -/** - * The listener of the `zlib.InflateRaw` stream `'data'` event. - * - * @param {Buffer} chunk A chunk of data - * @private - */ -function inflateOnData(chunk) { - this[kTotalLength] += chunk.length; - - if ( - this[kPerMessageDeflate]._maxPayload < 1 || - this[kTotalLength] <= this[kPerMessageDeflate]._maxPayload - ) { - this[kBuffers].push(chunk); - return; - } - - this[kError] = new RangeError('Max payload size exceeded'); - this[kError][kStatusCode] = 1009; - this.removeListener('data', inflateOnData); - this.reset(); -} - -/** - * The listener of the `zlib.InflateRaw` stream `'error'` event. - * - * @param {Error} err The emitted error - * @private - */ -function inflateOnError(err) { - // - // There is no need to call `Zlib#close()` as the handle is automatically - // closed when an error is emitted. - // - this[kPerMessageDeflate]._inflate = null; - err[kStatusCode] = 1007; - this[kCallback](err); -} - - -/***/ }), - -/***/ 18508: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -const { Writable } = __nccwpck_require__(2203); - -const PerMessageDeflate = __nccwpck_require__(88389); -const { - BINARY_TYPES, - EMPTY_BUFFER, - kStatusCode, - kWebSocket -} = __nccwpck_require__(83400); -const { concat, toArrayBuffer, unmask } = __nccwpck_require__(17932); -const { isValidStatusCode, isValidUTF8 } = __nccwpck_require__(91802); - -const GET_INFO = 0; -const GET_PAYLOAD_LENGTH_16 = 1; -const GET_PAYLOAD_LENGTH_64 = 2; -const GET_MASK = 3; -const GET_DATA = 4; -const INFLATING = 5; - -/** - * HyBi Receiver implementation. - * - * @extends stream.Writable - */ -class Receiver extends Writable { - /** - * Creates a Receiver instance. - * - * @param {String} [binaryType=nodebuffer] The type for binary data - * @param {Object} [extensions] An object containing the negotiated extensions - * @param {Boolean} [isServer=false] Specifies whether to operate in client or - * server mode - * @param {Number} [maxPayload=0] The maximum allowed message length - */ - constructor(binaryType, extensions, isServer, maxPayload) { - super(); - - this._binaryType = binaryType || BINARY_TYPES[0]; - this[kWebSocket] = undefined; - this._extensions = extensions || {}; - this._isServer = !!isServer; - this._maxPayload = maxPayload | 0; - - this._bufferedBytes = 0; - this._buffers = []; - - this._compressed = false; - this._payloadLength = 0; - this._mask = undefined; - this._fragmented = 0; - this._masked = false; - this._fin = false; - this._opcode = 0; - - this._totalPayloadLength = 0; - this._messageLength = 0; - this._fragments = []; - - this._state = GET_INFO; - this._loop = false; - } - - /** - * Implements `Writable.prototype._write()`. - * - * @param {Buffer} chunk The chunk of data to write - * @param {String} encoding The character encoding of `chunk` - * @param {Function} cb Callback - * @private - */ - _write(chunk, encoding, cb) { - if (this._opcode === 0x08 && this._state == GET_INFO) return cb(); - - this._bufferedBytes += chunk.length; - this._buffers.push(chunk); - this.startLoop(cb); - } - - /** - * Consumes `n` bytes from the buffered data. - * - * @param {Number} n The number of bytes to consume - * @return {Buffer} The consumed bytes - * @private - */ - consume(n) { - this._bufferedBytes -= n; - - if (n === this._buffers[0].length) return this._buffers.shift(); - - if (n < this._buffers[0].length) { - const buf = this._buffers[0]; - this._buffers[0] = buf.slice(n); - return buf.slice(0, n); - } - - const dst = Buffer.allocUnsafe(n); - - do { - const buf = this._buffers[0]; - const offset = dst.length - n; - - if (n >= buf.length) { - dst.set(this._buffers.shift(), offset); - } else { - dst.set(new Uint8Array(buf.buffer, buf.byteOffset, n), offset); - this._buffers[0] = buf.slice(n); - } - - n -= buf.length; - } while (n > 0); - - return dst; - } - - /** - * Starts the parsing loop. - * - * @param {Function} cb Callback - * @private - */ - startLoop(cb) { - let err; - this._loop = true; - - do { - switch (this._state) { - case GET_INFO: - err = this.getInfo(); - break; - case GET_PAYLOAD_LENGTH_16: - err = this.getPayloadLength16(); - break; - case GET_PAYLOAD_LENGTH_64: - err = this.getPayloadLength64(); - break; - case GET_MASK: - this.getMask(); - break; - case GET_DATA: - err = this.getData(cb); - break; - default: - // `INFLATING` - this._loop = false; - return; - } - } while (this._loop); - - cb(err); - } - - /** - * Reads the first two bytes of a frame. - * - * @return {(RangeError|undefined)} A possible error - * @private - */ - getInfo() { - if (this._bufferedBytes < 2) { - this._loop = false; - return; - } - - const buf = this.consume(2); - - if ((buf[0] & 0x30) !== 0x00) { - this._loop = false; - return error(RangeError, 'RSV2 and RSV3 must be clear', true, 1002); - } - - const compressed = (buf[0] & 0x40) === 0x40; - - if (compressed && !this._extensions[PerMessageDeflate.extensionName]) { - this._loop = false; - return error(RangeError, 'RSV1 must be clear', true, 1002); - } - - this._fin = (buf[0] & 0x80) === 0x80; - this._opcode = buf[0] & 0x0f; - this._payloadLength = buf[1] & 0x7f; - - if (this._opcode === 0x00) { - if (compressed) { - this._loop = false; - return error(RangeError, 'RSV1 must be clear', true, 1002); - } - - if (!this._fragmented) { - this._loop = false; - return error(RangeError, 'invalid opcode 0', true, 1002); - } - - this._opcode = this._fragmented; - } else if (this._opcode === 0x01 || this._opcode === 0x02) { - if (this._fragmented) { - this._loop = false; - return error(RangeError, `invalid opcode ${this._opcode}`, true, 1002); - } - - this._compressed = compressed; - } else if (this._opcode > 0x07 && this._opcode < 0x0b) { - if (!this._fin) { - this._loop = false; - return error(RangeError, 'FIN must be set', true, 1002); - } - - if (compressed) { - this._loop = false; - return error(RangeError, 'RSV1 must be clear', true, 1002); - } - - if (this._payloadLength > 0x7d) { - this._loop = false; - return error( - RangeError, - `invalid payload length ${this._payloadLength}`, - true, - 1002 - ); - } - } else { - this._loop = false; - return error(RangeError, `invalid opcode ${this._opcode}`, true, 1002); - } - - if (!this._fin && !this._fragmented) this._fragmented = this._opcode; - this._masked = (buf[1] & 0x80) === 0x80; - - if (this._isServer) { - if (!this._masked) { - this._loop = false; - return error(RangeError, 'MASK must be set', true, 1002); - } - } else if (this._masked) { - this._loop = false; - return error(RangeError, 'MASK must be clear', true, 1002); - } - - if (this._payloadLength === 126) this._state = GET_PAYLOAD_LENGTH_16; - else if (this._payloadLength === 127) this._state = GET_PAYLOAD_LENGTH_64; - else return this.haveLength(); - } - - /** - * Gets extended payload length (7+16). - * - * @return {(RangeError|undefined)} A possible error - * @private - */ - getPayloadLength16() { - if (this._bufferedBytes < 2) { - this._loop = false; - return; - } - - this._payloadLength = this.consume(2).readUInt16BE(0); - return this.haveLength(); - } - - /** - * Gets extended payload length (7+64). - * - * @return {(RangeError|undefined)} A possible error - * @private - */ - getPayloadLength64() { - if (this._bufferedBytes < 8) { - this._loop = false; - return; - } - - const buf = this.consume(8); - const num = buf.readUInt32BE(0); - - // - // The maximum safe integer in JavaScript is 2^53 - 1. An error is returned - // if payload length is greater than this number. - // - if (num > Math.pow(2, 53 - 32) - 1) { - this._loop = false; - return error( - RangeError, - 'Unsupported WebSocket frame: payload length > 2^53 - 1', - false, - 1009 - ); - } - - this._payloadLength = num * Math.pow(2, 32) + buf.readUInt32BE(4); - return this.haveLength(); - } - - /** - * Payload length has been read. - * - * @return {(RangeError|undefined)} A possible error - * @private - */ - haveLength() { - if (this._payloadLength && this._opcode < 0x08) { - this._totalPayloadLength += this._payloadLength; - if (this._totalPayloadLength > this._maxPayload && this._maxPayload > 0) { - this._loop = false; - return error(RangeError, 'Max payload size exceeded', false, 1009); - } - } - - if (this._masked) this._state = GET_MASK; - else this._state = GET_DATA; - } - - /** - * Reads mask bytes. - * - * @private - */ - getMask() { - if (this._bufferedBytes < 4) { - this._loop = false; - return; - } - - this._mask = this.consume(4); - this._state = GET_DATA; - } - - /** - * Reads data bytes. - * - * @param {Function} cb Callback - * @return {(Error|RangeError|undefined)} A possible error - * @private - */ - getData(cb) { - let data = EMPTY_BUFFER; - - if (this._payloadLength) { - if (this._bufferedBytes < this._payloadLength) { - this._loop = false; - return; - } - - data = this.consume(this._payloadLength); - if (this._masked) unmask(data, this._mask); - } - - if (this._opcode > 0x07) return this.controlMessage(data); - - if (this._compressed) { - this._state = INFLATING; - this.decompress(data, cb); - return; - } - - if (data.length) { - // - // This message is not compressed so its lenght is the sum of the payload - // length of all fragments. - // - this._messageLength = this._totalPayloadLength; - this._fragments.push(data); - } - - return this.dataMessage(); - } - - /** - * Decompresses data. - * - * @param {Buffer} data Compressed data - * @param {Function} cb Callback - * @private - */ - decompress(data, cb) { - const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName]; - - perMessageDeflate.decompress(data, this._fin, (err, buf) => { - if (err) return cb(err); - - if (buf.length) { - this._messageLength += buf.length; - if (this._messageLength > this._maxPayload && this._maxPayload > 0) { - return cb( - error(RangeError, 'Max payload size exceeded', false, 1009) - ); - } - - this._fragments.push(buf); - } - - const er = this.dataMessage(); - if (er) return cb(er); - - this.startLoop(cb); - }); - } - - /** - * Handles a data message. - * - * @return {(Error|undefined)} A possible error - * @private - */ - dataMessage() { - if (this._fin) { - const messageLength = this._messageLength; - const fragments = this._fragments; - - this._totalPayloadLength = 0; - this._messageLength = 0; - this._fragmented = 0; - this._fragments = []; - - if (this._opcode === 2) { - let data; - - if (this._binaryType === 'nodebuffer') { - data = concat(fragments, messageLength); - } else if (this._binaryType === 'arraybuffer') { - data = toArrayBuffer(concat(fragments, messageLength)); - } else { - data = fragments; - } - - this.emit('message', data); - } else { - const buf = concat(fragments, messageLength); - - if (!isValidUTF8(buf)) { - this._loop = false; - return error(Error, 'invalid UTF-8 sequence', true, 1007); - } - - this.emit('message', buf.toString()); - } - } - - this._state = GET_INFO; - } - - /** - * Handles a control message. - * - * @param {Buffer} data Data to handle - * @return {(Error|RangeError|undefined)} A possible error - * @private - */ - controlMessage(data) { - if (this._opcode === 0x08) { - this._loop = false; - - if (data.length === 0) { - this.emit('conclude', 1005, ''); - this.end(); - } else if (data.length === 1) { - return error(RangeError, 'invalid payload length 1', true, 1002); - } else { - const code = data.readUInt16BE(0); - - if (!isValidStatusCode(code)) { - return error(RangeError, `invalid status code ${code}`, true, 1002); - } - - const buf = data.slice(2); - - if (!isValidUTF8(buf)) { - return error(Error, 'invalid UTF-8 sequence', true, 1007); - } - - this.emit('conclude', code, buf.toString()); - this.end(); - } - } else if (this._opcode === 0x09) { - this.emit('ping', data); - } else { - this.emit('pong', data); - } - - this._state = GET_INFO; - } -} - -module.exports = Receiver; - -/** - * Builds an error object. - * - * @param {(Error|RangeError)} ErrorCtor The error constructor - * @param {String} message The error message - * @param {Boolean} prefix Specifies whether or not to add a default prefix to - * `message` - * @param {Number} statusCode The status code - * @return {(Error|RangeError)} The error - * @private - */ -function error(ErrorCtor, message, prefix, statusCode) { - const err = new ErrorCtor( - prefix ? `Invalid WebSocket frame: ${message}` : message - ); - - Error.captureStackTrace(err, error); - err[kStatusCode] = statusCode; - return err; -} - - -/***/ }), - -/***/ 31780: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -const { randomFillSync } = __nccwpck_require__(76982); - -const PerMessageDeflate = __nccwpck_require__(88389); -const { EMPTY_BUFFER } = __nccwpck_require__(83400); -const { isValidStatusCode } = __nccwpck_require__(91802); -const { mask: applyMask, toBuffer } = __nccwpck_require__(17932); - -const mask = Buffer.alloc(4); - -/** - * HyBi Sender implementation. - */ -class Sender { - /** - * Creates a Sender instance. - * - * @param {net.Socket} socket The connection socket - * @param {Object} [extensions] An object containing the negotiated extensions - */ - constructor(socket, extensions) { - this._extensions = extensions || {}; - this._socket = socket; - - this._firstFragment = true; - this._compress = false; - - this._bufferedBytes = 0; - this._deflating = false; - this._queue = []; - } - - /** - * Frames a piece of data according to the HyBi WebSocket protocol. - * - * @param {Buffer} data The data to frame - * @param {Object} options Options object - * @param {Number} options.opcode The opcode - * @param {Boolean} [options.readOnly=false] Specifies whether `data` can be - * modified - * @param {Boolean} [options.fin=false] Specifies whether or not to set the - * FIN bit - * @param {Boolean} [options.mask=false] Specifies whether or not to mask - * `data` - * @param {Boolean} [options.rsv1=false] Specifies whether or not to set the - * RSV1 bit - * @return {Buffer[]} The framed data as a list of `Buffer` instances - * @public - */ - static frame(data, options) { - const merge = options.mask && options.readOnly; - let offset = options.mask ? 6 : 2; - let payloadLength = data.length; - - if (data.length >= 65536) { - offset += 8; - payloadLength = 127; - } else if (data.length > 125) { - offset += 2; - payloadLength = 126; - } - - const target = Buffer.allocUnsafe(merge ? data.length + offset : offset); - - target[0] = options.fin ? options.opcode | 0x80 : options.opcode; - if (options.rsv1) target[0] |= 0x40; - - target[1] = payloadLength; - - if (payloadLength === 126) { - target.writeUInt16BE(data.length, 2); - } else if (payloadLength === 127) { - target.writeUInt32BE(0, 2); - target.writeUInt32BE(data.length, 6); - } - - if (!options.mask) return [target, data]; - - randomFillSync(mask, 0, 4); - - target[1] |= 0x80; - target[offset - 4] = mask[0]; - target[offset - 3] = mask[1]; - target[offset - 2] = mask[2]; - target[offset - 1] = mask[3]; - - if (merge) { - applyMask(data, mask, target, offset, data.length); - return [target]; - } - - applyMask(data, mask, data, 0, data.length); - return [target, data]; - } - - /** - * Sends a close message to the other peer. - * - * @param {Number} [code] The status code component of the body - * @param {String} [data] The message component of the body - * @param {Boolean} [mask=false] Specifies whether or not to mask the message - * @param {Function} [cb] Callback - * @public - */ - close(code, data, mask, cb) { - let buf; - - if (code === undefined) { - buf = EMPTY_BUFFER; - } else if (typeof code !== 'number' || !isValidStatusCode(code)) { - throw new TypeError('First argument must be a valid error code number'); - } else if (data === undefined || data === '') { - buf = Buffer.allocUnsafe(2); - buf.writeUInt16BE(code, 0); - } else { - const length = Buffer.byteLength(data); - - if (length > 123) { - throw new RangeError('The message must not be greater than 123 bytes'); - } - - buf = Buffer.allocUnsafe(2 + length); - buf.writeUInt16BE(code, 0); - buf.write(data, 2); - } - - if (this._deflating) { - this.enqueue([this.doClose, buf, mask, cb]); - } else { - this.doClose(buf, mask, cb); - } - } - - /** - * Frames and sends a close message. - * - * @param {Buffer} data The message to send - * @param {Boolean} [mask=false] Specifies whether or not to mask `data` - * @param {Function} [cb] Callback - * @private - */ - doClose(data, mask, cb) { - this.sendFrame( - Sender.frame(data, { - fin: true, - rsv1: false, - opcode: 0x08, - mask, - readOnly: false - }), - cb - ); - } - - /** - * Sends a ping message to the other peer. - * - * @param {*} data The message to send - * @param {Boolean} [mask=false] Specifies whether or not to mask `data` - * @param {Function} [cb] Callback - * @public - */ - ping(data, mask, cb) { - const buf = toBuffer(data); - - if (buf.length > 125) { - throw new RangeError('The data size must not be greater than 125 bytes'); - } - - if (this._deflating) { - this.enqueue([this.doPing, buf, mask, toBuffer.readOnly, cb]); - } else { - this.doPing(buf, mask, toBuffer.readOnly, cb); - } - } - - /** - * Frames and sends a ping message. - * - * @param {Buffer} data The message to send - * @param {Boolean} [mask=false] Specifies whether or not to mask `data` - * @param {Boolean} [readOnly=false] Specifies whether `data` can be modified - * @param {Function} [cb] Callback - * @private - */ - doPing(data, mask, readOnly, cb) { - this.sendFrame( - Sender.frame(data, { - fin: true, - rsv1: false, - opcode: 0x09, - mask, - readOnly - }), - cb - ); - } - - /** - * Sends a pong message to the other peer. - * - * @param {*} data The message to send - * @param {Boolean} [mask=false] Specifies whether or not to mask `data` - * @param {Function} [cb] Callback - * @public - */ - pong(data, mask, cb) { - const buf = toBuffer(data); - - if (buf.length > 125) { - throw new RangeError('The data size must not be greater than 125 bytes'); - } - - if (this._deflating) { - this.enqueue([this.doPong, buf, mask, toBuffer.readOnly, cb]); - } else { - this.doPong(buf, mask, toBuffer.readOnly, cb); - } - } - - /** - * Frames and sends a pong message. - * - * @param {Buffer} data The message to send - * @param {Boolean} [mask=false] Specifies whether or not to mask `data` - * @param {Boolean} [readOnly=false] Specifies whether `data` can be modified - * @param {Function} [cb] Callback - * @private - */ - doPong(data, mask, readOnly, cb) { - this.sendFrame( - Sender.frame(data, { - fin: true, - rsv1: false, - opcode: 0x0a, - mask, - readOnly - }), - cb - ); - } - - /** - * Sends a data message to the other peer. - * - * @param {*} data The message to send - * @param {Object} options Options object - * @param {Boolean} [options.compress=false] Specifies whether or not to - * compress `data` - * @param {Boolean} [options.binary=false] Specifies whether `data` is binary - * or text - * @param {Boolean} [options.fin=false] Specifies whether the fragment is the - * last one - * @param {Boolean} [options.mask=false] Specifies whether or not to mask - * `data` - * @param {Function} [cb] Callback - * @public - */ - send(data, options, cb) { - const buf = toBuffer(data); - const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName]; - let opcode = options.binary ? 2 : 1; - let rsv1 = options.compress; - - if (this._firstFragment) { - this._firstFragment = false; - if (rsv1 && perMessageDeflate) { - rsv1 = buf.length >= perMessageDeflate._threshold; - } - this._compress = rsv1; - } else { - rsv1 = false; - opcode = 0; - } - - if (options.fin) this._firstFragment = true; - - if (perMessageDeflate) { - const opts = { - fin: options.fin, - rsv1, - opcode, - mask: options.mask, - readOnly: toBuffer.readOnly - }; - - if (this._deflating) { - this.enqueue([this.dispatch, buf, this._compress, opts, cb]); - } else { - this.dispatch(buf, this._compress, opts, cb); - } - } else { - this.sendFrame( - Sender.frame(buf, { - fin: options.fin, - rsv1: false, - opcode, - mask: options.mask, - readOnly: toBuffer.readOnly - }), - cb - ); - } - } - - /** - * Dispatches a data message. - * - * @param {Buffer} data The message to send - * @param {Boolean} [compress=false] Specifies whether or not to compress - * `data` - * @param {Object} options Options object - * @param {Number} options.opcode The opcode - * @param {Boolean} [options.readOnly=false] Specifies whether `data` can be - * modified - * @param {Boolean} [options.fin=false] Specifies whether or not to set the - * FIN bit - * @param {Boolean} [options.mask=false] Specifies whether or not to mask - * `data` - * @param {Boolean} [options.rsv1=false] Specifies whether or not to set the - * RSV1 bit - * @param {Function} [cb] Callback - * @private - */ - dispatch(data, compress, options, cb) { - if (!compress) { - this.sendFrame(Sender.frame(data, options), cb); - return; - } - - const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName]; - - this._bufferedBytes += data.length; - this._deflating = true; - perMessageDeflate.compress(data, options.fin, (_, buf) => { - if (this._socket.destroyed) { - const err = new Error( - 'The socket was closed while data was being compressed' - ); - - if (typeof cb === 'function') cb(err); - - for (let i = 0; i < this._queue.length; i++) { - const callback = this._queue[i][4]; - - if (typeof callback === 'function') callback(err); - } - - return; - } - - this._bufferedBytes -= data.length; - this._deflating = false; - options.readOnly = false; - this.sendFrame(Sender.frame(buf, options), cb); - this.dequeue(); - }); - } - - /** - * Executes queued send operations. - * - * @private - */ - dequeue() { - while (!this._deflating && this._queue.length) { - const params = this._queue.shift(); - - this._bufferedBytes -= params[1].length; - Reflect.apply(params[0], this, params.slice(1)); - } - } - - /** - * Enqueues a send operation. - * - * @param {Array} params Send operation parameters. - * @private - */ - enqueue(params) { - this._bufferedBytes += params[1].length; - this._queue.push(params); - } - - /** - * Sends a frame. - * - * @param {Buffer[]} list The frame to send - * @param {Function} [cb] Callback - * @private - */ - sendFrame(list, cb) { - if (list.length === 2) { - this._socket.cork(); - this._socket.write(list[0]); - this._socket.write(list[1], cb); - this._socket.uncork(); - } else { - this._socket.write(list[0], cb); - } - } -} - -module.exports = Sender; - - -/***/ }), - -/***/ 62117: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -const { Duplex } = __nccwpck_require__(2203); - -/** - * Emits the `'close'` event on a stream. - * - * @param {stream.Duplex} The stream. - * @private - */ -function emitClose(stream) { - stream.emit('close'); -} - -/** - * The listener of the `'end'` event. - * - * @private - */ -function duplexOnEnd() { - if (!this.destroyed && this._writableState.finished) { - this.destroy(); - } -} - -/** - * The listener of the `'error'` event. - * - * @param {Error} err The error - * @private - */ -function duplexOnError(err) { - this.removeListener('error', duplexOnError); - this.destroy(); - if (this.listenerCount('error') === 0) { - // Do not suppress the throwing behavior. - this.emit('error', err); - } -} - -/** - * Wraps a `WebSocket` in a duplex stream. - * - * @param {WebSocket} ws The `WebSocket` to wrap - * @param {Object} [options] The options for the `Duplex` constructor - * @return {stream.Duplex} The duplex stream - * @public - */ -function createWebSocketStream(ws, options) { - let resumeOnReceiverDrain = true; - - function receiverOnDrain() { - if (resumeOnReceiverDrain) ws._socket.resume(); - } - - if (ws.readyState === ws.CONNECTING) { - ws.once('open', function open() { - ws._receiver.removeAllListeners('drain'); - ws._receiver.on('drain', receiverOnDrain); - }); - } else { - ws._receiver.removeAllListeners('drain'); - ws._receiver.on('drain', receiverOnDrain); - } - - const duplex = new Duplex({ - ...options, - autoDestroy: false, - emitClose: false, - objectMode: false, - writableObjectMode: false - }); - - ws.on('message', function message(msg) { - if (!duplex.push(msg)) { - resumeOnReceiverDrain = false; - ws._socket.pause(); - } - }); - - ws.once('error', function error(err) { - if (duplex.destroyed) return; - - duplex.destroy(err); - }); - - ws.once('close', function close() { - if (duplex.destroyed) return; - - duplex.push(null); - }); - - duplex._destroy = function (err, callback) { - if (ws.readyState === ws.CLOSED) { - callback(err); - process.nextTick(emitClose, duplex); - return; - } - - let called = false; - - ws.once('error', function error(err) { - called = true; - callback(err); - }); - - ws.once('close', function close() { - if (!called) callback(err); - process.nextTick(emitClose, duplex); - }); - ws.terminate(); - }; - - duplex._final = function (callback) { - if (ws.readyState === ws.CONNECTING) { - ws.once('open', function open() { - duplex._final(callback); - }); - return; - } - - // If the value of the `_socket` property is `null` it means that `ws` is a - // client websocket and the handshake failed. In fact, when this happens, a - // socket is never assigned to the websocket. Wait for the `'error'` event - // that will be emitted by the websocket. - if (ws._socket === null) return; - - if (ws._socket._writableState.finished) { - callback(); - if (duplex._readableState.endEmitted) duplex.destroy(); - } else { - ws._socket.once('finish', function finish() { - // `duplex` is not destroyed here because the `'end'` event will be - // emitted on `duplex` after this `'finish'` event. The EOF signaling - // `null` chunk is, in fact, pushed when the websocket emits `'close'`. - callback(); - }); - ws.close(); - } - }; - - duplex._read = function () { - if (ws.readyState === ws.OPEN && !resumeOnReceiverDrain) { - resumeOnReceiverDrain = true; - if (!ws._receiver._writableState.needDrain) ws._socket.resume(); - } - }; - - duplex._write = function (chunk, encoding, callback) { - if (ws.readyState === ws.CONNECTING) { - ws.once('open', function open() { - duplex._write(chunk, encoding, callback); - }); - return; - } - - ws.send(chunk, callback); - }; - - duplex.on('end', duplexOnEnd); - duplex.on('error', duplexOnError); - return duplex; -} - -module.exports = createWebSocketStream; - - -/***/ }), - -/***/ 91802: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -/** - * Checks if a status code is allowed in a close frame. - * - * @param {Number} code The status code - * @return {Boolean} `true` if the status code is valid, else `false` - * @public - */ -function isValidStatusCode(code) { - return ( - (code >= 1000 && - code <= 1014 && - code !== 1004 && - code !== 1005 && - code !== 1006) || - (code >= 3000 && code <= 4999) - ); -} - -/** - * Checks if a given buffer contains only correct UTF-8. - * Ported from https://www.cl.cam.ac.uk/%7Emgk25/ucs/utf8_check.c by - * Markus Kuhn. - * - * @param {Buffer} buf The buffer to check - * @return {Boolean} `true` if `buf` contains only correct UTF-8, else `false` - * @public - */ -function _isValidUTF8(buf) { - const len = buf.length; - let i = 0; - - while (i < len) { - if ((buf[i] & 0x80) === 0) { - // 0xxxxxxx - i++; - } else if ((buf[i] & 0xe0) === 0xc0) { - // 110xxxxx 10xxxxxx - if ( - i + 1 === len || - (buf[i + 1] & 0xc0) !== 0x80 || - (buf[i] & 0xfe) === 0xc0 // Overlong - ) { - return false; - } - - i += 2; - } else if ((buf[i] & 0xf0) === 0xe0) { - // 1110xxxx 10xxxxxx 10xxxxxx - if ( - i + 2 >= len || - (buf[i + 1] & 0xc0) !== 0x80 || - (buf[i + 2] & 0xc0) !== 0x80 || - (buf[i] === 0xe0 && (buf[i + 1] & 0xe0) === 0x80) || // Overlong - (buf[i] === 0xed && (buf[i + 1] & 0xe0) === 0xa0) // Surrogate (U+D800 - U+DFFF) - ) { - return false; - } - - i += 3; - } else if ((buf[i] & 0xf8) === 0xf0) { - // 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx - if ( - i + 3 >= len || - (buf[i + 1] & 0xc0) !== 0x80 || - (buf[i + 2] & 0xc0) !== 0x80 || - (buf[i + 3] & 0xc0) !== 0x80 || - (buf[i] === 0xf0 && (buf[i + 1] & 0xf0) === 0x80) || // Overlong - (buf[i] === 0xf4 && buf[i + 1] > 0x8f) || - buf[i] > 0xf4 // > U+10FFFF - ) { - return false; - } - - i += 4; - } else { - return false; - } - } - - return true; -} - -try { - let isValidUTF8 = __nccwpck_require__(62414); - - /* istanbul ignore if */ - if (typeof isValidUTF8 === 'object') { - isValidUTF8 = isValidUTF8.Validation.isValidUTF8; // utf-8-validate@<3.0.0 - } - - module.exports = { - isValidStatusCode, - isValidUTF8(buf) { - return buf.length < 150 ? _isValidUTF8(buf) : isValidUTF8(buf); - } - }; -} catch (e) /* istanbul ignore next */ { - module.exports = { - isValidStatusCode, - isValidUTF8: _isValidUTF8 - }; -} - - -/***/ }), - -/***/ 72672: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -const EventEmitter = __nccwpck_require__(24434); -const { createHash } = __nccwpck_require__(76982); -const { createServer, STATUS_CODES } = __nccwpck_require__(58611); - -const PerMessageDeflate = __nccwpck_require__(88389); -const WebSocket = __nccwpck_require__(9462); -const { format, parse } = __nccwpck_require__(34752); -const { GUID, kWebSocket } = __nccwpck_require__(83400); - -const keyRegex = /^[+/0-9A-Za-z]{22}==$/; - -/** - * Class representing a WebSocket server. - * - * @extends EventEmitter - */ -class WebSocketServer extends EventEmitter { - /** - * Create a `WebSocketServer` instance. - * - * @param {Object} options Configuration options - * @param {Number} [options.backlog=511] The maximum length of the queue of - * pending connections - * @param {Boolean} [options.clientTracking=true] Specifies whether or not to - * track clients - * @param {Function} [options.handleProtocols] A hook to handle protocols - * @param {String} [options.host] The hostname where to bind the server - * @param {Number} [options.maxPayload=104857600] The maximum allowed message - * size - * @param {Boolean} [options.noServer=false] Enable no server mode - * @param {String} [options.path] Accept only connections matching this path - * @param {(Boolean|Object)} [options.perMessageDeflate=false] Enable/disable - * permessage-deflate - * @param {Number} [options.port] The port where to bind the server - * @param {http.Server} [options.server] A pre-created HTTP/S server to use - * @param {Function} [options.verifyClient] A hook to reject connections - * @param {Function} [callback] A listener for the `listening` event - */ - constructor(options, callback) { - super(); - - options = { - maxPayload: 100 * 1024 * 1024, - perMessageDeflate: false, - handleProtocols: null, - clientTracking: true, - verifyClient: null, - noServer: false, - backlog: null, // use default (511 as implemented in net.js) - server: null, - host: null, - path: null, - port: null, - ...options - }; - - if (options.port == null && !options.server && !options.noServer) { - throw new TypeError( - 'One of the "port", "server", or "noServer" options must be specified' - ); - } - - if (options.port != null) { - this._server = createServer((req, res) => { - const body = STATUS_CODES[426]; - - res.writeHead(426, { - 'Content-Length': body.length, - 'Content-Type': 'text/plain' - }); - res.end(body); - }); - this._server.listen( - options.port, - options.host, - options.backlog, - callback - ); - } else if (options.server) { - this._server = options.server; - } - - if (this._server) { - const emitConnection = this.emit.bind(this, 'connection'); - - this._removeListeners = addListeners(this._server, { - listening: this.emit.bind(this, 'listening'), - error: this.emit.bind(this, 'error'), - upgrade: (req, socket, head) => { - this.handleUpgrade(req, socket, head, emitConnection); - } - }); - } - - if (options.perMessageDeflate === true) options.perMessageDeflate = {}; - if (options.clientTracking) this.clients = new Set(); - this.options = options; - } - - /** - * Returns the bound address, the address family name, and port of the server - * as reported by the operating system if listening on an IP socket. - * If the server is listening on a pipe or UNIX domain socket, the name is - * returned as a string. - * - * @return {(Object|String|null)} The address of the server - * @public - */ - address() { - if (this.options.noServer) { - throw new Error('The server is operating in "noServer" mode'); - } - - if (!this._server) return null; - return this._server.address(); - } - - /** - * Close the server. - * - * @param {Function} [cb] Callback - * @public - */ - close(cb) { - if (cb) this.once('close', cb); - - // - // Terminate all associated clients. - // - if (this.clients) { - for (const client of this.clients) client.terminate(); - } - - const server = this._server; - - if (server) { - this._removeListeners(); - this._removeListeners = this._server = null; - - // - // Close the http server if it was internally created. - // - if (this.options.port != null) { - server.close(() => this.emit('close')); - return; - } - } - - process.nextTick(emitClose, this); - } - - /** - * See if a given request should be handled by this server instance. - * - * @param {http.IncomingMessage} req Request object to inspect - * @return {Boolean} `true` if the request is valid, else `false` - * @public - */ - shouldHandle(req) { - if (this.options.path) { - const index = req.url.indexOf('?'); - const pathname = index !== -1 ? req.url.slice(0, index) : req.url; - - if (pathname !== this.options.path) return false; - } - - return true; - } - - /** - * Handle a HTTP Upgrade request. - * - * @param {http.IncomingMessage} req The request object - * @param {net.Socket} socket The network socket between the server and client - * @param {Buffer} head The first packet of the upgraded stream - * @param {Function} cb Callback - * @public - */ - handleUpgrade(req, socket, head, cb) { - socket.on('error', socketOnError); - - const key = - req.headers['sec-websocket-key'] !== undefined - ? req.headers['sec-websocket-key'].trim() - : false; - const version = +req.headers['sec-websocket-version']; - const extensions = {}; - - if ( - req.method !== 'GET' || - req.headers.upgrade.toLowerCase() !== 'websocket' || - !key || - !keyRegex.test(key) || - (version !== 8 && version !== 13) || - !this.shouldHandle(req) - ) { - return abortHandshake(socket, 400); - } - - if (this.options.perMessageDeflate) { - const perMessageDeflate = new PerMessageDeflate( - this.options.perMessageDeflate, - true, - this.options.maxPayload - ); - - try { - const offers = parse(req.headers['sec-websocket-extensions']); - - if (offers[PerMessageDeflate.extensionName]) { - perMessageDeflate.accept(offers[PerMessageDeflate.extensionName]); - extensions[PerMessageDeflate.extensionName] = perMessageDeflate; - } - } catch (err) { - return abortHandshake(socket, 400); - } - } - - // - // Optionally call external client verification handler. - // - if (this.options.verifyClient) { - const info = { - origin: - req.headers[`${version === 8 ? 'sec-websocket-origin' : 'origin'}`], - secure: !!(req.socket.authorized || req.socket.encrypted), - req - }; - - if (this.options.verifyClient.length === 2) { - this.options.verifyClient(info, (verified, code, message, headers) => { - if (!verified) { - return abortHandshake(socket, code || 401, message, headers); - } - - this.completeUpgrade(key, extensions, req, socket, head, cb); - }); - return; - } - - if (!this.options.verifyClient(info)) return abortHandshake(socket, 401); - } - - this.completeUpgrade(key, extensions, req, socket, head, cb); - } - - /** - * Upgrade the connection to WebSocket. - * - * @param {String} key The value of the `Sec-WebSocket-Key` header - * @param {Object} extensions The accepted extensions - * @param {http.IncomingMessage} req The request object - * @param {net.Socket} socket The network socket between the server and client - * @param {Buffer} head The first packet of the upgraded stream - * @param {Function} cb Callback - * @throws {Error} If called more than once with the same socket - * @private - */ - completeUpgrade(key, extensions, req, socket, head, cb) { - // - // Destroy the socket if the client has already sent a FIN packet. - // - if (!socket.readable || !socket.writable) return socket.destroy(); - - if (socket[kWebSocket]) { - throw new Error( - 'server.handleUpgrade() was called more than once with the same ' + - 'socket, possibly due to a misconfiguration' - ); - } - - const digest = createHash('sha1') - .update(key + GUID) - .digest('base64'); - - const headers = [ - 'HTTP/1.1 101 Switching Protocols', - 'Upgrade: websocket', - 'Connection: Upgrade', - `Sec-WebSocket-Accept: ${digest}` - ]; - - const ws = new WebSocket(null); - let protocol = req.headers['sec-websocket-protocol']; - - if (protocol) { - protocol = protocol.split(',').map(trim); - - // - // Optionally call external protocol selection handler. - // - if (this.options.handleProtocols) { - protocol = this.options.handleProtocols(protocol, req); - } else { - protocol = protocol[0]; - } - - if (protocol) { - headers.push(`Sec-WebSocket-Protocol: ${protocol}`); - ws._protocol = protocol; - } - } - - if (extensions[PerMessageDeflate.extensionName]) { - const params = extensions[PerMessageDeflate.extensionName].params; - const value = format({ - [PerMessageDeflate.extensionName]: [params] - }); - headers.push(`Sec-WebSocket-Extensions: ${value}`); - ws._extensions = extensions; - } - - // - // Allow external modification/inspection of handshake headers. - // - this.emit('headers', headers, req); - - socket.write(headers.concat('\r\n').join('\r\n')); - socket.removeListener('error', socketOnError); - - ws.setSocket(socket, head, this.options.maxPayload); - - if (this.clients) { - this.clients.add(ws); - ws.on('close', () => this.clients.delete(ws)); - } - - cb(ws, req); - } -} - -module.exports = WebSocketServer; - -/** - * Add event listeners on an `EventEmitter` using a map of - * pairs. - * - * @param {EventEmitter} server The event emitter - * @param {Object.} map The listeners to add - * @return {Function} A function that will remove the added listeners when - * called - * @private - */ -function addListeners(server, map) { - for (const event of Object.keys(map)) server.on(event, map[event]); - - return function removeListeners() { - for (const event of Object.keys(map)) { - server.removeListener(event, map[event]); - } - }; -} - -/** - * Emit a `'close'` event on an `EventEmitter`. - * - * @param {EventEmitter} server The event emitter - * @private - */ -function emitClose(server) { - server.emit('close'); -} - -/** - * Handle premature socket errors. - * - * @private - */ -function socketOnError() { - this.destroy(); -} - -/** - * Close the connection when preconditions are not fulfilled. - * - * @param {net.Socket} socket The socket of the upgrade request - * @param {Number} code The HTTP response status code - * @param {String} [message] The HTTP response body - * @param {Object} [headers] Additional HTTP response headers - * @private - */ -function abortHandshake(socket, code, message, headers) { - if (socket.writable) { - message = message || STATUS_CODES[code]; - headers = { - Connection: 'close', - 'Content-Type': 'text/html', - 'Content-Length': Buffer.byteLength(message), - ...headers - }; - - socket.write( - `HTTP/1.1 ${code} ${STATUS_CODES[code]}\r\n` + - Object.keys(headers) - .map((h) => `${h}: ${headers[h]}`) - .join('\r\n') + - '\r\n\r\n' + - message - ); - } - - socket.removeListener('error', socketOnError); - socket.destroy(); -} - -/** - * Remove whitespace characters from both ends of a string. - * - * @param {String} str The string - * @return {String} A new string representing `str` stripped of whitespace - * characters from both its beginning and end - * @private - */ -function trim(str) { - return str.trim(); -} - - -/***/ }), - -/***/ 9462: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -const EventEmitter = __nccwpck_require__(24434); -const https = __nccwpck_require__(65692); -const http = __nccwpck_require__(58611); -const net = __nccwpck_require__(69278); -const tls = __nccwpck_require__(64756); -const { randomBytes, createHash } = __nccwpck_require__(76982); -const { URL } = __nccwpck_require__(87016); - -const PerMessageDeflate = __nccwpck_require__(88389); -const Receiver = __nccwpck_require__(18508); -const Sender = __nccwpck_require__(31780); -const { - BINARY_TYPES, - EMPTY_BUFFER, - GUID, - kStatusCode, - kWebSocket, - NOOP -} = __nccwpck_require__(83400); -const { addEventListener, removeEventListener } = __nccwpck_require__(92755); -const { format, parse } = __nccwpck_require__(34752); -const { toBuffer } = __nccwpck_require__(17932); - -const readyStates = ['CONNECTING', 'OPEN', 'CLOSING', 'CLOSED']; -const protocolVersions = [8, 13]; -const closeTimeout = 30 * 1000; - -/** - * Class representing a WebSocket. - * - * @extends EventEmitter - */ -class WebSocket extends EventEmitter { - /** - * Create a new `WebSocket`. - * - * @param {(String|url.URL)} address The URL to which to connect - * @param {(String|String[])} [protocols] The subprotocols - * @param {Object} [options] Connection options - */ - constructor(address, protocols, options) { - super(); - - this._binaryType = BINARY_TYPES[0]; - this._closeCode = 1006; - this._closeFrameReceived = false; - this._closeFrameSent = false; - this._closeMessage = ''; - this._closeTimer = null; - this._extensions = {}; - this._protocol = ''; - this._readyState = WebSocket.CONNECTING; - this._receiver = null; - this._sender = null; - this._socket = null; - - if (address !== null) { - this._bufferedAmount = 0; - this._isServer = false; - this._redirects = 0; - - if (Array.isArray(protocols)) { - protocols = protocols.join(', '); - } else if (typeof protocols === 'object' && protocols !== null) { - options = protocols; - protocols = undefined; - } - - initAsClient(this, address, protocols, options); - } else { - this._isServer = true; - } - } - - /** - * This deviates from the WHATWG interface since ws doesn't support the - * required default "blob" type (instead we define a custom "nodebuffer" - * type). - * - * @type {String} - */ - get binaryType() { - return this._binaryType; - } - - set binaryType(type) { - if (!BINARY_TYPES.includes(type)) return; - - this._binaryType = type; - - // - // Allow to change `binaryType` on the fly. - // - if (this._receiver) this._receiver._binaryType = type; - } - - /** - * @type {Number} - */ - get bufferedAmount() { - if (!this._socket) return this._bufferedAmount; - - return this._socket._writableState.length + this._sender._bufferedBytes; - } - - /** - * @type {String} - */ - get extensions() { - return Object.keys(this._extensions).join(); - } - - /** - * @type {String} - */ - get protocol() { - return this._protocol; - } - - /** - * @type {Number} - */ - get readyState() { - return this._readyState; - } - - /** - * @type {String} - */ - get url() { - return this._url; - } - - /** - * Set up the socket and the internal resources. - * - * @param {net.Socket} socket The network socket between the server and client - * @param {Buffer} head The first packet of the upgraded stream - * @param {Number} [maxPayload=0] The maximum allowed message size - * @private - */ - setSocket(socket, head, maxPayload) { - const receiver = new Receiver( - this.binaryType, - this._extensions, - this._isServer, - maxPayload - ); - - this._sender = new Sender(socket, this._extensions); - this._receiver = receiver; - this._socket = socket; - - receiver[kWebSocket] = this; - socket[kWebSocket] = this; - - receiver.on('conclude', receiverOnConclude); - receiver.on('drain', receiverOnDrain); - receiver.on('error', receiverOnError); - receiver.on('message', receiverOnMessage); - receiver.on('ping', receiverOnPing); - receiver.on('pong', receiverOnPong); - - socket.setTimeout(0); - socket.setNoDelay(); - - if (head.length > 0) socket.unshift(head); - - socket.on('close', socketOnClose); - socket.on('data', socketOnData); - socket.on('end', socketOnEnd); - socket.on('error', socketOnError); - - this._readyState = WebSocket.OPEN; - this.emit('open'); - } - - /** - * Emit the `'close'` event. - * - * @private - */ - emitClose() { - if (!this._socket) { - this._readyState = WebSocket.CLOSED; - this.emit('close', this._closeCode, this._closeMessage); - return; - } - - if (this._extensions[PerMessageDeflate.extensionName]) { - this._extensions[PerMessageDeflate.extensionName].cleanup(); - } - - this._receiver.removeAllListeners(); - this._readyState = WebSocket.CLOSED; - this.emit('close', this._closeCode, this._closeMessage); - } - - /** - * Start a closing handshake. - * - * +----------+ +-----------+ +----------+ - * - - -|ws.close()|-->|close frame|-->|ws.close()|- - - - * | +----------+ +-----------+ +----------+ | - * +----------+ +-----------+ | - * CLOSING |ws.close()|<--|close frame|<--+-----+ CLOSING - * +----------+ +-----------+ | - * | | | +---+ | - * +------------------------+-->|fin| - - - - - * | +---+ | +---+ - * - - - - -|fin|<---------------------+ - * +---+ - * - * @param {Number} [code] Status code explaining why the connection is closing - * @param {String} [data] A string explaining why the connection is closing - * @public - */ - close(code, data) { - if (this.readyState === WebSocket.CLOSED) return; - if (this.readyState === WebSocket.CONNECTING) { - const msg = 'WebSocket was closed before the connection was established'; - return abortHandshake(this, this._req, msg); - } - - if (this.readyState === WebSocket.CLOSING) { - if (this._closeFrameSent && this._closeFrameReceived) this._socket.end(); - return; - } - - this._readyState = WebSocket.CLOSING; - this._sender.close(code, data, !this._isServer, (err) => { - // - // This error is handled by the `'error'` listener on the socket. We only - // want to know if the close frame has been sent here. - // - if (err) return; - - this._closeFrameSent = true; - if (this._closeFrameReceived) this._socket.end(); - }); - - // - // Specify a timeout for the closing handshake to complete. - // - this._closeTimer = setTimeout( - this._socket.destroy.bind(this._socket), - closeTimeout - ); - } - - /** - * Send a ping. - * - * @param {*} [data] The data to send - * @param {Boolean} [mask] Indicates whether or not to mask `data` - * @param {Function} [cb] Callback which is executed when the ping is sent - * @public - */ - ping(data, mask, cb) { - if (this.readyState === WebSocket.CONNECTING) { - throw new Error('WebSocket is not open: readyState 0 (CONNECTING)'); - } - - if (typeof data === 'function') { - cb = data; - data = mask = undefined; - } else if (typeof mask === 'function') { - cb = mask; - mask = undefined; - } - - if (typeof data === 'number') data = data.toString(); - - if (this.readyState !== WebSocket.OPEN) { - sendAfterClose(this, data, cb); - return; - } - - if (mask === undefined) mask = !this._isServer; - this._sender.ping(data || EMPTY_BUFFER, mask, cb); - } - - /** - * Send a pong. - * - * @param {*} [data] The data to send - * @param {Boolean} [mask] Indicates whether or not to mask `data` - * @param {Function} [cb] Callback which is executed when the pong is sent - * @public - */ - pong(data, mask, cb) { - if (this.readyState === WebSocket.CONNECTING) { - throw new Error('WebSocket is not open: readyState 0 (CONNECTING)'); - } - - if (typeof data === 'function') { - cb = data; - data = mask = undefined; - } else if (typeof mask === 'function') { - cb = mask; - mask = undefined; - } - - if (typeof data === 'number') data = data.toString(); - - if (this.readyState !== WebSocket.OPEN) { - sendAfterClose(this, data, cb); - return; - } - - if (mask === undefined) mask = !this._isServer; - this._sender.pong(data || EMPTY_BUFFER, mask, cb); - } - - /** - * Send a data message. - * - * @param {*} data The message to send - * @param {Object} [options] Options object - * @param {Boolean} [options.compress] Specifies whether or not to compress - * `data` - * @param {Boolean} [options.binary] Specifies whether `data` is binary or - * text - * @param {Boolean} [options.fin=true] Specifies whether the fragment is the - * last one - * @param {Boolean} [options.mask] Specifies whether or not to mask `data` - * @param {Function} [cb] Callback which is executed when data is written out - * @public - */ - send(data, options, cb) { - if (this.readyState === WebSocket.CONNECTING) { - throw new Error('WebSocket is not open: readyState 0 (CONNECTING)'); - } - - if (typeof options === 'function') { - cb = options; - options = {}; - } - - if (typeof data === 'number') data = data.toString(); - - if (this.readyState !== WebSocket.OPEN) { - sendAfterClose(this, data, cb); - return; - } - - const opts = { - binary: typeof data !== 'string', - mask: !this._isServer, - compress: true, - fin: true, - ...options - }; - - if (!this._extensions[PerMessageDeflate.extensionName]) { - opts.compress = false; - } - - this._sender.send(data || EMPTY_BUFFER, opts, cb); - } - - /** - * Forcibly close the connection. - * - * @public - */ - terminate() { - if (this.readyState === WebSocket.CLOSED) return; - if (this.readyState === WebSocket.CONNECTING) { - const msg = 'WebSocket was closed before the connection was established'; - return abortHandshake(this, this._req, msg); - } - - if (this._socket) { - this._readyState = WebSocket.CLOSING; - this._socket.destroy(); - } - } -} - -readyStates.forEach((readyState, i) => { - const descriptor = { enumerable: true, value: i }; - - Object.defineProperty(WebSocket.prototype, readyState, descriptor); - Object.defineProperty(WebSocket, readyState, descriptor); -}); - -[ - 'binaryType', - 'bufferedAmount', - 'extensions', - 'protocol', - 'readyState', - 'url' -].forEach((property) => { - Object.defineProperty(WebSocket.prototype, property, { enumerable: true }); -}); - -// -// Add the `onopen`, `onerror`, `onclose`, and `onmessage` attributes. -// See https://html.spec.whatwg.org/multipage/comms.html#the-websocket-interface -// -['open', 'error', 'close', 'message'].forEach((method) => { - Object.defineProperty(WebSocket.prototype, `on${method}`, { - configurable: true, - enumerable: true, - /** - * Return the listener of the event. - * - * @return {(Function|undefined)} The event listener or `undefined` - * @public - */ - get() { - const listeners = this.listeners(method); - for (let i = 0; i < listeners.length; i++) { - if (listeners[i]._listener) return listeners[i]._listener; - } - - return undefined; - }, - /** - * Add a listener for the event. - * - * @param {Function} listener The listener to add - * @public - */ - set(listener) { - const listeners = this.listeners(method); - for (let i = 0; i < listeners.length; i++) { - // - // Remove only the listeners added via `addEventListener`. - // - if (listeners[i]._listener) this.removeListener(method, listeners[i]); - } - this.addEventListener(method, listener); - } - }); -}); - -WebSocket.prototype.addEventListener = addEventListener; -WebSocket.prototype.removeEventListener = removeEventListener; - -module.exports = WebSocket; - -/** - * Initialize a WebSocket client. - * - * @param {WebSocket} websocket The client to initialize - * @param {(String|url.URL)} address The URL to which to connect - * @param {String} [protocols] The subprotocols - * @param {Object} [options] Connection options - * @param {(Boolean|Object)} [options.perMessageDeflate=true] Enable/disable - * permessage-deflate - * @param {Number} [options.handshakeTimeout] Timeout in milliseconds for the - * handshake request - * @param {Number} [options.protocolVersion=13] Value of the - * `Sec-WebSocket-Version` header - * @param {String} [options.origin] Value of the `Origin` or - * `Sec-WebSocket-Origin` header - * @param {Number} [options.maxPayload=104857600] The maximum allowed message - * size - * @param {Boolean} [options.followRedirects=false] Whether or not to follow - * redirects - * @param {Number} [options.maxRedirects=10] The maximum number of redirects - * allowed - * @private - */ -function initAsClient(websocket, address, protocols, options) { - const opts = { - protocolVersion: protocolVersions[1], - maxPayload: 100 * 1024 * 1024, - perMessageDeflate: true, - followRedirects: false, - maxRedirects: 10, - ...options, - createConnection: undefined, - socketPath: undefined, - hostname: undefined, - protocol: undefined, - timeout: undefined, - method: undefined, - host: undefined, - path: undefined, - port: undefined - }; - - if (!protocolVersions.includes(opts.protocolVersion)) { - throw new RangeError( - `Unsupported protocol version: ${opts.protocolVersion} ` + - `(supported versions: ${protocolVersions.join(', ')})` - ); - } - - let parsedUrl; - - if (address instanceof URL) { - parsedUrl = address; - websocket._url = address.href; - } else { - parsedUrl = new URL(address); - websocket._url = address; - } - - const isUnixSocket = parsedUrl.protocol === 'ws+unix:'; - - if (!parsedUrl.host && (!isUnixSocket || !parsedUrl.pathname)) { - throw new Error(`Invalid URL: ${websocket.url}`); - } - - const isSecure = - parsedUrl.protocol === 'wss:' || parsedUrl.protocol === 'https:'; - const defaultPort = isSecure ? 443 : 80; - const key = randomBytes(16).toString('base64'); - const get = isSecure ? https.get : http.get; - let perMessageDeflate; - - opts.createConnection = isSecure ? tlsConnect : netConnect; - opts.defaultPort = opts.defaultPort || defaultPort; - opts.port = parsedUrl.port || defaultPort; - opts.host = parsedUrl.hostname.startsWith('[') - ? parsedUrl.hostname.slice(1, -1) - : parsedUrl.hostname; - opts.headers = { - 'Sec-WebSocket-Version': opts.protocolVersion, - 'Sec-WebSocket-Key': key, - Connection: 'Upgrade', - Upgrade: 'websocket', - ...opts.headers - }; - opts.path = parsedUrl.pathname + parsedUrl.search; - opts.timeout = opts.handshakeTimeout; - - if (opts.perMessageDeflate) { - perMessageDeflate = new PerMessageDeflate( - opts.perMessageDeflate !== true ? opts.perMessageDeflate : {}, - false, - opts.maxPayload - ); - opts.headers['Sec-WebSocket-Extensions'] = format({ - [PerMessageDeflate.extensionName]: perMessageDeflate.offer() - }); - } - if (protocols) { - opts.headers['Sec-WebSocket-Protocol'] = protocols; - } - if (opts.origin) { - if (opts.protocolVersion < 13) { - opts.headers['Sec-WebSocket-Origin'] = opts.origin; - } else { - opts.headers.Origin = opts.origin; - } - } - if (parsedUrl.username || parsedUrl.password) { - opts.auth = `${parsedUrl.username}:${parsedUrl.password}`; - } - - if (isUnixSocket) { - const parts = opts.path.split(':'); - - opts.socketPath = parts[0]; - opts.path = parts[1]; - } - - let req = (websocket._req = get(opts)); - - if (opts.timeout) { - req.on('timeout', () => { - abortHandshake(websocket, req, 'Opening handshake has timed out'); - }); - } - - req.on('error', (err) => { - if (req === null || req.aborted) return; - - req = websocket._req = null; - websocket._readyState = WebSocket.CLOSING; - websocket.emit('error', err); - websocket.emitClose(); - }); - - req.on('response', (res) => { - const location = res.headers.location; - const statusCode = res.statusCode; - - if ( - location && - opts.followRedirects && - statusCode >= 300 && - statusCode < 400 - ) { - if (++websocket._redirects > opts.maxRedirects) { - abortHandshake(websocket, req, 'Maximum redirects exceeded'); - return; - } - - req.abort(); - - const addr = new URL(location, address); - - initAsClient(websocket, addr, protocols, options); - } else if (!websocket.emit('unexpected-response', req, res)) { - abortHandshake( - websocket, - req, - `Unexpected server response: ${res.statusCode}` - ); - } - }); - - req.on('upgrade', (res, socket, head) => { - websocket.emit('upgrade', res); - - // - // The user may have closed the connection from a listener of the `upgrade` - // event. - // - if (websocket.readyState !== WebSocket.CONNECTING) return; - - req = websocket._req = null; - - const digest = createHash('sha1') - .update(key + GUID) - .digest('base64'); - - if (res.headers['sec-websocket-accept'] !== digest) { - abortHandshake(websocket, socket, 'Invalid Sec-WebSocket-Accept header'); - return; - } - - const serverProt = res.headers['sec-websocket-protocol']; - const protList = (protocols || '').split(/, */); - let protError; - - if (!protocols && serverProt) { - protError = 'Server sent a subprotocol but none was requested'; - } else if (protocols && !serverProt) { - protError = 'Server sent no subprotocol'; - } else if (serverProt && !protList.includes(serverProt)) { - protError = 'Server sent an invalid subprotocol'; - } - - if (protError) { - abortHandshake(websocket, socket, protError); - return; - } - - if (serverProt) websocket._protocol = serverProt; - - if (perMessageDeflate) { - try { - const extensions = parse(res.headers['sec-websocket-extensions']); - - if (extensions[PerMessageDeflate.extensionName]) { - perMessageDeflate.accept(extensions[PerMessageDeflate.extensionName]); - websocket._extensions[PerMessageDeflate.extensionName] = - perMessageDeflate; - } - } catch (err) { - abortHandshake( - websocket, - socket, - 'Invalid Sec-WebSocket-Extensions header' - ); - return; - } - } - - websocket.setSocket(socket, head, opts.maxPayload); - }); -} - -/** - * Create a `net.Socket` and initiate a connection. - * - * @param {Object} options Connection options - * @return {net.Socket} The newly created socket used to start the connection - * @private - */ -function netConnect(options) { - options.path = options.socketPath; - return net.connect(options); -} - -/** - * Create a `tls.TLSSocket` and initiate a connection. - * - * @param {Object} options Connection options - * @return {tls.TLSSocket} The newly created socket used to start the connection - * @private - */ -function tlsConnect(options) { - options.path = undefined; - - if (!options.servername && options.servername !== '') { - options.servername = net.isIP(options.host) ? '' : options.host; - } - - return tls.connect(options); -} - -/** - * Abort the handshake and emit an error. - * - * @param {WebSocket} websocket The WebSocket instance - * @param {(http.ClientRequest|net.Socket)} stream The request to abort or the - * socket to destroy - * @param {String} message The error message - * @private - */ -function abortHandshake(websocket, stream, message) { - websocket._readyState = WebSocket.CLOSING; - - const err = new Error(message); - Error.captureStackTrace(err, abortHandshake); - - if (stream.setHeader) { - stream.abort(); - - if (stream.socket && !stream.socket.destroyed) { - // - // On Node.js >= 14.3.0 `request.abort()` does not destroy the socket if - // called after the request completed. See - // https://github.com/websockets/ws/issues/1869. - // - stream.socket.destroy(); - } - - stream.once('abort', websocket.emitClose.bind(websocket)); - websocket.emit('error', err); - } else { - stream.destroy(err); - stream.once('error', websocket.emit.bind(websocket, 'error')); - stream.once('close', websocket.emitClose.bind(websocket)); - } -} - -/** - * Handle cases where the `ping()`, `pong()`, or `send()` methods are called - * when the `readyState` attribute is `CLOSING` or `CLOSED`. - * - * @param {WebSocket} websocket The WebSocket instance - * @param {*} [data] The data to send - * @param {Function} [cb] Callback - * @private - */ -function sendAfterClose(websocket, data, cb) { - if (data) { - const length = toBuffer(data).length; - - // - // The `_bufferedAmount` property is used only when the peer is a client and - // the opening handshake fails. Under these circumstances, in fact, the - // `setSocket()` method is not called, so the `_socket` and `_sender` - // properties are set to `null`. - // - if (websocket._socket) websocket._sender._bufferedBytes += length; - else websocket._bufferedAmount += length; - } - - if (cb) { - const err = new Error( - `WebSocket is not open: readyState ${websocket.readyState} ` + - `(${readyStates[websocket.readyState]})` - ); - cb(err); - } -} - -/** - * The listener of the `Receiver` `'conclude'` event. - * - * @param {Number} code The status code - * @param {String} reason The reason for closing - * @private - */ -function receiverOnConclude(code, reason) { - const websocket = this[kWebSocket]; - - websocket._socket.removeListener('data', socketOnData); - websocket._socket.resume(); - - websocket._closeFrameReceived = true; - websocket._closeMessage = reason; - websocket._closeCode = code; - - if (code === 1005) websocket.close(); - else websocket.close(code, reason); -} - -/** - * The listener of the `Receiver` `'drain'` event. - * - * @private - */ -function receiverOnDrain() { - this[kWebSocket]._socket.resume(); -} - -/** - * The listener of the `Receiver` `'error'` event. - * - * @param {(RangeError|Error)} err The emitted error - * @private - */ -function receiverOnError(err) { - const websocket = this[kWebSocket]; - - websocket._socket.removeListener('data', socketOnData); - - websocket._readyState = WebSocket.CLOSING; - websocket._closeCode = err[kStatusCode]; - websocket.emit('error', err); - websocket._socket.destroy(); -} - -/** - * The listener of the `Receiver` `'finish'` event. - * - * @private - */ -function receiverOnFinish() { - this[kWebSocket].emitClose(); -} - -/** - * The listener of the `Receiver` `'message'` event. - * - * @param {(String|Buffer|ArrayBuffer|Buffer[])} data The message - * @private - */ -function receiverOnMessage(data) { - this[kWebSocket].emit('message', data); -} - -/** - * The listener of the `Receiver` `'ping'` event. - * - * @param {Buffer} data The data included in the ping frame - * @private - */ -function receiverOnPing(data) { - const websocket = this[kWebSocket]; - - websocket.pong(data, !websocket._isServer, NOOP); - websocket.emit('ping', data); -} - -/** - * The listener of the `Receiver` `'pong'` event. - * - * @param {Buffer} data The data included in the pong frame - * @private - */ -function receiverOnPong(data) { - this[kWebSocket].emit('pong', data); -} - -/** - * The listener of the `net.Socket` `'close'` event. - * - * @private - */ -function socketOnClose() { - const websocket = this[kWebSocket]; - - this.removeListener('close', socketOnClose); - this.removeListener('end', socketOnEnd); - - websocket._readyState = WebSocket.CLOSING; - - // - // The close frame might not have been received or the `'end'` event emitted, - // for example, if the socket was destroyed due to an error. Ensure that the - // `receiver` stream is closed after writing any remaining buffered data to - // it. If the readable side of the socket is in flowing mode then there is no - // buffered data as everything has been already written and `readable.read()` - // will return `null`. If instead, the socket is paused, any possible buffered - // data will be read as a single chunk and emitted synchronously in a single - // `'data'` event. - // - websocket._socket.read(); - websocket._receiver.end(); - - this.removeListener('data', socketOnData); - this[kWebSocket] = undefined; - - clearTimeout(websocket._closeTimer); - - if ( - websocket._receiver._writableState.finished || - websocket._receiver._writableState.errorEmitted - ) { - websocket.emitClose(); - } else { - websocket._receiver.on('error', receiverOnFinish); - websocket._receiver.on('finish', receiverOnFinish); - } -} - -/** - * The listener of the `net.Socket` `'data'` event. - * - * @param {Buffer} chunk A chunk of data - * @private - */ -function socketOnData(chunk) { - if (!this[kWebSocket]._receiver.write(chunk)) { - this.pause(); - } -} - -/** - * The listener of the `net.Socket` `'end'` event. - * - * @private - */ -function socketOnEnd() { - const websocket = this[kWebSocket]; - - websocket._readyState = WebSocket.CLOSING; - websocket._receiver.end(); - this.end(); -} - -/** - * The listener of the `net.Socket` `'error'` event. - * - * @private - */ -function socketOnError() { - const websocket = this[kWebSocket]; - - this.removeListener('error', socketOnError); - this.on('error', NOOP); - - if (websocket) { - websocket._readyState = WebSocket.CLOSING; - this.destroy(); - } -} - - -/***/ }), - -/***/ 53728: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.shuffled = exports.randomBytes = void 0; -var random_1 = __nccwpck_require__(90005); -Object.defineProperty(exports, "randomBytes", ({ enumerable: true, get: function () { return random_1.randomBytes; } })); -var shuffle_1 = __nccwpck_require__(61081); -Object.defineProperty(exports, "shuffled", ({ enumerable: true, get: function () { return shuffle_1.shuffled; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 90005: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.randomBytes = void 0; -var crypto_1 = __nccwpck_require__(76982); -var bytes_1 = __nccwpck_require__(42006); -function randomBytes(length) { - return (0, bytes_1.arrayify)((0, crypto_1.randomBytes)(length)); -} -exports.randomBytes = randomBytes; -//# sourceMappingURL=random.js.map - -/***/ }), - -/***/ 61081: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.shuffled = void 0; -function shuffled(array) { - array = array.slice(); - for (var i = array.length - 1; i > 0; i--) { - var j = Math.floor(Math.random() * (i + 1)); - var tmp = array[i]; - array[i] = array[j]; - array[j] = tmp; - } - return array; -} -exports.shuffled = shuffled; -//# sourceMappingURL=shuffle.js.map - -/***/ }), - -/***/ 23852: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "rlp/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 37659: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.decode = exports.encode = void 0; -//See: https://github.com/ethereum/wiki/wiki/RLP -var bytes_1 = __nccwpck_require__(42006); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(23852); -var logger = new logger_1.Logger(_version_1.version); -function arrayifyInteger(value) { - var result = []; - while (value) { - result.unshift(value & 0xff); - value >>= 8; - } - return result; -} -function unarrayifyInteger(data, offset, length) { - var result = 0; - for (var i = 0; i < length; i++) { - result = (result * 256) + data[offset + i]; - } - return result; -} -function _encode(object) { - if (Array.isArray(object)) { - var payload_1 = []; - object.forEach(function (child) { - payload_1 = payload_1.concat(_encode(child)); - }); - if (payload_1.length <= 55) { - payload_1.unshift(0xc0 + payload_1.length); - return payload_1; - } - var length_1 = arrayifyInteger(payload_1.length); - length_1.unshift(0xf7 + length_1.length); - return length_1.concat(payload_1); - } - if (!(0, bytes_1.isBytesLike)(object)) { - logger.throwArgumentError("RLP object must be BytesLike", "object", object); - } - var data = Array.prototype.slice.call((0, bytes_1.arrayify)(object)); - if (data.length === 1 && data[0] <= 0x7f) { - return data; - } - else if (data.length <= 55) { - data.unshift(0x80 + data.length); - return data; - } - var length = arrayifyInteger(data.length); - length.unshift(0xb7 + length.length); - return length.concat(data); -} -function encode(object) { - return (0, bytes_1.hexlify)(_encode(object)); -} -exports.encode = encode; -function _decodeChildren(data, offset, childOffset, length) { - var result = []; - while (childOffset < offset + 1 + length) { - var decoded = _decode(data, childOffset); - result.push(decoded.result); - childOffset += decoded.consumed; - if (childOffset > offset + 1 + length) { - logger.throwError("child data too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - } - return { consumed: (1 + length), result: result }; -} -// returns { consumed: number, result: Object } -function _decode(data, offset) { - if (data.length === 0) { - logger.throwError("data too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - // Array with extra length prefix - if (data[offset] >= 0xf8) { - var lengthLength = data[offset] - 0xf7; - if (offset + 1 + lengthLength > data.length) { - logger.throwError("data short segment too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - var length_2 = unarrayifyInteger(data, offset + 1, lengthLength); - if (offset + 1 + lengthLength + length_2 > data.length) { - logger.throwError("data long segment too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - return _decodeChildren(data, offset, offset + 1 + lengthLength, lengthLength + length_2); - } - else if (data[offset] >= 0xc0) { - var length_3 = data[offset] - 0xc0; - if (offset + 1 + length_3 > data.length) { - logger.throwError("data array too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - return _decodeChildren(data, offset, offset + 1, length_3); - } - else if (data[offset] >= 0xb8) { - var lengthLength = data[offset] - 0xb7; - if (offset + 1 + lengthLength > data.length) { - logger.throwError("data array too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - var length_4 = unarrayifyInteger(data, offset + 1, lengthLength); - if (offset + 1 + lengthLength + length_4 > data.length) { - logger.throwError("data array too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - var result = (0, bytes_1.hexlify)(data.slice(offset + 1 + lengthLength, offset + 1 + lengthLength + length_4)); - return { consumed: (1 + lengthLength + length_4), result: result }; - } - else if (data[offset] >= 0x80) { - var length_5 = data[offset] - 0x80; - if (offset + 1 + length_5 > data.length) { - logger.throwError("data too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - var result = (0, bytes_1.hexlify)(data.slice(offset + 1, offset + 1 + length_5)); - return { consumed: (1 + length_5), result: result }; - } - return { consumed: 1, result: (0, bytes_1.hexlify)(data[offset]) }; -} -function decode(data) { - var bytes = (0, bytes_1.arrayify)(data); - var decoded = _decode(bytes, 0); - if (decoded.consumed !== bytes.length) { - logger.throwArgumentError("invalid rlp data", "data", data); - } - return decoded.result; -} -exports.decode = decode; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 91888: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "sha2/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 66935: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.SupportedAlgorithm = exports.sha512 = exports.sha256 = exports.ripemd160 = exports.computeHmac = void 0; -var sha2_1 = __nccwpck_require__(77943); -Object.defineProperty(exports, "computeHmac", ({ enumerable: true, get: function () { return sha2_1.computeHmac; } })); -Object.defineProperty(exports, "ripemd160", ({ enumerable: true, get: function () { return sha2_1.ripemd160; } })); -Object.defineProperty(exports, "sha256", ({ enumerable: true, get: function () { return sha2_1.sha256; } })); -Object.defineProperty(exports, "sha512", ({ enumerable: true, get: function () { return sha2_1.sha512; } })); -var types_1 = __nccwpck_require__(27310); -Object.defineProperty(exports, "SupportedAlgorithm", ({ enumerable: true, get: function () { return types_1.SupportedAlgorithm; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 77943: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.computeHmac = exports.sha512 = exports.sha256 = exports.ripemd160 = void 0; -var crypto_1 = __nccwpck_require__(76982); -var hash_js_1 = __importDefault(__nccwpck_require__(27477)); -var bytes_1 = __nccwpck_require__(42006); -var types_1 = __nccwpck_require__(27310); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(91888); -var logger = new logger_1.Logger(_version_1.version); -function ripemd160(data) { - return "0x" + (hash_js_1.default.ripemd160().update((0, bytes_1.arrayify)(data)).digest("hex")); -} -exports.ripemd160 = ripemd160; -function sha256(data) { - return "0x" + (0, crypto_1.createHash)("sha256").update(Buffer.from((0, bytes_1.arrayify)(data))).digest("hex"); -} -exports.sha256 = sha256; -function sha512(data) { - return "0x" + (0, crypto_1.createHash)("sha512").update(Buffer.from((0, bytes_1.arrayify)(data))).digest("hex"); -} -exports.sha512 = sha512; -function computeHmac(algorithm, key, data) { - /* istanbul ignore if */ - if (!types_1.SupportedAlgorithm[algorithm]) { - logger.throwError("unsupported algorithm - " + algorithm, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "computeHmac", - algorithm: algorithm - }); - } - return "0x" + (0, crypto_1.createHmac)(algorithm, Buffer.from((0, bytes_1.arrayify)(key))).update(Buffer.from((0, bytes_1.arrayify)(data))).digest("hex"); -} -exports.computeHmac = computeHmac; -//# sourceMappingURL=sha2.js.map - -/***/ }), - -/***/ 27310: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.SupportedAlgorithm = void 0; -var SupportedAlgorithm; -(function (SupportedAlgorithm) { - SupportedAlgorithm["sha256"] = "sha256"; - SupportedAlgorithm["sha512"] = "sha512"; -})(SupportedAlgorithm = exports.SupportedAlgorithm || (exports.SupportedAlgorithm = {})); -; -//# sourceMappingURL=types.js.map - -/***/ }), - -/***/ 53045: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "signing-key/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 71848: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.EC = void 0; -var elliptic_1 = __importDefault(__nccwpck_require__(57034)); -var EC = elliptic_1.default.ec; -exports.EC = EC; -//# sourceMappingURL=elliptic.js.map - -/***/ }), - -/***/ 63928: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.computePublicKey = exports.recoverPublicKey = exports.SigningKey = void 0; -var elliptic_1 = __nccwpck_require__(71848); -var bytes_1 = __nccwpck_require__(42006); -var properties_1 = __nccwpck_require__(61338); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(53045); -var logger = new logger_1.Logger(_version_1.version); -var _curve = null; -function getCurve() { - if (!_curve) { - _curve = new elliptic_1.EC("secp256k1"); - } - return _curve; -} -var SigningKey = /** @class */ (function () { - function SigningKey(privateKey) { - (0, properties_1.defineReadOnly)(this, "curve", "secp256k1"); - (0, properties_1.defineReadOnly)(this, "privateKey", (0, bytes_1.hexlify)(privateKey)); - if ((0, bytes_1.hexDataLength)(this.privateKey) !== 32) { - logger.throwArgumentError("invalid private key", "privateKey", "[[ REDACTED ]]"); - } - var keyPair = getCurve().keyFromPrivate((0, bytes_1.arrayify)(this.privateKey)); - (0, properties_1.defineReadOnly)(this, "publicKey", "0x" + keyPair.getPublic(false, "hex")); - (0, properties_1.defineReadOnly)(this, "compressedPublicKey", "0x" + keyPair.getPublic(true, "hex")); - (0, properties_1.defineReadOnly)(this, "_isSigningKey", true); - } - SigningKey.prototype._addPoint = function (other) { - var p0 = getCurve().keyFromPublic((0, bytes_1.arrayify)(this.publicKey)); - var p1 = getCurve().keyFromPublic((0, bytes_1.arrayify)(other)); - return "0x" + p0.pub.add(p1.pub).encodeCompressed("hex"); - }; - SigningKey.prototype.signDigest = function (digest) { - var keyPair = getCurve().keyFromPrivate((0, bytes_1.arrayify)(this.privateKey)); - var digestBytes = (0, bytes_1.arrayify)(digest); - if (digestBytes.length !== 32) { - logger.throwArgumentError("bad digest length", "digest", digest); - } - var signature = keyPair.sign(digestBytes, { canonical: true }); - return (0, bytes_1.splitSignature)({ - recoveryParam: signature.recoveryParam, - r: (0, bytes_1.hexZeroPad)("0x" + signature.r.toString(16), 32), - s: (0, bytes_1.hexZeroPad)("0x" + signature.s.toString(16), 32), - }); - }; - SigningKey.prototype.computeSharedSecret = function (otherKey) { - var keyPair = getCurve().keyFromPrivate((0, bytes_1.arrayify)(this.privateKey)); - var otherKeyPair = getCurve().keyFromPublic((0, bytes_1.arrayify)(computePublicKey(otherKey))); - return (0, bytes_1.hexZeroPad)("0x" + keyPair.derive(otherKeyPair.getPublic()).toString(16), 32); - }; - SigningKey.isSigningKey = function (value) { - return !!(value && value._isSigningKey); - }; - return SigningKey; -}()); -exports.SigningKey = SigningKey; -function recoverPublicKey(digest, signature) { - var sig = (0, bytes_1.splitSignature)(signature); - var rs = { r: (0, bytes_1.arrayify)(sig.r), s: (0, bytes_1.arrayify)(sig.s) }; - return "0x" + getCurve().recoverPubKey((0, bytes_1.arrayify)(digest), rs, sig.recoveryParam).encode("hex", false); -} -exports.recoverPublicKey = recoverPublicKey; -function computePublicKey(key, compressed) { - var bytes = (0, bytes_1.arrayify)(key); - if (bytes.length === 32) { - var signingKey = new SigningKey(bytes); - if (compressed) { - return "0x" + getCurve().keyFromPrivate(bytes).getPublic(true, "hex"); - } - return signingKey.publicKey; - } - else if (bytes.length === 33) { - if (compressed) { - return (0, bytes_1.hexlify)(bytes); - } - return "0x" + getCurve().keyFromPublic(bytes).getPublic(false, "hex"); - } - else if (bytes.length === 65) { - if (!compressed) { - return (0, bytes_1.hexlify)(bytes); - } - return "0x" + getCurve().keyFromPublic(bytes).getPublic(true, "hex"); - } - return logger.throwArgumentError("invalid public or private key", "key", "[REDACTED]"); -} -exports.computePublicKey = computePublicKey; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 31515: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "solidity/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 18550: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.sha256 = exports.keccak256 = exports.pack = void 0; -var bignumber_1 = __nccwpck_require__(18202); -var bytes_1 = __nccwpck_require__(42006); -var keccak256_1 = __nccwpck_require__(56938); -var sha2_1 = __nccwpck_require__(66935); -var strings_1 = __nccwpck_require__(13859); -var regexBytes = new RegExp("^bytes([0-9]+)$"); -var regexNumber = new RegExp("^(u?int)([0-9]*)$"); -var regexArray = new RegExp("^(.*)\\[([0-9]*)\\]$"); -var Zeros = "0000000000000000000000000000000000000000000000000000000000000000"; -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(31515); -var logger = new logger_1.Logger(_version_1.version); -function _pack(type, value, isArray) { - switch (type) { - case "address": - if (isArray) { - return (0, bytes_1.zeroPad)(value, 32); - } - return (0, bytes_1.arrayify)(value); - case "string": - return (0, strings_1.toUtf8Bytes)(value); - case "bytes": - return (0, bytes_1.arrayify)(value); - case "bool": - value = (value ? "0x01" : "0x00"); - if (isArray) { - return (0, bytes_1.zeroPad)(value, 32); - } - return (0, bytes_1.arrayify)(value); - } - var match = type.match(regexNumber); - if (match) { - //let signed = (match[1] === "int") - var size = parseInt(match[2] || "256"); - if ((match[2] && String(size) !== match[2]) || (size % 8 !== 0) || size === 0 || size > 256) { - logger.throwArgumentError("invalid number type", "type", type); - } - if (isArray) { - size = 256; - } - value = bignumber_1.BigNumber.from(value).toTwos(size); - return (0, bytes_1.zeroPad)(value, size / 8); - } - match = type.match(regexBytes); - if (match) { - var size = parseInt(match[1]); - if (String(size) !== match[1] || size === 0 || size > 32) { - logger.throwArgumentError("invalid bytes type", "type", type); - } - if ((0, bytes_1.arrayify)(value).byteLength !== size) { - logger.throwArgumentError("invalid value for " + type, "value", value); - } - if (isArray) { - return (0, bytes_1.arrayify)((value + Zeros).substring(0, 66)); - } - return value; - } - match = type.match(regexArray); - if (match && Array.isArray(value)) { - var baseType_1 = match[1]; - var count = parseInt(match[2] || String(value.length)); - if (count != value.length) { - logger.throwArgumentError("invalid array length for " + type, "value", value); - } - var result_1 = []; - value.forEach(function (value) { - result_1.push(_pack(baseType_1, value, true)); - }); - return (0, bytes_1.concat)(result_1); - } - return logger.throwArgumentError("invalid type", "type", type); -} -// @TODO: Array Enum -function pack(types, values) { - if (types.length != values.length) { - logger.throwArgumentError("wrong number of values; expected ${ types.length }", "values", values); - } - var tight = []; - types.forEach(function (type, index) { - tight.push(_pack(type, values[index])); - }); - return (0, bytes_1.hexlify)((0, bytes_1.concat)(tight)); -} -exports.pack = pack; -function keccak256(types, values) { - return (0, keccak256_1.keccak256)(pack(types, values)); -} -exports.keccak256 = keccak256; -function sha256(types, values) { - return (0, sha2_1.sha256)(pack(types, values)); -} -exports.sha256 = sha256; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 75988: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "strings/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 94145: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.parseBytes32String = exports.formatBytes32String = void 0; -var constants_1 = __nccwpck_require__(99848); -var bytes_1 = __nccwpck_require__(42006); -var utf8_1 = __nccwpck_require__(91996); -function formatBytes32String(text) { - // Get the bytes - var bytes = (0, utf8_1.toUtf8Bytes)(text); - // Check we have room for null-termination - if (bytes.length > 31) { - throw new Error("bytes32 string must be less than 32 bytes"); - } - // Zero-pad (implicitly null-terminates) - return (0, bytes_1.hexlify)((0, bytes_1.concat)([bytes, constants_1.HashZero]).slice(0, 32)); -} -exports.formatBytes32String = formatBytes32String; -function parseBytes32String(bytes) { - var data = (0, bytes_1.arrayify)(bytes); - // Must be 32 bytes with a null-termination - if (data.length !== 32) { - throw new Error("invalid bytes32 - not 32 bytes long"); - } - if (data[31] !== 0) { - throw new Error("invalid bytes32 string - no null terminator"); - } - // Find the null termination - var length = 31; - while (data[length - 1] === 0) { - length--; - } - // Determine the string value - return (0, utf8_1.toUtf8String)(data.slice(0, length)); -} -exports.parseBytes32String = parseBytes32String; -//# sourceMappingURL=bytes32.js.map - -/***/ }), - -/***/ 1063: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.nameprep = exports._nameprepTableC = exports._nameprepTableB2 = exports._nameprepTableA1 = void 0; -var utf8_1 = __nccwpck_require__(91996); -function bytes2(data) { - if ((data.length % 4) !== 0) { - throw new Error("bad data"); - } - var result = []; - for (var i = 0; i < data.length; i += 4) { - result.push(parseInt(data.substring(i, i + 4), 16)); - } - return result; -} -function createTable(data, func) { - if (!func) { - func = function (value) { return [parseInt(value, 16)]; }; - } - var lo = 0; - var result = {}; - data.split(",").forEach(function (pair) { - var comps = pair.split(":"); - lo += parseInt(comps[0], 16); - result[lo] = func(comps[1]); - }); - return result; -} -function createRangeTable(data) { - var hi = 0; - return data.split(",").map(function (v) { - var comps = v.split("-"); - if (comps.length === 1) { - comps[1] = "0"; - } - else if (comps[1] === "") { - comps[1] = "1"; - } - var lo = hi + parseInt(comps[0], 16); - hi = parseInt(comps[1], 16); - return { l: lo, h: hi }; - }); -} -function matchMap(value, ranges) { - var lo = 0; - for (var i = 0; i < ranges.length; i++) { - var range = ranges[i]; - lo += range.l; - if (value >= lo && value <= lo + range.h && ((value - lo) % (range.d || 1)) === 0) { - if (range.e && range.e.indexOf(value - lo) !== -1) { - continue; - } - return range; - } - } - return null; -} -var Table_A_1_ranges = createRangeTable("221,13-1b,5f-,40-10,51-f,11-3,3-3,2-2,2-4,8,2,15,2d,28-8,88,48,27-,3-5,11-20,27-,8,28,3-5,12,18,b-a,1c-4,6-16,2-d,2-2,2,1b-4,17-9,8f-,10,f,1f-2,1c-34,33-14e,4,36-,13-,6-2,1a-f,4,9-,3-,17,8,2-2,5-,2,8-,3-,4-8,2-3,3,6-,16-6,2-,7-3,3-,17,8,3,3,3-,2,6-3,3-,4-a,5,2-6,10-b,4,8,2,4,17,8,3,6-,b,4,4-,2-e,2-4,b-10,4,9-,3-,17,8,3-,5-,9-2,3-,4-7,3-3,3,4-3,c-10,3,7-2,4,5-2,3,2,3-2,3-2,4-2,9,4-3,6-2,4,5-8,2-e,d-d,4,9,4,18,b,6-3,8,4,5-6,3-8,3-3,b-11,3,9,4,18,b,6-3,8,4,5-6,3-6,2,3-3,b-11,3,9,4,18,11-3,7-,4,5-8,2-7,3-3,b-11,3,13-2,19,a,2-,8-2,2-3,7,2,9-11,4-b,3b-3,1e-24,3,2-,3,2-,2-5,5,8,4,2,2-,3,e,4-,6,2,7-,b-,3-21,49,23-5,1c-3,9,25,10-,2-2f,23,6,3,8-2,5-5,1b-45,27-9,2a-,2-3,5b-4,45-4,53-5,8,40,2,5-,8,2,5-,28,2,5-,20,2,5-,8,2,5-,8,8,18,20,2,5-,8,28,14-5,1d-22,56-b,277-8,1e-2,52-e,e,8-a,18-8,15-b,e,4,3-b,5e-2,b-15,10,b-5,59-7,2b-555,9d-3,5b-5,17-,7-,27-,7-,9,2,2,2,20-,36,10,f-,7,14-,4,a,54-3,2-6,6-5,9-,1c-10,13-1d,1c-14,3c-,10-6,32-b,240-30,28-18,c-14,a0,115-,3,66-,b-76,5,5-,1d,24,2,5-2,2,8-,35-2,19,f-10,1d-3,311-37f,1b,5a-b,d7-19,d-3,41,57-,68-4,29-3,5f,29-37,2e-2,25-c,2c-2,4e-3,30,78-3,64-,20,19b7-49,51a7-59,48e-2,38-738,2ba5-5b,222f-,3c-94,8-b,6-4,1b,6,2,3,3,6d-20,16e-f,41-,37-7,2e-2,11-f,5-b,18-,b,14,5-3,6,88-,2,bf-2,7-,7-,7-,4-2,8,8-9,8-2ff,20,5-b,1c-b4,27-,27-cbb1,f7-9,28-2,b5-221,56,48,3-,2-,3-,5,d,2,5,3,42,5-,9,8,1d,5,6,2-2,8,153-3,123-3,33-27fd,a6da-5128,21f-5df,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3,2-1d,61-ff7d"); -// @TODO: Make this relative... -var Table_B_1_flags = "ad,34f,1806,180b,180c,180d,200b,200c,200d,2060,feff".split(",").map(function (v) { return parseInt(v, 16); }); -var Table_B_2_ranges = [ - { h: 25, s: 32, l: 65 }, - { h: 30, s: 32, e: [23], l: 127 }, - { h: 54, s: 1, e: [48], l: 64, d: 2 }, - { h: 14, s: 1, l: 57, d: 2 }, - { h: 44, s: 1, l: 17, d: 2 }, - { h: 10, s: 1, e: [2, 6, 8], l: 61, d: 2 }, - { h: 16, s: 1, l: 68, d: 2 }, - { h: 84, s: 1, e: [18, 24, 66], l: 19, d: 2 }, - { h: 26, s: 32, e: [17], l: 435 }, - { h: 22, s: 1, l: 71, d: 2 }, - { h: 15, s: 80, l: 40 }, - { h: 31, s: 32, l: 16 }, - { h: 32, s: 1, l: 80, d: 2 }, - { h: 52, s: 1, l: 42, d: 2 }, - { h: 12, s: 1, l: 55, d: 2 }, - { h: 40, s: 1, e: [38], l: 15, d: 2 }, - { h: 14, s: 1, l: 48, d: 2 }, - { h: 37, s: 48, l: 49 }, - { h: 148, s: 1, l: 6351, d: 2 }, - { h: 88, s: 1, l: 160, d: 2 }, - { h: 15, s: 16, l: 704 }, - { h: 25, s: 26, l: 854 }, - { h: 25, s: 32, l: 55915 }, - { h: 37, s: 40, l: 1247 }, - { h: 25, s: -119711, l: 53248 }, - { h: 25, s: -119763, l: 52 }, - { h: 25, s: -119815, l: 52 }, - { h: 25, s: -119867, e: [1, 4, 5, 7, 8, 11, 12, 17], l: 52 }, - { h: 25, s: -119919, l: 52 }, - { h: 24, s: -119971, e: [2, 7, 8, 17], l: 52 }, - { h: 24, s: -120023, e: [2, 7, 13, 15, 16, 17], l: 52 }, - { h: 25, s: -120075, l: 52 }, - { h: 25, s: -120127, l: 52 }, - { h: 25, s: -120179, l: 52 }, - { h: 25, s: -120231, l: 52 }, - { h: 25, s: -120283, l: 52 }, - { h: 25, s: -120335, l: 52 }, - { h: 24, s: -119543, e: [17], l: 56 }, - { h: 24, s: -119601, e: [17], l: 58 }, - { h: 24, s: -119659, e: [17], l: 58 }, - { h: 24, s: -119717, e: [17], l: 58 }, - { h: 24, s: -119775, e: [17], l: 58 } -]; -var Table_B_2_lut_abs = createTable("b5:3bc,c3:ff,7:73,2:253,5:254,3:256,1:257,5:259,1:25b,3:260,1:263,2:269,1:268,5:26f,1:272,2:275,7:280,3:283,5:288,3:28a,1:28b,5:292,3f:195,1:1bf,29:19e,125:3b9,8b:3b2,1:3b8,1:3c5,3:3c6,1:3c0,1a:3ba,1:3c1,1:3c3,2:3b8,1:3b5,1bc9:3b9,1c:1f76,1:1f77,f:1f7a,1:1f7b,d:1f78,1:1f79,1:1f7c,1:1f7d,107:63,5:25b,4:68,1:68,1:68,3:69,1:69,1:6c,3:6e,4:70,1:71,1:72,1:72,1:72,7:7a,2:3c9,2:7a,2:6b,1:e5,1:62,1:63,3:65,1:66,2:6d,b:3b3,1:3c0,6:64,1b574:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3"); -var Table_B_2_lut_rel = createTable("179:1,2:1,2:1,5:1,2:1,a:4f,a:1,8:1,2:1,2:1,3:1,5:1,3:1,4:1,2:1,3:1,4:1,8:2,1:1,2:2,1:1,2:2,27:2,195:26,2:25,1:25,1:25,2:40,2:3f,1:3f,33:1,11:-6,1:-9,1ac7:-3a,6d:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,b:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,c:-8,2:-8,2:-8,2:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,49:-8,1:-8,1:-4a,1:-4a,d:-56,1:-56,1:-56,1:-56,d:-8,1:-8,f:-8,1:-8,3:-7"); -var Table_B_2_complex = createTable("df:00730073,51:00690307,19:02BC006E,a7:006A030C,18a:002003B9,16:03B903080301,20:03C503080301,1d7:05650582,190f:00680331,1:00740308,1:0077030A,1:0079030A,1:006102BE,b6:03C50313,2:03C503130300,2:03C503130301,2:03C503130342,2a:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,3:1F7003B9,1:03B103B9,1:03AC03B9,2:03B10342,1:03B1034203B9,5:03B103B9,6:1F7403B9,1:03B703B9,1:03AE03B9,2:03B70342,1:03B7034203B9,5:03B703B9,6:03B903080300,1:03B903080301,3:03B90342,1:03B903080342,b:03C503080300,1:03C503080301,1:03C10313,2:03C50342,1:03C503080342,b:1F7C03B9,1:03C903B9,1:03CE03B9,2:03C90342,1:03C9034203B9,5:03C903B9,ac:00720073,5b:00B00063,6:00B00066,d:006E006F,a:0073006D,1:00740065006C,1:0074006D,124f:006800700061,2:00610075,2:006F0076,b:00700061,1:006E0061,1:03BC0061,1:006D0061,1:006B0061,1:006B0062,1:006D0062,1:00670062,3:00700066,1:006E0066,1:03BC0066,4:0068007A,1:006B0068007A,1:006D0068007A,1:00670068007A,1:00740068007A,15:00700061,1:006B00700061,1:006D00700061,1:006700700061,8:00700076,1:006E0076,1:03BC0076,1:006D0076,1:006B0076,1:006D0076,1:00700077,1:006E0077,1:03BC0077,1:006D0077,1:006B0077,1:006D0077,1:006B03C9,1:006D03C9,2:00620071,3:00632215006B0067,1:0063006F002E,1:00640062,1:00670079,2:00680070,2:006B006B,1:006B006D,9:00700068,2:00700070006D,1:00700072,2:00730076,1:00770062,c723:00660066,1:00660069,1:0066006C,1:006600660069,1:00660066006C,1:00730074,1:00730074,d:05740576,1:05740565,1:0574056B,1:057E0576,1:0574056D", bytes2); -var Table_C_ranges = createRangeTable("80-20,2a0-,39c,32,f71,18e,7f2-f,19-7,30-4,7-5,f81-b,5,a800-20ff,4d1-1f,110,fa-6,d174-7,2e84-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,2,1f-5f,ff7f-20001"); -function flatten(values) { - return values.reduce(function (accum, value) { - value.forEach(function (value) { accum.push(value); }); - return accum; - }, []); -} -function _nameprepTableA1(codepoint) { - return !!matchMap(codepoint, Table_A_1_ranges); -} -exports._nameprepTableA1 = _nameprepTableA1; -function _nameprepTableB2(codepoint) { - var range = matchMap(codepoint, Table_B_2_ranges); - if (range) { - return [codepoint + range.s]; - } - var codes = Table_B_2_lut_abs[codepoint]; - if (codes) { - return codes; - } - var shift = Table_B_2_lut_rel[codepoint]; - if (shift) { - return [codepoint + shift[0]]; - } - var complex = Table_B_2_complex[codepoint]; - if (complex) { - return complex; - } - return null; -} -exports._nameprepTableB2 = _nameprepTableB2; -function _nameprepTableC(codepoint) { - return !!matchMap(codepoint, Table_C_ranges); -} -exports._nameprepTableC = _nameprepTableC; -function nameprep(value) { - // This allows platforms with incomplete normalize to bypass - // it for very basic names which the built-in toLowerCase - // will certainly handle correctly - if (value.match(/^[a-z0-9-]*$/i) && value.length <= 59) { - return value.toLowerCase(); - } - // Get the code points (keeping the current normalization) - var codes = (0, utf8_1.toUtf8CodePoints)(value); - codes = flatten(codes.map(function (code) { - // Substitute Table B.1 (Maps to Nothing) - if (Table_B_1_flags.indexOf(code) >= 0) { - return []; - } - if (code >= 0xfe00 && code <= 0xfe0f) { - return []; - } - // Substitute Table B.2 (Case Folding) - var codesTableB2 = _nameprepTableB2(code); - if (codesTableB2) { - return codesTableB2; - } - // No Substitution - return [code]; - })); - // Normalize using form KC - codes = (0, utf8_1.toUtf8CodePoints)((0, utf8_1._toUtf8String)(codes), utf8_1.UnicodeNormalizationForm.NFKC); - // Prohibit Tables C.1.2, C.2.2, C.3, C.4, C.5, C.6, C.7, C.8, C.9 - codes.forEach(function (code) { - if (_nameprepTableC(code)) { - throw new Error("STRINGPREP_CONTAINS_PROHIBITED"); - } - }); - // Prohibit Unassigned Code Points (Table A.1) - codes.forEach(function (code) { - if (_nameprepTableA1(code)) { - throw new Error("STRINGPREP_CONTAINS_UNASSIGNED"); - } - }); - // IDNA extras - var name = (0, utf8_1._toUtf8String)(codes); - // IDNA: 4.2.3.1 - if (name.substring(0, 1) === "-" || name.substring(2, 4) === "--" || name.substring(name.length - 1) === "-") { - throw new Error("invalid hyphen"); - } - return name; -} -exports.nameprep = nameprep; -//# sourceMappingURL=idna.js.map - -/***/ }), - -/***/ 13859: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.nameprep = exports.parseBytes32String = exports.formatBytes32String = exports.UnicodeNormalizationForm = exports.Utf8ErrorReason = exports.Utf8ErrorFuncs = exports.toUtf8String = exports.toUtf8CodePoints = exports.toUtf8Bytes = exports._toEscapedUtf8String = void 0; -var bytes32_1 = __nccwpck_require__(94145); -Object.defineProperty(exports, "formatBytes32String", ({ enumerable: true, get: function () { return bytes32_1.formatBytes32String; } })); -Object.defineProperty(exports, "parseBytes32String", ({ enumerable: true, get: function () { return bytes32_1.parseBytes32String; } })); -var idna_1 = __nccwpck_require__(1063); -Object.defineProperty(exports, "nameprep", ({ enumerable: true, get: function () { return idna_1.nameprep; } })); -var utf8_1 = __nccwpck_require__(91996); -Object.defineProperty(exports, "_toEscapedUtf8String", ({ enumerable: true, get: function () { return utf8_1._toEscapedUtf8String; } })); -Object.defineProperty(exports, "toUtf8Bytes", ({ enumerable: true, get: function () { return utf8_1.toUtf8Bytes; } })); -Object.defineProperty(exports, "toUtf8CodePoints", ({ enumerable: true, get: function () { return utf8_1.toUtf8CodePoints; } })); -Object.defineProperty(exports, "toUtf8String", ({ enumerable: true, get: function () { return utf8_1.toUtf8String; } })); -Object.defineProperty(exports, "UnicodeNormalizationForm", ({ enumerable: true, get: function () { return utf8_1.UnicodeNormalizationForm; } })); -Object.defineProperty(exports, "Utf8ErrorFuncs", ({ enumerable: true, get: function () { return utf8_1.Utf8ErrorFuncs; } })); -Object.defineProperty(exports, "Utf8ErrorReason", ({ enumerable: true, get: function () { return utf8_1.Utf8ErrorReason; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 91996: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.toUtf8CodePoints = exports.toUtf8String = exports._toUtf8String = exports._toEscapedUtf8String = exports.toUtf8Bytes = exports.Utf8ErrorFuncs = exports.Utf8ErrorReason = exports.UnicodeNormalizationForm = void 0; -var bytes_1 = __nccwpck_require__(42006); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(75988); -var logger = new logger_1.Logger(_version_1.version); -/////////////////////////////// -var UnicodeNormalizationForm; -(function (UnicodeNormalizationForm) { - UnicodeNormalizationForm["current"] = ""; - UnicodeNormalizationForm["NFC"] = "NFC"; - UnicodeNormalizationForm["NFD"] = "NFD"; - UnicodeNormalizationForm["NFKC"] = "NFKC"; - UnicodeNormalizationForm["NFKD"] = "NFKD"; -})(UnicodeNormalizationForm = exports.UnicodeNormalizationForm || (exports.UnicodeNormalizationForm = {})); -; -var Utf8ErrorReason; -(function (Utf8ErrorReason) { - // A continuation byte was present where there was nothing to continue - // - offset = the index the codepoint began in - Utf8ErrorReason["UNEXPECTED_CONTINUE"] = "unexpected continuation byte"; - // An invalid (non-continuation) byte to start a UTF-8 codepoint was found - // - offset = the index the codepoint began in - Utf8ErrorReason["BAD_PREFIX"] = "bad codepoint prefix"; - // The string is too short to process the expected codepoint - // - offset = the index the codepoint began in - Utf8ErrorReason["OVERRUN"] = "string overrun"; - // A missing continuation byte was expected but not found - // - offset = the index the continuation byte was expected at - Utf8ErrorReason["MISSING_CONTINUE"] = "missing continuation byte"; - // The computed code point is outside the range for UTF-8 - // - offset = start of this codepoint - // - badCodepoint = the computed codepoint; outside the UTF-8 range - Utf8ErrorReason["OUT_OF_RANGE"] = "out of UTF-8 range"; - // UTF-8 strings may not contain UTF-16 surrogate pairs - // - offset = start of this codepoint - // - badCodepoint = the computed codepoint; inside the UTF-16 surrogate range - Utf8ErrorReason["UTF16_SURROGATE"] = "UTF-16 surrogate"; - // The string is an overlong representation - // - offset = start of this codepoint - // - badCodepoint = the computed codepoint; already bounds checked - Utf8ErrorReason["OVERLONG"] = "overlong representation"; -})(Utf8ErrorReason = exports.Utf8ErrorReason || (exports.Utf8ErrorReason = {})); -; -function errorFunc(reason, offset, bytes, output, badCodepoint) { - return logger.throwArgumentError("invalid codepoint at offset " + offset + "; " + reason, "bytes", bytes); -} -function ignoreFunc(reason, offset, bytes, output, badCodepoint) { - // If there is an invalid prefix (including stray continuation), skip any additional continuation bytes - if (reason === Utf8ErrorReason.BAD_PREFIX || reason === Utf8ErrorReason.UNEXPECTED_CONTINUE) { - var i = 0; - for (var o = offset + 1; o < bytes.length; o++) { - if (bytes[o] >> 6 !== 0x02) { - break; - } - i++; - } - return i; - } - // This byte runs us past the end of the string, so just jump to the end - // (but the first byte was read already read and therefore skipped) - if (reason === Utf8ErrorReason.OVERRUN) { - return bytes.length - offset - 1; - } - // Nothing to skip - return 0; -} -function replaceFunc(reason, offset, bytes, output, badCodepoint) { - // Overlong representations are otherwise "valid" code points; just non-deistingtished - if (reason === Utf8ErrorReason.OVERLONG) { - output.push(badCodepoint); - return 0; - } - // Put the replacement character into the output - output.push(0xfffd); - // Otherwise, process as if ignoring errors - return ignoreFunc(reason, offset, bytes, output, badCodepoint); -} -// Common error handing strategies -exports.Utf8ErrorFuncs = Object.freeze({ - error: errorFunc, - ignore: ignoreFunc, - replace: replaceFunc -}); -// http://stackoverflow.com/questions/13356493/decode-utf-8-with-javascript#13691499 -function getUtf8CodePoints(bytes, onError) { - if (onError == null) { - onError = exports.Utf8ErrorFuncs.error; - } - bytes = (0, bytes_1.arrayify)(bytes); - var result = []; - var i = 0; - // Invalid bytes are ignored - while (i < bytes.length) { - var c = bytes[i++]; - // 0xxx xxxx - if (c >> 7 === 0) { - result.push(c); - continue; - } - // Multibyte; how many bytes left for this character? - var extraLength = null; - var overlongMask = null; - // 110x xxxx 10xx xxxx - if ((c & 0xe0) === 0xc0) { - extraLength = 1; - overlongMask = 0x7f; - // 1110 xxxx 10xx xxxx 10xx xxxx - } - else if ((c & 0xf0) === 0xe0) { - extraLength = 2; - overlongMask = 0x7ff; - // 1111 0xxx 10xx xxxx 10xx xxxx 10xx xxxx - } - else if ((c & 0xf8) === 0xf0) { - extraLength = 3; - overlongMask = 0xffff; - } - else { - if ((c & 0xc0) === 0x80) { - i += onError(Utf8ErrorReason.UNEXPECTED_CONTINUE, i - 1, bytes, result); - } - else { - i += onError(Utf8ErrorReason.BAD_PREFIX, i - 1, bytes, result); - } - continue; - } - // Do we have enough bytes in our data? - if (i - 1 + extraLength >= bytes.length) { - i += onError(Utf8ErrorReason.OVERRUN, i - 1, bytes, result); - continue; - } - // Remove the length prefix from the char - var res = c & ((1 << (8 - extraLength - 1)) - 1); - for (var j = 0; j < extraLength; j++) { - var nextChar = bytes[i]; - // Invalid continuation byte - if ((nextChar & 0xc0) != 0x80) { - i += onError(Utf8ErrorReason.MISSING_CONTINUE, i, bytes, result); - res = null; - break; - } - ; - res = (res << 6) | (nextChar & 0x3f); - i++; - } - // See above loop for invalid continuation byte - if (res === null) { - continue; - } - // Maximum code point - if (res > 0x10ffff) { - i += onError(Utf8ErrorReason.OUT_OF_RANGE, i - 1 - extraLength, bytes, result, res); - continue; - } - // Reserved for UTF-16 surrogate halves - if (res >= 0xd800 && res <= 0xdfff) { - i += onError(Utf8ErrorReason.UTF16_SURROGATE, i - 1 - extraLength, bytes, result, res); - continue; - } - // Check for overlong sequences (more bytes than needed) - if (res <= overlongMask) { - i += onError(Utf8ErrorReason.OVERLONG, i - 1 - extraLength, bytes, result, res); - continue; - } - result.push(res); - } - return result; -} -// http://stackoverflow.com/questions/18729405/how-to-convert-utf8-string-to-byte-array -function toUtf8Bytes(str, form) { - if (form === void 0) { form = UnicodeNormalizationForm.current; } - if (form != UnicodeNormalizationForm.current) { - logger.checkNormalize(); - str = str.normalize(form); - } - var result = []; - for (var i = 0; i < str.length; i++) { - var c = str.charCodeAt(i); - if (c < 0x80) { - result.push(c); - } - else if (c < 0x800) { - result.push((c >> 6) | 0xc0); - result.push((c & 0x3f) | 0x80); - } - else if ((c & 0xfc00) == 0xd800) { - i++; - var c2 = str.charCodeAt(i); - if (i >= str.length || (c2 & 0xfc00) !== 0xdc00) { - throw new Error("invalid utf-8 string"); - } - // Surrogate Pair - var pair = 0x10000 + ((c & 0x03ff) << 10) + (c2 & 0x03ff); - result.push((pair >> 18) | 0xf0); - result.push(((pair >> 12) & 0x3f) | 0x80); - result.push(((pair >> 6) & 0x3f) | 0x80); - result.push((pair & 0x3f) | 0x80); - } - else { - result.push((c >> 12) | 0xe0); - result.push(((c >> 6) & 0x3f) | 0x80); - result.push((c & 0x3f) | 0x80); - } - } - return (0, bytes_1.arrayify)(result); -} -exports.toUtf8Bytes = toUtf8Bytes; -; -function escapeChar(value) { - var hex = ("0000" + value.toString(16)); - return "\\u" + hex.substring(hex.length - 4); -} -function _toEscapedUtf8String(bytes, onError) { - return '"' + getUtf8CodePoints(bytes, onError).map(function (codePoint) { - if (codePoint < 256) { - switch (codePoint) { - case 8: return "\\b"; - case 9: return "\\t"; - case 10: return "\\n"; - case 13: return "\\r"; - case 34: return "\\\""; - case 92: return "\\\\"; - } - if (codePoint >= 32 && codePoint < 127) { - return String.fromCharCode(codePoint); - } - } - if (codePoint <= 0xffff) { - return escapeChar(codePoint); - } - codePoint -= 0x10000; - return escapeChar(((codePoint >> 10) & 0x3ff) + 0xd800) + escapeChar((codePoint & 0x3ff) + 0xdc00); - }).join("") + '"'; -} -exports._toEscapedUtf8String = _toEscapedUtf8String; -function _toUtf8String(codePoints) { - return codePoints.map(function (codePoint) { - if (codePoint <= 0xffff) { - return String.fromCharCode(codePoint); - } - codePoint -= 0x10000; - return String.fromCharCode((((codePoint >> 10) & 0x3ff) + 0xd800), ((codePoint & 0x3ff) + 0xdc00)); - }).join(""); -} -exports._toUtf8String = _toUtf8String; -function toUtf8String(bytes, onError) { - return _toUtf8String(getUtf8CodePoints(bytes, onError)); -} -exports.toUtf8String = toUtf8String; -function toUtf8CodePoints(str, form) { - if (form === void 0) { form = UnicodeNormalizationForm.current; } - return getUtf8CodePoints(toUtf8Bytes(str, form)); -} -exports.toUtf8CodePoints = toUtf8CodePoints; -//# sourceMappingURL=utf8.js.map - -/***/ }), - -/***/ 63303: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "transactions/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 62394: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.parse = exports.serialize = exports.accessListify = exports.recoverAddress = exports.computeAddress = exports.TransactionTypes = void 0; -var address_1 = __nccwpck_require__(75745); -var bignumber_1 = __nccwpck_require__(18202); -var bytes_1 = __nccwpck_require__(42006); -var constants_1 = __nccwpck_require__(99848); -var keccak256_1 = __nccwpck_require__(56938); -var properties_1 = __nccwpck_require__(61338); -var RLP = __importStar(__nccwpck_require__(37659)); -var signing_key_1 = __nccwpck_require__(63928); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(63303); -var logger = new logger_1.Logger(_version_1.version); -var TransactionTypes; -(function (TransactionTypes) { - TransactionTypes[TransactionTypes["legacy"] = 0] = "legacy"; - TransactionTypes[TransactionTypes["eip2930"] = 1] = "eip2930"; - TransactionTypes[TransactionTypes["eip1559"] = 2] = "eip1559"; -})(TransactionTypes = exports.TransactionTypes || (exports.TransactionTypes = {})); -; -/////////////////////////////// -function handleAddress(value) { - if (value === "0x") { - return null; - } - return (0, address_1.getAddress)(value); -} -function handleNumber(value) { - if (value === "0x") { - return constants_1.Zero; - } - return bignumber_1.BigNumber.from(value); -} -// Legacy Transaction Fields -var transactionFields = [ - { name: "nonce", maxLength: 32, numeric: true }, - { name: "gasPrice", maxLength: 32, numeric: true }, - { name: "gasLimit", maxLength: 32, numeric: true }, - { name: "to", length: 20 }, - { name: "value", maxLength: 32, numeric: true }, - { name: "data" }, -]; -var allowedTransactionKeys = { - chainId: true, data: true, gasLimit: true, gasPrice: true, nonce: true, to: true, type: true, value: true -}; -function computeAddress(key) { - var publicKey = (0, signing_key_1.computePublicKey)(key); - return (0, address_1.getAddress)((0, bytes_1.hexDataSlice)((0, keccak256_1.keccak256)((0, bytes_1.hexDataSlice)(publicKey, 1)), 12)); -} -exports.computeAddress = computeAddress; -function recoverAddress(digest, signature) { - return computeAddress((0, signing_key_1.recoverPublicKey)((0, bytes_1.arrayify)(digest), signature)); -} -exports.recoverAddress = recoverAddress; -function formatNumber(value, name) { - var result = (0, bytes_1.stripZeros)(bignumber_1.BigNumber.from(value).toHexString()); - if (result.length > 32) { - logger.throwArgumentError("invalid length for " + name, ("transaction:" + name), value); - } - return result; -} -function accessSetify(addr, storageKeys) { - return { - address: (0, address_1.getAddress)(addr), - storageKeys: (storageKeys || []).map(function (storageKey, index) { - if ((0, bytes_1.hexDataLength)(storageKey) !== 32) { - logger.throwArgumentError("invalid access list storageKey", "accessList[" + addr + ":" + index + "]", storageKey); - } - return storageKey.toLowerCase(); - }) - }; -} -function accessListify(value) { - if (Array.isArray(value)) { - return value.map(function (set, index) { - if (Array.isArray(set)) { - if (set.length > 2) { - logger.throwArgumentError("access list expected to be [ address, storageKeys[] ]", "value[" + index + "]", set); - } - return accessSetify(set[0], set[1]); - } - return accessSetify(set.address, set.storageKeys); - }); - } - var result = Object.keys(value).map(function (addr) { - var storageKeys = value[addr].reduce(function (accum, storageKey) { - accum[storageKey] = true; - return accum; - }, {}); - return accessSetify(addr, Object.keys(storageKeys).sort()); - }); - result.sort(function (a, b) { return (a.address.localeCompare(b.address)); }); - return result; -} -exports.accessListify = accessListify; -function formatAccessList(value) { - return accessListify(value).map(function (set) { return [set.address, set.storageKeys]; }); -} -function _serializeEip1559(transaction, signature) { - // If there is an explicit gasPrice, make sure it matches the - // EIP-1559 fees; otherwise they may not understand what they - // think they are setting in terms of fee. - if (transaction.gasPrice != null) { - var gasPrice = bignumber_1.BigNumber.from(transaction.gasPrice); - var maxFeePerGas = bignumber_1.BigNumber.from(transaction.maxFeePerGas || 0); - if (!gasPrice.eq(maxFeePerGas)) { - logger.throwArgumentError("mismatch EIP-1559 gasPrice != maxFeePerGas", "tx", { - gasPrice: gasPrice, - maxFeePerGas: maxFeePerGas - }); - } - } - var fields = [ - formatNumber(transaction.chainId || 0, "chainId"), - formatNumber(transaction.nonce || 0, "nonce"), - formatNumber(transaction.maxPriorityFeePerGas || 0, "maxPriorityFeePerGas"), - formatNumber(transaction.maxFeePerGas || 0, "maxFeePerGas"), - formatNumber(transaction.gasLimit || 0, "gasLimit"), - ((transaction.to != null) ? (0, address_1.getAddress)(transaction.to) : "0x"), - formatNumber(transaction.value || 0, "value"), - (transaction.data || "0x"), - (formatAccessList(transaction.accessList || [])) - ]; - if (signature) { - var sig = (0, bytes_1.splitSignature)(signature); - fields.push(formatNumber(sig.recoveryParam, "recoveryParam")); - fields.push((0, bytes_1.stripZeros)(sig.r)); - fields.push((0, bytes_1.stripZeros)(sig.s)); - } - return (0, bytes_1.hexConcat)(["0x02", RLP.encode(fields)]); -} -function _serializeEip2930(transaction, signature) { - var fields = [ - formatNumber(transaction.chainId || 0, "chainId"), - formatNumber(transaction.nonce || 0, "nonce"), - formatNumber(transaction.gasPrice || 0, "gasPrice"), - formatNumber(transaction.gasLimit || 0, "gasLimit"), - ((transaction.to != null) ? (0, address_1.getAddress)(transaction.to) : "0x"), - formatNumber(transaction.value || 0, "value"), - (transaction.data || "0x"), - (formatAccessList(transaction.accessList || [])) - ]; - if (signature) { - var sig = (0, bytes_1.splitSignature)(signature); - fields.push(formatNumber(sig.recoveryParam, "recoveryParam")); - fields.push((0, bytes_1.stripZeros)(sig.r)); - fields.push((0, bytes_1.stripZeros)(sig.s)); - } - return (0, bytes_1.hexConcat)(["0x01", RLP.encode(fields)]); -} -// Legacy Transactions and EIP-155 -function _serialize(transaction, signature) { - (0, properties_1.checkProperties)(transaction, allowedTransactionKeys); - var raw = []; - transactionFields.forEach(function (fieldInfo) { - var value = transaction[fieldInfo.name] || ([]); - var options = {}; - if (fieldInfo.numeric) { - options.hexPad = "left"; - } - value = (0, bytes_1.arrayify)((0, bytes_1.hexlify)(value, options)); - // Fixed-width field - if (fieldInfo.length && value.length !== fieldInfo.length && value.length > 0) { - logger.throwArgumentError("invalid length for " + fieldInfo.name, ("transaction:" + fieldInfo.name), value); - } - // Variable-width (with a maximum) - if (fieldInfo.maxLength) { - value = (0, bytes_1.stripZeros)(value); - if (value.length > fieldInfo.maxLength) { - logger.throwArgumentError("invalid length for " + fieldInfo.name, ("transaction:" + fieldInfo.name), value); - } - } - raw.push((0, bytes_1.hexlify)(value)); - }); - var chainId = 0; - if (transaction.chainId != null) { - // A chainId was provided; if non-zero we'll use EIP-155 - chainId = transaction.chainId; - if (typeof (chainId) !== "number") { - logger.throwArgumentError("invalid transaction.chainId", "transaction", transaction); - } - } - else if (signature && !(0, bytes_1.isBytesLike)(signature) && signature.v > 28) { - // No chainId provided, but the signature is signing with EIP-155; derive chainId - chainId = Math.floor((signature.v - 35) / 2); - } - // We have an EIP-155 transaction (chainId was specified and non-zero) - if (chainId !== 0) { - raw.push((0, bytes_1.hexlify)(chainId)); // @TODO: hexValue? - raw.push("0x"); - raw.push("0x"); - } - // Requesting an unsigned transaction - if (!signature) { - return RLP.encode(raw); - } - // The splitSignature will ensure the transaction has a recoveryParam in the - // case that the signTransaction function only adds a v. - var sig = (0, bytes_1.splitSignature)(signature); - // We pushed a chainId and null r, s on for hashing only; remove those - var v = 27 + sig.recoveryParam; - if (chainId !== 0) { - raw.pop(); - raw.pop(); - raw.pop(); - v += chainId * 2 + 8; - // If an EIP-155 v (directly or indirectly; maybe _vs) was provided, check it! - if (sig.v > 28 && sig.v !== v) { - logger.throwArgumentError("transaction.chainId/signature.v mismatch", "signature", signature); - } - } - else if (sig.v !== v) { - logger.throwArgumentError("transaction.chainId/signature.v mismatch", "signature", signature); - } - raw.push((0, bytes_1.hexlify)(v)); - raw.push((0, bytes_1.stripZeros)((0, bytes_1.arrayify)(sig.r))); - raw.push((0, bytes_1.stripZeros)((0, bytes_1.arrayify)(sig.s))); - return RLP.encode(raw); -} -function serialize(transaction, signature) { - // Legacy and EIP-155 Transactions - if (transaction.type == null || transaction.type === 0) { - if (transaction.accessList != null) { - logger.throwArgumentError("untyped transactions do not support accessList; include type: 1", "transaction", transaction); - } - return _serialize(transaction, signature); - } - // Typed Transactions (EIP-2718) - switch (transaction.type) { - case 1: - return _serializeEip2930(transaction, signature); - case 2: - return _serializeEip1559(transaction, signature); - default: - break; - } - return logger.throwError("unsupported transaction type: " + transaction.type, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "serializeTransaction", - transactionType: transaction.type - }); -} -exports.serialize = serialize; -function _parseEipSignature(tx, fields, serialize) { - try { - var recid = handleNumber(fields[0]).toNumber(); - if (recid !== 0 && recid !== 1) { - throw new Error("bad recid"); - } - tx.v = recid; - } - catch (error) { - logger.throwArgumentError("invalid v for transaction type: 1", "v", fields[0]); - } - tx.r = (0, bytes_1.hexZeroPad)(fields[1], 32); - tx.s = (0, bytes_1.hexZeroPad)(fields[2], 32); - try { - var digest = (0, keccak256_1.keccak256)(serialize(tx)); - tx.from = recoverAddress(digest, { r: tx.r, s: tx.s, recoveryParam: tx.v }); - } - catch (error) { } -} -function _parseEip1559(payload) { - var transaction = RLP.decode(payload.slice(1)); - if (transaction.length !== 9 && transaction.length !== 12) { - logger.throwArgumentError("invalid component count for transaction type: 2", "payload", (0, bytes_1.hexlify)(payload)); - } - var maxPriorityFeePerGas = handleNumber(transaction[2]); - var maxFeePerGas = handleNumber(transaction[3]); - var tx = { - type: 2, - chainId: handleNumber(transaction[0]).toNumber(), - nonce: handleNumber(transaction[1]).toNumber(), - maxPriorityFeePerGas: maxPriorityFeePerGas, - maxFeePerGas: maxFeePerGas, - gasPrice: null, - gasLimit: handleNumber(transaction[4]), - to: handleAddress(transaction[5]), - value: handleNumber(transaction[6]), - data: transaction[7], - accessList: accessListify(transaction[8]), - }; - // Unsigned EIP-1559 Transaction - if (transaction.length === 9) { - return tx; - } - tx.hash = (0, keccak256_1.keccak256)(payload); - _parseEipSignature(tx, transaction.slice(9), _serializeEip1559); - return tx; -} -function _parseEip2930(payload) { - var transaction = RLP.decode(payload.slice(1)); - if (transaction.length !== 8 && transaction.length !== 11) { - logger.throwArgumentError("invalid component count for transaction type: 1", "payload", (0, bytes_1.hexlify)(payload)); - } - var tx = { - type: 1, - chainId: handleNumber(transaction[0]).toNumber(), - nonce: handleNumber(transaction[1]).toNumber(), - gasPrice: handleNumber(transaction[2]), - gasLimit: handleNumber(transaction[3]), - to: handleAddress(transaction[4]), - value: handleNumber(transaction[5]), - data: transaction[6], - accessList: accessListify(transaction[7]) - }; - // Unsigned EIP-2930 Transaction - if (transaction.length === 8) { - return tx; - } - tx.hash = (0, keccak256_1.keccak256)(payload); - _parseEipSignature(tx, transaction.slice(8), _serializeEip2930); - return tx; -} -// Legacy Transactions and EIP-155 -function _parse(rawTransaction) { - var transaction = RLP.decode(rawTransaction); - if (transaction.length !== 9 && transaction.length !== 6) { - logger.throwArgumentError("invalid raw transaction", "rawTransaction", rawTransaction); - } - var tx = { - nonce: handleNumber(transaction[0]).toNumber(), - gasPrice: handleNumber(transaction[1]), - gasLimit: handleNumber(transaction[2]), - to: handleAddress(transaction[3]), - value: handleNumber(transaction[4]), - data: transaction[5], - chainId: 0 - }; - // Legacy unsigned transaction - if (transaction.length === 6) { - return tx; - } - try { - tx.v = bignumber_1.BigNumber.from(transaction[6]).toNumber(); - } - catch (error) { - // @TODO: What makes snese to do? The v is too big - return tx; - } - tx.r = (0, bytes_1.hexZeroPad)(transaction[7], 32); - tx.s = (0, bytes_1.hexZeroPad)(transaction[8], 32); - if (bignumber_1.BigNumber.from(tx.r).isZero() && bignumber_1.BigNumber.from(tx.s).isZero()) { - // EIP-155 unsigned transaction - tx.chainId = tx.v; - tx.v = 0; - } - else { - // Signed Transaction - tx.chainId = Math.floor((tx.v - 35) / 2); - if (tx.chainId < 0) { - tx.chainId = 0; - } - var recoveryParam = tx.v - 27; - var raw = transaction.slice(0, 6); - if (tx.chainId !== 0) { - raw.push((0, bytes_1.hexlify)(tx.chainId)); - raw.push("0x"); - raw.push("0x"); - recoveryParam -= tx.chainId * 2 + 8; - } - var digest = (0, keccak256_1.keccak256)(RLP.encode(raw)); - try { - tx.from = recoverAddress(digest, { r: (0, bytes_1.hexlify)(tx.r), s: (0, bytes_1.hexlify)(tx.s), recoveryParam: recoveryParam }); - } - catch (error) { } - tx.hash = (0, keccak256_1.keccak256)(rawTransaction); - } - tx.type = null; - return tx; -} -function parse(rawTransaction) { - var payload = (0, bytes_1.arrayify)(rawTransaction); - // Legacy and EIP-155 Transactions - if (payload[0] > 0x7f) { - return _parse(payload); - } - // Typed Transaction (EIP-2718) - switch (payload[0]) { - case 1: - return _parseEip2930(payload); - case 2: - return _parseEip1559(payload); - default: - break; - } - return logger.throwError("unsupported transaction type: " + payload[0], logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "parseTransaction", - transactionType: payload[0] - }); -} -exports.parse = parse; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 33755: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "units/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 32534: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.parseEther = exports.formatEther = exports.parseUnits = exports.formatUnits = exports.commify = void 0; -var bignumber_1 = __nccwpck_require__(18202); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(33755); -var logger = new logger_1.Logger(_version_1.version); -var names = [ - "wei", - "kwei", - "mwei", - "gwei", - "szabo", - "finney", - "ether", -]; -// Some environments have issues with RegEx that contain back-tracking, so we cannot -// use them. -function commify(value) { - var comps = String(value).split("."); - if (comps.length > 2 || !comps[0].match(/^-?[0-9]*$/) || (comps[1] && !comps[1].match(/^[0-9]*$/)) || value === "." || value === "-.") { - logger.throwArgumentError("invalid value", "value", value); - } - // Make sure we have at least one whole digit (0 if none) - var whole = comps[0]; - var negative = ""; - if (whole.substring(0, 1) === "-") { - negative = "-"; - whole = whole.substring(1); - } - // Make sure we have at least 1 whole digit with no leading zeros - while (whole.substring(0, 1) === "0") { - whole = whole.substring(1); - } - if (whole === "") { - whole = "0"; - } - var suffix = ""; - if (comps.length === 2) { - suffix = "." + (comps[1] || "0"); - } - while (suffix.length > 2 && suffix[suffix.length - 1] === "0") { - suffix = suffix.substring(0, suffix.length - 1); - } - var formatted = []; - while (whole.length) { - if (whole.length <= 3) { - formatted.unshift(whole); - break; - } - else { - var index = whole.length - 3; - formatted.unshift(whole.substring(index)); - whole = whole.substring(0, index); - } - } - return negative + formatted.join(",") + suffix; -} -exports.commify = commify; -function formatUnits(value, unitName) { - if (typeof (unitName) === "string") { - var index = names.indexOf(unitName); - if (index !== -1) { - unitName = 3 * index; - } - } - return (0, bignumber_1.formatFixed)(value, (unitName != null) ? unitName : 18); -} -exports.formatUnits = formatUnits; -function parseUnits(value, unitName) { - if (typeof (value) !== "string") { - logger.throwArgumentError("value must be a string", "value", value); - } - if (typeof (unitName) === "string") { - var index = names.indexOf(unitName); - if (index !== -1) { - unitName = 3 * index; - } - } - return (0, bignumber_1.parseFixed)(value, (unitName != null) ? unitName : 18); -} -exports.parseUnits = parseUnits; -function formatEther(wei) { - return formatUnits(wei, 18); -} -exports.formatEther = formatEther; -function parseEther(ether) { - return parseUnits(ether, 18); -} -exports.parseEther = parseEther; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 23867: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "wallet/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 30806: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -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 })); -exports.verifyTypedData = exports.verifyMessage = exports.Wallet = void 0; -var address_1 = __nccwpck_require__(75745); -var abstract_provider_1 = __nccwpck_require__(12825); -var abstract_signer_1 = __nccwpck_require__(53870); -var bytes_1 = __nccwpck_require__(42006); -var hash_1 = __nccwpck_require__(91839); -var hdnode_1 = __nccwpck_require__(13067); -var keccak256_1 = __nccwpck_require__(56938); -var properties_1 = __nccwpck_require__(61338); -var random_1 = __nccwpck_require__(53728); -var signing_key_1 = __nccwpck_require__(63928); -var json_wallets_1 = __nccwpck_require__(3582); -var transactions_1 = __nccwpck_require__(62394); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(23867); -var logger = new logger_1.Logger(_version_1.version); -function isAccount(value) { - return (value != null && (0, bytes_1.isHexString)(value.privateKey, 32) && value.address != null); -} -function hasMnemonic(value) { - var mnemonic = value.mnemonic; - return (mnemonic && mnemonic.phrase); -} -var Wallet = /** @class */ (function (_super) { - __extends(Wallet, _super); - function Wallet(privateKey, provider) { - var _this = _super.call(this) || this; - if (isAccount(privateKey)) { - var signingKey_1 = new signing_key_1.SigningKey(privateKey.privateKey); - (0, properties_1.defineReadOnly)(_this, "_signingKey", function () { return signingKey_1; }); - (0, properties_1.defineReadOnly)(_this, "address", (0, transactions_1.computeAddress)(_this.publicKey)); - if (_this.address !== (0, address_1.getAddress)(privateKey.address)) { - logger.throwArgumentError("privateKey/address mismatch", "privateKey", "[REDACTED]"); - } - if (hasMnemonic(privateKey)) { - var srcMnemonic_1 = privateKey.mnemonic; - (0, properties_1.defineReadOnly)(_this, "_mnemonic", function () { return ({ - phrase: srcMnemonic_1.phrase, - path: srcMnemonic_1.path || hdnode_1.defaultPath, - locale: srcMnemonic_1.locale || "en" - }); }); - var mnemonic = _this.mnemonic; - var node = hdnode_1.HDNode.fromMnemonic(mnemonic.phrase, null, mnemonic.locale).derivePath(mnemonic.path); - if ((0, transactions_1.computeAddress)(node.privateKey) !== _this.address) { - logger.throwArgumentError("mnemonic/address mismatch", "privateKey", "[REDACTED]"); - } - } - else { - (0, properties_1.defineReadOnly)(_this, "_mnemonic", function () { return null; }); - } - } - else { - if (signing_key_1.SigningKey.isSigningKey(privateKey)) { - /* istanbul ignore if */ - if (privateKey.curve !== "secp256k1") { - logger.throwArgumentError("unsupported curve; must be secp256k1", "privateKey", "[REDACTED]"); - } - (0, properties_1.defineReadOnly)(_this, "_signingKey", function () { return privateKey; }); - } - else { - // A lot of common tools do not prefix private keys with a 0x (see: #1166) - if (typeof (privateKey) === "string") { - if (privateKey.match(/^[0-9a-f]*$/i) && privateKey.length === 64) { - privateKey = "0x" + privateKey; - } - } - var signingKey_2 = new signing_key_1.SigningKey(privateKey); - (0, properties_1.defineReadOnly)(_this, "_signingKey", function () { return signingKey_2; }); - } - (0, properties_1.defineReadOnly)(_this, "_mnemonic", function () { return null; }); - (0, properties_1.defineReadOnly)(_this, "address", (0, transactions_1.computeAddress)(_this.publicKey)); - } - /* istanbul ignore if */ - if (provider && !abstract_provider_1.Provider.isProvider(provider)) { - logger.throwArgumentError("invalid provider", "provider", provider); - } - (0, properties_1.defineReadOnly)(_this, "provider", provider || null); - return _this; - } - Object.defineProperty(Wallet.prototype, "mnemonic", { - get: function () { return this._mnemonic(); }, - enumerable: false, - configurable: true - }); - Object.defineProperty(Wallet.prototype, "privateKey", { - get: function () { return this._signingKey().privateKey; }, - enumerable: false, - configurable: true - }); - Object.defineProperty(Wallet.prototype, "publicKey", { - get: function () { return this._signingKey().publicKey; }, - enumerable: false, - configurable: true - }); - Wallet.prototype.getAddress = function () { - return Promise.resolve(this.address); - }; - Wallet.prototype.connect = function (provider) { - return new Wallet(this, provider); - }; - Wallet.prototype.signTransaction = function (transaction) { - var _this = this; - return (0, properties_1.resolveProperties)(transaction).then(function (tx) { - if (tx.from != null) { - if ((0, address_1.getAddress)(tx.from) !== _this.address) { - logger.throwArgumentError("transaction from address mismatch", "transaction.from", transaction.from); - } - delete tx.from; - } - var signature = _this._signingKey().signDigest((0, keccak256_1.keccak256)((0, transactions_1.serialize)(tx))); - return (0, transactions_1.serialize)(tx, signature); - }); - }; - Wallet.prototype.signMessage = function (message) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2 /*return*/, (0, bytes_1.joinSignature)(this._signingKey().signDigest((0, hash_1.hashMessage)(message)))]; - }); - }); - }; - Wallet.prototype._signTypedData = function (domain, types, value) { - return __awaiter(this, void 0, void 0, function () { - var populated; - var _this = this; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, hash_1._TypedDataEncoder.resolveNames(domain, types, value, function (name) { - if (_this.provider == null) { - logger.throwError("cannot resolve ENS names without a provider", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "resolveName", - value: name - }); - } - return _this.provider.resolveName(name); - })]; - case 1: - populated = _a.sent(); - return [2 /*return*/, (0, bytes_1.joinSignature)(this._signingKey().signDigest(hash_1._TypedDataEncoder.hash(populated.domain, types, populated.value)))]; - } - }); - }); - }; - Wallet.prototype.encrypt = function (password, options, progressCallback) { - if (typeof (options) === "function" && !progressCallback) { - progressCallback = options; - options = {}; - } - if (progressCallback && typeof (progressCallback) !== "function") { - throw new Error("invalid callback"); - } - if (!options) { - options = {}; - } - return (0, json_wallets_1.encryptKeystore)(this, password, options, progressCallback); - }; - /** - * Static methods to create Wallet instances. - */ - Wallet.createRandom = function (options) { - var entropy = (0, random_1.randomBytes)(16); - if (!options) { - options = {}; - } - if (options.extraEntropy) { - entropy = (0, bytes_1.arrayify)((0, bytes_1.hexDataSlice)((0, keccak256_1.keccak256)((0, bytes_1.concat)([entropy, options.extraEntropy])), 0, 16)); - } - var mnemonic = (0, hdnode_1.entropyToMnemonic)(entropy, options.locale); - return Wallet.fromMnemonic(mnemonic, options.path, options.locale); - }; - Wallet.fromEncryptedJson = function (json, password, progressCallback) { - return (0, json_wallets_1.decryptJsonWallet)(json, password, progressCallback).then(function (account) { - return new Wallet(account); - }); - }; - Wallet.fromEncryptedJsonSync = function (json, password) { - return new Wallet((0, json_wallets_1.decryptJsonWalletSync)(json, password)); - }; - Wallet.fromMnemonic = function (mnemonic, path, wordlist) { - if (!path) { - path = hdnode_1.defaultPath; - } - return new Wallet(hdnode_1.HDNode.fromMnemonic(mnemonic, null, wordlist).derivePath(path)); - }; - return Wallet; -}(abstract_signer_1.Signer)); -exports.Wallet = Wallet; -function verifyMessage(message, signature) { - return (0, transactions_1.recoverAddress)((0, hash_1.hashMessage)(message), signature); -} -exports.verifyMessage = verifyMessage; -function verifyTypedData(domain, types, value, signature) { - return (0, transactions_1.recoverAddress)(hash_1._TypedDataEncoder.hash(domain, types, value), signature); -} -exports.verifyTypedData = verifyTypedData; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 8136: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "web/5.7.1"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 77730: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"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 }; - } -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.getUrl = void 0; -var http_1 = __importDefault(__nccwpck_require__(58611)); -var https_1 = __importDefault(__nccwpck_require__(65692)); -var zlib_1 = __nccwpck_require__(43106); -var url_1 = __nccwpck_require__(87016); -var bytes_1 = __nccwpck_require__(42006); -var properties_1 = __nccwpck_require__(61338); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(8136); -var logger = new logger_1.Logger(_version_1.version); -function getResponse(request) { - return new Promise(function (resolve, reject) { - request.once("response", function (resp) { - var response = { - statusCode: resp.statusCode, - statusMessage: resp.statusMessage, - headers: Object.keys(resp.headers).reduce(function (accum, name) { - var value = resp.headers[name]; - if (Array.isArray(value)) { - value = value.join(", "); - } - accum[name] = value; - return accum; - }, {}), - body: null - }; - //resp.setEncoding("utf8"); - resp.on("data", function (chunk) { - if (response.body == null) { - response.body = new Uint8Array(0); - } - response.body = (0, bytes_1.concat)([response.body, chunk]); - }); - resp.on("end", function () { - if (response.headers["content-encoding"] === "gzip") { - //const size = response.body.length; - response.body = (0, bytes_1.arrayify)((0, zlib_1.gunzipSync)(response.body)); - //console.log("Delta:", response.body.length - size, Buffer.from(response.body).toString()); - } - resolve(response); - }); - resp.on("error", function (error) { - /* istanbul ignore next */ - error.response = response; - reject(error); - }); - }); - request.on("error", function (error) { reject(error); }); - }); -} -// The URL.parse uses null instead of the empty string -function nonnull(value) { - if (value == null) { - return ""; - } - return value; -} -function getUrl(href, options) { - return __awaiter(this, void 0, void 0, function () { - var url, request, req, response; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (options == null) { - options = {}; - } - url = (0, url_1.parse)(href); - request = { - protocol: nonnull(url.protocol), - hostname: nonnull(url.hostname), - port: nonnull(url.port), - path: (nonnull(url.pathname) + nonnull(url.search)), - method: (options.method || "GET"), - headers: (0, properties_1.shallowCopy)(options.headers || {}), - }; - if (options.allowGzip) { - request.headers["accept-encoding"] = "gzip"; - } - req = null; - switch (nonnull(url.protocol)) { - case "http:": - req = http_1.default.request(request); - break; - case "https:": - req = https_1.default.request(request); - break; - default: - /* istanbul ignore next */ - logger.throwError("unsupported protocol " + url.protocol, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - protocol: url.protocol, - operation: "request" - }); - } - if (options.body) { - req.write(Buffer.from(options.body)); - } - req.end(); - return [4 /*yield*/, getResponse(req)]; - case 1: - response = _a.sent(); - return [2 /*return*/, response]; - } - }); - }); -} -exports.getUrl = getUrl; -//# sourceMappingURL=geturl.js.map - -/***/ }), - -/***/ 72239: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"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 })); -exports.poll = exports.fetchJson = exports._fetchData = void 0; -var base64_1 = __nccwpck_require__(99032); -var bytes_1 = __nccwpck_require__(42006); -var properties_1 = __nccwpck_require__(61338); -var strings_1 = __nccwpck_require__(13859); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(8136); -var logger = new logger_1.Logger(_version_1.version); -var geturl_1 = __nccwpck_require__(77730); -function staller(duration) { - return new Promise(function (resolve) { - setTimeout(resolve, duration); - }); -} -function bodyify(value, type) { - if (value == null) { - return null; - } - if (typeof (value) === "string") { - return value; - } - if ((0, bytes_1.isBytesLike)(value)) { - if (type && (type.split("/")[0] === "text" || type.split(";")[0].trim() === "application/json")) { - try { - return (0, strings_1.toUtf8String)(value); - } - catch (error) { } - ; - } - return (0, bytes_1.hexlify)(value); - } - return value; -} -function unpercent(value) { - return (0, strings_1.toUtf8Bytes)(value.replace(/%([0-9a-f][0-9a-f])/gi, function (all, code) { - return String.fromCharCode(parseInt(code, 16)); - })); -} -// This API is still a work in progress; the future changes will likely be: -// - ConnectionInfo => FetchDataRequest -// - FetchDataRequest.body? = string | Uint8Array | { contentType: string, data: string | Uint8Array } -// - If string => text/plain, Uint8Array => application/octet-stream (if content-type unspecified) -// - FetchDataRequest.processFunc = (body: Uint8Array, response: FetchDataResponse) => T -// For this reason, it should be considered internal until the API is finalized -function _fetchData(connection, body, processFunc) { - // How many times to retry in the event of a throttle - var attemptLimit = (typeof (connection) === "object" && connection.throttleLimit != null) ? connection.throttleLimit : 12; - logger.assertArgument((attemptLimit > 0 && (attemptLimit % 1) === 0), "invalid connection throttle limit", "connection.throttleLimit", attemptLimit); - var throttleCallback = ((typeof (connection) === "object") ? connection.throttleCallback : null); - var throttleSlotInterval = ((typeof (connection) === "object" && typeof (connection.throttleSlotInterval) === "number") ? connection.throttleSlotInterval : 100); - logger.assertArgument((throttleSlotInterval > 0 && (throttleSlotInterval % 1) === 0), "invalid connection throttle slot interval", "connection.throttleSlotInterval", throttleSlotInterval); - var errorPassThrough = ((typeof (connection) === "object") ? !!(connection.errorPassThrough) : false); - var headers = {}; - var url = null; - // @TODO: Allow ConnectionInfo to override some of these values - var options = { - method: "GET", - }; - var allow304 = false; - var timeout = 2 * 60 * 1000; - if (typeof (connection) === "string") { - url = connection; - } - else if (typeof (connection) === "object") { - if (connection == null || connection.url == null) { - logger.throwArgumentError("missing URL", "connection.url", connection); - } - url = connection.url; - if (typeof (connection.timeout) === "number" && connection.timeout > 0) { - timeout = connection.timeout; - } - if (connection.headers) { - for (var key in connection.headers) { - headers[key.toLowerCase()] = { key: key, value: String(connection.headers[key]) }; - if (["if-none-match", "if-modified-since"].indexOf(key.toLowerCase()) >= 0) { - allow304 = true; - } - } - } - options.allowGzip = !!connection.allowGzip; - if (connection.user != null && connection.password != null) { - if (url.substring(0, 6) !== "https:" && connection.allowInsecureAuthentication !== true) { - logger.throwError("basic authentication requires a secure https url", logger_1.Logger.errors.INVALID_ARGUMENT, { argument: "url", url: url, user: connection.user, password: "[REDACTED]" }); - } - var authorization = connection.user + ":" + connection.password; - headers["authorization"] = { - key: "Authorization", - value: "Basic " + (0, base64_1.encode)((0, strings_1.toUtf8Bytes)(authorization)) - }; - } - if (connection.skipFetchSetup != null) { - options.skipFetchSetup = !!connection.skipFetchSetup; - } - if (connection.fetchOptions != null) { - options.fetchOptions = (0, properties_1.shallowCopy)(connection.fetchOptions); - } - } - var reData = new RegExp("^data:([^;:]*)?(;base64)?,(.*)$", "i"); - var dataMatch = ((url) ? url.match(reData) : null); - if (dataMatch) { - try { - var response = { - statusCode: 200, - statusMessage: "OK", - headers: { "content-type": (dataMatch[1] || "text/plain") }, - body: (dataMatch[2] ? (0, base64_1.decode)(dataMatch[3]) : unpercent(dataMatch[3])) - }; - var result = response.body; - if (processFunc) { - result = processFunc(response.body, response); - } - return Promise.resolve(result); - } - catch (error) { - logger.throwError("processing response error", logger_1.Logger.errors.SERVER_ERROR, { - body: bodyify(dataMatch[1], dataMatch[2]), - error: error, - requestBody: null, - requestMethod: "GET", - url: url - }); - } - } - if (body) { - options.method = "POST"; - options.body = body; - if (headers["content-type"] == null) { - headers["content-type"] = { key: "Content-Type", value: "application/octet-stream" }; - } - if (headers["content-length"] == null) { - headers["content-length"] = { key: "Content-Length", value: String(body.length) }; - } - } - var flatHeaders = {}; - Object.keys(headers).forEach(function (key) { - var header = headers[key]; - flatHeaders[header.key] = header.value; - }); - options.headers = flatHeaders; - var runningTimeout = (function () { - var timer = null; - var promise = new Promise(function (resolve, reject) { - if (timeout) { - timer = setTimeout(function () { - if (timer == null) { - return; - } - timer = null; - reject(logger.makeError("timeout", logger_1.Logger.errors.TIMEOUT, { - requestBody: bodyify(options.body, flatHeaders["content-type"]), - requestMethod: options.method, - timeout: timeout, - url: url - })); - }, timeout); - } - }); - var cancel = function () { - if (timer == null) { - return; - } - clearTimeout(timer); - timer = null; - }; - return { promise: promise, cancel: cancel }; - })(); - var runningFetch = (function () { - return __awaiter(this, void 0, void 0, function () { - var attempt, response, location_1, tryAgain, stall, retryAfter, error_1, body_1, result, error_2, tryAgain, timeout_1; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - attempt = 0; - _a.label = 1; - case 1: - if (!(attempt < attemptLimit)) return [3 /*break*/, 20]; - response = null; - _a.label = 2; - case 2: - _a.trys.push([2, 9, , 10]); - return [4 /*yield*/, (0, geturl_1.getUrl)(url, options)]; - case 3: - response = _a.sent(); - if (!(attempt < attemptLimit)) return [3 /*break*/, 8]; - if (!(response.statusCode === 301 || response.statusCode === 302)) return [3 /*break*/, 4]; - location_1 = response.headers.location || ""; - if (options.method === "GET" && location_1.match(/^https:/)) { - url = response.headers.location; - return [3 /*break*/, 19]; - } - return [3 /*break*/, 8]; - case 4: - if (!(response.statusCode === 429)) return [3 /*break*/, 8]; - tryAgain = true; - if (!throttleCallback) return [3 /*break*/, 6]; - return [4 /*yield*/, throttleCallback(attempt, url)]; - case 5: - tryAgain = _a.sent(); - _a.label = 6; - case 6: - if (!tryAgain) return [3 /*break*/, 8]; - stall = 0; - retryAfter = response.headers["retry-after"]; - if (typeof (retryAfter) === "string" && retryAfter.match(/^[1-9][0-9]*$/)) { - stall = parseInt(retryAfter) * 1000; - } - else { - stall = throttleSlotInterval * parseInt(String(Math.random() * Math.pow(2, attempt))); - } - //console.log("Stalling 429"); - return [4 /*yield*/, staller(stall)]; - case 7: - //console.log("Stalling 429"); - _a.sent(); - return [3 /*break*/, 19]; - case 8: return [3 /*break*/, 10]; - case 9: - error_1 = _a.sent(); - response = error_1.response; - if (response == null) { - runningTimeout.cancel(); - logger.throwError("missing response", logger_1.Logger.errors.SERVER_ERROR, { - requestBody: bodyify(options.body, flatHeaders["content-type"]), - requestMethod: options.method, - serverError: error_1, - url: url - }); - } - return [3 /*break*/, 10]; - case 10: - body_1 = response.body; - if (allow304 && response.statusCode === 304) { - body_1 = null; - } - else if (!errorPassThrough && (response.statusCode < 200 || response.statusCode >= 300)) { - runningTimeout.cancel(); - logger.throwError("bad response", logger_1.Logger.errors.SERVER_ERROR, { - status: response.statusCode, - headers: response.headers, - body: bodyify(body_1, ((response.headers) ? response.headers["content-type"] : null)), - requestBody: bodyify(options.body, flatHeaders["content-type"]), - requestMethod: options.method, - url: url - }); - } - if (!processFunc) return [3 /*break*/, 18]; - _a.label = 11; - case 11: - _a.trys.push([11, 13, , 18]); - return [4 /*yield*/, processFunc(body_1, response)]; - case 12: - result = _a.sent(); - runningTimeout.cancel(); - return [2 /*return*/, result]; - case 13: - error_2 = _a.sent(); - if (!(error_2.throttleRetry && attempt < attemptLimit)) return [3 /*break*/, 17]; - tryAgain = true; - if (!throttleCallback) return [3 /*break*/, 15]; - return [4 /*yield*/, throttleCallback(attempt, url)]; - case 14: - tryAgain = _a.sent(); - _a.label = 15; - case 15: - if (!tryAgain) return [3 /*break*/, 17]; - timeout_1 = throttleSlotInterval * parseInt(String(Math.random() * Math.pow(2, attempt))); - //console.log("Stalling callback"); - return [4 /*yield*/, staller(timeout_1)]; - case 16: - //console.log("Stalling callback"); - _a.sent(); - return [3 /*break*/, 19]; - case 17: - runningTimeout.cancel(); - logger.throwError("processing response error", logger_1.Logger.errors.SERVER_ERROR, { - body: bodyify(body_1, ((response.headers) ? response.headers["content-type"] : null)), - error: error_2, - requestBody: bodyify(options.body, flatHeaders["content-type"]), - requestMethod: options.method, - url: url - }); - return [3 /*break*/, 18]; - case 18: - runningTimeout.cancel(); - // If we had a processFunc, it either returned a T or threw above. - // The "body" is now a Uint8Array. - return [2 /*return*/, body_1]; - case 19: - attempt++; - return [3 /*break*/, 1]; - case 20: return [2 /*return*/, logger.throwError("failed response", logger_1.Logger.errors.SERVER_ERROR, { - requestBody: bodyify(options.body, flatHeaders["content-type"]), - requestMethod: options.method, - url: url - })]; - } - }); - }); - })(); - return Promise.race([runningTimeout.promise, runningFetch]); -} -exports._fetchData = _fetchData; -function fetchJson(connection, json, processFunc) { - var processJsonFunc = function (value, response) { - var result = null; - if (value != null) { - try { - result = JSON.parse((0, strings_1.toUtf8String)(value)); - } - catch (error) { - logger.throwError("invalid JSON", logger_1.Logger.errors.SERVER_ERROR, { - body: value, - error: error - }); - } - } - if (processFunc) { - result = processFunc(result, response); - } - return result; - }; - // If we have json to send, we must - // - add content-type of application/json (unless already overridden) - // - convert the json to bytes - var body = null; - if (json != null) { - body = (0, strings_1.toUtf8Bytes)(json); - // Create a connection with the content-type set for JSON - var updated = (typeof (connection) === "string") ? ({ url: connection }) : (0, properties_1.shallowCopy)(connection); - if (updated.headers) { - var hasContentType = (Object.keys(updated.headers).filter(function (k) { return (k.toLowerCase() === "content-type"); }).length) !== 0; - if (!hasContentType) { - updated.headers = (0, properties_1.shallowCopy)(updated.headers); - updated.headers["content-type"] = "application/json"; - } - } - else { - updated.headers = { "content-type": "application/json" }; - } - connection = updated; - } - return _fetchData(connection, body, processJsonFunc); -} -exports.fetchJson = fetchJson; -function poll(func, options) { - if (!options) { - options = {}; - } - options = (0, properties_1.shallowCopy)(options); - if (options.floor == null) { - options.floor = 0; - } - if (options.ceiling == null) { - options.ceiling = 10000; - } - if (options.interval == null) { - options.interval = 250; - } - return new Promise(function (resolve, reject) { - var timer = null; - var done = false; - // Returns true if cancel was successful. Unsuccessful cancel means we're already done. - var cancel = function () { - if (done) { - return false; - } - done = true; - if (timer) { - clearTimeout(timer); - } - return true; - }; - if (options.timeout) { - timer = setTimeout(function () { - if (cancel()) { - reject(new Error("timeout")); - } - }, options.timeout); - } - var retryLimit = options.retryLimit; - var attempt = 0; - function check() { - return func().then(function (result) { - // If we have a result, or are allowed null then we're done - if (result !== undefined) { - if (cancel()) { - resolve(result); - } - } - else if (options.oncePoll) { - options.oncePoll.once("poll", check); - } - else if (options.onceBlock) { - options.onceBlock.once("block", check); - // Otherwise, exponential back-off (up to 10s) our next request - } - else if (!done) { - attempt++; - if (attempt > retryLimit) { - if (cancel()) { - reject(new Error("retry limit reached")); - } - return; - } - var timeout = options.interval * parseInt(String(Math.random() * Math.pow(2, attempt))); - if (timeout < options.floor) { - timeout = options.floor; - } - if (timeout > options.ceiling) { - timeout = options.ceiling; - } - setTimeout(check, timeout); - } - return null; - }, function (error) { - if (cancel()) { - reject(error); - } - }); - } - check(); - }); -} -exports.poll = poll; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 17141: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "wordlists/5.7.0"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 78168: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.wordlists = exports.Wordlist = exports.logger = void 0; -// Wordlists -// See: https://github.com/bitcoin/bips/blob/master/bip-0039/bip-0039-wordlists.md -var wordlist_1 = __nccwpck_require__(18210); -Object.defineProperty(exports, "logger", ({ enumerable: true, get: function () { return wordlist_1.logger; } })); -Object.defineProperty(exports, "Wordlist", ({ enumerable: true, get: function () { return wordlist_1.Wordlist; } })); -var wordlists_1 = __nccwpck_require__(1057); -Object.defineProperty(exports, "wordlists", ({ enumerable: true, get: function () { return wordlists_1.wordlists; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 53994: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.langCz = void 0; -var wordlist_1 = __nccwpck_require__(18210); -var words = "AbdikaceAbecedaAdresaAgreseAkceAktovkaAlejAlkoholAmputaceAnanasAndulkaAnekdotaAnketaAntikaAnulovatArchaAroganceAsfaltAsistentAspiraceAstmaAstronomAtlasAtletikaAtolAutobusAzylBabkaBachorBacilBaculkaBadatelBagetaBagrBahnoBakterieBaladaBaletkaBalkonBalonekBalvanBalzaBambusBankomatBarbarBaretBarmanBarokoBarvaBaterkaBatohBavlnaBazalkaBazilikaBazukaBednaBeranBesedaBestieBetonBezinkaBezmocBeztakBicyklBidloBiftekBikinyBilanceBiografBiologBitvaBizonBlahobytBlatouchBlechaBleduleBleskBlikatBliznaBlokovatBlouditBludBobekBobrBodlinaBodnoutBohatostBojkotBojovatBokorysBolestBorecBoroviceBotaBoubelBouchatBoudaBouleBouratBoxerBradavkaBramboraBrankaBratrBreptaBriketaBrkoBrlohBronzBroskevBrunetkaBrusinkaBrzdaBrzyBublinaBubnovatBuchtaBuditelBudkaBudovaBufetBujarostBukviceBuldokBulvaBundaBunkrBurzaButikBuvolBuzolaBydletBylinaBytovkaBzukotCapartCarevnaCedrCeduleCejchCejnCelaCelerCelkemCelniceCeninaCennostCenovkaCentrumCenzorCestopisCetkaChalupaChapadloCharitaChataChechtatChemieChichotChirurgChladChlebaChlubitChmelChmuraChobotChocholChodbaCholeraChomoutChopitChorobaChovChrapotChrlitChrtChrupChtivostChudinaChutnatChvatChvilkaChvostChybaChystatChytitCibuleCigaretaCihelnaCihlaCinkotCirkusCisternaCitaceCitrusCizinecCizostClonaCokolivCouvatCtitelCtnostCudnostCuketaCukrCupotCvaknoutCvalCvikCvrkotCyklistaDalekoDarebaDatelDatumDceraDebataDechovkaDecibelDeficitDeflaceDeklDekretDemokratDepreseDerbyDeskaDetektivDikobrazDiktovatDiodaDiplomDiskDisplejDivadloDivochDlahaDlouhoDluhopisDnesDobroDobytekDocentDochutitDodnesDohledDohodaDohraDojemDojniceDokladDokolaDoktorDokumentDolarDolevaDolinaDomaDominantDomluvitDomovDonutitDopadDopisDoplnitDoposudDoprovodDopustitDorazitDorostDortDosahDoslovDostatekDosudDosytaDotazDotekDotknoutDoufatDoutnatDovozceDozaduDoznatDozorceDrahotaDrakDramatikDravecDrazeDrdolDrobnostDrogerieDrozdDrsnostDrtitDrzostDubenDuchovnoDudekDuhaDuhovkaDusitDusnoDutostDvojiceDvorecDynamitEkologEkonomieElektronElipsaEmailEmiseEmoceEmpatieEpizodaEpochaEpopejEposEsejEsenceEskortaEskymoEtiketaEuforieEvoluceExekuceExkurzeExpediceExplozeExportExtraktFackaFajfkaFakultaFanatikFantazieFarmacieFavoritFazoleFederaceFejetonFenkaFialkaFigurantFilozofFiltrFinanceFintaFixaceFjordFlanelFlirtFlotilaFondFosforFotbalFotkaFotonFrakceFreskaFrontaFukarFunkceFyzikaGalejeGarantGenetikaGeologGilotinaGlazuraGlejtGolemGolfistaGotikaGrafGramofonGranuleGrepGrilGrogGroteskaGumaHadiceHadrHalaHalenkaHanbaHanopisHarfaHarpunaHavranHebkostHejkalHejnoHejtmanHektarHelmaHematomHerecHernaHesloHezkyHistorikHladovkaHlasivkyHlavaHledatHlenHlodavecHlohHloupostHltatHlubinaHluchotaHmatHmotaHmyzHnisHnojivoHnoutHoblinaHobojHochHodinyHodlatHodnotaHodovatHojnostHokejHolinkaHolkaHolubHomoleHonitbaHonoraceHoralHordaHorizontHorkoHorlivecHormonHorninaHoroskopHorstvoHospodaHostinaHotovostHoubaHoufHoupatHouskaHovorHradbaHraniceHravostHrazdaHrbolekHrdinaHrdloHrdostHrnekHrobkaHromadaHrotHroudaHrozenHrstkaHrubostHryzatHubenostHubnoutHudbaHukotHumrHusitaHustotaHvozdHybnostHydrantHygienaHymnaHysterikIdylkaIhnedIkonaIluzeImunitaInfekceInflaceInkasoInovaceInspekceInternetInvalidaInvestorInzerceIronieJablkoJachtaJahodaJakmileJakostJalovecJantarJarmarkJaroJasanJasnoJatkaJavorJazykJedinecJedleJednatelJehlanJekotJelenJelitoJemnostJenomJepiceJeseterJevitJezdecJezeroJinakJindyJinochJiskraJistotaJitrniceJizvaJmenovatJogurtJurtaKabaretKabelKabinetKachnaKadetKadidloKahanKajakKajutaKakaoKaktusKalamitaKalhotyKalibrKalnostKameraKamkolivKamnaKanibalKanoeKantorKapalinaKapelaKapitolaKapkaKapleKapotaKaprKapustaKapybaraKaramelKarotkaKartonKasaKatalogKatedraKauceKauzaKavalecKazajkaKazetaKazivostKdekolivKdesiKedlubenKempKeramikaKinoKlacekKladivoKlamKlapotKlasikaKlaunKlecKlenbaKlepatKlesnoutKlidKlimaKlisnaKloboukKlokanKlopaKloubKlubovnaKlusatKluzkostKmenKmitatKmotrKnihaKnotKoaliceKoberecKobkaKoblihaKobylaKocourKohoutKojenecKokosKoktejlKolapsKoledaKolizeKoloKomandoKometaKomikKomnataKomoraKompasKomunitaKonatKonceptKondiceKonecKonfeseKongresKoninaKonkursKontaktKonzervaKopanecKopieKopnoutKoprovkaKorbelKorektorKormidloKoroptevKorpusKorunaKorytoKorzetKosatecKostkaKotelKotletaKotoulKoukatKoupelnaKousekKouzloKovbojKozaKozorohKrabiceKrachKrajinaKralovatKrasopisKravataKreditKrejcarKresbaKrevetaKriketKritikKrizeKrkavecKrmelecKrmivoKrocanKrokKronikaKropitKroupaKrovkaKrtekKruhadloKrupiceKrutostKrvinkaKrychleKryptaKrystalKrytKudlankaKufrKujnostKuklaKulajdaKulichKulkaKulometKulturaKunaKupodivuKurtKurzorKutilKvalitaKvasinkaKvestorKynologKyselinaKytaraKyticeKytkaKytovecKyvadloLabradorLachtanLadnostLaikLakomecLamelaLampaLanovkaLasiceLasoLasturaLatinkaLavinaLebkaLeckdyLedenLedniceLedovkaLedvinaLegendaLegieLegraceLehceLehkostLehnoutLektvarLenochodLentilkaLepenkaLepidloLetadloLetecLetmoLetokruhLevhartLevitaceLevobokLibraLichotkaLidojedLidskostLihovinaLijavecLilekLimetkaLinieLinkaLinoleumListopadLitinaLitovatLobistaLodivodLogikaLogopedLokalitaLoketLomcovatLopataLopuchLordLososLotrLoudalLouhLoukaLouskatLovecLstivostLucernaLuciferLumpLuskLustraceLviceLyraLyrikaLysinaMadamMadloMagistrMahagonMajetekMajitelMajoritaMakakMakoviceMakrelaMalbaMalinaMalovatMalviceMaminkaMandleMankoMarnostMasakrMaskotMasopustMaticeMatrikaMaturitaMazanecMazivoMazlitMazurkaMdlobaMechanikMeditaceMedovinaMelasaMelounMentolkaMetlaMetodaMetrMezeraMigraceMihnoutMihuleMikinaMikrofonMilenecMilimetrMilostMimikaMincovnaMinibarMinometMinulostMiskaMistrMixovatMladostMlhaMlhovinaMlokMlsatMluvitMnichMnohemMobilMocnostModelkaModlitbaMohylaMokroMolekulaMomentkaMonarchaMonoklMonstrumMontovatMonzunMosazMoskytMostMotivaceMotorkaMotykaMouchaMoudrostMozaikaMozekMozolMramorMravenecMrkevMrtvolaMrzetMrzutostMstitelMudrcMuflonMulatMumieMuniceMusetMutaceMuzeumMuzikantMyslivecMzdaNabouratNachytatNadaceNadbytekNadhozNadobroNadpisNahlasNahnatNahodileNahraditNaivitaNajednouNajistoNajmoutNaklonitNakonecNakrmitNalevoNamazatNamluvitNanometrNaokoNaopakNaostroNapadatNapevnoNaplnitNapnoutNaposledNaprostoNaroditNarubyNarychloNasaditNasekatNaslepoNastatNatolikNavenekNavrchNavzdoryNazvatNebeNechatNeckyNedalekoNedbatNeduhNegaceNehetNehodaNejenNejprveNeklidNelibostNemilostNemocNeochotaNeonkaNepokojNerostNervNesmyslNesouladNetvorNeuronNevinaNezvykleNicotaNijakNikamNikdyNiklNikterakNitroNoclehNohaviceNominaceNoraNorekNositelNosnostNouzeNovinyNovotaNozdraNudaNudleNugetNutitNutnostNutrieNymfaObalObarvitObavaObdivObecObehnatObejmoutObezitaObhajobaObilniceObjasnitObjektObklopitOblastOblekOblibaOblohaObludaObnosObohatitObojekOboutObrazecObrnaObrubaObrysObsahObsluhaObstaratObuvObvazObvinitObvodObvykleObyvatelObzorOcasOcelOcenitOchladitOchotaOchranaOcitnoutOdbojOdbytOdchodOdcizitOdebratOdeslatOdevzdatOdezvaOdhadceOdhoditOdjetOdjinudOdkazOdkoupitOdlivOdlukaOdmlkaOdolnostOdpadOdpisOdploutOdporOdpustitOdpykatOdrazkaOdsouditOdstupOdsunOdtokOdtudOdvahaOdvetaOdvolatOdvracetOdznakOfinaOfsajdOhlasOhniskoOhradaOhrozitOhryzekOkapOkeniceOklikaOknoOkouzlitOkovyOkrasaOkresOkrsekOkruhOkupantOkurkaOkusitOlejninaOlizovatOmakOmeletaOmezitOmladinaOmlouvatOmluvaOmylOnehdyOpakovatOpasekOperaceOpiceOpilostOpisovatOporaOpoziceOpravduOprotiOrbitalOrchestrOrgieOrliceOrlojOrtelOsadaOschnoutOsikaOsivoOslavaOslepitOslnitOslovitOsnovaOsobaOsolitOspalecOstenOstrahaOstudaOstychOsvojitOteplitOtiskOtopOtrhatOtrlostOtrokOtrubyOtvorOvanoutOvarOvesOvlivnitOvoceOxidOzdobaPachatelPacientPadouchPahorekPaktPalandaPalecPalivoPalubaPamfletPamlsekPanenkaPanikaPannaPanovatPanstvoPantoflePaprikaParketaParodiePartaParukaParybaPasekaPasivitaPastelkaPatentPatronaPavoukPaznehtPazourekPeckaPedagogPejsekPekloPelotonPenaltaPendrekPenzePeriskopPeroPestrostPetardaPeticePetrolejPevninaPexesoPianistaPihaPijavicePiklePiknikPilinaPilnostPilulkaPinzetaPipetaPisatelPistolePitevnaPivnicePivovarPlacentaPlakatPlamenPlanetaPlastikaPlatitPlavidloPlazPlechPlemenoPlentaPlesPletivoPlevelPlivatPlnitPlnoPlochaPlodinaPlombaPloutPlukPlynPobavitPobytPochodPocitPoctivecPodatPodcenitPodepsatPodhledPodivitPodkladPodmanitPodnikPodobaPodporaPodrazPodstataPodvodPodzimPoeziePohankaPohnutkaPohovorPohromaPohybPointaPojistkaPojmoutPokazitPoklesPokojPokrokPokutaPokynPolednePolibekPolknoutPolohaPolynomPomaluPominoutPomlkaPomocPomstaPomysletPonechatPonorkaPonurostPopadatPopelPopisekPoplachPoprositPopsatPopudPoradcePorcePorodPoruchaPoryvPosaditPosedPosilaPoskokPoslanecPosouditPospoluPostavaPosudekPosypPotahPotkanPotleskPotomekPotravaPotupaPotvoraPoukazPoutoPouzdroPovahaPovidlaPovlakPovozPovrchPovstatPovykPovzdechPozdravPozemekPoznatekPozorPozvatPracovatPrahoryPraktikaPralesPraotecPraporekPrasePravdaPrincipPrknoProbuditProcentoProdejProfeseProhraProjektProlomitPromilePronikatPropadProrokProsbaProtonProutekProvazPrskavkaPrstenPrudkostPrutPrvekPrvohoryPsanecPsovodPstruhPtactvoPubertaPuchPudlPukavecPuklinaPukrlePultPumpaPuncPupenPusaPusinkaPustinaPutovatPutykaPyramidaPyskPytelRacekRachotRadiaceRadniceRadonRaftRagbyRaketaRakovinaRamenoRampouchRandeRarachRaritaRasovnaRastrRatolestRazanceRazidloReagovatReakceReceptRedaktorReferentReflexRejnokReklamaRekordRekrutRektorReputaceRevizeRevmaRevolverRezervaRiskovatRizikoRobotikaRodokmenRohovkaRokleRokokoRomanetoRopovodRopuchaRorejsRosolRostlinaRotmistrRotopedRotundaRoubenkaRouchoRoupRouraRovinaRovniceRozborRozchodRozdatRozeznatRozhodceRozinkaRozjezdRozkazRozlohaRozmarRozpadRozruchRozsahRoztokRozumRozvodRubrikaRuchadloRukaviceRukopisRybaRybolovRychlostRydloRypadloRytinaRyzostSadistaSahatSakoSamecSamizdatSamotaSanitkaSardinkaSasankaSatelitSazbaSazeniceSborSchovatSebrankaSeceseSedadloSedimentSedloSehnatSejmoutSekeraSektaSekundaSekvojeSemenoSenoServisSesaditSeshoraSeskokSeslatSestraSesuvSesypatSetbaSetinaSetkatSetnoutSetrvatSeverSeznamShodaShrnoutSifonSilniceSirkaSirotekSirupSituaceSkafandrSkaliskoSkanzenSkautSkeptikSkicaSkladbaSkleniceSkloSkluzSkobaSkokanSkoroSkriptaSkrzSkupinaSkvostSkvrnaSlabikaSladidloSlaninaSlastSlavnostSledovatSlepecSlevaSlezinaSlibSlinaSlizniceSlonSloupekSlovoSluchSluhaSlunceSlupkaSlzaSmaragdSmetanaSmilstvoSmlouvaSmogSmradSmrkSmrtkaSmutekSmyslSnadSnahaSnobSobotaSochaSodovkaSokolSopkaSotvaSoubojSoucitSoudceSouhlasSouladSoumrakSoupravaSousedSoutokSouvisetSpalovnaSpasitelSpisSplavSpodekSpojenecSpoluSponzorSpornostSpoustaSprchaSpustitSrandaSrazSrdceSrnaSrnecSrovnatSrpenSrstSrubStaniceStarostaStatikaStavbaStehnoStezkaStodolaStolekStopaStornoStoupatStrachStresStrhnoutStromStrunaStudnaStupniceStvolStykSubjektSubtropySucharSudostSuknoSundatSunoutSurikataSurovinaSvahSvalstvoSvetrSvatbaSvazekSvisleSvitekSvobodaSvodidloSvorkaSvrabSykavkaSykotSynekSynovecSypatSypkostSyrovostSyselSytostTabletkaTabuleTahounTajemnoTajfunTajgaTajitTajnostTaktikaTamhleTamponTancovatTanecTankerTapetaTaveninaTazatelTechnikaTehdyTekutinaTelefonTemnotaTendenceTenistaTenorTeplotaTepnaTeprveTerapieTermoskaTextilTichoTiskopisTitulekTkadlecTkaninaTlapkaTleskatTlukotTlupaTmelToaletaTopinkaTopolTorzoTouhaToulecTradiceTraktorTrampTrasaTraverzaTrefitTrestTrezorTrhavinaTrhlinaTrochuTrojiceTroskaTroubaTrpceTrpitelTrpkostTrubecTruchlitTruhliceTrusTrvatTudyTuhnoutTuhostTundraTuristaTurnajTuzemskoTvarohTvorbaTvrdostTvrzTygrTykevUbohostUbozeUbratUbrousekUbrusUbytovnaUchoUctivostUdivitUhraditUjednatUjistitUjmoutUkazatelUklidnitUklonitUkotvitUkrojitUliceUlitaUlovitUmyvadloUnavitUniformaUniknoutUpadnoutUplatnitUplynoutUpoutatUpravitUranUrazitUsednoutUsilovatUsmrtitUsnadnitUsnoutUsouditUstlatUstrnoutUtahovatUtkatUtlumitUtonoutUtopenecUtrousitUvalitUvolnitUvozovkaUzdravitUzelUzeninaUzlinaUznatVagonValchaValounVanaVandalVanilkaVaranVarhanyVarovatVcelkuVchodVdovaVedroVegetaceVejceVelbloudVeletrhVelitelVelmocVelrybaVenkovVerandaVerzeVeselkaVeskrzeVesniceVespoduVestaVeterinaVeverkaVibraceVichrVideohraVidinaVidleVilaViniceVisetVitalitaVizeVizitkaVjezdVkladVkusVlajkaVlakVlasecVlevoVlhkostVlivVlnovkaVloupatVnucovatVnukVodaVodivostVodoznakVodstvoVojenskyVojnaVojskoVolantVolbaVolitVolnoVoskovkaVozidloVozovnaVpravoVrabecVracetVrahVrataVrbaVrcholekVrhatVrstvaVrtuleVsaditVstoupitVstupVtipVybavitVybratVychovatVydatVydraVyfotitVyhledatVyhnoutVyhoditVyhraditVyhubitVyjasnitVyjetVyjmoutVyklopitVykonatVylekatVymazatVymezitVymizetVymysletVynechatVynikatVynutitVypadatVyplatitVypravitVypustitVyrazitVyrovnatVyrvatVyslovitVysokoVystavitVysunoutVysypatVytasitVytesatVytratitVyvinoutVyvolatVyvrhelVyzdobitVyznatVzaduVzbuditVzchopitVzdorVzduchVzdychatVzestupVzhledemVzkazVzlykatVznikVzorekVzpouraVztahVztekXylofonZabratZabydletZachovatZadarmoZadusitZafoukatZahltitZahoditZahradaZahynoutZajatecZajetZajistitZaklepatZakoupitZalepitZamezitZamotatZamysletZanechatZanikatZaplatitZapojitZapsatZarazitZastavitZasunoutZatajitZatemnitZatknoutZaujmoutZavalitZaveletZavinitZavolatZavrtatZazvonitZbavitZbrusuZbudovatZbytekZdalekaZdarmaZdatnostZdivoZdobitZdrojZdvihZdymadloZeleninaZemanZeminaZeptatZezaduZezdolaZhatitZhltnoutZhlubokaZhotovitZhrubaZimaZimniceZjemnitZklamatZkoumatZkratkaZkumavkaZlatoZlehkaZlobaZlomZlostZlozvykZmapovatZmarZmatekZmijeZmizetZmocnitZmodratZmrzlinaZmutovatZnakZnalostZnamenatZnovuZobrazitZotavitZoubekZoufaleZploditZpomalitZpravaZprostitZprudkaZprvuZradaZranitZrcadloZrnitostZrnoZrovnaZrychlitZrzavostZtichaZtratitZubovinaZubrZvednoutZvenkuZveselaZvonZvratZvukovodZvyk"; -var wordlist = null; -function loadWords(lang) { - if (wordlist != null) { - return; - } - wordlist = words.replace(/([A-Z])/g, " $1").toLowerCase().substring(1).split(" "); - // Verify the computed list matches the official list - /* istanbul ignore if */ - if (wordlist_1.Wordlist.check(lang) !== "0x25f44555f4af25b51a711136e1c7d6e50ce9f8917d39d6b1f076b2bb4d2fac1a") { - wordlist = null; - throw new Error("BIP39 Wordlist for en (English) FAILED"); - } -} -var LangCz = /** @class */ (function (_super) { - __extends(LangCz, _super); - function LangCz() { - return _super.call(this, "cz") || this; - } - LangCz.prototype.getWord = function (index) { - loadWords(this); - return wordlist[index]; - }; - LangCz.prototype.getWordIndex = function (word) { - loadWords(this); - return wordlist.indexOf(word); - }; - return LangCz; -}(wordlist_1.Wordlist)); -var langCz = new LangCz(); -exports.langCz = langCz; -wordlist_1.Wordlist.register(langCz); -//# sourceMappingURL=lang-cz.js.map - -/***/ }), - -/***/ 73120: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.langEn = void 0; -var wordlist_1 = __nccwpck_require__(18210); -var words = "AbandonAbilityAbleAboutAboveAbsentAbsorbAbstractAbsurdAbuseAccessAccidentAccountAccuseAchieveAcidAcousticAcquireAcrossActActionActorActressActualAdaptAddAddictAddressAdjustAdmitAdultAdvanceAdviceAerobicAffairAffordAfraidAgainAgeAgentAgreeAheadAimAirAirportAisleAlarmAlbumAlcoholAlertAlienAllAlleyAllowAlmostAloneAlphaAlreadyAlsoAlterAlwaysAmateurAmazingAmongAmountAmusedAnalystAnchorAncientAngerAngleAngryAnimalAnkleAnnounceAnnualAnotherAnswerAntennaAntiqueAnxietyAnyApartApologyAppearAppleApproveAprilArchArcticAreaArenaArgueArmArmedArmorArmyAroundArrangeArrestArriveArrowArtArtefactArtistArtworkAskAspectAssaultAssetAssistAssumeAsthmaAthleteAtomAttackAttendAttitudeAttractAuctionAuditAugustAuntAuthorAutoAutumnAverageAvocadoAvoidAwakeAwareAwayAwesomeAwfulAwkwardAxisBabyBachelorBaconBadgeBagBalanceBalconyBallBambooBananaBannerBarBarelyBargainBarrelBaseBasicBasketBattleBeachBeanBeautyBecauseBecomeBeefBeforeBeginBehaveBehindBelieveBelowBeltBenchBenefitBestBetrayBetterBetweenBeyondBicycleBidBikeBindBiologyBirdBirthBitterBlackBladeBlameBlanketBlastBleakBlessBlindBloodBlossomBlouseBlueBlurBlushBoardBoatBodyBoilBombBoneBonusBookBoostBorderBoringBorrowBossBottomBounceBoxBoyBracketBrainBrandBrassBraveBreadBreezeBrickBridgeBriefBrightBringBriskBroccoliBrokenBronzeBroomBrotherBrownBrushBubbleBuddyBudgetBuffaloBuildBulbBulkBulletBundleBunkerBurdenBurgerBurstBusBusinessBusyButterBuyerBuzzCabbageCabinCableCactusCageCakeCallCalmCameraCampCanCanalCancelCandyCannonCanoeCanvasCanyonCapableCapitalCaptainCarCarbonCardCargoCarpetCarryCartCaseCashCasinoCastleCasualCatCatalogCatchCategoryCattleCaughtCauseCautionCaveCeilingCeleryCementCensusCenturyCerealCertainChairChalkChampionChangeChaosChapterChargeChaseChatCheapCheckCheeseChefCherryChestChickenChiefChildChimneyChoiceChooseChronicChuckleChunkChurnCigarCinnamonCircleCitizenCityCivilClaimClapClarifyClawClayCleanClerkCleverClickClientCliffClimbClinicClipClockClogCloseClothCloudClownClubClumpClusterClutchCoachCoastCoconutCodeCoffeeCoilCoinCollectColorColumnCombineComeComfortComicCommonCompanyConcertConductConfirmCongressConnectConsiderControlConvinceCookCoolCopperCopyCoralCoreCornCorrectCostCottonCouchCountryCoupleCourseCousinCoverCoyoteCrackCradleCraftCramCraneCrashCraterCrawlCrazyCreamCreditCreekCrewCricketCrimeCrispCriticCropCrossCrouchCrowdCrucialCruelCruiseCrumbleCrunchCrushCryCrystalCubeCultureCupCupboardCuriousCurrentCurtainCurveCushionCustomCuteCycleDadDamageDampDanceDangerDaringDashDaughterDawnDayDealDebateDebrisDecadeDecemberDecideDeclineDecorateDecreaseDeerDefenseDefineDefyDegreeDelayDeliverDemandDemiseDenialDentistDenyDepartDependDepositDepthDeputyDeriveDescribeDesertDesignDeskDespairDestroyDetailDetectDevelopDeviceDevoteDiagramDialDiamondDiaryDiceDieselDietDifferDigitalDignityDilemmaDinnerDinosaurDirectDirtDisagreeDiscoverDiseaseDishDismissDisorderDisplayDistanceDivertDivideDivorceDizzyDoctorDocumentDogDollDolphinDomainDonateDonkeyDonorDoorDoseDoubleDoveDraftDragonDramaDrasticDrawDreamDressDriftDrillDrinkDripDriveDropDrumDryDuckDumbDuneDuringDustDutchDutyDwarfDynamicEagerEagleEarlyEarnEarthEasilyEastEasyEchoEcologyEconomyEdgeEditEducateEffortEggEightEitherElbowElderElectricElegantElementElephantElevatorEliteElseEmbarkEmbodyEmbraceEmergeEmotionEmployEmpowerEmptyEnableEnactEndEndlessEndorseEnemyEnergyEnforceEngageEngineEnhanceEnjoyEnlistEnoughEnrichEnrollEnsureEnterEntireEntryEnvelopeEpisodeEqualEquipEraEraseErodeErosionErrorEruptEscapeEssayEssenceEstateEternalEthicsEvidenceEvilEvokeEvolveExactExampleExcessExchangeExciteExcludeExcuseExecuteExerciseExhaustExhibitExileExistExitExoticExpandExpectExpireExplainExposeExpressExtendExtraEyeEyebrowFabricFaceFacultyFadeFaintFaithFallFalseFameFamilyFamousFanFancyFantasyFarmFashionFatFatalFatherFatigueFaultFavoriteFeatureFebruaryFederalFeeFeedFeelFemaleFenceFestivalFetchFeverFewFiberFictionFieldFigureFileFilmFilterFinalFindFineFingerFinishFireFirmFirstFiscalFishFitFitnessFixFlagFlameFlashFlatFlavorFleeFlightFlipFloatFlockFloorFlowerFluidFlushFlyFoamFocusFogFoilFoldFollowFoodFootForceForestForgetForkFortuneForumForwardFossilFosterFoundFoxFragileFrameFrequentFreshFriendFringeFrogFrontFrostFrownFrozenFruitFuelFunFunnyFurnaceFuryFutureGadgetGainGalaxyGalleryGameGapGarageGarbageGardenGarlicGarmentGasGaspGateGatherGaugeGazeGeneralGeniusGenreGentleGenuineGestureGhostGiantGiftGiggleGingerGiraffeGirlGiveGladGlanceGlareGlassGlideGlimpseGlobeGloomGloryGloveGlowGlueGoatGoddessGoldGoodGooseGorillaGospelGossipGovernGownGrabGraceGrainGrantGrapeGrassGravityGreatGreenGridGriefGritGroceryGroupGrowGruntGuardGuessGuideGuiltGuitarGunGymHabitHairHalfHammerHamsterHandHappyHarborHardHarshHarvestHatHaveHawkHazardHeadHealthHeartHeavyHedgehogHeightHelloHelmetHelpHenHeroHiddenHighHillHintHipHireHistoryHobbyHockeyHoldHoleHolidayHollowHomeHoneyHoodHopeHornHorrorHorseHospitalHostHotelHourHoverHubHugeHumanHumbleHumorHundredHungryHuntHurdleHurryHurtHusbandHybridIceIconIdeaIdentifyIdleIgnoreIllIllegalIllnessImageImitateImmenseImmuneImpactImposeImproveImpulseInchIncludeIncomeIncreaseIndexIndicateIndoorIndustryInfantInflictInformInhaleInheritInitialInjectInjuryInmateInnerInnocentInputInquiryInsaneInsectInsideInspireInstallIntactInterestIntoInvestInviteInvolveIronIslandIsolateIssueItemIvoryJacketJaguarJarJazzJealousJeansJellyJewelJobJoinJokeJourneyJoyJudgeJuiceJumpJungleJuniorJunkJustKangarooKeenKeepKetchupKeyKickKidKidneyKindKingdomKissKitKitchenKiteKittenKiwiKneeKnifeKnockKnowLabLabelLaborLadderLadyLakeLampLanguageLaptopLargeLaterLatinLaughLaundryLavaLawLawnLawsuitLayerLazyLeaderLeafLearnLeaveLectureLeftLegLegalLegendLeisureLemonLendLengthLensLeopardLessonLetterLevelLiarLibertyLibraryLicenseLifeLiftLightLikeLimbLimitLinkLionLiquidListLittleLiveLizardLoadLoanLobsterLocalLockLogicLonelyLongLoopLotteryLoudLoungeLoveLoyalLuckyLuggageLumberLunarLunchLuxuryLyricsMachineMadMagicMagnetMaidMailMainMajorMakeMammalManManageMandateMangoMansionManualMapleMarbleMarchMarginMarineMarketMarriageMaskMassMasterMatchMaterialMathMatrixMatterMaximumMazeMeadowMeanMeasureMeatMechanicMedalMediaMelodyMeltMemberMemoryMentionMenuMercyMergeMeritMerryMeshMessageMetalMethodMiddleMidnightMilkMillionMimicMindMinimumMinorMinuteMiracleMirrorMiseryMissMistakeMixMixedMixtureMobileModelModifyMomMomentMonitorMonkeyMonsterMonthMoonMoralMoreMorningMosquitoMotherMotionMotorMountainMouseMoveMovieMuchMuffinMuleMultiplyMuscleMuseumMushroomMusicMustMutualMyselfMysteryMythNaiveNameNapkinNarrowNastyNationNatureNearNeckNeedNegativeNeglectNeitherNephewNerveNestNetNetworkNeutralNeverNewsNextNiceNightNobleNoiseNomineeNoodleNormalNorthNoseNotableNoteNothingNoticeNovelNowNuclearNumberNurseNutOakObeyObjectObligeObscureObserveObtainObviousOccurOceanOctoberOdorOffOfferOfficeOftenOilOkayOldOliveOlympicOmitOnceOneOnionOnlineOnlyOpenOperaOpinionOpposeOptionOrangeOrbitOrchardOrderOrdinaryOrganOrientOriginalOrphanOstrichOtherOutdoorOuterOutputOutsideOvalOvenOverOwnOwnerOxygenOysterOzonePactPaddlePagePairPalacePalmPandaPanelPanicPantherPaperParadeParentParkParrotPartyPassPatchPathPatientPatrolPatternPausePavePaymentPeacePeanutPearPeasantPelicanPenPenaltyPencilPeoplePepperPerfectPermitPersonPetPhonePhotoPhrasePhysicalPianoPicnicPicturePiecePigPigeonPillPilotPinkPioneerPipePistolPitchPizzaPlacePlanetPlasticPlatePlayPleasePledgePluckPlugPlungePoemPoetPointPolarPolePolicePondPonyPoolPopularPortionPositionPossiblePostPotatoPotteryPovertyPowderPowerPracticePraisePredictPreferPreparePresentPrettyPreventPricePridePrimaryPrintPriorityPrisonPrivatePrizeProblemProcessProduceProfitProgramProjectPromoteProofPropertyProsperProtectProudProvidePublicPuddingPullPulpPulsePumpkinPunchPupilPuppyPurchasePurityPurposePursePushPutPuzzlePyramidQualityQuantumQuarterQuestionQuickQuitQuizQuoteRabbitRaccoonRaceRackRadarRadioRailRainRaiseRallyRampRanchRandomRangeRapidRareRateRatherRavenRawRazorReadyRealReasonRebelRebuildRecallReceiveRecipeRecordRecycleReduceReflectReformRefuseRegionRegretRegularRejectRelaxReleaseReliefRelyRemainRememberRemindRemoveRenderRenewRentReopenRepairRepeatReplaceReportRequireRescueResembleResistResourceResponseResultRetireRetreatReturnReunionRevealReviewRewardRhythmRibRibbonRiceRichRideRidgeRifleRightRigidRingRiotRippleRiskRitualRivalRiverRoadRoastRobotRobustRocketRomanceRoofRookieRoomRoseRotateRoughRoundRouteRoyalRubberRudeRugRuleRunRunwayRuralSadSaddleSadnessSafeSailSaladSalmonSalonSaltSaluteSameSampleSandSatisfySatoshiSauceSausageSaveSayScaleScanScareScatterSceneSchemeSchoolScienceScissorsScorpionScoutScrapScreenScriptScrubSeaSearchSeasonSeatSecondSecretSectionSecuritySeedSeekSegmentSelectSellSeminarSeniorSenseSentenceSeriesServiceSessionSettleSetupSevenShadowShaftShallowShareShedShellSheriffShieldShiftShineShipShiverShockShoeShootShopShortShoulderShoveShrimpShrugShuffleShySiblingSickSideSiegeSightSignSilentSilkSillySilverSimilarSimpleSinceSingSirenSisterSituateSixSizeSkateSketchSkiSkillSkinSkirtSkullSlabSlamSleepSlenderSliceSlideSlightSlimSloganSlotSlowSlushSmallSmartSmileSmokeSmoothSnackSnakeSnapSniffSnowSoapSoccerSocialSockSodaSoftSolarSoldierSolidSolutionSolveSomeoneSongSoonSorrySortSoulSoundSoupSourceSouthSpaceSpareSpatialSpawnSpeakSpecialSpeedSpellSpendSphereSpiceSpiderSpikeSpinSpiritSplitSpoilSponsorSpoonSportSpotSpraySpreadSpringSpySquareSqueezeSquirrelStableStadiumStaffStageStairsStampStandStartStateStaySteakSteelStemStepStereoStickStillStingStockStomachStoneStoolStoryStoveStrategyStreetStrikeStrongStruggleStudentStuffStumbleStyleSubjectSubmitSubwaySuccessSuchSuddenSufferSugarSuggestSuitSummerSunSunnySunsetSuperSupplySupremeSureSurfaceSurgeSurpriseSurroundSurveySuspectSustainSwallowSwampSwapSwarmSwearSweetSwiftSwimSwingSwitchSwordSymbolSymptomSyrupSystemTableTackleTagTailTalentTalkTankTapeTargetTaskTasteTattooTaxiTeachTeamTellTenTenantTennisTentTermTestTextThankThatThemeThenTheoryThereTheyThingThisThoughtThreeThriveThrowThumbThunderTicketTideTigerTiltTimberTimeTinyTipTiredTissueTitleToastTobaccoTodayToddlerToeTogetherToiletTokenTomatoTomorrowToneTongueTonightToolToothTopTopicToppleTorchTornadoTortoiseTossTotalTouristTowardTowerTownToyTrackTradeTrafficTragicTrainTransferTrapTrashTravelTrayTreatTreeTrendTrialTribeTrickTriggerTrimTripTrophyTroubleTruckTrueTrulyTrumpetTrustTruthTryTubeTuitionTumbleTunaTunnelTurkeyTurnTurtleTwelveTwentyTwiceTwinTwistTwoTypeTypicalUglyUmbrellaUnableUnawareUncleUncoverUnderUndoUnfairUnfoldUnhappyUniformUniqueUnitUniverseUnknownUnlockUntilUnusualUnveilUpdateUpgradeUpholdUponUpperUpsetUrbanUrgeUsageUseUsedUsefulUselessUsualUtilityVacantVacuumVagueValidValleyValveVanVanishVaporVariousVastVaultVehicleVelvetVendorVentureVenueVerbVerifyVersionVeryVesselVeteranViableVibrantViciousVictoryVideoViewVillageVintageViolinVirtualVirusVisaVisitVisualVitalVividVocalVoiceVoidVolcanoVolumeVoteVoyageWageWagonWaitWalkWallWalnutWantWarfareWarmWarriorWashWaspWasteWaterWaveWayWealthWeaponWearWeaselWeatherWebWeddingWeekendWeirdWelcomeWestWetWhaleWhatWheatWheelWhenWhereWhipWhisperWideWidthWifeWildWillWinWindowWineWingWinkWinnerWinterWireWisdomWiseWishWitnessWolfWomanWonderWoodWoolWordWorkWorldWorryWorthWrapWreckWrestleWristWriteWrongYardYearYellowYouYoungYouthZebraZeroZoneZoo"; -var wordlist = null; -function loadWords(lang) { - if (wordlist != null) { - return; - } - wordlist = words.replace(/([A-Z])/g, " $1").toLowerCase().substring(1).split(" "); - // Verify the computed list matches the official list - /* istanbul ignore if */ - if (wordlist_1.Wordlist.check(lang) !== "0x3c8acc1e7b08d8e76f9fda015ef48dc8c710a73cb7e0f77b2c18a9b5a7adde60") { - wordlist = null; - throw new Error("BIP39 Wordlist for en (English) FAILED"); - } -} -var LangEn = /** @class */ (function (_super) { - __extends(LangEn, _super); - function LangEn() { - return _super.call(this, "en") || this; - } - LangEn.prototype.getWord = function (index) { - loadWords(this); - return wordlist[index]; - }; - LangEn.prototype.getWordIndex = function (word) { - loadWords(this); - return wordlist.indexOf(word); - }; - return LangEn; -}(wordlist_1.Wordlist)); -var langEn = new LangEn(); -exports.langEn = langEn; -wordlist_1.Wordlist.register(langEn); -//# sourceMappingURL=lang-en.js.map - -/***/ }), - -/***/ 78091: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.langEs = void 0; -var strings_1 = __nccwpck_require__(13859); -var wordlist_1 = __nccwpck_require__(18210); -var words = "A/bacoAbdomenAbejaAbiertoAbogadoAbonoAbortoAbrazoAbrirAbueloAbusoAcabarAcademiaAccesoAccio/nAceiteAcelgaAcentoAceptarA/cidoAclararAcne/AcogerAcosoActivoActoActrizActuarAcudirAcuerdoAcusarAdictoAdmitirAdoptarAdornoAduanaAdultoAe/reoAfectarAficio/nAfinarAfirmarA/gilAgitarAgoni/aAgostoAgotarAgregarAgrioAguaAgudoA/guilaAgujaAhogoAhorroAireAislarAjedrezAjenoAjusteAlacra/nAlambreAlarmaAlbaA/lbumAlcaldeAldeaAlegreAlejarAlertaAletaAlfilerAlgaAlgodo/nAliadoAlientoAlivioAlmaAlmejaAlmi/barAltarAltezaAltivoAltoAlturaAlumnoAlzarAmableAmanteAmapolaAmargoAmasarA/mbarA/mbitoAmenoAmigoAmistadAmorAmparoAmplioAnchoAncianoAnclaAndarAnde/nAnemiaA/nguloAnilloA/nimoAni/sAnotarAntenaAntiguoAntojoAnualAnularAnuncioA~adirA~ejoA~oApagarAparatoApetitoApioAplicarApodoAporteApoyoAprenderAprobarApuestaApuroAradoAra~aArarA/rbitroA/rbolArbustoArchivoArcoArderArdillaArduoA/reaA/ridoAriesArmoni/aArne/sAromaArpaArpo/nArregloArrozArrugaArteArtistaAsaAsadoAsaltoAscensoAsegurarAseoAsesorAsientoAsiloAsistirAsnoAsombroA/speroAstillaAstroAstutoAsumirAsuntoAtajoAtaqueAtarAtentoAteoA/ticoAtletaA/tomoAtraerAtrozAtu/nAudazAudioAugeAulaAumentoAusenteAutorAvalAvanceAvaroAveAvellanaAvenaAvestruzAvio/nAvisoAyerAyudaAyunoAzafra/nAzarAzoteAzu/carAzufreAzulBabaBaborBacheBahi/aBaileBajarBalanzaBalco/nBaldeBambu/BancoBandaBa~oBarbaBarcoBarnizBarroBa/sculaBasto/nBasuraBatallaBateri/aBatirBatutaBau/lBazarBebe/BebidaBelloBesarBesoBestiaBichoBienBingoBlancoBloqueBlusaBoaBobinaBoboBocaBocinaBodaBodegaBoinaBolaBoleroBolsaBombaBondadBonitoBonoBonsa/iBordeBorrarBosqueBoteBoti/nBo/vedaBozalBravoBrazoBrechaBreveBrilloBrincoBrisaBrocaBromaBronceBroteBrujaBruscoBrutoBuceoBucleBuenoBueyBufandaBufo/nBu/hoBuitreBultoBurbujaBurlaBurroBuscarButacaBuzo/nCaballoCabezaCabinaCabraCacaoCada/verCadenaCaerCafe/Cai/daCaima/nCajaCajo/nCalCalamarCalcioCaldoCalidadCalleCalmaCalorCalvoCamaCambioCamelloCaminoCampoCa/ncerCandilCanelaCanguroCanicaCantoCa~aCa~o/nCaobaCaosCapazCapita/nCapoteCaptarCapuchaCaraCarbo/nCa/rcelCaretaCargaCari~oCarneCarpetaCarroCartaCasaCascoCaseroCaspaCastorCatorceCatreCaudalCausaCazoCebollaCederCedroCeldaCe/lebreCelosoCe/lulaCementoCenizaCentroCercaCerdoCerezaCeroCerrarCertezaCe/spedCetroChacalChalecoChampu/ChanclaChapaCharlaChicoChisteChivoChoqueChozaChuletaChuparCiclo/nCiegoCieloCienCiertoCifraCigarroCimaCincoCineCintaCipre/sCircoCiruelaCisneCitaCiudadClamorClanClaroClaseClaveClienteClimaCli/nicaCobreCoccio/nCochinoCocinaCocoCo/digoCodoCofreCogerCoheteCoji/nCojoColaColchaColegioColgarColinaCollarColmoColumnaCombateComerComidaCo/modoCompraCondeConejoCongaConocerConsejoContarCopaCopiaCorazo/nCorbataCorchoCordo/nCoronaCorrerCoserCosmosCostaCra/neoCra/terCrearCrecerCrei/doCremaCri/aCrimenCriptaCrisisCromoCro/nicaCroquetaCrudoCruzCuadroCuartoCuatroCuboCubrirCucharaCuelloCuentoCuerdaCuestaCuevaCuidarCulebraCulpaCultoCumbreCumplirCunaCunetaCuotaCupo/nCu/pulaCurarCuriosoCursoCurvaCutisDamaDanzaDarDardoDa/tilDeberDe/bilDe/cadaDecirDedoDefensaDefinirDejarDelfi/nDelgadoDelitoDemoraDensoDentalDeporteDerechoDerrotaDesayunoDeseoDesfileDesnudoDestinoDesvi/oDetalleDetenerDeudaDi/aDiabloDiademaDiamanteDianaDiarioDibujoDictarDienteDietaDiezDifi/cilDignoDilemaDiluirDineroDirectoDirigirDiscoDise~oDisfrazDivaDivinoDobleDoceDolorDomingoDonDonarDoradoDormirDorsoDosDosisDrago/nDrogaDuchaDudaDueloDue~oDulceDu/oDuqueDurarDurezaDuroE/banoEbrioEcharEcoEcuadorEdadEdicio/nEdificioEditorEducarEfectoEficazEjeEjemploElefanteElegirElementoElevarElipseE/liteElixirElogioEludirEmbudoEmitirEmocio/nEmpateEmpe~oEmpleoEmpresaEnanoEncargoEnchufeEnci/aEnemigoEneroEnfadoEnfermoEnga~oEnigmaEnlaceEnormeEnredoEnsayoEnse~arEnteroEntrarEnvaseEnvi/oE/pocaEquipoErizoEscalaEscenaEscolarEscribirEscudoEsenciaEsferaEsfuerzoEspadaEspejoEspi/aEsposaEspumaEsqui/EstarEsteEstiloEstufaEtapaEternoE/ticaEtniaEvadirEvaluarEventoEvitarExactoExamenExcesoExcusaExentoExigirExilioExistirE/xitoExpertoExplicarExponerExtremoFa/bricaFa/bulaFachadaFa/cilFactorFaenaFajaFaldaFalloFalsoFaltarFamaFamiliaFamosoFarao/nFarmaciaFarolFarsaFaseFatigaFaunaFavorFaxFebreroFechaFelizFeoFeriaFerozFe/rtilFervorFesti/nFiableFianzaFiarFibraFiccio/nFichaFideoFiebreFielFieraFiestaFiguraFijarFijoFilaFileteFilialFiltroFinFincaFingirFinitoFirmaFlacoFlautaFlechaFlorFlotaFluirFlujoFlu/orFobiaFocaFogataFogo/nFolioFolletoFondoFormaForroFortunaForzarFosaFotoFracasoFra/gilFranjaFraseFraudeFrei/rFrenoFresaFri/oFritoFrutaFuegoFuenteFuerzaFugaFumarFuncio/nFundaFurgo/nFuriaFusilFu/tbolFuturoGacelaGafasGaitaGajoGalaGaleri/aGalloGambaGanarGanchoGangaGansoGarajeGarzaGasolinaGastarGatoGavila/nGemeloGemirGenGe/neroGenioGenteGeranioGerenteGermenGestoGiganteGimnasioGirarGiroGlaciarGloboGloriaGolGolfoGolosoGolpeGomaGordoGorilaGorraGotaGoteoGozarGradaGra/ficoGranoGrasaGratisGraveGrietaGrilloGripeGrisGritoGrosorGru/aGruesoGrumoGrupoGuanteGuapoGuardiaGuerraGui/aGui~oGuionGuisoGuitarraGusanoGustarHaberHa/bilHablarHacerHachaHadaHallarHamacaHarinaHazHaza~aHebillaHebraHechoHeladoHelioHembraHerirHermanoHe/roeHervirHieloHierroHi/gadoHigieneHijoHimnoHistoriaHocicoHogarHogueraHojaHombreHongoHonorHonraHoraHormigaHornoHostilHoyoHuecoHuelgaHuertaHuesoHuevoHuidaHuirHumanoHu/medoHumildeHumoHundirHuraca/nHurtoIconoIdealIdiomaI/doloIglesiaIglu/IgualIlegalIlusio/nImagenIma/nImitarImparImperioImponerImpulsoIncapazI/ndiceInerteInfielInformeIngenioInicioInmensoInmuneInnatoInsectoInstanteIntere/sI/ntimoIntuirInu/tilInviernoIraIrisIroni/aIslaIsloteJabali/Jabo/nJamo/nJarabeJardi/nJarraJaulaJazmi/nJefeJeringaJineteJornadaJorobaJovenJoyaJuergaJuevesJuezJugadorJugoJugueteJuicioJuncoJunglaJunioJuntarJu/piterJurarJustoJuvenilJuzgarKiloKoalaLabioLacioLacraLadoLadro/nLagartoLa/grimaLagunaLaicoLamerLa/minaLa/mparaLanaLanchaLangostaLanzaLa/pizLargoLarvaLa/stimaLataLa/texLatirLaurelLavarLazoLealLeccio/nLecheLectorLeerLegio/nLegumbreLejanoLenguaLentoLe~aLeo/nLeopardoLesio/nLetalLetraLeveLeyendaLibertadLibroLicorLi/derLidiarLienzoLigaLigeroLimaLi/miteLimo/nLimpioLinceLindoLi/neaLingoteLinoLinternaLi/quidoLisoListaLiteraLitioLitroLlagaLlamaLlantoLlaveLlegarLlenarLlevarLlorarLloverLluviaLoboLocio/nLocoLocuraLo/gicaLogroLombrizLomoLonjaLoteLuchaLucirLugarLujoLunaLunesLupaLustroLutoLuzMacetaMachoMaderaMadreMaduroMaestroMafiaMagiaMagoMai/zMaldadMaletaMallaMaloMama/MamboMamutMancoMandoManejarMangaManiqui/ManjarManoMansoMantaMa~anaMapaMa/quinaMarMarcoMareaMarfilMargenMaridoMa/rmolMarro/nMartesMarzoMasaMa/scaraMasivoMatarMateriaMatizMatrizMa/ximoMayorMazorcaMechaMedallaMedioMe/dulaMejillaMejorMelenaMelo/nMemoriaMenorMensajeMenteMenu/MercadoMerengueMe/ritoMesMeso/nMetaMeterMe/todoMetroMezclaMiedoMielMiembroMigaMilMilagroMilitarMillo/nMimoMinaMineroMi/nimoMinutoMiopeMirarMisaMiseriaMisilMismoMitadMitoMochilaMocio/nModaModeloMohoMojarMoldeMolerMolinoMomentoMomiaMonarcaMonedaMonjaMontoMo~oMoradaMorderMorenoMorirMorroMorsaMortalMoscaMostrarMotivoMoverMo/vilMozoMuchoMudarMuebleMuelaMuerteMuestraMugreMujerMulaMuletaMultaMundoMu~ecaMuralMuroMu/sculoMuseoMusgoMu/sicaMusloNa/carNacio/nNadarNaipeNaranjaNarizNarrarNasalNatalNativoNaturalNa/useaNavalNaveNavidadNecioNe/ctarNegarNegocioNegroNeo/nNervioNetoNeutroNevarNeveraNichoNidoNieblaNietoNi~ezNi~oNi/tidoNivelNoblezaNocheNo/minaNoriaNormaNorteNotaNoticiaNovatoNovelaNovioNubeNucaNu/cleoNudilloNudoNueraNueveNuezNuloNu/meroNutriaOasisObesoObispoObjetoObraObreroObservarObtenerObvioOcaOcasoOce/anoOchentaOchoOcioOcreOctavoOctubreOcultoOcuparOcurrirOdiarOdioOdiseaOesteOfensaOfertaOficioOfrecerOgroOi/doOi/rOjoOlaOleadaOlfatoOlivoOllaOlmoOlorOlvidoOmbligoOndaOnzaOpacoOpcio/nO/peraOpinarOponerOptarO/pticaOpuestoOracio/nOradorOralO/rbitaOrcaOrdenOrejaO/rganoOrgi/aOrgulloOrienteOrigenOrillaOroOrquestaOrugaOsadi/aOscuroOseznoOsoOstraOto~oOtroOvejaO/vuloO/xidoOxi/genoOyenteOzonoPactoPadrePaellaPa/ginaPagoPai/sPa/jaroPalabraPalcoPaletaPa/lidoPalmaPalomaPalparPanPanalPa/nicoPanteraPa~ueloPapa/PapelPapillaPaquetePararParcelaParedParirParoPa/rpadoParquePa/rrafoPartePasarPaseoPasio/nPasoPastaPataPatioPatriaPausaPautaPavoPayasoPeato/nPecadoPeceraPechoPedalPedirPegarPeinePelarPelda~oPeleaPeligroPellejoPeloPelucaPenaPensarPe~o/nPeo/nPeorPepinoPeque~oPeraPerchaPerderPerezaPerfilPericoPerlaPermisoPerroPersonaPesaPescaPe/simoPesta~aPe/taloPetro/leoPezPezu~aPicarPicho/nPiePiedraPiernaPiezaPijamaPilarPilotoPimientaPinoPintorPinzaPi~aPiojoPipaPirataPisarPiscinaPisoPistaPito/nPizcaPlacaPlanPlataPlayaPlazaPleitoPlenoPlomoPlumaPluralPobrePocoPoderPodioPoemaPoesi/aPoetaPolenPolici/aPolloPolvoPomadaPomeloPomoPompaPonerPorcio/nPortalPosadaPoseerPosiblePostePotenciaPotroPozoPradoPrecozPreguntaPremioPrensaPresoPrevioPrimoPri/ncipePrisio/nPrivarProaProbarProcesoProductoProezaProfesorProgramaProlePromesaProntoPropioPro/ximoPruebaPu/blicoPucheroPudorPuebloPuertaPuestoPulgaPulirPulmo/nPulpoPulsoPumaPuntoPu~alPu~oPupaPupilaPure/QuedarQuejaQuemarQuererQuesoQuietoQui/micaQuinceQuitarRa/banoRabiaRaboRacio/nRadicalRai/zRamaRampaRanchoRangoRapazRa/pidoRaptoRasgoRaspaRatoRayoRazaRazo/nReaccio/nRealidadReba~oReboteRecaerRecetaRechazoRecogerRecreoRectoRecursoRedRedondoReducirReflejoReformaRefra/nRefugioRegaloRegirReglaRegresoRehe/nReinoRei/rRejaRelatoRelevoRelieveRellenoRelojRemarRemedioRemoRencorRendirRentaRepartoRepetirReposoReptilResRescateResinaRespetoRestoResumenRetiroRetornoRetratoReunirReve/sRevistaReyRezarRicoRiegoRiendaRiesgoRifaRi/gidoRigorRinco/nRi~o/nRi/oRiquezaRisaRitmoRitoRizoRobleRoceRociarRodarRodeoRodillaRoerRojizoRojoRomeroRomperRonRoncoRondaRopaRoperoRosaRoscaRostroRotarRubi/RuborRudoRuedaRugirRuidoRuinaRuletaRuloRumboRumorRupturaRutaRutinaSa/badoSaberSabioSableSacarSagazSagradoSalaSaldoSaleroSalirSalmo/nSalo/nSalsaSaltoSaludSalvarSambaSancio/nSandi/aSanearSangreSanidadSanoSantoSapoSaqueSardinaSarte/nSastreSata/nSaunaSaxofo/nSeccio/nSecoSecretoSectaSedSeguirSeisSelloSelvaSemanaSemillaSendaSensorSe~alSe~orSepararSepiaSequi/aSerSerieSermo/nServirSesentaSesio/nSetaSetentaSeveroSexoSextoSidraSiestaSieteSigloSignoSi/labaSilbarSilencioSillaSi/mboloSimioSirenaSistemaSitioSituarSobreSocioSodioSolSolapaSoldadoSoledadSo/lidoSoltarSolucio/nSombraSondeoSonidoSonoroSonrisaSopaSoplarSoporteSordoSorpresaSorteoSoste/nSo/tanoSuaveSubirSucesoSudorSuegraSueloSue~oSuerteSufrirSujetoSulta/nSumarSuperarSuplirSuponerSupremoSurSurcoSure~oSurgirSustoSutilTabacoTabiqueTablaTabu/TacoTactoTajoTalarTalcoTalentoTallaTalo/nTama~oTamborTangoTanqueTapaTapeteTapiaTapo/nTaquillaTardeTareaTarifaTarjetaTarotTarroTartaTatuajeTauroTazaTazo/nTeatroTechoTeclaTe/cnicaTejadoTejerTejidoTelaTele/fonoTemaTemorTemploTenazTenderTenerTenisTensoTeori/aTerapiaTercoTe/rminoTernuraTerrorTesisTesoroTestigoTeteraTextoTezTibioTiburo/nTiempoTiendaTierraTiesoTigreTijeraTildeTimbreTi/midoTimoTintaTi/oTi/picoTipoTiraTiro/nTita/nTi/tereTi/tuloTizaToallaTobilloTocarTocinoTodoTogaToldoTomarTonoTontoToparTopeToqueTo/raxToreroTormentaTorneoToroTorpedoTorreTorsoTortugaTosToscoToserTo/xicoTrabajoTractorTraerTra/ficoTragoTrajeTramoTranceTratoTraumaTrazarTre/bolTreguaTreintaTrenTreparTresTribuTrigoTripaTristeTriunfoTrofeoTrompaTroncoTropaTroteTrozoTrucoTruenoTrufaTuberi/aTuboTuertoTumbaTumorTu/nelTu/nicaTurbinaTurismoTurnoTutorUbicarU/lceraUmbralUnidadUnirUniversoUnoUntarU~aUrbanoUrbeUrgenteUrnaUsarUsuarioU/tilUtopi/aUvaVacaVaci/oVacunaVagarVagoVainaVajillaValeVa/lidoValleValorVa/lvulaVampiroVaraVariarVaro/nVasoVecinoVectorVehi/culoVeinteVejezVelaVeleroVelozVenaVencerVendaVenenoVengarVenirVentaVenusVerVeranoVerboVerdeVeredaVerjaVersoVerterVi/aViajeVibrarVicioVi/ctimaVidaVi/deoVidrioViejoViernesVigorVilVillaVinagreVinoVi~edoVioli/nViralVirgoVirtudVisorVi/speraVistaVitaminaViudoVivazViveroVivirVivoVolca/nVolumenVolverVorazVotarVotoVozVueloVulgarYacerYateYeguaYemaYernoYesoYodoYogaYogurZafiroZanjaZapatoZarzaZonaZorroZumoZurdo"; -var lookup = {}; -var wordlist = null; -function dropDiacritic(word) { - wordlist_1.logger.checkNormalize(); - return (0, strings_1.toUtf8String)(Array.prototype.filter.call((0, strings_1.toUtf8Bytes)(word.normalize("NFD").toLowerCase()), function (c) { - return ((c >= 65 && c <= 90) || (c >= 97 && c <= 123)); - })); -} -function expand(word) { - var output = []; - Array.prototype.forEach.call((0, strings_1.toUtf8Bytes)(word), function (c) { - // Acute accent - if (c === 47) { - output.push(204); - output.push(129); - // n-tilde - } - else if (c === 126) { - output.push(110); - output.push(204); - output.push(131); - } - else { - output.push(c); - } - }); - return (0, strings_1.toUtf8String)(output); -} -function loadWords(lang) { - if (wordlist != null) { - return; - } - wordlist = words.replace(/([A-Z])/g, " $1").toLowerCase().substring(1).split(" ").map(function (w) { return expand(w); }); - wordlist.forEach(function (word, index) { - lookup[dropDiacritic(word)] = index; - }); - // Verify the computed list matches the official list - /* istanbul ignore if */ - if (wordlist_1.Wordlist.check(lang) !== "0xf74fb7092aeacdfbf8959557de22098da512207fb9f109cb526994938cf40300") { - wordlist = null; - throw new Error("BIP39 Wordlist for es (Spanish) FAILED"); - } -} -var LangEs = /** @class */ (function (_super) { - __extends(LangEs, _super); - function LangEs() { - return _super.call(this, "es") || this; - } - LangEs.prototype.getWord = function (index) { - loadWords(this); - return wordlist[index]; - }; - LangEs.prototype.getWordIndex = function (word) { - loadWords(this); - return lookup[dropDiacritic(word)]; - }; - return LangEs; -}(wordlist_1.Wordlist)); -var langEs = new LangEs(); -exports.langEs = langEs; -wordlist_1.Wordlist.register(langEs); -//# sourceMappingURL=lang-es.js.map - -/***/ }), - -/***/ 58079: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.langFr = void 0; -var strings_1 = __nccwpck_require__(13859); -var wordlist_1 = __nccwpck_require__(18210); -var words = "AbaisserAbandonAbdiquerAbeilleAbolirAborderAboutirAboyerAbrasifAbreuverAbriterAbrogerAbruptAbsenceAbsoluAbsurdeAbusifAbyssalAcade/mieAcajouAcarienAccablerAccepterAcclamerAccoladeAccrocheAccuserAcerbeAchatAcheterAcidulerAcierAcompteAcque/rirAcronymeActeurActifActuelAdepteAde/quatAdhe/sifAdjectifAdjugerAdmettreAdmirerAdopterAdorerAdoucirAdresseAdroitAdulteAdverbeAe/rerAe/ronefAffaireAffecterAfficheAffreuxAffublerAgacerAgencerAgileAgiterAgraferAgre/ableAgrumeAiderAiguilleAilierAimableAisanceAjouterAjusterAlarmerAlchimieAlerteAlge-breAlgueAlie/nerAlimentAlle/gerAlliageAllouerAllumerAlourdirAlpagaAltesseAlve/oleAmateurAmbiguAmbreAme/nagerAmertumeAmidonAmiralAmorcerAmourAmovibleAmphibieAmpleurAmusantAnalyseAnaphoreAnarchieAnatomieAncienAne/antirAngleAngoisseAnguleuxAnimalAnnexerAnnonceAnnuelAnodinAnomalieAnonymeAnormalAntenneAntidoteAnxieuxApaiserApe/ritifAplanirApologieAppareilAppelerApporterAppuyerAquariumAqueducArbitreArbusteArdeurArdoiseArgentArlequinArmatureArmementArmoireArmureArpenterArracherArriverArroserArsenicArte/rielArticleAspectAsphalteAspirerAssautAsservirAssietteAssocierAssurerAsticotAstreAstuceAtelierAtomeAtriumAtroceAttaqueAttentifAttirerAttraperAubaineAubergeAudaceAudibleAugurerAuroreAutomneAutrucheAvalerAvancerAvariceAvenirAverseAveugleAviateurAvideAvionAviserAvoineAvouerAvrilAxialAxiomeBadgeBafouerBagageBaguetteBaignadeBalancerBalconBaleineBalisageBambinBancaireBandageBanlieueBannie-reBanquierBarbierBarilBaronBarqueBarrageBassinBastionBatailleBateauBatterieBaudrierBavarderBeletteBe/lierBeloteBe/ne/ficeBerceauBergerBerlineBermudaBesaceBesogneBe/tailBeurreBiberonBicycleBiduleBijouBilanBilingueBillardBinaireBiologieBiopsieBiotypeBiscuitBisonBistouriBitumeBizarreBlafardBlagueBlanchirBlessantBlinderBlondBloquerBlousonBobardBobineBoireBoiserBolideBonbonBondirBonheurBonifierBonusBordureBorneBotteBoucleBoueuxBougieBoulonBouquinBourseBoussoleBoutiqueBoxeurBrancheBrasierBraveBrebisBre-cheBreuvageBricolerBrigadeBrillantBriocheBriqueBrochureBroderBronzerBrousseBroyeurBrumeBrusqueBrutalBruyantBuffleBuissonBulletinBureauBurinBustierButinerButoirBuvableBuvetteCabanonCabineCachetteCadeauCadreCafe/ineCaillouCaissonCalculerCalepinCalibreCalmerCalomnieCalvaireCamaradeCame/raCamionCampagneCanalCanetonCanonCantineCanularCapableCaporalCapriceCapsuleCapterCapucheCarabineCarboneCaresserCaribouCarnageCarotteCarreauCartonCascadeCasierCasqueCassureCauserCautionCavalierCaverneCaviarCe/dilleCeintureCe/lesteCelluleCendrierCensurerCentralCercleCe/re/bralCeriseCernerCerveauCesserChagrinChaiseChaleurChambreChanceChapitreCharbonChasseurChatonChaussonChavirerChemiseChenilleChe/quierChercherChevalChienChiffreChignonChime-reChiotChlorureChocolatChoisirChoseChouetteChromeChuteCigareCigogneCimenterCine/maCintrerCirculerCirerCirqueCiterneCitoyenCitronCivilClaironClameurClaquerClasseClavierClientClignerClimatClivageClocheClonageCloporteCobaltCobraCocasseCocotierCoderCodifierCoffreCognerCohe/sionCoifferCoincerCole-reColibriCollineColmaterColonelCombatCome/dieCommandeCompactConcertConduireConfierCongelerConnoterConsonneContactConvexeCopainCopieCorailCorbeauCordageCornicheCorpusCorrectCorte-geCosmiqueCostumeCotonCoudeCoupureCourageCouteauCouvrirCoyoteCrabeCrainteCravateCrayonCre/atureCre/diterCre/meuxCreuserCrevetteCriblerCrierCristalCrite-reCroireCroquerCrotaleCrucialCruelCrypterCubiqueCueillirCuille-reCuisineCuivreCulminerCultiverCumulerCupideCuratifCurseurCyanureCycleCylindreCyniqueDaignerDamierDangerDanseurDauphinDe/battreDe/biterDe/borderDe/briderDe/butantDe/calerDe/cembreDe/chirerDe/ciderDe/clarerDe/corerDe/crireDe/cuplerDe/daleDe/ductifDe/esseDe/fensifDe/filerDe/frayerDe/gagerDe/givrerDe/glutirDe/graferDe/jeunerDe/liceDe/logerDemanderDemeurerDe/molirDe/nicherDe/nouerDentelleDe/nuderDe/partDe/penserDe/phaserDe/placerDe/poserDe/rangerDe/roberDe/sastreDescenteDe/sertDe/signerDe/sobe/irDessinerDestrierDe/tacherDe/testerDe/tourerDe/tresseDevancerDevenirDevinerDevoirDiableDialogueDiamantDicterDiffe/rerDige/rerDigitalDigneDiluerDimancheDiminuerDioxydeDirectifDirigerDiscuterDisposerDissiperDistanceDivertirDiviserDocileDocteurDogmeDoigtDomaineDomicileDompterDonateurDonjonDonnerDopamineDortoirDorureDosageDoseurDossierDotationDouanierDoubleDouceurDouterDoyenDragonDraperDresserDribblerDroitureDuperieDuplexeDurableDurcirDynastieE/blouirE/carterE/charpeE/chelleE/clairerE/clipseE/cloreE/cluseE/coleE/conomieE/corceE/couterE/craserE/cre/merE/crivainE/crouE/cumeE/cureuilE/difierE/duquerEffacerEffectifEffigieEffortEffrayerEffusionE/galiserE/garerE/jecterE/laborerE/largirE/lectronE/le/gantE/le/phantE/le-veE/ligibleE/litismeE/logeE/luciderE/luderEmballerEmbellirEmbryonE/meraudeE/missionEmmenerE/motionE/mouvoirEmpereurEmployerEmporterEmpriseE/mulsionEncadrerEnche-reEnclaveEncocheEndiguerEndosserEndroitEnduireE/nergieEnfanceEnfermerEnfouirEngagerEnginEngloberE/nigmeEnjamberEnjeuEnleverEnnemiEnnuyeuxEnrichirEnrobageEnseigneEntasserEntendreEntierEntourerEntraverE/nume/rerEnvahirEnviableEnvoyerEnzymeE/olienE/paissirE/pargneE/patantE/pauleE/picerieE/pide/mieE/pierE/pilogueE/pineE/pisodeE/pitapheE/poqueE/preuveE/prouverE/puisantE/querreE/quipeE/rigerE/rosionErreurE/ruptionEscalierEspadonEspe-ceEspie-gleEspoirEspritEsquiverEssayerEssenceEssieuEssorerEstimeEstomacEstradeE/tage-reE/talerE/tancheE/tatiqueE/teindreE/tendoirE/ternelE/thanolE/thiqueEthnieE/tirerE/tofferE/toileE/tonnantE/tourdirE/trangeE/troitE/tudeEuphorieE/valuerE/vasionE/ventailE/videnceE/viterE/volutifE/voquerExactExage/rerExaucerExcellerExcitantExclusifExcuseExe/cuterExempleExercerExhalerExhorterExigenceExilerExisterExotiqueExpe/dierExplorerExposerExprimerExquisExtensifExtraireExulterFableFabuleuxFacetteFacileFactureFaiblirFalaiseFameuxFamilleFarceurFarfeluFarineFaroucheFascinerFatalFatigueFauconFautifFaveurFavoriFe/brileFe/conderFe/de/rerFe/linFemmeFe/murFendoirFe/odalFermerFe/roceFerveurFestivalFeuilleFeutreFe/vrierFiascoFicelerFictifFide-leFigureFilatureFiletageFilie-reFilleulFilmerFilouFiltrerFinancerFinirFioleFirmeFissureFixerFlairerFlammeFlasqueFlatteurFle/auFle-cheFleurFlexionFloconFloreFluctuerFluideFluvialFolieFonderieFongibleFontaineForcerForgeronFormulerFortuneFossileFoudreFouge-reFouillerFoulureFourmiFragileFraiseFranchirFrapperFrayeurFre/gateFreinerFrelonFre/mirFre/ne/sieFre-reFriableFrictionFrissonFrivoleFroidFromageFrontalFrotterFruitFugitifFuiteFureurFurieuxFurtifFusionFuturGagnerGalaxieGalerieGambaderGarantirGardienGarnirGarrigueGazelleGazonGe/antGe/latineGe/luleGendarmeGe/ne/ralGe/nieGenouGentilGe/ologieGe/ome-treGe/raniumGermeGestuelGeyserGibierGiclerGirafeGivreGlaceGlaiveGlisserGlobeGloireGlorieuxGolfeurGommeGonflerGorgeGorilleGoudronGouffreGoulotGoupilleGourmandGoutteGraduelGraffitiGraineGrandGrappinGratuitGravirGrenatGriffureGrillerGrimperGrognerGronderGrotteGroupeGrugerGrutierGruye-reGue/pardGuerrierGuideGuimauveGuitareGustatifGymnasteGyrostatHabitudeHachoirHalteHameauHangarHannetonHaricotHarmonieHarponHasardHe/liumHe/matomeHerbeHe/rissonHermineHe/ronHe/siterHeureuxHibernerHibouHilarantHistoireHiverHomardHommageHomoge-neHonneurHonorerHonteuxHordeHorizonHorlogeHormoneHorribleHouleuxHousseHublotHuileuxHumainHumbleHumideHumourHurlerHydromelHygie-neHymneHypnoseIdylleIgnorerIguaneIlliciteIllusionImageImbiberImiterImmenseImmobileImmuableImpactImpe/rialImplorerImposerImprimerImputerIncarnerIncendieIncidentInclinerIncoloreIndexerIndiceInductifIne/ditIneptieInexactInfiniInfligerInformerInfusionInge/rerInhalerInhiberInjecterInjureInnocentInoculerInonderInscrireInsecteInsigneInsoliteInspirerInstinctInsulterIntactIntenseIntimeIntrigueIntuitifInutileInvasionInventerInviterInvoquerIroniqueIrradierIrre/elIrriterIsolerIvoireIvresseJaguarJaillirJambeJanvierJardinJaugerJauneJavelotJetableJetonJeudiJeunesseJoindreJoncherJonglerJoueurJouissifJournalJovialJoyauJoyeuxJubilerJugementJuniorJuponJuristeJusticeJuteuxJuve/nileKayakKimonoKiosqueLabelLabialLabourerLace/rerLactoseLaguneLaineLaisserLaitierLambeauLamelleLampeLanceurLangageLanterneLapinLargeurLarmeLaurierLavaboLavoirLectureLe/galLe/gerLe/gumeLessiveLettreLevierLexiqueLe/zardLiasseLibe/rerLibreLicenceLicorneLie-geLie-vreLigatureLigoterLigueLimerLimiteLimonadeLimpideLine/aireLingotLionceauLiquideLisie-reListerLithiumLitigeLittoralLivreurLogiqueLointainLoisirLombricLoterieLouerLourdLoutreLouveLoyalLubieLucideLucratifLueurLugubreLuisantLumie-reLunaireLundiLuronLutterLuxueuxMachineMagasinMagentaMagiqueMaigreMaillonMaintienMairieMaisonMajorerMalaxerMale/ficeMalheurMaliceMalletteMammouthMandaterManiableManquantManteauManuelMarathonMarbreMarchandMardiMaritimeMarqueurMarronMartelerMascotteMassifMate/rielMatie-reMatraqueMaudireMaussadeMauveMaximalMe/chantMe/connuMe/dailleMe/decinMe/diterMe/duseMeilleurMe/langeMe/lodieMembreMe/moireMenacerMenerMenhirMensongeMentorMercrediMe/riteMerleMessagerMesureMe/talMe/te/oreMe/thodeMe/tierMeubleMiaulerMicrobeMietteMignonMigrerMilieuMillionMimiqueMinceMine/ralMinimalMinorerMinuteMiracleMiroiterMissileMixteMobileModerneMoelleuxMondialMoniteurMonnaieMonotoneMonstreMontagneMonumentMoqueurMorceauMorsureMortierMoteurMotifMoucheMoufleMoulinMoussonMoutonMouvantMultipleMunitionMurailleMure-neMurmureMuscleMuse/umMusicienMutationMuterMutuelMyriadeMyrtilleMyste-reMythiqueNageurNappeNarquoisNarrerNatationNationNatureNaufrageNautiqueNavireNe/buleuxNectarNe/fasteNe/gationNe/gligerNe/gocierNeigeNerveuxNettoyerNeuroneNeutronNeveuNicheNickelNitrateNiveauNobleNocifNocturneNoirceurNoisetteNomadeNombreuxNommerNormatifNotableNotifierNotoireNourrirNouveauNovateurNovembreNoviceNuageNuancerNuireNuisibleNume/roNuptialNuqueNutritifObe/irObjectifObligerObscurObserverObstacleObtenirObturerOccasionOccuperOce/anOctobreOctroyerOctuplerOculaireOdeurOdorantOffenserOfficierOffrirOgiveOiseauOisillonOlfactifOlivierOmbrageOmettreOnctueuxOndulerOne/reuxOniriqueOpaleOpaqueOpe/rerOpinionOpportunOpprimerOpterOptiqueOrageuxOrangeOrbiteOrdonnerOreilleOrganeOrgueilOrificeOrnementOrqueOrtieOscillerOsmoseOssatureOtarieOuraganOursonOutilOutragerOuvrageOvationOxydeOxyge-neOzonePaisiblePalacePalmare-sPalourdePalperPanachePandaPangolinPaniquerPanneauPanoramaPantalonPapayePapierPapoterPapyrusParadoxeParcelleParesseParfumerParlerParoleParrainParsemerPartagerParureParvenirPassionPaste-quePaternelPatiencePatronPavillonPavoiserPayerPaysagePeignePeintrePelagePe/licanPellePelousePeluchePendulePe/ne/trerPe/niblePensifPe/nuriePe/pitePe/plumPerdrixPerforerPe/riodePermuterPerplexePersilPertePeserPe/talePetitPe/trirPeuplePharaonPhobiePhoquePhotonPhrasePhysiquePianoPicturalPie-cePierrePieuvrePilotePinceauPipettePiquerPiroguePiscinePistonPivoterPixelPizzaPlacardPlafondPlaisirPlanerPlaquePlastronPlateauPleurerPlexusPliagePlombPlongerPluiePlumagePochettePoe/siePoe-tePointePoirierPoissonPoivrePolairePolicierPollenPolygonePommadePompierPonctuelPonde/rerPoneyPortiquePositionPosse/derPosturePotagerPoteauPotionPoucePoulainPoumonPourprePoussinPouvoirPrairiePratiquePre/cieuxPre/direPre/fixePre/ludePre/nomPre/sencePre/textePre/voirPrimitifPrincePrisonPriverProble-meProce/derProdigeProfondProgre-sProieProjeterProloguePromenerPropreProspe-reProte/gerProuesseProverbePrudencePruneauPsychosePublicPuceronPuiserPulpePulsarPunaisePunitifPupitrePurifierPuzzlePyramideQuasarQuerelleQuestionQuie/tudeQuitterQuotientRacineRaconterRadieuxRagondinRaideurRaisinRalentirRallongeRamasserRapideRasageRatisserRavagerRavinRayonnerRe/actifRe/agirRe/aliserRe/animerRecevoirRe/citerRe/clamerRe/colterRecruterReculerRecyclerRe/digerRedouterRefaireRe/flexeRe/formerRefrainRefugeRe/galienRe/gionRe/glageRe/gulierRe/ite/rerRejeterRejouerRelatifReleverReliefRemarqueReme-deRemiseRemonterRemplirRemuerRenardRenfortReniflerRenoncerRentrerRenvoiReplierReporterRepriseReptileRequinRe/serveRe/sineuxRe/soudreRespectResterRe/sultatRe/tablirRetenirRe/ticuleRetomberRetracerRe/unionRe/ussirRevancheRevivreRe/volteRe/vulsifRichesseRideauRieurRigideRigolerRincerRiposterRisibleRisqueRituelRivalRivie-reRocheuxRomanceRompreRonceRondinRoseauRosierRotatifRotorRotuleRougeRouilleRouleauRoutineRoyaumeRubanRubisRucheRuelleRugueuxRuinerRuisseauRuserRustiqueRythmeSablerSaboterSabreSacocheSafariSagesseSaisirSaladeSaliveSalonSaluerSamediSanctionSanglierSarcasmeSardineSaturerSaugrenuSaumonSauterSauvageSavantSavonnerScalpelScandaleSce/le/ratSce/narioSceptreSche/maScienceScinderScoreScrutinSculpterSe/anceSe/cableSe/cherSecouerSe/cre/terSe/datifSe/duireSeigneurSe/jourSe/lectifSemaineSemblerSemenceSe/minalSe/nateurSensibleSentenceSe/parerSe/quenceSereinSergentSe/rieuxSerrureSe/rumServiceSe/sameSe/virSevrageSextupleSide/ralSie-cleSie/gerSifflerSigleSignalSilenceSiliciumSimpleSince-reSinistreSiphonSiropSismiqueSituerSkierSocialSocleSodiumSoigneuxSoldatSoleilSolitudeSolubleSombreSommeilSomnolerSondeSongeurSonnetteSonoreSorcierSortirSosieSottiseSoucieuxSoudureSouffleSouleverSoupapeSourceSoutirerSouvenirSpacieuxSpatialSpe/cialSphe-reSpiralStableStationSternumStimulusStipulerStrictStudieuxStupeurStylisteSublimeSubstratSubtilSubvenirSucce-sSucreSuffixeSugge/rerSuiveurSulfateSuperbeSupplierSurfaceSuricateSurmenerSurpriseSursautSurvieSuspectSyllabeSymboleSyme/trieSynapseSyntaxeSyste-meTabacTablierTactileTaillerTalentTalismanTalonnerTambourTamiserTangibleTapisTaquinerTarderTarifTartineTasseTatamiTatouageTaupeTaureauTaxerTe/moinTemporelTenailleTendreTeneurTenirTensionTerminerTerneTerribleTe/tineTexteThe-meThe/orieThe/rapieThoraxTibiaTie-deTimideTirelireTiroirTissuTitaneTitreTituberTobogganTole/rantTomateToniqueTonneauToponymeTorcheTordreTornadeTorpilleTorrentTorseTortueTotemToucherTournageTousserToxineTractionTraficTragiqueTrahirTrainTrancherTravailTre-fleTremperTre/sorTreuilTriageTribunalTricoterTrilogieTriompheTriplerTriturerTrivialTromboneTroncTropicalTroupeauTuileTulipeTumulteTunnelTurbineTuteurTutoyerTuyauTympanTyphonTypiqueTyranUbuesqueUltimeUltrasonUnanimeUnifierUnionUniqueUnitaireUniversUraniumUrbainUrticantUsageUsineUsuelUsureUtileUtopieVacarmeVaccinVagabondVagueVaillantVaincreVaisseauValableValiseVallonValveVampireVanilleVapeurVarierVaseuxVassalVasteVecteurVedetteVe/ge/talVe/hiculeVeinardVe/loceVendrediVe/ne/rerVengerVenimeuxVentouseVerdureVe/rinVernirVerrouVerserVertuVestonVe/te/ranVe/tusteVexantVexerViaducViandeVictoireVidangeVide/oVignetteVigueurVilainVillageVinaigreViolonVipe-reVirementVirtuoseVirusVisageViseurVisionVisqueuxVisuelVitalVitesseViticoleVitrineVivaceVivipareVocationVoguerVoileVoisinVoitureVolailleVolcanVoltigerVolumeVoraceVortexVoterVouloirVoyageVoyelleWagonXe/nonYachtZe-breZe/nithZesteZoologie"; -var wordlist = null; -var lookup = {}; -function dropDiacritic(word) { - wordlist_1.logger.checkNormalize(); - return (0, strings_1.toUtf8String)(Array.prototype.filter.call((0, strings_1.toUtf8Bytes)(word.normalize("NFD").toLowerCase()), function (c) { - return ((c >= 65 && c <= 90) || (c >= 97 && c <= 123)); - })); -} -function expand(word) { - var output = []; - Array.prototype.forEach.call((0, strings_1.toUtf8Bytes)(word), function (c) { - // Acute accent - if (c === 47) { - output.push(204); - output.push(129); - // Grave accent - } - else if (c === 45) { - output.push(204); - output.push(128); - } - else { - output.push(c); - } - }); - return (0, strings_1.toUtf8String)(output); -} -function loadWords(lang) { - if (wordlist != null) { - return; - } - wordlist = words.replace(/([A-Z])/g, " $1").toLowerCase().substring(1).split(" ").map(function (w) { return expand(w); }); - wordlist.forEach(function (word, index) { - lookup[dropDiacritic(word)] = index; - }); - // Verify the computed list matches the official list - /* istanbul ignore if */ - if (wordlist_1.Wordlist.check(lang) !== "0x51deb7ae009149dc61a6bd18a918eb7ac78d2775726c68e598b92d002519b045") { - wordlist = null; - throw new Error("BIP39 Wordlist for fr (French) FAILED"); - } -} -var LangFr = /** @class */ (function (_super) { - __extends(LangFr, _super); - function LangFr() { - return _super.call(this, "fr") || this; - } - LangFr.prototype.getWord = function (index) { - loadWords(this); - return wordlist[index]; - }; - LangFr.prototype.getWordIndex = function (word) { - loadWords(this); - return lookup[dropDiacritic(word)]; - }; - return LangFr; -}(wordlist_1.Wordlist)); -var langFr = new LangFr(); -exports.langFr = langFr; -wordlist_1.Wordlist.register(langFr); -//# sourceMappingURL=lang-fr.js.map - -/***/ }), - -/***/ 87054: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.langIt = void 0; -var wordlist_1 = __nccwpck_require__(18210); -var words = "AbacoAbbaglioAbbinatoAbeteAbissoAbolireAbrasivoAbrogatoAccadereAccennoAccusatoAcetoneAchilleAcidoAcquaAcreAcrilicoAcrobataAcutoAdagioAddebitoAddomeAdeguatoAderireAdipeAdottareAdulareAffabileAffettoAffissoAffrantoAforismaAfosoAfricanoAgaveAgenteAgevoleAggancioAgireAgitareAgonismoAgricoloAgrumetoAguzzoAlabardaAlatoAlbatroAlberatoAlboAlbumeAlceAlcolicoAlettoneAlfaAlgebraAlianteAlibiAlimentoAllagatoAllegroAllievoAllodolaAllusivoAlmenoAlogenoAlpacaAlpestreAltalenaAlternoAlticcioAltroveAlunnoAlveoloAlzareAmalgamaAmanitaAmarenaAmbitoAmbratoAmebaAmericaAmetistaAmicoAmmassoAmmendaAmmirareAmmonitoAmoreAmpioAmpliareAmuletoAnacardoAnagrafeAnalistaAnarchiaAnatraAncaAncellaAncoraAndareAndreaAnelloAngeloAngolareAngustoAnimaAnnegareAnnidatoAnnoAnnuncioAnonimoAnticipoAnziApaticoAperturaApodeApparireAppetitoAppoggioApprodoAppuntoAprileArabicaArachideAragostaAraldicaArancioAraturaArazzoArbitroArchivioArditoArenileArgentoArgineArgutoAriaArmoniaArneseArredatoArringaArrostoArsenicoArsoArteficeArzilloAsciuttoAscoltoAsepsiAsetticoAsfaltoAsinoAsolaAspiratoAsproAssaggioAsseAssolutoAssurdoAstaAstenutoAsticeAstrattoAtavicoAteismoAtomicoAtonoAttesaAttivareAttornoAttritoAttualeAusilioAustriaAutistaAutonomoAutunnoAvanzatoAvereAvvenireAvvisoAvvolgereAzioneAzotoAzzimoAzzurroBabeleBaccanoBacinoBacoBadessaBadilataBagnatoBaitaBalconeBaldoBalenaBallataBalzanoBambinoBandireBaraondaBarbaroBarcaBaritonoBarlumeBaroccoBasilicoBassoBatostaBattutoBauleBavaBavosaBeccoBeffaBelgioBelvaBendaBenevoleBenignoBenzinaBereBerlinaBetaBibitaBiciBidoneBifidoBigaBilanciaBimboBinocoloBiologoBipedeBipolareBirbanteBirraBiscottoBisestoBisnonnoBisonteBisturiBizzarroBlandoBlattaBollitoBonificoBordoBoscoBotanicoBottinoBozzoloBraccioBradipoBramaBrancaBravuraBretellaBrevettoBrezzaBrigliaBrillanteBrindareBroccoloBrodoBronzinaBrulloBrunoBubboneBucaBudinoBuffoneBuioBulboBuonoBurloneBurrascaBussolaBustaCadettoCaducoCalamaroCalcoloCalesseCalibroCalmoCaloriaCambusaCamerataCamiciaCamminoCamolaCampaleCanapaCandelaCaneCaninoCanottoCantinaCapaceCapelloCapitoloCapogiroCapperoCapraCapsulaCarapaceCarcassaCardoCarismaCarovanaCarrettoCartolinaCasaccioCascataCasermaCasoCassoneCastelloCasualeCatastaCatenaCatrameCautoCavilloCedibileCedrataCefaloCelebreCellulareCenaCenoneCentesimoCeramicaCercareCertoCerumeCervelloCesoiaCespoCetoChelaChiaroChiccaChiedereChimeraChinaChirurgoChitarraCiaoCiclismoCifrareCignoCilindroCiottoloCircaCirrosiCitricoCittadinoCiuffoCivettaCivileClassicoClinicaCloroCoccoCodardoCodiceCoerenteCognomeCollareColmatoColoreColposoColtivatoColzaComaCometaCommandoComodoComputerComuneConcisoCondurreConfermaCongelareConiugeConnessoConoscereConsumoContinuoConvegnoCopertoCopioneCoppiaCopricapoCorazzaCordataCoricatoCorniceCorollaCorpoCorredoCorsiaCorteseCosmicoCostanteCotturaCovatoCratereCravattaCreatoCredereCremosoCrescitaCretaCricetoCrinaleCrisiCriticoCroceCronacaCrostataCrucialeCruscaCucireCuculoCuginoCullatoCupolaCuratoreCursoreCurvoCuscinoCustodeDadoDainoDalmataDamerinoDanielaDannosoDanzareDatatoDavantiDavveroDebuttoDecennioDecisoDeclinoDecolloDecretoDedicatoDefinitoDeformeDegnoDelegareDelfinoDelirioDeltaDemenzaDenotatoDentroDepositoDerapataDerivareDerogaDescrittoDesertoDesiderioDesumereDetersivoDevotoDiametroDicembreDiedroDifesoDiffusoDigerireDigitaleDiluvioDinamicoDinnanziDipintoDiplomaDipoloDiradareDireDirottoDirupoDisagioDiscretoDisfareDisgeloDispostoDistanzaDisumanoDitoDivanoDiveltoDividereDivoratoDobloneDocenteDoganaleDogmaDolceDomatoDomenicaDominareDondoloDonoDormireDoteDottoreDovutoDozzinaDragoDruidoDubbioDubitareDucaleDunaDuomoDupliceDuraturoEbanoEccessoEccoEclissiEconomiaEderaEdicolaEdileEditoriaEducareEgemoniaEgliEgoismoEgregioElaboratoElargireEleganteElencatoElettoElevareElficoElicaElmoElsaElusoEmanatoEmblemaEmessoEmiroEmotivoEmozioneEmpiricoEmuloEndemicoEnduroEnergiaEnfasiEnotecaEntrareEnzimaEpatiteEpilogoEpisodioEpocaleEppureEquatoreErarioErbaErbosoEredeEremitaErigereErmeticoEroeErosivoErranteEsagonoEsameEsanimeEsaudireEscaEsempioEsercitoEsibitoEsigenteEsistereEsitoEsofagoEsortatoEsosoEspansoEspressoEssenzaEssoEstesoEstimareEstoniaEstrosoEsultareEtilicoEtnicoEtruscoEttoEuclideoEuropaEvasoEvidenzaEvitatoEvolutoEvvivaFabbricaFaccendaFachiroFalcoFamigliaFanaleFanfaraFangoFantasmaFareFarfallaFarinosoFarmacoFasciaFastosoFasulloFaticareFatoFavolosoFebbreFecolaFedeFegatoFelpaFeltroFemminaFendereFenomenoFermentoFerroFertileFessuraFestivoFettaFeudoFiabaFiduciaFifaFiguratoFiloFinanzaFinestraFinireFioreFiscaleFisicoFiumeFlaconeFlamencoFleboFlemmaFloridoFluenteFluoroFobicoFocacciaFocosoFoderatoFoglioFolataFolcloreFolgoreFondenteFoneticoFoniaFontanaForbitoForchettaForestaFormicaFornaioForoFortezzaForzareFosfatoFossoFracassoFranaFrassinoFratelloFreccettaFrenataFrescoFrigoFrollinoFrondeFrugaleFruttaFucilataFucsiaFuggenteFulmineFulvoFumanteFumettoFumosoFuneFunzioneFuocoFurboFurgoneFuroreFusoFutileGabbianoGaffeGalateoGallinaGaloppoGamberoGammaGaranziaGarboGarofanoGarzoneGasdottoGasolioGastricoGattoGaudioGazeboGazzellaGecoGelatinaGelsoGemelloGemmatoGeneGenitoreGennaioGenotipoGergoGhepardoGhiaccioGhisaGialloGildaGineproGiocareGioielloGiornoGioveGiratoGironeGittataGiudizioGiuratoGiustoGlobuloGlutineGnomoGobbaGolfGomitoGommoneGonfioGonnaGovernoGracileGradoGraficoGrammoGrandeGrattareGravosoGraziaGrecaGreggeGrifoneGrigioGrinzaGrottaGruppoGuadagnoGuaioGuantoGuardareGufoGuidareIbernatoIconaIdenticoIdillioIdoloIdraIdricoIdrogenoIgieneIgnaroIgnoratoIlareIllesoIllogicoIlludereImballoImbevutoImboccoImbutoImmaneImmersoImmolatoImpaccoImpetoImpiegoImportoImprontaInalareInarcareInattivoIncantoIncendioInchinoIncisivoInclusoIncontroIncrocioIncuboIndagineIndiaIndoleIneditoInfattiInfilareInflittoIngaggioIngegnoIngleseIngordoIngrossoInnescoInodoreInoltrareInondatoInsanoInsettoInsiemeInsonniaInsulinaIntasatoInteroIntonacoIntuitoInumidireInvalidoInveceInvitoIperboleIpnoticoIpotesiIppicaIrideIrlandaIronicoIrrigatoIrrorareIsolatoIsotopoIstericoIstitutoIstriceItaliaIterareLabbroLabirintoLaccaLaceratoLacrimaLacunaLaddoveLagoLampoLancettaLanternaLardosoLargaLaringeLastraLatenzaLatinoLattugaLavagnaLavoroLegaleLeggeroLemboLentezzaLenzaLeoneLepreLesivoLessatoLestoLetteraleLevaLevigatoLiberoLidoLievitoLillaLimaturaLimitareLimpidoLineareLinguaLiquidoLiraLiricaLiscaLiteLitigioLivreaLocandaLodeLogicaLombareLondraLongevoLoquaceLorenzoLotoLotteriaLuceLucidatoLumacaLuminosoLungoLupoLuppoloLusingaLussoLuttoMacabroMacchinaMaceroMacinatoMadamaMagicoMagliaMagneteMagroMaiolicaMalafedeMalgradoMalintesoMalsanoMaltoMalumoreManaManciaMandorlaMangiareManifestoMannaroManovraMansardaMantideManubrioMappaMaratonaMarcireMarettaMarmoMarsupioMascheraMassaiaMastinoMaterassoMatricolaMattoneMaturoMazurcaMeandroMeccanicoMecenateMedesimoMeditareMegaMelassaMelisMelodiaMeningeMenoMensolaMercurioMerendaMerloMeschinoMeseMessereMestoloMetalloMetodoMettereMiagolareMicaMicelioMicheleMicroboMidolloMieleMiglioreMilanoMiliteMimosaMineraleMiniMinoreMirinoMirtilloMiscelaMissivaMistoMisurareMitezzaMitigareMitraMittenteMnemonicoModelloModificaModuloMoganoMogioMoleMolossoMonasteroMoncoMondinaMonetarioMonileMonotonoMonsoneMontatoMonvisoMoraMordereMorsicatoMostroMotivatoMotosegaMottoMovenzaMovimentoMozzoMuccaMucosaMuffaMughettoMugnaioMulattoMulinelloMultiploMummiaMuntoMuovereMuraleMusaMuscoloMusicaMutevoleMutoNababboNaftaNanometroNarcisoNariceNarratoNascereNastrareNaturaleNauticaNaviglioNebulosaNecrosiNegativoNegozioNemmenoNeofitaNerettoNervoNessunoNettunoNeutraleNeveNevroticoNicchiaNinfaNitidoNobileNocivoNodoNomeNominaNordicoNormaleNorvegeseNostranoNotareNotiziaNotturnoNovellaNucleoNullaNumeroNuovoNutrireNuvolaNuzialeOasiObbedireObbligoObeliscoOblioOboloObsoletoOccasioneOcchioOccidenteOccorrereOccultareOcraOculatoOdiernoOdorareOffertaOffrireOffuscatoOggettoOggiOgnunoOlandeseOlfattoOliatoOlivaOlogrammaOltreOmaggioOmbelicoOmbraOmegaOmissioneOndosoOnereOniceOnnivoroOnorevoleOntaOperatoOpinioneOppostoOracoloOrafoOrdineOrecchinoOreficeOrfanoOrganicoOrigineOrizzonteOrmaOrmeggioOrnativoOrologioOrrendoOrribileOrtensiaOrticaOrzataOrzoOsareOscurareOsmosiOspedaleOspiteOssaOssidareOstacoloOsteOtiteOtreOttagonoOttimoOttobreOvaleOvestOvinoOviparoOvocitoOvunqueOvviareOzioPacchettoPacePacificoPadellaPadronePaesePagaPaginaPalazzinaPalesarePallidoPaloPaludePandoroPannelloPaoloPaonazzoPapricaParabolaParcellaParerePargoloPariParlatoParolaPartireParvenzaParzialePassivoPasticcaPataccaPatologiaPattumePavonePeccatoPedalarePedonalePeggioPelosoPenarePendicePenisolaPennutoPenombraPensarePentolaPepePepitaPerbenePercorsoPerdonatoPerforarePergamenaPeriodoPermessoPernoPerplessoPersuasoPertugioPervasoPesatorePesistaPesoPestiferoPetaloPettinePetulantePezzoPiacerePiantaPiattinoPiccinoPicozzaPiegaPietraPifferoPigiamaPigolioPigroPilaPiliferoPillolaPilotaPimpantePinetaPinnaPinoloPioggiaPiomboPiramidePireticoPiritePirolisiPitonePizzicoPlaceboPlanarePlasmaPlatanoPlenarioPochezzaPoderosoPodismoPoesiaPoggiarePolentaPoligonoPollicePolmonitePolpettaPolsoPoltronaPolverePomicePomodoroPontePopolosoPorfidoPorosoPorporaPorrePortataPosaPositivoPossessoPostulatoPotassioPoterePranzoPrassiPraticaPreclusoPredicaPrefissoPregiatoPrelievoPremerePrenotarePreparatoPresenzaPretestoPrevalsoPrimaPrincipePrivatoProblemaProcuraProdurreProfumoProgettoProlungaPromessaPronomePropostaProrogaProtesoProvaPrudentePrugnaPruritoPsichePubblicoPudicaPugilatoPugnoPulcePulitoPulsantePuntarePupazzoPupillaPuroQuadroQualcosaQuasiQuerelaQuotaRaccoltoRaddoppioRadicaleRadunatoRafficaRagazzoRagioneRagnoRamarroRamingoRamoRandagioRantolareRapatoRapinaRappresoRasaturaRaschiatoRasenteRassegnaRastrelloRataRavvedutoRealeRecepireRecintoReclutaReconditoRecuperoRedditoRedimereRegalatoRegistroRegolaRegressoRelazioneRemareRemotoRennaReplicaReprimereReputareResaResidenteResponsoRestauroReteRetinaRetoricaRettificaRevocatoRiassuntoRibadireRibelleRibrezzoRicaricaRiccoRicevereRiciclatoRicordoRicredutoRidicoloRidurreRifasareRiflessoRiformaRifugioRigareRigettatoRighelloRilassatoRilevatoRimanereRimbalzoRimedioRimorchioRinascitaRincaroRinforzoRinnovoRinomatoRinsavitoRintoccoRinunciaRinvenireRiparatoRipetutoRipienoRiportareRipresaRipulireRisataRischioRiservaRisibileRisoRispettoRistoroRisultatoRisvoltoRitardoRitegnoRitmicoRitrovoRiunioneRivaRiversoRivincitaRivoltoRizomaRobaRoboticoRobustoRocciaRocoRodaggioRodereRoditoreRogitoRollioRomanticoRompereRonzioRosolareRospoRotanteRotondoRotulaRovescioRubizzoRubricaRugaRullinoRumineRumorosoRuoloRupeRussareRusticoSabatoSabbiareSabotatoSagomaSalassoSaldaturaSalgemmaSalivareSalmoneSaloneSaltareSalutoSalvoSapereSapidoSaporitoSaracenoSarcasmoSartoSassosoSatelliteSatiraSatolloSaturnoSavanaSavioSaziatoSbadiglioSbalzoSbancatoSbarraSbattereSbavareSbendareSbirciareSbloccatoSbocciatoSbrinareSbruffoneSbuffareScabrosoScadenzaScalaScambiareScandaloScapolaScarsoScatenareScavatoSceltoScenicoScettroSchedaSchienaSciarpaScienzaScindereScippoSciroppoScivoloSclerareScodellaScolpitoScompartoSconfortoScoprireScortaScossoneScozzeseScribaScrollareScrutinioScuderiaScultoreScuolaScuroScusareSdebitareSdoganareSeccaturaSecondoSedanoSeggiolaSegnalatoSegregatoSeguitoSelciatoSelettivoSellaSelvaggioSemaforoSembrareSemeSeminatoSempreSensoSentireSepoltoSequenzaSerataSerbatoSerenoSerioSerpenteSerraglioServireSestinaSetolaSettimanaSfaceloSfaldareSfamatoSfarzosoSfaticatoSferaSfidaSfilatoSfingeSfocatoSfoderareSfogoSfoltireSforzatoSfrattoSfruttatoSfuggitoSfumareSfusoSgabelloSgarbatoSgonfiareSgorbioSgrassatoSguardoSibiloSiccomeSierraSiglaSignoreSilenzioSillabaSimboloSimpaticoSimulatoSinfoniaSingoloSinistroSinoSintesiSinusoideSiparioSismaSistoleSituatoSlittaSlogaturaSlovenoSmarritoSmemoratoSmentitoSmeraldoSmilzoSmontareSmottatoSmussatoSnellireSnervatoSnodoSobbalzoSobrioSoccorsoSocialeSodaleSoffittoSognoSoldatoSolenneSolidoSollazzoSoloSolubileSolventeSomaticoSommaSondaSonettoSonniferoSopireSoppesoSopraSorgereSorpassoSorrisoSorsoSorteggioSorvolatoSospiroSostaSottileSpadaSpallaSpargereSpatolaSpaventoSpazzolaSpecieSpedireSpegnereSpelaturaSperanzaSpessoreSpettraleSpezzatoSpiaSpigolosoSpillatoSpinosoSpiraleSplendidoSportivoSposoSprangaSprecareSpronatoSpruzzoSpuntinoSquilloSradicareSrotolatoStabileStaccoStaffaStagnareStampatoStantioStarnutoStaseraStatutoSteloSteppaSterzoStilettoStimaStirpeStivaleStizzosoStonatoStoricoStrappoStregatoStriduloStrozzareStruttoStuccareStufoStupendoSubentroSuccosoSudoreSuggeritoSugoSultanoSuonareSuperboSupportoSurgelatoSurrogatoSussurroSuturaSvagareSvedeseSveglioSvelareSvenutoSveziaSviluppoSvistaSvizzeraSvoltaSvuotareTabaccoTabulatoTacciareTaciturnoTaleTalismanoTamponeTanninoTaraTardivoTargatoTariffaTarpareTartarugaTastoTatticoTavernaTavolataTazzaTecaTecnicoTelefonoTemerarioTempoTemutoTendoneTeneroTensioneTentacoloTeoremaTermeTerrazzoTerzettoTesiTesseratoTestatoTetroTettoiaTifareTigellaTimbroTintoTipicoTipografoTiraggioTiroTitanioTitoloTitubanteTizioTizzoneToccareTollerareToltoTombolaTomoTonfoTonsillaTopazioTopologiaToppaTorbaTornareTorroneTortoraToscanoTossireTostaturaTotanoTraboccoTracheaTrafilaTragediaTralcioTramontoTransitoTrapanoTrarreTraslocoTrattatoTraveTrecciaTremolioTrespoloTributoTrichecoTrifoglioTrilloTrinceaTrioTristezzaTrituratoTrivellaTrombaTronoTroppoTrottolaTrovareTruccatoTubaturaTuffatoTulipanoTumultoTunisiaTurbareTurchinoTutaTutelaUbicatoUccelloUccisoreUdireUditivoUffaUfficioUgualeUlisseUltimatoUmanoUmileUmorismoUncinettoUngereUnghereseUnicornoUnificatoUnisonoUnitarioUnteUovoUpupaUraganoUrgenzaUrloUsanzaUsatoUscitoUsignoloUsuraioUtensileUtilizzoUtopiaVacanteVaccinatoVagabondoVagliatoValangaValgoValicoVallettaValorosoValutareValvolaVampataVangareVanitosoVanoVantaggioVanveraVaporeVaranoVarcatoVarianteVascaVedettaVedovaVedutoVegetaleVeicoloVelcroVelinaVellutoVeloceVenatoVendemmiaVentoVeraceVerbaleVergognaVerificaVeroVerrucaVerticaleVescicaVessilloVestaleVeteranoVetrinaVetustoViandanteVibranteVicendaVichingoVicinanzaVidimareVigiliaVignetoVigoreVileVillanoViminiVincitoreViolaViperaVirgolaVirologoVirulentoViscosoVisioneVispoVissutoVisuraVitaVitelloVittimaVivandaVividoViziareVoceVogaVolatileVolereVolpeVoragineVulcanoZampognaZannaZappatoZatteraZavorraZefiroZelanteZeloZenzeroZerbinoZibettoZincoZirconeZittoZollaZoticoZuccheroZufoloZuluZuppa"; -var wordlist = null; -function loadWords(lang) { - if (wordlist != null) { - return; - } - wordlist = words.replace(/([A-Z])/g, " $1").toLowerCase().substring(1).split(" "); - // Verify the computed list matches the official list - /* istanbul ignore if */ - if (wordlist_1.Wordlist.check(lang) !== "0x5c1362d88fd4cf614a96f3234941d29f7d37c08c5292fde03bf62c2db6ff7620") { - wordlist = null; - throw new Error("BIP39 Wordlist for it (Italian) FAILED"); - } -} -var LangIt = /** @class */ (function (_super) { - __extends(LangIt, _super); - function LangIt() { - return _super.call(this, "it") || this; - } - LangIt.prototype.getWord = function (index) { - loadWords(this); - return wordlist[index]; - }; - LangIt.prototype.getWordIndex = function (word) { - loadWords(this); - return wordlist.indexOf(word); - }; - return LangIt; -}(wordlist_1.Wordlist)); -var langIt = new LangIt(); -exports.langIt = langIt; -wordlist_1.Wordlist.register(langIt); -//# sourceMappingURL=lang-it.js.map - -/***/ }), - -/***/ 53670: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.langJa = void 0; -var bytes_1 = __nccwpck_require__(42006); -var strings_1 = __nccwpck_require__(13859); -var wordlist_1 = __nccwpck_require__(18210); -var data = [ - // 4-kana words - "AQRASRAGBAGUAIRAHBAghAURAdBAdcAnoAMEAFBAFCBKFBQRBSFBCXBCDBCHBGFBEQBpBBpQBIkBHNBeOBgFBVCBhBBhNBmOBmRBiHBiFBUFBZDBvFBsXBkFBlcBjYBwDBMBBTBBTRBWBBWXXaQXaRXQWXSRXCFXYBXpHXOQXHRXhRXuRXmXXbRXlXXwDXTRXrCXWQXWGaBWaKcaYgasFadQalmaMBacAKaRKKBKKXKKjKQRKDRKCYKCRKIDKeVKHcKlXKjHKrYNAHNBWNaRNKcNIBNIONmXNsXNdXNnBNMBNRBNrXNWDNWMNFOQABQAHQBrQXBQXFQaRQKXQKDQKOQKFQNBQNDQQgQCXQCDQGBQGDQGdQYXQpBQpQQpHQLXQHuQgBQhBQhCQuFQmXQiDQUFQZDQsFQdRQkHQbRQlOQlmQPDQjDQwXQMBQMDQcFQTBQTHQrDDXQDNFDGBDGQDGRDpFDhFDmXDZXDbRDMYDRdDTRDrXSAhSBCSBrSGQSEQSHBSVRShYShkSyQSuFSiBSdcSoESocSlmSMBSFBSFKSFNSFdSFcCByCaRCKcCSBCSRCCrCGbCEHCYXCpBCpQCIBCIHCeNCgBCgFCVECVcCmkCmwCZXCZFCdRClOClmClFCjDCjdCnXCwBCwXCcRCFQCFjGXhGNhGDEGDMGCDGCHGIFGgBGVXGVEGVRGmXGsXGdYGoSGbRGnXGwXGwDGWRGFNGFLGFOGFdGFkEABEBDEBFEXOEaBEKSENBENDEYXEIgEIkEgBEgQEgHEhFEudEuFEiBEiHEiFEZDEvBEsXEsFEdXEdREkFEbBEbRElFEPCEfkEFNYAEYAhYBNYQdYDXYSRYCEYYoYgQYgRYuRYmCYZTYdBYbEYlXYjQYRbYWRpKXpQopQnpSFpCXpIBpISphNpdBpdRpbRpcZpFBpFNpFDpFopFrLADLBuLXQLXcLaFLCXLEhLpBLpFLHXLeVLhILdHLdRLoDLbRLrXIABIBQIBCIBsIBoIBMIBRIXaIaRIKYIKRINBINuICDIGBIIDIIkIgRIxFIyQIiHIdRIbYIbRIlHIwRIMYIcRIRVITRIFBIFNIFQOABOAFOBQOaFONBONMOQFOSFOCDOGBOEQOpBOLXOIBOIFOgQOgFOyQOycOmXOsXOdIOkHOMEOMkOWWHBNHXNHXWHNXHDuHDRHSuHSRHHoHhkHmRHdRHkQHlcHlRHwBHWcgAEgAggAkgBNgBQgBEgXOgYcgLXgHjgyQgiBgsFgdagMYgWSgFQgFEVBTVXEVKBVKNVKDVKYVKRVNBVNYVDBVDxVSBVSRVCjVGNVLXVIFVhBVhcVsXVdRVbRVlRhBYhKYhDYhGShxWhmNhdahdkhbRhjohMXhTRxAXxXSxKBxNBxEQxeNxeQxhXxsFxdbxlHxjcxFBxFNxFQxFOxFoyNYyYoybcyMYuBQuBRuBruDMuCouHBudQukkuoBulVuMXuFEmCYmCRmpRmeDmiMmjdmTFmFQiADiBOiaRiKRiNBiNRiSFiGkiGFiERipRiLFiIFihYibHijBijEiMXiWBiFBiFCUBQUXFUaRUNDUNcUNRUNFUDBUSHUCDUGBUGFUEqULNULoUIRUeEUeYUgBUhFUuRUiFUsXUdFUkHUbBUjSUjYUwXUMDUcHURdUTBUrBUrXUrQZAFZXZZaRZKFZNBZQFZCXZGBZYdZpBZLDZIFZHXZHNZeQZVRZVFZmXZiBZvFZdFZkFZbHZbFZwXZcCZcRZRBvBQvBGvBLvBWvCovMYsAFsBDsaRsKFsNFsDrsSHsSFsCXsCRsEBsEHsEfspBsLBsLDsIgsIRseGsbRsFBsFQsFSdNBdSRdCVdGHdYDdHcdVbdySduDdsXdlRdwXdWYdWcdWRkBMkXOkaRkNIkNFkSFkCFkYBkpRkeNkgBkhVkmXksFklVkMBkWDkFNoBNoaQoaFoNBoNXoNaoNEoSRoEroYXoYCoYbopRopFomXojkowXorFbBEbEIbdBbjYlaRlDElMXlFDjKjjSRjGBjYBjYkjpRjLXjIBjOFjeVjbRjwBnXQnSHnpFnLXnINnMBnTRwXBwXNwXYwNFwQFwSBwGFwLXwLDweNwgBwuHwjDwnXMBXMpFMIBMeNMTHcaQcNBcDHcSFcCXcpBcLXcLDcgFcuFcnXcwXccDcTQcrFTQErXNrCHrpFrgFrbFrTHrFcWNYWNbWEHWMXWTR", - // 5-kana words - "ABGHABIJAEAVAYJQALZJAIaRAHNXAHdcAHbRAZJMAZJRAZTRAdVJAklmAbcNAjdRAMnRAMWYAWpRAWgRAFgBAFhBAFdcBNJBBNJDBQKBBQhcBQlmBDEJBYJkBYJTBpNBBpJFBIJBBIJDBIcABOKXBOEJBOVJBOiJBOZJBepBBeLXBeIFBegBBgGJBVJXBuocBiJRBUJQBlXVBlITBwNFBMYVBcqXBTlmBWNFBWiJBWnRBFGHBFwXXKGJXNJBXNZJXDTTXSHSXSVRXSlHXCJDXGQJXEhXXYQJXYbRXOfXXeNcXVJFXhQJXhEJXdTRXjdXXMhBXcQTXRGBXTEBXTnQXFCXXFOFXFgFaBaFaBNJaBCJaBpBaBwXaNJKaNJDaQIBaDpRaEPDaHMFamDJalEJaMZJaFaFaFNBaFQJaFLDaFVHKBCYKBEBKBHDKXaFKXGdKXEJKXpHKXIBKXZDKXwXKKwLKNacKNYJKNJoKNWcKDGdKDTRKChXKGaRKGhBKGbRKEBTKEaRKEPTKLMDKLWRKOHDKVJcKdBcKlIBKlOPKFSBKFEPKFpFNBNJNJBQNBGHNBEPNBHXNBgFNBVXNBZDNBsXNBwXNNaRNNJDNNJENNJkNDCJNDVDNGJRNJiDNZJNNsCJNJFNNFSBNFCXNFEPNFLXNFIFQJBFQCaRQJEQQLJDQLJFQIaRQOqXQHaFQHHQQVJXQVJDQhNJQmEIQZJFQsJXQJrFQWbRDJABDBYJDXNFDXCXDXLXDXZDDXsJDQqXDSJFDJCXDEPkDEqXDYmQDpSJDOCkDOGQDHEIDVJDDuDuDWEBDJFgSBNDSBSFSBGHSBIBSBTQSKVYSJQNSJQiSJCXSEqXSJYVSIiJSOMYSHAHSHaQSeCFSepQSegBSHdHSHrFShSJSJuHSJUFSkNRSrSrSWEBSFaHSJFQSFCXSFGDSFYXSFODSFgBSFVXSFhBSFxFSFkFSFbBSFMFCADdCJXBCXaFCXKFCXNFCXCXCXGBCXEJCXYBCXLDCXIBCXOPCXHXCXgBCXhBCXiBCXlDCXcHCJNBCJNFCDCJCDGBCDVXCDhBCDiDCDJdCCmNCpJFCIaRCOqXCHCHCHZJCViJCuCuCmddCJiFCdNBCdHhClEJCnUJCreSCWlgCWTRCFBFCFNBCFYBCFVFCFhFCFdSCFTBCFWDGBNBGBQFGJBCGBEqGBpBGBgQGNBEGNJYGNkOGNJRGDUFGJpQGHaBGJeNGJeEGVBlGVKjGiJDGvJHGsVJGkEBGMIJGWjNGFBFGFCXGFGBGFYXGFpBGFMFEASJEAWpEJNFECJVEIXSEIQJEOqXEOcFEeNcEHEJEHlFEJgFEhlmEmDJEmZJEiMBEUqXEoSREPBFEPXFEPKFEPSFEPEFEPpFEPLXEPIBEJPdEPcFEPTBEJnXEqlHEMpREFCXEFODEFcFYASJYJAFYBaBYBVXYXpFYDhBYCJBYJGFYYbRYeNcYJeVYiIJYZJcYvJgYvJRYJsXYsJFYMYMYreVpBNHpBEJpBwXpQxFpYEJpeNDpJeDpeSFpeCHpHUJpHbBpHcHpmUJpiiJpUJrpsJuplITpFaBpFQqpFGBpFEfpFYBpFpBpFLJpFIDpFgBpFVXpFyQpFuFpFlFpFjDpFnXpFwXpJFMpFTBLXCJLXEFLXhFLXUJLXbFLalmLNJBLSJQLCLCLGJBLLDJLHaFLeNFLeSHLeCXLepFLhaRLZsJLsJDLsJrLocaLlLlLMdbLFNBLFSBLFEHLFkFIBBFIBXFIBaQIBKXIBSFIBpHIBLXIBgBIBhBIBuHIBmXIBiFIBZXIBvFIBbFIBjQIBwXIBWFIKTRIQUJIDGFICjQIYSRIINXIJeCIVaRImEkIZJFIvJRIsJXIdCJIJoRIbBQIjYBIcqXITFVIreVIFKFIFSFIFCJIFGFIFLDIFIBIJFOIFgBIFVXIJFhIFxFIFmXIFdHIFbBIJFrIJFWOBGBOQfXOOKjOUqXOfXBOqXEOcqXORVJOFIBOFlDHBIOHXiFHNTRHCJXHIaRHHJDHHEJHVbRHZJYHbIBHRsJHRkDHWlmgBKFgBSBgBCDgBGHgBpBgBIBgBVJgBuBgBvFgKDTgQVXgDUJgGSJgOqXgmUMgZIJgTUJgWIEgFBFgFNBgFDJgFSFgFGBgFYXgJFOgFgQgFVXgFhBgFbHgJFWVJABVQKcVDgFVOfXVeDFVhaRVmGdViJYVMaRVFNHhBNDhBCXhBEqhBpFhBLXhNJBhSJRheVXhhKEhxlmhZIJhdBQhkIJhbMNhMUJhMZJxNJgxQUJxDEkxDdFxSJRxplmxeSBxeCXxeGFxeYXxepQxegBxWVcxFEQxFLXxFIBxFgBxFxDxFZtxFdcxFbBxFwXyDJXyDlcuASJuDJpuDIBuCpJuGSJuIJFueEFuZIJusJXudWEuoIBuWGJuFBcuFKEuFNFuFQFuFDJuFGJuFVJuFUtuFdHuFTBmBYJmNJYmQhkmLJDmLJomIdXmiJYmvJRmsJRmklmmMBymMuCmclmmcnQiJABiJBNiJBDiBSFiBCJiBEFiBYBiBpFiBLXiBTHiJNciDEfiCZJiECJiJEqiOkHiHKFieNDiHJQieQcieDHieSFieCXieGFieEFieIHiegFihUJixNoioNXiFaBiFKFiFNDiFEPiFYXitFOitFHiFgBiFVEiFmXiFitiFbBiFMFiFrFUCXQUIoQUIJcUHQJUeCEUHwXUUJDUUqXUdWcUcqXUrnQUFNDUFSHUFCFUFEfUFLXUtFOZBXOZXSBZXpFZXVXZEQJZEJkZpDJZOqXZeNHZeCDZUqXZFBQZFEHZFLXvBAFvBKFvBCXvBEPvBpHvBIDvBgFvBuHvQNJvFNFvFGBvFIBvJFcsXCDsXLXsXsXsXlFsXcHsQqXsJQFsEqXseIFsFEHsFjDdBxOdNpRdNJRdEJbdpJRdhZJdnSJdrjNdFNJdFQHdFhNkNJDkYaRkHNRkHSRkVbRkuMRkjSJkcqDoSJFoEiJoYZJoOfXohEBoMGQocqXbBAFbBXFbBaFbBNDbBGBbBLXbBTBbBWDbGJYbIJHbFQqbFpQlDgQlOrFlVJRjGEBjZJRnXvJnXbBnEfHnOPDngJRnxfXnUJWwXEJwNpJwDpBwEfXwrEBMDCJMDGHMDIJMLJDcQGDcQpHcqXccqNFcqCXcFCJRBSBRBGBRBEJRBpQTBNFTBQJTBpBTBVXTFABTFSBTFCFTFGBTFMDrXCJrXLDrDNJrEfHrFQJrFitWNjdWNTR", - // 6-kana words - "AKLJMANOPFASNJIAEJWXAYJNRAIIbRAIcdaAeEfDAgidRAdjNYAMYEJAMIbRAFNJBAFpJFBBIJYBDZJFBSiJhBGdEBBEJfXBEJqXBEJWRBpaUJBLXrXBIYJMBOcfXBeEfFBestXBjNJRBcDJOBFEqXXNvJRXDMBhXCJNYXOAWpXONJWXHDEBXeIaRXhYJDXZJSJXMDJOXcASJXFVJXaBQqXaBZJFasXdQaFSJQaFEfXaFpJHaFOqXKBNSRKXvJBKQJhXKEJQJKEJGFKINJBKIJjNKgJNSKVElmKVhEBKiJGFKlBgJKjnUJKwsJYKMFIJKFNJDKFIJFKFOfXNJBSFNJBCXNBpJFNJBvQNJBMBNJLJXNJOqXNJeCXNJeGFNdsJCNbTKFNwXUJQNFEPQDiJcQDMSJQSFpBQGMQJQJeOcQyCJEQUJEBQJFBrQFEJqDXDJFDJXpBDJXIMDGiJhDIJGRDJeYcDHrDJDVXgFDkAWpDkIgRDjDEqDMvJRDJFNFDJFIBSKclmSJQOFSJQVHSJQjDSJGJBSJGJFSECJoSHEJqSJHTBSJVJDSViJYSZJNBSJsJDSFSJFSFEfXSJFLXCBUJVCJXSBCJXpBCXVJXCJXsXCJXdFCJNJHCLIJgCHiJFCVNJMChCJhCUHEJCsJTRCJdYcCoQJCCFEfXCFIJgCFUJxCFstFGJBaQGJBIDGQJqXGYJNRGJHKFGeQqDGHEJFGJeLXGHIiJGHdBlGUJEBGkIJTGFQPDGJFEqEAGegEJIJBEJVJXEhQJTEiJNcEJZJFEJoEqEjDEqEPDsXEPGJBEPOqXEPeQFEfDiDEJfEFEfepQEfMiJEqXNBEqDIDEqeSFEqVJXEMvJRYXNJDYXEJHYKVJcYYJEBYJeEcYJUqXYFpJFYFstXpAZJMpBSJFpNBNFpeQPDpHLJDpHIJFpHgJFpeitFpHZJFpJFADpFSJFpJFCJpFOqXpFitBpJFZJLXIJFLIJgRLVNJWLVHJMLwNpJLFGJBLFLJDLFOqXLJFUJIBDJXIBGJBIJBYQIJBIBIBOqXIBcqDIEGJFILNJTIIJEBIOiJhIJeNBIJeIBIhiJIIWoTRIJFAHIJFpBIJFuHIFUtFIJFTHOSBYJOEcqXOHEJqOvBpFOkVJrObBVJOncqDOcNJkHhNJRHuHJuHdMhBgBUqXgBsJXgONJBgHNJDgHHJQgJeitgHsJXgJyNagyDJBgZJDrgsVJQgkEJNgkjSJgJFAHgFCJDgFZtMVJXNFVXQfXVJXDJVXoQJVQVJQVDEfXVDvJHVEqNFVeQfXVHpJFVHxfXVVJSRVVmaRVlIJOhCXVJhHjYkhxCJVhWVUJhWiJcxBNJIxeEqDxfXBFxcFEPxFSJFxFYJXyBDQJydaUJyFOPDuYCJYuLvJRuHLJXuZJLDuFOPDuFZJHuFcqXmKHJdmCQJcmOsVJiJAGFitLCFieOfXiestXiZJMEikNJQirXzFiFQqXiFIJFiFZJFiFvtFUHpJFUteIcUteOcUVCJkUhdHcUbEJEUJqXQUMNJhURjYkUFitFZDGJHZJIxDZJVJXZJFDJZJFpQvBNJBvBSJFvJxBrseQqDsVFVJdFLJDkEJNBkmNJYkFLJDoQJOPoGsJRoEAHBoEJfFbBQqDbBZJHbFVJXlFIJBjYIrXjeitcjjCEBjWMNBwXQfXwXOaFwDsJXwCJTRwrCZJMDNJQcDDJFcqDOPRYiJFTBsJXTQIJBTFEfXTFLJDrXEJFrEJXMrFZJFWEJdEWYTlm", - // 7-kana words - "ABCDEFACNJTRAMBDJdAcNJVXBLNJEBXSIdWRXErNJkXYDJMBXZJCJaXMNJaYKKVJKcKDEJqXKDcNJhKVJrNYKbgJVXKFVJSBNBYBwDNJeQfXNJeEqXNhGJWENJFiJRQlIJbEQJfXxDQqXcfXQFNDEJQFwXUJDYcnUJDJIBgQDIUJTRDJFEqDSJQSJFSJQIJFSOPeZtSJFZJHCJXQfXCTDEqFGJBSJFGJBOfXGJBcqXGJHNJDGJRLiJEJfXEqEJFEJPEFpBEJYJBZJFYBwXUJYiJMEBYJZJyTYTONJXpQMFXFpeGIDdpJFstXpJFcPDLBVSJRLHQJqXLJFZJFIJBNJDIJBUqXIBkFDJIJEJPTIYJGWRIJeQPDIJeEfHIJFsJXOqGDSFHXEJqXgJCsJCgGQJqXgdQYJEgFMFNBgJFcqDVJwXUJVJFZJchIgJCCxOEJqXxOwXUJyDJBVRuscisciJBiJBieUtqXiJFDJkiFsJXQUGEZJcUJFsJXZtXIrXZDZJDrZJFNJDZJFstXvJFQqXvJFCJEsJXQJqkhkNGBbDJdTRbYJMEBlDwXUJMEFiJFcfXNJDRcNJWMTBLJXC", - // 8-kana words - "BraFUtHBFSJFdbNBLJXVJQoYJNEBSJBEJfHSJHwXUJCJdAZJMGjaFVJXEJPNJBlEJfFiJFpFbFEJqIJBVJCrIBdHiJhOPFChvJVJZJNJWxGFNIFLueIBQJqUHEJfUFstOZJDrlXEASJRlXVJXSFwVJNJWD", - // 9-kana words - "QJEJNNJDQJEJIBSFQJEJxegBQJEJfHEPSJBmXEJFSJCDEJqXLXNJFQqXIcQsFNJFIFEJqXUJgFsJXIJBUJEJfHNFvJxEqXNJnXUJFQqD", - // 10-kana words - "IJBEJqXZJ" -]; -// Maps each character into its kana value (the index) -var mapping = "~~AzB~X~a~KN~Q~D~S~C~G~E~Y~p~L~I~O~eH~g~V~hxyumi~~U~~Z~~v~~s~~dkoblPjfnqwMcRTr~W~~~F~~~~~Jt"; -var wordlist = null; -function hex(word) { - return (0, bytes_1.hexlify)((0, strings_1.toUtf8Bytes)(word)); -} -var KiYoKu = "0xe3818de38284e3818f"; -var KyoKu = "0xe3818de38283e3818f"; -function loadWords(lang) { - if (wordlist !== null) { - return; - } - wordlist = []; - // Transforms for normalizing (sort is a not quite UTF-8) - var transform = {}; - // Delete the diacritic marks - transform[(0, strings_1.toUtf8String)([227, 130, 154])] = false; - transform[(0, strings_1.toUtf8String)([227, 130, 153])] = false; - // Some simple transforms that sort out most of the order - transform[(0, strings_1.toUtf8String)([227, 130, 133])] = (0, strings_1.toUtf8String)([227, 130, 134]); - transform[(0, strings_1.toUtf8String)([227, 129, 163])] = (0, strings_1.toUtf8String)([227, 129, 164]); - transform[(0, strings_1.toUtf8String)([227, 130, 131])] = (0, strings_1.toUtf8String)([227, 130, 132]); - transform[(0, strings_1.toUtf8String)([227, 130, 135])] = (0, strings_1.toUtf8String)([227, 130, 136]); - // Normalize words using the transform - function normalize(word) { - var result = ""; - for (var i = 0; i < word.length; i++) { - var kana = word[i]; - var target = transform[kana]; - if (target === false) { - continue; - } - if (target) { - kana = target; - } - result += kana; - } - return result; - } - // Sort how the Japanese list is sorted - function sortJapanese(a, b) { - a = normalize(a); - b = normalize(b); - if (a < b) { - return -1; - } - if (a > b) { - return 1; - } - return 0; - } - // Load all the words - for (var length_1 = 3; length_1 <= 9; length_1++) { - var d = data[length_1 - 3]; - for (var offset = 0; offset < d.length; offset += length_1) { - var word = []; - for (var i = 0; i < length_1; i++) { - var k = mapping.indexOf(d[offset + i]); - word.push(227); - word.push((k & 0x40) ? 130 : 129); - word.push((k & 0x3f) + 128); - } - wordlist.push((0, strings_1.toUtf8String)(word)); - } - } - wordlist.sort(sortJapanese); - // For some reason kyoku and kiyoku are flipped in node (!!). - // The order SHOULD be: - // - kyoku - // - kiyoku - // This should ignore "if", but that doesn't work here?? - /* istanbul ignore next */ - if (hex(wordlist[442]) === KiYoKu && hex(wordlist[443]) === KyoKu) { - var tmp = wordlist[442]; - wordlist[442] = wordlist[443]; - wordlist[443] = tmp; - } - // Verify the computed list matches the official list - /* istanbul ignore if */ - if (wordlist_1.Wordlist.check(lang) !== "0xcb36b09e6baa935787fd762ce65e80b0c6a8dabdfbc3a7f86ac0e2c4fd111600") { - wordlist = null; - throw new Error("BIP39 Wordlist for ja (Japanese) FAILED"); - } -} -var LangJa = /** @class */ (function (_super) { - __extends(LangJa, _super); - function LangJa() { - return _super.call(this, "ja") || this; - } - LangJa.prototype.getWord = function (index) { - loadWords(this); - return wordlist[index]; - }; - LangJa.prototype.getWordIndex = function (word) { - loadWords(this); - return wordlist.indexOf(word); - }; - LangJa.prototype.split = function (mnemonic) { - wordlist_1.logger.checkNormalize(); - return mnemonic.split(/(?:\u3000| )+/g); - }; - LangJa.prototype.join = function (words) { - return words.join("\u3000"); - }; - return LangJa; -}(wordlist_1.Wordlist)); -var langJa = new LangJa(); -exports.langJa = langJa; -wordlist_1.Wordlist.register(langJa); -//# sourceMappingURL=lang-ja.js.map - -/***/ }), - -/***/ 98589: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.langKo = void 0; -var strings_1 = __nccwpck_require__(13859); -var wordlist_1 = __nccwpck_require__(18210); -var data = [ - "OYAa", - "ATAZoATBl3ATCTrATCl8ATDloATGg3ATHT8ATJT8ATJl3ATLlvATLn4ATMT8ATMX8ATMboATMgoAToLbAToMTATrHgATvHnAT3AnAT3JbAT3MTAT8DbAT8JTAT8LmAT8MYAT8MbAT#LnAUHT8AUHZvAUJXrAUJX8AULnrAXJnvAXLUoAXLgvAXMn6AXRg3AXrMbAX3JTAX3QbAYLn3AZLgvAZrSUAZvAcAZ8AaAZ8AbAZ8AnAZ8HnAZ8LgAZ8MYAZ8MgAZ8OnAaAboAaDTrAaFTrAaJTrAaJboAaLVoAaMXvAaOl8AaSeoAbAUoAbAg8AbAl4AbGnrAbMT8AbMXrAbMn4AbQb8AbSV8AbvRlAb8AUAb8AnAb8HgAb8JTAb8NTAb8RbAcGboAcLnvAcMT8AcMX8AcSToAcrAaAcrFnAc8AbAc8MgAfGgrAfHboAfJnvAfLV8AfLkoAfMT8AfMnoAfQb8AfScrAfSgrAgAZ8AgFl3AgGX8AgHZvAgHgrAgJXoAgJX8AgJboAgLZoAgLn4AgOX8AgoATAgoAnAgoCUAgoJgAgoLXAgoMYAgoSeAgrDUAgrJTAhrFnAhrLjAhrQgAjAgoAjJnrAkMX8AkOnoAlCTvAlCV8AlClvAlFg4AlFl6AlFn3AloSnAlrAXAlrAfAlrFUAlrFbAlrGgAlrOXAlvKnAlvMTAl3AbAl3MnAnATrAnAcrAnCZ3AnCl8AnDg8AnFboAnFl3AnHX4AnHbrAnHgrAnIl3AnJgvAnLXoAnLX4AnLbrAnLgrAnLhrAnMXoAnMgrAnOn3AnSbrAnSeoAnvLnAn3OnCTGgvCTSlvCTvAUCTvKnCTvNTCT3CZCT3GUCT3MTCT8HnCUCZrCULf8CULnvCU3HnCU3JUCY6NUCbDb8CbFZoCbLnrCboOTCboScCbrFnCbvLnCb8AgCb8HgCb$LnCkLfoClBn3CloDUDTHT8DTLl3DTSU8DTrAaDTrLXDTrLjDTrOYDTrOgDTvFXDTvFnDT3HUDT3LfDUCT9DUDT4DUFVoDUFV8DUFkoDUGgrDUJnrDULl8DUMT8DUMXrDUMX4DUMg8DUOUoDUOgvDUOg8DUSToDUSZ8DbDXoDbDgoDbGT8DbJn3DbLg3DbLn4DbMXrDbMg8DbOToDboJXGTClvGTDT8GTFZrGTLVoGTLlvGTLl3GTMg8GTOTvGTSlrGToCUGTrDgGTrJYGTrScGTtLnGTvAnGTvQgGUCZrGUDTvGUFZoGUHXrGULnvGUMT8GUoMgGXoLnGXrMXGXrMnGXvFnGYLnvGZOnvGZvOnGZ8LaGZ8LmGbAl3GbDYvGbDlrGbHX3GbJl4GbLV8GbLn3GbMn4GboJTGboRfGbvFUGb3GUGb4JnGgDX3GgFl$GgJlrGgLX6GgLZoGgLf8GgOXoGgrAgGgrJXGgrMYGgrScGgvATGgvOYGnAgoGnJgvGnLZoGnLg3GnLnrGnQn8GnSbrGnrMgHTClvHTDToHTFT3HTQT8HToJTHToJgHTrDUHTrMnHTvFYHTvRfHT8MnHT8SUHUAZ8HUBb4HUDTvHUoMYHXFl6HXJX6HXQlrHXrAUHXrMnHXrSbHXvFYHXvKXHX3LjHX3MeHYvQlHZrScHZvDbHbAcrHbFT3HbFl3HbJT8HbLTrHbMT8HbMXrHbMbrHbQb8HbSX3HboDbHboJTHbrFUHbrHgHbrJTHb8JTHb8MnHb8QgHgAlrHgDT3HgGgrHgHgrHgJTrHgJT8HgLX@HgLnrHgMT8HgMX8HgMboHgOnrHgQToHgRg3HgoHgHgrCbHgrFnHgrLVHgvAcHgvAfHnAloHnCTrHnCnvHnGTrHnGZ8HnGnvHnJT8HnLf8HnLkvHnMg8HnRTrITvFUITvFnJTAXrJTCV8JTFT3JTFT8JTFn4JTGgvJTHT8JTJT8JTJXvJTJl3JTJnvJTLX4JTLf8JTLhvJTMT8JTMXrJTMnrJTObrJTQT8JTSlvJT8DUJT8FkJT8MTJT8OXJT8OgJT8QUJT8RfJUHZoJXFT4JXFlrJXGZ8JXGnrJXLV8JXLgvJXMXoJXMX3JXNboJXPlvJXoJTJXoLkJXrAXJXrHUJXrJgJXvJTJXvOnJX4KnJYAl3JYJT8JYLhvJYQToJYrQXJY6NUJbAl3JbCZrJbDloJbGT8JbGgrJbJXvJbJboJbLf8JbLhrJbLl3JbMnvJbRg8JbSZ8JboDbJbrCZJbrSUJb3KnJb8LnJfRn8JgAXrJgCZrJgDTrJgGZrJgGZ8JgHToJgJT8JgJXoJgJgvJgLX4JgLZ3JgLZ8JgLn4JgMgrJgMn4JgOgvJgPX6JgRnvJgSToJgoCZJgoJbJgoMYJgrJXJgrJgJgrLjJg6MTJlCn3JlGgvJlJl8Jl4AnJl8FnJl8HgJnAToJnATrJnAbvJnDUoJnGnrJnJXrJnJXvJnLhvJnLnrJnLnvJnMToJnMT8JnMXvJnMX3JnMg8JnMlrJnMn4JnOX8JnST4JnSX3JnoAgJnoAnJnoJTJnoObJnrAbJnrAkJnrHnJnrJTJnrJYJnrOYJnrScJnvCUJnvFaJnvJgJnvJnJnvOYJnvQUJnvRUJn3FnJn3JTKnFl3KnLT6LTDlvLTMnoLTOn3LTRl3LTSb4LTSlrLToAnLToJgLTrAULTrAcLTrCULTrHgLTrMgLT3JnLULnrLUMX8LUoJgLVATrLVDTrLVLb8LVoJgLV8MgLV8RTLXDg3LXFlrLXrCnLXrLXLX3GTLX4GgLX4OYLZAXrLZAcrLZAgrLZAhrLZDXyLZDlrLZFbrLZFl3LZJX6LZJX8LZLc8LZLnrLZSU8LZoJTLZoJnLZrAgLZrAnLZrJYLZrLULZrMgLZrSkLZvAnLZvGULZvJeLZvOTLZ3FZLZ4JXLZ8STLZ8ScLaAT3LaAl3LaHT8LaJTrLaJT8LaJXrLaJgvLaJl4LaLVoLaMXrLaMXvLaMX8LbClvLbFToLbHlrLbJn4LbLZ3LbLhvLbMXrLbMnoLbvSULcLnrLc8HnLc8MTLdrMnLeAgoLeOgvLeOn3LfAl3LfLnvLfMl3LfOX8Lf8AnLf8JXLf8LXLgJTrLgJXrLgJl8LgMX8LgRZrLhCToLhrAbLhrFULhrJXLhvJYLjHTrLjHX4LjJX8LjLhrLjSX3LjSZ4LkFX4LkGZ8LkGgvLkJTrLkMXoLkSToLkSU8LkSZ8LkoOYLl3FfLl3MgLmAZrLmCbrLmGgrLmHboLmJnoLmJn3LmLfoLmLhrLmSToLnAX6LnAb6LnCZ3LnCb3LnDTvLnDb8LnFl3LnGnrLnHZvLnHgvLnITvLnJT8LnJX8LnJlvLnLf8LnLg6LnLhvLnLnoLnMXrLnMg8LnQlvLnSbrLnrAgLnrAnLnrDbLnrFkLnrJdLnrMULnrOYLnrSTLnvAnLnvDULnvHgLnvOYLnvOnLn3GgLn4DULn4JTLn4JnMTAZoMTAloMTDb8MTFT8MTJnoMTJnrMTLZrMTLhrMTLkvMTMX8MTRTrMToATMTrDnMTrOnMT3JnMT4MnMT8FUMT8FaMT8FlMT8GTMT8GbMT8GnMT8HnMT8JTMT8JbMT8OTMUCl8MUJTrMUJU8MUMX8MURTrMUSToMXAX6MXAb6MXCZoMXFXrMXHXrMXLgvMXOgoMXrAUMXrAnMXrHgMXrJYMXrJnMXrMTMXrMgMXrOYMXrSZMXrSgMXvDUMXvOTMX3JgMX3OTMX4JnMX8DbMX8FnMX8HbMX8HgMX8HnMX8LbMX8MnMX8OnMYAb8MYGboMYHTvMYHX4MYLTrMYLnvMYMToMYOgvMYRg3MYSTrMbAToMbAXrMbAl3MbAn8MbGZ8MbJT8MbJXrMbMXvMbMX8MbMnoMbrMUMb8AfMb8FbMb8FkMcJXoMeLnrMgFl3MgGTvMgGXoMgGgrMgGnrMgHT8MgHZrMgJnoMgLnrMgLnvMgMT8MgQUoMgrHnMgvAnMg8HgMg8JYMg8LfMloJnMl8ATMl8AXMl8JYMnAToMnAT4MnAZ8MnAl3MnAl4MnCl8MnHT8MnHg8MnJnoMnLZoMnLhrMnMXoMnMX3MnMnrMnOgvMnrFbMnrFfMnrFnMnrNTMnvJXNTMl8OTCT3OTFV8OTFn3OTHZvOTJXrOTOl3OT3ATOT3JUOT3LZOT3LeOT3MbOT8ATOT8AbOT8AgOT8MbOUCXvOUMX3OXHXvOXLl3OXrMUOXvDbOX6NUOX8JbOYFZoOYLbrOYLkoOYMg8OYSX3ObHTrObHT4ObJgrObLhrObMX3ObOX8Ob8FnOeAlrOeJT8OeJXrOeJnrOeLToOeMb8OgJXoOgLXoOgMnrOgOXrOgOloOgoAgOgoJbOgoMYOgoSTOg8AbOjLX4OjMnoOjSV8OnLVoOnrAgOn3DUPXQlrPXvFXPbvFTPdAT3PlFn3PnvFbQTLn4QToAgQToMTQULV8QURg8QUoJnQXCXvQbFbrQb8AaQb8AcQb8FbQb8MYQb8ScQeAlrQeLhrQjAn3QlFXoQloJgQloSnRTLnvRTrGURTrJTRUJZrRUoJlRUrQnRZrLmRZrMnRZrSnRZ8ATRZ8JbRZ8ScRbMT8RbST3RfGZrRfMX8RfMgrRfSZrRnAbrRnGT8RnvJgRnvLfRnvMTRn8AaSTClvSTJgrSTOXrSTRg3STRnvSToAcSToAfSToAnSToHnSToLjSToMTSTrAaSTrEUST3BYST8AgST8LmSUAZvSUAgrSUDT4SUDT8SUGgvSUJXoSUJXvSULTrSU8JTSU8LjSV8AnSV8JgSXFToSXLf8SYvAnSZrDUSZrMUSZrMnSZ8HgSZ8JTSZ8JgSZ8MYSZ8QUSaQUoSbCT3SbHToSbQYvSbSl4SboJnSbvFbSb8HbSb8JgSb8OTScGZrScHgrScJTvScMT8ScSToScoHbScrMTScvAnSeAZrSeAcrSeHboSeJUoSeLhrSeMT8SeMXrSe6JgSgHTrSkJnoSkLnvSk8CUSlFl3SlrSnSl8GnSmAboSmGT8SmJU8", - "ATLnDlATrAZoATrJX4ATrMT8ATrMX4ATrRTrATvDl8ATvJUoATvMl8AT3AToAT3MX8AT8CT3AT8DT8AT8HZrAT8HgoAUAgFnAUCTFnAXoMX8AXrAT8AXrGgvAXrJXvAXrOgoAXvLl3AZvAgoAZvFbrAZvJXoAZvJl8AZvJn3AZvMX8AZvSbrAZ8FZoAZ8LZ8AZ8MU8AZ8OTvAZ8SV8AZ8SX3AbAgFZAboJnoAbvGboAb8ATrAb8AZoAb8AgrAb8Al4Ab8Db8Ab8JnoAb8LX4Ab8LZrAb8LhrAb8MT8Ab8OUoAb8Qb8Ab8ST8AcrAUoAcrAc8AcrCZ3AcrFT3AcrFZrAcrJl4AcrJn3AcrMX3AcrOTvAc8AZ8Ac8MT8AfAcJXAgoFn4AgoGgvAgoGnrAgoLc8AgoMXoAgrLnrAkrSZ8AlFXCTAloHboAlrHbrAlrLhrAlrLkoAl3CZrAl3LUoAl3LZrAnrAl4AnrMT8An3HT4BT3IToBX4MnvBb!Ln$CTGXMnCToLZ4CTrHT8CT3JTrCT3RZrCT#GTvCU6GgvCU8Db8CU8GZrCU8HT8CboLl3CbrGgrCbrMU8Cb8DT3Cb8GnrCb8LX4Cb8MT8Cb8ObrCgrGgvCgrKX4Cl8FZoDTrAbvDTrDboDTrGT6DTrJgrDTrMX3DTrRZrDTrRg8DTvAVvDTvFZoDT3DT8DT3Ln3DT4HZrDT4MT8DT8AlrDT8MT8DUAkGbDUDbJnDYLnQlDbDUOYDbMTAnDbMXSnDboAT3DboFn4DboLnvDj6JTrGTCgFTGTGgFnGTJTMnGTLnPlGToJT8GTrCT3GTrLVoGTrLnvGTrMX3GTrMboGTvKl3GZClFnGZrDT3GZ8DTrGZ8FZ8GZ8MXvGZ8On8GZ8ST3GbCnQXGbMbFnGboFboGboJg3GboMXoGb3JTvGb3JboGb3Mn6Gb3Qb8GgDXLjGgMnAUGgrDloGgrHX4GgrSToGgvAXrGgvAZvGgvFbrGgvLl3GgvMnvGnDnLXGnrATrGnrMboGnuLl3HTATMnHTAgCnHTCTCTHTrGTvHTrHTvHTrJX8HTrLl8HTrMT8HTrMgoHTrOTrHTuOn3HTvAZrHTvDTvHTvGboHTvJU8HTvLl3HTvMXrHTvQb4HT4GT6HT4JT8HT4Jb#HT8Al3HT8GZrHT8GgrHT8HX4HT8Jb8HT8JnoHT8LTrHT8LgvHT8SToHT8SV8HUoJUoHUoJX8HUoLnrHXrLZoHXvAl3HX3LnrHX4FkvHX4LhrHX4MXoHX4OnoHZrAZ8HZrDb8HZrGZ8HZrJnrHZvGZ8HZvLnvHZ8JnvHZ8LhrHbCXJlHbMTAnHboJl4HbpLl3HbrJX8HbrLnrHbrMnvHbvRYrHgoSTrHgrFV8HgrGZ8HgrJXoHgrRnvHgvBb!HgvGTrHgvHX4HgvHn!HgvLTrHgvSU8HnDnLbHnFbJbHnvDn8Hn6GgvHn!BTvJTCTLnJTQgFnJTrAnvJTrLX4JTrOUoJTvFn3JTvLnrJTvNToJT3AgoJT3Jn4JT3LhvJT3ObrJT8AcrJT8Al3JT8JT8JT8JnoJT8LX4JT8LnrJT8MX3JT8Rg3JT8Sc8JUoBTvJU8AToJU8GZ8JU8GgvJU8JTrJU8JXrJU8JnrJU8LnvJU8ScvJXHnJlJXrGgvJXrJU8JXrLhrJXrMT8JXrMXrJXrQUoJXvCTvJXvGZ8JXvGgrJXvQT8JX8Ab8JX8DT8JX8GZ8JX8HZvJX8LnrJX8MT8JX8MXoJX8MnvJX8ST3JYGnCTJbAkGbJbCTAnJbLTAcJboDT3JboLb6JbrAnvJbrCn3JbrDl8JbrGboJbrIZoJbrJnvJbrMnvJbrQb4Jb8RZrJeAbAnJgJnFbJgScAnJgrATrJgvHZ8JgvMn4JlJlFbJlLiQXJlLjOnJlRbOlJlvNXoJlvRl3Jl4AcrJl8AUoJl8MnrJnFnMlJnHgGbJnoDT8JnoFV8JnoGgvJnoIT8JnoQToJnoRg3JnrCZ3JnrGgrJnrHTvJnrLf8JnrOX8JnvAT3JnvFZoJnvGT8JnvJl4JnvMT8JnvMX8JnvOXrJnvPX6JnvSX3JnvSZrJn3MT8Jn3MX8Jn3RTrLTATKnLTJnLTLTMXKnLTRTQlLToGb8LTrAZ8LTrCZ8LTrDb8LTrHT8LT3PX6LT4FZoLT$CTvLT$GgrLUvHX3LVoATrLVoAgoLVoJboLVoMX3LVoRg3LV8CZ3LV8FZoLV8GTvLXrDXoLXrFbrLXvAgvLXvFlrLXvLl3LXvRn6LX4Mb8LX8GT8LYCXMnLYrMnrLZoSTvLZrAZvLZrAloLZrFToLZrJXvLZrJboLZrJl4LZrLnrLZrMT8LZrOgvLZrRnvLZrST4LZvMX8LZvSlvLZ8AgoLZ8CT3LZ8JT8LZ8LV8LZ8LZoLZ8Lg8LZ8SV8LZ8SbrLZ$HT8LZ$Mn4La6CTvLbFbMnLbRYFTLbSnFZLboJT8LbrAT9LbrGb3LbrQb8LcrJX8LcrMXrLerHTvLerJbrLerNboLgrDb8LgrGZ8LgrHTrLgrMXrLgrSU8LgvJTrLgvLl3Lg6Ll3LhrLnrLhrMT8LhvAl4LiLnQXLkoAgrLkoJT8LkoJn4LlrSU8Ll3FZoLl3HTrLl3JX8Ll3JnoLl3LToLmLeFbLnDUFbLnLVAnLnrATrLnrAZoLnrAb8LnrAlrLnrGgvLnrJU8LnrLZrLnrLhrLnrMb8LnrOXrLnrSZ8LnvAb4LnvDTrLnvDl8LnvHTrLnvHbrLnvJT8LnvJU8LnvJbrLnvLhvLnvMX8LnvMb8LnvNnoLnvSU8Ln3Al3Ln4FZoLn4GT6Ln4JgvLn4LhrLn4MT8Ln4SToMToCZrMToJX8MToLX4MToLf8MToRg3MTrEloMTvGb6MT3BTrMT3Lb6MT8AcrMT8AgrMT8GZrMT8JnoMT8LnrMT8MX3MUOUAnMXAbFnMXoAloMXoJX8MXoLf8MXoLl8MXrAb8MXrDTvMXrGT8MXrGgrMXrHTrMXrLf8MXrMU8MXrOXvMXrQb8MXvGT8MXvHTrMXvLVoMX3AX3MX3Jn3MX3LhrMX3MX3MX4AlrMX4OboMX8GTvMX8GZrMX8GgrMX8JT8MX8JX8MX8LhrMX8MT8MYDUFbMYMgDbMbGnFfMbvLX4MbvLl3Mb8Mb8Mb8ST4MgGXCnMg8ATrMg8AgoMg8CZrMg8DTrMg8DboMg8HTrMg8JgrMg8LT8MloJXoMl8AhrMl8JT8MnLgAUMnoJXrMnoLX4MnoLhrMnoMT8MnrAl4MnrDb8MnrOTvMnrOgvMnrQb8MnrSU8MnvGgrMnvHZ8Mn3MToMn4DTrMn4LTrMn4Mg8NnBXAnOTFTFnOToAToOTrGgvOTrJX8OT3JXoOT6MTrOT8GgrOT8HTpOT8MToOUoHT8OUoJT8OUoLn3OXrAgoOXrDg8OXrMT8OXvSToOX6CTvOX8CZrOX8OgrOb6HgvOb8AToOb8MT8OcvLZ8OgvAlrOgvHTvOgvJTrOgvJnrOgvLZrOgvLn4OgvMT8OgvRTrOg8AZoOg8DbvOnrOXoOnvJn4OnvLhvOnvRTrOn3GgoOn3JnvOn6JbvOn8OTrPTGYFTPbBnFnPbGnDnPgDYQTPlrAnvPlrETvPlrLnvPlrMXvPlvFX4QTMTAnQTrJU8QYCnJlQYJlQlQbGTQbQb8JnrQb8LZoQb8LnvQb8MT8Qb8Ml8Qb8ST4QloAl4QloHZvQloJX8QloMn8QnJZOlRTrAZvRTrDTrRTvJn4RTvLhvRT4Jb8RZrAZrRZ8AkrRZ8JU8RZ8LV8RZ8LnvRbJlQXRg3GboRg3MnvRg8AZ8Rg8JboRg8Jl4RnLTCbRnvFl3RnvQb8SToAl4SToCZrSToFZoSToHXrSToJU8SToJgvSToJl4SToLhrSToMX3STrAlvSTrCT9STrCgrSTrGgrSTrHXrSTrHboSTrJnoSTrNboSTvLnrST4AZoST8Ab8ST8JT8SUoJn3SU6HZ#SU6JTvSU8Db8SU8HboSU8LgrSV8JT8SZrAcrSZrAl3SZrJT8SZrJnvSZrMT8SZvLUoSZ4FZoSZ8JnoSZ8RZrScoLnrScoMT8ScoMX8ScrAT4ScrAZ8ScrLZ8ScrLkvScvDb8ScvLf8ScvNToSgrFZrShvKnrSloHUoSloLnrSlrMXoSl8HgrSmrJUoSn3BX6", - "ATFlOn3ATLgrDYAT4MTAnAT8LTMnAYJnRTrAbGgJnrAbLV8LnAbvNTAnAeFbLg3AgOYMXoAlQbFboAnDboAfAnJgoJTBToDgAnBUJbAl3BboDUAnCTDlvLnCTFTrSnCYoQTLnDTwAbAnDUDTrSnDUHgHgrDX8LXFnDbJXAcrETvLTLnGTFTQbrGTMnGToGT3DUFbGUJlPX3GbQg8LnGboJbFnGb3GgAYGgAg8ScGgMbAXrGgvAbAnGnJTLnvGnvATFgHTDT6ATHTrDlJnHYLnMn8HZrSbJTHZ8LTFnHbFTJUoHgSeMT8HgrLjAnHgvAbAnHlFUrDlHnDgvAnHnHTFT3HnQTGnrJTAaMXvJTGbCn3JTOgrAnJXvAXMnJbMg8SnJbMnRg3Jb8LTMnJnAl3OnJnGYrQlJnJlQY3LTDlCn3LTJjLg3LTLgvFXLTMg3GTLV8HUOgLXFZLg3LXNXrMnLX8QXFnLX9AlMYLYLXPXrLZAbJU8LZDUJU8LZMXrSnLZ$AgFnLaPXrDULbFYrMnLbMn8LXLboJgJgLeFbLg3LgLZrSnLgOYAgoLhrRnJlLkCTrSnLkOnLhrLnFX%AYLnFZoJXLnHTvJbLnLloAbMTATLf8MTHgJn3MTMXrAXMT3MTFnMUITvFnMXFX%AYMXMXvFbMXrFTDbMYAcMX3MbLf8SnMb8JbFnMgMXrMTMgvAXFnMgvGgCmMnAloSnMnFnJTrOXvMXSnOX8HTMnObJT8ScObLZFl3ObMXCZoPTLgrQXPUFnoQXPU3RXJlPX3RkQXPbrJXQlPlrJbFnQUAhrDbQXGnCXvQYLnHlvQbLfLnvRTOgvJbRXJYrQlRYLnrQlRbLnrQlRlFT8JlRlFnrQXSTClCn3STHTrAnSTLZQlrSTMnGTrSToHgGbSTrGTDnSTvGXCnST3HgFbSU3HXAXSbAnJn3SbFT8LnScLfLnv", - "AT3JgJX8AT8FZoSnAT8JgFV8AT8LhrDbAZ8JT8DbAb8GgLhrAb8SkLnvAe8MT8SnAlMYJXLVAl3GYDTvAl3LfLnvBUDTvLl3CTOn3HTrCT3DUGgrCU8MT8AbCbFTrJUoCgrDb8MTDTLV8JX8DTLnLXQlDT8LZrSnDUQb8FZ8DUST4JnvDb8ScOUoDj6GbJl4GTLfCYMlGToAXvFnGboAXvLnGgAcrJn3GgvFnSToGnLf8JnvGn#HTDToHTLnFXJlHTvATFToHTvHTDToHTvMTAgoHT3STClvHT4AlFl6HT8HTDToHUoDgJTrHUoScMX3HbRZrMXoHboJg8LTHgDb8JTrHgMToLf8HgvLnLnoHnHn3HT4Hn6MgvAnJTJU8ScvJT3AaQT8JT8HTrAnJXrRg8AnJbAloMXoJbrATFToJbvMnoSnJgDb6GgvJgDb8MXoJgSX3JU8JguATFToJlPYLnQlJlQkDnLbJlQlFYJlJl8Lf8OTJnCTFnLbJnLTHXMnJnLXGXCnJnoFfRg3JnrMYRg3Jn3HgFl3KT8Dg8LnLTRlFnPTLTvPbLbvLVoSbrCZLXMY6HT3LXNU7DlrLXNXDTATLX8DX8LnLZDb8JU8LZMnoLhrLZSToJU8LZrLaLnrLZvJn3SnLZ8LhrSnLaJnoMT8LbFlrHTvLbrFTLnrLbvATLlvLb6OTFn3LcLnJZOlLeAT6Mn4LeJT3ObrLg6LXFlrLhrJg8LnLhvDlPX4LhvLfLnvLj6JTFT3LnFbrMXoLnQluCTvLnrQXCY6LnvLfLnvLnvMgLnvLnvSeLf8MTMbrJn3MT3JgST3MT8AnATrMT8LULnrMUMToCZrMUScvLf8MXoDT8SnMX6ATFToMX8AXMT8MX8FkMT8MX8HTrDUMX8ScoSnMYJT6CTvMgAcrMXoMg8SToAfMlvAXLg3MnFl3AnvOT3AnFl3OUoATHT8OU3RnLXrOXrOXrSnObPbvFn6Og8HgrSnOg8OX8DbPTvAgoJgPU3RYLnrPXrDnJZrPb8CTGgvPlrLTDlvPlvFUJnoQUvFXrQlQeMnoAl3QlrQlrSnRTFTrJUoSTDlLiLXSTFg6HT3STJgoMn4STrFTJTrSTrLZFl3ST4FnMXoSUrDlHUoScvHTvSnSfLkvMXo", - "AUoAcrMXoAZ8HboAg8AbOg6ATFgAg8AloMXoAl3AT8JTrAl8MX8MXoCT3SToJU8Cl8Db8MXoDT8HgrATrDboOT8MXoGTOTrATMnGT8LhrAZ8GnvFnGnQXHToGgvAcrHTvAXvLl3HbrAZoMXoHgBlFXLg3HgMnFXrSnHgrSb8JUoHn6HT8LgvITvATrJUoJUoLZrRnvJU8HT8Jb8JXvFX8QT8JXvLToJTrJYrQnGnQXJgrJnoATrJnoJU8ScvJnvMnvMXoLTCTLgrJXLTJlRTvQlLbRnJlQYvLbrMb8LnvLbvFn3RnoLdCVSTGZrLeSTvGXCnLg3MnoLn3MToLlrETvMT8SToAl3MbrDU6GTvMb8LX4LhrPlrLXGXCnSToLf8Rg3STrDb8LTrSTvLTHXMnSb3RYLnMnSgOg6ATFg", - "HUDlGnrQXrJTrHgLnrAcJYMb8DULc8LTvFgGnCk3Mg8JbAnLX4QYvFYHnMXrRUoJnGnvFnRlvFTJlQnoSTrBXHXrLYSUJgLfoMT8Se8DTrHbDb", - "AbDl8SToJU8An3RbAb8ST8DUSTrGnrAgoLbFU6Db8LTrMg8AaHT8Jb8ObDl8SToJU8Pb3RlvFYoJl" -]; -var codes = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*"; -function getHangul(code) { - if (code >= 40) { - code = code + 168 - 40; - } - else if (code >= 19) { - code = code + 97 - 19; - } - return (0, strings_1.toUtf8String)([225, (code >> 6) + 132, (code & 0x3f) + 128]); -} -var wordlist = null; -function loadWords(lang) { - if (wordlist != null) { - return; - } - wordlist = []; - data.forEach(function (data, length) { - length += 4; - for (var i = 0; i < data.length; i += length) { - var word = ""; - for (var j = 0; j < length; j++) { - word += getHangul(codes.indexOf(data[i + j])); - } - wordlist.push(word); - } - }); - wordlist.sort(); - // Verify the computed list matches the official list - /* istanbul ignore if */ - if (wordlist_1.Wordlist.check(lang) !== "0xf9eddeace9c5d3da9c93cf7d3cd38f6a13ed3affb933259ae865714e8a3ae71a") { - wordlist = null; - throw new Error("BIP39 Wordlist for ko (Korean) FAILED"); - } -} -var LangKo = /** @class */ (function (_super) { - __extends(LangKo, _super); - function LangKo() { - return _super.call(this, "ko") || this; - } - LangKo.prototype.getWord = function (index) { - loadWords(this); - return wordlist[index]; - }; - LangKo.prototype.getWordIndex = function (word) { - loadWords(this); - return wordlist.indexOf(word); - }; - return LangKo; -}(wordlist_1.Wordlist)); -var langKo = new LangKo(); -exports.langKo = langKo; -wordlist_1.Wordlist.register(langKo); -//# sourceMappingURL=lang-ko.js.map - -/***/ }), - -/***/ 24829: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __extends = (this && this.__extends) || (function () { - var extendStatics = function (d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - return function (d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; -})(); -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.langZhTw = exports.langZhCn = void 0; -var strings_1 = __nccwpck_require__(13859); -var wordlist_1 = __nccwpck_require__(18210); -var data = "}aE#4A=Yv&co#4N#6G=cJ&SM#66|/Z#4t&kn~46#4K~4q%b9=IR#7l,mB#7W_X2*dl}Uo~7s}Uf&Iw#9c&cw~6O&H6&wx&IG%v5=IQ~8a&Pv#47$PR&50%Ko&QM&3l#5f,D9#4L|/H&tQ;v0~6n]nN> 2), - 128 + codes.indexOf(data[i * 3 + 1]), - 128 + codes.indexOf(data[i * 3 + 2]), - ]; - if (lang.locale === "zh_tw") { - var common = s % 4; - for (var i_1 = common; i_1 < 3; i_1++) { - bytes[i_1] = codes.indexOf(deltaData[deltaOffset++]) + ((i_1 == 0) ? 228 : 128); - } - } - wordlist[lang.locale].push((0, strings_1.toUtf8String)(bytes)); - } - // Verify the computed list matches the official list - /* istanbul ignore if */ - if (wordlist_1.Wordlist.check(lang) !== Checks[lang.locale]) { - wordlist[lang.locale] = null; - throw new Error("BIP39 Wordlist for " + lang.locale + " (Chinese) FAILED"); - } -} -var LangZh = /** @class */ (function (_super) { - __extends(LangZh, _super); - function LangZh(country) { - return _super.call(this, "zh_" + country) || this; - } - LangZh.prototype.getWord = function (index) { - loadWords(this); - return wordlist[this.locale][index]; - }; - LangZh.prototype.getWordIndex = function (word) { - loadWords(this); - return wordlist[this.locale].indexOf(word); - }; - LangZh.prototype.split = function (mnemonic) { - mnemonic = mnemonic.replace(/(?:\u3000| )+/g, ""); - return mnemonic.split(""); - }; - return LangZh; -}(wordlist_1.Wordlist)); -var langZhCn = new LangZh("cn"); -exports.langZhCn = langZhCn; -wordlist_1.Wordlist.register(langZhCn); -wordlist_1.Wordlist.register(langZhCn, "zh"); -var langZhTw = new LangZh("tw"); -exports.langZhTw = langZhTw; -wordlist_1.Wordlist.register(langZhTw); -//# sourceMappingURL=lang-zh.js.map - -/***/ }), - -/***/ 18210: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Wordlist = exports.logger = void 0; -// This gets overridden by rollup -var exportWordlist = false; -var hash_1 = __nccwpck_require__(91839); -var properties_1 = __nccwpck_require__(61338); -var logger_1 = __nccwpck_require__(76127); -var _version_1 = __nccwpck_require__(17141); -exports.logger = new logger_1.Logger(_version_1.version); -var Wordlist = /** @class */ (function () { - function Wordlist(locale) { - var _newTarget = this.constructor; - exports.logger.checkAbstract(_newTarget, Wordlist); - (0, properties_1.defineReadOnly)(this, "locale", locale); - } - // Subclasses may override this - Wordlist.prototype.split = function (mnemonic) { - return mnemonic.toLowerCase().split(/ +/g); - }; - // Subclasses may override this - Wordlist.prototype.join = function (words) { - return words.join(" "); - }; - Wordlist.check = function (wordlist) { - var words = []; - for (var i = 0; i < 2048; i++) { - var word = wordlist.getWord(i); - /* istanbul ignore if */ - if (i !== wordlist.getWordIndex(word)) { - return "0x"; - } - words.push(word); - } - return (0, hash_1.id)(words.join("\n") + "\n"); - }; - Wordlist.register = function (lang, name) { - if (!name) { - name = lang.locale; - } - /* istanbul ignore if */ - if (exportWordlist) { - try { - var anyGlobal = window; - if (anyGlobal._ethers && anyGlobal._ethers.wordlists) { - if (!anyGlobal._ethers.wordlists[name]) { - (0, properties_1.defineReadOnly)(anyGlobal._ethers.wordlists, name, lang); - } - } - } - catch (error) { } - } - }; - return Wordlist; -}()); -exports.Wordlist = Wordlist; -//# sourceMappingURL=wordlist.js.map - -/***/ }), - -/***/ 1057: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.wordlists = void 0; -var lang_cz_1 = __nccwpck_require__(53994); -var lang_en_1 = __nccwpck_require__(73120); -var lang_es_1 = __nccwpck_require__(78091); -var lang_fr_1 = __nccwpck_require__(58079); -var lang_ja_1 = __nccwpck_require__(53670); -var lang_ko_1 = __nccwpck_require__(98589); -var lang_it_1 = __nccwpck_require__(87054); -var lang_zh_1 = __nccwpck_require__(24829); -exports.wordlists = { - cz: lang_cz_1.langCz, - en: lang_en_1.langEn, - es: lang_es_1.langEs, - fr: lang_fr_1.langFr, - it: lang_it_1.langIt, - ja: lang_ja_1.langJa, - ko: lang_ko_1.langKo, - zh: lang_zh_1.langZhCn, - zh_cn: lang_zh_1.langZhCn, - zh_tw: lang_zh_1.langZhTw -}; -//# sourceMappingURL=wordlists.js.map - -/***/ }), - -/***/ 77864: -/***/ ((module) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// pkg/dist-src/index.js -var dist_src_exports = {}; -__export(dist_src_exports, { - createTokenAuth: () => createTokenAuth -}); -module.exports = __toCommonJS(dist_src_exports); - -// pkg/dist-src/auth.js -var REGEX_IS_INSTALLATION_LEGACY = /^v1\./; -var REGEX_IS_INSTALLATION = /^ghs_/; -var REGEX_IS_USER_TO_SERVER = /^ghu_/; -async function auth(token) { - const isApp = token.split(/\./).length === 3; - const isInstallation = REGEX_IS_INSTALLATION_LEGACY.test(token) || REGEX_IS_INSTALLATION.test(token); - const isUserToServer = REGEX_IS_USER_TO_SERVER.test(token); - const tokenType = isApp ? "app" : isInstallation ? "installation" : isUserToServer ? "user-to-server" : "oauth"; - return { - type: "token", - token, - tokenType - }; -} - -// pkg/dist-src/with-authorization-prefix.js -function withAuthorizationPrefix(token) { - if (token.split(/\./).length === 3) { - return `bearer ${token}`; - } - return `token ${token}`; -} - -// pkg/dist-src/hook.js -async function hook(token, request, route, parameters) { - const endpoint = request.endpoint.merge( - route, - parameters - ); - endpoint.headers.authorization = withAuthorizationPrefix(token); - return request(endpoint); -} - -// pkg/dist-src/index.js -var createTokenAuth = function createTokenAuth2(token) { - if (!token) { - throw new Error("[@octokit/auth-token] No token passed to createTokenAuth"); - } - if (typeof token !== "string") { - throw new Error( - "[@octokit/auth-token] Token passed to createTokenAuth is not a string" - ); - } - token = token.replace(/^(token|bearer) +/i, ""); - return Object.assign(auth.bind(null, token), { - hook: hook.bind(null, token) - }); -}; -// Annotate the CommonJS export names for ESM import in node: -0 && (0); - - -/***/ }), - -/***/ 61897: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// pkg/dist-src/index.js -var dist_src_exports = {}; -__export(dist_src_exports, { - Octokit: () => Octokit -}); -module.exports = __toCommonJS(dist_src_exports); -var import_universal_user_agent = __nccwpck_require__(33843); -var import_before_after_hook = __nccwpck_require__(52732); -var import_request = __nccwpck_require__(66255); -var import_graphql = __nccwpck_require__(70007); -var import_auth_token = __nccwpck_require__(77864); - -// pkg/dist-src/version.js -var VERSION = "5.2.0"; - -// pkg/dist-src/index.js -var noop = () => { -}; -var consoleWarn = console.warn.bind(console); -var consoleError = console.error.bind(console); -var userAgentTrail = `octokit-core.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`; -var Octokit = class { - static { - this.VERSION = VERSION; - } - static defaults(defaults) { - const OctokitWithDefaults = class extends this { - constructor(...args) { - const options = args[0] || {}; - if (typeof defaults === "function") { - super(defaults(options)); - return; - } - super( - Object.assign( - {}, - defaults, - options, - options.userAgent && defaults.userAgent ? { - userAgent: `${options.userAgent} ${defaults.userAgent}` - } : null - ) - ); - } - }; - return OctokitWithDefaults; - } - static { - this.plugins = []; - } - /** - * Attach a plugin (or many) to your Octokit instance. - * - * @example - * const API = Octokit.plugin(plugin1, plugin2, plugin3, ...) - */ - static plugin(...newPlugins) { - const currentPlugins = this.plugins; - const NewOctokit = class extends this { - static { - this.plugins = currentPlugins.concat( - newPlugins.filter((plugin) => !currentPlugins.includes(plugin)) - ); - } - }; - return NewOctokit; - } - constructor(options = {}) { - const hook = new import_before_after_hook.Collection(); - const requestDefaults = { - baseUrl: import_request.request.endpoint.DEFAULTS.baseUrl, - headers: {}, - request: Object.assign({}, options.request, { - // @ts-ignore internal usage only, no need to type - hook: hook.bind(null, "request") - }), - mediaType: { - previews: [], - format: "" - } - }; - requestDefaults.headers["user-agent"] = options.userAgent ? `${options.userAgent} ${userAgentTrail}` : userAgentTrail; - if (options.baseUrl) { - requestDefaults.baseUrl = options.baseUrl; - } - if (options.previews) { - requestDefaults.mediaType.previews = options.previews; - } - if (options.timeZone) { - requestDefaults.headers["time-zone"] = options.timeZone; - } - this.request = import_request.request.defaults(requestDefaults); - this.graphql = (0, import_graphql.withCustomRequest)(this.request).defaults(requestDefaults); - this.log = Object.assign( - { - debug: noop, - info: noop, - warn: consoleWarn, - error: consoleError - }, - options.log - ); - this.hook = hook; - if (!options.authStrategy) { - if (!options.auth) { - this.auth = async () => ({ - type: "unauthenticated" - }); - } else { - const auth = (0, import_auth_token.createTokenAuth)(options.auth); - hook.wrap("request", auth.hook); - this.auth = auth; - } - } else { - const { authStrategy, ...otherOptions } = options; - const auth = authStrategy( - Object.assign( - { - request: this.request, - log: this.log, - // we pass the current octokit instance as well as its constructor options - // to allow for authentication strategies that return a new octokit instance - // that shares the same internal state as the current one. The original - // requirement for this was the "event-octokit" authentication strategy - // of https://github.com/probot/octokit-auth-probot. - octokit: this, - octokitOptions: otherOptions - }, - options.auth - ) - ); - hook.wrap("request", auth.hook); - this.auth = auth; - } - const classConstructor = this.constructor; - for (let i = 0; i < classConstructor.plugins.length; ++i) { - Object.assign(this, classConstructor.plugins[i](this, options)); - } - } -}; -// Annotate the CommonJS export names for ESM import in node: -0 && (0); - - -/***/ }), - -/***/ 54471: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// pkg/dist-src/index.js -var dist_src_exports = {}; -__export(dist_src_exports, { - endpoint: () => endpoint -}); -module.exports = __toCommonJS(dist_src_exports); - -// pkg/dist-src/defaults.js -var import_universal_user_agent = __nccwpck_require__(33843); - -// pkg/dist-src/version.js -var VERSION = "9.0.5"; - -// pkg/dist-src/defaults.js -var userAgent = `octokit-endpoint.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`; -var DEFAULTS = { - method: "GET", - baseUrl: "https://api.github.com", - headers: { - accept: "application/vnd.github.v3+json", - "user-agent": userAgent - }, - mediaType: { - format: "" - } -}; - -// pkg/dist-src/util/lowercase-keys.js -function lowercaseKeys(object) { - if (!object) { - return {}; - } - return Object.keys(object).reduce((newObj, key) => { - newObj[key.toLowerCase()] = object[key]; - return newObj; - }, {}); -} - -// pkg/dist-src/util/is-plain-object.js -function isPlainObject(value) { - if (typeof value !== "object" || value === null) - return false; - if (Object.prototype.toString.call(value) !== "[object Object]") - return false; - const proto = Object.getPrototypeOf(value); - if (proto === null) - return true; - const Ctor = Object.prototype.hasOwnProperty.call(proto, "constructor") && proto.constructor; - return typeof Ctor === "function" && Ctor instanceof Ctor && Function.prototype.call(Ctor) === Function.prototype.call(value); -} - -// pkg/dist-src/util/merge-deep.js -function mergeDeep(defaults, options) { - const result = Object.assign({}, defaults); - Object.keys(options).forEach((key) => { - if (isPlainObject(options[key])) { - if (!(key in defaults)) - Object.assign(result, { [key]: options[key] }); - else - result[key] = mergeDeep(defaults[key], options[key]); - } else { - Object.assign(result, { [key]: options[key] }); - } - }); - return result; -} - -// pkg/dist-src/util/remove-undefined-properties.js -function removeUndefinedProperties(obj) { - for (const key in obj) { - if (obj[key] === void 0) { - delete obj[key]; - } - } - return obj; -} - -// pkg/dist-src/merge.js -function merge(defaults, route, options) { - if (typeof route === "string") { - let [method, url] = route.split(" "); - options = Object.assign(url ? { method, url } : { url: method }, options); - } else { - options = Object.assign({}, route); - } - options.headers = lowercaseKeys(options.headers); - removeUndefinedProperties(options); - removeUndefinedProperties(options.headers); - const mergedOptions = mergeDeep(defaults || {}, options); - if (options.url === "/graphql") { - if (defaults && defaults.mediaType.previews?.length) { - mergedOptions.mediaType.previews = defaults.mediaType.previews.filter( - (preview) => !mergedOptions.mediaType.previews.includes(preview) - ).concat(mergedOptions.mediaType.previews); - } - mergedOptions.mediaType.previews = (mergedOptions.mediaType.previews || []).map((preview) => preview.replace(/-preview/, "")); - } - return mergedOptions; -} - -// pkg/dist-src/util/add-query-parameters.js -function addQueryParameters(url, parameters) { - const separator = /\?/.test(url) ? "&" : "?"; - const names = Object.keys(parameters); - if (names.length === 0) { - return url; - } - return url + separator + names.map((name) => { - if (name === "q") { - return "q=" + parameters.q.split("+").map(encodeURIComponent).join("+"); - } - return `${name}=${encodeURIComponent(parameters[name])}`; - }).join("&"); -} - -// pkg/dist-src/util/extract-url-variable-names.js -var urlVariableRegex = /\{[^}]+\}/g; -function removeNonChars(variableName) { - return variableName.replace(/^\W+|\W+$/g, "").split(/,/); -} -function extractUrlVariableNames(url) { - const matches = url.match(urlVariableRegex); - if (!matches) { - return []; - } - return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []); -} - -// pkg/dist-src/util/omit.js -function omit(object, keysToOmit) { - const result = { __proto__: null }; - for (const key of Object.keys(object)) { - if (keysToOmit.indexOf(key) === -1) { - result[key] = object[key]; - } - } - return result; -} - -// pkg/dist-src/util/url-template.js -function encodeReserved(str) { - return str.split(/(%[0-9A-Fa-f]{2})/g).map(function(part) { - if (!/%[0-9A-Fa-f]/.test(part)) { - part = encodeURI(part).replace(/%5B/g, "[").replace(/%5D/g, "]"); - } - return part; - }).join(""); -} -function encodeUnreserved(str) { - return encodeURIComponent(str).replace(/[!'()*]/g, function(c) { - return "%" + c.charCodeAt(0).toString(16).toUpperCase(); - }); -} -function encodeValue(operator, value, key) { - value = operator === "+" || operator === "#" ? encodeReserved(value) : encodeUnreserved(value); - if (key) { - return encodeUnreserved(key) + "=" + value; - } else { - return value; - } -} -function isDefined(value) { - return value !== void 0 && value !== null; -} -function isKeyOperator(operator) { - return operator === ";" || operator === "&" || operator === "?"; -} -function getValues(context, operator, key, modifier) { - var value = context[key], result = []; - if (isDefined(value) && value !== "") { - if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") { - value = value.toString(); - if (modifier && modifier !== "*") { - value = value.substring(0, parseInt(modifier, 10)); - } - result.push( - encodeValue(operator, value, isKeyOperator(operator) ? key : "") - ); - } else { - if (modifier === "*") { - if (Array.isArray(value)) { - value.filter(isDefined).forEach(function(value2) { - result.push( - encodeValue(operator, value2, isKeyOperator(operator) ? key : "") - ); - }); - } else { - Object.keys(value).forEach(function(k) { - if (isDefined(value[k])) { - result.push(encodeValue(operator, value[k], k)); - } - }); - } - } else { - const tmp = []; - if (Array.isArray(value)) { - value.filter(isDefined).forEach(function(value2) { - tmp.push(encodeValue(operator, value2)); - }); - } else { - Object.keys(value).forEach(function(k) { - if (isDefined(value[k])) { - tmp.push(encodeUnreserved(k)); - tmp.push(encodeValue(operator, value[k].toString())); - } - }); - } - if (isKeyOperator(operator)) { - result.push(encodeUnreserved(key) + "=" + tmp.join(",")); - } else if (tmp.length !== 0) { - result.push(tmp.join(",")); - } - } - } - } else { - if (operator === ";") { - if (isDefined(value)) { - result.push(encodeUnreserved(key)); - } - } else if (value === "" && (operator === "&" || operator === "?")) { - result.push(encodeUnreserved(key) + "="); - } else if (value === "") { - result.push(""); - } - } - return result; -} -function parseUrl(template) { - return { - expand: expand.bind(null, template) - }; -} -function expand(template, context) { - var operators = ["+", "#", ".", "/", ";", "?", "&"]; - template = template.replace( - /\{([^\{\}]+)\}|([^\{\}]+)/g, - function(_, expression, literal) { - if (expression) { - let operator = ""; - const values = []; - if (operators.indexOf(expression.charAt(0)) !== -1) { - operator = expression.charAt(0); - expression = expression.substr(1); - } - expression.split(/,/g).forEach(function(variable) { - var tmp = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable); - values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3])); - }); - if (operator && operator !== "+") { - var separator = ","; - if (operator === "?") { - separator = "&"; - } else if (operator !== "#") { - separator = operator; - } - return (values.length !== 0 ? operator : "") + values.join(separator); - } else { - return values.join(","); - } - } else { - return encodeReserved(literal); - } - } - ); - if (template === "/") { - return template; - } else { - return template.replace(/\/$/, ""); - } -} - -// pkg/dist-src/parse.js -function parse(options) { - let method = options.method.toUpperCase(); - let url = (options.url || "/").replace(/:([a-z]\w+)/g, "{$1}"); - let headers = Object.assign({}, options.headers); - let body; - let parameters = omit(options, [ - "method", - "baseUrl", - "url", - "headers", - "request", - "mediaType" - ]); - const urlVariableNames = extractUrlVariableNames(url); - url = parseUrl(url).expand(parameters); - if (!/^http/.test(url)) { - url = options.baseUrl + url; - } - const omittedParameters = Object.keys(options).filter((option) => urlVariableNames.includes(option)).concat("baseUrl"); - const remainingParameters = omit(parameters, omittedParameters); - const isBinaryRequest = /application\/octet-stream/i.test(headers.accept); - if (!isBinaryRequest) { - if (options.mediaType.format) { - headers.accept = headers.accept.split(/,/).map( - (format) => format.replace( - /application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/, - `application/vnd$1$2.${options.mediaType.format}` - ) - ).join(","); - } - if (url.endsWith("/graphql")) { - if (options.mediaType.previews?.length) { - const previewsFromAcceptHeader = headers.accept.match(/[\w-]+(?=-preview)/g) || []; - headers.accept = previewsFromAcceptHeader.concat(options.mediaType.previews).map((preview) => { - const format = options.mediaType.format ? `.${options.mediaType.format}` : "+json"; - return `application/vnd.github.${preview}-preview${format}`; - }).join(","); - } - } - } - if (["GET", "HEAD"].includes(method)) { - url = addQueryParameters(url, remainingParameters); - } else { - if ("data" in remainingParameters) { - body = remainingParameters.data; - } else { - if (Object.keys(remainingParameters).length) { - body = remainingParameters; - } - } - } - if (!headers["content-type"] && typeof body !== "undefined") { - headers["content-type"] = "application/json; charset=utf-8"; - } - if (["PATCH", "PUT"].includes(method) && typeof body === "undefined") { - body = ""; - } - return Object.assign( - { method, url, headers }, - typeof body !== "undefined" ? { body } : null, - options.request ? { request: options.request } : null - ); -} - -// pkg/dist-src/endpoint-with-defaults.js -function endpointWithDefaults(defaults, route, options) { - return parse(merge(defaults, route, options)); -} - -// pkg/dist-src/with-defaults.js -function withDefaults(oldDefaults, newDefaults) { - const DEFAULTS2 = merge(oldDefaults, newDefaults); - const endpoint2 = endpointWithDefaults.bind(null, DEFAULTS2); - return Object.assign(endpoint2, { - DEFAULTS: DEFAULTS2, - defaults: withDefaults.bind(null, DEFAULTS2), - merge: merge.bind(null, DEFAULTS2), - parse - }); -} - -// pkg/dist-src/index.js -var endpoint = withDefaults(null, DEFAULTS); -// Annotate the CommonJS export names for ESM import in node: -0 && (0); - - -/***/ }), - -/***/ 70007: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// pkg/dist-src/index.js -var dist_src_exports = {}; -__export(dist_src_exports, { - GraphqlResponseError: () => GraphqlResponseError, - graphql: () => graphql2, - withCustomRequest: () => withCustomRequest -}); -module.exports = __toCommonJS(dist_src_exports); -var import_request3 = __nccwpck_require__(66255); -var import_universal_user_agent = __nccwpck_require__(33843); - -// pkg/dist-src/version.js -var VERSION = "7.1.0"; - -// pkg/dist-src/with-defaults.js -var import_request2 = __nccwpck_require__(66255); - -// pkg/dist-src/graphql.js -var import_request = __nccwpck_require__(66255); - -// pkg/dist-src/error.js -function _buildMessageForResponseErrors(data) { - return `Request failed due to following response errors: -` + data.errors.map((e) => ` - ${e.message}`).join("\n"); -} -var GraphqlResponseError = class extends Error { - constructor(request2, headers, response) { - super(_buildMessageForResponseErrors(response)); - this.request = request2; - this.headers = headers; - this.response = response; - this.name = "GraphqlResponseError"; - this.errors = response.errors; - this.data = response.data; - if (Error.captureStackTrace) { - Error.captureStackTrace(this, this.constructor); - } - } -}; - -// pkg/dist-src/graphql.js -var NON_VARIABLE_OPTIONS = [ - "method", - "baseUrl", - "url", - "headers", - "request", - "query", - "mediaType" -]; -var FORBIDDEN_VARIABLE_OPTIONS = ["query", "method", "url"]; -var GHES_V3_SUFFIX_REGEX = /\/api\/v3\/?$/; -function graphql(request2, query, options) { - if (options) { - if (typeof query === "string" && "query" in options) { - return Promise.reject( - new Error(`[@octokit/graphql] "query" cannot be used as variable name`) - ); - } - for (const key in options) { - if (!FORBIDDEN_VARIABLE_OPTIONS.includes(key)) - continue; - return Promise.reject( - new Error( - `[@octokit/graphql] "${key}" cannot be used as variable name` - ) - ); - } - } - const parsedOptions = typeof query === "string" ? Object.assign({ query }, options) : query; - const requestOptions = Object.keys( - parsedOptions - ).reduce((result, key) => { - if (NON_VARIABLE_OPTIONS.includes(key)) { - result[key] = parsedOptions[key]; - return result; - } - if (!result.variables) { - result.variables = {}; - } - result.variables[key] = parsedOptions[key]; - return result; - }, {}); - const baseUrl = parsedOptions.baseUrl || request2.endpoint.DEFAULTS.baseUrl; - if (GHES_V3_SUFFIX_REGEX.test(baseUrl)) { - requestOptions.url = baseUrl.replace(GHES_V3_SUFFIX_REGEX, "/api/graphql"); - } - return request2(requestOptions).then((response) => { - if (response.data.errors) { - const headers = {}; - for (const key of Object.keys(response.headers)) { - headers[key] = response.headers[key]; - } - throw new GraphqlResponseError( - requestOptions, - headers, - response.data - ); - } - return response.data.data; - }); -} - -// pkg/dist-src/with-defaults.js -function withDefaults(request2, newDefaults) { - const newRequest = request2.defaults(newDefaults); - const newApi = (query, options) => { - return graphql(newRequest, query, options); - }; - return Object.assign(newApi, { - defaults: withDefaults.bind(null, newRequest), - endpoint: newRequest.endpoint - }); -} - -// pkg/dist-src/index.js -var graphql2 = withDefaults(import_request3.request, { - headers: { - "user-agent": `octokit-graphql.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}` - }, - method: "POST", - url: "/graphql" -}); -function withCustomRequest(customRequest) { - return withDefaults(customRequest, { - method: "POST", - url: "/graphql" - }); -} -// Annotate the CommonJS export names for ESM import in node: -0 && (0); - - -/***/ }), - -/***/ 38082: -/***/ ((module) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// pkg/dist-src/index.js -var dist_src_exports = {}; -__export(dist_src_exports, { - composePaginateRest: () => composePaginateRest, - isPaginatingEndpoint: () => isPaginatingEndpoint, - paginateRest: () => paginateRest, - paginatingEndpoints: () => paginatingEndpoints -}); -module.exports = __toCommonJS(dist_src_exports); - -// pkg/dist-src/version.js -var VERSION = "11.3.1"; - -// pkg/dist-src/normalize-paginated-list-response.js -function normalizePaginatedListResponse(response) { - if (!response.data) { - return { - ...response, - data: [] - }; - } - const responseNeedsNormalization = "total_count" in response.data && !("url" in response.data); - if (!responseNeedsNormalization) - return response; - const incompleteResults = response.data.incomplete_results; - const repositorySelection = response.data.repository_selection; - const totalCount = response.data.total_count; - delete response.data.incomplete_results; - delete response.data.repository_selection; - delete response.data.total_count; - const namespaceKey = Object.keys(response.data)[0]; - const data = response.data[namespaceKey]; - response.data = data; - if (typeof incompleteResults !== "undefined") { - response.data.incomplete_results = incompleteResults; - } - if (typeof repositorySelection !== "undefined") { - response.data.repository_selection = repositorySelection; - } - response.data.total_count = totalCount; - return response; -} - -// pkg/dist-src/iterator.js -function iterator(octokit, route, parameters) { - const options = typeof route === "function" ? route.endpoint(parameters) : octokit.request.endpoint(route, parameters); - const requestMethod = typeof route === "function" ? route : octokit.request; - const method = options.method; - const headers = options.headers; - let url = options.url; - return { - [Symbol.asyncIterator]: () => ({ - async next() { - if (!url) - return { done: true }; - try { - const response = await requestMethod({ method, url, headers }); - const normalizedResponse = normalizePaginatedListResponse(response); - url = ((normalizedResponse.headers.link || "").match( - /<([^>]+)>;\s*rel="next"/ - ) || [])[1]; - return { value: normalizedResponse }; - } catch (error) { - if (error.status !== 409) - throw error; - url = ""; - return { - value: { - status: 200, - headers: {}, - data: [] - } - }; - } - } - }) - }; -} - -// pkg/dist-src/paginate.js -function paginate(octokit, route, parameters, mapFn) { - if (typeof parameters === "function") { - mapFn = parameters; - parameters = void 0; - } - return gather( - octokit, - [], - iterator(octokit, route, parameters)[Symbol.asyncIterator](), - mapFn - ); -} -function gather(octokit, results, iterator2, mapFn) { - return iterator2.next().then((result) => { - if (result.done) { - return results; - } - let earlyExit = false; - function done() { - earlyExit = true; - } - results = results.concat( - mapFn ? mapFn(result.value, done) : result.value.data - ); - if (earlyExit) { - return results; - } - return gather(octokit, results, iterator2, mapFn); - }); -} - -// pkg/dist-src/compose-paginate.js -var composePaginateRest = Object.assign(paginate, { - iterator -}); - -// pkg/dist-src/generated/paginating-endpoints.js -var paginatingEndpoints = [ - "GET /advisories", - "GET /app/hook/deliveries", - "GET /app/installation-requests", - "GET /app/installations", - "GET /assignments/{assignment_id}/accepted_assignments", - "GET /classrooms", - "GET /classrooms/{classroom_id}/assignments", - "GET /enterprises/{enterprise}/copilot/usage", - "GET /enterprises/{enterprise}/dependabot/alerts", - "GET /enterprises/{enterprise}/secret-scanning/alerts", - "GET /events", - "GET /gists", - "GET /gists/public", - "GET /gists/starred", - "GET /gists/{gist_id}/comments", - "GET /gists/{gist_id}/commits", - "GET /gists/{gist_id}/forks", - "GET /installation/repositories", - "GET /issues", - "GET /licenses", - "GET /marketplace_listing/plans", - "GET /marketplace_listing/plans/{plan_id}/accounts", - "GET /marketplace_listing/stubbed/plans", - "GET /marketplace_listing/stubbed/plans/{plan_id}/accounts", - "GET /networks/{owner}/{repo}/events", - "GET /notifications", - "GET /organizations", - "GET /orgs/{org}/actions/cache/usage-by-repository", - "GET /orgs/{org}/actions/permissions/repositories", - "GET /orgs/{org}/actions/runners", - "GET /orgs/{org}/actions/secrets", - "GET /orgs/{org}/actions/secrets/{secret_name}/repositories", - "GET /orgs/{org}/actions/variables", - "GET /orgs/{org}/actions/variables/{name}/repositories", - "GET /orgs/{org}/blocks", - "GET /orgs/{org}/code-scanning/alerts", - "GET /orgs/{org}/codespaces", - "GET /orgs/{org}/codespaces/secrets", - "GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories", - "GET /orgs/{org}/copilot/billing/seats", - "GET /orgs/{org}/copilot/usage", - "GET /orgs/{org}/dependabot/alerts", - "GET /orgs/{org}/dependabot/secrets", - "GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories", - "GET /orgs/{org}/events", - "GET /orgs/{org}/failed_invitations", - "GET /orgs/{org}/hooks", - "GET /orgs/{org}/hooks/{hook_id}/deliveries", - "GET /orgs/{org}/installations", - "GET /orgs/{org}/invitations", - "GET /orgs/{org}/invitations/{invitation_id}/teams", - "GET /orgs/{org}/issues", - "GET /orgs/{org}/members", - "GET /orgs/{org}/members/{username}/codespaces", - "GET /orgs/{org}/migrations", - "GET /orgs/{org}/migrations/{migration_id}/repositories", - "GET /orgs/{org}/organization-roles/{role_id}/teams", - "GET /orgs/{org}/organization-roles/{role_id}/users", - "GET /orgs/{org}/outside_collaborators", - "GET /orgs/{org}/packages", - "GET /orgs/{org}/packages/{package_type}/{package_name}/versions", - "GET /orgs/{org}/personal-access-token-requests", - "GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories", - "GET /orgs/{org}/personal-access-tokens", - "GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories", - "GET /orgs/{org}/projects", - "GET /orgs/{org}/properties/values", - "GET /orgs/{org}/public_members", - "GET /orgs/{org}/repos", - "GET /orgs/{org}/rulesets", - "GET /orgs/{org}/rulesets/rule-suites", - "GET /orgs/{org}/secret-scanning/alerts", - "GET /orgs/{org}/security-advisories", - "GET /orgs/{org}/team/{team_slug}/copilot/usage", - "GET /orgs/{org}/teams", - "GET /orgs/{org}/teams/{team_slug}/discussions", - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments", - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions", - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions", - "GET /orgs/{org}/teams/{team_slug}/invitations", - "GET /orgs/{org}/teams/{team_slug}/members", - "GET /orgs/{org}/teams/{team_slug}/projects", - "GET /orgs/{org}/teams/{team_slug}/repos", - "GET /orgs/{org}/teams/{team_slug}/teams", - "GET /projects/columns/{column_id}/cards", - "GET /projects/{project_id}/collaborators", - "GET /projects/{project_id}/columns", - "GET /repos/{owner}/{repo}/actions/artifacts", - "GET /repos/{owner}/{repo}/actions/caches", - "GET /repos/{owner}/{repo}/actions/organization-secrets", - "GET /repos/{owner}/{repo}/actions/organization-variables", - "GET /repos/{owner}/{repo}/actions/runners", - "GET /repos/{owner}/{repo}/actions/runs", - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts", - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs", - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs", - "GET /repos/{owner}/{repo}/actions/secrets", - "GET /repos/{owner}/{repo}/actions/variables", - "GET /repos/{owner}/{repo}/actions/workflows", - "GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs", - "GET /repos/{owner}/{repo}/activity", - "GET /repos/{owner}/{repo}/assignees", - "GET /repos/{owner}/{repo}/branches", - "GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations", - "GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs", - "GET /repos/{owner}/{repo}/code-scanning/alerts", - "GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances", - "GET /repos/{owner}/{repo}/code-scanning/analyses", - "GET /repos/{owner}/{repo}/codespaces", - "GET /repos/{owner}/{repo}/codespaces/devcontainers", - "GET /repos/{owner}/{repo}/codespaces/secrets", - "GET /repos/{owner}/{repo}/collaborators", - "GET /repos/{owner}/{repo}/comments", - "GET /repos/{owner}/{repo}/comments/{comment_id}/reactions", - "GET /repos/{owner}/{repo}/commits", - "GET /repos/{owner}/{repo}/commits/{commit_sha}/comments", - "GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls", - "GET /repos/{owner}/{repo}/commits/{ref}/check-runs", - "GET /repos/{owner}/{repo}/commits/{ref}/check-suites", - "GET /repos/{owner}/{repo}/commits/{ref}/status", - "GET /repos/{owner}/{repo}/commits/{ref}/statuses", - "GET /repos/{owner}/{repo}/contributors", - "GET /repos/{owner}/{repo}/dependabot/alerts", - "GET /repos/{owner}/{repo}/dependabot/secrets", - "GET /repos/{owner}/{repo}/deployments", - "GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses", - "GET /repos/{owner}/{repo}/environments", - "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies", - "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps", - "GET /repos/{owner}/{repo}/environments/{environment_name}/secrets", - "GET /repos/{owner}/{repo}/environments/{environment_name}/variables", - "GET /repos/{owner}/{repo}/events", - "GET /repos/{owner}/{repo}/forks", - "GET /repos/{owner}/{repo}/hooks", - "GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries", - "GET /repos/{owner}/{repo}/invitations", - "GET /repos/{owner}/{repo}/issues", - "GET /repos/{owner}/{repo}/issues/comments", - "GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions", - "GET /repos/{owner}/{repo}/issues/events", - "GET /repos/{owner}/{repo}/issues/{issue_number}/comments", - "GET /repos/{owner}/{repo}/issues/{issue_number}/events", - "GET /repos/{owner}/{repo}/issues/{issue_number}/labels", - "GET /repos/{owner}/{repo}/issues/{issue_number}/reactions", - "GET /repos/{owner}/{repo}/issues/{issue_number}/timeline", - "GET /repos/{owner}/{repo}/keys", - "GET /repos/{owner}/{repo}/labels", - "GET /repos/{owner}/{repo}/milestones", - "GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels", - "GET /repos/{owner}/{repo}/notifications", - "GET /repos/{owner}/{repo}/pages/builds", - "GET /repos/{owner}/{repo}/projects", - "GET /repos/{owner}/{repo}/pulls", - "GET /repos/{owner}/{repo}/pulls/comments", - "GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions", - "GET /repos/{owner}/{repo}/pulls/{pull_number}/comments", - "GET /repos/{owner}/{repo}/pulls/{pull_number}/commits", - "GET /repos/{owner}/{repo}/pulls/{pull_number}/files", - "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews", - "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments", - "GET /repos/{owner}/{repo}/releases", - "GET /repos/{owner}/{repo}/releases/{release_id}/assets", - "GET /repos/{owner}/{repo}/releases/{release_id}/reactions", - "GET /repos/{owner}/{repo}/rules/branches/{branch}", - "GET /repos/{owner}/{repo}/rulesets", - "GET /repos/{owner}/{repo}/rulesets/rule-suites", - "GET /repos/{owner}/{repo}/secret-scanning/alerts", - "GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations", - "GET /repos/{owner}/{repo}/security-advisories", - "GET /repos/{owner}/{repo}/stargazers", - "GET /repos/{owner}/{repo}/subscribers", - "GET /repos/{owner}/{repo}/tags", - "GET /repos/{owner}/{repo}/teams", - "GET /repos/{owner}/{repo}/topics", - "GET /repositories", - "GET /search/code", - "GET /search/commits", - "GET /search/issues", - "GET /search/labels", - "GET /search/repositories", - "GET /search/topics", - "GET /search/users", - "GET /teams/{team_id}/discussions", - "GET /teams/{team_id}/discussions/{discussion_number}/comments", - "GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions", - "GET /teams/{team_id}/discussions/{discussion_number}/reactions", - "GET /teams/{team_id}/invitations", - "GET /teams/{team_id}/members", - "GET /teams/{team_id}/projects", - "GET /teams/{team_id}/repos", - "GET /teams/{team_id}/teams", - "GET /user/blocks", - "GET /user/codespaces", - "GET /user/codespaces/secrets", - "GET /user/emails", - "GET /user/followers", - "GET /user/following", - "GET /user/gpg_keys", - "GET /user/installations", - "GET /user/installations/{installation_id}/repositories", - "GET /user/issues", - "GET /user/keys", - "GET /user/marketplace_purchases", - "GET /user/marketplace_purchases/stubbed", - "GET /user/memberships/orgs", - "GET /user/migrations", - "GET /user/migrations/{migration_id}/repositories", - "GET /user/orgs", - "GET /user/packages", - "GET /user/packages/{package_type}/{package_name}/versions", - "GET /user/public_emails", - "GET /user/repos", - "GET /user/repository_invitations", - "GET /user/social_accounts", - "GET /user/ssh_signing_keys", - "GET /user/starred", - "GET /user/subscriptions", - "GET /user/teams", - "GET /users", - "GET /users/{username}/events", - "GET /users/{username}/events/orgs/{org}", - "GET /users/{username}/events/public", - "GET /users/{username}/followers", - "GET /users/{username}/following", - "GET /users/{username}/gists", - "GET /users/{username}/gpg_keys", - "GET /users/{username}/keys", - "GET /users/{username}/orgs", - "GET /users/{username}/packages", - "GET /users/{username}/projects", - "GET /users/{username}/received_events", - "GET /users/{username}/received_events/public", - "GET /users/{username}/repos", - "GET /users/{username}/social_accounts", - "GET /users/{username}/ssh_signing_keys", - "GET /users/{username}/starred", - "GET /users/{username}/subscriptions" -]; - -// pkg/dist-src/paginating-endpoints.js -function isPaginatingEndpoint(arg) { - if (typeof arg === "string") { - return paginatingEndpoints.includes(arg); - } else { - return false; - } -} - -// pkg/dist-src/index.js -function paginateRest(octokit) { - return { - paginate: Object.assign(paginate.bind(null, octokit), { - iterator: iterator.bind(null, octokit) - }) - }; -} -paginateRest.VERSION = VERSION; -// Annotate the CommonJS export names for ESM import in node: -0 && (0); - - -/***/ }), - -/***/ 6966: -/***/ ((module) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// pkg/dist-src/index.js -var dist_src_exports = {}; -__export(dist_src_exports, { - requestLog: () => requestLog -}); -module.exports = __toCommonJS(dist_src_exports); - -// pkg/dist-src/version.js -var VERSION = "4.0.1"; - -// pkg/dist-src/index.js -function requestLog(octokit) { - octokit.hook.wrap("request", (request, options) => { - octokit.log.debug("request", options); - const start = Date.now(); - const requestOptions = octokit.request.endpoint.parse(options); - const path = requestOptions.url.replace(options.baseUrl, ""); - return request(options).then((response) => { - octokit.log.info( - `${requestOptions.method} ${path} - ${response.status} in ${Date.now() - start}ms` - ); - return response; - }).catch((error) => { - octokit.log.info( - `${requestOptions.method} ${path} - ${error.status} in ${Date.now() - start}ms` - ); - throw error; - }); - }); -} -requestLog.VERSION = VERSION; -// Annotate the CommonJS export names for ESM import in node: -0 && (0); - - -/***/ }), - -/***/ 84935: -/***/ ((module) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// pkg/dist-src/index.js -var dist_src_exports = {}; -__export(dist_src_exports, { - legacyRestEndpointMethods: () => legacyRestEndpointMethods, - restEndpointMethods: () => restEndpointMethods -}); -module.exports = __toCommonJS(dist_src_exports); - -// pkg/dist-src/version.js -var VERSION = "13.2.2"; - -// pkg/dist-src/generated/endpoints.js -var Endpoints = { - actions: { - addCustomLabelsToSelfHostedRunnerForOrg: [ - "POST /orgs/{org}/actions/runners/{runner_id}/labels" - ], - addCustomLabelsToSelfHostedRunnerForRepo: [ - "POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels" - ], - addSelectedRepoToOrgSecret: [ - "PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}" - ], - addSelectedRepoToOrgVariable: [ - "PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}" - ], - approveWorkflowRun: [ - "POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve" - ], - cancelWorkflowRun: [ - "POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel" - ], - createEnvironmentVariable: [ - "POST /repos/{owner}/{repo}/environments/{environment_name}/variables" - ], - createOrUpdateEnvironmentSecret: [ - "PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}" - ], - createOrUpdateOrgSecret: ["PUT /orgs/{org}/actions/secrets/{secret_name}"], - createOrUpdateRepoSecret: [ - "PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}" - ], - createOrgVariable: ["POST /orgs/{org}/actions/variables"], - createRegistrationTokenForOrg: [ - "POST /orgs/{org}/actions/runners/registration-token" - ], - createRegistrationTokenForRepo: [ - "POST /repos/{owner}/{repo}/actions/runners/registration-token" - ], - createRemoveTokenForOrg: ["POST /orgs/{org}/actions/runners/remove-token"], - createRemoveTokenForRepo: [ - "POST /repos/{owner}/{repo}/actions/runners/remove-token" - ], - createRepoVariable: ["POST /repos/{owner}/{repo}/actions/variables"], - createWorkflowDispatch: [ - "POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches" - ], - deleteActionsCacheById: [ - "DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}" - ], - deleteActionsCacheByKey: [ - "DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}" - ], - deleteArtifact: [ - "DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}" - ], - deleteEnvironmentSecret: [ - "DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}" - ], - deleteEnvironmentVariable: [ - "DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}" - ], - deleteOrgSecret: ["DELETE /orgs/{org}/actions/secrets/{secret_name}"], - deleteOrgVariable: ["DELETE /orgs/{org}/actions/variables/{name}"], - deleteRepoSecret: [ - "DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}" - ], - deleteRepoVariable: [ - "DELETE /repos/{owner}/{repo}/actions/variables/{name}" - ], - deleteSelfHostedRunnerFromOrg: [ - "DELETE /orgs/{org}/actions/runners/{runner_id}" - ], - deleteSelfHostedRunnerFromRepo: [ - "DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}" - ], - deleteWorkflowRun: ["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"], - deleteWorkflowRunLogs: [ - "DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs" - ], - disableSelectedRepositoryGithubActionsOrganization: [ - "DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}" - ], - disableWorkflow: [ - "PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable" - ], - downloadArtifact: [ - "GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}" - ], - downloadJobLogsForWorkflowRun: [ - "GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs" - ], - downloadWorkflowRunAttemptLogs: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs" - ], - downloadWorkflowRunLogs: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs" - ], - enableSelectedRepositoryGithubActionsOrganization: [ - "PUT /orgs/{org}/actions/permissions/repositories/{repository_id}" - ], - enableWorkflow: [ - "PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable" - ], - forceCancelWorkflowRun: [ - "POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel" - ], - generateRunnerJitconfigForOrg: [ - "POST /orgs/{org}/actions/runners/generate-jitconfig" - ], - generateRunnerJitconfigForRepo: [ - "POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig" - ], - getActionsCacheList: ["GET /repos/{owner}/{repo}/actions/caches"], - getActionsCacheUsage: ["GET /repos/{owner}/{repo}/actions/cache/usage"], - getActionsCacheUsageByRepoForOrg: [ - "GET /orgs/{org}/actions/cache/usage-by-repository" - ], - getActionsCacheUsageForOrg: ["GET /orgs/{org}/actions/cache/usage"], - getAllowedActionsOrganization: [ - "GET /orgs/{org}/actions/permissions/selected-actions" - ], - getAllowedActionsRepository: [ - "GET /repos/{owner}/{repo}/actions/permissions/selected-actions" - ], - getArtifact: ["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"], - getCustomOidcSubClaimForRepo: [ - "GET /repos/{owner}/{repo}/actions/oidc/customization/sub" - ], - getEnvironmentPublicKey: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key" - ], - getEnvironmentSecret: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}" - ], - getEnvironmentVariable: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}" - ], - getGithubActionsDefaultWorkflowPermissionsOrganization: [ - "GET /orgs/{org}/actions/permissions/workflow" - ], - getGithubActionsDefaultWorkflowPermissionsRepository: [ - "GET /repos/{owner}/{repo}/actions/permissions/workflow" - ], - getGithubActionsPermissionsOrganization: [ - "GET /orgs/{org}/actions/permissions" - ], - getGithubActionsPermissionsRepository: [ - "GET /repos/{owner}/{repo}/actions/permissions" - ], - getJobForWorkflowRun: ["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"], - getOrgPublicKey: ["GET /orgs/{org}/actions/secrets/public-key"], - getOrgSecret: ["GET /orgs/{org}/actions/secrets/{secret_name}"], - getOrgVariable: ["GET /orgs/{org}/actions/variables/{name}"], - getPendingDeploymentsForRun: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments" - ], - getRepoPermissions: [ - "GET /repos/{owner}/{repo}/actions/permissions", - {}, - { renamed: ["actions", "getGithubActionsPermissionsRepository"] } - ], - getRepoPublicKey: ["GET /repos/{owner}/{repo}/actions/secrets/public-key"], - getRepoSecret: ["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"], - getRepoVariable: ["GET /repos/{owner}/{repo}/actions/variables/{name}"], - getReviewsForRun: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals" - ], - getSelfHostedRunnerForOrg: ["GET /orgs/{org}/actions/runners/{runner_id}"], - getSelfHostedRunnerForRepo: [ - "GET /repos/{owner}/{repo}/actions/runners/{runner_id}" - ], - getWorkflow: ["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"], - getWorkflowAccessToRepository: [ - "GET /repos/{owner}/{repo}/actions/permissions/access" - ], - getWorkflowRun: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}"], - getWorkflowRunAttempt: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}" - ], - getWorkflowRunUsage: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing" - ], - getWorkflowUsage: [ - "GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing" - ], - listArtifactsForRepo: ["GET /repos/{owner}/{repo}/actions/artifacts"], - listEnvironmentSecrets: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/secrets" - ], - listEnvironmentVariables: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/variables" - ], - listJobsForWorkflowRun: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs" - ], - listJobsForWorkflowRunAttempt: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs" - ], - listLabelsForSelfHostedRunnerForOrg: [ - "GET /orgs/{org}/actions/runners/{runner_id}/labels" - ], - listLabelsForSelfHostedRunnerForRepo: [ - "GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels" - ], - listOrgSecrets: ["GET /orgs/{org}/actions/secrets"], - listOrgVariables: ["GET /orgs/{org}/actions/variables"], - listRepoOrganizationSecrets: [ - "GET /repos/{owner}/{repo}/actions/organization-secrets" - ], - listRepoOrganizationVariables: [ - "GET /repos/{owner}/{repo}/actions/organization-variables" - ], - listRepoSecrets: ["GET /repos/{owner}/{repo}/actions/secrets"], - listRepoVariables: ["GET /repos/{owner}/{repo}/actions/variables"], - listRepoWorkflows: ["GET /repos/{owner}/{repo}/actions/workflows"], - listRunnerApplicationsForOrg: ["GET /orgs/{org}/actions/runners/downloads"], - listRunnerApplicationsForRepo: [ - "GET /repos/{owner}/{repo}/actions/runners/downloads" - ], - listSelectedReposForOrgSecret: [ - "GET /orgs/{org}/actions/secrets/{secret_name}/repositories" - ], - listSelectedReposForOrgVariable: [ - "GET /orgs/{org}/actions/variables/{name}/repositories" - ], - listSelectedRepositoriesEnabledGithubActionsOrganization: [ - "GET /orgs/{org}/actions/permissions/repositories" - ], - listSelfHostedRunnersForOrg: ["GET /orgs/{org}/actions/runners"], - listSelfHostedRunnersForRepo: ["GET /repos/{owner}/{repo}/actions/runners"], - listWorkflowRunArtifacts: [ - "GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts" - ], - listWorkflowRuns: [ - "GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs" - ], - listWorkflowRunsForRepo: ["GET /repos/{owner}/{repo}/actions/runs"], - reRunJobForWorkflowRun: [ - "POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun" - ], - reRunWorkflow: ["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"], - reRunWorkflowFailedJobs: [ - "POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs" - ], - removeAllCustomLabelsFromSelfHostedRunnerForOrg: [ - "DELETE /orgs/{org}/actions/runners/{runner_id}/labels" - ], - removeAllCustomLabelsFromSelfHostedRunnerForRepo: [ - "DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels" - ], - removeCustomLabelFromSelfHostedRunnerForOrg: [ - "DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}" - ], - removeCustomLabelFromSelfHostedRunnerForRepo: [ - "DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}" - ], - removeSelectedRepoFromOrgSecret: [ - "DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}" - ], - removeSelectedRepoFromOrgVariable: [ - "DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}" - ], - reviewCustomGatesForRun: [ - "POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule" - ], - reviewPendingDeploymentsForRun: [ - "POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments" - ], - setAllowedActionsOrganization: [ - "PUT /orgs/{org}/actions/permissions/selected-actions" - ], - setAllowedActionsRepository: [ - "PUT /repos/{owner}/{repo}/actions/permissions/selected-actions" - ], - setCustomLabelsForSelfHostedRunnerForOrg: [ - "PUT /orgs/{org}/actions/runners/{runner_id}/labels" - ], - setCustomLabelsForSelfHostedRunnerForRepo: [ - "PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels" - ], - setCustomOidcSubClaimForRepo: [ - "PUT /repos/{owner}/{repo}/actions/oidc/customization/sub" - ], - setGithubActionsDefaultWorkflowPermissionsOrganization: [ - "PUT /orgs/{org}/actions/permissions/workflow" - ], - setGithubActionsDefaultWorkflowPermissionsRepository: [ - "PUT /repos/{owner}/{repo}/actions/permissions/workflow" - ], - setGithubActionsPermissionsOrganization: [ - "PUT /orgs/{org}/actions/permissions" - ], - setGithubActionsPermissionsRepository: [ - "PUT /repos/{owner}/{repo}/actions/permissions" - ], - setSelectedReposForOrgSecret: [ - "PUT /orgs/{org}/actions/secrets/{secret_name}/repositories" - ], - setSelectedReposForOrgVariable: [ - "PUT /orgs/{org}/actions/variables/{name}/repositories" - ], - setSelectedRepositoriesEnabledGithubActionsOrganization: [ - "PUT /orgs/{org}/actions/permissions/repositories" - ], - setWorkflowAccessToRepository: [ - "PUT /repos/{owner}/{repo}/actions/permissions/access" - ], - updateEnvironmentVariable: [ - "PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}" - ], - updateOrgVariable: ["PATCH /orgs/{org}/actions/variables/{name}"], - updateRepoVariable: [ - "PATCH /repos/{owner}/{repo}/actions/variables/{name}" - ] - }, - activity: { - checkRepoIsStarredByAuthenticatedUser: ["GET /user/starred/{owner}/{repo}"], - deleteRepoSubscription: ["DELETE /repos/{owner}/{repo}/subscription"], - deleteThreadSubscription: [ - "DELETE /notifications/threads/{thread_id}/subscription" - ], - getFeeds: ["GET /feeds"], - getRepoSubscription: ["GET /repos/{owner}/{repo}/subscription"], - getThread: ["GET /notifications/threads/{thread_id}"], - getThreadSubscriptionForAuthenticatedUser: [ - "GET /notifications/threads/{thread_id}/subscription" - ], - listEventsForAuthenticatedUser: ["GET /users/{username}/events"], - listNotificationsForAuthenticatedUser: ["GET /notifications"], - listOrgEventsForAuthenticatedUser: [ - "GET /users/{username}/events/orgs/{org}" - ], - listPublicEvents: ["GET /events"], - listPublicEventsForRepoNetwork: ["GET /networks/{owner}/{repo}/events"], - listPublicEventsForUser: ["GET /users/{username}/events/public"], - listPublicOrgEvents: ["GET /orgs/{org}/events"], - listReceivedEventsForUser: ["GET /users/{username}/received_events"], - listReceivedPublicEventsForUser: [ - "GET /users/{username}/received_events/public" - ], - listRepoEvents: ["GET /repos/{owner}/{repo}/events"], - listRepoNotificationsForAuthenticatedUser: [ - "GET /repos/{owner}/{repo}/notifications" - ], - listReposStarredByAuthenticatedUser: ["GET /user/starred"], - listReposStarredByUser: ["GET /users/{username}/starred"], - listReposWatchedByUser: ["GET /users/{username}/subscriptions"], - listStargazersForRepo: ["GET /repos/{owner}/{repo}/stargazers"], - listWatchedReposForAuthenticatedUser: ["GET /user/subscriptions"], - listWatchersForRepo: ["GET /repos/{owner}/{repo}/subscribers"], - markNotificationsAsRead: ["PUT /notifications"], - markRepoNotificationsAsRead: ["PUT /repos/{owner}/{repo}/notifications"], - markThreadAsDone: ["DELETE /notifications/threads/{thread_id}"], - markThreadAsRead: ["PATCH /notifications/threads/{thread_id}"], - setRepoSubscription: ["PUT /repos/{owner}/{repo}/subscription"], - setThreadSubscription: [ - "PUT /notifications/threads/{thread_id}/subscription" - ], - starRepoForAuthenticatedUser: ["PUT /user/starred/{owner}/{repo}"], - unstarRepoForAuthenticatedUser: ["DELETE /user/starred/{owner}/{repo}"] - }, - apps: { - addRepoToInstallation: [ - "PUT /user/installations/{installation_id}/repositories/{repository_id}", - {}, - { renamed: ["apps", "addRepoToInstallationForAuthenticatedUser"] } - ], - addRepoToInstallationForAuthenticatedUser: [ - "PUT /user/installations/{installation_id}/repositories/{repository_id}" - ], - checkToken: ["POST /applications/{client_id}/token"], - createFromManifest: ["POST /app-manifests/{code}/conversions"], - createInstallationAccessToken: [ - "POST /app/installations/{installation_id}/access_tokens" - ], - deleteAuthorization: ["DELETE /applications/{client_id}/grant"], - deleteInstallation: ["DELETE /app/installations/{installation_id}"], - deleteToken: ["DELETE /applications/{client_id}/token"], - getAuthenticated: ["GET /app"], - getBySlug: ["GET /apps/{app_slug}"], - getInstallation: ["GET /app/installations/{installation_id}"], - getOrgInstallation: ["GET /orgs/{org}/installation"], - getRepoInstallation: ["GET /repos/{owner}/{repo}/installation"], - getSubscriptionPlanForAccount: [ - "GET /marketplace_listing/accounts/{account_id}" - ], - getSubscriptionPlanForAccountStubbed: [ - "GET /marketplace_listing/stubbed/accounts/{account_id}" - ], - getUserInstallation: ["GET /users/{username}/installation"], - getWebhookConfigForApp: ["GET /app/hook/config"], - getWebhookDelivery: ["GET /app/hook/deliveries/{delivery_id}"], - listAccountsForPlan: ["GET /marketplace_listing/plans/{plan_id}/accounts"], - listAccountsForPlanStubbed: [ - "GET /marketplace_listing/stubbed/plans/{plan_id}/accounts" - ], - listInstallationReposForAuthenticatedUser: [ - "GET /user/installations/{installation_id}/repositories" - ], - listInstallationRequestsForAuthenticatedApp: [ - "GET /app/installation-requests" - ], - listInstallations: ["GET /app/installations"], - listInstallationsForAuthenticatedUser: ["GET /user/installations"], - listPlans: ["GET /marketplace_listing/plans"], - listPlansStubbed: ["GET /marketplace_listing/stubbed/plans"], - listReposAccessibleToInstallation: ["GET /installation/repositories"], - listSubscriptionsForAuthenticatedUser: ["GET /user/marketplace_purchases"], - listSubscriptionsForAuthenticatedUserStubbed: [ - "GET /user/marketplace_purchases/stubbed" - ], - listWebhookDeliveries: ["GET /app/hook/deliveries"], - redeliverWebhookDelivery: [ - "POST /app/hook/deliveries/{delivery_id}/attempts" - ], - removeRepoFromInstallation: [ - "DELETE /user/installations/{installation_id}/repositories/{repository_id}", - {}, - { renamed: ["apps", "removeRepoFromInstallationForAuthenticatedUser"] } - ], - removeRepoFromInstallationForAuthenticatedUser: [ - "DELETE /user/installations/{installation_id}/repositories/{repository_id}" - ], - resetToken: ["PATCH /applications/{client_id}/token"], - revokeInstallationAccessToken: ["DELETE /installation/token"], - scopeToken: ["POST /applications/{client_id}/token/scoped"], - suspendInstallation: ["PUT /app/installations/{installation_id}/suspended"], - unsuspendInstallation: [ - "DELETE /app/installations/{installation_id}/suspended" - ], - updateWebhookConfigForApp: ["PATCH /app/hook/config"] - }, - billing: { - getGithubActionsBillingOrg: ["GET /orgs/{org}/settings/billing/actions"], - getGithubActionsBillingUser: [ - "GET /users/{username}/settings/billing/actions" - ], - getGithubPackagesBillingOrg: ["GET /orgs/{org}/settings/billing/packages"], - getGithubPackagesBillingUser: [ - "GET /users/{username}/settings/billing/packages" - ], - getSharedStorageBillingOrg: [ - "GET /orgs/{org}/settings/billing/shared-storage" - ], - getSharedStorageBillingUser: [ - "GET /users/{username}/settings/billing/shared-storage" - ] - }, - checks: { - create: ["POST /repos/{owner}/{repo}/check-runs"], - createSuite: ["POST /repos/{owner}/{repo}/check-suites"], - get: ["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"], - getSuite: ["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"], - listAnnotations: [ - "GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations" - ], - listForRef: ["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"], - listForSuite: [ - "GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs" - ], - listSuitesForRef: ["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"], - rerequestRun: [ - "POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest" - ], - rerequestSuite: [ - "POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest" - ], - setSuitesPreferences: [ - "PATCH /repos/{owner}/{repo}/check-suites/preferences" - ], - update: ["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"] - }, - codeScanning: { - deleteAnalysis: [ - "DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}" - ], - getAlert: [ - "GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}", - {}, - { renamedParameters: { alert_id: "alert_number" } } - ], - getAnalysis: [ - "GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}" - ], - getCodeqlDatabase: [ - "GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}" - ], - getDefaultSetup: ["GET /repos/{owner}/{repo}/code-scanning/default-setup"], - getSarif: ["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"], - listAlertInstances: [ - "GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances" - ], - listAlertsForOrg: ["GET /orgs/{org}/code-scanning/alerts"], - listAlertsForRepo: ["GET /repos/{owner}/{repo}/code-scanning/alerts"], - listAlertsInstances: [ - "GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances", - {}, - { renamed: ["codeScanning", "listAlertInstances"] } - ], - listCodeqlDatabases: [ - "GET /repos/{owner}/{repo}/code-scanning/codeql/databases" - ], - listRecentAnalyses: ["GET /repos/{owner}/{repo}/code-scanning/analyses"], - updateAlert: [ - "PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}" - ], - updateDefaultSetup: [ - "PATCH /repos/{owner}/{repo}/code-scanning/default-setup" - ], - uploadSarif: ["POST /repos/{owner}/{repo}/code-scanning/sarifs"] - }, - codesOfConduct: { - getAllCodesOfConduct: ["GET /codes_of_conduct"], - getConductCode: ["GET /codes_of_conduct/{key}"] - }, - codespaces: { - addRepositoryForSecretForAuthenticatedUser: [ - "PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}" - ], - addSelectedRepoToOrgSecret: [ - "PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}" - ], - checkPermissionsForDevcontainer: [ - "GET /repos/{owner}/{repo}/codespaces/permissions_check" - ], - codespaceMachinesForAuthenticatedUser: [ - "GET /user/codespaces/{codespace_name}/machines" - ], - createForAuthenticatedUser: ["POST /user/codespaces"], - createOrUpdateOrgSecret: [ - "PUT /orgs/{org}/codespaces/secrets/{secret_name}" - ], - createOrUpdateRepoSecret: [ - "PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}" - ], - createOrUpdateSecretForAuthenticatedUser: [ - "PUT /user/codespaces/secrets/{secret_name}" - ], - createWithPrForAuthenticatedUser: [ - "POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces" - ], - createWithRepoForAuthenticatedUser: [ - "POST /repos/{owner}/{repo}/codespaces" - ], - deleteForAuthenticatedUser: ["DELETE /user/codespaces/{codespace_name}"], - deleteFromOrganization: [ - "DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}" - ], - deleteOrgSecret: ["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"], - deleteRepoSecret: [ - "DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}" - ], - deleteSecretForAuthenticatedUser: [ - "DELETE /user/codespaces/secrets/{secret_name}" - ], - exportForAuthenticatedUser: [ - "POST /user/codespaces/{codespace_name}/exports" - ], - getCodespacesForUserInOrg: [ - "GET /orgs/{org}/members/{username}/codespaces" - ], - getExportDetailsForAuthenticatedUser: [ - "GET /user/codespaces/{codespace_name}/exports/{export_id}" - ], - getForAuthenticatedUser: ["GET /user/codespaces/{codespace_name}"], - getOrgPublicKey: ["GET /orgs/{org}/codespaces/secrets/public-key"], - getOrgSecret: ["GET /orgs/{org}/codespaces/secrets/{secret_name}"], - getPublicKeyForAuthenticatedUser: [ - "GET /user/codespaces/secrets/public-key" - ], - getRepoPublicKey: [ - "GET /repos/{owner}/{repo}/codespaces/secrets/public-key" - ], - getRepoSecret: [ - "GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}" - ], - getSecretForAuthenticatedUser: [ - "GET /user/codespaces/secrets/{secret_name}" - ], - listDevcontainersInRepositoryForAuthenticatedUser: [ - "GET /repos/{owner}/{repo}/codespaces/devcontainers" - ], - listForAuthenticatedUser: ["GET /user/codespaces"], - listInOrganization: [ - "GET /orgs/{org}/codespaces", - {}, - { renamedParameters: { org_id: "org" } } - ], - listInRepositoryForAuthenticatedUser: [ - "GET /repos/{owner}/{repo}/codespaces" - ], - listOrgSecrets: ["GET /orgs/{org}/codespaces/secrets"], - listRepoSecrets: ["GET /repos/{owner}/{repo}/codespaces/secrets"], - listRepositoriesForSecretForAuthenticatedUser: [ - "GET /user/codespaces/secrets/{secret_name}/repositories" - ], - listSecretsForAuthenticatedUser: ["GET /user/codespaces/secrets"], - listSelectedReposForOrgSecret: [ - "GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories" - ], - preFlightWithRepoForAuthenticatedUser: [ - "GET /repos/{owner}/{repo}/codespaces/new" - ], - publishForAuthenticatedUser: [ - "POST /user/codespaces/{codespace_name}/publish" - ], - removeRepositoryForSecretForAuthenticatedUser: [ - "DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}" - ], - removeSelectedRepoFromOrgSecret: [ - "DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}" - ], - repoMachinesForAuthenticatedUser: [ - "GET /repos/{owner}/{repo}/codespaces/machines" - ], - setRepositoriesForSecretForAuthenticatedUser: [ - "PUT /user/codespaces/secrets/{secret_name}/repositories" - ], - setSelectedReposForOrgSecret: [ - "PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories" - ], - startForAuthenticatedUser: ["POST /user/codespaces/{codespace_name}/start"], - stopForAuthenticatedUser: ["POST /user/codespaces/{codespace_name}/stop"], - stopInOrganization: [ - "POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop" - ], - updateForAuthenticatedUser: ["PATCH /user/codespaces/{codespace_name}"] - }, - copilot: { - addCopilotSeatsForTeams: [ - "POST /orgs/{org}/copilot/billing/selected_teams" - ], - addCopilotSeatsForUsers: [ - "POST /orgs/{org}/copilot/billing/selected_users" - ], - cancelCopilotSeatAssignmentForTeams: [ - "DELETE /orgs/{org}/copilot/billing/selected_teams" - ], - cancelCopilotSeatAssignmentForUsers: [ - "DELETE /orgs/{org}/copilot/billing/selected_users" - ], - getCopilotOrganizationDetails: ["GET /orgs/{org}/copilot/billing"], - getCopilotSeatDetailsForUser: [ - "GET /orgs/{org}/members/{username}/copilot" - ], - listCopilotSeats: ["GET /orgs/{org}/copilot/billing/seats"], - usageMetricsForEnterprise: ["GET /enterprises/{enterprise}/copilot/usage"], - usageMetricsForOrg: ["GET /orgs/{org}/copilot/usage"], - usageMetricsForTeam: ["GET /orgs/{org}/team/{team_slug}/copilot/usage"] - }, - dependabot: { - addSelectedRepoToOrgSecret: [ - "PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}" - ], - createOrUpdateOrgSecret: [ - "PUT /orgs/{org}/dependabot/secrets/{secret_name}" - ], - createOrUpdateRepoSecret: [ - "PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}" - ], - deleteOrgSecret: ["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"], - deleteRepoSecret: [ - "DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}" - ], - getAlert: ["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"], - getOrgPublicKey: ["GET /orgs/{org}/dependabot/secrets/public-key"], - getOrgSecret: ["GET /orgs/{org}/dependabot/secrets/{secret_name}"], - getRepoPublicKey: [ - "GET /repos/{owner}/{repo}/dependabot/secrets/public-key" - ], - getRepoSecret: [ - "GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}" - ], - listAlertsForEnterprise: [ - "GET /enterprises/{enterprise}/dependabot/alerts" - ], - listAlertsForOrg: ["GET /orgs/{org}/dependabot/alerts"], - listAlertsForRepo: ["GET /repos/{owner}/{repo}/dependabot/alerts"], - listOrgSecrets: ["GET /orgs/{org}/dependabot/secrets"], - listRepoSecrets: ["GET /repos/{owner}/{repo}/dependabot/secrets"], - listSelectedReposForOrgSecret: [ - "GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories" - ], - removeSelectedRepoFromOrgSecret: [ - "DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}" - ], - setSelectedReposForOrgSecret: [ - "PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories" - ], - updateAlert: [ - "PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}" - ] - }, - dependencyGraph: { - createRepositorySnapshot: [ - "POST /repos/{owner}/{repo}/dependency-graph/snapshots" - ], - diffRange: [ - "GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}" - ], - exportSbom: ["GET /repos/{owner}/{repo}/dependency-graph/sbom"] - }, - emojis: { get: ["GET /emojis"] }, - gists: { - checkIsStarred: ["GET /gists/{gist_id}/star"], - create: ["POST /gists"], - createComment: ["POST /gists/{gist_id}/comments"], - delete: ["DELETE /gists/{gist_id}"], - deleteComment: ["DELETE /gists/{gist_id}/comments/{comment_id}"], - fork: ["POST /gists/{gist_id}/forks"], - get: ["GET /gists/{gist_id}"], - getComment: ["GET /gists/{gist_id}/comments/{comment_id}"], - getRevision: ["GET /gists/{gist_id}/{sha}"], - list: ["GET /gists"], - listComments: ["GET /gists/{gist_id}/comments"], - listCommits: ["GET /gists/{gist_id}/commits"], - listForUser: ["GET /users/{username}/gists"], - listForks: ["GET /gists/{gist_id}/forks"], - listPublic: ["GET /gists/public"], - listStarred: ["GET /gists/starred"], - star: ["PUT /gists/{gist_id}/star"], - unstar: ["DELETE /gists/{gist_id}/star"], - update: ["PATCH /gists/{gist_id}"], - updateComment: ["PATCH /gists/{gist_id}/comments/{comment_id}"] - }, - git: { - createBlob: ["POST /repos/{owner}/{repo}/git/blobs"], - createCommit: ["POST /repos/{owner}/{repo}/git/commits"], - createRef: ["POST /repos/{owner}/{repo}/git/refs"], - createTag: ["POST /repos/{owner}/{repo}/git/tags"], - createTree: ["POST /repos/{owner}/{repo}/git/trees"], - deleteRef: ["DELETE /repos/{owner}/{repo}/git/refs/{ref}"], - getBlob: ["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"], - getCommit: ["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"], - getRef: ["GET /repos/{owner}/{repo}/git/ref/{ref}"], - getTag: ["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"], - getTree: ["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"], - listMatchingRefs: ["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"], - updateRef: ["PATCH /repos/{owner}/{repo}/git/refs/{ref}"] - }, - gitignore: { - getAllTemplates: ["GET /gitignore/templates"], - getTemplate: ["GET /gitignore/templates/{name}"] - }, - interactions: { - getRestrictionsForAuthenticatedUser: ["GET /user/interaction-limits"], - getRestrictionsForOrg: ["GET /orgs/{org}/interaction-limits"], - getRestrictionsForRepo: ["GET /repos/{owner}/{repo}/interaction-limits"], - getRestrictionsForYourPublicRepos: [ - "GET /user/interaction-limits", - {}, - { renamed: ["interactions", "getRestrictionsForAuthenticatedUser"] } - ], - removeRestrictionsForAuthenticatedUser: ["DELETE /user/interaction-limits"], - removeRestrictionsForOrg: ["DELETE /orgs/{org}/interaction-limits"], - removeRestrictionsForRepo: [ - "DELETE /repos/{owner}/{repo}/interaction-limits" - ], - removeRestrictionsForYourPublicRepos: [ - "DELETE /user/interaction-limits", - {}, - { renamed: ["interactions", "removeRestrictionsForAuthenticatedUser"] } - ], - setRestrictionsForAuthenticatedUser: ["PUT /user/interaction-limits"], - setRestrictionsForOrg: ["PUT /orgs/{org}/interaction-limits"], - setRestrictionsForRepo: ["PUT /repos/{owner}/{repo}/interaction-limits"], - setRestrictionsForYourPublicRepos: [ - "PUT /user/interaction-limits", - {}, - { renamed: ["interactions", "setRestrictionsForAuthenticatedUser"] } - ] - }, - issues: { - addAssignees: [ - "POST /repos/{owner}/{repo}/issues/{issue_number}/assignees" - ], - addLabels: ["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"], - checkUserCanBeAssigned: ["GET /repos/{owner}/{repo}/assignees/{assignee}"], - checkUserCanBeAssignedToIssue: [ - "GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}" - ], - create: ["POST /repos/{owner}/{repo}/issues"], - createComment: [ - "POST /repos/{owner}/{repo}/issues/{issue_number}/comments" - ], - createLabel: ["POST /repos/{owner}/{repo}/labels"], - createMilestone: ["POST /repos/{owner}/{repo}/milestones"], - deleteComment: [ - "DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}" - ], - deleteLabel: ["DELETE /repos/{owner}/{repo}/labels/{name}"], - deleteMilestone: [ - "DELETE /repos/{owner}/{repo}/milestones/{milestone_number}" - ], - get: ["GET /repos/{owner}/{repo}/issues/{issue_number}"], - getComment: ["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"], - getEvent: ["GET /repos/{owner}/{repo}/issues/events/{event_id}"], - getLabel: ["GET /repos/{owner}/{repo}/labels/{name}"], - getMilestone: ["GET /repos/{owner}/{repo}/milestones/{milestone_number}"], - list: ["GET /issues"], - listAssignees: ["GET /repos/{owner}/{repo}/assignees"], - listComments: ["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"], - listCommentsForRepo: ["GET /repos/{owner}/{repo}/issues/comments"], - listEvents: ["GET /repos/{owner}/{repo}/issues/{issue_number}/events"], - listEventsForRepo: ["GET /repos/{owner}/{repo}/issues/events"], - listEventsForTimeline: [ - "GET /repos/{owner}/{repo}/issues/{issue_number}/timeline" - ], - listForAuthenticatedUser: ["GET /user/issues"], - listForOrg: ["GET /orgs/{org}/issues"], - listForRepo: ["GET /repos/{owner}/{repo}/issues"], - listLabelsForMilestone: [ - "GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels" - ], - listLabelsForRepo: ["GET /repos/{owner}/{repo}/labels"], - listLabelsOnIssue: [ - "GET /repos/{owner}/{repo}/issues/{issue_number}/labels" - ], - listMilestones: ["GET /repos/{owner}/{repo}/milestones"], - lock: ["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"], - removeAllLabels: [ - "DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels" - ], - removeAssignees: [ - "DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees" - ], - removeLabel: [ - "DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}" - ], - setLabels: ["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"], - unlock: ["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"], - update: ["PATCH /repos/{owner}/{repo}/issues/{issue_number}"], - updateComment: ["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"], - updateLabel: ["PATCH /repos/{owner}/{repo}/labels/{name}"], - updateMilestone: [ - "PATCH /repos/{owner}/{repo}/milestones/{milestone_number}" - ] - }, - licenses: { - get: ["GET /licenses/{license}"], - getAllCommonlyUsed: ["GET /licenses"], - getForRepo: ["GET /repos/{owner}/{repo}/license"] - }, - markdown: { - render: ["POST /markdown"], - renderRaw: [ - "POST /markdown/raw", - { headers: { "content-type": "text/plain; charset=utf-8" } } - ] - }, - meta: { - get: ["GET /meta"], - getAllVersions: ["GET /versions"], - getOctocat: ["GET /octocat"], - getZen: ["GET /zen"], - root: ["GET /"] - }, - migrations: { - deleteArchiveForAuthenticatedUser: [ - "DELETE /user/migrations/{migration_id}/archive" - ], - deleteArchiveForOrg: [ - "DELETE /orgs/{org}/migrations/{migration_id}/archive" - ], - downloadArchiveForOrg: [ - "GET /orgs/{org}/migrations/{migration_id}/archive" - ], - getArchiveForAuthenticatedUser: [ - "GET /user/migrations/{migration_id}/archive" - ], - getStatusForAuthenticatedUser: ["GET /user/migrations/{migration_id}"], - getStatusForOrg: ["GET /orgs/{org}/migrations/{migration_id}"], - listForAuthenticatedUser: ["GET /user/migrations"], - listForOrg: ["GET /orgs/{org}/migrations"], - listReposForAuthenticatedUser: [ - "GET /user/migrations/{migration_id}/repositories" - ], - listReposForOrg: ["GET /orgs/{org}/migrations/{migration_id}/repositories"], - listReposForUser: [ - "GET /user/migrations/{migration_id}/repositories", - {}, - { renamed: ["migrations", "listReposForAuthenticatedUser"] } - ], - startForAuthenticatedUser: ["POST /user/migrations"], - startForOrg: ["POST /orgs/{org}/migrations"], - unlockRepoForAuthenticatedUser: [ - "DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock" - ], - unlockRepoForOrg: [ - "DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock" - ] - }, - oidc: { - getOidcCustomSubTemplateForOrg: [ - "GET /orgs/{org}/actions/oidc/customization/sub" - ], - updateOidcCustomSubTemplateForOrg: [ - "PUT /orgs/{org}/actions/oidc/customization/sub" - ] - }, - orgs: { - addSecurityManagerTeam: [ - "PUT /orgs/{org}/security-managers/teams/{team_slug}" - ], - assignTeamToOrgRole: [ - "PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}" - ], - assignUserToOrgRole: [ - "PUT /orgs/{org}/organization-roles/users/{username}/{role_id}" - ], - blockUser: ["PUT /orgs/{org}/blocks/{username}"], - cancelInvitation: ["DELETE /orgs/{org}/invitations/{invitation_id}"], - checkBlockedUser: ["GET /orgs/{org}/blocks/{username}"], - checkMembershipForUser: ["GET /orgs/{org}/members/{username}"], - checkPublicMembershipForUser: ["GET /orgs/{org}/public_members/{username}"], - convertMemberToOutsideCollaborator: [ - "PUT /orgs/{org}/outside_collaborators/{username}" - ], - createCustomOrganizationRole: ["POST /orgs/{org}/organization-roles"], - createInvitation: ["POST /orgs/{org}/invitations"], - createOrUpdateCustomProperties: ["PATCH /orgs/{org}/properties/schema"], - createOrUpdateCustomPropertiesValuesForRepos: [ - "PATCH /orgs/{org}/properties/values" - ], - createOrUpdateCustomProperty: [ - "PUT /orgs/{org}/properties/schema/{custom_property_name}" - ], - createWebhook: ["POST /orgs/{org}/hooks"], - delete: ["DELETE /orgs/{org}"], - deleteCustomOrganizationRole: [ - "DELETE /orgs/{org}/organization-roles/{role_id}" - ], - deleteWebhook: ["DELETE /orgs/{org}/hooks/{hook_id}"], - enableOrDisableSecurityProductOnAllOrgRepos: [ - "POST /orgs/{org}/{security_product}/{enablement}" - ], - get: ["GET /orgs/{org}"], - getAllCustomProperties: ["GET /orgs/{org}/properties/schema"], - getCustomProperty: [ - "GET /orgs/{org}/properties/schema/{custom_property_name}" - ], - getMembershipForAuthenticatedUser: ["GET /user/memberships/orgs/{org}"], - getMembershipForUser: ["GET /orgs/{org}/memberships/{username}"], - getOrgRole: ["GET /orgs/{org}/organization-roles/{role_id}"], - getWebhook: ["GET /orgs/{org}/hooks/{hook_id}"], - getWebhookConfigForOrg: ["GET /orgs/{org}/hooks/{hook_id}/config"], - getWebhookDelivery: [ - "GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}" - ], - list: ["GET /organizations"], - listAppInstallations: ["GET /orgs/{org}/installations"], - listBlockedUsers: ["GET /orgs/{org}/blocks"], - listCustomPropertiesValuesForRepos: ["GET /orgs/{org}/properties/values"], - listFailedInvitations: ["GET /orgs/{org}/failed_invitations"], - listForAuthenticatedUser: ["GET /user/orgs"], - listForUser: ["GET /users/{username}/orgs"], - listInvitationTeams: ["GET /orgs/{org}/invitations/{invitation_id}/teams"], - listMembers: ["GET /orgs/{org}/members"], - listMembershipsForAuthenticatedUser: ["GET /user/memberships/orgs"], - listOrgRoleTeams: ["GET /orgs/{org}/organization-roles/{role_id}/teams"], - listOrgRoleUsers: ["GET /orgs/{org}/organization-roles/{role_id}/users"], - listOrgRoles: ["GET /orgs/{org}/organization-roles"], - listOrganizationFineGrainedPermissions: [ - "GET /orgs/{org}/organization-fine-grained-permissions" - ], - listOutsideCollaborators: ["GET /orgs/{org}/outside_collaborators"], - listPatGrantRepositories: [ - "GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories" - ], - listPatGrantRequestRepositories: [ - "GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories" - ], - listPatGrantRequests: ["GET /orgs/{org}/personal-access-token-requests"], - listPatGrants: ["GET /orgs/{org}/personal-access-tokens"], - listPendingInvitations: ["GET /orgs/{org}/invitations"], - listPublicMembers: ["GET /orgs/{org}/public_members"], - listSecurityManagerTeams: ["GET /orgs/{org}/security-managers"], - listWebhookDeliveries: ["GET /orgs/{org}/hooks/{hook_id}/deliveries"], - listWebhooks: ["GET /orgs/{org}/hooks"], - patchCustomOrganizationRole: [ - "PATCH /orgs/{org}/organization-roles/{role_id}" - ], - pingWebhook: ["POST /orgs/{org}/hooks/{hook_id}/pings"], - redeliverWebhookDelivery: [ - "POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts" - ], - removeCustomProperty: [ - "DELETE /orgs/{org}/properties/schema/{custom_property_name}" - ], - removeMember: ["DELETE /orgs/{org}/members/{username}"], - removeMembershipForUser: ["DELETE /orgs/{org}/memberships/{username}"], - removeOutsideCollaborator: [ - "DELETE /orgs/{org}/outside_collaborators/{username}" - ], - removePublicMembershipForAuthenticatedUser: [ - "DELETE /orgs/{org}/public_members/{username}" - ], - removeSecurityManagerTeam: [ - "DELETE /orgs/{org}/security-managers/teams/{team_slug}" - ], - reviewPatGrantRequest: [ - "POST /orgs/{org}/personal-access-token-requests/{pat_request_id}" - ], - reviewPatGrantRequestsInBulk: [ - "POST /orgs/{org}/personal-access-token-requests" - ], - revokeAllOrgRolesTeam: [ - "DELETE /orgs/{org}/organization-roles/teams/{team_slug}" - ], - revokeAllOrgRolesUser: [ - "DELETE /orgs/{org}/organization-roles/users/{username}" - ], - revokeOrgRoleTeam: [ - "DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}" - ], - revokeOrgRoleUser: [ - "DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}" - ], - setMembershipForUser: ["PUT /orgs/{org}/memberships/{username}"], - setPublicMembershipForAuthenticatedUser: [ - "PUT /orgs/{org}/public_members/{username}" - ], - unblockUser: ["DELETE /orgs/{org}/blocks/{username}"], - update: ["PATCH /orgs/{org}"], - updateMembershipForAuthenticatedUser: [ - "PATCH /user/memberships/orgs/{org}" - ], - updatePatAccess: ["POST /orgs/{org}/personal-access-tokens/{pat_id}"], - updatePatAccesses: ["POST /orgs/{org}/personal-access-tokens"], - updateWebhook: ["PATCH /orgs/{org}/hooks/{hook_id}"], - updateWebhookConfigForOrg: ["PATCH /orgs/{org}/hooks/{hook_id}/config"] - }, - packages: { - deletePackageForAuthenticatedUser: [ - "DELETE /user/packages/{package_type}/{package_name}" - ], - deletePackageForOrg: [ - "DELETE /orgs/{org}/packages/{package_type}/{package_name}" - ], - deletePackageForUser: [ - "DELETE /users/{username}/packages/{package_type}/{package_name}" - ], - deletePackageVersionForAuthenticatedUser: [ - "DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}" - ], - deletePackageVersionForOrg: [ - "DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}" - ], - deletePackageVersionForUser: [ - "DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}" - ], - getAllPackageVersionsForAPackageOwnedByAnOrg: [ - "GET /orgs/{org}/packages/{package_type}/{package_name}/versions", - {}, - { renamed: ["packages", "getAllPackageVersionsForPackageOwnedByOrg"] } - ], - getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser: [ - "GET /user/packages/{package_type}/{package_name}/versions", - {}, - { - renamed: [ - "packages", - "getAllPackageVersionsForPackageOwnedByAuthenticatedUser" - ] - } - ], - getAllPackageVersionsForPackageOwnedByAuthenticatedUser: [ - "GET /user/packages/{package_type}/{package_name}/versions" - ], - getAllPackageVersionsForPackageOwnedByOrg: [ - "GET /orgs/{org}/packages/{package_type}/{package_name}/versions" - ], - getAllPackageVersionsForPackageOwnedByUser: [ - "GET /users/{username}/packages/{package_type}/{package_name}/versions" - ], - getPackageForAuthenticatedUser: [ - "GET /user/packages/{package_type}/{package_name}" - ], - getPackageForOrganization: [ - "GET /orgs/{org}/packages/{package_type}/{package_name}" - ], - getPackageForUser: [ - "GET /users/{username}/packages/{package_type}/{package_name}" - ], - getPackageVersionForAuthenticatedUser: [ - "GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}" - ], - getPackageVersionForOrganization: [ - "GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}" - ], - getPackageVersionForUser: [ - "GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}" - ], - listDockerMigrationConflictingPackagesForAuthenticatedUser: [ - "GET /user/docker/conflicts" - ], - listDockerMigrationConflictingPackagesForOrganization: [ - "GET /orgs/{org}/docker/conflicts" - ], - listDockerMigrationConflictingPackagesForUser: [ - "GET /users/{username}/docker/conflicts" - ], - listPackagesForAuthenticatedUser: ["GET /user/packages"], - listPackagesForOrganization: ["GET /orgs/{org}/packages"], - listPackagesForUser: ["GET /users/{username}/packages"], - restorePackageForAuthenticatedUser: [ - "POST /user/packages/{package_type}/{package_name}/restore{?token}" - ], - restorePackageForOrg: [ - "POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}" - ], - restorePackageForUser: [ - "POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}" - ], - restorePackageVersionForAuthenticatedUser: [ - "POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore" - ], - restorePackageVersionForOrg: [ - "POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore" - ], - restorePackageVersionForUser: [ - "POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore" - ] - }, - projects: { - addCollaborator: ["PUT /projects/{project_id}/collaborators/{username}"], - createCard: ["POST /projects/columns/{column_id}/cards"], - createColumn: ["POST /projects/{project_id}/columns"], - createForAuthenticatedUser: ["POST /user/projects"], - createForOrg: ["POST /orgs/{org}/projects"], - createForRepo: ["POST /repos/{owner}/{repo}/projects"], - delete: ["DELETE /projects/{project_id}"], - deleteCard: ["DELETE /projects/columns/cards/{card_id}"], - deleteColumn: ["DELETE /projects/columns/{column_id}"], - get: ["GET /projects/{project_id}"], - getCard: ["GET /projects/columns/cards/{card_id}"], - getColumn: ["GET /projects/columns/{column_id}"], - getPermissionForUser: [ - "GET /projects/{project_id}/collaborators/{username}/permission" - ], - listCards: ["GET /projects/columns/{column_id}/cards"], - listCollaborators: ["GET /projects/{project_id}/collaborators"], - listColumns: ["GET /projects/{project_id}/columns"], - listForOrg: ["GET /orgs/{org}/projects"], - listForRepo: ["GET /repos/{owner}/{repo}/projects"], - listForUser: ["GET /users/{username}/projects"], - moveCard: ["POST /projects/columns/cards/{card_id}/moves"], - moveColumn: ["POST /projects/columns/{column_id}/moves"], - removeCollaborator: [ - "DELETE /projects/{project_id}/collaborators/{username}" - ], - update: ["PATCH /projects/{project_id}"], - updateCard: ["PATCH /projects/columns/cards/{card_id}"], - updateColumn: ["PATCH /projects/columns/{column_id}"] - }, - pulls: { - checkIfMerged: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"], - create: ["POST /repos/{owner}/{repo}/pulls"], - createReplyForReviewComment: [ - "POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies" - ], - createReview: ["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"], - createReviewComment: [ - "POST /repos/{owner}/{repo}/pulls/{pull_number}/comments" - ], - deletePendingReview: [ - "DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}" - ], - deleteReviewComment: [ - "DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}" - ], - dismissReview: [ - "PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals" - ], - get: ["GET /repos/{owner}/{repo}/pulls/{pull_number}"], - getReview: [ - "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}" - ], - getReviewComment: ["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"], - list: ["GET /repos/{owner}/{repo}/pulls"], - listCommentsForReview: [ - "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments" - ], - listCommits: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"], - listFiles: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"], - listRequestedReviewers: [ - "GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers" - ], - listReviewComments: [ - "GET /repos/{owner}/{repo}/pulls/{pull_number}/comments" - ], - listReviewCommentsForRepo: ["GET /repos/{owner}/{repo}/pulls/comments"], - listReviews: ["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"], - merge: ["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"], - removeRequestedReviewers: [ - "DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers" - ], - requestReviewers: [ - "POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers" - ], - submitReview: [ - "POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events" - ], - update: ["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"], - updateBranch: [ - "PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch" - ], - updateReview: [ - "PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}" - ], - updateReviewComment: [ - "PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}" - ] - }, - rateLimit: { get: ["GET /rate_limit"] }, - reactions: { - createForCommitComment: [ - "POST /repos/{owner}/{repo}/comments/{comment_id}/reactions" - ], - createForIssue: [ - "POST /repos/{owner}/{repo}/issues/{issue_number}/reactions" - ], - createForIssueComment: [ - "POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions" - ], - createForPullRequestReviewComment: [ - "POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions" - ], - createForRelease: [ - "POST /repos/{owner}/{repo}/releases/{release_id}/reactions" - ], - createForTeamDiscussionCommentInOrg: [ - "POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions" - ], - createForTeamDiscussionInOrg: [ - "POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions" - ], - deleteForCommitComment: [ - "DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}" - ], - deleteForIssue: [ - "DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}" - ], - deleteForIssueComment: [ - "DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}" - ], - deleteForPullRequestComment: [ - "DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}" - ], - deleteForRelease: [ - "DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}" - ], - deleteForTeamDiscussion: [ - "DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}" - ], - deleteForTeamDiscussionComment: [ - "DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}" - ], - listForCommitComment: [ - "GET /repos/{owner}/{repo}/comments/{comment_id}/reactions" - ], - listForIssue: ["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"], - listForIssueComment: [ - "GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions" - ], - listForPullRequestReviewComment: [ - "GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions" - ], - listForRelease: [ - "GET /repos/{owner}/{repo}/releases/{release_id}/reactions" - ], - listForTeamDiscussionCommentInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions" - ], - listForTeamDiscussionInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions" - ] - }, - repos: { - acceptInvitation: [ - "PATCH /user/repository_invitations/{invitation_id}", - {}, - { renamed: ["repos", "acceptInvitationForAuthenticatedUser"] } - ], - acceptInvitationForAuthenticatedUser: [ - "PATCH /user/repository_invitations/{invitation_id}" - ], - addAppAccessRestrictions: [ - "POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps", - {}, - { mapToData: "apps" } - ], - addCollaborator: ["PUT /repos/{owner}/{repo}/collaborators/{username}"], - addStatusCheckContexts: [ - "POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts", - {}, - { mapToData: "contexts" } - ], - addTeamAccessRestrictions: [ - "POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams", - {}, - { mapToData: "teams" } - ], - addUserAccessRestrictions: [ - "POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users", - {}, - { mapToData: "users" } - ], - cancelPagesDeployment: [ - "POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel" - ], - checkAutomatedSecurityFixes: [ - "GET /repos/{owner}/{repo}/automated-security-fixes" - ], - checkCollaborator: ["GET /repos/{owner}/{repo}/collaborators/{username}"], - checkPrivateVulnerabilityReporting: [ - "GET /repos/{owner}/{repo}/private-vulnerability-reporting" - ], - checkVulnerabilityAlerts: [ - "GET /repos/{owner}/{repo}/vulnerability-alerts" - ], - codeownersErrors: ["GET /repos/{owner}/{repo}/codeowners/errors"], - compareCommits: ["GET /repos/{owner}/{repo}/compare/{base}...{head}"], - compareCommitsWithBasehead: [ - "GET /repos/{owner}/{repo}/compare/{basehead}" - ], - createAutolink: ["POST /repos/{owner}/{repo}/autolinks"], - createCommitComment: [ - "POST /repos/{owner}/{repo}/commits/{commit_sha}/comments" - ], - createCommitSignatureProtection: [ - "POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures" - ], - createCommitStatus: ["POST /repos/{owner}/{repo}/statuses/{sha}"], - createDeployKey: ["POST /repos/{owner}/{repo}/keys"], - createDeployment: ["POST /repos/{owner}/{repo}/deployments"], - createDeploymentBranchPolicy: [ - "POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies" - ], - createDeploymentProtectionRule: [ - "POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules" - ], - createDeploymentStatus: [ - "POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses" - ], - createDispatchEvent: ["POST /repos/{owner}/{repo}/dispatches"], - createForAuthenticatedUser: ["POST /user/repos"], - createFork: ["POST /repos/{owner}/{repo}/forks"], - createInOrg: ["POST /orgs/{org}/repos"], - createOrUpdateCustomPropertiesValues: [ - "PATCH /repos/{owner}/{repo}/properties/values" - ], - createOrUpdateEnvironment: [ - "PUT /repos/{owner}/{repo}/environments/{environment_name}" - ], - createOrUpdateFileContents: ["PUT /repos/{owner}/{repo}/contents/{path}"], - createOrgRuleset: ["POST /orgs/{org}/rulesets"], - createPagesDeployment: ["POST /repos/{owner}/{repo}/pages/deployments"], - createPagesSite: ["POST /repos/{owner}/{repo}/pages"], - createRelease: ["POST /repos/{owner}/{repo}/releases"], - createRepoRuleset: ["POST /repos/{owner}/{repo}/rulesets"], - createTagProtection: ["POST /repos/{owner}/{repo}/tags/protection"], - createUsingTemplate: [ - "POST /repos/{template_owner}/{template_repo}/generate" - ], - createWebhook: ["POST /repos/{owner}/{repo}/hooks"], - declineInvitation: [ - "DELETE /user/repository_invitations/{invitation_id}", - {}, - { renamed: ["repos", "declineInvitationForAuthenticatedUser"] } - ], - declineInvitationForAuthenticatedUser: [ - "DELETE /user/repository_invitations/{invitation_id}" - ], - delete: ["DELETE /repos/{owner}/{repo}"], - deleteAccessRestrictions: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions" - ], - deleteAdminBranchProtection: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins" - ], - deleteAnEnvironment: [ - "DELETE /repos/{owner}/{repo}/environments/{environment_name}" - ], - deleteAutolink: ["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"], - deleteBranchProtection: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection" - ], - deleteCommitComment: ["DELETE /repos/{owner}/{repo}/comments/{comment_id}"], - deleteCommitSignatureProtection: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures" - ], - deleteDeployKey: ["DELETE /repos/{owner}/{repo}/keys/{key_id}"], - deleteDeployment: [ - "DELETE /repos/{owner}/{repo}/deployments/{deployment_id}" - ], - deleteDeploymentBranchPolicy: [ - "DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}" - ], - deleteFile: ["DELETE /repos/{owner}/{repo}/contents/{path}"], - deleteInvitation: [ - "DELETE /repos/{owner}/{repo}/invitations/{invitation_id}" - ], - deleteOrgRuleset: ["DELETE /orgs/{org}/rulesets/{ruleset_id}"], - deletePagesSite: ["DELETE /repos/{owner}/{repo}/pages"], - deletePullRequestReviewProtection: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews" - ], - deleteRelease: ["DELETE /repos/{owner}/{repo}/releases/{release_id}"], - deleteReleaseAsset: [ - "DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}" - ], - deleteRepoRuleset: ["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"], - deleteTagProtection: [ - "DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}" - ], - deleteWebhook: ["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"], - disableAutomatedSecurityFixes: [ - "DELETE /repos/{owner}/{repo}/automated-security-fixes" - ], - disableDeploymentProtectionRule: [ - "DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}" - ], - disablePrivateVulnerabilityReporting: [ - "DELETE /repos/{owner}/{repo}/private-vulnerability-reporting" - ], - disableVulnerabilityAlerts: [ - "DELETE /repos/{owner}/{repo}/vulnerability-alerts" - ], - downloadArchive: [ - "GET /repos/{owner}/{repo}/zipball/{ref}", - {}, - { renamed: ["repos", "downloadZipballArchive"] } - ], - downloadTarballArchive: ["GET /repos/{owner}/{repo}/tarball/{ref}"], - downloadZipballArchive: ["GET /repos/{owner}/{repo}/zipball/{ref}"], - enableAutomatedSecurityFixes: [ - "PUT /repos/{owner}/{repo}/automated-security-fixes" - ], - enablePrivateVulnerabilityReporting: [ - "PUT /repos/{owner}/{repo}/private-vulnerability-reporting" - ], - enableVulnerabilityAlerts: [ - "PUT /repos/{owner}/{repo}/vulnerability-alerts" - ], - generateReleaseNotes: [ - "POST /repos/{owner}/{repo}/releases/generate-notes" - ], - get: ["GET /repos/{owner}/{repo}"], - getAccessRestrictions: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions" - ], - getAdminBranchProtection: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins" - ], - getAllDeploymentProtectionRules: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules" - ], - getAllEnvironments: ["GET /repos/{owner}/{repo}/environments"], - getAllStatusCheckContexts: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts" - ], - getAllTopics: ["GET /repos/{owner}/{repo}/topics"], - getAppsWithAccessToProtectedBranch: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps" - ], - getAutolink: ["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"], - getBranch: ["GET /repos/{owner}/{repo}/branches/{branch}"], - getBranchProtection: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection" - ], - getBranchRules: ["GET /repos/{owner}/{repo}/rules/branches/{branch}"], - getClones: ["GET /repos/{owner}/{repo}/traffic/clones"], - getCodeFrequencyStats: ["GET /repos/{owner}/{repo}/stats/code_frequency"], - getCollaboratorPermissionLevel: [ - "GET /repos/{owner}/{repo}/collaborators/{username}/permission" - ], - getCombinedStatusForRef: ["GET /repos/{owner}/{repo}/commits/{ref}/status"], - getCommit: ["GET /repos/{owner}/{repo}/commits/{ref}"], - getCommitActivityStats: ["GET /repos/{owner}/{repo}/stats/commit_activity"], - getCommitComment: ["GET /repos/{owner}/{repo}/comments/{comment_id}"], - getCommitSignatureProtection: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures" - ], - getCommunityProfileMetrics: ["GET /repos/{owner}/{repo}/community/profile"], - getContent: ["GET /repos/{owner}/{repo}/contents/{path}"], - getContributorsStats: ["GET /repos/{owner}/{repo}/stats/contributors"], - getCustomDeploymentProtectionRule: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}" - ], - getCustomPropertiesValues: ["GET /repos/{owner}/{repo}/properties/values"], - getDeployKey: ["GET /repos/{owner}/{repo}/keys/{key_id}"], - getDeployment: ["GET /repos/{owner}/{repo}/deployments/{deployment_id}"], - getDeploymentBranchPolicy: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}" - ], - getDeploymentStatus: [ - "GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}" - ], - getEnvironment: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}" - ], - getLatestPagesBuild: ["GET /repos/{owner}/{repo}/pages/builds/latest"], - getLatestRelease: ["GET /repos/{owner}/{repo}/releases/latest"], - getOrgRuleSuite: ["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"], - getOrgRuleSuites: ["GET /orgs/{org}/rulesets/rule-suites"], - getOrgRuleset: ["GET /orgs/{org}/rulesets/{ruleset_id}"], - getOrgRulesets: ["GET /orgs/{org}/rulesets"], - getPages: ["GET /repos/{owner}/{repo}/pages"], - getPagesBuild: ["GET /repos/{owner}/{repo}/pages/builds/{build_id}"], - getPagesDeployment: [ - "GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}" - ], - getPagesHealthCheck: ["GET /repos/{owner}/{repo}/pages/health"], - getParticipationStats: ["GET /repos/{owner}/{repo}/stats/participation"], - getPullRequestReviewProtection: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews" - ], - getPunchCardStats: ["GET /repos/{owner}/{repo}/stats/punch_card"], - getReadme: ["GET /repos/{owner}/{repo}/readme"], - getReadmeInDirectory: ["GET /repos/{owner}/{repo}/readme/{dir}"], - getRelease: ["GET /repos/{owner}/{repo}/releases/{release_id}"], - getReleaseAsset: ["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"], - getReleaseByTag: ["GET /repos/{owner}/{repo}/releases/tags/{tag}"], - getRepoRuleSuite: [ - "GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}" - ], - getRepoRuleSuites: ["GET /repos/{owner}/{repo}/rulesets/rule-suites"], - getRepoRuleset: ["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"], - getRepoRulesets: ["GET /repos/{owner}/{repo}/rulesets"], - getStatusChecksProtection: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks" - ], - getTeamsWithAccessToProtectedBranch: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams" - ], - getTopPaths: ["GET /repos/{owner}/{repo}/traffic/popular/paths"], - getTopReferrers: ["GET /repos/{owner}/{repo}/traffic/popular/referrers"], - getUsersWithAccessToProtectedBranch: [ - "GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users" - ], - getViews: ["GET /repos/{owner}/{repo}/traffic/views"], - getWebhook: ["GET /repos/{owner}/{repo}/hooks/{hook_id}"], - getWebhookConfigForRepo: [ - "GET /repos/{owner}/{repo}/hooks/{hook_id}/config" - ], - getWebhookDelivery: [ - "GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}" - ], - listActivities: ["GET /repos/{owner}/{repo}/activity"], - listAutolinks: ["GET /repos/{owner}/{repo}/autolinks"], - listBranches: ["GET /repos/{owner}/{repo}/branches"], - listBranchesForHeadCommit: [ - "GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head" - ], - listCollaborators: ["GET /repos/{owner}/{repo}/collaborators"], - listCommentsForCommit: [ - "GET /repos/{owner}/{repo}/commits/{commit_sha}/comments" - ], - listCommitCommentsForRepo: ["GET /repos/{owner}/{repo}/comments"], - listCommitStatusesForRef: [ - "GET /repos/{owner}/{repo}/commits/{ref}/statuses" - ], - listCommits: ["GET /repos/{owner}/{repo}/commits"], - listContributors: ["GET /repos/{owner}/{repo}/contributors"], - listCustomDeploymentRuleIntegrations: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps" - ], - listDeployKeys: ["GET /repos/{owner}/{repo}/keys"], - listDeploymentBranchPolicies: [ - "GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies" - ], - listDeploymentStatuses: [ - "GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses" - ], - listDeployments: ["GET /repos/{owner}/{repo}/deployments"], - listForAuthenticatedUser: ["GET /user/repos"], - listForOrg: ["GET /orgs/{org}/repos"], - listForUser: ["GET /users/{username}/repos"], - listForks: ["GET /repos/{owner}/{repo}/forks"], - listInvitations: ["GET /repos/{owner}/{repo}/invitations"], - listInvitationsForAuthenticatedUser: ["GET /user/repository_invitations"], - listLanguages: ["GET /repos/{owner}/{repo}/languages"], - listPagesBuilds: ["GET /repos/{owner}/{repo}/pages/builds"], - listPublic: ["GET /repositories"], - listPullRequestsAssociatedWithCommit: [ - "GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls" - ], - listReleaseAssets: [ - "GET /repos/{owner}/{repo}/releases/{release_id}/assets" - ], - listReleases: ["GET /repos/{owner}/{repo}/releases"], - listTagProtection: ["GET /repos/{owner}/{repo}/tags/protection"], - listTags: ["GET /repos/{owner}/{repo}/tags"], - listTeams: ["GET /repos/{owner}/{repo}/teams"], - listWebhookDeliveries: [ - "GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries" - ], - listWebhooks: ["GET /repos/{owner}/{repo}/hooks"], - merge: ["POST /repos/{owner}/{repo}/merges"], - mergeUpstream: ["POST /repos/{owner}/{repo}/merge-upstream"], - pingWebhook: ["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"], - redeliverWebhookDelivery: [ - "POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts" - ], - removeAppAccessRestrictions: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps", - {}, - { mapToData: "apps" } - ], - removeCollaborator: [ - "DELETE /repos/{owner}/{repo}/collaborators/{username}" - ], - removeStatusCheckContexts: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts", - {}, - { mapToData: "contexts" } - ], - removeStatusCheckProtection: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks" - ], - removeTeamAccessRestrictions: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams", - {}, - { mapToData: "teams" } - ], - removeUserAccessRestrictions: [ - "DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users", - {}, - { mapToData: "users" } - ], - renameBranch: ["POST /repos/{owner}/{repo}/branches/{branch}/rename"], - replaceAllTopics: ["PUT /repos/{owner}/{repo}/topics"], - requestPagesBuild: ["POST /repos/{owner}/{repo}/pages/builds"], - setAdminBranchProtection: [ - "POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins" - ], - setAppAccessRestrictions: [ - "PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps", - {}, - { mapToData: "apps" } - ], - setStatusCheckContexts: [ - "PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts", - {}, - { mapToData: "contexts" } - ], - setTeamAccessRestrictions: [ - "PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams", - {}, - { mapToData: "teams" } - ], - setUserAccessRestrictions: [ - "PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users", - {}, - { mapToData: "users" } - ], - testPushWebhook: ["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"], - transfer: ["POST /repos/{owner}/{repo}/transfer"], - update: ["PATCH /repos/{owner}/{repo}"], - updateBranchProtection: [ - "PUT /repos/{owner}/{repo}/branches/{branch}/protection" - ], - updateCommitComment: ["PATCH /repos/{owner}/{repo}/comments/{comment_id}"], - updateDeploymentBranchPolicy: [ - "PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}" - ], - updateInformationAboutPagesSite: ["PUT /repos/{owner}/{repo}/pages"], - updateInvitation: [ - "PATCH /repos/{owner}/{repo}/invitations/{invitation_id}" - ], - updateOrgRuleset: ["PUT /orgs/{org}/rulesets/{ruleset_id}"], - updatePullRequestReviewProtection: [ - "PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews" - ], - updateRelease: ["PATCH /repos/{owner}/{repo}/releases/{release_id}"], - updateReleaseAsset: [ - "PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}" - ], - updateRepoRuleset: ["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"], - updateStatusCheckPotection: [ - "PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks", - {}, - { renamed: ["repos", "updateStatusCheckProtection"] } - ], - updateStatusCheckProtection: [ - "PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks" - ], - updateWebhook: ["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"], - updateWebhookConfigForRepo: [ - "PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config" - ], - uploadReleaseAsset: [ - "POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}", - { baseUrl: "https://uploads.github.com" } - ] - }, - search: { - code: ["GET /search/code"], - commits: ["GET /search/commits"], - issuesAndPullRequests: ["GET /search/issues"], - labels: ["GET /search/labels"], - repos: ["GET /search/repositories"], - topics: ["GET /search/topics"], - users: ["GET /search/users"] - }, - secretScanning: { - getAlert: [ - "GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}" - ], - listAlertsForEnterprise: [ - "GET /enterprises/{enterprise}/secret-scanning/alerts" - ], - listAlertsForOrg: ["GET /orgs/{org}/secret-scanning/alerts"], - listAlertsForRepo: ["GET /repos/{owner}/{repo}/secret-scanning/alerts"], - listLocationsForAlert: [ - "GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations" - ], - updateAlert: [ - "PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}" - ] - }, - securityAdvisories: { - createFork: [ - "POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks" - ], - createPrivateVulnerabilityReport: [ - "POST /repos/{owner}/{repo}/security-advisories/reports" - ], - createRepositoryAdvisory: [ - "POST /repos/{owner}/{repo}/security-advisories" - ], - createRepositoryAdvisoryCveRequest: [ - "POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve" - ], - getGlobalAdvisory: ["GET /advisories/{ghsa_id}"], - getRepositoryAdvisory: [ - "GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}" - ], - listGlobalAdvisories: ["GET /advisories"], - listOrgRepositoryAdvisories: ["GET /orgs/{org}/security-advisories"], - listRepositoryAdvisories: ["GET /repos/{owner}/{repo}/security-advisories"], - updateRepositoryAdvisory: [ - "PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}" - ] - }, - teams: { - addOrUpdateMembershipForUserInOrg: [ - "PUT /orgs/{org}/teams/{team_slug}/memberships/{username}" - ], - addOrUpdateProjectPermissionsInOrg: [ - "PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}" - ], - addOrUpdateRepoPermissionsInOrg: [ - "PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}" - ], - checkPermissionsForProjectInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/projects/{project_id}" - ], - checkPermissionsForRepoInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}" - ], - create: ["POST /orgs/{org}/teams"], - createDiscussionCommentInOrg: [ - "POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments" - ], - createDiscussionInOrg: ["POST /orgs/{org}/teams/{team_slug}/discussions"], - deleteDiscussionCommentInOrg: [ - "DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}" - ], - deleteDiscussionInOrg: [ - "DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}" - ], - deleteInOrg: ["DELETE /orgs/{org}/teams/{team_slug}"], - getByName: ["GET /orgs/{org}/teams/{team_slug}"], - getDiscussionCommentInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}" - ], - getDiscussionInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}" - ], - getMembershipForUserInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/memberships/{username}" - ], - list: ["GET /orgs/{org}/teams"], - listChildInOrg: ["GET /orgs/{org}/teams/{team_slug}/teams"], - listDiscussionCommentsInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments" - ], - listDiscussionsInOrg: ["GET /orgs/{org}/teams/{team_slug}/discussions"], - listForAuthenticatedUser: ["GET /user/teams"], - listMembersInOrg: ["GET /orgs/{org}/teams/{team_slug}/members"], - listPendingInvitationsInOrg: [ - "GET /orgs/{org}/teams/{team_slug}/invitations" - ], - listProjectsInOrg: ["GET /orgs/{org}/teams/{team_slug}/projects"], - listReposInOrg: ["GET /orgs/{org}/teams/{team_slug}/repos"], - removeMembershipForUserInOrg: [ - "DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}" - ], - removeProjectInOrg: [ - "DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}" - ], - removeRepoInOrg: [ - "DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}" - ], - updateDiscussionCommentInOrg: [ - "PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}" - ], - updateDiscussionInOrg: [ - "PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}" - ], - updateInOrg: ["PATCH /orgs/{org}/teams/{team_slug}"] - }, - users: { - addEmailForAuthenticated: [ - "POST /user/emails", - {}, - { renamed: ["users", "addEmailForAuthenticatedUser"] } - ], - addEmailForAuthenticatedUser: ["POST /user/emails"], - addSocialAccountForAuthenticatedUser: ["POST /user/social_accounts"], - block: ["PUT /user/blocks/{username}"], - checkBlocked: ["GET /user/blocks/{username}"], - checkFollowingForUser: ["GET /users/{username}/following/{target_user}"], - checkPersonIsFollowedByAuthenticated: ["GET /user/following/{username}"], - createGpgKeyForAuthenticated: [ - "POST /user/gpg_keys", - {}, - { renamed: ["users", "createGpgKeyForAuthenticatedUser"] } - ], - createGpgKeyForAuthenticatedUser: ["POST /user/gpg_keys"], - createPublicSshKeyForAuthenticated: [ - "POST /user/keys", - {}, - { renamed: ["users", "createPublicSshKeyForAuthenticatedUser"] } - ], - createPublicSshKeyForAuthenticatedUser: ["POST /user/keys"], - createSshSigningKeyForAuthenticatedUser: ["POST /user/ssh_signing_keys"], - deleteEmailForAuthenticated: [ - "DELETE /user/emails", - {}, - { renamed: ["users", "deleteEmailForAuthenticatedUser"] } - ], - deleteEmailForAuthenticatedUser: ["DELETE /user/emails"], - deleteGpgKeyForAuthenticated: [ - "DELETE /user/gpg_keys/{gpg_key_id}", - {}, - { renamed: ["users", "deleteGpgKeyForAuthenticatedUser"] } - ], - deleteGpgKeyForAuthenticatedUser: ["DELETE /user/gpg_keys/{gpg_key_id}"], - deletePublicSshKeyForAuthenticated: [ - "DELETE /user/keys/{key_id}", - {}, - { renamed: ["users", "deletePublicSshKeyForAuthenticatedUser"] } - ], - deletePublicSshKeyForAuthenticatedUser: ["DELETE /user/keys/{key_id}"], - deleteSocialAccountForAuthenticatedUser: ["DELETE /user/social_accounts"], - deleteSshSigningKeyForAuthenticatedUser: [ - "DELETE /user/ssh_signing_keys/{ssh_signing_key_id}" - ], - follow: ["PUT /user/following/{username}"], - getAuthenticated: ["GET /user"], - getByUsername: ["GET /users/{username}"], - getContextForUser: ["GET /users/{username}/hovercard"], - getGpgKeyForAuthenticated: [ - "GET /user/gpg_keys/{gpg_key_id}", - {}, - { renamed: ["users", "getGpgKeyForAuthenticatedUser"] } - ], - getGpgKeyForAuthenticatedUser: ["GET /user/gpg_keys/{gpg_key_id}"], - getPublicSshKeyForAuthenticated: [ - "GET /user/keys/{key_id}", - {}, - { renamed: ["users", "getPublicSshKeyForAuthenticatedUser"] } - ], - getPublicSshKeyForAuthenticatedUser: ["GET /user/keys/{key_id}"], - getSshSigningKeyForAuthenticatedUser: [ - "GET /user/ssh_signing_keys/{ssh_signing_key_id}" - ], - list: ["GET /users"], - listBlockedByAuthenticated: [ - "GET /user/blocks", - {}, - { renamed: ["users", "listBlockedByAuthenticatedUser"] } - ], - listBlockedByAuthenticatedUser: ["GET /user/blocks"], - listEmailsForAuthenticated: [ - "GET /user/emails", - {}, - { renamed: ["users", "listEmailsForAuthenticatedUser"] } - ], - listEmailsForAuthenticatedUser: ["GET /user/emails"], - listFollowedByAuthenticated: [ - "GET /user/following", - {}, - { renamed: ["users", "listFollowedByAuthenticatedUser"] } - ], - listFollowedByAuthenticatedUser: ["GET /user/following"], - listFollowersForAuthenticatedUser: ["GET /user/followers"], - listFollowersForUser: ["GET /users/{username}/followers"], - listFollowingForUser: ["GET /users/{username}/following"], - listGpgKeysForAuthenticated: [ - "GET /user/gpg_keys", - {}, - { renamed: ["users", "listGpgKeysForAuthenticatedUser"] } - ], - listGpgKeysForAuthenticatedUser: ["GET /user/gpg_keys"], - listGpgKeysForUser: ["GET /users/{username}/gpg_keys"], - listPublicEmailsForAuthenticated: [ - "GET /user/public_emails", - {}, - { renamed: ["users", "listPublicEmailsForAuthenticatedUser"] } - ], - listPublicEmailsForAuthenticatedUser: ["GET /user/public_emails"], - listPublicKeysForUser: ["GET /users/{username}/keys"], - listPublicSshKeysForAuthenticated: [ - "GET /user/keys", - {}, - { renamed: ["users", "listPublicSshKeysForAuthenticatedUser"] } - ], - listPublicSshKeysForAuthenticatedUser: ["GET /user/keys"], - listSocialAccountsForAuthenticatedUser: ["GET /user/social_accounts"], - listSocialAccountsForUser: ["GET /users/{username}/social_accounts"], - listSshSigningKeysForAuthenticatedUser: ["GET /user/ssh_signing_keys"], - listSshSigningKeysForUser: ["GET /users/{username}/ssh_signing_keys"], - setPrimaryEmailVisibilityForAuthenticated: [ - "PATCH /user/email/visibility", - {}, - { renamed: ["users", "setPrimaryEmailVisibilityForAuthenticatedUser"] } - ], - setPrimaryEmailVisibilityForAuthenticatedUser: [ - "PATCH /user/email/visibility" - ], - unblock: ["DELETE /user/blocks/{username}"], - unfollow: ["DELETE /user/following/{username}"], - updateAuthenticated: ["PATCH /user"] - } -}; -var endpoints_default = Endpoints; - -// pkg/dist-src/endpoints-to-methods.js -var endpointMethodsMap = /* @__PURE__ */ new Map(); -for (const [scope, endpoints] of Object.entries(endpoints_default)) { - for (const [methodName, endpoint] of Object.entries(endpoints)) { - const [route, defaults, decorations] = endpoint; - const [method, url] = route.split(/ /); - const endpointDefaults = Object.assign( - { - method, - url - }, - defaults - ); - if (!endpointMethodsMap.has(scope)) { - endpointMethodsMap.set(scope, /* @__PURE__ */ new Map()); - } - endpointMethodsMap.get(scope).set(methodName, { - scope, - methodName, - endpointDefaults, - decorations - }); - } -} -var handler = { - has({ scope }, methodName) { - return endpointMethodsMap.get(scope).has(methodName); - }, - getOwnPropertyDescriptor(target, methodName) { - return { - value: this.get(target, methodName), - // ensures method is in the cache - configurable: true, - writable: true, - enumerable: true - }; - }, - defineProperty(target, methodName, descriptor) { - Object.defineProperty(target.cache, methodName, descriptor); - return true; - }, - deleteProperty(target, methodName) { - delete target.cache[methodName]; - return true; - }, - ownKeys({ scope }) { - return [...endpointMethodsMap.get(scope).keys()]; - }, - set(target, methodName, value) { - return target.cache[methodName] = value; - }, - get({ octokit, scope, cache }, methodName) { - if (cache[methodName]) { - return cache[methodName]; - } - const method = endpointMethodsMap.get(scope).get(methodName); - if (!method) { - return void 0; - } - const { endpointDefaults, decorations } = method; - if (decorations) { - cache[methodName] = decorate( - octokit, - scope, - methodName, - endpointDefaults, - decorations - ); - } else { - cache[methodName] = octokit.request.defaults(endpointDefaults); - } - return cache[methodName]; - } -}; -function endpointsToMethods(octokit) { - const newMethods = {}; - for (const scope of endpointMethodsMap.keys()) { - newMethods[scope] = new Proxy({ octokit, scope, cache: {} }, handler); - } - return newMethods; -} -function decorate(octokit, scope, methodName, defaults, decorations) { - const requestWithDefaults = octokit.request.defaults(defaults); - function withDecorations(...args) { - let options = requestWithDefaults.endpoint.merge(...args); - if (decorations.mapToData) { - options = Object.assign({}, options, { - data: options[decorations.mapToData], - [decorations.mapToData]: void 0 - }); - return requestWithDefaults(options); - } - if (decorations.renamed) { - const [newScope, newMethodName] = decorations.renamed; - octokit.log.warn( - `octokit.${scope}.${methodName}() has been renamed to octokit.${newScope}.${newMethodName}()` - ); - } - if (decorations.deprecated) { - octokit.log.warn(decorations.deprecated); - } - if (decorations.renamedParameters) { - const options2 = requestWithDefaults.endpoint.merge(...args); - for (const [name, alias] of Object.entries( - decorations.renamedParameters - )) { - if (name in options2) { - octokit.log.warn( - `"${name}" parameter is deprecated for "octokit.${scope}.${methodName}()". Use "${alias}" instead` - ); - if (!(alias in options2)) { - options2[alias] = options2[name]; - } - delete options2[name]; - } - } - return requestWithDefaults(options2); - } - return requestWithDefaults(...args); - } - return Object.assign(withDecorations, requestWithDefaults); -} - -// pkg/dist-src/index.js -function restEndpointMethods(octokit) { - const api = endpointsToMethods(octokit); - return { - rest: api - }; -} -restEndpointMethods.VERSION = VERSION; -function legacyRestEndpointMethods(octokit) { - const api = endpointsToMethods(octokit); - return { - ...api, - rest: api - }; -} -legacyRestEndpointMethods.VERSION = VERSION; -// Annotate the CommonJS export names for ESM import in node: -0 && (0); - - -/***/ }), - -/***/ 33450: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - -var __create = Object.create; -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __getProtoOf = Object.getPrototypeOf; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( - // If the importer is in node compatibility mode or this is not an ESM - // file that has been converted to a CommonJS file using a Babel- - // compatible transform (i.e. "__esModule" has not been set), then set - // "default" to the CommonJS "module.exports" for node compatibility. - isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, - mod -)); -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// pkg/dist-src/index.js -var dist_src_exports = {}; -__export(dist_src_exports, { - VERSION: () => VERSION, - retry: () => retry -}); -module.exports = __toCommonJS(dist_src_exports); -var import_core = __nccwpck_require__(61897); - -// pkg/dist-src/error-request.js -async function errorRequest(state, octokit, error, options) { - if (!error.request || !error.request.request) { - throw error; - } - if (error.status >= 400 && !state.doNotRetry.includes(error.status)) { - const retries = options.request.retries != null ? options.request.retries : state.retries; - const retryAfter = Math.pow((options.request.retryCount || 0) + 1, 2); - throw octokit.retry.retryRequest(error, retries, retryAfter); - } - throw error; -} - -// pkg/dist-src/wrap-request.js -var import_light = __toESM(__nccwpck_require__(63251)); -var import_request_error = __nccwpck_require__(93708); -async function wrapRequest(state, octokit, request, options) { - const limiter = new import_light.default(); - limiter.on("failed", function(error, info) { - const maxRetries = ~~error.request.request.retries; - const after = ~~error.request.request.retryAfter; - options.request.retryCount = info.retryCount + 1; - if (maxRetries > info.retryCount) { - return after * state.retryAfterBaseValue; - } - }); - return limiter.schedule( - requestWithGraphqlErrorHandling.bind(null, state, octokit, request), - options - ); -} -async function requestWithGraphqlErrorHandling(state, octokit, request, options) { - const response = await request(request, options); - if (response.data && response.data.errors && /Something went wrong while executing your query/.test( - response.data.errors[0].message - )) { - const error = new import_request_error.RequestError(response.data.errors[0].message, 500, { - request: options, - response - }); - return errorRequest(state, octokit, error, options); - } - return response; -} - -// pkg/dist-src/index.js -var VERSION = "6.0.1"; -function retry(octokit, octokitOptions) { - const state = Object.assign( - { - enabled: true, - retryAfterBaseValue: 1e3, - doNotRetry: [400, 401, 403, 404, 422, 451], - retries: 3 - }, - octokitOptions.retry - ); - if (state.enabled) { - octokit.hook.error("request", errorRequest.bind(null, state, octokit)); - octokit.hook.wrap("request", wrapRequest.bind(null, state, octokit)); - } - return { - retry: { - retryRequest: (error, retries, retryAfter) => { - error.request.request = Object.assign({}, error.request.request, { - retries, - retryAfter - }); - return error; - } - } - }; -} -retry.VERSION = VERSION; -// Annotate the CommonJS export names for ESM import in node: -0 && (0); - - -/***/ }), - -/***/ 93708: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - -var __create = Object.create; -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __getProtoOf = Object.getPrototypeOf; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( - // If the importer is in node compatibility mode or this is not an ESM - // file that has been converted to a CommonJS file using a Babel- - // compatible transform (i.e. "__esModule" has not been set), then set - // "default" to the CommonJS "module.exports" for node compatibility. - isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, - mod -)); -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// pkg/dist-src/index.js -var dist_src_exports = {}; -__export(dist_src_exports, { - RequestError: () => RequestError -}); -module.exports = __toCommonJS(dist_src_exports); -var import_deprecation = __nccwpck_require__(14150); -var import_once = __toESM(__nccwpck_require__(55560)); -var logOnceCode = (0, import_once.default)((deprecation) => console.warn(deprecation)); -var logOnceHeaders = (0, import_once.default)((deprecation) => console.warn(deprecation)); -var RequestError = class extends Error { - constructor(message, statusCode, options) { - super(message); - if (Error.captureStackTrace) { - Error.captureStackTrace(this, this.constructor); - } - this.name = "HttpError"; - this.status = statusCode; - let headers; - if ("headers" in options && typeof options.headers !== "undefined") { - headers = options.headers; - } - if ("response" in options) { - this.response = options.response; - headers = options.response.headers; - } - const requestCopy = Object.assign({}, options.request); - if (options.request.headers.authorization) { - requestCopy.headers = Object.assign({}, options.request.headers, { - authorization: options.request.headers.authorization.replace( - / .*$/, - " [REDACTED]" - ) - }); - } - requestCopy.url = requestCopy.url.replace(/\bclient_secret=\w+/g, "client_secret=[REDACTED]").replace(/\baccess_token=\w+/g, "access_token=[REDACTED]"); - this.request = requestCopy; - Object.defineProperty(this, "code", { - get() { - logOnceCode( - new import_deprecation.Deprecation( - "[@octokit/request-error] `error.code` is deprecated, use `error.status`." - ) - ); - return statusCode; - } - }); - Object.defineProperty(this, "headers", { - get() { - logOnceHeaders( - new import_deprecation.Deprecation( - "[@octokit/request-error] `error.headers` is deprecated, use `error.response.headers`." - ) - ); - return headers || {}; - } - }); - } -}; -// Annotate the CommonJS export names for ESM import in node: -0 && (0); - - -/***/ }), - -/***/ 66255: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// pkg/dist-src/index.js -var dist_src_exports = {}; -__export(dist_src_exports, { - request: () => request -}); -module.exports = __toCommonJS(dist_src_exports); -var import_endpoint = __nccwpck_require__(54471); -var import_universal_user_agent = __nccwpck_require__(33843); - -// pkg/dist-src/version.js -var VERSION = "8.4.0"; - -// pkg/dist-src/is-plain-object.js -function isPlainObject(value) { - if (typeof value !== "object" || value === null) - return false; - if (Object.prototype.toString.call(value) !== "[object Object]") - return false; - const proto = Object.getPrototypeOf(value); - if (proto === null) - return true; - const Ctor = Object.prototype.hasOwnProperty.call(proto, "constructor") && proto.constructor; - return typeof Ctor === "function" && Ctor instanceof Ctor && Function.prototype.call(Ctor) === Function.prototype.call(value); -} - -// pkg/dist-src/fetch-wrapper.js -var import_request_error = __nccwpck_require__(93708); - -// pkg/dist-src/get-buffer-response.js -function getBufferResponse(response) { - return response.arrayBuffer(); -} - -// pkg/dist-src/fetch-wrapper.js -function fetchWrapper(requestOptions) { - var _a, _b, _c, _d; - const log = requestOptions.request && requestOptions.request.log ? requestOptions.request.log : console; - const parseSuccessResponseBody = ((_a = requestOptions.request) == null ? void 0 : _a.parseSuccessResponseBody) !== false; - if (isPlainObject(requestOptions.body) || Array.isArray(requestOptions.body)) { - requestOptions.body = JSON.stringify(requestOptions.body); - } - let headers = {}; - let status; - let url; - let { fetch } = globalThis; - if ((_b = requestOptions.request) == null ? void 0 : _b.fetch) { - fetch = requestOptions.request.fetch; - } - if (!fetch) { - throw new Error( - "fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing" - ); - } - return fetch(requestOptions.url, { - method: requestOptions.method, - body: requestOptions.body, - redirect: (_c = requestOptions.request) == null ? void 0 : _c.redirect, - headers: requestOptions.headers, - signal: (_d = requestOptions.request) == null ? void 0 : _d.signal, - // duplex must be set if request.body is ReadableStream or Async Iterables. - // See https://fetch.spec.whatwg.org/#dom-requestinit-duplex. - ...requestOptions.body && { duplex: "half" } - }).then(async (response) => { - url = response.url; - status = response.status; - for (const keyAndValue of response.headers) { - headers[keyAndValue[0]] = keyAndValue[1]; - } - if ("deprecation" in headers) { - const matches = headers.link && headers.link.match(/<([^>]+)>; rel="deprecation"/); - const deprecationLink = matches && matches.pop(); - log.warn( - `[@octokit/request] "${requestOptions.method} ${requestOptions.url}" is deprecated. It is scheduled to be removed on ${headers.sunset}${deprecationLink ? `. See ${deprecationLink}` : ""}` - ); - } - if (status === 204 || status === 205) { - return; - } - if (requestOptions.method === "HEAD") { - if (status < 400) { - return; - } - throw new import_request_error.RequestError(response.statusText, status, { - response: { - url, - status, - headers, - data: void 0 - }, - request: requestOptions - }); - } - if (status === 304) { - throw new import_request_error.RequestError("Not modified", status, { - response: { - url, - status, - headers, - data: await getResponseData(response) - }, - request: requestOptions - }); - } - if (status >= 400) { - const data = await getResponseData(response); - const error = new import_request_error.RequestError(toErrorMessage(data), status, { - response: { - url, - status, - headers, - data - }, - request: requestOptions - }); - throw error; - } - return parseSuccessResponseBody ? await getResponseData(response) : response.body; - }).then((data) => { - return { - status, - url, - headers, - data - }; - }).catch((error) => { - if (error instanceof import_request_error.RequestError) - throw error; - else if (error.name === "AbortError") - throw error; - let message = error.message; - if (error.name === "TypeError" && "cause" in error) { - if (error.cause instanceof Error) { - message = error.cause.message; - } else if (typeof error.cause === "string") { - message = error.cause; - } - } - throw new import_request_error.RequestError(message, 500, { - request: requestOptions - }); - }); -} -async function getResponseData(response) { - const contentType = response.headers.get("content-type"); - if (/application\/json/.test(contentType)) { - return response.json().catch(() => response.text()).catch(() => ""); - } - if (!contentType || /^text\/|charset=utf-8$/.test(contentType)) { - return response.text(); - } - return getBufferResponse(response); -} -function toErrorMessage(data) { - if (typeof data === "string") - return data; - let suffix; - if ("documentation_url" in data) { - suffix = ` - ${data.documentation_url}`; - } else { - suffix = ""; - } - if ("message" in data) { - if (Array.isArray(data.errors)) { - return `${data.message}: ${data.errors.map(JSON.stringify).join(", ")}${suffix}`; - } - return `${data.message}${suffix}`; - } - return `Unknown error: ${JSON.stringify(data)}`; -} - -// pkg/dist-src/with-defaults.js -function withDefaults(oldEndpoint, newDefaults) { - const endpoint2 = oldEndpoint.defaults(newDefaults); - const newApi = function(route, parameters) { - const endpointOptions = endpoint2.merge(route, parameters); - if (!endpointOptions.request || !endpointOptions.request.hook) { - return fetchWrapper(endpoint2.parse(endpointOptions)); - } - const request2 = (route2, parameters2) => { - return fetchWrapper( - endpoint2.parse(endpoint2.merge(route2, parameters2)) - ); - }; - Object.assign(request2, { - endpoint: endpoint2, - defaults: withDefaults.bind(null, endpoint2) - }); - return endpointOptions.request.hook(request2, endpointOptions); - }; - return Object.assign(newApi, { - endpoint: endpoint2, - defaults: withDefaults.bind(null, endpoint2) - }); -} - -// pkg/dist-src/index.js -var request = withDefaults(import_endpoint.endpoint, { - headers: { - "user-agent": `octokit-request.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}` - } -}); -// Annotate the CommonJS export names for ESM import in node: -0 && (0); - - -/***/ }), - -/***/ 65772: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// pkg/dist-src/index.js -var dist_src_exports = {}; -__export(dist_src_exports, { - Octokit: () => Octokit -}); -module.exports = __toCommonJS(dist_src_exports); -var import_core = __nccwpck_require__(61897); -var import_plugin_request_log = __nccwpck_require__(6966); -var import_plugin_paginate_rest = __nccwpck_require__(38082); -var import_plugin_rest_endpoint_methods = __nccwpck_require__(84935); - -// pkg/dist-src/version.js -var VERSION = "20.1.1"; - -// pkg/dist-src/index.js -var Octokit = import_core.Octokit.plugin( - import_plugin_request_log.requestLog, - import_plugin_rest_endpoint_methods.legacyRestEndpointMethods, - import_plugin_paginate_rest.paginateRest -).defaults({ - userAgent: `octokit-rest.js/${VERSION}` -}); -// Annotate the CommonJS export names for ESM import in node: -0 && (0); - - -/***/ }), - -/***/ 45225: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TypeCompiler = exports.Policy = exports.TypeCompilerTypeGuardError = exports.TypeCompilerUnknownTypeError = exports.TypeCheck = void 0; -const index_1 = __nccwpck_require__(90023); -const index_2 = __nccwpck_require__(4672); -const index_3 = __nccwpck_require__(45918); -const index_4 = __nccwpck_require__(94526); -const index_5 = __nccwpck_require__(75743); -const index_6 = __nccwpck_require__(73849); -const index_7 = __nccwpck_require__(48121); -const index_8 = __nccwpck_require__(97759); -const index_9 = __nccwpck_require__(30658); -const extends_undefined_1 = __nccwpck_require__(1409); -const index_10 = __nccwpck_require__(22346); -// ------------------------------------------------------------------ -// ValueGuard -// ------------------------------------------------------------------ -const index_11 = __nccwpck_require__(19522); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_1 = __nccwpck_require__(20109); -// ------------------------------------------------------------------ -// TypeCheck -// ------------------------------------------------------------------ -class TypeCheck { - constructor(schema, references, checkFunc, code) { - this.schema = schema; - this.references = references; - this.checkFunc = checkFunc; - this.code = code; - this.hasTransform = (0, index_1.HasTransform)(schema, references); - } - /** Returns the generated assertion code used to validate this type. */ - Code() { - return this.code; - } - /** Returns an iterator for each error in this value. */ - Errors(value) { - return (0, index_2.Errors)(this.schema, this.references, value); - } - /** Returns true if the value matches the compiled type. */ - Check(value) { - return this.checkFunc(value); - } - /** Decodes a value or throws if error */ - Decode(value) { - if (!this.checkFunc(value)) - throw new index_1.TransformDecodeCheckError(this.schema, value, this.Errors(value).First()); - return this.hasTransform ? (0, index_1.TransformDecode)(this.schema, this.references, value) : value; - } - /** Encodes a value or throws if error */ - Encode(value) { - const encoded = this.hasTransform ? (0, index_1.TransformEncode)(this.schema, this.references, value) : value; - if (!this.checkFunc(encoded)) - throw new index_1.TransformEncodeCheckError(this.schema, value, this.Errors(value).First()); - return encoded; - } -} -exports.TypeCheck = TypeCheck; -// ------------------------------------------------------------------ -// Character -// ------------------------------------------------------------------ -var Character; -(function (Character) { - function DollarSign(code) { - return code === 36; - } - Character.DollarSign = DollarSign; - function IsUnderscore(code) { - return code === 95; - } - Character.IsUnderscore = IsUnderscore; - function IsAlpha(code) { - return (code >= 65 && code <= 90) || (code >= 97 && code <= 122); - } - Character.IsAlpha = IsAlpha; - function IsNumeric(code) { - return code >= 48 && code <= 57; - } - Character.IsNumeric = IsNumeric; -})(Character || (Character = {})); -// ------------------------------------------------------------------ -// MemberExpression -// ------------------------------------------------------------------ -var MemberExpression; -(function (MemberExpression) { - function IsFirstCharacterNumeric(value) { - if (value.length === 0) - return false; - return Character.IsNumeric(value.charCodeAt(0)); - } - function IsAccessor(value) { - if (IsFirstCharacterNumeric(value)) - return false; - for (let i = 0; i < value.length; i++) { - const code = value.charCodeAt(i); - const check = Character.IsAlpha(code) || Character.IsNumeric(code) || Character.DollarSign(code) || Character.IsUnderscore(code); - if (!check) - return false; - } - return true; - } - function EscapeHyphen(key) { - return key.replace(/'/g, "\\'"); - } - function Encode(object, key) { - return IsAccessor(key) ? `${object}.${key}` : `${object}['${EscapeHyphen(key)}']`; - } - MemberExpression.Encode = Encode; -})(MemberExpression || (MemberExpression = {})); -// ------------------------------------------------------------------ -// Identifier -// ------------------------------------------------------------------ -var Identifier; -(function (Identifier) { - function Encode($id) { - const buffer = []; - for (let i = 0; i < $id.length; i++) { - const code = $id.charCodeAt(i); - if (Character.IsNumeric(code) || Character.IsAlpha(code)) { - buffer.push($id.charAt(i)); - } - else { - buffer.push(`_${code}_`); - } - } - return buffer.join('').replace(/__/g, '_'); - } - Identifier.Encode = Encode; -})(Identifier || (Identifier = {})); -// ------------------------------------------------------------------ -// LiteralString -// ------------------------------------------------------------------ -var LiteralString; -(function (LiteralString) { - function Escape(content) { - return content.replace(/'/g, "\\'"); - } - LiteralString.Escape = Escape; -})(LiteralString || (LiteralString = {})); -// ------------------------------------------------------------------ -// Errors -// ------------------------------------------------------------------ -class TypeCompilerUnknownTypeError extends index_4.TypeBoxError { - constructor(schema) { - super('Unknown type'); - this.schema = schema; - } -} -exports.TypeCompilerUnknownTypeError = TypeCompilerUnknownTypeError; -class TypeCompilerTypeGuardError extends index_4.TypeBoxError { - constructor(schema) { - super('Preflight validation check failed to guard for the given schema'); - this.schema = schema; - } -} -exports.TypeCompilerTypeGuardError = TypeCompilerTypeGuardError; -// ------------------------------------------------------------------ -// Policy -// ------------------------------------------------------------------ -var Policy; -(function (Policy) { - function IsExactOptionalProperty(value, key, expression) { - return index_3.TypeSystemPolicy.ExactOptionalPropertyTypes ? `('${key}' in ${value} ? ${expression} : true)` : `(${MemberExpression.Encode(value, key)} !== undefined ? ${expression} : true)`; - } - Policy.IsExactOptionalProperty = IsExactOptionalProperty; - function IsObjectLike(value) { - return !index_3.TypeSystemPolicy.AllowArrayObject ? `(typeof ${value} === 'object' && ${value} !== null && !Array.isArray(${value}))` : `(typeof ${value} === 'object' && ${value} !== null)`; - } - Policy.IsObjectLike = IsObjectLike; - function IsRecordLike(value) { - return !index_3.TypeSystemPolicy.AllowArrayObject - ? `(typeof ${value} === 'object' && ${value} !== null && !Array.isArray(${value}) && !(${value} instanceof Date) && !(${value} instanceof Uint8Array))` - : `(typeof ${value} === 'object' && ${value} !== null && !(${value} instanceof Date) && !(${value} instanceof Uint8Array))`; - } - Policy.IsRecordLike = IsRecordLike; - function IsNumberLike(value) { - return !index_3.TypeSystemPolicy.AllowNaN ? `(typeof ${value} === 'number' && Number.isFinite(${value}))` : `typeof ${value} === 'number'`; - } - Policy.IsNumberLike = IsNumberLike; - function IsVoidLike(value) { - return index_3.TypeSystemPolicy.AllowNullVoid ? `(${value} === undefined || ${value} === null)` : `${value} === undefined`; - } - Policy.IsVoidLike = IsVoidLike; -})(Policy || (exports.Policy = Policy = {})); -/** Compiles Types for Runtime Type Checking */ -var TypeCompiler; -(function (TypeCompiler) { - // ---------------------------------------------------------------- - // Guards - // ---------------------------------------------------------------- - function IsAnyOrUnknown(schema) { - return schema[index_7.Kind] === 'Any' || schema[index_7.Kind] === 'Unknown'; - } - // ---------------------------------------------------------------- - // Types - // ---------------------------------------------------------------- - function* FromAny(schema, references, value) { - yield 'true'; - } - function* FromArray(schema, references, value) { - yield `Array.isArray(${value})`; - const [parameter, accumulator] = [CreateParameter('value', 'any'), CreateParameter('acc', 'number')]; - if ((0, index_11.IsNumber)(schema.maxItems)) - yield `${value}.length <= ${schema.maxItems}`; - if ((0, index_11.IsNumber)(schema.minItems)) - yield `${value}.length >= ${schema.minItems}`; - const elementExpression = CreateExpression(schema.items, references, 'value'); - yield `${value}.every((${parameter}) => ${elementExpression})`; - if ((0, type_1.IsSchema)(schema.contains) || (0, index_11.IsNumber)(schema.minContains) || (0, index_11.IsNumber)(schema.maxContains)) { - const containsSchema = (0, type_1.IsSchema)(schema.contains) ? schema.contains : (0, index_10.Never)(); - const checkExpression = CreateExpression(containsSchema, references, 'value'); - const checkMinContains = (0, index_11.IsNumber)(schema.minContains) ? [`(count >= ${schema.minContains})`] : []; - const checkMaxContains = (0, index_11.IsNumber)(schema.maxContains) ? [`(count <= ${schema.maxContains})`] : []; - const checkCount = `const count = value.reduce((${accumulator}, ${parameter}) => ${checkExpression} ? acc + 1 : acc, 0)`; - const check = [`(count > 0)`, ...checkMinContains, ...checkMaxContains].join(' && '); - yield `((${parameter}) => { ${checkCount}; return ${check}})(${value})`; - } - if (schema.uniqueItems === true) { - const check = `const hashed = hash(element); if(set.has(hashed)) { return false } else { set.add(hashed) } } return true`; - const block = `const set = new Set(); for(const element of value) { ${check} }`; - yield `((${parameter}) => { ${block} )(${value})`; - } - } - function* FromAsyncIterator(schema, references, value) { - yield `(typeof value === 'object' && Symbol.asyncIterator in ${value})`; - } - function* FromBigInt(schema, references, value) { - yield `(typeof ${value} === 'bigint')`; - if ((0, index_11.IsBigInt)(schema.exclusiveMaximum)) - yield `${value} < BigInt(${schema.exclusiveMaximum})`; - if ((0, index_11.IsBigInt)(schema.exclusiveMinimum)) - yield `${value} > BigInt(${schema.exclusiveMinimum})`; - if ((0, index_11.IsBigInt)(schema.maximum)) - yield `${value} <= BigInt(${schema.maximum})`; - if ((0, index_11.IsBigInt)(schema.minimum)) - yield `${value} >= BigInt(${schema.minimum})`; - if ((0, index_11.IsBigInt)(schema.multipleOf)) - yield `(${value} % BigInt(${schema.multipleOf})) === 0`; - } - function* FromBoolean(schema, references, value) { - yield `(typeof ${value} === 'boolean')`; - } - function* FromConstructor(schema, references, value) { - yield* Visit(schema.returns, references, `${value}.prototype`); - } - function* FromDate(schema, references, value) { - yield `(${value} instanceof Date) && Number.isFinite(${value}.getTime())`; - if ((0, index_11.IsNumber)(schema.exclusiveMaximumTimestamp)) - yield `${value}.getTime() < ${schema.exclusiveMaximumTimestamp}`; - if ((0, index_11.IsNumber)(schema.exclusiveMinimumTimestamp)) - yield `${value}.getTime() > ${schema.exclusiveMinimumTimestamp}`; - if ((0, index_11.IsNumber)(schema.maximumTimestamp)) - yield `${value}.getTime() <= ${schema.maximumTimestamp}`; - if ((0, index_11.IsNumber)(schema.minimumTimestamp)) - yield `${value}.getTime() >= ${schema.minimumTimestamp}`; - if ((0, index_11.IsNumber)(schema.multipleOfTimestamp)) - yield `(${value}.getTime() % ${schema.multipleOfTimestamp}) === 0`; - } - function* FromFunction(schema, references, value) { - yield `(typeof ${value} === 'function')`; - } - function* FromInteger(schema, references, value) { - yield `(typeof ${value} === 'number' && Number.isInteger(${value}))`; - if ((0, index_11.IsNumber)(schema.exclusiveMaximum)) - yield `${value} < ${schema.exclusiveMaximum}`; - if ((0, index_11.IsNumber)(schema.exclusiveMinimum)) - yield `${value} > ${schema.exclusiveMinimum}`; - if ((0, index_11.IsNumber)(schema.maximum)) - yield `${value} <= ${schema.maximum}`; - if ((0, index_11.IsNumber)(schema.minimum)) - yield `${value} >= ${schema.minimum}`; - if ((0, index_11.IsNumber)(schema.multipleOf)) - yield `(${value} % ${schema.multipleOf}) === 0`; - } - function* FromIntersect(schema, references, value) { - const check1 = schema.allOf.map((schema) => CreateExpression(schema, references, value)).join(' && '); - if (schema.unevaluatedProperties === false) { - const keyCheck = CreateVariable(`${new RegExp((0, index_9.KeyOfPattern)(schema))};`); - const check2 = `Object.getOwnPropertyNames(${value}).every(key => ${keyCheck}.test(key))`; - yield `(${check1} && ${check2})`; - } - else if ((0, type_1.IsSchema)(schema.unevaluatedProperties)) { - const keyCheck = CreateVariable(`${new RegExp((0, index_9.KeyOfPattern)(schema))};`); - const check2 = `Object.getOwnPropertyNames(${value}).every(key => ${keyCheck}.test(key) || ${CreateExpression(schema.unevaluatedProperties, references, `${value}[key]`)})`; - yield `(${check1} && ${check2})`; - } - else { - yield `(${check1})`; - } - } - function* FromIterator(schema, references, value) { - yield `(typeof value === 'object' && Symbol.iterator in ${value})`; - } - function* FromLiteral(schema, references, value) { - if (typeof schema.const === 'number' || typeof schema.const === 'boolean') { - yield `(${value} === ${schema.const})`; - } - else { - yield `(${value} === '${LiteralString.Escape(schema.const)}')`; - } - } - function* FromNever(schema, references, value) { - yield `false`; - } - function* FromNot(schema, references, value) { - const expression = CreateExpression(schema.not, references, value); - yield `(!${expression})`; - } - function* FromNull(schema, references, value) { - yield `(${value} === null)`; - } - function* FromNumber(schema, references, value) { - yield Policy.IsNumberLike(value); - if ((0, index_11.IsNumber)(schema.exclusiveMaximum)) - yield `${value} < ${schema.exclusiveMaximum}`; - if ((0, index_11.IsNumber)(schema.exclusiveMinimum)) - yield `${value} > ${schema.exclusiveMinimum}`; - if ((0, index_11.IsNumber)(schema.maximum)) - yield `${value} <= ${schema.maximum}`; - if ((0, index_11.IsNumber)(schema.minimum)) - yield `${value} >= ${schema.minimum}`; - if ((0, index_11.IsNumber)(schema.multipleOf)) - yield `(${value} % ${schema.multipleOf}) === 0`; - } - function* FromObject(schema, references, value) { - yield Policy.IsObjectLike(value); - if ((0, index_11.IsNumber)(schema.minProperties)) - yield `Object.getOwnPropertyNames(${value}).length >= ${schema.minProperties}`; - if ((0, index_11.IsNumber)(schema.maxProperties)) - yield `Object.getOwnPropertyNames(${value}).length <= ${schema.maxProperties}`; - const knownKeys = Object.getOwnPropertyNames(schema.properties); - for (const knownKey of knownKeys) { - const memberExpression = MemberExpression.Encode(value, knownKey); - const property = schema.properties[knownKey]; - if (schema.required && schema.required.includes(knownKey)) { - yield* Visit(property, references, memberExpression); - if ((0, extends_undefined_1.ExtendsUndefinedCheck)(property) || IsAnyOrUnknown(property)) - yield `('${knownKey}' in ${value})`; - } - else { - const expression = CreateExpression(property, references, memberExpression); - yield Policy.IsExactOptionalProperty(value, knownKey, expression); - } - } - if (schema.additionalProperties === false) { - if (schema.required && schema.required.length === knownKeys.length) { - yield `Object.getOwnPropertyNames(${value}).length === ${knownKeys.length}`; - } - else { - const keys = `[${knownKeys.map((key) => `'${key}'`).join(', ')}]`; - yield `Object.getOwnPropertyNames(${value}).every(key => ${keys}.includes(key))`; - } - } - if (typeof schema.additionalProperties === 'object') { - const expression = CreateExpression(schema.additionalProperties, references, `${value}[key]`); - const keys = `[${knownKeys.map((key) => `'${key}'`).join(', ')}]`; - yield `(Object.getOwnPropertyNames(${value}).every(key => ${keys}.includes(key) || ${expression}))`; - } - } - function* FromPromise(schema, references, value) { - yield `(typeof value === 'object' && typeof ${value}.then === 'function')`; - } - function* FromRecord(schema, references, value) { - yield Policy.IsRecordLike(value); - if ((0, index_11.IsNumber)(schema.minProperties)) - yield `Object.getOwnPropertyNames(${value}).length >= ${schema.minProperties}`; - if ((0, index_11.IsNumber)(schema.maxProperties)) - yield `Object.getOwnPropertyNames(${value}).length <= ${schema.maxProperties}`; - const [patternKey, patternSchema] = Object.entries(schema.patternProperties)[0]; - const variable = CreateVariable(`${new RegExp(patternKey)}`); - const check1 = CreateExpression(patternSchema, references, 'value'); - const check2 = (0, type_1.IsSchema)(schema.additionalProperties) ? CreateExpression(schema.additionalProperties, references, value) : schema.additionalProperties === false ? 'false' : 'true'; - const expression = `(${variable}.test(key) ? ${check1} : ${check2})`; - yield `(Object.entries(${value}).every(([key, value]) => ${expression}))`; - } - function* FromRef(schema, references, value) { - const target = (0, index_5.Deref)(schema, references); - // Reference: If we have seen this reference before we can just yield and return the function call. - // If this isn't the case we defer to visit to generate and set the function for subsequent passes. - if (state.functions.has(schema.$ref)) - return yield `${CreateFunctionName(schema.$ref)}(${value})`; - yield* Visit(target, references, value); - } - function* FromRegExp(schema, references, value) { - const variable = CreateVariable(`${new RegExp(schema.source, schema.flags)};`); - yield `(typeof ${value} === 'string')`; - if ((0, index_11.IsNumber)(schema.maxLength)) - yield `${value}.length <= ${schema.maxLength}`; - if ((0, index_11.IsNumber)(schema.minLength)) - yield `${value}.length >= ${schema.minLength}`; - yield `${variable}.test(${value})`; - } - function* FromString(schema, references, value) { - yield `(typeof ${value} === 'string')`; - if ((0, index_11.IsNumber)(schema.maxLength)) - yield `${value}.length <= ${schema.maxLength}`; - if ((0, index_11.IsNumber)(schema.minLength)) - yield `${value}.length >= ${schema.minLength}`; - if (schema.pattern !== undefined) { - const variable = CreateVariable(`${new RegExp(schema.pattern)};`); - yield `${variable}.test(${value})`; - } - if (schema.format !== undefined) { - yield `format('${schema.format}', ${value})`; - } - } - function* FromSymbol(schema, references, value) { - yield `(typeof ${value} === 'symbol')`; - } - function* FromTemplateLiteral(schema, references, value) { - yield `(typeof ${value} === 'string')`; - const variable = CreateVariable(`${new RegExp(schema.pattern)};`); - yield `${variable}.test(${value})`; - } - function* FromThis(schema, references, value) { - // Note: This types are assured to be hoisted prior to this call. Just yield the function. - yield `${CreateFunctionName(schema.$ref)}(${value})`; - } - function* FromTuple(schema, references, value) { - yield `Array.isArray(${value})`; - if (schema.items === undefined) - return yield `${value}.length === 0`; - yield `(${value}.length === ${schema.maxItems})`; - for (let i = 0; i < schema.items.length; i++) { - const expression = CreateExpression(schema.items[i], references, `${value}[${i}]`); - yield `${expression}`; - } - } - function* FromUndefined(schema, references, value) { - yield `${value} === undefined`; - } - function* FromUnion(schema, references, value) { - const expressions = schema.anyOf.map((schema) => CreateExpression(schema, references, value)); - yield `(${expressions.join(' || ')})`; - } - function* FromUint8Array(schema, references, value) { - yield `${value} instanceof Uint8Array`; - if ((0, index_11.IsNumber)(schema.maxByteLength)) - yield `(${value}.length <= ${schema.maxByteLength})`; - if ((0, index_11.IsNumber)(schema.minByteLength)) - yield `(${value}.length >= ${schema.minByteLength})`; - } - function* FromUnknown(schema, references, value) { - yield 'true'; - } - function* FromVoid(schema, references, value) { - yield Policy.IsVoidLike(value); - } - function* FromKind(schema, references, value) { - const instance = state.instances.size; - state.instances.set(instance, schema); - yield `kind('${schema[index_7.Kind]}', ${instance}, ${value})`; - } - function* Visit(schema, references, value, useHoisting = true) { - const references_ = (0, index_11.IsString)(schema.$id) ? [...references, schema] : references; - const schema_ = schema; - // -------------------------------------------------------------- - // Hoisting - // -------------------------------------------------------------- - if (useHoisting && (0, index_11.IsString)(schema.$id)) { - const functionName = CreateFunctionName(schema.$id); - if (state.functions.has(functionName)) { - return yield `${functionName}(${value})`; - } - else { - const functionCode = CreateFunction(functionName, schema, references, 'value', false); - state.functions.set(functionName, functionCode); - return yield `${functionName}(${value})`; - } - } - switch (schema_[index_7.Kind]) { - case 'Any': - return yield* FromAny(schema_, references_, value); - case 'Array': - return yield* FromArray(schema_, references_, value); - case 'AsyncIterator': - return yield* FromAsyncIterator(schema_, references_, value); - case 'BigInt': - return yield* FromBigInt(schema_, references_, value); - case 'Boolean': - return yield* FromBoolean(schema_, references_, value); - case 'Constructor': - return yield* FromConstructor(schema_, references_, value); - case 'Date': - return yield* FromDate(schema_, references_, value); - case 'Function': - return yield* FromFunction(schema_, references_, value); - case 'Integer': - return yield* FromInteger(schema_, references_, value); - case 'Intersect': - return yield* FromIntersect(schema_, references_, value); - case 'Iterator': - return yield* FromIterator(schema_, references_, value); - case 'Literal': - return yield* FromLiteral(schema_, references_, value); - case 'Never': - return yield* FromNever(schema_, references_, value); - case 'Not': - return yield* FromNot(schema_, references_, value); - case 'Null': - return yield* FromNull(schema_, references_, value); - case 'Number': - return yield* FromNumber(schema_, references_, value); - case 'Object': - return yield* FromObject(schema_, references_, value); - case 'Promise': - return yield* FromPromise(schema_, references_, value); - case 'Record': - return yield* FromRecord(schema_, references_, value); - case 'Ref': - return yield* FromRef(schema_, references_, value); - case 'RegExp': - return yield* FromRegExp(schema_, references_, value); - case 'String': - return yield* FromString(schema_, references_, value); - case 'Symbol': - return yield* FromSymbol(schema_, references_, value); - case 'TemplateLiteral': - return yield* FromTemplateLiteral(schema_, references_, value); - case 'This': - return yield* FromThis(schema_, references_, value); - case 'Tuple': - return yield* FromTuple(schema_, references_, value); - case 'Undefined': - return yield* FromUndefined(schema_, references_, value); - case 'Union': - return yield* FromUnion(schema_, references_, value); - case 'Uint8Array': - return yield* FromUint8Array(schema_, references_, value); - case 'Unknown': - return yield* FromUnknown(schema_, references_, value); - case 'Void': - return yield* FromVoid(schema_, references_, value); - default: - if (!index_8.TypeRegistry.Has(schema_[index_7.Kind])) - throw new TypeCompilerUnknownTypeError(schema); - return yield* FromKind(schema_, references_, value); - } - } - // ---------------------------------------------------------------- - // Compiler State - // ---------------------------------------------------------------- - // prettier-ignore - const state = { - language: 'javascript', // target language - functions: new Map(), // local functions - variables: new Map(), // local variables - instances: new Map() // exterior kind instances - }; - // ---------------------------------------------------------------- - // Compiler Factory - // ---------------------------------------------------------------- - function CreateExpression(schema, references, value, useHoisting = true) { - return `(${[...Visit(schema, references, value, useHoisting)].join(' && ')})`; - } - function CreateFunctionName($id) { - return `check_${Identifier.Encode($id)}`; - } - function CreateVariable(expression) { - const variableName = `local_${state.variables.size}`; - state.variables.set(variableName, `const ${variableName} = ${expression}`); - return variableName; - } - function CreateFunction(name, schema, references, value, useHoisting = true) { - const [newline, pad] = ['\n', (length) => ''.padStart(length, ' ')]; - const parameter = CreateParameter('value', 'any'); - const returns = CreateReturns('boolean'); - const expression = [...Visit(schema, references, value, useHoisting)].map((expression) => `${pad(4)}${expression}`).join(` &&${newline}`); - return `function ${name}(${parameter})${returns} {${newline}${pad(2)}return (${newline}${expression}${newline}${pad(2)})\n}`; - } - function CreateParameter(name, type) { - const annotation = state.language === 'typescript' ? `: ${type}` : ''; - return `${name}${annotation}`; - } - function CreateReturns(type) { - return state.language === 'typescript' ? `: ${type}` : ''; - } - // ---------------------------------------------------------------- - // Compile - // ---------------------------------------------------------------- - function Build(schema, references, options) { - const functionCode = CreateFunction('check', schema, references, 'value'); // will populate functions and variables - const parameter = CreateParameter('value', 'any'); - const returns = CreateReturns('boolean'); - const functions = [...state.functions.values()]; - const variables = [...state.variables.values()]; - // prettier-ignore - const checkFunction = (0, index_11.IsString)(schema.$id) // ensure top level schemas with $id's are hoisted - ? `return function check(${parameter})${returns} {\n return ${CreateFunctionName(schema.$id)}(value)\n}` - : `return ${functionCode}`; - return [...variables, ...functions, checkFunction].join('\n'); - } - /** Generates the code used to assert this type and returns it as a string */ - function Code(...args) { - const defaults = { language: 'javascript' }; - // prettier-ignore - const [schema, references, options] = (args.length === 2 && (0, index_11.IsArray)(args[1]) ? [args[0], args[1], defaults] : - args.length === 2 && !(0, index_11.IsArray)(args[1]) ? [args[0], [], args[1]] : - args.length === 3 ? [args[0], args[1], args[2]] : - args.length === 1 ? [args[0], [], defaults] : - [null, [], defaults]); - // compiler-reset - state.language = options.language; - state.variables.clear(); - state.functions.clear(); - state.instances.clear(); - if (!(0, type_1.IsSchema)(schema)) - throw new TypeCompilerTypeGuardError(schema); - for (const schema of references) - if (!(0, type_1.IsSchema)(schema)) - throw new TypeCompilerTypeGuardError(schema); - return Build(schema, references, options); - } - TypeCompiler.Code = Code; - /** Compiles a TypeBox type for optimal runtime type checking. Types must be valid TypeBox types of TSchema */ - function Compile(schema, references = []) { - const generatedCode = Code(schema, references, { language: 'javascript' }); - const compiledFunction = globalThis.Function('kind', 'format', 'hash', generatedCode); - const instances = new Map(state.instances); - function typeRegistryFunction(kind, instance, value) { - if (!index_8.TypeRegistry.Has(kind) || !instances.has(instance)) - return false; - const checkFunc = index_8.TypeRegistry.Get(kind); - const schema = instances.get(instance); - return checkFunc(schema, value); - } - function formatRegistryFunction(format, value) { - if (!index_8.FormatRegistry.Has(format)) - return false; - const checkFunc = index_8.FormatRegistry.Get(format); - return checkFunc(value); - } - function hashFunction(value) { - return (0, index_6.Hash)(value); - } - const checkFunction = compiledFunction(typeRegistryFunction, formatRegistryFunction, hashFunction); - return new TypeCheck(schema, references, checkFunction, generatedCode); - } - TypeCompiler.Compile = Compile; -})(TypeCompiler || (exports.TypeCompiler = TypeCompiler = {})); - - -/***/ }), - -/***/ 63706: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ValueErrorIterator = exports.ValueErrorType = void 0; -var index_1 = __nccwpck_require__(4672); -Object.defineProperty(exports, "ValueErrorType", ({ enumerable: true, get: function () { return index_1.ValueErrorType; } })); -Object.defineProperty(exports, "ValueErrorIterator", ({ enumerable: true, get: function () { return index_1.ValueErrorIterator; } })); -__exportStar(__nccwpck_require__(45225), exports); - - -/***/ }), - -/***/ 19537: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Errors = exports.ValueErrorIterator = exports.ValueErrorsUnknownTypeError = exports.ValueErrorType = void 0; -const index_1 = __nccwpck_require__(45918); -const index_2 = __nccwpck_require__(30658); -const index_3 = __nccwpck_require__(97759); -const extends_undefined_1 = __nccwpck_require__(1409); -const function_1 = __nccwpck_require__(37746); -const index_4 = __nccwpck_require__(94526); -const index_5 = __nccwpck_require__(75743); -const index_6 = __nccwpck_require__(73849); -const index_7 = __nccwpck_require__(48121); -const index_8 = __nccwpck_require__(22346); -// ------------------------------------------------------------------ -// ValueGuard -// ------------------------------------------------------------------ -// prettier-ignore -const index_9 = __nccwpck_require__(19522); -// ------------------------------------------------------------------ -// ValueErrorType -// ------------------------------------------------------------------ -var ValueErrorType; -(function (ValueErrorType) { - ValueErrorType[ValueErrorType["ArrayContains"] = 0] = "ArrayContains"; - ValueErrorType[ValueErrorType["ArrayMaxContains"] = 1] = "ArrayMaxContains"; - ValueErrorType[ValueErrorType["ArrayMaxItems"] = 2] = "ArrayMaxItems"; - ValueErrorType[ValueErrorType["ArrayMinContains"] = 3] = "ArrayMinContains"; - ValueErrorType[ValueErrorType["ArrayMinItems"] = 4] = "ArrayMinItems"; - ValueErrorType[ValueErrorType["ArrayUniqueItems"] = 5] = "ArrayUniqueItems"; - ValueErrorType[ValueErrorType["Array"] = 6] = "Array"; - ValueErrorType[ValueErrorType["AsyncIterator"] = 7] = "AsyncIterator"; - ValueErrorType[ValueErrorType["BigIntExclusiveMaximum"] = 8] = "BigIntExclusiveMaximum"; - ValueErrorType[ValueErrorType["BigIntExclusiveMinimum"] = 9] = "BigIntExclusiveMinimum"; - ValueErrorType[ValueErrorType["BigIntMaximum"] = 10] = "BigIntMaximum"; - ValueErrorType[ValueErrorType["BigIntMinimum"] = 11] = "BigIntMinimum"; - ValueErrorType[ValueErrorType["BigIntMultipleOf"] = 12] = "BigIntMultipleOf"; - ValueErrorType[ValueErrorType["BigInt"] = 13] = "BigInt"; - ValueErrorType[ValueErrorType["Boolean"] = 14] = "Boolean"; - ValueErrorType[ValueErrorType["DateExclusiveMaximumTimestamp"] = 15] = "DateExclusiveMaximumTimestamp"; - ValueErrorType[ValueErrorType["DateExclusiveMinimumTimestamp"] = 16] = "DateExclusiveMinimumTimestamp"; - ValueErrorType[ValueErrorType["DateMaximumTimestamp"] = 17] = "DateMaximumTimestamp"; - ValueErrorType[ValueErrorType["DateMinimumTimestamp"] = 18] = "DateMinimumTimestamp"; - ValueErrorType[ValueErrorType["DateMultipleOfTimestamp"] = 19] = "DateMultipleOfTimestamp"; - ValueErrorType[ValueErrorType["Date"] = 20] = "Date"; - ValueErrorType[ValueErrorType["Function"] = 21] = "Function"; - ValueErrorType[ValueErrorType["IntegerExclusiveMaximum"] = 22] = "IntegerExclusiveMaximum"; - ValueErrorType[ValueErrorType["IntegerExclusiveMinimum"] = 23] = "IntegerExclusiveMinimum"; - ValueErrorType[ValueErrorType["IntegerMaximum"] = 24] = "IntegerMaximum"; - ValueErrorType[ValueErrorType["IntegerMinimum"] = 25] = "IntegerMinimum"; - ValueErrorType[ValueErrorType["IntegerMultipleOf"] = 26] = "IntegerMultipleOf"; - ValueErrorType[ValueErrorType["Integer"] = 27] = "Integer"; - ValueErrorType[ValueErrorType["IntersectUnevaluatedProperties"] = 28] = "IntersectUnevaluatedProperties"; - ValueErrorType[ValueErrorType["Intersect"] = 29] = "Intersect"; - ValueErrorType[ValueErrorType["Iterator"] = 30] = "Iterator"; - ValueErrorType[ValueErrorType["Kind"] = 31] = "Kind"; - ValueErrorType[ValueErrorType["Literal"] = 32] = "Literal"; - ValueErrorType[ValueErrorType["Never"] = 33] = "Never"; - ValueErrorType[ValueErrorType["Not"] = 34] = "Not"; - ValueErrorType[ValueErrorType["Null"] = 35] = "Null"; - ValueErrorType[ValueErrorType["NumberExclusiveMaximum"] = 36] = "NumberExclusiveMaximum"; - ValueErrorType[ValueErrorType["NumberExclusiveMinimum"] = 37] = "NumberExclusiveMinimum"; - ValueErrorType[ValueErrorType["NumberMaximum"] = 38] = "NumberMaximum"; - ValueErrorType[ValueErrorType["NumberMinimum"] = 39] = "NumberMinimum"; - ValueErrorType[ValueErrorType["NumberMultipleOf"] = 40] = "NumberMultipleOf"; - ValueErrorType[ValueErrorType["Number"] = 41] = "Number"; - ValueErrorType[ValueErrorType["ObjectAdditionalProperties"] = 42] = "ObjectAdditionalProperties"; - ValueErrorType[ValueErrorType["ObjectMaxProperties"] = 43] = "ObjectMaxProperties"; - ValueErrorType[ValueErrorType["ObjectMinProperties"] = 44] = "ObjectMinProperties"; - ValueErrorType[ValueErrorType["ObjectRequiredProperty"] = 45] = "ObjectRequiredProperty"; - ValueErrorType[ValueErrorType["Object"] = 46] = "Object"; - ValueErrorType[ValueErrorType["Promise"] = 47] = "Promise"; - ValueErrorType[ValueErrorType["RegExp"] = 48] = "RegExp"; - ValueErrorType[ValueErrorType["StringFormatUnknown"] = 49] = "StringFormatUnknown"; - ValueErrorType[ValueErrorType["StringFormat"] = 50] = "StringFormat"; - ValueErrorType[ValueErrorType["StringMaxLength"] = 51] = "StringMaxLength"; - ValueErrorType[ValueErrorType["StringMinLength"] = 52] = "StringMinLength"; - ValueErrorType[ValueErrorType["StringPattern"] = 53] = "StringPattern"; - ValueErrorType[ValueErrorType["String"] = 54] = "String"; - ValueErrorType[ValueErrorType["Symbol"] = 55] = "Symbol"; - ValueErrorType[ValueErrorType["TupleLength"] = 56] = "TupleLength"; - ValueErrorType[ValueErrorType["Tuple"] = 57] = "Tuple"; - ValueErrorType[ValueErrorType["Uint8ArrayMaxByteLength"] = 58] = "Uint8ArrayMaxByteLength"; - ValueErrorType[ValueErrorType["Uint8ArrayMinByteLength"] = 59] = "Uint8ArrayMinByteLength"; - ValueErrorType[ValueErrorType["Uint8Array"] = 60] = "Uint8Array"; - ValueErrorType[ValueErrorType["Undefined"] = 61] = "Undefined"; - ValueErrorType[ValueErrorType["Union"] = 62] = "Union"; - ValueErrorType[ValueErrorType["Void"] = 63] = "Void"; -})(ValueErrorType || (exports.ValueErrorType = ValueErrorType = {})); -// ------------------------------------------------------------------ -// ValueErrors -// ------------------------------------------------------------------ -class ValueErrorsUnknownTypeError extends index_4.TypeBoxError { - constructor(schema) { - super('Unknown type'); - this.schema = schema; - } -} -exports.ValueErrorsUnknownTypeError = ValueErrorsUnknownTypeError; -// ------------------------------------------------------------------ -// EscapeKey -// ------------------------------------------------------------------ -function EscapeKey(key) { - return key.replace(/~/g, '~0').replace(/\//g, '~1'); // RFC6901 Path -} -// ------------------------------------------------------------------ -// Guards -// ------------------------------------------------------------------ -function IsDefined(value) { - return value !== undefined; -} -// ------------------------------------------------------------------ -// ValueErrorIterator -// ------------------------------------------------------------------ -class ValueErrorIterator { - constructor(iterator) { - this.iterator = iterator; - } - [Symbol.iterator]() { - return this.iterator; - } - /** Returns the first value error or undefined if no errors */ - First() { - const next = this.iterator.next(); - return next.done ? undefined : next.value; - } -} -exports.ValueErrorIterator = ValueErrorIterator; -// -------------------------------------------------------------------------- -// Create -// -------------------------------------------------------------------------- -function Create(errorType, schema, path, value) { - return { type: errorType, schema, path, value, message: (0, function_1.GetErrorFunction)()({ errorType, path, schema, value }) }; -} -// -------------------------------------------------------------------------- -// Types -// -------------------------------------------------------------------------- -function* FromAny(schema, references, path, value) { } -function* FromArray(schema, references, path, value) { - if (!(0, index_9.IsArray)(value)) { - return yield Create(ValueErrorType.Array, schema, path, value); - } - if (IsDefined(schema.minItems) && !(value.length >= schema.minItems)) { - yield Create(ValueErrorType.ArrayMinItems, schema, path, value); - } - if (IsDefined(schema.maxItems) && !(value.length <= schema.maxItems)) { - yield Create(ValueErrorType.ArrayMaxItems, schema, path, value); - } - for (let i = 0; i < value.length; i++) { - yield* Visit(schema.items, references, `${path}/${i}`, value[i]); - } - // prettier-ignore - if (schema.uniqueItems === true && !((function () { const set = new Set(); for (const element of value) { - const hashed = (0, index_6.Hash)(element); - if (set.has(hashed)) { - return false; - } - else { - set.add(hashed); - } - } return true; })())) { - yield Create(ValueErrorType.ArrayUniqueItems, schema, path, value); - } - // contains - if (!(IsDefined(schema.contains) || IsDefined(schema.minContains) || IsDefined(schema.maxContains))) { - return; - } - const containsSchema = IsDefined(schema.contains) ? schema.contains : (0, index_8.Never)(); - const containsCount = value.reduce((acc, value, index) => (Visit(containsSchema, references, `${path}${index}`, value).next().done === true ? acc + 1 : acc), 0); - if (containsCount === 0) { - yield Create(ValueErrorType.ArrayContains, schema, path, value); - } - if ((0, index_9.IsNumber)(schema.minContains) && containsCount < schema.minContains) { - yield Create(ValueErrorType.ArrayMinContains, schema, path, value); - } - if ((0, index_9.IsNumber)(schema.maxContains) && containsCount > schema.maxContains) { - yield Create(ValueErrorType.ArrayMaxContains, schema, path, value); - } -} -function* FromAsyncIterator(schema, references, path, value) { - if (!(0, index_9.IsAsyncIterator)(value)) - yield Create(ValueErrorType.AsyncIterator, schema, path, value); -} -function* FromBigInt(schema, references, path, value) { - if (!(0, index_9.IsBigInt)(value)) - return yield Create(ValueErrorType.BigInt, schema, path, value); - if (IsDefined(schema.exclusiveMaximum) && !(value < schema.exclusiveMaximum)) { - yield Create(ValueErrorType.BigIntExclusiveMaximum, schema, path, value); - } - if (IsDefined(schema.exclusiveMinimum) && !(value > schema.exclusiveMinimum)) { - yield Create(ValueErrorType.BigIntExclusiveMinimum, schema, path, value); - } - if (IsDefined(schema.maximum) && !(value <= schema.maximum)) { - yield Create(ValueErrorType.BigIntMaximum, schema, path, value); - } - if (IsDefined(schema.minimum) && !(value >= schema.minimum)) { - yield Create(ValueErrorType.BigIntMinimum, schema, path, value); - } - if (IsDefined(schema.multipleOf) && !(value % schema.multipleOf === BigInt(0))) { - yield Create(ValueErrorType.BigIntMultipleOf, schema, path, value); - } -} -function* FromBoolean(schema, references, path, value) { - if (!(0, index_9.IsBoolean)(value)) - yield Create(ValueErrorType.Boolean, schema, path, value); -} -function* FromConstructor(schema, references, path, value) { - yield* Visit(schema.returns, references, path, value.prototype); -} -function* FromDate(schema, references, path, value) { - if (!(0, index_9.IsDate)(value)) - return yield Create(ValueErrorType.Date, schema, path, value); - if (IsDefined(schema.exclusiveMaximumTimestamp) && !(value.getTime() < schema.exclusiveMaximumTimestamp)) { - yield Create(ValueErrorType.DateExclusiveMaximumTimestamp, schema, path, value); - } - if (IsDefined(schema.exclusiveMinimumTimestamp) && !(value.getTime() > schema.exclusiveMinimumTimestamp)) { - yield Create(ValueErrorType.DateExclusiveMinimumTimestamp, schema, path, value); - } - if (IsDefined(schema.maximumTimestamp) && !(value.getTime() <= schema.maximumTimestamp)) { - yield Create(ValueErrorType.DateMaximumTimestamp, schema, path, value); - } - if (IsDefined(schema.minimumTimestamp) && !(value.getTime() >= schema.minimumTimestamp)) { - yield Create(ValueErrorType.DateMinimumTimestamp, schema, path, value); - } - if (IsDefined(schema.multipleOfTimestamp) && !(value.getTime() % schema.multipleOfTimestamp === 0)) { - yield Create(ValueErrorType.DateMultipleOfTimestamp, schema, path, value); - } -} -function* FromFunction(schema, references, path, value) { - if (!(0, index_9.IsFunction)(value)) - yield Create(ValueErrorType.Function, schema, path, value); -} -function* FromInteger(schema, references, path, value) { - if (!(0, index_9.IsInteger)(value)) - return yield Create(ValueErrorType.Integer, schema, path, value); - if (IsDefined(schema.exclusiveMaximum) && !(value < schema.exclusiveMaximum)) { - yield Create(ValueErrorType.IntegerExclusiveMaximum, schema, path, value); - } - if (IsDefined(schema.exclusiveMinimum) && !(value > schema.exclusiveMinimum)) { - yield Create(ValueErrorType.IntegerExclusiveMinimum, schema, path, value); - } - if (IsDefined(schema.maximum) && !(value <= schema.maximum)) { - yield Create(ValueErrorType.IntegerMaximum, schema, path, value); - } - if (IsDefined(schema.minimum) && !(value >= schema.minimum)) { - yield Create(ValueErrorType.IntegerMinimum, schema, path, value); - } - if (IsDefined(schema.multipleOf) && !(value % schema.multipleOf === 0)) { - yield Create(ValueErrorType.IntegerMultipleOf, schema, path, value); - } -} -function* FromIntersect(schema, references, path, value) { - for (const inner of schema.allOf) { - const next = Visit(inner, references, path, value).next(); - if (!next.done) { - yield Create(ValueErrorType.Intersect, schema, path, value); - yield next.value; - } - } - if (schema.unevaluatedProperties === false) { - const keyCheck = new RegExp((0, index_2.KeyOfPattern)(schema)); - for (const valueKey of Object.getOwnPropertyNames(value)) { - if (!keyCheck.test(valueKey)) { - yield Create(ValueErrorType.IntersectUnevaluatedProperties, schema, `${path}/${valueKey}`, value); - } - } - } - if (typeof schema.unevaluatedProperties === 'object') { - const keyCheck = new RegExp((0, index_2.KeyOfPattern)(schema)); - for (const valueKey of Object.getOwnPropertyNames(value)) { - if (!keyCheck.test(valueKey)) { - const next = Visit(schema.unevaluatedProperties, references, `${path}/${valueKey}`, value[valueKey]).next(); - if (!next.done) - yield next.value; // yield interior - } - } - } -} -function* FromIterator(schema, references, path, value) { - if (!(0, index_9.IsIterator)(value)) - yield Create(ValueErrorType.Iterator, schema, path, value); -} -function* FromLiteral(schema, references, path, value) { - if (!(value === schema.const)) - yield Create(ValueErrorType.Literal, schema, path, value); -} -function* FromNever(schema, references, path, value) { - yield Create(ValueErrorType.Never, schema, path, value); -} -function* FromNot(schema, references, path, value) { - if (Visit(schema.not, references, path, value).next().done === true) - yield Create(ValueErrorType.Not, schema, path, value); -} -function* FromNull(schema, references, path, value) { - if (!(0, index_9.IsNull)(value)) - yield Create(ValueErrorType.Null, schema, path, value); -} -function* FromNumber(schema, references, path, value) { - if (!index_1.TypeSystemPolicy.IsNumberLike(value)) - return yield Create(ValueErrorType.Number, schema, path, value); - if (IsDefined(schema.exclusiveMaximum) && !(value < schema.exclusiveMaximum)) { - yield Create(ValueErrorType.NumberExclusiveMaximum, schema, path, value); - } - if (IsDefined(schema.exclusiveMinimum) && !(value > schema.exclusiveMinimum)) { - yield Create(ValueErrorType.NumberExclusiveMinimum, schema, path, value); - } - if (IsDefined(schema.maximum) && !(value <= schema.maximum)) { - yield Create(ValueErrorType.NumberMaximum, schema, path, value); - } - if (IsDefined(schema.minimum) && !(value >= schema.minimum)) { - yield Create(ValueErrorType.NumberMinimum, schema, path, value); - } - if (IsDefined(schema.multipleOf) && !(value % schema.multipleOf === 0)) { - yield Create(ValueErrorType.NumberMultipleOf, schema, path, value); - } -} -function* FromObject(schema, references, path, value) { - if (!index_1.TypeSystemPolicy.IsObjectLike(value)) - return yield Create(ValueErrorType.Object, schema, path, value); - if (IsDefined(schema.minProperties) && !(Object.getOwnPropertyNames(value).length >= schema.minProperties)) { - yield Create(ValueErrorType.ObjectMinProperties, schema, path, value); - } - if (IsDefined(schema.maxProperties) && !(Object.getOwnPropertyNames(value).length <= schema.maxProperties)) { - yield Create(ValueErrorType.ObjectMaxProperties, schema, path, value); - } - const requiredKeys = Array.isArray(schema.required) ? schema.required : []; - const knownKeys = Object.getOwnPropertyNames(schema.properties); - const unknownKeys = Object.getOwnPropertyNames(value); - for (const requiredKey of requiredKeys) { - if (unknownKeys.includes(requiredKey)) - continue; - yield Create(ValueErrorType.ObjectRequiredProperty, schema.properties[requiredKey], `${path}/${EscapeKey(requiredKey)}`, undefined); - } - if (schema.additionalProperties === false) { - for (const valueKey of unknownKeys) { - if (!knownKeys.includes(valueKey)) { - yield Create(ValueErrorType.ObjectAdditionalProperties, schema, `${path}/${EscapeKey(valueKey)}`, value[valueKey]); - } - } - } - if (typeof schema.additionalProperties === 'object') { - for (const valueKey of unknownKeys) { - if (knownKeys.includes(valueKey)) - continue; - yield* Visit(schema.additionalProperties, references, `${path}/${EscapeKey(valueKey)}`, value[valueKey]); - } - } - for (const knownKey of knownKeys) { - const property = schema.properties[knownKey]; - if (schema.required && schema.required.includes(knownKey)) { - yield* Visit(property, references, `${path}/${EscapeKey(knownKey)}`, value[knownKey]); - if ((0, extends_undefined_1.ExtendsUndefinedCheck)(schema) && !(knownKey in value)) { - yield Create(ValueErrorType.ObjectRequiredProperty, property, `${path}/${EscapeKey(knownKey)}`, undefined); - } - } - else { - if (index_1.TypeSystemPolicy.IsExactOptionalProperty(value, knownKey)) { - yield* Visit(property, references, `${path}/${EscapeKey(knownKey)}`, value[knownKey]); - } - } - } -} -function* FromPromise(schema, references, path, value) { - if (!(0, index_9.IsPromise)(value)) - yield Create(ValueErrorType.Promise, schema, path, value); -} -function* FromRecord(schema, references, path, value) { - if (!index_1.TypeSystemPolicy.IsRecordLike(value)) - return yield Create(ValueErrorType.Object, schema, path, value); - if (IsDefined(schema.minProperties) && !(Object.getOwnPropertyNames(value).length >= schema.minProperties)) { - yield Create(ValueErrorType.ObjectMinProperties, schema, path, value); - } - if (IsDefined(schema.maxProperties) && !(Object.getOwnPropertyNames(value).length <= schema.maxProperties)) { - yield Create(ValueErrorType.ObjectMaxProperties, schema, path, value); - } - const [patternKey, patternSchema] = Object.entries(schema.patternProperties)[0]; - const regex = new RegExp(patternKey); - for (const [propertyKey, propertyValue] of Object.entries(value)) { - if (regex.test(propertyKey)) - yield* Visit(patternSchema, references, `${path}/${EscapeKey(propertyKey)}`, propertyValue); - } - if (typeof schema.additionalProperties === 'object') { - for (const [propertyKey, propertyValue] of Object.entries(value)) { - if (!regex.test(propertyKey)) - yield* Visit(schema.additionalProperties, references, `${path}/${EscapeKey(propertyKey)}`, propertyValue); - } - } - if (schema.additionalProperties === false) { - for (const [propertyKey, propertyValue] of Object.entries(value)) { - if (regex.test(propertyKey)) - continue; - return yield Create(ValueErrorType.ObjectAdditionalProperties, schema, `${path}/${EscapeKey(propertyKey)}`, propertyValue); - } - } -} -function* FromRef(schema, references, path, value) { - yield* Visit((0, index_5.Deref)(schema, references), references, path, value); -} -function* FromRegExp(schema, references, path, value) { - if (!(0, index_9.IsString)(value)) - return yield Create(ValueErrorType.String, schema, path, value); - if (IsDefined(schema.minLength) && !(value.length >= schema.minLength)) { - yield Create(ValueErrorType.StringMinLength, schema, path, value); - } - if (IsDefined(schema.maxLength) && !(value.length <= schema.maxLength)) { - yield Create(ValueErrorType.StringMaxLength, schema, path, value); - } - const regex = new RegExp(schema.source, schema.flags); - if (!regex.test(value)) { - return yield Create(ValueErrorType.RegExp, schema, path, value); - } -} -function* FromString(schema, references, path, value) { - if (!(0, index_9.IsString)(value)) - return yield Create(ValueErrorType.String, schema, path, value); - if (IsDefined(schema.minLength) && !(value.length >= schema.minLength)) { - yield Create(ValueErrorType.StringMinLength, schema, path, value); - } - if (IsDefined(schema.maxLength) && !(value.length <= schema.maxLength)) { - yield Create(ValueErrorType.StringMaxLength, schema, path, value); - } - if ((0, index_9.IsString)(schema.pattern)) { - const regex = new RegExp(schema.pattern); - if (!regex.test(value)) { - yield Create(ValueErrorType.StringPattern, schema, path, value); - } - } - if ((0, index_9.IsString)(schema.format)) { - if (!index_3.FormatRegistry.Has(schema.format)) { - yield Create(ValueErrorType.StringFormatUnknown, schema, path, value); - } - else { - const format = index_3.FormatRegistry.Get(schema.format); - if (!format(value)) { - yield Create(ValueErrorType.StringFormat, schema, path, value); - } - } - } -} -function* FromSymbol(schema, references, path, value) { - if (!(0, index_9.IsSymbol)(value)) - yield Create(ValueErrorType.Symbol, schema, path, value); -} -function* FromTemplateLiteral(schema, references, path, value) { - if (!(0, index_9.IsString)(value)) - return yield Create(ValueErrorType.String, schema, path, value); - const regex = new RegExp(schema.pattern); - if (!regex.test(value)) { - yield Create(ValueErrorType.StringPattern, schema, path, value); - } -} -function* FromThis(schema, references, path, value) { - yield* Visit((0, index_5.Deref)(schema, references), references, path, value); -} -function* FromTuple(schema, references, path, value) { - if (!(0, index_9.IsArray)(value)) - return yield Create(ValueErrorType.Tuple, schema, path, value); - if (schema.items === undefined && !(value.length === 0)) { - return yield Create(ValueErrorType.TupleLength, schema, path, value); - } - if (!(value.length === schema.maxItems)) { - return yield Create(ValueErrorType.TupleLength, schema, path, value); - } - if (!schema.items) { - return; - } - for (let i = 0; i < schema.items.length; i++) { - yield* Visit(schema.items[i], references, `${path}/${i}`, value[i]); - } -} -function* FromUndefined(schema, references, path, value) { - if (!(0, index_9.IsUndefined)(value)) - yield Create(ValueErrorType.Undefined, schema, path, value); -} -function* FromUnion(schema, references, path, value) { - let count = 0; - for (const subschema of schema.anyOf) { - const errors = [...Visit(subschema, references, path, value)]; - if (errors.length === 0) - return; // matched - count += errors.length; - } - if (count > 0) { - yield Create(ValueErrorType.Union, schema, path, value); - } -} -function* FromUint8Array(schema, references, path, value) { - if (!(0, index_9.IsUint8Array)(value)) - return yield Create(ValueErrorType.Uint8Array, schema, path, value); - if (IsDefined(schema.maxByteLength) && !(value.length <= schema.maxByteLength)) { - yield Create(ValueErrorType.Uint8ArrayMaxByteLength, schema, path, value); - } - if (IsDefined(schema.minByteLength) && !(value.length >= schema.minByteLength)) { - yield Create(ValueErrorType.Uint8ArrayMinByteLength, schema, path, value); - } -} -function* FromUnknown(schema, references, path, value) { } -function* FromVoid(schema, references, path, value) { - if (!index_1.TypeSystemPolicy.IsVoidLike(value)) - yield Create(ValueErrorType.Void, schema, path, value); -} -function* FromKind(schema, references, path, value) { - const check = index_3.TypeRegistry.Get(schema[index_7.Kind]); - if (!check(schema, value)) - yield Create(ValueErrorType.Kind, schema, path, value); -} -function* Visit(schema, references, path, value) { - const references_ = IsDefined(schema.$id) ? [...references, schema] : references; - const schema_ = schema; - switch (schema_[index_7.Kind]) { - case 'Any': - return yield* FromAny(schema_, references_, path, value); - case 'Array': - return yield* FromArray(schema_, references_, path, value); - case 'AsyncIterator': - return yield* FromAsyncIterator(schema_, references_, path, value); - case 'BigInt': - return yield* FromBigInt(schema_, references_, path, value); - case 'Boolean': - return yield* FromBoolean(schema_, references_, path, value); - case 'Constructor': - return yield* FromConstructor(schema_, references_, path, value); - case 'Date': - return yield* FromDate(schema_, references_, path, value); - case 'Function': - return yield* FromFunction(schema_, references_, path, value); - case 'Integer': - return yield* FromInteger(schema_, references_, path, value); - case 'Intersect': - return yield* FromIntersect(schema_, references_, path, value); - case 'Iterator': - return yield* FromIterator(schema_, references_, path, value); - case 'Literal': - return yield* FromLiteral(schema_, references_, path, value); - case 'Never': - return yield* FromNever(schema_, references_, path, value); - case 'Not': - return yield* FromNot(schema_, references_, path, value); - case 'Null': - return yield* FromNull(schema_, references_, path, value); - case 'Number': - return yield* FromNumber(schema_, references_, path, value); - case 'Object': - return yield* FromObject(schema_, references_, path, value); - case 'Promise': - return yield* FromPromise(schema_, references_, path, value); - case 'Record': - return yield* FromRecord(schema_, references_, path, value); - case 'Ref': - return yield* FromRef(schema_, references_, path, value); - case 'RegExp': - return yield* FromRegExp(schema_, references_, path, value); - case 'String': - return yield* FromString(schema_, references_, path, value); - case 'Symbol': - return yield* FromSymbol(schema_, references_, path, value); - case 'TemplateLiteral': - return yield* FromTemplateLiteral(schema_, references_, path, value); - case 'This': - return yield* FromThis(schema_, references_, path, value); - case 'Tuple': - return yield* FromTuple(schema_, references_, path, value); - case 'Undefined': - return yield* FromUndefined(schema_, references_, path, value); - case 'Union': - return yield* FromUnion(schema_, references_, path, value); - case 'Uint8Array': - return yield* FromUint8Array(schema_, references_, path, value); - case 'Unknown': - return yield* FromUnknown(schema_, references_, path, value); - case 'Void': - return yield* FromVoid(schema_, references_, path, value); - default: - if (!index_3.TypeRegistry.Has(schema_[index_7.Kind])) - throw new ValueErrorsUnknownTypeError(schema); - return yield* FromKind(schema_, references_, path, value); - } -} -/** Returns an iterator for each error in this value. */ -function Errors(...args) { - const iterator = args.length === 3 ? Visit(args[0], args[1], '', args[2]) : Visit(args[0], [], '', args[1]); - return new ValueErrorIterator(iterator); -} -exports.Errors = Errors; - - -/***/ }), - -/***/ 37746: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.GetErrorFunction = exports.SetErrorFunction = exports.DefaultErrorFunction = void 0; -const index_1 = __nccwpck_require__(48121); -const errors_1 = __nccwpck_require__(19537); -/** Creates an error message using en-US as the default locale */ -function DefaultErrorFunction(error) { - switch (error.errorType) { - case errors_1.ValueErrorType.ArrayContains: - return 'Expected array to contain at least one matching value'; - case errors_1.ValueErrorType.ArrayMaxContains: - return `Expected array to contain no more than ${error.schema.maxContains} matching values`; - case errors_1.ValueErrorType.ArrayMinContains: - return `Expected array to contain at least ${error.schema.minContains} matching values`; - case errors_1.ValueErrorType.ArrayMaxItems: - return `Expected array length to be less or equal to ${error.schema.maxItems}`; - case errors_1.ValueErrorType.ArrayMinItems: - return `Expected array length to be greater or equal to ${error.schema.minItems}`; - case errors_1.ValueErrorType.ArrayUniqueItems: - return 'Expected array elements to be unique'; - case errors_1.ValueErrorType.Array: - return 'Expected array'; - case errors_1.ValueErrorType.AsyncIterator: - return 'Expected AsyncIterator'; - case errors_1.ValueErrorType.BigIntExclusiveMaximum: - return `Expected bigint to be less than ${error.schema.exclusiveMaximum}`; - case errors_1.ValueErrorType.BigIntExclusiveMinimum: - return `Expected bigint to be greater than ${error.schema.exclusiveMinimum}`; - case errors_1.ValueErrorType.BigIntMaximum: - return `Expected bigint to be less or equal to ${error.schema.maximum}`; - case errors_1.ValueErrorType.BigIntMinimum: - return `Expected bigint to be greater or equal to ${error.schema.minimum}`; - case errors_1.ValueErrorType.BigIntMultipleOf: - return `Expected bigint to be a multiple of ${error.schema.multipleOf}`; - case errors_1.ValueErrorType.BigInt: - return 'Expected bigint'; - case errors_1.ValueErrorType.Boolean: - return 'Expected boolean'; - case errors_1.ValueErrorType.DateExclusiveMinimumTimestamp: - return `Expected Date timestamp to be greater than ${error.schema.exclusiveMinimumTimestamp}`; - case errors_1.ValueErrorType.DateExclusiveMaximumTimestamp: - return `Expected Date timestamp to be less than ${error.schema.exclusiveMaximumTimestamp}`; - case errors_1.ValueErrorType.DateMinimumTimestamp: - return `Expected Date timestamp to be greater or equal to ${error.schema.minimumTimestamp}`; - case errors_1.ValueErrorType.DateMaximumTimestamp: - return `Expected Date timestamp to be less or equal to ${error.schema.maximumTimestamp}`; - case errors_1.ValueErrorType.DateMultipleOfTimestamp: - return `Expected Date timestamp to be a multiple of ${error.schema.multipleOfTimestamp}`; - case errors_1.ValueErrorType.Date: - return 'Expected Date'; - case errors_1.ValueErrorType.Function: - return 'Expected function'; - case errors_1.ValueErrorType.IntegerExclusiveMaximum: - return `Expected integer to be less than ${error.schema.exclusiveMaximum}`; - case errors_1.ValueErrorType.IntegerExclusiveMinimum: - return `Expected integer to be greater than ${error.schema.exclusiveMinimum}`; - case errors_1.ValueErrorType.IntegerMaximum: - return `Expected integer to be less or equal to ${error.schema.maximum}`; - case errors_1.ValueErrorType.IntegerMinimum: - return `Expected integer to be greater or equal to ${error.schema.minimum}`; - case errors_1.ValueErrorType.IntegerMultipleOf: - return `Expected integer to be a multiple of ${error.schema.multipleOf}`; - case errors_1.ValueErrorType.Integer: - return 'Expected integer'; - case errors_1.ValueErrorType.IntersectUnevaluatedProperties: - return 'Unexpected property'; - case errors_1.ValueErrorType.Intersect: - return 'Expected all values to match'; - case errors_1.ValueErrorType.Iterator: - return 'Expected Iterator'; - case errors_1.ValueErrorType.Literal: - return `Expected ${typeof error.schema.const === 'string' ? `'${error.schema.const}'` : error.schema.const}`; - case errors_1.ValueErrorType.Never: - return 'Never'; - case errors_1.ValueErrorType.Not: - return 'Value should not match'; - case errors_1.ValueErrorType.Null: - return 'Expected null'; - case errors_1.ValueErrorType.NumberExclusiveMaximum: - return `Expected number to be less than ${error.schema.exclusiveMaximum}`; - case errors_1.ValueErrorType.NumberExclusiveMinimum: - return `Expected number to be greater than ${error.schema.exclusiveMinimum}`; - case errors_1.ValueErrorType.NumberMaximum: - return `Expected number to be less or equal to ${error.schema.maximum}`; - case errors_1.ValueErrorType.NumberMinimum: - return `Expected number to be greater or equal to ${error.schema.minimum}`; - case errors_1.ValueErrorType.NumberMultipleOf: - return `Expected number to be a multiple of ${error.schema.multipleOf}`; - case errors_1.ValueErrorType.Number: - return 'Expected number'; - case errors_1.ValueErrorType.Object: - return 'Expected object'; - case errors_1.ValueErrorType.ObjectAdditionalProperties: - return 'Unexpected property'; - case errors_1.ValueErrorType.ObjectMaxProperties: - return `Expected object to have no more than ${error.schema.maxProperties} properties`; - case errors_1.ValueErrorType.ObjectMinProperties: - return `Expected object to have at least ${error.schema.minProperties} properties`; - case errors_1.ValueErrorType.ObjectRequiredProperty: - return 'Required property'; - case errors_1.ValueErrorType.Promise: - return 'Expected Promise'; - case errors_1.ValueErrorType.RegExp: - return 'Expected string to match regular expression'; - case errors_1.ValueErrorType.StringFormatUnknown: - return `Unknown format '${error.schema.format}'`; - case errors_1.ValueErrorType.StringFormat: - return `Expected string to match '${error.schema.format}' format`; - case errors_1.ValueErrorType.StringMaxLength: - return `Expected string length less or equal to ${error.schema.maxLength}`; - case errors_1.ValueErrorType.StringMinLength: - return `Expected string length greater or equal to ${error.schema.minLength}`; - case errors_1.ValueErrorType.StringPattern: - return `Expected string to match '${error.schema.pattern}'`; - case errors_1.ValueErrorType.String: - return 'Expected string'; - case errors_1.ValueErrorType.Symbol: - return 'Expected symbol'; - case errors_1.ValueErrorType.TupleLength: - return `Expected tuple to have ${error.schema.maxItems || 0} elements`; - case errors_1.ValueErrorType.Tuple: - return 'Expected tuple'; - case errors_1.ValueErrorType.Uint8ArrayMaxByteLength: - return `Expected byte length less or equal to ${error.schema.maxByteLength}`; - case errors_1.ValueErrorType.Uint8ArrayMinByteLength: - return `Expected byte length greater or equal to ${error.schema.minByteLength}`; - case errors_1.ValueErrorType.Uint8Array: - return 'Expected Uint8Array'; - case errors_1.ValueErrorType.Undefined: - return 'Expected undefined'; - case errors_1.ValueErrorType.Union: - return 'Expected union value'; - case errors_1.ValueErrorType.Void: - return 'Expected void'; - case errors_1.ValueErrorType.Kind: - return `Expected kind '${error.schema[index_1.Kind]}'`; - default: - return 'Unknown error type'; - } -} -exports.DefaultErrorFunction = DefaultErrorFunction; -/** Manages error message providers */ -let errorFunction = DefaultErrorFunction; -/** Sets the error function used to generate error messages. */ -function SetErrorFunction(callback) { - errorFunction = callback; -} -exports.SetErrorFunction = SetErrorFunction; -/** Gets the error function used to generate error messages */ -function GetErrorFunction() { - return errorFunction; -} -exports.GetErrorFunction = GetErrorFunction; - - -/***/ }), - -/***/ 4672: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(19537), exports); -__exportStar(__nccwpck_require__(37746), exports); - - -/***/ }), - -/***/ 92018: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -// ------------------------------------------------------------------ -// Infrastructure -// ------------------------------------------------------------------ -__exportStar(__nccwpck_require__(57985), exports); -__exportStar(__nccwpck_require__(94526), exports); -__exportStar(__nccwpck_require__(75289), exports); -__exportStar(__nccwpck_require__(51861), exports); -__exportStar(__nccwpck_require__(50059), exports); -__exportStar(__nccwpck_require__(97759), exports); -__exportStar(__nccwpck_require__(89925), exports); -__exportStar(__nccwpck_require__(48121), exports); -// ------------------------------------------------------------------ -// Types -// ------------------------------------------------------------------ -__exportStar(__nccwpck_require__(56234), exports); -__exportStar(__nccwpck_require__(59809), exports); -__exportStar(__nccwpck_require__(32733), exports); -__exportStar(__nccwpck_require__(52779), exports); -__exportStar(__nccwpck_require__(37383), exports); -__exportStar(__nccwpck_require__(89168), exports); -__exportStar(__nccwpck_require__(87731), exports); -__exportStar(__nccwpck_require__(29075), exports); -__exportStar(__nccwpck_require__(86232), exports); -__exportStar(__nccwpck_require__(76835), exports); -__exportStar(__nccwpck_require__(89816), exports); -__exportStar(__nccwpck_require__(3592), exports); -__exportStar(__nccwpck_require__(63617), exports); -__exportStar(__nccwpck_require__(10698), exports); -__exportStar(__nccwpck_require__(40629), exports); -__exportStar(__nccwpck_require__(14301), exports); -__exportStar(__nccwpck_require__(72996), exports); -__exportStar(__nccwpck_require__(89777), exports); -__exportStar(__nccwpck_require__(33458), exports); -__exportStar(__nccwpck_require__(5578), exports); -__exportStar(__nccwpck_require__(32945), exports); -__exportStar(__nccwpck_require__(30666), exports); -__exportStar(__nccwpck_require__(71095), exports); -__exportStar(__nccwpck_require__(30658), exports); -__exportStar(__nccwpck_require__(24727), exports); -__exportStar(__nccwpck_require__(76675), exports); -__exportStar(__nccwpck_require__(22346), exports); -__exportStar(__nccwpck_require__(9741), exports); -__exportStar(__nccwpck_require__(4513), exports); -__exportStar(__nccwpck_require__(46621), exports); -__exportStar(__nccwpck_require__(13871), exports); -__exportStar(__nccwpck_require__(56497), exports); -__exportStar(__nccwpck_require__(31392), exports); -__exportStar(__nccwpck_require__(80264), exports); -__exportStar(__nccwpck_require__(96405), exports); -__exportStar(__nccwpck_require__(53861), exports); -__exportStar(__nccwpck_require__(59573), exports); -__exportStar(__nccwpck_require__(4102), exports); -__exportStar(__nccwpck_require__(51257), exports); -__exportStar(__nccwpck_require__(59961), exports); -__exportStar(__nccwpck_require__(81816), exports); -__exportStar(__nccwpck_require__(29105), exports); -__exportStar(__nccwpck_require__(34865), exports); -__exportStar(__nccwpck_require__(83397), exports); -__exportStar(__nccwpck_require__(47686), exports); -__exportStar(__nccwpck_require__(89861), exports); -__exportStar(__nccwpck_require__(94987), exports); -__exportStar(__nccwpck_require__(2222), exports); -__exportStar(__nccwpck_require__(94313), exports); -__exportStar(__nccwpck_require__(69429), exports); -__exportStar(__nccwpck_require__(69656), exports); -__exportStar(__nccwpck_require__(90984), exports); -__exportStar(__nccwpck_require__(60304), exports); -__exportStar(__nccwpck_require__(82894), exports); -__exportStar(__nccwpck_require__(91305), exports); -__exportStar(__nccwpck_require__(37272), exports); -__exportStar(__nccwpck_require__(41743), exports); -__exportStar(__nccwpck_require__(41178), exports); -__exportStar(__nccwpck_require__(79750), exports); -__exportStar(__nccwpck_require__(20602), exports); -// ------------------------------------------------------------------ -// Namespace -// ------------------------------------------------------------------ -__exportStar(__nccwpck_require__(55764), exports); - - -/***/ }), - -/***/ 45918: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(6226), exports); -__exportStar(__nccwpck_require__(60313), exports); - - -/***/ }), - -/***/ 6226: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TypeSystemPolicy = void 0; -const index_1 = __nccwpck_require__(19522); -var TypeSystemPolicy; -(function (TypeSystemPolicy) { - // ------------------------------------------------------------------ - // TypeSystemPolicy - // ------------------------------------------------------------------ - /** Shared assertion routines used by the value and errors modules */ - /** Sets whether TypeBox should assert optional properties using the TypeScript `exactOptionalPropertyTypes` assertion policy. The default is `false` */ - TypeSystemPolicy.ExactOptionalPropertyTypes = false; - /** Sets whether arrays should be treated as a kind of objects. The default is `false` */ - TypeSystemPolicy.AllowArrayObject = false; - /** Sets whether `NaN` or `Infinity` should be treated as valid numeric values. The default is `false` */ - TypeSystemPolicy.AllowNaN = false; - /** Sets whether `null` should validate for void types. The default is `false` */ - TypeSystemPolicy.AllowNullVoid = false; - /** Asserts this value using the ExactOptionalPropertyTypes policy */ - function IsExactOptionalProperty(value, key) { - return TypeSystemPolicy.ExactOptionalPropertyTypes ? key in value : value[key] !== undefined; - } - TypeSystemPolicy.IsExactOptionalProperty = IsExactOptionalProperty; - /** Asserts this value using the AllowArrayObjects policy */ - function IsObjectLike(value) { - const isObject = (0, index_1.IsObject)(value); - return TypeSystemPolicy.AllowArrayObject ? isObject : isObject && !(0, index_1.IsArray)(value); - } - TypeSystemPolicy.IsObjectLike = IsObjectLike; - /** Asserts this value as a record using the AllowArrayObjects policy */ - function IsRecordLike(value) { - return IsObjectLike(value) && !(value instanceof Date) && !(value instanceof Uint8Array); - } - TypeSystemPolicy.IsRecordLike = IsRecordLike; - /** Asserts this value using the AllowNaN policy */ - function IsNumberLike(value) { - const isNumber = (0, index_1.IsNumber)(value); - return TypeSystemPolicy.AllowNaN ? isNumber : isNumber && Number.isFinite(value); - } - TypeSystemPolicy.IsNumberLike = IsNumberLike; - /** Asserts this value using the AllowVoidNull policy */ - function IsVoidLike(value) { - const isUndefined = (0, index_1.IsUndefined)(value); - return TypeSystemPolicy.AllowNullVoid ? isUndefined || value === null : isUndefined; - } - TypeSystemPolicy.IsVoidLike = IsVoidLike; -})(TypeSystemPolicy || (exports.TypeSystemPolicy = TypeSystemPolicy = {})); - - -/***/ }), - -/***/ 60313: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TypeSystem = exports.TypeSystemDuplicateFormat = exports.TypeSystemDuplicateTypeKind = void 0; -const index_1 = __nccwpck_require__(97759); -const index_2 = __nccwpck_require__(79750); -const index_3 = __nccwpck_require__(48121); -const index_4 = __nccwpck_require__(94526); -// ------------------------------------------------------------------ -// Errors -// ------------------------------------------------------------------ -class TypeSystemDuplicateTypeKind extends index_4.TypeBoxError { - constructor(kind) { - super(`Duplicate type kind '${kind}' detected`); - } -} -exports.TypeSystemDuplicateTypeKind = TypeSystemDuplicateTypeKind; -class TypeSystemDuplicateFormat extends index_4.TypeBoxError { - constructor(kind) { - super(`Duplicate string format '${kind}' detected`); - } -} -exports.TypeSystemDuplicateFormat = TypeSystemDuplicateFormat; -/** Creates user defined types and formats and provides overrides for value checking behaviours */ -var TypeSystem; -(function (TypeSystem) { - /** Creates a new type */ - function Type(kind, check) { - if (index_1.TypeRegistry.Has(kind)) - throw new TypeSystemDuplicateTypeKind(kind); - index_1.TypeRegistry.Set(kind, check); - return (options = {}) => (0, index_2.Unsafe)({ ...options, [index_3.Kind]: kind }); - } - TypeSystem.Type = Type; - /** Creates a new string format */ - function Format(format, check) { - if (index_1.FormatRegistry.Has(format)) - throw new TypeSystemDuplicateFormat(format); - index_1.FormatRegistry.Set(format, check); - return format; - } - TypeSystem.Format = Format; -})(TypeSystem || (exports.TypeSystem = TypeSystem = {})); - - -/***/ }), - -/***/ 71664: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Any = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[Json]` Creates an Any type */ -function Any(options = {}) { - return { ...options, [index_1.Kind]: 'Any' }; -} -exports.Any = Any; - - -/***/ }), - -/***/ 56234: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(71664), exports); - - -/***/ }), - -/***/ 8480: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Array = void 0; -const type_1 = __nccwpck_require__(45157); -const index_1 = __nccwpck_require__(48121); -/** `[Json]` Creates an Array type */ -function Array(schema, options = {}) { - return { - ...options, - [index_1.Kind]: 'Array', - type: 'array', - items: (0, type_1.CloneType)(schema), - }; -} -exports.Array = Array; - - -/***/ }), - -/***/ 59809: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(8480), exports); - - -/***/ }), - -/***/ 6028: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.AsyncIterator = void 0; -const index_1 = __nccwpck_require__(48121); -const type_1 = __nccwpck_require__(45157); -/** `[JavaScript]` Creates a AsyncIterator type */ -function AsyncIterator(items, options = {}) { - return { - ...options, - [index_1.Kind]: 'AsyncIterator', - type: 'AsyncIterator', - items: (0, type_1.CloneType)(items), - }; -} -exports.AsyncIterator = AsyncIterator; - - -/***/ }), - -/***/ 32733: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(6028), exports); - - -/***/ }), - -/***/ 95040: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Awaited = void 0; -const index_1 = __nccwpck_require__(32945); -const index_2 = __nccwpck_require__(41743); -const type_1 = __nccwpck_require__(45157); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -// prettier-ignore -function FromRest(T) { - return T.map(L => AwaitedResolve(L)); -} -// prettier-ignore -function FromIntersect(T) { - return (0, index_1.Intersect)(FromRest(T)); -} -// prettier-ignore -function FromUnion(T) { - return (0, index_2.Union)(FromRest(T)); -} -// prettier-ignore -function FromPromise(T) { - return AwaitedResolve(T); -} -// ---------------------------------------------------------------- -// AwaitedResolve -// ---------------------------------------------------------------- -// prettier-ignore -function AwaitedResolve(T) { - return ((0, type_2.IsIntersect)(T) ? FromIntersect(T.allOf) : - (0, type_2.IsUnion)(T) ? FromUnion(T.anyOf) : - (0, type_2.IsPromise)(T) ? FromPromise(T.item) : - T); -} -/** `[JavaScript]` Constructs a type by recursively unwrapping Promise types */ -function Awaited(T, options = {}) { - return (0, type_1.CloneType)(AwaitedResolve(T), options); -} -exports.Awaited = Awaited; - - -/***/ }), - -/***/ 52779: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(95040), exports); - - -/***/ }), - -/***/ 81776: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.BigInt = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[JavaScript]` Creates a BigInt type */ -function BigInt(options = {}) { - return { - ...options, - [index_1.Kind]: 'BigInt', - type: 'bigint', - }; -} -exports.BigInt = BigInt; - - -/***/ }), - -/***/ 37383: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(81776), exports); - - -/***/ }), - -/***/ 58604: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Boolean = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[Json]` Creates a Boolean type */ -function Boolean(options = {}) { - return { - ...options, - [index_1.Kind]: 'Boolean', - type: 'boolean', - }; -} -exports.Boolean = Boolean; - - -/***/ }), - -/***/ 89168: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(58604), exports); - - -/***/ }), - -/***/ 57985: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(45157), exports); -__exportStar(__nccwpck_require__(8184), exports); - - -/***/ }), - -/***/ 45157: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.CloneType = exports.CloneRest = void 0; -const value_1 = __nccwpck_require__(8184); -/** Clones a Rest */ -function CloneRest(schemas) { - return schemas.map((schema) => CloneType(schema)); -} -exports.CloneRest = CloneRest; -/** Clones a Type */ -function CloneType(schema, options = {}) { - return { ...(0, value_1.Clone)(schema), ...options }; -} -exports.CloneType = CloneType; - - -/***/ }), - -/***/ 8184: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Clone = void 0; -const ValueGuard = __nccwpck_require__(87280); -function ArrayType(value) { - return value.map((value) => Visit(value)); -} -function DateType(value) { - return new Date(value.getTime()); -} -function Uint8ArrayType(value) { - return new Uint8Array(value); -} -function RegExpType(value) { - return new RegExp(value.source, value.flags); -} -function ObjectType(value) { - const clonedProperties = Object.getOwnPropertyNames(value).reduce((acc, key) => ({ ...acc, [key]: Visit(value[key]) }), {}); - const clonedSymbols = Object.getOwnPropertySymbols(value).reduce((acc, key) => ({ ...acc, [key]: Visit(value[key]) }), {}); - return { ...clonedProperties, ...clonedSymbols }; -} -// prettier-ignore -function Visit(value) { - return (ValueGuard.IsArray(value) ? ArrayType(value) : - ValueGuard.IsDate(value) ? DateType(value) : - ValueGuard.IsUint8Array(value) ? Uint8ArrayType(value) : - ValueGuard.IsRegExp(value) ? RegExpType(value) : - ValueGuard.IsObject(value) ? ObjectType(value) : - value); -} -/** Clones a value */ -function Clone(value) { - return Visit(value); -} -exports.Clone = Clone; - - -/***/ }), - -/***/ 94040: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Composite = void 0; -const index_1 = __nccwpck_require__(32945); -const index_2 = __nccwpck_require__(89777); -const index_3 = __nccwpck_require__(30658); -const index_4 = __nccwpck_require__(13871); -const index_5 = __nccwpck_require__(89925); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_1 = __nccwpck_require__(20109); -// prettier-ignore -function CompositeKeys(T) { - return (0, index_5.SetDistinct)(T.reduce((Acc, L) => { - return ([...Acc, ...(0, index_3.KeyOfPropertyKeys)(L)]); - }, [])); -} -// prettier-ignore -function FilterNever(T) { - return T.filter(L => !(0, type_1.IsNever)(L)); -} -// prettier-ignore -function CompositeProperty(T, K) { - return FilterNever(T.reduce((Acc, L) => { - return [...Acc, ...(0, index_2.IndexFromPropertyKeys)(L, [K])]; - }, [])); -} -// prettier-ignore -function CompositeProperties(T, K) { - return K.reduce((Acc, L) => { - return { ...Acc, [L]: (0, index_1.IntersectEvaluated)(CompositeProperty(T, L)) }; - }, {}); -} -// prettier-ignore -function Composite(T, options = {}) { - const K = CompositeKeys(T); - const P = CompositeProperties(T, K); - const R = (0, index_4.Object)(P, options); - return R; -} -exports.Composite = Composite; - - -/***/ }), - -/***/ 87731: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(94040), exports); - - -/***/ }), - -/***/ 13352: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Const = void 0; -const index_1 = __nccwpck_require__(56234); -const index_2 = __nccwpck_require__(37383); -const index_3 = __nccwpck_require__(89816); -const index_4 = __nccwpck_require__(72996); -const index_5 = __nccwpck_require__(24727); -const index_6 = __nccwpck_require__(4513); -const index_7 = __nccwpck_require__(13871); -const index_8 = __nccwpck_require__(69656); -const index_9 = __nccwpck_require__(82894); -const index_10 = __nccwpck_require__(4102); -const index_11 = __nccwpck_require__(37272); -const index_12 = __nccwpck_require__(91305); -const index_13 = __nccwpck_require__(41178); -const index_14 = __nccwpck_require__(57985); -// ------------------------------------------------------------------ -// ValueGuard -// ------------------------------------------------------------------ -const value_1 = __nccwpck_require__(87280); -// prettier-ignore -function FromArray(T) { - return T.map(L => FromValue(L, false)); -} -// prettier-ignore -function FromProperties(value) { - return globalThis.Object.getOwnPropertyNames(value).reduce((acc, key) => { - return { ...acc, [key]: (0, index_10.Readonly)(FromValue(value[key], false)) }; - }, {}); -} -function ConditionalReadonly(T, root) { - return (root === true ? T : (0, index_10.Readonly)(T)); -} -// prettier-ignore -function FromValue(value, root) { - return ((0, value_1.IsAsyncIterator)(value) ? ConditionalReadonly((0, index_1.Any)(), root) : - (0, value_1.IsIterator)(value) ? ConditionalReadonly((0, index_1.Any)(), root) : - (0, value_1.IsArray)(value) ? (0, index_10.Readonly)((0, index_9.Tuple)(FromArray(value))) : - (0, value_1.IsUint8Array)(value) ? (0, index_12.Uint8Array)() : - (0, value_1.IsDate)(value) ? (0, index_3.Date)() : - (0, value_1.IsObject)(value) ? ConditionalReadonly((0, index_7.Object)(FromProperties(value)), root) : - (0, value_1.IsFunction)(value) ? ConditionalReadonly((0, index_4.Function)([], (0, index_13.Unknown)()), root) : - (0, value_1.IsUndefined)(value) ? (0, index_11.Undefined)() : - (0, value_1.IsNull)(value) ? (0, index_6.Null)() : - (0, value_1.IsSymbol)(value) ? (0, index_8.Symbol)() : - (0, value_1.IsBigInt)(value) ? (0, index_2.BigInt)() : - (0, value_1.IsNumber)(value) ? (0, index_5.Literal)(value) : - (0, value_1.IsBoolean)(value) ? (0, index_5.Literal)(value) : - (0, value_1.IsString)(value) ? (0, index_5.Literal)(value) : - (0, index_7.Object)({})); -} -/** `[JavaScript]` Creates a readonly const type from the given value. */ -function Const(T, options = {}) { - return (0, index_14.CloneType)(FromValue(T, true), options); -} -exports.Const = Const; - - -/***/ }), - -/***/ 29075: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(13352), exports); - - -/***/ }), - -/***/ 24096: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ConstructorParameters = void 0; -const index_1 = __nccwpck_require__(82894); -const type_1 = __nccwpck_require__(45157); -/** `[JavaScript]` Extracts the ConstructorParameters from the given Constructor type */ -function ConstructorParameters(schema, options = {}) { - return (0, index_1.Tuple)((0, type_1.CloneRest)(schema.parameters), { ...options }); -} -exports.ConstructorParameters = ConstructorParameters; - - -/***/ }), - -/***/ 76835: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(24096), exports); - - -/***/ }), - -/***/ 7868: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Constructor = void 0; -const type_1 = __nccwpck_require__(45157); -const index_1 = __nccwpck_require__(48121); -/** `[JavaScript]` Creates a Constructor type */ -function Constructor(parameters, returns, options) { - return { - ...options, - [index_1.Kind]: 'Constructor', - type: 'Constructor', - parameters: (0, type_1.CloneRest)(parameters), - returns: (0, type_1.CloneType)(returns), - }; -} -exports.Constructor = Constructor; - - -/***/ }), - -/***/ 86232: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(7868), exports); - - -/***/ }), - -/***/ 49698: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Date = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[JavaScript]` Creates a Date type */ -function Date(options = {}) { - return { - ...options, - [index_1.Kind]: 'Date', - type: 'Date', - }; -} -exports.Date = Date; - - -/***/ }), - -/***/ 89816: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(49698), exports); - - -/***/ }), - -/***/ 99648: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Deref = void 0; -const type_1 = __nccwpck_require__(45157); -const index_1 = __nccwpck_require__(62202); -const value_1 = __nccwpck_require__(87280); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -function FromRest(schema, references) { - return schema.map((schema) => Deref(schema, references)); -} -// prettier-ignore -function FromProperties(properties, references) { - return globalThis.Object.getOwnPropertyNames(properties).reduce((acc, key) => { - return { ...acc, [key]: Deref(properties[key], references) }; - }, {}); -} -// prettier-ignore -function FromConstructor(schema, references) { - schema.parameters = FromRest(schema.parameters, references); - schema.returns = Deref(schema.returns, references); - return schema; -} -// prettier-ignore -function FromFunction(schema, references) { - schema.parameters = FromRest(schema.parameters, references); - schema.returns = Deref(schema.returns, references); - return schema; -} -// prettier-ignore -function FromIntersect(schema, references) { - schema.allOf = FromRest(schema.allOf, references); - return schema; -} -// prettier-ignore -function FromUnion(schema, references) { - schema.anyOf = FromRest(schema.anyOf, references); - return schema; -} -// prettier-ignore -function FromTuple(schema, references) { - if ((0, value_1.IsUndefined)(schema.items)) - return schema; - schema.items = FromRest(schema.items, references); - return schema; -} -// prettier-ignore -function FromArray(schema, references) { - schema.items = Deref(schema.items, references); - return schema; -} -// prettier-ignore -function FromObject(schema, references) { - schema.properties = FromProperties(schema.properties, references); - return schema; -} -// prettier-ignore -function FromPromise(schema, references) { - schema.item = Deref(schema.item, references); - return schema; -} -// prettier-ignore -function FromAsyncIterator(schema, references) { - schema.items = Deref(schema.items, references); - return schema; -} -// prettier-ignore -function FromIterator(schema, references) { - schema.items = Deref(schema.items, references); - return schema; -} -// prettier-ignore -function FromRef(schema, references) { - const target = references.find(remote => remote.$id === schema.$ref); - if (target === undefined) - throw Error(`Unable to dereference schema with $id ${schema.$ref}`); - const discard = (0, index_1.Discard)(target, ['$id']); - return Deref(discard, references); -} -// prettier-ignore -function DerefResolve(schema, references) { - return ((0, type_2.IsConstructor)(schema) ? FromConstructor(schema, references) : - (0, type_2.IsFunction)(schema) ? FromFunction(schema, references) : - (0, type_2.IsIntersect)(schema) ? FromIntersect(schema, references) : - (0, type_2.IsUnion)(schema) ? FromUnion(schema, references) : - (0, type_2.IsTuple)(schema) ? FromTuple(schema, references) : - (0, type_2.IsArray)(schema) ? FromArray(schema, references) : - (0, type_2.IsObject)(schema) ? FromObject(schema, references) : - (0, type_2.IsPromise)(schema) ? FromPromise(schema, references) : - (0, type_2.IsAsyncIterator)(schema) ? FromAsyncIterator(schema, references) : - (0, type_2.IsIterator)(schema) ? FromIterator(schema, references) : - (0, type_2.IsRef)(schema) ? FromRef(schema, references) : - schema); -} -// ------------------------------------------------------------------ -// TDeref -// ------------------------------------------------------------------ -/** `[Json]` Creates a dereferenced type */ -function Deref(schema, references) { - return DerefResolve((0, type_1.CloneType)(schema), (0, type_1.CloneRest)(references)); -} -exports.Deref = Deref; - - -/***/ }), - -/***/ 3592: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(99648), exports); - - -/***/ }), - -/***/ 43548: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Discard = void 0; -function DiscardKey(value, key) { - const { [key]: _, ...rest } = value; - return rest; -} -function Discard(value, keys) { - return keys.reduce((acc, key) => DiscardKey(acc, key), value); -} -exports.Discard = Discard; - - -/***/ }), - -/***/ 62202: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(43548), exports); - - -/***/ }), - -/***/ 41384: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Enum = void 0; -const index_1 = __nccwpck_require__(24727); -const index_2 = __nccwpck_require__(48121); -const index_3 = __nccwpck_require__(41743); -// ------------------------------------------------------------------ -// ValueGuard -// ------------------------------------------------------------------ -const value_1 = __nccwpck_require__(87280); -/** `[Json]` Creates a Enum type */ -function Enum(item, options = {}) { - if ((0, value_1.IsUndefined)(item)) - throw new Error('Enum undefined or empty'); - const values1 = globalThis.Object.getOwnPropertyNames(item) - .filter((key) => isNaN(key)) - .map((key) => item[key]); - const values2 = [...new Set(values1)]; - const anyOf = values2.map((value) => (0, index_1.Literal)(value)); - return (0, index_3.Union)(anyOf, { ...options, [index_2.Hint]: 'Enum' }); -} -exports.Enum = Enum; - - -/***/ }), - -/***/ 63617: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(41384), exports); - - -/***/ }), - -/***/ 72908: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TypeBoxError = void 0; -/** The base Error type thrown for all TypeBox exceptions */ -class TypeBoxError extends Error { - constructor(message) { - super(message); - } -} -exports.TypeBoxError = TypeBoxError; - - -/***/ }), - -/***/ 94526: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(72908), exports); - - -/***/ }), - -/***/ 87931: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ExcludeFromMappedResult = void 0; -const index_1 = __nccwpck_require__(76675); -const exclude_1 = __nccwpck_require__(43356); -// prettier-ignore -function FromProperties(P, U) { - return globalThis.Object.getOwnPropertyNames(P).reduce((Acc, K2) => { - return { ...Acc, [K2]: (0, exclude_1.Exclude)(P[K2], U) }; - }, {}); -} -// prettier-ignore -function FromMappedResult(R, T) { - return FromProperties(R.properties, T); -} -// prettier-ignore -function ExcludeFromMappedResult(R, T) { - const P = FromMappedResult(R, T); - return (0, index_1.MappedResult)(P); -} -exports.ExcludeFromMappedResult = ExcludeFromMappedResult; - - -/***/ }), - -/***/ 5586: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ExcludeFromTemplateLiteral = void 0; -const exclude_1 = __nccwpck_require__(43356); -const index_1 = __nccwpck_require__(90984); -function ExcludeFromTemplateLiteral(L, R) { - return (0, exclude_1.Exclude)((0, index_1.TemplateLiteralToUnion)(L), R); -} -exports.ExcludeFromTemplateLiteral = ExcludeFromTemplateLiteral; - - -/***/ }), - -/***/ 43356: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Exclude = void 0; -const index_1 = __nccwpck_require__(41743); -const index_2 = __nccwpck_require__(22346); -const index_3 = __nccwpck_require__(40629); -const type_1 = __nccwpck_require__(45157); -const exclude_from_mapped_result_1 = __nccwpck_require__(87931); -const exclude_from_template_literal_1 = __nccwpck_require__(5586); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -function ExcludeRest(L, R) { - const excluded = L.filter((inner) => (0, index_3.ExtendsCheck)(inner, R) === index_3.ExtendsResult.False); - return excluded.length === 1 ? excluded[0] : (0, index_1.Union)(excluded); -} -/** `[Json]` Constructs a type by excluding from unionType all union members that are assignable to excludedMembers */ -function Exclude(L, R, options = {}) { - // overloads - if ((0, type_2.IsTemplateLiteral)(L)) - return (0, type_1.CloneType)((0, exclude_from_template_literal_1.ExcludeFromTemplateLiteral)(L, R), options); - if ((0, type_2.IsMappedResult)(L)) - return (0, type_1.CloneType)((0, exclude_from_mapped_result_1.ExcludeFromMappedResult)(L, R), options); - // prettier-ignore - return (0, type_1.CloneType)((0, type_2.IsUnion)(L) ? ExcludeRest(L.anyOf, R) : - (0, index_3.ExtendsCheck)(L, R) !== index_3.ExtendsResult.False ? (0, index_2.Never)() : L, options); -} -exports.Exclude = Exclude; - - -/***/ }), - -/***/ 10698: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(87931), exports); -__exportStar(__nccwpck_require__(5586), exports); -__exportStar(__nccwpck_require__(43356), exports); - - -/***/ }), - -/***/ 59405: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ExtendsCheck = exports.ExtendsResult = exports.ExtendsResolverError = void 0; -const index_1 = __nccwpck_require__(56234); -const index_2 = __nccwpck_require__(72996); -const index_3 = __nccwpck_require__(46621); -const index_4 = __nccwpck_require__(69429); -const index_5 = __nccwpck_require__(41178); -const index_6 = __nccwpck_require__(90984); -const index_7 = __nccwpck_require__(50059); -const index_8 = __nccwpck_require__(48121); -const index_9 = __nccwpck_require__(94526); -const index_10 = __nccwpck_require__(75289); -class ExtendsResolverError extends index_9.TypeBoxError { -} -exports.ExtendsResolverError = ExtendsResolverError; -var ExtendsResult; -(function (ExtendsResult) { - ExtendsResult[ExtendsResult["Union"] = 0] = "Union"; - ExtendsResult[ExtendsResult["True"] = 1] = "True"; - ExtendsResult[ExtendsResult["False"] = 2] = "False"; -})(ExtendsResult || (exports.ExtendsResult = ExtendsResult = {})); -// ------------------------------------------------------------------ -// IntoBooleanResult -// ------------------------------------------------------------------ -// prettier-ignore -function IntoBooleanResult(result) { - return result === ExtendsResult.False ? result : ExtendsResult.True; -} -// ------------------------------------------------------------------ -// Throw -// ------------------------------------------------------------------ -// prettier-ignore -function Throw(message) { - throw new ExtendsResolverError(message); -} -// ------------------------------------------------------------------ -// StructuralRight -// ------------------------------------------------------------------ -// prettier-ignore -function IsStructuralRight(right) { - return (index_10.TypeGuard.IsNever(right) || - index_10.TypeGuard.IsIntersect(right) || - index_10.TypeGuard.IsUnion(right) || - index_10.TypeGuard.IsUnknown(right) || - index_10.TypeGuard.IsAny(right)); -} -// prettier-ignore -function StructuralRight(left, right) { - return (index_10.TypeGuard.IsNever(right) ? FromNeverRight(left, right) : - index_10.TypeGuard.IsIntersect(right) ? FromIntersectRight(left, right) : - index_10.TypeGuard.IsUnion(right) ? FromUnionRight(left, right) : - index_10.TypeGuard.IsUnknown(right) ? FromUnknownRight(left, right) : - index_10.TypeGuard.IsAny(right) ? FromAnyRight(left, right) : - Throw('StructuralRight')); -} -// ------------------------------------------------------------------ -// Any -// ------------------------------------------------------------------ -// prettier-ignore -function FromAnyRight(left, right) { - return ExtendsResult.True; -} -// prettier-ignore -function FromAny(left, right) { - return (index_10.TypeGuard.IsIntersect(right) ? FromIntersectRight(left, right) : - (index_10.TypeGuard.IsUnion(right) && right.anyOf.some((schema) => index_10.TypeGuard.IsAny(schema) || index_10.TypeGuard.IsUnknown(schema))) ? ExtendsResult.True : - index_10.TypeGuard.IsUnion(right) ? ExtendsResult.Union : - index_10.TypeGuard.IsUnknown(right) ? ExtendsResult.True : - index_10.TypeGuard.IsAny(right) ? ExtendsResult.True : - ExtendsResult.Union); -} -// ------------------------------------------------------------------ -// Array -// ------------------------------------------------------------------ -// prettier-ignore -function FromArrayRight(left, right) { - return (index_10.TypeGuard.IsUnknown(left) ? ExtendsResult.False : - index_10.TypeGuard.IsAny(left) ? ExtendsResult.Union : - index_10.TypeGuard.IsNever(left) ? ExtendsResult.True : - ExtendsResult.False); -} -// prettier-ignore -function FromArray(left, right) { - return (index_10.TypeGuard.IsObject(right) && IsObjectArrayLike(right) ? ExtendsResult.True : - IsStructuralRight(right) ? StructuralRight(left, right) : - !index_10.TypeGuard.IsArray(right) ? ExtendsResult.False : - IntoBooleanResult(Visit(left.items, right.items))); -} -// ------------------------------------------------------------------ -// AsyncIterator -// ------------------------------------------------------------------ -// prettier-ignore -function FromAsyncIterator(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - !index_10.TypeGuard.IsAsyncIterator(right) ? ExtendsResult.False : - IntoBooleanResult(Visit(left.items, right.items))); -} -// ------------------------------------------------------------------ -// BigInt -// ------------------------------------------------------------------ -// prettier-ignore -function FromBigInt(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - index_10.TypeGuard.IsRecord(right) ? FromRecordRight(left, right) : - index_10.TypeGuard.IsBigInt(right) ? ExtendsResult.True : - ExtendsResult.False); -} -// ------------------------------------------------------------------ -// Boolean -// ------------------------------------------------------------------ -// prettier-ignore -function FromBooleanRight(left, right) { - return (index_10.TypeGuard.IsLiteralBoolean(left) ? ExtendsResult.True : - index_10.TypeGuard.IsBoolean(left) ? ExtendsResult.True : - ExtendsResult.False); -} -// prettier-ignore -function FromBoolean(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - index_10.TypeGuard.IsRecord(right) ? FromRecordRight(left, right) : - index_10.TypeGuard.IsBoolean(right) ? ExtendsResult.True : - ExtendsResult.False); -} -// ------------------------------------------------------------------ -// Constructor -// ------------------------------------------------------------------ -// prettier-ignore -function FromConstructor(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - !index_10.TypeGuard.IsConstructor(right) ? ExtendsResult.False : - left.parameters.length > right.parameters.length ? ExtendsResult.False : - (!left.parameters.every((schema, index) => IntoBooleanResult(Visit(right.parameters[index], schema)) === ExtendsResult.True)) ? ExtendsResult.False : - IntoBooleanResult(Visit(left.returns, right.returns))); -} -// ------------------------------------------------------------------ -// Date -// ------------------------------------------------------------------ -// prettier-ignore -function FromDate(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - index_10.TypeGuard.IsRecord(right) ? FromRecordRight(left, right) : - index_10.TypeGuard.IsDate(right) ? ExtendsResult.True : - ExtendsResult.False); -} -// ------------------------------------------------------------------ -// Function -// ------------------------------------------------------------------ -// prettier-ignore -function FromFunction(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - !index_10.TypeGuard.IsFunction(right) ? ExtendsResult.False : - left.parameters.length > right.parameters.length ? ExtendsResult.False : - (!left.parameters.every((schema, index) => IntoBooleanResult(Visit(right.parameters[index], schema)) === ExtendsResult.True)) ? ExtendsResult.False : - IntoBooleanResult(Visit(left.returns, right.returns))); -} -// ------------------------------------------------------------------ -// Integer -// ------------------------------------------------------------------ -// prettier-ignore -function FromIntegerRight(left, right) { - return (index_10.TypeGuard.IsLiteral(left) && index_10.ValueGuard.IsNumber(left.const) ? ExtendsResult.True : - index_10.TypeGuard.IsNumber(left) || index_10.TypeGuard.IsInteger(left) ? ExtendsResult.True : - ExtendsResult.False); -} -// prettier-ignore -function FromInteger(left, right) { - return (index_10.TypeGuard.IsInteger(right) || index_10.TypeGuard.IsNumber(right) ? ExtendsResult.True : - IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - index_10.TypeGuard.IsRecord(right) ? FromRecordRight(left, right) : - ExtendsResult.False); -} -// ------------------------------------------------------------------ -// Intersect -// ------------------------------------------------------------------ -// prettier-ignore -function FromIntersectRight(left, right) { - return right.allOf.every((schema) => Visit(left, schema) === ExtendsResult.True) - ? ExtendsResult.True - : ExtendsResult.False; -} -// prettier-ignore -function FromIntersect(left, right) { - return left.allOf.some((schema) => Visit(schema, right) === ExtendsResult.True) - ? ExtendsResult.True - : ExtendsResult.False; -} -// ------------------------------------------------------------------ -// Iterator -// ------------------------------------------------------------------ -// prettier-ignore -function FromIterator(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - !index_10.TypeGuard.IsIterator(right) ? ExtendsResult.False : - IntoBooleanResult(Visit(left.items, right.items))); -} -// ------------------------------------------------------------------ -// Literal -// ------------------------------------------------------------------ -// prettier-ignore -function FromLiteral(left, right) { - return (index_10.TypeGuard.IsLiteral(right) && right.const === left.const ? ExtendsResult.True : - IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - index_10.TypeGuard.IsRecord(right) ? FromRecordRight(left, right) : - index_10.TypeGuard.IsString(right) ? FromStringRight(left, right) : - index_10.TypeGuard.IsNumber(right) ? FromNumberRight(left, right) : - index_10.TypeGuard.IsInteger(right) ? FromIntegerRight(left, right) : - index_10.TypeGuard.IsBoolean(right) ? FromBooleanRight(left, right) : - ExtendsResult.False); -} -// ------------------------------------------------------------------ -// Never -// ------------------------------------------------------------------ -// prettier-ignore -function FromNeverRight(left, right) { - return ExtendsResult.False; -} -// prettier-ignore -function FromNever(left, right) { - return ExtendsResult.True; -} -// ------------------------------------------------------------------ -// Not -// ------------------------------------------------------------------ -// prettier-ignore -function UnwrapTNot(schema) { - let [current, depth] = [schema, 0]; - while (true) { - if (!index_10.TypeGuard.IsNot(current)) - break; - current = current.not; - depth += 1; - } - return depth % 2 === 0 ? current : (0, index_5.Unknown)(); -} -// prettier-ignore -function FromNot(left, right) { - // TypeScript has no concept of negated types, and attempts to correctly check the negated - // type at runtime would put TypeBox at odds with TypeScripts ability to statically infer - // the type. Instead we unwrap to either unknown or T and continue evaluating. - // prettier-ignore - return (index_10.TypeGuard.IsNot(left) ? Visit(UnwrapTNot(left), right) : - index_10.TypeGuard.IsNot(right) ? Visit(left, UnwrapTNot(right)) : - Throw('Invalid fallthrough for Not')); -} -// ------------------------------------------------------------------ -// Null -// ------------------------------------------------------------------ -// prettier-ignore -function FromNull(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - index_10.TypeGuard.IsRecord(right) ? FromRecordRight(left, right) : - index_10.TypeGuard.IsNull(right) ? ExtendsResult.True : - ExtendsResult.False); -} -// ------------------------------------------------------------------ -// Number -// ------------------------------------------------------------------ -// prettier-ignore -function FromNumberRight(left, right) { - return (index_10.TypeGuard.IsLiteralNumber(left) ? ExtendsResult.True : - index_10.TypeGuard.IsNumber(left) || index_10.TypeGuard.IsInteger(left) ? ExtendsResult.True : - ExtendsResult.False); -} -// prettier-ignore -function FromNumber(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - index_10.TypeGuard.IsRecord(right) ? FromRecordRight(left, right) : - index_10.TypeGuard.IsInteger(right) || index_10.TypeGuard.IsNumber(right) ? ExtendsResult.True : - ExtendsResult.False); -} -// ------------------------------------------------------------------ -// Object -// ------------------------------------------------------------------ -// prettier-ignore -function IsObjectPropertyCount(schema, count) { - return Object.getOwnPropertyNames(schema.properties).length === count; -} -// prettier-ignore -function IsObjectStringLike(schema) { - return IsObjectArrayLike(schema); -} -// prettier-ignore -function IsObjectSymbolLike(schema) { - return IsObjectPropertyCount(schema, 0) || (IsObjectPropertyCount(schema, 1) && 'description' in schema.properties && index_10.TypeGuard.IsUnion(schema.properties.description) && schema.properties.description.anyOf.length === 2 && ((index_10.TypeGuard.IsString(schema.properties.description.anyOf[0]) && - index_10.TypeGuard.IsUndefined(schema.properties.description.anyOf[1])) || (index_10.TypeGuard.IsString(schema.properties.description.anyOf[1]) && - index_10.TypeGuard.IsUndefined(schema.properties.description.anyOf[0])))); -} -// prettier-ignore -function IsObjectNumberLike(schema) { - return IsObjectPropertyCount(schema, 0); -} -// prettier-ignore -function IsObjectBooleanLike(schema) { - return IsObjectPropertyCount(schema, 0); -} -// prettier-ignore -function IsObjectBigIntLike(schema) { - return IsObjectPropertyCount(schema, 0); -} -// prettier-ignore -function IsObjectDateLike(schema) { - return IsObjectPropertyCount(schema, 0); -} -// prettier-ignore -function IsObjectUint8ArrayLike(schema) { - return IsObjectArrayLike(schema); -} -// prettier-ignore -function IsObjectFunctionLike(schema) { - const length = (0, index_3.Number)(); - return IsObjectPropertyCount(schema, 0) || (IsObjectPropertyCount(schema, 1) && 'length' in schema.properties && IntoBooleanResult(Visit(schema.properties['length'], length)) === ExtendsResult.True); -} -// prettier-ignore -function IsObjectConstructorLike(schema) { - return IsObjectPropertyCount(schema, 0); -} -// prettier-ignore -function IsObjectArrayLike(schema) { - const length = (0, index_3.Number)(); - return IsObjectPropertyCount(schema, 0) || (IsObjectPropertyCount(schema, 1) && 'length' in schema.properties && IntoBooleanResult(Visit(schema.properties['length'], length)) === ExtendsResult.True); -} -// prettier-ignore -function IsObjectPromiseLike(schema) { - const then = (0, index_2.Function)([(0, index_1.Any)()], (0, index_1.Any)()); - return IsObjectPropertyCount(schema, 0) || (IsObjectPropertyCount(schema, 1) && 'then' in schema.properties && IntoBooleanResult(Visit(schema.properties['then'], then)) === ExtendsResult.True); -} -// ------------------------------------------------------------------ -// Property -// ------------------------------------------------------------------ -// prettier-ignore -function Property(left, right) { - return (Visit(left, right) === ExtendsResult.False ? ExtendsResult.False : - index_10.TypeGuard.IsOptional(left) && !index_10.TypeGuard.IsOptional(right) ? ExtendsResult.False : - ExtendsResult.True); -} -// prettier-ignore -function FromObjectRight(left, right) { - return (index_10.TypeGuard.IsUnknown(left) ? ExtendsResult.False : - index_10.TypeGuard.IsAny(left) ? ExtendsResult.Union : (index_10.TypeGuard.IsNever(left) || - (index_10.TypeGuard.IsLiteralString(left) && IsObjectStringLike(right)) || - (index_10.TypeGuard.IsLiteralNumber(left) && IsObjectNumberLike(right)) || - (index_10.TypeGuard.IsLiteralBoolean(left) && IsObjectBooleanLike(right)) || - (index_10.TypeGuard.IsSymbol(left) && IsObjectSymbolLike(right)) || - (index_10.TypeGuard.IsBigInt(left) && IsObjectBigIntLike(right)) || - (index_10.TypeGuard.IsString(left) && IsObjectStringLike(right)) || - (index_10.TypeGuard.IsSymbol(left) && IsObjectSymbolLike(right)) || - (index_10.TypeGuard.IsNumber(left) && IsObjectNumberLike(right)) || - (index_10.TypeGuard.IsInteger(left) && IsObjectNumberLike(right)) || - (index_10.TypeGuard.IsBoolean(left) && IsObjectBooleanLike(right)) || - (index_10.TypeGuard.IsUint8Array(left) && IsObjectUint8ArrayLike(right)) || - (index_10.TypeGuard.IsDate(left) && IsObjectDateLike(right)) || - (index_10.TypeGuard.IsConstructor(left) && IsObjectConstructorLike(right)) || - (index_10.TypeGuard.IsFunction(left) && IsObjectFunctionLike(right))) ? ExtendsResult.True : - (index_10.TypeGuard.IsRecord(left) && index_10.TypeGuard.IsString(RecordKey(left))) ? (() => { - // When expressing a Record with literal key values, the Record is converted into a Object with - // the Hint assigned as `Record`. This is used to invert the extends logic. - return right[index_8.Hint] === 'Record' ? ExtendsResult.True : ExtendsResult.False; - })() : - (index_10.TypeGuard.IsRecord(left) && index_10.TypeGuard.IsNumber(RecordKey(left))) ? (() => { - return IsObjectPropertyCount(right, 0) ? ExtendsResult.True : ExtendsResult.False; - })() : - ExtendsResult.False); -} -// prettier-ignore -function FromObject(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsRecord(right) ? FromRecordRight(left, right) : - !index_10.TypeGuard.IsObject(right) ? ExtendsResult.False : - (() => { - for (const key of Object.getOwnPropertyNames(right.properties)) { - if (!(key in left.properties) && !index_10.TypeGuard.IsOptional(right.properties[key])) { - return ExtendsResult.False; - } - if (index_10.TypeGuard.IsOptional(right.properties[key])) { - return ExtendsResult.True; - } - if (Property(left.properties[key], right.properties[key]) === ExtendsResult.False) { - return ExtendsResult.False; - } - } - return ExtendsResult.True; - })()); -} -// ------------------------------------------------------------------ -// Promise -// ------------------------------------------------------------------ -// prettier-ignore -function FromPromise(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) && IsObjectPromiseLike(right) ? ExtendsResult.True : - !index_10.TypeGuard.IsPromise(right) ? ExtendsResult.False : - IntoBooleanResult(Visit(left.item, right.item))); -} -// ------------------------------------------------------------------ -// Record -// ------------------------------------------------------------------ -// prettier-ignore -function RecordKey(schema) { - return (index_7.PatternNumberExact in schema.patternProperties ? (0, index_3.Number)() : - index_7.PatternStringExact in schema.patternProperties ? (0, index_4.String)() : - Throw('Unknown record key pattern')); -} -// prettier-ignore -function RecordValue(schema) { - return (index_7.PatternNumberExact in schema.patternProperties ? schema.patternProperties[index_7.PatternNumberExact] : - index_7.PatternStringExact in schema.patternProperties ? schema.patternProperties[index_7.PatternStringExact] : - Throw('Unable to get record value schema')); -} -// prettier-ignore -function FromRecordRight(left, right) { - const [Key, Value] = [RecordKey(right), RecordValue(right)]; - return ((index_10.TypeGuard.IsLiteralString(left) && index_10.TypeGuard.IsNumber(Key) && IntoBooleanResult(Visit(left, Value)) === ExtendsResult.True) ? ExtendsResult.True : - index_10.TypeGuard.IsUint8Array(left) && index_10.TypeGuard.IsNumber(Key) ? Visit(left, Value) : - index_10.TypeGuard.IsString(left) && index_10.TypeGuard.IsNumber(Key) ? Visit(left, Value) : - index_10.TypeGuard.IsArray(left) && index_10.TypeGuard.IsNumber(Key) ? Visit(left, Value) : - index_10.TypeGuard.IsObject(left) ? (() => { - for (const key of Object.getOwnPropertyNames(left.properties)) { - if (Property(Value, left.properties[key]) === ExtendsResult.False) { - return ExtendsResult.False; - } - } - return ExtendsResult.True; - })() : - ExtendsResult.False); -} -// prettier-ignore -function FromRecord(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - !index_10.TypeGuard.IsRecord(right) ? ExtendsResult.False : - Visit(RecordValue(left), RecordValue(right))); -} -// ------------------------------------------------------------------ -// RegExp -// ------------------------------------------------------------------ -// prettier-ignore -function FromRegExp(left, right) { - // Note: RegExp types evaluate as strings, not RegExp objects. - // Here we remap either into string and continue evaluating. - const L = index_10.TypeGuard.IsRegExp(left) ? (0, index_4.String)() : left; - const R = index_10.TypeGuard.IsRegExp(right) ? (0, index_4.String)() : right; - return Visit(L, R); -} -// ------------------------------------------------------------------ -// String -// ------------------------------------------------------------------ -// prettier-ignore -function FromStringRight(left, right) { - return (index_10.TypeGuard.IsLiteral(left) && index_10.ValueGuard.IsString(left.const) ? ExtendsResult.True : - index_10.TypeGuard.IsString(left) ? ExtendsResult.True : - ExtendsResult.False); -} -// prettier-ignore -function FromString(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - index_10.TypeGuard.IsRecord(right) ? FromRecordRight(left, right) : - index_10.TypeGuard.IsString(right) ? ExtendsResult.True : - ExtendsResult.False); -} -// ------------------------------------------------------------------ -// Symbol -// ------------------------------------------------------------------ -// prettier-ignore -function FromSymbol(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - index_10.TypeGuard.IsRecord(right) ? FromRecordRight(left, right) : - index_10.TypeGuard.IsSymbol(right) ? ExtendsResult.True : - ExtendsResult.False); -} -// ------------------------------------------------------------------ -// TemplateLiteral -// ------------------------------------------------------------------ -// prettier-ignore -function FromTemplateLiteral(left, right) { - // TemplateLiteral types are resolved to either unions for finite expressions or string - // for infinite expressions. Here we call to TemplateLiteralResolver to resolve for - // either type and continue evaluating. - return (index_10.TypeGuard.IsTemplateLiteral(left) ? Visit((0, index_6.TemplateLiteralToUnion)(left), right) : - index_10.TypeGuard.IsTemplateLiteral(right) ? Visit(left, (0, index_6.TemplateLiteralToUnion)(right)) : - Throw('Invalid fallthrough for TemplateLiteral')); -} -// ------------------------------------------------------------------ -// Tuple -// ------------------------------------------------------------------ -// prettier-ignore -function IsArrayOfTuple(left, right) { - return (index_10.TypeGuard.IsArray(right) && - left.items !== undefined && - left.items.every((schema) => Visit(schema, right.items) === ExtendsResult.True)); -} -// prettier-ignore -function FromTupleRight(left, right) { - return (index_10.TypeGuard.IsNever(left) ? ExtendsResult.True : - index_10.TypeGuard.IsUnknown(left) ? ExtendsResult.False : - index_10.TypeGuard.IsAny(left) ? ExtendsResult.Union : - ExtendsResult.False); -} -// prettier-ignore -function FromTuple(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) && IsObjectArrayLike(right) ? ExtendsResult.True : - index_10.TypeGuard.IsArray(right) && IsArrayOfTuple(left, right) ? ExtendsResult.True : - !index_10.TypeGuard.IsTuple(right) ? ExtendsResult.False : - (index_10.ValueGuard.IsUndefined(left.items) && !index_10.ValueGuard.IsUndefined(right.items)) || (!index_10.ValueGuard.IsUndefined(left.items) && index_10.ValueGuard.IsUndefined(right.items)) ? ExtendsResult.False : - (index_10.ValueGuard.IsUndefined(left.items) && !index_10.ValueGuard.IsUndefined(right.items)) ? ExtendsResult.True : - left.items.every((schema, index) => Visit(schema, right.items[index]) === ExtendsResult.True) ? ExtendsResult.True : - ExtendsResult.False); -} -// ------------------------------------------------------------------ -// Uint8Array -// ------------------------------------------------------------------ -// prettier-ignore -function FromUint8Array(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - index_10.TypeGuard.IsRecord(right) ? FromRecordRight(left, right) : - index_10.TypeGuard.IsUint8Array(right) ? ExtendsResult.True : - ExtendsResult.False); -} -// ------------------------------------------------------------------ -// Undefined -// ------------------------------------------------------------------ -// prettier-ignore -function FromUndefined(left, right) { - return (IsStructuralRight(right) ? StructuralRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - index_10.TypeGuard.IsRecord(right) ? FromRecordRight(left, right) : - index_10.TypeGuard.IsVoid(right) ? FromVoidRight(left, right) : - index_10.TypeGuard.IsUndefined(right) ? ExtendsResult.True : - ExtendsResult.False); -} -// ------------------------------------------------------------------ -// Union -// ------------------------------------------------------------------ -// prettier-ignore -function FromUnionRight(left, right) { - return right.anyOf.some((schema) => Visit(left, schema) === ExtendsResult.True) - ? ExtendsResult.True - : ExtendsResult.False; -} -// prettier-ignore -function FromUnion(left, right) { - return left.anyOf.every((schema) => Visit(schema, right) === ExtendsResult.True) - ? ExtendsResult.True - : ExtendsResult.False; -} -// ------------------------------------------------------------------ -// Unknown -// ------------------------------------------------------------------ -// prettier-ignore -function FromUnknownRight(left, right) { - return ExtendsResult.True; -} -// prettier-ignore -function FromUnknown(left, right) { - return (index_10.TypeGuard.IsNever(right) ? FromNeverRight(left, right) : - index_10.TypeGuard.IsIntersect(right) ? FromIntersectRight(left, right) : - index_10.TypeGuard.IsUnion(right) ? FromUnionRight(left, right) : - index_10.TypeGuard.IsAny(right) ? FromAnyRight(left, right) : - index_10.TypeGuard.IsString(right) ? FromStringRight(left, right) : - index_10.TypeGuard.IsNumber(right) ? FromNumberRight(left, right) : - index_10.TypeGuard.IsInteger(right) ? FromIntegerRight(left, right) : - index_10.TypeGuard.IsBoolean(right) ? FromBooleanRight(left, right) : - index_10.TypeGuard.IsArray(right) ? FromArrayRight(left, right) : - index_10.TypeGuard.IsTuple(right) ? FromTupleRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - index_10.TypeGuard.IsUnknown(right) ? ExtendsResult.True : - ExtendsResult.False); -} -// ------------------------------------------------------------------ -// Void -// ------------------------------------------------------------------ -// prettier-ignore -function FromVoidRight(left, right) { - return (index_10.TypeGuard.IsUndefined(left) ? ExtendsResult.True : - index_10.TypeGuard.IsUndefined(left) ? ExtendsResult.True : - ExtendsResult.False); -} -// prettier-ignore -function FromVoid(left, right) { - return (index_10.TypeGuard.IsIntersect(right) ? FromIntersectRight(left, right) : - index_10.TypeGuard.IsUnion(right) ? FromUnionRight(left, right) : - index_10.TypeGuard.IsUnknown(right) ? FromUnknownRight(left, right) : - index_10.TypeGuard.IsAny(right) ? FromAnyRight(left, right) : - index_10.TypeGuard.IsObject(right) ? FromObjectRight(left, right) : - index_10.TypeGuard.IsVoid(right) ? ExtendsResult.True : - ExtendsResult.False); -} -// prettier-ignore -function Visit(left, right) { - return ( - // resolvable - (index_10.TypeGuard.IsTemplateLiteral(left) || index_10.TypeGuard.IsTemplateLiteral(right)) ? FromTemplateLiteral(left, right) : - (index_10.TypeGuard.IsRegExp(left) || index_10.TypeGuard.IsRegExp(right)) ? FromRegExp(left, right) : - (index_10.TypeGuard.IsNot(left) || index_10.TypeGuard.IsNot(right)) ? FromNot(left, right) : - // standard - index_10.TypeGuard.IsAny(left) ? FromAny(left, right) : - index_10.TypeGuard.IsArray(left) ? FromArray(left, right) : - index_10.TypeGuard.IsBigInt(left) ? FromBigInt(left, right) : - index_10.TypeGuard.IsBoolean(left) ? FromBoolean(left, right) : - index_10.TypeGuard.IsAsyncIterator(left) ? FromAsyncIterator(left, right) : - index_10.TypeGuard.IsConstructor(left) ? FromConstructor(left, right) : - index_10.TypeGuard.IsDate(left) ? FromDate(left, right) : - index_10.TypeGuard.IsFunction(left) ? FromFunction(left, right) : - index_10.TypeGuard.IsInteger(left) ? FromInteger(left, right) : - index_10.TypeGuard.IsIntersect(left) ? FromIntersect(left, right) : - index_10.TypeGuard.IsIterator(left) ? FromIterator(left, right) : - index_10.TypeGuard.IsLiteral(left) ? FromLiteral(left, right) : - index_10.TypeGuard.IsNever(left) ? FromNever(left, right) : - index_10.TypeGuard.IsNull(left) ? FromNull(left, right) : - index_10.TypeGuard.IsNumber(left) ? FromNumber(left, right) : - index_10.TypeGuard.IsObject(left) ? FromObject(left, right) : - index_10.TypeGuard.IsRecord(left) ? FromRecord(left, right) : - index_10.TypeGuard.IsString(left) ? FromString(left, right) : - index_10.TypeGuard.IsSymbol(left) ? FromSymbol(left, right) : - index_10.TypeGuard.IsTuple(left) ? FromTuple(left, right) : - index_10.TypeGuard.IsPromise(left) ? FromPromise(left, right) : - index_10.TypeGuard.IsUint8Array(left) ? FromUint8Array(left, right) : - index_10.TypeGuard.IsUndefined(left) ? FromUndefined(left, right) : - index_10.TypeGuard.IsUnion(left) ? FromUnion(left, right) : - index_10.TypeGuard.IsUnknown(left) ? FromUnknown(left, right) : - index_10.TypeGuard.IsVoid(left) ? FromVoid(left, right) : - Throw(`Unknown left type operand '${left[index_8.Kind]}'`)); -} -function ExtendsCheck(left, right) { - return Visit(left, right); -} -exports.ExtendsCheck = ExtendsCheck; - - -/***/ }), - -/***/ 16223: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ExtendsFromMappedKey = void 0; -const index_1 = __nccwpck_require__(76675); -const index_2 = __nccwpck_require__(24727); -const extends_1 = __nccwpck_require__(68936); -// prettier-ignore -function FromPropertyKey(K, U, L, R, options) { - return { - [K]: (0, extends_1.Extends)((0, index_2.Literal)(K), U, L, R, options) - }; -} -// prettier-ignore -function FromPropertyKeys(K, U, L, R, options) { - return K.reduce((Acc, LK) => { - return { ...Acc, ...FromPropertyKey(LK, U, L, R, options) }; - }, {}); -} -// prettier-ignore -function FromMappedKey(K, U, L, R, options) { - return FromPropertyKeys(K.keys, U, L, R, options); -} -// prettier-ignore -function ExtendsFromMappedKey(T, U, L, R, options) { - const P = FromMappedKey(T, U, L, R, options); - return (0, index_1.MappedResult)(P); -} -exports.ExtendsFromMappedKey = ExtendsFromMappedKey; - - -/***/ }), - -/***/ 64311: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ExtendsFromMappedResult = void 0; -const index_1 = __nccwpck_require__(76675); -const extends_1 = __nccwpck_require__(68936); -// prettier-ignore -function FromProperties(P, Right, True, False, options) { - return globalThis.Object.getOwnPropertyNames(P).reduce((Acc, K2) => { - return { ...Acc, [K2]: (0, extends_1.Extends)(P[K2], Right, True, False, options) }; - }, {}); -} -// prettier-ignore -function FromMappedResult(Left, Right, True, False, options) { - return FromProperties(Left.properties, Right, True, False, options); -} -// prettier-ignore -function ExtendsFromMappedResult(Left, Right, True, False, options) { - const P = FromMappedResult(Left, Right, True, False, options); - return (0, index_1.MappedResult)(P); -} -exports.ExtendsFromMappedResult = ExtendsFromMappedResult; - - -/***/ }), - -/***/ 1409: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ExtendsUndefinedCheck = void 0; -const index_1 = __nccwpck_require__(48121); -/** Fast undefined check used for properties of type undefined */ -function Intersect(schema) { - return schema.allOf.every((schema) => ExtendsUndefinedCheck(schema)); -} -function Union(schema) { - return schema.anyOf.some((schema) => ExtendsUndefinedCheck(schema)); -} -function Not(schema) { - return !ExtendsUndefinedCheck(schema.not); -} -/** Fast undefined check used for properties of type undefined */ -// prettier-ignore -function ExtendsUndefinedCheck(schema) { - return (schema[index_1.Kind] === 'Intersect' ? Intersect(schema) : - schema[index_1.Kind] === 'Union' ? Union(schema) : - schema[index_1.Kind] === 'Not' ? Not(schema) : - schema[index_1.Kind] === 'Undefined' ? true : - false); -} -exports.ExtendsUndefinedCheck = ExtendsUndefinedCheck; - - -/***/ }), - -/***/ 68936: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Extends = void 0; -const index_1 = __nccwpck_require__(41743); -const extends_check_1 = __nccwpck_require__(59405); -const type_1 = __nccwpck_require__(45157); -const extends_from_mapped_key_1 = __nccwpck_require__(16223); -const extends_from_mapped_result_1 = __nccwpck_require__(64311); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -// prettier-ignore -function ExtendsResolve(left, right, trueType, falseType) { - const R = (0, extends_check_1.ExtendsCheck)(left, right); - return (R === extends_check_1.ExtendsResult.Union ? (0, index_1.Union)([trueType, falseType]) : - R === extends_check_1.ExtendsResult.True ? trueType : - falseType); -} -/** `[Json]` Creates a Conditional type */ -function Extends(L, R, T, F, options = {}) { - // prettier-ignore - return ((0, type_2.IsMappedResult)(L) ? (0, extends_from_mapped_result_1.ExtendsFromMappedResult)(L, R, T, F, options) : - (0, type_2.IsMappedKey)(L) ? (0, type_1.CloneType)((0, extends_from_mapped_key_1.ExtendsFromMappedKey)(L, R, T, F, options)) : - (0, type_1.CloneType)(ExtendsResolve(L, R, T, F), options)); -} -exports.Extends = Extends; - - -/***/ }), - -/***/ 40629: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(59405), exports); -__exportStar(__nccwpck_require__(16223), exports); -__exportStar(__nccwpck_require__(64311), exports); -__exportStar(__nccwpck_require__(1409), exports); -__exportStar(__nccwpck_require__(68936), exports); - - -/***/ }), - -/***/ 25023: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ExtractFromMappedResult = void 0; -const index_1 = __nccwpck_require__(76675); -const extract_1 = __nccwpck_require__(58480); -// prettier-ignore -function FromProperties(P, T) { - return globalThis.Object.getOwnPropertyNames(P).reduce((Acc, K2) => { - return { ...Acc, [K2]: (0, extract_1.Extract)(P[K2], T) }; - }, {}); -} -// prettier-ignore -function FromMappedResult(R, T) { - return FromProperties(R.properties, T); -} -// prettier-ignore -function ExtractFromMappedResult(R, T) { - const P = FromMappedResult(R, T); - return (0, index_1.MappedResult)(P); -} -exports.ExtractFromMappedResult = ExtractFromMappedResult; - - -/***/ }), - -/***/ 65638: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ExtractFromTemplateLiteral = void 0; -const extract_1 = __nccwpck_require__(58480); -const index_1 = __nccwpck_require__(90984); -function ExtractFromTemplateLiteral(L, R) { - return (0, extract_1.Extract)((0, index_1.TemplateLiteralToUnion)(L), R); -} -exports.ExtractFromTemplateLiteral = ExtractFromTemplateLiteral; - - -/***/ }), - -/***/ 58480: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Extract = void 0; -const index_1 = __nccwpck_require__(41743); -const index_2 = __nccwpck_require__(22346); -const index_3 = __nccwpck_require__(40629); -const type_1 = __nccwpck_require__(45157); -const extract_from_mapped_result_1 = __nccwpck_require__(25023); -const extract_from_template_literal_1 = __nccwpck_require__(65638); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -function ExtractRest(L, R) { - const extracted = L.filter((inner) => (0, index_3.ExtendsCheck)(inner, R) !== index_3.ExtendsResult.False); - return extracted.length === 1 ? extracted[0] : (0, index_1.Union)(extracted); -} -/** `[Json]` Constructs a type by extracting from type all union members that are assignable to union */ -function Extract(L, R, options = {}) { - // overloads - if ((0, type_2.IsTemplateLiteral)(L)) - return (0, type_1.CloneType)((0, extract_from_template_literal_1.ExtractFromTemplateLiteral)(L, R), options); - if ((0, type_2.IsMappedResult)(L)) - return (0, type_1.CloneType)((0, extract_from_mapped_result_1.ExtractFromMappedResult)(L, R), options); - // prettier-ignore - return (0, type_1.CloneType)((0, type_2.IsUnion)(L) ? ExtractRest(L.anyOf, R) : - (0, index_3.ExtendsCheck)(L, R) !== index_3.ExtendsResult.False ? L : (0, index_2.Never)(), options); -} -exports.Extract = Extract; - - -/***/ }), - -/***/ 14301: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(25023), exports); -__exportStar(__nccwpck_require__(65638), exports); -__exportStar(__nccwpck_require__(58480), exports); - - -/***/ }), - -/***/ 3494: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Function = void 0; -const type_1 = __nccwpck_require__(45157); -const index_1 = __nccwpck_require__(48121); -/** `[JavaScript]` Creates a Function type */ -function Function(parameters, returns, options) { - return { - ...options, - [index_1.Kind]: 'Function', - type: 'Function', - parameters: (0, type_1.CloneRest)(parameters), - returns: (0, type_1.CloneType)(returns), - }; -} -exports.Function = Function; - - -/***/ }), - -/***/ 72996: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(3494), exports); - - -/***/ }), - -/***/ 75289: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ValueGuard = exports.TypeGuard = void 0; -exports.TypeGuard = __nccwpck_require__(20109); -exports.ValueGuard = __nccwpck_require__(87280); - - -/***/ }), - -/***/ 20109: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.IsSchema = exports.IsKind = exports.IsVoid = exports.IsUnsafe = exports.IsUnknown = exports.IsUint8Array = exports.IsUnion = exports.IsUnionLiteral = exports.IsUndefined = exports.IsTuple = exports.IsTransform = exports.IsThis = exports.IsTemplateLiteral = exports.IsSymbol = exports.IsString = exports.IsRegExp = exports.IsRef = exports.IsRecursive = exports.IsRecord = exports.IsPromise = exports.IsObject = exports.IsNumber = exports.IsNull = exports.IsNot = exports.IsNever = exports.IsMappedResult = exports.IsMappedKey = exports.IsLiteralValue = exports.IsLiteral = exports.IsLiteralBoolean = exports.IsLiteralNumber = exports.IsLiteralString = exports.IsKindOf = exports.IsIterator = exports.IsIntersect = exports.IsProperties = exports.IsInteger = exports.IsFunction = exports.IsDate = exports.IsConstructor = exports.IsBoolean = exports.IsBigInt = exports.IsAsyncIterator = exports.IsArray = exports.IsAny = exports.IsOptional = exports.IsReadonly = exports.TypeGuardUnknownTypeError = void 0; -const ValueGuard = __nccwpck_require__(87280); -const index_1 = __nccwpck_require__(48121); -const index_2 = __nccwpck_require__(94526); -class TypeGuardUnknownTypeError extends index_2.TypeBoxError { -} -exports.TypeGuardUnknownTypeError = TypeGuardUnknownTypeError; -const KnownTypes = [ - 'Any', - 'Array', - 'AsyncIterator', - 'BigInt', - 'Boolean', - 'Constructor', - 'Date', - 'Enum', - 'Function', - 'Integer', - 'Intersect', - 'Iterator', - 'Literal', - 'MappedKey', - 'MappedResult', - 'Not', - 'Null', - 'Number', - 'Object', - 'Promise', - 'Record', - 'Ref', - 'RegExp', - 'String', - 'Symbol', - 'TemplateLiteral', - 'This', - 'Tuple', - 'Undefined', - 'Union', - 'Uint8Array', - 'Unknown', - 'Void', -]; -function IsPattern(value) { - try { - new RegExp(value); - return true; - } - catch { - return false; - } -} -function IsControlCharacterFree(value) { - if (!ValueGuard.IsString(value)) - return false; - for (let i = 0; i < value.length; i++) { - const code = value.charCodeAt(i); - if ((code >= 7 && code <= 13) || code === 27 || code === 127) { - return false; - } - } - return true; -} -function IsAdditionalProperties(value) { - return IsOptionalBoolean(value) || IsSchema(value); -} -function IsOptionalBigInt(value) { - return ValueGuard.IsUndefined(value) || ValueGuard.IsBigInt(value); -} -function IsOptionalNumber(value) { - return ValueGuard.IsUndefined(value) || ValueGuard.IsNumber(value); -} -function IsOptionalBoolean(value) { - return ValueGuard.IsUndefined(value) || ValueGuard.IsBoolean(value); -} -function IsOptionalString(value) { - return ValueGuard.IsUndefined(value) || ValueGuard.IsString(value); -} -function IsOptionalPattern(value) { - return ValueGuard.IsUndefined(value) || (ValueGuard.IsString(value) && IsControlCharacterFree(value) && IsPattern(value)); -} -function IsOptionalFormat(value) { - return ValueGuard.IsUndefined(value) || (ValueGuard.IsString(value) && IsControlCharacterFree(value)); -} -function IsOptionalSchema(value) { - return ValueGuard.IsUndefined(value) || IsSchema(value); -} -// ------------------------------------------------------------------ -// Modifiers -// ------------------------------------------------------------------ -/** Returns true if this value has a Readonly symbol */ -function IsReadonly(value) { - return ValueGuard.IsObject(value) && value[index_1.ReadonlyKind] === 'Readonly'; -} -exports.IsReadonly = IsReadonly; -/** Returns true if this value has a Optional symbol */ -function IsOptional(value) { - return ValueGuard.IsObject(value) && value[index_1.OptionalKind] === 'Optional'; -} -exports.IsOptional = IsOptional; -// ------------------------------------------------------------------ -// Types -// ------------------------------------------------------------------ -/** Returns true if the given value is TAny */ -function IsAny(value) { - // prettier-ignore - return (IsKindOf(value, 'Any') && - IsOptionalString(value.$id)); -} -exports.IsAny = IsAny; -/** Returns true if the given value is TArray */ -function IsArray(value) { - return (IsKindOf(value, 'Array') && - value.type === 'array' && - IsOptionalString(value.$id) && - IsSchema(value.items) && - IsOptionalNumber(value.minItems) && - IsOptionalNumber(value.maxItems) && - IsOptionalBoolean(value.uniqueItems) && - IsOptionalSchema(value.contains) && - IsOptionalNumber(value.minContains) && - IsOptionalNumber(value.maxContains)); -} -exports.IsArray = IsArray; -/** Returns true if the given value is TAsyncIterator */ -function IsAsyncIterator(value) { - // prettier-ignore - return (IsKindOf(value, 'AsyncIterator') && - value.type === 'AsyncIterator' && - IsOptionalString(value.$id) && - IsSchema(value.items)); -} -exports.IsAsyncIterator = IsAsyncIterator; -/** Returns true if the given value is TBigInt */ -function IsBigInt(value) { - // prettier-ignore - return (IsKindOf(value, 'BigInt') && - value.type === 'bigint' && - IsOptionalString(value.$id) && - IsOptionalBigInt(value.exclusiveMaximum) && - IsOptionalBigInt(value.exclusiveMinimum) && - IsOptionalBigInt(value.maximum) && - IsOptionalBigInt(value.minimum) && - IsOptionalBigInt(value.multipleOf)); -} -exports.IsBigInt = IsBigInt; -/** Returns true if the given value is TBoolean */ -function IsBoolean(value) { - // prettier-ignore - return (IsKindOf(value, 'Boolean') && - value.type === 'boolean' && - IsOptionalString(value.$id)); -} -exports.IsBoolean = IsBoolean; -/** Returns true if the given value is TConstructor */ -function IsConstructor(value) { - // prettier-ignore - return (IsKindOf(value, 'Constructor') && - value.type === 'Constructor' && - IsOptionalString(value.$id) && - ValueGuard.IsArray(value.parameters) && - value.parameters.every(schema => IsSchema(schema)) && - IsSchema(value.returns)); -} -exports.IsConstructor = IsConstructor; -/** Returns true if the given value is TDate */ -function IsDate(value) { - return (IsKindOf(value, 'Date') && - value.type === 'Date' && - IsOptionalString(value.$id) && - IsOptionalNumber(value.exclusiveMaximumTimestamp) && - IsOptionalNumber(value.exclusiveMinimumTimestamp) && - IsOptionalNumber(value.maximumTimestamp) && - IsOptionalNumber(value.minimumTimestamp) && - IsOptionalNumber(value.multipleOfTimestamp)); -} -exports.IsDate = IsDate; -/** Returns true if the given value is TFunction */ -function IsFunction(value) { - // prettier-ignore - return (IsKindOf(value, 'Function') && - value.type === 'Function' && - IsOptionalString(value.$id) && - ValueGuard.IsArray(value.parameters) && - value.parameters.every(schema => IsSchema(schema)) && - IsSchema(value.returns)); -} -exports.IsFunction = IsFunction; -/** Returns true if the given value is TInteger */ -function IsInteger(value) { - return (IsKindOf(value, 'Integer') && - value.type === 'integer' && - IsOptionalString(value.$id) && - IsOptionalNumber(value.exclusiveMaximum) && - IsOptionalNumber(value.exclusiveMinimum) && - IsOptionalNumber(value.maximum) && - IsOptionalNumber(value.minimum) && - IsOptionalNumber(value.multipleOf)); -} -exports.IsInteger = IsInteger; -/** Returns true if the given schema is TProperties */ -function IsProperties(value) { - // prettier-ignore - return (ValueGuard.IsObject(value) && - Object.entries(value).every(([key, schema]) => IsControlCharacterFree(key) && IsSchema(schema))); -} -exports.IsProperties = IsProperties; -/** Returns true if the given value is TIntersect */ -function IsIntersect(value) { - // prettier-ignore - return (IsKindOf(value, 'Intersect') && - (ValueGuard.IsString(value.type) && value.type !== 'object' ? false : true) && - ValueGuard.IsArray(value.allOf) && - value.allOf.every(schema => IsSchema(schema) && !IsTransform(schema)) && - IsOptionalString(value.type) && - (IsOptionalBoolean(value.unevaluatedProperties) || IsOptionalSchema(value.unevaluatedProperties)) && - IsOptionalString(value.$id)); -} -exports.IsIntersect = IsIntersect; -/** Returns true if the given value is TIterator */ -function IsIterator(value) { - // prettier-ignore - return (IsKindOf(value, 'Iterator') && - value.type === 'Iterator' && - IsOptionalString(value.$id) && - IsSchema(value.items)); -} -exports.IsIterator = IsIterator; -/** Returns true if the given value is a TKind with the given name. */ -function IsKindOf(value, kind) { - return ValueGuard.IsObject(value) && index_1.Kind in value && value[index_1.Kind] === kind; -} -exports.IsKindOf = IsKindOf; -/** Returns true if the given value is TLiteral */ -function IsLiteralString(value) { - return IsLiteral(value) && ValueGuard.IsString(value.const); -} -exports.IsLiteralString = IsLiteralString; -/** Returns true if the given value is TLiteral */ -function IsLiteralNumber(value) { - return IsLiteral(value) && ValueGuard.IsNumber(value.const); -} -exports.IsLiteralNumber = IsLiteralNumber; -/** Returns true if the given value is TLiteral */ -function IsLiteralBoolean(value) { - return IsLiteral(value) && ValueGuard.IsBoolean(value.const); -} -exports.IsLiteralBoolean = IsLiteralBoolean; -/** Returns true if the given value is TLiteral */ -function IsLiteral(value) { - // prettier-ignore - return (IsKindOf(value, 'Literal') && - IsOptionalString(value.$id) && IsLiteralValue(value.const)); -} -exports.IsLiteral = IsLiteral; -/** Returns true if the given value is a TLiteralValue */ -function IsLiteralValue(value) { - return ValueGuard.IsBoolean(value) || ValueGuard.IsNumber(value) || ValueGuard.IsString(value); -} -exports.IsLiteralValue = IsLiteralValue; -/** Returns true if the given value is a TMappedKey */ -function IsMappedKey(value) { - // prettier-ignore - return (IsKindOf(value, 'MappedKey') && - ValueGuard.IsArray(value.keys) && - value.keys.every(key => ValueGuard.IsNumber(key) || ValueGuard.IsString(key))); -} -exports.IsMappedKey = IsMappedKey; -/** Returns true if the given value is TMappedResult */ -function IsMappedResult(value) { - // prettier-ignore - return (IsKindOf(value, 'MappedResult') && - IsProperties(value.properties)); -} -exports.IsMappedResult = IsMappedResult; -/** Returns true if the given value is TNever */ -function IsNever(value) { - // prettier-ignore - return (IsKindOf(value, 'Never') && - ValueGuard.IsObject(value.not) && - Object.getOwnPropertyNames(value.not).length === 0); -} -exports.IsNever = IsNever; -/** Returns true if the given value is TNot */ -function IsNot(value) { - // prettier-ignore - return (IsKindOf(value, 'Not') && - IsSchema(value.not)); -} -exports.IsNot = IsNot; -/** Returns true if the given value is TNull */ -function IsNull(value) { - // prettier-ignore - return (IsKindOf(value, 'Null') && - value.type === 'null' && - IsOptionalString(value.$id)); -} -exports.IsNull = IsNull; -/** Returns true if the given value is TNumber */ -function IsNumber(value) { - return (IsKindOf(value, 'Number') && - value.type === 'number' && - IsOptionalString(value.$id) && - IsOptionalNumber(value.exclusiveMaximum) && - IsOptionalNumber(value.exclusiveMinimum) && - IsOptionalNumber(value.maximum) && - IsOptionalNumber(value.minimum) && - IsOptionalNumber(value.multipleOf)); -} -exports.IsNumber = IsNumber; -/** Returns true if the given value is TObject */ -function IsObject(value) { - // prettier-ignore - return (IsKindOf(value, 'Object') && - value.type === 'object' && - IsOptionalString(value.$id) && - IsProperties(value.properties) && - IsAdditionalProperties(value.additionalProperties) && - IsOptionalNumber(value.minProperties) && - IsOptionalNumber(value.maxProperties)); -} -exports.IsObject = IsObject; -/** Returns true if the given value is TPromise */ -function IsPromise(value) { - // prettier-ignore - return (IsKindOf(value, 'Promise') && - value.type === 'Promise' && - IsOptionalString(value.$id) && - IsSchema(value.item)); -} -exports.IsPromise = IsPromise; -/** Returns true if the given value is TRecord */ -function IsRecord(value) { - // prettier-ignore - return (IsKindOf(value, 'Record') && - value.type === 'object' && - IsOptionalString(value.$id) && - IsAdditionalProperties(value.additionalProperties) && - ValueGuard.IsObject(value.patternProperties) && - ((schema) => { - const keys = Object.getOwnPropertyNames(schema.patternProperties); - return (keys.length === 1 && - IsPattern(keys[0]) && - ValueGuard.IsObject(schema.patternProperties) && - IsSchema(schema.patternProperties[keys[0]])); - })(value)); -} -exports.IsRecord = IsRecord; -/** Returns true if this value is TRecursive */ -function IsRecursive(value) { - return ValueGuard.IsObject(value) && index_1.Hint in value && value[index_1.Hint] === 'Recursive'; -} -exports.IsRecursive = IsRecursive; -/** Returns true if the given value is TRef */ -function IsRef(value) { - // prettier-ignore - return (IsKindOf(value, 'Ref') && - IsOptionalString(value.$id) && - ValueGuard.IsString(value.$ref)); -} -exports.IsRef = IsRef; -/** Returns true if the given value is TRegExp */ -function IsRegExp(value) { - // prettier-ignore - return (IsKindOf(value, 'RegExp') && - IsOptionalString(value.$id) && - ValueGuard.IsString(value.source) && - ValueGuard.IsString(value.flags) && - IsOptionalNumber(value.maxLength) && - IsOptionalNumber(value.minLength)); -} -exports.IsRegExp = IsRegExp; -/** Returns true if the given value is TString */ -function IsString(value) { - // prettier-ignore - return (IsKindOf(value, 'String') && - value.type === 'string' && - IsOptionalString(value.$id) && - IsOptionalNumber(value.minLength) && - IsOptionalNumber(value.maxLength) && - IsOptionalPattern(value.pattern) && - IsOptionalFormat(value.format)); -} -exports.IsString = IsString; -/** Returns true if the given value is TSymbol */ -function IsSymbol(value) { - // prettier-ignore - return (IsKindOf(value, 'Symbol') && - value.type === 'symbol' && - IsOptionalString(value.$id)); -} -exports.IsSymbol = IsSymbol; -/** Returns true if the given value is TTemplateLiteral */ -function IsTemplateLiteral(value) { - // prettier-ignore - return (IsKindOf(value, 'TemplateLiteral') && - value.type === 'string' && - ValueGuard.IsString(value.pattern) && - value.pattern[0] === '^' && - value.pattern[value.pattern.length - 1] === '$'); -} -exports.IsTemplateLiteral = IsTemplateLiteral; -/** Returns true if the given value is TThis */ -function IsThis(value) { - // prettier-ignore - return (IsKindOf(value, 'This') && - IsOptionalString(value.$id) && - ValueGuard.IsString(value.$ref)); -} -exports.IsThis = IsThis; -/** Returns true of this value is TTransform */ -function IsTransform(value) { - return ValueGuard.IsObject(value) && index_1.TransformKind in value; -} -exports.IsTransform = IsTransform; -/** Returns true if the given value is TTuple */ -function IsTuple(value) { - // prettier-ignore - return (IsKindOf(value, 'Tuple') && - value.type === 'array' && - IsOptionalString(value.$id) && - ValueGuard.IsNumber(value.minItems) && - ValueGuard.IsNumber(value.maxItems) && - value.minItems === value.maxItems && - (( // empty - ValueGuard.IsUndefined(value.items) && - ValueGuard.IsUndefined(value.additionalItems) && - value.minItems === 0) || (ValueGuard.IsArray(value.items) && - value.items.every(schema => IsSchema(schema))))); -} -exports.IsTuple = IsTuple; -/** Returns true if the given value is TUndefined */ -function IsUndefined(value) { - // prettier-ignore - return (IsKindOf(value, 'Undefined') && - value.type === 'undefined' && - IsOptionalString(value.$id)); -} -exports.IsUndefined = IsUndefined; -/** Returns true if the given value is TUnion[]> */ -function IsUnionLiteral(value) { - return IsUnion(value) && value.anyOf.every((schema) => IsLiteralString(schema) || IsLiteralNumber(schema)); -} -exports.IsUnionLiteral = IsUnionLiteral; -/** Returns true if the given value is TUnion */ -function IsUnion(value) { - // prettier-ignore - return (IsKindOf(value, 'Union') && - IsOptionalString(value.$id) && - ValueGuard.IsObject(value) && - ValueGuard.IsArray(value.anyOf) && - value.anyOf.every(schema => IsSchema(schema))); -} -exports.IsUnion = IsUnion; -/** Returns true if the given value is TUint8Array */ -function IsUint8Array(value) { - // prettier-ignore - return (IsKindOf(value, 'Uint8Array') && - value.type === 'Uint8Array' && - IsOptionalString(value.$id) && - IsOptionalNumber(value.minByteLength) && - IsOptionalNumber(value.maxByteLength)); -} -exports.IsUint8Array = IsUint8Array; -/** Returns true if the given value is TUnknown */ -function IsUnknown(value) { - // prettier-ignore - return (IsKindOf(value, 'Unknown') && - IsOptionalString(value.$id)); -} -exports.IsUnknown = IsUnknown; -/** Returns true if the given value is a raw TUnsafe */ -function IsUnsafe(value) { - return IsKindOf(value, 'Unsafe'); -} -exports.IsUnsafe = IsUnsafe; -/** Returns true if the given value is TVoid */ -function IsVoid(value) { - // prettier-ignore - return (IsKindOf(value, 'Void') && - value.type === 'void' && - IsOptionalString(value.$id)); -} -exports.IsVoid = IsVoid; -/** Returns true if the given value is TKind */ -function IsKind(value) { - return ValueGuard.IsObject(value) && index_1.Kind in value && ValueGuard.IsString(value[index_1.Kind]) && !KnownTypes.includes(value[index_1.Kind]); -} -exports.IsKind = IsKind; -/** Returns true if the given value is TSchema */ -function IsSchema(value) { - // prettier-ignore - return (ValueGuard.IsObject(value)) && (IsAny(value) || - IsArray(value) || - IsBoolean(value) || - IsBigInt(value) || - IsAsyncIterator(value) || - IsConstructor(value) || - IsDate(value) || - IsFunction(value) || - IsInteger(value) || - IsIntersect(value) || - IsIterator(value) || - IsLiteral(value) || - IsMappedKey(value) || - IsMappedResult(value) || - IsNever(value) || - IsNot(value) || - IsNull(value) || - IsNumber(value) || - IsObject(value) || - IsPromise(value) || - IsRecord(value) || - IsRef(value) || - IsRegExp(value) || - IsString(value) || - IsSymbol(value) || - IsTemplateLiteral(value) || - IsThis(value) || - IsTuple(value) || - IsUndefined(value) || - IsUnion(value) || - IsUint8Array(value) || - IsUnknown(value) || - IsUnsafe(value) || - IsVoid(value) || - IsKind(value)); -} -exports.IsSchema = IsSchema; - - -/***/ }), - -/***/ 87280: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.IsUndefined = exports.IsUint8Array = exports.IsSymbol = exports.IsString = exports.IsRegExp = exports.IsObject = exports.IsNumber = exports.IsNull = exports.IsIterator = exports.IsFunction = exports.IsDate = exports.IsBoolean = exports.IsBigInt = exports.IsArray = exports.IsAsyncIterator = void 0; -/** Returns true if this value is an async iterator */ -function IsAsyncIterator(value) { - return IsObject(value) && !IsArray(value) && !IsUint8Array(value) && Symbol.asyncIterator in value; -} -exports.IsAsyncIterator = IsAsyncIterator; -/** Returns true if this value is an array */ -function IsArray(value) { - return Array.isArray(value); -} -exports.IsArray = IsArray; -/** Returns true if this value is bigint */ -function IsBigInt(value) { - return typeof value === 'bigint'; -} -exports.IsBigInt = IsBigInt; -/** Returns true if this value is a boolean */ -function IsBoolean(value) { - return typeof value === 'boolean'; -} -exports.IsBoolean = IsBoolean; -/** Returns true if this value is a Date object */ -function IsDate(value) { - return value instanceof globalThis.Date; -} -exports.IsDate = IsDate; -/** Returns true if this value is a function */ -function IsFunction(value) { - return typeof value === 'function'; -} -exports.IsFunction = IsFunction; -/** Returns true if this value is an iterator */ -function IsIterator(value) { - return IsObject(value) && !IsArray(value) && !IsUint8Array(value) && Symbol.iterator in value; -} -exports.IsIterator = IsIterator; -/** Returns true if this value is null */ -function IsNull(value) { - return value === null; -} -exports.IsNull = IsNull; -/** Returns true if this value is number */ -function IsNumber(value) { - return typeof value === 'number'; -} -exports.IsNumber = IsNumber; -/** Returns true if this value is an object */ -function IsObject(value) { - return typeof value === 'object' && value !== null; -} -exports.IsObject = IsObject; -/** Returns true if this value is RegExp */ -function IsRegExp(value) { - return value instanceof globalThis.RegExp; -} -exports.IsRegExp = IsRegExp; -/** Returns true if this value is string */ -function IsString(value) { - return typeof value === 'string'; -} -exports.IsString = IsString; -/** Returns true if this value is symbol */ -function IsSymbol(value) { - return typeof value === 'symbol'; -} -exports.IsSymbol = IsSymbol; -/** Returns true if this value is a Uint8Array */ -function IsUint8Array(value) { - return value instanceof globalThis.Uint8Array; -} -exports.IsUint8Array = IsUint8Array; -/** Returns true if this value is undefined */ -function IsUndefined(value) { - return value === undefined; -} -exports.IsUndefined = IsUndefined; - - -/***/ }), - -/***/ 74048: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Increment = void 0; -/** Increments the given string value + 1 */ -function Increment(T) { - return (parseInt(T) + 1).toString(); -} -exports.Increment = Increment; - - -/***/ }), - -/***/ 51861: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(74048), exports); - - -/***/ }), - -/***/ 89777: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(33931), exports); -__exportStar(__nccwpck_require__(58355), exports); -__exportStar(__nccwpck_require__(33465), exports); -__exportStar(__nccwpck_require__(30100), exports); - - -/***/ }), - -/***/ 33931: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.IndexFromMappedKey = void 0; -const indexed_1 = __nccwpck_require__(30100); -const index_1 = __nccwpck_require__(76675); -// prettier-ignore -function MappedIndexPropertyKey(T, K, options) { - return { [K]: (0, indexed_1.Index)(T, [K], options) }; -} -// prettier-ignore -function MappedIndexPropertyKeys(T, K, options) { - return K.reduce((Acc, L) => { - return { ...Acc, ...MappedIndexPropertyKey(T, L, options) }; - }, {}); -} -// prettier-ignore -function MappedIndexProperties(T, K, options) { - return MappedIndexPropertyKeys(T, K.keys, options); -} -// prettier-ignore -function IndexFromMappedKey(T, K, options) { - const P = MappedIndexProperties(T, K, options); - return (0, index_1.MappedResult)(P); -} -exports.IndexFromMappedKey = IndexFromMappedKey; - - -/***/ }), - -/***/ 58355: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.IndexFromMappedResult = void 0; -const index_1 = __nccwpck_require__(76675); -const indexed_property_keys_1 = __nccwpck_require__(33465); -const index_2 = __nccwpck_require__(89777); -// prettier-ignore -function FromProperties(T, P, options) { - return globalThis.Object.getOwnPropertyNames(P).reduce((Acc, K2) => { - return { ...Acc, [K2]: (0, index_2.Index)(T, (0, indexed_property_keys_1.IndexPropertyKeys)(P[K2]), options) }; - }, {}); -} -// prettier-ignore -function FromMappedResult(T, R, options) { - return FromProperties(T, R.properties, options); -} -// prettier-ignore -function IndexFromMappedResult(T, R, options) { - const P = FromMappedResult(T, R, options); - return (0, index_1.MappedResult)(P); -} -exports.IndexFromMappedResult = IndexFromMappedResult; - - -/***/ }), - -/***/ 33465: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.IndexPropertyKeys = void 0; -const index_1 = __nccwpck_require__(90984); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_1 = __nccwpck_require__(20109); -// prettier-ignore -function FromTemplateLiteral(T) { - const R = (0, index_1.TemplateLiteralGenerate)(T); - return R.map(S => S.toString()); -} -// prettier-ignore -function FromUnion(T) { - return T.reduce((Acc, L) => { - return [...Acc, ...IndexPropertyKeys(L)]; - }, []); -} -// prettier-ignore -function FromLiteral(T) { - return ([T.toString()] // TS 5.4 observes TLiteralValue as not having a toString() - ); -} -/** Returns a tuple of PropertyKeys derived from the given TSchema */ -// prettier-ignore -function IndexPropertyKeys(T) { - return [...new Set(((0, type_1.IsTemplateLiteral)(T) ? FromTemplateLiteral(T) : - (0, type_1.IsUnion)(T) ? FromUnion(T.anyOf) : - (0, type_1.IsLiteral)(T) ? FromLiteral(T.const) : - (0, type_1.IsNumber)(T) ? ['[number]'] : - (0, type_1.IsInteger)(T) ? ['[number]'] : - []))]; -} -exports.IndexPropertyKeys = IndexPropertyKeys; - - -/***/ }), - -/***/ 30100: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Index = exports.IndexFromPropertyKeys = exports.IndexFromPropertyKey = void 0; -const index_1 = __nccwpck_require__(22346); -const index_2 = __nccwpck_require__(32945); -const index_3 = __nccwpck_require__(41743); -const type_1 = __nccwpck_require__(45157); -const indexed_property_keys_1 = __nccwpck_require__(33465); -const indexed_from_mapped_key_1 = __nccwpck_require__(33931); -const indexed_from_mapped_result_1 = __nccwpck_require__(58355); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -// prettier-ignore -function FromRest(T, K) { - return T.map(L => IndexFromPropertyKey(L, K)); -} -// prettier-ignore -function FromIntersectRest(T) { - return T.filter(L => !(0, type_2.IsNever)(L)); -} -// prettier-ignore -function FromIntersect(T, K) { - return ((0, index_2.IntersectEvaluated)(FromIntersectRest(FromRest(T, K)))); -} -// prettier-ignore -function FromUnionRest(T) { - return (T.some(L => (0, type_2.IsNever)(L)) - ? [] - : T); -} -// prettier-ignore -function FromUnion(T, K) { - return ((0, index_3.UnionEvaluated)(FromUnionRest(FromRest(T, K)))); -} -// prettier-ignore -function FromTuple(T, K) { - return (K in T ? T[K] : - K === '[number]' ? (0, index_3.UnionEvaluated)(T) : - (0, index_1.Never)()); -} -// prettier-ignore -function FromArray(T, K) { - return (K === '[number]' - ? T - : (0, index_1.Never)()); -} -// prettier-ignore -function FromProperty(T, K) { - return (K in T ? T[K] : (0, index_1.Never)()); -} -// prettier-ignore -function IndexFromPropertyKey(T, K) { - return ((0, type_2.IsIntersect)(T) ? FromIntersect(T.allOf, K) : - (0, type_2.IsUnion)(T) ? FromUnion(T.anyOf, K) : - (0, type_2.IsTuple)(T) ? FromTuple(T.items ?? [], K) : - (0, type_2.IsArray)(T) ? FromArray(T.items, K) : - (0, type_2.IsObject)(T) ? FromProperty(T.properties, K) : - (0, index_1.Never)()); -} -exports.IndexFromPropertyKey = IndexFromPropertyKey; -// prettier-ignore -function IndexFromPropertyKeys(T, K) { - return K.map(L => IndexFromPropertyKey(T, L)); -} -exports.IndexFromPropertyKeys = IndexFromPropertyKeys; -// prettier-ignore -function FromSchema(T, K) { - return ((0, index_3.UnionEvaluated)(IndexFromPropertyKeys(T, K))); -} -/** `[Json]` Returns an Indexed property type for the given keys */ -function Index(T, K, options = {}) { - // prettier-ignore - return ((0, type_2.IsMappedResult)(K) ? (0, type_1.CloneType)((0, indexed_from_mapped_result_1.IndexFromMappedResult)(T, K, options)) : - (0, type_2.IsMappedKey)(K) ? (0, type_1.CloneType)((0, indexed_from_mapped_key_1.IndexFromMappedKey)(T, K, options)) : - (0, type_2.IsSchema)(K) ? (0, type_1.CloneType)(FromSchema(T, (0, indexed_property_keys_1.IndexPropertyKeys)(K)), options) : - (0, type_1.CloneType)(FromSchema(T, K), options)); -} -exports.Index = Index; - - -/***/ }), - -/***/ 33458: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(66396), exports); - - -/***/ }), - -/***/ 66396: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.InstanceType = void 0; -const type_1 = __nccwpck_require__(45157); -/** `[JavaScript]` Extracts the InstanceType from the given Constructor type */ -function InstanceType(schema, options = {}) { - return (0, type_1.CloneType)(schema.returns, options); -} -exports.InstanceType = InstanceType; - - -/***/ }), - -/***/ 5578: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(27200), exports); - - -/***/ }), - -/***/ 27200: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Integer = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[Json]` Creates an Integer type */ -function Integer(options = {}) { - return { - ...options, - [index_1.Kind]: 'Integer', - type: 'integer', - }; -} -exports.Integer = Integer; - - -/***/ }), - -/***/ 32945: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(29404), exports); -__exportStar(__nccwpck_require__(42165), exports); -__exportStar(__nccwpck_require__(55536), exports); - - -/***/ }), - -/***/ 68937: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.IntersectCreate = void 0; -const index_1 = __nccwpck_require__(48121); -const type_1 = __nccwpck_require__(45157); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -// ------------------------------------------------------------------ -// IntersectCreate -// ------------------------------------------------------------------ -// prettier-ignore -function IntersectCreate(T, options) { - const allObjects = T.every((schema) => (0, type_2.IsObject)(schema)); - const clonedUnevaluatedProperties = (0, type_2.IsSchema)(options.unevaluatedProperties) - ? { unevaluatedProperties: (0, type_1.CloneType)(options.unevaluatedProperties) } - : {}; - return ((options.unevaluatedProperties === false || (0, type_2.IsSchema)(options.unevaluatedProperties) || allObjects - ? { ...options, ...clonedUnevaluatedProperties, [index_1.Kind]: 'Intersect', type: 'object', allOf: (0, type_1.CloneRest)(T) } - : { ...options, ...clonedUnevaluatedProperties, [index_1.Kind]: 'Intersect', allOf: (0, type_1.CloneRest)(T) })); -} -exports.IntersectCreate = IntersectCreate; - - -/***/ }), - -/***/ 29404: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.IntersectEvaluated = void 0; -const index_1 = __nccwpck_require__(48121); -const type_1 = __nccwpck_require__(45157); -const index_2 = __nccwpck_require__(62202); -const index_3 = __nccwpck_require__(22346); -const index_4 = __nccwpck_require__(31392); -const intersect_create_1 = __nccwpck_require__(68937); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -// prettier-ignore -const type_2 = __nccwpck_require__(20109); -// prettier-ignore -function IsIntersectOptional(T) { - return T.every(L => (0, type_2.IsOptional)(L)); -} -// prettier-ignore -function RemoveOptionalFromType(T) { - return ((0, index_2.Discard)(T, [index_1.OptionalKind])); -} -// prettier-ignore -function RemoveOptionalFromRest(T) { - return T.map(L => (0, type_2.IsOptional)(L) ? RemoveOptionalFromType(L) : L); -} -// prettier-ignore -function ResolveIntersect(T, options) { - return (IsIntersectOptional(T) - ? (0, index_4.Optional)((0, intersect_create_1.IntersectCreate)(RemoveOptionalFromRest(T), options)) - : (0, intersect_create_1.IntersectCreate)(RemoveOptionalFromRest(T), options)); -} -/** `[Json]` Creates an evaluated Intersect type */ -function IntersectEvaluated(T, options = {}) { - if (T.length === 0) - return (0, index_3.Never)(options); - if (T.length === 1) - return (0, type_1.CloneType)(T[0], options); - if (T.some((schema) => (0, type_2.IsTransform)(schema))) - throw new Error('Cannot intersect transform types'); - return ResolveIntersect(T, options); -} -exports.IntersectEvaluated = IntersectEvaluated; - - -/***/ }), - -/***/ 42165: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -const index_1 = __nccwpck_require__(48121); - - -/***/ }), - -/***/ 55536: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Intersect = void 0; -const type_1 = __nccwpck_require__(45157); -const index_1 = __nccwpck_require__(22346); -const intersect_create_1 = __nccwpck_require__(68937); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -/** `[Json]` Creates an evaluated Intersect type */ -function Intersect(T, options = {}) { - if (T.length === 0) - return (0, index_1.Never)(options); - if (T.length === 1) - return (0, type_1.CloneType)(T[0], options); - if (T.some((schema) => (0, type_2.IsTransform)(schema))) - throw new Error('Cannot intersect transform types'); - return (0, intersect_create_1.IntersectCreate)(T, options); -} -exports.Intersect = Intersect; - - -/***/ }), - -/***/ 87241: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Capitalize = void 0; -const intrinsic_1 = __nccwpck_require__(25328); -/** `[Json]` Intrinsic function to Capitalize LiteralString types */ -function Capitalize(T, options = {}) { - return (0, intrinsic_1.Intrinsic)(T, 'Capitalize', options); -} -exports.Capitalize = Capitalize; - - -/***/ }), - -/***/ 71095: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(87241), exports); -__exportStar(__nccwpck_require__(98823), exports); -__exportStar(__nccwpck_require__(25328), exports); -__exportStar(__nccwpck_require__(51022), exports); -__exportStar(__nccwpck_require__(54406), exports); -__exportStar(__nccwpck_require__(24867), exports); - - -/***/ }), - -/***/ 98823: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.IntrinsicFromMappedKey = void 0; -const index_1 = __nccwpck_require__(76675); -const intrinsic_1 = __nccwpck_require__(25328); -const index_2 = __nccwpck_require__(24727); -// prettier-ignore -function MappedIntrinsicPropertyKey(K, M, options) { - return { - [K]: (0, intrinsic_1.Intrinsic)((0, index_2.Literal)(K), M, options) - }; -} -// prettier-ignore -function MappedIntrinsicPropertyKeys(K, M, options) { - return K.reduce((Acc, L) => { - return { ...Acc, ...MappedIntrinsicPropertyKey(L, M, options) }; - }, {}); -} -// prettier-ignore -function MappedIntrinsicProperties(T, M, options) { - return MappedIntrinsicPropertyKeys(T['keys'], M, options); -} -// prettier-ignore -function IntrinsicFromMappedKey(T, M, options) { - const P = MappedIntrinsicProperties(T, M, options); - return (0, index_1.MappedResult)(P); -} -exports.IntrinsicFromMappedKey = IntrinsicFromMappedKey; - - -/***/ }), - -/***/ 25328: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Intrinsic = void 0; -const index_1 = __nccwpck_require__(90984); -const intrinsic_from_mapped_key_1 = __nccwpck_require__(98823); -const index_2 = __nccwpck_require__(24727); -const index_3 = __nccwpck_require__(41743); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_1 = __nccwpck_require__(20109); -// ------------------------------------------------------------------ -// Apply -// ------------------------------------------------------------------ -function ApplyUncapitalize(value) { - const [first, rest] = [value.slice(0, 1), value.slice(1)]; - return [first.toLowerCase(), rest].join(''); -} -function ApplyCapitalize(value) { - const [first, rest] = [value.slice(0, 1), value.slice(1)]; - return [first.toUpperCase(), rest].join(''); -} -function ApplyUppercase(value) { - return value.toUpperCase(); -} -function ApplyLowercase(value) { - return value.toLowerCase(); -} -function FromTemplateLiteral(schema, mode, options) { - // note: template literals require special runtime handling as they are encoded in string patterns. - // This diverges from the mapped type which would otherwise map on the template literal kind. - const expression = (0, index_1.TemplateLiteralParseExact)(schema.pattern); - const finite = (0, index_1.IsTemplateLiteralExpressionFinite)(expression); - if (!finite) - return { ...schema, pattern: FromLiteralValue(schema.pattern, mode) }; - const strings = [...(0, index_1.TemplateLiteralExpressionGenerate)(expression)]; - const literals = strings.map((value) => (0, index_2.Literal)(value)); - const mapped = FromRest(literals, mode); - const union = (0, index_3.Union)(mapped); - return (0, index_1.TemplateLiteral)([union], options); -} -// prettier-ignore -function FromLiteralValue(value, mode) { - return (typeof value === 'string' ? (mode === 'Uncapitalize' ? ApplyUncapitalize(value) : - mode === 'Capitalize' ? ApplyCapitalize(value) : - mode === 'Uppercase' ? ApplyUppercase(value) : - mode === 'Lowercase' ? ApplyLowercase(value) : - value) : value.toString()); -} -// prettier-ignore -function FromRest(T, M) { - return T.map(L => Intrinsic(L, M)); -} -/** Applies an intrinsic string manipulation to the given type. */ -function Intrinsic(schema, mode, options = {}) { - // prettier-ignore - return ( - // Intrinsic-Mapped-Inference - (0, type_1.IsMappedKey)(schema) ? (0, intrinsic_from_mapped_key_1.IntrinsicFromMappedKey)(schema, mode, options) : - // Standard-Inference - (0, type_1.IsTemplateLiteral)(schema) ? FromTemplateLiteral(schema, mode, schema) : - (0, type_1.IsUnion)(schema) ? (0, index_3.Union)(FromRest(schema.anyOf, mode), options) : - (0, type_1.IsLiteral)(schema) ? (0, index_2.Literal)(FromLiteralValue(schema.const, mode), options) : - schema); -} -exports.Intrinsic = Intrinsic; - - -/***/ }), - -/***/ 51022: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Lowercase = void 0; -const intrinsic_1 = __nccwpck_require__(25328); -/** `[Json]` Intrinsic function to Lowercase LiteralString types */ -function Lowercase(T, options = {}) { - return (0, intrinsic_1.Intrinsic)(T, 'Lowercase', options); -} -exports.Lowercase = Lowercase; - - -/***/ }), - -/***/ 54406: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Uncapitalize = void 0; -const intrinsic_1 = __nccwpck_require__(25328); -/** `[Json]` Intrinsic function to Uncapitalize LiteralString types */ -function Uncapitalize(T, options = {}) { - return (0, intrinsic_1.Intrinsic)(T, 'Uncapitalize', options); -} -exports.Uncapitalize = Uncapitalize; - - -/***/ }), - -/***/ 24867: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Uppercase = void 0; -const intrinsic_1 = __nccwpck_require__(25328); -/** `[Json]` Intrinsic function to Uppercase LiteralString types */ -function Uppercase(T, options = {}) { - return (0, intrinsic_1.Intrinsic)(T, 'Uppercase', options); -} -exports.Uppercase = Uppercase; - - -/***/ }), - -/***/ 30666: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(58698), exports); - - -/***/ }), - -/***/ 58698: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Iterator = void 0; -const type_1 = __nccwpck_require__(45157); -const index_1 = __nccwpck_require__(48121); -/** `[JavaScript]` Creates an Iterator type */ -function Iterator(items, options = {}) { - return { - ...options, - [index_1.Kind]: 'Iterator', - type: 'Iterator', - items: (0, type_1.CloneType)(items), - }; -} -exports.Iterator = Iterator; - - -/***/ }), - -/***/ 30658: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(10079), exports); -__exportStar(__nccwpck_require__(41461), exports); -__exportStar(__nccwpck_require__(80176), exports); - - -/***/ }), - -/***/ 10079: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.KeyOfFromMappedResult = void 0; -const index_1 = __nccwpck_require__(76675); -const keyof_1 = __nccwpck_require__(80176); -// prettier-ignore -function FromProperties(K, options) { - return globalThis.Object.getOwnPropertyNames(K).reduce((Acc, K2) => { - return { ...Acc, [K2]: (0, keyof_1.KeyOf)(K[K2], options) }; - }, {}); -} -// prettier-ignore -function FromMappedResult(R, options) { - return FromProperties(R.properties, options); -} -// prettier-ignore -function KeyOfFromMappedResult(R, options) { - const P = FromMappedResult(R, options); - return (0, index_1.MappedResult)(P); -} -exports.KeyOfFromMappedResult = KeyOfFromMappedResult; - - -/***/ }), - -/***/ 41461: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.KeyOfPattern = exports.KeyOfPropertyKeys = void 0; -const index_1 = __nccwpck_require__(89925); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_1 = __nccwpck_require__(20109); -// prettier-ignore -function FromRest(T) { - return T.reduce((Acc, L) => { - return [...Acc, KeyOfPropertyKeys(L)]; - }, []); -} -// prettier-ignore -function FromIntersect(T) { - const C = FromRest(T); - const R = (0, index_1.SetUnionMany)(C); - return R; -} -// prettier-ignore -function FromUnion(T) { - const C = FromRest(T); - const R = (0, index_1.SetIntersectMany)(C); - return R; -} -// prettier-ignore -function FromTuple(T) { - return T.map((_, I) => I.toString()); -} -// prettier-ignore -function FromArray(_) { - return (['[number]']); -} -// prettier-ignore -function FromProperties(T) { - return (globalThis.Object.getOwnPropertyNames(T)); -} -// ------------------------------------------------------------------ -// FromPatternProperties -// ------------------------------------------------------------------ -// prettier-ignore -function FromPatternProperties(patternProperties) { - if (!includePatternProperties) - return []; - const patternPropertyKeys = globalThis.Object.getOwnPropertyNames(patternProperties); - return patternPropertyKeys.map(key => { - return (key[0] === '^' && key[key.length - 1] === '$') - ? key.slice(1, key.length - 1) - : key; - }); -} -/** Returns a tuple of PropertyKeys derived from the given TSchema. */ -// prettier-ignore -function KeyOfPropertyKeys(T) { - return ((0, type_1.IsIntersect)(T) ? FromIntersect(T.allOf) : - (0, type_1.IsUnion)(T) ? FromUnion(T.anyOf) : - (0, type_1.IsTuple)(T) ? FromTuple(T.items ?? []) : - (0, type_1.IsArray)(T) ? FromArray(T.items) : - (0, type_1.IsObject)(T) ? FromProperties(T.properties) : - (0, type_1.IsRecord)(T) ? FromPatternProperties(T.patternProperties) : - []); -} -exports.KeyOfPropertyKeys = KeyOfPropertyKeys; -// ---------------------------------------------------------------- -// KeyOfPattern -// ---------------------------------------------------------------- -let includePatternProperties = false; -/** Returns a regular expression pattern derived from the given TSchema */ -function KeyOfPattern(schema) { - includePatternProperties = true; - const keys = KeyOfPropertyKeys(schema); - includePatternProperties = false; - const pattern = keys.map((key) => `(${key})`); - return `^(${pattern.join('|')})$`; -} -exports.KeyOfPattern = KeyOfPattern; - - -/***/ }), - -/***/ 80176: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.KeyOf = exports.KeyOfPropertyKeysToRest = void 0; -const index_1 = __nccwpck_require__(24727); -const index_2 = __nccwpck_require__(46621); -const keyof_property_keys_1 = __nccwpck_require__(41461); -const index_3 = __nccwpck_require__(41743); -const type_1 = __nccwpck_require__(45157); -const keyof_from_mapped_result_1 = __nccwpck_require__(10079); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -// prettier-ignore -function KeyOfPropertyKeysToRest(T) { - return T.map(L => L === '[number]' ? (0, index_2.Number)() : (0, index_1.Literal)(L)); -} -exports.KeyOfPropertyKeysToRest = KeyOfPropertyKeysToRest; -/** `[Json]` Creates a KeyOf type */ -function KeyOf(T, options = {}) { - if ((0, type_2.IsMappedResult)(T)) { - return (0, keyof_from_mapped_result_1.KeyOfFromMappedResult)(T, options); - } - else { - const K = (0, keyof_property_keys_1.KeyOfPropertyKeys)(T); - const S = KeyOfPropertyKeysToRest(K); - const U = (0, index_3.UnionEvaluated)(S); - return (0, type_1.CloneType)(U, options); - } -} -exports.KeyOf = KeyOf; - - -/***/ }), - -/***/ 24727: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(79152), exports); - - -/***/ }), - -/***/ 79152: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Literal = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[Json]` Creates a Literal type */ -function Literal(value, options = {}) { - return { - ...options, - [index_1.Kind]: 'Literal', - const: value, - type: typeof value, - }; -} -exports.Literal = Literal; - - -/***/ }), - -/***/ 76675: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(55346), exports); -__exportStar(__nccwpck_require__(19328), exports); -__exportStar(__nccwpck_require__(12176), exports); - - -/***/ }), - -/***/ 55346: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.MappedKey = void 0; -const index_1 = __nccwpck_require__(48121); -// prettier-ignore -function MappedKey(T) { - return { - [index_1.Kind]: 'MappedKey', - keys: T - }; -} -exports.MappedKey = MappedKey; - - -/***/ }), - -/***/ 19328: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.MappedResult = void 0; -const index_1 = __nccwpck_require__(48121); -// prettier-ignore -function MappedResult(properties) { - return { - [index_1.Kind]: 'MappedResult', - properties - }; -} -exports.MappedResult = MappedResult; - - -/***/ }), - -/***/ 12176: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Mapped = exports.MappedFunctionReturnType = void 0; -const index_1 = __nccwpck_require__(48121); -const type_1 = __nccwpck_require__(45157); -const index_2 = __nccwpck_require__(62202); -// evaluation types -const index_3 = __nccwpck_require__(59809); -const index_4 = __nccwpck_require__(32733); -const index_5 = __nccwpck_require__(86232); -const index_6 = __nccwpck_require__(72996); -const index_7 = __nccwpck_require__(89777); -const index_8 = __nccwpck_require__(32945); -const index_9 = __nccwpck_require__(30666); -const index_10 = __nccwpck_require__(24727); -const index_11 = __nccwpck_require__(13871); -const index_12 = __nccwpck_require__(31392); -const index_13 = __nccwpck_require__(59573); -const index_14 = __nccwpck_require__(4102); -const index_15 = __nccwpck_require__(82894); -const index_16 = __nccwpck_require__(41743); -// operator -const index_17 = __nccwpck_require__(89925); -// mapping types -const mapped_result_1 = __nccwpck_require__(19328); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -// prettier-ignore -const type_2 = __nccwpck_require__(20109); -// prettier-ignore -function FromMappedResult(K, P) { - return (K in P - ? FromSchemaType(K, P[K]) - : (0, mapped_result_1.MappedResult)(P)); -} -// prettier-ignore -function MappedKeyToKnownMappedResultProperties(K) { - return { [K]: (0, index_10.Literal)(K) }; -} -// prettier-ignore -function MappedKeyToUnknownMappedResultProperties(P) { - return P.reduce((Acc, L) => { - return { ...Acc, [L]: (0, index_10.Literal)(L) }; - }, {}); -} -// prettier-ignore -function MappedKeyToMappedResultProperties(K, P) { - return ((0, index_17.SetIncludes)(P, K) - ? MappedKeyToKnownMappedResultProperties(K) - : MappedKeyToUnknownMappedResultProperties(P)); -} -// prettier-ignore -function FromMappedKey(K, P) { - const R = MappedKeyToMappedResultProperties(K, P); - return FromMappedResult(K, R); -} -// prettier-ignore -function FromRest(K, T) { - return T.map(L => FromSchemaType(K, L)); -} -// prettier-ignore -function FromProperties(K, T) { - return globalThis.Object.getOwnPropertyNames(T).reduce((Acc, K2) => { - return { ...Acc, [K2]: FromSchemaType(K, T[K2]) }; - }, {}); -} -// prettier-ignore -function FromSchemaType(K, T) { - return ( - // unevaluated modifier types - (0, type_2.IsOptional)(T) ? (0, index_12.Optional)(FromSchemaType(K, (0, index_2.Discard)(T, [index_1.OptionalKind]))) : - (0, type_2.IsReadonly)(T) ? (0, index_14.Readonly)(FromSchemaType(K, (0, index_2.Discard)(T, [index_1.ReadonlyKind]))) : - // unevaluated mapped types - (0, type_2.IsMappedResult)(T) ? FromMappedResult(K, T.properties) : - (0, type_2.IsMappedKey)(T) ? FromMappedKey(K, T.keys) : - // unevaluated types - (0, type_2.IsConstructor)(T) ? (0, index_5.Constructor)(FromRest(K, T.parameters), FromSchemaType(K, T.returns)) : - (0, type_2.IsFunction)(T) ? (0, index_6.Function)(FromRest(K, T.parameters), FromSchemaType(K, T.returns)) : - (0, type_2.IsAsyncIterator)(T) ? (0, index_4.AsyncIterator)(FromSchemaType(K, T.items)) : - (0, type_2.IsIterator)(T) ? (0, index_9.Iterator)(FromSchemaType(K, T.items)) : - (0, type_2.IsIntersect)(T) ? (0, index_8.Intersect)(FromRest(K, T.allOf)) : - (0, type_2.IsUnion)(T) ? (0, index_16.Union)(FromRest(K, T.anyOf)) : - (0, type_2.IsTuple)(T) ? (0, index_15.Tuple)(FromRest(K, T.items ?? [])) : - (0, type_2.IsObject)(T) ? (0, index_11.Object)(FromProperties(K, T.properties)) : - (0, type_2.IsArray)(T) ? (0, index_3.Array)(FromSchemaType(K, T.items)) : - (0, type_2.IsPromise)(T) ? (0, index_13.Promise)(FromSchemaType(K, T.item)) : - T); -} -// prettier-ignore -function MappedFunctionReturnType(K, T, Acc = {}) { - return K.reduce((Acc, L) => { - return { ...Acc, [L]: FromSchemaType(L, T) }; - }, {}); -} -exports.MappedFunctionReturnType = MappedFunctionReturnType; -/** `[Json]` Creates a Mapped object type */ -function Mapped(key, map, options = {}) { - const K = (0, type_2.IsSchema)(key) ? (0, index_7.IndexPropertyKeys)(key) : key; - const RT = map({ [index_1.Kind]: 'MappedKey', keys: K }); - const R = MappedFunctionReturnType(K, RT); - return (0, type_1.CloneType)((0, index_11.Object)(R), options); -} -exports.Mapped = Mapped; - - -/***/ }), - -/***/ 22346: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); - -__exportStar(__nccwpck_require__(55348), exports); - - -/***/ }), - -/***/ 55348: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Never = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[Json]` Creates a Never type */ -function Never(options = {}) { - return { - ...options, - [index_1.Kind]: 'Never', - not: {}, - }; -} -exports.Never = Never; - - -/***/ }), - -/***/ 9741: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(13064), exports); - - -/***/ }), - -/***/ 13064: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Not = void 0; -const type_1 = __nccwpck_require__(45157); -const index_1 = __nccwpck_require__(48121); -/** `[Json]` Creates a Not type */ -function Not(schema, options) { - return { - ...options, - [index_1.Kind]: 'Not', - not: (0, type_1.CloneType)(schema), - }; -} -exports.Not = Not; - - -/***/ }), - -/***/ 4513: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(35608), exports); - - -/***/ }), - -/***/ 35608: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Null = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[Json]` Creates a Null type */ -function Null(options = {}) { - return { - ...options, - [index_1.Kind]: 'Null', - type: 'null', - }; -} -exports.Null = Null; - - -/***/ }), - -/***/ 46621: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(61864), exports); - - -/***/ }), - -/***/ 61864: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Number = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[Json]` Creates a Number type */ -function Number(options = {}) { - return { - ...options, - [index_1.Kind]: 'Number', - type: 'number', - }; -} -exports.Number = Number; - - -/***/ }), - -/***/ 13871: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(49312), exports); - - -/***/ }), - -/***/ 49312: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Object = void 0; -const type_1 = __nccwpck_require__(45157); -const index_1 = __nccwpck_require__(48121); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -/** `[Json]` Creates an Object type */ -function _Object(properties, options = {}) { - const propertyKeys = globalThis.Object.getOwnPropertyNames(properties); - const optionalKeys = propertyKeys.filter((key) => (0, type_2.IsOptional)(properties[key])); - const requiredKeys = propertyKeys.filter((name) => !optionalKeys.includes(name)); - const clonedAdditionalProperties = (0, type_2.IsSchema)(options.additionalProperties) ? { additionalProperties: (0, type_1.CloneType)(options.additionalProperties) } : {}; - const clonedProperties = propertyKeys.reduce((acc, key) => ({ ...acc, [key]: (0, type_1.CloneType)(properties[key]) }), {}); - return (requiredKeys.length > 0 - ? { ...options, ...clonedAdditionalProperties, [index_1.Kind]: 'Object', type: 'object', properties: clonedProperties, required: requiredKeys } - : { ...options, ...clonedAdditionalProperties, [index_1.Kind]: 'Object', type: 'object', properties: clonedProperties }); -} -/** `[Json]` Creates an Object type */ -exports.Object = _Object; - - -/***/ }), - -/***/ 56497: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(52580), exports); -__exportStar(__nccwpck_require__(60175), exports); -__exportStar(__nccwpck_require__(49728), exports); - - -/***/ }), - -/***/ 52580: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.OmitFromMappedKey = void 0; -const index_1 = __nccwpck_require__(76675); -const omit_1 = __nccwpck_require__(49728); -// prettier-ignore -function FromPropertyKey(T, K, options) { - return { - [K]: (0, omit_1.Omit)(T, [K], options) - }; -} -// prettier-ignore -function FromPropertyKeys(T, K, options) { - return K.reduce((Acc, LK) => { - return { ...Acc, ...FromPropertyKey(T, LK, options) }; - }, {}); -} -// prettier-ignore -function FromMappedKey(T, K, options) { - return FromPropertyKeys(T, K.keys, options); -} -// prettier-ignore -function OmitFromMappedKey(T, K, options) { - const P = FromMappedKey(T, K, options); - return (0, index_1.MappedResult)(P); -} -exports.OmitFromMappedKey = OmitFromMappedKey; - - -/***/ }), - -/***/ 60175: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.OmitFromMappedResult = void 0; -const index_1 = __nccwpck_require__(76675); -const omit_1 = __nccwpck_require__(49728); -// prettier-ignore -function FromProperties(P, K, options) { - return globalThis.Object.getOwnPropertyNames(P).reduce((Acc, K2) => { - return { ...Acc, [K2]: (0, omit_1.Omit)(P[K2], K, options) }; - }, {}); -} -// prettier-ignore -function FromMappedResult(R, K, options) { - return FromProperties(R.properties, K, options); -} -// prettier-ignore -function OmitFromMappedResult(R, K, options) { - const P = FromMappedResult(R, K, options); - return (0, index_1.MappedResult)(P); -} -exports.OmitFromMappedResult = OmitFromMappedResult; - - -/***/ }), - -/***/ 49728: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Omit = void 0; -const index_1 = __nccwpck_require__(32945); -const index_2 = __nccwpck_require__(41743); -const index_3 = __nccwpck_require__(13871); -const index_4 = __nccwpck_require__(89777); -const index_5 = __nccwpck_require__(62202); -const index_6 = __nccwpck_require__(48121); -const type_1 = __nccwpck_require__(45157); -const omit_from_mapped_key_1 = __nccwpck_require__(52580); -const omit_from_mapped_result_1 = __nccwpck_require__(60175); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -// prettier-ignore -function FromIntersect(T, K) { - return T.map((T) => OmitResolve(T, K)); -} -// prettier-ignore -function FromUnion(T, K) { - return T.map((T) => OmitResolve(T, K)); -} -// ------------------------------------------------------------------ -// FromProperty -// ------------------------------------------------------------------ -// prettier-ignore -function FromProperty(T, K) { - const { [K]: _, ...R } = T; - return R; -} -// prettier-ignore -function FromProperties(T, K) { - return K.reduce((T, K2) => { - return FromProperty(T, K2); - }, T); -} -// ------------------------------------------------------------------ -// OmitResolve -// ------------------------------------------------------------------ -// prettier-ignore -function OmitResolve(T, K) { - return ((0, type_2.IsIntersect)(T) ? (0, index_1.Intersect)(FromIntersect(T.allOf, K)) : - (0, type_2.IsUnion)(T) ? (0, index_2.Union)(FromUnion(T.anyOf, K)) : - (0, type_2.IsObject)(T) ? (0, index_3.Object)(FromProperties(T.properties, K)) : - (0, index_3.Object)({})); -} -function Omit(T, K, options = {}) { - // mapped - if ((0, type_2.IsMappedKey)(K)) - return (0, omit_from_mapped_key_1.OmitFromMappedKey)(T, K, options); - if ((0, type_2.IsMappedResult)(T)) - return (0, omit_from_mapped_result_1.OmitFromMappedResult)(T, K, options); - // non-mapped - const I = (0, type_2.IsSchema)(K) ? (0, index_4.IndexPropertyKeys)(K) : K; - const D = (0, index_5.Discard)(T, [index_6.TransformKind, '$id', 'required']); - const R = (0, type_1.CloneType)(OmitResolve(T, I), options); - return { ...D, ...R }; -} -exports.Omit = Omit; - - -/***/ }), - -/***/ 31392: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(90313), exports); -__exportStar(__nccwpck_require__(28266), exports); - - -/***/ }), - -/***/ 90313: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.OptionalFromMappedResult = void 0; -const index_1 = __nccwpck_require__(76675); -const optional_1 = __nccwpck_require__(28266); -// prettier-ignore -function FromProperties(P, F) { - return globalThis.Object.getOwnPropertyNames(P).reduce((Acc, K2) => { - return { ...Acc, [K2]: (0, optional_1.Optional)(P[K2], F) }; - }, {}); -} -// prettier-ignore -function FromMappedResult(R, F) { - return FromProperties(R.properties, F); -} -// prettier-ignore -function OptionalFromMappedResult(R, F) { - const P = FromMappedResult(R, F); - return (0, index_1.MappedResult)(P); -} -exports.OptionalFromMappedResult = OptionalFromMappedResult; - - -/***/ }), - -/***/ 28266: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Optional = void 0; -const index_1 = __nccwpck_require__(48121); -const type_1 = __nccwpck_require__(45157); -const index_2 = __nccwpck_require__(62202); -const optional_from_mapped_result_1 = __nccwpck_require__(90313); -const type_2 = __nccwpck_require__(20109); -function RemoveOptional(schema) { - return (0, index_2.Discard)((0, type_1.CloneType)(schema), [index_1.OptionalKind]); -} -function AddOptional(schema) { - return { ...(0, type_1.CloneType)(schema), [index_1.OptionalKind]: 'Optional' }; -} -// prettier-ignore -function OptionalWithFlag(schema, F) { - return (F === false - ? RemoveOptional(schema) - : AddOptional(schema)); -} -/** `[Json]` Creates a Optional property */ -function Optional(schema, enable) { - const F = enable ?? true; - return (0, type_2.IsMappedResult)(schema) ? (0, optional_from_mapped_result_1.OptionalFromMappedResult)(schema, F) : OptionalWithFlag(schema, F); -} -exports.Optional = Optional; - - -/***/ }), - -/***/ 80264: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(27405), exports); - - -/***/ }), - -/***/ 27405: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Parameters = void 0; -const index_1 = __nccwpck_require__(82894); -const type_1 = __nccwpck_require__(45157); -/** `[JavaScript]` Extracts the Parameters from the given Function type */ -function Parameters(schema, options = {}) { - return (0, index_1.Tuple)((0, type_1.CloneRest)(schema.parameters), { ...options }); -} -exports.Parameters = Parameters; - - -/***/ }), - -/***/ 96405: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(25995), exports); -__exportStar(__nccwpck_require__(84204), exports); - - -/***/ }), - -/***/ 25995: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.PartialFromMappedResult = void 0; -const index_1 = __nccwpck_require__(76675); -const partial_1 = __nccwpck_require__(84204); -// prettier-ignore -function FromProperties(K, options) { - return globalThis.Object.getOwnPropertyNames(K).reduce((Acc, K2) => { - return { ...Acc, [K2]: (0, partial_1.Partial)(K[K2], options) }; - }, {}); -} -// prettier-ignore -function FromMappedResult(R, options) { - return FromProperties(R.properties, options); -} -// prettier-ignore -function PartialFromMappedResult(R, options) { - const P = FromMappedResult(R, options); - return (0, index_1.MappedResult)(P); -} -exports.PartialFromMappedResult = PartialFromMappedResult; - - -/***/ }), - -/***/ 84204: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Partial = void 0; -const index_1 = __nccwpck_require__(31392); -const index_2 = __nccwpck_require__(13871); -const index_3 = __nccwpck_require__(32945); -const index_4 = __nccwpck_require__(41743); -const index_5 = __nccwpck_require__(62202); -const index_6 = __nccwpck_require__(48121); -const type_1 = __nccwpck_require__(45157); -const partial_from_mapped_result_1 = __nccwpck_require__(25995); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -// prettier-ignore -function FromRest(T) { - return T.map(L => PartialResolve(L)); -} -// prettier-ignore -function FromProperties(T) { - return globalThis.Object.getOwnPropertyNames(T).reduce((Acc, K) => { - return { ...Acc, [K]: (0, index_1.Optional)(T[K]) }; - }, {}); -} -// ------------------------------------------------------------------ -// PartialResolve -// ------------------------------------------------------------------ -// prettier-ignore -function PartialResolve(T) { - return ((0, type_2.IsIntersect)(T) ? (0, index_3.Intersect)(FromRest(T.allOf)) : - (0, type_2.IsUnion)(T) ? (0, index_4.Union)(FromRest(T.anyOf)) : - (0, type_2.IsObject)(T) ? (0, index_2.Object)(FromProperties(T.properties)) : - (0, index_2.Object)({})); -} -/** `[Json]` Constructs a type where all properties are optional */ -function Partial(T, options = {}) { - if ((0, type_2.IsMappedResult)(T)) - return (0, partial_from_mapped_result_1.PartialFromMappedResult)(T, options); - const D = (0, index_5.Discard)(T, [index_6.TransformKind, '$id', 'required']); - const R = (0, type_1.CloneType)(PartialResolve(T), options); - return { ...D, ...R }; -} -exports.Partial = Partial; - - -/***/ }), - -/***/ 50059: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(7992), exports); - - -/***/ }), - -/***/ 7992: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.PatternStringExact = exports.PatternNumberExact = exports.PatternBooleanExact = exports.PatternString = exports.PatternNumber = exports.PatternBoolean = void 0; -exports.PatternBoolean = '(true|false)'; -exports.PatternNumber = '(0|[1-9][0-9]*)'; -exports.PatternString = '(.*)'; -exports.PatternBooleanExact = `^${exports.PatternBoolean}$`; -exports.PatternNumberExact = `^${exports.PatternNumber}$`; -exports.PatternStringExact = `^${exports.PatternString}$`; - - -/***/ }), - -/***/ 53861: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(85827), exports); -__exportStar(__nccwpck_require__(40011), exports); -__exportStar(__nccwpck_require__(60940), exports); - - -/***/ }), - -/***/ 85827: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.PickFromMappedKey = void 0; -const index_1 = __nccwpck_require__(76675); -const pick_1 = __nccwpck_require__(60940); -// prettier-ignore -function FromPropertyKey(T, K, options) { - return { - [K]: (0, pick_1.Pick)(T, [K], options) - }; -} -// prettier-ignore -function FromPropertyKeys(T, K, options) { - return K.reduce((Acc, LK) => { - return { ...Acc, ...FromPropertyKey(T, LK, options) }; - }, {}); -} -// prettier-ignore -function FromMappedKey(T, K, options) { - return FromPropertyKeys(T, K.keys, options); -} -// prettier-ignore -function PickFromMappedKey(T, K, options) { - const P = FromMappedKey(T, K, options); - return (0, index_1.MappedResult)(P); -} -exports.PickFromMappedKey = PickFromMappedKey; - - -/***/ }), - -/***/ 40011: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.PickFromMappedResult = void 0; -const index_1 = __nccwpck_require__(76675); -const pick_1 = __nccwpck_require__(60940); -// prettier-ignore -function FromProperties(P, K, options) { - return globalThis.Object.getOwnPropertyNames(P).reduce((Acc, K2) => { - return { ...Acc, [K2]: (0, pick_1.Pick)(P[K2], K, options) }; - }, {}); -} -// prettier-ignore -function FromMappedResult(R, K, options) { - return FromProperties(R.properties, K, options); -} -// prettier-ignore -function PickFromMappedResult(R, K, options) { - const P = FromMappedResult(R, K, options); - return (0, index_1.MappedResult)(P); -} -exports.PickFromMappedResult = PickFromMappedResult; - - -/***/ }), - -/***/ 60940: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Pick = void 0; -const index_1 = __nccwpck_require__(32945); -const index_2 = __nccwpck_require__(41743); -const index_3 = __nccwpck_require__(13871); -const index_4 = __nccwpck_require__(89777); -const index_5 = __nccwpck_require__(62202); -const index_6 = __nccwpck_require__(48121); -const type_1 = __nccwpck_require__(45157); -const pick_from_mapped_key_1 = __nccwpck_require__(85827); -const pick_from_mapped_result_1 = __nccwpck_require__(40011); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -function FromIntersect(T, K) { - return T.map((T) => PickResolve(T, K)); -} -// prettier-ignore -function FromUnion(T, K) { - return T.map((T) => PickResolve(T, K)); -} -// prettier-ignore -function FromProperties(T, K) { - return K.reduce((Acc, K) => { - return K in T ? { ...Acc, [K]: T[K] } : Acc; - }, {}); -} -// ------------------------------------------------------------------ -// PickResolve -// ------------------------------------------------------------------ -// prettier-ignore -function PickResolve(T, K) { - return ((0, type_2.IsIntersect)(T) ? (0, index_1.Intersect)(FromIntersect(T.allOf, K)) : - (0, type_2.IsUnion)(T) ? (0, index_2.Union)(FromUnion(T.anyOf, K)) : - (0, type_2.IsObject)(T) ? (0, index_3.Object)(FromProperties(T.properties, K)) : - (0, index_3.Object)({})); -} -function Pick(T, K, options = {}) { - // mapped - if ((0, type_2.IsMappedKey)(K)) - return (0, pick_from_mapped_key_1.PickFromMappedKey)(T, K, options); - if ((0, type_2.IsMappedResult)(T)) - return (0, pick_from_mapped_result_1.PickFromMappedResult)(T, K, options); - // non-mapped - const I = (0, type_2.IsSchema)(K) ? (0, index_4.IndexPropertyKeys)(K) : K; - const D = (0, index_5.Discard)(T, [index_6.TransformKind, '$id', 'required']); - const R = (0, type_1.CloneType)(PickResolve(T, I), options); - return { ...D, ...R }; -} -exports.Pick = Pick; - - -/***/ }), - -/***/ 59573: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(85932), exports); - - -/***/ }), - -/***/ 85932: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Promise = void 0; -const type_1 = __nccwpck_require__(45157); -const index_1 = __nccwpck_require__(48121); -/** `[JavaScript]` Creates a Promise type */ -function Promise(item, options = {}) { - return { - ...options, - [index_1.Kind]: 'Promise', - type: 'Promise', - item: (0, type_1.CloneType)(item), - }; -} -exports.Promise = Promise; - - -/***/ }), - -/***/ 51257: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(15600), exports); - - -/***/ }), - -/***/ 15600: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ReadonlyOptional = void 0; -const index_1 = __nccwpck_require__(4102); -const index_2 = __nccwpck_require__(31392); -/** `[Json]` Creates a Readonly and Optional property */ -function ReadonlyOptional(schema) { - return (0, index_1.Readonly)((0, index_2.Optional)(schema)); -} -exports.ReadonlyOptional = ReadonlyOptional; - - -/***/ }), - -/***/ 4102: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(10725), exports); -__exportStar(__nccwpck_require__(52902), exports); - - -/***/ }), - -/***/ 10725: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ReadonlyFromMappedResult = void 0; -const index_1 = __nccwpck_require__(76675); -const readonly_1 = __nccwpck_require__(52902); -// prettier-ignore -function FromProperties(K, F) { - return globalThis.Object.getOwnPropertyNames(K).reduce((Acc, K2) => { - return { ...Acc, [K2]: (0, readonly_1.Readonly)(K[K2], F) }; - }, {}); -} -// prettier-ignore -function FromMappedResult(R, F) { - return FromProperties(R.properties, F); -} -// prettier-ignore -function ReadonlyFromMappedResult(R, F) { - const P = FromMappedResult(R, F); - return (0, index_1.MappedResult)(P); -} -exports.ReadonlyFromMappedResult = ReadonlyFromMappedResult; - - -/***/ }), - -/***/ 52902: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Readonly = void 0; -const index_1 = __nccwpck_require__(48121); -const type_1 = __nccwpck_require__(45157); -const index_2 = __nccwpck_require__(62202); -const readonly_from_mapped_result_1 = __nccwpck_require__(10725); -const type_2 = __nccwpck_require__(20109); -function RemoveReadonly(schema) { - return (0, index_2.Discard)((0, type_1.CloneType)(schema), [index_1.ReadonlyKind]); -} -function AddReadonly(schema) { - return { ...(0, type_1.CloneType)(schema), [index_1.ReadonlyKind]: 'Readonly' }; -} -// prettier-ignore -function ReadonlyWithFlag(schema, F) { - return (F === false - ? RemoveReadonly(schema) - : AddReadonly(schema)); -} -/** `[Json]` Creates a Readonly property */ -function Readonly(schema, enable) { - const F = enable ?? true; - return (0, type_2.IsMappedResult)(schema) ? (0, readonly_from_mapped_result_1.ReadonlyFromMappedResult)(schema, F) : ReadonlyWithFlag(schema, F); -} -exports.Readonly = Readonly; - - -/***/ }), - -/***/ 59961: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(40580), exports); - - -/***/ }), - -/***/ 40580: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Record = void 0; -const index_1 = __nccwpck_require__(13871); -const index_2 = __nccwpck_require__(22346); -const index_3 = __nccwpck_require__(41743); -const index_4 = __nccwpck_require__(90984); -const index_5 = __nccwpck_require__(50059); -const index_6 = __nccwpck_require__(89777); -const index_7 = __nccwpck_require__(48121); -const type_1 = __nccwpck_require__(45157); -// ------------------------------------------------------------------ -// ValueGuard -// ------------------------------------------------------------------ -const value_1 = __nccwpck_require__(87280); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -// ------------------------------------------------------------------ -// RecordCreateFromPattern -// ------------------------------------------------------------------ -// prettier-ignore -function RecordCreateFromPattern(pattern, T, options) { - return { - ...options, - [index_7.Kind]: 'Record', - type: 'object', - patternProperties: { [pattern]: (0, type_1.CloneType)(T) } - }; -} -// ------------------------------------------------------------------ -// RecordCreateFromKeys -// ------------------------------------------------------------------ -// prettier-ignore -function RecordCreateFromKeys(K, T, options) { - const P = K.reduce((Acc, K) => ({ ...Acc, [K]: (0, type_1.CloneType)(T) }), {}); - return (0, index_1.Object)(P, { ...options, [index_7.Hint]: 'Record' }); -} -// prettier-ignore -function FromTemplateLiteralKey(K, T, options) { - return ((0, index_4.IsTemplateLiteralFinite)(K) - ? RecordCreateFromKeys((0, index_6.IndexPropertyKeys)(K), T, options) - : RecordCreateFromPattern(K.pattern, T, options)); -} -// prettier-ignore -function FromUnionKey(K, T, options) { - return RecordCreateFromKeys((0, index_6.IndexPropertyKeys)((0, index_3.Union)(K)), T, options); -} -// prettier-ignore -function FromLiteralKey(K, T, options) { - return RecordCreateFromKeys([K.toString()], T, options); -} -// prettier-ignore -function FromRegExpKey(K, T, options) { - return RecordCreateFromPattern(K.source, T, options); -} -// prettier-ignore -function FromStringKey(K, T, options) { - const pattern = (0, value_1.IsUndefined)(K.pattern) ? index_5.PatternStringExact : K.pattern; - return RecordCreateFromPattern(pattern, T, options); -} -// prettier-ignore -function FromIntegerKey(_, T, options) { - return RecordCreateFromPattern(index_5.PatternNumberExact, T, options); -} -// prettier-ignore -function FromNumberKey(_, T, options) { - return RecordCreateFromPattern(index_5.PatternNumberExact, T, options); -} -// ------------------------------------------------------------------ -// TRecordOrObject -// ------------------------------------------------------------------ -/** `[Json]` Creates a Record type */ -function Record(K, T, options = {}) { - // prettier-ignore - return ((0, type_2.IsUnion)(K) ? FromUnionKey(K.anyOf, T, options) : - (0, type_2.IsTemplateLiteral)(K) ? FromTemplateLiteralKey(K, T, options) : - (0, type_2.IsLiteral)(K) ? FromLiteralKey(K.const, T, options) : - (0, type_2.IsInteger)(K) ? FromIntegerKey(K, T, options) : - (0, type_2.IsNumber)(K) ? FromNumberKey(K, T, options) : - (0, type_2.IsRegExp)(K) ? FromRegExpKey(K, T, options) : - (0, type_2.IsString)(K) ? FromStringKey(K, T, options) : - (0, index_2.Never)(options)); -} -exports.Record = Record; - - -/***/ }), - -/***/ 81816: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(81636), exports); - - -/***/ }), - -/***/ 81636: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Recursive = void 0; -const type_1 = __nccwpck_require__(45157); -const value_1 = __nccwpck_require__(87280); -const index_1 = __nccwpck_require__(48121); -// Auto Tracked For Recursive Types without ID's -let Ordinal = 0; -/** `[Json]` Creates a Recursive type */ -function Recursive(callback, options = {}) { - if ((0, value_1.IsUndefined)(options.$id)) - options.$id = `T${Ordinal++}`; - const thisType = callback({ [index_1.Kind]: 'This', $ref: `${options.$id}` }); - thisType.$id = options.$id; - // prettier-ignore - return (0, type_1.CloneType)({ ...options, [index_1.Hint]: 'Recursive', ...thisType }); -} -exports.Recursive = Recursive; - - -/***/ }), - -/***/ 29105: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(98264), exports); - - -/***/ }), - -/***/ 98264: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Ref = void 0; -const index_1 = __nccwpck_require__(48121); -// ------------------------------------------------------------------ -// ValueGuard -// ------------------------------------------------------------------ -const value_1 = __nccwpck_require__(87280); -/** `[Json]` Creates a Ref type. */ -function Ref(unresolved, options = {}) { - if ((0, value_1.IsString)(unresolved)) - return { ...options, [index_1.Kind]: 'Ref', $ref: unresolved }; - if ((0, value_1.IsUndefined)(unresolved.$id)) - throw new Error('Reference target type must specify an $id'); - return { - ...options, - [index_1.Kind]: 'Ref', - $ref: unresolved.$id, - }; -} -exports.Ref = Ref; - - -/***/ }), - -/***/ 34865: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(21260), exports); - - -/***/ }), - -/***/ 21260: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.RegExp = void 0; -const value_1 = __nccwpck_require__(87280); -const index_1 = __nccwpck_require__(48121); -/** `[JavaScript]` Creates a RegExp type */ -function RegExp(unresolved, options = {}) { - const expr = (0, value_1.IsString)(unresolved) ? new globalThis.RegExp(unresolved) : unresolved; - return { ...options, [index_1.Kind]: 'RegExp', type: 'RegExp', source: expr.source, flags: expr.flags }; -} -exports.RegExp = RegExp; - - -/***/ }), - -/***/ 34964: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Get = exports.Set = exports.Has = exports.Delete = exports.Clear = exports.Entries = void 0; -/** A registry for user defined string formats */ -const map = new Map(); -/** Returns the entries in this registry */ -function Entries() { - return new Map(map); -} -exports.Entries = Entries; -/** Clears all user defined string formats */ -function Clear() { - return map.clear(); -} -exports.Clear = Clear; -/** Deletes a registered format */ -function Delete(format) { - return map.delete(format); -} -exports.Delete = Delete; -/** Returns true if the user defined string format exists */ -function Has(format) { - return map.has(format); -} -exports.Has = Has; -/** Sets a validation function for a user defined string format */ -function Set(format, func) { - map.set(format, func); -} -exports.Set = Set; -/** Gets a validation function for a user defined string format */ -function Get(format) { - return map.get(format); -} -exports.Get = Get; - - -/***/ }), - -/***/ 97759: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TypeRegistry = exports.FormatRegistry = void 0; -exports.FormatRegistry = __nccwpck_require__(34964); -exports.TypeRegistry = __nccwpck_require__(80019); - - -/***/ }), - -/***/ 80019: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Get = exports.Set = exports.Has = exports.Delete = exports.Clear = exports.Entries = void 0; -/** A registry for user defined types */ -const map = new Map(); -/** Returns the entries in this registry */ -function Entries() { - return new Map(map); -} -exports.Entries = Entries; -/** Clears all user defined types */ -function Clear() { - return map.clear(); -} -exports.Clear = Clear; -/** Deletes a registered type */ -function Delete(kind) { - return map.delete(kind); -} -exports.Delete = Delete; -/** Returns true if this registry contains this kind */ -function Has(kind) { - return map.has(kind); -} -exports.Has = Has; -/** Sets a validation function for a user defined type */ -function Set(kind, func) { - map.set(kind, func); -} -exports.Set = Set; -/** Gets a custom validation function for a user defined type */ -function Get(kind) { - return map.get(kind); -} -exports.Get = Get; - - -/***/ }), - -/***/ 83397: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(82211), exports); -__exportStar(__nccwpck_require__(72964), exports); - - -/***/ }), - -/***/ 82211: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.RequiredFromMappedResult = void 0; -const index_1 = __nccwpck_require__(76675); -const required_1 = __nccwpck_require__(72964); -// prettier-ignore -function FromProperties(P, options) { - return globalThis.Object.getOwnPropertyNames(P).reduce((Acc, K2) => { - return { ...Acc, [K2]: (0, required_1.Required)(P[K2], options) }; - }, {}); -} -// prettier-ignore -function FromMappedResult(R, options) { - return FromProperties(R.properties, options); -} -// prettier-ignore -function RequiredFromMappedResult(R, options) { - const P = FromMappedResult(R, options); - return (0, index_1.MappedResult)(P); -} -exports.RequiredFromMappedResult = RequiredFromMappedResult; - - -/***/ }), - -/***/ 72964: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Required = void 0; -const index_1 = __nccwpck_require__(32945); -const index_2 = __nccwpck_require__(41743); -const index_3 = __nccwpck_require__(13871); -const index_4 = __nccwpck_require__(48121); -const type_1 = __nccwpck_require__(45157); -const index_5 = __nccwpck_require__(62202); -const required_from_mapped_result_1 = __nccwpck_require__(82211); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -// prettier-ignore -function FromRest(T) { - return T.map(L => RequiredResolve(L)); -} -// prettier-ignore -function FromProperties(T) { - return globalThis.Object.getOwnPropertyNames(T).reduce((Acc, K) => { - return { ...Acc, [K]: (0, index_5.Discard)(T[K], [index_4.OptionalKind]) }; - }, {}); -} -// ------------------------------------------------------------------ -// RequiredResolve -// ------------------------------------------------------------------ -// prettier-ignore -function RequiredResolve(T) { - return ((0, type_2.IsIntersect)(T) ? (0, index_1.Intersect)(FromRest(T.allOf)) : - (0, type_2.IsUnion)(T) ? (0, index_2.Union)(FromRest(T.anyOf)) : - (0, type_2.IsObject)(T) ? (0, index_3.Object)(FromProperties(T.properties)) : - (0, index_3.Object)({})); -} -/** `[Json]` Constructs a type where all properties are required */ -function Required(T, options = {}) { - if ((0, type_2.IsMappedResult)(T)) { - return (0, required_from_mapped_result_1.RequiredFromMappedResult)(T, options); - } - else { - const D = (0, index_5.Discard)(T, [index_4.TransformKind, '$id', 'required']); - const R = (0, type_1.CloneType)(RequiredResolve(T), options); - return { ...D, ...R }; - } -} -exports.Required = Required; - - -/***/ }), - -/***/ 47686: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(96538), exports); - - -/***/ }), - -/***/ 96538: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Rest = void 0; -const type_1 = __nccwpck_require__(45157); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -// prettier-ignore -function RestResolve(T) { - return ((0, type_2.IsIntersect)(T) ? [...T.allOf] : - (0, type_2.IsUnion)(T) ? [...T.anyOf] : - (0, type_2.IsTuple)(T) ? [...(T.items ?? [])] : - []); -} -/** `[Json]` Extracts interior Rest elements from Tuple, Intersect and Union types */ -function Rest(T) { - return (0, type_1.CloneRest)(RestResolve(T)); -} -exports.Rest = Rest; - - -/***/ }), - -/***/ 89861: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(45316), exports); - - -/***/ }), - -/***/ 45316: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ReturnType = void 0; -const type_1 = __nccwpck_require__(45157); -/** `[JavaScript]` Extracts the ReturnType from the given Function type */ -function ReturnType(schema, options = {}) { - return (0, type_1.CloneType)(schema.returns, options); -} -exports.ReturnType = ReturnType; - - -/***/ }), - -/***/ 85566: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); - - -/***/ }), - -/***/ 94987: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(85566), exports); -__exportStar(__nccwpck_require__(49016), exports); - - -/***/ }), - -/***/ 49016: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -const index_1 = __nccwpck_require__(48121); - - -/***/ }), - -/***/ 89925: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(36393), exports); - - -/***/ }), - -/***/ 36393: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.SetUnionMany = exports.SetIntersectMany = exports.SetComplement = exports.SetUnion = exports.SetIntersect = exports.SetDistinct = exports.SetIsSubset = exports.SetIncludes = void 0; -/** Returns true if element right is in the set of left */ -// prettier-ignore -function SetIncludes(T, S) { - return T.includes(S); -} -exports.SetIncludes = SetIncludes; -/** Returns true if left is a subset of right */ -function SetIsSubset(T, S) { - return T.every((L) => SetIncludes(S, L)); -} -exports.SetIsSubset = SetIsSubset; -/** Returns a distinct set of elements */ -function SetDistinct(T) { - return [...new Set(T)]; -} -exports.SetDistinct = SetDistinct; -/** Returns the Intersect of the given sets */ -function SetIntersect(T, S) { - return T.filter((L) => S.includes(L)); -} -exports.SetIntersect = SetIntersect; -/** Returns the Union of the given sets */ -function SetUnion(T, S) { - return [...T, ...S]; -} -exports.SetUnion = SetUnion; -/** Returns the Complement by omitting elements in T that are in S */ -// prettier-ignore -function SetComplement(T, S) { - return T.filter(L => !S.includes(L)); -} -exports.SetComplement = SetComplement; -// prettier-ignore -function SetIntersectManyResolve(T, Init) { - return T.reduce((Acc, L) => { - return SetIntersect(Acc, L); - }, Init); -} -// prettier-ignore -function SetIntersectMany(T) { - return (T.length === 1 - ? T[0] - // Use left to initialize the accumulator for resolve - : T.length > 1 - ? SetIntersectManyResolve(T.slice(1), T[0]) - : []); -} -exports.SetIntersectMany = SetIntersectMany; -/** Returns the Union of multiple sets */ -function SetUnionMany(T) { - return T.reduce((Acc, L) => [...Acc, ...L], []); -} -exports.SetUnionMany = SetUnionMany; - - -/***/ }), - -/***/ 2222: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(23230), exports); - - -/***/ }), - -/***/ 23230: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); - - -/***/ }), - -/***/ 94313: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(82416), exports); - - -/***/ }), - -/***/ 82416: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Strict = void 0; -/** `[Json]` Omits compositing symbols from this schema. */ -function Strict(schema) { - return JSON.parse(JSON.stringify(schema)); -} -exports.Strict = Strict; - - -/***/ }), - -/***/ 69429: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(95588), exports); - - -/***/ }), - -/***/ 95588: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.String = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[Json]` Creates a String type */ -function String(options = {}) { - return { ...options, [index_1.Kind]: 'String', type: 'string' }; -} -exports.String = String; - - -/***/ }), - -/***/ 69656: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(27194), exports); - - -/***/ }), - -/***/ 27194: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Symbol = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[JavaScript]` Creates a Symbol type */ -function Symbol(options) { - return { ...options, [index_1.Kind]: 'Symbol', type: 'symbol' }; -} -exports.Symbol = Symbol; - - -/***/ }), - -/***/ 48121: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(51616), exports); - - -/***/ }), - -/***/ 51616: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Kind = exports.Hint = exports.OptionalKind = exports.ReadonlyKind = exports.TransformKind = void 0; -/** Symbol key applied to transform types */ -exports.TransformKind = Symbol.for('TypeBox.Transform'); -/** Symbol key applied to readonly types */ -exports.ReadonlyKind = Symbol.for('TypeBox.Readonly'); -/** Symbol key applied to optional types */ -exports.OptionalKind = Symbol.for('TypeBox.Optional'); -/** Symbol key applied to types */ -exports.Hint = Symbol.for('TypeBox.Hint'); -/** Symbol key applied to types */ -exports.Kind = Symbol.for('TypeBox.Kind'); - - -/***/ }), - -/***/ 6313: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.IsTemplateLiteralFinite = exports.IsTemplateLiteralExpressionFinite = exports.TemplateLiteralFiniteError = void 0; -const parse_1 = __nccwpck_require__(31739); -const index_1 = __nccwpck_require__(94526); -// ------------------------------------------------------------------ -// TemplateLiteralFiniteError -// ------------------------------------------------------------------ -class TemplateLiteralFiniteError extends index_1.TypeBoxError { -} -exports.TemplateLiteralFiniteError = TemplateLiteralFiniteError; -// ------------------------------------------------------------------ -// IsTemplateLiteralFiniteCheck -// ------------------------------------------------------------------ -// prettier-ignore -function IsNumberExpression(expression) { - return (expression.type === 'or' && - expression.expr.length === 2 && - expression.expr[0].type === 'const' && - expression.expr[0].const === '0' && - expression.expr[1].type === 'const' && - expression.expr[1].const === '[1-9][0-9]*'); -} -// prettier-ignore -function IsBooleanExpression(expression) { - return (expression.type === 'or' && - expression.expr.length === 2 && - expression.expr[0].type === 'const' && - expression.expr[0].const === 'true' && - expression.expr[1].type === 'const' && - expression.expr[1].const === 'false'); -} -// prettier-ignore -function IsStringExpression(expression) { - return expression.type === 'const' && expression.const === '.*'; -} -// ------------------------------------------------------------------ -// IsTemplateLiteralExpressionFinite -// ------------------------------------------------------------------ -// prettier-ignore -function IsTemplateLiteralExpressionFinite(expression) { - return (IsNumberExpression(expression) || IsStringExpression(expression) ? false : - IsBooleanExpression(expression) ? true : - (expression.type === 'and') ? expression.expr.every((expr) => IsTemplateLiteralExpressionFinite(expr)) : - (expression.type === 'or') ? expression.expr.every((expr) => IsTemplateLiteralExpressionFinite(expr)) : - (expression.type === 'const') ? true : - (() => { throw new TemplateLiteralFiniteError(`Unknown expression type`); })()); -} -exports.IsTemplateLiteralExpressionFinite = IsTemplateLiteralExpressionFinite; -/** Returns true if this TemplateLiteral resolves to a finite set of values */ -function IsTemplateLiteralFinite(schema) { - const expression = (0, parse_1.TemplateLiteralParseExact)(schema.pattern); - return IsTemplateLiteralExpressionFinite(expression); -} -exports.IsTemplateLiteralFinite = IsTemplateLiteralFinite; - - -/***/ }), - -/***/ 41517: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TemplateLiteralGenerate = exports.TemplateLiteralExpressionGenerate = exports.TemplateLiteralGenerateError = void 0; -const finite_1 = __nccwpck_require__(6313); -const parse_1 = __nccwpck_require__(31739); -const index_1 = __nccwpck_require__(94526); -// ------------------------------------------------------------------ -// TemplateLiteralGenerateError -// ------------------------------------------------------------------ -class TemplateLiteralGenerateError extends index_1.TypeBoxError { -} -exports.TemplateLiteralGenerateError = TemplateLiteralGenerateError; -// ------------------------------------------------------------------ -// TemplateLiteralExpressionGenerate -// ------------------------------------------------------------------ -// prettier-ignore -function* GenerateReduce(buffer) { - if (buffer.length === 1) - return yield* buffer[0]; - for (const left of buffer[0]) { - for (const right of GenerateReduce(buffer.slice(1))) { - yield `${left}${right}`; - } - } -} -// prettier-ignore -function* GenerateAnd(expression) { - return yield* GenerateReduce(expression.expr.map((expr) => [...TemplateLiteralExpressionGenerate(expr)])); -} -// prettier-ignore -function* GenerateOr(expression) { - for (const expr of expression.expr) - yield* TemplateLiteralExpressionGenerate(expr); -} -// prettier-ignore -function* GenerateConst(expression) { - return yield expression.const; -} -function* TemplateLiteralExpressionGenerate(expression) { - return expression.type === 'and' - ? yield* GenerateAnd(expression) - : expression.type === 'or' - ? yield* GenerateOr(expression) - : expression.type === 'const' - ? yield* GenerateConst(expression) - : (() => { - throw new TemplateLiteralGenerateError('Unknown expression'); - })(); -} -exports.TemplateLiteralExpressionGenerate = TemplateLiteralExpressionGenerate; -/** Generates a tuple of strings from the given TemplateLiteral. Returns an empty tuple if infinite. */ -function TemplateLiteralGenerate(schema) { - const expression = (0, parse_1.TemplateLiteralParseExact)(schema.pattern); - // prettier-ignore - return ((0, finite_1.IsTemplateLiteralExpressionFinite)(expression) - ? [...TemplateLiteralExpressionGenerate(expression)] - : []); -} -exports.TemplateLiteralGenerate = TemplateLiteralGenerate; - - -/***/ }), - -/***/ 90984: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(6313), exports); -__exportStar(__nccwpck_require__(41517), exports); -__exportStar(__nccwpck_require__(21485), exports); -__exportStar(__nccwpck_require__(31739), exports); -__exportStar(__nccwpck_require__(35042), exports); -__exportStar(__nccwpck_require__(91723), exports); -__exportStar(__nccwpck_require__(77706), exports); - - -/***/ }), - -/***/ 31739: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TemplateLiteralParseExact = exports.TemplateLiteralParse = exports.TemplateLiteralParserError = void 0; -const index_1 = __nccwpck_require__(94526); -// ------------------------------------------------------------------ -// TemplateLiteralParserError -// ------------------------------------------------------------------ -class TemplateLiteralParserError extends index_1.TypeBoxError { -} -exports.TemplateLiteralParserError = TemplateLiteralParserError; -// ------------------------------------------------------------------- -// Unescape -// -// Unescape for these control characters specifically. Note that this -// function is only called on non union group content, and where we -// still want to allow the user to embed control characters in that -// content. For review. -// ------------------------------------------------------------------- -// prettier-ignore -function Unescape(pattern) { - return pattern - .replace(/\\\$/g, '$') - .replace(/\\\*/g, '*') - .replace(/\\\^/g, '^') - .replace(/\\\|/g, '|') - .replace(/\\\(/g, '(') - .replace(/\\\)/g, ')'); -} -// ------------------------------------------------------------------- -// Control Characters -// ------------------------------------------------------------------- -function IsNonEscaped(pattern, index, char) { - return pattern[index] === char && pattern.charCodeAt(index - 1) !== 92; -} -function IsOpenParen(pattern, index) { - return IsNonEscaped(pattern, index, '('); -} -function IsCloseParen(pattern, index) { - return IsNonEscaped(pattern, index, ')'); -} -function IsSeparator(pattern, index) { - return IsNonEscaped(pattern, index, '|'); -} -// ------------------------------------------------------------------- -// Control Groups -// ------------------------------------------------------------------- -function IsGroup(pattern) { - if (!(IsOpenParen(pattern, 0) && IsCloseParen(pattern, pattern.length - 1))) - return false; - let count = 0; - for (let index = 0; index < pattern.length; index++) { - if (IsOpenParen(pattern, index)) - count += 1; - if (IsCloseParen(pattern, index)) - count -= 1; - if (count === 0 && index !== pattern.length - 1) - return false; - } - return true; -} -// prettier-ignore -function InGroup(pattern) { - return pattern.slice(1, pattern.length - 1); -} -// prettier-ignore -function IsPrecedenceOr(pattern) { - let count = 0; - for (let index = 0; index < pattern.length; index++) { - if (IsOpenParen(pattern, index)) - count += 1; - if (IsCloseParen(pattern, index)) - count -= 1; - if (IsSeparator(pattern, index) && count === 0) - return true; - } - return false; -} -// prettier-ignore -function IsPrecedenceAnd(pattern) { - for (let index = 0; index < pattern.length; index++) { - if (IsOpenParen(pattern, index)) - return true; - } - return false; -} -// prettier-ignore -function Or(pattern) { - let [count, start] = [0, 0]; - const expressions = []; - for (let index = 0; index < pattern.length; index++) { - if (IsOpenParen(pattern, index)) - count += 1; - if (IsCloseParen(pattern, index)) - count -= 1; - if (IsSeparator(pattern, index) && count === 0) { - const range = pattern.slice(start, index); - if (range.length > 0) - expressions.push(TemplateLiteralParse(range)); - start = index + 1; - } - } - const range = pattern.slice(start); - if (range.length > 0) - expressions.push(TemplateLiteralParse(range)); - if (expressions.length === 0) - return { type: 'const', const: '' }; - if (expressions.length === 1) - return expressions[0]; - return { type: 'or', expr: expressions }; -} -// prettier-ignore -function And(pattern) { - function Group(value, index) { - if (!IsOpenParen(value, index)) - throw new TemplateLiteralParserError(`TemplateLiteralParser: Index must point to open parens`); - let count = 0; - for (let scan = index; scan < value.length; scan++) { - if (IsOpenParen(value, scan)) - count += 1; - if (IsCloseParen(value, scan)) - count -= 1; - if (count === 0) - return [index, scan]; - } - throw new TemplateLiteralParserError(`TemplateLiteralParser: Unclosed group parens in expression`); - } - function Range(pattern, index) { - for (let scan = index; scan < pattern.length; scan++) { - if (IsOpenParen(pattern, scan)) - return [index, scan]; - } - return [index, pattern.length]; - } - const expressions = []; - for (let index = 0; index < pattern.length; index++) { - if (IsOpenParen(pattern, index)) { - const [start, end] = Group(pattern, index); - const range = pattern.slice(start, end + 1); - expressions.push(TemplateLiteralParse(range)); - index = end; - } - else { - const [start, end] = Range(pattern, index); - const range = pattern.slice(start, end); - if (range.length > 0) - expressions.push(TemplateLiteralParse(range)); - index = end - 1; - } - } - return ((expressions.length === 0) ? { type: 'const', const: '' } : - (expressions.length === 1) ? expressions[0] : - { type: 'and', expr: expressions }); -} -// ------------------------------------------------------------------ -// TemplateLiteralParse -// ------------------------------------------------------------------ -/** Parses a pattern and returns an expression tree */ -function TemplateLiteralParse(pattern) { - // prettier-ignore - return (IsGroup(pattern) ? TemplateLiteralParse(InGroup(pattern)) : - IsPrecedenceOr(pattern) ? Or(pattern) : - IsPrecedenceAnd(pattern) ? And(pattern) : - { type: 'const', const: Unescape(pattern) }); -} -exports.TemplateLiteralParse = TemplateLiteralParse; -// ------------------------------------------------------------------ -// TemplateLiteralParseExact -// ------------------------------------------------------------------ -/** Parses a pattern and strips forward and trailing ^ and $ */ -function TemplateLiteralParseExact(pattern) { - return TemplateLiteralParse(pattern.slice(1, pattern.length - 1)); -} -exports.TemplateLiteralParseExact = TemplateLiteralParseExact; - - -/***/ }), - -/***/ 35042: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TemplateLiteralPattern = exports.TemplateLiteralPatternError = void 0; -const index_1 = __nccwpck_require__(50059); -const index_2 = __nccwpck_require__(48121); -const index_3 = __nccwpck_require__(94526); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -// prettier-ignore -const type_1 = __nccwpck_require__(20109); -// ------------------------------------------------------------------ -// TemplateLiteralPatternError -// ------------------------------------------------------------------ -class TemplateLiteralPatternError extends index_3.TypeBoxError { -} -exports.TemplateLiteralPatternError = TemplateLiteralPatternError; -// ------------------------------------------------------------------ -// TemplateLiteralPattern -// ------------------------------------------------------------------ -function Escape(value) { - return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); -} -// prettier-ignore -function Visit(schema, acc) { - return ((0, type_1.IsTemplateLiteral)(schema) ? schema.pattern.slice(1, schema.pattern.length - 1) : - (0, type_1.IsUnion)(schema) ? `(${schema.anyOf.map((schema) => Visit(schema, acc)).join('|')})` : - (0, type_1.IsNumber)(schema) ? `${acc}${index_1.PatternNumber}` : - (0, type_1.IsInteger)(schema) ? `${acc}${index_1.PatternNumber}` : - (0, type_1.IsBigInt)(schema) ? `${acc}${index_1.PatternNumber}` : - (0, type_1.IsString)(schema) ? `${acc}${index_1.PatternString}` : - (0, type_1.IsLiteral)(schema) ? `${acc}${Escape(schema.const.toString())}` : - (0, type_1.IsBoolean)(schema) ? `${acc}${index_1.PatternBoolean}` : - (() => { throw new TemplateLiteralPatternError(`Unexpected Kind '${schema[index_2.Kind]}'`); })()); -} -function TemplateLiteralPattern(kinds) { - return `^${kinds.map((schema) => Visit(schema, '')).join('')}\$`; -} -exports.TemplateLiteralPattern = TemplateLiteralPattern; - - -/***/ }), - -/***/ 21485: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TemplateLiteralSyntax = void 0; -const index_1 = __nccwpck_require__(24727); -const index_2 = __nccwpck_require__(89168); -const index_3 = __nccwpck_require__(37383); -const index_4 = __nccwpck_require__(46621); -const index_5 = __nccwpck_require__(69429); -const index_6 = __nccwpck_require__(41743); -const index_7 = __nccwpck_require__(22346); -// ------------------------------------------------------------------ -// SyntaxParsers -// ------------------------------------------------------------------ -// prettier-ignore -function* FromUnion(syntax) { - const trim = syntax.trim().replace(/"|'/g, ''); - return (trim === 'boolean' ? yield (0, index_2.Boolean)() : - trim === 'number' ? yield (0, index_4.Number)() : - trim === 'bigint' ? yield (0, index_3.BigInt)() : - trim === 'string' ? yield (0, index_5.String)() : - yield (() => { - const literals = trim.split('|').map((literal) => (0, index_1.Literal)(literal.trim())); - return (literals.length === 0 ? (0, index_7.Never)() : - literals.length === 1 ? literals[0] : - (0, index_6.UnionEvaluated)(literals)); - })()); -} -// prettier-ignore -function* FromTerminal(syntax) { - if (syntax[1] !== '{') { - const L = (0, index_1.Literal)('$'); - const R = FromSyntax(syntax.slice(1)); - return yield* [L, ...R]; - } - for (let i = 2; i < syntax.length; i++) { - if (syntax[i] === '}') { - const L = FromUnion(syntax.slice(2, i)); - const R = FromSyntax(syntax.slice(i + 1)); - return yield* [...L, ...R]; - } - } - yield (0, index_1.Literal)(syntax); -} -// prettier-ignore -function* FromSyntax(syntax) { - for (let i = 0; i < syntax.length; i++) { - if (syntax[i] === '$') { - const L = (0, index_1.Literal)(syntax.slice(0, i)); - const R = FromTerminal(syntax.slice(i)); - return yield* [L, ...R]; - } - } - yield (0, index_1.Literal)(syntax); -} -/** Parses TemplateLiteralSyntax and returns a tuple of TemplateLiteralKinds */ -function TemplateLiteralSyntax(syntax) { - return [...FromSyntax(syntax)]; -} -exports.TemplateLiteralSyntax = TemplateLiteralSyntax; - - -/***/ }), - -/***/ 77706: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TemplateLiteral = void 0; -const syntax_1 = __nccwpck_require__(21485); -const pattern_1 = __nccwpck_require__(35042); -const value_1 = __nccwpck_require__(87280); -const index_1 = __nccwpck_require__(48121); -/** `[Json]` Creates a TemplateLiteral type */ -// prettier-ignore -function TemplateLiteral(unresolved, options = {}) { - const pattern = (0, value_1.IsString)(unresolved) - ? (0, pattern_1.TemplateLiteralPattern)((0, syntax_1.TemplateLiteralSyntax)(unresolved)) - : (0, pattern_1.TemplateLiteralPattern)(unresolved); - return { ...options, [index_1.Kind]: 'TemplateLiteral', type: 'string', pattern }; -} -exports.TemplateLiteral = TemplateLiteral; - - -/***/ }), - -/***/ 91723: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TemplateLiteralToUnion = void 0; -const index_1 = __nccwpck_require__(41743); -const index_2 = __nccwpck_require__(24727); -const generate_1 = __nccwpck_require__(41517); -/** Returns a Union from the given TemplateLiteral */ -function TemplateLiteralToUnion(schema) { - const R = (0, generate_1.TemplateLiteralGenerate)(schema); - const L = R.map((S) => (0, index_2.Literal)(S)); - return (0, index_1.UnionEvaluated)(L); -} -exports.TemplateLiteralToUnion = TemplateLiteralToUnion; - - -/***/ }), - -/***/ 60304: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(24256), exports); - - -/***/ }), - -/***/ 24256: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Transform = exports.TransformEncodeBuilder = exports.TransformDecodeBuilder = void 0; -const index_1 = __nccwpck_require__(48121); -const type_1 = __nccwpck_require__(45157); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -// ------------------------------------------------------------------ -// TransformBuilders -// ------------------------------------------------------------------ -class TransformDecodeBuilder { - constructor(schema) { - this.schema = schema; - } - Decode(decode) { - return new TransformEncodeBuilder(this.schema, decode); - } -} -exports.TransformDecodeBuilder = TransformDecodeBuilder; -// prettier-ignore -class TransformEncodeBuilder { - constructor(schema, decode) { - this.schema = schema; - this.decode = decode; - } - EncodeTransform(encode, schema) { - const Encode = (value) => schema[index_1.TransformKind].Encode(encode(value)); - const Decode = (value) => this.decode(schema[index_1.TransformKind].Decode(value)); - const Codec = { Encode: Encode, Decode: Decode }; - return { ...schema, [index_1.TransformKind]: Codec }; - } - EncodeSchema(encode, schema) { - const Codec = { Decode: this.decode, Encode: encode }; - return { ...schema, [index_1.TransformKind]: Codec }; - } - Encode(encode) { - const schema = (0, type_1.CloneType)(this.schema); - return ((0, type_2.IsTransform)(schema) ? this.EncodeTransform(encode, schema) : this.EncodeSchema(encode, schema)); - } -} -exports.TransformEncodeBuilder = TransformEncodeBuilder; -/** `[Json]` Creates a Transform type */ -function Transform(schema) { - return new TransformDecodeBuilder(schema); -} -exports.Transform = Transform; - - -/***/ }), - -/***/ 82894: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(77460), exports); - - -/***/ }), - -/***/ 77460: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Tuple = void 0; -const type_1 = __nccwpck_require__(45157); -const index_1 = __nccwpck_require__(48121); -/** `[Json]` Creates a Tuple type */ -function Tuple(items, options = {}) { - // return TupleResolver.Resolve(T) - const [additionalItems, minItems, maxItems] = [false, items.length, items.length]; - // prettier-ignore - return (items.length > 0 ? - { ...options, [index_1.Kind]: 'Tuple', type: 'array', items: (0, type_1.CloneRest)(items), additionalItems, minItems, maxItems } : - { ...options, [index_1.Kind]: 'Tuple', type: 'array', minItems, maxItems }); -} -exports.Tuple = Tuple; - - -/***/ }), - -/***/ 55764: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Type = exports.JavaScriptTypeBuilder = exports.JsonTypeBuilder = void 0; -// ------------------------------------------------------------------ -// JsonTypeBuilder -// ------------------------------------------------------------------ -var json_1 = __nccwpck_require__(62012); -Object.defineProperty(exports, "JsonTypeBuilder", ({ enumerable: true, get: function () { return json_1.JsonTypeBuilder; } })); -// ------------------------------------------------------------------ -// JavaScriptTypeBuilder -// ------------------------------------------------------------------ -const TypeBuilder = __nccwpck_require__(88274); -const javascript_1 = __nccwpck_require__(30977); -Object.defineProperty(exports, "JavaScriptTypeBuilder", ({ enumerable: true, get: function () { return javascript_1.JavaScriptTypeBuilder; } })); -/** JavaScript Type Builder with Static Resolution for TypeScript */ -const Type = TypeBuilder; -exports.Type = Type; - - -/***/ }), - -/***/ 30977: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.JavaScriptTypeBuilder = void 0; -const json_1 = __nccwpck_require__(62012); -const index_1 = __nccwpck_require__(32733); -const index_2 = __nccwpck_require__(52779); -const index_3 = __nccwpck_require__(37383); -const index_4 = __nccwpck_require__(86232); -const index_5 = __nccwpck_require__(76835); -const index_6 = __nccwpck_require__(89816); -const index_7 = __nccwpck_require__(72996); -const index_8 = __nccwpck_require__(33458); -const index_9 = __nccwpck_require__(30666); -const index_10 = __nccwpck_require__(80264); -const index_11 = __nccwpck_require__(59573); -const index_12 = __nccwpck_require__(34865); -const index_13 = __nccwpck_require__(89861); -const index_14 = __nccwpck_require__(69656); -const index_15 = __nccwpck_require__(91305); -const index_16 = __nccwpck_require__(37272); -const index_17 = __nccwpck_require__(20602); -/** JavaScript Type Builder with Static Resolution for TypeScript */ -class JavaScriptTypeBuilder extends json_1.JsonTypeBuilder { - /** `[JavaScript]` Creates a AsyncIterator type */ - AsyncIterator(items, options = {}) { - return (0, index_1.AsyncIterator)(items, options); - } - /** `[JavaScript]` Constructs a type by recursively unwrapping Promise types */ - Awaited(schema, options = {}) { - return (0, index_2.Awaited)(schema, options); - } - /** `[JavaScript]` Creates a BigInt type */ - BigInt(options = {}) { - return (0, index_3.BigInt)(options); - } - /** `[JavaScript]` Extracts the ConstructorParameters from the given Constructor type */ - ConstructorParameters(schema, options = {}) { - return (0, index_5.ConstructorParameters)(schema, options); - } - /** `[JavaScript]` Creates a Constructor type */ - Constructor(parameters, returns, options) { - return (0, index_4.Constructor)(parameters, returns, options); - } - /** `[JavaScript]` Creates a Date type */ - Date(options = {}) { - return (0, index_6.Date)(options); - } - /** `[JavaScript]` Creates a Function type */ - Function(parameters, returns, options) { - return (0, index_7.Function)(parameters, returns, options); - } - /** `[JavaScript]` Extracts the InstanceType from the given Constructor type */ - InstanceType(schema, options = {}) { - return (0, index_8.InstanceType)(schema, options); - } - /** `[JavaScript]` Creates an Iterator type */ - Iterator(items, options = {}) { - return (0, index_9.Iterator)(items, options); - } - /** `[JavaScript]` Extracts the Parameters from the given Function type */ - Parameters(schema, options = {}) { - return (0, index_10.Parameters)(schema, options); - } - /** `[JavaScript]` Creates a Promise type */ - Promise(item, options = {}) { - return (0, index_11.Promise)(item, options); - } - /** `[JavaScript]` Creates a RegExp type */ - RegExp(unresolved, options = {}) { - return (0, index_12.RegExp)(unresolved, options); - } - /** `[JavaScript]` Extracts the ReturnType from the given Function type */ - ReturnType(schema, options = {}) { - return (0, index_13.ReturnType)(schema, options); - } - /** `[JavaScript]` Creates a Symbol type */ - Symbol(options) { - return (0, index_14.Symbol)(options); - } - /** `[JavaScript]` Creates a Undefined type */ - Undefined(options = {}) { - return (0, index_16.Undefined)(options); - } - /** `[JavaScript]` Creates a Uint8Array type */ - Uint8Array(options = {}) { - return (0, index_15.Uint8Array)(options); - } - /** `[JavaScript]` Creates a Void type */ - Void(options = {}) { - return (0, index_17.Void)(options); - } -} -exports.JavaScriptTypeBuilder = JavaScriptTypeBuilder; - - -/***/ }), - -/***/ 62012: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.JsonTypeBuilder = void 0; -const index_1 = __nccwpck_require__(56234); -const index_2 = __nccwpck_require__(59809); -const index_3 = __nccwpck_require__(89168); -const index_4 = __nccwpck_require__(87731); -const index_5 = __nccwpck_require__(29075); -const index_6 = __nccwpck_require__(3592); -const index_7 = __nccwpck_require__(63617); -const index_8 = __nccwpck_require__(10698); -const index_9 = __nccwpck_require__(40629); -const index_10 = __nccwpck_require__(14301); -const index_11 = __nccwpck_require__(89777); -const index_12 = __nccwpck_require__(5578); -const index_13 = __nccwpck_require__(32945); -const index_14 = __nccwpck_require__(71095); -const index_15 = __nccwpck_require__(30658); -const index_16 = __nccwpck_require__(24727); -const index_17 = __nccwpck_require__(76675); -const index_18 = __nccwpck_require__(22346); -const index_19 = __nccwpck_require__(9741); -const index_20 = __nccwpck_require__(4513); -const index_21 = __nccwpck_require__(46621); -const index_22 = __nccwpck_require__(13871); -const index_23 = __nccwpck_require__(56497); -const index_24 = __nccwpck_require__(31392); -const index_25 = __nccwpck_require__(96405); -const index_26 = __nccwpck_require__(53861); -const index_27 = __nccwpck_require__(4102); -const index_28 = __nccwpck_require__(51257); -const index_29 = __nccwpck_require__(59961); -const index_30 = __nccwpck_require__(81816); -const index_31 = __nccwpck_require__(29105); -const index_32 = __nccwpck_require__(83397); -const index_33 = __nccwpck_require__(47686); -const index_34 = __nccwpck_require__(94313); -const index_35 = __nccwpck_require__(69429); -const index_36 = __nccwpck_require__(90984); -const index_37 = __nccwpck_require__(60304); -const index_38 = __nccwpck_require__(82894); -const index_39 = __nccwpck_require__(41743); -const index_40 = __nccwpck_require__(41178); -const index_41 = __nccwpck_require__(79750); -/** Json Type Builder with Static Resolution for TypeScript */ -class JsonTypeBuilder { - // ------------------------------------------------------------------------ - // Strict - // ------------------------------------------------------------------------ - /** `[Json]` Omits compositing symbols from this schema */ - Strict(schema) { - return (0, index_34.Strict)(schema); - } - // ------------------------------------------------------------------------ - // Modifiers - // ------------------------------------------------------------------------ - /** `[Json]` Creates a Readonly and Optional property */ - ReadonlyOptional(schema) { - return (0, index_28.ReadonlyOptional)(schema); - } - /** `[Json]` Creates a Readonly property */ - Readonly(schema, enable) { - return (0, index_27.Readonly)(schema, enable ?? true); - } - /** `[Json]` Creates a Optional property */ - Optional(schema, enable) { - return (0, index_24.Optional)(schema, enable ?? true); - } - // ------------------------------------------------------------------------ - // Types - // ------------------------------------------------------------------------ - /** `[Json]` Creates an Any type */ - Any(options = {}) { - return (0, index_1.Any)(options); - } - /** `[Json]` Creates an Array type */ - Array(schema, options = {}) { - return (0, index_2.Array)(schema, options); - } - /** `[Json]` Creates a Boolean type */ - Boolean(options = {}) { - return (0, index_3.Boolean)(options); - } - /** `[Json]` Intrinsic function to Capitalize LiteralString types */ - Capitalize(schema, options = {}) { - return (0, index_14.Capitalize)(schema, options); - } - /** `[Json]` Creates a Composite object type */ - Composite(schemas, options) { - return (0, index_4.Composite)(schemas, options); // (error) TS 5.4.0-dev - review TComposite implementation - } - /** `[JavaScript]` Creates a readonly const type from the given value. */ - Const(value, options = {}) { - return (0, index_5.Const)(value, options); - } - /** `[Json]` Creates a dereferenced type */ - Deref(schema, references) { - return (0, index_6.Deref)(schema, references); - } - /** `[Json]` Creates a Enum type */ - Enum(item, options = {}) { - return (0, index_7.Enum)(item, options); - } - /** `[Json]` Constructs a type by excluding from unionType all union members that are assignable to excludedMembers */ - Exclude(unionType, excludedMembers, options = {}) { - return (0, index_8.Exclude)(unionType, excludedMembers, options); - } - /** `[Json]` Creates a Conditional type */ - Extends(L, R, T, F, options = {}) { - return (0, index_9.Extends)(L, R, T, F, options); - } - /** `[Json]` Constructs a type by extracting from type all union members that are assignable to union */ - Extract(type, union, options = {}) { - return (0, index_10.Extract)(type, union, options); - } - /** `[Json]` Returns an Indexed property type for the given keys */ - Index(schema, unresolved, options = {}) { - return (0, index_11.Index)(schema, unresolved, options); - } - /** `[Json]` Creates an Integer type */ - Integer(options = {}) { - return (0, index_12.Integer)(options); - } - /** `[Json]` Creates an Intersect type */ - Intersect(T, options = {}) { - return (0, index_13.Intersect)(T, options); - } - /** `[Json]` Creates a KeyOf type */ - KeyOf(schema, options = {}) { - return (0, index_15.KeyOf)(schema, options); - } - /** `[Json]` Creates a Literal type */ - Literal(value, options = {}) { - return (0, index_16.Literal)(value, options); - } - /** `[Json]` Intrinsic function to Lowercase LiteralString types */ - Lowercase(schema, options = {}) { - return (0, index_14.Lowercase)(schema, options); - } - /** `[Json]` Creates a Mapped object type */ - Mapped(key, map, options = {}) { - return (0, index_17.Mapped)(key, map, options); - } - /** `[Json]` Creates a Never type */ - Never(options = {}) { - return (0, index_18.Never)(options); - } - /** `[Json]` Creates a Not type */ - Not(schema, options) { - return (0, index_19.Not)(schema, options); - } - /** `[Json]` Creates a Null type */ - Null(options = {}) { - return (0, index_20.Null)(options); - } - /** `[Json]` Creates a Number type */ - Number(options = {}) { - return (0, index_21.Number)(options); - } - /** `[Json]` Creates an Object type */ - Object(properties, options = {}) { - return (0, index_22.Object)(properties, options); - } - /** `[Json]` Constructs a type whose keys are omitted from the given type */ - Omit(schema, unresolved, options = {}) { - return (0, index_23.Omit)(schema, unresolved, options); - } - /** `[Json]` Constructs a type where all properties are optional */ - Partial(schema, options = {}) { - return (0, index_25.Partial)(schema, options); - } - /** `[Json]` Constructs a type whose keys are picked from the given type */ - Pick(schema, unresolved, options = {}) { - return (0, index_26.Pick)(schema, unresolved, options); - } - /** `[Json]` Creates a Record type */ - Record(key, schema, options = {}) { - return (0, index_29.Record)(key, schema, options); - } - /** `[Json]` Creates a Recursive type */ - Recursive(callback, options = {}) { - return (0, index_30.Recursive)(callback, options); - } - /** `[Json]` Creates a Ref type. */ - Ref(unresolved, options = {}) { - return (0, index_31.Ref)(unresolved, options); - } - /** `[Json]` Constructs a type where all properties are required */ - Required(schema, options = {}) { - return (0, index_32.Required)(schema, options); - } - /** `[Json]` Extracts interior Rest elements from Tuple, Intersect and Union types */ - Rest(schema) { - return (0, index_33.Rest)(schema); - } - /** `[Json]` Creates a String type */ - String(options = {}) { - return (0, index_35.String)(options); - } - /** `[Json]` Creates a TemplateLiteral type */ - TemplateLiteral(unresolved, options = {}) { - return (0, index_36.TemplateLiteral)(unresolved, options); - } - /** `[Json]` Creates a Transform type */ - Transform(schema) { - return (0, index_37.Transform)(schema); - } - /** `[Json]` Creates a Tuple type */ - Tuple(items, options = {}) { - return (0, index_38.Tuple)(items, options); - } - /** `[Json]` Intrinsic function to Uncapitalize LiteralString types */ - Uncapitalize(schema, options = {}) { - return (0, index_14.Uncapitalize)(schema, options); - } - /** `[Json]` Creates a Union type */ - Union(schemas, options = {}) { - return (0, index_39.Union)(schemas, options); - } - /** `[Json]` Creates an Unknown type */ - Unknown(options = {}) { - return (0, index_40.Unknown)(options); - } - /** `[Json]` Creates a Unsafe type that will infers as the generic argument T */ - Unsafe(options = {}) { - return (0, index_41.Unsafe)(options); - } - /** `[Json]` Intrinsic function to Uppercase LiteralString types */ - Uppercase(schema, options = {}) { - return (0, index_14.Uppercase)(schema, options); - } -} -exports.JsonTypeBuilder = JsonTypeBuilder; - - -/***/ }), - -/***/ 88274: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Strict = exports.ReturnType = exports.Rest = exports.Required = exports.RegExp = exports.Ref = exports.Recursive = exports.Record = exports.ReadonlyOptional = exports.Readonly = exports.Promise = exports.Pick = exports.Partial = exports.Parameters = exports.Optional = exports.Omit = exports.Object = exports.Number = exports.Null = exports.Not = exports.Never = exports.Mapped = exports.Literal = exports.KeyOf = exports.Iterator = exports.Uppercase = exports.Lowercase = exports.Uncapitalize = exports.Capitalize = exports.Intersect = exports.Integer = exports.InstanceType = exports.Index = exports.Function = exports.Extract = exports.Extends = exports.Exclude = exports.Enum = exports.Deref = exports.Date = exports.ConstructorParameters = exports.Constructor = exports.Const = exports.Composite = exports.Boolean = exports.BigInt = exports.Awaited = exports.AsyncIterator = exports.Array = exports.Any = void 0; -exports.Void = exports.Unsafe = exports.Unknown = exports.Union = exports.Undefined = exports.Uint8Array = exports.Tuple = exports.Transform = exports.TemplateLiteral = exports.Symbol = exports.String = void 0; -// ------------------------------------------------------------------ -// Type: Module -// ------------------------------------------------------------------ -var index_1 = __nccwpck_require__(56234); -Object.defineProperty(exports, "Any", ({ enumerable: true, get: function () { return index_1.Any; } })); -var index_2 = __nccwpck_require__(59809); -Object.defineProperty(exports, "Array", ({ enumerable: true, get: function () { return index_2.Array; } })); -var index_3 = __nccwpck_require__(32733); -Object.defineProperty(exports, "AsyncIterator", ({ enumerable: true, get: function () { return index_3.AsyncIterator; } })); -var index_4 = __nccwpck_require__(52779); -Object.defineProperty(exports, "Awaited", ({ enumerable: true, get: function () { return index_4.Awaited; } })); -var index_5 = __nccwpck_require__(37383); -Object.defineProperty(exports, "BigInt", ({ enumerable: true, get: function () { return index_5.BigInt; } })); -var index_6 = __nccwpck_require__(89168); -Object.defineProperty(exports, "Boolean", ({ enumerable: true, get: function () { return index_6.Boolean; } })); -var index_7 = __nccwpck_require__(87731); -Object.defineProperty(exports, "Composite", ({ enumerable: true, get: function () { return index_7.Composite; } })); -var index_8 = __nccwpck_require__(29075); -Object.defineProperty(exports, "Const", ({ enumerable: true, get: function () { return index_8.Const; } })); -var index_9 = __nccwpck_require__(86232); -Object.defineProperty(exports, "Constructor", ({ enumerable: true, get: function () { return index_9.Constructor; } })); -var index_10 = __nccwpck_require__(76835); -Object.defineProperty(exports, "ConstructorParameters", ({ enumerable: true, get: function () { return index_10.ConstructorParameters; } })); -var index_11 = __nccwpck_require__(89816); -Object.defineProperty(exports, "Date", ({ enumerable: true, get: function () { return index_11.Date; } })); -var index_12 = __nccwpck_require__(3592); -Object.defineProperty(exports, "Deref", ({ enumerable: true, get: function () { return index_12.Deref; } })); -var index_13 = __nccwpck_require__(63617); -Object.defineProperty(exports, "Enum", ({ enumerable: true, get: function () { return index_13.Enum; } })); -var index_14 = __nccwpck_require__(10698); -Object.defineProperty(exports, "Exclude", ({ enumerable: true, get: function () { return index_14.Exclude; } })); -var index_15 = __nccwpck_require__(40629); -Object.defineProperty(exports, "Extends", ({ enumerable: true, get: function () { return index_15.Extends; } })); -var index_16 = __nccwpck_require__(14301); -Object.defineProperty(exports, "Extract", ({ enumerable: true, get: function () { return index_16.Extract; } })); -var index_17 = __nccwpck_require__(72996); -Object.defineProperty(exports, "Function", ({ enumerable: true, get: function () { return index_17.Function; } })); -var index_18 = __nccwpck_require__(89777); -Object.defineProperty(exports, "Index", ({ enumerable: true, get: function () { return index_18.Index; } })); -var index_19 = __nccwpck_require__(33458); -Object.defineProperty(exports, "InstanceType", ({ enumerable: true, get: function () { return index_19.InstanceType; } })); -var index_20 = __nccwpck_require__(5578); -Object.defineProperty(exports, "Integer", ({ enumerable: true, get: function () { return index_20.Integer; } })); -var index_21 = __nccwpck_require__(32945); -Object.defineProperty(exports, "Intersect", ({ enumerable: true, get: function () { return index_21.Intersect; } })); -var index_22 = __nccwpck_require__(71095); -Object.defineProperty(exports, "Capitalize", ({ enumerable: true, get: function () { return index_22.Capitalize; } })); -Object.defineProperty(exports, "Uncapitalize", ({ enumerable: true, get: function () { return index_22.Uncapitalize; } })); -Object.defineProperty(exports, "Lowercase", ({ enumerable: true, get: function () { return index_22.Lowercase; } })); -Object.defineProperty(exports, "Uppercase", ({ enumerable: true, get: function () { return index_22.Uppercase; } })); -var index_23 = __nccwpck_require__(30666); -Object.defineProperty(exports, "Iterator", ({ enumerable: true, get: function () { return index_23.Iterator; } })); -var index_24 = __nccwpck_require__(30658); -Object.defineProperty(exports, "KeyOf", ({ enumerable: true, get: function () { return index_24.KeyOf; } })); -var index_25 = __nccwpck_require__(24727); -Object.defineProperty(exports, "Literal", ({ enumerable: true, get: function () { return index_25.Literal; } })); -var index_26 = __nccwpck_require__(76675); -Object.defineProperty(exports, "Mapped", ({ enumerable: true, get: function () { return index_26.Mapped; } })); -var index_27 = __nccwpck_require__(22346); -Object.defineProperty(exports, "Never", ({ enumerable: true, get: function () { return index_27.Never; } })); -var index_28 = __nccwpck_require__(9741); -Object.defineProperty(exports, "Not", ({ enumerable: true, get: function () { return index_28.Not; } })); -var index_29 = __nccwpck_require__(4513); -Object.defineProperty(exports, "Null", ({ enumerable: true, get: function () { return index_29.Null; } })); -var index_30 = __nccwpck_require__(46621); -Object.defineProperty(exports, "Number", ({ enumerable: true, get: function () { return index_30.Number; } })); -var index_31 = __nccwpck_require__(13871); -Object.defineProperty(exports, "Object", ({ enumerable: true, get: function () { return index_31.Object; } })); -var index_32 = __nccwpck_require__(56497); -Object.defineProperty(exports, "Omit", ({ enumerable: true, get: function () { return index_32.Omit; } })); -var index_33 = __nccwpck_require__(31392); -Object.defineProperty(exports, "Optional", ({ enumerable: true, get: function () { return index_33.Optional; } })); -var index_34 = __nccwpck_require__(80264); -Object.defineProperty(exports, "Parameters", ({ enumerable: true, get: function () { return index_34.Parameters; } })); -var index_35 = __nccwpck_require__(96405); -Object.defineProperty(exports, "Partial", ({ enumerable: true, get: function () { return index_35.Partial; } })); -var index_36 = __nccwpck_require__(53861); -Object.defineProperty(exports, "Pick", ({ enumerable: true, get: function () { return index_36.Pick; } })); -var index_37 = __nccwpck_require__(59573); -Object.defineProperty(exports, "Promise", ({ enumerable: true, get: function () { return index_37.Promise; } })); -var index_38 = __nccwpck_require__(4102); -Object.defineProperty(exports, "Readonly", ({ enumerable: true, get: function () { return index_38.Readonly; } })); -var index_39 = __nccwpck_require__(51257); -Object.defineProperty(exports, "ReadonlyOptional", ({ enumerable: true, get: function () { return index_39.ReadonlyOptional; } })); -var index_40 = __nccwpck_require__(59961); -Object.defineProperty(exports, "Record", ({ enumerable: true, get: function () { return index_40.Record; } })); -var index_41 = __nccwpck_require__(81816); -Object.defineProperty(exports, "Recursive", ({ enumerable: true, get: function () { return index_41.Recursive; } })); -var index_42 = __nccwpck_require__(29105); -Object.defineProperty(exports, "Ref", ({ enumerable: true, get: function () { return index_42.Ref; } })); -var index_43 = __nccwpck_require__(34865); -Object.defineProperty(exports, "RegExp", ({ enumerable: true, get: function () { return index_43.RegExp; } })); -var index_44 = __nccwpck_require__(83397); -Object.defineProperty(exports, "Required", ({ enumerable: true, get: function () { return index_44.Required; } })); -var index_45 = __nccwpck_require__(47686); -Object.defineProperty(exports, "Rest", ({ enumerable: true, get: function () { return index_45.Rest; } })); -var index_46 = __nccwpck_require__(89861); -Object.defineProperty(exports, "ReturnType", ({ enumerable: true, get: function () { return index_46.ReturnType; } })); -var index_47 = __nccwpck_require__(94313); -Object.defineProperty(exports, "Strict", ({ enumerable: true, get: function () { return index_47.Strict; } })); -var index_48 = __nccwpck_require__(69429); -Object.defineProperty(exports, "String", ({ enumerable: true, get: function () { return index_48.String; } })); -var index_49 = __nccwpck_require__(69656); -Object.defineProperty(exports, "Symbol", ({ enumerable: true, get: function () { return index_49.Symbol; } })); -var index_50 = __nccwpck_require__(90984); -Object.defineProperty(exports, "TemplateLiteral", ({ enumerable: true, get: function () { return index_50.TemplateLiteral; } })); -var index_51 = __nccwpck_require__(60304); -Object.defineProperty(exports, "Transform", ({ enumerable: true, get: function () { return index_51.Transform; } })); -var index_52 = __nccwpck_require__(82894); -Object.defineProperty(exports, "Tuple", ({ enumerable: true, get: function () { return index_52.Tuple; } })); -var index_53 = __nccwpck_require__(91305); -Object.defineProperty(exports, "Uint8Array", ({ enumerable: true, get: function () { return index_53.Uint8Array; } })); -var index_54 = __nccwpck_require__(37272); -Object.defineProperty(exports, "Undefined", ({ enumerable: true, get: function () { return index_54.Undefined; } })); -var index_55 = __nccwpck_require__(41743); -Object.defineProperty(exports, "Union", ({ enumerable: true, get: function () { return index_55.Union; } })); -var index_56 = __nccwpck_require__(41178); -Object.defineProperty(exports, "Unknown", ({ enumerable: true, get: function () { return index_56.Unknown; } })); -var index_57 = __nccwpck_require__(79750); -Object.defineProperty(exports, "Unsafe", ({ enumerable: true, get: function () { return index_57.Unsafe; } })); -var index_58 = __nccwpck_require__(20602); -Object.defineProperty(exports, "Void", ({ enumerable: true, get: function () { return index_58.Void; } })); - - -/***/ }), - -/***/ 91305: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(57480), exports); - - -/***/ }), - -/***/ 57480: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Uint8Array = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[JavaScript]` Creates a Uint8Array type */ -function Uint8Array(options = {}) { - return { ...options, [index_1.Kind]: 'Uint8Array', type: 'Uint8Array' }; -} -exports.Uint8Array = Uint8Array; - - -/***/ }), - -/***/ 37272: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(17112), exports); - - -/***/ }), - -/***/ 17112: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Undefined = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[JavaScript]` Creates a Undefined type */ -function Undefined(options = {}) { - return { ...options, [index_1.Kind]: 'Undefined', type: 'undefined' }; -} -exports.Undefined = Undefined; - - -/***/ }), - -/***/ 41743: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(54204), exports); -__exportStar(__nccwpck_require__(45269), exports); -__exportStar(__nccwpck_require__(95248), exports); - - -/***/ }), - -/***/ 45481: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.UnionCreate = void 0; -const type_1 = __nccwpck_require__(45157); -const index_1 = __nccwpck_require__(48121); -function UnionCreate(T, options) { - return { ...options, [index_1.Kind]: 'Union', anyOf: (0, type_1.CloneRest)(T) }; -} -exports.UnionCreate = UnionCreate; - - -/***/ }), - -/***/ 54204: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.UnionEvaluated = void 0; -const index_1 = __nccwpck_require__(48121); -const type_1 = __nccwpck_require__(45157); -const index_2 = __nccwpck_require__(62202); -const index_3 = __nccwpck_require__(22346); -const index_4 = __nccwpck_require__(31392); -const union_create_1 = __nccwpck_require__(45481); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_2 = __nccwpck_require__(20109); -// prettier-ignore -function IsUnionOptional(T) { - return T.some(L => (0, type_2.IsOptional)(L)); -} -// prettier-ignore -function RemoveOptionalFromRest(T) { - return T.map(L => (0, type_2.IsOptional)(L) ? RemoveOptionalFromType(L) : L); -} -// prettier-ignore -function RemoveOptionalFromType(T) { - return ((0, index_2.Discard)(T, [index_1.OptionalKind])); -} -// prettier-ignore -function ResolveUnion(T, options) { - return (IsUnionOptional(T) - ? (0, index_4.Optional)((0, union_create_1.UnionCreate)(RemoveOptionalFromRest(T), options)) - : (0, union_create_1.UnionCreate)(RemoveOptionalFromRest(T), options)); -} -/** `[Json]` Creates an evaluated Union type */ -function UnionEvaluated(T, options = {}) { - // prettier-ignore - return (T.length === 0 ? (0, index_3.Never)(options) : - T.length === 1 ? (0, type_1.CloneType)(T[0], options) : - ResolveUnion(T, options)); -} -exports.UnionEvaluated = UnionEvaluated; - - -/***/ }), - -/***/ 45269: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -const index_1 = __nccwpck_require__(48121); - - -/***/ }), - -/***/ 95248: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Union = void 0; -const index_1 = __nccwpck_require__(22346); -const type_1 = __nccwpck_require__(45157); -const union_create_1 = __nccwpck_require__(45481); -/** `[Json]` Creates a Union type */ -function Union(T, options = {}) { - // prettier-ignore - return (T.length === 0 ? (0, index_1.Never)(options) : - T.length === 1 ? (0, type_1.CloneType)(T[0], options) : - (0, union_create_1.UnionCreate)(T, options)); -} -exports.Union = Union; - - -/***/ }), - -/***/ 41178: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(71800), exports); - - -/***/ }), - -/***/ 71800: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Unknown = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[Json]` Creates an Unknown type */ -function Unknown(options = {}) { - return { - ...options, - [index_1.Kind]: 'Unknown', - }; -} -exports.Unknown = Unknown; - - -/***/ }), - -/***/ 79750: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(33134), exports); - - -/***/ }), - -/***/ 33134: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Unsafe = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[Json]` Creates a Unsafe type that will infers as the generic argument T */ -function Unsafe(options = {}) { - return { - ...options, - [index_1.Kind]: options[index_1.Kind] ?? 'Unsafe', - }; -} -exports.Unsafe = Unsafe; - - -/***/ }), - -/***/ 20602: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(42606), exports); - - -/***/ }), - -/***/ 42606: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Void = void 0; -const index_1 = __nccwpck_require__(48121); -/** `[JavaScript]` Creates a Void type */ -function Void(options = {}) { - return { - ...options, - [index_1.Kind]: 'Void', - type: 'void', - }; -} -exports.Void = Void; - - -/***/ }), - -/***/ 70099: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Cast = exports.ValueCastError = void 0; -const index_1 = __nccwpck_require__(19522); -const index_2 = __nccwpck_require__(94526); -const index_3 = __nccwpck_require__(48121); -const index_4 = __nccwpck_require__(37029); -const index_5 = __nccwpck_require__(35323); -const index_6 = __nccwpck_require__(66614); -const index_7 = __nccwpck_require__(75743); -// ------------------------------------------------------------------ -// Errors -// ------------------------------------------------------------------ -class ValueCastError extends index_2.TypeBoxError { - constructor(schema, message) { - super(message); - this.schema = schema; - } -} -exports.ValueCastError = ValueCastError; -// ------------------------------------------------------------------ -// The following will score a schema against a value. For objects, -// the score is the tally of points awarded for each property of -// the value. Property points are (1.0 / propertyCount) to prevent -// large property counts biasing results. Properties that match -// literal values are maximally awarded as literals are typically -// used as union discriminator fields. -// ------------------------------------------------------------------ -function ScoreUnion(schema, references, value) { - if (schema[index_3.Kind] === 'Object' && typeof value === 'object' && !(0, index_1.IsNull)(value)) { - const object = schema; - const keys = Object.getOwnPropertyNames(value); - const entries = Object.entries(object.properties); - const [point, max] = [1 / entries.length, entries.length]; - return entries.reduce((acc, [key, schema]) => { - const literal = schema[index_3.Kind] === 'Literal' && schema.const === value[key] ? max : 0; - const checks = (0, index_5.Check)(schema, references, value[key]) ? point : 0; - const exists = keys.includes(key) ? point : 0; - return acc + (literal + checks + exists); - }, 0); - } - else { - return (0, index_5.Check)(schema, references, value) ? 1 : 0; - } -} -function SelectUnion(union, references, value) { - let [select, best] = [union.anyOf[0], 0]; - for (const schema of union.anyOf) { - const score = ScoreUnion(schema, references, value); - if (score > best) { - select = schema; - best = score; - } - } - return select; -} -function CastUnion(union, references, value) { - if ('default' in union) { - return typeof value === 'function' ? union.default : (0, index_6.Clone)(union.default); - } - else { - const schema = SelectUnion(union, references, value); - return Cast(schema, references, value); - } -} -// ------------------------------------------------------------------ -// Default -// ------------------------------------------------------------------ -function DefaultClone(schema, references, value) { - return (0, index_5.Check)(schema, references, value) ? (0, index_6.Clone)(value) : (0, index_4.Create)(schema, references); -} -function Default(schema, references, value) { - return (0, index_5.Check)(schema, references, value) ? value : (0, index_4.Create)(schema, references); -} -// ------------------------------------------------------------------ -// Cast -// ------------------------------------------------------------------ -function FromArray(schema, references, value) { - if ((0, index_5.Check)(schema, references, value)) - return (0, index_6.Clone)(value); - const created = (0, index_1.IsArray)(value) ? (0, index_6.Clone)(value) : (0, index_4.Create)(schema, references); - const minimum = (0, index_1.IsNumber)(schema.minItems) && created.length < schema.minItems ? [...created, ...Array.from({ length: schema.minItems - created.length }, () => null)] : created; - const maximum = (0, index_1.IsNumber)(schema.maxItems) && minimum.length > schema.maxItems ? minimum.slice(0, schema.maxItems) : minimum; - const casted = maximum.map((value) => Visit(schema.items, references, value)); - if (schema.uniqueItems !== true) - return casted; - const unique = [...new Set(casted)]; - if (!(0, index_5.Check)(schema, references, unique)) - throw new ValueCastError(schema, 'Array cast produced invalid data due to uniqueItems constraint'); - return unique; -} -function FromConstructor(schema, references, value) { - if ((0, index_5.Check)(schema, references, value)) - return (0, index_4.Create)(schema, references); - const required = new Set(schema.returns.required || []); - const result = function () { }; - for (const [key, property] of Object.entries(schema.returns.properties)) { - if (!required.has(key) && value.prototype[key] === undefined) - continue; - result.prototype[key] = Visit(property, references, value.prototype[key]); - } - return result; -} -function FromIntersect(schema, references, value) { - const created = (0, index_4.Create)(schema, references); - const mapped = (0, index_1.IsStandardObject)(created) && (0, index_1.IsStandardObject)(value) ? { ...created, ...value } : value; - return (0, index_5.Check)(schema, references, mapped) ? mapped : (0, index_4.Create)(schema, references); -} -function FromNever(schema, references, value) { - throw new ValueCastError(schema, 'Never types cannot be cast'); -} -function FromObject(schema, references, value) { - if ((0, index_5.Check)(schema, references, value)) - return value; - if (value === null || typeof value !== 'object') - return (0, index_4.Create)(schema, references); - const required = new Set(schema.required || []); - const result = {}; - for (const [key, property] of Object.entries(schema.properties)) { - if (!required.has(key) && value[key] === undefined) - continue; - result[key] = Visit(property, references, value[key]); - } - // additional schema properties - if (typeof schema.additionalProperties === 'object') { - const propertyNames = Object.getOwnPropertyNames(schema.properties); - for (const propertyName of Object.getOwnPropertyNames(value)) { - if (propertyNames.includes(propertyName)) - continue; - result[propertyName] = Visit(schema.additionalProperties, references, value[propertyName]); - } - } - return result; -} -function FromRecord(schema, references, value) { - if ((0, index_5.Check)(schema, references, value)) - return (0, index_6.Clone)(value); - if (value === null || typeof value !== 'object' || Array.isArray(value) || value instanceof Date) - return (0, index_4.Create)(schema, references); - const subschemaPropertyName = Object.getOwnPropertyNames(schema.patternProperties)[0]; - const subschema = schema.patternProperties[subschemaPropertyName]; - const result = {}; - for (const [propKey, propValue] of Object.entries(value)) { - result[propKey] = Visit(subschema, references, propValue); - } - return result; -} -function FromRef(schema, references, value) { - return Visit((0, index_7.Deref)(schema, references), references, value); -} -function FromThis(schema, references, value) { - return Visit((0, index_7.Deref)(schema, references), references, value); -} -function FromTuple(schema, references, value) { - if ((0, index_5.Check)(schema, references, value)) - return (0, index_6.Clone)(value); - if (!(0, index_1.IsArray)(value)) - return (0, index_4.Create)(schema, references); - if (schema.items === undefined) - return []; - return schema.items.map((schema, index) => Visit(schema, references, value[index])); -} -function FromUnion(schema, references, value) { - return (0, index_5.Check)(schema, references, value) ? (0, index_6.Clone)(value) : CastUnion(schema, references, value); -} -function Visit(schema, references, value) { - const references_ = (0, index_1.IsString)(schema.$id) ? [...references, schema] : references; - const schema_ = schema; - switch (schema[index_3.Kind]) { - // -------------------------------------------------------------- - // Structural - // -------------------------------------------------------------- - case 'Array': - return FromArray(schema_, references_, value); - case 'Constructor': - return FromConstructor(schema_, references_, value); - case 'Intersect': - return FromIntersect(schema_, references_, value); - case 'Never': - return FromNever(schema_, references_, value); - case 'Object': - return FromObject(schema_, references_, value); - case 'Record': - return FromRecord(schema_, references_, value); - case 'Ref': - return FromRef(schema_, references_, value); - case 'This': - return FromThis(schema_, references_, value); - case 'Tuple': - return FromTuple(schema_, references_, value); - case 'Union': - return FromUnion(schema_, references_, value); - // -------------------------------------------------------------- - // DefaultClone - // -------------------------------------------------------------- - case 'Date': - case 'Symbol': - case 'Uint8Array': - return DefaultClone(schema, references, value); - // -------------------------------------------------------------- - // Default - // -------------------------------------------------------------- - default: - return Default(schema_, references_, value); - } -} -/** Casts a value into a given type. The return value will retain as much information of the original value as possible. */ -function Cast(...args) { - return args.length === 3 ? Visit(args[0], args[1], args[2]) : Visit(args[0], [], args[1]); -} -exports.Cast = Cast; - - -/***/ }), - -/***/ 49098: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(70099), exports); - - -/***/ }), - -/***/ 3935: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Check = exports.ValueCheckUnknownTypeError = void 0; -const index_1 = __nccwpck_require__(45918); -const index_2 = __nccwpck_require__(75743); -const index_3 = __nccwpck_require__(73849); -const index_4 = __nccwpck_require__(48121); -const index_5 = __nccwpck_require__(30658); -const index_6 = __nccwpck_require__(40629); -const index_7 = __nccwpck_require__(97759); -const index_8 = __nccwpck_require__(94526); -const index_9 = __nccwpck_require__(22346); -// ------------------------------------------------------------------ -// ValueGuard -// ------------------------------------------------------------------ -const index_10 = __nccwpck_require__(19522); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_1 = __nccwpck_require__(20109); -// ------------------------------------------------------------------ -// Errors -// ------------------------------------------------------------------ -class ValueCheckUnknownTypeError extends index_8.TypeBoxError { - constructor(schema) { - super(`Unknown type`); - this.schema = schema; - } -} -exports.ValueCheckUnknownTypeError = ValueCheckUnknownTypeError; -// ------------------------------------------------------------------ -// TypeGuards -// ------------------------------------------------------------------ -function IsAnyOrUnknown(schema) { - return schema[index_4.Kind] === 'Any' || schema[index_4.Kind] === 'Unknown'; -} -// ------------------------------------------------------------------ -// Guards -// ------------------------------------------------------------------ -function IsDefined(value) { - return value !== undefined; -} -// ------------------------------------------------------------------ -// Types -// ------------------------------------------------------------------ -function FromAny(schema, references, value) { - return true; -} -function FromArray(schema, references, value) { - if (!(0, index_10.IsArray)(value)) - return false; - if (IsDefined(schema.minItems) && !(value.length >= schema.minItems)) { - return false; - } - if (IsDefined(schema.maxItems) && !(value.length <= schema.maxItems)) { - return false; - } - if (!value.every((value) => Visit(schema.items, references, value))) { - return false; - } - // prettier-ignore - if (schema.uniqueItems === true && !((function () { const set = new Set(); for (const element of value) { - const hashed = (0, index_3.Hash)(element); - if (set.has(hashed)) { - return false; - } - else { - set.add(hashed); - } - } return true; })())) { - return false; - } - // contains - if (!(IsDefined(schema.contains) || (0, index_10.IsNumber)(schema.minContains) || (0, index_10.IsNumber)(schema.maxContains))) { - return true; // exit - } - const containsSchema = IsDefined(schema.contains) ? schema.contains : (0, index_9.Never)(); - const containsCount = value.reduce((acc, value) => (Visit(containsSchema, references, value) ? acc + 1 : acc), 0); - if (containsCount === 0) { - return false; - } - if ((0, index_10.IsNumber)(schema.minContains) && containsCount < schema.minContains) { - return false; - } - if ((0, index_10.IsNumber)(schema.maxContains) && containsCount > schema.maxContains) { - return false; - } - return true; -} -function FromAsyncIterator(schema, references, value) { - return (0, index_10.IsAsyncIterator)(value); -} -function FromBigInt(schema, references, value) { - if (!(0, index_10.IsBigInt)(value)) - return false; - if (IsDefined(schema.exclusiveMaximum) && !(value < schema.exclusiveMaximum)) { - return false; - } - if (IsDefined(schema.exclusiveMinimum) && !(value > schema.exclusiveMinimum)) { - return false; - } - if (IsDefined(schema.maximum) && !(value <= schema.maximum)) { - return false; - } - if (IsDefined(schema.minimum) && !(value >= schema.minimum)) { - return false; - } - if (IsDefined(schema.multipleOf) && !(value % schema.multipleOf === BigInt(0))) { - return false; - } - return true; -} -function FromBoolean(schema, references, value) { - return (0, index_10.IsBoolean)(value); -} -function FromConstructor(schema, references, value) { - return Visit(schema.returns, references, value.prototype); -} -function FromDate(schema, references, value) { - if (!(0, index_10.IsDate)(value)) - return false; - if (IsDefined(schema.exclusiveMaximumTimestamp) && !(value.getTime() < schema.exclusiveMaximumTimestamp)) { - return false; - } - if (IsDefined(schema.exclusiveMinimumTimestamp) && !(value.getTime() > schema.exclusiveMinimumTimestamp)) { - return false; - } - if (IsDefined(schema.maximumTimestamp) && !(value.getTime() <= schema.maximumTimestamp)) { - return false; - } - if (IsDefined(schema.minimumTimestamp) && !(value.getTime() >= schema.minimumTimestamp)) { - return false; - } - if (IsDefined(schema.multipleOfTimestamp) && !(value.getTime() % schema.multipleOfTimestamp === 0)) { - return false; - } - return true; -} -function FromFunction(schema, references, value) { - return (0, index_10.IsFunction)(value); -} -function FromInteger(schema, references, value) { - if (!(0, index_10.IsInteger)(value)) { - return false; - } - if (IsDefined(schema.exclusiveMaximum) && !(value < schema.exclusiveMaximum)) { - return false; - } - if (IsDefined(schema.exclusiveMinimum) && !(value > schema.exclusiveMinimum)) { - return false; - } - if (IsDefined(schema.maximum) && !(value <= schema.maximum)) { - return false; - } - if (IsDefined(schema.minimum) && !(value >= schema.minimum)) { - return false; - } - if (IsDefined(schema.multipleOf) && !(value % schema.multipleOf === 0)) { - return false; - } - return true; -} -function FromIntersect(schema, references, value) { - const check1 = schema.allOf.every((schema) => Visit(schema, references, value)); - if (schema.unevaluatedProperties === false) { - const keyPattern = new RegExp((0, index_5.KeyOfPattern)(schema)); - const check2 = Object.getOwnPropertyNames(value).every((key) => keyPattern.test(key)); - return check1 && check2; - } - else if ((0, type_1.IsSchema)(schema.unevaluatedProperties)) { - const keyCheck = new RegExp((0, index_5.KeyOfPattern)(schema)); - const check2 = Object.getOwnPropertyNames(value).every((key) => keyCheck.test(key) || Visit(schema.unevaluatedProperties, references, value[key])); - return check1 && check2; - } - else { - return check1; - } -} -function FromIterator(schema, references, value) { - return (0, index_10.IsIterator)(value); -} -function FromLiteral(schema, references, value) { - return value === schema.const; -} -function FromNever(schema, references, value) { - return false; -} -function FromNot(schema, references, value) { - return !Visit(schema.not, references, value); -} -function FromNull(schema, references, value) { - return (0, index_10.IsNull)(value); -} -function FromNumber(schema, references, value) { - if (!index_1.TypeSystemPolicy.IsNumberLike(value)) - return false; - if (IsDefined(schema.exclusiveMaximum) && !(value < schema.exclusiveMaximum)) { - return false; - } - if (IsDefined(schema.exclusiveMinimum) && !(value > schema.exclusiveMinimum)) { - return false; - } - if (IsDefined(schema.minimum) && !(value >= schema.minimum)) { - return false; - } - if (IsDefined(schema.maximum) && !(value <= schema.maximum)) { - return false; - } - if (IsDefined(schema.multipleOf) && !(value % schema.multipleOf === 0)) { - return false; - } - return true; -} -function FromObject(schema, references, value) { - if (!index_1.TypeSystemPolicy.IsObjectLike(value)) - return false; - if (IsDefined(schema.minProperties) && !(Object.getOwnPropertyNames(value).length >= schema.minProperties)) { - return false; - } - if (IsDefined(schema.maxProperties) && !(Object.getOwnPropertyNames(value).length <= schema.maxProperties)) { - return false; - } - const knownKeys = Object.getOwnPropertyNames(schema.properties); - for (const knownKey of knownKeys) { - const property = schema.properties[knownKey]; - if (schema.required && schema.required.includes(knownKey)) { - if (!Visit(property, references, value[knownKey])) { - return false; - } - if (((0, index_6.ExtendsUndefinedCheck)(property) || IsAnyOrUnknown(property)) && !(knownKey in value)) { - return false; - } - } - else { - if (index_1.TypeSystemPolicy.IsExactOptionalProperty(value, knownKey) && !Visit(property, references, value[knownKey])) { - return false; - } - } - } - if (schema.additionalProperties === false) { - const valueKeys = Object.getOwnPropertyNames(value); - // optimization: value is valid if schemaKey length matches the valueKey length - if (schema.required && schema.required.length === knownKeys.length && valueKeys.length === knownKeys.length) { - return true; - } - else { - return valueKeys.every((valueKey) => knownKeys.includes(valueKey)); - } - } - else if (typeof schema.additionalProperties === 'object') { - const valueKeys = Object.getOwnPropertyNames(value); - return valueKeys.every((key) => knownKeys.includes(key) || Visit(schema.additionalProperties, references, value[key])); - } - else { - return true; - } -} -function FromPromise(schema, references, value) { - return (0, index_10.IsPromise)(value); -} -function FromRecord(schema, references, value) { - if (!index_1.TypeSystemPolicy.IsRecordLike(value)) { - return false; - } - if (IsDefined(schema.minProperties) && !(Object.getOwnPropertyNames(value).length >= schema.minProperties)) { - return false; - } - if (IsDefined(schema.maxProperties) && !(Object.getOwnPropertyNames(value).length <= schema.maxProperties)) { - return false; - } - const [patternKey, patternSchema] = Object.entries(schema.patternProperties)[0]; - const regex = new RegExp(patternKey); - // prettier-ignore - const check1 = Object.entries(value).every(([key, value]) => { - return (regex.test(key)) ? Visit(patternSchema, references, value) : true; - }); - // prettier-ignore - const check2 = typeof schema.additionalProperties === 'object' ? Object.entries(value).every(([key, value]) => { - return (!regex.test(key)) ? Visit(schema.additionalProperties, references, value) : true; - }) : true; - const check3 = schema.additionalProperties === false - ? Object.getOwnPropertyNames(value).every((key) => { - return regex.test(key); - }) - : true; - return check1 && check2 && check3; -} -function FromRef(schema, references, value) { - return Visit((0, index_2.Deref)(schema, references), references, value); -} -function FromRegExp(schema, references, value) { - const regex = new RegExp(schema.source, schema.flags); - if (IsDefined(schema.minLength)) { - if (!(value.length >= schema.minLength)) - return false; - } - if (IsDefined(schema.maxLength)) { - if (!(value.length <= schema.maxLength)) - return false; - } - return regex.test(value); -} -function FromString(schema, references, value) { - if (!(0, index_10.IsString)(value)) { - return false; - } - if (IsDefined(schema.minLength)) { - if (!(value.length >= schema.minLength)) - return false; - } - if (IsDefined(schema.maxLength)) { - if (!(value.length <= schema.maxLength)) - return false; - } - if (IsDefined(schema.pattern)) { - const regex = new RegExp(schema.pattern); - if (!regex.test(value)) - return false; - } - if (IsDefined(schema.format)) { - if (!index_7.FormatRegistry.Has(schema.format)) - return false; - const func = index_7.FormatRegistry.Get(schema.format); - return func(value); - } - return true; -} -function FromSymbol(schema, references, value) { - return (0, index_10.IsSymbol)(value); -} -function FromTemplateLiteral(schema, references, value) { - return (0, index_10.IsString)(value) && new RegExp(schema.pattern).test(value); -} -function FromThis(schema, references, value) { - return Visit((0, index_2.Deref)(schema, references), references, value); -} -function FromTuple(schema, references, value) { - if (!(0, index_10.IsArray)(value)) { - return false; - } - if (schema.items === undefined && !(value.length === 0)) { - return false; - } - if (!(value.length === schema.maxItems)) { - return false; - } - if (!schema.items) { - return true; - } - for (let i = 0; i < schema.items.length; i++) { - if (!Visit(schema.items[i], references, value[i])) - return false; - } - return true; -} -function FromUndefined(schema, references, value) { - return (0, index_10.IsUndefined)(value); -} -function FromUnion(schema, references, value) { - return schema.anyOf.some((inner) => Visit(inner, references, value)); -} -function FromUint8Array(schema, references, value) { - if (!(0, index_10.IsUint8Array)(value)) { - return false; - } - if (IsDefined(schema.maxByteLength) && !(value.length <= schema.maxByteLength)) { - return false; - } - if (IsDefined(schema.minByteLength) && !(value.length >= schema.minByteLength)) { - return false; - } - return true; -} -function FromUnknown(schema, references, value) { - return true; -} -function FromVoid(schema, references, value) { - return index_1.TypeSystemPolicy.IsVoidLike(value); -} -function FromKind(schema, references, value) { - if (!index_7.TypeRegistry.Has(schema[index_4.Kind])) - return false; - const func = index_7.TypeRegistry.Get(schema[index_4.Kind]); - return func(schema, value); -} -function Visit(schema, references, value) { - const references_ = IsDefined(schema.$id) ? [...references, schema] : references; - const schema_ = schema; - switch (schema_[index_4.Kind]) { - case 'Any': - return FromAny(schema_, references_, value); - case 'Array': - return FromArray(schema_, references_, value); - case 'AsyncIterator': - return FromAsyncIterator(schema_, references_, value); - case 'BigInt': - return FromBigInt(schema_, references_, value); - case 'Boolean': - return FromBoolean(schema_, references_, value); - case 'Constructor': - return FromConstructor(schema_, references_, value); - case 'Date': - return FromDate(schema_, references_, value); - case 'Function': - return FromFunction(schema_, references_, value); - case 'Integer': - return FromInteger(schema_, references_, value); - case 'Intersect': - return FromIntersect(schema_, references_, value); - case 'Iterator': - return FromIterator(schema_, references_, value); - case 'Literal': - return FromLiteral(schema_, references_, value); - case 'Never': - return FromNever(schema_, references_, value); - case 'Not': - return FromNot(schema_, references_, value); - case 'Null': - return FromNull(schema_, references_, value); - case 'Number': - return FromNumber(schema_, references_, value); - case 'Object': - return FromObject(schema_, references_, value); - case 'Promise': - return FromPromise(schema_, references_, value); - case 'Record': - return FromRecord(schema_, references_, value); - case 'Ref': - return FromRef(schema_, references_, value); - case 'RegExp': - return FromRegExp(schema_, references_, value); - case 'String': - return FromString(schema_, references_, value); - case 'Symbol': - return FromSymbol(schema_, references_, value); - case 'TemplateLiteral': - return FromTemplateLiteral(schema_, references_, value); - case 'This': - return FromThis(schema_, references_, value); - case 'Tuple': - return FromTuple(schema_, references_, value); - case 'Undefined': - return FromUndefined(schema_, references_, value); - case 'Union': - return FromUnion(schema_, references_, value); - case 'Uint8Array': - return FromUint8Array(schema_, references_, value); - case 'Unknown': - return FromUnknown(schema_, references_, value); - case 'Void': - return FromVoid(schema_, references_, value); - default: - if (!index_7.TypeRegistry.Has(schema_[index_4.Kind])) - throw new ValueCheckUnknownTypeError(schema_); - return FromKind(schema_, references_, value); - } -} -/** Returns true if the value matches the given type. */ -function Check(...args) { - return args.length === 3 ? Visit(args[0], args[1], args[2]) : Visit(args[0], [], args[1]); -} -exports.Check = Check; - - -/***/ }), - -/***/ 35323: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(3935), exports); - - -/***/ }), - -/***/ 86519: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Clean = void 0; -const index_1 = __nccwpck_require__(30658); -const index_2 = __nccwpck_require__(35323); -const index_3 = __nccwpck_require__(66614); -const index_4 = __nccwpck_require__(75743); -const index_5 = __nccwpck_require__(48121); -// ------------------------------------------------------------------ -// ValueGuard -// ------------------------------------------------------------------ -// prettier-ignore -const index_6 = __nccwpck_require__(19522); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -// prettier-ignore -const type_1 = __nccwpck_require__(20109); -// ------------------------------------------------------------------ -// IsCheckable -// ------------------------------------------------------------------ -function IsCheckable(schema) { - return (0, type_1.IsSchema)(schema) && schema[index_5.Kind] !== 'Unsafe'; -} -// ------------------------------------------------------------------ -// Types -// ------------------------------------------------------------------ -function FromArray(schema, references, value) { - if (!(0, index_6.IsArray)(value)) - return value; - return value.map((value) => Visit(schema.items, references, value)); -} -function FromIntersect(schema, references, value) { - const unevaluatedProperties = schema.unevaluatedProperties; - const intersections = schema.allOf.map((schema) => Visit(schema, references, (0, index_3.Clone)(value))); - const composite = intersections.reduce((acc, value) => ((0, index_6.IsObject)(value) ? { ...acc, ...value } : value), {}); - if (!(0, index_6.IsObject)(value) || !(0, index_6.IsObject)(composite) || !(0, type_1.IsSchema)(unevaluatedProperties)) - return composite; - const knownkeys = (0, index_1.KeyOfPropertyKeys)(schema); - for (const key of Object.getOwnPropertyNames(value)) { - if (knownkeys.includes(key)) - continue; - if ((0, index_2.Check)(unevaluatedProperties, references, value[key])) { - composite[key] = Visit(unevaluatedProperties, references, value[key]); - } - } - return composite; -} -function FromObject(schema, references, value) { - if (!(0, index_6.IsObject)(value) || (0, index_6.IsArray)(value)) - return value; // Check IsArray for AllowArrayObject configuration - const additionalProperties = schema.additionalProperties; - for (const key of Object.getOwnPropertyNames(value)) { - if (key in schema.properties) { - value[key] = Visit(schema.properties[key], references, value[key]); - continue; - } - if ((0, type_1.IsSchema)(additionalProperties) && (0, index_2.Check)(additionalProperties, references, value[key])) { - value[key] = Visit(additionalProperties, references, value[key]); - continue; - } - delete value[key]; - } - return value; -} -function FromRecord(schema, references, value) { - if (!(0, index_6.IsObject)(value)) - return value; - const additionalProperties = schema.additionalProperties; - const propertyKeys = Object.keys(value); - const [propertyKey, propertySchema] = Object.entries(schema.patternProperties)[0]; - const propertyKeyTest = new RegExp(propertyKey); - for (const key of propertyKeys) { - if (propertyKeyTest.test(key)) { - value[key] = Visit(propertySchema, references, value[key]); - continue; - } - if ((0, type_1.IsSchema)(additionalProperties) && (0, index_2.Check)(additionalProperties, references, value[key])) { - value[key] = Visit(additionalProperties, references, value[key]); - continue; - } - delete value[key]; - } - return value; -} -function FromRef(schema, references, value) { - return Visit((0, index_4.Deref)(schema, references), references, value); -} -function FromThis(schema, references, value) { - return Visit((0, index_4.Deref)(schema, references), references, value); -} -function FromTuple(schema, references, value) { - if (!(0, index_6.IsArray)(value)) - return value; - if ((0, index_6.IsUndefined)(schema.items)) - return []; - const length = Math.min(value.length, schema.items.length); - for (let i = 0; i < length; i++) { - value[i] = Visit(schema.items[i], references, value[i]); - } - // prettier-ignore - return value.length > length - ? value.slice(0, length) - : value; -} -function FromUnion(schema, references, value) { - for (const inner of schema.anyOf) { - if (IsCheckable(inner) && (0, index_2.Check)(inner, references, value)) { - return Visit(inner, references, value); - } - } - return value; -} -function Visit(schema, references, value) { - const references_ = (0, index_6.IsString)(schema.$id) ? [...references, schema] : references; - const schema_ = schema; - switch (schema_[index_5.Kind]) { - case 'Array': - return FromArray(schema_, references_, value); - case 'Intersect': - return FromIntersect(schema_, references_, value); - case 'Object': - return FromObject(schema_, references_, value); - case 'Record': - return FromRecord(schema_, references_, value); - case 'Ref': - return FromRef(schema_, references_, value); - case 'This': - return FromThis(schema_, references_, value); - case 'Tuple': - return FromTuple(schema_, references_, value); - case 'Union': - return FromUnion(schema_, references_, value); - default: - return value; - } -} -/** `[Mutable]` Removes excess properties from a value and returns the result. This function does not check the value and returns an unknown type. You should Check the result before use. Clean is a mutable operation. To avoid mutation, Clone the value first. */ -function Clean(...args) { - return args.length === 3 ? Visit(args[0], args[1], args[2]) : Visit(args[0], [], args[1]); -} -exports.Clean = Clean; - - -/***/ }), - -/***/ 30642: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(86519), exports); - - -/***/ }), - -/***/ 98699: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Clone = void 0; -// ------------------------------------------------------------------ -// ValueGuard -// ------------------------------------------------------------------ -const index_1 = __nccwpck_require__(19522); -// ------------------------------------------------------------------ -// Clonable -// ------------------------------------------------------------------ -function ObjectType(value) { - const keys = [...Object.getOwnPropertyNames(value), ...Object.getOwnPropertySymbols(value)]; - return keys.reduce((acc, key) => ({ ...acc, [key]: Clone(value[key]) }), {}); -} -function ArrayType(value) { - return value.map((element) => Clone(element)); -} -function TypedArrayType(value) { - return value.slice(); -} -function DateType(value) { - return new Date(value.toISOString()); -} -function ValueType(value) { - return value; -} -// ------------------------------------------------------------------ -// Clone -// ------------------------------------------------------------------ -/** Returns a clone of the given value */ -function Clone(value) { - if ((0, index_1.IsArray)(value)) - return ArrayType(value); - if ((0, index_1.IsDate)(value)) - return DateType(value); - if ((0, index_1.IsStandardObject)(value)) - return ObjectType(value); - if ((0, index_1.IsTypedArray)(value)) - return TypedArrayType(value); - if ((0, index_1.IsValueType)(value)) - return ValueType(value); - throw new Error('ValueClone: Unable to clone value'); -} -exports.Clone = Clone; - - -/***/ }), - -/***/ 66614: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(98699), exports); - - -/***/ }), - -/***/ 8903: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Convert = void 0; -const index_1 = __nccwpck_require__(66614); -const index_2 = __nccwpck_require__(35323); -const index_3 = __nccwpck_require__(75743); -const index_4 = __nccwpck_require__(48121); -// ------------------------------------------------------------------ -// ValueGuard -// ------------------------------------------------------------------ -const index_5 = __nccwpck_require__(19522); -// ------------------------------------------------------------------ -// Conversions -// ------------------------------------------------------------------ -function IsStringNumeric(value) { - return (0, index_5.IsString)(value) && !isNaN(value) && !isNaN(parseFloat(value)); -} -function IsValueToString(value) { - return (0, index_5.IsBigInt)(value) || (0, index_5.IsBoolean)(value) || (0, index_5.IsNumber)(value); -} -function IsValueTrue(value) { - return value === true || ((0, index_5.IsNumber)(value) && value === 1) || ((0, index_5.IsBigInt)(value) && value === BigInt('1')) || ((0, index_5.IsString)(value) && (value.toLowerCase() === 'true' || value === '1')); -} -function IsValueFalse(value) { - return value === false || ((0, index_5.IsNumber)(value) && (value === 0 || Object.is(value, -0))) || ((0, index_5.IsBigInt)(value) && value === BigInt('0')) || ((0, index_5.IsString)(value) && (value.toLowerCase() === 'false' || value === '0' || value === '-0')); -} -function IsTimeStringWithTimeZone(value) { - return (0, index_5.IsString)(value) && /^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i.test(value); -} -function IsTimeStringWithoutTimeZone(value) { - return (0, index_5.IsString)(value) && /^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)?$/i.test(value); -} -function IsDateTimeStringWithTimeZone(value) { - return (0, index_5.IsString)(value) && /^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i.test(value); -} -function IsDateTimeStringWithoutTimeZone(value) { - return (0, index_5.IsString)(value) && /^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)?$/i.test(value); -} -function IsDateString(value) { - return (0, index_5.IsString)(value) && /^\d\d\d\d-[0-1]\d-[0-3]\d$/i.test(value); -} -// ------------------------------------------------------------------ -// Convert -// ------------------------------------------------------------------ -function TryConvertLiteralString(value, target) { - const conversion = TryConvertString(value); - return conversion === target ? conversion : value; -} -function TryConvertLiteralNumber(value, target) { - const conversion = TryConvertNumber(value); - return conversion === target ? conversion : value; -} -function TryConvertLiteralBoolean(value, target) { - const conversion = TryConvertBoolean(value); - return conversion === target ? conversion : value; -} -// prettier-ignore -function TryConvertLiteral(schema, value) { - return ((0, index_5.IsString)(schema.const) ? TryConvertLiteralString(value, schema.const) : - (0, index_5.IsNumber)(schema.const) ? TryConvertLiteralNumber(value, schema.const) : - (0, index_5.IsBoolean)(schema.const) ? TryConvertLiteralBoolean(value, schema.const) : - (0, index_1.Clone)(value)); -} -function TryConvertBoolean(value) { - return IsValueTrue(value) ? true : IsValueFalse(value) ? false : value; -} -function TryConvertBigInt(value) { - return IsStringNumeric(value) ? BigInt(parseInt(value)) : (0, index_5.IsNumber)(value) ? BigInt(value | 0) : IsValueFalse(value) ? BigInt(0) : IsValueTrue(value) ? BigInt(1) : value; -} -function TryConvertString(value) { - return IsValueToString(value) ? value.toString() : (0, index_5.IsSymbol)(value) && value.description !== undefined ? value.description.toString() : value; -} -function TryConvertNumber(value) { - return IsStringNumeric(value) ? parseFloat(value) : IsValueTrue(value) ? 1 : IsValueFalse(value) ? 0 : value; -} -function TryConvertInteger(value) { - return IsStringNumeric(value) ? parseInt(value) : (0, index_5.IsNumber)(value) ? value | 0 : IsValueTrue(value) ? 1 : IsValueFalse(value) ? 0 : value; -} -function TryConvertNull(value) { - return (0, index_5.IsString)(value) && value.toLowerCase() === 'null' ? null : value; -} -function TryConvertUndefined(value) { - return (0, index_5.IsString)(value) && value === 'undefined' ? undefined : value; -} -// ------------------------------------------------------------------ -// note: this function may return an invalid dates for the regex -// tests above. Invalid dates will however be checked during the -// casting function and will return a epoch date if invalid. -// Consider better string parsing for the iso dates in future -// revisions. -// ------------------------------------------------------------------ -// prettier-ignore -function TryConvertDate(value) { - return ((0, index_5.IsDate)(value) ? value : - (0, index_5.IsNumber)(value) ? new Date(value) : - IsValueTrue(value) ? new Date(1) : - IsValueFalse(value) ? new Date(0) : - IsStringNumeric(value) ? new Date(parseInt(value)) : - IsTimeStringWithoutTimeZone(value) ? new Date(`1970-01-01T${value}.000Z`) : - IsTimeStringWithTimeZone(value) ? new Date(`1970-01-01T${value}`) : - IsDateTimeStringWithoutTimeZone(value) ? new Date(`${value}.000Z`) : - IsDateTimeStringWithTimeZone(value) ? new Date(value) : - IsDateString(value) ? new Date(`${value}T00:00:00.000Z`) : - value); -} -// ------------------------------------------------------------------ -// Default -// ------------------------------------------------------------------ -function Default(value) { - return value; -} -// ------------------------------------------------------------------ -// Convert -// ------------------------------------------------------------------ -function FromArray(schema, references, value) { - const elements = (0, index_5.IsArray)(value) ? value : [value]; - return elements.map((element) => Visit(schema.items, references, element)); -} -function FromBigInt(schema, references, value) { - return TryConvertBigInt(value); -} -function FromBoolean(schema, references, value) { - return TryConvertBoolean(value); -} -function FromDate(schema, references, value) { - return TryConvertDate(value); -} -function FromInteger(schema, references, value) { - return TryConvertInteger(value); -} -function FromIntersect(schema, references, value) { - return schema.allOf.reduce((value, schema) => Visit(schema, references, value), value); -} -function FromLiteral(schema, references, value) { - return TryConvertLiteral(schema, value); -} -function FromNull(schema, references, value) { - return TryConvertNull(value); -} -function FromNumber(schema, references, value) { - return TryConvertNumber(value); -} -// prettier-ignore -function FromObject(schema, references, value) { - const isConvertable = (0, index_5.IsObject)(value); - if (!isConvertable) - return value; - return Object.getOwnPropertyNames(schema.properties).reduce((value, key) => { - return !(0, index_5.IsUndefined)(value[key]) - ? ({ ...value, [key]: Visit(schema.properties[key], references, value[key]) }) - : ({ ...value }); - }, value); -} -function FromRecord(schema, references, value) { - const propertyKey = Object.getOwnPropertyNames(schema.patternProperties)[0]; - const property = schema.patternProperties[propertyKey]; - const result = {}; - for (const [propKey, propValue] of Object.entries(value)) { - result[propKey] = Visit(property, references, propValue); - } - return result; -} -function FromRef(schema, references, value) { - return Visit((0, index_3.Deref)(schema, references), references, value); -} -function FromString(schema, references, value) { - return TryConvertString(value); -} -function FromSymbol(schema, references, value) { - return (0, index_5.IsString)(value) || (0, index_5.IsNumber)(value) ? Symbol(value) : value; -} -function FromThis(schema, references, value) { - return Visit((0, index_3.Deref)(schema, references), references, value); -} -// prettier-ignore -function FromTuple(schema, references, value) { - const isConvertable = (0, index_5.IsArray)(value) && !(0, index_5.IsUndefined)(schema.items); - if (!isConvertable) - return value; - return value.map((value, index) => { - return (index < schema.items.length) - ? Visit(schema.items[index], references, value) - : value; - }); -} -function FromUndefined(schema, references, value) { - return TryConvertUndefined(value); -} -function FromUnion(schema, references, value) { - for (const subschema of schema.anyOf) { - const converted = Visit(subschema, references, value); - if (!(0, index_2.Check)(subschema, references, converted)) - continue; - return converted; - } - return value; -} -function Visit(schema, references, value) { - const references_ = (0, index_5.IsString)(schema.$id) ? [...references, schema] : references; - const schema_ = schema; - switch (schema[index_4.Kind]) { - case 'Array': - return FromArray(schema_, references_, value); - case 'BigInt': - return FromBigInt(schema_, references_, value); - case 'Boolean': - return FromBoolean(schema_, references_, value); - case 'Date': - return FromDate(schema_, references_, value); - case 'Integer': - return FromInteger(schema_, references_, value); - case 'Intersect': - return FromIntersect(schema_, references_, value); - case 'Literal': - return FromLiteral(schema_, references_, value); - case 'Null': - return FromNull(schema_, references_, value); - case 'Number': - return FromNumber(schema_, references_, value); - case 'Object': - return FromObject(schema_, references_, value); - case 'Record': - return FromRecord(schema_, references_, value); - case 'Ref': - return FromRef(schema_, references_, value); - case 'String': - return FromString(schema_, references_, value); - case 'Symbol': - return FromSymbol(schema_, references_, value); - case 'This': - return FromThis(schema_, references_, value); - case 'Tuple': - return FromTuple(schema_, references_, value); - case 'Undefined': - return FromUndefined(schema_, references_, value); - case 'Union': - return FromUnion(schema_, references_, value); - default: - return Default(value); - } -} -/** Converts any type mismatched values to their target type if a reasonable conversion is possible. */ -// prettier-ignore -function Convert(...args) { - return args.length === 3 - ? Visit(args[0], args[1], args[2]) - : Visit(args[0], [], args[1]); -} -exports.Convert = Convert; - - -/***/ }), - -/***/ 23584: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(8903), exports); - - -/***/ }), - -/***/ 78981: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Create = exports.ValueCreateError = void 0; -const index_1 = __nccwpck_require__(19522); -const index_2 = __nccwpck_require__(35323); -const index_3 = __nccwpck_require__(66614); -const index_4 = __nccwpck_require__(75743); -const index_5 = __nccwpck_require__(90984); -const index_6 = __nccwpck_require__(50059); -const index_7 = __nccwpck_require__(97759); -const index_8 = __nccwpck_require__(48121); -const index_9 = __nccwpck_require__(94526); -// ------------------------------------------------------------------ -// Errors -// ------------------------------------------------------------------ -class ValueCreateError extends index_9.TypeBoxError { - constructor(schema, message) { - super(message); - this.schema = schema; - } -} -exports.ValueCreateError = ValueCreateError; -// ------------------------------------------------------------------ -// Default -// ------------------------------------------------------------------ -function FromDefault(value) { - return typeof value === 'function' ? value : (0, index_3.Clone)(value); -} -// ------------------------------------------------------------------ -// Create -// ------------------------------------------------------------------ -function FromAny(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - return {}; - } -} -function FromArray(schema, references) { - if (schema.uniqueItems === true && !(0, index_1.HasPropertyKey)(schema, 'default')) { - throw new ValueCreateError(schema, 'Array with the uniqueItems constraint requires a default value'); - } - else if ('contains' in schema && !(0, index_1.HasPropertyKey)(schema, 'default')) { - throw new ValueCreateError(schema, 'Array with the contains constraint requires a default value'); - } - else if ('default' in schema) { - return FromDefault(schema.default); - } - else if (schema.minItems !== undefined) { - return Array.from({ length: schema.minItems }).map((item) => { - return Visit(schema.items, references); - }); - } - else { - return []; - } -} -function FromAsyncIterator(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - return (async function* () { })(); - } -} -function FromBigInt(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - return BigInt(0); - } -} -function FromBoolean(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - return false; - } -} -function FromConstructor(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - const value = Visit(schema.returns, references); - if (typeof value === 'object' && !Array.isArray(value)) { - return class { - constructor() { - for (const [key, val] of Object.entries(value)) { - const self = this; - self[key] = val; - } - } - }; - } - else { - return class { - }; - } - } -} -function FromDate(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else if (schema.minimumTimestamp !== undefined) { - return new Date(schema.minimumTimestamp); - } - else { - return new Date(); - } -} -function FromFunction(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - return () => Visit(schema.returns, references); - } -} -function FromInteger(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else if (schema.minimum !== undefined) { - return schema.minimum; - } - else { - return 0; - } -} -function FromIntersect(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - // -------------------------------------------------------------- - // Note: The best we can do here is attempt to instance each - // sub type and apply through object assign. For non-object - // sub types, we just escape the assignment and just return - // the value. In the latter case, this is typically going to - // be a consequence of an illogical intersection. - // -------------------------------------------------------------- - const value = schema.allOf.reduce((acc, schema) => { - const next = Visit(schema, references); - return typeof next === 'object' ? { ...acc, ...next } : next; - }, {}); - if (!(0, index_2.Check)(schema, references, value)) - throw new ValueCreateError(schema, 'Intersect produced invalid value. Consider using a default value.'); - return value; - } -} -function FromIterator(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - return (function* () { })(); - } -} -function FromLiteral(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - return schema.const; - } -} -function FromNever(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - throw new ValueCreateError(schema, 'Never types cannot be created. Consider using a default value.'); - } -} -function FromNot(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - throw new ValueCreateError(schema, 'Not types must have a default value'); - } -} -function FromNull(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - return null; - } -} -function FromNumber(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else if (schema.minimum !== undefined) { - return schema.minimum; - } - else { - return 0; - } -} -function FromObject(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - const required = new Set(schema.required); - return (FromDefault(schema.default) || - Object.entries(schema.properties).reduce((acc, [key, schema]) => { - return required.has(key) ? { ...acc, [key]: Visit(schema, references) } : { ...acc }; - }, {})); - } -} -function FromPromise(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - return Promise.resolve(Visit(schema.item, references)); - } -} -function FromRecord(schema, references) { - const [keyPattern, valueSchema] = Object.entries(schema.patternProperties)[0]; - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else if (!(keyPattern === index_6.PatternStringExact || keyPattern === index_6.PatternNumberExact)) { - const propertyKeys = keyPattern.slice(1, keyPattern.length - 1).split('|'); - return propertyKeys.reduce((acc, key) => { - return { ...acc, [key]: Visit(valueSchema, references) }; - }, {}); - } - else { - return {}; - } -} -function FromRef(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - return Visit((0, index_4.Deref)(schema, references), references); - } -} -function FromRegExp(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - throw new ValueCreateError(schema, 'RegExp types cannot be created. Consider using a default value.'); - } -} -function FromString(schema, references) { - if (schema.pattern !== undefined) { - if (!(0, index_1.HasPropertyKey)(schema, 'default')) { - throw new ValueCreateError(schema, 'String types with patterns must specify a default value'); - } - else { - return FromDefault(schema.default); - } - } - else if (schema.format !== undefined) { - if (!(0, index_1.HasPropertyKey)(schema, 'default')) { - throw new ValueCreateError(schema, 'String types with formats must specify a default value'); - } - else { - return FromDefault(schema.default); - } - } - else { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else if (schema.minLength !== undefined) { - // prettier-ignore - return Array.from({ length: schema.minLength }).map(() => ' ').join(''); - } - else { - return ''; - } - } -} -function FromSymbol(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else if ('value' in schema) { - return Symbol.for(schema.value); - } - else { - return Symbol(); - } -} -function FromTemplateLiteral(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - if (!(0, index_5.IsTemplateLiteralFinite)(schema)) - throw new ValueCreateError(schema, 'Can only create template literals that produce a finite variants. Consider using a default value.'); - const generated = (0, index_5.TemplateLiteralGenerate)(schema); - return generated[0]; -} -function FromThis(schema, references) { - if (recursiveDepth++ > recursiveMaxDepth) - throw new ValueCreateError(schema, 'Cannot create recursive type as it appears possibly infinite. Consider using a default.'); - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - return Visit((0, index_4.Deref)(schema, references), references); - } -} -function FromTuple(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - if (schema.items === undefined) { - return []; - } - else { - return Array.from({ length: schema.minItems }).map((_, index) => Visit(schema.items[index], references)); - } -} -function FromUndefined(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - return undefined; - } -} -function FromUnion(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else if (schema.anyOf.length === 0) { - throw new Error('ValueCreate.Union: Cannot create Union with zero variants'); - } - else { - return Visit(schema.anyOf[0], references); - } -} -function FromUint8Array(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else if (schema.minByteLength !== undefined) { - return new Uint8Array(schema.minByteLength); - } - else { - return new Uint8Array(0); - } -} -function FromUnknown(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - return {}; - } -} -function FromVoid(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - return void 0; - } -} -function FromKind(schema, references) { - if ((0, index_1.HasPropertyKey)(schema, 'default')) { - return FromDefault(schema.default); - } - else { - throw new Error('User defined types must specify a default value'); - } -} -function Visit(schema, references) { - const references_ = (0, index_1.IsString)(schema.$id) ? [...references, schema] : references; - const schema_ = schema; - switch (schema_[index_8.Kind]) { - case 'Any': - return FromAny(schema_, references_); - case 'Array': - return FromArray(schema_, references_); - case 'AsyncIterator': - return FromAsyncIterator(schema_, references_); - case 'BigInt': - return FromBigInt(schema_, references_); - case 'Boolean': - return FromBoolean(schema_, references_); - case 'Constructor': - return FromConstructor(schema_, references_); - case 'Date': - return FromDate(schema_, references_); - case 'Function': - return FromFunction(schema_, references_); - case 'Integer': - return FromInteger(schema_, references_); - case 'Intersect': - return FromIntersect(schema_, references_); - case 'Iterator': - return FromIterator(schema_, references_); - case 'Literal': - return FromLiteral(schema_, references_); - case 'Never': - return FromNever(schema_, references_); - case 'Not': - return FromNot(schema_, references_); - case 'Null': - return FromNull(schema_, references_); - case 'Number': - return FromNumber(schema_, references_); - case 'Object': - return FromObject(schema_, references_); - case 'Promise': - return FromPromise(schema_, references_); - case 'Record': - return FromRecord(schema_, references_); - case 'Ref': - return FromRef(schema_, references_); - case 'RegExp': - return FromRegExp(schema_, references_); - case 'String': - return FromString(schema_, references_); - case 'Symbol': - return FromSymbol(schema_, references_); - case 'TemplateLiteral': - return FromTemplateLiteral(schema_, references_); - case 'This': - return FromThis(schema_, references_); - case 'Tuple': - return FromTuple(schema_, references_); - case 'Undefined': - return FromUndefined(schema_, references_); - case 'Union': - return FromUnion(schema_, references_); - case 'Uint8Array': - return FromUint8Array(schema_, references_); - case 'Unknown': - return FromUnknown(schema_, references_); - case 'Void': - return FromVoid(schema_, references_); - default: - if (!index_7.TypeRegistry.Has(schema_[index_8.Kind])) - throw new ValueCreateError(schema_, 'Unknown type'); - return FromKind(schema_, references_); - } -} -// ------------------------------------------------------------------ -// State -// ------------------------------------------------------------------ -const recursiveMaxDepth = 512; -let recursiveDepth = 0; -/** Creates a value from the given schema */ -function Create(...args) { - recursiveDepth = 0; - return args.length === 2 ? Visit(args[0], args[1]) : Visit(args[0], []); -} -exports.Create = Create; - - -/***/ }), - -/***/ 37029: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(78981), exports); - - -/***/ }), - -/***/ 74475: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Default = void 0; -const index_1 = __nccwpck_require__(35323); -const index_2 = __nccwpck_require__(66614); -const index_3 = __nccwpck_require__(75743); -const index_4 = __nccwpck_require__(48121); -// ------------------------------------------------------------------ -// ValueGuard -// ------------------------------------------------------------------ -const index_5 = __nccwpck_require__(19522); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_1 = __nccwpck_require__(20109); -// ------------------------------------------------------------------ -// ValueOrDefault -// ------------------------------------------------------------------ -function ValueOrDefault(schema, value) { - return value === undefined && 'default' in schema ? (0, index_2.Clone)(schema.default) : value; -} -// ------------------------------------------------------------------ -// IsCheckable -// ------------------------------------------------------------------ -function IsCheckable(schema) { - return (0, type_1.IsSchema)(schema) && schema[index_4.Kind] !== 'Unsafe'; -} -// ------------------------------------------------------------------ -// IsDefaultSchema -// ------------------------------------------------------------------ -function IsDefaultSchema(value) { - return (0, type_1.IsSchema)(value) && 'default' in value; -} -// ------------------------------------------------------------------ -// Types -// ------------------------------------------------------------------ -function FromArray(schema, references, value) { - const defaulted = ValueOrDefault(schema, value); - if (!(0, index_5.IsArray)(defaulted)) - return defaulted; - for (let i = 0; i < defaulted.length; i++) { - defaulted[i] = Visit(schema.items, references, defaulted[i]); - } - return defaulted; -} -function FromIntersect(schema, references, value) { - const defaulted = ValueOrDefault(schema, value); - return schema.allOf.reduce((acc, schema) => { - const next = Visit(schema, references, defaulted); - return (0, index_5.IsObject)(next) ? { ...acc, ...next } : next; - }, {}); -} -function FromObject(schema, references, value) { - const defaulted = ValueOrDefault(schema, value); - if (!(0, index_5.IsObject)(defaulted)) - return defaulted; - const additionalPropertiesSchema = schema.additionalProperties; - const knownPropertyKeys = Object.getOwnPropertyNames(schema.properties); - // properties - for (const key of knownPropertyKeys) { - if (!IsDefaultSchema(schema.properties[key])) - continue; - defaulted[key] = Visit(schema.properties[key], references, defaulted[key]); - } - // return if not additional properties - if (!IsDefaultSchema(additionalPropertiesSchema)) - return defaulted; - // additional properties - for (const key of Object.getOwnPropertyNames(defaulted)) { - if (knownPropertyKeys.includes(key)) - continue; - defaulted[key] = Visit(additionalPropertiesSchema, references, defaulted[key]); - } - return defaulted; -} -function FromRecord(schema, references, value) { - const defaulted = ValueOrDefault(schema, value); - if (!(0, index_5.IsObject)(defaulted)) - return defaulted; - const additionalPropertiesSchema = schema.additionalProperties; - const [propertyKeyPattern, propertySchema] = Object.entries(schema.patternProperties)[0]; - const knownPropertyKey = new RegExp(propertyKeyPattern); - // properties - for (const key of Object.getOwnPropertyNames(defaulted)) { - if (!(knownPropertyKey.test(key) && IsDefaultSchema(propertySchema))) - continue; - defaulted[key] = Visit(propertySchema, references, defaulted[key]); - } - // return if not additional properties - if (!IsDefaultSchema(additionalPropertiesSchema)) - return defaulted; - // additional properties - for (const key of Object.getOwnPropertyNames(defaulted)) { - if (knownPropertyKey.test(key)) - continue; - defaulted[key] = Visit(additionalPropertiesSchema, references, defaulted[key]); - } - return defaulted; -} -function FromRef(schema, references, value) { - return Visit((0, index_3.Deref)(schema, references), references, ValueOrDefault(schema, value)); -} -function FromThis(schema, references, value) { - return Visit((0, index_3.Deref)(schema, references), references, value); -} -function FromTuple(schema, references, value) { - const defaulted = ValueOrDefault(schema, value); - if (!(0, index_5.IsArray)(defaulted) || (0, index_5.IsUndefined)(schema.items)) - return defaulted; - const [items, max] = [schema.items, Math.max(schema.items.length, defaulted.length)]; - for (let i = 0; i < max; i++) { - if (i < items.length) - defaulted[i] = Visit(items[i], references, defaulted[i]); - } - return defaulted; -} -function FromUnion(schema, references, value) { - const defaulted = ValueOrDefault(schema, value); - for (const inner of schema.anyOf) { - const result = Visit(inner, references, defaulted); - if (IsCheckable(inner) && (0, index_1.Check)(inner, result)) { - return result; - } - } - return defaulted; -} -function Visit(schema, references, value) { - const references_ = (0, index_5.IsString)(schema.$id) ? [...references, schema] : references; - const schema_ = schema; - switch (schema_[index_4.Kind]) { - case 'Array': - return FromArray(schema_, references_, value); - case 'Intersect': - return FromIntersect(schema_, references_, value); - case 'Object': - return FromObject(schema_, references_, value); - case 'Record': - return FromRecord(schema_, references_, value); - case 'Ref': - return FromRef(schema_, references_, value); - case 'This': - return FromThis(schema_, references_, value); - case 'Tuple': - return FromTuple(schema_, references_, value); - case 'Union': - return FromUnion(schema_, references_, value); - default: - return ValueOrDefault(schema_, value); - } -} -/** `[Mutable]` Generates missing properties on a value using default schema annotations if available. This function does not check the value and returns an unknown type. You should Check the result before use. Default is a mutable operation. To avoid mutation, Clone the value first. */ -function Default(...args) { - return args.length === 3 ? Visit(args[0], args[1], args[2]) : Visit(args[0], [], args[1]); -} -exports.Default = Default; - - -/***/ }), - -/***/ 5850: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(74475), exports); - - -/***/ }), - -/***/ 86179: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Patch = exports.Diff = exports.ValueDeltaSymbolError = exports.ValueDeltaError = exports.Edit = exports.Delete = exports.Update = exports.Insert = void 0; -const index_1 = __nccwpck_require__(19522); -const index_2 = __nccwpck_require__(71054); -const index_3 = __nccwpck_require__(66614); -const index_4 = __nccwpck_require__(94526); -const index_5 = __nccwpck_require__(24727); -const index_6 = __nccwpck_require__(13871); -const index_7 = __nccwpck_require__(69429); -const index_8 = __nccwpck_require__(41178); -const index_9 = __nccwpck_require__(41743); -exports.Insert = (0, index_6.Object)({ - type: (0, index_5.Literal)('insert'), - path: (0, index_7.String)(), - value: (0, index_8.Unknown)(), -}); -exports.Update = (0, index_6.Object)({ - type: (0, index_5.Literal)('update'), - path: (0, index_7.String)(), - value: (0, index_8.Unknown)(), -}); -exports.Delete = (0, index_6.Object)({ - type: (0, index_5.Literal)('delete'), - path: (0, index_7.String)(), -}); -exports.Edit = (0, index_9.Union)([exports.Insert, exports.Update, exports.Delete]); -// ------------------------------------------------------------------ -// Errors -// ------------------------------------------------------------------ -class ValueDeltaError extends index_4.TypeBoxError { - constructor(value, message) { - super(message); - this.value = value; - } -} -exports.ValueDeltaError = ValueDeltaError; -class ValueDeltaSymbolError extends ValueDeltaError { - constructor(value) { - super(value, 'Cannot diff objects with symbol keys'); - this.value = value; - } -} -exports.ValueDeltaSymbolError = ValueDeltaSymbolError; -// ------------------------------------------------------------------ -// Command Factory -// ------------------------------------------------------------------ -function CreateUpdate(path, value) { - return { type: 'update', path, value }; -} -function CreateInsert(path, value) { - return { type: 'insert', path, value }; -} -function CreateDelete(path) { - return { type: 'delete', path }; -} -// ------------------------------------------------------------------ -// Diffing Generators -// ------------------------------------------------------------------ -function* ObjectType(path, current, next) { - if (!(0, index_1.IsStandardObject)(next)) - return yield CreateUpdate(path, next); - const currentKeys = [...globalThis.Object.keys(current), ...globalThis.Object.getOwnPropertySymbols(current)]; - const nextKeys = [...globalThis.Object.keys(next), ...globalThis.Object.getOwnPropertySymbols(next)]; - for (const key of currentKeys) { - if ((0, index_1.IsSymbol)(key)) - throw new ValueDeltaSymbolError(key); - if ((0, index_1.IsUndefined)(next[key]) && nextKeys.includes(key)) - yield CreateUpdate(`${path}/${globalThis.String(key)}`, undefined); - } - for (const key of nextKeys) { - if ((0, index_1.IsUndefined)(current[key]) || (0, index_1.IsUndefined)(next[key])) - continue; - if ((0, index_1.IsSymbol)(key)) - throw new ValueDeltaSymbolError(key); - yield* Visit(`${path}/${globalThis.String(key)}`, current[key], next[key]); - } - for (const key of nextKeys) { - if ((0, index_1.IsSymbol)(key)) - throw new ValueDeltaSymbolError(key); - if ((0, index_1.IsUndefined)(current[key])) - yield CreateInsert(`${path}/${globalThis.String(key)}`, next[key]); - } - for (const key of currentKeys.reverse()) { - if ((0, index_1.IsSymbol)(key)) - throw new ValueDeltaSymbolError(key); - if ((0, index_1.IsUndefined)(next[key]) && !nextKeys.includes(key)) - yield CreateDelete(`${path}/${globalThis.String(key)}`); - } -} -function* ArrayType(path, current, next) { - if (!(0, index_1.IsArray)(next)) - return yield CreateUpdate(path, next); - for (let i = 0; i < Math.min(current.length, next.length); i++) { - yield* Visit(`${path}/${i}`, current[i], next[i]); - } - for (let i = 0; i < next.length; i++) { - if (i < current.length) - continue; - yield CreateInsert(`${path}/${i}`, next[i]); - } - for (let i = current.length - 1; i >= 0; i--) { - if (i < next.length) - continue; - yield CreateDelete(`${path}/${i}`); - } -} -function* TypedArrayType(path, current, next) { - if (!(0, index_1.IsTypedArray)(next) || current.length !== next.length || globalThis.Object.getPrototypeOf(current).constructor.name !== globalThis.Object.getPrototypeOf(next).constructor.name) - return yield CreateUpdate(path, next); - for (let i = 0; i < Math.min(current.length, next.length); i++) { - yield* Visit(`${path}/${i}`, current[i], next[i]); - } -} -function* ValueType(path, current, next) { - if (current === next) - return; - yield CreateUpdate(path, next); -} -function* Visit(path, current, next) { - if ((0, index_1.IsStandardObject)(current)) - return yield* ObjectType(path, current, next); - if ((0, index_1.IsArray)(current)) - return yield* ArrayType(path, current, next); - if ((0, index_1.IsTypedArray)(current)) - return yield* TypedArrayType(path, current, next); - if ((0, index_1.IsValueType)(current)) - return yield* ValueType(path, current, next); - throw new ValueDeltaError(current, 'Unable to create diff edits for unknown value'); -} -// ------------------------------------------------------------------ -// Diff -// ------------------------------------------------------------------ -function Diff(current, next) { - return [...Visit('', current, next)]; -} -exports.Diff = Diff; -// ------------------------------------------------------------------ -// Patch -// ------------------------------------------------------------------ -function IsRootUpdate(edits) { - return edits.length > 0 && edits[0].path === '' && edits[0].type === 'update'; -} -function IsIdentity(edits) { - return edits.length === 0; -} -function Patch(current, edits) { - if (IsRootUpdate(edits)) { - return (0, index_3.Clone)(edits[0].value); - } - if (IsIdentity(edits)) { - return (0, index_3.Clone)(current); - } - const clone = (0, index_3.Clone)(current); - for (const edit of edits) { - switch (edit.type) { - case 'insert': { - index_2.ValuePointer.Set(clone, edit.path, edit.value); - break; - } - case 'update': { - index_2.ValuePointer.Set(clone, edit.path, edit.value); - break; - } - case 'delete': { - index_2.ValuePointer.Delete(clone, edit.path); - break; - } - } - } - return clone; -} -exports.Patch = Patch; - - -/***/ }), - -/***/ 6145: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(86179), exports); - - -/***/ }), - -/***/ 41239: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Deref = exports.TypeDereferenceError = void 0; -const index_1 = __nccwpck_require__(94526); -class TypeDereferenceError extends index_1.TypeBoxError { - constructor(schema) { - super(`Unable to dereference schema with $id '${schema.$id}'`); - this.schema = schema; - } -} -exports.TypeDereferenceError = TypeDereferenceError; -/** Dereferences a schema from the references array or throws if not found */ -function Deref(schema, references) { - const index = references.findIndex((target) => target.$id === schema.$ref); - if (index === -1) - throw new TypeDereferenceError(schema); - return references[index]; -} -exports.Deref = Deref; - - -/***/ }), - -/***/ 75743: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(41239), exports); - - -/***/ }), - -/***/ 24487: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Equal = void 0; -const index_1 = __nccwpck_require__(19522); -// ------------------------------------------------------------------ -// Equality Checks -// ------------------------------------------------------------------ -function ObjectType(left, right) { - if (!(0, index_1.IsStandardObject)(right)) - return false; - const leftKeys = [...Object.keys(left), ...Object.getOwnPropertySymbols(left)]; - const rightKeys = [...Object.keys(right), ...Object.getOwnPropertySymbols(right)]; - if (leftKeys.length !== rightKeys.length) - return false; - return leftKeys.every((key) => Equal(left[key], right[key])); -} -function DateType(left, right) { - return (0, index_1.IsDate)(right) && left.getTime() === right.getTime(); -} -function ArrayType(left, right) { - if (!(0, index_1.IsArray)(right) || left.length !== right.length) - return false; - return left.every((value, index) => Equal(value, right[index])); -} -function TypedArrayType(left, right) { - if (!(0, index_1.IsTypedArray)(right) || left.length !== right.length || Object.getPrototypeOf(left).constructor.name !== Object.getPrototypeOf(right).constructor.name) - return false; - return left.every((value, index) => Equal(value, right[index])); -} -function ValueType(left, right) { - return left === right; -} -// ------------------------------------------------------------------ -// Equal -// ------------------------------------------------------------------ -/** Returns true if the left value deep-equals the right */ -function Equal(left, right) { - if ((0, index_1.IsStandardObject)(left)) - return ObjectType(left, right); - if ((0, index_1.IsDate)(left)) - return DateType(left, right); - if ((0, index_1.IsTypedArray)(left)) - return TypedArrayType(left, right); - if ((0, index_1.IsArray)(left)) - return ArrayType(left, right); - if ((0, index_1.IsValueType)(left)) - return ValueType(left, right); - throw new Error('ValueEquals: Unable to compare value'); -} -exports.Equal = Equal; - - -/***/ }), - -/***/ 7955: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(24487), exports); - - -/***/ }), - -/***/ 19567: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.IsValueType = exports.IsSymbol = exports.IsFunction = exports.IsString = exports.IsBigInt = exports.IsInteger = exports.IsNumber = exports.IsBoolean = exports.IsNull = exports.IsUndefined = exports.IsArray = exports.IsObject = exports.HasPropertyKey = exports.IsBigUint64Array = exports.IsBigInt64Array = exports.IsFloat64Array = exports.IsFloat32Array = exports.IsUint32Array = exports.IsInt32Array = exports.IsUint16Array = exports.IsInt16Array = exports.IsUint8ClampedArray = exports.IsUint8Array = exports.IsInt8Array = exports.IsTypedArray = exports.IsRegExp = exports.IsSet = exports.IsMap = exports.IsDate = exports.IsPromise = exports.IsInstanceObject = exports.IsStandardObject = exports.IsIterator = exports.IsAsyncIterator = void 0; -// -------------------------------------------------------------------------- -// Iterators -// -------------------------------------------------------------------------- -/** Returns true if this value is an async iterator */ -function IsAsyncIterator(value) { - return IsObject(value) && Symbol.asyncIterator in value; -} -exports.IsAsyncIterator = IsAsyncIterator; -/** Returns true if this value is an iterator */ -function IsIterator(value) { - return IsObject(value) && Symbol.iterator in value; -} -exports.IsIterator = IsIterator; -// -------------------------------------------------------------------------- -// Object Instances -// -------------------------------------------------------------------------- -/** Returns true if this value is not an instance of a class */ -function IsStandardObject(value) { - return IsObject(value) && !IsArray(value) && IsFunction(value.constructor) && value.constructor.name === 'Object'; -} -exports.IsStandardObject = IsStandardObject; -/** Returns true if this value is an instance of a class */ -function IsInstanceObject(value) { - return IsObject(value) && !IsArray(value) && IsFunction(value.constructor) && value.constructor.name !== 'Object'; -} -exports.IsInstanceObject = IsInstanceObject; -// -------------------------------------------------------------------------- -// JavaScript -// -------------------------------------------------------------------------- -/** Returns true if this value is a Promise */ -function IsPromise(value) { - return value instanceof Promise; -} -exports.IsPromise = IsPromise; -/** Returns true if this value is a Date */ -function IsDate(value) { - return value instanceof Date && Number.isFinite(value.getTime()); -} -exports.IsDate = IsDate; -/** Returns true if this value is an instance of Map */ -function IsMap(value) { - return value instanceof globalThis.Map; -} -exports.IsMap = IsMap; -/** Returns true if this value is an instance of Set */ -function IsSet(value) { - return value instanceof globalThis.Set; -} -exports.IsSet = IsSet; -/** Returns true if this value is RegExp */ -function IsRegExp(value) { - return value instanceof globalThis.RegExp; -} -exports.IsRegExp = IsRegExp; -/** Returns true if this value is a typed array */ -function IsTypedArray(value) { - return ArrayBuffer.isView(value); -} -exports.IsTypedArray = IsTypedArray; -/** Returns true if the value is a Int8Array */ -function IsInt8Array(value) { - return value instanceof globalThis.Int8Array; -} -exports.IsInt8Array = IsInt8Array; -/** Returns true if the value is a Uint8Array */ -function IsUint8Array(value) { - return value instanceof globalThis.Uint8Array; -} -exports.IsUint8Array = IsUint8Array; -/** Returns true if the value is a Uint8ClampedArray */ -function IsUint8ClampedArray(value) { - return value instanceof globalThis.Uint8ClampedArray; -} -exports.IsUint8ClampedArray = IsUint8ClampedArray; -/** Returns true if the value is a Int16Array */ -function IsInt16Array(value) { - return value instanceof globalThis.Int16Array; -} -exports.IsInt16Array = IsInt16Array; -/** Returns true if the value is a Uint16Array */ -function IsUint16Array(value) { - return value instanceof globalThis.Uint16Array; -} -exports.IsUint16Array = IsUint16Array; -/** Returns true if the value is a Int32Array */ -function IsInt32Array(value) { - return value instanceof globalThis.Int32Array; -} -exports.IsInt32Array = IsInt32Array; -/** Returns true if the value is a Uint32Array */ -function IsUint32Array(value) { - return value instanceof globalThis.Uint32Array; -} -exports.IsUint32Array = IsUint32Array; -/** Returns true if the value is a Float32Array */ -function IsFloat32Array(value) { - return value instanceof globalThis.Float32Array; -} -exports.IsFloat32Array = IsFloat32Array; -/** Returns true if the value is a Float64Array */ -function IsFloat64Array(value) { - return value instanceof globalThis.Float64Array; -} -exports.IsFloat64Array = IsFloat64Array; -/** Returns true if the value is a BigInt64Array */ -function IsBigInt64Array(value) { - return value instanceof globalThis.BigInt64Array; -} -exports.IsBigInt64Array = IsBigInt64Array; -/** Returns true if the value is a BigUint64Array */ -function IsBigUint64Array(value) { - return value instanceof globalThis.BigUint64Array; -} -exports.IsBigUint64Array = IsBigUint64Array; -// -------------------------------------------------------------------------- -// Standard -// -------------------------------------------------------------------------- -/** Returns true if this value has this property key */ -function HasPropertyKey(value, key) { - return key in value; -} -exports.HasPropertyKey = HasPropertyKey; -/** Returns true of this value is an object type */ -function IsObject(value) { - return value !== null && typeof value === 'object'; -} -exports.IsObject = IsObject; -/** Returns true if this value is an array, but not a typed array */ -function IsArray(value) { - return Array.isArray(value) && !ArrayBuffer.isView(value); -} -exports.IsArray = IsArray; -/** Returns true if this value is an undefined */ -function IsUndefined(value) { - return value === undefined; -} -exports.IsUndefined = IsUndefined; -/** Returns true if this value is an null */ -function IsNull(value) { - return value === null; -} -exports.IsNull = IsNull; -/** Returns true if this value is an boolean */ -function IsBoolean(value) { - return typeof value === 'boolean'; -} -exports.IsBoolean = IsBoolean; -/** Returns true if this value is an number */ -function IsNumber(value) { - return typeof value === 'number'; -} -exports.IsNumber = IsNumber; -/** Returns true if this value is an integer */ -function IsInteger(value) { - return IsNumber(value) && Number.isInteger(value); -} -exports.IsInteger = IsInteger; -/** Returns true if this value is bigint */ -function IsBigInt(value) { - return typeof value === 'bigint'; -} -exports.IsBigInt = IsBigInt; -/** Returns true if this value is string */ -function IsString(value) { - return typeof value === 'string'; -} -exports.IsString = IsString; -/** Returns true if this value is a function */ -function IsFunction(value) { - return typeof value === 'function'; -} -exports.IsFunction = IsFunction; -/** Returns true if this value is a symbol */ -function IsSymbol(value) { - return typeof value === 'symbol'; -} -exports.IsSymbol = IsSymbol; -/** Returns true if this value is a value type such as number, string, boolean */ -function IsValueType(value) { - // prettier-ignore - return (IsBigInt(value) || - IsBoolean(value) || - IsNull(value) || - IsNumber(value) || - IsString(value) || - IsSymbol(value) || - IsUndefined(value)); -} -exports.IsValueType = IsValueType; - - -/***/ }), - -/***/ 19522: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(19567), exports); - - -/***/ }), - -/***/ 59289: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Hash = exports.ValueHashError = void 0; -const index_1 = __nccwpck_require__(19522); -const index_2 = __nccwpck_require__(94526); -// ------------------------------------------------------------------ -// Errors -// ------------------------------------------------------------------ -class ValueHashError extends index_2.TypeBoxError { - constructor(value) { - super(`Unable to hash value`); - this.value = value; - } -} -exports.ValueHashError = ValueHashError; -// ------------------------------------------------------------------ -// ByteMarker -// ------------------------------------------------------------------ -var ByteMarker; -(function (ByteMarker) { - ByteMarker[ByteMarker["Undefined"] = 0] = "Undefined"; - ByteMarker[ByteMarker["Null"] = 1] = "Null"; - ByteMarker[ByteMarker["Boolean"] = 2] = "Boolean"; - ByteMarker[ByteMarker["Number"] = 3] = "Number"; - ByteMarker[ByteMarker["String"] = 4] = "String"; - ByteMarker[ByteMarker["Object"] = 5] = "Object"; - ByteMarker[ByteMarker["Array"] = 6] = "Array"; - ByteMarker[ByteMarker["Date"] = 7] = "Date"; - ByteMarker[ByteMarker["Uint8Array"] = 8] = "Uint8Array"; - ByteMarker[ByteMarker["Symbol"] = 9] = "Symbol"; - ByteMarker[ByteMarker["BigInt"] = 10] = "BigInt"; -})(ByteMarker || (ByteMarker = {})); -// ------------------------------------------------------------------ -// State -// ------------------------------------------------------------------ -let Accumulator = BigInt('14695981039346656037'); -const [Prime, Size] = [BigInt('1099511628211'), BigInt('2') ** BigInt('64')]; -const Bytes = Array.from({ length: 256 }).map((_, i) => BigInt(i)); -const F64 = new Float64Array(1); -const F64In = new DataView(F64.buffer); -const F64Out = new Uint8Array(F64.buffer); -// ------------------------------------------------------------------ -// NumberToBytes -// ------------------------------------------------------------------ -function* NumberToBytes(value) { - const byteCount = value === 0 ? 1 : Math.ceil(Math.floor(Math.log2(value) + 1) / 8); - for (let i = 0; i < byteCount; i++) { - yield (value >> (8 * (byteCount - 1 - i))) & 0xff; - } -} -// ------------------------------------------------------------------ -// Hashing Functions -// ------------------------------------------------------------------ -function ArrayType(value) { - FNV1A64(ByteMarker.Array); - for (const item of value) { - Visit(item); - } -} -function BooleanType(value) { - FNV1A64(ByteMarker.Boolean); - FNV1A64(value ? 1 : 0); -} -function BigIntType(value) { - FNV1A64(ByteMarker.BigInt); - F64In.setBigInt64(0, value); - for (const byte of F64Out) { - FNV1A64(byte); - } -} -function DateType(value) { - FNV1A64(ByteMarker.Date); - Visit(value.getTime()); -} -function NullType(value) { - FNV1A64(ByteMarker.Null); -} -function NumberType(value) { - FNV1A64(ByteMarker.Number); - F64In.setFloat64(0, value); - for (const byte of F64Out) { - FNV1A64(byte); - } -} -function ObjectType(value) { - FNV1A64(ByteMarker.Object); - for (const key of globalThis.Object.keys(value).sort()) { - Visit(key); - Visit(value[key]); - } -} -function StringType(value) { - FNV1A64(ByteMarker.String); - for (let i = 0; i < value.length; i++) { - for (const byte of NumberToBytes(value.charCodeAt(i))) { - FNV1A64(byte); - } - } -} -function SymbolType(value) { - FNV1A64(ByteMarker.Symbol); - Visit(value.description); -} -function Uint8ArrayType(value) { - FNV1A64(ByteMarker.Uint8Array); - for (let i = 0; i < value.length; i++) { - FNV1A64(value[i]); - } -} -function UndefinedType(value) { - return FNV1A64(ByteMarker.Undefined); -} -function Visit(value) { - if ((0, index_1.IsArray)(value)) - return ArrayType(value); - if ((0, index_1.IsBoolean)(value)) - return BooleanType(value); - if ((0, index_1.IsBigInt)(value)) - return BigIntType(value); - if ((0, index_1.IsDate)(value)) - return DateType(value); - if ((0, index_1.IsNull)(value)) - return NullType(value); - if ((0, index_1.IsNumber)(value)) - return NumberType(value); - if ((0, index_1.IsStandardObject)(value)) - return ObjectType(value); - if ((0, index_1.IsString)(value)) - return StringType(value); - if ((0, index_1.IsSymbol)(value)) - return SymbolType(value); - if ((0, index_1.IsUint8Array)(value)) - return Uint8ArrayType(value); - if ((0, index_1.IsUndefined)(value)) - return UndefinedType(value); - throw new ValueHashError(value); -} -function FNV1A64(byte) { - Accumulator = Accumulator ^ Bytes[byte]; - Accumulator = (Accumulator * Prime) % Size; -} -// ------------------------------------------------------------------ -// Hash -// ------------------------------------------------------------------ -/** Creates a FNV1A-64 non cryptographic hash of the given value */ -function Hash(value) { - Accumulator = BigInt('14695981039346656037'); - Visit(value); - return Accumulator; -} -exports.Hash = Hash; - - -/***/ }), - -/***/ 73849: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(59289), exports); - - -/***/ }), - -/***/ 57472: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Value = exports.ValueErrorIterator = exports.ValueErrorType = void 0; -// ------------------------------------------------------------------ -// Errors (re-export) -// ------------------------------------------------------------------ -var index_1 = __nccwpck_require__(4672); -Object.defineProperty(exports, "ValueErrorType", ({ enumerable: true, get: function () { return index_1.ValueErrorType; } })); -Object.defineProperty(exports, "ValueErrorIterator", ({ enumerable: true, get: function () { return index_1.ValueErrorIterator; } })); -// ------------------------------------------------------------------ -// Guards -// ------------------------------------------------------------------ -__exportStar(__nccwpck_require__(19522), exports); -// ------------------------------------------------------------------ -// Operators -// ------------------------------------------------------------------ -__exportStar(__nccwpck_require__(49098), exports); -__exportStar(__nccwpck_require__(35323), exports); -__exportStar(__nccwpck_require__(30642), exports); -__exportStar(__nccwpck_require__(66614), exports); -__exportStar(__nccwpck_require__(23584), exports); -__exportStar(__nccwpck_require__(37029), exports); -__exportStar(__nccwpck_require__(5850), exports); -__exportStar(__nccwpck_require__(6145), exports); -__exportStar(__nccwpck_require__(7955), exports); -__exportStar(__nccwpck_require__(73849), exports); -__exportStar(__nccwpck_require__(18567), exports); -__exportStar(__nccwpck_require__(71054), exports); -__exportStar(__nccwpck_require__(90023), exports); -// ------------------------------------------------------------------ -// Namespace -// ------------------------------------------------------------------ -var index_2 = __nccwpck_require__(8430); -Object.defineProperty(exports, "Value", ({ enumerable: true, get: function () { return index_2.Value; } })); - - -/***/ }), - -/***/ 18567: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(44313), exports); - - -/***/ }), - -/***/ 44313: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Mutate = exports.ValueMutateError = void 0; -const index_1 = __nccwpck_require__(19522); -const index_2 = __nccwpck_require__(71054); -const index_3 = __nccwpck_require__(66614); -const index_4 = __nccwpck_require__(94526); -// ------------------------------------------------------------------ -// Errors -// ------------------------------------------------------------------ -class ValueMutateError extends index_4.TypeBoxError { - constructor(message) { - super(message); - } -} -exports.ValueMutateError = ValueMutateError; -function ObjectType(root, path, current, next) { - if (!(0, index_1.IsStandardObject)(current)) { - index_2.ValuePointer.Set(root, path, (0, index_3.Clone)(next)); - } - else { - const currentKeys = Object.keys(current); - const nextKeys = Object.keys(next); - for (const currentKey of currentKeys) { - if (!nextKeys.includes(currentKey)) { - delete current[currentKey]; - } - } - for (const nextKey of nextKeys) { - if (!currentKeys.includes(nextKey)) { - current[nextKey] = null; - } - } - for (const nextKey of nextKeys) { - Visit(root, `${path}/${nextKey}`, current[nextKey], next[nextKey]); - } - } -} -function ArrayType(root, path, current, next) { - if (!(0, index_1.IsArray)(current)) { - index_2.ValuePointer.Set(root, path, (0, index_3.Clone)(next)); - } - else { - for (let index = 0; index < next.length; index++) { - Visit(root, `${path}/${index}`, current[index], next[index]); - } - current.splice(next.length); - } -} -function TypedArrayType(root, path, current, next) { - if ((0, index_1.IsTypedArray)(current) && current.length === next.length) { - for (let i = 0; i < current.length; i++) { - current[i] = next[i]; - } - } - else { - index_2.ValuePointer.Set(root, path, (0, index_3.Clone)(next)); - } -} -function ValueType(root, path, current, next) { - if (current === next) - return; - index_2.ValuePointer.Set(root, path, next); -} -function Visit(root, path, current, next) { - if ((0, index_1.IsArray)(next)) - return ArrayType(root, path, current, next); - if ((0, index_1.IsTypedArray)(next)) - return TypedArrayType(root, path, current, next); - if ((0, index_1.IsStandardObject)(next)) - return ObjectType(root, path, current, next); - if ((0, index_1.IsValueType)(next)) - return ValueType(root, path, current, next); -} -// ------------------------------------------------------------------ -// IsNonMutableValue -// ------------------------------------------------------------------ -function IsNonMutableValue(value) { - return (0, index_1.IsTypedArray)(value) || (0, index_1.IsValueType)(value); -} -function IsMismatchedValue(current, next) { - // prettier-ignore - return (((0, index_1.IsStandardObject)(current) && (0, index_1.IsArray)(next)) || - ((0, index_1.IsArray)(current) && (0, index_1.IsStandardObject)(next))); -} -// ------------------------------------------------------------------ -// Mutate -// ------------------------------------------------------------------ -/** `[Mutable]` Performs a deep mutable value assignment while retaining internal references */ -function Mutate(current, next) { - if (IsNonMutableValue(current) || IsNonMutableValue(next)) - throw new ValueMutateError('Only object and array types can be mutated at the root level'); - if (IsMismatchedValue(current, next)) - throw new ValueMutateError('Cannot assign due type mismatch of assignable values'); - Visit(current, '', current, next); -} -exports.Mutate = Mutate; - - -/***/ }), - -/***/ 71054: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.ValuePointer = void 0; -exports.ValuePointer = __nccwpck_require__(79456); - - -/***/ }), - -/***/ 79456: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Get = exports.Has = exports.Delete = exports.Set = exports.Format = exports.ValuePointerRootDeleteError = exports.ValuePointerRootSetError = void 0; -const index_1 = __nccwpck_require__(94526); -// ------------------------------------------------------------------ -// Errors -// ------------------------------------------------------------------ -class ValuePointerRootSetError extends index_1.TypeBoxError { - constructor(value, path, update) { - super('Cannot set root value'); - this.value = value; - this.path = path; - this.update = update; - } -} -exports.ValuePointerRootSetError = ValuePointerRootSetError; -class ValuePointerRootDeleteError extends index_1.TypeBoxError { - constructor(value, path) { - super('Cannot delete root value'); - this.value = value; - this.path = path; - } -} -exports.ValuePointerRootDeleteError = ValuePointerRootDeleteError; -// ------------------------------------------------------------------ -// ValuePointer -// ------------------------------------------------------------------ -/** Provides functionality to update values through RFC6901 string pointers */ -// prettier-ignore -function Escape(component) { - return component.indexOf('~') === -1 ? component : component.replace(/~1/g, '/').replace(/~0/g, '~'); -} -/** Formats the given pointer into navigable key components */ -// prettier-ignore -function* Format(pointer) { - if (pointer === '') - return; - let [start, end] = [0, 0]; - for (let i = 0; i < pointer.length; i++) { - const char = pointer.charAt(i); - if (char === '/') { - if (i === 0) { - start = i + 1; - } - else { - end = i; - yield Escape(pointer.slice(start, end)); - start = i + 1; - } - } - else { - end = i; - } - } - yield Escape(pointer.slice(start)); -} -exports.Format = Format; -/** Sets the value at the given pointer. If the value at the pointer does not exist it is created */ -// prettier-ignore -function Set(value, pointer, update) { - if (pointer === '') - throw new ValuePointerRootSetError(value, pointer, update); - let [owner, next, key] = [null, value, '']; - for (const component of Format(pointer)) { - if (next[component] === undefined) - next[component] = {}; - owner = next; - next = next[component]; - key = component; - } - owner[key] = update; -} -exports.Set = Set; -/** Deletes a value at the given pointer */ -// prettier-ignore -function Delete(value, pointer) { - if (pointer === '') - throw new ValuePointerRootDeleteError(value, pointer); - let [owner, next, key] = [null, value, '']; - for (const component of Format(pointer)) { - if (next[component] === undefined || next[component] === null) - return; - owner = next; - next = next[component]; - key = component; - } - if (Array.isArray(owner)) { - const index = parseInt(key); - owner.splice(index, 1); - } - else { - delete owner[key]; - } -} -exports.Delete = Delete; -/** Returns true if a value exists at the given pointer */ -// prettier-ignore -function Has(value, pointer) { - if (pointer === '') - return true; - let [owner, next, key] = [null, value, '']; - for (const component of Format(pointer)) { - if (next[component] === undefined) - return false; - owner = next; - next = next[component]; - key = component; - } - return Object.getOwnPropertyNames(owner).includes(key); -} -exports.Has = Has; -/** Gets the value at the given pointer */ -// prettier-ignore -function Get(value, pointer) { - if (pointer === '') - return value; - let current = value; - for (const component of Format(pointer)) { - if (current[component] === undefined) - return undefined; - current = current[component]; - } - return current; -} -exports.Get = Get; - - -/***/ }), - -/***/ 35401: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TransformDecode = exports.TransformDecodeError = exports.TransformDecodeCheckError = void 0; -const index_1 = __nccwpck_require__(48121); -const index_2 = __nccwpck_require__(94526); -const index_3 = __nccwpck_require__(30658); -const index_4 = __nccwpck_require__(89777); -const index_5 = __nccwpck_require__(75743); -const index_6 = __nccwpck_require__(35323); -// ------------------------------------------------------------------ -// ValueGuard -// ------------------------------------------------------------------ -const index_7 = __nccwpck_require__(19522); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_1 = __nccwpck_require__(20109); -// ------------------------------------------------------------------ -// Errors -// ------------------------------------------------------------------ -// thrown externally -// prettier-ignore -class TransformDecodeCheckError extends index_2.TypeBoxError { - constructor(schema, value, error) { - super(`Unable to decode value as it does not match the expected schema`); - this.schema = schema; - this.value = value; - this.error = error; - } -} -exports.TransformDecodeCheckError = TransformDecodeCheckError; -// prettier-ignore -class TransformDecodeError extends index_2.TypeBoxError { - constructor(schema, path, value, error) { - super(error instanceof Error ? error.message : 'Unknown error'); - this.schema = schema; - this.path = path; - this.value = value; - this.error = error; - } -} -exports.TransformDecodeError = TransformDecodeError; -// ------------------------------------------------------------------ -// Decode -// ------------------------------------------------------------------ -// prettier-ignore -function Default(schema, path, value) { - try { - return (0, type_1.IsTransform)(schema) ? schema[index_1.TransformKind].Decode(value) : value; - } - catch (error) { - throw new TransformDecodeError(schema, path, value, error); - } -} -// prettier-ignore -function FromArray(schema, references, path, value) { - return ((0, index_7.IsArray)(value)) - ? Default(schema, path, value.map((value, index) => Visit(schema.items, references, `${path}/${index}`, value))) - : Default(schema, path, value); -} -// prettier-ignore -function FromIntersect(schema, references, path, value) { - if (!(0, index_7.IsStandardObject)(value) || (0, index_7.IsValueType)(value)) - return Default(schema, path, value); - const knownKeys = (0, index_3.KeyOfPropertyKeys)(schema); - const knownProperties = knownKeys.reduce((value, key) => { - return (key in value) - ? { ...value, [key]: Visit((0, index_4.Index)(schema, [key]), references, `${path}/${key}`, value[key]) } - : value; - }, value); - if (!(0, type_1.IsTransform)(schema.unevaluatedProperties)) { - return Default(schema, path, knownProperties); - } - const unknownKeys = Object.getOwnPropertyNames(knownProperties); - const unevaluatedProperties = schema.unevaluatedProperties; - const unknownProperties = unknownKeys.reduce((value, key) => { - return !knownKeys.includes(key) - ? { ...value, [key]: Default(unevaluatedProperties, `${path}/${key}`, value[key]) } - : value; - }, knownProperties); - return Default(schema, path, unknownProperties); -} -function FromNot(schema, references, path, value) { - return Default(schema, path, Visit(schema.not, references, path, value)); -} -// prettier-ignore -function FromObject(schema, references, path, value) { - if (!(0, index_7.IsStandardObject)(value)) - return Default(schema, path, value); - const knownKeys = (0, index_3.KeyOfPropertyKeys)(schema); - const knownProperties = knownKeys.reduce((value, key) => { - return (key in value) - ? { ...value, [key]: Visit(schema.properties[key], references, `${path}/${key}`, value[key]) } - : value; - }, value); - if (!(0, type_1.IsSchema)(schema.additionalProperties)) { - return Default(schema, path, knownProperties); - } - const unknownKeys = Object.getOwnPropertyNames(knownProperties); - const additionalProperties = schema.additionalProperties; - const unknownProperties = unknownKeys.reduce((value, key) => { - return !knownKeys.includes(key) - ? { ...value, [key]: Default(additionalProperties, `${path}/${key}`, value[key]) } - : value; - }, knownProperties); - return Default(schema, path, unknownProperties); -} -// prettier-ignore -function FromRecord(schema, references, path, value) { - if (!(0, index_7.IsStandardObject)(value)) - return Default(schema, path, value); - const pattern = Object.getOwnPropertyNames(schema.patternProperties)[0]; - const knownKeys = new RegExp(pattern); - const knownProperties = Object.getOwnPropertyNames(value).reduce((value, key) => { - return knownKeys.test(key) - ? { ...value, [key]: Visit(schema.patternProperties[pattern], references, `${path}/${key}`, value[key]) } - : value; - }, value); - if (!(0, type_1.IsSchema)(schema.additionalProperties)) { - return Default(schema, path, knownProperties); - } - const unknownKeys = Object.getOwnPropertyNames(knownProperties); - const additionalProperties = schema.additionalProperties; - const unknownProperties = unknownKeys.reduce((value, key) => { - return !knownKeys.test(key) - ? { ...value, [key]: Default(additionalProperties, `${path}/${key}`, value[key]) } - : value; - }, knownProperties); - return Default(schema, path, unknownProperties); -} -// prettier-ignore -function FromRef(schema, references, path, value) { - const target = (0, index_5.Deref)(schema, references); - return Default(schema, path, Visit(target, references, path, value)); -} -// prettier-ignore -function FromThis(schema, references, path, value) { - const target = (0, index_5.Deref)(schema, references); - return Default(schema, path, Visit(target, references, path, value)); -} -// prettier-ignore -function FromTuple(schema, references, path, value) { - return ((0, index_7.IsArray)(value) && (0, index_7.IsArray)(schema.items)) - ? Default(schema, path, schema.items.map((schema, index) => Visit(schema, references, `${path}/${index}`, value[index]))) - : Default(schema, path, value); -} -// prettier-ignore -function FromUnion(schema, references, path, value) { - for (const subschema of schema.anyOf) { - if (!(0, index_6.Check)(subschema, references, value)) - continue; - // note: ensure interior is decoded first - const decoded = Visit(subschema, references, path, value); - return Default(schema, path, decoded); - } - return Default(schema, path, value); -} -// prettier-ignore -function Visit(schema, references, path, value) { - const references_ = typeof schema.$id === 'string' ? [...references, schema] : references; - const schema_ = schema; - switch (schema[index_1.Kind]) { - case 'Array': - return FromArray(schema_, references_, path, value); - case 'Intersect': - return FromIntersect(schema_, references_, path, value); - case 'Not': - return FromNot(schema_, references_, path, value); - case 'Object': - return FromObject(schema_, references_, path, value); - case 'Record': - return FromRecord(schema_, references_, path, value); - case 'Ref': - return FromRef(schema_, references_, path, value); - case 'Symbol': - return Default(schema_, path, value); - case 'This': - return FromThis(schema_, references_, path, value); - case 'Tuple': - return FromTuple(schema_, references_, path, value); - case 'Union': - return FromUnion(schema_, references_, path, value); - default: - return Default(schema_, path, value); - } -} -/** - * `[Internal]` Decodes the value and returns the result. This function requires that - * the caller `Check` the value before use. Passing unchecked values may result in - * undefined behavior. Refer to the `Value.Decode()` for implementation details. - */ -function TransformDecode(schema, references, value) { - return Visit(schema, references, '', value); -} -exports.TransformDecode = TransformDecode; - - -/***/ }), - -/***/ 67873: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.TransformEncode = exports.TransformEncodeError = exports.TransformEncodeCheckError = void 0; -const index_1 = __nccwpck_require__(48121); -const index_2 = __nccwpck_require__(94526); -const index_3 = __nccwpck_require__(30658); -const index_4 = __nccwpck_require__(89777); -const index_5 = __nccwpck_require__(75743); -const index_6 = __nccwpck_require__(35323); -// ------------------------------------------------------------------ -// ValueGuard -// ------------------------------------------------------------------ -const index_7 = __nccwpck_require__(19522); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_1 = __nccwpck_require__(20109); -// ------------------------------------------------------------------ -// Errors -// ------------------------------------------------------------------ -// prettier-ignore -class TransformEncodeCheckError extends index_2.TypeBoxError { - constructor(schema, value, error) { - super(`The encoded value does not match the expected schema`); - this.schema = schema; - this.value = value; - this.error = error; - } -} -exports.TransformEncodeCheckError = TransformEncodeCheckError; -// prettier-ignore -class TransformEncodeError extends index_2.TypeBoxError { - constructor(schema, path, value, error) { - super(`${error instanceof Error ? error.message : 'Unknown error'}`); - this.schema = schema; - this.path = path; - this.value = value; - this.error = error; - } -} -exports.TransformEncodeError = TransformEncodeError; -// ------------------------------------------------------------------ -// Encode -// ------------------------------------------------------------------ -// prettier-ignore -function Default(schema, path, value) { - try { - return (0, type_1.IsTransform)(schema) ? schema[index_1.TransformKind].Encode(value) : value; - } - catch (error) { - throw new TransformEncodeError(schema, path, value, error); - } -} -// prettier-ignore -function FromArray(schema, references, path, value) { - const defaulted = Default(schema, path, value); - return (0, index_7.IsArray)(defaulted) - ? defaulted.map((value, index) => Visit(schema.items, references, `${path}/${index}`, value)) - : defaulted; -} -// prettier-ignore -function FromIntersect(schema, references, path, value) { - const defaulted = Default(schema, path, value); - if (!(0, index_7.IsStandardObject)(value) || (0, index_7.IsValueType)(value)) - return defaulted; - const knownKeys = (0, index_3.KeyOfPropertyKeys)(schema); - const knownProperties = knownKeys.reduce((value, key) => { - return key in defaulted - ? { ...value, [key]: Visit((0, index_4.Index)(schema, [key]), references, `${path}/${key}`, value[key]) } - : value; - }, defaulted); - if (!(0, type_1.IsTransform)(schema.unevaluatedProperties)) { - return Default(schema, path, knownProperties); - } - const unknownKeys = Object.getOwnPropertyNames(knownProperties); - const unevaluatedProperties = schema.unevaluatedProperties; - return unknownKeys.reduce((value, key) => { - return !knownKeys.includes(key) - ? { ...value, [key]: Default(unevaluatedProperties, `${path}/${key}`, value[key]) } - : value; - }, knownProperties); -} -// prettier-ignore -function FromNot(schema, references, path, value) { - return Default(schema.not, path, Default(schema, path, value)); -} -// prettier-ignore -function FromObject(schema, references, path, value) { - const defaulted = Default(schema, path, value); - if (!(0, index_7.IsStandardObject)(value)) - return defaulted; - const knownKeys = (0, index_3.KeyOfPropertyKeys)(schema); - const knownProperties = knownKeys.reduce((value, key) => { - return key in value - ? { ...value, [key]: Visit(schema.properties[key], references, `${path}/${key}`, value[key]) } - : value; - }, defaulted); - if (!(0, type_1.IsSchema)(schema.additionalProperties)) { - return knownProperties; - } - const unknownKeys = Object.getOwnPropertyNames(knownProperties); - const additionalProperties = schema.additionalProperties; - return unknownKeys.reduce((value, key) => { - return !knownKeys.includes(key) - ? { ...value, [key]: Default(additionalProperties, `${path}/${key}`, value[key]) } - : value; - }, knownProperties); -} -// prettier-ignore -function FromRecord(schema, references, path, value) { - const defaulted = Default(schema, path, value); - if (!(0, index_7.IsStandardObject)(value)) - return defaulted; - const pattern = Object.getOwnPropertyNames(schema.patternProperties)[0]; - const knownKeys = new RegExp(pattern); - const knownProperties = Object.getOwnPropertyNames(value).reduce((value, key) => { - return knownKeys.test(key) - ? { ...value, [key]: Visit(schema.patternProperties[pattern], references, `${path}/${key}`, value[key]) } - : value; - }, defaulted); - if (!(0, type_1.IsSchema)(schema.additionalProperties)) { - return Default(schema, path, knownProperties); - } - const unknownKeys = Object.getOwnPropertyNames(knownProperties); - const additionalProperties = schema.additionalProperties; - return unknownKeys.reduce((value, key) => { - return !knownKeys.test(key) - ? { ...value, [key]: Default(additionalProperties, `${path}/${key}`, value[key]) } - : value; - }, knownProperties); -} -// prettier-ignore -function FromRef(schema, references, path, value) { - const target = (0, index_5.Deref)(schema, references); - const resolved = Visit(target, references, path, value); - return Default(schema, path, resolved); -} -// prettier-ignore -function FromThis(schema, references, path, value) { - const target = (0, index_5.Deref)(schema, references); - const resolved = Visit(target, references, path, value); - return Default(schema, path, resolved); -} -// prettier-ignore -function FromTuple(schema, references, path, value) { - const value1 = Default(schema, path, value); - return (0, index_7.IsArray)(schema.items) ? schema.items.map((schema, index) => Visit(schema, references, `${path}/${index}`, value1[index])) : []; -} -// prettier-ignore -function FromUnion(schema, references, path, value) { - // test value against union variants - for (const subschema of schema.anyOf) { - if (!(0, index_6.Check)(subschema, references, value)) - continue; - const value1 = Visit(subschema, references, path, value); - return Default(schema, path, value1); - } - // test transformed value against union variants - for (const subschema of schema.anyOf) { - const value1 = Visit(subschema, references, path, value); - if (!(0, index_6.Check)(schema, references, value1)) - continue; - return Default(schema, path, value1); - } - return Default(schema, path, value); -} -// prettier-ignore -function Visit(schema, references, path, value) { - const references_ = typeof schema.$id === 'string' ? [...references, schema] : references; - const schema_ = schema; - switch (schema[index_1.Kind]) { - case 'Array': - return FromArray(schema_, references_, path, value); - case 'Intersect': - return FromIntersect(schema_, references_, path, value); - case 'Not': - return FromNot(schema_, references_, path, value); - case 'Object': - return FromObject(schema_, references_, path, value); - case 'Record': - return FromRecord(schema_, references_, path, value); - case 'Ref': - return FromRef(schema_, references_, path, value); - case 'This': - return FromThis(schema_, references_, path, value); - case 'Tuple': - return FromTuple(schema_, references_, path, value); - case 'Union': - return FromUnion(schema_, references_, path, value); - default: - return Default(schema_, path, value); - } -} -/** - * `[Internal]` Encodes the value and returns the result. This function expects the - * caller to pass a statically checked value. This function does not check the encoded - * result, meaning the result should be passed to `Check` before use. Refer to the - * `Value.Encode()` function for implementation details. - */ -function TransformEncode(schema, references, value) { - return Visit(schema, references, '', value); -} -exports.TransformEncode = TransformEncode; - - -/***/ }), - -/***/ 83371: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.HasTransform = void 0; -const index_1 = __nccwpck_require__(75743); -const index_2 = __nccwpck_require__(48121); -// ------------------------------------------------------------------ -// TypeGuard -// ------------------------------------------------------------------ -const type_1 = __nccwpck_require__(20109); -// ------------------------------------------------------------------ -// ValueGuard -// ------------------------------------------------------------------ -const index_3 = __nccwpck_require__(19522); -// prettier-ignore -function FromArray(schema, references) { - return (0, type_1.IsTransform)(schema) || Visit(schema.items, references); -} -// prettier-ignore -function FromAsyncIterator(schema, references) { - return (0, type_1.IsTransform)(schema) || Visit(schema.items, references); -} -// prettier-ignore -function FromConstructor(schema, references) { - return (0, type_1.IsTransform)(schema) || Visit(schema.returns, references) || schema.parameters.some((schema) => Visit(schema, references)); -} -// prettier-ignore -function FromFunction(schema, references) { - return (0, type_1.IsTransform)(schema) || Visit(schema.returns, references) || schema.parameters.some((schema) => Visit(schema, references)); -} -// prettier-ignore -function FromIntersect(schema, references) { - return (0, type_1.IsTransform)(schema) || (0, type_1.IsTransform)(schema.unevaluatedProperties) || schema.allOf.some((schema) => Visit(schema, references)); -} -// prettier-ignore -function FromIterator(schema, references) { - return (0, type_1.IsTransform)(schema) || Visit(schema.items, references); -} -// prettier-ignore -function FromNot(schema, references) { - return (0, type_1.IsTransform)(schema) || Visit(schema.not, references); -} -// prettier-ignore -function FromObject(schema, references) { - return ((0, type_1.IsTransform)(schema) || - Object.values(schema.properties).some((schema) => Visit(schema, references)) || - ((0, type_1.IsSchema)(schema.additionalProperties) && Visit(schema.additionalProperties, references))); -} -// prettier-ignore -function FromPromise(schema, references) { - return (0, type_1.IsTransform)(schema) || Visit(schema.item, references); -} -// prettier-ignore -function FromRecord(schema, references) { - const pattern = Object.getOwnPropertyNames(schema.patternProperties)[0]; - const property = schema.patternProperties[pattern]; - return (0, type_1.IsTransform)(schema) || Visit(property, references) || ((0, type_1.IsSchema)(schema.additionalProperties) && (0, type_1.IsTransform)(schema.additionalProperties)); -} -// prettier-ignore -function FromRef(schema, references) { - if ((0, type_1.IsTransform)(schema)) - return true; - return Visit((0, index_1.Deref)(schema, references), references); -} -// prettier-ignore -function FromThis(schema, references) { - if ((0, type_1.IsTransform)(schema)) - return true; - return Visit((0, index_1.Deref)(schema, references), references); -} -// prettier-ignore -function FromTuple(schema, references) { - return (0, type_1.IsTransform)(schema) || (!(0, index_3.IsUndefined)(schema.items) && schema.items.some((schema) => Visit(schema, references))); -} -// prettier-ignore -function FromUnion(schema, references) { - return (0, type_1.IsTransform)(schema) || schema.anyOf.some((schema) => Visit(schema, references)); -} -// prettier-ignore -function Visit(schema, references) { - const references_ = (0, index_3.IsString)(schema.$id) ? [...references, schema] : references; - const schema_ = schema; - if (schema.$id && visited.has(schema.$id)) - return false; - if (schema.$id) - visited.add(schema.$id); - switch (schema[index_2.Kind]) { - case 'Array': - return FromArray(schema_, references_); - case 'AsyncIterator': - return FromAsyncIterator(schema_, references_); - case 'Constructor': - return FromConstructor(schema_, references_); - case 'Function': - return FromFunction(schema_, references_); - case 'Intersect': - return FromIntersect(schema_, references_); - case 'Iterator': - return FromIterator(schema_, references_); - case 'Not': - return FromNot(schema_, references_); - case 'Object': - return FromObject(schema_, references_); - case 'Promise': - return FromPromise(schema_, references_); - case 'Record': - return FromRecord(schema_, references_); - case 'Ref': - return FromRef(schema_, references_); - case 'This': - return FromThis(schema_, references_); - case 'Tuple': - return FromTuple(schema_, references_); - case 'Union': - return FromUnion(schema_, references_); - default: - return (0, type_1.IsTransform)(schema); - } -} -const visited = new Set(); -/** Returns true if this schema contains a transform codec */ -function HasTransform(schema, references) { - visited.clear(); - return Visit(schema, references); -} -exports.HasTransform = HasTransform; - - -/***/ }), - -/***/ 90023: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -__exportStar(__nccwpck_require__(35401), exports); -__exportStar(__nccwpck_require__(67873), exports); -__exportStar(__nccwpck_require__(83371), exports); - - -/***/ }), - -/***/ 8430: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Value = void 0; -exports.Value = __nccwpck_require__(10091); - - -/***/ }), - -/***/ 10091: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Mutate = exports.Patch = exports.Hash = exports.Diff = exports.Equal = exports.Errors = exports.Encode = exports.Default = exports.Decode = exports.Clone = exports.Convert = exports.Clean = exports.Check = exports.Create = exports.Cast = void 0; -const index_1 = __nccwpck_require__(90023); -const index_2 = __nccwpck_require__(18567); -const index_3 = __nccwpck_require__(73849); -const index_4 = __nccwpck_require__(7955); -const index_5 = __nccwpck_require__(49098); -const index_6 = __nccwpck_require__(66614); -const index_7 = __nccwpck_require__(23584); -const index_8 = __nccwpck_require__(37029); -const index_9 = __nccwpck_require__(30642); -const index_10 = __nccwpck_require__(35323); -const index_11 = __nccwpck_require__(5850); -const index_12 = __nccwpck_require__(6145); -const index_13 = __nccwpck_require__(4672); -/** Casts a value into a given type. The return value will retain as much information of the original value as possible. */ -function Cast(...args) { - return index_5.Cast.apply(index_5.Cast, args); -} -exports.Cast = Cast; -/** Creates a value from the given type */ -function Create(...args) { - return index_8.Create.apply(index_8.Create, args); -} -exports.Create = Create; -/** Returns true if the value matches the given type */ -function Check(...args) { - return index_10.Check.apply(index_10.Check, args); -} -exports.Check = Check; -/** `[Mutable]` Removes excess properties from a value and returns the result. This function does not check the value and returns an unknown type. You should Check the result before use. Clean is a mutable operation. To avoid mutation, Clone the value first. */ -function Clean(...args) { - return index_9.Clean.apply(index_9.Clean, args); -} -exports.Clean = Clean; -/** Converts any type mismatched values to their target type if a reasonable conversion is possible */ -function Convert(...args) { - return index_7.Convert.apply(index_7.Convert, args); -} -exports.Convert = Convert; -/** Returns a structural clone of the given value */ -function Clone(value) { - return (0, index_6.Clone)(value); -} -exports.Clone = Clone; -/** Decodes a value or throws if error */ -function Decode(...args) { - const [schema, references, value] = args.length === 3 ? [args[0], args[1], args[2]] : [args[0], [], args[1]]; - if (!Check(schema, references, value)) - throw new index_1.TransformDecodeCheckError(schema, value, Errors(schema, references, value).First()); - return (0, index_1.TransformDecode)(schema, references, value); -} -exports.Decode = Decode; -/** `[Mutable]` Generates missing properties on a value using default schema annotations if available. This function does not check the value and returns an unknown type. You should Check the result before use. Default is a mutable operation. To avoid mutation, Clone the value first. */ -function Default(...args) { - return index_11.Default.apply(index_11.Default, args); -} -exports.Default = Default; -/** Encodes a value or throws if error */ -function Encode(...args) { - const [schema, references, value] = args.length === 3 ? [args[0], args[1], args[2]] : [args[0], [], args[1]]; - const encoded = (0, index_1.TransformEncode)(schema, references, value); - if (!Check(schema, references, encoded)) - throw new index_1.TransformEncodeCheckError(schema, encoded, Errors(schema, references, encoded).First()); - return encoded; -} -exports.Encode = Encode; -/** Returns an iterator for each error in this value. */ -function Errors(...args) { - return index_13.Errors.apply(index_13.Errors, args); -} -exports.Errors = Errors; -/** Returns true if left and right values are structurally equal */ -function Equal(left, right) { - return (0, index_4.Equal)(left, right); -} -exports.Equal = Equal; -/** Returns edits to transform the current value into the next value */ -function Diff(current, next) { - return (0, index_12.Diff)(current, next); -} -exports.Diff = Diff; -/** Returns a FNV1A-64 non cryptographic hash of the given value */ -function Hash(value) { - return (0, index_3.Hash)(value); -} -exports.Hash = Hash; -/** Returns a new value with edits applied to the given value */ -function Patch(current, edits) { - return (0, index_12.Patch)(current, edits); -} -exports.Patch = Patch; -/** `[Mutable]` Performs a deep mutable value assignment while retaining internal references. */ -function Mutate(current, next) { - (0, index_2.Mutate)(current, next); -} -exports.Mutate = Mutate; - - -/***/ }), - -/***/ 68789: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -const GoTrueAdminApi_1 = __importDefault(__nccwpck_require__(52165)); -const AuthAdminApi = GoTrueAdminApi_1.default; -exports["default"] = AuthAdminApi; -//# sourceMappingURL=AuthAdminApi.js.map - -/***/ }), - -/***/ 62495: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -const GoTrueClient_1 = __importDefault(__nccwpck_require__(16623)); -const AuthClient = GoTrueClient_1.default; -exports["default"] = AuthClient; -//# sourceMappingURL=AuthClient.js.map - -/***/ }), - -/***/ 52165: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __rest = (this && this.__rest) || function (s, e) { - var t = {}; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { - if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) - t[p[i]] = s[p[i]]; - } - return t; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -const fetch_1 = __nccwpck_require__(92356); -const helpers_1 = __nccwpck_require__(30601); -const errors_1 = __nccwpck_require__(73981); -class GoTrueAdminApi { - constructor({ url = '', headers = {}, fetch, }) { - this.url = url; - this.headers = headers; - this.fetch = (0, helpers_1.resolveFetch)(fetch); - this.mfa = { - listFactors: this._listFactors.bind(this), - deleteFactor: this._deleteFactor.bind(this), - }; - } - /** - * Removes a logged-in session. - * @param jwt A valid, logged-in JWT. - * @param scope The logout sope. - */ - async signOut(jwt, scope = 'global') { - try { - await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/logout?scope=${scope}`, { - headers: this.headers, - jwt, - noResolveJson: true, - }); - return { data: null, error: null }; - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: null, error }; - } - throw error; - } - } - /** - * Sends an invite link to an email address. - * @param email The email address of the user. - * @param options Additional options to be included when inviting. - */ - async inviteUserByEmail(email, options = {}) { - try { - return await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/invite`, { - body: { email, data: options.data }, - headers: this.headers, - redirectTo: options.redirectTo, - xform: fetch_1._userResponse, - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null }, error }; - } - throw error; - } - } - /** - * Generates email links and OTPs to be sent via a custom email provider. - * @param email The user's email. - * @param options.password User password. For signup only. - * @param options.data Optional user metadata. For signup only. - * @param options.redirectTo The redirect url which should be appended to the generated link - */ - async generateLink(params) { - try { - const { options } = params, rest = __rest(params, ["options"]); - const body = Object.assign(Object.assign({}, rest), options); - if ('newEmail' in rest) { - // replace newEmail with new_email in request body - body.new_email = rest === null || rest === void 0 ? void 0 : rest.newEmail; - delete body['newEmail']; - } - return await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/admin/generate_link`, { - body: body, - headers: this.headers, - xform: fetch_1._generateLinkResponse, - redirectTo: options === null || options === void 0 ? void 0 : options.redirectTo, - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { - data: { - properties: null, - user: null, - }, - error, - }; - } - throw error; - } - } - // User Admin API - /** - * Creates a new user. - * This function should only be called on a server. Never expose your `service_role` key in the browser. - */ - async createUser(attributes) { - try { - return await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/admin/users`, { - body: attributes, - headers: this.headers, - xform: fetch_1._userResponse, - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null }, error }; - } - throw error; - } - } - /** - * Get a list of users. - * - * This function should only be called on a server. Never expose your `service_role` key in the browser. - * @param params An object which supports `page` and `perPage` as numbers, to alter the paginated results. - */ - async listUsers(params) { - var _a, _b, _c, _d, _e, _f, _g; - try { - const pagination = { nextPage: null, lastPage: 0, total: 0 }; - const response = await (0, fetch_1._request)(this.fetch, 'GET', `${this.url}/admin/users`, { - headers: this.headers, - noResolveJson: true, - query: { - page: (_b = (_a = params === null || params === void 0 ? void 0 : params.page) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : '', - per_page: (_d = (_c = params === null || params === void 0 ? void 0 : params.perPage) === null || _c === void 0 ? void 0 : _c.toString()) !== null && _d !== void 0 ? _d : '', - }, - xform: fetch_1._noResolveJsonResponse, - }); - if (response.error) - throw response.error; - const users = await response.json(); - const total = (_e = response.headers.get('x-total-count')) !== null && _e !== void 0 ? _e : 0; - const links = (_g = (_f = response.headers.get('link')) === null || _f === void 0 ? void 0 : _f.split(',')) !== null && _g !== void 0 ? _g : []; - if (links.length > 0) { - links.forEach((link) => { - const page = parseInt(link.split(';')[0].split('=')[1].substring(0, 1)); - const rel = JSON.parse(link.split(';')[1].split('=')[1]); - pagination[`${rel}Page`] = page; - }); - pagination.total = parseInt(total); - } - return { data: Object.assign(Object.assign({}, users), pagination), error: null }; - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { users: [] }, error }; - } - throw error; - } - } - /** - * Get user by id. - * - * @param uid The user's unique identifier - * - * This function should only be called on a server. Never expose your `service_role` key in the browser. - */ - async getUserById(uid) { - try { - return await (0, fetch_1._request)(this.fetch, 'GET', `${this.url}/admin/users/${uid}`, { - headers: this.headers, - xform: fetch_1._userResponse, - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null }, error }; - } - throw error; - } - } - /** - * Updates the user data. - * - * @param attributes The data you want to update. - * - * This function should only be called on a server. Never expose your `service_role` key in the browser. - */ - async updateUserById(uid, attributes) { - try { - return await (0, fetch_1._request)(this.fetch, 'PUT', `${this.url}/admin/users/${uid}`, { - body: attributes, - headers: this.headers, - xform: fetch_1._userResponse, - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null }, error }; - } - throw error; - } - } - /** - * Delete a user. Requires a `service_role` key. - * - * @param id The user id you want to remove. - * @param shouldSoftDelete If true, then the user will be soft-deleted (setting `deleted_at` to the current timestamp and disabling their account while preserving their data) from the auth schema. - * Defaults to false for backward compatibility. - * - * This function should only be called on a server. Never expose your `service_role` key in the browser. - */ - async deleteUser(id, shouldSoftDelete = false) { - try { - return await (0, fetch_1._request)(this.fetch, 'DELETE', `${this.url}/admin/users/${id}`, { - headers: this.headers, - body: { - should_soft_delete: shouldSoftDelete, - }, - xform: fetch_1._userResponse, - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null }, error }; - } - throw error; - } - } - async _listFactors(params) { - try { - const { data, error } = await (0, fetch_1._request)(this.fetch, 'GET', `${this.url}/admin/users/${params.userId}/factors`, { - headers: this.headers, - xform: (factors) => { - return { data: { factors }, error: null }; - }, - }); - return { data, error }; - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: null, error }; - } - throw error; - } - } - async _deleteFactor(params) { - try { - const data = await (0, fetch_1._request)(this.fetch, 'DELETE', `${this.url}/admin/users/${params.userId}/factors/${params.id}`, { - headers: this.headers, - }); - return { data, error: null }; - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: null, error }; - } - throw error; - } - } -} -exports["default"] = GoTrueAdminApi; -//# sourceMappingURL=GoTrueAdminApi.js.map - -/***/ }), - -/***/ 16623: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -const GoTrueAdminApi_1 = __importDefault(__nccwpck_require__(52165)); -const constants_1 = __nccwpck_require__(26705); -const errors_1 = __nccwpck_require__(73981); -const fetch_1 = __nccwpck_require__(92356); -const helpers_1 = __nccwpck_require__(30601); -const local_storage_1 = __nccwpck_require__(21735); -const polyfills_1 = __nccwpck_require__(80512); -const version_1 = __nccwpck_require__(41920); -const locks_1 = __nccwpck_require__(28932); -(0, polyfills_1.polyfillGlobalThis)(); // Make "globalThis" available -const DEFAULT_OPTIONS = { - url: constants_1.GOTRUE_URL, - storageKey: constants_1.STORAGE_KEY, - autoRefreshToken: true, - persistSession: true, - detectSessionInUrl: true, - headers: constants_1.DEFAULT_HEADERS, - flowType: 'implicit', - debug: false, -}; -/** Current session will be checked for refresh at this interval. */ -const AUTO_REFRESH_TICK_DURATION = 30 * 1000; -/** - * A token refresh will be attempted this many ticks before the current session expires. */ -const AUTO_REFRESH_TICK_THRESHOLD = 3; -async function lockNoOp(name, acquireTimeout, fn) { - return await fn(); -} -class GoTrueClient { - /** - * Create a new client for use in the browser. - */ - constructor(options) { - var _a, _b; - this.memoryStorage = null; - this.stateChangeEmitters = new Map(); - this.autoRefreshTicker = null; - this.visibilityChangedCallback = null; - this.refreshingDeferred = null; - /** - * Keeps track of the async client initialization. - * When null or not yet resolved the auth state is `unknown` - * Once resolved the the auth state is known and it's save to call any further client methods. - * Keep extra care to never reject or throw uncaught errors - */ - this.initializePromise = null; - this.detectSessionInUrl = true; - this.lockAcquired = false; - this.pendingInLock = []; - /** - * Used to broadcast state change events to other tabs listening. - */ - this.broadcastChannel = null; - this.logger = console.log; - this.insecureGetSessionWarningShown = false; - this.instanceID = GoTrueClient.nextInstanceID; - GoTrueClient.nextInstanceID += 1; - if (this.instanceID > 0 && (0, helpers_1.isBrowser)()) { - console.warn('Multiple GoTrueClient instances detected in the same browser context. It is not an error, but this should be avoided as it may produce undefined behavior when used concurrently under the same storage key.'); - } - const settings = Object.assign(Object.assign({}, DEFAULT_OPTIONS), options); - this.logDebugMessages = !!settings.debug; - if (typeof settings.debug === 'function') { - this.logger = settings.debug; - } - this.persistSession = settings.persistSession; - this.storageKey = settings.storageKey; - this.autoRefreshToken = settings.autoRefreshToken; - this.admin = new GoTrueAdminApi_1.default({ - url: settings.url, - headers: settings.headers, - fetch: settings.fetch, - }); - this.url = settings.url; - this.headers = settings.headers; - this.fetch = (0, helpers_1.resolveFetch)(settings.fetch); - this.lock = settings.lock || lockNoOp; - this.detectSessionInUrl = settings.detectSessionInUrl; - this.flowType = settings.flowType; - if (settings.lock) { - this.lock = settings.lock; - } - else if ((0, helpers_1.isBrowser)() && ((_a = globalThis === null || globalThis === void 0 ? void 0 : globalThis.navigator) === null || _a === void 0 ? void 0 : _a.locks)) { - this.lock = locks_1.navigatorLock; - } - else { - this.lock = lockNoOp; - } - this.mfa = { - verify: this._verify.bind(this), - enroll: this._enroll.bind(this), - unenroll: this._unenroll.bind(this), - challenge: this._challenge.bind(this), - listFactors: this._listFactors.bind(this), - challengeAndVerify: this._challengeAndVerify.bind(this), - getAuthenticatorAssuranceLevel: this._getAuthenticatorAssuranceLevel.bind(this), - }; - if (this.persistSession) { - if (settings.storage) { - this.storage = settings.storage; - } - else { - if ((0, helpers_1.supportsLocalStorage)()) { - this.storage = local_storage_1.localStorageAdapter; - } - else { - this.memoryStorage = {}; - this.storage = (0, local_storage_1.memoryLocalStorageAdapter)(this.memoryStorage); - } - } - } - else { - this.memoryStorage = {}; - this.storage = (0, local_storage_1.memoryLocalStorageAdapter)(this.memoryStorage); - } - if ((0, helpers_1.isBrowser)() && globalThis.BroadcastChannel && this.persistSession && this.storageKey) { - try { - this.broadcastChannel = new globalThis.BroadcastChannel(this.storageKey); - } - catch (e) { - console.error('Failed to create a new BroadcastChannel, multi-tab state changes will not be available', e); - } - (_b = this.broadcastChannel) === null || _b === void 0 ? void 0 : _b.addEventListener('message', async (event) => { - this._debug('received broadcast notification from other tab or client', event); - await this._notifyAllSubscribers(event.data.event, event.data.session, false); // broadcast = false so we don't get an endless loop of messages - }); - } - this.initialize(); - } - _debug(...args) { - if (this.logDebugMessages) { - this.logger(`GoTrueClient@${this.instanceID} (${version_1.version}) ${new Date().toISOString()}`, ...args); - } - return this; - } - /** - * Initializes the client session either from the url or from storage. - * This method is automatically called when instantiating the client, but should also be called - * manually when checking for an error from an auth redirect (oauth, magiclink, password recovery, etc). - */ - async initialize() { - if (this.initializePromise) { - return await this.initializePromise; - } - this.initializePromise = (async () => { - return await this._acquireLock(-1, async () => { - return await this._initialize(); - }); - })(); - return await this.initializePromise; - } - /** - * IMPORTANT: - * 1. Never throw in this method, as it is called from the constructor - * 2. Never return a session from this method as it would be cached over - * the whole lifetime of the client - */ - async _initialize() { - try { - const isPKCEFlow = (0, helpers_1.isBrowser)() ? await this._isPKCEFlow() : false; - this._debug('#_initialize()', 'begin', 'is PKCE flow', isPKCEFlow); - if (isPKCEFlow || (this.detectSessionInUrl && this._isImplicitGrantFlow())) { - const { data, error } = await this._getSessionFromURL(isPKCEFlow); - if (error) { - this._debug('#_initialize()', 'error detecting session from URL', error); - // hacky workaround to keep the existing session if there's an error returned from identity linking - // TODO: once error codes are ready, we should match against it instead of the message - if ((error === null || error === void 0 ? void 0 : error.message) === 'Identity is already linked' || - (error === null || error === void 0 ? void 0 : error.message) === 'Identity is already linked to another user') { - return { error }; - } - // failed login attempt via url, - // remove old session as in verifyOtp, signUp and signInWith* - await this._removeSession(); - return { error }; - } - const { session, redirectType } = data; - this._debug('#_initialize()', 'detected session in URL', session, 'redirect type', redirectType); - await this._saveSession(session); - setTimeout(async () => { - if (redirectType === 'recovery') { - await this._notifyAllSubscribers('PASSWORD_RECOVERY', session); - } - else { - await this._notifyAllSubscribers('SIGNED_IN', session); - } - }, 0); - return { error: null }; - } - // no login attempt via callback url try to recover session from storage - await this._recoverAndRefresh(); - return { error: null }; - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { error }; - } - return { - error: new errors_1.AuthUnknownError('Unexpected error during initialization', error), - }; - } - finally { - await this._handleVisibilityChange(); - this._debug('#_initialize()', 'end'); - } - } - /** - * Creates a new anonymous user. - * - * @returns A session where the is_anonymous claim in the access token JWT set to true - */ - async signInAnonymously(credentials) { - var _a, _b, _c; - try { - await this._removeSession(); - const res = await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/signup`, { - headers: this.headers, - body: { - data: (_b = (_a = credentials === null || credentials === void 0 ? void 0 : credentials.options) === null || _a === void 0 ? void 0 : _a.data) !== null && _b !== void 0 ? _b : {}, - gotrue_meta_security: { captcha_token: (_c = credentials === null || credentials === void 0 ? void 0 : credentials.options) === null || _c === void 0 ? void 0 : _c.captchaToken }, - }, - xform: fetch_1._sessionResponse, - }); - const { data, error } = res; - if (error || !data) { - return { data: { user: null, session: null }, error: error }; - } - const session = data.session; - const user = data.user; - if (data.session) { - await this._saveSession(data.session); - await this._notifyAllSubscribers('SIGNED_IN', session); - } - return { data: { user, session }, error: null }; - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null, session: null }, error }; - } - throw error; - } - } - /** - * Creates a new user. - * - * Be aware that if a user account exists in the system you may get back an - * error message that attempts to hide this information from the user. - * This method has support for PKCE via email signups. The PKCE flow cannot be used when autoconfirm is enabled. - * - * @returns A logged-in session if the server has "autoconfirm" ON - * @returns A user if the server has "autoconfirm" OFF - */ - async signUp(credentials) { - var _a, _b, _c; - try { - await this._removeSession(); - let res; - if ('email' in credentials) { - const { email, password, options } = credentials; - let codeChallenge = null; - let codeChallengeMethod = null; - if (this.flowType === 'pkce') { - ; - [codeChallenge, codeChallengeMethod] = await (0, helpers_1.getCodeChallengeAndMethod)(this.storage, this.storageKey); - } - res = await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/signup`, { - headers: this.headers, - redirectTo: options === null || options === void 0 ? void 0 : options.emailRedirectTo, - body: { - email, - password, - data: (_a = options === null || options === void 0 ? void 0 : options.data) !== null && _a !== void 0 ? _a : {}, - gotrue_meta_security: { captcha_token: options === null || options === void 0 ? void 0 : options.captchaToken }, - code_challenge: codeChallenge, - code_challenge_method: codeChallengeMethod, - }, - xform: fetch_1._sessionResponse, - }); - } - else if ('phone' in credentials) { - const { phone, password, options } = credentials; - res = await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/signup`, { - headers: this.headers, - body: { - phone, - password, - data: (_b = options === null || options === void 0 ? void 0 : options.data) !== null && _b !== void 0 ? _b : {}, - channel: (_c = options === null || options === void 0 ? void 0 : options.channel) !== null && _c !== void 0 ? _c : 'sms', - gotrue_meta_security: { captcha_token: options === null || options === void 0 ? void 0 : options.captchaToken }, - }, - xform: fetch_1._sessionResponse, - }); - } - else { - throw new errors_1.AuthInvalidCredentialsError('You must provide either an email or phone number and a password'); - } - const { data, error } = res; - if (error || !data) { - return { data: { user: null, session: null }, error: error }; - } - const session = data.session; - const user = data.user; - if (data.session) { - await this._saveSession(data.session); - await this._notifyAllSubscribers('SIGNED_IN', session); - } - return { data: { user, session }, error: null }; - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null, session: null }, error }; - } - throw error; - } - } - /** - * Log in an existing user with an email and password or phone and password. - * - * Be aware that you may get back an error message that will not distinguish - * between the cases where the account does not exist or that the - * email/phone and password combination is wrong or that the account can only - * be accessed via social login. - */ - async signInWithPassword(credentials) { - try { - await this._removeSession(); - let res; - if ('email' in credentials) { - const { email, password, options } = credentials; - res = await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/token?grant_type=password`, { - headers: this.headers, - body: { - email, - password, - gotrue_meta_security: { captcha_token: options === null || options === void 0 ? void 0 : options.captchaToken }, - }, - xform: fetch_1._sessionResponsePassword, - }); - } - else if ('phone' in credentials) { - const { phone, password, options } = credentials; - res = await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/token?grant_type=password`, { - headers: this.headers, - body: { - phone, - password, - gotrue_meta_security: { captcha_token: options === null || options === void 0 ? void 0 : options.captchaToken }, - }, - xform: fetch_1._sessionResponsePassword, - }); - } - else { - throw new errors_1.AuthInvalidCredentialsError('You must provide either an email or phone number and a password'); - } - const { data, error } = res; - if (error) { - return { data: { user: null, session: null }, error }; - } - else if (!data || !data.session || !data.user) { - return { data: { user: null, session: null }, error: new errors_1.AuthInvalidTokenResponseError() }; - } - if (data.session) { - await this._saveSession(data.session); - await this._notifyAllSubscribers('SIGNED_IN', data.session); - } - return { - data: Object.assign({ user: data.user, session: data.session }, (data.weak_password ? { weakPassword: data.weak_password } : null)), - error, - }; - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null, session: null }, error }; - } - throw error; - } - } - /** - * Log in an existing user via a third-party provider. - * This method supports the PKCE flow. - */ - async signInWithOAuth(credentials) { - var _a, _b, _c, _d; - await this._removeSession(); - return await this._handleProviderSignIn(credentials.provider, { - redirectTo: (_a = credentials.options) === null || _a === void 0 ? void 0 : _a.redirectTo, - scopes: (_b = credentials.options) === null || _b === void 0 ? void 0 : _b.scopes, - queryParams: (_c = credentials.options) === null || _c === void 0 ? void 0 : _c.queryParams, - skipBrowserRedirect: (_d = credentials.options) === null || _d === void 0 ? void 0 : _d.skipBrowserRedirect, - }); - } - /** - * Log in an existing user by exchanging an Auth Code issued during the PKCE flow. - */ - async exchangeCodeForSession(authCode) { - await this.initializePromise; - return this._acquireLock(-1, async () => { - return this._exchangeCodeForSession(authCode); - }); - } - async _exchangeCodeForSession(authCode) { - const storageItem = await (0, helpers_1.getItemAsync)(this.storage, `${this.storageKey}-code-verifier`); - const [codeVerifier, redirectType] = (storageItem !== null && storageItem !== void 0 ? storageItem : '').split('/'); - const { data, error } = await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/token?grant_type=pkce`, { - headers: this.headers, - body: { - auth_code: authCode, - code_verifier: codeVerifier, - }, - xform: fetch_1._sessionResponse, - }); - await (0, helpers_1.removeItemAsync)(this.storage, `${this.storageKey}-code-verifier`); - if (error) { - return { data: { user: null, session: null, redirectType: null }, error }; - } - else if (!data || !data.session || !data.user) { - return { - data: { user: null, session: null, redirectType: null }, - error: new errors_1.AuthInvalidTokenResponseError(), - }; - } - if (data.session) { - await this._saveSession(data.session); - await this._notifyAllSubscribers('SIGNED_IN', data.session); - } - return { data: Object.assign(Object.assign({}, data), { redirectType: redirectType !== null && redirectType !== void 0 ? redirectType : null }), error }; - } - /** - * Allows signing in with an OIDC ID token. The authentication provider used - * should be enabled and configured. - */ - async signInWithIdToken(credentials) { - await this._removeSession(); - try { - const { options, provider, token, access_token, nonce } = credentials; - const res = await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/token?grant_type=id_token`, { - headers: this.headers, - body: { - provider, - id_token: token, - access_token, - nonce, - gotrue_meta_security: { captcha_token: options === null || options === void 0 ? void 0 : options.captchaToken }, - }, - xform: fetch_1._sessionResponse, - }); - const { data, error } = res; - if (error) { - return { data: { user: null, session: null }, error }; - } - else if (!data || !data.session || !data.user) { - return { - data: { user: null, session: null }, - error: new errors_1.AuthInvalidTokenResponseError(), - }; - } - if (data.session) { - await this._saveSession(data.session); - await this._notifyAllSubscribers('SIGNED_IN', data.session); - } - return { data, error }; - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null, session: null }, error }; - } - throw error; - } - } - /** - * Log in a user using magiclink or a one-time password (OTP). - * - * If the `{{ .ConfirmationURL }}` variable is specified in the email template, a magiclink will be sent. - * If the `{{ .Token }}` variable is specified in the email template, an OTP will be sent. - * If you're using phone sign-ins, only an OTP will be sent. You won't be able to send a magiclink for phone sign-ins. - * - * Be aware that you may get back an error message that will not distinguish - * between the cases where the account does not exist or, that the account - * can only be accessed via social login. - * - * Do note that you will need to configure a Whatsapp sender on Twilio - * if you are using phone sign in with the 'whatsapp' channel. The whatsapp - * channel is not supported on other providers - * at this time. - * This method supports PKCE when an email is passed. - */ - async signInWithOtp(credentials) { - var _a, _b, _c, _d, _e; - try { - await this._removeSession(); - if ('email' in credentials) { - const { email, options } = credentials; - let codeChallenge = null; - let codeChallengeMethod = null; - if (this.flowType === 'pkce') { - ; - [codeChallenge, codeChallengeMethod] = await (0, helpers_1.getCodeChallengeAndMethod)(this.storage, this.storageKey); - } - const { error } = await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/otp`, { - headers: this.headers, - body: { - email, - data: (_a = options === null || options === void 0 ? void 0 : options.data) !== null && _a !== void 0 ? _a : {}, - create_user: (_b = options === null || options === void 0 ? void 0 : options.shouldCreateUser) !== null && _b !== void 0 ? _b : true, - gotrue_meta_security: { captcha_token: options === null || options === void 0 ? void 0 : options.captchaToken }, - code_challenge: codeChallenge, - code_challenge_method: codeChallengeMethod, - }, - redirectTo: options === null || options === void 0 ? void 0 : options.emailRedirectTo, - }); - return { data: { user: null, session: null }, error }; - } - if ('phone' in credentials) { - const { phone, options } = credentials; - const { data, error } = await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/otp`, { - headers: this.headers, - body: { - phone, - data: (_c = options === null || options === void 0 ? void 0 : options.data) !== null && _c !== void 0 ? _c : {}, - create_user: (_d = options === null || options === void 0 ? void 0 : options.shouldCreateUser) !== null && _d !== void 0 ? _d : true, - gotrue_meta_security: { captcha_token: options === null || options === void 0 ? void 0 : options.captchaToken }, - channel: (_e = options === null || options === void 0 ? void 0 : options.channel) !== null && _e !== void 0 ? _e : 'sms', - }, - }); - return { data: { user: null, session: null, messageId: data === null || data === void 0 ? void 0 : data.message_id }, error }; - } - throw new errors_1.AuthInvalidCredentialsError('You must provide either an email or phone number.'); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null, session: null }, error }; - } - throw error; - } - } - /** - * Log in a user given a User supplied OTP or TokenHash received through mobile or email. - */ - async verifyOtp(params) { - var _a, _b; - try { - if (params.type !== 'email_change' && params.type !== 'phone_change') { - // we don't want to remove the authenticated session if the user is performing an email_change or phone_change verification - await this._removeSession(); - } - let redirectTo = undefined; - let captchaToken = undefined; - if ('options' in params) { - redirectTo = (_a = params.options) === null || _a === void 0 ? void 0 : _a.redirectTo; - captchaToken = (_b = params.options) === null || _b === void 0 ? void 0 : _b.captchaToken; - } - const { data, error } = await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/verify`, { - headers: this.headers, - body: Object.assign(Object.assign({}, params), { gotrue_meta_security: { captcha_token: captchaToken } }), - redirectTo, - xform: fetch_1._sessionResponse, - }); - if (error) { - throw error; - } - if (!data) { - throw new Error('An error occurred on token verification.'); - } - const session = data.session; - const user = data.user; - if (session === null || session === void 0 ? void 0 : session.access_token) { - await this._saveSession(session); - await this._notifyAllSubscribers(params.type == 'recovery' ? 'PASSWORD_RECOVERY' : 'SIGNED_IN', session); - } - return { data: { user, session }, error: null }; - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null, session: null }, error }; - } - throw error; - } - } - /** - * Attempts a single-sign on using an enterprise Identity Provider. A - * successful SSO attempt will redirect the current page to the identity - * provider authorization page. The redirect URL is implementation and SSO - * protocol specific. - * - * You can use it by providing a SSO domain. Typically you can extract this - * domain by asking users for their email address. If this domain is - * registered on the Auth instance the redirect will use that organization's - * currently active SSO Identity Provider for the login. - * - * If you have built an organization-specific login page, you can use the - * organization's SSO Identity Provider UUID directly instead. - */ - async signInWithSSO(params) { - var _a, _b, _c; - try { - await this._removeSession(); - let codeChallenge = null; - let codeChallengeMethod = null; - if (this.flowType === 'pkce') { - ; - [codeChallenge, codeChallengeMethod] = await (0, helpers_1.getCodeChallengeAndMethod)(this.storage, this.storageKey); - } - return await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/sso`, { - body: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, ('providerId' in params ? { provider_id: params.providerId } : null)), ('domain' in params ? { domain: params.domain } : null)), { redirect_to: (_b = (_a = params.options) === null || _a === void 0 ? void 0 : _a.redirectTo) !== null && _b !== void 0 ? _b : undefined }), (((_c = params === null || params === void 0 ? void 0 : params.options) === null || _c === void 0 ? void 0 : _c.captchaToken) - ? { gotrue_meta_security: { captcha_token: params.options.captchaToken } } - : null)), { skip_http_redirect: true, code_challenge: codeChallenge, code_challenge_method: codeChallengeMethod }), - headers: this.headers, - xform: fetch_1._ssoResponse, - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: null, error }; - } - throw error; - } - } - /** - * Sends a reauthentication OTP to the user's email or phone number. - * Requires the user to be signed-in. - */ - async reauthenticate() { - await this.initializePromise; - return await this._acquireLock(-1, async () => { - return await this._reauthenticate(); - }); - } - async _reauthenticate() { - try { - return await this._useSession(async (result) => { - const { data: { session }, error: sessionError, } = result; - if (sessionError) - throw sessionError; - if (!session) - throw new errors_1.AuthSessionMissingError(); - const { error } = await (0, fetch_1._request)(this.fetch, 'GET', `${this.url}/reauthenticate`, { - headers: this.headers, - jwt: session.access_token, - }); - return { data: { user: null, session: null }, error }; - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null, session: null }, error }; - } - throw error; - } - } - /** - * Resends an existing signup confirmation email, email change email, SMS OTP or phone change OTP. - */ - async resend(credentials) { - try { - if (credentials.type != 'email_change' && credentials.type != 'phone_change') { - await this._removeSession(); - } - const endpoint = `${this.url}/resend`; - if ('email' in credentials) { - const { email, type, options } = credentials; - const { error } = await (0, fetch_1._request)(this.fetch, 'POST', endpoint, { - headers: this.headers, - body: { - email, - type, - gotrue_meta_security: { captcha_token: options === null || options === void 0 ? void 0 : options.captchaToken }, - }, - redirectTo: options === null || options === void 0 ? void 0 : options.emailRedirectTo, - }); - return { data: { user: null, session: null }, error }; - } - else if ('phone' in credentials) { - const { phone, type, options } = credentials; - const { data, error } = await (0, fetch_1._request)(this.fetch, 'POST', endpoint, { - headers: this.headers, - body: { - phone, - type, - gotrue_meta_security: { captcha_token: options === null || options === void 0 ? void 0 : options.captchaToken }, - }, - }); - return { data: { user: null, session: null, messageId: data === null || data === void 0 ? void 0 : data.message_id }, error }; - } - throw new errors_1.AuthInvalidCredentialsError('You must provide either an email or phone number and a type'); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null, session: null }, error }; - } - throw error; - } - } - /** - * Returns the session, refreshing it if necessary. - * - * The session returned can be null if the session is not detected which can happen in the event a user is not signed-in or has logged out. - * - * **IMPORTANT:** This method loads values directly from the storage attached - * to the client. If that storage is based on request cookies for example, - * the values in it may not be authentic and therefore it's strongly advised - * against using this method and its results in such circumstances. A warning - * will be emitted if this is detected. Use {@link #getUser()} instead. - */ - async getSession() { - await this.initializePromise; - const result = await this._acquireLock(-1, async () => { - return this._useSession(async (result) => { - return result; - }); - }); - if (result.data && this.storage.isServer) { - if (!this.insecureGetSessionWarningShown) { - console.warn('Using supabase.auth.getSession() is potentially insecure as it loads data directly from the storage medium (typically cookies) which may not be authentic. Prefer using supabase.auth.getUser() instead. To suppress this warning call supabase.auth.getUser() before you call supabase.auth.getSession().'); - this.insecureGetSessionWarningShown = true; - } - } - return result; - } - /** - * Acquires a global lock based on the storage key. - */ - async _acquireLock(acquireTimeout, fn) { - this._debug('#_acquireLock', 'begin', acquireTimeout); - try { - if (this.lockAcquired) { - const last = this.pendingInLock.length - ? this.pendingInLock[this.pendingInLock.length - 1] - : Promise.resolve(); - const result = (async () => { - await last; - return await fn(); - })(); - this.pendingInLock.push((async () => { - try { - await result; - } - catch (e) { - // we just care if it finished - } - })()); - return result; - } - return await this.lock(`lock:${this.storageKey}`, acquireTimeout, async () => { - this._debug('#_acquireLock', 'lock acquired for storage key', this.storageKey); - try { - this.lockAcquired = true; - const result = fn(); - this.pendingInLock.push((async () => { - try { - await result; - } - catch (e) { - // we just care if it finished - } - })()); - await result; - // keep draining the queue until there's nothing to wait on - while (this.pendingInLock.length) { - const waitOn = [...this.pendingInLock]; - await Promise.all(waitOn); - this.pendingInLock.splice(0, waitOn.length); - } - return await result; - } - finally { - this._debug('#_acquireLock', 'lock released for storage key', this.storageKey); - this.lockAcquired = false; - } - }); - } - finally { - this._debug('#_acquireLock', 'end'); - } - } - /** - * Use instead of {@link #getSession} inside the library. It is - * semantically usually what you want, as getting a session involves some - * processing afterwards that requires only one client operating on the - * session at once across multiple tabs or processes. - */ - async _useSession(fn) { - this._debug('#_useSession', 'begin'); - try { - // the use of __loadSession here is the only correct use of the function! - const result = await this.__loadSession(); - return await fn(result); - } - finally { - this._debug('#_useSession', 'end'); - } - } - /** - * NEVER USE DIRECTLY! - * - * Always use {@link #_useSession}. - */ - async __loadSession() { - this._debug('#__loadSession()', 'begin'); - if (!this.lockAcquired) { - this._debug('#__loadSession()', 'used outside of an acquired lock!', new Error().stack); - } - try { - let currentSession = null; - const maybeSession = await (0, helpers_1.getItemAsync)(this.storage, this.storageKey); - this._debug('#getSession()', 'session from storage', maybeSession); - if (maybeSession !== null) { - if (this._isValidSession(maybeSession)) { - currentSession = maybeSession; - } - else { - this._debug('#getSession()', 'session from storage is not valid'); - await this._removeSession(); - } - } - if (!currentSession) { - return { data: { session: null }, error: null }; - } - const hasExpired = currentSession.expires_at - ? currentSession.expires_at <= Date.now() / 1000 - : false; - this._debug('#__loadSession()', `session has${hasExpired ? '' : ' not'} expired`, 'expires_at', currentSession.expires_at); - if (!hasExpired) { - if (this.storage.isServer) { - let user = currentSession.user; - delete currentSession.user; - Object.defineProperty(currentSession, 'user', { - enumerable: true, - get: () => { - if (!currentSession.__suppressUserWarning) { - // do not suppress this warning if insecureGetSessionWarningShown is true, as the data is still not authenticated - console.warn('Using the user object as returned from supabase.auth.getSession() or from some supabase.auth.onAuthStateChange() events could be insecure! This value comes directly from the storage medium (usually cookies on the server) and many not be authentic. Use supabase.auth.getUser() instead which authenticates the data by contacting the Supabase Auth server.'); - } - return user; - }, - set: (value) => { - user = value; - }, - }); - } - return { data: { session: currentSession }, error: null }; - } - const { session, error } = await this._callRefreshToken(currentSession.refresh_token); - if (error) { - return { data: { session: null }, error }; - } - return { data: { session }, error: null }; - } - finally { - this._debug('#__loadSession()', 'end'); - } - } - /** - * Gets the current user details if there is an existing session. This method - * performs a network request to the Supabase Auth server, so the returned - * value is authentic and can be used to base authorization rules on. - * - * @param jwt Takes in an optional access token JWT. If no JWT is provided, the JWT from the current session is used. - */ - async getUser(jwt) { - if (jwt) { - return await this._getUser(jwt); - } - await this.initializePromise; - const result = await this._acquireLock(-1, async () => { - return await this._getUser(); - }); - if (result.data && this.storage.isServer) { - // no longer emit the insecure warning for getSession() as the access_token is now authenticated - this.insecureGetSessionWarningShown = true; - } - return result; - } - async _getUser(jwt) { - try { - if (jwt) { - return await (0, fetch_1._request)(this.fetch, 'GET', `${this.url}/user`, { - headers: this.headers, - jwt: jwt, - xform: fetch_1._userResponse, - }); - } - return await this._useSession(async (result) => { - var _a, _b; - const { data, error } = result; - if (error) { - throw error; - } - return await (0, fetch_1._request)(this.fetch, 'GET', `${this.url}/user`, { - headers: this.headers, - jwt: (_b = (_a = data.session) === null || _a === void 0 ? void 0 : _a.access_token) !== null && _b !== void 0 ? _b : undefined, - xform: fetch_1._userResponse, - }); - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null }, error }; - } - throw error; - } - } - /** - * Updates user data for a logged in user. - */ - async updateUser(attributes, options = {}) { - await this.initializePromise; - return await this._acquireLock(-1, async () => { - return await this._updateUser(attributes, options); - }); - } - async _updateUser(attributes, options = {}) { - try { - return await this._useSession(async (result) => { - const { data: sessionData, error: sessionError } = result; - if (sessionError) { - throw sessionError; - } - if (!sessionData.session) { - throw new errors_1.AuthSessionMissingError(); - } - const session = sessionData.session; - let codeChallenge = null; - let codeChallengeMethod = null; - if (this.flowType === 'pkce' && attributes.email != null) { - ; - [codeChallenge, codeChallengeMethod] = await (0, helpers_1.getCodeChallengeAndMethod)(this.storage, this.storageKey); - } - const { data, error: userError } = await (0, fetch_1._request)(this.fetch, 'PUT', `${this.url}/user`, { - headers: this.headers, - redirectTo: options === null || options === void 0 ? void 0 : options.emailRedirectTo, - body: Object.assign(Object.assign({}, attributes), { code_challenge: codeChallenge, code_challenge_method: codeChallengeMethod }), - jwt: session.access_token, - xform: fetch_1._userResponse, - }); - if (userError) - throw userError; - session.user = data.user; - await this._saveSession(session); - await this._notifyAllSubscribers('USER_UPDATED', session); - return { data: { user: session.user }, error: null }; - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null }, error }; - } - throw error; - } - } - /** - * Decodes a JWT (without performing any validation). - */ - _decodeJWT(jwt) { - return (0, helpers_1.decodeJWTPayload)(jwt); - } - /** - * Sets the session data from the current session. If the current session is expired, setSession will take care of refreshing it to obtain a new session. - * If the refresh token or access token in the current session is invalid, an error will be thrown. - * @param currentSession The current session that minimally contains an access token and refresh token. - */ - async setSession(currentSession) { - await this.initializePromise; - return await this._acquireLock(-1, async () => { - return await this._setSession(currentSession); - }); - } - async _setSession(currentSession) { - try { - if (!currentSession.access_token || !currentSession.refresh_token) { - throw new errors_1.AuthSessionMissingError(); - } - const timeNow = Date.now() / 1000; - let expiresAt = timeNow; - let hasExpired = true; - let session = null; - const payload = (0, helpers_1.decodeJWTPayload)(currentSession.access_token); - if (payload.exp) { - expiresAt = payload.exp; - hasExpired = expiresAt <= timeNow; - } - if (hasExpired) { - const { session: refreshedSession, error } = await this._callRefreshToken(currentSession.refresh_token); - if (error) { - return { data: { user: null, session: null }, error: error }; - } - if (!refreshedSession) { - return { data: { user: null, session: null }, error: null }; - } - session = refreshedSession; - } - else { - const { data, error } = await this._getUser(currentSession.access_token); - if (error) { - throw error; - } - session = { - access_token: currentSession.access_token, - refresh_token: currentSession.refresh_token, - user: data.user, - token_type: 'bearer', - expires_in: expiresAt - timeNow, - expires_at: expiresAt, - }; - await this._saveSession(session); - await this._notifyAllSubscribers('SIGNED_IN', session); - } - return { data: { user: session.user, session }, error: null }; - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { session: null, user: null }, error }; - } - throw error; - } - } - /** - * Returns a new session, regardless of expiry status. - * Takes in an optional current session. If not passed in, then refreshSession() will attempt to retrieve it from getSession(). - * If the current session's refresh token is invalid, an error will be thrown. - * @param currentSession The current session. If passed in, it must contain a refresh token. - */ - async refreshSession(currentSession) { - await this.initializePromise; - return await this._acquireLock(-1, async () => { - return await this._refreshSession(currentSession); - }); - } - async _refreshSession(currentSession) { - try { - return await this._useSession(async (result) => { - var _a; - if (!currentSession) { - const { data, error } = result; - if (error) { - throw error; - } - currentSession = (_a = data.session) !== null && _a !== void 0 ? _a : undefined; - } - if (!(currentSession === null || currentSession === void 0 ? void 0 : currentSession.refresh_token)) { - throw new errors_1.AuthSessionMissingError(); - } - const { session, error } = await this._callRefreshToken(currentSession.refresh_token); - if (error) { - return { data: { user: null, session: null }, error: error }; - } - if (!session) { - return { data: { user: null, session: null }, error: null }; - } - return { data: { user: session.user, session }, error: null }; - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { user: null, session: null }, error }; - } - throw error; - } - } - /** - * Gets the session data from a URL string - */ - async _getSessionFromURL(isPKCEFlow) { - try { - if (!(0, helpers_1.isBrowser)()) - throw new errors_1.AuthImplicitGrantRedirectError('No browser detected.'); - if (this.flowType === 'implicit' && !this._isImplicitGrantFlow()) { - throw new errors_1.AuthImplicitGrantRedirectError('Not a valid implicit grant flow url.'); - } - else if (this.flowType == 'pkce' && !isPKCEFlow) { - throw new errors_1.AuthPKCEGrantCodeExchangeError('Not a valid PKCE flow url.'); - } - const params = (0, helpers_1.parseParametersFromURL)(window.location.href); - if (isPKCEFlow) { - if (!params.code) - throw new errors_1.AuthPKCEGrantCodeExchangeError('No code detected.'); - const { data, error } = await this._exchangeCodeForSession(params.code); - if (error) - throw error; - const url = new URL(window.location.href); - url.searchParams.delete('code'); - window.history.replaceState(window.history.state, '', url.toString()); - return { data: { session: data.session, redirectType: null }, error: null }; - } - if (params.error || params.error_description || params.error_code) { - throw new errors_1.AuthImplicitGrantRedirectError(params.error_description || 'Error in URL with unspecified error_description', { - error: params.error || 'unspecified_error', - code: params.error_code || 'unspecified_code', - }); - } - const { provider_token, provider_refresh_token, access_token, refresh_token, expires_in, expires_at, token_type, } = params; - if (!access_token || !expires_in || !refresh_token || !token_type) { - throw new errors_1.AuthImplicitGrantRedirectError('No session defined in URL'); - } - const timeNow = Math.round(Date.now() / 1000); - const expiresIn = parseInt(expires_in); - let expiresAt = timeNow + expiresIn; - if (expires_at) { - expiresAt = parseInt(expires_at); - } - const actuallyExpiresIn = expiresAt - timeNow; - if (actuallyExpiresIn * 1000 <= AUTO_REFRESH_TICK_DURATION) { - console.warn(`@supabase/gotrue-js: Session as retrieved from URL expires in ${actuallyExpiresIn}s, should have been closer to ${expiresIn}s`); - } - const issuedAt = expiresAt - expiresIn; - if (timeNow - issuedAt >= 120) { - console.warn('@supabase/gotrue-js: Session as retrieved from URL was issued over 120s ago, URL could be stale', issuedAt, expiresAt, timeNow); - } - else if (timeNow - issuedAt < 0) { - console.warn('@supabase/gotrue-js: Session as retrieved from URL was issued in the future? Check the device clok for skew', issuedAt, expiresAt, timeNow); - } - const { data, error } = await this._getUser(access_token); - if (error) - throw error; - const session = { - provider_token, - provider_refresh_token, - access_token, - expires_in: expiresIn, - expires_at: expiresAt, - refresh_token, - token_type, - user: data.user, - }; - // Remove tokens from URL - window.location.hash = ''; - this._debug('#_getSessionFromURL()', 'clearing window.location.hash'); - return { data: { session, redirectType: params.type }, error: null }; - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { session: null, redirectType: null }, error }; - } - throw error; - } - } - /** - * Checks if the current URL contains parameters given by an implicit oauth grant flow (https://www.rfc-editor.org/rfc/rfc6749.html#section-4.2) - */ - _isImplicitGrantFlow() { - const params = (0, helpers_1.parseParametersFromURL)(window.location.href); - return !!((0, helpers_1.isBrowser)() && (params.access_token || params.error_description)); - } - /** - * Checks if the current URL and backing storage contain parameters given by a PKCE flow - */ - async _isPKCEFlow() { - const params = (0, helpers_1.parseParametersFromURL)(window.location.href); - const currentStorageContent = await (0, helpers_1.getItemAsync)(this.storage, `${this.storageKey}-code-verifier`); - return !!(params.code && currentStorageContent); - } - /** - * Inside a browser context, `signOut()` will remove the logged in user from the browser session and log them out - removing all items from localstorage and then trigger a `"SIGNED_OUT"` event. - * - * For server-side management, you can revoke all refresh tokens for a user by passing a user's JWT through to `auth.api.signOut(JWT: string)`. - * There is no way to revoke a user's access token jwt until it expires. It is recommended to set a shorter expiry on the jwt for this reason. - * - * If using `others` scope, no `SIGNED_OUT` event is fired! - */ - async signOut(options = { scope: 'global' }) { - await this.initializePromise; - return await this._acquireLock(-1, async () => { - return await this._signOut(options); - }); - } - async _signOut({ scope } = { scope: 'global' }) { - return await this._useSession(async (result) => { - var _a; - const { data, error: sessionError } = result; - if (sessionError) { - return { error: sessionError }; - } - const accessToken = (_a = data.session) === null || _a === void 0 ? void 0 : _a.access_token; - if (accessToken) { - const { error } = await this.admin.signOut(accessToken, scope); - if (error) { - // ignore 404s since user might not exist anymore - // ignore 401s since an invalid or expired JWT should sign out the current session - if (!((0, errors_1.isAuthApiError)(error) && (error.status === 404 || error.status === 401))) { - return { error }; - } - } - } - if (scope !== 'others') { - await this._removeSession(); - await (0, helpers_1.removeItemAsync)(this.storage, `${this.storageKey}-code-verifier`); - await this._notifyAllSubscribers('SIGNED_OUT', null); - } - return { error: null }; - }); - } - /** - * Receive a notification every time an auth event happens. - * @param callback A callback function to be invoked when an auth event happens. - */ - onAuthStateChange(callback) { - const id = (0, helpers_1.uuid)(); - const subscription = { - id, - callback, - unsubscribe: () => { - this._debug('#unsubscribe()', 'state change callback with id removed', id); - this.stateChangeEmitters.delete(id); - }, - }; - this._debug('#onAuthStateChange()', 'registered callback with id', id); - this.stateChangeEmitters.set(id, subscription); - (async () => { - await this.initializePromise; - await this._acquireLock(-1, async () => { - this._emitInitialSession(id); - }); - })(); - return { data: { subscription } }; - } - async _emitInitialSession(id) { - return await this._useSession(async (result) => { - var _a, _b; - try { - const { data: { session }, error, } = result; - if (error) - throw error; - await ((_a = this.stateChangeEmitters.get(id)) === null || _a === void 0 ? void 0 : _a.callback('INITIAL_SESSION', session)); - this._debug('INITIAL_SESSION', 'callback id', id, 'session', session); - } - catch (err) { - await ((_b = this.stateChangeEmitters.get(id)) === null || _b === void 0 ? void 0 : _b.callback('INITIAL_SESSION', null)); - this._debug('INITIAL_SESSION', 'callback id', id, 'error', err); - console.error(err); - } - }); - } - /** - * Sends a password reset request to an email address. This method supports the PKCE flow. - * - * @param email The email address of the user. - * @param options.redirectTo The URL to send the user to after they click the password reset link. - * @param options.captchaToken Verification token received when the user completes the captcha on the site. - */ - async resetPasswordForEmail(email, options = {}) { - let codeChallenge = null; - let codeChallengeMethod = null; - if (this.flowType === 'pkce') { - ; - [codeChallenge, codeChallengeMethod] = await (0, helpers_1.getCodeChallengeAndMethod)(this.storage, this.storageKey, true // isPasswordRecovery - ); - } - try { - return await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/recover`, { - body: { - email, - code_challenge: codeChallenge, - code_challenge_method: codeChallengeMethod, - gotrue_meta_security: { captcha_token: options.captchaToken }, - }, - headers: this.headers, - redirectTo: options.redirectTo, - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: null, error }; - } - throw error; - } - } - /** - * Gets all the identities linked to a user. - */ - async getUserIdentities() { - var _a; - try { - const { data, error } = await this.getUser(); - if (error) - throw error; - return { data: { identities: (_a = data.user.identities) !== null && _a !== void 0 ? _a : [] }, error: null }; - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: null, error }; - } - throw error; - } - } - /** - * Links an oauth identity to an existing user. - * This method supports the PKCE flow. - */ - async linkIdentity(credentials) { - var _a; - try { - const { data, error } = await this._useSession(async (result) => { - var _a, _b, _c, _d, _e; - const { data, error } = result; - if (error) - throw error; - const url = await this._getUrlForProvider(`${this.url}/user/identities/authorize`, credentials.provider, { - redirectTo: (_a = credentials.options) === null || _a === void 0 ? void 0 : _a.redirectTo, - scopes: (_b = credentials.options) === null || _b === void 0 ? void 0 : _b.scopes, - queryParams: (_c = credentials.options) === null || _c === void 0 ? void 0 : _c.queryParams, - skipBrowserRedirect: true, - }); - return await (0, fetch_1._request)(this.fetch, 'GET', url, { - headers: this.headers, - jwt: (_e = (_d = data.session) === null || _d === void 0 ? void 0 : _d.access_token) !== null && _e !== void 0 ? _e : undefined, - }); - }); - if (error) - throw error; - if ((0, helpers_1.isBrowser)() && !((_a = credentials.options) === null || _a === void 0 ? void 0 : _a.skipBrowserRedirect)) { - window.location.assign(data === null || data === void 0 ? void 0 : data.url); - } - return { data: { provider: credentials.provider, url: data === null || data === void 0 ? void 0 : data.url }, error: null }; - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: { provider: credentials.provider, url: null }, error }; - } - throw error; - } - } - /** - * Unlinks an identity from a user by deleting it. The user will no longer be able to sign in with that identity once it's unlinked. - */ - async unlinkIdentity(identity) { - try { - return await this._useSession(async (result) => { - var _a, _b; - const { data, error } = result; - if (error) { - throw error; - } - return await (0, fetch_1._request)(this.fetch, 'DELETE', `${this.url}/user/identities/${identity.identity_id}`, { - headers: this.headers, - jwt: (_b = (_a = data.session) === null || _a === void 0 ? void 0 : _a.access_token) !== null && _b !== void 0 ? _b : undefined, - }); - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: null, error }; - } - throw error; - } - } - /** - * Generates a new JWT. - * @param refreshToken A valid refresh token that was returned on login. - */ - async _refreshAccessToken(refreshToken) { - const debugName = `#_refreshAccessToken(${refreshToken.substring(0, 5)}...)`; - this._debug(debugName, 'begin'); - try { - const startedAt = Date.now(); - // will attempt to refresh the token with exponential backoff - return await (0, helpers_1.retryable)(async (attempt) => { - await (0, helpers_1.sleep)(attempt * 200); // 0, 200, 400, 800, ... - this._debug(debugName, 'refreshing attempt', attempt); - return await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/token?grant_type=refresh_token`, { - body: { refresh_token: refreshToken }, - headers: this.headers, - xform: fetch_1._sessionResponse, - }); - }, (attempt, _, result) => result && - result.error && - (0, errors_1.isAuthRetryableFetchError)(result.error) && - // retryable only if the request can be sent before the backoff overflows the tick duration - Date.now() + (attempt + 1) * 200 - startedAt < AUTO_REFRESH_TICK_DURATION); - } - catch (error) { - this._debug(debugName, 'error', error); - if ((0, errors_1.isAuthError)(error)) { - return { data: { session: null, user: null }, error }; - } - throw error; - } - finally { - this._debug(debugName, 'end'); - } - } - _isValidSession(maybeSession) { - const isValidSession = typeof maybeSession === 'object' && - maybeSession !== null && - 'access_token' in maybeSession && - 'refresh_token' in maybeSession && - 'expires_at' in maybeSession; - return isValidSession; - } - async _handleProviderSignIn(provider, options) { - const url = await this._getUrlForProvider(`${this.url}/authorize`, provider, { - redirectTo: options.redirectTo, - scopes: options.scopes, - queryParams: options.queryParams, - }); - this._debug('#_handleProviderSignIn()', 'provider', provider, 'options', options, 'url', url); - // try to open on the browser - if ((0, helpers_1.isBrowser)() && !options.skipBrowserRedirect) { - window.location.assign(url); - } - return { data: { provider, url }, error: null }; - } - /** - * Recovers the session from LocalStorage and refreshes - * Note: this method is async to accommodate for AsyncStorage e.g. in React native. - */ - async _recoverAndRefresh() { - var _a; - const debugName = '#_recoverAndRefresh()'; - this._debug(debugName, 'begin'); - try { - const currentSession = await (0, helpers_1.getItemAsync)(this.storage, this.storageKey); - this._debug(debugName, 'session from storage', currentSession); - if (!this._isValidSession(currentSession)) { - this._debug(debugName, 'session is not valid'); - if (currentSession !== null) { - await this._removeSession(); - } - return; - } - const timeNow = Math.round(Date.now() / 1000); - const expiresWithMargin = ((_a = currentSession.expires_at) !== null && _a !== void 0 ? _a : Infinity) < timeNow + constants_1.EXPIRY_MARGIN; - this._debug(debugName, `session has${expiresWithMargin ? '' : ' not'} expired with margin of ${constants_1.EXPIRY_MARGIN}s`); - if (expiresWithMargin) { - if (this.autoRefreshToken && currentSession.refresh_token) { - const { error } = await this._callRefreshToken(currentSession.refresh_token); - if (error) { - console.error(error); - if (!(0, errors_1.isAuthRetryableFetchError)(error)) { - this._debug(debugName, 'refresh failed with a non-retryable error, removing the session', error); - await this._removeSession(); - } - } - } - } - else { - // no need to persist currentSession again, as we just loaded it from - // local storage; persisting it again may overwrite a value saved by - // another client with access to the same local storage - await this._notifyAllSubscribers('SIGNED_IN', currentSession); - } - } - catch (err) { - this._debug(debugName, 'error', err); - console.error(err); - return; - } - finally { - this._debug(debugName, 'end'); - } - } - async _callRefreshToken(refreshToken) { - var _a, _b; - if (!refreshToken) { - throw new errors_1.AuthSessionMissingError(); - } - // refreshing is already in progress - if (this.refreshingDeferred) { - return this.refreshingDeferred.promise; - } - const debugName = `#_callRefreshToken(${refreshToken.substring(0, 5)}...)`; - this._debug(debugName, 'begin'); - try { - this.refreshingDeferred = new helpers_1.Deferred(); - const { data, error } = await this._refreshAccessToken(refreshToken); - if (error) - throw error; - if (!data.session) - throw new errors_1.AuthSessionMissingError(); - await this._saveSession(data.session); - await this._notifyAllSubscribers('TOKEN_REFRESHED', data.session); - const result = { session: data.session, error: null }; - this.refreshingDeferred.resolve(result); - return result; - } - catch (error) { - this._debug(debugName, 'error', error); - if ((0, errors_1.isAuthError)(error)) { - const result = { session: null, error }; - if (!(0, errors_1.isAuthRetryableFetchError)(error)) { - await this._removeSession(); - await this._notifyAllSubscribers('SIGNED_OUT', null); - } - (_a = this.refreshingDeferred) === null || _a === void 0 ? void 0 : _a.resolve(result); - return result; - } - (_b = this.refreshingDeferred) === null || _b === void 0 ? void 0 : _b.reject(error); - throw error; - } - finally { - this.refreshingDeferred = null; - this._debug(debugName, 'end'); - } - } - async _notifyAllSubscribers(event, session, broadcast = true) { - const debugName = `#_notifyAllSubscribers(${event})`; - this._debug(debugName, 'begin', session, `broadcast = ${broadcast}`); - try { - if (this.broadcastChannel && broadcast) { - this.broadcastChannel.postMessage({ event, session }); - } - const errors = []; - const promises = Array.from(this.stateChangeEmitters.values()).map(async (x) => { - try { - await x.callback(event, session); - } - catch (e) { - errors.push(e); - } - }); - await Promise.all(promises); - if (errors.length > 0) { - for (let i = 0; i < errors.length; i += 1) { - console.error(errors[i]); - } - throw errors[0]; - } - } - finally { - this._debug(debugName, 'end'); - } - } - /** - * set currentSession and currentUser - * process to _startAutoRefreshToken if possible - */ - async _saveSession(session) { - this._debug('#_saveSession()', session); - await (0, helpers_1.setItemAsync)(this.storage, this.storageKey, session); - } - async _removeSession() { - this._debug('#_removeSession()'); - await (0, helpers_1.removeItemAsync)(this.storage, this.storageKey); - } - /** - * Removes any registered visibilitychange callback. - * - * {@see #startAutoRefresh} - * {@see #stopAutoRefresh} - */ - _removeVisibilityChangedCallback() { - this._debug('#_removeVisibilityChangedCallback()'); - const callback = this.visibilityChangedCallback; - this.visibilityChangedCallback = null; - try { - if (callback && (0, helpers_1.isBrowser)() && (window === null || window === void 0 ? void 0 : window.removeEventListener)) { - window.removeEventListener('visibilitychange', callback); - } - } - catch (e) { - console.error('removing visibilitychange callback failed', e); - } - } - /** - * This is the private implementation of {@link #startAutoRefresh}. Use this - * within the library. - */ - async _startAutoRefresh() { - await this._stopAutoRefresh(); - this._debug('#_startAutoRefresh()'); - const ticker = setInterval(() => this._autoRefreshTokenTick(), AUTO_REFRESH_TICK_DURATION); - this.autoRefreshTicker = ticker; - if (ticker && typeof ticker === 'object' && typeof ticker.unref === 'function') { - // ticker is a NodeJS Timeout object that has an `unref` method - // https://nodejs.org/api/timers.html#timeoutunref - // When auto refresh is used in NodeJS (like for testing) the - // `setInterval` is preventing the process from being marked as - // finished and tests run endlessly. This can be prevented by calling - // `unref()` on the returned object. - ticker.unref(); - // @ts-ignore - } - else if (typeof Deno !== 'undefined' && typeof Deno.unrefTimer === 'function') { - // similar like for NodeJS, but with the Deno API - // https://deno.land/api@latest?unstable&s=Deno.unrefTimer - // @ts-ignore - Deno.unrefTimer(ticker); - } - // run the tick immediately, but in the next pass of the event loop so that - // #_initialize can be allowed to complete without recursively waiting on - // itself - setTimeout(async () => { - await this.initializePromise; - await this._autoRefreshTokenTick(); - }, 0); - } - /** - * This is the private implementation of {@link #stopAutoRefresh}. Use this - * within the library. - */ - async _stopAutoRefresh() { - this._debug('#_stopAutoRefresh()'); - const ticker = this.autoRefreshTicker; - this.autoRefreshTicker = null; - if (ticker) { - clearInterval(ticker); - } - } - /** - * Starts an auto-refresh process in the background. The session is checked - * every few seconds. Close to the time of expiration a process is started to - * refresh the session. If refreshing fails it will be retried for as long as - * necessary. - * - * If you set the {@link GoTrueClientOptions#autoRefreshToken} you don't need - * to call this function, it will be called for you. - * - * On browsers the refresh process works only when the tab/window is in the - * foreground to conserve resources as well as prevent race conditions and - * flooding auth with requests. If you call this method any managed - * visibility change callback will be removed and you must manage visibility - * changes on your own. - * - * On non-browser platforms the refresh process works *continuously* in the - * background, which may not be desirable. You should hook into your - * platform's foreground indication mechanism and call these methods - * appropriately to conserve resources. - * - * {@see #stopAutoRefresh} - */ - async startAutoRefresh() { - this._removeVisibilityChangedCallback(); - await this._startAutoRefresh(); - } - /** - * Stops an active auto refresh process running in the background (if any). - * - * If you call this method any managed visibility change callback will be - * removed and you must manage visibility changes on your own. - * - * See {@link #startAutoRefresh} for more details. - */ - async stopAutoRefresh() { - this._removeVisibilityChangedCallback(); - await this._stopAutoRefresh(); - } - /** - * Runs the auto refresh token tick. - */ - async _autoRefreshTokenTick() { - this._debug('#_autoRefreshTokenTick()', 'begin'); - try { - await this._acquireLock(0, async () => { - try { - const now = Date.now(); - try { - return await this._useSession(async (result) => { - const { data: { session }, } = result; - if (!session || !session.refresh_token || !session.expires_at) { - this._debug('#_autoRefreshTokenTick()', 'no session'); - return; - } - // session will expire in this many ticks (or has already expired if <= 0) - const expiresInTicks = Math.floor((session.expires_at * 1000 - now) / AUTO_REFRESH_TICK_DURATION); - this._debug('#_autoRefreshTokenTick()', `access token expires in ${expiresInTicks} ticks, a tick lasts ${AUTO_REFRESH_TICK_DURATION}ms, refresh threshold is ${AUTO_REFRESH_TICK_THRESHOLD} ticks`); - if (expiresInTicks <= AUTO_REFRESH_TICK_THRESHOLD) { - await this._callRefreshToken(session.refresh_token); - } - }); - } - catch (e) { - console.error('Auto refresh tick failed with error. This is likely a transient error.', e); - } - } - finally { - this._debug('#_autoRefreshTokenTick()', 'end'); - } - }); - } - catch (e) { - if (e.isAcquireTimeout || e instanceof locks_1.LockAcquireTimeoutError) { - this._debug('auto refresh token tick lock not available'); - } - else { - throw e; - } - } - } - /** - * Registers callbacks on the browser / platform, which in-turn run - * algorithms when the browser window/tab are in foreground. On non-browser - * platforms it assumes always foreground. - */ - async _handleVisibilityChange() { - this._debug('#_handleVisibilityChange()'); - if (!(0, helpers_1.isBrowser)() || !(window === null || window === void 0 ? void 0 : window.addEventListener)) { - if (this.autoRefreshToken) { - // in non-browser environments the refresh token ticker runs always - this.startAutoRefresh(); - } - return false; - } - try { - this.visibilityChangedCallback = async () => await this._onVisibilityChanged(false); - window === null || window === void 0 ? void 0 : window.addEventListener('visibilitychange', this.visibilityChangedCallback); - // now immediately call the visbility changed callback to setup with the - // current visbility state - await this._onVisibilityChanged(true); // initial call - } - catch (error) { - console.error('_handleVisibilityChange', error); - } - } - /** - * Callback registered with `window.addEventListener('visibilitychange')`. - */ - async _onVisibilityChanged(calledFromInitialize) { - const methodName = `#_onVisibilityChanged(${calledFromInitialize})`; - this._debug(methodName, 'visibilityState', document.visibilityState); - if (document.visibilityState === 'visible') { - if (this.autoRefreshToken) { - // in browser environments the refresh token ticker runs only on focused tabs - // which prevents race conditions - this._startAutoRefresh(); - } - if (!calledFromInitialize) { - // called when the visibility has changed, i.e. the browser - // transitioned from hidden -> visible so we need to see if the session - // should be recovered immediately... but to do that we need to acquire - // the lock first asynchronously - await this.initializePromise; - await this._acquireLock(-1, async () => { - if (document.visibilityState !== 'visible') { - this._debug(methodName, 'acquired the lock to recover the session, but the browser visibilityState is no longer visible, aborting'); - // visibility has changed while waiting for the lock, abort - return; - } - // recover the session - await this._recoverAndRefresh(); - }); - } - } - else if (document.visibilityState === 'hidden') { - if (this.autoRefreshToken) { - this._stopAutoRefresh(); - } - } - } - /** - * Generates the relevant login URL for a third-party provider. - * @param options.redirectTo A URL or mobile address to send the user to after they are confirmed. - * @param options.scopes A space-separated list of scopes granted to the OAuth application. - * @param options.queryParams An object of key-value pairs containing query parameters granted to the OAuth application. - */ - async _getUrlForProvider(url, provider, options) { - const urlParams = [`provider=${encodeURIComponent(provider)}`]; - if (options === null || options === void 0 ? void 0 : options.redirectTo) { - urlParams.push(`redirect_to=${encodeURIComponent(options.redirectTo)}`); - } - if (options === null || options === void 0 ? void 0 : options.scopes) { - urlParams.push(`scopes=${encodeURIComponent(options.scopes)}`); - } - if (this.flowType === 'pkce') { - const [codeChallenge, codeChallengeMethod] = await (0, helpers_1.getCodeChallengeAndMethod)(this.storage, this.storageKey); - const flowParams = new URLSearchParams({ - code_challenge: `${encodeURIComponent(codeChallenge)}`, - code_challenge_method: `${encodeURIComponent(codeChallengeMethod)}`, - }); - urlParams.push(flowParams.toString()); - } - if (options === null || options === void 0 ? void 0 : options.queryParams) { - const query = new URLSearchParams(options.queryParams); - urlParams.push(query.toString()); - } - if (options === null || options === void 0 ? void 0 : options.skipBrowserRedirect) { - urlParams.push(`skip_http_redirect=${options.skipBrowserRedirect}`); - } - return `${url}?${urlParams.join('&')}`; - } - async _unenroll(params) { - try { - return await this._useSession(async (result) => { - var _a; - const { data: sessionData, error: sessionError } = result; - if (sessionError) { - return { data: null, error: sessionError }; - } - return await (0, fetch_1._request)(this.fetch, 'DELETE', `${this.url}/factors/${params.factorId}`, { - headers: this.headers, - jwt: (_a = sessionData === null || sessionData === void 0 ? void 0 : sessionData.session) === null || _a === void 0 ? void 0 : _a.access_token, - }); - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: null, error }; - } - throw error; - } - } - /** - * {@see GoTrueMFAApi#enroll} - */ - async _enroll(params) { - try { - return await this._useSession(async (result) => { - var _a, _b; - const { data: sessionData, error: sessionError } = result; - if (sessionError) { - return { data: null, error: sessionError }; - } - const { data, error } = await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/factors`, { - body: { - friendly_name: params.friendlyName, - factor_type: params.factorType, - issuer: params.issuer, - }, - headers: this.headers, - jwt: (_a = sessionData === null || sessionData === void 0 ? void 0 : sessionData.session) === null || _a === void 0 ? void 0 : _a.access_token, - }); - if (error) { - return { data: null, error }; - } - if ((_b = data === null || data === void 0 ? void 0 : data.totp) === null || _b === void 0 ? void 0 : _b.qr_code) { - data.totp.qr_code = `data:image/svg+xml;utf-8,${data.totp.qr_code}`; - } - return { data, error: null }; - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: null, error }; - } - throw error; - } - } - /** - * {@see GoTrueMFAApi#verify} - */ - async _verify(params) { - return this._acquireLock(-1, async () => { - try { - return await this._useSession(async (result) => { - var _a; - const { data: sessionData, error: sessionError } = result; - if (sessionError) { - return { data: null, error: sessionError }; - } - const { data, error } = await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/factors/${params.factorId}/verify`, { - body: { code: params.code, challenge_id: params.challengeId }, - headers: this.headers, - jwt: (_a = sessionData === null || sessionData === void 0 ? void 0 : sessionData.session) === null || _a === void 0 ? void 0 : _a.access_token, - }); - if (error) { - return { data: null, error }; - } - await this._saveSession(Object.assign({ expires_at: Math.round(Date.now() / 1000) + data.expires_in }, data)); - await this._notifyAllSubscribers('MFA_CHALLENGE_VERIFIED', data); - return { data, error }; - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * {@see GoTrueMFAApi#challenge} - */ - async _challenge(params) { - return this._acquireLock(-1, async () => { - try { - return await this._useSession(async (result) => { - var _a; - const { data: sessionData, error: sessionError } = result; - if (sessionError) { - return { data: null, error: sessionError }; - } - return await (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/factors/${params.factorId}/challenge`, { - headers: this.headers, - jwt: (_a = sessionData === null || sessionData === void 0 ? void 0 : sessionData.session) === null || _a === void 0 ? void 0 : _a.access_token, - }); - }); - } - catch (error) { - if ((0, errors_1.isAuthError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * {@see GoTrueMFAApi#challengeAndVerify} - */ - async _challengeAndVerify(params) { - // both _challenge and _verify independently acquire the lock, so no need - // to acquire it here - const { data: challengeData, error: challengeError } = await this._challenge({ - factorId: params.factorId, - }); - if (challengeError) { - return { data: null, error: challengeError }; - } - return await this._verify({ - factorId: params.factorId, - challengeId: challengeData.id, - code: params.code, - }); - } - /** - * {@see GoTrueMFAApi#listFactors} - */ - async _listFactors() { - // use #getUser instead of #_getUser as the former acquires a lock - const { data: { user }, error: userError, } = await this.getUser(); - if (userError) { - return { data: null, error: userError }; - } - const factors = (user === null || user === void 0 ? void 0 : user.factors) || []; - const totp = factors.filter((factor) => factor.factor_type === 'totp' && factor.status === 'verified'); - return { - data: { - all: factors, - totp, - }, - error: null, - }; - } - /** - * {@see GoTrueMFAApi#getAuthenticatorAssuranceLevel} - */ - async _getAuthenticatorAssuranceLevel() { - return this._acquireLock(-1, async () => { - return await this._useSession(async (result) => { - var _a, _b; - const { data: { session }, error: sessionError, } = result; - if (sessionError) { - return { data: null, error: sessionError }; - } - if (!session) { - return { - data: { currentLevel: null, nextLevel: null, currentAuthenticationMethods: [] }, - error: null, - }; - } - const payload = this._decodeJWT(session.access_token); - let currentLevel = null; - if (payload.aal) { - currentLevel = payload.aal; - } - let nextLevel = currentLevel; - const verifiedFactors = (_b = (_a = session.user.factors) === null || _a === void 0 ? void 0 : _a.filter((factor) => factor.status === 'verified')) !== null && _b !== void 0 ? _b : []; - if (verifiedFactors.length > 0) { - nextLevel = 'aal2'; - } - const currentAuthenticationMethods = payload.amr || []; - return { data: { currentLevel, nextLevel, currentAuthenticationMethods }, error: null }; - }); - }); - } -} -exports["default"] = GoTrueClient; -GoTrueClient.nextInstanceID = 0; -//# sourceMappingURL=GoTrueClient.js.map - -/***/ }), - -/***/ 31904: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.lockInternals = exports.NavigatorLockAcquireTimeoutError = exports.navigatorLock = exports.AuthClient = exports.AuthAdminApi = exports.GoTrueClient = exports.GoTrueAdminApi = void 0; -const GoTrueAdminApi_1 = __importDefault(__nccwpck_require__(52165)); -exports.GoTrueAdminApi = GoTrueAdminApi_1.default; -const GoTrueClient_1 = __importDefault(__nccwpck_require__(16623)); -exports.GoTrueClient = GoTrueClient_1.default; -const AuthAdminApi_1 = __importDefault(__nccwpck_require__(68789)); -exports.AuthAdminApi = AuthAdminApi_1.default; -const AuthClient_1 = __importDefault(__nccwpck_require__(62495)); -exports.AuthClient = AuthClient_1.default; -__exportStar(__nccwpck_require__(53737), exports); -__exportStar(__nccwpck_require__(73981), exports); -var locks_1 = __nccwpck_require__(28932); -Object.defineProperty(exports, "navigatorLock", ({ enumerable: true, get: function () { return locks_1.navigatorLock; } })); -Object.defineProperty(exports, "NavigatorLockAcquireTimeoutError", ({ enumerable: true, get: function () { return locks_1.NavigatorLockAcquireTimeoutError; } })); -Object.defineProperty(exports, "lockInternals", ({ enumerable: true, get: function () { return locks_1.internals; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 26705: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.API_VERSIONS = exports.API_VERSION_HEADER_NAME = exports.NETWORK_FAILURE = exports.EXPIRY_MARGIN = exports.DEFAULT_HEADERS = exports.AUDIENCE = exports.STORAGE_KEY = exports.GOTRUE_URL = void 0; -const version_1 = __nccwpck_require__(41920); -exports.GOTRUE_URL = 'http://localhost:9999'; -exports.STORAGE_KEY = 'supabase.auth.token'; -exports.AUDIENCE = ''; -exports.DEFAULT_HEADERS = { 'X-Client-Info': `gotrue-js/${version_1.version}` }; -exports.EXPIRY_MARGIN = 10; // in seconds -exports.NETWORK_FAILURE = { - MAX_RETRIES: 10, - RETRY_INTERVAL: 2, // in deciseconds -}; -exports.API_VERSION_HEADER_NAME = 'X-Supabase-Api-Version'; -exports.API_VERSIONS = { - '2024-01-01': { - timestamp: Date.parse('2024-01-01T00:00:00.0Z'), - name: '2024-01-01', - }, -}; -//# sourceMappingURL=constants.js.map - -/***/ }), - -/***/ 73981: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.isAuthWeakPasswordError = exports.AuthWeakPasswordError = exports.isAuthRetryableFetchError = exports.AuthRetryableFetchError = exports.AuthPKCEGrantCodeExchangeError = exports.AuthImplicitGrantRedirectError = exports.AuthInvalidCredentialsError = exports.AuthInvalidTokenResponseError = exports.AuthSessionMissingError = exports.CustomAuthError = exports.AuthUnknownError = exports.isAuthApiError = exports.AuthApiError = exports.isAuthError = exports.AuthError = void 0; -class AuthError extends Error { - constructor(message, status, code) { - super(message); - this.__isAuthError = true; - this.name = 'AuthError'; - this.status = status; - this.code = code; - } -} -exports.AuthError = AuthError; -function isAuthError(error) { - return typeof error === 'object' && error !== null && '__isAuthError' in error; -} -exports.isAuthError = isAuthError; -class AuthApiError extends AuthError { - constructor(message, status, code) { - super(message, status, code); - this.name = 'AuthApiError'; - this.status = status; - this.code = code; - } -} -exports.AuthApiError = AuthApiError; -function isAuthApiError(error) { - return isAuthError(error) && error.name === 'AuthApiError'; -} -exports.isAuthApiError = isAuthApiError; -class AuthUnknownError extends AuthError { - constructor(message, originalError) { - super(message); - this.name = 'AuthUnknownError'; - this.originalError = originalError; - } -} -exports.AuthUnknownError = AuthUnknownError; -class CustomAuthError extends AuthError { - constructor(message, name, status, code) { - super(message, status, code); - this.name = name; - this.status = status; - } -} -exports.CustomAuthError = CustomAuthError; -class AuthSessionMissingError extends CustomAuthError { - constructor() { - super('Auth session missing!', 'AuthSessionMissingError', 400, undefined); - } -} -exports.AuthSessionMissingError = AuthSessionMissingError; -class AuthInvalidTokenResponseError extends CustomAuthError { - constructor() { - super('Auth session or user missing', 'AuthInvalidTokenResponseError', 500, undefined); - } -} -exports.AuthInvalidTokenResponseError = AuthInvalidTokenResponseError; -class AuthInvalidCredentialsError extends CustomAuthError { - constructor(message) { - super(message, 'AuthInvalidCredentialsError', 400, undefined); - } -} -exports.AuthInvalidCredentialsError = AuthInvalidCredentialsError; -class AuthImplicitGrantRedirectError extends CustomAuthError { - constructor(message, details = null) { - super(message, 'AuthImplicitGrantRedirectError', 500, undefined); - this.details = null; - this.details = details; - } - toJSON() { - return { - name: this.name, - message: this.message, - status: this.status, - details: this.details, - }; - } -} -exports.AuthImplicitGrantRedirectError = AuthImplicitGrantRedirectError; -class AuthPKCEGrantCodeExchangeError extends CustomAuthError { - constructor(message, details = null) { - super(message, 'AuthPKCEGrantCodeExchangeError', 500, undefined); - this.details = null; - this.details = details; - } - toJSON() { - return { - name: this.name, - message: this.message, - status: this.status, - details: this.details, - }; - } -} -exports.AuthPKCEGrantCodeExchangeError = AuthPKCEGrantCodeExchangeError; -class AuthRetryableFetchError extends CustomAuthError { - constructor(message, status) { - super(message, 'AuthRetryableFetchError', status, undefined); - } -} -exports.AuthRetryableFetchError = AuthRetryableFetchError; -function isAuthRetryableFetchError(error) { - return isAuthError(error) && error.name === 'AuthRetryableFetchError'; -} -exports.isAuthRetryableFetchError = isAuthRetryableFetchError; -/** - * This error is thrown on certain methods when the password used is deemed - * weak. Inspect the reasons to identify what password strength rules are - * inadequate. - */ -class AuthWeakPasswordError extends CustomAuthError { - constructor(message, status, reasons) { - super(message, 'AuthWeakPasswordError', status, 'weak_password'); - this.reasons = reasons; - } -} -exports.AuthWeakPasswordError = AuthWeakPasswordError; -function isAuthWeakPasswordError(error) { - return isAuthError(error) && error.name === 'AuthWeakPasswordError'; -} -exports.isAuthWeakPasswordError = isAuthWeakPasswordError; -//# sourceMappingURL=errors.js.map - -/***/ }), - -/***/ 92356: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __rest = (this && this.__rest) || function (s, e) { - var t = {}; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { - if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) - t[p[i]] = s[p[i]]; - } - return t; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports._noResolveJsonResponse = exports._generateLinkResponse = exports._ssoResponse = exports._userResponse = exports._sessionResponsePassword = exports._sessionResponse = exports._request = exports.handleError = void 0; -const constants_1 = __nccwpck_require__(26705); -const helpers_1 = __nccwpck_require__(30601); -const errors_1 = __nccwpck_require__(73981); -const _getErrorMessage = (err) => err.msg || err.message || err.error_description || err.error || JSON.stringify(err); -const NETWORK_ERROR_CODES = [502, 503, 504]; -async function handleError(error) { - var _a; - if (!(0, helpers_1.looksLikeFetchResponse)(error)) { - throw new errors_1.AuthRetryableFetchError(_getErrorMessage(error), 0); - } - if (NETWORK_ERROR_CODES.includes(error.status)) { - // status in 500...599 range - server had an error, request might be retryed. - throw new errors_1.AuthRetryableFetchError(_getErrorMessage(error), error.status); - } - let data; - try { - data = await error.json(); - } - catch (e) { - throw new errors_1.AuthUnknownError(_getErrorMessage(e), e); - } - let errorCode = undefined; - const responseAPIVersion = (0, helpers_1.parseResponseAPIVersion)(error); - if (responseAPIVersion && - responseAPIVersion.getTime() >= constants_1.API_VERSIONS['2024-01-01'].timestamp && - typeof data === 'object' && - data && - typeof data.code === 'string') { - errorCode = data.code; - } - else if (typeof data === 'object' && data && typeof data.error_code === 'string') { - errorCode = data.error_code; - } - if (!errorCode) { - // Legacy support for weak password errors, when there were no error codes - if (typeof data === 'object' && - data && - typeof data.weak_password === 'object' && - data.weak_password && - Array.isArray(data.weak_password.reasons) && - data.weak_password.reasons.length && - data.weak_password.reasons.reduce((a, i) => a && typeof i === 'string', true)) { - throw new errors_1.AuthWeakPasswordError(_getErrorMessage(data), error.status, data.weak_password.reasons); - } - } - else if (errorCode === 'weak_password') { - throw new errors_1.AuthWeakPasswordError(_getErrorMessage(data), error.status, ((_a = data.weak_password) === null || _a === void 0 ? void 0 : _a.reasons) || []); - } - throw new errors_1.AuthApiError(_getErrorMessage(data), error.status || 500, errorCode); -} -exports.handleError = handleError; -const _getRequestParams = (method, options, parameters, body) => { - const params = { method, headers: (options === null || options === void 0 ? void 0 : options.headers) || {} }; - if (method === 'GET') { - return params; - } - params.headers = Object.assign({ 'Content-Type': 'application/json;charset=UTF-8' }, options === null || options === void 0 ? void 0 : options.headers); - params.body = JSON.stringify(body); - return Object.assign(Object.assign({}, params), parameters); -}; -async function _request(fetcher, method, url, options) { - var _a; - const headers = Object.assign({}, options === null || options === void 0 ? void 0 : options.headers); - if (!headers[constants_1.API_VERSION_HEADER_NAME]) { - headers[constants_1.API_VERSION_HEADER_NAME] = constants_1.API_VERSIONS['2024-01-01'].name; - } - if (options === null || options === void 0 ? void 0 : options.jwt) { - headers['Authorization'] = `Bearer ${options.jwt}`; - } - const qs = (_a = options === null || options === void 0 ? void 0 : options.query) !== null && _a !== void 0 ? _a : {}; - if (options === null || options === void 0 ? void 0 : options.redirectTo) { - qs['redirect_to'] = options.redirectTo; - } - const queryString = Object.keys(qs).length ? '?' + new URLSearchParams(qs).toString() : ''; - const data = await _handleRequest(fetcher, method, url + queryString, { - headers, - noResolveJson: options === null || options === void 0 ? void 0 : options.noResolveJson, - }, {}, options === null || options === void 0 ? void 0 : options.body); - return (options === null || options === void 0 ? void 0 : options.xform) ? options === null || options === void 0 ? void 0 : options.xform(data) : { data: Object.assign({}, data), error: null }; -} -exports._request = _request; -async function _handleRequest(fetcher, method, url, options, parameters, body) { - const requestParams = _getRequestParams(method, options, parameters, body); - let result; - try { - result = await fetcher(url, Object.assign(Object.assign({}, requestParams), { - // UNDER NO CIRCUMSTANCE SHOULD THIS OPTION BE REMOVED, YOU MAY BE OPENING UP A SECURITY HOLE IN NEXT.JS APPS - // https://nextjs.org/docs/app/building-your-application/caching#opting-out-1 - cache: 'no-store' })); - } - catch (e) { - console.error(e); - // fetch failed, likely due to a network or CORS error - throw new errors_1.AuthRetryableFetchError(_getErrorMessage(e), 0); - } - if (!result.ok) { - await handleError(result); - } - if (options === null || options === void 0 ? void 0 : options.noResolveJson) { - return result; - } - try { - return await result.json(); - } - catch (e) { - await handleError(e); - } -} -function _sessionResponse(data) { - var _a; - let session = null; - if (hasSession(data)) { - session = Object.assign({}, data); - if (!data.expires_at) { - session.expires_at = (0, helpers_1.expiresAt)(data.expires_in); - } - } - const user = (_a = data.user) !== null && _a !== void 0 ? _a : data; - return { data: { session, user }, error: null }; -} -exports._sessionResponse = _sessionResponse; -function _sessionResponsePassword(data) { - const response = _sessionResponse(data); - if (!response.error && - data.weak_password && - typeof data.weak_password === 'object' && - Array.isArray(data.weak_password.reasons) && - data.weak_password.reasons.length && - data.weak_password.message && - typeof data.weak_password.message === 'string' && - data.weak_password.reasons.reduce((a, i) => a && typeof i === 'string', true)) { - response.data.weak_password = data.weak_password; - } - return response; -} -exports._sessionResponsePassword = _sessionResponsePassword; -function _userResponse(data) { - var _a; - const user = (_a = data.user) !== null && _a !== void 0 ? _a : data; - return { data: { user }, error: null }; -} -exports._userResponse = _userResponse; -function _ssoResponse(data) { - return { data, error: null }; -} -exports._ssoResponse = _ssoResponse; -function _generateLinkResponse(data) { - const { action_link, email_otp, hashed_token, redirect_to, verification_type } = data, rest = __rest(data, ["action_link", "email_otp", "hashed_token", "redirect_to", "verification_type"]); - const properties = { - action_link, - email_otp, - hashed_token, - redirect_to, - verification_type, - }; - const user = Object.assign({}, rest); - return { - data: { - properties, - user, - }, - error: null, - }; -} -exports._generateLinkResponse = _generateLinkResponse; -function _noResolveJsonResponse(data) { - return data; -} -exports._noResolveJsonResponse = _noResolveJsonResponse; -/** - * hasSession checks if the response object contains a valid session - * @param data A response object - * @returns true if a session is in the response - */ -function hasSession(data) { - return data.access_token && data.refresh_token && data.expires_in; -} -//# sourceMappingURL=fetch.js.map - -/***/ }), - -/***/ 30601: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.parseResponseAPIVersion = exports.getCodeChallengeAndMethod = exports.generatePKCEChallenge = exports.generatePKCEVerifier = exports.retryable = exports.sleep = exports.decodeJWTPayload = exports.Deferred = exports.decodeBase64URL = exports.removeItemAsync = exports.getItemAsync = exports.setItemAsync = exports.looksLikeFetchResponse = exports.resolveFetch = exports.parseParametersFromURL = exports.supportsLocalStorage = exports.isBrowser = exports.uuid = exports.expiresAt = void 0; -const constants_1 = __nccwpck_require__(26705); -function expiresAt(expiresIn) { - const timeNow = Math.round(Date.now() / 1000); - return timeNow + expiresIn; -} -exports.expiresAt = expiresAt; -function uuid() { - return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) { - const r = (Math.random() * 16) | 0, v = c == 'x' ? r : (r & 0x3) | 0x8; - return v.toString(16); - }); -} -exports.uuid = uuid; -const isBrowser = () => typeof document !== 'undefined'; -exports.isBrowser = isBrowser; -const localStorageWriteTests = { - tested: false, - writable: false, -}; -/** - * Checks whether localStorage is supported on this browser. - */ -const supportsLocalStorage = () => { - if (!(0, exports.isBrowser)()) { - return false; - } - try { - if (typeof globalThis.localStorage !== 'object') { - return false; - } - } - catch (e) { - // DOM exception when accessing `localStorage` - return false; - } - if (localStorageWriteTests.tested) { - return localStorageWriteTests.writable; - } - const randomKey = `lswt-${Math.random()}${Math.random()}`; - try { - globalThis.localStorage.setItem(randomKey, randomKey); - globalThis.localStorage.removeItem(randomKey); - localStorageWriteTests.tested = true; - localStorageWriteTests.writable = true; - } - catch (e) { - // localStorage can't be written to - // https://www.chromium.org/for-testers/bug-reporting-guidelines/uncaught-securityerror-failed-to-read-the-localstorage-property-from-window-access-is-denied-for-this-document - localStorageWriteTests.tested = true; - localStorageWriteTests.writable = false; - } - return localStorageWriteTests.writable; -}; -exports.supportsLocalStorage = supportsLocalStorage; -/** - * Extracts parameters encoded in the URL both in the query and fragment. - */ -function parseParametersFromURL(href) { - const result = {}; - const url = new URL(href); - if (url.hash && url.hash[0] === '#') { - try { - const hashSearchParams = new URLSearchParams(url.hash.substring(1)); - hashSearchParams.forEach((value, key) => { - result[key] = value; - }); - } - catch (e) { - // hash is not a query string - } - } - // search parameters take precedence over hash parameters - url.searchParams.forEach((value, key) => { - result[key] = value; - }); - return result; -} -exports.parseParametersFromURL = parseParametersFromURL; -const resolveFetch = (customFetch) => { - let _fetch; - if (customFetch) { - _fetch = customFetch; - } - else if (typeof fetch === 'undefined') { - _fetch = (...args) => Promise.resolve().then(() => __importStar(__nccwpck_require__(83318))).then(({ default: fetch }) => fetch(...args)); - } - else { - _fetch = fetch; - } - return (...args) => _fetch(...args); -}; -exports.resolveFetch = resolveFetch; -const looksLikeFetchResponse = (maybeResponse) => { - return (typeof maybeResponse === 'object' && - maybeResponse !== null && - 'status' in maybeResponse && - 'ok' in maybeResponse && - 'json' in maybeResponse && - typeof maybeResponse.json === 'function'); -}; -exports.looksLikeFetchResponse = looksLikeFetchResponse; -// Storage helpers -const setItemAsync = async (storage, key, data) => { - await storage.setItem(key, JSON.stringify(data)); -}; -exports.setItemAsync = setItemAsync; -const getItemAsync = async (storage, key) => { - const value = await storage.getItem(key); - if (!value) { - return null; - } - try { - return JSON.parse(value); - } - catch (_a) { - return value; - } -}; -exports.getItemAsync = getItemAsync; -const removeItemAsync = async (storage, key) => { - await storage.removeItem(key); -}; -exports.removeItemAsync = removeItemAsync; -function decodeBase64URL(value) { - const key = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='; - let base64 = ''; - let chr1, chr2, chr3; - let enc1, enc2, enc3, enc4; - let i = 0; - value = value.replace('-', '+').replace('_', '/'); - while (i < value.length) { - enc1 = key.indexOf(value.charAt(i++)); - enc2 = key.indexOf(value.charAt(i++)); - enc3 = key.indexOf(value.charAt(i++)); - enc4 = key.indexOf(value.charAt(i++)); - chr1 = (enc1 << 2) | (enc2 >> 4); - chr2 = ((enc2 & 15) << 4) | (enc3 >> 2); - chr3 = ((enc3 & 3) << 6) | enc4; - base64 = base64 + String.fromCharCode(chr1); - if (enc3 != 64 && chr2 != 0) { - base64 = base64 + String.fromCharCode(chr2); - } - if (enc4 != 64 && chr3 != 0) { - base64 = base64 + String.fromCharCode(chr3); - } - } - return base64; -} -exports.decodeBase64URL = decodeBase64URL; -/** - * A deferred represents some asynchronous work that is not yet finished, which - * may or may not culminate in a value. - * Taken from: https://github.com/mike-north/types/blob/master/src/async.ts - */ -class Deferred { - constructor() { - // eslint-disable-next-line @typescript-eslint/no-extra-semi - ; - this.promise = new Deferred.promiseConstructor((res, rej) => { - // eslint-disable-next-line @typescript-eslint/no-extra-semi - ; - this.resolve = res; - this.reject = rej; - }); - } -} -exports.Deferred = Deferred; -Deferred.promiseConstructor = Promise; -// Taken from: https://stackoverflow.com/questions/38552003/how-to-decode-jwt-token-in-javascript-without-using-a-library -function decodeJWTPayload(token) { - // Regex checks for base64url format - const base64UrlRegex = /^([a-z0-9_-]{4})*($|[a-z0-9_-]{3}=?$|[a-z0-9_-]{2}(==)?$)$/i; - const parts = token.split('.'); - if (parts.length !== 3) { - throw new Error('JWT is not valid: not a JWT structure'); - } - if (!base64UrlRegex.test(parts[1])) { - throw new Error('JWT is not valid: payload is not in base64url format'); - } - const base64Url = parts[1]; - return JSON.parse(decodeBase64URL(base64Url)); -} -exports.decodeJWTPayload = decodeJWTPayload; -/** - * Creates a promise that resolves to null after some time. - */ -async function sleep(time) { - return await new Promise((accept) => { - setTimeout(() => accept(null), time); - }); -} -exports.sleep = sleep; -/** - * Converts the provided async function into a retryable function. Each result - * or thrown error is sent to the isRetryable function which should return true - * if the function should run again. - */ -function retryable(fn, isRetryable) { - const promise = new Promise((accept, reject) => { - // eslint-disable-next-line @typescript-eslint/no-extra-semi - ; - (async () => { - for (let attempt = 0; attempt < Infinity; attempt++) { - try { - const result = await fn(attempt); - if (!isRetryable(attempt, null, result)) { - accept(result); - return; - } - } - catch (e) { - if (!isRetryable(attempt, e)) { - reject(e); - return; - } - } - } - })(); - }); - return promise; -} -exports.retryable = retryable; -function dec2hex(dec) { - return ('0' + dec.toString(16)).substr(-2); -} -// Functions below taken from: https://stackoverflow.com/questions/63309409/creating-a-code-verifier-and-challenge-for-pkce-auth-on-spotify-api-in-reactjs -function generatePKCEVerifier() { - const verifierLength = 56; - const array = new Uint32Array(verifierLength); - if (typeof crypto === 'undefined') { - const charSet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~'; - const charSetLen = charSet.length; - let verifier = ''; - for (let i = 0; i < verifierLength; i++) { - verifier += charSet.charAt(Math.floor(Math.random() * charSetLen)); - } - return verifier; - } - crypto.getRandomValues(array); - return Array.from(array, dec2hex).join(''); -} -exports.generatePKCEVerifier = generatePKCEVerifier; -async function sha256(randomString) { - const encoder = new TextEncoder(); - const encodedData = encoder.encode(randomString); - const hash = await crypto.subtle.digest('SHA-256', encodedData); - const bytes = new Uint8Array(hash); - return Array.from(bytes) - .map((c) => String.fromCharCode(c)) - .join(''); -} -function base64urlencode(str) { - return btoa(str).replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/, ''); -} -async function generatePKCEChallenge(verifier) { - const hasCryptoSupport = typeof crypto !== 'undefined' && - typeof crypto.subtle !== 'undefined' && - typeof TextEncoder !== 'undefined'; - if (!hasCryptoSupport) { - console.warn('WebCrypto API is not supported. Code challenge method will default to use plain instead of sha256.'); - return verifier; - } - const hashed = await sha256(verifier); - return base64urlencode(hashed); -} -exports.generatePKCEChallenge = generatePKCEChallenge; -async function getCodeChallengeAndMethod(storage, storageKey, isPasswordRecovery = false) { - const codeVerifier = generatePKCEVerifier(); - let storedCodeVerifier = codeVerifier; - if (isPasswordRecovery) { - storedCodeVerifier += '/PASSWORD_RECOVERY'; - } - await (0, exports.setItemAsync)(storage, `${storageKey}-code-verifier`, storedCodeVerifier); - const codeChallenge = await generatePKCEChallenge(codeVerifier); - const codeChallengeMethod = codeVerifier === codeChallenge ? 'plain' : 's256'; - return [codeChallenge, codeChallengeMethod]; -} -exports.getCodeChallengeAndMethod = getCodeChallengeAndMethod; -/** Parses the API version which is 2YYY-MM-DD. */ -const API_VERSION_REGEX = /^2[0-9]{3}-(0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-9]|3[0-1])$/i; -function parseResponseAPIVersion(response) { - const apiVersion = response.headers.get(constants_1.API_VERSION_HEADER_NAME); - if (!apiVersion) { - return null; - } - if (!apiVersion.match(API_VERSION_REGEX)) { - return null; - } - try { - const date = new Date(`${apiVersion}T00:00:00.0Z`); - return date; - } - catch (e) { - return null; - } -} -exports.parseResponseAPIVersion = parseResponseAPIVersion; -//# sourceMappingURL=helpers.js.map - -/***/ }), - -/***/ 21735: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.memoryLocalStorageAdapter = exports.localStorageAdapter = void 0; -const helpers_1 = __nccwpck_require__(30601); -/** - * Provides safe access to the globalThis.localStorage property. - */ -exports.localStorageAdapter = { - getItem: (key) => { - if (!(0, helpers_1.supportsLocalStorage)()) { - return null; - } - return globalThis.localStorage.getItem(key); - }, - setItem: (key, value) => { - if (!(0, helpers_1.supportsLocalStorage)()) { - return; - } - globalThis.localStorage.setItem(key, value); - }, - removeItem: (key) => { - if (!(0, helpers_1.supportsLocalStorage)()) { - return; - } - globalThis.localStorage.removeItem(key); - }, -}; -/** - * Returns a localStorage-like object that stores the key-value pairs in - * memory. - */ -function memoryLocalStorageAdapter(store = {}) { - return { - getItem: (key) => { - return store[key] || null; - }, - setItem: (key, value) => { - store[key] = value; - }, - removeItem: (key) => { - delete store[key]; - }, - }; -} -exports.memoryLocalStorageAdapter = memoryLocalStorageAdapter; -//# sourceMappingURL=local-storage.js.map - -/***/ }), - -/***/ 28932: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.navigatorLock = exports.NavigatorLockAcquireTimeoutError = exports.LockAcquireTimeoutError = exports.internals = void 0; -const helpers_1 = __nccwpck_require__(30601); -/** - * @experimental - */ -exports.internals = { - /** - * @experimental - */ - debug: !!(globalThis && - (0, helpers_1.supportsLocalStorage)() && - globalThis.localStorage && - globalThis.localStorage.getItem('supabase.gotrue-js.locks.debug') === 'true'), -}; -/** - * An error thrown when a lock cannot be acquired after some amount of time. - * - * Use the {@link #isAcquireTimeout} property instead of checking with `instanceof`. - */ -class LockAcquireTimeoutError extends Error { - constructor(message) { - super(message); - this.isAcquireTimeout = true; - } -} -exports.LockAcquireTimeoutError = LockAcquireTimeoutError; -class NavigatorLockAcquireTimeoutError extends LockAcquireTimeoutError { -} -exports.NavigatorLockAcquireTimeoutError = NavigatorLockAcquireTimeoutError; -/** - * Implements a global exclusive lock using the Navigator LockManager API. It - * is available on all browsers released after 2022-03-15 with Safari being the - * last one to release support. If the API is not available, this function will - * throw. Make sure you check availablility before configuring {@link - * GoTrueClient}. - * - * You can turn on debugging by setting the `supabase.gotrue-js.locks.debug` - * local storage item to `true`. - * - * Internals: - * - * Since the LockManager API does not preserve stack traces for the async - * function passed in the `request` method, a trick is used where acquiring the - * lock releases a previously started promise to run the operation in the `fn` - * function. The lock waits for that promise to finish (with or without error), - * while the function will finally wait for the result anyway. - * - * @param name Name of the lock to be acquired. - * @param acquireTimeout If negative, no timeout. If 0 an error is thrown if - * the lock can't be acquired without waiting. If positive, the lock acquire - * will time out after so many milliseconds. An error is - * a timeout if it has `isAcquireTimeout` set to true. - * @param fn The operation to run once the lock is acquired. - */ -async function navigatorLock(name, acquireTimeout, fn) { - if (exports.internals.debug) { - console.log('@supabase/gotrue-js: navigatorLock: acquire lock', name, acquireTimeout); - } - const abortController = new globalThis.AbortController(); - if (acquireTimeout > 0) { - setTimeout(() => { - abortController.abort(); - if (exports.internals.debug) { - console.log('@supabase/gotrue-js: navigatorLock acquire timed out', name); - } - }, acquireTimeout); - } - // MDN article: https://developer.mozilla.org/en-US/docs/Web/API/LockManager/request - return await globalThis.navigator.locks.request(name, acquireTimeout === 0 - ? { - mode: 'exclusive', - ifAvailable: true, - } - : { - mode: 'exclusive', - signal: abortController.signal, - }, async (lock) => { - if (lock) { - if (exports.internals.debug) { - console.log('@supabase/gotrue-js: navigatorLock: acquired', name, lock.name); - } - try { - return await fn(); - } - finally { - if (exports.internals.debug) { - console.log('@supabase/gotrue-js: navigatorLock: released', name, lock.name); - } - } - } - else { - if (acquireTimeout === 0) { - if (exports.internals.debug) { - console.log('@supabase/gotrue-js: navigatorLock: not immediately available', name); - } - throw new NavigatorLockAcquireTimeoutError(`Acquiring an exclusive Navigator LockManager lock "${name}" immediately failed`); - } - else { - if (exports.internals.debug) { - try { - const result = await globalThis.navigator.locks.query(); - console.log('@supabase/gotrue-js: Navigator LockManager state', JSON.stringify(result, null, ' ')); - } - catch (e) { - console.warn('@supabase/gotrue-js: Error when querying Navigator LockManager state', e); - } - } - // Browser is not following the Navigator LockManager spec, it - // returned a null lock when we didn't use ifAvailable. So we can - // pretend the lock is acquired in the name of backward compatibility - // and user experience and just run the function. - console.warn('@supabase/gotrue-js: Navigator LockManager returned a null lock when using #request without ifAvailable set to true, it appears this browser is not following the LockManager spec https://developer.mozilla.org/en-US/docs/Web/API/LockManager/request'); - return await fn(); - } - } - }); -} -exports.navigatorLock = navigatorLock; -//# sourceMappingURL=locks.js.map - -/***/ }), - -/***/ 80512: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.polyfillGlobalThis = void 0; -/** - * https://mathiasbynens.be/notes/globalthis - */ -function polyfillGlobalThis() { - if (typeof globalThis === 'object') - return; - try { - Object.defineProperty(Object.prototype, '__magic__', { - get: function () { - return this; - }, - configurable: true, - }); - // @ts-expect-error 'Allow access to magic' - __magic__.globalThis = __magic__; - // @ts-expect-error 'Allow access to magic' - delete Object.prototype.__magic__; - } - catch (e) { - if (typeof self !== 'undefined') { - // @ts-expect-error 'Allow access to globals' - self.globalThis = self; - } - } -} -exports.polyfillGlobalThis = polyfillGlobalThis; -//# sourceMappingURL=polyfills.js.map - -/***/ }), - -/***/ 53737: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -//# sourceMappingURL=types.js.map - -/***/ }), - -/***/ 41920: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = '2.63.0'; -//# sourceMappingURL=version.js.map - -/***/ }), - -/***/ 39149: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.FunctionsClient = void 0; -const helper_1 = __nccwpck_require__(44495); -const types_1 = __nccwpck_require__(70842); -class FunctionsClient { - constructor(url, { headers = {}, customFetch, region = types_1.FunctionRegion.Any, } = {}) { - this.url = url; - this.headers = headers; - this.region = region; - this.fetch = (0, helper_1.resolveFetch)(customFetch); - } - /** - * Updates the authorization header - * @param token - the new jwt token sent in the authorisation header - */ - setAuth(token) { - this.headers.Authorization = `Bearer ${token}`; - } - /** - * Invokes a function - * @param functionName - The name of the Function to invoke. - * @param options - Options for invoking the Function. - */ - invoke(functionName, options = {}) { - var _a; - return __awaiter(this, void 0, void 0, function* () { - try { - const { headers, method, body: functionArgs } = options; - let _headers = {}; - let { region } = options; - if (!region) { - region = this.region; - } - if (region && region !== 'any') { - _headers['x-region'] = region; - } - let body; - if (functionArgs && - ((headers && !Object.prototype.hasOwnProperty.call(headers, 'Content-Type')) || !headers)) { - if ((typeof Blob !== 'undefined' && functionArgs instanceof Blob) || - functionArgs instanceof ArrayBuffer) { - // will work for File as File inherits Blob - // also works for ArrayBuffer as it is the same underlying structure as a Blob - _headers['Content-Type'] = 'application/octet-stream'; - body = functionArgs; - } - else if (typeof functionArgs === 'string') { - // plain string - _headers['Content-Type'] = 'text/plain'; - body = functionArgs; - } - else if (typeof FormData !== 'undefined' && functionArgs instanceof FormData) { - // don't set content-type headers - // Request will automatically add the right boundary value - body = functionArgs; - } - else { - // default, assume this is JSON - _headers['Content-Type'] = 'application/json'; - body = JSON.stringify(functionArgs); - } - } - const response = yield this.fetch(`${this.url}/${functionName}`, { - method: method || 'POST', - // headers priority is (high to low): - // 1. invoke-level headers - // 2. client-level headers - // 3. default Content-Type header - headers: Object.assign(Object.assign(Object.assign({}, _headers), this.headers), headers), - body, - }).catch((fetchError) => { - throw new types_1.FunctionsFetchError(fetchError); - }); - const isRelayError = response.headers.get('x-relay-error'); - if (isRelayError && isRelayError === 'true') { - throw new types_1.FunctionsRelayError(response); - } - if (!response.ok) { - throw new types_1.FunctionsHttpError(response); - } - let responseType = ((_a = response.headers.get('Content-Type')) !== null && _a !== void 0 ? _a : 'text/plain').split(';')[0].trim(); - let data; - if (responseType === 'application/json') { - data = yield response.json(); - } - else if (responseType === 'application/octet-stream') { - data = yield response.blob(); - } - else if (responseType === 'multipart/form-data') { - data = yield response.formData(); - } - else { - // default to text - data = yield response.text(); - } - return { data, error: null }; - } - catch (error) { - return { data: null, error }; - } - }); - } -} -exports.FunctionsClient = FunctionsClient; -//# sourceMappingURL=FunctionsClient.js.map - -/***/ }), - -/***/ 44495: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.resolveFetch = void 0; -const resolveFetch = (customFetch) => { - let _fetch; - if (customFetch) { - _fetch = customFetch; - } - else if (typeof fetch === 'undefined') { - _fetch = (...args) => Promise.resolve().then(() => __importStar(__nccwpck_require__(83318))).then(({ default: fetch }) => fetch(...args)); - } - else { - _fetch = fetch; - } - return (...args) => _fetch(...args); -}; -exports.resolveFetch = resolveFetch; -//# sourceMappingURL=helper.js.map - -/***/ }), - -/***/ 70459: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.FunctionRegion = exports.FunctionsRelayError = exports.FunctionsHttpError = exports.FunctionsFetchError = exports.FunctionsError = exports.FunctionsClient = void 0; -var FunctionsClient_1 = __nccwpck_require__(39149); -Object.defineProperty(exports, "FunctionsClient", ({ enumerable: true, get: function () { return FunctionsClient_1.FunctionsClient; } })); -var types_1 = __nccwpck_require__(70842); -Object.defineProperty(exports, "FunctionsError", ({ enumerable: true, get: function () { return types_1.FunctionsError; } })); -Object.defineProperty(exports, "FunctionsFetchError", ({ enumerable: true, get: function () { return types_1.FunctionsFetchError; } })); -Object.defineProperty(exports, "FunctionsHttpError", ({ enumerable: true, get: function () { return types_1.FunctionsHttpError; } })); -Object.defineProperty(exports, "FunctionsRelayError", ({ enumerable: true, get: function () { return types_1.FunctionsRelayError; } })); -Object.defineProperty(exports, "FunctionRegion", ({ enumerable: true, get: function () { return types_1.FunctionRegion; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 70842: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.FunctionRegion = exports.FunctionsHttpError = exports.FunctionsRelayError = exports.FunctionsFetchError = exports.FunctionsError = void 0; -class FunctionsError extends Error { - constructor(message, name = 'FunctionsError', context) { - super(message); - this.name = name; - this.context = context; - } -} -exports.FunctionsError = FunctionsError; -class FunctionsFetchError extends FunctionsError { - constructor(context) { - super('Failed to send a request to the Edge Function', 'FunctionsFetchError', context); - } -} -exports.FunctionsFetchError = FunctionsFetchError; -class FunctionsRelayError extends FunctionsError { - constructor(context) { - super('Relay Error invoking the Edge Function', 'FunctionsRelayError', context); - } -} -exports.FunctionsRelayError = FunctionsRelayError; -class FunctionsHttpError extends FunctionsError { - constructor(context) { - super('Edge Function returned a non-2xx status code', 'FunctionsHttpError', context); - } -} -exports.FunctionsHttpError = FunctionsHttpError; -// Define the enum for the 'region' property -var FunctionRegion; -(function (FunctionRegion) { - FunctionRegion["Any"] = "any"; - FunctionRegion["ApNortheast1"] = "ap-northeast-1"; - FunctionRegion["ApNortheast2"] = "ap-northeast-2"; - FunctionRegion["ApSouth1"] = "ap-south-1"; - FunctionRegion["ApSoutheast1"] = "ap-southeast-1"; - FunctionRegion["ApSoutheast2"] = "ap-southeast-2"; - FunctionRegion["CaCentral1"] = "ca-central-1"; - FunctionRegion["EuCentral1"] = "eu-central-1"; - FunctionRegion["EuWest1"] = "eu-west-1"; - FunctionRegion["EuWest2"] = "eu-west-2"; - FunctionRegion["EuWest3"] = "eu-west-3"; - FunctionRegion["SaEast1"] = "sa-east-1"; - FunctionRegion["UsEast1"] = "us-east-1"; - FunctionRegion["UsWest1"] = "us-west-1"; - FunctionRegion["UsWest2"] = "us-west-2"; -})(FunctionRegion = exports.FunctionRegion || (exports.FunctionRegion = {})); -//# sourceMappingURL=types.js.map - -/***/ }), - -/***/ 83318: -/***/ ((module, exports, __nccwpck_require__) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); - -function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } - -var Stream = _interopDefault(__nccwpck_require__(2203)); -var http = _interopDefault(__nccwpck_require__(58611)); -var Url = _interopDefault(__nccwpck_require__(87016)); -var whatwgUrl = _interopDefault(__nccwpck_require__(46308)); -var https = _interopDefault(__nccwpck_require__(65692)); -var zlib = _interopDefault(__nccwpck_require__(43106)); - -// Based on https://github.com/tmpvar/jsdom/blob/aa85b2abf07766ff7bf5c1f6daafb3726f2f2db5/lib/jsdom/living/blob.js - -// fix for "Readable" isn't a named export issue -const Readable = Stream.Readable; - -const BUFFER = Symbol('buffer'); -const TYPE = Symbol('type'); - -class Blob { - constructor() { - this[TYPE] = ''; - - const blobParts = arguments[0]; - const options = arguments[1]; - - const buffers = []; - let size = 0; - - if (blobParts) { - const a = blobParts; - const length = Number(a.length); - for (let i = 0; i < length; i++) { - const element = a[i]; - let buffer; - if (element instanceof Buffer) { - buffer = element; - } else if (ArrayBuffer.isView(element)) { - buffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength); - } else if (element instanceof ArrayBuffer) { - buffer = Buffer.from(element); - } else if (element instanceof Blob) { - buffer = element[BUFFER]; - } else { - buffer = Buffer.from(typeof element === 'string' ? element : String(element)); - } - size += buffer.length; - buffers.push(buffer); - } - } - - this[BUFFER] = Buffer.concat(buffers); - - let type = options && options.type !== undefined && String(options.type).toLowerCase(); - if (type && !/[^\u0020-\u007E]/.test(type)) { - this[TYPE] = type; - } - } - get size() { - return this[BUFFER].length; - } - get type() { - return this[TYPE]; - } - text() { - return Promise.resolve(this[BUFFER].toString()); - } - arrayBuffer() { - const buf = this[BUFFER]; - const ab = buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength); - return Promise.resolve(ab); - } - stream() { - const readable = new Readable(); - readable._read = function () {}; - readable.push(this[BUFFER]); - readable.push(null); - return readable; - } - toString() { - return '[object Blob]'; - } - slice() { - const size = this.size; - - const start = arguments[0]; - const end = arguments[1]; - let relativeStart, relativeEnd; - if (start === undefined) { - relativeStart = 0; - } else if (start < 0) { - relativeStart = Math.max(size + start, 0); - } else { - relativeStart = Math.min(start, size); - } - if (end === undefined) { - relativeEnd = size; - } else if (end < 0) { - relativeEnd = Math.max(size + end, 0); - } else { - relativeEnd = Math.min(end, size); - } - const span = Math.max(relativeEnd - relativeStart, 0); - - const buffer = this[BUFFER]; - const slicedBuffer = buffer.slice(relativeStart, relativeStart + span); - const blob = new Blob([], { type: arguments[2] }); - blob[BUFFER] = slicedBuffer; - return blob; - } -} - -Object.defineProperties(Blob.prototype, { - size: { enumerable: true }, - type: { enumerable: true }, - slice: { enumerable: true } -}); - -Object.defineProperty(Blob.prototype, Symbol.toStringTag, { - value: 'Blob', - writable: false, - enumerable: false, - configurable: true -}); - -/** - * fetch-error.js - * - * FetchError interface for operational errors - */ - -/** - * Create FetchError instance - * - * @param String message Error message for human - * @param String type Error type for machine - * @param String systemError For Node.js system error - * @return FetchError - */ -function FetchError(message, type, systemError) { - Error.call(this, message); - - this.message = message; - this.type = type; - - // when err.type is `system`, err.code contains system error code - if (systemError) { - this.code = this.errno = systemError.code; - } - - // hide custom error implementation details from end-users - Error.captureStackTrace(this, this.constructor); -} - -FetchError.prototype = Object.create(Error.prototype); -FetchError.prototype.constructor = FetchError; -FetchError.prototype.name = 'FetchError'; - -let convert; - -const INTERNALS = Symbol('Body internals'); - -// fix an issue where "PassThrough" isn't a named export for node <10 -const PassThrough = Stream.PassThrough; - -/** - * Body mixin - * - * Ref: https://fetch.spec.whatwg.org/#body - * - * @param Stream body Readable stream - * @param Object opts Response options - * @return Void - */ -function Body(body) { - var _this = this; - - var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, - _ref$size = _ref.size; - - let size = _ref$size === undefined ? 0 : _ref$size; - var _ref$timeout = _ref.timeout; - let timeout = _ref$timeout === undefined ? 0 : _ref$timeout; - - if (body == null) { - // body is undefined or null - body = null; - } else if (isURLSearchParams(body)) { - // body is a URLSearchParams - body = Buffer.from(body.toString()); - } else if (isBlob(body)) ; else if (Buffer.isBuffer(body)) ; else if (Object.prototype.toString.call(body) === '[object ArrayBuffer]') { - // body is ArrayBuffer - body = Buffer.from(body); - } else if (ArrayBuffer.isView(body)) { - // body is ArrayBufferView - body = Buffer.from(body.buffer, body.byteOffset, body.byteLength); - } else if (body instanceof Stream) ; else { - // none of the above - // coerce to string then buffer - body = Buffer.from(String(body)); - } - this[INTERNALS] = { - body, - disturbed: false, - error: null - }; - this.size = size; - this.timeout = timeout; - - if (body instanceof Stream) { - body.on('error', function (err) { - const error = err.name === 'AbortError' ? err : new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err.message}`, 'system', err); - _this[INTERNALS].error = error; - }); - } -} - -Body.prototype = { - get body() { - return this[INTERNALS].body; - }, - - get bodyUsed() { - return this[INTERNALS].disturbed; - }, - - /** - * Decode response as ArrayBuffer - * - * @return Promise - */ - arrayBuffer() { - return consumeBody.call(this).then(function (buf) { - return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength); - }); - }, - - /** - * Return raw response as Blob - * - * @return Promise - */ - blob() { - let ct = this.headers && this.headers.get('content-type') || ''; - return consumeBody.call(this).then(function (buf) { - return Object.assign( - // Prevent copying - new Blob([], { - type: ct.toLowerCase() - }), { - [BUFFER]: buf - }); - }); - }, - - /** - * Decode response as json - * - * @return Promise - */ - json() { - var _this2 = this; - - return consumeBody.call(this).then(function (buffer) { - try { - return JSON.parse(buffer.toString()); - } catch (err) { - return Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err.message}`, 'invalid-json')); - } - }); - }, - - /** - * Decode response as text - * - * @return Promise - */ - text() { - return consumeBody.call(this).then(function (buffer) { - return buffer.toString(); - }); - }, - - /** - * Decode response as buffer (non-spec api) - * - * @return Promise - */ - buffer() { - return consumeBody.call(this); - }, - - /** - * Decode response as text, while automatically detecting the encoding and - * trying to decode to UTF-8 (non-spec api) - * - * @return Promise - */ - textConverted() { - var _this3 = this; - - return consumeBody.call(this).then(function (buffer) { - return convertBody(buffer, _this3.headers); - }); - } -}; - -// In browsers, all properties are enumerable. -Object.defineProperties(Body.prototype, { - body: { enumerable: true }, - bodyUsed: { enumerable: true }, - arrayBuffer: { enumerable: true }, - blob: { enumerable: true }, - json: { enumerable: true }, - text: { enumerable: true } -}); - -Body.mixIn = function (proto) { - for (const name of Object.getOwnPropertyNames(Body.prototype)) { - // istanbul ignore else: future proof - if (!(name in proto)) { - const desc = Object.getOwnPropertyDescriptor(Body.prototype, name); - Object.defineProperty(proto, name, desc); - } - } -}; - -/** - * Consume and convert an entire Body to a Buffer. - * - * Ref: https://fetch.spec.whatwg.org/#concept-body-consume-body - * - * @return Promise - */ -function consumeBody() { - var _this4 = this; - - if (this[INTERNALS].disturbed) { - return Body.Promise.reject(new TypeError(`body used already for: ${this.url}`)); - } - - this[INTERNALS].disturbed = true; - - if (this[INTERNALS].error) { - return Body.Promise.reject(this[INTERNALS].error); - } - - let body = this.body; - - // body is null - if (body === null) { - return Body.Promise.resolve(Buffer.alloc(0)); - } - - // body is blob - if (isBlob(body)) { - body = body.stream(); - } - - // body is buffer - if (Buffer.isBuffer(body)) { - return Body.Promise.resolve(body); - } - - // istanbul ignore if: should never happen - if (!(body instanceof Stream)) { - return Body.Promise.resolve(Buffer.alloc(0)); - } - - // body is stream - // get ready to actually consume the body - let accum = []; - let accumBytes = 0; - let abort = false; - - return new Body.Promise(function (resolve, reject) { - let resTimeout; - - // allow timeout on slow response body - if (_this4.timeout) { - resTimeout = setTimeout(function () { - abort = true; - reject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, 'body-timeout')); - }, _this4.timeout); - } - - // handle stream errors - body.on('error', function (err) { - if (err.name === 'AbortError') { - // if the request was aborted, reject with this Error - abort = true; - reject(err); - } else { - // other errors, such as incorrect content-encoding - reject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err.message}`, 'system', err)); - } - }); - - body.on('data', function (chunk) { - if (abort || chunk === null) { - return; - } - - if (_this4.size && accumBytes + chunk.length > _this4.size) { - abort = true; - reject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, 'max-size')); - return; - } - - accumBytes += chunk.length; - accum.push(chunk); - }); - - body.on('end', function () { - if (abort) { - return; - } - - clearTimeout(resTimeout); - - try { - resolve(Buffer.concat(accum, accumBytes)); - } catch (err) { - // handle streams that have accumulated too much data (issue #414) - reject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err.message}`, 'system', err)); - } - }); - }); -} - -/** - * Detect buffer encoding and convert to target encoding - * ref: http://www.w3.org/TR/2011/WD-html5-20110113/parsing.html#determining-the-character-encoding - * - * @param Buffer buffer Incoming buffer - * @param String encoding Target encoding - * @return String - */ -function convertBody(buffer, headers) { - { - throw new Error('The package `encoding` must be installed to use the textConverted() function'); - } - - const ct = headers.get('content-type'); - let charset = 'utf-8'; - let res, str; - - // header - if (ct) { - res = /charset=([^;]*)/i.exec(ct); - } - - // no charset in content type, peek at response body for at most 1024 bytes - str = buffer.slice(0, 1024).toString(); - - // html5 - if (!res && str) { - res = / 0 && arguments[0] !== undefined ? arguments[0] : undefined; - - this[MAP] = Object.create(null); - - if (init instanceof Headers) { - const rawHeaders = init.raw(); - const headerNames = Object.keys(rawHeaders); - - for (const headerName of headerNames) { - for (const value of rawHeaders[headerName]) { - this.append(headerName, value); - } - } - - return; - } - - // We don't worry about converting prop to ByteString here as append() - // will handle it. - if (init == null) ; else if (typeof init === 'object') { - const method = init[Symbol.iterator]; - if (method != null) { - if (typeof method !== 'function') { - throw new TypeError('Header pairs must be iterable'); - } - - // sequence> - // Note: per spec we have to first exhaust the lists then process them - const pairs = []; - for (const pair of init) { - if (typeof pair !== 'object' || typeof pair[Symbol.iterator] !== 'function') { - throw new TypeError('Each header pair must be iterable'); - } - pairs.push(Array.from(pair)); - } - - for (const pair of pairs) { - if (pair.length !== 2) { - throw new TypeError('Each header pair must be a name/value tuple'); - } - this.append(pair[0], pair[1]); - } - } else { - // record - for (const key of Object.keys(init)) { - const value = init[key]; - this.append(key, value); - } - } - } else { - throw new TypeError('Provided initializer must be an object'); - } - } - - /** - * Return combined header value given name - * - * @param String name Header name - * @return Mixed - */ - get(name) { - name = `${name}`; - validateName(name); - const key = find(this[MAP], name); - if (key === undefined) { - return null; - } - - return this[MAP][key].join(', '); - } - - /** - * Iterate over all headers - * - * @param Function callback Executed for each item with parameters (value, name, thisArg) - * @param Boolean thisArg `this` context for callback function - * @return Void - */ - forEach(callback) { - let thisArg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined; - - let pairs = getHeaders(this); - let i = 0; - while (i < pairs.length) { - var _pairs$i = pairs[i]; - const name = _pairs$i[0], - value = _pairs$i[1]; - - callback.call(thisArg, value, name, this); - pairs = getHeaders(this); - i++; - } - } - - /** - * Overwrite header values given name - * - * @param String name Header name - * @param String value Header value - * @return Void - */ - set(name, value) { - name = `${name}`; - value = `${value}`; - validateName(name); - validateValue(value); - const key = find(this[MAP], name); - this[MAP][key !== undefined ? key : name] = [value]; - } - - /** - * Append a value onto existing header - * - * @param String name Header name - * @param String value Header value - * @return Void - */ - append(name, value) { - name = `${name}`; - value = `${value}`; - validateName(name); - validateValue(value); - const key = find(this[MAP], name); - if (key !== undefined) { - this[MAP][key].push(value); - } else { - this[MAP][name] = [value]; - } - } - - /** - * Check for header name existence - * - * @param String name Header name - * @return Boolean - */ - has(name) { - name = `${name}`; - validateName(name); - return find(this[MAP], name) !== undefined; - } - - /** - * Delete all header values given name - * - * @param String name Header name - * @return Void - */ - delete(name) { - name = `${name}`; - validateName(name); - const key = find(this[MAP], name); - if (key !== undefined) { - delete this[MAP][key]; - } - } - - /** - * Return raw headers (non-spec api) - * - * @return Object - */ - raw() { - return this[MAP]; - } - - /** - * Get an iterator on keys. - * - * @return Iterator - */ - keys() { - return createHeadersIterator(this, 'key'); - } - - /** - * Get an iterator on values. - * - * @return Iterator - */ - values() { - return createHeadersIterator(this, 'value'); - } - - /** - * Get an iterator on entries. - * - * This is the default iterator of the Headers object. - * - * @return Iterator - */ - [Symbol.iterator]() { - return createHeadersIterator(this, 'key+value'); - } -} -Headers.prototype.entries = Headers.prototype[Symbol.iterator]; - -Object.defineProperty(Headers.prototype, Symbol.toStringTag, { - value: 'Headers', - writable: false, - enumerable: false, - configurable: true -}); - -Object.defineProperties(Headers.prototype, { - get: { enumerable: true }, - forEach: { enumerable: true }, - set: { enumerable: true }, - append: { enumerable: true }, - has: { enumerable: true }, - delete: { enumerable: true }, - keys: { enumerable: true }, - values: { enumerable: true }, - entries: { enumerable: true } -}); - -function getHeaders(headers) { - let kind = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'key+value'; - - const keys = Object.keys(headers[MAP]).sort(); - return keys.map(kind === 'key' ? function (k) { - return k.toLowerCase(); - } : kind === 'value' ? function (k) { - return headers[MAP][k].join(', '); - } : function (k) { - return [k.toLowerCase(), headers[MAP][k].join(', ')]; - }); -} - -const INTERNAL = Symbol('internal'); - -function createHeadersIterator(target, kind) { - const iterator = Object.create(HeadersIteratorPrototype); - iterator[INTERNAL] = { - target, - kind, - index: 0 - }; - return iterator; -} - -const HeadersIteratorPrototype = Object.setPrototypeOf({ - next() { - // istanbul ignore if - if (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) { - throw new TypeError('Value of `this` is not a HeadersIterator'); - } - - var _INTERNAL = this[INTERNAL]; - const target = _INTERNAL.target, - kind = _INTERNAL.kind, - index = _INTERNAL.index; - - const values = getHeaders(target, kind); - const len = values.length; - if (index >= len) { - return { - value: undefined, - done: true - }; - } - - this[INTERNAL].index = index + 1; - - return { - value: values[index], - done: false - }; - } -}, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()))); - -Object.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, { - value: 'HeadersIterator', - writable: false, - enumerable: false, - configurable: true -}); - -/** - * Export the Headers object in a form that Node.js can consume. - * - * @param Headers headers - * @return Object - */ -function exportNodeCompatibleHeaders(headers) { - const obj = Object.assign({ __proto__: null }, headers[MAP]); - - // http.request() only supports string as Host header. This hack makes - // specifying custom Host header possible. - const hostHeaderKey = find(headers[MAP], 'Host'); - if (hostHeaderKey !== undefined) { - obj[hostHeaderKey] = obj[hostHeaderKey][0]; - } - - return obj; -} - -/** - * Create a Headers object from an object of headers, ignoring those that do - * not conform to HTTP grammar productions. - * - * @param Object obj Object of headers - * @return Headers - */ -function createHeadersLenient(obj) { - const headers = new Headers(); - for (const name of Object.keys(obj)) { - if (invalidTokenRegex.test(name)) { - continue; - } - if (Array.isArray(obj[name])) { - for (const val of obj[name]) { - if (invalidHeaderCharRegex.test(val)) { - continue; - } - if (headers[MAP][name] === undefined) { - headers[MAP][name] = [val]; - } else { - headers[MAP][name].push(val); - } - } - } else if (!invalidHeaderCharRegex.test(obj[name])) { - headers[MAP][name] = [obj[name]]; - } - } - return headers; -} - -const INTERNALS$1 = Symbol('Response internals'); - -// fix an issue where "STATUS_CODES" aren't a named export for node <10 -const STATUS_CODES = http.STATUS_CODES; - -/** - * Response class - * - * @param Stream body Readable stream - * @param Object opts Response options - * @return Void - */ -class Response { - constructor() { - let body = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null; - let opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - - Body.call(this, body, opts); - - const status = opts.status || 200; - const headers = new Headers(opts.headers); - - if (body != null && !headers.has('Content-Type')) { - const contentType = extractContentType(body); - if (contentType) { - headers.append('Content-Type', contentType); - } - } - - this[INTERNALS$1] = { - url: opts.url, - status, - statusText: opts.statusText || STATUS_CODES[status], - headers, - counter: opts.counter - }; - } - - get url() { - return this[INTERNALS$1].url || ''; - } - - get status() { - return this[INTERNALS$1].status; - } - - /** - * Convenience property representing if the request ended normally - */ - get ok() { - return this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300; - } - - get redirected() { - return this[INTERNALS$1].counter > 0; - } - - get statusText() { - return this[INTERNALS$1].statusText; - } - - get headers() { - return this[INTERNALS$1].headers; - } - - /** - * Clone this response - * - * @return Response - */ - clone() { - return new Response(clone(this), { - url: this.url, - status: this.status, - statusText: this.statusText, - headers: this.headers, - ok: this.ok, - redirected: this.redirected - }); - } -} - -Body.mixIn(Response.prototype); - -Object.defineProperties(Response.prototype, { - url: { enumerable: true }, - status: { enumerable: true }, - ok: { enumerable: true }, - redirected: { enumerable: true }, - statusText: { enumerable: true }, - headers: { enumerable: true }, - clone: { enumerable: true } -}); - -Object.defineProperty(Response.prototype, Symbol.toStringTag, { - value: 'Response', - writable: false, - enumerable: false, - configurable: true -}); - -const INTERNALS$2 = Symbol('Request internals'); -const URL = Url.URL || whatwgUrl.URL; - -// fix an issue where "format", "parse" aren't a named export for node <10 -const parse_url = Url.parse; -const format_url = Url.format; - -/** - * Wrapper around `new URL` to handle arbitrary URLs - * - * @param {string} urlStr - * @return {void} - */ -function parseURL(urlStr) { - /* - Check whether the URL is absolute or not - Scheme: https://tools.ietf.org/html/rfc3986#section-3.1 - Absolute URL: https://tools.ietf.org/html/rfc3986#section-4.3 - */ - if (/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(urlStr)) { - urlStr = new URL(urlStr).toString(); - } - - // Fallback to old implementation for arbitrary URLs - return parse_url(urlStr); -} - -const streamDestructionSupported = 'destroy' in Stream.Readable.prototype; - -/** - * Check if a value is an instance of Request. - * - * @param Mixed input - * @return Boolean - */ -function isRequest(input) { - return typeof input === 'object' && typeof input[INTERNALS$2] === 'object'; -} - -function isAbortSignal(signal) { - const proto = signal && typeof signal === 'object' && Object.getPrototypeOf(signal); - return !!(proto && proto.constructor.name === 'AbortSignal'); -} - -/** - * Request class - * - * @param Mixed input Url or Request instance - * @param Object init Custom options - * @return Void - */ -class Request { - constructor(input) { - let init = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - - let parsedURL; - - // normalize input - if (!isRequest(input)) { - if (input && input.href) { - // in order to support Node.js' Url objects; though WHATWG's URL objects - // will fall into this branch also (since their `toString()` will return - // `href` property anyway) - parsedURL = parseURL(input.href); - } else { - // coerce input to a string before attempting to parse - parsedURL = parseURL(`${input}`); - } - input = {}; - } else { - parsedURL = parseURL(input.url); - } - - let method = init.method || input.method || 'GET'; - method = method.toUpperCase(); - - if ((init.body != null || isRequest(input) && input.body !== null) && (method === 'GET' || method === 'HEAD')) { - throw new TypeError('Request with GET/HEAD method cannot have body'); - } - - let inputBody = init.body != null ? init.body : isRequest(input) && input.body !== null ? clone(input) : null; - - Body.call(this, inputBody, { - timeout: init.timeout || input.timeout || 0, - size: init.size || input.size || 0 - }); - - const headers = new Headers(init.headers || input.headers || {}); - - if (inputBody != null && !headers.has('Content-Type')) { - const contentType = extractContentType(inputBody); - if (contentType) { - headers.append('Content-Type', contentType); - } - } - - let signal = isRequest(input) ? input.signal : null; - if ('signal' in init) signal = init.signal; - - if (signal != null && !isAbortSignal(signal)) { - throw new TypeError('Expected signal to be an instanceof AbortSignal'); - } - - this[INTERNALS$2] = { - method, - redirect: init.redirect || input.redirect || 'follow', - headers, - parsedURL, - signal - }; - - // node-fetch-only options - this.follow = init.follow !== undefined ? init.follow : input.follow !== undefined ? input.follow : 20; - this.compress = init.compress !== undefined ? init.compress : input.compress !== undefined ? input.compress : true; - this.counter = init.counter || input.counter || 0; - this.agent = init.agent || input.agent; - } - - get method() { - return this[INTERNALS$2].method; - } - - get url() { - return format_url(this[INTERNALS$2].parsedURL); - } - - get headers() { - return this[INTERNALS$2].headers; - } - - get redirect() { - return this[INTERNALS$2].redirect; - } - - get signal() { - return this[INTERNALS$2].signal; - } - - /** - * Clone this request - * - * @return Request - */ - clone() { - return new Request(this); - } -} - -Body.mixIn(Request.prototype); - -Object.defineProperty(Request.prototype, Symbol.toStringTag, { - value: 'Request', - writable: false, - enumerable: false, - configurable: true -}); - -Object.defineProperties(Request.prototype, { - method: { enumerable: true }, - url: { enumerable: true }, - headers: { enumerable: true }, - redirect: { enumerable: true }, - clone: { enumerable: true }, - signal: { enumerable: true } -}); - -/** - * Convert a Request to Node.js http request options. - * - * @param Request A Request instance - * @return Object The options object to be passed to http.request - */ -function getNodeRequestOptions(request) { - const parsedURL = request[INTERNALS$2].parsedURL; - const headers = new Headers(request[INTERNALS$2].headers); - - // fetch step 1.3 - if (!headers.has('Accept')) { - headers.set('Accept', '*/*'); - } - - // Basic fetch - if (!parsedURL.protocol || !parsedURL.hostname) { - throw new TypeError('Only absolute URLs are supported'); - } - - if (!/^https?:$/.test(parsedURL.protocol)) { - throw new TypeError('Only HTTP(S) protocols are supported'); - } - - if (request.signal && request.body instanceof Stream.Readable && !streamDestructionSupported) { - throw new Error('Cancellation of streamed requests with AbortSignal is not supported in node < 8'); - } - - // HTTP-network-or-cache fetch steps 2.4-2.7 - let contentLengthValue = null; - if (request.body == null && /^(POST|PUT)$/i.test(request.method)) { - contentLengthValue = '0'; - } - if (request.body != null) { - const totalBytes = getTotalBytes(request); - if (typeof totalBytes === 'number') { - contentLengthValue = String(totalBytes); - } - } - if (contentLengthValue) { - headers.set('Content-Length', contentLengthValue); - } - - // HTTP-network-or-cache fetch step 2.11 - if (!headers.has('User-Agent')) { - headers.set('User-Agent', 'node-fetch/1.0 (+https://github.com/bitinn/node-fetch)'); - } - - // HTTP-network-or-cache fetch step 2.15 - if (request.compress && !headers.has('Accept-Encoding')) { - headers.set('Accept-Encoding', 'gzip,deflate'); - } - - let agent = request.agent; - if (typeof agent === 'function') { - agent = agent(parsedURL); - } - - if (!headers.has('Connection') && !agent) { - headers.set('Connection', 'close'); - } - - // HTTP-network fetch step 4.2 - // chunked encoding is handled by Node.js - - return Object.assign({}, parsedURL, { - method: request.method, - headers: exportNodeCompatibleHeaders(headers), - agent - }); -} - -/** - * abort-error.js - * - * AbortError interface for cancelled requests - */ - -/** - * Create AbortError instance - * - * @param String message Error message for human - * @return AbortError - */ -function AbortError(message) { - Error.call(this, message); - - this.type = 'aborted'; - this.message = message; - - // hide custom error implementation details from end-users - Error.captureStackTrace(this, this.constructor); -} - -AbortError.prototype = Object.create(Error.prototype); -AbortError.prototype.constructor = AbortError; -AbortError.prototype.name = 'AbortError'; - -const URL$1 = Url.URL || whatwgUrl.URL; - -// fix an issue where "PassThrough", "resolve" aren't a named export for node <10 -const PassThrough$1 = Stream.PassThrough; - -const isDomainOrSubdomain = function isDomainOrSubdomain(destination, original) { - const orig = new URL$1(original).hostname; - const dest = new URL$1(destination).hostname; - - return orig === dest || orig[orig.length - dest.length - 1] === '.' && orig.endsWith(dest); -}; - -/** - * isSameProtocol reports whether the two provided URLs use the same protocol. - * - * Both domains must already be in canonical form. - * @param {string|URL} original - * @param {string|URL} destination - */ -const isSameProtocol = function isSameProtocol(destination, original) { - const orig = new URL$1(original).protocol; - const dest = new URL$1(destination).protocol; - - return orig === dest; -}; - -/** - * Fetch function - * - * @param Mixed url Absolute url or Request instance - * @param Object opts Fetch options - * @return Promise - */ -function fetch(url, opts) { - - // allow custom promise - if (!fetch.Promise) { - throw new Error('native promise missing, set fetch.Promise to your favorite alternative'); - } - - Body.Promise = fetch.Promise; - - // wrap http.request into fetch - return new fetch.Promise(function (resolve, reject) { - // build request object - const request = new Request(url, opts); - const options = getNodeRequestOptions(request); - - const send = (options.protocol === 'https:' ? https : http).request; - const signal = request.signal; - - let response = null; - - const abort = function abort() { - let error = new AbortError('The user aborted a request.'); - reject(error); - if (request.body && request.body instanceof Stream.Readable) { - destroyStream(request.body, error); - } - if (!response || !response.body) return; - response.body.emit('error', error); - }; - - if (signal && signal.aborted) { - abort(); - return; - } - - const abortAndFinalize = function abortAndFinalize() { - abort(); - finalize(); - }; - - // send request - const req = send(options); - let reqTimeout; - - if (signal) { - signal.addEventListener('abort', abortAndFinalize); - } - - function finalize() { - req.abort(); - if (signal) signal.removeEventListener('abort', abortAndFinalize); - clearTimeout(reqTimeout); - } - - if (request.timeout) { - req.once('socket', function (socket) { - reqTimeout = setTimeout(function () { - reject(new FetchError(`network timeout at: ${request.url}`, 'request-timeout')); - finalize(); - }, request.timeout); - }); - } - - req.on('error', function (err) { - reject(new FetchError(`request to ${request.url} failed, reason: ${err.message}`, 'system', err)); - - if (response && response.body) { - destroyStream(response.body, err); - } - - finalize(); - }); - - fixResponseChunkedTransferBadEnding(req, function (err) { - if (signal && signal.aborted) { - return; - } - - if (response && response.body) { - destroyStream(response.body, err); - } - }); - - /* c8 ignore next 18 */ - if (parseInt(process.version.substring(1)) < 14) { - // Before Node.js 14, pipeline() does not fully support async iterators and does not always - // properly handle when the socket close/end events are out of order. - req.on('socket', function (s) { - s.addListener('close', function (hadError) { - // if a data listener is still present we didn't end cleanly - const hasDataListener = s.listenerCount('data') > 0; - - // if end happened before close but the socket didn't emit an error, do it now - if (response && hasDataListener && !hadError && !(signal && signal.aborted)) { - const err = new Error('Premature close'); - err.code = 'ERR_STREAM_PREMATURE_CLOSE'; - response.body.emit('error', err); - } - }); - }); - } - - req.on('response', function (res) { - clearTimeout(reqTimeout); - - const headers = createHeadersLenient(res.headers); - - // HTTP fetch step 5 - if (fetch.isRedirect(res.statusCode)) { - // HTTP fetch step 5.2 - const location = headers.get('Location'); - - // HTTP fetch step 5.3 - let locationURL = null; - try { - locationURL = location === null ? null : new URL$1(location, request.url).toString(); - } catch (err) { - // error here can only be invalid URL in Location: header - // do not throw when options.redirect == manual - // let the user extract the errorneous redirect URL - if (request.redirect !== 'manual') { - reject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`, 'invalid-redirect')); - finalize(); - return; - } - } - - // HTTP fetch step 5.5 - switch (request.redirect) { - case 'error': - reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`, 'no-redirect')); - finalize(); - return; - case 'manual': - // node-fetch-specific step: make manual redirect a bit easier to use by setting the Location header value to the resolved URL. - if (locationURL !== null) { - // handle corrupted header - try { - headers.set('Location', locationURL); - } catch (err) { - // istanbul ignore next: nodejs server prevent invalid response headers, we can't test this through normal request - reject(err); - } - } - break; - case 'follow': - // HTTP-redirect fetch step 2 - if (locationURL === null) { - break; - } - - // HTTP-redirect fetch step 5 - if (request.counter >= request.follow) { - reject(new FetchError(`maximum redirect reached at: ${request.url}`, 'max-redirect')); - finalize(); - return; - } - - // HTTP-redirect fetch step 6 (counter increment) - // Create a new Request object. - const requestOpts = { - headers: new Headers(request.headers), - follow: request.follow, - counter: request.counter + 1, - agent: request.agent, - compress: request.compress, - method: request.method, - body: request.body, - signal: request.signal, - timeout: request.timeout, - size: request.size - }; - - if (!isDomainOrSubdomain(request.url, locationURL) || !isSameProtocol(request.url, locationURL)) { - for (const name of ['authorization', 'www-authenticate', 'cookie', 'cookie2']) { - requestOpts.headers.delete(name); - } - } - - // HTTP-redirect fetch step 9 - if (res.statusCode !== 303 && request.body && getTotalBytes(request) === null) { - reject(new FetchError('Cannot follow redirect with body being a readable stream', 'unsupported-redirect')); - finalize(); - return; - } - - // HTTP-redirect fetch step 11 - if (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request.method === 'POST') { - requestOpts.method = 'GET'; - requestOpts.body = undefined; - requestOpts.headers.delete('content-length'); - } - - // HTTP-redirect fetch step 15 - resolve(fetch(new Request(locationURL, requestOpts))); - finalize(); - return; - } - } - - // prepare response - res.once('end', function () { - if (signal) signal.removeEventListener('abort', abortAndFinalize); - }); - let body = res.pipe(new PassThrough$1()); - - const response_options = { - url: request.url, - status: res.statusCode, - statusText: res.statusMessage, - headers: headers, - size: request.size, - timeout: request.timeout, - counter: request.counter - }; - - // HTTP-network fetch step 12.1.1.3 - const codings = headers.get('Content-Encoding'); - - // HTTP-network fetch step 12.1.1.4: handle content codings - - // in following scenarios we ignore compression support - // 1. compression support is disabled - // 2. HEAD request - // 3. no Content-Encoding header - // 4. no content response (204) - // 5. content not modified response (304) - if (!request.compress || request.method === 'HEAD' || codings === null || res.statusCode === 204 || res.statusCode === 304) { - response = new Response(body, response_options); - resolve(response); - return; - } - - // For Node v6+ - // Be less strict when decoding compressed responses, since sometimes - // servers send slightly invalid responses that are still accepted - // by common browsers. - // Always using Z_SYNC_FLUSH is what cURL does. - const zlibOptions = { - flush: zlib.Z_SYNC_FLUSH, - finishFlush: zlib.Z_SYNC_FLUSH - }; - - // for gzip - if (codings == 'gzip' || codings == 'x-gzip') { - body = body.pipe(zlib.createGunzip(zlibOptions)); - response = new Response(body, response_options); - resolve(response); - return; - } - - // for deflate - if (codings == 'deflate' || codings == 'x-deflate') { - // handle the infamous raw deflate response from old servers - // a hack for old IIS and Apache servers - const raw = res.pipe(new PassThrough$1()); - raw.once('data', function (chunk) { - // see http://stackoverflow.com/questions/37519828 - if ((chunk[0] & 0x0F) === 0x08) { - body = body.pipe(zlib.createInflate()); - } else { - body = body.pipe(zlib.createInflateRaw()); - } - response = new Response(body, response_options); - resolve(response); - }); - raw.on('end', function () { - // some old IIS servers return zero-length OK deflate responses, so 'data' is never emitted. - if (!response) { - response = new Response(body, response_options); - resolve(response); - } - }); - return; - } - - // for br - if (codings == 'br' && typeof zlib.createBrotliDecompress === 'function') { - body = body.pipe(zlib.createBrotliDecompress()); - response = new Response(body, response_options); - resolve(response); - return; - } - - // otherwise, use response as-is - response = new Response(body, response_options); - resolve(response); - }); - - writeToStream(req, request); - }); -} -function fixResponseChunkedTransferBadEnding(request, errorCallback) { - let socket; - - request.on('socket', function (s) { - socket = s; - }); - - request.on('response', function (response) { - const headers = response.headers; - - if (headers['transfer-encoding'] === 'chunked' && !headers['content-length']) { - response.once('close', function (hadError) { - // tests for socket presence, as in some situations the - // the 'socket' event is not triggered for the request - // (happens in deno), avoids `TypeError` - // if a data listener is still present we didn't end cleanly - const hasDataListener = socket && socket.listenerCount('data') > 0; - - if (hasDataListener && !hadError) { - const err = new Error('Premature close'); - err.code = 'ERR_STREAM_PREMATURE_CLOSE'; - errorCallback(err); - } - }); - } - }); -} - -function destroyStream(stream, err) { - if (stream.destroy) { - stream.destroy(err); - } else { - // node < 8 - stream.emit('error', err); - stream.end(); - } -} - -/** - * Redirect code matching - * - * @param Number code Status code - * @return Boolean - */ -fetch.isRedirect = function (code) { - return code === 301 || code === 302 || code === 303 || code === 307 || code === 308; -}; - -// expose Promise -fetch.Promise = global.Promise; - -module.exports = exports = fetch; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports["default"] = exports; -exports.Headers = Headers; -exports.Request = Request; -exports.Response = Response; -exports.FetchError = FetchError; - - -/***/ }), - -/***/ 32198: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var punycode = __nccwpck_require__(24876); -var mappingTable = __nccwpck_require__(63370); - -var PROCESSING_OPTIONS = { - TRANSITIONAL: 0, - NONTRANSITIONAL: 1 -}; - -function normalize(str) { // fix bug in v8 - return str.split('\u0000').map(function (s) { return s.normalize('NFC'); }).join('\u0000'); -} - -function findStatus(val) { - var start = 0; - var end = mappingTable.length - 1; - - while (start <= end) { - var mid = Math.floor((start + end) / 2); - - var target = mappingTable[mid]; - if (target[0][0] <= val && target[0][1] >= val) { - return target; - } else if (target[0][0] > val) { - end = mid - 1; - } else { - start = mid + 1; - } - } - - return null; -} - -var regexAstralSymbols = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g; - -function countSymbols(string) { - return string - // replace every surrogate pair with a BMP symbol - .replace(regexAstralSymbols, '_') - // then get the length - .length; -} - -function mapChars(domain_name, useSTD3, processing_option) { - var hasError = false; - var processed = ""; - - var len = countSymbols(domain_name); - for (var i = 0; i < len; ++i) { - var codePoint = domain_name.codePointAt(i); - var status = findStatus(codePoint); - - switch (status[1]) { - case "disallowed": - hasError = true; - processed += String.fromCodePoint(codePoint); - break; - case "ignored": - break; - case "mapped": - processed += String.fromCodePoint.apply(String, status[2]); - break; - case "deviation": - if (processing_option === PROCESSING_OPTIONS.TRANSITIONAL) { - processed += String.fromCodePoint.apply(String, status[2]); - } else { - processed += String.fromCodePoint(codePoint); - } - break; - case "valid": - processed += String.fromCodePoint(codePoint); - break; - case "disallowed_STD3_mapped": - if (useSTD3) { - hasError = true; - processed += String.fromCodePoint(codePoint); - } else { - processed += String.fromCodePoint.apply(String, status[2]); - } - break; - case "disallowed_STD3_valid": - if (useSTD3) { - hasError = true; - } - - processed += String.fromCodePoint(codePoint); - break; - } - } - - return { - string: processed, - error: hasError - }; -} - -var combiningMarksRegex = /[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E4-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u192B\u1930-\u193B\u19B0-\u19C0\u19C8\u19C9\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2D]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDE2C-\uDE37\uDEDF-\uDEEA\uDF01-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDE30-\uDE40\uDEAB-\uDEB7]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD83A[\uDCD0-\uDCD6]|\uDB40[\uDD00-\uDDEF]/; - -function validateLabel(label, processing_option) { - if (label.substr(0, 4) === "xn--") { - label = punycode.toUnicode(label); - processing_option = PROCESSING_OPTIONS.NONTRANSITIONAL; - } - - var error = false; - - if (normalize(label) !== label || - (label[3] === "-" && label[4] === "-") || - label[0] === "-" || label[label.length - 1] === "-" || - label.indexOf(".") !== -1 || - label.search(combiningMarksRegex) === 0) { - error = true; - } - - var len = countSymbols(label); - for (var i = 0; i < len; ++i) { - var status = findStatus(label.codePointAt(i)); - if ((processing === PROCESSING_OPTIONS.TRANSITIONAL && status[1] !== "valid") || - (processing === PROCESSING_OPTIONS.NONTRANSITIONAL && - status[1] !== "valid" && status[1] !== "deviation")) { - error = true; - break; - } - } - - return { - label: label, - error: error - }; -} - -function processing(domain_name, useSTD3, processing_option) { - var result = mapChars(domain_name, useSTD3, processing_option); - result.string = normalize(result.string); - - var labels = result.string.split("."); - for (var i = 0; i < labels.length; ++i) { - try { - var validation = validateLabel(labels[i]); - labels[i] = validation.label; - result.error = result.error || validation.error; - } catch(e) { - result.error = true; - } - } - - return { - string: labels.join("."), - error: result.error - }; -} - -module.exports.toASCII = function(domain_name, useSTD3, processing_option, verifyDnsLength) { - var result = processing(domain_name, useSTD3, processing_option); - var labels = result.string.split("."); - labels = labels.map(function(l) { - try { - return punycode.toASCII(l); - } catch(e) { - result.error = true; - return l; - } - }); - - if (verifyDnsLength) { - var total = labels.slice(0, labels.length - 1).join(".").length; - if (total.length > 253 || total.length === 0) { - result.error = true; - } - - for (var i=0; i < labels.length; ++i) { - if (labels.length > 63 || labels.length === 0) { - result.error = true; - break; - } - } - } - - if (result.error) return null; - return labels.join("."); -}; - -module.exports.toUnicode = function(domain_name, useSTD3) { - var result = processing(domain_name, useSTD3, PROCESSING_OPTIONS.NONTRANSITIONAL); - - return { - domain: result.string, - error: result.error - }; -}; - -module.exports.PROCESSING_OPTIONS = PROCESSING_OPTIONS; - - -/***/ }), - -/***/ 48279: -/***/ ((module) => { - -"use strict"; - - -var conversions = {}; -module.exports = conversions; - -function sign(x) { - return x < 0 ? -1 : 1; -} - -function evenRound(x) { - // Round x to the nearest integer, choosing the even integer if it lies halfway between two. - if ((x % 1) === 0.5 && (x & 1) === 0) { // [even number].5; round down (i.e. floor) - return Math.floor(x); - } else { - return Math.round(x); - } -} - -function createNumberConversion(bitLength, typeOpts) { - if (!typeOpts.unsigned) { - --bitLength; - } - const lowerBound = typeOpts.unsigned ? 0 : -Math.pow(2, bitLength); - const upperBound = Math.pow(2, bitLength) - 1; - - const moduloVal = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength) : Math.pow(2, bitLength); - const moduloBound = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength - 1) : Math.pow(2, bitLength - 1); - - return function(V, opts) { - if (!opts) opts = {}; - - let x = +V; - - if (opts.enforceRange) { - if (!Number.isFinite(x)) { - throw new TypeError("Argument is not a finite number"); - } - - x = sign(x) * Math.floor(Math.abs(x)); - if (x < lowerBound || x > upperBound) { - throw new TypeError("Argument is not in byte range"); - } - - return x; - } - - if (!isNaN(x) && opts.clamp) { - x = evenRound(x); - - if (x < lowerBound) x = lowerBound; - if (x > upperBound) x = upperBound; - return x; - } - - if (!Number.isFinite(x) || x === 0) { - return 0; - } - - x = sign(x) * Math.floor(Math.abs(x)); - x = x % moduloVal; - - if (!typeOpts.unsigned && x >= moduloBound) { - return x - moduloVal; - } else if (typeOpts.unsigned) { - if (x < 0) { - x += moduloVal; - } else if (x === -0) { // don't return negative zero - return 0; - } - } - - return x; - } -} - -conversions["void"] = function () { - return undefined; -}; - -conversions["boolean"] = function (val) { - return !!val; -}; - -conversions["byte"] = createNumberConversion(8, { unsigned: false }); -conversions["octet"] = createNumberConversion(8, { unsigned: true }); - -conversions["short"] = createNumberConversion(16, { unsigned: false }); -conversions["unsigned short"] = createNumberConversion(16, { unsigned: true }); - -conversions["long"] = createNumberConversion(32, { unsigned: false }); -conversions["unsigned long"] = createNumberConversion(32, { unsigned: true }); - -conversions["long long"] = createNumberConversion(32, { unsigned: false, moduloBitLength: 64 }); -conversions["unsigned long long"] = createNumberConversion(32, { unsigned: true, moduloBitLength: 64 }); - -conversions["double"] = function (V) { - const x = +V; - - if (!Number.isFinite(x)) { - throw new TypeError("Argument is not a finite floating-point value"); - } - - return x; -}; - -conversions["unrestricted double"] = function (V) { - const x = +V; - - if (isNaN(x)) { - throw new TypeError("Argument is NaN"); - } - - return x; -}; - -// not quite valid, but good enough for JS -conversions["float"] = conversions["double"]; -conversions["unrestricted float"] = conversions["unrestricted double"]; - -conversions["DOMString"] = function (V, opts) { - if (!opts) opts = {}; - - if (opts.treatNullAsEmptyString && V === null) { - return ""; - } - - return String(V); -}; - -conversions["ByteString"] = function (V, opts) { - const x = String(V); - let c = undefined; - for (let i = 0; (c = x.codePointAt(i)) !== undefined; ++i) { - if (c > 255) { - throw new TypeError("Argument is not a valid bytestring"); - } - } - - return x; -}; - -conversions["USVString"] = function (V) { - const S = String(V); - const n = S.length; - const U = []; - for (let i = 0; i < n; ++i) { - const c = S.charCodeAt(i); - if (c < 0xD800 || c > 0xDFFF) { - U.push(String.fromCodePoint(c)); - } else if (0xDC00 <= c && c <= 0xDFFF) { - U.push(String.fromCodePoint(0xFFFD)); - } else { - if (i === n - 1) { - U.push(String.fromCodePoint(0xFFFD)); - } else { - const d = S.charCodeAt(i + 1); - if (0xDC00 <= d && d <= 0xDFFF) { - const a = c & 0x3FF; - const b = d & 0x3FF; - U.push(String.fromCodePoint((2 << 15) + (2 << 9) * a + b)); - ++i; - } else { - U.push(String.fromCodePoint(0xFFFD)); - } - } - } - } - - return U.join(''); -}; - -conversions["Date"] = function (V, opts) { - if (!(V instanceof Date)) { - throw new TypeError("Argument is not a Date object"); - } - if (isNaN(V)) { - return undefined; - } - - return V; -}; - -conversions["RegExp"] = function (V, opts) { - if (!(V instanceof RegExp)) { - V = new RegExp(V); - } - - return V; -}; - - -/***/ }), - -/***/ 94778: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -const usm = __nccwpck_require__(71787); - -exports.implementation = class URLImpl { - constructor(constructorArgs) { - const url = constructorArgs[0]; - const base = constructorArgs[1]; - - let parsedBase = null; - if (base !== undefined) { - parsedBase = usm.basicURLParse(base); - if (parsedBase === "failure") { - throw new TypeError("Invalid base URL"); - } - } - - const parsedURL = usm.basicURLParse(url, { baseURL: parsedBase }); - if (parsedURL === "failure") { - throw new TypeError("Invalid URL"); - } - - this._url = parsedURL; - - // TODO: query stuff - } - - get href() { - return usm.serializeURL(this._url); - } - - set href(v) { - const parsedURL = usm.basicURLParse(v); - if (parsedURL === "failure") { - throw new TypeError("Invalid URL"); - } - - this._url = parsedURL; - } - - get origin() { - return usm.serializeURLOrigin(this._url); - } - - get protocol() { - return this._url.scheme + ":"; - } - - set protocol(v) { - usm.basicURLParse(v + ":", { url: this._url, stateOverride: "scheme start" }); - } - - get username() { - return this._url.username; - } - - set username(v) { - if (usm.cannotHaveAUsernamePasswordPort(this._url)) { - return; - } - - usm.setTheUsername(this._url, v); - } - - get password() { - return this._url.password; - } - - set password(v) { - if (usm.cannotHaveAUsernamePasswordPort(this._url)) { - return; - } - - usm.setThePassword(this._url, v); - } - - get host() { - const url = this._url; - - if (url.host === null) { - return ""; - } - - if (url.port === null) { - return usm.serializeHost(url.host); - } - - return usm.serializeHost(url.host) + ":" + usm.serializeInteger(url.port); - } - - set host(v) { - if (this._url.cannotBeABaseURL) { - return; - } - - usm.basicURLParse(v, { url: this._url, stateOverride: "host" }); - } - - get hostname() { - if (this._url.host === null) { - return ""; - } - - return usm.serializeHost(this._url.host); - } - - set hostname(v) { - if (this._url.cannotBeABaseURL) { - return; - } - - usm.basicURLParse(v, { url: this._url, stateOverride: "hostname" }); - } - - get port() { - if (this._url.port === null) { - return ""; - } - - return usm.serializeInteger(this._url.port); - } - - set port(v) { - if (usm.cannotHaveAUsernamePasswordPort(this._url)) { - return; - } - - if (v === "") { - this._url.port = null; - } else { - usm.basicURLParse(v, { url: this._url, stateOverride: "port" }); - } - } - - get pathname() { - if (this._url.cannotBeABaseURL) { - return this._url.path[0]; - } - - if (this._url.path.length === 0) { - return ""; - } - - return "/" + this._url.path.join("/"); - } - - set pathname(v) { - if (this._url.cannotBeABaseURL) { - return; - } - - this._url.path = []; - usm.basicURLParse(v, { url: this._url, stateOverride: "path start" }); - } - - get search() { - if (this._url.query === null || this._url.query === "") { - return ""; - } - - return "?" + this._url.query; - } - - set search(v) { - // TODO: query stuff - - const url = this._url; - - if (v === "") { - url.query = null; - return; - } - - const input = v[0] === "?" ? v.substring(1) : v; - url.query = ""; - usm.basicURLParse(input, { url, stateOverride: "query" }); - } - - get hash() { - if (this._url.fragment === null || this._url.fragment === "") { - return ""; - } - - return "#" + this._url.fragment; - } - - set hash(v) { - if (v === "") { - this._url.fragment = null; - return; - } - - const input = v[0] === "#" ? v.substring(1) : v; - this._url.fragment = ""; - usm.basicURLParse(input, { url: this._url, stateOverride: "fragment" }); - } - - toJSON() { - return this.href; - } -}; - - -/***/ }), - -/***/ 64375: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -const conversions = __nccwpck_require__(48279); -const utils = __nccwpck_require__(75199); -const Impl = __nccwpck_require__(94778); - -const impl = utils.implSymbol; - -function URL(url) { - if (!this || this[impl] || !(this instanceof URL)) { - throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function."); - } - if (arguments.length < 1) { - throw new TypeError("Failed to construct 'URL': 1 argument required, but only " + arguments.length + " present."); - } - const args = []; - for (let i = 0; i < arguments.length && i < 2; ++i) { - args[i] = arguments[i]; - } - args[0] = conversions["USVString"](args[0]); - if (args[1] !== undefined) { - args[1] = conversions["USVString"](args[1]); - } - - module.exports.setup(this, args); -} - -URL.prototype.toJSON = function toJSON() { - if (!this || !module.exports.is(this)) { - throw new TypeError("Illegal invocation"); - } - const args = []; - for (let i = 0; i < arguments.length && i < 0; ++i) { - args[i] = arguments[i]; - } - return this[impl].toJSON.apply(this[impl], args); -}; -Object.defineProperty(URL.prototype, "href", { - get() { - return this[impl].href; - }, - set(V) { - V = conversions["USVString"](V); - this[impl].href = V; - }, - enumerable: true, - configurable: true -}); - -URL.prototype.toString = function () { - if (!this || !module.exports.is(this)) { - throw new TypeError("Illegal invocation"); - } - return this.href; -}; - -Object.defineProperty(URL.prototype, "origin", { - get() { - return this[impl].origin; - }, - enumerable: true, - configurable: true -}); - -Object.defineProperty(URL.prototype, "protocol", { - get() { - return this[impl].protocol; - }, - set(V) { - V = conversions["USVString"](V); - this[impl].protocol = V; - }, - enumerable: true, - configurable: true -}); - -Object.defineProperty(URL.prototype, "username", { - get() { - return this[impl].username; - }, - set(V) { - V = conversions["USVString"](V); - this[impl].username = V; - }, - enumerable: true, - configurable: true -}); - -Object.defineProperty(URL.prototype, "password", { - get() { - return this[impl].password; - }, - set(V) { - V = conversions["USVString"](V); - this[impl].password = V; - }, - enumerable: true, - configurable: true -}); - -Object.defineProperty(URL.prototype, "host", { - get() { - return this[impl].host; - }, - set(V) { - V = conversions["USVString"](V); - this[impl].host = V; - }, - enumerable: true, - configurable: true -}); - -Object.defineProperty(URL.prototype, "hostname", { - get() { - return this[impl].hostname; - }, - set(V) { - V = conversions["USVString"](V); - this[impl].hostname = V; - }, - enumerable: true, - configurable: true -}); - -Object.defineProperty(URL.prototype, "port", { - get() { - return this[impl].port; - }, - set(V) { - V = conversions["USVString"](V); - this[impl].port = V; - }, - enumerable: true, - configurable: true -}); - -Object.defineProperty(URL.prototype, "pathname", { - get() { - return this[impl].pathname; - }, - set(V) { - V = conversions["USVString"](V); - this[impl].pathname = V; - }, - enumerable: true, - configurable: true -}); - -Object.defineProperty(URL.prototype, "search", { - get() { - return this[impl].search; - }, - set(V) { - V = conversions["USVString"](V); - this[impl].search = V; - }, - enumerable: true, - configurable: true -}); - -Object.defineProperty(URL.prototype, "hash", { - get() { - return this[impl].hash; - }, - set(V) { - V = conversions["USVString"](V); - this[impl].hash = V; - }, - enumerable: true, - configurable: true -}); - - -module.exports = { - is(obj) { - return !!obj && obj[impl] instanceof Impl.implementation; - }, - create(constructorArgs, privateData) { - let obj = Object.create(URL.prototype); - this.setup(obj, constructorArgs, privateData); - return obj; - }, - setup(obj, constructorArgs, privateData) { - if (!privateData) privateData = {}; - privateData.wrapper = obj; - - obj[impl] = new Impl.implementation(constructorArgs, privateData); - obj[impl][utils.wrapperSymbol] = obj; - }, - interface: URL, - expose: { - Window: { URL: URL }, - Worker: { URL: URL } - } -}; - - - -/***/ }), - -/***/ 46308: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -exports.URL = __nccwpck_require__(64375)["interface"]; -exports.serializeURL = __nccwpck_require__(71787).serializeURL; -exports.serializeURLOrigin = __nccwpck_require__(71787).serializeURLOrigin; -exports.basicURLParse = __nccwpck_require__(71787).basicURLParse; -exports.setTheUsername = __nccwpck_require__(71787).setTheUsername; -exports.setThePassword = __nccwpck_require__(71787).setThePassword; -exports.serializeHost = __nccwpck_require__(71787).serializeHost; -exports.serializeInteger = __nccwpck_require__(71787).serializeInteger; -exports.parseURL = __nccwpck_require__(71787).parseURL; - - -/***/ }), - -/***/ 71787: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - -const punycode = __nccwpck_require__(24876); -const tr46 = __nccwpck_require__(32198); - -const specialSchemes = { - ftp: 21, - file: null, - gopher: 70, - http: 80, - https: 443, - ws: 80, - wss: 443 -}; - -const failure = Symbol("failure"); - -function countSymbols(str) { - return punycode.ucs2.decode(str).length; -} - -function at(input, idx) { - const c = input[idx]; - return isNaN(c) ? undefined : String.fromCodePoint(c); -} - -function isASCIIDigit(c) { - return c >= 0x30 && c <= 0x39; -} - -function isASCIIAlpha(c) { - return (c >= 0x41 && c <= 0x5A) || (c >= 0x61 && c <= 0x7A); -} - -function isASCIIAlphanumeric(c) { - return isASCIIAlpha(c) || isASCIIDigit(c); -} - -function isASCIIHex(c) { - return isASCIIDigit(c) || (c >= 0x41 && c <= 0x46) || (c >= 0x61 && c <= 0x66); -} - -function isSingleDot(buffer) { - return buffer === "." || buffer.toLowerCase() === "%2e"; -} - -function isDoubleDot(buffer) { - buffer = buffer.toLowerCase(); - return buffer === ".." || buffer === "%2e." || buffer === ".%2e" || buffer === "%2e%2e"; -} - -function isWindowsDriveLetterCodePoints(cp1, cp2) { - return isASCIIAlpha(cp1) && (cp2 === 58 || cp2 === 124); -} - -function isWindowsDriveLetterString(string) { - return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && (string[1] === ":" || string[1] === "|"); -} - -function isNormalizedWindowsDriveLetterString(string) { - return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && string[1] === ":"; -} - -function containsForbiddenHostCodePoint(string) { - return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/) !== -1; -} - -function containsForbiddenHostCodePointExcludingPercent(string) { - return string.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/) !== -1; -} - -function isSpecialScheme(scheme) { - return specialSchemes[scheme] !== undefined; -} - -function isSpecial(url) { - return isSpecialScheme(url.scheme); -} - -function defaultPort(scheme) { - return specialSchemes[scheme]; -} - -function percentEncode(c) { - let hex = c.toString(16).toUpperCase(); - if (hex.length === 1) { - hex = "0" + hex; - } - - return "%" + hex; -} - -function utf8PercentEncode(c) { - const buf = new Buffer(c); - - let str = ""; - - for (let i = 0; i < buf.length; ++i) { - str += percentEncode(buf[i]); - } - - return str; -} - -function utf8PercentDecode(str) { - const input = new Buffer(str); - const output = []; - for (let i = 0; i < input.length; ++i) { - if (input[i] !== 37) { - output.push(input[i]); - } else if (input[i] === 37 && isASCIIHex(input[i + 1]) && isASCIIHex(input[i + 2])) { - output.push(parseInt(input.slice(i + 1, i + 3).toString(), 16)); - i += 2; - } else { - output.push(input[i]); - } - } - return new Buffer(output).toString(); -} - -function isC0ControlPercentEncode(c) { - return c <= 0x1F || c > 0x7E; -} - -const extraPathPercentEncodeSet = new Set([32, 34, 35, 60, 62, 63, 96, 123, 125]); -function isPathPercentEncode(c) { - return isC0ControlPercentEncode(c) || extraPathPercentEncodeSet.has(c); -} - -const extraUserinfoPercentEncodeSet = - new Set([47, 58, 59, 61, 64, 91, 92, 93, 94, 124]); -function isUserinfoPercentEncode(c) { - return isPathPercentEncode(c) || extraUserinfoPercentEncodeSet.has(c); -} - -function percentEncodeChar(c, encodeSetPredicate) { - const cStr = String.fromCodePoint(c); - - if (encodeSetPredicate(c)) { - return utf8PercentEncode(cStr); - } - - return cStr; -} - -function parseIPv4Number(input) { - let R = 10; - - if (input.length >= 2 && input.charAt(0) === "0" && input.charAt(1).toLowerCase() === "x") { - input = input.substring(2); - R = 16; - } else if (input.length >= 2 && input.charAt(0) === "0") { - input = input.substring(1); - R = 8; - } - - if (input === "") { - return 0; - } - - const regex = R === 10 ? /[^0-9]/ : (R === 16 ? /[^0-9A-Fa-f]/ : /[^0-7]/); - if (regex.test(input)) { - return failure; - } - - return parseInt(input, R); -} - -function parseIPv4(input) { - const parts = input.split("."); - if (parts[parts.length - 1] === "") { - if (parts.length > 1) { - parts.pop(); - } - } - - if (parts.length > 4) { - return input; - } - - const numbers = []; - for (const part of parts) { - if (part === "") { - return input; - } - const n = parseIPv4Number(part); - if (n === failure) { - return input; - } - - numbers.push(n); - } - - for (let i = 0; i < numbers.length - 1; ++i) { - if (numbers[i] > 255) { - return failure; - } - } - if (numbers[numbers.length - 1] >= Math.pow(256, 5 - numbers.length)) { - return failure; - } - - let ipv4 = numbers.pop(); - let counter = 0; - - for (const n of numbers) { - ipv4 += n * Math.pow(256, 3 - counter); - ++counter; - } - - return ipv4; -} - -function serializeIPv4(address) { - let output = ""; - let n = address; - - for (let i = 1; i <= 4; ++i) { - output = String(n % 256) + output; - if (i !== 4) { - output = "." + output; - } - n = Math.floor(n / 256); - } - - return output; -} - -function parseIPv6(input) { - const address = [0, 0, 0, 0, 0, 0, 0, 0]; - let pieceIndex = 0; - let compress = null; - let pointer = 0; - - input = punycode.ucs2.decode(input); - - if (input[pointer] === 58) { - if (input[pointer + 1] !== 58) { - return failure; - } - - pointer += 2; - ++pieceIndex; - compress = pieceIndex; - } - - while (pointer < input.length) { - if (pieceIndex === 8) { - return failure; - } - - if (input[pointer] === 58) { - if (compress !== null) { - return failure; - } - ++pointer; - ++pieceIndex; - compress = pieceIndex; - continue; - } - - let value = 0; - let length = 0; - - while (length < 4 && isASCIIHex(input[pointer])) { - value = value * 0x10 + parseInt(at(input, pointer), 16); - ++pointer; - ++length; - } - - if (input[pointer] === 46) { - if (length === 0) { - return failure; - } - - pointer -= length; - - if (pieceIndex > 6) { - return failure; - } - - let numbersSeen = 0; - - while (input[pointer] !== undefined) { - let ipv4Piece = null; - - if (numbersSeen > 0) { - if (input[pointer] === 46 && numbersSeen < 4) { - ++pointer; - } else { - return failure; - } - } - - if (!isASCIIDigit(input[pointer])) { - return failure; - } - - while (isASCIIDigit(input[pointer])) { - const number = parseInt(at(input, pointer)); - if (ipv4Piece === null) { - ipv4Piece = number; - } else if (ipv4Piece === 0) { - return failure; - } else { - ipv4Piece = ipv4Piece * 10 + number; - } - if (ipv4Piece > 255) { - return failure; - } - ++pointer; - } - - address[pieceIndex] = address[pieceIndex] * 0x100 + ipv4Piece; - - ++numbersSeen; - - if (numbersSeen === 2 || numbersSeen === 4) { - ++pieceIndex; - } - } - - if (numbersSeen !== 4) { - return failure; - } - - break; - } else if (input[pointer] === 58) { - ++pointer; - if (input[pointer] === undefined) { - return failure; - } - } else if (input[pointer] !== undefined) { - return failure; - } - - address[pieceIndex] = value; - ++pieceIndex; - } - - if (compress !== null) { - let swaps = pieceIndex - compress; - pieceIndex = 7; - while (pieceIndex !== 0 && swaps > 0) { - const temp = address[compress + swaps - 1]; - address[compress + swaps - 1] = address[pieceIndex]; - address[pieceIndex] = temp; - --pieceIndex; - --swaps; - } - } else if (compress === null && pieceIndex !== 8) { - return failure; - } - - return address; -} - -function serializeIPv6(address) { - let output = ""; - const seqResult = findLongestZeroSequence(address); - const compress = seqResult.idx; - let ignore0 = false; - - for (let pieceIndex = 0; pieceIndex <= 7; ++pieceIndex) { - if (ignore0 && address[pieceIndex] === 0) { - continue; - } else if (ignore0) { - ignore0 = false; - } - - if (compress === pieceIndex) { - const separator = pieceIndex === 0 ? "::" : ":"; - output += separator; - ignore0 = true; - continue; - } - - output += address[pieceIndex].toString(16); - - if (pieceIndex !== 7) { - output += ":"; - } - } - - return output; -} - -function parseHost(input, isSpecialArg) { - if (input[0] === "[") { - if (input[input.length - 1] !== "]") { - return failure; - } - - return parseIPv6(input.substring(1, input.length - 1)); - } - - if (!isSpecialArg) { - return parseOpaqueHost(input); - } - - const domain = utf8PercentDecode(input); - const asciiDomain = tr46.toASCII(domain, false, tr46.PROCESSING_OPTIONS.NONTRANSITIONAL, false); - if (asciiDomain === null) { - return failure; - } - - if (containsForbiddenHostCodePoint(asciiDomain)) { - return failure; - } - - const ipv4Host = parseIPv4(asciiDomain); - if (typeof ipv4Host === "number" || ipv4Host === failure) { - return ipv4Host; - } - - return asciiDomain; -} - -function parseOpaqueHost(input) { - if (containsForbiddenHostCodePointExcludingPercent(input)) { - return failure; - } - - let output = ""; - const decoded = punycode.ucs2.decode(input); - for (let i = 0; i < decoded.length; ++i) { - output += percentEncodeChar(decoded[i], isC0ControlPercentEncode); - } - return output; -} - -function findLongestZeroSequence(arr) { - let maxIdx = null; - let maxLen = 1; // only find elements > 1 - let currStart = null; - let currLen = 0; - - for (let i = 0; i < arr.length; ++i) { - if (arr[i] !== 0) { - if (currLen > maxLen) { - maxIdx = currStart; - maxLen = currLen; - } - - currStart = null; - currLen = 0; - } else { - if (currStart === null) { - currStart = i; - } - ++currLen; - } - } - - // if trailing zeros - if (currLen > maxLen) { - maxIdx = currStart; - maxLen = currLen; - } - - return { - idx: maxIdx, - len: maxLen - }; -} - -function serializeHost(host) { - if (typeof host === "number") { - return serializeIPv4(host); - } - - // IPv6 serializer - if (host instanceof Array) { - return "[" + serializeIPv6(host) + "]"; - } - - return host; -} - -function trimControlChars(url) { - return url.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g, ""); -} - -function trimTabAndNewline(url) { - return url.replace(/\u0009|\u000A|\u000D/g, ""); -} - -function shortenPath(url) { - const path = url.path; - if (path.length === 0) { - return; - } - if (url.scheme === "file" && path.length === 1 && isNormalizedWindowsDriveLetter(path[0])) { - return; - } - - path.pop(); -} - -function includesCredentials(url) { - return url.username !== "" || url.password !== ""; -} - -function cannotHaveAUsernamePasswordPort(url) { - return url.host === null || url.host === "" || url.cannotBeABaseURL || url.scheme === "file"; -} - -function isNormalizedWindowsDriveLetter(string) { - return /^[A-Za-z]:$/.test(string); -} - -function URLStateMachine(input, base, encodingOverride, url, stateOverride) { - this.pointer = 0; - this.input = input; - this.base = base || null; - this.encodingOverride = encodingOverride || "utf-8"; - this.stateOverride = stateOverride; - this.url = url; - this.failure = false; - this.parseError = false; - - if (!this.url) { - this.url = { - scheme: "", - username: "", - password: "", - host: null, - port: null, - path: [], - query: null, - fragment: null, - - cannotBeABaseURL: false - }; - - const res = trimControlChars(this.input); - if (res !== this.input) { - this.parseError = true; - } - this.input = res; - } - - const res = trimTabAndNewline(this.input); - if (res !== this.input) { - this.parseError = true; - } - this.input = res; - - this.state = stateOverride || "scheme start"; - - this.buffer = ""; - this.atFlag = false; - this.arrFlag = false; - this.passwordTokenSeenFlag = false; - - this.input = punycode.ucs2.decode(this.input); - - for (; this.pointer <= this.input.length; ++this.pointer) { - const c = this.input[this.pointer]; - const cStr = isNaN(c) ? undefined : String.fromCodePoint(c); - - // exec state machine - const ret = this["parse " + this.state](c, cStr); - if (!ret) { - break; // terminate algorithm - } else if (ret === failure) { - this.failure = true; - break; - } - } -} - -URLStateMachine.prototype["parse scheme start"] = function parseSchemeStart(c, cStr) { - if (isASCIIAlpha(c)) { - this.buffer += cStr.toLowerCase(); - this.state = "scheme"; - } else if (!this.stateOverride) { - this.state = "no scheme"; - --this.pointer; - } else { - this.parseError = true; - return failure; - } - - return true; -}; - -URLStateMachine.prototype["parse scheme"] = function parseScheme(c, cStr) { - if (isASCIIAlphanumeric(c) || c === 43 || c === 45 || c === 46) { - this.buffer += cStr.toLowerCase(); - } else if (c === 58) { - if (this.stateOverride) { - if (isSpecial(this.url) && !isSpecialScheme(this.buffer)) { - return false; - } - - if (!isSpecial(this.url) && isSpecialScheme(this.buffer)) { - return false; - } - - if ((includesCredentials(this.url) || this.url.port !== null) && this.buffer === "file") { - return false; - } - - if (this.url.scheme === "file" && (this.url.host === "" || this.url.host === null)) { - return false; - } - } - this.url.scheme = this.buffer; - this.buffer = ""; - if (this.stateOverride) { - return false; - } - if (this.url.scheme === "file") { - if (this.input[this.pointer + 1] !== 47 || this.input[this.pointer + 2] !== 47) { - this.parseError = true; - } - this.state = "file"; - } else if (isSpecial(this.url) && this.base !== null && this.base.scheme === this.url.scheme) { - this.state = "special relative or authority"; - } else if (isSpecial(this.url)) { - this.state = "special authority slashes"; - } else if (this.input[this.pointer + 1] === 47) { - this.state = "path or authority"; - ++this.pointer; - } else { - this.url.cannotBeABaseURL = true; - this.url.path.push(""); - this.state = "cannot-be-a-base-URL path"; - } - } else if (!this.stateOverride) { - this.buffer = ""; - this.state = "no scheme"; - this.pointer = -1; - } else { - this.parseError = true; - return failure; - } - - return true; -}; - -URLStateMachine.prototype["parse no scheme"] = function parseNoScheme(c) { - if (this.base === null || (this.base.cannotBeABaseURL && c !== 35)) { - return failure; - } else if (this.base.cannotBeABaseURL && c === 35) { - this.url.scheme = this.base.scheme; - this.url.path = this.base.path.slice(); - this.url.query = this.base.query; - this.url.fragment = ""; - this.url.cannotBeABaseURL = true; - this.state = "fragment"; - } else if (this.base.scheme === "file") { - this.state = "file"; - --this.pointer; - } else { - this.state = "relative"; - --this.pointer; - } - - return true; -}; - -URLStateMachine.prototype["parse special relative or authority"] = function parseSpecialRelativeOrAuthority(c) { - if (c === 47 && this.input[this.pointer + 1] === 47) { - this.state = "special authority ignore slashes"; - ++this.pointer; - } else { - this.parseError = true; - this.state = "relative"; - --this.pointer; - } - - return true; -}; - -URLStateMachine.prototype["parse path or authority"] = function parsePathOrAuthority(c) { - if (c === 47) { - this.state = "authority"; - } else { - this.state = "path"; - --this.pointer; - } - - return true; -}; - -URLStateMachine.prototype["parse relative"] = function parseRelative(c) { - this.url.scheme = this.base.scheme; - if (isNaN(c)) { - this.url.username = this.base.username; - this.url.password = this.base.password; - this.url.host = this.base.host; - this.url.port = this.base.port; - this.url.path = this.base.path.slice(); - this.url.query = this.base.query; - } else if (c === 47) { - this.state = "relative slash"; - } else if (c === 63) { - this.url.username = this.base.username; - this.url.password = this.base.password; - this.url.host = this.base.host; - this.url.port = this.base.port; - this.url.path = this.base.path.slice(); - this.url.query = ""; - this.state = "query"; - } else if (c === 35) { - this.url.username = this.base.username; - this.url.password = this.base.password; - this.url.host = this.base.host; - this.url.port = this.base.port; - this.url.path = this.base.path.slice(); - this.url.query = this.base.query; - this.url.fragment = ""; - this.state = "fragment"; - } else if (isSpecial(this.url) && c === 92) { - this.parseError = true; - this.state = "relative slash"; - } else { - this.url.username = this.base.username; - this.url.password = this.base.password; - this.url.host = this.base.host; - this.url.port = this.base.port; - this.url.path = this.base.path.slice(0, this.base.path.length - 1); - - this.state = "path"; - --this.pointer; - } - - return true; -}; - -URLStateMachine.prototype["parse relative slash"] = function parseRelativeSlash(c) { - if (isSpecial(this.url) && (c === 47 || c === 92)) { - if (c === 92) { - this.parseError = true; - } - this.state = "special authority ignore slashes"; - } else if (c === 47) { - this.state = "authority"; - } else { - this.url.username = this.base.username; - this.url.password = this.base.password; - this.url.host = this.base.host; - this.url.port = this.base.port; - this.state = "path"; - --this.pointer; - } - - return true; -}; - -URLStateMachine.prototype["parse special authority slashes"] = function parseSpecialAuthoritySlashes(c) { - if (c === 47 && this.input[this.pointer + 1] === 47) { - this.state = "special authority ignore slashes"; - ++this.pointer; - } else { - this.parseError = true; - this.state = "special authority ignore slashes"; - --this.pointer; - } - - return true; -}; - -URLStateMachine.prototype["parse special authority ignore slashes"] = function parseSpecialAuthorityIgnoreSlashes(c) { - if (c !== 47 && c !== 92) { - this.state = "authority"; - --this.pointer; - } else { - this.parseError = true; - } - - return true; -}; - -URLStateMachine.prototype["parse authority"] = function parseAuthority(c, cStr) { - if (c === 64) { - this.parseError = true; - if (this.atFlag) { - this.buffer = "%40" + this.buffer; - } - this.atFlag = true; - - // careful, this is based on buffer and has its own pointer (this.pointer != pointer) and inner chars - const len = countSymbols(this.buffer); - for (let pointer = 0; pointer < len; ++pointer) { - const codePoint = this.buffer.codePointAt(pointer); - - if (codePoint === 58 && !this.passwordTokenSeenFlag) { - this.passwordTokenSeenFlag = true; - continue; - } - const encodedCodePoints = percentEncodeChar(codePoint, isUserinfoPercentEncode); - if (this.passwordTokenSeenFlag) { - this.url.password += encodedCodePoints; - } else { - this.url.username += encodedCodePoints; - } - } - this.buffer = ""; - } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || - (isSpecial(this.url) && c === 92)) { - if (this.atFlag && this.buffer === "") { - this.parseError = true; - return failure; - } - this.pointer -= countSymbols(this.buffer) + 1; - this.buffer = ""; - this.state = "host"; - } else { - this.buffer += cStr; - } - - return true; -}; - -URLStateMachine.prototype["parse hostname"] = -URLStateMachine.prototype["parse host"] = function parseHostName(c, cStr) { - if (this.stateOverride && this.url.scheme === "file") { - --this.pointer; - this.state = "file host"; - } else if (c === 58 && !this.arrFlag) { - if (this.buffer === "") { - this.parseError = true; - return failure; - } - - const host = parseHost(this.buffer, isSpecial(this.url)); - if (host === failure) { - return failure; - } - - this.url.host = host; - this.buffer = ""; - this.state = "port"; - if (this.stateOverride === "hostname") { - return false; - } - } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || - (isSpecial(this.url) && c === 92)) { - --this.pointer; - if (isSpecial(this.url) && this.buffer === "") { - this.parseError = true; - return failure; - } else if (this.stateOverride && this.buffer === "" && - (includesCredentials(this.url) || this.url.port !== null)) { - this.parseError = true; - return false; - } - - const host = parseHost(this.buffer, isSpecial(this.url)); - if (host === failure) { - return failure; - } - - this.url.host = host; - this.buffer = ""; - this.state = "path start"; - if (this.stateOverride) { - return false; - } - } else { - if (c === 91) { - this.arrFlag = true; - } else if (c === 93) { - this.arrFlag = false; - } - this.buffer += cStr; - } - - return true; -}; - -URLStateMachine.prototype["parse port"] = function parsePort(c, cStr) { - if (isASCIIDigit(c)) { - this.buffer += cStr; - } else if (isNaN(c) || c === 47 || c === 63 || c === 35 || - (isSpecial(this.url) && c === 92) || - this.stateOverride) { - if (this.buffer !== "") { - const port = parseInt(this.buffer); - if (port > Math.pow(2, 16) - 1) { - this.parseError = true; - return failure; - } - this.url.port = port === defaultPort(this.url.scheme) ? null : port; - this.buffer = ""; - } - if (this.stateOverride) { - return false; - } - this.state = "path start"; - --this.pointer; - } else { - this.parseError = true; - return failure; - } - - return true; -}; - -const fileOtherwiseCodePoints = new Set([47, 92, 63, 35]); - -URLStateMachine.prototype["parse file"] = function parseFile(c) { - this.url.scheme = "file"; - - if (c === 47 || c === 92) { - if (c === 92) { - this.parseError = true; - } - this.state = "file slash"; - } else if (this.base !== null && this.base.scheme === "file") { - if (isNaN(c)) { - this.url.host = this.base.host; - this.url.path = this.base.path.slice(); - this.url.query = this.base.query; - } else if (c === 63) { - this.url.host = this.base.host; - this.url.path = this.base.path.slice(); - this.url.query = ""; - this.state = "query"; - } else if (c === 35) { - this.url.host = this.base.host; - this.url.path = this.base.path.slice(); - this.url.query = this.base.query; - this.url.fragment = ""; - this.state = "fragment"; - } else { - if (this.input.length - this.pointer - 1 === 0 || // remaining consists of 0 code points - !isWindowsDriveLetterCodePoints(c, this.input[this.pointer + 1]) || - (this.input.length - this.pointer - 1 >= 2 && // remaining has at least 2 code points - !fileOtherwiseCodePoints.has(this.input[this.pointer + 2]))) { - this.url.host = this.base.host; - this.url.path = this.base.path.slice(); - shortenPath(this.url); - } else { - this.parseError = true; - } - - this.state = "path"; - --this.pointer; - } - } else { - this.state = "path"; - --this.pointer; - } - - return true; -}; - -URLStateMachine.prototype["parse file slash"] = function parseFileSlash(c) { - if (c === 47 || c === 92) { - if (c === 92) { - this.parseError = true; - } - this.state = "file host"; - } else { - if (this.base !== null && this.base.scheme === "file") { - if (isNormalizedWindowsDriveLetterString(this.base.path[0])) { - this.url.path.push(this.base.path[0]); - } else { - this.url.host = this.base.host; - } - } - this.state = "path"; - --this.pointer; - } - - return true; -}; - -URLStateMachine.prototype["parse file host"] = function parseFileHost(c, cStr) { - if (isNaN(c) || c === 47 || c === 92 || c === 63 || c === 35) { - --this.pointer; - if (!this.stateOverride && isWindowsDriveLetterString(this.buffer)) { - this.parseError = true; - this.state = "path"; - } else if (this.buffer === "") { - this.url.host = ""; - if (this.stateOverride) { - return false; - } - this.state = "path start"; - } else { - let host = parseHost(this.buffer, isSpecial(this.url)); - if (host === failure) { - return failure; - } - if (host === "localhost") { - host = ""; - } - this.url.host = host; - - if (this.stateOverride) { - return false; - } - - this.buffer = ""; - this.state = "path start"; - } - } else { - this.buffer += cStr; - } - - return true; -}; - -URLStateMachine.prototype["parse path start"] = function parsePathStart(c) { - if (isSpecial(this.url)) { - if (c === 92) { - this.parseError = true; - } - this.state = "path"; - - if (c !== 47 && c !== 92) { - --this.pointer; - } - } else if (!this.stateOverride && c === 63) { - this.url.query = ""; - this.state = "query"; - } else if (!this.stateOverride && c === 35) { - this.url.fragment = ""; - this.state = "fragment"; - } else if (c !== undefined) { - this.state = "path"; - if (c !== 47) { - --this.pointer; - } - } - - return true; -}; - -URLStateMachine.prototype["parse path"] = function parsePath(c) { - if (isNaN(c) || c === 47 || (isSpecial(this.url) && c === 92) || - (!this.stateOverride && (c === 63 || c === 35))) { - if (isSpecial(this.url) && c === 92) { - this.parseError = true; - } - - if (isDoubleDot(this.buffer)) { - shortenPath(this.url); - if (c !== 47 && !(isSpecial(this.url) && c === 92)) { - this.url.path.push(""); - } - } else if (isSingleDot(this.buffer) && c !== 47 && - !(isSpecial(this.url) && c === 92)) { - this.url.path.push(""); - } else if (!isSingleDot(this.buffer)) { - if (this.url.scheme === "file" && this.url.path.length === 0 && isWindowsDriveLetterString(this.buffer)) { - if (this.url.host !== "" && this.url.host !== null) { - this.parseError = true; - this.url.host = ""; - } - this.buffer = this.buffer[0] + ":"; - } - this.url.path.push(this.buffer); - } - this.buffer = ""; - if (this.url.scheme === "file" && (c === undefined || c === 63 || c === 35)) { - while (this.url.path.length > 1 && this.url.path[0] === "") { - this.parseError = true; - this.url.path.shift(); - } - } - if (c === 63) { - this.url.query = ""; - this.state = "query"; - } - if (c === 35) { - this.url.fragment = ""; - this.state = "fragment"; - } - } else { - // TODO: If c is not a URL code point and not "%", parse error. - - if (c === 37 && - (!isASCIIHex(this.input[this.pointer + 1]) || - !isASCIIHex(this.input[this.pointer + 2]))) { - this.parseError = true; - } - - this.buffer += percentEncodeChar(c, isPathPercentEncode); - } - - return true; -}; - -URLStateMachine.prototype["parse cannot-be-a-base-URL path"] = function parseCannotBeABaseURLPath(c) { - if (c === 63) { - this.url.query = ""; - this.state = "query"; - } else if (c === 35) { - this.url.fragment = ""; - this.state = "fragment"; - } else { - // TODO: Add: not a URL code point - if (!isNaN(c) && c !== 37) { - this.parseError = true; - } - - if (c === 37 && - (!isASCIIHex(this.input[this.pointer + 1]) || - !isASCIIHex(this.input[this.pointer + 2]))) { - this.parseError = true; - } - - if (!isNaN(c)) { - this.url.path[0] = this.url.path[0] + percentEncodeChar(c, isC0ControlPercentEncode); - } - } - - return true; -}; - -URLStateMachine.prototype["parse query"] = function parseQuery(c, cStr) { - if (isNaN(c) || (!this.stateOverride && c === 35)) { - if (!isSpecial(this.url) || this.url.scheme === "ws" || this.url.scheme === "wss") { - this.encodingOverride = "utf-8"; - } - - const buffer = new Buffer(this.buffer); // TODO: Use encoding override instead - for (let i = 0; i < buffer.length; ++i) { - if (buffer[i] < 0x21 || buffer[i] > 0x7E || buffer[i] === 0x22 || buffer[i] === 0x23 || - buffer[i] === 0x3C || buffer[i] === 0x3E) { - this.url.query += percentEncode(buffer[i]); - } else { - this.url.query += String.fromCodePoint(buffer[i]); - } - } - - this.buffer = ""; - if (c === 35) { - this.url.fragment = ""; - this.state = "fragment"; - } - } else { - // TODO: If c is not a URL code point and not "%", parse error. - if (c === 37 && - (!isASCIIHex(this.input[this.pointer + 1]) || - !isASCIIHex(this.input[this.pointer + 2]))) { - this.parseError = true; - } - - this.buffer += cStr; - } - - return true; -}; - -URLStateMachine.prototype["parse fragment"] = function parseFragment(c) { - if (isNaN(c)) { // do nothing - } else if (c === 0x0) { - this.parseError = true; - } else { - // TODO: If c is not a URL code point and not "%", parse error. - if (c === 37 && - (!isASCIIHex(this.input[this.pointer + 1]) || - !isASCIIHex(this.input[this.pointer + 2]))) { - this.parseError = true; - } - - this.url.fragment += percentEncodeChar(c, isC0ControlPercentEncode); - } - - return true; -}; - -function serializeURL(url, excludeFragment) { - let output = url.scheme + ":"; - if (url.host !== null) { - output += "//"; - - if (url.username !== "" || url.password !== "") { - output += url.username; - if (url.password !== "") { - output += ":" + url.password; - } - output += "@"; - } - - output += serializeHost(url.host); - - if (url.port !== null) { - output += ":" + url.port; - } - } else if (url.host === null && url.scheme === "file") { - output += "//"; - } - - if (url.cannotBeABaseURL) { - output += url.path[0]; - } else { - for (const string of url.path) { - output += "/" + string; - } - } - - if (url.query !== null) { - output += "?" + url.query; - } - - if (!excludeFragment && url.fragment !== null) { - output += "#" + url.fragment; - } - - return output; -} - -function serializeOrigin(tuple) { - let result = tuple.scheme + "://"; - result += serializeHost(tuple.host); - - if (tuple.port !== null) { - result += ":" + tuple.port; - } - - return result; -} - -module.exports.serializeURL = serializeURL; - -module.exports.serializeURLOrigin = function (url) { - // https://url.spec.whatwg.org/#concept-url-origin - switch (url.scheme) { - case "blob": - try { - return module.exports.serializeURLOrigin(module.exports.parseURL(url.path[0])); - } catch (e) { - // serializing an opaque origin returns "null" - return "null"; - } - case "ftp": - case "gopher": - case "http": - case "https": - case "ws": - case "wss": - return serializeOrigin({ - scheme: url.scheme, - host: url.host, - port: url.port - }); - case "file": - // spec says "exercise to the reader", chrome says "file://" - return "file://"; - default: - // serializing an opaque origin returns "null" - return "null"; - } -}; - -module.exports.basicURLParse = function (input, options) { - if (options === undefined) { - options = {}; - } - - const usm = new URLStateMachine(input, options.baseURL, options.encodingOverride, options.url, options.stateOverride); - if (usm.failure) { - return "failure"; - } - - return usm.url; -}; - -module.exports.setTheUsername = function (url, username) { - url.username = ""; - const decoded = punycode.ucs2.decode(username); - for (let i = 0; i < decoded.length; ++i) { - url.username += percentEncodeChar(decoded[i], isUserinfoPercentEncode); - } -}; - -module.exports.setThePassword = function (url, password) { - url.password = ""; - const decoded = punycode.ucs2.decode(password); - for (let i = 0; i < decoded.length; ++i) { - url.password += percentEncodeChar(decoded[i], isUserinfoPercentEncode); - } -}; - -module.exports.serializeHost = serializeHost; - -module.exports.cannotHaveAUsernamePasswordPort = cannotHaveAUsernamePasswordPort; - -module.exports.serializeInteger = function (integer) { - return String(integer); -}; - -module.exports.parseURL = function (input, options) { - if (options === undefined) { - options = {}; - } - - // We don't handle blobs, so this just delegates: - return module.exports.basicURLParse(input, { baseURL: options.baseURL, encodingOverride: options.encodingOverride }); -}; - - -/***/ }), - -/***/ 75199: -/***/ ((module) => { - -"use strict"; - - -module.exports.mixin = function mixin(target, source) { - const keys = Object.getOwnPropertyNames(source); - for (let i = 0; i < keys.length; ++i) { - Object.defineProperty(target, keys[i], Object.getOwnPropertyDescriptor(source, keys[i])); - } -}; - -module.exports.wrapperSymbol = Symbol("wrapper"); -module.exports.implSymbol = Symbol("impl"); - -module.exports.wrapperForImpl = function (impl) { - return impl[module.exports.wrapperSymbol]; -}; - -module.exports.implForWrapper = function (wrapper) { - return wrapper[module.exports.implSymbol]; -}; - - - -/***/ }), - -/***/ 41455: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -// @ts-ignore -const node_fetch_1 = __importDefault(__nccwpck_require__(83318)); -const PostgrestError_1 = __importDefault(__nccwpck_require__(58154)); -class PostgrestBuilder { - constructor(builder) { - this.shouldThrowOnError = false; - this.method = builder.method; - this.url = builder.url; - this.headers = builder.headers; - this.schema = builder.schema; - this.body = builder.body; - this.shouldThrowOnError = builder.shouldThrowOnError; - this.signal = builder.signal; - this.isMaybeSingle = builder.isMaybeSingle; - if (builder.fetch) { - this.fetch = builder.fetch; - } - else if (typeof fetch === 'undefined') { - this.fetch = node_fetch_1.default; - } - else { - this.fetch = fetch; - } - } - /** - * If there's an error with the query, throwOnError will reject the promise by - * throwing the error instead of returning it as part of a successful response. - * - * {@link https://github.com/supabase/supabase-js/issues/92} - */ - throwOnError() { - this.shouldThrowOnError = true; - return this; - } - then(onfulfilled, onrejected) { - // https://postgrest.org/en/stable/api.html#switching-schemas - if (this.schema === undefined) { - // skip - } - else if (['GET', 'HEAD'].includes(this.method)) { - this.headers['Accept-Profile'] = this.schema; - } - else { - this.headers['Content-Profile'] = this.schema; - } - if (this.method !== 'GET' && this.method !== 'HEAD') { - this.headers['Content-Type'] = 'application/json'; - } - // NOTE: Invoke w/o `this` to avoid illegal invocation error. - // https://github.com/supabase/postgrest-js/pull/247 - const _fetch = this.fetch; - let res = _fetch(this.url.toString(), { - method: this.method, - headers: this.headers, - body: JSON.stringify(this.body), - signal: this.signal, - }).then(async (res) => { - var _a, _b, _c; - let error = null; - let data = null; - let count = null; - let status = res.status; - let statusText = res.statusText; - if (res.ok) { - if (this.method !== 'HEAD') { - const body = await res.text(); - if (body === '') { - // Prefer: return=minimal - } - else if (this.headers['Accept'] === 'text/csv') { - data = body; - } - else if (this.headers['Accept'] && - this.headers['Accept'].includes('application/vnd.pgrst.plan+text')) { - data = body; - } - else { - data = JSON.parse(body); - } - } - const countHeader = (_a = this.headers['Prefer']) === null || _a === void 0 ? void 0 : _a.match(/count=(exact|planned|estimated)/); - const contentRange = (_b = res.headers.get('content-range')) === null || _b === void 0 ? void 0 : _b.split('/'); - if (countHeader && contentRange && contentRange.length > 1) { - count = parseInt(contentRange[1]); - } - // Temporary partial fix for https://github.com/supabase/postgrest-js/issues/361 - // Issue persists e.g. for `.insert([...]).select().maybeSingle()` - if (this.isMaybeSingle && this.method === 'GET' && Array.isArray(data)) { - if (data.length > 1) { - error = { - // https://github.com/PostgREST/postgrest/blob/a867d79c42419af16c18c3fb019eba8df992626f/src/PostgREST/Error.hs#L553 - code: 'PGRST116', - details: `Results contain ${data.length} rows, application/vnd.pgrst.object+json requires 1 row`, - hint: null, - message: 'JSON object requested, multiple (or no) rows returned', - }; - data = null; - count = null; - status = 406; - statusText = 'Not Acceptable'; - } - else if (data.length === 1) { - data = data[0]; - } - else { - data = null; - } - } - } - else { - const body = await res.text(); - try { - error = JSON.parse(body); - // Workaround for https://github.com/supabase/postgrest-js/issues/295 - if (Array.isArray(error) && res.status === 404) { - data = []; - error = null; - status = 200; - statusText = 'OK'; - } - } - catch (_d) { - // Workaround for https://github.com/supabase/postgrest-js/issues/295 - if (res.status === 404 && body === '') { - status = 204; - statusText = 'No Content'; - } - else { - error = { - message: body, - }; - } - } - if (error && this.isMaybeSingle && ((_c = error === null || error === void 0 ? void 0 : error.details) === null || _c === void 0 ? void 0 : _c.includes('0 rows'))) { - error = null; - status = 200; - statusText = 'OK'; - } - if (error && this.shouldThrowOnError) { - throw new PostgrestError_1.default(error); - } - } - const postgrestResponse = { - error, - data, - count, - status, - statusText, - }; - return postgrestResponse; - }); - if (!this.shouldThrowOnError) { - res = res.catch((fetchError) => { - var _a, _b, _c; - return ({ - error: { - message: `${(_a = fetchError === null || fetchError === void 0 ? void 0 : fetchError.name) !== null && _a !== void 0 ? _a : 'FetchError'}: ${fetchError === null || fetchError === void 0 ? void 0 : fetchError.message}`, - details: `${(_b = fetchError === null || fetchError === void 0 ? void 0 : fetchError.stack) !== null && _b !== void 0 ? _b : ''}`, - hint: '', - code: `${(_c = fetchError === null || fetchError === void 0 ? void 0 : fetchError.code) !== null && _c !== void 0 ? _c : ''}`, - }, - data: null, - count: null, - status: 0, - statusText: '', - }); - }); - } - return res.then(onfulfilled, onrejected); - } -} -exports["default"] = PostgrestBuilder; -//# sourceMappingURL=PostgrestBuilder.js.map - -/***/ }), - -/***/ 16193: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -const PostgrestQueryBuilder_1 = __importDefault(__nccwpck_require__(14253)); -const PostgrestFilterBuilder_1 = __importDefault(__nccwpck_require__(6377)); -const constants_1 = __nccwpck_require__(88258); -/** - * PostgREST client. - * - * @typeParam Database - Types for the schema from the [type - * generator](https://supabase.com/docs/reference/javascript/next/typescript-support) - * - * @typeParam SchemaName - Postgres schema to switch to. Must be a string - * literal, the same one passed to the constructor. If the schema is not - * `"public"`, this must be supplied manually. - */ -class PostgrestClient { - // TODO: Add back shouldThrowOnError once we figure out the typings - /** - * Creates a PostgREST client. - * - * @param url - URL of the PostgREST endpoint - * @param options - Named parameters - * @param options.headers - Custom headers - * @param options.schema - Postgres schema to switch to - * @param options.fetch - Custom fetch - */ - constructor(url, { headers = {}, schema, fetch, } = {}) { - this.url = url; - this.headers = Object.assign(Object.assign({}, constants_1.DEFAULT_HEADERS), headers); - this.schemaName = schema; - this.fetch = fetch; - } - /** - * Perform a query on a table or a view. - * - * @param relation - The table or view name to query - */ - from(relation) { - const url = new URL(`${this.url}/${relation}`); - return new PostgrestQueryBuilder_1.default(url, { - headers: Object.assign({}, this.headers), - schema: this.schemaName, - fetch: this.fetch, - }); - } - /** - * Select a schema to query or perform an function (rpc) call. - * - * The schema needs to be on the list of exposed schemas inside Supabase. - * - * @param schema - The schema to query - */ - schema(schema) { - return new PostgrestClient(this.url, { - headers: this.headers, - schema, - fetch: this.fetch, - }); - } - /** - * Perform a function call. - * - * @param fn - The function name to call - * @param args - The arguments to pass to the function call - * @param options - Named parameters - * @param options.head - When set to `true`, `data` will not be returned. - * Useful if you only need the count. - * @param options.get - When set to `true`, the function will be called with - * read-only access mode. - * @param options.count - Count algorithm to use to count rows returned by the - * function. Only applicable for [set-returning - * functions](https://www.postgresql.org/docs/current/functions-srf.html). - * - * `"exact"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the - * hood. - * - * `"planned"`: Approximated but fast count algorithm. Uses the Postgres - * statistics under the hood. - * - * `"estimated"`: Uses exact count for low numbers and planned count for high - * numbers. - */ - rpc(fn, args = {}, { head = false, get = false, count, } = {}) { - let method; - const url = new URL(`${this.url}/rpc/${fn}`); - let body; - if (head) { - method = 'HEAD'; - Object.entries(args).forEach(([name, value]) => { - url.searchParams.append(name, `${value}`); - }); - } - else if (get) { - method = 'GET'; - Object.entries(args).forEach(([name, value]) => { - url.searchParams.append(name, `${value}`); - }); - } - else { - method = 'POST'; - body = args; - } - const headers = Object.assign({}, this.headers); - if (count) { - headers['Prefer'] = `count=${count}`; - } - return new PostgrestFilterBuilder_1.default({ - method, - url, - headers, - schema: this.schemaName, - body, - fetch: this.fetch, - allowEmpty: false, - }); - } -} -exports["default"] = PostgrestClient; -//# sourceMappingURL=PostgrestClient.js.map - -/***/ }), - -/***/ 58154: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -class PostgrestError extends Error { - constructor(context) { - super(context.message); - this.name = 'PostgrestError'; - this.details = context.details; - this.hint = context.hint; - this.code = context.code; - } -} -exports["default"] = PostgrestError; -//# sourceMappingURL=PostgrestError.js.map - -/***/ }), - -/***/ 6377: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -const PostgrestTransformBuilder_1 = __importDefault(__nccwpck_require__(77725)); -class PostgrestFilterBuilder extends PostgrestTransformBuilder_1.default { - /** - * Match only rows where `column` is equal to `value`. - * - * To check if the value of `column` is NULL, you should use `.is()` instead. - * - * @param column - The column to filter on - * @param value - The value to filter with - */ - eq(column, value) { - this.url.searchParams.append(column, `eq.${value}`); - return this; - } - /** - * Match only rows where `column` is not equal to `value`. - * - * @param column - The column to filter on - * @param value - The value to filter with - */ - neq(column, value) { - this.url.searchParams.append(column, `neq.${value}`); - return this; - } - /** - * Match only rows where `column` is greater than `value`. - * - * @param column - The column to filter on - * @param value - The value to filter with - */ - gt(column, value) { - this.url.searchParams.append(column, `gt.${value}`); - return this; - } - /** - * Match only rows where `column` is greater than or equal to `value`. - * - * @param column - The column to filter on - * @param value - The value to filter with - */ - gte(column, value) { - this.url.searchParams.append(column, `gte.${value}`); - return this; - } - /** - * Match only rows where `column` is less than `value`. - * - * @param column - The column to filter on - * @param value - The value to filter with - */ - lt(column, value) { - this.url.searchParams.append(column, `lt.${value}`); - return this; - } - /** - * Match only rows where `column` is less than or equal to `value`. - * - * @param column - The column to filter on - * @param value - The value to filter with - */ - lte(column, value) { - this.url.searchParams.append(column, `lte.${value}`); - return this; - } - /** - * Match only rows where `column` matches `pattern` case-sensitively. - * - * @param column - The column to filter on - * @param pattern - The pattern to match with - */ - like(column, pattern) { - this.url.searchParams.append(column, `like.${pattern}`); - return this; - } - /** - * Match only rows where `column` matches all of `patterns` case-sensitively. - * - * @param column - The column to filter on - * @param patterns - The patterns to match with - */ - likeAllOf(column, patterns) { - this.url.searchParams.append(column, `like(all).{${patterns.join(',')}}`); - return this; - } - /** - * Match only rows where `column` matches any of `patterns` case-sensitively. - * - * @param column - The column to filter on - * @param patterns - The patterns to match with - */ - likeAnyOf(column, patterns) { - this.url.searchParams.append(column, `like(any).{${patterns.join(',')}}`); - return this; - } - /** - * Match only rows where `column` matches `pattern` case-insensitively. - * - * @param column - The column to filter on - * @param pattern - The pattern to match with - */ - ilike(column, pattern) { - this.url.searchParams.append(column, `ilike.${pattern}`); - return this; - } - /** - * Match only rows where `column` matches all of `patterns` case-insensitively. - * - * @param column - The column to filter on - * @param patterns - The patterns to match with - */ - ilikeAllOf(column, patterns) { - this.url.searchParams.append(column, `ilike(all).{${patterns.join(',')}}`); - return this; - } - /** - * Match only rows where `column` matches any of `patterns` case-insensitively. - * - * @param column - The column to filter on - * @param patterns - The patterns to match with - */ - ilikeAnyOf(column, patterns) { - this.url.searchParams.append(column, `ilike(any).{${patterns.join(',')}}`); - return this; - } - /** - * Match only rows where `column` IS `value`. - * - * For non-boolean columns, this is only relevant for checking if the value of - * `column` is NULL by setting `value` to `null`. - * - * For boolean columns, you can also set `value` to `true` or `false` and it - * will behave the same way as `.eq()`. - * - * @param column - The column to filter on - * @param value - The value to filter with - */ - is(column, value) { - this.url.searchParams.append(column, `is.${value}`); - return this; - } - /** - * Match only rows where `column` is included in the `values` array. - * - * @param column - The column to filter on - * @param values - The values array to filter with - */ - in(column, values) { - const cleanedValues = Array.from(new Set(values)) - .map((s) => { - // handle postgrest reserved characters - // https://postgrest.org/en/v7.0.0/api.html#reserved-characters - if (typeof s === 'string' && new RegExp('[,()]').test(s)) - return `"${s}"`; - else - return `${s}`; - }) - .join(','); - this.url.searchParams.append(column, `in.(${cleanedValues})`); - return this; - } - /** - * Only relevant for jsonb, array, and range columns. Match only rows where - * `column` contains every element appearing in `value`. - * - * @param column - The jsonb, array, or range column to filter on - * @param value - The jsonb, array, or range value to filter with - */ - contains(column, value) { - if (typeof value === 'string') { - // range types can be inclusive '[', ']' or exclusive '(', ')' so just - // keep it simple and accept a string - this.url.searchParams.append(column, `cs.${value}`); - } - else if (Array.isArray(value)) { - // array - this.url.searchParams.append(column, `cs.{${value.join(',')}}`); - } - else { - // json - this.url.searchParams.append(column, `cs.${JSON.stringify(value)}`); - } - return this; - } - /** - * Only relevant for jsonb, array, and range columns. Match only rows where - * every element appearing in `column` is contained by `value`. - * - * @param column - The jsonb, array, or range column to filter on - * @param value - The jsonb, array, or range value to filter with - */ - containedBy(column, value) { - if (typeof value === 'string') { - // range - this.url.searchParams.append(column, `cd.${value}`); - } - else if (Array.isArray(value)) { - // array - this.url.searchParams.append(column, `cd.{${value.join(',')}}`); - } - else { - // json - this.url.searchParams.append(column, `cd.${JSON.stringify(value)}`); - } - return this; - } - /** - * Only relevant for range columns. Match only rows where every element in - * `column` is greater than any element in `range`. - * - * @param column - The range column to filter on - * @param range - The range to filter with - */ - rangeGt(column, range) { - this.url.searchParams.append(column, `sr.${range}`); - return this; - } - /** - * Only relevant for range columns. Match only rows where every element in - * `column` is either contained in `range` or greater than any element in - * `range`. - * - * @param column - The range column to filter on - * @param range - The range to filter with - */ - rangeGte(column, range) { - this.url.searchParams.append(column, `nxl.${range}`); - return this; - } - /** - * Only relevant for range columns. Match only rows where every element in - * `column` is less than any element in `range`. - * - * @param column - The range column to filter on - * @param range - The range to filter with - */ - rangeLt(column, range) { - this.url.searchParams.append(column, `sl.${range}`); - return this; - } - /** - * Only relevant for range columns. Match only rows where every element in - * `column` is either contained in `range` or less than any element in - * `range`. - * - * @param column - The range column to filter on - * @param range - The range to filter with - */ - rangeLte(column, range) { - this.url.searchParams.append(column, `nxr.${range}`); - return this; - } - /** - * Only relevant for range columns. Match only rows where `column` is - * mutually exclusive to `range` and there can be no element between the two - * ranges. - * - * @param column - The range column to filter on - * @param range - The range to filter with - */ - rangeAdjacent(column, range) { - this.url.searchParams.append(column, `adj.${range}`); - return this; - } - /** - * Only relevant for array and range columns. Match only rows where - * `column` and `value` have an element in common. - * - * @param column - The array or range column to filter on - * @param value - The array or range value to filter with - */ - overlaps(column, value) { - if (typeof value === 'string') { - // range - this.url.searchParams.append(column, `ov.${value}`); - } - else { - // array - this.url.searchParams.append(column, `ov.{${value.join(',')}}`); - } - return this; - } - /** - * Only relevant for text and tsvector columns. Match only rows where - * `column` matches the query string in `query`. - * - * @param column - The text or tsvector column to filter on - * @param query - The query text to match with - * @param options - Named parameters - * @param options.config - The text search configuration to use - * @param options.type - Change how the `query` text is interpreted - */ - textSearch(column, query, { config, type } = {}) { - let typePart = ''; - if (type === 'plain') { - typePart = 'pl'; - } - else if (type === 'phrase') { - typePart = 'ph'; - } - else if (type === 'websearch') { - typePart = 'w'; - } - const configPart = config === undefined ? '' : `(${config})`; - this.url.searchParams.append(column, `${typePart}fts${configPart}.${query}`); - return this; - } - /** - * Match only rows where each column in `query` keys is equal to its - * associated value. Shorthand for multiple `.eq()`s. - * - * @param query - The object to filter with, with column names as keys mapped - * to their filter values - */ - match(query) { - Object.entries(query).forEach(([column, value]) => { - this.url.searchParams.append(column, `eq.${value}`); - }); - return this; - } - /** - * Match only rows which doesn't satisfy the filter. - * - * Unlike most filters, `opearator` and `value` are used as-is and need to - * follow [PostgREST - * syntax](https://postgrest.org/en/stable/api.html#operators). You also need - * to make sure they are properly sanitized. - * - * @param column - The column to filter on - * @param operator - The operator to be negated to filter with, following - * PostgREST syntax - * @param value - The value to filter with, following PostgREST syntax - */ - not(column, operator, value) { - this.url.searchParams.append(column, `not.${operator}.${value}`); - return this; - } - /** - * Match only rows which satisfy at least one of the filters. - * - * Unlike most filters, `filters` is used as-is and needs to follow [PostgREST - * syntax](https://postgrest.org/en/stable/api.html#operators). You also need - * to make sure it's properly sanitized. - * - * It's currently not possible to do an `.or()` filter across multiple tables. - * - * @param filters - The filters to use, following PostgREST syntax - * @param options - Named parameters - * @param options.referencedTable - Set this to filter on referenced tables - * instead of the parent table - * @param options.foreignTable - Deprecated, use `referencedTable` instead - */ - or(filters, { foreignTable, referencedTable = foreignTable, } = {}) { - const key = referencedTable ? `${referencedTable}.or` : 'or'; - this.url.searchParams.append(key, `(${filters})`); - return this; - } - /** - * Match only rows which satisfy the filter. This is an escape hatch - you - * should use the specific filter methods wherever possible. - * - * Unlike most filters, `opearator` and `value` are used as-is and need to - * follow [PostgREST - * syntax](https://postgrest.org/en/stable/api.html#operators). You also need - * to make sure they are properly sanitized. - * - * @param column - The column to filter on - * @param operator - The operator to filter with, following PostgREST syntax - * @param value - The value to filter with, following PostgREST syntax - */ - filter(column, operator, value) { - this.url.searchParams.append(column, `${operator}.${value}`); - return this; - } -} -exports["default"] = PostgrestFilterBuilder; -//# sourceMappingURL=PostgrestFilterBuilder.js.map - -/***/ }), - -/***/ 14253: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -const PostgrestFilterBuilder_1 = __importDefault(__nccwpck_require__(6377)); -class PostgrestQueryBuilder { - constructor(url, { headers = {}, schema, fetch, }) { - this.url = url; - this.headers = headers; - this.schema = schema; - this.fetch = fetch; - } - /** - * Perform a SELECT query on the table or view. - * - * @param columns - The columns to retrieve, separated by commas. Columns can be renamed when returned with `customName:columnName` - * - * @param options - Named parameters - * - * @param options.head - When set to `true`, `data` will not be returned. - * Useful if you only need the count. - * - * @param options.count - Count algorithm to use to count rows in the table or view. - * - * `"exact"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the - * hood. - * - * `"planned"`: Approximated but fast count algorithm. Uses the Postgres - * statistics under the hood. - * - * `"estimated"`: Uses exact count for low numbers and planned count for high - * numbers. - */ - select(columns, { head = false, count, } = {}) { - const method = head ? 'HEAD' : 'GET'; - // Remove whitespaces except when quoted - let quoted = false; - const cleanedColumns = (columns !== null && columns !== void 0 ? columns : '*') - .split('') - .map((c) => { - if (/\s/.test(c) && !quoted) { - return ''; - } - if (c === '"') { - quoted = !quoted; - } - return c; - }) - .join(''); - this.url.searchParams.set('select', cleanedColumns); - if (count) { - this.headers['Prefer'] = `count=${count}`; - } - return new PostgrestFilterBuilder_1.default({ - method, - url: this.url, - headers: this.headers, - schema: this.schema, - fetch: this.fetch, - allowEmpty: false, - }); - } - /** - * Perform an INSERT into the table or view. - * - * By default, inserted rows are not returned. To return it, chain the call - * with `.select()`. - * - * @param values - The values to insert. Pass an object to insert a single row - * or an array to insert multiple rows. - * - * @param options - Named parameters - * - * @param options.count - Count algorithm to use to count inserted rows. - * - * `"exact"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the - * hood. - * - * `"planned"`: Approximated but fast count algorithm. Uses the Postgres - * statistics under the hood. - * - * `"estimated"`: Uses exact count for low numbers and planned count for high - * numbers. - * - * @param options.defaultToNull - Make missing fields default to `null`. - * Otherwise, use the default value for the column. Only applies for bulk - * inserts. - */ - insert(values, { count, defaultToNull = true, } = {}) { - const method = 'POST'; - const prefersHeaders = []; - if (this.headers['Prefer']) { - prefersHeaders.push(this.headers['Prefer']); - } - if (count) { - prefersHeaders.push(`count=${count}`); - } - if (!defaultToNull) { - prefersHeaders.push('missing=default'); - } - this.headers['Prefer'] = prefersHeaders.join(','); - if (Array.isArray(values)) { - const columns = values.reduce((acc, x) => acc.concat(Object.keys(x)), []); - if (columns.length > 0) { - const uniqueColumns = [...new Set(columns)].map((column) => `"${column}"`); - this.url.searchParams.set('columns', uniqueColumns.join(',')); - } - } - return new PostgrestFilterBuilder_1.default({ - method, - url: this.url, - headers: this.headers, - schema: this.schema, - body: values, - fetch: this.fetch, - allowEmpty: false, - }); - } - /** - * Perform an UPSERT on the table or view. Depending on the column(s) passed - * to `onConflict`, `.upsert()` allows you to perform the equivalent of - * `.insert()` if a row with the corresponding `onConflict` columns doesn't - * exist, or if it does exist, perform an alternative action depending on - * `ignoreDuplicates`. - * - * By default, upserted rows are not returned. To return it, chain the call - * with `.select()`. - * - * @param values - The values to upsert with. Pass an object to upsert a - * single row or an array to upsert multiple rows. - * - * @param options - Named parameters - * - * @param options.onConflict - Comma-separated UNIQUE column(s) to specify how - * duplicate rows are determined. Two rows are duplicates if all the - * `onConflict` columns are equal. - * - * @param options.ignoreDuplicates - If `true`, duplicate rows are ignored. If - * `false`, duplicate rows are merged with existing rows. - * - * @param options.count - Count algorithm to use to count upserted rows. - * - * `"exact"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the - * hood. - * - * `"planned"`: Approximated but fast count algorithm. Uses the Postgres - * statistics under the hood. - * - * `"estimated"`: Uses exact count for low numbers and planned count for high - * numbers. - * - * @param options.defaultToNull - Make missing fields default to `null`. - * Otherwise, use the default value for the column. This only applies when - * inserting new rows, not when merging with existing rows under - * `ignoreDuplicates: false`. This also only applies when doing bulk upserts. - */ - upsert(values, { onConflict, ignoreDuplicates = false, count, defaultToNull = true, } = {}) { - const method = 'POST'; - const prefersHeaders = [`resolution=${ignoreDuplicates ? 'ignore' : 'merge'}-duplicates`]; - if (onConflict !== undefined) - this.url.searchParams.set('on_conflict', onConflict); - if (this.headers['Prefer']) { - prefersHeaders.push(this.headers['Prefer']); - } - if (count) { - prefersHeaders.push(`count=${count}`); - } - if (!defaultToNull) { - prefersHeaders.push('missing=default'); - } - this.headers['Prefer'] = prefersHeaders.join(','); - if (Array.isArray(values)) { - const columns = values.reduce((acc, x) => acc.concat(Object.keys(x)), []); - if (columns.length > 0) { - const uniqueColumns = [...new Set(columns)].map((column) => `"${column}"`); - this.url.searchParams.set('columns', uniqueColumns.join(',')); - } - } - return new PostgrestFilterBuilder_1.default({ - method, - url: this.url, - headers: this.headers, - schema: this.schema, - body: values, - fetch: this.fetch, - allowEmpty: false, - }); - } - /** - * Perform an UPDATE on the table or view. - * - * By default, updated rows are not returned. To return it, chain the call - * with `.select()` after filters. - * - * @param values - The values to update with - * - * @param options - Named parameters - * - * @param options.count - Count algorithm to use to count updated rows. - * - * `"exact"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the - * hood. - * - * `"planned"`: Approximated but fast count algorithm. Uses the Postgres - * statistics under the hood. - * - * `"estimated"`: Uses exact count for low numbers and planned count for high - * numbers. - */ - update(values, { count, } = {}) { - const method = 'PATCH'; - const prefersHeaders = []; - if (this.headers['Prefer']) { - prefersHeaders.push(this.headers['Prefer']); - } - if (count) { - prefersHeaders.push(`count=${count}`); - } - this.headers['Prefer'] = prefersHeaders.join(','); - return new PostgrestFilterBuilder_1.default({ - method, - url: this.url, - headers: this.headers, - schema: this.schema, - body: values, - fetch: this.fetch, - allowEmpty: false, - }); - } - /** - * Perform a DELETE on the table or view. - * - * By default, deleted rows are not returned. To return it, chain the call - * with `.select()` after filters. - * - * @param options - Named parameters - * - * @param options.count - Count algorithm to use to count deleted rows. - * - * `"exact"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the - * hood. - * - * `"planned"`: Approximated but fast count algorithm. Uses the Postgres - * statistics under the hood. - * - * `"estimated"`: Uses exact count for low numbers and planned count for high - * numbers. - */ - delete({ count, } = {}) { - const method = 'DELETE'; - const prefersHeaders = []; - if (count) { - prefersHeaders.push(`count=${count}`); - } - if (this.headers['Prefer']) { - prefersHeaders.unshift(this.headers['Prefer']); - } - this.headers['Prefer'] = prefersHeaders.join(','); - return new PostgrestFilterBuilder_1.default({ - method, - url: this.url, - headers: this.headers, - schema: this.schema, - fetch: this.fetch, - allowEmpty: false, - }); - } -} -exports["default"] = PostgrestQueryBuilder; -//# sourceMappingURL=PostgrestQueryBuilder.js.map - -/***/ }), - -/***/ 77725: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -const PostgrestBuilder_1 = __importDefault(__nccwpck_require__(41455)); -class PostgrestTransformBuilder extends PostgrestBuilder_1.default { - /** - * Perform a SELECT on the query result. - * - * By default, `.insert()`, `.update()`, `.upsert()`, and `.delete()` do not - * return modified rows. By calling this method, modified rows are returned in - * `data`. - * - * @param columns - The columns to retrieve, separated by commas - */ - select(columns) { - // Remove whitespaces except when quoted - let quoted = false; - const cleanedColumns = (columns !== null && columns !== void 0 ? columns : '*') - .split('') - .map((c) => { - if (/\s/.test(c) && !quoted) { - return ''; - } - if (c === '"') { - quoted = !quoted; - } - return c; - }) - .join(''); - this.url.searchParams.set('select', cleanedColumns); - if (this.headers['Prefer']) { - this.headers['Prefer'] += ','; - } - this.headers['Prefer'] += 'return=representation'; - return this; - } - /** - * Order the query result by `column`. - * - * You can call this method multiple times to order by multiple columns. - * - * You can order referenced tables, but it only affects the ordering of the - * parent table if you use `!inner` in the query. - * - * @param column - The column to order by - * @param options - Named parameters - * @param options.ascending - If `true`, the result will be in ascending order - * @param options.nullsFirst - If `true`, `null`s appear first. If `false`, - * `null`s appear last. - * @param options.referencedTable - Set this to order a referenced table by - * its columns - * @param options.foreignTable - Deprecated, use `options.referencedTable` - * instead - */ - order(column, { ascending = true, nullsFirst, foreignTable, referencedTable = foreignTable, } = {}) { - const key = referencedTable ? `${referencedTable}.order` : 'order'; - const existingOrder = this.url.searchParams.get(key); - this.url.searchParams.set(key, `${existingOrder ? `${existingOrder},` : ''}${column}.${ascending ? 'asc' : 'desc'}${nullsFirst === undefined ? '' : nullsFirst ? '.nullsfirst' : '.nullslast'}`); - return this; - } - /** - * Limit the query result by `count`. - * - * @param count - The maximum number of rows to return - * @param options - Named parameters - * @param options.referencedTable - Set this to limit rows of referenced - * tables instead of the parent table - * @param options.foreignTable - Deprecated, use `options.referencedTable` - * instead - */ - limit(count, { foreignTable, referencedTable = foreignTable, } = {}) { - const key = typeof referencedTable === 'undefined' ? 'limit' : `${referencedTable}.limit`; - this.url.searchParams.set(key, `${count}`); - return this; - } - /** - * Limit the query result by starting at an offset (`from`) and ending at the offset (`from + to`). - * Only records within this range are returned. - * This respects the query order and if there is no order clause the range could behave unexpectedly. - * The `from` and `to` values are 0-based and inclusive: `range(1, 3)` will include the second, third - * and fourth rows of the query. - * - * @param from - The starting index from which to limit the result - * @param to - The last index to which to limit the result - * @param options - Named parameters - * @param options.referencedTable - Set this to limit rows of referenced - * tables instead of the parent table - * @param options.foreignTable - Deprecated, use `options.referencedTable` - * instead - */ - range(from, to, { foreignTable, referencedTable = foreignTable, } = {}) { - const keyOffset = typeof referencedTable === 'undefined' ? 'offset' : `${referencedTable}.offset`; - const keyLimit = typeof referencedTable === 'undefined' ? 'limit' : `${referencedTable}.limit`; - this.url.searchParams.set(keyOffset, `${from}`); - // Range is inclusive, so add 1 - this.url.searchParams.set(keyLimit, `${to - from + 1}`); - return this; - } - /** - * Set the AbortSignal for the fetch request. - * - * @param signal - The AbortSignal to use for the fetch request - */ - abortSignal(signal) { - this.signal = signal; - return this; - } - /** - * Return `data` as a single object instead of an array of objects. - * - * Query result must be one row (e.g. using `.limit(1)`), otherwise this - * returns an error. - */ - single() { - this.headers['Accept'] = 'application/vnd.pgrst.object+json'; - return this; - } - /** - * Return `data` as a single object instead of an array of objects. - * - * Query result must be zero or one row (e.g. using `.limit(1)`), otherwise - * this returns an error. - */ - maybeSingle() { - // Temporary partial fix for https://github.com/supabase/postgrest-js/issues/361 - // Issue persists e.g. for `.insert([...]).select().maybeSingle()` - if (this.method === 'GET') { - this.headers['Accept'] = 'application/json'; - } - else { - this.headers['Accept'] = 'application/vnd.pgrst.object+json'; - } - this.isMaybeSingle = true; - return this; - } - /** - * Return `data` as a string in CSV format. - */ - csv() { - this.headers['Accept'] = 'text/csv'; - return this; - } - /** - * Return `data` as an object in [GeoJSON](https://geojson.org) format. - */ - geojson() { - this.headers['Accept'] = 'application/geo+json'; - return this; - } - /** - * Return `data` as the EXPLAIN plan for the query. - * - * You need to enable the - * [db_plan_enabled](https://supabase.com/docs/guides/database/debugging-performance#enabling-explain) - * setting before using this method. - * - * @param options - Named parameters - * - * @param options.analyze - If `true`, the query will be executed and the - * actual run time will be returned - * - * @param options.verbose - If `true`, the query identifier will be returned - * and `data` will include the output columns of the query - * - * @param options.settings - If `true`, include information on configuration - * parameters that affect query planning - * - * @param options.buffers - If `true`, include information on buffer usage - * - * @param options.wal - If `true`, include information on WAL record generation - * - * @param options.format - The format of the output, can be `"text"` (default) - * or `"json"` - */ - explain({ analyze = false, verbose = false, settings = false, buffers = false, wal = false, format = 'text', } = {}) { - var _a; - const options = [ - analyze ? 'analyze' : null, - verbose ? 'verbose' : null, - settings ? 'settings' : null, - buffers ? 'buffers' : null, - wal ? 'wal' : null, - ] - .filter(Boolean) - .join('|'); - // An Accept header can carry multiple media types but postgrest-js always sends one - const forMediatype = (_a = this.headers['Accept']) !== null && _a !== void 0 ? _a : 'application/json'; - this.headers['Accept'] = `application/vnd.pgrst.plan+${format}; for="${forMediatype}"; options=${options};`; - if (format === 'json') - return this; - else - return this; - } - /** - * Rollback the query. - * - * `data` will still be returned, but the query is not committed. - */ - rollback() { - var _a; - if (((_a = this.headers['Prefer']) !== null && _a !== void 0 ? _a : '').trim().length > 0) { - this.headers['Prefer'] += ',tx=rollback'; - } - else { - this.headers['Prefer'] = 'tx=rollback'; - } - return this; - } - /** - * Override the type of the returned `data`. - * - * @typeParam NewResult - The new result type to override with - */ - returns() { - return this; - } -} -exports["default"] = PostgrestTransformBuilder; -//# sourceMappingURL=PostgrestTransformBuilder.js.map - -/***/ }), - -/***/ 88258: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.DEFAULT_HEADERS = void 0; -const version_1 = __nccwpck_require__(42799); -exports.DEFAULT_HEADERS = { 'X-Client-Info': `postgrest-js/${version_1.version}` }; -//# sourceMappingURL=constants.js.map - -/***/ }), - -/***/ 60927: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.PostgrestBuilder = exports.PostgrestTransformBuilder = exports.PostgrestFilterBuilder = exports.PostgrestQueryBuilder = exports.PostgrestClient = void 0; -var PostgrestClient_1 = __nccwpck_require__(16193); -Object.defineProperty(exports, "PostgrestClient", ({ enumerable: true, get: function () { return __importDefault(PostgrestClient_1).default; } })); -var PostgrestQueryBuilder_1 = __nccwpck_require__(14253); -Object.defineProperty(exports, "PostgrestQueryBuilder", ({ enumerable: true, get: function () { return __importDefault(PostgrestQueryBuilder_1).default; } })); -var PostgrestFilterBuilder_1 = __nccwpck_require__(6377); -Object.defineProperty(exports, "PostgrestFilterBuilder", ({ enumerable: true, get: function () { return __importDefault(PostgrestFilterBuilder_1).default; } })); -var PostgrestTransformBuilder_1 = __nccwpck_require__(77725); -Object.defineProperty(exports, "PostgrestTransformBuilder", ({ enumerable: true, get: function () { return __importDefault(PostgrestTransformBuilder_1).default; } })); -var PostgrestBuilder_1 = __nccwpck_require__(41455); -Object.defineProperty(exports, "PostgrestBuilder", ({ enumerable: true, get: function () { return __importDefault(PostgrestBuilder_1).default; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 42799: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = '1.15.0'; -//# sourceMappingURL=version.js.map - -/***/ }), - -/***/ 38093: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.REALTIME_CHANNEL_STATES = exports.REALTIME_SUBSCRIBE_STATES = exports.REALTIME_LISTEN_TYPES = exports.REALTIME_POSTGRES_CHANGES_LISTEN_EVENT = void 0; -const constants_1 = __nccwpck_require__(29680); -const push_1 = __importDefault(__nccwpck_require__(49333)); -const timer_1 = __importDefault(__nccwpck_require__(99920)); -const RealtimePresence_1 = __importDefault(__nccwpck_require__(98493)); -const Transformers = __importStar(__nccwpck_require__(93429)); -var REALTIME_POSTGRES_CHANGES_LISTEN_EVENT; -(function (REALTIME_POSTGRES_CHANGES_LISTEN_EVENT) { - REALTIME_POSTGRES_CHANGES_LISTEN_EVENT["ALL"] = "*"; - REALTIME_POSTGRES_CHANGES_LISTEN_EVENT["INSERT"] = "INSERT"; - REALTIME_POSTGRES_CHANGES_LISTEN_EVENT["UPDATE"] = "UPDATE"; - REALTIME_POSTGRES_CHANGES_LISTEN_EVENT["DELETE"] = "DELETE"; -})(REALTIME_POSTGRES_CHANGES_LISTEN_EVENT = exports.REALTIME_POSTGRES_CHANGES_LISTEN_EVENT || (exports.REALTIME_POSTGRES_CHANGES_LISTEN_EVENT = {})); -var REALTIME_LISTEN_TYPES; -(function (REALTIME_LISTEN_TYPES) { - REALTIME_LISTEN_TYPES["BROADCAST"] = "broadcast"; - REALTIME_LISTEN_TYPES["PRESENCE"] = "presence"; - /** - * listen to Postgres changes. - */ - REALTIME_LISTEN_TYPES["POSTGRES_CHANGES"] = "postgres_changes"; -})(REALTIME_LISTEN_TYPES = exports.REALTIME_LISTEN_TYPES || (exports.REALTIME_LISTEN_TYPES = {})); -var REALTIME_SUBSCRIBE_STATES; -(function (REALTIME_SUBSCRIBE_STATES) { - REALTIME_SUBSCRIBE_STATES["SUBSCRIBED"] = "SUBSCRIBED"; - REALTIME_SUBSCRIBE_STATES["TIMED_OUT"] = "TIMED_OUT"; - REALTIME_SUBSCRIBE_STATES["CLOSED"] = "CLOSED"; - REALTIME_SUBSCRIBE_STATES["CHANNEL_ERROR"] = "CHANNEL_ERROR"; -})(REALTIME_SUBSCRIBE_STATES = exports.REALTIME_SUBSCRIBE_STATES || (exports.REALTIME_SUBSCRIBE_STATES = {})); -exports.REALTIME_CHANNEL_STATES = constants_1.CHANNEL_STATES; -/** A channel is the basic building block of Realtime - * and narrows the scope of data flow to subscribed clients. - * You can think of a channel as a chatroom where participants are able to see who's online - * and send and receive messages. - */ -class RealtimeChannel { - constructor( - /** Topic name can be any string. */ - topic, params = { config: {} }, socket) { - this.topic = topic; - this.params = params; - this.socket = socket; - this.bindings = {}; - this.state = constants_1.CHANNEL_STATES.closed; - this.joinedOnce = false; - this.pushBuffer = []; - this.subTopic = topic.replace(/^realtime:/i, ''); - this.params.config = Object.assign({ - broadcast: { ack: false, self: false }, - presence: { key: '' }, - }, params.config); - this.timeout = this.socket.timeout; - this.joinPush = new push_1.default(this, constants_1.CHANNEL_EVENTS.join, this.params, this.timeout); - this.rejoinTimer = new timer_1.default(() => this._rejoinUntilConnected(), this.socket.reconnectAfterMs); - this.joinPush.receive('ok', () => { - this.state = constants_1.CHANNEL_STATES.joined; - this.rejoinTimer.reset(); - this.pushBuffer.forEach((pushEvent) => pushEvent.send()); - this.pushBuffer = []; - }); - this._onClose(() => { - this.rejoinTimer.reset(); - this.socket.log('channel', `close ${this.topic} ${this._joinRef()}`); - this.state = constants_1.CHANNEL_STATES.closed; - this.socket._remove(this); - }); - this._onError((reason) => { - if (this._isLeaving() || this._isClosed()) { - return; - } - this.socket.log('channel', `error ${this.topic}`, reason); - this.state = constants_1.CHANNEL_STATES.errored; - this.rejoinTimer.scheduleTimeout(); - }); - this.joinPush.receive('timeout', () => { - if (!this._isJoining()) { - return; - } - this.socket.log('channel', `timeout ${this.topic}`, this.joinPush.timeout); - this.state = constants_1.CHANNEL_STATES.errored; - this.rejoinTimer.scheduleTimeout(); - }); - this._on(constants_1.CHANNEL_EVENTS.reply, {}, (payload, ref) => { - this._trigger(this._replyEventName(ref), payload); - }); - this.presence = new RealtimePresence_1.default(this); - this.broadcastEndpointURL = this._broadcastEndpointURL(); - } - /** Subscribe registers your client with the server */ - subscribe(callback, timeout = this.timeout) { - var _a, _b; - if (!this.socket.isConnected()) { - this.socket.connect(); - } - if (this.joinedOnce) { - throw `tried to subscribe multiple times. 'subscribe' can only be called a single time per channel instance`; - } - else { - const { config: { broadcast, presence }, } = this.params; - this._onError((e) => callback && callback('CHANNEL_ERROR', e)); - this._onClose(() => callback && callback('CLOSED')); - const accessTokenPayload = {}; - const config = { - broadcast, - presence, - postgres_changes: (_b = (_a = this.bindings.postgres_changes) === null || _a === void 0 ? void 0 : _a.map((r) => r.filter)) !== null && _b !== void 0 ? _b : [], - }; - if (this.socket.accessToken) { - accessTokenPayload.access_token = this.socket.accessToken; - } - this.updateJoinPayload(Object.assign({ config }, accessTokenPayload)); - this.joinedOnce = true; - this._rejoin(timeout); - this.joinPush - .receive('ok', ({ postgres_changes: serverPostgresFilters, }) => { - var _a; - this.socket.accessToken && - this.socket.setAuth(this.socket.accessToken); - if (serverPostgresFilters === undefined) { - callback && callback('SUBSCRIBED'); - return; - } - else { - const clientPostgresBindings = this.bindings.postgres_changes; - const bindingsLen = (_a = clientPostgresBindings === null || clientPostgresBindings === void 0 ? void 0 : clientPostgresBindings.length) !== null && _a !== void 0 ? _a : 0; - const newPostgresBindings = []; - for (let i = 0; i < bindingsLen; i++) { - const clientPostgresBinding = clientPostgresBindings[i]; - const { filter: { event, schema, table, filter }, } = clientPostgresBinding; - const serverPostgresFilter = serverPostgresFilters && serverPostgresFilters[i]; - if (serverPostgresFilter && - serverPostgresFilter.event === event && - serverPostgresFilter.schema === schema && - serverPostgresFilter.table === table && - serverPostgresFilter.filter === filter) { - newPostgresBindings.push(Object.assign(Object.assign({}, clientPostgresBinding), { id: serverPostgresFilter.id })); - } - else { - this.unsubscribe(); - callback && - callback('CHANNEL_ERROR', new Error('mismatch between server and client bindings for postgres changes')); - return; - } - } - this.bindings.postgres_changes = newPostgresBindings; - callback && callback('SUBSCRIBED'); - return; - } - }) - .receive('error', (error) => { - callback && - callback('CHANNEL_ERROR', new Error(JSON.stringify(Object.values(error).join(', ') || 'error'))); - return; - }) - .receive('timeout', () => { - callback && callback('TIMED_OUT'); - return; - }); - } - return this; - } - presenceState() { - return this.presence.state; - } - async track(payload, opts = {}) { - return await this.send({ - type: 'presence', - event: 'track', - payload, - }, opts.timeout || this.timeout); - } - async untrack(opts = {}) { - return await this.send({ - type: 'presence', - event: 'untrack', - }, opts); - } - on(type, filter, callback) { - return this._on(type, filter, callback); - } - /** - * Sends a message into the channel. - * - * @param args Arguments to send to channel - * @param args.type The type of event to send - * @param args.event The name of the event being sent - * @param args.payload Payload to be sent - * @param opts Options to be used during the send process - */ - async send(args, opts = {}) { - var _a, _b; - if (!this._canPush() && args.type === 'broadcast') { - const { event, payload: endpoint_payload } = args; - const options = { - method: 'POST', - headers: { - apikey: (_a = this.socket.apiKey) !== null && _a !== void 0 ? _a : '', - 'Content-Type': 'application/json', - }, - body: JSON.stringify({ - messages: [ - { topic: this.subTopic, event, payload: endpoint_payload }, - ], - }), - }; - try { - const response = await this._fetchWithTimeout(this.broadcastEndpointURL, options, (_b = opts.timeout) !== null && _b !== void 0 ? _b : this.timeout); - if (response.ok) { - return 'ok'; - } - else { - return 'error'; - } - } - catch (error) { - if (error.name === 'AbortError') { - return 'timed out'; - } - else { - return 'error'; - } - } - } - else { - return new Promise((resolve) => { - var _a, _b, _c; - const push = this._push(args.type, args, opts.timeout || this.timeout); - if (args.type === 'broadcast' && !((_c = (_b = (_a = this.params) === null || _a === void 0 ? void 0 : _a.config) === null || _b === void 0 ? void 0 : _b.broadcast) === null || _c === void 0 ? void 0 : _c.ack)) { - resolve('ok'); - } - push.receive('ok', () => resolve('ok')); - push.receive('timeout', () => resolve('timed out')); - }); - } - } - updateJoinPayload(payload) { - this.joinPush.updatePayload(payload); - } - /** - * Leaves the channel. - * - * Unsubscribes from server events, and instructs channel to terminate on server. - * Triggers onClose() hooks. - * - * To receive leave acknowledgements, use the a `receive` hook to bind to the server ack, ie: - * channel.unsubscribe().receive("ok", () => alert("left!") ) - */ - unsubscribe(timeout = this.timeout) { - this.state = constants_1.CHANNEL_STATES.leaving; - const onClose = () => { - this.socket.log('channel', `leave ${this.topic}`); - this._trigger(constants_1.CHANNEL_EVENTS.close, 'leave', this._joinRef()); - }; - this.rejoinTimer.reset(); - // Destroy joinPush to avoid connection timeouts during unscription phase - this.joinPush.destroy(); - return new Promise((resolve) => { - const leavePush = new push_1.default(this, constants_1.CHANNEL_EVENTS.leave, {}, timeout); - leavePush - .receive('ok', () => { - onClose(); - resolve('ok'); - }) - .receive('timeout', () => { - onClose(); - resolve('timed out'); - }) - .receive('error', () => { - resolve('error'); - }); - leavePush.send(); - if (!this._canPush()) { - leavePush.trigger('ok', {}); - } - }); - } - /** @internal */ - _broadcastEndpointURL() { - let url = this.socket.endPoint; - url = url.replace(/^ws/i, 'http'); - url = url.replace(/(\/socket\/websocket|\/socket|\/websocket)\/?$/i, ''); - return url.replace(/\/+$/, '') + '/api/broadcast'; - } - async _fetchWithTimeout(url, options, timeout) { - const controller = new AbortController(); - const id = setTimeout(() => controller.abort(), timeout); - const response = await this.socket.fetch(url, Object.assign(Object.assign({}, options), { signal: controller.signal })); - clearTimeout(id); - return response; - } - /** @internal */ - _push(event, payload, timeout = this.timeout) { - if (!this.joinedOnce) { - throw `tried to push '${event}' to '${this.topic}' before joining. Use channel.subscribe() before pushing events`; - } - let pushEvent = new push_1.default(this, event, payload, timeout); - if (this._canPush()) { - pushEvent.send(); - } - else { - pushEvent.startTimeout(); - this.pushBuffer.push(pushEvent); - } - return pushEvent; - } - /** - * Overridable message hook - * - * Receives all events for specialized message handling before dispatching to the channel callbacks. - * Must return the payload, modified or unmodified. - * - * @internal - */ - _onMessage(_event, payload, _ref) { - return payload; - } - /** @internal */ - _isMember(topic) { - return this.topic === topic; - } - /** @internal */ - _joinRef() { - return this.joinPush.ref; - } - /** @internal */ - _trigger(type, payload, ref) { - var _a, _b; - const typeLower = type.toLocaleLowerCase(); - const { close, error, leave, join } = constants_1.CHANNEL_EVENTS; - const events = [close, error, leave, join]; - if (ref && events.indexOf(typeLower) >= 0 && ref !== this._joinRef()) { - return; - } - let handledPayload = this._onMessage(typeLower, payload, ref); - if (payload && !handledPayload) { - throw 'channel onMessage callbacks must return the payload, modified or unmodified'; - } - if (['insert', 'update', 'delete'].includes(typeLower)) { - (_a = this.bindings.postgres_changes) === null || _a === void 0 ? void 0 : _a.filter((bind) => { - var _a, _b, _c; - return (((_a = bind.filter) === null || _a === void 0 ? void 0 : _a.event) === '*' || - ((_c = (_b = bind.filter) === null || _b === void 0 ? void 0 : _b.event) === null || _c === void 0 ? void 0 : _c.toLocaleLowerCase()) === typeLower); - }).map((bind) => bind.callback(handledPayload, ref)); - } - else { - (_b = this.bindings[typeLower]) === null || _b === void 0 ? void 0 : _b.filter((bind) => { - var _a, _b, _c, _d, _e, _f; - if (['broadcast', 'presence', 'postgres_changes'].includes(typeLower)) { - if ('id' in bind) { - const bindId = bind.id; - const bindEvent = (_a = bind.filter) === null || _a === void 0 ? void 0 : _a.event; - return (bindId && - ((_b = payload.ids) === null || _b === void 0 ? void 0 : _b.includes(bindId)) && - (bindEvent === '*' || - (bindEvent === null || bindEvent === void 0 ? void 0 : bindEvent.toLocaleLowerCase()) === - ((_c = payload.data) === null || _c === void 0 ? void 0 : _c.type.toLocaleLowerCase()))); - } - else { - const bindEvent = (_e = (_d = bind === null || bind === void 0 ? void 0 : bind.filter) === null || _d === void 0 ? void 0 : _d.event) === null || _e === void 0 ? void 0 : _e.toLocaleLowerCase(); - return (bindEvent === '*' || - bindEvent === ((_f = payload === null || payload === void 0 ? void 0 : payload.event) === null || _f === void 0 ? void 0 : _f.toLocaleLowerCase())); - } - } - else { - return bind.type.toLocaleLowerCase() === typeLower; - } - }).map((bind) => { - if (typeof handledPayload === 'object' && 'ids' in handledPayload) { - const postgresChanges = handledPayload.data; - const { schema, table, commit_timestamp, type, errors } = postgresChanges; - const enrichedPayload = { - schema: schema, - table: table, - commit_timestamp: commit_timestamp, - eventType: type, - new: {}, - old: {}, - errors: errors, - }; - handledPayload = Object.assign(Object.assign({}, enrichedPayload), this._getPayloadRecords(postgresChanges)); - } - bind.callback(handledPayload, ref); - }); - } - } - /** @internal */ - _isClosed() { - return this.state === constants_1.CHANNEL_STATES.closed; - } - /** @internal */ - _isJoined() { - return this.state === constants_1.CHANNEL_STATES.joined; - } - /** @internal */ - _isJoining() { - return this.state === constants_1.CHANNEL_STATES.joining; - } - /** @internal */ - _isLeaving() { - return this.state === constants_1.CHANNEL_STATES.leaving; - } - /** @internal */ - _replyEventName(ref) { - return `chan_reply_${ref}`; - } - /** @internal */ - _on(type, filter, callback) { - const typeLower = type.toLocaleLowerCase(); - const binding = { - type: typeLower, - filter: filter, - callback: callback, - }; - if (this.bindings[typeLower]) { - this.bindings[typeLower].push(binding); - } - else { - this.bindings[typeLower] = [binding]; - } - return this; - } - /** @internal */ - _off(type, filter) { - const typeLower = type.toLocaleLowerCase(); - this.bindings[typeLower] = this.bindings[typeLower].filter((bind) => { - var _a; - return !(((_a = bind.type) === null || _a === void 0 ? void 0 : _a.toLocaleLowerCase()) === typeLower && - RealtimeChannel.isEqual(bind.filter, filter)); - }); - return this; - } - /** @internal */ - static isEqual(obj1, obj2) { - if (Object.keys(obj1).length !== Object.keys(obj2).length) { - return false; - } - for (const k in obj1) { - if (obj1[k] !== obj2[k]) { - return false; - } - } - return true; - } - /** @internal */ - _rejoinUntilConnected() { - this.rejoinTimer.scheduleTimeout(); - if (this.socket.isConnected()) { - this._rejoin(); - } - } - /** - * Registers a callback that will be executed when the channel closes. - * - * @internal - */ - _onClose(callback) { - this._on(constants_1.CHANNEL_EVENTS.close, {}, callback); - } - /** - * Registers a callback that will be executed when the channel encounteres an error. - * - * @internal - */ - _onError(callback) { - this._on(constants_1.CHANNEL_EVENTS.error, {}, (reason) => callback(reason)); - } - /** - * Returns `true` if the socket is connected and the channel has been joined. - * - * @internal - */ - _canPush() { - return this.socket.isConnected() && this._isJoined(); - } - /** @internal */ - _rejoin(timeout = this.timeout) { - if (this._isLeaving()) { - return; - } - this.socket._leaveOpenTopic(this.topic); - this.state = constants_1.CHANNEL_STATES.joining; - this.joinPush.resend(timeout); - } - /** @internal */ - _getPayloadRecords(payload) { - const records = { - new: {}, - old: {}, - }; - if (payload.type === 'INSERT' || payload.type === 'UPDATE') { - records.new = Transformers.convertChangeData(payload.columns, payload.record); - } - if (payload.type === 'UPDATE' || payload.type === 'DELETE') { - records.old = Transformers.convertChangeData(payload.columns, payload.old_record); - } - return records; - } -} -exports["default"] = RealtimeChannel; -//# sourceMappingURL=RealtimeChannel.js.map - -/***/ }), - -/***/ 73955: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -const constants_1 = __nccwpck_require__(29680); -const timer_1 = __importDefault(__nccwpck_require__(99920)); -const serializer_1 = __importDefault(__nccwpck_require__(72049)); -const RealtimeChannel_1 = __importDefault(__nccwpck_require__(38093)); -const noop = () => { }; -const NATIVE_WEBSOCKET_AVAILABLE = typeof WebSocket !== 'undefined'; -class RealtimeClient { - /** - * Initializes the Socket. - * - * @param endPoint The string WebSocket endpoint, ie, "ws://example.com/socket", "wss://example.com", "/socket" (inherited host & protocol) - * @param options.transport The Websocket Transport, for example WebSocket. - * @param options.timeout The default timeout in milliseconds to trigger push timeouts. - * @param options.params The optional params to pass when connecting. - * @param options.headers The optional headers to pass when connecting. - * @param options.heartbeatIntervalMs The millisec interval to send a heartbeat message. - * @param options.logger The optional function for specialized logging, ie: logger: (kind, msg, data) => { console.log(`${kind}: ${msg}`, data) } - * @param options.encode The function to encode outgoing messages. Defaults to JSON: (payload, callback) => callback(JSON.stringify(payload)) - * @param options.decode The function to decode incoming messages. Defaults to Serializer's decode. - * @param options.reconnectAfterMs he optional function that returns the millsec reconnect interval. Defaults to stepped backoff off. - */ - constructor(endPoint, options) { - var _a; - this.accessToken = null; - this.apiKey = null; - this.channels = []; - this.endPoint = ''; - this.headers = constants_1.DEFAULT_HEADERS; - this.params = {}; - this.timeout = constants_1.DEFAULT_TIMEOUT; - this.heartbeatIntervalMs = 30000; - this.heartbeatTimer = undefined; - this.pendingHeartbeatRef = null; - this.ref = 0; - this.logger = noop; - this.conn = null; - this.sendBuffer = []; - this.serializer = new serializer_1.default(); - this.stateChangeCallbacks = { - open: [], - close: [], - error: [], - message: [], - }; - /** - * Use either custom fetch, if provided, or default fetch to make HTTP requests - * - * @internal - */ - this._resolveFetch = (customFetch) => { - let _fetch; - if (customFetch) { - _fetch = customFetch; - } - else if (typeof fetch === 'undefined') { - _fetch = (...args) => Promise.resolve().then(() => __importStar(__nccwpck_require__(83318))).then(({ default: fetch }) => fetch(...args)); - } - else { - _fetch = fetch; - } - return (...args) => _fetch(...args); - }; - this.endPoint = `${endPoint}/${constants_1.TRANSPORTS.websocket}`; - if (options === null || options === void 0 ? void 0 : options.transport) { - this.transport = options.transport; - } - else { - this.transport = null; - } - if (options === null || options === void 0 ? void 0 : options.params) - this.params = options.params; - if (options === null || options === void 0 ? void 0 : options.headers) - this.headers = Object.assign(Object.assign({}, this.headers), options.headers); - if (options === null || options === void 0 ? void 0 : options.timeout) - this.timeout = options.timeout; - if (options === null || options === void 0 ? void 0 : options.logger) - this.logger = options.logger; - if (options === null || options === void 0 ? void 0 : options.heartbeatIntervalMs) - this.heartbeatIntervalMs = options.heartbeatIntervalMs; - const accessToken = (_a = options === null || options === void 0 ? void 0 : options.params) === null || _a === void 0 ? void 0 : _a.apikey; - if (accessToken) { - this.accessToken = accessToken; - this.apiKey = accessToken; - } - this.reconnectAfterMs = (options === null || options === void 0 ? void 0 : options.reconnectAfterMs) - ? options.reconnectAfterMs - : (tries) => { - return [1000, 2000, 5000, 10000][tries - 1] || 10000; - }; - this.encode = (options === null || options === void 0 ? void 0 : options.encode) - ? options.encode - : (payload, callback) => { - return callback(JSON.stringify(payload)); - }; - this.decode = (options === null || options === void 0 ? void 0 : options.decode) - ? options.decode - : this.serializer.decode.bind(this.serializer); - this.reconnectTimer = new timer_1.default(async () => { - this.disconnect(); - this.connect(); - }, this.reconnectAfterMs); - this.fetch = this._resolveFetch(options === null || options === void 0 ? void 0 : options.fetch); - } - /** - * Connects the socket, unless already connected. - */ - connect() { - if (this.conn) { - return; - } - if (this.transport) { - this.conn = new this.transport(this._endPointURL(), undefined, { - headers: this.headers, - }); - return; - } - if (NATIVE_WEBSOCKET_AVAILABLE) { - this.conn = new WebSocket(this._endPointURL()); - this.setupConnection(); - return; - } - this.conn = new WSWebSocketDummy(this._endPointURL(), undefined, { - close: () => { - this.conn = null; - }, - }); - Promise.resolve().then(() => __importStar(__nccwpck_require__(11354))).then(({ default: WS }) => { - this.conn = new WS(this._endPointURL(), undefined, { - headers: this.headers, - }); - this.setupConnection(); - }); - } - /** - * Disconnects the socket. - * - * @param code A numeric status code to send on disconnect. - * @param reason A custom reason for the disconnect. - */ - disconnect(code, reason) { - if (this.conn) { - this.conn.onclose = function () { }; // noop - if (code) { - this.conn.close(code, reason !== null && reason !== void 0 ? reason : ''); - } - else { - this.conn.close(); - } - this.conn = null; - // remove open handles - this.heartbeatTimer && clearInterval(this.heartbeatTimer); - this.reconnectTimer.reset(); - } - } - /** - * Returns all created channels - */ - getChannels() { - return this.channels; - } - /** - * Unsubscribes and removes a single channel - * @param channel A RealtimeChannel instance - */ - async removeChannel(channel) { - const status = await channel.unsubscribe(); - if (this.channels.length === 0) { - this.disconnect(); - } - return status; - } - /** - * Unsubscribes and removes all channels - */ - async removeAllChannels() { - const values_1 = await Promise.all(this.channels.map((channel) => channel.unsubscribe())); - this.disconnect(); - return values_1; - } - /** - * Logs the message. - * - * For customized logging, `this.logger` can be overridden. - */ - log(kind, msg, data) { - this.logger(kind, msg, data); - } - /** - * Returns the current state of the socket. - */ - connectionState() { - switch (this.conn && this.conn.readyState) { - case constants_1.SOCKET_STATES.connecting: - return constants_1.CONNECTION_STATE.Connecting; - case constants_1.SOCKET_STATES.open: - return constants_1.CONNECTION_STATE.Open; - case constants_1.SOCKET_STATES.closing: - return constants_1.CONNECTION_STATE.Closing; - default: - return constants_1.CONNECTION_STATE.Closed; - } - } - /** - * Returns `true` is the connection is open. - */ - isConnected() { - return this.connectionState() === constants_1.CONNECTION_STATE.Open; - } - channel(topic, params = { config: {} }) { - const chan = new RealtimeChannel_1.default(`realtime:${topic}`, params, this); - this.channels.push(chan); - return chan; - } - /** - * Push out a message if the socket is connected. - * - * If the socket is not connected, the message gets enqueued within a local buffer, and sent out when a connection is next established. - */ - push(data) { - const { topic, event, payload, ref } = data; - const callback = () => { - this.encode(data, (result) => { - var _a; - (_a = this.conn) === null || _a === void 0 ? void 0 : _a.send(result); - }); - }; - this.log('push', `${topic} ${event} (${ref})`, payload); - if (this.isConnected()) { - callback(); - } - else { - this.sendBuffer.push(callback); - } - } - /** - * Sets the JWT access token used for channel subscription authorization and Realtime RLS. - * - * @param token A JWT string. - */ - setAuth(token) { - this.accessToken = token; - this.channels.forEach((channel) => { - token && channel.updateJoinPayload({ access_token: token }); - if (channel.joinedOnce && channel._isJoined()) { - channel._push(constants_1.CHANNEL_EVENTS.access_token, { access_token: token }); - } - }); - } - /** - * Return the next message ref, accounting for overflows - * - * @internal - */ - _makeRef() { - let newRef = this.ref + 1; - if (newRef === this.ref) { - this.ref = 0; - } - else { - this.ref = newRef; - } - return this.ref.toString(); - } - /** - * Unsubscribe from channels with the specified topic. - * - * @internal - */ - _leaveOpenTopic(topic) { - let dupChannel = this.channels.find((c) => c.topic === topic && (c._isJoined() || c._isJoining())); - if (dupChannel) { - this.log('transport', `leaving duplicate topic "${topic}"`); - dupChannel.unsubscribe(); - } - } - /** - * Removes a subscription from the socket. - * - * @param channel An open subscription. - * - * @internal - */ - _remove(channel) { - this.channels = this.channels.filter((c) => c._joinRef() !== channel._joinRef()); - } - /** - * Sets up connection handlers. - * - * @internal - */ - setupConnection() { - if (this.conn) { - this.conn.binaryType = 'arraybuffer'; - this.conn.onopen = () => this._onConnOpen(); - this.conn.onerror = (error) => this._onConnError(error); - this.conn.onmessage = (event) => this._onConnMessage(event); - this.conn.onclose = (event) => this._onConnClose(event); - } - } - /** - * Returns the URL of the websocket. - * - * @internal - */ - _endPointURL() { - return this._appendParams(this.endPoint, Object.assign({}, this.params, { vsn: constants_1.VSN })); - } - /** @internal */ - _onConnMessage(rawMessage) { - this.decode(rawMessage.data, (msg) => { - let { topic, event, payload, ref } = msg; - if ((ref && ref === this.pendingHeartbeatRef) || - event === (payload === null || payload === void 0 ? void 0 : payload.type)) { - this.pendingHeartbeatRef = null; - } - this.log('receive', `${payload.status || ''} ${topic} ${event} ${(ref && '(' + ref + ')') || ''}`, payload); - this.channels - .filter((channel) => channel._isMember(topic)) - .forEach((channel) => channel._trigger(event, payload, ref)); - this.stateChangeCallbacks.message.forEach((callback) => callback(msg)); - }); - } - /** @internal */ - _onConnOpen() { - this.log('transport', `connected to ${this._endPointURL()}`); - this._flushSendBuffer(); - this.reconnectTimer.reset(); - this.heartbeatTimer && clearInterval(this.heartbeatTimer); - this.heartbeatTimer = setInterval(() => this._sendHeartbeat(), this.heartbeatIntervalMs); - this.stateChangeCallbacks.open.forEach((callback) => callback()); - } - /** @internal */ - _onConnClose(event) { - this.log('transport', 'close', event); - this._triggerChanError(); - this.heartbeatTimer && clearInterval(this.heartbeatTimer); - this.reconnectTimer.scheduleTimeout(); - this.stateChangeCallbacks.close.forEach((callback) => callback(event)); - } - /** @internal */ - _onConnError(error) { - this.log('transport', error.message); - this._triggerChanError(); - this.stateChangeCallbacks.error.forEach((callback) => callback(error)); - } - /** @internal */ - _triggerChanError() { - this.channels.forEach((channel) => channel._trigger(constants_1.CHANNEL_EVENTS.error)); - } - /** @internal */ - _appendParams(url, params) { - if (Object.keys(params).length === 0) { - return url; - } - const prefix = url.match(/\?/) ? '&' : '?'; - const query = new URLSearchParams(params); - return `${url}${prefix}${query}`; - } - /** @internal */ - _flushSendBuffer() { - if (this.isConnected() && this.sendBuffer.length > 0) { - this.sendBuffer.forEach((callback) => callback()); - this.sendBuffer = []; - } - } - /** @internal */ - _sendHeartbeat() { - var _a; - if (!this.isConnected()) { - return; - } - if (this.pendingHeartbeatRef) { - this.pendingHeartbeatRef = null; - this.log('transport', 'heartbeat timeout. Attempting to re-establish connection'); - (_a = this.conn) === null || _a === void 0 ? void 0 : _a.close(constants_1.WS_CLOSE_NORMAL, 'hearbeat timeout'); - return; - } - this.pendingHeartbeatRef = this._makeRef(); - this.push({ - topic: 'phoenix', - event: 'heartbeat', - payload: {}, - ref: this.pendingHeartbeatRef, - }); - this.setAuth(this.accessToken); - } -} -exports["default"] = RealtimeClient; -class WSWebSocketDummy { - constructor(address, _protocols, options) { - this.binaryType = 'arraybuffer'; - this.onclose = () => { }; - this.onerror = () => { }; - this.onmessage = () => { }; - this.onopen = () => { }; - this.readyState = constants_1.SOCKET_STATES.connecting; - this.send = () => { }; - this.url = null; - this.url = address; - this.close = options.close; - } -} -//# sourceMappingURL=RealtimeClient.js.map - -/***/ }), - -/***/ 98493: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -/* - This file draws heavily from https://github.com/phoenixframework/phoenix/blob/d344ec0a732ab4ee204215b31de69cf4be72e3bf/assets/js/phoenix/presence.js - License: https://github.com/phoenixframework/phoenix/blob/d344ec0a732ab4ee204215b31de69cf4be72e3bf/LICENSE.md -*/ -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.REALTIME_PRESENCE_LISTEN_EVENTS = void 0; -var REALTIME_PRESENCE_LISTEN_EVENTS; -(function (REALTIME_PRESENCE_LISTEN_EVENTS) { - REALTIME_PRESENCE_LISTEN_EVENTS["SYNC"] = "sync"; - REALTIME_PRESENCE_LISTEN_EVENTS["JOIN"] = "join"; - REALTIME_PRESENCE_LISTEN_EVENTS["LEAVE"] = "leave"; -})(REALTIME_PRESENCE_LISTEN_EVENTS = exports.REALTIME_PRESENCE_LISTEN_EVENTS || (exports.REALTIME_PRESENCE_LISTEN_EVENTS = {})); -class RealtimePresence { - /** - * Initializes the Presence. - * - * @param channel - The RealtimeChannel - * @param opts - The options, - * for example `{events: {state: 'state', diff: 'diff'}}` - */ - constructor(channel, opts) { - this.channel = channel; - this.state = {}; - this.pendingDiffs = []; - this.joinRef = null; - this.caller = { - onJoin: () => { }, - onLeave: () => { }, - onSync: () => { }, - }; - const events = (opts === null || opts === void 0 ? void 0 : opts.events) || { - state: 'presence_state', - diff: 'presence_diff', - }; - this.channel._on(events.state, {}, (newState) => { - const { onJoin, onLeave, onSync } = this.caller; - this.joinRef = this.channel._joinRef(); - this.state = RealtimePresence.syncState(this.state, newState, onJoin, onLeave); - this.pendingDiffs.forEach((diff) => { - this.state = RealtimePresence.syncDiff(this.state, diff, onJoin, onLeave); - }); - this.pendingDiffs = []; - onSync(); - }); - this.channel._on(events.diff, {}, (diff) => { - const { onJoin, onLeave, onSync } = this.caller; - if (this.inPendingSyncState()) { - this.pendingDiffs.push(diff); - } - else { - this.state = RealtimePresence.syncDiff(this.state, diff, onJoin, onLeave); - onSync(); - } - }); - this.onJoin((key, currentPresences, newPresences) => { - this.channel._trigger('presence', { - event: 'join', - key, - currentPresences, - newPresences, - }); - }); - this.onLeave((key, currentPresences, leftPresences) => { - this.channel._trigger('presence', { - event: 'leave', - key, - currentPresences, - leftPresences, - }); - }); - this.onSync(() => { - this.channel._trigger('presence', { event: 'sync' }); - }); - } - /** - * Used to sync the list of presences on the server with the - * client's state. - * - * An optional `onJoin` and `onLeave` callback can be provided to - * react to changes in the client's local presences across - * disconnects and reconnects with the server. - * - * @internal - */ - static syncState(currentState, newState, onJoin, onLeave) { - const state = this.cloneDeep(currentState); - const transformedState = this.transformState(newState); - const joins = {}; - const leaves = {}; - this.map(state, (key, presences) => { - if (!transformedState[key]) { - leaves[key] = presences; - } - }); - this.map(transformedState, (key, newPresences) => { - const currentPresences = state[key]; - if (currentPresences) { - const newPresenceRefs = newPresences.map((m) => m.presence_ref); - const curPresenceRefs = currentPresences.map((m) => m.presence_ref); - const joinedPresences = newPresences.filter((m) => curPresenceRefs.indexOf(m.presence_ref) < 0); - const leftPresences = currentPresences.filter((m) => newPresenceRefs.indexOf(m.presence_ref) < 0); - if (joinedPresences.length > 0) { - joins[key] = joinedPresences; - } - if (leftPresences.length > 0) { - leaves[key] = leftPresences; - } - } - else { - joins[key] = newPresences; - } - }); - return this.syncDiff(state, { joins, leaves }, onJoin, onLeave); - } - /** - * Used to sync a diff of presence join and leave events from the - * server, as they happen. - * - * Like `syncState`, `syncDiff` accepts optional `onJoin` and - * `onLeave` callbacks to react to a user joining or leaving from a - * device. - * - * @internal - */ - static syncDiff(state, diff, onJoin, onLeave) { - const { joins, leaves } = { - joins: this.transformState(diff.joins), - leaves: this.transformState(diff.leaves), - }; - if (!onJoin) { - onJoin = () => { }; - } - if (!onLeave) { - onLeave = () => { }; - } - this.map(joins, (key, newPresences) => { - var _a; - const currentPresences = (_a = state[key]) !== null && _a !== void 0 ? _a : []; - state[key] = this.cloneDeep(newPresences); - if (currentPresences.length > 0) { - const joinedPresenceRefs = state[key].map((m) => m.presence_ref); - const curPresences = currentPresences.filter((m) => joinedPresenceRefs.indexOf(m.presence_ref) < 0); - state[key].unshift(...curPresences); - } - onJoin(key, currentPresences, newPresences); - }); - this.map(leaves, (key, leftPresences) => { - let currentPresences = state[key]; - if (!currentPresences) - return; - const presenceRefsToRemove = leftPresences.map((m) => m.presence_ref); - currentPresences = currentPresences.filter((m) => presenceRefsToRemove.indexOf(m.presence_ref) < 0); - state[key] = currentPresences; - onLeave(key, currentPresences, leftPresences); - if (currentPresences.length === 0) - delete state[key]; - }); - return state; - } - /** @internal */ - static map(obj, func) { - return Object.getOwnPropertyNames(obj).map((key) => func(key, obj[key])); - } - /** - * Remove 'metas' key - * Change 'phx_ref' to 'presence_ref' - * Remove 'phx_ref' and 'phx_ref_prev' - * - * @example - * // returns { - * abc123: [ - * { presence_ref: '2', user_id: 1 }, - * { presence_ref: '3', user_id: 2 } - * ] - * } - * RealtimePresence.transformState({ - * abc123: { - * metas: [ - * { phx_ref: '2', phx_ref_prev: '1' user_id: 1 }, - * { phx_ref: '3', user_id: 2 } - * ] - * } - * }) - * - * @internal - */ - static transformState(state) { - state = this.cloneDeep(state); - return Object.getOwnPropertyNames(state).reduce((newState, key) => { - const presences = state[key]; - if ('metas' in presences) { - newState[key] = presences.metas.map((presence) => { - presence['presence_ref'] = presence['phx_ref']; - delete presence['phx_ref']; - delete presence['phx_ref_prev']; - return presence; - }); - } - else { - newState[key] = presences; - } - return newState; - }, {}); - } - /** @internal */ - static cloneDeep(obj) { - return JSON.parse(JSON.stringify(obj)); - } - /** @internal */ - onJoin(callback) { - this.caller.onJoin = callback; - } - /** @internal */ - onLeave(callback) { - this.caller.onLeave = callback; - } - /** @internal */ - onSync(callback) { - this.caller.onSync = callback; - } - /** @internal */ - inPendingSyncState() { - return !this.joinRef || this.joinRef !== this.channel._joinRef(); - } -} -exports["default"] = RealtimePresence; -//# sourceMappingURL=RealtimePresence.js.map - -/***/ }), - -/***/ 36209: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.REALTIME_CHANNEL_STATES = exports.REALTIME_SUBSCRIBE_STATES = exports.REALTIME_PRESENCE_LISTEN_EVENTS = exports.REALTIME_POSTGRES_CHANGES_LISTEN_EVENT = exports.REALTIME_LISTEN_TYPES = exports.RealtimeClient = exports.RealtimeChannel = exports.RealtimePresence = void 0; -const RealtimeClient_1 = __importDefault(__nccwpck_require__(73955)); -exports.RealtimeClient = RealtimeClient_1.default; -const RealtimeChannel_1 = __importStar(__nccwpck_require__(38093)); -exports.RealtimeChannel = RealtimeChannel_1.default; -Object.defineProperty(exports, "REALTIME_LISTEN_TYPES", ({ enumerable: true, get: function () { return RealtimeChannel_1.REALTIME_LISTEN_TYPES; } })); -Object.defineProperty(exports, "REALTIME_POSTGRES_CHANGES_LISTEN_EVENT", ({ enumerable: true, get: function () { return RealtimeChannel_1.REALTIME_POSTGRES_CHANGES_LISTEN_EVENT; } })); -Object.defineProperty(exports, "REALTIME_SUBSCRIBE_STATES", ({ enumerable: true, get: function () { return RealtimeChannel_1.REALTIME_SUBSCRIBE_STATES; } })); -Object.defineProperty(exports, "REALTIME_CHANNEL_STATES", ({ enumerable: true, get: function () { return RealtimeChannel_1.REALTIME_CHANNEL_STATES; } })); -const RealtimePresence_1 = __importStar(__nccwpck_require__(98493)); -exports.RealtimePresence = RealtimePresence_1.default; -Object.defineProperty(exports, "REALTIME_PRESENCE_LISTEN_EVENTS", ({ enumerable: true, get: function () { return RealtimePresence_1.REALTIME_PRESENCE_LISTEN_EVENTS; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 29680: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.CONNECTION_STATE = exports.TRANSPORTS = exports.CHANNEL_EVENTS = exports.CHANNEL_STATES = exports.SOCKET_STATES = exports.WS_CLOSE_NORMAL = exports.DEFAULT_TIMEOUT = exports.VSN = exports.DEFAULT_HEADERS = void 0; -const version_1 = __nccwpck_require__(38889); -exports.DEFAULT_HEADERS = { 'X-Client-Info': `realtime-js/${version_1.version}` }; -exports.VSN = '1.0.0'; -exports.DEFAULT_TIMEOUT = 10000; -exports.WS_CLOSE_NORMAL = 1000; -var SOCKET_STATES; -(function (SOCKET_STATES) { - SOCKET_STATES[SOCKET_STATES["connecting"] = 0] = "connecting"; - SOCKET_STATES[SOCKET_STATES["open"] = 1] = "open"; - SOCKET_STATES[SOCKET_STATES["closing"] = 2] = "closing"; - SOCKET_STATES[SOCKET_STATES["closed"] = 3] = "closed"; -})(SOCKET_STATES = exports.SOCKET_STATES || (exports.SOCKET_STATES = {})); -var CHANNEL_STATES; -(function (CHANNEL_STATES) { - CHANNEL_STATES["closed"] = "closed"; - CHANNEL_STATES["errored"] = "errored"; - CHANNEL_STATES["joined"] = "joined"; - CHANNEL_STATES["joining"] = "joining"; - CHANNEL_STATES["leaving"] = "leaving"; -})(CHANNEL_STATES = exports.CHANNEL_STATES || (exports.CHANNEL_STATES = {})); -var CHANNEL_EVENTS; -(function (CHANNEL_EVENTS) { - CHANNEL_EVENTS["close"] = "phx_close"; - CHANNEL_EVENTS["error"] = "phx_error"; - CHANNEL_EVENTS["join"] = "phx_join"; - CHANNEL_EVENTS["reply"] = "phx_reply"; - CHANNEL_EVENTS["leave"] = "phx_leave"; - CHANNEL_EVENTS["access_token"] = "access_token"; -})(CHANNEL_EVENTS = exports.CHANNEL_EVENTS || (exports.CHANNEL_EVENTS = {})); -var TRANSPORTS; -(function (TRANSPORTS) { - TRANSPORTS["websocket"] = "websocket"; -})(TRANSPORTS = exports.TRANSPORTS || (exports.TRANSPORTS = {})); -var CONNECTION_STATE; -(function (CONNECTION_STATE) { - CONNECTION_STATE["Connecting"] = "connecting"; - CONNECTION_STATE["Open"] = "open"; - CONNECTION_STATE["Closing"] = "closing"; - CONNECTION_STATE["Closed"] = "closed"; -})(CONNECTION_STATE = exports.CONNECTION_STATE || (exports.CONNECTION_STATE = {})); -//# sourceMappingURL=constants.js.map - -/***/ }), - -/***/ 49333: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -const constants_1 = __nccwpck_require__(29680); -class Push { - /** - * Initializes the Push - * - * @param channel The Channel - * @param event The event, for example `"phx_join"` - * @param payload The payload, for example `{user_id: 123}` - * @param timeout The push timeout in milliseconds - */ - constructor(channel, event, payload = {}, timeout = constants_1.DEFAULT_TIMEOUT) { - this.channel = channel; - this.event = event; - this.payload = payload; - this.timeout = timeout; - this.sent = false; - this.timeoutTimer = undefined; - this.ref = ''; - this.receivedResp = null; - this.recHooks = []; - this.refEvent = null; - } - resend(timeout) { - this.timeout = timeout; - this._cancelRefEvent(); - this.ref = ''; - this.refEvent = null; - this.receivedResp = null; - this.sent = false; - this.send(); - } - send() { - if (this._hasReceived('timeout')) { - return; - } - this.startTimeout(); - this.sent = true; - this.channel.socket.push({ - topic: this.channel.topic, - event: this.event, - payload: this.payload, - ref: this.ref, - join_ref: this.channel._joinRef(), - }); - } - updatePayload(payload) { - this.payload = Object.assign(Object.assign({}, this.payload), payload); - } - receive(status, callback) { - var _a; - if (this._hasReceived(status)) { - callback((_a = this.receivedResp) === null || _a === void 0 ? void 0 : _a.response); - } - this.recHooks.push({ status, callback }); - return this; - } - startTimeout() { - if (this.timeoutTimer) { - return; - } - this.ref = this.channel.socket._makeRef(); - this.refEvent = this.channel._replyEventName(this.ref); - const callback = (payload) => { - this._cancelRefEvent(); - this._cancelTimeout(); - this.receivedResp = payload; - this._matchReceive(payload); - }; - this.channel._on(this.refEvent, {}, callback); - this.timeoutTimer = setTimeout(() => { - this.trigger('timeout', {}); - }, this.timeout); - } - trigger(status, response) { - if (this.refEvent) - this.channel._trigger(this.refEvent, { status, response }); - } - destroy() { - this._cancelRefEvent(); - this._cancelTimeout(); - } - _cancelRefEvent() { - if (!this.refEvent) { - return; - } - this.channel._off(this.refEvent, {}); - } - _cancelTimeout() { - clearTimeout(this.timeoutTimer); - this.timeoutTimer = undefined; - } - _matchReceive({ status, response, }) { - this.recHooks - .filter((h) => h.status === status) - .forEach((h) => h.callback(response)); - } - _hasReceived(status) { - return this.receivedResp && this.receivedResp.status === status; - } -} -exports["default"] = Push; -//# sourceMappingURL=push.js.map - -/***/ }), - -/***/ 72049: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -// This file draws heavily from https://github.com/phoenixframework/phoenix/commit/cf098e9cf7a44ee6479d31d911a97d3c7430c6fe -// License: https://github.com/phoenixframework/phoenix/blob/master/LICENSE.md -Object.defineProperty(exports, "__esModule", ({ value: true })); -class Serializer { - constructor() { - this.HEADER_LENGTH = 1; - } - decode(rawPayload, callback) { - if (rawPayload.constructor === ArrayBuffer) { - return callback(this._binaryDecode(rawPayload)); - } - if (typeof rawPayload === 'string') { - return callback(JSON.parse(rawPayload)); - } - return callback({}); - } - _binaryDecode(buffer) { - const view = new DataView(buffer); - const decoder = new TextDecoder(); - return this._decodeBroadcast(buffer, view, decoder); - } - _decodeBroadcast(buffer, view, decoder) { - const topicSize = view.getUint8(1); - const eventSize = view.getUint8(2); - let offset = this.HEADER_LENGTH + 2; - const topic = decoder.decode(buffer.slice(offset, offset + topicSize)); - offset = offset + topicSize; - const event = decoder.decode(buffer.slice(offset, offset + eventSize)); - offset = offset + eventSize; - const data = JSON.parse(decoder.decode(buffer.slice(offset, buffer.byteLength))); - return { ref: null, topic: topic, event: event, payload: data }; - } -} -exports["default"] = Serializer; -//# sourceMappingURL=serializer.js.map - -/***/ }), - -/***/ 99920: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -/** - * Creates a timer that accepts a `timerCalc` function to perform calculated timeout retries, such as exponential backoff. - * - * @example - * let reconnectTimer = new Timer(() => this.connect(), function(tries){ - * return [1000, 5000, 10000][tries - 1] || 10000 - * }) - * reconnectTimer.scheduleTimeout() // fires after 1000 - * reconnectTimer.scheduleTimeout() // fires after 5000 - * reconnectTimer.reset() - * reconnectTimer.scheduleTimeout() // fires after 1000 - */ -class Timer { - constructor(callback, timerCalc) { - this.callback = callback; - this.timerCalc = timerCalc; - this.timer = undefined; - this.tries = 0; - this.callback = callback; - this.timerCalc = timerCalc; - } - reset() { - this.tries = 0; - clearTimeout(this.timer); - } - // Cancels any previous scheduleTimeout and schedules callback - scheduleTimeout() { - clearTimeout(this.timer); - this.timer = setTimeout(() => { - this.tries = this.tries + 1; - this.callback(); - }, this.timerCalc(this.tries + 1)); - } -} -exports["default"] = Timer; -//# sourceMappingURL=timer.js.map - -/***/ }), - -/***/ 93429: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -/** - * Helpers to convert the change Payload into native JS types. - */ -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.toTimestampString = exports.toArray = exports.toJson = exports.toNumber = exports.toBoolean = exports.convertCell = exports.convertColumn = exports.convertChangeData = exports.PostgresTypes = void 0; -// Adapted from epgsql (src/epgsql_binary.erl), this module licensed under -// 3-clause BSD found here: https://raw.githubusercontent.com/epgsql/epgsql/devel/LICENSE -var PostgresTypes; -(function (PostgresTypes) { - PostgresTypes["abstime"] = "abstime"; - PostgresTypes["bool"] = "bool"; - PostgresTypes["date"] = "date"; - PostgresTypes["daterange"] = "daterange"; - PostgresTypes["float4"] = "float4"; - PostgresTypes["float8"] = "float8"; - PostgresTypes["int2"] = "int2"; - PostgresTypes["int4"] = "int4"; - PostgresTypes["int4range"] = "int4range"; - PostgresTypes["int8"] = "int8"; - PostgresTypes["int8range"] = "int8range"; - PostgresTypes["json"] = "json"; - PostgresTypes["jsonb"] = "jsonb"; - PostgresTypes["money"] = "money"; - PostgresTypes["numeric"] = "numeric"; - PostgresTypes["oid"] = "oid"; - PostgresTypes["reltime"] = "reltime"; - PostgresTypes["text"] = "text"; - PostgresTypes["time"] = "time"; - PostgresTypes["timestamp"] = "timestamp"; - PostgresTypes["timestamptz"] = "timestamptz"; - PostgresTypes["timetz"] = "timetz"; - PostgresTypes["tsrange"] = "tsrange"; - PostgresTypes["tstzrange"] = "tstzrange"; -})(PostgresTypes = exports.PostgresTypes || (exports.PostgresTypes = {})); -/** - * Takes an array of columns and an object of string values then converts each string value - * to its mapped type. - * - * @param {{name: String, type: String}[]} columns - * @param {Object} record - * @param {Object} options The map of various options that can be applied to the mapper - * @param {Array} options.skipTypes The array of types that should not be converted - * - * @example convertChangeData([{name: 'first_name', type: 'text'}, {name: 'age', type: 'int4'}], {first_name: 'Paul', age:'33'}, {}) - * //=>{ first_name: 'Paul', age: 33 } - */ -const convertChangeData = (columns, record, options = {}) => { - var _a; - const skipTypes = (_a = options.skipTypes) !== null && _a !== void 0 ? _a : []; - return Object.keys(record).reduce((acc, rec_key) => { - acc[rec_key] = (0, exports.convertColumn)(rec_key, columns, record, skipTypes); - return acc; - }, {}); -}; -exports.convertChangeData = convertChangeData; -/** - * Converts the value of an individual column. - * - * @param {String} columnName The column that you want to convert - * @param {{name: String, type: String}[]} columns All of the columns - * @param {Object} record The map of string values - * @param {Array} skipTypes An array of types that should not be converted - * @return {object} Useless information - * - * @example convertColumn('age', [{name: 'first_name', type: 'text'}, {name: 'age', type: 'int4'}], {first_name: 'Paul', age: '33'}, []) - * //=> 33 - * @example convertColumn('age', [{name: 'first_name', type: 'text'}, {name: 'age', type: 'int4'}], {first_name: 'Paul', age: '33'}, ['int4']) - * //=> "33" - */ -const convertColumn = (columnName, columns, record, skipTypes) => { - const column = columns.find((x) => x.name === columnName); - const colType = column === null || column === void 0 ? void 0 : column.type; - const value = record[columnName]; - if (colType && !skipTypes.includes(colType)) { - return (0, exports.convertCell)(colType, value); - } - return noop(value); -}; -exports.convertColumn = convertColumn; -/** - * If the value of the cell is `null`, returns null. - * Otherwise converts the string value to the correct type. - * @param {String} type A postgres column type - * @param {String} value The cell value - * - * @example convertCell('bool', 't') - * //=> true - * @example convertCell('int8', '10') - * //=> 10 - * @example convertCell('_int4', '{1,2,3,4}') - * //=> [1,2,3,4] - */ -const convertCell = (type, value) => { - // if data type is an array - if (type.charAt(0) === '_') { - const dataType = type.slice(1, type.length); - return (0, exports.toArray)(value, dataType); - } - // If not null, convert to correct type. - switch (type) { - case PostgresTypes.bool: - return (0, exports.toBoolean)(value); - case PostgresTypes.float4: - case PostgresTypes.float8: - case PostgresTypes.int2: - case PostgresTypes.int4: - case PostgresTypes.int8: - case PostgresTypes.numeric: - case PostgresTypes.oid: - return (0, exports.toNumber)(value); - case PostgresTypes.json: - case PostgresTypes.jsonb: - return (0, exports.toJson)(value); - case PostgresTypes.timestamp: - return (0, exports.toTimestampString)(value); // Format to be consistent with PostgREST - case PostgresTypes.abstime: // To allow users to cast it based on Timezone - case PostgresTypes.date: // To allow users to cast it based on Timezone - case PostgresTypes.daterange: - case PostgresTypes.int4range: - case PostgresTypes.int8range: - case PostgresTypes.money: - case PostgresTypes.reltime: // To allow users to cast it based on Timezone - case PostgresTypes.text: - case PostgresTypes.time: // To allow users to cast it based on Timezone - case PostgresTypes.timestamptz: // To allow users to cast it based on Timezone - case PostgresTypes.timetz: // To allow users to cast it based on Timezone - case PostgresTypes.tsrange: - case PostgresTypes.tstzrange: - return noop(value); - default: - // Return the value for remaining types - return noop(value); - } -}; -exports.convertCell = convertCell; -const noop = (value) => { - return value; -}; -const toBoolean = (value) => { - switch (value) { - case 't': - return true; - case 'f': - return false; - default: - return value; - } -}; -exports.toBoolean = toBoolean; -const toNumber = (value) => { - if (typeof value === 'string') { - const parsedValue = parseFloat(value); - if (!Number.isNaN(parsedValue)) { - return parsedValue; - } - } - return value; -}; -exports.toNumber = toNumber; -const toJson = (value) => { - if (typeof value === 'string') { - try { - return JSON.parse(value); - } - catch (error) { - console.log(`JSON parse error: ${error}`); - return value; - } - } - return value; -}; -exports.toJson = toJson; -/** - * Converts a Postgres Array into a native JS array - * - * @example toArray('{}', 'int4') - * //=> [] - * @example toArray('{"[2021-01-01,2021-12-31)","(2021-01-01,2021-12-32]"}', 'daterange') - * //=> ['[2021-01-01,2021-12-31)', '(2021-01-01,2021-12-32]'] - * @example toArray([1,2,3,4], 'int4') - * //=> [1,2,3,4] - */ -const toArray = (value, type) => { - if (typeof value !== 'string') { - return value; - } - const lastIdx = value.length - 1; - const closeBrace = value[lastIdx]; - const openBrace = value[0]; - // Confirm value is a Postgres array by checking curly brackets - if (openBrace === '{' && closeBrace === '}') { - let arr; - const valTrim = value.slice(1, lastIdx); - // TODO: find a better solution to separate Postgres array data - try { - arr = JSON.parse('[' + valTrim + ']'); - } - catch (_) { - // WARNING: splitting on comma does not cover all edge cases - arr = valTrim ? valTrim.split(',') : []; - } - return arr.map((val) => (0, exports.convertCell)(type, val)); - } - return value; -}; -exports.toArray = toArray; -/** - * Fixes timestamp to be ISO-8601. Swaps the space between the date and time for a 'T' - * See https://github.com/supabase/supabase/issues/18 - * - * @example toTimestampString('2019-09-10 00:00:00') - * //=> '2019-09-10T00:00:00' - */ -const toTimestampString = (value) => { - if (typeof value === 'string') { - return value.replace(' ', 'T'); - } - return value; -}; -exports.toTimestampString = toTimestampString; -//# sourceMappingURL=transformers.js.map - -/***/ }), - -/***/ 38889: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = '2.9.3'; -//# sourceMappingURL=version.js.map - -/***/ }), - -/***/ 31373: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.StorageClient = void 0; -const StorageFileApi_1 = __importDefault(__nccwpck_require__(15384)); -const StorageBucketApi_1 = __importDefault(__nccwpck_require__(64788)); -class StorageClient extends StorageBucketApi_1.default { - constructor(url, headers = {}, fetch) { - super(url, headers, fetch); - } - /** - * Perform file operation in a bucket. - * - * @param id The bucket id to operate on. - */ - from(id) { - return new StorageFileApi_1.default(this.url, this.headers, id, this.fetch); - } -} -exports.StorageClient = StorageClient; -//# sourceMappingURL=StorageClient.js.map - -/***/ }), - -/***/ 71595: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.StorageClient = void 0; -var StorageClient_1 = __nccwpck_require__(31373); -Object.defineProperty(exports, "StorageClient", ({ enumerable: true, get: function () { return StorageClient_1.StorageClient; } })); -__exportStar(__nccwpck_require__(58362), exports); -__exportStar(__nccwpck_require__(9012), exports); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 28990: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.DEFAULT_HEADERS = void 0; -const version_1 = __nccwpck_require__(7827); -exports.DEFAULT_HEADERS = { 'X-Client-Info': `storage-js/${version_1.version}` }; -//# sourceMappingURL=constants.js.map - -/***/ }), - -/***/ 9012: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.StorageUnknownError = exports.StorageApiError = exports.isStorageError = exports.StorageError = void 0; -class StorageError extends Error { - constructor(message) { - super(message); - this.__isStorageError = true; - this.name = 'StorageError'; - } -} -exports.StorageError = StorageError; -function isStorageError(error) { - return typeof error === 'object' && error !== null && '__isStorageError' in error; -} -exports.isStorageError = isStorageError; -class StorageApiError extends StorageError { - constructor(message, status) { - super(message); - this.name = 'StorageApiError'; - this.status = status; - } - toJSON() { - return { - name: this.name, - message: this.message, - status: this.status, - }; - } -} -exports.StorageApiError = StorageApiError; -class StorageUnknownError extends StorageError { - constructor(message, originalError) { - super(message); - this.name = 'StorageUnknownError'; - this.originalError = originalError; - } -} -exports.StorageUnknownError = StorageUnknownError; -//# sourceMappingURL=errors.js.map - -/***/ }), - -/***/ 43183: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.remove = exports.put = exports.post = exports.get = void 0; -const errors_1 = __nccwpck_require__(9012); -const helpers_1 = __nccwpck_require__(58954); -const _getErrorMessage = (err) => err.msg || err.message || err.error_description || err.error || JSON.stringify(err); -const handleError = (error, reject) => __awaiter(void 0, void 0, void 0, function* () { - const Res = yield (0, helpers_1.resolveResponse)(); - if (error instanceof Res) { - error - .json() - .then((err) => { - reject(new errors_1.StorageApiError(_getErrorMessage(err), error.status || 500)); - }) - .catch((err) => { - reject(new errors_1.StorageUnknownError(_getErrorMessage(err), err)); - }); - } - else { - reject(new errors_1.StorageUnknownError(_getErrorMessage(error), error)); - } -}); -const _getRequestParams = (method, options, parameters, body) => { - const params = { method, headers: (options === null || options === void 0 ? void 0 : options.headers) || {} }; - if (method === 'GET') { - return params; - } - params.headers = Object.assign({ 'Content-Type': 'application/json' }, options === null || options === void 0 ? void 0 : options.headers); - params.body = JSON.stringify(body); - return Object.assign(Object.assign({}, params), parameters); -}; -function _handleRequest(fetcher, method, url, options, parameters, body) { - return __awaiter(this, void 0, void 0, function* () { - return new Promise((resolve, reject) => { - fetcher(url, _getRequestParams(method, options, parameters, body)) - .then((result) => { - if (!result.ok) - throw result; - if (options === null || options === void 0 ? void 0 : options.noResolveJson) - return result; - return result.json(); - }) - .then((data) => resolve(data)) - .catch((error) => handleError(error, reject)); - }); - }); -} -function get(fetcher, url, options, parameters) { - return __awaiter(this, void 0, void 0, function* () { - return _handleRequest(fetcher, 'GET', url, options, parameters); - }); -} -exports.get = get; -function post(fetcher, url, body, options, parameters) { - return __awaiter(this, void 0, void 0, function* () { - return _handleRequest(fetcher, 'POST', url, options, parameters, body); - }); -} -exports.post = post; -function put(fetcher, url, body, options, parameters) { - return __awaiter(this, void 0, void 0, function* () { - return _handleRequest(fetcher, 'PUT', url, options, parameters, body); - }); -} -exports.put = put; -function remove(fetcher, url, body, options, parameters) { - return __awaiter(this, void 0, void 0, function* () { - return _handleRequest(fetcher, 'DELETE', url, options, parameters, body); - }); -} -exports.remove = remove; -//# sourceMappingURL=fetch.js.map - -/***/ }), - -/***/ 58954: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.resolveResponse = exports.resolveFetch = void 0; -const resolveFetch = (customFetch) => { - let _fetch; - if (customFetch) { - _fetch = customFetch; - } - else if (typeof fetch === 'undefined') { - _fetch = (...args) => Promise.resolve().then(() => __importStar(__nccwpck_require__(83318))).then(({ default: fetch }) => fetch(...args)); - } - else { - _fetch = fetch; - } - return (...args) => _fetch(...args); -}; -exports.resolveFetch = resolveFetch; -const resolveResponse = () => __awaiter(void 0, void 0, void 0, function* () { - if (typeof Response === 'undefined') { - // @ts-ignore - return (yield Promise.resolve().then(() => __importStar(__nccwpck_require__(83318)))).Response; - } - return Response; -}); -exports.resolveResponse = resolveResponse; -//# sourceMappingURL=helpers.js.map - -/***/ }), - -/***/ 58362: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -//# sourceMappingURL=types.js.map - -/***/ }), - -/***/ 7827: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -// generated by genversion -exports.version = '2.5.5'; -//# sourceMappingURL=version.js.map - -/***/ }), - -/***/ 64788: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -const constants_1 = __nccwpck_require__(28990); -const errors_1 = __nccwpck_require__(9012); -const fetch_1 = __nccwpck_require__(43183); -const helpers_1 = __nccwpck_require__(58954); -class StorageBucketApi { - constructor(url, headers = {}, fetch) { - this.url = url; - this.headers = Object.assign(Object.assign({}, constants_1.DEFAULT_HEADERS), headers); - this.fetch = (0, helpers_1.resolveFetch)(fetch); - } - /** - * Retrieves the details of all Storage buckets within an existing project. - */ - listBuckets() { - return __awaiter(this, void 0, void 0, function* () { - try { - const data = yield (0, fetch_1.get)(this.fetch, `${this.url}/bucket`, { headers: this.headers }); - return { data, error: null }; - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * Retrieves the details of an existing Storage bucket. - * - * @param id The unique identifier of the bucket you would like to retrieve. - */ - getBucket(id) { - return __awaiter(this, void 0, void 0, function* () { - try { - const data = yield (0, fetch_1.get)(this.fetch, `${this.url}/bucket/${id}`, { headers: this.headers }); - return { data, error: null }; - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * Creates a new Storage bucket - * - * @param id A unique identifier for the bucket you are creating. - * @param options.public The visibility of the bucket. Public buckets don't require an authorization token to download objects, but still require a valid token for all other operations. By default, buckets are private. - * @param options.fileSizeLimit specifies the max file size in bytes that can be uploaded to this bucket. - * The global file size limit takes precedence over this value. - * The default value is null, which doesn't set a per bucket file size limit. - * @param options.allowedMimeTypes specifies the allowed mime types that this bucket can accept during upload. - * The default value is null, which allows files with all mime types to be uploaded. - * Each mime type specified can be a wildcard, e.g. image/*, or a specific mime type, e.g. image/png. - * @returns newly created bucket id - */ - createBucket(id, options = { - public: false, - }) { - return __awaiter(this, void 0, void 0, function* () { - try { - const data = yield (0, fetch_1.post)(this.fetch, `${this.url}/bucket`, { - id, - name: id, - public: options.public, - file_size_limit: options.fileSizeLimit, - allowed_mime_types: options.allowedMimeTypes, - }, { headers: this.headers }); - return { data, error: null }; - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * Updates a Storage bucket - * - * @param id A unique identifier for the bucket you are updating. - * @param options.public The visibility of the bucket. Public buckets don't require an authorization token to download objects, but still require a valid token for all other operations. - * @param options.fileSizeLimit specifies the max file size in bytes that can be uploaded to this bucket. - * The global file size limit takes precedence over this value. - * The default value is null, which doesn't set a per bucket file size limit. - * @param options.allowedMimeTypes specifies the allowed mime types that this bucket can accept during upload. - * The default value is null, which allows files with all mime types to be uploaded. - * Each mime type specified can be a wildcard, e.g. image/*, or a specific mime type, e.g. image/png. - */ - updateBucket(id, options) { - return __awaiter(this, void 0, void 0, function* () { - try { - const data = yield (0, fetch_1.put)(this.fetch, `${this.url}/bucket/${id}`, { - id, - name: id, - public: options.public, - file_size_limit: options.fileSizeLimit, - allowed_mime_types: options.allowedMimeTypes, - }, { headers: this.headers }); - return { data, error: null }; - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * Removes all objects inside a single bucket. - * - * @param id The unique identifier of the bucket you would like to empty. - */ - emptyBucket(id) { - return __awaiter(this, void 0, void 0, function* () { - try { - const data = yield (0, fetch_1.post)(this.fetch, `${this.url}/bucket/${id}/empty`, {}, { headers: this.headers }); - return { data, error: null }; - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * Deletes an existing bucket. A bucket can't be deleted with existing objects inside it. - * You must first `empty()` the bucket. - * - * @param id The unique identifier of the bucket you would like to delete. - */ - deleteBucket(id) { - return __awaiter(this, void 0, void 0, function* () { - try { - const data = yield (0, fetch_1.remove)(this.fetch, `${this.url}/bucket/${id}`, {}, { headers: this.headers }); - return { data, error: null }; - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } -} -exports["default"] = StorageBucketApi; -//# sourceMappingURL=StorageBucketApi.js.map - -/***/ }), - -/***/ 15384: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -const errors_1 = __nccwpck_require__(9012); -const fetch_1 = __nccwpck_require__(43183); -const helpers_1 = __nccwpck_require__(58954); -const DEFAULT_SEARCH_OPTIONS = { - limit: 100, - offset: 0, - sortBy: { - column: 'name', - order: 'asc', - }, -}; -const DEFAULT_FILE_OPTIONS = { - cacheControl: '3600', - contentType: 'text/plain;charset=UTF-8', - upsert: false, -}; -class StorageFileApi { - constructor(url, headers = {}, bucketId, fetch) { - this.url = url; - this.headers = headers; - this.bucketId = bucketId; - this.fetch = (0, helpers_1.resolveFetch)(fetch); - } - /** - * Uploads a file to an existing bucket or replaces an existing file at the specified path with a new one. - * - * @param method HTTP method. - * @param path The relative file path. Should be of the format `folder/subfolder/filename.png`. The bucket must already exist before attempting to upload. - * @param fileBody The body of the file to be stored in the bucket. - */ - uploadOrUpdate(method, path, fileBody, fileOptions) { - return __awaiter(this, void 0, void 0, function* () { - try { - let body; - const options = Object.assign(Object.assign({}, DEFAULT_FILE_OPTIONS), fileOptions); - const headers = Object.assign(Object.assign({}, this.headers), (method === 'POST' && { 'x-upsert': String(options.upsert) })); - if (typeof Blob !== 'undefined' && fileBody instanceof Blob) { - body = new FormData(); - body.append('cacheControl', options.cacheControl); - body.append('', fileBody); - } - else if (typeof FormData !== 'undefined' && fileBody instanceof FormData) { - body = fileBody; - body.append('cacheControl', options.cacheControl); - } - else { - body = fileBody; - headers['cache-control'] = `max-age=${options.cacheControl}`; - headers['content-type'] = options.contentType; - } - const cleanPath = this._removeEmptyFolders(path); - const _path = this._getFinalPath(cleanPath); - const res = yield this.fetch(`${this.url}/object/${_path}`, Object.assign({ method, body: body, headers }, ((options === null || options === void 0 ? void 0 : options.duplex) ? { duplex: options.duplex } : {}))); - const data = yield res.json(); - if (res.ok) { - return { - data: { path: cleanPath, id: data.Id, fullPath: data.Key }, - error: null, - }; - } - else { - const error = data; - return { data: null, error }; - } - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * Uploads a file to an existing bucket. - * - * @param path The file path, including the file name. Should be of the format `folder/subfolder/filename.png`. The bucket must already exist before attempting to upload. - * @param fileBody The body of the file to be stored in the bucket. - */ - upload(path, fileBody, fileOptions) { - return __awaiter(this, void 0, void 0, function* () { - return this.uploadOrUpdate('POST', path, fileBody, fileOptions); - }); - } - /** - * Upload a file with a token generated from `createSignedUploadUrl`. - * @param path The file path, including the file name. Should be of the format `folder/subfolder/filename.png`. The bucket must already exist before attempting to upload. - * @param token The token generated from `createSignedUploadUrl` - * @param fileBody The body of the file to be stored in the bucket. - */ - uploadToSignedUrl(path, token, fileBody, fileOptions) { - return __awaiter(this, void 0, void 0, function* () { - const cleanPath = this._removeEmptyFolders(path); - const _path = this._getFinalPath(cleanPath); - const url = new URL(this.url + `/object/upload/sign/${_path}`); - url.searchParams.set('token', token); - try { - let body; - const options = Object.assign({ upsert: DEFAULT_FILE_OPTIONS.upsert }, fileOptions); - const headers = Object.assign(Object.assign({}, this.headers), { 'x-upsert': String(options.upsert) }); - if (typeof Blob !== 'undefined' && fileBody instanceof Blob) { - body = new FormData(); - body.append('cacheControl', options.cacheControl); - body.append('', fileBody); - } - else if (typeof FormData !== 'undefined' && fileBody instanceof FormData) { - body = fileBody; - body.append('cacheControl', options.cacheControl); - } - else { - body = fileBody; - headers['cache-control'] = `max-age=${options.cacheControl}`; - headers['content-type'] = options.contentType; - } - const res = yield this.fetch(url.toString(), { - method: 'PUT', - body: body, - headers, - }); - const data = yield res.json(); - if (res.ok) { - return { - data: { path: cleanPath, fullPath: data.Key }, - error: null, - }; - } - else { - const error = data; - return { data: null, error }; - } - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * Creates a signed upload URL. - * Signed upload URLs can be used to upload files to the bucket without further authentication. - * They are valid for 2 hours. - * @param path The file path, including the current file name. For example `folder/image.png`. - */ - createSignedUploadUrl(path) { - return __awaiter(this, void 0, void 0, function* () { - try { - let _path = this._getFinalPath(path); - const data = yield (0, fetch_1.post)(this.fetch, `${this.url}/object/upload/sign/${_path}`, {}, { headers: this.headers }); - const url = new URL(this.url + data.url); - const token = url.searchParams.get('token'); - if (!token) { - throw new errors_1.StorageError('No token returned by API'); - } - return { data: { signedUrl: url.toString(), path, token }, error: null }; - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * Replaces an existing file at the specified path with a new one. - * - * @param path The relative file path. Should be of the format `folder/subfolder/filename.png`. The bucket must already exist before attempting to update. - * @param fileBody The body of the file to be stored in the bucket. - */ - update(path, fileBody, fileOptions) { - return __awaiter(this, void 0, void 0, function* () { - return this.uploadOrUpdate('PUT', path, fileBody, fileOptions); - }); - } - /** - * Moves an existing file to a new path in the same bucket. - * - * @param fromPath The original file path, including the current file name. For example `folder/image.png`. - * @param toPath The new file path, including the new file name. For example `folder/image-new.png`. - */ - move(fromPath, toPath) { - return __awaiter(this, void 0, void 0, function* () { - try { - const data = yield (0, fetch_1.post)(this.fetch, `${this.url}/object/move`, { bucketId: this.bucketId, sourceKey: fromPath, destinationKey: toPath }, { headers: this.headers }); - return { data, error: null }; - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * Copies an existing file to a new path in the same bucket. - * - * @param fromPath The original file path, including the current file name. For example `folder/image.png`. - * @param toPath The new file path, including the new file name. For example `folder/image-copy.png`. - */ - copy(fromPath, toPath) { - return __awaiter(this, void 0, void 0, function* () { - try { - const data = yield (0, fetch_1.post)(this.fetch, `${this.url}/object/copy`, { bucketId: this.bucketId, sourceKey: fromPath, destinationKey: toPath }, { headers: this.headers }); - return { data: { path: data.Key }, error: null }; - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * Creates a signed URL. Use a signed URL to share a file for a fixed amount of time. - * - * @param path The file path, including the current file name. For example `folder/image.png`. - * @param expiresIn The number of seconds until the signed URL expires. For example, `60` for a URL which is valid for one minute. - * @param options.download triggers the file as a download if set to true. Set this parameter as the name of the file if you want to trigger the download with a different filename. - * @param options.transform Transform the asset before serving it to the client. - */ - createSignedUrl(path, expiresIn, options) { - return __awaiter(this, void 0, void 0, function* () { - try { - let _path = this._getFinalPath(path); - let data = yield (0, fetch_1.post)(this.fetch, `${this.url}/object/sign/${_path}`, Object.assign({ expiresIn }, ((options === null || options === void 0 ? void 0 : options.transform) ? { transform: options.transform } : {})), { headers: this.headers }); - const downloadQueryParam = (options === null || options === void 0 ? void 0 : options.download) - ? `&download=${options.download === true ? '' : options.download}` - : ''; - const signedUrl = encodeURI(`${this.url}${data.signedURL}${downloadQueryParam}`); - data = { signedUrl }; - return { data, error: null }; - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * Creates multiple signed URLs. Use a signed URL to share a file for a fixed amount of time. - * - * @param paths The file paths to be downloaded, including the current file names. For example `['folder/image.png', 'folder2/image2.png']`. - * @param expiresIn The number of seconds until the signed URLs expire. For example, `60` for URLs which are valid for one minute. - * @param options.download triggers the file as a download if set to true. Set this parameter as the name of the file if you want to trigger the download with a different filename. - */ - createSignedUrls(paths, expiresIn, options) { - return __awaiter(this, void 0, void 0, function* () { - try { - const data = yield (0, fetch_1.post)(this.fetch, `${this.url}/object/sign/${this.bucketId}`, { expiresIn, paths }, { headers: this.headers }); - const downloadQueryParam = (options === null || options === void 0 ? void 0 : options.download) - ? `&download=${options.download === true ? '' : options.download}` - : ''; - return { - data: data.map((datum) => (Object.assign(Object.assign({}, datum), { signedUrl: datum.signedURL - ? encodeURI(`${this.url}${datum.signedURL}${downloadQueryParam}`) - : null }))), - error: null, - }; - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * Downloads a file from a private bucket. For public buckets, make a request to the URL returned from `getPublicUrl` instead. - * - * @param path The full path and file name of the file to be downloaded. For example `folder/image.png`. - * @param options.transform Transform the asset before serving it to the client. - */ - download(path, options) { - return __awaiter(this, void 0, void 0, function* () { - const wantsTransformation = typeof (options === null || options === void 0 ? void 0 : options.transform) !== 'undefined'; - const renderPath = wantsTransformation ? 'render/image/authenticated' : 'object'; - const transformationQuery = this.transformOptsToQueryString((options === null || options === void 0 ? void 0 : options.transform) || {}); - const queryString = transformationQuery ? `?${transformationQuery}` : ''; - try { - const _path = this._getFinalPath(path); - const res = yield (0, fetch_1.get)(this.fetch, `${this.url}/${renderPath}/${_path}${queryString}`, { - headers: this.headers, - noResolveJson: true, - }); - const data = yield res.blob(); - return { data, error: null }; - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * A simple convenience function to get the URL for an asset in a public bucket. If you do not want to use this function, you can construct the public URL by concatenating the bucket URL with the path to the asset. - * This function does not verify if the bucket is public. If a public URL is created for a bucket which is not public, you will not be able to download the asset. - * - * @param path The path and name of the file to generate the public URL for. For example `folder/image.png`. - * @param options.download Triggers the file as a download if set to true. Set this parameter as the name of the file if you want to trigger the download with a different filename. - * @param options.transform Transform the asset before serving it to the client. - */ - getPublicUrl(path, options) { - const _path = this._getFinalPath(path); - const _queryString = []; - const downloadQueryParam = (options === null || options === void 0 ? void 0 : options.download) - ? `download=${options.download === true ? '' : options.download}` - : ''; - if (downloadQueryParam !== '') { - _queryString.push(downloadQueryParam); - } - const wantsTransformation = typeof (options === null || options === void 0 ? void 0 : options.transform) !== 'undefined'; - const renderPath = wantsTransformation ? 'render/image' : 'object'; - const transformationQuery = this.transformOptsToQueryString((options === null || options === void 0 ? void 0 : options.transform) || {}); - if (transformationQuery !== '') { - _queryString.push(transformationQuery); - } - let queryString = _queryString.join('&'); - if (queryString !== '') { - queryString = `?${queryString}`; - } - return { - data: { publicUrl: encodeURI(`${this.url}/${renderPath}/public/${_path}${queryString}`) }, - }; - } - /** - * Deletes files within the same bucket - * - * @param paths An array of files to delete, including the path and file name. For example [`'folder/image.png'`]. - */ - remove(paths) { - return __awaiter(this, void 0, void 0, function* () { - try { - const data = yield (0, fetch_1.remove)(this.fetch, `${this.url}/object/${this.bucketId}`, { prefixes: paths }, { headers: this.headers }); - return { data, error: null }; - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - /** - * Get file metadata - * @param id the file id to retrieve metadata - */ - // async getMetadata( - // id: string - // ): Promise< - // | { - // data: Metadata - // error: null - // } - // | { - // data: null - // error: StorageError - // } - // > { - // try { - // const data = await get(this.fetch, `${this.url}/metadata/${id}`, { headers: this.headers }) - // return { data, error: null } - // } catch (error) { - // if (isStorageError(error)) { - // return { data: null, error } - // } - // throw error - // } - // } - /** - * Update file metadata - * @param id the file id to update metadata - * @param meta the new file metadata - */ - // async updateMetadata( - // id: string, - // meta: Metadata - // ): Promise< - // | { - // data: Metadata - // error: null - // } - // | { - // data: null - // error: StorageError - // } - // > { - // try { - // const data = await post( - // this.fetch, - // `${this.url}/metadata/${id}`, - // { ...meta }, - // { headers: this.headers } - // ) - // return { data, error: null } - // } catch (error) { - // if (isStorageError(error)) { - // return { data: null, error } - // } - // throw error - // } - // } - /** - * Lists all the files within a bucket. - * @param path The folder path. - */ - list(path, options, parameters) { - return __awaiter(this, void 0, void 0, function* () { - try { - const body = Object.assign(Object.assign(Object.assign({}, DEFAULT_SEARCH_OPTIONS), options), { prefix: path || '' }); - const data = yield (0, fetch_1.post)(this.fetch, `${this.url}/object/list/${this.bucketId}`, body, { headers: this.headers }, parameters); - return { data, error: null }; - } - catch (error) { - if ((0, errors_1.isStorageError)(error)) { - return { data: null, error }; - } - throw error; - } - }); - } - _getFinalPath(path) { - return `${this.bucketId}/${path}`; - } - _removeEmptyFolders(path) { - return path.replace(/^\/|\/$/g, '').replace(/\/+/g, '/'); - } - transformOptsToQueryString(transform) { - const params = []; - if (transform.width) { - params.push(`width=${transform.width}`); - } - if (transform.height) { - params.push(`height=${transform.height}`); - } - if (transform.resize) { - params.push(`resize=${transform.resize}`); - } - if (transform.format) { - params.push(`format=${transform.format}`); - } - if (transform.quality) { - params.push(`quality=${transform.quality}`); - } - return params.join('&'); - } -} -exports["default"] = StorageFileApi; -//# sourceMappingURL=StorageFileApi.js.map - -/***/ }), - -/***/ 61619: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -const functions_js_1 = __nccwpck_require__(70459); -const postgrest_js_1 = __nccwpck_require__(60927); -const realtime_js_1 = __nccwpck_require__(36209); -const storage_js_1 = __nccwpck_require__(71595); -const constants_1 = __nccwpck_require__(23597); -const fetch_1 = __nccwpck_require__(73248); -const helpers_1 = __nccwpck_require__(87301); -const SupabaseAuthClient_1 = __nccwpck_require__(15253); -/** - * Supabase Client. - * - * An isomorphic Javascript client for interacting with Postgres. - */ -class SupabaseClient { - /** - * Create a new client for use in the browser. - * @param supabaseUrl The unique Supabase URL which is supplied when you create a new project in your project dashboard. - * @param supabaseKey The unique Supabase Key which is supplied when you create a new project in your project dashboard. - * @param options.db.schema You can switch in between schemas. The schema needs to be on the list of exposed schemas inside Supabase. - * @param options.auth.autoRefreshToken Set to "true" if you want to automatically refresh the token before expiring. - * @param options.auth.persistSession Set to "true" if you want to automatically save the user session into local storage. - * @param options.auth.detectSessionInUrl Set to "true" if you want to automatically detects OAuth grants in the URL and signs in the user. - * @param options.realtime Options passed along to realtime-js constructor. - * @param options.global.fetch A custom fetch implementation. - * @param options.global.headers Any additional headers to send with each network request. - */ - constructor(supabaseUrl, supabaseKey, options) { - var _a, _b, _c, _d, _e, _f, _g, _h; - this.supabaseUrl = supabaseUrl; - this.supabaseKey = supabaseKey; - if (!supabaseUrl) - throw new Error('supabaseUrl is required.'); - if (!supabaseKey) - throw new Error('supabaseKey is required.'); - const _supabaseUrl = (0, helpers_1.stripTrailingSlash)(supabaseUrl); - this.realtimeUrl = `${_supabaseUrl}/realtime/v1`.replace(/^http/i, 'ws'); - this.authUrl = `${_supabaseUrl}/auth/v1`; - this.storageUrl = `${_supabaseUrl}/storage/v1`; - this.functionsUrl = `${_supabaseUrl}/functions/v1`; - // default storage key uses the supabase project ref as a namespace - const defaultStorageKey = `sb-${new URL(this.authUrl).hostname.split('.')[0]}-auth-token`; - const DEFAULTS = { - db: constants_1.DEFAULT_DB_OPTIONS, - realtime: constants_1.DEFAULT_REALTIME_OPTIONS, - auth: Object.assign(Object.assign({}, constants_1.DEFAULT_AUTH_OPTIONS), { storageKey: defaultStorageKey }), - global: constants_1.DEFAULT_GLOBAL_OPTIONS, - }; - const settings = (0, helpers_1.applySettingDefaults)(options !== null && options !== void 0 ? options : {}, DEFAULTS); - this.storageKey = (_b = (_a = settings.auth) === null || _a === void 0 ? void 0 : _a.storageKey) !== null && _b !== void 0 ? _b : ''; - this.headers = (_d = (_c = settings.global) === null || _c === void 0 ? void 0 : _c.headers) !== null && _d !== void 0 ? _d : {}; - this.auth = this._initSupabaseAuthClient((_e = settings.auth) !== null && _e !== void 0 ? _e : {}, this.headers, (_f = settings.global) === null || _f === void 0 ? void 0 : _f.fetch); - this.fetch = (0, fetch_1.fetchWithAuth)(supabaseKey, this._getAccessToken.bind(this), (_g = settings.global) === null || _g === void 0 ? void 0 : _g.fetch); - this.realtime = this._initRealtimeClient(Object.assign({ headers: this.headers }, settings.realtime)); - this.rest = new postgrest_js_1.PostgrestClient(`${_supabaseUrl}/rest/v1`, { - headers: this.headers, - schema: (_h = settings.db) === null || _h === void 0 ? void 0 : _h.schema, - fetch: this.fetch, - }); - this._listenForAuthEvents(); - } - /** - * Supabase Functions allows you to deploy and invoke edge functions. - */ - get functions() { - return new functions_js_1.FunctionsClient(this.functionsUrl, { - headers: this.headers, - customFetch: this.fetch, - }); - } - /** - * Supabase Storage allows you to manage user-generated content, such as photos or videos. - */ - get storage() { - return new storage_js_1.StorageClient(this.storageUrl, this.headers, this.fetch); - } - /** - * Perform a query on a table or a view. - * - * @param relation - The table or view name to query - */ - from(relation) { - return this.rest.from(relation); - } - // NOTE: signatures must be kept in sync with PostgrestClient.schema - /** - * Select a schema to query or perform an function (rpc) call. - * - * The schema needs to be on the list of exposed schemas inside Supabase. - * - * @param schema - The schema to query - */ - schema(schema) { - return this.rest.schema(schema); - } - // NOTE: signatures must be kept in sync with PostgrestClient.rpc - /** - * Perform a function call. - * - * @param fn - The function name to call - * @param args - The arguments to pass to the function call - * @param options - Named parameters - * @param options.head - When set to `true`, `data` will not be returned. - * Useful if you only need the count. - * @param options.count - Count algorithm to use to count rows returned by the - * function. Only applicable for [set-returning - * functions](https://www.postgresql.org/docs/current/functions-srf.html). - * - * `"exact"`: Exact but slow count algorithm. Performs a `COUNT(*)` under the - * hood. - * - * `"planned"`: Approximated but fast count algorithm. Uses the Postgres - * statistics under the hood. - * - * `"estimated"`: Uses exact count for low numbers and planned count for high - * numbers. - */ - rpc(fn, args = {}, options = {}) { - return this.rest.rpc(fn, args, options); - } - /** - * Creates a Realtime channel with Broadcast, Presence, and Postgres Changes. - * - * @param {string} name - The name of the Realtime channel. - * @param {Object} opts - The options to pass to the Realtime channel. - * - */ - channel(name, opts = { config: {} }) { - return this.realtime.channel(name, opts); - } - /** - * Returns all Realtime channels. - */ - getChannels() { - return this.realtime.getChannels(); - } - /** - * Unsubscribes and removes Realtime channel from Realtime client. - * - * @param {RealtimeChannel} channel - The name of the Realtime channel. - * - */ - removeChannel(channel) { - return this.realtime.removeChannel(channel); - } - /** - * Unsubscribes and removes all Realtime channels from Realtime client. - */ - removeAllChannels() { - return this.realtime.removeAllChannels(); - } - _getAccessToken() { - var _a, _b; - return __awaiter(this, void 0, void 0, function* () { - const { data } = yield this.auth.getSession(); - return (_b = (_a = data.session) === null || _a === void 0 ? void 0 : _a.access_token) !== null && _b !== void 0 ? _b : null; - }); - } - _initSupabaseAuthClient({ autoRefreshToken, persistSession, detectSessionInUrl, storage, storageKey, flowType, debug, }, headers, fetch) { - const authHeaders = { - Authorization: `Bearer ${this.supabaseKey}`, - apikey: `${this.supabaseKey}`, - }; - return new SupabaseAuthClient_1.SupabaseAuthClient({ - url: this.authUrl, - headers: Object.assign(Object.assign({}, authHeaders), headers), - storageKey: storageKey, - autoRefreshToken, - persistSession, - detectSessionInUrl, - storage, - flowType, - debug, - fetch, - }); - } - _initRealtimeClient(options) { - return new realtime_js_1.RealtimeClient(this.realtimeUrl, Object.assign(Object.assign({}, options), { params: Object.assign({ apikey: this.supabaseKey }, options === null || options === void 0 ? void 0 : options.params) })); - } - _listenForAuthEvents() { - let data = this.auth.onAuthStateChange((event, session) => { - this._handleTokenChanged(event, 'CLIENT', session === null || session === void 0 ? void 0 : session.access_token); - }); - return data; - } - _handleTokenChanged(event, source, token) { - if ((event === 'TOKEN_REFRESHED' || event === 'SIGNED_IN') && - this.changedAccessToken !== token) { - // Token has changed - this.realtime.setAuth(token !== null && token !== void 0 ? token : null); - this.changedAccessToken = token; - } - else if (event === 'SIGNED_OUT') { - // Token is removed - this.realtime.setAuth(this.supabaseKey); - if (source == 'STORAGE') - this.auth.signOut(); - this.changedAccessToken = undefined; - } - } -} -exports["default"] = SupabaseClient; -//# sourceMappingURL=SupabaseClient.js.map - -/***/ }), - -/***/ 85036: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.createClient = exports.SupabaseClient = exports.FunctionRegion = exports.FunctionsError = exports.FunctionsRelayError = exports.FunctionsFetchError = exports.FunctionsHttpError = void 0; -const SupabaseClient_1 = __importDefault(__nccwpck_require__(61619)); -__exportStar(__nccwpck_require__(31904), exports); -var functions_js_1 = __nccwpck_require__(70459); -Object.defineProperty(exports, "FunctionsHttpError", ({ enumerable: true, get: function () { return functions_js_1.FunctionsHttpError; } })); -Object.defineProperty(exports, "FunctionsFetchError", ({ enumerable: true, get: function () { return functions_js_1.FunctionsFetchError; } })); -Object.defineProperty(exports, "FunctionsRelayError", ({ enumerable: true, get: function () { return functions_js_1.FunctionsRelayError; } })); -Object.defineProperty(exports, "FunctionsError", ({ enumerable: true, get: function () { return functions_js_1.FunctionsError; } })); -Object.defineProperty(exports, "FunctionRegion", ({ enumerable: true, get: function () { return functions_js_1.FunctionRegion; } })); -__exportStar(__nccwpck_require__(36209), exports); -var SupabaseClient_2 = __nccwpck_require__(61619); -Object.defineProperty(exports, "SupabaseClient", ({ enumerable: true, get: function () { return __importDefault(SupabaseClient_2).default; } })); -/** - * Creates a new Supabase Client. - */ -const createClient = (supabaseUrl, supabaseKey, options) => { - return new SupabaseClient_1.default(supabaseUrl, supabaseKey, options); -}; -exports.createClient = createClient; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 15253: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.SupabaseAuthClient = void 0; -const auth_js_1 = __nccwpck_require__(31904); -class SupabaseAuthClient extends auth_js_1.AuthClient { - constructor(options) { - super(options); - } -} -exports.SupabaseAuthClient = SupabaseAuthClient; -//# sourceMappingURL=SupabaseAuthClient.js.map - -/***/ }), - -/***/ 23597: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.DEFAULT_REALTIME_OPTIONS = exports.DEFAULT_AUTH_OPTIONS = exports.DEFAULT_DB_OPTIONS = exports.DEFAULT_GLOBAL_OPTIONS = exports.DEFAULT_HEADERS = void 0; -const version_1 = __nccwpck_require__(50116); -let JS_ENV = ''; -// @ts-ignore -if (typeof Deno !== 'undefined') { - JS_ENV = 'deno'; -} -else if (typeof document !== 'undefined') { - JS_ENV = 'web'; -} -else if (typeof navigator !== 'undefined' && navigator.product === 'ReactNative') { - JS_ENV = 'react-native'; -} -else { - JS_ENV = 'node'; -} -exports.DEFAULT_HEADERS = { 'X-Client-Info': `supabase-js-${JS_ENV}/${version_1.version}` }; -exports.DEFAULT_GLOBAL_OPTIONS = { - headers: exports.DEFAULT_HEADERS, -}; -exports.DEFAULT_DB_OPTIONS = { - schema: 'public', -}; -exports.DEFAULT_AUTH_OPTIONS = { - autoRefreshToken: true, - persistSession: true, - detectSessionInUrl: true, - flowType: 'implicit', -}; -exports.DEFAULT_REALTIME_OPTIONS = {}; -//# sourceMappingURL=constants.js.map - -/***/ }), - -/***/ 73248: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -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()); - }); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.fetchWithAuth = exports.resolveHeadersConstructor = exports.resolveFetch = void 0; -// @ts-ignore -const node_fetch_1 = __importStar(__nccwpck_require__(83318)); -const resolveFetch = (customFetch) => { - let _fetch; - if (customFetch) { - _fetch = customFetch; - } - else if (typeof fetch === 'undefined') { - _fetch = node_fetch_1.default; - } - else { - _fetch = fetch; - } - return (...args) => _fetch(...args); -}; -exports.resolveFetch = resolveFetch; -const resolveHeadersConstructor = () => { - if (typeof Headers === 'undefined') { - return node_fetch_1.Headers; - } - return Headers; -}; -exports.resolveHeadersConstructor = resolveHeadersConstructor; -const fetchWithAuth = (supabaseKey, getAccessToken, customFetch) => { - const fetch = (0, exports.resolveFetch)(customFetch); - const HeadersConstructor = (0, exports.resolveHeadersConstructor)(); - return (input, init) => __awaiter(void 0, void 0, void 0, function* () { - var _a; - const accessToken = (_a = (yield getAccessToken())) !== null && _a !== void 0 ? _a : supabaseKey; - let headers = new HeadersConstructor(init === null || init === void 0 ? void 0 : init.headers); - if (!headers.has('apikey')) { - headers.set('apikey', supabaseKey); - } - if (!headers.has('Authorization')) { - headers.set('Authorization', `Bearer ${accessToken}`); - } - return fetch(input, Object.assign(Object.assign({}, init), { headers })); - }); -}; -exports.fetchWithAuth = fetchWithAuth; -//# sourceMappingURL=fetch.js.map - -/***/ }), - -/***/ 87301: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.applySettingDefaults = exports.isBrowser = exports.stripTrailingSlash = exports.uuid = void 0; -function uuid() { - return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) { - var r = (Math.random() * 16) | 0, v = c == 'x' ? r : (r & 0x3) | 0x8; - return v.toString(16); - }); -} -exports.uuid = uuid; -function stripTrailingSlash(url) { - return url.replace(/\/$/, ''); -} -exports.stripTrailingSlash = stripTrailingSlash; -const isBrowser = () => typeof window !== 'undefined'; -exports.isBrowser = isBrowser; -function applySettingDefaults(options, defaults) { - const { db: dbOptions, auth: authOptions, realtime: realtimeOptions, global: globalOptions, } = options; - const { db: DEFAULT_DB_OPTIONS, auth: DEFAULT_AUTH_OPTIONS, realtime: DEFAULT_REALTIME_OPTIONS, global: DEFAULT_GLOBAL_OPTIONS, } = defaults; - return { - db: Object.assign(Object.assign({}, DEFAULT_DB_OPTIONS), dbOptions), - auth: Object.assign(Object.assign({}, DEFAULT_AUTH_OPTIONS), authOptions), - realtime: Object.assign(Object.assign({}, DEFAULT_REALTIME_OPTIONS), realtimeOptions), - global: Object.assign(Object.assign({}, DEFAULT_GLOBAL_OPTIONS), globalOptions), - }; -} -exports.applySettingDefaults = applySettingDefaults; -//# sourceMappingURL=helpers.js.map - -/***/ }), - -/***/ 50116: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = '2.42.0'; -//# sourceMappingURL=version.js.map - -/***/ }), - -/***/ 64360: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - -var __create = Object.create; -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __getProtoOf = Object.getPrototypeOf; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __commonJS = (cb, mod) => function __require() { - return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; -}; -var __export = (target, all3) => { - for (var name in all3) - __defProp(target, name, { get: all3[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( - // If the importer is in node compatibility mode or this is not an ESM - // file that has been converted to a CommonJS file using a Babel- - // compatible transform (i.e. "__esModule" has not been set), then set - // "default" to the CommonJS "module.exports" for node compatibility. - isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, - mod -)); -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// node_modules/bn.js/lib/bn.js -var require_bn = __commonJS({ - "node_modules/bn.js/lib/bn.js"(exports2, module2) { - "use strict"; - (function(module3, exports3) { - "use strict"; - function assert(val, msg) { - if (!val) - throw new Error(msg || "Assertion failed"); - } - function inherits2(ctor, superCtor) { - ctor.super_ = superCtor; - var TempCtor = function() { - }; - TempCtor.prototype = superCtor.prototype; - ctor.prototype = new TempCtor(); - ctor.prototype.constructor = ctor; - } - function BN(number, base, endian) { - if (BN.isBN(number)) { - return number; - } - this.negative = 0; - this.words = null; - this.length = 0; - this.red = null; - if (number !== null) { - if (base === "le" || base === "be") { - endian = base; - base = 10; - } - this._init(number || 0, base || 10, endian || "be"); - } - } - if (typeof module3 === "object") { - module3.exports = BN; - } else { - exports3.BN = BN; - } - BN.BN = BN; - BN.wordSize = 26; - var Buffer2; - try { - if (typeof window !== "undefined" && typeof window.Buffer !== "undefined") { - Buffer2 = window.Buffer; - } else { - Buffer2 = (__nccwpck_require__(20181).Buffer); - } - } catch (e) { - } - BN.isBN = function isBN(num) { - if (num instanceof BN) { - return true; - } - return num !== null && typeof num === "object" && num.constructor.wordSize === BN.wordSize && Array.isArray(num.words); - }; - BN.max = function max(left, right) { - if (left.cmp(right) > 0) - return left; - return right; - }; - BN.min = function min(left, right) { - if (left.cmp(right) < 0) - return left; - return right; - }; - BN.prototype._init = function init(number, base, endian) { - if (typeof number === "number") { - return this._initNumber(number, base, endian); - } - if (typeof number === "object") { - return this._initArray(number, base, endian); - } - if (base === "hex") { - base = 16; - } - assert(base === (base | 0) && base >= 2 && base <= 36); - number = number.toString().replace(/\s+/g, ""); - var start = 0; - if (number[0] === "-") { - start++; - this.negative = 1; - } - if (start < number.length) { - if (base === 16) { - this._parseHex(number, start, endian); - } else { - this._parseBase(number, base, start); - if (endian === "le") { - this._initArray(this.toArray(), base, endian); - } - } - } - }; - BN.prototype._initNumber = function _initNumber(number, base, endian) { - if (number < 0) { - this.negative = 1; - number = -number; - } - if (number < 67108864) { - this.words = [number & 67108863]; - this.length = 1; - } else if (number < 4503599627370496) { - this.words = [ - number & 67108863, - number / 67108864 & 67108863 - ]; - this.length = 2; - } else { - assert(number < 9007199254740992); - this.words = [ - number & 67108863, - number / 67108864 & 67108863, - 1 - ]; - this.length = 3; - } - if (endian !== "le") - return; - this._initArray(this.toArray(), base, endian); - }; - BN.prototype._initArray = function _initArray(number, base, endian) { - assert(typeof number.length === "number"); - if (number.length <= 0) { - this.words = [0]; - this.length = 1; - return this; - } - this.length = Math.ceil(number.length / 3); - this.words = new Array(this.length); - for (var i = 0; i < this.length; i++) { - this.words[i] = 0; - } - var j, w; - var off = 0; - if (endian === "be") { - for (i = number.length - 1, j = 0; i >= 0; i -= 3) { - w = number[i] | number[i - 1] << 8 | number[i - 2] << 16; - this.words[j] |= w << off & 67108863; - this.words[j + 1] = w >>> 26 - off & 67108863; - off += 24; - if (off >= 26) { - off -= 26; - j++; - } - } - } else if (endian === "le") { - for (i = 0, j = 0; i < number.length; i += 3) { - w = number[i] | number[i + 1] << 8 | number[i + 2] << 16; - this.words[j] |= w << off & 67108863; - this.words[j + 1] = w >>> 26 - off & 67108863; - off += 24; - if (off >= 26) { - off -= 26; - j++; - } - } - } - return this._strip(); - }; - function parseHex4Bits(string, index) { - var c = string.charCodeAt(index); - if (c >= 48 && c <= 57) { - return c - 48; - } else if (c >= 65 && c <= 70) { - return c - 55; - } else if (c >= 97 && c <= 102) { - return c - 87; - } else { - assert(false, "Invalid character in " + string); - } - } - function parseHexByte(string, lowerBound, index) { - var r = parseHex4Bits(string, index); - if (index - 1 >= lowerBound) { - r |= parseHex4Bits(string, index - 1) << 4; - } - return r; - } - BN.prototype._parseHex = function _parseHex(number, start, endian) { - this.length = Math.ceil((number.length - start) / 6); - this.words = new Array(this.length); - for (var i = 0; i < this.length; i++) { - this.words[i] = 0; - } - var off = 0; - var j = 0; - var w; - if (endian === "be") { - for (i = number.length - 1; i >= start; i -= 2) { - w = parseHexByte(number, start, i) << off; - this.words[j] |= w & 67108863; - if (off >= 18) { - off -= 18; - j += 1; - this.words[j] |= w >>> 26; - } else { - off += 8; - } - } - } else { - var parseLength = number.length - start; - for (i = parseLength % 2 === 0 ? start + 1 : start; i < number.length; i += 2) { - w = parseHexByte(number, start, i) << off; - this.words[j] |= w & 67108863; - if (off >= 18) { - off -= 18; - j += 1; - this.words[j] |= w >>> 26; - } else { - off += 8; - } - } - } - this._strip(); - }; - function parseBase(str, start, end, mul) { - var r = 0; - var b = 0; - var len = Math.min(str.length, end); - for (var i = start; i < len; i++) { - var c = str.charCodeAt(i) - 48; - r *= mul; - if (c >= 49) { - b = c - 49 + 10; - } else if (c >= 17) { - b = c - 17 + 10; - } else { - b = c; - } - assert(c >= 0 && b < mul, "Invalid character"); - r += b; - } - return r; - } - BN.prototype._parseBase = function _parseBase(number, base, start) { - this.words = [0]; - this.length = 1; - for (var limbLen = 0, limbPow = 1; limbPow <= 67108863; limbPow *= base) { - limbLen++; - } - limbLen--; - limbPow = limbPow / base | 0; - var total = number.length - start; - var mod = total % limbLen; - var end = Math.min(total, total - mod) + start; - var word = 0; - for (var i = start; i < end; i += limbLen) { - word = parseBase(number, i, i + limbLen, base); - this.imuln(limbPow); - if (this.words[0] + word < 67108864) { - this.words[0] += word; - } else { - this._iaddn(word); - } - } - if (mod !== 0) { - var pow = 1; - word = parseBase(number, i, number.length, base); - for (i = 0; i < mod; i++) { - pow *= base; - } - this.imuln(pow); - if (this.words[0] + word < 67108864) { - this.words[0] += word; - } else { - this._iaddn(word); - } - } - this._strip(); - }; - BN.prototype.copy = function copy(dest) { - dest.words = new Array(this.length); - for (var i = 0; i < this.length; i++) { - dest.words[i] = this.words[i]; - } - dest.length = this.length; - dest.negative = this.negative; - dest.red = this.red; - }; - function move(dest, src) { - dest.words = src.words; - dest.length = src.length; - dest.negative = src.negative; - dest.red = src.red; - } - BN.prototype._move = function _move(dest) { - move(dest, this); - }; - BN.prototype.clone = function clone() { - var r = new BN(null); - this.copy(r); - return r; - }; - BN.prototype._expand = function _expand(size) { - while (this.length < size) { - this.words[this.length++] = 0; - } - return this; - }; - BN.prototype._strip = function strip() { - while (this.length > 1 && this.words[this.length - 1] === 0) { - this.length--; - } - return this._normSign(); - }; - BN.prototype._normSign = function _normSign() { - if (this.length === 1 && this.words[0] === 0) { - this.negative = 0; - } - return this; - }; - if (typeof Symbol !== "undefined" && typeof Symbol.for === "function") { - try { - BN.prototype[Symbol.for("nodejs.util.inspect.custom")] = inspect; - } catch (e) { - BN.prototype.inspect = inspect; - } - } else { - BN.prototype.inspect = inspect; - } - function inspect() { - return (this.red ? ""; - } - var zeros = [ - "", - "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" - ]; - var groupSizes = [ - 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 - ]; - var groupBases = [ - 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 - ]; - BN.prototype.toString = function toString3(base, padding) { - base = base || 10; - padding = padding | 0 || 1; - var out; - if (base === 16 || base === "hex") { - out = ""; - var off = 0; - var carry = 0; - for (var i = 0; i < this.length; i++) { - var w = this.words[i]; - var word = ((w << off | carry) & 16777215).toString(16); - carry = w >>> 24 - off & 16777215; - off += 2; - if (off >= 26) { - off -= 26; - i--; - } - if (carry !== 0 || i !== this.length - 1) { - out = zeros[6 - word.length] + word + out; - } else { - out = word + out; - } - } - if (carry !== 0) { - out = carry.toString(16) + out; - } - while (out.length % padding !== 0) { - out = "0" + out; - } - if (this.negative !== 0) { - out = "-" + out; - } - return out; - } - if (base === (base | 0) && base >= 2 && base <= 36) { - var groupSize = groupSizes[base]; - var groupBase = groupBases[base]; - out = ""; - var c = this.clone(); - c.negative = 0; - while (!c.isZero()) { - var r = c.modrn(groupBase).toString(base); - c = c.idivn(groupBase); - if (!c.isZero()) { - out = zeros[groupSize - r.length] + r + out; - } else { - out = r + out; - } - } - if (this.isZero()) { - out = "0" + out; - } - while (out.length % padding !== 0) { - out = "0" + out; - } - if (this.negative !== 0) { - out = "-" + out; - } - return out; - } - assert(false, "Base should be between 2 and 36"); - }; - BN.prototype.toNumber = function toNumber() { - var ret = this.words[0]; - if (this.length === 2) { - ret += this.words[1] * 67108864; - } else if (this.length === 3 && this.words[2] === 1) { - ret += 4503599627370496 + this.words[1] * 67108864; - } else if (this.length > 2) { - assert(false, "Number can only safely store up to 53 bits"); - } - return this.negative !== 0 ? -ret : ret; - }; - BN.prototype.toJSON = function toJSON2() { - return this.toString(16, 2); - }; - if (Buffer2) { - BN.prototype.toBuffer = function toBuffer(endian, length) { - return this.toArrayLike(Buffer2, endian, length); - }; - } - BN.prototype.toArray = function toArray2(endian, length) { - return this.toArrayLike(Array, endian, length); - }; - var allocate = function allocate2(ArrayType, size) { - if (ArrayType.allocUnsafe) { - return ArrayType.allocUnsafe(size); - } - return new ArrayType(size); - }; - BN.prototype.toArrayLike = function toArrayLike(ArrayType, endian, length) { - this._strip(); - var byteLength = this.byteLength(); - var reqLength = length || Math.max(1, byteLength); - assert(byteLength <= reqLength, "byte array longer than desired length"); - assert(reqLength > 0, "Requested array length <= 0"); - var res = allocate(ArrayType, reqLength); - var postfix = endian === "le" ? "LE" : "BE"; - this["_toArrayLike" + postfix](res, byteLength); - return res; - }; - BN.prototype._toArrayLikeLE = function _toArrayLikeLE(res, byteLength) { - var position = 0; - var carry = 0; - for (var i = 0, shift = 0; i < this.length; i++) { - var word = this.words[i] << shift | carry; - res[position++] = word & 255; - if (position < res.length) { - res[position++] = word >> 8 & 255; - } - if (position < res.length) { - res[position++] = word >> 16 & 255; - } - if (shift === 6) { - if (position < res.length) { - res[position++] = word >> 24 & 255; - } - carry = 0; - shift = 0; - } else { - carry = word >>> 24; - shift += 2; - } - } - if (position < res.length) { - res[position++] = carry; - while (position < res.length) { - res[position++] = 0; - } - } - }; - BN.prototype._toArrayLikeBE = function _toArrayLikeBE(res, byteLength) { - var position = res.length - 1; - var carry = 0; - for (var i = 0, shift = 0; i < this.length; i++) { - var word = this.words[i] << shift | carry; - res[position--] = word & 255; - if (position >= 0) { - res[position--] = word >> 8 & 255; - } - if (position >= 0) { - res[position--] = word >> 16 & 255; - } - if (shift === 6) { - if (position >= 0) { - res[position--] = word >> 24 & 255; - } - carry = 0; - shift = 0; - } else { - carry = word >>> 24; - shift += 2; - } - } - if (position >= 0) { - res[position--] = carry; - while (position >= 0) { - res[position--] = 0; - } - } - }; - if (Math.clz32) { - BN.prototype._countBits = function _countBits(w) { - return 32 - Math.clz32(w); - }; - } else { - BN.prototype._countBits = function _countBits(w) { - var t = w; - var r = 0; - if (t >= 4096) { - r += 13; - t >>>= 13; - } - if (t >= 64) { - r += 7; - t >>>= 7; - } - if (t >= 8) { - r += 4; - t >>>= 4; - } - if (t >= 2) { - r += 2; - t >>>= 2; - } - return r + t; - }; - } - BN.prototype._zeroBits = function _zeroBits(w) { - if (w === 0) - return 26; - var t = w; - var r = 0; - if ((t & 8191) === 0) { - r += 13; - t >>>= 13; - } - if ((t & 127) === 0) { - r += 7; - t >>>= 7; - } - if ((t & 15) === 0) { - r += 4; - t >>>= 4; - } - if ((t & 3) === 0) { - r += 2; - t >>>= 2; - } - if ((t & 1) === 0) { - r++; - } - return r; - }; - BN.prototype.bitLength = function bitLength() { - var w = this.words[this.length - 1]; - var hi = this._countBits(w); - return (this.length - 1) * 26 + hi; - }; - function toBitArray(num) { - var w = new Array(num.bitLength()); - for (var bit = 0; bit < w.length; bit++) { - var off = bit / 26 | 0; - var wbit = bit % 26; - w[bit] = num.words[off] >>> wbit & 1; - } - return w; - } - BN.prototype.zeroBits = function zeroBits() { - if (this.isZero()) - return 0; - var r = 0; - for (var i = 0; i < this.length; i++) { - var b = this._zeroBits(this.words[i]); - r += b; - if (b !== 26) - break; - } - return r; - }; - BN.prototype.byteLength = function byteLength() { - return Math.ceil(this.bitLength() / 8); - }; - BN.prototype.toTwos = function toTwos(width) { - if (this.negative !== 0) { - return this.abs().inotn(width).iaddn(1); - } - return this.clone(); - }; - BN.prototype.fromTwos = function fromTwos(width) { - if (this.testn(width - 1)) { - return this.notn(width).iaddn(1).ineg(); - } - return this.clone(); - }; - BN.prototype.isNeg = function isNeg() { - return this.negative !== 0; - }; - BN.prototype.neg = function neg() { - return this.clone().ineg(); - }; - BN.prototype.ineg = function ineg() { - if (!this.isZero()) { - this.negative ^= 1; - } - return this; - }; - BN.prototype.iuor = function iuor(num) { - while (this.length < num.length) { - this.words[this.length++] = 0; - } - for (var i = 0; i < num.length; i++) { - this.words[i] = this.words[i] | num.words[i]; - } - return this._strip(); - }; - BN.prototype.ior = function ior(num) { - assert((this.negative | num.negative) === 0); - return this.iuor(num); - }; - BN.prototype.or = function or(num) { - if (this.length > num.length) - return this.clone().ior(num); - return num.clone().ior(this); - }; - BN.prototype.uor = function uor(num) { - if (this.length > num.length) - return this.clone().iuor(num); - return num.clone().iuor(this); - }; - BN.prototype.iuand = function iuand(num) { - var b; - if (this.length > num.length) { - b = num; - } else { - b = this; - } - for (var i = 0; i < b.length; i++) { - this.words[i] = this.words[i] & num.words[i]; - } - this.length = b.length; - return this._strip(); - }; - BN.prototype.iand = function iand(num) { - assert((this.negative | num.negative) === 0); - return this.iuand(num); - }; - BN.prototype.and = function and(num) { - if (this.length > num.length) - return this.clone().iand(num); - return num.clone().iand(this); - }; - BN.prototype.uand = function uand(num) { - if (this.length > num.length) - return this.clone().iuand(num); - return num.clone().iuand(this); - }; - BN.prototype.iuxor = function iuxor(num) { - var a; - var b; - if (this.length > num.length) { - a = this; - b = num; - } else { - a = num; - b = this; - } - for (var i = 0; i < b.length; i++) { - this.words[i] = a.words[i] ^ b.words[i]; - } - if (this !== a) { - for (; i < a.length; i++) { - this.words[i] = a.words[i]; - } - } - this.length = a.length; - return this._strip(); - }; - BN.prototype.ixor = function ixor(num) { - assert((this.negative | num.negative) === 0); - return this.iuxor(num); - }; - BN.prototype.xor = function xor(num) { - if (this.length > num.length) - return this.clone().ixor(num); - return num.clone().ixor(this); - }; - BN.prototype.uxor = function uxor(num) { - if (this.length > num.length) - return this.clone().iuxor(num); - return num.clone().iuxor(this); - }; - BN.prototype.inotn = function inotn(width) { - assert(typeof width === "number" && width >= 0); - var bytesNeeded = Math.ceil(width / 26) | 0; - var bitsLeft = width % 26; - this._expand(bytesNeeded); - if (bitsLeft > 0) { - bytesNeeded--; - } - for (var i = 0; i < bytesNeeded; i++) { - this.words[i] = ~this.words[i] & 67108863; - } - if (bitsLeft > 0) { - this.words[i] = ~this.words[i] & 67108863 >> 26 - bitsLeft; - } - return this._strip(); - }; - BN.prototype.notn = function notn(width) { - return this.clone().inotn(width); - }; - BN.prototype.setn = function setn(bit, val) { - assert(typeof bit === "number" && bit >= 0); - var off = bit / 26 | 0; - var wbit = bit % 26; - this._expand(off + 1); - if (val) { - this.words[off] = this.words[off] | 1 << wbit; - } else { - this.words[off] = this.words[off] & ~(1 << wbit); - } - return this._strip(); - }; - BN.prototype.iadd = function iadd(num) { - var r; - if (this.negative !== 0 && num.negative === 0) { - this.negative = 0; - r = this.isub(num); - this.negative ^= 1; - return this._normSign(); - } else if (this.negative === 0 && num.negative !== 0) { - num.negative = 0; - r = this.isub(num); - num.negative = 1; - return r._normSign(); - } - var a, b; - if (this.length > num.length) { - a = this; - b = num; - } else { - a = num; - b = this; - } - var carry = 0; - for (var i = 0; i < b.length; i++) { - r = (a.words[i] | 0) + (b.words[i] | 0) + carry; - this.words[i] = r & 67108863; - carry = r >>> 26; - } - for (; carry !== 0 && i < a.length; i++) { - r = (a.words[i] | 0) + carry; - this.words[i] = r & 67108863; - carry = r >>> 26; - } - this.length = a.length; - if (carry !== 0) { - this.words[this.length] = carry; - this.length++; - } else if (a !== this) { - for (; i < a.length; i++) { - this.words[i] = a.words[i]; - } - } - return this; - }; - BN.prototype.add = function add(num) { - var res; - if (num.negative !== 0 && this.negative === 0) { - num.negative = 0; - res = this.sub(num); - num.negative ^= 1; - return res; - } else if (num.negative === 0 && this.negative !== 0) { - this.negative = 0; - res = num.sub(this); - this.negative = 1; - return res; - } - if (this.length > num.length) - return this.clone().iadd(num); - return num.clone().iadd(this); - }; - BN.prototype.isub = function isub(num) { - if (num.negative !== 0) { - num.negative = 0; - var r = this.iadd(num); - num.negative = 1; - return r._normSign(); - } else if (this.negative !== 0) { - this.negative = 0; - this.iadd(num); - this.negative = 1; - return this._normSign(); - } - var cmp = this.cmp(num); - if (cmp === 0) { - this.negative = 0; - this.length = 1; - this.words[0] = 0; - return this; - } - var a, b; - if (cmp > 0) { - a = this; - b = num; - } else { - a = num; - b = this; - } - var carry = 0; - for (var i = 0; i < b.length; i++) { - r = (a.words[i] | 0) - (b.words[i] | 0) + carry; - carry = r >> 26; - this.words[i] = r & 67108863; - } - for (; carry !== 0 && i < a.length; i++) { - r = (a.words[i] | 0) + carry; - carry = r >> 26; - this.words[i] = r & 67108863; - } - if (carry === 0 && i < a.length && a !== this) { - for (; i < a.length; i++) { - this.words[i] = a.words[i]; - } - } - this.length = Math.max(this.length, i); - if (a !== this) { - this.negative = 1; - } - return this._strip(); - }; - BN.prototype.sub = function sub(num) { - return this.clone().isub(num); - }; - function smallMulTo(self2, num, out) { - out.negative = num.negative ^ self2.negative; - var len = self2.length + num.length | 0; - out.length = len; - len = len - 1 | 0; - var a = self2.words[0] | 0; - var b = num.words[0] | 0; - var r = a * b; - var lo = r & 67108863; - var carry = r / 67108864 | 0; - out.words[0] = lo; - for (var k = 1; k < len; k++) { - var ncarry = carry >>> 26; - var rword = carry & 67108863; - var maxJ = Math.min(k, num.length - 1); - for (var j = Math.max(0, k - self2.length + 1); j <= maxJ; j++) { - var i = k - j | 0; - a = self2.words[i] | 0; - b = num.words[j] | 0; - r = a * b + rword; - ncarry += r / 67108864 | 0; - rword = r & 67108863; - } - out.words[k] = rword | 0; - carry = ncarry | 0; - } - if (carry !== 0) { - out.words[k] = carry | 0; - } else { - out.length--; - } - return out._strip(); - } - var comb10MulTo = function comb10MulTo2(self2, num, out) { - var a = self2.words; - var b = num.words; - var o = out.words; - var c = 0; - var lo; - var mid; - var hi; - var a0 = a[0] | 0; - var al0 = a0 & 8191; - var ah0 = a0 >>> 13; - var a1 = a[1] | 0; - var al1 = a1 & 8191; - var ah1 = a1 >>> 13; - var a2 = a[2] | 0; - var al2 = a2 & 8191; - var ah2 = a2 >>> 13; - var a3 = a[3] | 0; - var al3 = a3 & 8191; - var ah3 = a3 >>> 13; - var a4 = a[4] | 0; - var al4 = a4 & 8191; - var ah4 = a4 >>> 13; - var a5 = a[5] | 0; - var al5 = a5 & 8191; - var ah5 = a5 >>> 13; - var a6 = a[6] | 0; - var al6 = a6 & 8191; - var ah6 = a6 >>> 13; - var a7 = a[7] | 0; - var al7 = a7 & 8191; - var ah7 = a7 >>> 13; - var a8 = a[8] | 0; - var al8 = a8 & 8191; - var ah8 = a8 >>> 13; - var a9 = a[9] | 0; - var al9 = a9 & 8191; - var ah9 = a9 >>> 13; - var b0 = b[0] | 0; - var bl0 = b0 & 8191; - var bh0 = b0 >>> 13; - var b1 = b[1] | 0; - var bl1 = b1 & 8191; - var bh1 = b1 >>> 13; - var b2 = b[2] | 0; - var bl2 = b2 & 8191; - var bh2 = b2 >>> 13; - var b3 = b[3] | 0; - var bl3 = b3 & 8191; - var bh3 = b3 >>> 13; - var b4 = b[4] | 0; - var bl4 = b4 & 8191; - var bh4 = b4 >>> 13; - var b5 = b[5] | 0; - var bl5 = b5 & 8191; - var bh5 = b5 >>> 13; - var b6 = b[6] | 0; - var bl6 = b6 & 8191; - var bh6 = b6 >>> 13; - var b7 = b[7] | 0; - var bl7 = b7 & 8191; - var bh7 = b7 >>> 13; - var b8 = b[8] | 0; - var bl8 = b8 & 8191; - var bh8 = b8 >>> 13; - var b9 = b[9] | 0; - var bl9 = b9 & 8191; - var bh9 = b9 >>> 13; - out.negative = self2.negative ^ num.negative; - out.length = 19; - lo = Math.imul(al0, bl0); - mid = Math.imul(al0, bh0); - mid = mid + Math.imul(ah0, bl0) | 0; - hi = Math.imul(ah0, bh0); - var w0 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w0 >>> 26) | 0; - w0 &= 67108863; - lo = Math.imul(al1, bl0); - mid = Math.imul(al1, bh0); - mid = mid + Math.imul(ah1, bl0) | 0; - hi = Math.imul(ah1, bh0); - lo = lo + Math.imul(al0, bl1) | 0; - mid = mid + Math.imul(al0, bh1) | 0; - mid = mid + Math.imul(ah0, bl1) | 0; - hi = hi + Math.imul(ah0, bh1) | 0; - var w1 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w1 >>> 26) | 0; - w1 &= 67108863; - lo = Math.imul(al2, bl0); - mid = Math.imul(al2, bh0); - mid = mid + Math.imul(ah2, bl0) | 0; - hi = Math.imul(ah2, bh0); - lo = lo + Math.imul(al1, bl1) | 0; - mid = mid + Math.imul(al1, bh1) | 0; - mid = mid + Math.imul(ah1, bl1) | 0; - hi = hi + Math.imul(ah1, bh1) | 0; - lo = lo + Math.imul(al0, bl2) | 0; - mid = mid + Math.imul(al0, bh2) | 0; - mid = mid + Math.imul(ah0, bl2) | 0; - hi = hi + Math.imul(ah0, bh2) | 0; - var w2 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w2 >>> 26) | 0; - w2 &= 67108863; - lo = Math.imul(al3, bl0); - mid = Math.imul(al3, bh0); - mid = mid + Math.imul(ah3, bl0) | 0; - hi = Math.imul(ah3, bh0); - lo = lo + Math.imul(al2, bl1) | 0; - mid = mid + Math.imul(al2, bh1) | 0; - mid = mid + Math.imul(ah2, bl1) | 0; - hi = hi + Math.imul(ah2, bh1) | 0; - lo = lo + Math.imul(al1, bl2) | 0; - mid = mid + Math.imul(al1, bh2) | 0; - mid = mid + Math.imul(ah1, bl2) | 0; - hi = hi + Math.imul(ah1, bh2) | 0; - lo = lo + Math.imul(al0, bl3) | 0; - mid = mid + Math.imul(al0, bh3) | 0; - mid = mid + Math.imul(ah0, bl3) | 0; - hi = hi + Math.imul(ah0, bh3) | 0; - var w3 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w3 >>> 26) | 0; - w3 &= 67108863; - lo = Math.imul(al4, bl0); - mid = Math.imul(al4, bh0); - mid = mid + Math.imul(ah4, bl0) | 0; - hi = Math.imul(ah4, bh0); - lo = lo + Math.imul(al3, bl1) | 0; - mid = mid + Math.imul(al3, bh1) | 0; - mid = mid + Math.imul(ah3, bl1) | 0; - hi = hi + Math.imul(ah3, bh1) | 0; - lo = lo + Math.imul(al2, bl2) | 0; - mid = mid + Math.imul(al2, bh2) | 0; - mid = mid + Math.imul(ah2, bl2) | 0; - hi = hi + Math.imul(ah2, bh2) | 0; - lo = lo + Math.imul(al1, bl3) | 0; - mid = mid + Math.imul(al1, bh3) | 0; - mid = mid + Math.imul(ah1, bl3) | 0; - hi = hi + Math.imul(ah1, bh3) | 0; - lo = lo + Math.imul(al0, bl4) | 0; - mid = mid + Math.imul(al0, bh4) | 0; - mid = mid + Math.imul(ah0, bl4) | 0; - hi = hi + Math.imul(ah0, bh4) | 0; - var w4 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w4 >>> 26) | 0; - w4 &= 67108863; - lo = Math.imul(al5, bl0); - mid = Math.imul(al5, bh0); - mid = mid + Math.imul(ah5, bl0) | 0; - hi = Math.imul(ah5, bh0); - lo = lo + Math.imul(al4, bl1) | 0; - mid = mid + Math.imul(al4, bh1) | 0; - mid = mid + Math.imul(ah4, bl1) | 0; - hi = hi + Math.imul(ah4, bh1) | 0; - lo = lo + Math.imul(al3, bl2) | 0; - mid = mid + Math.imul(al3, bh2) | 0; - mid = mid + Math.imul(ah3, bl2) | 0; - hi = hi + Math.imul(ah3, bh2) | 0; - lo = lo + Math.imul(al2, bl3) | 0; - mid = mid + Math.imul(al2, bh3) | 0; - mid = mid + Math.imul(ah2, bl3) | 0; - hi = hi + Math.imul(ah2, bh3) | 0; - lo = lo + Math.imul(al1, bl4) | 0; - mid = mid + Math.imul(al1, bh4) | 0; - mid = mid + Math.imul(ah1, bl4) | 0; - hi = hi + Math.imul(ah1, bh4) | 0; - lo = lo + Math.imul(al0, bl5) | 0; - mid = mid + Math.imul(al0, bh5) | 0; - mid = mid + Math.imul(ah0, bl5) | 0; - hi = hi + Math.imul(ah0, bh5) | 0; - var w5 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w5 >>> 26) | 0; - w5 &= 67108863; - lo = Math.imul(al6, bl0); - mid = Math.imul(al6, bh0); - mid = mid + Math.imul(ah6, bl0) | 0; - hi = Math.imul(ah6, bh0); - lo = lo + Math.imul(al5, bl1) | 0; - mid = mid + Math.imul(al5, bh1) | 0; - mid = mid + Math.imul(ah5, bl1) | 0; - hi = hi + Math.imul(ah5, bh1) | 0; - lo = lo + Math.imul(al4, bl2) | 0; - mid = mid + Math.imul(al4, bh2) | 0; - mid = mid + Math.imul(ah4, bl2) | 0; - hi = hi + Math.imul(ah4, bh2) | 0; - lo = lo + Math.imul(al3, bl3) | 0; - mid = mid + Math.imul(al3, bh3) | 0; - mid = mid + Math.imul(ah3, bl3) | 0; - hi = hi + Math.imul(ah3, bh3) | 0; - lo = lo + Math.imul(al2, bl4) | 0; - mid = mid + Math.imul(al2, bh4) | 0; - mid = mid + Math.imul(ah2, bl4) | 0; - hi = hi + Math.imul(ah2, bh4) | 0; - lo = lo + Math.imul(al1, bl5) | 0; - mid = mid + Math.imul(al1, bh5) | 0; - mid = mid + Math.imul(ah1, bl5) | 0; - hi = hi + Math.imul(ah1, bh5) | 0; - lo = lo + Math.imul(al0, bl6) | 0; - mid = mid + Math.imul(al0, bh6) | 0; - mid = mid + Math.imul(ah0, bl6) | 0; - hi = hi + Math.imul(ah0, bh6) | 0; - var w6 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w6 >>> 26) | 0; - w6 &= 67108863; - lo = Math.imul(al7, bl0); - mid = Math.imul(al7, bh0); - mid = mid + Math.imul(ah7, bl0) | 0; - hi = Math.imul(ah7, bh0); - lo = lo + Math.imul(al6, bl1) | 0; - mid = mid + Math.imul(al6, bh1) | 0; - mid = mid + Math.imul(ah6, bl1) | 0; - hi = hi + Math.imul(ah6, bh1) | 0; - lo = lo + Math.imul(al5, bl2) | 0; - mid = mid + Math.imul(al5, bh2) | 0; - mid = mid + Math.imul(ah5, bl2) | 0; - hi = hi + Math.imul(ah5, bh2) | 0; - lo = lo + Math.imul(al4, bl3) | 0; - mid = mid + Math.imul(al4, bh3) | 0; - mid = mid + Math.imul(ah4, bl3) | 0; - hi = hi + Math.imul(ah4, bh3) | 0; - lo = lo + Math.imul(al3, bl4) | 0; - mid = mid + Math.imul(al3, bh4) | 0; - mid = mid + Math.imul(ah3, bl4) | 0; - hi = hi + Math.imul(ah3, bh4) | 0; - lo = lo + Math.imul(al2, bl5) | 0; - mid = mid + Math.imul(al2, bh5) | 0; - mid = mid + Math.imul(ah2, bl5) | 0; - hi = hi + Math.imul(ah2, bh5) | 0; - lo = lo + Math.imul(al1, bl6) | 0; - mid = mid + Math.imul(al1, bh6) | 0; - mid = mid + Math.imul(ah1, bl6) | 0; - hi = hi + Math.imul(ah1, bh6) | 0; - lo = lo + Math.imul(al0, bl7) | 0; - mid = mid + Math.imul(al0, bh7) | 0; - mid = mid + Math.imul(ah0, bl7) | 0; - hi = hi + Math.imul(ah0, bh7) | 0; - var w7 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w7 >>> 26) | 0; - w7 &= 67108863; - lo = Math.imul(al8, bl0); - mid = Math.imul(al8, bh0); - mid = mid + Math.imul(ah8, bl0) | 0; - hi = Math.imul(ah8, bh0); - lo = lo + Math.imul(al7, bl1) | 0; - mid = mid + Math.imul(al7, bh1) | 0; - mid = mid + Math.imul(ah7, bl1) | 0; - hi = hi + Math.imul(ah7, bh1) | 0; - lo = lo + Math.imul(al6, bl2) | 0; - mid = mid + Math.imul(al6, bh2) | 0; - mid = mid + Math.imul(ah6, bl2) | 0; - hi = hi + Math.imul(ah6, bh2) | 0; - lo = lo + Math.imul(al5, bl3) | 0; - mid = mid + Math.imul(al5, bh3) | 0; - mid = mid + Math.imul(ah5, bl3) | 0; - hi = hi + Math.imul(ah5, bh3) | 0; - lo = lo + Math.imul(al4, bl4) | 0; - mid = mid + Math.imul(al4, bh4) | 0; - mid = mid + Math.imul(ah4, bl4) | 0; - hi = hi + Math.imul(ah4, bh4) | 0; - lo = lo + Math.imul(al3, bl5) | 0; - mid = mid + Math.imul(al3, bh5) | 0; - mid = mid + Math.imul(ah3, bl5) | 0; - hi = hi + Math.imul(ah3, bh5) | 0; - lo = lo + Math.imul(al2, bl6) | 0; - mid = mid + Math.imul(al2, bh6) | 0; - mid = mid + Math.imul(ah2, bl6) | 0; - hi = hi + Math.imul(ah2, bh6) | 0; - lo = lo + Math.imul(al1, bl7) | 0; - mid = mid + Math.imul(al1, bh7) | 0; - mid = mid + Math.imul(ah1, bl7) | 0; - hi = hi + Math.imul(ah1, bh7) | 0; - lo = lo + Math.imul(al0, bl8) | 0; - mid = mid + Math.imul(al0, bh8) | 0; - mid = mid + Math.imul(ah0, bl8) | 0; - hi = hi + Math.imul(ah0, bh8) | 0; - var w8 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w8 >>> 26) | 0; - w8 &= 67108863; - lo = Math.imul(al9, bl0); - mid = Math.imul(al9, bh0); - mid = mid + Math.imul(ah9, bl0) | 0; - hi = Math.imul(ah9, bh0); - lo = lo + Math.imul(al8, bl1) | 0; - mid = mid + Math.imul(al8, bh1) | 0; - mid = mid + Math.imul(ah8, bl1) | 0; - hi = hi + Math.imul(ah8, bh1) | 0; - lo = lo + Math.imul(al7, bl2) | 0; - mid = mid + Math.imul(al7, bh2) | 0; - mid = mid + Math.imul(ah7, bl2) | 0; - hi = hi + Math.imul(ah7, bh2) | 0; - lo = lo + Math.imul(al6, bl3) | 0; - mid = mid + Math.imul(al6, bh3) | 0; - mid = mid + Math.imul(ah6, bl3) | 0; - hi = hi + Math.imul(ah6, bh3) | 0; - lo = lo + Math.imul(al5, bl4) | 0; - mid = mid + Math.imul(al5, bh4) | 0; - mid = mid + Math.imul(ah5, bl4) | 0; - hi = hi + Math.imul(ah5, bh4) | 0; - lo = lo + Math.imul(al4, bl5) | 0; - mid = mid + Math.imul(al4, bh5) | 0; - mid = mid + Math.imul(ah4, bl5) | 0; - hi = hi + Math.imul(ah4, bh5) | 0; - lo = lo + Math.imul(al3, bl6) | 0; - mid = mid + Math.imul(al3, bh6) | 0; - mid = mid + Math.imul(ah3, bl6) | 0; - hi = hi + Math.imul(ah3, bh6) | 0; - lo = lo + Math.imul(al2, bl7) | 0; - mid = mid + Math.imul(al2, bh7) | 0; - mid = mid + Math.imul(ah2, bl7) | 0; - hi = hi + Math.imul(ah2, bh7) | 0; - lo = lo + Math.imul(al1, bl8) | 0; - mid = mid + Math.imul(al1, bh8) | 0; - mid = mid + Math.imul(ah1, bl8) | 0; - hi = hi + Math.imul(ah1, bh8) | 0; - lo = lo + Math.imul(al0, bl9) | 0; - mid = mid + Math.imul(al0, bh9) | 0; - mid = mid + Math.imul(ah0, bl9) | 0; - hi = hi + Math.imul(ah0, bh9) | 0; - var w9 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w9 >>> 26) | 0; - w9 &= 67108863; - lo = Math.imul(al9, bl1); - mid = Math.imul(al9, bh1); - mid = mid + Math.imul(ah9, bl1) | 0; - hi = Math.imul(ah9, bh1); - lo = lo + Math.imul(al8, bl2) | 0; - mid = mid + Math.imul(al8, bh2) | 0; - mid = mid + Math.imul(ah8, bl2) | 0; - hi = hi + Math.imul(ah8, bh2) | 0; - lo = lo + Math.imul(al7, bl3) | 0; - mid = mid + Math.imul(al7, bh3) | 0; - mid = mid + Math.imul(ah7, bl3) | 0; - hi = hi + Math.imul(ah7, bh3) | 0; - lo = lo + Math.imul(al6, bl4) | 0; - mid = mid + Math.imul(al6, bh4) | 0; - mid = mid + Math.imul(ah6, bl4) | 0; - hi = hi + Math.imul(ah6, bh4) | 0; - lo = lo + Math.imul(al5, bl5) | 0; - mid = mid + Math.imul(al5, bh5) | 0; - mid = mid + Math.imul(ah5, bl5) | 0; - hi = hi + Math.imul(ah5, bh5) | 0; - lo = lo + Math.imul(al4, bl6) | 0; - mid = mid + Math.imul(al4, bh6) | 0; - mid = mid + Math.imul(ah4, bl6) | 0; - hi = hi + Math.imul(ah4, bh6) | 0; - lo = lo + Math.imul(al3, bl7) | 0; - mid = mid + Math.imul(al3, bh7) | 0; - mid = mid + Math.imul(ah3, bl7) | 0; - hi = hi + Math.imul(ah3, bh7) | 0; - lo = lo + Math.imul(al2, bl8) | 0; - mid = mid + Math.imul(al2, bh8) | 0; - mid = mid + Math.imul(ah2, bl8) | 0; - hi = hi + Math.imul(ah2, bh8) | 0; - lo = lo + Math.imul(al1, bl9) | 0; - mid = mid + Math.imul(al1, bh9) | 0; - mid = mid + Math.imul(ah1, bl9) | 0; - hi = hi + Math.imul(ah1, bh9) | 0; - var w10 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w10 >>> 26) | 0; - w10 &= 67108863; - lo = Math.imul(al9, bl2); - mid = Math.imul(al9, bh2); - mid = mid + Math.imul(ah9, bl2) | 0; - hi = Math.imul(ah9, bh2); - lo = lo + Math.imul(al8, bl3) | 0; - mid = mid + Math.imul(al8, bh3) | 0; - mid = mid + Math.imul(ah8, bl3) | 0; - hi = hi + Math.imul(ah8, bh3) | 0; - lo = lo + Math.imul(al7, bl4) | 0; - mid = mid + Math.imul(al7, bh4) | 0; - mid = mid + Math.imul(ah7, bl4) | 0; - hi = hi + Math.imul(ah7, bh4) | 0; - lo = lo + Math.imul(al6, bl5) | 0; - mid = mid + Math.imul(al6, bh5) | 0; - mid = mid + Math.imul(ah6, bl5) | 0; - hi = hi + Math.imul(ah6, bh5) | 0; - lo = lo + Math.imul(al5, bl6) | 0; - mid = mid + Math.imul(al5, bh6) | 0; - mid = mid + Math.imul(ah5, bl6) | 0; - hi = hi + Math.imul(ah5, bh6) | 0; - lo = lo + Math.imul(al4, bl7) | 0; - mid = mid + Math.imul(al4, bh7) | 0; - mid = mid + Math.imul(ah4, bl7) | 0; - hi = hi + Math.imul(ah4, bh7) | 0; - lo = lo + Math.imul(al3, bl8) | 0; - mid = mid + Math.imul(al3, bh8) | 0; - mid = mid + Math.imul(ah3, bl8) | 0; - hi = hi + Math.imul(ah3, bh8) | 0; - lo = lo + Math.imul(al2, bl9) | 0; - mid = mid + Math.imul(al2, bh9) | 0; - mid = mid + Math.imul(ah2, bl9) | 0; - hi = hi + Math.imul(ah2, bh9) | 0; - var w11 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w11 >>> 26) | 0; - w11 &= 67108863; - lo = Math.imul(al9, bl3); - mid = Math.imul(al9, bh3); - mid = mid + Math.imul(ah9, bl3) | 0; - hi = Math.imul(ah9, bh3); - lo = lo + Math.imul(al8, bl4) | 0; - mid = mid + Math.imul(al8, bh4) | 0; - mid = mid + Math.imul(ah8, bl4) | 0; - hi = hi + Math.imul(ah8, bh4) | 0; - lo = lo + Math.imul(al7, bl5) | 0; - mid = mid + Math.imul(al7, bh5) | 0; - mid = mid + Math.imul(ah7, bl5) | 0; - hi = hi + Math.imul(ah7, bh5) | 0; - lo = lo + Math.imul(al6, bl6) | 0; - mid = mid + Math.imul(al6, bh6) | 0; - mid = mid + Math.imul(ah6, bl6) | 0; - hi = hi + Math.imul(ah6, bh6) | 0; - lo = lo + Math.imul(al5, bl7) | 0; - mid = mid + Math.imul(al5, bh7) | 0; - mid = mid + Math.imul(ah5, bl7) | 0; - hi = hi + Math.imul(ah5, bh7) | 0; - lo = lo + Math.imul(al4, bl8) | 0; - mid = mid + Math.imul(al4, bh8) | 0; - mid = mid + Math.imul(ah4, bl8) | 0; - hi = hi + Math.imul(ah4, bh8) | 0; - lo = lo + Math.imul(al3, bl9) | 0; - mid = mid + Math.imul(al3, bh9) | 0; - mid = mid + Math.imul(ah3, bl9) | 0; - hi = hi + Math.imul(ah3, bh9) | 0; - var w12 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w12 >>> 26) | 0; - w12 &= 67108863; - lo = Math.imul(al9, bl4); - mid = Math.imul(al9, bh4); - mid = mid + Math.imul(ah9, bl4) | 0; - hi = Math.imul(ah9, bh4); - lo = lo + Math.imul(al8, bl5) | 0; - mid = mid + Math.imul(al8, bh5) | 0; - mid = mid + Math.imul(ah8, bl5) | 0; - hi = hi + Math.imul(ah8, bh5) | 0; - lo = lo + Math.imul(al7, bl6) | 0; - mid = mid + Math.imul(al7, bh6) | 0; - mid = mid + Math.imul(ah7, bl6) | 0; - hi = hi + Math.imul(ah7, bh6) | 0; - lo = lo + Math.imul(al6, bl7) | 0; - mid = mid + Math.imul(al6, bh7) | 0; - mid = mid + Math.imul(ah6, bl7) | 0; - hi = hi + Math.imul(ah6, bh7) | 0; - lo = lo + Math.imul(al5, bl8) | 0; - mid = mid + Math.imul(al5, bh8) | 0; - mid = mid + Math.imul(ah5, bl8) | 0; - hi = hi + Math.imul(ah5, bh8) | 0; - lo = lo + Math.imul(al4, bl9) | 0; - mid = mid + Math.imul(al4, bh9) | 0; - mid = mid + Math.imul(ah4, bl9) | 0; - hi = hi + Math.imul(ah4, bh9) | 0; - var w13 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w13 >>> 26) | 0; - w13 &= 67108863; - lo = Math.imul(al9, bl5); - mid = Math.imul(al9, bh5); - mid = mid + Math.imul(ah9, bl5) | 0; - hi = Math.imul(ah9, bh5); - lo = lo + Math.imul(al8, bl6) | 0; - mid = mid + Math.imul(al8, bh6) | 0; - mid = mid + Math.imul(ah8, bl6) | 0; - hi = hi + Math.imul(ah8, bh6) | 0; - lo = lo + Math.imul(al7, bl7) | 0; - mid = mid + Math.imul(al7, bh7) | 0; - mid = mid + Math.imul(ah7, bl7) | 0; - hi = hi + Math.imul(ah7, bh7) | 0; - lo = lo + Math.imul(al6, bl8) | 0; - mid = mid + Math.imul(al6, bh8) | 0; - mid = mid + Math.imul(ah6, bl8) | 0; - hi = hi + Math.imul(ah6, bh8) | 0; - lo = lo + Math.imul(al5, bl9) | 0; - mid = mid + Math.imul(al5, bh9) | 0; - mid = mid + Math.imul(ah5, bl9) | 0; - hi = hi + Math.imul(ah5, bh9) | 0; - var w14 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w14 >>> 26) | 0; - w14 &= 67108863; - lo = Math.imul(al9, bl6); - mid = Math.imul(al9, bh6); - mid = mid + Math.imul(ah9, bl6) | 0; - hi = Math.imul(ah9, bh6); - lo = lo + Math.imul(al8, bl7) | 0; - mid = mid + Math.imul(al8, bh7) | 0; - mid = mid + Math.imul(ah8, bl7) | 0; - hi = hi + Math.imul(ah8, bh7) | 0; - lo = lo + Math.imul(al7, bl8) | 0; - mid = mid + Math.imul(al7, bh8) | 0; - mid = mid + Math.imul(ah7, bl8) | 0; - hi = hi + Math.imul(ah7, bh8) | 0; - lo = lo + Math.imul(al6, bl9) | 0; - mid = mid + Math.imul(al6, bh9) | 0; - mid = mid + Math.imul(ah6, bl9) | 0; - hi = hi + Math.imul(ah6, bh9) | 0; - var w15 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w15 >>> 26) | 0; - w15 &= 67108863; - lo = Math.imul(al9, bl7); - mid = Math.imul(al9, bh7); - mid = mid + Math.imul(ah9, bl7) | 0; - hi = Math.imul(ah9, bh7); - lo = lo + Math.imul(al8, bl8) | 0; - mid = mid + Math.imul(al8, bh8) | 0; - mid = mid + Math.imul(ah8, bl8) | 0; - hi = hi + Math.imul(ah8, bh8) | 0; - lo = lo + Math.imul(al7, bl9) | 0; - mid = mid + Math.imul(al7, bh9) | 0; - mid = mid + Math.imul(ah7, bl9) | 0; - hi = hi + Math.imul(ah7, bh9) | 0; - var w16 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w16 >>> 26) | 0; - w16 &= 67108863; - lo = Math.imul(al9, bl8); - mid = Math.imul(al9, bh8); - mid = mid + Math.imul(ah9, bl8) | 0; - hi = Math.imul(ah9, bh8); - lo = lo + Math.imul(al8, bl9) | 0; - mid = mid + Math.imul(al8, bh9) | 0; - mid = mid + Math.imul(ah8, bl9) | 0; - hi = hi + Math.imul(ah8, bh9) | 0; - var w17 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w17 >>> 26) | 0; - w17 &= 67108863; - lo = Math.imul(al9, bl9); - mid = Math.imul(al9, bh9); - mid = mid + Math.imul(ah9, bl9) | 0; - hi = Math.imul(ah9, bh9); - var w18 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w18 >>> 26) | 0; - w18 &= 67108863; - o[0] = w0; - o[1] = w1; - o[2] = w2; - o[3] = w3; - o[4] = w4; - o[5] = w5; - o[6] = w6; - o[7] = w7; - o[8] = w8; - o[9] = w9; - o[10] = w10; - o[11] = w11; - o[12] = w12; - o[13] = w13; - o[14] = w14; - o[15] = w15; - o[16] = w16; - o[17] = w17; - o[18] = w18; - if (c !== 0) { - o[19] = c; - out.length++; - } - return out; - }; - if (!Math.imul) { - comb10MulTo = smallMulTo; - } - function bigMulTo(self2, num, out) { - out.negative = num.negative ^ self2.negative; - out.length = self2.length + num.length; - var carry = 0; - var hncarry = 0; - for (var k = 0; k < out.length - 1; k++) { - var ncarry = hncarry; - hncarry = 0; - var rword = carry & 67108863; - var maxJ = Math.min(k, num.length - 1); - for (var j = Math.max(0, k - self2.length + 1); j <= maxJ; j++) { - var i = k - j; - var a = self2.words[i] | 0; - var b = num.words[j] | 0; - var r = a * b; - var lo = r & 67108863; - ncarry = ncarry + (r / 67108864 | 0) | 0; - lo = lo + rword | 0; - rword = lo & 67108863; - ncarry = ncarry + (lo >>> 26) | 0; - hncarry += ncarry >>> 26; - ncarry &= 67108863; - } - out.words[k] = rword; - carry = ncarry; - ncarry = hncarry; - } - if (carry !== 0) { - out.words[k] = carry; - } else { - out.length--; - } - return out._strip(); - } - function jumboMulTo(self2, num, out) { - return bigMulTo(self2, num, out); - } - BN.prototype.mulTo = function mulTo(num, out) { - var res; - var len = this.length + num.length; - if (this.length === 10 && num.length === 10) { - res = comb10MulTo(this, num, out); - } else if (len < 63) { - res = smallMulTo(this, num, out); - } else if (len < 1024) { - res = bigMulTo(this, num, out); - } else { - res = jumboMulTo(this, num, out); - } - return res; - }; - function FFTM(x, y) { - this.x = x; - this.y = y; - } - FFTM.prototype.makeRBT = function makeRBT(N) { - var t = new Array(N); - var l = BN.prototype._countBits(N) - 1; - for (var i = 0; i < N; i++) { - t[i] = this.revBin(i, l, N); - } - return t; - }; - FFTM.prototype.revBin = function revBin(x, l, N) { - if (x === 0 || x === N - 1) - return x; - var rb = 0; - for (var i = 0; i < l; i++) { - rb |= (x & 1) << l - i - 1; - x >>= 1; - } - return rb; - }; - FFTM.prototype.permute = function permute(rbt, rws, iws, rtws, itws, N) { - for (var i = 0; i < N; i++) { - rtws[i] = rws[rbt[i]]; - itws[i] = iws[rbt[i]]; - } - }; - FFTM.prototype.transform = function transform(rws, iws, rtws, itws, N, rbt) { - this.permute(rbt, rws, iws, rtws, itws, N); - for (var s = 1; s < N; s <<= 1) { - var l = s << 1; - var rtwdf = Math.cos(2 * Math.PI / l); - var itwdf = Math.sin(2 * Math.PI / l); - for (var p = 0; p < N; p += l) { - var rtwdf_ = rtwdf; - var itwdf_ = itwdf; - for (var j = 0; j < s; j++) { - var re = rtws[p + j]; - var ie = itws[p + j]; - var ro = rtws[p + j + s]; - var io = itws[p + j + s]; - var rx = rtwdf_ * ro - itwdf_ * io; - io = rtwdf_ * io + itwdf_ * ro; - ro = rx; - rtws[p + j] = re + ro; - itws[p + j] = ie + io; - rtws[p + j + s] = re - ro; - itws[p + j + s] = ie - io; - if (j !== l) { - rx = rtwdf * rtwdf_ - itwdf * itwdf_; - itwdf_ = rtwdf * itwdf_ + itwdf * rtwdf_; - rtwdf_ = rx; - } - } - } - } - }; - FFTM.prototype.guessLen13b = function guessLen13b(n, m) { - var N = Math.max(m, n) | 1; - var odd = N & 1; - var i = 0; - for (N = N / 2 | 0; N; N = N >>> 1) { - i++; - } - return 1 << i + 1 + odd; - }; - FFTM.prototype.conjugate = function conjugate(rws, iws, N) { - if (N <= 1) - return; - for (var i = 0; i < N / 2; i++) { - var t = rws[i]; - rws[i] = rws[N - i - 1]; - rws[N - i - 1] = t; - t = iws[i]; - iws[i] = -iws[N - i - 1]; - iws[N - i - 1] = -t; - } - }; - FFTM.prototype.normalize13b = function normalize13b(ws, N) { - var carry = 0; - for (var i = 0; i < N / 2; i++) { - var w = Math.round(ws[2 * i + 1] / N) * 8192 + Math.round(ws[2 * i] / N) + carry; - ws[i] = w & 67108863; - if (w < 67108864) { - carry = 0; - } else { - carry = w / 67108864 | 0; - } - } - return ws; - }; - FFTM.prototype.convert13b = function convert13b(ws, len, rws, N) { - var carry = 0; - for (var i = 0; i < len; i++) { - carry = carry + (ws[i] | 0); - rws[2 * i] = carry & 8191; - carry = carry >>> 13; - rws[2 * i + 1] = carry & 8191; - carry = carry >>> 13; - } - for (i = 2 * len; i < N; ++i) { - rws[i] = 0; - } - assert(carry === 0); - assert((carry & ~8191) === 0); - }; - FFTM.prototype.stub = function stub(N) { - var ph = new Array(N); - for (var i = 0; i < N; i++) { - ph[i] = 0; - } - return ph; - }; - FFTM.prototype.mulp = function mulp(x, y, out) { - var N = 2 * this.guessLen13b(x.length, y.length); - var rbt = this.makeRBT(N); - var _ = this.stub(N); - var rws = new Array(N); - var rwst = new Array(N); - var iwst = new Array(N); - var nrws = new Array(N); - var nrwst = new Array(N); - var niwst = new Array(N); - var rmws = out.words; - rmws.length = N; - this.convert13b(x.words, x.length, rws, N); - this.convert13b(y.words, y.length, nrws, N); - this.transform(rws, _, rwst, iwst, N, rbt); - this.transform(nrws, _, nrwst, niwst, N, rbt); - for (var i = 0; i < N; i++) { - var rx = rwst[i] * nrwst[i] - iwst[i] * niwst[i]; - iwst[i] = rwst[i] * niwst[i] + iwst[i] * nrwst[i]; - rwst[i] = rx; - } - this.conjugate(rwst, iwst, N); - this.transform(rwst, iwst, rmws, _, N, rbt); - this.conjugate(rmws, _, N); - this.normalize13b(rmws, N); - out.negative = x.negative ^ y.negative; - out.length = x.length + y.length; - return out._strip(); - }; - BN.prototype.mul = function mul(num) { - var out = new BN(null); - out.words = new Array(this.length + num.length); - return this.mulTo(num, out); - }; - BN.prototype.mulf = function mulf(num) { - var out = new BN(null); - out.words = new Array(this.length + num.length); - return jumboMulTo(this, num, out); - }; - BN.prototype.imul = function imul(num) { - return this.clone().mulTo(num, this); - }; - BN.prototype.imuln = function imuln(num) { - var isNegNum = num < 0; - if (isNegNum) - num = -num; - assert(typeof num === "number"); - assert(num < 67108864); - var carry = 0; - for (var i = 0; i < this.length; i++) { - var w = (this.words[i] | 0) * num; - var lo = (w & 67108863) + (carry & 67108863); - carry >>= 26; - carry += w / 67108864 | 0; - carry += lo >>> 26; - this.words[i] = lo & 67108863; - } - if (carry !== 0) { - this.words[i] = carry; - this.length++; - } - return isNegNum ? this.ineg() : this; - }; - BN.prototype.muln = function muln(num) { - return this.clone().imuln(num); - }; - BN.prototype.sqr = function sqr() { - return this.mul(this); - }; - BN.prototype.isqr = function isqr() { - return this.imul(this.clone()); - }; - BN.prototype.pow = function pow(num) { - var w = toBitArray(num); - if (w.length === 0) - return new BN(1); - var res = this; - for (var i = 0; i < w.length; i++, res = res.sqr()) { - if (w[i] !== 0) - break; - } - if (++i < w.length) { - for (var q = res.sqr(); i < w.length; i++, q = q.sqr()) { - if (w[i] === 0) - continue; - res = res.mul(q); - } - } - return res; - }; - BN.prototype.iushln = function iushln(bits) { - assert(typeof bits === "number" && bits >= 0); - var r = bits % 26; - var s = (bits - r) / 26; - var carryMask = 67108863 >>> 26 - r << 26 - r; - var i; - if (r !== 0) { - var carry = 0; - for (i = 0; i < this.length; i++) { - var newCarry = this.words[i] & carryMask; - var c = (this.words[i] | 0) - newCarry << r; - this.words[i] = c | carry; - carry = newCarry >>> 26 - r; - } - if (carry) { - this.words[i] = carry; - this.length++; - } - } - if (s !== 0) { - for (i = this.length - 1; i >= 0; i--) { - this.words[i + s] = this.words[i]; - } - for (i = 0; i < s; i++) { - this.words[i] = 0; - } - this.length += s; - } - return this._strip(); - }; - BN.prototype.ishln = function ishln(bits) { - assert(this.negative === 0); - return this.iushln(bits); - }; - BN.prototype.iushrn = function iushrn(bits, hint, extended) { - assert(typeof bits === "number" && bits >= 0); - var h; - if (hint) { - h = (hint - hint % 26) / 26; - } else { - h = 0; - } - var r = bits % 26; - var s = Math.min((bits - r) / 26, this.length); - var mask = 67108863 ^ 67108863 >>> r << r; - var maskedWords = extended; - h -= s; - h = Math.max(0, h); - if (maskedWords) { - for (var i = 0; i < s; i++) { - maskedWords.words[i] = this.words[i]; - } - maskedWords.length = s; - } - if (s === 0) { - } else if (this.length > s) { - this.length -= s; - for (i = 0; i < this.length; i++) { - this.words[i] = this.words[i + s]; - } - } else { - this.words[0] = 0; - this.length = 1; - } - var carry = 0; - for (i = this.length - 1; i >= 0 && (carry !== 0 || i >= h); i--) { - var word = this.words[i] | 0; - this.words[i] = carry << 26 - r | word >>> r; - carry = word & mask; - } - if (maskedWords && carry !== 0) { - maskedWords.words[maskedWords.length++] = carry; - } - if (this.length === 0) { - this.words[0] = 0; - this.length = 1; - } - return this._strip(); - }; - BN.prototype.ishrn = function ishrn(bits, hint, extended) { - assert(this.negative === 0); - return this.iushrn(bits, hint, extended); - }; - BN.prototype.shln = function shln(bits) { - return this.clone().ishln(bits); - }; - BN.prototype.ushln = function ushln(bits) { - return this.clone().iushln(bits); - }; - BN.prototype.shrn = function shrn(bits) { - return this.clone().ishrn(bits); - }; - BN.prototype.ushrn = function ushrn(bits) { - return this.clone().iushrn(bits); - }; - BN.prototype.testn = function testn(bit) { - assert(typeof bit === "number" && bit >= 0); - var r = bit % 26; - var s = (bit - r) / 26; - var q = 1 << r; - if (this.length <= s) - return false; - var w = this.words[s]; - return !!(w & q); - }; - BN.prototype.imaskn = function imaskn(bits) { - assert(typeof bits === "number" && bits >= 0); - var r = bits % 26; - var s = (bits - r) / 26; - assert(this.negative === 0, "imaskn works only with positive numbers"); - if (this.length <= s) { - return this; - } - if (r !== 0) { - s++; - } - this.length = Math.min(s, this.length); - if (r !== 0) { - var mask = 67108863 ^ 67108863 >>> r << r; - this.words[this.length - 1] &= mask; - } - return this._strip(); - }; - BN.prototype.maskn = function maskn(bits) { - return this.clone().imaskn(bits); - }; - BN.prototype.iaddn = function iaddn(num) { - assert(typeof num === "number"); - assert(num < 67108864); - if (num < 0) - return this.isubn(-num); - if (this.negative !== 0) { - if (this.length === 1 && (this.words[0] | 0) <= num) { - this.words[0] = num - (this.words[0] | 0); - this.negative = 0; - return this; - } - this.negative = 0; - this.isubn(num); - this.negative = 1; - return this; - } - return this._iaddn(num); - }; - BN.prototype._iaddn = function _iaddn(num) { - this.words[0] += num; - for (var i = 0; i < this.length && this.words[i] >= 67108864; i++) { - this.words[i] -= 67108864; - if (i === this.length - 1) { - this.words[i + 1] = 1; - } else { - this.words[i + 1]++; - } - } - this.length = Math.max(this.length, i + 1); - return this; - }; - BN.prototype.isubn = function isubn(num) { - assert(typeof num === "number"); - assert(num < 67108864); - if (num < 0) - return this.iaddn(-num); - if (this.negative !== 0) { - this.negative = 0; - this.iaddn(num); - this.negative = 1; - return this; - } - this.words[0] -= num; - if (this.length === 1 && this.words[0] < 0) { - this.words[0] = -this.words[0]; - this.negative = 1; - } else { - for (var i = 0; i < this.length && this.words[i] < 0; i++) { - this.words[i] += 67108864; - this.words[i + 1] -= 1; - } - } - return this._strip(); - }; - BN.prototype.addn = function addn(num) { - return this.clone().iaddn(num); - }; - BN.prototype.subn = function subn(num) { - return this.clone().isubn(num); - }; - BN.prototype.iabs = function iabs() { - this.negative = 0; - return this; - }; - BN.prototype.abs = function abs() { - return this.clone().iabs(); - }; - BN.prototype._ishlnsubmul = function _ishlnsubmul(num, mul, shift) { - var len = num.length + shift; - var i; - this._expand(len); - var w; - var carry = 0; - for (i = 0; i < num.length; i++) { - w = (this.words[i + shift] | 0) + carry; - var right = (num.words[i] | 0) * mul; - w -= right & 67108863; - carry = (w >> 26) - (right / 67108864 | 0); - this.words[i + shift] = w & 67108863; - } - for (; i < this.length - shift; i++) { - w = (this.words[i + shift] | 0) + carry; - carry = w >> 26; - this.words[i + shift] = w & 67108863; - } - if (carry === 0) - return this._strip(); - assert(carry === -1); - carry = 0; - for (i = 0; i < this.length; i++) { - w = -(this.words[i] | 0) + carry; - carry = w >> 26; - this.words[i] = w & 67108863; - } - this.negative = 1; - return this._strip(); - }; - BN.prototype._wordDiv = function _wordDiv(num, mode) { - var shift = this.length - num.length; - var a = this.clone(); - var b = num; - var bhi = b.words[b.length - 1] | 0; - var bhiBits = this._countBits(bhi); - shift = 26 - bhiBits; - if (shift !== 0) { - b = b.ushln(shift); - a.iushln(shift); - bhi = b.words[b.length - 1] | 0; - } - var m = a.length - b.length; - var q; - if (mode !== "mod") { - q = new BN(null); - q.length = m + 1; - q.words = new Array(q.length); - for (var i = 0; i < q.length; i++) { - q.words[i] = 0; - } - } - var diff = a.clone()._ishlnsubmul(b, 1, m); - if (diff.negative === 0) { - a = diff; - if (q) { - q.words[m] = 1; - } - } - for (var j = m - 1; j >= 0; j--) { - var qj = (a.words[b.length + j] | 0) * 67108864 + (a.words[b.length + j - 1] | 0); - qj = Math.min(qj / bhi | 0, 67108863); - a._ishlnsubmul(b, qj, j); - while (a.negative !== 0) { - qj--; - a.negative = 0; - a._ishlnsubmul(b, 1, j); - if (!a.isZero()) { - a.negative ^= 1; - } - } - if (q) { - q.words[j] = qj; - } - } - if (q) { - q._strip(); - } - a._strip(); - if (mode !== "div" && shift !== 0) { - a.iushrn(shift); - } - return { - div: q || null, - mod: a - }; - }; - BN.prototype.divmod = function divmod(num, mode, positive) { - assert(!num.isZero()); - if (this.isZero()) { - return { - div: new BN(0), - mod: new BN(0) - }; - } - var div, mod, res; - if (this.negative !== 0 && num.negative === 0) { - res = this.neg().divmod(num, mode); - if (mode !== "mod") { - div = res.div.neg(); - } - if (mode !== "div") { - mod = res.mod.neg(); - if (positive && mod.negative !== 0) { - mod.iadd(num); - } - } - return { - div, - mod - }; - } - if (this.negative === 0 && num.negative !== 0) { - res = this.divmod(num.neg(), mode); - if (mode !== "mod") { - div = res.div.neg(); - } - return { - div, - mod: res.mod - }; - } - if ((this.negative & num.negative) !== 0) { - res = this.neg().divmod(num.neg(), mode); - if (mode !== "div") { - mod = res.mod.neg(); - if (positive && mod.negative !== 0) { - mod.isub(num); - } - } - return { - div: res.div, - mod - }; - } - if (num.length > this.length || this.cmp(num) < 0) { - return { - div: new BN(0), - mod: this - }; - } - if (num.length === 1) { - if (mode === "div") { - return { - div: this.divn(num.words[0]), - mod: null - }; - } - if (mode === "mod") { - return { - div: null, - mod: new BN(this.modrn(num.words[0])) - }; - } - return { - div: this.divn(num.words[0]), - mod: new BN(this.modrn(num.words[0])) - }; - } - return this._wordDiv(num, mode); - }; - BN.prototype.div = function div(num) { - return this.divmod(num, "div", false).div; - }; - BN.prototype.mod = function mod(num) { - return this.divmod(num, "mod", false).mod; - }; - BN.prototype.umod = function umod(num) { - return this.divmod(num, "mod", true).mod; - }; - BN.prototype.divRound = function divRound(num) { - var dm = this.divmod(num); - if (dm.mod.isZero()) - return dm.div; - var mod = dm.div.negative !== 0 ? dm.mod.isub(num) : dm.mod; - var half = num.ushrn(1); - var r2 = num.andln(1); - var cmp = mod.cmp(half); - if (cmp < 0 || r2 === 1 && cmp === 0) - return dm.div; - return dm.div.negative !== 0 ? dm.div.isubn(1) : dm.div.iaddn(1); - }; - BN.prototype.modrn = function modrn(num) { - var isNegNum = num < 0; - if (isNegNum) - num = -num; - assert(num <= 67108863); - var p = (1 << 26) % num; - var acc = 0; - for (var i = this.length - 1; i >= 0; i--) { - acc = (p * acc + (this.words[i] | 0)) % num; - } - return isNegNum ? -acc : acc; - }; - BN.prototype.modn = function modn(num) { - return this.modrn(num); - }; - BN.prototype.idivn = function idivn(num) { - var isNegNum = num < 0; - if (isNegNum) - num = -num; - assert(num <= 67108863); - var carry = 0; - for (var i = this.length - 1; i >= 0; i--) { - var w = (this.words[i] | 0) + carry * 67108864; - this.words[i] = w / num | 0; - carry = w % num; - } - this._strip(); - return isNegNum ? this.ineg() : this; - }; - BN.prototype.divn = function divn(num) { - return this.clone().idivn(num); - }; - BN.prototype.egcd = function egcd(p) { - assert(p.negative === 0); - assert(!p.isZero()); - var x = this; - var y = p.clone(); - if (x.negative !== 0) { - x = x.umod(p); - } else { - x = x.clone(); - } - var A = new BN(1); - var B = new BN(0); - var C = new BN(0); - var D = new BN(1); - var g = 0; - while (x.isEven() && y.isEven()) { - x.iushrn(1); - y.iushrn(1); - ++g; - } - var yp = y.clone(); - var xp = x.clone(); - while (!x.isZero()) { - for (var i = 0, im = 1; (x.words[0] & im) === 0 && i < 26; ++i, im <<= 1) - ; - if (i > 0) { - x.iushrn(i); - while (i-- > 0) { - if (A.isOdd() || B.isOdd()) { - A.iadd(yp); - B.isub(xp); - } - A.iushrn(1); - B.iushrn(1); - } - } - for (var j = 0, jm = 1; (y.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1) - ; - if (j > 0) { - y.iushrn(j); - while (j-- > 0) { - if (C.isOdd() || D.isOdd()) { - C.iadd(yp); - D.isub(xp); - } - C.iushrn(1); - D.iushrn(1); - } - } - if (x.cmp(y) >= 0) { - x.isub(y); - A.isub(C); - B.isub(D); - } else { - y.isub(x); - C.isub(A); - D.isub(B); - } - } - return { - a: C, - b: D, - gcd: y.iushln(g) - }; - }; - BN.prototype._invmp = function _invmp(p) { - assert(p.negative === 0); - assert(!p.isZero()); - var a = this; - var b = p.clone(); - if (a.negative !== 0) { - a = a.umod(p); - } else { - a = a.clone(); - } - var x1 = new BN(1); - var x2 = new BN(0); - var delta = b.clone(); - while (a.cmpn(1) > 0 && b.cmpn(1) > 0) { - for (var i = 0, im = 1; (a.words[0] & im) === 0 && i < 26; ++i, im <<= 1) - ; - if (i > 0) { - a.iushrn(i); - while (i-- > 0) { - if (x1.isOdd()) { - x1.iadd(delta); - } - x1.iushrn(1); - } - } - for (var j = 0, jm = 1; (b.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1) - ; - if (j > 0) { - b.iushrn(j); - while (j-- > 0) { - if (x2.isOdd()) { - x2.iadd(delta); - } - x2.iushrn(1); - } - } - if (a.cmp(b) >= 0) { - a.isub(b); - x1.isub(x2); - } else { - b.isub(a); - x2.isub(x1); - } - } - var res; - if (a.cmpn(1) === 0) { - res = x1; - } else { - res = x2; - } - if (res.cmpn(0) < 0) { - res.iadd(p); - } - return res; - }; - BN.prototype.gcd = function gcd(num) { - if (this.isZero()) - return num.abs(); - if (num.isZero()) - return this.abs(); - var a = this.clone(); - var b = num.clone(); - a.negative = 0; - b.negative = 0; - for (var shift = 0; a.isEven() && b.isEven(); shift++) { - a.iushrn(1); - b.iushrn(1); - } - do { - while (a.isEven()) { - a.iushrn(1); - } - while (b.isEven()) { - b.iushrn(1); - } - var r = a.cmp(b); - if (r < 0) { - var t = a; - a = b; - b = t; - } else if (r === 0 || b.cmpn(1) === 0) { - break; - } - a.isub(b); - } while (true); - return b.iushln(shift); - }; - BN.prototype.invm = function invm(num) { - return this.egcd(num).a.umod(num); - }; - BN.prototype.isEven = function isEven() { - return (this.words[0] & 1) === 0; - }; - BN.prototype.isOdd = function isOdd() { - return (this.words[0] & 1) === 1; - }; - BN.prototype.andln = function andln(num) { - return this.words[0] & num; - }; - BN.prototype.bincn = function bincn(bit) { - assert(typeof bit === "number"); - var r = bit % 26; - var s = (bit - r) / 26; - var q = 1 << r; - if (this.length <= s) { - this._expand(s + 1); - this.words[s] |= q; - return this; - } - var carry = q; - for (var i = s; carry !== 0 && i < this.length; i++) { - var w = this.words[i] | 0; - w += carry; - carry = w >>> 26; - w &= 67108863; - this.words[i] = w; - } - if (carry !== 0) { - this.words[i] = carry; - this.length++; - } - return this; - }; - BN.prototype.isZero = function isZero() { - return this.length === 1 && this.words[0] === 0; - }; - BN.prototype.cmpn = function cmpn(num) { - var negative = num < 0; - if (this.negative !== 0 && !negative) - return -1; - if (this.negative === 0 && negative) - return 1; - this._strip(); - var res; - if (this.length > 1) { - res = 1; - } else { - if (negative) { - num = -num; - } - assert(num <= 67108863, "Number is too big"); - var w = this.words[0] | 0; - res = w === num ? 0 : w < num ? -1 : 1; - } - if (this.negative !== 0) - return -res | 0; - return res; - }; - BN.prototype.cmp = function cmp(num) { - if (this.negative !== 0 && num.negative === 0) - return -1; - if (this.negative === 0 && num.negative !== 0) - return 1; - var res = this.ucmp(num); - if (this.negative !== 0) - return -res | 0; - return res; - }; - BN.prototype.ucmp = function ucmp(num) { - if (this.length > num.length) - return 1; - if (this.length < num.length) - return -1; - var res = 0; - for (var i = this.length - 1; i >= 0; i--) { - var a = this.words[i] | 0; - var b = num.words[i] | 0; - if (a === b) - continue; - if (a < b) { - res = -1; - } else if (a > b) { - res = 1; - } - break; - } - return res; - }; - BN.prototype.gtn = function gtn(num) { - return this.cmpn(num) === 1; - }; - BN.prototype.gt = function gt(num) { - return this.cmp(num) === 1; - }; - BN.prototype.gten = function gten(num) { - return this.cmpn(num) >= 0; - }; - BN.prototype.gte = function gte(num) { - return this.cmp(num) >= 0; - }; - BN.prototype.ltn = function ltn(num) { - return this.cmpn(num) === -1; - }; - BN.prototype.lt = function lt(num) { - return this.cmp(num) === -1; - }; - BN.prototype.lten = function lten(num) { - return this.cmpn(num) <= 0; - }; - BN.prototype.lte = function lte(num) { - return this.cmp(num) <= 0; - }; - BN.prototype.eqn = function eqn(num) { - return this.cmpn(num) === 0; - }; - BN.prototype.eq = function eq(num) { - return this.cmp(num) === 0; - }; - BN.red = function red(num) { - return new Red(num); - }; - BN.prototype.toRed = function toRed(ctx) { - assert(!this.red, "Already a number in reduction context"); - assert(this.negative === 0, "red works only with positives"); - return ctx.convertTo(this)._forceRed(ctx); - }; - BN.prototype.fromRed = function fromRed() { - assert(this.red, "fromRed works only with numbers in reduction context"); - return this.red.convertFrom(this); - }; - BN.prototype._forceRed = function _forceRed(ctx) { - this.red = ctx; - return this; - }; - BN.prototype.forceRed = function forceRed(ctx) { - assert(!this.red, "Already a number in reduction context"); - return this._forceRed(ctx); - }; - BN.prototype.redAdd = function redAdd(num) { - assert(this.red, "redAdd works only with red numbers"); - return this.red.add(this, num); - }; - BN.prototype.redIAdd = function redIAdd(num) { - assert(this.red, "redIAdd works only with red numbers"); - return this.red.iadd(this, num); - }; - BN.prototype.redSub = function redSub(num) { - assert(this.red, "redSub works only with red numbers"); - return this.red.sub(this, num); - }; - BN.prototype.redISub = function redISub(num) { - assert(this.red, "redISub works only with red numbers"); - return this.red.isub(this, num); - }; - BN.prototype.redShl = function redShl(num) { - assert(this.red, "redShl works only with red numbers"); - return this.red.shl(this, num); - }; - BN.prototype.redMul = function redMul(num) { - assert(this.red, "redMul works only with red numbers"); - this.red._verify2(this, num); - return this.red.mul(this, num); - }; - BN.prototype.redIMul = function redIMul(num) { - assert(this.red, "redMul works only with red numbers"); - this.red._verify2(this, num); - return this.red.imul(this, num); - }; - BN.prototype.redSqr = function redSqr() { - assert(this.red, "redSqr works only with red numbers"); - this.red._verify1(this); - return this.red.sqr(this); - }; - BN.prototype.redISqr = function redISqr() { - assert(this.red, "redISqr works only with red numbers"); - this.red._verify1(this); - return this.red.isqr(this); - }; - BN.prototype.redSqrt = function redSqrt() { - assert(this.red, "redSqrt works only with red numbers"); - this.red._verify1(this); - return this.red.sqrt(this); - }; - BN.prototype.redInvm = function redInvm() { - assert(this.red, "redInvm works only with red numbers"); - this.red._verify1(this); - return this.red.invm(this); - }; - BN.prototype.redNeg = function redNeg() { - assert(this.red, "redNeg works only with red numbers"); - this.red._verify1(this); - return this.red.neg(this); - }; - BN.prototype.redPow = function redPow(num) { - assert(this.red && !num.red, "redPow(normalNum)"); - this.red._verify1(this); - return this.red.pow(this, num); - }; - var primes = { - k256: null, - p224: null, - p192: null, - p25519: null - }; - function MPrime(name, p) { - this.name = name; - this.p = new BN(p, 16); - this.n = this.p.bitLength(); - this.k = new BN(1).iushln(this.n).isub(this.p); - this.tmp = this._tmp(); - } - MPrime.prototype._tmp = function _tmp() { - var tmp = new BN(null); - tmp.words = new Array(Math.ceil(this.n / 13)); - return tmp; - }; - MPrime.prototype.ireduce = function ireduce(num) { - var r = num; - var rlen; - do { - this.split(r, this.tmp); - r = this.imulK(r); - r = r.iadd(this.tmp); - rlen = r.bitLength(); - } while (rlen > this.n); - var cmp = rlen < this.n ? -1 : r.ucmp(this.p); - if (cmp === 0) { - r.words[0] = 0; - r.length = 1; - } else if (cmp > 0) { - r.isub(this.p); - } else { - if (r.strip !== void 0) { - r.strip(); - } else { - r._strip(); - } - } - return r; - }; - MPrime.prototype.split = function split(input, out) { - input.iushrn(this.n, 0, out); - }; - MPrime.prototype.imulK = function imulK(num) { - return num.imul(this.k); - }; - function K256() { - MPrime.call( - this, - "k256", - "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f" - ); - } - inherits2(K256, MPrime); - K256.prototype.split = function split(input, output) { - var mask = 4194303; - var outLen = Math.min(input.length, 9); - for (var i = 0; i < outLen; i++) { - output.words[i] = input.words[i]; - } - output.length = outLen; - if (input.length <= 9) { - input.words[0] = 0; - input.length = 1; - return; - } - var prev = input.words[9]; - output.words[output.length++] = prev & mask; - for (i = 10; i < input.length; i++) { - var next = input.words[i] | 0; - input.words[i - 10] = (next & mask) << 4 | prev >>> 22; - prev = next; - } - prev >>>= 22; - input.words[i - 10] = prev; - if (prev === 0 && input.length > 10) { - input.length -= 10; - } else { - input.length -= 9; - } - }; - K256.prototype.imulK = function imulK(num) { - num.words[num.length] = 0; - num.words[num.length + 1] = 0; - num.length += 2; - var lo = 0; - for (var i = 0; i < num.length; i++) { - var w = num.words[i] | 0; - lo += w * 977; - num.words[i] = lo & 67108863; - lo = w * 64 + (lo / 67108864 | 0); - } - if (num.words[num.length - 1] === 0) { - num.length--; - if (num.words[num.length - 1] === 0) { - num.length--; - } - } - return num; - }; - function P224() { - MPrime.call( - this, - "p224", - "ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001" - ); - } - inherits2(P224, MPrime); - function P192() { - MPrime.call( - this, - "p192", - "ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff" - ); - } - inherits2(P192, MPrime); - function P25519() { - MPrime.call( - this, - "25519", - "7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed" - ); - } - inherits2(P25519, MPrime); - P25519.prototype.imulK = function imulK(num) { - var carry = 0; - for (var i = 0; i < num.length; i++) { - var hi = (num.words[i] | 0) * 19 + carry; - var lo = hi & 67108863; - hi >>>= 26; - num.words[i] = lo; - carry = hi; - } - if (carry !== 0) { - num.words[num.length++] = carry; - } - return num; - }; - BN._prime = function prime(name) { - if (primes[name]) - return primes[name]; - var prime2; - if (name === "k256") { - prime2 = new K256(); - } else if (name === "p224") { - prime2 = new P224(); - } else if (name === "p192") { - prime2 = new P192(); - } else if (name === "p25519") { - prime2 = new P25519(); - } else { - throw new Error("Unknown prime " + name); - } - primes[name] = prime2; - return prime2; - }; - function Red(m) { - if (typeof m === "string") { - var prime = BN._prime(m); - this.m = prime.p; - this.prime = prime; - } else { - assert(m.gtn(1), "modulus must be greater than 1"); - this.m = m; - this.prime = null; - } - } - Red.prototype._verify1 = function _verify1(a) { - assert(a.negative === 0, "red works only with positives"); - assert(a.red, "red works only with red numbers"); - }; - Red.prototype._verify2 = function _verify2(a, b) { - assert((a.negative | b.negative) === 0, "red works only with positives"); - assert( - a.red && a.red === b.red, - "red works only with red numbers" - ); - }; - Red.prototype.imod = function imod(a) { - if (this.prime) - return this.prime.ireduce(a)._forceRed(this); - move(a, a.umod(this.m)._forceRed(this)); - return a; - }; - Red.prototype.neg = function neg(a) { - if (a.isZero()) { - return a.clone(); - } - return this.m.sub(a)._forceRed(this); - }; - Red.prototype.add = function add(a, b) { - this._verify2(a, b); - var res = a.add(b); - if (res.cmp(this.m) >= 0) { - res.isub(this.m); - } - return res._forceRed(this); - }; - Red.prototype.iadd = function iadd(a, b) { - this._verify2(a, b); - var res = a.iadd(b); - if (res.cmp(this.m) >= 0) { - res.isub(this.m); - } - return res; - }; - Red.prototype.sub = function sub(a, b) { - this._verify2(a, b); - var res = a.sub(b); - if (res.cmpn(0) < 0) { - res.iadd(this.m); - } - return res._forceRed(this); - }; - Red.prototype.isub = function isub(a, b) { - this._verify2(a, b); - var res = a.isub(b); - if (res.cmpn(0) < 0) { - res.iadd(this.m); - } - return res; - }; - Red.prototype.shl = function shl(a, num) { - this._verify1(a); - return this.imod(a.ushln(num)); - }; - Red.prototype.imul = function imul(a, b) { - this._verify2(a, b); - return this.imod(a.imul(b)); - }; - Red.prototype.mul = function mul(a, b) { - this._verify2(a, b); - return this.imod(a.mul(b)); - }; - Red.prototype.isqr = function isqr(a) { - return this.imul(a, a.clone()); - }; - Red.prototype.sqr = function sqr(a) { - return this.mul(a, a); - }; - Red.prototype.sqrt = function sqrt(a) { - if (a.isZero()) - return a.clone(); - var mod3 = this.m.andln(3); - assert(mod3 % 2 === 1); - if (mod3 === 3) { - var pow = this.m.add(new BN(1)).iushrn(2); - return this.pow(a, pow); - } - var q = this.m.subn(1); - var s = 0; - while (!q.isZero() && q.andln(1) === 0) { - s++; - q.iushrn(1); - } - assert(!q.isZero()); - var one = new BN(1).toRed(this); - var nOne = one.redNeg(); - var lpow = this.m.subn(1).iushrn(1); - var z = this.m.bitLength(); - z = new BN(2 * z * z).toRed(this); - while (this.pow(z, lpow).cmp(nOne) !== 0) { - z.redIAdd(nOne); - } - var c = this.pow(z, q); - var r = this.pow(a, q.addn(1).iushrn(1)); - var t = this.pow(a, q); - var m = s; - while (t.cmp(one) !== 0) { - var tmp = t; - for (var i = 0; tmp.cmp(one) !== 0; i++) { - tmp = tmp.redSqr(); - } - assert(i < m); - var b = this.pow(c, new BN(1).iushln(m - i - 1)); - r = r.redMul(b); - c = b.redSqr(); - t = t.redMul(c); - m = i; - } - return r; - }; - Red.prototype.invm = function invm(a) { - var inv = a._invmp(this.m); - if (inv.negative !== 0) { - inv.negative = 0; - return this.imod(inv).redNeg(); - } else { - return this.imod(inv); - } - }; - Red.prototype.pow = function pow(a, num) { - if (num.isZero()) - return new BN(1).toRed(this); - if (num.cmpn(1) === 0) - return a.clone(); - var windowSize = 4; - var wnd = new Array(1 << windowSize); - wnd[0] = new BN(1).toRed(this); - wnd[1] = a; - for (var i = 2; i < wnd.length; i++) { - wnd[i] = this.mul(wnd[i - 1], a); - } - var res = wnd[0]; - var current = 0; - var currentLen = 0; - var start = num.bitLength() % 26; - if (start === 0) { - start = 26; - } - for (i = num.length - 1; i >= 0; i--) { - var word = num.words[i]; - for (var j = start - 1; j >= 0; j--) { - var bit = word >> j & 1; - if (res !== wnd[0]) { - res = this.sqr(res); - } - if (bit === 0 && current === 0) { - currentLen = 0; - continue; - } - current <<= 1; - current |= bit; - currentLen++; - if (currentLen !== windowSize && (i !== 0 || j !== 0)) - continue; - res = this.mul(res, wnd[current]); - currentLen = 0; - current = 0; - } - start = 26; - } - return res; - }; - Red.prototype.convertTo = function convertTo(num) { - var r = num.umod(this.m); - return r === num ? r.clone() : r; - }; - Red.prototype.convertFrom = function convertFrom(num) { - var res = num.clone(); - res.red = null; - return res; - }; - BN.mont = function mont(num) { - return new Mont(num); - }; - function Mont(m) { - Red.call(this, m); - this.shift = this.m.bitLength(); - if (this.shift % 26 !== 0) { - this.shift += 26 - this.shift % 26; - } - this.r = new BN(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); - } - inherits2(Mont, Red); - Mont.prototype.convertTo = function convertTo(num) { - return this.imod(num.ushln(this.shift)); - }; - Mont.prototype.convertFrom = function convertFrom(num) { - var r = this.imod(num.mul(this.rinv)); - r.red = null; - return r; - }; - Mont.prototype.imul = function imul(a, b) { - if (a.isZero() || b.isZero()) { - a.words[0] = 0; - a.length = 1; - return a; - } - var t = a.imul(b); - var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m); - var u = t.isub(c).iushrn(this.shift); - var res = u; - if (u.cmp(this.m) >= 0) { - res = u.isub(this.m); - } else if (u.cmpn(0) < 0) { - res = u.iadd(this.m); - } - return res._forceRed(this); - }; - Mont.prototype.mul = function mul(a, b) { - if (a.isZero() || b.isZero()) - return new BN(0)._forceRed(this); - var t = a.mul(b); - var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m); - var u = t.isub(c).iushrn(this.shift); - var res = u; - if (u.cmp(this.m) >= 0) { - res = u.isub(this.m); - } else if (u.cmpn(0) < 0) { - res = u.iadd(this.m); - } - return res._forceRed(this); - }; - Mont.prototype.invm = function invm(a) { - var res = this.imod(a._invmp(this.m).mul(this.r2)); - return res._forceRed(this); - }; - })(typeof module2 === "undefined" || module2, exports2); - } -}); - -// node_modules/@ethersproject/logger/lib/_version.js -var require_version = __commonJS({ - "node_modules/@ethersproject/logger/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "logger/5.7.0"; - } -}); - -// node_modules/@ethersproject/logger/lib/index.js -var require_lib = __commonJS({ - "node_modules/@ethersproject/logger/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.Logger = exports2.ErrorCode = exports2.LogLevel = void 0; - var _permanentCensorErrors = false; - var _censorErrors = false; - var LogLevels = { debug: 1, "default": 2, info: 2, warning: 3, error: 4, off: 5 }; - var _logLevel = LogLevels["default"]; - var _version_1 = require_version(); - var _globalLogger = null; - function _checkNormalize() { - try { - var missing_1 = []; - ["NFD", "NFC", "NFKD", "NFKC"].forEach(function(form) { - try { - if ("test".normalize(form) !== "test") { - throw new Error("bad normalize"); - } - ; - } catch (error) { - missing_1.push(form); - } - }); - if (missing_1.length) { - throw new Error("missing " + missing_1.join(", ")); - } - if (String.fromCharCode(233).normalize("NFD") !== String.fromCharCode(101, 769)) { - throw new Error("broken implementation"); - } - } catch (error) { - return error.message; - } - return null; - } - var _normalizeError = _checkNormalize(); - var LogLevel; - (function(LogLevel2) { - LogLevel2["DEBUG"] = "DEBUG"; - LogLevel2["INFO"] = "INFO"; - LogLevel2["WARNING"] = "WARNING"; - LogLevel2["ERROR"] = "ERROR"; - LogLevel2["OFF"] = "OFF"; - })(LogLevel = exports2.LogLevel || (exports2.LogLevel = {})); - var ErrorCode; - (function(ErrorCode2) { - ErrorCode2["UNKNOWN_ERROR"] = "UNKNOWN_ERROR"; - ErrorCode2["NOT_IMPLEMENTED"] = "NOT_IMPLEMENTED"; - ErrorCode2["UNSUPPORTED_OPERATION"] = "UNSUPPORTED_OPERATION"; - ErrorCode2["NETWORK_ERROR"] = "NETWORK_ERROR"; - ErrorCode2["SERVER_ERROR"] = "SERVER_ERROR"; - ErrorCode2["TIMEOUT"] = "TIMEOUT"; - ErrorCode2["BUFFER_OVERRUN"] = "BUFFER_OVERRUN"; - ErrorCode2["NUMERIC_FAULT"] = "NUMERIC_FAULT"; - ErrorCode2["MISSING_NEW"] = "MISSING_NEW"; - ErrorCode2["INVALID_ARGUMENT"] = "INVALID_ARGUMENT"; - ErrorCode2["MISSING_ARGUMENT"] = "MISSING_ARGUMENT"; - ErrorCode2["UNEXPECTED_ARGUMENT"] = "UNEXPECTED_ARGUMENT"; - ErrorCode2["CALL_EXCEPTION"] = "CALL_EXCEPTION"; - ErrorCode2["INSUFFICIENT_FUNDS"] = "INSUFFICIENT_FUNDS"; - ErrorCode2["NONCE_EXPIRED"] = "NONCE_EXPIRED"; - ErrorCode2["REPLACEMENT_UNDERPRICED"] = "REPLACEMENT_UNDERPRICED"; - ErrorCode2["UNPREDICTABLE_GAS_LIMIT"] = "UNPREDICTABLE_GAS_LIMIT"; - ErrorCode2["TRANSACTION_REPLACED"] = "TRANSACTION_REPLACED"; - ErrorCode2["ACTION_REJECTED"] = "ACTION_REJECTED"; - })(ErrorCode = exports2.ErrorCode || (exports2.ErrorCode = {})); - var HEX = "0123456789abcdef"; - var Logger = ( - /** @class */ - function() { - function Logger2(version) { - Object.defineProperty(this, "version", { - enumerable: true, - value: version, - writable: false - }); - } - Logger2.prototype._log = function(logLevel, args) { - var level = logLevel.toLowerCase(); - if (LogLevels[level] == null) { - this.throwArgumentError("invalid log level name", "logLevel", logLevel); - } - if (_logLevel > LogLevels[level]) { - return; - } - console.log.apply(console, args); - }; - Logger2.prototype.debug = function() { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i] = arguments[_i]; - } - this._log(Logger2.levels.DEBUG, args); - }; - Logger2.prototype.info = function() { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i] = arguments[_i]; - } - this._log(Logger2.levels.INFO, args); - }; - Logger2.prototype.warn = function() { - var args = []; - for (var _i = 0; _i < arguments.length; _i++) { - args[_i] = arguments[_i]; - } - this._log(Logger2.levels.WARNING, args); - }; - Logger2.prototype.makeError = function(message, code, params) { - if (_censorErrors) { - return this.makeError("censored error", code, {}); - } - if (!code) { - code = Logger2.errors.UNKNOWN_ERROR; - } - if (!params) { - params = {}; - } - var messageDetails = []; - Object.keys(params).forEach(function(key) { - var value = params[key]; - try { - if (value instanceof Uint8Array) { - var hex = ""; - for (var i = 0; i < value.length; i++) { - hex += HEX[value[i] >> 4]; - hex += HEX[value[i] & 15]; - } - messageDetails.push(key + "=Uint8Array(0x" + hex + ")"); - } else { - messageDetails.push(key + "=" + JSON.stringify(value)); - } - } catch (error2) { - messageDetails.push(key + "=" + JSON.stringify(params[key].toString())); - } - }); - messageDetails.push("code=" + code); - messageDetails.push("version=" + this.version); - var reason = message; - var url2 = ""; - switch (code) { - case ErrorCode.NUMERIC_FAULT: { - url2 = "NUMERIC_FAULT"; - var fault = message; - switch (fault) { - case "overflow": - case "underflow": - case "division-by-zero": - url2 += "-" + fault; - break; - case "negative-power": - case "negative-width": - url2 += "-unsupported"; - break; - case "unbound-bitwise-result": - url2 += "-unbound-result"; - break; - } - break; - } - case ErrorCode.CALL_EXCEPTION: - case ErrorCode.INSUFFICIENT_FUNDS: - case ErrorCode.MISSING_NEW: - case ErrorCode.NONCE_EXPIRED: - case ErrorCode.REPLACEMENT_UNDERPRICED: - case ErrorCode.TRANSACTION_REPLACED: - case ErrorCode.UNPREDICTABLE_GAS_LIMIT: - url2 = code; - break; - } - if (url2) { - message += " [ See: https://links.ethers.org/v5-errors-" + url2 + " ]"; - } - if (messageDetails.length) { - message += " (" + messageDetails.join(", ") + ")"; - } - var error = new Error(message); - error.reason = reason; - error.code = code; - Object.keys(params).forEach(function(key) { - error[key] = params[key]; - }); - return error; - }; - Logger2.prototype.throwError = function(message, code, params) { - throw this.makeError(message, code, params); - }; - Logger2.prototype.throwArgumentError = function(message, name, value) { - return this.throwError(message, Logger2.errors.INVALID_ARGUMENT, { - argument: name, - value - }); - }; - Logger2.prototype.assert = function(condition, message, code, params) { - if (!!condition) { - return; - } - this.throwError(message, code, params); - }; - Logger2.prototype.assertArgument = function(condition, message, name, value) { - if (!!condition) { - return; - } - this.throwArgumentError(message, name, value); - }; - Logger2.prototype.checkNormalize = function(message) { - if (message == null) { - message = "platform missing String.prototype.normalize"; - } - if (_normalizeError) { - this.throwError("platform missing String.prototype.normalize", Logger2.errors.UNSUPPORTED_OPERATION, { - operation: "String.prototype.normalize", - form: _normalizeError - }); - } - }; - Logger2.prototype.checkSafeUint53 = function(value, message) { - if (typeof value !== "number") { - return; - } - if (message == null) { - message = "value not safe"; - } - if (value < 0 || value >= 9007199254740991) { - this.throwError(message, Logger2.errors.NUMERIC_FAULT, { - operation: "checkSafeInteger", - fault: "out-of-safe-range", - value - }); - } - if (value % 1) { - this.throwError(message, Logger2.errors.NUMERIC_FAULT, { - operation: "checkSafeInteger", - fault: "non-integer", - value - }); - } - }; - Logger2.prototype.checkArgumentCount = function(count, expectedCount, message) { - if (message) { - message = ": " + message; - } else { - message = ""; - } - if (count < expectedCount) { - this.throwError("missing argument" + message, Logger2.errors.MISSING_ARGUMENT, { - count, - expectedCount - }); - } - if (count > expectedCount) { - this.throwError("too many arguments" + message, Logger2.errors.UNEXPECTED_ARGUMENT, { - count, - expectedCount - }); - } - }; - Logger2.prototype.checkNew = function(target, kind) { - if (target === Object || target == null) { - this.throwError("missing new", Logger2.errors.MISSING_NEW, { name: kind.name }); - } - }; - Logger2.prototype.checkAbstract = function(target, kind) { - if (target === kind) { - this.throwError("cannot instantiate abstract class " + JSON.stringify(kind.name) + " directly; use a sub-class", Logger2.errors.UNSUPPORTED_OPERATION, { name: target.name, operation: "new" }); - } else if (target === Object || target == null) { - this.throwError("missing new", Logger2.errors.MISSING_NEW, { name: kind.name }); - } - }; - Logger2.globalLogger = function() { - if (!_globalLogger) { - _globalLogger = new Logger2(_version_1.version); - } - return _globalLogger; - }; - Logger2.setCensorship = function(censorship, permanent) { - if (!censorship && permanent) { - this.globalLogger().throwError("cannot permanently disable censorship", Logger2.errors.UNSUPPORTED_OPERATION, { - operation: "setCensorship" - }); - } - if (_permanentCensorErrors) { - if (!censorship) { - return; - } - this.globalLogger().throwError("error censorship permanent", Logger2.errors.UNSUPPORTED_OPERATION, { - operation: "setCensorship" - }); - } - _censorErrors = !!censorship; - _permanentCensorErrors = !!permanent; - }; - Logger2.setLogLevel = function(logLevel) { - var level = LogLevels[logLevel.toLowerCase()]; - if (level == null) { - Logger2.globalLogger().warn("invalid log level - " + logLevel); - return; - } - _logLevel = level; - }; - Logger2.from = function(version) { - return new Logger2(version); - }; - Logger2.errors = ErrorCode; - Logger2.levels = LogLevel; - return Logger2; - }() - ); - exports2.Logger = Logger; - } -}); - -// node_modules/@ethersproject/bytes/lib/_version.js -var require_version2 = __commonJS({ - "node_modules/@ethersproject/bytes/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "bytes/5.7.0"; - } -}); - -// node_modules/@ethersproject/bytes/lib/index.js -var require_lib2 = __commonJS({ - "node_modules/@ethersproject/bytes/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.joinSignature = exports2.splitSignature = exports2.hexZeroPad = exports2.hexStripZeros = exports2.hexValue = exports2.hexConcat = exports2.hexDataSlice = exports2.hexDataLength = exports2.hexlify = exports2.isHexString = exports2.zeroPad = exports2.stripZeros = exports2.concat = exports2.arrayify = exports2.isBytes = exports2.isBytesLike = void 0; - var logger_1 = require_lib(); - var _version_1 = require_version2(); - var logger = new logger_1.Logger(_version_1.version); - function isHexable(value) { - return !!value.toHexString; - } - function addSlice(array) { - if (array.slice) { - return array; - } - array.slice = function() { - var args = Array.prototype.slice.call(arguments); - return addSlice(new Uint8Array(Array.prototype.slice.apply(array, args))); - }; - return array; - } - function isBytesLike(value) { - return isHexString(value) && !(value.length % 2) || isBytes(value); - } - exports2.isBytesLike = isBytesLike; - function isInteger(value) { - return typeof value === "number" && value == value && value % 1 === 0; - } - function isBytes(value) { - if (value == null) { - return false; - } - if (value.constructor === Uint8Array) { - return true; - } - if (typeof value === "string") { - return false; - } - if (!isInteger(value.length) || value.length < 0) { - return false; - } - for (var i = 0; i < value.length; i++) { - var v = value[i]; - if (!isInteger(v) || v < 0 || v >= 256) { - return false; - } - } - return true; - } - exports2.isBytes = isBytes; - function arrayify(value, options) { - if (!options) { - options = {}; - } - if (typeof value === "number") { - logger.checkSafeUint53(value, "invalid arrayify value"); - var result = []; - while (value) { - result.unshift(value & 255); - value = parseInt(String(value / 256)); - } - if (result.length === 0) { - result.push(0); - } - return addSlice(new Uint8Array(result)); - } - if (options.allowMissingPrefix && typeof value === "string" && value.substring(0, 2) !== "0x") { - value = "0x" + value; - } - if (isHexable(value)) { - value = value.toHexString(); - } - if (isHexString(value)) { - var hex = value.substring(2); - if (hex.length % 2) { - if (options.hexPad === "left") { - hex = "0" + hex; - } else if (options.hexPad === "right") { - hex += "0"; - } else { - logger.throwArgumentError("hex data is odd-length", "value", value); - } - } - var result = []; - for (var i = 0; i < hex.length; i += 2) { - result.push(parseInt(hex.substring(i, i + 2), 16)); - } - return addSlice(new Uint8Array(result)); - } - if (isBytes(value)) { - return addSlice(new Uint8Array(value)); - } - return logger.throwArgumentError("invalid arrayify value", "value", value); - } - exports2.arrayify = arrayify; - function concat(items) { - var objects = items.map(function(item) { - return arrayify(item); - }); - var length = objects.reduce(function(accum, item) { - return accum + item.length; - }, 0); - var result = new Uint8Array(length); - objects.reduce(function(offset, object) { - result.set(object, offset); - return offset + object.length; - }, 0); - return addSlice(result); - } - exports2.concat = concat; - function stripZeros(value) { - var result = arrayify(value); - if (result.length === 0) { - return result; - } - var start = 0; - while (start < result.length && result[start] === 0) { - start++; - } - if (start) { - result = result.slice(start); - } - return result; - } - exports2.stripZeros = stripZeros; - function zeroPad(value, length) { - value = arrayify(value); - if (value.length > length) { - logger.throwArgumentError("value out of range", "value", arguments[0]); - } - var result = new Uint8Array(length); - result.set(value, length - value.length); - return addSlice(result); - } - exports2.zeroPad = zeroPad; - function isHexString(value, length) { - if (typeof value !== "string" || !value.match(/^0x[0-9A-Fa-f]*$/)) { - return false; - } - if (length && value.length !== 2 + 2 * length) { - return false; - } - return true; - } - exports2.isHexString = isHexString; - var HexCharacters = "0123456789abcdef"; - function hexlify(value, options) { - if (!options) { - options = {}; - } - if (typeof value === "number") { - logger.checkSafeUint53(value, "invalid hexlify value"); - var hex = ""; - while (value) { - hex = HexCharacters[value & 15] + hex; - value = Math.floor(value / 16); - } - if (hex.length) { - if (hex.length % 2) { - hex = "0" + hex; - } - return "0x" + hex; - } - return "0x00"; - } - if (typeof value === "bigint") { - value = value.toString(16); - if (value.length % 2) { - return "0x0" + value; - } - return "0x" + value; - } - if (options.allowMissingPrefix && typeof value === "string" && value.substring(0, 2) !== "0x") { - value = "0x" + value; - } - if (isHexable(value)) { - return value.toHexString(); - } - if (isHexString(value)) { - if (value.length % 2) { - if (options.hexPad === "left") { - value = "0x0" + value.substring(2); - } else if (options.hexPad === "right") { - value += "0"; - } else { - logger.throwArgumentError("hex data is odd-length", "value", value); - } - } - return value.toLowerCase(); - } - if (isBytes(value)) { - var result = "0x"; - for (var i = 0; i < value.length; i++) { - var v = value[i]; - result += HexCharacters[(v & 240) >> 4] + HexCharacters[v & 15]; - } - return result; - } - return logger.throwArgumentError("invalid hexlify value", "value", value); - } - exports2.hexlify = hexlify; - function hexDataLength(data) { - if (typeof data !== "string") { - data = hexlify(data); - } else if (!isHexString(data) || data.length % 2) { - return null; - } - return (data.length - 2) / 2; - } - exports2.hexDataLength = hexDataLength; - function hexDataSlice(data, offset, endOffset) { - if (typeof data !== "string") { - data = hexlify(data); - } else if (!isHexString(data) || data.length % 2) { - logger.throwArgumentError("invalid hexData", "value", data); - } - offset = 2 + 2 * offset; - if (endOffset != null) { - return "0x" + data.substring(offset, 2 + 2 * endOffset); - } - return "0x" + data.substring(offset); - } - exports2.hexDataSlice = hexDataSlice; - function hexConcat(items) { - var result = "0x"; - items.forEach(function(item) { - result += hexlify(item).substring(2); - }); - return result; - } - exports2.hexConcat = hexConcat; - function hexValue(value) { - var trimmed = hexStripZeros(hexlify(value, { hexPad: "left" })); - if (trimmed === "0x") { - return "0x0"; - } - return trimmed; - } - exports2.hexValue = hexValue; - function hexStripZeros(value) { - if (typeof value !== "string") { - value = hexlify(value); - } - if (!isHexString(value)) { - logger.throwArgumentError("invalid hex string", "value", value); - } - value = value.substring(2); - var offset = 0; - while (offset < value.length && value[offset] === "0") { - offset++; - } - return "0x" + value.substring(offset); - } - exports2.hexStripZeros = hexStripZeros; - function hexZeroPad(value, length) { - if (typeof value !== "string") { - value = hexlify(value); - } else if (!isHexString(value)) { - logger.throwArgumentError("invalid hex string", "value", value); - } - if (value.length > 2 * length + 2) { - logger.throwArgumentError("value out of range", "value", arguments[1]); - } - while (value.length < 2 * length + 2) { - value = "0x0" + value.substring(2); - } - return value; - } - exports2.hexZeroPad = hexZeroPad; - function splitSignature(signature) { - var result = { - r: "0x", - s: "0x", - _vs: "0x", - recoveryParam: 0, - v: 0, - yParityAndS: "0x", - compact: "0x" - }; - if (isBytesLike(signature)) { - var bytes = arrayify(signature); - if (bytes.length === 64) { - result.v = 27 + (bytes[32] >> 7); - bytes[32] &= 127; - result.r = hexlify(bytes.slice(0, 32)); - result.s = hexlify(bytes.slice(32, 64)); - } else if (bytes.length === 65) { - result.r = hexlify(bytes.slice(0, 32)); - result.s = hexlify(bytes.slice(32, 64)); - result.v = bytes[64]; - } else { - logger.throwArgumentError("invalid signature string", "signature", signature); - } - if (result.v < 27) { - if (result.v === 0 || result.v === 1) { - result.v += 27; - } else { - logger.throwArgumentError("signature invalid v byte", "signature", signature); - } - } - result.recoveryParam = 1 - result.v % 2; - if (result.recoveryParam) { - bytes[32] |= 128; - } - result._vs = hexlify(bytes.slice(32, 64)); - } else { - result.r = signature.r; - result.s = signature.s; - result.v = signature.v; - result.recoveryParam = signature.recoveryParam; - result._vs = signature._vs; - if (result._vs != null) { - var vs_1 = zeroPad(arrayify(result._vs), 32); - result._vs = hexlify(vs_1); - var recoveryParam = vs_1[0] >= 128 ? 1 : 0; - if (result.recoveryParam == null) { - result.recoveryParam = recoveryParam; - } else if (result.recoveryParam !== recoveryParam) { - logger.throwArgumentError("signature recoveryParam mismatch _vs", "signature", signature); - } - vs_1[0] &= 127; - var s = hexlify(vs_1); - if (result.s == null) { - result.s = s; - } else if (result.s !== s) { - logger.throwArgumentError("signature v mismatch _vs", "signature", signature); - } - } - if (result.recoveryParam == null) { - if (result.v == null) { - logger.throwArgumentError("signature missing v and recoveryParam", "signature", signature); - } else if (result.v === 0 || result.v === 1) { - result.recoveryParam = result.v; - } else { - result.recoveryParam = 1 - result.v % 2; - } - } else { - if (result.v == null) { - result.v = 27 + result.recoveryParam; - } else { - var recId = result.v === 0 || result.v === 1 ? result.v : 1 - result.v % 2; - if (result.recoveryParam !== recId) { - logger.throwArgumentError("signature recoveryParam mismatch v", "signature", signature); - } - } - } - if (result.r == null || !isHexString(result.r)) { - logger.throwArgumentError("signature missing or invalid r", "signature", signature); - } else { - result.r = hexZeroPad(result.r, 32); - } - if (result.s == null || !isHexString(result.s)) { - logger.throwArgumentError("signature missing or invalid s", "signature", signature); - } else { - result.s = hexZeroPad(result.s, 32); - } - var vs = arrayify(result.s); - if (vs[0] >= 128) { - logger.throwArgumentError("signature s out of range", "signature", signature); - } - if (result.recoveryParam) { - vs[0] |= 128; - } - var _vs = hexlify(vs); - if (result._vs) { - if (!isHexString(result._vs)) { - logger.throwArgumentError("signature invalid _vs", "signature", signature); - } - result._vs = hexZeroPad(result._vs, 32); - } - if (result._vs == null) { - result._vs = _vs; - } else if (result._vs !== _vs) { - logger.throwArgumentError("signature _vs mismatch v and s", "signature", signature); - } - } - result.yParityAndS = result._vs; - result.compact = result.r + result.yParityAndS.substring(2); - return result; - } - exports2.splitSignature = splitSignature; - function joinSignature(signature) { - signature = splitSignature(signature); - return hexlify(concat([ - signature.r, - signature.s, - signature.recoveryParam ? "0x1c" : "0x1b" - ])); - } - exports2.joinSignature = joinSignature; - } -}); - -// node_modules/@ethersproject/bignumber/lib/_version.js -var require_version3 = __commonJS({ - "node_modules/@ethersproject/bignumber/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "bignumber/5.7.0"; - } -}); - -// node_modules/@ethersproject/bignumber/lib/bignumber.js -var require_bignumber = __commonJS({ - "node_modules/@ethersproject/bignumber/lib/bignumber.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2._base16To36 = exports2._base36To16 = exports2.BigNumber = exports2.isBigNumberish = void 0; - var bn_js_1 = __importDefault(require_bn()); - var BN = bn_js_1.default.BN; - var bytes_1 = require_lib2(); - var logger_1 = require_lib(); - var _version_1 = require_version3(); - var logger = new logger_1.Logger(_version_1.version); - var _constructorGuard = {}; - var MAX_SAFE = 9007199254740991; - function isBigNumberish(value) { - return value != null && (BigNumber.isBigNumber(value) || typeof value === "number" && value % 1 === 0 || typeof value === "string" && !!value.match(/^-?[0-9]+$/) || (0, bytes_1.isHexString)(value) || typeof value === "bigint" || (0, bytes_1.isBytes)(value)); - } - exports2.isBigNumberish = isBigNumberish; - var _warnedToStringRadix = false; - var BigNumber = ( - /** @class */ - function() { - function BigNumber2(constructorGuard, hex) { - if (constructorGuard !== _constructorGuard) { - logger.throwError("cannot call constructor directly; use BigNumber.from", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "new (BigNumber)" - }); - } - this._hex = hex; - this._isBigNumber = true; - Object.freeze(this); - } - BigNumber2.prototype.fromTwos = function(value) { - return toBigNumber(toBN(this).fromTwos(value)); - }; - BigNumber2.prototype.toTwos = function(value) { - return toBigNumber(toBN(this).toTwos(value)); - }; - BigNumber2.prototype.abs = function() { - if (this._hex[0] === "-") { - return BigNumber2.from(this._hex.substring(1)); - } - return this; - }; - BigNumber2.prototype.add = function(other) { - return toBigNumber(toBN(this).add(toBN(other))); - }; - BigNumber2.prototype.sub = function(other) { - return toBigNumber(toBN(this).sub(toBN(other))); - }; - BigNumber2.prototype.div = function(other) { - var o = BigNumber2.from(other); - if (o.isZero()) { - throwFault("division-by-zero", "div"); - } - return toBigNumber(toBN(this).div(toBN(other))); - }; - BigNumber2.prototype.mul = function(other) { - return toBigNumber(toBN(this).mul(toBN(other))); - }; - BigNumber2.prototype.mod = function(other) { - var value = toBN(other); - if (value.isNeg()) { - throwFault("division-by-zero", "mod"); - } - return toBigNumber(toBN(this).umod(value)); - }; - BigNumber2.prototype.pow = function(other) { - var value = toBN(other); - if (value.isNeg()) { - throwFault("negative-power", "pow"); - } - return toBigNumber(toBN(this).pow(value)); - }; - BigNumber2.prototype.and = function(other) { - var value = toBN(other); - if (this.isNegative() || value.isNeg()) { - throwFault("unbound-bitwise-result", "and"); - } - return toBigNumber(toBN(this).and(value)); - }; - BigNumber2.prototype.or = function(other) { - var value = toBN(other); - if (this.isNegative() || value.isNeg()) { - throwFault("unbound-bitwise-result", "or"); - } - return toBigNumber(toBN(this).or(value)); - }; - BigNumber2.prototype.xor = function(other) { - var value = toBN(other); - if (this.isNegative() || value.isNeg()) { - throwFault("unbound-bitwise-result", "xor"); - } - return toBigNumber(toBN(this).xor(value)); - }; - BigNumber2.prototype.mask = function(value) { - if (this.isNegative() || value < 0) { - throwFault("negative-width", "mask"); - } - return toBigNumber(toBN(this).maskn(value)); - }; - BigNumber2.prototype.shl = function(value) { - if (this.isNegative() || value < 0) { - throwFault("negative-width", "shl"); - } - return toBigNumber(toBN(this).shln(value)); - }; - BigNumber2.prototype.shr = function(value) { - if (this.isNegative() || value < 0) { - throwFault("negative-width", "shr"); - } - return toBigNumber(toBN(this).shrn(value)); - }; - BigNumber2.prototype.eq = function(other) { - return toBN(this).eq(toBN(other)); - }; - BigNumber2.prototype.lt = function(other) { - return toBN(this).lt(toBN(other)); - }; - BigNumber2.prototype.lte = function(other) { - return toBN(this).lte(toBN(other)); - }; - BigNumber2.prototype.gt = function(other) { - return toBN(this).gt(toBN(other)); - }; - BigNumber2.prototype.gte = function(other) { - return toBN(this).gte(toBN(other)); - }; - BigNumber2.prototype.isNegative = function() { - return this._hex[0] === "-"; - }; - BigNumber2.prototype.isZero = function() { - return toBN(this).isZero(); - }; - BigNumber2.prototype.toNumber = function() { - try { - return toBN(this).toNumber(); - } catch (error) { - throwFault("overflow", "toNumber", this.toString()); - } - return null; - }; - BigNumber2.prototype.toBigInt = function() { - try { - return BigInt(this.toString()); - } catch (e) { - } - return logger.throwError("this platform does not support BigInt", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - value: this.toString() - }); - }; - BigNumber2.prototype.toString = function() { - if (arguments.length > 0) { - if (arguments[0] === 10) { - if (!_warnedToStringRadix) { - _warnedToStringRadix = true; - logger.warn("BigNumber.toString does not accept any parameters; base-10 is assumed"); - } - } else if (arguments[0] === 16) { - logger.throwError("BigNumber.toString does not accept any parameters; use bigNumber.toHexString()", logger_1.Logger.errors.UNEXPECTED_ARGUMENT, {}); - } else { - logger.throwError("BigNumber.toString does not accept parameters", logger_1.Logger.errors.UNEXPECTED_ARGUMENT, {}); - } - } - return toBN(this).toString(10); - }; - BigNumber2.prototype.toHexString = function() { - return this._hex; - }; - BigNumber2.prototype.toJSON = function(key) { - return { type: "BigNumber", hex: this.toHexString() }; - }; - BigNumber2.from = function(value) { - if (value instanceof BigNumber2) { - return value; - } - if (typeof value === "string") { - if (value.match(/^-?0x[0-9a-f]+$/i)) { - return new BigNumber2(_constructorGuard, toHex(value)); - } - if (value.match(/^-?[0-9]+$/)) { - return new BigNumber2(_constructorGuard, toHex(new BN(value))); - } - return logger.throwArgumentError("invalid BigNumber string", "value", value); - } - if (typeof value === "number") { - if (value % 1) { - throwFault("underflow", "BigNumber.from", value); - } - if (value >= MAX_SAFE || value <= -MAX_SAFE) { - throwFault("overflow", "BigNumber.from", value); - } - return BigNumber2.from(String(value)); - } - var anyValue = value; - if (typeof anyValue === "bigint") { - return BigNumber2.from(anyValue.toString()); - } - if ((0, bytes_1.isBytes)(anyValue)) { - return BigNumber2.from((0, bytes_1.hexlify)(anyValue)); - } - if (anyValue) { - if (anyValue.toHexString) { - var hex = anyValue.toHexString(); - if (typeof hex === "string") { - return BigNumber2.from(hex); - } - } else { - var hex = anyValue._hex; - if (hex == null && anyValue.type === "BigNumber") { - hex = anyValue.hex; - } - if (typeof hex === "string") { - if ((0, bytes_1.isHexString)(hex) || hex[0] === "-" && (0, bytes_1.isHexString)(hex.substring(1))) { - return BigNumber2.from(hex); - } - } - } - } - return logger.throwArgumentError("invalid BigNumber value", "value", value); - }; - BigNumber2.isBigNumber = function(value) { - return !!(value && value._isBigNumber); - }; - return BigNumber2; - }() - ); - exports2.BigNumber = BigNumber; - function toHex(value) { - if (typeof value !== "string") { - return toHex(value.toString(16)); - } - if (value[0] === "-") { - value = value.substring(1); - if (value[0] === "-") { - logger.throwArgumentError("invalid hex", "value", value); - } - value = toHex(value); - if (value === "0x00") { - return value; - } - return "-" + value; - } - if (value.substring(0, 2) !== "0x") { - value = "0x" + value; - } - if (value === "0x") { - return "0x00"; - } - if (value.length % 2) { - value = "0x0" + value.substring(2); - } - while (value.length > 4 && value.substring(0, 4) === "0x00") { - value = "0x" + value.substring(4); - } - return value; - } - function toBigNumber(value) { - return BigNumber.from(toHex(value)); - } - function toBN(value) { - var hex = BigNumber.from(value).toHexString(); - if (hex[0] === "-") { - return new BN("-" + hex.substring(3), 16); - } - return new BN(hex.substring(2), 16); - } - function throwFault(fault, operation, value) { - var params = { fault, operation }; - if (value != null) { - params.value = value; - } - return logger.throwError(fault, logger_1.Logger.errors.NUMERIC_FAULT, params); - } - function _base36To16(value) { - return new BN(value, 36).toString(16); - } - exports2._base36To16 = _base36To16; - function _base16To36(value) { - return new BN(value, 16).toString(36); - } - exports2._base16To36 = _base16To36; - } -}); - -// node_modules/@ethersproject/bignumber/lib/fixednumber.js -var require_fixednumber = __commonJS({ - "node_modules/@ethersproject/bignumber/lib/fixednumber.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.FixedNumber = exports2.FixedFormat = exports2.parseFixed = exports2.formatFixed = void 0; - var bytes_1 = require_lib2(); - var logger_1 = require_lib(); - var _version_1 = require_version3(); - var logger = new logger_1.Logger(_version_1.version); - var bignumber_1 = require_bignumber(); - var _constructorGuard = {}; - var Zero = bignumber_1.BigNumber.from(0); - var NegativeOne = bignumber_1.BigNumber.from(-1); - function throwFault(message, fault, operation, value) { - var params = { fault, operation }; - if (value !== void 0) { - params.value = value; - } - return logger.throwError(message, logger_1.Logger.errors.NUMERIC_FAULT, params); - } - var zeros = "0"; - while (zeros.length < 256) { - zeros += zeros; - } - function getMultiplier(decimals) { - if (typeof decimals !== "number") { - try { - decimals = bignumber_1.BigNumber.from(decimals).toNumber(); - } catch (e) { - } - } - if (typeof decimals === "number" && decimals >= 0 && decimals <= 256 && !(decimals % 1)) { - return "1" + zeros.substring(0, decimals); - } - return logger.throwArgumentError("invalid decimal size", "decimals", decimals); - } - function formatFixed(value, decimals) { - if (decimals == null) { - decimals = 0; - } - var multiplier = getMultiplier(decimals); - value = bignumber_1.BigNumber.from(value); - var negative = value.lt(Zero); - if (negative) { - value = value.mul(NegativeOne); - } - var fraction = value.mod(multiplier).toString(); - while (fraction.length < multiplier.length - 1) { - fraction = "0" + fraction; - } - fraction = fraction.match(/^([0-9]*[1-9]|0)(0*)/)[1]; - var whole = value.div(multiplier).toString(); - if (multiplier.length === 1) { - value = whole; - } else { - value = whole + "." + fraction; - } - if (negative) { - value = "-" + value; - } - return value; - } - exports2.formatFixed = formatFixed; - function parseFixed(value, decimals) { - if (decimals == null) { - decimals = 0; - } - var multiplier = getMultiplier(decimals); - if (typeof value !== "string" || !value.match(/^-?[0-9.]+$/)) { - logger.throwArgumentError("invalid decimal value", "value", value); - } - var negative = value.substring(0, 1) === "-"; - if (negative) { - value = value.substring(1); - } - if (value === ".") { - logger.throwArgumentError("missing value", "value", value); - } - var comps = value.split("."); - if (comps.length > 2) { - logger.throwArgumentError("too many decimal points", "value", value); - } - var whole = comps[0], fraction = comps[1]; - if (!whole) { - whole = "0"; - } - if (!fraction) { - fraction = "0"; - } - while (fraction[fraction.length - 1] === "0") { - fraction = fraction.substring(0, fraction.length - 1); - } - if (fraction.length > multiplier.length - 1) { - throwFault("fractional component exceeds decimals", "underflow", "parseFixed"); - } - if (fraction === "") { - fraction = "0"; - } - while (fraction.length < multiplier.length - 1) { - fraction += "0"; - } - var wholeValue = bignumber_1.BigNumber.from(whole); - var fractionValue = bignumber_1.BigNumber.from(fraction); - var wei = wholeValue.mul(multiplier).add(fractionValue); - if (negative) { - wei = wei.mul(NegativeOne); - } - return wei; - } - exports2.parseFixed = parseFixed; - var FixedFormat = ( - /** @class */ - function() { - function FixedFormat2(constructorGuard, signed, width, decimals) { - if (constructorGuard !== _constructorGuard) { - logger.throwError("cannot use FixedFormat constructor; use FixedFormat.from", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "new FixedFormat" - }); - } - this.signed = signed; - this.width = width; - this.decimals = decimals; - this.name = (signed ? "" : "u") + "fixed" + String(width) + "x" + String(decimals); - this._multiplier = getMultiplier(decimals); - Object.freeze(this); - } - FixedFormat2.from = function(value) { - if (value instanceof FixedFormat2) { - return value; - } - if (typeof value === "number") { - value = "fixed128x" + value; - } - var signed = true; - var width = 128; - var decimals = 18; - if (typeof value === "string") { - if (value === "fixed") { - } else if (value === "ufixed") { - signed = false; - } else { - var match = value.match(/^(u?)fixed([0-9]+)x([0-9]+)$/); - if (!match) { - logger.throwArgumentError("invalid fixed format", "format", value); - } - signed = match[1] !== "u"; - width = parseInt(match[2]); - decimals = parseInt(match[3]); - } - } else if (value) { - var check = function(key, type, defaultValue) { - if (value[key] == null) { - return defaultValue; - } - if (typeof value[key] !== type) { - logger.throwArgumentError("invalid fixed format (" + key + " not " + type + ")", "format." + key, value[key]); - } - return value[key]; - }; - signed = check("signed", "boolean", signed); - width = check("width", "number", width); - decimals = check("decimals", "number", decimals); - } - if (width % 8) { - logger.throwArgumentError("invalid fixed format width (not byte aligned)", "format.width", width); - } - if (decimals > 80) { - logger.throwArgumentError("invalid fixed format (decimals too large)", "format.decimals", decimals); - } - return new FixedFormat2(_constructorGuard, signed, width, decimals); - }; - return FixedFormat2; - }() - ); - exports2.FixedFormat = FixedFormat; - var FixedNumber = ( - /** @class */ - function() { - function FixedNumber2(constructorGuard, hex, value, format) { - if (constructorGuard !== _constructorGuard) { - logger.throwError("cannot use FixedNumber constructor; use FixedNumber.from", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "new FixedFormat" - }); - } - this.format = format; - this._hex = hex; - this._value = value; - this._isFixedNumber = true; - Object.freeze(this); - } - FixedNumber2.prototype._checkFormat = function(other) { - if (this.format.name !== other.format.name) { - logger.throwArgumentError("incompatible format; use fixedNumber.toFormat", "other", other); - } - }; - FixedNumber2.prototype.addUnsafe = function(other) { - this._checkFormat(other); - var a = parseFixed(this._value, this.format.decimals); - var b = parseFixed(other._value, other.format.decimals); - return FixedNumber2.fromValue(a.add(b), this.format.decimals, this.format); - }; - FixedNumber2.prototype.subUnsafe = function(other) { - this._checkFormat(other); - var a = parseFixed(this._value, this.format.decimals); - var b = parseFixed(other._value, other.format.decimals); - return FixedNumber2.fromValue(a.sub(b), this.format.decimals, this.format); - }; - FixedNumber2.prototype.mulUnsafe = function(other) { - this._checkFormat(other); - var a = parseFixed(this._value, this.format.decimals); - var b = parseFixed(other._value, other.format.decimals); - return FixedNumber2.fromValue(a.mul(b).div(this.format._multiplier), this.format.decimals, this.format); - }; - FixedNumber2.prototype.divUnsafe = function(other) { - this._checkFormat(other); - var a = parseFixed(this._value, this.format.decimals); - var b = parseFixed(other._value, other.format.decimals); - return FixedNumber2.fromValue(a.mul(this.format._multiplier).div(b), this.format.decimals, this.format); - }; - FixedNumber2.prototype.floor = function() { - var comps = this.toString().split("."); - if (comps.length === 1) { - comps.push("0"); - } - var result = FixedNumber2.from(comps[0], this.format); - var hasFraction = !comps[1].match(/^(0*)$/); - if (this.isNegative() && hasFraction) { - result = result.subUnsafe(ONE.toFormat(result.format)); - } - return result; - }; - FixedNumber2.prototype.ceiling = function() { - var comps = this.toString().split("."); - if (comps.length === 1) { - comps.push("0"); - } - var result = FixedNumber2.from(comps[0], this.format); - var hasFraction = !comps[1].match(/^(0*)$/); - if (!this.isNegative() && hasFraction) { - result = result.addUnsafe(ONE.toFormat(result.format)); - } - return result; - }; - FixedNumber2.prototype.round = function(decimals) { - if (decimals == null) { - decimals = 0; - } - var comps = this.toString().split("."); - if (comps.length === 1) { - comps.push("0"); - } - if (decimals < 0 || decimals > 80 || decimals % 1) { - logger.throwArgumentError("invalid decimal count", "decimals", decimals); - } - if (comps[1].length <= decimals) { - return this; - } - var factor = FixedNumber2.from("1" + zeros.substring(0, decimals), this.format); - var bump = BUMP.toFormat(this.format); - return this.mulUnsafe(factor).addUnsafe(bump).floor().divUnsafe(factor); - }; - FixedNumber2.prototype.isZero = function() { - return this._value === "0.0" || this._value === "0"; - }; - FixedNumber2.prototype.isNegative = function() { - return this._value[0] === "-"; - }; - FixedNumber2.prototype.toString = function() { - return this._value; - }; - FixedNumber2.prototype.toHexString = function(width) { - if (width == null) { - return this._hex; - } - if (width % 8) { - logger.throwArgumentError("invalid byte width", "width", width); - } - var hex = bignumber_1.BigNumber.from(this._hex).fromTwos(this.format.width).toTwos(width).toHexString(); - return (0, bytes_1.hexZeroPad)(hex, width / 8); - }; - FixedNumber2.prototype.toUnsafeFloat = function() { - return parseFloat(this.toString()); - }; - FixedNumber2.prototype.toFormat = function(format) { - return FixedNumber2.fromString(this._value, format); - }; - FixedNumber2.fromValue = function(value, decimals, format) { - if (format == null && decimals != null && !(0, bignumber_1.isBigNumberish)(decimals)) { - format = decimals; - decimals = null; - } - if (decimals == null) { - decimals = 0; - } - if (format == null) { - format = "fixed"; - } - return FixedNumber2.fromString(formatFixed(value, decimals), FixedFormat.from(format)); - }; - FixedNumber2.fromString = function(value, format) { - if (format == null) { - format = "fixed"; - } - var fixedFormat = FixedFormat.from(format); - var numeric = parseFixed(value, fixedFormat.decimals); - if (!fixedFormat.signed && numeric.lt(Zero)) { - throwFault("unsigned value cannot be negative", "overflow", "value", value); - } - var hex = null; - if (fixedFormat.signed) { - hex = numeric.toTwos(fixedFormat.width).toHexString(); - } else { - hex = numeric.toHexString(); - hex = (0, bytes_1.hexZeroPad)(hex, fixedFormat.width / 8); - } - var decimal = formatFixed(numeric, fixedFormat.decimals); - return new FixedNumber2(_constructorGuard, hex, decimal, fixedFormat); - }; - FixedNumber2.fromBytes = function(value, format) { - if (format == null) { - format = "fixed"; - } - var fixedFormat = FixedFormat.from(format); - if ((0, bytes_1.arrayify)(value).length > fixedFormat.width / 8) { - throw new Error("overflow"); - } - var numeric = bignumber_1.BigNumber.from(value); - if (fixedFormat.signed) { - numeric = numeric.fromTwos(fixedFormat.width); - } - var hex = numeric.toTwos((fixedFormat.signed ? 0 : 1) + fixedFormat.width).toHexString(); - var decimal = formatFixed(numeric, fixedFormat.decimals); - return new FixedNumber2(_constructorGuard, hex, decimal, fixedFormat); - }; - FixedNumber2.from = function(value, format) { - if (typeof value === "string") { - return FixedNumber2.fromString(value, format); - } - if ((0, bytes_1.isBytes)(value)) { - return FixedNumber2.fromBytes(value, format); - } - try { - return FixedNumber2.fromValue(value, 0, format); - } catch (error) { - if (error.code !== logger_1.Logger.errors.INVALID_ARGUMENT) { - throw error; - } - } - return logger.throwArgumentError("invalid FixedNumber value", "value", value); - }; - FixedNumber2.isFixedNumber = function(value) { - return !!(value && value._isFixedNumber); - }; - return FixedNumber2; - }() - ); - exports2.FixedNumber = FixedNumber; - var ONE = FixedNumber.from(1); - var BUMP = FixedNumber.from("0.5"); - } -}); - -// node_modules/@ethersproject/bignumber/lib/index.js -var require_lib3 = __commonJS({ - "node_modules/@ethersproject/bignumber/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2._base36To16 = exports2._base16To36 = exports2.parseFixed = exports2.FixedNumber = exports2.FixedFormat = exports2.formatFixed = exports2.BigNumber = void 0; - var bignumber_1 = require_bignumber(); - Object.defineProperty(exports2, "BigNumber", { enumerable: true, get: function() { - return bignumber_1.BigNumber; - } }); - var fixednumber_1 = require_fixednumber(); - Object.defineProperty(exports2, "formatFixed", { enumerable: true, get: function() { - return fixednumber_1.formatFixed; - } }); - Object.defineProperty(exports2, "FixedFormat", { enumerable: true, get: function() { - return fixednumber_1.FixedFormat; - } }); - Object.defineProperty(exports2, "FixedNumber", { enumerable: true, get: function() { - return fixednumber_1.FixedNumber; - } }); - Object.defineProperty(exports2, "parseFixed", { enumerable: true, get: function() { - return fixednumber_1.parseFixed; - } }); - var bignumber_2 = require_bignumber(); - Object.defineProperty(exports2, "_base16To36", { enumerable: true, get: function() { - return bignumber_2._base16To36; - } }); - Object.defineProperty(exports2, "_base36To16", { enumerable: true, get: function() { - return bignumber_2._base36To16; - } }); - } -}); - -// node_modules/@ethersproject/properties/lib/_version.js -var require_version4 = __commonJS({ - "node_modules/@ethersproject/properties/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "properties/5.7.0"; - } -}); - -// node_modules/@ethersproject/properties/lib/index.js -var require_lib4 = __commonJS({ - "node_modules/@ethersproject/properties/lib/index.js"(exports2) { - "use strict"; - var __awaiter = exports2 && exports2.__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 = exports2 && exports2.__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(exports2, "__esModule", { value: true }); - exports2.Description = exports2.deepCopy = exports2.shallowCopy = exports2.checkProperties = exports2.resolveProperties = exports2.getStatic = exports2.defineReadOnly = void 0; - var logger_1 = require_lib(); - var _version_1 = require_version4(); - var logger = new logger_1.Logger(_version_1.version); - function defineReadOnly(object, name, value) { - Object.defineProperty(object, name, { - enumerable: true, - value, - writable: false - }); - } - exports2.defineReadOnly = defineReadOnly; - function getStatic(ctor, key) { - for (var i = 0; i < 32; i++) { - if (ctor[key]) { - return ctor[key]; - } - if (!ctor.prototype || typeof ctor.prototype !== "object") { - break; - } - ctor = Object.getPrototypeOf(ctor.prototype).constructor; - } - return null; - } - exports2.getStatic = getStatic; - function resolveProperties(object) { - return __awaiter(this, void 0, void 0, function() { - var promises, results; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - promises = Object.keys(object).map(function(key) { - var value = object[key]; - return Promise.resolve(value).then(function(v) { - return { key, value: v }; - }); - }); - return [4, Promise.all(promises)]; - case 1: - results = _a.sent(); - return [2, results.reduce(function(accum, result) { - accum[result.key] = result.value; - return accum; - }, {})]; - } - }); - }); - } - exports2.resolveProperties = resolveProperties; - function checkProperties(object, properties) { - if (!object || typeof object !== "object") { - logger.throwArgumentError("invalid object", "object", object); - } - Object.keys(object).forEach(function(key) { - if (!properties[key]) { - logger.throwArgumentError("invalid object key - " + key, "transaction:" + key, object); - } - }); - } - exports2.checkProperties = checkProperties; - function shallowCopy(object) { - var result = {}; - for (var key in object) { - result[key] = object[key]; - } - return result; - } - exports2.shallowCopy = shallowCopy; - var opaque = { bigint: true, boolean: true, "function": true, number: true, string: true }; - function _isFrozen(object) { - if (object === void 0 || object === null || opaque[typeof object]) { - return true; - } - if (Array.isArray(object) || typeof object === "object") { - if (!Object.isFrozen(object)) { - return false; - } - var keys = Object.keys(object); - for (var i = 0; i < keys.length; i++) { - var value = null; - try { - value = object[keys[i]]; - } catch (error) { - continue; - } - if (!_isFrozen(value)) { - return false; - } - } - return true; - } - return logger.throwArgumentError("Cannot deepCopy " + typeof object, "object", object); - } - function _deepCopy(object) { - if (_isFrozen(object)) { - return object; - } - if (Array.isArray(object)) { - return Object.freeze(object.map(function(item) { - return deepCopy(item); - })); - } - if (typeof object === "object") { - var result = {}; - for (var key in object) { - var value = object[key]; - if (value === void 0) { - continue; - } - defineReadOnly(result, key, deepCopy(value)); - } - return result; - } - return logger.throwArgumentError("Cannot deepCopy " + typeof object, "object", object); - } - function deepCopy(object) { - return _deepCopy(object); - } - exports2.deepCopy = deepCopy; - var Description = ( - /** @class */ - /* @__PURE__ */ function() { - function Description2(info) { - for (var key in info) { - this[key] = deepCopy(info[key]); - } - } - return Description2; - }() - ); - exports2.Description = Description; - } -}); - -// node_modules/@ethersproject/abstract-provider/lib/_version.js -var require_version5 = __commonJS({ - "node_modules/@ethersproject/abstract-provider/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "abstract-provider/5.7.0"; - } -}); - -// node_modules/@ethersproject/abstract-provider/lib/index.js -var require_lib5 = __commonJS({ - "node_modules/@ethersproject/abstract-provider/lib/index.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - var __awaiter = exports2 && exports2.__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 = exports2 && exports2.__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(exports2, "__esModule", { value: true }); - exports2.Provider = exports2.TransactionOrderForkEvent = exports2.TransactionForkEvent = exports2.BlockForkEvent = exports2.ForkEvent = void 0; - var bignumber_1 = require_lib3(); - var bytes_1 = require_lib2(); - var properties_1 = require_lib4(); - var logger_1 = require_lib(); - var _version_1 = require_version5(); - var logger = new logger_1.Logger(_version_1.version); - var ForkEvent = ( - /** @class */ - function(_super) { - __extends(ForkEvent2, _super); - function ForkEvent2() { - return _super !== null && _super.apply(this, arguments) || this; - } - ForkEvent2.isForkEvent = function(value) { - return !!(value && value._isForkEvent); - }; - return ForkEvent2; - }(properties_1.Description) - ); - exports2.ForkEvent = ForkEvent; - var BlockForkEvent = ( - /** @class */ - function(_super) { - __extends(BlockForkEvent2, _super); - function BlockForkEvent2(blockHash, expiry) { - var _this = this; - if (!(0, bytes_1.isHexString)(blockHash, 32)) { - logger.throwArgumentError("invalid blockHash", "blockHash", blockHash); - } - _this = _super.call(this, { - _isForkEvent: true, - _isBlockForkEvent: true, - expiry: expiry || 0, - blockHash - }) || this; - return _this; - } - return BlockForkEvent2; - }(ForkEvent) - ); - exports2.BlockForkEvent = BlockForkEvent; - var TransactionForkEvent = ( - /** @class */ - function(_super) { - __extends(TransactionForkEvent2, _super); - function TransactionForkEvent2(hash, expiry) { - var _this = this; - if (!(0, bytes_1.isHexString)(hash, 32)) { - logger.throwArgumentError("invalid transaction hash", "hash", hash); - } - _this = _super.call(this, { - _isForkEvent: true, - _isTransactionForkEvent: true, - expiry: expiry || 0, - hash - }) || this; - return _this; - } - return TransactionForkEvent2; - }(ForkEvent) - ); - exports2.TransactionForkEvent = TransactionForkEvent; - var TransactionOrderForkEvent = ( - /** @class */ - function(_super) { - __extends(TransactionOrderForkEvent2, _super); - function TransactionOrderForkEvent2(beforeHash, afterHash, expiry) { - var _this = this; - if (!(0, bytes_1.isHexString)(beforeHash, 32)) { - logger.throwArgumentError("invalid transaction hash", "beforeHash", beforeHash); - } - if (!(0, bytes_1.isHexString)(afterHash, 32)) { - logger.throwArgumentError("invalid transaction hash", "afterHash", afterHash); - } - _this = _super.call(this, { - _isForkEvent: true, - _isTransactionOrderForkEvent: true, - expiry: expiry || 0, - beforeHash, - afterHash - }) || this; - return _this; - } - return TransactionOrderForkEvent2; - }(ForkEvent) - ); - exports2.TransactionOrderForkEvent = TransactionOrderForkEvent; - var Provider = ( - /** @class */ - function() { - function Provider2() { - var _newTarget = this.constructor; - logger.checkAbstract(_newTarget, Provider2); - (0, properties_1.defineReadOnly)(this, "_isProvider", true); - } - Provider2.prototype.getFeeData = function() { - return __awaiter(this, void 0, void 0, function() { - var _a, block, gasPrice, lastBaseFeePerGas, maxFeePerGas, maxPriorityFeePerGas; - return __generator(this, function(_b) { - switch (_b.label) { - case 0: - return [4, (0, properties_1.resolveProperties)({ - block: this.getBlock("latest"), - gasPrice: this.getGasPrice().catch(function(error) { - return null; - }) - })]; - case 1: - _a = _b.sent(), block = _a.block, gasPrice = _a.gasPrice; - lastBaseFeePerGas = null, maxFeePerGas = null, maxPriorityFeePerGas = null; - if (block && block.baseFeePerGas) { - lastBaseFeePerGas = block.baseFeePerGas; - maxPriorityFeePerGas = bignumber_1.BigNumber.from("1500000000"); - maxFeePerGas = block.baseFeePerGas.mul(2).add(maxPriorityFeePerGas); - } - return [2, { lastBaseFeePerGas, maxFeePerGas, maxPriorityFeePerGas, gasPrice }]; - } - }); - }); - }; - Provider2.prototype.addListener = function(eventName, listener) { - return this.on(eventName, listener); - }; - Provider2.prototype.removeListener = function(eventName, listener) { - return this.off(eventName, listener); - }; - Provider2.isProvider = function(value) { - return !!(value && value._isProvider); - }; - return Provider2; - }() - ); - exports2.Provider = Provider; - } -}); - -// node_modules/@ethersproject/networks/lib/_version.js -var require_version6 = __commonJS({ - "node_modules/@ethersproject/networks/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "networks/5.7.1"; - } -}); - -// node_modules/@ethersproject/networks/lib/index.js -var require_lib6 = __commonJS({ - "node_modules/@ethersproject/networks/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getNetwork = void 0; - var logger_1 = require_lib(); - var _version_1 = require_version6(); - var logger = new logger_1.Logger(_version_1.version); - function isRenetworkable(value) { - return value && typeof value.renetwork === "function"; - } - function ethDefaultProvider(network) { - var func = function(providers, options) { - if (options == null) { - options = {}; - } - var providerList = []; - if (providers.InfuraProvider && options.infura !== "-") { - try { - providerList.push(new providers.InfuraProvider(network, options.infura)); - } catch (error) { - } - } - if (providers.EtherscanProvider && options.etherscan !== "-") { - try { - providerList.push(new providers.EtherscanProvider(network, options.etherscan)); - } catch (error) { - } - } - if (providers.AlchemyProvider && options.alchemy !== "-") { - try { - providerList.push(new providers.AlchemyProvider(network, options.alchemy)); - } catch (error) { - } - } - if (providers.PocketProvider && options.pocket !== "-") { - var skip = ["goerli", "ropsten", "rinkeby", "sepolia"]; - try { - var provider = new providers.PocketProvider(network, options.pocket); - if (provider.network && skip.indexOf(provider.network.name) === -1) { - providerList.push(provider); - } - } catch (error) { - } - } - if (providers.CloudflareProvider && options.cloudflare !== "-") { - try { - providerList.push(new providers.CloudflareProvider(network)); - } catch (error) { - } - } - if (providers.AnkrProvider && options.ankr !== "-") { - try { - var skip = ["ropsten"]; - var provider = new providers.AnkrProvider(network, options.ankr); - if (provider.network && skip.indexOf(provider.network.name) === -1) { - providerList.push(provider); - } - } catch (error) { - } - } - if (providerList.length === 0) { - return null; - } - if (providers.FallbackProvider) { - var quorum = 1; - if (options.quorum != null) { - quorum = options.quorum; - } else if (network === "homestead") { - quorum = 2; - } - return new providers.FallbackProvider(providerList, quorum); - } - return providerList[0]; - }; - func.renetwork = function(network2) { - return ethDefaultProvider(network2); - }; - return func; - } - function etcDefaultProvider(url2, network) { - var func = function(providers, options) { - if (providers.JsonRpcProvider) { - return new providers.JsonRpcProvider(url2, network); - } - return null; - }; - func.renetwork = function(network2) { - return etcDefaultProvider(url2, network2); - }; - return func; - } - var homestead = { - chainId: 1, - ensAddress: "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e", - name: "homestead", - _defaultProvider: ethDefaultProvider("homestead") - }; - var ropsten = { - chainId: 3, - ensAddress: "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e", - name: "ropsten", - _defaultProvider: ethDefaultProvider("ropsten") - }; - var classicMordor = { - chainId: 63, - name: "classicMordor", - _defaultProvider: etcDefaultProvider("https://www.ethercluster.com/mordor", "classicMordor") - }; - var networks = { - unspecified: { chainId: 0, name: "unspecified" }, - homestead, - mainnet: homestead, - morden: { chainId: 2, name: "morden" }, - ropsten, - testnet: ropsten, - rinkeby: { - chainId: 4, - ensAddress: "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e", - name: "rinkeby", - _defaultProvider: ethDefaultProvider("rinkeby") - }, - kovan: { - chainId: 42, - name: "kovan", - _defaultProvider: ethDefaultProvider("kovan") - }, - goerli: { - chainId: 5, - ensAddress: "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e", - name: "goerli", - _defaultProvider: ethDefaultProvider("goerli") - }, - kintsugi: { chainId: 1337702, name: "kintsugi" }, - sepolia: { - chainId: 11155111, - name: "sepolia", - _defaultProvider: ethDefaultProvider("sepolia") - }, - // ETC (See: #351) - classic: { - chainId: 61, - name: "classic", - _defaultProvider: etcDefaultProvider("https://www.ethercluster.com/etc", "classic") - }, - classicMorden: { chainId: 62, name: "classicMorden" }, - classicMordor, - classicTestnet: classicMordor, - classicKotti: { - chainId: 6, - name: "classicKotti", - _defaultProvider: etcDefaultProvider("https://www.ethercluster.com/kotti", "classicKotti") - }, - xdai: { chainId: 100, name: "xdai" }, - matic: { - chainId: 137, - name: "matic", - _defaultProvider: ethDefaultProvider("matic") - }, - maticmum: { chainId: 80001, name: "maticmum" }, - optimism: { - chainId: 10, - name: "optimism", - _defaultProvider: ethDefaultProvider("optimism") - }, - "optimism-kovan": { chainId: 69, name: "optimism-kovan" }, - "optimism-goerli": { chainId: 420, name: "optimism-goerli" }, - arbitrum: { chainId: 42161, name: "arbitrum" }, - "arbitrum-rinkeby": { chainId: 421611, name: "arbitrum-rinkeby" }, - "arbitrum-goerli": { chainId: 421613, name: "arbitrum-goerli" }, - bnb: { chainId: 56, name: "bnb" }, - bnbt: { chainId: 97, name: "bnbt" } - }; - function getNetwork(network) { - if (network == null) { - return null; - } - if (typeof network === "number") { - for (var name_1 in networks) { - var standard_1 = networks[name_1]; - if (standard_1.chainId === network) { - return { - name: standard_1.name, - chainId: standard_1.chainId, - ensAddress: standard_1.ensAddress || null, - _defaultProvider: standard_1._defaultProvider || null - }; - } - } - return { - chainId: network, - name: "unknown" - }; - } - if (typeof network === "string") { - var standard_2 = networks[network]; - if (standard_2 == null) { - return null; - } - return { - name: standard_2.name, - chainId: standard_2.chainId, - ensAddress: standard_2.ensAddress, - _defaultProvider: standard_2._defaultProvider || null - }; - } - var standard = networks[network.name]; - if (!standard) { - if (typeof network.chainId !== "number") { - logger.throwArgumentError("invalid network chainId", "network", network); - } - return network; - } - if (network.chainId !== 0 && network.chainId !== standard.chainId) { - logger.throwArgumentError("network chainId mismatch", "network", network); - } - var defaultProvider = network._defaultProvider || null; - if (defaultProvider == null && standard._defaultProvider) { - if (isRenetworkable(standard._defaultProvider)) { - defaultProvider = standard._defaultProvider.renetwork(network); - } else { - defaultProvider = standard._defaultProvider; - } - } - return { - name: network.name, - chainId: standard.chainId, - ensAddress: network.ensAddress || standard.ensAddress || null, - _defaultProvider: defaultProvider - }; - } - exports2.getNetwork = getNetwork; - } -}); - -// node_modules/@ethersproject/base64/lib/base64.js -var require_base64 = __commonJS({ - "node_modules/@ethersproject/base64/lib/base64.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.encode = exports2.decode = void 0; - var bytes_1 = require_lib2(); - function decode(textData) { - return (0, bytes_1.arrayify)(new Uint8Array(Buffer.from(textData, "base64"))); - } - exports2.decode = decode; - function encode3(data) { - return Buffer.from((0, bytes_1.arrayify)(data)).toString("base64"); - } - exports2.encode = encode3; - } -}); - -// node_modules/@ethersproject/base64/lib/index.js -var require_lib7 = __commonJS({ - "node_modules/@ethersproject/base64/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.encode = exports2.decode = void 0; - var base64_1 = require_base64(); - Object.defineProperty(exports2, "decode", { enumerable: true, get: function() { - return base64_1.decode; - } }); - Object.defineProperty(exports2, "encode", { enumerable: true, get: function() { - return base64_1.encode; - } }); - } -}); - -// node_modules/@ethersproject/basex/lib/index.js -var require_lib8 = __commonJS({ - "node_modules/@ethersproject/basex/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.Base58 = exports2.Base32 = exports2.BaseX = void 0; - var bytes_1 = require_lib2(); - var properties_1 = require_lib4(); - var BaseX = ( - /** @class */ - function() { - function BaseX2(alphabet) { - (0, properties_1.defineReadOnly)(this, "alphabet", alphabet); - (0, properties_1.defineReadOnly)(this, "base", alphabet.length); - (0, properties_1.defineReadOnly)(this, "_alphabetMap", {}); - (0, properties_1.defineReadOnly)(this, "_leader", alphabet.charAt(0)); - for (var i = 0; i < alphabet.length; i++) { - this._alphabetMap[alphabet.charAt(i)] = i; - } - } - BaseX2.prototype.encode = function(value) { - var source = (0, bytes_1.arrayify)(value); - if (source.length === 0) { - return ""; - } - var digits = [0]; - for (var i = 0; i < source.length; ++i) { - var carry = source[i]; - for (var j = 0; j < digits.length; ++j) { - carry += digits[j] << 8; - digits[j] = carry % this.base; - carry = carry / this.base | 0; - } - while (carry > 0) { - digits.push(carry % this.base); - carry = carry / this.base | 0; - } - } - var string = ""; - for (var k = 0; source[k] === 0 && k < source.length - 1; ++k) { - string += this._leader; - } - for (var q = digits.length - 1; q >= 0; --q) { - string += this.alphabet[digits[q]]; - } - return string; - }; - BaseX2.prototype.decode = function(value) { - if (typeof value !== "string") { - throw new TypeError("Expected String"); - } - var bytes = []; - if (value.length === 0) { - return new Uint8Array(bytes); - } - bytes.push(0); - for (var i = 0; i < value.length; i++) { - var byte = this._alphabetMap[value[i]]; - if (byte === void 0) { - throw new Error("Non-base" + this.base + " character"); - } - var carry = byte; - for (var j = 0; j < bytes.length; ++j) { - carry += bytes[j] * this.base; - bytes[j] = carry & 255; - carry >>= 8; - } - while (carry > 0) { - bytes.push(carry & 255); - carry >>= 8; - } - } - for (var k = 0; value[k] === this._leader && k < value.length - 1; ++k) { - bytes.push(0); - } - return (0, bytes_1.arrayify)(new Uint8Array(bytes.reverse())); - }; - return BaseX2; - }() - ); - exports2.BaseX = BaseX; - var Base32 = new BaseX("abcdefghijklmnopqrstuvwxyz234567"); - exports2.Base32 = Base32; - var Base58 = new BaseX("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"); - exports2.Base58 = Base58; - } -}); - -// node_modules/@ethersproject/constants/lib/addresses.js -var require_addresses = __commonJS({ - "node_modules/@ethersproject/constants/lib/addresses.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AddressZero = void 0; - exports2.AddressZero = "0x0000000000000000000000000000000000000000"; - } -}); - -// node_modules/@ethersproject/constants/lib/bignumbers.js -var require_bignumbers = __commonJS({ - "node_modules/@ethersproject/constants/lib/bignumbers.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.MaxInt256 = exports2.MinInt256 = exports2.MaxUint256 = exports2.WeiPerEther = exports2.Two = exports2.One = exports2.Zero = exports2.NegativeOne = void 0; - var bignumber_1 = require_lib3(); - var NegativeOne = /* @__PURE__ */ bignumber_1.BigNumber.from(-1); - exports2.NegativeOne = NegativeOne; - var Zero = /* @__PURE__ */ bignumber_1.BigNumber.from(0); - exports2.Zero = Zero; - var One = /* @__PURE__ */ bignumber_1.BigNumber.from(1); - exports2.One = One; - var Two = /* @__PURE__ */ bignumber_1.BigNumber.from(2); - exports2.Two = Two; - var WeiPerEther = /* @__PURE__ */ bignumber_1.BigNumber.from("1000000000000000000"); - exports2.WeiPerEther = WeiPerEther; - var MaxUint256 = /* @__PURE__ */ bignumber_1.BigNumber.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); - exports2.MaxUint256 = MaxUint256; - var MinInt256 = /* @__PURE__ */ bignumber_1.BigNumber.from("-0x8000000000000000000000000000000000000000000000000000000000000000"); - exports2.MinInt256 = MinInt256; - var MaxInt256 = /* @__PURE__ */ bignumber_1.BigNumber.from("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); - exports2.MaxInt256 = MaxInt256; - } -}); - -// node_modules/@ethersproject/constants/lib/hashes.js -var require_hashes = __commonJS({ - "node_modules/@ethersproject/constants/lib/hashes.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.HashZero = void 0; - exports2.HashZero = "0x0000000000000000000000000000000000000000000000000000000000000000"; - } -}); - -// node_modules/@ethersproject/constants/lib/strings.js -var require_strings = __commonJS({ - "node_modules/@ethersproject/constants/lib/strings.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.EtherSymbol = void 0; - exports2.EtherSymbol = "\u039E"; - } -}); - -// node_modules/@ethersproject/constants/lib/index.js -var require_lib9 = __commonJS({ - "node_modules/@ethersproject/constants/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.EtherSymbol = exports2.HashZero = exports2.MaxInt256 = exports2.MinInt256 = exports2.MaxUint256 = exports2.WeiPerEther = exports2.Two = exports2.One = exports2.Zero = exports2.NegativeOne = exports2.AddressZero = void 0; - var addresses_1 = require_addresses(); - Object.defineProperty(exports2, "AddressZero", { enumerable: true, get: function() { - return addresses_1.AddressZero; - } }); - var bignumbers_1 = require_bignumbers(); - Object.defineProperty(exports2, "NegativeOne", { enumerable: true, get: function() { - return bignumbers_1.NegativeOne; - } }); - Object.defineProperty(exports2, "Zero", { enumerable: true, get: function() { - return bignumbers_1.Zero; - } }); - Object.defineProperty(exports2, "One", { enumerable: true, get: function() { - return bignumbers_1.One; - } }); - Object.defineProperty(exports2, "Two", { enumerable: true, get: function() { - return bignumbers_1.Two; - } }); - Object.defineProperty(exports2, "WeiPerEther", { enumerable: true, get: function() { - return bignumbers_1.WeiPerEther; - } }); - Object.defineProperty(exports2, "MaxUint256", { enumerable: true, get: function() { - return bignumbers_1.MaxUint256; - } }); - Object.defineProperty(exports2, "MinInt256", { enumerable: true, get: function() { - return bignumbers_1.MinInt256; - } }); - Object.defineProperty(exports2, "MaxInt256", { enumerable: true, get: function() { - return bignumbers_1.MaxInt256; - } }); - var hashes_1 = require_hashes(); - Object.defineProperty(exports2, "HashZero", { enumerable: true, get: function() { - return hashes_1.HashZero; - } }); - var strings_1 = require_strings(); - Object.defineProperty(exports2, "EtherSymbol", { enumerable: true, get: function() { - return strings_1.EtherSymbol; - } }); - } -}); - -// node_modules/js-sha3/src/sha3.js -var require_sha3 = __commonJS({ - "node_modules/js-sha3/src/sha3.js"(exports2, module2) { - "use strict"; - (function() { - "use strict"; - var INPUT_ERROR = "input is invalid type"; - var FINALIZE_ERROR = "finalize already called"; - var WINDOW = typeof window === "object"; - var root = WINDOW ? window : {}; - if (root.JS_SHA3_NO_WINDOW) { - WINDOW = false; - } - var WEB_WORKER = !WINDOW && typeof self === "object"; - var NODE_JS = !root.JS_SHA3_NO_NODE_JS && typeof process === "object" && process.versions && process.versions.node; - if (NODE_JS) { - root = global; - } else if (WEB_WORKER) { - root = self; - } - var COMMON_JS = !root.JS_SHA3_NO_COMMON_JS && typeof module2 === "object" && module2.exports; - var AMD = typeof define === "function" && define.amd; - var ARRAY_BUFFER = !root.JS_SHA3_NO_ARRAY_BUFFER && typeof ArrayBuffer !== "undefined"; - var HEX_CHARS = "0123456789abcdef".split(""); - var SHAKE_PADDING = [31, 7936, 2031616, 520093696]; - var CSHAKE_PADDING = [4, 1024, 262144, 67108864]; - var KECCAK_PADDING = [1, 256, 65536, 16777216]; - var PADDING = [6, 1536, 393216, 100663296]; - var SHIFT = [0, 8, 16, 24]; - var RC = [ - 1, - 0, - 32898, - 0, - 32906, - 2147483648, - 2147516416, - 2147483648, - 32907, - 0, - 2147483649, - 0, - 2147516545, - 2147483648, - 32777, - 2147483648, - 138, - 0, - 136, - 0, - 2147516425, - 0, - 2147483658, - 0, - 2147516555, - 0, - 139, - 2147483648, - 32905, - 2147483648, - 32771, - 2147483648, - 32770, - 2147483648, - 128, - 2147483648, - 32778, - 0, - 2147483658, - 2147483648, - 2147516545, - 2147483648, - 32896, - 2147483648, - 2147483649, - 0, - 2147516424, - 2147483648 - ]; - var BITS = [224, 256, 384, 512]; - var SHAKE_BITS = [128, 256]; - var OUTPUT_TYPES = ["hex", "buffer", "arrayBuffer", "array", "digest"]; - var CSHAKE_BYTEPAD = { - "128": 168, - "256": 136 - }; - if (root.JS_SHA3_NO_NODE_JS || !Array.isArray) { - Array.isArray = function(obj) { - return Object.prototype.toString.call(obj) === "[object Array]"; - }; - } - if (ARRAY_BUFFER && (root.JS_SHA3_NO_ARRAY_BUFFER_IS_VIEW || !ArrayBuffer.isView)) { - ArrayBuffer.isView = function(obj) { - return typeof obj === "object" && obj.buffer && obj.buffer.constructor === ArrayBuffer; - }; - } - var createOutputMethod = function(bits2, padding, outputType) { - return function(message) { - return new Keccak(bits2, padding, bits2).update(message)[outputType](); - }; - }; - var createShakeOutputMethod = function(bits2, padding, outputType) { - return function(message, outputBits) { - return new Keccak(bits2, padding, outputBits).update(message)[outputType](); - }; - }; - var createCshakeOutputMethod = function(bits2, padding, outputType) { - return function(message, outputBits, n, s) { - return methods["cshake" + bits2].update(message, outputBits, n, s)[outputType](); - }; - }; - var createKmacOutputMethod = function(bits2, padding, outputType) { - return function(key, message, outputBits, s) { - return methods["kmac" + bits2].update(key, message, outputBits, s)[outputType](); - }; - }; - var createOutputMethods = function(method, createMethod2, bits2, padding) { - for (var i2 = 0; i2 < OUTPUT_TYPES.length; ++i2) { - var type = OUTPUT_TYPES[i2]; - method[type] = createMethod2(bits2, padding, type); - } - return method; - }; - var createMethod = function(bits2, padding) { - var method = createOutputMethod(bits2, padding, "hex"); - method.create = function() { - return new Keccak(bits2, padding, bits2); - }; - method.update = function(message) { - return method.create().update(message); - }; - return createOutputMethods(method, createOutputMethod, bits2, padding); - }; - var createShakeMethod = function(bits2, padding) { - var method = createShakeOutputMethod(bits2, padding, "hex"); - method.create = function(outputBits) { - return new Keccak(bits2, padding, outputBits); - }; - method.update = function(message, outputBits) { - return method.create(outputBits).update(message); - }; - return createOutputMethods(method, createShakeOutputMethod, bits2, padding); - }; - var createCshakeMethod = function(bits2, padding) { - var w = CSHAKE_BYTEPAD[bits2]; - var method = createCshakeOutputMethod(bits2, padding, "hex"); - method.create = function(outputBits, n, s) { - if (!n && !s) { - return methods["shake" + bits2].create(outputBits); - } else { - return new Keccak(bits2, padding, outputBits).bytepad([n, s], w); - } - }; - method.update = function(message, outputBits, n, s) { - return method.create(outputBits, n, s).update(message); - }; - return createOutputMethods(method, createCshakeOutputMethod, bits2, padding); - }; - var createKmacMethod = function(bits2, padding) { - var w = CSHAKE_BYTEPAD[bits2]; - var method = createKmacOutputMethod(bits2, padding, "hex"); - method.create = function(key, outputBits, s) { - return new Kmac(bits2, padding, outputBits).bytepad(["KMAC", s], w).bytepad([key], w); - }; - method.update = function(key, message, outputBits, s) { - return method.create(key, outputBits, s).update(message); - }; - return createOutputMethods(method, createKmacOutputMethod, bits2, padding); - }; - var algorithms = [ - { name: "keccak", padding: KECCAK_PADDING, bits: BITS, createMethod }, - { name: "sha3", padding: PADDING, bits: BITS, createMethod }, - { name: "shake", padding: SHAKE_PADDING, bits: SHAKE_BITS, createMethod: createShakeMethod }, - { name: "cshake", padding: CSHAKE_PADDING, bits: SHAKE_BITS, createMethod: createCshakeMethod }, - { name: "kmac", padding: CSHAKE_PADDING, bits: SHAKE_BITS, createMethod: createKmacMethod } - ]; - var methods = {}, methodNames = []; - for (var i = 0; i < algorithms.length; ++i) { - var algorithm = algorithms[i]; - var bits = algorithm.bits; - for (var j = 0; j < bits.length; ++j) { - var methodName = algorithm.name + "_" + bits[j]; - methodNames.push(methodName); - methods[methodName] = algorithm.createMethod(bits[j], algorithm.padding); - if (algorithm.name !== "sha3") { - var newMethodName = algorithm.name + bits[j]; - methodNames.push(newMethodName); - methods[newMethodName] = methods[methodName]; - } - } - } - function Keccak(bits2, padding, outputBits) { - this.blocks = []; - this.s = []; - this.padding = padding; - this.outputBits = outputBits; - this.reset = true; - this.finalized = false; - this.block = 0; - this.start = 0; - this.blockCount = 1600 - (bits2 << 1) >> 5; - this.byteCount = this.blockCount << 2; - this.outputBlocks = outputBits >> 5; - this.extraBytes = (outputBits & 31) >> 3; - for (var i2 = 0; i2 < 50; ++i2) { - this.s[i2] = 0; - } - } - Keccak.prototype.update = function(message) { - if (this.finalized) { - throw new Error(FINALIZE_ERROR); - } - var notString, type = typeof message; - if (type !== "string") { - if (type === "object") { - if (message === null) { - throw new Error(INPUT_ERROR); - } else if (ARRAY_BUFFER && message.constructor === ArrayBuffer) { - message = new Uint8Array(message); - } else if (!Array.isArray(message)) { - if (!ARRAY_BUFFER || !ArrayBuffer.isView(message)) { - throw new Error(INPUT_ERROR); - } - } - } else { - throw new Error(INPUT_ERROR); - } - notString = true; - } - var blocks = this.blocks, byteCount = this.byteCount, length = message.length, blockCount = this.blockCount, index = 0, s = this.s, i2, code; - while (index < length) { - if (this.reset) { - this.reset = false; - blocks[0] = this.block; - for (i2 = 1; i2 < blockCount + 1; ++i2) { - blocks[i2] = 0; - } - } - if (notString) { - for (i2 = this.start; index < length && i2 < byteCount; ++index) { - blocks[i2 >> 2] |= message[index] << SHIFT[i2++ & 3]; - } - } else { - for (i2 = this.start; index < length && i2 < byteCount; ++index) { - code = message.charCodeAt(index); - if (code < 128) { - blocks[i2 >> 2] |= code << SHIFT[i2++ & 3]; - } else if (code < 2048) { - blocks[i2 >> 2] |= (192 | code >> 6) << SHIFT[i2++ & 3]; - blocks[i2 >> 2] |= (128 | code & 63) << SHIFT[i2++ & 3]; - } else if (code < 55296 || code >= 57344) { - blocks[i2 >> 2] |= (224 | code >> 12) << SHIFT[i2++ & 3]; - blocks[i2 >> 2] |= (128 | code >> 6 & 63) << SHIFT[i2++ & 3]; - blocks[i2 >> 2] |= (128 | code & 63) << SHIFT[i2++ & 3]; - } else { - code = 65536 + ((code & 1023) << 10 | message.charCodeAt(++index) & 1023); - blocks[i2 >> 2] |= (240 | code >> 18) << SHIFT[i2++ & 3]; - blocks[i2 >> 2] |= (128 | code >> 12 & 63) << SHIFT[i2++ & 3]; - blocks[i2 >> 2] |= (128 | code >> 6 & 63) << SHIFT[i2++ & 3]; - blocks[i2 >> 2] |= (128 | code & 63) << SHIFT[i2++ & 3]; - } - } - } - this.lastByteIndex = i2; - if (i2 >= byteCount) { - this.start = i2 - byteCount; - this.block = blocks[blockCount]; - for (i2 = 0; i2 < blockCount; ++i2) { - s[i2] ^= blocks[i2]; - } - f(s); - this.reset = true; - } else { - this.start = i2; - } - } - return this; - }; - Keccak.prototype.encode = function(x, right) { - var o = x & 255, n = 1; - var bytes = [o]; - x = x >> 8; - o = x & 255; - while (o > 0) { - bytes.unshift(o); - x = x >> 8; - o = x & 255; - ++n; - } - if (right) { - bytes.push(n); - } else { - bytes.unshift(n); - } - this.update(bytes); - return bytes.length; - }; - Keccak.prototype.encodeString = function(str) { - var notString, type = typeof str; - if (type !== "string") { - if (type === "object") { - if (str === null) { - throw new Error(INPUT_ERROR); - } else if (ARRAY_BUFFER && str.constructor === ArrayBuffer) { - str = new Uint8Array(str); - } else if (!Array.isArray(str)) { - if (!ARRAY_BUFFER || !ArrayBuffer.isView(str)) { - throw new Error(INPUT_ERROR); - } - } - } else { - throw new Error(INPUT_ERROR); - } - notString = true; - } - var bytes = 0, length = str.length; - if (notString) { - bytes = length; - } else { - for (var i2 = 0; i2 < str.length; ++i2) { - var code = str.charCodeAt(i2); - if (code < 128) { - bytes += 1; - } else if (code < 2048) { - bytes += 2; - } else if (code < 55296 || code >= 57344) { - bytes += 3; - } else { - code = 65536 + ((code & 1023) << 10 | str.charCodeAt(++i2) & 1023); - bytes += 4; - } - } - } - bytes += this.encode(bytes * 8); - this.update(str); - return bytes; - }; - Keccak.prototype.bytepad = function(strs, w) { - var bytes = this.encode(w); - for (var i2 = 0; i2 < strs.length; ++i2) { - bytes += this.encodeString(strs[i2]); - } - var paddingBytes = w - bytes % w; - var zeros = []; - zeros.length = paddingBytes; - this.update(zeros); - return this; - }; - Keccak.prototype.finalize = function() { - if (this.finalized) { - return; - } - this.finalized = true; - var blocks = this.blocks, i2 = this.lastByteIndex, blockCount = this.blockCount, s = this.s; - blocks[i2 >> 2] |= this.padding[i2 & 3]; - if (this.lastByteIndex === this.byteCount) { - blocks[0] = blocks[blockCount]; - for (i2 = 1; i2 < blockCount + 1; ++i2) { - blocks[i2] = 0; - } - } - blocks[blockCount - 1] |= 2147483648; - for (i2 = 0; i2 < blockCount; ++i2) { - s[i2] ^= blocks[i2]; - } - f(s); - }; - Keccak.prototype.toString = Keccak.prototype.hex = function() { - this.finalize(); - var blockCount = this.blockCount, s = this.s, outputBlocks = this.outputBlocks, extraBytes = this.extraBytes, i2 = 0, j2 = 0; - var hex = "", block; - while (j2 < outputBlocks) { - for (i2 = 0; i2 < blockCount && j2 < outputBlocks; ++i2, ++j2) { - block = s[i2]; - hex += HEX_CHARS[block >> 4 & 15] + HEX_CHARS[block & 15] + HEX_CHARS[block >> 12 & 15] + HEX_CHARS[block >> 8 & 15] + HEX_CHARS[block >> 20 & 15] + HEX_CHARS[block >> 16 & 15] + HEX_CHARS[block >> 28 & 15] + HEX_CHARS[block >> 24 & 15]; - } - if (j2 % blockCount === 0) { - f(s); - i2 = 0; - } - } - if (extraBytes) { - block = s[i2]; - hex += HEX_CHARS[block >> 4 & 15] + HEX_CHARS[block & 15]; - if (extraBytes > 1) { - hex += HEX_CHARS[block >> 12 & 15] + HEX_CHARS[block >> 8 & 15]; - } - if (extraBytes > 2) { - hex += HEX_CHARS[block >> 20 & 15] + HEX_CHARS[block >> 16 & 15]; - } - } - return hex; - }; - Keccak.prototype.arrayBuffer = function() { - this.finalize(); - var blockCount = this.blockCount, s = this.s, outputBlocks = this.outputBlocks, extraBytes = this.extraBytes, i2 = 0, j2 = 0; - var bytes = this.outputBits >> 3; - var buffer; - if (extraBytes) { - buffer = new ArrayBuffer(outputBlocks + 1 << 2); - } else { - buffer = new ArrayBuffer(bytes); - } - var array = new Uint32Array(buffer); - while (j2 < outputBlocks) { - for (i2 = 0; i2 < blockCount && j2 < outputBlocks; ++i2, ++j2) { - array[j2] = s[i2]; - } - if (j2 % blockCount === 0) { - f(s); - } - } - if (extraBytes) { - array[i2] = s[i2]; - buffer = buffer.slice(0, bytes); - } - return buffer; - }; - Keccak.prototype.buffer = Keccak.prototype.arrayBuffer; - Keccak.prototype.digest = Keccak.prototype.array = function() { - this.finalize(); - var blockCount = this.blockCount, s = this.s, outputBlocks = this.outputBlocks, extraBytes = this.extraBytes, i2 = 0, j2 = 0; - var array = [], offset, block; - while (j2 < outputBlocks) { - for (i2 = 0; i2 < blockCount && j2 < outputBlocks; ++i2, ++j2) { - offset = j2 << 2; - block = s[i2]; - array[offset] = block & 255; - array[offset + 1] = block >> 8 & 255; - array[offset + 2] = block >> 16 & 255; - array[offset + 3] = block >> 24 & 255; - } - if (j2 % blockCount === 0) { - f(s); - } - } - if (extraBytes) { - offset = j2 << 2; - block = s[i2]; - array[offset] = block & 255; - if (extraBytes > 1) { - array[offset + 1] = block >> 8 & 255; - } - if (extraBytes > 2) { - array[offset + 2] = block >> 16 & 255; - } - } - return array; - }; - function Kmac(bits2, padding, outputBits) { - Keccak.call(this, bits2, padding, outputBits); - } - Kmac.prototype = new Keccak(); - Kmac.prototype.finalize = function() { - this.encode(this.outputBits, true); - return Keccak.prototype.finalize.call(this); - }; - var f = function(s) { - var h, l, n, c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32, b33, b34, b35, b36, b37, b38, b39, b40, b41, b42, b43, b44, b45, b46, b47, b48, b49; - for (n = 0; n < 48; n += 2) { - c0 = s[0] ^ s[10] ^ s[20] ^ s[30] ^ s[40]; - c1 = s[1] ^ s[11] ^ s[21] ^ s[31] ^ s[41]; - c2 = s[2] ^ s[12] ^ s[22] ^ s[32] ^ s[42]; - c3 = s[3] ^ s[13] ^ s[23] ^ s[33] ^ s[43]; - c4 = s[4] ^ s[14] ^ s[24] ^ s[34] ^ s[44]; - c5 = s[5] ^ s[15] ^ s[25] ^ s[35] ^ s[45]; - c6 = s[6] ^ s[16] ^ s[26] ^ s[36] ^ s[46]; - c7 = s[7] ^ s[17] ^ s[27] ^ s[37] ^ s[47]; - c8 = s[8] ^ s[18] ^ s[28] ^ s[38] ^ s[48]; - c9 = s[9] ^ s[19] ^ s[29] ^ s[39] ^ s[49]; - h = c8 ^ (c2 << 1 | c3 >>> 31); - l = c9 ^ (c3 << 1 | c2 >>> 31); - s[0] ^= h; - s[1] ^= l; - s[10] ^= h; - s[11] ^= l; - s[20] ^= h; - s[21] ^= l; - s[30] ^= h; - s[31] ^= l; - s[40] ^= h; - s[41] ^= l; - h = c0 ^ (c4 << 1 | c5 >>> 31); - l = c1 ^ (c5 << 1 | c4 >>> 31); - s[2] ^= h; - s[3] ^= l; - s[12] ^= h; - s[13] ^= l; - s[22] ^= h; - s[23] ^= l; - s[32] ^= h; - s[33] ^= l; - s[42] ^= h; - s[43] ^= l; - h = c2 ^ (c6 << 1 | c7 >>> 31); - l = c3 ^ (c7 << 1 | c6 >>> 31); - s[4] ^= h; - s[5] ^= l; - s[14] ^= h; - s[15] ^= l; - s[24] ^= h; - s[25] ^= l; - s[34] ^= h; - s[35] ^= l; - s[44] ^= h; - s[45] ^= l; - h = c4 ^ (c8 << 1 | c9 >>> 31); - l = c5 ^ (c9 << 1 | c8 >>> 31); - s[6] ^= h; - s[7] ^= l; - s[16] ^= h; - s[17] ^= l; - s[26] ^= h; - s[27] ^= l; - s[36] ^= h; - s[37] ^= l; - s[46] ^= h; - s[47] ^= l; - h = c6 ^ (c0 << 1 | c1 >>> 31); - l = c7 ^ (c1 << 1 | c0 >>> 31); - s[8] ^= h; - s[9] ^= l; - s[18] ^= h; - s[19] ^= l; - s[28] ^= h; - s[29] ^= l; - s[38] ^= h; - s[39] ^= l; - s[48] ^= h; - s[49] ^= l; - b0 = s[0]; - b1 = s[1]; - b32 = s[11] << 4 | s[10] >>> 28; - b33 = s[10] << 4 | s[11] >>> 28; - b14 = s[20] << 3 | s[21] >>> 29; - b15 = s[21] << 3 | s[20] >>> 29; - b46 = s[31] << 9 | s[30] >>> 23; - b47 = s[30] << 9 | s[31] >>> 23; - b28 = s[40] << 18 | s[41] >>> 14; - b29 = s[41] << 18 | s[40] >>> 14; - b20 = s[2] << 1 | s[3] >>> 31; - b21 = s[3] << 1 | s[2] >>> 31; - b2 = s[13] << 12 | s[12] >>> 20; - b3 = s[12] << 12 | s[13] >>> 20; - b34 = s[22] << 10 | s[23] >>> 22; - b35 = s[23] << 10 | s[22] >>> 22; - b16 = s[33] << 13 | s[32] >>> 19; - b17 = s[32] << 13 | s[33] >>> 19; - b48 = s[42] << 2 | s[43] >>> 30; - b49 = s[43] << 2 | s[42] >>> 30; - b40 = s[5] << 30 | s[4] >>> 2; - b41 = s[4] << 30 | s[5] >>> 2; - b22 = s[14] << 6 | s[15] >>> 26; - b23 = s[15] << 6 | s[14] >>> 26; - b4 = s[25] << 11 | s[24] >>> 21; - b5 = s[24] << 11 | s[25] >>> 21; - b36 = s[34] << 15 | s[35] >>> 17; - b37 = s[35] << 15 | s[34] >>> 17; - b18 = s[45] << 29 | s[44] >>> 3; - b19 = s[44] << 29 | s[45] >>> 3; - b10 = s[6] << 28 | s[7] >>> 4; - b11 = s[7] << 28 | s[6] >>> 4; - b42 = s[17] << 23 | s[16] >>> 9; - b43 = s[16] << 23 | s[17] >>> 9; - b24 = s[26] << 25 | s[27] >>> 7; - b25 = s[27] << 25 | s[26] >>> 7; - b6 = s[36] << 21 | s[37] >>> 11; - b7 = s[37] << 21 | s[36] >>> 11; - b38 = s[47] << 24 | s[46] >>> 8; - b39 = s[46] << 24 | s[47] >>> 8; - b30 = s[8] << 27 | s[9] >>> 5; - b31 = s[9] << 27 | s[8] >>> 5; - b12 = s[18] << 20 | s[19] >>> 12; - b13 = s[19] << 20 | s[18] >>> 12; - b44 = s[29] << 7 | s[28] >>> 25; - b45 = s[28] << 7 | s[29] >>> 25; - b26 = s[38] << 8 | s[39] >>> 24; - b27 = s[39] << 8 | s[38] >>> 24; - b8 = s[48] << 14 | s[49] >>> 18; - b9 = s[49] << 14 | s[48] >>> 18; - s[0] = b0 ^ ~b2 & b4; - s[1] = b1 ^ ~b3 & b5; - s[10] = b10 ^ ~b12 & b14; - s[11] = b11 ^ ~b13 & b15; - s[20] = b20 ^ ~b22 & b24; - s[21] = b21 ^ ~b23 & b25; - s[30] = b30 ^ ~b32 & b34; - s[31] = b31 ^ ~b33 & b35; - s[40] = b40 ^ ~b42 & b44; - s[41] = b41 ^ ~b43 & b45; - s[2] = b2 ^ ~b4 & b6; - s[3] = b3 ^ ~b5 & b7; - s[12] = b12 ^ ~b14 & b16; - s[13] = b13 ^ ~b15 & b17; - s[22] = b22 ^ ~b24 & b26; - s[23] = b23 ^ ~b25 & b27; - s[32] = b32 ^ ~b34 & b36; - s[33] = b33 ^ ~b35 & b37; - s[42] = b42 ^ ~b44 & b46; - s[43] = b43 ^ ~b45 & b47; - s[4] = b4 ^ ~b6 & b8; - s[5] = b5 ^ ~b7 & b9; - s[14] = b14 ^ ~b16 & b18; - s[15] = b15 ^ ~b17 & b19; - s[24] = b24 ^ ~b26 & b28; - s[25] = b25 ^ ~b27 & b29; - s[34] = b34 ^ ~b36 & b38; - s[35] = b35 ^ ~b37 & b39; - s[44] = b44 ^ ~b46 & b48; - s[45] = b45 ^ ~b47 & b49; - s[6] = b6 ^ ~b8 & b0; - s[7] = b7 ^ ~b9 & b1; - s[16] = b16 ^ ~b18 & b10; - s[17] = b17 ^ ~b19 & b11; - s[26] = b26 ^ ~b28 & b20; - s[27] = b27 ^ ~b29 & b21; - s[36] = b36 ^ ~b38 & b30; - s[37] = b37 ^ ~b39 & b31; - s[46] = b46 ^ ~b48 & b40; - s[47] = b47 ^ ~b49 & b41; - s[8] = b8 ^ ~b0 & b2; - s[9] = b9 ^ ~b1 & b3; - s[18] = b18 ^ ~b10 & b12; - s[19] = b19 ^ ~b11 & b13; - s[28] = b28 ^ ~b20 & b22; - s[29] = b29 ^ ~b21 & b23; - s[38] = b38 ^ ~b30 & b32; - s[39] = b39 ^ ~b31 & b33; - s[48] = b48 ^ ~b40 & b42; - s[49] = b49 ^ ~b41 & b43; - s[0] ^= RC[n]; - s[1] ^= RC[n + 1]; - } - }; - if (COMMON_JS) { - module2.exports = methods; - } else { - for (i = 0; i < methodNames.length; ++i) { - root[methodNames[i]] = methods[methodNames[i]]; - } - if (AMD) { - define(function() { - return methods; - }); - } - } - })(); - } -}); - -// node_modules/@ethersproject/keccak256/lib/index.js -var require_lib10 = __commonJS({ - "node_modules/@ethersproject/keccak256/lib/index.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.keccak256 = void 0; - var js_sha3_1 = __importDefault(require_sha3()); - var bytes_1 = require_lib2(); - function keccak256(data) { - return "0x" + js_sha3_1.default.keccak_256((0, bytes_1.arrayify)(data)); - } - exports2.keccak256 = keccak256; - } -}); - -// node_modules/@ethersproject/strings/lib/_version.js -var require_version7 = __commonJS({ - "node_modules/@ethersproject/strings/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "strings/5.7.0"; - } -}); - -// node_modules/@ethersproject/strings/lib/utf8.js -var require_utf8 = __commonJS({ - "node_modules/@ethersproject/strings/lib/utf8.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toUtf8CodePoints = exports2.toUtf8String = exports2._toUtf8String = exports2._toEscapedUtf8String = exports2.toUtf8Bytes = exports2.Utf8ErrorFuncs = exports2.Utf8ErrorReason = exports2.UnicodeNormalizationForm = void 0; - var bytes_1 = require_lib2(); - var logger_1 = require_lib(); - var _version_1 = require_version7(); - var logger = new logger_1.Logger(_version_1.version); - var UnicodeNormalizationForm; - (function(UnicodeNormalizationForm2) { - UnicodeNormalizationForm2["current"] = ""; - UnicodeNormalizationForm2["NFC"] = "NFC"; - UnicodeNormalizationForm2["NFD"] = "NFD"; - UnicodeNormalizationForm2["NFKC"] = "NFKC"; - UnicodeNormalizationForm2["NFKD"] = "NFKD"; - })(UnicodeNormalizationForm = exports2.UnicodeNormalizationForm || (exports2.UnicodeNormalizationForm = {})); - var Utf8ErrorReason; - (function(Utf8ErrorReason2) { - Utf8ErrorReason2["UNEXPECTED_CONTINUE"] = "unexpected continuation byte"; - Utf8ErrorReason2["BAD_PREFIX"] = "bad codepoint prefix"; - Utf8ErrorReason2["OVERRUN"] = "string overrun"; - Utf8ErrorReason2["MISSING_CONTINUE"] = "missing continuation byte"; - Utf8ErrorReason2["OUT_OF_RANGE"] = "out of UTF-8 range"; - Utf8ErrorReason2["UTF16_SURROGATE"] = "UTF-16 surrogate"; - Utf8ErrorReason2["OVERLONG"] = "overlong representation"; - })(Utf8ErrorReason = exports2.Utf8ErrorReason || (exports2.Utf8ErrorReason = {})); - function errorFunc(reason, offset, bytes, output, badCodepoint) { - return logger.throwArgumentError("invalid codepoint at offset " + offset + "; " + reason, "bytes", bytes); - } - function ignoreFunc(reason, offset, bytes, output, badCodepoint) { - if (reason === Utf8ErrorReason.BAD_PREFIX || reason === Utf8ErrorReason.UNEXPECTED_CONTINUE) { - var i = 0; - for (var o = offset + 1; o < bytes.length; o++) { - if (bytes[o] >> 6 !== 2) { - break; - } - i++; - } - return i; - } - if (reason === Utf8ErrorReason.OVERRUN) { - return bytes.length - offset - 1; - } - return 0; - } - function replaceFunc(reason, offset, bytes, output, badCodepoint) { - if (reason === Utf8ErrorReason.OVERLONG) { - output.push(badCodepoint); - return 0; - } - output.push(65533); - return ignoreFunc(reason, offset, bytes, output, badCodepoint); - } - exports2.Utf8ErrorFuncs = Object.freeze({ - error: errorFunc, - ignore: ignoreFunc, - replace: replaceFunc - }); - function getUtf8CodePoints(bytes, onError) { - if (onError == null) { - onError = exports2.Utf8ErrorFuncs.error; - } - bytes = (0, bytes_1.arrayify)(bytes); - var result = []; - var i = 0; - while (i < bytes.length) { - var c = bytes[i++]; - if (c >> 7 === 0) { - result.push(c); - continue; - } - var extraLength = null; - var overlongMask = null; - if ((c & 224) === 192) { - extraLength = 1; - overlongMask = 127; - } else if ((c & 240) === 224) { - extraLength = 2; - overlongMask = 2047; - } else if ((c & 248) === 240) { - extraLength = 3; - overlongMask = 65535; - } else { - if ((c & 192) === 128) { - i += onError(Utf8ErrorReason.UNEXPECTED_CONTINUE, i - 1, bytes, result); - } else { - i += onError(Utf8ErrorReason.BAD_PREFIX, i - 1, bytes, result); - } - continue; - } - if (i - 1 + extraLength >= bytes.length) { - i += onError(Utf8ErrorReason.OVERRUN, i - 1, bytes, result); - continue; - } - var res = c & (1 << 8 - extraLength - 1) - 1; - for (var j = 0; j < extraLength; j++) { - var nextChar = bytes[i]; - if ((nextChar & 192) != 128) { - i += onError(Utf8ErrorReason.MISSING_CONTINUE, i, bytes, result); - res = null; - break; - } - ; - res = res << 6 | nextChar & 63; - i++; - } - if (res === null) { - continue; - } - if (res > 1114111) { - i += onError(Utf8ErrorReason.OUT_OF_RANGE, i - 1 - extraLength, bytes, result, res); - continue; - } - if (res >= 55296 && res <= 57343) { - i += onError(Utf8ErrorReason.UTF16_SURROGATE, i - 1 - extraLength, bytes, result, res); - continue; - } - if (res <= overlongMask) { - i += onError(Utf8ErrorReason.OVERLONG, i - 1 - extraLength, bytes, result, res); - continue; - } - result.push(res); - } - return result; - } - function toUtf8Bytes(str, form) { - if (form === void 0) { - form = UnicodeNormalizationForm.current; - } - if (form != UnicodeNormalizationForm.current) { - logger.checkNormalize(); - str = str.normalize(form); - } - var result = []; - for (var i = 0; i < str.length; i++) { - var c = str.charCodeAt(i); - if (c < 128) { - result.push(c); - } else if (c < 2048) { - result.push(c >> 6 | 192); - result.push(c & 63 | 128); - } else if ((c & 64512) == 55296) { - i++; - var c2 = str.charCodeAt(i); - if (i >= str.length || (c2 & 64512) !== 56320) { - throw new Error("invalid utf-8 string"); - } - var pair = 65536 + ((c & 1023) << 10) + (c2 & 1023); - result.push(pair >> 18 | 240); - result.push(pair >> 12 & 63 | 128); - result.push(pair >> 6 & 63 | 128); - result.push(pair & 63 | 128); - } else { - result.push(c >> 12 | 224); - result.push(c >> 6 & 63 | 128); - result.push(c & 63 | 128); - } - } - return (0, bytes_1.arrayify)(result); - } - exports2.toUtf8Bytes = toUtf8Bytes; - function escapeChar(value) { - var hex = "0000" + value.toString(16); - return "\\u" + hex.substring(hex.length - 4); - } - function _toEscapedUtf8String(bytes, onError) { - return '"' + getUtf8CodePoints(bytes, onError).map(function(codePoint) { - if (codePoint < 256) { - switch (codePoint) { - case 8: - return "\\b"; - case 9: - return "\\t"; - case 10: - return "\\n"; - case 13: - return "\\r"; - case 34: - return '\\"'; - case 92: - return "\\\\"; - } - if (codePoint >= 32 && codePoint < 127) { - return String.fromCharCode(codePoint); - } - } - if (codePoint <= 65535) { - return escapeChar(codePoint); - } - codePoint -= 65536; - return escapeChar((codePoint >> 10 & 1023) + 55296) + escapeChar((codePoint & 1023) + 56320); - }).join("") + '"'; - } - exports2._toEscapedUtf8String = _toEscapedUtf8String; - function _toUtf8String(codePoints) { - return codePoints.map(function(codePoint) { - if (codePoint <= 65535) { - return String.fromCharCode(codePoint); - } - codePoint -= 65536; - return String.fromCharCode((codePoint >> 10 & 1023) + 55296, (codePoint & 1023) + 56320); - }).join(""); - } - exports2._toUtf8String = _toUtf8String; - function toUtf8String(bytes, onError) { - return _toUtf8String(getUtf8CodePoints(bytes, onError)); - } - exports2.toUtf8String = toUtf8String; - function toUtf8CodePoints(str, form) { - if (form === void 0) { - form = UnicodeNormalizationForm.current; - } - return getUtf8CodePoints(toUtf8Bytes(str, form)); - } - exports2.toUtf8CodePoints = toUtf8CodePoints; - } -}); - -// node_modules/@ethersproject/strings/lib/bytes32.js -var require_bytes32 = __commonJS({ - "node_modules/@ethersproject/strings/lib/bytes32.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.parseBytes32String = exports2.formatBytes32String = void 0; - var constants_1 = require_lib9(); - var bytes_1 = require_lib2(); - var utf8_1 = require_utf8(); - function formatBytes32String(text) { - var bytes = (0, utf8_1.toUtf8Bytes)(text); - if (bytes.length > 31) { - throw new Error("bytes32 string must be less than 32 bytes"); - } - return (0, bytes_1.hexlify)((0, bytes_1.concat)([bytes, constants_1.HashZero]).slice(0, 32)); - } - exports2.formatBytes32String = formatBytes32String; - function parseBytes32String(bytes) { - var data = (0, bytes_1.arrayify)(bytes); - if (data.length !== 32) { - throw new Error("invalid bytes32 - not 32 bytes long"); - } - if (data[31] !== 0) { - throw new Error("invalid bytes32 string - no null terminator"); - } - var length = 31; - while (data[length - 1] === 0) { - length--; - } - return (0, utf8_1.toUtf8String)(data.slice(0, length)); - } - exports2.parseBytes32String = parseBytes32String; - } -}); - -// node_modules/@ethersproject/strings/lib/idna.js -var require_idna = __commonJS({ - "node_modules/@ethersproject/strings/lib/idna.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.nameprep = exports2._nameprepTableC = exports2._nameprepTableB2 = exports2._nameprepTableA1 = void 0; - var utf8_1 = require_utf8(); - function bytes2(data) { - if (data.length % 4 !== 0) { - throw new Error("bad data"); - } - var result = []; - for (var i = 0; i < data.length; i += 4) { - result.push(parseInt(data.substring(i, i + 4), 16)); - } - return result; - } - function createTable(data, func) { - if (!func) { - func = function(value) { - return [parseInt(value, 16)]; - }; - } - var lo = 0; - var result = {}; - data.split(",").forEach(function(pair) { - var comps = pair.split(":"); - lo += parseInt(comps[0], 16); - result[lo] = func(comps[1]); - }); - return result; - } - function createRangeTable(data) { - var hi = 0; - return data.split(",").map(function(v) { - var comps = v.split("-"); - if (comps.length === 1) { - comps[1] = "0"; - } else if (comps[1] === "") { - comps[1] = "1"; - } - var lo = hi + parseInt(comps[0], 16); - hi = parseInt(comps[1], 16); - return { l: lo, h: hi }; - }); - } - function matchMap(value, ranges) { - var lo = 0; - for (var i = 0; i < ranges.length; i++) { - var range = ranges[i]; - lo += range.l; - if (value >= lo && value <= lo + range.h && (value - lo) % (range.d || 1) === 0) { - if (range.e && range.e.indexOf(value - lo) !== -1) { - continue; - } - return range; - } - } - return null; - } - var Table_A_1_ranges = createRangeTable("221,13-1b,5f-,40-10,51-f,11-3,3-3,2-2,2-4,8,2,15,2d,28-8,88,48,27-,3-5,11-20,27-,8,28,3-5,12,18,b-a,1c-4,6-16,2-d,2-2,2,1b-4,17-9,8f-,10,f,1f-2,1c-34,33-14e,4,36-,13-,6-2,1a-f,4,9-,3-,17,8,2-2,5-,2,8-,3-,4-8,2-3,3,6-,16-6,2-,7-3,3-,17,8,3,3,3-,2,6-3,3-,4-a,5,2-6,10-b,4,8,2,4,17,8,3,6-,b,4,4-,2-e,2-4,b-10,4,9-,3-,17,8,3-,5-,9-2,3-,4-7,3-3,3,4-3,c-10,3,7-2,4,5-2,3,2,3-2,3-2,4-2,9,4-3,6-2,4,5-8,2-e,d-d,4,9,4,18,b,6-3,8,4,5-6,3-8,3-3,b-11,3,9,4,18,b,6-3,8,4,5-6,3-6,2,3-3,b-11,3,9,4,18,11-3,7-,4,5-8,2-7,3-3,b-11,3,13-2,19,a,2-,8-2,2-3,7,2,9-11,4-b,3b-3,1e-24,3,2-,3,2-,2-5,5,8,4,2,2-,3,e,4-,6,2,7-,b-,3-21,49,23-5,1c-3,9,25,10-,2-2f,23,6,3,8-2,5-5,1b-45,27-9,2a-,2-3,5b-4,45-4,53-5,8,40,2,5-,8,2,5-,28,2,5-,20,2,5-,8,2,5-,8,8,18,20,2,5-,8,28,14-5,1d-22,56-b,277-8,1e-2,52-e,e,8-a,18-8,15-b,e,4,3-b,5e-2,b-15,10,b-5,59-7,2b-555,9d-3,5b-5,17-,7-,27-,7-,9,2,2,2,20-,36,10,f-,7,14-,4,a,54-3,2-6,6-5,9-,1c-10,13-1d,1c-14,3c-,10-6,32-b,240-30,28-18,c-14,a0,115-,3,66-,b-76,5,5-,1d,24,2,5-2,2,8-,35-2,19,f-10,1d-3,311-37f,1b,5a-b,d7-19,d-3,41,57-,68-4,29-3,5f,29-37,2e-2,25-c,2c-2,4e-3,30,78-3,64-,20,19b7-49,51a7-59,48e-2,38-738,2ba5-5b,222f-,3c-94,8-b,6-4,1b,6,2,3,3,6d-20,16e-f,41-,37-7,2e-2,11-f,5-b,18-,b,14,5-3,6,88-,2,bf-2,7-,7-,7-,4-2,8,8-9,8-2ff,20,5-b,1c-b4,27-,27-cbb1,f7-9,28-2,b5-221,56,48,3-,2-,3-,5,d,2,5,3,42,5-,9,8,1d,5,6,2-2,8,153-3,123-3,33-27fd,a6da-5128,21f-5df,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3-fffd,3,2-1d,61-ff7d"); - var Table_B_1_flags = "ad,34f,1806,180b,180c,180d,200b,200c,200d,2060,feff".split(",").map(function(v) { - return parseInt(v, 16); - }); - var Table_B_2_ranges = [ - { h: 25, s: 32, l: 65 }, - { h: 30, s: 32, e: [23], l: 127 }, - { h: 54, s: 1, e: [48], l: 64, d: 2 }, - { h: 14, s: 1, l: 57, d: 2 }, - { h: 44, s: 1, l: 17, d: 2 }, - { h: 10, s: 1, e: [2, 6, 8], l: 61, d: 2 }, - { h: 16, s: 1, l: 68, d: 2 }, - { h: 84, s: 1, e: [18, 24, 66], l: 19, d: 2 }, - { h: 26, s: 32, e: [17], l: 435 }, - { h: 22, s: 1, l: 71, d: 2 }, - { h: 15, s: 80, l: 40 }, - { h: 31, s: 32, l: 16 }, - { h: 32, s: 1, l: 80, d: 2 }, - { h: 52, s: 1, l: 42, d: 2 }, - { h: 12, s: 1, l: 55, d: 2 }, - { h: 40, s: 1, e: [38], l: 15, d: 2 }, - { h: 14, s: 1, l: 48, d: 2 }, - { h: 37, s: 48, l: 49 }, - { h: 148, s: 1, l: 6351, d: 2 }, - { h: 88, s: 1, l: 160, d: 2 }, - { h: 15, s: 16, l: 704 }, - { h: 25, s: 26, l: 854 }, - { h: 25, s: 32, l: 55915 }, - { h: 37, s: 40, l: 1247 }, - { h: 25, s: -119711, l: 53248 }, - { h: 25, s: -119763, l: 52 }, - { h: 25, s: -119815, l: 52 }, - { h: 25, s: -119867, e: [1, 4, 5, 7, 8, 11, 12, 17], l: 52 }, - { h: 25, s: -119919, l: 52 }, - { h: 24, s: -119971, e: [2, 7, 8, 17], l: 52 }, - { h: 24, s: -120023, e: [2, 7, 13, 15, 16, 17], l: 52 }, - { h: 25, s: -120075, l: 52 }, - { h: 25, s: -120127, l: 52 }, - { h: 25, s: -120179, l: 52 }, - { h: 25, s: -120231, l: 52 }, - { h: 25, s: -120283, l: 52 }, - { h: 25, s: -120335, l: 52 }, - { h: 24, s: -119543, e: [17], l: 56 }, - { h: 24, s: -119601, e: [17], l: 58 }, - { h: 24, s: -119659, e: [17], l: 58 }, - { h: 24, s: -119717, e: [17], l: 58 }, - { h: 24, s: -119775, e: [17], l: 58 } - ]; - var Table_B_2_lut_abs = createTable("b5:3bc,c3:ff,7:73,2:253,5:254,3:256,1:257,5:259,1:25b,3:260,1:263,2:269,1:268,5:26f,1:272,2:275,7:280,3:283,5:288,3:28a,1:28b,5:292,3f:195,1:1bf,29:19e,125:3b9,8b:3b2,1:3b8,1:3c5,3:3c6,1:3c0,1a:3ba,1:3c1,1:3c3,2:3b8,1:3b5,1bc9:3b9,1c:1f76,1:1f77,f:1f7a,1:1f7b,d:1f78,1:1f79,1:1f7c,1:1f7d,107:63,5:25b,4:68,1:68,1:68,3:69,1:69,1:6c,3:6e,4:70,1:71,1:72,1:72,1:72,7:7a,2:3c9,2:7a,2:6b,1:e5,1:62,1:63,3:65,1:66,2:6d,b:3b3,1:3c0,6:64,1b574:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3,20:3b8,1a:3c3"); - var Table_B_2_lut_rel = createTable("179:1,2:1,2:1,5:1,2:1,a:4f,a:1,8:1,2:1,2:1,3:1,5:1,3:1,4:1,2:1,3:1,4:1,8:2,1:1,2:2,1:1,2:2,27:2,195:26,2:25,1:25,1:25,2:40,2:3f,1:3f,33:1,11:-6,1:-9,1ac7:-3a,6d:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,b:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,c:-8,2:-8,2:-8,2:-8,9:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,1:-8,49:-8,1:-8,1:-4a,1:-4a,d:-56,1:-56,1:-56,1:-56,d:-8,1:-8,f:-8,1:-8,3:-7"); - var Table_B_2_complex = createTable("df:00730073,51:00690307,19:02BC006E,a7:006A030C,18a:002003B9,16:03B903080301,20:03C503080301,1d7:05650582,190f:00680331,1:00740308,1:0077030A,1:0079030A,1:006102BE,b6:03C50313,2:03C503130300,2:03C503130301,2:03C503130342,2a:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F0003B9,1:1F0103B9,1:1F0203B9,1:1F0303B9,1:1F0403B9,1:1F0503B9,1:1F0603B9,1:1F0703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F2003B9,1:1F2103B9,1:1F2203B9,1:1F2303B9,1:1F2403B9,1:1F2503B9,1:1F2603B9,1:1F2703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,1:1F6003B9,1:1F6103B9,1:1F6203B9,1:1F6303B9,1:1F6403B9,1:1F6503B9,1:1F6603B9,1:1F6703B9,3:1F7003B9,1:03B103B9,1:03AC03B9,2:03B10342,1:03B1034203B9,5:03B103B9,6:1F7403B9,1:03B703B9,1:03AE03B9,2:03B70342,1:03B7034203B9,5:03B703B9,6:03B903080300,1:03B903080301,3:03B90342,1:03B903080342,b:03C503080300,1:03C503080301,1:03C10313,2:03C50342,1:03C503080342,b:1F7C03B9,1:03C903B9,1:03CE03B9,2:03C90342,1:03C9034203B9,5:03C903B9,ac:00720073,5b:00B00063,6:00B00066,d:006E006F,a:0073006D,1:00740065006C,1:0074006D,124f:006800700061,2:00610075,2:006F0076,b:00700061,1:006E0061,1:03BC0061,1:006D0061,1:006B0061,1:006B0062,1:006D0062,1:00670062,3:00700066,1:006E0066,1:03BC0066,4:0068007A,1:006B0068007A,1:006D0068007A,1:00670068007A,1:00740068007A,15:00700061,1:006B00700061,1:006D00700061,1:006700700061,8:00700076,1:006E0076,1:03BC0076,1:006D0076,1:006B0076,1:006D0076,1:00700077,1:006E0077,1:03BC0077,1:006D0077,1:006B0077,1:006D0077,1:006B03C9,1:006D03C9,2:00620071,3:00632215006B0067,1:0063006F002E,1:00640062,1:00670079,2:00680070,2:006B006B,1:006B006D,9:00700068,2:00700070006D,1:00700072,2:00730076,1:00770062,c723:00660066,1:00660069,1:0066006C,1:006600660069,1:00660066006C,1:00730074,1:00730074,d:05740576,1:05740565,1:0574056B,1:057E0576,1:0574056D", bytes2); - var Table_C_ranges = createRangeTable("80-20,2a0-,39c,32,f71,18e,7f2-f,19-7,30-4,7-5,f81-b,5,a800-20ff,4d1-1f,110,fa-6,d174-7,2e84-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,ffff-,2,1f-5f,ff7f-20001"); - function flatten(values) { - return values.reduce(function(accum, value) { - value.forEach(function(value2) { - accum.push(value2); - }); - return accum; - }, []); - } - function _nameprepTableA1(codepoint) { - return !!matchMap(codepoint, Table_A_1_ranges); - } - exports2._nameprepTableA1 = _nameprepTableA1; - function _nameprepTableB2(codepoint) { - var range = matchMap(codepoint, Table_B_2_ranges); - if (range) { - return [codepoint + range.s]; - } - var codes = Table_B_2_lut_abs[codepoint]; - if (codes) { - return codes; - } - var shift = Table_B_2_lut_rel[codepoint]; - if (shift) { - return [codepoint + shift[0]]; - } - var complex = Table_B_2_complex[codepoint]; - if (complex) { - return complex; - } - return null; - } - exports2._nameprepTableB2 = _nameprepTableB2; - function _nameprepTableC(codepoint) { - return !!matchMap(codepoint, Table_C_ranges); - } - exports2._nameprepTableC = _nameprepTableC; - function nameprep(value) { - if (value.match(/^[a-z0-9-]*$/i) && value.length <= 59) { - return value.toLowerCase(); - } - var codes = (0, utf8_1.toUtf8CodePoints)(value); - codes = flatten(codes.map(function(code) { - if (Table_B_1_flags.indexOf(code) >= 0) { - return []; - } - if (code >= 65024 && code <= 65039) { - return []; - } - var codesTableB2 = _nameprepTableB2(code); - if (codesTableB2) { - return codesTableB2; - } - return [code]; - })); - codes = (0, utf8_1.toUtf8CodePoints)((0, utf8_1._toUtf8String)(codes), utf8_1.UnicodeNormalizationForm.NFKC); - codes.forEach(function(code) { - if (_nameprepTableC(code)) { - throw new Error("STRINGPREP_CONTAINS_PROHIBITED"); - } - }); - codes.forEach(function(code) { - if (_nameprepTableA1(code)) { - throw new Error("STRINGPREP_CONTAINS_UNASSIGNED"); - } - }); - var name = (0, utf8_1._toUtf8String)(codes); - if (name.substring(0, 1) === "-" || name.substring(2, 4) === "--" || name.substring(name.length - 1) === "-") { - throw new Error("invalid hyphen"); - } - return name; - } - exports2.nameprep = nameprep; - } -}); - -// node_modules/@ethersproject/strings/lib/index.js -var require_lib11 = __commonJS({ - "node_modules/@ethersproject/strings/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.nameprep = exports2.parseBytes32String = exports2.formatBytes32String = exports2.UnicodeNormalizationForm = exports2.Utf8ErrorReason = exports2.Utf8ErrorFuncs = exports2.toUtf8String = exports2.toUtf8CodePoints = exports2.toUtf8Bytes = exports2._toEscapedUtf8String = void 0; - var bytes32_1 = require_bytes32(); - Object.defineProperty(exports2, "formatBytes32String", { enumerable: true, get: function() { - return bytes32_1.formatBytes32String; - } }); - Object.defineProperty(exports2, "parseBytes32String", { enumerable: true, get: function() { - return bytes32_1.parseBytes32String; - } }); - var idna_1 = require_idna(); - Object.defineProperty(exports2, "nameprep", { enumerable: true, get: function() { - return idna_1.nameprep; - } }); - var utf8_1 = require_utf8(); - Object.defineProperty(exports2, "_toEscapedUtf8String", { enumerable: true, get: function() { - return utf8_1._toEscapedUtf8String; - } }); - Object.defineProperty(exports2, "toUtf8Bytes", { enumerable: true, get: function() { - return utf8_1.toUtf8Bytes; - } }); - Object.defineProperty(exports2, "toUtf8CodePoints", { enumerable: true, get: function() { - return utf8_1.toUtf8CodePoints; - } }); - Object.defineProperty(exports2, "toUtf8String", { enumerable: true, get: function() { - return utf8_1.toUtf8String; - } }); - Object.defineProperty(exports2, "UnicodeNormalizationForm", { enumerable: true, get: function() { - return utf8_1.UnicodeNormalizationForm; - } }); - Object.defineProperty(exports2, "Utf8ErrorFuncs", { enumerable: true, get: function() { - return utf8_1.Utf8ErrorFuncs; - } }); - Object.defineProperty(exports2, "Utf8ErrorReason", { enumerable: true, get: function() { - return utf8_1.Utf8ErrorReason; - } }); - } -}); - -// node_modules/@ethersproject/hash/lib/id.js -var require_id = __commonJS({ - "node_modules/@ethersproject/hash/lib/id.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.id = void 0; - var keccak256_1 = require_lib10(); - var strings_1 = require_lib11(); - function id(text) { - return (0, keccak256_1.keccak256)((0, strings_1.toUtf8Bytes)(text)); - } - exports2.id = id; - } -}); - -// node_modules/@ethersproject/hash/lib/_version.js -var require_version8 = __commonJS({ - "node_modules/@ethersproject/hash/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "hash/5.7.0"; - } -}); - -// node_modules/@ethersproject/hash/lib/ens-normalize/decoder.js -var require_decoder = __commonJS({ - "node_modules/@ethersproject/hash/lib/ens-normalize/decoder.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.read_emoji_trie = exports2.read_zero_terminated_array = exports2.read_mapped_map = exports2.read_member_array = exports2.signed = exports2.read_compressed_payload = exports2.read_payload = exports2.decode_arithmetic = void 0; - function flat(array, depth) { - if (depth == null) { - depth = 1; - } - var result = []; - var forEach2 = result.forEach; - var flatDeep = function(arr, depth2) { - forEach2.call(arr, function(val) { - if (depth2 > 0 && Array.isArray(val)) { - flatDeep(val, depth2 - 1); - } else { - result.push(val); - } - }); - }; - flatDeep(array, depth); - return result; - } - function fromEntries(array) { - var result = {}; - for (var i = 0; i < array.length; i++) { - var value = array[i]; - result[value[0]] = value[1]; - } - return result; - } - function decode_arithmetic(bytes) { - var pos = 0; - function u16() { - return bytes[pos++] << 8 | bytes[pos++]; - } - var symbol_count = u16(); - var total = 1; - var acc = [0, 1]; - for (var i = 1; i < symbol_count; i++) { - acc.push(total += u16()); - } - var skip = u16(); - var pos_payload = pos; - pos += skip; - var read_width = 0; - var read_buffer = 0; - function read_bit() { - if (read_width == 0) { - read_buffer = read_buffer << 8 | bytes[pos++]; - read_width = 8; - } - return read_buffer >> --read_width & 1; - } - var N = 31; - var FULL = Math.pow(2, N); - var HALF = FULL >>> 1; - var QRTR = HALF >> 1; - var MASK = FULL - 1; - var register = 0; - for (var i = 0; i < N; i++) - register = register << 1 | read_bit(); - var symbols = []; - var low = 0; - var range = FULL; - while (true) { - var value = Math.floor(((register - low + 1) * total - 1) / range); - var start = 0; - var end = symbol_count; - while (end - start > 1) { - var mid = start + end >>> 1; - if (value < acc[mid]) { - end = mid; - } else { - start = mid; - } - } - if (start == 0) - break; - symbols.push(start); - var a = low + Math.floor(range * acc[start] / total); - var b = low + Math.floor(range * acc[start + 1] / total) - 1; - while (((a ^ b) & HALF) == 0) { - register = register << 1 & MASK | read_bit(); - a = a << 1 & MASK; - b = b << 1 & MASK | 1; - } - while (a & ~b & QRTR) { - register = register & HALF | register << 1 & MASK >>> 1 | read_bit(); - a = a << 1 ^ HALF; - b = (b ^ HALF) << 1 | HALF | 1; - } - low = a; - range = 1 + b - a; - } - var offset = symbol_count - 4; - return symbols.map(function(x) { - switch (x - offset) { - case 3: - return offset + 65792 + (bytes[pos_payload++] << 16 | bytes[pos_payload++] << 8 | bytes[pos_payload++]); - case 2: - return offset + 256 + (bytes[pos_payload++] << 8 | bytes[pos_payload++]); - case 1: - return offset + bytes[pos_payload++]; - default: - return x - 1; - } - }); - } - exports2.decode_arithmetic = decode_arithmetic; - function read_payload(v) { - var pos = 0; - return function() { - return v[pos++]; - }; - } - exports2.read_payload = read_payload; - function read_compressed_payload(bytes) { - return read_payload(decode_arithmetic(bytes)); - } - exports2.read_compressed_payload = read_compressed_payload; - function signed(i) { - return i & 1 ? ~i >> 1 : i >> 1; - } - exports2.signed = signed; - function read_counts(n, next) { - var v = Array(n); - for (var i = 0; i < n; i++) - v[i] = 1 + next(); - return v; - } - function read_ascending(n, next) { - var v = Array(n); - for (var i = 0, x = -1; i < n; i++) - v[i] = x += 1 + next(); - return v; - } - function read_deltas(n, next) { - var v = Array(n); - for (var i = 0, x = 0; i < n; i++) - v[i] = x += signed(next()); - return v; - } - function read_member_array(next, lookup) { - var v = read_ascending(next(), next); - var n = next(); - var vX = read_ascending(n, next); - var vN = read_counts(n, next); - for (var i = 0; i < n; i++) { - for (var j = 0; j < vN[i]; j++) { - v.push(vX[i] + j); - } - } - return lookup ? v.map(function(x) { - return lookup[x]; - }) : v; - } - exports2.read_member_array = read_member_array; - function read_mapped_map(next) { - var ret = []; - while (true) { - var w = next(); - if (w == 0) - break; - ret.push(read_linear_table(w, next)); - } - while (true) { - var w = next() - 1; - if (w < 0) - break; - ret.push(read_replacement_table(w, next)); - } - return fromEntries(flat(ret)); - } - exports2.read_mapped_map = read_mapped_map; - function read_zero_terminated_array(next) { - var v = []; - while (true) { - var i = next(); - if (i == 0) - break; - v.push(i); - } - return v; - } - exports2.read_zero_terminated_array = read_zero_terminated_array; - function read_transposed(n, w, next) { - var m = Array(n).fill(void 0).map(function() { - return []; - }); - for (var i = 0; i < w; i++) { - read_deltas(n, next).forEach(function(x, j) { - return m[j].push(x); - }); - } - return m; - } - function read_linear_table(w, next) { - var dx = 1 + next(); - var dy = next(); - var vN = read_zero_terminated_array(next); - var m = read_transposed(vN.length, 1 + w, next); - return flat(m.map(function(v, i) { - var x = v[0], ys = v.slice(1); - return Array(vN[i]).fill(void 0).map(function(_, j) { - var j_dy = j * dy; - return [x + j * dx, ys.map(function(y) { - return y + j_dy; - })]; - }); - })); - } - function read_replacement_table(w, next) { - var n = 1 + next(); - var m = read_transposed(n, 1 + w, next); - return m.map(function(v) { - return [v[0], v.slice(1)]; - }); - } - function read_emoji_trie(next) { - var sorted = read_member_array(next).sort(function(a, b) { - return a - b; - }); - return read(); - function read() { - var branches = []; - while (true) { - var keys = read_member_array(next, sorted); - if (keys.length == 0) - break; - branches.push({ set: new Set(keys), node: read() }); - } - branches.sort(function(a, b) { - return b.set.size - a.set.size; - }); - var temp = next(); - var valid = temp % 3; - temp = temp / 3 | 0; - var fe0f = !!(temp & 1); - temp >>= 1; - var save = temp == 1; - var check = temp == 2; - return { branches, valid, fe0f, save, check }; - } - } - exports2.read_emoji_trie = read_emoji_trie; - } -}); - -// node_modules/@ethersproject/hash/lib/ens-normalize/include.js -var require_include = __commonJS({ - "node_modules/@ethersproject/hash/lib/ens-normalize/include.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getData = void 0; - var base64_1 = require_lib7(); - var decoder_js_1 = require_decoder(); - function getData() { - return (0, decoder_js_1.read_compressed_payload)((0, base64_1.decode)("AEQF2AO2DEsA2wIrAGsBRABxAN8AZwCcAEwAqgA0AGwAUgByADcATAAVAFYAIQAyACEAKAAYAFgAGwAjABQAMAAmADIAFAAfABQAKwATACoADgAbAA8AHQAYABoAGQAxADgALAAoADwAEwA9ABMAGgARAA4ADwAWABMAFgAIAA8AHgQXBYMA5BHJAS8JtAYoAe4AExozi0UAH21tAaMnBT8CrnIyhrMDhRgDygIBUAEHcoFHUPe8AXBjAewCjgDQR8IICIcEcQLwATXCDgzvHwBmBoHNAqsBdBcUAykgDhAMShskMgo8AY8jqAQfAUAfHw8BDw87MioGlCIPBwZCa4ELatMAAMspJVgsDl8AIhckSg8XAHdvTwBcIQEiDT4OPhUqbyECAEoAS34Aej8Ybx83JgT/Xw8gHxZ/7w8RICxPHA9vBw+Pfw8PHwAPFv+fAsAvCc8vEr8ivwD/EQ8Bol8OEBa/A78hrwAPCU8vESNvvwWfHwNfAVoDHr+ZAAED34YaAdJPAK7PLwSEgDLHAGo1Pz8Pvx9fUwMrpb8O/58VTzAPIBoXIyQJNF8hpwIVAT8YGAUADDNBaX3RAMomJCg9EhUeA29MABsZBTMNJipjOhc19gcIDR8bBwQHEggCWi6DIgLuAQYA+BAFCha3A5XiAEsqM7UFFgFLhAMjFTMYE1Klnw74nRVBG/ASCm0BYRN/BrsU3VoWy+S0vV8LQx+vN8gF2AC2AK5EAWwApgYDKmAAroQ0NDQ0AT+OCg7wAAIHRAbpNgVcBV0APTA5BfbPFgMLzcYL/QqqA82eBALKCjQCjqYCht0/k2+OAsXQAoP3ASTKDgDw6ACKAUYCMpIKJpRaAE4A5womABzZvs0REEKiACIQAd5QdAECAj4Ywg/wGqY2AVgAYADYvAoCGAEubA0gvAY2ALAAbpbvqpyEAGAEpgQAJgAG7gAgAEACmghUFwCqAMpAINQIwC4DthRAAPcycKgApoIdABwBfCisABoATwBqASIAvhnSBP8aH/ECeAKXAq40NjgDBTwFYQU6AXs3oABgAD4XNgmcCY1eCl5tIFZeUqGgyoNHABgAEQAaABNwWQAmABMATPMa3T34ADldyprmM1M2XociUQgLzvwAXT3xABgAEQAaABNwIGFAnADD8AAgAD4BBJWzaCcIAIEBFMAWwKoAAdq9BWAF5wLQpALEtQAKUSGkahR4GnJM+gsAwCgeFAiUAECQ0BQuL8AAIAAAADKeIheclvFqQAAETr4iAMxIARMgAMIoHhQIAn0E0pDQFC4HhznoAAAAIAI2C0/4lvFqQAAETgBJJwYCAy4ABgYAFAA8MBKYEH4eRhTkAjYeFcgACAYAeABsOqyQ5gRwDayqugEgaIIAtgoACgDmEABmBAWGme5OBJJA2m4cDeoAmITWAXwrMgOgAGwBCh6CBXYF1Tzg1wKAAFdiuABRAFwAXQBsAG8AdgBrAHYAbwCEAHEwfxQBVE5TEQADVFhTBwBDANILAqcCzgLTApQCrQL6vAAMAL8APLhNBKkE6glGKTAU4Dr4N2EYEwBCkABKk8rHAbYBmwIoAiU4Ajf/Aq4CowCAANIChzgaNBsCsTgeODcFXrgClQKdAqQBiQGYAqsCsjTsNHsfNPA0ixsAWTWiOAMFPDQSNCk2BDZHNow2TTZUNhk28Jk9VzI3QkEoAoICoQKwAqcAQAAxBV4FXbS9BW47YkIXP1ciUqs05DS/FwABUwJW11e6nHuYZmSh/RAYA8oMKvZ8KASoUAJYWAJ6ILAsAZSoqjpgA0ocBIhmDgDWAAawRDQoAAcuAj5iAHABZiR2AIgiHgCaAU68ACxuHAG0ygM8MiZIAlgBdF4GagJqAPZOHAMuBgoATkYAsABiAHgAMLoGDPj0HpKEBAAOJgAuALggTAHWAeAMEDbd20Uege0ADwAWADkAQgA9OHd+2MUQZBBhBgNNDkxxPxUQArEPqwvqERoM1irQ090ANK4H8ANYB/ADWANYB/AH8ANYB/ADWANYA1gDWBwP8B/YxRBkD00EcgWTBZAE2wiIJk4RhgctCNdUEnQjHEwDSgEBIypJITuYMxAlR0wRTQgIATZHbKx9PQNMMbBU+pCnA9AyVDlxBgMedhKlAC8PeCE1uk6DekxxpQpQT7NX9wBFBgASqwAS5gBJDSgAUCwGPQBI4zTYABNGAE2bAE3KAExdGABKaAbgAFBXAFCOAFBJABI2SWdObALDOq0//QomCZhvwHdTBkIQHCemEPgMNAG2ATwN7kvZBPIGPATKH34ZGg/OlZ0Ipi3eDO4m5C6igFsj9iqEBe5L9TzeC05RaQ9aC2YJ5DpkgU8DIgEOIowK3g06CG4Q9ArKbA3mEUYHOgPWSZsApgcCCxIdNhW2JhFirQsKOXgG/Br3C5AmsBMqev0F1BoiBk4BKhsAANAu6IWxWjJcHU9gBgQLJiPIFKlQIQ0mQLh4SRocBxYlqgKSQ3FKiFE3HpQh9zw+DWcuFFF9B/Y8BhlQC4I8n0asRQ8R0z6OPUkiSkwtBDaALDAnjAnQD4YMunxzAVoJIgmyDHITMhEYN8YIOgcaLpclJxYIIkaWYJsE+KAD9BPSAwwFQAlCBxQDthwuEy8VKgUOgSXYAvQ21i60ApBWgQEYBcwPJh/gEFFH4Q7qCJwCZgOEJewALhUiABginAhEZABgj9lTBi7MCMhqbSN1A2gU6GIRdAeSDlgHqBw0FcAc4nDJXgyGCSiksAlcAXYJmgFgBOQICjVcjKEgQmdUi1kYnCBiQUBd/QIyDGYVoES+h3kCjA9sEhwBNgF0BzoNAgJ4Ee4RbBCWCOyGBTW2M/k6JgRQIYQgEgooA1BszwsoJvoM+WoBpBJjAw00PnfvZ6xgtyUX/gcaMsZBYSHyC5NPzgydGsIYQ1QvGeUHwAP0GvQn60FYBgADpAQUOk4z7wS+C2oIjAlAAEoOpBgH2BhrCnKM0QEyjAG4mgNYkoQCcJAGOAcMAGgMiAV65gAeAqgIpAAGANADWAA6Aq4HngAaAIZCAT4DKDABIuYCkAOUCDLMAZYwAfQqBBzEDBYA+DhuSwLDsgKAa2ajBd5ZAo8CSjYBTiYEBk9IUgOwcuIA3ABMBhTgSAEWrEvMG+REAeBwLADIAPwABjYHBkIBzgH0bgC4AWALMgmjtLYBTuoqAIQAFmwB2AKKAN4ANgCA8gFUAE4FWvoF1AJQSgESMhksWGIBvAMgATQBDgB6BsyOpsoIIARuB9QCEBwV4gLvLwe2AgMi4BPOQsYCvd9WADIXUu5eZwqoCqdeaAC0YTQHMnM9UQAPH6k+yAdy/BZIiQImSwBQ5gBQQzSaNTFWSTYBpwGqKQK38AFtqwBI/wK37gK3rQK3sAK6280C0gK33AK3zxAAUEIAUD9SklKDArekArw5AEQAzAHCO147WTteO1k7XjtZO147WTteO1kDmChYI03AVU0oJqkKbV9GYewMpw3VRMk6ShPcYFJgMxPJLbgUwhXPJVcZPhq9JwYl5VUKDwUt1GYxCC00dhe9AEApaYNCY4ceMQpMHOhTklT5LRwAskujM7ANrRsWREEFSHXuYisWDwojAmSCAmJDXE6wXDchAqH4AmiZAmYKAp+FOBwMAmY8AmYnBG8EgAN/FAN+kzkHOXgYOYM6JCQCbB4CMjc4CwJtyAJtr/CLADRoRiwBaADfAOIASwYHmQyOAP8MwwAOtgJ3MAJ2o0ACeUxEAni7Hl3cRa9G9AJ8QAJ6yQJ9CgJ88UgBSH5kJQAsFklZSlwWGErNAtECAtDNSygDiFADh+dExpEzAvKiXQQDA69Lz0wuJgTQTU1NsAKLQAKK2cIcCB5EaAa4Ao44Ao5dQZiCAo7aAo5deVG1UzYLUtVUhgKT/AKTDQDqAB1VH1WwVdEHLBwplocy4nhnRTw6ApegAu+zWCKpAFomApaQApZ9nQCqWa1aCoJOADwClrYClk9cRVzSApnMApllXMtdCBoCnJw5wzqeApwXAp+cAp65iwAeEDIrEAKd8gKekwC2PmE1YfACntQCoG8BqgKeoCACnk+mY8lkKCYsAiewAiZ/AqD8AqBN2AKmMAKlzwKoAAB+AqfzaH1osgAESmodatICrOQCrK8CrWgCrQMCVx4CVd0CseLYAx9PbJgCsr4OArLpGGzhbWRtSWADJc4Ctl08QG6RAylGArhfArlIFgK5K3hwN3DiAr0aAy2zAzISAr6JcgMDM3ICvhtzI3NQAsPMAsMFc4N0TDZGdOEDPKgDPJsDPcACxX0CxkgCxhGKAshqUgLIRQLJUALJLwJkngLd03h6YniveSZL0QMYpGcDAmH1GfSVJXsMXpNevBICz2wCz20wTFTT9BSgAMeuAs90ASrrA04TfkwGAtwoAtuLAtJQA1JdA1NgAQIDVY2AikABzBfuYUZ2AILPg44C2sgC2d+EEYRKpz0DhqYAMANkD4ZyWvoAVgLfZgLeuXR4AuIw7RUB8zEoAfScAfLTiALr9ALpcXoAAur6AurlAPpIAboC7ooC652Wq5cEAu5AA4XhmHpw4XGiAvMEAGoDjheZlAL3FAORbwOSiAL3mQL52gL4Z5odmqy8OJsfA52EAv77ARwAOp8dn7QDBY4DpmsDptoA0sYDBmuhiaIGCgMMSgFgASACtgNGAJwEgLpoBgC8BGzAEowcggCEDC6kdjoAJAM0C5IKRoABZCgiAIzw3AYBLACkfng9ogigkgNmWAN6AEQCvrkEVqTGAwCsBRbAA+4iQkMCHR072jI2PTbUNsk2RjY5NvA23TZKNiU3EDcZN5I+RTxDRTBCJkK5VBYKFhZfwQCWygU3AJBRHpu+OytgNxa61A40GMsYjsn7BVwFXQVcBV0FaAVdBVwFXQVcBV0FXAVdBVwFXUsaCNyKAK4AAQUHBwKU7oICoW1e7jAEzgPxA+YDwgCkBFDAwADABKzAAOxFLhitA1UFTDeyPkM+bj51QkRCuwTQWWQ8X+0AWBYzsACNA8xwzAGm7EZ/QisoCTAbLDs6fnLfb8H2GccsbgFw13M1HAVkBW/Jxsm9CNRO8E8FDD0FBQw9FkcClOYCoMFegpDfADgcMiA2AJQACB8AsigKAIzIEAJKeBIApY5yPZQIAKQiHb4fvj5BKSRPQrZCOz0oXyxgOywfKAnGbgMClQaCAkILXgdeCD9IIGUgQj5fPoY+dT52Ao5CM0dAX9BTVG9SDzFwWTQAbxBzJF/lOEIQQglCCkKJIAls5AcClQICoKPMODEFxhi6KSAbiyfIRrMjtCgdWCAkPlFBIitCsEJRzAbMAV/OEyQzDg0OAQQEJ36i328/Mk9AybDJsQlq3tDRApUKAkFzXf1d/j9uALYP6hCoFgCTGD8kPsFKQiobrm0+zj0KSD8kPnVCRBwMDyJRTHFgMTJa5rwXQiQ2YfI/JD7BMEJEHGINTw4TOFlIRzwJO0icMQpyPyQ+wzJCRBv6DVgnKB01NgUKj2bwYzMqCoBkznBgEF+zYDIocwRIX+NgHj4HICNfh2C4CwdwFWpTG/lgUhYGAwRfv2Ts8mAaXzVgml/XYIJfuWC4HI1gUF9pYJZgMR6ilQHMAOwLAlDRefC0in4AXAEJA6PjCwc0IamOANMMCAECRQDFNRTZBgd+CwQlRA+r6+gLBDEFBnwUBXgKATIArwAGRAAHA3cDdAN2A3kDdwN9A3oDdQN7A30DfAN4A3oDfQAYEAAlAtYASwMAUAFsAHcKAHcAmgB3AHUAdQB2AHVu8UgAygDAAHcAdQB1AHYAdQALCgB3AAsAmgB3AAsCOwB3AAtu8UgAygDAAHgKAJoAdwB3AHUAdQB2AHUAeAB1AHUAdgB1bvFIAMoAwAALCgCaAHcACwB3AAsCOwB3AAtu8UgAygDAAH4ACwGgALcBpwC6AahdAu0COwLtbvFIAMoAwAALCgCaAu0ACwLtAAsCOwLtAAtu8UgAygDAA24ACwNvAAu0VsQAAzsAABCkjUIpAAsAUIusOggWcgMeBxVsGwL67U/2HlzmWOEeOgALASvuAAseAfpKUpnpGgYJDCIZM6YyARUE9ThqAD5iXQgnAJYJPnOzw0ZAEZxEKsIAkA4DhAHnTAIDxxUDK0lxCQlPYgIvIQVYJQBVqE1GakUAKGYiDToSBA1EtAYAXQJYAIF8GgMHRyAAIAjOe9YncekRAA0KACUrjwE7Ayc6AAYWAqaiKG4McEcqANoN3+Mg9TwCBhIkuCny+JwUQ29L008JluRxu3K+oAdqiHOqFH0AG5SUIfUJ5SxCGfxdipRzqTmT4V5Zb+r1Uo4Vm+NqSSEl2mNvR2JhIa8SpYO6ntdwFXHCWTCK8f2+Hxo7uiG3drDycAuKIMP5bhi06ACnqArH1rz4Rqg//lm6SgJGEVbF9xJHISaR6HxqxSnkw6shDnelHKNEfGUXSJRJ1GcsmtJw25xrZMDK9gXSm1/YMkdX4/6NKYOdtk/NQ3/NnDASjTc3fPjIjW/5sVfVObX2oTDWkr1dF9f3kxBsD3/3aQO8hPfRz+e0uEiJqt1161griu7gz8hDDwtpy+F+BWtefnKHZPAxcZoWbnznhJpy0e842j36bcNzGnIEusgGX0a8ZxsnjcSsPDZ09yZ36fCQbriHeQ72JRMILNl6ePPf2HWoVwgWAm1fb3V2sAY0+B6rAXqSwPBgseVmoqsBTSrm91+XasMYYySI8eeRxH3ZvHkMz3BQ5aJ3iUVbYPNM3/7emRtjlsMgv/9VyTsyt/mK+8fgWeT6SoFaclXqn42dAIsvAarF5vNNWHzKSkKQ/8Hfk5ZWK7r9yliOsooyBjRhfkHP4Q2DkWXQi6FG/9r/IwbmkV5T7JSopHKn1pJwm9tb5Ot0oyN1Z2mPpKXHTxx2nlK08fKk1hEYA8WgVVWL5lgx0iTv+KdojJeU23ZDjmiubXOxVXJKKi2Wjuh2HLZOFLiSC7Tls5SMh4f+Pj6xUSrNjFqLGehRNB8lC0QSLNmkJJx/wSG3MnjE9T1CkPwJI0wH2lfzwETIiVqUxg0dfu5q39Gt+hwdcxkhhNvQ4TyrBceof3Mhs/IxFci1HmHr4FMZgXEEczPiGCx0HRwzAqDq2j9AVm1kwN0mRVLWLylgtoPNapF5cY4Y1wJh/e0BBwZj44YgZrDNqvD/9Hv7GFYdUQeDJuQ3EWI4HaKqavU1XjC/n41kT4L79kqGq0kLhdTZvgP3TA3fS0ozVz+5piZsoOtIvBUFoMKbNcmBL6YxxaUAusHB38XrS8dQMnQwJfUUkpRoGr5AUeWicvBTzyK9g77+yCkf5PAysL7r/JjcZgrbvRpMW9iyaxZvKO6ceZN2EwIxKwVFPuvFuiEPGCoagbMo+SpydLrXqBzNCDGFCrO/rkcwa2xhokQZ5CdZ0AsU3JfSqJ6n5I14YA+P/uAgfhPU84Tlw7cEFfp7AEE8ey4sP12PTt4Cods1GRgDOB5xvyiR5m+Bx8O5nBCNctU8BevfV5A08x6RHd5jcwPTMDSZJOedIZ1cGQ704lxbAzqZOP05ZxaOghzSdvFBHYqomATARyAADK4elP8Ly3IrUZKfWh23Xy20uBUmLS4Pfagu9+oyVa2iPgqRP3F2CTUsvJ7+RYnN8fFZbU/HVvxvcFFDKkiTqV5UBZ3Gz54JAKByi9hkKMZJvuGgcSYXFmw08UyoQyVdfTD1/dMkCHXcTGAKeROgArsvmRrQTLUOXioOHGK2QkjHuoYFgXciZoTJd6Fs5q1QX1G+p/e26hYsEf7QZD1nnIyl/SFkNtYYmmBhpBrxl9WbY0YpHWRuw2Ll/tj9mD8P4snVzJl4F9J+1arVeTb9E5r2ILH04qStjxQNwn3m4YNqxmaNbLAqW2TN6LidwuJRqS+NXbtqxoeDXpxeGWmxzSkWxjkyCkX4NQRme6q5SAcC+M7+9ETfA/EwrzQajKakCwYyeunP6ZFlxU2oMEn1Pz31zeStW74G406ZJFCl1wAXIoUKkWotYEpOuXB1uVNxJ63dpJEqfxBeptwIHNrPz8BllZoIcBoXwgfJ+8VAUnVPvRvexnw0Ma/WiGYuJO5y8QTvEYBigFmhUxY5RqzE8OcywN/8m4UYrlaniJO75XQ6KSo9+tWHlu+hMi0UVdiKQp7NelnoZUzNaIyBPVeOwK6GNp+FfHuPOoyhaWuNvTYFkvxscMQWDh+zeFCFkgwbXftiV23ywJ4+uwRqmg9k3KzwIQpzppt8DBBOMbrqwQM5Gb05sEwdKzMiAqOloaA/lr0KA+1pr0/+HiWoiIjHA/wir2nIuS3PeU/ji3O6ZwoxcR1SZ9FhtLC5S0FIzFhbBWcGVP/KpxOPSiUoAdWUpqKH++6Scz507iCcxYI6rdMBICPJZea7OcmeFw5mObJSiqpjg2UoWNIs+cFhyDSt6geV5qgi3FunmwwDoGSMgerFOZGX1m0dMCYo5XOruxO063dwENK9DbnVM9wYFREzh4vyU1WYYJ/LRRp6oxgjqP/X5a8/4Af6p6NWkQferzBmXme0zY/4nwMJm/wd1tIqSwGz+E3xPEAOoZlJit3XddD7/BT1pllzOx+8bmQtANQ/S6fZexc6qi3W+Q2xcmXTUhuS5mpHQRvcxZUN0S5+PL9lXWUAaRZhEH8hTdAcuNMMCuVNKTEGtSUKNi3O6KhSaTzck8csZ2vWRZ+d7mW8c4IKwXIYd25S/zIftPkwPzufjEvOHWVD1m+FjpDVUTV0DGDuHj6QnaEwLu/dEgdLQOg9E1Sro9XHJ8ykLAwtPu+pxqKDuFexqON1sKQm7rwbE1E68UCfA/erovrTCG+DBSNg0l4goDQvZN6uNlbyLpcZAwj2UclycvLpIZMgv4yRlpb3YuMftozorbcGVHt/VeDV3+Fdf1TP0iuaCsPi2G4XeGhsyF1ubVDxkoJhmniQ0/jSg/eYML9KLfnCFgISWkp91eauR3IQvED0nAPXK+6hPCYs+n3+hCZbiskmVMG2da+0EsZPonUeIY8EbfusQXjsK/eFDaosbPjEfQS0RKG7yj5GG69M7MeO1HmiUYocgygJHL6M1qzUDDwUSmr99V7Sdr2F3JjQAJY+F0yH33Iv3+C9M38eML7gTgmNu/r2bUMiPvpYbZ6v1/IaESirBHNa7mPKn4dEmYg7v/+HQgPN1G79jBQ1+soydfDC2r+h2Bl/KIc5KjMK7OH6nb1jLsNf0EHVe2KBiE51ox636uyG6Lho0t3J34L5QY/ilE3mikaF4HKXG1mG1rCevT1Vv6GavltxoQe/bMrpZvRggnBxSEPEeEzkEdOxTnPXHVjUYdw8JYvjB/o7Eegc3Ma+NUxLLnsK0kJlinPmUHzHGtrk5+CAbVzFOBqpyy3QVUnzTDfC/0XD94/okH+OB+i7g9lolhWIjSnfIb+Eq43ZXOWmwvjyV/qqD+t0e+7mTEM74qP/Ozt8nmC7mRpyu63OB4KnUzFc074SqoyPUAgM+/TJGFo6T44EHnQU4X4z6qannVqgw/U7zCpwcmXV1AubIrvOmkKHazJAR55ePjp5tLBsN8vAqs3NAHdcEHOR2xQ0lsNAFzSUuxFQCFYvXLZJdOj9p4fNq6p0HBGUik2YzaI4xySy91KzhQ0+q1hjxvImRwPRf76tChlRkhRCi74NXZ9qUNeIwP+s5p+3m5nwPdNOHgSLD79n7O9m1n1uDHiMntq4nkYwV5OZ1ENbXxFd4PgrlvavZsyUO4MqYlqqn1O8W/I1dEZq5dXhrbETLaZIbC2Kj/Aa/QM+fqUOHdf0tXAQ1huZ3cmWECWSXy/43j35+Mvq9xws7JKseriZ1pEWKc8qlzNrGPUGcVgOa9cPJYIJsGnJTAUsEcDOEVULO5x0rXBijc1lgXEzQQKhROf8zIV82w8eswc78YX11KYLWQRcgHNJElBxfXr72lS2RBSl07qTKorO2uUDZr3sFhYsvnhLZn0A94KRzJ/7DEGIAhW5ZWFpL8gEwu1aLA9MuWZzNwl8Oze9Y+bX+v9gywRVnoB5I/8kXTXU3141yRLYrIOOz6SOnyHNy4SieqzkBXharjfjqq1q6tklaEbA8Qfm2DaIPs7OTq/nvJBjKfO2H9bH2cCMh1+5gspfycu8f/cuuRmtDjyqZ7uCIMyjdV3a+p3fqmXsRx4C8lujezIFHnQiVTXLXuI1XrwN3+siYYj2HHTvESUx8DlOTXpak9qFRK+L3mgJ1WsD7F4cu1aJoFoYQnu+wGDMOjJM3kiBQWHCcvhJ/HRdxodOQp45YZaOTA22Nb4XKCVxqkbwMYFhzYQYIAnCW8FW14uf98jhUG2zrKhQQ0q0CEq0t5nXyvUyvR8DvD69LU+g3i+HFWQMQ8PqZuHD+sNKAV0+M6EJC0szq7rEr7B5bQ8BcNHzvDMc9eqB5ZCQdTf80Obn4uzjwpYU7SISdtV0QGa9D3Wrh2BDQtpBKxaNFV+/Cy2P/Sv+8s7Ud0Fd74X4+o/TNztWgETUapy+majNQ68Lq3ee0ZO48VEbTZYiH1Co4OlfWef82RWeyUXo7woM03PyapGfikTnQinoNq5z5veLpeMV3HCAMTaZmA1oGLAn7XS3XYsz+XK7VMQsc4XKrmDXOLU/pSXVNUq8dIqTba///3x6LiLS6xs1xuCAYSfcQ3+rQgmu7uvf3THKt5Ooo97TqcbRqxx7EASizaQCBQllG/rYxVapMLgtLbZS64w1MDBMXX+PQpBKNwqUKOf2DDRDUXQf9EhOS0Qj4nTmlA8dzSLz/G1d+Ud8MTy/6ghhdiLpeerGY/UlDOfiuqFsMUU5/UYlP+BAmgRLuNpvrUaLlVkrqDievNVEAwF+4CoM1MZTmjxjJMsKJq+u8Zd7tNCUFy6LiyYXRJQ4VyvEQFFaCGKsxIwQkk7EzZ6LTJq2hUuPhvAW+gQnSG6J+MszC+7QCRHcnqDdyNRJ6T9xyS87A6MDutbzKGvGktpbXqtzWtXb9HsfK2cBMomjN9a4y+TaJLnXxAeX/HWzmf4cR4vALt/P4w4qgKY04ml4ZdLOinFYS6cup3G/1ie4+t1eOnpBNlqGqs75ilzkT4+DsZQxNvaSKJ//6zIbbk/M7LOhFmRc/1R+kBtz7JFGdZm/COotIdvQoXpTqP/1uqEUmCb/QWoGLMwO5ANcHzxdY48IGP5+J+zKOTBFZ4Pid+GTM+Wq12MV/H86xEJptBa6T+p3kgpwLedManBHC2GgNrFpoN2xnrMz9WFWX/8/ygSBkavq2Uv7FdCsLEYLu9LLIvAU0bNRDtzYl+/vXmjpIvuJFYjmI0im6QEYqnIeMsNjXG4vIutIGHijeAG/9EDBozKV5cldkHbLxHh25vT+ZEzbhXlqvpzKJwcEgfNwLAKFeo0/pvEE10XDB+EXRTXtSzJozQKFFAJhMxYkVaCW+E9AL7tMeU8acxidHqzb6lX4691UsDpy/LLRmT+epgW56+5Cw8tB4kMUv6s9lh3eRKbyGs+H/4mQMaYzPTf2OOdokEn+zzgvoD3FqNKk8QqGAXVsqcGdXrT62fSPkR2vROFi68A6se86UxRUk4cajfPyCC4G5wDhD+zNq4jodQ4u4n/m37Lr36n4LIAAsVr02dFi9AiwA81MYs2rm4eDlDNmdMRvEKRHfBwW5DdMNp0jPFZMeARqF/wL4XBfd+EMLBfMzpH5GH6NaW+1vrvMdg+VxDzatk3MXgO3ro3P/DpcC6+Mo4MySJhKJhSR01SGGGp5hPWmrrUgrv3lDnP+HhcI3nt3YqBoVAVTBAQT5iuhTg8nvPtd8ZeYj6w1x6RqGUBrSku7+N1+BaasZvjTk64RoIDlL8brpEcJx3OmY7jLoZsswdtmhfC/G21llXhITOwmvRDDeTTPbyASOa16cF5/A1fZAidJpqju3wYAy9avPR1ya6eNp9K8XYrrtuxlqi+bDKwlfrYdR0RRiKRVTLOH85+ZY7XSmzRpfZBJjaTa81VDcJHpZnZnSQLASGYW9l51ZV/h7eVzTi3Hv6hUsgc/51AqJRTkpbFVLXXszoBL8nBX0u/0jBLT8nH+fJePbrwURT58OY+UieRjd1vs04w0VG5VN2U6MoGZkQzKN/ptz0Q366dxoTGmj7i1NQGHi9GgnquXFYdrCfZBmeb7s0T6yrdlZH5cZuwHFyIJ/kAtGsTg0xH5taAAq44BAk1CPk9KVVbqQzrCUiFdF/6gtlPQ8bHHc1G1W92MXGZ5HEHftyLYs8mbD/9xYRUWkHmlM0zC2ilJlnNgV4bfALpQghxOUoZL7VTqtCHIaQSXm+YUMnpkXybnV+A6xlm2CVy8fn0Xlm2XRa0+zzOa21JWWmixfiPMSCZ7qA4rS93VN3pkpF1s5TonQjisHf7iU9ZGvUPOAKZcR1pbeVf/Ul7OhepGCaId9wOtqo7pJ7yLcBZ0pFkOF28y4zEI/kcUNmutBHaQpBdNM8vjCS6HZRokkeo88TBAjGyG7SR+6vUgTcyK9Imalj0kuxz0wmK+byQU11AiJFk/ya5dNduRClcnU64yGu/ieWSeOos1t3ep+RPIWQ2pyTYVbZltTbsb7NiwSi3AV+8KLWk7LxCnfZUetEM8ThnsSoGH38/nyAwFguJp8FjvlHtcWZuU4hPva0rHfr0UhOOJ/F6vS62FW7KzkmRll2HEc7oUq4fyi5T70Vl7YVIfsPHUCdHesf9Lk7WNVWO75JDkYbMI8TOW8JKVtLY9d6UJRITO8oKo0xS+o99Yy04iniGHAaGj88kEWgwv0OrHdY/nr76DOGNS59hXCGXzTKUvDl9iKpLSWYN1lxIeyywdNpTkhay74w2jFT6NS8qkjo5CxA1yfSYwp6AJIZNKIeEK5PJAW7ORgWgwp0VgzYpqovMrWxbu+DGZ6Lhie1RAqpzm8VUzKJOH3mCzWuTOLsN3VT/dv2eeYe9UjbR8YTBsLz7q60VN1sU51k+um1f8JxD5pPhbhSC8rRaB454tmh6YUWrJI3+GWY0qeWioj/tbkYITOkJaeuGt4JrJvHA+l0Gu7kY7XOaa05alMnRWVCXqFgLIwSY4uF59Ue5SU4QKuc/HamDxbr0x6csCetXGoP7Qn1Bk/J9DsynO/UD6iZ1Hyrz+jit0hDCwi/E9OjgKTbB3ZQKQ/0ZOvevfNHG0NK4Aj3Cp7NpRk07RT1i/S0EL93Ag8GRgKI9CfpajKyK6+Jj/PI1KO5/85VAwz2AwzP8FTBb075IxCXv6T9RVvWT2tUaqxDS92zrGUbWzUYk9mSs82pECH+fkqsDt93VW++4YsR/dHCYcQSYTO/KaBMDj9LSD/J/+z20Kq8XvZUAIHtm9hRPP3ItbuAu2Hm5lkPs92pd7kCxgRs0xOVBnZ13ccdA0aunrwv9SdqElJRC3g+oCu+nXyCgmXUs9yMjTMAIHfxZV+aPKcZeUBWt057Xo85Ks1Ir5gzEHCWqZEhrLZMuF11ziGtFQUds/EESajhagzcKsxamcSZxGth4UII+adPhQkUnx2WyN+4YWR+r3f8MnkyGFuR4zjzxJS8WsQYR5PTyRaD9ixa6Mh741nBHbzfjXHskGDq179xaRNrCIB1z1xRfWfjqw2pHc1zk9xlPpL8sQWAIuETZZhbnmL54rceXVNRvUiKrrqIkeogsl0XXb17ylNb0f4GA9Wd44vffEG8FSZGHEL2fbaTGRcSiCeA8PmA/f6Hz8HCS76fXUHwgwkzSwlI71ekZ7Fapmlk/KC+Hs8hUcw3N2LN5LhkVYyizYFl/uPeVP5lsoJHhhfWvvSWruCUW1ZcJOeuTbrDgywJ/qG07gZJplnTvLcYdNaH0KMYOYMGX+rB4NGPFmQsNaIwlWrfCezxre8zXBrsMT+edVLbLqN1BqB76JH4BvZTqUIMfGwPGEn+EnmTV86fPBaYbFL3DFEhjB45CewkXEAtJxk4/Ms2pPXnaRqdky0HOYdcUcE2zcXq4vaIvW2/v0nHFJH2XXe22ueDmq/18XGtELSq85j9X8q0tcNSSKJIX8FTuJF/Pf8j5PhqG2u+osvsLxYrvvfeVJL+4tkcXcr9JV7v0ERmj/X6fM3NC4j6dS1+9Umr2oPavqiAydTZPLMNRGY23LO9zAVDly7jD+70G5TPPLdhRIl4WxcYjLnM+SNcJ26FOrkrISUtPObIz5Zb3AG612krnpy15RMW+1cQjlnWFI6538qky9axd2oJmHIHP08KyP0ubGO+TQNOYuv2uh17yCIvR8VcStw7o1g0NM60sk+8Tq7YfIBJrtp53GkvzXH7OA0p8/n/u1satf/VJhtR1l8Wa6Gmaug7haSpaCaYQax6ta0mkutlb+eAOSG1aobM81D9A4iS1RRlzBBoVX6tU1S6WE2N9ORY6DfeLRC4l9Rvr5h95XDWB2mR1d4WFudpsgVYwiTwT31ljskD8ZyDOlm5DkGh9N/UB/0AI5Xvb8ZBmai2hQ4BWMqFwYnzxwB26YHSOv9WgY3JXnvoN+2R4rqGVh/LLDMtpFP+SpMGJNWvbIl5SOodbCczW2RKleksPoUeGEzrjtKHVdtZA+kfqO+rVx/iclCqwoopepvJpSTDjT+b9GWylGRF8EDbGlw6eUzmJM95Ovoz+kwLX3c2fTjFeYEsE7vUZm3mqdGJuKh2w9/QGSaqRHs99aScGOdDqkFcACoqdbBoQqqjamhH6Q9ng39JCg3lrGJwd50Qk9ovnqBTr8MME7Ps2wiVfygUmPoUBJJfJWX5Nda0nuncbFkA==")); - } - exports2.getData = getData; - } -}); - -// node_modules/@ethersproject/hash/lib/ens-normalize/lib.js -var require_lib12 = __commonJS({ - "node_modules/@ethersproject/hash/lib/ens-normalize/lib.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ens_normalize = exports2.ens_normalize_post_check = void 0; - var strings_1 = require_lib11(); - var include_js_1 = require_include(); - var r = (0, include_js_1.getData)(); - var decoder_js_1 = require_decoder(); - var VALID = new Set((0, decoder_js_1.read_member_array)(r)); - var IGNORED = new Set((0, decoder_js_1.read_member_array)(r)); - var MAPPED = (0, decoder_js_1.read_mapped_map)(r); - var EMOJI_ROOT = (0, decoder_js_1.read_emoji_trie)(r); - var HYPHEN = 45; - var UNDERSCORE = 95; - function explode_cp(name) { - return (0, strings_1.toUtf8CodePoints)(name); - } - function filter_fe0f(cps) { - return cps.filter(function(cp) { - return cp != 65039; - }); - } - function ens_normalize_post_check(name) { - for (var _i = 0, _a = name.split("."); _i < _a.length; _i++) { - var label = _a[_i]; - var cps = explode_cp(label); - try { - for (var i = cps.lastIndexOf(UNDERSCORE) - 1; i >= 0; i--) { - if (cps[i] !== UNDERSCORE) { - throw new Error("underscore only allowed at start"); - } - } - if (cps.length >= 4 && cps.every(function(cp) { - return cp < 128; - }) && cps[2] === HYPHEN && cps[3] === HYPHEN) { - throw new Error("invalid label extension"); - } - } catch (err) { - throw new Error('Invalid label "' + label + '": ' + err.message); - } - } - return name; - } - exports2.ens_normalize_post_check = ens_normalize_post_check; - function ens_normalize(name) { - return ens_normalize_post_check(normalize(name, filter_fe0f)); - } - exports2.ens_normalize = ens_normalize; - function normalize(name, emoji_filter) { - var input = explode_cp(name).reverse(); - var output = []; - while (input.length) { - var emoji = consume_emoji_reversed(input); - if (emoji) { - output.push.apply(output, emoji_filter(emoji)); - continue; - } - var cp = input.pop(); - if (VALID.has(cp)) { - output.push(cp); - continue; - } - if (IGNORED.has(cp)) { - continue; - } - var cps = MAPPED[cp]; - if (cps) { - output.push.apply(output, cps); - continue; - } - throw new Error("Disallowed codepoint: 0x" + cp.toString(16).toUpperCase()); - } - return ens_normalize_post_check(nfc(String.fromCodePoint.apply(String, output))); - } - function nfc(s) { - return s.normalize("NFC"); - } - function consume_emoji_reversed(cps, eaten) { - var _a; - var node = EMOJI_ROOT; - var emoji; - var saved; - var stack = []; - var pos = cps.length; - if (eaten) - eaten.length = 0; - var _loop_1 = function() { - var cp = cps[--pos]; - node = (_a = node.branches.find(function(x) { - return x.set.has(cp); - })) === null || _a === void 0 ? void 0 : _a.node; - if (!node) - return "break"; - if (node.save) { - saved = cp; - } else if (node.check) { - if (cp === saved) - return "break"; - } - stack.push(cp); - if (node.fe0f) { - stack.push(65039); - if (pos > 0 && cps[pos - 1] == 65039) - pos--; - } - if (node.valid) { - emoji = stack.slice(); - if (node.valid == 2) - emoji.splice(1, 1); - if (eaten) - eaten.push.apply(eaten, cps.slice(pos).reverse()); - cps.length = pos; - } - }; - while (pos) { - var state_1 = _loop_1(); - if (state_1 === "break") - break; - } - return emoji; - } - } -}); - -// node_modules/@ethersproject/hash/lib/namehash.js -var require_namehash = __commonJS({ - "node_modules/@ethersproject/hash/lib/namehash.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.dnsEncode = exports2.namehash = exports2.isValidName = exports2.ensNormalize = void 0; - var bytes_1 = require_lib2(); - var strings_1 = require_lib11(); - var keccak256_1 = require_lib10(); - var logger_1 = require_lib(); - var _version_1 = require_version8(); - var logger = new logger_1.Logger(_version_1.version); - var lib_1 = require_lib12(); - var Zeros = new Uint8Array(32); - Zeros.fill(0); - function checkComponent(comp) { - if (comp.length === 0) { - throw new Error("invalid ENS name; empty component"); - } - return comp; - } - function ensNameSplit(name) { - var bytes = (0, strings_1.toUtf8Bytes)((0, lib_1.ens_normalize)(name)); - var comps = []; - if (name.length === 0) { - return comps; - } - var last = 0; - for (var i = 0; i < bytes.length; i++) { - var d = bytes[i]; - if (d === 46) { - comps.push(checkComponent(bytes.slice(last, i))); - last = i + 1; - } - } - if (last >= bytes.length) { - throw new Error("invalid ENS name; empty component"); - } - comps.push(checkComponent(bytes.slice(last))); - return comps; - } - function ensNormalize(name) { - return ensNameSplit(name).map(function(comp) { - return (0, strings_1.toUtf8String)(comp); - }).join("."); - } - exports2.ensNormalize = ensNormalize; - function isValidName(name) { - try { - return ensNameSplit(name).length !== 0; - } catch (error) { - } - return false; - } - exports2.isValidName = isValidName; - function namehash(name) { - if (typeof name !== "string") { - logger.throwArgumentError("invalid ENS name; not a string", "name", name); - } - var result = Zeros; - var comps = ensNameSplit(name); - while (comps.length) { - result = (0, keccak256_1.keccak256)((0, bytes_1.concat)([result, (0, keccak256_1.keccak256)(comps.pop())])); - } - return (0, bytes_1.hexlify)(result); - } - exports2.namehash = namehash; - function dnsEncode(name) { - return (0, bytes_1.hexlify)((0, bytes_1.concat)(ensNameSplit(name).map(function(comp) { - if (comp.length > 63) { - throw new Error("invalid DNS encoded entry; length exceeds 63 bytes"); - } - var bytes = new Uint8Array(comp.length + 1); - bytes.set(comp, 1); - bytes[0] = bytes.length - 1; - return bytes; - }))) + "00"; - } - exports2.dnsEncode = dnsEncode; - } -}); - -// node_modules/@ethersproject/hash/lib/message.js -var require_message = __commonJS({ - "node_modules/@ethersproject/hash/lib/message.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.hashMessage = exports2.messagePrefix = void 0; - var bytes_1 = require_lib2(); - var keccak256_1 = require_lib10(); - var strings_1 = require_lib11(); - exports2.messagePrefix = "Ethereum Signed Message:\n"; - function hashMessage(message) { - if (typeof message === "string") { - message = (0, strings_1.toUtf8Bytes)(message); - } - return (0, keccak256_1.keccak256)((0, bytes_1.concat)([ - (0, strings_1.toUtf8Bytes)(exports2.messagePrefix), - (0, strings_1.toUtf8Bytes)(String(message.length)), - message - ])); - } - exports2.hashMessage = hashMessage; - } -}); - -// node_modules/@ethersproject/rlp/lib/_version.js -var require_version9 = __commonJS({ - "node_modules/@ethersproject/rlp/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "rlp/5.7.0"; - } -}); - -// node_modules/@ethersproject/rlp/lib/index.js -var require_lib13 = __commonJS({ - "node_modules/@ethersproject/rlp/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.decode = exports2.encode = void 0; - var bytes_1 = require_lib2(); - var logger_1 = require_lib(); - var _version_1 = require_version9(); - var logger = new logger_1.Logger(_version_1.version); - function arrayifyInteger(value) { - var result = []; - while (value) { - result.unshift(value & 255); - value >>= 8; - } - return result; - } - function unarrayifyInteger(data, offset, length) { - var result = 0; - for (var i = 0; i < length; i++) { - result = result * 256 + data[offset + i]; - } - return result; - } - function _encode(object) { - if (Array.isArray(object)) { - var payload_1 = []; - object.forEach(function(child) { - payload_1 = payload_1.concat(_encode(child)); - }); - if (payload_1.length <= 55) { - payload_1.unshift(192 + payload_1.length); - return payload_1; - } - var length_1 = arrayifyInteger(payload_1.length); - length_1.unshift(247 + length_1.length); - return length_1.concat(payload_1); - } - if (!(0, bytes_1.isBytesLike)(object)) { - logger.throwArgumentError("RLP object must be BytesLike", "object", object); - } - var data = Array.prototype.slice.call((0, bytes_1.arrayify)(object)); - if (data.length === 1 && data[0] <= 127) { - return data; - } else if (data.length <= 55) { - data.unshift(128 + data.length); - return data; - } - var length = arrayifyInteger(data.length); - length.unshift(183 + length.length); - return length.concat(data); - } - function encode3(object) { - return (0, bytes_1.hexlify)(_encode(object)); - } - exports2.encode = encode3; - function _decodeChildren(data, offset, childOffset, length) { - var result = []; - while (childOffset < offset + 1 + length) { - var decoded = _decode(data, childOffset); - result.push(decoded.result); - childOffset += decoded.consumed; - if (childOffset > offset + 1 + length) { - logger.throwError("child data too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - } - return { consumed: 1 + length, result }; - } - function _decode(data, offset) { - if (data.length === 0) { - logger.throwError("data too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - if (data[offset] >= 248) { - var lengthLength = data[offset] - 247; - if (offset + 1 + lengthLength > data.length) { - logger.throwError("data short segment too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - var length_2 = unarrayifyInteger(data, offset + 1, lengthLength); - if (offset + 1 + lengthLength + length_2 > data.length) { - logger.throwError("data long segment too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - return _decodeChildren(data, offset, offset + 1 + lengthLength, lengthLength + length_2); - } else if (data[offset] >= 192) { - var length_3 = data[offset] - 192; - if (offset + 1 + length_3 > data.length) { - logger.throwError("data array too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - return _decodeChildren(data, offset, offset + 1, length_3); - } else if (data[offset] >= 184) { - var lengthLength = data[offset] - 183; - if (offset + 1 + lengthLength > data.length) { - logger.throwError("data array too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - var length_4 = unarrayifyInteger(data, offset + 1, lengthLength); - if (offset + 1 + lengthLength + length_4 > data.length) { - logger.throwError("data array too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - var result = (0, bytes_1.hexlify)(data.slice(offset + 1 + lengthLength, offset + 1 + lengthLength + length_4)); - return { consumed: 1 + lengthLength + length_4, result }; - } else if (data[offset] >= 128) { - var length_5 = data[offset] - 128; - if (offset + 1 + length_5 > data.length) { - logger.throwError("data too short", logger_1.Logger.errors.BUFFER_OVERRUN, {}); - } - var result = (0, bytes_1.hexlify)(data.slice(offset + 1, offset + 1 + length_5)); - return { consumed: 1 + length_5, result }; - } - return { consumed: 1, result: (0, bytes_1.hexlify)(data[offset]) }; - } - function decode(data) { - var bytes = (0, bytes_1.arrayify)(data); - var decoded = _decode(bytes, 0); - if (decoded.consumed !== bytes.length) { - logger.throwArgumentError("invalid rlp data", "data", data); - } - return decoded.result; - } - exports2.decode = decode; - } -}); - -// node_modules/@ethersproject/address/lib/_version.js -var require_version10 = __commonJS({ - "node_modules/@ethersproject/address/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "address/5.7.0"; - } -}); - -// node_modules/@ethersproject/address/lib/index.js -var require_lib14 = __commonJS({ - "node_modules/@ethersproject/address/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getCreate2Address = exports2.getContractAddress = exports2.getIcapAddress = exports2.isAddress = exports2.getAddress = void 0; - var bytes_1 = require_lib2(); - var bignumber_1 = require_lib3(); - var keccak256_1 = require_lib10(); - var rlp_1 = require_lib13(); - var logger_1 = require_lib(); - var _version_1 = require_version10(); - var logger = new logger_1.Logger(_version_1.version); - function getChecksumAddress(address) { - if (!(0, bytes_1.isHexString)(address, 20)) { - logger.throwArgumentError("invalid address", "address", address); - } - address = address.toLowerCase(); - var chars = address.substring(2).split(""); - var expanded = new Uint8Array(40); - for (var i2 = 0; i2 < 40; i2++) { - expanded[i2] = chars[i2].charCodeAt(0); - } - var hashed = (0, bytes_1.arrayify)((0, keccak256_1.keccak256)(expanded)); - for (var i2 = 0; i2 < 40; i2 += 2) { - if (hashed[i2 >> 1] >> 4 >= 8) { - chars[i2] = chars[i2].toUpperCase(); - } - if ((hashed[i2 >> 1] & 15) >= 8) { - chars[i2 + 1] = chars[i2 + 1].toUpperCase(); - } - } - return "0x" + chars.join(""); - } - var MAX_SAFE_INTEGER = 9007199254740991; - function log10(x) { - if (Math.log10) { - return Math.log10(x); - } - return Math.log(x) / Math.LN10; - } - var ibanLookup = {}; - for (i = 0; i < 10; i++) { - ibanLookup[String(i)] = String(i); - } - var i; - for (i = 0; i < 26; i++) { - ibanLookup[String.fromCharCode(65 + i)] = String(10 + i); - } - var i; - var safeDigits = Math.floor(log10(MAX_SAFE_INTEGER)); - function ibanChecksum(address) { - address = address.toUpperCase(); - address = address.substring(4) + address.substring(0, 2) + "00"; - var expanded = address.split("").map(function(c) { - return ibanLookup[c]; - }).join(""); - while (expanded.length >= safeDigits) { - var block = expanded.substring(0, safeDigits); - expanded = parseInt(block, 10) % 97 + expanded.substring(block.length); - } - var checksum = String(98 - parseInt(expanded, 10) % 97); - while (checksum.length < 2) { - checksum = "0" + checksum; - } - return checksum; - } - function getAddress(address) { - var result = null; - if (typeof address !== "string") { - logger.throwArgumentError("invalid address", "address", address); - } - if (address.match(/^(0x)?[0-9a-fA-F]{40}$/)) { - if (address.substring(0, 2) !== "0x") { - address = "0x" + address; - } - result = getChecksumAddress(address); - if (address.match(/([A-F].*[a-f])|([a-f].*[A-F])/) && result !== address) { - logger.throwArgumentError("bad address checksum", "address", address); - } - } else if (address.match(/^XE[0-9]{2}[0-9A-Za-z]{30,31}$/)) { - if (address.substring(2, 4) !== ibanChecksum(address)) { - logger.throwArgumentError("bad icap checksum", "address", address); - } - result = (0, bignumber_1._base36To16)(address.substring(4)); - while (result.length < 40) { - result = "0" + result; - } - result = getChecksumAddress("0x" + result); - } else { - logger.throwArgumentError("invalid address", "address", address); - } - return result; - } - exports2.getAddress = getAddress; - function isAddress(address) { - try { - getAddress(address); - return true; - } catch (error) { - } - return false; - } - exports2.isAddress = isAddress; - function getIcapAddress(address) { - var base36 = (0, bignumber_1._base16To36)(getAddress(address).substring(2)).toUpperCase(); - while (base36.length < 30) { - base36 = "0" + base36; - } - return "XE" + ibanChecksum("XE00" + base36) + base36; - } - exports2.getIcapAddress = getIcapAddress; - function getContractAddress(transaction) { - var from = null; - try { - from = getAddress(transaction.from); - } catch (error) { - logger.throwArgumentError("missing from address", "transaction", transaction); - } - var nonce = (0, bytes_1.stripZeros)((0, bytes_1.arrayify)(bignumber_1.BigNumber.from(transaction.nonce).toHexString())); - return getAddress((0, bytes_1.hexDataSlice)((0, keccak256_1.keccak256)((0, rlp_1.encode)([from, nonce])), 12)); - } - exports2.getContractAddress = getContractAddress; - function getCreate2Address(from, salt, initCodeHash) { - if ((0, bytes_1.hexDataLength)(salt) !== 32) { - logger.throwArgumentError("salt must be 32 bytes", "salt", salt); - } - if ((0, bytes_1.hexDataLength)(initCodeHash) !== 32) { - logger.throwArgumentError("initCodeHash must be 32 bytes", "initCodeHash", initCodeHash); - } - return getAddress((0, bytes_1.hexDataSlice)((0, keccak256_1.keccak256)((0, bytes_1.concat)(["0xff", getAddress(from), salt, initCodeHash])), 12)); - } - exports2.getCreate2Address = getCreate2Address; - } -}); - -// node_modules/@ethersproject/hash/lib/typed-data.js -var require_typed_data = __commonJS({ - "node_modules/@ethersproject/hash/lib/typed-data.js"(exports2) { - "use strict"; - var __awaiter = exports2 && exports2.__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 = exports2 && exports2.__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(exports2, "__esModule", { value: true }); - exports2.TypedDataEncoder = void 0; - var address_1 = require_lib14(); - var bignumber_1 = require_lib3(); - var bytes_1 = require_lib2(); - var keccak256_1 = require_lib10(); - var properties_1 = require_lib4(); - var logger_1 = require_lib(); - var _version_1 = require_version8(); - var logger = new logger_1.Logger(_version_1.version); - var id_1 = require_id(); - var padding = new Uint8Array(32); - padding.fill(0); - var NegativeOne = bignumber_1.BigNumber.from(-1); - var Zero = bignumber_1.BigNumber.from(0); - var One = bignumber_1.BigNumber.from(1); - var MaxUint256 = bignumber_1.BigNumber.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); - function hexPadRight(value) { - var bytes = (0, bytes_1.arrayify)(value); - var padOffset = bytes.length % 32; - if (padOffset) { - return (0, bytes_1.hexConcat)([bytes, padding.slice(padOffset)]); - } - return (0, bytes_1.hexlify)(bytes); - } - var hexTrue = (0, bytes_1.hexZeroPad)(One.toHexString(), 32); - var hexFalse = (0, bytes_1.hexZeroPad)(Zero.toHexString(), 32); - var domainFieldTypes = { - name: "string", - version: "string", - chainId: "uint256", - verifyingContract: "address", - salt: "bytes32" - }; - var domainFieldNames = [ - "name", - "version", - "chainId", - "verifyingContract", - "salt" - ]; - function checkString(key) { - return function(value) { - if (typeof value !== "string") { - logger.throwArgumentError("invalid domain value for " + JSON.stringify(key), "domain." + key, value); - } - return value; - }; - } - var domainChecks = { - name: checkString("name"), - version: checkString("version"), - chainId: function(value) { - try { - return bignumber_1.BigNumber.from(value).toString(); - } catch (error) { - } - return logger.throwArgumentError('invalid domain value for "chainId"', "domain.chainId", value); - }, - verifyingContract: function(value) { - try { - return (0, address_1.getAddress)(value).toLowerCase(); - } catch (error) { - } - return logger.throwArgumentError('invalid domain value "verifyingContract"', "domain.verifyingContract", value); - }, - salt: function(value) { - try { - var bytes = (0, bytes_1.arrayify)(value); - if (bytes.length !== 32) { - throw new Error("bad length"); - } - return (0, bytes_1.hexlify)(bytes); - } catch (error) { - } - return logger.throwArgumentError('invalid domain value "salt"', "domain.salt", value); - } - }; - function getBaseEncoder(type) { - { - var match = type.match(/^(u?)int(\d*)$/); - if (match) { - var signed = match[1] === ""; - var width = parseInt(match[2] || "256"); - if (width % 8 !== 0 || width > 256 || match[2] && match[2] !== String(width)) { - logger.throwArgumentError("invalid numeric width", "type", type); - } - var boundsUpper_1 = MaxUint256.mask(signed ? width - 1 : width); - var boundsLower_1 = signed ? boundsUpper_1.add(One).mul(NegativeOne) : Zero; - return function(value) { - var v = bignumber_1.BigNumber.from(value); - if (v.lt(boundsLower_1) || v.gt(boundsUpper_1)) { - logger.throwArgumentError("value out-of-bounds for " + type, "value", value); - } - return (0, bytes_1.hexZeroPad)(v.toTwos(256).toHexString(), 32); - }; - } - } - { - var match = type.match(/^bytes(\d+)$/); - if (match) { - var width_1 = parseInt(match[1]); - if (width_1 === 0 || width_1 > 32 || match[1] !== String(width_1)) { - logger.throwArgumentError("invalid bytes width", "type", type); - } - return function(value) { - var bytes = (0, bytes_1.arrayify)(value); - if (bytes.length !== width_1) { - logger.throwArgumentError("invalid length for " + type, "value", value); - } - return hexPadRight(value); - }; - } - } - switch (type) { - case "address": - return function(value) { - return (0, bytes_1.hexZeroPad)((0, address_1.getAddress)(value), 32); - }; - case "bool": - return function(value) { - return !value ? hexFalse : hexTrue; - }; - case "bytes": - return function(value) { - return (0, keccak256_1.keccak256)(value); - }; - case "string": - return function(value) { - return (0, id_1.id)(value); - }; - } - return null; - } - function encodeType(name, fields) { - return name + "(" + fields.map(function(_a) { - var name2 = _a.name, type = _a.type; - return type + " " + name2; - }).join(",") + ")"; - } - var TypedDataEncoder = ( - /** @class */ - function() { - function TypedDataEncoder2(types) { - (0, properties_1.defineReadOnly)(this, "types", Object.freeze((0, properties_1.deepCopy)(types))); - (0, properties_1.defineReadOnly)(this, "_encoderCache", {}); - (0, properties_1.defineReadOnly)(this, "_types", {}); - var links = {}; - var parents = {}; - var subtypes = {}; - Object.keys(types).forEach(function(type) { - links[type] = {}; - parents[type] = []; - subtypes[type] = {}; - }); - var _loop_1 = function(name_12) { - var uniqueNames = {}; - types[name_12].forEach(function(field) { - if (uniqueNames[field.name]) { - logger.throwArgumentError("duplicate variable name " + JSON.stringify(field.name) + " in " + JSON.stringify(name_12), "types", types); - } - uniqueNames[field.name] = true; - var baseType = field.type.match(/^([^\x5b]*)(\x5b|$)/)[1]; - if (baseType === name_12) { - logger.throwArgumentError("circular type reference to " + JSON.stringify(baseType), "types", types); - } - var encoder = getBaseEncoder(baseType); - if (encoder) { - return; - } - if (!parents[baseType]) { - logger.throwArgumentError("unknown type " + JSON.stringify(baseType), "types", types); - } - parents[baseType].push(name_12); - links[name_12][baseType] = true; - }); - }; - for (var name_1 in types) { - _loop_1(name_1); - } - var primaryTypes = Object.keys(parents).filter(function(n) { - return parents[n].length === 0; - }); - if (primaryTypes.length === 0) { - logger.throwArgumentError("missing primary type", "types", types); - } else if (primaryTypes.length > 1) { - logger.throwArgumentError("ambiguous primary types or unused types: " + primaryTypes.map(function(t) { - return JSON.stringify(t); - }).join(", "), "types", types); - } - (0, properties_1.defineReadOnly)(this, "primaryType", primaryTypes[0]); - function checkCircular(type, found) { - if (found[type]) { - logger.throwArgumentError("circular type reference to " + JSON.stringify(type), "types", types); - } - found[type] = true; - Object.keys(links[type]).forEach(function(child) { - if (!parents[child]) { - return; - } - checkCircular(child, found); - Object.keys(found).forEach(function(subtype) { - subtypes[subtype][child] = true; - }); - }); - delete found[type]; - } - checkCircular(this.primaryType, {}); - for (var name_2 in subtypes) { - var st = Object.keys(subtypes[name_2]); - st.sort(); - this._types[name_2] = encodeType(name_2, types[name_2]) + st.map(function(t) { - return encodeType(t, types[t]); - }).join(""); - } - } - TypedDataEncoder2.prototype.getEncoder = function(type) { - var encoder = this._encoderCache[type]; - if (!encoder) { - encoder = this._encoderCache[type] = this._getEncoder(type); - } - return encoder; - }; - TypedDataEncoder2.prototype._getEncoder = function(type) { - var _this = this; - { - var encoder = getBaseEncoder(type); - if (encoder) { - return encoder; - } - } - var match = type.match(/^(.*)(\x5b(\d*)\x5d)$/); - if (match) { - var subtype_1 = match[1]; - var subEncoder_1 = this.getEncoder(subtype_1); - var length_1 = parseInt(match[3]); - return function(value) { - if (length_1 >= 0 && value.length !== length_1) { - logger.throwArgumentError("array length mismatch; expected length ${ arrayLength }", "value", value); - } - var result = value.map(subEncoder_1); - if (_this._types[subtype_1]) { - result = result.map(keccak256_1.keccak256); - } - return (0, keccak256_1.keccak256)((0, bytes_1.hexConcat)(result)); - }; - } - var fields = this.types[type]; - if (fields) { - var encodedType_1 = (0, id_1.id)(this._types[type]); - return function(value) { - var values = fields.map(function(_a) { - var name = _a.name, type2 = _a.type; - var result = _this.getEncoder(type2)(value[name]); - if (_this._types[type2]) { - return (0, keccak256_1.keccak256)(result); - } - return result; - }); - values.unshift(encodedType_1); - return (0, bytes_1.hexConcat)(values); - }; - } - return logger.throwArgumentError("unknown type: " + type, "type", type); - }; - TypedDataEncoder2.prototype.encodeType = function(name) { - var result = this._types[name]; - if (!result) { - logger.throwArgumentError("unknown type: " + JSON.stringify(name), "name", name); - } - return result; - }; - TypedDataEncoder2.prototype.encodeData = function(type, value) { - return this.getEncoder(type)(value); - }; - TypedDataEncoder2.prototype.hashStruct = function(name, value) { - return (0, keccak256_1.keccak256)(this.encodeData(name, value)); - }; - TypedDataEncoder2.prototype.encode = function(value) { - return this.encodeData(this.primaryType, value); - }; - TypedDataEncoder2.prototype.hash = function(value) { - return this.hashStruct(this.primaryType, value); - }; - TypedDataEncoder2.prototype._visit = function(type, value, callback) { - var _this = this; - { - var encoder = getBaseEncoder(type); - if (encoder) { - return callback(type, value); - } - } - var match = type.match(/^(.*)(\x5b(\d*)\x5d)$/); - if (match) { - var subtype_2 = match[1]; - var length_2 = parseInt(match[3]); - if (length_2 >= 0 && value.length !== length_2) { - logger.throwArgumentError("array length mismatch; expected length ${ arrayLength }", "value", value); - } - return value.map(function(v) { - return _this._visit(subtype_2, v, callback); - }); - } - var fields = this.types[type]; - if (fields) { - return fields.reduce(function(accum, _a) { - var name = _a.name, type2 = _a.type; - accum[name] = _this._visit(type2, value[name], callback); - return accum; - }, {}); - } - return logger.throwArgumentError("unknown type: " + type, "type", type); - }; - TypedDataEncoder2.prototype.visit = function(value, callback) { - return this._visit(this.primaryType, value, callback); - }; - TypedDataEncoder2.from = function(types) { - return new TypedDataEncoder2(types); - }; - TypedDataEncoder2.getPrimaryType = function(types) { - return TypedDataEncoder2.from(types).primaryType; - }; - TypedDataEncoder2.hashStruct = function(name, types, value) { - return TypedDataEncoder2.from(types).hashStruct(name, value); - }; - TypedDataEncoder2.hashDomain = function(domain) { - var domainFields = []; - for (var name_3 in domain) { - var type = domainFieldTypes[name_3]; - if (!type) { - logger.throwArgumentError("invalid typed-data domain key: " + JSON.stringify(name_3), "domain", domain); - } - domainFields.push({ name: name_3, type }); - } - domainFields.sort(function(a, b) { - return domainFieldNames.indexOf(a.name) - domainFieldNames.indexOf(b.name); - }); - return TypedDataEncoder2.hashStruct("EIP712Domain", { EIP712Domain: domainFields }, domain); - }; - TypedDataEncoder2.encode = function(domain, types, value) { - return (0, bytes_1.hexConcat)([ - "0x1901", - TypedDataEncoder2.hashDomain(domain), - TypedDataEncoder2.from(types).hash(value) - ]); - }; - TypedDataEncoder2.hash = function(domain, types, value) { - return (0, keccak256_1.keccak256)(TypedDataEncoder2.encode(domain, types, value)); - }; - TypedDataEncoder2.resolveNames = function(domain, types, value, resolveName) { - return __awaiter(this, void 0, void 0, function() { - var ensCache, encoder, _a, _b, _i, name_4, _c, _d; - return __generator(this, function(_e) { - switch (_e.label) { - case 0: - domain = (0, properties_1.shallowCopy)(domain); - ensCache = {}; - if (domain.verifyingContract && !(0, bytes_1.isHexString)(domain.verifyingContract, 20)) { - ensCache[domain.verifyingContract] = "0x"; - } - encoder = TypedDataEncoder2.from(types); - encoder.visit(value, function(type, value2) { - if (type === "address" && !(0, bytes_1.isHexString)(value2, 20)) { - ensCache[value2] = "0x"; - } - return value2; - }); - _a = []; - for (_b in ensCache) - _a.push(_b); - _i = 0; - _e.label = 1; - case 1: - if (!(_i < _a.length)) - return [3, 4]; - name_4 = _a[_i]; - _c = ensCache; - _d = name_4; - return [4, resolveName(name_4)]; - case 2: - _c[_d] = _e.sent(); - _e.label = 3; - case 3: - _i++; - return [3, 1]; - case 4: - if (domain.verifyingContract && ensCache[domain.verifyingContract]) { - domain.verifyingContract = ensCache[domain.verifyingContract]; - } - value = encoder.visit(value, function(type, value2) { - if (type === "address" && ensCache[value2]) { - return ensCache[value2]; - } - return value2; - }); - return [2, { domain, value }]; - } - }); - }); - }; - TypedDataEncoder2.getPayload = function(domain, types, value) { - TypedDataEncoder2.hashDomain(domain); - var domainValues = {}; - var domainTypes = []; - domainFieldNames.forEach(function(name) { - var value2 = domain[name]; - if (value2 == null) { - return; - } - domainValues[name] = domainChecks[name](value2); - domainTypes.push({ name, type: domainFieldTypes[name] }); - }); - var encoder = TypedDataEncoder2.from(types); - var typesWithDomain = (0, properties_1.shallowCopy)(types); - if (typesWithDomain.EIP712Domain) { - logger.throwArgumentError("types must not contain EIP712Domain type", "types.EIP712Domain", types); - } else { - typesWithDomain.EIP712Domain = domainTypes; - } - encoder.encode(value); - return { - types: typesWithDomain, - domain: domainValues, - primaryType: encoder.primaryType, - message: encoder.visit(value, function(type, value2) { - if (type.match(/^bytes(\d*)/)) { - return (0, bytes_1.hexlify)((0, bytes_1.arrayify)(value2)); - } - if (type.match(/^u?int/)) { - return bignumber_1.BigNumber.from(value2).toString(); - } - switch (type) { - case "address": - return value2.toLowerCase(); - case "bool": - return !!value2; - case "string": - if (typeof value2 !== "string") { - logger.throwArgumentError("invalid string", "value", value2); - } - return value2; - } - return logger.throwArgumentError("unsupported type", "type", type); - }) - }; - }; - return TypedDataEncoder2; - }() - ); - exports2.TypedDataEncoder = TypedDataEncoder; - } -}); - -// node_modules/@ethersproject/hash/lib/index.js -var require_lib15 = __commonJS({ - "node_modules/@ethersproject/hash/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2._TypedDataEncoder = exports2.hashMessage = exports2.messagePrefix = exports2.ensNormalize = exports2.isValidName = exports2.namehash = exports2.dnsEncode = exports2.id = void 0; - var id_1 = require_id(); - Object.defineProperty(exports2, "id", { enumerable: true, get: function() { - return id_1.id; - } }); - var namehash_1 = require_namehash(); - Object.defineProperty(exports2, "dnsEncode", { enumerable: true, get: function() { - return namehash_1.dnsEncode; - } }); - Object.defineProperty(exports2, "isValidName", { enumerable: true, get: function() { - return namehash_1.isValidName; - } }); - Object.defineProperty(exports2, "namehash", { enumerable: true, get: function() { - return namehash_1.namehash; - } }); - var message_1 = require_message(); - Object.defineProperty(exports2, "hashMessage", { enumerable: true, get: function() { - return message_1.hashMessage; - } }); - Object.defineProperty(exports2, "messagePrefix", { enumerable: true, get: function() { - return message_1.messagePrefix; - } }); - var namehash_2 = require_namehash(); - Object.defineProperty(exports2, "ensNormalize", { enumerable: true, get: function() { - return namehash_2.ensNormalize; - } }); - var typed_data_1 = require_typed_data(); - Object.defineProperty(exports2, "_TypedDataEncoder", { enumerable: true, get: function() { - return typed_data_1.TypedDataEncoder; - } }); - } -}); - -// node_modules/minimalistic-assert/index.js -var require_minimalistic_assert = __commonJS({ - "node_modules/minimalistic-assert/index.js"(exports2, module2) { - "use strict"; - module2.exports = assert; - function assert(val, msg) { - if (!val) - throw new Error(msg || "Assertion failed"); - } - assert.equal = function assertEqual(l, r, msg) { - if (l != r) - throw new Error(msg || "Assertion failed: " + l + " != " + r); - }; - } -}); - -// node_modules/inherits/inherits_browser.js -var require_inherits_browser = __commonJS({ - "node_modules/inherits/inherits_browser.js"(exports2, module2) { - "use strict"; - if (typeof Object.create === "function") { - module2.exports = function inherits2(ctor, superCtor) { - if (superCtor) { - ctor.super_ = superCtor; - ctor.prototype = Object.create(superCtor.prototype, { - constructor: { - value: ctor, - enumerable: false, - writable: true, - configurable: true - } - }); - } - }; - } else { - module2.exports = function inherits2(ctor, superCtor) { - if (superCtor) { - ctor.super_ = superCtor; - var TempCtor = function() { - }; - TempCtor.prototype = superCtor.prototype; - ctor.prototype = new TempCtor(); - ctor.prototype.constructor = ctor; - } - }; - } - } -}); - -// node_modules/inherits/inherits.js -var require_inherits = __commonJS({ - "node_modules/inherits/inherits.js"(exports2, module2) { - "use strict"; - try { - util2 = __nccwpck_require__(39023); - if (typeof util2.inherits !== "function") - throw ""; - module2.exports = util2.inherits; - } catch (e) { - module2.exports = require_inherits_browser(); - } - var util2; - } -}); - -// node_modules/hash.js/lib/hash/utils.js -var require_utils = __commonJS({ - "node_modules/hash.js/lib/hash/utils.js"(exports2) { - "use strict"; - var assert = require_minimalistic_assert(); - var inherits2 = require_inherits(); - exports2.inherits = inherits2; - function isSurrogatePair(msg, i) { - if ((msg.charCodeAt(i) & 64512) !== 55296) { - return false; - } - if (i < 0 || i + 1 >= msg.length) { - return false; - } - return (msg.charCodeAt(i + 1) & 64512) === 56320; - } - function toArray2(msg, enc) { - if (Array.isArray(msg)) - return msg.slice(); - if (!msg) - return []; - var res = []; - if (typeof msg === "string") { - if (!enc) { - var p = 0; - for (var i = 0; i < msg.length; i++) { - var c = msg.charCodeAt(i); - if (c < 128) { - res[p++] = c; - } else if (c < 2048) { - res[p++] = c >> 6 | 192; - res[p++] = c & 63 | 128; - } else if (isSurrogatePair(msg, i)) { - c = 65536 + ((c & 1023) << 10) + (msg.charCodeAt(++i) & 1023); - res[p++] = c >> 18 | 240; - res[p++] = c >> 12 & 63 | 128; - res[p++] = c >> 6 & 63 | 128; - res[p++] = c & 63 | 128; - } else { - res[p++] = c >> 12 | 224; - res[p++] = c >> 6 & 63 | 128; - res[p++] = c & 63 | 128; - } - } - } else if (enc === "hex") { - msg = msg.replace(/[^a-z0-9]+/ig, ""); - if (msg.length % 2 !== 0) - msg = "0" + msg; - for (i = 0; i < msg.length; i += 2) - res.push(parseInt(msg[i] + msg[i + 1], 16)); - } - } else { - for (i = 0; i < msg.length; i++) - res[i] = msg[i] | 0; - } - return res; - } - exports2.toArray = toArray2; - function toHex(msg) { - var res = ""; - for (var i = 0; i < msg.length; i++) - res += zero2(msg[i].toString(16)); - return res; - } - exports2.toHex = toHex; - function htonl(w) { - var res = w >>> 24 | w >>> 8 & 65280 | w << 8 & 16711680 | (w & 255) << 24; - return res >>> 0; - } - exports2.htonl = htonl; - function toHex32(msg, endian) { - var res = ""; - for (var i = 0; i < msg.length; i++) { - var w = msg[i]; - if (endian === "little") - w = htonl(w); - res += zero8(w.toString(16)); - } - return res; - } - exports2.toHex32 = toHex32; - function zero2(word) { - if (word.length === 1) - return "0" + word; - else - return word; - } - exports2.zero2 = zero2; - function zero8(word) { - if (word.length === 7) - return "0" + word; - else if (word.length === 6) - return "00" + word; - else if (word.length === 5) - return "000" + word; - else if (word.length === 4) - return "0000" + word; - else if (word.length === 3) - return "00000" + word; - else if (word.length === 2) - return "000000" + word; - else if (word.length === 1) - return "0000000" + word; - else - return word; - } - exports2.zero8 = zero8; - function join32(msg, start, end, endian) { - var len = end - start; - assert(len % 4 === 0); - var res = new Array(len / 4); - for (var i = 0, k = start; i < res.length; i++, k += 4) { - var w; - if (endian === "big") - w = msg[k] << 24 | msg[k + 1] << 16 | msg[k + 2] << 8 | msg[k + 3]; - else - w = msg[k + 3] << 24 | msg[k + 2] << 16 | msg[k + 1] << 8 | msg[k]; - res[i] = w >>> 0; - } - return res; - } - exports2.join32 = join32; - function split32(msg, endian) { - var res = new Array(msg.length * 4); - for (var i = 0, k = 0; i < msg.length; i++, k += 4) { - var m = msg[i]; - if (endian === "big") { - res[k] = m >>> 24; - res[k + 1] = m >>> 16 & 255; - res[k + 2] = m >>> 8 & 255; - res[k + 3] = m & 255; - } else { - res[k + 3] = m >>> 24; - res[k + 2] = m >>> 16 & 255; - res[k + 1] = m >>> 8 & 255; - res[k] = m & 255; - } - } - return res; - } - exports2.split32 = split32; - function rotr32(w, b) { - return w >>> b | w << 32 - b; - } - exports2.rotr32 = rotr32; - function rotl32(w, b) { - return w << b | w >>> 32 - b; - } - exports2.rotl32 = rotl32; - function sum32(a, b) { - return a + b >>> 0; - } - exports2.sum32 = sum32; - function sum32_3(a, b, c) { - return a + b + c >>> 0; - } - exports2.sum32_3 = sum32_3; - function sum32_4(a, b, c, d) { - return a + b + c + d >>> 0; - } - exports2.sum32_4 = sum32_4; - function sum32_5(a, b, c, d, e) { - return a + b + c + d + e >>> 0; - } - exports2.sum32_5 = sum32_5; - function sum64(buf, pos, ah, al) { - var bh = buf[pos]; - var bl = buf[pos + 1]; - var lo = al + bl >>> 0; - var hi = (lo < al ? 1 : 0) + ah + bh; - buf[pos] = hi >>> 0; - buf[pos + 1] = lo; - } - exports2.sum64 = sum64; - function sum64_hi(ah, al, bh, bl) { - var lo = al + bl >>> 0; - var hi = (lo < al ? 1 : 0) + ah + bh; - return hi >>> 0; - } - exports2.sum64_hi = sum64_hi; - function sum64_lo(ah, al, bh, bl) { - var lo = al + bl; - return lo >>> 0; - } - exports2.sum64_lo = sum64_lo; - function sum64_4_hi(ah, al, bh, bl, ch, cl, dh, dl) { - var carry = 0; - var lo = al; - lo = lo + bl >>> 0; - carry += lo < al ? 1 : 0; - lo = lo + cl >>> 0; - carry += lo < cl ? 1 : 0; - lo = lo + dl >>> 0; - carry += lo < dl ? 1 : 0; - var hi = ah + bh + ch + dh + carry; - return hi >>> 0; - } - exports2.sum64_4_hi = sum64_4_hi; - function sum64_4_lo(ah, al, bh, bl, ch, cl, dh, dl) { - var lo = al + bl + cl + dl; - return lo >>> 0; - } - exports2.sum64_4_lo = sum64_4_lo; - function sum64_5_hi(ah, al, bh, bl, ch, cl, dh, dl, eh, el) { - var carry = 0; - var lo = al; - lo = lo + bl >>> 0; - carry += lo < al ? 1 : 0; - lo = lo + cl >>> 0; - carry += lo < cl ? 1 : 0; - lo = lo + dl >>> 0; - carry += lo < dl ? 1 : 0; - lo = lo + el >>> 0; - carry += lo < el ? 1 : 0; - var hi = ah + bh + ch + dh + eh + carry; - return hi >>> 0; - } - exports2.sum64_5_hi = sum64_5_hi; - function sum64_5_lo(ah, al, bh, bl, ch, cl, dh, dl, eh, el) { - var lo = al + bl + cl + dl + el; - return lo >>> 0; - } - exports2.sum64_5_lo = sum64_5_lo; - function rotr64_hi(ah, al, num) { - var r = al << 32 - num | ah >>> num; - return r >>> 0; - } - exports2.rotr64_hi = rotr64_hi; - function rotr64_lo(ah, al, num) { - var r = ah << 32 - num | al >>> num; - return r >>> 0; - } - exports2.rotr64_lo = rotr64_lo; - function shr64_hi(ah, al, num) { - return ah >>> num; - } - exports2.shr64_hi = shr64_hi; - function shr64_lo(ah, al, num) { - var r = ah << 32 - num | al >>> num; - return r >>> 0; - } - exports2.shr64_lo = shr64_lo; - } -}); - -// node_modules/hash.js/lib/hash/common.js -var require_common = __commonJS({ - "node_modules/hash.js/lib/hash/common.js"(exports2) { - "use strict"; - var utils = require_utils(); - var assert = require_minimalistic_assert(); - function BlockHash() { - 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; - } - exports2.BlockHash = BlockHash; - BlockHash.prototype.update = function update(msg, enc) { - msg = utils.toArray(msg, enc); - if (!this.pending) - this.pending = msg; - else - this.pending = this.pending.concat(msg); - this.pendingTotal += msg.length; - if (this.pending.length >= this._delta8) { - msg = this.pending; - var r = msg.length % this._delta8; - this.pending = msg.slice(msg.length - r, msg.length); - if (this.pending.length === 0) - this.pending = null; - msg = utils.join32(msg, 0, msg.length - r, this.endian); - for (var i = 0; i < msg.length; i += this._delta32) - this._update(msg, i, i + this._delta32); - } - return this; - }; - BlockHash.prototype.digest = function digest(enc) { - this.update(this._pad()); - assert(this.pending === null); - return this._digest(enc); - }; - BlockHash.prototype._pad = function pad() { - var len = this.pendingTotal; - var bytes = this._delta8; - var k = bytes - (len + this.padLength) % bytes; - var res = new Array(k + this.padLength); - res[0] = 128; - for (var i = 1; i < k; i++) - res[i] = 0; - len <<= 3; - if (this.endian === "big") { - for (var t = 8; t < this.padLength; t++) - res[i++] = 0; - res[i++] = 0; - res[i++] = 0; - res[i++] = 0; - res[i++] = 0; - res[i++] = len >>> 24 & 255; - res[i++] = len >>> 16 & 255; - res[i++] = len >>> 8 & 255; - res[i++] = len & 255; - } else { - res[i++] = len & 255; - res[i++] = len >>> 8 & 255; - res[i++] = len >>> 16 & 255; - res[i++] = len >>> 24 & 255; - res[i++] = 0; - res[i++] = 0; - res[i++] = 0; - res[i++] = 0; - for (t = 8; t < this.padLength; t++) - res[i++] = 0; - } - return res; - }; - } -}); - -// node_modules/hash.js/lib/hash/sha/common.js -var require_common2 = __commonJS({ - "node_modules/hash.js/lib/hash/sha/common.js"(exports2) { - "use strict"; - var utils = require_utils(); - var rotr32 = utils.rotr32; - function ft_1(s, x, y, z) { - if (s === 0) - return ch32(x, y, z); - if (s === 1 || s === 3) - return p32(x, y, z); - if (s === 2) - return maj32(x, y, z); - } - exports2.ft_1 = ft_1; - function ch32(x, y, z) { - return x & y ^ ~x & z; - } - exports2.ch32 = ch32; - function maj32(x, y, z) { - return x & y ^ x & z ^ y & z; - } - exports2.maj32 = maj32; - function p32(x, y, z) { - return x ^ y ^ z; - } - exports2.p32 = p32; - function s0_256(x) { - return rotr32(x, 2) ^ rotr32(x, 13) ^ rotr32(x, 22); - } - exports2.s0_256 = s0_256; - function s1_256(x) { - return rotr32(x, 6) ^ rotr32(x, 11) ^ rotr32(x, 25); - } - exports2.s1_256 = s1_256; - function g0_256(x) { - return rotr32(x, 7) ^ rotr32(x, 18) ^ x >>> 3; - } - exports2.g0_256 = g0_256; - function g1_256(x) { - return rotr32(x, 17) ^ rotr32(x, 19) ^ x >>> 10; - } - exports2.g1_256 = g1_256; - } -}); - -// node_modules/hash.js/lib/hash/sha/1.js -var require__ = __commonJS({ - "node_modules/hash.js/lib/hash/sha/1.js"(exports2, module2) { - "use strict"; - var utils = require_utils(); - var common = require_common(); - var shaCommon = require_common2(); - var rotl32 = utils.rotl32; - var sum32 = utils.sum32; - var sum32_5 = utils.sum32_5; - var ft_1 = shaCommon.ft_1; - var BlockHash = common.BlockHash; - var sha1_K = [ - 1518500249, - 1859775393, - 2400959708, - 3395469782 - ]; - function SHA1() { - if (!(this instanceof SHA1)) - return new SHA1(); - BlockHash.call(this); - this.h = [ - 1732584193, - 4023233417, - 2562383102, - 271733878, - 3285377520 - ]; - this.W = new Array(80); - } - utils.inherits(SHA1, BlockHash); - module2.exports = SHA1; - SHA1.blockSize = 512; - SHA1.outSize = 160; - SHA1.hmacStrength = 80; - SHA1.padLength = 64; - SHA1.prototype._update = function _update(msg, start) { - var W = this.W; - for (var i = 0; i < 16; i++) - W[i] = msg[start + i]; - for (; i < W.length; i++) - W[i] = rotl32(W[i - 3] ^ W[i - 8] ^ W[i - 14] ^ W[i - 16], 1); - var a = this.h[0]; - var b = this.h[1]; - var c = this.h[2]; - var d = this.h[3]; - var e = this.h[4]; - for (i = 0; i < W.length; i++) { - var s = ~~(i / 20); - var t = sum32_5(rotl32(a, 5), ft_1(s, b, c, d), e, W[i], sha1_K[s]); - e = d; - d = c; - c = rotl32(b, 30); - b = a; - a = t; - } - this.h[0] = sum32(this.h[0], a); - this.h[1] = sum32(this.h[1], b); - this.h[2] = sum32(this.h[2], c); - this.h[3] = sum32(this.h[3], d); - this.h[4] = sum32(this.h[4], e); - }; - SHA1.prototype._digest = function digest(enc) { - if (enc === "hex") - return utils.toHex32(this.h, "big"); - else - return utils.split32(this.h, "big"); - }; - } -}); - -// node_modules/hash.js/lib/hash/sha/256.js -var require__2 = __commonJS({ - "node_modules/hash.js/lib/hash/sha/256.js"(exports2, module2) { - "use strict"; - var utils = require_utils(); - var common = require_common(); - var shaCommon = require_common2(); - var assert = require_minimalistic_assert(); - var sum32 = utils.sum32; - var sum32_4 = utils.sum32_4; - var sum32_5 = utils.sum32_5; - var ch32 = shaCommon.ch32; - var maj32 = shaCommon.maj32; - var s0_256 = shaCommon.s0_256; - var s1_256 = shaCommon.s1_256; - var g0_256 = shaCommon.g0_256; - var g1_256 = shaCommon.g1_256; - var BlockHash = common.BlockHash; - var sha256_K = [ - 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 SHA256() { - if (!(this instanceof SHA256)) - return new SHA256(); - BlockHash.call(this); - this.h = [ - 1779033703, - 3144134277, - 1013904242, - 2773480762, - 1359893119, - 2600822924, - 528734635, - 1541459225 - ]; - this.k = sha256_K; - this.W = new Array(64); - } - utils.inherits(SHA256, BlockHash); - module2.exports = SHA256; - SHA256.blockSize = 512; - SHA256.outSize = 256; - SHA256.hmacStrength = 192; - SHA256.padLength = 64; - SHA256.prototype._update = function _update(msg, start) { - var W = this.W; - for (var i = 0; i < 16; i++) - W[i] = msg[start + i]; - for (; i < W.length; i++) - W[i] = sum32_4(g1_256(W[i - 2]), W[i - 7], g0_256(W[i - 15]), W[i - 16]); - var a = this.h[0]; - var b = this.h[1]; - var c = this.h[2]; - var d = this.h[3]; - var e = this.h[4]; - var f = this.h[5]; - var g = this.h[6]; - var h = this.h[7]; - assert(this.k.length === W.length); - for (i = 0; i < W.length; i++) { - var T1 = sum32_5(h, s1_256(e), ch32(e, f, g), this.k[i], W[i]); - var T2 = sum32(s0_256(a), maj32(a, b, c)); - h = g; - g = f; - f = e; - e = sum32(d, T1); - d = c; - c = b; - b = a; - a = sum32(T1, T2); - } - this.h[0] = sum32(this.h[0], a); - this.h[1] = sum32(this.h[1], b); - this.h[2] = sum32(this.h[2], c); - this.h[3] = sum32(this.h[3], d); - this.h[4] = sum32(this.h[4], e); - this.h[5] = sum32(this.h[5], f); - this.h[6] = sum32(this.h[6], g); - this.h[7] = sum32(this.h[7], h); - }; - SHA256.prototype._digest = function digest(enc) { - if (enc === "hex") - return utils.toHex32(this.h, "big"); - else - return utils.split32(this.h, "big"); - }; - } -}); - -// node_modules/hash.js/lib/hash/sha/224.js -var require__3 = __commonJS({ - "node_modules/hash.js/lib/hash/sha/224.js"(exports2, module2) { - "use strict"; - var utils = require_utils(); - var SHA256 = require__2(); - function SHA224() { - if (!(this instanceof SHA224)) - return new SHA224(); - SHA256.call(this); - this.h = [ - 3238371032, - 914150663, - 812702999, - 4144912697, - 4290775857, - 1750603025, - 1694076839, - 3204075428 - ]; - } - utils.inherits(SHA224, SHA256); - module2.exports = SHA224; - SHA224.blockSize = 512; - SHA224.outSize = 224; - SHA224.hmacStrength = 192; - SHA224.padLength = 64; - SHA224.prototype._digest = function digest(enc) { - if (enc === "hex") - return utils.toHex32(this.h.slice(0, 7), "big"); - else - return utils.split32(this.h.slice(0, 7), "big"); - }; - } -}); - -// node_modules/hash.js/lib/hash/sha/512.js -var require__4 = __commonJS({ - "node_modules/hash.js/lib/hash/sha/512.js"(exports2, module2) { - "use strict"; - var utils = require_utils(); - var common = require_common(); - var assert = require_minimalistic_assert(); - var rotr64_hi = utils.rotr64_hi; - var rotr64_lo = utils.rotr64_lo; - var shr64_hi = utils.shr64_hi; - var shr64_lo = utils.shr64_lo; - var sum64 = utils.sum64; - var sum64_hi = utils.sum64_hi; - var sum64_lo = utils.sum64_lo; - var sum64_4_hi = utils.sum64_4_hi; - var sum64_4_lo = utils.sum64_4_lo; - var sum64_5_hi = utils.sum64_5_hi; - var sum64_5_lo = utils.sum64_5_lo; - var BlockHash = common.BlockHash; - var sha512_K = [ - 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 SHA512() { - if (!(this instanceof SHA512)) - return new SHA512(); - BlockHash.call(this); - this.h = [ - 1779033703, - 4089235720, - 3144134277, - 2227873595, - 1013904242, - 4271175723, - 2773480762, - 1595750129, - 1359893119, - 2917565137, - 2600822924, - 725511199, - 528734635, - 4215389547, - 1541459225, - 327033209 - ]; - this.k = sha512_K; - this.W = new Array(160); - } - utils.inherits(SHA512, BlockHash); - module2.exports = SHA512; - SHA512.blockSize = 1024; - SHA512.outSize = 512; - SHA512.hmacStrength = 192; - SHA512.padLength = 128; - SHA512.prototype._prepareBlock = function _prepareBlock(msg, start) { - var W = this.W; - for (var i = 0; i < 32; i++) - W[i] = msg[start + i]; - for (; i < W.length; i += 2) { - var c0_hi = g1_512_hi(W[i - 4], W[i - 3]); - var c0_lo = g1_512_lo(W[i - 4], W[i - 3]); - var c1_hi = W[i - 14]; - var c1_lo = W[i - 13]; - var c2_hi = g0_512_hi(W[i - 30], W[i - 29]); - var c2_lo = g0_512_lo(W[i - 30], W[i - 29]); - var c3_hi = W[i - 32]; - var c3_lo = W[i - 31]; - W[i] = sum64_4_hi( - c0_hi, - c0_lo, - c1_hi, - c1_lo, - c2_hi, - c2_lo, - c3_hi, - c3_lo - ); - W[i + 1] = sum64_4_lo( - c0_hi, - c0_lo, - c1_hi, - c1_lo, - c2_hi, - c2_lo, - c3_hi, - c3_lo - ); - } - }; - SHA512.prototype._update = function _update(msg, start) { - this._prepareBlock(msg, start); - var W = this.W; - var ah = this.h[0]; - var al = this.h[1]; - var bh = this.h[2]; - var bl = this.h[3]; - var ch = this.h[4]; - var cl = this.h[5]; - var dh = this.h[6]; - var dl = this.h[7]; - var eh = this.h[8]; - var el = this.h[9]; - var fh = this.h[10]; - var fl = this.h[11]; - var gh = this.h[12]; - var gl = this.h[13]; - var hh = this.h[14]; - var hl = this.h[15]; - assert(this.k.length === W.length); - for (var i = 0; i < W.length; i += 2) { - var c0_hi = hh; - var c0_lo = hl; - var c1_hi = s1_512_hi(eh, el); - var c1_lo = s1_512_lo(eh, el); - var c2_hi = ch64_hi(eh, el, fh, fl, gh, gl); - var c2_lo = ch64_lo(eh, el, fh, fl, gh, gl); - var c3_hi = this.k[i]; - var c3_lo = this.k[i + 1]; - var c4_hi = W[i]; - var c4_lo = W[i + 1]; - var T1_hi = sum64_5_hi( - c0_hi, - c0_lo, - c1_hi, - c1_lo, - c2_hi, - c2_lo, - c3_hi, - c3_lo, - c4_hi, - c4_lo - ); - var T1_lo = sum64_5_lo( - c0_hi, - c0_lo, - c1_hi, - c1_lo, - c2_hi, - c2_lo, - c3_hi, - c3_lo, - c4_hi, - c4_lo - ); - c0_hi = s0_512_hi(ah, al); - c0_lo = s0_512_lo(ah, al); - c1_hi = maj64_hi(ah, al, bh, bl, ch, cl); - c1_lo = maj64_lo(ah, al, bh, bl, ch, cl); - var T2_hi = sum64_hi(c0_hi, c0_lo, c1_hi, c1_lo); - var T2_lo = sum64_lo(c0_hi, c0_lo, c1_hi, c1_lo); - hh = gh; - hl = gl; - gh = fh; - gl = fl; - fh = eh; - fl = el; - eh = sum64_hi(dh, dl, T1_hi, T1_lo); - el = sum64_lo(dl, dl, T1_hi, T1_lo); - dh = ch; - dl = cl; - ch = bh; - cl = bl; - bh = ah; - bl = al; - ah = sum64_hi(T1_hi, T1_lo, T2_hi, T2_lo); - al = sum64_lo(T1_hi, T1_lo, T2_hi, T2_lo); - } - sum64(this.h, 0, ah, al); - sum64(this.h, 2, bh, bl); - sum64(this.h, 4, ch, cl); - sum64(this.h, 6, dh, dl); - sum64(this.h, 8, eh, el); - sum64(this.h, 10, fh, fl); - sum64(this.h, 12, gh, gl); - sum64(this.h, 14, hh, hl); - }; - SHA512.prototype._digest = function digest(enc) { - if (enc === "hex") - return utils.toHex32(this.h, "big"); - else - return utils.split32(this.h, "big"); - }; - function ch64_hi(xh, xl, yh, yl, zh) { - var r = xh & yh ^ ~xh & zh; - if (r < 0) - r += 4294967296; - return r; - } - function ch64_lo(xh, xl, yh, yl, zh, zl) { - var r = xl & yl ^ ~xl & zl; - if (r < 0) - r += 4294967296; - return r; - } - function maj64_hi(xh, xl, yh, yl, zh) { - var r = xh & yh ^ xh & zh ^ yh & zh; - if (r < 0) - r += 4294967296; - return r; - } - function maj64_lo(xh, xl, yh, yl, zh, zl) { - var r = xl & yl ^ xl & zl ^ yl & zl; - if (r < 0) - r += 4294967296; - return r; - } - function s0_512_hi(xh, xl) { - var c0_hi = rotr64_hi(xh, xl, 28); - var c1_hi = rotr64_hi(xl, xh, 2); - var c2_hi = rotr64_hi(xl, xh, 7); - var r = c0_hi ^ c1_hi ^ c2_hi; - if (r < 0) - r += 4294967296; - return r; - } - function s0_512_lo(xh, xl) { - var c0_lo = rotr64_lo(xh, xl, 28); - var c1_lo = rotr64_lo(xl, xh, 2); - var c2_lo = rotr64_lo(xl, xh, 7); - var r = c0_lo ^ c1_lo ^ c2_lo; - if (r < 0) - r += 4294967296; - return r; - } - function s1_512_hi(xh, xl) { - var c0_hi = rotr64_hi(xh, xl, 14); - var c1_hi = rotr64_hi(xh, xl, 18); - var c2_hi = rotr64_hi(xl, xh, 9); - var r = c0_hi ^ c1_hi ^ c2_hi; - if (r < 0) - r += 4294967296; - return r; - } - function s1_512_lo(xh, xl) { - var c0_lo = rotr64_lo(xh, xl, 14); - var c1_lo = rotr64_lo(xh, xl, 18); - var c2_lo = rotr64_lo(xl, xh, 9); - var r = c0_lo ^ c1_lo ^ c2_lo; - if (r < 0) - r += 4294967296; - return r; - } - function g0_512_hi(xh, xl) { - var c0_hi = rotr64_hi(xh, xl, 1); - var c1_hi = rotr64_hi(xh, xl, 8); - var c2_hi = shr64_hi(xh, xl, 7); - var r = c0_hi ^ c1_hi ^ c2_hi; - if (r < 0) - r += 4294967296; - return r; - } - function g0_512_lo(xh, xl) { - var c0_lo = rotr64_lo(xh, xl, 1); - var c1_lo = rotr64_lo(xh, xl, 8); - var c2_lo = shr64_lo(xh, xl, 7); - var r = c0_lo ^ c1_lo ^ c2_lo; - if (r < 0) - r += 4294967296; - return r; - } - function g1_512_hi(xh, xl) { - var c0_hi = rotr64_hi(xh, xl, 19); - var c1_hi = rotr64_hi(xl, xh, 29); - var c2_hi = shr64_hi(xh, xl, 6); - var r = c0_hi ^ c1_hi ^ c2_hi; - if (r < 0) - r += 4294967296; - return r; - } - function g1_512_lo(xh, xl) { - var c0_lo = rotr64_lo(xh, xl, 19); - var c1_lo = rotr64_lo(xl, xh, 29); - var c2_lo = shr64_lo(xh, xl, 6); - var r = c0_lo ^ c1_lo ^ c2_lo; - if (r < 0) - r += 4294967296; - return r; - } - } -}); - -// node_modules/hash.js/lib/hash/sha/384.js -var require__5 = __commonJS({ - "node_modules/hash.js/lib/hash/sha/384.js"(exports2, module2) { - "use strict"; - var utils = require_utils(); - var SHA512 = require__4(); - function SHA384() { - if (!(this instanceof SHA384)) - return new SHA384(); - SHA512.call(this); - this.h = [ - 3418070365, - 3238371032, - 1654270250, - 914150663, - 2438529370, - 812702999, - 355462360, - 4144912697, - 1731405415, - 4290775857, - 2394180231, - 1750603025, - 3675008525, - 1694076839, - 1203062813, - 3204075428 - ]; - } - utils.inherits(SHA384, SHA512); - module2.exports = SHA384; - SHA384.blockSize = 1024; - SHA384.outSize = 384; - SHA384.hmacStrength = 192; - SHA384.padLength = 128; - SHA384.prototype._digest = function digest(enc) { - if (enc === "hex") - return utils.toHex32(this.h.slice(0, 12), "big"); - else - return utils.split32(this.h.slice(0, 12), "big"); - }; - } -}); - -// node_modules/hash.js/lib/hash/sha.js -var require_sha = __commonJS({ - "node_modules/hash.js/lib/hash/sha.js"(exports2) { - "use strict"; - exports2.sha1 = require__(); - exports2.sha224 = require__3(); - exports2.sha256 = require__2(); - exports2.sha384 = require__5(); - exports2.sha512 = require__4(); - } -}); - -// node_modules/hash.js/lib/hash/ripemd.js -var require_ripemd = __commonJS({ - "node_modules/hash.js/lib/hash/ripemd.js"(exports2) { - "use strict"; - var utils = require_utils(); - var common = require_common(); - var rotl32 = utils.rotl32; - var sum32 = utils.sum32; - var sum32_3 = utils.sum32_3; - var sum32_4 = utils.sum32_4; - var BlockHash = common.BlockHash; - function RIPEMD160() { - if (!(this instanceof RIPEMD160)) - return new RIPEMD160(); - BlockHash.call(this); - this.h = [1732584193, 4023233417, 2562383102, 271733878, 3285377520]; - this.endian = "little"; - } - utils.inherits(RIPEMD160, BlockHash); - exports2.ripemd160 = RIPEMD160; - RIPEMD160.blockSize = 512; - RIPEMD160.outSize = 160; - RIPEMD160.hmacStrength = 192; - RIPEMD160.padLength = 64; - RIPEMD160.prototype._update = function update(msg, start) { - var A = this.h[0]; - var B = this.h[1]; - var C = this.h[2]; - var D = this.h[3]; - var E = this.h[4]; - var Ah = A; - var Bh = B; - var Ch = C; - var Dh = D; - var Eh = E; - for (var j = 0; j < 80; j++) { - var T = sum32( - rotl32( - sum32_4(A, f(j, B, C, D), msg[r[j] + start], K(j)), - s[j] - ), - E - ); - A = E; - E = D; - D = rotl32(C, 10); - C = B; - B = T; - T = sum32( - rotl32( - sum32_4(Ah, f(79 - j, Bh, Ch, Dh), msg[rh[j] + start], Kh(j)), - sh[j] - ), - Eh - ); - Ah = Eh; - Eh = Dh; - Dh = rotl32(Ch, 10); - Ch = Bh; - Bh = T; - } - T = sum32_3(this.h[1], C, Dh); - this.h[1] = sum32_3(this.h[2], D, Eh); - this.h[2] = sum32_3(this.h[3], E, Ah); - this.h[3] = sum32_3(this.h[4], A, Bh); - this.h[4] = sum32_3(this.h[0], B, Ch); - this.h[0] = T; - }; - RIPEMD160.prototype._digest = function digest(enc) { - if (enc === "hex") - return utils.toHex32(this.h, "little"); - else - return utils.split32(this.h, "little"); - }; - function f(j, x, y, z) { - if (j <= 15) - return x ^ y ^ z; - else if (j <= 31) - return x & y | ~x & z; - else if (j <= 47) - return (x | ~y) ^ z; - else if (j <= 63) - return x & z | y & ~z; - else - return x ^ (y | ~z); - } - function K(j) { - if (j <= 15) - return 0; - else if (j <= 31) - return 1518500249; - else if (j <= 47) - return 1859775393; - else if (j <= 63) - return 2400959708; - else - return 2840853838; - } - function Kh(j) { - if (j <= 15) - return 1352829926; - else if (j <= 31) - return 1548603684; - else if (j <= 47) - return 1836072691; - else if (j <= 63) - return 2053994217; - else - return 0; - } - var r = [ - 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 - ]; - var rh = [ - 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 - ]; - var s = [ - 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 - ]; - var sh = [ - 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 - ]; - } -}); - -// node_modules/hash.js/lib/hash/hmac.js -var require_hmac = __commonJS({ - "node_modules/hash.js/lib/hash/hmac.js"(exports2, module2) { - "use strict"; - var utils = require_utils(); - var assert = require_minimalistic_assert(); - function Hmac(hash, key, enc) { - if (!(this instanceof Hmac)) - return new Hmac(hash, key, enc); - this.Hash = hash; - this.blockSize = hash.blockSize / 8; - this.outSize = hash.outSize / 8; - this.inner = null; - this.outer = null; - this._init(utils.toArray(key, enc)); - } - module2.exports = Hmac; - Hmac.prototype._init = function init(key) { - if (key.length > this.blockSize) - key = new this.Hash().update(key).digest(); - assert(key.length <= this.blockSize); - for (var i = key.length; i < this.blockSize; i++) - key.push(0); - for (i = 0; i < key.length; i++) - key[i] ^= 54; - this.inner = new this.Hash().update(key); - for (i = 0; i < key.length; i++) - key[i] ^= 106; - this.outer = new this.Hash().update(key); - }; - Hmac.prototype.update = function update(msg, enc) { - this.inner.update(msg, enc); - return this; - }; - Hmac.prototype.digest = function digest(enc) { - this.outer.update(this.inner.digest()); - return this.outer.digest(enc); - }; - } -}); - -// node_modules/hash.js/lib/hash.js -var require_hash = __commonJS({ - "node_modules/hash.js/lib/hash.js"(exports2) { - "use strict"; - var hash = exports2; - hash.utils = require_utils(); - hash.common = require_common(); - hash.sha = require_sha(); - hash.ripemd = require_ripemd(); - hash.hmac = require_hmac(); - hash.sha1 = hash.sha.sha1; - hash.sha256 = hash.sha.sha256; - hash.sha224 = hash.sha.sha224; - hash.sha384 = hash.sha.sha384; - hash.sha512 = hash.sha.sha512; - hash.ripemd160 = hash.ripemd.ripemd160; - } -}); - -// node_modules/@ethersproject/sha2/lib/types.js -var require_types = __commonJS({ - "node_modules/@ethersproject/sha2/lib/types.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SupportedAlgorithm = void 0; - var SupportedAlgorithm; - (function(SupportedAlgorithm2) { - SupportedAlgorithm2["sha256"] = "sha256"; - SupportedAlgorithm2["sha512"] = "sha512"; - })(SupportedAlgorithm = exports2.SupportedAlgorithm || (exports2.SupportedAlgorithm = {})); - } -}); - -// node_modules/@ethersproject/sha2/lib/_version.js -var require_version11 = __commonJS({ - "node_modules/@ethersproject/sha2/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "sha2/5.7.0"; - } -}); - -// node_modules/@ethersproject/sha2/lib/sha2.js -var require_sha2 = __commonJS({ - "node_modules/@ethersproject/sha2/lib/sha2.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.computeHmac = exports2.sha512 = exports2.sha256 = exports2.ripemd160 = void 0; - var crypto_1 = __nccwpck_require__(76982); - var hash_js_1 = __importDefault(require_hash()); - var bytes_1 = require_lib2(); - var types_1 = require_types(); - var logger_1 = require_lib(); - var _version_1 = require_version11(); - var logger = new logger_1.Logger(_version_1.version); - function ripemd160(data) { - return "0x" + hash_js_1.default.ripemd160().update((0, bytes_1.arrayify)(data)).digest("hex"); - } - exports2.ripemd160 = ripemd160; - function sha256(data) { - return "0x" + (0, crypto_1.createHash)("sha256").update(Buffer.from((0, bytes_1.arrayify)(data))).digest("hex"); - } - exports2.sha256 = sha256; - function sha512(data) { - return "0x" + (0, crypto_1.createHash)("sha512").update(Buffer.from((0, bytes_1.arrayify)(data))).digest("hex"); - } - exports2.sha512 = sha512; - function computeHmac(algorithm, key, data) { - if (!types_1.SupportedAlgorithm[algorithm]) { - logger.throwError("unsupported algorithm - " + algorithm, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "computeHmac", - algorithm - }); - } - return "0x" + (0, crypto_1.createHmac)(algorithm, Buffer.from((0, bytes_1.arrayify)(key))).update(Buffer.from((0, bytes_1.arrayify)(data))).digest("hex"); - } - exports2.computeHmac = computeHmac; - } -}); - -// node_modules/@ethersproject/sha2/lib/index.js -var require_lib16 = __commonJS({ - "node_modules/@ethersproject/sha2/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SupportedAlgorithm = exports2.sha512 = exports2.sha256 = exports2.ripemd160 = exports2.computeHmac = void 0; - var sha2_1 = require_sha2(); - Object.defineProperty(exports2, "computeHmac", { enumerable: true, get: function() { - return sha2_1.computeHmac; - } }); - Object.defineProperty(exports2, "ripemd160", { enumerable: true, get: function() { - return sha2_1.ripemd160; - } }); - Object.defineProperty(exports2, "sha256", { enumerable: true, get: function() { - return sha2_1.sha256; - } }); - Object.defineProperty(exports2, "sha512", { enumerable: true, get: function() { - return sha2_1.sha512; - } }); - var types_1 = require_types(); - Object.defineProperty(exports2, "SupportedAlgorithm", { enumerable: true, get: function() { - return types_1.SupportedAlgorithm; - } }); - } -}); - -// node_modules/@ethersproject/web/lib/_version.js -var require_version12 = __commonJS({ - "node_modules/@ethersproject/web/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "web/5.7.1"; - } -}); - -// node_modules/@ethersproject/web/lib/geturl.js -var require_geturl = __commonJS({ - "node_modules/@ethersproject/web/lib/geturl.js"(exports2) { - "use strict"; - var __awaiter = exports2 && exports2.__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 = exports2 && exports2.__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 }; - } - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getUrl = void 0; - var http_1 = __importDefault(__nccwpck_require__(58611)); - var https_1 = __importDefault(__nccwpck_require__(65692)); - var zlib_1 = __nccwpck_require__(43106); - var url_1 = __nccwpck_require__(87016); - var bytes_1 = require_lib2(); - var properties_1 = require_lib4(); - var logger_1 = require_lib(); - var _version_1 = require_version12(); - var logger = new logger_1.Logger(_version_1.version); - function getResponse(request) { - return new Promise(function(resolve, reject) { - request.once("response", function(resp) { - var response = { - statusCode: resp.statusCode, - statusMessage: resp.statusMessage, - headers: Object.keys(resp.headers).reduce(function(accum, name) { - var value = resp.headers[name]; - if (Array.isArray(value)) { - value = value.join(", "); - } - accum[name] = value; - return accum; - }, {}), - body: null - }; - resp.on("data", function(chunk) { - if (response.body == null) { - response.body = new Uint8Array(0); - } - response.body = (0, bytes_1.concat)([response.body, chunk]); - }); - resp.on("end", function() { - if (response.headers["content-encoding"] === "gzip") { - response.body = (0, bytes_1.arrayify)((0, zlib_1.gunzipSync)(response.body)); - } - resolve(response); - }); - resp.on("error", function(error) { - error.response = response; - reject(error); - }); - }); - request.on("error", function(error) { - reject(error); - }); - }); - } - function nonnull(value) { - if (value == null) { - return ""; - } - return value; - } - function getUrl(href, options) { - return __awaiter(this, void 0, void 0, function() { - var url2, request, req, response; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - if (options == null) { - options = {}; - } - url2 = (0, url_1.parse)(href); - request = { - protocol: nonnull(url2.protocol), - hostname: nonnull(url2.hostname), - port: nonnull(url2.port), - path: nonnull(url2.pathname) + nonnull(url2.search), - method: options.method || "GET", - headers: (0, properties_1.shallowCopy)(options.headers || {}) - }; - if (options.allowGzip) { - request.headers["accept-encoding"] = "gzip"; - } - req = null; - switch (nonnull(url2.protocol)) { - case "http:": - req = http_1.default.request(request); - break; - case "https:": - req = https_1.default.request(request); - break; - default: - logger.throwError("unsupported protocol " + url2.protocol, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - protocol: url2.protocol, - operation: "request" - }); - } - if (options.body) { - req.write(Buffer.from(options.body)); - } - req.end(); - return [4, getResponse(req)]; - case 1: - response = _a.sent(); - return [2, response]; - } - }); - }); - } - exports2.getUrl = getUrl; - } -}); - -// node_modules/@ethersproject/web/lib/index.js -var require_lib17 = __commonJS({ - "node_modules/@ethersproject/web/lib/index.js"(exports2) { - "use strict"; - var __awaiter = exports2 && exports2.__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 = exports2 && exports2.__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(exports2, "__esModule", { value: true }); - exports2.poll = exports2.fetchJson = exports2._fetchData = void 0; - var base64_1 = require_lib7(); - var bytes_1 = require_lib2(); - var properties_1 = require_lib4(); - var strings_1 = require_lib11(); - var logger_1 = require_lib(); - var _version_1 = require_version12(); - var logger = new logger_1.Logger(_version_1.version); - var geturl_1 = require_geturl(); - function staller(duration) { - return new Promise(function(resolve) { - setTimeout(resolve, duration); - }); - } - function bodyify(value, type) { - if (value == null) { - return null; - } - if (typeof value === "string") { - return value; - } - if ((0, bytes_1.isBytesLike)(value)) { - if (type && (type.split("/")[0] === "text" || type.split(";")[0].trim() === "application/json")) { - try { - return (0, strings_1.toUtf8String)(value); - } catch (error) { - } - ; - } - return (0, bytes_1.hexlify)(value); - } - return value; - } - function unpercent(value) { - return (0, strings_1.toUtf8Bytes)(value.replace(/%([0-9a-f][0-9a-f])/gi, function(all3, code) { - return String.fromCharCode(parseInt(code, 16)); - })); - } - function _fetchData(connection, body, processFunc) { - var attemptLimit = typeof connection === "object" && connection.throttleLimit != null ? connection.throttleLimit : 12; - logger.assertArgument(attemptLimit > 0 && attemptLimit % 1 === 0, "invalid connection throttle limit", "connection.throttleLimit", attemptLimit); - var throttleCallback = typeof connection === "object" ? connection.throttleCallback : null; - var throttleSlotInterval = typeof connection === "object" && typeof connection.throttleSlotInterval === "number" ? connection.throttleSlotInterval : 100; - logger.assertArgument(throttleSlotInterval > 0 && throttleSlotInterval % 1 === 0, "invalid connection throttle slot interval", "connection.throttleSlotInterval", throttleSlotInterval); - var errorPassThrough = typeof connection === "object" ? !!connection.errorPassThrough : false; - var headers = {}; - var url2 = null; - var options = { - method: "GET" - }; - var allow304 = false; - var timeout = 2 * 60 * 1e3; - if (typeof connection === "string") { - url2 = connection; - } else if (typeof connection === "object") { - if (connection == null || connection.url == null) { - logger.throwArgumentError("missing URL", "connection.url", connection); - } - url2 = connection.url; - if (typeof connection.timeout === "number" && connection.timeout > 0) { - timeout = connection.timeout; - } - if (connection.headers) { - for (var key in connection.headers) { - headers[key.toLowerCase()] = { key, value: String(connection.headers[key]) }; - if (["if-none-match", "if-modified-since"].indexOf(key.toLowerCase()) >= 0) { - allow304 = true; - } - } - } - options.allowGzip = !!connection.allowGzip; - if (connection.user != null && connection.password != null) { - if (url2.substring(0, 6) !== "https:" && connection.allowInsecureAuthentication !== true) { - logger.throwError("basic authentication requires a secure https url", logger_1.Logger.errors.INVALID_ARGUMENT, { argument: "url", url: url2, user: connection.user, password: "[REDACTED]" }); - } - var authorization = connection.user + ":" + connection.password; - headers["authorization"] = { - key: "Authorization", - value: "Basic " + (0, base64_1.encode)((0, strings_1.toUtf8Bytes)(authorization)) - }; - } - if (connection.skipFetchSetup != null) { - options.skipFetchSetup = !!connection.skipFetchSetup; - } - if (connection.fetchOptions != null) { - options.fetchOptions = (0, properties_1.shallowCopy)(connection.fetchOptions); - } - } - var reData = new RegExp("^data:([^;:]*)?(;base64)?,(.*)$", "i"); - var dataMatch = url2 ? url2.match(reData) : null; - if (dataMatch) { - try { - var response = { - statusCode: 200, - statusMessage: "OK", - headers: { "content-type": dataMatch[1] || "text/plain" }, - body: dataMatch[2] ? (0, base64_1.decode)(dataMatch[3]) : unpercent(dataMatch[3]) - }; - var result = response.body; - if (processFunc) { - result = processFunc(response.body, response); - } - return Promise.resolve(result); - } catch (error) { - logger.throwError("processing response error", logger_1.Logger.errors.SERVER_ERROR, { - body: bodyify(dataMatch[1], dataMatch[2]), - error, - requestBody: null, - requestMethod: "GET", - url: url2 - }); - } - } - if (body) { - options.method = "POST"; - options.body = body; - if (headers["content-type"] == null) { - headers["content-type"] = { key: "Content-Type", value: "application/octet-stream" }; - } - if (headers["content-length"] == null) { - headers["content-length"] = { key: "Content-Length", value: String(body.length) }; - } - } - var flatHeaders = {}; - Object.keys(headers).forEach(function(key2) { - var header = headers[key2]; - flatHeaders[header.key] = header.value; - }); - options.headers = flatHeaders; - var runningTimeout = function() { - var timer = null; - var promise = new Promise(function(resolve, reject) { - if (timeout) { - timer = setTimeout(function() { - if (timer == null) { - return; - } - timer = null; - reject(logger.makeError("timeout", logger_1.Logger.errors.TIMEOUT, { - requestBody: bodyify(options.body, flatHeaders["content-type"]), - requestMethod: options.method, - timeout, - url: url2 - })); - }, timeout); - } - }); - var cancel = function() { - if (timer == null) { - return; - } - clearTimeout(timer); - timer = null; - }; - return { promise, cancel }; - }(); - var runningFetch = function() { - return __awaiter(this, void 0, void 0, function() { - var attempt, response2, location_1, tryAgain, stall, retryAfter, error_1, body_1, result2, error_2, tryAgain, timeout_1; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - attempt = 0; - _a.label = 1; - case 1: - if (!(attempt < attemptLimit)) - return [3, 20]; - response2 = null; - _a.label = 2; - case 2: - _a.trys.push([2, 9, , 10]); - return [4, (0, geturl_1.getUrl)(url2, options)]; - case 3: - response2 = _a.sent(); - if (!(attempt < attemptLimit)) - return [3, 8]; - if (!(response2.statusCode === 301 || response2.statusCode === 302)) - return [3, 4]; - location_1 = response2.headers.location || ""; - if (options.method === "GET" && location_1.match(/^https:/)) { - url2 = response2.headers.location; - return [3, 19]; - } - return [3, 8]; - case 4: - if (!(response2.statusCode === 429)) - return [3, 8]; - tryAgain = true; - if (!throttleCallback) - return [3, 6]; - return [4, throttleCallback(attempt, url2)]; - case 5: - tryAgain = _a.sent(); - _a.label = 6; - case 6: - if (!tryAgain) - return [3, 8]; - stall = 0; - retryAfter = response2.headers["retry-after"]; - if (typeof retryAfter === "string" && retryAfter.match(/^[1-9][0-9]*$/)) { - stall = parseInt(retryAfter) * 1e3; - } else { - stall = throttleSlotInterval * parseInt(String(Math.random() * Math.pow(2, attempt))); - } - return [4, staller(stall)]; - case 7: - _a.sent(); - return [3, 19]; - case 8: - return [3, 10]; - case 9: - error_1 = _a.sent(); - response2 = error_1.response; - if (response2 == null) { - runningTimeout.cancel(); - logger.throwError("missing response", logger_1.Logger.errors.SERVER_ERROR, { - requestBody: bodyify(options.body, flatHeaders["content-type"]), - requestMethod: options.method, - serverError: error_1, - url: url2 - }); - } - return [3, 10]; - case 10: - body_1 = response2.body; - if (allow304 && response2.statusCode === 304) { - body_1 = null; - } else if (!errorPassThrough && (response2.statusCode < 200 || response2.statusCode >= 300)) { - runningTimeout.cancel(); - logger.throwError("bad response", logger_1.Logger.errors.SERVER_ERROR, { - status: response2.statusCode, - headers: response2.headers, - body: bodyify(body_1, response2.headers ? response2.headers["content-type"] : null), - requestBody: bodyify(options.body, flatHeaders["content-type"]), - requestMethod: options.method, - url: url2 - }); - } - if (!processFunc) - return [3, 18]; - _a.label = 11; - case 11: - _a.trys.push([11, 13, , 18]); - return [4, processFunc(body_1, response2)]; - case 12: - result2 = _a.sent(); - runningTimeout.cancel(); - return [2, result2]; - case 13: - error_2 = _a.sent(); - if (!(error_2.throttleRetry && attempt < attemptLimit)) - return [3, 17]; - tryAgain = true; - if (!throttleCallback) - return [3, 15]; - return [4, throttleCallback(attempt, url2)]; - case 14: - tryAgain = _a.sent(); - _a.label = 15; - case 15: - if (!tryAgain) - return [3, 17]; - timeout_1 = throttleSlotInterval * parseInt(String(Math.random() * Math.pow(2, attempt))); - return [4, staller(timeout_1)]; - case 16: - _a.sent(); - return [3, 19]; - case 17: - runningTimeout.cancel(); - logger.throwError("processing response error", logger_1.Logger.errors.SERVER_ERROR, { - body: bodyify(body_1, response2.headers ? response2.headers["content-type"] : null), - error: error_2, - requestBody: bodyify(options.body, flatHeaders["content-type"]), - requestMethod: options.method, - url: url2 - }); - return [3, 18]; - case 18: - runningTimeout.cancel(); - return [2, body_1]; - case 19: - attempt++; - return [3, 1]; - case 20: - return [2, logger.throwError("failed response", logger_1.Logger.errors.SERVER_ERROR, { - requestBody: bodyify(options.body, flatHeaders["content-type"]), - requestMethod: options.method, - url: url2 - })]; - } - }); - }); - }(); - return Promise.race([runningTimeout.promise, runningFetch]); - } - exports2._fetchData = _fetchData; - function fetchJson(connection, json, processFunc) { - var processJsonFunc = function(value, response) { - var result = null; - if (value != null) { - try { - result = JSON.parse((0, strings_1.toUtf8String)(value)); - } catch (error) { - logger.throwError("invalid JSON", logger_1.Logger.errors.SERVER_ERROR, { - body: value, - error - }); - } - } - if (processFunc) { - result = processFunc(result, response); - } - return result; - }; - var body = null; - if (json != null) { - body = (0, strings_1.toUtf8Bytes)(json); - var updated = typeof connection === "string" ? { url: connection } : (0, properties_1.shallowCopy)(connection); - if (updated.headers) { - var hasContentType = Object.keys(updated.headers).filter(function(k) { - return k.toLowerCase() === "content-type"; - }).length !== 0; - if (!hasContentType) { - updated.headers = (0, properties_1.shallowCopy)(updated.headers); - updated.headers["content-type"] = "application/json"; - } - } else { - updated.headers = { "content-type": "application/json" }; - } - connection = updated; - } - return _fetchData(connection, body, processJsonFunc); - } - exports2.fetchJson = fetchJson; - function poll(func, options) { - if (!options) { - options = {}; - } - options = (0, properties_1.shallowCopy)(options); - if (options.floor == null) { - options.floor = 0; - } - if (options.ceiling == null) { - options.ceiling = 1e4; - } - if (options.interval == null) { - options.interval = 250; - } - return new Promise(function(resolve, reject) { - var timer = null; - var done = false; - var cancel = function() { - if (done) { - return false; - } - done = true; - if (timer) { - clearTimeout(timer); - } - return true; - }; - if (options.timeout) { - timer = setTimeout(function() { - if (cancel()) { - reject(new Error("timeout")); - } - }, options.timeout); - } - var retryLimit = options.retryLimit; - var attempt = 0; - function check() { - return func().then(function(result) { - if (result !== void 0) { - if (cancel()) { - resolve(result); - } - } else if (options.oncePoll) { - options.oncePoll.once("poll", check); - } else if (options.onceBlock) { - options.onceBlock.once("block", check); - } else if (!done) { - attempt++; - if (attempt > retryLimit) { - if (cancel()) { - reject(new Error("retry limit reached")); - } - return; - } - var timeout = options.interval * parseInt(String(Math.random() * Math.pow(2, attempt))); - if (timeout < options.floor) { - timeout = options.floor; - } - if (timeout > options.ceiling) { - timeout = options.ceiling; - } - setTimeout(check, timeout); - } - return null; - }, function(error) { - if (cancel()) { - reject(error); - } - }); - } - check(); - }); - } - exports2.poll = poll; - } -}); - -// node_modules/bech32/index.js -var require_bech32 = __commonJS({ - "node_modules/bech32/index.js"(exports2, module2) { - "use strict"; - var ALPHABET2 = "qpzry9x8gf2tvdw0s3jn54khce6mua7l"; - var ALPHABET_MAP = {}; - for (z = 0; z < ALPHABET2.length; z++) { - x = ALPHABET2.charAt(z); - if (ALPHABET_MAP[x] !== void 0) - throw new TypeError(x + " is ambiguous"); - ALPHABET_MAP[x] = z; - } - var x; - var z; - function polymodStep(pre) { - var b = pre >> 25; - return (pre & 33554431) << 5 ^ -(b >> 0 & 1) & 996825010 ^ -(b >> 1 & 1) & 642813549 ^ -(b >> 2 & 1) & 513874426 ^ -(b >> 3 & 1) & 1027748829 ^ -(b >> 4 & 1) & 705979059; - } - function prefixChk(prefix) { - var chk = 1; - for (var i = 0; i < prefix.length; ++i) { - var c = prefix.charCodeAt(i); - if (c < 33 || c > 126) - return "Invalid prefix (" + prefix + ")"; - chk = polymodStep(chk) ^ c >> 5; - } - chk = polymodStep(chk); - for (i = 0; i < prefix.length; ++i) { - var v = prefix.charCodeAt(i); - chk = polymodStep(chk) ^ v & 31; - } - return chk; - } - function encode3(prefix, words, LIMIT) { - LIMIT = LIMIT || 90; - if (prefix.length + 7 + words.length > LIMIT) - throw new TypeError("Exceeds length limit"); - prefix = prefix.toLowerCase(); - var chk = prefixChk(prefix); - if (typeof chk === "string") - throw new Error(chk); - var result = prefix + "1"; - for (var i = 0; i < words.length; ++i) { - var x2 = words[i]; - if (x2 >> 5 !== 0) - throw new Error("Non 5-bit word"); - chk = polymodStep(chk) ^ x2; - result += ALPHABET2.charAt(x2); - } - for (i = 0; i < 6; ++i) { - chk = polymodStep(chk); - } - chk ^= 1; - for (i = 0; i < 6; ++i) { - var v = chk >> (5 - i) * 5 & 31; - result += ALPHABET2.charAt(v); - } - return result; - } - function __decode(str, LIMIT) { - LIMIT = LIMIT || 90; - if (str.length < 8) - return str + " too short"; - if (str.length > LIMIT) - return "Exceeds length limit"; - var lowered = str.toLowerCase(); - var uppered = str.toUpperCase(); - if (str !== lowered && str !== uppered) - return "Mixed-case string " + str; - str = lowered; - var split = str.lastIndexOf("1"); - if (split === -1) - return "No separator character for " + str; - if (split === 0) - return "Missing prefix for " + str; - var prefix = str.slice(0, split); - var wordChars = str.slice(split + 1); - if (wordChars.length < 6) - return "Data too short"; - var chk = prefixChk(prefix); - if (typeof chk === "string") - return chk; - var words = []; - for (var i = 0; i < wordChars.length; ++i) { - var c = wordChars.charAt(i); - var v = ALPHABET_MAP[c]; - if (v === void 0) - return "Unknown character " + c; - chk = polymodStep(chk) ^ v; - if (i + 6 >= wordChars.length) - continue; - words.push(v); - } - if (chk !== 1) - return "Invalid checksum for " + str; - return { prefix, words }; - } - function decodeUnsafe() { - var res = __decode.apply(null, arguments); - if (typeof res === "object") - return res; - } - function decode(str) { - var res = __decode.apply(null, arguments); - if (typeof res === "object") - return res; - throw new Error(res); - } - function convert(data, inBits, outBits, pad) { - var value = 0; - var bits = 0; - var maxV = (1 << outBits) - 1; - var result = []; - for (var i = 0; i < data.length; ++i) { - value = value << inBits | data[i]; - bits += inBits; - while (bits >= outBits) { - bits -= outBits; - result.push(value >> bits & maxV); - } - } - if (pad) { - if (bits > 0) { - result.push(value << outBits - bits & maxV); - } - } else { - if (bits >= inBits) - return "Excess padding"; - if (value << outBits - bits & maxV) - return "Non-zero padding"; - } - return result; - } - function toWordsUnsafe(bytes) { - var res = convert(bytes, 8, 5, true); - if (Array.isArray(res)) - return res; - } - function toWords(bytes) { - var res = convert(bytes, 8, 5, true); - if (Array.isArray(res)) - return res; - throw new Error(res); - } - function fromWordsUnsafe(words) { - var res = convert(words, 5, 8, false); - if (Array.isArray(res)) - return res; - } - function fromWords(words) { - var res = convert(words, 5, 8, false); - if (Array.isArray(res)) - return res; - throw new Error(res); - } - module2.exports = { - decodeUnsafe, - decode, - encode: encode3, - toWordsUnsafe, - toWords, - fromWordsUnsafe, - fromWords - }; - } -}); - -// node_modules/@ethersproject/providers/lib/_version.js -var require_version13 = __commonJS({ - "node_modules/@ethersproject/providers/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "providers/5.7.2"; - } -}); - -// node_modules/elliptic/package.json -var require_package = __commonJS({ - "node_modules/elliptic/package.json"(exports2, module2) { - module2.exports = { - name: "elliptic", - version: "6.5.4", - description: "EC cryptography", - main: "lib/elliptic.js", - files: [ - "lib" - ], - scripts: { - lint: "eslint lib test", - "lint:fix": "npm run lint -- --fix", - unit: "istanbul test _mocha --reporter=spec test/index.js", - test: "npm run lint && npm run unit", - version: "grunt dist && git add dist/" - }, - repository: { - type: "git", - url: "git@github.com:indutny/elliptic" - }, - keywords: [ - "EC", - "Elliptic", - "curve", - "Cryptography" - ], - author: "Fedor Indutny ", - license: "MIT", - bugs: { - url: "https://github.com/indutny/elliptic/issues" - }, - homepage: "https://github.com/indutny/elliptic", - devDependencies: { - brfs: "^2.0.2", - coveralls: "^3.1.0", - eslint: "^7.6.0", - grunt: "^1.2.1", - "grunt-browserify": "^5.3.0", - "grunt-cli": "^1.3.2", - "grunt-contrib-connect": "^3.0.0", - "grunt-contrib-copy": "^1.0.0", - "grunt-contrib-uglify": "^5.0.0", - "grunt-mocha-istanbul": "^5.0.2", - "grunt-saucelabs": "^9.0.1", - istanbul: "^0.4.5", - mocha: "^8.0.1" - }, - dependencies: { - "bn.js": "^4.11.9", - brorand: "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - inherits: "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }; - } -}); - -// node_modules/elliptic/node_modules/bn.js/lib/bn.js -var require_bn2 = __commonJS({ - "node_modules/elliptic/node_modules/bn.js/lib/bn.js"(exports2, module2) { - "use strict"; - (function(module3, exports3) { - "use strict"; - function assert(val, msg) { - if (!val) - throw new Error(msg || "Assertion failed"); - } - function inherits2(ctor, superCtor) { - ctor.super_ = superCtor; - var TempCtor = function() { - }; - TempCtor.prototype = superCtor.prototype; - ctor.prototype = new TempCtor(); - ctor.prototype.constructor = ctor; - } - function BN(number, base, endian) { - if (BN.isBN(number)) { - return number; - } - this.negative = 0; - this.words = null; - this.length = 0; - this.red = null; - if (number !== null) { - if (base === "le" || base === "be") { - endian = base; - base = 10; - } - this._init(number || 0, base || 10, endian || "be"); - } - } - if (typeof module3 === "object") { - module3.exports = BN; - } else { - exports3.BN = BN; - } - BN.BN = BN; - BN.wordSize = 26; - var Buffer2; - try { - if (typeof window !== "undefined" && typeof window.Buffer !== "undefined") { - Buffer2 = window.Buffer; - } else { - Buffer2 = (__nccwpck_require__(20181).Buffer); - } - } catch (e) { - } - BN.isBN = function isBN(num) { - if (num instanceof BN) { - return true; - } - return num !== null && typeof num === "object" && num.constructor.wordSize === BN.wordSize && Array.isArray(num.words); - }; - BN.max = function max(left, right) { - if (left.cmp(right) > 0) - return left; - return right; - }; - BN.min = function min(left, right) { - if (left.cmp(right) < 0) - return left; - return right; - }; - BN.prototype._init = function init(number, base, endian) { - if (typeof number === "number") { - return this._initNumber(number, base, endian); - } - if (typeof number === "object") { - return this._initArray(number, base, endian); - } - if (base === "hex") { - base = 16; - } - assert(base === (base | 0) && base >= 2 && base <= 36); - number = number.toString().replace(/\s+/g, ""); - var start = 0; - if (number[0] === "-") { - start++; - this.negative = 1; - } - if (start < number.length) { - if (base === 16) { - this._parseHex(number, start, endian); - } else { - this._parseBase(number, base, start); - if (endian === "le") { - this._initArray(this.toArray(), base, endian); - } - } - } - }; - BN.prototype._initNumber = function _initNumber(number, base, endian) { - if (number < 0) { - this.negative = 1; - number = -number; - } - if (number < 67108864) { - this.words = [number & 67108863]; - this.length = 1; - } else if (number < 4503599627370496) { - this.words = [ - number & 67108863, - number / 67108864 & 67108863 - ]; - this.length = 2; - } else { - assert(number < 9007199254740992); - this.words = [ - number & 67108863, - number / 67108864 & 67108863, - 1 - ]; - this.length = 3; - } - if (endian !== "le") - return; - this._initArray(this.toArray(), base, endian); - }; - BN.prototype._initArray = function _initArray(number, base, endian) { - assert(typeof number.length === "number"); - if (number.length <= 0) { - this.words = [0]; - this.length = 1; - return this; - } - this.length = Math.ceil(number.length / 3); - this.words = new Array(this.length); - for (var i = 0; i < this.length; i++) { - this.words[i] = 0; - } - var j, w; - var off = 0; - if (endian === "be") { - for (i = number.length - 1, j = 0; i >= 0; i -= 3) { - w = number[i] | number[i - 1] << 8 | number[i - 2] << 16; - this.words[j] |= w << off & 67108863; - this.words[j + 1] = w >>> 26 - off & 67108863; - off += 24; - if (off >= 26) { - off -= 26; - j++; - } - } - } else if (endian === "le") { - for (i = 0, j = 0; i < number.length; i += 3) { - w = number[i] | number[i + 1] << 8 | number[i + 2] << 16; - this.words[j] |= w << off & 67108863; - this.words[j + 1] = w >>> 26 - off & 67108863; - off += 24; - if (off >= 26) { - off -= 26; - j++; - } - } - } - return this.strip(); - }; - function parseHex4Bits(string, index) { - var c = string.charCodeAt(index); - if (c >= 65 && c <= 70) { - return c - 55; - } else if (c >= 97 && c <= 102) { - return c - 87; - } else { - return c - 48 & 15; - } - } - function parseHexByte(string, lowerBound, index) { - var r = parseHex4Bits(string, index); - if (index - 1 >= lowerBound) { - r |= parseHex4Bits(string, index - 1) << 4; - } - return r; - } - BN.prototype._parseHex = function _parseHex(number, start, endian) { - this.length = Math.ceil((number.length - start) / 6); - this.words = new Array(this.length); - for (var i = 0; i < this.length; i++) { - this.words[i] = 0; - } - var off = 0; - var j = 0; - var w; - if (endian === "be") { - for (i = number.length - 1; i >= start; i -= 2) { - w = parseHexByte(number, start, i) << off; - this.words[j] |= w & 67108863; - if (off >= 18) { - off -= 18; - j += 1; - this.words[j] |= w >>> 26; - } else { - off += 8; - } - } - } else { - var parseLength = number.length - start; - for (i = parseLength % 2 === 0 ? start + 1 : start; i < number.length; i += 2) { - w = parseHexByte(number, start, i) << off; - this.words[j] |= w & 67108863; - if (off >= 18) { - off -= 18; - j += 1; - this.words[j] |= w >>> 26; - } else { - off += 8; - } - } - } - this.strip(); - }; - function parseBase(str, start, end, mul) { - var r = 0; - var len = Math.min(str.length, end); - for (var i = start; i < len; i++) { - var c = str.charCodeAt(i) - 48; - r *= mul; - if (c >= 49) { - r += c - 49 + 10; - } else if (c >= 17) { - r += c - 17 + 10; - } else { - r += c; - } - } - return r; - } - BN.prototype._parseBase = function _parseBase(number, base, start) { - this.words = [0]; - this.length = 1; - for (var limbLen = 0, limbPow = 1; limbPow <= 67108863; limbPow *= base) { - limbLen++; - } - limbLen--; - limbPow = limbPow / base | 0; - var total = number.length - start; - var mod = total % limbLen; - var end = Math.min(total, total - mod) + start; - var word = 0; - for (var i = start; i < end; i += limbLen) { - word = parseBase(number, i, i + limbLen, base); - this.imuln(limbPow); - if (this.words[0] + word < 67108864) { - this.words[0] += word; - } else { - this._iaddn(word); - } - } - if (mod !== 0) { - var pow = 1; - word = parseBase(number, i, number.length, base); - for (i = 0; i < mod; i++) { - pow *= base; - } - this.imuln(pow); - if (this.words[0] + word < 67108864) { - this.words[0] += word; - } else { - this._iaddn(word); - } - } - this.strip(); - }; - BN.prototype.copy = function copy(dest) { - dest.words = new Array(this.length); - for (var i = 0; i < this.length; i++) { - dest.words[i] = this.words[i]; - } - dest.length = this.length; - dest.negative = this.negative; - dest.red = this.red; - }; - BN.prototype.clone = function clone() { - var r = new BN(null); - this.copy(r); - return r; - }; - BN.prototype._expand = function _expand(size) { - while (this.length < size) { - this.words[this.length++] = 0; - } - return this; - }; - BN.prototype.strip = function strip() { - while (this.length > 1 && this.words[this.length - 1] === 0) { - this.length--; - } - return this._normSign(); - }; - BN.prototype._normSign = function _normSign() { - if (this.length === 1 && this.words[0] === 0) { - this.negative = 0; - } - return this; - }; - BN.prototype.inspect = function inspect() { - return (this.red ? ""; - }; - var zeros = [ - "", - "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" - ]; - var groupSizes = [ - 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 - ]; - var groupBases = [ - 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 - ]; - BN.prototype.toString = function toString3(base, padding) { - base = base || 10; - padding = padding | 0 || 1; - var out; - if (base === 16 || base === "hex") { - out = ""; - var off = 0; - var carry = 0; - for (var i = 0; i < this.length; i++) { - var w = this.words[i]; - var word = ((w << off | carry) & 16777215).toString(16); - carry = w >>> 24 - off & 16777215; - if (carry !== 0 || i !== this.length - 1) { - out = zeros[6 - word.length] + word + out; - } else { - out = word + out; - } - off += 2; - if (off >= 26) { - off -= 26; - i--; - } - } - if (carry !== 0) { - out = carry.toString(16) + out; - } - while (out.length % padding !== 0) { - out = "0" + out; - } - if (this.negative !== 0) { - out = "-" + out; - } - return out; - } - if (base === (base | 0) && base >= 2 && base <= 36) { - var groupSize = groupSizes[base]; - var groupBase = groupBases[base]; - out = ""; - var c = this.clone(); - c.negative = 0; - while (!c.isZero()) { - var r = c.modn(groupBase).toString(base); - c = c.idivn(groupBase); - if (!c.isZero()) { - out = zeros[groupSize - r.length] + r + out; - } else { - out = r + out; - } - } - if (this.isZero()) { - out = "0" + out; - } - while (out.length % padding !== 0) { - out = "0" + out; - } - if (this.negative !== 0) { - out = "-" + out; - } - return out; - } - assert(false, "Base should be between 2 and 36"); - }; - BN.prototype.toNumber = function toNumber() { - var ret = this.words[0]; - if (this.length === 2) { - ret += this.words[1] * 67108864; - } else if (this.length === 3 && this.words[2] === 1) { - ret += 4503599627370496 + this.words[1] * 67108864; - } else if (this.length > 2) { - assert(false, "Number can only safely store up to 53 bits"); - } - return this.negative !== 0 ? -ret : ret; - }; - BN.prototype.toJSON = function toJSON2() { - return this.toString(16); - }; - BN.prototype.toBuffer = function toBuffer(endian, length) { - assert(typeof Buffer2 !== "undefined"); - return this.toArrayLike(Buffer2, endian, length); - }; - BN.prototype.toArray = function toArray2(endian, length) { - return this.toArrayLike(Array, endian, length); - }; - BN.prototype.toArrayLike = function toArrayLike(ArrayType, endian, length) { - var byteLength = this.byteLength(); - var reqLength = length || Math.max(1, byteLength); - assert(byteLength <= reqLength, "byte array longer than desired length"); - assert(reqLength > 0, "Requested array length <= 0"); - this.strip(); - var littleEndian = endian === "le"; - var res = new ArrayType(reqLength); - var b, i; - var q = this.clone(); - if (!littleEndian) { - for (i = 0; i < reqLength - byteLength; i++) { - res[i] = 0; - } - for (i = 0; !q.isZero(); i++) { - b = q.andln(255); - q.iushrn(8); - res[reqLength - i - 1] = b; - } - } else { - for (i = 0; !q.isZero(); i++) { - b = q.andln(255); - q.iushrn(8); - res[i] = b; - } - for (; i < reqLength; i++) { - res[i] = 0; - } - } - return res; - }; - if (Math.clz32) { - BN.prototype._countBits = function _countBits(w) { - return 32 - Math.clz32(w); - }; - } else { - BN.prototype._countBits = function _countBits(w) { - var t = w; - var r = 0; - if (t >= 4096) { - r += 13; - t >>>= 13; - } - if (t >= 64) { - r += 7; - t >>>= 7; - } - if (t >= 8) { - r += 4; - t >>>= 4; - } - if (t >= 2) { - r += 2; - t >>>= 2; - } - return r + t; - }; - } - BN.prototype._zeroBits = function _zeroBits(w) { - if (w === 0) - return 26; - var t = w; - var r = 0; - if ((t & 8191) === 0) { - r += 13; - t >>>= 13; - } - if ((t & 127) === 0) { - r += 7; - t >>>= 7; - } - if ((t & 15) === 0) { - r += 4; - t >>>= 4; - } - if ((t & 3) === 0) { - r += 2; - t >>>= 2; - } - if ((t & 1) === 0) { - r++; - } - return r; - }; - BN.prototype.bitLength = function bitLength() { - var w = this.words[this.length - 1]; - var hi = this._countBits(w); - return (this.length - 1) * 26 + hi; - }; - function toBitArray(num) { - var w = new Array(num.bitLength()); - for (var bit = 0; bit < w.length; bit++) { - var off = bit / 26 | 0; - var wbit = bit % 26; - w[bit] = (num.words[off] & 1 << wbit) >>> wbit; - } - return w; - } - BN.prototype.zeroBits = function zeroBits() { - if (this.isZero()) - return 0; - var r = 0; - for (var i = 0; i < this.length; i++) { - var b = this._zeroBits(this.words[i]); - r += b; - if (b !== 26) - break; - } - return r; - }; - BN.prototype.byteLength = function byteLength() { - return Math.ceil(this.bitLength() / 8); - }; - BN.prototype.toTwos = function toTwos(width) { - if (this.negative !== 0) { - return this.abs().inotn(width).iaddn(1); - } - return this.clone(); - }; - BN.prototype.fromTwos = function fromTwos(width) { - if (this.testn(width - 1)) { - return this.notn(width).iaddn(1).ineg(); - } - return this.clone(); - }; - BN.prototype.isNeg = function isNeg() { - return this.negative !== 0; - }; - BN.prototype.neg = function neg() { - return this.clone().ineg(); - }; - BN.prototype.ineg = function ineg() { - if (!this.isZero()) { - this.negative ^= 1; - } - return this; - }; - BN.prototype.iuor = function iuor(num) { - while (this.length < num.length) { - this.words[this.length++] = 0; - } - for (var i = 0; i < num.length; i++) { - this.words[i] = this.words[i] | num.words[i]; - } - return this.strip(); - }; - BN.prototype.ior = function ior(num) { - assert((this.negative | num.negative) === 0); - return this.iuor(num); - }; - BN.prototype.or = function or(num) { - if (this.length > num.length) - return this.clone().ior(num); - return num.clone().ior(this); - }; - BN.prototype.uor = function uor(num) { - if (this.length > num.length) - return this.clone().iuor(num); - return num.clone().iuor(this); - }; - BN.prototype.iuand = function iuand(num) { - var b; - if (this.length > num.length) { - b = num; - } else { - b = this; - } - for (var i = 0; i < b.length; i++) { - this.words[i] = this.words[i] & num.words[i]; - } - this.length = b.length; - return this.strip(); - }; - BN.prototype.iand = function iand(num) { - assert((this.negative | num.negative) === 0); - return this.iuand(num); - }; - BN.prototype.and = function and(num) { - if (this.length > num.length) - return this.clone().iand(num); - return num.clone().iand(this); - }; - BN.prototype.uand = function uand(num) { - if (this.length > num.length) - return this.clone().iuand(num); - return num.clone().iuand(this); - }; - BN.prototype.iuxor = function iuxor(num) { - var a; - var b; - if (this.length > num.length) { - a = this; - b = num; - } else { - a = num; - b = this; - } - for (var i = 0; i < b.length; i++) { - this.words[i] = a.words[i] ^ b.words[i]; - } - if (this !== a) { - for (; i < a.length; i++) { - this.words[i] = a.words[i]; - } - } - this.length = a.length; - return this.strip(); - }; - BN.prototype.ixor = function ixor(num) { - assert((this.negative | num.negative) === 0); - return this.iuxor(num); - }; - BN.prototype.xor = function xor(num) { - if (this.length > num.length) - return this.clone().ixor(num); - return num.clone().ixor(this); - }; - BN.prototype.uxor = function uxor(num) { - if (this.length > num.length) - return this.clone().iuxor(num); - return num.clone().iuxor(this); - }; - BN.prototype.inotn = function inotn(width) { - assert(typeof width === "number" && width >= 0); - var bytesNeeded = Math.ceil(width / 26) | 0; - var bitsLeft = width % 26; - this._expand(bytesNeeded); - if (bitsLeft > 0) { - bytesNeeded--; - } - for (var i = 0; i < bytesNeeded; i++) { - this.words[i] = ~this.words[i] & 67108863; - } - if (bitsLeft > 0) { - this.words[i] = ~this.words[i] & 67108863 >> 26 - bitsLeft; - } - return this.strip(); - }; - BN.prototype.notn = function notn(width) { - return this.clone().inotn(width); - }; - BN.prototype.setn = function setn(bit, val) { - assert(typeof bit === "number" && bit >= 0); - var off = bit / 26 | 0; - var wbit = bit % 26; - this._expand(off + 1); - if (val) { - this.words[off] = this.words[off] | 1 << wbit; - } else { - this.words[off] = this.words[off] & ~(1 << wbit); - } - return this.strip(); - }; - BN.prototype.iadd = function iadd(num) { - var r; - if (this.negative !== 0 && num.negative === 0) { - this.negative = 0; - r = this.isub(num); - this.negative ^= 1; - return this._normSign(); - } else if (this.negative === 0 && num.negative !== 0) { - num.negative = 0; - r = this.isub(num); - num.negative = 1; - return r._normSign(); - } - var a, b; - if (this.length > num.length) { - a = this; - b = num; - } else { - a = num; - b = this; - } - var carry = 0; - for (var i = 0; i < b.length; i++) { - r = (a.words[i] | 0) + (b.words[i] | 0) + carry; - this.words[i] = r & 67108863; - carry = r >>> 26; - } - for (; carry !== 0 && i < a.length; i++) { - r = (a.words[i] | 0) + carry; - this.words[i] = r & 67108863; - carry = r >>> 26; - } - this.length = a.length; - if (carry !== 0) { - this.words[this.length] = carry; - this.length++; - } else if (a !== this) { - for (; i < a.length; i++) { - this.words[i] = a.words[i]; - } - } - return this; - }; - BN.prototype.add = function add(num) { - var res; - if (num.negative !== 0 && this.negative === 0) { - num.negative = 0; - res = this.sub(num); - num.negative ^= 1; - return res; - } else if (num.negative === 0 && this.negative !== 0) { - this.negative = 0; - res = num.sub(this); - this.negative = 1; - return res; - } - if (this.length > num.length) - return this.clone().iadd(num); - return num.clone().iadd(this); - }; - BN.prototype.isub = function isub(num) { - if (num.negative !== 0) { - num.negative = 0; - var r = this.iadd(num); - num.negative = 1; - return r._normSign(); - } else if (this.negative !== 0) { - this.negative = 0; - this.iadd(num); - this.negative = 1; - return this._normSign(); - } - var cmp = this.cmp(num); - if (cmp === 0) { - this.negative = 0; - this.length = 1; - this.words[0] = 0; - return this; - } - var a, b; - if (cmp > 0) { - a = this; - b = num; - } else { - a = num; - b = this; - } - var carry = 0; - for (var i = 0; i < b.length; i++) { - r = (a.words[i] | 0) - (b.words[i] | 0) + carry; - carry = r >> 26; - this.words[i] = r & 67108863; - } - for (; carry !== 0 && i < a.length; i++) { - r = (a.words[i] | 0) + carry; - carry = r >> 26; - this.words[i] = r & 67108863; - } - if (carry === 0 && i < a.length && a !== this) { - for (; i < a.length; i++) { - this.words[i] = a.words[i]; - } - } - this.length = Math.max(this.length, i); - if (a !== this) { - this.negative = 1; - } - return this.strip(); - }; - BN.prototype.sub = function sub(num) { - return this.clone().isub(num); - }; - function smallMulTo(self2, num, out) { - out.negative = num.negative ^ self2.negative; - var len = self2.length + num.length | 0; - out.length = len; - len = len - 1 | 0; - var a = self2.words[0] | 0; - var b = num.words[0] | 0; - var r = a * b; - var lo = r & 67108863; - var carry = r / 67108864 | 0; - out.words[0] = lo; - for (var k = 1; k < len; k++) { - var ncarry = carry >>> 26; - var rword = carry & 67108863; - var maxJ = Math.min(k, num.length - 1); - for (var j = Math.max(0, k - self2.length + 1); j <= maxJ; j++) { - var i = k - j | 0; - a = self2.words[i] | 0; - b = num.words[j] | 0; - r = a * b + rword; - ncarry += r / 67108864 | 0; - rword = r & 67108863; - } - out.words[k] = rword | 0; - carry = ncarry | 0; - } - if (carry !== 0) { - out.words[k] = carry | 0; - } else { - out.length--; - } - return out.strip(); - } - var comb10MulTo = function comb10MulTo2(self2, num, out) { - var a = self2.words; - var b = num.words; - var o = out.words; - var c = 0; - var lo; - var mid; - var hi; - var a0 = a[0] | 0; - var al0 = a0 & 8191; - var ah0 = a0 >>> 13; - var a1 = a[1] | 0; - var al1 = a1 & 8191; - var ah1 = a1 >>> 13; - var a2 = a[2] | 0; - var al2 = a2 & 8191; - var ah2 = a2 >>> 13; - var a3 = a[3] | 0; - var al3 = a3 & 8191; - var ah3 = a3 >>> 13; - var a4 = a[4] | 0; - var al4 = a4 & 8191; - var ah4 = a4 >>> 13; - var a5 = a[5] | 0; - var al5 = a5 & 8191; - var ah5 = a5 >>> 13; - var a6 = a[6] | 0; - var al6 = a6 & 8191; - var ah6 = a6 >>> 13; - var a7 = a[7] | 0; - var al7 = a7 & 8191; - var ah7 = a7 >>> 13; - var a8 = a[8] | 0; - var al8 = a8 & 8191; - var ah8 = a8 >>> 13; - var a9 = a[9] | 0; - var al9 = a9 & 8191; - var ah9 = a9 >>> 13; - var b0 = b[0] | 0; - var bl0 = b0 & 8191; - var bh0 = b0 >>> 13; - var b1 = b[1] | 0; - var bl1 = b1 & 8191; - var bh1 = b1 >>> 13; - var b2 = b[2] | 0; - var bl2 = b2 & 8191; - var bh2 = b2 >>> 13; - var b3 = b[3] | 0; - var bl3 = b3 & 8191; - var bh3 = b3 >>> 13; - var b4 = b[4] | 0; - var bl4 = b4 & 8191; - var bh4 = b4 >>> 13; - var b5 = b[5] | 0; - var bl5 = b5 & 8191; - var bh5 = b5 >>> 13; - var b6 = b[6] | 0; - var bl6 = b6 & 8191; - var bh6 = b6 >>> 13; - var b7 = b[7] | 0; - var bl7 = b7 & 8191; - var bh7 = b7 >>> 13; - var b8 = b[8] | 0; - var bl8 = b8 & 8191; - var bh8 = b8 >>> 13; - var b9 = b[9] | 0; - var bl9 = b9 & 8191; - var bh9 = b9 >>> 13; - out.negative = self2.negative ^ num.negative; - out.length = 19; - lo = Math.imul(al0, bl0); - mid = Math.imul(al0, bh0); - mid = mid + Math.imul(ah0, bl0) | 0; - hi = Math.imul(ah0, bh0); - var w0 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w0 >>> 26) | 0; - w0 &= 67108863; - lo = Math.imul(al1, bl0); - mid = Math.imul(al1, bh0); - mid = mid + Math.imul(ah1, bl0) | 0; - hi = Math.imul(ah1, bh0); - lo = lo + Math.imul(al0, bl1) | 0; - mid = mid + Math.imul(al0, bh1) | 0; - mid = mid + Math.imul(ah0, bl1) | 0; - hi = hi + Math.imul(ah0, bh1) | 0; - var w1 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w1 >>> 26) | 0; - w1 &= 67108863; - lo = Math.imul(al2, bl0); - mid = Math.imul(al2, bh0); - mid = mid + Math.imul(ah2, bl0) | 0; - hi = Math.imul(ah2, bh0); - lo = lo + Math.imul(al1, bl1) | 0; - mid = mid + Math.imul(al1, bh1) | 0; - mid = mid + Math.imul(ah1, bl1) | 0; - hi = hi + Math.imul(ah1, bh1) | 0; - lo = lo + Math.imul(al0, bl2) | 0; - mid = mid + Math.imul(al0, bh2) | 0; - mid = mid + Math.imul(ah0, bl2) | 0; - hi = hi + Math.imul(ah0, bh2) | 0; - var w2 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w2 >>> 26) | 0; - w2 &= 67108863; - lo = Math.imul(al3, bl0); - mid = Math.imul(al3, bh0); - mid = mid + Math.imul(ah3, bl0) | 0; - hi = Math.imul(ah3, bh0); - lo = lo + Math.imul(al2, bl1) | 0; - mid = mid + Math.imul(al2, bh1) | 0; - mid = mid + Math.imul(ah2, bl1) | 0; - hi = hi + Math.imul(ah2, bh1) | 0; - lo = lo + Math.imul(al1, bl2) | 0; - mid = mid + Math.imul(al1, bh2) | 0; - mid = mid + Math.imul(ah1, bl2) | 0; - hi = hi + Math.imul(ah1, bh2) | 0; - lo = lo + Math.imul(al0, bl3) | 0; - mid = mid + Math.imul(al0, bh3) | 0; - mid = mid + Math.imul(ah0, bl3) | 0; - hi = hi + Math.imul(ah0, bh3) | 0; - var w3 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w3 >>> 26) | 0; - w3 &= 67108863; - lo = Math.imul(al4, bl0); - mid = Math.imul(al4, bh0); - mid = mid + Math.imul(ah4, bl0) | 0; - hi = Math.imul(ah4, bh0); - lo = lo + Math.imul(al3, bl1) | 0; - mid = mid + Math.imul(al3, bh1) | 0; - mid = mid + Math.imul(ah3, bl1) | 0; - hi = hi + Math.imul(ah3, bh1) | 0; - lo = lo + Math.imul(al2, bl2) | 0; - mid = mid + Math.imul(al2, bh2) | 0; - mid = mid + Math.imul(ah2, bl2) | 0; - hi = hi + Math.imul(ah2, bh2) | 0; - lo = lo + Math.imul(al1, bl3) | 0; - mid = mid + Math.imul(al1, bh3) | 0; - mid = mid + Math.imul(ah1, bl3) | 0; - hi = hi + Math.imul(ah1, bh3) | 0; - lo = lo + Math.imul(al0, bl4) | 0; - mid = mid + Math.imul(al0, bh4) | 0; - mid = mid + Math.imul(ah0, bl4) | 0; - hi = hi + Math.imul(ah0, bh4) | 0; - var w4 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w4 >>> 26) | 0; - w4 &= 67108863; - lo = Math.imul(al5, bl0); - mid = Math.imul(al5, bh0); - mid = mid + Math.imul(ah5, bl0) | 0; - hi = Math.imul(ah5, bh0); - lo = lo + Math.imul(al4, bl1) | 0; - mid = mid + Math.imul(al4, bh1) | 0; - mid = mid + Math.imul(ah4, bl1) | 0; - hi = hi + Math.imul(ah4, bh1) | 0; - lo = lo + Math.imul(al3, bl2) | 0; - mid = mid + Math.imul(al3, bh2) | 0; - mid = mid + Math.imul(ah3, bl2) | 0; - hi = hi + Math.imul(ah3, bh2) | 0; - lo = lo + Math.imul(al2, bl3) | 0; - mid = mid + Math.imul(al2, bh3) | 0; - mid = mid + Math.imul(ah2, bl3) | 0; - hi = hi + Math.imul(ah2, bh3) | 0; - lo = lo + Math.imul(al1, bl4) | 0; - mid = mid + Math.imul(al1, bh4) | 0; - mid = mid + Math.imul(ah1, bl4) | 0; - hi = hi + Math.imul(ah1, bh4) | 0; - lo = lo + Math.imul(al0, bl5) | 0; - mid = mid + Math.imul(al0, bh5) | 0; - mid = mid + Math.imul(ah0, bl5) | 0; - hi = hi + Math.imul(ah0, bh5) | 0; - var w5 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w5 >>> 26) | 0; - w5 &= 67108863; - lo = Math.imul(al6, bl0); - mid = Math.imul(al6, bh0); - mid = mid + Math.imul(ah6, bl0) | 0; - hi = Math.imul(ah6, bh0); - lo = lo + Math.imul(al5, bl1) | 0; - mid = mid + Math.imul(al5, bh1) | 0; - mid = mid + Math.imul(ah5, bl1) | 0; - hi = hi + Math.imul(ah5, bh1) | 0; - lo = lo + Math.imul(al4, bl2) | 0; - mid = mid + Math.imul(al4, bh2) | 0; - mid = mid + Math.imul(ah4, bl2) | 0; - hi = hi + Math.imul(ah4, bh2) | 0; - lo = lo + Math.imul(al3, bl3) | 0; - mid = mid + Math.imul(al3, bh3) | 0; - mid = mid + Math.imul(ah3, bl3) | 0; - hi = hi + Math.imul(ah3, bh3) | 0; - lo = lo + Math.imul(al2, bl4) | 0; - mid = mid + Math.imul(al2, bh4) | 0; - mid = mid + Math.imul(ah2, bl4) | 0; - hi = hi + Math.imul(ah2, bh4) | 0; - lo = lo + Math.imul(al1, bl5) | 0; - mid = mid + Math.imul(al1, bh5) | 0; - mid = mid + Math.imul(ah1, bl5) | 0; - hi = hi + Math.imul(ah1, bh5) | 0; - lo = lo + Math.imul(al0, bl6) | 0; - mid = mid + Math.imul(al0, bh6) | 0; - mid = mid + Math.imul(ah0, bl6) | 0; - hi = hi + Math.imul(ah0, bh6) | 0; - var w6 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w6 >>> 26) | 0; - w6 &= 67108863; - lo = Math.imul(al7, bl0); - mid = Math.imul(al7, bh0); - mid = mid + Math.imul(ah7, bl0) | 0; - hi = Math.imul(ah7, bh0); - lo = lo + Math.imul(al6, bl1) | 0; - mid = mid + Math.imul(al6, bh1) | 0; - mid = mid + Math.imul(ah6, bl1) | 0; - hi = hi + Math.imul(ah6, bh1) | 0; - lo = lo + Math.imul(al5, bl2) | 0; - mid = mid + Math.imul(al5, bh2) | 0; - mid = mid + Math.imul(ah5, bl2) | 0; - hi = hi + Math.imul(ah5, bh2) | 0; - lo = lo + Math.imul(al4, bl3) | 0; - mid = mid + Math.imul(al4, bh3) | 0; - mid = mid + Math.imul(ah4, bl3) | 0; - hi = hi + Math.imul(ah4, bh3) | 0; - lo = lo + Math.imul(al3, bl4) | 0; - mid = mid + Math.imul(al3, bh4) | 0; - mid = mid + Math.imul(ah3, bl4) | 0; - hi = hi + Math.imul(ah3, bh4) | 0; - lo = lo + Math.imul(al2, bl5) | 0; - mid = mid + Math.imul(al2, bh5) | 0; - mid = mid + Math.imul(ah2, bl5) | 0; - hi = hi + Math.imul(ah2, bh5) | 0; - lo = lo + Math.imul(al1, bl6) | 0; - mid = mid + Math.imul(al1, bh6) | 0; - mid = mid + Math.imul(ah1, bl6) | 0; - hi = hi + Math.imul(ah1, bh6) | 0; - lo = lo + Math.imul(al0, bl7) | 0; - mid = mid + Math.imul(al0, bh7) | 0; - mid = mid + Math.imul(ah0, bl7) | 0; - hi = hi + Math.imul(ah0, bh7) | 0; - var w7 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w7 >>> 26) | 0; - w7 &= 67108863; - lo = Math.imul(al8, bl0); - mid = Math.imul(al8, bh0); - mid = mid + Math.imul(ah8, bl0) | 0; - hi = Math.imul(ah8, bh0); - lo = lo + Math.imul(al7, bl1) | 0; - mid = mid + Math.imul(al7, bh1) | 0; - mid = mid + Math.imul(ah7, bl1) | 0; - hi = hi + Math.imul(ah7, bh1) | 0; - lo = lo + Math.imul(al6, bl2) | 0; - mid = mid + Math.imul(al6, bh2) | 0; - mid = mid + Math.imul(ah6, bl2) | 0; - hi = hi + Math.imul(ah6, bh2) | 0; - lo = lo + Math.imul(al5, bl3) | 0; - mid = mid + Math.imul(al5, bh3) | 0; - mid = mid + Math.imul(ah5, bl3) | 0; - hi = hi + Math.imul(ah5, bh3) | 0; - lo = lo + Math.imul(al4, bl4) | 0; - mid = mid + Math.imul(al4, bh4) | 0; - mid = mid + Math.imul(ah4, bl4) | 0; - hi = hi + Math.imul(ah4, bh4) | 0; - lo = lo + Math.imul(al3, bl5) | 0; - mid = mid + Math.imul(al3, bh5) | 0; - mid = mid + Math.imul(ah3, bl5) | 0; - hi = hi + Math.imul(ah3, bh5) | 0; - lo = lo + Math.imul(al2, bl6) | 0; - mid = mid + Math.imul(al2, bh6) | 0; - mid = mid + Math.imul(ah2, bl6) | 0; - hi = hi + Math.imul(ah2, bh6) | 0; - lo = lo + Math.imul(al1, bl7) | 0; - mid = mid + Math.imul(al1, bh7) | 0; - mid = mid + Math.imul(ah1, bl7) | 0; - hi = hi + Math.imul(ah1, bh7) | 0; - lo = lo + Math.imul(al0, bl8) | 0; - mid = mid + Math.imul(al0, bh8) | 0; - mid = mid + Math.imul(ah0, bl8) | 0; - hi = hi + Math.imul(ah0, bh8) | 0; - var w8 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w8 >>> 26) | 0; - w8 &= 67108863; - lo = Math.imul(al9, bl0); - mid = Math.imul(al9, bh0); - mid = mid + Math.imul(ah9, bl0) | 0; - hi = Math.imul(ah9, bh0); - lo = lo + Math.imul(al8, bl1) | 0; - mid = mid + Math.imul(al8, bh1) | 0; - mid = mid + Math.imul(ah8, bl1) | 0; - hi = hi + Math.imul(ah8, bh1) | 0; - lo = lo + Math.imul(al7, bl2) | 0; - mid = mid + Math.imul(al7, bh2) | 0; - mid = mid + Math.imul(ah7, bl2) | 0; - hi = hi + Math.imul(ah7, bh2) | 0; - lo = lo + Math.imul(al6, bl3) | 0; - mid = mid + Math.imul(al6, bh3) | 0; - mid = mid + Math.imul(ah6, bl3) | 0; - hi = hi + Math.imul(ah6, bh3) | 0; - lo = lo + Math.imul(al5, bl4) | 0; - mid = mid + Math.imul(al5, bh4) | 0; - mid = mid + Math.imul(ah5, bl4) | 0; - hi = hi + Math.imul(ah5, bh4) | 0; - lo = lo + Math.imul(al4, bl5) | 0; - mid = mid + Math.imul(al4, bh5) | 0; - mid = mid + Math.imul(ah4, bl5) | 0; - hi = hi + Math.imul(ah4, bh5) | 0; - lo = lo + Math.imul(al3, bl6) | 0; - mid = mid + Math.imul(al3, bh6) | 0; - mid = mid + Math.imul(ah3, bl6) | 0; - hi = hi + Math.imul(ah3, bh6) | 0; - lo = lo + Math.imul(al2, bl7) | 0; - mid = mid + Math.imul(al2, bh7) | 0; - mid = mid + Math.imul(ah2, bl7) | 0; - hi = hi + Math.imul(ah2, bh7) | 0; - lo = lo + Math.imul(al1, bl8) | 0; - mid = mid + Math.imul(al1, bh8) | 0; - mid = mid + Math.imul(ah1, bl8) | 0; - hi = hi + Math.imul(ah1, bh8) | 0; - lo = lo + Math.imul(al0, bl9) | 0; - mid = mid + Math.imul(al0, bh9) | 0; - mid = mid + Math.imul(ah0, bl9) | 0; - hi = hi + Math.imul(ah0, bh9) | 0; - var w9 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w9 >>> 26) | 0; - w9 &= 67108863; - lo = Math.imul(al9, bl1); - mid = Math.imul(al9, bh1); - mid = mid + Math.imul(ah9, bl1) | 0; - hi = Math.imul(ah9, bh1); - lo = lo + Math.imul(al8, bl2) | 0; - mid = mid + Math.imul(al8, bh2) | 0; - mid = mid + Math.imul(ah8, bl2) | 0; - hi = hi + Math.imul(ah8, bh2) | 0; - lo = lo + Math.imul(al7, bl3) | 0; - mid = mid + Math.imul(al7, bh3) | 0; - mid = mid + Math.imul(ah7, bl3) | 0; - hi = hi + Math.imul(ah7, bh3) | 0; - lo = lo + Math.imul(al6, bl4) | 0; - mid = mid + Math.imul(al6, bh4) | 0; - mid = mid + Math.imul(ah6, bl4) | 0; - hi = hi + Math.imul(ah6, bh4) | 0; - lo = lo + Math.imul(al5, bl5) | 0; - mid = mid + Math.imul(al5, bh5) | 0; - mid = mid + Math.imul(ah5, bl5) | 0; - hi = hi + Math.imul(ah5, bh5) | 0; - lo = lo + Math.imul(al4, bl6) | 0; - mid = mid + Math.imul(al4, bh6) | 0; - mid = mid + Math.imul(ah4, bl6) | 0; - hi = hi + Math.imul(ah4, bh6) | 0; - lo = lo + Math.imul(al3, bl7) | 0; - mid = mid + Math.imul(al3, bh7) | 0; - mid = mid + Math.imul(ah3, bl7) | 0; - hi = hi + Math.imul(ah3, bh7) | 0; - lo = lo + Math.imul(al2, bl8) | 0; - mid = mid + Math.imul(al2, bh8) | 0; - mid = mid + Math.imul(ah2, bl8) | 0; - hi = hi + Math.imul(ah2, bh8) | 0; - lo = lo + Math.imul(al1, bl9) | 0; - mid = mid + Math.imul(al1, bh9) | 0; - mid = mid + Math.imul(ah1, bl9) | 0; - hi = hi + Math.imul(ah1, bh9) | 0; - var w10 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w10 >>> 26) | 0; - w10 &= 67108863; - lo = Math.imul(al9, bl2); - mid = Math.imul(al9, bh2); - mid = mid + Math.imul(ah9, bl2) | 0; - hi = Math.imul(ah9, bh2); - lo = lo + Math.imul(al8, bl3) | 0; - mid = mid + Math.imul(al8, bh3) | 0; - mid = mid + Math.imul(ah8, bl3) | 0; - hi = hi + Math.imul(ah8, bh3) | 0; - lo = lo + Math.imul(al7, bl4) | 0; - mid = mid + Math.imul(al7, bh4) | 0; - mid = mid + Math.imul(ah7, bl4) | 0; - hi = hi + Math.imul(ah7, bh4) | 0; - lo = lo + Math.imul(al6, bl5) | 0; - mid = mid + Math.imul(al6, bh5) | 0; - mid = mid + Math.imul(ah6, bl5) | 0; - hi = hi + Math.imul(ah6, bh5) | 0; - lo = lo + Math.imul(al5, bl6) | 0; - mid = mid + Math.imul(al5, bh6) | 0; - mid = mid + Math.imul(ah5, bl6) | 0; - hi = hi + Math.imul(ah5, bh6) | 0; - lo = lo + Math.imul(al4, bl7) | 0; - mid = mid + Math.imul(al4, bh7) | 0; - mid = mid + Math.imul(ah4, bl7) | 0; - hi = hi + Math.imul(ah4, bh7) | 0; - lo = lo + Math.imul(al3, bl8) | 0; - mid = mid + Math.imul(al3, bh8) | 0; - mid = mid + Math.imul(ah3, bl8) | 0; - hi = hi + Math.imul(ah3, bh8) | 0; - lo = lo + Math.imul(al2, bl9) | 0; - mid = mid + Math.imul(al2, bh9) | 0; - mid = mid + Math.imul(ah2, bl9) | 0; - hi = hi + Math.imul(ah2, bh9) | 0; - var w11 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w11 >>> 26) | 0; - w11 &= 67108863; - lo = Math.imul(al9, bl3); - mid = Math.imul(al9, bh3); - mid = mid + Math.imul(ah9, bl3) | 0; - hi = Math.imul(ah9, bh3); - lo = lo + Math.imul(al8, bl4) | 0; - mid = mid + Math.imul(al8, bh4) | 0; - mid = mid + Math.imul(ah8, bl4) | 0; - hi = hi + Math.imul(ah8, bh4) | 0; - lo = lo + Math.imul(al7, bl5) | 0; - mid = mid + Math.imul(al7, bh5) | 0; - mid = mid + Math.imul(ah7, bl5) | 0; - hi = hi + Math.imul(ah7, bh5) | 0; - lo = lo + Math.imul(al6, bl6) | 0; - mid = mid + Math.imul(al6, bh6) | 0; - mid = mid + Math.imul(ah6, bl6) | 0; - hi = hi + Math.imul(ah6, bh6) | 0; - lo = lo + Math.imul(al5, bl7) | 0; - mid = mid + Math.imul(al5, bh7) | 0; - mid = mid + Math.imul(ah5, bl7) | 0; - hi = hi + Math.imul(ah5, bh7) | 0; - lo = lo + Math.imul(al4, bl8) | 0; - mid = mid + Math.imul(al4, bh8) | 0; - mid = mid + Math.imul(ah4, bl8) | 0; - hi = hi + Math.imul(ah4, bh8) | 0; - lo = lo + Math.imul(al3, bl9) | 0; - mid = mid + Math.imul(al3, bh9) | 0; - mid = mid + Math.imul(ah3, bl9) | 0; - hi = hi + Math.imul(ah3, bh9) | 0; - var w12 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w12 >>> 26) | 0; - w12 &= 67108863; - lo = Math.imul(al9, bl4); - mid = Math.imul(al9, bh4); - mid = mid + Math.imul(ah9, bl4) | 0; - hi = Math.imul(ah9, bh4); - lo = lo + Math.imul(al8, bl5) | 0; - mid = mid + Math.imul(al8, bh5) | 0; - mid = mid + Math.imul(ah8, bl5) | 0; - hi = hi + Math.imul(ah8, bh5) | 0; - lo = lo + Math.imul(al7, bl6) | 0; - mid = mid + Math.imul(al7, bh6) | 0; - mid = mid + Math.imul(ah7, bl6) | 0; - hi = hi + Math.imul(ah7, bh6) | 0; - lo = lo + Math.imul(al6, bl7) | 0; - mid = mid + Math.imul(al6, bh7) | 0; - mid = mid + Math.imul(ah6, bl7) | 0; - hi = hi + Math.imul(ah6, bh7) | 0; - lo = lo + Math.imul(al5, bl8) | 0; - mid = mid + Math.imul(al5, bh8) | 0; - mid = mid + Math.imul(ah5, bl8) | 0; - hi = hi + Math.imul(ah5, bh8) | 0; - lo = lo + Math.imul(al4, bl9) | 0; - mid = mid + Math.imul(al4, bh9) | 0; - mid = mid + Math.imul(ah4, bl9) | 0; - hi = hi + Math.imul(ah4, bh9) | 0; - var w13 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w13 >>> 26) | 0; - w13 &= 67108863; - lo = Math.imul(al9, bl5); - mid = Math.imul(al9, bh5); - mid = mid + Math.imul(ah9, bl5) | 0; - hi = Math.imul(ah9, bh5); - lo = lo + Math.imul(al8, bl6) | 0; - mid = mid + Math.imul(al8, bh6) | 0; - mid = mid + Math.imul(ah8, bl6) | 0; - hi = hi + Math.imul(ah8, bh6) | 0; - lo = lo + Math.imul(al7, bl7) | 0; - mid = mid + Math.imul(al7, bh7) | 0; - mid = mid + Math.imul(ah7, bl7) | 0; - hi = hi + Math.imul(ah7, bh7) | 0; - lo = lo + Math.imul(al6, bl8) | 0; - mid = mid + Math.imul(al6, bh8) | 0; - mid = mid + Math.imul(ah6, bl8) | 0; - hi = hi + Math.imul(ah6, bh8) | 0; - lo = lo + Math.imul(al5, bl9) | 0; - mid = mid + Math.imul(al5, bh9) | 0; - mid = mid + Math.imul(ah5, bl9) | 0; - hi = hi + Math.imul(ah5, bh9) | 0; - var w14 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w14 >>> 26) | 0; - w14 &= 67108863; - lo = Math.imul(al9, bl6); - mid = Math.imul(al9, bh6); - mid = mid + Math.imul(ah9, bl6) | 0; - hi = Math.imul(ah9, bh6); - lo = lo + Math.imul(al8, bl7) | 0; - mid = mid + Math.imul(al8, bh7) | 0; - mid = mid + Math.imul(ah8, bl7) | 0; - hi = hi + Math.imul(ah8, bh7) | 0; - lo = lo + Math.imul(al7, bl8) | 0; - mid = mid + Math.imul(al7, bh8) | 0; - mid = mid + Math.imul(ah7, bl8) | 0; - hi = hi + Math.imul(ah7, bh8) | 0; - lo = lo + Math.imul(al6, bl9) | 0; - mid = mid + Math.imul(al6, bh9) | 0; - mid = mid + Math.imul(ah6, bl9) | 0; - hi = hi + Math.imul(ah6, bh9) | 0; - var w15 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w15 >>> 26) | 0; - w15 &= 67108863; - lo = Math.imul(al9, bl7); - mid = Math.imul(al9, bh7); - mid = mid + Math.imul(ah9, bl7) | 0; - hi = Math.imul(ah9, bh7); - lo = lo + Math.imul(al8, bl8) | 0; - mid = mid + Math.imul(al8, bh8) | 0; - mid = mid + Math.imul(ah8, bl8) | 0; - hi = hi + Math.imul(ah8, bh8) | 0; - lo = lo + Math.imul(al7, bl9) | 0; - mid = mid + Math.imul(al7, bh9) | 0; - mid = mid + Math.imul(ah7, bl9) | 0; - hi = hi + Math.imul(ah7, bh9) | 0; - var w16 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w16 >>> 26) | 0; - w16 &= 67108863; - lo = Math.imul(al9, bl8); - mid = Math.imul(al9, bh8); - mid = mid + Math.imul(ah9, bl8) | 0; - hi = Math.imul(ah9, bh8); - lo = lo + Math.imul(al8, bl9) | 0; - mid = mid + Math.imul(al8, bh9) | 0; - mid = mid + Math.imul(ah8, bl9) | 0; - hi = hi + Math.imul(ah8, bh9) | 0; - var w17 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w17 >>> 26) | 0; - w17 &= 67108863; - lo = Math.imul(al9, bl9); - mid = Math.imul(al9, bh9); - mid = mid + Math.imul(ah9, bl9) | 0; - hi = Math.imul(ah9, bh9); - var w18 = (c + lo | 0) + ((mid & 8191) << 13) | 0; - c = (hi + (mid >>> 13) | 0) + (w18 >>> 26) | 0; - w18 &= 67108863; - o[0] = w0; - o[1] = w1; - o[2] = w2; - o[3] = w3; - o[4] = w4; - o[5] = w5; - o[6] = w6; - o[7] = w7; - o[8] = w8; - o[9] = w9; - o[10] = w10; - o[11] = w11; - o[12] = w12; - o[13] = w13; - o[14] = w14; - o[15] = w15; - o[16] = w16; - o[17] = w17; - o[18] = w18; - if (c !== 0) { - o[19] = c; - out.length++; - } - return out; - }; - if (!Math.imul) { - comb10MulTo = smallMulTo; - } - function bigMulTo(self2, num, out) { - out.negative = num.negative ^ self2.negative; - out.length = self2.length + num.length; - var carry = 0; - var hncarry = 0; - for (var k = 0; k < out.length - 1; k++) { - var ncarry = hncarry; - hncarry = 0; - var rword = carry & 67108863; - var maxJ = Math.min(k, num.length - 1); - for (var j = Math.max(0, k - self2.length + 1); j <= maxJ; j++) { - var i = k - j; - var a = self2.words[i] | 0; - var b = num.words[j] | 0; - var r = a * b; - var lo = r & 67108863; - ncarry = ncarry + (r / 67108864 | 0) | 0; - lo = lo + rword | 0; - rword = lo & 67108863; - ncarry = ncarry + (lo >>> 26) | 0; - hncarry += ncarry >>> 26; - ncarry &= 67108863; - } - out.words[k] = rword; - carry = ncarry; - ncarry = hncarry; - } - if (carry !== 0) { - out.words[k] = carry; - } else { - out.length--; - } - return out.strip(); - } - function jumboMulTo(self2, num, out) { - var fftm = new FFTM(); - return fftm.mulp(self2, num, out); - } - BN.prototype.mulTo = function mulTo(num, out) { - var res; - var len = this.length + num.length; - if (this.length === 10 && num.length === 10) { - res = comb10MulTo(this, num, out); - } else if (len < 63) { - res = smallMulTo(this, num, out); - } else if (len < 1024) { - res = bigMulTo(this, num, out); - } else { - res = jumboMulTo(this, num, out); - } - return res; - }; - function FFTM(x, y) { - this.x = x; - this.y = y; - } - FFTM.prototype.makeRBT = function makeRBT(N) { - var t = new Array(N); - var l = BN.prototype._countBits(N) - 1; - for (var i = 0; i < N; i++) { - t[i] = this.revBin(i, l, N); - } - return t; - }; - FFTM.prototype.revBin = function revBin(x, l, N) { - if (x === 0 || x === N - 1) - return x; - var rb = 0; - for (var i = 0; i < l; i++) { - rb |= (x & 1) << l - i - 1; - x >>= 1; - } - return rb; - }; - FFTM.prototype.permute = function permute(rbt, rws, iws, rtws, itws, N) { - for (var i = 0; i < N; i++) { - rtws[i] = rws[rbt[i]]; - itws[i] = iws[rbt[i]]; - } - }; - FFTM.prototype.transform = function transform(rws, iws, rtws, itws, N, rbt) { - this.permute(rbt, rws, iws, rtws, itws, N); - for (var s = 1; s < N; s <<= 1) { - var l = s << 1; - var rtwdf = Math.cos(2 * Math.PI / l); - var itwdf = Math.sin(2 * Math.PI / l); - for (var p = 0; p < N; p += l) { - var rtwdf_ = rtwdf; - var itwdf_ = itwdf; - for (var j = 0; j < s; j++) { - var re = rtws[p + j]; - var ie = itws[p + j]; - var ro = rtws[p + j + s]; - var io = itws[p + j + s]; - var rx = rtwdf_ * ro - itwdf_ * io; - io = rtwdf_ * io + itwdf_ * ro; - ro = rx; - rtws[p + j] = re + ro; - itws[p + j] = ie + io; - rtws[p + j + s] = re - ro; - itws[p + j + s] = ie - io; - if (j !== l) { - rx = rtwdf * rtwdf_ - itwdf * itwdf_; - itwdf_ = rtwdf * itwdf_ + itwdf * rtwdf_; - rtwdf_ = rx; - } - } - } - } - }; - FFTM.prototype.guessLen13b = function guessLen13b(n, m) { - var N = Math.max(m, n) | 1; - var odd = N & 1; - var i = 0; - for (N = N / 2 | 0; N; N = N >>> 1) { - i++; - } - return 1 << i + 1 + odd; - }; - FFTM.prototype.conjugate = function conjugate(rws, iws, N) { - if (N <= 1) - return; - for (var i = 0; i < N / 2; i++) { - var t = rws[i]; - rws[i] = rws[N - i - 1]; - rws[N - i - 1] = t; - t = iws[i]; - iws[i] = -iws[N - i - 1]; - iws[N - i - 1] = -t; - } - }; - FFTM.prototype.normalize13b = function normalize13b(ws, N) { - var carry = 0; - for (var i = 0; i < N / 2; i++) { - var w = Math.round(ws[2 * i + 1] / N) * 8192 + Math.round(ws[2 * i] / N) + carry; - ws[i] = w & 67108863; - if (w < 67108864) { - carry = 0; - } else { - carry = w / 67108864 | 0; - } - } - return ws; - }; - FFTM.prototype.convert13b = function convert13b(ws, len, rws, N) { - var carry = 0; - for (var i = 0; i < len; i++) { - carry = carry + (ws[i] | 0); - rws[2 * i] = carry & 8191; - carry = carry >>> 13; - rws[2 * i + 1] = carry & 8191; - carry = carry >>> 13; - } - for (i = 2 * len; i < N; ++i) { - rws[i] = 0; - } - assert(carry === 0); - assert((carry & ~8191) === 0); - }; - FFTM.prototype.stub = function stub(N) { - var ph = new Array(N); - for (var i = 0; i < N; i++) { - ph[i] = 0; - } - return ph; - }; - FFTM.prototype.mulp = function mulp(x, y, out) { - var N = 2 * this.guessLen13b(x.length, y.length); - var rbt = this.makeRBT(N); - var _ = this.stub(N); - var rws = new Array(N); - var rwst = new Array(N); - var iwst = new Array(N); - var nrws = new Array(N); - var nrwst = new Array(N); - var niwst = new Array(N); - var rmws = out.words; - rmws.length = N; - this.convert13b(x.words, x.length, rws, N); - this.convert13b(y.words, y.length, nrws, N); - this.transform(rws, _, rwst, iwst, N, rbt); - this.transform(nrws, _, nrwst, niwst, N, rbt); - for (var i = 0; i < N; i++) { - var rx = rwst[i] * nrwst[i] - iwst[i] * niwst[i]; - iwst[i] = rwst[i] * niwst[i] + iwst[i] * nrwst[i]; - rwst[i] = rx; - } - this.conjugate(rwst, iwst, N); - this.transform(rwst, iwst, rmws, _, N, rbt); - this.conjugate(rmws, _, N); - this.normalize13b(rmws, N); - out.negative = x.negative ^ y.negative; - out.length = x.length + y.length; - return out.strip(); - }; - BN.prototype.mul = function mul(num) { - var out = new BN(null); - out.words = new Array(this.length + num.length); - return this.mulTo(num, out); - }; - BN.prototype.mulf = function mulf(num) { - var out = new BN(null); - out.words = new Array(this.length + num.length); - return jumboMulTo(this, num, out); - }; - BN.prototype.imul = function imul(num) { - return this.clone().mulTo(num, this); - }; - BN.prototype.imuln = function imuln(num) { - assert(typeof num === "number"); - assert(num < 67108864); - var carry = 0; - for (var i = 0; i < this.length; i++) { - var w = (this.words[i] | 0) * num; - var lo = (w & 67108863) + (carry & 67108863); - carry >>= 26; - carry += w / 67108864 | 0; - carry += lo >>> 26; - this.words[i] = lo & 67108863; - } - if (carry !== 0) { - this.words[i] = carry; - this.length++; - } - return this; - }; - BN.prototype.muln = function muln(num) { - return this.clone().imuln(num); - }; - BN.prototype.sqr = function sqr() { - return this.mul(this); - }; - BN.prototype.isqr = function isqr() { - return this.imul(this.clone()); - }; - BN.prototype.pow = function pow(num) { - var w = toBitArray(num); - if (w.length === 0) - return new BN(1); - var res = this; - for (var i = 0; i < w.length; i++, res = res.sqr()) { - if (w[i] !== 0) - break; - } - if (++i < w.length) { - for (var q = res.sqr(); i < w.length; i++, q = q.sqr()) { - if (w[i] === 0) - continue; - res = res.mul(q); - } - } - return res; - }; - BN.prototype.iushln = function iushln(bits) { - assert(typeof bits === "number" && bits >= 0); - var r = bits % 26; - var s = (bits - r) / 26; - var carryMask = 67108863 >>> 26 - r << 26 - r; - var i; - if (r !== 0) { - var carry = 0; - for (i = 0; i < this.length; i++) { - var newCarry = this.words[i] & carryMask; - var c = (this.words[i] | 0) - newCarry << r; - this.words[i] = c | carry; - carry = newCarry >>> 26 - r; - } - if (carry) { - this.words[i] = carry; - this.length++; - } - } - if (s !== 0) { - for (i = this.length - 1; i >= 0; i--) { - this.words[i + s] = this.words[i]; - } - for (i = 0; i < s; i++) { - this.words[i] = 0; - } - this.length += s; - } - return this.strip(); - }; - BN.prototype.ishln = function ishln(bits) { - assert(this.negative === 0); - return this.iushln(bits); - }; - BN.prototype.iushrn = function iushrn(bits, hint, extended) { - assert(typeof bits === "number" && bits >= 0); - var h; - if (hint) { - h = (hint - hint % 26) / 26; - } else { - h = 0; - } - var r = bits % 26; - var s = Math.min((bits - r) / 26, this.length); - var mask = 67108863 ^ 67108863 >>> r << r; - var maskedWords = extended; - h -= s; - h = Math.max(0, h); - if (maskedWords) { - for (var i = 0; i < s; i++) { - maskedWords.words[i] = this.words[i]; - } - maskedWords.length = s; - } - if (s === 0) { - } else if (this.length > s) { - this.length -= s; - for (i = 0; i < this.length; i++) { - this.words[i] = this.words[i + s]; - } - } else { - this.words[0] = 0; - this.length = 1; - } - var carry = 0; - for (i = this.length - 1; i >= 0 && (carry !== 0 || i >= h); i--) { - var word = this.words[i] | 0; - this.words[i] = carry << 26 - r | word >>> r; - carry = word & mask; - } - if (maskedWords && carry !== 0) { - maskedWords.words[maskedWords.length++] = carry; - } - if (this.length === 0) { - this.words[0] = 0; - this.length = 1; - } - return this.strip(); - }; - BN.prototype.ishrn = function ishrn(bits, hint, extended) { - assert(this.negative === 0); - return this.iushrn(bits, hint, extended); - }; - BN.prototype.shln = function shln(bits) { - return this.clone().ishln(bits); - }; - BN.prototype.ushln = function ushln(bits) { - return this.clone().iushln(bits); - }; - BN.prototype.shrn = function shrn(bits) { - return this.clone().ishrn(bits); - }; - BN.prototype.ushrn = function ushrn(bits) { - return this.clone().iushrn(bits); - }; - BN.prototype.testn = function testn(bit) { - assert(typeof bit === "number" && bit >= 0); - var r = bit % 26; - var s = (bit - r) / 26; - var q = 1 << r; - if (this.length <= s) - return false; - var w = this.words[s]; - return !!(w & q); - }; - BN.prototype.imaskn = function imaskn(bits) { - assert(typeof bits === "number" && bits >= 0); - var r = bits % 26; - var s = (bits - r) / 26; - assert(this.negative === 0, "imaskn works only with positive numbers"); - if (this.length <= s) { - return this; - } - if (r !== 0) { - s++; - } - this.length = Math.min(s, this.length); - if (r !== 0) { - var mask = 67108863 ^ 67108863 >>> r << r; - this.words[this.length - 1] &= mask; - } - return this.strip(); - }; - BN.prototype.maskn = function maskn(bits) { - return this.clone().imaskn(bits); - }; - BN.prototype.iaddn = function iaddn(num) { - assert(typeof num === "number"); - assert(num < 67108864); - if (num < 0) - return this.isubn(-num); - if (this.negative !== 0) { - if (this.length === 1 && (this.words[0] | 0) < num) { - this.words[0] = num - (this.words[0] | 0); - this.negative = 0; - return this; - } - this.negative = 0; - this.isubn(num); - this.negative = 1; - return this; - } - return this._iaddn(num); - }; - BN.prototype._iaddn = function _iaddn(num) { - this.words[0] += num; - for (var i = 0; i < this.length && this.words[i] >= 67108864; i++) { - this.words[i] -= 67108864; - if (i === this.length - 1) { - this.words[i + 1] = 1; - } else { - this.words[i + 1]++; - } - } - this.length = Math.max(this.length, i + 1); - return this; - }; - BN.prototype.isubn = function isubn(num) { - assert(typeof num === "number"); - assert(num < 67108864); - if (num < 0) - return this.iaddn(-num); - if (this.negative !== 0) { - this.negative = 0; - this.iaddn(num); - this.negative = 1; - return this; - } - this.words[0] -= num; - if (this.length === 1 && this.words[0] < 0) { - this.words[0] = -this.words[0]; - this.negative = 1; - } else { - for (var i = 0; i < this.length && this.words[i] < 0; i++) { - this.words[i] += 67108864; - this.words[i + 1] -= 1; - } - } - return this.strip(); - }; - BN.prototype.addn = function addn(num) { - return this.clone().iaddn(num); - }; - BN.prototype.subn = function subn(num) { - return this.clone().isubn(num); - }; - BN.prototype.iabs = function iabs() { - this.negative = 0; - return this; - }; - BN.prototype.abs = function abs() { - return this.clone().iabs(); - }; - BN.prototype._ishlnsubmul = function _ishlnsubmul(num, mul, shift) { - var len = num.length + shift; - var i; - this._expand(len); - var w; - var carry = 0; - for (i = 0; i < num.length; i++) { - w = (this.words[i + shift] | 0) + carry; - var right = (num.words[i] | 0) * mul; - w -= right & 67108863; - carry = (w >> 26) - (right / 67108864 | 0); - this.words[i + shift] = w & 67108863; - } - for (; i < this.length - shift; i++) { - w = (this.words[i + shift] | 0) + carry; - carry = w >> 26; - this.words[i + shift] = w & 67108863; - } - if (carry === 0) - return this.strip(); - assert(carry === -1); - carry = 0; - for (i = 0; i < this.length; i++) { - w = -(this.words[i] | 0) + carry; - carry = w >> 26; - this.words[i] = w & 67108863; - } - this.negative = 1; - return this.strip(); - }; - BN.prototype._wordDiv = function _wordDiv(num, mode) { - var shift = this.length - num.length; - var a = this.clone(); - var b = num; - var bhi = b.words[b.length - 1] | 0; - var bhiBits = this._countBits(bhi); - shift = 26 - bhiBits; - if (shift !== 0) { - b = b.ushln(shift); - a.iushln(shift); - bhi = b.words[b.length - 1] | 0; - } - var m = a.length - b.length; - var q; - if (mode !== "mod") { - q = new BN(null); - q.length = m + 1; - q.words = new Array(q.length); - for (var i = 0; i < q.length; i++) { - q.words[i] = 0; - } - } - var diff = a.clone()._ishlnsubmul(b, 1, m); - if (diff.negative === 0) { - a = diff; - if (q) { - q.words[m] = 1; - } - } - for (var j = m - 1; j >= 0; j--) { - var qj = (a.words[b.length + j] | 0) * 67108864 + (a.words[b.length + j - 1] | 0); - qj = Math.min(qj / bhi | 0, 67108863); - a._ishlnsubmul(b, qj, j); - while (a.negative !== 0) { - qj--; - a.negative = 0; - a._ishlnsubmul(b, 1, j); - if (!a.isZero()) { - a.negative ^= 1; - } - } - if (q) { - q.words[j] = qj; - } - } - if (q) { - q.strip(); - } - a.strip(); - if (mode !== "div" && shift !== 0) { - a.iushrn(shift); - } - return { - div: q || null, - mod: a - }; - }; - BN.prototype.divmod = function divmod(num, mode, positive) { - assert(!num.isZero()); - if (this.isZero()) { - return { - div: new BN(0), - mod: new BN(0) - }; - } - var div, mod, res; - if (this.negative !== 0 && num.negative === 0) { - res = this.neg().divmod(num, mode); - if (mode !== "mod") { - div = res.div.neg(); - } - if (mode !== "div") { - mod = res.mod.neg(); - if (positive && mod.negative !== 0) { - mod.iadd(num); - } - } - return { - div, - mod - }; - } - if (this.negative === 0 && num.negative !== 0) { - res = this.divmod(num.neg(), mode); - if (mode !== "mod") { - div = res.div.neg(); - } - return { - div, - mod: res.mod - }; - } - if ((this.negative & num.negative) !== 0) { - res = this.neg().divmod(num.neg(), mode); - if (mode !== "div") { - mod = res.mod.neg(); - if (positive && mod.negative !== 0) { - mod.isub(num); - } - } - return { - div: res.div, - mod - }; - } - if (num.length > this.length || this.cmp(num) < 0) { - return { - div: new BN(0), - mod: this - }; - } - if (num.length === 1) { - if (mode === "div") { - return { - div: this.divn(num.words[0]), - mod: null - }; - } - if (mode === "mod") { - return { - div: null, - mod: new BN(this.modn(num.words[0])) - }; - } - return { - div: this.divn(num.words[0]), - mod: new BN(this.modn(num.words[0])) - }; - } - return this._wordDiv(num, mode); - }; - BN.prototype.div = function div(num) { - return this.divmod(num, "div", false).div; - }; - BN.prototype.mod = function mod(num) { - return this.divmod(num, "mod", false).mod; - }; - BN.prototype.umod = function umod(num) { - return this.divmod(num, "mod", true).mod; - }; - BN.prototype.divRound = function divRound(num) { - var dm = this.divmod(num); - if (dm.mod.isZero()) - return dm.div; - var mod = dm.div.negative !== 0 ? dm.mod.isub(num) : dm.mod; - var half = num.ushrn(1); - var r2 = num.andln(1); - var cmp = mod.cmp(half); - if (cmp < 0 || r2 === 1 && cmp === 0) - return dm.div; - return dm.div.negative !== 0 ? dm.div.isubn(1) : dm.div.iaddn(1); - }; - BN.prototype.modn = function modn(num) { - assert(num <= 67108863); - var p = (1 << 26) % num; - var acc = 0; - for (var i = this.length - 1; i >= 0; i--) { - acc = (p * acc + (this.words[i] | 0)) % num; - } - return acc; - }; - BN.prototype.idivn = function idivn(num) { - assert(num <= 67108863); - var carry = 0; - for (var i = this.length - 1; i >= 0; i--) { - var w = (this.words[i] | 0) + carry * 67108864; - this.words[i] = w / num | 0; - carry = w % num; - } - return this.strip(); - }; - BN.prototype.divn = function divn(num) { - return this.clone().idivn(num); - }; - BN.prototype.egcd = function egcd(p) { - assert(p.negative === 0); - assert(!p.isZero()); - var x = this; - var y = p.clone(); - if (x.negative !== 0) { - x = x.umod(p); - } else { - x = x.clone(); - } - var A = new BN(1); - var B = new BN(0); - var C = new BN(0); - var D = new BN(1); - var g = 0; - while (x.isEven() && y.isEven()) { - x.iushrn(1); - y.iushrn(1); - ++g; - } - var yp = y.clone(); - var xp = x.clone(); - while (!x.isZero()) { - for (var i = 0, im = 1; (x.words[0] & im) === 0 && i < 26; ++i, im <<= 1) - ; - if (i > 0) { - x.iushrn(i); - while (i-- > 0) { - if (A.isOdd() || B.isOdd()) { - A.iadd(yp); - B.isub(xp); - } - A.iushrn(1); - B.iushrn(1); - } - } - for (var j = 0, jm = 1; (y.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1) - ; - if (j > 0) { - y.iushrn(j); - while (j-- > 0) { - if (C.isOdd() || D.isOdd()) { - C.iadd(yp); - D.isub(xp); - } - C.iushrn(1); - D.iushrn(1); - } - } - if (x.cmp(y) >= 0) { - x.isub(y); - A.isub(C); - B.isub(D); - } else { - y.isub(x); - C.isub(A); - D.isub(B); - } - } - return { - a: C, - b: D, - gcd: y.iushln(g) - }; - }; - BN.prototype._invmp = function _invmp(p) { - assert(p.negative === 0); - assert(!p.isZero()); - var a = this; - var b = p.clone(); - if (a.negative !== 0) { - a = a.umod(p); - } else { - a = a.clone(); - } - var x1 = new BN(1); - var x2 = new BN(0); - var delta = b.clone(); - while (a.cmpn(1) > 0 && b.cmpn(1) > 0) { - for (var i = 0, im = 1; (a.words[0] & im) === 0 && i < 26; ++i, im <<= 1) - ; - if (i > 0) { - a.iushrn(i); - while (i-- > 0) { - if (x1.isOdd()) { - x1.iadd(delta); - } - x1.iushrn(1); - } - } - for (var j = 0, jm = 1; (b.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1) - ; - if (j > 0) { - b.iushrn(j); - while (j-- > 0) { - if (x2.isOdd()) { - x2.iadd(delta); - } - x2.iushrn(1); - } - } - if (a.cmp(b) >= 0) { - a.isub(b); - x1.isub(x2); - } else { - b.isub(a); - x2.isub(x1); - } - } - var res; - if (a.cmpn(1) === 0) { - res = x1; - } else { - res = x2; - } - if (res.cmpn(0) < 0) { - res.iadd(p); - } - return res; - }; - BN.prototype.gcd = function gcd(num) { - if (this.isZero()) - return num.abs(); - if (num.isZero()) - return this.abs(); - var a = this.clone(); - var b = num.clone(); - a.negative = 0; - b.negative = 0; - for (var shift = 0; a.isEven() && b.isEven(); shift++) { - a.iushrn(1); - b.iushrn(1); - } - do { - while (a.isEven()) { - a.iushrn(1); - } - while (b.isEven()) { - b.iushrn(1); - } - var r = a.cmp(b); - if (r < 0) { - var t = a; - a = b; - b = t; - } else if (r === 0 || b.cmpn(1) === 0) { - break; - } - a.isub(b); - } while (true); - return b.iushln(shift); - }; - BN.prototype.invm = function invm(num) { - return this.egcd(num).a.umod(num); - }; - BN.prototype.isEven = function isEven() { - return (this.words[0] & 1) === 0; - }; - BN.prototype.isOdd = function isOdd() { - return (this.words[0] & 1) === 1; - }; - BN.prototype.andln = function andln(num) { - return this.words[0] & num; - }; - BN.prototype.bincn = function bincn(bit) { - assert(typeof bit === "number"); - var r = bit % 26; - var s = (bit - r) / 26; - var q = 1 << r; - if (this.length <= s) { - this._expand(s + 1); - this.words[s] |= q; - return this; - } - var carry = q; - for (var i = s; carry !== 0 && i < this.length; i++) { - var w = this.words[i] | 0; - w += carry; - carry = w >>> 26; - w &= 67108863; - this.words[i] = w; - } - if (carry !== 0) { - this.words[i] = carry; - this.length++; - } - return this; - }; - BN.prototype.isZero = function isZero() { - return this.length === 1 && this.words[0] === 0; - }; - BN.prototype.cmpn = function cmpn(num) { - var negative = num < 0; - if (this.negative !== 0 && !negative) - return -1; - if (this.negative === 0 && negative) - return 1; - this.strip(); - var res; - if (this.length > 1) { - res = 1; - } else { - if (negative) { - num = -num; - } - assert(num <= 67108863, "Number is too big"); - var w = this.words[0] | 0; - res = w === num ? 0 : w < num ? -1 : 1; - } - if (this.negative !== 0) - return -res | 0; - return res; - }; - BN.prototype.cmp = function cmp(num) { - if (this.negative !== 0 && num.negative === 0) - return -1; - if (this.negative === 0 && num.negative !== 0) - return 1; - var res = this.ucmp(num); - if (this.negative !== 0) - return -res | 0; - return res; - }; - BN.prototype.ucmp = function ucmp(num) { - if (this.length > num.length) - return 1; - if (this.length < num.length) - return -1; - var res = 0; - for (var i = this.length - 1; i >= 0; i--) { - var a = this.words[i] | 0; - var b = num.words[i] | 0; - if (a === b) - continue; - if (a < b) { - res = -1; - } else if (a > b) { - res = 1; - } - break; - } - return res; - }; - BN.prototype.gtn = function gtn(num) { - return this.cmpn(num) === 1; - }; - BN.prototype.gt = function gt(num) { - return this.cmp(num) === 1; - }; - BN.prototype.gten = function gten(num) { - return this.cmpn(num) >= 0; - }; - BN.prototype.gte = function gte(num) { - return this.cmp(num) >= 0; - }; - BN.prototype.ltn = function ltn(num) { - return this.cmpn(num) === -1; - }; - BN.prototype.lt = function lt(num) { - return this.cmp(num) === -1; - }; - BN.prototype.lten = function lten(num) { - return this.cmpn(num) <= 0; - }; - BN.prototype.lte = function lte(num) { - return this.cmp(num) <= 0; - }; - BN.prototype.eqn = function eqn(num) { - return this.cmpn(num) === 0; - }; - BN.prototype.eq = function eq(num) { - return this.cmp(num) === 0; - }; - BN.red = function red(num) { - return new Red(num); - }; - BN.prototype.toRed = function toRed(ctx) { - assert(!this.red, "Already a number in reduction context"); - assert(this.negative === 0, "red works only with positives"); - return ctx.convertTo(this)._forceRed(ctx); - }; - BN.prototype.fromRed = function fromRed() { - assert(this.red, "fromRed works only with numbers in reduction context"); - return this.red.convertFrom(this); - }; - BN.prototype._forceRed = function _forceRed(ctx) { - this.red = ctx; - return this; - }; - BN.prototype.forceRed = function forceRed(ctx) { - assert(!this.red, "Already a number in reduction context"); - return this._forceRed(ctx); - }; - BN.prototype.redAdd = function redAdd(num) { - assert(this.red, "redAdd works only with red numbers"); - return this.red.add(this, num); - }; - BN.prototype.redIAdd = function redIAdd(num) { - assert(this.red, "redIAdd works only with red numbers"); - return this.red.iadd(this, num); - }; - BN.prototype.redSub = function redSub(num) { - assert(this.red, "redSub works only with red numbers"); - return this.red.sub(this, num); - }; - BN.prototype.redISub = function redISub(num) { - assert(this.red, "redISub works only with red numbers"); - return this.red.isub(this, num); - }; - BN.prototype.redShl = function redShl(num) { - assert(this.red, "redShl works only with red numbers"); - return this.red.shl(this, num); - }; - BN.prototype.redMul = function redMul(num) { - assert(this.red, "redMul works only with red numbers"); - this.red._verify2(this, num); - return this.red.mul(this, num); - }; - BN.prototype.redIMul = function redIMul(num) { - assert(this.red, "redMul works only with red numbers"); - this.red._verify2(this, num); - return this.red.imul(this, num); - }; - BN.prototype.redSqr = function redSqr() { - assert(this.red, "redSqr works only with red numbers"); - this.red._verify1(this); - return this.red.sqr(this); - }; - BN.prototype.redISqr = function redISqr() { - assert(this.red, "redISqr works only with red numbers"); - this.red._verify1(this); - return this.red.isqr(this); - }; - BN.prototype.redSqrt = function redSqrt() { - assert(this.red, "redSqrt works only with red numbers"); - this.red._verify1(this); - return this.red.sqrt(this); - }; - BN.prototype.redInvm = function redInvm() { - assert(this.red, "redInvm works only with red numbers"); - this.red._verify1(this); - return this.red.invm(this); - }; - BN.prototype.redNeg = function redNeg() { - assert(this.red, "redNeg works only with red numbers"); - this.red._verify1(this); - return this.red.neg(this); - }; - BN.prototype.redPow = function redPow(num) { - assert(this.red && !num.red, "redPow(normalNum)"); - this.red._verify1(this); - return this.red.pow(this, num); - }; - var primes = { - k256: null, - p224: null, - p192: null, - p25519: null - }; - function MPrime(name, p) { - this.name = name; - this.p = new BN(p, 16); - this.n = this.p.bitLength(); - this.k = new BN(1).iushln(this.n).isub(this.p); - this.tmp = this._tmp(); - } - MPrime.prototype._tmp = function _tmp() { - var tmp = new BN(null); - tmp.words = new Array(Math.ceil(this.n / 13)); - return tmp; - }; - MPrime.prototype.ireduce = function ireduce(num) { - var r = num; - var rlen; - do { - this.split(r, this.tmp); - r = this.imulK(r); - r = r.iadd(this.tmp); - rlen = r.bitLength(); - } while (rlen > this.n); - var cmp = rlen < this.n ? -1 : r.ucmp(this.p); - if (cmp === 0) { - r.words[0] = 0; - r.length = 1; - } else if (cmp > 0) { - r.isub(this.p); - } else { - if (r.strip !== void 0) { - r.strip(); - } else { - r._strip(); - } - } - return r; - }; - MPrime.prototype.split = function split(input, out) { - input.iushrn(this.n, 0, out); - }; - MPrime.prototype.imulK = function imulK(num) { - return num.imul(this.k); - }; - function K256() { - MPrime.call( - this, - "k256", - "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f" - ); - } - inherits2(K256, MPrime); - K256.prototype.split = function split(input, output) { - var mask = 4194303; - var outLen = Math.min(input.length, 9); - for (var i = 0; i < outLen; i++) { - output.words[i] = input.words[i]; - } - output.length = outLen; - if (input.length <= 9) { - input.words[0] = 0; - input.length = 1; - return; - } - var prev = input.words[9]; - output.words[output.length++] = prev & mask; - for (i = 10; i < input.length; i++) { - var next = input.words[i] | 0; - input.words[i - 10] = (next & mask) << 4 | prev >>> 22; - prev = next; - } - prev >>>= 22; - input.words[i - 10] = prev; - if (prev === 0 && input.length > 10) { - input.length -= 10; - } else { - input.length -= 9; - } - }; - K256.prototype.imulK = function imulK(num) { - num.words[num.length] = 0; - num.words[num.length + 1] = 0; - num.length += 2; - var lo = 0; - for (var i = 0; i < num.length; i++) { - var w = num.words[i] | 0; - lo += w * 977; - num.words[i] = lo & 67108863; - lo = w * 64 + (lo / 67108864 | 0); - } - if (num.words[num.length - 1] === 0) { - num.length--; - if (num.words[num.length - 1] === 0) { - num.length--; - } - } - return num; - }; - function P224() { - MPrime.call( - this, - "p224", - "ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001" - ); - } - inherits2(P224, MPrime); - function P192() { - MPrime.call( - this, - "p192", - "ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff" - ); - } - inherits2(P192, MPrime); - function P25519() { - MPrime.call( - this, - "25519", - "7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed" - ); - } - inherits2(P25519, MPrime); - P25519.prototype.imulK = function imulK(num) { - var carry = 0; - for (var i = 0; i < num.length; i++) { - var hi = (num.words[i] | 0) * 19 + carry; - var lo = hi & 67108863; - hi >>>= 26; - num.words[i] = lo; - carry = hi; - } - if (carry !== 0) { - num.words[num.length++] = carry; - } - return num; - }; - BN._prime = function prime(name) { - if (primes[name]) - return primes[name]; - var prime2; - if (name === "k256") { - prime2 = new K256(); - } else if (name === "p224") { - prime2 = new P224(); - } else if (name === "p192") { - prime2 = new P192(); - } else if (name === "p25519") { - prime2 = new P25519(); - } else { - throw new Error("Unknown prime " + name); - } - primes[name] = prime2; - return prime2; - }; - function Red(m) { - if (typeof m === "string") { - var prime = BN._prime(m); - this.m = prime.p; - this.prime = prime; - } else { - assert(m.gtn(1), "modulus must be greater than 1"); - this.m = m; - this.prime = null; - } - } - Red.prototype._verify1 = function _verify1(a) { - assert(a.negative === 0, "red works only with positives"); - assert(a.red, "red works only with red numbers"); - }; - Red.prototype._verify2 = function _verify2(a, b) { - assert((a.negative | b.negative) === 0, "red works only with positives"); - assert( - a.red && a.red === b.red, - "red works only with red numbers" - ); - }; - Red.prototype.imod = function imod(a) { - if (this.prime) - return this.prime.ireduce(a)._forceRed(this); - return a.umod(this.m)._forceRed(this); - }; - Red.prototype.neg = function neg(a) { - if (a.isZero()) { - return a.clone(); - } - return this.m.sub(a)._forceRed(this); - }; - Red.prototype.add = function add(a, b) { - this._verify2(a, b); - var res = a.add(b); - if (res.cmp(this.m) >= 0) { - res.isub(this.m); - } - return res._forceRed(this); - }; - Red.prototype.iadd = function iadd(a, b) { - this._verify2(a, b); - var res = a.iadd(b); - if (res.cmp(this.m) >= 0) { - res.isub(this.m); - } - return res; - }; - Red.prototype.sub = function sub(a, b) { - this._verify2(a, b); - var res = a.sub(b); - if (res.cmpn(0) < 0) { - res.iadd(this.m); - } - return res._forceRed(this); - }; - Red.prototype.isub = function isub(a, b) { - this._verify2(a, b); - var res = a.isub(b); - if (res.cmpn(0) < 0) { - res.iadd(this.m); - } - return res; - }; - Red.prototype.shl = function shl(a, num) { - this._verify1(a); - return this.imod(a.ushln(num)); - }; - Red.prototype.imul = function imul(a, b) { - this._verify2(a, b); - return this.imod(a.imul(b)); - }; - Red.prototype.mul = function mul(a, b) { - this._verify2(a, b); - return this.imod(a.mul(b)); - }; - Red.prototype.isqr = function isqr(a) { - return this.imul(a, a.clone()); - }; - Red.prototype.sqr = function sqr(a) { - return this.mul(a, a); - }; - Red.prototype.sqrt = function sqrt(a) { - if (a.isZero()) - return a.clone(); - var mod3 = this.m.andln(3); - assert(mod3 % 2 === 1); - if (mod3 === 3) { - var pow = this.m.add(new BN(1)).iushrn(2); - return this.pow(a, pow); - } - var q = this.m.subn(1); - var s = 0; - while (!q.isZero() && q.andln(1) === 0) { - s++; - q.iushrn(1); - } - assert(!q.isZero()); - var one = new BN(1).toRed(this); - var nOne = one.redNeg(); - var lpow = this.m.subn(1).iushrn(1); - var z = this.m.bitLength(); - z = new BN(2 * z * z).toRed(this); - while (this.pow(z, lpow).cmp(nOne) !== 0) { - z.redIAdd(nOne); - } - var c = this.pow(z, q); - var r = this.pow(a, q.addn(1).iushrn(1)); - var t = this.pow(a, q); - var m = s; - while (t.cmp(one) !== 0) { - var tmp = t; - for (var i = 0; tmp.cmp(one) !== 0; i++) { - tmp = tmp.redSqr(); - } - assert(i < m); - var b = this.pow(c, new BN(1).iushln(m - i - 1)); - r = r.redMul(b); - c = b.redSqr(); - t = t.redMul(c); - m = i; - } - return r; - }; - Red.prototype.invm = function invm(a) { - var inv = a._invmp(this.m); - if (inv.negative !== 0) { - inv.negative = 0; - return this.imod(inv).redNeg(); - } else { - return this.imod(inv); - } - }; - Red.prototype.pow = function pow(a, num) { - if (num.isZero()) - return new BN(1).toRed(this); - if (num.cmpn(1) === 0) - return a.clone(); - var windowSize = 4; - var wnd = new Array(1 << windowSize); - wnd[0] = new BN(1).toRed(this); - wnd[1] = a; - for (var i = 2; i < wnd.length; i++) { - wnd[i] = this.mul(wnd[i - 1], a); - } - var res = wnd[0]; - var current = 0; - var currentLen = 0; - var start = num.bitLength() % 26; - if (start === 0) { - start = 26; - } - for (i = num.length - 1; i >= 0; i--) { - var word = num.words[i]; - for (var j = start - 1; j >= 0; j--) { - var bit = word >> j & 1; - if (res !== wnd[0]) { - res = this.sqr(res); - } - if (bit === 0 && current === 0) { - currentLen = 0; - continue; - } - current <<= 1; - current |= bit; - currentLen++; - if (currentLen !== windowSize && (i !== 0 || j !== 0)) - continue; - res = this.mul(res, wnd[current]); - currentLen = 0; - current = 0; - } - start = 26; - } - return res; - }; - Red.prototype.convertTo = function convertTo(num) { - var r = num.umod(this.m); - return r === num ? r.clone() : r; - }; - Red.prototype.convertFrom = function convertFrom(num) { - var res = num.clone(); - res.red = null; - return res; - }; - BN.mont = function mont(num) { - return new Mont(num); - }; - function Mont(m) { - Red.call(this, m); - this.shift = this.m.bitLength(); - if (this.shift % 26 !== 0) { - this.shift += 26 - this.shift % 26; - } - this.r = new BN(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); - } - inherits2(Mont, Red); - Mont.prototype.convertTo = function convertTo(num) { - return this.imod(num.ushln(this.shift)); - }; - Mont.prototype.convertFrom = function convertFrom(num) { - var r = this.imod(num.mul(this.rinv)); - r.red = null; - return r; - }; - Mont.prototype.imul = function imul(a, b) { - if (a.isZero() || b.isZero()) { - a.words[0] = 0; - a.length = 1; - return a; - } - var t = a.imul(b); - var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m); - var u = t.isub(c).iushrn(this.shift); - var res = u; - if (u.cmp(this.m) >= 0) { - res = u.isub(this.m); - } else if (u.cmpn(0) < 0) { - res = u.iadd(this.m); - } - return res._forceRed(this); - }; - Mont.prototype.mul = function mul(a, b) { - if (a.isZero() || b.isZero()) - return new BN(0)._forceRed(this); - var t = a.mul(b); - var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m); - var u = t.isub(c).iushrn(this.shift); - var res = u; - if (u.cmp(this.m) >= 0) { - res = u.isub(this.m); - } else if (u.cmpn(0) < 0) { - res = u.iadd(this.m); - } - return res._forceRed(this); - }; - Mont.prototype.invm = function invm(a) { - var res = this.imod(a._invmp(this.m).mul(this.r2)); - return res._forceRed(this); - }; - })(typeof module2 === "undefined" || module2, exports2); - } -}); - -// node_modules/minimalistic-crypto-utils/lib/utils.js -var require_utils2 = __commonJS({ - "node_modules/minimalistic-crypto-utils/lib/utils.js"(exports2) { - "use strict"; - var utils = exports2; - function toArray2(msg, enc) { - if (Array.isArray(msg)) - return msg.slice(); - if (!msg) - return []; - var res = []; - if (typeof msg !== "string") { - for (var i = 0; i < msg.length; i++) - res[i] = msg[i] | 0; - return res; - } - if (enc === "hex") { - msg = msg.replace(/[^a-z0-9]+/ig, ""); - if (msg.length % 2 !== 0) - msg = "0" + msg; - for (var i = 0; i < msg.length; i += 2) - res.push(parseInt(msg[i] + msg[i + 1], 16)); - } else { - for (var i = 0; i < msg.length; i++) { - var c = msg.charCodeAt(i); - var hi = c >> 8; - var lo = c & 255; - if (hi) - res.push(hi, lo); - else - res.push(lo); - } - } - return res; - } - utils.toArray = toArray2; - function zero2(word) { - if (word.length === 1) - return "0" + word; - else - return word; - } - utils.zero2 = zero2; - function toHex(msg) { - var res = ""; - for (var i = 0; i < msg.length; i++) - res += zero2(msg[i].toString(16)); - return res; - } - utils.toHex = toHex; - utils.encode = function encode3(arr, enc) { - if (enc === "hex") - return toHex(arr); - else - return arr; - }; - } -}); - -// node_modules/elliptic/lib/elliptic/utils.js -var require_utils3 = __commonJS({ - "node_modules/elliptic/lib/elliptic/utils.js"(exports2) { - "use strict"; - var utils = exports2; - var BN = require_bn2(); - var minAssert = require_minimalistic_assert(); - var minUtils = require_utils2(); - utils.assert = minAssert; - utils.toArray = minUtils.toArray; - utils.zero2 = minUtils.zero2; - utils.toHex = minUtils.toHex; - utils.encode = minUtils.encode; - function getNAF(num, w, bits) { - var naf = new Array(Math.max(num.bitLength(), bits) + 1); - naf.fill(0); - var ws = 1 << w + 1; - var k = num.clone(); - for (var i = 0; i < naf.length; i++) { - var z; - var mod = k.andln(ws - 1); - if (k.isOdd()) { - if (mod > (ws >> 1) - 1) - z = (ws >> 1) - mod; - else - z = mod; - k.isubn(z); - } else { - z = 0; - } - naf[i] = z; - k.iushrn(1); - } - return naf; - } - utils.getNAF = getNAF; - function getJSF(k1, k2) { - var jsf = [ - [], - [] - ]; - k1 = k1.clone(); - k2 = k2.clone(); - var d1 = 0; - var d2 = 0; - var m8; - while (k1.cmpn(-d1) > 0 || k2.cmpn(-d2) > 0) { - var m14 = k1.andln(3) + d1 & 3; - var m24 = k2.andln(3) + d2 & 3; - if (m14 === 3) - m14 = -1; - if (m24 === 3) - m24 = -1; - var u1; - if ((m14 & 1) === 0) { - u1 = 0; - } else { - m8 = k1.andln(7) + d1 & 7; - if ((m8 === 3 || m8 === 5) && m24 === 2) - u1 = -m14; - else - u1 = m14; - } - jsf[0].push(u1); - var u2; - if ((m24 & 1) === 0) { - u2 = 0; - } else { - m8 = k2.andln(7) + d2 & 7; - if ((m8 === 3 || m8 === 5) && m14 === 2) - u2 = -m24; - else - u2 = m24; - } - jsf[1].push(u2); - if (2 * d1 === u1 + 1) - d1 = 1 - d1; - if (2 * d2 === u2 + 1) - d2 = 1 - d2; - k1.iushrn(1); - k2.iushrn(1); - } - return jsf; - } - utils.getJSF = getJSF; - function cachedProperty(obj, name, computer) { - var key = "_" + name; - obj.prototype[name] = function cachedProperty2() { - return this[key] !== void 0 ? this[key] : this[key] = computer.call(this); - }; - } - utils.cachedProperty = cachedProperty; - function parseBytes(bytes) { - return typeof bytes === "string" ? utils.toArray(bytes, "hex") : bytes; - } - utils.parseBytes = parseBytes; - function intFromLE(bytes) { - return new BN(bytes, "hex", "le"); - } - utils.intFromLE = intFromLE; - } -}); - -// node_modules/brorand/index.js -var require_brorand = __commonJS({ - "node_modules/brorand/index.js"(exports2, module2) { - "use strict"; - var r; - module2.exports = function rand(len) { - if (!r) - r = new Rand(null); - return r.generate(len); - }; - function Rand(rand) { - this.rand = rand; - } - module2.exports.Rand = Rand; - Rand.prototype.generate = function generate(len) { - return this._rand(len); - }; - Rand.prototype._rand = function _rand(n) { - if (this.rand.getBytes) - return this.rand.getBytes(n); - var res = new Uint8Array(n); - for (var i = 0; i < res.length; i++) - res[i] = this.rand.getByte(); - return res; - }; - if (typeof self === "object") { - if (self.crypto && self.crypto.getRandomValues) { - Rand.prototype._rand = function _rand(n) { - var arr = new Uint8Array(n); - self.crypto.getRandomValues(arr); - return arr; - }; - } else if (self.msCrypto && self.msCrypto.getRandomValues) { - Rand.prototype._rand = function _rand(n) { - var arr = new Uint8Array(n); - self.msCrypto.getRandomValues(arr); - return arr; - }; - } else if (typeof window === "object") { - Rand.prototype._rand = function() { - throw new Error("Not implemented yet"); - }; - } - } else { - try { - crypto = __nccwpck_require__(76982); - if (typeof crypto.randomBytes !== "function") - throw new Error("Not supported"); - Rand.prototype._rand = function _rand(n) { - return crypto.randomBytes(n); - }; - } catch (e) { - } - } - var crypto; - } -}); - -// node_modules/elliptic/lib/elliptic/curve/base.js -var require_base = __commonJS({ - "node_modules/elliptic/lib/elliptic/curve/base.js"(exports2, module2) { - "use strict"; - var BN = require_bn2(); - var utils = require_utils3(); - var getNAF = utils.getNAF; - var getJSF = utils.getJSF; - var assert = utils.assert; - function BaseCurve(type, conf) { - this.type = type; - this.p = new BN(conf.p, 16); - this.red = conf.prime ? BN.red(conf.prime) : BN.mont(this.p); - this.zero = new BN(0).toRed(this.red); - this.one = new BN(1).toRed(this.red); - this.two = new BN(2).toRed(this.red); - this.n = conf.n && new BN(conf.n, 16); - this.g = conf.g && this.pointFromJSON(conf.g, conf.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 adjustCount = this.n && this.p.div(this.n); - if (!adjustCount || adjustCount.cmpn(100) > 0) { - this.redN = null; - } else { - this._maxwellTrick = true; - this.redN = this.n.toRed(this.red); - } - } - module2.exports = BaseCurve; - BaseCurve.prototype.point = function point() { - throw new Error("Not implemented"); - }; - BaseCurve.prototype.validate = function validate() { - throw new Error("Not implemented"); - }; - BaseCurve.prototype._fixedNafMul = function _fixedNafMul(p, k) { - assert(p.precomputed); - var doubles = p._getDoubles(); - var naf = getNAF(k, 1, this._bitLength); - var I = (1 << doubles.step + 1) - (doubles.step % 2 === 0 ? 2 : 1); - I /= 3; - var repr = []; - var j; - var nafW; - for (j = 0; j < naf.length; j += doubles.step) { - nafW = 0; - for (var l = j + doubles.step - 1; l >= j; l--) - nafW = (nafW << 1) + naf[l]; - repr.push(nafW); - } - var a = this.jpoint(null, null, null); - var b = this.jpoint(null, null, null); - for (var i = I; i > 0; i--) { - for (j = 0; j < repr.length; j++) { - nafW = repr[j]; - if (nafW === i) - b = b.mixedAdd(doubles.points[j]); - else if (nafW === -i) - b = b.mixedAdd(doubles.points[j].neg()); - } - a = a.add(b); - } - return a.toP(); - }; - BaseCurve.prototype._wnafMul = function _wnafMul(p, k) { - var w = 4; - var nafPoints = p._getNAFPoints(w); - w = nafPoints.wnd; - var wnd = nafPoints.points; - var naf = getNAF(k, w, this._bitLength); - var acc = this.jpoint(null, null, null); - for (var i = naf.length - 1; i >= 0; i--) { - for (var l = 0; i >= 0 && naf[i] === 0; i--) - l++; - if (i >= 0) - l++; - acc = acc.dblp(l); - if (i < 0) - break; - var z = naf[i]; - assert(z !== 0); - if (p.type === "affine") { - if (z > 0) - acc = acc.mixedAdd(wnd[z - 1 >> 1]); - else - acc = acc.mixedAdd(wnd[-z - 1 >> 1].neg()); - } else { - if (z > 0) - acc = acc.add(wnd[z - 1 >> 1]); - else - acc = acc.add(wnd[-z - 1 >> 1].neg()); - } - } - return p.type === "affine" ? acc.toP() : acc; - }; - BaseCurve.prototype._wnafMulAdd = function _wnafMulAdd(defW, points, coeffs, len, jacobianResult) { - var wndWidth = this._wnafT1; - var wnd = this._wnafT2; - var naf = this._wnafT3; - var max = 0; - var i; - var j; - var p; - for (i = 0; i < len; i++) { - p = points[i]; - var nafPoints = p._getNAFPoints(defW); - wndWidth[i] = nafPoints.wnd; - wnd[i] = nafPoints.points; - } - for (i = len - 1; i >= 1; i -= 2) { - var a = i - 1; - var b = i; - if (wndWidth[a] !== 1 || wndWidth[b] !== 1) { - naf[a] = getNAF(coeffs[a], wndWidth[a], this._bitLength); - naf[b] = getNAF(coeffs[b], wndWidth[b], this._bitLength); - max = Math.max(naf[a].length, max); - max = Math.max(naf[b].length, max); - continue; - } - var comb = [ - points[a], - /* 1 */ - null, - /* 3 */ - null, - /* 5 */ - points[b] - /* 7 */ - ]; - if (points[a].y.cmp(points[b].y) === 0) { - comb[1] = points[a].add(points[b]); - comb[2] = points[a].toJ().mixedAdd(points[b].neg()); - } else if (points[a].y.cmp(points[b].y.redNeg()) === 0) { - comb[1] = points[a].toJ().mixedAdd(points[b]); - comb[2] = points[a].add(points[b].neg()); - } else { - comb[1] = points[a].toJ().mixedAdd(points[b]); - comb[2] = points[a].toJ().mixedAdd(points[b].neg()); - } - var index = [ - -3, - /* -1 -1 */ - -1, - /* -1 0 */ - -5, - /* -1 1 */ - -7, - /* 0 -1 */ - 0, - /* 0 0 */ - 7, - /* 0 1 */ - 5, - /* 1 -1 */ - 1, - /* 1 0 */ - 3 - /* 1 1 */ - ]; - var jsf = getJSF(coeffs[a], coeffs[b]); - max = Math.max(jsf[0].length, max); - naf[a] = new Array(max); - naf[b] = new Array(max); - for (j = 0; j < max; j++) { - var ja = jsf[0][j] | 0; - var jb = jsf[1][j] | 0; - naf[a][j] = index[(ja + 1) * 3 + (jb + 1)]; - naf[b][j] = 0; - wnd[a] = comb; - } - } - var acc = this.jpoint(null, null, null); - var tmp = this._wnafT4; - for (i = max; i >= 0; i--) { - var k = 0; - while (i >= 0) { - var zero = true; - for (j = 0; j < len; j++) { - tmp[j] = naf[j][i] | 0; - if (tmp[j] !== 0) - zero = false; - } - if (!zero) - break; - k++; - i--; - } - if (i >= 0) - k++; - acc = acc.dblp(k); - if (i < 0) - break; - for (j = 0; j < len; j++) { - var z = tmp[j]; - p; - if (z === 0) - continue; - else if (z > 0) - p = wnd[j][z - 1 >> 1]; - else if (z < 0) - p = wnd[j][-z - 1 >> 1].neg(); - if (p.type === "affine") - acc = acc.mixedAdd(p); - else - acc = acc.add(p); - } - } - for (i = 0; i < len; i++) - wnd[i] = null; - if (jacobianResult) - return acc; - else - return acc.toP(); - }; - function BasePoint(curve, type) { - this.curve = curve; - this.type = type; - this.precomputed = null; - } - BaseCurve.BasePoint = BasePoint; - BasePoint.prototype.eq = function eq() { - throw new Error("Not implemented"); - }; - BasePoint.prototype.validate = function validate() { - return this.curve.validate(this); - }; - BaseCurve.prototype.decodePoint = function decodePoint(bytes, enc) { - bytes = utils.toArray(bytes, enc); - var len = this.p.byteLength(); - if ((bytes[0] === 4 || bytes[0] === 6 || bytes[0] === 7) && bytes.length - 1 === 2 * len) { - if (bytes[0] === 6) - assert(bytes[bytes.length - 1] % 2 === 0); - else if (bytes[0] === 7) - assert(bytes[bytes.length - 1] % 2 === 1); - var res = this.point( - bytes.slice(1, 1 + len), - bytes.slice(1 + len, 1 + 2 * len) - ); - return res; - } else if ((bytes[0] === 2 || bytes[0] === 3) && bytes.length - 1 === len) { - return this.pointFromX(bytes.slice(1, 1 + len), bytes[0] === 3); - } - throw new Error("Unknown point format"); - }; - BasePoint.prototype.encodeCompressed = function encodeCompressed(enc) { - return this.encode(enc, true); - }; - BasePoint.prototype._encode = function _encode(compact) { - var len = this.curve.p.byteLength(); - var x = this.getX().toArray("be", len); - if (compact) - return [this.getY().isEven() ? 2 : 3].concat(x); - return [4].concat(x, this.getY().toArray("be", len)); - }; - BasePoint.prototype.encode = function encode3(enc, compact) { - return utils.encode(this._encode(compact), enc); - }; - BasePoint.prototype.precompute = function precompute(power) { - if (this.precomputed) - return this; - var precomputed = { - doubles: null, - naf: null, - beta: null - }; - precomputed.naf = this._getNAFPoints(8); - precomputed.doubles = this._getDoubles(4, power); - precomputed.beta = this._getBeta(); - this.precomputed = precomputed; - return this; - }; - BasePoint.prototype._hasDoubles = function _hasDoubles(k) { - if (!this.precomputed) - return false; - var doubles = this.precomputed.doubles; - if (!doubles) - return false; - return doubles.points.length >= Math.ceil((k.bitLength() + 1) / doubles.step); - }; - BasePoint.prototype._getDoubles = function _getDoubles(step, power) { - if (this.precomputed && this.precomputed.doubles) - return this.precomputed.doubles; - var doubles = [this]; - var acc = this; - for (var i = 0; i < power; i += step) { - for (var j = 0; j < step; j++) - acc = acc.dbl(); - doubles.push(acc); - } - return { - step, - points: doubles - }; - }; - BasePoint.prototype._getNAFPoints = function _getNAFPoints(wnd) { - if (this.precomputed && this.precomputed.naf) - return this.precomputed.naf; - var res = [this]; - var max = (1 << wnd) - 1; - var dbl = max === 1 ? null : this.dbl(); - for (var i = 1; i < max; i++) - res[i] = res[i - 1].add(dbl); - return { - wnd, - points: res - }; - }; - BasePoint.prototype._getBeta = function _getBeta() { - return null; - }; - BasePoint.prototype.dblp = function dblp(k) { - var r = this; - for (var i = 0; i < k; i++) - r = r.dbl(); - return r; - }; - } -}); - -// node_modules/elliptic/lib/elliptic/curve/short.js -var require_short = __commonJS({ - "node_modules/elliptic/lib/elliptic/curve/short.js"(exports2, module2) { - "use strict"; - var utils = require_utils3(); - var BN = require_bn2(); - var inherits2 = require_inherits(); - var Base = require_base(); - var assert = utils.assert; - function ShortCurve(conf) { - Base.call(this, "short", conf); - this.a = new BN(conf.a, 16).toRed(this.red); - this.b = new BN(conf.b, 16).toRed(this.red); - this.tinv = this.two.redInvm(); - this.zeroA = this.a.fromRed().cmpn(0) === 0; - this.threeA = this.a.fromRed().sub(this.p).cmpn(-3) === 0; - this.endo = this._getEndomorphism(conf); - this._endoWnafT1 = new Array(4); - this._endoWnafT2 = new Array(4); - } - inherits2(ShortCurve, Base); - module2.exports = ShortCurve; - ShortCurve.prototype._getEndomorphism = function _getEndomorphism(conf) { - if (!this.zeroA || !this.g || !this.n || this.p.modn(3) !== 1) - return; - var beta; - var lambda; - if (conf.beta) { - beta = new BN(conf.beta, 16).toRed(this.red); - } else { - var betas = this._getEndoRoots(this.p); - beta = betas[0].cmp(betas[1]) < 0 ? betas[0] : betas[1]; - beta = beta.toRed(this.red); - } - if (conf.lambda) { - lambda = new BN(conf.lambda, 16); - } else { - var lambdas = this._getEndoRoots(this.n); - if (this.g.mul(lambdas[0]).x.cmp(this.g.x.redMul(beta)) === 0) { - lambda = lambdas[0]; - } else { - lambda = lambdas[1]; - assert(this.g.mul(lambda).x.cmp(this.g.x.redMul(beta)) === 0); - } - } - var basis; - if (conf.basis) { - basis = conf.basis.map(function(vec) { - return { - a: new BN(vec.a, 16), - b: new BN(vec.b, 16) - }; - }); - } else { - basis = this._getEndoBasis(lambda); - } - return { - beta, - lambda, - basis - }; - }; - ShortCurve.prototype._getEndoRoots = function _getEndoRoots(num) { - var red = num === this.p ? this.red : BN.mont(num); - var tinv = new BN(2).toRed(red).redInvm(); - var ntinv = tinv.redNeg(); - var s = new BN(3).toRed(red).redNeg().redSqrt().redMul(tinv); - var l1 = ntinv.redAdd(s).fromRed(); - var l2 = ntinv.redSub(s).fromRed(); - return [l1, l2]; - }; - ShortCurve.prototype._getEndoBasis = function _getEndoBasis(lambda) { - var aprxSqrt = this.n.ushrn(Math.floor(this.n.bitLength() / 2)); - var u = lambda; - var v = this.n.clone(); - var x1 = new BN(1); - var y1 = new BN(0); - var x2 = new BN(0); - var y2 = new BN(1); - var a0; - var b0; - var a1; - var b1; - var a2; - var b2; - var prevR; - var i = 0; - var r; - var x; - while (u.cmpn(0) !== 0) { - var q = v.div(u); - r = v.sub(q.mul(u)); - x = x2.sub(q.mul(x1)); - var y = y2.sub(q.mul(y1)); - if (!a1 && r.cmp(aprxSqrt) < 0) { - a0 = prevR.neg(); - b0 = x1; - a1 = r.neg(); - b1 = x; - } else if (a1 && ++i === 2) { - break; - } - prevR = r; - v = u; - u = r; - x2 = x1; - x1 = x; - y2 = y1; - y1 = y; - } - a2 = r.neg(); - b2 = x; - var len1 = a1.sqr().add(b1.sqr()); - var len2 = a2.sqr().add(b2.sqr()); - if (len2.cmp(len1) >= 0) { - a2 = a0; - b2 = b0; - } - if (a1.negative) { - a1 = a1.neg(); - b1 = b1.neg(); - } - if (a2.negative) { - a2 = a2.neg(); - b2 = b2.neg(); - } - return [ - { a: a1, b: b1 }, - { a: a2, b: b2 } - ]; - }; - ShortCurve.prototype._endoSplit = function _endoSplit(k) { - var basis = this.endo.basis; - var v1 = basis[0]; - var v2 = basis[1]; - var c1 = v2.b.mul(k).divRound(this.n); - var c2 = v1.b.neg().mul(k).divRound(this.n); - var p1 = c1.mul(v1.a); - var p2 = c2.mul(v2.a); - var q1 = c1.mul(v1.b); - var q2 = c2.mul(v2.b); - var k1 = k.sub(p1).sub(p2); - var k2 = q1.add(q2).neg(); - return { k1, k2 }; - }; - ShortCurve.prototype.pointFromX = function pointFromX(x, odd) { - x = new BN(x, 16); - if (!x.red) - x = x.toRed(this.red); - var y2 = x.redSqr().redMul(x).redIAdd(x.redMul(this.a)).redIAdd(this.b); - var y = y2.redSqrt(); - if (y.redSqr().redSub(y2).cmp(this.zero) !== 0) - throw new Error("invalid point"); - var isOdd = y.fromRed().isOdd(); - if (odd && !isOdd || !odd && isOdd) - y = y.redNeg(); - return this.point(x, y); - }; - ShortCurve.prototype.validate = function validate(point) { - if (point.inf) - return true; - var x = point.x; - var y = point.y; - var ax = this.a.redMul(x); - var rhs = x.redSqr().redMul(x).redIAdd(ax).redIAdd(this.b); - return y.redSqr().redISub(rhs).cmpn(0) === 0; - }; - ShortCurve.prototype._endoWnafMulAdd = function _endoWnafMulAdd(points, coeffs, jacobianResult) { - var npoints = this._endoWnafT1; - var ncoeffs = this._endoWnafT2; - for (var i = 0; i < points.length; i++) { - var split = this._endoSplit(coeffs[i]); - var p = points[i]; - var beta = p._getBeta(); - if (split.k1.negative) { - split.k1.ineg(); - p = p.neg(true); - } - if (split.k2.negative) { - split.k2.ineg(); - beta = beta.neg(true); - } - npoints[i * 2] = p; - npoints[i * 2 + 1] = beta; - ncoeffs[i * 2] = split.k1; - ncoeffs[i * 2 + 1] = split.k2; - } - var res = this._wnafMulAdd(1, npoints, ncoeffs, i * 2, jacobianResult); - for (var j = 0; j < i * 2; j++) { - npoints[j] = null; - ncoeffs[j] = null; - } - return res; - }; - function Point(curve, x, y, isRed) { - Base.BasePoint.call(this, curve, "affine"); - if (x === null && y === null) { - this.x = null; - this.y = null; - this.inf = true; - } else { - this.x = new BN(x, 16); - this.y = new BN(y, 16); - if (isRed) { - this.x.forceRed(this.curve.red); - this.y.forceRed(this.curve.red); - } - if (!this.x.red) - this.x = this.x.toRed(this.curve.red); - if (!this.y.red) - this.y = this.y.toRed(this.curve.red); - this.inf = false; - } - } - inherits2(Point, Base.BasePoint); - ShortCurve.prototype.point = function point(x, y, isRed) { - return new Point(this, x, y, isRed); - }; - ShortCurve.prototype.pointFromJSON = function pointFromJSON(obj, red) { - return Point.fromJSON(this, obj, red); - }; - Point.prototype._getBeta = function _getBeta() { - if (!this.curve.endo) - return; - var pre = this.precomputed; - if (pre && pre.beta) - return pre.beta; - var beta = this.curve.point(this.x.redMul(this.curve.endo.beta), this.y); - if (pre) { - var curve = this.curve; - var endoMul = function(p) { - return curve.point(p.x.redMul(curve.endo.beta), p.y); - }; - pre.beta = beta; - beta.precomputed = { - beta: null, - naf: pre.naf && { - wnd: pre.naf.wnd, - points: pre.naf.points.map(endoMul) - }, - doubles: pre.doubles && { - step: pre.doubles.step, - points: pre.doubles.points.map(endoMul) - } - }; - } - return beta; - }; - Point.prototype.toJSON = function toJSON2() { - if (!this.precomputed) - return [this.x, this.y]; - return [this.x, this.y, this.precomputed && { - doubles: this.precomputed.doubles && { - step: this.precomputed.doubles.step, - points: this.precomputed.doubles.points.slice(1) - }, - naf: this.precomputed.naf && { - wnd: this.precomputed.naf.wnd, - points: this.precomputed.naf.points.slice(1) - } - }]; - }; - Point.fromJSON = function fromJSON(curve, obj, red) { - if (typeof obj === "string") - obj = JSON.parse(obj); - var res = curve.point(obj[0], obj[1], red); - if (!obj[2]) - return res; - function obj2point(obj2) { - return curve.point(obj2[0], obj2[1], red); - } - var pre = obj[2]; - res.precomputed = { - beta: null, - doubles: pre.doubles && { - step: pre.doubles.step, - points: [res].concat(pre.doubles.points.map(obj2point)) - }, - naf: pre.naf && { - wnd: pre.naf.wnd, - points: [res].concat(pre.naf.points.map(obj2point)) - } - }; - return res; - }; - Point.prototype.inspect = function inspect() { - if (this.isInfinity()) - return ""; - return ""; - }; - Point.prototype.isInfinity = function isInfinity() { - return this.inf; - }; - Point.prototype.add = function add(p) { - if (this.inf) - return p; - if (p.inf) - return this; - if (this.eq(p)) - return this.dbl(); - if (this.neg().eq(p)) - return this.curve.point(null, null); - if (this.x.cmp(p.x) === 0) - return this.curve.point(null, null); - var c = this.y.redSub(p.y); - if (c.cmpn(0) !== 0) - c = c.redMul(this.x.redSub(p.x).redInvm()); - var nx = c.redSqr().redISub(this.x).redISub(p.x); - var ny = c.redMul(this.x.redSub(nx)).redISub(this.y); - return this.curve.point(nx, ny); - }; - Point.prototype.dbl = function dbl() { - if (this.inf) - return this; - var ys1 = this.y.redAdd(this.y); - if (ys1.cmpn(0) === 0) - return this.curve.point(null, null); - var a = this.curve.a; - var x2 = this.x.redSqr(); - var dyinv = ys1.redInvm(); - var c = x2.redAdd(x2).redIAdd(x2).redIAdd(a).redMul(dyinv); - var nx = c.redSqr().redISub(this.x.redAdd(this.x)); - var ny = c.redMul(this.x.redSub(nx)).redISub(this.y); - return this.curve.point(nx, ny); - }; - Point.prototype.getX = function getX() { - return this.x.fromRed(); - }; - Point.prototype.getY = function getY() { - return this.y.fromRed(); - }; - Point.prototype.mul = function mul(k) { - k = new BN(k, 16); - if (this.isInfinity()) - return this; - else if (this._hasDoubles(k)) - return this.curve._fixedNafMul(this, k); - else if (this.curve.endo) - return this.curve._endoWnafMulAdd([this], [k]); - else - return this.curve._wnafMul(this, k); - }; - Point.prototype.mulAdd = function mulAdd(k1, p2, k2) { - var points = [this, p2]; - var coeffs = [k1, k2]; - if (this.curve.endo) - return this.curve._endoWnafMulAdd(points, coeffs); - else - return this.curve._wnafMulAdd(1, points, coeffs, 2); - }; - Point.prototype.jmulAdd = function jmulAdd(k1, p2, k2) { - var points = [this, p2]; - var coeffs = [k1, k2]; - if (this.curve.endo) - return this.curve._endoWnafMulAdd(points, coeffs, true); - else - return this.curve._wnafMulAdd(1, points, coeffs, 2, true); - }; - Point.prototype.eq = function eq(p) { - return this === p || this.inf === p.inf && (this.inf || this.x.cmp(p.x) === 0 && this.y.cmp(p.y) === 0); - }; - Point.prototype.neg = function neg(_precompute) { - if (this.inf) - return this; - var res = this.curve.point(this.x, this.y.redNeg()); - if (_precompute && this.precomputed) { - var pre = this.precomputed; - var negate = function(p) { - return p.neg(); - }; - res.precomputed = { - naf: pre.naf && { - wnd: pre.naf.wnd, - points: pre.naf.points.map(negate) - }, - doubles: pre.doubles && { - step: pre.doubles.step, - points: pre.doubles.points.map(negate) - } - }; - } - return res; - }; - Point.prototype.toJ = function toJ() { - if (this.inf) - return this.curve.jpoint(null, null, null); - var res = this.curve.jpoint(this.x, this.y, this.curve.one); - return res; - }; - function JPoint(curve, x, y, z) { - Base.BasePoint.call(this, curve, "jacobian"); - if (x === null && y === null && z === null) { - this.x = this.curve.one; - this.y = this.curve.one; - this.z = new BN(0); - } else { - this.x = new BN(x, 16); - this.y = new BN(y, 16); - this.z = new BN(z, 16); - } - if (!this.x.red) - this.x = this.x.toRed(this.curve.red); - if (!this.y.red) - this.y = this.y.toRed(this.curve.red); - if (!this.z.red) - this.z = this.z.toRed(this.curve.red); - this.zOne = this.z === this.curve.one; - } - inherits2(JPoint, Base.BasePoint); - ShortCurve.prototype.jpoint = function jpoint(x, y, z) { - return new JPoint(this, x, y, z); - }; - JPoint.prototype.toP = function toP() { - if (this.isInfinity()) - return this.curve.point(null, null); - var zinv = this.z.redInvm(); - var zinv2 = zinv.redSqr(); - var ax = this.x.redMul(zinv2); - var ay = this.y.redMul(zinv2).redMul(zinv); - return this.curve.point(ax, ay); - }; - JPoint.prototype.neg = function neg() { - return this.curve.jpoint(this.x, this.y.redNeg(), this.z); - }; - JPoint.prototype.add = function add(p) { - if (this.isInfinity()) - return p; - if (p.isInfinity()) - return this; - var pz2 = p.z.redSqr(); - var z2 = this.z.redSqr(); - var u1 = this.x.redMul(pz2); - var u2 = p.x.redMul(z2); - var s1 = this.y.redMul(pz2.redMul(p.z)); - var s2 = p.y.redMul(z2.redMul(this.z)); - var h = u1.redSub(u2); - var r = s1.redSub(s2); - if (h.cmpn(0) === 0) { - if (r.cmpn(0) !== 0) - return this.curve.jpoint(null, null, null); - else - return this.dbl(); - } - var h2 = h.redSqr(); - var h3 = h2.redMul(h); - var v = u1.redMul(h2); - var nx = r.redSqr().redIAdd(h3).redISub(v).redISub(v); - var ny = r.redMul(v.redISub(nx)).redISub(s1.redMul(h3)); - var nz = this.z.redMul(p.z).redMul(h); - return this.curve.jpoint(nx, ny, nz); - }; - JPoint.prototype.mixedAdd = function mixedAdd(p) { - if (this.isInfinity()) - return p.toJ(); - if (p.isInfinity()) - return this; - var z2 = this.z.redSqr(); - var u1 = this.x; - var u2 = p.x.redMul(z2); - var s1 = this.y; - var s2 = p.y.redMul(z2).redMul(this.z); - var h = u1.redSub(u2); - var r = s1.redSub(s2); - if (h.cmpn(0) === 0) { - if (r.cmpn(0) !== 0) - return this.curve.jpoint(null, null, null); - else - return this.dbl(); - } - var h2 = h.redSqr(); - var h3 = h2.redMul(h); - var v = u1.redMul(h2); - var nx = r.redSqr().redIAdd(h3).redISub(v).redISub(v); - var ny = r.redMul(v.redISub(nx)).redISub(s1.redMul(h3)); - var nz = this.z.redMul(h); - return this.curve.jpoint(nx, ny, nz); - }; - JPoint.prototype.dblp = function dblp(pow) { - if (pow === 0) - return this; - if (this.isInfinity()) - return this; - if (!pow) - return this.dbl(); - var i; - if (this.curve.zeroA || this.curve.threeA) { - var r = this; - for (i = 0; i < pow; i++) - r = r.dbl(); - return r; - } - var a = this.curve.a; - var tinv = this.curve.tinv; - var jx = this.x; - var jy = this.y; - var jz = this.z; - var jz4 = jz.redSqr().redSqr(); - var jyd = jy.redAdd(jy); - for (i = 0; i < pow; i++) { - var jx2 = jx.redSqr(); - var jyd2 = jyd.redSqr(); - var jyd4 = jyd2.redSqr(); - var c = jx2.redAdd(jx2).redIAdd(jx2).redIAdd(a.redMul(jz4)); - var t1 = jx.redMul(jyd2); - var nx = c.redSqr().redISub(t1.redAdd(t1)); - var t2 = t1.redISub(nx); - var dny = c.redMul(t2); - dny = dny.redIAdd(dny).redISub(jyd4); - var nz = jyd.redMul(jz); - if (i + 1 < pow) - jz4 = jz4.redMul(jyd4); - jx = nx; - jz = nz; - jyd = dny; - } - return this.curve.jpoint(jx, jyd.redMul(tinv), jz); - }; - JPoint.prototype.dbl = function dbl() { - if (this.isInfinity()) - return this; - if (this.curve.zeroA) - return this._zeroDbl(); - else if (this.curve.threeA) - return this._threeDbl(); - else - return this._dbl(); - }; - JPoint.prototype._zeroDbl = function _zeroDbl() { - var nx; - var ny; - var nz; - if (this.zOne) { - var xx = this.x.redSqr(); - var yy = this.y.redSqr(); - var yyyy = yy.redSqr(); - var s = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy); - s = s.redIAdd(s); - var m = xx.redAdd(xx).redIAdd(xx); - var t = m.redSqr().redISub(s).redISub(s); - var yyyy8 = yyyy.redIAdd(yyyy); - yyyy8 = yyyy8.redIAdd(yyyy8); - yyyy8 = yyyy8.redIAdd(yyyy8); - nx = t; - ny = m.redMul(s.redISub(t)).redISub(yyyy8); - nz = this.y.redAdd(this.y); - } else { - var a = this.x.redSqr(); - var b = this.y.redSqr(); - var c = b.redSqr(); - var d = this.x.redAdd(b).redSqr().redISub(a).redISub(c); - d = d.redIAdd(d); - var e = a.redAdd(a).redIAdd(a); - var f = e.redSqr(); - var c8 = c.redIAdd(c); - c8 = c8.redIAdd(c8); - c8 = c8.redIAdd(c8); - nx = f.redISub(d).redISub(d); - ny = e.redMul(d.redISub(nx)).redISub(c8); - nz = this.y.redMul(this.z); - nz = nz.redIAdd(nz); - } - return this.curve.jpoint(nx, ny, nz); - }; - JPoint.prototype._threeDbl = function _threeDbl() { - var nx; - var ny; - var nz; - if (this.zOne) { - var xx = this.x.redSqr(); - var yy = this.y.redSqr(); - var yyyy = yy.redSqr(); - var s = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy); - s = s.redIAdd(s); - var m = xx.redAdd(xx).redIAdd(xx).redIAdd(this.curve.a); - var t = m.redSqr().redISub(s).redISub(s); - nx = t; - var yyyy8 = yyyy.redIAdd(yyyy); - yyyy8 = yyyy8.redIAdd(yyyy8); - yyyy8 = yyyy8.redIAdd(yyyy8); - ny = m.redMul(s.redISub(t)).redISub(yyyy8); - nz = this.y.redAdd(this.y); - } else { - var delta = this.z.redSqr(); - var gamma = this.y.redSqr(); - var beta = this.x.redMul(gamma); - var alpha = this.x.redSub(delta).redMul(this.x.redAdd(delta)); - alpha = alpha.redAdd(alpha).redIAdd(alpha); - var beta4 = beta.redIAdd(beta); - beta4 = beta4.redIAdd(beta4); - var beta8 = beta4.redAdd(beta4); - nx = alpha.redSqr().redISub(beta8); - nz = this.y.redAdd(this.z).redSqr().redISub(gamma).redISub(delta); - var ggamma8 = gamma.redSqr(); - ggamma8 = ggamma8.redIAdd(ggamma8); - ggamma8 = ggamma8.redIAdd(ggamma8); - ggamma8 = ggamma8.redIAdd(ggamma8); - ny = alpha.redMul(beta4.redISub(nx)).redISub(ggamma8); - } - return this.curve.jpoint(nx, ny, nz); - }; - JPoint.prototype._dbl = function _dbl() { - var a = this.curve.a; - var jx = this.x; - var jy = this.y; - var jz = this.z; - var jz4 = jz.redSqr().redSqr(); - var jx2 = jx.redSqr(); - var jy2 = jy.redSqr(); - var c = jx2.redAdd(jx2).redIAdd(jx2).redIAdd(a.redMul(jz4)); - var jxd4 = jx.redAdd(jx); - jxd4 = jxd4.redIAdd(jxd4); - var t1 = jxd4.redMul(jy2); - var nx = c.redSqr().redISub(t1.redAdd(t1)); - var t2 = t1.redISub(nx); - var jyd8 = jy2.redSqr(); - jyd8 = jyd8.redIAdd(jyd8); - jyd8 = jyd8.redIAdd(jyd8); - jyd8 = jyd8.redIAdd(jyd8); - var ny = c.redMul(t2).redISub(jyd8); - var nz = jy.redAdd(jy).redMul(jz); - return this.curve.jpoint(nx, ny, nz); - }; - JPoint.prototype.trpl = function trpl() { - if (!this.curve.zeroA) - return this.dbl().add(this); - var xx = this.x.redSqr(); - var yy = this.y.redSqr(); - var zz = this.z.redSqr(); - var yyyy = yy.redSqr(); - var m = xx.redAdd(xx).redIAdd(xx); - var mm = m.redSqr(); - var e = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy); - e = e.redIAdd(e); - e = e.redAdd(e).redIAdd(e); - e = e.redISub(mm); - var ee = e.redSqr(); - var t = yyyy.redIAdd(yyyy); - t = t.redIAdd(t); - t = t.redIAdd(t); - t = t.redIAdd(t); - var u = m.redIAdd(e).redSqr().redISub(mm).redISub(ee).redISub(t); - var yyu4 = yy.redMul(u); - yyu4 = yyu4.redIAdd(yyu4); - yyu4 = yyu4.redIAdd(yyu4); - var nx = this.x.redMul(ee).redISub(yyu4); - nx = nx.redIAdd(nx); - nx = nx.redIAdd(nx); - var ny = this.y.redMul(u.redMul(t.redISub(u)).redISub(e.redMul(ee))); - ny = ny.redIAdd(ny); - ny = ny.redIAdd(ny); - ny = ny.redIAdd(ny); - var nz = this.z.redAdd(e).redSqr().redISub(zz).redISub(ee); - return this.curve.jpoint(nx, ny, nz); - }; - JPoint.prototype.mul = function mul(k, kbase) { - k = new BN(k, kbase); - return this.curve._wnafMul(this, k); - }; - JPoint.prototype.eq = function eq(p) { - if (p.type === "affine") - return this.eq(p.toJ()); - if (this === p) - return true; - var z2 = this.z.redSqr(); - var pz2 = p.z.redSqr(); - if (this.x.redMul(pz2).redISub(p.x.redMul(z2)).cmpn(0) !== 0) - return false; - var z3 = z2.redMul(this.z); - var pz3 = pz2.redMul(p.z); - return this.y.redMul(pz3).redISub(p.y.redMul(z3)).cmpn(0) === 0; - }; - JPoint.prototype.eqXToP = function eqXToP(x) { - var zs = this.z.redSqr(); - var rx = x.toRed(this.curve.red).redMul(zs); - if (this.x.cmp(rx) === 0) - return true; - var xc = x.clone(); - var t = this.curve.redN.redMul(zs); - for (; ; ) { - xc.iadd(this.curve.n); - if (xc.cmp(this.curve.p) >= 0) - return false; - rx.redIAdd(t); - if (this.x.cmp(rx) === 0) - return true; - } - }; - JPoint.prototype.inspect = function inspect() { - if (this.isInfinity()) - return ""; - return ""; - }; - JPoint.prototype.isInfinity = function isInfinity() { - return this.z.cmpn(0) === 0; - }; - } -}); - -// node_modules/elliptic/lib/elliptic/curve/mont.js -var require_mont = __commonJS({ - "node_modules/elliptic/lib/elliptic/curve/mont.js"(exports2, module2) { - "use strict"; - var BN = require_bn2(); - var inherits2 = require_inherits(); - var Base = require_base(); - var utils = require_utils3(); - function MontCurve(conf) { - Base.call(this, "mont", conf); - this.a = new BN(conf.a, 16).toRed(this.red); - this.b = new BN(conf.b, 16).toRed(this.red); - this.i4 = new BN(4).toRed(this.red).redInvm(); - this.two = new BN(2).toRed(this.red); - this.a24 = this.i4.redMul(this.a.redAdd(this.two)); - } - inherits2(MontCurve, Base); - module2.exports = MontCurve; - MontCurve.prototype.validate = function validate(point) { - var x = point.normalize().x; - var x2 = x.redSqr(); - var rhs = x2.redMul(x).redAdd(x2.redMul(this.a)).redAdd(x); - var y = rhs.redSqrt(); - return y.redSqr().cmp(rhs) === 0; - }; - function Point(curve, x, z) { - Base.BasePoint.call(this, curve, "projective"); - if (x === null && z === null) { - this.x = this.curve.one; - this.z = this.curve.zero; - } else { - this.x = new BN(x, 16); - this.z = new BN(z, 16); - if (!this.x.red) - this.x = this.x.toRed(this.curve.red); - if (!this.z.red) - this.z = this.z.toRed(this.curve.red); - } - } - inherits2(Point, Base.BasePoint); - MontCurve.prototype.decodePoint = function decodePoint(bytes, enc) { - return this.point(utils.toArray(bytes, enc), 1); - }; - MontCurve.prototype.point = function point(x, z) { - return new Point(this, x, z); - }; - MontCurve.prototype.pointFromJSON = function pointFromJSON(obj) { - return Point.fromJSON(this, obj); - }; - Point.prototype.precompute = function precompute() { - }; - Point.prototype._encode = function _encode() { - return this.getX().toArray("be", this.curve.p.byteLength()); - }; - Point.fromJSON = function fromJSON(curve, obj) { - return new Point(curve, obj[0], obj[1] || curve.one); - }; - Point.prototype.inspect = function inspect() { - if (this.isInfinity()) - return ""; - return ""; - }; - Point.prototype.isInfinity = function isInfinity() { - return this.z.cmpn(0) === 0; - }; - Point.prototype.dbl = function dbl() { - var a = this.x.redAdd(this.z); - var aa = a.redSqr(); - var b = this.x.redSub(this.z); - var bb = b.redSqr(); - var c = aa.redSub(bb); - var nx = aa.redMul(bb); - var nz = c.redMul(bb.redAdd(this.curve.a24.redMul(c))); - return this.curve.point(nx, nz); - }; - Point.prototype.add = function add() { - throw new Error("Not supported on Montgomery curve"); - }; - Point.prototype.diffAdd = function diffAdd(p, diff) { - var a = this.x.redAdd(this.z); - var b = this.x.redSub(this.z); - var c = p.x.redAdd(p.z); - var d = p.x.redSub(p.z); - var da = d.redMul(a); - var cb = c.redMul(b); - var nx = diff.z.redMul(da.redAdd(cb).redSqr()); - var nz = diff.x.redMul(da.redISub(cb).redSqr()); - return this.curve.point(nx, nz); - }; - Point.prototype.mul = function mul(k) { - var t = k.clone(); - var a = this; - var b = this.curve.point(null, null); - var c = this; - for (var bits = []; t.cmpn(0) !== 0; t.iushrn(1)) - bits.push(t.andln(1)); - for (var i = bits.length - 1; i >= 0; i--) { - if (bits[i] === 0) { - a = a.diffAdd(b, c); - b = b.dbl(); - } else { - b = a.diffAdd(b, c); - a = a.dbl(); - } - } - return b; - }; - Point.prototype.mulAdd = function mulAdd() { - throw new Error("Not supported on Montgomery curve"); - }; - Point.prototype.jumlAdd = function jumlAdd() { - throw new Error("Not supported on Montgomery curve"); - }; - Point.prototype.eq = function eq(other) { - return this.getX().cmp(other.getX()) === 0; - }; - Point.prototype.normalize = function normalize() { - this.x = this.x.redMul(this.z.redInvm()); - this.z = this.curve.one; - return this; - }; - Point.prototype.getX = function getX() { - this.normalize(); - return this.x.fromRed(); - }; - } -}); - -// node_modules/elliptic/lib/elliptic/curve/edwards.js -var require_edwards = __commonJS({ - "node_modules/elliptic/lib/elliptic/curve/edwards.js"(exports2, module2) { - "use strict"; - var utils = require_utils3(); - var BN = require_bn2(); - var inherits2 = require_inherits(); - var Base = require_base(); - var assert = utils.assert; - function EdwardsCurve(conf) { - this.twisted = (conf.a | 0) !== 1; - this.mOneA = this.twisted && (conf.a | 0) === -1; - this.extended = this.mOneA; - Base.call(this, "edwards", conf); - this.a = new BN(conf.a, 16).umod(this.red.m); - this.a = this.a.toRed(this.red); - this.c = new BN(conf.c, 16).toRed(this.red); - this.c2 = this.c.redSqr(); - this.d = new BN(conf.d, 16).toRed(this.red); - this.dd = this.d.redAdd(this.d); - assert(!this.twisted || this.c.fromRed().cmpn(1) === 0); - this.oneC = (conf.c | 0) === 1; - } - inherits2(EdwardsCurve, Base); - module2.exports = EdwardsCurve; - EdwardsCurve.prototype._mulA = function _mulA(num) { - if (this.mOneA) - return num.redNeg(); - else - return this.a.redMul(num); - }; - EdwardsCurve.prototype._mulC = function _mulC(num) { - if (this.oneC) - return num; - else - return this.c.redMul(num); - }; - EdwardsCurve.prototype.jpoint = function jpoint(x, y, z, t) { - return this.point(x, y, z, t); - }; - EdwardsCurve.prototype.pointFromX = function pointFromX(x, odd) { - x = new BN(x, 16); - if (!x.red) - x = x.toRed(this.red); - var x2 = x.redSqr(); - var rhs = this.c2.redSub(this.a.redMul(x2)); - var lhs = this.one.redSub(this.c2.redMul(this.d).redMul(x2)); - var y2 = rhs.redMul(lhs.redInvm()); - var y = y2.redSqrt(); - if (y.redSqr().redSub(y2).cmp(this.zero) !== 0) - throw new Error("invalid point"); - var isOdd = y.fromRed().isOdd(); - if (odd && !isOdd || !odd && isOdd) - y = y.redNeg(); - return this.point(x, y); - }; - EdwardsCurve.prototype.pointFromY = function pointFromY(y, odd) { - y = new BN(y, 16); - if (!y.red) - y = y.toRed(this.red); - var y2 = y.redSqr(); - var lhs = y2.redSub(this.c2); - var rhs = y2.redMul(this.d).redMul(this.c2).redSub(this.a); - var x2 = lhs.redMul(rhs.redInvm()); - if (x2.cmp(this.zero) === 0) { - if (odd) - throw new Error("invalid point"); - else - return this.point(this.zero, y); - } - var x = x2.redSqrt(); - if (x.redSqr().redSub(x2).cmp(this.zero) !== 0) - throw new Error("invalid point"); - if (x.fromRed().isOdd() !== odd) - x = x.redNeg(); - return this.point(x, y); - }; - EdwardsCurve.prototype.validate = function validate(point) { - if (point.isInfinity()) - return true; - point.normalize(); - var x2 = point.x.redSqr(); - var y2 = point.y.redSqr(); - var lhs = x2.redMul(this.a).redAdd(y2); - var rhs = this.c2.redMul(this.one.redAdd(this.d.redMul(x2).redMul(y2))); - return lhs.cmp(rhs) === 0; - }; - function Point(curve, x, y, z, t) { - Base.BasePoint.call(this, curve, "projective"); - if (x === null && y === null && z === null) { - this.x = this.curve.zero; - this.y = this.curve.one; - this.z = this.curve.one; - this.t = this.curve.zero; - this.zOne = true; - } else { - this.x = new BN(x, 16); - this.y = new BN(y, 16); - this.z = z ? new BN(z, 16) : this.curve.one; - this.t = t && new BN(t, 16); - if (!this.x.red) - this.x = this.x.toRed(this.curve.red); - if (!this.y.red) - this.y = this.y.toRed(this.curve.red); - if (!this.z.red) - this.z = this.z.toRed(this.curve.red); - if (this.t && !this.t.red) - this.t = this.t.toRed(this.curve.red); - this.zOne = this.z === this.curve.one; - if (this.curve.extended && !this.t) { - this.t = this.x.redMul(this.y); - if (!this.zOne) - this.t = this.t.redMul(this.z.redInvm()); - } - } - } - inherits2(Point, Base.BasePoint); - EdwardsCurve.prototype.pointFromJSON = function pointFromJSON(obj) { - return Point.fromJSON(this, obj); - }; - EdwardsCurve.prototype.point = function point(x, y, z, t) { - return new Point(this, x, y, z, t); - }; - Point.fromJSON = function fromJSON(curve, obj) { - return new Point(curve, obj[0], obj[1], obj[2]); - }; - Point.prototype.inspect = function inspect() { - if (this.isInfinity()) - return ""; - return ""; - }; - Point.prototype.isInfinity = function isInfinity() { - return this.x.cmpn(0) === 0 && (this.y.cmp(this.z) === 0 || this.zOne && this.y.cmp(this.curve.c) === 0); - }; - Point.prototype._extDbl = function _extDbl() { - var a = this.x.redSqr(); - var b = this.y.redSqr(); - var c = this.z.redSqr(); - c = c.redIAdd(c); - var d = this.curve._mulA(a); - var e = this.x.redAdd(this.y).redSqr().redISub(a).redISub(b); - var g = d.redAdd(b); - var f = g.redSub(c); - var h = d.redSub(b); - var nx = e.redMul(f); - var ny = g.redMul(h); - var nt = e.redMul(h); - var nz = f.redMul(g); - return this.curve.point(nx, ny, nz, nt); - }; - Point.prototype._projDbl = function _projDbl() { - var b = this.x.redAdd(this.y).redSqr(); - var c = this.x.redSqr(); - var d = this.y.redSqr(); - var nx; - var ny; - var nz; - var e; - var h; - var j; - if (this.curve.twisted) { - e = this.curve._mulA(c); - var f = e.redAdd(d); - if (this.zOne) { - nx = b.redSub(c).redSub(d).redMul(f.redSub(this.curve.two)); - ny = f.redMul(e.redSub(d)); - nz = f.redSqr().redSub(f).redSub(f); - } else { - h = this.z.redSqr(); - j = f.redSub(h).redISub(h); - nx = b.redSub(c).redISub(d).redMul(j); - ny = f.redMul(e.redSub(d)); - nz = f.redMul(j); - } - } else { - e = c.redAdd(d); - h = this.curve._mulC(this.z).redSqr(); - j = e.redSub(h).redSub(h); - nx = this.curve._mulC(b.redISub(e)).redMul(j); - ny = this.curve._mulC(e).redMul(c.redISub(d)); - nz = e.redMul(j); - } - return this.curve.point(nx, ny, nz); - }; - Point.prototype.dbl = function dbl() { - if (this.isInfinity()) - return this; - if (this.curve.extended) - return this._extDbl(); - else - return this._projDbl(); - }; - Point.prototype._extAdd = function _extAdd(p) { - var a = this.y.redSub(this.x).redMul(p.y.redSub(p.x)); - var b = this.y.redAdd(this.x).redMul(p.y.redAdd(p.x)); - var c = this.t.redMul(this.curve.dd).redMul(p.t); - var d = this.z.redMul(p.z.redAdd(p.z)); - var e = b.redSub(a); - var f = d.redSub(c); - var g = d.redAdd(c); - var h = b.redAdd(a); - var nx = e.redMul(f); - var ny = g.redMul(h); - var nt = e.redMul(h); - var nz = f.redMul(g); - return this.curve.point(nx, ny, nz, nt); - }; - Point.prototype._projAdd = function _projAdd(p) { - var a = this.z.redMul(p.z); - var b = a.redSqr(); - var c = this.x.redMul(p.x); - var d = this.y.redMul(p.y); - var e = this.curve.d.redMul(c).redMul(d); - var f = b.redSub(e); - var g = b.redAdd(e); - var tmp = this.x.redAdd(this.y).redMul(p.x.redAdd(p.y)).redISub(c).redISub(d); - var nx = a.redMul(f).redMul(tmp); - var ny; - var nz; - if (this.curve.twisted) { - ny = a.redMul(g).redMul(d.redSub(this.curve._mulA(c))); - nz = f.redMul(g); - } else { - ny = a.redMul(g).redMul(d.redSub(c)); - nz = this.curve._mulC(f).redMul(g); - } - return this.curve.point(nx, ny, nz); - }; - Point.prototype.add = function add(p) { - if (this.isInfinity()) - return p; - if (p.isInfinity()) - return this; - if (this.curve.extended) - return this._extAdd(p); - else - return this._projAdd(p); - }; - Point.prototype.mul = function mul(k) { - if (this._hasDoubles(k)) - return this.curve._fixedNafMul(this, k); - else - return this.curve._wnafMul(this, k); - }; - Point.prototype.mulAdd = function mulAdd(k1, p, k2) { - return this.curve._wnafMulAdd(1, [this, p], [k1, k2], 2, false); - }; - Point.prototype.jmulAdd = function jmulAdd(k1, p, k2) { - return this.curve._wnafMulAdd(1, [this, p], [k1, k2], 2, true); - }; - Point.prototype.normalize = function normalize() { - if (this.zOne) - return this; - var zi = this.z.redInvm(); - this.x = this.x.redMul(zi); - this.y = this.y.redMul(zi); - if (this.t) - this.t = this.t.redMul(zi); - this.z = this.curve.one; - this.zOne = true; - return this; - }; - Point.prototype.neg = function neg() { - return this.curve.point( - this.x.redNeg(), - this.y, - this.z, - this.t && this.t.redNeg() - ); - }; - Point.prototype.getX = function getX() { - this.normalize(); - return this.x.fromRed(); - }; - Point.prototype.getY = function getY() { - this.normalize(); - return this.y.fromRed(); - }; - Point.prototype.eq = function eq(other) { - return this === other || this.getX().cmp(other.getX()) === 0 && this.getY().cmp(other.getY()) === 0; - }; - Point.prototype.eqXToP = function eqXToP(x) { - var rx = x.toRed(this.curve.red).redMul(this.z); - if (this.x.cmp(rx) === 0) - return true; - var xc = x.clone(); - var t = this.curve.redN.redMul(this.z); - for (; ; ) { - xc.iadd(this.curve.n); - if (xc.cmp(this.curve.p) >= 0) - return false; - rx.redIAdd(t); - if (this.x.cmp(rx) === 0) - return true; - } - }; - Point.prototype.toP = Point.prototype.normalize; - Point.prototype.mixedAdd = Point.prototype.add; - } -}); - -// node_modules/elliptic/lib/elliptic/curve/index.js -var require_curve = __commonJS({ - "node_modules/elliptic/lib/elliptic/curve/index.js"(exports2) { - "use strict"; - var curve = exports2; - curve.base = require_base(); - curve.short = require_short(); - curve.mont = require_mont(); - curve.edwards = require_edwards(); - } -}); - -// node_modules/elliptic/lib/elliptic/precomputed/secp256k1.js -var require_secp256k1 = __commonJS({ - "node_modules/elliptic/lib/elliptic/precomputed/secp256k1.js"(exports2, module2) { - "use strict"; - module2.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" - ] - ] - } - }; - } -}); - -// node_modules/elliptic/lib/elliptic/curves.js -var require_curves = __commonJS({ - "node_modules/elliptic/lib/elliptic/curves.js"(exports2) { - "use strict"; - var curves = exports2; - var hash = require_hash(); - var curve = require_curve(); - var utils = require_utils3(); - var assert = utils.assert; - function PresetCurve(options) { - if (options.type === "short") - this.curve = new curve.short(options); - else if (options.type === "edwards") - this.curve = new curve.edwards(options); - else - this.curve = new curve.mont(options); - this.g = this.curve.g; - this.n = this.curve.n; - this.hash = options.hash; - assert(this.g.validate(), "Invalid curve"); - assert(this.g.mul(this.n).isInfinity(), "Invalid curve, G*N != O"); - } - curves.PresetCurve = PresetCurve; - function defineCurve(name, options) { - Object.defineProperty(curves, name, { - configurable: true, - enumerable: true, - get: function() { - var curve2 = new PresetCurve(options); - Object.defineProperty(curves, name, { - configurable: true, - enumerable: true, - value: curve2 - }); - return curve2; - } - }); - } - defineCurve("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: hash.sha256, - gRed: false, - g: [ - "188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012", - "07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811" - ] - }); - defineCurve("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: hash.sha256, - gRed: false, - g: [ - "b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21", - "bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34" - ] - }); - defineCurve("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: hash.sha256, - gRed: false, - g: [ - "6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296", - "4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5" - ] - }); - defineCurve("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: hash.sha384, - gRed: false, - 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" - ] - }); - defineCurve("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: hash.sha512, - gRed: false, - 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" - ] - }); - defineCurve("curve25519", { - type: "mont", - prime: "p25519", - p: "7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed", - a: "76d06", - b: "1", - n: "1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed", - hash: hash.sha256, - gRed: false, - g: [ - "9" - ] - }); - defineCurve("ed25519", { - type: "edwards", - prime: "p25519", - p: "7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed", - a: "-1", - c: "1", - // -121665 * (121666^(-1)) (mod P) - d: "52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3", - n: "1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed", - hash: hash.sha256, - gRed: false, - g: [ - "216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a", - // 4/5 - "6666666666666666666666666666666666666666666666666666666666666658" - ] - }); - var pre; - try { - pre = require_secp256k1(); - } catch (e) { - pre = void 0; - } - defineCurve("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: hash.sha256, - // Precomputed endomorphism - beta: "7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee", - lambda: "5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72", - basis: [ - { - a: "3086d221a7d46bcde86c90e49284eb15", - b: "-e4437ed6010e88286f547fa90abfe4c3" - }, - { - a: "114ca50f7a8e2f3f657c1108d9d44cfd8", - b: "3086d221a7d46bcde86c90e49284eb15" - } - ], - gRed: false, - g: [ - "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798", - "483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8", - pre - ] - }); - } -}); - -// node_modules/hmac-drbg/lib/hmac-drbg.js -var require_hmac_drbg = __commonJS({ - "node_modules/hmac-drbg/lib/hmac-drbg.js"(exports2, module2) { - "use strict"; - var hash = require_hash(); - var utils = require_utils2(); - var assert = require_minimalistic_assert(); - function HmacDRBG(options) { - if (!(this instanceof HmacDRBG)) - return new HmacDRBG(options); - this.hash = options.hash; - this.predResist = !!options.predResist; - this.outLen = this.hash.outSize; - this.minEntropy = options.minEntropy || this.hash.hmacStrength; - this._reseed = null; - this.reseedInterval = null; - this.K = null; - this.V = null; - var entropy = utils.toArray(options.entropy, options.entropyEnc || "hex"); - var nonce = utils.toArray(options.nonce, options.nonceEnc || "hex"); - var pers = utils.toArray(options.pers, options.persEnc || "hex"); - assert( - entropy.length >= this.minEntropy / 8, - "Not enough entropy. Minimum is: " + this.minEntropy + " bits" - ); - this._init(entropy, nonce, pers); - } - module2.exports = HmacDRBG; - HmacDRBG.prototype._init = function init(entropy, nonce, pers) { - var seed = entropy.concat(nonce).concat(pers); - this.K = new Array(this.outLen / 8); - this.V = new Array(this.outLen / 8); - for (var i = 0; i < this.V.length; i++) { - this.K[i] = 0; - this.V[i] = 1; - } - this._update(seed); - this._reseed = 1; - this.reseedInterval = 281474976710656; - }; - HmacDRBG.prototype._hmac = function hmac() { - return new hash.hmac(this.hash, this.K); - }; - HmacDRBG.prototype._update = function update(seed) { - var kmac = this._hmac().update(this.V).update([0]); - if (seed) - kmac = kmac.update(seed); - this.K = kmac.digest(); - this.V = this._hmac().update(this.V).digest(); - if (!seed) - return; - this.K = this._hmac().update(this.V).update([1]).update(seed).digest(); - this.V = this._hmac().update(this.V).digest(); - }; - HmacDRBG.prototype.reseed = function reseed(entropy, entropyEnc, add, addEnc) { - if (typeof entropyEnc !== "string") { - addEnc = add; - add = entropyEnc; - entropyEnc = null; - } - entropy = utils.toArray(entropy, entropyEnc); - add = utils.toArray(add, addEnc); - assert( - entropy.length >= this.minEntropy / 8, - "Not enough entropy. Minimum is: " + this.minEntropy + " bits" - ); - this._update(entropy.concat(add || [])); - this._reseed = 1; - }; - HmacDRBG.prototype.generate = function generate(len, enc, add, addEnc) { - if (this._reseed > this.reseedInterval) - throw new Error("Reseed is required"); - if (typeof enc !== "string") { - addEnc = add; - add = enc; - enc = null; - } - if (add) { - add = utils.toArray(add, addEnc || "hex"); - this._update(add); - } - var temp = []; - while (temp.length < len) { - this.V = this._hmac().update(this.V).digest(); - temp = temp.concat(this.V); - } - var res = temp.slice(0, len); - this._update(add); - this._reseed++; - return utils.encode(res, enc); - }; - } -}); - -// node_modules/elliptic/lib/elliptic/ec/key.js -var require_key = __commonJS({ - "node_modules/elliptic/lib/elliptic/ec/key.js"(exports2, module2) { - "use strict"; - var BN = require_bn2(); - var utils = require_utils3(); - var assert = utils.assert; - function KeyPair(ec, options) { - this.ec = ec; - this.priv = null; - this.pub = null; - if (options.priv) - this._importPrivate(options.priv, options.privEnc); - if (options.pub) - this._importPublic(options.pub, options.pubEnc); - } - module2.exports = KeyPair; - KeyPair.fromPublic = function fromPublic(ec, pub, enc) { - if (pub instanceof KeyPair) - return pub; - return new KeyPair(ec, { - pub, - pubEnc: enc - }); - }; - KeyPair.fromPrivate = function fromPrivate(ec, priv, enc) { - if (priv instanceof KeyPair) - return priv; - return new KeyPair(ec, { - priv, - privEnc: enc - }); - }; - KeyPair.prototype.validate = function validate() { - var pub = this.getPublic(); - if (pub.isInfinity()) - return { result: false, reason: "Invalid public key" }; - if (!pub.validate()) - return { result: false, reason: "Public key is not a point" }; - if (!pub.mul(this.ec.curve.n).isInfinity()) - return { result: false, reason: "Public key * N != O" }; - return { result: true, reason: null }; - }; - KeyPair.prototype.getPublic = function getPublic(compact, enc) { - if (typeof compact === "string") { - enc = compact; - compact = null; - } - if (!this.pub) - this.pub = this.ec.g.mul(this.priv); - if (!enc) - return this.pub; - return this.pub.encode(enc, compact); - }; - KeyPair.prototype.getPrivate = function getPrivate(enc) { - if (enc === "hex") - return this.priv.toString(16, 2); - else - return this.priv; - }; - KeyPair.prototype._importPrivate = function _importPrivate(key, enc) { - this.priv = new BN(key, enc || 16); - this.priv = this.priv.umod(this.ec.curve.n); - }; - KeyPair.prototype._importPublic = function _importPublic(key, enc) { - if (key.x || key.y) { - if (this.ec.curve.type === "mont") { - assert(key.x, "Need x coordinate"); - } else if (this.ec.curve.type === "short" || this.ec.curve.type === "edwards") { - assert(key.x && key.y, "Need both x and y coordinate"); - } - this.pub = this.ec.curve.point(key.x, key.y); - return; - } - this.pub = this.ec.curve.decodePoint(key, enc); - }; - KeyPair.prototype.derive = function derive(pub) { - if (!pub.validate()) { - assert(pub.validate(), "public point not validated"); - } - return pub.mul(this.priv).getX(); - }; - KeyPair.prototype.sign = function sign(msg, enc, options) { - return this.ec.sign(msg, this, enc, options); - }; - KeyPair.prototype.verify = function verify(msg, signature) { - return this.ec.verify(msg, signature, this); - }; - KeyPair.prototype.inspect = function inspect() { - return ""; - }; - } -}); - -// node_modules/elliptic/lib/elliptic/ec/signature.js -var require_signature = __commonJS({ - "node_modules/elliptic/lib/elliptic/ec/signature.js"(exports2, module2) { - "use strict"; - var BN = require_bn2(); - var utils = require_utils3(); - var assert = utils.assert; - function Signature(options, enc) { - if (options instanceof Signature) - return options; - if (this._importDER(options, enc)) - return; - assert(options.r && options.s, "Signature without r or s"); - this.r = new BN(options.r, 16); - this.s = new BN(options.s, 16); - if (options.recoveryParam === void 0) - this.recoveryParam = null; - else - this.recoveryParam = options.recoveryParam; - } - module2.exports = Signature; - function Position() { - this.place = 0; - } - function getLength(buf, p) { - var initial = buf[p.place++]; - if (!(initial & 128)) { - return initial; - } - var octetLen = initial & 15; - if (octetLen === 0 || octetLen > 4) { - return false; - } - var val = 0; - for (var i = 0, off = p.place; i < octetLen; i++, off++) { - val <<= 8; - val |= buf[off]; - val >>>= 0; - } - if (val <= 127) { - return false; - } - p.place = off; - return val; - } - function rmPadding(buf) { - var i = 0; - var len = buf.length - 1; - while (!buf[i] && !(buf[i + 1] & 128) && i < len) { - i++; - } - if (i === 0) { - return buf; - } - return buf.slice(i); - } - Signature.prototype._importDER = function _importDER(data, enc) { - data = utils.toArray(data, enc); - var p = new Position(); - if (data[p.place++] !== 48) { - return false; - } - var len = getLength(data, p); - if (len === false) { - return false; - } - if (len + p.place !== data.length) { - return false; - } - if (data[p.place++] !== 2) { - return false; - } - var rlen = getLength(data, p); - if (rlen === false) { - return false; - } - var r = data.slice(p.place, rlen + p.place); - p.place += rlen; - if (data[p.place++] !== 2) { - return false; - } - var slen = getLength(data, p); - if (slen === false) { - return false; - } - if (data.length !== slen + p.place) { - return false; - } - var s = data.slice(p.place, slen + p.place); - if (r[0] === 0) { - if (r[1] & 128) { - r = r.slice(1); - } else { - return false; - } - } - if (s[0] === 0) { - if (s[1] & 128) { - s = s.slice(1); - } else { - return false; - } - } - this.r = new BN(r); - this.s = new BN(s); - this.recoveryParam = null; - return true; - }; - function constructLength(arr, len) { - if (len < 128) { - arr.push(len); - return; - } - var octets = 1 + (Math.log(len) / Math.LN2 >>> 3); - arr.push(octets | 128); - while (--octets) { - arr.push(len >>> (octets << 3) & 255); - } - arr.push(len); - } - Signature.prototype.toDER = function toDER(enc) { - var r = this.r.toArray(); - var s = this.s.toArray(); - if (r[0] & 128) - r = [0].concat(r); - if (s[0] & 128) - s = [0].concat(s); - r = rmPadding(r); - s = rmPadding(s); - while (!s[0] && !(s[1] & 128)) { - s = s.slice(1); - } - var arr = [2]; - constructLength(arr, r.length); - arr = arr.concat(r); - arr.push(2); - constructLength(arr, s.length); - var backHalf = arr.concat(s); - var res = [48]; - constructLength(res, backHalf.length); - res = res.concat(backHalf); - return utils.encode(res, enc); - }; - } -}); - -// node_modules/elliptic/lib/elliptic/ec/index.js -var require_ec = __commonJS({ - "node_modules/elliptic/lib/elliptic/ec/index.js"(exports2, module2) { - "use strict"; - var BN = require_bn2(); - var HmacDRBG = require_hmac_drbg(); - var utils = require_utils3(); - var curves = require_curves(); - var rand = require_brorand(); - var assert = utils.assert; - var KeyPair = require_key(); - var Signature = require_signature(); - function EC(options) { - if (!(this instanceof EC)) - return new EC(options); - if (typeof options === "string") { - assert( - Object.prototype.hasOwnProperty.call(curves, options), - "Unknown curve " + options - ); - options = curves[options]; - } - if (options instanceof curves.PresetCurve) - options = { curve: options }; - this.curve = options.curve.curve; - this.n = this.curve.n; - this.nh = this.n.ushrn(1); - this.g = this.curve.g; - this.g = options.curve.g; - this.g.precompute(options.curve.n.bitLength() + 1); - this.hash = options.hash || options.curve.hash; - } - module2.exports = EC; - EC.prototype.keyPair = function keyPair(options) { - return new KeyPair(this, options); - }; - EC.prototype.keyFromPrivate = function keyFromPrivate(priv, enc) { - return KeyPair.fromPrivate(this, priv, enc); - }; - EC.prototype.keyFromPublic = function keyFromPublic(pub, enc) { - return KeyPair.fromPublic(this, pub, enc); - }; - EC.prototype.genKeyPair = function genKeyPair(options) { - if (!options) - options = {}; - var drbg = new HmacDRBG({ - hash: this.hash, - pers: options.pers, - persEnc: options.persEnc || "utf8", - entropy: options.entropy || rand(this.hash.hmacStrength), - entropyEnc: options.entropy && options.entropyEnc || "utf8", - nonce: this.n.toArray() - }); - var bytes = this.n.byteLength(); - var ns2 = this.n.sub(new BN(2)); - for (; ; ) { - var priv = new BN(drbg.generate(bytes)); - if (priv.cmp(ns2) > 0) - continue; - priv.iaddn(1); - return this.keyFromPrivate(priv); - } - }; - EC.prototype._truncateToN = function _truncateToN(msg, truncOnly) { - var delta = msg.byteLength() * 8 - this.n.bitLength(); - if (delta > 0) - msg = msg.ushrn(delta); - if (!truncOnly && msg.cmp(this.n) >= 0) - return msg.sub(this.n); - else - return msg; - }; - EC.prototype.sign = function sign(msg, key, enc, options) { - if (typeof enc === "object") { - options = enc; - enc = null; - } - if (!options) - options = {}; - key = this.keyFromPrivate(key, enc); - msg = this._truncateToN(new BN(msg, 16)); - var bytes = this.n.byteLength(); - var bkey = key.getPrivate().toArray("be", bytes); - var nonce = msg.toArray("be", bytes); - var drbg = new HmacDRBG({ - hash: this.hash, - entropy: bkey, - nonce, - pers: options.pers, - persEnc: options.persEnc || "utf8" - }); - var ns1 = this.n.sub(new BN(1)); - for (var iter = 0; ; iter++) { - var k = options.k ? options.k(iter) : new BN(drbg.generate(this.n.byteLength())); - k = this._truncateToN(k, true); - if (k.cmpn(1) <= 0 || k.cmp(ns1) >= 0) - continue; - var kp = this.g.mul(k); - if (kp.isInfinity()) - continue; - var kpX = kp.getX(); - var r = kpX.umod(this.n); - if (r.cmpn(0) === 0) - continue; - var s = k.invm(this.n).mul(r.mul(key.getPrivate()).iadd(msg)); - s = s.umod(this.n); - if (s.cmpn(0) === 0) - continue; - var recoveryParam = (kp.getY().isOdd() ? 1 : 0) | (kpX.cmp(r) !== 0 ? 2 : 0); - if (options.canonical && s.cmp(this.nh) > 0) { - s = this.n.sub(s); - recoveryParam ^= 1; - } - return new Signature({ r, s, recoveryParam }); - } - }; - EC.prototype.verify = function verify(msg, signature, key, enc) { - msg = this._truncateToN(new BN(msg, 16)); - key = this.keyFromPublic(key, enc); - signature = new Signature(signature, "hex"); - var r = signature.r; - var s = signature.s; - if (r.cmpn(1) < 0 || r.cmp(this.n) >= 0) - return false; - if (s.cmpn(1) < 0 || s.cmp(this.n) >= 0) - return false; - var sinv = s.invm(this.n); - var u1 = sinv.mul(msg).umod(this.n); - var u2 = sinv.mul(r).umod(this.n); - var p; - if (!this.curve._maxwellTrick) { - p = this.g.mulAdd(u1, key.getPublic(), u2); - if (p.isInfinity()) - return false; - return p.getX().umod(this.n).cmp(r) === 0; - } - p = this.g.jmulAdd(u1, key.getPublic(), u2); - if (p.isInfinity()) - return false; - return p.eqXToP(r); - }; - EC.prototype.recoverPubKey = function(msg, signature, j, enc) { - assert((3 & j) === j, "The recovery param is more than two bits"); - signature = new Signature(signature, enc); - var n = this.n; - var e = new BN(msg); - var r = signature.r; - var s = signature.s; - var isYOdd = j & 1; - var isSecondKey = j >> 1; - if (r.cmp(this.curve.p.umod(this.curve.n)) >= 0 && isSecondKey) - throw new Error("Unable to find sencond key candinate"); - if (isSecondKey) - r = this.curve.pointFromX(r.add(this.curve.n), isYOdd); - else - r = this.curve.pointFromX(r, isYOdd); - var rInv = signature.r.invm(n); - var s1 = n.sub(e).mul(rInv).umod(n); - var s2 = s.mul(rInv).umod(n); - return this.g.mulAdd(s1, r, s2); - }; - EC.prototype.getKeyRecoveryParam = function(e, signature, Q, enc) { - signature = new Signature(signature, enc); - if (signature.recoveryParam !== null) - return signature.recoveryParam; - for (var i = 0; i < 4; i++) { - var Qprime; - try { - Qprime = this.recoverPubKey(e, signature, i); - } catch (e2) { - continue; - } - if (Qprime.eq(Q)) - return i; - } - throw new Error("Unable to find valid recovery factor"); - }; - } -}); - -// node_modules/elliptic/lib/elliptic/eddsa/key.js -var require_key2 = __commonJS({ - "node_modules/elliptic/lib/elliptic/eddsa/key.js"(exports2, module2) { - "use strict"; - var utils = require_utils3(); - var assert = utils.assert; - var parseBytes = utils.parseBytes; - var cachedProperty = utils.cachedProperty; - function KeyPair(eddsa, params) { - this.eddsa = eddsa; - this._secret = parseBytes(params.secret); - if (eddsa.isPoint(params.pub)) - this._pub = params.pub; - else - this._pubBytes = parseBytes(params.pub); - } - KeyPair.fromPublic = function fromPublic(eddsa, pub) { - if (pub instanceof KeyPair) - return pub; - return new KeyPair(eddsa, { pub }); - }; - KeyPair.fromSecret = function fromSecret(eddsa, secret) { - if (secret instanceof KeyPair) - return secret; - return new KeyPair(eddsa, { secret }); - }; - KeyPair.prototype.secret = function secret() { - return this._secret; - }; - cachedProperty(KeyPair, "pubBytes", function pubBytes() { - return this.eddsa.encodePoint(this.pub()); - }); - cachedProperty(KeyPair, "pub", function pub() { - if (this._pubBytes) - return this.eddsa.decodePoint(this._pubBytes); - return this.eddsa.g.mul(this.priv()); - }); - cachedProperty(KeyPair, "privBytes", function privBytes() { - var eddsa = this.eddsa; - var hash = this.hash(); - var lastIx = eddsa.encodingLength - 1; - var a = hash.slice(0, eddsa.encodingLength); - a[0] &= 248; - a[lastIx] &= 127; - a[lastIx] |= 64; - return a; - }); - cachedProperty(KeyPair, "priv", function priv() { - return this.eddsa.decodeInt(this.privBytes()); - }); - cachedProperty(KeyPair, "hash", function hash() { - return this.eddsa.hash().update(this.secret()).digest(); - }); - cachedProperty(KeyPair, "messagePrefix", function messagePrefix() { - return this.hash().slice(this.eddsa.encodingLength); - }); - KeyPair.prototype.sign = function sign(message) { - assert(this._secret, "KeyPair can only verify"); - return this.eddsa.sign(message, this); - }; - KeyPair.prototype.verify = function verify(message, sig) { - return this.eddsa.verify(message, sig, this); - }; - KeyPair.prototype.getSecret = function getSecret(enc) { - assert(this._secret, "KeyPair is public only"); - return utils.encode(this.secret(), enc); - }; - KeyPair.prototype.getPublic = function getPublic(enc) { - return utils.encode(this.pubBytes(), enc); - }; - module2.exports = KeyPair; - } -}); - -// node_modules/elliptic/lib/elliptic/eddsa/signature.js -var require_signature2 = __commonJS({ - "node_modules/elliptic/lib/elliptic/eddsa/signature.js"(exports2, module2) { - "use strict"; - var BN = require_bn2(); - var utils = require_utils3(); - var assert = utils.assert; - var cachedProperty = utils.cachedProperty; - var parseBytes = utils.parseBytes; - function Signature(eddsa, sig) { - this.eddsa = eddsa; - if (typeof sig !== "object") - sig = parseBytes(sig); - if (Array.isArray(sig)) { - sig = { - R: sig.slice(0, eddsa.encodingLength), - S: sig.slice(eddsa.encodingLength) - }; - } - assert(sig.R && sig.S, "Signature without R or S"); - if (eddsa.isPoint(sig.R)) - this._R = sig.R; - if (sig.S instanceof BN) - this._S = sig.S; - this._Rencoded = Array.isArray(sig.R) ? sig.R : sig.Rencoded; - this._Sencoded = Array.isArray(sig.S) ? sig.S : sig.Sencoded; - } - cachedProperty(Signature, "S", function S() { - return this.eddsa.decodeInt(this.Sencoded()); - }); - cachedProperty(Signature, "R", function R() { - return this.eddsa.decodePoint(this.Rencoded()); - }); - cachedProperty(Signature, "Rencoded", function Rencoded() { - return this.eddsa.encodePoint(this.R()); - }); - cachedProperty(Signature, "Sencoded", function Sencoded() { - return this.eddsa.encodeInt(this.S()); - }); - Signature.prototype.toBytes = function toBytes() { - return this.Rencoded().concat(this.Sencoded()); - }; - Signature.prototype.toHex = function toHex() { - return utils.encode(this.toBytes(), "hex").toUpperCase(); - }; - module2.exports = Signature; - } -}); - -// node_modules/elliptic/lib/elliptic/eddsa/index.js -var require_eddsa = __commonJS({ - "node_modules/elliptic/lib/elliptic/eddsa/index.js"(exports2, module2) { - "use strict"; - var hash = require_hash(); - var curves = require_curves(); - var utils = require_utils3(); - var assert = utils.assert; - var parseBytes = utils.parseBytes; - var KeyPair = require_key2(); - var Signature = require_signature2(); - function EDDSA(curve) { - assert(curve === "ed25519", "only tested with ed25519 so far"); - if (!(this instanceof EDDSA)) - return new EDDSA(curve); - curve = curves[curve].curve; - this.curve = curve; - this.g = curve.g; - this.g.precompute(curve.n.bitLength() + 1); - this.pointClass = curve.point().constructor; - this.encodingLength = Math.ceil(curve.n.bitLength() / 8); - this.hash = hash.sha512; - } - module2.exports = EDDSA; - EDDSA.prototype.sign = function sign(message, secret) { - message = parseBytes(message); - var key = this.keyFromSecret(secret); - var r = this.hashInt(key.messagePrefix(), message); - var R = this.g.mul(r); - var Rencoded = this.encodePoint(R); - var s_ = this.hashInt(Rencoded, key.pubBytes(), message).mul(key.priv()); - var S = r.add(s_).umod(this.curve.n); - return this.makeSignature({ R, S, Rencoded }); - }; - EDDSA.prototype.verify = function verify(message, sig, pub) { - message = parseBytes(message); - sig = this.makeSignature(sig); - var key = this.keyFromPublic(pub); - var h = this.hashInt(sig.Rencoded(), key.pubBytes(), message); - var SG = this.g.mul(sig.S()); - var RplusAh = sig.R().add(key.pub().mul(h)); - return RplusAh.eq(SG); - }; - EDDSA.prototype.hashInt = function hashInt() { - var hash2 = this.hash(); - for (var i = 0; i < arguments.length; i++) - hash2.update(arguments[i]); - return utils.intFromLE(hash2.digest()).umod(this.curve.n); - }; - EDDSA.prototype.keyFromPublic = function keyFromPublic(pub) { - return KeyPair.fromPublic(this, pub); - }; - EDDSA.prototype.keyFromSecret = function keyFromSecret(secret) { - return KeyPair.fromSecret(this, secret); - }; - EDDSA.prototype.makeSignature = function makeSignature(sig) { - if (sig instanceof Signature) - return sig; - return new Signature(this, sig); - }; - EDDSA.prototype.encodePoint = function encodePoint(point) { - var enc = point.getY().toArray("le", this.encodingLength); - enc[this.encodingLength - 1] |= point.getX().isOdd() ? 128 : 0; - return enc; - }; - EDDSA.prototype.decodePoint = function decodePoint(bytes) { - bytes = utils.parseBytes(bytes); - var lastIx = bytes.length - 1; - var normed = bytes.slice(0, lastIx).concat(bytes[lastIx] & ~128); - var xIsOdd = (bytes[lastIx] & 128) !== 0; - var y = utils.intFromLE(normed); - return this.curve.pointFromY(y, xIsOdd); - }; - EDDSA.prototype.encodeInt = function encodeInt(num) { - return num.toArray("le", this.encodingLength); - }; - EDDSA.prototype.decodeInt = function decodeInt(bytes) { - return utils.intFromLE(bytes); - }; - EDDSA.prototype.isPoint = function isPoint(val) { - return val instanceof this.pointClass; - }; - } -}); - -// node_modules/elliptic/lib/elliptic.js -var require_elliptic = __commonJS({ - "node_modules/elliptic/lib/elliptic.js"(exports2) { - "use strict"; - var elliptic = exports2; - elliptic.version = require_package().version; - elliptic.utils = require_utils3(); - elliptic.rand = require_brorand(); - elliptic.curve = require_curve(); - elliptic.curves = require_curves(); - elliptic.ec = require_ec(); - elliptic.eddsa = require_eddsa(); - } -}); - -// node_modules/@ethersproject/signing-key/lib/elliptic.js -var require_elliptic2 = __commonJS({ - "node_modules/@ethersproject/signing-key/lib/elliptic.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.EC = void 0; - var elliptic_1 = __importDefault(require_elliptic()); - var EC = elliptic_1.default.ec; - exports2.EC = EC; - } -}); - -// node_modules/@ethersproject/signing-key/lib/_version.js -var require_version14 = __commonJS({ - "node_modules/@ethersproject/signing-key/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "signing-key/5.7.0"; - } -}); - -// node_modules/@ethersproject/signing-key/lib/index.js -var require_lib18 = __commonJS({ - "node_modules/@ethersproject/signing-key/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.computePublicKey = exports2.recoverPublicKey = exports2.SigningKey = void 0; - var elliptic_1 = require_elliptic2(); - var bytes_1 = require_lib2(); - var properties_1 = require_lib4(); - var logger_1 = require_lib(); - var _version_1 = require_version14(); - var logger = new logger_1.Logger(_version_1.version); - var _curve = null; - function getCurve() { - if (!_curve) { - _curve = new elliptic_1.EC("secp256k1"); - } - return _curve; - } - var SigningKey = ( - /** @class */ - function() { - function SigningKey2(privateKey) { - (0, properties_1.defineReadOnly)(this, "curve", "secp256k1"); - (0, properties_1.defineReadOnly)(this, "privateKey", (0, bytes_1.hexlify)(privateKey)); - if ((0, bytes_1.hexDataLength)(this.privateKey) !== 32) { - logger.throwArgumentError("invalid private key", "privateKey", "[[ REDACTED ]]"); - } - var keyPair = getCurve().keyFromPrivate((0, bytes_1.arrayify)(this.privateKey)); - (0, properties_1.defineReadOnly)(this, "publicKey", "0x" + keyPair.getPublic(false, "hex")); - (0, properties_1.defineReadOnly)(this, "compressedPublicKey", "0x" + keyPair.getPublic(true, "hex")); - (0, properties_1.defineReadOnly)(this, "_isSigningKey", true); - } - SigningKey2.prototype._addPoint = function(other) { - var p0 = getCurve().keyFromPublic((0, bytes_1.arrayify)(this.publicKey)); - var p1 = getCurve().keyFromPublic((0, bytes_1.arrayify)(other)); - return "0x" + p0.pub.add(p1.pub).encodeCompressed("hex"); - }; - SigningKey2.prototype.signDigest = function(digest) { - var keyPair = getCurve().keyFromPrivate((0, bytes_1.arrayify)(this.privateKey)); - var digestBytes = (0, bytes_1.arrayify)(digest); - if (digestBytes.length !== 32) { - logger.throwArgumentError("bad digest length", "digest", digest); - } - var signature = keyPair.sign(digestBytes, { canonical: true }); - return (0, bytes_1.splitSignature)({ - recoveryParam: signature.recoveryParam, - r: (0, bytes_1.hexZeroPad)("0x" + signature.r.toString(16), 32), - s: (0, bytes_1.hexZeroPad)("0x" + signature.s.toString(16), 32) - }); - }; - SigningKey2.prototype.computeSharedSecret = function(otherKey) { - var keyPair = getCurve().keyFromPrivate((0, bytes_1.arrayify)(this.privateKey)); - var otherKeyPair = getCurve().keyFromPublic((0, bytes_1.arrayify)(computePublicKey(otherKey))); - return (0, bytes_1.hexZeroPad)("0x" + keyPair.derive(otherKeyPair.getPublic()).toString(16), 32); - }; - SigningKey2.isSigningKey = function(value) { - return !!(value && value._isSigningKey); - }; - return SigningKey2; - }() - ); - exports2.SigningKey = SigningKey; - function recoverPublicKey(digest, signature) { - var sig = (0, bytes_1.splitSignature)(signature); - var rs = { r: (0, bytes_1.arrayify)(sig.r), s: (0, bytes_1.arrayify)(sig.s) }; - return "0x" + getCurve().recoverPubKey((0, bytes_1.arrayify)(digest), rs, sig.recoveryParam).encode("hex", false); - } - exports2.recoverPublicKey = recoverPublicKey; - function computePublicKey(key, compressed) { - var bytes = (0, bytes_1.arrayify)(key); - if (bytes.length === 32) { - var signingKey = new SigningKey(bytes); - if (compressed) { - return "0x" + getCurve().keyFromPrivate(bytes).getPublic(true, "hex"); - } - return signingKey.publicKey; - } else if (bytes.length === 33) { - if (compressed) { - return (0, bytes_1.hexlify)(bytes); - } - return "0x" + getCurve().keyFromPublic(bytes).getPublic(false, "hex"); - } else if (bytes.length === 65) { - if (!compressed) { - return (0, bytes_1.hexlify)(bytes); - } - return "0x" + getCurve().keyFromPublic(bytes).getPublic(true, "hex"); - } - return logger.throwArgumentError("invalid public or private key", "key", "[REDACTED]"); - } - exports2.computePublicKey = computePublicKey; - } -}); - -// node_modules/@ethersproject/transactions/lib/_version.js -var require_version15 = __commonJS({ - "node_modules/@ethersproject/transactions/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "transactions/5.7.0"; - } -}); - -// node_modules/@ethersproject/transactions/lib/index.js -var require_lib19 = __commonJS({ - "node_modules/@ethersproject/transactions/lib/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding(result, mod, k); - } - __setModuleDefault(result, mod); - return result; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.parse = exports2.serialize = exports2.accessListify = exports2.recoverAddress = exports2.computeAddress = exports2.TransactionTypes = void 0; - var address_1 = require_lib14(); - var bignumber_1 = require_lib3(); - var bytes_1 = require_lib2(); - var constants_1 = require_lib9(); - var keccak256_1 = require_lib10(); - var properties_1 = require_lib4(); - var RLP = __importStar(require_lib13()); - var signing_key_1 = require_lib18(); - var logger_1 = require_lib(); - var _version_1 = require_version15(); - var logger = new logger_1.Logger(_version_1.version); - var TransactionTypes; - (function(TransactionTypes2) { - TransactionTypes2[TransactionTypes2["legacy"] = 0] = "legacy"; - TransactionTypes2[TransactionTypes2["eip2930"] = 1] = "eip2930"; - TransactionTypes2[TransactionTypes2["eip1559"] = 2] = "eip1559"; - })(TransactionTypes = exports2.TransactionTypes || (exports2.TransactionTypes = {})); - function handleAddress(value) { - if (value === "0x") { - return null; - } - return (0, address_1.getAddress)(value); - } - function handleNumber(value) { - if (value === "0x") { - return constants_1.Zero; - } - return bignumber_1.BigNumber.from(value); - } - var transactionFields = [ - { name: "nonce", maxLength: 32, numeric: true }, - { name: "gasPrice", maxLength: 32, numeric: true }, - { name: "gasLimit", maxLength: 32, numeric: true }, - { name: "to", length: 20 }, - { name: "value", maxLength: 32, numeric: true }, - { name: "data" } - ]; - var allowedTransactionKeys = { - chainId: true, - data: true, - gasLimit: true, - gasPrice: true, - nonce: true, - to: true, - type: true, - value: true - }; - function computeAddress(key) { - var publicKey = (0, signing_key_1.computePublicKey)(key); - return (0, address_1.getAddress)((0, bytes_1.hexDataSlice)((0, keccak256_1.keccak256)((0, bytes_1.hexDataSlice)(publicKey, 1)), 12)); - } - exports2.computeAddress = computeAddress; - function recoverAddress(digest, signature) { - return computeAddress((0, signing_key_1.recoverPublicKey)((0, bytes_1.arrayify)(digest), signature)); - } - exports2.recoverAddress = recoverAddress; - function formatNumber(value, name) { - var result = (0, bytes_1.stripZeros)(bignumber_1.BigNumber.from(value).toHexString()); - if (result.length > 32) { - logger.throwArgumentError("invalid length for " + name, "transaction:" + name, value); - } - return result; - } - function accessSetify(addr, storageKeys) { - return { - address: (0, address_1.getAddress)(addr), - storageKeys: (storageKeys || []).map(function(storageKey, index) { - if ((0, bytes_1.hexDataLength)(storageKey) !== 32) { - logger.throwArgumentError("invalid access list storageKey", "accessList[" + addr + ":" + index + "]", storageKey); - } - return storageKey.toLowerCase(); - }) - }; - } - function accessListify(value) { - if (Array.isArray(value)) { - return value.map(function(set, index) { - if (Array.isArray(set)) { - if (set.length > 2) { - logger.throwArgumentError("access list expected to be [ address, storageKeys[] ]", "value[" + index + "]", set); - } - return accessSetify(set[0], set[1]); - } - return accessSetify(set.address, set.storageKeys); - }); - } - var result = Object.keys(value).map(function(addr) { - var storageKeys = value[addr].reduce(function(accum, storageKey) { - accum[storageKey] = true; - return accum; - }, {}); - return accessSetify(addr, Object.keys(storageKeys).sort()); - }); - result.sort(function(a, b) { - return a.address.localeCompare(b.address); - }); - return result; - } - exports2.accessListify = accessListify; - function formatAccessList(value) { - return accessListify(value).map(function(set) { - return [set.address, set.storageKeys]; - }); - } - function _serializeEip1559(transaction, signature) { - if (transaction.gasPrice != null) { - var gasPrice = bignumber_1.BigNumber.from(transaction.gasPrice); - var maxFeePerGas = bignumber_1.BigNumber.from(transaction.maxFeePerGas || 0); - if (!gasPrice.eq(maxFeePerGas)) { - logger.throwArgumentError("mismatch EIP-1559 gasPrice != maxFeePerGas", "tx", { - gasPrice, - maxFeePerGas - }); - } - } - var fields = [ - formatNumber(transaction.chainId || 0, "chainId"), - formatNumber(transaction.nonce || 0, "nonce"), - formatNumber(transaction.maxPriorityFeePerGas || 0, "maxPriorityFeePerGas"), - formatNumber(transaction.maxFeePerGas || 0, "maxFeePerGas"), - formatNumber(transaction.gasLimit || 0, "gasLimit"), - transaction.to != null ? (0, address_1.getAddress)(transaction.to) : "0x", - formatNumber(transaction.value || 0, "value"), - transaction.data || "0x", - formatAccessList(transaction.accessList || []) - ]; - if (signature) { - var sig = (0, bytes_1.splitSignature)(signature); - fields.push(formatNumber(sig.recoveryParam, "recoveryParam")); - fields.push((0, bytes_1.stripZeros)(sig.r)); - fields.push((0, bytes_1.stripZeros)(sig.s)); - } - return (0, bytes_1.hexConcat)(["0x02", RLP.encode(fields)]); - } - function _serializeEip2930(transaction, signature) { - var fields = [ - formatNumber(transaction.chainId || 0, "chainId"), - formatNumber(transaction.nonce || 0, "nonce"), - formatNumber(transaction.gasPrice || 0, "gasPrice"), - formatNumber(transaction.gasLimit || 0, "gasLimit"), - transaction.to != null ? (0, address_1.getAddress)(transaction.to) : "0x", - formatNumber(transaction.value || 0, "value"), - transaction.data || "0x", - formatAccessList(transaction.accessList || []) - ]; - if (signature) { - var sig = (0, bytes_1.splitSignature)(signature); - fields.push(formatNumber(sig.recoveryParam, "recoveryParam")); - fields.push((0, bytes_1.stripZeros)(sig.r)); - fields.push((0, bytes_1.stripZeros)(sig.s)); - } - return (0, bytes_1.hexConcat)(["0x01", RLP.encode(fields)]); - } - function _serialize(transaction, signature) { - (0, properties_1.checkProperties)(transaction, allowedTransactionKeys); - var raw = []; - transactionFields.forEach(function(fieldInfo) { - var value = transaction[fieldInfo.name] || []; - var options = {}; - if (fieldInfo.numeric) { - options.hexPad = "left"; - } - value = (0, bytes_1.arrayify)((0, bytes_1.hexlify)(value, options)); - if (fieldInfo.length && value.length !== fieldInfo.length && value.length > 0) { - logger.throwArgumentError("invalid length for " + fieldInfo.name, "transaction:" + fieldInfo.name, value); - } - if (fieldInfo.maxLength) { - value = (0, bytes_1.stripZeros)(value); - if (value.length > fieldInfo.maxLength) { - logger.throwArgumentError("invalid length for " + fieldInfo.name, "transaction:" + fieldInfo.name, value); - } - } - raw.push((0, bytes_1.hexlify)(value)); - }); - var chainId = 0; - if (transaction.chainId != null) { - chainId = transaction.chainId; - if (typeof chainId !== "number") { - logger.throwArgumentError("invalid transaction.chainId", "transaction", transaction); - } - } else if (signature && !(0, bytes_1.isBytesLike)(signature) && signature.v > 28) { - chainId = Math.floor((signature.v - 35) / 2); - } - if (chainId !== 0) { - raw.push((0, bytes_1.hexlify)(chainId)); - raw.push("0x"); - raw.push("0x"); - } - if (!signature) { - return RLP.encode(raw); - } - var sig = (0, bytes_1.splitSignature)(signature); - var v = 27 + sig.recoveryParam; - if (chainId !== 0) { - raw.pop(); - raw.pop(); - raw.pop(); - v += chainId * 2 + 8; - if (sig.v > 28 && sig.v !== v) { - logger.throwArgumentError("transaction.chainId/signature.v mismatch", "signature", signature); - } - } else if (sig.v !== v) { - logger.throwArgumentError("transaction.chainId/signature.v mismatch", "signature", signature); - } - raw.push((0, bytes_1.hexlify)(v)); - raw.push((0, bytes_1.stripZeros)((0, bytes_1.arrayify)(sig.r))); - raw.push((0, bytes_1.stripZeros)((0, bytes_1.arrayify)(sig.s))); - return RLP.encode(raw); - } - function serialize(transaction, signature) { - if (transaction.type == null || transaction.type === 0) { - if (transaction.accessList != null) { - logger.throwArgumentError("untyped transactions do not support accessList; include type: 1", "transaction", transaction); - } - return _serialize(transaction, signature); - } - switch (transaction.type) { - case 1: - return _serializeEip2930(transaction, signature); - case 2: - return _serializeEip1559(transaction, signature); - default: - break; - } - return logger.throwError("unsupported transaction type: " + transaction.type, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "serializeTransaction", - transactionType: transaction.type - }); - } - exports2.serialize = serialize; - function _parseEipSignature(tx, fields, serialize2) { - try { - var recid = handleNumber(fields[0]).toNumber(); - if (recid !== 0 && recid !== 1) { - throw new Error("bad recid"); - } - tx.v = recid; - } catch (error) { - logger.throwArgumentError("invalid v for transaction type: 1", "v", fields[0]); - } - tx.r = (0, bytes_1.hexZeroPad)(fields[1], 32); - tx.s = (0, bytes_1.hexZeroPad)(fields[2], 32); - try { - var digest = (0, keccak256_1.keccak256)(serialize2(tx)); - tx.from = recoverAddress(digest, { r: tx.r, s: tx.s, recoveryParam: tx.v }); - } catch (error) { - } - } - function _parseEip1559(payload) { - var transaction = RLP.decode(payload.slice(1)); - if (transaction.length !== 9 && transaction.length !== 12) { - logger.throwArgumentError("invalid component count for transaction type: 2", "payload", (0, bytes_1.hexlify)(payload)); - } - var maxPriorityFeePerGas = handleNumber(transaction[2]); - var maxFeePerGas = handleNumber(transaction[3]); - var tx = { - type: 2, - chainId: handleNumber(transaction[0]).toNumber(), - nonce: handleNumber(transaction[1]).toNumber(), - maxPriorityFeePerGas, - maxFeePerGas, - gasPrice: null, - gasLimit: handleNumber(transaction[4]), - to: handleAddress(transaction[5]), - value: handleNumber(transaction[6]), - data: transaction[7], - accessList: accessListify(transaction[8]) - }; - if (transaction.length === 9) { - return tx; - } - tx.hash = (0, keccak256_1.keccak256)(payload); - _parseEipSignature(tx, transaction.slice(9), _serializeEip1559); - return tx; - } - function _parseEip2930(payload) { - var transaction = RLP.decode(payload.slice(1)); - if (transaction.length !== 8 && transaction.length !== 11) { - logger.throwArgumentError("invalid component count for transaction type: 1", "payload", (0, bytes_1.hexlify)(payload)); - } - var tx = { - type: 1, - chainId: handleNumber(transaction[0]).toNumber(), - nonce: handleNumber(transaction[1]).toNumber(), - gasPrice: handleNumber(transaction[2]), - gasLimit: handleNumber(transaction[3]), - to: handleAddress(transaction[4]), - value: handleNumber(transaction[5]), - data: transaction[6], - accessList: accessListify(transaction[7]) - }; - if (transaction.length === 8) { - return tx; - } - tx.hash = (0, keccak256_1.keccak256)(payload); - _parseEipSignature(tx, transaction.slice(8), _serializeEip2930); - return tx; - } - function _parse(rawTransaction) { - var transaction = RLP.decode(rawTransaction); - if (transaction.length !== 9 && transaction.length !== 6) { - logger.throwArgumentError("invalid raw transaction", "rawTransaction", rawTransaction); - } - var tx = { - nonce: handleNumber(transaction[0]).toNumber(), - gasPrice: handleNumber(transaction[1]), - gasLimit: handleNumber(transaction[2]), - to: handleAddress(transaction[3]), - value: handleNumber(transaction[4]), - data: transaction[5], - chainId: 0 - }; - if (transaction.length === 6) { - return tx; - } - try { - tx.v = bignumber_1.BigNumber.from(transaction[6]).toNumber(); - } catch (error) { - return tx; - } - tx.r = (0, bytes_1.hexZeroPad)(transaction[7], 32); - tx.s = (0, bytes_1.hexZeroPad)(transaction[8], 32); - if (bignumber_1.BigNumber.from(tx.r).isZero() && bignumber_1.BigNumber.from(tx.s).isZero()) { - tx.chainId = tx.v; - tx.v = 0; - } else { - tx.chainId = Math.floor((tx.v - 35) / 2); - if (tx.chainId < 0) { - tx.chainId = 0; - } - var recoveryParam = tx.v - 27; - var raw = transaction.slice(0, 6); - if (tx.chainId !== 0) { - raw.push((0, bytes_1.hexlify)(tx.chainId)); - raw.push("0x"); - raw.push("0x"); - recoveryParam -= tx.chainId * 2 + 8; - } - var digest = (0, keccak256_1.keccak256)(RLP.encode(raw)); - try { - tx.from = recoverAddress(digest, { r: (0, bytes_1.hexlify)(tx.r), s: (0, bytes_1.hexlify)(tx.s), recoveryParam }); - } catch (error) { - } - tx.hash = (0, keccak256_1.keccak256)(rawTransaction); - } - tx.type = null; - return tx; - } - function parse(rawTransaction) { - var payload = (0, bytes_1.arrayify)(rawTransaction); - if (payload[0] > 127) { - return _parse(payload); - } - switch (payload[0]) { - case 1: - return _parseEip2930(payload); - case 2: - return _parseEip1559(payload); - default: - break; - } - return logger.throwError("unsupported transaction type: " + payload[0], logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "parseTransaction", - transactionType: payload[0] - }); - } - exports2.parse = parse; - } -}); - -// node_modules/@ethersproject/providers/lib/formatter.js -var require_formatter = __commonJS({ - "node_modules/@ethersproject/providers/lib/formatter.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.showThrottleMessage = exports2.isCommunityResource = exports2.isCommunityResourcable = exports2.Formatter = void 0; - var address_1 = require_lib14(); - var bignumber_1 = require_lib3(); - var bytes_1 = require_lib2(); - var constants_1 = require_lib9(); - var properties_1 = require_lib4(); - var transactions_1 = require_lib19(); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - var Formatter = ( - /** @class */ - function() { - function Formatter2() { - this.formats = this.getDefaultFormats(); - } - Formatter2.prototype.getDefaultFormats = function() { - var _this = this; - var formats = {}; - var address = this.address.bind(this); - var bigNumber = this.bigNumber.bind(this); - var blockTag = this.blockTag.bind(this); - var data = this.data.bind(this); - var hash = this.hash.bind(this); - var hex = this.hex.bind(this); - var number = this.number.bind(this); - var type = this.type.bind(this); - var strictData = function(v) { - return _this.data(v, true); - }; - formats.transaction = { - hash, - type, - accessList: Formatter2.allowNull(this.accessList.bind(this), null), - blockHash: Formatter2.allowNull(hash, null), - blockNumber: Formatter2.allowNull(number, null), - transactionIndex: Formatter2.allowNull(number, null), - confirmations: Formatter2.allowNull(number, null), - from: address, - // either (gasPrice) or (maxPriorityFeePerGas + maxFeePerGas) - // must be set - gasPrice: Formatter2.allowNull(bigNumber), - maxPriorityFeePerGas: Formatter2.allowNull(bigNumber), - maxFeePerGas: Formatter2.allowNull(bigNumber), - gasLimit: bigNumber, - to: Formatter2.allowNull(address, null), - value: bigNumber, - nonce: number, - data, - r: Formatter2.allowNull(this.uint256), - s: Formatter2.allowNull(this.uint256), - v: Formatter2.allowNull(number), - creates: Formatter2.allowNull(address, null), - raw: Formatter2.allowNull(data) - }; - formats.transactionRequest = { - from: Formatter2.allowNull(address), - nonce: Formatter2.allowNull(number), - gasLimit: Formatter2.allowNull(bigNumber), - gasPrice: Formatter2.allowNull(bigNumber), - maxPriorityFeePerGas: Formatter2.allowNull(bigNumber), - maxFeePerGas: Formatter2.allowNull(bigNumber), - to: Formatter2.allowNull(address), - value: Formatter2.allowNull(bigNumber), - data: Formatter2.allowNull(strictData), - type: Formatter2.allowNull(number), - accessList: Formatter2.allowNull(this.accessList.bind(this), null) - }; - formats.receiptLog = { - transactionIndex: number, - blockNumber: number, - transactionHash: hash, - address, - topics: Formatter2.arrayOf(hash), - data, - logIndex: number, - blockHash: hash - }; - formats.receipt = { - to: Formatter2.allowNull(this.address, null), - from: Formatter2.allowNull(this.address, null), - contractAddress: Formatter2.allowNull(address, null), - transactionIndex: number, - // should be allowNull(hash), but broken-EIP-658 support is handled in receipt - root: Formatter2.allowNull(hex), - gasUsed: bigNumber, - logsBloom: Formatter2.allowNull(data), - blockHash: hash, - transactionHash: hash, - logs: Formatter2.arrayOf(this.receiptLog.bind(this)), - blockNumber: number, - confirmations: Formatter2.allowNull(number, null), - cumulativeGasUsed: bigNumber, - effectiveGasPrice: Formatter2.allowNull(bigNumber), - status: Formatter2.allowNull(number), - type - }; - formats.block = { - hash: Formatter2.allowNull(hash), - parentHash: hash, - number, - timestamp: number, - nonce: Formatter2.allowNull(hex), - difficulty: this.difficulty.bind(this), - gasLimit: bigNumber, - gasUsed: bigNumber, - miner: Formatter2.allowNull(address), - extraData: data, - transactions: Formatter2.allowNull(Formatter2.arrayOf(hash)), - baseFeePerGas: Formatter2.allowNull(bigNumber) - }; - formats.blockWithTransactions = (0, properties_1.shallowCopy)(formats.block); - formats.blockWithTransactions.transactions = Formatter2.allowNull(Formatter2.arrayOf(this.transactionResponse.bind(this))); - formats.filter = { - fromBlock: Formatter2.allowNull(blockTag, void 0), - toBlock: Formatter2.allowNull(blockTag, void 0), - blockHash: Formatter2.allowNull(hash, void 0), - address: Formatter2.allowNull(address, void 0), - topics: Formatter2.allowNull(this.topics.bind(this), void 0) - }; - formats.filterLog = { - blockNumber: Formatter2.allowNull(number), - blockHash: Formatter2.allowNull(hash), - transactionIndex: number, - removed: Formatter2.allowNull(this.boolean.bind(this)), - address, - data: Formatter2.allowFalsish(data, "0x"), - topics: Formatter2.arrayOf(hash), - transactionHash: hash, - logIndex: number - }; - return formats; - }; - Formatter2.prototype.accessList = function(accessList) { - return (0, transactions_1.accessListify)(accessList || []); - }; - Formatter2.prototype.number = function(number) { - if (number === "0x") { - return 0; - } - return bignumber_1.BigNumber.from(number).toNumber(); - }; - Formatter2.prototype.type = function(number) { - if (number === "0x" || number == null) { - return 0; - } - return bignumber_1.BigNumber.from(number).toNumber(); - }; - Formatter2.prototype.bigNumber = function(value) { - return bignumber_1.BigNumber.from(value); - }; - Formatter2.prototype.boolean = function(value) { - if (typeof value === "boolean") { - return value; - } - if (typeof value === "string") { - value = value.toLowerCase(); - if (value === "true") { - return true; - } - if (value === "false") { - return false; - } - } - throw new Error("invalid boolean - " + value); - }; - Formatter2.prototype.hex = function(value, strict) { - if (typeof value === "string") { - if (!strict && value.substring(0, 2) !== "0x") { - value = "0x" + value; - } - if ((0, bytes_1.isHexString)(value)) { - return value.toLowerCase(); - } - } - return logger.throwArgumentError("invalid hash", "value", value); - }; - Formatter2.prototype.data = function(value, strict) { - var result = this.hex(value, strict); - if (result.length % 2 !== 0) { - throw new Error("invalid data; odd-length - " + value); - } - return result; - }; - Formatter2.prototype.address = function(value) { - return (0, address_1.getAddress)(value); - }; - Formatter2.prototype.callAddress = function(value) { - if (!(0, bytes_1.isHexString)(value, 32)) { - return null; - } - var address = (0, address_1.getAddress)((0, bytes_1.hexDataSlice)(value, 12)); - return address === constants_1.AddressZero ? null : address; - }; - Formatter2.prototype.contractAddress = function(value) { - return (0, address_1.getContractAddress)(value); - }; - Formatter2.prototype.blockTag = function(blockTag) { - if (blockTag == null) { - return "latest"; - } - if (blockTag === "earliest") { - return "0x0"; - } - switch (blockTag) { - case "earliest": - return "0x0"; - case "latest": - case "pending": - case "safe": - case "finalized": - return blockTag; - } - if (typeof blockTag === "number" || (0, bytes_1.isHexString)(blockTag)) { - return (0, bytes_1.hexValue)(blockTag); - } - throw new Error("invalid blockTag"); - }; - Formatter2.prototype.hash = function(value, strict) { - var result = this.hex(value, strict); - if ((0, bytes_1.hexDataLength)(result) !== 32) { - return logger.throwArgumentError("invalid hash", "value", value); - } - return result; - }; - Formatter2.prototype.difficulty = function(value) { - if (value == null) { - return null; - } - var v = bignumber_1.BigNumber.from(value); - try { - return v.toNumber(); - } catch (error) { - } - return null; - }; - Formatter2.prototype.uint256 = function(value) { - if (!(0, bytes_1.isHexString)(value)) { - throw new Error("invalid uint256"); - } - return (0, bytes_1.hexZeroPad)(value, 32); - }; - Formatter2.prototype._block = function(value, format) { - if (value.author != null && value.miner == null) { - value.miner = value.author; - } - var difficulty = value._difficulty != null ? value._difficulty : value.difficulty; - var result = Formatter2.check(format, value); - result._difficulty = difficulty == null ? null : bignumber_1.BigNumber.from(difficulty); - return result; - }; - Formatter2.prototype.block = function(value) { - return this._block(value, this.formats.block); - }; - Formatter2.prototype.blockWithTransactions = function(value) { - return this._block(value, this.formats.blockWithTransactions); - }; - Formatter2.prototype.transactionRequest = function(value) { - return Formatter2.check(this.formats.transactionRequest, value); - }; - Formatter2.prototype.transactionResponse = function(transaction) { - if (transaction.gas != null && transaction.gasLimit == null) { - transaction.gasLimit = transaction.gas; - } - if (transaction.to && bignumber_1.BigNumber.from(transaction.to).isZero()) { - transaction.to = "0x0000000000000000000000000000000000000000"; - } - if (transaction.input != null && transaction.data == null) { - transaction.data = transaction.input; - } - if (transaction.to == null && transaction.creates == null) { - transaction.creates = this.contractAddress(transaction); - } - if ((transaction.type === 1 || transaction.type === 2) && transaction.accessList == null) { - transaction.accessList = []; - } - var result = Formatter2.check(this.formats.transaction, transaction); - if (transaction.chainId != null) { - var chainId = transaction.chainId; - if ((0, bytes_1.isHexString)(chainId)) { - chainId = bignumber_1.BigNumber.from(chainId).toNumber(); - } - result.chainId = chainId; - } else { - var chainId = transaction.networkId; - if (chainId == null && result.v == null) { - chainId = transaction.chainId; - } - if ((0, bytes_1.isHexString)(chainId)) { - chainId = bignumber_1.BigNumber.from(chainId).toNumber(); - } - if (typeof chainId !== "number" && result.v != null) { - chainId = (result.v - 35) / 2; - if (chainId < 0) { - chainId = 0; - } - chainId = parseInt(chainId); - } - if (typeof chainId !== "number") { - chainId = 0; - } - result.chainId = chainId; - } - if (result.blockHash && result.blockHash.replace(/0/g, "") === "x") { - result.blockHash = null; - } - return result; - }; - Formatter2.prototype.transaction = function(value) { - return (0, transactions_1.parse)(value); - }; - Formatter2.prototype.receiptLog = function(value) { - return Formatter2.check(this.formats.receiptLog, value); - }; - Formatter2.prototype.receipt = function(value) { - var result = Formatter2.check(this.formats.receipt, value); - if (result.root != null) { - if (result.root.length <= 4) { - var value_1 = bignumber_1.BigNumber.from(result.root).toNumber(); - if (value_1 === 0 || value_1 === 1) { - if (result.status != null && result.status !== value_1) { - logger.throwArgumentError("alt-root-status/status mismatch", "value", { root: result.root, status: result.status }); - } - result.status = value_1; - delete result.root; - } else { - logger.throwArgumentError("invalid alt-root-status", "value.root", result.root); - } - } else if (result.root.length !== 66) { - logger.throwArgumentError("invalid root hash", "value.root", result.root); - } - } - if (result.status != null) { - result.byzantium = true; - } - return result; - }; - Formatter2.prototype.topics = function(value) { - var _this = this; - if (Array.isArray(value)) { - return value.map(function(v) { - return _this.topics(v); - }); - } else if (value != null) { - return this.hash(value, true); - } - return null; - }; - Formatter2.prototype.filter = function(value) { - return Formatter2.check(this.formats.filter, value); - }; - Formatter2.prototype.filterLog = function(value) { - return Formatter2.check(this.formats.filterLog, value); - }; - Formatter2.check = function(format, object) { - var result = {}; - for (var key in format) { - try { - var value = format[key](object[key]); - if (value !== void 0) { - result[key] = value; - } - } catch (error) { - error.checkKey = key; - error.checkValue = object[key]; - throw error; - } - } - return result; - }; - Formatter2.allowNull = function(format, nullValue) { - return function(value) { - if (value == null) { - return nullValue; - } - return format(value); - }; - }; - Formatter2.allowFalsish = function(format, replaceValue) { - return function(value) { - if (!value) { - return replaceValue; - } - return format(value); - }; - }; - Formatter2.arrayOf = function(format) { - return function(array) { - if (!Array.isArray(array)) { - throw new Error("not an array"); - } - var result = []; - array.forEach(function(value) { - result.push(format(value)); - }); - return result; - }; - }; - return Formatter2; - }() - ); - exports2.Formatter = Formatter; - function isCommunityResourcable(value) { - return value && typeof value.isCommunityResource === "function"; - } - exports2.isCommunityResourcable = isCommunityResourcable; - function isCommunityResource(value) { - return isCommunityResourcable(value) && value.isCommunityResource(); - } - exports2.isCommunityResource = isCommunityResource; - var throttleMessage = false; - function showThrottleMessage() { - if (throttleMessage) { - return; - } - throttleMessage = true; - console.log("========= NOTICE ========="); - console.log("Request-Rate Exceeded (this message will not be repeated)"); - console.log(""); - console.log("The default API keys for each service are provided as a highly-throttled,"); - console.log("community resource for low-traffic projects and early prototyping."); - console.log(""); - console.log("While your application will continue to function, we highly recommended"); - console.log("signing up for your own API keys to improve performance, increase your"); - console.log("request rate/limit and enable other perks, such as metrics and advanced APIs."); - console.log(""); - console.log("For more details: https://docs.ethers.io/api-keys/"); - console.log("=========================="); - } - exports2.showThrottleMessage = showThrottleMessage; - } -}); - -// node_modules/@ethersproject/providers/lib/base-provider.js -var require_base_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/base-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - var __awaiter = exports2 && exports2.__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 = exports2 && exports2.__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 }; - } - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.BaseProvider = exports2.Resolver = exports2.Event = void 0; - var abstract_provider_1 = require_lib5(); - var base64_1 = require_lib7(); - var basex_1 = require_lib8(); - var bignumber_1 = require_lib3(); - var bytes_1 = require_lib2(); - var constants_1 = require_lib9(); - var hash_1 = require_lib15(); - var networks_1 = require_lib6(); - var properties_1 = require_lib4(); - var sha2_1 = require_lib16(); - var strings_1 = require_lib11(); - var web_1 = require_lib17(); - var bech32_1 = __importDefault(require_bech32()); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - var formatter_1 = require_formatter(); - var MAX_CCIP_REDIRECTS = 10; - function checkTopic(topic) { - if (topic == null) { - return "null"; - } - if ((0, bytes_1.hexDataLength)(topic) !== 32) { - logger.throwArgumentError("invalid topic", "topic", topic); - } - return topic.toLowerCase(); - } - function serializeTopics(topics) { - topics = topics.slice(); - while (topics.length > 0 && topics[topics.length - 1] == null) { - topics.pop(); - } - return topics.map(function(topic) { - if (Array.isArray(topic)) { - var unique_1 = {}; - topic.forEach(function(topic2) { - unique_1[checkTopic(topic2)] = true; - }); - var sorted = Object.keys(unique_1); - sorted.sort(); - return sorted.join("|"); - } else { - return checkTopic(topic); - } - }).join("&"); - } - function deserializeTopics(data) { - if (data === "") { - return []; - } - return data.split(/&/g).map(function(topic) { - if (topic === "") { - return []; - } - var comps = topic.split("|").map(function(topic2) { - return topic2 === "null" ? null : topic2; - }); - return comps.length === 1 ? comps[0] : comps; - }); - } - function getEventTag(eventName) { - if (typeof eventName === "string") { - eventName = eventName.toLowerCase(); - if ((0, bytes_1.hexDataLength)(eventName) === 32) { - return "tx:" + eventName; - } - if (eventName.indexOf(":") === -1) { - return eventName; - } - } else if (Array.isArray(eventName)) { - return "filter:*:" + serializeTopics(eventName); - } else if (abstract_provider_1.ForkEvent.isForkEvent(eventName)) { - logger.warn("not implemented"); - throw new Error("not implemented"); - } else if (eventName && typeof eventName === "object") { - return "filter:" + (eventName.address || "*") + ":" + serializeTopics(eventName.topics || []); - } - throw new Error("invalid event - " + eventName); - } - function getTime() { - return (/* @__PURE__ */ new Date()).getTime(); - } - function stall(duration) { - return new Promise(function(resolve) { - setTimeout(resolve, duration); - }); - } - var PollableEvents = ["block", "network", "pending", "poll"]; - var Event = ( - /** @class */ - function() { - function Event2(tag, listener, once) { - (0, properties_1.defineReadOnly)(this, "tag", tag); - (0, properties_1.defineReadOnly)(this, "listener", listener); - (0, properties_1.defineReadOnly)(this, "once", once); - this._lastBlockNumber = -2; - this._inflight = false; - } - Object.defineProperty(Event2.prototype, "event", { - get: function() { - switch (this.type) { - case "tx": - return this.hash; - case "filter": - return this.filter; - } - return this.tag; - }, - enumerable: false, - configurable: true - }); - Object.defineProperty(Event2.prototype, "type", { - get: function() { - return this.tag.split(":")[0]; - }, - enumerable: false, - configurable: true - }); - Object.defineProperty(Event2.prototype, "hash", { - get: function() { - var comps = this.tag.split(":"); - if (comps[0] !== "tx") { - return null; - } - return comps[1]; - }, - enumerable: false, - configurable: true - }); - Object.defineProperty(Event2.prototype, "filter", { - get: function() { - var comps = this.tag.split(":"); - if (comps[0] !== "filter") { - return null; - } - var address = comps[1]; - var topics = deserializeTopics(comps[2]); - var filter2 = {}; - if (topics.length > 0) { - filter2.topics = topics; - } - if (address && address !== "*") { - filter2.address = address; - } - return filter2; - }, - enumerable: false, - configurable: true - }); - Event2.prototype.pollable = function() { - return this.tag.indexOf(":") >= 0 || PollableEvents.indexOf(this.tag) >= 0; - }; - return Event2; - }() - ); - exports2.Event = Event; - var coinInfos = { - "0": { symbol: "btc", p2pkh: 0, p2sh: 5, prefix: "bc" }, - "2": { symbol: "ltc", p2pkh: 48, p2sh: 50, prefix: "ltc" }, - "3": { symbol: "doge", p2pkh: 30, p2sh: 22 }, - "60": { symbol: "eth", ilk: "eth" }, - "61": { symbol: "etc", ilk: "eth" }, - "700": { symbol: "xdai", ilk: "eth" } - }; - function bytes32ify(value) { - return (0, bytes_1.hexZeroPad)(bignumber_1.BigNumber.from(value).toHexString(), 32); - } - function base58Encode(data) { - return basex_1.Base58.encode((0, bytes_1.concat)([data, (0, bytes_1.hexDataSlice)((0, sha2_1.sha256)((0, sha2_1.sha256)(data)), 0, 4)])); - } - var matcherIpfs = new RegExp("^(ipfs)://(.*)$", "i"); - var matchers = [ - new RegExp("^(https)://(.*)$", "i"), - new RegExp("^(data):(.*)$", "i"), - matcherIpfs, - new RegExp("^eip155:[0-9]+/(erc[0-9]+):(.*)$", "i") - ]; - function _parseString(result, start) { - try { - return (0, strings_1.toUtf8String)(_parseBytes(result, start)); - } catch (error) { - } - return null; - } - function _parseBytes(result, start) { - if (result === "0x") { - return null; - } - var offset = bignumber_1.BigNumber.from((0, bytes_1.hexDataSlice)(result, start, start + 32)).toNumber(); - var length = bignumber_1.BigNumber.from((0, bytes_1.hexDataSlice)(result, offset, offset + 32)).toNumber(); - return (0, bytes_1.hexDataSlice)(result, offset + 32, offset + 32 + length); - } - function getIpfsLink(link) { - if (link.match(/^ipfs:\/\/ipfs\//i)) { - link = link.substring(12); - } else if (link.match(/^ipfs:\/\//i)) { - link = link.substring(7); - } else { - logger.throwArgumentError("unsupported IPFS format", "link", link); - } - return "https://gateway.ipfs.io/ipfs/" + link; - } - function numPad(value) { - var result = (0, bytes_1.arrayify)(value); - if (result.length > 32) { - throw new Error("internal; should not happen"); - } - var padded = new Uint8Array(32); - padded.set(result, 32 - result.length); - return padded; - } - function bytesPad(value) { - if (value.length % 32 === 0) { - return value; - } - var result = new Uint8Array(Math.ceil(value.length / 32) * 32); - result.set(value); - return result; - } - function encodeBytes(datas) { - var result = []; - var byteCount = 0; - for (var i = 0; i < datas.length; i++) { - result.push(null); - byteCount += 32; - } - for (var i = 0; i < datas.length; i++) { - var data = (0, bytes_1.arrayify)(datas[i]); - result[i] = numPad(byteCount); - result.push(numPad(data.length)); - result.push(bytesPad(data)); - byteCount += 32 + Math.ceil(data.length / 32) * 32; - } - return (0, bytes_1.hexConcat)(result); - } - var Resolver = ( - /** @class */ - function() { - function Resolver2(provider, address, name, resolvedAddress) { - (0, properties_1.defineReadOnly)(this, "provider", provider); - (0, properties_1.defineReadOnly)(this, "name", name); - (0, properties_1.defineReadOnly)(this, "address", provider.formatter.address(address)); - (0, properties_1.defineReadOnly)(this, "_resolvedAddress", resolvedAddress); - } - Resolver2.prototype.supportsWildcard = function() { - var _this = this; - if (!this._supportsEip2544) { - this._supportsEip2544 = this.provider.call({ - to: this.address, - data: "0x01ffc9a79061b92300000000000000000000000000000000000000000000000000000000" - }).then(function(result) { - return bignumber_1.BigNumber.from(result).eq(1); - }).catch(function(error) { - if (error.code === logger_1.Logger.errors.CALL_EXCEPTION) { - return false; - } - _this._supportsEip2544 = null; - throw error; - }); - } - return this._supportsEip2544; - }; - Resolver2.prototype._fetch = function(selector, parameters) { - return __awaiter(this, void 0, void 0, function() { - var tx, parseBytes, result, error_1; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - tx = { - to: this.address, - ccipReadEnabled: true, - data: (0, bytes_1.hexConcat)([selector, (0, hash_1.namehash)(this.name), parameters || "0x"]) - }; - parseBytes = false; - return [4, this.supportsWildcard()]; - case 1: - if (_a.sent()) { - parseBytes = true; - tx.data = (0, bytes_1.hexConcat)(["0x9061b923", encodeBytes([(0, hash_1.dnsEncode)(this.name), tx.data])]); - } - _a.label = 2; - case 2: - _a.trys.push([2, 4, , 5]); - return [4, this.provider.call(tx)]; - case 3: - result = _a.sent(); - if ((0, bytes_1.arrayify)(result).length % 32 === 4) { - logger.throwError("resolver threw error", logger_1.Logger.errors.CALL_EXCEPTION, { - transaction: tx, - data: result - }); - } - if (parseBytes) { - result = _parseBytes(result, 0); - } - return [2, result]; - case 4: - error_1 = _a.sent(); - if (error_1.code === logger_1.Logger.errors.CALL_EXCEPTION) { - return [2, null]; - } - throw error_1; - case 5: - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - Resolver2.prototype._fetchBytes = function(selector, parameters) { - return __awaiter(this, void 0, void 0, function() { - var result; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this._fetch(selector, parameters)]; - case 1: - result = _a.sent(); - if (result != null) { - return [2, _parseBytes(result, 0)]; - } - return [2, null]; - } - }); - }); - }; - Resolver2.prototype._getAddress = function(coinType, hexBytes) { - var coinInfo = coinInfos[String(coinType)]; - if (coinInfo == null) { - logger.throwError("unsupported coin type: " + coinType, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "getAddress(" + coinType + ")" - }); - } - if (coinInfo.ilk === "eth") { - return this.provider.formatter.address(hexBytes); - } - var bytes = (0, bytes_1.arrayify)(hexBytes); - if (coinInfo.p2pkh != null) { - var p2pkh = hexBytes.match(/^0x76a9([0-9a-f][0-9a-f])([0-9a-f]*)88ac$/); - if (p2pkh) { - var length_1 = parseInt(p2pkh[1], 16); - if (p2pkh[2].length === length_1 * 2 && length_1 >= 1 && length_1 <= 75) { - return base58Encode((0, bytes_1.concat)([[coinInfo.p2pkh], "0x" + p2pkh[2]])); - } - } - } - if (coinInfo.p2sh != null) { - var p2sh = hexBytes.match(/^0xa9([0-9a-f][0-9a-f])([0-9a-f]*)87$/); - if (p2sh) { - var length_2 = parseInt(p2sh[1], 16); - if (p2sh[2].length === length_2 * 2 && length_2 >= 1 && length_2 <= 75) { - return base58Encode((0, bytes_1.concat)([[coinInfo.p2sh], "0x" + p2sh[2]])); - } - } - } - if (coinInfo.prefix != null) { - var length_3 = bytes[1]; - var version_1 = bytes[0]; - if (version_1 === 0) { - if (length_3 !== 20 && length_3 !== 32) { - version_1 = -1; - } - } else { - version_1 = -1; - } - if (version_1 >= 0 && bytes.length === 2 + length_3 && length_3 >= 1 && length_3 <= 75) { - var words = bech32_1.default.toWords(bytes.slice(2)); - words.unshift(version_1); - return bech32_1.default.encode(coinInfo.prefix, words); - } - } - return null; - }; - Resolver2.prototype.getAddress = function(coinType) { - return __awaiter(this, void 0, void 0, function() { - var result, error_2, hexBytes, address; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - if (coinType == null) { - coinType = 60; - } - if (!(coinType === 60)) - return [3, 4]; - _a.label = 1; - case 1: - _a.trys.push([1, 3, , 4]); - return [4, this._fetch("0x3b3b57de")]; - case 2: - result = _a.sent(); - if (result === "0x" || result === constants_1.HashZero) { - return [2, null]; - } - return [2, this.provider.formatter.callAddress(result)]; - case 3: - error_2 = _a.sent(); - if (error_2.code === logger_1.Logger.errors.CALL_EXCEPTION) { - return [2, null]; - } - throw error_2; - case 4: - return [4, this._fetchBytes("0xf1cb7e06", bytes32ify(coinType))]; - case 5: - hexBytes = _a.sent(); - if (hexBytes == null || hexBytes === "0x") { - return [2, null]; - } - address = this._getAddress(coinType, hexBytes); - if (address == null) { - logger.throwError("invalid or unsupported coin data", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "getAddress(" + coinType + ")", - coinType, - data: hexBytes - }); - } - return [2, address]; - } - }); - }); - }; - Resolver2.prototype.getAvatar = function() { - return __awaiter(this, void 0, void 0, function() { - var linkage, avatar, i, match, scheme, _a, selector, owner, _b, comps, addr, tokenId, tokenOwner, _c, _d, balance, _e, _f, tx, metadataUrl, _g, metadata, imageUrl, ipfs, error_3; - return __generator(this, function(_h) { - switch (_h.label) { - case 0: - linkage = [{ type: "name", content: this.name }]; - _h.label = 1; - case 1: - _h.trys.push([1, 19, , 20]); - return [4, this.getText("avatar")]; - case 2: - avatar = _h.sent(); - if (avatar == null) { - return [2, null]; - } - i = 0; - _h.label = 3; - case 3: - if (!(i < matchers.length)) - return [3, 18]; - match = avatar.match(matchers[i]); - if (match == null) { - return [3, 17]; - } - scheme = match[1].toLowerCase(); - _a = scheme; - switch (_a) { - case "https": - return [3, 4]; - case "data": - return [3, 5]; - case "ipfs": - return [3, 6]; - case "erc721": - return [3, 7]; - case "erc1155": - return [3, 7]; - } - return [3, 17]; - case 4: - linkage.push({ type: "url", content: avatar }); - return [2, { linkage, url: avatar }]; - case 5: - linkage.push({ type: "data", content: avatar }); - return [2, { linkage, url: avatar }]; - case 6: - linkage.push({ type: "ipfs", content: avatar }); - return [2, { linkage, url: getIpfsLink(avatar) }]; - case 7: - selector = scheme === "erc721" ? "0xc87b56dd" : "0x0e89341c"; - linkage.push({ type: scheme, content: avatar }); - _b = this._resolvedAddress; - if (_b) - return [3, 9]; - return [4, this.getAddress()]; - case 8: - _b = _h.sent(); - _h.label = 9; - case 9: - owner = _b; - comps = (match[2] || "").split("/"); - if (comps.length !== 2) { - return [2, null]; - } - return [4, this.provider.formatter.address(comps[0])]; - case 10: - addr = _h.sent(); - tokenId = (0, bytes_1.hexZeroPad)(bignumber_1.BigNumber.from(comps[1]).toHexString(), 32); - if (!(scheme === "erc721")) - return [3, 12]; - _d = (_c = this.provider.formatter).callAddress; - return [4, this.provider.call({ - to: addr, - data: (0, bytes_1.hexConcat)(["0x6352211e", tokenId]) - })]; - case 11: - tokenOwner = _d.apply(_c, [_h.sent()]); - if (owner !== tokenOwner) { - return [2, null]; - } - linkage.push({ type: "owner", content: tokenOwner }); - return [3, 14]; - case 12: - if (!(scheme === "erc1155")) - return [3, 14]; - _f = (_e = bignumber_1.BigNumber).from; - return [4, this.provider.call({ - to: addr, - data: (0, bytes_1.hexConcat)(["0x00fdd58e", (0, bytes_1.hexZeroPad)(owner, 32), tokenId]) - })]; - case 13: - balance = _f.apply(_e, [_h.sent()]); - if (balance.isZero()) { - return [2, null]; - } - linkage.push({ type: "balance", content: balance.toString() }); - _h.label = 14; - case 14: - tx = { - to: this.provider.formatter.address(comps[0]), - data: (0, bytes_1.hexConcat)([selector, tokenId]) - }; - _g = _parseString; - return [4, this.provider.call(tx)]; - case 15: - metadataUrl = _g.apply(void 0, [_h.sent(), 0]); - if (metadataUrl == null) { - return [2, null]; - } - linkage.push({ type: "metadata-url-base", content: metadataUrl }); - if (scheme === "erc1155") { - metadataUrl = metadataUrl.replace("{id}", tokenId.substring(2)); - linkage.push({ type: "metadata-url-expanded", content: metadataUrl }); - } - if (metadataUrl.match(/^ipfs:/i)) { - metadataUrl = getIpfsLink(metadataUrl); - } - linkage.push({ type: "metadata-url", content: metadataUrl }); - return [4, (0, web_1.fetchJson)(metadataUrl)]; - case 16: - metadata = _h.sent(); - if (!metadata) { - return [2, null]; - } - linkage.push({ type: "metadata", content: JSON.stringify(metadata) }); - imageUrl = metadata.image; - if (typeof imageUrl !== "string") { - return [2, null]; - } - if (imageUrl.match(/^(https:\/\/|data:)/i)) { - } else { - ipfs = imageUrl.match(matcherIpfs); - if (ipfs == null) { - return [2, null]; - } - linkage.push({ type: "url-ipfs", content: imageUrl }); - imageUrl = getIpfsLink(imageUrl); - } - linkage.push({ type: "url", content: imageUrl }); - return [2, { linkage, url: imageUrl }]; - case 17: - i++; - return [3, 3]; - case 18: - return [3, 20]; - case 19: - error_3 = _h.sent(); - return [3, 20]; - case 20: - return [2, null]; - } - }); - }); - }; - Resolver2.prototype.getContentHash = function() { - return __awaiter(this, void 0, void 0, function() { - var hexBytes, ipfs, length_4, ipns, length_5, swarm, skynet, urlSafe_1, hash; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this._fetchBytes("0xbc1c58d1")]; - case 1: - hexBytes = _a.sent(); - if (hexBytes == null || hexBytes === "0x") { - return [2, null]; - } - ipfs = hexBytes.match(/^0xe3010170(([0-9a-f][0-9a-f])([0-9a-f][0-9a-f])([0-9a-f]*))$/); - if (ipfs) { - length_4 = parseInt(ipfs[3], 16); - if (ipfs[4].length === length_4 * 2) { - return [2, "ipfs://" + basex_1.Base58.encode("0x" + ipfs[1])]; - } - } - ipns = hexBytes.match(/^0xe5010172(([0-9a-f][0-9a-f])([0-9a-f][0-9a-f])([0-9a-f]*))$/); - if (ipns) { - length_5 = parseInt(ipns[3], 16); - if (ipns[4].length === length_5 * 2) { - return [2, "ipns://" + basex_1.Base58.encode("0x" + ipns[1])]; - } - } - swarm = hexBytes.match(/^0xe40101fa011b20([0-9a-f]*)$/); - if (swarm) { - if (swarm[1].length === 32 * 2) { - return [2, "bzz://" + swarm[1]]; - } - } - skynet = hexBytes.match(/^0x90b2c605([0-9a-f]*)$/); - if (skynet) { - if (skynet[1].length === 34 * 2) { - urlSafe_1 = { "=": "", "+": "-", "/": "_" }; - hash = (0, base64_1.encode)("0x" + skynet[1]).replace(/[=+\/]/g, function(a) { - return urlSafe_1[a]; - }); - return [2, "sia://" + hash]; - } - } - return [2, logger.throwError("invalid or unsupported content hash data", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "getContentHash()", - data: hexBytes - })]; - } - }); - }); - }; - Resolver2.prototype.getText = function(key) { - return __awaiter(this, void 0, void 0, function() { - var keyBytes, hexBytes; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - keyBytes = (0, strings_1.toUtf8Bytes)(key); - keyBytes = (0, bytes_1.concat)([bytes32ify(64), bytes32ify(keyBytes.length), keyBytes]); - if (keyBytes.length % 32 !== 0) { - keyBytes = (0, bytes_1.concat)([keyBytes, (0, bytes_1.hexZeroPad)("0x", 32 - key.length % 32)]); - } - return [4, this._fetchBytes("0x59d1d43c", (0, bytes_1.hexlify)(keyBytes))]; - case 1: - hexBytes = _a.sent(); - if (hexBytes == null || hexBytes === "0x") { - return [2, null]; - } - return [2, (0, strings_1.toUtf8String)(hexBytes)]; - } - }); - }); - }; - return Resolver2; - }() - ); - exports2.Resolver = Resolver; - var defaultFormatter = null; - var nextPollId = 1; - var BaseProvider = ( - /** @class */ - function(_super) { - __extends(BaseProvider2, _super); - function BaseProvider2(network) { - var _newTarget = this.constructor; - var _this = _super.call(this) || this; - _this._events = []; - _this._emitted = { block: -2 }; - _this.disableCcipRead = false; - _this.formatter = _newTarget.getFormatter(); - (0, properties_1.defineReadOnly)(_this, "anyNetwork", network === "any"); - if (_this.anyNetwork) { - network = _this.detectNetwork(); - } - if (network instanceof Promise) { - _this._networkPromise = network; - network.catch(function(error) { - }); - _this._ready().catch(function(error) { - }); - } else { - var knownNetwork = (0, properties_1.getStatic)(_newTarget, "getNetwork")(network); - if (knownNetwork) { - (0, properties_1.defineReadOnly)(_this, "_network", knownNetwork); - _this.emit("network", knownNetwork, null); - } else { - logger.throwArgumentError("invalid network", "network", network); - } - } - _this._maxInternalBlockNumber = -1024; - _this._lastBlockNumber = -2; - _this._maxFilterBlockRange = 10; - _this._pollingInterval = 4e3; - _this._fastQueryDate = 0; - return _this; - } - BaseProvider2.prototype._ready = function() { - return __awaiter(this, void 0, void 0, function() { - var network, error_4; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - if (!(this._network == null)) - return [3, 7]; - network = null; - if (!this._networkPromise) - return [3, 4]; - _a.label = 1; - case 1: - _a.trys.push([1, 3, , 4]); - return [4, this._networkPromise]; - case 2: - network = _a.sent(); - return [3, 4]; - case 3: - error_4 = _a.sent(); - return [3, 4]; - case 4: - if (!(network == null)) - return [3, 6]; - return [4, this.detectNetwork()]; - case 5: - network = _a.sent(); - _a.label = 6; - case 6: - if (!network) { - logger.throwError("no network detected", logger_1.Logger.errors.UNKNOWN_ERROR, {}); - } - if (this._network == null) { - if (this.anyNetwork) { - this._network = network; - } else { - (0, properties_1.defineReadOnly)(this, "_network", network); - } - this.emit("network", network, null); - } - _a.label = 7; - case 7: - return [2, this._network]; - } - }); - }); - }; - Object.defineProperty(BaseProvider2.prototype, "ready", { - // This will always return the most recently established network. - // For "any", this can change (a "network" event is emitted before - // any change is reflected); otherwise this cannot change - get: function() { - var _this = this; - return (0, web_1.poll)(function() { - return _this._ready().then(function(network) { - return network; - }, function(error) { - if (error.code === logger_1.Logger.errors.NETWORK_ERROR && error.event === "noNetwork") { - return void 0; - } - throw error; - }); - }); - }, - enumerable: false, - configurable: true - }); - BaseProvider2.getFormatter = function() { - if (defaultFormatter == null) { - defaultFormatter = new formatter_1.Formatter(); - } - return defaultFormatter; - }; - BaseProvider2.getNetwork = function(network) { - return (0, networks_1.getNetwork)(network == null ? "homestead" : network); - }; - BaseProvider2.prototype.ccipReadFetch = function(tx, calldata, urls) { - return __awaiter(this, void 0, void 0, function() { - var sender, data, errorMessages, i, url2, href, json, result, errorMessage; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - if (this.disableCcipRead || urls.length === 0) { - return [2, null]; - } - sender = tx.to.toLowerCase(); - data = calldata.toLowerCase(); - errorMessages = []; - i = 0; - _a.label = 1; - case 1: - if (!(i < urls.length)) - return [3, 4]; - url2 = urls[i]; - href = url2.replace("{sender}", sender).replace("{data}", data); - json = url2.indexOf("{data}") >= 0 ? null : JSON.stringify({ data, sender }); - return [4, (0, web_1.fetchJson)({ url: href, errorPassThrough: true }, json, function(value, response) { - value.status = response.statusCode; - return value; - })]; - case 2: - result = _a.sent(); - if (result.data) { - return [2, result.data]; - } - errorMessage = result.message || "unknown error"; - if (result.status >= 400 && result.status < 500) { - return [2, logger.throwError("response not found during CCIP fetch: " + errorMessage, logger_1.Logger.errors.SERVER_ERROR, { url: url2, errorMessage })]; - } - errorMessages.push(errorMessage); - _a.label = 3; - case 3: - i++; - return [3, 1]; - case 4: - return [2, logger.throwError("error encountered during CCIP fetch: " + errorMessages.map(function(m) { - return JSON.stringify(m); - }).join(", "), logger_1.Logger.errors.SERVER_ERROR, { - urls, - errorMessages - })]; - } - }); - }); - }; - BaseProvider2.prototype._getInternalBlockNumber = function(maxAge) { - return __awaiter(this, void 0, void 0, function() { - var internalBlockNumber, result, error_5, reqTime, checkInternalBlockNumber; - var _this = this; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this._ready()]; - case 1: - _a.sent(); - if (!(maxAge > 0)) - return [3, 7]; - _a.label = 2; - case 2: - if (!this._internalBlockNumber) - return [3, 7]; - internalBlockNumber = this._internalBlockNumber; - _a.label = 3; - case 3: - _a.trys.push([3, 5, , 6]); - return [4, internalBlockNumber]; - case 4: - result = _a.sent(); - if (getTime() - result.respTime <= maxAge) { - return [2, result.blockNumber]; - } - return [3, 7]; - case 5: - error_5 = _a.sent(); - if (this._internalBlockNumber === internalBlockNumber) { - return [3, 7]; - } - return [3, 6]; - case 6: - return [3, 2]; - case 7: - reqTime = getTime(); - checkInternalBlockNumber = (0, properties_1.resolveProperties)({ - blockNumber: this.perform("getBlockNumber", {}), - networkError: this.getNetwork().then(function(network) { - return null; - }, function(error) { - return error; - }) - }).then(function(_a2) { - var blockNumber = _a2.blockNumber, networkError = _a2.networkError; - if (networkError) { - if (_this._internalBlockNumber === checkInternalBlockNumber) { - _this._internalBlockNumber = null; - } - throw networkError; - } - var respTime = getTime(); - blockNumber = bignumber_1.BigNumber.from(blockNumber).toNumber(); - if (blockNumber < _this._maxInternalBlockNumber) { - blockNumber = _this._maxInternalBlockNumber; - } - _this._maxInternalBlockNumber = blockNumber; - _this._setFastBlockNumber(blockNumber); - return { blockNumber, reqTime, respTime }; - }); - this._internalBlockNumber = checkInternalBlockNumber; - checkInternalBlockNumber.catch(function(error) { - if (_this._internalBlockNumber === checkInternalBlockNumber) { - _this._internalBlockNumber = null; - } - }); - return [4, checkInternalBlockNumber]; - case 8: - return [2, _a.sent().blockNumber]; - } - }); - }); - }; - BaseProvider2.prototype.poll = function() { - return __awaiter(this, void 0, void 0, function() { - var pollId, runners, blockNumber, error_6, i; - var _this = this; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - pollId = nextPollId++; - runners = []; - blockNumber = null; - _a.label = 1; - case 1: - _a.trys.push([1, 3, , 4]); - return [4, this._getInternalBlockNumber(100 + this.pollingInterval / 2)]; - case 2: - blockNumber = _a.sent(); - return [3, 4]; - case 3: - error_6 = _a.sent(); - this.emit("error", error_6); - return [ - 2 - /*return*/ - ]; - case 4: - this._setFastBlockNumber(blockNumber); - this.emit("poll", pollId, blockNumber); - if (blockNumber === this._lastBlockNumber) { - this.emit("didPoll", pollId); - return [ - 2 - /*return*/ - ]; - } - if (this._emitted.block === -2) { - this._emitted.block = blockNumber - 1; - } - if (Math.abs(this._emitted.block - blockNumber) > 1e3) { - logger.warn("network block skew detected; skipping block events (emitted=" + this._emitted.block + " blockNumber" + blockNumber + ")"); - this.emit("error", logger.makeError("network block skew detected", logger_1.Logger.errors.NETWORK_ERROR, { - blockNumber, - event: "blockSkew", - previousBlockNumber: this._emitted.block - })); - this.emit("block", blockNumber); - } else { - for (i = this._emitted.block + 1; i <= blockNumber; i++) { - this.emit("block", i); - } - } - if (this._emitted.block !== blockNumber) { - this._emitted.block = blockNumber; - Object.keys(this._emitted).forEach(function(key) { - if (key === "block") { - return; - } - var eventBlockNumber = _this._emitted[key]; - if (eventBlockNumber === "pending") { - return; - } - if (blockNumber - eventBlockNumber > 12) { - delete _this._emitted[key]; - } - }); - } - if (this._lastBlockNumber === -2) { - this._lastBlockNumber = blockNumber - 1; - } - this._events.forEach(function(event) { - switch (event.type) { - case "tx": { - var hash_2 = event.hash; - var runner = _this.getTransactionReceipt(hash_2).then(function(receipt) { - if (!receipt || receipt.blockNumber == null) { - return null; - } - _this._emitted["t:" + hash_2] = receipt.blockNumber; - _this.emit(hash_2, receipt); - return null; - }).catch(function(error) { - _this.emit("error", error); - }); - runners.push(runner); - break; - } - case "filter": { - if (!event._inflight) { - event._inflight = true; - if (event._lastBlockNumber === -2) { - event._lastBlockNumber = blockNumber - 1; - } - var filter_1 = event.filter; - filter_1.fromBlock = event._lastBlockNumber + 1; - filter_1.toBlock = blockNumber; - var minFromBlock = filter_1.toBlock - _this._maxFilterBlockRange; - if (minFromBlock > filter_1.fromBlock) { - filter_1.fromBlock = minFromBlock; - } - if (filter_1.fromBlock < 0) { - filter_1.fromBlock = 0; - } - var runner = _this.getLogs(filter_1).then(function(logs) { - event._inflight = false; - if (logs.length === 0) { - return; - } - logs.forEach(function(log) { - if (log.blockNumber > event._lastBlockNumber) { - event._lastBlockNumber = log.blockNumber; - } - _this._emitted["b:" + log.blockHash] = log.blockNumber; - _this._emitted["t:" + log.transactionHash] = log.blockNumber; - _this.emit(filter_1, log); - }); - }).catch(function(error) { - _this.emit("error", error); - event._inflight = false; - }); - runners.push(runner); - } - break; - } - } - }); - this._lastBlockNumber = blockNumber; - Promise.all(runners).then(function() { - _this.emit("didPoll", pollId); - }).catch(function(error) { - _this.emit("error", error); - }); - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - BaseProvider2.prototype.resetEventsBlock = function(blockNumber) { - this._lastBlockNumber = blockNumber - 1; - if (this.polling) { - this.poll(); - } - }; - Object.defineProperty(BaseProvider2.prototype, "network", { - get: function() { - return this._network; - }, - enumerable: false, - configurable: true - }); - BaseProvider2.prototype.detectNetwork = function() { - return __awaiter(this, void 0, void 0, function() { - return __generator(this, function(_a) { - return [2, logger.throwError("provider does not support network detection", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "provider.detectNetwork" - })]; - }); - }); - }; - BaseProvider2.prototype.getNetwork = function() { - return __awaiter(this, void 0, void 0, function() { - var network, currentNetwork, error; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this._ready()]; - case 1: - network = _a.sent(); - return [4, this.detectNetwork()]; - case 2: - currentNetwork = _a.sent(); - if (!(network.chainId !== currentNetwork.chainId)) - return [3, 5]; - if (!this.anyNetwork) - return [3, 4]; - this._network = currentNetwork; - this._lastBlockNumber = -2; - this._fastBlockNumber = null; - this._fastBlockNumberPromise = null; - this._fastQueryDate = 0; - this._emitted.block = -2; - this._maxInternalBlockNumber = -1024; - this._internalBlockNumber = null; - this.emit("network", currentNetwork, network); - return [4, stall(0)]; - case 3: - _a.sent(); - return [2, this._network]; - case 4: - error = logger.makeError("underlying network changed", logger_1.Logger.errors.NETWORK_ERROR, { - event: "changed", - network, - detectedNetwork: currentNetwork - }); - this.emit("error", error); - throw error; - case 5: - return [2, network]; - } - }); - }); - }; - Object.defineProperty(BaseProvider2.prototype, "blockNumber", { - get: function() { - var _this = this; - this._getInternalBlockNumber(100 + this.pollingInterval / 2).then(function(blockNumber) { - _this._setFastBlockNumber(blockNumber); - }, function(error) { - }); - return this._fastBlockNumber != null ? this._fastBlockNumber : -1; - }, - enumerable: false, - configurable: true - }); - Object.defineProperty(BaseProvider2.prototype, "polling", { - get: function() { - return this._poller != null; - }, - set: function(value) { - var _this = this; - if (value && !this._poller) { - this._poller = setInterval(function() { - _this.poll(); - }, this.pollingInterval); - if (!this._bootstrapPoll) { - this._bootstrapPoll = setTimeout(function() { - _this.poll(); - _this._bootstrapPoll = setTimeout(function() { - if (!_this._poller) { - _this.poll(); - } - _this._bootstrapPoll = null; - }, _this.pollingInterval); - }, 0); - } - } else if (!value && this._poller) { - clearInterval(this._poller); - this._poller = null; - } - }, - enumerable: false, - configurable: true - }); - Object.defineProperty(BaseProvider2.prototype, "pollingInterval", { - get: function() { - return this._pollingInterval; - }, - set: function(value) { - var _this = this; - if (typeof value !== "number" || value <= 0 || parseInt(String(value)) != value) { - throw new Error("invalid polling interval"); - } - this._pollingInterval = value; - if (this._poller) { - clearInterval(this._poller); - this._poller = setInterval(function() { - _this.poll(); - }, this._pollingInterval); - } - }, - enumerable: false, - configurable: true - }); - BaseProvider2.prototype._getFastBlockNumber = function() { - var _this = this; - var now = getTime(); - if (now - this._fastQueryDate > 2 * this._pollingInterval) { - this._fastQueryDate = now; - this._fastBlockNumberPromise = this.getBlockNumber().then(function(blockNumber) { - if (_this._fastBlockNumber == null || blockNumber > _this._fastBlockNumber) { - _this._fastBlockNumber = blockNumber; - } - return _this._fastBlockNumber; - }); - } - return this._fastBlockNumberPromise; - }; - BaseProvider2.prototype._setFastBlockNumber = function(blockNumber) { - if (this._fastBlockNumber != null && blockNumber < this._fastBlockNumber) { - return; - } - this._fastQueryDate = getTime(); - if (this._fastBlockNumber == null || blockNumber > this._fastBlockNumber) { - this._fastBlockNumber = blockNumber; - this._fastBlockNumberPromise = Promise.resolve(blockNumber); - } - }; - BaseProvider2.prototype.waitForTransaction = function(transactionHash, confirmations, timeout) { - return __awaiter(this, void 0, void 0, function() { - return __generator(this, function(_a) { - return [2, this._waitForTransaction(transactionHash, confirmations == null ? 1 : confirmations, timeout || 0, null)]; - }); - }); - }; - BaseProvider2.prototype._waitForTransaction = function(transactionHash, confirmations, timeout, replaceable) { - return __awaiter(this, void 0, void 0, function() { - var receipt; - var _this = this; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this.getTransactionReceipt(transactionHash)]; - case 1: - receipt = _a.sent(); - if ((receipt ? receipt.confirmations : 0) >= confirmations) { - return [2, receipt]; - } - return [2, new Promise(function(resolve, reject) { - var cancelFuncs = []; - var done = false; - var alreadyDone = function() { - if (done) { - return true; - } - done = true; - cancelFuncs.forEach(function(func) { - func(); - }); - return false; - }; - var minedHandler = function(receipt2) { - if (receipt2.confirmations < confirmations) { - return; - } - if (alreadyDone()) { - return; - } - resolve(receipt2); - }; - _this.on(transactionHash, minedHandler); - cancelFuncs.push(function() { - _this.removeListener(transactionHash, minedHandler); - }); - if (replaceable) { - var lastBlockNumber_1 = replaceable.startBlock; - var scannedBlock_1 = null; - var replaceHandler_1 = function(blockNumber) { - return __awaiter(_this, void 0, void 0, function() { - var _this2 = this; - return __generator(this, function(_a2) { - switch (_a2.label) { - case 0: - if (done) { - return [ - 2 - /*return*/ - ]; - } - return [4, stall(1e3)]; - case 1: - _a2.sent(); - this.getTransactionCount(replaceable.from).then(function(nonce) { - return __awaiter(_this2, void 0, void 0, function() { - var mined, block, ti, tx, receipt_1, reason; - return __generator(this, function(_a3) { - switch (_a3.label) { - case 0: - if (done) { - return [ - 2 - /*return*/ - ]; - } - if (!(nonce <= replaceable.nonce)) - return [3, 1]; - lastBlockNumber_1 = blockNumber; - return [3, 9]; - case 1: - return [4, this.getTransaction(transactionHash)]; - case 2: - mined = _a3.sent(); - if (mined && mined.blockNumber != null) { - return [ - 2 - /*return*/ - ]; - } - if (scannedBlock_1 == null) { - scannedBlock_1 = lastBlockNumber_1 - 3; - if (scannedBlock_1 < replaceable.startBlock) { - scannedBlock_1 = replaceable.startBlock; - } - } - _a3.label = 3; - case 3: - if (!(scannedBlock_1 <= blockNumber)) - return [3, 9]; - if (done) { - return [ - 2 - /*return*/ - ]; - } - return [4, this.getBlockWithTransactions(scannedBlock_1)]; - case 4: - block = _a3.sent(); - ti = 0; - _a3.label = 5; - case 5: - if (!(ti < block.transactions.length)) - return [3, 8]; - tx = block.transactions[ti]; - if (tx.hash === transactionHash) { - return [ - 2 - /*return*/ - ]; - } - if (!(tx.from === replaceable.from && tx.nonce === replaceable.nonce)) - return [3, 7]; - if (done) { - return [ - 2 - /*return*/ - ]; - } - return [4, this.waitForTransaction(tx.hash, confirmations)]; - case 6: - receipt_1 = _a3.sent(); - if (alreadyDone()) { - return [ - 2 - /*return*/ - ]; - } - reason = "replaced"; - if (tx.data === replaceable.data && tx.to === replaceable.to && tx.value.eq(replaceable.value)) { - reason = "repriced"; - } else if (tx.data === "0x" && tx.from === tx.to && tx.value.isZero()) { - reason = "cancelled"; - } - reject(logger.makeError("transaction was replaced", logger_1.Logger.errors.TRANSACTION_REPLACED, { - cancelled: reason === "replaced" || reason === "cancelled", - reason, - replacement: this._wrapTransaction(tx), - hash: transactionHash, - receipt: receipt_1 - })); - return [ - 2 - /*return*/ - ]; - case 7: - ti++; - return [3, 5]; - case 8: - scannedBlock_1++; - return [3, 3]; - case 9: - if (done) { - return [ - 2 - /*return*/ - ]; - } - this.once("block", replaceHandler_1); - return [ - 2 - /*return*/ - ]; - } - }); - }); - }, function(error) { - if (done) { - return; - } - _this2.once("block", replaceHandler_1); - }); - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - if (done) { - return; - } - _this.once("block", replaceHandler_1); - cancelFuncs.push(function() { - _this.removeListener("block", replaceHandler_1); - }); - } - if (typeof timeout === "number" && timeout > 0) { - var timer_1 = setTimeout(function() { - if (alreadyDone()) { - return; - } - reject(logger.makeError("timeout exceeded", logger_1.Logger.errors.TIMEOUT, { timeout })); - }, timeout); - if (timer_1.unref) { - timer_1.unref(); - } - cancelFuncs.push(function() { - clearTimeout(timer_1); - }); - } - })]; - } - }); - }); - }; - BaseProvider2.prototype.getBlockNumber = function() { - return __awaiter(this, void 0, void 0, function() { - return __generator(this, function(_a) { - return [2, this._getInternalBlockNumber(0)]; - }); - }); - }; - BaseProvider2.prototype.getGasPrice = function() { - return __awaiter(this, void 0, void 0, function() { - var result; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this.getNetwork()]; - case 1: - _a.sent(); - return [4, this.perform("getGasPrice", {})]; - case 2: - result = _a.sent(); - try { - return [2, bignumber_1.BigNumber.from(result)]; - } catch (error) { - return [2, logger.throwError("bad result from backend", logger_1.Logger.errors.SERVER_ERROR, { - method: "getGasPrice", - result, - error - })]; - } - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - BaseProvider2.prototype.getBalance = function(addressOrName, blockTag) { - return __awaiter(this, void 0, void 0, function() { - var params, result; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this.getNetwork()]; - case 1: - _a.sent(); - return [4, (0, properties_1.resolveProperties)({ - address: this._getAddress(addressOrName), - blockTag: this._getBlockTag(blockTag) - })]; - case 2: - params = _a.sent(); - return [4, this.perform("getBalance", params)]; - case 3: - result = _a.sent(); - try { - return [2, bignumber_1.BigNumber.from(result)]; - } catch (error) { - return [2, logger.throwError("bad result from backend", logger_1.Logger.errors.SERVER_ERROR, { - method: "getBalance", - params, - result, - error - })]; - } - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - BaseProvider2.prototype.getTransactionCount = function(addressOrName, blockTag) { - return __awaiter(this, void 0, void 0, function() { - var params, result; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this.getNetwork()]; - case 1: - _a.sent(); - return [4, (0, properties_1.resolveProperties)({ - address: this._getAddress(addressOrName), - blockTag: this._getBlockTag(blockTag) - })]; - case 2: - params = _a.sent(); - return [4, this.perform("getTransactionCount", params)]; - case 3: - result = _a.sent(); - try { - return [2, bignumber_1.BigNumber.from(result).toNumber()]; - } catch (error) { - return [2, logger.throwError("bad result from backend", logger_1.Logger.errors.SERVER_ERROR, { - method: "getTransactionCount", - params, - result, - error - })]; - } - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - BaseProvider2.prototype.getCode = function(addressOrName, blockTag) { - return __awaiter(this, void 0, void 0, function() { - var params, result; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this.getNetwork()]; - case 1: - _a.sent(); - return [4, (0, properties_1.resolveProperties)({ - address: this._getAddress(addressOrName), - blockTag: this._getBlockTag(blockTag) - })]; - case 2: - params = _a.sent(); - return [4, this.perform("getCode", params)]; - case 3: - result = _a.sent(); - try { - return [2, (0, bytes_1.hexlify)(result)]; - } catch (error) { - return [2, logger.throwError("bad result from backend", logger_1.Logger.errors.SERVER_ERROR, { - method: "getCode", - params, - result, - error - })]; - } - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - BaseProvider2.prototype.getStorageAt = function(addressOrName, position, blockTag) { - return __awaiter(this, void 0, void 0, function() { - var params, result; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this.getNetwork()]; - case 1: - _a.sent(); - return [4, (0, properties_1.resolveProperties)({ - address: this._getAddress(addressOrName), - blockTag: this._getBlockTag(blockTag), - position: Promise.resolve(position).then(function(p) { - return (0, bytes_1.hexValue)(p); - }) - })]; - case 2: - params = _a.sent(); - return [4, this.perform("getStorageAt", params)]; - case 3: - result = _a.sent(); - try { - return [2, (0, bytes_1.hexlify)(result)]; - } catch (error) { - return [2, logger.throwError("bad result from backend", logger_1.Logger.errors.SERVER_ERROR, { - method: "getStorageAt", - params, - result, - error - })]; - } - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - BaseProvider2.prototype._wrapTransaction = function(tx, hash, startBlock) { - var _this = this; - if (hash != null && (0, bytes_1.hexDataLength)(hash) !== 32) { - throw new Error("invalid response - sendTransaction"); - } - var result = tx; - if (hash != null && tx.hash !== hash) { - logger.throwError("Transaction hash mismatch from Provider.sendTransaction.", logger_1.Logger.errors.UNKNOWN_ERROR, { expectedHash: tx.hash, returnedHash: hash }); - } - result.wait = function(confirms, timeout) { - return __awaiter(_this, void 0, void 0, function() { - var replacement, receipt; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - if (confirms == null) { - confirms = 1; - } - if (timeout == null) { - timeout = 0; - } - replacement = void 0; - if (confirms !== 0 && startBlock != null) { - replacement = { - data: tx.data, - from: tx.from, - nonce: tx.nonce, - to: tx.to, - value: tx.value, - startBlock - }; - } - return [4, this._waitForTransaction(tx.hash, confirms, timeout, replacement)]; - case 1: - receipt = _a.sent(); - if (receipt == null && confirms === 0) { - return [2, null]; - } - this._emitted["t:" + tx.hash] = receipt.blockNumber; - if (receipt.status === 0) { - logger.throwError("transaction failed", logger_1.Logger.errors.CALL_EXCEPTION, { - transactionHash: tx.hash, - transaction: tx, - receipt - }); - } - return [2, receipt]; - } - }); - }); - }; - return result; - }; - BaseProvider2.prototype.sendTransaction = function(signedTransaction) { - return __awaiter(this, void 0, void 0, function() { - var hexTx, tx, blockNumber, hash, error_7; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this.getNetwork()]; - case 1: - _a.sent(); - return [4, Promise.resolve(signedTransaction).then(function(t) { - return (0, bytes_1.hexlify)(t); - })]; - case 2: - hexTx = _a.sent(); - tx = this.formatter.transaction(signedTransaction); - if (tx.confirmations == null) { - tx.confirmations = 0; - } - return [4, this._getInternalBlockNumber(100 + 2 * this.pollingInterval)]; - case 3: - blockNumber = _a.sent(); - _a.label = 4; - case 4: - _a.trys.push([4, 6, , 7]); - return [4, this.perform("sendTransaction", { signedTransaction: hexTx })]; - case 5: - hash = _a.sent(); - return [2, this._wrapTransaction(tx, hash, blockNumber)]; - case 6: - error_7 = _a.sent(); - error_7.transaction = tx; - error_7.transactionHash = tx.hash; - throw error_7; - case 7: - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - BaseProvider2.prototype._getTransactionRequest = function(transaction) { - return __awaiter(this, void 0, void 0, function() { - var values, tx, _a, _b; - var _this = this; - return __generator(this, function(_c) { - switch (_c.label) { - case 0: - return [4, transaction]; - case 1: - values = _c.sent(); - tx = {}; - ["from", "to"].forEach(function(key) { - if (values[key] == null) { - return; - } - tx[key] = Promise.resolve(values[key]).then(function(v) { - return v ? _this._getAddress(v) : null; - }); - }); - ["gasLimit", "gasPrice", "maxFeePerGas", "maxPriorityFeePerGas", "value"].forEach(function(key) { - if (values[key] == null) { - return; - } - tx[key] = Promise.resolve(values[key]).then(function(v) { - return v ? bignumber_1.BigNumber.from(v) : null; - }); - }); - ["type"].forEach(function(key) { - if (values[key] == null) { - return; - } - tx[key] = Promise.resolve(values[key]).then(function(v) { - return v != null ? v : null; - }); - }); - if (values.accessList) { - tx.accessList = this.formatter.accessList(values.accessList); - } - ["data"].forEach(function(key) { - if (values[key] == null) { - return; - } - tx[key] = Promise.resolve(values[key]).then(function(v) { - return v ? (0, bytes_1.hexlify)(v) : null; - }); - }); - _b = (_a = this.formatter).transactionRequest; - return [4, (0, properties_1.resolveProperties)(tx)]; - case 2: - return [2, _b.apply(_a, [_c.sent()])]; - } - }); - }); - }; - BaseProvider2.prototype._getFilter = function(filter2) { - return __awaiter(this, void 0, void 0, function() { - var result, _a, _b; - var _this = this; - return __generator(this, function(_c) { - switch (_c.label) { - case 0: - return [4, filter2]; - case 1: - filter2 = _c.sent(); - result = {}; - if (filter2.address != null) { - result.address = this._getAddress(filter2.address); - } - ["blockHash", "topics"].forEach(function(key) { - if (filter2[key] == null) { - return; - } - result[key] = filter2[key]; - }); - ["fromBlock", "toBlock"].forEach(function(key) { - if (filter2[key] == null) { - return; - } - result[key] = _this._getBlockTag(filter2[key]); - }); - _b = (_a = this.formatter).filter; - return [4, (0, properties_1.resolveProperties)(result)]; - case 2: - return [2, _b.apply(_a, [_c.sent()])]; - } - }); - }); - }; - BaseProvider2.prototype._call = function(transaction, blockTag, attempt) { - return __awaiter(this, void 0, void 0, function() { - var txSender, result, data, sender, urls, urlsOffset, urlsLength, urlsData, u, url2, calldata, callbackSelector, extraData, ccipResult, tx, error_8; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - if (attempt >= MAX_CCIP_REDIRECTS) { - logger.throwError("CCIP read exceeded maximum redirections", logger_1.Logger.errors.SERVER_ERROR, { - redirects: attempt, - transaction - }); - } - txSender = transaction.to; - return [4, this.perform("call", { transaction, blockTag })]; - case 1: - result = _a.sent(); - if (!(attempt >= 0 && blockTag === "latest" && txSender != null && result.substring(0, 10) === "0x556f1830" && (0, bytes_1.hexDataLength)(result) % 32 === 4)) - return [3, 5]; - _a.label = 2; - case 2: - _a.trys.push([2, 4, , 5]); - data = (0, bytes_1.hexDataSlice)(result, 4); - sender = (0, bytes_1.hexDataSlice)(data, 0, 32); - if (!bignumber_1.BigNumber.from(sender).eq(txSender)) { - logger.throwError("CCIP Read sender did not match", logger_1.Logger.errors.CALL_EXCEPTION, { - name: "OffchainLookup", - signature: "OffchainLookup(address,string[],bytes,bytes4,bytes)", - transaction, - data: result - }); - } - urls = []; - urlsOffset = bignumber_1.BigNumber.from((0, bytes_1.hexDataSlice)(data, 32, 64)).toNumber(); - urlsLength = bignumber_1.BigNumber.from((0, bytes_1.hexDataSlice)(data, urlsOffset, urlsOffset + 32)).toNumber(); - urlsData = (0, bytes_1.hexDataSlice)(data, urlsOffset + 32); - for (u = 0; u < urlsLength; u++) { - url2 = _parseString(urlsData, u * 32); - if (url2 == null) { - logger.throwError("CCIP Read contained corrupt URL string", logger_1.Logger.errors.CALL_EXCEPTION, { - name: "OffchainLookup", - signature: "OffchainLookup(address,string[],bytes,bytes4,bytes)", - transaction, - data: result - }); - } - urls.push(url2); - } - calldata = _parseBytes(data, 64); - if (!bignumber_1.BigNumber.from((0, bytes_1.hexDataSlice)(data, 100, 128)).isZero()) { - logger.throwError("CCIP Read callback selector included junk", logger_1.Logger.errors.CALL_EXCEPTION, { - name: "OffchainLookup", - signature: "OffchainLookup(address,string[],bytes,bytes4,bytes)", - transaction, - data: result - }); - } - callbackSelector = (0, bytes_1.hexDataSlice)(data, 96, 100); - extraData = _parseBytes(data, 128); - return [4, this.ccipReadFetch(transaction, calldata, urls)]; - case 3: - ccipResult = _a.sent(); - if (ccipResult == null) { - logger.throwError("CCIP Read disabled or provided no URLs", logger_1.Logger.errors.CALL_EXCEPTION, { - name: "OffchainLookup", - signature: "OffchainLookup(address,string[],bytes,bytes4,bytes)", - transaction, - data: result - }); - } - tx = { - to: txSender, - data: (0, bytes_1.hexConcat)([callbackSelector, encodeBytes([ccipResult, extraData])]) - }; - return [2, this._call(tx, blockTag, attempt + 1)]; - case 4: - error_8 = _a.sent(); - if (error_8.code === logger_1.Logger.errors.SERVER_ERROR) { - throw error_8; - } - return [3, 5]; - case 5: - try { - return [2, (0, bytes_1.hexlify)(result)]; - } catch (error) { - return [2, logger.throwError("bad result from backend", logger_1.Logger.errors.SERVER_ERROR, { - method: "call", - params: { transaction, blockTag }, - result, - error - })]; - } - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - BaseProvider2.prototype.call = function(transaction, blockTag) { - return __awaiter(this, void 0, void 0, function() { - var resolved; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this.getNetwork()]; - case 1: - _a.sent(); - return [4, (0, properties_1.resolveProperties)({ - transaction: this._getTransactionRequest(transaction), - blockTag: this._getBlockTag(blockTag), - ccipReadEnabled: Promise.resolve(transaction.ccipReadEnabled) - })]; - case 2: - resolved = _a.sent(); - return [2, this._call(resolved.transaction, resolved.blockTag, resolved.ccipReadEnabled ? 0 : -1)]; - } - }); - }); - }; - BaseProvider2.prototype.estimateGas = function(transaction) { - return __awaiter(this, void 0, void 0, function() { - var params, result; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this.getNetwork()]; - case 1: - _a.sent(); - return [4, (0, properties_1.resolveProperties)({ - transaction: this._getTransactionRequest(transaction) - })]; - case 2: - params = _a.sent(); - return [4, this.perform("estimateGas", params)]; - case 3: - result = _a.sent(); - try { - return [2, bignumber_1.BigNumber.from(result)]; - } catch (error) { - return [2, logger.throwError("bad result from backend", logger_1.Logger.errors.SERVER_ERROR, { - method: "estimateGas", - params, - result, - error - })]; - } - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - BaseProvider2.prototype._getAddress = function(addressOrName) { - return __awaiter(this, void 0, void 0, function() { - var address; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, addressOrName]; - case 1: - addressOrName = _a.sent(); - if (typeof addressOrName !== "string") { - logger.throwArgumentError("invalid address or ENS name", "name", addressOrName); - } - return [4, this.resolveName(addressOrName)]; - case 2: - address = _a.sent(); - if (address == null) { - logger.throwError("ENS name not configured", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "resolveName(" + JSON.stringify(addressOrName) + ")" - }); - } - return [2, address]; - } - }); - }); - }; - BaseProvider2.prototype._getBlock = function(blockHashOrBlockTag, includeTransactions) { - return __awaiter(this, void 0, void 0, function() { - var blockNumber, params, _a, error_9; - var _this = this; - return __generator(this, function(_b) { - switch (_b.label) { - case 0: - return [4, this.getNetwork()]; - case 1: - _b.sent(); - return [4, blockHashOrBlockTag]; - case 2: - blockHashOrBlockTag = _b.sent(); - blockNumber = -128; - params = { - includeTransactions: !!includeTransactions - }; - if (!(0, bytes_1.isHexString)(blockHashOrBlockTag, 32)) - return [3, 3]; - params.blockHash = blockHashOrBlockTag; - return [3, 6]; - case 3: - _b.trys.push([3, 5, , 6]); - _a = params; - return [4, this._getBlockTag(blockHashOrBlockTag)]; - case 4: - _a.blockTag = _b.sent(); - if ((0, bytes_1.isHexString)(params.blockTag)) { - blockNumber = parseInt(params.blockTag.substring(2), 16); - } - return [3, 6]; - case 5: - error_9 = _b.sent(); - logger.throwArgumentError("invalid block hash or block tag", "blockHashOrBlockTag", blockHashOrBlockTag); - return [3, 6]; - case 6: - return [2, (0, web_1.poll)(function() { - return __awaiter(_this, void 0, void 0, function() { - var block, blockNumber_1, i, tx, confirmations, blockWithTxs; - var _this2 = this; - return __generator(this, function(_a2) { - switch (_a2.label) { - case 0: - return [4, this.perform("getBlock", params)]; - case 1: - block = _a2.sent(); - if (block == null) { - if (params.blockHash != null) { - if (this._emitted["b:" + params.blockHash] == null) { - return [2, null]; - } - } - if (params.blockTag != null) { - if (blockNumber > this._emitted.block) { - return [2, null]; - } - } - return [2, void 0]; - } - if (!includeTransactions) - return [3, 8]; - blockNumber_1 = null; - i = 0; - _a2.label = 2; - case 2: - if (!(i < block.transactions.length)) - return [3, 7]; - tx = block.transactions[i]; - if (!(tx.blockNumber == null)) - return [3, 3]; - tx.confirmations = 0; - return [3, 6]; - case 3: - if (!(tx.confirmations == null)) - return [3, 6]; - if (!(blockNumber_1 == null)) - return [3, 5]; - return [4, this._getInternalBlockNumber(100 + 2 * this.pollingInterval)]; - case 4: - blockNumber_1 = _a2.sent(); - _a2.label = 5; - case 5: - confirmations = blockNumber_1 - tx.blockNumber + 1; - if (confirmations <= 0) { - confirmations = 1; - } - tx.confirmations = confirmations; - _a2.label = 6; - case 6: - i++; - return [3, 2]; - case 7: - blockWithTxs = this.formatter.blockWithTransactions(block); - blockWithTxs.transactions = blockWithTxs.transactions.map(function(tx2) { - return _this2._wrapTransaction(tx2); - }); - return [2, blockWithTxs]; - case 8: - return [2, this.formatter.block(block)]; - } - }); - }); - }, { oncePoll: this })]; - } - }); - }); - }; - BaseProvider2.prototype.getBlock = function(blockHashOrBlockTag) { - return this._getBlock(blockHashOrBlockTag, false); - }; - BaseProvider2.prototype.getBlockWithTransactions = function(blockHashOrBlockTag) { - return this._getBlock(blockHashOrBlockTag, true); - }; - BaseProvider2.prototype.getTransaction = function(transactionHash) { - return __awaiter(this, void 0, void 0, function() { - var params; - var _this = this; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this.getNetwork()]; - case 1: - _a.sent(); - return [4, transactionHash]; - case 2: - transactionHash = _a.sent(); - params = { transactionHash: this.formatter.hash(transactionHash, true) }; - return [2, (0, web_1.poll)(function() { - return __awaiter(_this, void 0, void 0, function() { - var result, tx, blockNumber, confirmations; - return __generator(this, function(_a2) { - switch (_a2.label) { - case 0: - return [4, this.perform("getTransaction", params)]; - case 1: - result = _a2.sent(); - if (result == null) { - if (this._emitted["t:" + transactionHash] == null) { - return [2, null]; - } - return [2, void 0]; - } - tx = this.formatter.transactionResponse(result); - if (!(tx.blockNumber == null)) - return [3, 2]; - tx.confirmations = 0; - return [3, 4]; - case 2: - if (!(tx.confirmations == null)) - return [3, 4]; - return [4, this._getInternalBlockNumber(100 + 2 * this.pollingInterval)]; - case 3: - blockNumber = _a2.sent(); - confirmations = blockNumber - tx.blockNumber + 1; - if (confirmations <= 0) { - confirmations = 1; - } - tx.confirmations = confirmations; - _a2.label = 4; - case 4: - return [2, this._wrapTransaction(tx)]; - } - }); - }); - }, { oncePoll: this })]; - } - }); - }); - }; - BaseProvider2.prototype.getTransactionReceipt = function(transactionHash) { - return __awaiter(this, void 0, void 0, function() { - var params; - var _this = this; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this.getNetwork()]; - case 1: - _a.sent(); - return [4, transactionHash]; - case 2: - transactionHash = _a.sent(); - params = { transactionHash: this.formatter.hash(transactionHash, true) }; - return [2, (0, web_1.poll)(function() { - return __awaiter(_this, void 0, void 0, function() { - var result, receipt, blockNumber, confirmations; - return __generator(this, function(_a2) { - switch (_a2.label) { - case 0: - return [4, this.perform("getTransactionReceipt", params)]; - case 1: - result = _a2.sent(); - if (result == null) { - if (this._emitted["t:" + transactionHash] == null) { - return [2, null]; - } - return [2, void 0]; - } - if (result.blockHash == null) { - return [2, void 0]; - } - receipt = this.formatter.receipt(result); - if (!(receipt.blockNumber == null)) - return [3, 2]; - receipt.confirmations = 0; - return [3, 4]; - case 2: - if (!(receipt.confirmations == null)) - return [3, 4]; - return [4, this._getInternalBlockNumber(100 + 2 * this.pollingInterval)]; - case 3: - blockNumber = _a2.sent(); - confirmations = blockNumber - receipt.blockNumber + 1; - if (confirmations <= 0) { - confirmations = 1; - } - receipt.confirmations = confirmations; - _a2.label = 4; - case 4: - return [2, receipt]; - } - }); - }); - }, { oncePoll: this })]; - } - }); - }); - }; - BaseProvider2.prototype.getLogs = function(filter2) { - return __awaiter(this, void 0, void 0, function() { - var params, logs; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this.getNetwork()]; - case 1: - _a.sent(); - return [4, (0, properties_1.resolveProperties)({ filter: this._getFilter(filter2) })]; - case 2: - params = _a.sent(); - return [4, this.perform("getLogs", params)]; - case 3: - logs = _a.sent(); - logs.forEach(function(log) { - if (log.removed == null) { - log.removed = false; - } - }); - return [2, formatter_1.Formatter.arrayOf(this.formatter.filterLog.bind(this.formatter))(logs)]; - } - }); - }); - }; - BaseProvider2.prototype.getEtherPrice = function() { - return __awaiter(this, void 0, void 0, function() { - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this.getNetwork()]; - case 1: - _a.sent(); - return [2, this.perform("getEtherPrice", {})]; - } - }); - }); - }; - BaseProvider2.prototype._getBlockTag = function(blockTag) { - return __awaiter(this, void 0, void 0, function() { - var blockNumber; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, blockTag]; - case 1: - blockTag = _a.sent(); - if (!(typeof blockTag === "number" && blockTag < 0)) - return [3, 3]; - if (blockTag % 1) { - logger.throwArgumentError("invalid BlockTag", "blockTag", blockTag); - } - return [4, this._getInternalBlockNumber(100 + 2 * this.pollingInterval)]; - case 2: - blockNumber = _a.sent(); - blockNumber += blockTag; - if (blockNumber < 0) { - blockNumber = 0; - } - return [2, this.formatter.blockTag(blockNumber)]; - case 3: - return [2, this.formatter.blockTag(blockTag)]; - } - }); - }); - }; - BaseProvider2.prototype.getResolver = function(name) { - return __awaiter(this, void 0, void 0, function() { - var currentName, addr, resolver, _a; - return __generator(this, function(_b) { - switch (_b.label) { - case 0: - currentName = name; - _b.label = 1; - case 1: - if (false) - {} - if (currentName === "" || currentName === ".") { - return [2, null]; - } - if (name !== "eth" && currentName === "eth") { - return [2, null]; - } - return [4, this._getResolver(currentName, "getResolver")]; - case 2: - addr = _b.sent(); - if (!(addr != null)) - return [3, 5]; - resolver = new Resolver(this, addr, name); - _a = currentName !== name; - if (!_a) - return [3, 4]; - return [4, resolver.supportsWildcard()]; - case 3: - _a = !_b.sent(); - _b.label = 4; - case 4: - if (_a) { - return [2, null]; - } - return [2, resolver]; - case 5: - currentName = currentName.split(".").slice(1).join("."); - return [3, 1]; - case 6: - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - BaseProvider2.prototype._getResolver = function(name, operation) { - return __awaiter(this, void 0, void 0, function() { - var network, addrData, error_10; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - if (operation == null) { - operation = "ENS"; - } - return [4, this.getNetwork()]; - case 1: - network = _a.sent(); - if (!network.ensAddress) { - logger.throwError("network does not support ENS", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { operation, network: network.name }); - } - _a.label = 2; - case 2: - _a.trys.push([2, 4, , 5]); - return [4, this.call({ - to: network.ensAddress, - data: "0x0178b8bf" + (0, hash_1.namehash)(name).substring(2) - })]; - case 3: - addrData = _a.sent(); - return [2, this.formatter.callAddress(addrData)]; - case 4: - error_10 = _a.sent(); - return [3, 5]; - case 5: - return [2, null]; - } - }); - }); - }; - BaseProvider2.prototype.resolveName = function(name) { - return __awaiter(this, void 0, void 0, function() { - var resolver; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, name]; - case 1: - name = _a.sent(); - try { - return [2, Promise.resolve(this.formatter.address(name))]; - } catch (error) { - if ((0, bytes_1.isHexString)(name)) { - throw error; - } - } - if (typeof name !== "string") { - logger.throwArgumentError("invalid ENS name", "name", name); - } - return [4, this.getResolver(name)]; - case 2: - resolver = _a.sent(); - if (!resolver) { - return [2, null]; - } - return [4, resolver.getAddress()]; - case 3: - return [2, _a.sent()]; - } - }); - }); - }; - BaseProvider2.prototype.lookupAddress = function(address) { - return __awaiter(this, void 0, void 0, function() { - var node, resolverAddr, name, _a, addr; - return __generator(this, function(_b) { - switch (_b.label) { - case 0: - return [4, address]; - case 1: - address = _b.sent(); - address = this.formatter.address(address); - node = address.substring(2).toLowerCase() + ".addr.reverse"; - return [4, this._getResolver(node, "lookupAddress")]; - case 2: - resolverAddr = _b.sent(); - if (resolverAddr == null) { - return [2, null]; - } - _a = _parseString; - return [4, this.call({ - to: resolverAddr, - data: "0x691f3431" + (0, hash_1.namehash)(node).substring(2) - })]; - case 3: - name = _a.apply(void 0, [_b.sent(), 0]); - return [4, this.resolveName(name)]; - case 4: - addr = _b.sent(); - if (addr != address) { - return [2, null]; - } - return [2, name]; - } - }); - }); - }; - BaseProvider2.prototype.getAvatar = function(nameOrAddress) { - return __awaiter(this, void 0, void 0, function() { - var resolver, address, node, resolverAddress, avatar_1, error_11, name_1, _a, error_12, avatar; - return __generator(this, function(_b) { - switch (_b.label) { - case 0: - resolver = null; - if (!(0, bytes_1.isHexString)(nameOrAddress)) - return [3, 10]; - address = this.formatter.address(nameOrAddress); - node = address.substring(2).toLowerCase() + ".addr.reverse"; - return [4, this._getResolver(node, "getAvatar")]; - case 1: - resolverAddress = _b.sent(); - if (!resolverAddress) { - return [2, null]; - } - resolver = new Resolver(this, resolverAddress, node); - _b.label = 2; - case 2: - _b.trys.push([2, 4, , 5]); - return [4, resolver.getAvatar()]; - case 3: - avatar_1 = _b.sent(); - if (avatar_1) { - return [2, avatar_1.url]; - } - return [3, 5]; - case 4: - error_11 = _b.sent(); - if (error_11.code !== logger_1.Logger.errors.CALL_EXCEPTION) { - throw error_11; - } - return [3, 5]; - case 5: - _b.trys.push([5, 8, , 9]); - _a = _parseString; - return [4, this.call({ - to: resolverAddress, - data: "0x691f3431" + (0, hash_1.namehash)(node).substring(2) - })]; - case 6: - name_1 = _a.apply(void 0, [_b.sent(), 0]); - return [4, this.getResolver(name_1)]; - case 7: - resolver = _b.sent(); - return [3, 9]; - case 8: - error_12 = _b.sent(); - if (error_12.code !== logger_1.Logger.errors.CALL_EXCEPTION) { - throw error_12; - } - return [2, null]; - case 9: - return [3, 12]; - case 10: - return [4, this.getResolver(nameOrAddress)]; - case 11: - resolver = _b.sent(); - if (!resolver) { - return [2, null]; - } - _b.label = 12; - case 12: - return [4, resolver.getAvatar()]; - case 13: - avatar = _b.sent(); - if (avatar == null) { - return [2, null]; - } - return [2, avatar.url]; - } - }); - }); - }; - BaseProvider2.prototype.perform = function(method, params) { - return logger.throwError(method + " not implemented", logger_1.Logger.errors.NOT_IMPLEMENTED, { operation: method }); - }; - BaseProvider2.prototype._startEvent = function(event) { - this.polling = this._events.filter(function(e) { - return e.pollable(); - }).length > 0; - }; - BaseProvider2.prototype._stopEvent = function(event) { - this.polling = this._events.filter(function(e) { - return e.pollable(); - }).length > 0; - }; - BaseProvider2.prototype._addEventListener = function(eventName, listener, once) { - var event = new Event(getEventTag(eventName), listener, once); - this._events.push(event); - this._startEvent(event); - return this; - }; - BaseProvider2.prototype.on = function(eventName, listener) { - return this._addEventListener(eventName, listener, false); - }; - BaseProvider2.prototype.once = function(eventName, listener) { - return this._addEventListener(eventName, listener, true); - }; - BaseProvider2.prototype.emit = function(eventName) { - var _this = this; - var args = []; - for (var _i = 1; _i < arguments.length; _i++) { - args[_i - 1] = arguments[_i]; - } - var result = false; - var stopped = []; - var eventTag = getEventTag(eventName); - this._events = this._events.filter(function(event) { - if (event.tag !== eventTag) { - return true; - } - setTimeout(function() { - event.listener.apply(_this, args); - }, 0); - result = true; - if (event.once) { - stopped.push(event); - return false; - } - return true; - }); - stopped.forEach(function(event) { - _this._stopEvent(event); - }); - return result; - }; - BaseProvider2.prototype.listenerCount = function(eventName) { - if (!eventName) { - return this._events.length; - } - var eventTag = getEventTag(eventName); - return this._events.filter(function(event) { - return event.tag === eventTag; - }).length; - }; - BaseProvider2.prototype.listeners = function(eventName) { - if (eventName == null) { - return this._events.map(function(event) { - return event.listener; - }); - } - var eventTag = getEventTag(eventName); - return this._events.filter(function(event) { - return event.tag === eventTag; - }).map(function(event) { - return event.listener; - }); - }; - BaseProvider2.prototype.off = function(eventName, listener) { - var _this = this; - if (listener == null) { - return this.removeAllListeners(eventName); - } - var stopped = []; - var found = false; - var eventTag = getEventTag(eventName); - this._events = this._events.filter(function(event) { - if (event.tag !== eventTag || event.listener != listener) { - return true; - } - if (found) { - return true; - } - found = true; - stopped.push(event); - return false; - }); - stopped.forEach(function(event) { - _this._stopEvent(event); - }); - return this; - }; - BaseProvider2.prototype.removeAllListeners = function(eventName) { - var _this = this; - var stopped = []; - if (eventName == null) { - stopped = this._events; - this._events = []; - } else { - var eventTag_1 = getEventTag(eventName); - this._events = this._events.filter(function(event) { - if (event.tag !== eventTag_1) { - return true; - } - stopped.push(event); - return false; - }); - } - stopped.forEach(function(event) { - _this._stopEvent(event); - }); - return this; - }; - return BaseProvider2; - }(abstract_provider_1.Provider) - ); - exports2.BaseProvider = BaseProvider; - } -}); - -// node_modules/@ethersproject/abstract-signer/lib/_version.js -var require_version16 = __commonJS({ - "node_modules/@ethersproject/abstract-signer/lib/_version.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.version = void 0; - exports2.version = "abstract-signer/5.7.0"; - } -}); - -// node_modules/@ethersproject/abstract-signer/lib/index.js -var require_lib20 = __commonJS({ - "node_modules/@ethersproject/abstract-signer/lib/index.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - var __awaiter = exports2 && exports2.__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 = exports2 && exports2.__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(exports2, "__esModule", { value: true }); - exports2.VoidSigner = exports2.Signer = void 0; - var properties_1 = require_lib4(); - var logger_1 = require_lib(); - var _version_1 = require_version16(); - var logger = new logger_1.Logger(_version_1.version); - var allowedTransactionKeys = [ - "accessList", - "ccipReadEnabled", - "chainId", - "customData", - "data", - "from", - "gasLimit", - "gasPrice", - "maxFeePerGas", - "maxPriorityFeePerGas", - "nonce", - "to", - "type", - "value" - ]; - var forwardErrors = [ - logger_1.Logger.errors.INSUFFICIENT_FUNDS, - logger_1.Logger.errors.NONCE_EXPIRED, - logger_1.Logger.errors.REPLACEMENT_UNDERPRICED - ]; - var Signer = ( - /** @class */ - function() { - function Signer2() { - var _newTarget = this.constructor; - logger.checkAbstract(_newTarget, Signer2); - (0, properties_1.defineReadOnly)(this, "_isSigner", true); - } - Signer2.prototype.getBalance = function(blockTag) { - return __awaiter(this, void 0, void 0, function() { - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - this._checkProvider("getBalance"); - return [4, this.provider.getBalance(this.getAddress(), blockTag)]; - case 1: - return [2, _a.sent()]; - } - }); - }); - }; - Signer2.prototype.getTransactionCount = function(blockTag) { - return __awaiter(this, void 0, void 0, function() { - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - this._checkProvider("getTransactionCount"); - return [4, this.provider.getTransactionCount(this.getAddress(), blockTag)]; - case 1: - return [2, _a.sent()]; - } - }); - }); - }; - Signer2.prototype.estimateGas = function(transaction) { - return __awaiter(this, void 0, void 0, function() { - var tx; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - this._checkProvider("estimateGas"); - return [4, (0, properties_1.resolveProperties)(this.checkTransaction(transaction))]; - case 1: - tx = _a.sent(); - return [4, this.provider.estimateGas(tx)]; - case 2: - return [2, _a.sent()]; - } - }); - }); - }; - Signer2.prototype.call = function(transaction, blockTag) { - return __awaiter(this, void 0, void 0, function() { - var tx; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - this._checkProvider("call"); - return [4, (0, properties_1.resolveProperties)(this.checkTransaction(transaction))]; - case 1: - tx = _a.sent(); - return [4, this.provider.call(tx, blockTag)]; - case 2: - return [2, _a.sent()]; - } - }); - }); - }; - Signer2.prototype.sendTransaction = function(transaction) { - return __awaiter(this, void 0, void 0, function() { - var tx, signedTx; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - this._checkProvider("sendTransaction"); - return [4, this.populateTransaction(transaction)]; - case 1: - tx = _a.sent(); - return [4, this.signTransaction(tx)]; - case 2: - signedTx = _a.sent(); - return [4, this.provider.sendTransaction(signedTx)]; - case 3: - return [2, _a.sent()]; - } - }); - }); - }; - Signer2.prototype.getChainId = function() { - return __awaiter(this, void 0, void 0, function() { - var network; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - this._checkProvider("getChainId"); - return [4, this.provider.getNetwork()]; - case 1: - network = _a.sent(); - return [2, network.chainId]; - } - }); - }); - }; - Signer2.prototype.getGasPrice = function() { - return __awaiter(this, void 0, void 0, function() { - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - this._checkProvider("getGasPrice"); - return [4, this.provider.getGasPrice()]; - case 1: - return [2, _a.sent()]; - } - }); - }); - }; - Signer2.prototype.getFeeData = function() { - return __awaiter(this, void 0, void 0, function() { - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - this._checkProvider("getFeeData"); - return [4, this.provider.getFeeData()]; - case 1: - return [2, _a.sent()]; - } - }); - }); - }; - Signer2.prototype.resolveName = function(name) { - return __awaiter(this, void 0, void 0, function() { - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - this._checkProvider("resolveName"); - return [4, this.provider.resolveName(name)]; - case 1: - return [2, _a.sent()]; - } - }); - }); - }; - Signer2.prototype.checkTransaction = function(transaction) { - for (var key in transaction) { - if (allowedTransactionKeys.indexOf(key) === -1) { - logger.throwArgumentError("invalid transaction key: " + key, "transaction", transaction); - } - } - var tx = (0, properties_1.shallowCopy)(transaction); - if (tx.from == null) { - tx.from = this.getAddress(); - } else { - tx.from = Promise.all([ - Promise.resolve(tx.from), - this.getAddress() - ]).then(function(result) { - if (result[0].toLowerCase() !== result[1].toLowerCase()) { - logger.throwArgumentError("from address mismatch", "transaction", transaction); - } - return result[0]; - }); - } - return tx; - }; - Signer2.prototype.populateTransaction = function(transaction) { - return __awaiter(this, void 0, void 0, function() { - var tx, hasEip1559, feeData, gasPrice; - var _this = this; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, (0, properties_1.resolveProperties)(this.checkTransaction(transaction))]; - case 1: - tx = _a.sent(); - if (tx.to != null) { - tx.to = Promise.resolve(tx.to).then(function(to) { - return __awaiter(_this, void 0, void 0, function() { - var address; - return __generator(this, function(_a2) { - switch (_a2.label) { - case 0: - if (to == null) { - return [2, null]; - } - return [4, this.resolveName(to)]; - case 1: - address = _a2.sent(); - if (address == null) { - logger.throwArgumentError("provided ENS name resolves to null", "tx.to", to); - } - return [2, address]; - } - }); - }); - }); - tx.to.catch(function(error) { - }); - } - hasEip1559 = tx.maxFeePerGas != null || tx.maxPriorityFeePerGas != null; - if (tx.gasPrice != null && (tx.type === 2 || hasEip1559)) { - logger.throwArgumentError("eip-1559 transaction do not support gasPrice", "transaction", transaction); - } else if ((tx.type === 0 || tx.type === 1) && hasEip1559) { - logger.throwArgumentError("pre-eip-1559 transaction do not support maxFeePerGas/maxPriorityFeePerGas", "transaction", transaction); - } - if (!((tx.type === 2 || tx.type == null) && (tx.maxFeePerGas != null && tx.maxPriorityFeePerGas != null))) - return [3, 2]; - tx.type = 2; - return [3, 5]; - case 2: - if (!(tx.type === 0 || tx.type === 1)) - return [3, 3]; - if (tx.gasPrice == null) { - tx.gasPrice = this.getGasPrice(); - } - return [3, 5]; - case 3: - return [4, this.getFeeData()]; - case 4: - feeData = _a.sent(); - if (tx.type == null) { - if (feeData.maxFeePerGas != null && feeData.maxPriorityFeePerGas != null) { - tx.type = 2; - if (tx.gasPrice != null) { - gasPrice = tx.gasPrice; - delete tx.gasPrice; - tx.maxFeePerGas = gasPrice; - tx.maxPriorityFeePerGas = gasPrice; - } else { - if (tx.maxFeePerGas == null) { - tx.maxFeePerGas = feeData.maxFeePerGas; - } - if (tx.maxPriorityFeePerGas == null) { - tx.maxPriorityFeePerGas = feeData.maxPriorityFeePerGas; - } - } - } else if (feeData.gasPrice != null) { - if (hasEip1559) { - logger.throwError("network does not support EIP-1559", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "populateTransaction" - }); - } - if (tx.gasPrice == null) { - tx.gasPrice = feeData.gasPrice; - } - tx.type = 0; - } else { - logger.throwError("failed to get consistent fee data", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "signer.getFeeData" - }); - } - } else if (tx.type === 2) { - if (tx.maxFeePerGas == null) { - tx.maxFeePerGas = feeData.maxFeePerGas; - } - if (tx.maxPriorityFeePerGas == null) { - tx.maxPriorityFeePerGas = feeData.maxPriorityFeePerGas; - } - } - _a.label = 5; - case 5: - if (tx.nonce == null) { - tx.nonce = this.getTransactionCount("pending"); - } - if (tx.gasLimit == null) { - tx.gasLimit = this.estimateGas(tx).catch(function(error) { - if (forwardErrors.indexOf(error.code) >= 0) { - throw error; - } - return logger.throwError("cannot estimate gas; transaction may fail or may require manual gas limit", logger_1.Logger.errors.UNPREDICTABLE_GAS_LIMIT, { - error, - tx - }); - }); - } - if (tx.chainId == null) { - tx.chainId = this.getChainId(); - } else { - tx.chainId = Promise.all([ - Promise.resolve(tx.chainId), - this.getChainId() - ]).then(function(results) { - if (results[1] !== 0 && results[0] !== results[1]) { - logger.throwArgumentError("chainId address mismatch", "transaction", transaction); - } - return results[0]; - }); - } - return [4, (0, properties_1.resolveProperties)(tx)]; - case 6: - return [2, _a.sent()]; - } - }); - }); - }; - Signer2.prototype._checkProvider = function(operation) { - if (!this.provider) { - logger.throwError("missing provider", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: operation || "_checkProvider" - }); - } - }; - Signer2.isSigner = function(value) { - return !!(value && value._isSigner); - }; - return Signer2; - }() - ); - exports2.Signer = Signer; - var VoidSigner = ( - /** @class */ - function(_super) { - __extends(VoidSigner2, _super); - function VoidSigner2(address, provider) { - var _this = _super.call(this) || this; - (0, properties_1.defineReadOnly)(_this, "address", address); - (0, properties_1.defineReadOnly)(_this, "provider", provider || null); - return _this; - } - VoidSigner2.prototype.getAddress = function() { - return Promise.resolve(this.address); - }; - VoidSigner2.prototype._fail = function(message, operation) { - return Promise.resolve().then(function() { - logger.throwError(message, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { operation }); - }); - }; - VoidSigner2.prototype.signMessage = function(message) { - return this._fail("VoidSigner cannot sign messages", "signMessage"); - }; - VoidSigner2.prototype.signTransaction = function(transaction) { - return this._fail("VoidSigner cannot sign transactions", "signTransaction"); - }; - VoidSigner2.prototype._signTypedData = function(domain, types, value) { - return this._fail("VoidSigner cannot sign typed data", "signTypedData"); - }; - VoidSigner2.prototype.connect = function(provider) { - return new VoidSigner2(this.address, provider); - }; - return VoidSigner2; - }(Signer) - ); - exports2.VoidSigner = VoidSigner; - } -}); - -// node_modules/@ethersproject/providers/lib/json-rpc-provider.js -var require_json_rpc_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/json-rpc-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - var __awaiter = exports2 && exports2.__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 = exports2 && exports2.__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(exports2, "__esModule", { value: true }); - exports2.JsonRpcProvider = exports2.JsonRpcSigner = void 0; - var abstract_signer_1 = require_lib20(); - var bignumber_1 = require_lib3(); - var bytes_1 = require_lib2(); - var hash_1 = require_lib15(); - var properties_1 = require_lib4(); - var strings_1 = require_lib11(); - var transactions_1 = require_lib19(); - var web_1 = require_lib17(); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - var base_provider_1 = require_base_provider(); - var errorGas = ["call", "estimateGas"]; - function spelunk(value, requireData) { - if (value == null) { - return null; - } - if (typeof value.message === "string" && value.message.match("reverted")) { - var data = (0, bytes_1.isHexString)(value.data) ? value.data : null; - if (!requireData || data) { - return { message: value.message, data }; - } - } - if (typeof value === "object") { - for (var key in value) { - var result = spelunk(value[key], requireData); - if (result) { - return result; - } - } - return null; - } - if (typeof value === "string") { - try { - return spelunk(JSON.parse(value), requireData); - } catch (error) { - } - } - return null; - } - function checkError(method, error, params) { - var transaction = params.transaction || params.signedTransaction; - if (method === "call") { - var result = spelunk(error, true); - if (result) { - return result.data; - } - logger.throwError("missing revert data in call exception; Transaction reverted without a reason string", logger_1.Logger.errors.CALL_EXCEPTION, { - data: "0x", - transaction, - error - }); - } - if (method === "estimateGas") { - var result = spelunk(error.body, false); - if (result == null) { - result = spelunk(error, false); - } - if (result) { - logger.throwError("cannot estimate gas; transaction may fail or may require manual gas limit", logger_1.Logger.errors.UNPREDICTABLE_GAS_LIMIT, { - reason: result.message, - method, - transaction, - error - }); - } - } - var message = error.message; - if (error.code === logger_1.Logger.errors.SERVER_ERROR && error.error && typeof error.error.message === "string") { - message = error.error.message; - } else if (typeof error.body === "string") { - message = error.body; - } else if (typeof error.responseText === "string") { - message = error.responseText; - } - message = (message || "").toLowerCase(); - if (message.match(/insufficient funds|base fee exceeds gas limit|InsufficientFunds/i)) { - logger.throwError("insufficient funds for intrinsic transaction cost", logger_1.Logger.errors.INSUFFICIENT_FUNDS, { - error, - method, - transaction - }); - } - if (message.match(/nonce (is )?too low/i)) { - logger.throwError("nonce has already been used", logger_1.Logger.errors.NONCE_EXPIRED, { - error, - method, - transaction - }); - } - if (message.match(/replacement transaction underpriced|transaction gas price.*too low/i)) { - logger.throwError("replacement fee too low", logger_1.Logger.errors.REPLACEMENT_UNDERPRICED, { - error, - method, - transaction - }); - } - if (message.match(/only replay-protected/i)) { - logger.throwError("legacy pre-eip-155 transactions not supported", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - error, - method, - transaction - }); - } - if (errorGas.indexOf(method) >= 0 && message.match(/gas required exceeds allowance|always failing transaction|execution reverted|revert/)) { - logger.throwError("cannot estimate gas; transaction may fail or may require manual gas limit", logger_1.Logger.errors.UNPREDICTABLE_GAS_LIMIT, { - error, - method, - transaction - }); - } - throw error; - } - function timer(timeout) { - return new Promise(function(resolve) { - setTimeout(resolve, timeout); - }); - } - function getResult(payload) { - if (payload.error) { - var error = new Error(payload.error.message); - error.code = payload.error.code; - error.data = payload.error.data; - throw error; - } - return payload.result; - } - function getLowerCase(value) { - if (value) { - return value.toLowerCase(); - } - return value; - } - var _constructorGuard = {}; - var JsonRpcSigner = ( - /** @class */ - function(_super) { - __extends(JsonRpcSigner2, _super); - function JsonRpcSigner2(constructorGuard, provider, addressOrIndex) { - var _this = _super.call(this) || this; - if (constructorGuard !== _constructorGuard) { - throw new Error("do not call the JsonRpcSigner constructor directly; use provider.getSigner"); - } - (0, properties_1.defineReadOnly)(_this, "provider", provider); - if (addressOrIndex == null) { - addressOrIndex = 0; - } - if (typeof addressOrIndex === "string") { - (0, properties_1.defineReadOnly)(_this, "_address", _this.provider.formatter.address(addressOrIndex)); - (0, properties_1.defineReadOnly)(_this, "_index", null); - } else if (typeof addressOrIndex === "number") { - (0, properties_1.defineReadOnly)(_this, "_index", addressOrIndex); - (0, properties_1.defineReadOnly)(_this, "_address", null); - } else { - logger.throwArgumentError("invalid address or index", "addressOrIndex", addressOrIndex); - } - return _this; - } - JsonRpcSigner2.prototype.connect = function(provider) { - return logger.throwError("cannot alter JSON-RPC Signer connection", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "connect" - }); - }; - JsonRpcSigner2.prototype.connectUnchecked = function() { - return new UncheckedJsonRpcSigner(_constructorGuard, this.provider, this._address || this._index); - }; - JsonRpcSigner2.prototype.getAddress = function() { - var _this = this; - if (this._address) { - return Promise.resolve(this._address); - } - return this.provider.send("eth_accounts", []).then(function(accounts) { - if (accounts.length <= _this._index) { - logger.throwError("unknown account #" + _this._index, logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "getAddress" - }); - } - return _this.provider.formatter.address(accounts[_this._index]); - }); - }; - JsonRpcSigner2.prototype.sendUncheckedTransaction = function(transaction) { - var _this = this; - transaction = (0, properties_1.shallowCopy)(transaction); - var fromAddress = this.getAddress().then(function(address) { - if (address) { - address = address.toLowerCase(); - } - return address; - }); - if (transaction.gasLimit == null) { - var estimate = (0, properties_1.shallowCopy)(transaction); - estimate.from = fromAddress; - transaction.gasLimit = this.provider.estimateGas(estimate); - } - if (transaction.to != null) { - transaction.to = Promise.resolve(transaction.to).then(function(to) { - return __awaiter(_this, void 0, void 0, function() { - var address; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - if (to == null) { - return [2, null]; - } - return [4, this.provider.resolveName(to)]; - case 1: - address = _a.sent(); - if (address == null) { - logger.throwArgumentError("provided ENS name resolves to null", "tx.to", to); - } - return [2, address]; - } - }); - }); - }); - } - return (0, properties_1.resolveProperties)({ - tx: (0, properties_1.resolveProperties)(transaction), - sender: fromAddress - }).then(function(_a) { - var tx = _a.tx, sender = _a.sender; - if (tx.from != null) { - if (tx.from.toLowerCase() !== sender) { - logger.throwArgumentError("from address mismatch", "transaction", transaction); - } - } else { - tx.from = sender; - } - var hexTx = _this.provider.constructor.hexlifyTransaction(tx, { from: true }); - return _this.provider.send("eth_sendTransaction", [hexTx]).then(function(hash) { - return hash; - }, function(error) { - if (typeof error.message === "string" && error.message.match(/user denied/i)) { - logger.throwError("user rejected transaction", logger_1.Logger.errors.ACTION_REJECTED, { - action: "sendTransaction", - transaction: tx - }); - } - return checkError("sendTransaction", error, hexTx); - }); - }); - }; - JsonRpcSigner2.prototype.signTransaction = function(transaction) { - return logger.throwError("signing transactions is unsupported", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "signTransaction" - }); - }; - JsonRpcSigner2.prototype.sendTransaction = function(transaction) { - return __awaiter(this, void 0, void 0, function() { - var blockNumber, hash, error_1; - var _this = this; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, this.provider._getInternalBlockNumber(100 + 2 * this.provider.pollingInterval)]; - case 1: - blockNumber = _a.sent(); - return [4, this.sendUncheckedTransaction(transaction)]; - case 2: - hash = _a.sent(); - _a.label = 3; - case 3: - _a.trys.push([3, 5, , 6]); - return [4, (0, web_1.poll)(function() { - return __awaiter(_this, void 0, void 0, function() { - var tx; - return __generator(this, function(_a2) { - switch (_a2.label) { - case 0: - return [4, this.provider.getTransaction(hash)]; - case 1: - tx = _a2.sent(); - if (tx === null) { - return [2, void 0]; - } - return [2, this.provider._wrapTransaction(tx, hash, blockNumber)]; - } - }); - }); - }, { oncePoll: this.provider })]; - case 4: - return [2, _a.sent()]; - case 5: - error_1 = _a.sent(); - error_1.transactionHash = hash; - throw error_1; - case 6: - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - JsonRpcSigner2.prototype.signMessage = function(message) { - return __awaiter(this, void 0, void 0, function() { - var data, address, error_2; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - data = typeof message === "string" ? (0, strings_1.toUtf8Bytes)(message) : message; - return [4, this.getAddress()]; - case 1: - address = _a.sent(); - _a.label = 2; - case 2: - _a.trys.push([2, 4, , 5]); - return [4, this.provider.send("personal_sign", [(0, bytes_1.hexlify)(data), address.toLowerCase()])]; - case 3: - return [2, _a.sent()]; - case 4: - error_2 = _a.sent(); - if (typeof error_2.message === "string" && error_2.message.match(/user denied/i)) { - logger.throwError("user rejected signing", logger_1.Logger.errors.ACTION_REJECTED, { - action: "signMessage", - from: address, - messageData: message - }); - } - throw error_2; - case 5: - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - JsonRpcSigner2.prototype._legacySignMessage = function(message) { - return __awaiter(this, void 0, void 0, function() { - var data, address, error_3; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - data = typeof message === "string" ? (0, strings_1.toUtf8Bytes)(message) : message; - return [4, this.getAddress()]; - case 1: - address = _a.sent(); - _a.label = 2; - case 2: - _a.trys.push([2, 4, , 5]); - return [4, this.provider.send("eth_sign", [address.toLowerCase(), (0, bytes_1.hexlify)(data)])]; - case 3: - return [2, _a.sent()]; - case 4: - error_3 = _a.sent(); - if (typeof error_3.message === "string" && error_3.message.match(/user denied/i)) { - logger.throwError("user rejected signing", logger_1.Logger.errors.ACTION_REJECTED, { - action: "_legacySignMessage", - from: address, - messageData: message - }); - } - throw error_3; - case 5: - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - JsonRpcSigner2.prototype._signTypedData = function(domain, types, value) { - return __awaiter(this, void 0, void 0, function() { - var populated, address, error_4; - var _this = this; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, hash_1._TypedDataEncoder.resolveNames(domain, types, value, function(name) { - return _this.provider.resolveName(name); - })]; - case 1: - populated = _a.sent(); - return [4, this.getAddress()]; - case 2: - address = _a.sent(); - _a.label = 3; - case 3: - _a.trys.push([3, 5, , 6]); - return [4, this.provider.send("eth_signTypedData_v4", [ - address.toLowerCase(), - JSON.stringify(hash_1._TypedDataEncoder.getPayload(populated.domain, types, populated.value)) - ])]; - case 4: - return [2, _a.sent()]; - case 5: - error_4 = _a.sent(); - if (typeof error_4.message === "string" && error_4.message.match(/user denied/i)) { - logger.throwError("user rejected signing", logger_1.Logger.errors.ACTION_REJECTED, { - action: "_signTypedData", - from: address, - messageData: { domain: populated.domain, types, value: populated.value } - }); - } - throw error_4; - case 6: - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - JsonRpcSigner2.prototype.unlock = function(password) { - return __awaiter(this, void 0, void 0, function() { - var provider, address; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - provider = this.provider; - return [4, this.getAddress()]; - case 1: - address = _a.sent(); - return [2, provider.send("personal_unlockAccount", [address.toLowerCase(), password, null])]; - } - }); - }); - }; - return JsonRpcSigner2; - }(abstract_signer_1.Signer) - ); - exports2.JsonRpcSigner = JsonRpcSigner; - var UncheckedJsonRpcSigner = ( - /** @class */ - function(_super) { - __extends(UncheckedJsonRpcSigner2, _super); - function UncheckedJsonRpcSigner2() { - return _super !== null && _super.apply(this, arguments) || this; - } - UncheckedJsonRpcSigner2.prototype.sendTransaction = function(transaction) { - var _this = this; - return this.sendUncheckedTransaction(transaction).then(function(hash) { - return { - hash, - nonce: null, - gasLimit: null, - gasPrice: null, - data: null, - value: null, - chainId: null, - confirmations: 0, - from: null, - wait: function(confirmations) { - return _this.provider.waitForTransaction(hash, confirmations); - } - }; - }); - }; - return UncheckedJsonRpcSigner2; - }(JsonRpcSigner) - ); - var allowedTransactionKeys = { - chainId: true, - data: true, - gasLimit: true, - gasPrice: true, - nonce: true, - to: true, - value: true, - type: true, - accessList: true, - maxFeePerGas: true, - maxPriorityFeePerGas: true - }; - var JsonRpcProvider2 = ( - /** @class */ - function(_super) { - __extends(JsonRpcProvider3, _super); - function JsonRpcProvider3(url2, network) { - var _this = this; - var networkOrReady = network; - if (networkOrReady == null) { - networkOrReady = new Promise(function(resolve, reject) { - setTimeout(function() { - _this.detectNetwork().then(function(network2) { - resolve(network2); - }, function(error) { - reject(error); - }); - }, 0); - }); - } - _this = _super.call(this, networkOrReady) || this; - if (!url2) { - url2 = (0, properties_1.getStatic)(_this.constructor, "defaultUrl")(); - } - if (typeof url2 === "string") { - (0, properties_1.defineReadOnly)(_this, "connection", Object.freeze({ - url: url2 - })); - } else { - (0, properties_1.defineReadOnly)(_this, "connection", Object.freeze((0, properties_1.shallowCopy)(url2))); - } - _this._nextId = 42; - return _this; - } - Object.defineProperty(JsonRpcProvider3.prototype, "_cache", { - get: function() { - if (this._eventLoopCache == null) { - this._eventLoopCache = {}; - } - return this._eventLoopCache; - }, - enumerable: false, - configurable: true - }); - JsonRpcProvider3.defaultUrl = function() { - return "http://localhost:8545"; - }; - JsonRpcProvider3.prototype.detectNetwork = function() { - var _this = this; - if (!this._cache["detectNetwork"]) { - this._cache["detectNetwork"] = this._uncachedDetectNetwork(); - setTimeout(function() { - _this._cache["detectNetwork"] = null; - }, 0); - } - return this._cache["detectNetwork"]; - }; - JsonRpcProvider3.prototype._uncachedDetectNetwork = function() { - return __awaiter(this, void 0, void 0, function() { - var chainId, error_5, error_6, getNetwork; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, timer(0)]; - case 1: - _a.sent(); - chainId = null; - _a.label = 2; - case 2: - _a.trys.push([2, 4, , 9]); - return [4, this.send("eth_chainId", [])]; - case 3: - chainId = _a.sent(); - return [3, 9]; - case 4: - error_5 = _a.sent(); - _a.label = 5; - case 5: - _a.trys.push([5, 7, , 8]); - return [4, this.send("net_version", [])]; - case 6: - chainId = _a.sent(); - return [3, 8]; - case 7: - error_6 = _a.sent(); - return [3, 8]; - case 8: - return [3, 9]; - case 9: - if (chainId != null) { - getNetwork = (0, properties_1.getStatic)(this.constructor, "getNetwork"); - try { - return [2, getNetwork(bignumber_1.BigNumber.from(chainId).toNumber())]; - } catch (error) { - return [2, logger.throwError("could not detect network", logger_1.Logger.errors.NETWORK_ERROR, { - chainId, - event: "invalidNetwork", - serverError: error - })]; - } - } - return [2, logger.throwError("could not detect network", logger_1.Logger.errors.NETWORK_ERROR, { - event: "noNetwork" - })]; - } - }); - }); - }; - JsonRpcProvider3.prototype.getSigner = function(addressOrIndex) { - return new JsonRpcSigner(_constructorGuard, this, addressOrIndex); - }; - JsonRpcProvider3.prototype.getUncheckedSigner = function(addressOrIndex) { - return this.getSigner(addressOrIndex).connectUnchecked(); - }; - JsonRpcProvider3.prototype.listAccounts = function() { - var _this = this; - return this.send("eth_accounts", []).then(function(accounts) { - return accounts.map(function(a) { - return _this.formatter.address(a); - }); - }); - }; - JsonRpcProvider3.prototype.send = function(method, params) { - var _this = this; - var request = { - method, - params, - id: this._nextId++, - jsonrpc: "2.0" - }; - this.emit("debug", { - action: "request", - request: (0, properties_1.deepCopy)(request), - provider: this - }); - var cache = ["eth_chainId", "eth_blockNumber"].indexOf(method) >= 0; - if (cache && this._cache[method]) { - return this._cache[method]; - } - var result = (0, web_1.fetchJson)(this.connection, JSON.stringify(request), getResult).then(function(result2) { - _this.emit("debug", { - action: "response", - request, - response: result2, - provider: _this - }); - return result2; - }, function(error) { - _this.emit("debug", { - action: "response", - error, - request, - provider: _this - }); - throw error; - }); - if (cache) { - this._cache[method] = result; - setTimeout(function() { - _this._cache[method] = null; - }, 0); - } - return result; - }; - JsonRpcProvider3.prototype.prepareRequest = function(method, params) { - switch (method) { - case "getBlockNumber": - return ["eth_blockNumber", []]; - case "getGasPrice": - return ["eth_gasPrice", []]; - case "getBalance": - return ["eth_getBalance", [getLowerCase(params.address), params.blockTag]]; - case "getTransactionCount": - return ["eth_getTransactionCount", [getLowerCase(params.address), params.blockTag]]; - case "getCode": - return ["eth_getCode", [getLowerCase(params.address), params.blockTag]]; - case "getStorageAt": - return ["eth_getStorageAt", [getLowerCase(params.address), (0, bytes_1.hexZeroPad)(params.position, 32), params.blockTag]]; - case "sendTransaction": - return ["eth_sendRawTransaction", [params.signedTransaction]]; - case "getBlock": - if (params.blockTag) { - return ["eth_getBlockByNumber", [params.blockTag, !!params.includeTransactions]]; - } else if (params.blockHash) { - return ["eth_getBlockByHash", [params.blockHash, !!params.includeTransactions]]; - } - return null; - case "getTransaction": - return ["eth_getTransactionByHash", [params.transactionHash]]; - case "getTransactionReceipt": - return ["eth_getTransactionReceipt", [params.transactionHash]]; - case "call": { - var hexlifyTransaction = (0, properties_1.getStatic)(this.constructor, "hexlifyTransaction"); - return ["eth_call", [hexlifyTransaction(params.transaction, { from: true }), params.blockTag]]; - } - case "estimateGas": { - var hexlifyTransaction = (0, properties_1.getStatic)(this.constructor, "hexlifyTransaction"); - return ["eth_estimateGas", [hexlifyTransaction(params.transaction, { from: true })]]; - } - case "getLogs": - if (params.filter && params.filter.address != null) { - params.filter.address = getLowerCase(params.filter.address); - } - return ["eth_getLogs", [params.filter]]; - default: - break; - } - return null; - }; - JsonRpcProvider3.prototype.perform = function(method, params) { - return __awaiter(this, void 0, void 0, function() { - var tx, feeData, args, error_7; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - if (!(method === "call" || method === "estimateGas")) - return [3, 2]; - tx = params.transaction; - if (!(tx && tx.type != null && bignumber_1.BigNumber.from(tx.type).isZero())) - return [3, 2]; - if (!(tx.maxFeePerGas == null && tx.maxPriorityFeePerGas == null)) - return [3, 2]; - return [4, this.getFeeData()]; - case 1: - feeData = _a.sent(); - if (feeData.maxFeePerGas == null && feeData.maxPriorityFeePerGas == null) { - params = (0, properties_1.shallowCopy)(params); - params.transaction = (0, properties_1.shallowCopy)(tx); - delete params.transaction.type; - } - _a.label = 2; - case 2: - args = this.prepareRequest(method, params); - if (args == null) { - logger.throwError(method + " not implemented", logger_1.Logger.errors.NOT_IMPLEMENTED, { operation: method }); - } - _a.label = 3; - case 3: - _a.trys.push([3, 5, , 6]); - return [4, this.send(args[0], args[1])]; - case 4: - return [2, _a.sent()]; - case 5: - error_7 = _a.sent(); - return [2, checkError(method, error_7, params)]; - case 6: - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - JsonRpcProvider3.prototype._startEvent = function(event) { - if (event.tag === "pending") { - this._startPending(); - } - _super.prototype._startEvent.call(this, event); - }; - JsonRpcProvider3.prototype._startPending = function() { - if (this._pendingFilter != null) { - return; - } - var self2 = this; - var pendingFilter = this.send("eth_newPendingTransactionFilter", []); - this._pendingFilter = pendingFilter; - pendingFilter.then(function(filterId) { - function poll() { - self2.send("eth_getFilterChanges", [filterId]).then(function(hashes) { - if (self2._pendingFilter != pendingFilter) { - return null; - } - var seq = Promise.resolve(); - hashes.forEach(function(hash) { - self2._emitted["t:" + hash.toLowerCase()] = "pending"; - seq = seq.then(function() { - return self2.getTransaction(hash).then(function(tx) { - self2.emit("pending", tx); - return null; - }); - }); - }); - return seq.then(function() { - return timer(1e3); - }); - }).then(function() { - if (self2._pendingFilter != pendingFilter) { - self2.send("eth_uninstallFilter", [filterId]); - return; - } - setTimeout(function() { - poll(); - }, 0); - return null; - }).catch(function(error) { - }); - } - poll(); - return filterId; - }).catch(function(error) { - }); - }; - JsonRpcProvider3.prototype._stopEvent = function(event) { - if (event.tag === "pending" && this.listenerCount("pending") === 0) { - this._pendingFilter = null; - } - _super.prototype._stopEvent.call(this, event); - }; - JsonRpcProvider3.hexlifyTransaction = function(transaction, allowExtra) { - var allowed = (0, properties_1.shallowCopy)(allowedTransactionKeys); - if (allowExtra) { - for (var key in allowExtra) { - if (allowExtra[key]) { - allowed[key] = true; - } - } - } - (0, properties_1.checkProperties)(transaction, allowed); - var result = {}; - ["chainId", "gasLimit", "gasPrice", "type", "maxFeePerGas", "maxPriorityFeePerGas", "nonce", "value"].forEach(function(key2) { - if (transaction[key2] == null) { - return; - } - var value = (0, bytes_1.hexValue)(bignumber_1.BigNumber.from(transaction[key2])); - if (key2 === "gasLimit") { - key2 = "gas"; - } - result[key2] = value; - }); - ["from", "to", "data"].forEach(function(key2) { - if (transaction[key2] == null) { - return; - } - result[key2] = (0, bytes_1.hexlify)(transaction[key2]); - }); - if (transaction.accessList) { - result["accessList"] = (0, transactions_1.accessListify)(transaction.accessList); - } - return result; - }; - return JsonRpcProvider3; - }(base_provider_1.BaseProvider) - ); - exports2.JsonRpcProvider = JsonRpcProvider2; - } -}); - -// node_modules/ws/lib/constants.js -var require_constants = __commonJS({ - "node_modules/ws/lib/constants.js"(exports2, module2) { - "use strict"; - module2.exports = { - BINARY_TYPES: ["nodebuffer", "arraybuffer", "fragments"], - GUID: "258EAFA5-E914-47DA-95CA-C5AB0DC85B11", - kStatusCode: Symbol("status-code"), - kWebSocket: Symbol("websocket"), - EMPTY_BUFFER: Buffer.alloc(0), - NOOP: () => { - } - }; - } -}); - -// node_modules/ws/lib/buffer-util.js -var require_buffer_util = __commonJS({ - "node_modules/ws/lib/buffer-util.js"(exports2, module2) { - "use strict"; - var { EMPTY_BUFFER } = require_constants(); - function concat(list, totalLength) { - if (list.length === 0) - return EMPTY_BUFFER; - if (list.length === 1) - return list[0]; - const target = Buffer.allocUnsafe(totalLength); - let offset = 0; - for (let i = 0; i < list.length; i++) { - const buf = list[i]; - target.set(buf, offset); - offset += buf.length; - } - if (offset < totalLength) - return target.slice(0, offset); - return target; - } - function _mask(source, mask, output, offset, length) { - for (let i = 0; i < length; i++) { - output[offset + i] = source[i] ^ mask[i & 3]; - } - } - function _unmask(buffer, mask) { - const length = buffer.length; - for (let i = 0; i < length; i++) { - buffer[i] ^= mask[i & 3]; - } - } - function toArrayBuffer(buf) { - if (buf.byteLength === buf.buffer.byteLength) { - return buf.buffer; - } - return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength); - } - function toBuffer(data) { - toBuffer.readOnly = true; - if (Buffer.isBuffer(data)) - return data; - let buf; - if (data instanceof ArrayBuffer) { - buf = Buffer.from(data); - } else if (ArrayBuffer.isView(data)) { - buf = Buffer.from(data.buffer, data.byteOffset, data.byteLength); - } else { - buf = Buffer.from(data); - toBuffer.readOnly = false; - } - return buf; - } - try { - const bufferUtil = __nccwpck_require__(18327); - const bu = bufferUtil.BufferUtil || bufferUtil; - module2.exports = { - concat, - mask(source, mask, output, offset, length) { - if (length < 48) - _mask(source, mask, output, offset, length); - else - bu.mask(source, mask, output, offset, length); - }, - toArrayBuffer, - toBuffer, - unmask(buffer, mask) { - if (buffer.length < 32) - _unmask(buffer, mask); - else - bu.unmask(buffer, mask); - } - }; - } catch (e) { - module2.exports = { - concat, - mask: _mask, - toArrayBuffer, - toBuffer, - unmask: _unmask - }; - } - } -}); - -// node_modules/ws/lib/limiter.js -var require_limiter = __commonJS({ - "node_modules/ws/lib/limiter.js"(exports2, module2) { - "use strict"; - var kDone = Symbol("kDone"); - var kRun = Symbol("kRun"); - var Limiter = class { - /** - * Creates a new `Limiter`. - * - * @param {Number} [concurrency=Infinity] The maximum number of jobs allowed - * to run concurrently - */ - constructor(concurrency) { - this[kDone] = () => { - this.pending--; - this[kRun](); - }; - this.concurrency = concurrency || Infinity; - this.jobs = []; - this.pending = 0; - } - /** - * Adds a job to the queue. - * - * @param {Function} job The job to run - * @public - */ - add(job) { - this.jobs.push(job); - this[kRun](); - } - /** - * Removes a job from the queue and runs it if possible. - * - * @private - */ - [kRun]() { - if (this.pending === this.concurrency) - return; - if (this.jobs.length) { - const job = this.jobs.shift(); - this.pending++; - job(this[kDone]); - } - } - }; - module2.exports = Limiter; - } -}); - -// node_modules/ws/lib/permessage-deflate.js -var require_permessage_deflate = __commonJS({ - "node_modules/ws/lib/permessage-deflate.js"(exports2, module2) { - "use strict"; - var zlib2 = __nccwpck_require__(43106); - var bufferUtil = require_buffer_util(); - var Limiter = require_limiter(); - var { kStatusCode, NOOP } = require_constants(); - var TRAILER = Buffer.from([0, 0, 255, 255]); - var kPerMessageDeflate = Symbol("permessage-deflate"); - var kTotalLength = Symbol("total-length"); - var kCallback = Symbol("callback"); - var kBuffers = Symbol("buffers"); - var kError = Symbol("error"); - var zlibLimiter; - var PerMessageDeflate = class { - /** - * Creates a PerMessageDeflate instance. - * - * @param {Object} [options] Configuration options - * @param {Boolean} [options.serverNoContextTakeover=false] Request/accept - * disabling of server context takeover - * @param {Boolean} [options.clientNoContextTakeover=false] Advertise/ - * acknowledge disabling of client context takeover - * @param {(Boolean|Number)} [options.serverMaxWindowBits] Request/confirm the - * use of a custom server window size - * @param {(Boolean|Number)} [options.clientMaxWindowBits] Advertise support - * for, or request, a custom client window size - * @param {Object} [options.zlibDeflateOptions] Options to pass to zlib on - * deflate - * @param {Object} [options.zlibInflateOptions] Options to pass to zlib on - * inflate - * @param {Number} [options.threshold=1024] Size (in bytes) below which - * messages should not be compressed - * @param {Number} [options.concurrencyLimit=10] The number of concurrent - * calls to zlib - * @param {Boolean} [isServer=false] Create the instance in either server or - * client mode - * @param {Number} [maxPayload=0] The maximum allowed message length - */ - constructor(options, isServer, maxPayload) { - this._maxPayload = maxPayload | 0; - this._options = options || {}; - this._threshold = this._options.threshold !== void 0 ? this._options.threshold : 1024; - this._isServer = !!isServer; - this._deflate = null; - this._inflate = null; - this.params = null; - if (!zlibLimiter) { - const concurrency = this._options.concurrencyLimit !== void 0 ? this._options.concurrencyLimit : 10; - zlibLimiter = new Limiter(concurrency); - } - } - /** - * @type {String} - */ - static get extensionName() { - return "permessage-deflate"; - } - /** - * Create an extension negotiation offer. - * - * @return {Object} Extension parameters - * @public - */ - offer() { - const params = {}; - if (this._options.serverNoContextTakeover) { - params.server_no_context_takeover = true; - } - if (this._options.clientNoContextTakeover) { - params.client_no_context_takeover = true; - } - if (this._options.serverMaxWindowBits) { - params.server_max_window_bits = this._options.serverMaxWindowBits; - } - if (this._options.clientMaxWindowBits) { - params.client_max_window_bits = this._options.clientMaxWindowBits; - } else if (this._options.clientMaxWindowBits == null) { - params.client_max_window_bits = true; - } - return params; - } - /** - * Accept an extension negotiation offer/response. - * - * @param {Array} configurations The extension negotiation offers/reponse - * @return {Object} Accepted configuration - * @public - */ - accept(configurations) { - configurations = this.normalizeParams(configurations); - this.params = this._isServer ? this.acceptAsServer(configurations) : this.acceptAsClient(configurations); - return this.params; - } - /** - * Releases all resources used by the extension. - * - * @public - */ - cleanup() { - if (this._inflate) { - this._inflate.close(); - this._inflate = null; - } - if (this._deflate) { - const callback = this._deflate[kCallback]; - this._deflate.close(); - this._deflate = null; - if (callback) { - callback( - new Error( - "The deflate stream was closed while data was being processed" - ) - ); - } - } - } - /** - * Accept an extension negotiation offer. - * - * @param {Array} offers The extension negotiation offers - * @return {Object} Accepted configuration - * @private - */ - acceptAsServer(offers) { - const opts = this._options; - const accepted = offers.find((params) => { - if (opts.serverNoContextTakeover === false && params.server_no_context_takeover || params.server_max_window_bits && (opts.serverMaxWindowBits === false || typeof opts.serverMaxWindowBits === "number" && opts.serverMaxWindowBits > params.server_max_window_bits) || typeof opts.clientMaxWindowBits === "number" && !params.client_max_window_bits) { - return false; - } - return true; - }); - if (!accepted) { - throw new Error("None of the extension offers can be accepted"); - } - if (opts.serverNoContextTakeover) { - accepted.server_no_context_takeover = true; - } - if (opts.clientNoContextTakeover) { - accepted.client_no_context_takeover = true; - } - if (typeof opts.serverMaxWindowBits === "number") { - accepted.server_max_window_bits = opts.serverMaxWindowBits; - } - if (typeof opts.clientMaxWindowBits === "number") { - accepted.client_max_window_bits = opts.clientMaxWindowBits; - } else if (accepted.client_max_window_bits === true || opts.clientMaxWindowBits === false) { - delete accepted.client_max_window_bits; - } - return accepted; - } - /** - * Accept the extension negotiation response. - * - * @param {Array} response The extension negotiation response - * @return {Object} Accepted configuration - * @private - */ - acceptAsClient(response) { - const params = response[0]; - if (this._options.clientNoContextTakeover === false && params.client_no_context_takeover) { - throw new Error('Unexpected parameter "client_no_context_takeover"'); - } - if (!params.client_max_window_bits) { - if (typeof this._options.clientMaxWindowBits === "number") { - params.client_max_window_bits = this._options.clientMaxWindowBits; - } - } else if (this._options.clientMaxWindowBits === false || typeof this._options.clientMaxWindowBits === "number" && params.client_max_window_bits > this._options.clientMaxWindowBits) { - throw new Error( - 'Unexpected or invalid parameter "client_max_window_bits"' - ); - } - return params; - } - /** - * Normalize parameters. - * - * @param {Array} configurations The extension negotiation offers/reponse - * @return {Array} The offers/response with normalized parameters - * @private - */ - normalizeParams(configurations) { - configurations.forEach((params) => { - Object.keys(params).forEach((key) => { - let value = params[key]; - if (value.length > 1) { - throw new Error(`Parameter "${key}" must have only a single value`); - } - value = value[0]; - if (key === "client_max_window_bits") { - if (value !== true) { - const num = +value; - if (!Number.isInteger(num) || num < 8 || num > 15) { - throw new TypeError( - `Invalid value for parameter "${key}": ${value}` - ); - } - value = num; - } else if (!this._isServer) { - throw new TypeError( - `Invalid value for parameter "${key}": ${value}` - ); - } - } else if (key === "server_max_window_bits") { - const num = +value; - if (!Number.isInteger(num) || num < 8 || num > 15) { - throw new TypeError( - `Invalid value for parameter "${key}": ${value}` - ); - } - value = num; - } else if (key === "client_no_context_takeover" || key === "server_no_context_takeover") { - if (value !== true) { - throw new TypeError( - `Invalid value for parameter "${key}": ${value}` - ); - } - } else { - throw new Error(`Unknown parameter "${key}"`); - } - params[key] = value; - }); - }); - return configurations; - } - /** - * Decompress data. Concurrency limited. - * - * @param {Buffer} data Compressed data - * @param {Boolean} fin Specifies whether or not this is the last fragment - * @param {Function} callback Callback - * @public - */ - decompress(data, fin, callback) { - zlibLimiter.add((done) => { - this._decompress(data, fin, (err, result) => { - done(); - callback(err, result); - }); - }); - } - /** - * Compress data. Concurrency limited. - * - * @param {Buffer} data Data to compress - * @param {Boolean} fin Specifies whether or not this is the last fragment - * @param {Function} callback Callback - * @public - */ - compress(data, fin, callback) { - zlibLimiter.add((done) => { - this._compress(data, fin, (err, result) => { - done(); - callback(err, result); - }); - }); - } - /** - * Decompress data. - * - * @param {Buffer} data Compressed data - * @param {Boolean} fin Specifies whether or not this is the last fragment - * @param {Function} callback Callback - * @private - */ - _decompress(data, fin, callback) { - const endpoint = this._isServer ? "client" : "server"; - if (!this._inflate) { - const key = `${endpoint}_max_window_bits`; - const windowBits = typeof this.params[key] !== "number" ? zlib2.Z_DEFAULT_WINDOWBITS : this.params[key]; - this._inflate = zlib2.createInflateRaw({ - ...this._options.zlibInflateOptions, - windowBits - }); - this._inflate[kPerMessageDeflate] = this; - this._inflate[kTotalLength] = 0; - this._inflate[kBuffers] = []; - this._inflate.on("error", inflateOnError); - this._inflate.on("data", inflateOnData); - } - this._inflate[kCallback] = callback; - this._inflate.write(data); - if (fin) - this._inflate.write(TRAILER); - this._inflate.flush(() => { - const err = this._inflate[kError]; - if (err) { - this._inflate.close(); - this._inflate = null; - callback(err); - return; - } - const data2 = bufferUtil.concat( - this._inflate[kBuffers], - this._inflate[kTotalLength] - ); - if (this._inflate._readableState.endEmitted) { - this._inflate.close(); - this._inflate = null; - } else { - this._inflate[kTotalLength] = 0; - this._inflate[kBuffers] = []; - if (fin && this.params[`${endpoint}_no_context_takeover`]) { - this._inflate.reset(); - } - } - callback(null, data2); - }); - } - /** - * Compress data. - * - * @param {Buffer} data Data to compress - * @param {Boolean} fin Specifies whether or not this is the last fragment - * @param {Function} callback Callback - * @private - */ - _compress(data, fin, callback) { - const endpoint = this._isServer ? "server" : "client"; - if (!this._deflate) { - const key = `${endpoint}_max_window_bits`; - const windowBits = typeof this.params[key] !== "number" ? zlib2.Z_DEFAULT_WINDOWBITS : this.params[key]; - this._deflate = zlib2.createDeflateRaw({ - ...this._options.zlibDeflateOptions, - windowBits - }); - this._deflate[kTotalLength] = 0; - this._deflate[kBuffers] = []; - this._deflate.on("error", NOOP); - this._deflate.on("data", deflateOnData); - } - this._deflate[kCallback] = callback; - this._deflate.write(data); - this._deflate.flush(zlib2.Z_SYNC_FLUSH, () => { - if (!this._deflate) { - return; - } - let data2 = bufferUtil.concat( - this._deflate[kBuffers], - this._deflate[kTotalLength] - ); - if (fin) - data2 = data2.slice(0, data2.length - 4); - this._deflate[kCallback] = null; - this._deflate[kTotalLength] = 0; - this._deflate[kBuffers] = []; - if (fin && this.params[`${endpoint}_no_context_takeover`]) { - this._deflate.reset(); - } - callback(null, data2); - }); - } - }; - module2.exports = PerMessageDeflate; - function deflateOnData(chunk) { - this[kBuffers].push(chunk); - this[kTotalLength] += chunk.length; - } - function inflateOnData(chunk) { - this[kTotalLength] += chunk.length; - if (this[kPerMessageDeflate]._maxPayload < 1 || this[kTotalLength] <= this[kPerMessageDeflate]._maxPayload) { - this[kBuffers].push(chunk); - return; - } - this[kError] = new RangeError("Max payload size exceeded"); - this[kError][kStatusCode] = 1009; - this.removeListener("data", inflateOnData); - this.reset(); - } - function inflateOnError(err) { - this[kPerMessageDeflate]._inflate = null; - err[kStatusCode] = 1007; - this[kCallback](err); - } - } -}); - -// node_modules/ws/lib/validation.js -var require_validation = __commonJS({ - "node_modules/ws/lib/validation.js"(exports2, module2) { - "use strict"; - function isValidStatusCode(code) { - return code >= 1e3 && code <= 1014 && code !== 1004 && code !== 1005 && code !== 1006 || code >= 3e3 && code <= 4999; - } - function _isValidUTF8(buf) { - const len = buf.length; - let i = 0; - while (i < len) { - if ((buf[i] & 128) === 0) { - i++; - } else if ((buf[i] & 224) === 192) { - if (i + 1 === len || (buf[i + 1] & 192) !== 128 || (buf[i] & 254) === 192) { - return false; - } - i += 2; - } else if ((buf[i] & 240) === 224) { - if (i + 2 >= len || (buf[i + 1] & 192) !== 128 || (buf[i + 2] & 192) !== 128 || buf[i] === 224 && (buf[i + 1] & 224) === 128 || // Overlong - buf[i] === 237 && (buf[i + 1] & 224) === 160) { - return false; - } - i += 3; - } else if ((buf[i] & 248) === 240) { - if (i + 3 >= len || (buf[i + 1] & 192) !== 128 || (buf[i + 2] & 192) !== 128 || (buf[i + 3] & 192) !== 128 || buf[i] === 240 && (buf[i + 1] & 240) === 128 || // Overlong - buf[i] === 244 && buf[i + 1] > 143 || buf[i] > 244) { - return false; - } - i += 4; - } else { - return false; - } - } - return true; - } - try { - let isValidUTF8 = __nccwpck_require__(62414); - if (typeof isValidUTF8 === "object") { - isValidUTF8 = isValidUTF8.Validation.isValidUTF8; - } - module2.exports = { - isValidStatusCode, - isValidUTF8(buf) { - return buf.length < 150 ? _isValidUTF8(buf) : isValidUTF8(buf); - } - }; - } catch (e) { - module2.exports = { - isValidStatusCode, - isValidUTF8: _isValidUTF8 - }; - } - } -}); - -// node_modules/ws/lib/receiver.js -var require_receiver = __commonJS({ - "node_modules/ws/lib/receiver.js"(exports2, module2) { - "use strict"; - var { Writable } = __nccwpck_require__(2203); - var PerMessageDeflate = require_permessage_deflate(); - var { - BINARY_TYPES, - EMPTY_BUFFER, - kStatusCode, - kWebSocket - } = require_constants(); - var { concat, toArrayBuffer, unmask } = require_buffer_util(); - var { isValidStatusCode, isValidUTF8 } = require_validation(); - var GET_INFO = 0; - var GET_PAYLOAD_LENGTH_16 = 1; - var GET_PAYLOAD_LENGTH_64 = 2; - var GET_MASK = 3; - var GET_DATA = 4; - var INFLATING = 5; - var Receiver = class extends Writable { - /** - * Creates a Receiver instance. - * - * @param {String} [binaryType=nodebuffer] The type for binary data - * @param {Object} [extensions] An object containing the negotiated extensions - * @param {Boolean} [isServer=false] Specifies whether to operate in client or - * server mode - * @param {Number} [maxPayload=0] The maximum allowed message length - */ - constructor(binaryType, extensions, isServer, maxPayload) { - super(); - this._binaryType = binaryType || BINARY_TYPES[0]; - this[kWebSocket] = void 0; - this._extensions = extensions || {}; - this._isServer = !!isServer; - this._maxPayload = maxPayload | 0; - this._bufferedBytes = 0; - this._buffers = []; - this._compressed = false; - this._payloadLength = 0; - this._mask = void 0; - this._fragmented = 0; - this._masked = false; - this._fin = false; - this._opcode = 0; - this._totalPayloadLength = 0; - this._messageLength = 0; - this._fragments = []; - this._state = GET_INFO; - this._loop = false; - } - /** - * Implements `Writable.prototype._write()`. - * - * @param {Buffer} chunk The chunk of data to write - * @param {String} encoding The character encoding of `chunk` - * @param {Function} cb Callback - * @private - */ - _write(chunk, encoding, cb) { - if (this._opcode === 8 && this._state == GET_INFO) - return cb(); - this._bufferedBytes += chunk.length; - this._buffers.push(chunk); - this.startLoop(cb); - } - /** - * Consumes `n` bytes from the buffered data. - * - * @param {Number} n The number of bytes to consume - * @return {Buffer} The consumed bytes - * @private - */ - consume(n) { - this._bufferedBytes -= n; - if (n === this._buffers[0].length) - return this._buffers.shift(); - if (n < this._buffers[0].length) { - const buf = this._buffers[0]; - this._buffers[0] = buf.slice(n); - return buf.slice(0, n); - } - const dst = Buffer.allocUnsafe(n); - do { - const buf = this._buffers[0]; - const offset = dst.length - n; - if (n >= buf.length) { - dst.set(this._buffers.shift(), offset); - } else { - dst.set(new Uint8Array(buf.buffer, buf.byteOffset, n), offset); - this._buffers[0] = buf.slice(n); - } - n -= buf.length; - } while (n > 0); - return dst; - } - /** - * Starts the parsing loop. - * - * @param {Function} cb Callback - * @private - */ - startLoop(cb) { - let err; - this._loop = true; - do { - switch (this._state) { - case GET_INFO: - err = this.getInfo(); - break; - case GET_PAYLOAD_LENGTH_16: - err = this.getPayloadLength16(); - break; - case GET_PAYLOAD_LENGTH_64: - err = this.getPayloadLength64(); - break; - case GET_MASK: - this.getMask(); - break; - case GET_DATA: - err = this.getData(cb); - break; - default: - this._loop = false; - return; - } - } while (this._loop); - cb(err); - } - /** - * Reads the first two bytes of a frame. - * - * @return {(RangeError|undefined)} A possible error - * @private - */ - getInfo() { - if (this._bufferedBytes < 2) { - this._loop = false; - return; - } - const buf = this.consume(2); - if ((buf[0] & 48) !== 0) { - this._loop = false; - return error(RangeError, "RSV2 and RSV3 must be clear", true, 1002); - } - const compressed = (buf[0] & 64) === 64; - if (compressed && !this._extensions[PerMessageDeflate.extensionName]) { - this._loop = false; - return error(RangeError, "RSV1 must be clear", true, 1002); - } - this._fin = (buf[0] & 128) === 128; - this._opcode = buf[0] & 15; - this._payloadLength = buf[1] & 127; - if (this._opcode === 0) { - if (compressed) { - this._loop = false; - return error(RangeError, "RSV1 must be clear", true, 1002); - } - if (!this._fragmented) { - this._loop = false; - return error(RangeError, "invalid opcode 0", true, 1002); - } - this._opcode = this._fragmented; - } else if (this._opcode === 1 || this._opcode === 2) { - if (this._fragmented) { - this._loop = false; - return error(RangeError, `invalid opcode ${this._opcode}`, true, 1002); - } - this._compressed = compressed; - } else if (this._opcode > 7 && this._opcode < 11) { - if (!this._fin) { - this._loop = false; - return error(RangeError, "FIN must be set", true, 1002); - } - if (compressed) { - this._loop = false; - return error(RangeError, "RSV1 must be clear", true, 1002); - } - if (this._payloadLength > 125) { - this._loop = false; - return error( - RangeError, - `invalid payload length ${this._payloadLength}`, - true, - 1002 - ); - } - } else { - this._loop = false; - return error(RangeError, `invalid opcode ${this._opcode}`, true, 1002); - } - if (!this._fin && !this._fragmented) - this._fragmented = this._opcode; - this._masked = (buf[1] & 128) === 128; - if (this._isServer) { - if (!this._masked) { - this._loop = false; - return error(RangeError, "MASK must be set", true, 1002); - } - } else if (this._masked) { - this._loop = false; - return error(RangeError, "MASK must be clear", true, 1002); - } - if (this._payloadLength === 126) - this._state = GET_PAYLOAD_LENGTH_16; - else if (this._payloadLength === 127) - this._state = GET_PAYLOAD_LENGTH_64; - else - return this.haveLength(); - } - /** - * Gets extended payload length (7+16). - * - * @return {(RangeError|undefined)} A possible error - * @private - */ - getPayloadLength16() { - if (this._bufferedBytes < 2) { - this._loop = false; - return; - } - this._payloadLength = this.consume(2).readUInt16BE(0); - return this.haveLength(); - } - /** - * Gets extended payload length (7+64). - * - * @return {(RangeError|undefined)} A possible error - * @private - */ - getPayloadLength64() { - if (this._bufferedBytes < 8) { - this._loop = false; - return; - } - const buf = this.consume(8); - const num = buf.readUInt32BE(0); - if (num > Math.pow(2, 53 - 32) - 1) { - this._loop = false; - return error( - RangeError, - "Unsupported WebSocket frame: payload length > 2^53 - 1", - false, - 1009 - ); - } - this._payloadLength = num * Math.pow(2, 32) + buf.readUInt32BE(4); - return this.haveLength(); - } - /** - * Payload length has been read. - * - * @return {(RangeError|undefined)} A possible error - * @private - */ - haveLength() { - if (this._payloadLength && this._opcode < 8) { - this._totalPayloadLength += this._payloadLength; - if (this._totalPayloadLength > this._maxPayload && this._maxPayload > 0) { - this._loop = false; - return error(RangeError, "Max payload size exceeded", false, 1009); - } - } - if (this._masked) - this._state = GET_MASK; - else - this._state = GET_DATA; - } - /** - * Reads mask bytes. - * - * @private - */ - getMask() { - if (this._bufferedBytes < 4) { - this._loop = false; - return; - } - this._mask = this.consume(4); - this._state = GET_DATA; - } - /** - * Reads data bytes. - * - * @param {Function} cb Callback - * @return {(Error|RangeError|undefined)} A possible error - * @private - */ - getData(cb) { - let data = EMPTY_BUFFER; - if (this._payloadLength) { - if (this._bufferedBytes < this._payloadLength) { - this._loop = false; - return; - } - data = this.consume(this._payloadLength); - if (this._masked) - unmask(data, this._mask); - } - if (this._opcode > 7) - return this.controlMessage(data); - if (this._compressed) { - this._state = INFLATING; - this.decompress(data, cb); - return; - } - if (data.length) { - this._messageLength = this._totalPayloadLength; - this._fragments.push(data); - } - return this.dataMessage(); - } - /** - * Decompresses data. - * - * @param {Buffer} data Compressed data - * @param {Function} cb Callback - * @private - */ - decompress(data, cb) { - const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName]; - perMessageDeflate.decompress(data, this._fin, (err, buf) => { - if (err) - return cb(err); - if (buf.length) { - this._messageLength += buf.length; - if (this._messageLength > this._maxPayload && this._maxPayload > 0) { - return cb( - error(RangeError, "Max payload size exceeded", false, 1009) - ); - } - this._fragments.push(buf); - } - const er = this.dataMessage(); - if (er) - return cb(er); - this.startLoop(cb); - }); - } - /** - * Handles a data message. - * - * @return {(Error|undefined)} A possible error - * @private - */ - dataMessage() { - if (this._fin) { - const messageLength = this._messageLength; - const fragments = this._fragments; - this._totalPayloadLength = 0; - this._messageLength = 0; - this._fragmented = 0; - this._fragments = []; - if (this._opcode === 2) { - let data; - if (this._binaryType === "nodebuffer") { - data = concat(fragments, messageLength); - } else if (this._binaryType === "arraybuffer") { - data = toArrayBuffer(concat(fragments, messageLength)); - } else { - data = fragments; - } - this.emit("message", data); - } else { - const buf = concat(fragments, messageLength); - if (!isValidUTF8(buf)) { - this._loop = false; - return error(Error, "invalid UTF-8 sequence", true, 1007); - } - this.emit("message", buf.toString()); - } - } - this._state = GET_INFO; - } - /** - * Handles a control message. - * - * @param {Buffer} data Data to handle - * @return {(Error|RangeError|undefined)} A possible error - * @private - */ - controlMessage(data) { - if (this._opcode === 8) { - this._loop = false; - if (data.length === 0) { - this.emit("conclude", 1005, ""); - this.end(); - } else if (data.length === 1) { - return error(RangeError, "invalid payload length 1", true, 1002); - } else { - const code = data.readUInt16BE(0); - if (!isValidStatusCode(code)) { - return error(RangeError, `invalid status code ${code}`, true, 1002); - } - const buf = data.slice(2); - if (!isValidUTF8(buf)) { - return error(Error, "invalid UTF-8 sequence", true, 1007); - } - this.emit("conclude", code, buf.toString()); - this.end(); - } - } else if (this._opcode === 9) { - this.emit("ping", data); - } else { - this.emit("pong", data); - } - this._state = GET_INFO; - } - }; - module2.exports = Receiver; - function error(ErrorCtor, message, prefix, statusCode) { - const err = new ErrorCtor( - prefix ? `Invalid WebSocket frame: ${message}` : message - ); - Error.captureStackTrace(err, error); - err[kStatusCode] = statusCode; - return err; - } - } -}); - -// node_modules/ws/lib/sender.js -var require_sender = __commonJS({ - "node_modules/ws/lib/sender.js"(exports2, module2) { - "use strict"; - var { randomFillSync } = __nccwpck_require__(76982); - var PerMessageDeflate = require_permessage_deflate(); - var { EMPTY_BUFFER } = require_constants(); - var { isValidStatusCode } = require_validation(); - var { mask: applyMask, toBuffer } = require_buffer_util(); - var mask = Buffer.alloc(4); - var Sender = class _Sender { - /** - * Creates a Sender instance. - * - * @param {net.Socket} socket The connection socket - * @param {Object} [extensions] An object containing the negotiated extensions - */ - constructor(socket, extensions) { - this._extensions = extensions || {}; - this._socket = socket; - this._firstFragment = true; - this._compress = false; - this._bufferedBytes = 0; - this._deflating = false; - this._queue = []; - } - /** - * Frames a piece of data according to the HyBi WebSocket protocol. - * - * @param {Buffer} data The data to frame - * @param {Object} options Options object - * @param {Number} options.opcode The opcode - * @param {Boolean} [options.readOnly=false] Specifies whether `data` can be - * modified - * @param {Boolean} [options.fin=false] Specifies whether or not to set the - * FIN bit - * @param {Boolean} [options.mask=false] Specifies whether or not to mask - * `data` - * @param {Boolean} [options.rsv1=false] Specifies whether or not to set the - * RSV1 bit - * @return {Buffer[]} The framed data as a list of `Buffer` instances - * @public - */ - static frame(data, options) { - const merge2 = options.mask && options.readOnly; - let offset = options.mask ? 6 : 2; - let payloadLength = data.length; - if (data.length >= 65536) { - offset += 8; - payloadLength = 127; - } else if (data.length > 125) { - offset += 2; - payloadLength = 126; - } - const target = Buffer.allocUnsafe(merge2 ? data.length + offset : offset); - target[0] = options.fin ? options.opcode | 128 : options.opcode; - if (options.rsv1) - target[0] |= 64; - target[1] = payloadLength; - if (payloadLength === 126) { - target.writeUInt16BE(data.length, 2); - } else if (payloadLength === 127) { - target.writeUInt32BE(0, 2); - target.writeUInt32BE(data.length, 6); - } - if (!options.mask) - return [target, data]; - randomFillSync(mask, 0, 4); - target[1] |= 128; - target[offset - 4] = mask[0]; - target[offset - 3] = mask[1]; - target[offset - 2] = mask[2]; - target[offset - 1] = mask[3]; - if (merge2) { - applyMask(data, mask, target, offset, data.length); - return [target]; - } - applyMask(data, mask, data, 0, data.length); - return [target, data]; - } - /** - * Sends a close message to the other peer. - * - * @param {Number} [code] The status code component of the body - * @param {String} [data] The message component of the body - * @param {Boolean} [mask=false] Specifies whether or not to mask the message - * @param {Function} [cb] Callback - * @public - */ - close(code, data, mask2, cb) { - let buf; - if (code === void 0) { - buf = EMPTY_BUFFER; - } else if (typeof code !== "number" || !isValidStatusCode(code)) { - throw new TypeError("First argument must be a valid error code number"); - } else if (data === void 0 || data === "") { - buf = Buffer.allocUnsafe(2); - buf.writeUInt16BE(code, 0); - } else { - const length = Buffer.byteLength(data); - if (length > 123) { - throw new RangeError("The message must not be greater than 123 bytes"); - } - buf = Buffer.allocUnsafe(2 + length); - buf.writeUInt16BE(code, 0); - buf.write(data, 2); - } - if (this._deflating) { - this.enqueue([this.doClose, buf, mask2, cb]); - } else { - this.doClose(buf, mask2, cb); - } - } - /** - * Frames and sends a close message. - * - * @param {Buffer} data The message to send - * @param {Boolean} [mask=false] Specifies whether or not to mask `data` - * @param {Function} [cb] Callback - * @private - */ - doClose(data, mask2, cb) { - this.sendFrame( - _Sender.frame(data, { - fin: true, - rsv1: false, - opcode: 8, - mask: mask2, - readOnly: false - }), - cb - ); - } - /** - * Sends a ping message to the other peer. - * - * @param {*} data The message to send - * @param {Boolean} [mask=false] Specifies whether or not to mask `data` - * @param {Function} [cb] Callback - * @public - */ - ping(data, mask2, cb) { - const buf = toBuffer(data); - if (buf.length > 125) { - throw new RangeError("The data size must not be greater than 125 bytes"); - } - if (this._deflating) { - this.enqueue([this.doPing, buf, mask2, toBuffer.readOnly, cb]); - } else { - this.doPing(buf, mask2, toBuffer.readOnly, cb); - } - } - /** - * Frames and sends a ping message. - * - * @param {Buffer} data The message to send - * @param {Boolean} [mask=false] Specifies whether or not to mask `data` - * @param {Boolean} [readOnly=false] Specifies whether `data` can be modified - * @param {Function} [cb] Callback - * @private - */ - doPing(data, mask2, readOnly, cb) { - this.sendFrame( - _Sender.frame(data, { - fin: true, - rsv1: false, - opcode: 9, - mask: mask2, - readOnly - }), - cb - ); - } - /** - * Sends a pong message to the other peer. - * - * @param {*} data The message to send - * @param {Boolean} [mask=false] Specifies whether or not to mask `data` - * @param {Function} [cb] Callback - * @public - */ - pong(data, mask2, cb) { - const buf = toBuffer(data); - if (buf.length > 125) { - throw new RangeError("The data size must not be greater than 125 bytes"); - } - if (this._deflating) { - this.enqueue([this.doPong, buf, mask2, toBuffer.readOnly, cb]); - } else { - this.doPong(buf, mask2, toBuffer.readOnly, cb); - } - } - /** - * Frames and sends a pong message. - * - * @param {Buffer} data The message to send - * @param {Boolean} [mask=false] Specifies whether or not to mask `data` - * @param {Boolean} [readOnly=false] Specifies whether `data` can be modified - * @param {Function} [cb] Callback - * @private - */ - doPong(data, mask2, readOnly, cb) { - this.sendFrame( - _Sender.frame(data, { - fin: true, - rsv1: false, - opcode: 10, - mask: mask2, - readOnly - }), - cb - ); - } - /** - * Sends a data message to the other peer. - * - * @param {*} data The message to send - * @param {Object} options Options object - * @param {Boolean} [options.compress=false] Specifies whether or not to - * compress `data` - * @param {Boolean} [options.binary=false] Specifies whether `data` is binary - * or text - * @param {Boolean} [options.fin=false] Specifies whether the fragment is the - * last one - * @param {Boolean} [options.mask=false] Specifies whether or not to mask - * `data` - * @param {Function} [cb] Callback - * @public - */ - send(data, options, cb) { - const buf = toBuffer(data); - const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName]; - let opcode = options.binary ? 2 : 1; - let rsv1 = options.compress; - if (this._firstFragment) { - this._firstFragment = false; - if (rsv1 && perMessageDeflate) { - rsv1 = buf.length >= perMessageDeflate._threshold; - } - this._compress = rsv1; - } else { - rsv1 = false; - opcode = 0; - } - if (options.fin) - this._firstFragment = true; - if (perMessageDeflate) { - const opts = { - fin: options.fin, - rsv1, - opcode, - mask: options.mask, - readOnly: toBuffer.readOnly - }; - if (this._deflating) { - this.enqueue([this.dispatch, buf, this._compress, opts, cb]); - } else { - this.dispatch(buf, this._compress, opts, cb); - } - } else { - this.sendFrame( - _Sender.frame(buf, { - fin: options.fin, - rsv1: false, - opcode, - mask: options.mask, - readOnly: toBuffer.readOnly - }), - cb - ); - } - } - /** - * Dispatches a data message. - * - * @param {Buffer} data The message to send - * @param {Boolean} [compress=false] Specifies whether or not to compress - * `data` - * @param {Object} options Options object - * @param {Number} options.opcode The opcode - * @param {Boolean} [options.readOnly=false] Specifies whether `data` can be - * modified - * @param {Boolean} [options.fin=false] Specifies whether or not to set the - * FIN bit - * @param {Boolean} [options.mask=false] Specifies whether or not to mask - * `data` - * @param {Boolean} [options.rsv1=false] Specifies whether or not to set the - * RSV1 bit - * @param {Function} [cb] Callback - * @private - */ - dispatch(data, compress, options, cb) { - if (!compress) { - this.sendFrame(_Sender.frame(data, options), cb); - return; - } - const perMessageDeflate = this._extensions[PerMessageDeflate.extensionName]; - this._bufferedBytes += data.length; - this._deflating = true; - perMessageDeflate.compress(data, options.fin, (_, buf) => { - if (this._socket.destroyed) { - const err = new Error( - "The socket was closed while data was being compressed" - ); - if (typeof cb === "function") - cb(err); - for (let i = 0; i < this._queue.length; i++) { - const callback = this._queue[i][4]; - if (typeof callback === "function") - callback(err); - } - return; - } - this._bufferedBytes -= data.length; - this._deflating = false; - options.readOnly = false; - this.sendFrame(_Sender.frame(buf, options), cb); - this.dequeue(); - }); - } - /** - * Executes queued send operations. - * - * @private - */ - dequeue() { - while (!this._deflating && this._queue.length) { - const params = this._queue.shift(); - this._bufferedBytes -= params[1].length; - Reflect.apply(params[0], this, params.slice(1)); - } - } - /** - * Enqueues a send operation. - * - * @param {Array} params Send operation parameters. - * @private - */ - enqueue(params) { - this._bufferedBytes += params[1].length; - this._queue.push(params); - } - /** - * Sends a frame. - * - * @param {Buffer[]} list The frame to send - * @param {Function} [cb] Callback - * @private - */ - sendFrame(list, cb) { - if (list.length === 2) { - this._socket.cork(); - this._socket.write(list[0]); - this._socket.write(list[1], cb); - this._socket.uncork(); - } else { - this._socket.write(list[0], cb); - } - } - }; - module2.exports = Sender; - } -}); - -// node_modules/ws/lib/event-target.js -var require_event_target = __commonJS({ - "node_modules/ws/lib/event-target.js"(exports2, module2) { - "use strict"; - var Event = class { - /** - * Create a new `Event`. - * - * @param {String} type The name of the event - * @param {Object} target A reference to the target to which the event was - * dispatched - */ - constructor(type, target) { - this.target = target; - this.type = type; - } - }; - var MessageEvent = class extends Event { - /** - * Create a new `MessageEvent`. - * - * @param {(String|Buffer|ArrayBuffer|Buffer[])} data The received data - * @param {WebSocket} target A reference to the target to which the event was - * dispatched - */ - constructor(data, target) { - super("message", target); - this.data = data; - } - }; - var CloseEvent = class extends Event { - /** - * Create a new `CloseEvent`. - * - * @param {Number} code The status code explaining why the connection is being - * closed - * @param {String} reason A human-readable string explaining why the - * connection is closing - * @param {WebSocket} target A reference to the target to which the event was - * dispatched - */ - constructor(code, reason, target) { - super("close", target); - this.wasClean = target._closeFrameReceived && target._closeFrameSent; - this.reason = reason; - this.code = code; - } - }; - var OpenEvent = class extends Event { - /** - * Create a new `OpenEvent`. - * - * @param {WebSocket} target A reference to the target to which the event was - * dispatched - */ - constructor(target) { - super("open", target); - } - }; - var ErrorEvent = class extends Event { - /** - * Create a new `ErrorEvent`. - * - * @param {Object} error The error that generated this event - * @param {WebSocket} target A reference to the target to which the event was - * dispatched - */ - constructor(error, target) { - super("error", target); - this.message = error.message; - this.error = error; - } - }; - var EventTarget = { - /** - * Register an event listener. - * - * @param {String} type A string representing the event type to listen for - * @param {Function} listener The listener to add - * @param {Object} [options] An options object specifies characteristics about - * the event listener - * @param {Boolean} [options.once=false] A `Boolean`` indicating that the - * listener should be invoked at most once after being added. If `true`, - * the listener would be automatically removed when invoked. - * @public - */ - addEventListener(type, listener, options) { - if (typeof listener !== "function") - return; - function onMessage(data) { - listener.call(this, new MessageEvent(data, this)); - } - function onClose(code, message) { - listener.call(this, new CloseEvent(code, message, this)); - } - function onError(error) { - listener.call(this, new ErrorEvent(error, this)); - } - function onOpen() { - listener.call(this, new OpenEvent(this)); - } - const method = options && options.once ? "once" : "on"; - if (type === "message") { - onMessage._listener = listener; - this[method](type, onMessage); - } else if (type === "close") { - onClose._listener = listener; - this[method](type, onClose); - } else if (type === "error") { - onError._listener = listener; - this[method](type, onError); - } else if (type === "open") { - onOpen._listener = listener; - this[method](type, onOpen); - } else { - this[method](type, listener); - } - }, - /** - * Remove an event listener. - * - * @param {String} type A string representing the event type to remove - * @param {Function} listener The listener to remove - * @public - */ - removeEventListener(type, listener) { - const listeners = this.listeners(type); - for (let i = 0; i < listeners.length; i++) { - if (listeners[i] === listener || listeners[i]._listener === listener) { - this.removeListener(type, listeners[i]); - } - } - } - }; - module2.exports = EventTarget; - } -}); - -// node_modules/ws/lib/extension.js -var require_extension = __commonJS({ - "node_modules/ws/lib/extension.js"(exports2, module2) { - "use strict"; - var tokenChars = [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - // 0 - 15 - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - // 16 - 31 - 0, - 1, - 0, - 1, - 1, - 1, - 1, - 1, - 0, - 0, - 1, - 1, - 0, - 1, - 1, - 0, - // 32 - 47 - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - // 48 - 63 - 0, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - // 64 - 79 - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 0, - 0, - 0, - 1, - 1, - // 80 - 95 - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - // 96 - 111 - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 0, - 1, - 0, - 1, - 0 - // 112 - 127 - ]; - function push(dest, name, elem) { - if (dest[name] === void 0) - dest[name] = [elem]; - else - dest[name].push(elem); - } - function parse(header) { - const offers = /* @__PURE__ */ Object.create(null); - if (header === void 0 || header === "") - return offers; - let params = /* @__PURE__ */ Object.create(null); - let mustUnescape = false; - let isEscaping = false; - let inQuotes = false; - let extensionName; - let paramName; - let start = -1; - let end = -1; - let i = 0; - for (; i < header.length; i++) { - const code = header.charCodeAt(i); - if (extensionName === void 0) { - if (end === -1 && tokenChars[code] === 1) { - if (start === -1) - start = i; - } else if (code === 32 || code === 9) { - if (end === -1 && start !== -1) - end = i; - } else if (code === 59 || code === 44) { - if (start === -1) { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - if (end === -1) - end = i; - const name = header.slice(start, end); - if (code === 44) { - push(offers, name, params); - params = /* @__PURE__ */ Object.create(null); - } else { - extensionName = name; - } - start = end = -1; - } else { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - } else if (paramName === void 0) { - if (end === -1 && tokenChars[code] === 1) { - if (start === -1) - start = i; - } else if (code === 32 || code === 9) { - if (end === -1 && start !== -1) - end = i; - } else if (code === 59 || code === 44) { - if (start === -1) { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - if (end === -1) - end = i; - push(params, header.slice(start, end), true); - if (code === 44) { - push(offers, extensionName, params); - params = /* @__PURE__ */ Object.create(null); - extensionName = void 0; - } - start = end = -1; - } else if (code === 61 && start !== -1 && end === -1) { - paramName = header.slice(start, i); - start = end = -1; - } else { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - } else { - if (isEscaping) { - if (tokenChars[code] !== 1) { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - if (start === -1) - start = i; - else if (!mustUnescape) - mustUnescape = true; - isEscaping = false; - } else if (inQuotes) { - if (tokenChars[code] === 1) { - if (start === -1) - start = i; - } else if (code === 34 && start !== -1) { - inQuotes = false; - end = i; - } else if (code === 92) { - isEscaping = true; - } else { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - } else if (code === 34 && header.charCodeAt(i - 1) === 61) { - inQuotes = true; - } else if (end === -1 && tokenChars[code] === 1) { - if (start === -1) - start = i; - } else if (start !== -1 && (code === 32 || code === 9)) { - if (end === -1) - end = i; - } else if (code === 59 || code === 44) { - if (start === -1) { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - if (end === -1) - end = i; - let value = header.slice(start, end); - if (mustUnescape) { - value = value.replace(/\\/g, ""); - mustUnescape = false; - } - push(params, paramName, value); - if (code === 44) { - push(offers, extensionName, params); - params = /* @__PURE__ */ Object.create(null); - extensionName = void 0; - } - paramName = void 0; - start = end = -1; - } else { - throw new SyntaxError(`Unexpected character at index ${i}`); - } - } - } - if (start === -1 || inQuotes) { - throw new SyntaxError("Unexpected end of input"); - } - if (end === -1) - end = i; - const token = header.slice(start, end); - if (extensionName === void 0) { - push(offers, token, params); - } else { - if (paramName === void 0) { - push(params, token, true); - } else if (mustUnescape) { - push(params, paramName, token.replace(/\\/g, "")); - } else { - push(params, paramName, token); - } - push(offers, extensionName, params); - } - return offers; - } - function format(extensions) { - return Object.keys(extensions).map((extension) => { - let configurations = extensions[extension]; - if (!Array.isArray(configurations)) - configurations = [configurations]; - return configurations.map((params) => { - return [extension].concat( - Object.keys(params).map((k) => { - let values = params[k]; - if (!Array.isArray(values)) - values = [values]; - return values.map((v) => v === true ? k : `${k}=${v}`).join("; "); - }) - ).join("; "); - }).join(", "); - }).join(", "); - } - module2.exports = { format, parse }; - } -}); - -// node_modules/ws/lib/websocket.js -var require_websocket = __commonJS({ - "node_modules/ws/lib/websocket.js"(exports2, module2) { - "use strict"; - var EventEmitter2 = __nccwpck_require__(24434); - var https2 = __nccwpck_require__(65692); - var http2 = __nccwpck_require__(58611); - var net = __nccwpck_require__(69278); - var tls = __nccwpck_require__(64756); - var { randomBytes, createHash } = __nccwpck_require__(76982); - var { URL: URL2 } = __nccwpck_require__(87016); - var PerMessageDeflate = require_permessage_deflate(); - var Receiver = require_receiver(); - var Sender = require_sender(); - var { - BINARY_TYPES, - EMPTY_BUFFER, - GUID, - kStatusCode, - kWebSocket, - NOOP - } = require_constants(); - var { addEventListener, removeEventListener } = require_event_target(); - var { format, parse } = require_extension(); - var { toBuffer } = require_buffer_util(); - var readyStates = ["CONNECTING", "OPEN", "CLOSING", "CLOSED"]; - var protocolVersions = [8, 13]; - var closeTimeout = 30 * 1e3; - var WebSocket = class _WebSocket extends EventEmitter2 { - /** - * Create a new `WebSocket`. - * - * @param {(String|url.URL)} address The URL to which to connect - * @param {(String|String[])} [protocols] The subprotocols - * @param {Object} [options] Connection options - */ - constructor(address, protocols, options) { - super(); - this._binaryType = BINARY_TYPES[0]; - this._closeCode = 1006; - this._closeFrameReceived = false; - this._closeFrameSent = false; - this._closeMessage = ""; - this._closeTimer = null; - this._extensions = {}; - this._protocol = ""; - this._readyState = _WebSocket.CONNECTING; - this._receiver = null; - this._sender = null; - this._socket = null; - if (address !== null) { - this._bufferedAmount = 0; - this._isServer = false; - this._redirects = 0; - if (Array.isArray(protocols)) { - protocols = protocols.join(", "); - } else if (typeof protocols === "object" && protocols !== null) { - options = protocols; - protocols = void 0; - } - initAsClient(this, address, protocols, options); - } else { - this._isServer = true; - } - } - /** - * This deviates from the WHATWG interface since ws doesn't support the - * required default "blob" type (instead we define a custom "nodebuffer" - * type). - * - * @type {String} - */ - get binaryType() { - return this._binaryType; - } - set binaryType(type) { - if (!BINARY_TYPES.includes(type)) - return; - this._binaryType = type; - if (this._receiver) - this._receiver._binaryType = type; - } - /** - * @type {Number} - */ - get bufferedAmount() { - if (!this._socket) - return this._bufferedAmount; - return this._socket._writableState.length + this._sender._bufferedBytes; - } - /** - * @type {String} - */ - get extensions() { - return Object.keys(this._extensions).join(); - } - /** - * @type {String} - */ - get protocol() { - return this._protocol; - } - /** - * @type {Number} - */ - get readyState() { - return this._readyState; - } - /** - * @type {String} - */ - get url() { - return this._url; - } - /** - * Set up the socket and the internal resources. - * - * @param {net.Socket} socket The network socket between the server and client - * @param {Buffer} head The first packet of the upgraded stream - * @param {Number} [maxPayload=0] The maximum allowed message size - * @private - */ - setSocket(socket, head, maxPayload) { - const receiver = new Receiver( - this.binaryType, - this._extensions, - this._isServer, - maxPayload - ); - this._sender = new Sender(socket, this._extensions); - this._receiver = receiver; - this._socket = socket; - receiver[kWebSocket] = this; - socket[kWebSocket] = this; - receiver.on("conclude", receiverOnConclude); - receiver.on("drain", receiverOnDrain); - receiver.on("error", receiverOnError); - receiver.on("message", receiverOnMessage); - receiver.on("ping", receiverOnPing); - receiver.on("pong", receiverOnPong); - socket.setTimeout(0); - socket.setNoDelay(); - if (head.length > 0) - socket.unshift(head); - socket.on("close", socketOnClose); - socket.on("data", socketOnData); - socket.on("end", socketOnEnd); - socket.on("error", socketOnError); - this._readyState = _WebSocket.OPEN; - this.emit("open"); - } - /** - * Emit the `'close'` event. - * - * @private - */ - emitClose() { - if (!this._socket) { - this._readyState = _WebSocket.CLOSED; - this.emit("close", this._closeCode, this._closeMessage); - return; - } - if (this._extensions[PerMessageDeflate.extensionName]) { - this._extensions[PerMessageDeflate.extensionName].cleanup(); - } - this._receiver.removeAllListeners(); - this._readyState = _WebSocket.CLOSED; - this.emit("close", this._closeCode, this._closeMessage); - } - /** - * Start a closing handshake. - * - * +----------+ +-----------+ +----------+ - * - - -|ws.close()|-->|close frame|-->|ws.close()|- - - - * | +----------+ +-----------+ +----------+ | - * +----------+ +-----------+ | - * CLOSING |ws.close()|<--|close frame|<--+-----+ CLOSING - * +----------+ +-----------+ | - * | | | +---+ | - * +------------------------+-->|fin| - - - - - * | +---+ | +---+ - * - - - - -|fin|<---------------------+ - * +---+ - * - * @param {Number} [code] Status code explaining why the connection is closing - * @param {String} [data] A string explaining why the connection is closing - * @public - */ - close(code, data) { - if (this.readyState === _WebSocket.CLOSED) - return; - if (this.readyState === _WebSocket.CONNECTING) { - const msg = "WebSocket was closed before the connection was established"; - return abortHandshake(this, this._req, msg); - } - if (this.readyState === _WebSocket.CLOSING) { - if (this._closeFrameSent && this._closeFrameReceived) - this._socket.end(); - return; - } - this._readyState = _WebSocket.CLOSING; - this._sender.close(code, data, !this._isServer, (err) => { - if (err) - return; - this._closeFrameSent = true; - if (this._closeFrameReceived) - this._socket.end(); - }); - this._closeTimer = setTimeout( - this._socket.destroy.bind(this._socket), - closeTimeout - ); - } - /** - * Send a ping. - * - * @param {*} [data] The data to send - * @param {Boolean} [mask] Indicates whether or not to mask `data` - * @param {Function} [cb] Callback which is executed when the ping is sent - * @public - */ - ping(data, mask, cb) { - if (this.readyState === _WebSocket.CONNECTING) { - throw new Error("WebSocket is not open: readyState 0 (CONNECTING)"); - } - if (typeof data === "function") { - cb = data; - data = mask = void 0; - } else if (typeof mask === "function") { - cb = mask; - mask = void 0; - } - if (typeof data === "number") - data = data.toString(); - if (this.readyState !== _WebSocket.OPEN) { - sendAfterClose(this, data, cb); - return; - } - if (mask === void 0) - mask = !this._isServer; - this._sender.ping(data || EMPTY_BUFFER, mask, cb); - } - /** - * Send a pong. - * - * @param {*} [data] The data to send - * @param {Boolean} [mask] Indicates whether or not to mask `data` - * @param {Function} [cb] Callback which is executed when the pong is sent - * @public - */ - pong(data, mask, cb) { - if (this.readyState === _WebSocket.CONNECTING) { - throw new Error("WebSocket is not open: readyState 0 (CONNECTING)"); - } - if (typeof data === "function") { - cb = data; - data = mask = void 0; - } else if (typeof mask === "function") { - cb = mask; - mask = void 0; - } - if (typeof data === "number") - data = data.toString(); - if (this.readyState !== _WebSocket.OPEN) { - sendAfterClose(this, data, cb); - return; - } - if (mask === void 0) - mask = !this._isServer; - this._sender.pong(data || EMPTY_BUFFER, mask, cb); - } - /** - * Send a data message. - * - * @param {*} data The message to send - * @param {Object} [options] Options object - * @param {Boolean} [options.compress] Specifies whether or not to compress - * `data` - * @param {Boolean} [options.binary] Specifies whether `data` is binary or - * text - * @param {Boolean} [options.fin=true] Specifies whether the fragment is the - * last one - * @param {Boolean} [options.mask] Specifies whether or not to mask `data` - * @param {Function} [cb] Callback which is executed when data is written out - * @public - */ - send(data, options, cb) { - if (this.readyState === _WebSocket.CONNECTING) { - throw new Error("WebSocket is not open: readyState 0 (CONNECTING)"); - } - if (typeof options === "function") { - cb = options; - options = {}; - } - if (typeof data === "number") - data = data.toString(); - if (this.readyState !== _WebSocket.OPEN) { - sendAfterClose(this, data, cb); - return; - } - const opts = { - binary: typeof data !== "string", - mask: !this._isServer, - compress: true, - fin: true, - ...options - }; - if (!this._extensions[PerMessageDeflate.extensionName]) { - opts.compress = false; - } - this._sender.send(data || EMPTY_BUFFER, opts, cb); - } - /** - * Forcibly close the connection. - * - * @public - */ - terminate() { - if (this.readyState === _WebSocket.CLOSED) - return; - if (this.readyState === _WebSocket.CONNECTING) { - const msg = "WebSocket was closed before the connection was established"; - return abortHandshake(this, this._req, msg); - } - if (this._socket) { - this._readyState = _WebSocket.CLOSING; - this._socket.destroy(); - } - } - }; - readyStates.forEach((readyState, i) => { - const descriptor = { enumerable: true, value: i }; - Object.defineProperty(WebSocket.prototype, readyState, descriptor); - Object.defineProperty(WebSocket, readyState, descriptor); - }); - [ - "binaryType", - "bufferedAmount", - "extensions", - "protocol", - "readyState", - "url" - ].forEach((property) => { - Object.defineProperty(WebSocket.prototype, property, { enumerable: true }); - }); - ["open", "error", "close", "message"].forEach((method) => { - Object.defineProperty(WebSocket.prototype, `on${method}`, { - configurable: true, - enumerable: true, - /** - * Return the listener of the event. - * - * @return {(Function|undefined)} The event listener or `undefined` - * @public - */ - get() { - const listeners = this.listeners(method); - for (let i = 0; i < listeners.length; i++) { - if (listeners[i]._listener) - return listeners[i]._listener; - } - return void 0; - }, - /** - * Add a listener for the event. - * - * @param {Function} listener The listener to add - * @public - */ - set(listener) { - const listeners = this.listeners(method); - for (let i = 0; i < listeners.length; i++) { - if (listeners[i]._listener) - this.removeListener(method, listeners[i]); - } - this.addEventListener(method, listener); - } - }); - }); - WebSocket.prototype.addEventListener = addEventListener; - WebSocket.prototype.removeEventListener = removeEventListener; - module2.exports = WebSocket; - function initAsClient(websocket, address, protocols, options) { - const opts = { - protocolVersion: protocolVersions[1], - maxPayload: 100 * 1024 * 1024, - perMessageDeflate: true, - followRedirects: false, - maxRedirects: 10, - ...options, - createConnection: void 0, - socketPath: void 0, - hostname: void 0, - protocol: void 0, - timeout: void 0, - method: void 0, - host: void 0, - path: void 0, - port: void 0 - }; - if (!protocolVersions.includes(opts.protocolVersion)) { - throw new RangeError( - `Unsupported protocol version: ${opts.protocolVersion} (supported versions: ${protocolVersions.join(", ")})` - ); - } - let parsedUrl; - if (address instanceof URL2) { - parsedUrl = address; - websocket._url = address.href; - } else { - parsedUrl = new URL2(address); - websocket._url = address; - } - const isUnixSocket = parsedUrl.protocol === "ws+unix:"; - if (!parsedUrl.host && (!isUnixSocket || !parsedUrl.pathname)) { - throw new Error(`Invalid URL: ${websocket.url}`); - } - const isSecure = parsedUrl.protocol === "wss:" || parsedUrl.protocol === "https:"; - const defaultPort = isSecure ? 443 : 80; - const key = randomBytes(16).toString("base64"); - const get = isSecure ? https2.get : http2.get; - let perMessageDeflate; - opts.createConnection = isSecure ? tlsConnect : netConnect; - opts.defaultPort = opts.defaultPort || defaultPort; - opts.port = parsedUrl.port || defaultPort; - opts.host = parsedUrl.hostname.startsWith("[") ? parsedUrl.hostname.slice(1, -1) : parsedUrl.hostname; - opts.headers = { - "Sec-WebSocket-Version": opts.protocolVersion, - "Sec-WebSocket-Key": key, - Connection: "Upgrade", - Upgrade: "websocket", - ...opts.headers - }; - opts.path = parsedUrl.pathname + parsedUrl.search; - opts.timeout = opts.handshakeTimeout; - if (opts.perMessageDeflate) { - perMessageDeflate = new PerMessageDeflate( - opts.perMessageDeflate !== true ? opts.perMessageDeflate : {}, - false, - opts.maxPayload - ); - opts.headers["Sec-WebSocket-Extensions"] = format({ - [PerMessageDeflate.extensionName]: perMessageDeflate.offer() - }); - } - if (protocols) { - opts.headers["Sec-WebSocket-Protocol"] = protocols; - } - if (opts.origin) { - if (opts.protocolVersion < 13) { - opts.headers["Sec-WebSocket-Origin"] = opts.origin; - } else { - opts.headers.Origin = opts.origin; - } - } - if (parsedUrl.username || parsedUrl.password) { - opts.auth = `${parsedUrl.username}:${parsedUrl.password}`; - } - if (isUnixSocket) { - const parts = opts.path.split(":"); - opts.socketPath = parts[0]; - opts.path = parts[1]; - } - let req = websocket._req = get(opts); - if (opts.timeout) { - req.on("timeout", () => { - abortHandshake(websocket, req, "Opening handshake has timed out"); - }); - } - req.on("error", (err) => { - if (req === null || req.aborted) - return; - req = websocket._req = null; - websocket._readyState = WebSocket.CLOSING; - websocket.emit("error", err); - websocket.emitClose(); - }); - req.on("response", (res) => { - const location = res.headers.location; - const statusCode = res.statusCode; - if (location && opts.followRedirects && statusCode >= 300 && statusCode < 400) { - if (++websocket._redirects > opts.maxRedirects) { - abortHandshake(websocket, req, "Maximum redirects exceeded"); - return; - } - req.abort(); - const addr = new URL2(location, address); - initAsClient(websocket, addr, protocols, options); - } else if (!websocket.emit("unexpected-response", req, res)) { - abortHandshake( - websocket, - req, - `Unexpected server response: ${res.statusCode}` - ); - } - }); - req.on("upgrade", (res, socket, head) => { - websocket.emit("upgrade", res); - if (websocket.readyState !== WebSocket.CONNECTING) - return; - req = websocket._req = null; - const digest = createHash("sha1").update(key + GUID).digest("base64"); - if (res.headers["sec-websocket-accept"] !== digest) { - abortHandshake(websocket, socket, "Invalid Sec-WebSocket-Accept header"); - return; - } - const serverProt = res.headers["sec-websocket-protocol"]; - const protList = (protocols || "").split(/, */); - let protError; - if (!protocols && serverProt) { - protError = "Server sent a subprotocol but none was requested"; - } else if (protocols && !serverProt) { - protError = "Server sent no subprotocol"; - } else if (serverProt && !protList.includes(serverProt)) { - protError = "Server sent an invalid subprotocol"; - } - if (protError) { - abortHandshake(websocket, socket, protError); - return; - } - if (serverProt) - websocket._protocol = serverProt; - if (perMessageDeflate) { - try { - const extensions = parse(res.headers["sec-websocket-extensions"]); - if (extensions[PerMessageDeflate.extensionName]) { - perMessageDeflate.accept(extensions[PerMessageDeflate.extensionName]); - websocket._extensions[PerMessageDeflate.extensionName] = perMessageDeflate; - } - } catch (err) { - abortHandshake( - websocket, - socket, - "Invalid Sec-WebSocket-Extensions header" - ); - return; - } - } - websocket.setSocket(socket, head, opts.maxPayload); - }); - } - function netConnect(options) { - options.path = options.socketPath; - return net.connect(options); - } - function tlsConnect(options) { - options.path = void 0; - if (!options.servername && options.servername !== "") { - options.servername = net.isIP(options.host) ? "" : options.host; - } - return tls.connect(options); - } - function abortHandshake(websocket, stream4, message) { - websocket._readyState = WebSocket.CLOSING; - const err = new Error(message); - Error.captureStackTrace(err, abortHandshake); - if (stream4.setHeader) { - stream4.abort(); - if (stream4.socket && !stream4.socket.destroyed) { - stream4.socket.destroy(); - } - stream4.once("abort", websocket.emitClose.bind(websocket)); - websocket.emit("error", err); - } else { - stream4.destroy(err); - stream4.once("error", websocket.emit.bind(websocket, "error")); - stream4.once("close", websocket.emitClose.bind(websocket)); - } - } - function sendAfterClose(websocket, data, cb) { - if (data) { - const length = toBuffer(data).length; - if (websocket._socket) - websocket._sender._bufferedBytes += length; - else - websocket._bufferedAmount += length; - } - if (cb) { - const err = new Error( - `WebSocket is not open: readyState ${websocket.readyState} (${readyStates[websocket.readyState]})` - ); - cb(err); - } - } - function receiverOnConclude(code, reason) { - const websocket = this[kWebSocket]; - websocket._socket.removeListener("data", socketOnData); - websocket._socket.resume(); - websocket._closeFrameReceived = true; - websocket._closeMessage = reason; - websocket._closeCode = code; - if (code === 1005) - websocket.close(); - else - websocket.close(code, reason); - } - function receiverOnDrain() { - this[kWebSocket]._socket.resume(); - } - function receiverOnError(err) { - const websocket = this[kWebSocket]; - websocket._socket.removeListener("data", socketOnData); - websocket._readyState = WebSocket.CLOSING; - websocket._closeCode = err[kStatusCode]; - websocket.emit("error", err); - websocket._socket.destroy(); - } - function receiverOnFinish() { - this[kWebSocket].emitClose(); - } - function receiverOnMessage(data) { - this[kWebSocket].emit("message", data); - } - function receiverOnPing(data) { - const websocket = this[kWebSocket]; - websocket.pong(data, !websocket._isServer, NOOP); - websocket.emit("ping", data); - } - function receiverOnPong(data) { - this[kWebSocket].emit("pong", data); - } - function socketOnClose() { - const websocket = this[kWebSocket]; - this.removeListener("close", socketOnClose); - this.removeListener("end", socketOnEnd); - websocket._readyState = WebSocket.CLOSING; - websocket._socket.read(); - websocket._receiver.end(); - this.removeListener("data", socketOnData); - this[kWebSocket] = void 0; - clearTimeout(websocket._closeTimer); - if (websocket._receiver._writableState.finished || websocket._receiver._writableState.errorEmitted) { - websocket.emitClose(); - } else { - websocket._receiver.on("error", receiverOnFinish); - websocket._receiver.on("finish", receiverOnFinish); - } - } - function socketOnData(chunk) { - if (!this[kWebSocket]._receiver.write(chunk)) { - this.pause(); - } - } - function socketOnEnd() { - const websocket = this[kWebSocket]; - websocket._readyState = WebSocket.CLOSING; - websocket._receiver.end(); - this.end(); - } - function socketOnError() { - const websocket = this[kWebSocket]; - this.removeListener("error", socketOnError); - this.on("error", NOOP); - if (websocket) { - websocket._readyState = WebSocket.CLOSING; - this.destroy(); - } - } - } -}); - -// node_modules/ws/lib/stream.js -var require_stream = __commonJS({ - "node_modules/ws/lib/stream.js"(exports2, module2) { - "use strict"; - var { Duplex } = __nccwpck_require__(2203); - function emitClose(stream4) { - stream4.emit("close"); - } - function duplexOnEnd() { - if (!this.destroyed && this._writableState.finished) { - this.destroy(); - } - } - function duplexOnError(err) { - this.removeListener("error", duplexOnError); - this.destroy(); - if (this.listenerCount("error") === 0) { - this.emit("error", err); - } - } - function createWebSocketStream(ws, options) { - let resumeOnReceiverDrain = true; - function receiverOnDrain() { - if (resumeOnReceiverDrain) - ws._socket.resume(); - } - if (ws.readyState === ws.CONNECTING) { - ws.once("open", function open() { - ws._receiver.removeAllListeners("drain"); - ws._receiver.on("drain", receiverOnDrain); - }); - } else { - ws._receiver.removeAllListeners("drain"); - ws._receiver.on("drain", receiverOnDrain); - } - const duplex = new Duplex({ - ...options, - autoDestroy: false, - emitClose: false, - objectMode: false, - writableObjectMode: false - }); - ws.on("message", function message(msg) { - if (!duplex.push(msg)) { - resumeOnReceiverDrain = false; - ws._socket.pause(); - } - }); - ws.once("error", function error(err) { - if (duplex.destroyed) - return; - duplex.destroy(err); - }); - ws.once("close", function close() { - if (duplex.destroyed) - return; - duplex.push(null); - }); - duplex._destroy = function(err, callback) { - if (ws.readyState === ws.CLOSED) { - callback(err); - process.nextTick(emitClose, duplex); - return; - } - let called = false; - ws.once("error", function error(err2) { - called = true; - callback(err2); - }); - ws.once("close", function close() { - if (!called) - callback(err); - process.nextTick(emitClose, duplex); - }); - ws.terminate(); - }; - duplex._final = function(callback) { - if (ws.readyState === ws.CONNECTING) { - ws.once("open", function open() { - duplex._final(callback); - }); - return; - } - if (ws._socket === null) - return; - if (ws._socket._writableState.finished) { - callback(); - if (duplex._readableState.endEmitted) - duplex.destroy(); - } else { - ws._socket.once("finish", function finish() { - callback(); - }); - ws.close(); - } - }; - duplex._read = function() { - if (ws.readyState === ws.OPEN && !resumeOnReceiverDrain) { - resumeOnReceiverDrain = true; - if (!ws._receiver._writableState.needDrain) - ws._socket.resume(); - } - }; - duplex._write = function(chunk, encoding, callback) { - if (ws.readyState === ws.CONNECTING) { - ws.once("open", function open() { - duplex._write(chunk, encoding, callback); - }); - return; - } - ws.send(chunk, callback); - }; - duplex.on("end", duplexOnEnd); - duplex.on("error", duplexOnError); - return duplex; - } - module2.exports = createWebSocketStream; - } -}); - -// node_modules/ws/lib/websocket-server.js -var require_websocket_server = __commonJS({ - "node_modules/ws/lib/websocket-server.js"(exports2, module2) { - "use strict"; - var EventEmitter2 = __nccwpck_require__(24434); - var { createHash } = __nccwpck_require__(76982); - var { createServer, STATUS_CODES } = __nccwpck_require__(58611); - var PerMessageDeflate = require_permessage_deflate(); - var WebSocket = require_websocket(); - var { format, parse } = require_extension(); - var { GUID, kWebSocket } = require_constants(); - var keyRegex = /^[+/0-9A-Za-z]{22}==$/; - var WebSocketServer = class extends EventEmitter2 { - /** - * Create a `WebSocketServer` instance. - * - * @param {Object} options Configuration options - * @param {Number} [options.backlog=511] The maximum length of the queue of - * pending connections - * @param {Boolean} [options.clientTracking=true] Specifies whether or not to - * track clients - * @param {Function} [options.handleProtocols] A hook to handle protocols - * @param {String} [options.host] The hostname where to bind the server - * @param {Number} [options.maxPayload=104857600] The maximum allowed message - * size - * @param {Boolean} [options.noServer=false] Enable no server mode - * @param {String} [options.path] Accept only connections matching this path - * @param {(Boolean|Object)} [options.perMessageDeflate=false] Enable/disable - * permessage-deflate - * @param {Number} [options.port] The port where to bind the server - * @param {http.Server} [options.server] A pre-created HTTP/S server to use - * @param {Function} [options.verifyClient] A hook to reject connections - * @param {Function} [callback] A listener for the `listening` event - */ - constructor(options, callback) { - super(); - options = { - maxPayload: 100 * 1024 * 1024, - perMessageDeflate: false, - handleProtocols: null, - clientTracking: true, - verifyClient: null, - noServer: false, - backlog: null, - // use default (511 as implemented in net.js) - server: null, - host: null, - path: null, - port: null, - ...options - }; - if (options.port == null && !options.server && !options.noServer) { - throw new TypeError( - 'One of the "port", "server", or "noServer" options must be specified' - ); - } - if (options.port != null) { - this._server = createServer((req, res) => { - const body = STATUS_CODES[426]; - res.writeHead(426, { - "Content-Length": body.length, - "Content-Type": "text/plain" - }); - res.end(body); - }); - this._server.listen( - options.port, - options.host, - options.backlog, - callback - ); - } else if (options.server) { - this._server = options.server; - } - if (this._server) { - const emitConnection = this.emit.bind(this, "connection"); - this._removeListeners = addListeners(this._server, { - listening: this.emit.bind(this, "listening"), - error: this.emit.bind(this, "error"), - upgrade: (req, socket, head) => { - this.handleUpgrade(req, socket, head, emitConnection); - } - }); - } - if (options.perMessageDeflate === true) - options.perMessageDeflate = {}; - if (options.clientTracking) - this.clients = /* @__PURE__ */ new Set(); - this.options = options; - } - /** - * Returns the bound address, the address family name, and port of the server - * as reported by the operating system if listening on an IP socket. - * If the server is listening on a pipe or UNIX domain socket, the name is - * returned as a string. - * - * @return {(Object|String|null)} The address of the server - * @public - */ - address() { - if (this.options.noServer) { - throw new Error('The server is operating in "noServer" mode'); - } - if (!this._server) - return null; - return this._server.address(); - } - /** - * Close the server. - * - * @param {Function} [cb] Callback - * @public - */ - close(cb) { - if (cb) - this.once("close", cb); - if (this.clients) { - for (const client of this.clients) - client.terminate(); - } - const server = this._server; - if (server) { - this._removeListeners(); - this._removeListeners = this._server = null; - if (this.options.port != null) { - server.close(() => this.emit("close")); - return; - } - } - process.nextTick(emitClose, this); - } - /** - * See if a given request should be handled by this server instance. - * - * @param {http.IncomingMessage} req Request object to inspect - * @return {Boolean} `true` if the request is valid, else `false` - * @public - */ - shouldHandle(req) { - if (this.options.path) { - const index = req.url.indexOf("?"); - const pathname = index !== -1 ? req.url.slice(0, index) : req.url; - if (pathname !== this.options.path) - return false; - } - return true; - } - /** - * Handle a HTTP Upgrade request. - * - * @param {http.IncomingMessage} req The request object - * @param {net.Socket} socket The network socket between the server and client - * @param {Buffer} head The first packet of the upgraded stream - * @param {Function} cb Callback - * @public - */ - handleUpgrade(req, socket, head, cb) { - socket.on("error", socketOnError); - const key = req.headers["sec-websocket-key"] !== void 0 ? req.headers["sec-websocket-key"].trim() : false; - const version = +req.headers["sec-websocket-version"]; - const extensions = {}; - if (req.method !== "GET" || req.headers.upgrade.toLowerCase() !== "websocket" || !key || !keyRegex.test(key) || version !== 8 && version !== 13 || !this.shouldHandle(req)) { - return abortHandshake(socket, 400); - } - if (this.options.perMessageDeflate) { - const perMessageDeflate = new PerMessageDeflate( - this.options.perMessageDeflate, - true, - this.options.maxPayload - ); - try { - const offers = parse(req.headers["sec-websocket-extensions"]); - if (offers[PerMessageDeflate.extensionName]) { - perMessageDeflate.accept(offers[PerMessageDeflate.extensionName]); - extensions[PerMessageDeflate.extensionName] = perMessageDeflate; - } - } catch (err) { - return abortHandshake(socket, 400); - } - } - if (this.options.verifyClient) { - const info = { - origin: req.headers[`${version === 8 ? "sec-websocket-origin" : "origin"}`], - secure: !!(req.socket.authorized || req.socket.encrypted), - req - }; - if (this.options.verifyClient.length === 2) { - this.options.verifyClient(info, (verified, code, message, headers) => { - if (!verified) { - return abortHandshake(socket, code || 401, message, headers); - } - this.completeUpgrade(key, extensions, req, socket, head, cb); - }); - return; - } - if (!this.options.verifyClient(info)) - return abortHandshake(socket, 401); - } - this.completeUpgrade(key, extensions, req, socket, head, cb); - } - /** - * Upgrade the connection to WebSocket. - * - * @param {String} key The value of the `Sec-WebSocket-Key` header - * @param {Object} extensions The accepted extensions - * @param {http.IncomingMessage} req The request object - * @param {net.Socket} socket The network socket between the server and client - * @param {Buffer} head The first packet of the upgraded stream - * @param {Function} cb Callback - * @throws {Error} If called more than once with the same socket - * @private - */ - completeUpgrade(key, extensions, req, socket, head, cb) { - if (!socket.readable || !socket.writable) - return socket.destroy(); - if (socket[kWebSocket]) { - throw new Error( - "server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration" - ); - } - const digest = createHash("sha1").update(key + GUID).digest("base64"); - const headers = [ - "HTTP/1.1 101 Switching Protocols", - "Upgrade: websocket", - "Connection: Upgrade", - `Sec-WebSocket-Accept: ${digest}` - ]; - const ws = new WebSocket(null); - let protocol = req.headers["sec-websocket-protocol"]; - if (protocol) { - protocol = protocol.split(",").map(trim2); - if (this.options.handleProtocols) { - protocol = this.options.handleProtocols(protocol, req); - } else { - protocol = protocol[0]; - } - if (protocol) { - headers.push(`Sec-WebSocket-Protocol: ${protocol}`); - ws._protocol = protocol; - } - } - if (extensions[PerMessageDeflate.extensionName]) { - const params = extensions[PerMessageDeflate.extensionName].params; - const value = format({ - [PerMessageDeflate.extensionName]: [params] - }); - headers.push(`Sec-WebSocket-Extensions: ${value}`); - ws._extensions = extensions; - } - this.emit("headers", headers, req); - socket.write(headers.concat("\r\n").join("\r\n")); - socket.removeListener("error", socketOnError); - ws.setSocket(socket, head, this.options.maxPayload); - if (this.clients) { - this.clients.add(ws); - ws.on("close", () => this.clients.delete(ws)); - } - cb(ws, req); - } - }; - module2.exports = WebSocketServer; - function addListeners(server, map) { - for (const event of Object.keys(map)) - server.on(event, map[event]); - return function removeListeners() { - for (const event of Object.keys(map)) { - server.removeListener(event, map[event]); - } - }; - } - function emitClose(server) { - server.emit("close"); - } - function socketOnError() { - this.destroy(); - } - function abortHandshake(socket, code, message, headers) { - if (socket.writable) { - message = message || STATUS_CODES[code]; - headers = { - Connection: "close", - "Content-Type": "text/html", - "Content-Length": Buffer.byteLength(message), - ...headers - }; - socket.write( - `HTTP/1.1 ${code} ${STATUS_CODES[code]}\r -` + Object.keys(headers).map((h) => `${h}: ${headers[h]}`).join("\r\n") + "\r\n\r\n" + message - ); - } - socket.removeListener("error", socketOnError); - socket.destroy(); - } - function trim2(str) { - return str.trim(); - } - } -}); - -// node_modules/ws/index.js -var require_ws = __commonJS({ - "node_modules/ws/index.js"(exports2, module2) { - "use strict"; - var WebSocket = require_websocket(); - WebSocket.createWebSocketStream = require_stream(); - WebSocket.Server = require_websocket_server(); - WebSocket.Receiver = require_receiver(); - WebSocket.Sender = require_sender(); - module2.exports = WebSocket; - } -}); - -// node_modules/@ethersproject/providers/lib/ws.js -var require_ws2 = __commonJS({ - "node_modules/@ethersproject/providers/lib/ws.js"(exports2) { - "use strict"; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.WebSocket = void 0; - var ws_1 = __importDefault(require_ws()); - exports2.WebSocket = ws_1.default; - } -}); - -// node_modules/@ethersproject/providers/lib/websocket-provider.js -var require_websocket_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/websocket-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - var __awaiter = exports2 && exports2.__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 = exports2 && exports2.__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(exports2, "__esModule", { value: true }); - exports2.WebSocketProvider = void 0; - var bignumber_1 = require_lib3(); - var properties_1 = require_lib4(); - var json_rpc_provider_1 = require_json_rpc_provider(); - var ws_1 = require_ws2(); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - var NextId = 1; - var WebSocketProvider = ( - /** @class */ - function(_super) { - __extends(WebSocketProvider2, _super); - function WebSocketProvider2(url2, network) { - var _this = this; - if (network === "any") { - logger.throwError("WebSocketProvider does not support 'any' network yet", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "network:any" - }); - } - if (typeof url2 === "string") { - _this = _super.call(this, url2, network) || this; - } else { - _this = _super.call(this, "_websocket", network) || this; - } - _this._pollingInterval = -1; - _this._wsReady = false; - if (typeof url2 === "string") { - (0, properties_1.defineReadOnly)(_this, "_websocket", new ws_1.WebSocket(_this.connection.url)); - } else { - (0, properties_1.defineReadOnly)(_this, "_websocket", url2); - } - (0, properties_1.defineReadOnly)(_this, "_requests", {}); - (0, properties_1.defineReadOnly)(_this, "_subs", {}); - (0, properties_1.defineReadOnly)(_this, "_subIds", {}); - (0, properties_1.defineReadOnly)(_this, "_detectNetwork", _super.prototype.detectNetwork.call(_this)); - _this.websocket.onopen = function() { - _this._wsReady = true; - Object.keys(_this._requests).forEach(function(id) { - _this.websocket.send(_this._requests[id].payload); - }); - }; - _this.websocket.onmessage = function(messageEvent) { - var data = messageEvent.data; - var result = JSON.parse(data); - if (result.id != null) { - var id = String(result.id); - var request = _this._requests[id]; - delete _this._requests[id]; - if (result.result !== void 0) { - request.callback(null, result.result); - _this.emit("debug", { - action: "response", - request: JSON.parse(request.payload), - response: result.result, - provider: _this - }); - } else { - var error = null; - if (result.error) { - error = new Error(result.error.message || "unknown error"); - (0, properties_1.defineReadOnly)(error, "code", result.error.code || null); - (0, properties_1.defineReadOnly)(error, "response", data); - } else { - error = new Error("unknown error"); - } - request.callback(error, void 0); - _this.emit("debug", { - action: "response", - error, - request: JSON.parse(request.payload), - provider: _this - }); - } - } else if (result.method === "eth_subscription") { - var sub = _this._subs[result.params.subscription]; - if (sub) { - sub.processFunc(result.params.result); - } - } else { - console.warn("this should not happen"); - } - }; - var fauxPoll = setInterval(function() { - _this.emit("poll"); - }, 1e3); - if (fauxPoll.unref) { - fauxPoll.unref(); - } - return _this; - } - Object.defineProperty(WebSocketProvider2.prototype, "websocket", { - // Cannot narrow the type of _websocket, as that is not backwards compatible - // so we add a getter and let the WebSocket be a public API. - get: function() { - return this._websocket; - }, - enumerable: false, - configurable: true - }); - WebSocketProvider2.prototype.detectNetwork = function() { - return this._detectNetwork; - }; - Object.defineProperty(WebSocketProvider2.prototype, "pollingInterval", { - get: function() { - return 0; - }, - set: function(value) { - logger.throwError("cannot set polling interval on WebSocketProvider", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "setPollingInterval" - }); - }, - enumerable: false, - configurable: true - }); - WebSocketProvider2.prototype.resetEventsBlock = function(blockNumber) { - logger.throwError("cannot reset events block on WebSocketProvider", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "resetEventBlock" - }); - }; - WebSocketProvider2.prototype.poll = function() { - return __awaiter(this, void 0, void 0, function() { - return __generator(this, function(_a) { - return [2, null]; - }); - }); - }; - Object.defineProperty(WebSocketProvider2.prototype, "polling", { - set: function(value) { - if (!value) { - return; - } - logger.throwError("cannot set polling on WebSocketProvider", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "setPolling" - }); - }, - enumerable: false, - configurable: true - }); - WebSocketProvider2.prototype.send = function(method, params) { - var _this = this; - var rid = NextId++; - return new Promise(function(resolve, reject) { - function callback(error, result) { - if (error) { - return reject(error); - } - return resolve(result); - } - var payload = JSON.stringify({ - method, - params, - id: rid, - jsonrpc: "2.0" - }); - _this.emit("debug", { - action: "request", - request: JSON.parse(payload), - provider: _this - }); - _this._requests[String(rid)] = { callback, payload }; - if (_this._wsReady) { - _this.websocket.send(payload); - } - }); - }; - WebSocketProvider2.defaultUrl = function() { - return "ws://localhost:8546"; - }; - WebSocketProvider2.prototype._subscribe = function(tag, param, processFunc) { - return __awaiter(this, void 0, void 0, function() { - var subIdPromise, subId; - var _this = this; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - subIdPromise = this._subIds[tag]; - if (subIdPromise == null) { - subIdPromise = Promise.all(param).then(function(param2) { - return _this.send("eth_subscribe", param2); - }); - this._subIds[tag] = subIdPromise; - } - return [4, subIdPromise]; - case 1: - subId = _a.sent(); - this._subs[subId] = { tag, processFunc }; - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - WebSocketProvider2.prototype._startEvent = function(event) { - var _this = this; - switch (event.type) { - case "block": - this._subscribe("block", ["newHeads"], function(result) { - var blockNumber = bignumber_1.BigNumber.from(result.number).toNumber(); - _this._emitted.block = blockNumber; - _this.emit("block", blockNumber); - }); - break; - case "pending": - this._subscribe("pending", ["newPendingTransactions"], function(result) { - _this.emit("pending", result); - }); - break; - case "filter": - this._subscribe(event.tag, ["logs", this._getFilter(event.filter)], function(result) { - if (result.removed == null) { - result.removed = false; - } - _this.emit(event.filter, _this.formatter.filterLog(result)); - }); - break; - case "tx": { - var emitReceipt_1 = function(event2) { - var hash = event2.hash; - _this.getTransactionReceipt(hash).then(function(receipt) { - if (!receipt) { - return; - } - _this.emit(hash, receipt); - }); - }; - emitReceipt_1(event); - this._subscribe("tx", ["newHeads"], function(result) { - _this._events.filter(function(e) { - return e.type === "tx"; - }).forEach(emitReceipt_1); - }); - break; - } - case "debug": - case "poll": - case "willPoll": - case "didPoll": - case "error": - break; - default: - console.log("unhandled:", event); - break; - } - }; - WebSocketProvider2.prototype._stopEvent = function(event) { - var _this = this; - var tag = event.tag; - if (event.type === "tx") { - if (this._events.filter(function(e) { - return e.type === "tx"; - }).length) { - return; - } - tag = "tx"; - } else if (this.listenerCount(event.event)) { - return; - } - var subId = this._subIds[tag]; - if (!subId) { - return; - } - delete this._subIds[tag]; - subId.then(function(subId2) { - if (!_this._subs[subId2]) { - return; - } - delete _this._subs[subId2]; - _this.send("eth_unsubscribe", [subId2]); - }); - }; - WebSocketProvider2.prototype.destroy = function() { - return __awaiter(this, void 0, void 0, function() { - var _this = this; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - if (!(this.websocket.readyState === ws_1.WebSocket.CONNECTING)) - return [3, 2]; - return [4, new Promise(function(resolve) { - _this.websocket.onopen = function() { - resolve(true); - }; - _this.websocket.onerror = function() { - resolve(false); - }; - })]; - case 1: - _a.sent(); - _a.label = 2; - case 2: - this.websocket.close(1e3); - return [ - 2 - /*return*/ - ]; - } - }); - }); - }; - return WebSocketProvider2; - }(json_rpc_provider_1.JsonRpcProvider) - ); - exports2.WebSocketProvider = WebSocketProvider; - } -}); - -// node_modules/@ethersproject/providers/lib/url-json-rpc-provider.js -var require_url_json_rpc_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/url-json-rpc-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - var __awaiter = exports2 && exports2.__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 = exports2 && exports2.__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(exports2, "__esModule", { value: true }); - exports2.UrlJsonRpcProvider = exports2.StaticJsonRpcProvider = void 0; - var properties_1 = require_lib4(); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - var json_rpc_provider_1 = require_json_rpc_provider(); - var StaticJsonRpcProvider = ( - /** @class */ - function(_super) { - __extends(StaticJsonRpcProvider2, _super); - function StaticJsonRpcProvider2() { - return _super !== null && _super.apply(this, arguments) || this; - } - StaticJsonRpcProvider2.prototype.detectNetwork = function() { - return __awaiter(this, void 0, void 0, function() { - var network; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - network = this.network; - if (!(network == null)) - return [3, 2]; - return [4, _super.prototype.detectNetwork.call(this)]; - case 1: - network = _a.sent(); - if (!network) { - logger.throwError("no network detected", logger_1.Logger.errors.UNKNOWN_ERROR, {}); - } - if (this._network == null) { - (0, properties_1.defineReadOnly)(this, "_network", network); - this.emit("network", network, null); - } - _a.label = 2; - case 2: - return [2, network]; - } - }); - }); - }; - return StaticJsonRpcProvider2; - }(json_rpc_provider_1.JsonRpcProvider) - ); - exports2.StaticJsonRpcProvider = StaticJsonRpcProvider; - var UrlJsonRpcProvider = ( - /** @class */ - function(_super) { - __extends(UrlJsonRpcProvider2, _super); - function UrlJsonRpcProvider2(network, apiKey) { - var _newTarget = this.constructor; - var _this = this; - logger.checkAbstract(_newTarget, UrlJsonRpcProvider2); - network = (0, properties_1.getStatic)(_newTarget, "getNetwork")(network); - apiKey = (0, properties_1.getStatic)(_newTarget, "getApiKey")(apiKey); - var connection = (0, properties_1.getStatic)(_newTarget, "getUrl")(network, apiKey); - _this = _super.call(this, connection, network) || this; - if (typeof apiKey === "string") { - (0, properties_1.defineReadOnly)(_this, "apiKey", apiKey); - } else if (apiKey != null) { - Object.keys(apiKey).forEach(function(key) { - (0, properties_1.defineReadOnly)(_this, key, apiKey[key]); - }); - } - return _this; - } - UrlJsonRpcProvider2.prototype._startPending = function() { - logger.warn("WARNING: API provider does not support pending filters"); - }; - UrlJsonRpcProvider2.prototype.isCommunityResource = function() { - return false; - }; - UrlJsonRpcProvider2.prototype.getSigner = function(address) { - return logger.throwError("API provider does not support signing", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { operation: "getSigner" }); - }; - UrlJsonRpcProvider2.prototype.listAccounts = function() { - return Promise.resolve([]); - }; - UrlJsonRpcProvider2.getApiKey = function(apiKey) { - return apiKey; - }; - UrlJsonRpcProvider2.getUrl = function(network, apiKey) { - return logger.throwError("not implemented; sub-classes must override getUrl", logger_1.Logger.errors.NOT_IMPLEMENTED, { - operation: "getUrl" - }); - }; - return UrlJsonRpcProvider2; - }(StaticJsonRpcProvider) - ); - exports2.UrlJsonRpcProvider = UrlJsonRpcProvider; - } -}); - -// node_modules/@ethersproject/providers/lib/alchemy-provider.js -var require_alchemy_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/alchemy-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AlchemyProvider = exports2.AlchemyWebSocketProvider = void 0; - var properties_1 = require_lib4(); - var formatter_1 = require_formatter(); - var websocket_provider_1 = require_websocket_provider(); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - var url_json_rpc_provider_1 = require_url_json_rpc_provider(); - var defaultApiKey = "_gg7wSSi0KMBsdKnGVfHDueq6xMB9EkC"; - var AlchemyWebSocketProvider = ( - /** @class */ - function(_super) { - __extends(AlchemyWebSocketProvider2, _super); - function AlchemyWebSocketProvider2(network, apiKey) { - var _this = this; - var provider = new AlchemyProvider(network, apiKey); - var url2 = provider.connection.url.replace(/^http/i, "ws").replace(".alchemyapi.", ".ws.alchemyapi."); - _this = _super.call(this, url2, provider.network) || this; - (0, properties_1.defineReadOnly)(_this, "apiKey", provider.apiKey); - return _this; - } - AlchemyWebSocketProvider2.prototype.isCommunityResource = function() { - return this.apiKey === defaultApiKey; - }; - return AlchemyWebSocketProvider2; - }(websocket_provider_1.WebSocketProvider) - ); - exports2.AlchemyWebSocketProvider = AlchemyWebSocketProvider; - var AlchemyProvider = ( - /** @class */ - function(_super) { - __extends(AlchemyProvider2, _super); - function AlchemyProvider2() { - return _super !== null && _super.apply(this, arguments) || this; - } - AlchemyProvider2.getWebSocketProvider = function(network, apiKey) { - return new AlchemyWebSocketProvider(network, apiKey); - }; - AlchemyProvider2.getApiKey = function(apiKey) { - if (apiKey == null) { - return defaultApiKey; - } - if (apiKey && typeof apiKey !== "string") { - logger.throwArgumentError("invalid apiKey", "apiKey", apiKey); - } - return apiKey; - }; - AlchemyProvider2.getUrl = function(network, apiKey) { - var host = null; - switch (network.name) { - case "homestead": - host = "eth-mainnet.alchemyapi.io/v2/"; - break; - case "goerli": - host = "eth-goerli.g.alchemy.com/v2/"; - break; - case "matic": - host = "polygon-mainnet.g.alchemy.com/v2/"; - break; - case "maticmum": - host = "polygon-mumbai.g.alchemy.com/v2/"; - break; - case "arbitrum": - host = "arb-mainnet.g.alchemy.com/v2/"; - break; - case "arbitrum-goerli": - host = "arb-goerli.g.alchemy.com/v2/"; - break; - case "optimism": - host = "opt-mainnet.g.alchemy.com/v2/"; - break; - case "optimism-goerli": - host = "opt-goerli.g.alchemy.com/v2/"; - break; - default: - logger.throwArgumentError("unsupported network", "network", arguments[0]); - } - return { - allowGzip: true, - url: "https://" + host + apiKey, - throttleCallback: function(attempt, url2) { - if (apiKey === defaultApiKey) { - (0, formatter_1.showThrottleMessage)(); - } - return Promise.resolve(true); - } - }; - }; - AlchemyProvider2.prototype.isCommunityResource = function() { - return this.apiKey === defaultApiKey; - }; - return AlchemyProvider2; - }(url_json_rpc_provider_1.UrlJsonRpcProvider) - ); - exports2.AlchemyProvider = AlchemyProvider; - } -}); - -// node_modules/@ethersproject/providers/lib/ankr-provider.js -var require_ankr_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/ankr-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.AnkrProvider = void 0; - var formatter_1 = require_formatter(); - var url_json_rpc_provider_1 = require_url_json_rpc_provider(); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - var defaultApiKey = "9f7d929b018cdffb338517efa06f58359e86ff1ffd350bc889738523659e7972"; - function getHost(name) { - switch (name) { - case "homestead": - return "rpc.ankr.com/eth/"; - case "ropsten": - return "rpc.ankr.com/eth_ropsten/"; - case "rinkeby": - return "rpc.ankr.com/eth_rinkeby/"; - case "goerli": - return "rpc.ankr.com/eth_goerli/"; - case "matic": - return "rpc.ankr.com/polygon/"; - case "arbitrum": - return "rpc.ankr.com/arbitrum/"; - } - return logger.throwArgumentError("unsupported network", "name", name); - } - var AnkrProvider = ( - /** @class */ - function(_super) { - __extends(AnkrProvider2, _super); - function AnkrProvider2() { - return _super !== null && _super.apply(this, arguments) || this; - } - AnkrProvider2.prototype.isCommunityResource = function() { - return this.apiKey === defaultApiKey; - }; - AnkrProvider2.getApiKey = function(apiKey) { - if (apiKey == null) { - return defaultApiKey; - } - return apiKey; - }; - AnkrProvider2.getUrl = function(network, apiKey) { - if (apiKey == null) { - apiKey = defaultApiKey; - } - var connection = { - allowGzip: true, - url: "https://" + getHost(network.name) + apiKey, - throttleCallback: function(attempt, url2) { - if (apiKey.apiKey === defaultApiKey) { - (0, formatter_1.showThrottleMessage)(); - } - return Promise.resolve(true); - } - }; - if (apiKey.projectSecret != null) { - connection.user = ""; - connection.password = apiKey.projectSecret; - } - return connection; - }; - return AnkrProvider2; - }(url_json_rpc_provider_1.UrlJsonRpcProvider) - ); - exports2.AnkrProvider = AnkrProvider; - } -}); - -// node_modules/@ethersproject/providers/lib/cloudflare-provider.js -var require_cloudflare_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/cloudflare-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - var __awaiter = exports2 && exports2.__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 = exports2 && exports2.__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(exports2, "__esModule", { value: true }); - exports2.CloudflareProvider = void 0; - var url_json_rpc_provider_1 = require_url_json_rpc_provider(); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - var CloudflareProvider = ( - /** @class */ - function(_super) { - __extends(CloudflareProvider2, _super); - function CloudflareProvider2() { - return _super !== null && _super.apply(this, arguments) || this; - } - CloudflareProvider2.getApiKey = function(apiKey) { - if (apiKey != null) { - logger.throwArgumentError("apiKey not supported for cloudflare", "apiKey", apiKey); - } - return null; - }; - CloudflareProvider2.getUrl = function(network, apiKey) { - var host = null; - switch (network.name) { - case "homestead": - host = "https://cloudflare-eth.com/"; - break; - default: - logger.throwArgumentError("unsupported network", "network", arguments[0]); - } - return host; - }; - CloudflareProvider2.prototype.perform = function(method, params) { - return __awaiter(this, void 0, void 0, function() { - var block; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - if (!(method === "getBlockNumber")) - return [3, 2]; - return [4, _super.prototype.perform.call(this, "getBlock", { blockTag: "latest" })]; - case 1: - block = _a.sent(); - return [2, block.number]; - case 2: - return [2, _super.prototype.perform.call(this, method, params)]; - } - }); - }); - }; - return CloudflareProvider2; - }(url_json_rpc_provider_1.UrlJsonRpcProvider) - ); - exports2.CloudflareProvider = CloudflareProvider; - } -}); - -// node_modules/@ethersproject/providers/lib/etherscan-provider.js -var require_etherscan_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/etherscan-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - var __awaiter = exports2 && exports2.__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 = exports2 && exports2.__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(exports2, "__esModule", { value: true }); - exports2.EtherscanProvider = void 0; - var bytes_1 = require_lib2(); - var properties_1 = require_lib4(); - var transactions_1 = require_lib19(); - var web_1 = require_lib17(); - var formatter_1 = require_formatter(); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - var base_provider_1 = require_base_provider(); - function getTransactionPostData(transaction) { - var result = {}; - for (var key in transaction) { - if (transaction[key] == null) { - continue; - } - var value = transaction[key]; - if (key === "type" && value === 0) { - continue; - } - if ({ type: true, gasLimit: true, gasPrice: true, maxFeePerGs: true, maxPriorityFeePerGas: true, nonce: true, value: true }[key]) { - value = (0, bytes_1.hexValue)((0, bytes_1.hexlify)(value)); - } else if (key === "accessList") { - value = "[" + (0, transactions_1.accessListify)(value).map(function(set) { - return '{address:"' + set.address + '",storageKeys:["' + set.storageKeys.join('","') + '"]}'; - }).join(",") + "]"; - } else { - value = (0, bytes_1.hexlify)(value); - } - result[key] = value; - } - return result; - } - function getResult(result) { - if (result.status == 0 && (result.message === "No records found" || result.message === "No transactions found")) { - return result.result; - } - if (result.status != 1 || typeof result.message !== "string" || !result.message.match(/^OK/)) { - var error = new Error("invalid response"); - error.result = JSON.stringify(result); - if ((result.result || "").toLowerCase().indexOf("rate limit") >= 0) { - error.throttleRetry = true; - } - throw error; - } - return result.result; - } - function getJsonResult(result) { - if (result && result.status == 0 && result.message == "NOTOK" && (result.result || "").toLowerCase().indexOf("rate limit") >= 0) { - var error = new Error("throttled response"); - error.result = JSON.stringify(result); - error.throttleRetry = true; - throw error; - } - if (result.jsonrpc != "2.0") { - var error = new Error("invalid response"); - error.result = JSON.stringify(result); - throw error; - } - if (result.error) { - var error = new Error(result.error.message || "unknown error"); - if (result.error.code) { - error.code = result.error.code; - } - if (result.error.data) { - error.data = result.error.data; - } - throw error; - } - return result.result; - } - function checkLogTag(blockTag) { - if (blockTag === "pending") { - throw new Error("pending not supported"); - } - if (blockTag === "latest") { - return blockTag; - } - return parseInt(blockTag.substring(2), 16); - } - function checkError(method, error, transaction) { - if (method === "call" && error.code === logger_1.Logger.errors.SERVER_ERROR) { - var e = error.error; - if (e && (e.message.match(/reverted/i) || e.message.match(/VM execution error/i))) { - var data = e.data; - if (data) { - data = "0x" + data.replace(/^.*0x/i, ""); - } - if ((0, bytes_1.isHexString)(data)) { - return data; - } - logger.throwError("missing revert data in call exception", logger_1.Logger.errors.CALL_EXCEPTION, { - error, - data: "0x" - }); - } - } - var message = error.message; - if (error.code === logger_1.Logger.errors.SERVER_ERROR) { - if (error.error && typeof error.error.message === "string") { - message = error.error.message; - } else if (typeof error.body === "string") { - message = error.body; - } else if (typeof error.responseText === "string") { - message = error.responseText; - } - } - message = (message || "").toLowerCase(); - if (message.match(/insufficient funds/)) { - logger.throwError("insufficient funds for intrinsic transaction cost", logger_1.Logger.errors.INSUFFICIENT_FUNDS, { - error, - method, - transaction - }); - } - if (message.match(/same hash was already imported|transaction nonce is too low|nonce too low/)) { - logger.throwError("nonce has already been used", logger_1.Logger.errors.NONCE_EXPIRED, { - error, - method, - transaction - }); - } - if (message.match(/another transaction with same nonce/)) { - logger.throwError("replacement fee too low", logger_1.Logger.errors.REPLACEMENT_UNDERPRICED, { - error, - method, - transaction - }); - } - if (message.match(/execution failed due to an exception|execution reverted/)) { - logger.throwError("cannot estimate gas; transaction may fail or may require manual gas limit", logger_1.Logger.errors.UNPREDICTABLE_GAS_LIMIT, { - error, - method, - transaction - }); - } - throw error; - } - var EtherscanProvider = ( - /** @class */ - function(_super) { - __extends(EtherscanProvider2, _super); - function EtherscanProvider2(network, apiKey) { - var _this = _super.call(this, network) || this; - (0, properties_1.defineReadOnly)(_this, "baseUrl", _this.getBaseUrl()); - (0, properties_1.defineReadOnly)(_this, "apiKey", apiKey || null); - return _this; - } - EtherscanProvider2.prototype.getBaseUrl = function() { - switch (this.network ? this.network.name : "invalid") { - case "homestead": - return "https://api.etherscan.io"; - case "goerli": - return "https://api-goerli.etherscan.io"; - case "sepolia": - return "https://api-sepolia.etherscan.io"; - case "matic": - return "https://api.polygonscan.com"; - case "maticmum": - return "https://api-testnet.polygonscan.com"; - case "arbitrum": - return "https://api.arbiscan.io"; - case "arbitrum-goerli": - return "https://api-goerli.arbiscan.io"; - case "optimism": - return "https://api-optimistic.etherscan.io"; - case "optimism-goerli": - return "https://api-goerli-optimistic.etherscan.io"; - default: - } - return logger.throwArgumentError("unsupported network", "network", this.network.name); - }; - EtherscanProvider2.prototype.getUrl = function(module3, params) { - var query = Object.keys(params).reduce(function(accum, key) { - var value = params[key]; - if (value != null) { - accum += "&" + key + "=" + value; - } - return accum; - }, ""); - var apiKey = this.apiKey ? "&apikey=" + this.apiKey : ""; - return this.baseUrl + "/api?module=" + module3 + query + apiKey; - }; - EtherscanProvider2.prototype.getPostUrl = function() { - return this.baseUrl + "/api"; - }; - EtherscanProvider2.prototype.getPostData = function(module3, params) { - params.module = module3; - params.apikey = this.apiKey; - return params; - }; - EtherscanProvider2.prototype.fetch = function(module3, params, post) { - return __awaiter(this, void 0, void 0, function() { - var url2, payload, procFunc, connection, payloadStr, result; - var _this = this; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - url2 = post ? this.getPostUrl() : this.getUrl(module3, params); - payload = post ? this.getPostData(module3, params) : null; - procFunc = module3 === "proxy" ? getJsonResult : getResult; - this.emit("debug", { - action: "request", - request: url2, - provider: this - }); - connection = { - url: url2, - throttleSlotInterval: 1e3, - throttleCallback: function(attempt, url3) { - if (_this.isCommunityResource()) { - (0, formatter_1.showThrottleMessage)(); - } - return Promise.resolve(true); - } - }; - payloadStr = null; - if (payload) { - connection.headers = { "content-type": "application/x-www-form-urlencoded; charset=UTF-8" }; - payloadStr = Object.keys(payload).map(function(key) { - return key + "=" + payload[key]; - }).join("&"); - } - return [4, (0, web_1.fetchJson)(connection, payloadStr, procFunc || getJsonResult)]; - case 1: - result = _a.sent(); - this.emit("debug", { - action: "response", - request: url2, - response: (0, properties_1.deepCopy)(result), - provider: this - }); - return [2, result]; - } - }); - }); - }; - EtherscanProvider2.prototype.detectNetwork = function() { - return __awaiter(this, void 0, void 0, function() { - return __generator(this, function(_a) { - return [2, this.network]; - }); - }); - }; - EtherscanProvider2.prototype.perform = function(method, params) { - return __awaiter(this, void 0, void 0, function() { - var _a, postData, error_1, postData, error_2, args, topic0, logs, blocks, i, log, block, _b; - return __generator(this, function(_c) { - switch (_c.label) { - case 0: - _a = method; - switch (_a) { - case "getBlockNumber": - return [3, 1]; - case "getGasPrice": - return [3, 2]; - case "getBalance": - return [3, 3]; - case "getTransactionCount": - return [3, 4]; - case "getCode": - return [3, 5]; - case "getStorageAt": - return [3, 6]; - case "sendTransaction": - return [3, 7]; - case "getBlock": - return [3, 8]; - case "getTransaction": - return [3, 9]; - case "getTransactionReceipt": - return [3, 10]; - case "call": - return [3, 11]; - case "estimateGas": - return [3, 15]; - case "getLogs": - return [3, 19]; - case "getEtherPrice": - return [3, 26]; - } - return [3, 28]; - case 1: - return [2, this.fetch("proxy", { action: "eth_blockNumber" })]; - case 2: - return [2, this.fetch("proxy", { action: "eth_gasPrice" })]; - case 3: - return [2, this.fetch("account", { - action: "balance", - address: params.address, - tag: params.blockTag - })]; - case 4: - return [2, this.fetch("proxy", { - action: "eth_getTransactionCount", - address: params.address, - tag: params.blockTag - })]; - case 5: - return [2, this.fetch("proxy", { - action: "eth_getCode", - address: params.address, - tag: params.blockTag - })]; - case 6: - return [2, this.fetch("proxy", { - action: "eth_getStorageAt", - address: params.address, - position: params.position, - tag: params.blockTag - })]; - case 7: - return [2, this.fetch("proxy", { - action: "eth_sendRawTransaction", - hex: params.signedTransaction - }, true).catch(function(error) { - return checkError("sendTransaction", error, params.signedTransaction); - })]; - case 8: - if (params.blockTag) { - return [2, this.fetch("proxy", { - action: "eth_getBlockByNumber", - tag: params.blockTag, - boolean: params.includeTransactions ? "true" : "false" - })]; - } - throw new Error("getBlock by blockHash not implemented"); - case 9: - return [2, this.fetch("proxy", { - action: "eth_getTransactionByHash", - txhash: params.transactionHash - })]; - case 10: - return [2, this.fetch("proxy", { - action: "eth_getTransactionReceipt", - txhash: params.transactionHash - })]; - case 11: - if (params.blockTag !== "latest") { - throw new Error("EtherscanProvider does not support blockTag for call"); - } - postData = getTransactionPostData(params.transaction); - postData.module = "proxy"; - postData.action = "eth_call"; - _c.label = 12; - case 12: - _c.trys.push([12, 14, , 15]); - return [4, this.fetch("proxy", postData, true)]; - case 13: - return [2, _c.sent()]; - case 14: - error_1 = _c.sent(); - return [2, checkError("call", error_1, params.transaction)]; - case 15: - postData = getTransactionPostData(params.transaction); - postData.module = "proxy"; - postData.action = "eth_estimateGas"; - _c.label = 16; - case 16: - _c.trys.push([16, 18, , 19]); - return [4, this.fetch("proxy", postData, true)]; - case 17: - return [2, _c.sent()]; - case 18: - error_2 = _c.sent(); - return [2, checkError("estimateGas", error_2, params.transaction)]; - case 19: - args = { action: "getLogs" }; - if (params.filter.fromBlock) { - args.fromBlock = checkLogTag(params.filter.fromBlock); - } - if (params.filter.toBlock) { - args.toBlock = checkLogTag(params.filter.toBlock); - } - if (params.filter.address) { - args.address = params.filter.address; - } - if (params.filter.topics && params.filter.topics.length > 0) { - if (params.filter.topics.length > 1) { - logger.throwError("unsupported topic count", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { topics: params.filter.topics }); - } - if (params.filter.topics.length === 1) { - topic0 = params.filter.topics[0]; - if (typeof topic0 !== "string" || topic0.length !== 66) { - logger.throwError("unsupported topic format", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { topic0 }); - } - args.topic0 = topic0; - } - } - return [4, this.fetch("logs", args)]; - case 20: - logs = _c.sent(); - blocks = {}; - i = 0; - _c.label = 21; - case 21: - if (!(i < logs.length)) - return [3, 25]; - log = logs[i]; - if (log.blockHash != null) { - return [3, 24]; - } - if (!(blocks[log.blockNumber] == null)) - return [3, 23]; - return [4, this.getBlock(log.blockNumber)]; - case 22: - block = _c.sent(); - if (block) { - blocks[log.blockNumber] = block.hash; - } - _c.label = 23; - case 23: - log.blockHash = blocks[log.blockNumber]; - _c.label = 24; - case 24: - i++; - return [3, 21]; - case 25: - return [2, logs]; - case 26: - if (this.network.name !== "homestead") { - return [2, 0]; - } - _b = parseFloat; - return [4, this.fetch("stats", { action: "ethprice" })]; - case 27: - return [2, _b.apply(void 0, [_c.sent().ethusd])]; - case 28: - return [3, 29]; - case 29: - return [2, _super.prototype.perform.call(this, method, params)]; - } - }); - }); - }; - EtherscanProvider2.prototype.getHistory = function(addressOrName, startBlock, endBlock) { - return __awaiter(this, void 0, void 0, function() { - var params, result; - var _a; - var _this = this; - return __generator(this, function(_b) { - switch (_b.label) { - case 0: - _a = { - action: "txlist" - }; - return [4, this.resolveName(addressOrName)]; - case 1: - params = (_a.address = _b.sent(), _a.startblock = startBlock == null ? 0 : startBlock, _a.endblock = endBlock == null ? 99999999 : endBlock, _a.sort = "asc", _a); - return [4, this.fetch("account", params)]; - case 2: - result = _b.sent(); - return [2, result.map(function(tx) { - ["contractAddress", "to"].forEach(function(key) { - if (tx[key] == "") { - delete tx[key]; - } - }); - if (tx.creates == null && tx.contractAddress != null) { - tx.creates = tx.contractAddress; - } - var item = _this.formatter.transactionResponse(tx); - if (tx.timeStamp) { - item.timestamp = parseInt(tx.timeStamp); - } - return item; - })]; - } - }); - }); - }; - EtherscanProvider2.prototype.isCommunityResource = function() { - return this.apiKey == null; - }; - return EtherscanProvider2; - }(base_provider_1.BaseProvider) - ); - exports2.EtherscanProvider = EtherscanProvider; - } -}); - -// node_modules/@ethersproject/random/lib/random.js -var require_random = __commonJS({ - "node_modules/@ethersproject/random/lib/random.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.randomBytes = void 0; - var crypto_1 = __nccwpck_require__(76982); - var bytes_1 = require_lib2(); - function randomBytes(length) { - return (0, bytes_1.arrayify)((0, crypto_1.randomBytes)(length)); - } - exports2.randomBytes = randomBytes; - } -}); - -// node_modules/@ethersproject/random/lib/shuffle.js -var require_shuffle = __commonJS({ - "node_modules/@ethersproject/random/lib/shuffle.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.shuffled = void 0; - function shuffled(array) { - array = array.slice(); - for (var i = array.length - 1; i > 0; i--) { - var j = Math.floor(Math.random() * (i + 1)); - var tmp = array[i]; - array[i] = array[j]; - array[j] = tmp; - } - return array; - } - exports2.shuffled = shuffled; - } -}); - -// node_modules/@ethersproject/random/lib/index.js -var require_lib21 = __commonJS({ - "node_modules/@ethersproject/random/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.shuffled = exports2.randomBytes = void 0; - var random_1 = require_random(); - Object.defineProperty(exports2, "randomBytes", { enumerable: true, get: function() { - return random_1.randomBytes; - } }); - var shuffle_1 = require_shuffle(); - Object.defineProperty(exports2, "shuffled", { enumerable: true, get: function() { - return shuffle_1.shuffled; - } }); - } -}); - -// node_modules/@ethersproject/providers/lib/fallback-provider.js -var require_fallback_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/fallback-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - var __awaiter = exports2 && exports2.__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 = exports2 && exports2.__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(exports2, "__esModule", { value: true }); - exports2.FallbackProvider = void 0; - var abstract_provider_1 = require_lib5(); - var bignumber_1 = require_lib3(); - var bytes_1 = require_lib2(); - var properties_1 = require_lib4(); - var random_1 = require_lib21(); - var web_1 = require_lib17(); - var base_provider_1 = require_base_provider(); - var formatter_1 = require_formatter(); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - function now() { - return (/* @__PURE__ */ new Date()).getTime(); - } - function checkNetworks(networks) { - var result = null; - for (var i = 0; i < networks.length; i++) { - var network = networks[i]; - if (network == null) { - return null; - } - if (result) { - if (!(result.name === network.name && result.chainId === network.chainId && (result.ensAddress === network.ensAddress || result.ensAddress == null && network.ensAddress == null))) { - logger.throwArgumentError("provider mismatch", "networks", networks); - } - } else { - result = network; - } - } - return result; - } - function median(values, maxDelta) { - values = values.slice().sort(); - var middle = Math.floor(values.length / 2); - if (values.length % 2) { - return values[middle]; - } - var a = values[middle - 1], b = values[middle]; - if (maxDelta != null && Math.abs(a - b) > maxDelta) { - return null; - } - return (a + b) / 2; - } - function serialize(value) { - if (value === null) { - return "null"; - } else if (typeof value === "number" || typeof value === "boolean") { - return JSON.stringify(value); - } else if (typeof value === "string") { - return value; - } else if (bignumber_1.BigNumber.isBigNumber(value)) { - return value.toString(); - } else if (Array.isArray(value)) { - return JSON.stringify(value.map(function(i) { - return serialize(i); - })); - } else if (typeof value === "object") { - var keys = Object.keys(value); - keys.sort(); - return "{" + keys.map(function(key) { - var v = value[key]; - if (typeof v === "function") { - v = "[function]"; - } else { - v = serialize(v); - } - return JSON.stringify(key) + ":" + v; - }).join(",") + "}"; - } - throw new Error("unknown value type: " + typeof value); - } - var nextRid = 1; - function stall(duration) { - var cancel = null; - var timer = null; - var promise = new Promise(function(resolve) { - cancel = function() { - if (timer) { - clearTimeout(timer); - timer = null; - } - resolve(); - }; - timer = setTimeout(cancel, duration); - }); - var wait = function(func) { - promise = promise.then(func); - return promise; - }; - function getPromise() { - return promise; - } - return { cancel, getPromise, wait }; - } - var ForwardErrors = [ - logger_1.Logger.errors.CALL_EXCEPTION, - logger_1.Logger.errors.INSUFFICIENT_FUNDS, - logger_1.Logger.errors.NONCE_EXPIRED, - logger_1.Logger.errors.REPLACEMENT_UNDERPRICED, - logger_1.Logger.errors.UNPREDICTABLE_GAS_LIMIT - ]; - var ForwardProperties = [ - "address", - "args", - "errorArgs", - "errorSignature", - "method", - "transaction" - ]; - function exposeDebugConfig(config, now2) { - var result = { - weight: config.weight - }; - Object.defineProperty(result, "provider", { get: function() { - return config.provider; - } }); - if (config.start) { - result.start = config.start; - } - if (now2) { - result.duration = now2 - config.start; - } - if (config.done) { - if (config.error) { - result.error = config.error; - } else { - result.result = config.result || null; - } - } - return result; - } - function normalizedTally(normalize, quorum) { - return function(configs) { - var tally = {}; - configs.forEach(function(c) { - var value = normalize(c.result); - if (!tally[value]) { - tally[value] = { count: 0, result: c.result }; - } - tally[value].count++; - }); - var keys = Object.keys(tally); - for (var i = 0; i < keys.length; i++) { - var check = tally[keys[i]]; - if (check.count >= quorum) { - return check.result; - } - } - return void 0; - }; - } - function getProcessFunc(provider, method, params) { - var normalize = serialize; - switch (method) { - case "getBlockNumber": - return function(configs) { - var values = configs.map(function(c) { - return c.result; - }); - var blockNumber = median(configs.map(function(c) { - return c.result; - }), 2); - if (blockNumber == null) { - return void 0; - } - blockNumber = Math.ceil(blockNumber); - if (values.indexOf(blockNumber + 1) >= 0) { - blockNumber++; - } - if (blockNumber >= provider._highestBlockNumber) { - provider._highestBlockNumber = blockNumber; - } - return provider._highestBlockNumber; - }; - case "getGasPrice": - return function(configs) { - var values = configs.map(function(c) { - return c.result; - }); - values.sort(); - return values[Math.floor(values.length / 2)]; - }; - case "getEtherPrice": - return function(configs) { - return median(configs.map(function(c) { - return c.result; - })); - }; - case "getBalance": - case "getTransactionCount": - case "getCode": - case "getStorageAt": - case "call": - case "estimateGas": - case "getLogs": - break; - case "getTransaction": - case "getTransactionReceipt": - normalize = function(tx) { - if (tx == null) { - return null; - } - tx = (0, properties_1.shallowCopy)(tx); - tx.confirmations = -1; - return serialize(tx); - }; - break; - case "getBlock": - if (params.includeTransactions) { - normalize = function(block) { - if (block == null) { - return null; - } - block = (0, properties_1.shallowCopy)(block); - block.transactions = block.transactions.map(function(tx) { - tx = (0, properties_1.shallowCopy)(tx); - tx.confirmations = -1; - return tx; - }); - return serialize(block); - }; - } else { - normalize = function(block) { - if (block == null) { - return null; - } - return serialize(block); - }; - } - break; - default: - throw new Error("unknown method: " + method); - } - return normalizedTally(normalize, provider.quorum); - } - function waitForSync(config, blockNumber) { - return __awaiter(this, void 0, void 0, function() { - var provider; - return __generator(this, function(_a) { - provider = config.provider; - if (provider.blockNumber != null && provider.blockNumber >= blockNumber || blockNumber === -1) { - return [2, provider]; - } - return [2, (0, web_1.poll)(function() { - return new Promise(function(resolve, reject) { - setTimeout(function() { - if (provider.blockNumber >= blockNumber) { - return resolve(provider); - } - if (config.cancelled) { - return resolve(null); - } - return resolve(void 0); - }, 0); - }); - }, { oncePoll: provider })]; - }); - }); - } - function getRunner(config, currentBlockNumber, method, params) { - return __awaiter(this, void 0, void 0, function() { - var provider, _a, filter2; - return __generator(this, function(_b) { - switch (_b.label) { - case 0: - provider = config.provider; - _a = method; - switch (_a) { - case "getBlockNumber": - return [3, 1]; - case "getGasPrice": - return [3, 1]; - case "getEtherPrice": - return [3, 2]; - case "getBalance": - return [3, 3]; - case "getTransactionCount": - return [3, 3]; - case "getCode": - return [3, 3]; - case "getStorageAt": - return [3, 6]; - case "getBlock": - return [3, 9]; - case "call": - return [3, 12]; - case "estimateGas": - return [3, 12]; - case "getTransaction": - return [3, 15]; - case "getTransactionReceipt": - return [3, 15]; - case "getLogs": - return [3, 16]; - } - return [3, 19]; - case 1: - return [2, provider[method]()]; - case 2: - if (provider.getEtherPrice) { - return [2, provider.getEtherPrice()]; - } - return [3, 19]; - case 3: - if (!(params.blockTag && (0, bytes_1.isHexString)(params.blockTag))) - return [3, 5]; - return [4, waitForSync(config, currentBlockNumber)]; - case 4: - provider = _b.sent(); - _b.label = 5; - case 5: - return [2, provider[method](params.address, params.blockTag || "latest")]; - case 6: - if (!(params.blockTag && (0, bytes_1.isHexString)(params.blockTag))) - return [3, 8]; - return [4, waitForSync(config, currentBlockNumber)]; - case 7: - provider = _b.sent(); - _b.label = 8; - case 8: - return [2, provider.getStorageAt(params.address, params.position, params.blockTag || "latest")]; - case 9: - if (!(params.blockTag && (0, bytes_1.isHexString)(params.blockTag))) - return [3, 11]; - return [4, waitForSync(config, currentBlockNumber)]; - case 10: - provider = _b.sent(); - _b.label = 11; - case 11: - return [2, provider[params.includeTransactions ? "getBlockWithTransactions" : "getBlock"](params.blockTag || params.blockHash)]; - case 12: - if (!(params.blockTag && (0, bytes_1.isHexString)(params.blockTag))) - return [3, 14]; - return [4, waitForSync(config, currentBlockNumber)]; - case 13: - provider = _b.sent(); - _b.label = 14; - case 14: - if (method === "call" && params.blockTag) { - return [2, provider[method](params.transaction, params.blockTag)]; - } - return [2, provider[method](params.transaction)]; - case 15: - return [2, provider[method](params.transactionHash)]; - case 16: - filter2 = params.filter; - if (!(filter2.fromBlock && (0, bytes_1.isHexString)(filter2.fromBlock) || filter2.toBlock && (0, bytes_1.isHexString)(filter2.toBlock))) - return [3, 18]; - return [4, waitForSync(config, currentBlockNumber)]; - case 17: - provider = _b.sent(); - _b.label = 18; - case 18: - return [2, provider.getLogs(filter2)]; - case 19: - return [2, logger.throwError("unknown method error", logger_1.Logger.errors.UNKNOWN_ERROR, { - method, - params - })]; - } - }); - }); - } - var FallbackProvider = ( - /** @class */ - function(_super) { - __extends(FallbackProvider2, _super); - function FallbackProvider2(providers, quorum) { - var _this = this; - if (providers.length === 0) { - logger.throwArgumentError("missing providers", "providers", providers); - } - var providerConfigs = providers.map(function(configOrProvider, index) { - if (abstract_provider_1.Provider.isProvider(configOrProvider)) { - var stallTimeout = (0, formatter_1.isCommunityResource)(configOrProvider) ? 2e3 : 750; - var priority = 1; - return Object.freeze({ provider: configOrProvider, weight: 1, stallTimeout, priority }); - } - var config = (0, properties_1.shallowCopy)(configOrProvider); - if (config.priority == null) { - config.priority = 1; - } - if (config.stallTimeout == null) { - config.stallTimeout = (0, formatter_1.isCommunityResource)(configOrProvider) ? 2e3 : 750; - } - if (config.weight == null) { - config.weight = 1; - } - var weight = config.weight; - if (weight % 1 || weight > 512 || weight < 1) { - logger.throwArgumentError("invalid weight; must be integer in [1, 512]", "providers[" + index + "].weight", weight); - } - return Object.freeze(config); - }); - var total = providerConfigs.reduce(function(accum, c) { - return accum + c.weight; - }, 0); - if (quorum == null) { - quorum = total / 2; - } else if (quorum > total) { - logger.throwArgumentError("quorum will always fail; larger than total weight", "quorum", quorum); - } - var networkOrReady = checkNetworks(providerConfigs.map(function(c) { - return c.provider.network; - })); - if (networkOrReady == null) { - networkOrReady = new Promise(function(resolve, reject) { - setTimeout(function() { - _this.detectNetwork().then(resolve, reject); - }, 0); - }); - } - _this = _super.call(this, networkOrReady) || this; - (0, properties_1.defineReadOnly)(_this, "providerConfigs", Object.freeze(providerConfigs)); - (0, properties_1.defineReadOnly)(_this, "quorum", quorum); - _this._highestBlockNumber = -1; - return _this; - } - FallbackProvider2.prototype.detectNetwork = function() { - return __awaiter(this, void 0, void 0, function() { - var networks; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - return [4, Promise.all(this.providerConfigs.map(function(c) { - return c.provider.getNetwork(); - }))]; - case 1: - networks = _a.sent(); - return [2, checkNetworks(networks)]; - } - }); - }); - }; - FallbackProvider2.prototype.perform = function(method, params) { - return __awaiter(this, void 0, void 0, function() { - var results, i_1, result, processFunc, configs, currentBlockNumber, i, first, _loop_1, this_1, state_1; - var _this = this; - return __generator(this, function(_a) { - switch (_a.label) { - case 0: - if (!(method === "sendTransaction")) - return [3, 2]; - return [4, Promise.all(this.providerConfigs.map(function(c) { - return c.provider.sendTransaction(params.signedTransaction).then(function(result2) { - return result2.hash; - }, function(error) { - return error; - }); - }))]; - case 1: - results = _a.sent(); - for (i_1 = 0; i_1 < results.length; i_1++) { - result = results[i_1]; - if (typeof result === "string") { - return [2, result]; - } - } - throw results[0]; - case 2: - if (!(this._highestBlockNumber === -1 && method !== "getBlockNumber")) - return [3, 4]; - return [4, this.getBlockNumber()]; - case 3: - _a.sent(); - _a.label = 4; - case 4: - processFunc = getProcessFunc(this, method, params); - configs = (0, random_1.shuffled)(this.providerConfigs.map(properties_1.shallowCopy)); - configs.sort(function(a, b) { - return a.priority - b.priority; - }); - currentBlockNumber = this._highestBlockNumber; - i = 0; - first = true; - _loop_1 = function() { - var t0, inflightWeight, _loop_2, waiting, results2, result2, errors; - return __generator(this, function(_b) { - switch (_b.label) { - case 0: - t0 = now(); - inflightWeight = configs.filter(function(c) { - return c.runner && t0 - c.start < c.stallTimeout; - }).reduce(function(accum, c) { - return accum + c.weight; - }, 0); - _loop_2 = function() { - var config = configs[i++]; - var rid = nextRid++; - config.start = now(); - config.staller = stall(config.stallTimeout); - config.staller.wait(function() { - config.staller = null; - }); - config.runner = getRunner(config, currentBlockNumber, method, params).then(function(result3) { - config.done = true; - config.result = result3; - if (_this.listenerCount("debug")) { - _this.emit("debug", { - action: "request", - rid, - backend: exposeDebugConfig(config, now()), - request: { method, params: (0, properties_1.deepCopy)(params) }, - provider: _this - }); - } - }, function(error) { - config.done = true; - config.error = error; - if (_this.listenerCount("debug")) { - _this.emit("debug", { - action: "request", - rid, - backend: exposeDebugConfig(config, now()), - request: { method, params: (0, properties_1.deepCopy)(params) }, - provider: _this - }); - } - }); - if (this_1.listenerCount("debug")) { - this_1.emit("debug", { - action: "request", - rid, - backend: exposeDebugConfig(config, null), - request: { method, params: (0, properties_1.deepCopy)(params) }, - provider: this_1 - }); - } - inflightWeight += config.weight; - }; - while (inflightWeight < this_1.quorum && i < configs.length) { - _loop_2(); - } - waiting = []; - configs.forEach(function(c) { - if (c.done || !c.runner) { - return; - } - waiting.push(c.runner); - if (c.staller) { - waiting.push(c.staller.getPromise()); - } - }); - if (!waiting.length) - return [3, 2]; - return [4, Promise.race(waiting)]; - case 1: - _b.sent(); - _b.label = 2; - case 2: - results2 = configs.filter(function(c) { - return c.done && c.error == null; - }); - if (!(results2.length >= this_1.quorum)) - return [3, 5]; - result2 = processFunc(results2); - if (result2 !== void 0) { - configs.forEach(function(c) { - if (c.staller) { - c.staller.cancel(); - } - c.cancelled = true; - }); - return [2, { value: result2 }]; - } - if (!!first) - return [3, 4]; - return [4, stall(100).getPromise()]; - case 3: - _b.sent(); - _b.label = 4; - case 4: - first = false; - _b.label = 5; - case 5: - errors = configs.reduce(function(accum, c) { - if (!c.done || c.error == null) { - return accum; - } - var code = c.error.code; - if (ForwardErrors.indexOf(code) >= 0) { - if (!accum[code]) { - accum[code] = { error: c.error, weight: 0 }; - } - accum[code].weight += c.weight; - } - return accum; - }, {}); - Object.keys(errors).forEach(function(errorCode) { - var tally = errors[errorCode]; - if (tally.weight < _this.quorum) { - return; - } - configs.forEach(function(c) { - if (c.staller) { - c.staller.cancel(); - } - c.cancelled = true; - }); - var e = tally.error; - var props = {}; - ForwardProperties.forEach(function(name) { - if (e[name] == null) { - return; - } - props[name] = e[name]; - }); - logger.throwError(e.reason || e.message, errorCode, props); - }); - if (configs.filter(function(c) { - return !c.done; - }).length === 0) { - return [2, "break"]; - } - return [ - 2 - /*return*/ - ]; - } - }); - }; - this_1 = this; - _a.label = 5; - case 5: - if (false) - {} - return [5, _loop_1()]; - case 6: - state_1 = _a.sent(); - if (typeof state_1 === "object") - return [2, state_1.value]; - if (state_1 === "break") - return [3, 7]; - return [3, 5]; - case 7: - configs.forEach(function(c) { - if (c.staller) { - c.staller.cancel(); - } - c.cancelled = true; - }); - return [2, logger.throwError("failed to meet quorum", logger_1.Logger.errors.SERVER_ERROR, { - method, - params, - //results: configs.map((c) => c.result), - //errors: configs.map((c) => c.error), - results: configs.map(function(c) { - return exposeDebugConfig(c); - }), - provider: this - })]; - } - }); - }); - }; - return FallbackProvider2; - }(base_provider_1.BaseProvider) - ); - exports2.FallbackProvider = FallbackProvider; - } -}); - -// node_modules/@ethersproject/providers/lib/ipc-provider.js -var require_ipc_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/ipc-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.IpcProvider = void 0; - var net_1 = __nccwpck_require__(69278); - var properties_1 = require_lib4(); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - var json_rpc_provider_1 = require_json_rpc_provider(); - var IpcProvider = ( - /** @class */ - function(_super) { - __extends(IpcProvider2, _super); - function IpcProvider2(path, network) { - var _this = this; - if (path == null) { - logger.throwError("missing path", logger_1.Logger.errors.MISSING_ARGUMENT, { arg: "path" }); - } - _this = _super.call(this, "ipc://" + path, network) || this; - (0, properties_1.defineReadOnly)(_this, "path", path); - return _this; - } - IpcProvider2.prototype.send = function(method, params) { - var _this = this; - var payload = JSON.stringify({ - method, - params, - id: 42, - jsonrpc: "2.0" - }); - return new Promise(function(resolve, reject) { - var response = Buffer.alloc(0); - var stream4 = (0, net_1.connect)(_this.path); - stream4.on("data", function(data) { - response = Buffer.concat([response, data]); - }); - stream4.on("end", function() { - try { - resolve(JSON.parse(response.toString()).result); - stream4.destroy(); - } catch (error) { - reject(error); - stream4.destroy(); - } - }); - stream4.on("error", function(error) { - reject(error); - stream4.destroy(); - }); - stream4.write(payload); - stream4.end(); - }); - }; - return IpcProvider2; - }(json_rpc_provider_1.JsonRpcProvider) - ); - exports2.IpcProvider = IpcProvider; - } -}); - -// node_modules/@ethersproject/providers/lib/infura-provider.js -var require_infura_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/infura-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.InfuraProvider = exports2.InfuraWebSocketProvider = void 0; - var properties_1 = require_lib4(); - var websocket_provider_1 = require_websocket_provider(); - var formatter_1 = require_formatter(); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - var url_json_rpc_provider_1 = require_url_json_rpc_provider(); - var defaultProjectId = "84842078b09946638c03157f83405213"; - var InfuraWebSocketProvider = ( - /** @class */ - function(_super) { - __extends(InfuraWebSocketProvider2, _super); - function InfuraWebSocketProvider2(network, apiKey) { - var _this = this; - var provider = new InfuraProvider(network, apiKey); - var connection = provider.connection; - if (connection.password) { - logger.throwError("INFURA WebSocket project secrets unsupported", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { - operation: "InfuraProvider.getWebSocketProvider()" - }); - } - var url2 = connection.url.replace(/^http/i, "ws").replace("/v3/", "/ws/v3/"); - _this = _super.call(this, url2, network) || this; - (0, properties_1.defineReadOnly)(_this, "apiKey", provider.projectId); - (0, properties_1.defineReadOnly)(_this, "projectId", provider.projectId); - (0, properties_1.defineReadOnly)(_this, "projectSecret", provider.projectSecret); - return _this; - } - InfuraWebSocketProvider2.prototype.isCommunityResource = function() { - return this.projectId === defaultProjectId; - }; - return InfuraWebSocketProvider2; - }(websocket_provider_1.WebSocketProvider) - ); - exports2.InfuraWebSocketProvider = InfuraWebSocketProvider; - var InfuraProvider = ( - /** @class */ - function(_super) { - __extends(InfuraProvider2, _super); - function InfuraProvider2() { - return _super !== null && _super.apply(this, arguments) || this; - } - InfuraProvider2.getWebSocketProvider = function(network, apiKey) { - return new InfuraWebSocketProvider(network, apiKey); - }; - InfuraProvider2.getApiKey = function(apiKey) { - var apiKeyObj = { - apiKey: defaultProjectId, - projectId: defaultProjectId, - projectSecret: null - }; - if (apiKey == null) { - return apiKeyObj; - } - if (typeof apiKey === "string") { - apiKeyObj.projectId = apiKey; - } else if (apiKey.projectSecret != null) { - logger.assertArgument(typeof apiKey.projectId === "string", "projectSecret requires a projectId", "projectId", apiKey.projectId); - logger.assertArgument(typeof apiKey.projectSecret === "string", "invalid projectSecret", "projectSecret", "[REDACTED]"); - apiKeyObj.projectId = apiKey.projectId; - apiKeyObj.projectSecret = apiKey.projectSecret; - } else if (apiKey.projectId) { - apiKeyObj.projectId = apiKey.projectId; - } - apiKeyObj.apiKey = apiKeyObj.projectId; - return apiKeyObj; - }; - InfuraProvider2.getUrl = function(network, apiKey) { - var host = null; - switch (network ? network.name : "unknown") { - case "homestead": - host = "mainnet.infura.io"; - break; - case "goerli": - host = "goerli.infura.io"; - break; - case "sepolia": - host = "sepolia.infura.io"; - break; - case "matic": - host = "polygon-mainnet.infura.io"; - break; - case "maticmum": - host = "polygon-mumbai.infura.io"; - break; - case "optimism": - host = "optimism-mainnet.infura.io"; - break; - case "optimism-goerli": - host = "optimism-goerli.infura.io"; - break; - case "arbitrum": - host = "arbitrum-mainnet.infura.io"; - break; - case "arbitrum-goerli": - host = "arbitrum-goerli.infura.io"; - break; - default: - logger.throwError("unsupported network", logger_1.Logger.errors.INVALID_ARGUMENT, { - argument: "network", - value: network - }); - } - var connection = { - allowGzip: true, - url: "https://" + host + "/v3/" + apiKey.projectId, - throttleCallback: function(attempt, url2) { - if (apiKey.projectId === defaultProjectId) { - (0, formatter_1.showThrottleMessage)(); - } - return Promise.resolve(true); - } - }; - if (apiKey.projectSecret != null) { - connection.user = ""; - connection.password = apiKey.projectSecret; - } - return connection; - }; - InfuraProvider2.prototype.isCommunityResource = function() { - return this.projectId === defaultProjectId; - }; - return InfuraProvider2; - }(url_json_rpc_provider_1.UrlJsonRpcProvider) - ); - exports2.InfuraProvider = InfuraProvider; - } -}); - -// node_modules/@ethersproject/providers/lib/json-rpc-batch-provider.js -var require_json_rpc_batch_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/json-rpc-batch-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.JsonRpcBatchProvider = void 0; - var properties_1 = require_lib4(); - var web_1 = require_lib17(); - var json_rpc_provider_1 = require_json_rpc_provider(); - var JsonRpcBatchProvider = ( - /** @class */ - function(_super) { - __extends(JsonRpcBatchProvider2, _super); - function JsonRpcBatchProvider2() { - return _super !== null && _super.apply(this, arguments) || this; - } - JsonRpcBatchProvider2.prototype.send = function(method, params) { - var _this = this; - var request = { - method, - params, - id: this._nextId++, - jsonrpc: "2.0" - }; - if (this._pendingBatch == null) { - this._pendingBatch = []; - } - var inflightRequest = { request, resolve: null, reject: null }; - var promise = new Promise(function(resolve, reject) { - inflightRequest.resolve = resolve; - inflightRequest.reject = reject; - }); - this._pendingBatch.push(inflightRequest); - if (!this._pendingBatchAggregator) { - this._pendingBatchAggregator = setTimeout(function() { - var batch = _this._pendingBatch; - _this._pendingBatch = null; - _this._pendingBatchAggregator = null; - var request2 = batch.map(function(inflight) { - return inflight.request; - }); - _this.emit("debug", { - action: "requestBatch", - request: (0, properties_1.deepCopy)(request2), - provider: _this - }); - return (0, web_1.fetchJson)(_this.connection, JSON.stringify(request2)).then(function(result) { - _this.emit("debug", { - action: "response", - request: request2, - response: result, - provider: _this - }); - batch.forEach(function(inflightRequest2, index) { - var payload = result[index]; - if (payload.error) { - var error = new Error(payload.error.message); - error.code = payload.error.code; - error.data = payload.error.data; - inflightRequest2.reject(error); - } else { - inflightRequest2.resolve(payload.result); - } - }); - }, function(error) { - _this.emit("debug", { - action: "response", - error, - request: request2, - provider: _this - }); - batch.forEach(function(inflightRequest2) { - inflightRequest2.reject(error); - }); - }); - }, 10); - } - return promise; - }; - return JsonRpcBatchProvider2; - }(json_rpc_provider_1.JsonRpcProvider) - ); - exports2.JsonRpcBatchProvider = JsonRpcBatchProvider; - } -}); - -// node_modules/@ethersproject/providers/lib/nodesmith-provider.js -var require_nodesmith_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/nodesmith-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.NodesmithProvider = void 0; - var url_json_rpc_provider_1 = require_url_json_rpc_provider(); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - var defaultApiKey = "ETHERS_JS_SHARED"; - var NodesmithProvider = ( - /** @class */ - function(_super) { - __extends(NodesmithProvider2, _super); - function NodesmithProvider2() { - return _super !== null && _super.apply(this, arguments) || this; - } - NodesmithProvider2.getApiKey = function(apiKey) { - if (apiKey && typeof apiKey !== "string") { - logger.throwArgumentError("invalid apiKey", "apiKey", apiKey); - } - return apiKey || defaultApiKey; - }; - NodesmithProvider2.getUrl = function(network, apiKey) { - logger.warn("NodeSmith will be discontinued on 2019-12-20; please migrate to another platform."); - var host = null; - switch (network.name) { - case "homestead": - host = "https://ethereum.api.nodesmith.io/v1/mainnet/jsonrpc"; - break; - case "ropsten": - host = "https://ethereum.api.nodesmith.io/v1/ropsten/jsonrpc"; - break; - case "rinkeby": - host = "https://ethereum.api.nodesmith.io/v1/rinkeby/jsonrpc"; - break; - case "goerli": - host = "https://ethereum.api.nodesmith.io/v1/goerli/jsonrpc"; - break; - case "kovan": - host = "https://ethereum.api.nodesmith.io/v1/kovan/jsonrpc"; - break; - default: - logger.throwArgumentError("unsupported network", "network", arguments[0]); - } - return host + "?apiKey=" + apiKey; - }; - return NodesmithProvider2; - }(url_json_rpc_provider_1.UrlJsonRpcProvider) - ); - exports2.NodesmithProvider = NodesmithProvider; - } -}); - -// node_modules/@ethersproject/providers/lib/pocket-provider.js -var require_pocket_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/pocket-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PocketProvider = void 0; - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - var url_json_rpc_provider_1 = require_url_json_rpc_provider(); - var defaultApplicationId = "62e1ad51b37b8e00394bda3b"; - var PocketProvider = ( - /** @class */ - function(_super) { - __extends(PocketProvider2, _super); - function PocketProvider2() { - return _super !== null && _super.apply(this, arguments) || this; - } - PocketProvider2.getApiKey = function(apiKey) { - var apiKeyObj = { - applicationId: null, - loadBalancer: true, - applicationSecretKey: null - }; - if (apiKey == null) { - apiKeyObj.applicationId = defaultApplicationId; - } else if (typeof apiKey === "string") { - apiKeyObj.applicationId = apiKey; - } else if (apiKey.applicationSecretKey != null) { - apiKeyObj.applicationId = apiKey.applicationId; - apiKeyObj.applicationSecretKey = apiKey.applicationSecretKey; - } else if (apiKey.applicationId) { - apiKeyObj.applicationId = apiKey.applicationId; - } else { - logger.throwArgumentError("unsupported PocketProvider apiKey", "apiKey", apiKey); - } - return apiKeyObj; - }; - PocketProvider2.getUrl = function(network, apiKey) { - var host = null; - switch (network ? network.name : "unknown") { - case "goerli": - host = "eth-goerli.gateway.pokt.network"; - break; - case "homestead": - host = "eth-mainnet.gateway.pokt.network"; - break; - case "kovan": - host = "poa-kovan.gateway.pokt.network"; - break; - case "matic": - host = "poly-mainnet.gateway.pokt.network"; - break; - case "maticmum": - host = "polygon-mumbai-rpc.gateway.pokt.network"; - break; - case "rinkeby": - host = "eth-rinkeby.gateway.pokt.network"; - break; - case "ropsten": - host = "eth-ropsten.gateway.pokt.network"; - break; - default: - logger.throwError("unsupported network", logger_1.Logger.errors.INVALID_ARGUMENT, { - argument: "network", - value: network - }); - } - var url2 = "https://" + host + "/v1/lb/" + apiKey.applicationId; - var connection = { headers: {}, url: url2 }; - if (apiKey.applicationSecretKey != null) { - connection.user = ""; - connection.password = apiKey.applicationSecretKey; - } - return connection; - }; - PocketProvider2.prototype.isCommunityResource = function() { - return this.applicationId === defaultApplicationId; - }; - return PocketProvider2; - }(url_json_rpc_provider_1.UrlJsonRpcProvider) - ); - exports2.PocketProvider = PocketProvider; - } -}); - -// node_modules/@ethersproject/providers/lib/web3-provider.js -var require_web3_provider = __commonJS({ - "node_modules/@ethersproject/providers/lib/web3-provider.js"(exports2) { - "use strict"; - var __extends = exports2 && exports2.__extends || /* @__PURE__ */ function() { - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) { - d2.__proto__ = b2; - } || function(d2, b2) { - for (var p in b2) - if (Object.prototype.hasOwnProperty.call(b2, p)) - d2[p] = b2[p]; - }; - return extendStatics(d, b); - }; - return function(d, b) { - if (typeof b !== "function" && b !== null) - throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); - extendStatics(d, b); - function __() { - this.constructor = d; - } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.Web3Provider = void 0; - var properties_1 = require_lib4(); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - var json_rpc_provider_1 = require_json_rpc_provider(); - var _nextId = 1; - function buildWeb3LegacyFetcher(provider, sendFunc) { - var fetcher = "Web3LegacyFetcher"; - return function(method, params) { - var _this = this; - var request = { - method, - params, - id: _nextId++, - jsonrpc: "2.0" - }; - return new Promise(function(resolve, reject) { - _this.emit("debug", { - action: "request", - fetcher, - request: (0, properties_1.deepCopy)(request), - provider: _this - }); - sendFunc(request, function(error, response) { - if (error) { - _this.emit("debug", { - action: "response", - fetcher, - error, - request, - provider: _this - }); - return reject(error); - } - _this.emit("debug", { - action: "response", - fetcher, - request, - response, - provider: _this - }); - if (response.error) { - var error_1 = new Error(response.error.message); - error_1.code = response.error.code; - error_1.data = response.error.data; - return reject(error_1); - } - resolve(response.result); - }); - }); - }; - } - function buildEip1193Fetcher(provider) { - return function(method, params) { - var _this = this; - if (params == null) { - params = []; - } - var request = { method, params }; - this.emit("debug", { - action: "request", - fetcher: "Eip1193Fetcher", - request: (0, properties_1.deepCopy)(request), - provider: this - }); - return provider.request(request).then(function(response) { - _this.emit("debug", { - action: "response", - fetcher: "Eip1193Fetcher", - request, - response, - provider: _this - }); - return response; - }, function(error) { - _this.emit("debug", { - action: "response", - fetcher: "Eip1193Fetcher", - request, - error, - provider: _this - }); - throw error; - }); - }; - } - var Web3Provider = ( - /** @class */ - function(_super) { - __extends(Web3Provider2, _super); - function Web3Provider2(provider, network) { - var _this = this; - if (provider == null) { - logger.throwArgumentError("missing provider", "provider", provider); - } - var path = null; - var jsonRpcFetchFunc = null; - var subprovider = null; - if (typeof provider === "function") { - path = "unknown:"; - jsonRpcFetchFunc = provider; - } else { - path = provider.host || provider.path || ""; - if (!path && provider.isMetaMask) { - path = "metamask"; - } - subprovider = provider; - if (provider.request) { - if (path === "") { - path = "eip-1193:"; - } - jsonRpcFetchFunc = buildEip1193Fetcher(provider); - } else if (provider.sendAsync) { - jsonRpcFetchFunc = buildWeb3LegacyFetcher(provider, provider.sendAsync.bind(provider)); - } else if (provider.send) { - jsonRpcFetchFunc = buildWeb3LegacyFetcher(provider, provider.send.bind(provider)); - } else { - logger.throwArgumentError("unsupported provider", "provider", provider); - } - if (!path) { - path = "unknown:"; - } - } - _this = _super.call(this, path, network) || this; - (0, properties_1.defineReadOnly)(_this, "jsonRpcFetchFunc", jsonRpcFetchFunc); - (0, properties_1.defineReadOnly)(_this, "provider", subprovider); - return _this; - } - Web3Provider2.prototype.send = function(method, params) { - return this.jsonRpcFetchFunc(method, params); - }; - return Web3Provider2; - }(json_rpc_provider_1.JsonRpcProvider) - ); - exports2.Web3Provider = Web3Provider; - } -}); - -// node_modules/@ethersproject/providers/lib/index.js -var require_lib22 = __commonJS({ - "node_modules/@ethersproject/providers/lib/index.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.Formatter = exports2.showThrottleMessage = exports2.isCommunityResourcable = exports2.isCommunityResource = exports2.getNetwork = exports2.getDefaultProvider = exports2.JsonRpcSigner = exports2.IpcProvider = exports2.WebSocketProvider = exports2.Web3Provider = exports2.StaticJsonRpcProvider = exports2.PocketProvider = exports2.NodesmithProvider = exports2.JsonRpcBatchProvider = exports2.JsonRpcProvider = exports2.InfuraWebSocketProvider = exports2.InfuraProvider = exports2.EtherscanProvider = exports2.CloudflareProvider = exports2.AnkrProvider = exports2.AlchemyWebSocketProvider = exports2.AlchemyProvider = exports2.FallbackProvider = exports2.UrlJsonRpcProvider = exports2.Resolver = exports2.BaseProvider = exports2.Provider = void 0; - var abstract_provider_1 = require_lib5(); - Object.defineProperty(exports2, "Provider", { enumerable: true, get: function() { - return abstract_provider_1.Provider; - } }); - var networks_1 = require_lib6(); - Object.defineProperty(exports2, "getNetwork", { enumerable: true, get: function() { - return networks_1.getNetwork; - } }); - var base_provider_1 = require_base_provider(); - Object.defineProperty(exports2, "BaseProvider", { enumerable: true, get: function() { - return base_provider_1.BaseProvider; - } }); - Object.defineProperty(exports2, "Resolver", { enumerable: true, get: function() { - return base_provider_1.Resolver; - } }); - var alchemy_provider_1 = require_alchemy_provider(); - Object.defineProperty(exports2, "AlchemyProvider", { enumerable: true, get: function() { - return alchemy_provider_1.AlchemyProvider; - } }); - Object.defineProperty(exports2, "AlchemyWebSocketProvider", { enumerable: true, get: function() { - return alchemy_provider_1.AlchemyWebSocketProvider; - } }); - var ankr_provider_1 = require_ankr_provider(); - Object.defineProperty(exports2, "AnkrProvider", { enumerable: true, get: function() { - return ankr_provider_1.AnkrProvider; - } }); - var cloudflare_provider_1 = require_cloudflare_provider(); - Object.defineProperty(exports2, "CloudflareProvider", { enumerable: true, get: function() { - return cloudflare_provider_1.CloudflareProvider; - } }); - var etherscan_provider_1 = require_etherscan_provider(); - Object.defineProperty(exports2, "EtherscanProvider", { enumerable: true, get: function() { - return etherscan_provider_1.EtherscanProvider; - } }); - var fallback_provider_1 = require_fallback_provider(); - Object.defineProperty(exports2, "FallbackProvider", { enumerable: true, get: function() { - return fallback_provider_1.FallbackProvider; - } }); - var ipc_provider_1 = require_ipc_provider(); - Object.defineProperty(exports2, "IpcProvider", { enumerable: true, get: function() { - return ipc_provider_1.IpcProvider; - } }); - var infura_provider_1 = require_infura_provider(); - Object.defineProperty(exports2, "InfuraProvider", { enumerable: true, get: function() { - return infura_provider_1.InfuraProvider; - } }); - Object.defineProperty(exports2, "InfuraWebSocketProvider", { enumerable: true, get: function() { - return infura_provider_1.InfuraWebSocketProvider; - } }); - var json_rpc_provider_1 = require_json_rpc_provider(); - Object.defineProperty(exports2, "JsonRpcProvider", { enumerable: true, get: function() { - return json_rpc_provider_1.JsonRpcProvider; - } }); - Object.defineProperty(exports2, "JsonRpcSigner", { enumerable: true, get: function() { - return json_rpc_provider_1.JsonRpcSigner; - } }); - var json_rpc_batch_provider_1 = require_json_rpc_batch_provider(); - Object.defineProperty(exports2, "JsonRpcBatchProvider", { enumerable: true, get: function() { - return json_rpc_batch_provider_1.JsonRpcBatchProvider; - } }); - var nodesmith_provider_1 = require_nodesmith_provider(); - Object.defineProperty(exports2, "NodesmithProvider", { enumerable: true, get: function() { - return nodesmith_provider_1.NodesmithProvider; - } }); - var pocket_provider_1 = require_pocket_provider(); - Object.defineProperty(exports2, "PocketProvider", { enumerable: true, get: function() { - return pocket_provider_1.PocketProvider; - } }); - var url_json_rpc_provider_1 = require_url_json_rpc_provider(); - Object.defineProperty(exports2, "StaticJsonRpcProvider", { enumerable: true, get: function() { - return url_json_rpc_provider_1.StaticJsonRpcProvider; - } }); - Object.defineProperty(exports2, "UrlJsonRpcProvider", { enumerable: true, get: function() { - return url_json_rpc_provider_1.UrlJsonRpcProvider; - } }); - var web3_provider_1 = require_web3_provider(); - Object.defineProperty(exports2, "Web3Provider", { enumerable: true, get: function() { - return web3_provider_1.Web3Provider; - } }); - var websocket_provider_1 = require_websocket_provider(); - Object.defineProperty(exports2, "WebSocketProvider", { enumerable: true, get: function() { - return websocket_provider_1.WebSocketProvider; - } }); - var formatter_1 = require_formatter(); - Object.defineProperty(exports2, "Formatter", { enumerable: true, get: function() { - return formatter_1.Formatter; - } }); - Object.defineProperty(exports2, "isCommunityResourcable", { enumerable: true, get: function() { - return formatter_1.isCommunityResourcable; - } }); - Object.defineProperty(exports2, "isCommunityResource", { enumerable: true, get: function() { - return formatter_1.isCommunityResource; - } }); - Object.defineProperty(exports2, "showThrottleMessage", { enumerable: true, get: function() { - return formatter_1.showThrottleMessage; - } }); - var logger_1 = require_lib(); - var _version_1 = require_version13(); - var logger = new logger_1.Logger(_version_1.version); - function getDefaultProvider(network, options) { - if (network == null) { - network = "homestead"; - } - if (typeof network === "string") { - var match = network.match(/^(ws|http)s?:/i); - if (match) { - switch (match[1].toLowerCase()) { - case "http": - case "https": - return new json_rpc_provider_1.JsonRpcProvider(network); - case "ws": - case "wss": - return new websocket_provider_1.WebSocketProvider(network); - default: - logger.throwArgumentError("unsupported URL scheme", "network", network); - } - } - } - var n = (0, networks_1.getNetwork)(network); - if (!n || !n._defaultProvider) { - logger.throwError("unsupported getDefaultProvider network", logger_1.Logger.errors.NETWORK_ERROR, { - operation: "getDefaultProvider", - network - }); - } - return n._defaultProvider({ - FallbackProvider: fallback_provider_1.FallbackProvider, - AlchemyProvider: alchemy_provider_1.AlchemyProvider, - AnkrProvider: ankr_provider_1.AnkrProvider, - CloudflareProvider: cloudflare_provider_1.CloudflareProvider, - EtherscanProvider: etherscan_provider_1.EtherscanProvider, - InfuraProvider: infura_provider_1.InfuraProvider, - JsonRpcProvider: json_rpc_provider_1.JsonRpcProvider, - NodesmithProvider: nodesmith_provider_1.NodesmithProvider, - PocketProvider: pocket_provider_1.PocketProvider, - Web3Provider: web3_provider_1.Web3Provider, - IpcProvider: ipc_provider_1.IpcProvider - }, options); - } - exports2.getDefaultProvider = getDefaultProvider; - } -}); - -// node_modules/delayed-stream/lib/delayed_stream.js -var require_delayed_stream = __commonJS({ - "node_modules/delayed-stream/lib/delayed_stream.js"(exports2, module2) { - "use strict"; - var Stream = (__nccwpck_require__(2203).Stream); - var util2 = __nccwpck_require__(39023); - module2.exports = DelayedStream; - function DelayedStream() { - this.source = null; - this.dataSize = 0; - this.maxDataSize = 1024 * 1024; - this.pauseStream = true; - this._maxDataSizeExceeded = false; - this._released = false; - this._bufferedEvents = []; - } - util2.inherits(DelayedStream, Stream); - DelayedStream.create = function(source, options) { - var delayedStream = new this(); - options = options || {}; - for (var option in options) { - delayedStream[option] = options[option]; - } - delayedStream.source = source; - var realEmit = source.emit; - source.emit = function() { - delayedStream._handleEmit(arguments); - return realEmit.apply(source, arguments); - }; - source.on("error", function() { - }); - if (delayedStream.pauseStream) { - source.pause(); - } - return delayedStream; - }; - Object.defineProperty(DelayedStream.prototype, "readable", { - configurable: true, - enumerable: true, - get: function() { - return this.source.readable; - } - }); - DelayedStream.prototype.setEncoding = function() { - return this.source.setEncoding.apply(this.source, arguments); - }; - DelayedStream.prototype.resume = function() { - if (!this._released) { - this.release(); - } - this.source.resume(); - }; - DelayedStream.prototype.pause = function() { - this.source.pause(); - }; - DelayedStream.prototype.release = function() { - this._released = true; - this._bufferedEvents.forEach(function(args) { - this.emit.apply(this, args); - }.bind(this)); - this._bufferedEvents = []; - }; - DelayedStream.prototype.pipe = function() { - var r = Stream.prototype.pipe.apply(this, arguments); - this.resume(); - return r; - }; - DelayedStream.prototype._handleEmit = function(args) { - if (this._released) { - this.emit.apply(this, args); - return; - } - if (args[0] === "data") { - this.dataSize += args[1].length; - this._checkIfMaxDataSizeExceeded(); - } - this._bufferedEvents.push(args); - }; - DelayedStream.prototype._checkIfMaxDataSizeExceeded = function() { - if (this._maxDataSizeExceeded) { - return; - } - if (this.dataSize <= this.maxDataSize) { - return; - } - this._maxDataSizeExceeded = true; - var message = "DelayedStream#maxDataSize of " + this.maxDataSize + " bytes exceeded."; - this.emit("error", new Error(message)); - }; - } -}); - -// node_modules/combined-stream/lib/combined_stream.js -var require_combined_stream = __commonJS({ - "node_modules/combined-stream/lib/combined_stream.js"(exports2, module2) { - "use strict"; - var util2 = __nccwpck_require__(39023); - var Stream = (__nccwpck_require__(2203).Stream); - var DelayedStream = require_delayed_stream(); - module2.exports = CombinedStream; - function CombinedStream() { - this.writable = false; - this.readable = true; - this.dataSize = 0; - this.maxDataSize = 2 * 1024 * 1024; - this.pauseStreams = true; - this._released = false; - this._streams = []; - this._currentStream = null; - this._insideLoop = false; - this._pendingNext = false; - } - util2.inherits(CombinedStream, Stream); - CombinedStream.create = function(options) { - var combinedStream = new this(); - options = options || {}; - for (var option in options) { - combinedStream[option] = options[option]; - } - return combinedStream; - }; - CombinedStream.isStreamLike = function(stream4) { - return typeof stream4 !== "function" && typeof stream4 !== "string" && typeof stream4 !== "boolean" && typeof stream4 !== "number" && !Buffer.isBuffer(stream4); - }; - CombinedStream.prototype.append = function(stream4) { - var isStreamLike = CombinedStream.isStreamLike(stream4); - if (isStreamLike) { - if (!(stream4 instanceof DelayedStream)) { - var newStream = DelayedStream.create(stream4, { - maxDataSize: Infinity, - pauseStream: this.pauseStreams - }); - stream4.on("data", this._checkDataSize.bind(this)); - stream4 = newStream; - } - this._handleErrors(stream4); - if (this.pauseStreams) { - stream4.pause(); - } - } - this._streams.push(stream4); - return this; - }; - CombinedStream.prototype.pipe = function(dest, options) { - Stream.prototype.pipe.call(this, dest, options); - this.resume(); - return dest; - }; - CombinedStream.prototype._getNext = function() { - this._currentStream = null; - if (this._insideLoop) { - this._pendingNext = true; - return; - } - this._insideLoop = true; - try { - do { - this._pendingNext = false; - this._realGetNext(); - } while (this._pendingNext); - } finally { - this._insideLoop = false; - } - }; - CombinedStream.prototype._realGetNext = function() { - var stream4 = this._streams.shift(); - if (typeof stream4 == "undefined") { - this.end(); - return; - } - if (typeof stream4 !== "function") { - this._pipeNext(stream4); - return; - } - var getStream = stream4; - getStream(function(stream5) { - var isStreamLike = CombinedStream.isStreamLike(stream5); - if (isStreamLike) { - stream5.on("data", this._checkDataSize.bind(this)); - this._handleErrors(stream5); - } - this._pipeNext(stream5); - }.bind(this)); - }; - CombinedStream.prototype._pipeNext = function(stream4) { - this._currentStream = stream4; - var isStreamLike = CombinedStream.isStreamLike(stream4); - if (isStreamLike) { - stream4.on("end", this._getNext.bind(this)); - stream4.pipe(this, { end: false }); - return; - } - var value = stream4; - this.write(value); - this._getNext(); - }; - CombinedStream.prototype._handleErrors = function(stream4) { - var self2 = this; - stream4.on("error", function(err) { - self2._emitError(err); - }); - }; - CombinedStream.prototype.write = function(data) { - this.emit("data", data); - }; - CombinedStream.prototype.pause = function() { - if (!this.pauseStreams) { - return; - } - if (this.pauseStreams && this._currentStream && typeof this._currentStream.pause == "function") - this._currentStream.pause(); - this.emit("pause"); - }; - CombinedStream.prototype.resume = function() { - if (!this._released) { - this._released = true; - this.writable = true; - this._getNext(); - } - if (this.pauseStreams && this._currentStream && typeof this._currentStream.resume == "function") - this._currentStream.resume(); - this.emit("resume"); - }; - CombinedStream.prototype.end = function() { - this._reset(); - this.emit("end"); - }; - CombinedStream.prototype.destroy = function() { - this._reset(); - this.emit("close"); - }; - CombinedStream.prototype._reset = function() { - this.writable = false; - this._streams = []; - this._currentStream = null; - }; - CombinedStream.prototype._checkDataSize = function() { - this._updateDataSize(); - if (this.dataSize <= this.maxDataSize) { - return; - } - var message = "DelayedStream#maxDataSize of " + this.maxDataSize + " bytes exceeded."; - this._emitError(new Error(message)); - }; - CombinedStream.prototype._updateDataSize = function() { - this.dataSize = 0; - var self2 = this; - this._streams.forEach(function(stream4) { - if (!stream4.dataSize) { - return; - } - self2.dataSize += stream4.dataSize; - }); - if (this._currentStream && this._currentStream.dataSize) { - this.dataSize += this._currentStream.dataSize; - } - }; - CombinedStream.prototype._emitError = function(err) { - this._reset(); - this.emit("error", err); - }; - } -}); - -// node_modules/mime-db/db.json -var require_db = __commonJS({ - "node_modules/mime-db/db.json"(exports2, module2) { - module2.exports = { - "application/1d-interleaved-parityfec": { - source: "iana" - }, - "application/3gpdash-qoe-report+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/3gpp-ims+xml": { - source: "iana", - compressible: true - }, - "application/3gpphal+json": { - source: "iana", - compressible: true - }, - "application/3gpphalforms+json": { - source: "iana", - compressible: true - }, - "application/a2l": { - source: "iana" - }, - "application/ace+cbor": { - source: "iana" - }, - "application/activemessage": { - source: "iana" - }, - "application/activity+json": { - source: "iana", - compressible: true - }, - "application/alto-costmap+json": { - source: "iana", - compressible: true - }, - "application/alto-costmapfilter+json": { - source: "iana", - compressible: true - }, - "application/alto-directory+json": { - source: "iana", - compressible: true - }, - "application/alto-endpointcost+json": { - source: "iana", - compressible: true - }, - "application/alto-endpointcostparams+json": { - source: "iana", - compressible: true - }, - "application/alto-endpointprop+json": { - source: "iana", - compressible: true - }, - "application/alto-endpointpropparams+json": { - source: "iana", - compressible: true - }, - "application/alto-error+json": { - source: "iana", - compressible: true - }, - "application/alto-networkmap+json": { - source: "iana", - compressible: true - }, - "application/alto-networkmapfilter+json": { - source: "iana", - compressible: true - }, - "application/alto-updatestreamcontrol+json": { - source: "iana", - compressible: true - }, - "application/alto-updatestreamparams+json": { - source: "iana", - compressible: true - }, - "application/aml": { - source: "iana" - }, - "application/andrew-inset": { - source: "iana", - extensions: ["ez"] - }, - "application/applefile": { - source: "iana" - }, - "application/applixware": { - source: "apache", - extensions: ["aw"] - }, - "application/at+jwt": { - source: "iana" - }, - "application/atf": { - source: "iana" - }, - "application/atfx": { - source: "iana" - }, - "application/atom+xml": { - source: "iana", - compressible: true, - extensions: ["atom"] - }, - "application/atomcat+xml": { - source: "iana", - compressible: true, - extensions: ["atomcat"] - }, - "application/atomdeleted+xml": { - source: "iana", - compressible: true, - extensions: ["atomdeleted"] - }, - "application/atomicmail": { - source: "iana" - }, - "application/atomsvc+xml": { - source: "iana", - compressible: true, - extensions: ["atomsvc"] - }, - "application/atsc-dwd+xml": { - source: "iana", - compressible: true, - extensions: ["dwd"] - }, - "application/atsc-dynamic-event-message": { - source: "iana" - }, - "application/atsc-held+xml": { - source: "iana", - compressible: true, - extensions: ["held"] - }, - "application/atsc-rdt+json": { - source: "iana", - compressible: true - }, - "application/atsc-rsat+xml": { - source: "iana", - compressible: true, - extensions: ["rsat"] - }, - "application/atxml": { - source: "iana" - }, - "application/auth-policy+xml": { - source: "iana", - compressible: true - }, - "application/bacnet-xdd+zip": { - source: "iana", - compressible: false - }, - "application/batch-smtp": { - source: "iana" - }, - "application/bdoc": { - compressible: false, - extensions: ["bdoc"] - }, - "application/beep+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/calendar+json": { - source: "iana", - compressible: true - }, - "application/calendar+xml": { - source: "iana", - compressible: true, - extensions: ["xcs"] - }, - "application/call-completion": { - source: "iana" - }, - "application/cals-1840": { - source: "iana" - }, - "application/captive+json": { - source: "iana", - compressible: true - }, - "application/cbor": { - source: "iana" - }, - "application/cbor-seq": { - source: "iana" - }, - "application/cccex": { - source: "iana" - }, - "application/ccmp+xml": { - source: "iana", - compressible: true - }, - "application/ccxml+xml": { - source: "iana", - compressible: true, - extensions: ["ccxml"] - }, - "application/cdfx+xml": { - source: "iana", - compressible: true, - extensions: ["cdfx"] - }, - "application/cdmi-capability": { - source: "iana", - extensions: ["cdmia"] - }, - "application/cdmi-container": { - source: "iana", - extensions: ["cdmic"] - }, - "application/cdmi-domain": { - source: "iana", - extensions: ["cdmid"] - }, - "application/cdmi-object": { - source: "iana", - extensions: ["cdmio"] - }, - "application/cdmi-queue": { - source: "iana", - extensions: ["cdmiq"] - }, - "application/cdni": { - source: "iana" - }, - "application/cea": { - source: "iana" - }, - "application/cea-2018+xml": { - source: "iana", - compressible: true - }, - "application/cellml+xml": { - source: "iana", - compressible: true - }, - "application/cfw": { - source: "iana" - }, - "application/city+json": { - source: "iana", - compressible: true - }, - "application/clr": { - source: "iana" - }, - "application/clue+xml": { - source: "iana", - compressible: true - }, - "application/clue_info+xml": { - source: "iana", - compressible: true - }, - "application/cms": { - source: "iana" - }, - "application/cnrp+xml": { - source: "iana", - compressible: true - }, - "application/coap-group+json": { - source: "iana", - compressible: true - }, - "application/coap-payload": { - source: "iana" - }, - "application/commonground": { - source: "iana" - }, - "application/conference-info+xml": { - source: "iana", - compressible: true - }, - "application/cose": { - source: "iana" - }, - "application/cose-key": { - source: "iana" - }, - "application/cose-key-set": { - source: "iana" - }, - "application/cpl+xml": { - source: "iana", - compressible: true, - extensions: ["cpl"] - }, - "application/csrattrs": { - source: "iana" - }, - "application/csta+xml": { - source: "iana", - compressible: true - }, - "application/cstadata+xml": { - source: "iana", - compressible: true - }, - "application/csvm+json": { - source: "iana", - compressible: true - }, - "application/cu-seeme": { - source: "apache", - extensions: ["cu"] - }, - "application/cwt": { - source: "iana" - }, - "application/cybercash": { - source: "iana" - }, - "application/dart": { - compressible: true - }, - "application/dash+xml": { - source: "iana", - compressible: true, - extensions: ["mpd"] - }, - "application/dash-patch+xml": { - source: "iana", - compressible: true, - extensions: ["mpp"] - }, - "application/dashdelta": { - source: "iana" - }, - "application/davmount+xml": { - source: "iana", - compressible: true, - extensions: ["davmount"] - }, - "application/dca-rft": { - source: "iana" - }, - "application/dcd": { - source: "iana" - }, - "application/dec-dx": { - source: "iana" - }, - "application/dialog-info+xml": { - source: "iana", - compressible: true - }, - "application/dicom": { - source: "iana" - }, - "application/dicom+json": { - source: "iana", - compressible: true - }, - "application/dicom+xml": { - source: "iana", - compressible: true - }, - "application/dii": { - source: "iana" - }, - "application/dit": { - source: "iana" - }, - "application/dns": { - source: "iana" - }, - "application/dns+json": { - source: "iana", - compressible: true - }, - "application/dns-message": { - source: "iana" - }, - "application/docbook+xml": { - source: "apache", - compressible: true, - extensions: ["dbk"] - }, - "application/dots+cbor": { - source: "iana" - }, - "application/dskpp+xml": { - source: "iana", - compressible: true - }, - "application/dssc+der": { - source: "iana", - extensions: ["dssc"] - }, - "application/dssc+xml": { - source: "iana", - compressible: true, - extensions: ["xdssc"] - }, - "application/dvcs": { - source: "iana" - }, - "application/ecmascript": { - source: "iana", - compressible: true, - extensions: ["es", "ecma"] - }, - "application/edi-consent": { - source: "iana" - }, - "application/edi-x12": { - source: "iana", - compressible: false - }, - "application/edifact": { - source: "iana", - compressible: false - }, - "application/efi": { - source: "iana" - }, - "application/elm+json": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/elm+xml": { - source: "iana", - compressible: true - }, - "application/emergencycalldata.cap+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/emergencycalldata.comment+xml": { - source: "iana", - compressible: true - }, - "application/emergencycalldata.control+xml": { - source: "iana", - compressible: true - }, - "application/emergencycalldata.deviceinfo+xml": { - source: "iana", - compressible: true - }, - "application/emergencycalldata.ecall.msd": { - source: "iana" - }, - "application/emergencycalldata.providerinfo+xml": { - source: "iana", - compressible: true - }, - "application/emergencycalldata.serviceinfo+xml": { - source: "iana", - compressible: true - }, - "application/emergencycalldata.subscriberinfo+xml": { - source: "iana", - compressible: true - }, - "application/emergencycalldata.veds+xml": { - source: "iana", - compressible: true - }, - "application/emma+xml": { - source: "iana", - compressible: true, - extensions: ["emma"] - }, - "application/emotionml+xml": { - source: "iana", - compressible: true, - extensions: ["emotionml"] - }, - "application/encaprtp": { - source: "iana" - }, - "application/epp+xml": { - source: "iana", - compressible: true - }, - "application/epub+zip": { - source: "iana", - compressible: false, - extensions: ["epub"] - }, - "application/eshop": { - source: "iana" - }, - "application/exi": { - source: "iana", - extensions: ["exi"] - }, - "application/expect-ct-report+json": { - source: "iana", - compressible: true - }, - "application/express": { - source: "iana", - extensions: ["exp"] - }, - "application/fastinfoset": { - source: "iana" - }, - "application/fastsoap": { - source: "iana" - }, - "application/fdt+xml": { - source: "iana", - compressible: true, - extensions: ["fdt"] - }, - "application/fhir+json": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/fhir+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/fido.trusted-apps+json": { - compressible: true - }, - "application/fits": { - source: "iana" - }, - "application/flexfec": { - source: "iana" - }, - "application/font-sfnt": { - source: "iana" - }, - "application/font-tdpfr": { - source: "iana", - extensions: ["pfr"] - }, - "application/font-woff": { - source: "iana", - compressible: false - }, - "application/framework-attributes+xml": { - source: "iana", - compressible: true - }, - "application/geo+json": { - source: "iana", - compressible: true, - extensions: ["geojson"] - }, - "application/geo+json-seq": { - source: "iana" - }, - "application/geopackage+sqlite3": { - source: "iana" - }, - "application/geoxacml+xml": { - source: "iana", - compressible: true - }, - "application/gltf-buffer": { - source: "iana" - }, - "application/gml+xml": { - source: "iana", - compressible: true, - extensions: ["gml"] - }, - "application/gpx+xml": { - source: "apache", - compressible: true, - extensions: ["gpx"] - }, - "application/gxf": { - source: "apache", - extensions: ["gxf"] - }, - "application/gzip": { - source: "iana", - compressible: false, - extensions: ["gz"] - }, - "application/h224": { - source: "iana" - }, - "application/held+xml": { - source: "iana", - compressible: true - }, - "application/hjson": { - extensions: ["hjson"] - }, - "application/http": { - source: "iana" - }, - "application/hyperstudio": { - source: "iana", - extensions: ["stk"] - }, - "application/ibe-key-request+xml": { - source: "iana", - compressible: true - }, - "application/ibe-pkg-reply+xml": { - source: "iana", - compressible: true - }, - "application/ibe-pp-data": { - source: "iana" - }, - "application/iges": { - source: "iana" - }, - "application/im-iscomposing+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/index": { - source: "iana" - }, - "application/index.cmd": { - source: "iana" - }, - "application/index.obj": { - source: "iana" - }, - "application/index.response": { - source: "iana" - }, - "application/index.vnd": { - source: "iana" - }, - "application/inkml+xml": { - source: "iana", - compressible: true, - extensions: ["ink", "inkml"] - }, - "application/iotp": { - source: "iana" - }, - "application/ipfix": { - source: "iana", - extensions: ["ipfix"] - }, - "application/ipp": { - source: "iana" - }, - "application/isup": { - source: "iana" - }, - "application/its+xml": { - source: "iana", - compressible: true, - extensions: ["its"] - }, - "application/java-archive": { - source: "apache", - compressible: false, - extensions: ["jar", "war", "ear"] - }, - "application/java-serialized-object": { - source: "apache", - compressible: false, - extensions: ["ser"] - }, - "application/java-vm": { - source: "apache", - compressible: false, - extensions: ["class"] - }, - "application/javascript": { - source: "iana", - charset: "UTF-8", - compressible: true, - extensions: ["js", "mjs"] - }, - "application/jf2feed+json": { - source: "iana", - compressible: true - }, - "application/jose": { - source: "iana" - }, - "application/jose+json": { - source: "iana", - compressible: true - }, - "application/jrd+json": { - source: "iana", - compressible: true - }, - "application/jscalendar+json": { - source: "iana", - compressible: true - }, - "application/json": { - source: "iana", - charset: "UTF-8", - compressible: true, - extensions: ["json", "map"] - }, - "application/json-patch+json": { - source: "iana", - compressible: true - }, - "application/json-seq": { - source: "iana" - }, - "application/json5": { - extensions: ["json5"] - }, - "application/jsonml+json": { - source: "apache", - compressible: true, - extensions: ["jsonml"] - }, - "application/jwk+json": { - source: "iana", - compressible: true - }, - "application/jwk-set+json": { - source: "iana", - compressible: true - }, - "application/jwt": { - source: "iana" - }, - "application/kpml-request+xml": { - source: "iana", - compressible: true - }, - "application/kpml-response+xml": { - source: "iana", - compressible: true - }, - "application/ld+json": { - source: "iana", - compressible: true, - extensions: ["jsonld"] - }, - "application/lgr+xml": { - source: "iana", - compressible: true, - extensions: ["lgr"] - }, - "application/link-format": { - source: "iana" - }, - "application/load-control+xml": { - source: "iana", - compressible: true - }, - "application/lost+xml": { - source: "iana", - compressible: true, - extensions: ["lostxml"] - }, - "application/lostsync+xml": { - source: "iana", - compressible: true - }, - "application/lpf+zip": { - source: "iana", - compressible: false - }, - "application/lxf": { - source: "iana" - }, - "application/mac-binhex40": { - source: "iana", - extensions: ["hqx"] - }, - "application/mac-compactpro": { - source: "apache", - extensions: ["cpt"] - }, - "application/macwriteii": { - source: "iana" - }, - "application/mads+xml": { - source: "iana", - compressible: true, - extensions: ["mads"] - }, - "application/manifest+json": { - source: "iana", - charset: "UTF-8", - compressible: true, - extensions: ["webmanifest"] - }, - "application/marc": { - source: "iana", - extensions: ["mrc"] - }, - "application/marcxml+xml": { - source: "iana", - compressible: true, - extensions: ["mrcx"] - }, - "application/mathematica": { - source: "iana", - extensions: ["ma", "nb", "mb"] - }, - "application/mathml+xml": { - source: "iana", - compressible: true, - extensions: ["mathml"] - }, - "application/mathml-content+xml": { - source: "iana", - compressible: true - }, - "application/mathml-presentation+xml": { - source: "iana", - compressible: true - }, - "application/mbms-associated-procedure-description+xml": { - source: "iana", - compressible: true - }, - "application/mbms-deregister+xml": { - source: "iana", - compressible: true - }, - "application/mbms-envelope+xml": { - source: "iana", - compressible: true - }, - "application/mbms-msk+xml": { - source: "iana", - compressible: true - }, - "application/mbms-msk-response+xml": { - source: "iana", - compressible: true - }, - "application/mbms-protection-description+xml": { - source: "iana", - compressible: true - }, - "application/mbms-reception-report+xml": { - source: "iana", - compressible: true - }, - "application/mbms-register+xml": { - source: "iana", - compressible: true - }, - "application/mbms-register-response+xml": { - source: "iana", - compressible: true - }, - "application/mbms-schedule+xml": { - source: "iana", - compressible: true - }, - "application/mbms-user-service-description+xml": { - source: "iana", - compressible: true - }, - "application/mbox": { - source: "iana", - extensions: ["mbox"] - }, - "application/media-policy-dataset+xml": { - source: "iana", - compressible: true, - extensions: ["mpf"] - }, - "application/media_control+xml": { - source: "iana", - compressible: true - }, - "application/mediaservercontrol+xml": { - source: "iana", - compressible: true, - extensions: ["mscml"] - }, - "application/merge-patch+json": { - source: "iana", - compressible: true - }, - "application/metalink+xml": { - source: "apache", - compressible: true, - extensions: ["metalink"] - }, - "application/metalink4+xml": { - source: "iana", - compressible: true, - extensions: ["meta4"] - }, - "application/mets+xml": { - source: "iana", - compressible: true, - extensions: ["mets"] - }, - "application/mf4": { - source: "iana" - }, - "application/mikey": { - source: "iana" - }, - "application/mipc": { - source: "iana" - }, - "application/missing-blocks+cbor-seq": { - source: "iana" - }, - "application/mmt-aei+xml": { - source: "iana", - compressible: true, - extensions: ["maei"] - }, - "application/mmt-usd+xml": { - source: "iana", - compressible: true, - extensions: ["musd"] - }, - "application/mods+xml": { - source: "iana", - compressible: true, - extensions: ["mods"] - }, - "application/moss-keys": { - source: "iana" - }, - "application/moss-signature": { - source: "iana" - }, - "application/mosskey-data": { - source: "iana" - }, - "application/mosskey-request": { - source: "iana" - }, - "application/mp21": { - source: "iana", - extensions: ["m21", "mp21"] - }, - "application/mp4": { - source: "iana", - extensions: ["mp4s", "m4p"] - }, - "application/mpeg4-generic": { - source: "iana" - }, - "application/mpeg4-iod": { - source: "iana" - }, - "application/mpeg4-iod-xmt": { - source: "iana" - }, - "application/mrb-consumer+xml": { - source: "iana", - compressible: true - }, - "application/mrb-publish+xml": { - source: "iana", - compressible: true - }, - "application/msc-ivr+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/msc-mixer+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/msword": { - source: "iana", - compressible: false, - extensions: ["doc", "dot"] - }, - "application/mud+json": { - source: "iana", - compressible: true - }, - "application/multipart-core": { - source: "iana" - }, - "application/mxf": { - source: "iana", - extensions: ["mxf"] - }, - "application/n-quads": { - source: "iana", - extensions: ["nq"] - }, - "application/n-triples": { - source: "iana", - extensions: ["nt"] - }, - "application/nasdata": { - source: "iana" - }, - "application/news-checkgroups": { - source: "iana", - charset: "US-ASCII" - }, - "application/news-groupinfo": { - source: "iana", - charset: "US-ASCII" - }, - "application/news-transmission": { - source: "iana" - }, - "application/nlsml+xml": { - source: "iana", - compressible: true - }, - "application/node": { - source: "iana", - extensions: ["cjs"] - }, - "application/nss": { - source: "iana" - }, - "application/oauth-authz-req+jwt": { - source: "iana" - }, - "application/oblivious-dns-message": { - source: "iana" - }, - "application/ocsp-request": { - source: "iana" - }, - "application/ocsp-response": { - source: "iana" - }, - "application/octet-stream": { - source: "iana", - compressible: false, - extensions: ["bin", "dms", "lrf", "mar", "so", "dist", "distz", "pkg", "bpk", "dump", "elc", "deploy", "exe", "dll", "deb", "dmg", "iso", "img", "msi", "msp", "msm", "buffer"] - }, - "application/oda": { - source: "iana", - extensions: ["oda"] - }, - "application/odm+xml": { - source: "iana", - compressible: true - }, - "application/odx": { - source: "iana" - }, - "application/oebps-package+xml": { - source: "iana", - compressible: true, - extensions: ["opf"] - }, - "application/ogg": { - source: "iana", - compressible: false, - extensions: ["ogx"] - }, - "application/omdoc+xml": { - source: "apache", - compressible: true, - extensions: ["omdoc"] - }, - "application/onenote": { - source: "apache", - extensions: ["onetoc", "onetoc2", "onetmp", "onepkg"] - }, - "application/opc-nodeset+xml": { - source: "iana", - compressible: true - }, - "application/oscore": { - source: "iana" - }, - "application/oxps": { - source: "iana", - extensions: ["oxps"] - }, - "application/p21": { - source: "iana" - }, - "application/p21+zip": { - source: "iana", - compressible: false - }, - "application/p2p-overlay+xml": { - source: "iana", - compressible: true, - extensions: ["relo"] - }, - "application/parityfec": { - source: "iana" - }, - "application/passport": { - source: "iana" - }, - "application/patch-ops-error+xml": { - source: "iana", - compressible: true, - extensions: ["xer"] - }, - "application/pdf": { - source: "iana", - compressible: false, - extensions: ["pdf"] - }, - "application/pdx": { - source: "iana" - }, - "application/pem-certificate-chain": { - source: "iana" - }, - "application/pgp-encrypted": { - source: "iana", - compressible: false, - extensions: ["pgp"] - }, - "application/pgp-keys": { - source: "iana", - extensions: ["asc"] - }, - "application/pgp-signature": { - source: "iana", - extensions: ["asc", "sig"] - }, - "application/pics-rules": { - source: "apache", - extensions: ["prf"] - }, - "application/pidf+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/pidf-diff+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/pkcs10": { - source: "iana", - extensions: ["p10"] - }, - "application/pkcs12": { - source: "iana" - }, - "application/pkcs7-mime": { - source: "iana", - extensions: ["p7m", "p7c"] - }, - "application/pkcs7-signature": { - source: "iana", - extensions: ["p7s"] - }, - "application/pkcs8": { - source: "iana", - extensions: ["p8"] - }, - "application/pkcs8-encrypted": { - source: "iana" - }, - "application/pkix-attr-cert": { - source: "iana", - extensions: ["ac"] - }, - "application/pkix-cert": { - source: "iana", - extensions: ["cer"] - }, - "application/pkix-crl": { - source: "iana", - extensions: ["crl"] - }, - "application/pkix-pkipath": { - source: "iana", - extensions: ["pkipath"] - }, - "application/pkixcmp": { - source: "iana", - extensions: ["pki"] - }, - "application/pls+xml": { - source: "iana", - compressible: true, - extensions: ["pls"] - }, - "application/poc-settings+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/postscript": { - source: "iana", - compressible: true, - extensions: ["ai", "eps", "ps"] - }, - "application/ppsp-tracker+json": { - source: "iana", - compressible: true - }, - "application/problem+json": { - source: "iana", - compressible: true - }, - "application/problem+xml": { - source: "iana", - compressible: true - }, - "application/provenance+xml": { - source: "iana", - compressible: true, - extensions: ["provx"] - }, - "application/prs.alvestrand.titrax-sheet": { - source: "iana" - }, - "application/prs.cww": { - source: "iana", - extensions: ["cww"] - }, - "application/prs.cyn": { - source: "iana", - charset: "7-BIT" - }, - "application/prs.hpub+zip": { - source: "iana", - compressible: false - }, - "application/prs.nprend": { - source: "iana" - }, - "application/prs.plucker": { - source: "iana" - }, - "application/prs.rdf-xml-crypt": { - source: "iana" - }, - "application/prs.xsf+xml": { - source: "iana", - compressible: true - }, - "application/pskc+xml": { - source: "iana", - compressible: true, - extensions: ["pskcxml"] - }, - "application/pvd+json": { - source: "iana", - compressible: true - }, - "application/qsig": { - source: "iana" - }, - "application/raml+yaml": { - compressible: true, - extensions: ["raml"] - }, - "application/raptorfec": { - source: "iana" - }, - "application/rdap+json": { - source: "iana", - compressible: true - }, - "application/rdf+xml": { - source: "iana", - compressible: true, - extensions: ["rdf", "owl"] - }, - "application/reginfo+xml": { - source: "iana", - compressible: true, - extensions: ["rif"] - }, - "application/relax-ng-compact-syntax": { - source: "iana", - extensions: ["rnc"] - }, - "application/remote-printing": { - source: "iana" - }, - "application/reputon+json": { - source: "iana", - compressible: true - }, - "application/resource-lists+xml": { - source: "iana", - compressible: true, - extensions: ["rl"] - }, - "application/resource-lists-diff+xml": { - source: "iana", - compressible: true, - extensions: ["rld"] - }, - "application/rfc+xml": { - source: "iana", - compressible: true - }, - "application/riscos": { - source: "iana" - }, - "application/rlmi+xml": { - source: "iana", - compressible: true - }, - "application/rls-services+xml": { - source: "iana", - compressible: true, - extensions: ["rs"] - }, - "application/route-apd+xml": { - source: "iana", - compressible: true, - extensions: ["rapd"] - }, - "application/route-s-tsid+xml": { - source: "iana", - compressible: true, - extensions: ["sls"] - }, - "application/route-usd+xml": { - source: "iana", - compressible: true, - extensions: ["rusd"] - }, - "application/rpki-ghostbusters": { - source: "iana", - extensions: ["gbr"] - }, - "application/rpki-manifest": { - source: "iana", - extensions: ["mft"] - }, - "application/rpki-publication": { - source: "iana" - }, - "application/rpki-roa": { - source: "iana", - extensions: ["roa"] - }, - "application/rpki-updown": { - source: "iana" - }, - "application/rsd+xml": { - source: "apache", - compressible: true, - extensions: ["rsd"] - }, - "application/rss+xml": { - source: "apache", - compressible: true, - extensions: ["rss"] - }, - "application/rtf": { - source: "iana", - compressible: true, - extensions: ["rtf"] - }, - "application/rtploopback": { - source: "iana" - }, - "application/rtx": { - source: "iana" - }, - "application/samlassertion+xml": { - source: "iana", - compressible: true - }, - "application/samlmetadata+xml": { - source: "iana", - compressible: true - }, - "application/sarif+json": { - source: "iana", - compressible: true - }, - "application/sarif-external-properties+json": { - source: "iana", - compressible: true - }, - "application/sbe": { - source: "iana" - }, - "application/sbml+xml": { - source: "iana", - compressible: true, - extensions: ["sbml"] - }, - "application/scaip+xml": { - source: "iana", - compressible: true - }, - "application/scim+json": { - source: "iana", - compressible: true - }, - "application/scvp-cv-request": { - source: "iana", - extensions: ["scq"] - }, - "application/scvp-cv-response": { - source: "iana", - extensions: ["scs"] - }, - "application/scvp-vp-request": { - source: "iana", - extensions: ["spq"] - }, - "application/scvp-vp-response": { - source: "iana", - extensions: ["spp"] - }, - "application/sdp": { - source: "iana", - extensions: ["sdp"] - }, - "application/secevent+jwt": { - source: "iana" - }, - "application/senml+cbor": { - source: "iana" - }, - "application/senml+json": { - source: "iana", - compressible: true - }, - "application/senml+xml": { - source: "iana", - compressible: true, - extensions: ["senmlx"] - }, - "application/senml-etch+cbor": { - source: "iana" - }, - "application/senml-etch+json": { - source: "iana", - compressible: true - }, - "application/senml-exi": { - source: "iana" - }, - "application/sensml+cbor": { - source: "iana" - }, - "application/sensml+json": { - source: "iana", - compressible: true - }, - "application/sensml+xml": { - source: "iana", - compressible: true, - extensions: ["sensmlx"] - }, - "application/sensml-exi": { - source: "iana" - }, - "application/sep+xml": { - source: "iana", - compressible: true - }, - "application/sep-exi": { - source: "iana" - }, - "application/session-info": { - source: "iana" - }, - "application/set-payment": { - source: "iana" - }, - "application/set-payment-initiation": { - source: "iana", - extensions: ["setpay"] - }, - "application/set-registration": { - source: "iana" - }, - "application/set-registration-initiation": { - source: "iana", - extensions: ["setreg"] - }, - "application/sgml": { - source: "iana" - }, - "application/sgml-open-catalog": { - source: "iana" - }, - "application/shf+xml": { - source: "iana", - compressible: true, - extensions: ["shf"] - }, - "application/sieve": { - source: "iana", - extensions: ["siv", "sieve"] - }, - "application/simple-filter+xml": { - source: "iana", - compressible: true - }, - "application/simple-message-summary": { - source: "iana" - }, - "application/simplesymbolcontainer": { - source: "iana" - }, - "application/sipc": { - source: "iana" - }, - "application/slate": { - source: "iana" - }, - "application/smil": { - source: "iana" - }, - "application/smil+xml": { - source: "iana", - compressible: true, - extensions: ["smi", "smil"] - }, - "application/smpte336m": { - source: "iana" - }, - "application/soap+fastinfoset": { - source: "iana" - }, - "application/soap+xml": { - source: "iana", - compressible: true - }, - "application/sparql-query": { - source: "iana", - extensions: ["rq"] - }, - "application/sparql-results+xml": { - source: "iana", - compressible: true, - extensions: ["srx"] - }, - "application/spdx+json": { - source: "iana", - compressible: true - }, - "application/spirits-event+xml": { - source: "iana", - compressible: true - }, - "application/sql": { - source: "iana" - }, - "application/srgs": { - source: "iana", - extensions: ["gram"] - }, - "application/srgs+xml": { - source: "iana", - compressible: true, - extensions: ["grxml"] - }, - "application/sru+xml": { - source: "iana", - compressible: true, - extensions: ["sru"] - }, - "application/ssdl+xml": { - source: "apache", - compressible: true, - extensions: ["ssdl"] - }, - "application/ssml+xml": { - source: "iana", - compressible: true, - extensions: ["ssml"] - }, - "application/stix+json": { - source: "iana", - compressible: true - }, - "application/swid+xml": { - source: "iana", - compressible: true, - extensions: ["swidtag"] - }, - "application/tamp-apex-update": { - source: "iana" - }, - "application/tamp-apex-update-confirm": { - source: "iana" - }, - "application/tamp-community-update": { - source: "iana" - }, - "application/tamp-community-update-confirm": { - source: "iana" - }, - "application/tamp-error": { - source: "iana" - }, - "application/tamp-sequence-adjust": { - source: "iana" - }, - "application/tamp-sequence-adjust-confirm": { - source: "iana" - }, - "application/tamp-status-query": { - source: "iana" - }, - "application/tamp-status-response": { - source: "iana" - }, - "application/tamp-update": { - source: "iana" - }, - "application/tamp-update-confirm": { - source: "iana" - }, - "application/tar": { - compressible: true - }, - "application/taxii+json": { - source: "iana", - compressible: true - }, - "application/td+json": { - source: "iana", - compressible: true - }, - "application/tei+xml": { - source: "iana", - compressible: true, - extensions: ["tei", "teicorpus"] - }, - "application/tetra_isi": { - source: "iana" - }, - "application/thraud+xml": { - source: "iana", - compressible: true, - extensions: ["tfi"] - }, - "application/timestamp-query": { - source: "iana" - }, - "application/timestamp-reply": { - source: "iana" - }, - "application/timestamped-data": { - source: "iana", - extensions: ["tsd"] - }, - "application/tlsrpt+gzip": { - source: "iana" - }, - "application/tlsrpt+json": { - source: "iana", - compressible: true - }, - "application/tnauthlist": { - source: "iana" - }, - "application/token-introspection+jwt": { - source: "iana" - }, - "application/toml": { - compressible: true, - extensions: ["toml"] - }, - "application/trickle-ice-sdpfrag": { - source: "iana" - }, - "application/trig": { - source: "iana", - extensions: ["trig"] - }, - "application/ttml+xml": { - source: "iana", - compressible: true, - extensions: ["ttml"] - }, - "application/tve-trigger": { - source: "iana" - }, - "application/tzif": { - source: "iana" - }, - "application/tzif-leap": { - source: "iana" - }, - "application/ubjson": { - compressible: false, - extensions: ["ubj"] - }, - "application/ulpfec": { - source: "iana" - }, - "application/urc-grpsheet+xml": { - source: "iana", - compressible: true - }, - "application/urc-ressheet+xml": { - source: "iana", - compressible: true, - extensions: ["rsheet"] - }, - "application/urc-targetdesc+xml": { - source: "iana", - compressible: true, - extensions: ["td"] - }, - "application/urc-uisocketdesc+xml": { - source: "iana", - compressible: true - }, - "application/vcard+json": { - source: "iana", - compressible: true - }, - "application/vcard+xml": { - source: "iana", - compressible: true - }, - "application/vemmi": { - source: "iana" - }, - "application/vividence.scriptfile": { - source: "apache" - }, - "application/vnd.1000minds.decision-model+xml": { - source: "iana", - compressible: true, - extensions: ["1km"] - }, - "application/vnd.3gpp-prose+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp-prose-pc3ch+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp-v2x-local-service-information": { - source: "iana" - }, - "application/vnd.3gpp.5gnas": { - source: "iana" - }, - "application/vnd.3gpp.access-transfer-events+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.bsf+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.gmop+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.gtpc": { - source: "iana" - }, - "application/vnd.3gpp.interworking-data": { - source: "iana" - }, - "application/vnd.3gpp.lpp": { - source: "iana" - }, - "application/vnd.3gpp.mc-signalling-ear": { - source: "iana" - }, - "application/vnd.3gpp.mcdata-affiliation-command+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcdata-info+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcdata-payload": { - source: "iana" - }, - "application/vnd.3gpp.mcdata-service-config+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcdata-signalling": { - source: "iana" - }, - "application/vnd.3gpp.mcdata-ue-config+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcdata-user-profile+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcptt-affiliation-command+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcptt-floor-request+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcptt-info+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcptt-location-info+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcptt-mbms-usage-info+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcptt-service-config+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcptt-signed+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcptt-ue-config+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcptt-ue-init-config+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcptt-user-profile+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcvideo-affiliation-command+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcvideo-affiliation-info+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcvideo-info+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcvideo-location-info+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcvideo-mbms-usage-info+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcvideo-service-config+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcvideo-transmission-request+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcvideo-ue-config+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mcvideo-user-profile+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.mid-call+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.ngap": { - source: "iana" - }, - "application/vnd.3gpp.pfcp": { - source: "iana" - }, - "application/vnd.3gpp.pic-bw-large": { - source: "iana", - extensions: ["plb"] - }, - "application/vnd.3gpp.pic-bw-small": { - source: "iana", - extensions: ["psb"] - }, - "application/vnd.3gpp.pic-bw-var": { - source: "iana", - extensions: ["pvb"] - }, - "application/vnd.3gpp.s1ap": { - source: "iana" - }, - "application/vnd.3gpp.sms": { - source: "iana" - }, - "application/vnd.3gpp.sms+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.srvcc-ext+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.srvcc-info+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.state-and-event-info+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp.ussd+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp2.bcmcsinfo+xml": { - source: "iana", - compressible: true - }, - "application/vnd.3gpp2.sms": { - source: "iana" - }, - "application/vnd.3gpp2.tcap": { - source: "iana", - extensions: ["tcap"] - }, - "application/vnd.3lightssoftware.imagescal": { - source: "iana" - }, - "application/vnd.3m.post-it-notes": { - source: "iana", - extensions: ["pwn"] - }, - "application/vnd.accpac.simply.aso": { - source: "iana", - extensions: ["aso"] - }, - "application/vnd.accpac.simply.imp": { - source: "iana", - extensions: ["imp"] - }, - "application/vnd.acucobol": { - source: "iana", - extensions: ["acu"] - }, - "application/vnd.acucorp": { - source: "iana", - extensions: ["atc", "acutc"] - }, - "application/vnd.adobe.air-application-installer-package+zip": { - source: "apache", - compressible: false, - extensions: ["air"] - }, - "application/vnd.adobe.flash.movie": { - source: "iana" - }, - "application/vnd.adobe.formscentral.fcdt": { - source: "iana", - extensions: ["fcdt"] - }, - "application/vnd.adobe.fxp": { - source: "iana", - extensions: ["fxp", "fxpl"] - }, - "application/vnd.adobe.partial-upload": { - source: "iana" - }, - "application/vnd.adobe.xdp+xml": { - source: "iana", - compressible: true, - extensions: ["xdp"] - }, - "application/vnd.adobe.xfdf": { - source: "iana", - extensions: ["xfdf"] - }, - "application/vnd.aether.imp": { - source: "iana" - }, - "application/vnd.afpc.afplinedata": { - source: "iana" - }, - "application/vnd.afpc.afplinedata-pagedef": { - source: "iana" - }, - "application/vnd.afpc.cmoca-cmresource": { - source: "iana" - }, - "application/vnd.afpc.foca-charset": { - source: "iana" - }, - "application/vnd.afpc.foca-codedfont": { - source: "iana" - }, - "application/vnd.afpc.foca-codepage": { - source: "iana" - }, - "application/vnd.afpc.modca": { - source: "iana" - }, - "application/vnd.afpc.modca-cmtable": { - source: "iana" - }, - "application/vnd.afpc.modca-formdef": { - source: "iana" - }, - "application/vnd.afpc.modca-mediummap": { - source: "iana" - }, - "application/vnd.afpc.modca-objectcontainer": { - source: "iana" - }, - "application/vnd.afpc.modca-overlay": { - source: "iana" - }, - "application/vnd.afpc.modca-pagesegment": { - source: "iana" - }, - "application/vnd.age": { - source: "iana", - extensions: ["age"] - }, - "application/vnd.ah-barcode": { - source: "iana" - }, - "application/vnd.ahead.space": { - source: "iana", - extensions: ["ahead"] - }, - "application/vnd.airzip.filesecure.azf": { - source: "iana", - extensions: ["azf"] - }, - "application/vnd.airzip.filesecure.azs": { - source: "iana", - extensions: ["azs"] - }, - "application/vnd.amadeus+json": { - source: "iana", - compressible: true - }, - "application/vnd.amazon.ebook": { - source: "apache", - extensions: ["azw"] - }, - "application/vnd.amazon.mobi8-ebook": { - source: "iana" - }, - "application/vnd.americandynamics.acc": { - source: "iana", - extensions: ["acc"] - }, - "application/vnd.amiga.ami": { - source: "iana", - extensions: ["ami"] - }, - "application/vnd.amundsen.maze+xml": { - source: "iana", - compressible: true - }, - "application/vnd.android.ota": { - source: "iana" - }, - "application/vnd.android.package-archive": { - source: "apache", - compressible: false, - extensions: ["apk"] - }, - "application/vnd.anki": { - source: "iana" - }, - "application/vnd.anser-web-certificate-issue-initiation": { - source: "iana", - extensions: ["cii"] - }, - "application/vnd.anser-web-funds-transfer-initiation": { - source: "apache", - extensions: ["fti"] - }, - "application/vnd.antix.game-component": { - source: "iana", - extensions: ["atx"] - }, - "application/vnd.apache.arrow.file": { - source: "iana" - }, - "application/vnd.apache.arrow.stream": { - source: "iana" - }, - "application/vnd.apache.thrift.binary": { - source: "iana" - }, - "application/vnd.apache.thrift.compact": { - source: "iana" - }, - "application/vnd.apache.thrift.json": { - source: "iana" - }, - "application/vnd.api+json": { - source: "iana", - compressible: true - }, - "application/vnd.aplextor.warrp+json": { - source: "iana", - compressible: true - }, - "application/vnd.apothekende.reservation+json": { - source: "iana", - compressible: true - }, - "application/vnd.apple.installer+xml": { - source: "iana", - compressible: true, - extensions: ["mpkg"] - }, - "application/vnd.apple.keynote": { - source: "iana", - extensions: ["key"] - }, - "application/vnd.apple.mpegurl": { - source: "iana", - extensions: ["m3u8"] - }, - "application/vnd.apple.numbers": { - source: "iana", - extensions: ["numbers"] - }, - "application/vnd.apple.pages": { - source: "iana", - extensions: ["pages"] - }, - "application/vnd.apple.pkpass": { - compressible: false, - extensions: ["pkpass"] - }, - "application/vnd.arastra.swi": { - source: "iana" - }, - "application/vnd.aristanetworks.swi": { - source: "iana", - extensions: ["swi"] - }, - "application/vnd.artisan+json": { - source: "iana", - compressible: true - }, - "application/vnd.artsquare": { - source: "iana" - }, - "application/vnd.astraea-software.iota": { - source: "iana", - extensions: ["iota"] - }, - "application/vnd.audiograph": { - source: "iana", - extensions: ["aep"] - }, - "application/vnd.autopackage": { - source: "iana" - }, - "application/vnd.avalon+json": { - source: "iana", - compressible: true - }, - "application/vnd.avistar+xml": { - source: "iana", - compressible: true - }, - "application/vnd.balsamiq.bmml+xml": { - source: "iana", - compressible: true, - extensions: ["bmml"] - }, - "application/vnd.balsamiq.bmpr": { - source: "iana" - }, - "application/vnd.banana-accounting": { - source: "iana" - }, - "application/vnd.bbf.usp.error": { - source: "iana" - }, - "application/vnd.bbf.usp.msg": { - source: "iana" - }, - "application/vnd.bbf.usp.msg+json": { - source: "iana", - compressible: true - }, - "application/vnd.bekitzur-stech+json": { - source: "iana", - compressible: true - }, - "application/vnd.bint.med-content": { - source: "iana" - }, - "application/vnd.biopax.rdf+xml": { - source: "iana", - compressible: true - }, - "application/vnd.blink-idb-value-wrapper": { - source: "iana" - }, - "application/vnd.blueice.multipass": { - source: "iana", - extensions: ["mpm"] - }, - "application/vnd.bluetooth.ep.oob": { - source: "iana" - }, - "application/vnd.bluetooth.le.oob": { - source: "iana" - }, - "application/vnd.bmi": { - source: "iana", - extensions: ["bmi"] - }, - "application/vnd.bpf": { - source: "iana" - }, - "application/vnd.bpf3": { - source: "iana" - }, - "application/vnd.businessobjects": { - source: "iana", - extensions: ["rep"] - }, - "application/vnd.byu.uapi+json": { - source: "iana", - compressible: true - }, - "application/vnd.cab-jscript": { - source: "iana" - }, - "application/vnd.canon-cpdl": { - source: "iana" - }, - "application/vnd.canon-lips": { - source: "iana" - }, - "application/vnd.capasystems-pg+json": { - source: "iana", - compressible: true - }, - "application/vnd.cendio.thinlinc.clientconf": { - source: "iana" - }, - "application/vnd.century-systems.tcp_stream": { - source: "iana" - }, - "application/vnd.chemdraw+xml": { - source: "iana", - compressible: true, - extensions: ["cdxml"] - }, - "application/vnd.chess-pgn": { - source: "iana" - }, - "application/vnd.chipnuts.karaoke-mmd": { - source: "iana", - extensions: ["mmd"] - }, - "application/vnd.ciedi": { - source: "iana" - }, - "application/vnd.cinderella": { - source: "iana", - extensions: ["cdy"] - }, - "application/vnd.cirpack.isdn-ext": { - source: "iana" - }, - "application/vnd.citationstyles.style+xml": { - source: "iana", - compressible: true, - extensions: ["csl"] - }, - "application/vnd.claymore": { - source: "iana", - extensions: ["cla"] - }, - "application/vnd.cloanto.rp9": { - source: "iana", - extensions: ["rp9"] - }, - "application/vnd.clonk.c4group": { - source: "iana", - extensions: ["c4g", "c4d", "c4f", "c4p", "c4u"] - }, - "application/vnd.cluetrust.cartomobile-config": { - source: "iana", - extensions: ["c11amc"] - }, - "application/vnd.cluetrust.cartomobile-config-pkg": { - source: "iana", - extensions: ["c11amz"] - }, - "application/vnd.coffeescript": { - source: "iana" - }, - "application/vnd.collabio.xodocuments.document": { - source: "iana" - }, - "application/vnd.collabio.xodocuments.document-template": { - source: "iana" - }, - "application/vnd.collabio.xodocuments.presentation": { - source: "iana" - }, - "application/vnd.collabio.xodocuments.presentation-template": { - source: "iana" - }, - "application/vnd.collabio.xodocuments.spreadsheet": { - source: "iana" - }, - "application/vnd.collabio.xodocuments.spreadsheet-template": { - source: "iana" - }, - "application/vnd.collection+json": { - source: "iana", - compressible: true - }, - "application/vnd.collection.doc+json": { - source: "iana", - compressible: true - }, - "application/vnd.collection.next+json": { - source: "iana", - compressible: true - }, - "application/vnd.comicbook+zip": { - source: "iana", - compressible: false - }, - "application/vnd.comicbook-rar": { - source: "iana" - }, - "application/vnd.commerce-battelle": { - source: "iana" - }, - "application/vnd.commonspace": { - source: "iana", - extensions: ["csp"] - }, - "application/vnd.contact.cmsg": { - source: "iana", - extensions: ["cdbcmsg"] - }, - "application/vnd.coreos.ignition+json": { - source: "iana", - compressible: true - }, - "application/vnd.cosmocaller": { - source: "iana", - extensions: ["cmc"] - }, - "application/vnd.crick.clicker": { - source: "iana", - extensions: ["clkx"] - }, - "application/vnd.crick.clicker.keyboard": { - source: "iana", - extensions: ["clkk"] - }, - "application/vnd.crick.clicker.palette": { - source: "iana", - extensions: ["clkp"] - }, - "application/vnd.crick.clicker.template": { - source: "iana", - extensions: ["clkt"] - }, - "application/vnd.crick.clicker.wordbank": { - source: "iana", - extensions: ["clkw"] - }, - "application/vnd.criticaltools.wbs+xml": { - source: "iana", - compressible: true, - extensions: ["wbs"] - }, - "application/vnd.cryptii.pipe+json": { - source: "iana", - compressible: true - }, - "application/vnd.crypto-shade-file": { - source: "iana" - }, - "application/vnd.cryptomator.encrypted": { - source: "iana" - }, - "application/vnd.cryptomator.vault": { - source: "iana" - }, - "application/vnd.ctc-posml": { - source: "iana", - extensions: ["pml"] - }, - "application/vnd.ctct.ws+xml": { - source: "iana", - compressible: true - }, - "application/vnd.cups-pdf": { - source: "iana" - }, - "application/vnd.cups-postscript": { - source: "iana" - }, - "application/vnd.cups-ppd": { - source: "iana", - extensions: ["ppd"] - }, - "application/vnd.cups-raster": { - source: "iana" - }, - "application/vnd.cups-raw": { - source: "iana" - }, - "application/vnd.curl": { - source: "iana" - }, - "application/vnd.curl.car": { - source: "apache", - extensions: ["car"] - }, - "application/vnd.curl.pcurl": { - source: "apache", - extensions: ["pcurl"] - }, - "application/vnd.cyan.dean.root+xml": { - source: "iana", - compressible: true - }, - "application/vnd.cybank": { - source: "iana" - }, - "application/vnd.cyclonedx+json": { - source: "iana", - compressible: true - }, - "application/vnd.cyclonedx+xml": { - source: "iana", - compressible: true - }, - "application/vnd.d2l.coursepackage1p0+zip": { - source: "iana", - compressible: false - }, - "application/vnd.d3m-dataset": { - source: "iana" - }, - "application/vnd.d3m-problem": { - source: "iana" - }, - "application/vnd.dart": { - source: "iana", - compressible: true, - extensions: ["dart"] - }, - "application/vnd.data-vision.rdz": { - source: "iana", - extensions: ["rdz"] - }, - "application/vnd.datapackage+json": { - source: "iana", - compressible: true - }, - "application/vnd.dataresource+json": { - source: "iana", - compressible: true - }, - "application/vnd.dbf": { - source: "iana", - extensions: ["dbf"] - }, - "application/vnd.debian.binary-package": { - source: "iana" - }, - "application/vnd.dece.data": { - source: "iana", - extensions: ["uvf", "uvvf", "uvd", "uvvd"] - }, - "application/vnd.dece.ttml+xml": { - source: "iana", - compressible: true, - extensions: ["uvt", "uvvt"] - }, - "application/vnd.dece.unspecified": { - source: "iana", - extensions: ["uvx", "uvvx"] - }, - "application/vnd.dece.zip": { - source: "iana", - extensions: ["uvz", "uvvz"] - }, - "application/vnd.denovo.fcselayout-link": { - source: "iana", - extensions: ["fe_launch"] - }, - "application/vnd.desmume.movie": { - source: "iana" - }, - "application/vnd.dir-bi.plate-dl-nosuffix": { - source: "iana" - }, - "application/vnd.dm.delegation+xml": { - source: "iana", - compressible: true - }, - "application/vnd.dna": { - source: "iana", - extensions: ["dna"] - }, - "application/vnd.document+json": { - source: "iana", - compressible: true - }, - "application/vnd.dolby.mlp": { - source: "apache", - extensions: ["mlp"] - }, - "application/vnd.dolby.mobile.1": { - source: "iana" - }, - "application/vnd.dolby.mobile.2": { - source: "iana" - }, - "application/vnd.doremir.scorecloud-binary-document": { - source: "iana" - }, - "application/vnd.dpgraph": { - source: "iana", - extensions: ["dpg"] - }, - "application/vnd.dreamfactory": { - source: "iana", - extensions: ["dfac"] - }, - "application/vnd.drive+json": { - source: "iana", - compressible: true - }, - "application/vnd.ds-keypoint": { - source: "apache", - extensions: ["kpxx"] - }, - "application/vnd.dtg.local": { - source: "iana" - }, - "application/vnd.dtg.local.flash": { - source: "iana" - }, - "application/vnd.dtg.local.html": { - source: "iana" - }, - "application/vnd.dvb.ait": { - source: "iana", - extensions: ["ait"] - }, - "application/vnd.dvb.dvbisl+xml": { - source: "iana", - compressible: true - }, - "application/vnd.dvb.dvbj": { - source: "iana" - }, - "application/vnd.dvb.esgcontainer": { - source: "iana" - }, - "application/vnd.dvb.ipdcdftnotifaccess": { - source: "iana" - }, - "application/vnd.dvb.ipdcesgaccess": { - source: "iana" - }, - "application/vnd.dvb.ipdcesgaccess2": { - source: "iana" - }, - "application/vnd.dvb.ipdcesgpdd": { - source: "iana" - }, - "application/vnd.dvb.ipdcroaming": { - source: "iana" - }, - "application/vnd.dvb.iptv.alfec-base": { - source: "iana" - }, - "application/vnd.dvb.iptv.alfec-enhancement": { - source: "iana" - }, - "application/vnd.dvb.notif-aggregate-root+xml": { - source: "iana", - compressible: true - }, - "application/vnd.dvb.notif-container+xml": { - source: "iana", - compressible: true - }, - "application/vnd.dvb.notif-generic+xml": { - source: "iana", - compressible: true - }, - "application/vnd.dvb.notif-ia-msglist+xml": { - source: "iana", - compressible: true - }, - "application/vnd.dvb.notif-ia-registration-request+xml": { - source: "iana", - compressible: true - }, - "application/vnd.dvb.notif-ia-registration-response+xml": { - source: "iana", - compressible: true - }, - "application/vnd.dvb.notif-init+xml": { - source: "iana", - compressible: true - }, - "application/vnd.dvb.pfr": { - source: "iana" - }, - "application/vnd.dvb.service": { - source: "iana", - extensions: ["svc"] - }, - "application/vnd.dxr": { - source: "iana" - }, - "application/vnd.dynageo": { - source: "iana", - extensions: ["geo"] - }, - "application/vnd.dzr": { - source: "iana" - }, - "application/vnd.easykaraoke.cdgdownload": { - source: "iana" - }, - "application/vnd.ecdis-update": { - source: "iana" - }, - "application/vnd.ecip.rlp": { - source: "iana" - }, - "application/vnd.eclipse.ditto+json": { - source: "iana", - compressible: true - }, - "application/vnd.ecowin.chart": { - source: "iana", - extensions: ["mag"] - }, - "application/vnd.ecowin.filerequest": { - source: "iana" - }, - "application/vnd.ecowin.fileupdate": { - source: "iana" - }, - "application/vnd.ecowin.series": { - source: "iana" - }, - "application/vnd.ecowin.seriesrequest": { - source: "iana" - }, - "application/vnd.ecowin.seriesupdate": { - source: "iana" - }, - "application/vnd.efi.img": { - source: "iana" - }, - "application/vnd.efi.iso": { - source: "iana" - }, - "application/vnd.emclient.accessrequest+xml": { - source: "iana", - compressible: true - }, - "application/vnd.enliven": { - source: "iana", - extensions: ["nml"] - }, - "application/vnd.enphase.envoy": { - source: "iana" - }, - "application/vnd.eprints.data+xml": { - source: "iana", - compressible: true - }, - "application/vnd.epson.esf": { - source: "iana", - extensions: ["esf"] - }, - "application/vnd.epson.msf": { - source: "iana", - extensions: ["msf"] - }, - "application/vnd.epson.quickanime": { - source: "iana", - extensions: ["qam"] - }, - "application/vnd.epson.salt": { - source: "iana", - extensions: ["slt"] - }, - "application/vnd.epson.ssf": { - source: "iana", - extensions: ["ssf"] - }, - "application/vnd.ericsson.quickcall": { - source: "iana" - }, - "application/vnd.espass-espass+zip": { - source: "iana", - compressible: false - }, - "application/vnd.eszigno3+xml": { - source: "iana", - compressible: true, - extensions: ["es3", "et3"] - }, - "application/vnd.etsi.aoc+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.asic-e+zip": { - source: "iana", - compressible: false - }, - "application/vnd.etsi.asic-s+zip": { - source: "iana", - compressible: false - }, - "application/vnd.etsi.cug+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.iptvcommand+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.iptvdiscovery+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.iptvprofile+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.iptvsad-bc+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.iptvsad-cod+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.iptvsad-npvr+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.iptvservice+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.iptvsync+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.iptvueprofile+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.mcid+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.mheg5": { - source: "iana" - }, - "application/vnd.etsi.overload-control-policy-dataset+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.pstn+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.sci+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.simservs+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.timestamp-token": { - source: "iana" - }, - "application/vnd.etsi.tsl+xml": { - source: "iana", - compressible: true - }, - "application/vnd.etsi.tsl.der": { - source: "iana" - }, - "application/vnd.eu.kasparian.car+json": { - source: "iana", - compressible: true - }, - "application/vnd.eudora.data": { - source: "iana" - }, - "application/vnd.evolv.ecig.profile": { - source: "iana" - }, - "application/vnd.evolv.ecig.settings": { - source: "iana" - }, - "application/vnd.evolv.ecig.theme": { - source: "iana" - }, - "application/vnd.exstream-empower+zip": { - source: "iana", - compressible: false - }, - "application/vnd.exstream-package": { - source: "iana" - }, - "application/vnd.ezpix-album": { - source: "iana", - extensions: ["ez2"] - }, - "application/vnd.ezpix-package": { - source: "iana", - extensions: ["ez3"] - }, - "application/vnd.f-secure.mobile": { - source: "iana" - }, - "application/vnd.familysearch.gedcom+zip": { - source: "iana", - compressible: false - }, - "application/vnd.fastcopy-disk-image": { - source: "iana" - }, - "application/vnd.fdf": { - source: "iana", - extensions: ["fdf"] - }, - "application/vnd.fdsn.mseed": { - source: "iana", - extensions: ["mseed"] - }, - "application/vnd.fdsn.seed": { - source: "iana", - extensions: ["seed", "dataless"] - }, - "application/vnd.ffsns": { - source: "iana" - }, - "application/vnd.ficlab.flb+zip": { - source: "iana", - compressible: false - }, - "application/vnd.filmit.zfc": { - source: "iana" - }, - "application/vnd.fints": { - source: "iana" - }, - "application/vnd.firemonkeys.cloudcell": { - source: "iana" - }, - "application/vnd.flographit": { - source: "iana", - extensions: ["gph"] - }, - "application/vnd.fluxtime.clip": { - source: "iana", - extensions: ["ftc"] - }, - "application/vnd.font-fontforge-sfd": { - source: "iana" - }, - "application/vnd.framemaker": { - source: "iana", - extensions: ["fm", "frame", "maker", "book"] - }, - "application/vnd.frogans.fnc": { - source: "iana", - extensions: ["fnc"] - }, - "application/vnd.frogans.ltf": { - source: "iana", - extensions: ["ltf"] - }, - "application/vnd.fsc.weblaunch": { - source: "iana", - extensions: ["fsc"] - }, - "application/vnd.fujifilm.fb.docuworks": { - source: "iana" - }, - "application/vnd.fujifilm.fb.docuworks.binder": { - source: "iana" - }, - "application/vnd.fujifilm.fb.docuworks.container": { - source: "iana" - }, - "application/vnd.fujifilm.fb.jfi+xml": { - source: "iana", - compressible: true - }, - "application/vnd.fujitsu.oasys": { - source: "iana", - extensions: ["oas"] - }, - "application/vnd.fujitsu.oasys2": { - source: "iana", - extensions: ["oa2"] - }, - "application/vnd.fujitsu.oasys3": { - source: "iana", - extensions: ["oa3"] - }, - "application/vnd.fujitsu.oasysgp": { - source: "iana", - extensions: ["fg5"] - }, - "application/vnd.fujitsu.oasysprs": { - source: "iana", - extensions: ["bh2"] - }, - "application/vnd.fujixerox.art-ex": { - source: "iana" - }, - "application/vnd.fujixerox.art4": { - source: "iana" - }, - "application/vnd.fujixerox.ddd": { - source: "iana", - extensions: ["ddd"] - }, - "application/vnd.fujixerox.docuworks": { - source: "iana", - extensions: ["xdw"] - }, - "application/vnd.fujixerox.docuworks.binder": { - source: "iana", - extensions: ["xbd"] - }, - "application/vnd.fujixerox.docuworks.container": { - source: "iana" - }, - "application/vnd.fujixerox.hbpl": { - source: "iana" - }, - "application/vnd.fut-misnet": { - source: "iana" - }, - "application/vnd.futoin+cbor": { - source: "iana" - }, - "application/vnd.futoin+json": { - source: "iana", - compressible: true - }, - "application/vnd.fuzzysheet": { - source: "iana", - extensions: ["fzs"] - }, - "application/vnd.genomatix.tuxedo": { - source: "iana", - extensions: ["txd"] - }, - "application/vnd.gentics.grd+json": { - source: "iana", - compressible: true - }, - "application/vnd.geo+json": { - source: "iana", - compressible: true - }, - "application/vnd.geocube+xml": { - source: "iana", - compressible: true - }, - "application/vnd.geogebra.file": { - source: "iana", - extensions: ["ggb"] - }, - "application/vnd.geogebra.slides": { - source: "iana" - }, - "application/vnd.geogebra.tool": { - source: "iana", - extensions: ["ggt"] - }, - "application/vnd.geometry-explorer": { - source: "iana", - extensions: ["gex", "gre"] - }, - "application/vnd.geonext": { - source: "iana", - extensions: ["gxt"] - }, - "application/vnd.geoplan": { - source: "iana", - extensions: ["g2w"] - }, - "application/vnd.geospace": { - source: "iana", - extensions: ["g3w"] - }, - "application/vnd.gerber": { - source: "iana" - }, - "application/vnd.globalplatform.card-content-mgt": { - source: "iana" - }, - "application/vnd.globalplatform.card-content-mgt-response": { - source: "iana" - }, - "application/vnd.gmx": { - source: "iana", - extensions: ["gmx"] - }, - "application/vnd.google-apps.document": { - compressible: false, - extensions: ["gdoc"] - }, - "application/vnd.google-apps.presentation": { - compressible: false, - extensions: ["gslides"] - }, - "application/vnd.google-apps.spreadsheet": { - compressible: false, - extensions: ["gsheet"] - }, - "application/vnd.google-earth.kml+xml": { - source: "iana", - compressible: true, - extensions: ["kml"] - }, - "application/vnd.google-earth.kmz": { - source: "iana", - compressible: false, - extensions: ["kmz"] - }, - "application/vnd.gov.sk.e-form+xml": { - source: "iana", - compressible: true - }, - "application/vnd.gov.sk.e-form+zip": { - source: "iana", - compressible: false - }, - "application/vnd.gov.sk.xmldatacontainer+xml": { - source: "iana", - compressible: true - }, - "application/vnd.grafeq": { - source: "iana", - extensions: ["gqf", "gqs"] - }, - "application/vnd.gridmp": { - source: "iana" - }, - "application/vnd.groove-account": { - source: "iana", - extensions: ["gac"] - }, - "application/vnd.groove-help": { - source: "iana", - extensions: ["ghf"] - }, - "application/vnd.groove-identity-message": { - source: "iana", - extensions: ["gim"] - }, - "application/vnd.groove-injector": { - source: "iana", - extensions: ["grv"] - }, - "application/vnd.groove-tool-message": { - source: "iana", - extensions: ["gtm"] - }, - "application/vnd.groove-tool-template": { - source: "iana", - extensions: ["tpl"] - }, - "application/vnd.groove-vcard": { - source: "iana", - extensions: ["vcg"] - }, - "application/vnd.hal+json": { - source: "iana", - compressible: true - }, - "application/vnd.hal+xml": { - source: "iana", - compressible: true, - extensions: ["hal"] - }, - "application/vnd.handheld-entertainment+xml": { - source: "iana", - compressible: true, - extensions: ["zmm"] - }, - "application/vnd.hbci": { - source: "iana", - extensions: ["hbci"] - }, - "application/vnd.hc+json": { - source: "iana", - compressible: true - }, - "application/vnd.hcl-bireports": { - source: "iana" - }, - "application/vnd.hdt": { - source: "iana" - }, - "application/vnd.heroku+json": { - source: "iana", - compressible: true - }, - "application/vnd.hhe.lesson-player": { - source: "iana", - extensions: ["les"] - }, - "application/vnd.hl7cda+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/vnd.hl7v2+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/vnd.hp-hpgl": { - source: "iana", - extensions: ["hpgl"] - }, - "application/vnd.hp-hpid": { - source: "iana", - extensions: ["hpid"] - }, - "application/vnd.hp-hps": { - source: "iana", - extensions: ["hps"] - }, - "application/vnd.hp-jlyt": { - source: "iana", - extensions: ["jlt"] - }, - "application/vnd.hp-pcl": { - source: "iana", - extensions: ["pcl"] - }, - "application/vnd.hp-pclxl": { - source: "iana", - extensions: ["pclxl"] - }, - "application/vnd.httphone": { - source: "iana" - }, - "application/vnd.hydrostatix.sof-data": { - source: "iana", - extensions: ["sfd-hdstx"] - }, - "application/vnd.hyper+json": { - source: "iana", - compressible: true - }, - "application/vnd.hyper-item+json": { - source: "iana", - compressible: true - }, - "application/vnd.hyperdrive+json": { - source: "iana", - compressible: true - }, - "application/vnd.hzn-3d-crossword": { - source: "iana" - }, - "application/vnd.ibm.afplinedata": { - source: "iana" - }, - "application/vnd.ibm.electronic-media": { - source: "iana" - }, - "application/vnd.ibm.minipay": { - source: "iana", - extensions: ["mpy"] - }, - "application/vnd.ibm.modcap": { - source: "iana", - extensions: ["afp", "listafp", "list3820"] - }, - "application/vnd.ibm.rights-management": { - source: "iana", - extensions: ["irm"] - }, - "application/vnd.ibm.secure-container": { - source: "iana", - extensions: ["sc"] - }, - "application/vnd.iccprofile": { - source: "iana", - extensions: ["icc", "icm"] - }, - "application/vnd.ieee.1905": { - source: "iana" - }, - "application/vnd.igloader": { - source: "iana", - extensions: ["igl"] - }, - "application/vnd.imagemeter.folder+zip": { - source: "iana", - compressible: false - }, - "application/vnd.imagemeter.image+zip": { - source: "iana", - compressible: false - }, - "application/vnd.immervision-ivp": { - source: "iana", - extensions: ["ivp"] - }, - "application/vnd.immervision-ivu": { - source: "iana", - extensions: ["ivu"] - }, - "application/vnd.ims.imsccv1p1": { - source: "iana" - }, - "application/vnd.ims.imsccv1p2": { - source: "iana" - }, - "application/vnd.ims.imsccv1p3": { - source: "iana" - }, - "application/vnd.ims.lis.v2.result+json": { - source: "iana", - compressible: true - }, - "application/vnd.ims.lti.v2.toolconsumerprofile+json": { - source: "iana", - compressible: true - }, - "application/vnd.ims.lti.v2.toolproxy+json": { - source: "iana", - compressible: true - }, - "application/vnd.ims.lti.v2.toolproxy.id+json": { - source: "iana", - compressible: true - }, - "application/vnd.ims.lti.v2.toolsettings+json": { - source: "iana", - compressible: true - }, - "application/vnd.ims.lti.v2.toolsettings.simple+json": { - source: "iana", - compressible: true - }, - "application/vnd.informedcontrol.rms+xml": { - source: "iana", - compressible: true - }, - "application/vnd.informix-visionary": { - source: "iana" - }, - "application/vnd.infotech.project": { - source: "iana" - }, - "application/vnd.infotech.project+xml": { - source: "iana", - compressible: true - }, - "application/vnd.innopath.wamp.notification": { - source: "iana" - }, - "application/vnd.insors.igm": { - source: "iana", - extensions: ["igm"] - }, - "application/vnd.intercon.formnet": { - source: "iana", - extensions: ["xpw", "xpx"] - }, - "application/vnd.intergeo": { - source: "iana", - extensions: ["i2g"] - }, - "application/vnd.intertrust.digibox": { - source: "iana" - }, - "application/vnd.intertrust.nncp": { - source: "iana" - }, - "application/vnd.intu.qbo": { - source: "iana", - extensions: ["qbo"] - }, - "application/vnd.intu.qfx": { - source: "iana", - extensions: ["qfx"] - }, - "application/vnd.iptc.g2.catalogitem+xml": { - source: "iana", - compressible: true - }, - "application/vnd.iptc.g2.conceptitem+xml": { - source: "iana", - compressible: true - }, - "application/vnd.iptc.g2.knowledgeitem+xml": { - source: "iana", - compressible: true - }, - "application/vnd.iptc.g2.newsitem+xml": { - source: "iana", - compressible: true - }, - "application/vnd.iptc.g2.newsmessage+xml": { - source: "iana", - compressible: true - }, - "application/vnd.iptc.g2.packageitem+xml": { - source: "iana", - compressible: true - }, - "application/vnd.iptc.g2.planningitem+xml": { - source: "iana", - compressible: true - }, - "application/vnd.ipunplugged.rcprofile": { - source: "iana", - extensions: ["rcprofile"] - }, - "application/vnd.irepository.package+xml": { - source: "iana", - compressible: true, - extensions: ["irp"] - }, - "application/vnd.is-xpr": { - source: "iana", - extensions: ["xpr"] - }, - "application/vnd.isac.fcs": { - source: "iana", - extensions: ["fcs"] - }, - "application/vnd.iso11783-10+zip": { - source: "iana", - compressible: false - }, - "application/vnd.jam": { - source: "iana", - extensions: ["jam"] - }, - "application/vnd.japannet-directory-service": { - source: "iana" - }, - "application/vnd.japannet-jpnstore-wakeup": { - source: "iana" - }, - "application/vnd.japannet-payment-wakeup": { - source: "iana" - }, - "application/vnd.japannet-registration": { - source: "iana" - }, - "application/vnd.japannet-registration-wakeup": { - source: "iana" - }, - "application/vnd.japannet-setstore-wakeup": { - source: "iana" - }, - "application/vnd.japannet-verification": { - source: "iana" - }, - "application/vnd.japannet-verification-wakeup": { - source: "iana" - }, - "application/vnd.jcp.javame.midlet-rms": { - source: "iana", - extensions: ["rms"] - }, - "application/vnd.jisp": { - source: "iana", - extensions: ["jisp"] - }, - "application/vnd.joost.joda-archive": { - source: "iana", - extensions: ["joda"] - }, - "application/vnd.jsk.isdn-ngn": { - source: "iana" - }, - "application/vnd.kahootz": { - source: "iana", - extensions: ["ktz", "ktr"] - }, - "application/vnd.kde.karbon": { - source: "iana", - extensions: ["karbon"] - }, - "application/vnd.kde.kchart": { - source: "iana", - extensions: ["chrt"] - }, - "application/vnd.kde.kformula": { - source: "iana", - extensions: ["kfo"] - }, - "application/vnd.kde.kivio": { - source: "iana", - extensions: ["flw"] - }, - "application/vnd.kde.kontour": { - source: "iana", - extensions: ["kon"] - }, - "application/vnd.kde.kpresenter": { - source: "iana", - extensions: ["kpr", "kpt"] - }, - "application/vnd.kde.kspread": { - source: "iana", - extensions: ["ksp"] - }, - "application/vnd.kde.kword": { - source: "iana", - extensions: ["kwd", "kwt"] - }, - "application/vnd.kenameaapp": { - source: "iana", - extensions: ["htke"] - }, - "application/vnd.kidspiration": { - source: "iana", - extensions: ["kia"] - }, - "application/vnd.kinar": { - source: "iana", - extensions: ["kne", "knp"] - }, - "application/vnd.koan": { - source: "iana", - extensions: ["skp", "skd", "skt", "skm"] - }, - "application/vnd.kodak-descriptor": { - source: "iana", - extensions: ["sse"] - }, - "application/vnd.las": { - source: "iana" - }, - "application/vnd.las.las+json": { - source: "iana", - compressible: true - }, - "application/vnd.las.las+xml": { - source: "iana", - compressible: true, - extensions: ["lasxml"] - }, - "application/vnd.laszip": { - source: "iana" - }, - "application/vnd.leap+json": { - source: "iana", - compressible: true - }, - "application/vnd.liberty-request+xml": { - source: "iana", - compressible: true - }, - "application/vnd.llamagraphics.life-balance.desktop": { - source: "iana", - extensions: ["lbd"] - }, - "application/vnd.llamagraphics.life-balance.exchange+xml": { - source: "iana", - compressible: true, - extensions: ["lbe"] - }, - "application/vnd.logipipe.circuit+zip": { - source: "iana", - compressible: false - }, - "application/vnd.loom": { - source: "iana" - }, - "application/vnd.lotus-1-2-3": { - source: "iana", - extensions: ["123"] - }, - "application/vnd.lotus-approach": { - source: "iana", - extensions: ["apr"] - }, - "application/vnd.lotus-freelance": { - source: "iana", - extensions: ["pre"] - }, - "application/vnd.lotus-notes": { - source: "iana", - extensions: ["nsf"] - }, - "application/vnd.lotus-organizer": { - source: "iana", - extensions: ["org"] - }, - "application/vnd.lotus-screencam": { - source: "iana", - extensions: ["scm"] - }, - "application/vnd.lotus-wordpro": { - source: "iana", - extensions: ["lwp"] - }, - "application/vnd.macports.portpkg": { - source: "iana", - extensions: ["portpkg"] - }, - "application/vnd.mapbox-vector-tile": { - source: "iana", - extensions: ["mvt"] - }, - "application/vnd.marlin.drm.actiontoken+xml": { - source: "iana", - compressible: true - }, - "application/vnd.marlin.drm.conftoken+xml": { - source: "iana", - compressible: true - }, - "application/vnd.marlin.drm.license+xml": { - source: "iana", - compressible: true - }, - "application/vnd.marlin.drm.mdcf": { - source: "iana" - }, - "application/vnd.mason+json": { - source: "iana", - compressible: true - }, - "application/vnd.maxar.archive.3tz+zip": { - source: "iana", - compressible: false - }, - "application/vnd.maxmind.maxmind-db": { - source: "iana" - }, - "application/vnd.mcd": { - source: "iana", - extensions: ["mcd"] - }, - "application/vnd.medcalcdata": { - source: "iana", - extensions: ["mc1"] - }, - "application/vnd.mediastation.cdkey": { - source: "iana", - extensions: ["cdkey"] - }, - "application/vnd.meridian-slingshot": { - source: "iana" - }, - "application/vnd.mfer": { - source: "iana", - extensions: ["mwf"] - }, - "application/vnd.mfmp": { - source: "iana", - extensions: ["mfm"] - }, - "application/vnd.micro+json": { - source: "iana", - compressible: true - }, - "application/vnd.micrografx.flo": { - source: "iana", - extensions: ["flo"] - }, - "application/vnd.micrografx.igx": { - source: "iana", - extensions: ["igx"] - }, - "application/vnd.microsoft.portable-executable": { - source: "iana" - }, - "application/vnd.microsoft.windows.thumbnail-cache": { - source: "iana" - }, - "application/vnd.miele+json": { - source: "iana", - compressible: true - }, - "application/vnd.mif": { - source: "iana", - extensions: ["mif"] - }, - "application/vnd.minisoft-hp3000-save": { - source: "iana" - }, - "application/vnd.mitsubishi.misty-guard.trustweb": { - source: "iana" - }, - "application/vnd.mobius.daf": { - source: "iana", - extensions: ["daf"] - }, - "application/vnd.mobius.dis": { - source: "iana", - extensions: ["dis"] - }, - "application/vnd.mobius.mbk": { - source: "iana", - extensions: ["mbk"] - }, - "application/vnd.mobius.mqy": { - source: "iana", - extensions: ["mqy"] - }, - "application/vnd.mobius.msl": { - source: "iana", - extensions: ["msl"] - }, - "application/vnd.mobius.plc": { - source: "iana", - extensions: ["plc"] - }, - "application/vnd.mobius.txf": { - source: "iana", - extensions: ["txf"] - }, - "application/vnd.mophun.application": { - source: "iana", - extensions: ["mpn"] - }, - "application/vnd.mophun.certificate": { - source: "iana", - extensions: ["mpc"] - }, - "application/vnd.motorola.flexsuite": { - source: "iana" - }, - "application/vnd.motorola.flexsuite.adsi": { - source: "iana" - }, - "application/vnd.motorola.flexsuite.fis": { - source: "iana" - }, - "application/vnd.motorola.flexsuite.gotap": { - source: "iana" - }, - "application/vnd.motorola.flexsuite.kmr": { - source: "iana" - }, - "application/vnd.motorola.flexsuite.ttc": { - source: "iana" - }, - "application/vnd.motorola.flexsuite.wem": { - source: "iana" - }, - "application/vnd.motorola.iprm": { - source: "iana" - }, - "application/vnd.mozilla.xul+xml": { - source: "iana", - compressible: true, - extensions: ["xul"] - }, - "application/vnd.ms-3mfdocument": { - source: "iana" - }, - "application/vnd.ms-artgalry": { - source: "iana", - extensions: ["cil"] - }, - "application/vnd.ms-asf": { - source: "iana" - }, - "application/vnd.ms-cab-compressed": { - source: "iana", - extensions: ["cab"] - }, - "application/vnd.ms-color.iccprofile": { - source: "apache" - }, - "application/vnd.ms-excel": { - source: "iana", - compressible: false, - extensions: ["xls", "xlm", "xla", "xlc", "xlt", "xlw"] - }, - "application/vnd.ms-excel.addin.macroenabled.12": { - source: "iana", - extensions: ["xlam"] - }, - "application/vnd.ms-excel.sheet.binary.macroenabled.12": { - source: "iana", - extensions: ["xlsb"] - }, - "application/vnd.ms-excel.sheet.macroenabled.12": { - source: "iana", - extensions: ["xlsm"] - }, - "application/vnd.ms-excel.template.macroenabled.12": { - source: "iana", - extensions: ["xltm"] - }, - "application/vnd.ms-fontobject": { - source: "iana", - compressible: true, - extensions: ["eot"] - }, - "application/vnd.ms-htmlhelp": { - source: "iana", - extensions: ["chm"] - }, - "application/vnd.ms-ims": { - source: "iana", - extensions: ["ims"] - }, - "application/vnd.ms-lrm": { - source: "iana", - extensions: ["lrm"] - }, - "application/vnd.ms-office.activex+xml": { - source: "iana", - compressible: true - }, - "application/vnd.ms-officetheme": { - source: "iana", - extensions: ["thmx"] - }, - "application/vnd.ms-opentype": { - source: "apache", - compressible: true - }, - "application/vnd.ms-outlook": { - compressible: false, - extensions: ["msg"] - }, - "application/vnd.ms-package.obfuscated-opentype": { - source: "apache" - }, - "application/vnd.ms-pki.seccat": { - source: "apache", - extensions: ["cat"] - }, - "application/vnd.ms-pki.stl": { - source: "apache", - extensions: ["stl"] - }, - "application/vnd.ms-playready.initiator+xml": { - source: "iana", - compressible: true - }, - "application/vnd.ms-powerpoint": { - source: "iana", - compressible: false, - extensions: ["ppt", "pps", "pot"] - }, - "application/vnd.ms-powerpoint.addin.macroenabled.12": { - source: "iana", - extensions: ["ppam"] - }, - "application/vnd.ms-powerpoint.presentation.macroenabled.12": { - source: "iana", - extensions: ["pptm"] - }, - "application/vnd.ms-powerpoint.slide.macroenabled.12": { - source: "iana", - extensions: ["sldm"] - }, - "application/vnd.ms-powerpoint.slideshow.macroenabled.12": { - source: "iana", - extensions: ["ppsm"] - }, - "application/vnd.ms-powerpoint.template.macroenabled.12": { - source: "iana", - extensions: ["potm"] - }, - "application/vnd.ms-printdevicecapabilities+xml": { - source: "iana", - compressible: true - }, - "application/vnd.ms-printing.printticket+xml": { - source: "apache", - compressible: true - }, - "application/vnd.ms-printschematicket+xml": { - source: "iana", - compressible: true - }, - "application/vnd.ms-project": { - source: "iana", - extensions: ["mpp", "mpt"] - }, - "application/vnd.ms-tnef": { - source: "iana" - }, - "application/vnd.ms-windows.devicepairing": { - source: "iana" - }, - "application/vnd.ms-windows.nwprinting.oob": { - source: "iana" - }, - "application/vnd.ms-windows.printerpairing": { - source: "iana" - }, - "application/vnd.ms-windows.wsd.oob": { - source: "iana" - }, - "application/vnd.ms-wmdrm.lic-chlg-req": { - source: "iana" - }, - "application/vnd.ms-wmdrm.lic-resp": { - source: "iana" - }, - "application/vnd.ms-wmdrm.meter-chlg-req": { - source: "iana" - }, - "application/vnd.ms-wmdrm.meter-resp": { - source: "iana" - }, - "application/vnd.ms-word.document.macroenabled.12": { - source: "iana", - extensions: ["docm"] - }, - "application/vnd.ms-word.template.macroenabled.12": { - source: "iana", - extensions: ["dotm"] - }, - "application/vnd.ms-works": { - source: "iana", - extensions: ["wps", "wks", "wcm", "wdb"] - }, - "application/vnd.ms-wpl": { - source: "iana", - extensions: ["wpl"] - }, - "application/vnd.ms-xpsdocument": { - source: "iana", - compressible: false, - extensions: ["xps"] - }, - "application/vnd.msa-disk-image": { - source: "iana" - }, - "application/vnd.mseq": { - source: "iana", - extensions: ["mseq"] - }, - "application/vnd.msign": { - source: "iana" - }, - "application/vnd.multiad.creator": { - source: "iana" - }, - "application/vnd.multiad.creator.cif": { - source: "iana" - }, - "application/vnd.music-niff": { - source: "iana" - }, - "application/vnd.musician": { - source: "iana", - extensions: ["mus"] - }, - "application/vnd.muvee.style": { - source: "iana", - extensions: ["msty"] - }, - "application/vnd.mynfc": { - source: "iana", - extensions: ["taglet"] - }, - "application/vnd.nacamar.ybrid+json": { - source: "iana", - compressible: true - }, - "application/vnd.ncd.control": { - source: "iana" - }, - "application/vnd.ncd.reference": { - source: "iana" - }, - "application/vnd.nearst.inv+json": { - source: "iana", - compressible: true - }, - "application/vnd.nebumind.line": { - source: "iana" - }, - "application/vnd.nervana": { - source: "iana" - }, - "application/vnd.netfpx": { - source: "iana" - }, - "application/vnd.neurolanguage.nlu": { - source: "iana", - extensions: ["nlu"] - }, - "application/vnd.nimn": { - source: "iana" - }, - "application/vnd.nintendo.nitro.rom": { - source: "iana" - }, - "application/vnd.nintendo.snes.rom": { - source: "iana" - }, - "application/vnd.nitf": { - source: "iana", - extensions: ["ntf", "nitf"] - }, - "application/vnd.noblenet-directory": { - source: "iana", - extensions: ["nnd"] - }, - "application/vnd.noblenet-sealer": { - source: "iana", - extensions: ["nns"] - }, - "application/vnd.noblenet-web": { - source: "iana", - extensions: ["nnw"] - }, - "application/vnd.nokia.catalogs": { - source: "iana" - }, - "application/vnd.nokia.conml+wbxml": { - source: "iana" - }, - "application/vnd.nokia.conml+xml": { - source: "iana", - compressible: true - }, - "application/vnd.nokia.iptv.config+xml": { - source: "iana", - compressible: true - }, - "application/vnd.nokia.isds-radio-presets": { - source: "iana" - }, - "application/vnd.nokia.landmark+wbxml": { - source: "iana" - }, - "application/vnd.nokia.landmark+xml": { - source: "iana", - compressible: true - }, - "application/vnd.nokia.landmarkcollection+xml": { - source: "iana", - compressible: true - }, - "application/vnd.nokia.n-gage.ac+xml": { - source: "iana", - compressible: true, - extensions: ["ac"] - }, - "application/vnd.nokia.n-gage.data": { - source: "iana", - extensions: ["ngdat"] - }, - "application/vnd.nokia.n-gage.symbian.install": { - source: "iana", - extensions: ["n-gage"] - }, - "application/vnd.nokia.ncd": { - source: "iana" - }, - "application/vnd.nokia.pcd+wbxml": { - source: "iana" - }, - "application/vnd.nokia.pcd+xml": { - source: "iana", - compressible: true - }, - "application/vnd.nokia.radio-preset": { - source: "iana", - extensions: ["rpst"] - }, - "application/vnd.nokia.radio-presets": { - source: "iana", - extensions: ["rpss"] - }, - "application/vnd.novadigm.edm": { - source: "iana", - extensions: ["edm"] - }, - "application/vnd.novadigm.edx": { - source: "iana", - extensions: ["edx"] - }, - "application/vnd.novadigm.ext": { - source: "iana", - extensions: ["ext"] - }, - "application/vnd.ntt-local.content-share": { - source: "iana" - }, - "application/vnd.ntt-local.file-transfer": { - source: "iana" - }, - "application/vnd.ntt-local.ogw_remote-access": { - source: "iana" - }, - "application/vnd.ntt-local.sip-ta_remote": { - source: "iana" - }, - "application/vnd.ntt-local.sip-ta_tcp_stream": { - source: "iana" - }, - "application/vnd.oasis.opendocument.chart": { - source: "iana", - extensions: ["odc"] - }, - "application/vnd.oasis.opendocument.chart-template": { - source: "iana", - extensions: ["otc"] - }, - "application/vnd.oasis.opendocument.database": { - source: "iana", - extensions: ["odb"] - }, - "application/vnd.oasis.opendocument.formula": { - source: "iana", - extensions: ["odf"] - }, - "application/vnd.oasis.opendocument.formula-template": { - source: "iana", - extensions: ["odft"] - }, - "application/vnd.oasis.opendocument.graphics": { - source: "iana", - compressible: false, - extensions: ["odg"] - }, - "application/vnd.oasis.opendocument.graphics-template": { - source: "iana", - extensions: ["otg"] - }, - "application/vnd.oasis.opendocument.image": { - source: "iana", - extensions: ["odi"] - }, - "application/vnd.oasis.opendocument.image-template": { - source: "iana", - extensions: ["oti"] - }, - "application/vnd.oasis.opendocument.presentation": { - source: "iana", - compressible: false, - extensions: ["odp"] - }, - "application/vnd.oasis.opendocument.presentation-template": { - source: "iana", - extensions: ["otp"] - }, - "application/vnd.oasis.opendocument.spreadsheet": { - source: "iana", - compressible: false, - extensions: ["ods"] - }, - "application/vnd.oasis.opendocument.spreadsheet-template": { - source: "iana", - extensions: ["ots"] - }, - "application/vnd.oasis.opendocument.text": { - source: "iana", - compressible: false, - extensions: ["odt"] - }, - "application/vnd.oasis.opendocument.text-master": { - source: "iana", - extensions: ["odm"] - }, - "application/vnd.oasis.opendocument.text-template": { - source: "iana", - extensions: ["ott"] - }, - "application/vnd.oasis.opendocument.text-web": { - source: "iana", - extensions: ["oth"] - }, - "application/vnd.obn": { - source: "iana" - }, - "application/vnd.ocf+cbor": { - source: "iana" - }, - "application/vnd.oci.image.manifest.v1+json": { - source: "iana", - compressible: true - }, - "application/vnd.oftn.l10n+json": { - source: "iana", - compressible: true - }, - "application/vnd.oipf.contentaccessdownload+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oipf.contentaccessstreaming+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oipf.cspg-hexbinary": { - source: "iana" - }, - "application/vnd.oipf.dae.svg+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oipf.dae.xhtml+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oipf.mippvcontrolmessage+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oipf.pae.gem": { - source: "iana" - }, - "application/vnd.oipf.spdiscovery+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oipf.spdlist+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oipf.ueprofile+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oipf.userprofile+xml": { - source: "iana", - compressible: true - }, - "application/vnd.olpc-sugar": { - source: "iana", - extensions: ["xo"] - }, - "application/vnd.oma-scws-config": { - source: "iana" - }, - "application/vnd.oma-scws-http-request": { - source: "iana" - }, - "application/vnd.oma-scws-http-response": { - source: "iana" - }, - "application/vnd.oma.bcast.associated-procedure-parameter+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.bcast.drm-trigger+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.bcast.imd+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.bcast.ltkm": { - source: "iana" - }, - "application/vnd.oma.bcast.notification+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.bcast.provisioningtrigger": { - source: "iana" - }, - "application/vnd.oma.bcast.sgboot": { - source: "iana" - }, - "application/vnd.oma.bcast.sgdd+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.bcast.sgdu": { - source: "iana" - }, - "application/vnd.oma.bcast.simple-symbol-container": { - source: "iana" - }, - "application/vnd.oma.bcast.smartcard-trigger+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.bcast.sprov+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.bcast.stkm": { - source: "iana" - }, - "application/vnd.oma.cab-address-book+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.cab-feature-handler+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.cab-pcc+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.cab-subs-invite+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.cab-user-prefs+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.dcd": { - source: "iana" - }, - "application/vnd.oma.dcdc": { - source: "iana" - }, - "application/vnd.oma.dd2+xml": { - source: "iana", - compressible: true, - extensions: ["dd2"] - }, - "application/vnd.oma.drm.risd+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.group-usage-list+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.lwm2m+cbor": { - source: "iana" - }, - "application/vnd.oma.lwm2m+json": { - source: "iana", - compressible: true - }, - "application/vnd.oma.lwm2m+tlv": { - source: "iana" - }, - "application/vnd.oma.pal+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.poc.detailed-progress-report+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.poc.final-report+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.poc.groups+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.poc.invocation-descriptor+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.poc.optimized-progress-report+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.push": { - source: "iana" - }, - "application/vnd.oma.scidm.messages+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oma.xcap-directory+xml": { - source: "iana", - compressible: true - }, - "application/vnd.omads-email+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/vnd.omads-file+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/vnd.omads-folder+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/vnd.omaloc-supl-init": { - source: "iana" - }, - "application/vnd.onepager": { - source: "iana" - }, - "application/vnd.onepagertamp": { - source: "iana" - }, - "application/vnd.onepagertamx": { - source: "iana" - }, - "application/vnd.onepagertat": { - source: "iana" - }, - "application/vnd.onepagertatp": { - source: "iana" - }, - "application/vnd.onepagertatx": { - source: "iana" - }, - "application/vnd.openblox.game+xml": { - source: "iana", - compressible: true, - extensions: ["obgx"] - }, - "application/vnd.openblox.game-binary": { - source: "iana" - }, - "application/vnd.openeye.oeb": { - source: "iana" - }, - "application/vnd.openofficeorg.extension": { - source: "apache", - extensions: ["oxt"] - }, - "application/vnd.openstreetmap.data+xml": { - source: "iana", - compressible: true, - extensions: ["osm"] - }, - "application/vnd.opentimestamps.ots": { - source: "iana" - }, - "application/vnd.openxmlformats-officedocument.custom-properties+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.customxmlproperties+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.drawing+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.drawingml.chart+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.extended-properties+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.comments+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.presentation": { - source: "iana", - compressible: false, - extensions: ["pptx"] - }, - "application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.presprops+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.slide": { - source: "iana", - extensions: ["sldx"] - }, - "application/vnd.openxmlformats-officedocument.presentationml.slide+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.slideshow": { - source: "iana", - extensions: ["ppsx"] - }, - "application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.tags+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.template": { - source: "iana", - extensions: ["potx"] - }, - "application/vnd.openxmlformats-officedocument.presentationml.template.main+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { - source: "iana", - compressible: false, - extensions: ["xlsx"] - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.template": { - source: "iana", - extensions: ["xltx"] - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.theme+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.themeoverride+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.vmldrawing": { - source: "iana" - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.document": { - source: "iana", - compressible: false, - extensions: ["docx"] - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.template": { - source: "iana", - extensions: ["dotx"] - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-package.core-properties+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml": { - source: "iana", - compressible: true - }, - "application/vnd.openxmlformats-package.relationships+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oracle.resource+json": { - source: "iana", - compressible: true - }, - "application/vnd.orange.indata": { - source: "iana" - }, - "application/vnd.osa.netdeploy": { - source: "iana" - }, - "application/vnd.osgeo.mapguide.package": { - source: "iana", - extensions: ["mgp"] - }, - "application/vnd.osgi.bundle": { - source: "iana" - }, - "application/vnd.osgi.dp": { - source: "iana", - extensions: ["dp"] - }, - "application/vnd.osgi.subsystem": { - source: "iana", - extensions: ["esa"] - }, - "application/vnd.otps.ct-kip+xml": { - source: "iana", - compressible: true - }, - "application/vnd.oxli.countgraph": { - source: "iana" - }, - "application/vnd.pagerduty+json": { - source: "iana", - compressible: true - }, - "application/vnd.palm": { - source: "iana", - extensions: ["pdb", "pqa", "oprc"] - }, - "application/vnd.panoply": { - source: "iana" - }, - "application/vnd.paos.xml": { - source: "iana" - }, - "application/vnd.patentdive": { - source: "iana" - }, - "application/vnd.patientecommsdoc": { - source: "iana" - }, - "application/vnd.pawaafile": { - source: "iana", - extensions: ["paw"] - }, - "application/vnd.pcos": { - source: "iana" - }, - "application/vnd.pg.format": { - source: "iana", - extensions: ["str"] - }, - "application/vnd.pg.osasli": { - source: "iana", - extensions: ["ei6"] - }, - "application/vnd.piaccess.application-licence": { - source: "iana" - }, - "application/vnd.picsel": { - source: "iana", - extensions: ["efif"] - }, - "application/vnd.pmi.widget": { - source: "iana", - extensions: ["wg"] - }, - "application/vnd.poc.group-advertisement+xml": { - source: "iana", - compressible: true - }, - "application/vnd.pocketlearn": { - source: "iana", - extensions: ["plf"] - }, - "application/vnd.powerbuilder6": { - source: "iana", - extensions: ["pbd"] - }, - "application/vnd.powerbuilder6-s": { - source: "iana" - }, - "application/vnd.powerbuilder7": { - source: "iana" - }, - "application/vnd.powerbuilder7-s": { - source: "iana" - }, - "application/vnd.powerbuilder75": { - source: "iana" - }, - "application/vnd.powerbuilder75-s": { - source: "iana" - }, - "application/vnd.preminet": { - source: "iana" - }, - "application/vnd.previewsystems.box": { - source: "iana", - extensions: ["box"] - }, - "application/vnd.proteus.magazine": { - source: "iana", - extensions: ["mgz"] - }, - "application/vnd.psfs": { - source: "iana" - }, - "application/vnd.publishare-delta-tree": { - source: "iana", - extensions: ["qps"] - }, - "application/vnd.pvi.ptid1": { - source: "iana", - extensions: ["ptid"] - }, - "application/vnd.pwg-multiplexed": { - source: "iana" - }, - "application/vnd.pwg-xhtml-print+xml": { - source: "iana", - compressible: true - }, - "application/vnd.qualcomm.brew-app-res": { - source: "iana" - }, - "application/vnd.quarantainenet": { - source: "iana" - }, - "application/vnd.quark.quarkxpress": { - source: "iana", - extensions: ["qxd", "qxt", "qwd", "qwt", "qxl", "qxb"] - }, - "application/vnd.quobject-quoxdocument": { - source: "iana" - }, - "application/vnd.radisys.moml+xml": { - source: "iana", - compressible: true - }, - "application/vnd.radisys.msml+xml": { - source: "iana", - compressible: true - }, - "application/vnd.radisys.msml-audit+xml": { - source: "iana", - compressible: true - }, - "application/vnd.radisys.msml-audit-conf+xml": { - source: "iana", - compressible: true - }, - "application/vnd.radisys.msml-audit-conn+xml": { - source: "iana", - compressible: true - }, - "application/vnd.radisys.msml-audit-dialog+xml": { - source: "iana", - compressible: true - }, - "application/vnd.radisys.msml-audit-stream+xml": { - source: "iana", - compressible: true - }, - "application/vnd.radisys.msml-conf+xml": { - source: "iana", - compressible: true - }, - "application/vnd.radisys.msml-dialog+xml": { - source: "iana", - compressible: true - }, - "application/vnd.radisys.msml-dialog-base+xml": { - source: "iana", - compressible: true - }, - "application/vnd.radisys.msml-dialog-fax-detect+xml": { - source: "iana", - compressible: true - }, - "application/vnd.radisys.msml-dialog-fax-sendrecv+xml": { - source: "iana", - compressible: true - }, - "application/vnd.radisys.msml-dialog-group+xml": { - source: "iana", - compressible: true - }, - "application/vnd.radisys.msml-dialog-speech+xml": { - source: "iana", - compressible: true - }, - "application/vnd.radisys.msml-dialog-transform+xml": { - source: "iana", - compressible: true - }, - "application/vnd.rainstor.data": { - source: "iana" - }, - "application/vnd.rapid": { - source: "iana" - }, - "application/vnd.rar": { - source: "iana", - extensions: ["rar"] - }, - "application/vnd.realvnc.bed": { - source: "iana", - extensions: ["bed"] - }, - "application/vnd.recordare.musicxml": { - source: "iana", - extensions: ["mxl"] - }, - "application/vnd.recordare.musicxml+xml": { - source: "iana", - compressible: true, - extensions: ["musicxml"] - }, - "application/vnd.renlearn.rlprint": { - source: "iana" - }, - "application/vnd.resilient.logic": { - source: "iana" - }, - "application/vnd.restful+json": { - source: "iana", - compressible: true - }, - "application/vnd.rig.cryptonote": { - source: "iana", - extensions: ["cryptonote"] - }, - "application/vnd.rim.cod": { - source: "apache", - extensions: ["cod"] - }, - "application/vnd.rn-realmedia": { - source: "apache", - extensions: ["rm"] - }, - "application/vnd.rn-realmedia-vbr": { - source: "apache", - extensions: ["rmvb"] - }, - "application/vnd.route66.link66+xml": { - source: "iana", - compressible: true, - extensions: ["link66"] - }, - "application/vnd.rs-274x": { - source: "iana" - }, - "application/vnd.ruckus.download": { - source: "iana" - }, - "application/vnd.s3sms": { - source: "iana" - }, - "application/vnd.sailingtracker.track": { - source: "iana", - extensions: ["st"] - }, - "application/vnd.sar": { - source: "iana" - }, - "application/vnd.sbm.cid": { - source: "iana" - }, - "application/vnd.sbm.mid2": { - source: "iana" - }, - "application/vnd.scribus": { - source: "iana" - }, - "application/vnd.sealed.3df": { - source: "iana" - }, - "application/vnd.sealed.csf": { - source: "iana" - }, - "application/vnd.sealed.doc": { - source: "iana" - }, - "application/vnd.sealed.eml": { - source: "iana" - }, - "application/vnd.sealed.mht": { - source: "iana" - }, - "application/vnd.sealed.net": { - source: "iana" - }, - "application/vnd.sealed.ppt": { - source: "iana" - }, - "application/vnd.sealed.tiff": { - source: "iana" - }, - "application/vnd.sealed.xls": { - source: "iana" - }, - "application/vnd.sealedmedia.softseal.html": { - source: "iana" - }, - "application/vnd.sealedmedia.softseal.pdf": { - source: "iana" - }, - "application/vnd.seemail": { - source: "iana", - extensions: ["see"] - }, - "application/vnd.seis+json": { - source: "iana", - compressible: true - }, - "application/vnd.sema": { - source: "iana", - extensions: ["sema"] - }, - "application/vnd.semd": { - source: "iana", - extensions: ["semd"] - }, - "application/vnd.semf": { - source: "iana", - extensions: ["semf"] - }, - "application/vnd.shade-save-file": { - source: "iana" - }, - "application/vnd.shana.informed.formdata": { - source: "iana", - extensions: ["ifm"] - }, - "application/vnd.shana.informed.formtemplate": { - source: "iana", - extensions: ["itp"] - }, - "application/vnd.shana.informed.interchange": { - source: "iana", - extensions: ["iif"] - }, - "application/vnd.shana.informed.package": { - source: "iana", - extensions: ["ipk"] - }, - "application/vnd.shootproof+json": { - source: "iana", - compressible: true - }, - "application/vnd.shopkick+json": { - source: "iana", - compressible: true - }, - "application/vnd.shp": { - source: "iana" - }, - "application/vnd.shx": { - source: "iana" - }, - "application/vnd.sigrok.session": { - source: "iana" - }, - "application/vnd.simtech-mindmapper": { - source: "iana", - extensions: ["twd", "twds"] - }, - "application/vnd.siren+json": { - source: "iana", - compressible: true - }, - "application/vnd.smaf": { - source: "iana", - extensions: ["mmf"] - }, - "application/vnd.smart.notebook": { - source: "iana" - }, - "application/vnd.smart.teacher": { - source: "iana", - extensions: ["teacher"] - }, - "application/vnd.snesdev-page-table": { - source: "iana" - }, - "application/vnd.software602.filler.form+xml": { - source: "iana", - compressible: true, - extensions: ["fo"] - }, - "application/vnd.software602.filler.form-xml-zip": { - source: "iana" - }, - "application/vnd.solent.sdkm+xml": { - source: "iana", - compressible: true, - extensions: ["sdkm", "sdkd"] - }, - "application/vnd.spotfire.dxp": { - source: "iana", - extensions: ["dxp"] - }, - "application/vnd.spotfire.sfs": { - source: "iana", - extensions: ["sfs"] - }, - "application/vnd.sqlite3": { - source: "iana" - }, - "application/vnd.sss-cod": { - source: "iana" - }, - "application/vnd.sss-dtf": { - source: "iana" - }, - "application/vnd.sss-ntf": { - source: "iana" - }, - "application/vnd.stardivision.calc": { - source: "apache", - extensions: ["sdc"] - }, - "application/vnd.stardivision.draw": { - source: "apache", - extensions: ["sda"] - }, - "application/vnd.stardivision.impress": { - source: "apache", - extensions: ["sdd"] - }, - "application/vnd.stardivision.math": { - source: "apache", - extensions: ["smf"] - }, - "application/vnd.stardivision.writer": { - source: "apache", - extensions: ["sdw", "vor"] - }, - "application/vnd.stardivision.writer-global": { - source: "apache", - extensions: ["sgl"] - }, - "application/vnd.stepmania.package": { - source: "iana", - extensions: ["smzip"] - }, - "application/vnd.stepmania.stepchart": { - source: "iana", - extensions: ["sm"] - }, - "application/vnd.street-stream": { - source: "iana" - }, - "application/vnd.sun.wadl+xml": { - source: "iana", - compressible: true, - extensions: ["wadl"] - }, - "application/vnd.sun.xml.calc": { - source: "apache", - extensions: ["sxc"] - }, - "application/vnd.sun.xml.calc.template": { - source: "apache", - extensions: ["stc"] - }, - "application/vnd.sun.xml.draw": { - source: "apache", - extensions: ["sxd"] - }, - "application/vnd.sun.xml.draw.template": { - source: "apache", - extensions: ["std"] - }, - "application/vnd.sun.xml.impress": { - source: "apache", - extensions: ["sxi"] - }, - "application/vnd.sun.xml.impress.template": { - source: "apache", - extensions: ["sti"] - }, - "application/vnd.sun.xml.math": { - source: "apache", - extensions: ["sxm"] - }, - "application/vnd.sun.xml.writer": { - source: "apache", - extensions: ["sxw"] - }, - "application/vnd.sun.xml.writer.global": { - source: "apache", - extensions: ["sxg"] - }, - "application/vnd.sun.xml.writer.template": { - source: "apache", - extensions: ["stw"] - }, - "application/vnd.sus-calendar": { - source: "iana", - extensions: ["sus", "susp"] - }, - "application/vnd.svd": { - source: "iana", - extensions: ["svd"] - }, - "application/vnd.swiftview-ics": { - source: "iana" - }, - "application/vnd.sycle+xml": { - source: "iana", - compressible: true - }, - "application/vnd.syft+json": { - source: "iana", - compressible: true - }, - "application/vnd.symbian.install": { - source: "apache", - extensions: ["sis", "sisx"] - }, - "application/vnd.syncml+xml": { - source: "iana", - charset: "UTF-8", - compressible: true, - extensions: ["xsm"] - }, - "application/vnd.syncml.dm+wbxml": { - source: "iana", - charset: "UTF-8", - extensions: ["bdm"] - }, - "application/vnd.syncml.dm+xml": { - source: "iana", - charset: "UTF-8", - compressible: true, - extensions: ["xdm"] - }, - "application/vnd.syncml.dm.notification": { - source: "iana" - }, - "application/vnd.syncml.dmddf+wbxml": { - source: "iana" - }, - "application/vnd.syncml.dmddf+xml": { - source: "iana", - charset: "UTF-8", - compressible: true, - extensions: ["ddf"] - }, - "application/vnd.syncml.dmtnds+wbxml": { - source: "iana" - }, - "application/vnd.syncml.dmtnds+xml": { - source: "iana", - charset: "UTF-8", - compressible: true - }, - "application/vnd.syncml.ds.notification": { - source: "iana" - }, - "application/vnd.tableschema+json": { - source: "iana", - compressible: true - }, - "application/vnd.tao.intent-module-archive": { - source: "iana", - extensions: ["tao"] - }, - "application/vnd.tcpdump.pcap": { - source: "iana", - extensions: ["pcap", "cap", "dmp"] - }, - "application/vnd.think-cell.ppttc+json": { - source: "iana", - compressible: true - }, - "application/vnd.tmd.mediaflex.api+xml": { - source: "iana", - compressible: true - }, - "application/vnd.tml": { - source: "iana" - }, - "application/vnd.tmobile-livetv": { - source: "iana", - extensions: ["tmo"] - }, - "application/vnd.tri.onesource": { - source: "iana" - }, - "application/vnd.trid.tpt": { - source: "iana", - extensions: ["tpt"] - }, - "application/vnd.triscape.mxs": { - source: "iana", - extensions: ["mxs"] - }, - "application/vnd.trueapp": { - source: "iana", - extensions: ["tra"] - }, - "application/vnd.truedoc": { - source: "iana" - }, - "application/vnd.ubisoft.webplayer": { - source: "iana" - }, - "application/vnd.ufdl": { - source: "iana", - extensions: ["ufd", "ufdl"] - }, - "application/vnd.uiq.theme": { - source: "iana", - extensions: ["utz"] - }, - "application/vnd.umajin": { - source: "iana", - extensions: ["umj"] - }, - "application/vnd.unity": { - source: "iana", - extensions: ["unityweb"] - }, - "application/vnd.uoml+xml": { - source: "iana", - compressible: true, - extensions: ["uoml"] - }, - "application/vnd.uplanet.alert": { - source: "iana" - }, - "application/vnd.uplanet.alert-wbxml": { - source: "iana" - }, - "application/vnd.uplanet.bearer-choice": { - source: "iana" - }, - "application/vnd.uplanet.bearer-choice-wbxml": { - source: "iana" - }, - "application/vnd.uplanet.cacheop": { - source: "iana" - }, - "application/vnd.uplanet.cacheop-wbxml": { - source: "iana" - }, - "application/vnd.uplanet.channel": { - source: "iana" - }, - "application/vnd.uplanet.channel-wbxml": { - source: "iana" - }, - "application/vnd.uplanet.list": { - source: "iana" - }, - "application/vnd.uplanet.list-wbxml": { - source: "iana" - }, - "application/vnd.uplanet.listcmd": { - source: "iana" - }, - "application/vnd.uplanet.listcmd-wbxml": { - source: "iana" - }, - "application/vnd.uplanet.signal": { - source: "iana" - }, - "application/vnd.uri-map": { - source: "iana" - }, - "application/vnd.valve.source.material": { - source: "iana" - }, - "application/vnd.vcx": { - source: "iana", - extensions: ["vcx"] - }, - "application/vnd.vd-study": { - source: "iana" - }, - "application/vnd.vectorworks": { - source: "iana" - }, - "application/vnd.vel+json": { - source: "iana", - compressible: true - }, - "application/vnd.verimatrix.vcas": { - source: "iana" - }, - "application/vnd.veritone.aion+json": { - source: "iana", - compressible: true - }, - "application/vnd.veryant.thin": { - source: "iana" - }, - "application/vnd.ves.encrypted": { - source: "iana" - }, - "application/vnd.vidsoft.vidconference": { - source: "iana" - }, - "application/vnd.visio": { - source: "iana", - extensions: ["vsd", "vst", "vss", "vsw"] - }, - "application/vnd.visionary": { - source: "iana", - extensions: ["vis"] - }, - "application/vnd.vividence.scriptfile": { - source: "iana" - }, - "application/vnd.vsf": { - source: "iana", - extensions: ["vsf"] - }, - "application/vnd.wap.sic": { - source: "iana" - }, - "application/vnd.wap.slc": { - source: "iana" - }, - "application/vnd.wap.wbxml": { - source: "iana", - charset: "UTF-8", - extensions: ["wbxml"] - }, - "application/vnd.wap.wmlc": { - source: "iana", - extensions: ["wmlc"] - }, - "application/vnd.wap.wmlscriptc": { - source: "iana", - extensions: ["wmlsc"] - }, - "application/vnd.webturbo": { - source: "iana", - extensions: ["wtb"] - }, - "application/vnd.wfa.dpp": { - source: "iana" - }, - "application/vnd.wfa.p2p": { - source: "iana" - }, - "application/vnd.wfa.wsc": { - source: "iana" - }, - "application/vnd.windows.devicepairing": { - source: "iana" - }, - "application/vnd.wmc": { - source: "iana" - }, - "application/vnd.wmf.bootstrap": { - source: "iana" - }, - "application/vnd.wolfram.mathematica": { - source: "iana" - }, - "application/vnd.wolfram.mathematica.package": { - source: "iana" - }, - "application/vnd.wolfram.player": { - source: "iana", - extensions: ["nbp"] - }, - "application/vnd.wordperfect": { - source: "iana", - extensions: ["wpd"] - }, - "application/vnd.wqd": { - source: "iana", - extensions: ["wqd"] - }, - "application/vnd.wrq-hp3000-labelled": { - source: "iana" - }, - "application/vnd.wt.stf": { - source: "iana", - extensions: ["stf"] - }, - "application/vnd.wv.csp+wbxml": { - source: "iana" - }, - "application/vnd.wv.csp+xml": { - source: "iana", - compressible: true - }, - "application/vnd.wv.ssp+xml": { - source: "iana", - compressible: true - }, - "application/vnd.xacml+json": { - source: "iana", - compressible: true - }, - "application/vnd.xara": { - source: "iana", - extensions: ["xar"] - }, - "application/vnd.xfdl": { - source: "iana", - extensions: ["xfdl"] - }, - "application/vnd.xfdl.webform": { - source: "iana" - }, - "application/vnd.xmi+xml": { - source: "iana", - compressible: true - }, - "application/vnd.xmpie.cpkg": { - source: "iana" - }, - "application/vnd.xmpie.dpkg": { - source: "iana" - }, - "application/vnd.xmpie.plan": { - source: "iana" - }, - "application/vnd.xmpie.ppkg": { - source: "iana" - }, - "application/vnd.xmpie.xlim": { - source: "iana" - }, - "application/vnd.yamaha.hv-dic": { - source: "iana", - extensions: ["hvd"] - }, - "application/vnd.yamaha.hv-script": { - source: "iana", - extensions: ["hvs"] - }, - "application/vnd.yamaha.hv-voice": { - source: "iana", - extensions: ["hvp"] - }, - "application/vnd.yamaha.openscoreformat": { - source: "iana", - extensions: ["osf"] - }, - "application/vnd.yamaha.openscoreformat.osfpvg+xml": { - source: "iana", - compressible: true, - extensions: ["osfpvg"] - }, - "application/vnd.yamaha.remote-setup": { - source: "iana" - }, - "application/vnd.yamaha.smaf-audio": { - source: "iana", - extensions: ["saf"] - }, - "application/vnd.yamaha.smaf-phrase": { - source: "iana", - extensions: ["spf"] - }, - "application/vnd.yamaha.through-ngn": { - source: "iana" - }, - "application/vnd.yamaha.tunnel-udpencap": { - source: "iana" - }, - "application/vnd.yaoweme": { - source: "iana" - }, - "application/vnd.yellowriver-custom-menu": { - source: "iana", - extensions: ["cmp"] - }, - "application/vnd.youtube.yt": { - source: "iana" - }, - "application/vnd.zul": { - source: "iana", - extensions: ["zir", "zirz"] - }, - "application/vnd.zzazz.deck+xml": { - source: "iana", - compressible: true, - extensions: ["zaz"] - }, - "application/voicexml+xml": { - source: "iana", - compressible: true, - extensions: ["vxml"] - }, - "application/voucher-cms+json": { - source: "iana", - compressible: true - }, - "application/vq-rtcpxr": { - source: "iana" - }, - "application/wasm": { - source: "iana", - compressible: true, - extensions: ["wasm"] - }, - "application/watcherinfo+xml": { - source: "iana", - compressible: true, - extensions: ["wif"] - }, - "application/webpush-options+json": { - source: "iana", - compressible: true - }, - "application/whoispp-query": { - source: "iana" - }, - "application/whoispp-response": { - source: "iana" - }, - "application/widget": { - source: "iana", - extensions: ["wgt"] - }, - "application/winhlp": { - source: "apache", - extensions: ["hlp"] - }, - "application/wita": { - source: "iana" - }, - "application/wordperfect5.1": { - source: "iana" - }, - "application/wsdl+xml": { - source: "iana", - compressible: true, - extensions: ["wsdl"] - }, - "application/wspolicy+xml": { - source: "iana", - compressible: true, - extensions: ["wspolicy"] - }, - "application/x-7z-compressed": { - source: "apache", - compressible: false, - extensions: ["7z"] - }, - "application/x-abiword": { - source: "apache", - extensions: ["abw"] - }, - "application/x-ace-compressed": { - source: "apache", - extensions: ["ace"] - }, - "application/x-amf": { - source: "apache" - }, - "application/x-apple-diskimage": { - source: "apache", - extensions: ["dmg"] - }, - "application/x-arj": { - compressible: false, - extensions: ["arj"] - }, - "application/x-authorware-bin": { - source: "apache", - extensions: ["aab", "x32", "u32", "vox"] - }, - "application/x-authorware-map": { - source: "apache", - extensions: ["aam"] - }, - "application/x-authorware-seg": { - source: "apache", - extensions: ["aas"] - }, - "application/x-bcpio": { - source: "apache", - extensions: ["bcpio"] - }, - "application/x-bdoc": { - compressible: false, - extensions: ["bdoc"] - }, - "application/x-bittorrent": { - source: "apache", - extensions: ["torrent"] - }, - "application/x-blorb": { - source: "apache", - extensions: ["blb", "blorb"] - }, - "application/x-bzip": { - source: "apache", - compressible: false, - extensions: ["bz"] - }, - "application/x-bzip2": { - source: "apache", - compressible: false, - extensions: ["bz2", "boz"] - }, - "application/x-cbr": { - source: "apache", - extensions: ["cbr", "cba", "cbt", "cbz", "cb7"] - }, - "application/x-cdlink": { - source: "apache", - extensions: ["vcd"] - }, - "application/x-cfs-compressed": { - source: "apache", - extensions: ["cfs"] - }, - "application/x-chat": { - source: "apache", - extensions: ["chat"] - }, - "application/x-chess-pgn": { - source: "apache", - extensions: ["pgn"] - }, - "application/x-chrome-extension": { - extensions: ["crx"] - }, - "application/x-cocoa": { - source: "nginx", - extensions: ["cco"] - }, - "application/x-compress": { - source: "apache" - }, - "application/x-conference": { - source: "apache", - extensions: ["nsc"] - }, - "application/x-cpio": { - source: "apache", - extensions: ["cpio"] - }, - "application/x-csh": { - source: "apache", - extensions: ["csh"] - }, - "application/x-deb": { - compressible: false - }, - "application/x-debian-package": { - source: "apache", - extensions: ["deb", "udeb"] - }, - "application/x-dgc-compressed": { - source: "apache", - extensions: ["dgc"] - }, - "application/x-director": { - source: "apache", - extensions: ["dir", "dcr", "dxr", "cst", "cct", "cxt", "w3d", "fgd", "swa"] - }, - "application/x-doom": { - source: "apache", - extensions: ["wad"] - }, - "application/x-dtbncx+xml": { - source: "apache", - compressible: true, - extensions: ["ncx"] - }, - "application/x-dtbook+xml": { - source: "apache", - compressible: true, - extensions: ["dtb"] - }, - "application/x-dtbresource+xml": { - source: "apache", - compressible: true, - extensions: ["res"] - }, - "application/x-dvi": { - source: "apache", - compressible: false, - extensions: ["dvi"] - }, - "application/x-envoy": { - source: "apache", - extensions: ["evy"] - }, - "application/x-eva": { - source: "apache", - extensions: ["eva"] - }, - "application/x-font-bdf": { - source: "apache", - extensions: ["bdf"] - }, - "application/x-font-dos": { - source: "apache" - }, - "application/x-font-framemaker": { - source: "apache" - }, - "application/x-font-ghostscript": { - source: "apache", - extensions: ["gsf"] - }, - "application/x-font-libgrx": { - source: "apache" - }, - "application/x-font-linux-psf": { - source: "apache", - extensions: ["psf"] - }, - "application/x-font-pcf": { - source: "apache", - extensions: ["pcf"] - }, - "application/x-font-snf": { - source: "apache", - extensions: ["snf"] - }, - "application/x-font-speedo": { - source: "apache" - }, - "application/x-font-sunos-news": { - source: "apache" - }, - "application/x-font-type1": { - source: "apache", - extensions: ["pfa", "pfb", "pfm", "afm"] - }, - "application/x-font-vfont": { - source: "apache" - }, - "application/x-freearc": { - source: "apache", - extensions: ["arc"] - }, - "application/x-futuresplash": { - source: "apache", - extensions: ["spl"] - }, - "application/x-gca-compressed": { - source: "apache", - extensions: ["gca"] - }, - "application/x-glulx": { - source: "apache", - extensions: ["ulx"] - }, - "application/x-gnumeric": { - source: "apache", - extensions: ["gnumeric"] - }, - "application/x-gramps-xml": { - source: "apache", - extensions: ["gramps"] - }, - "application/x-gtar": { - source: "apache", - extensions: ["gtar"] - }, - "application/x-gzip": { - source: "apache" - }, - "application/x-hdf": { - source: "apache", - extensions: ["hdf"] - }, - "application/x-httpd-php": { - compressible: true, - extensions: ["php"] - }, - "application/x-install-instructions": { - source: "apache", - extensions: ["install"] - }, - "application/x-iso9660-image": { - source: "apache", - extensions: ["iso"] - }, - "application/x-iwork-keynote-sffkey": { - extensions: ["key"] - }, - "application/x-iwork-numbers-sffnumbers": { - extensions: ["numbers"] - }, - "application/x-iwork-pages-sffpages": { - extensions: ["pages"] - }, - "application/x-java-archive-diff": { - source: "nginx", - extensions: ["jardiff"] - }, - "application/x-java-jnlp-file": { - source: "apache", - compressible: false, - extensions: ["jnlp"] - }, - "application/x-javascript": { - compressible: true - }, - "application/x-keepass2": { - extensions: ["kdbx"] - }, - "application/x-latex": { - source: "apache", - compressible: false, - extensions: ["latex"] - }, - "application/x-lua-bytecode": { - extensions: ["luac"] - }, - "application/x-lzh-compressed": { - source: "apache", - extensions: ["lzh", "lha"] - }, - "application/x-makeself": { - source: "nginx", - extensions: ["run"] - }, - "application/x-mie": { - source: "apache", - extensions: ["mie"] - }, - "application/x-mobipocket-ebook": { - source: "apache", - extensions: ["prc", "mobi"] - }, - "application/x-mpegurl": { - compressible: false - }, - "application/x-ms-application": { - source: "apache", - extensions: ["application"] - }, - "application/x-ms-shortcut": { - source: "apache", - extensions: ["lnk"] - }, - "application/x-ms-wmd": { - source: "apache", - extensions: ["wmd"] - }, - "application/x-ms-wmz": { - source: "apache", - extensions: ["wmz"] - }, - "application/x-ms-xbap": { - source: "apache", - extensions: ["xbap"] - }, - "application/x-msaccess": { - source: "apache", - extensions: ["mdb"] - }, - "application/x-msbinder": { - source: "apache", - extensions: ["obd"] - }, - "application/x-mscardfile": { - source: "apache", - extensions: ["crd"] - }, - "application/x-msclip": { - source: "apache", - extensions: ["clp"] - }, - "application/x-msdos-program": { - extensions: ["exe"] - }, - "application/x-msdownload": { - source: "apache", - extensions: ["exe", "dll", "com", "bat", "msi"] - }, - "application/x-msmediaview": { - source: "apache", - extensions: ["mvb", "m13", "m14"] - }, - "application/x-msmetafile": { - source: "apache", - extensions: ["wmf", "wmz", "emf", "emz"] - }, - "application/x-msmoney": { - source: "apache", - extensions: ["mny"] - }, - "application/x-mspublisher": { - source: "apache", - extensions: ["pub"] - }, - "application/x-msschedule": { - source: "apache", - extensions: ["scd"] - }, - "application/x-msterminal": { - source: "apache", - extensions: ["trm"] - }, - "application/x-mswrite": { - source: "apache", - extensions: ["wri"] - }, - "application/x-netcdf": { - source: "apache", - extensions: ["nc", "cdf"] - }, - "application/x-ns-proxy-autoconfig": { - compressible: true, - extensions: ["pac"] - }, - "application/x-nzb": { - source: "apache", - extensions: ["nzb"] - }, - "application/x-perl": { - source: "nginx", - extensions: ["pl", "pm"] - }, - "application/x-pilot": { - source: "nginx", - extensions: ["prc", "pdb"] - }, - "application/x-pkcs12": { - source: "apache", - compressible: false, - extensions: ["p12", "pfx"] - }, - "application/x-pkcs7-certificates": { - source: "apache", - extensions: ["p7b", "spc"] - }, - "application/x-pkcs7-certreqresp": { - source: "apache", - extensions: ["p7r"] - }, - "application/x-pki-message": { - source: "iana" - }, - "application/x-rar-compressed": { - source: "apache", - compressible: false, - extensions: ["rar"] - }, - "application/x-redhat-package-manager": { - source: "nginx", - extensions: ["rpm"] - }, - "application/x-research-info-systems": { - source: "apache", - extensions: ["ris"] - }, - "application/x-sea": { - source: "nginx", - extensions: ["sea"] - }, - "application/x-sh": { - source: "apache", - compressible: true, - extensions: ["sh"] - }, - "application/x-shar": { - source: "apache", - extensions: ["shar"] - }, - "application/x-shockwave-flash": { - source: "apache", - compressible: false, - extensions: ["swf"] - }, - "application/x-silverlight-app": { - source: "apache", - extensions: ["xap"] - }, - "application/x-sql": { - source: "apache", - extensions: ["sql"] - }, - "application/x-stuffit": { - source: "apache", - compressible: false, - extensions: ["sit"] - }, - "application/x-stuffitx": { - source: "apache", - extensions: ["sitx"] - }, - "application/x-subrip": { - source: "apache", - extensions: ["srt"] - }, - "application/x-sv4cpio": { - source: "apache", - extensions: ["sv4cpio"] - }, - "application/x-sv4crc": { - source: "apache", - extensions: ["sv4crc"] - }, - "application/x-t3vm-image": { - source: "apache", - extensions: ["t3"] - }, - "application/x-tads": { - source: "apache", - extensions: ["gam"] - }, - "application/x-tar": { - source: "apache", - compressible: true, - extensions: ["tar"] - }, - "application/x-tcl": { - source: "apache", - extensions: ["tcl", "tk"] - }, - "application/x-tex": { - source: "apache", - extensions: ["tex"] - }, - "application/x-tex-tfm": { - source: "apache", - extensions: ["tfm"] - }, - "application/x-texinfo": { - source: "apache", - extensions: ["texinfo", "texi"] - }, - "application/x-tgif": { - source: "apache", - extensions: ["obj"] - }, - "application/x-ustar": { - source: "apache", - extensions: ["ustar"] - }, - "application/x-virtualbox-hdd": { - compressible: true, - extensions: ["hdd"] - }, - "application/x-virtualbox-ova": { - compressible: true, - extensions: ["ova"] - }, - "application/x-virtualbox-ovf": { - compressible: true, - extensions: ["ovf"] - }, - "application/x-virtualbox-vbox": { - compressible: true, - extensions: ["vbox"] - }, - "application/x-virtualbox-vbox-extpack": { - compressible: false, - extensions: ["vbox-extpack"] - }, - "application/x-virtualbox-vdi": { - compressible: true, - extensions: ["vdi"] - }, - "application/x-virtualbox-vhd": { - compressible: true, - extensions: ["vhd"] - }, - "application/x-virtualbox-vmdk": { - compressible: true, - extensions: ["vmdk"] - }, - "application/x-wais-source": { - source: "apache", - extensions: ["src"] - }, - "application/x-web-app-manifest+json": { - compressible: true, - extensions: ["webapp"] - }, - "application/x-www-form-urlencoded": { - source: "iana", - compressible: true - }, - "application/x-x509-ca-cert": { - source: "iana", - extensions: ["der", "crt", "pem"] - }, - "application/x-x509-ca-ra-cert": { - source: "iana" - }, - "application/x-x509-next-ca-cert": { - source: "iana" - }, - "application/x-xfig": { - source: "apache", - extensions: ["fig"] - }, - "application/x-xliff+xml": { - source: "apache", - compressible: true, - extensions: ["xlf"] - }, - "application/x-xpinstall": { - source: "apache", - compressible: false, - extensions: ["xpi"] - }, - "application/x-xz": { - source: "apache", - extensions: ["xz"] - }, - "application/x-zmachine": { - source: "apache", - extensions: ["z1", "z2", "z3", "z4", "z5", "z6", "z7", "z8"] - }, - "application/x400-bp": { - source: "iana" - }, - "application/xacml+xml": { - source: "iana", - compressible: true - }, - "application/xaml+xml": { - source: "apache", - compressible: true, - extensions: ["xaml"] - }, - "application/xcap-att+xml": { - source: "iana", - compressible: true, - extensions: ["xav"] - }, - "application/xcap-caps+xml": { - source: "iana", - compressible: true, - extensions: ["xca"] - }, - "application/xcap-diff+xml": { - source: "iana", - compressible: true, - extensions: ["xdf"] - }, - "application/xcap-el+xml": { - source: "iana", - compressible: true, - extensions: ["xel"] - }, - "application/xcap-error+xml": { - source: "iana", - compressible: true - }, - "application/xcap-ns+xml": { - source: "iana", - compressible: true, - extensions: ["xns"] - }, - "application/xcon-conference-info+xml": { - source: "iana", - compressible: true - }, - "application/xcon-conference-info-diff+xml": { - source: "iana", - compressible: true - }, - "application/xenc+xml": { - source: "iana", - compressible: true, - extensions: ["xenc"] - }, - "application/xhtml+xml": { - source: "iana", - compressible: true, - extensions: ["xhtml", "xht"] - }, - "application/xhtml-voice+xml": { - source: "apache", - compressible: true - }, - "application/xliff+xml": { - source: "iana", - compressible: true, - extensions: ["xlf"] - }, - "application/xml": { - source: "iana", - compressible: true, - extensions: ["xml", "xsl", "xsd", "rng"] - }, - "application/xml-dtd": { - source: "iana", - compressible: true, - extensions: ["dtd"] - }, - "application/xml-external-parsed-entity": { - source: "iana" - }, - "application/xml-patch+xml": { - source: "iana", - compressible: true - }, - "application/xmpp+xml": { - source: "iana", - compressible: true - }, - "application/xop+xml": { - source: "iana", - compressible: true, - extensions: ["xop"] - }, - "application/xproc+xml": { - source: "apache", - compressible: true, - extensions: ["xpl"] - }, - "application/xslt+xml": { - source: "iana", - compressible: true, - extensions: ["xsl", "xslt"] - }, - "application/xspf+xml": { - source: "apache", - compressible: true, - extensions: ["xspf"] - }, - "application/xv+xml": { - source: "iana", - compressible: true, - extensions: ["mxml", "xhvml", "xvml", "xvm"] - }, - "application/yang": { - source: "iana", - extensions: ["yang"] - }, - "application/yang-data+json": { - source: "iana", - compressible: true - }, - "application/yang-data+xml": { - source: "iana", - compressible: true - }, - "application/yang-patch+json": { - source: "iana", - compressible: true - }, - "application/yang-patch+xml": { - source: "iana", - compressible: true - }, - "application/yin+xml": { - source: "iana", - compressible: true, - extensions: ["yin"] - }, - "application/zip": { - source: "iana", - compressible: false, - extensions: ["zip"] - }, - "application/zlib": { - source: "iana" - }, - "application/zstd": { - source: "iana" - }, - "audio/1d-interleaved-parityfec": { - source: "iana" - }, - "audio/32kadpcm": { - source: "iana" - }, - "audio/3gpp": { - source: "iana", - compressible: false, - extensions: ["3gpp"] - }, - "audio/3gpp2": { - source: "iana" - }, - "audio/aac": { - source: "iana" - }, - "audio/ac3": { - source: "iana" - }, - "audio/adpcm": { - source: "apache", - extensions: ["adp"] - }, - "audio/amr": { - source: "iana", - extensions: ["amr"] - }, - "audio/amr-wb": { - source: "iana" - }, - "audio/amr-wb+": { - source: "iana" - }, - "audio/aptx": { - source: "iana" - }, - "audio/asc": { - source: "iana" - }, - "audio/atrac-advanced-lossless": { - source: "iana" - }, - "audio/atrac-x": { - source: "iana" - }, - "audio/atrac3": { - source: "iana" - }, - "audio/basic": { - source: "iana", - compressible: false, - extensions: ["au", "snd"] - }, - "audio/bv16": { - source: "iana" - }, - "audio/bv32": { - source: "iana" - }, - "audio/clearmode": { - source: "iana" - }, - "audio/cn": { - source: "iana" - }, - "audio/dat12": { - source: "iana" - }, - "audio/dls": { - source: "iana" - }, - "audio/dsr-es201108": { - source: "iana" - }, - "audio/dsr-es202050": { - source: "iana" - }, - "audio/dsr-es202211": { - source: "iana" - }, - "audio/dsr-es202212": { - source: "iana" - }, - "audio/dv": { - source: "iana" - }, - "audio/dvi4": { - source: "iana" - }, - "audio/eac3": { - source: "iana" - }, - "audio/encaprtp": { - source: "iana" - }, - "audio/evrc": { - source: "iana" - }, - "audio/evrc-qcp": { - source: "iana" - }, - "audio/evrc0": { - source: "iana" - }, - "audio/evrc1": { - source: "iana" - }, - "audio/evrcb": { - source: "iana" - }, - "audio/evrcb0": { - source: "iana" - }, - "audio/evrcb1": { - source: "iana" - }, - "audio/evrcnw": { - source: "iana" - }, - "audio/evrcnw0": { - source: "iana" - }, - "audio/evrcnw1": { - source: "iana" - }, - "audio/evrcwb": { - source: "iana" - }, - "audio/evrcwb0": { - source: "iana" - }, - "audio/evrcwb1": { - source: "iana" - }, - "audio/evs": { - source: "iana" - }, - "audio/flexfec": { - source: "iana" - }, - "audio/fwdred": { - source: "iana" - }, - "audio/g711-0": { - source: "iana" - }, - "audio/g719": { - source: "iana" - }, - "audio/g722": { - source: "iana" - }, - "audio/g7221": { - source: "iana" - }, - "audio/g723": { - source: "iana" - }, - "audio/g726-16": { - source: "iana" - }, - "audio/g726-24": { - source: "iana" - }, - "audio/g726-32": { - source: "iana" - }, - "audio/g726-40": { - source: "iana" - }, - "audio/g728": { - source: "iana" - }, - "audio/g729": { - source: "iana" - }, - "audio/g7291": { - source: "iana" - }, - "audio/g729d": { - source: "iana" - }, - "audio/g729e": { - source: "iana" - }, - "audio/gsm": { - source: "iana" - }, - "audio/gsm-efr": { - source: "iana" - }, - "audio/gsm-hr-08": { - source: "iana" - }, - "audio/ilbc": { - source: "iana" - }, - "audio/ip-mr_v2.5": { - source: "iana" - }, - "audio/isac": { - source: "apache" - }, - "audio/l16": { - source: "iana" - }, - "audio/l20": { - source: "iana" - }, - "audio/l24": { - source: "iana", - compressible: false - }, - "audio/l8": { - source: "iana" - }, - "audio/lpc": { - source: "iana" - }, - "audio/melp": { - source: "iana" - }, - "audio/melp1200": { - source: "iana" - }, - "audio/melp2400": { - source: "iana" - }, - "audio/melp600": { - source: "iana" - }, - "audio/mhas": { - source: "iana" - }, - "audio/midi": { - source: "apache", - extensions: ["mid", "midi", "kar", "rmi"] - }, - "audio/mobile-xmf": { - source: "iana", - extensions: ["mxmf"] - }, - "audio/mp3": { - compressible: false, - extensions: ["mp3"] - }, - "audio/mp4": { - source: "iana", - compressible: false, - extensions: ["m4a", "mp4a"] - }, - "audio/mp4a-latm": { - source: "iana" - }, - "audio/mpa": { - source: "iana" - }, - "audio/mpa-robust": { - source: "iana" - }, - "audio/mpeg": { - source: "iana", - compressible: false, - extensions: ["mpga", "mp2", "mp2a", "mp3", "m2a", "m3a"] - }, - "audio/mpeg4-generic": { - source: "iana" - }, - "audio/musepack": { - source: "apache" - }, - "audio/ogg": { - source: "iana", - compressible: false, - extensions: ["oga", "ogg", "spx", "opus"] - }, - "audio/opus": { - source: "iana" - }, - "audio/parityfec": { - source: "iana" - }, - "audio/pcma": { - source: "iana" - }, - "audio/pcma-wb": { - source: "iana" - }, - "audio/pcmu": { - source: "iana" - }, - "audio/pcmu-wb": { - source: "iana" - }, - "audio/prs.sid": { - source: "iana" - }, - "audio/qcelp": { - source: "iana" - }, - "audio/raptorfec": { - source: "iana" - }, - "audio/red": { - source: "iana" - }, - "audio/rtp-enc-aescm128": { - source: "iana" - }, - "audio/rtp-midi": { - source: "iana" - }, - "audio/rtploopback": { - source: "iana" - }, - "audio/rtx": { - source: "iana" - }, - "audio/s3m": { - source: "apache", - extensions: ["s3m"] - }, - "audio/scip": { - source: "iana" - }, - "audio/silk": { - source: "apache", - extensions: ["sil"] - }, - "audio/smv": { - source: "iana" - }, - "audio/smv-qcp": { - source: "iana" - }, - "audio/smv0": { - source: "iana" - }, - "audio/sofa": { - source: "iana" - }, - "audio/sp-midi": { - source: "iana" - }, - "audio/speex": { - source: "iana" - }, - "audio/t140c": { - source: "iana" - }, - "audio/t38": { - source: "iana" - }, - "audio/telephone-event": { - source: "iana" - }, - "audio/tetra_acelp": { - source: "iana" - }, - "audio/tetra_acelp_bb": { - source: "iana" - }, - "audio/tone": { - source: "iana" - }, - "audio/tsvcis": { - source: "iana" - }, - "audio/uemclip": { - source: "iana" - }, - "audio/ulpfec": { - source: "iana" - }, - "audio/usac": { - source: "iana" - }, - "audio/vdvi": { - source: "iana" - }, - "audio/vmr-wb": { - source: "iana" - }, - "audio/vnd.3gpp.iufp": { - source: "iana" - }, - "audio/vnd.4sb": { - source: "iana" - }, - "audio/vnd.audiokoz": { - source: "iana" - }, - "audio/vnd.celp": { - source: "iana" - }, - "audio/vnd.cisco.nse": { - source: "iana" - }, - "audio/vnd.cmles.radio-events": { - source: "iana" - }, - "audio/vnd.cns.anp1": { - source: "iana" - }, - "audio/vnd.cns.inf1": { - source: "iana" - }, - "audio/vnd.dece.audio": { - source: "iana", - extensions: ["uva", "uvva"] - }, - "audio/vnd.digital-winds": { - source: "iana", - extensions: ["eol"] - }, - "audio/vnd.dlna.adts": { - source: "iana" - }, - "audio/vnd.dolby.heaac.1": { - source: "iana" - }, - "audio/vnd.dolby.heaac.2": { - source: "iana" - }, - "audio/vnd.dolby.mlp": { - source: "iana" - }, - "audio/vnd.dolby.mps": { - source: "iana" - }, - "audio/vnd.dolby.pl2": { - source: "iana" - }, - "audio/vnd.dolby.pl2x": { - source: "iana" - }, - "audio/vnd.dolby.pl2z": { - source: "iana" - }, - "audio/vnd.dolby.pulse.1": { - source: "iana" - }, - "audio/vnd.dra": { - source: "iana", - extensions: ["dra"] - }, - "audio/vnd.dts": { - source: "iana", - extensions: ["dts"] - }, - "audio/vnd.dts.hd": { - source: "iana", - extensions: ["dtshd"] - }, - "audio/vnd.dts.uhd": { - source: "iana" - }, - "audio/vnd.dvb.file": { - source: "iana" - }, - "audio/vnd.everad.plj": { - source: "iana" - }, - "audio/vnd.hns.audio": { - source: "iana" - }, - "audio/vnd.lucent.voice": { - source: "iana", - extensions: ["lvp"] - }, - "audio/vnd.ms-playready.media.pya": { - source: "iana", - extensions: ["pya"] - }, - "audio/vnd.nokia.mobile-xmf": { - source: "iana" - }, - "audio/vnd.nortel.vbk": { - source: "iana" - }, - "audio/vnd.nuera.ecelp4800": { - source: "iana", - extensions: ["ecelp4800"] - }, - "audio/vnd.nuera.ecelp7470": { - source: "iana", - extensions: ["ecelp7470"] - }, - "audio/vnd.nuera.ecelp9600": { - source: "iana", - extensions: ["ecelp9600"] - }, - "audio/vnd.octel.sbc": { - source: "iana" - }, - "audio/vnd.presonus.multitrack": { - source: "iana" - }, - "audio/vnd.qcelp": { - source: "iana" - }, - "audio/vnd.rhetorex.32kadpcm": { - source: "iana" - }, - "audio/vnd.rip": { - source: "iana", - extensions: ["rip"] - }, - "audio/vnd.rn-realaudio": { - compressible: false - }, - "audio/vnd.sealedmedia.softseal.mpeg": { - source: "iana" - }, - "audio/vnd.vmx.cvsd": { - source: "iana" - }, - "audio/vnd.wave": { - compressible: false - }, - "audio/vorbis": { - source: "iana", - compressible: false - }, - "audio/vorbis-config": { - source: "iana" - }, - "audio/wav": { - compressible: false, - extensions: ["wav"] - }, - "audio/wave": { - compressible: false, - extensions: ["wav"] - }, - "audio/webm": { - source: "apache", - compressible: false, - extensions: ["weba"] - }, - "audio/x-aac": { - source: "apache", - compressible: false, - extensions: ["aac"] - }, - "audio/x-aiff": { - source: "apache", - extensions: ["aif", "aiff", "aifc"] - }, - "audio/x-caf": { - source: "apache", - compressible: false, - extensions: ["caf"] - }, - "audio/x-flac": { - source: "apache", - extensions: ["flac"] - }, - "audio/x-m4a": { - source: "nginx", - extensions: ["m4a"] - }, - "audio/x-matroska": { - source: "apache", - extensions: ["mka"] - }, - "audio/x-mpegurl": { - source: "apache", - extensions: ["m3u"] - }, - "audio/x-ms-wax": { - source: "apache", - extensions: ["wax"] - }, - "audio/x-ms-wma": { - source: "apache", - extensions: ["wma"] - }, - "audio/x-pn-realaudio": { - source: "apache", - extensions: ["ram", "ra"] - }, - "audio/x-pn-realaudio-plugin": { - source: "apache", - extensions: ["rmp"] - }, - "audio/x-realaudio": { - source: "nginx", - extensions: ["ra"] - }, - "audio/x-tta": { - source: "apache" - }, - "audio/x-wav": { - source: "apache", - extensions: ["wav"] - }, - "audio/xm": { - source: "apache", - extensions: ["xm"] - }, - "chemical/x-cdx": { - source: "apache", - extensions: ["cdx"] - }, - "chemical/x-cif": { - source: "apache", - extensions: ["cif"] - }, - "chemical/x-cmdf": { - source: "apache", - extensions: ["cmdf"] - }, - "chemical/x-cml": { - source: "apache", - extensions: ["cml"] - }, - "chemical/x-csml": { - source: "apache", - extensions: ["csml"] - }, - "chemical/x-pdb": { - source: "apache" - }, - "chemical/x-xyz": { - source: "apache", - extensions: ["xyz"] - }, - "font/collection": { - source: "iana", - extensions: ["ttc"] - }, - "font/otf": { - source: "iana", - compressible: true, - extensions: ["otf"] - }, - "font/sfnt": { - source: "iana" - }, - "font/ttf": { - source: "iana", - compressible: true, - extensions: ["ttf"] - }, - "font/woff": { - source: "iana", - extensions: ["woff"] - }, - "font/woff2": { - source: "iana", - extensions: ["woff2"] - }, - "image/aces": { - source: "iana", - extensions: ["exr"] - }, - "image/apng": { - compressible: false, - extensions: ["apng"] - }, - "image/avci": { - source: "iana", - extensions: ["avci"] - }, - "image/avcs": { - source: "iana", - extensions: ["avcs"] - }, - "image/avif": { - source: "iana", - compressible: false, - extensions: ["avif"] - }, - "image/bmp": { - source: "iana", - compressible: true, - extensions: ["bmp"] - }, - "image/cgm": { - source: "iana", - extensions: ["cgm"] - }, - "image/dicom-rle": { - source: "iana", - extensions: ["drle"] - }, - "image/emf": { - source: "iana", - extensions: ["emf"] - }, - "image/fits": { - source: "iana", - extensions: ["fits"] - }, - "image/g3fax": { - source: "iana", - extensions: ["g3"] - }, - "image/gif": { - source: "iana", - compressible: false, - extensions: ["gif"] - }, - "image/heic": { - source: "iana", - extensions: ["heic"] - }, - "image/heic-sequence": { - source: "iana", - extensions: ["heics"] - }, - "image/heif": { - source: "iana", - extensions: ["heif"] - }, - "image/heif-sequence": { - source: "iana", - extensions: ["heifs"] - }, - "image/hej2k": { - source: "iana", - extensions: ["hej2"] - }, - "image/hsj2": { - source: "iana", - extensions: ["hsj2"] - }, - "image/ief": { - source: "iana", - extensions: ["ief"] - }, - "image/jls": { - source: "iana", - extensions: ["jls"] - }, - "image/jp2": { - source: "iana", - compressible: false, - extensions: ["jp2", "jpg2"] - }, - "image/jpeg": { - source: "iana", - compressible: false, - extensions: ["jpeg", "jpg", "jpe"] - }, - "image/jph": { - source: "iana", - extensions: ["jph"] - }, - "image/jphc": { - source: "iana", - extensions: ["jhc"] - }, - "image/jpm": { - source: "iana", - compressible: false, - extensions: ["jpm"] - }, - "image/jpx": { - source: "iana", - compressible: false, - extensions: ["jpx", "jpf"] - }, - "image/jxr": { - source: "iana", - extensions: ["jxr"] - }, - "image/jxra": { - source: "iana", - extensions: ["jxra"] - }, - "image/jxrs": { - source: "iana", - extensions: ["jxrs"] - }, - "image/jxs": { - source: "iana", - extensions: ["jxs"] - }, - "image/jxsc": { - source: "iana", - extensions: ["jxsc"] - }, - "image/jxsi": { - source: "iana", - extensions: ["jxsi"] - }, - "image/jxss": { - source: "iana", - extensions: ["jxss"] - }, - "image/ktx": { - source: "iana", - extensions: ["ktx"] - }, - "image/ktx2": { - source: "iana", - extensions: ["ktx2"] - }, - "image/naplps": { - source: "iana" - }, - "image/pjpeg": { - compressible: false - }, - "image/png": { - source: "iana", - compressible: false, - extensions: ["png"] - }, - "image/prs.btif": { - source: "iana", - extensions: ["btif"] - }, - "image/prs.pti": { - source: "iana", - extensions: ["pti"] - }, - "image/pwg-raster": { - source: "iana" - }, - "image/sgi": { - source: "apache", - extensions: ["sgi"] - }, - "image/svg+xml": { - source: "iana", - compressible: true, - extensions: ["svg", "svgz"] - }, - "image/t38": { - source: "iana", - extensions: ["t38"] - }, - "image/tiff": { - source: "iana", - compressible: false, - extensions: ["tif", "tiff"] - }, - "image/tiff-fx": { - source: "iana", - extensions: ["tfx"] - }, - "image/vnd.adobe.photoshop": { - source: "iana", - compressible: true, - extensions: ["psd"] - }, - "image/vnd.airzip.accelerator.azv": { - source: "iana", - extensions: ["azv"] - }, - "image/vnd.cns.inf2": { - source: "iana" - }, - "image/vnd.dece.graphic": { - source: "iana", - extensions: ["uvi", "uvvi", "uvg", "uvvg"] - }, - "image/vnd.djvu": { - source: "iana", - extensions: ["djvu", "djv"] - }, - "image/vnd.dvb.subtitle": { - source: "iana", - extensions: ["sub"] - }, - "image/vnd.dwg": { - source: "iana", - extensions: ["dwg"] - }, - "image/vnd.dxf": { - source: "iana", - extensions: ["dxf"] - }, - "image/vnd.fastbidsheet": { - source: "iana", - extensions: ["fbs"] - }, - "image/vnd.fpx": { - source: "iana", - extensions: ["fpx"] - }, - "image/vnd.fst": { - source: "iana", - extensions: ["fst"] - }, - "image/vnd.fujixerox.edmics-mmr": { - source: "iana", - extensions: ["mmr"] - }, - "image/vnd.fujixerox.edmics-rlc": { - source: "iana", - extensions: ["rlc"] - }, - "image/vnd.globalgraphics.pgb": { - source: "iana" - }, - "image/vnd.microsoft.icon": { - source: "iana", - compressible: true, - extensions: ["ico"] - }, - "image/vnd.mix": { - source: "iana" - }, - "image/vnd.mozilla.apng": { - source: "iana" - }, - "image/vnd.ms-dds": { - compressible: true, - extensions: ["dds"] - }, - "image/vnd.ms-modi": { - source: "iana", - extensions: ["mdi"] - }, - "image/vnd.ms-photo": { - source: "apache", - extensions: ["wdp"] - }, - "image/vnd.net-fpx": { - source: "iana", - extensions: ["npx"] - }, - "image/vnd.pco.b16": { - source: "iana", - extensions: ["b16"] - }, - "image/vnd.radiance": { - source: "iana" - }, - "image/vnd.sealed.png": { - source: "iana" - }, - "image/vnd.sealedmedia.softseal.gif": { - source: "iana" - }, - "image/vnd.sealedmedia.softseal.jpg": { - source: "iana" - }, - "image/vnd.svf": { - source: "iana" - }, - "image/vnd.tencent.tap": { - source: "iana", - extensions: ["tap"] - }, - "image/vnd.valve.source.texture": { - source: "iana", - extensions: ["vtf"] - }, - "image/vnd.wap.wbmp": { - source: "iana", - extensions: ["wbmp"] - }, - "image/vnd.xiff": { - source: "iana", - extensions: ["xif"] - }, - "image/vnd.zbrush.pcx": { - source: "iana", - extensions: ["pcx"] - }, - "image/webp": { - source: "apache", - extensions: ["webp"] - }, - "image/wmf": { - source: "iana", - extensions: ["wmf"] - }, - "image/x-3ds": { - source: "apache", - extensions: ["3ds"] - }, - "image/x-cmu-raster": { - source: "apache", - extensions: ["ras"] - }, - "image/x-cmx": { - source: "apache", - extensions: ["cmx"] - }, - "image/x-freehand": { - source: "apache", - extensions: ["fh", "fhc", "fh4", "fh5", "fh7"] - }, - "image/x-icon": { - source: "apache", - compressible: true, - extensions: ["ico"] - }, - "image/x-jng": { - source: "nginx", - extensions: ["jng"] - }, - "image/x-mrsid-image": { - source: "apache", - extensions: ["sid"] - }, - "image/x-ms-bmp": { - source: "nginx", - compressible: true, - extensions: ["bmp"] - }, - "image/x-pcx": { - source: "apache", - extensions: ["pcx"] - }, - "image/x-pict": { - source: "apache", - extensions: ["pic", "pct"] - }, - "image/x-portable-anymap": { - source: "apache", - extensions: ["pnm"] - }, - "image/x-portable-bitmap": { - source: "apache", - extensions: ["pbm"] - }, - "image/x-portable-graymap": { - source: "apache", - extensions: ["pgm"] - }, - "image/x-portable-pixmap": { - source: "apache", - extensions: ["ppm"] - }, - "image/x-rgb": { - source: "apache", - extensions: ["rgb"] - }, - "image/x-tga": { - source: "apache", - extensions: ["tga"] - }, - "image/x-xbitmap": { - source: "apache", - extensions: ["xbm"] - }, - "image/x-xcf": { - compressible: false - }, - "image/x-xpixmap": { - source: "apache", - extensions: ["xpm"] - }, - "image/x-xwindowdump": { - source: "apache", - extensions: ["xwd"] - }, - "message/cpim": { - source: "iana" - }, - "message/delivery-status": { - source: "iana" - }, - "message/disposition-notification": { - source: "iana", - extensions: [ - "disposition-notification" - ] - }, - "message/external-body": { - source: "iana" - }, - "message/feedback-report": { - source: "iana" - }, - "message/global": { - source: "iana", - extensions: ["u8msg"] - }, - "message/global-delivery-status": { - source: "iana", - extensions: ["u8dsn"] - }, - "message/global-disposition-notification": { - source: "iana", - extensions: ["u8mdn"] - }, - "message/global-headers": { - source: "iana", - extensions: ["u8hdr"] - }, - "message/http": { - source: "iana", - compressible: false - }, - "message/imdn+xml": { - source: "iana", - compressible: true - }, - "message/news": { - source: "iana" - }, - "message/partial": { - source: "iana", - compressible: false - }, - "message/rfc822": { - source: "iana", - compressible: true, - extensions: ["eml", "mime"] - }, - "message/s-http": { - source: "iana" - }, - "message/sip": { - source: "iana" - }, - "message/sipfrag": { - source: "iana" - }, - "message/tracking-status": { - source: "iana" - }, - "message/vnd.si.simp": { - source: "iana" - }, - "message/vnd.wfa.wsc": { - source: "iana", - extensions: ["wsc"] - }, - "model/3mf": { - source: "iana", - extensions: ["3mf"] - }, - "model/e57": { - source: "iana" - }, - "model/gltf+json": { - source: "iana", - compressible: true, - extensions: ["gltf"] - }, - "model/gltf-binary": { - source: "iana", - compressible: true, - extensions: ["glb"] - }, - "model/iges": { - source: "iana", - compressible: false, - extensions: ["igs", "iges"] - }, - "model/mesh": { - source: "iana", - compressible: false, - extensions: ["msh", "mesh", "silo"] - }, - "model/mtl": { - source: "iana", - extensions: ["mtl"] - }, - "model/obj": { - source: "iana", - extensions: ["obj"] - }, - "model/step": { - source: "iana" - }, - "model/step+xml": { - source: "iana", - compressible: true, - extensions: ["stpx"] - }, - "model/step+zip": { - source: "iana", - compressible: false, - extensions: ["stpz"] - }, - "model/step-xml+zip": { - source: "iana", - compressible: false, - extensions: ["stpxz"] - }, - "model/stl": { - source: "iana", - extensions: ["stl"] - }, - "model/vnd.collada+xml": { - source: "iana", - compressible: true, - extensions: ["dae"] - }, - "model/vnd.dwf": { - source: "iana", - extensions: ["dwf"] - }, - "model/vnd.flatland.3dml": { - source: "iana" - }, - "model/vnd.gdl": { - source: "iana", - extensions: ["gdl"] - }, - "model/vnd.gs-gdl": { - source: "apache" - }, - "model/vnd.gs.gdl": { - source: "iana" - }, - "model/vnd.gtw": { - source: "iana", - extensions: ["gtw"] - }, - "model/vnd.moml+xml": { - source: "iana", - compressible: true - }, - "model/vnd.mts": { - source: "iana", - extensions: ["mts"] - }, - "model/vnd.opengex": { - source: "iana", - extensions: ["ogex"] - }, - "model/vnd.parasolid.transmit.binary": { - source: "iana", - extensions: ["x_b"] - }, - "model/vnd.parasolid.transmit.text": { - source: "iana", - extensions: ["x_t"] - }, - "model/vnd.pytha.pyox": { - source: "iana" - }, - "model/vnd.rosette.annotated-data-model": { - source: "iana" - }, - "model/vnd.sap.vds": { - source: "iana", - extensions: ["vds"] - }, - "model/vnd.usdz+zip": { - source: "iana", - compressible: false, - extensions: ["usdz"] - }, - "model/vnd.valve.source.compiled-map": { - source: "iana", - extensions: ["bsp"] - }, - "model/vnd.vtu": { - source: "iana", - extensions: ["vtu"] - }, - "model/vrml": { - source: "iana", - compressible: false, - extensions: ["wrl", "vrml"] - }, - "model/x3d+binary": { - source: "apache", - compressible: false, - extensions: ["x3db", "x3dbz"] - }, - "model/x3d+fastinfoset": { - source: "iana", - extensions: ["x3db"] - }, - "model/x3d+vrml": { - source: "apache", - compressible: false, - extensions: ["x3dv", "x3dvz"] - }, - "model/x3d+xml": { - source: "iana", - compressible: true, - extensions: ["x3d", "x3dz"] - }, - "model/x3d-vrml": { - source: "iana", - extensions: ["x3dv"] - }, - "multipart/alternative": { - source: "iana", - compressible: false - }, - "multipart/appledouble": { - source: "iana" - }, - "multipart/byteranges": { - source: "iana" - }, - "multipart/digest": { - source: "iana" - }, - "multipart/encrypted": { - source: "iana", - compressible: false - }, - "multipart/form-data": { - source: "iana", - compressible: false - }, - "multipart/header-set": { - source: "iana" - }, - "multipart/mixed": { - source: "iana" - }, - "multipart/multilingual": { - source: "iana" - }, - "multipart/parallel": { - source: "iana" - }, - "multipart/related": { - source: "iana", - compressible: false - }, - "multipart/report": { - source: "iana" - }, - "multipart/signed": { - source: "iana", - compressible: false - }, - "multipart/vnd.bint.med-plus": { - source: "iana" - }, - "multipart/voice-message": { - source: "iana" - }, - "multipart/x-mixed-replace": { - source: "iana" - }, - "text/1d-interleaved-parityfec": { - source: "iana" - }, - "text/cache-manifest": { - source: "iana", - compressible: true, - extensions: ["appcache", "manifest"] - }, - "text/calendar": { - source: "iana", - extensions: ["ics", "ifb"] - }, - "text/calender": { - compressible: true - }, - "text/cmd": { - compressible: true - }, - "text/coffeescript": { - extensions: ["coffee", "litcoffee"] - }, - "text/cql": { - source: "iana" - }, - "text/cql-expression": { - source: "iana" - }, - "text/cql-identifier": { - source: "iana" - }, - "text/css": { - source: "iana", - charset: "UTF-8", - compressible: true, - extensions: ["css"] - }, - "text/csv": { - source: "iana", - compressible: true, - extensions: ["csv"] - }, - "text/csv-schema": { - source: "iana" - }, - "text/directory": { - source: "iana" - }, - "text/dns": { - source: "iana" - }, - "text/ecmascript": { - source: "iana" - }, - "text/encaprtp": { - source: "iana" - }, - "text/enriched": { - source: "iana" - }, - "text/fhirpath": { - source: "iana" - }, - "text/flexfec": { - source: "iana" - }, - "text/fwdred": { - source: "iana" - }, - "text/gff3": { - source: "iana" - }, - "text/grammar-ref-list": { - source: "iana" - }, - "text/html": { - source: "iana", - compressible: true, - extensions: ["html", "htm", "shtml"] - }, - "text/jade": { - extensions: ["jade"] - }, - "text/javascript": { - source: "iana", - compressible: true - }, - "text/jcr-cnd": { - source: "iana" - }, - "text/jsx": { - compressible: true, - extensions: ["jsx"] - }, - "text/less": { - compressible: true, - extensions: ["less"] - }, - "text/markdown": { - source: "iana", - compressible: true, - extensions: ["markdown", "md"] - }, - "text/mathml": { - source: "nginx", - extensions: ["mml"] - }, - "text/mdx": { - compressible: true, - extensions: ["mdx"] - }, - "text/mizar": { - source: "iana" - }, - "text/n3": { - source: "iana", - charset: "UTF-8", - compressible: true, - extensions: ["n3"] - }, - "text/parameters": { - source: "iana", - charset: "UTF-8" - }, - "text/parityfec": { - source: "iana" - }, - "text/plain": { - source: "iana", - compressible: true, - extensions: ["txt", "text", "conf", "def", "list", "log", "in", "ini"] - }, - "text/provenance-notation": { - source: "iana", - charset: "UTF-8" - }, - "text/prs.fallenstein.rst": { - source: "iana" - }, - "text/prs.lines.tag": { - source: "iana", - extensions: ["dsc"] - }, - "text/prs.prop.logic": { - source: "iana" - }, - "text/raptorfec": { - source: "iana" - }, - "text/red": { - source: "iana" - }, - "text/rfc822-headers": { - source: "iana" - }, - "text/richtext": { - source: "iana", - compressible: true, - extensions: ["rtx"] - }, - "text/rtf": { - source: "iana", - compressible: true, - extensions: ["rtf"] - }, - "text/rtp-enc-aescm128": { - source: "iana" - }, - "text/rtploopback": { - source: "iana" - }, - "text/rtx": { - source: "iana" - }, - "text/sgml": { - source: "iana", - extensions: ["sgml", "sgm"] - }, - "text/shaclc": { - source: "iana" - }, - "text/shex": { - source: "iana", - extensions: ["shex"] - }, - "text/slim": { - extensions: ["slim", "slm"] - }, - "text/spdx": { - source: "iana", - extensions: ["spdx"] - }, - "text/strings": { - source: "iana" - }, - "text/stylus": { - extensions: ["stylus", "styl"] - }, - "text/t140": { - source: "iana" - }, - "text/tab-separated-values": { - source: "iana", - compressible: true, - extensions: ["tsv"] - }, - "text/troff": { - source: "iana", - extensions: ["t", "tr", "roff", "man", "me", "ms"] - }, - "text/turtle": { - source: "iana", - charset: "UTF-8", - extensions: ["ttl"] - }, - "text/ulpfec": { - source: "iana" - }, - "text/uri-list": { - source: "iana", - compressible: true, - extensions: ["uri", "uris", "urls"] - }, - "text/vcard": { - source: "iana", - compressible: true, - extensions: ["vcard"] - }, - "text/vnd.a": { - source: "iana" - }, - "text/vnd.abc": { - source: "iana" - }, - "text/vnd.ascii-art": { - source: "iana" - }, - "text/vnd.curl": { - source: "iana", - extensions: ["curl"] - }, - "text/vnd.curl.dcurl": { - source: "apache", - extensions: ["dcurl"] - }, - "text/vnd.curl.mcurl": { - source: "apache", - extensions: ["mcurl"] - }, - "text/vnd.curl.scurl": { - source: "apache", - extensions: ["scurl"] - }, - "text/vnd.debian.copyright": { - source: "iana", - charset: "UTF-8" - }, - "text/vnd.dmclientscript": { - source: "iana" - }, - "text/vnd.dvb.subtitle": { - source: "iana", - extensions: ["sub"] - }, - "text/vnd.esmertec.theme-descriptor": { - source: "iana", - charset: "UTF-8" - }, - "text/vnd.familysearch.gedcom": { - source: "iana", - extensions: ["ged"] - }, - "text/vnd.ficlab.flt": { - source: "iana" - }, - "text/vnd.fly": { - source: "iana", - extensions: ["fly"] - }, - "text/vnd.fmi.flexstor": { - source: "iana", - extensions: ["flx"] - }, - "text/vnd.gml": { - source: "iana" - }, - "text/vnd.graphviz": { - source: "iana", - extensions: ["gv"] - }, - "text/vnd.hans": { - source: "iana" - }, - "text/vnd.hgl": { - source: "iana" - }, - "text/vnd.in3d.3dml": { - source: "iana", - extensions: ["3dml"] - }, - "text/vnd.in3d.spot": { - source: "iana", - extensions: ["spot"] - }, - "text/vnd.iptc.newsml": { - source: "iana" - }, - "text/vnd.iptc.nitf": { - source: "iana" - }, - "text/vnd.latex-z": { - source: "iana" - }, - "text/vnd.motorola.reflex": { - source: "iana" - }, - "text/vnd.ms-mediapackage": { - source: "iana" - }, - "text/vnd.net2phone.commcenter.command": { - source: "iana" - }, - "text/vnd.radisys.msml-basic-layout": { - source: "iana" - }, - "text/vnd.senx.warpscript": { - source: "iana" - }, - "text/vnd.si.uricatalogue": { - source: "iana" - }, - "text/vnd.sosi": { - source: "iana" - }, - "text/vnd.sun.j2me.app-descriptor": { - source: "iana", - charset: "UTF-8", - extensions: ["jad"] - }, - "text/vnd.trolltech.linguist": { - source: "iana", - charset: "UTF-8" - }, - "text/vnd.wap.si": { - source: "iana" - }, - "text/vnd.wap.sl": { - source: "iana" - }, - "text/vnd.wap.wml": { - source: "iana", - extensions: ["wml"] - }, - "text/vnd.wap.wmlscript": { - source: "iana", - extensions: ["wmls"] - }, - "text/vtt": { - source: "iana", - charset: "UTF-8", - compressible: true, - extensions: ["vtt"] - }, - "text/x-asm": { - source: "apache", - extensions: ["s", "asm"] - }, - "text/x-c": { - source: "apache", - extensions: ["c", "cc", "cxx", "cpp", "h", "hh", "dic"] - }, - "text/x-component": { - source: "nginx", - extensions: ["htc"] - }, - "text/x-fortran": { - source: "apache", - extensions: ["f", "for", "f77", "f90"] - }, - "text/x-gwt-rpc": { - compressible: true - }, - "text/x-handlebars-template": { - extensions: ["hbs"] - }, - "text/x-java-source": { - source: "apache", - extensions: ["java"] - }, - "text/x-jquery-tmpl": { - compressible: true - }, - "text/x-lua": { - extensions: ["lua"] - }, - "text/x-markdown": { - compressible: true, - extensions: ["mkd"] - }, - "text/x-nfo": { - source: "apache", - extensions: ["nfo"] - }, - "text/x-opml": { - source: "apache", - extensions: ["opml"] - }, - "text/x-org": { - compressible: true, - extensions: ["org"] - }, - "text/x-pascal": { - source: "apache", - extensions: ["p", "pas"] - }, - "text/x-processing": { - compressible: true, - extensions: ["pde"] - }, - "text/x-sass": { - extensions: ["sass"] - }, - "text/x-scss": { - extensions: ["scss"] - }, - "text/x-setext": { - source: "apache", - extensions: ["etx"] - }, - "text/x-sfv": { - source: "apache", - extensions: ["sfv"] - }, - "text/x-suse-ymp": { - compressible: true, - extensions: ["ymp"] - }, - "text/x-uuencode": { - source: "apache", - extensions: ["uu"] - }, - "text/x-vcalendar": { - source: "apache", - extensions: ["vcs"] - }, - "text/x-vcard": { - source: "apache", - extensions: ["vcf"] - }, - "text/xml": { - source: "iana", - compressible: true, - extensions: ["xml"] - }, - "text/xml-external-parsed-entity": { - source: "iana" - }, - "text/yaml": { - compressible: true, - extensions: ["yaml", "yml"] - }, - "video/1d-interleaved-parityfec": { - source: "iana" - }, - "video/3gpp": { - source: "iana", - extensions: ["3gp", "3gpp"] - }, - "video/3gpp-tt": { - source: "iana" - }, - "video/3gpp2": { - source: "iana", - extensions: ["3g2"] - }, - "video/av1": { - source: "iana" - }, - "video/bmpeg": { - source: "iana" - }, - "video/bt656": { - source: "iana" - }, - "video/celb": { - source: "iana" - }, - "video/dv": { - source: "iana" - }, - "video/encaprtp": { - source: "iana" - }, - "video/ffv1": { - source: "iana" - }, - "video/flexfec": { - source: "iana" - }, - "video/h261": { - source: "iana", - extensions: ["h261"] - }, - "video/h263": { - source: "iana", - extensions: ["h263"] - }, - "video/h263-1998": { - source: "iana" - }, - "video/h263-2000": { - source: "iana" - }, - "video/h264": { - source: "iana", - extensions: ["h264"] - }, - "video/h264-rcdo": { - source: "iana" - }, - "video/h264-svc": { - source: "iana" - }, - "video/h265": { - source: "iana" - }, - "video/iso.segment": { - source: "iana", - extensions: ["m4s"] - }, - "video/jpeg": { - source: "iana", - extensions: ["jpgv"] - }, - "video/jpeg2000": { - source: "iana" - }, - "video/jpm": { - source: "apache", - extensions: ["jpm", "jpgm"] - }, - "video/jxsv": { - source: "iana" - }, - "video/mj2": { - source: "iana", - extensions: ["mj2", "mjp2"] - }, - "video/mp1s": { - source: "iana" - }, - "video/mp2p": { - source: "iana" - }, - "video/mp2t": { - source: "iana", - extensions: ["ts"] - }, - "video/mp4": { - source: "iana", - compressible: false, - extensions: ["mp4", "mp4v", "mpg4"] - }, - "video/mp4v-es": { - source: "iana" - }, - "video/mpeg": { - source: "iana", - compressible: false, - extensions: ["mpeg", "mpg", "mpe", "m1v", "m2v"] - }, - "video/mpeg4-generic": { - source: "iana" - }, - "video/mpv": { - source: "iana" - }, - "video/nv": { - source: "iana" - }, - "video/ogg": { - source: "iana", - compressible: false, - extensions: ["ogv"] - }, - "video/parityfec": { - source: "iana" - }, - "video/pointer": { - source: "iana" - }, - "video/quicktime": { - source: "iana", - compressible: false, - extensions: ["qt", "mov"] - }, - "video/raptorfec": { - source: "iana" - }, - "video/raw": { - source: "iana" - }, - "video/rtp-enc-aescm128": { - source: "iana" - }, - "video/rtploopback": { - source: "iana" - }, - "video/rtx": { - source: "iana" - }, - "video/scip": { - source: "iana" - }, - "video/smpte291": { - source: "iana" - }, - "video/smpte292m": { - source: "iana" - }, - "video/ulpfec": { - source: "iana" - }, - "video/vc1": { - source: "iana" - }, - "video/vc2": { - source: "iana" - }, - "video/vnd.cctv": { - source: "iana" - }, - "video/vnd.dece.hd": { - source: "iana", - extensions: ["uvh", "uvvh"] - }, - "video/vnd.dece.mobile": { - source: "iana", - extensions: ["uvm", "uvvm"] - }, - "video/vnd.dece.mp4": { - source: "iana" - }, - "video/vnd.dece.pd": { - source: "iana", - extensions: ["uvp", "uvvp"] - }, - "video/vnd.dece.sd": { - source: "iana", - extensions: ["uvs", "uvvs"] - }, - "video/vnd.dece.video": { - source: "iana", - extensions: ["uvv", "uvvv"] - }, - "video/vnd.directv.mpeg": { - source: "iana" - }, - "video/vnd.directv.mpeg-tts": { - source: "iana" - }, - "video/vnd.dlna.mpeg-tts": { - source: "iana" - }, - "video/vnd.dvb.file": { - source: "iana", - extensions: ["dvb"] - }, - "video/vnd.fvt": { - source: "iana", - extensions: ["fvt"] - }, - "video/vnd.hns.video": { - source: "iana" - }, - "video/vnd.iptvforum.1dparityfec-1010": { - source: "iana" - }, - "video/vnd.iptvforum.1dparityfec-2005": { - source: "iana" - }, - "video/vnd.iptvforum.2dparityfec-1010": { - source: "iana" - }, - "video/vnd.iptvforum.2dparityfec-2005": { - source: "iana" - }, - "video/vnd.iptvforum.ttsavc": { - source: "iana" - }, - "video/vnd.iptvforum.ttsmpeg2": { - source: "iana" - }, - "video/vnd.motorola.video": { - source: "iana" - }, - "video/vnd.motorola.videop": { - source: "iana" - }, - "video/vnd.mpegurl": { - source: "iana", - extensions: ["mxu", "m4u"] - }, - "video/vnd.ms-playready.media.pyv": { - source: "iana", - extensions: ["pyv"] - }, - "video/vnd.nokia.interleaved-multimedia": { - source: "iana" - }, - "video/vnd.nokia.mp4vr": { - source: "iana" - }, - "video/vnd.nokia.videovoip": { - source: "iana" - }, - "video/vnd.objectvideo": { - source: "iana" - }, - "video/vnd.radgamettools.bink": { - source: "iana" - }, - "video/vnd.radgamettools.smacker": { - source: "iana" - }, - "video/vnd.sealed.mpeg1": { - source: "iana" - }, - "video/vnd.sealed.mpeg4": { - source: "iana" - }, - "video/vnd.sealed.swf": { - source: "iana" - }, - "video/vnd.sealedmedia.softseal.mov": { - source: "iana" - }, - "video/vnd.uvvu.mp4": { - source: "iana", - extensions: ["uvu", "uvvu"] - }, - "video/vnd.vivo": { - source: "iana", - extensions: ["viv"] - }, - "video/vnd.youtube.yt": { - source: "iana" - }, - "video/vp8": { - source: "iana" - }, - "video/vp9": { - source: "iana" - }, - "video/webm": { - source: "apache", - compressible: false, - extensions: ["webm"] - }, - "video/x-f4v": { - source: "apache", - extensions: ["f4v"] - }, - "video/x-fli": { - source: "apache", - extensions: ["fli"] - }, - "video/x-flv": { - source: "apache", - compressible: false, - extensions: ["flv"] - }, - "video/x-m4v": { - source: "apache", - extensions: ["m4v"] - }, - "video/x-matroska": { - source: "apache", - compressible: false, - extensions: ["mkv", "mk3d", "mks"] - }, - "video/x-mng": { - source: "apache", - extensions: ["mng"] - }, - "video/x-ms-asf": { - source: "apache", - extensions: ["asf", "asx"] - }, - "video/x-ms-vob": { - source: "apache", - extensions: ["vob"] - }, - "video/x-ms-wm": { - source: "apache", - extensions: ["wm"] - }, - "video/x-ms-wmv": { - source: "apache", - compressible: false, - extensions: ["wmv"] - }, - "video/x-ms-wmx": { - source: "apache", - extensions: ["wmx"] - }, - "video/x-ms-wvx": { - source: "apache", - extensions: ["wvx"] - }, - "video/x-msvideo": { - source: "apache", - extensions: ["avi"] - }, - "video/x-sgi-movie": { - source: "apache", - extensions: ["movie"] - }, - "video/x-smv": { - source: "apache", - extensions: ["smv"] - }, - "x-conference/x-cooltalk": { - source: "apache", - extensions: ["ice"] - }, - "x-shader/x-fragment": { - compressible: true - }, - "x-shader/x-vertex": { - compressible: true - } - }; - } -}); - -// node_modules/mime-db/index.js -var require_mime_db = __commonJS({ - "node_modules/mime-db/index.js"(exports2, module2) { - "use strict"; - module2.exports = require_db(); - } -}); - -// node_modules/mime-types/index.js -var require_mime_types = __commonJS({ - "node_modules/mime-types/index.js"(exports2) { - "use strict"; - var db = require_mime_db(); - var extname = (__nccwpck_require__(16928).extname); - var EXTRACT_TYPE_REGEXP = /^\s*([^;\s]*)(?:;|\s|$)/; - var TEXT_TYPE_REGEXP = /^text\//i; - exports2.charset = charset; - exports2.charsets = { lookup: charset }; - exports2.contentType = contentType; - exports2.extension = extension; - exports2.extensions = /* @__PURE__ */ Object.create(null); - exports2.lookup = lookup; - exports2.types = /* @__PURE__ */ Object.create(null); - populateMaps(exports2.extensions, exports2.types); - function charset(type) { - if (!type || typeof type !== "string") { - return false; - } - var match = EXTRACT_TYPE_REGEXP.exec(type); - var mime = match && db[match[1].toLowerCase()]; - if (mime && mime.charset) { - return mime.charset; - } - if (match && TEXT_TYPE_REGEXP.test(match[1])) { - return "UTF-8"; - } - return false; - } - function contentType(str) { - if (!str || typeof str !== "string") { - return false; - } - var mime = str.indexOf("/") === -1 ? exports2.lookup(str) : str; - if (!mime) { - return false; - } - if (mime.indexOf("charset") === -1) { - var charset2 = exports2.charset(mime); - if (charset2) - mime += "; charset=" + charset2.toLowerCase(); - } - return mime; - } - function extension(type) { - if (!type || typeof type !== "string") { - return false; - } - var match = EXTRACT_TYPE_REGEXP.exec(type); - var exts = match && exports2.extensions[match[1].toLowerCase()]; - if (!exts || !exts.length) { - return false; - } - return exts[0]; - } - function lookup(path) { - if (!path || typeof path !== "string") { - return false; - } - var extension2 = extname("x." + path).toLowerCase().substr(1); - if (!extension2) { - return false; - } - return exports2.types[extension2] || false; - } - function populateMaps(extensions, types) { - var preference = ["nginx", "apache", void 0, "iana"]; - Object.keys(db).forEach(function forEachMimeType(type) { - var mime = db[type]; - var exts = mime.extensions; - if (!exts || !exts.length) { - return; - } - extensions[type] = exts; - for (var i = 0; i < exts.length; i++) { - var extension2 = exts[i]; - if (types[extension2]) { - var from = preference.indexOf(db[types[extension2]].source); - var to = preference.indexOf(mime.source); - if (types[extension2] !== "application/octet-stream" && (from > to || from === to && types[extension2].substr(0, 12) === "application/")) { - continue; - } - } - types[extension2] = type; - } - }); - } - } -}); - -// node_modules/asynckit/lib/defer.js -var require_defer = __commonJS({ - "node_modules/asynckit/lib/defer.js"(exports2, module2) { - "use strict"; - module2.exports = defer; - function defer(fn) { - var nextTick = typeof setImmediate == "function" ? setImmediate : typeof process == "object" && typeof process.nextTick == "function" ? process.nextTick : null; - if (nextTick) { - nextTick(fn); - } else { - setTimeout(fn, 0); - } - } - } -}); - -// node_modules/asynckit/lib/async.js -var require_async = __commonJS({ - "node_modules/asynckit/lib/async.js"(exports2, module2) { - "use strict"; - var defer = require_defer(); - module2.exports = async; - function async(callback) { - var isAsync = false; - defer(function() { - isAsync = true; - }); - return function async_callback(err, result) { - if (isAsync) { - callback(err, result); - } else { - defer(function nextTick_callback() { - callback(err, result); - }); - } - }; - } - } -}); - -// node_modules/asynckit/lib/abort.js -var require_abort = __commonJS({ - "node_modules/asynckit/lib/abort.js"(exports2, module2) { - "use strict"; - module2.exports = abort; - function abort(state) { - Object.keys(state.jobs).forEach(clean.bind(state)); - state.jobs = {}; - } - function clean(key) { - if (typeof this.jobs[key] == "function") { - this.jobs[key](); - } - } - } -}); - -// node_modules/asynckit/lib/iterate.js -var require_iterate = __commonJS({ - "node_modules/asynckit/lib/iterate.js"(exports2, module2) { - "use strict"; - var async = require_async(); - var abort = require_abort(); - module2.exports = iterate; - function iterate(list, iterator, state, callback) { - var key = state["keyedList"] ? state["keyedList"][state.index] : state.index; - state.jobs[key] = runJob(iterator, key, list[key], function(error, output) { - if (!(key in state.jobs)) { - return; - } - delete state.jobs[key]; - if (error) { - abort(state); - } else { - state.results[key] = output; - } - callback(error, state.results); - }); - } - function runJob(iterator, key, item, callback) { - var aborter; - if (iterator.length == 2) { - aborter = iterator(item, async(callback)); - } else { - aborter = iterator(item, key, async(callback)); - } - return aborter; - } - } -}); - -// node_modules/asynckit/lib/state.js -var require_state = __commonJS({ - "node_modules/asynckit/lib/state.js"(exports2, module2) { - "use strict"; - module2.exports = state; - function state(list, sortMethod) { - var isNamedList = !Array.isArray(list), initState = { - index: 0, - keyedList: isNamedList || sortMethod ? Object.keys(list) : null, - jobs: {}, - results: isNamedList ? {} : [], - size: isNamedList ? Object.keys(list).length : list.length - }; - if (sortMethod) { - initState.keyedList.sort(isNamedList ? sortMethod : function(a, b) { - return sortMethod(list[a], list[b]); - }); - } - return initState; - } - } -}); - -// node_modules/asynckit/lib/terminator.js -var require_terminator = __commonJS({ - "node_modules/asynckit/lib/terminator.js"(exports2, module2) { - "use strict"; - var abort = require_abort(); - var async = require_async(); - module2.exports = terminator; - function terminator(callback) { - if (!Object.keys(this.jobs).length) { - return; - } - this.index = this.size; - abort(this); - async(callback)(null, this.results); - } - } -}); - -// node_modules/asynckit/parallel.js -var require_parallel = __commonJS({ - "node_modules/asynckit/parallel.js"(exports2, module2) { - "use strict"; - var iterate = require_iterate(); - var initState = require_state(); - var terminator = require_terminator(); - module2.exports = parallel; - function parallel(list, iterator, callback) { - var state = initState(list); - while (state.index < (state["keyedList"] || list).length) { - iterate(list, iterator, state, function(error, result) { - if (error) { - callback(error, result); - return; - } - if (Object.keys(state.jobs).length === 0) { - callback(null, state.results); - return; - } - }); - state.index++; - } - return terminator.bind(state, callback); - } - } -}); - -// node_modules/asynckit/serialOrdered.js -var require_serialOrdered = __commonJS({ - "node_modules/asynckit/serialOrdered.js"(exports2, module2) { - "use strict"; - var iterate = require_iterate(); - var initState = require_state(); - var terminator = require_terminator(); - module2.exports = serialOrdered; - module2.exports.ascending = ascending; - module2.exports.descending = descending; - function serialOrdered(list, iterator, sortMethod, callback) { - var state = initState(list, sortMethod); - iterate(list, iterator, state, function iteratorHandler(error, result) { - if (error) { - callback(error, result); - return; - } - state.index++; - if (state.index < (state["keyedList"] || list).length) { - iterate(list, iterator, state, iteratorHandler); - return; - } - callback(null, state.results); - }); - return terminator.bind(state, callback); - } - function ascending(a, b) { - return a < b ? -1 : a > b ? 1 : 0; - } - function descending(a, b) { - return -1 * ascending(a, b); - } - } -}); - -// node_modules/asynckit/serial.js -var require_serial = __commonJS({ - "node_modules/asynckit/serial.js"(exports2, module2) { - "use strict"; - var serialOrdered = require_serialOrdered(); - module2.exports = serial; - function serial(list, iterator, callback) { - return serialOrdered(list, iterator, null, callback); - } - } -}); - -// node_modules/asynckit/index.js -var require_asynckit = __commonJS({ - "node_modules/asynckit/index.js"(exports2, module2) { - "use strict"; - module2.exports = { - parallel: require_parallel(), - serial: require_serial(), - serialOrdered: require_serialOrdered() - }; - } -}); - -// node_modules/form-data/lib/populate.js -var require_populate = __commonJS({ - "node_modules/form-data/lib/populate.js"(exports2, module2) { - "use strict"; - module2.exports = function(dst, src) { - Object.keys(src).forEach(function(prop) { - dst[prop] = dst[prop] || src[prop]; - }); - return dst; - }; - } -}); - -// node_modules/form-data/lib/form_data.js -var require_form_data = __commonJS({ - "node_modules/form-data/lib/form_data.js"(exports2, module2) { - "use strict"; - var CombinedStream = require_combined_stream(); - var util2 = __nccwpck_require__(39023); - var path = __nccwpck_require__(16928); - var http2 = __nccwpck_require__(58611); - var https2 = __nccwpck_require__(65692); - var parseUrl = (__nccwpck_require__(87016).parse); - var fs = __nccwpck_require__(79896); - var Stream = (__nccwpck_require__(2203).Stream); - var mime = require_mime_types(); - var asynckit = require_asynckit(); - var populate = require_populate(); - module2.exports = FormData3; - util2.inherits(FormData3, CombinedStream); - function FormData3(options) { - if (!(this instanceof FormData3)) { - return new FormData3(options); - } - this._overheadLength = 0; - this._valueLength = 0; - this._valuesToMeasure = []; - CombinedStream.call(this); - options = options || {}; - for (var option in options) { - this[option] = options[option]; - } - } - FormData3.LINE_BREAK = "\r\n"; - FormData3.DEFAULT_CONTENT_TYPE = "application/octet-stream"; - FormData3.prototype.append = function(field, value, options) { - options = options || {}; - if (typeof options == "string") { - options = { filename: options }; - } - var append2 = CombinedStream.prototype.append.bind(this); - if (typeof value == "number") { - value = "" + value; - } - if (util2.isArray(value)) { - this._error(new Error("Arrays are not supported.")); - return; - } - var header = this._multiPartHeader(field, value, options); - var footer = this._multiPartFooter(); - append2(header); - append2(value); - append2(footer); - this._trackLength(header, value, options); - }; - FormData3.prototype._trackLength = function(header, value, options) { - var valueLength = 0; - if (options.knownLength != null) { - valueLength += +options.knownLength; - } else if (Buffer.isBuffer(value)) { - valueLength = value.length; - } else if (typeof value === "string") { - valueLength = Buffer.byteLength(value); - } - this._valueLength += valueLength; - this._overheadLength += Buffer.byteLength(header) + FormData3.LINE_BREAK.length; - if (!value || !value.path && !(value.readable && value.hasOwnProperty("httpVersion")) && !(value instanceof Stream)) { - return; - } - if (!options.knownLength) { - this._valuesToMeasure.push(value); - } - }; - FormData3.prototype._lengthRetriever = function(value, callback) { - if (value.hasOwnProperty("fd")) { - if (value.end != void 0 && value.end != Infinity && value.start != void 0) { - callback(null, value.end + 1 - (value.start ? value.start : 0)); - } else { - fs.stat(value.path, function(err, stat) { - var fileSize; - if (err) { - callback(err); - return; - } - fileSize = stat.size - (value.start ? value.start : 0); - callback(null, fileSize); - }); - } - } else if (value.hasOwnProperty("httpVersion")) { - callback(null, +value.headers["content-length"]); - } else if (value.hasOwnProperty("httpModule")) { - value.on("response", function(response) { - value.pause(); - callback(null, +response.headers["content-length"]); - }); - value.resume(); - } else { - callback("Unknown stream"); - } - }; - FormData3.prototype._multiPartHeader = function(field, value, options) { - if (typeof options.header == "string") { - return options.header; - } - var contentDisposition = this._getContentDisposition(value, options); - var contentType = this._getContentType(value, options); - var contents = ""; - var headers = { - // add custom disposition as third element or keep it two elements if not - "Content-Disposition": ["form-data", 'name="' + field + '"'].concat(contentDisposition || []), - // if no content type. allow it to be empty array - "Content-Type": [].concat(contentType || []) - }; - if (typeof options.header == "object") { - populate(headers, options.header); - } - var header; - for (var prop in headers) { - if (!headers.hasOwnProperty(prop)) - continue; - header = headers[prop]; - if (header == null) { - continue; - } - if (!Array.isArray(header)) { - header = [header]; - } - if (header.length) { - contents += prop + ": " + header.join("; ") + FormData3.LINE_BREAK; - } - } - return "--" + this.getBoundary() + FormData3.LINE_BREAK + contents + FormData3.LINE_BREAK; - }; - FormData3.prototype._getContentDisposition = function(value, options) { - var filename, contentDisposition; - if (typeof options.filepath === "string") { - filename = path.normalize(options.filepath).replace(/\\/g, "/"); - } else if (options.filename || value.name || value.path) { - filename = path.basename(options.filename || value.name || value.path); - } else if (value.readable && value.hasOwnProperty("httpVersion")) { - filename = path.basename(value.client._httpMessage.path || ""); - } - if (filename) { - contentDisposition = 'filename="' + filename + '"'; - } - return contentDisposition; - }; - FormData3.prototype._getContentType = function(value, options) { - var contentType = options.contentType; - if (!contentType && value.name) { - contentType = mime.lookup(value.name); - } - if (!contentType && value.path) { - contentType = mime.lookup(value.path); - } - if (!contentType && value.readable && value.hasOwnProperty("httpVersion")) { - contentType = value.headers["content-type"]; - } - if (!contentType && (options.filepath || options.filename)) { - contentType = mime.lookup(options.filepath || options.filename); - } - if (!contentType && typeof value == "object") { - contentType = FormData3.DEFAULT_CONTENT_TYPE; - } - return contentType; - }; - FormData3.prototype._multiPartFooter = function() { - return function(next) { - var footer = FormData3.LINE_BREAK; - var lastPart = this._streams.length === 0; - if (lastPart) { - footer += this._lastBoundary(); - } - next(footer); - }.bind(this); - }; - FormData3.prototype._lastBoundary = function() { - return "--" + this.getBoundary() + "--" + FormData3.LINE_BREAK; - }; - FormData3.prototype.getHeaders = function(userHeaders) { - var header; - var formHeaders = { - "content-type": "multipart/form-data; boundary=" + this.getBoundary() - }; - for (header in userHeaders) { - if (userHeaders.hasOwnProperty(header)) { - formHeaders[header.toLowerCase()] = userHeaders[header]; - } - } - return formHeaders; - }; - FormData3.prototype.setBoundary = function(boundary) { - this._boundary = boundary; - }; - FormData3.prototype.getBoundary = function() { - if (!this._boundary) { - this._generateBoundary(); - } - return this._boundary; - }; - FormData3.prototype.getBuffer = function() { - var dataBuffer = new Buffer.alloc(0); - var boundary = this.getBoundary(); - for (var i = 0, len = this._streams.length; i < len; i++) { - if (typeof this._streams[i] !== "function") { - if (Buffer.isBuffer(this._streams[i])) { - dataBuffer = Buffer.concat([dataBuffer, this._streams[i]]); - } else { - dataBuffer = Buffer.concat([dataBuffer, Buffer.from(this._streams[i])]); - } - if (typeof this._streams[i] !== "string" || this._streams[i].substring(2, boundary.length + 2) !== boundary) { - dataBuffer = Buffer.concat([dataBuffer, Buffer.from(FormData3.LINE_BREAK)]); - } - } - } - return Buffer.concat([dataBuffer, Buffer.from(this._lastBoundary())]); - }; - FormData3.prototype._generateBoundary = function() { - var boundary = "--------------------------"; - for (var i = 0; i < 24; i++) { - boundary += Math.floor(Math.random() * 10).toString(16); - } - this._boundary = boundary; - }; - FormData3.prototype.getLengthSync = function() { - var knownLength = this._overheadLength + this._valueLength; - if (this._streams.length) { - knownLength += this._lastBoundary().length; - } - if (!this.hasKnownLength()) { - this._error(new Error("Cannot calculate proper length in synchronous way.")); - } - return knownLength; - }; - FormData3.prototype.hasKnownLength = function() { - var hasKnownLength = true; - if (this._valuesToMeasure.length) { - hasKnownLength = false; - } - return hasKnownLength; - }; - FormData3.prototype.getLength = function(cb) { - var knownLength = this._overheadLength + this._valueLength; - if (this._streams.length) { - knownLength += this._lastBoundary().length; - } - if (!this._valuesToMeasure.length) { - process.nextTick(cb.bind(this, null, knownLength)); - return; - } - asynckit.parallel(this._valuesToMeasure, this._lengthRetriever, function(err, values) { - if (err) { - cb(err); - return; - } - values.forEach(function(length) { - knownLength += length; - }); - cb(null, knownLength); - }); - }; - FormData3.prototype.submit = function(params, cb) { - var request, options, defaults2 = { method: "post" }; - if (typeof params == "string") { - params = parseUrl(params); - options = populate({ - port: params.port, - path: params.pathname, - host: params.hostname, - protocol: params.protocol - }, defaults2); - } else { - options = populate(params, defaults2); - if (!options.port) { - options.port = options.protocol == "https:" ? 443 : 80; - } - } - options.headers = this.getHeaders(params.headers); - if (options.protocol == "https:") { - request = https2.request(options); - } else { - request = http2.request(options); - } - this.getLength(function(err, length) { - if (err && err !== "Unknown stream") { - this._error(err); - return; - } - if (length) { - request.setHeader("Content-Length", length); - } - this.pipe(request); - if (cb) { - var onResponse; - var callback = function(error, responce) { - request.removeListener("error", callback); - request.removeListener("response", onResponse); - return cb.call(this, error, responce); - }; - onResponse = callback.bind(this, null); - request.on("error", callback); - request.on("response", onResponse); - } - }.bind(this)); - return request; - }; - FormData3.prototype._error = function(err) { - if (!this.error) { - this.error = err; - this.pause(); - this.emit("error", err); - } - }; - FormData3.prototype.toString = function() { - return "[object FormData]"; - }; - } -}); - -// node_modules/proxy-from-env/index.js -var require_proxy_from_env = __commonJS({ - "node_modules/proxy-from-env/index.js"(exports2) { - "use strict"; - var parseUrl = (__nccwpck_require__(87016).parse); - var DEFAULT_PORTS = { - ftp: 21, - gopher: 70, - http: 80, - https: 443, - ws: 80, - wss: 443 - }; - var stringEndsWith = String.prototype.endsWith || function(s) { - return s.length <= this.length && this.indexOf(s, this.length - s.length) !== -1; - }; - function getProxyForUrl2(url2) { - var parsedUrl = typeof url2 === "string" ? parseUrl(url2) : url2 || {}; - var proto = parsedUrl.protocol; - var hostname = parsedUrl.host; - var port = parsedUrl.port; - if (typeof hostname !== "string" || !hostname || typeof proto !== "string") { - return ""; - } - proto = proto.split(":", 1)[0]; - hostname = hostname.replace(/:\d*$/, ""); - port = parseInt(port) || DEFAULT_PORTS[proto] || 0; - if (!shouldProxy(hostname, port)) { - return ""; - } - var proxy = getEnv("npm_config_" + proto + "_proxy") || getEnv(proto + "_proxy") || getEnv("npm_config_proxy") || getEnv("all_proxy"); - if (proxy && proxy.indexOf("://") === -1) { - proxy = proto + "://" + proxy; - } - return proxy; - } - function shouldProxy(hostname, port) { - var NO_PROXY = (getEnv("npm_config_no_proxy") || getEnv("no_proxy")).toLowerCase(); - if (!NO_PROXY) { - return true; - } - if (NO_PROXY === "*") { - return false; - } - return NO_PROXY.split(/[,\s]/).every(function(proxy) { - if (!proxy) { - return true; - } - var parsedProxy = proxy.match(/^(.+):(\d+)$/); - var parsedProxyHostname = parsedProxy ? parsedProxy[1] : proxy; - var parsedProxyPort = parsedProxy ? parseInt(parsedProxy[2]) : 0; - if (parsedProxyPort && parsedProxyPort !== port) { - return true; - } - if (!/^[.*]/.test(parsedProxyHostname)) { - return hostname !== parsedProxyHostname; - } - if (parsedProxyHostname.charAt(0) === "*") { - parsedProxyHostname = parsedProxyHostname.slice(1); - } - return !stringEndsWith.call(hostname, parsedProxyHostname); - }); - } - function getEnv(key) { - return process.env[key.toLowerCase()] || process.env[key.toUpperCase()] || ""; - } - exports2.getProxyForUrl = getProxyForUrl2; - } -}); - -// node_modules/ms/index.js -var require_ms = __commonJS({ - "node_modules/ms/index.js"(exports2, module2) { - "use strict"; - var s = 1e3; - var m = s * 60; - var h = m * 60; - var d = h * 24; - var w = d * 7; - var y = d * 365.25; - module2.exports = function(val, options) { - options = options || {}; - var type = typeof val; - if (type === "string" && val.length > 0) { - return parse(val); - } else if (type === "number" && isFinite(val)) { - return options.long ? fmtLong(val) : fmtShort(val); - } - throw new Error( - "val is not a non-empty string or a valid number. val=" + JSON.stringify(val) - ); - }; - function parse(str) { - str = String(str); - if (str.length > 100) { - return; - } - var match = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec( - str - ); - if (!match) { - return; - } - var n = parseFloat(match[1]); - var type = (match[2] || "ms").toLowerCase(); - switch (type) { - case "years": - case "year": - case "yrs": - case "yr": - case "y": - return n * y; - case "weeks": - case "week": - case "w": - return n * w; - case "days": - case "day": - case "d": - return n * d; - case "hours": - case "hour": - case "hrs": - case "hr": - case "h": - return n * h; - case "minutes": - case "minute": - case "mins": - case "min": - case "m": - return n * m; - case "seconds": - case "second": - case "secs": - case "sec": - case "s": - return n * s; - case "milliseconds": - case "millisecond": - case "msecs": - case "msec": - case "ms": - return n; - default: - return void 0; - } - } - function fmtShort(ms) { - var msAbs = Math.abs(ms); - if (msAbs >= d) { - return Math.round(ms / d) + "d"; - } - if (msAbs >= h) { - return Math.round(ms / h) + "h"; - } - if (msAbs >= m) { - return Math.round(ms / m) + "m"; - } - if (msAbs >= s) { - return Math.round(ms / s) + "s"; - } - return ms + "ms"; - } - function fmtLong(ms) { - var msAbs = Math.abs(ms); - if (msAbs >= d) { - return plural(ms, msAbs, d, "day"); - } - if (msAbs >= h) { - return plural(ms, msAbs, h, "hour"); - } - if (msAbs >= m) { - return plural(ms, msAbs, m, "minute"); - } - if (msAbs >= s) { - return plural(ms, msAbs, s, "second"); - } - return ms + " ms"; - } - function plural(ms, msAbs, n, name) { - var isPlural = msAbs >= n * 1.5; - return Math.round(ms / n) + " " + name + (isPlural ? "s" : ""); - } - } -}); - -// node_modules/debug/src/common.js -var require_common3 = __commonJS({ - "node_modules/debug/src/common.js"(exports2, module2) { - "use strict"; - function setup(env) { - createDebug.debug = createDebug; - createDebug.default = createDebug; - createDebug.coerce = coerce; - createDebug.disable = disable; - createDebug.enable = enable; - createDebug.enabled = enabled; - createDebug.humanize = require_ms(); - createDebug.destroy = destroy; - Object.keys(env).forEach((key) => { - createDebug[key] = env[key]; - }); - createDebug.names = []; - createDebug.skips = []; - createDebug.formatters = {}; - function selectColor(namespace) { - let hash = 0; - for (let i = 0; i < namespace.length; i++) { - hash = (hash << 5) - hash + namespace.charCodeAt(i); - hash |= 0; - } - return createDebug.colors[Math.abs(hash) % createDebug.colors.length]; - } - createDebug.selectColor = selectColor; - function createDebug(namespace) { - let prevTime; - let enableOverride = null; - let namespacesCache; - let enabledCache; - function debug(...args) { - if (!debug.enabled) { - return; - } - const self2 = debug; - const curr = Number(/* @__PURE__ */ new Date()); - const ms = curr - (prevTime || curr); - self2.diff = ms; - self2.prev = prevTime; - self2.curr = curr; - prevTime = curr; - args[0] = createDebug.coerce(args[0]); - if (typeof args[0] !== "string") { - args.unshift("%O"); - } - let index = 0; - args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => { - if (match === "%%") { - return "%"; - } - index++; - const formatter = createDebug.formatters[format]; - if (typeof formatter === "function") { - const val = args[index]; - match = formatter.call(self2, val); - args.splice(index, 1); - index--; - } - return match; - }); - createDebug.formatArgs.call(self2, args); - const logFn = self2.log || createDebug.log; - logFn.apply(self2, args); - } - debug.namespace = namespace; - debug.useColors = createDebug.useColors(); - debug.color = createDebug.selectColor(namespace); - debug.extend = extend2; - debug.destroy = createDebug.destroy; - Object.defineProperty(debug, "enabled", { - enumerable: true, - configurable: false, - get: () => { - if (enableOverride !== null) { - return enableOverride; - } - if (namespacesCache !== createDebug.namespaces) { - namespacesCache = createDebug.namespaces; - enabledCache = createDebug.enabled(namespace); - } - return enabledCache; - }, - set: (v) => { - enableOverride = v; - } - }); - if (typeof createDebug.init === "function") { - createDebug.init(debug); - } - return debug; - } - function extend2(namespace, delimiter) { - const newDebug = createDebug(this.namespace + (typeof delimiter === "undefined" ? ":" : delimiter) + namespace); - newDebug.log = this.log; - return newDebug; - } - function enable(namespaces) { - createDebug.save(namespaces); - createDebug.namespaces = namespaces; - createDebug.names = []; - createDebug.skips = []; - let i; - const split = (typeof namespaces === "string" ? namespaces : "").split(/[\s,]+/); - const len = split.length; - for (i = 0; i < len; i++) { - if (!split[i]) { - continue; - } - namespaces = split[i].replace(/\*/g, ".*?"); - if (namespaces[0] === "-") { - createDebug.skips.push(new RegExp("^" + namespaces.slice(1) + "$")); - } else { - createDebug.names.push(new RegExp("^" + namespaces + "$")); - } - } - } - function disable() { - const namespaces = [ - ...createDebug.names.map(toNamespace), - ...createDebug.skips.map(toNamespace).map((namespace) => "-" + namespace) - ].join(","); - createDebug.enable(""); - return namespaces; - } - function enabled(name) { - if (name[name.length - 1] === "*") { - return true; - } - let i; - let len; - for (i = 0, len = createDebug.skips.length; i < len; i++) { - if (createDebug.skips[i].test(name)) { - return false; - } - } - for (i = 0, len = createDebug.names.length; i < len; i++) { - if (createDebug.names[i].test(name)) { - return true; - } - } - return false; - } - function toNamespace(regexp) { - return regexp.toString().substring(2, regexp.toString().length - 2).replace(/\.\*\?$/, "*"); - } - function coerce(val) { - if (val instanceof Error) { - return val.stack || val.message; - } - return val; - } - function destroy() { - console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."); - } - createDebug.enable(createDebug.load()); - return createDebug; - } - module2.exports = setup; - } -}); - -// node_modules/debug/src/browser.js -var require_browser = __commonJS({ - "node_modules/debug/src/browser.js"(exports2, module2) { - "use strict"; - exports2.formatArgs = formatArgs; - exports2.save = save; - exports2.load = load; - exports2.useColors = useColors; - exports2.storage = localstorage(); - exports2.destroy = /* @__PURE__ */ (() => { - let warned = false; - return () => { - if (!warned) { - warned = true; - console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."); - } - }; - })(); - exports2.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" - ]; - function useColors() { - if (typeof window !== "undefined" && window.process && (window.process.type === "renderer" || window.process.__nwjs)) { - return true; - } - if (typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) { - return false; - } - let m; - return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // Is firebug? http://stackoverflow.com/a/398120/376773 - typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || // Is firefox >= v31? - // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages - typeof navigator !== "undefined" && navigator.userAgent && (m = navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)) && parseInt(m[1], 10) >= 31 || // Double check webkit in userAgent just in case we are in a worker - typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); - } - function formatArgs(args) { - args[0] = (this.useColors ? "%c" : "") + this.namespace + (this.useColors ? " %c" : " ") + args[0] + (this.useColors ? "%c " : " ") + "+" + module2.exports.humanize(this.diff); - if (!this.useColors) { - return; - } - const c = "color: " + this.color; - args.splice(1, 0, c, "color: inherit"); - let index = 0; - let lastC = 0; - args[0].replace(/%[a-zA-Z%]/g, (match) => { - if (match === "%%") { - return; - } - index++; - if (match === "%c") { - lastC = index; - } - }); - args.splice(lastC, 0, c); - } - exports2.log = console.debug || console.log || (() => { - }); - function save(namespaces) { - try { - if (namespaces) { - exports2.storage.setItem("debug", namespaces); - } else { - exports2.storage.removeItem("debug"); - } - } catch (error) { - } - } - function load() { - let r; - try { - r = exports2.storage.getItem("debug"); - } catch (error) { - } - if (!r && typeof process !== "undefined" && "env" in process) { - r = process.env.DEBUG; - } - return r; - } - function localstorage() { - try { - return localStorage; - } catch (error) { - } - } - module2.exports = require_common3()(exports2); - var { formatters } = module2.exports; - formatters.j = function(v) { - try { - return JSON.stringify(v); - } catch (error) { - return "[UnexpectedJSONParseError]: " + error.message; - } - }; - } -}); - -// node_modules/has-flag/index.js -var require_has_flag = __commonJS({ - "node_modules/has-flag/index.js"(exports2, module2) { - "use strict"; - module2.exports = (flag, argv = process.argv) => { - const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--"; - const position = argv.indexOf(prefix + flag); - const terminatorPosition = argv.indexOf("--"); - return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition); - }; - } -}); - -// node_modules/supports-color/index.js -var require_supports_color = __commonJS({ - "node_modules/supports-color/index.js"(exports2, module2) { - "use strict"; - var os = __nccwpck_require__(70857); - var tty = __nccwpck_require__(52018); - var hasFlag = require_has_flag(); - var { env } = process; - var forceColor; - if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) { - forceColor = 0; - } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) { - forceColor = 1; - } - if ("FORCE_COLOR" in env) { - if (env.FORCE_COLOR === "true") { - forceColor = 1; - } else if (env.FORCE_COLOR === "false") { - forceColor = 0; - } else { - forceColor = env.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env.FORCE_COLOR, 10), 3); - } - } - function translateLevel(level) { - if (level === 0) { - return false; - } - return { - level, - hasBasic: true, - has256: level >= 2, - has16m: level >= 3 - }; - } - function supportsColor(haveStream, streamIsTTY) { - if (forceColor === 0) { - return 0; - } - if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) { - return 3; - } - if (hasFlag("color=256")) { - return 2; - } - if (haveStream && !streamIsTTY && forceColor === void 0) { - return 0; - } - const min = forceColor || 0; - if (env.TERM === "dumb") { - return min; - } - if (process.platform === "win32") { - const osRelease = os.release().split("."); - if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) { - return Number(osRelease[2]) >= 14931 ? 3 : 2; - } - return 1; - } - if ("CI" in env) { - if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "GITHUB_ACTIONS", "BUILDKITE"].some((sign) => sign in env) || env.CI_NAME === "codeship") { - return 1; - } - return min; - } - if ("TEAMCITY_VERSION" in env) { - return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0; - } - if (env.COLORTERM === "truecolor") { - return 3; - } - if ("TERM_PROGRAM" in env) { - const version = parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10); - switch (env.TERM_PROGRAM) { - case "iTerm.app": - return version >= 3 ? 3 : 2; - case "Apple_Terminal": - return 2; - } - } - if (/-256(color)?$/i.test(env.TERM)) { - return 2; - } - if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) { - return 1; - } - if ("COLORTERM" in env) { - return 1; - } - return min; - } - function getSupportLevel(stream4) { - const level = supportsColor(stream4, stream4 && stream4.isTTY); - return translateLevel(level); - } - module2.exports = { - supportsColor: getSupportLevel, - stdout: translateLevel(supportsColor(true, tty.isatty(1))), - stderr: translateLevel(supportsColor(true, tty.isatty(2))) - }; - } -}); - -// node_modules/debug/src/node.js -var require_node = __commonJS({ - "node_modules/debug/src/node.js"(exports2, module2) { - "use strict"; - var tty = __nccwpck_require__(52018); - var util2 = __nccwpck_require__(39023); - exports2.init = init; - exports2.log = log; - exports2.formatArgs = formatArgs; - exports2.save = save; - exports2.load = load; - exports2.useColors = useColors; - exports2.destroy = util2.deprecate( - () => { - }, - "Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`." - ); - exports2.colors = [6, 2, 3, 4, 5, 1]; - try { - const supportsColor = require_supports_color(); - if (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) { - exports2.colors = [ - 20, - 21, - 26, - 27, - 32, - 33, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 56, - 57, - 62, - 63, - 68, - 69, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 92, - 93, - 98, - 99, - 112, - 113, - 128, - 129, - 134, - 135, - 148, - 149, - 160, - 161, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169, - 170, - 171, - 172, - 173, - 178, - 179, - 184, - 185, - 196, - 197, - 198, - 199, - 200, - 201, - 202, - 203, - 204, - 205, - 206, - 207, - 208, - 209, - 214, - 215, - 220, - 221 - ]; - } - } catch (error) { - } - exports2.inspectOpts = Object.keys(process.env).filter((key) => { - return /^debug_/i.test(key); - }).reduce((obj, key) => { - const prop = key.substring(6).toLowerCase().replace(/_([a-z])/g, (_, k) => { - return k.toUpperCase(); - }); - let val = process.env[key]; - if (/^(yes|on|true|enabled)$/i.test(val)) { - val = true; - } else if (/^(no|off|false|disabled)$/i.test(val)) { - val = false; - } else if (val === "null") { - val = null; - } else { - val = Number(val); - } - obj[prop] = val; - return obj; - }, {}); - function useColors() { - return "colors" in exports2.inspectOpts ? Boolean(exports2.inspectOpts.colors) : tty.isatty(process.stderr.fd); - } - function formatArgs(args) { - const { namespace: name, useColors: useColors2 } = this; - if (useColors2) { - const c = this.color; - const colorCode = "\x1B[3" + (c < 8 ? c : "8;5;" + c); - const prefix = ` ${colorCode};1m${name} \x1B[0m`; - args[0] = prefix + args[0].split("\n").join("\n" + prefix); - args.push(colorCode + "m+" + module2.exports.humanize(this.diff) + "\x1B[0m"); - } else { - args[0] = getDate() + name + " " + args[0]; - } - } - function getDate() { - if (exports2.inspectOpts.hideDate) { - return ""; - } - return (/* @__PURE__ */ new Date()).toISOString() + " "; - } - function log(...args) { - return process.stderr.write(util2.formatWithOptions(exports2.inspectOpts, ...args) + "\n"); - } - function save(namespaces) { - if (namespaces) { - process.env.DEBUG = namespaces; - } else { - delete process.env.DEBUG; - } - } - function load() { - return process.env.DEBUG; - } - function init(debug) { - debug.inspectOpts = {}; - const keys = Object.keys(exports2.inspectOpts); - for (let i = 0; i < keys.length; i++) { - debug.inspectOpts[keys[i]] = exports2.inspectOpts[keys[i]]; - } - } - module2.exports = require_common3()(exports2); - var { formatters } = module2.exports; - formatters.o = function(v) { - this.inspectOpts.colors = this.useColors; - return util2.inspect(v, this.inspectOpts).split("\n").map((str) => str.trim()).join(" "); - }; - formatters.O = function(v) { - this.inspectOpts.colors = this.useColors; - return util2.inspect(v, this.inspectOpts); - }; - } -}); - -// node_modules/debug/src/index.js -var require_src = __commonJS({ - "node_modules/debug/src/index.js"(exports2, module2) { - "use strict"; - if (typeof process === "undefined" || process.type === "renderer" || process.browser === true || process.__nwjs) { - module2.exports = require_browser(); - } else { - module2.exports = require_node(); - } - } -}); - -// node_modules/follow-redirects/debug.js -var require_debug = __commonJS({ - "node_modules/follow-redirects/debug.js"(exports2, module2) { - "use strict"; - var debug; - module2.exports = function() { - if (!debug) { - try { - debug = require_src()("follow-redirects"); - } catch (error) { - } - if (typeof debug !== "function") { - debug = function() { - }; - } - } - debug.apply(null, arguments); - }; - } -}); - -// node_modules/follow-redirects/index.js -var require_follow_redirects = __commonJS({ - "node_modules/follow-redirects/index.js"(exports2, module2) { - "use strict"; - var url2 = __nccwpck_require__(87016); - var URL2 = url2.URL; - var http2 = __nccwpck_require__(58611); - var https2 = __nccwpck_require__(65692); - var Writable = (__nccwpck_require__(2203).Writable); - var assert = __nccwpck_require__(42613); - var debug = require_debug(); - var useNativeURL = false; - try { - assert(new URL2()); - } catch (error) { - useNativeURL = error.code === "ERR_INVALID_URL"; - } - var preservedUrlFields = [ - "auth", - "host", - "hostname", - "href", - "path", - "pathname", - "port", - "protocol", - "query", - "search", - "hash" - ]; - var events = ["abort", "aborted", "connect", "error", "socket", "timeout"]; - var eventHandlers = /* @__PURE__ */ Object.create(null); - events.forEach(function(event) { - eventHandlers[event] = function(arg1, arg2, arg3) { - this._redirectable.emit(event, arg1, arg2, arg3); - }; - }); - var InvalidUrlError = createErrorType( - "ERR_INVALID_URL", - "Invalid URL", - TypeError - ); - var RedirectionError = createErrorType( - "ERR_FR_REDIRECTION_FAILURE", - "Redirected request failed" - ); - var TooManyRedirectsError = createErrorType( - "ERR_FR_TOO_MANY_REDIRECTS", - "Maximum number of redirects exceeded", - RedirectionError - ); - var MaxBodyLengthExceededError = createErrorType( - "ERR_FR_MAX_BODY_LENGTH_EXCEEDED", - "Request body larger than maxBodyLength limit" - ); - var WriteAfterEndError = createErrorType( - "ERR_STREAM_WRITE_AFTER_END", - "write after end" - ); - var destroy = Writable.prototype.destroy || noop2; - function RedirectableRequest(options, responseCallback) { - Writable.call(this); - this._sanitizeOptions(options); - this._options = options; - this._ended = false; - this._ending = false; - this._redirectCount = 0; - this._redirects = []; - this._requestBodyLength = 0; - this._requestBodyBuffers = []; - if (responseCallback) { - this.on("response", responseCallback); - } - var self2 = this; - this._onNativeResponse = function(response) { - try { - self2._processResponse(response); - } catch (cause) { - self2.emit("error", cause instanceof RedirectionError ? cause : new RedirectionError({ cause })); - } - }; - this._performRequest(); - } - RedirectableRequest.prototype = Object.create(Writable.prototype); - RedirectableRequest.prototype.abort = function() { - destroyRequest(this._currentRequest); - this._currentRequest.abort(); - this.emit("abort"); - }; - RedirectableRequest.prototype.destroy = function(error) { - destroyRequest(this._currentRequest, error); - destroy.call(this, error); - return this; - }; - RedirectableRequest.prototype.write = function(data, encoding, callback) { - if (this._ending) { - throw new WriteAfterEndError(); - } - if (!isString2(data) && !isBuffer2(data)) { - throw new TypeError("data should be a string, Buffer or Uint8Array"); - } - if (isFunction2(encoding)) { - callback = encoding; - encoding = null; - } - if (data.length === 0) { - if (callback) { - callback(); - } - return; - } - if (this._requestBodyLength + data.length <= this._options.maxBodyLength) { - this._requestBodyLength += data.length; - this._requestBodyBuffers.push({ data, encoding }); - this._currentRequest.write(data, encoding, callback); - } else { - this.emit("error", new MaxBodyLengthExceededError()); - this.abort(); - } - }; - RedirectableRequest.prototype.end = function(data, encoding, callback) { - if (isFunction2(data)) { - callback = data; - data = encoding = null; - } else if (isFunction2(encoding)) { - callback = encoding; - encoding = null; - } - if (!data) { - this._ended = this._ending = true; - this._currentRequest.end(null, null, callback); - } else { - var self2 = this; - var currentRequest = this._currentRequest; - this.write(data, encoding, function() { - self2._ended = true; - currentRequest.end(null, null, callback); - }); - this._ending = true; - } - }; - RedirectableRequest.prototype.setHeader = function(name, value) { - this._options.headers[name] = value; - this._currentRequest.setHeader(name, value); - }; - RedirectableRequest.prototype.removeHeader = function(name) { - delete this._options.headers[name]; - this._currentRequest.removeHeader(name); - }; - RedirectableRequest.prototype.setTimeout = function(msecs, callback) { - var self2 = this; - function destroyOnTimeout(socket) { - socket.setTimeout(msecs); - socket.removeListener("timeout", socket.destroy); - socket.addListener("timeout", socket.destroy); - } - function startTimer(socket) { - if (self2._timeout) { - clearTimeout(self2._timeout); - } - self2._timeout = setTimeout(function() { - self2.emit("timeout"); - clearTimer(); - }, msecs); - destroyOnTimeout(socket); - } - function clearTimer() { - if (self2._timeout) { - clearTimeout(self2._timeout); - self2._timeout = null; - } - self2.removeListener("abort", clearTimer); - self2.removeListener("error", clearTimer); - self2.removeListener("response", clearTimer); - self2.removeListener("close", clearTimer); - if (callback) { - self2.removeListener("timeout", callback); - } - if (!self2.socket) { - self2._currentRequest.removeListener("socket", startTimer); - } - } - if (callback) { - this.on("timeout", callback); - } - if (this.socket) { - startTimer(this.socket); - } else { - this._currentRequest.once("socket", startTimer); - } - this.on("socket", destroyOnTimeout); - this.on("abort", clearTimer); - this.on("error", clearTimer); - this.on("response", clearTimer); - this.on("close", clearTimer); - return this; - }; - [ - "flushHeaders", - "getHeader", - "setNoDelay", - "setSocketKeepAlive" - ].forEach(function(method) { - RedirectableRequest.prototype[method] = function(a, b) { - return this._currentRequest[method](a, b); - }; - }); - ["aborted", "connection", "socket"].forEach(function(property) { - Object.defineProperty(RedirectableRequest.prototype, property, { - get: function() { - return this._currentRequest[property]; - } - }); - }); - RedirectableRequest.prototype._sanitizeOptions = function(options) { - if (!options.headers) { - options.headers = {}; - } - if (options.host) { - if (!options.hostname) { - options.hostname = options.host; - } - delete options.host; - } - if (!options.pathname && options.path) { - var searchPos = options.path.indexOf("?"); - if (searchPos < 0) { - options.pathname = options.path; - } else { - options.pathname = options.path.substring(0, searchPos); - options.search = options.path.substring(searchPos); - } - } - }; - RedirectableRequest.prototype._performRequest = function() { - var protocol = this._options.protocol; - var nativeProtocol = this._options.nativeProtocols[protocol]; - if (!nativeProtocol) { - throw new TypeError("Unsupported protocol " + protocol); - } - if (this._options.agents) { - var scheme = protocol.slice(0, -1); - this._options.agent = this._options.agents[scheme]; - } - var request = this._currentRequest = nativeProtocol.request(this._options, this._onNativeResponse); - request._redirectable = this; - for (var event of events) { - request.on(event, eventHandlers[event]); - } - this._currentUrl = /^\//.test(this._options.path) ? url2.format(this._options) : ( - // When making a request to a proxy, […] - // a client MUST send the target URI in absolute-form […]. - this._options.path - ); - if (this._isRedirect) { - var i = 0; - var self2 = this; - var buffers = this._requestBodyBuffers; - (function writeNext(error) { - if (request === self2._currentRequest) { - if (error) { - self2.emit("error", error); - } else if (i < buffers.length) { - var buffer = buffers[i++]; - if (!request.finished) { - request.write(buffer.data, buffer.encoding, writeNext); - } - } else if (self2._ended) { - request.end(); - } - } - })(); - } - }; - RedirectableRequest.prototype._processResponse = function(response) { - var statusCode = response.statusCode; - if (this._options.trackRedirects) { - this._redirects.push({ - url: this._currentUrl, - headers: response.headers, - statusCode - }); - } - var location = response.headers.location; - if (!location || this._options.followRedirects === false || statusCode < 300 || statusCode >= 400) { - response.responseUrl = this._currentUrl; - response.redirects = this._redirects; - this.emit("response", response); - this._requestBodyBuffers = []; - return; - } - destroyRequest(this._currentRequest); - response.destroy(); - if (++this._redirectCount > this._options.maxRedirects) { - throw new TooManyRedirectsError(); - } - var requestHeaders; - var beforeRedirect = this._options.beforeRedirect; - if (beforeRedirect) { - requestHeaders = Object.assign({ - // The Host header was set by nativeProtocol.request - Host: response.req.getHeader("host") - }, this._options.headers); - } - var method = this._options.method; - if ((statusCode === 301 || statusCode === 302) && this._options.method === "POST" || // RFC7231§6.4.4: The 303 (See Other) status code indicates that - // the server is redirecting the user agent to a different resource […] - // A user agent can perform a retrieval request targeting that URI - // (a GET or HEAD request if using HTTP) […] - statusCode === 303 && !/^(?:GET|HEAD)$/.test(this._options.method)) { - this._options.method = "GET"; - this._requestBodyBuffers = []; - removeMatchingHeaders(/^content-/i, this._options.headers); - } - var currentHostHeader = removeMatchingHeaders(/^host$/i, this._options.headers); - var currentUrlParts = parseUrl(this._currentUrl); - var currentHost = currentHostHeader || currentUrlParts.host; - var currentUrl = /^\w+:/.test(location) ? this._currentUrl : url2.format(Object.assign(currentUrlParts, { host: currentHost })); - var redirectUrl = resolveUrl(location, currentUrl); - debug("redirecting to", redirectUrl.href); - this._isRedirect = true; - spreadUrlObject(redirectUrl, this._options); - if (redirectUrl.protocol !== currentUrlParts.protocol && redirectUrl.protocol !== "https:" || redirectUrl.host !== currentHost && !isSubdomain(redirectUrl.host, currentHost)) { - removeMatchingHeaders(/^(?:(?:proxy-)?authorization|cookie)$/i, this._options.headers); - } - if (isFunction2(beforeRedirect)) { - var responseDetails = { - headers: response.headers, - statusCode - }; - var requestDetails = { - url: currentUrl, - method, - headers: requestHeaders - }; - beforeRedirect(this._options, responseDetails, requestDetails); - this._sanitizeOptions(this._options); - } - this._performRequest(); - }; - function wrap(protocols) { - var exports3 = { - maxRedirects: 21, - maxBodyLength: 10 * 1024 * 1024 - }; - var nativeProtocols = {}; - Object.keys(protocols).forEach(function(scheme) { - var protocol = scheme + ":"; - var nativeProtocol = nativeProtocols[protocol] = protocols[scheme]; - var wrappedProtocol = exports3[scheme] = Object.create(nativeProtocol); - function request(input, options, callback) { - if (isURL(input)) { - input = spreadUrlObject(input); - } else if (isString2(input)) { - input = spreadUrlObject(parseUrl(input)); - } else { - callback = options; - options = validateUrl(input); - input = { protocol }; - } - if (isFunction2(options)) { - callback = options; - options = null; - } - options = Object.assign({ - maxRedirects: exports3.maxRedirects, - maxBodyLength: exports3.maxBodyLength - }, input, options); - options.nativeProtocols = nativeProtocols; - if (!isString2(options.host) && !isString2(options.hostname)) { - options.hostname = "::1"; - } - assert.equal(options.protocol, protocol, "protocol mismatch"); - debug("options", options); - return new RedirectableRequest(options, callback); - } - function get(input, options, callback) { - var wrappedRequest = wrappedProtocol.request(input, options, callback); - wrappedRequest.end(); - return wrappedRequest; - } - Object.defineProperties(wrappedProtocol, { - request: { value: request, configurable: true, enumerable: true, writable: true }, - get: { value: get, configurable: true, enumerable: true, writable: true } - }); - }); - return exports3; - } - function noop2() { - } - function parseUrl(input) { - var parsed; - if (useNativeURL) { - parsed = new URL2(input); - } else { - parsed = validateUrl(url2.parse(input)); - if (!isString2(parsed.protocol)) { - throw new InvalidUrlError({ input }); - } - } - return parsed; - } - function resolveUrl(relative, base) { - return useNativeURL ? new URL2(relative, base) : parseUrl(url2.resolve(base, relative)); - } - function validateUrl(input) { - if (/^\[/.test(input.hostname) && !/^\[[:0-9a-f]+\]$/i.test(input.hostname)) { - throw new InvalidUrlError({ input: input.href || input }); - } - if (/^\[/.test(input.host) && !/^\[[:0-9a-f]+\](:\d+)?$/i.test(input.host)) { - throw new InvalidUrlError({ input: input.href || input }); - } - return input; - } - function spreadUrlObject(urlObject, target) { - var spread3 = target || {}; - for (var key of preservedUrlFields) { - spread3[key] = urlObject[key]; - } - if (spread3.hostname.startsWith("[")) { - spread3.hostname = spread3.hostname.slice(1, -1); - } - if (spread3.port !== "") { - spread3.port = Number(spread3.port); - } - spread3.path = spread3.search ? spread3.pathname + spread3.search : spread3.pathname; - return spread3; - } - function removeMatchingHeaders(regex, headers) { - var lastValue; - for (var header in headers) { - if (regex.test(header)) { - lastValue = headers[header]; - delete headers[header]; - } - } - return lastValue === null || typeof lastValue === "undefined" ? void 0 : String(lastValue).trim(); - } - function createErrorType(code, message, baseClass) { - function CustomError(properties) { - Error.captureStackTrace(this, this.constructor); - Object.assign(this, properties || {}); - this.code = code; - this.message = this.cause ? message + ": " + this.cause.message : message; - } - CustomError.prototype = new (baseClass || Error)(); - Object.defineProperties(CustomError.prototype, { - constructor: { - value: CustomError, - enumerable: false - }, - name: { - value: "Error [" + code + "]", - enumerable: false - } - }); - return CustomError; - } - function destroyRequest(request, error) { - for (var event of events) { - request.removeListener(event, eventHandlers[event]); - } - request.on("error", noop2); - request.destroy(error); - } - function isSubdomain(subdomain, domain) { - assert(isString2(subdomain) && isString2(domain)); - var dot = subdomain.length - domain.length - 1; - return dot > 0 && subdomain[dot] === "." && subdomain.endsWith(domain); - } - function isString2(value) { - return typeof value === "string" || value instanceof String; - } - function isFunction2(value) { - return typeof value === "function"; - } - function isBuffer2(value) { - return typeof value === "object" && "length" in value; - } - function isURL(value) { - return URL2 && value instanceof URL2; - } - module2.exports = wrap({ http: http2, https: https2 }); - module2.exports.wrap = wrap; - } -}); - -// index.ts -var rpc_handler_exports = {}; -__export(rpc_handler_exports, { - LOCAL_HOST: () => LOCAL_HOST, - PrettyLogs: () => PrettyLogs, - RPCHandler: () => RPCHandler, - RPCService: () => RPCService, - StorageService: () => StorageService, - getNetworkCurrency: () => getNetworkCurrency, - getNetworkData: () => getNetworkData, - getNetworkExplorer: () => getNetworkExplorer, - getNetworkFaucets: () => getNetworkFaucets, - getNetworkId: () => getNetworkId, - getNetworkName: () => getNetworkName, - getNetworkRpcs: () => getNetworkRpcs, - networkCurrencies: () => networkCurrencies, - networkExplorers: () => networkExplorers, - networkIds: () => networkIds, - networkNames: () => networkNames, - networkRpcs: () => networkRpcs, - nftAddress: () => nftAddress, - permit2Address: () => permit2Address -}); -module.exports = __toCommonJS(rpc_handler_exports); - -// dynamic.ts -var CHAINS_IDS = { - "1": "ethereum-mainnet", - "2": "expanse-network", - "3": "ropsten", - "4": "rinkeby", - "5": "goerli", - "7": "thaichain", - "8": "ubiq", - "9": "ubiq-network-testnet", - "10": "op-mainnet", - "11": "metadium-mainnet", - "12": "metadium-testnet", - "13": "diode-testnet-staging", - "14": "flare-mainnet", - "15": "diode-prenet", - "16": "songbird-testnet-coston", - "17": "thaichain-2.0-thaifi", - "18": "thundercore-testnet", - "19": "songbird-canary-network", - "20": "elastos-smart-chain", - "21": "elastos-smart-chain-testnet", - "22": "ela-did-sidechain-mainnet", - "23": "ela-did-sidechain-testnet", - "24": "kardiachain-mainnet", - "25": "cronos-mainnet", - "26": "genesis-l1-testnet", - "27": "shibachain", - "29": "genesis-l1", - "30": "rootstock-mainnet", - "31": "rootstock-testnet", - "32": "gooddata-testnet", - "33": "gooddata-mainnet", - "34": "securechain-mainnet", - "35": "tbwg-chain", - "36": "dxchain-mainnet", - "37": "xpla-mainnet", - "38": "valorbit", - "39": "u2u-solaris-mainnet", - "40": "telos-evm-mainnet", - "41": "telos-evm-testnet", - "42": "lukso-mainnet", - "43": "darwinia-pangolin-testnet", - "44": "crab-network", - "45": "darwinia-pangoro-testnet", - "46": "darwinia-network", - "47": "acria-intellichain", - "48": "ennothem-mainnet-proterozoic", - "49": "ennothem-testnet-pioneer", - "50": "xdc-network", - "51": "xdc-apothem-network", - "52": "coinex-smart-chain-mainnet", - "53": "coinex-smart-chain-testnet", - "54": "openpiece-mainnet", - "55": "zyx-mainnet", - "56": "bnb-smart-chain-mainnet", - "57": "syscoin-mainnet", - "58": "ontology-mainnet", - "60": "gochain", - "61": "ethereum-classic", - "63": "mordor-testnet", - "64": "ellaism", - "65": "okexchain-testnet", - "66": "okxchain-mainnet", - "67": "dbchain-testnet", - "68": "soterone-mainnet", - "69": "optimism-kovan", - "70": "hoo-smart-chain", - "71": "conflux-espace-(testnet)", - "72": "dxchain-testnet", - "73": "fncy", - "74": "idchain-mainnet", - "75": "decimal-smart-chain-mainnet", - "76": "mix", - "77": "poa-network-sokol", - "78": "primuschain-mainnet", - "79": "zenith-mainnet", - "80": "genechain", - "81": "japan-open-chain-mainnet", - "82": "meter-mainnet", - "83": "meter-testnet", - "84": "linqto-devnet", - "85": "gatechain-testnet", - "86": "gatechain-mainnet", - "87": "nova-network", - "88": "viction", - "89": "viction-testnet", - "90": "garizon-stage0", - "91": "garizon-stage1", - "92": "garizon-stage2", - "93": "garizon-stage3", - "94": "swissdlt", - "95": "camdl-mainnet", - "96": "bitkub-chain", - "97": "bnb-smart-chain-testnet", - "98": "six-protocol", - "99": "poa-network-core", - "100": "gnosis", - "101": "etherinc", - "102": "web3games-testnet", - "103": "worldland-mainnet", - "104": "kaiba-lightning-chain-testnet", - "105": "web3games-devnet", - "106": "velas-evm-mainnet", - "107": "nebula-testnet", - "108": "thundercore-mainnet", - "109": "shibarium", - "110": "proton-testnet", - "111": "etherlite-chain", - "112": "coinbit-mainnet", - "113": "dehvo", - "114": "flare-testnet-coston2", - "117": "uptick-mainnet", - "118": "arcology-testnet", - "119": "enuls-mainnet", - "120": "enuls-testnet", - "121": "realchain-mainnet", - "122": "fuse-mainnet", - "123": "fuse-sparknet", - "124": "decentralized-web-mainnet", - "125": "oychain-testnet", - "126": "oychain-mainnet", - "127": "factory-127-mainnet", - "128": "huobi-eco-chain-mainnet", - "129": "innovator-chain", - "131": "engram-testnet", - "132": "namefi-chain-mainnet", - "133": "hashkey-chain-testnet", - "134": "iexec-sidechain", - "135": "alyx-chain-testnet", - "136": "deamchain-mainnet", - "137": "polygon-mainnet", - "138": "defi-oracle-meta-mainnet", - "139": "woopchain-mainnet", - "140": "eternal-mainnet", - "141": "openpiece-testnet", - "142": "dax-chain", - "144": "phi-network-v2", - "145": "soraai-testnet", - "147": "flag-mainnet", - "148": "shimmerevm", - "150": "six-protocol-testnet", - "151": "redbelly-network-mainnet", - "152": "redbelly-network-devnet", - "153": "redbelly-network-testnet", - "154": "redbelly-network-tge", - "155": "tenet-testnet", - "156": "oeblock-testnet", - "157": "puppynet-shibarium", - "158": "roburna-mainnet", - "159": "roburna-testnet", - "160": "armonia-eva-chain-mainnet", - "161": "armonia-eva-chain-testnet", - "162": "lightstreams-testnet", - "163": "lightstreams-mainnet", - "164": "omni-omega", - "166": "omni", - "167": "atoshi-testnet", - "168": "aioz-network", - "169": "manta-pacific-mainnet", - "170": "hoo-smart-chain-testnet", - "172": "latam-blockchain-resil-testnet", - "176": "dc-mainnet", - "178": "abey-testnet", - "179": "abey-mainnet", - "180": "ame-chain-mainnet", - "181": "waterfall-network", - "184": "dojima-testnet", - "185": "mint-mainnet", - "186": "seele-mainnet", - "187": "dojima", - "188": "bmc-mainnet", - "189": "bmc-testnet", - "190": "cmdao-bbq-chain", - "191": "filefilego", - "193": "crypto-emergency", - "195": "x-layer-testnet", - "196": "x-layer-mainnet", - "197": "neutrinos-testnet", - "198": "bitchain-mainnet", - "199": "bittorrent-chain-mainnet", - "200": "arbitrum-on-xdai", - "201": "moac-testnet", - "202": "edgeless-testnet", - "204": "opbnb-mainnet", - "205": "ekaash", - "206": "vinuchain-testnet", - "207": "vinuchain-network", - "208": "structx-mainnet", - "210": "bitnet", - "211": "freight-trust-network", - "212": "mapo-makalu", - "213": "b2-hub-mainnet", - "214": "shinarium-mainnet", - "217": "siriusnet-v2", - "220": "scalind-testnet", - "221": "blockex-mainnet", - "223": "b2-mainnet", - "224": "viridis-testnet", - "225": "lachain-mainnet", - "226": "lachain-testnet", - "228": "mind-network-mainnet", - "230": "swapdex", - "233": "ethernity-testnet", - "234": "protojumbo-testnet", - "236": "deamchain-testnet", - "242": "plinga-mainnet", - "246": "energy-web-chain", - "248": "oasys-mainnet", - "250": "fantom-opera", - "252": "fraxtal", - "254": "swan-chain-mainnet", - "255": "kroma", - "256": "huobi-eco-chain-testnet", - "258": "setheum", - "259": "neonlink-mainnet", - "261": "guru-network-testnet", - "262": "sur-blockchain-network", - "266": "neura", - "267": "neura-testnet", - "268": "neura-devnet", - "269": "high-performance-blockchain", - "271": "egoncoin-mainnet", - "274": "lachain", - "278": "xfair.ai-mainnet", - "279": "bpx-blockchain", - "282": "cronos-zkevm-testnet", - "288": "boba-network", - "291": "orderly-mainnet", - "295": "hedera-mainnet", - "296": "hedera-testnet", - "297": "hedera-previewnet", - "298": "hedera-localnet", - "300": "zksync-sepolia-testnet", - "302": "zkcandy-sepolia-testnet", - "303": "neurochain-testnet", - "305": "zksats-mainnet", - "307": "lovely-network-testnet", - "308": "furtheon", - "309": "wyzth-testnet", - "311": "omax-mainnet", - "313": "neurochain-mainnet", - "314": "filecoin---mainnet", - "321": "kcc-mainnet", - "322": "kcc-testnet", - "323": "cosvm-mainnet", - "324": "zksync-mainnet", - "325": "grvt-mainnet", - "326": "grvt-sepolia-testnet", - "333": "web3q-mainnet", - "335": "dfk-chain-test", - "336": "shiden", - "338": "cronos-testnet", - "345": "tsc-mainnet", - "360": "shape", - "361": "theta-mainnet", - "363": "theta-sapphire-testnet", - "364": "theta-amber-testnet", - "365": "theta-testnet", - "369": "pulsechain", - "371": "consta-testnet", - "380": "zkamoeba-testnet", - "381": "zkamoeba-mainnet", - "385": "lisinski", - "388": "cronos-zkevm-mainnet", - "395": "camdl-testnet", - "397": "near-mainnet", - "398": "near-testnet", - "399": "nativ3-mainnet", - "400": "hyperonchain-testnet", - "401": "ozone-chain-testnet", - "404": "syndr-l3", - "411": "pepe-chain-mainnet", - "416": "sx-network-mainnet", - "418": "latestnet", - "420": "optimism-goerli-testnet", - "422": "viridis-mainnet", - "424": "pgn-(public-goods-network)", - "427": "zeeth-chain", - "428": "geso-verse", - "434": "boyaa-mainnet", - "443": "ten-testnet", - "444": "synapse-chain-testnet", - "456": "arzio-chain", - "462": "areon-network-testnet", - "463": "areon-network-mainnet", - "480": "world-chain", - "499": "rupaya", - "500": "camino-c-chain", - "501": "columbus-test-network", - "510": "syndicate-chain", - "512": "double-a-chain-mainnet", - "513": "double-a-chain-testnet", - "516": "gear-zero-network-mainnet", - "520": "xt-smart-chain-mainnet", - "529": "firechain-mainnet", - "530": "f(x)core-mainnet-network", - "534": "candle", - "537": "optrust-mainnet", - "542": "pawchain-testnet", - "545": "testnet", - "555": "vela1-chain-mainnet", - "558": "tao-network", - "568": "dogechain-testnet", - "570": "rollux-mainnet", - "571": "metachain-mainnet", - "579": "filenova-mainnet", - "592": "astar", - "595": "acala-mandala-testnet-tc9", - "596": "karura-network-testnet", - "597": "acala-network-testnet", - "600": "meshnyan-testnet", - "601": "vine-testnet", - "610": "darwin-devnet", - "612": "eiob-mainnet", - "614": "graphlinq-blockchain-mainnet", - "624": "binary-mainnet", - "625": "binary-sepolia", - "634": "avocado", - "646": "previewnet", - "647": "sx-network-testnet", - "648": "endurance-smart-chain-mainnet", - "653": "kalichain-testnet", - "654": "kalichain", - "662": "ultronsmartchain", - "666": "pixie-chain-testnet", - "667": "laos-arrakis", - "668": "juncachain", - "669": "juncachain-testnet", - "686": "karura-network", - "690": "redstone", - "700": "star-social-testnet", - "701": "darwinia-koi-testnet", - "707": "blockchain-station-mainnet", - "708": "blockchain-station-testnet", - "710": "highbury", - "713": "vrcscan-mainnet", - "719": "shibarium-beta", - "721": "lycan-chain", - "727": "blucrates", - "730": "lovely-network-mainnet", - "741": "vention-smart-chain-testnet", - "742": "script-testnet", - "747": "mainnet", - "766": "ql1", - "776": "openchain-testnet", - "777": "cheapeth", - "786": "maal-chain", - "787": "acala-network", - "788": "aerochain-testnet", - "789": "patex", - "799": "rupaya-testnet", - "800": "lucid-blockchain", - "803": "haic", - "808": "portal-fantasy-chain-test", - "810": "haven1-testnet", - "813": "qitmeer-network-mainnet", - "814": "firechain-zkevm", - "818": "beone-chain-mainnet", - "820": "callisto-mainnet", - "822": "runic-chain-testnet", - "831": "checkdot-blockchain-devnet", - "841": "taraxa-mainnet", - "842": "taraxa-testnet", - "852": "hongkong-mainnet", - "859": "zeeth-chain-dev", - "868": "fantasia-chain-mainnet", - "876": "bandai-namco-research-verse-mainnet", - "877": "dexit-network", - "880": "ambros-chain-mainnet", - "888": "wanchain", - "898": "maxi-chain-testnet", - "899": "maxi-chain-mainnet", - "900": "garizon-testnet-stage0", - "901": "garizon-testnet-stage1", - "902": "garizon-testnet-stage2", - "903": "garizon-testnet-stage3", - "909": "portal-fantasy-chain", - "910": "decentrabone-layer1-testnet", - "911": "taproot-mainnet", - "917": "rinia-testnet", - "919": "mode-testnet", - "927": "yidark-chain-mainnet", - "943": "pulsechain-testnet-v4", - "956": "munode-testnet", - "957": "lyra-chain", - "963": "btc20-smart-chain", - "969": "ethxy", - "970": "oort-mainnet", - "971": "oort-huygens", - "972": "oort-ascraeus", - "977": "nepal-blockchain-network", - "979": "ethxy-testnet", - "980": "top-mainnet-evm", - "985": "memo-smart-chain-mainnet", - "987": "binarychain-mainnet", - "989": "top-mainnet", - "990": "eliberty-mainnet", - "995": "5irechain-mainnet", - "996": "bifrost-polkadot-mainnet", - "997": "5irechain-thunder", - "998": "lucky-network", - "999": "wanchain-testnet", - "1000": "gton-mainnet", - "1001": "kaia-testnet-kairos", - "1003": "tectum-emission-token", - "1004": "t-ekta", - "1007": "newton-testnet", - "1008": "eurus-mainnet", - "1009": "jumbochain-mainnet", - "1010": "evrice-network", - "1011": "rebus-mainnet", - "1012": "newton", - "1022": "sakura", - "1023": "clover-testnet", - "1024": "clv-parachain", - "1028": "bittorrent-chain-testnet", - "1030": "conflux-espace", - "1031": "proxy-network-testnet", - "1038": "bronos-testnet", - "1039": "bronos-mainnet", - "1073": "shimmerevm-testnet", - "1075": "iota-evm-testnet", - "1079": "mintara-testnet", - "1080": "mintara-mainnet", - "1088": "metis-andromeda-mainnet", - "1089": "humans.ai-mainnet", - "1099": "moac-mainnet", - "1100": "dymension", - "1101": "polygon-zkevm", - "1107": "blxq-testnet", - "1108": "blxq-mainnet", - "1111": "wemix3.0-mainnet", - "1112": "wemix3.0-testnet", - "1113": "b2-hub-testnet", - "1115": "core-blockchain-testnet", - "1116": "core-blockchain-mainnet", - "1117": "dogcoin-mainnet", - "1123": "b2-testnet", - "1130": "defichain-evm-network-mainnet", - "1131": "defichain-evm-network-testnet", - "1133": "defimetachain-changi-testnet", - "1135": "lisk", - "1138": "amstar-testnet", - "1139": "mathchain", - "1140": "mathchain-testnet", - "1147": "flag-testnet", - "1149": "symplexia-smart-chain", - "1170": "origin-testnet", - "1177": "smart-host-teknoloji-testnet", - "1188": "clubmos-mainnet", - "1197": "iora-chain", - "1200": "cuckoo-chain", - "1201": "evanesco-testnet", - "1202": "world-trade-technical-chain-mainnet", - "1209": "saitablockchain(sbc)", - "1210": "cuckoo-sepolia", - "1213": "popcateum-mainnet", - "1214": "enterchain-mainnet", - "1221": "cycle-network-testnet", - "1223": "cycle-network-testnet-jellyfish", - "1225": "hybrid-testnet", - "1227": "bitcoin-protocol-testnet", - "1229": "exzo-network-mainnet", - "1230": "ultron-testnet", - "1231": "ultron-mainnet", - "1234": "step-network", - "1235": "itx-mainnet", - "1243": "arc-mainnet", - "1244": "arc-testnet", - "1246": "om-platform-mainnet", - "1248": "dogether-mainnet", - "1252": "cic-chain-testnet", - "1280": "halo-mainnet", - "1284": "moonbeam", - "1285": "moonriver", - "1287": "moonbase-alpha", - "1288": "moonrock", - "1291": "swisstronik-testnet", - "1311": "dos-fuji-subnet", - "1313": "jaiho-chain", - "1314": "alyx-mainnet", - "1319": "aia-mainnet", - "1320": "aia-testnet", - "1328": "sei-testnet", - "1329": "sei-network", - "1337": "geth-testnet", - "1338": "elysium-testnet", - "1339": "elysium-mainnet", - "1343": "blitz-subnet", - "1353": "cic-chain-mainnet", - "1369": "zafirium-mainnet", - "1370": "ramestta-mainnet", - "1377": "pingaksha-testnet", - "1379": "kalar-chain", - "1388": "amstar-mainnet", - "1392": "joseon-mainnet", - "1414": "silicon-zkevm-sepolia-testnet", - "1433": "rikeza-network-mainnet", - "1440": "living-assets-mainnet", - "1442": "polygon-zkevm-testnet", - "1452": "gil-testnet", - "1453": "metachain-istanbul", - "1455": "ctex-scan-blockchain", - "1456": "zkbase-mainnet", - "1490": "vitruveo-mainnet", - "1499": "idos-games-chain-testnet", - "1501": "bevm-canary", - "1506": "sherpax-mainnet", - "1507": "sherpax-testnet", - "1515": "beagle-messaging-chain", - "1559": "tenet", - "1570": "starchain-testnet", - "1578": "starchain", - "1617": "ethereum-inscription-mainnet", - "1618": "catecoin-chain-mainnet", - "1620": "atheios", - "1625": "gravity-alpha-mainnet", - "1648": "pivotal-mainnet", - "1657": "btachain", - "1662": "liquichain", - "1663": "horizen-gobi-testnet", - "1686": "mint-testnet", - "1687": "mint-sepolia-testnet", - "1688": "ludan-mainnet", - "1701": "anytype-evm-chain", - "1707": "tbsi-mainnet", - "1708": "tbsi-testnet", - "1717": "doric-network", - "1718": "palette-chain-mainnet", - "1729": "reya-network", - "1740": "metal-l2-testnet", - "1750": "metal-l2", - "1773": "partychain", - "1777": "gauss-mainnet", - "1789": "zkbase-sepolia-testnet", - "1804": "kerleano", - "1807": "rabbit-analog-testnet-chain", - "1811": "lif3-chain-testnet", - "1818": "cube-chain-mainnet", - "1819": "cube-chain-testnet", - "1821": "ruby-smart-chain-mainnet", - "1856": "teslafunds", - "1875": "whitechain", - "1881": "gitshock-cartenz-testnet", - "1890": "lightlink-phoenix-mainnet", - "1891": "lightlink-pegasus-testnet", - "1898": "bon-network", - "1899": "redefi-layer-2", - "1904": "sports-chain-network", - "1907": "bitcichain-mainnet", - "1908": "bitcichain-testnet", - "1909": "merkle-scan", - "1911": "scalind", - "1912": "ruby-smart-chain-testnet", - "1918": "upb-crescdi-testnet", - "1945": "onus-chain-testnet", - "1951": "d-chain-mainnet", - "1953": "selendra-network-testnet", - "1954": "dexilla-testnet", - "1956": "aiw3-testnet", - "1961": "selendra-network-mainnet", - "1967": "eleanor", - "1969": "super-smart-chain-testnet", - "1970": "super-smart-chain-mainnet", - "1971": "atelier", - "1972": "redecoin", - "1975": "onus-chain-mainnet", - "1984": "eurus-testnet", - "1985": "satoshie", - "1986": "satoshie-testnet", - "1987": "ethergem", - "1992": "hubble-exchange", - "1993": "b3-sepolia-testnet", - "1994": "ekta", - "1995": "edexa-testnet", - "1996": "sanko", - "1997": "kyoto", - "1998": "kyoto-testnet", - "2000": "dogechain-mainnet", - "2001": "milkomeda-c1-mainnet", - "2002": "milkomeda-a1-mainnet", - "2004": "metalink-network", - "2008": "cloudwalk-testnet", - "2009": "cloudwalk-mainnet", - "2013": "panarchy", - "2014": "now-chain-testnet", - "2016": "mainnetz-mainnet", - "2017": "adiri", - "2018": "publicmint-devnet", - "2019": "publicmint-testnet", - "2020": "publicmint-mainnet", - "2021": "edgeware-edgeevm-mainnet", - "2022": "beresheet-bereevm-testnet", - "2023": "taycan-testnet", - "2024": "swan-saturn-testnet", - "2025": "rangers-protocol-mainnet", - "2026": "edgeless-network", - "2031": "centrifuge", - "2032": "catalyst", - "2035": "phala-network", - "2037": "kiwi-subnet", - "2038": "shrapnel-testnet", - "2039": "aleph-zero-testnet", - "2040": "vanar-mainnet", - "2043": "neuroweb", - "2044": "shrapnel-subnet", - "2045": "aiw3-mainnet", - "2047": "stratos-testnet", - "2048": "stratos", - "2049": "movo-smart-chain-mainnet", - "2077": "quokkacoin-mainnet", - "2088": "altair", - "2100": "ecoball-mainnet", - "2101": "ecoball-testnet-espuma", - "2109": "exosama-network", - "2112": "uchain-mainnet", - "2121": "catena-mainnet", - "2122": "metaplayerone-mainnet", - "2124": "metaplayerone-dubai-testnet", - "2136": "bigshortbets-testnet", - "2137": "bigshortbets", - "2138": "defi-oracle-meta-testnet", - "2140": "oneness-network", - "2141": "oneness-testnet", - "2151": "bosagora-mainnet", - "2152": "findora-mainnet", - "2153": "findora-testnet", - "2154": "findora-forge", - "2162": "animechain-testnet", - "2199": "moonsama-network", - "2202": "antofy-mainnet", - "2203": "bitcoin-evm", - "2213": "evanesco-mainnet", - "2221": "kava-testnet", - "2222": "kava", - "2223": "vchain-mainnet", - "2241": "krest-network", - "2300": "bomb-chain", - "2306": "ebro-network", - "2309": "arevia", - "2311": "chronicle-vesuvius---lit-protocol-testnet", - "2323": "soma-network-testnet", - "2330": "altcoinchain", - "2331": "rss3-vsl-sepolia-testnet", - "2332": "soma-network-mainnet", - "2340": "atleta-olympia", - "2342": "omnia-chain", - "2355": "silicon-zkevm", - "2358": "kroma-sepolia", - "2370": "nexis-network-testnet", - "2399": "bomb-chain-testnet", - "2400": "tcg-verse-mainnet", - "2410": "karak-mainnet", - "2415": "xodex", - "2425": "king-of-legends-mainnet", - "2442": "polygon-zkevm-cardona-testnet", - "2458": "hybrid-chain-network-testnet", - "2468": "hybrid-chain-network-mainnet", - "2484": "unicorn-ultra-nebulas-testnet", - "2522": "fraxtal-testnet", - "2525": "inevm-mainnet", - "2559": "kortho-mainnet", - "2569": "techpay-mainnet", - "2606": "pocrnet", - "2611": "redlight-chain-mainnet", - "2612": "ezchain-c-chain-mainnet", - "2613": "ezchain-c-chain-testnet", - "2625": "whitechain-testnet", - "2648": "ailayer-testnet", - "2649": "ailayer-mainnet", - "2662": "apex", - "2710": "morph-testnet", - "2718": "k-laos", - "2730": "xr-sepolia", - "2731": "elizabeth-testnet", - "2748": "nanon", - "2777": "gm-network-mainnet", - "2810": "morph-holesky", - "2882": "chips-network", - "2907": "elux-chain", - "2911": "hychain", - "2941": "xenon-chain-testnet", - "2999": "bityuan-mainnet", - "3000": "cennznet-rata", - "3001": "cennznet-nikau", - "3003": "canxium-mainnet", - "3011": "playa3ull-games", - "3031": "orlando-chain", - "3033": "rebus-testnet", - "3068": "bifrost-mainnet", - "3073": "movement-evm", - "3084": "xl-network-testnet", - "3100": "immu3-evm", - "3102": "vulture-evm-beta", - "3109": "satoshivm-alpha-mainnet", - "3110": "satoshivm-testnet", - "3269": "dubxcoin-network", - "3270": "dubxcoin-testnet", - "3306": "debounce-subnet-testnet", - "3331": "zcore-testnet", - "3333": "ethstorage-testnet", - "3334": "web3q-galileo", - "3335": "ethstorage-mainnet", - "3338": "peaq", - "3400": "paribu-net-mainnet", - "3424": "evolve-mainnet", - "3434": "securechain-testnet", - "3456": "layeredge-testnet", - "3490": "gtcscan", - "3500": "paribu-net-testnet", - "3501": "jfin-chain", - "3601": "pandoproject-mainnet", - "3602": "pandoproject-testnet", - "3630": "tycooncoin", - "3636": "botanix-testnet", - "3637": "botanix-mainnet", - "3639": "ichain-network", - "3645": "ichain-testnet", - "3666": "jouleverse-mainnet", - "3690": "bittex-mainnet", - "3693": "empire-network", - "3698": "senjepowers-testnet", - "3699": "senjepowers-mainnet", - "3737": "crossbell", - "3776": "astar-zkevm", - "3797": "alveychain-mainnet", - "3799": "tangle-testnet", - "3885": "firechain-zkevm-ghostrider", - "3888": "kalychain-mainnet", - "3889": "kalychain-testnet", - "3912": "drac-network", - "3939": "dos-tesnet", - "3966": "dyno-mainnet", - "3967": "dyno-testnet", - "3993": "apex-testnet", - "3999": "yuanchain-mainnet", - "4000": "ozone-chain-mainnet", - "4001": "peperium-chain-testnet", - "4002": "fantom-testnet", - "4003": "x1-fastnet", - "4040": "carbonium-testnet-network", - "4048": "gan-testnet", - "4058": "bahamut-ocean", - "4061": "nahmii-3-mainnet", - "4062": "nahmii-3-testnet", - "4078": "muster-mainnet", - "4080": "tobe-chain", - "4090": "fastex-chain-(bahamut)-oasis-testnet", - "4096": "bitindi-testnet", - "4099": "bitindi-mainnet", - "4102": "aioz-network-testnet", - "4139": "humans.ai-testnet", - "4141": "tipboxcoin-testnet", - "4157": "crossfi-testnet", - "4162": "sx-rollup", - "4181": "phi-network-v1", - "4200": "merlin-mainnet", - "4201": "lukso-testnet", - "4202": "lisk-sepolia-testnet", - "4242": "nexi-mainnet", - "4243": "nexi-v2-mainnet", - "4337": "beam", - "4400": "credit-smart-chain-mainnet", - "4444": "htmlcoin-mainnet", - "4460": "orderly-sepolia-testnet", - "4488": "hydra-chain", - "4544": "emoney-network-testnet", - "4613": "very-mainnet", - "4653": "gold-chain", - "4689": "iotex-network-mainnet", - "4690": "iotex-network-testnet", - "4759": "meverse-chain-testnet", - "4777": "blackfort-exchange-network-testnet", - "4801": "world-chain-sepolia-testnet", - "4893": "globel-chain", - "4918": "venidium-testnet", - "4919": "venidium-mainnet", - "4999": "blackfort-exchange-network", - "5000": "mantle", - "5001": "mantle-testnet", - "5002": "treasurenet-mainnet-alpha", - "5003": "mantle-sepolia-testnet", - "5005": "treasurenet-testnet", - "5039": "onigiri-test-subnet", - "5040": "onigiri-subnet", - "5051": "nollie-skatechain-testnet", - "5100": "syndicate-testnet", - "5101": "syndicate-frame-chain", - "5102": "sic-testnet", - "5103": "coordinape-testnet", - "5104": "charmverse-testnet", - "5105": "superloyalty-testnet", - "5106": "azra-testnet", - "5112": "ham", - "5151": "mechain-testnet", - "5165": "bahamut", - "5169": "smart-layer-network", - "5177": "tlchain-network-mainnet", - "5197": "eraswap-mainnet", - "5234": "humanode-mainnet", - "5315": "uzmi-network-mainnet", - "5317": "optrust-testnet", - "5321": "itx-testnet", - "5333": "netsbo", - "5353": "tritanium-testnet", - "5372": "settlus-testnet", - "5424": "edexa-mainnet", - "5439": "egochain", - "5522": "vex-evm-testnet", - "5551": "nahmii-2-mainnet", - "5555": "chain-verse-mainnet", - "5611": "opbnb-testnet", - "5615": "arcturus-testneet", - "5616": "arcturus-chain-testnet", - "5656": "qie-blockchain", - "5675": "filenova-testnet", - "5678": "tanssi-demo", - "5700": "syscoin-tanenbaum-testnet", - "5729": "hika-network-testnet", - "5758": "satoshichain-testnet", - "5777": "ganache", - "5845": "tangle", - "5851": "ontology-testnet", - "5858": "chang-chain-foundation-mainnet", - "5869": "wegochain-rubidium-mainnet", - "6000": "bouncebit-testnet", - "6001": "bouncebit-mainnet", - "6065": "tres-testnet", - "6066": "tres-mainnet", - "6102": "cascadia-testnet", - "6118": "uptn-testnet", - "6119": "uptn", - "6283": "laos", - "6321": "aura-euphoria-testnet", - "6322": "aura-mainnet", - "6363": "digit-soul-smart-chain", - "6398": "connext-sepolia", - "6502": "peerpay", - "6550": "flamma-testnet", - "6552": "scolcoin-weichain-testnet", - "6565": "fox-testnet-network", - "6626": "pixie-chain-mainnet", - "6660": "latest-chain-testnet", - "6661": "cybria-mainnet", - "6666": "cybria-testnet", - "6678": "edge-matrix-chain", - "6688": "irishub", - "6699": "ox-chain", - "6701": "paxb-mainnet", - "6779": "compverse-mainnet", - "6789": "gold-smart-chain-mainnet", - "6805": "race-mainnet", - "6806": "race-testnet", - "6868": "pools-mainnet", - "6969": "tomb-chain-mainnet", - "6999": "polysmartchain", - "7000": "zetachain-mainnet", - "7001": "zetachain-testnet", - "7007": "bst-chain", - "7027": "ella-the-heart", - "7070": "planq-mainnet", - "7077": "planq-atlas-testnet", - "7100": "nume", - "7118": "help-the-homeless", - "7171": "bitrock-mainnet", - "7222": "nibiru-devnet-3", - "7244": "zeus-testnet", - "7300": "xpla-verse", - "7331": "klyntar", - "7332": "horizen-eon-mainnet", - "7341": "shyft-mainnet", - "7484": "raba-network-mainnet", - "7518": "meverse-chain-mainnet", - "7560": "cyber-mainnet", - "7575": "adil-testnet", - "7576": "adil-chain-v2-mainnet", - "7668": "the-root-network---mainnet", - "7672": "the-root-network---porcini-testnet", - "7700": "canto", - "7701": "canto-tesnet", - "7771": "bitrock-testnet", - "7774": "gdcc-mainnet", - "7775": "gdcc-testnet", - "7776": "pandasea-mainnet", - "7777": "rise-of-the-warbots-testnet", - "7778": "orenium-mainnet-protocol", - "7798": "openex-long-testnet", - "7860": "maalchain-testnet", - "7862": "maalchain-v2", - "7863": "maalchain-testnet-v2", - "7878": "hazlor-testnet", - "7887": "kinto-mainnet", - "7895": "ardenium-athena", - "7923": "dot-blox", - "7924": "mo-mainnet", - "7979": "dos-chain", - "8000": "teleport", - "8001": "teleport-testnet", - "8008": "polynomial", - "8029": "mdgl-testnet", - "8047": "boat-mainnet", - "8054": "karak-sepolia", - "8080": "shardeum-liberty-1.x", - "8081": "shardeum-liberty-2.x", - "8082": "shardeum-sphinx-1.x", - "8086": "bitcoin-chain", - "8087": "e-dollar", - "8098": "streamux-blockchain", - "8131": "qitmeer-network-testnet", - "8132": "qitmeer-network-mixnet", - "8133": "qitmeer-network-privnet", - "8134": "amana", - "8135": "flana", - "8136": "mizana", - "8181": "testnet-beone-chain", - "8192": "torus-mainnet", - "8194": "torus-testnet", - "8217": "kaia-mainnet", - "8227": "space-subnet", - "8272": "blockton-blockchain", - "8285": "korthotest", - "8329": "lorenzo", - "8333": "b3", - "8387": "dracones-financial-services", - "8453": "base", - "8545": "chakra-testnet", - "8654": "toki-network", - "8655": "toki-testnet", - "8668": "hela-official-runtime-mainnet", - "8723": "tool-global-mainnet", - "8724": "tool-global-testnet", - "8726": "storagechain-mainnet", - "8727": "storagechain-testnet", - "8732": "bullions-smart-chain", - "8738": "alph-network", - "8768": "tmy-chain", - "8822": "iota-evm", - "8844": "hydra-chain-testnet", - "8848": "maro-blockchain-mainnet", - "8866": "superlumio", - "8869": "lif3-chain", - "8880": "unique", - "8881": "quartz-by-unique", - "8882": "opal-testnet-by-unique", - "8883": "sapphire-by-unique", - "8886": "avenium-testnet", - "8888": "xanachain", - "8889": "vyvo-smart-chain", - "8890": "orenium-testnet-protocol", - "8898": "mammoth-mainnet", - "8899": "jibchain-l1", - "8911": "algen", - "8912": "algen-testnet", - "8921": "algen-layer2", - "8922": "algen-layer2-testnet", - "8989": "giant-mammoth-mainnet", - "8995": "bloxberg", - "9000": "evmos-testnet", - "9001": "evmos", - "9007": "shido-testnet-block", - "9008": "shido-mainnet-block", - "9012": "berylbit-mainnet", - "9024": "nexa-testnet-block", - "9025": "nexa-mainnet-block", - "9069": "apex-fusion---nexus-mainnet", - "9070": "apex-fusion---nexus-testnet", - "9100": "genesis-coin", - "9223": "codefin-mainnet", - "9339": "dogcoin-testnet", - "9372": "oasys-testnet", - "9393": "dela-sepolia-testnet", - "9395": "evoke-mainnet", - "9496": "weavevm-testnet", - "9527": "rangers-protocol-testnet-robin", - "9528": "qeasyweb3-testnet", - "9559": "neonlink-testnet", - "9700": "oort-mainnetdev", - "9728": "boba-bnb-testnet", - "9768": "mainnetz-testnet", - "9779": "pepenetwork-mainnet", - "9789": "tabi-testnet", - "9790": "carbon-evm", - "9792": "carbon-evm-testnet", - "9797": "optimusz7-mainnet", - "9818": "imperium-testnet", - "9819": "imperium-mainnet", - "9876": "binarychain-testnet", - "9888": "dogelayer-mainnet", - "9898": "larissa-chain", - "9911": "espento-mainnet", - "9977": "mind-smart-chain-testnet", - "9980": "combo-mainnet", - "9981": "volley-mainnet", - "9990": "agung-network", - "9996": "mind-smart-chain-mainnet", - "9997": "altlayer-testnet", - "9998": "ztc-mainnet", - "9999": "myown-testnet", - "10000": "smart-bitcoin-cash", - "10001": "smart-bitcoin-cash-testnet", - "10024": "gon-chain", - "10081": "japan-open-chain-testnet", - "10086": "sjatsh", - "10096": "metanova-verse", - "10101": "blockchain-genesis-mainnet", - "10200": "gnosis-chiado-testnet", - "10201": "maxxchain-mainnet", - "10222": "glscan", - "10242": "arthera-mainnet", - "10243": "arthera-testnet", - "10248": "0xtade", - "10321": "tao-evm-mainnet", - "10324": "tao-evm-testnet", - "10395": "worldland-testnet", - "10507": "numbers-mainnet", - "10508": "numbers-testnet", - "10823": "cryptocoinpay", - "10849": "lamina1", - "10850": "lamina1-identity", - "10946": "quadrans-blockchain", - "10947": "quadrans-blockchain-testnet", - "11011": "shape-sepolia-testnet", - "11110": "astra", - "11111": "wagmi", - "11115": "astra-testnet", - "11119": "hashbit-mainnet", - "11124": "abstract-testnet", - "11221": "shine-chain", - "11227": "jiritsu-testnet-subnet", - "11235": "haqq-network", - "11437": "shyft-testnet", - "11501": "bevm-mainnet", - "11503": "bevm-testnet", - "11521": "satschain", - "11612": "sardis-testnet", - "11822": "artela-testnet", - "11891": "polygon-supernet-arianee", - "12001": "fuse-testnet", - "12009": "satoshichain-mainnet", - "12020": "aternos", - "12051": "singularity-zero-testnet", - "12052": "singularity-zero-mainnet", - "12123": "brc-chain-mainnet", - "12306": "fibonacci-mainnet", - "12321": "blg-testnet", - "12324": "l3x-protocol", - "12325": "l3x-protocol-testnet", - "12345": "step-testnet", - "12553": "rss3-vsl-mainnet", - "12715": "rikeza-network-testnet", - "12781": "playdapp-testnet", - "12890": "quantum-chain-testnet", - "12898": "playfair-testnet-subnet", - "13000": "sps", - "13308": "credit-smart-chain", - "13337": "beam-testnet", - "13371": "immutable-zkevm", - "13381": "phoenix-mainnet", - "13396": "masa", - "13473": "immutable-zkevm-testnet", - "13505": "gravity-alpha-testnet-sepolia", - "13600": "kronobit-mainnet", - "13812": "susono", - "14000": "sps-testnet", - "14324": "evolve-testnet", - "14333": "vitruveo-testnet", - "14801": "vana-satori-testnet", - "14853": "humanode-testnet-5-israfel", - "15003": "immutable-zkevm-devnet", - "15257": "poodl-testnet", - "15259": "poodl-mainnet", - "15430": "kymtc-mainnet", - "15551": "loopnetwork-mainnet", - "15555": "trust-evm-testnet", - "15557": "eos-evm-network-testnet", - "16000": "metadot-mainnet", - "16001": "metadot-testnet", - "16116": "defiverse-mainnet", - "16166": "cypherium-mainnet", - "16180": "plyr-phi", - "16350": "incentiv-devnet", - "16481": "pivotal-sepolia", - "16507": "genesys-mainnet", - "16600": "0g-newton-testnet", - "16688": "irishub-testnet", - "16718": "airdao-mainnet", - "16888": "ivar-chain-testnet", - "17000": "holesky", - "17069": "garnet-holesky", - "17071": "onchain-points", - "17117": "defiverse-testnet", - "17171": "g8chain-mainnet", - "17172": "eclipse-subnet", - "17180": "palette-chain-testnet", - "17217": "konet-mainnet", - "17777": "eos-evm-network", - "18000": "frontier-of-dreams-testnet", - "18122": "smart-trade-networks", - "18159": "proof-of-memes", - "18181": "g8chain-testnet", - "18233": "unreal", - "18686": "mxc-zkevm-moonchain", - "18888": "titan-(tkx)", - "18889": "titan-(tkx)-testnet", - "19011": "home-verse-mainnet", - "19077": "blockx-atlantis-testnet", - "19191": "blockx-mainnet", - "19224": "decentraconnect-social", - "19527": "magnet-network", - "19600": "lbry-mainnet", - "19845": "btcix-network", - "20001": "camelark-mainnet", - "20041": "niza-chain-mainnet", - "20073": "niza-chain-testnet", - "20729": "callisto-testnet", - "20736": "p12-chain", - "20765": "jono11-subnet", - "21004": "c4ei", - "21133": "all-about-healthy", - "21223": "dcpay-mainnet", - "21224": "dcpay-testnet", - "21337": "cennznet-azalea", - "21363": "lestnet", - "21816": "omchain-mainnet", - "21912": "bsl-mainnet", - "22023": "taycan", - "22040": "airdao-testnet", - "22222": "nautilus-mainnet", - "22324": "goldxchain-testnet", - "22776": "map-protocol", - "23006": "antofy-testnet", - "23118": "opside-testnet", - "23294": "oasis-sapphire", - "23295": "oasis-sapphire-testnet", - "23451": "dreyerx-mainnet", - "23452": "dreyerx-testnet", - "23888": "blast-testnet", - "24076": "kymtc-testnet", - "24484": "webchain", - "24734": "mintme.com-coin", - "25186": "liquidlayer-mainnet", - "25839": "alveychain-testnet", - "25888": "hammer-chain-mainnet", - "25925": "bitkub-chain-testnet", - "26026": "ferrum-testnet", - "26482": "ducatusx-testnet", - "26483": "ducatusx", - "26600": "hertz-network-mainnet", - "26863": "oasischain-mainnet", - "27181": "klaos-nova", - "27483": "nanon-sepolia", - "27827": "zeroone-mainnet-subnet", - "28516": "vizing-testnet", - "28518": "vizing-mainnet", - "28528": "optimism-bedrock-(goerli-alpha-testnet)", - "28882": "boba-sepolia", - "29112": "hychain-testnet", - "29223": "nexa-metanet", - "29536": "kaichain-testnet", - "29548": "mch-verse-mainnet", - "30067": "piece-testnet", - "30088": "miyou-mainnet", - "30103": "cerium-testnet", - "30730": "movement-evm-legacy", - "30731": "movement-evm-devnet", - "30732": "movement-evm-testnet", - "31102": "ethersocial-network", - "31223": "cloudtx-mainnet", - "31224": "cloudtx-testnet", - "31337": "gochain-testnet", - "31414": "evoke-testnet", - "31753": "xchain-mainnet", - "31754": "xchain-testnet", - "32001": "w3gamez-holesky-testnet", - "32382": "santiment-intelligence-network", - "32520": "bitgert-mainnet", - "32659": "fusion-mainnet", - "32769": "zilliqa-evm", - "32990": "zilliqa-evm-isolated-server", - "33033": "entangle-mainnet", - "33101": "zilliqa-evm-testnet", - "33103": "zilliqa-2-evm-proto-testnet", - "33111": "curtis", - "33133": "entangle-testnet", - "33210": "cloudverse-subnet", - "33333": "aves-mainnet", - "33385": "zilliqa-evm-devnet", - "33401": "slingshot", - "33469": "zilliqa-2-evm-devnet", - "33979": "funki", - "34443": "mode", - "34504": "zeus-mainnet", - "35011": "j2o-taro", - "35441": "q-mainnet", - "35443": "q-testnet", - "38400": "connectormanager", - "38401": "connectormanager-robin", - "39656": "prm-mainnet", - "39797": "energi-mainnet", - "39815": "oho-mainnet", - "41455": "aleph-zero-evm", - "41500": "opulent-x-beta", - "42069": "pegglecoin", - "42072": "agentlayer-testnet", - "42161": "arbitrum-one", - "42170": "arbitrum-nova", - "42220": "celo-mainnet", - "42261": "oasis-emerald-testnet", - "42262": "oasis-emerald", - "42355": "goldxchain-mainnet", - "42421": "assetchain-testnet", - "42766": "zkfair-mainnet", - "42793": "etherlink-mainnet", - "42801": "gesoten-verse-testnet", - "42888": "kinto-testnet", - "43110": "athereum", - "43111": "hemi-network", - "43113": "avalanche-fuji-testnet", - "43114": "avalanche-c-chain", - "43851": "zkfair-testnet", - "44444": "frenchain", - "44445": "quantum-network", - "44787": "celo-alfajores-testnet", - "45000": "autobahn-network", - "45454": "swamps-l2", - "45510": "deelance-mainnet", - "45513": "blessnet", - "46688": "fusion-testnet", - "47763": "neo-x-mainnet", - "47803": "redefi-layer-1", - "47805": "rei-network", - "48795": "space-subnet-testnet", - "48899": "zircuit-testnet", - "48900": "zircuit-mainnet", - "49049": "wireshape-floripa-testnet", - "49088": "bifrost-testnet", - "49321": "gunz-testnet", - "49797": "energi-testnet", - "50001": "liveplex-oracleevm", - "50005": "yooldo-verse-mainnet", - "50006": "yooldo-verse-testnet", - "50021": "gton-testnet", - "51178": "lumoz-testnet-alpha", - "51712": "sardis-mainnet", - "52014": "electroneum-mainnet", - "53277": "doid", - "53302": "superseed-sepolia-testnet", - "53457": "dodochain-testnet", - "53935": "dfk-chain", - "54211": "haqq-chain-testnet", - "54321": "toronet-testnet", - "55004": "titan", - "55551": "photon-aurora-testnet", - "55555": "rei-chain-mainnet", - "55556": "rei-chain-testnet", - "55614": "flamma-mainnet", - "56026": "lambda-chain-mainnet", - "56288": "boba-bnb-mainnet", - "56400": "testnet-zeroone-subnet", - "56789": "velo-labs-mainnet", - "56797": "doid-testnet", - "57000": "rollux-testnet", - "57451": "coinsec-network", - "58008": "sepolia-pgn-(public-goods-network)", - "59140": "linea-goerli", - "59141": "linea-sepolia", - "59144": "linea", - "59902": "metis-sepolia-testnet", - "59971": "genesys-code-mainnet", - "60000": "thinkium-testnet-chain-0", - "60001": "thinkium-testnet-chain-1", - "60002": "thinkium-testnet-chain-2", - "60103": "thinkium-testnet-chain-103", - "60808": "bob", - "61022": "orange-chain-mainnet", - "61406": "kaichain", - "61800": "axelchain-dev-net", - "61803": "etica-mainnet", - "61916": "doken-super-chain-mainnet", - "62049": "optopia-testnet", - "62050": "optopia-mainnet", - "62298": "citrea-devnet", - "62320": "celo-baklava-testnet", - "62621": "multivac-mainnet", - "62831": "plyr-tau-testnet", - "62850": "laos-sigma-testnet", - "63000": "ecredits-mainnet", - "63001": "ecredits-testnet", - "65349": "cratd2c-testnet", - "65357": "vecno-mainnet", - "65450": "scolcoin-mainnet", - "65536": "automata-mainnet", - "66988": "janus-testnet", - "67588": "cosmic-chain", - "68770": "dm2-verse-mainnet", - "69420": "condrieu", - "70000": "thinkium-mainnet-chain-0", - "70001": "thinkium-mainnet-chain-1", - "70002": "thinkium-mainnet-chain-2", - "70103": "thinkium-mainnet-chain-103", - "70700": "proof-of-play---apex", - "71111": "guapcoinx", - "71393": "polyjuice-testnet", - "71401": "godwoken-testnet-v1", - "71402": "godwoken-mainnet", - "72778": "caga-crypto-ankara-testnet", - "72992": "grok-chain-mainnet", - "73114": "icb-testnet", - "73115": "icb-network", - "73799": "energy-web-volta-testnet", - "73927": "mixin-virtual-machine", - "75000": "resincoin-mainnet", - "75512": "geek-verse-mainnet", - "75513": "geek-verse-testnet", - "77001": "borachain-mainnet", - "77238": "foundry-chain-testnet", - "77612": "vention-smart-chain-mainnet", - "77677": "cycle-network-mainnet-sailboat", - "77777": "toronet-mainnet", - "78110": "firenze-test-network", - "78281": "dragonfly-mainnet-(hexapod)", - "78430": "amplify-subnet", - "78431": "bulletin-subnet", - "78432": "conduit-subnet", - "78600": "vanguard", - "79879": "gold-smart-chain-testnet", - "80001": "mumbai", - "80002": "amoy", - "80008": "polynomia-sepolia", - "80084": "berachain-bartio", - "80085": "berachain-artio", - "80096": "hizoco-mainnet", - "81041": "nordek-mainnet", - "81341": "amana-testnet", - "81342": "amana-mixnet", - "81343": "amana-privnet", - "81351": "flana-testnet", - "81352": "flana-mixnet", - "81353": "flana-privnet", - "81361": "mizana-testnet", - "81362": "mizana-mixnet", - "81363": "mizana-privnet", - "81457": "blast", - "81720": "quantum-chain-mainnet", - "82459": "smart-layer-network-testnet", - "83144": "xprotocol-testnet", - "83278": "esa", - "83872": "zedxion", - "84531": "base-goerli-testnet", - "84532": "base-sepolia-testnet", - "84886": "aerie-network", - "85449": "cybertrust", - "88002": "nautilus-proteus-testnet", - "88559": "inoai", - "88800": "zkasino-mainnet", - "88817": "unit-zero-testnet", - "88819": "unit-zero-stagenet", - "88882": "chiliz-spicy-testnet", - "88888": "chiliz-chain-mainnet", - "90001": "f(x)core-testnet-network", - "90210": "beverly-hills", - "90354": "camp-testnet", - "91002": "nautilus-trition-chain", - "91120": "metadap-enterprise-mainnet", - "91715": "combo-testnet", - "92001": "lambda-testnet", - "93572": "liquidlayer-testnet", - "93747": "stratovm-testnet", - "96970": "mantis-testnet-(hexapod)", - "97435": "slingshot-testnet", - "97531": "green-chain-testnet", - "97970": "optimusz7-testnet", - "98881": "ebi-chain", - "99099": "eliberty-testnet", - "99876": "edge-matrix-chain-testnet", - "99998": "ub-smart-chain(testnet)", - "99999": "ub-smart-chain", - "100000": "quarkchain-mainnet-root", - "100001": "quarkchain-mainnet-shard-0", - "100002": "quarkchain-mainnet-shard-1", - "100003": "quarkchain-mainnet-shard-2", - "100004": "quarkchain-mainnet-shard-3", - "100005": "quarkchain-mainnet-shard-4", - "100006": "quarkchain-mainnet-shard-5", - "100007": "quarkchain-mainnet-shard-6", - "100008": "quarkchain-mainnet-shard-7", - "100009": "vechain", - "100010": "vechain-testnet", - "100011": "quarkchain-l2-mainnet", - "101010": "global-trust-network", - "102031": "creditcoin-testnet", - "103090": "crystaleum", - "103454": "masa-testnet", - "104566": "kaspaclassic-mainnet", - "105105": "stratis-mainnet", - "108801": "brochain-mainnet", - "110000": "quarkchain-devnet-root", - "110001": "quarkchain-devnet-shard-0", - "110002": "quarkchain-devnet-shard-1", - "110003": "quarkchain-devnet-shard-2", - "110004": "quarkchain-devnet-shard-3", - "110005": "quarkchain-devnet-shard-4", - "110006": "quarkchain-devnet-shard-5", - "110007": "quarkchain-devnet-shard-6", - "110008": "quarkchain-devnet-shard-7", - "110011": "quarkchain-l2-testnet", - "110110": "mars-credit", - "111000": "siberium-test-network", - "111111": "siberium-network", - "111188": "re.al", - "112358": "metachain-one-mainnet", - "119139": "metadap-enterprise-testnet", - "123321": "gemchain", - "123456": "adil-devnet", - "128123": "etherlink-testnet", - "131313": "odyssey-chain-(testnet)", - "131419": "etnd-chain-mainnets", - "132902": "form-testnet", - "141319": "magape-testnet", - "142857": "icplaza-mainnet", - "161212": "playfi-mainnet", - "165279": "eclat-mainnet", - "167000": "taiko-mainnet", - "167008": "taiko-katla-l2", - "167009": "taiko-hekla-l2", - "175177": "chronicle---lit-protocol-testnet", - "175188": "chronicle-yellowstone---lit-protocol-testnet", - "188710": "bitica-chain-mainnet", - "188881": "condor-test-network", - "192940": "mind-network-testnet", - "199991": "mazze-testnet", - "200000": "xfair.ai-testnet", - "200101": "milkomeda-c1-testnet", - "200202": "milkomeda-a1-testnet", - "200625": "akroma", - "200810": "bitlayer-testnet", - "200901": "bitlayer-mainnet", - "201018": "alaya-mainnet", - "201030": "alaya-dev-testnet", - "201804": "mythical-chain", - "202020": "decimal-smart-chain-testnet", - "202212": "x1-devnet", - "202401": "ymtech-besu-testnet", - "202624": "jellie", - "204005": "x1-network", - "205205": "auroria-testnet", - "210049": "gitagi-atlas-testnet", - "210425": "platon-mainnet", - "220315": "mas-mainnet", - "221230": "reapchain-mainnet", - "221231": "reapchain-testnet", - "222222": "hydradx", - "222555": "deepl-mainnet", - "222666": "deepl-testnet", - "224168": "taf-eco-chain-mainnet", - "224422": "conet-sebolia-testnet", - "224433": "conet-holesky", - "229772": "abyss-protocol", - "230315": "hashkey-chain-testnet(discard)", - "234666": "haymo-testnet", - "240515": "orange-chain-testnet", - "246529": "artis-sigma1", - "246785": "artis-testnet-tau1", - "247253": "saakuru-testnet", - "256256": "cmp-mainnet", - "262371": "eclat-testnet", - "266256": "gear-zero-network-testnet", - "271271": "egoncoin-testnet", - "281121": "social-smart-chain-mainnet", - "282828": "zillion-sepolia-testnet", - "292003": "cipherem-testnet", - "309075": "one-world-chain-mainnet", - "313313": "saharaai-testnet", - "314159": "filecoin---calibration-testnet", - "322202": "parex-mainnet", - "323213": "bloom-genesis-testnet", - "327126": "waba-chain-testnet", - "328527": "nal-mainnet", - "330844": "ttcoin-smart-chain-mainnet", - "333313": "bloom-genesis-mainnet", - "333331": "aves-testnet", - "333333": "nativ3-testnet", - "333666": "oone-chain-testnet", - "333777": "oone-chain-devnet", - "333888": "polis-testnet", - "333999": "polis-mainnet", - "336655": "upchain-testnet", - "336666": "upchain-mainnet", - "355110": "bitfinity-network-mainnet", - "355113": "bitfinity-network-testnet", - "360890": "lavita-mainnet", - "363636": "digit-soul-smart-chain-2", - "373737": "hapchain-testnet", - "381931": "metal-c-chain", - "381932": "metal-tahoe-c-chain", - "404040": "tipboxcoin-mainnet", - "413413": "aie-testnet", - "420420": "kekchain", - "420666": "kekchain-(kektest)", - "420692": "alterium-l2-testnet", - "421611": "arbitrum-rinkeby", - "421613": "arbitrum-goerli", - "421614": "arbitrum-sepolia", - "424242": "fastex-chain-testnet", - "431140": "markr-go", - "432201": "dexalot-subnet-testnet", - "432204": "dexalot-subnet", - "444444": "syndr-l3-sepolia", - "444900": "weelink-testnet", - "471100": "patex-sepolia-testnet", - "473861": "ultra-pro-mainnet", - "474142": "openchain-mainnet", - "486487": "gobbl-testnet", - "490000": "autonomys-testnet-nova-domain", - "504441": "playdapp-network", - "512512": "cmp-testnet", - "513100": "dischain", - "526916": "docoin-community-chain", - "534351": "scroll-sepolia-testnet", - "534352": "scroll", - "534849": "shinarium-beta", - "535037": "beaneco-smartchain", - "552981": "one-world-chain-testnet", - "555555": "pentagon-testnet", - "555666": "eclipse-testnet", - "622277": "hypra-mainnet", - "622463": "atlas", - "641230": "bear-network-chain-mainnet", - "651940": "all-mainnet", - "656476": "open-campus-codex", - "660279": "xai-mainnet", - "666666": "vision---vpioneer-test-chain", - "666888": "hela-official-runtime-testnet", - "686868": "won-network", - "696969": "galadriel-devnet", - "710420": "tiltyard-mainnet-subnet", - "713715": "sei-devnet", - "721529": "eram-mainnet", - "743111": "hemi-sepolia", - "751230": "bear-network-chain-testnet", - "752024": "ternoa-testnet", - "761412": "miexs-smartchain", - "764984": "lamina1-testnet", - "767368": "lamina1-identity-testnet", - "776877": "modularium", - "800001": "octaspace", - "808080": "biz-smart-chain-testnet", - "808813": "bob-sepolia", - "810180": "zklink-nova-mainnet", - "810181": "zklink-nova-sepolia-testnet", - "810182": "zklink-nova-goerli-testnet", - "820522": "tsc-testnet", - "827431": "curve-mainnet", - "839320": "prm-testnet", - "840000": "runevm-testnet", - "846000": "4goodnetwork", - "855456": "dodao", - "879151": "blocx-mainnet", - "888882": "rexx-mainnet", - "888888": "vision---mainnet", - "900000": "posichain-mainnet-shard-0", - "910000": "posichain-testnet-shard-0", - "912559": "astria-evm-dusknet", - "920000": "posichain-devnet-shard-0", - "920001": "posichain-devnet-shard-1", - "923018": "fncy-testnet", - "955081": "jono12-subnet", - "955305": "eluvio-content-fabric", - "978657": "treasure-ruby", - "984122": "forma", - "984123": "forma-sketchpad", - "988207": "ecrox-chain-mainnet", - "998899": "supernet-testnet", - "999999": "amchain", - "1100789": "netmind-chain-testnet", - "1127469": "tiltyard-subnet", - "1234567": "sharecle-mainnet", - "1261120": "zkatana", - "1313114": "etho-protocol", - "1313500": "xerom", - "1337702": "kintsugi", - "1337802": "kiln", - "1337803": "zhejiang", - "1398243": "automata-testnet", - "1612127": "playfi-albireo-testnet", - "1637450": "xterio-testnet", - "1731313": "turkey-demo-dev", - "2021398": "debank-testnet", - "2099156": "plian-mainnet-main", - "2206132": "platon-dev-testnet2", - "2611555": "dpu-chain", - "2702128": "xterio-chain", - "3132023": "saharaai-network", - "3141592": "filecoin---butterfly-testnet", - "3397901": "funki-sepolia-sandbox", - "3441005": "manta-pacific-testnet", - "3441006": "manta-pacific-sepolia-testnet", - "4000003": "altlayer-zero-gas-network", - "4281033": "worlds-caldera", - "4444444": "altar-testnet", - "4457845": "zero-testnet-(sepolia)", - "5112023": "numblock-chain", - "5167003": "mxc-wannsee-zkevm-testnet", - "5167004": "moonchain-geneva-testnet", - "5201420": "electroneum-testnet", - "5318008": "reactive-kopli", - "5555555": "imversed-mainnet", - "5555558": "imversed-testnet", - "6038361": "astar-zkyoto", - "6666665": "safe(anwang)-mainnet", - "6666666": "safe(anwang)-testnet", - "7225878": "saakuru-mainnet", - "7355310": "openvessel", - "7668378": "ql1-testnet", - "7762959": "musicoin", - "7777777": "zora", - "8007736": "plian-mainnet-subchain-1", - "8008135": "fhenix-helium", - "8080808": "hokum", - "8601152": "waterfall-8-test-network", - "8794598": "hapchain", - "8888881": "quarix-testnet", - "8888888": "quarix", - "9322252": "xcap", - "9322253": "milvine", - "9999999": "fluence", - "10067275": "plian-testnet-subchain-1", - "10101010": "soverun-mainnet", - "10241024": "alienx-mainnet", - "10241025": "alienx-hal-testnet", - "11145513": "blessnet-sepolia", - "11155111": "sepolia", - "11155420": "op-sepolia-testnet", - "12052024": "memento-testnet", - "12227332": "neox-testnet-t4", - "13068200": "coti-devnet", - "13371337": "pepchain-churchill", - "14288640": "anduschain-mainnet", - "16658437": "plian-testnet-main", - "17000920": "lambda-chain-testnet", - "18071918": "mande-network-mainnet", - "18289463": "iolite", - "19850818": "deepbrainchain-testnet", - "19880818": "deepbrainchain-mainnet", - "20180427": "stability-testnet", - "20180430": "smartmesh-mainnet", - "20181205": "quarkblockchain", - "20201022": "pego-network", - "20230825": "vcity-testnet", - "20240324": "debank-sepolia-testnet", - "20240603": "dbk-chain", - "20241133": "swan-proxima-testnet", - "20482050": "hokum-testnet", - "22052002": "excelon-mainnet", - "27082017": "excoincial-chain-volta-testnet", - "27082022": "excoincial-chain-mainnet", - "28122024": "ancient8-testnet", - "28945486": "auxilium-network-mainnet", - "29032022": "flachain-mainnet", - "31415926": "filecoin---local-testnet", - "35855456": "joys-digital-mainnet", - "37084624": "skale-nebula-hub-testnet", - "39916801": "kingdom-chain", - "43214913": "maistestsubnet", - "52164803": "fluence-testnet", - "61717561": "aquachain", - "65010003": "autonity-bakerloo-(yamuna)-testnet", - "65100003": "autonity-piccadilly-(yamuna)-testnet", - "68840142": "frame-testnet", - "77787778": "0xhash-testnet", - "79479957": "sx-toronto-rollup", - "88558801": "backstop-testnet", - "88888888": "t.e.a.m-blockchain", - "94204209": "polygon-blackberry", - "99415706": "joys-digital-testnet", - "100000000": "ethos", - "108160679": "oraichain-mainnet", - "111557560": "cyber-testnet", - "123420111": "op-celestia-raspberry", - "161221135": "plume-testnet", - "168587773": "blast-sepolia-testnet", - "192837465": "gather-mainnet-network", - "222000222": "kanazawa", - "245022926": "neon-evm-devnet", - "245022929": "neon-evm-devnet-rollup", - "245022934": "neon-evm-mainnet", - "278611351": "razor-skale-chain", - "311752642": "oneledger-mainnet", - "328527624": "nal-sepolia-testnet", - "333000333": "meld", - "356256156": "gather-testnet-network", - "476462898": "skopje-testnet", - "486217935": "gather-devnet-network", - "531050104": "sophon-testnet", - "666666666": "degen-chain", - "888888888": "ancient8", - "889910245": "ptcescan-testnet", - "889910246": "ptcescan-mainnet", - "974399131": "skale-calypso-hub-testnet", - "999999999": "zora-sepolia-testnet", - "1020352220": "skale-titan-hub-testnet", - "1122334455": "ipos-network", - "1146703430": "cyberdecknet", - "1273227453": "human-protocol", - "1313161554": "aurora-mainnet", - "1313161555": "aurora-testnet", - "1313161556": "aurora-betanet", - "1313161560": "powergold", - "1350216234": "skale-titan-hub", - "1351057110": "chaos-(skale-testnet)", - "1380012617": "rari-chain-mainnet", - "1380996178": "raptorchain", - "1444673419": "skale-europa-hub-testnet", - "1482601649": "skale-nebula-hub", - "1511670449": "gpt-mainnet", - "1564830818": "skale-calypso-hub", - "1666600000": "harmony-mainnet-shard-0", - "1666600001": "harmony-mainnet-shard-1", - "1666700000": "harmony-testnet-shard-0", - "1666700001": "harmony-testnet-shard-1", - "1666900000": "harmony-devnet-shard-0", - "1666900001": "harmony-devnet-shard-1", - "1802203764": "kakarot-sepolia", - "1903648807": "gemuchain-testnet", - "1918988905": "rari-chain-testnet", - "2021121117": "datahopper", - "2046399126": "skale-europa-hub", - "3125659152": "pirl", - "4216137055": "oneledger-testnet-frankenstein", - "11297108109": "palm", - "11297108099": "palm-testnet", - "28872323069": "gitswarm-test-network", - "37714555429": "xai-testnet-v2", - "88153591557": "arbitrum-blueberry", - "107107114116": "kakarot-sepolia-deprecated", - "111222333444": "alphabet-mainnet", - "123420000220": "fluence-stage", - "197710212030": "ntity-mainnet", - "197710212031": "haradev-testnet", - "202402181627": "gm-network-testnet", - "383414847825": "zeniq", - "666301171999": "pdc-mainnet", - "6022140761023": "molereum-network", - "2713017997578000": "dchain-testnet", - "2716446429837000": "dchain" -}; -var NETWORK_FAUCETS = { - "1": [], - "2": [], - "3": [ - "http://fauceth.komputing.org?chain=3&address=${ADDRESS}", - "https://faucet.ropsten.be?${ADDRESS}" - ], - "4": [ - "http://fauceth.komputing.org?chain=4&address=${ADDRESS}", - "https://faucet.rinkeby.io" - ], - "5": [ - "http://fauceth.komputing.org?chain=5&address=${ADDRESS}", - "https://goerli-faucet.slock.it?address=${ADDRESS}", - "https://faucet.goerli.mudit.blog" - ], - "7": [], - "8": [], - "9": [], - "10": [], - "11": [], - "12": [], - "13": [], - "14": [], - "15": [], - "16": [ - "https://faucet.flare.network" - ], - "17": [], - "18": [ - "https://faucet-testnet.thundercore.com" - ], - "19": [], - "20": [], - "21": [ - "https://esc-faucet.elastos.io/" - ], - "22": [], - "23": [], - "24": [], - "25": [], - "26": [], - "27": [], - "29": [], - "30": [], - "31": [ - "https://faucet.rsk.co/" - ], - "32": [], - "33": [], - "34": [], - "35": [], - "36": [], - "37": [], - "38": [], - "39": [], - "40": [], - "41": [ - "https://app.telos.net/testnet/developers" - ], - "42": [], - "43": [ - "https://docs.darwinia.network/pangolin-testnet-1e9ac8b09e874e8abd6a7f18c096ca6a" - ], - "44": [], - "45": [ - "https://docs.darwinia.network/pangoro-testnet-70cfec5dc9ca42759959ba3803edaec2" - ], - "46": [], - "47": [], - "48": [], - "49": [], - "50": [], - "51": [ - "https://faucet.apothem.network" - ], - "52": [], - "53": [], - "54": [], - "55": [], - "56": [], - "57": [ - "https://faucet.syscoin.org" - ], - "58": [], - "60": [], - "61": [], - "63": [ - "https://easy.hebeswap.com/#/faucet", - "https://faucet.mordortest.net" - ], - "64": [], - "65": [ - "https://www.okex.com/drawdex" - ], - "66": [], - "67": [], - "68": [], - "69": [ - "http://fauceth.komputing.org?chain=69&address=${ADDRESS}" - ], - "70": [], - "71": [ - "https://faucet.confluxnetwork.org" - ], - "72": [ - "https://faucet.dxscan.io" - ], - "73": [ - "https://faucet-testnet.fncy.world" - ], - "74": [], - "75": [], - "76": [], - "77": [], - "78": [], - "79": [], - "80": [], - "81": [], - "82": [ - "https://faucet.meter.io" - ], - "83": [ - "https://faucet-warringstakes.meter.io" - ], - "84": [], - "85": [ - "https://www.gatescan.org/testnet/faucet" - ], - "86": [ - "https://www.gatescan.org/faucet" - ], - "87": [], - "88": [], - "89": [], - "90": [], - "91": [], - "92": [], - "93": [], - "94": [], - "95": [ - "https://faucet.camdl.gov.kh/" - ], - "96": [], - "97": [ - "https://testnet.bnbchain.org/faucet-smart" - ], - "98": [], - "99": [], - "100": [ - "https://gnosisfaucet.com", - "https://stakely.io/faucet/gnosis-chain-xdai", - "https://faucet.prussia.dev/xdai" - ], - "101": [], - "102": [], - "103": [], - "104": [], - "105": [], - "106": [], - "107": [ - "https://faucet.novanetwork.io" - ], - "108": [], - "109": [], - "110": [], - "111": [ - "https://etherlite.org/faucets" - ], - "112": [], - "113": [ - "https://buy.dehvo.com" - ], - "114": [ - "https://faucet.flare.network" - ], - "117": [], - "118": [], - "119": [], - "120": [ - "http://faucet.nuls.io" - ], - "121": [], - "122": [], - "123": [ - "https://get.fusespark.io" - ], - "124": [], - "125": [ - "https://faucet.oychain.io" - ], - "126": [], - "127": [], - "128": [], - "129": [], - "131": [], - "132": [], - "133": [], - "134": [], - "135": [ - "https://faucet.alyxchain.com" - ], - "136": [], - "137": [], - "138": [], - "139": [], - "140": [], - "141": [], - "142": [], - "144": [], - "145": [], - "147": [], - "148": [], - "150": [ - "https://faucet.sixprotocol.net" - ], - "151": [], - "152": [], - "153": [], - "154": [], - "155": [ - "https://faucet.testnet.tenet.org" - ], - "156": [], - "157": [ - "https://beta.shibariumtech.com/faucet" - ], - "158": [], - "159": [], - "160": [], - "161": [], - "162": [ - "https://discuss.lightstreams.network/t/request-test-tokens" - ], - "163": [], - "164": [], - "166": [], - "167": [], - "168": [], - "169": [], - "170": [ - "https://faucet-testnet.hscscan.com/" - ], - "172": [ - "https://faucet.latam-blockchain.com" - ], - "176": [], - "178": [ - "https://testnet-faucet.abeychain.com" - ], - "179": [], - "180": [], - "181": [], - "184": [], - "185": [], - "186": [], - "187": [], - "188": [], - "189": [], - "190": [], - "191": [], - "193": [], - "195": [ - "https://www.okx.com/xlayer/faucet" - ], - "196": [], - "197": [ - "https://neutrinoschain.com/faucet" - ], - "198": [], - "199": [], - "200": [], - "201": [], - "202": [], - "204": [], - "205": [], - "206": [], - "207": [], - "208": [], - "210": [], - "211": [ - "http://faucet.freight.sh" - ], - "212": [ - "https://faucet.mapprotocol.io" - ], - "213": [], - "214": [], - "217": [], - "220": [ - "https://faucet.scalind.com" - ], - "221": [], - "223": [], - "224": [ - "https://faucet.vrd.network" - ], - "225": [], - "226": [], - "228": [], - "230": [], - "233": [], - "234": [ - "https://protojumbo.jumbochain.org/faucet-smart" - ], - "236": [ - "https://faucet.deamchain.com" - ], - "242": [], - "246": [], - "248": [], - "250": [], - "252": [], - "254": [], - "255": [], - "256": [ - "https://scan-testnet.hecochain.com/faucet" - ], - "258": [], - "259": [], - "261": [ - "https://v2.dex.guru/season-pass/faucet" - ], - "262": [], - "266": [], - "267": [ - "https://testnet.neuraprotocol.io/faucet" - ], - "268": [], - "269": [ - "https://myhpbwallet.com/" - ], - "271": [], - "274": [], - "278": [], - "279": [], - "282": [ - "https://zkevm.cronos.org/faucet" - ], - "288": [], - "291": [], - "295": [], - "296": [ - "https://portal.hedera.com" - ], - "297": [ - "https://portal.hedera.com" - ], - "298": [], - "300": [], - "302": [], - "303": [], - "305": [], - "307": [ - "https://faucet.lovely.network" - ], - "308": [], - "309": [], - "311": [ - "https://faucet.omaxray.com/" - ], - "313": [], - "314": [], - "321": [], - "322": [ - "https://faucet-testnet.kcc.network" - ], - "323": [], - "324": [], - "325": [], - "326": [], - "333": [], - "335": [], - "336": [], - "338": [ - "https://cronos.org/faucet" - ], - "345": [], - "360": [], - "361": [], - "363": [], - "364": [], - "365": [], - "369": [], - "371": [], - "380": [], - "381": [], - "385": [ - "https://pipa.lisinski.online" - ], - "388": [], - "395": [ - "https://faucet.testnet.camdl.gov.kh/" - ], - "397": [], - "398": [], - "399": [], - "400": [ - "https://faucet.hyperonchain.com" - ], - "401": [], - "404": [], - "411": [], - "416": [], - "418": [ - "https://faucet.lachain.network" - ], - "420": [], - "422": [], - "424": [], - "427": [], - "428": [], - "434": [], - "443": [], - "444": [], - "456": [], - "462": [], - "463": [], - "480": [], - "499": [], - "500": [], - "501": [], - "510": [], - "512": [], - "513": [ - "https://scan-testnet.acuteangle.com/faucet" - ], - "516": [], - "520": [ - "https://xsc.pub/faucet" - ], - "529": [], - "530": [], - "534": [], - "537": [], - "542": [], - "545": [ - "https://testnet-faucet.onflow.org" - ], - "555": [], - "558": [], - "568": [ - "https://faucet.dogechain.dog" - ], - "570": [ - "https://rollux.id/faucetapp" - ], - "571": [], - "579": [], - "592": [], - "595": [], - "596": [], - "597": [], - "600": [], - "601": [ - "https://vne.network/rose" - ], - "610": [ - "https://devnet-rpc.darwinchain.ai/faucet" - ], - "612": [], - "614": [], - "624": [], - "625": [], - "634": [], - "646": [ - "https://previewnet-faucet.onflow.org" - ], - "647": [ - "https://faucet.toronto.sx.technology" - ], - "648": [], - "653": [], - "654": [], - "662": [], - "666": [ - "https://chain.pixie.xyz/faucet" - ], - "667": [], - "668": [], - "669": [ - "https://faucet-testnet.juncachain.com" - ], - "686": [], - "690": [], - "700": [], - "701": [], - "707": [], - "708": [ - "https://faucet.bcsdev.io" - ], - "710": [], - "713": [], - "719": [], - "721": [], - "727": [], - "730": [], - "741": [ - "https://faucet.vention.network" - ], - "742": [], - "747": [], - "766": [], - "776": [ - "https://faucet.openchain.info/" - ], - "777": [], - "786": [], - "787": [], - "788": [ - "https://faucet.aerochain.id/" - ], - "789": [], - "799": [ - "https://faucet.testnet.rupaya.io" - ], - "800": [ - "https://faucet.lucidcoin.io" - ], - "803": [], - "808": [], - "810": [ - "https://www.haven1.org/faucet" - ], - "813": [], - "814": [], - "818": [], - "820": [], - "822": [ - "https://faucet.runic.build" - ], - "831": [], - "841": [], - "842": [], - "852": [], - "859": [], - "868": [], - "876": [], - "877": [ - "https://faucet.dexit.network" - ], - "880": [], - "888": [], - "898": [ - "https://faucet.maxi.network" - ], - "899": [], - "900": [ - "https://faucet-testnet.garizon.com" - ], - "901": [ - "https://faucet-testnet.garizon.com" - ], - "902": [ - "https://faucet-testnet.garizon.com" - ], - "903": [ - "https://faucet-testnet.garizon.com" - ], - "909": [], - "910": [], - "911": [], - "917": [ - "https://faucet.thefirechain.com" - ], - "919": [ - "https://sepoliafaucet.com/" - ], - "927": [], - "943": [ - "https://faucet.v4.testnet.pulsechain.com/" - ], - "956": [], - "957": [], - "963": [], - "969": [], - "970": [], - "971": [], - "972": [], - "977": [ - "https://faucet.nepalblockchain.network" - ], - "979": [], - "980": [], - "985": [ - "https://faucet.metamemo.one/" - ], - "987": [], - "989": [], - "990": [ - "https://faucet.eliberty.ngo" - ], - "995": [], - "996": [], - "997": [ - "https://explorer.5ire.network/faucet" - ], - "998": [], - "999": [], - "1000": [], - "1001": [ - "https://faucet.kaia.io" - ], - "1003": [], - "1004": [], - "1007": [], - "1008": [], - "1009": [], - "1010": [], - "1011": [], - "1012": [], - "1022": [], - "1023": [], - "1024": [], - "1028": [], - "1030": [], - "1031": [], - "1038": [ - "https://faucet.bronos.org" - ], - "1039": [], - "1073": [ - "https://evm-toolkit.evm.testnet.shimmer.network", - "https://evm-faucet.testnet.shimmer.network" - ], - "1075": [ - "https://evm-toolkit.evm.testnet.iotaledger.net" - ], - "1079": [], - "1080": [], - "1088": [], - "1089": [], - "1099": [], - "1100": [], - "1101": [], - "1107": [], - "1108": [], - "1111": [], - "1112": [ - "https://wallet.test.wemix.com/faucet" - ], - "1113": [], - "1115": [ - "https://scan.test.btcs.network/faucet" - ], - "1116": [], - "1117": [ - "https://faucet.dogcoin.network" - ], - "1123": [], - "1130": [], - "1131": [], - "1133": [ - "http://tc04.mydefichain.com/faucet" - ], - "1135": [], - "1138": [], - "1139": [], - "1140": [ - "https://scan.boka.network/#/Galois/faucet" - ], - "1147": [ - "https://faucet.flagscan.xyz" - ], - "1149": [], - "1170": [], - "1177": [], - "1188": [], - "1197": [], - "1200": [], - "1201": [], - "1202": [], - "1209": [], - "1210": [ - "https://cuckoo.network/portal/faucet/" - ], - "1213": [], - "1214": [], - "1221": [], - "1223": [], - "1225": [], - "1227": [], - "1229": [], - "1230": [], - "1231": [], - "1234": [], - "1235": [], - "1243": [], - "1244": [ - "https://faucet.archiechain.io" - ], - "1246": [], - "1248": [], - "1252": [ - "https://cicfaucet.com" - ], - "1280": [], - "1284": [], - "1285": [], - "1287": [], - "1288": [], - "1291": [ - "https://faucet.testnet.swisstronik.com" - ], - "1311": [], - "1313": [], - "1314": [], - "1319": [], - "1320": [ - "https://aia-faucet-testnet.aiachain.org" - ], - "1328": [ - "https://atlantic-2.app.sei.io/faucet" - ], - "1329": [], - "1337": [], - "1338": [], - "1339": [], - "1343": [], - "1353": [], - "1369": [], - "1370": [], - "1377": [], - "1379": [], - "1388": [], - "1392": [], - "1414": [], - "1433": [], - "1440": [], - "1442": [], - "1452": [], - "1453": [ - "https://istanbul-faucet.metachain.dev" - ], - "1455": [ - "https://faucet.ctexscan.com" - ], - "1456": [], - "1490": [], - "1499": [], - "1501": [], - "1506": [], - "1507": [], - "1515": [ - "https://faucet.beagle.chat/" - ], - "1559": [], - "1570": [], - "1578": [], - "1617": [], - "1618": [], - "1620": [], - "1625": [], - "1648": [], - "1657": [], - "1662": [], - "1663": [ - "https://faucet.horizen.io" - ], - "1686": [], - "1687": [], - "1688": [], - "1701": [ - "https://evm.anytype.io/faucet" - ], - "1707": [], - "1708": [ - "https://faucet.blockchain.or.th" - ], - "1717": [], - "1718": [], - "1729": [], - "1740": [], - "1750": [], - "1773": [], - "1777": [], - "1789": [], - "1804": [ - "https://github.com/ethereum-pocr/kerleano/blob/main/docs/faucet.md" - ], - "1807": [ - "https://analogfaucet.com" - ], - "1811": [], - "1818": [], - "1819": [ - "https://faucet.cube.network" - ], - "1821": [], - "1856": [], - "1875": [], - "1881": [], - "1890": [], - "1891": [ - "https://faucet.pegasus.lightlink.io/" - ], - "1898": [], - "1899": [], - "1904": [], - "1907": [], - "1908": [ - "https://faucet.bitcichain.com" - ], - "1909": [], - "1911": [], - "1912": [ - "https://claim-faucet.rubychain.io/" - ], - "1918": [], - "1945": [], - "1951": [], - "1953": [], - "1954": [], - "1956": [], - "1961": [], - "1967": [ - "https://faucet.metatime.com/eleanor" - ], - "1969": [ - "https://testnet.scschain.com" - ], - "1970": [], - "1971": [], - "1972": [], - "1975": [], - "1984": [], - "1985": [], - "1986": [], - "1987": [], - "1992": [], - "1993": [], - "1994": [], - "1995": [ - "https://faucet.edexa.com/" - ], - "1996": [], - "1997": [], - "1998": [ - "https://faucet.kyotoprotocol.io" - ], - "2000": [], - "2001": [], - "2002": [], - "2004": [], - "2008": [], - "2009": [], - "2013": [], - "2014": [ - "https://faucet.nowchain.co" - ], - "2016": [], - "2017": [ - "https://telcoin.network/faucet" - ], - "2018": [], - "2019": [], - "2020": [], - "2021": [], - "2022": [], - "2023": [ - "https://ttaycan-faucet.hupayx.io/" - ], - "2024": [], - "2025": [], - "2026": [], - "2031": [], - "2032": [], - "2035": [], - "2037": [], - "2038": [], - "2039": [], - "2040": [], - "2043": [], - "2044": [], - "2045": [], - "2047": [], - "2048": [], - "2049": [], - "2077": [], - "2088": [], - "2100": [], - "2101": [], - "2109": [], - "2112": [], - "2121": [], - "2122": [], - "2124": [], - "2136": [], - "2137": [], - "2138": [], - "2140": [], - "2141": [], - "2151": [], - "2152": [], - "2153": [], - "2154": [], - "2162": [], - "2199": [ - "https://multiverse.moonsama.com/faucet" - ], - "2202": [ - "https://faucet.antofy.io" - ], - "2203": [], - "2213": [], - "2221": [ - "https://faucet.kava.io" - ], - "2222": [], - "2223": [], - "2241": [], - "2300": [], - "2306": [], - "2309": [], - "2311": [ - "https://developer.litprotocol.com/support/intro" - ], - "2323": [ - "https://faucet.somanetwork.io" - ], - "2330": [], - "2331": [], - "2332": [ - "https://airdrop.somanetwork.io" - ], - "2340": [ - "https://app-olympia.atleta.network/faucet" - ], - "2342": [ - "https://www.omniaverse.io" - ], - "2355": [], - "2358": [], - "2370": [ - "https://evm-faucet.nexis.network" - ], - "2399": [ - "https://faucet.bombchain-testnet.ankr.com/" - ], - "2400": [], - "2410": [], - "2415": [], - "2425": [], - "2442": [], - "2458": [ - "https://faucet-testnet.hybridchain.ai" - ], - "2468": [ - "https://faucet-testnet.hybridchain.ai" - ], - "2484": [ - "https://faucet.uniultra.xyz" - ], - "2522": [], - "2525": [], - "2559": [], - "2569": [], - "2606": [], - "2611": [], - "2612": [], - "2613": [ - "https://testnet-faucet.ezchain.com" - ], - "2625": [ - "https://testnet.whitechain.io/faucet" - ], - "2648": [], - "2649": [], - "2662": [], - "2710": [], - "2718": [], - "2730": [], - "2731": [], - "2748": [], - "2777": [], - "2810": [], - "2882": [], - "2907": [], - "2911": [], - "2941": [ - "https://xfaucet.xenonchain.com" - ], - "2999": [], - "3000": [ - "https://app-faucet.centrality.me" - ], - "3001": [ - "https://app-faucet.centrality.me" - ], - "3003": [], - "3011": [], - "3031": [], - "3033": [], - "3068": [], - "3073": [], - "3084": [], - "3100": [], - "3102": [], - "3109": [], - "3110": [], - "3269": [], - "3270": [ - "https://faucet.arabianchain.org/" - ], - "3306": [], - "3331": [ - "https://faucet.zcore.cash" - ], - "3333": [], - "3334": [], - "3335": [], - "3338": [], - "3400": [], - "3424": [], - "3434": [ - "https://faucet.securechain.ai" - ], - "3456": [ - "https://testnet-faucet.layeredge.io" - ], - "3490": [], - "3500": [ - "https://faucet.paribuscan.com" - ], - "3501": [], - "3601": [], - "3602": [], - "3630": [], - "3636": [ - "https://faucet.botanixlabs.dev" - ], - "3637": [ - "https://faucet.btxtestchain.com" - ], - "3639": [], - "3645": [], - "3666": [], - "3690": [], - "3693": [], - "3698": [ - "https://faucet.senjepowersscan.com" - ], - "3699": [ - "https://faucet.senjepowersscan.com" - ], - "3737": [ - "https://faucet.crossbell.io" - ], - "3776": [], - "3797": [], - "3799": [ - "https://faucet.tangle.tools" - ], - "3885": [ - "zkevm-faucet.thefirechain.com" - ], - "3888": [], - "3889": [], - "3912": [ - "https://www.dracscan.io/faucet" - ], - "3939": [], - "3966": [ - "https://faucet.dynoscan.io" - ], - "3967": [ - "https://faucet.dynoscan.io" - ], - "3993": [ - "https://sepoliafaucet.com/" - ], - "3999": [], - "4000": [], - "4001": [], - "4002": [ - "https://faucet.fantom.network" - ], - "4003": [], - "4040": [ - "https://getfaucet.carbonium.network" - ], - "4048": [], - "4058": [], - "4061": [], - "4062": [], - "4078": [], - "4080": [], - "4090": [ - "https://faucet.oasis.fastexchain.com" - ], - "4096": [ - "https://faucet.bitindi.org" - ], - "4099": [ - "https://faucet.bitindi.org" - ], - "4102": [], - "4139": [], - "4141": [ - "https://faucet.tipboxcoin.net" - ], - "4157": [], - "4162": [], - "4181": [], - "4200": [], - "4201": [ - "https://faucet.testnet.lukso.network" - ], - "4202": [ - "https://app.optimism.io/faucet" - ], - "4242": [], - "4243": [], - "4337": [ - "https://faucet.onbeam.com" - ], - "4400": [], - "4444": [ - "https://gruvin.me/htmlcoin" - ], - "4460": [], - "4488": [], - "4544": [ - "https://faucet.emoney.network/faucet" - ], - "4613": [], - "4653": [], - "4689": [], - "4690": [ - "https://faucet.iotex.io/" - ], - "4759": [], - "4777": [], - "4801": [], - "4893": [], - "4918": [], - "4919": [], - "4999": [], - "5000": [], - "5001": [ - "https://faucet.testnet.mantle.xyz" - ], - "5002": [], - "5003": [ - "https://faucet.sepolia.mantle.xyz" - ], - "5005": [], - "5039": [], - "5040": [], - "5051": [], - "5100": [], - "5101": [], - "5102": [], - "5103": [], - "5104": [], - "5105": [], - "5106": [], - "5112": [], - "5151": [ - "https://faucet.mechain.tech" - ], - "5165": [], - "5169": [], - "5177": [], - "5197": [], - "5234": [], - "5315": [], - "5317": [], - "5321": [], - "5333": [], - "5353": [ - "https://faucet.tritanium.network" - ], - "5372": [ - "https://faucet.settlus.io" - ], - "5424": [], - "5439": [], - "5522": [ - "https://t.me/vexfaucetbot" - ], - "5551": [], - "5555": [], - "5611": [ - "https://testnet.bnbchain.org/faucet-smart" - ], - "5615": [ - "https://faucet.arcturuschain.io" - ], - "5616": [], - "5656": [], - "5675": [], - "5678": [], - "5700": [ - "https://faucet.tanenbaum.io" - ], - "5729": [], - "5758": [ - "https://faucet.satoshichain.io" - ], - "5777": [], - "5845": [], - "5851": [ - "https://developer.ont.io/" - ], - "5858": [], - "5869": [], - "6000": [], - "6001": [], - "6065": [ - "http://faucet.tresleches.finance:8080" - ], - "6066": [], - "6102": [ - "https://www.cascadia.foundation/faucet" - ], - "6118": [], - "6119": [], - "6283": [], - "6321": [ - "https://aura.faucetme.pro" - ], - "6322": [], - "6363": [], - "6398": [], - "6502": [], - "6550": [], - "6552": [ - "https://faucet.scolcoin.com" - ], - "6565": [ - "https://faucet.foxchain.app" - ], - "6626": [], - "6660": [ - "http://faucet.latestchain.io" - ], - "6661": [], - "6666": [ - "https://faucet.cybascan.io" - ], - "6678": [], - "6688": [], - "6699": [], - "6701": [], - "6779": [], - "6789": [ - "https://faucet.goldsmartchain.com" - ], - "6805": [], - "6806": [ - "https://faucet.racetestnet.io/" - ], - "6868": [], - "6969": [], - "6999": [], - "7000": [], - "7001": [ - "https://www.zetachain.com/docs/reference/apps/get-testnet-zeta/" - ], - "7007": [], - "7027": [], - "7070": [], - "7077": [], - "7100": [], - "7118": [], - "7171": [], - "7222": [], - "7244": [ - "https://faucet.zeuschainscan.io" - ], - "7300": [], - "7331": [], - "7332": [], - "7341": [], - "7484": [], - "7518": [], - "7560": [], - "7575": [ - "https://testnet-faucet.adil-scan.io" - ], - "7576": [], - "7668": [], - "7672": [], - "7700": [], - "7701": [], - "7771": [ - "https://faucet.bit-rock.io" - ], - "7774": [], - "7775": [], - "7776": [], - "7777": [], - "7778": [], - "7798": [ - "https://long.hub.openex.network/faucet" - ], - "7860": [ - "https://faucet-testnet.maalscan.io/" - ], - "7862": [], - "7863": [ - "https://faucet-new-testnet.maalscan.io/" - ], - "7878": [ - "https://faucet.hazlor.com" - ], - "7887": [], - "7895": [ - "https://faucet-athena.ardescan.com/" - ], - "7923": [], - "7924": [ - "https://faucet.mochain.app/" - ], - "7979": [], - "8000": [], - "8001": [ - "https://chain-docs.teleport.network/testnet/faucet.html" - ], - "8008": [], - "8029": [], - "8047": [], - "8054": [], - "8080": [ - "https://faucet.liberty10.shardeum.org" - ], - "8081": [ - "https://faucet.liberty20.shardeum.org" - ], - "8082": [ - "https://faucet-sphinx.shardeum.org/" - ], - "8086": [], - "8087": [], - "8098": [], - "8131": [ - "https://faucet.qitmeer.io" - ], - "8132": [], - "8133": [], - "8134": [], - "8135": [], - "8136": [], - "8181": [ - "https://testnet.beonescan.com/faucet" - ], - "8192": [], - "8194": [], - "8217": [], - "8227": [], - "8272": [ - "https://faucet.blocktonscan.com/" - ], - "8285": [], - "8329": [], - "8333": [], - "8387": [], - "8453": [], - "8545": [], - "8654": [], - "8655": [], - "8668": [], - "8723": [], - "8724": [ - "https://testnet-explorer.wolot.io" - ], - "8726": [], - "8727": [], - "8732": [], - "8738": [], - "8768": [ - "https://faucet.tmychain.org/" - ], - "8822": [], - "8844": [ - "https://app.testnet.hydrachain.org/faucet" - ], - "8848": [], - "8866": [], - "8869": [], - "8880": [], - "8881": [], - "8882": [ - "https://t.me/unique2faucet_opal_bot" - ], - "8883": [], - "8886": [ - "https://faucet-testnet.avenium.io" - ], - "8888": [], - "8889": [], - "8890": [ - "https://faucetcoin.orenium.org" - ], - "8898": [ - "https://faucet.mmtscan.io/" - ], - "8899": [], - "8911": [], - "8912": [], - "8921": [], - "8922": [], - "8989": [], - "8995": [ - "https://faucet.bloxberg.org/" - ], - "9000": [ - "https://faucet.evmos.dev" - ], - "9001": [], - "9007": [ - "https://testnet.shidoscan.com/faucet" - ], - "9008": [], - "9012": [ - "https://t.me/BerylBit" - ], - "9024": [ - "https://testnet.nexablockscan.io/faucet" - ], - "9025": [], - "9069": [], - "9070": [], - "9100": [], - "9223": [], - "9339": [ - "https://faucet.dogcoin.network" - ], - "9372": [], - "9393": [], - "9395": [], - "9496": [], - "9527": [ - "https://robin-faucet.rangersprotocol.com" - ], - "9528": [ - "http://faucet.qeasyweb3.com" - ], - "9559": [ - "https://faucet.neonlink.io/" - ], - "9700": [], - "9728": [], - "9768": [ - "https://faucet.mainnetz.io" - ], - "9779": [], - "9789": [ - "https://faucet.testnet.tabichain.com" - ], - "9790": [], - "9792": [], - "9797": [], - "9818": [ - "https://faucet.imperiumchain.com/" - ], - "9819": [ - "https://faucet.imperiumchain.com/" - ], - "9876": [ - "https://faucet.testnet.binarychain.org" - ], - "9888": [], - "9898": [], - "9911": [], - "9977": [ - "https://faucet.mindchain.info/" - ], - "9980": [], - "9981": [], - "9990": [], - "9996": [], - "9997": [], - "9998": [], - "9999": [], - "10000": [], - "10001": [], - "10024": [], - "10081": [], - "10086": [], - "10096": [], - "10101": [], - "10200": [ - "https://gnosisfaucet.com" - ], - "10201": [ - "https://faucet.maxxchain.org" - ], - "10222": [], - "10242": [], - "10243": [ - "https://faucet.arthera.net" - ], - "10248": [], - "10321": [], - "10324": [ - "https://faucet.taoevm.io" - ], - "10395": [], - "10507": [], - "10508": [ - "https://faucet.avax.network/?subnet=num", - "https://faucet.num.network" - ], - "10823": [], - "10849": [], - "10850": [], - "10946": [], - "10947": [ - "https://faucetpage.quadrans.io" - ], - "11011": [], - "11110": [], - "11111": [ - "https://faucet.avax.network/?subnet=wagmi" - ], - "11115": [ - "https://faucet.astranaut.dev" - ], - "11119": [], - "11124": [ - "https://faucet.triangleplatform.com/abstract/testnet" - ], - "11221": [], - "11227": [], - "11235": [], - "11437": [], - "11501": [], - "11503": [], - "11521": [], - "11612": [ - "https://faucet.sardisnetwork.com" - ], - "11822": [], - "11891": [], - "12001": [ - "https://faucet.flash.fuse.io" - ], - "12009": [], - "12020": [ - "https://faucet.aternoschain.com" - ], - "12051": [ - "https://nft.singularity.gold" - ], - "12052": [ - "https://zeroscan.singularity.gold" - ], - "12123": [ - "https://faucet.brcchain.io" - ], - "12306": [ - "https://test.fibochain.org/faucets" - ], - "12321": [ - "https://faucet.blgchain.com" - ], - "12324": [], - "12325": [], - "12345": [ - "https://faucet.step.network" - ], - "12553": [], - "12715": [], - "12781": [], - "12890": [], - "12898": [], - "13000": [], - "13308": [], - "13337": [ - "https://faucet.avax.network/?subnet=beam", - "https://faucet.onbeam.com" - ], - "13371": [ - "https://docs.immutable.com/docs/zkEVM/guides/faucet" - ], - "13381": [], - "13396": [], - "13473": [ - "https://docs.immutable.com/docs/zkEVM/guides/faucet" - ], - "13505": [], - "13600": [], - "13812": [], - "14000": [], - "14324": [ - "https://faucet.evolveblockchain.io" - ], - "14333": [ - "https://faucet.vitruveo.xyz" - ], - "14801": [ - "https://faucet.vana.org" - ], - "14853": [ - "https://t.me/HumanodeTestnet5FaucetBot" - ], - "15003": [ - "https://docs.immutable.com/docs/zkEVM/guides/faucet" - ], - "15257": [ - "https://faucet.poodl.org" - ], - "15259": [], - "15430": [], - "15551": [], - "15555": [ - "https://faucet.testnet-dev.trust.one/" - ], - "15557": [], - "16000": [], - "16001": [ - "https://faucet.metadot.network/" - ], - "16116": [], - "16166": [], - "16180": [], - "16350": [ - "https://faucet.incentiv-dev.ankr.network" - ], - "16481": [], - "16507": [], - "16600": [ - "https://faucet.0g.ai" - ], - "16688": [], - "16718": [], - "16888": [ - "https://tfaucet.ivarex.com/" - ], - "17000": [ - "https://faucet.holesky.ethpandaops.io", - "https://holesky-faucet.pk910.de" - ], - "17069": [], - "17071": [], - "17117": [], - "17171": [ - "https://faucet.oneg8.network" - ], - "17172": [], - "17180": [], - "17217": [], - "17777": [], - "18000": [], - "18122": [], - "18159": [], - "18181": [ - "https://faucet.oneg8.network" - ], - "18233": [], - "18686": [], - "18888": [], - "18889": [], - "19011": [], - "19077": [ - "https://ping.blockxnet.com/blockx-atlantis-testnet/faucet" - ], - "19191": [ - "https://ping.blockxnet.com/blockx/faucet" - ], - "19224": [], - "19527": [], - "19600": [], - "19845": [], - "20001": [], - "20041": [], - "20073": [], - "20729": [ - "https://faucet.callisto.network/" - ], - "20736": [], - "20765": [], - "21004": [ - "https://play.google.com/store/apps/details?id=net.c4ei.fps2" - ], - "21133": [ - "https://t.me/c4eiAirdrop" - ], - "21223": [], - "21224": [ - "https://faucet.dcpay.io" - ], - "21337": [], - "21363": [], - "21816": [], - "21912": [], - "22023": [], - "22040": [], - "22222": [], - "22324": [ - "https://faucet.goldxchain.io" - ], - "22776": [], - "23006": [ - "https://faucet.antofy.io" - ], - "23118": [ - "https://faucet.opside.network" - ], - "23294": [], - "23295": [], - "23451": [], - "23452": [], - "23888": [], - "24076": [ - "https://faucet.kymaticscan.online" - ], - "24484": [], - "24734": [], - "25186": [], - "25839": [ - "https://faucet.alveytestnet.com" - ], - "25888": [], - "25925": [ - "https://faucet.bitkubchain.com" - ], - "26026": [ - "https://testnet.faucet.ferrumnetwork.io" - ], - "26482": [], - "26483": [], - "26600": [], - "26863": [ - "http://faucet.oasischain.io" - ], - "27181": [], - "27483": [], - "27827": [], - "28516": [], - "28518": [], - "28528": [], - "28882": [ - "https://www.l2faucet.com/boba" - ], - "29112": [], - "29223": [], - "29536": [ - "https://faucet.kaichain.net" - ], - "29548": [], - "30067": [ - "https://piecenetwork.com/faucet" - ], - "30088": [], - "30103": [], - "30730": [], - "30731": [], - "30732": [], - "31102": [], - "31223": [], - "31224": [ - "https://faucet.cloudtx.finance" - ], - "31337": [], - "31414": [ - "https://faucet.evokescan.org" - ], - "31753": [], - "31754": [ - "https://xchainfaucet.net" - ], - "32001": [], - "32382": [], - "32520": [], - "32659": [], - "32769": [], - "32990": [ - "https://dev-wallet.zilliqa.com/faucet?network=isolated_server" - ], - "33033": [], - "33101": [ - "https://dev-wallet.zilliqa.com/faucet?network=testnet" - ], - "33103": [ - "https://faucet.zq2-prototestnet.zilliqa.com" - ], - "33111": [ - "https://curtis.hub.caldera.xyz" - ], - "33133": [], - "33210": [], - "33333": [], - "33385": [ - "https://faucet.devnet.zilliqa.com/" - ], - "33401": [], - "33469": [ - "https://faucet.zq2-devnet.zilliqa.com" - ], - "33979": [], - "34443": [], - "34504": [], - "35011": [], - "35441": [], - "35443": [], - "38400": [], - "38401": [ - "https://robin-faucet.rangersprotocol.com" - ], - "39656": [], - "39797": [], - "39815": [], - "41455": [], - "41500": [], - "42069": [], - "42072": [], - "42161": [], - "42170": [], - "42220": [], - "42261": [ - "https://faucet.testnet.oasis.io/" - ], - "42262": [], - "42355": [], - "42421": [ - "https://faucet.assetchain.org" - ], - "42766": [], - "42793": [], - "42801": [], - "42888": [], - "43110": [ - "http://athfaucet.ava.network//?address=${ADDRESS}" - ], - "43111": [], - "43113": [ - "https://faucet.avax-test.network/" - ], - "43114": [], - "43851": [], - "44444": [], - "44445": [], - "44787": [ - "https://celo.org/developers/faucet", - "https://cauldron.pretoriaresearchlab.io/alfajores-faucet" - ], - "45000": [], - "45454": [], - "45510": [ - "https://faucet.deelance.com" - ], - "45513": [], - "46688": [], - "47763": [], - "47803": [], - "47805": [], - "48795": [], - "48899": [], - "48900": [], - "49049": [], - "49088": [], - "49321": [], - "49797": [], - "50001": [], - "50005": [], - "50006": [], - "50021": [], - "51178": [], - "51712": [ - "https://faucet.sardisnetwork.com" - ], - "52014": [], - "53277": [], - "53302": [ - "https://sepoliafaucet.com" - ], - "53457": [], - "53935": [], - "54211": [ - "https://testedge2.haqq.network" - ], - "54321": [], - "55004": [], - "55551": [ - "https://photonchain.io/testnet2" - ], - "55555": [ - "http://kururu.finance/faucet?chainId=55555" - ], - "55556": [ - "http://kururu.finance/faucet?chainId=55556" - ], - "55614": [], - "56026": [], - "56288": [], - "56400": [], - "56789": [ - "https://nova-faucet.velo.org" - ], - "56797": [], - "57000": [ - "https://rollux.id/faucetapp" - ], - "57451": [], - "58008": [], - "59140": [ - "https://faucetlink.to/goerli" - ], - "59141": [], - "59144": [], - "59902": [ - "https://sepolia.faucet.metisdevops.link" - ], - "59971": [], - "60000": [ - "https://www.thinkiumdev.net/faucet" - ], - "60001": [ - "https://www.thinkiumdev.net/faucet" - ], - "60002": [ - "https://www.thinkiumdev.net/faucet" - ], - "60103": [ - "https://www.thinkiumdev.net/faucet" - ], - "60808": [], - "61022": [], - "61406": [], - "61800": [], - "61803": [ - "http://faucet.etica-stats.org/" - ], - "61916": [], - "62049": [], - "62050": [], - "62298": [ - "https://citrea.xyz/bridge" - ], - "62320": [ - "https://docs.google.com/forms/d/e/1FAIpQLSdfr1BwUTYepVmmvfVUDRCwALejZ-TUva2YujNpvrEmPAX2pg/viewform", - "https://cauldron.pretoriaresearchlab.io/baklava-faucet" - ], - "62621": [], - "62831": [ - "https://faucet.avax.network/?subnet=plyr" - ], - "62850": [], - "63000": [], - "63001": [ - "https://faucet.tst.ecredits.com" - ], - "65349": [], - "65357": [], - "65450": [], - "65536": [], - "66988": [], - "67588": [], - "68770": [], - "69420": [ - "https://faucet.condrieu.ethdevops.io" - ], - "70000": [], - "70001": [], - "70002": [], - "70103": [], - "70700": [], - "71111": [], - "71393": [ - "https://faucet.nervos.org/" - ], - "71401": [ - "https://testnet.bridge.godwoken.io" - ], - "71402": [], - "72778": [], - "72992": [], - "73114": [], - "73115": [], - "73799": [ - "https://voltafaucet.energyweb.org" - ], - "73927": [], - "75000": [], - "75512": [], - "75513": [], - "77001": [], - "77238": [ - "https://faucet.foundryscan.org" - ], - "77612": [ - "https://faucet.vention.network" - ], - "77677": [], - "77777": [], - "78110": [], - "78281": [], - "78430": [], - "78431": [], - "78432": [], - "78600": [ - "https://faucet.vanarchain.com" - ], - "79879": [ - "https://faucet.goldsmartchain.com" - ], - "80001": [ - "https://faucet.polygon.technology/" - ], - "80002": [ - "https://faucet.polygon.technology/" - ], - "80008": [], - "80084": [ - "https://bartio.faucet.berachain.com" - ], - "80085": [ - "https://artio.faucet.berachain.com" - ], - "80096": [], - "81041": [], - "81341": [], - "81342": [], - "81343": [], - "81351": [], - "81352": [], - "81353": [], - "81361": [], - "81362": [], - "81363": [], - "81457": [], - "81720": [], - "82459": [], - "83144": [ - "https://xprotocol.org/faucets" - ], - "83278": [], - "83872": [], - "84531": [ - "https://www.coinbase.com/faucets/base-ethereum-goerli-faucet" - ], - "84532": [], - "84886": [], - "85449": [], - "88002": [ - "https://proteusfaucet.nautchain.xyz" - ], - "88559": [], - "88800": [], - "88817": [], - "88819": [], - "88882": [ - "https://spicy-faucet.chiliz.com", - "https://tatum.io/faucets/chiliz" - ], - "88888": [ - "https://spicy-faucet.chiliz.com", - "https://tatum.io/faucets/chiliz" - ], - "90001": [], - "90210": [ - "https://faucet.beverlyhills.ethdevops.io" - ], - "90354": [ - "https://www.campnetwork.xyz/faucet" - ], - "91002": [ - "https://faucet.eclipse.builders" - ], - "91120": [], - "91715": [], - "92001": [ - "https://faucet.lambda.top" - ], - "93572": [ - "https://claim.liquidlayer.network" - ], - "93747": [], - "96970": [ - "https://mantis.switch.ch/faucet", - "https://mantis.kore-technologies.ch/faucet", - "https://mantis.phoenix-systems.io/faucet", - "https://mantis.block-spirit.ch/faucet" - ], - "97435": [], - "97531": [], - "97970": [ - "https://faucet.optimusz7.com" - ], - "98881": [], - "99099": [ - "https://faucet.eliberty.ngo" - ], - "99876": [], - "99998": [], - "99999": [], - "100000": [], - "100001": [], - "100002": [], - "100003": [], - "100004": [], - "100005": [], - "100006": [], - "100007": [], - "100008": [], - "100009": [], - "100010": [ - "https://faucet.vecha.in" - ], - "100011": [], - "101010": [], - "102031": [], - "103090": [], - "103454": [], - "104566": [], - "105105": [], - "108801": [], - "110000": [], - "110001": [], - "110002": [], - "110003": [], - "110004": [], - "110005": [], - "110006": [], - "110007": [], - "110008": [], - "110011": [], - "110110": [], - "111000": [], - "111111": [], - "111188": [], - "112358": [], - "119139": [], - "123321": [], - "123456": [], - "128123": [ - "https://faucet.etherlink.com" - ], - "131313": [ - "https://faucet.dioneprotocol.com/" - ], - "131419": [], - "132902": [ - "https://info.form.network/faucet" - ], - "141319": [], - "142857": [], - "161212": [], - "165279": [], - "167000": [], - "167008": [], - "167009": [], - "175177": [ - "https://faucet.litprotocol.com" - ], - "175188": [ - "https://developer.litprotocol.com/support/intro" - ], - "188710": [], - "188881": [ - "https://faucet.condor.systems" - ], - "192940": [], - "199991": [ - "https://faucet.mazze.io/" - ], - "200000": [], - "200101": [], - "200202": [], - "200625": [], - "200810": [ - "https://www.bitlayer.org/faucet" - ], - "200901": [], - "201018": [], - "201030": [ - "https://faucet.alaya.network/faucet/?id=f93426c0887f11eb83b900163e06151c" - ], - "201804": [], - "202020": [], - "202212": [], - "202401": [], - "202624": [], - "204005": [], - "205205": [ - "https://auroria.faucet.stratisevm.com" - ], - "210049": [], - "210425": [], - "220315": [], - "221230": [], - "221231": [ - "http://faucet.reapchain.com" - ], - "222222": [], - "222555": [], - "222666": [ - "https://faucet.deeplnetwork.org" - ], - "224168": [], - "224422": [], - "224433": [], - "229772": [ - "https://faucet.abyssprotocol.ai/" - ], - "230315": [ - "https://testnet.hashkeychain/faucet" - ], - "234666": [], - "240515": [], - "246529": [], - "246785": [], - "247253": [], - "256256": [], - "262371": [ - "https://faucet.eclatscan.com" - ], - "266256": [], - "271271": [ - "https://faucet.egonscan.com" - ], - "281121": [], - "282828": [], - "292003": [], - "309075": [], - "313313": [], - "314159": [ - "https://faucet.calibration.fildev.network/" - ], - "322202": [], - "323213": [ - "https://faucet.bloomgenesis.com" - ], - "327126": [], - "328527": [], - "330844": [ - "https://faucet.tscscan.com" - ], - "333313": [], - "333331": [], - "333333": [], - "333666": [ - "https://apps-test.adigium.com/faucet" - ], - "333777": [ - "https://apps-test.adigium.com/faucet" - ], - "333888": [ - "https://faucet.polis.tech" - ], - "333999": [ - "https://faucet.polis.tech" - ], - "336655": [ - "https://faucet-testnet.uniport.network" - ], - "336666": [], - "355110": [], - "355113": [ - "https://bitfinity.network/faucet" - ], - "360890": [], - "363636": [], - "373737": [], - "381931": [], - "381932": [], - "404040": [ - "https://faucet.tipboxcoin.net" - ], - "413413": [], - "420420": [], - "420666": [], - "420692": [], - "421611": [ - "http://fauceth.komputing.org?chain=421611&address=${ADDRESS}" - ], - "421613": [], - "421614": [], - "424242": [], - "431140": [], - "432201": [ - "https://faucet.avax.network/?subnet=dexalot" - ], - "432204": [], - "444444": [], - "444900": [ - "https://faucet.weelink.gw002.oneitfarm.com" - ], - "471100": [], - "473861": [], - "474142": [], - "486487": [ - "https://faucet.gobbl.io" - ], - "490000": [], - "504441": [], - "512512": [ - "https://dev.caduceus.foundation/testNetwork" - ], - "513100": [], - "526916": [], - "534351": [], - "534352": [], - "534849": [ - "https://faucet.shinarium.org" - ], - "535037": [], - "552981": [ - "https://faucet.oneworldchain.org" - ], - "555555": [ - "https://bridge-testnet.pentagon.games" - ], - "555666": [], - "622277": [], - "622463": [], - "641230": [], - "651940": [], - "656476": [], - "660279": [], - "666666": [ - "https://vpioneerfaucet.visionscan.org" - ], - "666888": [ - "https://testnet-faucet.helachain.com" - ], - "686868": [ - "https://faucet.wondollars.org" - ], - "696969": [ - "https://docs.galadriel.com/faucet" - ], - "710420": [], - "713715": [ - "https://sei-faucet.nima.enterprises", - "https://sei-evm.faucetme.pro" - ], - "721529": [], - "743111": [], - "751230": [ - "https://faucet.bearnetwork.net" - ], - "752024": [ - "https://faucet.zkevm.ternoa.network" - ], - "761412": [], - "764984": [], - "767368": [], - "776877": [], - "800001": [], - "808080": [], - "808813": [], - "810180": [], - "810181": [], - "810182": [], - "820522": [], - "827431": [], - "839320": [ - "https://faucet.prmscan.org" - ], - "840000": [ - "https://faucet.runevm.io/" - ], - "846000": [], - "855456": [], - "879151": [], - "888882": [], - "888888": [], - "900000": [], - "910000": [ - "https://faucet.posichain.org/" - ], - "912559": [ - "https://faucet.evm.dusk-3.devnet.astria.org/" - ], - "920000": [ - "https://faucet.posichain.org/" - ], - "920001": [ - "https://faucet.posichain.org/" - ], - "923018": [ - "https://faucet-testnet.fncy.world" - ], - "955081": [], - "955305": [], - "978657": [ - "https://portal.treasure.lol/faucet" - ], - "984122": [], - "984123": [], - "988207": [], - "998899": [ - "https://faucet.chaingames.io" - ], - "999999": [], - "1100789": [], - "1127469": [], - "1234567": [], - "1261120": [], - "1313114": [], - "1313500": [], - "1337702": [ - "http://fauceth.komputing.org?chain=1337702&address=${ADDRESS}", - "https://faucet.kintsugi.themerge.dev" - ], - "1337802": [ - "https://faucet.kiln.themerge.dev", - "https://kiln-faucet.pk910.de", - "https://kilnfaucet.com" - ], - "1337803": [ - "https://faucet.zhejiang.ethpandaops.io", - "https://zhejiang-faucet.pk910.de" - ], - "1398243": [], - "1612127": [], - "1637450": [], - "1731313": [], - "2021398": [], - "2099156": [], - "2206132": [ - "https://devnet2faucet.platon.network/faucet" - ], - "2611555": [], - "2702128": [], - "3132023": [], - "3141592": [ - "https://faucet.butterfly.fildev.network" - ], - "3397901": [], - "3441005": [], - "3441006": [], - "4000003": [], - "4281033": [], - "4444444": [ - "https://sepoliafaucet.com/" - ], - "4457845": [], - "5112023": [], - "5167003": [], - "5167004": [], - "5201420": [], - "5318008": [ - "https://dev.reactive.network/docs/kopli-testnet#faucet" - ], - "5555555": [], - "5555558": [], - "6038361": [], - "6666665": [], - "6666666": [], - "7225878": [], - "7355310": [], - "7668378": [ - "https://faucet.qom.one" - ], - "7762959": [], - "7777777": [], - "8007736": [], - "8008135": [ - "https://get-helium.fhenix.zone" - ], - "8080808": [], - "8601152": [ - "https://faucet.testnet8.waterfall.network" - ], - "8794598": [], - "8888881": [], - "8888888": [], - "9322252": [], - "9322253": [], - "9999999": [], - "10067275": [], - "10101010": [ - "https://faucet.soverun.com" - ], - "10241024": [], - "10241025": [], - "11145513": [ - "https://blessnet-sepolia-testnet.hub.caldera.xyz" - ], - "11155111": [ - "http://fauceth.komputing.org?chain=11155111&address=${ADDRESS}" - ], - "11155420": [ - "https://app.optimism.io/faucet" - ], - "12052024": [], - "12227332": [], - "13068200": [ - "https://faucet.coti.io" - ], - "13371337": [], - "14288640": [], - "16658437": [], - "17000920": [], - "18071918": [], - "18289463": [], - "19850818": [], - "19880818": [], - "20180427": [], - "20180430": [], - "20181205": [], - "20201022": [], - "20230825": [], - "20240324": [], - "20240603": [], - "20241133": [], - "20482050": [], - "22052002": [], - "27082017": [ - "https://faucet.exlscan.com" - ], - "27082022": [], - "28122024": [], - "28945486": [], - "29032022": [], - "31415926": [], - "35855456": [], - "37084624": [ - "https://www.sfuelstation.com/" - ], - "39916801": [], - "43214913": [], - "52164803": [], - "61717561": [ - "https://aquacha.in/faucet" - ], - "65010003": [ - "https://faucet.autonity.org/" - ], - "65100003": [], - "68840142": [ - "https://faucet.triangleplatform.com/frame/testnet" - ], - "77787778": [], - "79479957": [ - "https://faucet.toronto.sx.technology" - ], - "88558801": [], - "88888888": [], - "94204209": [], - "99415706": [ - "https://faucet.joys.digital/" - ], - "100000000": [ - "https://faucet.ethos.cool" - ], - "108160679": [], - "111557560": [], - "123420111": [], - "161221135": [], - "168587773": [ - "https://faucet.quicknode.com/blast/sepolia" - ], - "192837465": [], - "222000222": [], - "245022926": [ - "https://neonfaucet.org" - ], - "245022929": [], - "245022934": [], - "278611351": [ - "https://faucet.razorscan.io/" - ], - "311752642": [], - "328527624": [], - "333000333": [], - "356256156": [], - "476462898": [ - "https://skopje-faucet.gptprotocol.io" - ], - "486217935": [], - "531050104": [], - "666666666": [], - "888888888": [], - "889910245": [ - "https://faucet.ptcscan.io/" - ], - "889910246": [], - "974399131": [ - "https://www.sfuelstation.com/" - ], - "999999999": [], - "1020352220": [ - "https://www.sfuelstation.com/" - ], - "1122334455": [], - "1146703430": [], - "1273227453": [ - "https://dashboard.humanprotocol.org/faucet" - ], - "1313161554": [], - "1313161555": [], - "1313161556": [], - "1313161560": [], - "1350216234": [ - "https://sfuel.skale.network/" - ], - "1351057110": [ - "https://sfuel.skale.network/staging/chaos" - ], - "1380012617": [], - "1380996178": [], - "1444673419": [ - "https://www.sfuelstation.com/" - ], - "1482601649": [ - "https://sfuel.skale.network/" - ], - "1511670449": [], - "1564830818": [ - "https://sfuel.dirtroad.dev" - ], - "1666600000": [], - "1666600001": [], - "1666700000": [ - "https://faucet.pops.one" - ], - "1666700001": [ - "https://faucet.pops.one" - ], - "1666900000": [], - "1666900001": [], - "1802203764": [], - "1903648807": [ - "https://faucet.gemuchain.io/" - ], - "1918988905": [], - "2021121117": [], - "2046399126": [ - "https://ruby.exchange/faucet.html", - "https://sfuel.mylilius.com/" - ], - "3125659152": [], - "4216137055": [ - "https://frankenstein-faucet.oneledger.network" - ], - "11297108109": [], - "11297108099": [], - "28872323069": [], - "37714555429": [], - "88153591557": [], - "107107114116": [], - "111222333444": [], - "123420000220": [], - "197710212030": [], - "197710212031": [], - "202402181627": [], - "383414847825": [ - "https://faucet.zeniq.net/" - ], - "666301171999": [], - "6022140761023": [], - "2713017997578000": [], - "2716446429837000": [] -}; -var NETWORK_EXPLORERS = { - "1": [ - { - "name": "etherscan", - "url": "https://etherscan.io", - "standard": "EIP3091" - }, - { - "name": "blockscout", - "url": "https://eth.blockscout.com", - "icon": "blockscout", - "standard": "EIP3091" - }, - { - "name": "dexguru", - "url": "https://ethereum.dex.guru", - "icon": "dexguru", - "standard": "EIP3091" - } - ], - "3": [ - { - "name": "etherscan", - "url": "https://ropsten.etherscan.io", - "standard": "EIP3091" - } - ], - "4": [ - { - "name": "etherscan-rinkeby", - "url": "https://rinkeby.etherscan.io", - "standard": "EIP3091" - } - ], - "5": [ - { - "name": "etherscan-goerli", - "url": "https://goerli.etherscan.io", - "standard": "EIP3091" - }, - { - "name": "blockscout-goerli", - "url": "https://eth-goerli.blockscout.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "7": [ - { - "name": "Thaichain Explorer", - "url": "https://exp.thaichain.org", - "standard": "EIP3091" - } - ], - "8": [ - { - "name": "ubiqscan", - "url": "https://ubiqscan.io", - "standard": "EIP3091" - } - ], - "10": [ - { - "name": "etherscan", - "url": "https://optimistic.etherscan.io", - "standard": "EIP3091" - }, - { - "name": "blockscout", - "url": "https://optimism.blockscout.com", - "icon": "blockscout", - "standard": "EIP3091" - }, - { - "name": "dexguru", - "url": "https://optimism.dex.guru", - "icon": "dexguru", - "standard": "EIP3091" - } - ], - "14": [ - { - "name": "blockscout", - "url": "https://flare-explorer.flare.network", - "standard": "EIP3091" - }, - { - "name": "flarescan", - "url": "https://mainnet.flarescan.com", - "standard": "EIP3091" - } - ], - "16": [ - { - "name": "blockscout", - "url": "https://coston-explorer.flare.network", - "standard": "EIP3091" - }, - { - "name": "flarescan", - "url": "https://coston.testnet.flarescan.com", - "standard": "EIP3091" - } - ], - "18": [ - { - "name": "thundercore-blockscout-testnet", - "url": "https://explorer-testnet.thundercore.com", - "standard": "EIP3091" - } - ], - "19": [ - { - "name": "blockscout", - "url": "https://songbird-explorer.flare.network", - "standard": "EIP3091" - }, - { - "name": "flarescan", - "url": "https://songbird.flarescan.com", - "standard": "EIP3091" - } - ], - "20": [ - { - "name": "elastos esc explorer", - "url": "https://esc.elastos.io", - "standard": "EIP3091" - } - ], - "21": [ - { - "name": "elastos esc explorer", - "url": "https://esc-testnet.elastos.io", - "standard": "EIP3091" - } - ], - "25": [ - { - "name": "Cronos Explorer", - "url": "https://explorer.cronos.org", - "standard": "none" - } - ], - "26": [ - { - "name": "Genesis L1 testnet explorer", - "url": "https://testnet.genesisl1.org", - "standard": "none" - } - ], - "27": [ - { - "name": "Shiba Explorer", - "url": "https://exp.shibchain.org", - "standard": "none" - } - ], - "29": [ - { - "name": "Genesis L1 blockchain explorer", - "url": "https://explorer.genesisl1.org", - "standard": "none" - } - ], - "30": [ - { - "name": "Rootstock Explorer", - "url": "https://explorer.rsk.co", - "standard": "EIP3091" - }, - { - "name": "blockscout", - "url": "https://rootstock.blockscout.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "31": [ - { - "name": "RSK Testnet Explorer", - "url": "https://explorer.testnet.rsk.co", - "standard": "EIP3091" - } - ], - "34": [ - { - "name": "SecureChain Mainnet", - "url": "https://explorer.securechain.ai", - "standard": "EIP3091" - } - ], - "36": [ - { - "name": "dxscan", - "url": "https://dxscan.io", - "standard": "EIP3091" - } - ], - "37": [ - { - "name": "XPLA Explorer", - "url": "https://explorer.xpla.io/mainnet", - "standard": "EIP3091" - } - ], - "39": [ - { - "icon": "u2u", - "name": "U2U Explorer", - "url": "https://u2uscan.xyz", - "standard": "EIP3091" - } - ], - "40": [ - { - "name": "teloscan", - "url": "https://teloscan.io", - "standard": "EIP3091" - } - ], - "41": [ - { - "name": "teloscan", - "url": "https://testnet.teloscan.io", - "standard": "EIP3091" - } - ], - "42": [ - { - "name": "Blockscout", - "url": "https://explorer.execution.mainnet.lukso.network", - "standard": "EIP3091" - } - ], - "43": [ - { - "name": "subscan", - "url": "https://pangolin.subscan.io", - "standard": "EIP3091" - } - ], - "44": [ - { - "name": "blockscout", - "url": "https://crab-scan.darwinia.network", - "standard": "EIP3091" - } - ], - "45": [ - { - "name": "subscan", - "url": "https://pangoro.subscan.io", - "standard": "none" - } - ], - "46": [ - { - "name": "blockscout", - "url": "https://explorer.darwinia.network", - "standard": "EIP3091" - } - ], - "47": [ - { - "name": "Acria IntelliChain-Explorer", - "url": "https://explorer.acria.ai", - "standard": "EIP3091" - } - ], - "48": [ - { - "name": "etmpscan", - "url": "https://etmscan.network", - "icon": "etmp", - "standard": "EIP3091" - } - ], - "49": [ - { - "name": "etmp", - "url": "https://pioneer.etmscan.network", - "standard": "EIP3091" - } - ], - "50": [ - { - "name": "xdcscan", - "url": "https://xdcscan.io", - "icon": "blocksscan", - "standard": "EIP3091" - }, - { - "name": "blocksscan", - "url": "https://xdc.blocksscan.io", - "icon": "blocksscan", - "standard": "EIP3091" - } - ], - "51": [ - { - "name": "xdcscan", - "url": "https://apothem.xinfinscan.com", - "icon": "blocksscan", - "standard": "EIP3091" - }, - { - "name": "blocksscan", - "url": "https://apothem.blocksscan.io", - "icon": "blocksscan", - "standard": "EIP3091" - } - ], - "52": [ - { - "name": "coinexscan", - "url": "https://www.coinex.net", - "standard": "none" - } - ], - "53": [ - { - "name": "coinexscan", - "url": "https://testnet.coinex.net", - "standard": "none" - } - ], - "54": [ - { - "name": "Belly Scan", - "url": "https://bellyscan.com", - "standard": "none" - } - ], - "55": [ - { - "name": "zyxscan", - "url": "https://zyxscan.com", - "standard": "none" - } - ], - "56": [ - { - "name": "bscscan", - "url": "https://bscscan.com", - "standard": "EIP3091" - }, - { - "name": "dexguru", - "url": "https://bnb.dex.guru", - "icon": "dexguru", - "standard": "EIP3091" - } - ], - "57": [ - { - "name": "Syscoin Block Explorer", - "url": "https://explorer.syscoin.org", - "standard": "EIP3091" - } - ], - "58": [ - { - "name": "explorer", - "url": "https://explorer.ont.io", - "standard": "EIP3091" - } - ], - "60": [ - { - "name": "GoChain Explorer", - "url": "https://explorer.gochain.io", - "standard": "EIP3091" - } - ], - "61": [ - { - "name": "blockscout-ethereum-classic", - "url": "https://etc.blockscout.com", - "standard": "EIP3091" - }, - { - "name": "etcnetworkinfo-blockscout-ethereum-classic", - "url": "https://explorer-blockscout.etc-network.info", - "standard": "none" - }, - { - "name": "etcnetworkinfo-alethio-ethereum-classic", - "url": "https://explorer-alethio.etc-network.info", - "standard": "none" - }, - { - "name": "etcnetworkinfo-expedition-ethereum-classic", - "url": "https://explorer-expedition.etc-network.info", - "standard": "none" - }, - { - "name": "hebeblock-ethereum-classic", - "url": "https://etcerscan.com", - "standard": "EIP3091" - }, - { - "name": "oklink-ethereum-classic", - "url": "https://www.oklink.com/etc", - "standard": "EIP3091" - }, - { - "name": "tokenview-ethereum-classic", - "url": "https://etc.tokenview.io", - "standard": "EIP3091" - } - ], - "63": [ - { - "name": "blockscout-mordor", - "url": "https://etc-mordor.blockscout.com", - "standard": "EIP3091" - }, - { - "name": "etcnetworkinfo-expedition-mordor", - "url": "https://explorer-expedition.etc-network.info/?network=Ethereum+Classic+at+etc-network.info+GETH+Mordor", - "standard": "none" - } - ], - "65": [ - { - "name": "OKLink", - "url": "https://www.oklink.com/okexchain-test", - "standard": "EIP3091" - } - ], - "66": [ - { - "name": "OKLink", - "url": "https://www.oklink.com/en/okc", - "standard": "EIP3091" - } - ], - "69": [ - { - "name": "etherscan", - "url": "https://kovan-optimistic.etherscan.io", - "standard": "EIP3091" - } - ], - "70": [ - { - "name": "hooscan", - "url": "https://www.hooscan.com", - "standard": "EIP3091" - } - ], - "71": [ - { - "name": "Conflux Scan", - "url": "https://evmtestnet.confluxscan.net", - "standard": "none" - } - ], - "73": [ - { - "name": "fncy scan", - "url": "https://fncyscan.fncy.world", - "icon": "fncy", - "standard": "EIP3091" - } - ], - "74": [ - { - "name": "explorer", - "url": "https://explorer.idchain.one", - "standard": "EIP3091" - } - ], - "75": [ - { - "name": "DSC Explorer Mainnet", - "url": "https://explorer.decimalchain.com", - "icon": "dsc", - "standard": "EIP3091" - } - ], - "77": [ - { - "name": "blockscout", - "url": "https://blockscout.com/poa/sokol", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "79": [ - { - "name": "zenith scan", - "url": "https://scan.zenithchain.co", - "standard": "EIP3091" - } - ], - "80": [ - { - "name": "GeneChain Scan", - "url": "https://scan.genechain.io", - "standard": "EIP3091" - } - ], - "81": [ - { - "name": "Block Explorer", - "url": "https://explorer.japanopenchain.org", - "standard": "EIP3091", - "icon": "joc" - } - ], - "82": [ - { - "name": "Meter Mainnet Scan", - "url": "https://scan.meter.io", - "standard": "EIP3091" - } - ], - "83": [ - { - "name": "Meter Testnet Scan", - "url": "https://scan-warringstakes.meter.io", - "standard": "EIP3091" - } - ], - "84": [ - { - "name": "Linqto Devnet Explorer", - "url": "https://explorer.linqto-dev.com", - "standard": "EIP3091" - } - ], - "85": [ - { - "name": "GateScan", - "url": "https://www.gatescan.org/testnet", - "standard": "EIP3091" - } - ], - "86": [ - { - "name": "GateScan", - "url": "https://www.gatescan.org", - "standard": "EIP3091" - } - ], - "87": [ - { - "name": "novanetwork", - "url": "https://explorer.novanetwork.io", - "standard": "EIP3091" - } - ], - "90": [ - { - "name": "explorer", - "url": "https://explorer.garizon.com", - "icon": "garizon", - "standard": "EIP3091" - } - ], - "91": [ - { - "name": "explorer", - "url": "https://explorer.garizon.com", - "icon": "garizon", - "standard": "EIP3091" - } - ], - "92": [ - { - "name": "explorer", - "url": "https://explorer.garizon.com", - "icon": "garizon", - "standard": "EIP3091" - } - ], - "93": [ - { - "name": "explorer", - "url": "https://explorer.garizon.com", - "icon": "garizon", - "standard": "EIP3091" - } - ], - "94": [ - { - "name": "SwissDLT Explorer", - "url": "https://explorer.swissdlt.ch", - "icon": "bcts", - "standard": "EIP3091" - } - ], - "95": [ - { - "name": "CamDL Block Explorer", - "url": "https://explorer.camdl.gov.kh", - "standard": "EIP3091" - } - ], - "96": [ - { - "name": "Bitkub Chain Explorer", - "url": "https://bkcscan.com", - "standard": "none", - "icon": "bkc" - } - ], - "97": [ - { - "name": "bscscan-testnet", - "url": "https://testnet.bscscan.com", - "standard": "EIP3091" - } - ], - "98": [ - { - "name": "SIX Scan", - "url": "https://sixscan.io/sixnet", - "standard": "none", - "icon": "six" - } - ], - "99": [ - { - "name": "blockscout", - "url": "https://blockscout.com/poa/core", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "100": [ - { - "name": "gnosisscan", - "url": "https://gnosisscan.io", - "standard": "EIP3091" - }, - { - "name": "blockscout", - "url": "https://gnosis.blockscout.com", - "icon": "blockscout", - "standard": "EIP3091" - }, - { - "name": "dexguru", - "url": "https://gnosis.dex.guru", - "icon": "dexguru", - "standard": "EIP3091" - } - ], - "103": [ - { - "name": "Worldland Explorer", - "url": "https://scan.worldland.foundation", - "standard": "EIP3091" - } - ], - "104": [ - { - "name": "kaibascan", - "url": "https://kaibascan.io", - "icon": "kaibascan", - "standard": "EIP3091" - } - ], - "105": [ - { - "name": "Web3Games Explorer", - "url": "https://explorer-devnet.web3games.org", - "standard": "none" - } - ], - "106": [ - { - "name": "Velas Explorer", - "url": "https://evmexplorer.velas.com", - "standard": "EIP3091" - } - ], - "107": [ - { - "name": "nebulatestnet", - "url": "https://explorer.novanetwork.io", - "standard": "EIP3091" - } - ], - "108": [ - { - "name": "thundercore-viewblock", - "url": "https://viewblock.io/thundercore", - "standard": "EIP3091" - } - ], - "109": [ - { - "name": "shibariumscan", - "url": "https://www.shibariumscan.io", - "standard": "none" - } - ], - "112": [ - { - "name": "blockscout", - "url": "https://coinbit-explorer.chain.sbcrypto.app", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "113": [ - { - "name": "Dehvo Explorer", - "url": "https://explorer.dehvo.com", - "standard": "EIP3091" - } - ], - "114": [ - { - "name": "blockscout", - "url": "https://coston2-explorer.flare.network", - "standard": "EIP3091" - }, - { - "name": "flarescan", - "url": "https://coston2.testnet.flarescan.com", - "standard": "EIP3091" - } - ], - "117": [ - { - "name": "Uptick Explorer", - "url": "https://evm-explorer.uptick.network", - "icon": "uptick", - "standard": "none" - } - ], - "118": [ - { - "name": "arcology", - "url": "https://testnet.arcology.network/explorer", - "standard": "none" - } - ], - "119": [ - { - "name": "enulsscan", - "url": "https://evmscan.nuls.io", - "icon": "enuls", - "standard": "EIP3091" - } - ], - "120": [ - { - "name": "enulsscan", - "url": "https://beta.evmscan.nuls.io", - "icon": "enuls", - "standard": "EIP3091" - } - ], - "121": [ - { - "name": "realscan", - "url": "https://rclscan.com", - "standard": "EIP3091" - } - ], - "122": [ - { - "name": "blockscout", - "url": "https://explorer.fuse.io", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "125": [ - { - "name": "OYchain Testnet Explorer", - "url": "https://explorer.testnet.oychain.io", - "standard": "none" - } - ], - "126": [ - { - "name": "OYchain Mainnet Explorer", - "url": "https://explorer.oychain.io", - "standard": "none" - } - ], - "128": [ - { - "name": "hecoinfo", - "url": "https://hecoinfo.com", - "standard": "EIP3091" - } - ], - "129": [ - { - "name": "Innovator Explorer", - "url": "https://evm.innovatorchain.com", - "icon": "blockscout", - "standard": "none" - } - ], - "131": [ - { - "name": "blockscout", - "url": "https://tokioscan-v2.engram.tech", - "icon": "engram", - "standard": "EIP3091" - } - ], - "133": [ - { - "name": "blockscout", - "url": "https://hashkeychain-testnet-explorer.alt.technology", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "134": [ - { - "name": "blockscout", - "url": "https://blockscout.bellecour.iex.ec", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "135": [ - { - "name": "alyx testnet scan", - "url": "https://testnet.alyxscan.com", - "standard": "EIP3091" - } - ], - "136": [ - { - "name": "Deamchain Block Explorer", - "url": "https://scan.deamchain.com", - "standard": "EIP3091", - "icon": "deam" - } - ], - "137": [ - { - "name": "polygonscan", - "url": "https://polygonscan.com", - "standard": "EIP3091" - }, - { - "name": "dexguru", - "url": "https://polygon.dex.guru", - "icon": "dexguru", - "standard": "EIP3091" - } - ], - "138": [ - { - "name": "Blockscout Explorer", - "url": "https://blockscout.defi-oracle.io", - "standard": "none" - }, - { - "name": "Quorum Explorer", - "url": "https://explorer.defi-oracle.io", - "standard": "none" - } - ], - "139": [ - { - "name": "wikiwoop", - "url": "https://explorer.wikiwoop.com", - "standard": "EIP3091" - } - ], - "141": [ - { - "name": "Belly Scan", - "url": "https://testnet.bellyscan.com", - "standard": "none" - } - ], - "144": [ - { - "name": "Phiscan", - "url": "https://phiscan.com", - "icon": "phi", - "standard": "none" - } - ], - "145": [ - { - "name": "blockscout", - "url": "https://explorer.soraai.bot", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "147": [ - { - "name": "Flag Mainnet Explorer", - "url": "https://flagscan.xyz", - "standard": "EIP3091" - } - ], - "148": [ - { - "name": "explorer", - "url": "https://explorer.evm.shimmer.network", - "icon": "shimmerevm", - "standard": "EIP3091" - } - ], - "150": [ - { - "name": "SIX Scan fivenet", - "url": "https://sixscan.io/fivenet", - "standard": "none", - "icon": "six" - } - ], - "153": [ - { - "name": "Redbelly Network Testnet Explorer", - "url": "https://explorer.testnet.redbelly.network", - "standard": "none" - } - ], - "155": [ - { - "name": "TenetScan Testnet", - "url": "https://testnet.tenetscan.io", - "icon": "tenet", - "standard": "EIP3091" - } - ], - "156": [ - { - "name": "OEScan explorer", - "url": "https://testnet.oescan.io", - "standard": "EIP3091" - } - ], - "157": [ - { - "name": "puppyscan", - "url": "https://puppyscan.shib.io", - "standard": "none" - } - ], - "158": [ - { - "name": "Rbascan Explorer", - "url": "https://rbascan.com", - "standard": "EIP3091" - } - ], - "159": [ - { - "name": "Rbascan Testnet Explorer", - "url": "https://testnet.rbascan.com", - "standard": "EIP3091" - } - ], - "161": [ - { - "name": "blockscout - evascan", - "url": "https://testnet.evascan.io", - "standard": "EIP3091" - } - ], - "164": [ - { - "name": "Omni EVM and cross-chain Explorer", - "url": "https://omega.omniscan.network", - "standard": "EIP3091" - } - ], - "167": [ - { - "name": "atoshiscan", - "url": "https://scan.atoverse.info", - "standard": "EIP3091" - } - ], - "168": [ - { - "name": "AIOZ Network Explorer", - "url": "https://explorer.aioz.network", - "standard": "EIP3091" - } - ], - "169": [ - { - "name": "manta-pacific Explorer", - "url": "https://pacific-explorer.manta.network", - "standard": "EIP3091" - } - ], - "176": [ - { - "name": "dcscan", - "url": "https://exp.dcnetio.cloud", - "standard": "none" - } - ], - "178": [ - { - "name": "abeyscan-testnet", - "url": "https://testnet.abeyscan.com", - "standard": "EIP3091" - } - ], - "179": [ - { - "name": "abeyscan", - "url": "https://abeyscan.com", - "standard": "EIP3091" - } - ], - "180": [ - { - "name": "AME Scan", - "url": "https://amescan.io", - "standard": "EIP3091" - } - ], - "184": [ - { - "name": "Dojima Testnet Explorer", - "url": "https://explorer-test.dojima.network", - "standard": "none" - } - ], - "185": [ - { - "name": "blockscout", - "url": "https://explorer.mintchain.io", - "icon": "mint", - "standard": "EIP3091" - } - ], - "186": [ - { - "name": "seeleview", - "url": "https://seeleview.net", - "standard": "none" - } - ], - "187": [ - { - "name": "Dojima Explorer", - "url": "https://explorer.dojima.network", - "standard": "none" - } - ], - "188": [ - { - "name": "Blockmeta", - "url": "https://bmc.blockmeta.com", - "standard": "none" - } - ], - "189": [ - { - "name": "Blockmeta", - "url": "https://bmctestnet.blockmeta.com", - "standard": "none" - } - ], - "190": [ - { - "name": "bbqchain-explorer", - "url": "https://bbqchain-exp.commudao.xyz", - "standard": "EIP3091" - } - ], - "193": [ - { - "name": "cemscan", - "url": "https://cemscan.com", - "standard": "EIP3091" - } - ], - "195": [ - { - "name": "OKLink", - "url": "https://www.oklink.com/xlayer-test", - "standard": "EIP3091" - } - ], - "196": [ - { - "name": "OKLink", - "url": "https://www.oklink.com/xlayer", - "standard": "EIP3091" - } - ], - "197": [ - { - "name": "blockscout", - "url": "https://testnet.neutrinoschain.com", - "standard": "EIP3091" - } - ], - "198": [ - { - "name": "Bitchain Scan", - "url": "https://explorer.bitchain.biz", - "standard": "EIP3091" - } - ], - "199": [ - { - "name": "BitTorrent Chain Explorer", - "url": "https://bttcscan.com", - "standard": "EIP3091" - } - ], - "200": [ - { - "name": "blockscout", - "url": "https://blockscout.com/xdai/arbitrum", - "standard": "EIP3091" - } - ], - "201": [ - { - "name": "moac testnet explorer", - "url": "https://testnet.moac.io", - "standard": "none" - } - ], - "202": [ - { - "name": "Edgeless Explorer", - "url": "https://testnet.explorer.edgeless.network", - "standard": "EIP3091" - } - ], - "204": [ - { - "name": "opbnbscan", - "url": "https://mainnet.opbnbscan.com", - "standard": "EIP3091" - } - ], - "206": [ - { - "name": "VinuScan Testnet", - "url": "https://testnet.vinuscan.com", - "icon": "vinuscan-testnet", - "standard": "none" - } - ], - "207": [ - { - "name": "VinuScan", - "url": "https://vinuscan.com", - "icon": "vinuscan", - "standard": "none" - } - ], - "210": [ - { - "name": "Bitnet Explorer", - "url": "https://btnscan.com", - "standard": "EIP3091" - } - ], - "212": [ - { - "name": "maposcan", - "url": "https://testnet.maposcan.io", - "standard": "EIP3091" - } - ], - "213": [ - { - "name": "B2 Hub Mainnet Explorer", - "url": "https://hub-explorer.bsquared.network", - "icon": "bsquare", - "standard": "EIP3091" - } - ], - "214": [ - { - "name": "shinascan", - "url": "https://shinascan.shinarium.org", - "standard": "EIP3091" - } - ], - "217": [ - { - "name": "siriusnet explorer", - "url": "https://scan.siriusnet.io", - "standard": "none" - } - ], - "220": [ - { - "name": "scalind", - "url": "https://explorer-sepolia.scalind.com", - "standard": "EIP3091" - } - ], - "221": [ - { - "name": "BlockEx Scan", - "url": "http://explorer.blockex.biz", - "standard": "EIP3091" - } - ], - "223": [ - { - "name": "blockscout", - "url": "https://explorer.bsquared.network", - "icon": "bsquare", - "standard": "EIP3091" - } - ], - "224": [ - { - "name": "Viridis Testnet", - "url": "https://testnet.vrd.network", - "standard": "EIP3091" - } - ], - "225": [ - { - "name": "blockscout", - "url": "https://scan.lachain.io", - "standard": "EIP3091" - } - ], - "226": [ - { - "name": "blockscout", - "url": "https://scan-test.lachain.io", - "standard": "EIP3091" - } - ], - "230": [ - { - "name": "SwapDEX", - "url": "https://evm.swapdex.network", - "standard": "none" - } - ], - "233": [ - { - "name": "Ethernity Testnet Explorer", - "url": "https://testnet.ernscan.io", - "standard": "EIP3091" - } - ], - "234": [ - { - "name": "ProtoJumbo", - "url": "https://protojumbo.jumbochain.org", - "standard": "EIP3091" - } - ], - "236": [ - { - "name": "Deamchain Testnet Explorer", - "url": "https://testnet-scan.deamchain.com", - "standard": "EIP3091", - "icon": "deam" - } - ], - "242": [ - { - "name": "plgscan", - "url": "https://www.plgscan.com", - "standard": "EIP3091" - } - ], - "246": [ - { - "name": "blockscout", - "url": "https://explorer.energyweb.org", - "standard": "none" - } - ], - "248": [ - { - "name": "blockscout", - "url": "https://explorer.oasys.games", - "standard": "EIP3091" - } - ], - "250": [ - { - "name": "ftmscan", - "url": "https://ftmscan.com", - "icon": "ftmscan", - "standard": "EIP3091" - }, - { - "name": "dexguru", - "url": "https://fantom.dex.guru", - "icon": "dexguru", - "standard": "EIP3091" - } - ], - "252": [ - { - "name": "fraxscan", - "url": "https://fraxscan.com", - "standard": "EIP3091" - } - ], - "254": [ - { - "name": "Swanchain Explorer", - "url": "https://swanscan.io", - "standard": "EIP3091" - } - ], - "255": [ - { - "name": "blockscout", - "url": "https://blockscout.kroma.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "259": [ - { - "name": "Neon Blockchain Explorer", - "url": "https://scan.neonlink.io", - "standard": "EIP3091", - "icon": "neonlink" - } - ], - "261": [ - { - "name": "guruscan", - "url": "https://scan.gurunetwork.ai", - "standard": "EIP3091" - } - ], - "262": [ - { - "name": "Surnet Explorer", - "url": "https://explorer.surnet.org", - "icon": "SUR", - "standard": "EIP3091" - } - ], - "267": [ - { - "name": "ankrscan-neura", - "url": "https://testnet.explorer.neuraprotocol.io", - "icon": "neura", - "standard": "EIP3091" - }, - { - "name": "blockscout", - "url": "https://explorer.neura-testnet.ankr.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "269": [ - { - "name": "hscan", - "url": "https://hscan.org", - "standard": "EIP3091" - } - ], - "271": [ - { - "name": "EgonCoin Mainnet", - "url": "https://egonscan.com", - "standard": "EIP3091" - } - ], - "274": [ - { - "name": "LaChain Explorer", - "url": "https://explorer.lachain.network", - "standard": "EIP3091" - } - ], - "282": [ - { - "name": "Cronos zkEVM Testnet Explorer", - "url": "https://explorer.zkevm.cronos.org/testnet", - "standard": "none" - } - ], - "288": [ - { - "name": "Bobascan", - "url": "https://bobascan.com", - "standard": "none" - } - ], - "291": [ - { - "name": "orderlyscout", - "url": "https://explorer.orderly.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "295": [ - { - "name": "HashScan", - "url": "https://hashscan.io/mainnet", - "standard": "EIP3091" - }, - { - "name": "Arkhia Explorer", - "url": "https://explorer.arkhia.io", - "standard": "none" - }, - { - "name": "DragonGlass", - "url": "https://app.dragonglass.me", - "standard": "none" - }, - { - "name": "Hedera Explorer", - "url": "https://hederaexplorer.io", - "standard": "none" - }, - { - "name": "Ledger Works Explore", - "url": "https://explore.lworks.io", - "standard": "none" - } - ], - "296": [ - { - "name": "HashScan", - "url": "https://hashscan.io/testnet", - "standard": "EIP3091" - }, - { - "name": "Arkhia Explorer", - "url": "https://explorer.arkhia.io", - "standard": "none" - }, - { - "name": "DragonGlass", - "url": "https://app.dragonglass.me", - "standard": "none" - }, - { - "name": "Hedera Explorer", - "url": "https://hederaexplorer.io", - "standard": "none" - }, - { - "name": "Ledger Works Explore", - "url": "https://explore.lworks.io", - "standard": "none" - } - ], - "297": [ - { - "name": "HashScan", - "url": "https://hashscan.io/previewnet", - "standard": "EIP3091" - } - ], - "300": [ - { - "name": "zkSync Block Explorer", - "url": "https://sepolia.explorer.zksync.io", - "icon": "zksync-era", - "standard": "EIP3091" - } - ], - "302": [ - { - "name": "zkCandy Block Explorer", - "url": "https://sepolia.explorer.zkcandy.io", - "icon": "zkcandy", - "standard": "EIP3091" - } - ], - "303": [ - { - "name": "neuroscan", - "url": "https://testnet.ncnscan.com", - "standard": "EIP3091" - } - ], - "305": [ - { - "name": "blockscout", - "url": "https://explorer.zksats.io", - "icon": "zksats", - "standard": "EIP3091" - } - ], - "307": [ - { - "name": "Lovely Network Testnet", - "url": "https://tscan.lovely.network", - "standard": "EIP3091" - } - ], - "308": [ - { - "name": "furthscan", - "url": "http://furthscan.com", - "standard": "EIP3091" - } - ], - "309": [ - { - "name": "wyzth", - "url": "http://24.199.108.65:4000", - "icon": "wyzth", - "standard": "EIP3091" - } - ], - "311": [ - { - "name": "Omax Chain Explorer", - "url": "https://omaxray.com", - "icon": "omaxray", - "standard": "EIP3091" - } - ], - "313": [ - { - "name": "neuroscan", - "url": "https://ncnscan.com", - "standard": "EIP3091" - } - ], - "314": [ - { - "name": "Filfox", - "url": "https://filfox.info/en", - "standard": "none" - }, - { - "name": "Beryx", - "url": "https://beryx.zondax.ch", - "standard": "none" - }, - { - "name": "Glif Explorer", - "url": "https://explorer.glif.io", - "standard": "EIP3091" - }, - { - "name": "Dev.storage", - "url": "https://dev.storage", - "standard": "none" - }, - { - "name": "Filscan", - "url": "https://filscan.io", - "standard": "none" - }, - { - "name": "Filscout", - "url": "https://filscout.io/en", - "standard": "none" - } - ], - "321": [ - { - "name": "KCC Explorer", - "url": "https://explorer.kcc.io/en", - "standard": "EIP3091" - } - ], - "322": [ - { - "name": "kcc-scan-testnet", - "url": "https://scan-testnet.kcc.network", - "standard": "EIP3091" - } - ], - "323": [ - { - "name": "Blockscout", - "url": "https://explorer.cosvm.net", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "324": [ - { - "name": "zkSync Era Block Explorer", - "url": "https://explorer.zksync.io", - "icon": "zksync-era", - "standard": "EIP3091" - } - ], - "333": [ - { - "name": "w3q-mainnet", - "url": "https://explorer.mainnet.web3q.io", - "standard": "EIP3091" - } - ], - "335": [ - { - "name": "ethernal", - "url": "https://explorer-test.dfkchain.com", - "icon": "ethereum", - "standard": "none" - } - ], - "336": [ - { - "name": "subscan", - "url": "https://shiden.subscan.io", - "standard": "none", - "icon": "subscan" - }, - { - "name": "blockscout", - "url": "https://blockscout.com/shiden", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "338": [ - { - "name": "Cronos Testnet Explorer", - "url": "https://explorer.cronos.org/testnet", - "standard": "none" - } - ], - "345": [ - { - "name": "tscscan", - "url": "https://www.tscscan.io", - "icon": "netxscan", - "standard": "none" - } - ], - "361": [ - { - "name": "Theta Mainnet Explorer", - "url": "https://explorer.thetatoken.org", - "standard": "EIP3091" - } - ], - "363": [ - { - "name": "Theta Sapphire Testnet Explorer", - "url": "https://guardian-testnet-sapphire-explorer.thetatoken.org", - "standard": "EIP3091" - } - ], - "364": [ - { - "name": "Theta Amber Testnet Explorer", - "url": "https://guardian-testnet-amber-explorer.thetatoken.org", - "standard": "EIP3091" - } - ], - "365": [ - { - "name": "Theta Testnet Explorer", - "url": "https://testnet-explorer.thetatoken.org", - "standard": "EIP3091" - } - ], - "369": [ - { - "name": "blockscout", - "url": "https://scan.pulsechain.com", - "icon": "blockscout", - "standard": "EIP3091" - }, - { - "name": "otterscan", - "url": "https://otter.pulsechain.com", - "standard": "EIP3091" - } - ], - "371": [ - { - "name": "blockscout", - "url": "https://explorer-testnet.theconsta.com", - "standard": "EIP3091" - } - ], - "380": [ - { - "name": "ZKAmoeba Test Explorer", - "url": "https://testnetexplorer.zkamoeba.com", - "icon": "zkamoeba-micro", - "standard": "EIP3091" - } - ], - "381": [ - { - "name": "ZKAmoeba Explorer", - "url": "https://explorer.zkamoeba.com", - "icon": "zkamoeba-micro", - "standard": "EIP3091" - } - ], - "388": [ - { - "name": "Cronos zkEVM (Mainnet) Chain Explorer", - "url": "https://explorer.zkevm.cronos.org", - "standard": "none" - } - ], - "395": [ - { - "name": "CamDL Testnet Explorer", - "url": "https://explorer.testnet.camdl.gov.kh", - "standard": "EIP3091" - } - ], - "397": [ - { - "name": "Near Blocks", - "url": "https://nearblocks.io", - "standard": "none" - } - ], - "398": [ - { - "name": "Near blocks", - "url": "https://testnet.nearblocks.io", - "standard": "none" - } - ], - "399": [ - { - "name": "N3scan", - "url": "https://scan.nativ3.network", - "standard": "EIP3091" - } - ], - "400": [ - { - "name": "blockscout", - "url": "https://testnet.hyperonchain.com", - "icon": "hyperonchain", - "standard": "EIP3091" - } - ], - "401": [ - { - "name": "OZONE Scan", - "url": "https://testnet.ozonescan.io", - "standard": "EIP3091" - } - ], - "404": [ - { - "name": "Syndr L3 Explorer", - "url": "https://explorer.syndr.com", - "standard": "EIP3091" - } - ], - "411": [ - { - "name": "pepechain explorer", - "url": "https://explorer.pepe-chain.vip", - "standard": "EIP3091" - } - ], - "416": [ - { - "name": "SX Network Explorer", - "url": "https://explorer.sx.technology", - "standard": "EIP3091" - } - ], - "418": [ - { - "name": "LaTestnet Explorer", - "url": "https://testexplorer.lachain.network", - "standard": "EIP3091" - } - ], - "420": [ - { - "name": "blockscout", - "url": "https://optimism-goerli.blockscout.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "422": [ - { - "name": "Viridis Mainnet", - "url": "https://explorer.vrd.network", - "standard": "EIP3091" - } - ], - "424": [ - { - "name": "blockscout", - "url": "https://explorer.publicgoods.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "427": [ - { - "name": "Zeeth Explorer", - "url": "https://explorer.zeeth.io", - "standard": "none" - } - ], - "428": [ - { - "name": "Geso Verse Explorer", - "url": "https://explorer.verse.gesoten.com", - "standard": "EIP3091" - } - ], - "434": [ - { - "name": "Boyaa explorer", - "url": "https://explorer.mainnet.boyaa.network", - "standard": "EIP3091" - } - ], - "443": [ - { - "name": "Ten Sepolia Rollup Explorer", - "url": "https://tenscan.io", - "standard": "none" - } - ], - "444": [ - { - "name": "Synapse Chain Sepolia", - "url": "https://sepolia.synapsescan.com", - "standard": "EIP3091" - } - ], - "456": [ - { - "name": "ARZIO Scan", - "url": "https://scan.arzio.co", - "standard": "EIP3091" - } - ], - "462": [ - { - "name": "AreonScan", - "url": "https://areonscan.com", - "standard": "none" - } - ], - "463": [ - { - "name": "AreonScan", - "url": "https://areonscan.com", - "standard": "none" - } - ], - "500": [ - { - "name": "blockexplorer", - "url": "https://suite.camino.network/explorer", - "standard": "none" - } - ], - "501": [ - { - "name": "blockexplorer", - "url": "https://suite.camino.network/explorer", - "standard": "none" - } - ], - "512": [ - { - "name": "aacscan", - "url": "https://scan.acuteangle.com", - "standard": "EIP3091" - } - ], - "513": [ - { - "name": "aacscan-testnet", - "url": "https://scan-testnet.acuteangle.com", - "standard": "EIP3091" - } - ], - "520": [ - { - "name": "xscscan", - "url": "https://xscscan.pub", - "standard": "EIP3091" - } - ], - "530": [ - { - "name": "FunctionX Explorer", - "url": "https://fx-evm.functionx.io", - "standard": "EIP3091" - } - ], - "534": [ - { - "name": "candleexplorer", - "url": "https://candleexplorer.com", - "standard": "EIP3091" - } - ], - "537": [ - { - "name": "OpTrust explorer", - "url": "https://scan.optrust.io", - "icon": "optrust", - "standard": "none" - } - ], - "542": [ - { - "name": "PAWCHAIN Testnet", - "url": "https://pawscan.io", - "standard": "none" - } - ], - "545": [ - { - "name": "FlowScan: Testnet", - "url": "https://evm-testnet.flowscan.io", - "standard": "EIP3091" - } - ], - "555": [ - { - "name": "Vela1 Chain Mainnet Explorer", - "url": "https://exp.velaverse.io", - "standard": "EIP3091" - } - ], - "568": [ - { - "name": "dogechain testnet explorer", - "url": "https://explorer-testnet.dogechain.dog", - "standard": "EIP3091" - } - ], - "570": [ - { - "name": "Rollux Explorer", - "url": "https://explorer.rollux.com", - "standard": "EIP3091" - } - ], - "571": [ - { - "name": "MetaExplorer", - "url": "https://explorer.metatime.com", - "standard": "EIP3091" - } - ], - "579": [ - { - "name": "filenova explorer", - "url": "https://scan.filenova.org", - "icon": "filenova", - "standard": "none" - } - ], - "592": [ - { - "name": "subscan", - "url": "https://astar.subscan.io", - "standard": "none", - "icon": "subscan" - }, - { - "name": "blockscout", - "url": "https://blockscout.com/astar", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "595": [ - { - "name": "blockscout", - "url": "https://blockscout.mandala.aca-staging.network", - "standard": "EIP3091" - } - ], - "596": [ - { - "name": "blockscout", - "url": "https://blockscout.karura-testnet.aca-staging.network", - "standard": "EIP3091" - } - ], - "597": [ - { - "name": "blockscout", - "url": "https://blockscout.acala-dev.aca-dev.network", - "standard": "EIP3091" - } - ], - "601": [ - { - "name": "Vine Explorer", - "url": "https://vne.network/rose", - "standard": "none", - "icon": "vine" - } - ], - "610": [ - { - "name": "Darwin Explorer", - "url": "https://explorer.darwinchain.ai", - "icon": "darwin", - "standard": "none" - } - ], - "612": [ - { - "name": "EIOB Explorer", - "url": "https://explorer.eiob.xyz", - "standard": "none" - } - ], - "614": [ - { - "name": "GLQ Explorer", - "url": "https://explorer.graphlinq.io", - "standard": "none" - } - ], - "624": [ - { - "name": "Tracehawk", - "url": "https://explorer.thebinaryholdings.com", - "standard": "none" - } - ], - "625": [ - { - "name": "Tracehawk", - "url": "https://explorer.sepolia.thebinaryholdings.com", - "standard": "none" - } - ], - "634": [ - { - "name": "avoscan", - "url": "https://avoscan.co", - "icon": "avocado", - "standard": "none" - } - ], - "646": [ - { - "name": "EVM on Flow Block Explorer (PreviewNet)", - "url": "https://eth.flowscan.io", - "standard": "EIP3091" - } - ], - "647": [ - { - "name": "SX Network Toronto Explorer", - "url": "https://explorer.toronto.sx.technology", - "standard": "EIP3091" - } - ], - "648": [ - { - "name": "Endurance Scan", - "url": "https://explorer.endurance.fusionist.io", - "standard": "EIP3091" - } - ], - "653": [ - { - "name": "kalichain explorer", - "url": "https://explorer.kalichain.com", - "standard": "EIP3091" - } - ], - "654": [ - { - "name": "kalichain explorer", - "url": "https://explorer.kalichain.com", - "standard": "EIP3091" - } - ], - "662": [ - { - "name": "ultronsmartchain explorer", - "url": "https://scan.ultronsmartchain.io", - "standard": "EIP3091" - } - ], - "667": [ - { - "name": "blockscout", - "url": "https://arrakis.gorengine.com", - "icon": "laos", - "standard": "EIP3091" - } - ], - "668": [ - { - "name": "JuncaScan", - "url": "https://scan.juncachain.com", - "standard": "EIP3091" - } - ], - "669": [ - { - "name": "JuncaScan", - "url": "https://scan-testnet.juncachain.com", - "standard": "EIP3091" - } - ], - "686": [ - { - "name": "blockscout", - "url": "https://blockscout.karura.network", - "standard": "EIP3091" - } - ], - "690": [ - { - "name": "blockscout", - "url": "https://explorer.redstone.xyz", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "700": [ - { - "name": "starscan", - "url": "https://avastar.info", - "standard": "EIP3091" - } - ], - "701": [ - { - "name": "blockscout", - "url": "https://koi-scan.darwinia.network", - "standard": "EIP3091" - } - ], - "707": [ - { - "name": "BlockChain Station Explorer", - "url": "https://explorer.bcsdev.io", - "standard": "EIP3091" - } - ], - "708": [ - { - "name": "BlockChain Station Explorer", - "url": "https://testnet.bcsdev.io", - "standard": "EIP3091" - } - ], - "710": [ - { - "name": "Furya EVM Explorer", - "url": "https://explorer.furya.io", - "standard": "EIP3091", - "icon": "highbury" - } - ], - "713": [ - { - "name": "vrcscan", - "url": "https://vrcscan.com", - "standard": "EIP3091" - }, - { - "name": "dxbscan", - "url": "https://dxb.vrcscan.com", - "standard": "EIP3091" - } - ], - "719": [ - { - "name": "shibscan", - "url": "https://puppyscan.shib.io", - "standard": "EIP3091" - } - ], - "721": [ - { - "name": "blockscout", - "url": "https://explorer.lycanchain.com", - "standard": "EIP3091" - } - ], - "730": [ - { - "name": "Lovely Network Mainnet", - "url": "https://scan.lovely.network", - "standard": "EIP3091" - } - ], - "741": [ - { - "name": "ventionscan", - "url": "https://testnet.ventionscan.io", - "standard": "EIP3091" - } - ], - "742": [ - { - "name": "Script Explorer", - "url": "https://explorer.script.tv", - "standard": "none" - } - ], - "747": [ - { - "name": "Flow Diver", - "url": "https://flowdiver.io", - "standard": "none" - } - ], - "766": [ - { - "name": "QL1 Mainnet Explorer", - "url": "https://mainnet.qom.one", - "icon": "qom", - "standard": "EIP3091" - } - ], - "776": [ - { - "name": "OPEN CHAIN TESTNET", - "url": "https://testnet.openchain.info", - "standard": "none" - } - ], - "786": [ - { - "name": "maalscan", - "url": "https://maalscan.io", - "standard": "EIP3091" - } - ], - "787": [ - { - "name": "blockscout", - "url": "https://blockscout.acala.network", - "standard": "EIP3091" - } - ], - "788": [ - { - "name": "aeroscan", - "url": "https://testnet.aeroscan.id", - "standard": "EIP3091" - } - ], - "789": [ - { - "name": "patexscan", - "url": "https://patexscan.io", - "icon": "patex", - "standard": "EIP3091" - } - ], - "799": [ - { - "name": "rupayascan", - "url": "https://scan.testnet.rupaya.io", - "standard": "EIP3091" - } - ], - "800": [ - { - "name": "Lucid Explorer", - "url": "https://explorer.lucidcoin.io", - "standard": "none" - } - ], - "810": [ - { - "name": "Haven1 Explorer", - "url": "https://testnet-explorer.haven1.org", - "icon": "haven1", - "standard": "EIP3091" - } - ], - "813": [ - { - "name": "meerscan", - "icon": "meer", - "url": "https://qng.qitmeer.io", - "standard": "EIP3091" - }, - { - "name": "meerscan", - "icon": "meer", - "url": "https://qng.meerscan.io", - "standard": "EIP3091" - } - ], - "818": [ - { - "name": "BeOne Chain Mainnet", - "url": "https://beonescan.com", - "standard": "EIP3091" - } - ], - "822": [ - { - "name": "RunicScan", - "url": "https://scan.runic.build", - "icon": "runic-testnet", - "standard": "EIP3091" - } - ], - "831": [ - { - "name": "CDT Explorer", - "url": "https://explorer.checkdot.io", - "standard": "none" - } - ], - "841": [ - { - "name": "Taraxa Explorer", - "url": "https://explorer.mainnet.taraxa.io", - "standard": "none" - } - ], - "842": [ - { - "name": "Taraxa Explorer", - "url": "https://explorer.testnet.taraxa.io", - "standard": "none" - } - ], - "852": [ - { - "name": "HongKong Mainnet Explorer", - "url": "http://47.238.205.52", - "standard": "none" - } - ], - "859": [ - { - "name": "Zeeth Explorer Dev", - "url": "https://explorer.dev.zeeth.io", - "standard": "none" - } - ], - "868": [ - { - "name": "FSCScan", - "url": "https://explorer.fantasiachain.com", - "standard": "EIP3091" - } - ], - "876": [ - { - "name": "Bandai Namco Research Verse Explorer", - "url": "https://explorer.main.oasvrs.bnken.net", - "standard": "EIP3091" - } - ], - "877": [ - { - "name": "dxtscan", - "url": "https://dxtscan.com", - "standard": "EIP3091" - } - ], - "880": [ - { - "name": "Ambros Chain Explorer", - "url": "https://ambrosscan.com", - "standard": "none" - } - ], - "888": [ - { - "name": "wanscan", - "icon": "wanchain", - "url": "https://wanscan.org", - "standard": "EIP3091" - } - ], - "898": [ - { - "name": "Maxi Chain Testnet Explorer", - "url": "https://testnet.maxi.network", - "standard": "EIP3091" - } - ], - "899": [ - { - "name": "Maxi Chain Mainnet Explorer", - "url": "https://mainnet.maxi.network", - "standard": "EIP3091" - } - ], - "900": [ - { - "name": "explorer", - "url": "https://explorer-testnet.garizon.com", - "icon": "garizon", - "standard": "EIP3091" - } - ], - "901": [ - { - "name": "explorer", - "url": "https://explorer-testnet.garizon.com", - "icon": "garizon", - "standard": "EIP3091" - } - ], - "902": [ - { - "name": "explorer", - "url": "https://explorer-testnet.garizon.com", - "icon": "garizon", - "standard": "EIP3091" - } - ], - "903": [ - { - "name": "explorer", - "url": "https://explorer-testnet.garizon.com", - "icon": "garizon", - "standard": "EIP3091" - } - ], - "911": [ - { - "name": "TAPROOT Scan", - "url": "https://scan.taprootchain.io", - "icon": "taproot", - "standard": "EIP3091" - } - ], - "917": [ - { - "name": "FireScan", - "url": "https://rinia.firescan.io", - "standard": "EIP3091" - } - ], - "919": [ - { - "name": "modescout", - "url": "https://sepolia.explorer.mode.network", - "standard": "none" - } - ], - "927": [ - { - "name": "Yidarkscan", - "url": "https://yidarkscan.com", - "standard": "EIP3091" - } - ], - "943": [ - { - "name": "blockscout", - "url": "https://scan.v4.testnet.pulsechain.com", - "icon": "blockscout", - "standard": "EIP3091" - }, - { - "name": "blockscout", - "url": "https://otter-testnet-pulsechain.g4mm4.io", - "standard": "EIP3091" - } - ], - "957": [ - { - "name": "Lyra Explorer", - "url": "https://explorer.lyra.finance", - "icon": "lyra", - "standard": "EIP3091" - } - ], - "963": [ - { - "name": "blockscout", - "url": "https://scan.bitcoincode.technology", - "standard": "EIP3091" - } - ], - "969": [ - { - "name": "EthXY Network Explorer", - "url": "https://explorer.ethxy.com", - "standard": "EIP3091" - } - ], - "970": [ - { - "name": "Oort Mainnet Explorer", - "url": "https://mainnet-scan.oortech.com", - "standard": "none", - "icon": "oort" - } - ], - "972": [ - { - "name": "Oort Ascraeus Explorer", - "url": "https://ascraeus-scan.oortech.com", - "standard": "none", - "icon": "oort" - } - ], - "979": [ - { - "name": "EthXY Testnet Network Explorer", - "url": "https://explorer.testnet.ethxy.com", - "standard": "EIP3091" - } - ], - "980": [ - { - "name": "topscan.dev", - "url": "https://www.topscan.io", - "standard": "none" - } - ], - "985": [ - { - "name": "Memo Mainnet Explorer", - "url": "https://scan.metamemo.one:8080", - "icon": "memo", - "standard": "EIP3091" - } - ], - "987": [ - { - "name": "BinaryChain Explorer", - "url": "https://explorer.binarychain.org", - "standard": "EIP3091" - } - ], - "989": [ - { - "name": "topscan.dev", - "url": "https://www.topscan.io", - "standard": "none" - } - ], - "990": [ - { - "name": "eLiberty Mainnet", - "url": "https://explorer.eliberty.ngo", - "standard": "EIP3091" - } - ], - "995": [ - { - "name": "5ireChain Explorer", - "url": "https://5irescan.io", - "standard": "none", - "icon": "5ireChain" - } - ], - "997": [ - { - "name": "5ireChain Explorer", - "url": "https://explorer.5ire.network", - "standard": "none", - "icon": "5ireChain" - } - ], - "998": [ - { - "name": "blockscout", - "url": "https://explorer.luckynetwork.org", - "standard": "none" - }, - { - "name": "expedition", - "url": "https://lnscan.org", - "standard": "none" - } - ], - "999": [ - { - "name": "wanscan", - "icon": "wanchain", - "url": "https://testnet.wanscan.org", - "standard": "EIP3091" - } - ], - "1000": [ - { - "name": "GTON Network Explorer", - "url": "https://explorer.gton.network", - "standard": "EIP3091" - } - ], - "1001": [ - { - "name": "Klaytnscope", - "url": "https://baobab.klaytnscope.com", - "standard": "EIP3091" - }, - { - "name": "Klaytnfinder", - "url": "https://baobab.klaytnfinder.io", - "standard": "EIP3091" - } - ], - "1003": [ - { - "name": "Tectum explorer", - "url": "https://explorer.tectum.io", - "icon": "Tettoken256", - "standard": "EIP3091" - } - ], - "1004": [ - { - "name": "test-ektascan", - "url": "https://test.ektascan.io", - "icon": "ekta", - "standard": "EIP3091" - } - ], - "1008": [ - { - "name": "eurusexplorer", - "url": "https://explorer.eurus.network", - "icon": "eurus", - "standard": "none" - } - ], - "1009": [ - { - "name": "Jumboscan", - "url": "https://jumboscan.jumbochain.org", - "standard": "EIP3091" - } - ], - "1011": [ - { - "name": "Rebus EVM Explorer (Blockscout)", - "url": "https://evm.rebuschain.com", - "icon": "rebus", - "standard": "none" - }, - { - "name": "Rebus Cosmos Explorer (ping.pub)", - "url": "https://cosmos.rebuschain.com", - "icon": "rebus", - "standard": "none" - } - ], - "1028": [ - { - "name": "testbttcscan", - "url": "https://testscan.bittorrentchain.io", - "standard": "none" - } - ], - "1030": [ - { - "name": "Conflux Scan", - "url": "https://evm.confluxscan.net", - "standard": "none" - } - ], - "1031": [ - { - "name": "proxy network testnet", - "url": "http://testnet-explorer.theproxy.network", - "standard": "EIP3091" - } - ], - "1038": [ - { - "name": "Bronos Testnet Explorer", - "url": "https://tbroscan.bronos.org", - "standard": "none", - "icon": "bronos" - } - ], - "1039": [ - { - "name": "Bronos Explorer", - "url": "https://broscan.bronos.org", - "standard": "none", - "icon": "bronos" - } - ], - "1073": [ - { - "name": "explorer", - "url": "https://explorer.evm.testnet.shimmer.network", - "standard": "EIP3091" - } - ], - "1075": [ - { - "name": "explorer", - "url": "https://explorer.evm.testnet.iotaledger.net", - "standard": "EIP3091" - } - ], - "1079": [ - { - "name": "explorer", - "url": "https://subnets-test.avax.network/mintara", - "standard": "EIP3091" - } - ], - "1080": [ - { - "name": "explorer", - "url": "https://subnets.avax.network/mintara", - "standard": "EIP3091" - } - ], - "1088": [ - { - "name": "blockscout", - "url": "https://andromeda-explorer.metis.io", - "standard": "EIP3091" - } - ], - "1089": [ - { - "name": "explorer.guru", - "url": "https://humans.explorers.guru", - "icon": "humans", - "standard": "none" - } - ], - "1099": [ - { - "name": "moac explorer", - "url": "https://explorer.moac.io", - "standard": "none" - } - ], - "1100": [ - { - "name": "dym.fyi", - "url": "https://dym.fyi", - "standard": "EIP3091" - } - ], - "1101": [ - { - "name": "blockscout", - "url": "https://zkevm.polygonscan.com", - "icon": "zkevm", - "standard": "EIP3091" - } - ], - "1107": [ - { - "name": "BLXq Explorer", - "url": "https://explorer.blx.org", - "icon": "blxq", - "standard": "none" - } - ], - "1108": [ - { - "name": "BLXq Explorer", - "url": "https://explorer.blxq.org", - "icon": "blxq", - "standard": "EIP3091" - } - ], - "1111": [ - { - "name": "WEMIX Block Explorer", - "url": "https://explorer.wemix.com", - "standard": "EIP3091" - } - ], - "1112": [ - { - "name": "WEMIX Testnet Microscope", - "url": "https://microscope.test.wemix.com", - "standard": "EIP3091" - } - ], - "1113": [ - { - "name": "B2 Hub Habitat Testnet Explorer", - "url": "https://testnet-hub-explorer.bsquared.network", - "icon": "bsquare", - "standard": "EIP3091" - } - ], - "1115": [ - { - "name": "Core Scan Testnet", - "url": "https://scan.test.btcs.network", - "icon": "core", - "standard": "EIP3091" - } - ], - "1116": [ - { - "name": "Core Scan", - "url": "https://scan.coredao.org", - "icon": "core", - "standard": "EIP3091" - } - ], - "1117": [ - { - "name": "Dogcoin", - "url": "https://explorer.dogcoin.network", - "standard": "EIP3091" - } - ], - "1123": [ - { - "name": "blockscout", - "url": "https://testnet-explorer.bsquared.network", - "icon": "bsquare", - "standard": "EIP3091" - } - ], - "1133": [ - { - "name": "MetaScan", - "url": "https://meta.defiscan.live", - "standard": "EIP3091" - } - ], - "1135": [ - { - "name": "blockscout", - "url": "https://blockscout.lisk.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "1138": [ - { - "name": "amstarscan-testnet", - "url": "https://testnet.amstarscan.com", - "standard": "EIP3091" - } - ], - "1147": [ - { - "name": "Flag Testnet Explorer", - "url": "https://testnet-explorer.flagscan.xyz", - "standard": "EIP3091" - } - ], - "1149": [ - { - "name": "Plexchain Explorer", - "url": "https://explorer.plexfinance.us", - "icon": "plexchain", - "standard": "EIP3091" - } - ], - "1170": [ - { - "name": "Origin Explorer", - "url": "https://evm-explorer.origin.uptick.network", - "icon": "origin", - "standard": "none" - } - ], - "1177": [ - { - "name": "Smart Host Teknoloji TESTNET Explorer", - "url": "https://s2.tl.web.tr:4000", - "icon": "smarthost", - "standard": "EIP3091" - } - ], - "1188": [ - { - "name": "mosscan", - "url": "https://www.mosscan.com", - "icon": "clubmos", - "standard": "none" - } - ], - "1197": [ - { - "name": "ioraexplorer", - "url": "https://explorer.iorachain.com", - "standard": "EIP3091" - } - ], - "1200": [ - { - "name": "Cuckoo Chain Explorer", - "url": "https://scan.cuckoo.network", - "standard": "EIP3091" - } - ], - "1202": [ - { - "name": "WTTScout", - "url": "https://explorer.cadaut.com", - "standard": "EIP3091" - } - ], - "1209": [ - { - "name": "Saitascan explorer", - "url": "https://saitascan.io", - "standard": "none", - "icon": "SaitaBlockChain(SBC)" - } - ], - "1210": [ - { - "name": "Cuckoo Sepolia Explorer", - "url": "https://testnet-scan.cuckoo.network", - "standard": "EIP3091" - } - ], - "1213": [ - { - "name": "popcateum explorer", - "url": "https://explorer.popcateum.org", - "standard": "none" - } - ], - "1214": [ - { - "name": "Enter Explorer - Expenter", - "url": "https://explorer.entercoin.net", - "icon": "enter", - "standard": "EIP3091" - } - ], - "1225": [ - { - "name": "Hybrid Testnet", - "url": "https://explorer.buildonhybrid.com", - "standard": "EIP3091" - } - ], - "1227": [ - { - "name": "BTCP explorer", - "url": "https://explorer.btcprotocol.io", - "standard": "EIP3091" - } - ], - "1229": [ - { - "name": "blockscout", - "url": "https://exzoscan.io", - "standard": "EIP3091" - } - ], - "1230": [ - { - "name": "Ultron Testnet Explorer", - "url": "https://explorer.ultron-dev.io", - "icon": "ultron", - "standard": "none" - } - ], - "1231": [ - { - "name": "Ultron Explorer", - "url": "https://ulxscan.com", - "icon": "ultron", - "standard": "none" - } - ], - "1234": [ - { - "name": "StepScan", - "url": "https://stepscan.io", - "icon": "step", - "standard": "EIP3091" - } - ], - "1235": [ - { - "name": "ITX Mainnet Explorer (Blockscout)", - "url": "https://explorer.itxchain.com", - "standard": "EIP3091" - } - ], - "1243": [ - { - "name": "archiescan", - "url": "https://app.archiescan.io", - "standard": "none" - } - ], - "1244": [ - { - "name": "archiescan", - "url": "https://testnet.archiescan.io", - "standard": "none" - } - ], - "1246": [ - { - "name": "OMSCAN - Expenter", - "url": "https://omscan.omplatform.com", - "standard": "none" - } - ], - "1248": [ - { - "name": "DogetherExplorer", - "url": "https://explorer.dogether.dog", - "standard": "EIP3091" - } - ], - "1252": [ - { - "name": "CICscan", - "url": "https://testnet.cicscan.com", - "icon": "cicchain", - "standard": "EIP3091" - } - ], - "1280": [ - { - "name": "HALOexplorer", - "url": "https://browser.halo.land", - "standard": "none" - } - ], - "1284": [ - { - "name": "moonscan", - "url": "https://moonbeam.moonscan.io", - "standard": "none" - } - ], - "1285": [ - { - "name": "moonscan", - "url": "https://moonriver.moonscan.io", - "standard": "none" - } - ], - "1287": [ - { - "name": "moonscan", - "url": "https://moonbase.moonscan.io", - "standard": "none" - } - ], - "1291": [ - { - "name": "Swisstronik Scout", - "url": "https://explorer-evm.testnet.swisstronik.com", - "standard": "none" - } - ], - "1311": [ - { - "name": "dos-testnet", - "url": "https://test.doscan.io", - "standard": "EIP3091" - } - ], - "1313": [ - { - "name": "JaiHo Chain Explorer", - "url": "https://jaihochain.com", - "standard": "EIP3091" - } - ], - "1314": [ - { - "name": "alyxscan", - "url": "https://www.alyxscan.com", - "standard": "EIP3091" - } - ], - "1319": [ - { - "name": "AIA Chain Explorer Mainnet", - "url": "https://aiascan.com", - "standard": "EIP3091" - } - ], - "1320": [ - { - "name": "AIA Chain Explorer Testnet", - "url": "https://testnet.aiascan.com", - "standard": "EIP3091" - } - ], - "1328": [ - { - "name": "Seitrace", - "url": "https://seitrace.com", - "standard": "EIP3091" - } - ], - "1329": [ - { - "name": "Seitrace", - "url": "https://seitrace.com", - "standard": "EIP3091" - } - ], - "1338": [ - { - "name": "Elysium testnet explorer", - "url": "https://elysium-explorer.vulcanforged.com", - "standard": "none" - } - ], - "1339": [ - { - "name": "Elysium mainnet explorer", - "url": "https://explorer.elysiumchain.tech", - "standard": "none" - } - ], - "1343": [ - { - "name": "BLITZ Explorer", - "url": "https://subnets-test.avax.network/blitz", - "standard": "EIP3091" - } - ], - "1353": [ - { - "name": "CICscan", - "url": "https://cicscan.com", - "icon": "cicchain", - "standard": "EIP3091" - } - ], - "1369": [ - { - "name": "zafirium-explorer", - "url": "https://explorer.zakumi.io", - "standard": "none" - } - ], - "1370": [ - { - "name": "ramascan", - "url": "https://ramascan.com", - "icon": "ramestta", - "standard": "EIP3091" - } - ], - "1377": [ - { - "name": "Pingaksha", - "url": "https://pingaksha.ramascan.com", - "icon": "ramestta", - "standard": "EIP3091" - } - ], - "1379": [ - { - "name": "kalarscan", - "url": "https://explorer.kalarchain.tech", - "icon": "kalarscan", - "standard": "EIP3091" - } - ], - "1388": [ - { - "name": "amstarscan", - "url": "https://mainnet.amstarscan.com", - "standard": "EIP3091" - } - ], - "1392": [ - { - "name": "BlockExplorer", - "url": "https://www.blockexplorer.com", - "standard": "EIP3091" - } - ], - "1433": [ - { - "name": "Rikeza Blockchain explorer", - "url": "https://rikscan.com", - "standard": "EIP3091" - } - ], - "1442": [ - { - "name": "Polygon zkEVM explorer", - "url": "https://explorer.public.zkevm-test.net", - "standard": "EIP3091" - } - ], - "1452": [ - { - "name": "GIL Explorer", - "url": "https://explorer.giltestnet.com", - "standard": "EIP3091" - } - ], - "1453": [ - { - "name": "MetaExplorer", - "url": "https://istanbul-explorer.metachain.dev", - "standard": "EIP3091" - } - ], - "1455": [ - { - "name": "Ctex Scan Explorer", - "url": "https://ctexscan.com", - "standard": "none" - } - ], - "1456": [ - { - "name": "ZKbase Block Explorer", - "url": "https://explorer.zkbase.app", - "icon": "zkbase", - "standard": "EIP3091" - } - ], - "1490": [ - { - "name": "Vitruveo Explorer", - "url": "https://explorer.vitruveo.xyz", - "icon": "vitruveo", - "standard": "EIP3091" - } - ], - "1499": [ - { - "name": "IGC-Scan", - "url": "https://igcscan.com", - "standard": "EIP3091" - } - ], - "1501": [ - { - "name": "bevm canary scan", - "url": "https://scan-canary.bevm.io", - "standard": "none" - } - ], - "1506": [ - { - "name": "Sherpax Mainnet Explorer", - "url": "https://evm.sherpax.io", - "standard": "none" - } - ], - "1507": [ - { - "name": "Sherpax Testnet Explorer", - "url": "https://evm-pre.sherpax.io", - "standard": "none" - } - ], - "1515": [ - { - "name": "Beagle Messaging Chain Explorer", - "url": "https://eth.beagle.chat", - "standard": "EIP3091" - } - ], - "1559": [ - { - "name": "TenetScan Mainnet", - "url": "https://tenetscan.io", - "icon": "tenet", - "standard": "EIP3091" - } - ], - "1570": [ - { - "name": "StarCHAIN Explorer", - "url": "https://testnet.starchainscan.io", - "standard": "EIP3091" - } - ], - "1578": [ - { - "name": "StarCHAIN Explorer", - "url": "https://starchainscan.io", - "standard": "EIP3091" - } - ], - "1617": [ - { - "name": "Ethereum Inscription Explorer", - "url": "https://explorer.etins.org", - "standard": "none" - } - ], - "1625": [ - { - "name": "Gravity Alpha Mainnet Explorer", - "url": "https://explorer.gravity.xyz", - "standard": "EIP3091" - } - ], - "1648": [ - { - "name": "Pivotal Scan", - "url": "https://pivotalscan.xyz", - "standard": "EIP3091" - } - ], - "1662": [ - { - "name": "Liquichain Mainnet", - "url": "https://mainnet.liquichain.io", - "standard": "EIP3091" - } - ], - "1663": [ - { - "name": "Gobi Testnet Block Explorer", - "url": "https://gobi-explorer.horizen.io", - "icon": "eon", - "standard": "EIP3091" - } - ], - "1686": [ - { - "name": "blockscout", - "url": "https://testnet-explorer.mintchain.io", - "icon": "mintTestnet", - "standard": "EIP3091" - } - ], - "1687": [ - { - "name": "blockscout", - "url": "https://sepolia-testnet-explorer.mintchain.io", - "icon": "mintTestnet", - "standard": "EIP3091" - } - ], - "1701": [ - { - "name": "Anytype Explorer", - "url": "https://explorer.anytype.io", - "icon": "any", - "standard": "EIP3091" - } - ], - "1707": [ - { - "name": "blockscout", - "url": "https://exp.blockchain.or.th", - "standard": "EIP3091" - } - ], - "1708": [ - { - "name": "blockscout", - "url": "https://exp.testnet.blockchain.or.th", - "standard": "EIP3091" - } - ], - "1717": [ - { - "name": "Doric Explorer", - "url": "https://explorer.doric.network", - "standard": "EIP3091" - } - ], - "1718": [ - { - "name": "Palettescan", - "url": "https://palettescan.com", - "icon": "PLT", - "standard": "none" - } - ], - "1729": [ - { - "name": "Reya Network Explorer", - "url": "https://explorer.reya.network", - "standard": "EIP3091" - } - ], - "1740": [ - { - "name": "blockscout", - "url": "https://testnet.explorer.metall2.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "1750": [ - { - "name": "blockscout", - "url": "https://explorer.metall2.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "1773": [ - { - "name": "PartyExplorer", - "url": "https://partyexplorer.co", - "icon": "grams", - "standard": "EIP3091" - } - ], - "1777": [ - { - "name": "Gauss Explorer", - "url": "https://explorer.gaussgang.com", - "standard": "EIP3091" - } - ], - "1789": [ - { - "name": "ZKbase Block Explorer", - "url": "https://sepolia-explorer.zkbase.app", - "icon": "zkbase", - "standard": "EIP3091" - } - ], - "1804": [ - { - "name": "Lite Explorer", - "url": "https://ethereum-pocr.github.io/explorer/kerleano", - "icon": "pocr", - "standard": "EIP3091" - } - ], - "1807": [ - { - "name": "blockscout", - "url": "https://rabbit.analogscan.com", - "standard": "none" - } - ], - "1811": [ - { - "name": "lif3scout", - "url": "https://testnet.lif3scout.com", - "standard": "none" - } - ], - "1818": [ - { - "name": "cube-scan", - "url": "https://cubescan.network", - "standard": "EIP3091" - } - ], - "1819": [ - { - "name": "cubetest-scan", - "url": "https://testnet.cubescan.network", - "standard": "EIP3091" - } - ], - "1821": [ - { - "name": "RUBY Smart Chain MAINNET Explorer", - "icon": "ruby", - "url": "https://rubyscan.net", - "standard": "none" - } - ], - "1875": [ - { - "name": "whitechain-explorer", - "url": "https://explorer.whitechain.io", - "standard": "EIP3091" - } - ], - "1881": [ - { - "name": "blockscout", - "url": "https://scan.cartenz.works", - "standard": "EIP3091" - } - ], - "1890": [ - { - "name": "phoenix", - "url": "https://phoenix.lightlink.io", - "icon": "lightlink", - "standard": "EIP3091" - } - ], - "1891": [ - { - "name": "pegasus", - "url": "https://pegasus.lightlink.io", - "icon": "lightlink", - "standard": "EIP3091" - } - ], - "1898": [ - { - "name": "explorer", - "url": "https://explorer.boyanet.org:4001", - "standard": "EIP3091" - } - ], - "1899": [ - { - "name": "ReDeFi Scan", - "url": "https://scanlayer2.redefi.world", - "standard": "EIP3091" - } - ], - "1904": [ - { - "name": "blockscout", - "url": "https://explorer.sportschainnetwork.xyz", - "standard": "EIP3091" - } - ], - "1907": [ - { - "name": "Bitci Explorer", - "url": "https://bitciexplorer.com", - "standard": "EIP3091" - } - ], - "1908": [ - { - "name": "Bitci Explorer Testnet", - "url": "https://testnet.bitciexplorer.com", - "standard": "EIP3091" - } - ], - "1909": [ - { - "name": "blockscout", - "url": "https://merklescan.com", - "standard": "none" - } - ], - "1911": [ - { - "name": "scalind", - "url": "https://explorer.scalind.com", - "standard": "EIP3091" - } - ], - "1912": [ - { - "name": "RUBY Smart Chain Testnet Explorer", - "icon": "ruby", - "url": "https://testnet.rubyscan.net", - "standard": "none" - } - ], - "1945": [ - { - "name": "Onus explorer testnet", - "url": "https://explorer-testnet.onuschain.io", - "icon": "onus", - "standard": "EIP3091" - } - ], - "1954": [ - { - "name": "dos-mainnet", - "url": "https://exp.dexilla.com", - "standard": "EIP3091" - } - ], - "1956": [ - { - "name": "aiw3 testnet scan", - "url": "https://scan-testnet.aiw3.io", - "standard": "none" - } - ], - "1961": [ - { - "name": "Selendra Scan", - "url": "https://scan.selendra.org", - "standard": "none" - } - ], - "1967": [ - { - "name": "metaexplorer-eleanor", - "url": "https://explorer.metatime.com/eleanor", - "standard": "EIP3091" - } - ], - "1969": [ - { - "name": "blockscout", - "url": "https://testnetscan.scschain.com", - "standard": "EIP3091" - } - ], - "1970": [ - { - "name": "blockscout", - "url": "https://scan.scschain.com", - "standard": "EIP3091" - } - ], - "1972": [ - { - "name": "RedeCoin Explorer", - "url": "https://explorer3.redecoin.eu", - "standard": "none" - } - ], - "1975": [ - { - "name": "Onus explorer mainnet", - "url": "https://explorer.onuschain.io", - "icon": "onus", - "standard": "EIP3091" - } - ], - "1984": [ - { - "name": "testnetexplorer", - "url": "https://testnetexplorer.eurus.network", - "icon": "eurus", - "standard": "none" - } - ], - "1985": [ - { - "name": "mainnetexplorer", - "url": "http://explore.satosh.ie", - "icon": "satoshie", - "standard": "none" - } - ], - "1986": [ - { - "name": "testnetexplorer", - "url": "http://explore-testnet.satosh.ie", - "icon": "satoshie", - "standard": "none" - } - ], - "1992": [ - { - "name": "routescan", - "url": "https://explorer.hubble.exchange", - "standard": "EIP3091" - } - ], - "1993": [ - { - "name": "Blockscout", - "url": "https://sepolia.explorer.b3.fun", - "standard": "EIP3091" - } - ], - "1994": [ - { - "name": "ektascan", - "url": "https://ektascan.io", - "icon": "ekta", - "standard": "EIP3091" - } - ], - "1995": [ - { - "name": "edexa-testnet", - "url": "https://explorer.testnet.edexa.network", - "standard": "EIP3091" - } - ], - "1996": [ - { - "name": "Sanko Explorer", - "url": "https://explorer.sanko.xyz", - "standard": "EIP3091" - } - ], - "1997": [ - { - "name": "Kyotoscan", - "url": "https://kyotoscan.io", - "standard": "EIP3091" - } - ], - "1998": [ - { - "name": "Kyotoscan", - "url": "https://testnet.kyotoscan.io", - "standard": "EIP3091" - } - ], - "2000": [ - { - "name": "dogechain explorer", - "url": "https://explorer.dogechain.dog", - "standard": "EIP3091" - } - ], - "2001": [ - { - "name": "Blockscout", - "url": "https://explorer-mainnet-cardano-evm.c1.milkomeda.com", - "standard": "none" - } - ], - "2002": [ - { - "name": "Blockscout", - "url": "https://explorer-mainnet-algorand-rollup.a1.milkomeda.com", - "standard": "none" - } - ], - "2004": [ - { - "name": "MetaScan", - "url": "http://twoto3.com:3000", - "standard": "none" - } - ], - "2008": [ - { - "name": "CloudWalk Testnet Explorer", - "url": "https://explorer.testnet.cloudwalk.io", - "standard": "none" - } - ], - "2009": [ - { - "name": "CloudWalk Mainnet Explorer", - "url": "https://explorer.mainnet.cloudwalk.io", - "standard": "none" - } - ], - "2014": [ - { - "name": "nowscan", - "url": "https://testnet.nowscan.io", - "standard": "EIP3091" - } - ], - "2016": [ - { - "name": "MainnetZ", - "url": "https://explorer.mainnetz.io", - "standard": "EIP3091" - } - ], - "2017": [ - { - "name": "telscan", - "url": "https://telscan.io", - "icon": "telcoin", - "standard": "EIP3091" - } - ], - "2018": [ - { - "name": "PublicMint Explorer", - "url": "https://explorer.dev.publicmint.io", - "standard": "EIP3091" - } - ], - "2019": [ - { - "name": "PublicMint Explorer", - "url": "https://explorer.tst.publicmint.io", - "standard": "EIP3091" - } - ], - "2020": [ - { - "name": "PublicMint Explorer", - "url": "https://explorer.publicmint.io", - "standard": "EIP3091" - } - ], - "2021": [ - { - "name": "Edgscan EdgeEVM explorer by Bharathcoorg", - "url": "https://edgscan.live", - "standard": "EIP3091" - }, - { - "name": "Edgscan EdgeWASM explorer by Bharathcoorg", - "url": "https://edgscan.ink", - "standard": "none", - "icon": "edgscan" - } - ], - "2022": [ - { - "name": "Edgscan by Bharathcoorg", - "url": "https://testnet.edgscan.live", - "standard": "EIP3091" - } - ], - "2023": [ - { - "name": "Taycan Explorer(Blockscout)", - "url": "https://evmscan-test.hupayx.io", - "standard": "none", - "icon": "shuffle" - }, - { - "name": "Taycan Cosmos Explorer", - "url": "https://cosmoscan-test.hupayx.io", - "standard": "none", - "icon": "shuffle" - } - ], - "2025": [ - { - "name": "rangersscan", - "url": "https://scan.rangersprotocol.com", - "standard": "none" - } - ], - "2026": [ - { - "name": "Edgeless Explorer", - "url": "https://explorer.edgeless.network", - "standard": "EIP3091" - } - ], - "2031": [ - { - "name": "subscan", - "url": "https://centrifuge.subscan.io", - "standard": "EIP3091", - "icon": "subscan" - } - ], - "2037": [ - { - "name": "KIWI Explorer", - "url": "https://subnets-test.avax.network/kiwi", - "standard": "EIP3091" - } - ], - "2038": [ - { - "name": "SHRAPNEL Explorer", - "url": "https://subnets-test.avax.network/shrapnel", - "standard": "EIP3091" - } - ], - "2039": [ - { - "name": "Aleph Zero Testnet", - "url": "https://test.azero.dev/#/explorer", - "icon": "aleph", - "standard": "none" - } - ], - "2040": [ - { - "name": "Vanar Explorer", - "url": "https://explorer.vanarchain.com", - "icon": "vanar", - "standard": "EIP3091" - } - ], - "2047": [ - { - "name": "Stratos EVM Explorer (Blockscout)", - "url": "https://web3-explorer-mesos.thestratos.org", - "standard": "none" - }, - { - "name": "Stratos Cosmos Explorer (BigDipper)", - "url": "https://big-dipper-mesos.thestratos.org", - "standard": "none" - } - ], - "2048": [ - { - "name": "Stratos EVM Explorer (Blockscout)", - "url": "https://web3-explorer.thestratos.org", - "standard": "none" - }, - { - "name": "Stratos Cosmos Explorer (BigDipper)", - "url": "https://explorer.thestratos.org", - "standard": "none" - } - ], - "2049": [ - { - "name": "movoscan", - "url": "https://movoscan.com", - "icon": "movoscan", - "standard": "none" - } - ], - "2077": [ - { - "name": "blockscout", - "url": "https://explorer.qkacoin.org", - "standard": "EIP3091" - } - ], - "2100": [ - { - "name": "Ecoball Explorer", - "url": "https://scan.ecoball.org", - "standard": "EIP3091" - } - ], - "2101": [ - { - "name": "Ecoball Testnet Explorer", - "url": "https://espuma-scan.ecoball.org", - "standard": "EIP3091" - } - ], - "2109": [ - { - "name": "blockscout", - "url": "https://explorer.exosama.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "2112": [ - { - "name": "uchain.info", - "url": "https://uchain.info", - "standard": "EIP3091" - } - ], - "2121": [ - { - "name": "catenascan", - "url": "https://catenascan.com", - "standard": "EIP3091" - } - ], - "2122": [ - { - "name": "Metad Scan", - "url": "https://scan.metaplayer.one", - "icon": "metad", - "standard": "EIP3091" - } - ], - "2124": [ - { - "name": "MP1Scan", - "url": "https://dubai.mp1scan.io", - "standard": "EIP3091" - } - ], - "2136": [ - { - "name": "Polkadot.js", - "url": "https://polkadot.js.org/apps/?rpc=wss://test-market.bigsb.network#/explorer", - "standard": "none" - } - ], - "2138": [ - { - "name": "Quorum Explorer", - "url": "https://public-2138.defi-oracle.io", - "standard": "none" - } - ], - "2140": [ - { - "name": "oneness-mainnet", - "url": "https://scan.onenesslabs.io", - "standard": "EIP3091" - } - ], - "2141": [ - { - "name": "oneness-testnet", - "url": "https://scan.testnet.onenesslabs.io", - "standard": "EIP3091" - } - ], - "2151": [ - { - "name": "BOASCAN", - "url": "https://boascan.io", - "icon": "agora", - "standard": "EIP3091" - } - ], - "2152": [ - { - "name": "findorascan", - "url": "https://evm.findorascan.io", - "standard": "EIP3091" - } - ], - "2153": [ - { - "name": "findorascan", - "url": "https://testnet-anvil.evm.findorascan.io", - "standard": "EIP3091" - } - ], - "2154": [ - { - "name": "findorascan", - "url": "https://testnet-forge.evm.findorascan.io", - "standard": "EIP3091" - } - ], - "2162": [ - { - "name": "blockscout", - "url": "https://explorer.kanda.animechain.ai", - "standard": "EIP3091" - } - ], - "2199": [ - { - "name": "blockscout", - "url": "https://explorer.moonsama.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "2202": [ - { - "name": "Antofy Mainnet", - "url": "https://antofyscan.com", - "standard": "EIP3091" - } - ], - "2203": [ - { - "name": "Explorer", - "url": "https://explorer.bitcoinevm.com", - "icon": "ebtc", - "standard": "none" - } - ], - "2213": [ - { - "name": "Evanesco Explorer", - "url": "https://explorer.evanesco.org", - "standard": "none" - } - ], - "2221": [ - { - "name": "Kava Testnet Explorer", - "url": "http://testnet.kavascan.com", - "standard": "EIP3091", - "icon": "kava" - } - ], - "2222": [ - { - "name": "Kava EVM Explorer", - "url": "https://kavascan.com", - "standard": "EIP3091", - "icon": "kava" - } - ], - "2223": [ - { - "name": "VChain Scan", - "url": "https://scan.vcex.xyz", - "standard": "EIP3091" - } - ], - "2241": [ - { - "name": "Polkadot.js", - "url": "https://polkadot.js.org/apps/?rpc=wss://wss-krest.peaq.network#/explorer", - "standard": "none" - }, - { - "name": "Subscan", - "url": "https://krest.subscan.io", - "standard": "none" - } - ], - "2300": [ - { - "name": "bombscan", - "icon": "bomb", - "url": "https://bombscan.com", - "standard": "EIP3091" - } - ], - "2311": [ - { - "name": "Lit Chronicle Vesuvius Explorer", - "url": "https://vesuvius-explorer.litprotocol.com", - "icon": "lit", - "standard": "EIP3091" - } - ], - "2323": [ - { - "name": "SOMA Testnet Explorer", - "icon": "soma", - "url": "https://testnet.somascan.io", - "standard": "none" - } - ], - "2330": [ - { - "name": "expedition", - "url": "http://expedition.altcoinchain.org", - "icon": "altcoinchain", - "standard": "none" - } - ], - "2331": [ - { - "name": "RSS3 VSL Sepolia Testnet Scan", - "url": "https://scan.testnet.rss3.io", - "standard": "EIP3091" - } - ], - "2332": [ - { - "name": "SOMA Explorer Mainnet", - "icon": "soma", - "url": "https://somascan.io", - "standard": "none" - } - ], - "2340": [ - { - "name": "Atleta Olympia Explorer", - "icon": "atleta", - "url": "https://blockscout.atleta.network", - "standard": "none" - }, - { - "name": "Atleta Olympia Polka Explorer", - "icon": "atleta", - "url": "https://polkadot-explorer.atleta.network/#/explorer", - "standard": "none" - } - ], - "2342": [ - { - "name": "OmniaVerse Explorer", - "url": "https://scan.omniaverse.io", - "standard": "EIP3091" - } - ], - "2358": [ - { - "name": "blockscout", - "url": "https://blockscout.sepolia.kroma.network", - "icon": "kroma", - "standard": "EIP3091" - } - ], - "2370": [ - { - "name": "Nexis Testnet Explorer", - "url": "https://evm-testnet.nexscan.io", - "standard": "EIP3091" - } - ], - "2399": [ - { - "name": "bombscan-testnet", - "icon": "bomb", - "url": "https://explorer.bombchain-testnet.ankr.com", - "standard": "EIP3091" - } - ], - "2400": [ - { - "name": "TCG Verse Explorer", - "url": "https://explorer.tcgverse.xyz", - "standard": "EIP3091" - } - ], - "2410": [ - { - "name": "Karak Mainnet Explorer", - "url": "https://explorer.karak.network", - "standard": "EIP3091" - } - ], - "2415": [ - { - "name": "XODEX Explorer", - "url": "https://explorer.xo-dex.com", - "standard": "EIP3091", - "icon": "xodex" - } - ], - "2425": [ - { - "name": "King Of Legends Mainnet Explorer", - "url": "https://kingscan.org", - "icon": "kol", - "standard": "EIP3091" - } - ], - "2442": [ - { - "name": "polygonscan", - "url": "https://cardona-zkevm.polygonscan.com", - "standard": "EIP3091" - } - ], - "2458": [ - { - "name": "Hybrid Chain Explorer Testnet", - "icon": "hybrid", - "url": "https://testnet.hybridscan.ai", - "standard": "none" - } - ], - "2468": [ - { - "name": "Hybrid Chain Explorer Mainnet", - "icon": "hybrid", - "url": "https://hybridscan.ai", - "standard": "none" - } - ], - "2484": [ - { - "icon": "u2u_nebulas", - "name": "U2U Explorer", - "url": "https://testnet.u2uscan.xyz", - "standard": "EIP3091" - } - ], - "2522": [ - { - "name": "fraxscan", - "url": "https://holesky.fraxscan.com", - "standard": "EIP3091" - } - ], - "2569": [ - { - "name": "tpcscan", - "url": "https://tpcscan.com", - "icon": "techpay", - "standard": "EIP3091" - } - ], - "2606": [ - { - "name": "Lite Explorer", - "url": "https://ethereum-pocr.github.io/explorer/pocrnet", - "icon": "pocr", - "standard": "EIP3091" - } - ], - "2611": [ - { - "name": "REDLC Explorer", - "url": "https://redlightscan.finance", - "standard": "EIP3091" - } - ], - "2612": [ - { - "name": "ezchain", - "url": "https://cchain-explorer.ezchain.com", - "standard": "EIP3091" - } - ], - "2613": [ - { - "name": "ezchain", - "url": "https://testnet-cchain-explorer.ezchain.com", - "standard": "EIP3091" - } - ], - "2625": [ - { - "name": "whitechain-testnet-explorer", - "url": "https://testnet.whitechain.io", - "standard": "EIP3091" - } - ], - "2648": [ - { - "name": "blockscout", - "url": "https://testnet-explorer.ailayer.xyz", - "icon": "ailayer", - "standard": "EIP3091" - } - ], - "2649": [ - { - "name": "blockscout", - "url": "https://mainnet-explorer.ailayer.xyz", - "icon": "ailayer", - "standard": "EIP3091" - } - ], - "2710": [ - { - "name": "Morph Testnet Explorer", - "url": "https://explorer-testnet.morphl2.io", - "standard": "EIP3091" - } - ], - "2718": [ - { - "name": "blockscout", - "url": "https://blockscout.klaos.laosfoundation.io", - "icon": "k-laos", - "standard": "EIP3091" - } - ], - "2730": [ - { - "name": "XR Sepolia Explorer", - "url": "https://xr-sepolia-testnet.explorer.caldera.xyz", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "2731": [ - { - "name": "Time Network Explorer", - "url": "https://testnet-scanner.timenetwork.io", - "standard": "none", - "icon": "timenet" - } - ], - "2748": [ - { - "name": "Nanon Rollup Explorer", - "url": "https://explorer.nanon.network", - "standard": "EIP3091" - } - ], - "2777": [ - { - "name": "GM Network Mainnet Explorer", - "url": "https://scan.gmnetwork.ai", - "standard": "EIP3091" - } - ], - "2810": [ - { - "name": "Morph Holesky Testnet Explorer", - "url": "https://explorer-holesky.morphl2.io", - "standard": "EIP3091" - } - ], - "2907": [ - { - "name": "blockscout", - "url": "https://eluxscan.com", - "standard": "none" - } - ], - "2911": [ - { - "name": "blockscout", - "url": "https://explorer.hychain.com", - "icon": "hychain", - "standard": "EIP3091" - } - ], - "2941": [ - { - "name": "Xenon testnet Explorer", - "url": "https://testnet.xenonchain.com", - "standard": "none" - } - ], - "2999": [ - { - "name": "BitYuan Block Chain Explorer", - "url": "https://mainnet.bityuan.com", - "standard": "none" - } - ], - "3001": [ - { - "name": "UNcover", - "url": "https://www.uncoverexplorer.com/?network=Nikau", - "standard": "none" - } - ], - "3003": [ - { - "name": "canxium explorer", - "url": "https://explorer.canxium.org", - "standard": "none" - } - ], - "3011": [ - { - "name": "PLAYA3ULL GAMES Explorer", - "url": "https://3011.routescan.io", - "icon": "playa3ull", - "standard": "EIP3091" - } - ], - "3031": [ - { - "name": "Orlando (ORL) Explorer", - "url": "https://orlscan.com", - "icon": "orl", - "standard": "EIP3091" - } - ], - "3033": [ - { - "name": "Rebus EVM Explorer (Blockscout)", - "url": "https://evm.testnet.rebus.money", - "icon": "rebus", - "standard": "none" - }, - { - "name": "Rebus Cosmos Explorer (ping.pub)", - "url": "https://testnet.rebus.money/rebustestnet", - "icon": "rebus", - "standard": "none" - } - ], - "3068": [ - { - "name": "explorer-thebifrost", - "url": "https://explorer.mainnet.bifrostnetwork.com", - "standard": "EIP3091" - } - ], - "3073": [ - { - "name": "mevm explorer", - "url": "https://explorer.movementlabs.xyz", - "standard": "none" - } - ], - "3084": [ - { - "name": "XL Network Explorer", - "url": "https://subnets-test.avax.network/xlnetworkt", - "standard": "EIP3091" - } - ], - "3306": [ - { - "name": "Debounce Devnet Explorer", - "url": "https://explorer.debounce.network", - "standard": "EIP3091" - } - ], - "3334": [ - { - "name": "w3q-galileo", - "url": "https://explorer.galileo.web3q.io", - "standard": "EIP3091" - } - ], - "3338": [ - { - "name": "Subscan", - "url": "https://peaq.subscan.io", - "standard": "none" - } - ], - "3400": [ - { - "name": "Paribu Net Explorer", - "url": "https://explorer.paribu.network", - "standard": "EIP3091" - } - ], - "3424": [ - { - "name": "Evolve Mainnet Explorer", - "url": "https://evoexplorer.com", - "standard": "EIP3091" - } - ], - "3434": [ - { - "name": "SecureChain", - "url": "https://testnet.securechain.ai", - "standard": "EIP3091" - } - ], - "3456": [ - { - "name": "LayerEdge Testnet Explorer", - "url": "https://testnet-explorer.layeredge.io", - "icon": "layerEdge", - "standard": "EIP3091" - } - ], - "3490": [ - { - "name": "GTCScan Explorer", - "url": "https://gtcscan.io", - "standard": "none", - "icon": "gtc" - } - ], - "3500": [ - { - "name": "Paribu Net Testnet Explorer", - "url": "https://testnet.paribuscan.com", - "standard": "EIP3091" - } - ], - "3501": [ - { - "name": "JFIN Chain Explorer", - "url": "https://exp.jfinchain.com", - "standard": "EIP3091" - } - ], - "3601": [ - { - "name": "Pando Mainnet Explorer", - "url": "https://explorer.pandoproject.org", - "standard": "none" - } - ], - "3602": [ - { - "name": "Pando Testnet Explorer", - "url": "https://testnet.explorer.pandoproject.org", - "standard": "none" - } - ], - "3636": [ - { - "name": "3xpl", - "url": "https://3xpl.com/botanix", - "standard": "EIP3091" - }, - { - "name": "Blockscout", - "url": "https://blockscout.botanixlabs.dev", - "standard": "EIP3091" - } - ], - "3637": [ - { - "name": "Botanix", - "url": "https://btxtestchain.com", - "standard": "EIP3091" - } - ], - "3639": [ - { - "name": "iChainscan", - "url": "https://ichainscan.com", - "standard": "EIP3091" - } - ], - "3645": [ - { - "name": "iChainscan", - "url": "https://test.ichainscan.com", - "standard": "EIP3091" - } - ], - "3666": [ - { - "name": "jscan", - "url": "https://jscan.jnsdao.com", - "standard": "EIP3091" - } - ], - "3690": [ - { - "name": "bittexscan", - "url": "https://bittexscan.com", - "standard": "EIP3091" - } - ], - "3693": [ - { - "name": "Empire Explorer", - "url": "https://explorer.empirenetwork.io", - "standard": "none" - } - ], - "3698": [ - { - "name": "SenjePowers", - "url": "https://testnet.senjepowersscan.com", - "standard": "EIP3091" - } - ], - "3699": [ - { - "name": "SenjePowers", - "url": "https://senjepowersscan.com", - "standard": "EIP3091" - } - ], - "3737": [ - { - "name": "Crossbell Explorer", - "url": "https://scan.crossbell.io", - "standard": "EIP3091" - } - ], - "3776": [ - { - "name": "Blockscout Astar zkEVM explorer", - "url": "https://astar-zkevm.explorer.startale.com", - "standard": "EIP3091" - } - ], - "3797": [ - { - "name": "AlveyScan", - "url": "https://alveyscan.com", - "icon": "alveychain", - "standard": "EIP3091" - } - ], - "3799": [ - { - "name": "ttntscan", - "url": "https://testnet-explorer.tangle.tools", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "3888": [ - { - "name": "KalyScan", - "url": "https://kalyscan.io", - "standard": "EIP3091" - } - ], - "3889": [ - { - "name": "KalyScan", - "url": "https://testnet.kalyscan.io", - "standard": "EIP3091" - } - ], - "3912": [ - { - "name": "DRAC_Network Scan", - "url": "https://www.dracscan.io", - "standard": "EIP3091" - } - ], - "3939": [ - { - "name": "DOScan-Test", - "url": "https://test.doscan.io", - "icon": "doschain", - "standard": "EIP3091" - } - ], - "3966": [ - { - "name": "DYNO Explorer", - "url": "https://dynoscan.io", - "standard": "EIP3091" - } - ], - "3967": [ - { - "name": "DYNO Explorer", - "url": "https://testnet.dynoscan.io", - "standard": "EIP3091" - } - ], - "3993": [ - { - "name": "blockscout", - "url": "https://exp-testnet.apexlayer.xyz", - "standard": "EIP3091" - } - ], - "3999": [ - { - "name": "YuanChain Explorer", - "url": "https://mainnet.yuan.org", - "standard": "none" - } - ], - "4000": [ - { - "name": "OZONE Scan", - "url": "https://ozonescan.io", - "standard": "EIP3091" - } - ], - "4001": [ - { - "name": "Peperium Chain Explorer", - "url": "https://scan-testnet.peperium.io", - "icon": "peperium", - "standard": "EIP3091" - } - ], - "4002": [ - { - "name": "ftmscan", - "url": "https://testnet.ftmscan.com", - "icon": "ftmscan", - "standard": "EIP3091" - } - ], - "4003": [ - { - "name": "Blockscout", - "url": "https://explorer.x1-fastnet.xen.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "4040": [ - { - "name": "Carbonium Network tesnet Explorer", - "icon": "cbr", - "url": "https://testnet.carboniumscan.com", - "standard": "none" - } - ], - "4048": [ - { - "name": "ganscan", - "url": "https://ganscan.gpu.net", - "standard": "none" - } - ], - "4058": [ - { - "name": "blockscout", - "url": "https://ocean.ftnscan.com", - "standard": "none" - } - ], - "4061": [ - { - "name": "Nahmii 3 Mainnet Explorer", - "url": "https://explorer.nahmii.io", - "icon": "nahmii", - "standard": "EIP3091" - } - ], - "4062": [ - { - "name": "Nahmii 3 Testnet Explorer", - "url": "https://explorer.testnet.nahmii.io", - "icon": "nahmii", - "standard": "EIP3091" - } - ], - "4078": [ - { - "name": "Musterscan", - "url": "https://muster-explorer.alt.technology", - "standard": "EIP3091" - } - ], - "4080": [ - { - "name": "tobescan", - "url": "https://tobescan.com", - "standard": "EIP3091" - } - ], - "4090": [ - { - "name": "blockscout", - "url": "https://oasis.ftnscan.com", - "standard": "none" - } - ], - "4096": [ - { - "name": "Bitindi", - "url": "https://testnet.bitindiscan.com", - "standard": "EIP3091" - } - ], - "4099": [ - { - "name": "Bitindi", - "url": "https://bitindiscan.com", - "standard": "EIP3091" - } - ], - "4102": [ - { - "name": "AIOZ Network Testnet Explorer", - "url": "https://testnet.explorer.aioz.network", - "standard": "EIP3091" - } - ], - "4141": [ - { - "name": "Tipboxcoin", - "url": "https://testnet.tipboxcoin.net", - "standard": "EIP3091" - } - ], - "4157": [ - { - "name": "CrossFi Testnet Scan", - "url": "https://test.xfiscan.com", - "standard": "EIP3091", - "icon": "crossfi" - } - ], - "4162": [ - { - "name": "SX L2 Explorer", - "url": "https://explorerl2.sx.technology", - "standard": "EIP3091", - "icon": "SX" - } - ], - "4181": [ - { - "name": "PHI Explorer", - "url": "https://explorer.phi.network", - "icon": "phi", - "standard": "none" - } - ], - "4200": [ - { - "name": "L2scan", - "url": "https://scan.merlinchain.io", - "icon": "merlin", - "standard": "EIP3091" - } - ], - "4201": [ - { - "name": "Blockscout", - "url": "https://explorer.execution.testnet.lukso.network", - "standard": "none" - } - ], - "4202": [ - { - "name": "liskscout", - "url": "https://sepolia-blockscout.lisk.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "4242": [ - { - "name": "nexiscan", - "url": "https://www.nexiscan.com", - "standard": "EIP3091" - } - ], - "4243": [ - { - "name": "nexiscan", - "url": "https://www.nexiscan.com", - "standard": "EIP3091" - } - ], - "4337": [ - { - "name": "Beam Explorer", - "url": "https://subnets.avax.network/beam", - "standard": "EIP3091" - } - ], - "4400": [ - { - "name": "Creditscan", - "url": "https://scan.creditsmartchain.com", - "icon": "credit", - "standard": "EIP3091" - } - ], - "4444": [ - { - "name": "htmlcoin", - "url": "https://explorer.htmlcoin.com", - "icon": "htmlcoin", - "standard": "none" - } - ], - "4460": [ - { - "name": "basescout", - "url": "https://explorerl2new-orderly-l2-4460-sepolia-8tc3sd7dvy.t.conduit.xyz", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "4544": [ - { - "name": "EMoney ethscan", - "url": "https://ethscan.emoney.network", - "icon": "emoney", - "standard": "EIP3091" - } - ], - "4613": [ - { - "name": "VERY explorer", - "url": "https://www.veryscan.io", - "standard": "none" - } - ], - "4689": [ - { - "name": "iotexscan", - "url": "https://iotexscan.io", - "standard": "EIP3091" - } - ], - "4690": [ - { - "name": "testnet iotexscan", - "url": "https://testnet.iotexscan.io", - "standard": "EIP3091" - } - ], - "4759": [ - { - "name": "MEVerse Chain Testnet Explorer", - "url": "https://testnet.meversescan.io", - "standard": "none", - "icon": "meverse" - } - ], - "4777": [ - { - "name": "blockscout", - "url": "https://testnet-explorer.blackfort.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "4893": [ - { - "name": "blockscout", - "url": "https://gcscan.io", - "standard": "none" - } - ], - "4918": [ - { - "name": "Venidium EVM Testnet Explorer", - "url": "https://evm-testnet.venidiumexplorer.com", - "standard": "EIP3091" - } - ], - "4919": [ - { - "name": "Venidium Explorer", - "url": "https://evm.venidiumexplorer.com", - "standard": "EIP3091" - } - ], - "4999": [ - { - "name": "blockscout", - "url": "https://explorer.blackfort.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "5000": [ - { - "name": "mantlescan", - "url": "https://mantlescan.xyz", - "standard": "EIP3091" - }, - { - "name": "Mantle Explorer", - "url": "https://explorer.mantle.xyz", - "standard": "EIP3091" - } - ], - "5001": [ - { - "name": "Mantle Testnet Explorer", - "url": "https://explorer.testnet.mantle.xyz", - "standard": "EIP3091" - } - ], - "5002": [ - { - "name": "Treasurenet EVM BlockExplorer", - "url": "https://evmexplorer.treasurenet.io", - "icon": "treasurenet", - "standard": "none" - } - ], - "5003": [ - { - "name": "blockscout", - "url": "https://explorer.sepolia.mantle.xyz", - "standard": "EIP3091" - } - ], - "5005": [ - { - "name": "Treasurenet EVM BlockExplorer", - "url": "https://evmexplorer.testnet.treasurenet.io", - "icon": "treasurenet", - "standard": "none" - } - ], - "5039": [ - { - "name": "ONIGIRI Explorer", - "url": "https://subnets-test.avax.network/onigiri", - "standard": "EIP3091" - } - ], - "5040": [ - { - "name": "ONIGIRI Explorer", - "url": "https://subnets.avax.network/onigiri", - "standard": "EIP3091" - } - ], - "5051": [ - { - "name": "Nollie Skate Chain Testnet Explorer", - "url": "https://nolliescan.skatechain.org", - "standard": "EIP3091" - } - ], - "5102": [ - { - "name": "blockscout", - "url": "https://explorerl2new-sic-testnet-zvr7tlkzsi.t.conduit.xyz", - "standard": "EIP3091" - } - ], - "5106": [ - { - "name": "blockscout", - "url": "https://explorerl2new-azra-testnet-6hz86owb1n.t.conduit.xyz", - "standard": "EIP3091" - } - ], - "5112": [ - { - "name": "blockscout", - "url": "https://explorer.ham.fun", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "5151": [ - { - "name": "MeChain Scan", - "url": "https://testnet-scan.mechain.tech", - "icon": "mechain", - "standard": "EIP3091" - } - ], - "5165": [ - { - "name": "blockscout", - "url": "https://ftnscan.com", - "standard": "none" - } - ], - "5169": [ - { - "name": "SLN Mainnet Explorer", - "url": "https://explorer.main.smartlayer.network", - "standard": "EIP3091" - } - ], - "5177": [ - { - "name": "TLChain Explorer", - "url": "https://explorer.tlchain.network", - "standard": "none" - } - ], - "5234": [ - { - "name": "Subscan", - "url": "https://humanode.subscan.io", - "standard": "EIP3091", - "icon": "subscan" - } - ], - "5317": [ - { - "name": "OpTrust Testnet explorer", - "url": "https://scantest.optrust.io", - "icon": "optrust", - "standard": "none" - } - ], - "5321": [ - { - "name": "ITX Testnet Explorer (Blockscout)", - "url": "https://explorer.testnet.itxchain.com", - "standard": "EIP3091" - } - ], - "5333": [ - { - "name": "netsbo", - "url": "https://explorer.netsbo.io", - "icon": "netsbo", - "standard": "none" - } - ], - "5353": [ - { - "name": "TRITANIUM Testnet Explorer", - "icon": "tritanium", - "url": "https://testnet.tritanium.network", - "standard": "none" - } - ], - "5372": [ - { - "name": "Settlus Scan", - "url": "https://testnet.settlus.network", - "standard": "EIP3091" - } - ], - "5424": [ - { - "name": "edexa-mainnet", - "url": "https://explorer.edexa.network", - "standard": "EIP3091" - } - ], - "5439": [ - { - "name": "egoscan", - "url": "https://egoscan.io", - "standard": "EIP3091" - } - ], - "5522": [ - { - "name": "Vexascan-EVM-TestNet", - "url": "https://testnet.vexascan.com/evmexplorer", - "standard": "EIP3091" - } - ], - "5551": [ - { - "name": "Nahmii 2 Mainnet Explorer", - "url": "https://explorer.n2.nahmii.io", - "icon": "nahmii", - "standard": "EIP3091" - } - ], - "5555": [ - { - "name": "Chain Verse Explorer", - "url": "https://explorer.chainverse.info", - "standard": "EIP3091" - } - ], - "5611": [ - { - "name": "bscscan-opbnb-testnet", - "url": "https://opbnb-testnet.bscscan.com", - "standard": "EIP3091" - }, - { - "name": "opbnbscan", - "url": "https://opbnbscan.com", - "standard": "EIP3091" - } - ], - "5615": [ - { - "name": "explorer-arcturus-testnet", - "url": "https://testnet.arcscan.net", - "standard": "EIP3091" - } - ], - "5656": [ - { - "name": "QIE Explorer", - "url": "https://mainnet.qiblockchain.online", - "standard": "EIP3091" - } - ], - "5675": [ - { - "name": "filenova testnet explorer", - "url": "https://scantest.filenova.org", - "icon": "filenova", - "standard": "none" - } - ], - "5678": [ - { - "name": "BlockScout", - "url": "https://3001-blockscout.a.dancebox.tanssi.network", - "standard": "EIP3091" - } - ], - "5700": [ - { - "name": "Syscoin Testnet Block Explorer", - "url": "https://tanenbaum.io", - "standard": "EIP3091" - } - ], - "5729": [ - { - "name": "Hika Network Testnet Explorer", - "url": "https://scan-testnet.hika.network", - "standard": "none" - } - ], - "5758": [ - { - "name": "SatoshiChain Testnet Explorer", - "url": "https://testnet.satoshiscan.io", - "standard": "EIP3091" - } - ], - "5845": [ - { - "name": "Tangle EVM Explorer", - "url": "https://explorer.tangle.tools", - "standard": "EIP3091", - "icon": "tangle" - } - ], - "5851": [ - { - "name": "explorer", - "url": "https://explorer.ont.io/testnet", - "standard": "EIP3091" - } - ], - "5858": [ - { - "name": "CTH Scan", - "url": "https://cthscan.com", - "standard": "EIP3091", - "icon": "blockscout" - } - ], - "5869": [ - { - "name": "wegoscan2", - "url": "https://scan2.wegochain.io", - "standard": "EIP3091" - } - ], - "6000": [ - { - "name": "BBScan Testnet Explorer", - "url": "https://bbscan.io", - "standard": "none" - } - ], - "6001": [ - { - "name": "BBScan Mainnet Explorer", - "url": "https://bbscan.io", - "standard": "none" - } - ], - "6065": [ - { - "name": "treslechesexplorer", - "url": "https://explorer-test.tresleches.finance", - "icon": "treslechesexplorer", - "standard": "EIP3091" - } - ], - "6066": [ - { - "name": "treslechesexplorer", - "url": "https://explorer.tresleches.finance", - "icon": "treslechesexplorer", - "standard": "EIP3091" - } - ], - "6102": [ - { - "name": "Cascadia EVM Explorer", - "url": "https://explorer.cascadia.foundation", - "standard": "none", - "icon": "cascadia" - }, - { - "name": "Cascadia Cosmos Explorer", - "url": "https://validator.cascadia.foundation", - "standard": "none", - "icon": "cascadia" - } - ], - "6118": [ - { - "name": "UPTN Testnet Explorer", - "url": "https://testnet.explorer.uptn.io", - "standard": "EIP3091" - } - ], - "6119": [ - { - "name": "UPTN Explorer", - "url": "https://explorer.uptn.io", - "standard": "EIP3091" - } - ], - "6283": [ - { - "name": "blockscout", - "url": "https://blockscout.laos.laosfoundation.io", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "6321": [ - { - "name": "Aurascan Explorer", - "url": "https://euphoria.aurascan.io", - "standard": "none", - "icon": "aura" - } - ], - "6322": [ - { - "name": "Aurascan Explorer", - "url": "https://aurascan.io", - "standard": "none", - "icon": "aura" - } - ], - "6398": [ - { - "name": "Connext Sepolia", - "url": "https://connext-sepolia.blockscout.com", - "icon": "connext", - "standard": "none" - } - ], - "6550": [ - { - "name": "flascan", - "url": "https://testnet.flascan.net", - "standard": "EIP3091" - } - ], - "6552": [ - { - "name": "Scolscan Testnet Explorer", - "url": "https://testnet-explorer.scolcoin.com", - "standard": "EIP3091" - } - ], - "6565": [ - { - "name": "FOX Testnet Explorer", - "icon": "fox", - "url": "https://testnet.foxscan.app", - "standard": "none" - } - ], - "6626": [ - { - "name": "blockscout", - "url": "https://scan.chain.pixie.xyz", - "standard": "none" - } - ], - "6660": [ - { - "name": "Latest Chain", - "url": "http://testnet.latestchain.io", - "standard": "EIP3091" - } - ], - "6661": [ - { - "name": "Cybria Explorer", - "url": "https://cybascan.io", - "icon": "cybascan", - "standard": "EIP3091" - } - ], - "6666": [ - { - "name": "Cybria Explorer", - "url": "https://explorer.cybascan.io", - "icon": "cybascan", - "standard": "EIP3091" - } - ], - "6678": [ - { - "name": "blockscout", - "url": "https://emcscan.com", - "standard": "EIP3091" - } - ], - "6688": [ - { - "name": "IRISHub Cosmos Explorer (IOBScan)", - "url": "https://irishub.iobscan.io", - "standard": "none", - "icon": "irishub" - } - ], - "6701": [ - { - "name": "PAXB Explorer", - "url": "https://scan.paxb.io", - "icon": "paxb", - "standard": "EIP3091" - } - ], - "6779": [ - { - "name": "cpvscan", - "url": "https://scan.compverse.io", - "standard": "EIP3091" - } - ], - "6789": [ - { - "name": "Gold Smart Chain", - "url": "https://mainnet.goldsmartchain.com", - "standard": "EIP3091" - } - ], - "6805": [ - { - "name": "blockscout", - "url": "https://racescan.io", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "6806": [ - { - "name": "blockscout", - "url": "https://testnet.racescan.io", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "6868": [ - { - "name": "poolsscan", - "url": "https://scan.poolsmobility.com", - "icon": "POOLS", - "standard": "EIP3091" - } - ], - "6969": [ - { - "name": "tombscout", - "url": "https://tombscout.com", - "standard": "none" - } - ], - "7000": [ - { - "name": "ZetaChain Mainnet Explorer", - "url": "https://explorer.zetachain.com", - "standard": "none" - } - ], - "7001": [ - { - "name": "ZetaScan", - "url": "https://athens.explorer.zetachain.com", - "standard": "none" - }, - { - "name": "Blockscout", - "url": "https://zetachain-athens-3.blockscout.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "7007": [ - { - "name": "blockscout", - "url": "https://bstscan.com", - "standard": "EIP3091" - } - ], - "7027": [ - { - "name": "Ella", - "url": "https://ella.network", - "standard": "EIP3091" - } - ], - "7070": [ - { - "name": "Planq EVM Explorer (Blockscout)", - "url": "https://evm.planq.network", - "standard": "none" - }, - { - "name": "Planq Cosmos Explorer (BigDipper)", - "url": "https://explorer.planq.network", - "standard": "none" - } - ], - "7100": [ - { - "name": "numeexplorer", - "url": "https://explorer.numecrypto.com", - "icon": "nume", - "standard": "none" - } - ], - "7171": [ - { - "name": "Bitrock Explorer", - "url": "https://explorer.bit-rock.io", - "standard": "EIP3091" - } - ], - "7244": [ - { - "name": "ZEUS Testnet Explorer", - "url": "https://testnet-explorer.zeuschainscan.io", - "icon": "zeusicon", - "standard": "EIP3091" - } - ], - "7300": [ - { - "name": "XPLA Verse Explorer", - "url": "https://explorer-xpla-verse.xpla.dev", - "standard": "EIP3091" - } - ], - "7332": [ - { - "name": "Horizen EON Block Explorer", - "url": "https://eon-explorer.horizenlabs.io", - "icon": "eon", - "standard": "EIP3091" - } - ], - "7341": [ - { - "name": "Shyft BX", - "url": "https://bx.shyft.network", - "standard": "EIP3091" - } - ], - "7484": [ - { - "name": "raba", - "url": "https://x.raba.app/explorer", - "standard": "none" - } - ], - "7518": [ - { - "name": "MEVerse Chain Explorer", - "url": "https://www.meversescan.io", - "standard": "none", - "icon": "meverse" - } - ], - "7560": [ - { - "name": "Cyber Mainnet Explorer", - "url": "https://cyberscan.co", - "standard": "EIP3091" - } - ], - "7575": [ - { - "name": "ADIL Testnet Explorer", - "url": "https://testnet.adilchain-scan.io", - "standard": "EIP3091" - } - ], - "7576": [ - { - "name": "ADIL Mainnet Explorer", - "url": "https://adilchain-scan.io", - "standard": "EIP3091" - } - ], - "7668": [ - { - "name": "rootnet", - "url": "https://explorer.rootnet.live", - "standard": "EIP3091" - } - ], - "7672": [ - { - "name": "rootnet", - "url": "https://explorer.rootnet.cloud", - "standard": "EIP3091" - } - ], - "7700": [ - { - "name": "Canto Explorer (OKLink)", - "url": "https://www.oklink.com/canto", - "standard": "EIP3091" - }, - { - "name": "Canto EVM Explorer (Blockscout)", - "url": "https://tuber.build", - "standard": "EIP3091" - }, - { - "name": "dexguru", - "url": "https://canto.dex.guru", - "icon": "dexguru", - "standard": "EIP3091" - } - ], - "7701": [ - { - "name": "Canto Testnet EVM Explorer (Blockscout)", - "url": "https://testnet.tuber.build", - "standard": "none" - }, - { - "name": "dexguru", - "url": "https://canto-test.dex.guru", - "icon": "dexguru", - "standard": "EIP3091" - } - ], - "7771": [ - { - "name": "Bitrock Testnet Explorer", - "url": "https://testnetscan.bit-rock.io", - "standard": "EIP3091" - } - ], - "7774": [ - { - "name": "GDCC", - "url": "https://gdccscan.io", - "standard": "none" - } - ], - "7775": [ - { - "name": "GDCC", - "url": "https://testnet.gdccscan.io", - "standard": "none" - } - ], - "7776": [ - { - "name": "Tracehawk", - "url": "https://pandaseascan.com", - "standard": "none" - } - ], - "7777": [ - { - "name": "avascan", - "url": "https://testnet.avascan.info/blockchain/2mZ9doojfwHzXN3VXDQELKnKyZYxv7833U8Yq5eTfFx3hxJtiy", - "standard": "none" - } - ], - "7778": [ - { - "name": "ORE Mainnet Explorer", - "icon": "ore", - "url": "https://oreniumscan.org", - "standard": "none" - } - ], - "7798": [ - { - "name": "OpenEX Long Testnet Explorer", - "url": "https://scan.long.openex.network", - "icon": "oex", - "standard": "EIP3091" - } - ], - "7860": [ - { - "name": "maalscan testnet", - "url": "https://testnet.maalscan.io", - "standard": "EIP3091" - } - ], - "7862": [ - { - "name": "maalscan", - "url": "https://maalscan.io", - "standard": "EIP3091" - } - ], - "7863": [ - { - "name": "maalscan testnet", - "url": "https://new-testnet.maalscan.io", - "standard": "EIP3091" - } - ], - "7878": [ - { - "name": "Hazlor Testnet Explorer", - "url": "https://explorer.hazlor.com", - "standard": "none" - } - ], - "7887": [ - { - "name": "Kinto Explorer", - "url": "https://explorer.kinto.xyz", - "icon": "kinto", - "standard": "EIP3091" - } - ], - "7895": [ - { - "name": "ARDENIUM Athena Explorer", - "icon": "ard", - "url": "https://testnet.ardscan.com", - "standard": "none" - } - ], - "7923": [ - { - "name": "blockscout", - "url": "https://explorer.dotblox.io", - "standard": "none" - } - ], - "7924": [ - { - "name": "MO Explorer", - "url": "https://moscan.app", - "standard": "none" - } - ], - "7979": [ - { - "name": "DOScan", - "url": "https://doscan.io", - "icon": "doschain", - "standard": "EIP3091" - } - ], - "8000": [ - { - "name": "Teleport EVM Explorer (Blockscout)", - "url": "https://evm-explorer.teleport.network", - "standard": "none", - "icon": "teleport" - }, - { - "name": "Teleport Cosmos Explorer (Big Dipper)", - "url": "https://explorer.teleport.network", - "standard": "none", - "icon": "teleport" - } - ], - "8001": [ - { - "name": "Teleport EVM Explorer (Blockscout)", - "url": "https://evm-explorer.testnet.teleport.network", - "standard": "none", - "icon": "teleport" - }, - { - "name": "Teleport Cosmos Explorer (Big Dipper)", - "url": "https://explorer.testnet.teleport.network", - "standard": "none", - "icon": "teleport" - } - ], - "8008": [ - { - "name": "Polynomial Explorer", - "url": "https://polynomialscan.io", - "standard": "none", - "icon": "polynomial" - } - ], - "8047": [ - { - "name": "BOAT Mainnet Explorer", - "url": "https://scan.come.boats", - "icon": "boat", - "standard": "EIP3091" - } - ], - "8054": [ - { - "name": "Karak Sepolia Explorer", - "url": "https://explorer.sepolia.karak.network", - "standard": "EIP3091" - } - ], - "8080": [ - { - "name": "Shardeum Scan", - "url": "https://explorer-liberty10.shardeum.org", - "standard": "EIP3091" - } - ], - "8081": [ - { - "name": "Shardeum Scan", - "url": "https://explorer-liberty20.shardeum.org", - "standard": "EIP3091" - } - ], - "8082": [ - { - "name": "Shardeum Scan", - "url": "https://explorer-sphinx.shardeum.org", - "standard": "EIP3091" - } - ], - "8131": [ - { - "name": "meerscan testnet", - "icon": "meer", - "url": "https://testnet-qng.qitmeer.io", - "standard": "EIP3091" - } - ], - "8181": [ - { - "name": "Testnet BeOne Chain", - "url": "https://testnet.beonescan.com", - "icon": "beonechain", - "standard": "none" - } - ], - "8192": [ - { - "name": "blockscout", - "url": "https://toruscan.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "8194": [ - { - "name": "blockscout", - "url": "https://testnet.toruscan.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "8217": [ - { - "name": "Klaytnscope", - "url": "https://scope.klaytn.com", - "standard": "EIP3091" - }, - { - "name": "Klaytnfinder", - "url": "https://klaytnfinder.io", - "standard": "EIP3091" - } - ], - "8227": [ - { - "name": "SPACE Explorer", - "url": "https://subnets.avax.network/space", - "standard": "EIP3091" - } - ], - "8272": [ - { - "name": "Blockton Explorer", - "url": "https://blocktonscan.com", - "standard": "none" - } - ], - "8329": [ - { - "name": "Lorenzo Explorer", - "url": "https://scan.lorenzo-protocol.xyz", - "standard": "none", - "icon": "lorenzo" - } - ], - "8333": [ - { - "name": "Blockscout", - "url": "https://explorer.b3.fun", - "standard": "EIP3091" - } - ], - "8453": [ - { - "name": "basescan", - "url": "https://basescan.org", - "standard": "none" - }, - { - "name": "basescout", - "url": "https://base.blockscout.com", - "icon": "blockscout", - "standard": "EIP3091" - }, - { - "name": "dexguru", - "url": "https://base.dex.guru", - "icon": "dexguru", - "standard": "EIP3091" - } - ], - "8668": [ - { - "name": "Hela Official Runtime Mainnet Explorer", - "url": "https://mainnet-blockexplorer.helachain.com", - "standard": "EIP3091" - } - ], - "8723": [ - { - "name": "OLO Block Explorer", - "url": "https://www.olo.network", - "standard": "EIP3091" - } - ], - "8726": [ - { - "name": "Storscan", - "url": "https://explorer-storagechain.invo.zone/?network=StorageChain", - "standard": "none" - } - ], - "8727": [ - { - "name": "Storscan", - "url": "https://explorer-storagechain.invo.zone/?network=StorageChain%20Testnet", - "standard": "none" - } - ], - "8732": [ - { - "name": "Bullionscan", - "url": "https://bullionscan.org", - "standard": "EIP3091" - } - ], - "8738": [ - { - "name": "alphscan", - "url": "https://explorer.alph.network", - "standard": "EIP3091" - } - ], - "8822": [ - { - "name": "explorer", - "url": "https://explorer.evm.iota.org", - "icon": "iotaevm", - "standard": "EIP3091" - } - ], - "8844": [ - { - "name": "Hydra Chain Testnet explorer", - "url": "https://hydragon.hydrachain.org", - "icon": "hydra", - "standard": "EIP3091" - } - ], - "8848": [ - { - "name": "MARO Scan", - "url": "https://scan.ma.ro/#", - "standard": "none" - } - ], - "8866": [ - { - "name": "Lumio explorer", - "url": "https://explorer.lumio.io", - "standard": "none" - } - ], - "8869": [ - { - "name": "lif3scout", - "url": "https://lif3scout.com", - "standard": "none" - } - ], - "8880": [ - { - "name": "Unique Scan", - "url": "https://uniquescan.io/unique", - "standard": "none" - } - ], - "8881": [ - { - "name": "Unique Scan / Quartz", - "url": "https://uniquescan.io/quartz", - "standard": "none" - } - ], - "8882": [ - { - "name": "Unique Scan / Opal", - "url": "https://uniquescan.io/opal", - "standard": "none" - } - ], - "8883": [ - { - "name": "Unique Scan / Sapphire", - "url": "https://uniquescan.io/sapphire", - "standard": "none" - } - ], - "8886": [ - { - "name": "Avenium Explorer Testnet", - "icon": "avenium", - "url": "https://testnet.avescan.net", - "standard": "none" - } - ], - "8888": [ - { - "name": "XANAChain", - "url": "https://xanachain.xana.net", - "standard": "EIP3091" - } - ], - "8890": [ - { - "name": "ORE Testnet Explorer", - "icon": "ore", - "url": "https://testnet.oreniumscan.org", - "standard": "none" - } - ], - "8898": [ - { - "name": "mmtscan", - "url": "https://mmtscan.io", - "standard": "EIP3091", - "icon": "mmt" - } - ], - "8899": [ - { - "name": "JIBCHAIN Explorer", - "url": "https://exp-l1.jibchain.net", - "standard": "EIP3091" - } - ], - "8911": [ - { - "name": "algscan", - "url": "https://scan.algen.network", - "icon": "alg", - "standard": "EIP3091" - } - ], - "8912": [ - { - "name": "algscan", - "url": "https://scan.test.algen.network", - "icon": "alg", - "standard": "EIP3091" - } - ], - "8921": [ - { - "name": "algl2scan", - "url": "https://scan.alg2.algen.network", - "icon": "algl2", - "standard": "EIP3091" - } - ], - "8922": [ - { - "name": "algl2scan", - "url": "https://scan.alg2-test.algen.network", - "icon": "algl2", - "standard": "EIP3091" - } - ], - "8989": [ - { - "name": "gmmtscan", - "url": "https://scan.gmmtchain.io", - "standard": "EIP3091", - "icon": "gmmt" - } - ], - "9000": [ - { - "name": "Evmos Explorer (Escan)", - "url": "https://testnet.escan.live", - "standard": "none", - "icon": "evmos" - } - ], - "9001": [ - { - "name": "Evmos Explorer (Escan)", - "url": "https://escan.live", - "standard": "none", - "icon": "evmos" - } - ], - "9007": [ - { - "name": "Shidoblock Testnet Explorer", - "url": "https://testnet.shidoscan.com", - "standard": "none", - "icon": "shidoChain" - } - ], - "9008": [ - { - "name": "Shidoblock Mainnet Explorer", - "url": "https://shidoscan.com", - "standard": "none", - "icon": "shidoChain" - } - ], - "9012": [ - { - "name": "berylbit-explorer", - "url": "https://explorer.berylbit.io", - "standard": "EIP3091" - } - ], - "9024": [ - { - "name": "Nexablock Testnet Explorer", - "url": "https://testnet.nexablockscan.io", - "standard": "none", - "icon": "nexaChain" - } - ], - "9025": [ - { - "name": "Nexablock Mainnet Explorer", - "url": "https://nexablockscan.io", - "standard": "none", - "icon": "nexaChain" - } - ], - "9223": [ - { - "name": "Codefin Net Explorer", - "url": "https://explorer.codefin.pro", - "standard": "EIP3091" - } - ], - "9339": [ - { - "name": "Dogcoin", - "url": "https://testnet.dogcoin.network", - "standard": "EIP3091" - } - ], - "9372": [ - { - "name": "blockscout", - "url": "https://explorer.testnet.oasys.games", - "standard": "EIP3091" - } - ], - "9393": [ - { - "name": "basescout", - "url": "https://sepolia-delascan.deperp.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "9395": [ - { - "name": "Evoke SmartChain Explorer", - "url": "https://explorer.evokescan.org", - "standard": "EIP3091" - } - ], - "9496": [ - { - "name": "WeaveVM Explorer", - "url": "https://explorer.wvm.dev", - "standard": "EIP3091" - } - ], - "9527": [ - { - "name": "rangersscan-robin", - "url": "https://robin-rangersscan.rangersprotocol.com", - "standard": "none" - } - ], - "9528": [ - { - "name": "QEasyWeb3 Explorer", - "url": "https://www.qeasyweb3.com", - "standard": "EIP3091" - } - ], - "9559": [ - { - "name": "Neon Blockchain Explorer", - "url": "https://testnet-scan.neonlink.io", - "standard": "EIP3091", - "icon": "neonlink" - } - ], - "9700": [ - { - "name": "Oort MainnetDev Scan", - "url": "https://dev-scan.oortech.com", - "standard": "none", - "icon": "oort" - } - ], - "9728": [ - { - "name": "Boba BNB Testnet block explorer", - "url": "https://testnet.bobascan.com", - "standard": "none" - } - ], - "9768": [ - { - "name": "MainnetZ", - "url": "https://testnet.mainnetz.io", - "standard": "EIP3091" - } - ], - "9779": [ - { - "name": "Pepe Explorer", - "url": "https://explorer.pepenetwork.io", - "icon": "pepenetwork", - "standard": "none" - } - ], - "9789": [ - { - "name": "Tabi Testnet Explorer", - "url": "https://testnet.tabiscan.com", - "standard": "none" - } - ], - "9797": [ - { - "name": "OptimusZ7 Mainnet Explorer", - "url": "https://explorer.optimusz7.com", - "standard": "EIP3091" - } - ], - "9818": [ - { - "name": "IMPERIUM TESTNET Explorer", - "icon": "timp", - "url": "https://network.impscan.com", - "standard": "none" - } - ], - "9819": [ - { - "name": "IMPERIUM Explorer", - "icon": "imp", - "url": "https://impscan.com", - "standard": "none" - } - ], - "9876": [ - { - "name": "BinaryChain Testnet Explorer", - "url": "https://explorer.testnet.binarychain.org", - "standard": "EIP3091" - } - ], - "9888": [ - { - "name": "Dogelayer mainnet explorer", - "url": "https://dl-explorer.dogelayer.org", - "standard": "EIP3091" - } - ], - "9898": [ - { - "name": "Larissa Scan", - "url": "https://scan.larissa.network", - "standard": "EIP3091" - } - ], - "9911": [ - { - "name": "escscan", - "url": "https://escscan.com", - "icon": "espento", - "standard": "EIP3091" - } - ], - "9977": [ - { - "name": "Mind Chain explorer", - "url": "https://testnet.mindscan.info", - "standard": "EIP3091" - } - ], - "9980": [ - { - "name": "combotrace explorer", - "url": "https://combotrace.nodereal.io", - "standard": "EIP3091" - } - ], - "9981": [ - { - "name": "Volley Mainnet Explorer", - "url": "https://volleyscan.io", - "standard": "EIP3091" - } - ], - "9990": [ - { - "name": "Polkadot.js", - "url": "https://polkadot.js.org/apps/?rpc=wss://wsspc1-qa.agung.peaq.network#/explorer", - "standard": "none" - }, - { - "name": "Subscan", - "url": "https://agung.subscan.io", - "standard": "none" - } - ], - "9996": [ - { - "name": "Mind Chain explorer", - "url": "https://mainnet.mindscan.info", - "standard": "EIP3091" - } - ], - "9997": [ - { - "name": "blockscout", - "url": "https://testnet-rollup-explorer.altlayer.io", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "10024": [ - { - "name": "Gon Explorer", - "url": "https://gonscan.com", - "standard": "none" - } - ], - "10081": [ - { - "name": "Testnet Block Explorer", - "url": "https://explorer.testnet.japanopenchain.org", - "standard": "EIP3091" - } - ], - "10096": [ - { - "name": "Blockscout", - "url": "https://explorer.metanovaverse.com", - "standard": "EIP3091" - }, - { - "name": "Cosmos Explorer (Ping)", - "url": "https://ping.metanovaverse.com/metanovaverse", - "standard": "none" - } - ], - "10200": [ - { - "name": "blockscout-chiadochain", - "url": "https://blockscout.chiadochain.net", - "icon": "blockscout", - "standard": "EIP3091" - }, - { - "name": "blockscout", - "url": "https://gnosis-chiado.blockscout.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "10201": [ - { - "name": "MaxxChain Block Explorer", - "url": "https://explorer.maxxchain.org", - "standard": "EIP3091" - } - ], - "10222": [ - { - "name": "GLScan Explorer", - "url": "https://glscan.io", - "standard": "none", - "icon": "glc" - } - ], - "10242": [ - { - "name": "blockscout", - "url": "https://explorer.arthera.net", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "10243": [ - { - "name": "blockscout", - "url": "https://explorer-test.arthera.net", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "10248": [ - { - "name": "0xtrade Scan", - "url": "https://www.0xtscan.com", - "standard": "none" - } - ], - "10321": [ - { - "name": "TAO Mainnet Explorer", - "url": "https://taoscan.org", - "standard": "EIP3091" - } - ], - "10324": [ - { - "name": "TAO Testnet Explorer", - "url": "https://testnet.taoscan.org", - "standard": "EIP3091" - } - ], - "10395": [ - { - "name": "Worldland Explorer", - "url": "https://testscan.worldland.foundation", - "standard": "EIP3091" - } - ], - "10507": [ - { - "name": "ethernal", - "url": "https://mainnet.num.network", - "standard": "EIP3091" - } - ], - "10508": [ - { - "name": "ethernal", - "url": "https://testnet.num.network", - "standard": "EIP3091" - } - ], - "10823": [ - { - "name": "CCP Explorer", - "url": "https://cryptocoinpay.info", - "standard": "EIP3091" - } - ], - "10849": [ - { - "name": "Lamina1 Explorer", - "url": "https://subnets.avax.network/lamina1", - "standard": "EIP3091" - } - ], - "10850": [ - { - "name": "Lamina1 Identity Explorer", - "url": "https://subnets.avax.network/lamina1id", - "standard": "EIP3091" - } - ], - "10946": [ - { - "name": "explorer", - "url": "https://explorer.quadrans.io", - "icon": "quadrans", - "standard": "EIP3091" - } - ], - "10947": [ - { - "name": "explorer", - "url": "https://explorer.testnet.quadrans.io", - "icon": "quadrans", - "standard": "EIP3091" - } - ], - "11011": [ - { - "name": "blockscout", - "url": "https://shape-sepolia-explorer.alchemy.com", - "standard": "EIP3091" - } - ], - "11110": [ - { - "name": "Astra EVM Explorer (Blockscout)", - "url": "https://explorer.astranaut.io", - "standard": "none", - "icon": "astra" - }, - { - "name": "Astra PingPub Explorer", - "url": "https://ping.astranaut.io/astra", - "standard": "none", - "icon": "astra" - } - ], - "11111": [ - { - "name": "Avalanche Subnet Explorer", - "url": "https://subnets-test.avax.network/wagmi", - "standard": "EIP3091" - } - ], - "11115": [ - { - "name": "Astra EVM Explorer", - "url": "https://explorer.astranaut.dev", - "standard": "EIP3091", - "icon": "astra" - }, - { - "name": "Astra PingPub Explorer", - "url": "https://ping.astranaut.dev/astra", - "standard": "none", - "icon": "astra" - } - ], - "11119": [ - { - "name": "hashbitscan", - "url": "https://explorer.hashbit.org", - "standard": "EIP3091" - } - ], - "11124": [ - { - "name": "Abstract Block Explorer", - "url": "https://explorer.testnet.abs.xyz", - "standard": "none" - } - ], - "11221": [ - { - "name": "shinescan", - "url": "https://shinescan.io", - "icon": "shine", - "standard": "none" - } - ], - "11227": [ - { - "name": "JIRITSUTES Explorer", - "url": "https://subnets-test.avax.network/jiritsutes", - "standard": "EIP3091" - } - ], - "11235": [ - { - "name": "Mainnet HAQQ Explorer", - "url": "https://explorer.haqq.network", - "standard": "EIP3091" - } - ], - "11437": [ - { - "name": "Shyft Testnet BX", - "url": "https://bx.testnet.shyft.network", - "standard": "EIP3091" - } - ], - "11501": [ - { - "name": "bevm mainnet scan", - "url": "https://scan-mainnet.bevm.io", - "standard": "none" - } - ], - "11503": [ - { - "name": "bevm testnet scan", - "url": "https://scan-testnet.bevm.io", - "standard": "none" - } - ], - "11521": [ - { - "name": "satschain scan", - "url": "https://scan-satschain.bevm.io", - "standard": "none" - } - ], - "11612": [ - { - "name": "Sardis", - "url": "https://testnet.sardisnetwork.com", - "standard": "EIP3091" - } - ], - "11822": [ - { - "name": "ArtelaScan", - "url": "https://betanet-scan.artela.network", - "standard": "EIP3091" - } - ], - "11891": [ - { - "name": "Polygon Supernet Arianee Explorer", - "url": "https://polygonsupernet.explorer.arianee.net", - "standard": "EIP3091" - } - ], - "12001": [ - { - "name": "Blockscout", - "url": "https://explorer.flash.fuse.io", - "standard": "none" - } - ], - "12009": [ - { - "name": "SatoshiChain Explorer", - "url": "https://satoshiscan.io", - "standard": "EIP3091" - } - ], - "12020": [ - { - "name": "blockscout", - "url": "https://explorer.aternoschain.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "12051": [ - { - "name": "zeroscan", - "url": "https://betaenv.singularity.gold:18002", - "standard": "EIP3091" - } - ], - "12052": [ - { - "name": "zeroscan", - "url": "https://zeroscan.singularity.gold", - "standard": "EIP3091" - } - ], - "12123": [ - { - "name": "BRC Chain Explorer", - "url": "https://scan.brcchain.io", - "standard": "EIP3091" - } - ], - "12306": [ - { - "name": "fiboscan", - "url": "https://scan.fibochain.org", - "standard": "EIP3091" - } - ], - "12324": [ - { - "name": "L3X Mainnet Explorer", - "url": "https://explorer.l3x.com", - "standard": "EIP3091" - } - ], - "12325": [ - { - "name": "L3X Testnet Explorer", - "url": "https://explorer-testnet.l3x.com", - "standard": "EIP3091" - } - ], - "12345": [ - { - "name": "StepScan", - "url": "https://testnet.stepscan.io", - "icon": "step", - "standard": "EIP3091" - } - ], - "12553": [ - { - "name": "RSS3 VSL Scan", - "url": "https://scan.rss3.io", - "standard": "EIP3091" - } - ], - "12715": [ - { - "name": "Rikeza Blockchain explorer", - "url": "https://testnet.rikscan.com", - "standard": "EIP3091" - } - ], - "12781": [ - { - "name": "Playdapp Testnet Explorer", - "url": "https://subnets-test.avax.network/playdappte", - "standard": "EIP3091" - } - ], - "12890": [ - { - "name": "Quantum Scan Testnet", - "url": "https://testnet.quantumscan.org", - "standard": "EIP3091" - } - ], - "12898": [ - { - "name": "Avalanche Subnet Explorer", - "url": "https://subnets-test.avax.network/letsplayfair", - "standard": "EIP3091" - } - ], - "13000": [ - { - "name": "SPS Explorer", - "url": "http://spsscan.ssquad.games", - "standard": "EIP3091" - } - ], - "13308": [ - { - "name": "Creditscan", - "url": "https://scan.creditsmartchain.com", - "icon": "credit", - "standard": "EIP3091" - } - ], - "13337": [ - { - "name": "Beam Explorer", - "url": "https://subnets-test.avax.network/beam", - "standard": "EIP3091" - } - ], - "13371": [ - { - "name": "Immutable explorer", - "url": "https://explorer.immutable.com", - "standard": "EIP3091", - "icon": "immutable" - } - ], - "13381": [ - { - "name": "phoenixplorer", - "url": "https://phoenixplorer.com", - "standard": "EIP3091" - } - ], - "13396": [ - { - "name": "Masa Explorer", - "url": "https://subnets.avax.network/masa", - "standard": "EIP3091" - } - ], - "13473": [ - { - "name": "Immutable Testnet explorer", - "url": "https://explorer.testnet.immutable.com", - "standard": "EIP3091", - "icon": "immutable" - } - ], - "13505": [ - { - "name": "Gravity Alpha Testnet Sepolia Explorer", - "url": "https://explorer-sepolia.gravity.xyz", - "standard": "EIP3091" - } - ], - "13600": [ - { - "name": "qbitscan", - "url": "https://explorer.qbitscan.com", - "icon": "kronobit", - "standard": "EIP3091" - } - ], - "13812": [ - { - "name": "Susono", - "url": "http://explorer.opn.network", - "standard": "none" - } - ], - "14000": [ - { - "name": "SPS Test Explorer", - "url": "https://explorer.3sps.net", - "standard": "EIP3091" - } - ], - "14324": [ - { - "name": "Evolve Testnet Explorer", - "url": "https://testnet.evolveblockchain.io", - "standard": "EIP3091" - } - ], - "14333": [ - { - "name": "Vitruveo Testnet Explorer", - "url": "https://test-explorer.vitruveo.xyz", - "icon": "vitruveo", - "standard": "EIP3091" - } - ], - "14801": [ - { - "name": "satoriscan", - "url": "https://satori.vanascan.io", - "standard": "EIP3091" - } - ], - "15003": [ - { - "name": "Immutable Devnet explorer", - "url": "https://explorer.dev.immutable.com", - "standard": "EIP3091", - "icon": "immutable" - } - ], - "15257": [ - { - "name": "Poodl Testnet Explorer", - "url": "https://testnet.poodl.org", - "standard": "EIP3091" - } - ], - "15259": [ - { - "name": "Poodl Mainnet Explorer", - "url": "https://explorer.poodl.org", - "standard": "EIP3091" - } - ], - "15430": [ - { - "name": "KYMTC Mainnet Explorer", - "url": "https://kymaticscan.online", - "icon": "kymtc", - "standard": "EIP3091" - } - ], - "15551": [ - { - "name": "loopscan", - "url": "http://explorer.mainnetloop.com", - "standard": "none" - } - ], - "15555": [ - { - "name": "Trust EVM Explorer", - "url": "https://trustscan.one", - "standard": "EIP3091" - } - ], - "15557": [ - { - "name": "EOS EVM Explorer", - "url": "https://explorer.testnet.evm.eosnetwork.com", - "standard": "EIP3091" - } - ], - "16116": [ - { - "name": "DeFiVerse Explorer", - "url": "https://scan.defi-verse.org", - "icon": "defiverse", - "standard": "EIP3091" - } - ], - "16166": [ - { - "name": "Testnet Block Explorer", - "url": "https://cypherium.tryethernal.com", - "standard": "EIP3091" - } - ], - "16180": [ - { - "name": "Avalanche Subnet Explorer", - "url": "https://subnets.avax.network/plyr", - "standard": "EIP3091" - } - ], - "16481": [ - { - "name": "Pivotal Scan", - "url": "https://sepolia.pivotalscan.xyz", - "standard": "EIP3091" - } - ], - "16507": [ - { - "name": "GchainExplorer", - "url": "https://gchainexplorer.genesys.network", - "standard": "EIP3091" - } - ], - "16600": [ - { - "name": "0G Chain Explorer", - "url": "https://chainscan-newton.0g.ai", - "standard": "none" - } - ], - "16688": [ - { - "name": "IRISHub Testnet Cosmos Explorer (IOBScan)", - "url": "https://nyancat.iobscan.io", - "standard": "none", - "icon": "nyancat" - } - ], - "16718": [ - { - "name": "AirDAO Network Explorer", - "url": "https://airdao.io/explorer", - "standard": "none" - } - ], - "16888": [ - { - "name": "ivarscan", - "url": "https://testnet.ivarscan.com", - "standard": "EIP3091" - } - ], - "17000": [ - { - "name": "Holesky Explorer", - "url": "https://holesky.beaconcha.in", - "icon": "ethereum", - "standard": "EIP3091" - }, - { - "name": "otterscan-holesky", - "url": "https://holesky.otterscan.io", - "icon": "ethereum", - "standard": "EIP3091" - }, - { - "name": "Holesky Etherscan", - "url": "https://holesky.etherscan.io", - "icon": "ethereum", - "standard": "EIP3091" - } - ], - "17069": [ - { - "name": "blockscout", - "url": "https://explorer.garnetchain.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "17071": [ - { - "name": "blockscout", - "url": "https://explorer.onchainpoints.xyz", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "17117": [ - { - "name": "DeFiVerse Testnet Explorer", - "url": "https://scan-testnet.defi-verse.org", - "icon": "defiverse", - "standard": "EIP3091" - } - ], - "17171": [ - { - "name": "G8Chain", - "url": "https://mainnet.oneg8.network", - "standard": "EIP3091" - } - ], - "17172": [ - { - "name": "ECLIPSE Explorer", - "url": "https://subnets-test.avax.network/eclipse", - "standard": "EIP3091" - } - ], - "17180": [ - { - "name": "Palettescan", - "url": "https://testnet.palettescan.com", - "icon": "PLT", - "standard": "none" - } - ], - "17217": [ - { - "name": "konet-explorer", - "url": "https://explorer.kon-wallet.com", - "standard": "EIP3091" - } - ], - "17777": [ - { - "name": "EOS EVM Explorer", - "url": "https://explorer.evm.eosnetwork.com", - "standard": "EIP3091" - } - ], - "18000": [ - { - "name": "Game Network", - "url": "https://explorer.fod.games", - "standard": "EIP3091" - } - ], - "18122": [ - { - "name": "stnscan", - "url": "https://stnscan.com", - "icon": "stn", - "standard": "none" - } - ], - "18159": [ - { - "name": "explorer-proofofmemes", - "url": "https://memescan.io", - "standard": "EIP3091" - } - ], - "18181": [ - { - "name": "G8Chain", - "url": "https://testnet.oneg8.network", - "standard": "EIP3091" - } - ], - "18233": [ - { - "name": "blockscout", - "url": "https://unreal.blockscout.com", - "icon": "unreal", - "standard": "EIP3091" - } - ], - "18686": [ - { - "name": "MXC zkEVM Moonchain", - "url": "https://explorer.moonchain.com", - "standard": "EIP3091" - } - ], - "18888": [ - { - "name": "Titan Explorer", - "url": "https://tkxscan.io/Titan", - "standard": "none", - "icon": "titan_tkx" - } - ], - "18889": [ - { - "name": "Titan Explorer", - "url": "https://titan-testnet-explorer-light.titanlab.io/Titan%20Testnet", - "standard": "none", - "icon": "titan_tkx" - } - ], - "19011": [ - { - "name": "HOME Verse Explorer", - "url": "https://explorer.oasys.homeverse.games", - "standard": "EIP3091" - } - ], - "19077": [ - { - "name": "BlockX EVM Explorer (Blockscout)", - "url": "https://testnet-explorer.blockxnet.com", - "standard": "EIP3091" - }, - { - "name": "BlockX Cosmos Explorer (Ping)", - "url": "https://ping.blockxnet.com/blockx-atlantis-testnet", - "standard": "none" - } - ], - "19191": [ - { - "name": "BlockX EVM Explorer (Blockscout)", - "url": "https://explorer.blockxnet.com", - "standard": "EIP3091" - }, - { - "name": "BlockX Cosmos Explorer (Ping)", - "url": "https://ping.blockxnet.com/blockx", - "standard": "none" - } - ], - "19224": [ - { - "name": "Decentraconnect Social", - "url": "https://decentraconnect.io", - "standard": "EIP3091" - } - ], - "19600": [ - { - "name": "LBRY Block Explorer", - "url": "https://explorer.lbry.com", - "icon": "lbry", - "standard": "none" - } - ], - "19845": [ - { - "name": "BTCIXScan", - "url": "https://btcixscan.com", - "standard": "none" - } - ], - "20001": [ - { - "name": "CamelarkScan", - "url": "https://scan.camelark.com", - "standard": "EIP3091" - } - ], - "20041": [ - { - "name": "NizaScan", - "url": "https://nizascan.io", - "standard": "EIP3091" - } - ], - "20073": [ - { - "name": "NizaScan", - "url": "https://testnet.nizascan.io", - "standard": "EIP3091" - } - ], - "20736": [ - { - "name": "P12 Chain Explorer", - "url": "https://explorer.p12.games", - "standard": "EIP3091" - } - ], - "20765": [ - { - "name": "JONO11 Explorer", - "url": "https://subnets-test.avax.network/jono11", - "standard": "EIP3091" - } - ], - "21004": [ - { - "name": "C4EI sirato", - "url": "https://exp.c4ei.net", - "icon": "c4ei", - "standard": "none" - } - ], - "21133": [ - { - "name": "AAH Blockscout", - "url": "https://exp.c4ex.net", - "icon": "aah", - "standard": "EIP3091" - } - ], - "21223": [ - { - "name": "DCpay Mainnet Explorer", - "url": "https://mainnet.dcpay.io", - "standard": "EIP3091" - } - ], - "21224": [ - { - "name": "DCpay Testnet Explorer", - "url": "https://testnet.dcpay.io", - "standard": "EIP3091" - } - ], - "21337": [ - { - "name": "UNcover", - "url": "https://uncoverexplorer.com", - "standard": "none" - } - ], - "21363": [ - { - "name": "Lestnet Explorer", - "url": "https://explore.lestnet.org", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "21816": [ - { - "name": "omChain Explorer", - "url": "https://explorer.omchain.io", - "standard": "EIP3091" - } - ], - "21912": [ - { - "name": "BSL Mainnet Explorer", - "url": "https://scan.nftruth.io", - "standard": "EIP3091" - } - ], - "22023": [ - { - "name": "Taycan Explorer(Blockscout)", - "url": "https://taycan-evmscan.hupayx.io", - "standard": "none", - "icon": "shuffle" - }, - { - "name": "Taycan Cosmos Explorer(BigDipper)", - "url": "https://taycan-cosmoscan.hupayx.io", - "standard": "none", - "icon": "shuffle" - } - ], - "22040": [ - { - "name": "AirDAO Network Explorer", - "url": "https://testnet.airdao.io/explorer", - "standard": "none" - } - ], - "22222": [ - { - "name": "Nautscan", - "url": "https://nautscan.com", - "standard": "EIP3091", - "icon": "nautilus" - } - ], - "22324": [ - { - "name": "GoldXChain Testnet Explorer", - "url": "https://testnet-explorer.goldxchain.io", - "standard": "EIP3091" - } - ], - "22776": [ - { - "name": "maposcan", - "url": "https://maposcan.io", - "standard": "EIP3091" - } - ], - "23006": [ - { - "name": "Antofy Testnet", - "url": "https://test.antofyscan.com", - "standard": "EIP3091" - } - ], - "23118": [ - { - "name": "opsideInfo", - "url": "https://opside.info", - "standard": "EIP3091" - } - ], - "23294": [ - { - "name": "Oasis Sapphire Explorer", - "url": "https://explorer.oasis.io/mainnet/sapphire", - "standard": "EIP3091" - } - ], - "23295": [ - { - "name": "Oasis Sapphire Testnet Explorer", - "url": "https://explorer.oasis.io/testnet/sapphire", - "standard": "EIP3091" - } - ], - "23451": [ - { - "name": "drxscan", - "url": "https://scan.dreyerx.com", - "icon": "dreyerx", - "standard": "EIP3091" - } - ], - "23452": [ - { - "name": "drxscan", - "url": "https://testnet-scan.dreyerx.com", - "icon": "dreyerx", - "standard": "EIP3091" - } - ], - "23888": [ - { - "name": "Blast Testnet", - "url": "http://testnet-explorer.blastblockchain.com", - "standard": "EIP3091" - } - ], - "24076": [ - { - "name": "KYMTC Testnet Explorer", - "url": "https://testnet-explorer.kymaticscan.online", - "icon": "kymtc", - "standard": "EIP3091" - } - ], - "25186": [ - { - "name": "LiquidLayer Mainnet Explorer", - "url": "https://scan.liquidlayer.network", - "standard": "EIP3091" - } - ], - "25839": [ - { - "name": "AlveyScan Testnet", - "url": "https://alveytestnet.com", - "icon": "alveychain", - "standard": "EIP3091" - } - ], - "25888": [ - { - "name": "Hammer Chain Explorer", - "url": "https://www.hammerchain.io", - "standard": "none" - } - ], - "25925": [ - { - "name": "bkcscan-testnet", - "url": "https://testnet.bkcscan.com", - "standard": "none", - "icon": "bkc" - } - ], - "26026": [ - { - "name": "polkadotjs", - "url": "https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Ftestnet.dev.svcs.ferrumnetwork.io#/explorer", - "standard": "none" - } - ], - "26482": [ - { - "name": "Blockscout", - "url": "https://explorer-testnet.ducatusx.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "26483": [ - { - "name": "Blockscout", - "url": "https://explorer.ducatusx.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "26600": [ - { - "name": "Hertz Scan", - "url": "https://hertzscan.com", - "icon": "hertz-network", - "standard": "EIP3091" - } - ], - "26863": [ - { - "name": "OasisChain Explorer", - "url": "https://scan.oasischain.io", - "standard": "EIP3091" - } - ], - "27181": [ - { - "name": "blockscout", - "url": "https://blockscout.klaosnova.laosfoundation.io", - "icon": "k-laos", - "standard": "EIP3091" - } - ], - "27483": [ - { - "name": "Nanon Sepolia Rollup Testnet Explorer", - "url": "https://sepolia-explorer.nanon.network", - "standard": "EIP3091" - } - ], - "27827": [ - { - "name": "ZEROONEMAI Explorer", - "url": "https://subnets.avax.network/zeroonemai", - "standard": "EIP3091" - } - ], - "28516": [ - { - "name": "blockscout", - "url": "https://explorer-sepolia.vizing.com", - "icon": "vizing", - "standard": "EIP3091" - } - ], - "28518": [ - { - "name": "blockscout", - "url": "https://explorer.vizing.com", - "icon": "vizing", - "standard": "EIP3091" - } - ], - "28528": [ - { - "name": "blockscout", - "url": "https://blockscout.com/optimism/bedrock-alpha", - "standard": "EIP3091" - } - ], - "28882": [ - { - "name": "Bobascan", - "url": "https://testnet.bobascan.com", - "standard": "none" - } - ], - "29112": [ - { - "name": "blockscout", - "url": "https://testnet.explorer.hychain.com", - "icon": "hychain", - "standard": "EIP3091" - } - ], - "29223": [ - { - "name": "NexaShell", - "url": "https://nexa.sh", - "standard": "none", - "icon": "nexashell" - } - ], - "29536": [ - { - "name": "KaiChain Explorer", - "url": "https://testnet-explorer.kaichain.net", - "standard": "EIP3091" - } - ], - "29548": [ - { - "name": "MCH Verse Explorer", - "url": "https://explorer.oasys.mycryptoheroes.net", - "standard": "EIP3091" - } - ], - "30067": [ - { - "name": "Piece Scan", - "url": "https://testnet-scan.piecenetwork.com", - "standard": "EIP3091" - } - ], - "30088": [ - { - "name": "MiYou block explorer", - "url": "https://myscan.miyou.io", - "standard": "EIP3091" - } - ], - "30103": [ - { - "name": "canxium explorer", - "url": "https://cerium-explorer.canxium.net", - "standard": "none" - } - ], - "30730": [ - { - "name": "mevm explorer", - "url": "https://explorer.movementlabs.xyz", - "standard": "none" - } - ], - "30731": [ - { - "name": "mevm explorer", - "url": "https://explorer.movementlabs.xyz", - "standard": "none" - } - ], - "30732": [ - { - "name": "mevm explorer", - "url": "https://explorer.testnet.imola.movementlabs.xyz", - "standard": "none" - } - ], - "31223": [ - { - "name": "cloudtxscan", - "url": "https://scan.cloudtx.finance", - "standard": "EIP3091" - } - ], - "31224": [ - { - "name": "cloudtxexplorer", - "url": "https://explorer.cloudtx.finance", - "standard": "EIP3091" - } - ], - "31337": [ - { - "name": "GoChain Testnet Explorer", - "url": "https://testnet-explorer.gochain.io", - "standard": "EIP3091" - } - ], - "31414": [ - { - "name": "Evoke SmartChain Testnet Explorer", - "url": "https://testnet-explorer.evokescan.org", - "standard": "EIP3091" - } - ], - "31753": [ - { - "name": "Xchain Mainnet Explorer", - "url": "https://xchainscan.com", - "standard": "EIP3091" - } - ], - "31754": [ - { - "name": "Xchain Testnet Explorer", - "url": "https://xchaintest.net", - "standard": "EIP3091" - } - ], - "32001": [ - { - "name": "W3Gamez Holesky Explorer", - "url": "https://w3gamez-holesky.web3games.com", - "icon": "web3games", - "standard": "EIP3091" - } - ], - "32382": [ - { - "name": "Santiment Intelligence Explorer", - "url": "https://app-explorer-pos.sanr.app", - "standard": "none" - } - ], - "32520": [ - { - "name": "Brise Scan", - "url": "https://brisescan.com", - "icon": "brise", - "standard": "EIP3091" - } - ], - "32659": [ - { - "name": "fsnscan", - "url": "https://fsnscan.com", - "icon": "fsnscan", - "standard": "EIP3091" - } - ], - "32769": [ - { - "name": "Zilliqa EVM Explorer", - "url": "https://evmx.zilliqa.com", - "standard": "none" - } - ], - "32990": [ - { - "name": "Zilliqa EVM Isolated Server Explorer", - "url": "https://devex.zilliqa.com/?network=https://zilliqa-isolated-server.zilliqa.com", - "standard": "none" - } - ], - "33033": [ - { - "name": "Entangle Mainnet Explorer", - "url": "https://explorer.entangle.fi", - "standard": "none" - } - ], - "33101": [ - { - "name": "Zilliqa EVM Explorer", - "url": "https://evmx.zilliqa.com", - "standard": "none" - } - ], - "33103": [ - { - "name": "Zilliqa 2 EVM proto-testnet explorer", - "url": "https://explorer.zq2-prototestnet.zilliqa.com", - "standard": "EIP3091" - } - ], - "33111": [ - { - "name": "Curtis Explorer", - "url": "https://explorer.curtis.apechain.com", - "standard": "EIP3091" - } - ], - "33210": [ - { - "name": "CLOUDVERSE Explorer", - "url": "https://subnets.avax.network/cloudverse", - "standard": "EIP3091" - } - ], - "33333": [ - { - "name": "avescan", - "url": "https://avescan.io", - "icon": "avescan", - "standard": "EIP3091" - } - ], - "33385": [ - { - "name": "Zilliqa EVM Devnet Explorer", - "url": "https://otterscan.devnet.zilliqa.com", - "standard": "EIP3091" - } - ], - "33401": [ - { - "name": "SlingShot Explorer", - "url": "https://explore.slingshotdao.com", - "icon": "slingshot", - "standard": "EIP3091" - } - ], - "33469": [ - { - "name": "Zilliqa-2 EVM Devnet Explorer", - "url": "https://explorer.zq2-devnet.zilliqa.com", - "standard": "EIP3091" - } - ], - "33979": [ - { - "name": "FunkiScan", - "url": "https://funkiscan.io", - "standard": "none" - }, - { - "name": "Funki Mainnet Explorer", - "url": "https://funki.superscan.network", - "standard": "none" - } - ], - "34443": [ - { - "name": "modescout", - "url": "https://explorer.mode.network", - "standard": "none" - } - ], - "34504": [ - { - "name": "ZEUS Mainnet Explorer", - "url": "https://zeuschainscan.io", - "icon": "zeusicon", - "standard": "EIP3091" - } - ], - "35011": [ - { - "name": "J2O Taro Explorer", - "url": "https://exp.j2o.io", - "icon": "j2otaro", - "standard": "EIP3091" - } - ], - "35441": [ - { - "name": "Q explorer", - "url": "https://explorer.q.org", - "icon": "q", - "standard": "EIP3091" - } - ], - "35443": [ - { - "name": "Q explorer", - "url": "https://explorer.qtestnet.org", - "icon": "q", - "standard": "EIP3091" - } - ], - "38400": [ - { - "name": "rangersscan", - "url": "https://scan.rangersprotocol.com", - "standard": "none" - } - ], - "38401": [ - { - "name": "rangersscan-robin", - "url": "https://robin-rangersscan.rangersprotocol.com", - "standard": "none" - } - ], - "39656": [ - { - "name": "Primal Network", - "url": "https://prmscan.org", - "standard": "EIP3091" - } - ], - "39815": [ - { - "name": "ohoscan", - "url": "https://ohoscan.com", - "icon": "ohoscan", - "standard": "EIP3091" - } - ], - "41455": [ - { - "name": "Aleph Zero EVM Mainnet Explorer", - "url": "https://evm-explorer.alephzero.org", - "icon": "aleph-zero", - "standard": "none" - } - ], - "41500": [ - { - "name": "Opulent-X BETA Explorer", - "url": "https://explorer.opulent-x.com", - "standard": "none" - } - ], - "42072": [ - { - "name": "AgentLayer Testnet Explorer", - "url": "https://testnet-explorer.agentlayer.xyz", - "standard": "EIP3091" - } - ], - "42161": [ - { - "name": "Arbiscan", - "url": "https://arbiscan.io", - "standard": "EIP3091" - }, - { - "name": "Arbitrum Explorer", - "url": "https://explorer.arbitrum.io", - "standard": "EIP3091" - }, - { - "name": "dexguru", - "url": "https://arbitrum.dex.guru", - "icon": "dexguru", - "standard": "EIP3091" - } - ], - "42170": [ - { - "name": "Arbitrum Nova Chain Explorer", - "url": "https://nova-explorer.arbitrum.io", - "icon": "blockscout", - "standard": "EIP3091" - }, - { - "name": "dexguru", - "url": "https://nova.dex.guru", - "icon": "dexguru", - "standard": "EIP3091" - } - ], - "42220": [ - { - "name": "Celoscan", - "url": "https://celoscan.io", - "standard": "EIP3091" - }, - { - "name": "blockscout", - "url": "https://explorer.celo.org", - "standard": "none" - } - ], - "42261": [ - { - "name": "Oasis Emerald Testnet Explorer", - "url": "https://explorer.oasis.io/testnet/emerald", - "standard": "EIP3091" - } - ], - "42262": [ - { - "name": "Oasis Emerald Explorer", - "url": "https://explorer.oasis.io/mainnet/emerald", - "standard": "EIP3091" - } - ], - "42355": [ - { - "name": "GoldXChain Explorer", - "url": "https://explorer.goldxchain.io", - "standard": "EIP3091" - } - ], - "42421": [ - { - "name": "Asset Chain Testnet Explorer", - "url": "https://scan-testnet.assetchain.org", - "standard": "EIP3091" - } - ], - "42766": [ - { - "name": "blockscout", - "url": "https://scan.zkfair.io", - "icon": "zkfair", - "standard": "EIP3091" - } - ], - "42793": [ - { - "name": "Etherlink Explorer", - "url": "https://explorer.etherlink.com", - "standard": "EIP3091" - } - ], - "42801": [ - { - "name": "Gesoten Verse Testnet Explorer", - "url": "https://explorer.testnet.verse.gesoten.com", - "standard": "EIP3091" - } - ], - "42888": [ - { - "name": "kintoscan", - "url": "http://35.215.120.180:4000", - "standard": "EIP3091" - } - ], - "43113": [ - { - "name": "snowtrace", - "url": "https://testnet.snowtrace.io", - "standard": "EIP3091" - } - ], - "43114": [ - { - "name": "snowtrace", - "url": "https://snowtrace.io", - "standard": "EIP3091" - } - ], - "43851": [ - { - "name": "ZKFair Testnet Info", - "url": "https://testnet-scan.zkfair.io", - "icon": "zkfair", - "standard": "EIP3091" - } - ], - "44444": [ - { - "name": "blockscout", - "url": "https://frenscan.io", - "icon": "fren", - "standard": "EIP3091" - } - ], - "44445": [ - { - "name": "Quantum Explorer", - "url": "https://qtm.avescoin.io", - "icon": "quantum", - "standard": "EIP3091" - } - ], - "44787": [ - { - "name": "Alfajoresscan", - "url": "https://alfajores.celoscan.io", - "standard": "EIP3091" - } - ], - "45000": [ - { - "name": "autobahn explorer", - "url": "https://explorer.autobahn.network", - "icon": "autobahn", - "standard": "EIP3091" - } - ], - "45454": [ - { - "name": "blockscout", - "url": "https://swamps-explorer.tc.l2aas.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "45510": [ - { - "name": "Deelance Mainnet Explorer", - "url": "https://deescan.com", - "standard": "EIP3091" - } - ], - "45513": [ - { - "name": "blockscout", - "url": "https://blessnet.calderaexplorer.xyz", - "icon": "bless", - "standard": "EIP3091" - } - ], - "46688": [ - { - "name": "fsnscan", - "url": "https://testnet.fsnscan.com", - "icon": "fsnscan", - "standard": "EIP3091" - } - ], - "47763": [ - { - "name": "Neo X - Explorer", - "url": "https://xexplorer.neo.org", - "standard": "EIP3091" - } - ], - "47803": [ - { - "name": "ReDeFi Scan", - "url": "https://scanlayer1.redefi.world", - "standard": "EIP3091" - } - ], - "47805": [ - { - "name": "rei-scan", - "url": "https://scan.rei.network", - "standard": "none" - } - ], - "48795": [ - { - "name": "SPACE Explorer", - "url": "https://subnets-test.avax.network/space", - "standard": "EIP3091" - } - ], - "48899": [ - { - "name": "Zircuit", - "url": "https://explorer.testnet.zircuit.com", - "icon": "zircuit", - "standard": "none" - } - ], - "48900": [ - { - "name": "Zircuit", - "url": "https://explorer.zircuit.com", - "icon": "zircuit", - "standard": "none" - } - ], - "49049": [ - { - "name": "Wire Explorer", - "url": "https://floripa-explorer.wireshape.org", - "standard": "EIP3091" - } - ], - "49088": [ - { - "name": "explorer-thebifrost", - "url": "https://explorer.testnet.bifrostnetwork.com", - "standard": "EIP3091" - } - ], - "49321": [ - { - "name": "blockscout", - "url": "https://testnet.gunzscan.io", - "standard": "EIP3091" - } - ], - "50005": [ - { - "name": "Yooldo Verse Explorer", - "url": "https://explorer.yooldo-verse.xyz", - "standard": "EIP3091" - } - ], - "50006": [ - { - "name": "Yooldo Verse Explorer", - "url": "https://explorer.testnet.yooldo-verse.xyz", - "standard": "EIP3091" - } - ], - "50021": [ - { - "name": "GTON Testnet Network Explorer", - "url": "https://explorer.testnet.gton.network", - "standard": "EIP3091" - } - ], - "51178": [ - { - "name": "LumozTestnetInfo", - "url": "https://lumoz.info", - "icon": "opside-new", - "standard": "EIP3091" - } - ], - "51712": [ - { - "name": "Sardis", - "url": "https://contract-mainnet.sardisnetwork.com", - "standard": "EIP3091" - } - ], - "52014": [ - { - "name": "blockscout", - "url": "https://blockexplorer.electroneum.com", - "icon": "electroneum", - "standard": "EIP3091" - } - ], - "53277": [ - { - "name": "DOID Scan", - "url": "https://scan.doid.tech", - "icon": "doid", - "standard": "EIP3091" - } - ], - "53302": [ - { - "name": "seedscout", - "url": "https://sepolia-explorer.superseed.xyz", - "standard": "EIP3091" - } - ], - "53457": [ - { - "name": "DODOchain Testnet (Sepolia) Explorer", - "url": "https://testnet-scan.dodochain.com", - "icon": "dodochain_testnet", - "standard": "EIP3091" - } - ], - "53935": [ - { - "name": "ethernal", - "url": "https://explorer.dfkchain.com", - "icon": "ethereum", - "standard": "none" - } - ], - "54211": [ - { - "name": "TestEdge HAQQ Explorer", - "url": "https://explorer.testedge2.haqq.network", - "standard": "EIP3091" - } - ], - "54321": [ - { - "name": "toronet_explorer", - "url": "https://testnet.toronet.org", - "standard": "none" - } - ], - "55004": [ - { - "name": "blockscout", - "url": "https://explorer.titan.tokamak.network", - "standard": "EIP3091" - } - ], - "55551": [ - { - "name": "photon_testnet2_explorer", - "url": "https://testnet2.photonchain.io", - "standard": "none" - } - ], - "55555": [ - { - "name": "reiscan", - "url": "https://reiscan.com", - "standard": "EIP3091" - } - ], - "55556": [ - { - "name": "reiscan", - "url": "https://testnet.reiscan.com", - "standard": "EIP3091" - } - ], - "55614": [ - { - "name": "flascan", - "url": "https://flascan.net", - "standard": "EIP3091" - } - ], - "56026": [ - { - "name": "Lambda Chain Mainnet Explorer", - "url": "https://scan.lambda.im", - "standard": "EIP3091" - } - ], - "56288": [ - { - "name": "Boba BNB block explorer", - "url": "https://bobascan.com", - "standard": "none" - } - ], - "56400": [ - { - "name": "TESTNETZER Explorer", - "url": "https://subnets-test.avax.network/testnetzer", - "standard": "EIP3091" - } - ], - "56789": [ - { - "name": "novascan", - "url": "https://novascan.velo.org", - "standard": "EIP3091" - } - ], - "56797": [ - { - "name": "DOID Testnet Scan", - "url": "https://scan.testnet.doid.tech", - "icon": "doid", - "standard": "EIP3091" - } - ], - "57000": [ - { - "name": "Rollux Testnet Explorer", - "url": "https://rollux.tanenbaum.io", - "standard": "EIP3091" - } - ], - "57451": [ - { - "name": "coinsecnetwork", - "url": "https://explorer.coinsec.network", - "standard": "EIP3091" - } - ], - "58008": [ - { - "name": "blockscout", - "url": "https://explorer.sepolia.publicgoods.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "59140": [ - { - "name": "Etherscan", - "url": "https://goerli.lineascan.build", - "standard": "EIP3091", - "icon": "linea" - }, - { - "name": "Blockscout", - "url": "https://explorer.goerli.linea.build", - "standard": "EIP3091", - "icon": "linea" - } - ], - "59141": [ - { - "name": "Etherscan", - "url": "https://sepolia.lineascan.build", - "standard": "EIP3091", - "icon": "linea" - }, - { - "name": "Blockscout", - "url": "https://explorer.sepolia.linea.build", - "standard": "EIP3091", - "icon": "linea" - } - ], - "59144": [ - { - "name": "Etherscan", - "url": "https://lineascan.build", - "standard": "EIP3091", - "icon": "linea" - }, - { - "name": "Blockscout", - "url": "https://explorer.linea.build", - "standard": "EIP3091", - "icon": "linea" - }, - { - "name": "L2scan", - "url": "https://linea.l2scan.co", - "standard": "EIP3091", - "icon": "linea" - } - ], - "59902": [ - { - "name": "blockscout", - "url": "https://sepolia-explorer.metisdevops.link", - "standard": "EIP3091" - } - ], - "59971": [ - { - "name": "Genesys Scan", - "url": "https://genesysscan.io", - "icon": "genesyscode", - "standard": "none" - } - ], - "60000": [ - { - "name": "thinkiumscan", - "url": "https://test0.thinkiumscan.net", - "standard": "EIP3091" - } - ], - "60001": [ - { - "name": "thinkiumscan", - "url": "https://test1.thinkiumscan.net", - "standard": "EIP3091" - } - ], - "60002": [ - { - "name": "thinkiumscan", - "url": "https://test2.thinkiumscan.net", - "standard": "EIP3091" - } - ], - "60103": [ - { - "name": "thinkiumscan", - "url": "https://test103.thinkiumscan.net", - "standard": "EIP3091" - } - ], - "60808": [ - { - "name": "bobscout", - "url": "https://explorer.gobob.xyz", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "61022": [ - { - "name": "Blockscout", - "url": "https://scan.orangechain.xyz", - "icon": "orange", - "standard": "EIP3091" - } - ], - "61406": [ - { - "name": "KaiChain Explorer", - "url": "https://explorer.kaichain.net", - "standard": "EIP3091" - } - ], - "61800": [ - { - "name": "AxelChain Dev-Net Explorer", - "url": "https://devexplorer2.viacube.com", - "standard": "EIP3091" - } - ], - "61803": [ - { - "name": "eticascan", - "url": "https://eticascan.org", - "standard": "EIP3091" - }, - { - "name": "eticastats", - "url": "http://explorer.etica-stats.org", - "standard": "EIP3091" - } - ], - "61916": [ - { - "name": "DSC Scan", - "url": "https://explore.doken.dev", - "icon": "doken", - "standard": "EIP3091" - } - ], - "62049": [ - { - "name": "optopia-testnet-scan", - "url": "https://scan-testnet.optopia.ai", - "icon": "optopia", - "standard": "EIP3091" - } - ], - "62050": [ - { - "name": "optopia-scan", - "url": "https://scan.optopia.ai", - "icon": "optopia", - "standard": "EIP3091" - } - ], - "62298": [ - { - "name": "Citrea Devnet Explorer", - "url": "https://explorer.devnet.citrea.xyz", - "icon": "citrea", - "standard": "EIP3091" - } - ], - "62621": [ - { - "name": "MultiVAC Explorer", - "url": "https://e.mtv.ac", - "standard": "none" - } - ], - "62831": [ - { - "name": "Avalanche Subnet Testnet Explorer", - "url": "https://subnets-test.avax.network/plyr", - "standard": "EIP3091" - } - ], - "62850": [ - { - "name": "blockscout", - "url": "https://sigma.explorer.laosnetwork.io", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "63000": [ - { - "name": "eCredits MainNet Explorer", - "url": "https://explorer.ecredits.com", - "icon": "ecredits", - "standard": "EIP3091" - } - ], - "63001": [ - { - "name": "eCredits TestNet Explorer", - "url": "https://explorer.tst.ecredits.com", - "icon": "ecredits", - "standard": "EIP3091" - } - ], - "65349": [ - { - "name": "Blockscout", - "url": "https://explorer-testnet.cratd2csmartchain.io", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "65357": [ - { - "name": "vecno", - "url": "https://explorer.vecno.org", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "65450": [ - { - "name": "Scolscan Explorer", - "url": "https://explorer.scolcoin.com", - "standard": "EIP3091" - } - ], - "66988": [ - { - "name": "JanusNetwork Testnet Explorer", - "url": "https://beta.scan.janusnetwork.io", - "standard": "none" - } - ], - "68770": [ - { - "name": "DM2Verse Explorer", - "url": "https://explorer.dm2verse.dmm.com", - "standard": "EIP3091" - } - ], - "69420": [ - { - "name": "Condrieu explorer", - "url": "https://explorer.condrieu.ethdevops.io", - "standard": "none" - } - ], - "70000": [ - { - "name": "thinkiumscan", - "url": "https://chain0.thinkiumscan.net", - "standard": "EIP3091" - } - ], - "70001": [ - { - "name": "thinkiumscan", - "url": "https://chain1.thinkiumscan.net", - "standard": "EIP3091" - } - ], - "70002": [ - { - "name": "thinkiumscan", - "url": "https://chain2.thinkiumscan.net", - "standard": "EIP3091" - } - ], - "70103": [ - { - "name": "thinkiumscan", - "url": "https://chain103.thinkiumscan.net", - "standard": "EIP3091" - } - ], - "70700": [ - { - "name": "Proof of Play Apex Explorer", - "url": "https://explorer.apex.proofofplay.com", - "icon": "pop-apex", - "standard": "EIP3091" - } - ], - "71111": [ - { - "name": "GuapcoinX Explorer", - "url": "http://explorer.guapcoinx.com", - "standard": "none", - "icon": "guapcoinx" - } - ], - "71401": [ - { - "name": "GWScan Block Explorer", - "url": "https://v1.testnet.gwscan.com", - "standard": "none" - } - ], - "71402": [ - { - "name": "GWScan Block Explorer", - "url": "https://v1.gwscan.com", - "standard": "none" - } - ], - "72778": [ - { - "name": "ankara", - "url": "https://explorer.ankara-cagacrypto.com", - "standard": "EIP3091" - } - ], - "72992": [ - { - "name": "GrokScan", - "url": "https://mainnet-explorer.grokchain.dev", - "standard": "none" - } - ], - "73114": [ - { - "name": "ICB Tesnet Explorer", - "url": "https://testnet.icbscan.io", - "standard": "EIP3091" - } - ], - "73115": [ - { - "name": "ICB Explorer", - "url": "https://icbscan.io", - "standard": "EIP3091" - } - ], - "73927": [ - { - "name": "mvmscan", - "url": "https://scan.mvm.dev", - "icon": "mvm", - "standard": "EIP3091" - } - ], - "75000": [ - { - "name": "ResinScan", - "url": "https://explorer.resincoin.dev", - "standard": "none" - } - ], - "75512": [ - { - "name": "Geek Explorer", - "url": "https://explorer.geekout-pte.com", - "standard": "EIP3091" - } - ], - "75513": [ - { - "name": "Geek Testnet Explorer", - "url": "https://explorer-testnet.geekout-pte.com", - "standard": "EIP3091" - } - ], - "77001": [ - { - "name": "BORAchainscope", - "url": "https://scope.boraportal.com", - "standard": "EIP3091" - } - ], - "77238": [ - { - "name": "Foundry Scan Testnet", - "url": "https://testnet-explorer.foundryscan.org", - "standard": "EIP3091" - } - ], - "77612": [ - { - "name": "ventionscan", - "url": "https://ventionscan.io", - "standard": "EIP3091" - } - ], - "77777": [ - { - "name": "toronet_explorer", - "url": "https://toronet.org/explorer", - "standard": "none" - } - ], - "78281": [ - { - "name": "Dragonfly Blockscout", - "url": "https://blockscout.dragonfly.hexapod.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "78430": [ - { - "name": "AMPLIFY Explorer", - "url": "https://subnets-test.avax.network/amplify", - "standard": "EIP3091" - } - ], - "78431": [ - { - "name": "BULLETIN Explorer", - "url": "https://subnets-test.avax.network/bulletin", - "standard": "EIP3091" - } - ], - "78432": [ - { - "name": "CONDUIT Explorer", - "url": "https://subnets-test.avax.network/conduit", - "standard": "EIP3091" - } - ], - "78600": [ - { - "name": "Vanguard Explorer", - "url": "https://explorer-vanguard.vanarchain.com", - "icon": "vanguard", - "standard": "EIP3091" - } - ], - "79879": [ - { - "name": "Gold Smart Chain", - "url": "https://testnet.goldsmartchain.com", - "standard": "EIP3091" - } - ], - "80001": [ - { - "name": "polygonscan", - "url": "https://mumbai.polygonscan.com", - "standard": "EIP3091" - } - ], - "80002": [ - { - "name": "polygonamoy", - "url": "https://www.oklink.com/amoy", - "standard": "EIP3091" - } - ], - "80008": [ - { - "name": "Polynomial Sepolia Explorer", - "url": "https://sepolia.polynomialscan.io", - "standard": "none", - "icon": "polynomialSepolia" - } - ], - "80084": [ - { - "name": "Beratrail", - "url": "https://bartio.beratrail.io", - "icon": "berachain", - "standard": "none" - } - ], - "80085": [ - { - "name": "Beratrail", - "url": "https://artio.beratrail.io", - "icon": "berachain", - "standard": "none" - } - ], - "80096": [ - { - "name": "blockscout", - "url": "https://hizoco.net:38443", - "standard": "none" - } - ], - "81041": [ - { - "name": "nordek", - "url": "https://nordekscan.com", - "standard": "EIP3091" - } - ], - "81457": [ - { - "name": "Blastscan", - "url": "https://blastscan.io", - "icon": "blast", - "standard": "EIP3091" - }, - { - "name": "Blast Explorer", - "url": "https://blastexplorer.io", - "icon": "blast", - "standard": "EIP3091" - } - ], - "81720": [ - { - "name": "Quantum Scan Mainnet", - "url": "https://quantumscan.org", - "standard": "EIP3091" - } - ], - "82459": [ - { - "name": "SLN Testnet Explorer", - "url": "https://explorer.test.smartlayer.network", - "standard": "EIP3091" - } - ], - "83144": [ - { - "name": "Blockscout", - "url": "https://explorer.testnet.xprotocol.org", - "standard": "EIP3091" - } - ], - "83872": [ - { - "name": "Zedscan", - "url": "http://zedscan.net", - "standard": "EIP3091" - } - ], - "84531": [ - { - "name": "basescan", - "url": "https://goerli.basescan.org", - "standard": "none" - }, - { - "name": "basescout", - "url": "https://base-goerli.blockscout.com", - "icon": "blockscout", - "standard": "EIP3091" - }, - { - "name": "dexguru", - "url": "https://base-goerli.dex.guru", - "icon": "dexguru", - "standard": "EIP3091" - } - ], - "84532": [ - { - "name": "basescout", - "url": "https://base-sepolia.blockscout.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "84886": [ - { - "name": "Aerie Explorer", - "url": "https://explorer.aerielab.io", - "icon": "aerie", - "standard": "EIP3091" - } - ], - "88002": [ - { - "name": "Nautscan", - "url": "https://proteus.nautscan.com", - "standard": "EIP3091", - "icon": "nautilus" - } - ], - "88559": [ - { - "name": "inoai.live", - "url": "https://inoai.live", - "standard": "EIP3091" - } - ], - "88800": [ - { - "name": "Tracehawk", - "url": "https://explorer.zkas.zeeve.net", - "standard": "none" - } - ], - "88817": [ - { - "name": "explorer-testnet", - "url": "https://explorer-testnet.unit0.dev", - "standard": "EIP3091" - } - ], - "88819": [ - { - "name": "explorer-stagenet", - "url": "https://explorer-stagenet.unit0.dev", - "standard": "EIP3091" - } - ], - "88882": [ - { - "name": "spicy-explorer", - "url": "https://testnet.chiliscan.com", - "standard": "EIP3091" - } - ], - "88888": [ - { - "name": "chiliscan", - "url": "https://chiliscan.com", - "standard": "EIP3091" - }, - { - "name": "chilizscan", - "url": "https://scan.chiliz.com", - "standard": "EIP3091" - } - ], - "90210": [ - { - "name": "Beverly Hills explorer", - "url": "https://explorer.beverlyhills.ethdevops.io", - "standard": "none" - } - ], - "90354": [ - { - "name": "blockscout", - "url": "https://explorerl2new-camp-network-4xje7wy105.t.conduit.xyz", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "91002": [ - { - "name": "Nautscan", - "url": "https://triton.nautscan.com", - "standard": "EIP3091" - } - ], - "91120": [ - { - "name": "MetaDAP Enterprise Mainnet explorer", - "url": "https://explorer.chain.metadap.io", - "standard": "none" - } - ], - "91715": [ - { - "name": "combotrace explorer", - "url": "https://combotrace-testnet.nodereal.io", - "standard": "EIP3091" - } - ], - "92001": [ - { - "name": "Lambda EVM Explorer", - "url": "https://explorer.lambda.top", - "standard": "EIP3091", - "icon": "lambda" - } - ], - "93572": [ - { - "name": "LiquidLayer Testnet Explorer", - "url": "https://testnet-scan.liquidlayer.network", - "standard": "EIP3091" - } - ], - "93747": [ - { - "name": "StratoVM Block Explorer", - "url": "https://explorer.stratovm.io", - "standard": "none" - } - ], - "96970": [ - { - "name": "Mantis Blockscout", - "url": "https://blockscout.mantis.hexapod.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "97435": [ - { - "name": "SlingShot Test Explorer", - "url": "https://explorer-dependent-emerald-whippet-gh6kch3nen.t.conduit.xyz", - "icon": "slingshot", - "standard": "EIP3091" - } - ], - "97531": [ - { - "name": "Green Chain Explorer", - "url": "https://explorer.greenchain.app", - "standard": "EIP3091" - } - ], - "97970": [ - { - "name": "OptimusZ7 Testnet Explorer", - "url": "https://testnet.optimusz7.com", - "standard": "EIP3091" - } - ], - "99099": [ - { - "name": "eLiberty Testnet", - "url": "https://testnet.eliberty.ngo", - "standard": "EIP3091" - } - ], - "99876": [ - { - "name": "blockscout", - "url": "https://testnet.emcscan.com", - "standard": "EIP3091" - } - ], - "100001": [ - { - "name": "quarkchain-mainnet", - "url": "https://mainnet.quarkchain.io/0", - "standard": "EIP3091" - } - ], - "100002": [ - { - "name": "quarkchain-mainnet", - "url": "https://mainnet.quarkchain.io/1", - "standard": "EIP3091" - } - ], - "100003": [ - { - "name": "quarkchain-mainnet", - "url": "https://mainnet.quarkchain.io/2", - "standard": "EIP3091" - } - ], - "100004": [ - { - "name": "quarkchain-mainnet", - "url": "https://mainnet.quarkchain.io/3", - "standard": "EIP3091" - } - ], - "100005": [ - { - "name": "quarkchain-mainnet", - "url": "https://mainnet.quarkchain.io/4", - "standard": "EIP3091" - } - ], - "100006": [ - { - "name": "quarkchain-mainnet", - "url": "https://mainnet.quarkchain.io/5", - "standard": "EIP3091" - } - ], - "100007": [ - { - "name": "quarkchain-mainnet", - "url": "https://mainnet.quarkchain.io/6", - "standard": "EIP3091" - } - ], - "100008": [ - { - "name": "quarkchain-mainnet", - "url": "https://mainnet.quarkchain.io/7", - "standard": "EIP3091" - } - ], - "100009": [ - { - "name": "VeChain Stats", - "url": "https://vechainstats.com", - "standard": "none" - }, - { - "name": "VeChain Explorer", - "url": "https://explore.vechain.org", - "standard": "none" - } - ], - "100010": [ - { - "name": "VeChain Explorer", - "url": "https://explore-testnet.vechain.org", - "standard": "none" - } - ], - "101010": [ - { - "name": "blockscout", - "url": "https://stability.blockscout.com", - "standard": "EIP3091" - } - ], - "102031": [ - { - "name": "blockscout", - "url": "https://creditcoin-testnet.blockscout.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "103090": [ - { - "name": "blockscout", - "url": "https://scan.crystaleum.org", - "icon": "crystal", - "standard": "EIP3091" - } - ], - "103454": [ - { - "name": "Masa Testnet Explorer", - "url": "https://subnets-test.avax.network/masatestnet", - "standard": "EIP3091" - } - ], - "104566": [ - { - "name": "KaspaClassic Explorer", - "url": "https://explorer.kaspaclassic.world", - "standard": "none" - } - ], - "105105": [ - { - "name": "Stratis Explorer", - "url": "https://explorer.stratisevm.com", - "standard": "EIP3091" - } - ], - "108801": [ - { - "name": "BROChain Explorer", - "url": "https://explorer.brochain.org", - "standard": "EIP3091" - } - ], - "110001": [ - { - "name": "quarkchain-devnet", - "url": "https://devnet.quarkchain.io/0", - "standard": "EIP3091" - } - ], - "110002": [ - { - "name": "quarkchain-devnet", - "url": "https://devnet.quarkchain.io/1", - "standard": "EIP3091" - } - ], - "110003": [ - { - "name": "quarkchain-devnet", - "url": "https://devnet.quarkchain.io/2", - "standard": "EIP3091" - } - ], - "110004": [ - { - "name": "quarkchain-devnet", - "url": "https://devnet.quarkchain.io/3", - "standard": "EIP3091" - } - ], - "110005": [ - { - "name": "quarkchain-devnet", - "url": "https://devnet.quarkchain.io/4", - "standard": "EIP3091" - } - ], - "110006": [ - { - "name": "quarkchain-devnet", - "url": "https://devnet.quarkchain.io/5", - "standard": "EIP3091" - } - ], - "110007": [ - { - "name": "quarkchain-devnet", - "url": "https://devnet.quarkchain.io/6", - "standard": "EIP3091" - } - ], - "110008": [ - { - "name": "quarkchain-devnet", - "url": "https://devnet.quarkchain.io/7", - "standard": "EIP3091" - } - ], - "111000": [ - { - "name": "Siberium Testnet Explorer - blockscout", - "url": "https://explorer.test.siberium.net", - "icon": "siberium", - "standard": "EIP3091" - } - ], - "111111": [ - { - "name": "Siberium Mainnet Explorer - blockscout - 1", - "url": "https://explorer.main.siberium.net", - "icon": "siberium", - "standard": "EIP3091" - }, - { - "name": "Siberium Mainnet Explorer - blockscout - 2", - "url": "https://explorer.main.siberium.net.ru", - "icon": "siberium", - "standard": "EIP3091" - } - ], - "111188": [ - { - "name": "blockscout", - "url": "https://explorer.re.al", - "icon": "real", - "standard": "EIP3091" - } - ], - "112358": [ - { - "name": "blockscout", - "url": "https://explorer.metachain.one", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "119139": [ - { - "name": "MetaDAP Enterprise Testnet explorer", - "url": "https://explorer.testnet.chain.metadap.io", - "standard": "none" - } - ], - "123321": [ - { - "name": "Gemchain Scan", - "url": "https://scan.gemchain.org", - "standard": "EIP3091" - } - ], - "123456": [ - { - "name": "ADIL Devnet Explorer", - "url": "https://devnet.adilchain-scan.io", - "standard": "EIP3091" - } - ], - "128123": [ - { - "name": "Etherlink Testnet Explorer", - "url": "https://testnet-explorer.etherlink.com", - "standard": "EIP3091" - } - ], - "131419": [ - { - "name": "etndscan", - "url": "https://scan.etnd.pro", - "icon": "ETND", - "standard": "none" - } - ], - "132902": [ - { - "name": "Form Testnet explorer", - "url": "https://testnet-explorer.form.network", - "standard": "EIP3091" - } - ], - "141319": [ - { - "name": "etherscan", - "url": "http://testnet-api.magape.io:81", - "icon": "magape", - "standard": "EIP3091" - } - ], - "142857": [ - { - "name": "ICPlaza", - "url": "https://browsemainnet.ic-plaza.org/index", - "standard": "none" - } - ], - "165279": [ - { - "name": "Eclat Mainnet Explorer", - "url": "https://eclatscan.com", - "standard": "EIP3091" - } - ], - "167000": [ - { - "name": "etherscan", - "url": "https://taikoscan.io", - "standard": "EIP3091" - } - ], - "167008": [ - { - "name": "blockscout", - "url": "https://explorer.katla.taiko.xyz", - "standard": "EIP3091" - } - ], - "167009": [ - { - "name": "blockscout", - "url": "https://blockscoutapi.hekla.taiko.xyz", - "standard": "EIP3091" - }, - { - "name": "routescan", - "url": "https://hekla.taikoscan.network", - "standard": "EIP3091" - } - ], - "175177": [ - { - "name": "Lit Chronicle Explorer", - "url": "https://chain.litprotocol.com", - "icon": "lit", - "standard": "EIP3091" - } - ], - "175188": [ - { - "name": "Lit Chronicle Yellowstone Explorer", - "url": "https://yellowstone-explorer.litprotocol.com", - "icon": "lit", - "standard": "EIP3091" - } - ], - "188710": [ - { - "name": "Bitica DPOS Blockchain Explorer", - "url": "https://biticablockchain.com", - "standard": "none" - } - ], - "188881": [ - { - "name": "CondorScan", - "url": "https://explorer.condor.systems", - "standard": "none" - } - ], - "199991": [ - { - "name": "MAZZE Testnet Explorer", - "url": "https://mazzescan.io", - "standard": "none" - } - ], - "200101": [ - { - "name": "Blockscout", - "url": "https://explorer-devnet-cardano-evm.c1.milkomeda.com", - "standard": "none" - } - ], - "200202": [ - { - "name": "Blockscout", - "url": "https://explorer-devnet-algorand-rollup.a1.milkomeda.com", - "standard": "none" - } - ], - "200810": [ - { - "name": "bitlayer testnet scan", - "url": "https://testnet.btrscan.com", - "standard": "EIP3091" - } - ], - "200901": [ - { - "name": "bitlayer mainnet scan", - "url": "https://www.btrscan.com", - "standard": "EIP3091" - } - ], - "201018": [ - { - "name": "alaya explorer", - "url": "https://scan.alaya.network", - "standard": "none" - } - ], - "201030": [ - { - "name": "alaya explorer", - "url": "https://devnetscan.alaya.network", - "standard": "none" - } - ], - "201804": [ - { - "name": "Mythical Chain Explorer", - "url": "https://explorer.mythicalgames.com", - "icon": "mythical", - "standard": "EIP3091" - } - ], - "202020": [ - { - "name": "DSC Explorer Testnet", - "url": "https://testnet.explorer.decimalchain.com", - "icon": "dsc", - "standard": "EIP3091" - } - ], - "202212": [ - { - "name": "Blockscout", - "url": "https://explorer.x1-devnet.xen.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "202401": [ - { - "name": "YMTECH-BESU Chainlens", - "url": "http://39.119.118.198", - "standard": "none" - } - ], - "202624": [ - { - "name": "Jellie Blockchain Explorer", - "url": "https://jellie.twala.io", - "standard": "EIP3091", - "icon": "twala" - } - ], - "204005": [ - { - "name": "Blockscout", - "url": "https://explorer.x1-testnet.xen.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "205205": [ - { - "name": "Auroria Testnet Explorer", - "url": "https://auroria.explorer.stratisevm.com", - "standard": "EIP3091" - } - ], - "210425": [ - { - "name": "PlatON explorer", - "url": "https://scan.platon.network", - "standard": "none" - } - ], - "220315": [ - { - "name": "explorer masnet", - "url": "https://explorer.masnet.ai", - "standard": "EIP3091" - } - ], - "221230": [ - { - "name": "Reapchain Dashboard", - "url": "https://dashboard.reapchain.org", - "icon": "reapchain", - "standard": "none" - } - ], - "221231": [ - { - "name": "Reapchain Testnet Dashboard", - "url": "https://test-dashboard.reapchain.org", - "icon": "reapchain", - "standard": "none" - } - ], - "222222": [ - { - "name": "blockscout", - "url": "https://explorer.evm.hydration.cloud", - "standard": "EIP3091" - } - ], - "222555": [ - { - "name": "DeepL Mainnet Explorer", - "url": "https://scan.deeplnetwork.org", - "icon": "deepl", - "standard": "EIP3091" - } - ], - "222666": [ - { - "name": "DeepL Testnet Explorer", - "url": "https://testnet-scan.deeplnetwork.org", - "icon": "deepl", - "standard": "EIP3091" - } - ], - "224168": [ - { - "name": "Taf ECO Chain Mainnet", - "url": "https://ecoscan.tafchain.com", - "standard": "EIP3091" - } - ], - "224422": [ - { - "name": "CONET Scan", - "url": "https://scan.conet.network", - "standard": "EIP3091" - } - ], - "224433": [ - { - "name": "CONET Holesky Scan", - "url": "https://scan.conet.network", - "standard": "EIP3091" - } - ], - "229772": [ - { - "name": "blockscout", - "url": "https://testnet.abyssprotocol.ai", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "230315": [ - { - "name": "HashKey Chain Testnet Explorer", - "url": "https://testnet.hashkeyscan.io", - "standard": "none" - } - ], - "240515": [ - { - "name": "Blockscout", - "url": "https://testnet-scan.orangechain.xyz", - "icon": "orange", - "standard": "EIP3091" - } - ], - "247253": [ - { - "name": "saakuru-explorer-testnet", - "url": "https://explorer-testnet.saakuru.network", - "standard": "EIP3091" - } - ], - "256256": [ - { - "name": "Mainnet Scan", - "url": "https://mainnet.scan.caduceus.foundation", - "standard": "none" - } - ], - "262371": [ - { - "name": "Eclat Testnet Explorer", - "url": "https://testnet-explorer.eclatscan.com", - "standard": "EIP3091" - } - ], - "271271": [ - { - "name": "EgonCoin Testnet", - "url": "https://testnet.egonscan.com", - "standard": "EIP3091" - } - ], - "282828": [ - { - "name": "zillscout", - "url": "https://sepolia.zillnet.io", - "icon": "zillion", - "standard": "EIP3091" - } - ], - "292003": [ - { - "name": "Cipherscan Testnet Explorer", - "icon": "cipherscan", - "url": "https://cipherscan.net", - "standard": "EIP3091" - } - ], - "309075": [ - { - "name": "One World Chain Mainnet Explorer", - "url": "https://mainnet.oneworldchain.org", - "standard": "EIP3091" - } - ], - "313313": [ - { - "name": "Testnet Scan", - "url": "https://explorer.saharaa.info", - "standard": "EIP3091" - } - ], - "314159": [ - { - "name": "Filscan - Calibration", - "url": "https://calibration.filscan.io", - "standard": "none" - }, - { - "name": "Filscout - Calibration", - "url": "https://calibration.filscout.com/en", - "standard": "none" - }, - { - "name": "Filfox - Calibration", - "url": "https://calibration.filfox.info", - "standard": "none" - }, - { - "name": "Glif Explorer - Calibration", - "url": "https://explorer.glif.io/?network=calibration", - "standard": "none" - }, - { - "name": "Beryx", - "url": "https://beryx.zondax.ch", - "standard": "none" - } - ], - "322202": [ - { - "name": "Parex Mainnet Explorer", - "url": "https://scan.parex.network", - "icon": "parexmain", - "standard": "EIP3091" - } - ], - "323213": [ - { - "name": "Bloom Genesis Testnet", - "url": "https://testnet.bloomgenesis.com", - "standard": "EIP3091" - } - ], - "327126": [ - { - "name": "blockscout", - "url": "https://explorer.wabaworld.com", - "standard": "none" - } - ], - "328527": [ - { - "name": "Nal Network Explorer", - "url": "https://scan.nal.network", - "standard": "EIP3091" - } - ], - "330844": [ - { - "name": "TTcoin Smart Chain Explorer", - "url": "https://tscscan.com", - "standard": "EIP3091", - "icon": "tscscan" - } - ], - "333313": [ - { - "name": "Bloom Genesis Mainnet", - "url": "https://explorer.bloomgenesis.com", - "standard": "EIP3091" - } - ], - "333331": [ - { - "name": "avescan", - "url": "https://testnet.avescoin.io", - "icon": "avescan", - "standard": "EIP3091" - } - ], - "333333": [ - { - "name": "Nativ3 Test Explorer", - "url": "https://scantest.nativ3.network", - "standard": "EIP3091" - } - ], - "333666": [ - { - "name": "blockscout", - "url": "https://testnet.oonescan.com", - "standard": "none" - } - ], - "333777": [ - { - "name": "blockscout", - "url": "https://dev.oonescan.com", - "standard": "none" - } - ], - "336655": [ - { - "name": "UPchain Testnet Explorer", - "url": "https://explorer-testnet.uniport.network", - "icon": "up", - "standard": "EIP3091" - } - ], - "336666": [ - { - "name": "UPchain Mainnet Explorer", - "url": "https://explorer.uniport.network", - "icon": "up", - "standard": "EIP3091" - } - ], - "355110": [ - { - "name": "Bitfinity Mainnet Block Explorer", - "url": "https://explorer.mainnet.bitfinity.network", - "icon": "bitfinity", - "standard": "EIP3091" - } - ], - "355113": [ - { - "name": "Bitfinity Testnet Block Explorer", - "url": "https://explorer.testnet.bitfinity.network", - "icon": "bitfinity", - "standard": "EIP3091" - }, - { - "name": "Bitfinity Testnet Block Explorer", - "url": "https://bitfinity-test.dex.guru", - "icon": "dexguru", - "standard": "EIP3091" - } - ], - "360890": [ - { - "name": "LAVITA Mainnet Explorer", - "url": "https://tsub360890-explorer.thetatoken.org", - "icon": "lavita", - "standard": "EIP3091" - } - ], - "363636": [ - { - "name": "Digit Soul Explorer", - "url": "https://dgs-exp.digitsoul.co.th", - "standard": "EIP3091" - } - ], - "373737": [ - { - "name": "HAP EVM Explorer (Blockscout)", - "url": "https://blockscout-test.hap.land", - "standard": "none", - "icon": "hap" - } - ], - "381931": [ - { - "name": "metalscan", - "url": "https://metalscan.io", - "standard": "EIP3091" - } - ], - "381932": [ - { - "name": "metalscan", - "url": "https://tahoe.metalscan.io", - "standard": "EIP3091" - } - ], - "404040": [ - { - "name": "Tipboxcoin", - "url": "https://tipboxcoin.net", - "standard": "EIP3091" - } - ], - "413413": [ - { - "name": "aiescan-testnet", - "icon": "aie", - "url": "https://testnet.aiescan.io", - "standard": "none" - } - ], - "420420": [ - { - "name": "blockscout", - "url": "https://mainnet-explorer.kekchain.com", - "icon": "kek", - "standard": "EIP3091" - } - ], - "420666": [ - { - "name": "blockscout", - "url": "https://testnet-explorer.kekchain.com", - "icon": "kek", - "standard": "EIP3091" - } - ], - "420692": [ - { - "name": "Alterium L2 Testnet Explorer", - "url": "https://l2-testnet.altscan.org", - "standard": "EIP3091" - } - ], - "421611": [ - { - "name": "arbiscan-testnet", - "url": "https://testnet.arbiscan.io", - "standard": "EIP3091" - }, - { - "name": "arbitrum-rinkeby", - "url": "https://rinkeby-explorer.arbitrum.io", - "standard": "EIP3091" - } - ], - "421613": [ - { - "name": "Arbitrum Goerli Arbiscan", - "url": "https://goerli.arbiscan.io", - "standard": "EIP3091" - } - ], - "421614": [ - { - "name": "Arbitrum Sepolia Rollup Testnet Explorer", - "url": "https://sepolia-explorer.arbitrum.io", - "standard": "EIP3091" - } - ], - "424242": [ - { - "name": "blockscout", - "url": "https://testnet.ftnscan.com", - "standard": "none" - } - ], - "432201": [ - { - "name": "Avalanche Subnet Testnet Explorer", - "url": "https://subnets-test.avax.network/dexalot", - "standard": "EIP3091" - } - ], - "432204": [ - { - "name": "Avalanche Subnet Explorer", - "url": "https://subnets.avax.network/dexalot", - "standard": "EIP3091" - } - ], - "444444": [ - { - "name": "Syndr L3 Sepolia Testnet Explorer", - "url": "https://sepolia-explorer.syndr.com", - "standard": "EIP3091" - } - ], - "444900": [ - { - "name": "weelink-testnet", - "url": "https://weelink.cloud/#/blockView/overview", - "standard": "none" - } - ], - "473861": [ - { - "name": "ultraproscan", - "url": "https://ultraproscan.io", - "icon": "ultrapro", - "standard": "EIP3091" - } - ], - "474142": [ - { - "name": "SIDE SCAN", - "url": "https://sidescan.luniverse.io/1641349324562974539", - "standard": "none" - } - ], - "486487": [ - { - "name": "Gobbl Testnet Explorer", - "url": "https://explorer.gobbl.io", - "standard": "EIP3091" - } - ], - "490000": [ - { - "name": "astral", - "url": "https://nova.subspace.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "504441": [ - { - "name": "Playdapp Explorer", - "url": "https://subnets.avax.network/playdappne", - "standard": "EIP3091" - } - ], - "512512": [ - { - "name": "Galaxy Scan", - "url": "https://galaxy.scan.caduceus.foundation", - "standard": "none" - } - ], - "513100": [ - { - "name": "DisChain", - "url": "https://www.oklink.com/dis", - "standard": "EIP3091" - } - ], - "526916": [ - { - "name": "DoCoin Community Chain Explorer", - "url": "https://explorer.docoin.shop", - "standard": "EIP3091" - } - ], - "534351": [ - { - "name": "Scroll Sepolia Etherscan", - "url": "https://sepolia.scrollscan.com", - "standard": "EIP3091" - } - ], - "534352": [ - { - "name": "Scrollscan", - "url": "https://scrollscan.com", - "standard": "EIP3091" - } - ], - "534849": [ - { - "name": "shinascan", - "url": "https://shinascan.shinarium.org", - "standard": "EIP3091" - } - ], - "535037": [ - { - "name": "bescscan", - "url": "https://Bescscan.io", - "standard": "EIP3091" - } - ], - "552981": [ - { - "name": "One World Chain Testnet Explorer", - "url": "https://testnet.oneworldchain.org", - "standard": "EIP3091" - } - ], - "555555": [ - { - "name": "Pentagon Testnet Explorer", - "url": "https://explorer-testnet.pentagon.games", - "icon": "pentagon", - "standard": "EIP3091" - } - ], - "555666": [ - { - "name": "ECLIPSE Explorer", - "url": "https://subnets-test.avax.network/eclipsecha", - "standard": "EIP3091" - } - ], - "622277": [ - { - "name": "hypra", - "url": "https://explorer.hypra.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "622463": [ - { - "name": "Atlas Testnet Scan", - "url": "https://explorer.testnet.atl.network", - "icon": "atlas", - "standard": "EIP3091" - } - ], - "641230": [ - { - "name": "brnkscan", - "url": "https://brnkscan.bearnetwork.net", - "standard": "EIP3091" - } - ], - "651940": [ - { - "name": "Alltra SmartChain Explorer", - "url": "https://alltra.global", - "standard": "EIP3091" - } - ], - "656476": [ - { - "name": "Open Campus Codex", - "url": "https://opencampus-codex.blockscout.com", - "icon": "open-campus-codex", - "standard": "none" - } - ], - "660279": [ - { - "name": "Blockscout", - "url": "https://explorer.xai-chain.net", - "standard": "EIP3091" - } - ], - "666888": [ - { - "name": "Hela Official Runtime Testnet Explorer", - "url": "https://testnet-blockexplorer.helachain.com", - "standard": "EIP3091" - } - ], - "686868": [ - { - "name": "Won Explorer", - "url": "https://scan.wonnetwork.org", - "standard": "EIP3091" - } - ], - "696969": [ - { - "name": "Galadriel Explorer", - "url": "https://explorer.galadriel.com", - "standard": "none" - } - ], - "710420": [ - { - "name": "TILTYARD Explorer", - "url": "https://subnets.avax.network/tiltyard", - "standard": "EIP3091" - } - ], - "713715": [ - { - "name": "Seistream", - "url": "https://seistream.app", - "standard": "none" - }, - { - "name": "Seitrace", - "url": "https://seitrace.com", - "standard": "EIP3091" - } - ], - "721529": [ - { - "name": "Eramscan", - "url": "https://eramscan.com", - "standard": "EIP3091" - } - ], - "743111": [ - { - "name": "blockscout", - "url": "https://testnet.explorer.hemi.xyz", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "751230": [ - { - "name": "brnktestscan", - "url": "https://brnktest-scan.bearnetwork.net", - "standard": "EIP3091" - } - ], - "752024": [ - { - "name": "Tracehawk", - "url": "https://explorer.zkevm.ternoa.network", - "standard": "none" - } - ], - "761412": [ - { - "name": "Miexs Smartchain Explorer", - "url": "https://miexs.com", - "standard": "EIP3091" - } - ], - "764984": [ - { - "name": "Lamina1 Test Explorer", - "url": "https://subnets-test.avax.network/lamina1tes", - "standard": "EIP3091" - } - ], - "767368": [ - { - "name": "Lamina1 Identity Testnet Explorer", - "url": "https://subnets-test.avax.network/lamina1id", - "standard": "EIP3091" - } - ], - "776877": [ - { - "name": "Tanssi Explorer", - "url": "https://tanssi-evmexplorer.netlify.app/?rpcUrl=https://fraa-dancebox-3035-rpc.a.dancebox.tanssi.network", - "standard": "none" - } - ], - "800001": [ - { - "name": "blockscout", - "url": "https://explorer.octa.space", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "808080": [ - { - "name": "BIZ Smart Chain Testnet Explorer", - "url": "https://testnet.btscan.io", - "standard": "EIP3091" - } - ], - "808813": [ - { - "name": "bobscout", - "url": "https://bob-sepolia.explorer.gobob.xyz", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "810180": [ - { - "name": "zkLink Nova Block Explorer", - "url": "https://explorer.zklink.io", - "icon": "zklink-nova", - "standard": "EIP3091" - } - ], - "810181": [ - { - "name": "zkLink Nova Block Explorer", - "url": "https://sepolia.explorer.zklink.io", - "icon": "zklink-nova", - "standard": "EIP3091" - } - ], - "810182": [ - { - "name": "zkLink Nova Block Explorer", - "url": "https://goerli.explorer.zklink.io", - "icon": "zklink-nova", - "standard": "EIP3091" - } - ], - "820522": [ - { - "name": "tscscan", - "url": "https://testnet.tscscan.io", - "icon": "netxscan", - "standard": "none" - } - ], - "827431": [ - { - "name": "CURVE Mainnet", - "url": "https://curvescan.io", - "standard": "EIP3091" - } - ], - "839320": [ - { - "name": "Primal Network Testnet", - "url": "https://testnet-explorer.prmscan.org", - "standard": "EIP3091" - } - ], - "840000": [ - { - "name": "Tracehawk", - "url": "https://explorer.runevm.io", - "standard": "none" - } - ], - "855456": [ - { - "name": "Dodao Explorer", - "url": "https://tanssi-evmexplorer.netlify.app/?rpcUrl=https://fraa-dancebox-3041-rpc.a.dancebox.tanssi.network", - "icon": "dodao", - "standard": "EIP3091" - } - ], - "879151": [ - { - "name": "BlocX Mainnet Explorer", - "url": "https://explorer.blxscan.com", - "icon": "blx", - "standard": "none" - } - ], - "888882": [ - { - "name": "REXX Mainnet Explorer", - "url": "https://rexxnetwork.com", - "standard": "EIP3091" - } - ], - "888888": [ - { - "name": "Visionscan", - "url": "https://www.visionscan.org", - "standard": "EIP3091" - } - ], - "900000": [ - { - "name": "Posichain Explorer", - "url": "https://explorer.posichain.org", - "standard": "EIP3091" - } - ], - "910000": [ - { - "name": "Posichain Explorer Testnet", - "url": "https://explorer-testnet.posichain.org", - "standard": "EIP3091" - } - ], - "912559": [ - { - "name": "Astria EVM Dusknet Explorer", - "url": "https://explorer.evm.dusk-3.devnet.astria.org", - "standard": "EIP3091" - } - ], - "920000": [ - { - "name": "Posichain Explorer Devnet", - "url": "https://explorer-devnet.posichain.org", - "standard": "EIP3091" - } - ], - "920001": [ - { - "name": "Posichain Explorer Devnet", - "url": "https://explorer-devnet.posichain.org", - "standard": "EIP3091" - } - ], - "923018": [ - { - "name": "fncy scan testnet", - "url": "https://fncyscan-testnet.fncy.world", - "icon": "fncy", - "standard": "EIP3091" - } - ], - "955081": [ - { - "name": "JONO12 Explorer", - "url": "https://subnets-test.avax.network/jono12", - "standard": "EIP3091" - } - ], - "955305": [ - { - "name": "blockscout", - "url": "https://explorer.eluv.io", - "standard": "EIP3091" - } - ], - "978657": [ - { - "name": "treasurescan", - "url": "https://testnet.treasurescan.io", - "icon": "treasure", - "standard": "EIP3091" - } - ], - "984122": [ - { - "name": "blockscout", - "url": "https://explorer.forma.art", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "984123": [ - { - "name": "blockscout", - "url": "https://explorer.sketchpad-1.forma.art", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "988207": [ - { - "name": "Ecrox Chain Explorer", - "url": "https://ecroxscan.com", - "standard": "EIP3091" - } - ], - "998899": [ - { - "name": "supernet-testnet-explorer", - "url": "https://testnet-explorer.supernet.chaingames.io", - "standard": "EIP3091" - } - ], - "999999": [ - { - "name": "AMCAmChain explorer", - "url": "https://explorer.amchain.net", - "standard": "none" - } - ], - "1100789": [ - { - "name": "NetMind Testnet Explorer", - "url": "https://testbrower.protago-dev.com", - "icon": "netmind", - "standard": "EIP3091" - } - ], - "1127469": [ - { - "name": "TILTYARD Explorer", - "url": "http://testnet-explorer.tiltyard.gg", - "standard": "EIP3091" - } - ], - "1234567": [ - { - "name": "Etherscan", - "url": "https://etherscan.io", - "standard": "none", - "icon": "sharecle" - } - ], - "1261120": [ - { - "name": "Blockscout zKatana chain explorer", - "url": "https://zkatana.blockscout.com", - "standard": "EIP3091" - }, - { - "name": "Startale zKatana chain explorer", - "url": "https://zkatana.explorer.startale.com", - "standard": "EIP3091" - } - ], - "1313114": [ - { - "name": "blockscout", - "url": "https://explorer.ethoprotocol.com", - "standard": "none" - } - ], - "1337702": [ - { - "name": "kintsugi explorer", - "url": "https://explorer.kintsugi.themerge.dev", - "standard": "EIP3091" - } - ], - "1337802": [ - { - "name": "Kiln Explorer", - "url": "https://explorer.kiln.themerge.dev", - "icon": "ethereum", - "standard": "EIP3091" - } - ], - "1337803": [ - { - "name": "Zhejiang Explorer", - "url": "https://zhejiang.beaconcha.in", - "icon": "ethereum", - "standard": "EIP3091" - } - ], - "1398243": [ - { - "name": "Automata Testnet Explorer", - "url": "https://automata-testnet-explorer.alt.technology", - "standard": "EIP3091" - } - ], - "1612127": [ - { - "name": "PlayFi Block Explorer", - "url": "https://albireo-explorer.playfi.ai", - "standard": "EIP3091" - } - ], - "1637450": [ - { - "name": "Xterio Testnet Explorer", - "url": "https://testnet.xterscan.io", - "standard": "EIP3091" - } - ], - "2021398": [ - { - "name": "DeBank Chain Explorer", - "url": "https://explorer.testnet.debank.com", - "standard": "EIP3091" - } - ], - "2099156": [ - { - "name": "piscan", - "url": "https://piscan.plian.org/pchain", - "standard": "EIP3091" - } - ], - "2206132": [ - { - "name": "PlatON explorer", - "url": "https://devnet2scan.platon.network", - "standard": "none" - } - ], - "2702128": [ - { - "name": "Xterio Chain Explorer", - "url": "https://eth.xterscan.io", - "standard": "EIP3091" - } - ], - "3397901": [ - { - "name": "Funki Sepolia Sandbox Explorer", - "url": "https://sepolia-sandbox.funkichain.com", - "standard": "none" - } - ], - "3441005": [ - { - "name": "manta-testnet Explorer", - "url": "https://manta-testnet.calderaexplorer.xyz", - "standard": "EIP3091" - } - ], - "3441006": [ - { - "name": "manta-testnet Explorer", - "url": "https://pacific-explorer.sepolia-testnet.manta.network", - "standard": "EIP3091" - } - ], - "4000003": [ - { - "name": "blockscout", - "url": "https://zero-explorer.alt.technology", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "4444444": [ - { - "name": "altar testnet explorer", - "url": "https://altar-explorer.ceremonies.ai", - "standard": "none" - } - ], - "4457845": [ - { - "name": "ZERO Testnet Explorer", - "url": "https://explorer.zero.network", - "standard": "EIP3091" - } - ], - "5112023": [ - { - "name": "NumBlock Explorer", - "url": "https://mainnet.numblock.org", - "standard": "none", - "icon": "NumBlock" - } - ], - "5167003": [ - { - "name": "MXC Wannsee zkEVM Testnet", - "url": "https://wannsee-explorer.mxc.com", - "standard": "EIP3091" - } - ], - "5167004": [ - { - "name": "Moonchain Geneva Testnet", - "url": "https://geneva-explorer.moonchain.com", - "standard": "EIP3091" - } - ], - "5201420": [ - { - "name": "blockscout", - "url": "https://blockexplorer.thesecurityteam.rocks", - "icon": "electroneum", - "standard": "EIP3091" - } - ], - "5318008": [ - { - "name": "reactscan", - "url": "https://kopli.reactscan.net", - "standard": "none" - } - ], - "5555555": [ - { - "name": "Imversed EVM explorer (Blockscout)", - "url": "https://txe.imversed.network", - "icon": "imversed", - "standard": "EIP3091" - }, - { - "name": "Imversed Cosmos Explorer (Big Dipper)", - "url": "https://tex-c.imversed.com", - "icon": "imversed", - "standard": "none" - } - ], - "5555558": [ - { - "name": "Imversed EVM Explorer (Blockscout)", - "url": "https://txe-test.imversed.network", - "icon": "imversed", - "standard": "EIP3091" - }, - { - "name": "Imversed Cosmos Explorer (Big Dipper)", - "url": "https://tex-t.imversed.com", - "icon": "imversed", - "standard": "none" - } - ], - "6038361": [ - { - "name": "Blockscout zKyoto explorer", - "url": "https://astar-zkyoto.blockscout.com", - "standard": "EIP3091" - } - ], - "6666665": [ - { - "name": "Safe(AnWang) Explorer", - "url": "http://safe4.anwang.com", - "icon": "safe-anwang", - "standard": "EIP3091" - } - ], - "6666666": [ - { - "name": "Safe(AnWang) Testnet Explorer", - "url": "http://safe4-testnet.anwang.com", - "icon": "safe-anwang", - "standard": "EIP3091" - } - ], - "7225878": [ - { - "name": "saakuru-explorer", - "url": "https://explorer.saakuru.network", - "standard": "EIP3091" - } - ], - "7355310": [ - { - "name": "openvessel-mainnet", - "url": "https://mainnet-explorer.openvessel.io", - "standard": "none" - } - ], - "7668378": [ - { - "name": "QL1 Testnet Explorer", - "url": "https://testnet.qom.one", - "icon": "qom", - "standard": "EIP3091" - } - ], - "7777777": [ - { - "name": "Zora Network Explorer", - "url": "https://explorer.zora.energy", - "standard": "EIP3091" - } - ], - "8007736": [ - { - "name": "piscan", - "url": "https://piscan.plian.org/child_0", - "standard": "EIP3091" - } - ], - "8008135": [ - { - "name": "Fhenix Helium Explorer (Blockscout)", - "url": "https://explorer.helium.fhenix.zone", - "standard": "EIP3091" - } - ], - "8080808": [ - { - "name": "Hokum Explorer", - "url": "https://explorer.hokum.gg", - "standard": "EIP3091" - } - ], - "8794598": [ - { - "name": "HAP EVM Explorer (Blockscout)", - "url": "https://blockscout.hap.land", - "standard": "none", - "icon": "hap" - } - ], - "9322252": [ - { - "name": "blockscout", - "url": "https://xcap-mainnet.explorer.xcap.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "9322253": [ - { - "name": "blockscout", - "url": "https://xcap-milvine.explorer.xcap.network", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "9999999": [ - { - "name": "blockscout", - "url": "https://blockscout.mainnet.fluence.dev", - "standard": "EIP3091" - } - ], - "10067275": [ - { - "name": "piscan", - "url": "https://testnet.plian.org/child_test", - "standard": "EIP3091" - } - ], - "10101010": [ - { - "name": "Soverun", - "url": "https://explorer.soverun.com", - "standard": "EIP3091" - } - ], - "10241024": [ - { - "name": "AlienXChain Explorer", - "url": "https://explorer.alienxchain.io", - "standard": "EIP3091" - } - ], - "10241025": [ - { - "name": "Hal Explorer", - "url": "https://hal-explorer.alienxchain.io", - "standard": "EIP3091" - } - ], - "11145513": [ - { - "name": "blockscout", - "url": "https://blessnet-sepolia-testnet.explorer.caldera.xyz", - "icon": "bless", - "standard": "EIP3091" - } - ], - "11155111": [ - { - "name": "etherscan-sepolia", - "url": "https://sepolia.etherscan.io", - "standard": "EIP3091" - }, - { - "name": "otterscan-sepolia", - "url": "https://sepolia.otterscan.io", - "standard": "EIP3091" - } - ], - "11155420": [ - { - "name": "opscout", - "url": "https://optimism-sepolia.blockscout.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "12052024": [ - { - "name": "Tracehawk", - "url": "https://test-explorer.mementoblockchain.com", - "standard": "none" - } - ], - "12227332": [ - { - "name": "neox-scan", - "url": "https://testnet.scan.banelabs.org", - "standard": "EIP3091" - } - ], - "13068200": [ - { - "name": "coti devnet explorer", - "url": "https://explorer-devnet.coti.io", - "icon": "ethernal", - "standard": "EIP3091" - } - ], - "14288640": [ - { - "name": "anduschain explorer", - "url": "https://explorer.anduschain.io", - "icon": "daon", - "standard": "none" - } - ], - "16658437": [ - { - "name": "piscan", - "url": "https://testnet.plian.org/testnet", - "standard": "EIP3091" - } - ], - "17000920": [ - { - "name": "Lambda Chain Testnet Explorer", - "url": "https://testscan.lambda.im", - "standard": "EIP3091" - } - ], - "18071918": [ - { - "name": "FYI", - "url": "https://dym.fyi/r/mande", - "icon": "fyi", - "standard": "EIP3091" - } - ], - "19850818": [ - { - "name": "DeepBrainChain Testnet", - "url": "https://blockscout-testnet.dbcscan.io", - "icon": "dbc", - "standard": "EIP3091" - } - ], - "19880818": [ - { - "name": "DeepBrainChain Mainnet", - "url": "https://blockscout.dbcscan.io", - "icon": "dbc", - "standard": "EIP3091" - } - ], - "20180427": [ - { - "name": "blockscout", - "url": "https://stability-testnet.blockscout.com", - "standard": "EIP3091" - } - ], - "20180430": [ - { - "name": "spectrum", - "url": "https://spectrum.pub", - "standard": "none" - } - ], - "20181205": [ - { - "name": "qkiscan", - "url": "https://qkiscan.io", - "standard": "EIP3091" - } - ], - "20201022": [ - { - "name": "Pego Network Explorer", - "url": "https://scan.pego.network", - "standard": "EIP3091" - } - ], - "20230825": [ - { - "name": "Vcity Explorer", - "url": "https://scan.vcity.app", - "icon": "vcity", - "standard": "EIP3091" - } - ], - "20240324": [ - { - "name": "DeBank Chain Explorer", - "url": "https://sepolia-explorer.testnet.debank.com", - "standard": "EIP3091" - } - ], - "20240603": [ - { - "name": "DBK Chain Explorer", - "url": "https://scan.dbkchain.io", - "standard": "EIP3091" - } - ], - "20241133": [ - { - "name": "Swan Proxima Chain explorer", - "url": "https://proxima-explorer.swanchain.io", - "standard": "EIP3091" - } - ], - "20482050": [ - { - "name": "Hokum Explorer", - "url": "https://testnet-explorer.hokum.gg", - "standard": "EIP3091" - } - ], - "22052002": [ - { - "name": "Excelon explorer", - "url": "https://explorer.excelon.io", - "standard": "EIP3091" - } - ], - "27082017": [ - { - "name": "exlscan", - "url": "https://testnet-explorer.exlscan.com", - "icon": "exl", - "standard": "EIP3091" - } - ], - "27082022": [ - { - "name": "exlscan", - "url": "https://exlscan.com", - "icon": "exl", - "standard": "EIP3091" - } - ], - "28122024": [ - { - "name": "scan-testnet", - "url": "https://scanv2-testnet.ancient8.gg", - "standard": "EIP3091" - } - ], - "29032022": [ - { - "name": "FLXExplorer", - "url": "https://explorer.flaexchange.top", - "standard": "EIP3091" - } - ], - "37084624": [ - { - "name": "Blockscout", - "url": "https://lanky-ill-funny-testnet.explorer.testnet.skalenodes.com", - "standard": "EIP3091" - } - ], - "39916801": [ - { - "name": "TravelSong", - "url": "https://www.beastkingdom.io/travelsong", - "standard": "EIP3091" - } - ], - "43214913": [ - { - "name": "maistesntet", - "url": "http://174.138.9.169:3006/?network=maistesntet", - "standard": "none" - } - ], - "52164803": [ - { - "name": "blockscout", - "url": "https://blockscout.testnet.fluence.dev", - "standard": "EIP3091" - } - ], - "65010003": [ - { - "name": "autonity-blockscout", - "url": "https://bakerloo.autonity.org", - "standard": "EIP3091" - } - ], - "65100003": [ - { - "name": "autonity-blockscout", - "url": "https://piccadilly.autonity.org", - "standard": "EIP3091" - } - ], - "68840142": [ - { - "name": "Frame Testnet Explorer", - "url": "https://explorer.testnet.frame.xyz", - "standard": "EIP3091" - } - ], - "77787778": [ - { - "name": "blockscout", - "url": "https://test.0xhashscan.io", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "79479957": [ - { - "name": "SX Toronto L2 Explorer", - "url": "https://explorerl2.toronto.sx.technology", - "standard": "EIP3091", - "icon": "SX" - } - ], - "88888888": [ - { - "name": "teamscan", - "url": "https://teamblockchain.team", - "standard": "EIP3091" - } - ], - "94204209": [ - { - "name": "blockscout", - "url": "https://polygon-blackberry.gelatoscout.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "100000000": [ - { - "name": "ethos scan", - "url": "https://scan.ethos.cool", - "icon": "ethos", - "standard": "EIP3091" - } - ], - "111557560": [ - { - "name": "Cyber Testnet Explorer", - "url": "https://testnet.cyberscan.co", - "standard": "EIP3091" - } - ], - "123420111": [ - { - "name": "blockscout", - "url": "https://opcelestia-raspberry.gelatoscout.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "161221135": [ - { - "name": "Blockscout", - "url": "https://testnet-explorer.plumenetwork.xyz", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "168587773": [ - { - "name": "Blast Sepolia Explorer", - "url": "https://testnet.blastscan.io", - "icon": "blast", - "standard": "EIP3091" - } - ], - "192837465": [ - { - "name": "Blockscout", - "url": "https://explorer.gather.network", - "icon": "gather", - "standard": "none" - } - ], - "222000222": [ - { - "name": "explorer", - "url": "https://testnet.meldscan.io", - "icon": "meld", - "standard": "EIP3091" - }, - { - "name": "explorer", - "url": "https://subnets-test.avax.network/meld", - "icon": "meld", - "standard": "EIP3091" - } - ], - "245022926": [ - { - "name": "neonscan", - "url": "https://devnet.neonscan.org", - "standard": "EIP3091" - }, - { - "name": "blockscout", - "url": "https://neon-devnet.blockscout.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "245022934": [ - { - "name": "neonscan", - "url": "https://neonscan.org", - "standard": "EIP3091" - }, - { - "name": "native", - "url": "https://neon.blockscout.com", - "standard": "EIP3091" - } - ], - "278611351": [ - { - "name": "turbulent-unique-scheat", - "url": "https://turbulent-unique-scheat.explorer.mainnet.skalenodes.com", - "standard": "EIP3091" - } - ], - "311752642": [ - { - "name": "OneLedger Block Explorer", - "url": "https://mainnet-explorer.oneledger.network", - "standard": "EIP3091" - } - ], - "328527624": [ - { - "name": "Nal Sepolia Testnet Network Explorer", - "url": "https://testnet-scan.nal.network", - "standard": "EIP3091" - } - ], - "333000333": [ - { - "name": "explorer", - "url": "https://meldscan.io", - "icon": "meld", - "standard": "EIP3091" - }, - { - "name": "explorer", - "url": "https://subnets.avax.network/meld", - "icon": "meld", - "standard": "EIP3091" - } - ], - "356256156": [ - { - "name": "Blockscout", - "url": "https://testnet-explorer.gather.network", - "icon": "gather", - "standard": "none" - } - ], - "476462898": [ - { - "name": "blockscout", - "url": "https://skopje-explorer.gptprotocol.io", - "standard": "EIP3091", - "icon": "blockscout" - } - ], - "486217935": [ - { - "name": "Blockscout", - "url": "https://devnet-explorer.gather.network", - "standard": "none" - } - ], - "531050104": [ - { - "name": "Sophon Testnet", - "url": "https://explorer.testnet.sophon.xyz", - "icon": "sophon-testnet", - "standard": "none" - } - ], - "888888888": [ - { - "name": "Ancient8 Explorer", - "url": "https://scan.ancient8.gg", - "standard": "EIP3091" - } - ], - "889910245": [ - { - "name": "PTCESCAN Testnet Explorer", - "url": "https://explorer-testnet.ptcscan.io", - "standard": "EIP3091" - } - ], - "889910246": [ - { - "name": "PTCESCAN Explorer", - "url": "https://ptcscan.io", - "standard": "EIP3091" - } - ], - "974399131": [ - { - "name": "Blockscout", - "url": "https://giant-half-dual-testnet.explorer.testnet.skalenodes.com", - "standard": "EIP3091" - } - ], - "999999999": [ - { - "name": "Zora Sepolia Testnet Network Explorer", - "url": "https://sepolia.explorer.zora.energy", - "standard": "EIP3091" - } - ], - "1020352220": [ - { - "name": "Blockscout", - "url": "https://aware-fake-trim-testnet.explorer.testnet.skalenodes.com", - "standard": "EIP3091" - } - ], - "1146703430": [ - { - "name": "CybEthExplorer", - "url": "http://cybeth1.cyberdeck.eu:8000", - "icon": "cyberdeck", - "standard": "none" - } - ], - "1273227453": [ - { - "name": "Blockscout", - "url": "https://wan-red-ain.explorer.mainnet.skalenodes.com", - "icon": "human", - "standard": "EIP3091" - } - ], - "1313161554": [ - { - "name": "aurorascan.dev", - "url": "https://aurorascan.dev", - "standard": "EIP3091" - } - ], - "1313161555": [ - { - "name": "aurorascan.dev", - "url": "https://testnet.aurorascan.dev", - "standard": "EIP3091" - } - ], - "1313161560": [ - { - "name": "PowerGold explorer", - "url": "https://explorer.powergold.aurora.dev", - "standard": "EIP3091" - } - ], - "1350216234": [ - { - "name": "Blockscout", - "url": "https://parallel-stormy-spica.explorer.mainnet.skalenodes.com", - "standard": "EIP3091" - } - ], - "1351057110": [ - { - "name": "Blockscout", - "url": "https://staging-fast-active-bellatrix.explorer.staging-v3.skalenodes.com", - "icon": "chaos", - "standard": "EIP3091" - } - ], - "1380012617": [ - { - "name": "rarichain-explorer", - "url": "https://mainnet.explorer.rarichain.org", - "standard": "EIP3091" - } - ], - "1380996178": [ - { - "name": "RaptorChain Explorer", - "url": "https://explorer.raptorchain.io", - "icon": "raptorchain_explorer", - "standard": "EIP3091" - } - ], - "1444673419": [ - { - "name": "Blockscout", - "url": "https://juicy-low-small-testnet.explorer.testnet.skalenodes.com", - "standard": "EIP3091" - } - ], - "1482601649": [ - { - "name": "Blockscout", - "url": "https://green-giddy-denebola.explorer.mainnet.skalenodes.com", - "standard": "EIP3091" - } - ], - "1511670449": [ - { - "name": "blockscout", - "url": "https://explorer.gptprotocol.io", - "standard": "EIP3091", - "icon": "blockscout" - } - ], - "1564830818": [ - { - "name": "Blockscout", - "url": "https://honorable-steel-rasalhague.explorer.mainnet.skalenodes.com", - "standard": "EIP3091" - } - ], - "1666600000": [ - { - "name": "Harmony Block Explorer", - "url": "https://explorer.harmony.one", - "standard": "EIP3091" - } - ], - "1666600001": [ - { - "name": "Harmony Block Explorer", - "url": "https://explorer.harmony.one/blocks/shard/1", - "standard": "none" - } - ], - "1666700000": [ - { - "name": "Harmony Testnet Block Explorer", - "url": "https://explorer.testnet.harmony.one", - "standard": "EIP3091" - } - ], - "1666700001": [ - { - "name": "Harmony Block Explorer", - "url": "https://explorer.testnet.harmony.one", - "standard": "none" - } - ], - "1802203764": [ - { - "name": "Kakarot Scan", - "url": "https://sepolia.kakarotscan.org", - "standard": "EIP3091" - }, - { - "name": "Kakarot Explorer", - "url": "https://sepolia-explorer.kakarot.org", - "standard": "EIP3091" - } - ], - "1903648807": [ - { - "name": "Gemuchain Explorer (Blockscout)", - "url": "https://gemutest-explorer.gemuchain.io", - "standard": "EIP3091" - } - ], - "1918988905": [ - { - "name": "rarichain-testnet-explorer", - "url": "https://explorer.rarichain.org", - "standard": "EIP3091" - } - ], - "2046399126": [ - { - "name": "Blockscout", - "url": "https://elated-tan-skat.explorer.mainnet.skalenodes.com", - "standard": "EIP3091" - } - ], - "4216137055": [ - { - "name": "OneLedger Block Explorer", - "url": "https://frankenstein-explorer.oneledger.network", - "standard": "EIP3091" - } - ], - "11297108109": [ - { - "name": "Chainlens", - "url": "https://palm.chainlens.com", - "standard": "EIP3091" - }, - { - "name": "Dora", - "url": "https://www.ondora.xyz/network/palm", - "standard": "none" - } - ], - "11297108099": [ - { - "name": "Chainlens", - "url": "https://testnet.palm.chainlens.com", - "standard": "EIP3091" - }, - { - "name": "Dora", - "url": "https://www.ondora.xyz/network/palm-testnet", - "standard": "none" - } - ], - "37714555429": [ - { - "name": "Blockscout", - "url": "https://testnet-explorer-v2.xai-chain.net", - "standard": "EIP3091" - } - ], - "88153591557": [ - { - "name": "blockscout", - "url": "https://arb-blueberry.gelatoscout.com", - "icon": "blockscout", - "standard": "EIP3091" - } - ], - "111222333444": [ - { - "name": "Alphabet Explorer", - "url": "https://scan.alphabetnetwork.org", - "standard": "EIP3091" - } - ], - "123420000220": [ - { - "name": "blockscout", - "url": "https://blockscout-123420000220.raas-testnet.gelato.digital", - "standard": "EIP3091" - } - ], - "197710212030": [ - { - "name": "Ntity Blockscout", - "url": "https://blockscout.ntity.io", - "icon": "ntity", - "standard": "EIP3091" - } - ], - "197710212031": [ - { - "name": "Ntity Haradev Blockscout", - "url": "https://blockscout.haradev.com", - "icon": "ntity", - "standard": "EIP3091" - } - ], - "202402181627": [ - { - "name": "gmnetwork-testnet", - "url": "https://gmnetwork-testnet-explorer.alt.technology", - "standard": "EIP3091" - } - ], - "383414847825": [ - { - "name": "zeniq-smart-chain-explorer", - "url": "https://smart.zeniq.net", - "standard": "EIP3091" - } - ], - "666301171999": [ - { - "name": "ipdcscan", - "url": "https://scan.ipdc.io", - "standard": "EIP3091" - } - ], - "2713017997578000": [ - { - "name": "dchaint scan", - "url": "https://dchaintestnet-2713017997578000-1.testnet.sagaexplorer.io", - "standard": "EIP3091" - } - ], - "2716446429837000": [ - { - "name": "dchain scan", - "url": "https://dchain-2716446429837000-1.sagaexplorer.io", - "standard": "EIP3091" - } - ] -}; -var NETWORK_CURRENCIES = { - "1": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "2": { - "name": "Expanse Network Ether", - "symbol": "EXP", - "decimals": 18 - }, - "3": { - "name": "Ropsten Ether", - "symbol": "ETH", - "decimals": 18 - }, - "4": { - "name": "Rinkeby Ether", - "symbol": "ETH", - "decimals": 18 - }, - "5": { - "name": "Goerli Ether", - "symbol": "ETH", - "decimals": 18 - }, - "7": { - "name": "ThaiChain Ether", - "symbol": "TCH", - "decimals": 18 - }, - "8": { - "name": "Ubiq Ether", - "symbol": "UBQ", - "decimals": 18 - }, - "9": { - "name": "Ubiq Testnet Ether", - "symbol": "TUBQ", - "decimals": 18 - }, - "10": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "11": { - "name": "Metadium Mainnet Ether", - "symbol": "META", - "decimals": 18 - }, - "12": { - "name": "Metadium Testnet Ether", - "symbol": "KAL", - "decimals": 18 - }, - "13": { - "name": "Staging Diodes", - "symbol": "sDIODE", - "decimals": 18 - }, - "14": { - "name": "Flare", - "symbol": "FLR", - "decimals": 18 - }, - "15": { - "name": "Diodes", - "symbol": "DIODE", - "decimals": 18 - }, - "16": { - "name": "Coston Flare", - "symbol": "CFLR", - "decimals": 18 - }, - "17": { - "name": "Thaifi Ether", - "symbol": "TFI", - "decimals": 18 - }, - "18": { - "name": "ThunderCore Testnet Token", - "symbol": "TST", - "decimals": 18 - }, - "19": { - "name": "Songbird", - "symbol": "SGB", - "decimals": 18 - }, - "20": { - "name": "Elastos", - "symbol": "ELA", - "decimals": 18 - }, - "21": { - "name": "Elastos", - "symbol": "tELA", - "decimals": 18 - }, - "22": { - "name": "Elastos", - "symbol": "ELA", - "decimals": 18 - }, - "23": { - "name": "Elastos", - "symbol": "tELA", - "decimals": 18 - }, - "24": { - "name": "KardiaChain", - "symbol": "KAI", - "decimals": 18 - }, - "25": { - "name": "Cronos", - "symbol": "CRO", - "decimals": 18 - }, - "26": { - "name": "L1 testcoin", - "symbol": "L1test", - "decimals": 18 - }, - "27": { - "name": "SHIBA INU COIN", - "symbol": "SHIB", - "decimals": 18 - }, - "29": { - "name": "L1 coin", - "symbol": "L1", - "decimals": 18 - }, - "30": { - "name": "Smart Bitcoin", - "symbol": "RBTC", - "decimals": 18 - }, - "31": { - "name": "Testnet Smart Bitcoin", - "symbol": "tRBTC", - "decimals": 18 - }, - "32": { - "name": "GoodData Testnet Ether", - "symbol": "GooD", - "decimals": 18 - }, - "33": { - "name": "GoodData Mainnet Ether", - "symbol": "GooD", - "decimals": 18 - }, - "34": { - "name": "SecureChain", - "symbol": "SCAI", - "decimals": 18 - }, - "35": { - "name": "TBWG Ether", - "symbol": "TBG", - "decimals": 18 - }, - "36": { - "name": "Dxchain", - "symbol": "DX", - "decimals": 18 - }, - "37": { - "name": "XPLA", - "symbol": "XPLA", - "decimals": 18 - }, - "38": { - "name": "Valorbit", - "symbol": "VAL", - "decimals": 18 - }, - "39": { - "name": "Unicorn Ultra", - "symbol": "U2U", - "decimals": 18 - }, - "40": { - "name": "Telos", - "symbol": "TLOS", - "decimals": 18 - }, - "41": { - "name": "Telos", - "symbol": "TLOS", - "decimals": 18 - }, - "42": { - "name": "LUKSO", - "symbol": "LYX", - "decimals": 18 - }, - "43": { - "name": "Pangolin Network Native Token", - "symbol": "PRING", - "decimals": 18 - }, - "44": { - "name": "Crab Network Native Token", - "symbol": "CRAB", - "decimals": 18 - }, - "45": { - "name": "Pangoro Network Native Token", - "symbol": "ORING", - "decimals": 18 - }, - "46": { - "name": "Darwinia Network Native Token", - "symbol": "RING", - "decimals": 18 - }, - "47": { - "name": "ACRIA", - "symbol": "ACRIA", - "decimals": 18 - }, - "48": { - "name": "Ennothem", - "symbol": "ETMP", - "decimals": 18 - }, - "49": { - "name": "Ennothem", - "symbol": "ETMP", - "decimals": 18 - }, - "50": { - "name": "XinFin", - "symbol": "XDC", - "decimals": 18 - }, - "51": { - "name": "XinFin", - "symbol": "TXDC", - "decimals": 18 - }, - "52": { - "name": "CoinEx Chain Native Token", - "symbol": "cet", - "decimals": 18 - }, - "53": { - "name": "CoinEx Chain Test Native Token", - "symbol": "cett", - "decimals": 18 - }, - "54": { - "name": "Belly", - "symbol": "BELLY", - "decimals": 18 - }, - "55": { - "name": "Zyx", - "symbol": "ZYX", - "decimals": 18 - }, - "56": { - "name": "BNB Chain Native Token", - "symbol": "BNB", - "decimals": 18 - }, - "57": { - "name": "Syscoin", - "symbol": "SYS", - "decimals": 18 - }, - "58": { - "name": "ONG", - "symbol": "ONG", - "decimals": 18 - }, - "60": { - "name": "GoChain Ether", - "symbol": "GO", - "decimals": 18 - }, - "61": { - "name": "Ether", - "symbol": "ETC", - "decimals": 18 - }, - "63": { - "name": "Mordor Ether", - "symbol": "METC", - "decimals": 18 - }, - "64": { - "name": "Ellaism Ether", - "symbol": "ELLA", - "decimals": 18 - }, - "65": { - "name": "OKExChain Global Utility Token in testnet", - "symbol": "OKT", - "decimals": 18 - }, - "66": { - "name": "OKXChain Global Utility Token", - "symbol": "OKT", - "decimals": 18 - }, - "67": { - "name": "DBChain Testnet", - "symbol": "DBM", - "decimals": 18 - }, - "68": { - "name": "SoterOne Mainnet Ether", - "symbol": "SOTER", - "decimals": 18 - }, - "69": { - "name": "Kovan Ether", - "symbol": "ETH", - "decimals": 18 - }, - "70": { - "name": "Hoo Smart Chain Native Token", - "symbol": "HOO", - "decimals": 18 - }, - "71": { - "name": "CFX", - "symbol": "CFX", - "decimals": 18 - }, - "72": { - "name": "DxChain Testnet", - "symbol": "DX", - "decimals": 18 - }, - "73": { - "name": "FNCY", - "symbol": "FNCY", - "decimals": 18 - }, - "74": { - "name": "EIDI", - "symbol": "EIDI", - "decimals": 18 - }, - "75": { - "name": "Decimal", - "symbol": "DEL", - "decimals": 18 - }, - "76": { - "name": "Mix Ether", - "symbol": "MIX", - "decimals": 18 - }, - "77": { - "name": "POA Sokol Ether", - "symbol": "SPOA", - "decimals": 18 - }, - "78": { - "name": "Primus Ether", - "symbol": "PETH", - "decimals": 18 - }, - "79": { - "name": "ZENITH", - "symbol": "ZENITH", - "decimals": 18 - }, - "80": { - "name": "RNA", - "symbol": "RNA", - "decimals": 18 - }, - "81": { - "name": "Japan Open Chain Token", - "symbol": "JOC", - "decimals": 18 - }, - "82": { - "name": "Meter", - "symbol": "MTR", - "decimals": 18 - }, - "83": { - "name": "Meter", - "symbol": "MTR", - "decimals": 18 - }, - "84": { - "name": "XRP", - "symbol": "XRP", - "decimals": 18 - }, - "85": { - "name": "GateToken", - "symbol": "GT", - "decimals": 18 - }, - "86": { - "name": "GateToken", - "symbol": "GT", - "decimals": 18 - }, - "87": { - "name": "Supernova", - "symbol": "SNT", - "decimals": 18 - }, - "88": { - "name": "Viction", - "symbol": "VIC", - "decimals": 18 - }, - "89": { - "name": "Viction", - "symbol": "VIC", - "decimals": 18 - }, - "90": { - "name": "Garizon", - "symbol": "GAR", - "decimals": 18 - }, - "91": { - "name": "Garizon", - "symbol": "GAR", - "decimals": 18 - }, - "92": { - "name": "Garizon", - "symbol": "GAR", - "decimals": 18 - }, - "93": { - "name": "Garizon", - "symbol": "GAR", - "decimals": 18 - }, - "94": { - "name": "BCTS", - "symbol": "BCTS", - "decimals": 18 - }, - "95": { - "name": "CADL", - "symbol": "CADL", - "decimals": 18 - }, - "96": { - "name": "Bitkub Coin", - "symbol": "KUB", - "decimals": 18 - }, - "97": { - "name": "BNB Chain Native Token", - "symbol": "tBNB", - "decimals": 18 - }, - "98": { - "name": "SIX evm token", - "symbol": "SIX", - "decimals": 18 - }, - "99": { - "name": "POA Network Core Ether", - "symbol": "POA", - "decimals": 18 - }, - "100": { - "name": "xDAI", - "symbol": "XDAI", - "decimals": 18 - }, - "101": { - "name": "EtherInc Ether", - "symbol": "ETI", - "decimals": 18 - }, - "102": { - "name": "Web3Games", - "symbol": "W3G", - "decimals": 18 - }, - "103": { - "name": "Worldland", - "symbol": "WLC", - "decimals": 18 - }, - "104": { - "name": "Kaiba Testnet Token", - "symbol": "tKAIBA", - "decimals": 18 - }, - "105": { - "name": "Web3Games", - "symbol": "W3G", - "decimals": 18 - }, - "106": { - "name": "Velas", - "symbol": "VLX", - "decimals": 18 - }, - "107": { - "name": "Nebula X", - "symbol": "NBX", - "decimals": 18 - }, - "108": { - "name": "ThunderCore Token", - "symbol": "TT", - "decimals": 18 - }, - "109": { - "name": "BONE Shibarium", - "symbol": "BONE", - "decimals": 18 - }, - "110": { - "name": "Proton", - "symbol": "XPR", - "decimals": 4 - }, - "111": { - "name": "EtherLite", - "symbol": "ETL", - "decimals": 18 - }, - "112": { - "name": "Gas IDR", - "symbol": "GIDR", - "decimals": 18 - }, - "113": { - "name": "Dehvo", - "symbol": "Deh", - "decimals": 18 - }, - "114": { - "name": "Coston2 Flare", - "symbol": "C2FLR", - "decimals": 18 - }, - "117": { - "name": "Uptick", - "symbol": "UPTICK", - "decimals": 18 - }, - "118": { - "name": "Arcology Coin", - "symbol": "Acol", - "decimals": 18 - }, - "119": { - "name": "NULS", - "symbol": "NULS", - "decimals": 18 - }, - "120": { - "name": "NULS", - "symbol": "NULS", - "decimals": 18 - }, - "121": { - "name": "Realchain", - "symbol": "REAL", - "decimals": 18 - }, - "122": { - "name": "Fuse", - "symbol": "FUSE", - "decimals": 18 - }, - "123": { - "name": "Spark", - "symbol": "SPARK", - "decimals": 18 - }, - "124": { - "name": "Decentralized Web Utility", - "symbol": "DWU", - "decimals": 18 - }, - "125": { - "name": "OYchain Token", - "symbol": "OY", - "decimals": 18 - }, - "126": { - "name": "OYchain Token", - "symbol": "OY", - "decimals": 18 - }, - "127": { - "name": "Factory 127 Token", - "symbol": "FETH", - "decimals": 18 - }, - "128": { - "name": "Huobi ECO Chain Native Token", - "symbol": "HT", - "decimals": 18 - }, - "129": { - "name": "INOV8", - "symbol": "INOV8", - "decimals": 18 - }, - "131": { - "name": "Engram Tokio Testnet", - "symbol": "tGRAM", - "decimals": 18 - }, - "132": { - "name": "Namefi Coin", - "symbol": "NFIC", - "decimals": 18 - }, - "133": { - "name": "HashKey EcoPoints", - "symbol": "HSK", - "decimals": 18 - }, - "134": { - "name": "xRLC", - "symbol": "xRLC", - "decimals": 18 - }, - "135": { - "name": "Alyx Testnet Native Token", - "symbol": "ALYX", - "decimals": 18 - }, - "136": { - "name": "Deamchain Native Token", - "symbol": "DEAM", - "decimals": 18 - }, - "137": { - "name": "MATIC", - "symbol": "MATIC", - "decimals": 18 - }, - "138": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "139": { - "name": "WoopCoin", - "symbol": "WOOC", - "decimals": 18 - }, - "140": { - "name": "Eternal", - "symbol": "Eter", - "decimals": 18 - }, - "141": { - "name": "Belly", - "symbol": "BELLY", - "decimals": 18 - }, - "142": { - "name": "Prodax", - "symbol": "DAX", - "decimals": 18 - }, - "144": { - "name": "PHI", - "symbol": "\u03A6", - "decimals": 18 - }, - "145": { - "name": "SoraETH", - "symbol": "SETH", - "decimals": 18 - }, - "147": { - "name": "Flag", - "symbol": "FLAG", - "decimals": 18 - }, - "148": { - "name": "SMR", - "symbol": "SMR", - "decimals": 18 - }, - "150": { - "name": "SIX testnet evm token", - "symbol": "tSIX", - "decimals": 18 - }, - "151": { - "name": "Redbelly Network Coin", - "symbol": "RBNT", - "decimals": 18 - }, - "152": { - "name": "Redbelly Network Coin", - "symbol": "RBNT", - "decimals": 18 - }, - "153": { - "name": "Redbelly Network Coin", - "symbol": "RBNT", - "decimals": 18 - }, - "154": { - "name": "Redbelly Network Coin", - "symbol": "RBNT", - "decimals": 18 - }, - "155": { - "name": "TENET", - "symbol": "TENET", - "decimals": 18 - }, - "156": { - "name": "OEBlock", - "symbol": "OEB", - "decimals": 18 - }, - "157": { - "name": "BONE", - "symbol": "BONE", - "decimals": 18 - }, - "158": { - "name": "Roburna", - "symbol": "RBA", - "decimals": 18 - }, - "159": { - "name": "Roburna", - "symbol": "RBAT", - "decimals": 18 - }, - "160": { - "name": "Armonia Multichain Native Token", - "symbol": "AMAX", - "decimals": 18 - }, - "161": { - "name": "Armonia Multichain Native Token", - "symbol": "AMAX", - "decimals": 18 - }, - "162": { - "name": "Lightstreams PHT", - "symbol": "PHT", - "decimals": 18 - }, - "163": { - "name": "Lightstreams PHT", - "symbol": "PHT", - "decimals": 18 - }, - "164": { - "name": "Omni", - "symbol": "OMNI", - "decimals": 18 - }, - "166": { - "name": "Omni", - "symbol": "OMNI", - "decimals": 18 - }, - "167": { - "name": "ATOSHI", - "symbol": "ATOS", - "decimals": 18 - }, - "168": { - "name": "AIOZ", - "symbol": "AIOZ", - "decimals": 18 - }, - "169": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "170": { - "name": "HOO", - "symbol": "HOO", - "decimals": 18 - }, - "172": { - "name": "Latam-Blockchain Resil Test Native Token", - "symbol": "usd", - "decimals": 18 - }, - "176": { - "name": "DC Native Token", - "symbol": "DCT", - "decimals": 18 - }, - "178": { - "name": "ABEY", - "symbol": "tABEY", - "decimals": 18 - }, - "179": { - "name": "ABEY", - "symbol": "ABEY", - "decimals": 18 - }, - "180": { - "name": "AME", - "symbol": "AME", - "decimals": 18 - }, - "181": { - "name": "WATER", - "symbol": "WATER", - "decimals": 18 - }, - "184": { - "name": "Dojima", - "symbol": "DOJ", - "decimals": 18 - }, - "185": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "186": { - "name": "Seele", - "symbol": "Seele", - "decimals": 18 - }, - "187": { - "name": "Dojima", - "symbol": "DOJ", - "decimals": 18 - }, - "188": { - "name": "BTM", - "symbol": "BTM", - "decimals": 18 - }, - "189": { - "name": "BTM", - "symbol": "BTM", - "decimals": 18 - }, - "190": { - "name": "CommuDAO", - "symbol": "CMD", - "decimals": 18 - }, - "191": { - "name": "FFG", - "symbol": "FFG", - "decimals": 18 - }, - "193": { - "name": "Crypto Emergency", - "symbol": "CEM", - "decimals": 18 - }, - "195": { - "name": "X Layer Global Utility Token in testnet", - "symbol": "OKB", - "decimals": 18 - }, - "196": { - "name": "X Layer Global Utility Token", - "symbol": "OKB", - "decimals": 18 - }, - "197": { - "name": "Neutrinos", - "symbol": "NEUTR", - "decimals": 18 - }, - "198": { - "name": "Bitcoin", - "symbol": "BTC", - "decimals": 18 - }, - "199": { - "name": "BitTorrent", - "symbol": "BTT", - "decimals": 18 - }, - "200": { - "name": "xDAI", - "symbol": "xDAI", - "decimals": 18 - }, - "201": { - "name": "MOAC", - "symbol": "mc", - "decimals": 18 - }, - "202": { - "name": "Edgeless Wrapped Eth", - "symbol": "EwEth", - "decimals": 18 - }, - "204": { - "name": "BNB Chain Native Token", - "symbol": "BNB", - "decimals": 18 - }, - "205": { - "name": "Global Mobile Money Gateway", - "symbol": "$EKH", - "decimals": 18 - }, - "206": { - "name": "VinuChain", - "symbol": "VC", - "decimals": 18 - }, - "207": { - "name": "VinuChain", - "symbol": "VC", - "decimals": 18 - }, - "208": { - "name": "Notes", - "symbol": "utx", - "decimals": 18 - }, - "210": { - "name": "Bitnet", - "symbol": "BTN", - "decimals": 18 - }, - "211": { - "name": "Freight Trust Native", - "symbol": "0xF", - "decimals": 18 - }, - "212": { - "name": "Makalu MAPO", - "symbol": "MAPO", - "decimals": 18 - }, - "213": { - "name": "BSquared Token", - "symbol": "B2", - "decimals": 18 - }, - "214": { - "name": "Shina Inu", - "symbol": "SHI", - "decimals": 18 - }, - "217": { - "name": "MCD", - "symbol": "MCD", - "decimals": 18 - }, - "220": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "221": { - "name": "BlockEx", - "symbol": "XBE", - "decimals": 18 - }, - "223": { - "name": "Bitcoin", - "symbol": "BTC", - "decimals": 18 - }, - "224": { - "name": "Viridis Token", - "symbol": "VRD", - "decimals": 18 - }, - "225": { - "name": "LA", - "symbol": "LA", - "decimals": 18 - }, - "226": { - "name": "TLA", - "symbol": "TLA", - "decimals": 18 - }, - "228": { - "name": "FHE", - "symbol": "FHE", - "decimals": 18 - }, - "230": { - "name": "SwapDEX", - "symbol": "SDX", - "decimals": 18 - }, - "233": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "234": { - "name": "JNFTC", - "symbol": "JNFTC", - "decimals": 18 - }, - "236": { - "name": "Deamchain Native Token", - "symbol": "DEAM", - "decimals": 18 - }, - "242": { - "name": "Plinga", - "symbol": "PLINGA", - "decimals": 18 - }, - "246": { - "name": "Energy Web Token", - "symbol": "EWT", - "decimals": 18 - }, - "248": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "250": { - "name": "Fantom", - "symbol": "FTM", - "decimals": 18 - }, - "252": { - "name": "Frax Ether", - "symbol": "frxETH", - "decimals": 18 - }, - "254": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "255": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "256": { - "name": "Huobi ECO Chain Test Native Token", - "symbol": "htt", - "decimals": 18 - }, - "258": { - "name": "Setheum", - "symbol": "SETM", - "decimals": 18 - }, - "259": { - "name": "Neonlink Native Token", - "symbol": "NEON", - "decimals": 18 - }, - "261": { - "name": "testGURU", - "symbol": "tGURU", - "decimals": 18 - }, - "262": { - "name": "Suren", - "symbol": "SRN", - "decimals": 18 - }, - "266": { - "name": "Ankr", - "symbol": "ANKR", - "decimals": 18 - }, - "267": { - "name": "Testnet Ankr", - "symbol": "ANKR", - "decimals": 18 - }, - "268": { - "name": "Devnet Ankr", - "symbol": "ANKR", - "decimals": 18 - }, - "269": { - "name": "High Performance Blockchain Ether", - "symbol": "HPB", - "decimals": 18 - }, - "271": { - "name": "EgonCoin", - "symbol": "EGON", - "decimals": 18 - }, - "274": { - "name": "LaCoin", - "symbol": "LAC", - "decimals": 18 - }, - "278": { - "name": "FAI", - "symbol": "FAI", - "decimals": 18 - }, - "279": { - "name": "BPX", - "symbol": "BPX", - "decimals": 18 - }, - "282": { - "name": "Cronos zkEVM Test Coin", - "symbol": "zkTCRO", - "decimals": 18 - }, - "288": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "291": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "295": { - "name": "hbar", - "symbol": "HBAR", - "decimals": 18 - }, - "296": { - "name": "hbar", - "symbol": "HBAR", - "decimals": 18 - }, - "297": { - "name": "hbar", - "symbol": "HBAR", - "decimals": 18 - }, - "298": { - "name": "hbar", - "symbol": "HBAR", - "decimals": 18 - }, - "300": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "302": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "303": { - "name": "Neurochain", - "symbol": "tNCN", - "decimals": 18 - }, - "305": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "307": { - "name": "Lovely", - "symbol": "LOVELY", - "decimals": 18 - }, - "308": { - "name": "Furtheon", - "symbol": "FTH", - "decimals": 18 - }, - "309": { - "name": "Wyzth", - "symbol": "WYZ", - "decimals": 18 - }, - "311": { - "name": "OMAX COIN", - "symbol": "OMAX", - "decimals": 18 - }, - "313": { - "name": "Neurochain", - "symbol": "NCN", - "decimals": 18 - }, - "314": { - "name": "filecoin", - "symbol": "FIL", - "decimals": 18 - }, - "321": { - "name": "KuCoin Token", - "symbol": "KCS", - "decimals": 18 - }, - "322": { - "name": "KuCoin Testnet Token", - "symbol": "tKCS", - "decimals": 18 - }, - "323": { - "name": "Cosvm", - "symbol": "CVM", - "decimals": 18 - }, - "324": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "325": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "326": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "333": { - "name": "Web3Q", - "symbol": "W3Q", - "decimals": 18 - }, - "335": { - "name": "Jewel", - "symbol": "JEWEL", - "decimals": 18 - }, - "336": { - "name": "Shiden", - "symbol": "SDN", - "decimals": 18 - }, - "338": { - "name": "Cronos Test Coin", - "symbol": "TCRO", - "decimals": 18 - }, - "345": { - "name": "TAS", - "symbol": "TAS", - "decimals": 18 - }, - "360": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "361": { - "name": "Theta Fuel", - "symbol": "TFUEL", - "decimals": 18 - }, - "363": { - "name": "Theta Fuel", - "symbol": "TFUEL", - "decimals": 18 - }, - "364": { - "name": "Theta Fuel", - "symbol": "TFUEL", - "decimals": 18 - }, - "365": { - "name": "Theta Fuel", - "symbol": "TFUEL", - "decimals": 18 - }, - "369": { - "name": "Pulse", - "symbol": "PLS", - "decimals": 18 - }, - "371": { - "name": "tCNT", - "symbol": "tCNT", - "decimals": 18 - }, - "380": { - "name": "filecoin", - "symbol": "FIL", - "decimals": 18 - }, - "381": { - "name": "filecoin", - "symbol": "FIL", - "decimals": 18 - }, - "385": { - "name": "Lisinski Ether", - "symbol": "LISINS", - "decimals": 18 - }, - "388": { - "name": "Cronos zkEVM CRO", - "symbol": "zkCRO", - "decimals": 18 - }, - "395": { - "name": "CADL", - "symbol": "CADL", - "decimals": 18 - }, - "397": { - "name": "NEAR", - "symbol": "NEAR", - "decimals": 18 - }, - "398": { - "name": "Testnet NEAR", - "symbol": "NEAR", - "decimals": 18 - }, - "399": { - "name": "USNT", - "symbol": "USNT", - "decimals": 18 - }, - "400": { - "name": "HyperonChain", - "symbol": "HPN", - "decimals": 18 - }, - "401": { - "name": "OZONE", - "symbol": "OZO", - "decimals": 18 - }, - "404": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "411": { - "name": "Pepe", - "symbol": "PEPE", - "decimals": 18 - }, - "416": { - "name": "SX Network", - "symbol": "SX", - "decimals": 18 - }, - "418": { - "name": "Test LaCoin", - "symbol": "TLA", - "decimals": 18 - }, - "420": { - "name": "Goerli Ether", - "symbol": "ETH", - "decimals": 18 - }, - "422": { - "name": "Viridis Token", - "symbol": "VRD", - "decimals": 18 - }, - "424": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "427": { - "name": "Zeeth Token", - "symbol": "ZTH", - "decimals": 18 - }, - "428": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "434": { - "name": "Boyaa mainnet native coin", - "symbol": "BYC", - "decimals": 18 - }, - "443": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "444": { - "name": "Sepolia ETH", - "symbol": "ETH", - "decimals": 18 - }, - "456": { - "name": "ARZIO", - "symbol": "AZO", - "decimals": 18 - }, - "462": { - "name": "Areon", - "symbol": "TAREA", - "decimals": 18 - }, - "463": { - "name": "Areon", - "symbol": "AREA", - "decimals": 18 - }, - "480": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "499": { - "name": "Rupaya", - "symbol": "RUPX", - "decimals": 18 - }, - "500": { - "name": "Camino", - "symbol": "CAM", - "decimals": 18 - }, - "501": { - "name": "Camino", - "symbol": "CAM", - "decimals": 18 - }, - "510": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "512": { - "name": "Acuteangle Native Token", - "symbol": "AAC", - "decimals": 18 - }, - "513": { - "name": "Acuteangle Native Token", - "symbol": "AAC", - "decimals": 18 - }, - "516": { - "name": "Gear Zero Network Native Token", - "symbol": "GZN", - "decimals": 18 - }, - "520": { - "name": "XT Smart Chain Native Token", - "symbol": "XT", - "decimals": 18 - }, - "529": { - "name": "Firechain", - "symbol": "FIRE", - "decimals": 18 - }, - "530": { - "name": "Function X", - "symbol": "FX", - "decimals": 18 - }, - "534": { - "name": "CANDLE", - "symbol": "CNDL", - "decimals": 18 - }, - "537": { - "name": "BSC", - "symbol": "BNB", - "decimals": 18 - }, - "542": { - "name": "PAW", - "symbol": "PAW", - "decimals": 18 - }, - "545": { - "name": "FLOW", - "symbol": "FLOW", - "decimals": 18 - }, - "555": { - "name": "CLASS COIN", - "symbol": "CLASS", - "decimals": 18 - }, - "558": { - "name": "Tao", - "symbol": "TAO", - "decimals": 18 - }, - "568": { - "name": "Dogecoin", - "symbol": "DOGE", - "decimals": 18 - }, - "570": { - "name": "Syscoin", - "symbol": "SYS", - "decimals": 18 - }, - "571": { - "name": "Metatime Coin", - "symbol": "MTC", - "decimals": 18 - }, - "579": { - "name": "Filecoin", - "symbol": "FIL", - "decimals": 18 - }, - "592": { - "name": "Astar", - "symbol": "ASTR", - "decimals": 18 - }, - "595": { - "name": "Acala Mandala Token", - "symbol": "mACA", - "decimals": 18 - }, - "596": { - "name": "Karura Token", - "symbol": "KAR", - "decimals": 18 - }, - "597": { - "name": "Acala Token", - "symbol": "ACA", - "decimals": 18 - }, - "600": { - "name": "Meshnyan Testnet Native Token", - "symbol": "MESHT", - "decimals": 18 - }, - "601": { - "name": "VINE", - "symbol": "VNE", - "decimals": 18 - }, - "610": { - "name": "Darwin Devnet token", - "symbol": "DNA", - "decimals": 18 - }, - "612": { - "name": "EIOB", - "symbol": "EIOB", - "decimals": 18 - }, - "614": { - "name": "GLQ", - "symbol": "GLQ", - "decimals": 18 - }, - "624": { - "name": "Binary Token", - "symbol": "BNRY", - "decimals": 18 - }, - "625": { - "name": "Test BNRY", - "symbol": "BNRY", - "decimals": 18 - }, - "634": { - "name": "USDC", - "symbol": "USDC", - "decimals": 18 - }, - "646": { - "name": "FLOW", - "symbol": "FLOW", - "decimals": 18 - }, - "647": { - "name": "SX Network", - "symbol": "SX", - "decimals": 18 - }, - "648": { - "name": "Endurance Chain Native Token", - "symbol": "ACE", - "decimals": 18 - }, - "653": { - "name": "kalis", - "symbol": "KALIS", - "decimals": 18 - }, - "654": { - "name": "kalis", - "symbol": "KALIS", - "decimals": 18 - }, - "662": { - "name": "ulc", - "symbol": "ULC", - "decimals": 18 - }, - "666": { - "name": "Pixie Chain Testnet Native Token", - "symbol": "PCTT", - "decimals": 18 - }, - "667": { - "name": "LAOS", - "symbol": "LAOS", - "decimals": 18 - }, - "668": { - "name": "JuncaChain Native Token", - "symbol": "JGC", - "decimals": 18 - }, - "669": { - "name": "JuncaChain Testnet Native Token", - "symbol": "JGCT", - "decimals": 18 - }, - "686": { - "name": "Karura Token", - "symbol": "KAR", - "decimals": 18 - }, - "690": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "700": { - "name": "Social", - "symbol": "SNS", - "decimals": 18 - }, - "701": { - "name": "Koi Network Native Token", - "symbol": "KRING", - "decimals": 18 - }, - "707": { - "name": "BCS Token", - "symbol": "BCS", - "decimals": 18 - }, - "708": { - "name": "BCS Testnet Token", - "symbol": "tBCS", - "decimals": 18 - }, - "710": { - "name": "Fury", - "symbol": "FURY", - "decimals": 18 - }, - "713": { - "name": "VRC Chain", - "symbol": "VRC", - "decimals": 18 - }, - "719": { - "name": "BONE", - "symbol": "BONE", - "decimals": 18 - }, - "721": { - "name": "Lycan", - "symbol": "LYC", - "decimals": 18 - }, - "727": { - "name": "Blucrates", - "symbol": "BLU", - "decimals": 18 - }, - "730": { - "name": "Lovely", - "symbol": "LOVELY", - "decimals": 18 - }, - "741": { - "name": "VNT", - "symbol": "VNT", - "decimals": 18 - }, - "742": { - "name": "Script", - "symbol": "SPAY", - "decimals": 18 - }, - "747": { - "name": "FLOW", - "symbol": "FLOW", - "decimals": 18 - }, - "766": { - "name": "Shiba Predator", - "symbol": "QOM", - "decimals": 18 - }, - "776": { - "name": "Openchain Testnet", - "symbol": "TOPC", - "decimals": 18 - }, - "777": { - "name": "cTH", - "symbol": "cTH", - "decimals": 18 - }, - "786": { - "name": "MAAL", - "symbol": "MAAL", - "decimals": 18 - }, - "787": { - "name": "Acala Token", - "symbol": "ACA", - "decimals": 18 - }, - "788": { - "name": "Aerochain Testnet", - "symbol": "TAero", - "decimals": 18 - }, - "789": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "799": { - "name": "Test Rupaya", - "symbol": "TRUPX", - "decimals": 18 - }, - "800": { - "name": "LUCID", - "symbol": "LUCID", - "decimals": 18 - }, - "803": { - "name": "Haicoin", - "symbol": "HAIC", - "decimals": 18 - }, - "808": { - "name": "Portal Fantasy Token", - "symbol": "PFT", - "decimals": 18 - }, - "810": { - "name": "Haven1", - "symbol": "H1", - "decimals": 18 - }, - "813": { - "name": "Qitmeer", - "symbol": "MEER", - "decimals": 18 - }, - "814": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "818": { - "name": "BeOne Chain Mainnet", - "symbol": "BOC", - "decimals": 18 - }, - "820": { - "name": "Callisto", - "symbol": "CLO", - "decimals": 18 - }, - "822": { - "name": "Bitcoin", - "symbol": "rBTC", - "decimals": 18 - }, - "831": { - "name": "CDT", - "symbol": "CDT", - "decimals": 18 - }, - "841": { - "name": "Tara", - "symbol": "TARA", - "decimals": 18 - }, - "842": { - "name": "Tara", - "symbol": "TARA", - "decimals": 18 - }, - "852": { - "name": "HongKong", - "symbol": "HK", - "decimals": 18 - }, - "859": { - "name": "Zeeth Token", - "symbol": "ZTH", - "decimals": 18 - }, - "868": { - "name": "FST", - "symbol": "FST", - "decimals": 18 - }, - "876": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "877": { - "name": "Dexit network", - "symbol": "DXT", - "decimals": 18 - }, - "880": { - "name": "AMBROS", - "symbol": "AMBROS", - "decimals": 18 - }, - "888": { - "name": "Wancoin", - "symbol": "WAN", - "decimals": 18 - }, - "898": { - "name": "MAXI GAS", - "symbol": "MGAS", - "decimals": 18 - }, - "899": { - "name": "MAXI GAS", - "symbol": "MGAS", - "decimals": 18 - }, - "900": { - "name": "Garizon", - "symbol": "GAR", - "decimals": 18 - }, - "901": { - "name": "Garizon", - "symbol": "GAR", - "decimals": 18 - }, - "902": { - "name": "Garizon", - "symbol": "GAR", - "decimals": 18 - }, - "903": { - "name": "Garizon", - "symbol": "GAR", - "decimals": 18 - }, - "909": { - "name": "Portal Fantasy Token", - "symbol": "PFT", - "decimals": 18 - }, - "910": { - "name": "DecentraBone", - "symbol": "DBONE", - "decimals": 18 - }, - "911": { - "name": "TBTC", - "symbol": "TBTC", - "decimals": 18 - }, - "917": { - "name": "Firechain", - "symbol": "FIRE", - "decimals": 18 - }, - "919": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "927": { - "name": "Yidark", - "symbol": "YDK", - "decimals": 18 - }, - "943": { - "name": "Test Pulse", - "symbol": "tPLS", - "decimals": 18 - }, - "956": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "957": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "963": { - "name": "BTCC", - "symbol": "BTCC", - "decimals": 18 - }, - "969": { - "name": "Settled EthXY Token", - "symbol": "SEXY", - "decimals": 18 - }, - "970": { - "name": "Oort", - "symbol": "OORT", - "decimals": 18 - }, - "971": { - "name": "Oort", - "symbol": "CCN", - "decimals": 18 - }, - "972": { - "name": "Oort", - "symbol": "CCNA", - "decimals": 18 - }, - "977": { - "name": "Nepal Blockchain Network Ether", - "symbol": "YETI", - "decimals": 18 - }, - "979": { - "name": "Settled EthXY Token", - "symbol": "SEXY", - "decimals": 18 - }, - "980": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "985": { - "name": "Memo", - "symbol": "CMEMO", - "decimals": 18 - }, - "987": { - "name": "BINARY", - "symbol": "BNRY", - "decimals": 18 - }, - "989": { - "name": "TOP", - "symbol": "TOP", - "decimals": 6 - }, - "990": { - "name": "eLiberty", - "symbol": "$EL", - "decimals": 18 - }, - "995": { - "name": "5ire Token", - "symbol": "5IRE", - "decimals": 18 - }, - "996": { - "name": "Wrapped ETH", - "symbol": "WETH", - "decimals": 18 - }, - "997": { - "name": "5ire Testnet Token", - "symbol": "T5IRE", - "decimals": 18 - }, - "998": { - "name": "Lucky", - "symbol": "L99", - "decimals": 18 - }, - "999": { - "name": "Wancoin", - "symbol": "WAN", - "decimals": 18 - }, - "1000": { - "name": "GCD", - "symbol": "GCD", - "decimals": 18 - }, - "1001": { - "name": "KAIA", - "symbol": "KLAY", - "decimals": 18 - }, - "1003": { - "name": "Tectum", - "symbol": "TET", - "decimals": 8 - }, - "1004": { - "name": "T-EKTA", - "symbol": "T-EKTA", - "decimals": 18 - }, - "1007": { - "name": "Newton", - "symbol": "NEW", - "decimals": 18 - }, - "1008": { - "name": "Eurus", - "symbol": "EUN", - "decimals": 18 - }, - "1009": { - "name": "JNFTC", - "symbol": "JNFTC", - "decimals": 18 - }, - "1010": { - "name": "Evrice", - "symbol": "EVC", - "decimals": 18 - }, - "1011": { - "name": "Rebus", - "symbol": "REBUS", - "decimals": 18 - }, - "1012": { - "name": "Newton", - "symbol": "NEW", - "decimals": 18 - }, - "1022": { - "name": "Sakura", - "symbol": "SKU", - "decimals": 18 - }, - "1023": { - "name": "Clover", - "symbol": "CLV", - "decimals": 18 - }, - "1024": { - "name": "CLV", - "symbol": "CLV", - "decimals": 18 - }, - "1028": { - "name": "BitTorrent", - "symbol": "BTT", - "decimals": 18 - }, - "1030": { - "name": "CFX", - "symbol": "CFX", - "decimals": 18 - }, - "1031": { - "name": "PRX", - "symbol": "PRX", - "decimals": 18 - }, - "1038": { - "name": "tBRO", - "symbol": "tBRO", - "decimals": 18 - }, - "1039": { - "name": "BRO", - "symbol": "BRO", - "decimals": 18 - }, - "1073": { - "name": "SMR", - "symbol": "SMR", - "decimals": 18 - }, - "1075": { - "name": "IOTA", - "symbol": "IOTA", - "decimals": 18 - }, - "1079": { - "name": "MINTARA", - "symbol": "MNTR", - "decimals": 18 - }, - "1080": { - "name": "MINTARA", - "symbol": "MNTR", - "decimals": 18 - }, - "1088": { - "name": "Metis", - "symbol": "METIS", - "decimals": 18 - }, - "1089": { - "name": "HEART", - "symbol": "HEART", - "decimals": 18 - }, - "1099": { - "name": "MOAC", - "symbol": "mc", - "decimals": 18 - }, - "1100": { - "name": "DYM", - "symbol": "DYM", - "decimals": 18 - }, - "1101": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1107": { - "name": "BLXQ", - "symbol": "BLXQ", - "decimals": 18 - }, - "1108": { - "name": "BLXQ", - "symbol": "BLXQ", - "decimals": 18 - }, - "1111": { - "name": "WEMIX", - "symbol": "WEMIX", - "decimals": 18 - }, - "1112": { - "name": "TestnetWEMIX", - "symbol": "tWEMIX", - "decimals": 18 - }, - "1113": { - "name": "BSquared Token", - "symbol": "B2", - "decimals": 18 - }, - "1115": { - "name": "Core Blockchain Testnet Native Token", - "symbol": "tCORE", - "decimals": 18 - }, - "1116": { - "name": "Core Blockchain Native Token", - "symbol": "CORE", - "decimals": 18 - }, - "1117": { - "name": "Dogcoin", - "symbol": "DOGS", - "decimals": 18 - }, - "1123": { - "name": "Bitcoin", - "symbol": "BTC", - "decimals": 18 - }, - "1130": { - "name": "DeFiChain", - "symbol": "DFI", - "decimals": 18 - }, - "1131": { - "name": "DeFiChain", - "symbol": "DFI", - "decimals": 18 - }, - "1133": { - "name": "DeFiChain Token", - "symbol": "DFI", - "decimals": 18 - }, - "1135": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1138": { - "name": "SINSO", - "symbol": "SINSO", - "decimals": 18 - }, - "1139": { - "name": "MathChain", - "symbol": "MATH", - "decimals": 18 - }, - "1140": { - "name": "MathChain", - "symbol": "MATH", - "decimals": 18 - }, - "1147": { - "name": "Flag Testnet", - "symbol": "FLAG", - "decimals": 18 - }, - "1149": { - "name": "Plex Native Token", - "symbol": "PLEX", - "decimals": 18 - }, - "1170": { - "name": "Origin", - "symbol": "UOC", - "decimals": 18 - }, - "1177": { - "name": "Smart Host Teknoloji TESTNET", - "symbol": "tSHT", - "decimals": 18 - }, - "1188": { - "name": "ClubMos", - "symbol": "MOS", - "decimals": 18 - }, - "1197": { - "name": "Iora", - "symbol": "IORA", - "decimals": 18 - }, - "1200": { - "name": "CuckooAI", - "symbol": "CAI", - "decimals": 18 - }, - "1201": { - "name": "AVIS", - "symbol": "AVIS", - "decimals": 18 - }, - "1202": { - "name": "World Trade Token", - "symbol": "WTT", - "decimals": 18 - }, - "1209": { - "name": "SaitaBlockChain(SBC)", - "symbol": "STC", - "decimals": 18 - }, - "1210": { - "name": "CuckooAI", - "symbol": "CAI", - "decimals": 18 - }, - "1213": { - "name": "Popcat", - "symbol": "POP", - "decimals": 18 - }, - "1214": { - "name": "EnterCoin", - "symbol": "ENTER", - "decimals": 18 - }, - "1221": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1223": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1225": { - "name": "Hybrid", - "symbol": "HYB", - "decimals": 18 - }, - "1227": { - "name": "BTC Protocol", - "symbol": "BTCP", - "decimals": 18 - }, - "1229": { - "name": "Exzo", - "symbol": "XZO", - "decimals": 18 - }, - "1230": { - "name": "Ultron", - "symbol": "ULX", - "decimals": 18 - }, - "1231": { - "name": "Ultron", - "symbol": "ULX", - "decimals": 18 - }, - "1234": { - "name": "FITFI", - "symbol": "FITFI", - "decimals": 18 - }, - "1235": { - "name": "ITX", - "symbol": "ITX", - "decimals": 18 - }, - "1243": { - "name": "ARC", - "symbol": "ARC", - "decimals": 18 - }, - "1244": { - "name": "ARC", - "symbol": "ARC", - "decimals": 18 - }, - "1246": { - "name": "OMCOIN", - "symbol": "OM", - "decimals": 18 - }, - "1248": { - "name": "Dogether", - "symbol": "dogeth", - "decimals": 18 - }, - "1252": { - "name": "Crazy Internet Coin", - "symbol": "CICT", - "decimals": 18 - }, - "1280": { - "name": "HALO", - "symbol": "HO", - "decimals": 18 - }, - "1284": { - "name": "Glimmer", - "symbol": "GLMR", - "decimals": 18 - }, - "1285": { - "name": "Moonriver", - "symbol": "MOVR", - "decimals": 18 - }, - "1287": { - "name": "Dev", - "symbol": "DEV", - "decimals": 18 - }, - "1288": { - "name": "Rocs", - "symbol": "ROC", - "decimals": 18 - }, - "1291": { - "name": "Swisstronik", - "symbol": "SWTR", - "decimals": 18 - }, - "1311": { - "name": "Dos Native Token", - "symbol": "DOS", - "decimals": 18 - }, - "1313": { - "name": "JaiHo", - "symbol": "JaiHo", - "decimals": 18 - }, - "1314": { - "name": "Alyx Chain Native Token", - "symbol": "ALYX", - "decimals": 18 - }, - "1319": { - "name": "AIA Mainnet", - "symbol": "AIA", - "decimals": 18 - }, - "1320": { - "name": "AIA Testnet", - "symbol": "AIA", - "decimals": 18 - }, - "1328": { - "name": "Sei", - "symbol": "SEI", - "decimals": 18 - }, - "1329": { - "name": "Sei", - "symbol": "SEI", - "decimals": 18 - }, - "1337": { - "name": "Geth Testnet Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1338": { - "name": "LAVA", - "symbol": "LAVA", - "decimals": 18 - }, - "1339": { - "name": "LAVA", - "symbol": "LAVA", - "decimals": 18 - }, - "1343": { - "name": "BLITZ GAS", - "symbol": "BGAS", - "decimals": 18 - }, - "1353": { - "name": "Crazy Internet Coin", - "symbol": "CIC", - "decimals": 18 - }, - "1369": { - "name": "Zakumi Chain Native Token", - "symbol": "ZAFIC", - "decimals": 18 - }, - "1370": { - "name": "Rama", - "symbol": "RAMA", - "decimals": 18 - }, - "1377": { - "name": "Rama", - "symbol": "tRAMA", - "decimals": 18 - }, - "1379": { - "name": "Kalar", - "symbol": "KLC", - "decimals": 18 - }, - "1388": { - "name": "SINSO", - "symbol": "SINSO", - "decimals": 18 - }, - "1392": { - "name": "Joseon Mun", - "symbol": "JSM", - "decimals": 18 - }, - "1414": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1433": { - "name": "Rikeza", - "symbol": "RIK", - "decimals": 18 - }, - "1440": { - "name": "LAS", - "symbol": "LAS", - "decimals": 18 - }, - "1442": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1452": { - "name": "GANG", - "symbol": "GANG", - "decimals": 18 - }, - "1453": { - "name": "Metatime Coin", - "symbol": "MTC", - "decimals": 18 - }, - "1455": { - "name": "CTEX", - "symbol": "CTEX", - "decimals": 18 - }, - "1456": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1490": { - "name": "Vitruveo Coin", - "symbol": "VTRU", - "decimals": 18 - }, - "1499": { - "name": "iDos Games Coin", - "symbol": "IGC", - "decimals": 18 - }, - "1501": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "1506": { - "name": "KSX", - "symbol": "KSX", - "decimals": 18 - }, - "1507": { - "name": "KSX", - "symbol": "KSX", - "decimals": 18 - }, - "1515": { - "name": "Beagle", - "symbol": "BG", - "decimals": 18 - }, - "1559": { - "name": "TENET", - "symbol": "TENET", - "decimals": 18 - }, - "1570": { - "name": "STARX", - "symbol": "STARX", - "decimals": 18 - }, - "1578": { - "name": "STARX", - "symbol": "STARX", - "decimals": 18 - }, - "1617": { - "name": "Ethereum Inscription", - "symbol": "ETINS", - "decimals": 18 - }, - "1618": { - "name": "Catecoin", - "symbol": "CATE", - "decimals": 18 - }, - "1620": { - "name": "Atheios Ether", - "symbol": "ATH", - "decimals": 18 - }, - "1625": { - "name": "Gravity", - "symbol": "G", - "decimals": 18 - }, - "1648": { - "name": "Pivotal Plus", - "symbol": "PLUS", - "decimals": 18 - }, - "1657": { - "name": "Bitcoin Asset", - "symbol": "BTA", - "decimals": 18 - }, - "1662": { - "name": "Licoin", - "symbol": "LCN", - "decimals": 18 - }, - "1663": { - "name": "Testnet Zen", - "symbol": "tZEN", - "decimals": 18 - }, - "1686": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1687": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1688": { - "name": "LUDAN", - "symbol": "LUDAN", - "decimals": 18 - }, - "1701": { - "name": "ANY", - "symbol": "ANY", - "decimals": 18 - }, - "1707": { - "name": "Jinda", - "symbol": "JINDA", - "decimals": 18 - }, - "1708": { - "name": "Jinda", - "symbol": "JINDA", - "decimals": 18 - }, - "1717": { - "name": "Doric Native Token", - "symbol": "DRC", - "decimals": 18 - }, - "1718": { - "name": "Palette Token", - "symbol": "PLT", - "decimals": 18 - }, - "1729": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1740": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "1750": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "1773": { - "name": "Grams", - "symbol": "GRAMS", - "decimals": 18 - }, - "1777": { - "name": "GANG", - "symbol": "GANG", - "decimals": 18 - }, - "1789": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1804": { - "name": "Climate awaReness Coin", - "symbol": "CRC", - "decimals": 18 - }, - "1807": { - "name": "Rabbit Analog Test Chain Native Token ", - "symbol": "rAna", - "decimals": 18 - }, - "1811": { - "name": "LIF3", - "symbol": "LIF3", - "decimals": 18 - }, - "1818": { - "name": "Cube Chain Native Token", - "symbol": "CUBE", - "decimals": 18 - }, - "1819": { - "name": "Cube Chain Test Native Token", - "symbol": "CUBET", - "decimals": 18 - }, - "1821": { - "name": "RUBY Smart Chain Native Token", - "symbol": "RUBY", - "decimals": 18 - }, - "1856": { - "name": "Teslafunds Ether", - "symbol": "TSF", - "decimals": 18 - }, - "1875": { - "name": "WhiteBIT Coin", - "symbol": "WBT", - "decimals": 18 - }, - "1881": { - "name": "Gitshock Cartenz", - "symbol": "tGTFX", - "decimals": 18 - }, - "1890": { - "name": "Ethereum", - "symbol": "ETH", - "decimals": 18 - }, - "1891": { - "name": "Ethereum", - "symbol": "ETH", - "decimals": 18 - }, - "1898": { - "name": "BOYACoin", - "symbol": "BOY", - "decimals": 18 - }, - "1899": { - "name": "RED", - "symbol": "RED", - "decimals": 18 - }, - "1904": { - "name": "SCN", - "symbol": "SCN", - "decimals": 18 - }, - "1907": { - "name": "Bitci", - "symbol": "BITCI", - "decimals": 18 - }, - "1908": { - "name": "Test Bitci", - "symbol": "TBITCI", - "decimals": 18 - }, - "1909": { - "name": "Merkle", - "symbol": "MRK", - "decimals": 18 - }, - "1911": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1912": { - "name": "RUBY Smart Chain Native Token", - "symbol": "tRUBY", - "decimals": 18 - }, - "1918": { - "name": "UPBEth", - "symbol": "UPBEth", - "decimals": 18 - }, - "1945": { - "name": "ONUS", - "symbol": "ONUS", - "decimals": 18 - }, - "1951": { - "name": "DOINX", - "symbol": "DOINX", - "decimals": 18 - }, - "1953": { - "name": "Selendra", - "symbol": "tSEL", - "decimals": 18 - }, - "1954": { - "name": "Dexilla Native Token", - "symbol": "DXZ", - "decimals": 18 - }, - "1956": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "1961": { - "name": "Selendra", - "symbol": "SEL", - "decimals": 18 - }, - "1967": { - "name": "Eleanor Metacoin", - "symbol": "MTC", - "decimals": 18 - }, - "1969": { - "name": "Super Chain Native Token", - "symbol": "TSCS", - "decimals": 18 - }, - "1970": { - "name": "Super Chain Native Token", - "symbol": "SCS", - "decimals": 18 - }, - "1971": { - "name": "ATLR", - "symbol": "ATLR", - "decimals": 18 - }, - "1972": { - "name": "RedeCoin", - "symbol": "REDEV2", - "decimals": 18 - }, - "1975": { - "name": "ONUS", - "symbol": "ONUS", - "decimals": 18 - }, - "1984": { - "name": "Eurus", - "symbol": "EUN", - "decimals": 18 - }, - "1985": { - "name": "Tushy Token", - "symbol": "TUSHY", - "decimals": 18 - }, - "1986": { - "name": "Tushy Token", - "symbol": "TUSHY", - "decimals": 18 - }, - "1987": { - "name": "EtherGem Ether", - "symbol": "EGEM", - "decimals": 18 - }, - "1992": { - "name": "USD Coin", - "symbol": "USDC", - "decimals": 18 - }, - "1993": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "1994": { - "name": "EKTA", - "symbol": "EKTA", - "decimals": 18 - }, - "1995": { - "name": "EDEXA", - "symbol": "EDX", - "decimals": 18 - }, - "1996": { - "name": "DMT", - "symbol": "DMT", - "decimals": 18 - }, - "1997": { - "name": "Kyoto", - "symbol": "KYOTO", - "decimals": 18 - }, - "1998": { - "name": "Kyoto", - "symbol": "KYOTO", - "decimals": 18 - }, - "2000": { - "name": "Dogecoin", - "symbol": "DOGE", - "decimals": 18 - }, - "2001": { - "name": "milkAda", - "symbol": "mADA", - "decimals": 18 - }, - "2002": { - "name": "milkALGO", - "symbol": "mALGO", - "decimals": 18 - }, - "2004": { - "name": "MetaLink", - "symbol": "MTL", - "decimals": 18 - }, - "2008": { - "name": "CloudWalk Native Token", - "symbol": "CWN", - "decimals": 18 - }, - "2009": { - "name": "CloudWalk Native Token", - "symbol": "CWN", - "decimals": 18 - }, - "2013": { - "name": "GAS", - "symbol": "GAS", - "decimals": 18 - }, - "2014": { - "name": "NOW Coin", - "symbol": "NOW", - "decimals": 18 - }, - "2016": { - "name": "MainnetZ", - "symbol": "NetZ", - "decimals": 18 - }, - "2017": { - "name": "Telcoin", - "symbol": "TEL", - "decimals": 18 - }, - "2018": { - "name": "USD", - "symbol": "USD", - "decimals": 18 - }, - "2019": { - "name": "USD", - "symbol": "USD", - "decimals": 18 - }, - "2020": { - "name": "USD", - "symbol": "USD", - "decimals": 18 - }, - "2021": { - "name": "Edgeware", - "symbol": "EDG", - "decimals": 18 - }, - "2022": { - "name": "Testnet EDG", - "symbol": "tEDG", - "decimals": 18 - }, - "2023": { - "name": "test-Shuffle", - "symbol": "tSFL", - "decimals": 18 - }, - "2024": { - "name": "SWANETH", - "symbol": "sETH", - "decimals": 18 - }, - "2025": { - "name": "Rangers Protocol Gas", - "symbol": "RPG", - "decimals": 18 - }, - "2026": { - "name": "Edgeless Wrapped Eth", - "symbol": "EwEth", - "decimals": 18 - }, - "2031": { - "name": "Centrifuge", - "symbol": "CFG", - "decimals": 18 - }, - "2032": { - "name": "Catalyst CFG", - "symbol": "NCFG", - "decimals": 18 - }, - "2035": { - "name": "Phala", - "symbol": "PHA", - "decimals": 18 - }, - "2037": { - "name": "Shrapgas", - "symbol": "SHRAP", - "decimals": 18 - }, - "2038": { - "name": "SHRAPG", - "symbol": "SHRAPG", - "decimals": 18 - }, - "2039": { - "name": "TZERO", - "symbol": "TZERO", - "decimals": 18 - }, - "2040": { - "name": "VANRY", - "symbol": "VANRY", - "decimals": 18 - }, - "2043": { - "name": "NeuroWeb Token", - "symbol": "NEURO", - "decimals": 12 - }, - "2044": { - "name": "Shrapnel Gas Token", - "symbol": "SHRAPG", - "decimals": 18 - }, - "2045": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "2047": { - "name": "STOS", - "symbol": "STOS", - "decimals": 18 - }, - "2048": { - "name": "STOS", - "symbol": "STOS", - "decimals": 18 - }, - "2049": { - "name": "Movo Smart Chain", - "symbol": "MOVO", - "decimals": 18 - }, - "2077": { - "name": "Qkacoin", - "symbol": "QKA", - "decimals": 18 - }, - "2088": { - "name": "Altair", - "symbol": "AIR", - "decimals": 18 - }, - "2100": { - "name": "Ecoball Coin", - "symbol": "ECO", - "decimals": 18 - }, - "2101": { - "name": "Espuma Coin", - "symbol": "ECO", - "decimals": 18 - }, - "2109": { - "name": "Sama Token", - "symbol": "SAMA", - "decimals": 18 - }, - "2112": { - "name": "UCASH", - "symbol": "UCASH", - "decimals": 18 - }, - "2121": { - "name": "Catena", - "symbol": "CMCX", - "decimals": 18 - }, - "2122": { - "name": "METAD", - "symbol": "METAD", - "decimals": 18 - }, - "2124": { - "name": "Metaunit", - "symbol": "MEU", - "decimals": 18 - }, - "2136": { - "name": "Dolarz", - "symbol": "Dolarz", - "decimals": 18 - }, - "2137": { - "name": "USD Coin", - "symbol": "USDC", - "decimals": 18 - }, - "2138": { - "name": "testEther", - "symbol": "tETH", - "decimals": 18 - }, - "2140": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "2141": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "2151": { - "name": "BOSAGORA", - "symbol": "BOA", - "decimals": 18 - }, - "2152": { - "name": "FRA", - "symbol": "FRA", - "decimals": 18 - }, - "2153": { - "name": "FRA", - "symbol": "FRA", - "decimals": 18 - }, - "2154": { - "name": "FRA", - "symbol": "FRA", - "decimals": 18 - }, - "2162": { - "name": "Coin", - "symbol": "COIN", - "decimals": 18 - }, - "2199": { - "name": "Sama Token", - "symbol": "SAMA", - "decimals": 18 - }, - "2202": { - "name": "Antofy", - "symbol": "ABN", - "decimals": 18 - }, - "2203": { - "name": "Bitcoin", - "symbol": "BTC", - "decimals": 18 - }, - "2213": { - "name": "EVA", - "symbol": "EVA", - "decimals": 18 - }, - "2221": { - "name": "TKava", - "symbol": "TKAVA", - "decimals": 18 - }, - "2222": { - "name": "Kava", - "symbol": "KAVA", - "decimals": 18 - }, - "2223": { - "name": "VNDT", - "symbol": "VNDT", - "decimals": 18 - }, - "2241": { - "name": "Krest", - "symbol": "KRST", - "decimals": 18 - }, - "2300": { - "name": "BOMB Token", - "symbol": "BOMB", - "decimals": 18 - }, - "2306": { - "name": "Ebro", - "symbol": "ebro", - "decimals": 18 - }, - "2309": { - "name": "Arev", - "symbol": "AR\xC9V", - "decimals": 18 - }, - "2311": { - "name": "Test LPX", - "symbol": "tstLPX", - "decimals": 18 - }, - "2323": { - "name": "SMA", - "symbol": "tSMA", - "decimals": 18 - }, - "2330": { - "name": "Altcoin", - "symbol": "ALT", - "decimals": 18 - }, - "2331": { - "name": "RSS3", - "symbol": "RSS3", - "decimals": 18 - }, - "2332": { - "name": "Soma Native Token", - "symbol": "SMA", - "decimals": 18 - }, - "2340": { - "name": "Atla", - "symbol": "ATLA", - "decimals": 18 - }, - "2342": { - "name": "Omnia", - "symbol": "OMNIA", - "decimals": 18 - }, - "2355": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "2358": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "2370": { - "name": "Nexis", - "symbol": "NZT", - "decimals": 18 - }, - "2399": { - "name": "BOMB Token", - "symbol": "tBOMB", - "decimals": 18 - }, - "2400": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "2410": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "2415": { - "name": "XODEX Native Token", - "symbol": "XODEX", - "decimals": 18 - }, - "2425": { - "name": "King Of Legends", - "symbol": "KCC", - "decimals": 18 - }, - "2442": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "2458": { - "name": "Hybrid Chain Native Token", - "symbol": "tHRC", - "decimals": 18 - }, - "2468": { - "name": "Hybrid Chain Native Token", - "symbol": "HRC", - "decimals": 18 - }, - "2484": { - "name": "Unicorn Ultra Nebulas Testnet", - "symbol": "U2U", - "decimals": 18 - }, - "2522": { - "name": "Frax Ether", - "symbol": "frxETH", - "decimals": 18 - }, - "2525": { - "name": "Injective", - "symbol": "INJ", - "decimals": 18 - }, - "2559": { - "name": "KorthoChain", - "symbol": "KTO", - "decimals": 11 - }, - "2569": { - "name": "TechPay", - "symbol": "TPC", - "decimals": 18 - }, - "2606": { - "name": "Climate awaReness Coin", - "symbol": "CRC", - "decimals": 18 - }, - "2611": { - "name": "Redlight Coin", - "symbol": "REDLC", - "decimals": 18 - }, - "2612": { - "name": "EZChain", - "symbol": "EZC", - "decimals": 18 - }, - "2613": { - "name": "EZChain", - "symbol": "EZC", - "decimals": 18 - }, - "2625": { - "name": "WhiteBIT Coin", - "symbol": "WBT", - "decimals": 18 - }, - "2648": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "2649": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "2662": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "2710": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "2718": { - "name": "KLAOS", - "symbol": "KLAOS", - "decimals": 18 - }, - "2730": { - "name": "tXR", - "symbol": "tXR", - "decimals": 18 - }, - "2731": { - "name": "TIME", - "symbol": "TIME", - "decimals": 18 - }, - "2748": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "2777": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "2810": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "2882": { - "name": "IOTA", - "symbol": "IOTA", - "decimals": 18 - }, - "2907": { - "name": "Elux Chain", - "symbol": "ELUX", - "decimals": 18 - }, - "2911": { - "name": "TOPIA", - "symbol": "TOPIA", - "decimals": 18 - }, - "2941": { - "name": "Xenon Testnet", - "symbol": "tXEN", - "decimals": 18 - }, - "2999": { - "name": "BTY", - "symbol": "BTY", - "decimals": 18 - }, - "3000": { - "name": "CPAY", - "symbol": "CPAY", - "decimals": 18 - }, - "3001": { - "name": "CPAY", - "symbol": "CPAY", - "decimals": 18 - }, - "3003": { - "name": "Canxium", - "symbol": "CAU", - "decimals": 18 - }, - "3011": { - "name": "3ULL", - "symbol": "3ULL", - "decimals": 18 - }, - "3031": { - "name": "Orlando", - "symbol": "ORL", - "decimals": 18 - }, - "3033": { - "name": "Rebus", - "symbol": "REBUS", - "decimals": 18 - }, - "3068": { - "name": "Bifrost", - "symbol": "BFC", - "decimals": 18 - }, - "3073": { - "name": "Move", - "symbol": "MOVE", - "decimals": 18 - }, - "3084": { - "name": "XLNetwork", - "symbol": "XLN", - "decimals": 18 - }, - "3100": { - "name": "IMMU", - "symbol": "IMMU", - "decimals": 18 - }, - "3102": { - "name": "VFI", - "symbol": "VFI", - "decimals": 18 - }, - "3109": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "3110": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "3269": { - "name": "Dubxcoin mainnet", - "symbol": "DUBX", - "decimals": 18 - }, - "3270": { - "name": "Dubxcoin testnet", - "symbol": "TDUBX", - "decimals": 18 - }, - "3306": { - "name": "Debounce Network", - "symbol": "DB", - "decimals": 18 - }, - "3331": { - "name": "ZCore", - "symbol": "ZCR", - "decimals": 18 - }, - "3333": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "3334": { - "name": "Web3Q", - "symbol": "W3Q", - "decimals": 18 - }, - "3335": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "3338": { - "name": "peaq", - "symbol": "PEAQ", - "decimals": 18 - }, - "3400": { - "name": "PRB", - "symbol": "PRB", - "decimals": 18 - }, - "3424": { - "name": "Evolve", - "symbol": "EVO", - "decimals": 18 - }, - "3434": { - "name": "SCAI", - "symbol": "SCAI", - "decimals": 18 - }, - "3456": { - "name": "Bitcoin", - "symbol": "BTC", - "decimals": 18 - }, - "3490": { - "name": "GTC", - "symbol": "GTC", - "decimals": 18 - }, - "3500": { - "name": "PRB", - "symbol": "PRB", - "decimals": 18 - }, - "3501": { - "name": "JFIN Coin", - "symbol": "JFIN", - "decimals": 18 - }, - "3601": { - "name": "pando-token", - "symbol": "PTX", - "decimals": 18 - }, - "3602": { - "name": "pando-token", - "symbol": "PTX", - "decimals": 18 - }, - "3630": { - "name": "Tycooncoin", - "symbol": "TYCO", - "decimals": 18 - }, - "3636": { - "name": "Botanix", - "symbol": "BTC", - "decimals": 18 - }, - "3637": { - "name": "Botanix", - "symbol": "BTC", - "decimals": 18 - }, - "3639": { - "name": "ISLAMICOIN", - "symbol": "ISLAMI", - "decimals": 18 - }, - "3645": { - "name": "ISLAMICOIN", - "symbol": "ISLAMI", - "decimals": 18 - }, - "3666": { - "name": "J", - "symbol": "J", - "decimals": 18 - }, - "3690": { - "name": "Bittex", - "symbol": "BTX", - "decimals": 18 - }, - "3693": { - "name": "Empire", - "symbol": "EMPIRE", - "decimals": 18 - }, - "3698": { - "name": "SenjePowers", - "symbol": "SPC", - "decimals": 18 - }, - "3699": { - "name": "SenjePowers", - "symbol": "SPC", - "decimals": 18 - }, - "3737": { - "name": "Crossbell Token", - "symbol": "CSB", - "decimals": 18 - }, - "3776": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "3797": { - "name": "AlveyCoin", - "symbol": "ALV", - "decimals": 18 - }, - "3799": { - "name": "Testnet Tangle Network Token", - "symbol": "tTNT", - "decimals": 18 - }, - "3885": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "3888": { - "name": "KalyCoin", - "symbol": "KLC", - "decimals": 18 - }, - "3889": { - "name": "KalyCoin", - "symbol": "KLC", - "decimals": 18 - }, - "3912": { - "name": "DRAC", - "symbol": "DRAC", - "decimals": 18 - }, - "3939": { - "name": "DOS", - "symbol": "DOS", - "decimals": 18 - }, - "3966": { - "name": "DYNO Token", - "symbol": "DYNO", - "decimals": 18 - }, - "3967": { - "name": "DYNO Token", - "symbol": "tDYNO", - "decimals": 18 - }, - "3993": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "3999": { - "name": "YCC", - "symbol": "YCC", - "decimals": 18 - }, - "4000": { - "name": "OZONE", - "symbol": "OZO", - "decimals": 18 - }, - "4001": { - "name": "Peperium Chain Testnet", - "symbol": "PERIUM", - "decimals": 18 - }, - "4002": { - "name": "Fantom", - "symbol": "FTM", - "decimals": 18 - }, - "4003": { - "name": "XN", - "symbol": "XN", - "decimals": 18 - }, - "4040": { - "name": "Carbonium", - "symbol": "tCBR", - "decimals": 18 - }, - "4048": { - "name": "GP Token", - "symbol": "GP", - "decimals": 18 - }, - "4058": { - "name": "FTN", - "symbol": "FTN", - "decimals": 18 - }, - "4061": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "4062": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "4078": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "4080": { - "name": "Tobe Coin", - "symbol": "TBC", - "decimals": 18 - }, - "4090": { - "name": "FTN", - "symbol": "FTN", - "decimals": 18 - }, - "4096": { - "name": "BNI", - "symbol": "$BNI", - "decimals": 18 - }, - "4099": { - "name": "BNI", - "symbol": "$BNI", - "decimals": 18 - }, - "4102": { - "name": "testAIOZ", - "symbol": "AIOZ", - "decimals": 18 - }, - "4139": { - "name": "HEART", - "symbol": "HEART", - "decimals": 18 - }, - "4141": { - "name": "Tipboxcoin", - "symbol": "TPBX", - "decimals": 18 - }, - "4157": { - "name": "XFI", - "symbol": "XFI", - "decimals": 18 - }, - "4162": { - "name": "SX Network", - "symbol": "SX", - "decimals": 18 - }, - "4181": { - "name": "PHI", - "symbol": "\u03A6", - "decimals": 18 - }, - "4200": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "4201": { - "name": "TestLYX", - "symbol": "LYXt", - "decimals": 18 - }, - "4202": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "4242": { - "name": "Nexi", - "symbol": "NEXI", - "decimals": 18 - }, - "4243": { - "name": "NexiV2", - "symbol": "NEXI", - "decimals": 18 - }, - "4337": { - "name": "Beam", - "symbol": "BEAM", - "decimals": 18 - }, - "4400": { - "name": "Credit", - "symbol": "CREDIT", - "decimals": 18 - }, - "4444": { - "name": "Htmlcoin", - "symbol": "HTML", - "decimals": 8 - }, - "4460": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "4488": { - "name": "Hydra", - "symbol": "HYDRA", - "decimals": 18 - }, - "4544": { - "name": "Emoney Network", - "symbol": "EMYC", - "decimals": 18 - }, - "4613": { - "name": "VERY", - "symbol": "VERY", - "decimals": 18 - }, - "4653": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "4689": { - "name": "IoTeX", - "symbol": "IOTX", - "decimals": 18 - }, - "4690": { - "name": "IoTeX", - "symbol": "IOTX", - "decimals": 18 - }, - "4759": { - "name": "MEVerse", - "symbol": "MEV", - "decimals": 18 - }, - "4777": { - "name": "BlackFort Testnet Token", - "symbol": "TBXN", - "decimals": 18 - }, - "4801": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "4893": { - "name": "Globel Chain", - "symbol": "GC", - "decimals": 18 - }, - "4918": { - "name": "Venidium", - "symbol": "XVM", - "decimals": 18 - }, - "4919": { - "name": "Venidium", - "symbol": "XVM", - "decimals": 18 - }, - "4999": { - "name": "BlackFort Token", - "symbol": "BXN", - "decimals": 18 - }, - "5000": { - "name": "Mantle", - "symbol": "MNT", - "decimals": 18 - }, - "5001": { - "name": "Testnet Mantle", - "symbol": "MNT", - "decimals": 18 - }, - "5002": { - "name": "UNIT", - "symbol": "UNIT", - "decimals": 18 - }, - "5003": { - "name": "Sepolia Mantle", - "symbol": "MNT", - "decimals": 18 - }, - "5005": { - "name": "UNIT", - "symbol": "UNIT", - "decimals": 18 - }, - "5039": { - "name": "ONIGIRI", - "symbol": "ONGR", - "decimals": 18 - }, - "5040": { - "name": "ONIGIRI", - "symbol": "ONGR", - "decimals": 18 - }, - "5051": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "5100": { - "name": "S-Ether", - "symbol": "ETH", - "decimals": 18 - }, - "5101": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "5102": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "5103": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "5104": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "5105": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "5106": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "5112": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "5151": { - "name": "ZKME", - "symbol": "ZKME", - "decimals": 18 - }, - "5165": { - "name": "FTN", - "symbol": "FTN", - "decimals": 18 - }, - "5169": { - "name": "Service Unit Token", - "symbol": "SU", - "decimals": 18 - }, - "5177": { - "name": "TLChain Network", - "symbol": "TLC", - "decimals": 18 - }, - "5197": { - "name": "EraSwap", - "symbol": "ES", - "decimals": 18 - }, - "5234": { - "name": "eHMND", - "symbol": "eHMND", - "decimals": 18 - }, - "5315": { - "name": "UZMI", - "symbol": "UZMI", - "decimals": 18 - }, - "5317": { - "name": "TestBSC", - "symbol": "tBNB", - "decimals": 18 - }, - "5321": { - "name": "ITX", - "symbol": "ITX", - "decimals": 18 - }, - "5333": { - "name": "Netsbo", - "symbol": "NETS", - "decimals": 18 - }, - "5353": { - "name": "Tritanium Native Token", - "symbol": "tTRN", - "decimals": 18 - }, - "5372": { - "name": "Setl", - "symbol": "SETL", - "decimals": 18 - }, - "5424": { - "name": "EDEXA", - "symbol": "EDX", - "decimals": 18 - }, - "5439": { - "name": "EGAX", - "symbol": "EGAX", - "decimals": 18 - }, - "5522": { - "name": "VEX EVM TESTNET", - "symbol": "VEX", - "decimals": 18 - }, - "5551": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "5555": { - "name": "Oasys", - "symbol": "OAS", - "decimals": 18 - }, - "5611": { - "name": "BNB Chain Native Token", - "symbol": "tBNB", - "decimals": 18 - }, - "5615": { - "name": "tARC", - "symbol": "tARC", - "decimals": 18 - }, - "5616": { - "name": "Test Arct", - "symbol": "tARCT", - "decimals": 18 - }, - "5656": { - "name": "QIE Blockchain", - "symbol": "QIE", - "decimals": 18 - }, - "5675": { - "name": "Test Filecoin", - "symbol": "tFIL", - "decimals": 18 - }, - "5678": { - "name": "TANGO", - "symbol": "TANGO", - "decimals": 18 - }, - "5700": { - "name": "Testnet Syscoin", - "symbol": "tSYS", - "decimals": 18 - }, - "5729": { - "name": "Hik Token", - "symbol": "HIK", - "decimals": 18 - }, - "5758": { - "name": "SatoshiChain Coin", - "symbol": "SATS", - "decimals": 18 - }, - "5777": { - "name": "Ganache Test Ether", - "symbol": "ETH", - "decimals": 18 - }, - "5845": { - "name": "Tangle", - "symbol": "TNT", - "decimals": 18 - }, - "5851": { - "name": "ONG", - "symbol": "ONG", - "decimals": 18 - }, - "5858": { - "name": "Chang Coin Thailand", - "symbol": "CTH", - "decimals": 18 - }, - "5869": { - "name": "Rubid", - "symbol": "RBD", - "decimals": 18 - }, - "6000": { - "name": "BounceBit", - "symbol": "BB", - "decimals": 18 - }, - "6001": { - "name": "BounceBit", - "symbol": "BB", - "decimals": 18 - }, - "6065": { - "name": "TRES", - "symbol": "TRES", - "decimals": 18 - }, - "6066": { - "name": "TRES", - "symbol": "TRES", - "decimals": 18 - }, - "6102": { - "name": "CC", - "symbol": "tCC", - "decimals": 18 - }, - "6118": { - "name": "UPTN", - "symbol": "UPTN", - "decimals": 18 - }, - "6119": { - "name": "UPTN", - "symbol": "UPTN", - "decimals": 18 - }, - "6283": { - "name": "LAOS", - "symbol": "LAOS", - "decimals": 18 - }, - "6321": { - "name": "test-EAura", - "symbol": "eAura", - "decimals": 18 - }, - "6322": { - "name": "Aura", - "symbol": "AURA", - "decimals": 18 - }, - "6363": { - "name": "Digit Coin", - "symbol": "DGC", - "decimals": 18 - }, - "6398": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "6502": { - "name": "Peerpay", - "symbol": "P2P", - "decimals": 18 - }, - "6550": { - "name": "Flamma", - "symbol": "FLA", - "decimals": 18 - }, - "6552": { - "name": "Scolcoin", - "symbol": "SCOL", - "decimals": 18 - }, - "6565": { - "name": "FOX Native Token", - "symbol": "tFOX", - "decimals": 18 - }, - "6626": { - "name": "Pixie Chain Native Token", - "symbol": "PIX", - "decimals": 18 - }, - "6660": { - "name": "Latest", - "symbol": "LATEST", - "decimals": 18 - }, - "6661": { - "name": "Cybria", - "symbol": "CYBA", - "decimals": 18 - }, - "6666": { - "name": "Cybria", - "symbol": "CYBA", - "decimals": 18 - }, - "6678": { - "name": "Edge Matrix Chain Token", - "symbol": "EMC", - "decimals": 18 - }, - "6688": { - "name": "Eris", - "symbol": "ERIS", - "decimals": 18 - }, - "6699": { - "name": "OX", - "symbol": "OX", - "decimals": 18 - }, - "6701": { - "name": "PAXB", - "symbol": "PAXB", - "decimals": 18 - }, - "6779": { - "name": "compverse", - "symbol": "CPV", - "decimals": 18 - }, - "6789": { - "name": "Standard in Gold", - "symbol": "STAND", - "decimals": 18 - }, - "6805": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "6806": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "6868": { - "name": "POOLS Native Token", - "symbol": "POOLS", - "decimals": 18 - }, - "6969": { - "name": "Tomb", - "symbol": "TOMB", - "decimals": 18 - }, - "6999": { - "name": "PSC", - "symbol": "PSC", - "decimals": 18 - }, - "7000": { - "name": "Zeta", - "symbol": "ZETA", - "decimals": 18 - }, - "7001": { - "name": "Zeta", - "symbol": "ZETA", - "decimals": 18 - }, - "7007": { - "name": "BST Chain", - "symbol": "BSTC", - "decimals": 18 - }, - "7027": { - "name": "Ella", - "symbol": "ELLA", - "decimals": 18 - }, - "7070": { - "name": "Planq", - "symbol": "PLQ", - "decimals": 18 - }, - "7077": { - "name": "Planq", - "symbol": "tPLQ", - "decimals": 18 - }, - "7100": { - "name": "Dai Stablecoin", - "symbol": "DAI", - "decimals": 18 - }, - "7118": { - "name": "Help The Homeless Coin", - "symbol": "HTH", - "decimals": 18 - }, - "7171": { - "name": "BITROCK", - "symbol": "BROCK", - "decimals": 18 - }, - "7222": { - "name": "NIBI", - "symbol": "NIBI", - "decimals": 18 - }, - "7244": { - "name": "The ZEUS Token", - "symbol": "ZEUS", - "decimals": 18 - }, - "7300": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "7331": { - "name": "KLYNTAR", - "symbol": "KLY", - "decimals": 18 - }, - "7332": { - "name": "Zencash", - "symbol": "ZEN", - "decimals": 18 - }, - "7341": { - "name": "Shyft", - "symbol": "SHYFT", - "decimals": 18 - }, - "7484": { - "name": "Raba", - "symbol": "RABA", - "decimals": 18 - }, - "7518": { - "name": "MEVerse", - "symbol": "MEV", - "decimals": 18 - }, - "7560": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "7575": { - "name": "Testnet ADIL", - "symbol": "ADIL", - "decimals": 18 - }, - "7576": { - "name": "ADIL", - "symbol": "ADIL", - "decimals": 18 - }, - "7668": { - "name": "XRP", - "symbol": "XRP", - "decimals": 6 - }, - "7672": { - "name": "XRP", - "symbol": "XRP", - "decimals": 6 - }, - "7700": { - "name": "Canto", - "symbol": "CANTO", - "decimals": 18 - }, - "7701": { - "name": "Testnet Canto", - "symbol": "CANTO", - "decimals": 18 - }, - "7771": { - "name": "BITROCK", - "symbol": "BROCK", - "decimals": 18 - }, - "7774": { - "name": "GDCC", - "symbol": "GDCC", - "decimals": 18 - }, - "7775": { - "name": "GDCC", - "symbol": "GDCC", - "decimals": 18 - }, - "7776": { - "name": "PandaSea Coin", - "symbol": "PANDA", - "decimals": 18 - }, - "7777": { - "name": "Nano Machines", - "symbol": "NMAC", - "decimals": 18 - }, - "7778": { - "name": "ORENIUM", - "symbol": "ORE", - "decimals": 18 - }, - "7798": { - "name": "USDT Testnet", - "symbol": "USDT", - "decimals": 18 - }, - "7860": { - "name": "MAAL", - "symbol": "MAAL", - "decimals": 18 - }, - "7862": { - "name": "MAAL", - "symbol": "MAAL", - "decimals": 18 - }, - "7863": { - "name": "MAAL", - "symbol": "MAAL", - "decimals": 18 - }, - "7878": { - "name": "Hazlor Test Coin", - "symbol": "TSCAS", - "decimals": 18 - }, - "7887": { - "name": "Ethereum", - "symbol": "ETH", - "decimals": 18 - }, - "7895": { - "name": "ARD", - "symbol": "tARD", - "decimals": 18 - }, - "7923": { - "name": "Dot Blox", - "symbol": "DTBX", - "decimals": 18 - }, - "7924": { - "name": "MO", - "symbol": "MO", - "decimals": 18 - }, - "7979": { - "name": "DOS", - "symbol": "DOS", - "decimals": 18 - }, - "8000": { - "name": "Tele", - "symbol": "TELE", - "decimals": 18 - }, - "8001": { - "name": "Tele", - "symbol": "TELE", - "decimals": 18 - }, - "8008": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "8029": { - "name": "MDGL Token", - "symbol": "MDGLT", - "decimals": 18 - }, - "8047": { - "name": "Best Of All Time Token", - "symbol": "BOAT", - "decimals": 18 - }, - "8054": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "8080": { - "name": "Shardeum SHM", - "symbol": "SHM", - "decimals": 18 - }, - "8081": { - "name": "Shardeum SHM", - "symbol": "SHM", - "decimals": 18 - }, - "8082": { - "name": "Shardeum SHM", - "symbol": "SHM", - "decimals": 18 - }, - "8086": { - "name": "Bitcoin", - "symbol": "BTC", - "decimals": 18 - }, - "8087": { - "name": "E-Dollar", - "symbol": "USD", - "decimals": 18 - }, - "8098": { - "name": "StreamuX", - "symbol": "SmuX", - "decimals": 18 - }, - "8131": { - "name": "Qitmeer Testnet", - "symbol": "MEER-T", - "decimals": 18 - }, - "8132": { - "name": "Qitmeer Mixnet", - "symbol": "MEER-M", - "decimals": 18 - }, - "8133": { - "name": "Qitmeer Privnet", - "symbol": "MEER-P", - "decimals": 18 - }, - "8134": { - "name": "Amana Mainnet", - "symbol": "MEER", - "decimals": 18 - }, - "8135": { - "name": "Flana Mainnet", - "symbol": "MEER", - "decimals": 18 - }, - "8136": { - "name": "Mizana Mainnet", - "symbol": "MEER", - "decimals": 18 - }, - "8181": { - "name": "Testnet BeOne Chain", - "symbol": "tBOC", - "decimals": 18 - }, - "8192": { - "name": "TQF", - "symbol": "TQF", - "decimals": 18 - }, - "8194": { - "name": "tTQF", - "symbol": "TTQF", - "decimals": 18 - }, - "8217": { - "name": "KAIA", - "symbol": "KLAY", - "decimals": 18 - }, - "8227": { - "name": "FUEL", - "symbol": "FUEL", - "decimals": 18 - }, - "8272": { - "name": "BLOCKTON", - "symbol": "BTON", - "decimals": 18 - }, - "8285": { - "name": "Kortho Test", - "symbol": "KTO", - "decimals": 11 - }, - "8329": { - "name": "Lorenzo stBTC", - "symbol": "stBTC", - "decimals": 18 - }, - "8333": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "8387": { - "name": "Functionally Universal Coin Kind", - "symbol": "FUCK", - "decimals": 18 - }, - "8453": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "8545": { - "name": "Chakra", - "symbol": "CKR", - "decimals": 18 - }, - "8654": { - "name": "Toki", - "symbol": "TOKI", - "decimals": 18 - }, - "8655": { - "name": "Toki", - "symbol": "TOKI", - "decimals": 18 - }, - "8668": { - "name": "Hela HLUSD", - "symbol": "HLUSD", - "decimals": 18 - }, - "8723": { - "name": "TOOL Global", - "symbol": "OLO", - "decimals": 18 - }, - "8724": { - "name": "TOOL Global", - "symbol": "OLO", - "decimals": 18 - }, - "8726": { - "name": "Storagechain", - "symbol": "STOR", - "decimals": 18 - }, - "8727": { - "name": "Storagechain", - "symbol": "STOR", - "decimals": 18 - }, - "8732": { - "name": "Bullions", - "symbol": "BLN", - "decimals": 18 - }, - "8738": { - "name": "Alph Network", - "symbol": "ALPH", - "decimals": 18 - }, - "8768": { - "name": "TMY", - "symbol": "TMY", - "decimals": 18 - }, - "8822": { - "name": "IOTA", - "symbol": "IOTA", - "decimals": 18 - }, - "8844": { - "name": "tHydra", - "symbol": "tHYDRA", - "decimals": 18 - }, - "8848": { - "name": "MARO", - "symbol": "MARO", - "decimals": 18 - }, - "8866": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "8869": { - "name": "LIF3", - "symbol": "LIF3", - "decimals": 18 - }, - "8880": { - "name": "Unique", - "symbol": "UNQ", - "decimals": 18 - }, - "8881": { - "name": "Quartz", - "symbol": "QTZ", - "decimals": 18 - }, - "8882": { - "name": "Opal", - "symbol": "UNQ", - "decimals": 18 - }, - "8883": { - "name": "Quartz", - "symbol": "QTZ", - "decimals": 18 - }, - "8886": { - "name": "Ave Native Token", - "symbol": "tAVE", - "decimals": 18 - }, - "8888": { - "name": "XETA", - "symbol": "XETA", - "decimals": 18 - }, - "8889": { - "name": "VSC", - "symbol": "VSC", - "decimals": 18 - }, - "8890": { - "name": "ORENIUM", - "symbol": "tORE", - "decimals": 18 - }, - "8898": { - "name": "Mammoth Token", - "symbol": "MMT", - "decimals": 18 - }, - "8899": { - "name": "JIBCOIN", - "symbol": "JBC", - "decimals": 18 - }, - "8911": { - "name": "ALG", - "symbol": "ALG", - "decimals": 18 - }, - "8912": { - "name": "ALG", - "symbol": "ALG", - "decimals": 18 - }, - "8921": { - "name": "ALG", - "symbol": "ALG", - "decimals": 18 - }, - "8922": { - "name": "ALG", - "symbol": "ALG", - "decimals": 18 - }, - "8989": { - "name": "Giant Mammoth Coin", - "symbol": "GMMT", - "decimals": 18 - }, - "8995": { - "name": "BERG", - "symbol": "U+25B3", - "decimals": 18 - }, - "9000": { - "name": "test-Evmos", - "symbol": "tEVMOS", - "decimals": 18 - }, - "9001": { - "name": "Evmos", - "symbol": "EVMOS", - "decimals": 18 - }, - "9007": { - "name": "Shido Testnet Token", - "symbol": "SHIDO", - "decimals": 18 - }, - "9008": { - "name": "Shido Mainnet Token", - "symbol": "SHIDO", - "decimals": 18 - }, - "9012": { - "name": "BerylBit Chain Native Token", - "symbol": "BRB", - "decimals": 18 - }, - "9024": { - "name": "Nexa Testnet Token", - "symbol": "NEXB", - "decimals": 18 - }, - "9025": { - "name": "Nexa Mainnet Token", - "symbol": "NEXB", - "decimals": 18 - }, - "9069": { - "name": "Apex Fusion Token", - "symbol": "AP3X", - "decimals": 18 - }, - "9070": { - "name": "Apex Fusion Token", - "symbol": "tAP3X", - "decimals": 18 - }, - "9100": { - "name": "GN Coin", - "symbol": "GNC", - "decimals": 18 - }, - "9223": { - "name": "Codefin", - "symbol": "COF", - "decimals": 18 - }, - "9339": { - "name": "Dogcoin", - "symbol": "DOGS", - "decimals": 18 - }, - "9372": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "9393": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "9395": { - "name": "MTHN", - "symbol": "MTHN", - "decimals": 18 - }, - "9496": { - "name": "Testnet WeaveVM Token", - "symbol": "tWVM", - "decimals": 18 - }, - "9527": { - "name": "Rangers Protocol Gas", - "symbol": "tRPG", - "decimals": 18 - }, - "9528": { - "name": "QET", - "symbol": "QET", - "decimals": 18 - }, - "9559": { - "name": "Neonlink Native Token", - "symbol": "tNEON", - "decimals": 18 - }, - "9700": { - "name": "Oort", - "symbol": "OORT", - "decimals": 18 - }, - "9728": { - "name": "Boba Token", - "symbol": "BOBA", - "decimals": 18 - }, - "9768": { - "name": "MainnetZ", - "symbol": "NetZ", - "decimals": 18 - }, - "9779": { - "name": "Pepe", - "symbol": "WPEPE", - "decimals": 18 - }, - "9789": { - "name": "Tabi", - "symbol": "TABI", - "decimals": 18 - }, - "9790": { - "name": "swth", - "symbol": "SWTH", - "decimals": 18 - }, - "9792": { - "name": "swth", - "symbol": "SWTH", - "decimals": 18 - }, - "9797": { - "name": "OptimusZ7", - "symbol": "OZ7", - "decimals": 18 - }, - "9818": { - "name": "tIMP", - "symbol": "tIMP", - "decimals": 18 - }, - "9819": { - "name": "IMP", - "symbol": "IMP", - "decimals": 18 - }, - "9876": { - "name": "BINARY", - "symbol": "BNRY", - "decimals": 18 - }, - "9888": { - "name": "Dogecoin", - "symbol": "DOGE", - "decimals": 18 - }, - "9898": { - "name": "Larissa", - "symbol": "LRS", - "decimals": 18 - }, - "9911": { - "name": "ESPENTO", - "symbol": "SPENT", - "decimals": 18 - }, - "9977": { - "name": "MIND Coin", - "symbol": "tMIND", - "decimals": 18 - }, - "9980": { - "name": "BNB Chain Native Token", - "symbol": "BNB", - "decimals": 18 - }, - "9981": { - "name": "V2X", - "symbol": "V2X", - "decimals": 18 - }, - "9990": { - "name": "Agung", - "symbol": "AGNG", - "decimals": 18 - }, - "9996": { - "name": "MIND Coin", - "symbol": "MIND", - "decimals": 18 - }, - "9997": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "9998": { - "name": "Ztcer", - "symbol": "ZTC", - "decimals": 5 - }, - "9999": { - "name": "MYN", - "symbol": "MYN", - "decimals": 18 - }, - "10000": { - "name": "Bitcoin Cash", - "symbol": "BCH", - "decimals": 18 - }, - "10001": { - "name": "Bitcoin Cash Test Token", - "symbol": "BCHT", - "decimals": 18 - }, - "10024": { - "name": "Gon Token", - "symbol": "GT", - "decimals": 18 - }, - "10081": { - "name": "Japan Open Chain Testnet Token", - "symbol": "JOCT", - "decimals": 18 - }, - "10086": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "10096": { - "name": "MNV", - "symbol": "MNV", - "decimals": 18 - }, - "10101": { - "name": "GEN", - "symbol": "GEN", - "decimals": 18 - }, - "10200": { - "name": "Chiado xDAI", - "symbol": "XDAI", - "decimals": 18 - }, - "10201": { - "name": "Power", - "symbol": "PWR", - "decimals": 18 - }, - "10222": { - "name": "GLC", - "symbol": "GLC", - "decimals": 18 - }, - "10242": { - "name": "Arthera", - "symbol": "AA", - "decimals": 18 - }, - "10243": { - "name": "Arthera", - "symbol": "AA", - "decimals": 18 - }, - "10248": { - "name": "0XT", - "symbol": "0XT", - "decimals": 18 - }, - "10321": { - "name": "TAO", - "symbol": "TAO", - "decimals": 18 - }, - "10324": { - "name": "TAO", - "symbol": "TAO", - "decimals": 18 - }, - "10395": { - "name": "Worldland", - "symbol": "WLC", - "decimals": 18 - }, - "10507": { - "name": "NUM Token", - "symbol": "NUM", - "decimals": 18 - }, - "10508": { - "name": "NUM Token", - "symbol": "NUM", - "decimals": 18 - }, - "10823": { - "name": "CryptoCoinPay", - "symbol": "CCP", - "decimals": 18 - }, - "10849": { - "name": "L1", - "symbol": "L1", - "decimals": 18 - }, - "10850": { - "name": "L1 ID", - "symbol": "L1ID", - "decimals": 18 - }, - "10946": { - "name": "Quadrans Coin", - "symbol": "QDC", - "decimals": 18 - }, - "10947": { - "name": "Quadrans Testnet Coin", - "symbol": "tQDC", - "decimals": 18 - }, - "11011": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "11110": { - "name": "Astra", - "symbol": "ASA", - "decimals": 18 - }, - "11111": { - "name": "WAGMI", - "symbol": "WGM", - "decimals": 18 - }, - "11115": { - "name": "test-Astra", - "symbol": "tASA", - "decimals": 18 - }, - "11119": { - "name": "HashBit Native Token", - "symbol": "HBIT", - "decimals": 18 - }, - "11124": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "11221": { - "name": "Shine", - "symbol": "SC20", - "decimals": 18 - }, - "11227": { - "name": "JIRI", - "symbol": "TZW", - "decimals": 18 - }, - "11235": { - "name": "Islamic Coin", - "symbol": "ISLM", - "decimals": 18 - }, - "11437": { - "name": "Shyft Test Token", - "symbol": "SHYFTT", - "decimals": 18 - }, - "11501": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "11503": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "11521": { - "name": "SATS", - "symbol": "SATS", - "decimals": 18 - }, - "11612": { - "name": "Sardis", - "symbol": "SRDX", - "decimals": 18 - }, - "11822": { - "name": "ART", - "symbol": "ART", - "decimals": 18 - }, - "11891": { - "name": "Arianee", - "symbol": "ARIA20", - "decimals": 18 - }, - "12001": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "12009": { - "name": "SatoshiChain Coin", - "symbol": "SATS", - "decimals": 18 - }, - "12020": { - "name": "Aternos", - "symbol": "ATR", - "decimals": 18 - }, - "12051": { - "name": "ZERO", - "symbol": "tZERO", - "decimals": 18 - }, - "12052": { - "name": "ZERO", - "symbol": "ZERO", - "decimals": 18 - }, - "12123": { - "name": "BRC Chain mainnet native token", - "symbol": "BRC", - "decimals": 18 - }, - "12306": { - "name": "FIBONACCI UTILITY TOKEN", - "symbol": "FIBO", - "decimals": 18 - }, - "12321": { - "name": "Blg", - "symbol": "BLG", - "decimals": 18 - }, - "12324": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "12325": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "12345": { - "name": "FITFI", - "symbol": "FITFI", - "decimals": 18 - }, - "12553": { - "name": "RSS3", - "symbol": "RSS3", - "decimals": 18 - }, - "12715": { - "name": "Rikeza", - "symbol": "RIK", - "decimals": 18 - }, - "12781": { - "name": "Playdapp", - "symbol": "PDA", - "decimals": 18 - }, - "12890": { - "name": "Quantum Chain", - "symbol": "tQNET", - "decimals": 18 - }, - "12898": { - "name": "BTLT Token", - "symbol": "BTLT", - "decimals": 18 - }, - "13000": { - "name": "ECG", - "symbol": "ECG", - "decimals": 18 - }, - "13308": { - "name": "Credit", - "symbol": "CREDIT", - "decimals": 18 - }, - "13337": { - "name": "Beam", - "symbol": "BEAM", - "decimals": 18 - }, - "13371": { - "name": "IMX", - "symbol": "IMX", - "decimals": 18 - }, - "13381": { - "name": "Phoenix", - "symbol": "PHX", - "decimals": 18 - }, - "13396": { - "name": "Masa Token", - "symbol": "MASA", - "decimals": 18 - }, - "13473": { - "name": "Test IMX", - "symbol": "tIMX", - "decimals": 18 - }, - "13505": { - "name": "Sepolia Gravity", - "symbol": "G", - "decimals": 18 - }, - "13600": { - "name": "Kronobit", - "symbol": "KNB", - "decimals": 18 - }, - "13812": { - "name": "Susono", - "symbol": "OPN", - "decimals": 18 - }, - "14000": { - "name": "ECG", - "symbol": "ECG", - "decimals": 18 - }, - "14324": { - "name": "Evolve", - "symbol": "EVO", - "decimals": 18 - }, - "14333": { - "name": "Vitruveo Test Coin", - "symbol": "tVTRU", - "decimals": 18 - }, - "14801": { - "name": "DAT", - "symbol": "DAT", - "decimals": 18 - }, - "14853": { - "name": "eHMND", - "symbol": "eHMND", - "decimals": 18 - }, - "15003": { - "name": "Dev IMX", - "symbol": "dIMX", - "decimals": 18 - }, - "15257": { - "name": "Poodl", - "symbol": "POODL", - "decimals": 18 - }, - "15259": { - "name": "Poodl", - "symbol": "POODL", - "decimals": 18 - }, - "15430": { - "name": "KYMTC", - "symbol": "KYMTC", - "decimals": 18 - }, - "15551": { - "name": "LOOP", - "symbol": "LOOP", - "decimals": 18 - }, - "15555": { - "name": "Trust EVM", - "symbol": "EVM", - "decimals": 18 - }, - "15557": { - "name": "EOS", - "symbol": "EOS", - "decimals": 18 - }, - "16000": { - "name": "MetaDot Token", - "symbol": "MTT", - "decimals": 18 - }, - "16001": { - "name": "MetaDot Token TestNet", - "symbol": "MTTest", - "decimals": 18 - }, - "16116": { - "name": "Oasys", - "symbol": "OAS", - "decimals": 18 - }, - "16166": { - "name": "Cypherium", - "symbol": "CPH", - "decimals": 18 - }, - "16180": { - "name": "PLYR", - "symbol": "PLYR", - "decimals": 18 - }, - "16350": { - "name": "Testnet INC", - "symbol": "INC", - "decimals": 18 - }, - "16481": { - "name": "Pivotal Plus", - "symbol": "PLUS", - "decimals": 18 - }, - "16507": { - "name": "Genesys", - "symbol": "GSYS", - "decimals": 18 - }, - "16600": { - "name": "A0GI", - "symbol": "A0GI", - "decimals": 18 - }, - "16688": { - "name": "Eris", - "symbol": "ERIS", - "decimals": 18 - }, - "16718": { - "name": "Amber", - "symbol": "AMB", - "decimals": 18 - }, - "16888": { - "name": "tIvar", - "symbol": "tIVAR", - "decimals": 18 - }, - "17000": { - "name": "Testnet ETH", - "symbol": "ETH", - "decimals": 18 - }, - "17069": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "17071": { - "name": "OnchainPoints.xyz", - "symbol": "POP", - "decimals": 18 - }, - "17117": { - "name": "Oasys", - "symbol": "OAS", - "decimals": 18 - }, - "17171": { - "name": "G8Chain", - "symbol": "G8C", - "decimals": 18 - }, - "17172": { - "name": "Eclipse", - "symbol": "ECLP", - "decimals": 16 - }, - "17180": { - "name": "Palette Token", - "symbol": "PLT", - "decimals": 18 - }, - "17217": { - "name": "KONET", - "symbol": "KONET", - "decimals": 18 - }, - "17777": { - "name": "EOS", - "symbol": "EOS", - "decimals": 18 - }, - "18000": { - "name": "ZKST", - "symbol": "ZKST", - "decimals": 18 - }, - "18122": { - "name": "STN", - "symbol": "STN", - "decimals": 18 - }, - "18159": { - "name": "Proof Of Memes", - "symbol": "POM", - "decimals": 18 - }, - "18181": { - "name": "G8Coin", - "symbol": "G8C", - "decimals": 18 - }, - "18233": { - "name": "unreal Ether", - "symbol": "reETH", - "decimals": 18 - }, - "18686": { - "name": "MXC zkEVM Moonchain", - "symbol": "MXC", - "decimals": 18 - }, - "18888": { - "name": "Titan tkx", - "symbol": "TKX", - "decimals": 18 - }, - "18889": { - "name": "Titan tkx", - "symbol": "TKX", - "decimals": 18 - }, - "19011": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "19077": { - "name": "BCX", - "symbol": "BCX", - "decimals": 18 - }, - "19191": { - "name": "BCX", - "symbol": "BCX", - "decimals": 18 - }, - "19224": { - "name": "Decentraconnect Social", - "symbol": "DCSM", - "decimals": 18 - }, - "19527": { - "name": "Magnet Network", - "symbol": "DOT", - "decimals": 18 - }, - "19600": { - "name": "LBRY Credits", - "symbol": "LBC", - "decimals": 8 - }, - "19845": { - "name": "BTCIX Network", - "symbol": "BTCIX", - "decimals": 18 - }, - "20001": { - "name": "EthereumPoW", - "symbol": "ETHW", - "decimals": 18 - }, - "20041": { - "name": "Niza Global", - "symbol": "NIZA", - "decimals": 18 - }, - "20073": { - "name": "Niza Global", - "symbol": "NIZA", - "decimals": 18 - }, - "20729": { - "name": "Callisto", - "symbol": "CLO", - "decimals": 18 - }, - "20736": { - "name": "Hooked P2", - "symbol": "hP2", - "decimals": 18 - }, - "20765": { - "name": "Jono11 Token", - "symbol": "JONO", - "decimals": 18 - }, - "21004": { - "name": "C4EI", - "symbol": "C4EI", - "decimals": 18 - }, - "21133": { - "name": "AAH", - "symbol": "AAH", - "decimals": 18 - }, - "21223": { - "name": "DCP", - "symbol": "DCP", - "decimals": 18 - }, - "21224": { - "name": "DCP", - "symbol": "DCP", - "decimals": 18 - }, - "21337": { - "name": "CPAY", - "symbol": "CPAY", - "decimals": 18 - }, - "21363": { - "name": "Lestnet Ether", - "symbol": "LETH", - "decimals": 18 - }, - "21816": { - "name": "omChain", - "symbol": "OMC", - "decimals": 18 - }, - "21912": { - "name": "Origin NFT", - "symbol": "ONF", - "decimals": 18 - }, - "22023": { - "name": "shuffle", - "symbol": "SFL", - "decimals": 18 - }, - "22040": { - "name": "Amber", - "symbol": "AMB", - "decimals": 18 - }, - "22222": { - "name": "Zebec", - "symbol": "ZBC", - "decimals": 18 - }, - "22324": { - "name": "GoldX", - "symbol": "GOLDX", - "decimals": 18 - }, - "22776": { - "name": "MAPO", - "symbol": "MAPO", - "decimals": 18 - }, - "23006": { - "name": "Antofy", - "symbol": "ABN", - "decimals": 18 - }, - "23118": { - "name": "IDE", - "symbol": "IDE", - "decimals": 18 - }, - "23294": { - "name": "Sapphire Rose", - "symbol": "ROSE", - "decimals": 18 - }, - "23295": { - "name": "Sapphire Test Rose", - "symbol": "TEST", - "decimals": 18 - }, - "23451": { - "name": "DreyerX", - "symbol": "DRX", - "decimals": 18 - }, - "23452": { - "name": "DreyerX", - "symbol": "DRX", - "decimals": 18 - }, - "23888": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "24076": { - "name": "KYMTC", - "symbol": "KYMTC", - "decimals": 18 - }, - "24484": { - "name": "Webchain Ether", - "symbol": "WEB", - "decimals": 18 - }, - "24734": { - "name": "MintMe.com Coin", - "symbol": "MINTME", - "decimals": 18 - }, - "25186": { - "name": "LiquidLayer", - "symbol": "LILA", - "decimals": 18 - }, - "25839": { - "name": "AlveyCoin Testnet", - "symbol": "tALV", - "decimals": 18 - }, - "25888": { - "name": "GOLDT", - "symbol": "GOLDT", - "decimals": 18 - }, - "25925": { - "name": "Bitkub Coin", - "symbol": "tKUB", - "decimals": 18 - }, - "26026": { - "name": "Ferrum", - "symbol": "tFRM", - "decimals": 18 - }, - "26482": { - "name": "DUCX", - "symbol": "DUCX", - "decimals": 18 - }, - "26483": { - "name": "DUCX", - "symbol": "DUCX", - "decimals": 18 - }, - "26600": { - "name": "Hertz", - "symbol": "HTZ", - "decimals": 18 - }, - "26863": { - "name": "OAC", - "symbol": "OAC", - "decimals": 18 - }, - "27181": { - "name": "KLAOS", - "symbol": "KLAOS", - "decimals": 18 - }, - "27483": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "27827": { - "name": "ZERO", - "symbol": "ZERO", - "decimals": 18 - }, - "28516": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "28518": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "28528": { - "name": "Goerli Ether", - "symbol": "ETH", - "decimals": 18 - }, - "28882": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "29112": { - "name": "TOPIA", - "symbol": "TOPIA", - "decimals": 18 - }, - "29223": { - "name": "Nexa", - "symbol": "NEXA", - "decimals": 18 - }, - "29536": { - "name": "KaiChain Testnet Native Token", - "symbol": "KEC", - "decimals": 18 - }, - "29548": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "30067": { - "name": "ECE", - "symbol": "ECE", - "decimals": 18 - }, - "30088": { - "name": "Miyou", - "symbol": "MY", - "decimals": 18 - }, - "30103": { - "name": "Canxium", - "symbol": "CAU", - "decimals": 18 - }, - "30730": { - "name": "Move", - "symbol": "MOVE", - "decimals": 18 - }, - "30731": { - "name": "Move", - "symbol": "MOVE", - "decimals": 18 - }, - "30732": { - "name": "Move", - "symbol": "MOVE", - "decimals": 18 - }, - "31102": { - "name": "Ethersocial Network Ether", - "symbol": "ESN", - "decimals": 18 - }, - "31223": { - "name": "CloudTx", - "symbol": "CLD", - "decimals": 18 - }, - "31224": { - "name": "CloudTx", - "symbol": "CLD", - "decimals": 18 - }, - "31337": { - "name": "GoChain Coin", - "symbol": "GO", - "decimals": 18 - }, - "31414": { - "name": "MTHN Testnet", - "symbol": "MTHN", - "decimals": 18 - }, - "31753": { - "name": "Intdestcoin", - "symbol": "INTD", - "decimals": 18 - }, - "31754": { - "name": "Intdestcoin Testnet", - "symbol": "INTD", - "decimals": 18 - }, - "32001": { - "name": "W3Gamez Testnet Ether", - "symbol": "ETH", - "decimals": 18 - }, - "32382": { - "name": "SANR", - "symbol": "SANR", - "decimals": 18 - }, - "32520": { - "name": "Bitrise Token", - "symbol": "Brise", - "decimals": 18 - }, - "32659": { - "name": "Fusion", - "symbol": "FSN", - "decimals": 18 - }, - "32769": { - "name": "Zilliqa", - "symbol": "ZIL", - "decimals": 18 - }, - "32990": { - "name": "Zilliqa", - "symbol": "ZIL", - "decimals": 18 - }, - "33033": { - "name": "Entangle", - "symbol": "NGL", - "decimals": 18 - }, - "33101": { - "name": "Zilliqa", - "symbol": "ZIL", - "decimals": 18 - }, - "33103": { - "name": "Zilliqa", - "symbol": "ZIL", - "decimals": 18 - }, - "33111": { - "name": "ApeCoin", - "symbol": "APE", - "decimals": 18 - }, - "33133": { - "name": "Entangle", - "symbol": "NGL", - "decimals": 18 - }, - "33210": { - "name": "XCLOUD", - "symbol": "XCLOUD", - "decimals": 18 - }, - "33333": { - "name": "Aves", - "symbol": "AVS", - "decimals": 18 - }, - "33385": { - "name": "Zilliqa", - "symbol": "ZIL", - "decimals": 18 - }, - "33401": { - "name": "Sling", - "symbol": "SLING", - "decimals": 18 - }, - "33469": { - "name": "Zilliqa", - "symbol": "ZIL", - "decimals": 18 - }, - "33979": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "34443": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "34504": { - "name": "The ZEUS Token", - "symbol": "ZEUS", - "decimals": 18 - }, - "35011": { - "name": "TARO Coin", - "symbol": "taro", - "decimals": 18 - }, - "35441": { - "name": "QGOV", - "symbol": "QGOV", - "decimals": 18 - }, - "35443": { - "name": "Q token", - "symbol": "Q", - "decimals": 18 - }, - "38400": { - "name": "Rangers Protocol Gas", - "symbol": "cmRPG", - "decimals": 18 - }, - "38401": { - "name": "Rangers Protocol Gas", - "symbol": "ttRPG", - "decimals": 18 - }, - "39656": { - "name": "Primal Network", - "symbol": "PRM", - "decimals": 18 - }, - "39797": { - "name": "Energi", - "symbol": "NRG", - "decimals": 18 - }, - "39815": { - "name": "OHO", - "symbol": "OHO", - "decimals": 18 - }, - "41455": { - "name": "Aleph Zero", - "symbol": "AZERO", - "decimals": 18 - }, - "41500": { - "name": "Oxyn Gas", - "symbol": "OXYN", - "decimals": 18 - }, - "42069": { - "name": "pegglecoin", - "symbol": "peggle", - "decimals": 18 - }, - "42072": { - "name": "Agent", - "symbol": "AGENT", - "decimals": 18 - }, - "42161": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "42170": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "42220": { - "name": "CELO", - "symbol": "CELO", - "decimals": 18 - }, - "42261": { - "name": "Emerald Rose", - "symbol": "ROSE", - "decimals": 18 - }, - "42262": { - "name": "Emerald Rose", - "symbol": "ROSE", - "decimals": 18 - }, - "42355": { - "name": "GoldX", - "symbol": "GOLDX", - "decimals": 18 - }, - "42421": { - "name": "Real World Asset", - "symbol": "RWA", - "decimals": 18 - }, - "42766": { - "name": "USDC Token", - "symbol": "USDC", - "decimals": 18 - }, - "42793": { - "name": "tez", - "symbol": "XTZ", - "decimals": 18 - }, - "42801": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "42888": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "43110": { - "name": "Athereum Ether", - "symbol": "ATH", - "decimals": 18 - }, - "43111": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "43113": { - "name": "Avalanche", - "symbol": "AVAX", - "decimals": 18 - }, - "43114": { - "name": "Avalanche", - "symbol": "AVAX", - "decimals": 18 - }, - "43851": { - "name": "USDC Token", - "symbol": "USDC", - "decimals": 18 - }, - "44444": { - "name": "FREN", - "symbol": "FREN", - "decimals": 18 - }, - "44445": { - "name": "Quantum", - "symbol": "QTM", - "decimals": 18 - }, - "44787": { - "name": "CELO", - "symbol": "CELO", - "decimals": 18 - }, - "45000": { - "name": "TXL", - "symbol": "TXL", - "decimals": 18 - }, - "45454": { - "name": "SWP", - "symbol": "SWP", - "decimals": 18 - }, - "45510": { - "name": "Deelance", - "symbol": "DEE", - "decimals": 18 - }, - "45513": { - "name": "Bless", - "symbol": "BLESS", - "decimals": 18 - }, - "46688": { - "name": "Testnet Fusion", - "symbol": "T-FSN", - "decimals": 18 - }, - "47763": { - "name": "Gas", - "symbol": "GAS", - "decimals": 18 - }, - "47803": { - "name": "BAX", - "symbol": "BAX", - "decimals": 18 - }, - "47805": { - "name": "REI", - "symbol": "REI", - "decimals": 18 - }, - "48795": { - "name": "FUEL", - "symbol": "FUEL", - "decimals": 18 - }, - "48899": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "48900": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "49049": { - "name": "WIRE", - "symbol": "WIRE", - "decimals": 18 - }, - "49088": { - "name": "Bifrost", - "symbol": "BFC", - "decimals": 18 - }, - "49321": { - "name": "GUN", - "symbol": "GUN", - "decimals": 18 - }, - "49797": { - "name": "Energi", - "symbol": "NRG", - "decimals": 18 - }, - "50001": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "50005": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "50006": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "50021": { - "name": "GCD", - "symbol": "GCD", - "decimals": 18 - }, - "51178": { - "name": "Lumoz Test Token", - "symbol": "MOZ", - "decimals": 18 - }, - "51712": { - "name": "Sardis", - "symbol": "SRDX", - "decimals": 18 - }, - "52014": { - "name": "Electroneum", - "symbol": "ETN", - "decimals": 18 - }, - "53277": { - "name": "DOID", - "symbol": "DOID", - "decimals": 18 - }, - "53302": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "53457": { - "name": "DODO", - "symbol": "DODO", - "decimals": 18 - }, - "53935": { - "name": "Jewel", - "symbol": "JEWEL", - "decimals": 18 - }, - "54211": { - "name": "Islamic Coin", - "symbol": "ISLMT", - "decimals": 18 - }, - "54321": { - "name": "Toroe", - "symbol": "TOROE", - "decimals": 18 - }, - "55004": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "55551": { - "name": "Photon", - "symbol": "PTON", - "decimals": 18 - }, - "55555": { - "name": "Rei", - "symbol": "REI", - "decimals": 18 - }, - "55556": { - "name": "tRei", - "symbol": "tREI", - "decimals": 18 - }, - "55614": { - "name": "Flamma", - "symbol": "FLA", - "decimals": 18 - }, - "56026": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "56288": { - "name": "Boba Token", - "symbol": "BOBA", - "decimals": 18 - }, - "56400": { - "name": "ZERO", - "symbol": "ZERO", - "decimals": 18 - }, - "56789": { - "name": "Nova", - "symbol": "NOVA", - "decimals": 18 - }, - "56797": { - "name": "DOID", - "symbol": "DOID", - "decimals": 18 - }, - "57000": { - "name": "Testnet Syscoin", - "symbol": "TSYS", - "decimals": 18 - }, - "57451": { - "name": "COINSEC", - "symbol": "SEC", - "decimals": 18 - }, - "58008": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "59140": { - "name": "Linea Ether", - "symbol": "ETH", - "decimals": 18 - }, - "59141": { - "name": "Linea Ether", - "symbol": "ETH", - "decimals": 18 - }, - "59144": { - "name": "Linea Ether", - "symbol": "ETH", - "decimals": 18 - }, - "59902": { - "name": "tMetis", - "symbol": "tMETIS", - "decimals": 18 - }, - "59971": { - "name": "GenesysCode", - "symbol": "GCODE", - "decimals": 18 - }, - "60000": { - "name": "TKM", - "symbol": "TKM", - "decimals": 18 - }, - "60001": { - "name": "TKM", - "symbol": "TKM", - "decimals": 18 - }, - "60002": { - "name": "TKM", - "symbol": "TKM", - "decimals": 18 - }, - "60103": { - "name": "TKM", - "symbol": "TKM", - "decimals": 18 - }, - "60808": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "61022": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "61406": { - "name": "KaiChain Native Token", - "symbol": "KEC", - "decimals": 18 - }, - "61800": { - "name": "Axelium", - "symbol": "AIUM", - "decimals": 18 - }, - "61803": { - "name": "EGAZ", - "symbol": "EGAZ", - "decimals": 18 - }, - "61916": { - "name": "DoKEN", - "symbol": "DKN", - "decimals": 18 - }, - "62049": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "62050": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "62298": { - "name": "Citrea BTC", - "symbol": "cBTC", - "decimals": 18 - }, - "62320": { - "name": "CELO", - "symbol": "CELO", - "decimals": 18 - }, - "62621": { - "name": "MultiVAC", - "symbol": "MTV", - "decimals": 18 - }, - "62831": { - "name": "PLYR", - "symbol": "PLYR", - "decimals": 18 - }, - "62850": { - "name": "SIGMA", - "symbol": "SIGMA", - "decimals": 18 - }, - "63000": { - "name": "eCredits", - "symbol": "ECS", - "decimals": 18 - }, - "63001": { - "name": "eCredits", - "symbol": "ECS", - "decimals": 18 - }, - "65349": { - "name": "CRATD2C", - "symbol": "CRAT", - "decimals": 18 - }, - "65357": { - "name": "Vecno", - "symbol": "VE", - "decimals": 18 - }, - "65450": { - "name": "Scolcoin", - "symbol": "SCOL", - "decimals": 18 - }, - "65536": { - "name": "ATA", - "symbol": "ATA", - "decimals": 18 - }, - "66988": { - "name": "Janus", - "symbol": "JNS", - "decimals": 18 - }, - "67588": { - "name": "Cosmic Chain", - "symbol": "COSMIC", - "decimals": 18 - }, - "68770": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "69420": { - "name": "Condrieu Testnet Ether", - "symbol": "CTE", - "decimals": 18 - }, - "70000": { - "name": "TKM", - "symbol": "TKM", - "decimals": 18 - }, - "70001": { - "name": "TKM", - "symbol": "TKM", - "decimals": 18 - }, - "70002": { - "name": "TKM", - "symbol": "TKM", - "decimals": 18 - }, - "70103": { - "name": "TKM", - "symbol": "TKM", - "decimals": 18 - }, - "70700": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "71111": { - "name": "GuapcoinX", - "symbol": "GuapX", - "decimals": 18 - }, - "71393": { - "name": "CKB", - "symbol": "CKB", - "decimals": 8 - }, - "71401": { - "name": "pCKB", - "symbol": "pCKB", - "decimals": 18 - }, - "71402": { - "name": "pCKB", - "symbol": "pCKB", - "decimals": 18 - }, - "72778": { - "name": "Caga", - "symbol": "CAGA", - "decimals": 18 - }, - "72992": { - "name": "Groc", - "symbol": "GROC", - "decimals": 18 - }, - "73114": { - "name": "ICB Testnet Token", - "symbol": "ICBT", - "decimals": 18 - }, - "73115": { - "name": "ICB Native Token", - "symbol": "ICBX", - "decimals": 18 - }, - "73799": { - "name": "Volta Token", - "symbol": "VT", - "decimals": 18 - }, - "73927": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "75000": { - "name": "Ether", - "symbol": "RESIN", - "decimals": 18 - }, - "75512": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "75513": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "77001": { - "name": "BORA", - "symbol": "BORA", - "decimals": 18 - }, - "77238": { - "name": "Foundry Chain Testnet", - "symbol": "tFNC", - "decimals": 18 - }, - "77612": { - "name": "VNT", - "symbol": "VNT", - "decimals": 18 - }, - "77677": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "77777": { - "name": "Toroe", - "symbol": "TOROE", - "decimals": 18 - }, - "78110": { - "name": "Firenze Ether", - "symbol": "FIN", - "decimals": 18 - }, - "78281": { - "name": "Dragonfly", - "symbol": "DFLY", - "decimals": 18 - }, - "78430": { - "name": "AMP", - "symbol": "AMP", - "decimals": 18 - }, - "78431": { - "name": "BLT", - "symbol": "BLT", - "decimals": 18 - }, - "78432": { - "name": "CON", - "symbol": "CON", - "decimals": 18 - }, - "78600": { - "name": "Vanguard Vanry", - "symbol": "VANRY", - "decimals": 18 - }, - "79879": { - "name": "Standard in Gold", - "symbol": "STAND", - "decimals": 18 - }, - "80001": { - "name": "MATIC", - "symbol": "MATIC", - "decimals": 18 - }, - "80002": { - "name": "MATIC", - "symbol": "MATIC", - "decimals": 18 - }, - "80008": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "80084": { - "name": "BERA Token", - "symbol": "BERA", - "decimals": 18 - }, - "80085": { - "name": "BERA Token", - "symbol": "BERA", - "decimals": 18 - }, - "80096": { - "name": "Hizoco", - "symbol": "HZC", - "decimals": 18 - }, - "81041": { - "name": "NRK", - "symbol": "NRK", - "decimals": 18 - }, - "81341": { - "name": "Amana Testnet", - "symbol": "MEER-T", - "decimals": 18 - }, - "81342": { - "name": "Amana Mixnet", - "symbol": "MEER-M", - "decimals": 18 - }, - "81343": { - "name": "Amana Privnet", - "symbol": "MEER-P", - "decimals": 18 - }, - "81351": { - "name": "Flana Testnet", - "symbol": "MEER-T", - "decimals": 18 - }, - "81352": { - "name": "Flana Mixnet", - "symbol": "MEER-M", - "decimals": 18 - }, - "81353": { - "name": "Flana Privnet", - "symbol": "MEER-P", - "decimals": 18 - }, - "81361": { - "name": "Mizana Testnet", - "symbol": "MEER-T", - "decimals": 18 - }, - "81362": { - "name": "Mizana Mixnet", - "symbol": "MEER-M", - "decimals": 18 - }, - "81363": { - "name": "Mizana Privnet", - "symbol": "MEER-P", - "decimals": 18 - }, - "81457": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "81720": { - "name": "Quantum Chain", - "symbol": "QNET", - "decimals": 18 - }, - "82459": { - "name": "Service Unit Token", - "symbol": "SU", - "decimals": 18 - }, - "83144": { - "name": "KICK Testnet Token", - "symbol": "KICK", - "decimals": 18 - }, - "83278": { - "name": "Esa", - "symbol": "Esa", - "decimals": 18 - }, - "83872": { - "name": "Zedxion", - "symbol": "ZEDX", - "decimals": 9 - }, - "84531": { - "name": "Goerli Ether", - "symbol": "ETH", - "decimals": 18 - }, - "84532": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "84886": { - "name": "Aerie", - "symbol": "AER", - "decimals": 18 - }, - "85449": { - "name": "Cyber Trust", - "symbol": "CYBER", - "decimals": 18 - }, - "88002": { - "name": "Zebec Test Token", - "symbol": "tZBC", - "decimals": 18 - }, - "88559": { - "name": "InoAi", - "symbol": "INO", - "decimals": 18 - }, - "88800": { - "name": "ZKAS", - "symbol": "ZKAS", - "decimals": 18 - }, - "88817": { - "name": "UNIT0", - "symbol": "UNIT0", - "decimals": 18 - }, - "88819": { - "name": "UNIT0", - "symbol": "UNIT0", - "decimals": 18 - }, - "88882": { - "name": "Chiliz", - "symbol": "CHZ", - "decimals": 18 - }, - "88888": { - "name": "Chiliz", - "symbol": "CHZ", - "decimals": 18 - }, - "90001": { - "name": "Function X", - "symbol": "FX", - "decimals": 18 - }, - "90210": { - "name": "Beverly Hills Testnet Ether", - "symbol": "BVE", - "decimals": 18 - }, - "90354": { - "name": "Ethereum", - "symbol": "ETH", - "decimals": 18 - }, - "91002": { - "name": "Nautilus Zebec Testnet Tokens", - "symbol": "tZBC", - "decimals": 18 - }, - "91120": { - "name": "DAP", - "symbol": "DAP", - "decimals": 18 - }, - "91715": { - "name": "BNB Chain Native Token", - "symbol": "tcBNB", - "decimals": 18 - }, - "92001": { - "name": "test-Lamb", - "symbol": "LAMB", - "decimals": 18 - }, - "93572": { - "name": "LiquidLayer Testnet", - "symbol": "LILA", - "decimals": 18 - }, - "93747": { - "name": "SVM", - "symbol": "SVM", - "decimals": 18 - }, - "96970": { - "name": "Mantis", - "symbol": "MANTIS", - "decimals": 18 - }, - "97435": { - "name": "Sling Test", - "symbol": "SLINGT", - "decimals": 18 - }, - "97531": { - "name": "GREEN", - "symbol": "GREEN", - "decimals": 18 - }, - "97970": { - "name": "OptimusZ7", - "symbol": "OZ7", - "decimals": 18 - }, - "98881": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "99099": { - "name": "eLiberty", - "symbol": "$EL", - "decimals": 18 - }, - "99876": { - "name": "Edge Matrix Chain Token", - "symbol": "EMC", - "decimals": 18 - }, - "99998": { - "name": "UBC", - "symbol": "UBC", - "decimals": 18 - }, - "99999": { - "name": "UBC", - "symbol": "UBC", - "decimals": 18 - }, - "100000": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "100001": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "100002": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "100003": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "100004": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "100005": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "100006": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "100007": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "100008": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "100009": { - "name": "VeChain", - "symbol": "VET", - "decimals": 18 - }, - "100010": { - "name": "VeChain", - "symbol": "VET", - "decimals": 18 - }, - "100011": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "101010": { - "name": "FREE", - "symbol": "FREE", - "decimals": 18 - }, - "102031": { - "name": "Testnet CTC", - "symbol": "tCTC", - "decimals": 18 - }, - "103090": { - "name": "CRFI", - "symbol": "\u25C8", - "decimals": 18 - }, - "103454": { - "name": "Masa Token", - "symbol": "MASA", - "decimals": 18 - }, - "104566": { - "name": "KaspaClassic", - "symbol": "CAS", - "decimals": 18 - }, - "105105": { - "name": "Stratis", - "symbol": "STRAX", - "decimals": 18 - }, - "108801": { - "name": "Brother", - "symbol": "BRO", - "decimals": 18 - }, - "110000": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "110001": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "110002": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "110003": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "110004": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "110005": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "110006": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "110007": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "110008": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "110011": { - "name": "QKC", - "symbol": "QKC", - "decimals": 18 - }, - "110110": { - "name": "Mars Credit", - "symbol": "MARS", - "decimals": 18 - }, - "111000": { - "name": "TestSIBR", - "symbol": "SIBR", - "decimals": 18 - }, - "111111": { - "name": "Siberium", - "symbol": "SIBR", - "decimals": 18 - }, - "111188": { - "name": "re.al Ether", - "symbol": "reETH", - "decimals": 18 - }, - "112358": { - "name": "Metao", - "symbol": "METAO", - "decimals": 18 - }, - "119139": { - "name": "DAP", - "symbol": "DAP", - "decimals": 18 - }, - "123321": { - "name": "GEM", - "symbol": "GEM", - "decimals": 18 - }, - "123456": { - "name": "Devnet ADIL", - "symbol": "ADIL", - "decimals": 18 - }, - "128123": { - "name": "tez", - "symbol": "XTZ", - "decimals": 18 - }, - "131313": { - "name": "DIONE", - "symbol": "DIONE", - "decimals": 18 - }, - "131419": { - "name": "ETND", - "symbol": "ETND", - "decimals": 18 - }, - "132902": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "141319": { - "name": "MagApe", - "symbol": "MAG", - "decimals": 18 - }, - "142857": { - "name": "ict", - "symbol": "ict", - "decimals": 18 - }, - "161212": { - "name": "Play", - "symbol": "PLAY", - "decimals": 18 - }, - "165279": { - "name": "Eclat", - "symbol": "ECLAT", - "decimals": 18 - }, - "167000": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "167008": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "167009": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "175177": { - "name": "Test LIT", - "symbol": "tstLIT", - "decimals": 18 - }, - "175188": { - "name": "Test LPX", - "symbol": "tstLPX", - "decimals": 18 - }, - "188710": { - "name": "Bitica Coin", - "symbol": "BDCC", - "decimals": 18 - }, - "188881": { - "name": "Condor Native Token", - "symbol": "CONDOR", - "decimals": 18 - }, - "192940": { - "name": "FHE", - "symbol": "FHE", - "decimals": 18 - }, - "199991": { - "name": "MAZZE Testnet", - "symbol": "MAZZE", - "decimals": 18 - }, - "200000": { - "name": "FAI", - "symbol": "FAI", - "decimals": 18 - }, - "200101": { - "name": "milkTAda", - "symbol": "mTAda", - "decimals": 18 - }, - "200202": { - "name": "milkTAlgo", - "symbol": "mTAlgo", - "decimals": 18 - }, - "200625": { - "name": "Akroma Ether", - "symbol": "AKA", - "decimals": 18 - }, - "200810": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "200901": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "201018": { - "name": "ATP", - "symbol": "atp", - "decimals": 18 - }, - "201030": { - "name": "ATP", - "symbol": "atp", - "decimals": 18 - }, - "201804": { - "name": "Mythos", - "symbol": "MYTH", - "decimals": 18 - }, - "202020": { - "name": "Decimal", - "symbol": "tDEL", - "decimals": 18 - }, - "202212": { - "name": "XN", - "symbol": "XN", - "decimals": 18 - }, - "202401": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "202624": { - "name": "Twala Coin", - "symbol": "TWL", - "decimals": 18 - }, - "204005": { - "name": "XN", - "symbol": "XN", - "decimals": 18 - }, - "205205": { - "name": "Auroria Stratis", - "symbol": "tSTRAX", - "decimals": 18 - }, - "210049": { - "name": "GitAGI", - "symbol": "tGAGI", - "decimals": 18 - }, - "210425": { - "name": "LAT", - "symbol": "lat", - "decimals": 18 - }, - "220315": { - "name": "Master Bank", - "symbol": "MAS", - "decimals": 18 - }, - "221230": { - "name": "Reap", - "symbol": "REAP", - "decimals": 18 - }, - "221231": { - "name": "test-Reap", - "symbol": "tREAP", - "decimals": 18 - }, - "222222": { - "name": "Wrapped ETH", - "symbol": "WETH", - "decimals": 18 - }, - "222555": { - "name": "DeepL", - "symbol": "DEEPL", - "decimals": 18 - }, - "222666": { - "name": "DeepL", - "symbol": "DEEPL", - "decimals": 18 - }, - "224168": { - "name": "Taf ECO Chain Mainnet", - "symbol": "TAFECO", - "decimals": 18 - }, - "224422": { - "name": "CONET Sebolia", - "symbol": "CONET", - "decimals": 18 - }, - "224433": { - "name": "CONET Holesky", - "symbol": "CONET", - "decimals": 18 - }, - "229772": { - "name": "AbyssETH", - "symbol": "aETH", - "decimals": 18 - }, - "230315": { - "name": "HashKey Token", - "symbol": "tHSK", - "decimals": 18 - }, - "234666": { - "name": "HAYMO", - "symbol": "HYM", - "decimals": 18 - }, - "240515": { - "name": "BTC", - "symbol": "BTC", - "decimals": 18 - }, - "246529": { - "name": "ARTIS sigma1 Ether", - "symbol": "ATS", - "decimals": 18 - }, - "246785": { - "name": "ARTIS tau1 Ether", - "symbol": "tATS", - "decimals": 18 - }, - "247253": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "256256": { - "name": "Caduceus Token", - "symbol": "CMP", - "decimals": 18 - }, - "262371": { - "name": "Eclat Testnet", - "symbol": "ECLAT", - "decimals": 18 - }, - "266256": { - "name": "Gear Zero Network Native Token", - "symbol": "GZN", - "decimals": 18 - }, - "271271": { - "name": "EgonCoin", - "symbol": "EGON", - "decimals": 18 - }, - "281121": { - "name": "SoChain", - "symbol": "$OC", - "decimals": 18 - }, - "282828": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "292003": { - "name": "CIP", - "symbol": "CIP", - "decimals": 18 - }, - "309075": { - "name": "OWCT", - "symbol": "OWCT", - "decimals": 18 - }, - "313313": { - "name": "SAHARA", - "symbol": "SAH", - "decimals": 18 - }, - "314159": { - "name": "testnet filecoin", - "symbol": "tFIL", - "decimals": 18 - }, - "322202": { - "name": "PAREX", - "symbol": "PRX", - "decimals": 18 - }, - "323213": { - "name": "Bloom", - "symbol": "BGBC", - "decimals": 18 - }, - "327126": { - "name": "WABA", - "symbol": "WABA", - "decimals": 18 - }, - "328527": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "330844": { - "name": "TTcoin", - "symbol": "TC", - "decimals": 18 - }, - "333313": { - "name": "Bloom", - "symbol": "BGBC", - "decimals": 18 - }, - "333331": { - "name": "AvesT", - "symbol": "AVST", - "decimals": 18 - }, - "333333": { - "name": "USNT", - "symbol": "USNT", - "decimals": 18 - }, - "333666": { - "name": "tOONE", - "symbol": "tOONE", - "decimals": 18 - }, - "333777": { - "name": "tOONE", - "symbol": "tOONE", - "decimals": 18 - }, - "333888": { - "name": "tPolis", - "symbol": "tPOLIS", - "decimals": 18 - }, - "333999": { - "name": "Polis", - "symbol": "POLIS", - "decimals": 18 - }, - "336655": { - "name": "UBTC", - "symbol": "UBTC", - "decimals": 18 - }, - "336666": { - "name": "UBTC", - "symbol": "UBTC", - "decimals": 18 - }, - "355110": { - "name": "Bitfinity Token", - "symbol": "BFT", - "decimals": 18 - }, - "355113": { - "name": "Bitfinity Token", - "symbol": "BFT", - "decimals": 18 - }, - "360890": { - "name": "vTFUEL", - "symbol": "vTFUEL", - "decimals": 18 - }, - "363636": { - "name": "Digit Coin", - "symbol": "DGC", - "decimals": 18 - }, - "373737": { - "name": "HAP", - "symbol": "HAP", - "decimals": 18 - }, - "381931": { - "name": "Metal", - "symbol": "METAL", - "decimals": 18 - }, - "381932": { - "name": "Metal", - "symbol": "METAL", - "decimals": 18 - }, - "404040": { - "name": "Tipboxcoin", - "symbol": "TPBX", - "decimals": 18 - }, - "413413": { - "name": "AIE", - "symbol": "AIE", - "decimals": 18 - }, - "420420": { - "name": "KEK", - "symbol": "KEK", - "decimals": 18 - }, - "420666": { - "name": "tKEK", - "symbol": "tKEK", - "decimals": 18 - }, - "420692": { - "name": "Alterium ETH", - "symbol": "AltETH", - "decimals": 18 - }, - "421611": { - "name": "Arbitrum Rinkeby Ether", - "symbol": "ETH", - "decimals": 18 - }, - "421613": { - "name": "Arbitrum Goerli Ether", - "symbol": "AGOR", - "decimals": 18 - }, - "421614": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "424242": { - "name": "FTN", - "symbol": "FTN", - "decimals": 18 - }, - "431140": { - "name": "Avalanche", - "symbol": "AVAX", - "decimals": 18 - }, - "432201": { - "name": "Dexalot", - "symbol": "ALOT", - "decimals": 18 - }, - "432204": { - "name": "Dexalot", - "symbol": "ALOT", - "decimals": 18 - }, - "444444": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "444900": { - "name": "Weelink Chain Token", - "symbol": "tWLK", - "decimals": 18 - }, - "471100": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "473861": { - "name": "Ultra Pro", - "symbol": "UPRO", - "decimals": 18 - }, - "474142": { - "name": "OpenCoin", - "symbol": "OPC", - "decimals": 10 - }, - "486487": { - "name": "Gobbl Token", - "symbol": "GOBBL", - "decimals": 18 - }, - "490000": { - "name": "Test Auto Coin", - "symbol": "TATC", - "decimals": 18 - }, - "504441": { - "name": "Playdapp", - "symbol": "PDA", - "decimals": 18 - }, - "512512": { - "name": "Caduceus Testnet Token", - "symbol": "CMP", - "decimals": 18 - }, - "513100": { - "name": "DisChain", - "symbol": "DIS", - "decimals": 18 - }, - "526916": { - "name": "DO", - "symbol": "DCT", - "decimals": 18 - }, - "534351": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "534352": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "534849": { - "name": "Shina Inu", - "symbol": "SHI", - "decimals": 18 - }, - "535037": { - "name": "BeanEco SmartChain", - "symbol": "BESC", - "decimals": 18 - }, - "552981": { - "name": "OWCT", - "symbol": "OWCT", - "decimals": 18 - }, - "555555": { - "name": "Pentagon", - "symbol": "PEN", - "decimals": 18 - }, - "555666": { - "name": "Eclipse", - "symbol": "ECLPS", - "decimals": 18 - }, - "622277": { - "name": "Hypra", - "symbol": "HYP", - "decimals": 18 - }, - "622463": { - "name": "TON", - "symbol": "TON", - "decimals": 18 - }, - "641230": { - "name": "Bear Network Chain Native Token", - "symbol": "BRNKC", - "decimals": 18 - }, - "651940": { - "name": "ALL", - "symbol": "ALL", - "decimals": 18 - }, - "656476": { - "name": "EDU", - "symbol": "EDU", - "decimals": 18 - }, - "660279": { - "name": "Xai", - "symbol": "XAI", - "decimals": 18 - }, - "666666": { - "name": "VS", - "symbol": "VS", - "decimals": 18 - }, - "666888": { - "name": "Hela HLUSD", - "symbol": "HLUSD", - "decimals": 18 - }, - "686868": { - "name": "Won", - "symbol": "WON", - "decimals": 18 - }, - "696969": { - "name": "Galadriel Devnet token", - "symbol": "GAL", - "decimals": 18 - }, - "710420": { - "name": "TILT", - "symbol": "TILT", - "decimals": 18 - }, - "713715": { - "name": "Sei", - "symbol": "SEI", - "decimals": 18 - }, - "721529": { - "name": "ERAM", - "symbol": "ERAM", - "decimals": 18 - }, - "743111": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "751230": { - "name": "Bear Network Chain Testnet Token", - "symbol": "tBRNKC", - "decimals": 18 - }, - "752024": { - "name": "Capsule Coin", - "symbol": "CAPS", - "decimals": 18 - }, - "761412": { - "name": "Miexs Coin", - "symbol": "MIX", - "decimals": 18 - }, - "764984": { - "name": "Lamina1 Test", - "symbol": "L1T", - "decimals": 18 - }, - "767368": { - "name": "L1ID Test", - "symbol": "L1IDT", - "decimals": 18 - }, - "776877": { - "name": "Modularium", - "symbol": "MDM", - "decimals": 18 - }, - "800001": { - "name": "OctaSpace", - "symbol": "OCTA", - "decimals": 18 - }, - "808080": { - "name": "tBIZT", - "symbol": "tBIZT", - "decimals": 18 - }, - "808813": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "810180": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "810181": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "810182": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "820522": { - "name": "TAS", - "symbol": "tTAS", - "decimals": 18 - }, - "827431": { - "name": "Curve", - "symbol": "CURVE", - "decimals": 18 - }, - "839320": { - "name": "Primal Network", - "symbol": "PRM", - "decimals": 18 - }, - "840000": { - "name": "Test Bitcoin", - "symbol": "tBTC", - "decimals": 8 - }, - "846000": { - "name": "APTA", - "symbol": "APTA", - "decimals": 18 - }, - "855456": { - "name": "Dodao", - "symbol": "DODAO", - "decimals": 18 - }, - "879151": { - "name": "BlocX", - "symbol": "BLX", - "decimals": 18 - }, - "888882": { - "name": "REXX", - "symbol": "REXX", - "decimals": 18 - }, - "888888": { - "name": "VS", - "symbol": "VS", - "decimals": 18 - }, - "900000": { - "name": "Posichain Native Token", - "symbol": "POSI", - "decimals": 18 - }, - "910000": { - "name": "Posichain Native Token", - "symbol": "POSI", - "decimals": 18 - }, - "912559": { - "name": "RIA", - "symbol": "RIA", - "decimals": 18 - }, - "920000": { - "name": "Posichain Native Token", - "symbol": "POSI", - "decimals": 18 - }, - "920001": { - "name": "Posichain Native Token", - "symbol": "POSI", - "decimals": 18 - }, - "923018": { - "name": "FNCY", - "symbol": "FNCY", - "decimals": 18 - }, - "955081": { - "name": "Jono12 Token", - "symbol": "JONO", - "decimals": 18 - }, - "955305": { - "name": "ELV", - "symbol": "ELV", - "decimals": 18 - }, - "978657": { - "name": "Testnet MAGIC", - "symbol": "MAGIC", - "decimals": 18 - }, - "984122": { - "name": "TIA", - "symbol": "TIA", - "decimals": 18 - }, - "984123": { - "name": "TIA", - "symbol": "TIA", - "decimals": 18 - }, - "988207": { - "name": "ECROX COIN", - "symbol": "ECROX", - "decimals": 18 - }, - "998899": { - "name": "CHAIN", - "symbol": "CHAIN", - "decimals": 18 - }, - "999999": { - "name": "AMC", - "symbol": "AMC", - "decimals": 18 - }, - "1100789": { - "name": "NMT", - "symbol": "NMT", - "decimals": 18 - }, - "1127469": { - "name": "Tiltyard Token", - "symbol": "TILTG", - "decimals": 18 - }, - "1234567": { - "name": "SHARECLE COIN", - "symbol": "SHR", - "decimals": 18 - }, - "1261120": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1313114": { - "name": "Etho Protocol", - "symbol": "ETHO", - "decimals": 18 - }, - "1313500": { - "name": "Xerom Ether", - "symbol": "XERO", - "decimals": 18 - }, - "1337702": { - "name": "kintsugi Ethere", - "symbol": "kiETH", - "decimals": 18 - }, - "1337802": { - "name": "Testnet ETH", - "symbol": "ETH", - "decimals": 18 - }, - "1337803": { - "name": "Testnet ETH", - "symbol": "ETH", - "decimals": 18 - }, - "1398243": { - "name": "ATA", - "symbol": "ATA", - "decimals": 18 - }, - "1612127": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1637450": { - "name": "tBNB", - "symbol": "tBNB", - "decimals": 18 - }, - "1731313": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "2021398": { - "name": "DeBank USD", - "symbol": "USD", - "decimals": 18 - }, - "2099156": { - "name": "Plian Token", - "symbol": "PI", - "decimals": 18 - }, - "2206132": { - "name": "LAT", - "symbol": "lat", - "decimals": 18 - }, - "2611555": { - "name": "DGC", - "symbol": "DGC", - "decimals": 18 - }, - "2702128": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "3132023": { - "name": "SAHARA", - "symbol": "SAH", - "decimals": 18 - }, - "3141592": { - "name": "testnet filecoin", - "symbol": "tFIL", - "decimals": 18 - }, - "3397901": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "3441005": { - "name": "Manta", - "symbol": "MANTA", - "decimals": 18 - }, - "3441006": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "4000003": { - "name": "ZERO", - "symbol": "ZERO", - "decimals": 18 - }, - "4281033": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "4444444": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "4457845": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "5112023": { - "name": "NUMB Token", - "symbol": "NUMB", - "decimals": 18 - }, - "5167003": { - "name": "MXC Wannsee zkEVM Testnet", - "symbol": "MXC", - "decimals": 18 - }, - "5167004": { - "name": "Moonchain Geneva Testnet", - "symbol": "MXC", - "decimals": 18 - }, - "5201420": { - "name": "Electroneum", - "symbol": "ETN", - "decimals": 18 - }, - "5318008": { - "name": "Kopli React", - "symbol": "REACT", - "decimals": 18 - }, - "5555555": { - "name": "Imversed Token", - "symbol": "IMV", - "decimals": 18 - }, - "5555558": { - "name": "Imversed Token", - "symbol": "IMV", - "decimals": 18 - }, - "6038361": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "6666665": { - "name": "SAFE(AnWang)", - "symbol": "SAFE", - "decimals": 18 - }, - "6666666": { - "name": "SAFE(AnWang)", - "symbol": "SAFE", - "decimals": 18 - }, - "7225878": { - "name": "OAS", - "symbol": "OAS", - "decimals": 18 - }, - "7355310": { - "name": "Vessel ETH", - "symbol": "VETH", - "decimals": 18 - }, - "7668378": { - "name": "Shiba Predator", - "symbol": "QOM", - "decimals": 18 - }, - "7762959": { - "name": "Musicoin", - "symbol": "MUSIC", - "decimals": 18 - }, - "7777777": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "8007736": { - "name": "Plian Token", - "symbol": "PI", - "decimals": 18 - }, - "8008135": { - "name": "tFHE", - "symbol": "tFHE", - "decimals": 18 - }, - "8080808": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "8601152": { - "name": "WATER", - "symbol": "WATER", - "decimals": 18 - }, - "8794598": { - "name": "HAP", - "symbol": "HAP", - "decimals": 18 - }, - "8888881": { - "name": "QARE", - "symbol": "QARE", - "decimals": 18 - }, - "8888888": { - "name": "QARE", - "symbol": "QARE", - "decimals": 18 - }, - "9322252": { - "name": "Gas", - "symbol": "GAS", - "decimals": 18 - }, - "9322253": { - "name": "Gas", - "symbol": "GAS", - "decimals": 18 - }, - "9999999": { - "name": "FLT", - "symbol": "FLT", - "decimals": 18 - }, - "10067275": { - "name": "Plian Token", - "symbol": "TPI", - "decimals": 18 - }, - "10101010": { - "name": "Soverun", - "symbol": "SVRN", - "decimals": 18 - }, - "10241024": { - "name": "Ethereum", - "symbol": "ETH", - "decimals": 18 - }, - "10241025": { - "name": "Ethereum", - "symbol": "ETH", - "decimals": 18 - }, - "11145513": { - "name": "Bless", - "symbol": "BLESS", - "decimals": 18 - }, - "11155111": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "11155420": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "12052024": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "12227332": { - "name": "Gas", - "symbol": "GAS", - "decimals": 18 - }, - "13068200": { - "name": "COTI2", - "symbol": "COTI2", - "decimals": 18 - }, - "13371337": { - "name": "PepChain Churchill Ether", - "symbol": "TPEP", - "decimals": 18 - }, - "14288640": { - "name": "DAON", - "symbol": "DEB", - "decimals": 18 - }, - "16658437": { - "name": "Plian Testnet Token", - "symbol": "TPI", - "decimals": 18 - }, - "17000920": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "18071918": { - "name": "Mand", - "symbol": "MAND", - "decimals": 18 - }, - "18289463": { - "name": "IOLite Ether", - "symbol": "ILT", - "decimals": 18 - }, - "19850818": { - "name": "DeepBrainChain", - "symbol": "DBC", - "decimals": 18 - }, - "19880818": { - "name": "DeepBrainChain", - "symbol": "DBC", - "decimals": 18 - }, - "20180427": { - "name": "FREE", - "symbol": "FREE", - "decimals": 18 - }, - "20180430": { - "name": "SmartMesh Native Token", - "symbol": "SMT", - "decimals": 18 - }, - "20181205": { - "name": "quarkblockchain Native Token", - "symbol": "QKI", - "decimals": 18 - }, - "20201022": { - "name": "Pego Native Token", - "symbol": "PG", - "decimals": 18 - }, - "20230825": { - "name": "Testnet Vcity Token", - "symbol": "VCITY", - "decimals": 18 - }, - "20240324": { - "name": "DeBank USD", - "symbol": "USD", - "decimals": 18 - }, - "20240603": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "20241133": { - "name": "SWANETH", - "symbol": "sETH", - "decimals": 18 - }, - "20482050": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "22052002": { - "name": "Excelon", - "symbol": "xlon", - "decimals": 18 - }, - "27082017": { - "name": "TExlcoin", - "symbol": "TEXL", - "decimals": 18 - }, - "27082022": { - "name": "Exlcoin", - "symbol": "EXL", - "decimals": 18 - }, - "28122024": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "28945486": { - "name": "Auxilium coin", - "symbol": "AUX", - "decimals": 18 - }, - "29032022": { - "name": "Flacoin", - "symbol": "FLA", - "decimals": 18 - }, - "31415926": { - "name": "testnet filecoin", - "symbol": "tFIL", - "decimals": 18 - }, - "35855456": { - "name": "JOYS", - "symbol": "JOYS", - "decimals": 18 - }, - "37084624": { - "name": "sFUEL", - "symbol": "sFUEL", - "decimals": 18 - }, - "39916801": { - "name": "Kozi", - "symbol": "KOZI", - "decimals": 18 - }, - "43214913": { - "name": "maistestsubnet", - "symbol": "MAI", - "decimals": 18 - }, - "52164803": { - "name": "tFLT", - "symbol": "tFLT", - "decimals": 18 - }, - "61717561": { - "name": "Aquachain Ether", - "symbol": "AQUA", - "decimals": 18 - }, - "65010003": { - "name": "Bakerloo Auton", - "symbol": "ATN", - "decimals": 18 - }, - "65100003": { - "name": "Piccadilly Auton", - "symbol": "ATN", - "decimals": 18 - }, - "68840142": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "77787778": { - "name": "0xHash", - "symbol": "HETH", - "decimals": 18 - }, - "79479957": { - "name": "SX Network", - "symbol": "SX", - "decimals": 18 - }, - "88558801": { - "name": "Backstop Testnet 1", - "symbol": "ZBS", - "decimals": 18 - }, - "88888888": { - "name": "TEAM", - "symbol": "$TEAM", - "decimals": 18 - }, - "94204209": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "99415706": { - "name": "TOYS", - "symbol": "TOYS", - "decimals": 18 - }, - "100000000": { - "name": "ETHOS", - "symbol": "ETHOS", - "decimals": 18 - }, - "108160679": { - "name": "Oraichain Token", - "symbol": "ORAI", - "decimals": 18 - }, - "111557560": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "123420111": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "161221135": { - "name": "Plume Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "168587773": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "192837465": { - "name": "Gather", - "symbol": "GTH", - "decimals": 18 - }, - "222000222": { - "name": "gMeld", - "symbol": "gMELD", - "decimals": 18 - }, - "245022926": { - "name": "Neon", - "symbol": "NEON", - "decimals": 18 - }, - "245022929": { - "name": "Neon", - "symbol": "NEON", - "decimals": 18 - }, - "245022934": { - "name": "Neon", - "symbol": "NEON", - "decimals": 18 - }, - "278611351": { - "name": "sFuel", - "symbol": "SFUEL", - "decimals": 18 - }, - "311752642": { - "name": "OLT", - "symbol": "OLT", - "decimals": 18 - }, - "328527624": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "333000333": { - "name": "gMeld", - "symbol": "gMELD", - "decimals": 18 - }, - "356256156": { - "name": "Gather", - "symbol": "GTH", - "decimals": 18 - }, - "476462898": { - "name": "SkpGPT", - "symbol": "SkpGPT", - "decimals": 18 - }, - "486217935": { - "name": "Gather", - "symbol": "GTH", - "decimals": 18 - }, - "531050104": { - "name": "ETH", - "symbol": "ETH", - "decimals": 18 - }, - "666666666": { - "name": "DEGEN", - "symbol": "DEGEN", - "decimals": 18 - }, - "888888888": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "889910245": { - "name": "PTCE", - "symbol": "PTCE", - "decimals": 18 - }, - "889910246": { - "name": "PTCE", - "symbol": "PTCE", - "decimals": 18 - }, - "974399131": { - "name": "sFUEL", - "symbol": "sFUEL", - "decimals": 18 - }, - "999999999": { - "name": "Sepolia Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1020352220": { - "name": "sFUEL", - "symbol": "sFUEL", - "decimals": 18 - }, - "1122334455": { - "name": "IPOS Network Ether", - "symbol": "IPOS", - "decimals": 18 - }, - "1146703430": { - "name": "Cyb", - "symbol": "CYB", - "decimals": 18 - }, - "1273227453": { - "name": "sFUEL", - "symbol": "sFUEL", - "decimals": 18 - }, - "1313161554": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1313161555": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1313161556": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1313161560": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1350216234": { - "name": "sFUEL", - "symbol": "sFUEL", - "decimals": 18 - }, - "1351057110": { - "name": "sFUEL", - "symbol": "sFUEL", - "decimals": 18 - }, - "1380012617": { - "name": "Ethereum", - "symbol": "ETH", - "decimals": 18 - }, - "1380996178": { - "name": "Raptor", - "symbol": "RPTR", - "decimals": 18 - }, - "1444673419": { - "name": "sFUEL", - "symbol": "sFUEL", - "decimals": 18 - }, - "1482601649": { - "name": "sFUEL", - "symbol": "sFUEL", - "decimals": 18 - }, - "1511670449": { - "name": "GPT", - "symbol": "GPT", - "decimals": 18 - }, - "1564830818": { - "name": "sFUEL", - "symbol": "sFUEL", - "decimals": 18 - }, - "1666600000": { - "name": "ONE", - "symbol": "ONE", - "decimals": 18 - }, - "1666600001": { - "name": "ONE", - "symbol": "ONE", - "decimals": 18 - }, - "1666700000": { - "name": "ONE", - "symbol": "ONE", - "decimals": 18 - }, - "1666700001": { - "name": "ONE", - "symbol": "ONE", - "decimals": 18 - }, - "1666900000": { - "name": "ONE", - "symbol": "ONE", - "decimals": 18 - }, - "1666900001": { - "name": "ONE", - "symbol": "ONE", - "decimals": 18 - }, - "1802203764": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "1903648807": { - "name": "Gemuchain", - "symbol": "GEMU", - "decimals": 18 - }, - "1918988905": { - "name": "Ethereum", - "symbol": "ETH", - "decimals": 18 - }, - "2021121117": { - "name": "DataHoppers", - "symbol": "HOP", - "decimals": 18 - }, - "2046399126": { - "name": "sFUEL", - "symbol": "sFUEL", - "decimals": 18 - }, - "3125659152": { - "name": "Pirl Ether", - "symbol": "PIRL", - "decimals": 18 - }, - "4216137055": { - "name": "OLT", - "symbol": "OLT", - "decimals": 18 - }, - "11297108109": { - "name": "PALM", - "symbol": "PALM", - "decimals": 18 - }, - "11297108099": { - "name": "PALM", - "symbol": "PALM", - "decimals": 18 - }, - "28872323069": { - "name": "GitSwarm Ether", - "symbol": "GS-ETH", - "decimals": 18 - }, - "37714555429": { - "name": "sXai", - "symbol": "sXAI", - "decimals": 18 - }, - "88153591557": { - "name": "GelatoCGT", - "symbol": "CGT", - "decimals": 18 - }, - "107107114116": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "111222333444": { - "name": "ALT", - "symbol": "ALT", - "decimals": 18 - }, - "123420000220": { - "name": "tFLT", - "symbol": "tFLT", - "decimals": 18 - }, - "197710212030": { - "name": "Ntity", - "symbol": "NTT", - "decimals": 18 - }, - "197710212031": { - "name": "Ntity Haradev", - "symbol": "NTTH", - "decimals": 18 - }, - "202402181627": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "383414847825": { - "name": "Zeniq", - "symbol": "ZENIQ", - "decimals": 18 - }, - "666301171999": { - "name": "PDC", - "symbol": "PDC", - "decimals": 18 - }, - "6022140761023": { - "name": "Molereum Ether", - "symbol": "MOLE", - "decimals": 18 - }, - "2713017997578000": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "2716446429837000": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - } -}; -var EXTRA_RPCS = { - "1": [ - { - "url": "https://eth.llamarpc.com", - "tracking": "none", - "trackingDetails": "LlamaNodes is open-source and does not track or store user information that transits through our RPCs (location, IP, wallet, etc). To learn more, have a look at the public Privacy Policy in our docs: https://llamanodes.notion.site/Privacy-Practices-f20fd8fdd02a469d9d4f42a5989bb936", - "isOpenSource": true - }, - { - "url": "https://endpoints.omniatech.io/v1/eth/mainnet/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://rpc.ankr.com/eth", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://go.getblock.io/d7dab8149ec04390aaa923ff2768f914", - "tracking": "none", - "trackingDetails": "We automatically collect certain information through cookies and similar technologies when you visit, use or navigate Website. This information does not reveal your specific identity (like your name or contact information) and does not allow to identify you. However, it may include device and usage information, such as your IP address, browser and device characteristics, its type and version, operating system, language preferences, referring URLs, device name, country, location, information about how and when you use our Website, information about your interaction in our emails, and other technical and statistical information. This information is primarily needed to maintain the security and operation of our Website, and for our internal analytics and reporting purposes.Specifically, as the RPC provider, we do not log and store your IP address, country, location and similar data. https://getblock.io/privacy-policy/" - }, - { - "url": "https://eth-mainnet.nodereal.io/v1/1659dfb40aa24bbb8153a677b98064d7", - "tracking": "yes", - "trackingDetails": `We may automatically record certain information about how you use our Sites (we refer to this information as "Log Data"). Log Data may include information such as a user's Internet Protocol (IP) address, device and browser type, operating system, the pages or features of our Sites to which a user browsed and the time spent on those pages or features, the frequency with which the Sites are used by a user, search terms, the links on our Sites that a user clicked on or used, and other statistics. We use this information to administer the Service and we analyze (and may engage third parties to analyze) this information to improve and enhance the Service by expanding its features and functionality and tailoring it to our users' needs and preferences. https://nodereal.io/terms` - }, - { - "url": "https://ethereum-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://ethereum-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://1rpc.io/eth", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://rpc.builder0x69.io", - "tracking": "none", - "trackingDetails": "Private transactions / MM RPC: https://twitter.com/builder0x69" - }, - { - "url": "https://rpc.mevblocker.io", - "tracking": "none", - "trackingDetails": "Privacy notice: MEV Blocker RPC does not store any kind of user information (i.e. IP, location, user agent, etc.) in any data bases. Only transactions are preserved to be displayed via status endpoint like https://rpc.mevblocker.io/tx/0x627b09d5a9954a810cd3c34b23694439da40558a41b0d87970f2c3420634a229. Connect to MEV Blocker via https://rpc.mevblocker.io" - }, - { - "url": "https://rpc.flashbots.net", - "tracking": "none", - "trackingDetails": "Privacy notice: Flashbots Protect RPC does not track any kind of user information (i.e. IP, location, etc.). No user information is ever stored or even logged. https://docs.flashbots.net/flashbots-protect/rpc/quick-start" - }, - { - "url": "https://virginia.rpc.blxrbdn.com", - "tracking": "yes", - "trackingDetails": "We may collect information that is publicly available in a blockchain when providing our services, such as: Public wallet identifier of the sender and recipient of a transaction, Unique identifier for a transaction, Date and time of a transaction, Transaction value, along with associated costs, Status of a transaction (such as whether the transaction is complete, in-progress, or resulted in an error) https://bloxroute.com/wp-content/uploads/2021/12/bloXroute-Privacy-Policy-04-01-2019-Final.pdf" - }, - { - "url": "https://uk.rpc.blxrbdn.com", - "tracking": "yes", - "trackingDetails": "We may collect information that is publicly available in a blockchain when providing our services, such as: Public wallet identifier of the sender and recipient of a transaction, Unique identifier for a transaction, Date and time of a transaction, Transaction value, along with associated costs, Status of a transaction (such as whether the transaction is complete, in-progress, or resulted in an error) https://bloxroute.com/wp-content/uploads/2021/12/bloXroute-Privacy-Policy-04-01-2019-Final.pdf" - }, - { - "url": "https://singapore.rpc.blxrbdn.com", - "tracking": "yes", - "trackingDetails": "We may collect information that is publicly available in a blockchain when providing our services, such as: Public wallet identifier of the sender and recipient of a transaction, Unique identifier for a transaction, Date and time of a transaction, Transaction value, along with associated costs, Status of a transaction (such as whether the transaction is complete, in-progress, or resulted in an error) https://bloxroute.com/wp-content/uploads/2021/12/bloXroute-Privacy-Policy-04-01-2019-Final.pdf" - }, - { - "url": "https://eth.rpc.blxrbdn.com", - "tracking": "yes", - "trackingDetails": "We may collect information that is publicly available in a blockchain when providing our services, such as: Public wallet identifier of the sender and recipient of a transaction, Unique identifier for a transaction, Date and time of a transaction, Transaction value, along with associated costs, Status of a transaction (such as whether the transaction is complete, in-progress, or resulted in an error) https://bloxroute.com/wp-content/uploads/2021/12/bloXroute-Privacy-Policy-04-01-2019-Final.pdf" - }, - { - "url": "https://cloudflare-eth.com", - "tracking": "yes", - "trackingDetails": "Just as when you visit and interact with most websites and services delivered via the Internet, when you visit our Websites, including the Cloudflare Community Forum, we gather certain information and store it in log files. This information may include but is not limited to Internet Protocol (IP) addresses, system configuration information, URLs of referring pages, and locale and language preferences. https://www.cloudflare.com/privacypolicy/" - }, - { - "url": "https://eth-mainnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://api.securerpc.com/v1", - "tracking": "unspecified" - }, - { - "url": "https://openapi.bitstack.com/v1/wNFxbiJyQsSeLrX8RRCHi7NpRxrlErZk/DjShIqLishPCTB9HiMkPHXjUM9CNM9Na/ETH/mainnet", - "tracking": "yes", - "trackingDetails": "Information about your computer hardware and software may be automatically collected by BitStack. This information can include: your IP address, browser type, domain names, access times and referring website addresses. https://bitstack.com/#/privacy" - }, - { - "url": "https://eth-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://eth-mainnet-public.unifra.io", - "tracking": "limited", - "trackingDetails": "Regarding the RPC(remote procedure call) data, we do not collect request data or request origin. We temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days. Only the amounts of RPC requests of users are recorded for accounting and billing purposes within longer time. https://unifra.io/" - }, - { - "url": "https://ethereum.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://rpc.payload.de", - "tracking": "none", - "trackingDetails": "Sent transactions are private: https://payload.de/docs. By default, no data is collected when using the RPC endpoint. If provided by the user, the public address for authentication is captured when using the RPC endpoint in order to prioritize requests under high load. This information is optional and solely provided at the user's discretion. https://payload.de/privacy/" - }, - { - "url": "https://api.zmok.io/mainnet/oaen6dy8ff6hju9k", - "tracking": "none", - "trackingDetails": 'API requests - we do NOT store any usage data, additionally, we do not store your logs. No KYC - "Darknet" style of sign-up/sign-in. Only provider that provides Ethereum endpoints as TOR/Onion hidden service. Analytical data are stored only on the landing page/web. https://zmok.io/privacy-policy' - }, - { - "url": "https://eth-mainnet.g.alchemy.com/v2/demo", - "tracking": "yes", - "trackingDetails": "We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy" - }, - { - "url": "https://eth.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://core.gashawk.io/rpc", - "tracking": "yes", - "trackingDetails": "Sign-in with Ethereum on https://www.gashawk.io required prior to use. We may collect information that is publicly available in a blockchain when providing our services, such as: Public wallet identifier of the sender and recipient of a transaction, Unique identifier for a transaction, Date and time of a transaction, Transaction value, along with associated costs, Status of a transaction (such as whether the transaction is complete, in-progress, or resulted in an error), read the terms of service https://www.gashawk.io/#/terms and the privacy policy https://www.gashawk.io/#/privacy." - }, - { - "url": "https://mainnet.eth.cloud.ava.do" - }, - { - "url": "https://ethereumnodelight.app.runonflux.io" - }, - { - "url": "https://eth-mainnet.rpcfast.com?api_key=xbhWBI1Wkguk8SNMu1bvvLurPGLXmgwYeC4S6g2H7WdwFigZSmPWVZRxrskEQwIf" - }, - { - "url": "https://main-light.eth.linkpool.io" - }, - { - "url": "https://rpc.eth.gateway.fm", - "tracking": "yes", - "trackingDetails": "When you use our services or visit our websites, we may log your device\u2019s IP address for debugging and security reasons. We may retain this information for up to twelve months" - }, - { - "url": "https://rpc.chain49.com/ethereum?api_key=14d1a8b86d8a4b4797938332394203dc", - "tracking": "yes", - "trackingDetails": "We collect device information and request metadata like IP address and User Agent for the purpose of load balancing and rate limiting. More info: https://chain49.com/privacy-policy" - }, - { - "url": "https://eth.meowrpc.com", - "tracking": "none", - "trackingDetails": "With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com" - }, - { - "url": "https://eth.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://mainnet.gateway.tenderly.co", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://rpc.tenderly.co/fork/c63af728-a183-4cfb-b24e-a92801463484", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://gateway.tenderly.co/public/mainnet", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://api.zan.top/node/v1/eth/mainnet/public", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - }, - { - "url": "https://eth-mainnet.diamondswap.org/rpc", - "tracking": "limited", - "trackingDetails": "We record limited metadata from requests. This data is stored for a maximum of 90 days and is solely used for debugging, identifying suspicious activity, and generating analytics." - }, - { - "url": "https://rpc.notadegen.com/eth" - }, - { - "url": "https://eth.merkle.io", - "tracking": "none", - "trackingDetails": "merkle does not track or store user information that transits through our RPCs (location, IP, wallet, etc)." - }, - { - "url": "https://rpc.lokibuilder.xyz/wallet", - "tracking": "none", - "trackingDetails": "Private transactions. No tracking of any kind (no IPs, location, wallet etc.): https://lokibuilder.xyz/privacy" - }, - { - "url": "https://services.tokenview.io/vipapi/nodeservice/eth?apikey=qVHq2o6jpaakcw3lRstl", - "tracking": "yes", - "trackingDetails": "Information about your computer hardware and software may be automatically collected by Tokenview. This information can include such details as your IP address, browser type, domain names, access times, etc.https://services.tokenview.io/en/protocol" - }, - { - "url": "https://eth.nodeconnect.org", - "tracking": "yes", - "trackingDetails": "We may collect information about how you interact with our Service. This may include information about your operating system, IP address, and browser type : https://nodeconnect.org/privacy.txt" - }, - { - "url": "https://api.stateless.solutions/ethereum/v1/0ec6cac0-ecac-4247-8a41-1e685deadfe4", - "tracking": "none", - "trackingDetails": "Through any of our RPC API endpoints, whether public or private, we do not collect personal identifiers such as IP addresses, request origins, or specific request data. https://www.stateless.solutions/api-usage-privacy-policy" - }, - { - "url": "https://rpc.polysplit.cloud/v1/chain/1", - "tracking": "none", - "trackingDetails": "When you use our Service, we does not track the IP address or other user info.https://polysplit.cloud/privacy" - }, - { - "url": "https://rpc.tornadoeth.cash/eth", - "tracking": "none", - "trackingDetails": "TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy" - }, - { - "url": "https://rpc.tornadoeth.cash/mev", - "tracking": "none", - "trackingDetails": "TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy" - }, - { - "url": "https://eth1.lava.build/lava-referer-ed07f753-8c19-4309-b632-5a4a421aa589", - "tracking": "yes", - "trackingDetails": "We, our service providers, and our business partners may automatically log information about you, your computer or mobile device, and your interaction over time with the Service..., such as: Device data, ...your computer or mobile device's operating system type and version, manufacturer and model, browser type, screen resolution, RAM and disk size, CPU usage, device type (e.g., phone, tablet), IP address, unique identifiers (including identifiers used for advertising purposes), language settings, mobile device carrier, radio/network information (e.g., Wi-Fi, LTE, 3G), and general location information such as city, state or geographic area. https://www.lavanet.xyz/privacy-policy" - }, - { - "url": "https://eth1.lava.build/lava-referer-16223de7-12c0-49f3-8d87-e5f1e6a0eb3b", - "tracking": "yes", - "trackingDetails": "We, our service providers, and our business partners may automatically log information about you, your computer or mobile device, and your interaction over time with the Service..., such as: Device data, ...your computer or mobile device's operating system type and version, manufacturer and model, browser type, screen resolution, RAM and disk size, CPU usage, device type (e.g., phone, tablet), IP address, unique identifiers (including identifiers used for advertising purposes), language settings, mobile device carrier, radio/network information (e.g., Wi-Fi, LTE, 3G), and general location information such as city, state or geographic area. https://www.lavanet.xyz/privacy-policy" - }, - { - "url": "https://api.mycryptoapi.com/eth" - }, - { - "url": "wss://mainnet.gateway.tenderly.co" - }, - { - "url": "https://rpc.blocknative.com/boost" - }, - { - "url": "https://rpc.flashbots.net/fast" - }, - { - "url": "https://rpc.mevblocker.io/fast" - }, - { - "url": "https://rpc.mevblocker.io/noreverts" - }, - { - "url": "https://rpc.mevblocker.io/fullprivacy" - }, - { - "url": "wss://eth.drpc.org" - } - ], - "2": [ - { - "url": "https://node.eggs.cool" - }, - { - "url": "https://node.expanse.tech" - } - ], - "3": [ - { - "url": "https://rpc.ankr.com/eth_ropsten" - }, - { - "url": "https://ropsten.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161" - } - ], - "4": [ - { - "url": "https://rpc.ankr.com/eth_rinkeby" - }, - { - "url": "https://rinkeby.infura.io/3/9aa3d95b3bc440fa88ea12eaa4456161" - } - ], - "5": [ - { - "url": "https://rpc.ankr.com/eth_goerli", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://endpoints.omniatech.io/v1/eth/goerli/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://goerli.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161", - "tracking": "limited", - "trackingDetails": "We collect wallet and IP address information. The purpose of this collection is to ensure successful transaction propagation, execution, and other important service functionality such as load balancing and DDoS protection. IP addresses and wallet address data relating to a transaction are not stored together or in a way that allows our systems to associate those two pieces of data. We retain and delete user data such as IP address and wallet address pursuant to our data retention policy. https://consensys.net/blog/news/consensys-data-retention-update/" - }, - { - "url": "https://eth-goerli.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://eth-goerli.g.alchemy.com/v2/demo", - "tracking": "yes", - "trackingDetails": "We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy" - }, - { - "url": "https://goerli.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://eth-goerli.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://rpc.goerli.eth.gateway.fm", - "tracking": "yes", - "trackingDetails": "When you use our services or visit our websites, we may log your device\u2019s IP address for debugging and security reasons. We may retain this information for up to twelve months" - }, - { - "url": "https://ethereum-goerli-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://ethereum-goerli-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://goerli.gateway.tenderly.co", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://gateway.tenderly.co/public/goerli", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://api.zan.top/node/v1/eth/goerli/public", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - }, - { - "url": "https://builder-rpc1.0xblockswap.com", - "tracking": "yes", - "trackingDetails": "Blockswap RPC does not track any kind of user information at the builder RPC level (i.e. IP, location, etc.) nor is any information logged. All blocks are encrypted when passed between proposers, builders, relayers, and Ethereum. It does not transmit any transactions to the relayer. We use analytical cookies to see which content on the Site is highly frequented and also to analyze if content should be updated or improved. These cookies process and save data like your browser type, referrer URLs, operating system, date/time stamp, views and clicks on the Site, and your (truncated) IP address. For more information please visit: https://docs.pon.network/pon/privacy" - }, - { - "url": "https://builder-rpc2.0xblockswap.com", - "tracking": "yes", - "trackingDetails": "Blockswap RPC does not track any kind of user information at the builder RPC level (i.e. IP, location, etc.) nor is any information logged. All blocks are encrypted when passed between proposers, builders, relayers, and Ethereum. It does not transmit any transactions to the relayer. We use analytical cookies to see which content on the Site is highly frequented and also to analyze if content should be updated or improved. These cookies process and save data like your browser type, referrer URLs, operating system, date/time stamp, views and clicks on the Site, and your (truncated) IP address. For more information please visit: https://docs.pon.network/pon/privacy" - }, - { - "url": "https://rpc.tornadoeth.cash/goerli", - "tracking": "none", - "trackingDetails": "TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy" - }, - { - "url": "https://rpc.goerli.mudit.blog" - }, - { - "url": "wss://goerli.gateway.tenderly.co" - } - ], - "7": [ - { - "url": "https://rpc.dome.cloud" - }, - { - "url": "https://rpc.thaichain.org" - } - ], - "8": [ - { - "url": "https://rpc.octano.dev" - }, - { - "url": "https://pyrus2.ubiqscan.io" - } - ], - "10": [ - { - "url": "https://optimism.llamarpc.com", - "tracking": "none", - "trackingDetails": "LlamaNodes is open-source and does not track or store user information that transits through our RPCs (location, IP, wallet, etc). To learn more, have a look at the public Privacy Policy in our docs: https://llamanodes.notion.site/Privacy-Practices-f20fd8fdd02a469d9d4f42a5989bb936", - "isOpenSource": true - }, - { - "url": "https://mainnet.optimism.io" - }, - { - "url": "https://optimism-mainnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://rpc.ankr.com/optimism", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://1rpc.io/op", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://op-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://opt-mainnet.g.alchemy.com/v2/demo", - "tracking": "yes", - "trackingDetails": "We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy" - }, - { - "url": "https://optimism.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://endpoints.omniatech.io/v1/op/mainnet/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://optimism.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://rpc.optimism.gateway.fm", - "tracking": "yes", - "trackingDetails": "When you use our services or visit our websites, we may log your device\u2019s IP address for debugging and security reasons. We may retain this information for up to twelve months" - }, - { - "url": "https://optimism-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://optimism-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://optimism.meowrpc.com", - "tracking": "none", - "trackingDetails": "With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com" - }, - { - "url": "https://api.zan.top/node/v1/opt/mainnet/public", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - }, - { - "url": "https://optimism.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://optimism.gateway.tenderly.co", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://gateway.tenderly.co/public/optimism", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://api.stateless.solutions/optimism/v1/f373feb1-c8e4-41c9-bb74-2c691988dd34", - "tracking": "none", - "trackingDetails": "Through any of our RPC API endpoints, whether public or private, we do not collect personal identifiers such as IP addresses, request origins, or specific request data. https://www.stateless.solutions/api-usage-privacy-policy" - }, - { - "url": "https://rpc.tornadoeth.cash/optimism", - "tracking": "none", - "trackingDetails": "TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy" - }, - { - "url": "wss://optimism.gateway.tenderly.co" - }, - { - "url": "wss://optimism.drpc.org" - } - ], - "11": [ - { - "url": "https://api.metadium.com/dev" - }, - { - "url": "https://api.metadium.com/prod" - } - ], - "12": [ - { - "url": "https://api.metadium.com/dev" - } - ], - "13": [ - { - "url": "https://staging.diode.io:8443" - }, - { - "url": "wss://staging.diode.io:8443/ws" - } - ], - "14": [ - { - "url": "https://flare-api.flare.network/ext/C/rpc" - }, - { - "url": "https://flare.rpc.thirdweb.com" - }, - { - "url": "https://flare-bundler.etherspot.io" - }, - { - "url": "https://rpc.ankr.com/flare" - }, - { - "url": "https://01-gravelines-003-01.rpc.tatum.io/ext/bc/C/rpc" - }, - { - "url": "https://01-vinthill-003-02.rpc.tatum.io/ext/bc/C/rpc" - }, - { - "url": "https://rpc.ftso.au/flare" - }, - { - "url": "https://flare.enosys.global/ext/C/rpc" - }, - { - "url": "https://flare.solidifi.app/ext/C/rpc" - } - ], - "15": [ - { - "url": "https://prenet.diode.io:8443" - }, - { - "url": "wss://prenet.diode.io:8443/ws" - } - ], - "16": [ - { - "url": "https://coston-api.flare.network/ext/C/rpc" - }, - { - "url": "https://songbird-testnet-coston.rpc.thirdweb.com" - }, - { - "url": "https://01-gravelines-004-01.rpc.tatum.io/ext/bc/C/rpc" - }, - { - "url": "https://02-chicago-004-02.rpc.tatum.io/ext/bc/C/rpc" - }, - { - "url": "https://02-tokyo-004-03.rpc.tatum.io/ext/bc/C/rpc" - }, - { - "url": "https://coston.enosys.global/ext/C/rpc" - } - ], - "17": [ - { - "url": "https://rpc.thaifi.com" - } - ], - "18": [ - { - "url": "https://testnet-rpc.thundercore.com" - }, - { - "url": "https://thundercore-testnet.drpc.org" - }, - { - "url": "wss://thundercore-testnet.drpc.org" - } - ], - "19": [ - { - "url": "https://songbird.towolabs.com/rpc" - }, - { - "url": "https://songbird-api.flare.network/ext/C/rpc" - }, - { - "url": "https://01-gravelines-006-01.rpc.tatum.io/ext/bc/C/rpc" - }, - { - "url": "https://01-vinthill-006-02.rpc.tatum.io/ext/bc/C/rpc" - }, - { - "url": "https://02-tokyo-006-03.rpc.tatum.io/ext/bc/C/rpc" - }, - { - "url": "https://rpc.ftso.au/songbird" - }, - { - "url": "https://songbird.enosys.global/ext/C/rpc" - }, - { - "url": "https://songbird.solidifi.app/ext/C/rpc" - } - ], - "20": [ - { - "url": "https://api.elastos.io/esc" - }, - { - "url": "https://api.trinity-tech.io/esc" - }, - { - "url": "https://api.elastos.io/eth" - } - ], - "21": [ - { - "url": "https://api-testnet.elastos.io/eth" - } - ], - "22": [ - { - "url": "https://api.trinity-tech.io/eid" - }, - { - "url": "https://api.elastos.io/eid" - } - ], - "24": [ - { - "url": "https://rpc.kardiachain.io" - } - ], - "25": [ - { - "url": "https://evm.cronos.org" - }, - { - "url": "https://cronos-rpc.elk.finance" - }, - { - "url": "https://cronos.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://cronos-evm-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://cronos-evm-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://1rpc.io/cro", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://cronos.drpc.org" - }, - { - "url": "wss://cronos.drpc.org" - } - ], - "26": [ - { - "url": "https://testrpc.genesisl1.org" - } - ], - "27": [ - { - "url": "https://rpc.shibachain.net" - }, - { - "url": "https://rpc.shibchain.org" - } - ], - "29": [ - { - "url": "https://rpc.genesisl1.org" - } - ], - "30": [ - { - "url": "https://public-node.rsk.co" - }, - { - "url": "https://mycrypto.rsk.co" - } - ], - "31": [ - { - "url": "https://public-node.testnet.rsk.co" - }, - { - "url": "https://mycrypto.testnet.rsk.co" - } - ], - "32": [ - { - "url": "https://test2.goodata.io" - } - ], - "33": [ - { - "url": "https://rpc.goodata.io" - } - ], - "34": [ - { - "url": "https://mainnet-rpc.scai.network" - } - ], - "35": [ - { - "url": "https://rpc.tbwg.io" - } - ], - "36": [ - { - "url": "https://mainnet.dxchain.com" - } - ], - "37": [ - { - "url": "https://dimension-evm-rpc.xpla.dev" - } - ], - "38": [ - { - "url": "https://rpc.valorbit.com/v2" - } - ], - "39": [ - { - "url": "https://rpc-mainnet.uniultra.xyz" - } - ], - "40": [ - { - "url": "https://mainnet.telos.net/evm" - }, - { - "url": "https://rpc1.eu.telos.net/evm" - }, - { - "url": "https://rpc1.us.telos.net/evm" - }, - { - "url": "https://rpc2.us.telos.net/evm" - }, - { - "url": "https://api.kainosbp.com/evm" - }, - { - "url": "https://rpc2.eu.telos.net/evm" - }, - { - "url": "https://evm.teloskorea.com/evm" - }, - { - "url": "https://rpc2.teloskorea.com/evm" - }, - { - "url": "https://rpc01.us.telosunlimited.io/evm" - }, - { - "url": "https://rpc02.us.telosunlimited.io/evm" - }, - { - "url": "https://1rpc.io/telos/evm", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://telos.drpc.org" - }, - { - "url": "wss://telos.drpc.org" - } - ], - "41": [ - { - "url": "https://testnet.telos.net/evm" - }, - { - "url": "https://telos-testnet.drpc.org" - }, - { - "url": "wss://telos-testnet.drpc.org" - } - ], - "42": [ - { - "url": "https://rpc.mainnet.lukso.network" - }, - { - "url": "wss://ws-rpc.mainnet.lukso.network" - } - ], - "43": [ - { - "url": "https://pangolin-rpc.darwinia.network" - } - ], - "44": [ - { - "url": "https://crab.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://crab-rpc.darwinia.network" - }, - { - "url": "https://crab-rpc.dcdao.box" - } - ], - "45": [ - { - "url": "https://pangoro-rpc.darwinia.network" - } - ], - "46": [ - { - "url": "https://rpc.darwinia.network" - }, - { - "url": "https://darwinia-rpc.dcdao.box" - }, - { - "url": "https://darwinia-rpc.dwellir.com" - } - ], - "47": [ - { - "url": "https://aic.acria.ai" - } - ], - "48": [ - { - "url": "https://rpc.etm.network" - } - ], - "49": [ - { - "url": "https://rpc.pioneer.etm.network" - } - ], - "50": [ - { - "url": "https://rpc.xdcrpc.com" - }, - { - "url": "https://rpc1.xinfin.network" - }, - { - "url": "https://erpc.xinfin.network" - }, - { - "url": "https://rpc.xinfin.network" - }, - { - "url": "https://erpc.xdcrpc.com" - }, - { - "url": "https://rpc.xdc.org" - }, - { - "url": "https://rpc.ankr.com/xdc", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://rpc-xdc.icecreamswap.com" - } - ], - "51": [ - { - "url": "https://rpc.apothem.network" - }, - { - "url": "https://erpc.apothem.network" - }, - { - "url": "https://apothem.xdcrpc.com" - } - ], - "52": [ - { - "url": "https://rpc.coinex.net" - }, - { - "url": "https://rpc1.coinex.net" - }, - { - "url": "https://rpc2.coinex.net" - }, - { - "url": "https://rpc3.coinex.net" - }, - { - "url": "https://rpc4.coinex.net" - } - ], - "53": [ - { - "url": "https://testnet-rpc.coinex.net" - } - ], - "54": [ - { - "url": "https://mainnet.openpiece.io" - } - ], - "55": [ - { - "url": "https://rpc-1.zyx.network" - }, - { - "url": "https://rpc-2.zyx.network" - }, - { - "url": "https://rpc-3.zyx.network" - }, - { - "url": "https://rpc-5.zyx.network" - }, - { - "url": "https://rpc-4.zyx.network" - }, - { - "url": "https://rpc-6.zyx.network" - } - ], - "56": [ - { - "url": "https://binance.llamarpc.com", - "tracking": "none", - "trackingDetails": "LlamaNodes is open-source and does not track or store user information that transits through our RPCs (location, IP, wallet, etc). To learn more, have a look at the public Privacy Policy in our docs: https://llamanodes.notion.site/Privacy-Practices-f20fd8fdd02a469d9d4f42a5989bb936", - "isOpenSource": true - }, - { - "url": "https://bsc-dataseed.bnbchain.org" - }, - { - "url": "https://bsc-dataseed1.defibit.io" - }, - { - "url": "https://bsc-dataseed1.ninicoin.io" - }, - { - "url": "https://bsc-dataseed2.defibit.io" - }, - { - "url": "https://bsc-dataseed3.defibit.io" - }, - { - "url": "https://bsc-dataseed4.defibit.io" - }, - { - "url": "https://bsc-dataseed2.ninicoin.io" - }, - { - "url": "https://bsc-dataseed3.ninicoin.io" - }, - { - "url": "https://bsc-dataseed4.ninicoin.io" - }, - { - "url": "https://bsc-dataseed1.bnbchain.org" - }, - { - "url": "https://bsc-dataseed2.bnbchain.org" - }, - { - "url": "https://bsc-dataseed3.bnbchain.org" - }, - { - "url": "https://bsc-dataseed4.bnbchain.org" - }, - { - "url": "https://bsc-dataseed6.dict.life" - }, - { - "url": "https://rpc-bsc.48.club", - "tracking": "limited", - "trackingDetails": "IP addresses will be read for rate-limit purpose without being actively stored at application layer. Also notice that we don't actively purge user footprint in lower-level protocol." - }, - { - "url": "https://koge-rpc-bsc.48.club", - "tracking": "limited", - "trackingDetails": "IP addresses will be read for rate-limit purpose without being actively stored at application layer. Also notice that we don't actively purge user footprint in lower-level protocol." - }, - { - "url": "https://endpoints.omniatech.io/v1/bsc/mainnet/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://bsc-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://bsc-mainnet.nodereal.io/v1/64a9df0874fb4a93b9d0a3849de012d3", - "tracking": "yes", - "trackingDetails": `We may automatically record certain information about how you use our Sites (we refer to this information as "Log Data"). Log Data may include information such as a user's Internet Protocol (IP) address, device and browser type, operating system, the pages or features of our Sites to which a user browsed and the time spent on those pages or features, the frequency with which the Sites are used by a user, search terms, the links on our Sites that a user clicked on or used, and other statistics. We use this information to administer the Service and we analyze (and may engage third parties to analyze) this information to improve and enhance the Service by expanding its features and functionality and tailoring it to our users' needs and preferences. https://nodereal.io/terms` - }, - { - "url": "https://rpc.ankr.com/bsc", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://getblock.io/nodes/bsc", - "tracking": "limited", - "trackingDetails": "We automatically collect certain information through cookies and similar technologies when you visit, use or navigate Website. This information does not reveal your specific identity (like your name or contact information) and does not allow to identify you. However, it may include device and usage information, such as your IP address, browser and device characteristics, its type and version, operating system, language preferences, referring URLs, device name, country, location, information about how and when you use our Website, information about your interaction in our emails, and other technical and statistical information. This information is primarily needed to maintain the security and operation of our Website, and for our internal analytics and reporting purposes.Specifically, as the RPC provider, we do not log and store your IP address, country, location and similar data. https://getblock.io/privacy-policy/" - }, - { - "url": "https://bscrpc.com" - }, - { - "url": "https://bsc.rpcgator.com" - }, - { - "url": "https://binance.nodereal.io", - "tracking": "yes", - "trackingDetails": `We may automatically record certain information about how you use our Sites (we refer to this information as "Log Data"). Log Data may include information such as a user's Internet Protocol (IP) address, device and browser type, operating system, the pages or features of our Sites to which a user browsed and the time spent on those pages or features, the frequency with which the Sites are used by a user, search terms, the links on our Sites that a user clicked on or used, and other statistics. We use this information to administer the Service and we analyze (and may engage third parties to analyze) this information to improve and enhance the Service by expanding its features and functionality and tailoring it to our users' needs and preferences. https://nodereal.io/terms` - }, - { - "url": "https://bsc-mainnet.rpcfast.com?api_key=xbhWBI1Wkguk8SNMu1bvvLurPGLXmgwYeC4S6g2H7WdwFigZSmPWVZRxrskEQwIf" - }, - { - "url": "https://nodes.vefinetwork.org/smartchain" - }, - { - "url": "https://1rpc.io/bnb", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://bsc.rpc.blxrbdn.com", - "tracking": "yes", - "trackingDetails": "We may collect information that is publicly available in a blockchain when providing our services, such as: Public wallet identifier of the sender and recipient of a transaction, Unique identifier for a transaction, Date and time of a transaction, Transaction value, along with associated costs, Status of a transaction (such as whether the transaction is complete, in-progress, or resulted in an error) https://bloxroute.com/wp-content/uploads/2021/12/bloXroute-Privacy-Policy-04-01-2019-Final.pdf" - }, - { - "url": "https://bsc.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://bnb.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://bsc-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://bsc-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://bsc-mainnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://bsc.meowrpc.com", - "tracking": "none", - "trackingDetails": "With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com" - }, - { - "url": "https://api.zan.top/node/v1/bsc/mainnet/public", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - }, - { - "url": "https://bsc.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://services.tokenview.io/vipapi/nodeservice/bsc?apikey=qVHq2o6jpaakcw3lRstl", - "tracking": "yes", - "trackingDetails": "Information about your computer hardware and software may be automatically collected by Tokenview. This information can include such details as your IP address, browser type, domain names, access times, etc.https://services.tokenview.io/en/protocol" - }, - { - "url": "https://rpc.polysplit.cloud/v1/chain/56", - "tracking": "none", - "trackingDetails": "When you use our Service, we does not track the IP address or other user info.https://polysplit.cloud/privacy" - }, - { - "url": "https://rpc.tornadoeth.cash/bsc", - "tracking": "none", - "trackingDetails": "TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy" - }, - { - "url": "wss://bsc-ws-node.nariox.org" - } - ], - "57": [ - { - "url": "https://rpc.syscoin.org" - }, - { - "url": "https://rpc.ankr.com/syscoin", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://syscoin-evm-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://syscoin-evm-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://rpc.ankr.com/syscoin/${ANKR_API_KEY}" - }, - { - "url": "https://syscoin.public-rpc.com" - }, - { - "url": "wss://rpc.syscoin.org/wss" - }, - { - "url": "https://syscoin-evm.publicnode.com" - }, - { - "url": "wss://syscoin-evm.publicnode.com" - } - ], - "58": [ - { - "url": "https://dappnode1.ont.io:10339" - }, - { - "url": "https://dappnode2.ont.io:10339" - }, - { - "url": "https://dappnode3.ont.io:10339" - }, - { - "url": "https://dappnode4.ont.io:10339" - }, - { - "url": "http://dappnode1.ont.io:20339" - }, - { - "url": "http://dappnode2.ont.io:20339" - }, - { - "url": "http://dappnode3.ont.io:20339" - }, - { - "url": "http://dappnode4.ont.io:20339" - } - ], - "60": [ - { - "url": "https://rpc.gochain.io" - } - ], - "61": [ - { - "url": "https://etc.mytokenpocket.vip" - }, - { - "url": "https://rpc.etcinscribe.com" - }, - { - "url": "https://etc.etcdesktop.com" - }, - { - "url": "https://besu-de.etc-network.info", - "tracking": "limited", - "trackingDetails": "We do use analytics at 3rd party tracking websites (Google Analytics & Google Search Console) the following interactions with our systems are automatically logged when you access our services, such as your Internet Protocol (IP) address as well as accessed services and pages(Packet details are discarded / not logged!). Data redemption is varying based on traffic, but deleted after 31 days." - }, - { - "url": "https://geth-de.etc-network.info", - "tracking": "limited", - "trackingDetails": "We do use analytics at 3rd party tracking websites (Google Analytics & Google Search Console) the following interactions with our systems are automatically logged when you access our services, such as your Internet Protocol (IP) address as well as accessed services and pages(Packet details are discarded / not logged!). Data redemption is varying based on traffic, but deleted after 31 days." - }, - { - "url": "https://besu-at.etc-network.info", - "tracking": "limited", - "trackingDetails": "We do use analytics at 3rd party tracking websites (Google Analytics & Google Search Console) the following interactions with our systems are automatically logged when you access our services, such as your Internet Protocol (IP) address as well as accessed services and pages(Packet details are discarded / not logged!). Data redemption is varying based on traffic, but deleted after 31 days." - }, - { - "url": "https://geth-at.etc-network.info", - "tracking": "limited", - "trackingDetails": "We do use analytics at 3rd party tracking websites (Google Analytics & Google Search Console) the following interactions with our systems are automatically logged when you access our services, such as your Internet Protocol (IP) address as well as accessed services and pages(Packet details are discarded / not logged!). Data redemption is varying based on traffic, but deleted after 31 days." - }, - { - "url": "https://services.tokenview.io/vipapi/nodeservice/etc?apikey=qVHq2o6jpaakcw3lRstl", - "tracking": "yes", - "trackingDetails": "Information about your computer hardware and software may be automatically collected by Tokenview. This information can include such details as your IP address, browser type, domain names, access times, etc.https://services.tokenview.io/en/protocol" - }, - { - "url": "https://etc.rivet.link", - "tracking": "none", - "trackingDetails": "We collect End Users\u2019 information when they use our Customers\u2019 web3-enabled websites, web applications, and APIs. This information may include but is not limited to IP addresses, system configuration information, and other information about traffic to and from Customers\u2019 websites (collectively, \u201CLog Data\u201D). We collect and use Log Data to operate, maintain, and improve our Services in performance of our obligations under our Customer agreements.https://rivet.cloud/privacy-policy" - } - ], - "63": [ - { - "url": "https://rpc.mordor.etccooperative.org" - }, - { - "url": "https://geth-mordor.etc-network.info", - "tracking": "limited", - "trackingDetails": "We do use analytics at 3rd party tracking websites (Google Analytics & Google Search Console) the following interactions with our systems are automatically logged when you access our services, such as your Internet Protocol (IP) address as well as accessed services and pages(Packet details are discarded / not logged!). Data redemption is varying based on traffic, but deleted after 31 days." - } - ], - "64": [ - { - "url": "https://jsonrpc.ellaism.org" - } - ], - "65": [ - { - "url": "https://exchaintestrpc.okex.org" - } - ], - "66": [ - { - "url": "https://exchainrpc.okex.org" - }, - { - "url": "https://oktc-mainnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://okt-chain.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://1rpc.io/oktc", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://okc-mainnet.gateway.pokt.network/v1/lb/6275309bea1b320039c893ff" - } - ], - "67": [ - { - "url": "http://test-rpc.dbmbp.com" - } - ], - "68": [ - { - "url": "https://rpc.soter.one" - } - ], - "69": [ - { - "url": "https://kovan.optimism.io" - } - ], - "70": [ - { - "url": "https://http-mainnet.hoosmartchain.com" - }, - { - "url": "https://http-mainnet2.hoosmartchain.com" - }, - { - "url": "wss://ws-mainnet.hoosmartchain.com" - }, - { - "url": "wss://ws-mainnet2.hoosmartchain.com" - } - ], - "71": [ - { - "url": "https://evmtestnet.confluxrpc.com" - } - ], - "72": [ - { - "url": "https://testnet-http.dxchain.com" - } - ], - "73": [ - { - "url": "https://fncy-seed1.fncy.world" - } - ], - "74": [ - { - "url": "https://idchain.one/rpc" - }, - { - "url": "wss://idchain.one/ws" - } - ], - "75": [ - { - "url": "https://node.decimalchain.com/web3" - }, - { - "url": "https://node1-mainnet.decimalchain.com/web3" - }, - { - "url": "https://node2-mainnet.decimalchain.com/web3" - }, - { - "url": "https://node3-mainnet.decimalchain.com/web3" - }, - { - "url": "https://node4-mainnet.decimalchain.com/web3" - } - ], - "76": [ - { - "url": "https://rpc2.mix-blockchain.org:8647" - } - ], - "77": [ - { - "url": "https://sokol.poa.network" - }, - { - "url": "wss://sokol.poa.network/wss" - }, - { - "url": "ws://sokol.poa.network:8546" - } - ], - "78": [ - { - "url": "https://ethnode.primusmoney.com/mainnet" - } - ], - "79": [ - { - "url": "https://dataserver-us-1.zenithchain.co" - }, - { - "url": "https://dataserver-asia-3.zenithchain.co" - }, - { - "url": "https://dataserver-asia-4.zenithchain.co" - }, - { - "url": "https://dataserver-asia-2.zenithchain.co" - }, - { - "url": "https://dataserver-asia-5.zenithchain.co" - }, - { - "url": "https://dataserver-asia-6.zenithchain.co" - }, - { - "url": "https://dataserver-asia-7.zenithchain.co" - } - ], - "80": [ - { - "url": "website:https://genechain.io/en/index.html" - }, - { - "url": "https://rpc.genechain.io" - } - ], - "81": [ - { - "url": "https://rpc-1.japanopenchain.org:8545" - }, - { - "url": "https://rpc-2.japanopenchain.org:8545" - }, - { - "url": "https://rpc-3.japanopenchain.org" - } - ], - "82": [ - { - "url": "https://rpc.meter.io" - }, - { - "url": "https://rpc-meter.jellypool.xyz", - "tracking": "yes", - "trackingDetails": "The information collected by log files include internet protocol (IP) addresses, browser type, Internet Service Provider (ISP), date and time stamp, referring/exit pages, and possibly the number of clicks. These are not linked to any information that is personally identifiable. The purpose of the information is for analyzing trends, administering the site, tracking users' movement on the website, and gathering demographic information. https://www.jellypool.xyz/privacy/" - }, - { - "url": "https://meter.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - } - ], - "83": [ - { - "url": "https://rpctest.meter.io" - } - ], - "84": [ - { - "url": "https://linqto-dev.com" - } - ], - "85": [ - { - "url": "https://testnet.gatenode.cc" - } - ], - "86": [ - { - "url": "https://evm.gatenode.cc" - } - ], - "87": [ - { - "url": "https://rpc.novanetwork.io:9070", - "tracking": "none", - "trackingDetails": "Only strictly functional data is automatically collected by the RPC. None of this data is directly exported or used for commercial purposes." - }, - { - "url": "https://dev.rpc.novanetwork.io", - "tracking": "none", - "trackingDetails": "Only strictly functional data is automatically collected by the RPC. None of this data is directly exported or used for commercial purposes." - }, - { - "url": "https://connect.novanetwork.io" - }, - { - "url": "https://0x57.redjackstudio.com" - } - ], - "88": [ - { - "url": "https://rpc.tomochain.com" - }, - { - "url": "https://viction.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://rpc.viction.xyz" - } - ], - "89": [ - { - "url": "https://rpc-testnet.viction.xyz" - } - ], - "90": [ - { - "url": "https://s0.garizon.net/rpc" - } - ], - "91": [ - { - "url": "https://s1.garizon.net/rpc" - } - ], - "92": [ - { - "url": "https://s2.garizon.net/rpc" - } - ], - "93": [ - { - "url": "https://s3.garizon.net/rpc" - } - ], - "94": [ - { - "url": "https://rpc.swissdlt.ch" - } - ], - "95": [ - { - "url": "https://rpc1.camdl.gov.kh" - } - ], - "96": [ - { - "url": "https://rpc.bitkubchain.io" - }, - { - "url": "wss://wss.bitkubchain.io" - } - ], - "97": [ - { - "url": "https://endpoints.omniatech.io/v1/bsc/testnet/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://bsctestapi.terminet.io/rpc" - }, - { - "url": "https://bsc-testnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://bsc-testnet-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://bsc-testnet-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://api.zan.top/node/v1/bsc/testnet/public", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - }, - { - "url": "https://bsc-testnet.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://data-seed-prebsc-1-s1.bnbchain.org:8545" - }, - { - "url": "https://data-seed-prebsc-2-s1.bnbchain.org:8545" - }, - { - "url": "https://data-seed-prebsc-1-s2.bnbchain.org:8545" - }, - { - "url": "https://data-seed-prebsc-2-s2.bnbchain.org:8545" - }, - { - "url": "https://data-seed-prebsc-1-s3.bnbchain.org:8545" - }, - { - "url": "https://data-seed-prebsc-2-s3.bnbchain.org:8545" - } - ], - "98": [ - { - "url": "https://sixnet-rpc-evm.sixprotocol.net" - } - ], - "99": [ - { - "url": "https://core.poanetwork.dev" - }, - { - "url": "https://core.poa.network" - } - ], - "100": [ - { - "url": "https://rpc.gnosischain.com" - }, - { - "url": "https://xdai-archive.blockscout.com" - }, - { - "url": "https://gnosis-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://rpc.gnosis.gateway.fm", - "tracking": "yes", - "trackingDetails": "When you use our services or visit our websites, we may log your device\u2019s IP address for debugging and security reasons. We may retain this information for up to twelve months" - }, - { - "url": "https://gnosis-mainnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://rpc.ankr.com/gnosis", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://rpc.ap-southeast-1.gateway.fm/v4/gnosis/non-archival/mainnet", - "tracking": "yes", - "trackingDetails": "When you use our services or visit our websites, we may log your device\u2019s IP address for debugging and security reasons. We may retain this information for up to twelve months" - }, - { - "url": "https://gnosis.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://gnosis.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://gnosis.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://endpoints.omniatech.io/v1/gnosis/mainnet/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://gnosis-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://gnosis-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://1rpc.io/gnosis", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://rpc.tornadoeth.cash/gnosis", - "tracking": "none", - "trackingDetails": "TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy" - }, - { - "url": "https://gnosischain-rpc.gateway.pokt.network" - }, - { - "url": "https://web3endpoints.com/gnosischain-mainnet" - }, - { - "url": "https://gnosis.oat.farm" - }, - { - "url": "wss://rpc.gnosischain.com/wss" - } - ], - "101": [ - { - "url": "https://api.einc.io/jsonrpc/mainnet" - } - ], - "102": [ - { - "url": "https://testnet-rpc-0.web3games.org/evm" - }, - { - "url": "https://testnet-rpc-1.web3games.org/evm" - }, - { - "url": "https://testnet-rpc-2.web3games.org/evm" - } - ], - "103": [ - { - "url": "https://seoul.worldland.foundation" - }, - { - "url": "https://seoul2.worldland.foundation" - } - ], - "104": [ - { - "url": "https://klc.live" - } - ], - "105": [ - { - "url": "https://devnet.web3games.org/evm" - } - ], - "106": [ - { - "url": "https://evmexplorer.velas.com/rpc" - }, - { - "url": "https://velas-mainnet.rpcfast.com?api_key=xbhWBI1Wkguk8SNMu1bvvLurPGLXmgwYeC4S6g2H7WdwFigZSmPWVZRxrskEQwIf" - }, - { - "url": "https://explorer.velas.com/rpc" - } - ], - "107": [ - { - "url": "https://testnet.rpc.novanetwork.io" - } - ], - "108": [ - { - "url": "https://mainnet-rpc.thundercore.com" - }, - { - "url": "https://mainnet-rpc.thundertoken.net" - }, - { - "url": "https://mainnet-rpc.thundercore.io" - } - ], - "109": [ - { - "url": "https://www.shibrpc.com" - } - ], - "110": [ - { - "url": "https://protontestnet.greymass.com" - } - ], - "111": [ - { - "url": "https://rpc.etherlite.org" - } - ], - "112": [ - { - "url": "https://coinbit-rpc-mainnet.chain.sbcrypto.app" - } - ], - "113": [ - { - "url": "https://connect.dehvo.com" - }, - { - "url": "https://rpc.dehvo.com" - }, - { - "url": "https://rpc1.dehvo.com" - }, - { - "url": "https://rpc2.dehvo.com" - } - ], - "114": [ - { - "url": "https://coston2-api.flare.network/ext/C/rpc" - }, - { - "url": "https://flare-testnet-coston2.rpc.thirdweb.com" - }, - { - "url": "https://flaretestnet-bundler.etherspot.io" - }, - { - "url": "https://01-gravelines-005-01.rpc.tatum.io/ext/bc/C/rpc" - }, - { - "url": "https://02-chicago-005-02.rpc.tatum.io/ext/bc/C/rpc" - }, - { - "url": "https://02-tokyo-005-03.rpc.tatum.io/ext/bc/C/rpc" - }, - { - "url": "https://coston2.enosys.global/ext/C/rpc" - } - ], - "117": [ - { - "url": "https://json-rpc.uptick.network" - } - ], - "118": [ - { - "url": "https://testnet.arcology.network/rpc" - } - ], - "119": [ - { - "url": "https://evmapi.nuls.io" - }, - { - "url": "https://evmapi2.nuls.io" - } - ], - "120": [ - { - "url": "https://beta.evmapi.nuls.io" - }, - { - "url": "https://beta.evmapi2.nuls.io" - } - ], - "121": [ - { - "url": "https://rcl-dataseed1.rclsidechain.com" - }, - { - "url": "https://rcl-dataseed2.rclsidechain.com" - }, - { - "url": "https://rcl-dataseed3.rclsidechain.com" - }, - { - "url": "https://rcl-dataseed4.rclsidechain.com" - }, - { - "url": "wss://rcl-dataseed1.rclsidechain.com/v1" - }, - { - "url": "wss://rcl-dataseed2.rclsidechain.com/v1" - }, - { - "url": "wss://rcl-dataseed3.rclsidechain.com/v1" - }, - { - "url": "wss://rcl-dataseed4.rclsidechain.com/v1" - } - ], - "122": [ - { - "url": "https://rpc.fuse.io" - }, - { - "url": "https://fuse-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://fuse-mainnet.chainstacklabs.com", - "tracking": "yes", - "trackingDetails": "We process certain personal data to provide you with the core functionality of our Services. Specifically, when you are: Using the Chainstack Console, we process your name, surname, email address (your account identifier), organization name, IP address, all HTTP headers (most importantly User-Agent), cookies; Using the Chainstack Blockchain infrastructure, we process nodes' token stored in Chainstack Vault, IP address and HTTP headers, request body, API token in Chainstack Vault.https://chainstack.com/privacy/" - }, - { - "url": "https://fuse.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://fuse.liquify.com", - "tracking": "yes", - "trackingDetails": "What data do we collect? Information collected automatically from your device, including IP address, device type,operating system, browser-type, broad geographic location and other technical information.https://www.liquify.io/privacy_policy.pdf" - }, - { - "url": "https://fuse.drpc.org" - }, - { - "url": "wss://fuse.drpc.org" - } - ], - "123": [ - { - "url": "https://rpc.fusespark.io" - } - ], - "124": [ - { - "url": "https://decentralized-web.tech/dw_rpc.php" - } - ], - "125": [ - { - "url": "https://rpc.testnet.oychain.io" - } - ], - "126": [ - { - "url": "https://rpc.mainnet.oychain.io" - }, - { - "url": "https://rpc.oychain.io" - } - ], - "128": [ - { - "url": "https://http-mainnet.hecochain.com" - }, - { - "url": "https://http-mainnet-node.huobichain.com" - }, - { - "url": "https://hecoapi.terminet.io/rpc" - }, - { - "url": "wss://ws-mainnet.hecochain.com" - } - ], - "129": [ - { - "url": "https://rpc.innovatorchain.com" - } - ], - "131": [ - { - "url": "https://tokioswift.engram.tech" - }, - { - "url": "https://tokio-archive.engram.tech" - } - ], - "132": [ - { - "url": "https://rpc.chain.namefi.io" - } - ], - "133": [ - { - "url": "https://hashkeychain-testnet.alt.technology" - } - ], - "134": [ - { - "url": "https://bellecour.iex.ec" - } - ], - "135": [ - { - "url": "https://testnet-rpc.alyxchain.com" - } - ], - "136": [ - { - "url": "https://mainnet.deamchain.com" - } - ], - "137": [ - { - "url": "https://polygon.llamarpc.com", - "tracking": "none", - "trackingDetails": "LlamaNodes is open-source and does not track or store user information that transits through our RPCs (location, IP, wallet, etc). To learn more, have a look at the public Privacy Policy in our docs: https://llamanodes.notion.site/Privacy-Practices-f20fd8fdd02a469d9d4f42a5989bb936", - "isOpenSource": true - }, - { - "url": "https://rpc-mainnet.maticvigil.com" - }, - { - "url": "https://endpoints.omniatech.io/v1/matic/mainnet/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://polygon-rpc.com" - }, - { - "url": "https://rpc-mainnet.matic.network" - }, - { - "url": "https://rpc-mainnet.matic.quiknode.pro", - "tracking": "yes", - "trackingDetails": "Information about your computer hardware and software may be automatically collected by QuickNode. This information can include such details as your IP address, browser type, domain names, access times and referring website addresses.https://www.quicknode.com/privacy" - }, - { - "url": "https://matic-mainnet-full-rpc.bwarelabs.com" - }, - { - "url": "https://matic-mainnet-archive-rpc.bwarelabs.com" - }, - { - "url": "https://polygon-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://rpc.ankr.com/polygon", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://polygon-mainnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://polygonapi.terminet.io/rpc" - }, - { - "url": "https://1rpc.io/matic", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://polygon-mainnet.rpcfast.com?api_key=xbhWBI1Wkguk8SNMu1bvvLurPGLXmgwYeC4S6g2H7WdwFigZSmPWVZRxrskEQwIf" - }, - { - "url": "https://polygon-bor-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://polygon-bor-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://polygon-mainnet-public.unifra.io" - }, - { - "url": "https://polygon-mainnet.g.alchemy.com/v2/demo", - "tracking": "yes", - "trackingDetails": "We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy" - }, - { - "url": "https://polygon.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://polygon.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://polygon.rpc.blxrbdn.com", - "tracking": "yes", - "trackingDetails": "We may collect information that is publicly available in a blockchain when providing our services, such as: Public wallet identifier of the sender and recipient of a transaction, Unique identifier for a transaction, Date and time of a transaction, Transaction value, along with associated costs, Status of a transaction (such as whether the transaction is complete, in-progress, or resulted in an error) https://bloxroute.com/wp-content/uploads/2021/12/bloXroute-Privacy-Policy-04-01-2019-Final.pdf" - }, - { - "url": "https://polygon.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://polygon.gateway.tenderly.co", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://gateway.tenderly.co/public/polygon", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://api.zan.top/node/v1/polygon/mainnet/public", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - }, - { - "url": "https://polygon.meowrpc.com", - "tracking": "none", - "trackingDetails": "With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com" - }, - { - "url": "https://getblock.io/nodes/matic", - "tracking": "none", - "trackingDetails": "We automatically collect certain information through cookies and similar technologies when you visit, use or navigate Website. This information does not reveal your specific identity (like your name or contact information) and does not allow to identify you. However, it may include device and usage information, such as your IP address, browser and device characteristics, its type and version, operating system, language preferences, referring URLs, device name, country, location, information about how and when you use our Website, information about your interaction in our emails, and other technical and statistical information. This information is primarily needed to maintain the security and operation of our Website, and for our internal analytics and reporting purposes.Specifically, as the RPC provider, we do not log and store your IP address, country, location and similar data. https://getblock.io/privacy-policy/" - }, - { - "url": "https://api.stateless.solutions/polygon/v1/5850f066-209e-4e3c-a294-0757a4eb34b3", - "tracking": "none", - "trackingDetails": "Through any of our RPC API endpoints, whether public or private, we do not collect personal identifiers such as IP addresses, request origins, or specific request data. https://www.stateless.solutions/api-usage-privacy-policy" - }, - { - "url": "https://rpc.tornadoeth.cash/polygon", - "tracking": "none", - "trackingDetails": "TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy" - }, - { - "url": "https://matic-mainnet.chainstacklabs.com" - }, - { - "url": "wss://polygon.gateway.tenderly.co" - }, - { - "url": "wss://polygon.drpc.org" - } - ], - "138": [ - { - "url": "https://rpc.defi-oracle.io" - }, - { - "url": "wss://wss.defi-oracle.io" - } - ], - "139": [ - { - "url": "https://rpc.woop.ai/rpc" - } - ], - "140": [ - { - "url": "https://mainnet.eternalcoin.io/v1" - }, - { - "url": "ws://mainnet.eternalcoin.io/v1/ws" - } - ], - "141": [ - { - "url": "https://testnet.openpiece.io" - } - ], - "142": [ - { - "url": "https://rpc.prodax.io" - } - ], - "144": [ - { - "url": "https://connect.phi.network" - } - ], - "145": [ - { - "url": "https://rpc-testnet.soraai.bot" - } - ], - "147": [ - { - "url": "https://mainnet-rpc.flagscan.xyz" - } - ], - "148": [ - { - "url": "https://json-rpc.evm.shimmer.network" - } - ], - "150": [ - { - "url": "https://rpc-evm.fivenet.sixprotocol.net" - } - ], - "153": [ - { - "url": "https://governors.testnet.redbelly.network" - } - ], - "155": [ - { - "url": "https://rpc.testnet.tenet.org" - } - ], - "156": [ - { - "url": "https://testnet-rpc.oeblock.com" - } - ], - "157": [ - { - "url": "https://puppynet.shibrpc.com" - } - ], - "158": [ - { - "url": "https://dataseed.roburna.com" - } - ], - "159": [ - { - "url": "https://preseed-testnet-1.roburna.com" - } - ], - "160": [ - { - "url": "https://evascan.io/api/eth-rpc" - } - ], - "161": [ - { - "url": "https://testnet.evascan.io/api/eth-rpc" - } - ], - "162": [ - { - "url": "https://node.sirius.lightstreams.io" - } - ], - "163": [ - { - "url": "https://node.mainnet.lightstreams.io" - } - ], - "164": [ - { - "url": "https://omega.omni.network" - }, - { - "url": "wss://wss.omega.omni.network" - } - ], - "167": [ - { - "url": "https://node.atoshi.io" - }, - { - "url": "https://node2.atoshi.io" - }, - { - "url": "https://node3.atoshi.io" - } - ], - "168": [ - { - "url": "https://eth-dataseed.aioz.network" - } - ], - "169": [ - { - "url": "https://pacific-rpc.manta.network/http" - }, - { - "url": "https://1rpc.io/manta", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://manta-pacific.drpc.org" - }, - { - "url": "wss://manta-pacific.drpc.org" - } - ], - "170": [ - { - "url": "https://http-testnet.hoosmartchain.com" - } - ], - "172": [ - { - "url": "https://rpc.latam-blockchain.com" - }, - { - "url": "wss://ws.latam-blockchain.com" - } - ], - "176": [ - { - "url": "https://rpc.dcnetio.cloud" - }, - { - "url": "wss://ws.dcnetio.cloud" - } - ], - "178": [ - { - "url": "https://testrpc.abeychain.com" - } - ], - "179": [ - { - "url": "https://rpc.abeychain.com" - } - ], - "180": [ - { - "url": "https://node1.amechain.io" - } - ], - "181": [ - { - "url": "https://rpc.waterfall.network" - } - ], - "184": [ - { - "url": "https://rpc-test-d11k.dojima.network" - } - ], - "185": [ - { - "url": "https://rpc.mintchain.io" - }, - { - "url": "https://global.rpc.mintchain.io" - }, - { - "url": "https://asia.rpc.mintchain.io" - } - ], - "186": [ - { - "url": "https://rpc.seelen.pro" - } - ], - "187": [ - { - "url": "https://rpc-d11k.dojima.network" - } - ], - "188": [ - { - "url": "https://mainnet.bmcchain.com" - } - ], - "189": [ - { - "url": "https://testnet.bmcchain.com" - } - ], - "190": [ - { - "url": "https://bbqchain-rpc.commudao.xyz" - } - ], - "191": [ - { - "url": "https://rpc.filefilego.com/rpc" - } - ], - "193": [ - { - "url": "https://cemchain.com" - } - ], - "195": [ - { - "url": "https://x1-testnet.blockpi.network/v1/rpc/public ", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://testrpc.xlayer.tech" - }, - { - "url": "https://xlayertestrpc.okx.com" - } - ], - "196": [ - { - "url": "https://rpc.xlayer.tech" - }, - { - "url": "https://xlayerrpc.okx.com" - } - ], - "197": [ - { - "url": "https://testnet-rpc.neutrinoschain.com" - } - ], - "198": [ - { - "url": "https://rpc.bitchain.biz" - } - ], - "199": [ - { - "url": "https://rpc.bittorrentchain.io" - }, - { - "url": "https://rpc.bt.io" - }, - { - "url": "https://bittorrent.drpc.org" - }, - { - "url": "wss://bittorrent.drpc.org" - } - ], - "200": [ - { - "url": "https://arbitrum.xdaichain.com" - } - ], - "201": [ - { - "url": "https://gateway.moac.io/testnet" - } - ], - "202": [ - { - "url": "https://testnet.rpc.edgeless.network/http" - } - ], - "204": [ - { - "url": "https://opbnb-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://opbnb-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://1rpc.io/opbnb", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://opbnb-mainnet-rpc.bnbchain.org" - }, - { - "url": "https://opbnb-mainnet.nodereal.io/v1/64a9df0874fb4a93b9d0a3849de012d3" - }, - { - "url": "wss://opbnb-mainnet.nodereal.io/ws/v1/64a9df0874fb4a93b9d0a3849de012d3" - }, - { - "url": "https://opbnb-mainnet.nodereal.io/v1/e9a36765eb8a40b9bd12e680a1fd2bc5" - }, - { - "url": "wss://opbnb-mainnet.nodereal.io/ws/v1/e9a36765eb8a40b9bd12e680a1fd2bc5" - }, - { - "url": "https://opbnb.drpc.org" - }, - { - "url": "wss://opbnb.drpc.org" - } - ], - "205": [ - { - "url": "https://mainnet.ekaash.biz" - } - ], - "206": [ - { - "url": "https://vinufoundation-rpc.com" - } - ], - "207": [ - { - "url": "https://vinuchain-rpc.com" - } - ], - "208": [ - { - "url": "https://mainnet.structx.io" - } - ], - "210": [ - { - "url": "https://rpc.bitnet.money" - }, - { - "url": "https://rpc.btnscan.com" - } - ], - "211": [ - { - "url": "http://13.57.207.168:3435" - }, - { - "url": "https://app.freighttrust.net/ftn/${API_KEY}" - } - ], - "212": [ - { - "url": "https://testnet-rpc.maplabs.io" - } - ], - "213": [ - { - "url": "https://hub-rpc.bsquared.network" - } - ], - "214": [ - { - "url": "https://mainnet.shinarium.org" - } - ], - "217": [ - { - "url": "https://rpc2.siriusnet.io" - } - ], - "220": [ - { - "url": "https://rpc-sepolia.scalind.com" - } - ], - "221": [ - { - "url": "https://rpc.blockex.biz" - } - ], - "223": [ - { - "url": "https://mainnet.b2-rpc.com" - }, - { - "url": "https://rpc.bsquared.network" - }, - { - "url": "https://b2-mainnet.alt.technology" - }, - { - "url": "https://b2-mainnet-public.s.chainbase.com" - }, - { - "url": "https://rpc.ankr.com/b2" - } - ], - "224": [ - { - "url": "https://testnet-rpc.vrd.network" - } - ], - "225": [ - { - "url": "https://rpc-mainnet.lachain.io" - } - ], - "226": [ - { - "url": "https://rpc-testnet.lachain.io" - } - ], - "228": [ - { - "url": "https://rpc_mainnet.mindnetwork.xyz" - }, - { - "url": "wss://rpc_mainnet.mindnetwork.xyz" - } - ], - "230": [ - { - "url": "https://rpc.swapdex.network" - }, - { - "url": "wss://ss.swapdex.network" - } - ], - "233": [ - { - "url": "https://testnet.ethernitychain.io" - } - ], - "234": [ - { - "url": "https://testnode.jumbochain.org" - } - ], - "236": [ - { - "url": "https://testnet.deamchain.com" - } - ], - "242": [ - { - "url": "https://rpcurl.mainnet.plgchain.com" - }, - { - "url": "https://rpcurl.plgchain.blockchain.evmnode.online" - }, - { - "url": "https://rpcurl.mainnet.plgchain.plinga.technology" - } - ], - "246": [ - { - "url": "https://rpc.energyweb.org" - }, - { - "url": "wss://rpc.energyweb.org/ws" - } - ], - "248": [ - { - "url": "https://oasys.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://oasys-mainnet.gateway.pokt.network/v1/lb/c967bd31" - }, - { - "url": "https://oasys-mainnet-archival.gateway.pokt.network/v1/lb/c967bd31" - }, - { - "url": "https://rpc.mainnet.oasys.games" - } - ], - "250": [ - { - "url": "https://rpcapi.fantom.network" - }, - { - "url": "https://endpoints.omniatech.io/v1/fantom/mainnet/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://fantom-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://rpc.ftm.tools" - }, - { - "url": "https://rpc.ankr.com/fantom", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://rpc.fantom.network" - }, - { - "url": "https://rpc2.fantom.network" - }, - { - "url": "https://rpc3.fantom.network" - }, - { - "url": "https://fantom-mainnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://1rpc.io/ftm", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://fantom.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://fantom-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://fantom-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://fantom.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://rpc.fantom.gateway.fm", - "tracking": "yes", - "trackingDetails": "When you use our services or visit our websites, we may log your device\u2019s IP address for debugging and security reasons. We may retain this information for up to twelve months" - }, - { - "url": "https://fantom.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "wss://fantom.drpc.org" - } - ], - "252": [ - { - "url": "https://rpc.frax.com" - } - ], - "254": [ - { - "url": "https://mainnet-rpc01.swanchain.io" - } - ], - "255": [ - { - "url": "https://1rpc.io/kroma", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://api.kroma.network" - }, - { - "url": "https://rpc-kroma.rockx.com" - } - ], - "256": [ - { - "url": "https://hecotestapi.terminet.io/rpc" - }, - { - "url": "https://http-testnet.hecochain.com" - }, - { - "url": "wss://ws-testnet.hecochain.com" - } - ], - "259": [ - { - "url": "https://mainnet.neonlink.io" - } - ], - "261": [ - { - "url": "https://rpc.gurunetwork.ai/archive/261" - } - ], - "262": [ - { - "url": "https://sur.nilin.org" - } - ], - "267": [ - { - "url": "https://rpc.ankr.com/neura_testnet" - } - ], - "269": [ - { - "url": "https://hpbnode.com" - }, - { - "url": "wss://ws.hpbnode.com" - } - ], - "271": [ - { - "url": "https://rpc.egonscan.com" - } - ], - "274": [ - { - "url": "https://rpc1.mainnet.lachain.network" - }, - { - "url": "https://rpc2.mainnet.lachain.network" - }, - { - "url": "https://lachain.rpc-nodes.cedalio.dev" - } - ], - "278": [ - { - "url": "https://rpc_mainnet.xfair.ai" - }, - { - "url": "wss://rpc_mainnet.xfair.ai" - } - ], - "279": [ - { - "url": "https://rpc.mainnet.bpxchain.cc" - }, - { - "url": "https://bpx-dataseed.infinex.cc" - } - ], - "282": [ - { - "url": "https://testnet.zkevm.cronos.org" - } - ], - "288": [ - { - "url": "https://mainnet.boba.network" - }, - { - "url": "https://boba-ethereum.gateway.tenderly.co", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://gateway.tenderly.co/public/boba-ethereum", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://1rpc.io/boba/eth", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://replica.boba.network" - }, - { - "url": "wss://boba-ethereum.gateway.tenderly.co" - }, - { - "url": "wss://gateway.tenderly.co/public/boba-ethereum" - }, - { - "url": "https://boba-eth.drpc.org" - }, - { - "url": "wss://boba-eth.drpc.org" - } - ], - "291": [ - { - "url": "https://rpc.orderly.network" - }, - { - "url": "https://l2-orderly-mainnet-0.t.conduit.xyz" - } - ], - "295": [ - { - "url": "https://mainnet.hashio.io/api" - } - ], - "296": [ - { - "url": "https://testnet.hashio.io/api" - } - ], - "297": [ - { - "url": "https://previewnet.hashio.io/api" - } - ], - "300": [ - { - "url": "https://zksync-era-sepolia.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://sepolia.era.zksync.dev" - }, - { - "url": "https://zksync-sepolia.drpc.org" - }, - { - "url": "wss://zksync-sepolia.drpc.org" - } - ], - "302": [ - { - "url": "https://sepolia.rpc.zkcandy.io" - } - ], - "303": [ - { - "url": "https://nc-rpc-test1.neurochain.io" - } - ], - "305": [ - { - "url": "https://mainnet.zksats.io" - } - ], - "307": [ - { - "url": "https://trpc.lovely.network" - } - ], - "308": [ - { - "url": "https://rpc.furtheon.org" - } - ], - "309": [ - { - "url": "https://rpc-testnet3.wyzthchain.org" - } - ], - "311": [ - { - "url": "https://mainapi.omaxray.com" - } - ], - "313": [ - { - "url": "https://nc-rpc-prd1.neurochain.io" - }, - { - "url": "https://nc-rpc-prd2.neurochain.io" - } - ], - "314": [ - { - "url": "https://api.node.glif.io" - }, - { - "url": "https://node.filutils.com/rpc/v1" - }, - { - "url": "https://rpc.ankr.com/filecoin", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://filecoin.chainup.net/rpc/v1", - "tracking": "limited", - "trackingDetails": "We only collect user IP addresses for the purpose of rate limiting. For more information, please visit https://docs.chainupcloud.com/introduction/products/blockchain-api." - }, - { - "url": "https://infura.sftproject.io/filecoin/rpc/v1", - "tracking": "yes", - "trackingDetails": "Information collected automatically may include usage details, IP addresses, and information collected through cookies and other tracking technologies" - }, - { - "url": "https://api.chain.love/rpc/v1" - }, - { - "url": "https://filecoin-mainnet.chainstacklabs.com/rpc/v1" - }, - { - "url": "https://filfox.info/rpc/v1" - }, - { - "url": "https://filecoin.drpc.org" - }, - { - "url": "wss://filecoin.drpc.org" - } - ], - "321": [ - { - "url": "https://rpc-mainnet.kcc.network" - }, - { - "url": "https://kcc.mytokenpocket.vip" - }, - { - "url": "https://kcc-rpc.com" - }, - { - "url": "https://services.tokenview.io/vipapi/nodeservice/kcs?apikey=qVHq2o6jpaakcw3lRstl", - "tracking": "yes", - "trackingDetails": "Information about your computer hardware and software may be automatically collected by Tokenview. This information can include such details as your IP address, browser type, domain names, access times, etc.https://services.tokenview.io/en/protocol" - }, - { - "url": "https://public-rpc.blockpi.io/http/kcc" - } - ], - "322": [ - { - "url": "https://rpc-testnet.kcc.network" - } - ], - "323": [ - { - "url": "https://rpc.cosvm.net" - } - ], - "324": [ - { - "url": "https://zksync-era.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://zksync.meowrpc.com", - "tracking": "none", - "trackingDetails": "With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com" - }, - { - "url": "https://zksync.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://1rpc.io/zksync2-era", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://mainnet.era.zksync.io" - }, - { - "url": "wss://zksync.drpc.org" - } - ], - "333": [ - { - "url": "https://mainnet.web3q.io:8545" - } - ], - "335": [ - { - "url": "https://subnets.avax.network/defi-kingdoms/dfk-chain-testnet/rpc" - } - ], - "336": [ - { - "url": "https://rpc.shiden.astar.network:8545" - }, - { - "url": "https://shiden.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://shiden-rpc.dwellir.com", - "tracking": "limited", - "trackingDetails": "Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy" - }, - { - "url": "wss://shiden-rpc.dwellir.com", - "tracking": "limited", - "trackingDetails": "Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy" - }, - { - "url": "https://shiden.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "wss://shiden.api.onfinality.io/public-ws" - }, - { - "url": "wss://shiden.public.blastapi.io" - } - ], - "338": [ - { - "url": "https://evm-t3.cronos.org" - }, - { - "url": "https://cronos-testnet.drpc.org" - }, - { - "url": "wss://cronos-testnet.drpc.org" - } - ], - "345": [ - { - "url": "https://rpc01.trias.one" - } - ], - "361": [ - { - "url": "https://eth-rpc-api.thetatoken.org/rpc" - } - ], - "363": [ - { - "url": "https://eth-rpc-api-sapphire.thetatoken.org/rpc" - } - ], - "364": [ - { - "url": "https://eth-rpc-api-amber.thetatoken.org/rpc" - } - ], - "365": [ - { - "url": "https://eth-rpc-api-testnet.thetatoken.org/rpc" - } - ], - "369": [ - { - "url": "https://rpc.pulsechain.com" - }, - { - "url": "https://pulse-s.projectpi.xyz", - "tracking": "none", - "trackingDetails": "When you use Project Pi as an RPC provider we will not store your IP address or any data for more than 24 hours. IP addresses are not connected or correlated to wallet addresses" - }, - { - "url": "https://pulsechain-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://pulsechain-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://rpc-pulsechain.g4mm4.io" - }, - { - "url": "https://evex.cloud/pulserpc" - }, - { - "url": "wss://evex.cloud/pulsews" - }, - { - "url": "wss://rpc.pulsechain.com" - }, - { - "url": "wss://rpc-pulsechain.g4mm4.io" - } - ], - "371": [ - { - "url": "https://rpc-testnet.theconsta.com" - } - ], - "380": [ - { - "url": "https://rpc.testnet.zkamoeba.com:4050" - }, - { - "url": "https://rpc1.testnet.zkamoeba.com:4050" - } - ], - "381": [ - { - "url": "https://rpc.mainnet.zkamoeba.com/rpc" - } - ], - "385": [ - { - "url": "https://rpc-bitfalls1.lisinski.online" - } - ], - "388": [ - { - "url": "https://mainnet.zkevm.cronos.org" - } - ], - "395": [ - { - "url": "https://rpc1.testnet.camdl.gov.kh" - } - ], - "399": [ - { - "url": "https://rpc.nativ3.network" - }, - { - "url": "wss://ws.nativ3.network" - } - ], - "400": [ - { - "url": "https://testnet-rpc.hyperonchain.com" - } - ], - "401": [ - { - "url": "https://node1.testnet.ozonechain.io" - } - ], - "404": [ - { - "url": "https://rpc.syndr.com" - }, - { - "url": "wss://rpc.syndr.com/ws" - } - ], - "411": [ - { - "url": "https://rpc.pepe-chain.vip" - } - ], - "416": [ - { - "url": "https://rpc.sx.technology" - } - ], - "418": [ - { - "url": "https://rpc.testnet.lachain.network" - }, - { - "url": "https://lachain-testnet.rpc-nodes.cedalio.dev" - } - ], - "420": [ - { - "url": "https://endpoints.omniatech.io/v1/op/goerli/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://opt-goerli.g.alchemy.com/v2/demo", - "tracking": "yes", - "trackingDetails": "We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy" - }, - { - "url": "https://optimism-goerli.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://rpc.goerli.optimism.gateway.fm", - "tracking": "yes", - "trackingDetails": "When you use our services or visit our websites, we may log your device\u2019s IP address for debugging and security reasons. We may retain this information for up to twelve months" - }, - { - "url": "https://optimism-goerli-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://optimism-goerli-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://api.zan.top/node/v1/opt/goerli/public", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - }, - { - "url": "https://optimism-goerli.gateway.tenderly.co", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://gateway.tenderly.co/public/optimism-goerli", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://goerli.optimism.io" - }, - { - "url": "wss://optimism-goerli.gateway.tenderly.co" - }, - { - "url": "https://optimism-testnet.drpc.org" - }, - { - "url": "wss://optimism-testnet.drpc.org" - } - ], - "422": [ - { - "url": "https://mainnet-rpc.vrd.network" - } - ], - "424": [ - { - "url": "https://rpc.publicgoods.network" - } - ], - "427": [ - { - "url": "https://rpc.zeeth.io" - } - ], - "428": [ - { - "url": "https://rpc.verse.gesoten.com" - } - ], - "434": [ - { - "url": "https://evm-rpc.mainnet.boyaa.network" - } - ], - "443": [ - { - "url": "https://testnet.ten.xyz" - } - ], - "444": [ - { - "url": "https://sepolia.synapseprotocol.com" - } - ], - "456": [ - { - "url": "https://chain-rpc.arzio.co" - } - ], - "462": [ - { - "url": "https://testnet-rpc.areon.network" - }, - { - "url": "https://testnet-rpc2.areon.network" - }, - { - "url": "https://testnet-rpc3.areon.network" - }, - { - "url": "https://testnet-rpc4.areon.network" - }, - { - "url": "https://testnet-rpc5.areon.network" - } - ], - "463": [ - { - "url": "https://mainnet-rpc.areon.network" - }, - { - "url": "https://mainnet-rpc2.areon.network" - }, - { - "url": "https://mainnet-rpc3.areon.network" - }, - { - "url": "https://mainnet-rpc4.areon.network" - }, - { - "url": "https://mainnet-rpc5.areon.network" - } - ], - "500": [ - { - "url": "https://api.camino.network/ext/bc/C/rpc" - } - ], - "501": [ - { - "url": "https://columbus.camino.network/ext/bc/C/rpc" - } - ], - "510": [ - { - "url": "https://rpc-mainnet.syndicate.io" - } - ], - "512": [ - { - "url": "https://rpc.acuteangle.com" - } - ], - "513": [ - { - "url": "https://rpc-testnet.acuteangle.com" - } - ], - "516": [ - { - "url": "https://gzn.linksme.info" - } - ], - "520": [ - { - "url": "https://datarpc1.xsc.pub" - }, - { - "url": "https://datarpc2.xsc.pub" - }, - { - "url": "https://datarpc3.xsc.pub" - } - ], - "529": [ - { - "url": "https://rpc-mainnet.thefirechain.com" - } - ], - "530": [ - { - "url": "https://fx-json-web3.portfolio-x.xyz:8545" - }, - { - "url": "https://fx-json-web3.functionx.io:8545" - } - ], - "534": [ - { - "url": "https://candle-rpc.com" - }, - { - "url": "https://rpc.cndlchain.com" - } - ], - "537": [ - { - "url": "https://rpc.optrust.io" - } - ], - "542": [ - { - "url": "https://pawchainx.com" - } - ], - "545": [ - { - "url": "https://testnet.evm.nodes.onflow.org" - } - ], - "555": [ - { - "url": "https://rpc.velaverse.io" - } - ], - "558": [ - { - "url": "https://rpc.tao.network" - }, - { - "url": "https://rpc.testnet.tao.network" - }, - { - "url": "http://rpc.testnet.tao.network:8545" - }, - { - "url": "wss://rpc.tao.network" - } - ], - "568": [ - { - "url": "https://rpc-testnet.dogechain.dog" - } - ], - "570": [ - { - "url": "wss://rpc.rollux.com/wss" - }, - { - "url": "https://rpc.rollux.com" - }, - { - "url": "https://rollux.rpc.syscoin.org" - }, - { - "url": "wss://rollux.rpc.syscoin.org/wss" - }, - { - "url": "https://rpc.ankr.com/rollux" - } - ], - "571": [ - { - "url": "https://rpc.metatime.com" - } - ], - "579": [ - { - "url": "https://rpc.filenova.org" - } - ], - "592": [ - { - "url": "https://evm.astar.network" - }, - { - "url": "https://rpc.astar.network:8545" - }, - { - "url": "https://astar.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://getblock.io/nodes/bsc", - "tracking": "none", - "trackingDetails": "We automatically collect certain information through cookies and similar technologies when you visit, use or navigate Website. This information does not reveal your specific identity (like your name or contact information) and does not allow to identify you. However, it may include device and usage information, such as your IP address, browser and device characteristics, its type and version, operating system, language preferences, referring URLs, device name, country, location, information about how and when you use our Website, information about your interaction in our emails, and other technical and statistical information. This information is primarily needed to maintain the security and operation of our Website, and for our internal analytics and reporting purposes.Specifically, as the RPC provider, we do not log and store your IP address, country, location and similar data. https://getblock.io/privacy-policy/" - }, - { - "url": "https://1rpc.io/astr", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://astar-mainnet.g.alchemy.com/v2/demo", - "tracking": "yes", - "trackingDetails": "We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy" - }, - { - "url": "https://astar.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "wss://astar.api.onfinality.io/public-ws", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://astar-rpc.dwellir.com", - "tracking": "limited", - "trackingDetails": "Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy" - }, - { - "url": "wss://astar-rpc.dwellir.com", - "tracking": "limited", - "trackingDetails": "Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy" - } - ], - "595": [ - { - "url": "https://eth-rpc-tc9.aca-staging.network" - }, - { - "url": "wss://eth-rpc-tc9.aca-staging.network" - } - ], - "596": [ - { - "url": "https://eth-rpc-karura-testnet.aca-staging.network" - }, - { - "url": "wss://eth-rpc-karura-testnet.aca-staging.network" - } - ], - "597": [ - { - "url": "https://eth-rpc-acala-testnet.aca-staging.network" - }, - { - "url": "wss://eth-rpc-acala-testnet.aca-staging.network" - } - ], - "601": [ - { - "url": "https://rpc-testnet.vne.network" - } - ], - "610": [ - { - "url": "https://devnet-rpc.darwinchain.ai" - } - ], - "612": [ - { - "url": "https://rpc.eiob.xyz" - } - ], - "614": [ - { - "url": "https://glq-dataseed.graphlinq.io" - } - ], - "624": [ - { - "url": "https://rpc.zero.thebinaryholdings.com" - } - ], - "625": [ - { - "url": "https://rpc.testnet.thebinaryholdings.com" - } - ], - "634": [ - { - "url": "https://rpc.avocado.instadapp.io" - } - ], - "646": [ - { - "url": "https://previewnet.evm.nodes.onflow.org" - } - ], - "647": [ - { - "url": "https://rpc.toronto.sx.technology" - } - ], - "648": [ - { - "url": "https://rpc-endurance.fusionist.io" - } - ], - "653": [ - { - "url": "https://rpc.kalichain.com" - } - ], - "654": [ - { - "url": "https://mainnet.kalichain.com" - } - ], - "662": [ - { - "url": "https://rpc.ultronsmartchain.io" - } - ], - "666": [ - { - "url": "https://http-testnet.chain.pixie.xyz" - }, - { - "url": "wss://ws-testnet.chain.pixie.xyz" - } - ], - "667": [ - { - "url": "https://arrakis.gorengine.com/own" - }, - { - "url": "wss://arrakis.gorengine.com/own" - } - ], - "668": [ - { - "url": "https://rpc.juncachain.com" - } - ], - "669": [ - { - "url": "https://rpc-testnet.juncachain.com" - }, - { - "url": "wss://ws-testnet.juncachain.com" - } - ], - "686": [ - { - "url": "https://eth-rpc-karura.aca-staging.network" - }, - { - "url": "https://rpc.evm.karura.network" - }, - { - "url": "https://karura.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://eth-rpc-karura.aca-api.network" - }, - { - "url": "wss://eth-rpc-karura.aca-api.network" - } - ], - "690": [ - { - "url": "https://rpc.redstonechain.com" - }, - { - "url": "wss://rpc.redstonechain.com" - } - ], - "700": [ - { - "url": "https://avastar.cc/ext/bc/C/rpc" - } - ], - "701": [ - { - "url": "https://koi-rpc.darwinia.network" - } - ], - "707": [ - { - "url": "https://rpc-mainnet.bcsdev.io" - }, - { - "url": "wss://rpc-ws-mainnet.bcsdev.io" - } - ], - "708": [ - { - "url": "https://rpc-testnet.bcsdev.io" - }, - { - "url": "wss://rpc-ws-testnet.bcsdev.io" - } - ], - "710": [ - { - "url": "https://highbury.furya.io" - }, - { - "url": "https://rest.furya.io" - } - ], - "713": [ - { - "url": "https://rpc-mainnet-5.vrcscan.com" - }, - { - "url": "https://rpc-mainnet-6.vrcscan.com" - }, - { - "url": "https://rpc-mainnet-7.vrcscan.com" - }, - { - "url": "https://rpc-mainnet-8.vrcscan.com" - } - ], - "719": [ - { - "url": "https://puppynet.shibrpc.com" - } - ], - "721": [ - { - "url": "https://rpc.lycanchain.com" - }, - { - "url": "https://us-east.lycanchain.com" - }, - { - "url": "https://us-west.lycanchain.com" - }, - { - "url": "https://eu-north.lycanchain.com" - }, - { - "url": "https://eu-west.lycanchain.com" - }, - { - "url": "https://asia-southeast.lycanchain.com" - } - ], - "727": [ - { - "url": "https://data.bluchain.pro" - } - ], - "730": [ - { - "url": "https://rpc.lovely.network" - } - ], - "741": [ - { - "url": "https://node-testnet.vention.network" - } - ], - "742": [ - { - "url": "https://testeth-rpc-api.script.tv/rpc" - } - ], - "747": [ - { - "url": "https://mainnet.evm.nodes.onflow.org" - } - ], - "766": [ - { - "url": "https://rpc.qom.one" - } - ], - "777": [ - { - "url": "https://node.cheapeth.org/rpc" - } - ], - "786": [ - { - "url": "https://node1-mainnet.maalscan.io" - }, - { - "url": "https://node2-mainnet.maalscan.io" - }, - { - "url": "https://node3-mainnet.maalscan.io" - } - ], - "787": [ - { - "url": "https://eth-rpc-acala.aca-staging.network" - }, - { - "url": "https://rpc.evm.acala.network" - }, - { - "url": "https://eth-rpc-acala.aca-api.network" - }, - { - "url": "wss://eth-rpc-acala.aca-api.network" - } - ], - "788": [ - { - "url": "https://testnet-rpc.aerochain.id" - } - ], - "789": [ - { - "url": "https://rpc.patex.io" - } - ], - "799": [ - { - "url": "https://rpc.testnet.rupaya.io" - } - ], - "800": [ - { - "url": "https://rpc.lucidcoin.io" - } - ], - "803": [ - { - "url": "https://orig.haichain.io" - } - ], - "808": [ - { - "url": "https://subnets.avax.network/portal-fantasy/testnet/rpc" - } - ], - "810": [ - { - "url": "https://testnet-rpc.haven1.org" - } - ], - "813": [ - { - "url": "https://mainnet.meerlabs.com" - }, - { - "url": "https://evm-dataseed1.meerscan.io" - }, - { - "url": "https://evm-dataseed2.meerscan.io" - }, - { - "url": "https://evm-dataseed3.meerscan.io" - }, - { - "url": "https://evm-dataseed.meerscan.com" - }, - { - "url": "https://qng.rpc.qitmeer.io" - }, - { - "url": "https://rpc.dimai.ai" - }, - { - "url": "https://rpc.woowow.io" - } - ], - "814": [ - { - "url": "https://rpc-zkevm.thefirechain.com" - } - ], - "818": [ - { - "url": "https://dataseed1.beonechain.com" - }, - { - "url": "https://dataseed2.beonechain.com" - }, - { - "url": "https://dataseed-us1.beonechain.com" - }, - { - "url": "https://dataseed-us2.beonechain.com" - }, - { - "url": "https://dataseed-uk1.beonechain.com" - }, - { - "url": "https://dataseed-uk2.beonechain.com" - } - ], - "820": [ - { - "url": "https://rpc.callisto.network" - }, - { - "url": "https://clo-geth.0xinfra.com" - } - ], - "822": [ - { - "url": "https://rpc-testnet.runic.build" - } - ], - "831": [ - { - "url": "https://devnet.checkdot.io" - } - ], - "841": [ - { - "url": "https://rpc.mainnet.taraxa.io" - } - ], - "842": [ - { - "url": "https://rpc.testnet.taraxa.io" - } - ], - "852": [ - { - "url": "https://eth.jegotrip.net" - } - ], - "859": [ - { - "url": "https://rpc.dev.zeeth.io" - } - ], - "868": [ - { - "url": "https://mainnet-data1.fantasiachain.com" - }, - { - "url": "https://mainnet-data2.fantasiachain.com" - }, - { - "url": "https://mainnet-data3.fantasiachain.com" - } - ], - "876": [ - { - "url": "https://rpc.main.oasvrs.bnken.net" - } - ], - "877": [ - { - "url": "https://dxt.dexit.network" - } - ], - "880": [ - { - "url": "https://api.ambros.network" - } - ], - "888": [ - { - "url": "https://gwan-ssl.wandevs.org:56891" - }, - { - "url": "https://gwan2-ssl.wandevs.org" - } - ], - "898": [ - { - "url": "https://rpc-testnet.maxi.network" - } - ], - "899": [ - { - "url": "https://rpc.maxi.network" - } - ], - "900": [ - { - "url": "https://s0-testnet.garizon.net/rpc" - } - ], - "901": [ - { - "url": "https://s1-testnet.garizon.net/rpc" - } - ], - "902": [ - { - "url": "https://s2-testnet.garizon.net/rpc" - } - ], - "903": [ - { - "url": "https://s3-testnet.garizon.net/rpc" - } - ], - "910": [ - { - "url": "https://layer1test.decentrabone.com" - } - ], - "911": [ - { - "url": "https://rpc.taprootchain.io" - } - ], - "917": [ - { - "url": "https://rinia-rpc1.thefirechain.com" - } - ], - "919": [ - { - "url": "https://sepolia.mode.network" - } - ], - "927": [ - { - "url": "https://rpc.yidark.io" - } - ], - "943": [ - { - "url": "https://pulsetest-s.projectpi.xyz", - "tracking": "none", - "trackingDetails": "When you use Project Pi as an RPC provider we will not store your IP address or any data for more than 24 hours. IP addresses are not connected or correlated to wallet addresses" - }, - { - "url": "https://pulsechain-testnet-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://pulsechain-testnet-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://rpc.v4.testnet.pulsechain.com" - }, - { - "url": "wss://rpc.v4.testnet.pulsechain.com" - }, - { - "url": "https://rpc-testnet-pulsechain.g4mm4.io" - }, - { - "url": "wss://rpc-testnet-pulsechain.g4mm4.io" - } - ], - "957": [ - { - "url": "https://rpc.lyra.finance" - } - ], - "963": [ - { - "url": "https://rpc.bitcoincode.technology" - } - ], - "969": [ - { - "url": "https://rpc.ethxy.com" - } - ], - "970": [ - { - "url": "https://mainnet-rpc.oortech.com" - } - ], - "972": [ - { - "url": "https://ascraeus-rpc.oortech.com" - } - ], - "977": [ - { - "url": "https://api.nepalblockchain.dev" - }, - { - "url": "https://api.nepalblockchain.network" - } - ], - "979": [ - { - "url": "https://rpc.testnet.ethxy.com" - } - ], - "980": [ - { - "url": "https://ethapi.topnetwork.org" - } - ], - "985": [ - { - "url": "https://chain.metamemo.one:8501" - }, - { - "url": "wss://chain.metamemo.one:16801" - } - ], - "987": [ - { - "url": "https://rpc.binarychain.org" - } - ], - "990": [ - { - "url": "https://rpc.eliberty.ngo" - } - ], - "995": [ - { - "url": "https://rpc.5ire.network" - } - ], - "996": [ - { - "url": "https://hk.p.bifrost-rpc.liebi.com" - } - ], - "997": [ - { - "url": "https://rpc-testnet.5ire.network" - } - ], - "998": [ - { - "url": "https://rpc.luckynetwork.org" - }, - { - "url": "wss://ws.lnscan.org" - }, - { - "url": "https://rpc.lnscan.org" - } - ], - "999": [ - { - "url": "https://gwan-ssl.wandevs.org:46891" - } - ], - "1000": [ - { - "url": "https://rpc.gton.network" - } - ], - "1001": [ - { - "url": "https://public-en-baobab.klaytn.net" - }, - { - "url": "https://klaytn-baobab-rpc.allthatnode.com:8551", - "tracking": "yes", - "trackingDetails": "In addition to the Personal Information, the Billing Information, and the Geolocational Information..., we automatically collect certain information when you use the Platform or Website: IP addresses, browser type and language...; information about a mobile device, including universally unique ID (\u201CUUID\u201D), platform type and version (e.g., iOS or Android), carrier and country location, hardware and processor information, and network type; and activity and usage information occurring via the Platform or Website.https://www.allthatnode.com/privacypolicy.dsrv" - }, - { - "url": "https://rpc.ankr.com/klaytn_testnet", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://klaytn-baobab.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://klaytn.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://public-en.kairos.node.kaia.io" - } - ], - "1003": [ - { - "url": "https://rpc.softnote.com", - "tracking": "yes", - "trackingDetails": "CrispMind collects personal information and uses cookies for site operation, analysis, and enhancement, with no control over third-party cookies.https://softnote.com/privacy/" - } - ], - "1004": [ - { - "url": "https://test.ekta.io:8545" - } - ], - "1007": [ - { - "url": "https://rpc1.newchain.newtonproject.org" - } - ], - "1008": [ - { - "url": "https://mainnet.eurus.network" - } - ], - "1009": [ - { - "url": "https://rpcpriv.jumbochain.org" - } - ], - "1010": [ - { - "url": "https://meta.evrice.com" - } - ], - "1011": [ - { - "url": "https://apievm.rebuschain.com/rpc" - } - ], - "1012": [ - { - "url": "https://global.rpc.mainnet.newtonproject.org" - } - ], - "1024": [ - { - "url": "https://api-para.clover.finance" - } - ], - "1028": [ - { - "url": "https://testrpc.bittorrentchain.io" - } - ], - "1030": [ - { - "url": "https://evm.confluxrpc.com" - }, - { - "url": "https://conflux-espace-public.unifra.io" - } - ], - "1031": [ - { - "url": "http://128.199.94.183:8041" - } - ], - "1038": [ - { - "url": "https://evm-testnet.bronos.org" - } - ], - "1073": [ - { - "url": "https://json-rpc.evm.testnet.shimmer.network" - } - ], - "1075": [ - { - "url": "https://json-rpc.evm.testnet.iotaledger.net" - } - ], - "1079": [ - { - "url": "https://subnets.avax.network/mintara/testnet/rpc" - } - ], - "1080": [ - { - "url": "https://subnets.avax.network/mintara/mainnet/rpc" - } - ], - "1088": [ - { - "url": "https://andromeda.metis.io/?owner=1088" - }, - { - "url": "https://metis-mainnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://metis.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://metis-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://metis.drpc.org" - }, - { - "url": "wss://metis.drpc.org" - } - ], - "1089": [ - { - "url": "https://humans-mainnet-evm.itrocket.net", - "tracking": "none", - "trackingDetails": "We do not track, store or process any personal data. You can check our privacy policy here: https://itrocket.net/privacy-policy/" - }, - { - "url": "https://jsonrpc.humans.nodestake.top" - }, - { - "url": "https://humans-evm-rpc.staketab.org:443" - }, - { - "url": "https://evm.humans.stakepool.dev.br" - }, - { - "url": "https://mainnet-humans-evm.konsortech.xyz" - }, - { - "url": "https://evm-rpc.mainnet.humans.zone" - }, - { - "url": "https://json-rpc.humans.bh.rocks" - }, - { - "url": "https://evm-rpc.humans.huginn.tech" - } - ], - "1100": [ - { - "url": "https://jsonrpc.dymension.nodestake.org" - }, - { - "url": "https://evm-archive.dymd.bitszn.com" - }, - { - "url": "https://dymension.liquify.com/json-rpc" - }, - { - "url": "https://dymension-evm.kynraze.com" - }, - { - "url": "https://dymension-evm.blockpi.network/v1/rpc/public" - }, - { - "url": "https://dymension-evm-rpc.publicnode.com" - }, - { - "url": "wss://dymension-evm-rpc.publicnode.com" - } - ], - "1101": [ - { - "url": "https://rpc.ankr.com/polygon_zkevm", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://rpc.polygon-zkevm.gateway.fm", - "tracking": "yes", - "trackingDetails": "When you use our services or visit our websites, we may log your device\u2019s IP address for debugging and security reasons. We may retain this information for up to twelve months" - }, - { - "url": "https://1rpc.io/polygon/zkevm", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://polygon-zkevm.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://polygon-zkevm-mainnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://api.zan.top/node/v1/polygonzkevm/mainnet/public", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - }, - { - "url": "https://polygon-zkevm.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://zkevm-rpc.com" - }, - { - "url": "wss://polygon-zkevm.drpc.org" - } - ], - "1107": [ - { - "url": "https://testnetq1.blx.org" - } - ], - "1108": [ - { - "url": "https://mainnet.blxq.org" - } - ], - "1111": [ - { - "url": "https://api.wemix.com" - }, - { - "url": "wss://ws.wemix.com" - } - ], - "1112": [ - { - "url": "https://api.test.wemix.com" - }, - { - "url": "wss://ws.test.wemix.com" - } - ], - "1113": [ - { - "url": "https://testnet-hub-rpc.bsquared.network" - } - ], - "1115": [ - { - "url": "https://rpc.test.btcs.network" - } - ], - "1116": [ - { - "url": "https://rpc.coredao.org" - }, - { - "url": "https://core.public.infstones.com" - }, - { - "url": "https://1rpc.io/core", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://rpc.ankr.com/core", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://rpc-core.icecreamswap.com" - }, - { - "url": "https://core.drpc.org" - }, - { - "url": "wss://core.drpc.org" - } - ], - "1117": [ - { - "url": "https://mainnet-rpc.dogcoin.me" - } - ], - "1123": [ - { - "url": "https://b2-testnet.alt.technology" - }, - { - "url": "https://rpc.ankr.com/b2_testnet" - }, - { - "url": "https://testnet-rpc.bsquared.network" - } - ], - "1130": [ - { - "url": "https://dmc.mydefichain.com/mainnet" - }, - { - "url": "https://dmc01.mydefichain.com/mainnet" - } - ], - "1131": [ - { - "url": "https://dmc.mydefichain.com/testnet" - }, - { - "url": "https://dmc01.mydefichain.com/testnet" - }, - { - "url": "https://eth.testnet.ocean.jellyfishsdk.com" - } - ], - "1133": [ - { - "url": "https://dmc.mydefichain.com/changi" - }, - { - "url": "https://testnet-dmc.mydefichain.com:20551" - } - ], - "1135": [ - { - "url": "https://rpc.api.lisk.com" - } - ], - "1138": [ - { - "url": "https://testnet-rpc.amstarscan.com" - } - ], - "1139": [ - { - "url": "https://mathchain.maiziqianbao.net/rpc" - }, - { - "url": "https://mathchain-asia.maiziqianbao.net/rpc" - }, - { - "url": "https://mathchain-us.maiziqianbao.net/rpc" - } - ], - "1140": [ - { - "url": "https://galois-hk.maiziqianbao.net/rpc" - } - ], - "1147": [ - { - "url": "https://testnet-rpc.flagscan.xyz" - } - ], - "1149": [ - { - "url": "https://plex-rpc.plexfinance.us" - } - ], - "1170": [ - { - "url": "https://json-rpc.origin.uptick.network" - } - ], - "1177": [ - { - "url": "https://s2.tl.web.tr:4041" - } - ], - "1188": [ - { - "url": "https://mainnet.mosscan.com" - } - ], - "1197": [ - { - "url": "https://dataseed.iorachain.com" - } - ], - "1200": [ - { - "url": "https://mainnet-rpc.cuckoo.network" - }, - { - "url": "wss://mainnet-rpc.cuckoo.network" - } - ], - "1201": [ - { - "url": "https://seed5.evanesco.org:8547" - } - ], - "1202": [ - { - "url": "https://rpc.cadaut.com" - }, - { - "url": "wss://rpc.cadaut.com/ws" - } - ], - "1209": [ - { - "url": "https://rpc-nodes.saitascan.io" - } - ], - "1210": [ - { - "url": "https://testnet-rpc.cuckoo.network" - }, - { - "url": "wss://testnet-rpc.cuckoo.network" - } - ], - "1213": [ - { - "url": "https://dataseed.popcateum.org" - } - ], - "1214": [ - { - "url": "https://tapi.entercoin.net" - } - ], - "1221": [ - { - "url": "https://rpc-testnet.cyclenetwork.io" - } - ], - "1223": [ - { - "url": "https://jellyfish-rpc-testnet.cyclenetwork.io" - } - ], - "1225": [ - { - "url": "https://hybrid-testnet.rpc.caldera.xyz/http" - }, - { - "url": "wss://hybrid-testnet.rpc.caldera.xyz/ws" - } - ], - "1227": [ - { - "url": "https://testnet-chain.btcprotocol.io" - } - ], - "1229": [ - { - "url": "https://mainnet.exzo.technology" - } - ], - "1230": [ - { - "url": "https://ultron-dev.io" - } - ], - "1231": [ - { - "url": "https://ultron-rpc.net" - } - ], - "1234": [ - { - "url": "https://rpc.step.network" - } - ], - "1235": [ - { - "url": "https://rpc.itxchain.com" - } - ], - "1243": [ - { - "url": "https://rpc-main-1.archiechain.io" - } - ], - "1244": [ - { - "url": "https://rpc-test-1.archiechain.io" - } - ], - "1246": [ - { - "url": "https://rpc-cnx.omplatform.com" - } - ], - "1248": [ - { - "url": "https://rpc.dogether.dog" - } - ], - "1252": [ - { - "url": "https://testapi.cicscan.com" - } - ], - "1280": [ - { - "url": "https://nodes.halo.land" - } - ], - "1284": [ - { - "url": "https://rpc.api.moonbeam.network" - }, - { - "url": "https://moonbeam.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "wss://moonbeam.api.onfinality.io/public-ws", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://moonbeam.unitedbloc.com:3000", - "tracking": "yes", - "trackingDetails": "UnitedBloc does not collect or store any PII information. UnitedBloc does use IP addresses and transaction requests solely for service management purposes. Performance measurements such as rate limiting and routing rules require the analysis of IP addresses and response time measurements require the analysis of transaction requests. UnitedBloc does not and will never use RPC requests to front run transactions." - }, - { - "url": "wss://moonbeam.unitedbloc.com:3001", - "tracking": "yes", - "trackingDetails": "UnitedBloc does not collect or store any PII information. UnitedBloc does use IP addresses and transaction requests solely for service management purposes. Performance measurements such as rate limiting and routing rules require the analysis of IP addresses and response time measurements require the analysis of transaction requests. UnitedBloc does not and will never use RPC requests to front run transactions." - }, - { - "url": "https://moonbeam.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://rpc.ankr.com/moonbeam", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://1rpc.io/glmr", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://moonbeam-rpc.dwellir.com", - "tracking": "limited", - "trackingDetails": "Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy" - }, - { - "url": "wss://moonbeam-rpc.dwellir.com", - "tracking": "limited", - "trackingDetails": "Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy" - }, - { - "url": "https://endpoints.omniatech.io/v1/moonbeam/mainnet/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://moonbeam-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://moonbeam-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://wss.api.moonbeam.network" - }, - { - "url": "wss://moonbeam.public.blastapi.io" - }, - { - "url": "https://moonbeam.unitedbloc.com" - }, - { - "url": "wss://moonbeam.unitedbloc.com" - }, - { - "url": "https://moonbeam.drpc.org" - }, - { - "url": "wss://moonbeam.drpc.org" - } - ], - "1285": [ - { - "url": "wss://moonriver.api.onfinality.io/public-ws", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://moonriver.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://moonriver.unitedbloc.com:2000", - "tracking": "yes", - "trackingDetails": "UnitedBloc does not collect or store any PII information. UnitedBloc does use IP addresses and transaction requests solely for service management purposes. Performance measurements such as rate limiting and routing rules require the analysis of IP addresses and response time measurements require the analysis of transaction requests. UnitedBloc does not and will never use RPC requests to front run transactions." - }, - { - "url": "wss://moonriver.unitedbloc.com:2001", - "tracking": "yes", - "trackingDetails": "UnitedBloc does not collect or store any PII information. UnitedBloc does use IP addresses and transaction requests solely for service management purposes. Performance measurements such as rate limiting and routing rules require the analysis of IP addresses and response time measurements require the analysis of transaction requests. UnitedBloc does not and will never use RPC requests to front run transactions." - }, - { - "url": "https://moonriver.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://moonriver-rpc.dwellir.com", - "tracking": "limited", - "trackingDetails": "Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy" - }, - { - "url": "wss://moonriver-rpc.dwellir.com", - "tracking": "limited", - "trackingDetails": "Except for the data that is publicly accessible on the blockchain, Dwellir does not collect or keep any user information (like location, IP address, etc.) transmitted via our RPC. For more information about our privacy methods, we suggest checking out our Privacy Policy at https://www.dwellir.com/privacy-policy" - }, - { - "url": "https://moonriver-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://moonriver-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://rpc.api.moonriver.moonbeam.network" - }, - { - "url": "wss://wss.api.moonriver.moonbeam.network" - }, - { - "url": "wss://moonriver.public.blastapi.io" - }, - { - "url": "https://moonriver.unitedbloc.com" - }, - { - "url": "wss://moonriver.unitedbloc.com" - }, - { - "url": "https://moonriver.drpc.org" - }, - { - "url": "wss://moonriver.drpc.org" - } - ], - "1287": [ - { - "url": "https://rpc.testnet.moonbeam.network" - }, - { - "url": "https://moonbase.unitedbloc.com:1000", - "tracking": "yes", - "trackingDetails": "UnitedBloc does not collect or store any PII information. UnitedBloc does use IP addresses and transaction requests solely for service management purposes. Performance measurements such as rate limiting and routing rules require the analysis of IP addresses and response time measurements require the analysis of transaction requests. UnitedBloc does not and will never use RPC requests to front run transactions." - }, - { - "url": "wss://moonbase.unitedbloc.com:1001", - "tracking": "yes", - "trackingDetails": "UnitedBloc does not collect or store any PII information. UnitedBloc does use IP addresses and transaction requests solely for service management purposes. Performance measurements such as rate limiting and routing rules require the analysis of IP addresses and response time measurements require the analysis of transaction requests. UnitedBloc does not and will never use RPC requests to front run transactions." - }, - { - "url": "https://moonbase-alpha.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://moonbeam-alpha.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "wss://moonbeam-alpha.api.onfinality.io/public-ws", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://rpc.api.moonbase.moonbeam.network" - }, - { - "url": "wss://wss.api.moonbase.moonbeam.network" - }, - { - "url": "wss://moonbase-alpha.public.blastapi.io" - }, - { - "url": "https://moonbase-rpc.dwellir.com" - }, - { - "url": "wss://moonbase-rpc.dwellir.com" - }, - { - "url": "https://moonbase.unitedbloc.com" - }, - { - "url": "wss://moonbase.unitedbloc.com" - }, - { - "url": "https://moonbase-alpha.drpc.org" - }, - { - "url": "wss://moonbase-alpha.drpc.org" - } - ], - "1288": [ - { - "url": "https://rpc.api.moonrock.moonbeam.network" - }, - { - "url": "wss://wss.api.moonrock.moonbeam.network" - } - ], - "1291": [ - { - "url": "https://json-rpc.testnet.swisstronik.com" - } - ], - "1311": [ - { - "url": "https://test.doschain.com/jsonrpc" - } - ], - "1313": [ - { - "url": "https://rpc.jaihochain.com" - } - ], - "1314": [ - { - "url": "https://rpc.alyxchain.com" - } - ], - "1319": [ - { - "url": "https://aia-dataseed1.aiachain.org" - }, - { - "url": "https://aia-dataseed2.aiachain.org" - }, - { - "url": "https://aia-dataseed3.aiachain.org" - }, - { - "url": "https://aia-dataseed4.aiachain.org" - } - ], - "1320": [ - { - "url": "https://aia-dataseed1-testnet.aiachain.org" - } - ], - "1328": [ - { - "url": "https://evm-rpc-testnet.sei-apis.com" - }, - { - "url": "wss://evm-ws-testnet.sei-apis.com" - } - ], - "1329": [ - { - "url": "https://evm-rpc.sei-apis.com" - }, - { - "url": "wss://evm-ws.sei-apis.com" - } - ], - "1337": [ - { - "url": "http://127.0.0.1:8545" - } - ], - "1338": [ - { - "url": "https://rpc.atlantischain.network" - }, - { - "url": "https://elysium-test-rpc.vulcanforged.com" - } - ], - "1339": [ - { - "url": "https://rpc.elysiumchain.tech" - }, - { - "url": "https://rpc.elysiumchain.us" - } - ], - "1343": [ - { - "url": "https://subnets.avax.network/blitz/testnet/rpc" - } - ], - "1353": [ - { - "url": "https://xapi.cicscan.com" - } - ], - "1369": [ - { - "url": "https://mainnet.zakumi.io" - } - ], - "1370": [ - { - "url": "https://blockchain.ramestta.com" - }, - { - "url": "https://blockchain2.ramestta.com" - } - ], - "1377": [ - { - "url": "https://testnet.ramestta.com" - } - ], - "1379": [ - { - "url": "https://rpc-api.kalarchain.tech" - } - ], - "1388": [ - { - "url": "https://mainnet-rpc.amstarscan.com" - } - ], - "1392": [ - { - "url": "https://rpc.modchain.net/blockchain.joseon.com/rpc" - } - ], - "1433": [ - { - "url": "https://rpc.rikscan.com" - } - ], - "1440": [ - { - "url": "https://beta.mainnet.livingassets.io/rpc", - "tracking": "limited", - "trackingDetails": "The Living Assets network does not store any personal data provided by its users. The network solely communicates on-chain signatures generated by web3 compatible wallets. However, it is possible that clients utilizing the network may necessitate supplementary information from their users to fulfill Know Your Customer obligations. In such cases, explicit consent from the users is mandatory, following standard procedures." - }, - { - "url": "https://gamma.mainnet.livingassets.io/rpc", - "tracking": "limited", - "trackingDetails": "The Living Assets network does not store any personal data provided by its users. The network solely communicates on-chain signatures generated by web3 compatible wallets. However, it is possible that clients utilizing the network may necessitate supplementary information from their users to fulfill Know Your Customer obligations. In such cases, explicit consent from the users is mandatory, following standard procedures." - } - ], - "1442": [ - { - "url": "https://api.zan.top/node/v1/polygonzkevm/testnet/public", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - }, - { - "url": "https://polygon-zkevm-testnet.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://rpc.public.zkevm-test.net" - }, - { - "url": "https://polygon-zkevm-testnet.drpc.org" - }, - { - "url": "wss://polygon-zkevm-testnet.drpc.org" - } - ], - "1452": [ - { - "url": "https://rpc.giltestnet.com" - } - ], - "1453": [ - { - "url": "https://istanbul-rpc.metachain.dev" - } - ], - "1455": [ - { - "url": "https://mainnet-rpc.ctexscan.com" - } - ], - "1456": [ - { - "url": "https://mainnet-rpc.zkbase.app" - } - ], - "1490": [ - { - "url": "https://rpc.vitruveo.xyz" - } - ], - "1499": [ - { - "url": "https://rpc-testnet.idos.games" - } - ], - "1501": [ - { - "url": "https://rpc-canary-1.bevm.io" - }, - { - "url": "https://rpc-canary-2.bevm.io" - } - ], - "1506": [ - { - "url": "https://mainnet.sherpax.io/rpc" - } - ], - "1507": [ - { - "url": "https://sherpax-testnet.chainx.org/rpc" - } - ], - "1515": [ - { - "url": "https://beagle.chat/eth" - } - ], - "1559": [ - { - "url": "https://rpc.tenet.org" - }, - { - "url": "https://tenet-evm.publicnode.com" - }, - { - "url": "wss://tenet-evm.publicnode.com" - } - ], - "1570": [ - { - "url": "https://testnet-rpc1.starworksglobal.com" - } - ], - "1578": [ - { - "url": "https://rpc.starworksglobal.com" - } - ], - "1617": [ - { - "url": "https://rpc.etins.org" - } - ], - "1618": [ - { - "url": "https://send.catechain.com" - } - ], - "1620": [ - { - "url": "https://rpc.atheios.org" - } - ], - "1625": [ - { - "url": "https://rpc.gravity.xyz" - } - ], - "1648": [ - { - "url": "https://mainnet.pivotalprotocol.com" - } - ], - "1657": [ - { - "url": "https://dataseed1.btachain.com" - } - ], - "1663": [ - { - "url": "https://gobi-rpc.horizenlabs.io/ethv1" - }, - { - "url": "https://rpc.ankr.com/horizen_gobi_testnet" - } - ], - "1686": [ - { - "url": "https://testnet-rpc.mintchain.io" - } - ], - "1687": [ - { - "url": "https://sepolia-testnet-rpc.mintchain.io" - } - ], - "1688": [ - { - "url": "https://rpc.ludan.org" - } - ], - "1701": [ - { - "url": "https://geth.anytype.io" - } - ], - "1707": [ - { - "url": "https://rpc.blockchain.or.th" - } - ], - "1708": [ - { - "url": "https://rpc.testnet.blockchain.or.th" - } - ], - "1717": [ - { - "url": "https://mainnet.doric.network" - } - ], - "1718": [ - { - "url": "https://palette-rpc.com:22000" - } - ], - "1729": [ - { - "url": "https://rpc.reya.network" - }, - { - "url": "wss://ws.reya.network" - } - ], - "1740": [ - { - "url": "https://testnet.rpc.metall2.com" - } - ], - "1750": [ - { - "url": "https://rpc.metall2.com" - } - ], - "1773": [ - { - "url": "https://tea.mining4people.com/rpc" - }, - { - "url": "http://172.104.194.36:8545" - } - ], - "1777": [ - { - "url": "https://rpc.gaussgang.com" - } - ], - "1789": [ - { - "url": "https://sepolia-rpc.zkbase.app" - } - ], - "1804": [ - { - "url": "https://cacib-saturn-test.francecentral.cloudapp.azure.com" - }, - { - "url": "wss://cacib-saturn-test.francecentral.cloudapp.azure.com:9443" - } - ], - "1807": [ - { - "url": "https://rabbit.analog-rpc.com" - } - ], - "1811": [ - { - "url": "https://testnet-evm.lif3.com" - } - ], - "1818": [ - { - "url": "https://http-mainnet.cube.network" - }, - { - "url": "wss://ws-mainnet.cube.network" - }, - { - "url": "https://http-mainnet-sg.cube.network" - }, - { - "url": "wss://ws-mainnet-sg.cube.network" - }, - { - "url": "https://http-mainnet-us.cube.network" - }, - { - "url": "wss://ws-mainnet-us.cube.network" - } - ], - "1819": [ - { - "url": "https://http-testnet.cube.network" - }, - { - "url": "wss://ws-testnet.cube.network" - }, - { - "url": "https://http-testnet-sg.cube.network" - }, - { - "url": "wss://ws-testnet-sg.cube.network" - }, - { - "url": "https://http-testnet-jp.cube.network" - }, - { - "url": "wss://ws-testnet-jp.cube.network" - }, - { - "url": "https://http-testnet-us.cube.network" - }, - { - "url": "wss://ws-testnet-us.cube.network" - } - ], - "1821": [ - { - "url": "https://mainnet-data.rubychain.io" - }, - { - "url": "https://mainnet.rubychain.io" - } - ], - "1856": [ - { - "url": "rpcWorking:false" - }, - { - "url": "https://tsfapi.europool.me" - } - ], - "1875": [ - { - "url": "https://rpc.whitechain.io" - } - ], - "1881": [ - { - "url": "https://rpc.cartenz.works", - "tracking": "none", - "trackingDetails": "We do not collect any personal data from our users. Our platform is built on blockchain technology, which ensures that all transactions are recorded on a public ledger that is accessible to all users. However, this information is anonymous and cannot be linked to any specific individual. https://docs.gitshock.com/users-guide/privacy-policy" - } - ], - "1890": [ - { - "url": "https://replicator.phoenix.lightlink.io/rpc/v1" - } - ], - "1891": [ - { - "url": "https://replicator.pegasus.lightlink.io/rpc/v1" - } - ], - "1898": [ - { - "url": "http://rpc.boyanet.org:8545" - }, - { - "url": "ws://rpc.boyanet.org:8546" - } - ], - "1899": [ - { - "url": "https://layer2.redefi.world" - } - ], - "1904": [ - { - "url": "https://rpc.sportschainnetwork.xyz" - } - ], - "1907": [ - { - "url": "https://rpc.bitci.com" - } - ], - "1908": [ - { - "url": "https://testnet.bitcichain.com" - } - ], - "1909": [ - { - "url": "https://marklechain-rpc.merklescan.com" - } - ], - "1911": [ - { - "url": "https://rpc.scalind.com" - } - ], - "1912": [ - { - "url": "https://testnet-rchain.rubychain.io" - } - ], - "1918": [ - { - "url": "https://testnet.crescdi.pub.ro" - } - ], - "1945": [ - { - "url": "https://rpc-testnet.onuschain.io" - } - ], - "1951": [ - { - "url": "https://mainnet.d-chain.network/ext/bc/2ZiR1Bro5E59siVuwdNuRFzqL95NkvkbzyLBdrsYR9BLSHV7H4/rpc" - } - ], - "1953": [ - { - "url": "https://rpc0-testnet.selendra.org" - }, - { - "url": "https://rpc1-testnet.selendra.org" - } - ], - "1954": [ - { - "url": "https://rpc.dexilla.com" - } - ], - "1956": [ - { - "url": "https://rpc-testnet.aiw3.io" - } - ], - "1961": [ - { - "url": "https://rpc0.selendra.org" - }, - { - "url": "https://rpc1.selendra.org" - } - ], - "1967": [ - { - "url": "https://rpc.metatime.com/eleanor" - }, - { - "url": "wss://ws.metatime.com/eleanor" - } - ], - "1969": [ - { - "url": "https://testnetrpc.scschain.com" - } - ], - "1970": [ - { - "url": "https://rpc.scschain.com" - } - ], - "1971": [ - { - "url": "https://1971.network/atlr" - }, - { - "url": "wss://1971.network/atlr" - } - ], - "1972": [ - { - "url": "https://rpc2.redecoin.eu" - } - ], - "1975": [ - { - "url": "https://rpc.onuschain.io" - }, - { - "url": "wss://ws.onuschain.io" - } - ], - "1984": [ - { - "url": "https://testnet.eurus.network" - } - ], - "1985": [ - { - "url": "http://rpc.satosh.ie" - } - ], - "1986": [ - { - "url": "http://testnet.satosh.ie" - } - ], - "1987": [ - { - "url": "https://jsonrpc.egem.io/custom" - } - ], - "1992": [ - { - "url": "https://rpc.hubble.exchange" - }, - { - "url": "wss://ws-rpc.hubble.exchange" - } - ], - "1993": [ - { - "url": "https://sepolia.b3.fun" - } - ], - "1994": [ - { - "url": "https://main.ekta.io" - } - ], - "1995": [ - { - "url": "https://testnet.edexa.network/rpc" - }, - { - "url": "https://io-dataseed1.testnet.edexa.io-market.com/rpc" - } - ], - "1996": [ - { - "url": "https://mainnet.sanko.xyz" - } - ], - "1997": [ - { - "url": "https://rpc.kyotochain.io" - } - ], - "1998": [ - { - "url": "https://rpc.testnet.kyotoprotocol.io:8545" - } - ], - "2000": [ - { - "url": "https://rpc.dogechain.dog" - }, - { - "url": "https://rpc-us.dogechain.dog" - }, - { - "url": "https://rpc-sg.dogechain.dog" - }, - { - "url": "https://rpc.dogechain.dog" - }, - { - "url": "https://rpc01-sg.dogechain.dog" - }, - { - "url": "https://rpc02-sg.dogechain.dog" - }, - { - "url": "https://rpc03-sg.dogechain.dog" - }, - { - "url": "https://dogechain.ankr.com", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://dogechain-sj.ankr.com", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://rpc.ankr.com/dogechain" - } - ], - "2001": [ - { - "url": "https://rpc-mainnet-cardano-evm.c1.milkomeda.com" - }, - { - "url": "wss://rpc-mainnet-cardano-evm.c1.milkomeda.com" - } - ], - "2002": [ - { - "url": "https://rpc-mainnet-algorand-rollup.a1.milkomeda.com" - }, - { - "url": "wss://rpc-mainnet-algorand-rollup.a1.milkomeda.com/ws" - } - ], - "2004": [ - { - "url": "http://77.237.237.69:9933" - } - ], - "2013": [ - { - "url": "https://polytopia.org:8545" - } - ], - "2014": [ - { - "url": "https://rpc-testnet.nowscan.io" - } - ], - "2016": [ - { - "url": "https://eu-rpc.mainnetz.io" - }, - { - "url": "https://mainnet-rpc.mainnetz.io" - } - ], - "2017": [ - { - "url": "https://rpc.telcoin.network" - }, - { - "url": "https://adiri.tel" - }, - { - "url": "https://node1.telcoin.network" - }, - { - "url": "https://node2.telcoin.network" - }, - { - "url": "https://node3.telcoin.network" - }, - { - "url": "https://node4.telcoin.network" - } - ], - "2018": [ - { - "url": "https://rpc.dev.publicmint.io:8545" - } - ], - "2019": [ - { - "url": "https://rpc.tst.publicmint.io:8545" - } - ], - "2020": [ - { - "url": "https://rpc.publicmint.io:8545" - } - ], - "2021": [ - { - "url": "https://mainnet2.edgewa.re/evm" - }, - { - "url": "https://mainnet3.edgewa.re/evm" - }, - { - "url": "https://edgeware-evm.jelliedowl.net" - }, - { - "url": "https://edgeware.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://edgeware-evm0.jelliedowl.net" - }, - { - "url": "https://edgeware-evm1.jelliedowl.net" - }, - { - "url": "https://edgeware-evm2.jelliedowl.net" - }, - { - "url": "https://edgeware-evm3.jelliedowl.net" - }, - { - "url": "wss://edgeware.jelliedowl.net" - }, - { - "url": "wss://edgeware-rpc0.jelliedowl.net" - }, - { - "url": "wss://edgeware-rpc1.jelliedowl.net" - }, - { - "url": "wss://edgeware-rpc2.jelliedowl.net" - }, - { - "url": "wss://edgeware-rpc3.jelliedowl.net" - } - ], - "2022": [ - { - "url": "https://beresheet-evm.jelliedowl.net" - }, - { - "url": "wss://beresheet.jelliedowl.net" - } - ], - "2023": [ - { - "url": "https://test-taycan.hupayx.io" - } - ], - "2024": [ - { - "url": "https://saturn-rpc.swanchain.io" - } - ], - "2025": [ - { - "url": "https://mainnet.rangersprotocol.com/api/jsonrpc" - } - ], - "2026": [ - { - "url": "https://rpc.edgeless.network/http" - } - ], - "2031": [ - { - "url": "https://fullnode.centrifuge.io" - }, - { - "url": "wss://fullnode.centrifuge.io" - }, - { - "url": "https://centrifuge-parachain.api.onfinality.io/public" - }, - { - "url": "wss://centrifuge-parachain.api.onfinality.io/public-ws" - }, - { - "url": "https://centrifuge-rpc.dwellir.com" - }, - { - "url": "wss://centrifuge-rpc.dwellir.com" - }, - { - "url": "https://rpc-centrifuge.luckyfriday.io" - }, - { - "url": "wss://rpc-centrifuge.luckyfriday.io" - } - ], - "2032": [ - { - "url": "wss://fullnode.catalyst.cntrfg.com" - } - ], - "2037": [ - { - "url": "https://subnets.avax.network/kiwi/testnet/rpc" - } - ], - "2038": [ - { - "url": "https://subnets.avax.network/shrapnel/testnet/rpc" - } - ], - "2039": [ - { - "url": "https://rpc.alephzero-testnet.gelato.digital" - }, - { - "url": "wss://rpc.alephzero-testnet.gelato.digital" - } - ], - "2040": [ - { - "url": "https://rpc.vanarchain.com" - }, - { - "url": "wss://ws.vanarchain.com" - } - ], - "2043": [ - { - "url": "https://astrosat.origintrail.network" - }, - { - "url": "wss://parachain-rpc.origin-trail.network" - } - ], - "2044": [ - { - "url": "https://subnets.avax.network/shrapnel/mainnet/rpc" - } - ], - "2047": [ - { - "url": "https://web3-rpc-mesos.thestratos.org" - } - ], - "2048": [ - { - "url": "https://web3-rpc.thestratos.org" - } - ], - "2049": [ - { - "url": "https://msc-rpc.movoscan.com" - }, - { - "url": "https://msc-rpc.movochain.org" - }, - { - "url": "https://msc-rpc.movoswap.com" - } - ], - "2077": [ - { - "url": "http://rpc.qkacoin.org:8548" - }, - { - "url": "https://rpc.qkacoin.org" - } - ], - "2088": [ - { - "url": "wss://fullnode.altair.centrifuge.io" - }, - { - "url": "wss://altair.api.onfinality.io/public-ws" - } - ], - "2100": [ - { - "url": "https://api.ecoball.org/ecoball" - } - ], - "2101": [ - { - "url": "https://api.ecoball.org/espuma" - } - ], - "2109": [ - { - "url": "https://rpc.exosama.com" - }, - { - "url": "wss://rpc.exosama.com" - } - ], - "2112": [ - { - "url": "https://rpc.uchain.link" - } - ], - "2121": [ - { - "url": "https://rpc1.catenarpc.com" - } - ], - "2122": [ - { - "url": "https://rpc.metaplayer.one" - } - ], - "2124": [ - { - "url": "https://rpc-dubai.mp1network.com" - } - ], - "2136": [ - { - "url": "https://test-market.bigsb.network" - }, - { - "url": "wss://test-market.bigsb.network" - } - ], - "2137": [ - { - "url": "https://market.bigsb.io" - }, - { - "url": "wss://market.bigsb.io" - } - ], - "2138": [ - { - "url": "https://rpc.public-2138.defi-oracle.io" - }, - { - "url": "wss://rpc.public-2138.defi-oracle.io" - } - ], - "2140": [ - { - "url": "https://rpc.onenesslabs.io" - } - ], - "2141": [ - { - "url": "https://rpc.testnet.onenesslabs.io" - } - ], - "2151": [ - { - "url": "https://mainnet.bosagora.org" - }, - { - "url": "https://rpc.bosagora.org" - } - ], - "2152": [ - { - "url": "https://rpc-mainnet.findora.org" - } - ], - "2153": [ - { - "url": "https://prod-testnet.prod.findora.org:8545" - } - ], - "2154": [ - { - "url": "https://prod-forge.prod.findora.org:8545" - } - ], - "2162": [ - { - "url": "https://rpc.kanda.animechain.ai" - } - ], - "2199": [ - { - "url": "https://rpc.moonsama.com" - }, - { - "url": "wss://rpc.moonsama.com/ws" - } - ], - "2202": [ - { - "url": "https://rpc.antofy.io" - } - ], - "2203": [ - { - "url": "https://connect.bitcoinevm.com" - } - ], - "2213": [ - { - "url": "https://seed4.evanesco.org:8546" - } - ], - "2221": [ - { - "url": "https://evm.testnet.kava.io" - }, - { - "url": "https://kava-evm-testnet.rpc.thirdweb.com" - }, - { - "url": "wss://wevm.testnet.kava.io" - }, - { - "url": "https://kava-testnet.drpc.org" - }, - { - "url": "wss://kava-testnet.drpc.org" - } - ], - "2222": [ - { - "url": "https://evm.kava.io" - }, - { - "url": "https://kava.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://kava-evm-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://kava-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "wss://kava-evm-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://evm.kava.chainstacklabs.com", - "tracking": "yes", - "trackingDetails": "We process certain personal data to provide you with the core functionality of our Services. Specifically, when you are: Using the Chainstack Console, we process your name, surname, email address (your account identifier), organization name, IP address, all HTTP headers (most importantly User-Agent), cookies; Using the Chainstack Blockchain infrastructure, we process nodes' token stored in Chainstack Vault, IP address and HTTP headers, request body, API token in Chainstack Vault.https://chainstack.com/privacy/" - }, - { - "url": "wss://wevm.kava.chainstacklabs.com", - "tracking": "yes", - "trackingDetails": "We process certain personal data to provide you with the core functionality of our Services. Specifically, when you are: Using the Chainstack Console, we process your name, surname, email address (your account identifier), organization name, IP address, all HTTP headers (most importantly User-Agent), cookies; Using the Chainstack Blockchain infrastructure, we process nodes' token stored in Chainstack Vault, IP address and HTTP headers, request body, API token in Chainstack Vault.https://chainstack.com/privacy/" - }, - { - "url": "https://rpc.ankr.com/kava_evm", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://evm.kava-rpc.com", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://kava-rpc.gateway.pokt.network" - }, - { - "url": "https://kava-evm.rpc.thirdweb.com" - }, - { - "url": "wss://wevm.kava.io" - }, - { - "url": "wss://wevm.kava-rpc.com" - }, - { - "url": "https://kava.drpc.org" - }, - { - "url": "wss://kava.drpc.org" - } - ], - "2223": [ - { - "url": "https://bc.vcex.xyz" - } - ], - "2241": [ - { - "url": "https://erpc-krest.peaq.network" - }, - { - "url": "https://krest.unitedbloc.com" - } - ], - "2300": [ - { - "url": "https://rpc.bombchain.com" - } - ], - "2306": [ - { - "url": "https://greendinoswap.com" - } - ], - "2311": [ - { - "url": "https://vesuvius-rpc.litprotocol.com" - } - ], - "2323": [ - { - "url": "https://data-testnet-v1.somanetwork.io", - "tracking": "yes", - "trackingDetails": "At SomaNetwork Mainnet Or Testnet, we are committed to protecting your privacy and ensuring the security of your data. This privacy policy summary outlines how we handle and protect your personal information when using our SomaNetwork Mainnet and Testnet services. Please note that this is a summary, and the full privacy policy should be reviewed for complete details soma. 1.We will collect your mobile device information, operation records, transaction records, wallet address and other personal information. https://soma-network.gitbook.io/soma-network/privacy-policy" - }, - { - "url": "https://block-testnet-v1.somanetwork.io", - "tracking": "yes", - "trackingDetails": "At SomaNetwork Mainnet Or Testnet, we are committed to protecting your privacy and ensuring the security of your data. This privacy policy summary outlines how we handle and protect your personal information when using our SomaNetwork Mainnet and Testnet services. Please note that this is a summary, and the full privacy policy should be reviewed for complete details soma. 1.We will collect your mobile device information, operation records, transaction records, wallet address and other personal information. https://soma-network.gitbook.io/soma-network/privacy-policy" - }, - { - "url": "https://testnet-au-server-2.somanetwork.io" - }, - { - "url": "https://testnet-au-server-1.somanetwork.io" - }, - { - "url": "https://testnet-sg-server-1.somanetwork.io" - }, - { - "url": "https://testnet-sg-server-2.somanetwork.io" - } - ], - "2330": [ - { - "url": "https://rpc0.altcoinchain.org/rpc" - } - ], - "2331": [ - { - "url": "https://rpc.testnet.rss3.io" - } - ], - "2332": [ - { - "url": "https://data-mainnet-v1.somanetwork.io", - "tracking": "yes", - "trackingDetails": "At SomaNetwork Mainnet Or Testnet, we are committed to protecting your privacy and ensuring the security of your data. This privacy policy summary outlines how we handle and protect your personal information when using our SomaNetwork Mainnet and Testnet services. Please note that this is a summary, and the full privacy policy should be reviewed for complete details soma. 1.We will collect your mobile device information, operation records, transaction records, wallet address and other personal information. https://soma-network.gitbook.io/soma-network/privacy-policy" - }, - { - "url": "https://block-mainnet-v1.somanetwork.io", - "tracking": "yes", - "trackingDetails": "At SomaNetwork Mainnet Or Testnet, we are committed to protecting your privacy and ensuring the security of your data. This privacy policy summary outlines how we handle and protect your personal information when using our SomaNetwork Mainnet and Testnet services. Please note that this is a summary, and the full privacy policy should be reviewed for complete details soma. 1.We will collect your mobile device information, operation records, transaction records, wallet address and other personal information. https://soma-network.gitbook.io/soma-network/privacy-policy" - }, - { - "url": "https://id-mainnet.somanetwork.io" - }, - { - "url": "https://hk-mainnet.somanetwork.io" - }, - { - "url": "https://sg-mainnet.somanetwork.io" - } - ], - "2340": [ - { - "url": "wss://testnet-rpc.atleta.network:9944" - }, - { - "url": "https://testnet-rpc.atleta.network:9944" - }, - { - "url": "https://testnet-rpc.atleta.network" - } - ], - "2342": [ - { - "url": "https://rpc.omniaverse.io" - } - ], - "2358": [ - { - "url": "https://api.sepolia.kroma.network" - } - ], - "2370": [ - { - "url": "https://evm-testnet.nexis.network" - } - ], - "2399": [ - { - "url": "https://bombchain-testnet.ankr.com/bas_full_rpc_1" - } - ], - "2400": [ - { - "url": "https://rpc.tcgverse.xyz" - } - ], - "2410": [ - { - "url": "https://rpc.karak.network" - } - ], - "2415": [ - { - "url": "https://mainnet.xo-dex.com/rpc" - }, - { - "url": "https://xo-dex.io" - } - ], - "2425": [ - { - "url": "https://rpc-mainnet.kinggamer.org" - } - ], - "2442": [ - { - "url": "https://rpc.cardona.zkevm-rpc.com" - } - ], - "2458": [ - { - "url": "https://rpc-testnet.hybridchain.ai", - "tracking": "yes", - "trackingDetails": "HybridChain may automatically collect information regarding your computer hardware and software. This data can encompass details like your IP address, browser type, domain names, access times, and referring website addresses. This collection is in line with HybridChain's privacy policy and aims to optimize service provision and enhance user experience.https://docs.hybridchain.ai/privacy-policy" - } - ], - "2468": [ - { - "url": "https://coredata-mainnet.hybridchain.ai", - "tracking": "yes", - "trackingDetails": "HybridChain may automatically collect information regarding your computer hardware and software. This data can encompass details like your IP address, browser type, domain names, access times, and referring website addresses. This collection is in line with HybridChain's privacy policy and aims to optimize service provision and enhance user experience.https://docs.hybridchain.ai/privacy-policy" - }, - { - "url": "https://rpc-mainnet.hybridchain.ai", - "tracking": "yes", - "trackingDetails": "HybridChain may automatically collect information regarding your computer hardware and software. This data can encompass details like your IP address, browser type, domain names, access times, and referring website addresses. This collection is in line with HybridChain's privacy policy and aims to optimize service provision and enhance user experience.https://docs.hybridchain.ai/privacy-policy" - } - ], - "2484": [ - { - "url": "https://rpc-nebulas-testnet.uniultra.xyz" - } - ], - "2522": [ - { - "url": "https://rpc.testnet.frax.com" - } - ], - "2525": [ - { - "url": "https://mainnet.rpc.inevm.com/http" - } - ], - "2559": [ - { - "url": "https://www.kortho-chain.com" - } - ], - "2569": [ - { - "url": "https://api.techpay.io" - } - ], - "2606": [ - { - "url": "https://pocrnet.westeurope.cloudapp.azure.com/http" - }, - { - "url": "wss://pocrnet.westeurope.cloudapp.azure.com/ws" - } - ], - "2611": [ - { - "url": "https://dataseed2.redlightscan.finance" - } - ], - "2612": [ - { - "url": "https://api.ezchain.com/ext/bc/C/rpc" - } - ], - "2613": [ - { - "url": "https://testnet-api.ezchain.com/ext/bc/C/rpc" - } - ], - "2625": [ - { - "url": "https://rpc-testnet.whitechain.io" - } - ], - "2648": [ - { - "url": "https://testnet-rpc.ailayer.xyz" - }, - { - "url": "wss://testnet-rpc.ailayer.xyz" - } - ], - "2649": [ - { - "url": "https://mainnet-rpc.ailayer.xyz" - }, - { - "url": "wss://mainnet-rpc.ailayer.xyz" - } - ], - "2710": [ - { - "url": "https://rpc-testnet.morphl2.io" - } - ], - "2718": [ - { - "url": "https://rpc.klaos.laosfoundation.io" - }, - { - "url": "wss://rpc.klaos.laosfoundation.io" - } - ], - "2730": [ - { - "url": "https://xr-sepolia-testnet.rpc.caldera.xyz/http" - } - ], - "2731": [ - { - "url": "https://testnet-rpc.timenetwork.io" - } - ], - "2748": [ - { - "url": "https://rpc.nanon.network" - } - ], - "2777": [ - { - "url": "https://rpc.gmnetwork.ai" - } - ], - "2810": [ - { - "url": "https://rpc-quicknode-holesky.morphl2.io" - }, - { - "url": "wss://rpc-quicknode-holesky.morphl2.io" - }, - { - "url": "https://rpc-holesky.morphl2.io" - } - ], - "2882": [ - { - "url": "https://node.chips.ooo/wasp/api/v1/chains/iota1pp3d3mnap3ufmgqnjsnw344sqmf5svjh26y2khnmc89sv6788y3r207a8fn/evm" - } - ], - "2907": [ - { - "url": "https://rpc.eluxscan.com" - } - ], - "2911": [ - { - "url": "https://rpc.hychain.com/http" - } - ], - "2941": [ - { - "url": "https://testnet-chain.xenonchain.com" - }, - { - "url": "https://testnet-dev.xenonchain.com" - } - ], - "2999": [ - { - "url": "https://mainnet.bityuan.com/eth" - } - ], - "3001": [ - { - "url": "https://nikau.centrality.me/public" - } - ], - "3003": [ - { - "url": "https://rpc.canxium.org" - } - ], - "3011": [ - { - "url": "https://api.mainnet.playa3ull.games" - } - ], - "3031": [ - { - "url": "https://rpc-testnet.orlchain.com" - } - ], - "3033": [ - { - "url": "https://testnet.rebus.money/rpc" - } - ], - "3068": [ - { - "url": "https://public-01.mainnet.bifrostnetwork.com/rpc" - }, - { - "url": "https://public-02.mainnet.bifrostnetwork.com/rpc" - } - ], - "3084": [ - { - "url": "https://subnets.avax.network/xlnetworkt/testnet/rpc" - }, - { - "url": "wss://subnets.avax.network/xlnetworkt/testnet/ws" - } - ], - "3100": [ - { - "url": "https://fraa-flashbox-2800-rpc.a.stagenet.tanssi.network" - }, - { - "url": "wss://fraa-flashbox-2800-rpc.a.stagenet.tanssi.network" - } - ], - "3102": [ - { - "url": "https://fraa-dancebox-3050-rpc.a.dancebox.tanssi.network" - }, - { - "url": "wss://fraa-dancebox-3050-rpc.a.dancebox.tanssi.network" - } - ], - "3109": [ - { - "url": "https://alpha-rpc-node-http.svmscan.io" - } - ], - "3110": [ - { - "url": "https://test-rpc-node-http.svmscan.io" - } - ], - "3269": [ - { - "url": "https://rpcmain.arabianchain.org" - } - ], - "3270": [ - { - "url": "https://rpctestnet.arabianchain.org" - } - ], - "3306": [ - { - "url": "https://dev-rpc.debounce.network" - } - ], - "3331": [ - { - "url": "https://rpc-testnet.zcore.cash" - } - ], - "3333": [ - { - "url": "http://testnet.ethstorage.io:9540" - } - ], - "3334": [ - { - "url": "https://galileo.web3q.io:8545" - } - ], - "3335": [ - { - "url": "http://mainnet.ethstorage.io:9540" - } - ], - "3338": [ - { - "url": "https://peaq.api.onfinality.io/public" - }, - { - "url": "https://peaq-rpc.dwellir.com" - }, - { - "url": "https://peaq-rpc.publicnode.com" - }, - { - "url": "https://evm.peaq.network" - } - ], - "3400": [ - { - "url": "https://rpc.paribu.network" - } - ], - "3424": [ - { - "url": "https://rpc.evolveblockchain.io" - } - ], - "3434": [ - { - "url": "https://testnet-rpc.securechain.ai" - } - ], - "3456": [ - { - "url": "https://testnet-rpc.layeredge.io" - } - ], - "3490": [ - { - "url": "https://gtc-dataseed.gtcscan.io" - } - ], - "3500": [ - { - "url": "https://rpc.testnet.paribuscan.com" - } - ], - "3501": [ - { - "url": "https://rpc.jfinchain.com" - }, - { - "url": "https://rpc.jfinchain.com", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - } - ], - "3601": [ - { - "url": "https://eth-rpc-api.pandoproject.org/rpc" - } - ], - "3602": [ - { - "url": "https://testnet.ethrpc.pandoproject.org/rpc" - } - ], - "3630": [ - { - "url": "https://mainnet-rpc.tycoscan.com" - } - ], - "3636": [ - { - "url": "https://node.botanixlabs.dev" - } - ], - "3637": [ - { - "url": "https://rpc.btxtestchain.com" - } - ], - "3639": [ - { - "url": "https://rpc.ichainscan.com" - } - ], - "3645": [ - { - "url": "https://istanbul.ichainscan.com" - } - ], - "3666": [ - { - "url": "https://rpc.jnsdao.com:8503" - } - ], - "3690": [ - { - "url": "https://rpc1.bittexscan.info" - }, - { - "url": "https://rpc2.bittexscan.info" - } - ], - "3693": [ - { - "url": "https://rpc.empirenetwork.io" - } - ], - "3698": [ - { - "url": "https://testnet-rpc.senjepowersscan.com" - } - ], - "3699": [ - { - "url": "https://rpc.senjepowersscan.com" - } - ], - "3737": [ - { - "url": "https://rpc.crossbell.io" - } - ], - "3776": [ - { - "url": "https://rpc.startale.com/astar-zkevm" - } - ], - "3797": [ - { - "url": "https://elves-core1.alvey.io" - }, - { - "url": "https://elves-core2.alvey.io" - }, - { - "url": "https://elves-core3.alvey.io" - } - ], - "3799": [ - { - "url": "https://testnet-rpc.tangle.tools" - }, - { - "url": "https://testnet-rpc-archive.tangle.tools" - }, - { - "url": "wss://testnet-rpc.tangle.tools" - }, - { - "url": "wss://testnet-rpc-archive.tangle.tools" - } - ], - "3885": [ - { - "url": "https://rpc-zkevm-ghostrider.thefirechain.com" - } - ], - "3888": [ - { - "url": "https://rpc.kalychain.io/rpc" - } - ], - "3889": [ - { - "url": "https://testnetrpc.kalychain.io/rpc" - } - ], - "3912": [ - { - "url": "https://www.dracscan.com/rpc" - } - ], - "3939": [ - { - "url": "https://test.doschain.com" - } - ], - "3966": [ - { - "url": "https://api.dynoprotocol.com" - } - ], - "3967": [ - { - "url": "https://tapi.dynoprotocol.com" - } - ], - "3993": [ - { - "url": "https://rpc-testnet.apexlayer.xyz" - } - ], - "3999": [ - { - "url": "https://mainnet.yuan.org/eth" - } - ], - "4000": [ - { - "url": "https://node1.ozonechain.io" - } - ], - "4001": [ - { - "url": "https://rpc-testnet.peperium.io" - } - ], - "4002": [ - { - "url": "https://rpc.testnet.fantom.network" - }, - { - "url": "https://endpoints.omniatech.io/v1/fantom/testnet/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://rpc.ankr.com/fantom_testnet", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://fantom-testnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://fantom-testnet-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://fantom-testnet-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://fantom.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://fantom-testnet.drpc.org" - }, - { - "url": "wss://fantom-testnet.drpc.org" - } - ], - "4003": [ - { - "url": "https://x1-fastnet.xen.network" - } - ], - "4040": [ - { - "url": "https://rpc-dev.carbonium.network" - }, - { - "url": "https://server-testnet.carbonium.network" - } - ], - "4048": [ - { - "url": "https://rpc.gpu.net" - } - ], - "4058": [ - { - "url": "https://rpc1.ocean.bahamutchain.com" - } - ], - "4061": [ - { - "url": "https://rpc.n3.nahmii.io" - } - ], - "4062": [ - { - "url": "https://rpc.testnet.nahmii.io" - } - ], - "4078": [ - { - "url": "https://muster.alt.technology" - } - ], - "4080": [ - { - "url": "https://rpc.tobescan.com" - } - ], - "4090": [ - { - "url": "https://rpc1.oasis.bahamutchain.com" - } - ], - "4096": [ - { - "url": "https://testnet-rpc.bitindi.org" - } - ], - "4099": [ - { - "url": "https://mainnet-rpc.bitindi.org" - } - ], - "4102": [ - { - "url": "https://eth-ds.testnet.aioz.network" - } - ], - "4139": [ - { - "url": "https://humans-testnet-evm.itrocket.net", - "tracking": "none", - "trackingDetails": "We do not track, store or process any personal data. You can check our privacy policy here: https://itrocket.net/privacy-policy/" - }, - { - "url": "https://evm-rpc.testnet.humans.zone" - } - ], - "4141": [ - { - "url": "https://testnet-rpc.tipboxcoin.net" - } - ], - "4157": [ - { - "url": "https://rpc.testnet.ms" - } - ], - "4162": [ - { - "url": "https://rpc.sx-rollup.gelato.digital" - } - ], - "4181": [ - { - "url": "https://rpc1.phi.network" - }, - { - "url": "https://rpc2.phi.network" - } - ], - "4200": [ - { - "url": "https://rpc.merlinchain.io" - }, - { - "url": "https://merlin-mainnet-enterprise.unifra.io" - }, - { - "url": "https://rpc-merlin.rockx.com" - } - ], - "4201": [ - { - "url": "https://rpc.testnet.lukso.network" - }, - { - "url": "wss://ws-rpc.testnet.lukso.network" - } - ], - "4202": [ - { - "url": "https://rpc.sepolia-api.lisk.com" - } - ], - "4242": [ - { - "url": "https://rpc.chain.nexi.technology" - }, - { - "url": "https://chain.nexilix.com" - }, - { - "url": "https://chain.nexi.evmnode.online" - } - ], - "4243": [ - { - "url": "https://chain.nexiv2.nexilix.com" - }, - { - "url": "https://rpc.chainv1.nexi.technology" - } - ], - "4337": [ - { - "url": "https://build.onbeam.com/rpc" - }, - { - "url": "wss://build.onbeam.com/ws" - }, - { - "url": "https://subnets.avax.network/beam/mainnet/rpc" - }, - { - "url": "wss://subnets.avax.network/beam/mainnet/ws" - } - ], - "4400": [ - { - "url": "https://rpc.creditsmartchain.com" - } - ], - "4444": [ - { - "url": "https://janus.htmlcoin.dev/janus" - }, - { - "url": "https://janus.htmlcoin.com/api" - } - ], - "4460": [ - { - "url": "https://l2-orderly-l2-4460-sepolia-8tc3sd7dvy.t.conduit.xyz" - } - ], - "4544": [ - { - "url": "https://testnet.emoney.network" - } - ], - "4613": [ - { - "url": "https://rpc.verylabs.io" - } - ], - "4653": [ - { - "url": "https://chain-rpc.gold.dev" - } - ], - "4689": [ - { - "url": "https://rpc.ankr.com/iotex", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://babel-api.mainnet.iotex.io" - }, - { - "url": "https://babel-api.mainnet.iotex.one" - }, - { - "url": "https://babel-api.fastblocks.io" - }, - { - "url": "https://iotexrpc.com", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://iotex-network.rpc.thirdweb.com", - "tracking": "yes", - "trackingDetails": "Server logs automatically record information and details about your online interactions with us. For example, server logs may record information about your visit to our Site on a particular time and day and collect information such as your device ID and IP address.https://thirdweb.com/privacy" - }, - { - "url": "https://iotex.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - } - ], - "4690": [ - { - "url": "https://babel-api.testnet.iotex.io" - } - ], - "4759": [ - { - "url": "https://rpc.meversetestnet.io" - } - ], - "4777": [ - { - "url": "https://testnet.blackfort.network/rpc" - } - ], - "4893": [ - { - "url": "https://rpc.gcscan.io" - } - ], - "4918": [ - { - "url": "https://rpc-evm-testnet.venidium.io" - } - ], - "4919": [ - { - "url": "https://rpc.venidium.io" - } - ], - "4999": [ - { - "url": "https://mainnet.blackfort.network/rpc" - }, - { - "url": "https://mainnet-1.blackfort.network/rpc" - }, - { - "url": "https://mainnet-2.blackfort.network/rpc" - }, - { - "url": "https://mainnet-3.blackfort.network/rpc" - } - ], - "5000": [ - { - "url": "https://mantle-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://mantle-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://mantle-mainnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://mantle.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://rpc.ankr.com/mantle", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://1rpc.io/mantle", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://rpc.mantle.xyz" - } - ], - "5001": [ - { - "url": "https://rpc.testnet.mantle.xyz" - } - ], - "5002": [ - { - "url": "https://node0.treasurenet.io" - }, - { - "url": "https://node1.treasurenet.io" - }, - { - "url": "https://node2.treasurenet.io" - }, - { - "url": "https://node3.treasurenet.io" - } - ], - "5003": [ - { - "url": "https://rpc.sepolia.mantle.xyz" - } - ], - "5005": [ - { - "url": "https://node0.testnet.treasurenet.io" - }, - { - "url": "https://node1.testnet.treasurenet.io" - }, - { - "url": "https://node2.testnet.treasurenet.io" - }, - { - "url": "https://node3.testnet.treasurenet.io" - } - ], - "5039": [ - { - "url": "https://subnets.avax.network/onigiri/testnet/rpc" - } - ], - "5040": [ - { - "url": "https://subnets.avax.network/onigiri/mainnet/rpc" - } - ], - "5051": [ - { - "url": "https://nollie-rpc.skatechain.org" - } - ], - "5100": [ - { - "url": "https://rpc-testnet.syndicate.io" - } - ], - "5101": [ - { - "url": "https://rpc-frame.syndicate.io" - } - ], - "5102": [ - { - "url": "https://rpc-sic-testnet-zvr7tlkzsi.t.conduit.xyz" - } - ], - "5103": [ - { - "url": "https://rpc-coordinape-testnet-vs9se3oc4v.t.conduit.xyz" - } - ], - "5104": [ - { - "url": "https://rpc-charmverse-testnet-g6blnaebes.t.conduit.xyz" - } - ], - "5105": [ - { - "url": "https://rpc-superloyalty-testnet-1m5gwjbsv1.t.conduit.xyz" - } - ], - "5106": [ - { - "url": "https://rpc-azra-testnet-6hz86owb1n.t.conduit.xyz" - } - ], - "5112": [ - { - "url": "https://rpc.ham.fun" - } - ], - "5151": [ - { - "url": "https://testnet-rpc.mechain.tech" - } - ], - "5165": [ - { - "url": "https://bahamut-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://bahamut-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://rpc1.bahamut.io" - }, - { - "url": "https://rpc2.bahamut.io" - }, - { - "url": "wss://ws1.sahara.bahamutchain.com" - }, - { - "url": "wss://ws2.sahara.bahamutchain.com" - } - ], - "5169": [ - { - "url": "https://rpc.main.smartlayer.network" - } - ], - "5177": [ - { - "url": "https://mainnet-rpc.tlxscan.com" - } - ], - "5197": [ - { - "url": "https://mainnet.eraswap.network" - }, - { - "url": "https://rpc-mumbai.mainnet.eraswap.network" - } - ], - "5234": [ - { - "url": "https://explorer-rpc-http.mainnet.stages.humanode.io" - } - ], - "5315": [ - { - "url": "https://network.uzmigames.com.br" - } - ], - "5317": [ - { - "url": "https://rpctest.optrust.io" - } - ], - "5321": [ - { - "url": "https://rpc.testnet.itxchain.com" - } - ], - "5333": [ - { - "url": "https://rpc1.netsbo.io" - }, - { - "url": "https://rpc2.netsbo.io" - } - ], - "5353": [ - { - "url": "https://nodetestnet-station-one.tritanium.network" - }, - { - "url": "https://nodetestnet-station-two.tritanium.network" - } - ], - "5372": [ - { - "url": "https://settlus-test-eth.settlus.io" - } - ], - "5424": [ - { - "url": "https://mainnet.edexa.network/rpc" - }, - { - "url": "https://mainnet.edexa.com/rpc" - }, - { - "url": "https://io-dataseed1.mainnet.edexa.io-market.com/rpc" - } - ], - "5439": [ - { - "url": "https://mainnet.egochain.org" - } - ], - "5522": [ - { - "url": "https://testnet.vexascan.com/evmapi" - } - ], - "5551": [ - { - "url": "https://l2.nahmii.io" - } - ], - "5555": [ - { - "url": "https://rpc.chainverse.info" - } - ], - "5611": [ - { - "url": "https://opbnb-testnet-rpc.bnbchain.org" - }, - { - "url": "https://opbnb-testnet.nodereal.io/v1/64a9df0874fb4a93b9d0a3849de012d3" - }, - { - "url": "wss://opbnb-testnet.nodereal.io/ws/v1/64a9df0874fb4a93b9d0a3849de012d3" - }, - { - "url": "https://opbnb-testnet.nodereal.io/v1/e9a36765eb8a40b9bd12e680a1fd2bc5" - }, - { - "url": "wss://opbnb-testnet.nodereal.io/ws/v1/e9a36765eb8a40b9bd12e680a1fd2bc5" - }, - { - "url": "https://opbnb-testnet-rpc.publicnode.com" - }, - { - "url": "wss://opbnb-testnet-rpc.publicnode.com" - } - ], - "5615": [ - { - "url": "https://rpc-testnet.arcturuschain.io" - } - ], - "5616": [ - { - "url": "http://185.99.196.3:8545" - } - ], - "5656": [ - { - "url": "https://rpc-main1.qiblockchain.online" - }, - { - "url": "https://rpc-main2.qiblockchain.online" - } - ], - "5675": [ - { - "url": "https://rpctest.filenova.org" - } - ], - "5678": [ - { - "url": "https://fraa-dancebox-3001-rpc.a.dancebox.tanssi.network" - }, - { - "url": "wss://fraa-dancebox-3001-rpc.a.dancebox.tanssi.network" - } - ], - "5700": [ - { - "url": "https://syscoin-tanenbaum-evm-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://syscoin-tanenbaum-evm-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://rollux.rpc.tanenbaum.io" - }, - { - "url": "wss://rollux.rpc.tanenbaum.io/wss" - }, - { - "url": "https://rpc.tanenbaum.io" - }, - { - "url": "wss://rpc.tanenbaum.io/wss" - }, - { - "url": "https://syscoin-tanenbaum-evm.publicnode.com" - }, - { - "url": "wss://syscoin-tanenbaum-evm.publicnode.com" - } - ], - "5729": [ - { - "url": "https://rpc-testnet.hika.network" - } - ], - "5758": [ - { - "url": "https://testnet-rpc.satoshichain.io" - } - ], - "5777": [ - { - "url": "https://127.0.0.1:7545" - } - ], - "5845": [ - { - "url": "https://rpc.tangle.tools" - }, - { - "url": "wss://rpc.tangle.tools" - } - ], - "5851": [ - { - "url": "http://polaris1.ont.io:20339" - }, - { - "url": "http://polaris2.ont.io:20339" - }, - { - "url": "http://polaris3.ont.io:20339" - }, - { - "url": "http://polaris4.ont.io:20339" - }, - { - "url": "https://polaris1.ont.io:10339" - }, - { - "url": "https://polaris2.ont.io:10339" - }, - { - "url": "https://polaris3.ont.io:10339" - }, - { - "url": "https://polaris4.ont.io:10339" - } - ], - "5858": [ - { - "url": "https://rpc.cthscan.com" - } - ], - "5869": [ - { - "url": "https://proxy.wegochain.io" - }, - { - "url": "http://wallet.wegochain.io:7764" - } - ], - "6000": [ - { - "url": "https://fullnode-testnet.bouncebitapi.com" - } - ], - "6001": [ - { - "url": "https://fullnode-mainnet.bouncebitapi.com" - } - ], - "6065": [ - { - "url": "https://rpc-test.tresleches.finance" - } - ], - "6066": [ - { - "url": "https://rpc.tresleches.finance" - }, - { - "url": "https://rpc.treschain.io" - } - ], - "6102": [ - { - "url": "https://testnet.cascadia.foundation" - } - ], - "6118": [ - { - "url": "https://node-api.alp.uptn.io/v1/ext/rpc" - } - ], - "6119": [ - { - "url": "https://node-api.uptn.io/v1/ext/rpc" - } - ], - "6283": [ - { - "url": "https://rpc.laos.laosfoundation.io" - }, - { - "url": "wss://rpc.laos.laosfoundation.io" - } - ], - "6321": [ - { - "url": "https://jsonrpc.euphoria.aura.network" - } - ], - "6322": [ - { - "url": "https://jsonrpc.aura.network" - } - ], - "6363": [ - { - "url": "https://dsc-rpc.digitsoul.co.th" - } - ], - "6398": [ - { - "url": "https://rpc.connext-sepolia.gelato.digital" - } - ], - "6502": [ - { - "url": "https://peerpay.su.gy/p2p" - } - ], - "6550": [ - { - "url": "https://testnetrpc.flamma.network" - } - ], - "6552": [ - { - "url": "https://testnet-rpc.scolcoin.com" - } - ], - "6565": [ - { - "url": "https://rpc-testnet-v1.foxchain.app" - }, - { - "url": "https://rpc2-testnet-v1.foxchain.app" - }, - { - "url": "https://rpc3-testnet-v1.foxchain.app" - } - ], - "6626": [ - { - "url": "https://http-mainnet.chain.pixie.xyz" - }, - { - "url": "wss://ws-mainnet.chain.pixie.xyz" - } - ], - "6660": [ - { - "url": "https://testnet-rpc.latestcoin.io" - } - ], - "6661": [ - { - "url": "https://rpc-mainnet.cybria.io" - } - ], - "6666": [ - { - "url": "https://l2-rpc.cybascan.io" - } - ], - "6678": [ - { - "url": "https://rpc1-mainnet.emc.network" - } - ], - "6688": [ - { - "url": "https://iris-evm-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://iris-evm-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://evmrpc.irishub-1.irisnet.org" - }, - { - "url": "https://iris-evm.publicnode.com" - }, - { - "url": "wss://iris-evm.publicnode.com" - } - ], - "6699": [ - { - "url": "https://rpc.oxscan.io" - } - ], - "6701": [ - { - "url": "https://chain.paxb.io" - } - ], - "6779": [ - { - "url": "https://rpc.compverse.io" - }, - { - "url": "https://rpc-useast1.compverse.io" - } - ], - "6789": [ - { - "url": "https://rpc-mainnet.goldsmartchain.com" - } - ], - "6805": [ - { - "url": "https://racemainnet.io" - } - ], - "6806": [ - { - "url": "https://racetestnet.io" - } - ], - "6868": [ - { - "url": "https://rpc.poolsmobility.com" - } - ], - "6969": [ - { - "url": "https://rpc.tombchain.com" - } - ], - "6999": [ - { - "url": "https://seed0.polysmartchain.com" - }, - { - "url": "https://seed1.polysmartchain.com" - }, - { - "url": "https://seed2.polysmartchain.com" - } - ], - "7000": [ - { - "url": "https://zetachain-evm.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://zetachain-mainnet-archive.allthatnode.com:8545", - "tracking": "yes", - "trackingDetails": "In addition to the Personal Information, the Billing Information, and the Geolocational Information..., we automatically collect certain information when you use the Platform or Website: IP addresses, browser type and language...; information about a mobile device, including universally unique ID (\u201CUUID\u201D), platform type and version (e.g., iOS or Android), carrier and country location, hardware and processor information, and network type; and activity and usage information occurring via the Platform or Website.https://www.allthatnode.com/privacypolicy.dsrv" - }, - { - "url": "wss://zetachain-mainnet-archive.allthatnode.com:8546", - "tracking": "yes", - "trackingDetails": "In addition to the Personal Information, the Billing Information, and the Geolocational Information..., we automatically collect certain information when you use the Platform or Website: IP addresses, browser type and language...; information about a mobile device, including universally unique ID (\u201CUUID\u201D), platform type and version (e.g., iOS or Android), carrier and country location, hardware and processor information, and network type; and activity and usage information occurring via the Platform or Website.https://www.allthatnode.com/privacypolicy.dsrv" - }, - { - "url": "https://zeta.rpcgrid.com", - "tracking": "none", - "trackingDetails": "Only strictly functional data is automatically collected by the RPC. None of this data is directly exported or used for commercial purposes. https://rpcgrid.com/privacy-policy" - }, - { - "url": "wss://zeta.rpcgrid.com", - "tracking": "none", - "trackingDetails": "Only strictly functional data is automatically collected by the RPC. None of this data is directly exported or used for commercial purposes. https://rpcgrid.com/privacy-policy" - }, - { - "url": "https://zetachain-mainnet.g.allthatnode.com/archive/evm" - }, - { - "url": "https://zeta-chain.drpc.org" - }, - { - "url": "https://zetachain-mainnet.public.blastapi.io" - }, - { - "url": "https://7000.rpc.thirdweb.com" - } - ], - "7001": [ - { - "url": "https://zetachain-athens-evm.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://zetachain-testnet.public.blastapi.io" - }, - { - "url": "https://zetachain-athens.g.allthatnode.com/archive/evm" - }, - { - "url": "https://7001.rpc.thirdweb.com" - }, - { - "url": "https://zeta-chain-testnet.drpc.org" - } - ], - "7007": [ - { - "url": "https://rpc.bstchain.io" - } - ], - "7027": [ - { - "url": "https://rpc.ella.network" - } - ], - "7070": [ - { - "url": "https://planq-rpc.nodies.app" - }, - { - "url": "https://jsonrpc.planq.nodestake.top" - }, - { - "url": "https://evm-rpc.planq.network" - } - ], - "7077": [ - { - "url": "https://evm-rpc-atlas.planq.network" - } - ], - "7100": [ - { - "url": "https://rpc.numecrypto.com" - } - ], - "7171": [ - { - "url": "https://connect.bit-rock.io" - }, - { - "url": "https://brockrpc.io" - } - ], - "7222": [ - { - "url": "https://evm-rpc.devnet-3.nibiru.fi" - } - ], - "7244": [ - { - "url": "https://testnet-rpc.zeuschainscan.io" - } - ], - "7300": [ - { - "url": "https://rpc-xpla-verse.xpla.dev" - } - ], - "7331": [ - { - "url": "https://evm.klyntar.org/kly_evm_rpc" - }, - { - "url": "https://evm.klyntarscan.org/kly_evm_rpc" - } - ], - "7332": [ - { - "url": "https://eon-rpc.horizenlabs.io/ethv1" - }, - { - "url": "https://rpc.ankr.com/horizen_eon" - } - ], - "7341": [ - { - "url": "https://rpc.shyft.network" - } - ], - "7484": [ - { - "url": "https://rpc.x.raba.app" - }, - { - "url": "wss://rpc.x.raba.app/ws" - } - ], - "7518": [ - { - "url": "https://rpc.meversemainnet.io" - } - ], - "7560": [ - { - "url": "https://cyber.alt.technology" - }, - { - "url": "wss://cyber-ws.alt.technology" - }, - { - "url": "https://rpc.cyber.co" - }, - { - "url": "wss://rpc.cyber.co" - } - ], - "7575": [ - { - "url": "https://testnet.adilchain-rpc.io" - } - ], - "7576": [ - { - "url": "https://adilchain-rpc.io" - } - ], - "7668": [ - { - "url": "https://root.rootnet.live/archive" - }, - { - "url": "wss://root.rootnet.live/archive/ws" - } - ], - "7672": [ - { - "url": "https://porcini.rootnet.app/archive" - }, - { - "url": "wss://porcini.rootnet.app/archive/ws" - } - ], - "7700": [ - { - "url": "https://canto.gravitychain.io" - }, - { - "url": "https://canto.evm.chandrastation.com" - }, - { - "url": "https://jsonrpc.canto.nodestake.top" - }, - { - "url": "https://canto.dexvaults.com" - }, - { - "url": "wss://canto.gravitychain.io:8546" - }, - { - "url": "wss://canto.dexvaults.com/ws" - }, - { - "url": "https://canto-rpc.ansybl.io" - }, - { - "url": "https://canto.slingshot.finance" - }, - { - "url": "https://mainnode.plexnode.org:8545" - } - ], - "7701": [ - { - "url": "https://testnet-archive.plexnode.wtf" - } - ], - "7771": [ - { - "url": "https://testnet.bit-rock.io" - } - ], - "7774": [ - { - "url": "https://mainnet-rpc-1.gdccscan.io" - } - ], - "7775": [ - { - "url": "https://testnet-rpc1.gdccscan.io" - } - ], - "7776": [ - { - "url": "https://rpc1.pandasea.io" - } - ], - "7777": [ - { - "url": "https://testnet1.rotw.games" - }, - { - "url": "https://testnet2.rotw.games" - }, - { - "url": "https://testnet3.rotw.games" - }, - { - "url": "https://testnet4.rotw.games" - }, - { - "url": "https://testnet5.rotw.games" - }, - { - "url": "https://testnet1.riseofthewarbots.com" - }, - { - "url": "https://testnet2.riseofthewarbots.com" - }, - { - "url": "https://testnet3.riseofthewarbots.com" - }, - { - "url": "https://testnet4.riseofthewarbots.com" - }, - { - "url": "https://testnet5.riseofthewarbots.com" - } - ], - "7778": [ - { - "url": "https://validator-mainnet.orenium.org" - }, - { - "url": "https://rpc-oracle-mainnet.orenium.org" - }, - { - "url": "https://portalmainnet.orenium.org" - } - ], - "7798": [ - { - "url": "https://long.rpc.openex.network" - } - ], - "7860": [ - { - "url": "https://node1.maalscan.io" - }, - { - "url": "https://rpc-bntest.maalscan.io" - } - ], - "7862": [ - { - "url": "https://node1-mainnet-new.maalscan.io" - }, - { - "url": "https://node2-mainnet-new.maalscan.io" - }, - { - "url": "https://node3-mainnet-new.maalscan.io" - } - ], - "7863": [ - { - "url": "https://node-testnet.maalscan.io" - }, - { - "url": "https://node2-testnet.maalscan.io" - } - ], - "7878": [ - { - "url": "https://hatlas.rpc.hazlor.com:8545" - }, - { - "url": "wss://hatlas.rpc.hazlor.com:8546" - } - ], - "7887": [ - { - "url": "https://rpc.kinto.xyz/http" - }, - { - "url": "https://kinto-mainnet.calderachain.xyz/http" - } - ], - "7895": [ - { - "url": "https://rpc-athena.ardescan.com", - "tracking": "yes", - "trackingDetails": " (ARD) Ardenium Athena, we prioritize the protection of your privacy and the security of your data. This privacy policy summary provides an overview of how we handle and safeguard your personal information when you use our Ardenium Athena Explorer Blockchain services. However, please note that this is only a summary, and for complete details, we encourage you to review the full privacy policy available at soma, Information Collection: When you use our services, we may collect personal information, such as mobile device details, operation records, transaction records, wallet addresses, and other relevant data. For a more comprehensive understanding, please refer to our full privacy policy at https://docs.ardenium.wiki/ardenium-network/disclaimer." - } - ], - "7923": [ - { - "url": "https://rpc.dotblox.io" - } - ], - "7924": [ - { - "url": "https://mainnet-rpc.mochain.app" - } - ], - "7979": [ - { - "url": "https://main.doschain.com" - } - ], - "8000": [ - { - "url": "https://dataseed.testnet.teleport.network" - }, - { - "url": "https://evm-rpc.teleport.network" - } - ], - "8001": [ - { - "url": "https://evm-rpc.testnet.teleport.network" - } - ], - "8008": [ - { - "url": "https://rpc.polynomial.fi" - } - ], - "8029": [ - { - "url": "https://testnet.mdgl.io" - } - ], - "8047": [ - { - "url": "https://rpc0.come.boat" - } - ], - "8054": [ - { - "url": "https://rpc.sepolia.karak.network" - } - ], - "8080": [ - { - "url": "https://liberty10.shardeum.org" - } - ], - "8081": [ - { - "url": "https://dapps.shardeum.org", - "tracking": "yes", - "trackingDetails": "Shardeum follows a standard procedure of using log files. These files log visitors when they visit websites... The information collected by log files includes IP addresses, browser type, ISP, date and time stamp, referring/exit pages, and potentially the number of clicks.https://shardeum.org/privacy-policy/" - }, - { - "url": "https://liberty20.shardeum.org" - } - ], - "8082": [ - { - "url": "https://sphinx.shardeum.org", - "tracking": "yes", - "trackingDetails": "Shardeum follows a standard procedure of using log files. These files log visitors when they visit websites... The information collected by log files includes IP addresses, browser type, ISP, date and time stamp, referring/exit pages, and potentially the number of clicks.https://shardeum.org/privacy-policy/" - } - ], - "8086": [ - { - "url": "https://rpc.biteth.org" - } - ], - "8087": [ - { - "url": "https://rpc.e-dollar.org" - } - ], - "8098": [ - { - "url": "https://u0ma6t6heb:KDNwOsRDGcyM2Oeui1p431Bteb4rvcWkuPgQNHwB4FM@u0xy4x6x82-u0e2mg517m-rpc.us0-aws.kaleido.io" - } - ], - "8131": [ - { - "url": "https://testnet.meerlabs.com" - }, - { - "url": "https://testnet-qng.rpc.qitmeer.io" - }, - { - "url": "https://meer.testnet.meerfans.club" - } - ], - "8181": [ - { - "url": "https://pre-boc1.beonechain.com" - } - ], - "8192": [ - { - "url": "https://rpc.toruschain.com" - } - ], - "8194": [ - { - "url": "https://rpc.testnet.toruschain.com" - } - ], - "8217": [ - { - "url": "https://public-en-cypress.klaytn.net" - }, - { - "url": "https://klaytn-mainnet-rpc.allthatnode.com:8551", - "tracking": "yes", - "trackingDetails": "In addition to the Personal Information, the Billing Information, and the Geolocational Information..., we automatically collect certain information when you use the Platform or Website: IP addresses, browser type and language...; information about a mobile device, including universally unique ID (\u201CUUID\u201D), platform type and version (e.g., iOS or Android), carrier and country location, hardware and processor information, and network type; and activity and usage information occurring via the Platform or Website.https://www.allthatnode.com/privacypolicy.dsrv" - }, - { - "url": "https://rpc.ankr.com/klaytn ", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://klaytn.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://klaytn.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://1rpc.io/klay", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://klaytn-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://klaytn.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://public-en.node.kaia.io" - } - ], - "8227": [ - { - "url": "https://subnets.avax.network/space/mainnet/rpc" - } - ], - "8272": [ - { - "url": "https://rpc.blocktonscan.com" - } - ], - "8285": [ - { - "url": "https://www.krotho-test.net" - } - ], - "8329": [ - { - "url": "https://rpc.lorenzo-protocol.xyz" - } - ], - "8333": [ - { - "url": "https://mainnet-rpc.b3.fun" - } - ], - "8387": [ - { - "url": "https://api.dracones.net" - } - ], - "8453": [ - { - "url": "https://base.llamarpc.com", - "tracking": "none", - "trackingDetails": "LlamaNodes is open-source and does not track or store user information that transits through our RPCs (location, IP, wallet, etc). To learn more, have a look at the public Privacy Policy in our docs: https://llamanodes.notion.site/Privacy-Practices-f20fd8fdd02a469d9d4f42a5989bb936", - "isOpenSource": true - }, - { - "url": "https://mainnet.base.org" - }, - { - "url": "https://developer-access-mainnet.base.org" - }, - { - "url": "https://base-mainnet.diamondswap.org/rpc", - "tracking": "limited", - "trackingDetails": "We record limited metadata from requests. This data is stored for a maximum of 90 days and is solely used for debugging, identifying suspicious activity, and generating analytics." - }, - { - "url": "https://base.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://1rpc.io/base", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://base-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://base.meowrpc.com", - "tracking": "none", - "trackingDetails": "With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com" - }, - { - "url": "https://base-mainnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://base.gateway.tenderly.co", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://gateway.tenderly.co/public/base", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://rpc.notadegen.com/base" - }, - { - "url": "https://base-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://base-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://base.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://endpoints.omniatech.io/v1/base/mainnet/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://base.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "wss://base.gateway.tenderly.co" - } - ], - "8545": [ - { - "url": "https://rpcv1-dn-1.chakrachain.io" - } - ], - "8654": [ - { - "url": "https://mainnet.buildwithtoki.com/v0/rpc" - } - ], - "8655": [ - { - "url": "https://testnet.buildwithtoki.com/v0/rpc" - } - ], - "8668": [ - { - "url": "https://mainnet-rpc.helachain.com" - } - ], - "8723": [ - { - "url": "https://mainnet-web3.wolot.io" - } - ], - "8724": [ - { - "url": "https://testnet-web3.wolot.io" - } - ], - "8726": [ - { - "url": "https://mainnet-validator.storagechain.io" - } - ], - "8727": [ - { - "url": "https://testnet-validator.storagechain.io" - } - ], - "8732": [ - { - "url": "https://rpc.bullionsx.org" - } - ], - "8738": [ - { - "url": "https://rpc.alph.network" - }, - { - "url": "wss://rpc.alph.network" - } - ], - "8768": [ - { - "url": "https://node1.tmyblockchain.org/rpc" - } - ], - "8822": [ - { - "url": "https://json-rpc.evm.iotaledger.net" - }, - { - "url": "https://ws.json-rpc.evm.iotaledger.net" - } - ], - "8844": [ - { - "url": "https://rpc.testnet.hydrachain.org" - } - ], - "8848": [ - { - "url": "https://rpc-mainnet.ma.ro" - } - ], - "8866": [ - { - "url": "https://mainnet.lumio.io" - } - ], - "8869": [ - { - "url": "https://rpc.lif3.com" - } - ], - "8880": [ - { - "url": "https://rpc.unique.network" - }, - { - "url": "https://eu-rpc.unique.network" - }, - { - "url": "https://asia-rpc.unique.network" - }, - { - "url": "https://us-rpc.unique.network" - } - ], - "8881": [ - { - "url": "https://rpc-quartz.unique.network" - }, - { - "url": "https://quartz.api.onfinality.io/public-ws" - }, - { - "url": "https://eu-rpc-quartz.unique.network" - }, - { - "url": "https://asia-rpc-quartz.unique.network" - }, - { - "url": "https://us-rpc-quartz.unique.network" - } - ], - "8882": [ - { - "url": "https://rpc-opal.unique.network" - }, - { - "url": "https://us-rpc-opal.unique.network" - }, - { - "url": "https://eu-rpc-opal.unique.network" - }, - { - "url": "https://asia-rpc-opal.unique.network" - } - ], - "8883": [ - { - "url": "https://rpc-sapphire.unique.network" - }, - { - "url": "https://us-rpc-sapphire.unique.network" - }, - { - "url": "https://eu-rpc-sapphire.unique.network" - }, - { - "url": "https://asia-rpc-sapphire.unique.network" - } - ], - "8886": [ - { - "url": "https://eu-testnet.avenium.io" - }, - { - "url": "https://connect-testnet.avenium.io" - } - ], - "8888": [ - { - "url": "https://mainnet.xana.net/rpc" - } - ], - "8889": [ - { - "url": "https://vsc-dataseed.vyvo.org:8889" - } - ], - "8890": [ - { - "url": "https://rpc-dev-testnet.orenium.org" - }, - { - "url": "https://rpc-testnet.orenium.org" - }, - { - "url": "https://rpc-orc.oredex.finance" - }, - { - "url": "https://testnet-rpc.oredex.finance" - }, - { - "url": "https://oredex-node.oredex.finance" - } - ], - "8898": [ - { - "url": "https://dataseed.mmtscan.io" - }, - { - "url": "https://dataseed1.mmtscan.io" - }, - { - "url": "https://dataseed2.mmtscan.io" - } - ], - "8899": [ - { - "url": "https://rpc-l1.jibchain.net" - }, - { - "url": "https://jib-rpc.inan.in.th" - }, - { - "url": "https://rpc-l1.jbc.aomwara.in.th" - }, - { - "url": "https://rpc-l1.jbc.xpool.pw" - }, - { - "url": "https://rpc-l1.inan.in.th" - } - ], - "8911": [ - { - "url": "https://rpc.algen.network" - } - ], - "8912": [ - { - "url": "https://rpc.test.algen.network" - } - ], - "8921": [ - { - "url": "https://rpc.alg2.algen.network" - } - ], - "8922": [ - { - "url": "https://rpc.alg2-test.algen.network" - } - ], - "8989": [ - { - "url": "https://rpc-asia.gmmtchain.io" - } - ], - "8995": [ - { - "url": "https://core.bloxberg.org" - } - ], - "9000": [ - { - "url": "https://evmos-testnet-json.qubelabs.io" - }, - { - "url": "https://evmos-tjson.antrixy.org" - }, - { - "url": "https://evmos-testnet-rpc.kingsuper.services" - }, - { - "url": "https://rpc.evmos.test.theamsolutions.info" - }, - { - "url": "https://api.evmos-test.theamsolutions.info" - }, - { - "url": "https://rpc.evmos.testnet.node75.org" - }, - { - "url": "https://rpc-evm.testnet.evmos.dragonstake.io" - }, - { - "url": "https://evmos-testnet-rpc.stake-town.com" - }, - { - "url": "https://evmos-testnet-jsonrpc.stake-town.com" - }, - { - "url": "https://api.evmos-test.theamsolutions.info" - }, - { - "url": "https://jsonrpc-t.evmos.nodestake.top" - }, - { - "url": "https://evmos-testnet-jsonrpc.autostake.com" - }, - { - "url": "https://evmos-testnet-jsonrpc.alkadeta.com" - }, - { - "url": "https://evm-rpc.evmost.silentvalidator.com" - }, - { - "url": "https://testnet-evm-rpc-evmos.hoodrun.io" - }, - { - "url": "https://alphab.ai/rpc/eth/evmos_testnet" - }, - { - "url": "https://t-evmos-jsonrpc.kalia.network" - }, - { - "url": "https://jsonrpc-evmos-testnet.mzonder.com" - }, - { - "url": "https://evmos-testnet.lava.build/lava-referer-16223de7-12c0-49f3-8d87-e5f1e6a0eb3b" - }, - { - "url": "https://evmos-testnet.lava.build" - }, - { - "url": "https://eth.bd.evmos.dev:8545" - }, - { - "url": "https://evmos-testnet-evm-rpc.publicnode.com" - }, - { - "url": "wss://evmos-testnet-evm-rpc.publicnode.com" - } - ], - "9001": [ - { - "url": "https://evmos.lava.build", - "tracking": "yes", - "trackingDetails": "We, our service providers, and our business partners may automatically log information about you, your computer or mobile device, and your interaction over time with the Service..., such as: Device data, ...your computer or mobile device's operating system type and version, manufacturer and model, browser type, screen resolution, RAM and disk size, CPU usage, device type (e.g., phone, tablet), IP address, unique identifiers (including identifiers used for advertising purposes), language settings, mobile device carrier, radio/network information (e.g., Wi-Fi, LTE, 3G), and general location information such as city, state or geographic area. https://www.lavanet.xyz/privacy-policy" - }, - { - "url": "https://evmos-mainnet-jsonrpc.autostake.com", - "tracking": "limited", - "trackingDetails": "When you browse our marketing pages, we\u2019ll track that for statistical purposes (like conversion rates and to test new designs). We also store any information you volunteer, like surveys, for as long as it makes sense.https://autostake.com/privacy-policy" - }, - { - "url": "https://evmos-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://evmos-mainnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://evmos-evm-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://evmos-evm-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://jsonrpc-evmos.goldenratiostaking.net" - }, - { - "url": "https://evmos.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://evmos-jsonrpc.cyphercore.io", - "tracking": "yes", - "trackingDetails": "We collect information about you in various ways when you use our website. This includes information you provide directly to us, information we collect automatically, and information we obtain from third-party sources.https://cyphercore.io/privacy-policy/" - }, - { - "url": "https://eth.bd.evmos.org:8545" - }, - { - "url": "https://evmos-json-rpc.stakely.io" - }, - { - "url": "https://jsonrpc-evmos-ia.cosmosia.notional.ventures" - }, - { - "url": "https://json-rpc.evmos.blockhunters.org" - }, - { - "url": "https://evmos-json-rpc.agoranodes.com" - }, - { - "url": "https://evmos-json.antrixy.org" - }, - { - "url": "https://jsonrpc.evmos.nodestake.top" - }, - { - "url": "https://evmos-jsonrpc.alkadeta.com" - }, - { - "url": "https://evmos-json.qubelabs.io" - }, - { - "url": "https://evmos-rpc.theamsolutions.info" - }, - { - "url": "https://evmos-api.theamsolutions.info" - }, - { - "url": "https://evmos-jsonrpc.theamsolutions.info" - }, - { - "url": "https://evm-rpc-evmos.hoodrun.io" - }, - { - "url": "https://evmos-json-rpc.0base.dev" - }, - { - "url": "https://json-rpc.evmos.tcnetwork.io" - }, - { - "url": "https://rpc-evm.evmos.dragonstake.io" - }, - { - "url": "https://evmosevm.rpc.stakin-nodes.com" - }, - { - "url": "https://evmos-jsonrpc.stake-town.com" - }, - { - "url": "https://json-rpc-evmos.mainnet.validatrium.club" - }, - { - "url": "https://rpc-evmos.imperator.co" - }, - { - "url": "https://evm-rpc.evmos.silentvalidator.com" - }, - { - "url": "https://alphab.ai/rpc/eth/evmos" - }, - { - "url": "https://evmos-jsonrpc.kalia.network" - }, - { - "url": "https://jsonrpc-evmos.mzonder.com" - }, - { - "url": "https://evmos.lava.build/lava-referer-16223de7-12c0-49f3-8d87-e5f1e6a0eb3b", - "tracking": "yes", - "trackingDetails": "We, our service providers, and our business partners may automatically log information about you, your computer or mobile device, and your interaction over time with the Service..., such as: Device data, ...your computer or mobile device's operating system type and version, manufacturer and model, browser type, screen resolution, RAM and disk size, CPU usage, device type (e.g., phone, tablet), IP address, unique identifiers (including identifiers used for advertising purposes), language settings, mobile device carrier, radio/network information (e.g., Wi-Fi, LTE, 3G), and general location information such as city, state or geographic area. https://www.lavanet.xyz/privacy-policy" - }, - { - "url": "wss://evmos.lava.build/websocket" - } - ], - "9007": [ - { - "url": "https://rpc-testnet-nodes.shidoscan.com" - }, - { - "url": "wss://wss-testnet-nodes.shidoscan.com" - } - ], - "9008": [ - { - "url": "https://rpc-nodes.shidoscan.com" - }, - { - "url": "wss://wss-nodes.shidoscan.com" - }, - { - "url": "https://rpc-delta-nodes.shidoscan.com" - }, - { - "url": "wss://wss-delta-nodes.shidoscan.com" - } - ], - "9012": [ - { - "url": "https://mainnet.berylbit.io" - } - ], - "9024": [ - { - "url": "https://rpc-testnet-nodes.nexablockscan.io" - } - ], - "9025": [ - { - "url": "https://rpc-nodes.nexablockscan.io" - }, - { - "url": "wss://wss-nodes.nexablockscan.io" - }, - { - "url": "https://rpc-nodes-delta.nexablockscan.io" - } - ], - "9069": [ - { - "url": "https://rpc.nexus.mainnet.apexfusion.org" - } - ], - "9070": [ - { - "url": "https://rpc.nexus.testnet.apexfusion.org" - } - ], - "9100": [ - { - "url": "rpcWorking:false" - }, - { - "url": "https://genesis-gn.com" - }, - { - "url": "wss://genesis-gn.com" - } - ], - "9223": [ - { - "url": "https://chain-rpc.codefin.pro" - } - ], - "9339": [ - { - "url": "https://testnet-rpc.dogcoin.me" - } - ], - "9372": [ - { - "url": "https://rpc.testnet.oasys.games" - } - ], - "9393": [ - { - "url": "https://sepolia-dela.deperp.com" - } - ], - "9395": [ - { - "url": "https://mainnet-rpc.evokescan.org" - } - ], - "9496": [ - { - "url": "https://testnet.wvm.dev" - }, - { - "url": "https://testnet-rpc.wvm.dev" - } - ], - "9527": [ - { - "url": "https://robin.rangersprotocol.com/api/jsonrpc" - } - ], - "9528": [ - { - "url": "https://qeasyweb3.com" - } - ], - "9559": [ - { - "url": "https://testnet.neonlink.io" - } - ], - "9700": [ - { - "url": "https://dev-rpc.oortech.com" - } - ], - "9728": [ - { - "url": "https://testnet.bnb.boba.network" - }, - { - "url": "wss://wss.testnet.bnb.boba.network" - }, - { - "url": "https://replica.testnet.bnb.boba.network" - }, - { - "url": "wss://replica-wss.testnet.bnb.boba.network" - }, - { - "url": "https://boba-bnb-testnet.gateway.tenderly.co" - }, - { - "url": "wss://boba-bnb-testnet.gateway.tenderly.co" - } - ], - "9768": [ - { - "url": "https://testnet-rpc.mainnetz.io" - } - ], - "9779": [ - { - "url": "https://rpc-mainnet.pepenetwork.io" - } - ], - "9789": [ - { - "url": "https://rpc.testnet.tabichain.com" - } - ], - "9790": [ - { - "url": "https://evm-api.carbon.network" - } - ], - "9792": [ - { - "url": "https://test-evm-api.carbon.network" - } - ], - "9797": [ - { - "url": "https://rpc.optimusz7.com" - } - ], - "9818": [ - { - "url": "https://data-aws-testnet.imperiumchain.com" - }, - { - "url": "https://data-aws2-testnet.imperiumchain.com" - } - ], - "9819": [ - { - "url": "https://data-aws-mainnet.imperiumchain.com" - }, - { - "url": "https://data-aws2-mainnet.imperiumchain.com" - } - ], - "9876": [ - { - "url": "https://rpctestnet.binarychain.org" - } - ], - "9888": [ - { - "url": "https://dl-rpc.dogelayer.org" - } - ], - "9898": [ - { - "url": "https://rpc.larissa.network" - } - ], - "9911": [ - { - "url": "https://rpc.escscan.com" - } - ], - "9977": [ - { - "url": "https://testnet-msc.mindchain.info" - }, - { - "url": "wss://testnet-msc.mindchain.info/ws" - } - ], - "9980": [ - { - "url": "https://rpc.combonetwork.io" - } - ], - "9981": [ - { - "url": "https://main-rpc.volleychain.com" - } - ], - "9990": [ - { - "url": "https://rpcpc1-qa.agung.peaq.network" - } - ], - "9996": [ - { - "url": "https://rpc-msc.mindchain.info" - }, - { - "url": "https://seednode.mindchain.info" - }, - { - "url": "https://archive.mindchain.info" - }, - { - "url": "https://mind-smart-chain.rpc.thirdweb.com" - }, - { - "url": "wss://archive.mindchain.info/ws" - }, - { - "url": "wss://seednode.mindchain.info/ws" - } - ], - "9997": [ - { - "url": "https://testnet-rollup-api.altlayer.io" - } - ], - "9998": [ - { - "url": "https://zitcoin.us" - } - ], - "9999": [ - { - "url": "https://geth.dev.bccloud.net" - } - ], - "10000": [ - { - "url": "https://smartbch.fountainhead.cash/mainnet" - }, - { - "url": "https://global.uat.cash" - }, - { - "url": "https://rpc.uatvo.com" - }, - { - "url": "https://smartbch.greyh.at" - }, - { - "url": "https://rpc-mainnet.smartbch.org" - }, - { - "url": "https://smartbch.devops.cash/mainnet" - } - ], - "10001": [ - { - "url": "https://rpc-testnet.smartbch.org" - }, - { - "url": "https://smartbch.devops.cash/testnet" - } - ], - "10024": [ - { - "url": "https://node1.testnet.gaiaopen.network" - }, - { - "url": "https://node1.mainnet.gon.network" - }, - { - "url": "https://node2.mainnet.gon.network" - }, - { - "url": "https://node3.mainnet.gon.network" - }, - { - "url": "https://node4.mainnet.gon.network" - } - ], - "10081": [ - { - "url": "https://rpc-1.testnet.japanopenchain.org:8545" - }, - { - "url": "https://rpc-2.testnet.japanopenchain.org:8545" - }, - { - "url": "https://rpc-3.testnet.japanopenchain.org" - } - ], - "10086": [ - { - "url": "http://geth.free.idcfengye.com" - } - ], - "10096": [ - { - "url": "https://web3.metanovaverse.com" - } - ], - "10101": [ - { - "url": "https://eu.mainnet.xixoio.com" - }, - { - "url": "https://us.mainnet.xixoio.com" - }, - { - "url": "https://asia.mainnet.xixoio.com" - } - ], - "10200": [ - { - "url": "https://rpc.chiadochain.net" - }, - { - "url": "https://rpc.chiado.gnosis.gateway.fm", - "tracking": "yes", - "trackingDetails": "When you use our services or visit our websites, we may log your device\u2019s IP address for debugging and security reasons. We may retain this information for up to twelve months" - }, - { - "url": " https://endpoints.omniatech.io/v1/gnosis/chiado/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://gnosis-chiado-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://gnosis-chiado-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://1rpc.io/gnosis", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "wss://rpc.chiadochain.net/wss" - }, - { - "url": "https://gnosis-chiado.drpc.org" - }, - { - "url": "wss://gnosis-chiado.drpc.org" - } - ], - "10201": [ - { - "url": "https://rpc.maxxchain.org" - }, - { - "url": "https://rpc1.maxxchain.org" - }, - { - "url": "https://rpc2.maxxchain.org" - } - ], - "10222": [ - { - "url": "https://glc-dataseed.glscan.io" - } - ], - "10242": [ - { - "url": "https://rpc.arthera.net" - } - ], - "10243": [ - { - "url": "https://rpc-test.arthera.net" - } - ], - "10248": [ - { - "url": "https://node.0xtchain.com" - } - ], - "10321": [ - { - "url": "https://rpc.taoevm.io" - } - ], - "10324": [ - { - "url": "https://testnet-rpc.taoevm.io" - } - ], - "10395": [ - { - "url": "https://gwangju.worldland.foundation" - } - ], - "10507": [ - { - "url": "https://mainnetrpc.num.network" - } - ], - "10508": [ - { - "url": "https://testnetrpc.num.network" - } - ], - "10823": [ - { - "url": "http://node106.cryptocoinpay.info:8545" - }, - { - "url": "ws://node106.cryptocoinpay.info:8546" - } - ], - "10849": [ - { - "url": "https://subnets.avax.network/lamina1/mainnet/rpc" - } - ], - "10850": [ - { - "url": "https://subnets.avax.network/lamina1id/mainnet/rpc" - } - ], - "10946": [ - { - "url": "https://rpc.quadrans.io" - }, - { - "url": "https://rpcna.quadrans.io" - }, - { - "url": "https://rpceu.quadrans.io" - } - ], - "10947": [ - { - "url": "https://rpctest.quadrans.io" - }, - { - "url": "https://rpctest2.quadrans.io" - } - ], - "11011": [ - { - "url": "https://sepolia.shape.network" - } - ], - "11110": [ - { - "url": "https://rpc.astranaut.io" - }, - { - "url": "https://rpc1.astranaut.io" - } - ], - "11111": [ - { - "url": "https://api.trywagmi.xyz/rpc" - }, - { - "url": "https://subnets.avax.network/wagmi/wagmi-chain-testnet/rpc" - } - ], - "11115": [ - { - "url": "https://rpc.astranaut.dev" - } - ], - "11119": [ - { - "url": "https://mainnet-rpc.hashbit.org" - }, - { - "url": "https://rpc.hashbit.org" - } - ], - "11124": [ - { - "url": "https://api.testnet.abs.xyz" - } - ], - "11221": [ - { - "url": "https://rpc.shinescan.io" - } - ], - "11227": [ - { - "url": "https://subnets.avax.network/jiritsutes/testnet/rpc" - } - ], - "11235": [ - { - "url": "https://haqq-evm-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://haqq-evm-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://rpc.eth.haqq.network" - }, - { - "url": "https://haqq.drpc.org" - }, - { - "url": "wss://haqq.drpc.org" - } - ], - "11501": [ - { - "url": "https://rpc-mainnet-1.bevm.io" - }, - { - "url": "https://rpc-mainnet-2.bevm.io" - } - ], - "11503": [ - { - "url": "https://testnet.bevm.io" - } - ], - "11521": [ - { - "url": "https://rpc-satschain-1.bevm.io" - } - ], - "11612": [ - { - "url": "https://testnet-rpc.sardisnetwork.com" - } - ], - "11822": [ - { - "url": "https://betanet-rpc1.artela.network" - } - ], - "11891": [ - { - "url": "https://rpc.polygonsupernet.public.arianee.net" - } - ], - "12001": [ - { - "url": "https://rpc.flash.fuse.io" - } - ], - "12009": [ - { - "url": "https://mainnet-rpc.satoshichain.io" - } - ], - "12020": [ - { - "url": "https://rpc.aternoschain.com" - } - ], - "12051": [ - { - "url": "https://betaenv.singularity.gold:18545" - } - ], - "12052": [ - { - "url": "https://zerorpc.singularity.gold" - } - ], - "12123": [ - { - "url": "https://rpc.brcchain.io" - } - ], - "12306": [ - { - "url": "https://node1.fibo-api.asia" - }, - { - "url": "https://node2.fibo-api.asia" - }, - { - "url": "https://node3.fibo-api.asia" - }, - { - "url": "https://node4.fibo-api.asia" - }, - { - "url": "https://node5.fibo-api.asia" - }, - { - "url": "https://node6.fibo-api.asia" - }, - { - "url": "https://node7.fibo-api.asia" - }, - { - "url": "https://node1.fibo-rpc.asia" - }, - { - "url": "https://node2.fibo-rpc.asia" - }, - { - "url": "https://node3.fibo-rpc.asia" - }, - { - "url": "https://node4.fibo-rpc.asia" - }, - { - "url": "https://node5.fibo-rpc.asia" - }, - { - "url": "https://node6.fibo-rpc.asia" - }, - { - "url": "https://node7.fibo-rpc.asia" - } - ], - "12321": [ - { - "url": "https://rpc.blgchain.com" - } - ], - "12324": [ - { - "url": "https://rpc-mainnet.l3x.com" - } - ], - "12325": [ - { - "url": "https://rpc-testnet.l3x.com" - } - ], - "12345": [ - { - "url": "https://rpc.testnet.step.network" - } - ], - "12553": [ - { - "url": "https://rpc.rss3.io" - } - ], - "12715": [ - { - "url": "https://testnet-rpc.rikscan.com" - } - ], - "12781": [ - { - "url": "https://subnets.avax.network/playdappte/testnet/rpc" - } - ], - "12890": [ - { - "url": "https://testnet-rpc.quantumscan.org" - } - ], - "12898": [ - { - "url": "https://rpc.letsplayfair.ai/ext/bc/2hhXFNp1jR4RuqvCmWQnBtt9CZnCmmyGr7TNTkxt7XY7pAzHMY/rpc" - } - ], - "13000": [ - { - "url": "https://rpc.ssquad.games" - } - ], - "13308": [ - { - "url": "https://rpc.creditsmartchain.com" - } - ], - "13337": [ - { - "url": "https://build.onbeam.com/rpc/testnet" - }, - { - "url": "wss://build.onbeam.com/ws/testnet" - }, - { - "url": "https://subnets.avax.network/beam/testnet/rpc" - }, - { - "url": "wss://subnets.avax.network/beam/testnet/ws" - } - ], - "13371": [ - { - "url": "https://rpc.immutable.com" - }, - { - "url": "https://immutable-zkevm.drpc.org" - }, - { - "url": "wss://immutable-zkevm.drpc.org" - } - ], - "13381": [ - { - "url": "https://rpc.phoenixplorer.com" - } - ], - "13396": [ - { - "url": "https://subnets.avax.network/masanetwork/mainnet/rpc" - } - ], - "13473": [ - { - "url": "https://rpc.testnet.immutable.com" - }, - { - "url": "https://immutable-zkevm-testnet.drpc.org" - }, - { - "url": "wss://immutable-zkevm-testnet.drpc.org" - } - ], - "13505": [ - { - "url": "https://rpc-sepolia.gravity.xyz" - } - ], - "13600": [ - { - "url": "https://mainnet-rpc.qbitscan.com" - } - ], - "13812": [ - { - "url": "https://gateway.opn.network/node/ext/bc/2VsZe5DstWw2bfgdx3YbjKcMsJnNDjni95sZorBEdk9L9Qr9Fr/rpc" - } - ], - "14000": [ - { - "url": "https://www.3sps.net" - } - ], - "14324": [ - { - "url": "https://testnet-rpc.evolveblockchain.io" - } - ], - "14333": [ - { - "url": "https://test-rpc.vitruveo.xyz" - } - ], - "14801": [ - { - "url": "http://rpc.satori.vana.org" - } - ], - "14853": [ - { - "url": "https://explorer-rpc-http.testnet5.stages.humanode.io" - } - ], - "15003": [ - { - "url": "https://rpc.dev.immutable.com" - } - ], - "15257": [ - { - "url": "https://testnet-rpc.poodl.org" - } - ], - "15259": [ - { - "url": "https://rpc.poodl.org" - } - ], - "15430": [ - { - "url": "https://mainnet-rpc.kymaticscan.online" - } - ], - "15551": [ - { - "url": "https://api.mainnetloop.com", - "tracking": "limited", - "trackingDetails": "Loop Network follows a standard procedure of using log files. These files log visitors when they visit websites. All hosting companies do this and a part of hosting services' analytics. The information collected by log files include internet protocol (IP) addresses, browser type, Internet Service Provider (ISP), date and time stamp, referring/exit pages, and possibly the number of clicks. https://www.getloop.network/privacypolicy" - } - ], - "15555": [ - { - "url": "https://api.testnet-dev.trust.one" - } - ], - "15557": [ - { - "url": "https://api.testnet.evm.eosnetwork.com", - "tracking": "yes", - "trackingDetails": "We collect information about your device and internet connection, including the device\u2019s unique device identifier, IP address, operating system, and browser type, mobile network information" - } - ], - "16000": [ - { - "url": "https://mainnet.metadot.network" - } - ], - "16001": [ - { - "url": "https://testnet.metadot.network" - } - ], - "16116": [ - { - "url": "https://rpc.defi-verse.org" - } - ], - "16166": [ - { - "url": "https://pubnodes.cypherium.io/rpc" - } - ], - "16180": [ - { - "url": "https://subnets.avax.network/plyr/mainnet/rpc" - } - ], - "16350": [ - { - "url": "https://rpc.ankr.com/incentiv_devnet" - } - ], - "16481": [ - { - "url": "https://sepolia.pivotalprotocol.com" - } - ], - "16507": [ - { - "url": "https://rpc.genesys.network" - } - ], - "16600": [ - { - "url": "https://rpc-testnet.0g.ai" - } - ], - "16688": [ - { - "url": "https://evmrpc.nyancat.irisnet.org" - } - ], - "16718": [ - { - "url": "https://network.ambrosus.io" - } - ], - "16888": [ - { - "url": "https://testnet-rpc.ivarex.com" - } - ], - "17000": [ - { - "url": "https://ethereum-holesky-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://etherem-holesky-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://1rpc.io/holesky", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://ethereum-holesky.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://holesky-rpc.nocturnode.tech", - "tracking": "none", - "trackingDetails": "As a fundamental practice, we do not collect, store, or process any personal information from our users. This non-collection policy ensures absolute data security and privacy for our users.https://nocturnode.tech/privacy" - }, - { - "url": "https://rpc.holesky.ethpandaops.io" - }, - { - "url": "wss://ethereum-holesky-rpc.publicnode.com" - }, - { - "url": "https://holesky.drpc.org" - }, - { - "url": "wss://holesky.drpc.org" - }, - { - "url": "https://rpc-holesky.rockx.com" - } - ], - "17069": [ - { - "url": "https://rpc.garnetchain.com" - }, - { - "url": "wss://rpc.garnetchain.com" - } - ], - "17071": [ - { - "url": "https://rpc.onchainpoints.xyz" - }, - { - "url": "https://rpc-onchain-points-8n0qkkpr2j.t.conduit.xyz/{CONDUIT_API_KEY}" - } - ], - "17117": [ - { - "url": "https://rpc-testnet.defi-verse.org" - } - ], - "17171": [ - { - "url": "https://mainnet-rpc.oneg8.network" - } - ], - "17172": [ - { - "url": "https://subnets.avax.network/eclipse/testnet/rpc" - } - ], - "17180": [ - { - "url": "https://palette-opennet.com:22000" - } - ], - "17217": [ - { - "url": "https://api.kon-wallet.com" - } - ], - "17777": [ - { - "url": "https://api.evm.eosnetwork.com", - "tracking": "yes", - "trackingDetails": "We collect information about your device and internet connection, including the device\u2019s unique device identifier, IP address, operating system, and browser type, mobile network information" - } - ], - "18000": [ - { - "url": "https://rpc.fod.games" - } - ], - "18122": [ - { - "url": "https://beefledgerwallet.com:8544" - } - ], - "18159": [ - { - "url": "https://mainnet-rpc.memescan.io" - }, - { - "url": "https://mainnet-rpc2.memescan.io" - }, - { - "url": "https://mainnet-rpc3.memescan.io" - }, - { - "url": "https://mainnet-rpc4.memescan.io" - } - ], - "18181": [ - { - "url": "https://testnet-rpc.oneg8.network" - } - ], - "18233": [ - { - "url": "https://rpc.unreal-orbit.gelato.digital" - }, - { - "url": "wss://ws.unreal-orbit.gelato.digital" - } - ], - "18686": [ - { - "url": "https://rpc.mxc.com" - } - ], - "18888": [ - { - "url": "https://titan-json-rpc.titanlab.io" - }, - { - "url": "https://titan-json-rpc-tokyo.titanlab.io" - }, - { - "url": "https://titan-json-rpc-seoul.titanlab.io" - }, - { - "url": "https://titan-json-rpc-hongkong.titanlab.io" - } - ], - "18889": [ - { - "url": "https://titan-testnet-json-rpc.titanlab.io" - }, - { - "url": "https://titan-testnet-json-rpc-1.titanlab.io" - }, - { - "url": "https://titan-testnet-json-rpc-2.titanlab.io" - } - ], - "19011": [ - { - "url": "https://rpc.mainnet.oasys.homeverse.games" - } - ], - "19077": [ - { - "url": "https://atlantis-web3.blockxnet.com" - } - ], - "19191": [ - { - "url": "https://web3.blockxnet.com" - } - ], - "19224": [ - { - "url": "https://rpc.decentraconnect.io" - } - ], - "19527": [ - { - "url": "https://magnet-rpc.magport.io" - } - ], - "19600": [ - { - "url": "https://lbry.nl/rpc" - } - ], - "19845": [ - { - "url": "https://seed.btcix.org/rpc" - } - ], - "20001": [ - { - "url": "https://mainnet-http-rpc.camelark.com" - } - ], - "20041": [ - { - "url": "https://nizascan.io/rpc" - } - ], - "20073": [ - { - "url": "https://testnet.nizascan.io/rpc" - } - ], - "20729": [ - { - "url": "https://testnet-rpc.callisto.network" - } - ], - "20736": [ - { - "url": "https://rpc-chain.p12.games" - } - ], - "20765": [ - { - "url": "https://subnets.avax.network/jono11/testnet/rpc" - } - ], - "21004": [ - { - "url": "https://rpc.c4ei.net" - } - ], - "21133": [ - { - "url": "https://rpc.c4ex.net" - } - ], - "21223": [ - { - "url": "https://rpc.dcpay.io" - } - ], - "21224": [ - { - "url": "https://testnet-rpc.dcpay.io" - } - ], - "21337": [ - { - "url": "https://cennznet.unfrastructure.io/public" - } - ], - "21363": [ - { - "url": "https://service.lestnet.org" - } - ], - "21816": [ - { - "url": "https://seed.omlira.com" - }, - { - "url": "https://seed.omchain.io" - } - ], - "21912": [ - { - "url": "http://rpc-mainnet.nftruth.io:8545" - }, - { - "url": "ws://rpc-mainnet.nftruth.io:8645" - } - ], - "22023": [ - { - "url": "https://taycan-rpc.hupayx.io:8545" - } - ], - "22040": [ - { - "url": "https://network.ambrosus-test.io" - } - ], - "22222": [ - { - "url": "https://api.nautilus.nautchain.xyz" - } - ], - "22324": [ - { - "url": "https://testnet-rpc.goldxchain.io" - } - ], - "22776": [ - { - "url": "https://rpc.maplabs.io" - } - ], - "23006": [ - { - "url": "https://testnet-rpc.antofy.io" - } - ], - "23118": [ - { - "url": "https://testrpc.opside.network" - } - ], - "23294": [ - { - "url": "https://1rpc.io/oasis/sapphire", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://sapphire.oasis.io" - }, - { - "url": "wss://sapphire.oasis.io/ws" - } - ], - "23295": [ - { - "url": "https://testnet.sapphire.oasis.io" - }, - { - "url": "wss://testnet.sapphire.oasis.io/ws" - } - ], - "23451": [ - { - "url": "https://rpc.dreyerx.com" - } - ], - "23452": [ - { - "url": "https://testnet-rpc.dreyerx.com" - } - ], - "23888": [ - { - "url": "http://testnet-rpc.blastblockchain.com" - } - ], - "24076": [ - { - "url": "https://testnet-rpc.kymaticscan.online" - } - ], - "24734": [ - { - "url": "https://node1.mintme.com" - } - ], - "25186": [ - { - "url": "https://mainnet.liquidlayer.network" - } - ], - "25839": [ - { - "url": "https://testnet-rpc.alvey.io" - } - ], - "25888": [ - { - "url": "https://www.hammerchain.io/rpc" - } - ], - "25925": [ - { - "url": "https://rpc-testnet.bitkubchain.io" - }, - { - "url": "wss://wss-testnet.bitkubchain.io" - } - ], - "26026": [ - { - "url": "http://testnet.dev.svcs.ferrumnetwork.io:9933" - } - ], - "26482": [ - { - "url": "https://ducx-testnet-node1.rocknblock.io" - }, - { - "url": "https://ducx-testnet-node2.rocknblock.io" - } - ], - "26483": [ - { - "url": "https://ducx-mainnet-node1.rocknblock.io" - }, - { - "url": "https://ducx-mainnet-node2.rocknblock.io" - }, - { - "url": "https://ducx-mainnet-node3.rocknblock.io" - } - ], - "26600": [ - { - "url": "https://mainnet-rpc.hertzscan.com" - } - ], - "26863": [ - { - "url": "https://rpc1.oasischain.io" - }, - { - "url": "https://rpc2.oasischain.io" - }, - { - "url": "https://rpc3.oasischain.io" - } - ], - "27181": [ - { - "url": "https://rpc.klaosnova.laosfoundation.io" - }, - { - "url": "wss://rpc.klaosnova.laosfoundation.io" - } - ], - "27483": [ - { - "url": "https://sepolia-rpc.nanon.network" - } - ], - "27827": [ - { - "url": "https://subnets.avax.network/zeroonemai/mainnet/rpc" - } - ], - "28516": [ - { - "url": "https://rpc-sepolia.vizing.com" - } - ], - "28518": [ - { - "url": "https://rpc.vizing.com" - } - ], - "28528": [ - { - "url": "https://alpha-1-replica-0.bedrock-goerli.optimism.io" - }, - { - "url": "https://alpha-1-replica-1.bedrock-goerli.optimism.io" - }, - { - "url": "https://alpha-1-replica-2.bedrock-goerli.optimism.io" - }, - { - "url": "https://alpha-1-replica-2.bedrock-goerli.optimism.io" - } - ], - "28882": [ - { - "url": "https://sepolia.boba.network" - }, - { - "url": "https://boba-sepolia.gateway.tenderly.co" - }, - { - "url": "https://gateway.tenderly.co/public/boba-sepolia" - }, - { - "url": "wss://boba-sepolia.gateway.tenderly.co" - }, - { - "url": "wss://gateway.tenderly.co/public/boba-sepolia" - } - ], - "29112": [ - { - "url": "https://testnet-rpc.hychain.com/http" - } - ], - "29223": [ - { - "url": "https://nexa.sh/metanet" - } - ], - "29536": [ - { - "url": "https://testnet-rpc.kaichain.net" - } - ], - "29548": [ - { - "url": "https://rpc.oasys.mycryptoheroes.net" - } - ], - "30067": [ - { - "url": "https://testnet-rpc0.piecenetwork.com" - } - ], - "30088": [ - { - "url": "https://blockchain.miyou.io" - }, - { - "url": "https://blockchain.miyoulab.com" - } - ], - "30103": [ - { - "url": "https://cerium-rpc.canxium.net" - } - ], - "30732": [ - { - "url": "https://mevm.testnet.imola.movementlabs.xyz" - } - ], - "31102": [ - { - "url": "rpcWorking:false" - }, - { - "url": "https://api.esn.gonspool.com" - } - ], - "31223": [ - { - "url": "https://mainnet-rpc.cloudtx.finance" - } - ], - "31224": [ - { - "url": "https://testnet-rpc.cloudtx.finance" - } - ], - "31337": [ - { - "url": "https://testnet-rpc.gochain.io" - } - ], - "31414": [ - { - "url": "https://testnet-rpc.evokescan.org" - } - ], - "31753": [ - { - "url": "https://rpc.xchainscan.com" - } - ], - "31754": [ - { - "url": "https://rpc.xchaintest.net" - } - ], - "32001": [ - { - "url": "https://rpc-holesky.w3gamez.network" - } - ], - "32382": [ - { - "url": "https://node.sanr.app" - } - ], - "32520": [ - { - "url": "https://rpc.icecreamswap.com" - }, - { - "url": "https://nodes.vefinetwork.org/bitgert" - }, - { - "url": "https://flux-rpc.brisescan.com" - }, - { - "url": "https://flux-rpc1.brisescan.com" - }, - { - "url": "https://flux-rpc2.brisescan.com" - }, - { - "url": "https://rpc-1.chainrpc.com" - }, - { - "url": "https://rpc-2.chainrpc.com" - }, - { - "url": "https://node1.serverrpc.com" - }, - { - "url": "https://node2.serverrpc.com" - }, - { - "url": "https://mainnet-rpc.brisescan.com" - }, - { - "url": "https://chainrpc.com" - }, - { - "url": "https://serverrpc.com" - } - ], - "32659": [ - { - "url": "https://mainnet.fusionnetwork.io" - }, - { - "url": "wss://mainnet.fusionnetwork.io" - } - ], - "32769": [ - { - "url": "https://api.zilliqa.com" - } - ], - "32990": [ - { - "url": "https://zilliqa-isolated-server.zilliqa.com" - } - ], - "33033": [ - { - "url": "https://json-rpc.entangle.fi" - } - ], - "33101": [ - { - "url": "https://dev-api.zilliqa.com" - } - ], - "33103": [ - { - "url": "https://api.zq2-prototestnet.zilliqa.com" - } - ], - "33111": [ - { - "url": "https://rpc.curtis.apechain.com" - } - ], - "33133": [ - { - "url": "https://evm-testnet.entangle.fi" - } - ], - "33210": [ - { - "url": "https://subnets.avax.network/cloudverse/mainnet/rpc" - } - ], - "33333": [ - { - "url": "https://rpc.avescoin.io" - } - ], - "33385": [ - { - "url": "https://api.devnet.zilliqa.com" - } - ], - "33401": [ - { - "url": "https://rpc.slingshotdao.com" - } - ], - "33469": [ - { - "url": "https://api.zq2-devnet.zilliqa.com" - } - ], - "33979": [ - { - "url": "https://rpc-mainnet.funkichain.com" - }, - { - "url": "wss://rpc-mainnet.funkichain.com" - } - ], - "34443": [ - { - "url": "https://1rpc.io/mode", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://mainnet.mode.network" - }, - { - "url": "https://mode.drpc.org" - }, - { - "url": "wss://mode.drpc.org" - } - ], - "34504": [ - { - "url": "https://mainnet-rpc.zeuschainscan.io" - } - ], - "35011": [ - { - "url": "https://rpc.j2o.io", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - } - ], - "35441": [ - { - "url": "https://rpc.q.org", - "tracking": "limited", - "trackingDetails": "Our system records data and information about the computer used by the user automatically and with every visit on our website. The following data are collected: Information regarding the type and version of internet browser used to access the website, Operating system, IP address, Date and time of each access, Web page from which the user was redirected to our page, Web pages and resources that were visited, The data mentioned above are saved for a maximum time period of 30 days.https://q.org/privacy-policy" - } - ], - "35443": [ - { - "url": "https://rpc.qtestnet.org" - } - ], - "38400": [ - { - "url": "https://cm.rangersprotocol.com/api/jsonrpc" - } - ], - "38401": [ - { - "url": "https://robin-cm.rangersprotocol.com/api/jsonrpc" - } - ], - "39656": [ - { - "url": "https://mainnet-rpc.prmscan.org" - } - ], - "39797": [ - { - "url": "https://nodeapi.energi.network" - }, - { - "url": "https://explorer.energi.network/api/eth-rpc" - } - ], - "39815": [ - { - "url": "https://mainnet.oho.ai" - }, - { - "url": "https://mainnet-rpc.ohoscan.com" - }, - { - "url": "https://mainnet-rpc2.ohoscan.com" - } - ], - "41455": [ - { - "url": "https://rpc.alephzero.raas.gelato.cloud" - }, - { - "url": "wss://ws.alephzero.raas.gelato.cloud" - } - ], - "41500": [ - { - "url": "https://connect.opulent-x.com" - } - ], - "42069": [ - { - "url": "rpcWorking:false" - } - ], - "42072": [ - { - "url": "https://testnet-rpc.agentlayer.xyz" - } - ], - "42161": [ - { - "url": "https://arbitrum.llamarpc.com", - "tracking": "none", - "trackingDetails": "LlamaNodes is open-source and does not track or store user information that transits through our RPCs (location, IP, wallet, etc). To learn more, have a look at the public Privacy Policy in our docs: https://llamanodes.notion.site/Privacy-Practices-f20fd8fdd02a469d9d4f42a5989bb936", - "isOpenSource": true - }, - { - "url": "https://arb1.arbitrum.io/rpc" - }, - { - "url": "https://rpc.ankr.com/arbitrum", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://1rpc.io/arb", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://arb-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://arb-mainnet.g.alchemy.com/v2/demo", - "tracking": "yes", - "trackingDetails": "We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy" - }, - { - "url": "https://arbitrum.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://arbitrum-one.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://endpoints.omniatech.io/v1/arbitrum/one/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://arb-mainnet-public.unifra.io", - "tracking": "limited", - "trackingDetails": "Regarding the RPC(remote procedure call) data, we do not collect request data or request origin. We temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days. Only the amounts of RPC requests of users are recorded for accounting and billing purposes within longer time. https://unifra.io/" - }, - { - "url": "https://rpc.arb1.arbitrum.gateway.fm", - "tracking": "yes", - "trackingDetails": "When you use our services or visit our websites, we may log your device\u2019s IP address for debugging and security reasons. We may retain this information for up to twelve months" - }, - { - "url": "https://arbitrum-one-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://arbitrum-one-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://arbitrum.meowrpc.com", - "tracking": "none", - "trackingDetails": "With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com" - }, - { - "url": "https://api.zan.top/node/v1/arb/one/public", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - }, - { - "url": "https://arbitrum.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://rpc.tornadoeth.cash/arbitrum", - "tracking": "none", - "trackingDetails": "TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy" - }, - { - "url": "https://arb-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}" - }, - { - "url": "https://arbitrum-one.publicnode.com" - }, - { - "url": "wss://arbitrum-one.publicnode.com" - } - ], - "42170": [ - { - "url": "https://nova.arbitrum.io/rpc" - }, - { - "url": "https://arbitrum-nova.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://arbitrum-nova.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://arbitrum-nova-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://arbitrum-nova-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://arbitrum-nova.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://arbitrum-nova.publicnode.com" - }, - { - "url": "wss://arbitrum-nova.publicnode.com" - } - ], - "42220": [ - { - "url": "https://forno.celo.org" - }, - { - "url": "https://rpc.ankr.com/celo", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://1rpc.io/celo", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://celo.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "wss://forno.celo.org/ws" - } - ], - "42261": [ - { - "url": "https://testnet.emerald.oasis.io" - }, - { - "url": "wss://testnet.emerald.oasis.io/ws" - } - ], - "42262": [ - { - "url": "https://emerald.oasis.dev" - }, - { - "url": "https://1rpc.io/oasis/emerald", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://emerald.oasis.io" - }, - { - "url": "wss://emerald.oasis.io/ws" - } - ], - "42355": [ - { - "url": "https://mainnet-rpc.goldxchain.io" - } - ], - "42421": [ - { - "url": "https://enugu-rpc.assetchain.org" - } - ], - "42766": [ - { - "url": "https://rpc.zkfair.io" - } - ], - "42793": [ - { - "url": "https://node.mainnet.etherlink.com" - } - ], - "42801": [ - { - "url": "https://rpc.testnet.verse.gesoten.com" - } - ], - "42888": [ - { - "url": "http://35.215.120.180:8545" - } - ], - "43110": [ - { - "url": "rpcWorking:false" - }, - { - "url": "https://ava.network:21015/ext/evm/rpc" - } - ], - "43113": [ - { - "url": "https://api.avax-test.network/ext/bc/C/rpc" - }, - { - "url": "https://endpoints.omniatech.io/v1/avax/fuji/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://rpc.ankr.com/avalanche_fuji", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://rpc.ankr.com/avalanche_fuji-c", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://avalanchetestapi.terminet.io/ext/bc/C/rpc" - }, - { - "url": "https://ava-testnet.public.blastapi.io/ext/bc/C/rpc", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://avalanche-fuji-c-chain-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://avalanche-fuji-c-chain-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://avalanche-fuji.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://api.zan.top/node/v1/avax/fuji/public/ext/bc/C/rpc", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - } - ], - "43114": [ - { - "url": "https://api.avax.network/ext/bc/C/rpc" - }, - { - "url": "https://avalanche.public-rpc.com" - }, - { - "url": "https://rpc.ankr.com/avalanche", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://blastapi.io/public-api/avalanche", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://ava-mainnet.public.blastapi.io/ext/bc/C/rpc", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://avalancheapi.terminet.io/ext/bc/C/rpc" - }, - { - "url": "https://avalanche-c-chain-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://avalanche-c-chain-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://1rpc.io/avax/c", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://avalanche.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://avax-pokt.nodies.app/ext/bc/C/rpc", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://avalanche.api.onfinality.io/public/ext/bc/C/rpc", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://endpoints.omniatech.io/v1/avax/mainnet/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://avax.meowrpc.com", - "tracking": "none", - "trackingDetails": "With the exclusion of data that will be openly visible and available on the blockchain, MEOWRPC does not track or store any kind of user information (such as location, IP address, etc.) that passes through our RPC. For further details regarding our privacy practices, we encourage you to refer to our Privacy Policy. https://privacy.meowrpc.com" - }, - { - "url": "https://api.zan.top/node/v1/avax/mainnet/public/ext/bc/C/rpc", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - }, - { - "url": "https://avalanche.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://rpc.tornadoeth.cash/avax", - "tracking": "none", - "trackingDetails": "TornadoRPC prioritizes user privacy and data security. We do not track or store any user information that passes through our RPC, except for data that is clearly visible on the blockchain. For detailed information about our privacy practices, see our Privacy Policy: https://rpc.tornadoeth.cash/privacy" - } - ], - "43851": [ - { - "url": "https://testnet-rpc.zkfair.io" - } - ], - "44444": [ - { - "url": "https://rpc-02.frenscan.io" - } - ], - "44445": [ - { - "url": "https://rpcqtm.avescoin.io" - } - ], - "44787": [ - { - "url": "https://alfajores-forno.celo-testnet.org" - }, - { - "url": "wss://alfajores-forno.celo-testnet.org/ws" - } - ], - "45000": [ - { - "url": "https://rpc.autobahn.network" - } - ], - "45454": [ - { - "url": "https://swamps.tc.l2aas.com" - } - ], - "45510": [ - { - "url": "https://rpc.deelance.com" - } - ], - "45513": [ - { - "url": "https://blessnet.calderachain.xyz/http" - }, - { - "url": "wss://blessnet.calderachain.xyz/ws" - } - ], - "46688": [ - { - "url": "https://testnet.fusionnetwork.io" - }, - { - "url": "wss://testnet.fusionnetwork.io" - } - ], - "47763": [ - { - "url": "https://mainnet-1.rpc.banelabs.org" - }, - { - "url": "https://mainnet-2.rpc.banelabs.org" - } - ], - "47803": [ - { - "url": "https://layer1.redefi.world" - } - ], - "47805": [ - { - "url": "https://rpc.rei.network" - }, - { - "url": "wss://rpc.rei.network" - } - ], - "48795": [ - { - "url": "https://subnets.avax.network/space/testnet/rpc" - } - ], - "48899": [ - { - "url": "http://zircuit1-testnet.p2pify.com" - } - ], - "48900": [ - { - "url": "https://zircuit1-mainnet.p2pify.com" - } - ], - "49049": [ - { - "url": "https://rpc-floripa.wireshape.org" - }, - { - "url": "https://wireshape-floripa-testnet.rpc.thirdweb.com" - } - ], - "49088": [ - { - "url": "https://public-01.testnet.bifrostnetwork.com/rpc" - }, - { - "url": "https://public-02.testnet.bifrostnetwork.com/rpc" - } - ], - "49321": [ - { - "url": "https://rpc.gunz.dev/ext/bc/ryk9vkvNuKtewME2PeCgybo9sdWXGmCkBrrx4VPuZPdVdAak8/rpc" - } - ], - "49797": [ - { - "url": "https://nodeapi.test.energi.network" - } - ], - "50001": [ - { - "url": "https://rpc.oracle.liveplex.io" - }, - { - "url": "https://rpc.oracle.liveplex.io", - "tracking": "yes", - "trackingDetails": "Usage Data is collected automatically when using the Service. Usage Data may include information such as Your Device's Internet Protocol address (e.g., IP address), browser type, browser version, the pages of our Service that You visit, the time and date of Your visit, the time spent on those pages, unique device identifiers and other diagnostic data. When You access the Service by or through a mobile device, we may collect certain information automatically, including, but not limited to, the type of mobile device You use, Your mobile device unique ID, the IP address of Your mobile device, Your mobile operating system, the type of mobile Internet browser You use, unique device identifiers and other diagnostic data. We may also collect information that Your browser sends whenever You visit our Service or when You access the Service by or through a mobile device. https://www.liveplex.io/privacypolicy.html" - } - ], - "50005": [ - { - "url": "https://rpc.yooldo-verse.xyz" - } - ], - "50006": [ - { - "url": "https://rpc.testnet.yooldo-verse.xyz" - } - ], - "50021": [ - { - "url": "https://testnet.gton.network" - } - ], - "51178": [ - { - "url": "https://alpha-us-http-geth.lumoz.org" - }, - { - "url": "https://alpha-hk-http-geth.lumoz.org" - } - ], - "51712": [ - { - "url": "https://mainnet-rpc.sardisnetwork.com" - } - ], - "52014": [ - { - "url": "https://rpc.electroneum.com" - } - ], - "53277": [ - { - "url": "https://rpc.doid.tech" - } - ], - "53302": [ - { - "url": "https://sepolia.superseed.xyz" - }, - { - "url": "wss://sepolia.superseed.xyz" - } - ], - "53457": [ - { - "url": "https://dodochain-testnet.alt.technology" - }, - { - "url": "wss://dodochain-testnet.alt.technology/ws" - } - ], - "53935": [ - { - "url": "https://avax-pokt.nodies.app/ext/bc/q2aTwKuyzgs8pynF7UXBZCU7DejbZbZ6EUyHr3JQzYgwNPUPi/rpc", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://dfkchain.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://subnets.avax.network/defi-kingdoms/dfk-chain/rpc" - } - ], - "54211": [ - { - "url": "https://rpc.eth.testedge2.haqq.network" - } - ], - "54321": [ - { - "url": "http://testnet.toronet.org/rpc" - } - ], - "55004": [ - { - "url": "https://rpc.titan.tokamak.network" - }, - { - "url": "wss://rpc.titan.tokamak.network" - } - ], - "55551": [ - { - "url": "https://rpc-test2.photonchain.io" - } - ], - "55555": [ - { - "url": "https://rei-rpc.moonrhythm.io" - } - ], - "55556": [ - { - "url": "https://rei-testnet-rpc.moonrhythm.io" - } - ], - "55614": [ - { - "url": "https://rpc.flamma.network" - } - ], - "56026": [ - { - "url": "https://nrpc.lambda.im" - } - ], - "56288": [ - { - "url": "https://bnb.boba.network" - }, - { - "url": "https://boba-bnb.gateway.tenderly.co" - }, - { - "url": "https://gateway.tenderly.co/public/boba-bnb" - }, - { - "url": "https://replica.bnb.boba.network" - }, - { - "url": "wss://boba-bnb.gateway.tenderly.co" - }, - { - "url": "wss://gateway.tenderly.co/public/boba-bnb" - } - ], - "56400": [ - { - "url": "https://subnets.avax.network/testnetzer/testnet/rpc" - } - ], - "56789": [ - { - "url": "https://nova.velo.org" - } - ], - "56797": [ - { - "url": "https://rpc.testnet.doid.tech" - } - ], - "57000": [ - { - "url": "https://rpc-tanenbaum.rollux.com" - }, - { - "url": "https://rpc.ankr.com/rollux_testnet/${ANKR_API_KEY}" - }, - { - "url": "wss://rpc-tanenbaum.rollux.com/wss" - }, - { - "url": "https://rollux.rpc.tanenbaum.io" - }, - { - "url": "wss://rollux.rpc.tanenbaum.io/wss" - } - ], - "57451": [ - { - "url": "https://mainnet-rpc.coinsec.network" - } - ], - "58008": [ - { - "url": "https://sepolia.publicgoods.network" - } - ], - "59140": [ - { - "url": "https://linea-goerli.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://rpc.goerli.linea.build" - }, - { - "url": "wss://rpc.goerli.linea.build" - } - ], - "59141": [ - { - "url": "https://rpc.sepolia.linea.build" - }, - { - "url": "wss://rpc.sepolia.linea.build" - }, - { - "url": "https://linea-sepolia.infura.io/v3/${INFURA_API_KEY}" - }, - { - "url": "wss://linea-sepolia.infura.io/ws/v3/${INFURA_API_KEY}" - } - ], - "59144": [ - { - "url": "https://linea.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://1rpc.io/linea", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://linea.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://linea.decubate.com", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata should remain private to users and other parties should not be able to access or collect it. Decubate doesn't store any data related to the user using the RPC. https://docs.decubate.com/rpc-privacy/" - }, - { - "url": "https://rpc.linea.build" - }, - { - "url": "wss://rpc.linea.build" - } - ], - "59902": [ - { - "url": "https://sepolia.metisdevops.link" - } - ], - "59971": [ - { - "url": "https://mainnet.genesyscode.io" - } - ], - "60000": [ - { - "url": "https://test.thinkiumrpc.net" - } - ], - "60001": [ - { - "url": "https://test1.thinkiumrpc.net" - } - ], - "60002": [ - { - "url": "https://test2.thinkiumrpc.net" - } - ], - "60103": [ - { - "url": "https://test103.thinkiumrpc.net" - } - ], - "60808": [ - { - "url": "https://rpc.gobob.xyz" - }, - { - "url": "wss://rpc.gobob.xyz" - }, - { - "url": "https://bob-mainnet.public.blastapi.io" - }, - { - "url": "wss://bob-mainnet.public.blastapi.io" - } - ], - "61022": [ - { - "url": "https://rpc.orangechain.xyz" - }, - { - "url": "https://hk-rpc.orangechain.xyz" - } - ], - "61406": [ - { - "url": "https://mainnet-rpc.kaichain.net" - } - ], - "61800": [ - { - "url": "https://aium-rpc-dev.viacube.com" - } - ], - "61803": [ - { - "url": "https://eticamainnet.eticascan.org" - }, - { - "url": "https://eticamainnet.eticaprotocol.org" - } - ], - "61916": [ - { - "url": "https://sgrpc.doken.dev" - }, - { - "url": "https://nyrpc.doken.dev" - }, - { - "url": "https://ukrpc.doken.dev" - } - ], - "62049": [ - { - "url": "https://rpc-testnet.optopia.ai" - } - ], - "62050": [ - { - "url": "https://rpc-mainnet.optopia.ai" - }, - { - "url": "https://rpc-mainnet-2.optopia.ai" - } - ], - "62298": [ - { - "url": "https://rpc.devnet.citrea.xyz" - } - ], - "62320": [ - { - "url": "https://baklava-forno.celo-testnet.org" - } - ], - "62621": [ - { - "url": "https://rpc.mtv.ac" - }, - { - "url": "https://rpc-eu.mtv.ac" - } - ], - "62831": [ - { - "url": "https://subnets.avax.network/plyr/testnet/rpc" - } - ], - "62850": [ - { - "url": "https://rpc.laossigma.laosfoundation.io" - }, - { - "url": "wss://rpc.laossigma.laosfoundation.io" - } - ], - "63000": [ - { - "url": "https://rpc.ecredits.com" - } - ], - "63001": [ - { - "url": "https://rpc.tst.ecredits.com" - } - ], - "65349": [ - { - "url": "https://cratd2c-testnet-node1.cratd2csmartchain.io" - }, - { - "url": "https://cratd2c-testnet-node2.cratd2csmartchain.io" - } - ], - "65357": [ - { - "url": "https://rpc.vecno.org" - } - ], - "65450": [ - { - "url": "https://mainnet-rpc.scolcoin.com" - } - ], - "66988": [ - { - "url": "https://rpc.test.janusnetwork.io" - } - ], - "67588": [ - { - "url": "http://testnet.cosmicchain.site:3344" - } - ], - "68770": [ - { - "url": "https://rpc.dm2verse.dmm.com" - } - ], - "69420": [ - { - "url": "https://rpc.condrieu.ethdevops.io:8545" - } - ], - "70000": [ - { - "url": "https://proxy.thinkiumrpc.net" - } - ], - "70001": [ - { - "url": "https://proxy1.thinkiumrpc.net" - } - ], - "70002": [ - { - "url": "https://proxy2.thinkiumrpc.net" - } - ], - "70103": [ - { - "url": "https://proxy103.thinkiumrpc.net" - } - ], - "70700": [ - { - "url": "https://rpc.apex.proofofplay.com" - } - ], - "71111": [ - { - "url": "https://rpc-mainnet.guapcoinx.com" - }, - { - "url": "https://rpc-mainnet-1.guapcoinx.com" - }, - { - "url": "https://rpc-mainnet-2.guapcoinx.com" - } - ], - "71393": [ - { - "url": "https://godwoken-testnet-web3-rpc.ckbapp.dev" - }, - { - "url": "ws://godwoken-testnet-web3-rpc.ckbapp.dev/ws" - } - ], - "71401": [ - { - "url": "https://godwoken-testnet-v1.ckbapp.dev" - }, - { - "url": "https://v1.testnet.godwoken.io/rpc" - } - ], - "71402": [ - { - "url": "https://v1.mainnet.godwoken.io/rpc" - } - ], - "72778": [ - { - "url": "https://www.ankara-cagacrypto.com" - }, - { - "url": "wss://wss.ankara-cagacrypto.com" - } - ], - "72992": [ - { - "url": "https://mainnet-rpc.grokchain.dev" - } - ], - "73114": [ - { - "url": "https://rpc1-testnet.icbnetwork.info" - }, - { - "url": "https://rpc2-testnet.icbnetwork.info" - } - ], - "73115": [ - { - "url": "https://rpc1-mainnet.icbnetwork.info" - }, - { - "url": "https://rpc2-mainnet.icbnetwork.info" - } - ], - "73799": [ - { - "url": "https://volta-rpc.energyweb.org" - }, - { - "url": "wss://volta-rpc.energyweb.org/ws" - } - ], - "73927": [ - { - "url": "https://geth.mvm.dev" - } - ], - "75512": [ - { - "url": "https://rpc.geekout-pte.com" - } - ], - "75513": [ - { - "url": "https://rpc-testnet.geekout-pte.com" - } - ], - "77001": [ - { - "url": "https://public-node.api.boraportal.com/bora/mainnet" - }, - { - "url": "https://public-node.api.boraportal.io/bora/mainnet" - } - ], - "77238": [ - { - "url": "https://testnet-rpc.foundryscan.org" - } - ], - "77612": [ - { - "url": "https://mainnet-rpc.vention.network" - } - ], - "77677": [ - { - "url": "https://sailboat-rpc-mainnet.cyclenetwork.io" - } - ], - "77777": [ - { - "url": "https://www.toronet.org/rpc2" - } - ], - "78110": [ - { - "url": "https://ethnode.primusmoney.com/firenze" - } - ], - "78281": [ - { - "url": "https://dragonfly-rpc.switch.ch" - }, - { - "url": "https://dragonfly-rpc.kore-technologies.ch" - }, - { - "url": "https://dragonfly-rpc.phoenix-systems.io" - }, - { - "url": "https://dragonfly-rpc.block-spirit.ch" - } - ], - "78430": [ - { - "url": "https://subnets.avax.network/amplify/testnet/rpc" - } - ], - "78431": [ - { - "url": "https://subnets.avax.network/bulletin/testnet/rpc" - } - ], - "78432": [ - { - "url": "https://subnets.avax.network/conduit/testnet/rpc" - } - ], - "78600": [ - { - "url": "https://rpc-vanguard.vanarchain.com" - }, - { - "url": "wss://ws-vanguard.vanarchain.com" - } - ], - "79879": [ - { - "url": "https://rpc-testnet.goldsmartchain.com" - } - ], - "80001": [ - { - "url": "https://rpc-mumbai.maticvigil.com" - }, - { - "url": "https://endpoints.omniatech.io/v1/matic/mumbai/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://rpc.ankr.com/polygon_mumbai", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://polygontestapi.terminet.io/rpc" - }, - { - "url": "https://polygon-testnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://polygon-mumbai.g.alchemy.com/v2/demo", - "tracking": "yes", - "trackingDetails": "We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy" - }, - { - "url": "https://polygon-mumbai.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://polygon-mumbai-bor-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://polygon-mumbai-bor-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://polygon-mumbai-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://polygon-mumbai.gateway.tenderly.co", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://gateway.tenderly.co/public/polygon-mumbai", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://api.zan.top/node/v1/polygon/mumbai/public", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - }, - { - "url": "https://polygon-mumbai.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "wss://polygon-mumbai.gateway.tenderly.co" - } - ], - "80002": [ - { - "url": "https://rpc-amoy.polygon.technology" - }, - { - "url": "https://polygon-amoy-bor-rpc.publicnode.com" - }, - { - "url": "wss://polygon-amoy-bor-rpc.publicnode.com" - } - ], - "80008": [ - { - "url": "https://rpc.sepolia.polynomial.fi" - } - ], - "80084": [ - { - "url": "https://bartio.rpc.berachain.com" - }, - { - "url": "https://bera-testnet.nodeinfra.com" - }, - { - "url": "https://bartio.rpc.b-harvest.io" - } - ], - "80085": [ - { - "url": "https://artio.rpc.berachain.com" - }, - { - "url": "https://rpc.ankr.com/berachain_testnet" - } - ], - "80096": [ - { - "url": "https://hizoco.net/rpc" - } - ], - "81041": [ - { - "url": "https://mainnet-rpc.nordekscan.com" - } - ], - "81457": [ - { - "url": "https://rpc.blast.io" - }, - { - "url": "https://blast.din.dev/rpc" - }, - { - "url": "https://blastl2-mainnet.public.blastapi.io" - }, - { - "url": "https://blast.blockpi.network/v1/rpc/public" - }, - { - "url": "https://blast.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://rpc.ankr.com/blast", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://blast-rpc.publicnode.com" - } - ], - "81720": [ - { - "url": "https://rpc.quantumscan.org" - } - ], - "82459": [ - { - "url": "https://rpc.test.smartlayer.network" - } - ], - "83144": [ - { - "url": "https://rpc.testnet.xprotocol.org" - } - ], - "83278": [ - { - "url": "http://65.108.151.70:8545" - } - ], - "83872": [ - { - "url": "https://mainnet-rpc.zedscan.net" - } - ], - "84531": [ - { - "url": "https://base-goerli.diamondswap.org/rpc", - "tracking": "limited", - "trackingDetails": "We record limited metadata from requests. This data is stored for a maximum of 90 days and is solely used for debugging, identifying suspicious activity, and generating analytics." - }, - { - "url": "https://base-goerli.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://1rpc.io/base-goerli", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://base-goerli.gateway.tenderly.co", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://gateway.tenderly.co/public/base-goerli", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://base-goerli-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://base-goerli-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://endpoints.omniatech.io/v1/base/goerli/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://goerli.base.org" - }, - { - "url": "wss://base-goerli.gateway.tenderly.co" - } - ], - "84532": [ - { - "url": "https://rpc.notadegen.com/base/sepolia" - }, - { - "url": "https://base-sepolia.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://sepolia.base.org" - }, - { - "url": "https://base-sepolia-rpc.publicnode.com" - }, - { - "url": "wss://base-sepolia-rpc.publicnode.com" - } - ], - "84886": [ - { - "url": "https://mainnet.aerielab.io" - } - ], - "85449": [ - { - "url": "http://testnet.cybertrust.space:48501" - } - ], - "88002": [ - { - "url": "https://api.proteus.nautchain.xyz/solana" - } - ], - "88559": [ - { - "url": "https://inoai-network.com" - } - ], - "88800": [ - { - "url": "https://rpc.zkas.zeeve.net" - } - ], - "88817": [ - { - "url": "https://rpc-testnet.unit0.dev" - } - ], - "88819": [ - { - "url": "https://rpc-stagenet.unit0.dev" - } - ], - "88882": [ - { - "url": "https://spicy-rpc.chiliz.com" - } - ], - "88888": [ - { - "url": "https://rpc.chiliz.com" - }, - { - "url": "https://rpc.ankr.com/chiliz" - }, - { - "url": "https://chiliz.publicnode.com" - } - ], - "90001": [ - { - "url": "https://testnet-fx-json-web3.functionx.io:8545" - } - ], - "90210": [ - { - "url": "https://rpc.beverlyhills.ethdevops.io:8545" - } - ], - "90354": [ - { - "url": "https://rpc-camp-network-4xje7wy105.t.conduit.xyz" - } - ], - "91002": [ - { - "url": "https://triton.api.nautchain.xyz" - } - ], - "91120": [ - { - "url": "https://rpc.chain.metadap.io" - }, - { - "url": "wss://rpc-ws.chain.metadap.io" - } - ], - "91715": [ - { - "url": "https://test-rpc.combonetwork.io" - } - ], - "92001": [ - { - "url": "https://evm.lambda.top" - } - ], - "93572": [ - { - "url": "https://testnet.liquidlayer.network" - } - ], - "93747": [ - { - "url": "https://rpc.stratovm.io" - } - ], - "96970": [ - { - "url": "https://mantis-rpc.switch.ch" - }, - { - "url": "https://mantis-rpc.kore-technologies.ch" - }, - { - "url": "https://mantis-rpc.phoenix-systems.io" - } - ], - "97435": [ - { - "url": "https://rpc-dependent-emerald-whippet-gh6kch3nen.t.conduit.xyz" - } - ], - "97531": [ - { - "url": "https://node.greenchain.app/rpc" - } - ], - "97970": [ - { - "url": "https://testnet-rpc.optimusz7.com" - } - ], - "98881": [ - { - "url": "https://rpc.ebi.xyz" - } - ], - "99099": [ - { - "url": "https://testnet-rpc.eliberty.ngo" - } - ], - "99876": [ - { - "url": "https://rpc1-testnet.emc.network" - } - ], - "99998": [ - { - "url": "https://testnet.rpc.uschain.network" - } - ], - "99999": [ - { - "url": "https://rpc.uschain.network" - } - ], - "100000": [ - { - "url": "http://jrpc.mainnet.quarkchain.io:38391" - } - ], - "100001": [ - { - "url": "http://eth-jrpc.mainnet.quarkchain.io:39000" - }, - { - "url": "https://mainnet-s0-ethapi.quarkchain.io" - } - ], - "100002": [ - { - "url": "http://eth-jrpc.mainnet.quarkchain.io:39001" - }, - { - "url": "https://mainnet-s1-ethapi.quarkchain.io" - } - ], - "100003": [ - { - "url": "http://eth-jrpc.mainnet.quarkchain.io:39002" - }, - { - "url": "https://mainnet-s2-ethapi.quarkchain.io" - } - ], - "100004": [ - { - "url": "http://eth-jrpc.mainnet.quarkchain.io:39003" - }, - { - "url": "https://mainnet-s3-ethapi.quarkchain.io" - } - ], - "100005": [ - { - "url": "http://eth-jrpc.mainnet.quarkchain.io:39004" - }, - { - "url": "https://mainnet-s4-ethapi.quarkchain.io" - } - ], - "100006": [ - { - "url": "http://eth-jrpc.mainnet.quarkchain.io:39005" - }, - { - "url": "https://mainnet-s5-ethapi.quarkchain.io" - } - ], - "100007": [ - { - "url": "http://eth-jrpc.mainnet.quarkchain.io:39006" - }, - { - "url": "https://mainnet-s6-ethapi.quarkchain.io" - } - ], - "100008": [ - { - "url": "http://eth-jrpc.mainnet.quarkchain.io:39007" - }, - { - "url": "https://mainnet-s7-ethapi.quarkchain.io" - } - ], - "100009": [ - { - "url": "https://rpc-mainnet.vechain.energy" - } - ], - "100010": [ - { - "url": "https://rpc-testnet.vechain.energy" - } - ], - "100011": [ - { - "url": "https://mainnet-l2-ethapi.quarkchain.io" - } - ], - "101010": [ - { - "url": "https://gtn.stabilityprotocol.com" - } - ], - "102031": [ - { - "url": "https://rpc.cc3-testnet.creditcoin.network" - } - ], - "103090": [ - { - "url": "https://evm.cryptocurrencydevs.org" - }, - { - "url": "https://rpc.crystaleum.org" - } - ], - "103454": [ - { - "url": "https://subnets.avax.network/masatestne/testnet/rpc" - } - ], - "104566": [ - { - "url": "https://api.kaspaclassic.world" - }, - { - "url": "http://80.178.101.118:8000" - } - ], - "105105": [ - { - "url": "https://rpc.stratisevm.com" - } - ], - "108801": [ - { - "url": "rpcWorking:false" - }, - { - "url": "https://rpc.brochain.org" - }, - { - "url": "http://rpc.brochain.org" - }, - { - "url": "https://rpc.brochain.org/mainnet" - }, - { - "url": "http://rpc.brochain.org/mainnet" - } - ], - "110000": [ - { - "url": "rpcWorking:false" - }, - { - "url": "http://jrpc.devnet.quarkchain.io:38391" - } - ], - "110001": [ - { - "url": "http://eth-jrpc.devnet.quarkchain.io:39900" - }, - { - "url": "https://devnet-s0-ethapi.quarkchain.io" - } - ], - "110002": [ - { - "url": "http://eth-jrpc.devnet.quarkchain.io:39901" - }, - { - "url": "https://devnet-s1-ethapi.quarkchain.io" - } - ], - "110003": [ - { - "url": "http://eth-jrpc.devnet.quarkchain.io:39902" - }, - { - "url": "https://devnet-s2-ethapi.quarkchain.io" - } - ], - "110004": [ - { - "url": "http://eth-jrpc.devnet.quarkchain.io:39903" - }, - { - "url": "https://devnet-s3-ethapi.quarkchain.io" - } - ], - "110005": [ - { - "url": "http://eth-jrpc.devnet.quarkchain.io:39904" - }, - { - "url": "https://devnet-s4-ethapi.quarkchain.io" - } - ], - "110006": [ - { - "url": "http://eth-jrpc.devnet.quarkchain.io:39905" - }, - { - "url": "https://devnet-s5-ethapi.quarkchain.io" - } - ], - "110007": [ - { - "url": "http://eth-jrpc.devnet.quarkchain.io:39906" - }, - { - "url": "https://devnet-s6-ethapi.quarkchain.io" - } - ], - "110008": [ - { - "url": "http://eth-jrpc.devnet.quarkchain.io:39907" - }, - { - "url": "https://devnet-s7-ethapi.quarkchain.io" - } - ], - "110011": [ - { - "url": "https://testnet-l2-ethapi.quarkchain.io" - } - ], - "110110": [ - { - "url": "https://node99-production-dd5f.up.railway.app:443" - }, - { - "url": "https://rpc.marscredit.xyz:443" - } - ], - "111000": [ - { - "url": "https://rpc.test.siberium.net" - } - ], - "111111": [ - { - "url": "https://rpc.main.siberium.net" - }, - { - "url": "https://rpc.main.siberium.net.ru" - } - ], - "111188": [ - { - "url": "https://tangible-real.gateway.tenderly.co" - }, - { - "url": "wss://tangible-real.gateway.tenderly.co" - }, - { - "url": "https://real.drpc.org" - }, - { - "url": "wss://real.drpc.org" - } - ], - "112358": [ - { - "url": "https://rpc.metachain.one" - }, - { - "url": "https://rpc2.metachain.one" - } - ], - "119139": [ - { - "url": "https://rpc.testnet.chain.metadap.io" - }, - { - "url": "wss://rpc-ws.testnet.chain.metadap.io" - } - ], - "123321": [ - { - "url": "https://evm-rpc.gemchain.org" - } - ], - "123456": [ - { - "url": "https://devnet.adilchain-rpc.io" - } - ], - "128123": [ - { - "url": "https://node.ghostnet.etherlink.com" - } - ], - "131313": [ - { - "url": "https://testnode.dioneprotocol.com/ext/bc/D/rpc" - } - ], - "131419": [ - { - "url": "https://rpc.node1.etnd.pro" - } - ], - "132902": [ - { - "url": "https://testnet-rpc.form.network/http" - }, - { - "url": "wss://testnet-rpc.form.network/ws" - } - ], - "141319": [ - { - "url": "https://testnet-api.magape.io/chain" - } - ], - "142857": [ - { - "url": "https://rpc1.icplaza.pro", - "tracking": "yes", - "trackingDetails": "Please be aware that we collect your following information for the purpose of satisfying your needs in ICPlaza services(...) 1.We will collect your mobile device information, operation records, transaction records, wallet address and other personal information. https://www.icplaza.pro/privacy-policy" - }, - { - "url": "https://rpcmainnet.ic-plaza.org" - } - ], - "165279": [ - { - "url": "https://mainnet-rpc.eclatscan.com" - } - ], - "167000": [ - { - "url": "https://rpc.mainnet.taiko.xyz" - }, - { - "url": "wss://ws.mainnet.taiko.xyz" - } - ], - "167008": [ - { - "url": "https://taiko-katla.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://rpc.katla.taiko.xyz" - }, - { - "url": "wss://ws.katla.taiko.xyz" - }, - { - "url": "https://taiko-katla.drpc.org" - }, - { - "url": "wss://taiko-katla.drpc.org" - } - ], - "167009": [ - { - "url": "https://rpc.hekla.taiko.xyz" - }, - { - "url": "wss://ws.hekla.taiko.xyz" - } - ], - "175177": [ - { - "url": "https://chain-rpc.litprotocol.com/http" - } - ], - "175188": [ - { - "url": "https://yellowstone-rpc.litprotocol.com" - } - ], - "188710": [ - { - "url": "https://mainnet-rpc.biticablockchain.com" - } - ], - "188881": [ - { - "url": "https://testnet.condor.systems/rpc" - } - ], - "192940": [ - { - "url": "https://rpc-testnet.mindnetwork.xyz" - }, - { - "url": "wss://rpc-testnet.mindnetwork.xyz" - } - ], - "199991": [ - { - "url": "https://testnet-rpc.mazze.io" - } - ], - "200000": [ - { - "url": "https://rpc_testnet.xfair.ai" - }, - { - "url": "wss://rpc_testnet.xfair.ai" - } - ], - "200101": [ - { - "url": "https://rpc-devnet-cardano-evm.c1.milkomeda.com" - }, - { - "url": "wss://rpc-devnet-cardano-evm.c1.milkomeda.com" - } - ], - "200202": [ - { - "url": "https://rpc-devnet-algorand-rollup.a1.milkomeda.com" - } - ], - "200625": [ - { - "url": "https://boot2.akroma.org" - }, - { - "url": "https://remote.akroma.io" - } - ], - "200810": [ - { - "url": "https://testnet-rpc.bitlayer.org" - }, - { - "url": "wss://testnet-ws.bitlayer.org" - }, - { - "url": "https://testnet-rpc.bitlayer-rpc.com" - }, - { - "url": "wss://testnet-ws.bitlayer-rpc.com" - }, - { - "url": "https://rpc.ankr.com/bitlayer_testnet" - } - ], - "200901": [ - { - "url": "https://rpc.bitlayer.org" - }, - { - "url": "https://rpc.bitlayer-rpc.com" - }, - { - "url": "https://rpc.ankr.com/bitlayer" - }, - { - "url": "https://rpc-bitlayer.rockx.com" - }, - { - "url": "wss://ws.bitlayer.org" - }, - { - "url": "wss://ws.bitlayer-rpc.com" - } - ], - "201018": [ - { - "url": "https://openapi.alaya.network/rpc" - }, - { - "url": "wss://openapi.alaya.network/ws" - } - ], - "201030": [ - { - "url": "https://devnetopenapi.alaya.network/rpc" - }, - { - "url": "wss://devnetopenapi.alaya.network/ws" - } - ], - "201804": [ - { - "url": "https://chain-rpc.mythicalgames.com" - } - ], - "202020": [ - { - "url": "https://testnet-val.decimalchain.com/web3" - } - ], - "202212": [ - { - "url": "https://x1-devnet.xen.network" - } - ], - "202401": [ - { - "url": "http://39.119.118.216:8545" - } - ], - "202624": [ - { - "url": "https://jellie-rpc.twala.io" - }, - { - "url": "wss://jellie-rpc-wss.twala.io" - } - ], - "204005": [ - { - "url": "https://x1-testnet.xen.network" - } - ], - "205205": [ - { - "url": "https://auroria.rpc.stratisevm.com" - } - ], - "210049": [ - { - "url": "https://rpc.gitagi.org" - } - ], - "210425": [ - { - "url": "https://openapi2.platon.network/rpc" - }, - { - "url": "wss://openapi2.platon.network/ws" - } - ], - "220315": [ - { - "url": "http://node.masnet.ai:8545" - } - ], - "221230": [ - { - "url": "https://eth.reapchain.org" - } - ], - "221231": [ - { - "url": "https://test-eth.reapchain.org" - } - ], - "222222": [ - { - "url": "https://rpc.hydradx.cloud" - }, - { - "url": "wss://rpc.hydradx.cloud" - } - ], - "222555": [ - { - "url": "https://rpc.deeplnetwork.org" - } - ], - "222666": [ - { - "url": "https://testnet.deeplnetwork.org" - } - ], - "224168": [ - { - "url": "https://mainnet.tafchain.com/v1" - } - ], - "224422": [ - { - "url": "https://rpc1.conet.network" - } - ], - "224433": [ - { - "url": "https://rpc.conet.network" - } - ], - "229772": [ - { - "url": "https://testnet.rpc.abyssprotocol.ai" - } - ], - "230315": [ - { - "url": "https://testnet.hashkeychain/rpc" - } - ], - "234666": [ - { - "url": "https://testnet1.haymo.network" - } - ], - "240515": [ - { - "url": "https://testnet-rpc.orangechain.xyz" - } - ], - "246529": [ - { - "url": "https://rpc.sigma1.artis.network" - } - ], - "246785": [ - { - "url": "https://rpc.tau1.artis.network" - } - ], - "247253": [ - { - "url": "https://rpc-testnet.saakuru.network" - } - ], - "256256": [ - { - "url": "https://mainnet.block.caduceus.foundation" - }, - { - "url": "wss://mainnet.block.caduceus.foundation" - } - ], - "262371": [ - { - "url": "https://testnet-rpc.eclatscan.com" - } - ], - "266256": [ - { - "url": "https://gzn-test.linksme.info" - } - ], - "271271": [ - { - "url": "https://rpctest.egonscan.com" - } - ], - "281121": [ - { - "url": "rpcWorking:false" - }, - { - "url": "https://socialsmartchain.digitalnext.business" - } - ], - "282828": [ - { - "url": "https://sepolia.zillnet.io/rpc" - } - ], - "292003": [ - { - "url": "https://testnet.cipherem.com" - } - ], - "309075": [ - { - "url": "https://mainnet-rpc.oneworldchain.org" - } - ], - "313313": [ - { - "url": "https://testnet.saharalabs.ai" - } - ], - "314159": [ - { - "url": "https://filecoin-calibration.chainup.net/rpc/v1", - "tracking": "limited", - "trackingDetails": "We only collect user IP addresses for the purpose of rate limiting. For more information, please visit https://docs.chainupcloud.com/introduction/products/blockchain-api." - }, - { - "url": "https://api.calibration.node.glif.io/rpc/v1" - }, - { - "url": "https://rpc.ankr.com/filecoin_testnet" - }, - { - "url": "https://filecoin-calibration.chainstacklabs.com/rpc/v1" - }, - { - "url": "https://calibration.filfox.info/rpc/v1" - }, - { - "url": "https://filecoin-calibration.drpc.org" - }, - { - "url": "wss://filecoin-calibration.drpc.org" - } - ], - "322202": [ - { - "url": "https://mainnet-rpc.parex.network" - } - ], - "323213": [ - { - "url": "https://testnet-rpc.bloomgenesis.com" - } - ], - "327126": [ - { - "url": "https://rpc.wabaworld.com" - } - ], - "328527": [ - { - "url": "https://rpc.nal.network" - }, - { - "url": "wss://wss.nal.network" - } - ], - "330844": [ - { - "url": "https://mainnet-rpc.tscscan.com" - } - ], - "333313": [ - { - "url": "https://mainnet-rpc.bloomgenesis.com" - } - ], - "333331": [ - { - "url": "https://test.rpc.avescoin.io" - } - ], - "333333": [ - { - "url": "https://rpctest.nativ3.network" - }, - { - "url": "wss://wstest.nativ3.network" - } - ], - "333666": [ - { - "url": "https://rpc.testnet.oonechain.com" - } - ], - "333777": [ - { - "url": "https://rpc.dev.oonechain.com" - } - ], - "333888": [ - { - "url": "https://sparta-rpc.polis.tech" - } - ], - "333999": [ - { - "url": "https://rpc.polis.tech" - } - ], - "336655": [ - { - "url": "https://rpc-testnet.uniport.network" - } - ], - "336666": [ - { - "url": "https://rpc.uniport.network" - } - ], - "355110": [ - { - "url": "https://mainnet.bitfinity.network" - } - ], - "355113": [ - { - "url": "https://testnet.bitfinity.network" - } - ], - "360890": [ - { - "url": "https://tsub360890-eth-rpc.thetatoken.org/rpc" - } - ], - "363636": [ - { - "url": "https://dgs-rpc.digitsoul.co.th" - } - ], - "373737": [ - { - "url": "https://jsonrpc-test.hap.land" - } - ], - "381931": [ - { - "url": "https://api.metalblockchain.org/ext/bc/C/rpc" - } - ], - "381932": [ - { - "url": "https://tahoe.metalblockchain.org/ext/bc/C/rpc" - } - ], - "404040": [ - { - "url": "https://mainnet-rpc.tipboxcoin.net" - } - ], - "413413": [ - { - "url": "https://rpc1-testnet.aiechain.io" - } - ], - "420420": [ - { - "url": "https://mainnet.kekchain.com" - }, - { - "url": "https://rpc2.kekchain.com" - }, - { - "url": "https://kek.interchained.org" - }, - { - "url": "https://kekchain.interchained.org" - } - ], - "420666": [ - { - "url": "https://testnet.kekchain.com" - } - ], - "420692": [ - { - "url": "https://l2-testnet-rpc.altscan.org" - } - ], - "421611": [ - { - "url": "https://rinkeby.arbitrum.io/rpc" - } - ], - "421613": [ - { - "url": "https://endpoints.omniatech.io/v1/arbitrum/goerli/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://arb-goerli.g.alchemy.com/v2/demo", - "tracking": "yes", - "trackingDetails": "We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy" - }, - { - "url": "https://arbitrum-goerli.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://rpc.goerli.arbitrum.gateway.fm", - "tracking": "yes", - "trackingDetails": "When you use our services or visit our websites, we may log your device\u2019s IP address for debugging and security reasons. We may retain this information for up to twelve months" - }, - { - "url": "https://arbitrum-goerli-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://arbitrum-goerli-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://api.zan.top/node/v1/arb/goerli/public", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - }, - { - "url": "https://api.stateless.solutions/arbitrum-one/v1/77abba85-53e4-4430-a332-a46deb9900ea", - "tracking": "none", - "trackingDetails": "Through any of our RPC API endpoints, whether public or private, we do not collect personal identifiers such as IP addresses, request origins, or specific request data. https://www.stateless.solutions/api-usage-privacy-policy" - }, - { - "url": "https://goerli-rollup.arbitrum.io/rpc" - }, - { - "url": "https://arbitrum-goerli.publicnode.com" - }, - { - "url": "wss://arbitrum-goerli.publicnode.com" - } - ], - "421614": [ - { - "url": "https://arbitrum-sepolia.blockpi.network/v1/rpc/public ", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://sepolia-rollup.arbitrum.io/rpc" - } - ], - "424242": [ - { - "url": "https://rpc.testnet.fastexchain.com" - } - ], - "431140": [ - { - "url": "https://rpc.markr.io/ext", - "tracking": "none", - "trackingDetails": "We only collect the minimum necessary information to provide our blockchain RPC service (caching). We do not use your data for commercial purposes. Any collected data is short-term and will be automatically deleted within 24 hours if not actively used. https://www.markr.io/privacy-policy" - } - ], - "432201": [ - { - "url": "https://subnets.avax.network/dexalot/testnet/rpc" - } - ], - "432204": [ - { - "url": "https://subnets.avax.network/dexalot/mainnet/rpc" - } - ], - "444444": [ - { - "url": "https://sepolia.syndr.com/http" - }, - { - "url": "wss://sepolia.syndr.com/ws" - } - ], - "444900": [ - { - "url": "https://weelinknode1c.gw002.oneitfarm.com" - } - ], - "471100": [ - { - "url": "https://test-rpc.patex.io" - } - ], - "473861": [ - { - "url": "https://mainnet-rpc.ultraproscan.io" - } - ], - "474142": [ - { - "url": "https://baas-rpc.luniverse.io:18545?lChainId=1641349324562974539" - } - ], - "486487": [ - { - "url": "https://rpc.gobbl.io" - } - ], - "490000": [ - { - "url": "https://nova-0.gemini-3h.subspace.network/ws" - } - ], - "504441": [ - { - "url": "https://subnets.avax.network/playdappne/mainnet/rpc" - } - ], - "512512": [ - { - "url": "https://galaxy.block.caduceus.foundation" - }, - { - "url": "wss://galaxy.block.caduceus.foundation" - } - ], - "513100": [ - { - "url": "https://rpc.dischain.xyz" - } - ], - "526916": [ - { - "url": "https://rpc.docoin.shop" - } - ], - "534351": [ - { - "url": "https://scroll-sepolia.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://scroll-testnet-public.unifra.io", - "tracking": "limited", - "trackingDetails": "Regarding the RPC(remote procedure call) data, we do not collect request data or request origin. We temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days. Only the amounts of RPC requests of users are recorded for accounting and billing purposes within longer time. https://unifra.io/" - }, - { - "url": "https://rpc.ankr.com/scroll_sepolia_testnet", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://scroll-public.scroll-testnet.quiknode.pro", - "tracking": "yes", - "trackingDetails": "Information about your computer hardware and software may be automatically collected by QuickNode. This information can include such details as your IP address, browser type, domain names, access times and referring website addresses.https://www.quicknode.com/privacy" - }, - { - "url": "https://scroll-sepolia.chainstacklabs.com", - "tracking": "yes", - "trackingDetails": "We process certain personal data to provide you with the core functionality of our Services. Specifically, when you are: Using the Chainstack Console, we process your name, surname, email address (your account identifier), organization name, IP address, all HTTP headers (most importantly User-Agent), cookies; Using the Chainstack Blockchain infrastructure, we process nodes' token stored in Chainstack Vault, IP address and HTTP headers, request body, API token in Chainstack Vault.https://chainstack.com/privacy/" - }, - { - "url": "https://scroll-sepolia.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://scroll-testnet.rpc.grove.city/v1/a7a7c8e2", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "http://scroll-sepolia-rpc.01no.de:8545" - }, - { - "url": "https://sepolia-rpc.scroll.io" - } - ], - "534352": [ - { - "url": "https://rpc.scroll.io" - }, - { - "url": "https://rpc-scroll.icecreamswap.com" - }, - { - "url": "https://scroll-mainnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://scroll-mainnet-public.unifra.io", - "tracking": "limited", - "trackingDetails": "Regarding the RPC(remote procedure call) data, we do not collect request data or request origin. We temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days. Only the amounts of RPC requests of users are recorded for accounting and billing purposes within longer time. https://unifra.io/" - }, - { - "url": "https://scroll.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://1rpc.io/scroll", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://scroll.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "https://scroll-mainnet.rpc.grove.city/v1/a7a7c8e2", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://rpc.ankr.com/scroll" - }, - { - "url": "https://scroll-mainnet.chainstacklabs.com" - } - ], - "534849": [ - { - "url": "https://rpc.shinarium.org" - } - ], - "535037": [ - { - "url": "https://mainnet-rpc.bescscan.io" - } - ], - "552981": [ - { - "url": "https://testnet-rpc.oneworldchain.org" - } - ], - "555555": [ - { - "url": "https://rpc-testnet.pentagon.games" - } - ], - "555666": [ - { - "url": "https://subnets.avax.network/eclipsecha/testnet/rpc" - } - ], - "622277": [ - { - "url": "https://rpc.hypra.network" - }, - { - "url": "https://rpc.rethereum.org" - }, - { - "url": "https://rethereum.rpc.restratagem.com" - }, - { - "url": "https://rpc.rthcentral.org" - }, - { - "url": "https://hypra.rpc.thirdweb.com" - } - ], - "622463": [ - { - "url": "https://rpc.testnet.atl.network" - } - ], - "641230": [ - { - "url": "https://brnkc-mainnet.bearnetwork.net" - }, - { - "url": "https://brnkc-mainnet1.bearnetwork.net" - } - ], - "651940": [ - { - "url": "https://mainnet-rpc.alltra.global" - } - ], - "656476": [ - { - "url": "https://rpc.open-campus-codex.gelato.digital" - } - ], - "660279": [ - { - "url": "https://xai-chain.net/rpc" - } - ], - "666666": [ - { - "url": "https://vpioneer.infragrid.v.network/ethereum/compatible" - } - ], - "666888": [ - { - "url": "https://testnet-rpc.helachain.com" - } - ], - "686868": [ - { - "url": "https://rpc.wonnetwork.org" - } - ], - "696969": [ - { - "url": "https://devnet.galadriel.com" - } - ], - "710420": [ - { - "url": "https://subnets.avax.network/tiltyard/mainnet/rpc" - } - ], - "713715": [ - { - "url": "https://evm-rpc-arctic-1.sei-apis.com" - }, - { - "url": "https://evm-rpc.arctic-1.seinetwork.io" - } - ], - "721529": [ - { - "url": "https://mainnet-rpc.eramscan.com" - } - ], - "743111": [ - { - "url": "https://testnet.rpc.hemi.network/rpc" - } - ], - "751230": [ - { - "url": "https://brnkc-test.bearnetwork.net" - } - ], - "752024": [ - { - "url": "https://rpc.zkevm.ternoa.network" - } - ], - "761412": [ - { - "url": "https://mainnet-rpc.miexs.com" - } - ], - "764984": [ - { - "url": "https://subnets.avax.network/lamina1tes/testnet/rpc" - } - ], - "767368": [ - { - "url": "https://subnets.avax.network/lamina1id/testnet/rpc" - } - ], - "776877": [ - { - "url": "https://fraa-dancebox-3035-rpc.a.dancebox.tanssi.network" - } - ], - "800001": [ - { - "url": "https://rpc.octa.space" - }, - { - "url": "wss://rpc.octa.space" - } - ], - "808080": [ - { - "url": "https://rpc-testnet.bizex.io" - } - ], - "808813": [ - { - "url": "https://bob-sepolia.rpc.gobob.xyz" - }, - { - "url": "wss://bob-sepolia.rpc.gobob.xyz" - } - ], - "810180": [ - { - "url": "https://rpc.zklink.io" - }, - { - "url": "wss://rpc.zklink.io" - } - ], - "810181": [ - { - "url": "https://sepolia.rpc.zklink.io" - }, - { - "url": "wss://sepolia.rpc.zklink.io" - } - ], - "810182": [ - { - "url": "https://goerli.rpc.zklink.io" - }, - { - "url": "wss://goerli.rpc.zklink.io" - } - ], - "820522": [ - { - "url": "https://testnet.tscscan.io/testrpc" - } - ], - "827431": [ - { - "url": "https://mainnet-rpc.curvescan.io" - } - ], - "839320": [ - { - "url": "https://testnet-rpc.prmscan.org" - } - ], - "840000": [ - { - "url": "https://rpc.runevm.io" - } - ], - "846000": [ - { - "url": "https://chain.deptofgood.com" - } - ], - "855456": [ - { - "url": "https://fraa-dancebox-3041-rpc.a.dancebox.tanssi.network" - }, - { - "url": "wss://fraa-dancebox-3041-rpc.a.dancebox.tanssi.network" - } - ], - "879151": [ - { - "url": "https://mainnet-rpc.blxscan.com" - } - ], - "888882": [ - { - "url": "https://rpc.rexxnetwork.com" - } - ], - "888888": [ - { - "url": "https://infragrid.v.network/ethereum/compatible" - } - ], - "900000": [ - { - "url": "https://api.posichain.org" - }, - { - "url": "https://api.s0.posichain.org" - } - ], - "910000": [ - { - "url": "https://api.s0.t.posichain.org" - } - ], - "912559": [ - { - "url": "https://rpc.evm.dusk-3.devnet.astria.org" - } - ], - "920000": [ - { - "url": "https://api.s0.d.posichain.org" - } - ], - "920001": [ - { - "url": "https://api.s1.d.posichain.org" - } - ], - "923018": [ - { - "url": "https://fncy-testnet-seed.fncy.world" - } - ], - "955081": [ - { - "url": "https://subnets.avax.network/jono12/testnet/rpc" - } - ], - "955305": [ - { - "url": "https://host-76-74-28-226.contentfabric.io/eth" - }, - { - "url": "https://host-76-74-28-232.contentfabric.io/eth" - }, - { - "url": "https://host-76-74-29-2.contentfabric.io/eth" - }, - { - "url": "https://host-76-74-29-8.contentfabric.io/eth" - }, - { - "url": "https://host-76-74-29-34.contentfabric.io/eth" - }, - { - "url": "https://host-76-74-29-35.contentfabric.io/eth" - }, - { - "url": "https://host-154-14-211-98.contentfabric.io/eth" - }, - { - "url": "https://host-154-14-192-66.contentfabric.io/eth" - }, - { - "url": "https://host-60-240-133-202.contentfabric.io/eth" - }, - { - "url": "https://host-64-235-250-98.contentfabric.io/eth" - } - ], - "978657": [ - { - "url": "https://rpc-testnet.treasure.lol/http" - }, - { - "url": "wss://rpc-testnet.treasure.lol/ws" - } - ], - "984122": [ - { - "url": "https://rpc.forma.art" - } - ], - "984123": [ - { - "url": "https://rpc.sketchpad-1.forma.art" - } - ], - "988207": [ - { - "url": "https://mainnet-rpc.ecroxscan.com" - } - ], - "998899": [ - { - "url": "https://testnet-rpc.supernet.chaingames.io" - } - ], - "999999": [ - { - "url": "https://node1.amchain.net" - } - ], - "1100789": [ - { - "url": "https://testblock.protago-dev.com" - } - ], - "1127469": [ - { - "url": "https://subnets.avax.network/tiltyard/testnet/rpc" - } - ], - "1234567": [ - { - "url": "https://mainnet.sharecle.com" - } - ], - "1261120": [ - { - "url": "https://rpc.zkatana.gelato.digital" - }, - { - "url": "https://rpc.startale.com/zkatana" - }, - { - "url": "https://astar-zkatana.drpc.org" - }, - { - "url": "wss://astar-zkatana.drpc.org" - } - ], - "1313114": [ - { - "url": "https://rpc.ethoprotocol.com" - } - ], - "1313500": [ - { - "url": "https://rpc.xerom.org" - } - ], - "1337702": [ - { - "url": "https://rpc.kintsugi.themerge.dev" - } - ], - "1337802": [ - { - "url": "https://rpc.kiln.themerge.dev" - } - ], - "1337803": [ - { - "url": "https://rpc.zhejiang.ethpandaops.io" - } - ], - "1398243": [ - { - "url": "https://automata-testnet.alt.technology" - } - ], - "1612127": [ - { - "url": "https://albireo-rpc.playfi.ai" - } - ], - "1637450": [ - { - "url": "https://xterio-testnet.alt.technology" - } - ], - "1731313": [ - { - "url": "https://devchain-poa.huabeizhenxuan.com" - } - ], - "2021398": [ - { - "url": "http://rpc.testnet.debank.com" - } - ], - "2099156": [ - { - "url": "https://mainnet.plian.io/pchain" - } - ], - "2206132": [ - { - "url": "https://devnet2openapi.platon.network/rpc" - }, - { - "url": "wss://devnet2openapi.platon.network/ws" - } - ], - "2611555": [ - { - "url": "https://sc-rpc.dpu.ac.th" - } - ], - "2702128": [ - { - "url": "https://xterio-eth.alt.technology" - } - ], - "3132023": [ - { - "url": "https://mainnet.saharalabs.ai" - } - ], - "3397901": [ - { - "url": "https://funki-testnet.alt.technology" - } - ], - "3441005": [ - { - "url": "https://manta-testnet.calderachain.xyz/http" - }, - { - "url": "https://manta-pacific-testnet.drpc.org" - }, - { - "url": "wss://manta-pacific-testnet.drpc.org" - } - ], - "3441006": [ - { - "url": "https://pacific-rpc.sepolia-testnet.manta.network/http" - } - ], - "4000003": [ - { - "url": "https://zero.alt.technology" - } - ], - "4281033": [ - { - "url": "https://worlds-test.calderachain.xyz/http" - } - ], - "4444444": [ - { - "url": "https://altar-rpc.ceremonies.ai" - } - ], - "4457845": [ - { - "url": "https://rpc.zerion.io/v1/zero-sepolia" - } - ], - "5112023": [ - { - "url": "https://rpc-mainnet.numblock.org" - } - ], - "5167003": [ - { - "url": "https://wannsee-rpc.mxc.com" - } - ], - "5167004": [ - { - "url": "https://geneva-rpc.moonchain.com" - } - ], - "5201420": [ - { - "url": "https://testnet-rpc.electroneum.com" - } - ], - "5318008": [ - { - "url": "https://kopli-rpc.reactive.network" - }, - { - "url": "http://kopli-rpc.rkt.ink" - } - ], - "5555555": [ - { - "url": "https://jsonrpc.imversed.network" - }, - { - "url": "https://ws-jsonrpc.imversed.network" - } - ], - "5555558": [ - { - "url": "https://jsonrpc-test.imversed.network" - }, - { - "url": "https://ws-jsonrpc-test.imversed.network" - } - ], - "6038361": [ - { - "url": "https://rpc.startale.com/zkyoto" - }, - { - "url": "https://rpc.zkyoto.gelato.digital" - } - ], - "6666665": [ - { - "url": "https://rpc.anwang.com" - } - ], - "6666666": [ - { - "url": "https://rpc-testnet.anwang.com" - } - ], - "7225878": [ - { - "url": "https://rpc.saakuru.network" - } - ], - "7355310": [ - { - "url": "https://mainnet-external.openvessel.io" - } - ], - "7668378": [ - { - "url": "https://rpc.testnet.qom.one" - } - ], - "7762959": [ - { - "url": "https://mewapi.musicoin.tw" - } - ], - "7777777": [ - { - "url": "https://rpc.zora.energy" - } - ], - "8007736": [ - { - "url": "https://mainnet.plian.io/child_0" - } - ], - "8008135": [ - { - "url": "https://api.helium.fhenix.zone" - } - ], - "8080808": [ - { - "url": "https://mainnet.hokum.gg" - } - ], - "8601152": [ - { - "url": "https://rpc.testnet8.waterfall.network" - } - ], - "8794598": [ - { - "url": "https://jsonrpc.hap.land" - } - ], - "9322252": [ - { - "url": "https://xcap-mainnet.relay.xcap.network/znzvh2ueyvm2yts5fv5gnul395jbkfb2/rpc1" - } - ], - "9322253": [ - { - "url": "https://xcap-milvine.relay.xcap.network/zj5l55ftsgi027kz4nf14vs8d89inego/rpc1" - } - ], - "9999999": [ - { - "url": "https://rpc.mainnet.fluence.dev" - }, - { - "url": "wss://ws.mainnet.fluence.dev" - } - ], - "10067275": [ - { - "url": "https://testnet.plian.io/child_test" - } - ], - "10101010": [ - { - "url": "https://mainnet-rpc.soverun.com" - } - ], - "10241024": [ - { - "url": "https://rpc.alienxchain.io/http" - } - ], - "10241025": [ - { - "url": "https://hal-rpc.alienxchain.io/http" - }, - { - "url": "https://hal.rpc.caldera.xyz/http" - } - ], - "11145513": [ - { - "url": "https://blessnet-sepolia-testnet.rpc.caldera.xyz/http" - }, - { - "url": "wss://blessnet-sepolia-testnet.rpc.caldera.xyz/ws" - } - ], - "11155111": [ - { - "url": "https://eth-sepolia.g.alchemy.com/v2/demo", - "tracking": "yes", - "trackingDetails": "We may collect certain information automatically when you use our Services, such as your Internet protocol (IP) address, user settings, MAC address, cookie identifiers, mobile carrier, mobile advertising and other unique identifiers, browser or device information, location information (including approximate location derived from IP address), and Internet service provider. https://www.alchemy.com/policies/privacy-policy" - }, - { - "url": "https://endpoints.omniatech.io/v1/eth/sepolia/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://ethereum-sepolia.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://eth-sepolia.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - }, - { - "url": "https://eth-sepolia-public.unifra.io", - "tracking": "limited", - "trackingDetails": "Regarding the RPC(remote procedure call) data, we do not collect request data or request origin. We temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days. Only the amounts of RPC requests of users are recorded for accounting and billing purposes within longer time. https://unifra.io/" - }, - { - "url": "https://sepolia.gateway.tenderly.co", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://gateway.tenderly.co/public/sepolia", - "tracking": "yes", - "trackingDetails": "Additionally, if you are an Account Member, we may collect business and transactional data about you (and your business) that accumulates over the normal course of operation regarding providing our Services. This may include transaction records, stored files, user profiles, information about collaborators, analytics data, and other metrics, as well as other types of information created or generated by your interaction with our Services. https://tenderly.co/privacy-policy" - }, - { - "url": "https://sphinx.shardeum.org", - "tracking": "yes", - "trackingDetails": "Shardeum follows a standard procedure of using log files. These files log visitors when they visit websites... The information collected by log files includes IP addresses, browser type, ISP, date and time stamp, referring/exit pages, and potentially the number of clicks.https://shardeum.org/privacy-policy/" - }, - { - "url": "https://dapps.shardeum.org", - "tracking": "yes", - "trackingDetails": "Shardeum follows a standard procedure of using log files. These files log visitors when they visit websites... The information collected by log files includes IP addresses, browser type, ISP, date and time stamp, referring/exit pages, and potentially the number of clicks.https://shardeum.org/privacy-policy/" - }, - { - "url": "https://api.zan.top/node/v1/eth/sepolia/public", - "tracking": "limited", - "trackingDetails": "ZAN Node Service generally does not store any kind of user information (e.g. IP address, location, requst location, request data, etc.) that transits through our RPCs except for one senario \u2014\u2014we may track your IP address when you are using our RPCs and will delete it immediately when you stoping using our RPCs. To learn more, please review our privacy policy at https://a.zan.top/static/Privacy-Policy.pdf" - }, - { - "url": "https://rpc.notadegen.com/eth/sepolia" - }, - { - "url": "https://ethereum-sepolia-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "wss://ethereum-sepolia-rpc.publicnode.com", - "tracking": "none", - "trackingDetails": "We do not store or track any user data with the exception of data that will be public on chain. We do not correlate wallets address's with IP's, any data which is needed to transact is deleted after 24 hours. We also do no use any Analytics or 3rd party website tracking. https://www.publicnode.com/privacy" - }, - { - "url": "https://1rpc.io/sepolia", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://eth-sepolia.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://rpc.sepolia.org" - }, - { - "url": "https://rpc2.sepolia.org" - }, - { - "url": "https://rpc-sepolia.rockx.com" - }, - { - "url": "https://rpc.sepolia.ethpandaops.io" - }, - { - "url": "wss://sepolia.gateway.tenderly.co" - }, - { - "url": "https://sepolia.drpc.org" - }, - { - "url": "wss://sepolia.drpc.org" - } - ], - "11155420": [ - { - "url": "https://optimism-sepolia.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://sepolia.optimism.io" - }, - { - "url": "https://optimism-sepolia.drpc.org" - }, - { - "url": "wss://optimism-sepolia.drpc.org" - } - ], - "12052024": [ - { - "url": "https://test-rpc.mementoblockchain.com/IRkghvI3FfEArEJMr4zC/rpc" - } - ], - "12227332": [ - { - "url": "https://testnet.rpc.banelabs.org" - } - ], - "13068200": [ - { - "url": "https://devnet.coti.io/rpc" - } - ], - "13371337": [ - { - "url": "https://churchill-rpc.pepchain.io" - } - ], - "14288640": [ - { - "url": "https://rpc.anduschain.io/rpc" - }, - { - "url": "wss://rpc.anduschain.io/ws" - } - ], - "16658437": [ - { - "url": "https://testnet.plian.io/testnet" - } - ], - "17000920": [ - { - "url": "https://testnrpc.lambda.im" - } - ], - "18071918": [ - { - "url": "https://mande-mainnet.public.blastapi.io" - } - ], - "18289463": [ - { - "url": "https://net.iolite.io" - } - ], - "19850818": [ - { - "url": "https://rpc-testnet.dbcwallet.io" - } - ], - "19880818": [ - { - "url": "https://rpc.dbcwallet.io" - } - ], - "20180427": [ - { - "url": "https://free.testnet.stabilityprotocol.com" - } - ], - "20180430": [ - { - "url": "https://jsonapi1.smartmesh.cn" - } - ], - "20181205": [ - { - "url": "https://hz.rpc.qkiscan.cn" - }, - { - "url": "https://rpc1.qkiscan.cn" - }, - { - "url": "https://rpc2.qkiscan.cn" - }, - { - "url": "https://rpc3.qkiscan.cn" - }, - { - "url": "https://rpc1.qkiscan.io" - }, - { - "url": "https://rpc2.qkiscan.io" - }, - { - "url": "https://rpc3.qkiscan.io" - }, - { - "url": "https://jp.rpc.qkiscan.io" - } - ], - "20201022": [ - { - "url": "https://pegorpc.com" - }, - { - "url": "https://node1.pegorpc.com" - }, - { - "url": "https://node2.pegorpc.com" - }, - { - "url": "https://node3.pegorpc.com" - } - ], - "20230825": [ - { - "url": "https://testnet.vcity.app" - } - ], - "20240324": [ - { - "url": "https://sepolia-rpc.testnet.debank.com" - } - ], - "20240603": [ - { - "url": "https://rpc.mainnet.dbkchain.io" - } - ], - "20241133": [ - { - "url": "https://rpc-proxima.swanchain.io" - } - ], - "20482050": [ - { - "url": "https://testnet.hokum.gg" - } - ], - "22052002": [ - { - "url": "https://edgewallet1.xlon.org" - } - ], - "27082017": [ - { - "url": "https://testnet-rpc.exlscan.com" - } - ], - "27082022": [ - { - "url": "https://rpc.exlscan.com" - } - ], - "28122024": [ - { - "url": "https://rpcv2-testnet.ancient8.gg" - } - ], - "28945486": [ - { - "url": "https://rpc.auxilium.global" - } - ], - "29032022": [ - { - "url": "https://flachain.flaexchange.top" - } - ], - "35855456": [ - { - "url": "https://node.joys.digital" - } - ], - "37084624": [ - { - "url": "https://testnet.skalenodes.com/v1/lanky-ill-funny-testnet" - }, - { - "url": "wss://testnet.skalenodes.com/v1/ws/lanky-ill-funny-testnet" - } - ], - "39916801": [ - { - "url": "https://kingdomchain.observer/rpc" - } - ], - "43214913": [ - { - "url": "http://174.138.9.169:9650/ext/bc/VUKSzFZKckx4PoZF9gX5QAqLPxbLzvu1vcssPG5QuodaJtdHT/rpc" - } - ], - "52164803": [ - { - "url": "https://rpc.testnet.fluence.dev" - }, - { - "url": "wss://ws.testnet.fluence.dev" - } - ], - "61717561": [ - { - "url": "https://c.onical.org" - }, - { - "url": "https://tx.aquacha.in/api" - } - ], - "65010003": [ - { - "url": "https://rpc1.bakerloo.autonity.org" - }, - { - "url": "wss://rpc1.bakerloo.autonity.org/ws" - } - ], - "65100003": [ - { - "url": "https://rpc1.piccadilly.autonity.org" - }, - { - "url": "wss://rpc1.piccadilly.autonity.org/ws" - } - ], - "68840142": [ - { - "url": "https://rpc.testnet.frame.xyz/http" - } - ], - "77787778": [ - { - "url": "https://rpc-test.0xhash.io" - } - ], - "79479957": [ - { - "url": "https://rpc.sx-rollup-testnet.t.raas.gelato.cloud" - } - ], - "88558801": [ - { - "url": "https://testnet.rpc.backstop.technology" - } - ], - "88888888": [ - { - "url": "https://rpc.teamblockchain.team", - "tracking": "none", - "trackingDetails": "We only store and track data that will be publicly available on the blockchain, and do not collect or retain any other user data. https://policy.teamblockchain.team/" - } - ], - "94204209": [ - { - "url": "https://rpc.polygon-blackberry.gelato.digital" - }, - { - "url": "wss://ws.polygon-blackberry.gelato.digital" - } - ], - "99415706": [ - { - "url": "https://toys.joys.cash" - } - ], - "100000000": [ - { - "url": "https://rpc.ethos.cool" - } - ], - "108160679": [ - { - "url": "https://evm.orai.io" - } - ], - "111557560": [ - { - "url": "https://cyber-testnet.alt.technology" - }, - { - "url": "wss://cyber-testnet.alt.technology/ws" - }, - { - "url": "https://rpc.testnet.cyber.co" - }, - { - "url": "wss://rpc.testnet.cyber.co" - } - ], - "123420111": [ - { - "url": "https://rpc.opcelestia-raspberry.gelato.digital" - }, - { - "url": "wss://ws.opcelestia-raspberry.gelato.digital" - } - ], - "161221135": [ - { - "url": "https://testnet-rpc.plumenetwork.xyz/http" - }, - { - "url": "wss://testnet-rpc.plumenetwork.xyz/ws" - } - ], - "168587773": [ - { - "url": "https://blast-sepolia.blockpi.network/v1/rpc/public", - "tracking": "limited", - "trackingDetails": "We do not collect request data or request origin. We only temporarily record the request method names and IP addresses for 7 days to ensure our service functionality such as load balancing and DDoS protection. All the data is automatically deleted after 7 days and we do not store any user information for longer periods of time. https://blockpi.io/privacy-policy" - }, - { - "url": "https://sepolia.blast.io" - }, - { - "url": "https://blast-sepolia.drpc.org" - }, - { - "url": "wss://blast-sepolia.drpc.org" - } - ], - "192837465": [ - { - "url": "https://mainnet.gather.network" - } - ], - "222000222": [ - { - "url": "https://testnet-rpc.meld.com" - } - ], - "245022926": [ - { - "url": "https://devnet.neonevm.org" - }, - { - "url": "https://neon-evm-devnet.drpc.org" - }, - { - "url": "wss://neon-evm-devnet.drpc.org" - } - ], - "245022929": [ - { - "url": "https://devnet.rollup.neonevm.org" - } - ], - "245022934": [ - { - "url": "https://neon-proxy-mainnet.solana.p2p.org" - }, - { - "url": "https://neon-mainnet.everstake.one" - }, - { - "url": "https://neon-evm.drpc.org" - }, - { - "url": "wss://neon-evm.drpc.org" - } - ], - "278611351": [ - { - "url": "https://mainnet.skalenodes.com/v1/turbulent-unique-scheat" - } - ], - "311752642": [ - { - "url": "https://mainnet-rpc.oneledger.network" - } - ], - "328527624": [ - { - "url": "https://testnet-rpc.nal.network" - } - ], - "333000333": [ - { - "url": "https://rpc-1.meld.com" - } - ], - "356256156": [ - { - "url": "https://testnet.gather.network" - } - ], - "476462898": [ - { - "url": "https://skopje-rpc.gptprotocol.io" - } - ], - "486217935": [ - { - "url": "https://devnet.gather.network" - } - ], - "531050104": [ - { - "url": "https://rpc.testnet.sophon.xyz" - } - ], - "666666666": [ - { - "url": "https://rpc.degen.tips" - } - ], - "888888888": [ - { - "url": "https://rpc.ancient8.gg" - } - ], - "889910245": [ - { - "url": "https://rpc-testnet.ptcscan.io" - } - ], - "889910246": [ - { - "url": "https://rpc.ptcscan.io" - } - ], - "974399131": [ - { - "url": "https://testnet.skalenodes.com/v1/giant-half-dual-testnet" - } - ], - "999999999": [ - { - "url": "https://sepolia.rpc.zora.energy" - } - ], - "1020352220": [ - { - "url": "https://testnet.skalenodes.com/v1/aware-fake-trim-testnet" - }, - { - "url": "wss://testnet.skalenodes.com/v1/ws/aware-fake-trim-testnet" - } - ], - "1122334455": [ - { - "url": "https://rpc.iposlab.com" - }, - { - "url": "https://rpc2.iposlab.com" - } - ], - "1146703430": [ - { - "url": "http://cybeth1.cyberdeck.eu:8545" - } - ], - "1273227453": [ - { - "url": "https://mainnet.skalenodes.com/v1/wan-red-ain" - } - ], - "1313161554": [ - { - "url": "https://mainnet.aurora.dev" - }, - { - "url": "https://endpoints.omniatech.io/v1/aurora/mainnet/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://1rpc.io/aurora", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://aurora.drpc.org", - "tracking": "none", - "trackingDetails": "Specific types of technical data that we may temporarily log include:IP address (only in logs for redirecting requests to the nearest RPC nodes and rate limiting at the free level, which are cleared weekly). The user ID is hidden in the temporary logs, so it is not possible to link them to a specific user.https://drpc.org/privacy-policy" - }, - { - "url": "wss://aurora.drpc.org" - } - ], - "1313161555": [ - { - "url": "https://endpoints.omniatech.io/v1/aurora/testnet/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://testnet.aurora.dev" - }, - { - "url": "https://aurora-testnet.drpc.org" - }, - { - "url": "wss://aurora-testnet.drpc.org" - } - ], - "1313161560": [ - { - "url": "https://powergold.aurora.dev" - } - ], - "1350216234": [ - { - "url": "https://mainnet.skalenodes.com/v1/parallel-stormy-spica" - }, - { - "url": "wss://mainnet.skalenodes.com/v1/ws/parallel-stormy-spica" - } - ], - "1351057110": [ - { - "url": "https://staging-v3.skalenodes.com/v1/staging-fast-active-bellatrix" - } - ], - "1380012617": [ - { - "url": "https://rari.calderachain.xyz/http" - } - ], - "1380996178": [ - { - "url": "https://rpc.raptorchain.io/web3" - } - ], - "1444673419": [ - { - "url": "https://testnet.skalenodes.com/v1/juicy-low-small-testnet" - } - ], - "1482601649": [ - { - "url": "https://mainnet.skalenodes.com/v1/green-giddy-denebola" - }, - { - "url": "wss://mainnet-proxy.skalenodes.com/v1/ws/green-giddy-denebola" - } - ], - "1511670449": [ - { - "url": "https://rpc.gptprotocol.io" - } - ], - "1564830818": [ - { - "url": "https://mainnet.skalenodes.com/v1/honorable-steel-rasalhague" - } - ], - "1666600000": [ - { - "url": "https://api.harmony.one" - }, - { - "url": "https://a.api.s0.t.hmny.io" - }, - { - "url": "https://api.s0.t.hmny.io" - }, - { - "url": "https://rpc.ankr.com/harmony", - "tracking": "limited", - "trackingDetails": "For service delivery purposes, we temporarily record IP addresses to set usage limits and monitor for denial of service attacks against our infrastructure. Though we do look at high-level data around the success rate of transactions made over the blockchain RPC, we do not correlate wallet transactions made over the infrastructure to the IP address making the RPC request. Thus, we do not store, exploit, or share any information regarding Personal Identifiable Information (PII), including wallet addresses. https://www.ankr.com/blog/ankrs-ip-address-policy-and-your-privacy/" - }, - { - "url": "https://harmony.api.onfinality.io/public", - "tracking": "limited", - "trackingDetails": "For the sole purpose of providing our service, we temporarily record IP addresses and origins to check against free limits, provide load balancing, prevent DOS attacks, and to determine where best to locate our nodes. We do not, and will never, correlate or link specific wallet addresses or transactions made over our infrastructure to the IP address or origin making the RPC request. After processing IP addresses, we discard the IP address value within 24 hours. Read more here: https://blog.onfinality.io/how-does-onfinality-deal-with-personal-information/" - }, - { - "url": "https://1rpc.io/one", - "tracking": "none", - "trackingDetails": "With the exception of data that will be public on chain, all the other metadata / data should remain private to users and other parties should not be able to access or collect it. 1RPC uses many different techniques to prevent the unnecessary collection of user privacy, which prevents tracking from RPC providers. https://docs.1rpc.io/technology/zero-tracking" - }, - { - "url": "https://hmyone-pokt.nodies.app", - "tracking": "none", - "trackingDetails": "What We Do Not Collect: User's IP address, request origin, request data. https://www.blog.pokt.network/rpc-logging-practices/" - }, - { - "url": "https://endpoints.omniatech.io/v1/harmony/mainnet-0/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://harmony-0.drpc.org" - }, - { - "url": "wss://harmony-0.drpc.org" - } - ], - "1666600001": [ - { - "url": "https://s1.api.harmony.one" - }, - { - "url": "https://api.s1.t.hmny.io" - }, - { - "url": "https://harmony-1.drpc.org" - }, - { - "url": "wss://harmony-1.drpc.org" - } - ], - "1666700000": [ - { - "url": "https://endpoints.omniatech.io/v1/harmony/testnet-0/public", - "tracking": "none", - "trackingDetails": "All the data and metadata remain private to the users. No third party is able to access, analyze or track it. OMNIA leverages different technologies and approaches to guarantee the privacy of their users, from front-running protection and private mempools, to obfuscation and random dispatching. https://blog.omniatech.io/how-omnia-handles-your-personal-data" - }, - { - "url": "https://api.s0.b.hmny.io" - } - ], - "1666700001": [ - { - "url": "https://api.s1.b.hmny.io" - } - ], - "1666900000": [ - { - "url": "https://api.s0.ps.hmny.io" - } - ], - "1666900001": [ - { - "url": "https://api.s1.ps.hmny.io" - } - ], - "1802203764": [ - { - "url": "https://sepolia-rpc.kakarot.org" - } - ], - "1903648807": [ - { - "url": "https://gemutest-rpc.gemuchain.io" - } - ], - "1918988905": [ - { - "url": "https://testnet.rpc.rarichain.org/http" - } - ], - "2021121117": [ - { - "url": "https://23.92.21.121:8545" - } - ], - "2046399126": [ - { - "url": "https://mainnet.skalenodes.com/v1/elated-tan-skat" - }, - { - "url": "wss://mainnet.skalenodes.com/v1/elated-tan-skat" - } - ], - "3125659152": [ - { - "url": "https://wallrpc.pirl.io" - } - ], - "4216137055": [ - { - "url": "https://frankenstein-rpc.oneledger.network" - } - ], - "11297108109": [ - { - "url": "https://palm-mainnet.infura.io/v3/3a961d6501e54add9a41aa53f15de99b", - "tracking": "limited", - "trackingDetails": "We collect wallet and IP address information. The purpose of this collection is to ensure successful transaction propagation, execution, and other important service functionality such as load balancing and DDoS protection. IP addresses and wallet address data relating to a transaction are not stored together or in a way that allows our systems to associate those two pieces of data. We retain and delete user data such as IP address and wallet address pursuant to our data retention policy. https://consensys.net/blog/news/consensys-data-retention-update/" - }, - { - "url": "https://palm-mainnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - } - ], - "11297108099": [ - { - "url": "https://palm-testnet.public.blastapi.io", - "tracking": "limited", - "trackingDetails": "All the information in our logs (log data) can only be accessed for the last 7 days at any certain time, and it is completely purged after 14 days. We do not store any user information for longer periods of time or with any other purposes than investigating potential errors and service failures. https://blastapi.io/privacy-policy" - } - ], - "28872323069": [ - { - "url": "https://testnet.gitswarm.com:2096" - } - ], - "37714555429": [ - { - "url": "https://testnet-v2.xai-chain.net/rpc" - } - ], - "88153591557": [ - { - "url": "https://rpc.arb-blueberry.gelato.digital" - }, - { - "url": "wss://ws.arb-blueberry.gelato.digital" - } - ], - "111222333444": [ - { - "url": "https://londonpublic.alphabetnetwork.org" - }, - { - "url": "wss://londonpublic.alphabetnetwork.org/ws" - }, - { - "url": "https://main-rpc.com" - }, - { - "url": "wss://main-rpc.com/ws" - } - ], - "123420000220": [ - { - "url": "https://rpc-123420000220.raas-testnet.gelato.digital" - }, - { - "url": "wss://ws-123420000220.raas-testnet.gelato.digital" - } - ], - "197710212030": [ - { - "url": "https://rpc.ntity.io" - } - ], - "197710212031": [ - { - "url": "https://blockchain.haradev.com" - } - ], - "202402181627": [ - { - "url": "https://gmnetwork-testnet.alt.technology" - } - ], - "383414847825": [ - { - "url": "https://smart.zeniq.network:9545" - } - ], - "666301171999": [ - { - "url": "https://mainnet.ipdc.io" - } - ], - "6022140761023": [ - { - "url": "https://molereum.jdubedition.com" - } - ], - "2713017997578000": [ - { - "url": "https://dchaintestnet-2713017997578000-1.jsonrpc.testnet.sagarpc.io" - } - ], - "2716446429837000": [ - { - "url": "https://dchain-2716446429837000-1.jsonrpc.sagarpc.io" - } - ] -}; - -// types/constants.ts -var permit2Address = "0x000000000022D473030F116dDEE9F6B43aC78BA3"; -var nftAddress = "0xAa1bfC0e51969415d64d6dE74f27CDa0587e645b"; -var LOCAL_HOST = "http://127.0.0.1:8545"; -var LOCAL_HOST_2 = "http://127.0.0.1:8546"; -var networkIds = { - ...{ ...CHAINS_IDS }, - // removing readonly - 31337: "anvil", - 1337: "hardhat" -}; -var networkNames = Object.fromEntries( - Object.entries(networkIds).map(([key, value]) => { - return [value, key]; - }) -); -Reflect.deleteProperty(networkNames, "geth-testnet"); -Reflect.deleteProperty(networkNames, "gochain-testnet"); -var networkRpcs = Object.fromEntries( - Object.entries(networkNames).map(([, value]) => { - const chainRpcs = EXTRA_RPCS[value]; - return [value, { rpcs: chainRpcs }]; - }) -); -var networkExplorers = Object.fromEntries( - Object.entries(networkNames).map(([, value]) => { - const chainExplorers = NETWORK_EXPLORERS[value]; - return [value, chainExplorers]; - }) -); -var networkCurrencies = Object.fromEntries( - Object.entries(NETWORK_CURRENCIES).map(([chainId, currency]) => { - return [chainId, currency]; - }) -); -function getNetworkName(networkId) { - const networkName = networkIds[networkId]; - if (!networkName) { - console.error(`Unknown network ID: ${networkId}`); - } - return networkName ?? "Unknown Network"; -} -function getNetworkId(networkName) { - const networkId = networkNames[networkName]; - if (!networkId) { - console.error(`Unknown network name: ${networkName}`); - } - return networkId ?? -1; -} -function getNetworkFaucets(networkId) { - const faucets = NETWORK_FAUCETS[networkId]; - if (!faucets) { - console.error(`There may not be any faucets for network ID: ${networkId}`); - } - return faucets ?? []; -} -function getNetworkExplorer(networkId) { - const explorers = networkExplorers[networkId]; - if (!explorers) { - console.error(`There may not be any explorers for network ID: ${networkId}`); - } - return explorers ?? []; -} -function getNetworkRpcs(networkId) { - const rpcs = networkRpcs[networkId]; - if (!rpcs) { - console.error(`There may not be any RPCs for network ID: ${networkId}`); - } - return rpcs ?? []; -} -function getNetworkCurrency(networkId) { - const currency = networkCurrencies[networkId]; - if (!currency) { - console.error(`There may not be a currency for network ID: ${networkId}`); - } - return currency ?? { name: "Unknown Token", symbol: "UNK", decimals: 18 }; -} -function getNetworkData(networkId) { - return { - name: getNetworkName(networkId), - id: networkId, - rpcs: getNetworkRpcs(networkId), - currency: getNetworkCurrency(networkId), - explorers: getNetworkExplorer(networkId), - faucets: getNetworkFaucets(networkId) - }; -} - -// types/rpc-handler.ts -var import_providers = __toESM(require_lib22()); - -// types/handler.ts -function getRpcUrls(rpcs) { - const urls = []; - rpcs.forEach((rpc) => { - if (typeof rpc == "string") { - urls.push(rpc); - } else { - urls.push(rpc.url); - } - }); - return urls; -} - -// types/logs.ts -var PrettyLogs = class { - constructor() { - this.ok = this.ok.bind(this); - this.info = this.info.bind(this); - this.error = this.error.bind(this); - this.fatal = this.fatal.bind(this); - this.debug = this.debug.bind(this); - this.verbose = this.verbose.bind(this); - } - log(type, message, metadata) { - this._logWithStack(type, message, metadata); - } - fatal(message, metadata) { - this._logWithStack(LOG_LEVEL.FATAL, message, metadata); - } - error(message, metadata) { - this._logWithStack(LOG_LEVEL.ERROR, message, metadata); - } - ok(message, metadata) { - this._logWithStack("ok", message, metadata); - } - info(message, metadata) { - this._logWithStack(LOG_LEVEL.INFO, message, metadata); - } - debug(message, metadata) { - this._logWithStack(LOG_LEVEL.DEBUG, message, metadata); - } - verbose(message, metadata) { - this._logWithStack(LOG_LEVEL.VERBOSE, message, metadata); - } - getStackTrace() { - try { - throw new Error(); - } catch (e) { - return e.stack?.split("\n"); - } - } - _logWithStack(type, message, metaData) { - if (!metaData) { - this._log(type, message); - return; - } else if (typeof metaData === "string") { - this._log(type, `${message} - ${metaData}`); - return; - } else if (typeof metaData === "object" && !(metaData.error || metaData?.stack)) { - this._log(type, `${message} ${!this._isEmpty(metaData) ? JSON.stringify(metaData, null, 2) : ""}`); - return; - } - const metadata = metaData; - let stack = metadata?.error?.stack || metadata?.stack; - const stackTrace = this.getStackTrace(); - if (stackTrace) { - stackTrace.splice(0, 4); - stack = stackTrace.filter((line) => line.includes(".ts:")).join("\n"); - } - const newMetadata = { ...metadata }; - delete newMetadata.message; - delete newMetadata.name; - delete newMetadata.stack; - if (!this._isEmpty(newMetadata)) { - this._log(type, newMetadata); - } - if (stack && typeof stack == "string") { - const prettyStack = this._formatStackTrace(stack, 1); - const colorizedStack = this._colorizeText(prettyStack, COLORS.dim); - this._log(type, colorizedStack); - } else if (stack && Array.isArray(stack)) { - const prettyStack = this._formatStackTrace(stack.join("\n"), 1); - const colorizedStack = this._colorizeText(prettyStack, COLORS.dim); - this._log(type, colorizedStack); - } - } - _colorizeText(text, color) { - if (!color) { - throw new Error(`Invalid color: ${color}`); - } - return color.concat(text).concat(COLORS.reset); - } - _formatStackTrace(stack, linesToRemove = 0, prefix = "") { - const lines = stack.split("\n"); - for (let i = 0; i < linesToRemove; i++) { - lines.shift(); - } - return lines.map((line) => `${prefix}${line.replace(/\s*at\s*/, " \u21B3 ")}`).join("\n"); - } - _isEmpty(obj) { - return !Reflect.ownKeys(obj).some((key) => typeof obj[String(key)] !== "function"); - } - _log(type, message) { - const defaultSymbols = { - fatal: "\xD7", - ok: "\u2713", - error: "\u26A0", - info: "\u203A", - debug: "\u203A\u203A", - verbose: "\u{1F4AC}", - none: "" - }; - const symbol = defaultSymbols[type]; - const messageFormatted = typeof message === "string" ? message : JSON.stringify(message, null, 2); - if (!messageFormatted || messageFormatted === "{}" || messageFormatted.trim() === "") { - return; - } - const lines = messageFormatted.split("\n"); - const logString = lines.map((line, index) => { - const prefix = index === 0 ? ` ${symbol}` : ` ${" ".repeat(symbol.length)}`; - return `${prefix} ${line}`; - }).join("\n"); - const fullLogString = logString; - const colorMap = { - fatal: ["error", COLORS.fgRed], - ok: ["log", COLORS.fgGreen], - error: ["warn", COLORS.fgYellow], - info: ["info", COLORS.dim], - debug: ["debug", COLORS.fgMagenta], - verbose: ["debug", COLORS.dim], - none: ["log", COLORS.reset] - }; - const _console = console[colorMap[type][0]]; - if (typeof _console === "function" && fullLogString.length > 0) { - _console(this._colorizeText(fullLogString, colorMap[type][1])); - } else { - throw new Error(fullLogString); - } - } -}; -var COLORS = { - reset: "\x1B[0m", - bright: "\x1B[1m", - dim: "\x1B[2m", - underscore: "\x1B[4m", - blink: "\x1B[5m", - reverse: "\x1B[7m", - hidden: "\x1B[8m", - fgBlack: "\x1B[30m", - fgRed: "\x1B[31m", - fgGreen: "\x1B[32m", - fgYellow: "\x1B[33m", - fgBlue: "\x1B[34m", - fgMagenta: "\x1B[35m", - fgCyan: "\x1B[36m", - fgWhite: "\x1B[37m", - bgBlack: "\x1B[40m", - bgRed: "\x1B[41m", - bgGreen: "\x1B[42m", - bgYellow: "\x1B[43m", - bgBlue: "\x1B[44m", - bgMagenta: "\x1B[45m", - bgCyan: "\x1B[46m", - bgWhite: "\x1B[47m" -}; -var LOG_LEVEL = { - FATAL: "fatal", - ERROR: "error", - INFO: "info", - VERBOSE: "verbose", - DEBUG: "debug", - NONE: "none" -}; - -// node_modules/axios/lib/helpers/bind.js -function bind(fn, thisArg) { - return function wrap() { - return fn.apply(thisArg, arguments); - }; -} - -// node_modules/axios/lib/utils.js -var { toString } = Object.prototype; -var { getPrototypeOf } = Object; -var kindOf = /* @__PURE__ */ ((cache) => (thing) => { - const str = toString.call(thing); - return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase()); -})(/* @__PURE__ */ Object.create(null)); -var kindOfTest = (type) => { - type = type.toLowerCase(); - return (thing) => kindOf(thing) === type; -}; -var typeOfTest = (type) => (thing) => typeof thing === type; -var { isArray } = Array; -var isUndefined = typeOfTest("undefined"); -function isBuffer(val) { - return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val); -} -var isArrayBuffer = kindOfTest("ArrayBuffer"); -function isArrayBufferView(val) { - let result; - if (typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView) { - result = ArrayBuffer.isView(val); - } else { - result = val && val.buffer && isArrayBuffer(val.buffer); - } - return result; -} -var isString = typeOfTest("string"); -var isFunction = typeOfTest("function"); -var isNumber = typeOfTest("number"); -var isObject = (thing) => thing !== null && typeof thing === "object"; -var isBoolean = (thing) => thing === true || thing === false; -var isPlainObject = (val) => { - if (kindOf(val) !== "object") { - return false; - } - const prototype3 = getPrototypeOf(val); - return (prototype3 === null || prototype3 === Object.prototype || Object.getPrototypeOf(prototype3) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val); -}; -var isDate = kindOfTest("Date"); -var isFile = kindOfTest("File"); -var isBlob = kindOfTest("Blob"); -var isFileList = kindOfTest("FileList"); -var isStream = (val) => isObject(val) && isFunction(val.pipe); -var isFormData = (thing) => { - let kind; - return thing && (typeof FormData === "function" && thing instanceof FormData || isFunction(thing.append) && ((kind = kindOf(thing)) === "formdata" || // detect form-data instance - kind === "object" && isFunction(thing.toString) && thing.toString() === "[object FormData]")); -}; -var isURLSearchParams = kindOfTest("URLSearchParams"); -var [isReadableStream, isRequest, isResponse, isHeaders] = ["ReadableStream", "Request", "Response", "Headers"].map(kindOfTest); -var trim = (str) => str.trim ? str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ""); -function forEach(obj, fn, { allOwnKeys = false } = {}) { - if (obj === null || typeof obj === "undefined") { - return; - } - let i; - let l; - if (typeof obj !== "object") { - obj = [obj]; - } - if (isArray(obj)) { - for (i = 0, l = obj.length; i < l; i++) { - fn.call(null, obj[i], i, obj); - } - } else { - const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj); - const len = keys.length; - let key; - for (i = 0; i < len; i++) { - key = keys[i]; - fn.call(null, obj[key], key, obj); - } - } -} -function findKey(obj, key) { - key = key.toLowerCase(); - const keys = Object.keys(obj); - let i = keys.length; - let _key; - while (i-- > 0) { - _key = keys[i]; - if (key === _key.toLowerCase()) { - return _key; - } - } - return null; -} -var _global = (() => { - if (typeof globalThis !== "undefined") - return globalThis; - return typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : global; -})(); -var isContextDefined = (context) => !isUndefined(context) && context !== _global; -function merge() { - const { caseless } = isContextDefined(this) && this || {}; - const result = {}; - const assignValue = (val, key) => { - const targetKey = caseless && findKey(result, key) || key; - if (isPlainObject(result[targetKey]) && isPlainObject(val)) { - result[targetKey] = merge(result[targetKey], val); - } else if (isPlainObject(val)) { - result[targetKey] = merge({}, val); - } else if (isArray(val)) { - result[targetKey] = val.slice(); - } else { - result[targetKey] = val; - } - }; - for (let i = 0, l = arguments.length; i < l; i++) { - arguments[i] && forEach(arguments[i], assignValue); - } - return result; -} -var extend = (a, b, thisArg, { allOwnKeys } = {}) => { - forEach(b, (val, key) => { - if (thisArg && isFunction(val)) { - a[key] = bind(val, thisArg); - } else { - a[key] = val; - } - }, { allOwnKeys }); - return a; -}; -var stripBOM = (content) => { - if (content.charCodeAt(0) === 65279) { - content = content.slice(1); - } - return content; -}; -var inherits = (constructor, superConstructor, props, descriptors2) => { - constructor.prototype = Object.create(superConstructor.prototype, descriptors2); - constructor.prototype.constructor = constructor; - Object.defineProperty(constructor, "super", { - value: superConstructor.prototype - }); - props && Object.assign(constructor.prototype, props); -}; -var toFlatObject = (sourceObj, destObj, filter2, propFilter) => { - let props; - let i; - let prop; - const merged = {}; - destObj = destObj || {}; - if (sourceObj == null) - return destObj; - do { - props = Object.getOwnPropertyNames(sourceObj); - i = props.length; - while (i-- > 0) { - prop = props[i]; - if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) { - destObj[prop] = sourceObj[prop]; - merged[prop] = true; - } - } - sourceObj = filter2 !== false && getPrototypeOf(sourceObj); - } while (sourceObj && (!filter2 || filter2(sourceObj, destObj)) && sourceObj !== Object.prototype); - return destObj; -}; -var endsWith = (str, searchString, position) => { - str = String(str); - if (position === void 0 || position > str.length) { - position = str.length; - } - position -= searchString.length; - const lastIndex = str.indexOf(searchString, position); - return lastIndex !== -1 && lastIndex === position; -}; -var toArray = (thing) => { - if (!thing) - return null; - if (isArray(thing)) - return thing; - let i = thing.length; - if (!isNumber(i)) - return null; - const arr = new Array(i); - while (i-- > 0) { - arr[i] = thing[i]; - } - return arr; -}; -var isTypedArray = /* @__PURE__ */ ((TypedArray) => { - return (thing) => { - return TypedArray && thing instanceof TypedArray; - }; -})(typeof Uint8Array !== "undefined" && getPrototypeOf(Uint8Array)); -var forEachEntry = (obj, fn) => { - const generator = obj && obj[Symbol.iterator]; - const iterator = generator.call(obj); - let result; - while ((result = iterator.next()) && !result.done) { - const pair = result.value; - fn.call(obj, pair[0], pair[1]); - } -}; -var matchAll = (regExp, str) => { - let matches; - const arr = []; - while ((matches = regExp.exec(str)) !== null) { - arr.push(matches); - } - return arr; -}; -var isHTMLForm = kindOfTest("HTMLFormElement"); -var toCamelCase = (str) => { - return str.toLowerCase().replace( - /[-_\s]([a-z\d])(\w*)/g, - function replacer(m, p1, p2) { - return p1.toUpperCase() + p2; - } - ); -}; -var hasOwnProperty = (({ hasOwnProperty: hasOwnProperty2 }) => (obj, prop) => hasOwnProperty2.call(obj, prop))(Object.prototype); -var isRegExp = kindOfTest("RegExp"); -var reduceDescriptors = (obj, reducer) => { - const descriptors2 = Object.getOwnPropertyDescriptors(obj); - const reducedDescriptors = {}; - forEach(descriptors2, (descriptor, name) => { - let ret; - if ((ret = reducer(descriptor, name, obj)) !== false) { - reducedDescriptors[name] = ret || descriptor; - } - }); - Object.defineProperties(obj, reducedDescriptors); -}; -var freezeMethods = (obj) => { - reduceDescriptors(obj, (descriptor, name) => { - if (isFunction(obj) && ["arguments", "caller", "callee"].indexOf(name) !== -1) { - return false; - } - const value = obj[name]; - if (!isFunction(value)) - return; - descriptor.enumerable = false; - if ("writable" in descriptor) { - descriptor.writable = false; - return; - } - if (!descriptor.set) { - descriptor.set = () => { - throw Error("Can not rewrite read-only method '" + name + "'"); - }; - } - }); -}; -var toObjectSet = (arrayOrString, delimiter) => { - const obj = {}; - const define2 = (arr) => { - arr.forEach((value) => { - obj[value] = true; - }); - }; - isArray(arrayOrString) ? define2(arrayOrString) : define2(String(arrayOrString).split(delimiter)); - return obj; -}; -var noop = () => { -}; -var toFiniteNumber = (value, defaultValue) => { - return value != null && Number.isFinite(value = +value) ? value : defaultValue; -}; -var ALPHA = "abcdefghijklmnopqrstuvwxyz"; -var DIGIT = "0123456789"; -var ALPHABET = { - DIGIT, - ALPHA, - ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT -}; -var generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => { - let str = ""; - const { length } = alphabet; - while (size--) { - str += alphabet[Math.random() * length | 0]; - } - return str; -}; -function isSpecCompliantForm(thing) { - return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === "FormData" && thing[Symbol.iterator]); -} -var toJSONObject = (obj) => { - const stack = new Array(10); - const visit = (source, i) => { - if (isObject(source)) { - if (stack.indexOf(source) >= 0) { - return; - } - if (!("toJSON" in source)) { - stack[i] = source; - const target = isArray(source) ? [] : {}; - forEach(source, (value, key) => { - const reducedValue = visit(value, i + 1); - !isUndefined(reducedValue) && (target[key] = reducedValue); - }); - stack[i] = void 0; - return target; - } - } - return source; - }; - return visit(obj, 0); -}; -var isAsyncFn = kindOfTest("AsyncFunction"); -var isThenable = (thing) => thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch); -var utils_default = { - isArray, - isArrayBuffer, - isBuffer, - isFormData, - isArrayBufferView, - isString, - isNumber, - isBoolean, - isObject, - isPlainObject, - isReadableStream, - isRequest, - isResponse, - isHeaders, - isUndefined, - isDate, - isFile, - isBlob, - isRegExp, - isFunction, - isStream, - isURLSearchParams, - isTypedArray, - isFileList, - forEach, - merge, - extend, - trim, - stripBOM, - inherits, - toFlatObject, - kindOf, - kindOfTest, - endsWith, - toArray, - forEachEntry, - matchAll, - isHTMLForm, - hasOwnProperty, - hasOwnProp: hasOwnProperty, - // an alias to avoid ESLint no-prototype-builtins detection - reduceDescriptors, - freezeMethods, - toObjectSet, - toCamelCase, - noop, - toFiniteNumber, - findKey, - global: _global, - isContextDefined, - ALPHABET, - generateString, - isSpecCompliantForm, - toJSONObject, - isAsyncFn, - isThenable -}; - -// node_modules/axios/lib/core/AxiosError.js -function AxiosError(message, code, config, request, response) { - Error.call(this); - if (Error.captureStackTrace) { - Error.captureStackTrace(this, this.constructor); - } else { - this.stack = new Error().stack; - } - this.message = message; - this.name = "AxiosError"; - code && (this.code = code); - config && (this.config = config); - request && (this.request = request); - response && (this.response = response); -} -utils_default.inherits(AxiosError, Error, { - toJSON: function toJSON() { - return { - // Standard - message: this.message, - name: this.name, - // Microsoft - description: this.description, - number: this.number, - // Mozilla - fileName: this.fileName, - lineNumber: this.lineNumber, - columnNumber: this.columnNumber, - stack: this.stack, - // Axios - config: utils_default.toJSONObject(this.config), - code: this.code, - status: this.response && this.response.status ? this.response.status : null - }; - } -}); -var prototype = AxiosError.prototype; -var descriptors = {}; -[ - "ERR_BAD_OPTION_VALUE", - "ERR_BAD_OPTION", - "ECONNABORTED", - "ETIMEDOUT", - "ERR_NETWORK", - "ERR_FR_TOO_MANY_REDIRECTS", - "ERR_DEPRECATED", - "ERR_BAD_RESPONSE", - "ERR_BAD_REQUEST", - "ERR_CANCELED", - "ERR_NOT_SUPPORT", - "ERR_INVALID_URL" - // eslint-disable-next-line func-names -].forEach((code) => { - descriptors[code] = { value: code }; -}); -Object.defineProperties(AxiosError, descriptors); -Object.defineProperty(prototype, "isAxiosError", { value: true }); -AxiosError.from = (error, code, config, request, response, customProps) => { - const axiosError = Object.create(prototype); - utils_default.toFlatObject(error, axiosError, function filter2(obj) { - return obj !== Error.prototype; - }, (prop) => { - return prop !== "isAxiosError"; - }); - AxiosError.call(axiosError, error.message, code, config, request, response); - axiosError.cause = error; - axiosError.name = error.name; - customProps && Object.assign(axiosError, customProps); - return axiosError; -}; -var AxiosError_default = AxiosError; - -// node_modules/axios/lib/platform/node/classes/FormData.js -var import_form_data = __toESM(require_form_data(), 1); -var FormData_default = import_form_data.default; - -// node_modules/axios/lib/helpers/toFormData.js -function isVisitable(thing) { - return utils_default.isPlainObject(thing) || utils_default.isArray(thing); -} -function removeBrackets(key) { - return utils_default.endsWith(key, "[]") ? key.slice(0, -2) : key; -} -function renderKey(path, key, dots) { - if (!path) - return key; - return path.concat(key).map(function each(token, i) { - token = removeBrackets(token); - return !dots && i ? "[" + token + "]" : token; - }).join(dots ? "." : ""); -} -function isFlatArray(arr) { - return utils_default.isArray(arr) && !arr.some(isVisitable); -} -var predicates = utils_default.toFlatObject(utils_default, {}, null, function filter(prop) { - return /^is[A-Z]/.test(prop); -}); -function toFormData(obj, formData, options) { - if (!utils_default.isObject(obj)) { - throw new TypeError("target must be an object"); - } - formData = formData || new (FormData_default || FormData)(); - options = utils_default.toFlatObject(options, { - metaTokens: true, - dots: false, - indexes: false - }, false, function defined(option, source) { - return !utils_default.isUndefined(source[option]); - }); - const metaTokens = options.metaTokens; - const visitor = options.visitor || defaultVisitor; - const dots = options.dots; - const indexes = options.indexes; - const _Blob = options.Blob || typeof Blob !== "undefined" && Blob; - const useBlob = _Blob && utils_default.isSpecCompliantForm(formData); - if (!utils_default.isFunction(visitor)) { - throw new TypeError("visitor must be a function"); - } - function convertValue(value) { - if (value === null) - return ""; - if (utils_default.isDate(value)) { - return value.toISOString(); - } - if (!useBlob && utils_default.isBlob(value)) { - throw new AxiosError_default("Blob is not supported. Use a Buffer instead."); - } - if (utils_default.isArrayBuffer(value) || utils_default.isTypedArray(value)) { - return useBlob && typeof Blob === "function" ? new Blob([value]) : Buffer.from(value); - } - return value; - } - function defaultVisitor(value, key, path) { - let arr = value; - if (value && !path && typeof value === "object") { - if (utils_default.endsWith(key, "{}")) { - key = metaTokens ? key : key.slice(0, -2); - value = JSON.stringify(value); - } else if (utils_default.isArray(value) && isFlatArray(value) || (utils_default.isFileList(value) || utils_default.endsWith(key, "[]")) && (arr = utils_default.toArray(value))) { - key = removeBrackets(key); - arr.forEach(function each(el, index) { - !(utils_default.isUndefined(el) || el === null) && formData.append( - // eslint-disable-next-line no-nested-ternary - indexes === true ? renderKey([key], index, dots) : indexes === null ? key : key + "[]", - convertValue(el) - ); - }); - return false; - } - } - if (isVisitable(value)) { - return true; - } - formData.append(renderKey(path, key, dots), convertValue(value)); - return false; - } - const stack = []; - const exposedHelpers = Object.assign(predicates, { - defaultVisitor, - convertValue, - isVisitable - }); - function build(value, path) { - if (utils_default.isUndefined(value)) - return; - if (stack.indexOf(value) !== -1) { - throw Error("Circular reference detected in " + path.join(".")); - } - stack.push(value); - utils_default.forEach(value, function each(el, key) { - const result = !(utils_default.isUndefined(el) || el === null) && visitor.call( - formData, - el, - utils_default.isString(key) ? key.trim() : key, - path, - exposedHelpers - ); - if (result === true) { - build(el, path ? path.concat(key) : [key]); - } - }); - stack.pop(); - } - if (!utils_default.isObject(obj)) { - throw new TypeError("data must be an object"); - } - build(obj); - return formData; -} -var toFormData_default = toFormData; - -// node_modules/axios/lib/helpers/AxiosURLSearchParams.js -function encode(str) { - const charMap = { - "!": "%21", - "'": "%27", - "(": "%28", - ")": "%29", - "~": "%7E", - "%20": "+", - "%00": "\0" - }; - return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) { - return charMap[match]; - }); -} -function AxiosURLSearchParams(params, options) { - this._pairs = []; - params && toFormData_default(params, this, options); -} -var prototype2 = AxiosURLSearchParams.prototype; -prototype2.append = function append(name, value) { - this._pairs.push([name, value]); -}; -prototype2.toString = function toString2(encoder) { - const _encode = encoder ? function(value) { - return encoder.call(this, value, encode); - } : encode; - return this._pairs.map(function each(pair) { - return _encode(pair[0]) + "=" + _encode(pair[1]); - }, "").join("&"); -}; -var AxiosURLSearchParams_default = AxiosURLSearchParams; - -// node_modules/axios/lib/helpers/buildURL.js -function encode2(val) { - return encodeURIComponent(val).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]"); -} -function buildURL(url2, params, options) { - if (!params) { - return url2; - } - const _encode = options && options.encode || encode2; - const serializeFn = options && options.serialize; - let serializedParams; - if (serializeFn) { - serializedParams = serializeFn(params, options); - } else { - serializedParams = utils_default.isURLSearchParams(params) ? params.toString() : new AxiosURLSearchParams_default(params, options).toString(_encode); - } - if (serializedParams) { - const hashmarkIndex = url2.indexOf("#"); - if (hashmarkIndex !== -1) { - url2 = url2.slice(0, hashmarkIndex); - } - url2 += (url2.indexOf("?") === -1 ? "?" : "&") + serializedParams; - } - return url2; -} - -// node_modules/axios/lib/core/InterceptorManager.js -var InterceptorManager = class { - constructor() { - this.handlers = []; - } - /** - * Add a new interceptor to the stack - * - * @param {Function} fulfilled The function to handle `then` for a `Promise` - * @param {Function} rejected The function to handle `reject` for a `Promise` - * - * @return {Number} An ID used to remove interceptor later - */ - use(fulfilled, rejected, options) { - this.handlers.push({ - fulfilled, - rejected, - synchronous: options ? options.synchronous : false, - runWhen: options ? options.runWhen : null - }); - return this.handlers.length - 1; - } - /** - * Remove an interceptor from the stack - * - * @param {Number} id The ID that was returned by `use` - * - * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise - */ - eject(id) { - if (this.handlers[id]) { - this.handlers[id] = null; - } - } - /** - * Clear all interceptors from the stack - * - * @returns {void} - */ - clear() { - if (this.handlers) { - this.handlers = []; - } - } - /** - * Iterate over all the registered interceptors - * - * This method is particularly useful for skipping over any - * interceptors that may have become `null` calling `eject`. - * - * @param {Function} fn The function to call for each interceptor - * - * @returns {void} - */ - forEach(fn) { - utils_default.forEach(this.handlers, function forEachHandler(h) { - if (h !== null) { - fn(h); - } - }); - } -}; -var InterceptorManager_default = InterceptorManager; - -// node_modules/axios/lib/defaults/transitional.js -var transitional_default = { - silentJSONParsing: true, - forcedJSONParsing: true, - clarifyTimeoutError: false -}; - -// node_modules/axios/lib/platform/node/classes/URLSearchParams.js -var import_url = __toESM(__nccwpck_require__(87016), 1); -var URLSearchParams_default = import_url.default.URLSearchParams; - -// node_modules/axios/lib/platform/node/index.js -var node_default = { - isNode: true, - classes: { - URLSearchParams: URLSearchParams_default, - FormData: FormData_default, - Blob: typeof Blob !== "undefined" && Blob || null - }, - protocols: ["http", "https", "file", "data"] -}; - -// node_modules/axios/lib/platform/common/utils.js -var utils_exports = {}; -__export(utils_exports, { - hasBrowserEnv: () => hasBrowserEnv, - hasStandardBrowserEnv: () => hasStandardBrowserEnv, - hasStandardBrowserWebWorkerEnv: () => hasStandardBrowserWebWorkerEnv, - origin: () => origin -}); -var hasBrowserEnv = typeof window !== "undefined" && typeof document !== "undefined"; -var hasStandardBrowserEnv = ((product) => { - return hasBrowserEnv && ["ReactNative", "NativeScript", "NS"].indexOf(product) < 0; -})(typeof navigator !== "undefined" && navigator.product); -var hasStandardBrowserWebWorkerEnv = (() => { - return typeof WorkerGlobalScope !== "undefined" && // eslint-disable-next-line no-undef - self instanceof WorkerGlobalScope && typeof self.importScripts === "function"; -})(); -var origin = hasBrowserEnv && window.location.href || "http://localhost"; - -// node_modules/axios/lib/platform/index.js -var platform_default = { - ...utils_exports, - ...node_default -}; - -// node_modules/axios/lib/helpers/toURLEncodedForm.js -function toURLEncodedForm(data, options) { - return toFormData_default(data, new platform_default.classes.URLSearchParams(), Object.assign({ - visitor: function(value, key, path, helpers) { - if (platform_default.isNode && utils_default.isBuffer(value)) { - this.append(key, value.toString("base64")); - return false; - } - return helpers.defaultVisitor.apply(this, arguments); - } - }, options)); -} - -// node_modules/axios/lib/helpers/formDataToJSON.js -function parsePropPath(name) { - return utils_default.matchAll(/\w+|\[(\w*)]/g, name).map((match) => { - return match[0] === "[]" ? "" : match[1] || match[0]; - }); -} -function arrayToObject(arr) { - const obj = {}; - const keys = Object.keys(arr); - let i; - const len = keys.length; - let key; - for (i = 0; i < len; i++) { - key = keys[i]; - obj[key] = arr[key]; - } - return obj; -} -function formDataToJSON(formData) { - function buildPath(path, value, target, index) { - let name = path[index++]; - if (name === "__proto__") - return true; - const isNumericKey = Number.isFinite(+name); - const isLast = index >= path.length; - name = !name && utils_default.isArray(target) ? target.length : name; - if (isLast) { - if (utils_default.hasOwnProp(target, name)) { - target[name] = [target[name], value]; - } else { - target[name] = value; - } - return !isNumericKey; - } - if (!target[name] || !utils_default.isObject(target[name])) { - target[name] = []; - } - const result = buildPath(path, value, target[name], index); - if (result && utils_default.isArray(target[name])) { - target[name] = arrayToObject(target[name]); - } - return !isNumericKey; - } - if (utils_default.isFormData(formData) && utils_default.isFunction(formData.entries)) { - const obj = {}; - utils_default.forEachEntry(formData, (name, value) => { - buildPath(parsePropPath(name), value, obj, 0); - }); - return obj; - } - return null; -} -var formDataToJSON_default = formDataToJSON; - -// node_modules/axios/lib/defaults/index.js -function stringifySafely(rawValue, parser, encoder) { - if (utils_default.isString(rawValue)) { - try { - (parser || JSON.parse)(rawValue); - return utils_default.trim(rawValue); - } catch (e) { - if (e.name !== "SyntaxError") { - throw e; - } - } - } - return (encoder || JSON.stringify)(rawValue); -} -var defaults = { - transitional: transitional_default, - adapter: ["xhr", "http", "fetch"], - transformRequest: [function transformRequest(data, headers) { - const contentType = headers.getContentType() || ""; - const hasJSONContentType = contentType.indexOf("application/json") > -1; - const isObjectPayload = utils_default.isObject(data); - if (isObjectPayload && utils_default.isHTMLForm(data)) { - data = new FormData(data); - } - const isFormData2 = utils_default.isFormData(data); - if (isFormData2) { - return hasJSONContentType ? JSON.stringify(formDataToJSON_default(data)) : data; - } - if (utils_default.isArrayBuffer(data) || utils_default.isBuffer(data) || utils_default.isStream(data) || utils_default.isFile(data) || utils_default.isBlob(data) || utils_default.isReadableStream(data)) { - return data; - } - if (utils_default.isArrayBufferView(data)) { - return data.buffer; - } - if (utils_default.isURLSearchParams(data)) { - headers.setContentType("application/x-www-form-urlencoded;charset=utf-8", false); - return data.toString(); - } - let isFileList2; - if (isObjectPayload) { - if (contentType.indexOf("application/x-www-form-urlencoded") > -1) { - return toURLEncodedForm(data, this.formSerializer).toString(); - } - if ((isFileList2 = utils_default.isFileList(data)) || contentType.indexOf("multipart/form-data") > -1) { - const _FormData = this.env && this.env.FormData; - return toFormData_default( - isFileList2 ? { "files[]": data } : data, - _FormData && new _FormData(), - this.formSerializer - ); - } - } - if (isObjectPayload || hasJSONContentType) { - headers.setContentType("application/json", false); - return stringifySafely(data); - } - return data; - }], - transformResponse: [function transformResponse(data) { - const transitional2 = this.transitional || defaults.transitional; - const forcedJSONParsing = transitional2 && transitional2.forcedJSONParsing; - const JSONRequested = this.responseType === "json"; - if (utils_default.isResponse(data) || utils_default.isReadableStream(data)) { - return data; - } - if (data && utils_default.isString(data) && (forcedJSONParsing && !this.responseType || JSONRequested)) { - const silentJSONParsing = transitional2 && transitional2.silentJSONParsing; - const strictJSONParsing = !silentJSONParsing && JSONRequested; - try { - return JSON.parse(data); - } catch (e) { - if (strictJSONParsing) { - if (e.name === "SyntaxError") { - throw AxiosError_default.from(e, AxiosError_default.ERR_BAD_RESPONSE, this, null, this.response); - } - throw e; - } - } - } - return data; - }], - /** - * A timeout in milliseconds to abort a request. If set to 0 (default) a - * timeout is not created. - */ - timeout: 0, - xsrfCookieName: "XSRF-TOKEN", - xsrfHeaderName: "X-XSRF-TOKEN", - maxContentLength: -1, - maxBodyLength: -1, - env: { - FormData: platform_default.classes.FormData, - Blob: platform_default.classes.Blob - }, - validateStatus: function validateStatus(status) { - return status >= 200 && status < 300; - }, - headers: { - common: { - "Accept": "application/json, text/plain, */*", - "Content-Type": void 0 - } - } -}; -utils_default.forEach(["delete", "get", "head", "post", "put", "patch"], (method) => { - defaults.headers[method] = {}; -}); -var defaults_default = defaults; - -// node_modules/axios/lib/helpers/parseHeaders.js -var ignoreDuplicateOf = utils_default.toObjectSet([ - "age", - "authorization", - "content-length", - "content-type", - "etag", - "expires", - "from", - "host", - "if-modified-since", - "if-unmodified-since", - "last-modified", - "location", - "max-forwards", - "proxy-authorization", - "referer", - "retry-after", - "user-agent" -]); -var parseHeaders_default = (rawHeaders) => { - const parsed = {}; - let key; - let val; - let i; - rawHeaders && rawHeaders.split("\n").forEach(function parser(line) { - i = line.indexOf(":"); - key = line.substring(0, i).trim().toLowerCase(); - val = line.substring(i + 1).trim(); - if (!key || parsed[key] && ignoreDuplicateOf[key]) { - return; - } - if (key === "set-cookie") { - if (parsed[key]) { - parsed[key].push(val); - } else { - parsed[key] = [val]; - } - } else { - parsed[key] = parsed[key] ? parsed[key] + ", " + val : val; - } - }); - return parsed; -}; - -// node_modules/axios/lib/core/AxiosHeaders.js -var $internals = Symbol("internals"); -function normalizeHeader(header) { - return header && String(header).trim().toLowerCase(); -} -function normalizeValue(value) { - if (value === false || value == null) { - return value; - } - return utils_default.isArray(value) ? value.map(normalizeValue) : String(value); -} -function parseTokens(str) { - const tokens = /* @__PURE__ */ Object.create(null); - const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g; - let match; - while (match = tokensRE.exec(str)) { - tokens[match[1]] = match[2]; - } - return tokens; -} -var isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim()); -function matchHeaderValue(context, value, header, filter2, isHeaderNameFilter) { - if (utils_default.isFunction(filter2)) { - return filter2.call(this, value, header); - } - if (isHeaderNameFilter) { - value = header; - } - if (!utils_default.isString(value)) - return; - if (utils_default.isString(filter2)) { - return value.indexOf(filter2) !== -1; - } - if (utils_default.isRegExp(filter2)) { - return filter2.test(value); - } -} -function formatHeader(header) { - return header.trim().toLowerCase().replace(/([a-z\d])(\w*)/g, (w, char, str) => { - return char.toUpperCase() + str; - }); -} -function buildAccessors(obj, header) { - const accessorName = utils_default.toCamelCase(" " + header); - ["get", "set", "has"].forEach((methodName) => { - Object.defineProperty(obj, methodName + accessorName, { - value: function(arg1, arg2, arg3) { - return this[methodName].call(this, header, arg1, arg2, arg3); - }, - configurable: true - }); - }); -} -var AxiosHeaders = class { - constructor(headers) { - headers && this.set(headers); - } - set(header, valueOrRewrite, rewrite) { - const self2 = this; - function setHeader(_value, _header, _rewrite) { - const lHeader = normalizeHeader(_header); - if (!lHeader) { - throw new Error("header name must be a non-empty string"); - } - const key = utils_default.findKey(self2, lHeader); - if (!key || self2[key] === void 0 || _rewrite === true || _rewrite === void 0 && self2[key] !== false) { - self2[key || _header] = normalizeValue(_value); - } - } - const setHeaders = (headers, _rewrite) => utils_default.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite)); - if (utils_default.isPlainObject(header) || header instanceof this.constructor) { - setHeaders(header, valueOrRewrite); - } else if (utils_default.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) { - setHeaders(parseHeaders_default(header), valueOrRewrite); - } else if (utils_default.isHeaders(header)) { - for (const [key, value] of header.entries()) { - setHeader(value, key, rewrite); - } - } else { - header != null && setHeader(valueOrRewrite, header, rewrite); - } - return this; - } - get(header, parser) { - header = normalizeHeader(header); - if (header) { - const key = utils_default.findKey(this, header); - if (key) { - const value = this[key]; - if (!parser) { - return value; - } - if (parser === true) { - return parseTokens(value); - } - if (utils_default.isFunction(parser)) { - return parser.call(this, value, key); - } - if (utils_default.isRegExp(parser)) { - return parser.exec(value); - } - throw new TypeError("parser must be boolean|regexp|function"); - } - } - } - has(header, matcher) { - header = normalizeHeader(header); - if (header) { - const key = utils_default.findKey(this, header); - return !!(key && this[key] !== void 0 && (!matcher || matchHeaderValue(this, this[key], key, matcher))); - } - return false; - } - delete(header, matcher) { - const self2 = this; - let deleted = false; - function deleteHeader(_header) { - _header = normalizeHeader(_header); - if (_header) { - const key = utils_default.findKey(self2, _header); - if (key && (!matcher || matchHeaderValue(self2, self2[key], key, matcher))) { - delete self2[key]; - deleted = true; - } - } - } - if (utils_default.isArray(header)) { - header.forEach(deleteHeader); - } else { - deleteHeader(header); - } - return deleted; - } - clear(matcher) { - const keys = Object.keys(this); - let i = keys.length; - let deleted = false; - while (i--) { - const key = keys[i]; - if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) { - delete this[key]; - deleted = true; - } - } - return deleted; - } - normalize(format) { - const self2 = this; - const headers = {}; - utils_default.forEach(this, (value, header) => { - const key = utils_default.findKey(headers, header); - if (key) { - self2[key] = normalizeValue(value); - delete self2[header]; - return; - } - const normalized = format ? formatHeader(header) : String(header).trim(); - if (normalized !== header) { - delete self2[header]; - } - self2[normalized] = normalizeValue(value); - headers[normalized] = true; - }); - return this; - } - concat(...targets) { - return this.constructor.concat(this, ...targets); - } - toJSON(asStrings) { - const obj = /* @__PURE__ */ Object.create(null); - utils_default.forEach(this, (value, header) => { - value != null && value !== false && (obj[header] = asStrings && utils_default.isArray(value) ? value.join(", ") : value); - }); - return obj; - } - [Symbol.iterator]() { - return Object.entries(this.toJSON())[Symbol.iterator](); - } - toString() { - return Object.entries(this.toJSON()).map(([header, value]) => header + ": " + value).join("\n"); - } - get [Symbol.toStringTag]() { - return "AxiosHeaders"; - } - static from(thing) { - return thing instanceof this ? thing : new this(thing); - } - static concat(first, ...targets) { - const computed = new this(first); - targets.forEach((target) => computed.set(target)); - return computed; - } - static accessor(header) { - const internals = this[$internals] = this[$internals] = { - accessors: {} - }; - const accessors = internals.accessors; - const prototype3 = this.prototype; - function defineAccessor(_header) { - const lHeader = normalizeHeader(_header); - if (!accessors[lHeader]) { - buildAccessors(prototype3, _header); - accessors[lHeader] = true; - } - } - utils_default.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header); - return this; - } -}; -AxiosHeaders.accessor(["Content-Type", "Content-Length", "Accept", "Accept-Encoding", "User-Agent", "Authorization"]); -utils_default.reduceDescriptors(AxiosHeaders.prototype, ({ value }, key) => { - let mapped = key[0].toUpperCase() + key.slice(1); - return { - get: () => value, - set(headerValue) { - this[mapped] = headerValue; - } - }; -}); -utils_default.freezeMethods(AxiosHeaders); -var AxiosHeaders_default = AxiosHeaders; - -// node_modules/axios/lib/core/transformData.js -function transformData(fns, response) { - const config = this || defaults_default; - const context = response || config; - const headers = AxiosHeaders_default.from(context.headers); - let data = context.data; - utils_default.forEach(fns, function transform(fn) { - data = fn.call(config, data, headers.normalize(), response ? response.status : void 0); - }); - headers.normalize(); - return data; -} - -// node_modules/axios/lib/cancel/isCancel.js -function isCancel(value) { - return !!(value && value.__CANCEL__); -} - -// node_modules/axios/lib/cancel/CanceledError.js -function CanceledError(message, config, request) { - AxiosError_default.call(this, message == null ? "canceled" : message, AxiosError_default.ERR_CANCELED, config, request); - this.name = "CanceledError"; -} -utils_default.inherits(CanceledError, AxiosError_default, { - __CANCEL__: true -}); -var CanceledError_default = CanceledError; - -// node_modules/axios/lib/core/settle.js -function settle(resolve, reject, response) { - const validateStatus2 = response.config.validateStatus; - if (!response.status || !validateStatus2 || validateStatus2(response.status)) { - resolve(response); - } else { - reject(new AxiosError_default( - "Request failed with status code " + response.status, - [AxiosError_default.ERR_BAD_REQUEST, AxiosError_default.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4], - response.config, - response.request, - response - )); - } -} - -// node_modules/axios/lib/helpers/isAbsoluteURL.js -function isAbsoluteURL(url2) { - return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url2); -} - -// node_modules/axios/lib/helpers/combineURLs.js -function combineURLs(baseURL, relativeURL) { - return relativeURL ? baseURL.replace(/\/?\/$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL; -} - -// node_modules/axios/lib/core/buildFullPath.js -function buildFullPath(baseURL, requestedURL) { - if (baseURL && !isAbsoluteURL(requestedURL)) { - return combineURLs(baseURL, requestedURL); - } - return requestedURL; -} - -// node_modules/axios/lib/adapters/http.js -var import_proxy_from_env = __toESM(require_proxy_from_env(), 1); -var import_http = __toESM(__nccwpck_require__(58611), 1); -var import_https = __toESM(__nccwpck_require__(65692), 1); -var import_util2 = __toESM(__nccwpck_require__(39023), 1); -var import_follow_redirects = __toESM(require_follow_redirects(), 1); -var import_zlib = __toESM(__nccwpck_require__(43106), 1); - -// node_modules/axios/lib/env/data.js -var VERSION = "1.7.2"; - -// node_modules/axios/lib/helpers/parseProtocol.js -function parseProtocol(url2) { - const match = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url2); - return match && match[1] || ""; -} - -// node_modules/axios/lib/helpers/fromDataURI.js -var DATA_URL_PATTERN = /^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/; -function fromDataURI(uri, asBlob, options) { - const _Blob = options && options.Blob || platform_default.classes.Blob; - const protocol = parseProtocol(uri); - if (asBlob === void 0 && _Blob) { - asBlob = true; - } - if (protocol === "data") { - uri = protocol.length ? uri.slice(protocol.length + 1) : uri; - const match = DATA_URL_PATTERN.exec(uri); - if (!match) { - throw new AxiosError_default("Invalid URL", AxiosError_default.ERR_INVALID_URL); - } - const mime = match[1]; - const isBase64 = match[2]; - const body = match[3]; - const buffer = Buffer.from(decodeURIComponent(body), isBase64 ? "base64" : "utf8"); - if (asBlob) { - if (!_Blob) { - throw new AxiosError_default("Blob is not supported", AxiosError_default.ERR_NOT_SUPPORT); - } - return new _Blob([buffer], { type: mime }); - } - return buffer; - } - throw new AxiosError_default("Unsupported protocol " + protocol, AxiosError_default.ERR_NOT_SUPPORT); -} - -// node_modules/axios/lib/adapters/http.js -var import_stream4 = __toESM(__nccwpck_require__(2203), 1); - -// node_modules/axios/lib/helpers/AxiosTransformStream.js -var import_stream = __toESM(__nccwpck_require__(2203), 1); - -// node_modules/axios/lib/helpers/throttle.js -function throttle(fn, freq) { - let timestamp = 0; - const threshold = 1e3 / freq; - let timer = null; - return function throttled() { - const force = this === true; - const now = Date.now(); - if (force || now - timestamp > threshold) { - if (timer) { - clearTimeout(timer); - timer = null; - } - timestamp = now; - return fn.apply(null, arguments); - } - if (!timer) { - timer = setTimeout(() => { - timer = null; - timestamp = Date.now(); - return fn.apply(null, arguments); - }, threshold - (now - timestamp)); - } - }; -} -var throttle_default = throttle; - -// node_modules/axios/lib/helpers/speedometer.js -function speedometer(samplesCount, min) { - samplesCount = samplesCount || 10; - const bytes = new Array(samplesCount); - const timestamps = new Array(samplesCount); - let head = 0; - let tail = 0; - let firstSampleTS; - min = min !== void 0 ? min : 1e3; - return function push(chunkLength) { - const now = Date.now(); - const startedAt = timestamps[tail]; - if (!firstSampleTS) { - firstSampleTS = now; - } - bytes[head] = chunkLength; - timestamps[head] = now; - let i = tail; - let bytesCount = 0; - while (i !== head) { - bytesCount += bytes[i++]; - i = i % samplesCount; - } - head = (head + 1) % samplesCount; - if (head === tail) { - tail = (tail + 1) % samplesCount; - } - if (now - firstSampleTS < min) { - return; - } - const passed = startedAt && now - startedAt; - return passed ? Math.round(bytesCount * 1e3 / passed) : void 0; - }; -} -var speedometer_default = speedometer; - -// node_modules/axios/lib/helpers/AxiosTransformStream.js -var kInternals = Symbol("internals"); -var AxiosTransformStream = class extends import_stream.default.Transform { - constructor(options) { - options = utils_default.toFlatObject(options, { - maxRate: 0, - chunkSize: 64 * 1024, - minChunkSize: 100, - timeWindow: 500, - ticksRate: 2, - samplesCount: 15 - }, null, (prop, source) => { - return !utils_default.isUndefined(source[prop]); - }); - super({ - readableHighWaterMark: options.chunkSize - }); - const self2 = this; - const internals = this[kInternals] = { - length: options.length, - timeWindow: options.timeWindow, - ticksRate: options.ticksRate, - chunkSize: options.chunkSize, - maxRate: options.maxRate, - minChunkSize: options.minChunkSize, - bytesSeen: 0, - isCaptured: false, - notifiedBytesLoaded: 0, - ts: Date.now(), - bytes: 0, - onReadCallback: null - }; - const _speedometer = speedometer_default(internals.ticksRate * options.samplesCount, internals.timeWindow); - this.on("newListener", (event) => { - if (event === "progress") { - if (!internals.isCaptured) { - internals.isCaptured = true; - } - } - }); - let bytesNotified = 0; - internals.updateProgress = throttle_default(function throttledHandler() { - const totalBytes = internals.length; - const bytesTransferred = internals.bytesSeen; - const progressBytes = bytesTransferred - bytesNotified; - if (!progressBytes || self2.destroyed) - return; - const rate = _speedometer(progressBytes); - bytesNotified = bytesTransferred; - process.nextTick(() => { - self2.emit("progress", { - loaded: bytesTransferred, - total: totalBytes, - progress: totalBytes ? bytesTransferred / totalBytes : void 0, - bytes: progressBytes, - rate: rate ? rate : void 0, - estimated: rate && totalBytes && bytesTransferred <= totalBytes ? (totalBytes - bytesTransferred) / rate : void 0, - lengthComputable: totalBytes != null - }); - }); - }, internals.ticksRate); - const onFinish = () => { - internals.updateProgress.call(true); - }; - this.once("end", onFinish); - this.once("error", onFinish); - } - _read(size) { - const internals = this[kInternals]; - if (internals.onReadCallback) { - internals.onReadCallback(); - } - return super._read(size); - } - _transform(chunk, encoding, callback) { - const self2 = this; - const internals = this[kInternals]; - const maxRate = internals.maxRate; - const readableHighWaterMark = this.readableHighWaterMark; - const timeWindow = internals.timeWindow; - const divider = 1e3 / timeWindow; - const bytesThreshold = maxRate / divider; - const minChunkSize = internals.minChunkSize !== false ? Math.max(internals.minChunkSize, bytesThreshold * 0.01) : 0; - function pushChunk(_chunk, _callback) { - const bytes = Buffer.byteLength(_chunk); - internals.bytesSeen += bytes; - internals.bytes += bytes; - if (internals.isCaptured) { - internals.updateProgress(); - } - if (self2.push(_chunk)) { - process.nextTick(_callback); - } else { - internals.onReadCallback = () => { - internals.onReadCallback = null; - process.nextTick(_callback); - }; - } - } - const transformChunk = (_chunk, _callback) => { - const chunkSize = Buffer.byteLength(_chunk); - let chunkRemainder = null; - let maxChunkSize = readableHighWaterMark; - let bytesLeft; - let passed = 0; - if (maxRate) { - const now = Date.now(); - if (!internals.ts || (passed = now - internals.ts) >= timeWindow) { - internals.ts = now; - bytesLeft = bytesThreshold - internals.bytes; - internals.bytes = bytesLeft < 0 ? -bytesLeft : 0; - passed = 0; - } - bytesLeft = bytesThreshold - internals.bytes; - } - if (maxRate) { - if (bytesLeft <= 0) { - return setTimeout(() => { - _callback(null, _chunk); - }, timeWindow - passed); - } - if (bytesLeft < maxChunkSize) { - maxChunkSize = bytesLeft; - } - } - if (maxChunkSize && chunkSize > maxChunkSize && chunkSize - maxChunkSize > minChunkSize) { - chunkRemainder = _chunk.subarray(maxChunkSize); - _chunk = _chunk.subarray(0, maxChunkSize); - } - pushChunk(_chunk, chunkRemainder ? () => { - process.nextTick(_callback, null, chunkRemainder); - } : _callback); - }; - transformChunk(chunk, function transformNextChunk(err, _chunk) { - if (err) { - return callback(err); - } - if (_chunk) { - transformChunk(_chunk, transformNextChunk); - } else { - callback(null); - } - }); - } - setLength(length) { - this[kInternals].length = +length; - return this; - } -}; -var AxiosTransformStream_default = AxiosTransformStream; - -// node_modules/axios/lib/adapters/http.js -var import_events = __nccwpck_require__(24434); - -// node_modules/axios/lib/helpers/formDataToStream.js -var import_util = __nccwpck_require__(39023); -var import_stream2 = __nccwpck_require__(2203); - -// node_modules/axios/lib/helpers/readBlob.js -var { asyncIterator } = Symbol; -var readBlob = async function* (blob) { - if (blob.stream) { - yield* blob.stream(); - } else if (blob.arrayBuffer) { - yield await blob.arrayBuffer(); - } else if (blob[asyncIterator]) { - yield* blob[asyncIterator](); - } else { - yield blob; - } -}; -var readBlob_default = readBlob; - -// node_modules/axios/lib/helpers/formDataToStream.js -var BOUNDARY_ALPHABET = utils_default.ALPHABET.ALPHA_DIGIT + "-_"; -var textEncoder = new import_util.TextEncoder(); -var CRLF = "\r\n"; -var CRLF_BYTES = textEncoder.encode(CRLF); -var CRLF_BYTES_COUNT = 2; -var FormDataPart = class { - constructor(name, value) { - const { escapeName } = this.constructor; - const isStringValue = utils_default.isString(value); - let headers = `Content-Disposition: form-data; name="${escapeName(name)}"${!isStringValue && value.name ? `; filename="${escapeName(value.name)}"` : ""}${CRLF}`; - if (isStringValue) { - value = textEncoder.encode(String(value).replace(/\r?\n|\r\n?/g, CRLF)); - } else { - headers += `Content-Type: ${value.type || "application/octet-stream"}${CRLF}`; - } - this.headers = textEncoder.encode(headers + CRLF); - this.contentLength = isStringValue ? value.byteLength : value.size; - this.size = this.headers.byteLength + this.contentLength + CRLF_BYTES_COUNT; - this.name = name; - this.value = value; - } - async *encode() { - yield this.headers; - const { value } = this; - if (utils_default.isTypedArray(value)) { - yield value; - } else { - yield* readBlob_default(value); - } - yield CRLF_BYTES; - } - static escapeName(name) { - return String(name).replace(/[\r\n"]/g, (match) => ({ - "\r": "%0D", - "\n": "%0A", - '"': "%22" - })[match]); - } -}; -var formDataToStream = (form, headersHandler, options) => { - const { - tag = "form-data-boundary", - size = 25, - boundary = tag + "-" + utils_default.generateString(size, BOUNDARY_ALPHABET) - } = options || {}; - if (!utils_default.isFormData(form)) { - throw TypeError("FormData instance required"); - } - if (boundary.length < 1 || boundary.length > 70) { - throw Error("boundary must be 10-70 characters long"); - } - const boundaryBytes = textEncoder.encode("--" + boundary + CRLF); - const footerBytes = textEncoder.encode("--" + boundary + "--" + CRLF + CRLF); - let contentLength = footerBytes.byteLength; - const parts = Array.from(form.entries()).map(([name, value]) => { - const part = new FormDataPart(name, value); - contentLength += part.size; - return part; - }); - contentLength += boundaryBytes.byteLength * parts.length; - contentLength = utils_default.toFiniteNumber(contentLength); - const computedHeaders = { - "Content-Type": `multipart/form-data; boundary=${boundary}` - }; - if (Number.isFinite(contentLength)) { - computedHeaders["Content-Length"] = contentLength; - } - headersHandler && headersHandler(computedHeaders); - return import_stream2.Readable.from(async function* () { - for (const part of parts) { - yield boundaryBytes; - yield* part.encode(); - } - yield footerBytes; - }()); -}; -var formDataToStream_default = formDataToStream; - -// node_modules/axios/lib/helpers/ZlibHeaderTransformStream.js -var import_stream3 = __toESM(__nccwpck_require__(2203), 1); -var ZlibHeaderTransformStream = class extends import_stream3.default.Transform { - __transform(chunk, encoding, callback) { - this.push(chunk); - callback(); - } - _transform(chunk, encoding, callback) { - if (chunk.length !== 0) { - this._transform = this.__transform; - if (chunk[0] !== 120) { - const header = Buffer.alloc(2); - header[0] = 120; - header[1] = 156; - this.push(header, encoding); - } - } - this.__transform(chunk, encoding, callback); - } -}; -var ZlibHeaderTransformStream_default = ZlibHeaderTransformStream; - -// node_modules/axios/lib/helpers/callbackify.js -var callbackify = (fn, reducer) => { - return utils_default.isAsyncFn(fn) ? function(...args) { - const cb = args.pop(); - fn.apply(this, args).then((value) => { - try { - reducer ? cb(null, ...reducer(value)) : cb(null, value); - } catch (err) { - cb(err); - } - }, cb); - } : fn; -}; -var callbackify_default = callbackify; - -// node_modules/axios/lib/adapters/http.js -var zlibOptions = { - flush: import_zlib.default.constants.Z_SYNC_FLUSH, - finishFlush: import_zlib.default.constants.Z_SYNC_FLUSH -}; -var brotliOptions = { - flush: import_zlib.default.constants.BROTLI_OPERATION_FLUSH, - finishFlush: import_zlib.default.constants.BROTLI_OPERATION_FLUSH -}; -var isBrotliSupported = utils_default.isFunction(import_zlib.default.createBrotliDecompress); -var { http: httpFollow, https: httpsFollow } = import_follow_redirects.default; -var isHttps = /https:?/; -var supportedProtocols = platform_default.protocols.map((protocol) => { - return protocol + ":"; -}); -function dispatchBeforeRedirect(options, responseDetails) { - if (options.beforeRedirects.proxy) { - options.beforeRedirects.proxy(options); - } - if (options.beforeRedirects.config) { - options.beforeRedirects.config(options, responseDetails); - } -} -function setProxy(options, configProxy, location) { - let proxy = configProxy; - if (!proxy && proxy !== false) { - const proxyUrl = (0, import_proxy_from_env.getProxyForUrl)(location); - if (proxyUrl) { - proxy = new URL(proxyUrl); - } - } - if (proxy) { - if (proxy.username) { - proxy.auth = (proxy.username || "") + ":" + (proxy.password || ""); - } - if (proxy.auth) { - if (proxy.auth.username || proxy.auth.password) { - proxy.auth = (proxy.auth.username || "") + ":" + (proxy.auth.password || ""); - } - const base64 = Buffer.from(proxy.auth, "utf8").toString("base64"); - options.headers["Proxy-Authorization"] = "Basic " + base64; - } - options.headers.host = options.hostname + (options.port ? ":" + options.port : ""); - const proxyHost = proxy.hostname || proxy.host; - options.hostname = proxyHost; - options.host = proxyHost; - options.port = proxy.port; - options.path = location; - if (proxy.protocol) { - options.protocol = proxy.protocol.includes(":") ? proxy.protocol : `${proxy.protocol}:`; - } - } - options.beforeRedirects.proxy = function beforeRedirect(redirectOptions) { - setProxy(redirectOptions, configProxy, redirectOptions.href); - }; -} -var isHttpAdapterSupported = typeof process !== "undefined" && utils_default.kindOf(process) === "process"; -var wrapAsync = (asyncExecutor) => { - return new Promise((resolve, reject) => { - let onDone; - let isDone; - const done = (value, isRejected) => { - if (isDone) - return; - isDone = true; - onDone && onDone(value, isRejected); - }; - const _resolve = (value) => { - done(value); - resolve(value); - }; - const _reject = (reason) => { - done(reason, true); - reject(reason); - }; - asyncExecutor(_resolve, _reject, (onDoneHandler) => onDone = onDoneHandler).catch(_reject); - }); -}; -var resolveFamily = ({ address, family }) => { - if (!utils_default.isString(address)) { - throw TypeError("address must be a string"); - } - return { - address, - family: family || (address.indexOf(".") < 0 ? 6 : 4) - }; -}; -var buildAddressEntry = (address, family) => resolveFamily(utils_default.isObject(address) ? address : { address, family }); -var http_default = isHttpAdapterSupported && function httpAdapter(config) { - return wrapAsync(async function dispatchHttpRequest(resolve, reject, onDone) { - let { data, lookup, family } = config; - const { responseType, responseEncoding } = config; - const method = config.method.toUpperCase(); - let isDone; - let rejected = false; - let req; - if (lookup) { - const _lookup = callbackify_default(lookup, (value) => utils_default.isArray(value) ? value : [value]); - lookup = (hostname, opt, cb) => { - _lookup(hostname, opt, (err, arg0, arg1) => { - if (err) { - return cb(err); - } - const addresses = utils_default.isArray(arg0) ? arg0.map((addr) => buildAddressEntry(addr)) : [buildAddressEntry(arg0, arg1)]; - opt.all ? cb(err, addresses) : cb(err, addresses[0].address, addresses[0].family); - }); - }; - } - const emitter = new import_events.EventEmitter(); - const onFinished = () => { - if (config.cancelToken) { - config.cancelToken.unsubscribe(abort); - } - if (config.signal) { - config.signal.removeEventListener("abort", abort); - } - emitter.removeAllListeners(); - }; - onDone((value, isRejected) => { - isDone = true; - if (isRejected) { - rejected = true; - onFinished(); - } - }); - function abort(reason) { - emitter.emit("abort", !reason || reason.type ? new CanceledError_default(null, config, req) : reason); - } - emitter.once("abort", reject); - if (config.cancelToken || config.signal) { - config.cancelToken && config.cancelToken.subscribe(abort); - if (config.signal) { - config.signal.aborted ? abort() : config.signal.addEventListener("abort", abort); - } - } - const fullPath = buildFullPath(config.baseURL, config.url); - const parsed = new URL(fullPath, "http://localhost"); - const protocol = parsed.protocol || supportedProtocols[0]; - if (protocol === "data:") { - let convertedData; - if (method !== "GET") { - return settle(resolve, reject, { - status: 405, - statusText: "method not allowed", - headers: {}, - config - }); - } - try { - convertedData = fromDataURI(config.url, responseType === "blob", { - Blob: config.env && config.env.Blob - }); - } catch (err) { - throw AxiosError_default.from(err, AxiosError_default.ERR_BAD_REQUEST, config); - } - if (responseType === "text") { - convertedData = convertedData.toString(responseEncoding); - if (!responseEncoding || responseEncoding === "utf8") { - convertedData = utils_default.stripBOM(convertedData); - } - } else if (responseType === "stream") { - convertedData = import_stream4.default.Readable.from(convertedData); - } - return settle(resolve, reject, { - data: convertedData, - status: 200, - statusText: "OK", - headers: new AxiosHeaders_default(), - config - }); - } - if (supportedProtocols.indexOf(protocol) === -1) { - return reject(new AxiosError_default( - "Unsupported protocol " + protocol, - AxiosError_default.ERR_BAD_REQUEST, - config - )); - } - const headers = AxiosHeaders_default.from(config.headers).normalize(); - headers.set("User-Agent", "axios/" + VERSION, false); - const onDownloadProgress = config.onDownloadProgress; - const onUploadProgress = config.onUploadProgress; - const maxRate = config.maxRate; - let maxUploadRate = void 0; - let maxDownloadRate = void 0; - if (utils_default.isSpecCompliantForm(data)) { - const userBoundary = headers.getContentType(/boundary=([-_\w\d]{10,70})/i); - data = formDataToStream_default(data, (formHeaders) => { - headers.set(formHeaders); - }, { - tag: `axios-${VERSION}-boundary`, - boundary: userBoundary && userBoundary[1] || void 0 - }); - } else if (utils_default.isFormData(data) && utils_default.isFunction(data.getHeaders)) { - headers.set(data.getHeaders()); - if (!headers.hasContentLength()) { - try { - const knownLength = await import_util2.default.promisify(data.getLength).call(data); - Number.isFinite(knownLength) && knownLength >= 0 && headers.setContentLength(knownLength); - } catch (e) { - } - } - } else if (utils_default.isBlob(data)) { - data.size && headers.setContentType(data.type || "application/octet-stream"); - headers.setContentLength(data.size || 0); - data = import_stream4.default.Readable.from(readBlob_default(data)); - } else if (data && !utils_default.isStream(data)) { - if (Buffer.isBuffer(data)) { - } else if (utils_default.isArrayBuffer(data)) { - data = Buffer.from(new Uint8Array(data)); - } else if (utils_default.isString(data)) { - data = Buffer.from(data, "utf-8"); - } else { - return reject(new AxiosError_default( - "Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream", - AxiosError_default.ERR_BAD_REQUEST, - config - )); - } - headers.setContentLength(data.length, false); - if (config.maxBodyLength > -1 && data.length > config.maxBodyLength) { - return reject(new AxiosError_default( - "Request body larger than maxBodyLength limit", - AxiosError_default.ERR_BAD_REQUEST, - config - )); - } - } - const contentLength = utils_default.toFiniteNumber(headers.getContentLength()); - if (utils_default.isArray(maxRate)) { - maxUploadRate = maxRate[0]; - maxDownloadRate = maxRate[1]; - } else { - maxUploadRate = maxDownloadRate = maxRate; - } - if (data && (onUploadProgress || maxUploadRate)) { - if (!utils_default.isStream(data)) { - data = import_stream4.default.Readable.from(data, { objectMode: false }); - } - data = import_stream4.default.pipeline([data, new AxiosTransformStream_default({ - length: contentLength, - maxRate: utils_default.toFiniteNumber(maxUploadRate) - })], utils_default.noop); - onUploadProgress && data.on("progress", (progress) => { - onUploadProgress(Object.assign(progress, { - upload: true - })); - }); - } - let auth = void 0; - if (config.auth) { - const username = config.auth.username || ""; - const password = config.auth.password || ""; - auth = username + ":" + password; - } - if (!auth && parsed.username) { - const urlUsername = parsed.username; - const urlPassword = parsed.password; - auth = urlUsername + ":" + urlPassword; - } - auth && headers.delete("authorization"); - let path; - try { - path = buildURL( - parsed.pathname + parsed.search, - config.params, - config.paramsSerializer - ).replace(/^\?/, ""); - } catch (err) { - const customErr = new Error(err.message); - customErr.config = config; - customErr.url = config.url; - customErr.exists = true; - return reject(customErr); - } - headers.set( - "Accept-Encoding", - "gzip, compress, deflate" + (isBrotliSupported ? ", br" : ""), - false - ); - const options = { - path, - method, - headers: headers.toJSON(), - agents: { http: config.httpAgent, https: config.httpsAgent }, - auth, - protocol, - family, - beforeRedirect: dispatchBeforeRedirect, - beforeRedirects: {} - }; - !utils_default.isUndefined(lookup) && (options.lookup = lookup); - if (config.socketPath) { - options.socketPath = config.socketPath; - } else { - options.hostname = parsed.hostname; - options.port = parsed.port; - setProxy(options, config.proxy, protocol + "//" + parsed.hostname + (parsed.port ? ":" + parsed.port : "") + options.path); - } - let transport; - const isHttpsRequest = isHttps.test(options.protocol); - options.agent = isHttpsRequest ? config.httpsAgent : config.httpAgent; - if (config.transport) { - transport = config.transport; - } else if (config.maxRedirects === 0) { - transport = isHttpsRequest ? import_https.default : import_http.default; - } else { - if (config.maxRedirects) { - options.maxRedirects = config.maxRedirects; - } - if (config.beforeRedirect) { - options.beforeRedirects.config = config.beforeRedirect; - } - transport = isHttpsRequest ? httpsFollow : httpFollow; - } - if (config.maxBodyLength > -1) { - options.maxBodyLength = config.maxBodyLength; - } else { - options.maxBodyLength = Infinity; - } - if (config.insecureHTTPParser) { - options.insecureHTTPParser = config.insecureHTTPParser; - } - req = transport.request(options, function handleResponse(res) { - if (req.destroyed) - return; - const streams = [res]; - const responseLength = +res.headers["content-length"]; - if (onDownloadProgress) { - const transformStream = new AxiosTransformStream_default({ - length: utils_default.toFiniteNumber(responseLength), - maxRate: utils_default.toFiniteNumber(maxDownloadRate) - }); - onDownloadProgress && transformStream.on("progress", (progress) => { - onDownloadProgress(Object.assign(progress, { - download: true - })); - }); - streams.push(transformStream); - } - let responseStream = res; - const lastRequest = res.req || req; - if (config.decompress !== false && res.headers["content-encoding"]) { - if (method === "HEAD" || res.statusCode === 204) { - delete res.headers["content-encoding"]; - } - switch ((res.headers["content-encoding"] || "").toLowerCase()) { - case "gzip": - case "x-gzip": - case "compress": - case "x-compress": - streams.push(import_zlib.default.createUnzip(zlibOptions)); - delete res.headers["content-encoding"]; - break; - case "deflate": - streams.push(new ZlibHeaderTransformStream_default()); - streams.push(import_zlib.default.createUnzip(zlibOptions)); - delete res.headers["content-encoding"]; - break; - case "br": - if (isBrotliSupported) { - streams.push(import_zlib.default.createBrotliDecompress(brotliOptions)); - delete res.headers["content-encoding"]; - } - } - } - responseStream = streams.length > 1 ? import_stream4.default.pipeline(streams, utils_default.noop) : streams[0]; - const offListeners = import_stream4.default.finished(responseStream, () => { - offListeners(); - onFinished(); - }); - const response = { - status: res.statusCode, - statusText: res.statusMessage, - headers: new AxiosHeaders_default(res.headers), - config, - request: lastRequest - }; - if (responseType === "stream") { - response.data = responseStream; - settle(resolve, reject, response); - } else { - const responseBuffer = []; - let totalResponseBytes = 0; - responseStream.on("data", function handleStreamData(chunk) { - responseBuffer.push(chunk); - totalResponseBytes += chunk.length; - if (config.maxContentLength > -1 && totalResponseBytes > config.maxContentLength) { - rejected = true; - responseStream.destroy(); - reject(new AxiosError_default( - "maxContentLength size of " + config.maxContentLength + " exceeded", - AxiosError_default.ERR_BAD_RESPONSE, - config, - lastRequest - )); - } - }); - responseStream.on("aborted", function handlerStreamAborted() { - if (rejected) { - return; - } - const err = new AxiosError_default( - "maxContentLength size of " + config.maxContentLength + " exceeded", - AxiosError_default.ERR_BAD_RESPONSE, - config, - lastRequest - ); - responseStream.destroy(err); - reject(err); - }); - responseStream.on("error", function handleStreamError(err) { - if (req.destroyed) - return; - reject(AxiosError_default.from(err, null, config, lastRequest)); - }); - responseStream.on("end", function handleStreamEnd() { - try { - let responseData = responseBuffer.length === 1 ? responseBuffer[0] : Buffer.concat(responseBuffer); - if (responseType !== "arraybuffer") { - responseData = responseData.toString(responseEncoding); - if (!responseEncoding || responseEncoding === "utf8") { - responseData = utils_default.stripBOM(responseData); - } - } - response.data = responseData; - } catch (err) { - return reject(AxiosError_default.from(err, null, config, response.request, response)); - } - settle(resolve, reject, response); - }); - } - emitter.once("abort", (err) => { - if (!responseStream.destroyed) { - responseStream.emit("error", err); - responseStream.destroy(); - } - }); - }); - emitter.once("abort", (err) => { - reject(err); - req.destroy(err); - }); - req.on("error", function handleRequestError(err) { - reject(AxiosError_default.from(err, null, config, req)); - }); - req.on("socket", function handleRequestSocket(socket) { - socket.setKeepAlive(true, 1e3 * 60); - }); - if (config.timeout) { - const timeout = parseInt(config.timeout, 10); - if (Number.isNaN(timeout)) { - reject(new AxiosError_default( - "error trying to parse `config.timeout` to int", - AxiosError_default.ERR_BAD_OPTION_VALUE, - config, - req - )); - return; - } - req.setTimeout(timeout, function handleRequestTimeout() { - if (isDone) - return; - let timeoutErrorMessage = config.timeout ? "timeout of " + config.timeout + "ms exceeded" : "timeout exceeded"; - const transitional2 = config.transitional || transitional_default; - if (config.timeoutErrorMessage) { - timeoutErrorMessage = config.timeoutErrorMessage; - } - reject(new AxiosError_default( - timeoutErrorMessage, - transitional2.clarifyTimeoutError ? AxiosError_default.ETIMEDOUT : AxiosError_default.ECONNABORTED, - config, - req - )); - abort(); - }); - } - if (utils_default.isStream(data)) { - let ended = false; - let errored = false; - data.on("end", () => { - ended = true; - }); - data.once("error", (err) => { - errored = true; - req.destroy(err); - }); - data.on("close", () => { - if (!ended && !errored) { - abort(new CanceledError_default("Request stream has been aborted", config, req)); - } - }); - data.pipe(req); - } else { - req.end(data); - } - }); -}; - -// node_modules/axios/lib/helpers/progressEventReducer.js -var progressEventReducer_default = (listener, isDownloadStream, freq = 3) => { - let bytesNotified = 0; - const _speedometer = speedometer_default(50, 250); - return throttle_default((e) => { - const loaded = e.loaded; - const total = e.lengthComputable ? e.total : void 0; - const progressBytes = loaded - bytesNotified; - const rate = _speedometer(progressBytes); - const inRange = loaded <= total; - bytesNotified = loaded; - const data = { - loaded, - total, - progress: total ? loaded / total : void 0, - bytes: progressBytes, - rate: rate ? rate : void 0, - estimated: rate && total && inRange ? (total - loaded) / rate : void 0, - event: e, - lengthComputable: total != null - }; - data[isDownloadStream ? "download" : "upload"] = true; - listener(data); - }, freq); -}; - -// node_modules/axios/lib/helpers/isURLSameOrigin.js -var isURLSameOrigin_default = platform_default.hasStandardBrowserEnv ? ( - // Standard browser envs have full support of the APIs needed to test - // whether the request URL is of the same origin as current location. - function standardBrowserEnv() { - const msie = /(msie|trident)/i.test(navigator.userAgent); - const urlParsingNode = document.createElement("a"); - let originURL; - function resolveURL(url2) { - let href = url2; - if (msie) { - urlParsingNode.setAttribute("href", href); - href = urlParsingNode.href; - } - urlParsingNode.setAttribute("href", href); - return { - href: urlParsingNode.href, - protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, "") : "", - host: urlParsingNode.host, - search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, "") : "", - hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, "") : "", - hostname: urlParsingNode.hostname, - port: urlParsingNode.port, - pathname: urlParsingNode.pathname.charAt(0) === "/" ? urlParsingNode.pathname : "/" + urlParsingNode.pathname - }; - } - originURL = resolveURL(window.location.href); - return function isURLSameOrigin(requestURL) { - const parsed = utils_default.isString(requestURL) ? resolveURL(requestURL) : requestURL; - return parsed.protocol === originURL.protocol && parsed.host === originURL.host; - }; - }() -) : ( - // Non standard browser envs (web workers, react-native) lack needed support. - /* @__PURE__ */ function nonStandardBrowserEnv() { - return function isURLSameOrigin() { - return true; - }; - }() -); - -// node_modules/axios/lib/helpers/cookies.js -var cookies_default = platform_default.hasStandardBrowserEnv ? ( - // Standard browser envs support document.cookie - { - write(name, value, expires, path, domain, secure) { - const cookie = [name + "=" + encodeURIComponent(value)]; - utils_default.isNumber(expires) && cookie.push("expires=" + new Date(expires).toGMTString()); - utils_default.isString(path) && cookie.push("path=" + path); - utils_default.isString(domain) && cookie.push("domain=" + domain); - secure === true && cookie.push("secure"); - document.cookie = cookie.join("; "); - }, - read(name) { - const match = document.cookie.match(new RegExp("(^|;\\s*)(" + name + ")=([^;]*)")); - return match ? decodeURIComponent(match[3]) : null; - }, - remove(name) { - this.write(name, "", Date.now() - 864e5); - } - } -) : ( - // Non-standard browser env (web workers, react-native) lack needed support. - { - write() { - }, - read() { - return null; - }, - remove() { - } - } -); - -// node_modules/axios/lib/core/mergeConfig.js -var headersToObject = (thing) => thing instanceof AxiosHeaders_default ? { ...thing } : thing; -function mergeConfig(config1, config2) { - config2 = config2 || {}; - const config = {}; - function getMergedValue(target, source, caseless) { - if (utils_default.isPlainObject(target) && utils_default.isPlainObject(source)) { - return utils_default.merge.call({ caseless }, target, source); - } else if (utils_default.isPlainObject(source)) { - return utils_default.merge({}, source); - } else if (utils_default.isArray(source)) { - return source.slice(); - } - return source; - } - function mergeDeepProperties(a, b, caseless) { - if (!utils_default.isUndefined(b)) { - return getMergedValue(a, b, caseless); - } else if (!utils_default.isUndefined(a)) { - return getMergedValue(void 0, a, caseless); - } - } - function valueFromConfig2(a, b) { - if (!utils_default.isUndefined(b)) { - return getMergedValue(void 0, b); - } - } - function defaultToConfig2(a, b) { - if (!utils_default.isUndefined(b)) { - return getMergedValue(void 0, b); - } else if (!utils_default.isUndefined(a)) { - return getMergedValue(void 0, a); - } - } - function mergeDirectKeys(a, b, prop) { - if (prop in config2) { - return getMergedValue(a, b); - } else if (prop in config1) { - return getMergedValue(void 0, a); - } - } - const mergeMap = { - url: valueFromConfig2, - method: valueFromConfig2, - data: valueFromConfig2, - baseURL: defaultToConfig2, - transformRequest: defaultToConfig2, - transformResponse: defaultToConfig2, - paramsSerializer: defaultToConfig2, - timeout: defaultToConfig2, - timeoutMessage: defaultToConfig2, - withCredentials: defaultToConfig2, - withXSRFToken: defaultToConfig2, - adapter: defaultToConfig2, - responseType: defaultToConfig2, - xsrfCookieName: defaultToConfig2, - xsrfHeaderName: defaultToConfig2, - onUploadProgress: defaultToConfig2, - onDownloadProgress: defaultToConfig2, - decompress: defaultToConfig2, - maxContentLength: defaultToConfig2, - maxBodyLength: defaultToConfig2, - beforeRedirect: defaultToConfig2, - transport: defaultToConfig2, - httpAgent: defaultToConfig2, - httpsAgent: defaultToConfig2, - cancelToken: defaultToConfig2, - socketPath: defaultToConfig2, - responseEncoding: defaultToConfig2, - validateStatus: mergeDirectKeys, - headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true) - }; - utils_default.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) { - const merge2 = mergeMap[prop] || mergeDeepProperties; - const configValue = merge2(config1[prop], config2[prop], prop); - utils_default.isUndefined(configValue) && merge2 !== mergeDirectKeys || (config[prop] = configValue); - }); - return config; -} - -// node_modules/axios/lib/helpers/resolveConfig.js -var resolveConfig_default = (config) => { - const newConfig = mergeConfig({}, config); - let { data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth } = newConfig; - newConfig.headers = headers = AxiosHeaders_default.from(headers); - newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer); - if (auth) { - headers.set( - "Authorization", - "Basic " + btoa((auth.username || "") + ":" + (auth.password ? unescape(encodeURIComponent(auth.password)) : "")) - ); - } - let contentType; - if (utils_default.isFormData(data)) { - if (platform_default.hasStandardBrowserEnv || platform_default.hasStandardBrowserWebWorkerEnv) { - headers.setContentType(void 0); - } else if ((contentType = headers.getContentType()) !== false) { - const [type, ...tokens] = contentType ? contentType.split(";").map((token) => token.trim()).filter(Boolean) : []; - headers.setContentType([type || "multipart/form-data", ...tokens].join("; ")); - } - } - if (platform_default.hasStandardBrowserEnv) { - withXSRFToken && utils_default.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig)); - if (withXSRFToken || withXSRFToken !== false && isURLSameOrigin_default(newConfig.url)) { - const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies_default.read(xsrfCookieName); - if (xsrfValue) { - headers.set(xsrfHeaderName, xsrfValue); - } - } - } - return newConfig; -}; - -// node_modules/axios/lib/adapters/xhr.js -var isXHRAdapterSupported = typeof XMLHttpRequest !== "undefined"; -var xhr_default = isXHRAdapterSupported && function(config) { - return new Promise(function dispatchXhrRequest(resolve, reject) { - const _config = resolveConfig_default(config); - let requestData = _config.data; - const requestHeaders = AxiosHeaders_default.from(_config.headers).normalize(); - let { responseType } = _config; - let onCanceled; - function done() { - if (_config.cancelToken) { - _config.cancelToken.unsubscribe(onCanceled); - } - if (_config.signal) { - _config.signal.removeEventListener("abort", onCanceled); - } - } - let request = new XMLHttpRequest(); - request.open(_config.method.toUpperCase(), _config.url, true); - request.timeout = _config.timeout; - function onloadend() { - if (!request) { - return; - } - const responseHeaders = AxiosHeaders_default.from( - "getAllResponseHeaders" in request && request.getAllResponseHeaders() - ); - const responseData = !responseType || responseType === "text" || responseType === "json" ? request.responseText : request.response; - const response = { - data: responseData, - status: request.status, - statusText: request.statusText, - headers: responseHeaders, - config, - request - }; - settle(function _resolve(value) { - resolve(value); - done(); - }, function _reject(err) { - reject(err); - done(); - }, response); - request = null; - } - if ("onloadend" in request) { - request.onloadend = onloadend; - } else { - request.onreadystatechange = function handleLoad() { - if (!request || request.readyState !== 4) { - return; - } - if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf("file:") === 0)) { - return; - } - setTimeout(onloadend); - }; - } - request.onabort = function handleAbort() { - if (!request) { - return; - } - reject(new AxiosError_default("Request aborted", AxiosError_default.ECONNABORTED, _config, request)); - request = null; - }; - request.onerror = function handleError() { - reject(new AxiosError_default("Network Error", AxiosError_default.ERR_NETWORK, _config, request)); - request = null; - }; - request.ontimeout = function handleTimeout() { - let timeoutErrorMessage = _config.timeout ? "timeout of " + _config.timeout + "ms exceeded" : "timeout exceeded"; - const transitional2 = _config.transitional || transitional_default; - if (_config.timeoutErrorMessage) { - timeoutErrorMessage = _config.timeoutErrorMessage; - } - reject(new AxiosError_default( - timeoutErrorMessage, - transitional2.clarifyTimeoutError ? AxiosError_default.ETIMEDOUT : AxiosError_default.ECONNABORTED, - _config, - request - )); - request = null; - }; - requestData === void 0 && requestHeaders.setContentType(null); - if ("setRequestHeader" in request) { - utils_default.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) { - request.setRequestHeader(key, val); - }); - } - if (!utils_default.isUndefined(_config.withCredentials)) { - request.withCredentials = !!_config.withCredentials; - } - if (responseType && responseType !== "json") { - request.responseType = _config.responseType; - } - if (typeof _config.onDownloadProgress === "function") { - request.addEventListener("progress", progressEventReducer_default(_config.onDownloadProgress, true)); - } - if (typeof _config.onUploadProgress === "function" && request.upload) { - request.upload.addEventListener("progress", progressEventReducer_default(_config.onUploadProgress)); - } - if (_config.cancelToken || _config.signal) { - onCanceled = (cancel) => { - if (!request) { - return; - } - reject(!cancel || cancel.type ? new CanceledError_default(null, config, request) : cancel); - request.abort(); - request = null; - }; - _config.cancelToken && _config.cancelToken.subscribe(onCanceled); - if (_config.signal) { - _config.signal.aborted ? onCanceled() : _config.signal.addEventListener("abort", onCanceled); - } - } - const protocol = parseProtocol(_config.url); - if (protocol && platform_default.protocols.indexOf(protocol) === -1) { - reject(new AxiosError_default("Unsupported protocol " + protocol + ":", AxiosError_default.ERR_BAD_REQUEST, config)); - return; - } - request.send(requestData || null); - }); -}; - -// node_modules/axios/lib/helpers/composeSignals.js -var composeSignals = (signals, timeout) => { - let controller = new AbortController(); - let aborted; - const onabort = function(cancel) { - if (!aborted) { - aborted = true; - unsubscribe(); - const err = cancel instanceof Error ? cancel : this.reason; - controller.abort(err instanceof AxiosError_default ? err : new CanceledError_default(err instanceof Error ? err.message : err)); - } - }; - let timer = timeout && setTimeout(() => { - onabort(new AxiosError_default(`timeout ${timeout} of ms exceeded`, AxiosError_default.ETIMEDOUT)); - }, timeout); - const unsubscribe = () => { - if (signals) { - timer && clearTimeout(timer); - timer = null; - signals.forEach((signal2) => { - signal2 && (signal2.removeEventListener ? signal2.removeEventListener("abort", onabort) : signal2.unsubscribe(onabort)); - }); - signals = null; - } - }; - signals.forEach((signal2) => signal2 && signal2.addEventListener && signal2.addEventListener("abort", onabort)); - const { signal } = controller; - signal.unsubscribe = unsubscribe; - return [signal, () => { - timer && clearTimeout(timer); - timer = null; - }]; -}; -var composeSignals_default = composeSignals; - -// node_modules/axios/lib/helpers/trackStream.js -var streamChunk = function* (chunk, chunkSize) { - let len = chunk.byteLength; - if (!chunkSize || len < chunkSize) { - yield chunk; - return; - } - let pos = 0; - let end; - while (pos < len) { - end = pos + chunkSize; - yield chunk.slice(pos, end); - pos = end; - } -}; -var readBytes = async function* (iterable, chunkSize, encode3) { - for await (const chunk of iterable) { - yield* streamChunk(ArrayBuffer.isView(chunk) ? chunk : await encode3(String(chunk)), chunkSize); - } -}; -var trackStream = (stream4, chunkSize, onProgress, onFinish, encode3) => { - const iterator = readBytes(stream4, chunkSize, encode3); - let bytes = 0; - return new ReadableStream({ - type: "bytes", - async pull(controller) { - const { done, value } = await iterator.next(); - if (done) { - controller.close(); - onFinish(); - return; - } - let len = value.byteLength; - onProgress && onProgress(bytes += len); - controller.enqueue(new Uint8Array(value)); - }, - cancel(reason) { - onFinish(reason); - return iterator.return(); - } - }, { - highWaterMark: 2 - }); -}; - -// node_modules/axios/lib/adapters/fetch.js -var fetchProgressDecorator = (total, fn) => { - const lengthComputable = total != null; - return (loaded) => setTimeout(() => fn({ - lengthComputable, - total, - loaded - })); -}; -var isFetchSupported = typeof fetch === "function" && typeof Request === "function" && typeof Response === "function"; -var isReadableStreamSupported = isFetchSupported && typeof ReadableStream === "function"; -var encodeText = isFetchSupported && (typeof TextEncoder === "function" ? /* @__PURE__ */ ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) : async (str) => new Uint8Array(await new Response(str).arrayBuffer())); -var supportsRequestStream = isReadableStreamSupported && (() => { - let duplexAccessed = false; - const hasContentType = new Request(platform_default.origin, { - body: new ReadableStream(), - method: "POST", - get duplex() { - duplexAccessed = true; - return "half"; - } - }).headers.has("Content-Type"); - return duplexAccessed && !hasContentType; -})(); -var DEFAULT_CHUNK_SIZE = 64 * 1024; -var supportsResponseStream = isReadableStreamSupported && !!(() => { - try { - return utils_default.isReadableStream(new Response("").body); - } catch (err) { - } -})(); -var resolvers = { - stream: supportsResponseStream && ((res) => res.body) -}; -isFetchSupported && ((res) => { - ["text", "arrayBuffer", "blob", "formData", "stream"].forEach((type) => { - !resolvers[type] && (resolvers[type] = utils_default.isFunction(res[type]) ? (res2) => res2[type]() : (_, config) => { - throw new AxiosError_default(`Response type '${type}' is not supported`, AxiosError_default.ERR_NOT_SUPPORT, config); - }); - }); -})(new Response()); -var getBodyLength = async (body) => { - if (body == null) { - return 0; - } - if (utils_default.isBlob(body)) { - return body.size; - } - if (utils_default.isSpecCompliantForm(body)) { - return (await new Request(body).arrayBuffer()).byteLength; - } - if (utils_default.isArrayBufferView(body)) { - return body.byteLength; - } - if (utils_default.isURLSearchParams(body)) { - body = body + ""; - } - if (utils_default.isString(body)) { - return (await encodeText(body)).byteLength; - } -}; -var resolveBodyLength = async (headers, body) => { - const length = utils_default.toFiniteNumber(headers.getContentLength()); - return length == null ? getBodyLength(body) : length; -}; -var fetch_default = isFetchSupported && (async (config) => { - let { - url: url2, - method, - data, - signal, - cancelToken, - timeout, - onDownloadProgress, - onUploadProgress, - responseType, - headers, - withCredentials = "same-origin", - fetchOptions - } = resolveConfig_default(config); - responseType = responseType ? (responseType + "").toLowerCase() : "text"; - let [composedSignal, stopTimeout] = signal || cancelToken || timeout ? composeSignals_default([signal, cancelToken], timeout) : []; - let finished, request; - const onFinish = () => { - !finished && setTimeout(() => { - composedSignal && composedSignal.unsubscribe(); - }); - finished = true; - }; - let requestContentLength; - try { - if (onUploadProgress && supportsRequestStream && method !== "get" && method !== "head" && (requestContentLength = await resolveBodyLength(headers, data)) !== 0) { - let _request = new Request(url2, { - method: "POST", - body: data, - duplex: "half" - }); - let contentTypeHeader; - if (utils_default.isFormData(data) && (contentTypeHeader = _request.headers.get("content-type"))) { - headers.setContentType(contentTypeHeader); - } - if (_request.body) { - data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, fetchProgressDecorator( - requestContentLength, - progressEventReducer_default(onUploadProgress) - ), null, encodeText); - } - } - if (!utils_default.isString(withCredentials)) { - withCredentials = withCredentials ? "cors" : "omit"; - } - request = new Request(url2, { - ...fetchOptions, - signal: composedSignal, - method: method.toUpperCase(), - headers: headers.normalize().toJSON(), - body: data, - duplex: "half", - withCredentials - }); - let response = await fetch(request); - const isStreamResponse = supportsResponseStream && (responseType === "stream" || responseType === "response"); - if (supportsResponseStream && (onDownloadProgress || isStreamResponse)) { - const options = {}; - ["status", "statusText", "headers"].forEach((prop) => { - options[prop] = response[prop]; - }); - const responseContentLength = utils_default.toFiniteNumber(response.headers.get("content-length")); - response = new Response( - trackStream(response.body, DEFAULT_CHUNK_SIZE, onDownloadProgress && fetchProgressDecorator( - responseContentLength, - progressEventReducer_default(onDownloadProgress, true) - ), isStreamResponse && onFinish, encodeText), - options - ); - } - responseType = responseType || "text"; - let responseData = await resolvers[utils_default.findKey(resolvers, responseType) || "text"](response, config); - !isStreamResponse && onFinish(); - stopTimeout && stopTimeout(); - return await new Promise((resolve, reject) => { - settle(resolve, reject, { - data: responseData, - headers: AxiosHeaders_default.from(response.headers), - status: response.status, - statusText: response.statusText, - config, - request - }); - }); - } catch (err) { - onFinish(); - if (err && err.name === "TypeError" && /fetch/i.test(err.message)) { - throw Object.assign( - new AxiosError_default("Network Error", AxiosError_default.ERR_NETWORK, config, request), - { - cause: err.cause || err - } - ); - } - throw AxiosError_default.from(err, err && err.code, config, request); - } -}); - -// node_modules/axios/lib/adapters/adapters.js -var knownAdapters = { - http: http_default, - xhr: xhr_default, - fetch: fetch_default -}; -utils_default.forEach(knownAdapters, (fn, value) => { - if (fn) { - try { - Object.defineProperty(fn, "name", { value }); - } catch (e) { - } - Object.defineProperty(fn, "adapterName", { value }); - } -}); -var renderReason = (reason) => `- ${reason}`; -var isResolvedHandle = (adapter) => utils_default.isFunction(adapter) || adapter === null || adapter === false; -var adapters_default = { - getAdapter: (adapters) => { - adapters = utils_default.isArray(adapters) ? adapters : [adapters]; - const { length } = adapters; - let nameOrAdapter; - let adapter; - const rejectedReasons = {}; - for (let i = 0; i < length; i++) { - nameOrAdapter = adapters[i]; - let id; - adapter = nameOrAdapter; - if (!isResolvedHandle(nameOrAdapter)) { - adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()]; - if (adapter === void 0) { - throw new AxiosError_default(`Unknown adapter '${id}'`); - } - } - if (adapter) { - break; - } - rejectedReasons[id || "#" + i] = adapter; - } - if (!adapter) { - const reasons = Object.entries(rejectedReasons).map( - ([id, state]) => `adapter ${id} ` + (state === false ? "is not supported by the environment" : "is not available in the build") - ); - let s = length ? reasons.length > 1 ? "since :\n" + reasons.map(renderReason).join("\n") : " " + renderReason(reasons[0]) : "as no adapter specified"; - throw new AxiosError_default( - `There is no suitable adapter to dispatch the request ` + s, - "ERR_NOT_SUPPORT" - ); - } - return adapter; - }, - adapters: knownAdapters -}; - -// node_modules/axios/lib/core/dispatchRequest.js -function throwIfCancellationRequested(config) { - if (config.cancelToken) { - config.cancelToken.throwIfRequested(); - } - if (config.signal && config.signal.aborted) { - throw new CanceledError_default(null, config); - } -} -function dispatchRequest(config) { - throwIfCancellationRequested(config); - config.headers = AxiosHeaders_default.from(config.headers); - config.data = transformData.call( - config, - config.transformRequest - ); - if (["post", "put", "patch"].indexOf(config.method) !== -1) { - config.headers.setContentType("application/x-www-form-urlencoded", false); - } - const adapter = adapters_default.getAdapter(config.adapter || defaults_default.adapter); - return adapter(config).then(function onAdapterResolution(response) { - throwIfCancellationRequested(config); - response.data = transformData.call( - config, - config.transformResponse, - response - ); - response.headers = AxiosHeaders_default.from(response.headers); - return response; - }, function onAdapterRejection(reason) { - if (!isCancel(reason)) { - throwIfCancellationRequested(config); - if (reason && reason.response) { - reason.response.data = transformData.call( - config, - config.transformResponse, - reason.response - ); - reason.response.headers = AxiosHeaders_default.from(reason.response.headers); - } - } - return Promise.reject(reason); - }); -} - -// node_modules/axios/lib/helpers/validator.js -var validators = {}; -["object", "boolean", "number", "function", "string", "symbol"].forEach((type, i) => { - validators[type] = function validator(thing) { - return typeof thing === type || "a" + (i < 1 ? "n " : " ") + type; - }; -}); -var deprecatedWarnings = {}; -validators.transitional = function transitional(validator, version, message) { - function formatMessage(opt, desc) { - return "[Axios v" + VERSION + "] Transitional option '" + opt + "'" + desc + (message ? ". " + message : ""); - } - return (value, opt, opts) => { - if (validator === false) { - throw new AxiosError_default( - formatMessage(opt, " has been removed" + (version ? " in " + version : "")), - AxiosError_default.ERR_DEPRECATED - ); - } - if (version && !deprecatedWarnings[opt]) { - deprecatedWarnings[opt] = true; - console.warn( - formatMessage( - opt, - " has been deprecated since v" + version + " and will be removed in the near future" - ) - ); - } - return validator ? validator(value, opt, opts) : true; - }; -}; -function assertOptions(options, schema, allowUnknown) { - if (typeof options !== "object") { - throw new AxiosError_default("options must be an object", AxiosError_default.ERR_BAD_OPTION_VALUE); - } - const keys = Object.keys(options); - let i = keys.length; - while (i-- > 0) { - const opt = keys[i]; - const validator = schema[opt]; - if (validator) { - const value = options[opt]; - const result = value === void 0 || validator(value, opt, options); - if (result !== true) { - throw new AxiosError_default("option " + opt + " must be " + result, AxiosError_default.ERR_BAD_OPTION_VALUE); - } - continue; - } - if (allowUnknown !== true) { - throw new AxiosError_default("Unknown option " + opt, AxiosError_default.ERR_BAD_OPTION); - } - } -} -var validator_default = { - assertOptions, - validators -}; - -// node_modules/axios/lib/core/Axios.js -var validators2 = validator_default.validators; -var Axios = class { - constructor(instanceConfig) { - this.defaults = instanceConfig; - this.interceptors = { - request: new InterceptorManager_default(), - response: new InterceptorManager_default() - }; - } - /** - * Dispatch a request - * - * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults) - * @param {?Object} config - * - * @returns {Promise} The Promise to be fulfilled - */ - async request(configOrUrl, config) { - try { - return await this._request(configOrUrl, config); - } catch (err) { - if (err instanceof Error) { - let dummy; - Error.captureStackTrace ? Error.captureStackTrace(dummy = {}) : dummy = new Error(); - const stack = dummy.stack ? dummy.stack.replace(/^.+\n/, "") : ""; - try { - if (!err.stack) { - err.stack = stack; - } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\n.+\n/, ""))) { - err.stack += "\n" + stack; - } - } catch (e) { - } - } - throw err; - } - } - _request(configOrUrl, config) { - if (typeof configOrUrl === "string") { - config = config || {}; - config.url = configOrUrl; - } else { - config = configOrUrl || {}; - } - config = mergeConfig(this.defaults, config); - const { transitional: transitional2, paramsSerializer, headers } = config; - if (transitional2 !== void 0) { - validator_default.assertOptions(transitional2, { - silentJSONParsing: validators2.transitional(validators2.boolean), - forcedJSONParsing: validators2.transitional(validators2.boolean), - clarifyTimeoutError: validators2.transitional(validators2.boolean) - }, false); - } - if (paramsSerializer != null) { - if (utils_default.isFunction(paramsSerializer)) { - config.paramsSerializer = { - serialize: paramsSerializer - }; - } else { - validator_default.assertOptions(paramsSerializer, { - encode: validators2.function, - serialize: validators2.function - }, true); - } - } - config.method = (config.method || this.defaults.method || "get").toLowerCase(); - let contextHeaders = headers && utils_default.merge( - headers.common, - headers[config.method] - ); - headers && utils_default.forEach( - ["delete", "get", "head", "post", "put", "patch", "common"], - (method) => { - delete headers[method]; - } - ); - config.headers = AxiosHeaders_default.concat(contextHeaders, headers); - const requestInterceptorChain = []; - let synchronousRequestInterceptors = true; - this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) { - if (typeof interceptor.runWhen === "function" && interceptor.runWhen(config) === false) { - return; - } - synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous; - requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected); - }); - const responseInterceptorChain = []; - this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) { - responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected); - }); - let promise; - let i = 0; - let len; - if (!synchronousRequestInterceptors) { - const chain = [dispatchRequest.bind(this), void 0]; - chain.unshift.apply(chain, requestInterceptorChain); - chain.push.apply(chain, responseInterceptorChain); - len = chain.length; - promise = Promise.resolve(config); - while (i < len) { - promise = promise.then(chain[i++], chain[i++]); - } - return promise; - } - len = requestInterceptorChain.length; - let newConfig = config; - i = 0; - while (i < len) { - const onFulfilled = requestInterceptorChain[i++]; - const onRejected = requestInterceptorChain[i++]; - try { - newConfig = onFulfilled(newConfig); - } catch (error) { - onRejected.call(this, error); - break; - } - } - try { - promise = dispatchRequest.call(this, newConfig); - } catch (error) { - return Promise.reject(error); - } - i = 0; - len = responseInterceptorChain.length; - while (i < len) { - promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]); - } - return promise; - } - getUri(config) { - config = mergeConfig(this.defaults, config); - const fullPath = buildFullPath(config.baseURL, config.url); - return buildURL(fullPath, config.params, config.paramsSerializer); - } -}; -utils_default.forEach(["delete", "get", "head", "options"], function forEachMethodNoData(method) { - Axios.prototype[method] = function(url2, config) { - return this.request(mergeConfig(config || {}, { - method, - url: url2, - data: (config || {}).data - })); - }; -}); -utils_default.forEach(["post", "put", "patch"], function forEachMethodWithData(method) { - function generateHTTPMethod(isForm) { - return function httpMethod(url2, data, config) { - return this.request(mergeConfig(config || {}, { - method, - headers: isForm ? { - "Content-Type": "multipart/form-data" - } : {}, - url: url2, - data - })); - }; - } - Axios.prototype[method] = generateHTTPMethod(); - Axios.prototype[method + "Form"] = generateHTTPMethod(true); -}); -var Axios_default = Axios; - -// node_modules/axios/lib/cancel/CancelToken.js -var CancelToken = class _CancelToken { - constructor(executor) { - if (typeof executor !== "function") { - throw new TypeError("executor must be a function."); - } - let resolvePromise; - this.promise = new Promise(function promiseExecutor(resolve) { - resolvePromise = resolve; - }); - const token = this; - this.promise.then((cancel) => { - if (!token._listeners) - return; - let i = token._listeners.length; - while (i-- > 0) { - token._listeners[i](cancel); - } - token._listeners = null; - }); - this.promise.then = (onfulfilled) => { - let _resolve; - const promise = new Promise((resolve) => { - token.subscribe(resolve); - _resolve = resolve; - }).then(onfulfilled); - promise.cancel = function reject() { - token.unsubscribe(_resolve); - }; - return promise; - }; - executor(function cancel(message, config, request) { - if (token.reason) { - return; - } - token.reason = new CanceledError_default(message, config, request); - resolvePromise(token.reason); - }); - } - /** - * Throws a `CanceledError` if cancellation has been requested. - */ - throwIfRequested() { - if (this.reason) { - throw this.reason; - } - } - /** - * Subscribe to the cancel signal - */ - subscribe(listener) { - if (this.reason) { - listener(this.reason); - return; - } - if (this._listeners) { - this._listeners.push(listener); - } else { - this._listeners = [listener]; - } - } - /** - * Unsubscribe from the cancel signal - */ - unsubscribe(listener) { - if (!this._listeners) { - return; - } - const index = this._listeners.indexOf(listener); - if (index !== -1) { - this._listeners.splice(index, 1); - } - } - /** - * Returns an object that contains a new `CancelToken` and a function that, when called, - * cancels the `CancelToken`. - */ - static source() { - let cancel; - const token = new _CancelToken(function executor(c) { - cancel = c; - }); - return { - token, - cancel - }; - } -}; -var CancelToken_default = CancelToken; - -// node_modules/axios/lib/helpers/spread.js -function spread(callback) { - return function wrap(arr) { - return callback.apply(null, arr); - }; -} - -// node_modules/axios/lib/helpers/isAxiosError.js -function isAxiosError(payload) { - return utils_default.isObject(payload) && payload.isAxiosError === true; -} - -// node_modules/axios/lib/helpers/HttpStatusCode.js -var HttpStatusCode = { - Continue: 100, - SwitchingProtocols: 101, - Processing: 102, - EarlyHints: 103, - Ok: 200, - Created: 201, - Accepted: 202, - NonAuthoritativeInformation: 203, - NoContent: 204, - ResetContent: 205, - PartialContent: 206, - MultiStatus: 207, - AlreadyReported: 208, - ImUsed: 226, - MultipleChoices: 300, - MovedPermanently: 301, - Found: 302, - SeeOther: 303, - NotModified: 304, - UseProxy: 305, - Unused: 306, - TemporaryRedirect: 307, - PermanentRedirect: 308, - BadRequest: 400, - Unauthorized: 401, - PaymentRequired: 402, - Forbidden: 403, - NotFound: 404, - MethodNotAllowed: 405, - NotAcceptable: 406, - ProxyAuthenticationRequired: 407, - RequestTimeout: 408, - Conflict: 409, - Gone: 410, - LengthRequired: 411, - PreconditionFailed: 412, - PayloadTooLarge: 413, - UriTooLong: 414, - UnsupportedMediaType: 415, - RangeNotSatisfiable: 416, - ExpectationFailed: 417, - ImATeapot: 418, - MisdirectedRequest: 421, - UnprocessableEntity: 422, - Locked: 423, - FailedDependency: 424, - TooEarly: 425, - UpgradeRequired: 426, - PreconditionRequired: 428, - TooManyRequests: 429, - RequestHeaderFieldsTooLarge: 431, - UnavailableForLegalReasons: 451, - InternalServerError: 500, - NotImplemented: 501, - BadGateway: 502, - ServiceUnavailable: 503, - GatewayTimeout: 504, - HttpVersionNotSupported: 505, - VariantAlsoNegotiates: 506, - InsufficientStorage: 507, - LoopDetected: 508, - NotExtended: 510, - NetworkAuthenticationRequired: 511 -}; -Object.entries(HttpStatusCode).forEach(([key, value]) => { - HttpStatusCode[value] = key; -}); -var HttpStatusCode_default = HttpStatusCode; - -// node_modules/axios/lib/axios.js -function createInstance(defaultConfig) { - const context = new Axios_default(defaultConfig); - const instance = bind(Axios_default.prototype.request, context); - utils_default.extend(instance, Axios_default.prototype, context, { allOwnKeys: true }); - utils_default.extend(instance, context, null, { allOwnKeys: true }); - instance.create = function create(instanceConfig) { - return createInstance(mergeConfig(defaultConfig, instanceConfig)); - }; - return instance; -} -var axios = createInstance(defaults_default); -axios.Axios = Axios_default; -axios.CanceledError = CanceledError_default; -axios.CancelToken = CancelToken_default; -axios.isCancel = isCancel; -axios.VERSION = VERSION; -axios.toFormData = toFormData_default; -axios.AxiosError = AxiosError_default; -axios.Cancel = axios.CanceledError; -axios.all = function all(promises) { - return Promise.all(promises); -}; -axios.spread = spread; -axios.isAxiosError = isAxiosError; -axios.mergeConfig = mergeConfig; -axios.AxiosHeaders = AxiosHeaders_default; -axios.formToJSON = (thing) => formDataToJSON_default(utils_default.isHTMLForm(thing) ? new FormData(thing) : thing); -axios.getAdapter = adapters_default.getAdapter; -axios.HttpStatusCode = HttpStatusCode_default; -axios.default = axios; -var axios_default = axios; - -// node_modules/axios/index.js -var { - Axios: Axios2, - AxiosError: AxiosError2, - CanceledError: CanceledError2, - isCancel: isCancel2, - CancelToken: CancelToken2, - VERSION: VERSION2, - all: all2, - Cancel, - isAxiosError: isAxiosError2, - spread: spread2, - toFormData: toFormData2, - AxiosHeaders: AxiosHeaders2, - HttpStatusCode: HttpStatusCode2, - formToJSON, - getAdapter, - mergeConfig: mergeConfig2 -} = axios_default; - -// types/rpc-service.ts -var rpcBody = JSON.stringify({ - jsonrpc: "2.0", - method: "eth_getBlockByNumber", - params: ["latest", false], - id: 1 -}); -var RPCService = class _RPCService { - static async makeRpcRequest(rpcUrl, rpcTimeout, rpcHeader) { - const instance = axios_default.create({ - timeout: rpcTimeout, - headers: rpcHeader - }); - const startTime = performance.now(); - try { - await instance.post(rpcUrl, rpcBody); - return { - rpcUrl, - duration: performance.now() - startTime, - success: true - }; - } catch (err) { - if (err instanceof AxiosError2) { - const isTimeout = err.code === "ECONNABORTED"; - return { - rpcUrl, - success: false, - duration: isTimeout ? performance.now() - startTime : 0, - error: isTimeout ? "timeout" : err.message - }; - } - return { - rpcUrl, - success: false, - duration: 0, - error: `${err}` - }; - } - } - static async testRpcPerformance(networkId, latencies, runtimeRpcs, rpcHeader, rpcTimeout) { - async function requestEndpoint(rpcUrl) { - try { - return await _RPCService.makeRpcRequest(rpcUrl, rpcTimeout, rpcHeader); - } catch (err) { - console.error(`Failed to reach endpoint. ${err}`); - throw new Error(rpcUrl); - } - } - const promises = runtimeRpcs.map((rpcUrl) => requestEndpoint(rpcUrl)); - const allResults = await Promise.allSettled(promises); - allResults.forEach((result) => { - if (result.status === "fulfilled" && result.value.success) { - latencies[`${networkId}__${result.value.rpcUrl}`] = result.value.duration; - } else if (result.status === "fulfilled") { - const fulfilledResult = result.value; - const index = runtimeRpcs.indexOf(fulfilledResult.rpcUrl); - if (index > -1) { - runtimeRpcs.splice(index, 1); - } - } - }); - return { latencies, runtimeRpcs }; - } - static async findFastestRpc(latencies, networkId) { - try { - const validLatencies = Object.entries(latencies).filter(([key]) => key.startsWith(`${networkId}__`)).reduce( - (acc, [key, value]) => { - acc[key] = value; - return acc; - }, - {} - ); - return Object.keys(validLatencies).reduce((a, b) => validLatencies[a] < validLatencies[b] ? a : b).split("__")[1]; - } catch (error) { - console.error("[RPCService] Failed to find fastest RPC", error); - return null; - } - } - static _verifyBlock(data) { - try { - const { jsonrpc, id, result } = data; - const { number, timestamp, hash } = result; - return jsonrpc === "2.0" && id === 1 && parseInt(number, 16) > 0 && parseInt(timestamp, 16) > 0 && hash.match(/[0-9|a-f|A-F|x]/gm)?.join("").length === 66; - } catch (error) { - return false; - } - } -}; - -// types/storage-service.ts -var StorageService = class { - static getLatencies(env, networkId) { - if (env === "browser") { - if (this.bypassForTests()) - return {}; - const latencies = JSON.parse(localStorage.getItem("rpcLatencies") || "{}"); - return Object.keys(latencies).reduce((acc, key) => { - if (key.startsWith(`${networkId}__`)) { - acc[key] = latencies[key]; - } - return acc; - }, {}); - } - return {}; - } - static getRefreshLatencies(env) { - if (env === "browser") { - if (this.bypassForTests()) - return 0; - const refresh = JSON.parse(localStorage.getItem("refreshLatencies") || "0"); - if (typeof refresh === "number") { - return refresh; - } else { - return 0; - } - } - return 0; - } - static setLatencies(env, latencies) { - if (env === "browser") { - if (this.bypassForTests()) - return; - localStorage.setItem("rpcLatencies", JSON.stringify(latencies)); - } - } - static setRefreshLatencies(env, refreshLatencies) { - if (env === "browser") { - if (this.bypassForTests()) - return; - localStorage.setItem("refreshLatencies", JSON.stringify(refreshLatencies)); - } - } - // This method is only used for env detection testing - static bypassForTests() { - if (typeof localStorage === "undefined") { - console.log("Passing test because localStorage is not defined."); - return true; - } - } -}; - -// types/rpc-handler.ts -var NO_RPCS_AVAILABLE = "No RPCs available"; -function shuffleArray(array) { - for (let i = array.length - 1; i > 0; i--) { - const j = Math.floor(Math.random() * (i + 1)); - [array[i], array[j]] = [array[j], array[i]]; - } -} -var RPCHandler = class _RPCHandler { - static _instance = null; - _provider = null; - _networkId; - _networkName; - _env = "node"; - _rpcTimeout = Number.MAX_SAFE_INTEGER; - // ms - _cacheRefreshCycles = 10; - _refreshLatencies = 0; - _autoStorage = false; - _runtimeRpcs = []; - _latencies = {}; - _networkRpcs; - _proxySettings = { - disabled: false, - retryCount: 3, - retryDelay: 100, - logTier: "ok", - logger: new PrettyLogs(), - strictLogs: true, - moduleName: "RPCHandler" - }; - constructor(config) { - this._networkId = config.networkId; - this._networkRpcs = this._filterRpcs(networkRpcs[this._networkId].rpcs, config.tracking || "yes"); - this._networkName = networkIds[this._networkId]; - this._initialize(config); - this.log.bind(this); - this.metadataMaker.bind(this); - this.createProviderProxy.bind(this); - this.getProvider.bind(this); - this.getFastestRpcProvider.bind(this); - this.getLatencies.bind(this); - this.getRefreshLatencies.bind(this); - this.getCacheRefreshCycles.bind(this); - this.getRuntimeRpcs.bind(this); - this.getNetworkId.bind(this); - this.getNetworkName.bind(this); - this.getNetworkRpcs.bind(this); - this.testRpcPerformance.bind(this); - } - /** - * Loops through all RPCs for a given network id and returns a provider with the first successful network. - */ - async getFirstAvailableRpcProvider() { - const rpcList = [...networkRpcs[this._networkId].rpcs]; - shuffleArray(rpcList); - for (const rpc of rpcList) { - try { - const result = await RPCService.makeRpcRequest(rpc.url, this._rpcTimeout, { "Content-Type": "application/json" }); - if (result.success) { - return new import_providers.JsonRpcProvider({ url: rpc.url, skipFetchSetup: true }, Number(this._networkId)); - } else { - console.error(`Failed to reach endpoint ${rpc.url}. ${result.error}`); - } - } catch (err) { - console.error(`Failed to reach endpoint ${rpc.url}. ${err}`); - } - } - return null; - } - async getFastestRpcProvider() { - let fastest = await this.testRpcPerformance(); - if (fastest && fastest?.connection.url.includes("localhost") && !(this._networkId === "31337" || this._networkId === "1337")) { - fastest = await this.testRpcPerformance(); - } - this._provider = this.createProviderProxy(fastest, this); - this.log("ok", `[${this.proxySettings.moduleName}] Provider initialized: `, { provider: this._provider?.connection.url }); - this.log("info", `[${this.proxySettings.moduleName}]`, { latencies: this._latencies }); - return this._provider; - } - get proxySettings() { - return this._proxySettings; - } - set proxySettings(value) { - this._proxySettings = value; - } - /** - * Creates a Proxy around the JsonRpcProvider to handle retries and logging - * - * If proxySettings.disabled, it will return the provider as is and - * any retry or RPC reselection logic will be down to the user to implement - */ - createProviderProxy(provider, handler) { - if (this.proxySettings.disabled) - return provider; - return new Proxy(provider, { - get: function(target, prop) { - if (typeof target[prop] !== "function") { - return target[prop]; - } - if (typeof target[prop] === "function") { - return async function(...args) { - try { - const response = await target[prop](...args); - if (response) { - handler.log( - "verbose", - `[${handler.proxySettings.moduleName}] Successfully called provider method ${prop}`, - handler.metadataMaker(response, prop, args, { rpc: target.connection.url }) - ); - return response; - } - } catch (e) { - handler.log( - "error", - `[${handler.proxySettings.moduleName}] Failed to call provider method ${prop}, retrying...`, - handler.metadataMaker(e, prop, args, { rpc: target.connection.url }) - ); - } - const latencies = handler.getLatencies(); - const sortedLatencies = Object.entries(latencies).sort((a, b) => a[1] - b[1]); - if (!sortedLatencies.length) { - throw handler.log( - "fatal", - `[${handler.proxySettings.moduleName}] ${NO_RPCS_AVAILABLE}`, - handler.metadataMaker(new Error(NO_RPCS_AVAILABLE), "createProviderProxy", args, { sortedLatencies, networks: handler._networkRpcs }) - ); - } - handler.log( - "debug", - `[${handler.proxySettings.moduleName}] Current provider failed, retrying with next fastest provider...`, - handler.metadataMaker({}, prop, args) - ); - let loops = handler._proxySettings.retryCount; - let newProvider; - let res = null; - while (loops > 0) { - for (const [rpc] of sortedLatencies) { - handler.log("debug", `[${handler.proxySettings.moduleName}] Connected to: ${rpc}`); - try { - newProvider = new import_providers.JsonRpcProvider( - { - url: rpc.split("__")[1], - skipFetchSetup: true - }, - Number(handler._networkId) - ); - const response = await newProvider[prop](...args); - if (response) { - handler.log( - "verbose", - `[${handler.proxySettings.moduleName}] Successfully called provider method ${prop}`, - handler.metadataMaker(response, prop, args, { rpc }) - ); - res = response; - loops = 0; - } - } catch (e) { - if (loops === 1) { - handler.log( - "fatal", - `[${handler.proxySettings.moduleName}] Failed to call provider method ${prop} after ${handler._proxySettings.retryCount} attempts`, - handler.metadataMaker(e, prop, args) - ); - throw e; - } else { - handler.log("debug", `[${handler.proxySettings.moduleName}] Retrying in ${handler._proxySettings.retryDelay}ms...`); - handler.log("debug", `[${handler.proxySettings.moduleName}] Call number: ${handler._proxySettings.retryCount - loops + 1}`); - await new Promise((resolve) => setTimeout(resolve, handler._proxySettings.retryDelay)); - } - } - } - if (res) { - break; - } - loops--; - } - return res; - }; - } - return target[prop]; - } - }); - } - /** - * runtimeRpcs are prefixed with the networkId so - * they need to be stripped before being used - */ - populateRuntimeFromNetwork(networkRpcs2) { - return networkRpcs2.map((rpc) => { - if (rpc.startsWith(`${this._networkId}__`)) { - return rpc.split("__")[1]; - } - return rpc; - }); - } - async testRpcPerformance() { - const shouldRefreshRpcs = Object.keys(this._latencies).filter((rpc) => rpc.startsWith(`${this._networkId}__`)).length <= 1 || this._refreshLatencies >= this._cacheRefreshCycles; - if (shouldRefreshRpcs) { - this._runtimeRpcs = getRpcUrls(this._networkRpcs); - this._refreshLatencies = 0; - } else if (this._latencies && Object.keys(this._latencies).length > 0) { - this._runtimeRpcs = this.populateRuntimeFromNetwork(Object.keys(this._latencies)); - } else if (this._runtimeRpcs.length === 0) { - this._runtimeRpcs = getRpcUrls(this._networkRpcs); - } - await this._testRpcPerformance(); - const fastestRpcUrl = await RPCService.findFastestRpc(this._latencies, this._networkId); - if (!fastestRpcUrl) { - throw this.log( - "fatal", - `[${this.proxySettings.moduleName}] Failed to find fastest RPC`, - this.metadataMaker(new Error(NO_RPCS_AVAILABLE), "testRpcPerformance", [], { latencies: this._latencies, networkId: this._networkId }) - ); - } - this._provider = this.createProviderProxy(new import_providers.JsonRpcProvider({ url: fastestRpcUrl, skipFetchSetup: true }, Number(this._networkId)), this); - if (this._autoStorage) { - StorageService.setLatencies(this._env, this._latencies); - StorageService.setRefreshLatencies(this._env, this._refreshLatencies); - } - if (!this._provider) { - throw this.log( - "fatal", - `[${this.proxySettings.moduleName}] Failed to create provider`, - this.metadataMaker(new Error("No provider available"), "testRpcPerformance", [], { - latencies: this._latencies, - fastestRpcUrl - }) - ); - } - return this._provider; - } - getProvider() { - if (!this._provider) { - throw this.log( - "fatal", - `[${this.proxySettings.moduleName}] Provider is not initialized`, - this.metadataMaker(new Error("Provider is not initialized"), "getProvider", [], { - networkRpcs: this._networkRpcs, - runtimeRpcs: this._runtimeRpcs, - latencies: this._latencies - }) - ); - } - return this._provider; - } - static getInstance(config) { - if (!_RPCHandler._instance) { - if (!config) { - throw new Error("Config is required to initialize RPCHandler"); - } - _RPCHandler._instance = new _RPCHandler(config); - } - return _RPCHandler._instance; - } - clearInstance() { - _RPCHandler._instance = null; - } - getRuntimeRpcs() { - return this._runtimeRpcs; - } - getNetworkId() { - return this._networkId; - } - getNetworkName() { - return this._networkName; - } - getNetworkRpcs() { - return this._networkRpcs; - } - getLatencies() { - return this._latencies; - } - getRefreshLatencies() { - return this._refreshLatencies; - } - getCacheRefreshCycles() { - return this._cacheRefreshCycles; - } - async _testRpcPerformance() { - const { latencies, runtimeRpcs } = await RPCService.testRpcPerformance( - this._networkId, - this._latencies, - this._runtimeRpcs, - { "Content-Type": "application/json" }, - this._rpcTimeout - ); - this._runtimeRpcs = runtimeRpcs; - this._latencies = latencies; - this._refreshLatencies++; - StorageService.setLatencies(this._env, this._latencies); - StorageService.setRefreshLatencies(this._env, this._refreshLatencies); - } - // creates metadata for logging - metadataMaker(error, method, args, metadata) { - const err = error instanceof Error ? error : void 0; - if (err) { - return { - error: err, - method, - args, - metadata - }; - } else { - return { - method, - args, - metadata - }; - } - } - log(tier, message, metadata) { - if (!this._proxySettings?.logger) { - this.proxySettings.logger = new PrettyLogs(); - } - let logTier = this._proxySettings?.logTier; - if (!logTier) { - this.proxySettings.logTier = "ok"; - logTier = this.proxySettings.logTier; - } else if (logTier === "none") { - return; - } - const isStrict = this.proxySettings.strictLogs; - if (isStrict && logTier === tier) { - this.proxySettings.logger?.[tier](message, metadata); - } else if (logTier === "verbose" || !isStrict) { - this.proxySettings.logger?.log(tier, message, metadata); - } - } - _updateConfig(config) { - if (config.proxySettings) { - this._proxySettings = { - ...this._proxySettings, - ...config.proxySettings, - // ensuring the logger is not null - logger: config.proxySettings.logger || this.proxySettings.logger, - // ensuring the logTier is not null - logTier: config.proxySettings.logTier || this.proxySettings.logTier - }; - } - if (config.networkName) { - this._networkName = config.networkName; - } - if (config.cacheRefreshCycles) { - this._cacheRefreshCycles = config.cacheRefreshCycles; - } - if (config.rpcTimeout) { - this._rpcTimeout = config.rpcTimeout; - } - if (config.autoStorage) { - this._autoStorage = true; - this._latencies = StorageService.getLatencies(this._env, this._networkId); - this._refreshLatencies = StorageService.getRefreshLatencies(this._env); - } - } - _filterRpcs(networks, tracking) { - return networks.filter((rpc) => { - if (tracking == "yes") { - return true; - } else if (tracking == "limited") { - return rpc.tracking == "limited" || rpc.tracking == "none"; - } else if (tracking == "none") { - return rpc.tracking == "none"; - } - return false; - }); - } - _initialize(config) { - this._env = typeof window === "undefined" ? "node" : "browser"; - if (config.networkRpcs && config.networkRpcs.length > 0) { - if (this._networkId === "31337" || this._networkId === "1337") { - this._networkRpcs = [{ url: LOCAL_HOST }, { url: LOCAL_HOST_2 }]; - } else if (this._networkRpcs?.length > 0) { - this._networkRpcs = [...this._networkRpcs, ...config.networkRpcs]; - } else { - this._networkRpcs = config.networkRpcs; - } - } - if (config.runtimeRpcs && config.runtimeRpcs.length > 0) { - if (this._networkId === "31337" || this._networkId === "1337") { - this._runtimeRpcs = [`${LOCAL_HOST}`, `${LOCAL_HOST_2}`, ...config.runtimeRpcs]; - } else if (this._runtimeRpcs?.length > 0) { - this._runtimeRpcs = [...this._runtimeRpcs, ...config.runtimeRpcs]; - } else { - this._runtimeRpcs = config.runtimeRpcs; - } - } - this._updateConfig(config); - } -}; -// Annotate the CommonJS export names for ESM import in node: -0 && (0); -/*! Bundled license information: - -js-sha3/src/sha3.js: - (** - * [js-sha3]{@link https://github.com/emn178/js-sha3} - * - * @version 0.8.0 - * @author Chen, Yi-Cyuan [emn178@gmail.com] - * @copyright Chen, Yi-Cyuan 2015-2018 - * @license MIT - *) - -mime-db/index.js: - (*! - * mime-db - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2015-2022 Douglas Christopher Wilson - * MIT Licensed - *) - -mime-types/index.js: - (*! - * mime-types - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2015 Douglas Christopher Wilson - * MIT Licensed - *) -*/ - - -/***/ }), - -/***/ 92140: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.version = void 0; -exports.version = "ethers/5.7.2"; -//# sourceMappingURL=_version.js.map - -/***/ }), - -/***/ 18778: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Wordlist = exports.version = exports.wordlists = exports.utils = exports.logger = exports.errors = exports.constants = exports.FixedNumber = exports.BigNumber = exports.ContractFactory = exports.Contract = exports.BaseContract = exports.providers = exports.getDefaultProvider = exports.VoidSigner = exports.Wallet = exports.Signer = void 0; -var contracts_1 = __nccwpck_require__(98322); -Object.defineProperty(exports, "BaseContract", ({ enumerable: true, get: function () { return contracts_1.BaseContract; } })); -Object.defineProperty(exports, "Contract", ({ enumerable: true, get: function () { return contracts_1.Contract; } })); -Object.defineProperty(exports, "ContractFactory", ({ enumerable: true, get: function () { return contracts_1.ContractFactory; } })); -var bignumber_1 = __nccwpck_require__(18202); -Object.defineProperty(exports, "BigNumber", ({ enumerable: true, get: function () { return bignumber_1.BigNumber; } })); -Object.defineProperty(exports, "FixedNumber", ({ enumerable: true, get: function () { return bignumber_1.FixedNumber; } })); -var abstract_signer_1 = __nccwpck_require__(53870); -Object.defineProperty(exports, "Signer", ({ enumerable: true, get: function () { return abstract_signer_1.Signer; } })); -Object.defineProperty(exports, "VoidSigner", ({ enumerable: true, get: function () { return abstract_signer_1.VoidSigner; } })); -var wallet_1 = __nccwpck_require__(30806); -Object.defineProperty(exports, "Wallet", ({ enumerable: true, get: function () { return wallet_1.Wallet; } })); -var constants = __importStar(__nccwpck_require__(99848)); -exports.constants = constants; -var providers = __importStar(__nccwpck_require__(74983)); -exports.providers = providers; -var providers_1 = __nccwpck_require__(74983); -Object.defineProperty(exports, "getDefaultProvider", ({ enumerable: true, get: function () { return providers_1.getDefaultProvider; } })); -var wordlists_1 = __nccwpck_require__(78168); -Object.defineProperty(exports, "Wordlist", ({ enumerable: true, get: function () { return wordlists_1.Wordlist; } })); -Object.defineProperty(exports, "wordlists", ({ enumerable: true, get: function () { return wordlists_1.wordlists; } })); -var utils = __importStar(__nccwpck_require__(73446)); -exports.utils = utils; -var logger_1 = __nccwpck_require__(76127); -Object.defineProperty(exports, "errors", ({ enumerable: true, get: function () { return logger_1.ErrorCode; } })); -//////////////////////// -// Compile-Time Constants -// This is generated by "npm run dist" -var _version_1 = __nccwpck_require__(92140); -Object.defineProperty(exports, "version", ({ enumerable: true, get: function () { return _version_1.version; } })); -var logger = new logger_1.Logger(_version_1.version); -exports.logger = logger; -//# sourceMappingURL=ethers.js.map - -/***/ }), - -/***/ 16475: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Wordlist = exports.version = exports.wordlists = exports.utils = exports.logger = exports.errors = exports.constants = exports.FixedNumber = exports.BigNumber = exports.ContractFactory = exports.Contract = exports.BaseContract = exports.providers = exports.getDefaultProvider = exports.VoidSigner = exports.Wallet = exports.Signer = exports.ethers = void 0; -// To modify this file, you must update ./misc/admin/lib/cmds/update-exports.js -var ethers = __importStar(__nccwpck_require__(18778)); -exports.ethers = ethers; -try { - var anyGlobal = window; - if (anyGlobal._ethers == null) { - anyGlobal._ethers = ethers; - } -} -catch (error) { } -var ethers_1 = __nccwpck_require__(18778); -Object.defineProperty(exports, "Signer", ({ enumerable: true, get: function () { return ethers_1.Signer; } })); -Object.defineProperty(exports, "Wallet", ({ enumerable: true, get: function () { return ethers_1.Wallet; } })); -Object.defineProperty(exports, "VoidSigner", ({ enumerable: true, get: function () { return ethers_1.VoidSigner; } })); -Object.defineProperty(exports, "getDefaultProvider", ({ enumerable: true, get: function () { return ethers_1.getDefaultProvider; } })); -Object.defineProperty(exports, "providers", ({ enumerable: true, get: function () { return ethers_1.providers; } })); -Object.defineProperty(exports, "BaseContract", ({ enumerable: true, get: function () { return ethers_1.BaseContract; } })); -Object.defineProperty(exports, "Contract", ({ enumerable: true, get: function () { return ethers_1.Contract; } })); -Object.defineProperty(exports, "ContractFactory", ({ enumerable: true, get: function () { return ethers_1.ContractFactory; } })); -Object.defineProperty(exports, "BigNumber", ({ enumerable: true, get: function () { return ethers_1.BigNumber; } })); -Object.defineProperty(exports, "FixedNumber", ({ enumerable: true, get: function () { return ethers_1.FixedNumber; } })); -Object.defineProperty(exports, "constants", ({ enumerable: true, get: function () { return ethers_1.constants; } })); -Object.defineProperty(exports, "errors", ({ enumerable: true, get: function () { return ethers_1.errors; } })); -Object.defineProperty(exports, "logger", ({ enumerable: true, get: function () { return ethers_1.logger; } })); -Object.defineProperty(exports, "utils", ({ enumerable: true, get: function () { return ethers_1.utils; } })); -Object.defineProperty(exports, "wordlists", ({ enumerable: true, get: function () { return ethers_1.wordlists; } })); -//////////////////////// -// Compile-Time Constants -Object.defineProperty(exports, "version", ({ enumerable: true, get: function () { return ethers_1.version; } })); -Object.defineProperty(exports, "Wordlist", ({ enumerable: true, get: function () { return ethers_1.Wordlist; } })); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 73446: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.formatBytes32String = exports.Utf8ErrorFuncs = exports.toUtf8String = exports.toUtf8CodePoints = exports.toUtf8Bytes = exports._toEscapedUtf8String = exports.nameprep = exports.hexDataSlice = exports.hexDataLength = exports.hexZeroPad = exports.hexValue = exports.hexStripZeros = exports.hexConcat = exports.isHexString = exports.hexlify = exports.base64 = exports.base58 = exports.TransactionDescription = exports.LogDescription = exports.Interface = exports.SigningKey = exports.HDNode = exports.defaultPath = exports.isBytesLike = exports.isBytes = exports.zeroPad = exports.stripZeros = exports.concat = exports.arrayify = exports.shallowCopy = exports.resolveProperties = exports.getStatic = exports.defineReadOnly = exports.deepCopy = exports.checkProperties = exports.poll = exports.fetchJson = exports._fetchData = exports.RLP = exports.Logger = exports.checkResultErrors = exports.FormatTypes = exports.ParamType = exports.FunctionFragment = exports.EventFragment = exports.ErrorFragment = exports.ConstructorFragment = exports.Fragment = exports.defaultAbiCoder = exports.AbiCoder = void 0; -exports.Indexed = exports.Utf8ErrorReason = exports.UnicodeNormalizationForm = exports.SupportedAlgorithm = exports.mnemonicToSeed = exports.isValidMnemonic = exports.entropyToMnemonic = exports.mnemonicToEntropy = exports.getAccountPath = exports.verifyTypedData = exports.verifyMessage = exports.recoverPublicKey = exports.computePublicKey = exports.recoverAddress = exports.computeAddress = exports.getJsonWalletAddress = exports.TransactionTypes = exports.serializeTransaction = exports.parseTransaction = exports.accessListify = exports.joinSignature = exports.splitSignature = exports.soliditySha256 = exports.solidityKeccak256 = exports.solidityPack = exports.shuffled = exports.randomBytes = exports.sha512 = exports.sha256 = exports.ripemd160 = exports.keccak256 = exports.computeHmac = exports.commify = exports.parseUnits = exports.formatUnits = exports.parseEther = exports.formatEther = exports.isAddress = exports.getCreate2Address = exports.getContractAddress = exports.getIcapAddress = exports.getAddress = exports._TypedDataEncoder = exports.id = exports.isValidName = exports.namehash = exports.hashMessage = exports.dnsEncode = exports.parseBytes32String = void 0; -var abi_1 = __nccwpck_require__(30219); -Object.defineProperty(exports, "AbiCoder", ({ enumerable: true, get: function () { return abi_1.AbiCoder; } })); -Object.defineProperty(exports, "checkResultErrors", ({ enumerable: true, get: function () { return abi_1.checkResultErrors; } })); -Object.defineProperty(exports, "ConstructorFragment", ({ enumerable: true, get: function () { return abi_1.ConstructorFragment; } })); -Object.defineProperty(exports, "defaultAbiCoder", ({ enumerable: true, get: function () { return abi_1.defaultAbiCoder; } })); -Object.defineProperty(exports, "ErrorFragment", ({ enumerable: true, get: function () { return abi_1.ErrorFragment; } })); -Object.defineProperty(exports, "EventFragment", ({ enumerable: true, get: function () { return abi_1.EventFragment; } })); -Object.defineProperty(exports, "FormatTypes", ({ enumerable: true, get: function () { return abi_1.FormatTypes; } })); -Object.defineProperty(exports, "Fragment", ({ enumerable: true, get: function () { return abi_1.Fragment; } })); -Object.defineProperty(exports, "FunctionFragment", ({ enumerable: true, get: function () { return abi_1.FunctionFragment; } })); -Object.defineProperty(exports, "Indexed", ({ enumerable: true, get: function () { return abi_1.Indexed; } })); -Object.defineProperty(exports, "Interface", ({ enumerable: true, get: function () { return abi_1.Interface; } })); -Object.defineProperty(exports, "LogDescription", ({ enumerable: true, get: function () { return abi_1.LogDescription; } })); -Object.defineProperty(exports, "ParamType", ({ enumerable: true, get: function () { return abi_1.ParamType; } })); -Object.defineProperty(exports, "TransactionDescription", ({ enumerable: true, get: function () { return abi_1.TransactionDescription; } })); -var address_1 = __nccwpck_require__(75745); -Object.defineProperty(exports, "getAddress", ({ enumerable: true, get: function () { return address_1.getAddress; } })); -Object.defineProperty(exports, "getCreate2Address", ({ enumerable: true, get: function () { return address_1.getCreate2Address; } })); -Object.defineProperty(exports, "getContractAddress", ({ enumerable: true, get: function () { return address_1.getContractAddress; } })); -Object.defineProperty(exports, "getIcapAddress", ({ enumerable: true, get: function () { return address_1.getIcapAddress; } })); -Object.defineProperty(exports, "isAddress", ({ enumerable: true, get: function () { return address_1.isAddress; } })); -var base64 = __importStar(__nccwpck_require__(99032)); -exports.base64 = base64; -var basex_1 = __nccwpck_require__(31426); -Object.defineProperty(exports, "base58", ({ enumerable: true, get: function () { return basex_1.Base58; } })); -var bytes_1 = __nccwpck_require__(42006); -Object.defineProperty(exports, "arrayify", ({ enumerable: true, get: function () { return bytes_1.arrayify; } })); -Object.defineProperty(exports, "concat", ({ enumerable: true, get: function () { return bytes_1.concat; } })); -Object.defineProperty(exports, "hexConcat", ({ enumerable: true, get: function () { return bytes_1.hexConcat; } })); -Object.defineProperty(exports, "hexDataSlice", ({ enumerable: true, get: function () { return bytes_1.hexDataSlice; } })); -Object.defineProperty(exports, "hexDataLength", ({ enumerable: true, get: function () { return bytes_1.hexDataLength; } })); -Object.defineProperty(exports, "hexlify", ({ enumerable: true, get: function () { return bytes_1.hexlify; } })); -Object.defineProperty(exports, "hexStripZeros", ({ enumerable: true, get: function () { return bytes_1.hexStripZeros; } })); -Object.defineProperty(exports, "hexValue", ({ enumerable: true, get: function () { return bytes_1.hexValue; } })); -Object.defineProperty(exports, "hexZeroPad", ({ enumerable: true, get: function () { return bytes_1.hexZeroPad; } })); -Object.defineProperty(exports, "isBytes", ({ enumerable: true, get: function () { return bytes_1.isBytes; } })); -Object.defineProperty(exports, "isBytesLike", ({ enumerable: true, get: function () { return bytes_1.isBytesLike; } })); -Object.defineProperty(exports, "isHexString", ({ enumerable: true, get: function () { return bytes_1.isHexString; } })); -Object.defineProperty(exports, "joinSignature", ({ enumerable: true, get: function () { return bytes_1.joinSignature; } })); -Object.defineProperty(exports, "zeroPad", ({ enumerable: true, get: function () { return bytes_1.zeroPad; } })); -Object.defineProperty(exports, "splitSignature", ({ enumerable: true, get: function () { return bytes_1.splitSignature; } })); -Object.defineProperty(exports, "stripZeros", ({ enumerable: true, get: function () { return bytes_1.stripZeros; } })); -var hash_1 = __nccwpck_require__(91839); -Object.defineProperty(exports, "_TypedDataEncoder", ({ enumerable: true, get: function () { return hash_1._TypedDataEncoder; } })); -Object.defineProperty(exports, "dnsEncode", ({ enumerable: true, get: function () { return hash_1.dnsEncode; } })); -Object.defineProperty(exports, "hashMessage", ({ enumerable: true, get: function () { return hash_1.hashMessage; } })); -Object.defineProperty(exports, "id", ({ enumerable: true, get: function () { return hash_1.id; } })); -Object.defineProperty(exports, "isValidName", ({ enumerable: true, get: function () { return hash_1.isValidName; } })); -Object.defineProperty(exports, "namehash", ({ enumerable: true, get: function () { return hash_1.namehash; } })); -var hdnode_1 = __nccwpck_require__(13067); -Object.defineProperty(exports, "defaultPath", ({ enumerable: true, get: function () { return hdnode_1.defaultPath; } })); -Object.defineProperty(exports, "entropyToMnemonic", ({ enumerable: true, get: function () { return hdnode_1.entropyToMnemonic; } })); -Object.defineProperty(exports, "getAccountPath", ({ enumerable: true, get: function () { return hdnode_1.getAccountPath; } })); -Object.defineProperty(exports, "HDNode", ({ enumerable: true, get: function () { return hdnode_1.HDNode; } })); -Object.defineProperty(exports, "isValidMnemonic", ({ enumerable: true, get: function () { return hdnode_1.isValidMnemonic; } })); -Object.defineProperty(exports, "mnemonicToEntropy", ({ enumerable: true, get: function () { return hdnode_1.mnemonicToEntropy; } })); -Object.defineProperty(exports, "mnemonicToSeed", ({ enumerable: true, get: function () { return hdnode_1.mnemonicToSeed; } })); -var json_wallets_1 = __nccwpck_require__(3582); -Object.defineProperty(exports, "getJsonWalletAddress", ({ enumerable: true, get: function () { return json_wallets_1.getJsonWalletAddress; } })); -var keccak256_1 = __nccwpck_require__(56938); -Object.defineProperty(exports, "keccak256", ({ enumerable: true, get: function () { return keccak256_1.keccak256; } })); -var logger_1 = __nccwpck_require__(76127); -Object.defineProperty(exports, "Logger", ({ enumerable: true, get: function () { return logger_1.Logger; } })); -var sha2_1 = __nccwpck_require__(66935); -Object.defineProperty(exports, "computeHmac", ({ enumerable: true, get: function () { return sha2_1.computeHmac; } })); -Object.defineProperty(exports, "ripemd160", ({ enumerable: true, get: function () { return sha2_1.ripemd160; } })); -Object.defineProperty(exports, "sha256", ({ enumerable: true, get: function () { return sha2_1.sha256; } })); -Object.defineProperty(exports, "sha512", ({ enumerable: true, get: function () { return sha2_1.sha512; } })); -var solidity_1 = __nccwpck_require__(18550); -Object.defineProperty(exports, "solidityKeccak256", ({ enumerable: true, get: function () { return solidity_1.keccak256; } })); -Object.defineProperty(exports, "solidityPack", ({ enumerable: true, get: function () { return solidity_1.pack; } })); -Object.defineProperty(exports, "soliditySha256", ({ enumerable: true, get: function () { return solidity_1.sha256; } })); -var random_1 = __nccwpck_require__(53728); -Object.defineProperty(exports, "randomBytes", ({ enumerable: true, get: function () { return random_1.randomBytes; } })); -Object.defineProperty(exports, "shuffled", ({ enumerable: true, get: function () { return random_1.shuffled; } })); -var properties_1 = __nccwpck_require__(61338); -Object.defineProperty(exports, "checkProperties", ({ enumerable: true, get: function () { return properties_1.checkProperties; } })); -Object.defineProperty(exports, "deepCopy", ({ enumerable: true, get: function () { return properties_1.deepCopy; } })); -Object.defineProperty(exports, "defineReadOnly", ({ enumerable: true, get: function () { return properties_1.defineReadOnly; } })); -Object.defineProperty(exports, "getStatic", ({ enumerable: true, get: function () { return properties_1.getStatic; } })); -Object.defineProperty(exports, "resolveProperties", ({ enumerable: true, get: function () { return properties_1.resolveProperties; } })); -Object.defineProperty(exports, "shallowCopy", ({ enumerable: true, get: function () { return properties_1.shallowCopy; } })); -var RLP = __importStar(__nccwpck_require__(37659)); -exports.RLP = RLP; -var signing_key_1 = __nccwpck_require__(63928); -Object.defineProperty(exports, "computePublicKey", ({ enumerable: true, get: function () { return signing_key_1.computePublicKey; } })); -Object.defineProperty(exports, "recoverPublicKey", ({ enumerable: true, get: function () { return signing_key_1.recoverPublicKey; } })); -Object.defineProperty(exports, "SigningKey", ({ enumerable: true, get: function () { return signing_key_1.SigningKey; } })); -var strings_1 = __nccwpck_require__(13859); -Object.defineProperty(exports, "formatBytes32String", ({ enumerable: true, get: function () { return strings_1.formatBytes32String; } })); -Object.defineProperty(exports, "nameprep", ({ enumerable: true, get: function () { return strings_1.nameprep; } })); -Object.defineProperty(exports, "parseBytes32String", ({ enumerable: true, get: function () { return strings_1.parseBytes32String; } })); -Object.defineProperty(exports, "_toEscapedUtf8String", ({ enumerable: true, get: function () { return strings_1._toEscapedUtf8String; } })); -Object.defineProperty(exports, "toUtf8Bytes", ({ enumerable: true, get: function () { return strings_1.toUtf8Bytes; } })); -Object.defineProperty(exports, "toUtf8CodePoints", ({ enumerable: true, get: function () { return strings_1.toUtf8CodePoints; } })); -Object.defineProperty(exports, "toUtf8String", ({ enumerable: true, get: function () { return strings_1.toUtf8String; } })); -Object.defineProperty(exports, "Utf8ErrorFuncs", ({ enumerable: true, get: function () { return strings_1.Utf8ErrorFuncs; } })); -var transactions_1 = __nccwpck_require__(62394); -Object.defineProperty(exports, "accessListify", ({ enumerable: true, get: function () { return transactions_1.accessListify; } })); -Object.defineProperty(exports, "computeAddress", ({ enumerable: true, get: function () { return transactions_1.computeAddress; } })); -Object.defineProperty(exports, "parseTransaction", ({ enumerable: true, get: function () { return transactions_1.parse; } })); -Object.defineProperty(exports, "recoverAddress", ({ enumerable: true, get: function () { return transactions_1.recoverAddress; } })); -Object.defineProperty(exports, "serializeTransaction", ({ enumerable: true, get: function () { return transactions_1.serialize; } })); -Object.defineProperty(exports, "TransactionTypes", ({ enumerable: true, get: function () { return transactions_1.TransactionTypes; } })); -var units_1 = __nccwpck_require__(32534); -Object.defineProperty(exports, "commify", ({ enumerable: true, get: function () { return units_1.commify; } })); -Object.defineProperty(exports, "formatEther", ({ enumerable: true, get: function () { return units_1.formatEther; } })); -Object.defineProperty(exports, "parseEther", ({ enumerable: true, get: function () { return units_1.parseEther; } })); -Object.defineProperty(exports, "formatUnits", ({ enumerable: true, get: function () { return units_1.formatUnits; } })); -Object.defineProperty(exports, "parseUnits", ({ enumerable: true, get: function () { return units_1.parseUnits; } })); -var wallet_1 = __nccwpck_require__(30806); -Object.defineProperty(exports, "verifyMessage", ({ enumerable: true, get: function () { return wallet_1.verifyMessage; } })); -Object.defineProperty(exports, "verifyTypedData", ({ enumerable: true, get: function () { return wallet_1.verifyTypedData; } })); -var web_1 = __nccwpck_require__(72239); -Object.defineProperty(exports, "_fetchData", ({ enumerable: true, get: function () { return web_1._fetchData; } })); -Object.defineProperty(exports, "fetchJson", ({ enumerable: true, get: function () { return web_1.fetchJson; } })); -Object.defineProperty(exports, "poll", ({ enumerable: true, get: function () { return web_1.poll; } })); -//////////////////////// -// Enums -var sha2_2 = __nccwpck_require__(66935); -Object.defineProperty(exports, "SupportedAlgorithm", ({ enumerable: true, get: function () { return sha2_2.SupportedAlgorithm; } })); -var strings_2 = __nccwpck_require__(13859); -Object.defineProperty(exports, "UnicodeNormalizationForm", ({ enumerable: true, get: function () { return strings_2.UnicodeNormalizationForm; } })); -Object.defineProperty(exports, "Utf8ErrorReason", ({ enumerable: true, get: function () { return strings_2.Utf8ErrorReason; } })); -//# sourceMappingURL=utils.js.map - -/***/ }), - -/***/ 10221: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - - -if (process.env.NODE_ENV === 'production') { - module.exports = __nccwpck_require__(42600) -} else { - module.exports = __nccwpck_require__(10948) -} - - -/***/ }), - -/***/ 10948: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; -var __webpack_unused_export__; - - -__webpack_unused_export__ = ({ value: true }); - -function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } - -var invariant = _interopDefault(__nccwpck_require__(9889)); -var hash = __nccwpck_require__(91839); -var bignumber = __nccwpck_require__(18202); -var contracts = __nccwpck_require__(98322); - -// @deprecated please use permit2Address(chainId: number) -var PERMIT2_ADDRESS = '0x000000000022D473030F116dDEE9F6B43aC78BA3'; -function permit2Address(chainId) { - switch (chainId) { - case 324: - return '0x0000000000225e31D15943971F47aD3022F714Fa'; - default: - return PERMIT2_ADDRESS; - } -} -var MaxUint48 = /*#__PURE__*/bignumber.BigNumber.from('0xffffffffffff'); -var MaxUint160 = /*#__PURE__*/bignumber.BigNumber.from('0xffffffffffffffffffffffffffffffffffffffff'); -var MaxUint256 = /*#__PURE__*/bignumber.BigNumber.from('0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff'); -// alias max types for their usages -// allowance transfer types -var MaxAllowanceTransferAmount = MaxUint160; -var MaxAllowanceExpiration = MaxUint48; -var MaxOrderedNonce = MaxUint48; -// signature transfer types -var MaxSignatureTransferAmount = MaxUint256; -var MaxUnorderedNonce = MaxUint256; -var MaxSigDeadline = MaxUint256; -var InstantExpiration = /*#__PURE__*/bignumber.BigNumber.from(0); - -var PERMIT2_DOMAIN_NAME = 'Permit2'; -function permit2Domain(permit2Address, chainId) { - return { - name: PERMIT2_DOMAIN_NAME, - chainId: chainId, - verifyingContract: permit2Address - }; -} - -var PERMIT_DETAILS = [{ - name: 'token', - type: 'address' -}, { - name: 'amount', - type: 'uint160' -}, { - name: 'expiration', - type: 'uint48' -}, { - name: 'nonce', - type: 'uint48' -}]; -var PERMIT_TYPES = { - PermitSingle: [{ - name: 'details', - type: 'PermitDetails' - }, { - name: 'spender', - type: 'address' - }, { - name: 'sigDeadline', - type: 'uint256' - }], - PermitDetails: PERMIT_DETAILS -}; -var PERMIT_BATCH_TYPES = { - PermitBatch: [{ - name: 'details', - type: 'PermitDetails[]' - }, { - name: 'spender', - type: 'address' - }, { - name: 'sigDeadline', - type: 'uint256' - }], - PermitDetails: PERMIT_DETAILS -}; -function isPermit(permit) { - return !Array.isArray(permit.details); -} -var AllowanceTransfer = /*#__PURE__*/function () { - /** - * Cannot be constructed. - */ - function AllowanceTransfer() {} - // return the data to be sent in a eth_signTypedData RPC call - // for signing the given permit data - AllowanceTransfer.getPermitData = function getPermitData(permit, permit2Address, chainId) { - !MaxSigDeadline.gte(permit.sigDeadline) ? invariant(false, 'SIG_DEADLINE_OUT_OF_RANGE') : void 0; - var domain = permit2Domain(permit2Address, chainId); - if (isPermit(permit)) { - validatePermitDetails(permit.details); - return { - domain: domain, - types: PERMIT_TYPES, - values: permit - }; - } else { - permit.details.forEach(validatePermitDetails); - return { - domain: domain, - types: PERMIT_BATCH_TYPES, - values: permit - }; - } - }; - AllowanceTransfer.hash = function hash$1(permit, permit2Address, chainId) { - var _AllowanceTransfer$ge = AllowanceTransfer.getPermitData(permit, permit2Address, chainId), - domain = _AllowanceTransfer$ge.domain, - types = _AllowanceTransfer$ge.types, - values = _AllowanceTransfer$ge.values; - return hash._TypedDataEncoder.hash(domain, types, values); - }; - return AllowanceTransfer; -}(); -function validatePermitDetails(details) { - !MaxOrderedNonce.gte(details.nonce) ? invariant(false, 'NONCE_OUT_OF_RANGE') : void 0; - !MaxAllowanceTransferAmount.gte(details.amount) ? invariant(false, 'AMOUNT_OUT_OF_RANGE') : void 0; - !MaxAllowanceExpiration.gte(details.expiration) ? invariant(false, 'EXPIRATION_OUT_OF_RANGE') : void 0; -} - -function _regeneratorRuntime() { - _regeneratorRuntime = function () { - return e; - }; - var t, - e = {}, - r = Object.prototype, - n = r.hasOwnProperty, - o = Object.defineProperty || function (t, e, r) { - t[e] = r.value; - }, - i = "function" == typeof Symbol ? Symbol : {}, - a = i.iterator || "@@iterator", - c = i.asyncIterator || "@@asyncIterator", - u = i.toStringTag || "@@toStringTag"; - function define(t, e, r) { - return Object.defineProperty(t, e, { - value: r, - enumerable: !0, - configurable: !0, - writable: !0 - }), t[e]; - } - try { - define({}, ""); - } catch (t) { - define = function (t, e, r) { - return t[e] = r; - }; - } - function wrap(t, e, r, n) { - var i = e && e.prototype instanceof Generator ? e : Generator, - a = Object.create(i.prototype), - c = new Context(n || []); - return o(a, "_invoke", { - value: makeInvokeMethod(t, r, c) - }), a; - } - function tryCatch(t, e, r) { - try { - return { - type: "normal", - arg: t.call(e, r) - }; - } catch (t) { - return { - type: "throw", - arg: t - }; - } - } - e.wrap = wrap; - var h = "suspendedStart", - l = "suspendedYield", - f = "executing", - s = "completed", - y = {}; - function Generator() {} - function GeneratorFunction() {} - function GeneratorFunctionPrototype() {} - var p = {}; - define(p, a, function () { - return this; - }); - var d = Object.getPrototypeOf, - v = d && d(d(values([]))); - v && v !== r && n.call(v, a) && (p = v); - var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); - function defineIteratorMethods(t) { - ["next", "throw", "return"].forEach(function (e) { - define(t, e, function (t) { - return this._invoke(e, t); - }); - }); - } - function AsyncIterator(t, e) { - function invoke(r, o, i, a) { - var c = tryCatch(t[r], t, o); - if ("throw" !== c.type) { - var u = c.arg, - h = u.value; - return h && "object" == typeof h && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { - invoke("next", t, i, a); - }, function (t) { - invoke("throw", t, i, a); - }) : e.resolve(h).then(function (t) { - u.value = t, i(u); - }, function (t) { - return invoke("throw", t, i, a); - }); - } - a(c.arg); - } - var r; - o(this, "_invoke", { - value: function (t, n) { - function callInvokeWithMethodAndArg() { - return new e(function (e, r) { - invoke(t, n, e, r); - }); - } - return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); - } - }); - } - function makeInvokeMethod(e, r, n) { - var o = h; - return function (i, a) { - if (o === f) throw new Error("Generator is already running"); - if (o === s) { - if ("throw" === i) throw a; - return { - value: t, - done: !0 - }; - } - for (n.method = i, n.arg = a;;) { - var c = n.delegate; - if (c) { - var u = maybeInvokeDelegate(c, n); - if (u) { - if (u === y) continue; - return u; - } - } - if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { - if (o === h) throw o = s, n.arg; - n.dispatchException(n.arg); - } else "return" === n.method && n.abrupt("return", n.arg); - o = f; - var p = tryCatch(e, r, n); - if ("normal" === p.type) { - if (o = n.done ? s : l, p.arg === y) continue; - return { - value: p.arg, - done: n.done - }; - } - "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); - } - }; - } - function maybeInvokeDelegate(e, r) { - var n = r.method, - o = e.iterator[n]; - if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; - var i = tryCatch(o, e.iterator, r.arg); - if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; - var a = i.arg; - return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); - } - function pushTryEntry(t) { - var e = { - tryLoc: t[0] - }; - 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); - } - function resetTryEntry(t) { - var e = t.completion || {}; - e.type = "normal", delete e.arg, t.completion = e; - } - function Context(t) { - this.tryEntries = [{ - tryLoc: "root" - }], t.forEach(pushTryEntry, this), this.reset(!0); - } - function values(e) { - if (e || "" === e) { - var r = e[a]; - if (r) return r.call(e); - if ("function" == typeof e.next) return e; - if (!isNaN(e.length)) { - var o = -1, - i = function next() { - for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; - return next.value = t, next.done = !0, next; - }; - return i.next = i; - } - } - throw new TypeError(typeof e + " is not iterable"); - } - return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { - value: GeneratorFunctionPrototype, - configurable: !0 - }), o(GeneratorFunctionPrototype, "constructor", { - value: GeneratorFunction, - configurable: !0 - }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { - var e = "function" == typeof t && t.constructor; - return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); - }, e.mark = function (t) { - return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; - }, e.awrap = function (t) { - return { - __await: t - }; - }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { - return this; - }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { - void 0 === i && (i = Promise); - var a = new AsyncIterator(wrap(t, r, n, o), i); - return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { - return t.done ? t.value : a.next(); - }); - }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { - return this; - }), define(g, "toString", function () { - return "[object Generator]"; - }), e.keys = function (t) { - var e = Object(t), - r = []; - for (var n in e) r.push(n); - return r.reverse(), function next() { - for (; r.length;) { - var t = r.pop(); - if (t in e) return next.value = t, next.done = !1, next; - } - return next.done = !0, next; - }; - }, e.values = values, Context.prototype = { - constructor: Context, - reset: function (e) { - if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); - }, - stop: function () { - this.done = !0; - var t = this.tryEntries[0].completion; - if ("throw" === t.type) throw t.arg; - return this.rval; - }, - dispatchException: function (e) { - if (this.done) throw e; - var r = this; - function handle(n, o) { - return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; - } - for (var o = this.tryEntries.length - 1; o >= 0; --o) { - var i = this.tryEntries[o], - a = i.completion; - if ("root" === i.tryLoc) return handle("end"); - if (i.tryLoc <= this.prev) { - var c = n.call(i, "catchLoc"), - u = n.call(i, "finallyLoc"); - if (c && u) { - if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); - if (this.prev < i.finallyLoc) return handle(i.finallyLoc); - } else if (c) { - if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); - } else { - if (!u) throw new Error("try statement without catch or finally"); - if (this.prev < i.finallyLoc) return handle(i.finallyLoc); - } - } - } - }, - abrupt: function (t, e) { - for (var r = this.tryEntries.length - 1; r >= 0; --r) { - var o = this.tryEntries[r]; - if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { - var i = o; - break; - } - } - i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); - var a = i ? i.completion : {}; - return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); - }, - complete: function (t, e) { - if ("throw" === t.type) throw t.arg; - return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; - }, - finish: function (t) { - for (var e = this.tryEntries.length - 1; e >= 0; --e) { - var r = this.tryEntries[e]; - if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; - } - }, - catch: function (t) { - for (var e = this.tryEntries.length - 1; e >= 0; --e) { - var r = this.tryEntries[e]; - if (r.tryLoc === t) { - var n = r.completion; - if ("throw" === n.type) { - var o = n.arg; - resetTryEntry(r); - } - return o; - } - } - throw new Error("illegal catch attempt"); - }, - delegateYield: function (e, r, n) { - return this.delegate = { - iterator: values(e), - resultName: r, - nextLoc: n - }, "next" === this.method && (this.arg = t), y; - } - }, e; -} -function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { - try { - var info = gen[key](arg); - var value = info.value; - } catch (error) { - reject(error); - return; - } - if (info.done) { - resolve(value); - } else { - Promise.resolve(value).then(_next, _throw); - } -} -function _asyncToGenerator(fn) { - return function () { - var self = this, - args = arguments; - return new Promise(function (resolve, reject) { - var gen = fn.apply(self, args); - function _next(value) { - asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); - } - function _throw(err) { - asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); - } - _next(undefined); - }); - }; -} -function _extends() { - _extends = Object.assign ? Object.assign.bind() : function (target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i]; - for (var key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; - } - } - } - return target; - }; - return _extends.apply(this, arguments); -} - -var TOKEN_PERMISSIONS = [{ - name: 'token', - type: 'address' -}, { - name: 'amount', - type: 'uint256' -}]; -var PERMIT_TRANSFER_FROM_TYPES = { - PermitTransferFrom: [{ - name: 'permitted', - type: 'TokenPermissions' - }, { - name: 'spender', - type: 'address' - }, { - name: 'nonce', - type: 'uint256' - }, { - name: 'deadline', - type: 'uint256' - }], - TokenPermissions: TOKEN_PERMISSIONS -}; -var PERMIT_BATCH_TRANSFER_FROM_TYPES = { - PermitBatchTransferFrom: [{ - name: 'permitted', - type: 'TokenPermissions[]' - }, { - name: 'spender', - type: 'address' - }, { - name: 'nonce', - type: 'uint256' - }, { - name: 'deadline', - type: 'uint256' - }], - TokenPermissions: TOKEN_PERMISSIONS -}; -function permitTransferFromWithWitnessType(witness) { - return _extends({ - PermitWitnessTransferFrom: [{ - name: 'permitted', - type: 'TokenPermissions' - }, { - name: 'spender', - type: 'address' - }, { - name: 'nonce', - type: 'uint256' - }, { - name: 'deadline', - type: 'uint256' - }, { - name: 'witness', - type: witness.witnessTypeName - }], - TokenPermissions: TOKEN_PERMISSIONS - }, witness.witnessType); -} -function permitBatchTransferFromWithWitnessType(witness) { - return _extends({ - PermitBatchWitnessTransferFrom: [{ - name: 'permitted', - type: 'TokenPermissions[]' - }, { - name: 'spender', - type: 'address' - }, { - name: 'nonce', - type: 'uint256' - }, { - name: 'deadline', - type: 'uint256' - }, { - name: 'witness', - type: witness.witnessTypeName - }], - TokenPermissions: TOKEN_PERMISSIONS - }, witness.witnessType); -} -function isPermitTransferFrom(permit) { - return !Array.isArray(permit.permitted); -} -var SignatureTransfer = /*#__PURE__*/function () { - /** - * Cannot be constructed. - */ - function SignatureTransfer() {} - // return the data to be sent in a eth_signTypedData RPC call - // for signing the given permit data - SignatureTransfer.getPermitData = function getPermitData(permit, permit2Address, chainId, witness) { - !MaxSigDeadline.gte(permit.deadline) ? invariant(false, 'SIG_DEADLINE_OUT_OF_RANGE') : void 0; - !MaxUnorderedNonce.gte(permit.nonce) ? invariant(false, 'NONCE_OUT_OF_RANGE') : void 0; - var domain = permit2Domain(permit2Address, chainId); - if (isPermitTransferFrom(permit)) { - validateTokenPermissions(permit.permitted); - var types = witness ? permitTransferFromWithWitnessType(witness) : PERMIT_TRANSFER_FROM_TYPES; - var values = witness ? Object.assign(permit, { - witness: witness.witness - }) : permit; - return { - domain: domain, - types: types, - values: values - }; - } else { - permit.permitted.forEach(validateTokenPermissions); - var _types = witness ? permitBatchTransferFromWithWitnessType(witness) : PERMIT_BATCH_TRANSFER_FROM_TYPES; - var _values = witness ? Object.assign(permit, { - witness: witness.witness - }) : permit; - return { - domain: domain, - types: _types, - values: _values - }; - } - }; - SignatureTransfer.hash = function hash$1(permit, permit2Address, chainId, witness) { - var _SignatureTransfer$ge = SignatureTransfer.getPermitData(permit, permit2Address, chainId, witness), - domain = _SignatureTransfer$ge.domain, - types = _SignatureTransfer$ge.types, - values = _SignatureTransfer$ge.values; - return hash._TypedDataEncoder.hash(domain, types, values); - }; - return SignatureTransfer; -}(); -function validateTokenPermissions(permissions) { - !MaxSignatureTransferAmount.gte(permissions.amount) ? invariant(false, 'AMOUNT_OUT_OF_RANGE') : void 0; -} - -var Permit2Abi = [ - { - inputs: [ - ], - name: "AllowanceExpired", - type: "error" - }, - { - inputs: [ - ], - name: "ExcessiveInvalidation", - type: "error" - }, - { - inputs: [ - ], - name: "InsufficientAllowance", - type: "error" - }, - { - inputs: [ - ], - name: "InvalidAmount", - type: "error" - }, - { - inputs: [ - ], - name: "InvalidContractSignature", - type: "error" - }, - { - inputs: [ - ], - name: "InvalidNonce", - type: "error" - }, - { - inputs: [ - ], - name: "InvalidSignature", - type: "error" - }, - { - inputs: [ - ], - name: "InvalidSigner", - type: "error" - }, - { - inputs: [ - ], - name: "LengthMismatch", - type: "error" - }, - { - inputs: [ - ], - name: "NotSpender", - type: "error" - }, - { - inputs: [ - ], - name: "SignatureExpired", - type: "error" - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address" - }, - { - indexed: true, - internalType: "address", - name: "token", - type: "address" - }, - { - indexed: true, - internalType: "address", - name: "spender", - type: "address" - }, - { - indexed: false, - internalType: "uint160", - name: "amount", - type: "uint160" - }, - { - indexed: false, - internalType: "uint48", - name: "expiration", - type: "uint48" - } - ], - name: "Approval", - type: "event" - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address" - }, - { - indexed: false, - internalType: "address", - name: "token", - type: "address" - }, - { - indexed: false, - internalType: "address", - name: "spender", - type: "address" - } - ], - name: "Lockdown", - type: "event" - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address" - }, - { - indexed: true, - internalType: "address", - name: "token", - type: "address" - }, - { - indexed: true, - internalType: "address", - name: "spender", - type: "address" - }, - { - indexed: false, - internalType: "uint48", - name: "newNonce", - type: "uint48" - }, - { - indexed: false, - internalType: "uint48", - name: "oldNonce", - type: "uint48" - } - ], - name: "NonceInvalidation", - type: "event" - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address" - }, - { - indexed: false, - internalType: "uint256", - name: "word", - type: "uint256" - }, - { - indexed: false, - internalType: "uint256", - name: "mask", - type: "uint256" - } - ], - name: "UnorderedNonceInvalidation", - type: "event" - }, - { - inputs: [ - ], - name: "DOMAIN_SEPARATOR", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32" - } - ], - stateMutability: "view", - type: "function" - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address" - }, - { - internalType: "address", - name: "", - type: "address" - }, - { - internalType: "address", - name: "", - type: "address" - } - ], - name: "allowance", - outputs: [ - { - internalType: "uint160", - name: "amount", - type: "uint160" - }, - { - internalType: "uint48", - name: "expiration", - type: "uint48" - }, - { - internalType: "uint48", - name: "nonce", - type: "uint48" - } - ], - stateMutability: "view", - type: "function" - }, - { - inputs: [ - { - internalType: "address", - name: "token", - type: "address" - }, - { - internalType: "address", - name: "spender", - type: "address" - }, - { - internalType: "uint160", - name: "amount", - type: "uint160" - }, - { - internalType: "uint48", - name: "expiration", - type: "uint48" - } - ], - name: "approve", - outputs: [ - ], - stateMutability: "nonpayable", - type: "function" - }, - { - inputs: [ - { - internalType: "address", - name: "token", - type: "address" - }, - { - internalType: "address", - name: "spender", - type: "address" - }, - { - internalType: "uint48", - name: "newNonce", - type: "uint48" - } - ], - name: "invalidateNonces", - outputs: [ - ], - stateMutability: "nonpayable", - type: "function" - }, - { - inputs: [ - { - internalType: "uint256", - name: "wordPos", - type: "uint256" - }, - { - internalType: "uint256", - name: "mask", - type: "uint256" - } - ], - name: "invalidateUnorderedNonces", - outputs: [ - ], - stateMutability: "nonpayable", - type: "function" - }, - { - inputs: [ - { - components: [ - { - internalType: "address", - name: "token", - type: "address" - }, - { - internalType: "address", - name: "spender", - type: "address" - } - ], - internalType: "struct IAllowanceTransfer.TokenSpenderPair[]", - name: "approvals", - type: "tuple[]" - } - ], - name: "lockdown", - outputs: [ - ], - stateMutability: "nonpayable", - type: "function" - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address" - }, - { - internalType: "uint256", - name: "", - type: "uint256" - } - ], - name: "nonceBitmap", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256" - } - ], - stateMutability: "view", - type: "function" - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address" - }, - { - components: [ - { - components: [ - { - internalType: "address", - name: "token", - type: "address" - }, - { - internalType: "uint160", - name: "amount", - type: "uint160" - }, - { - internalType: "uint48", - name: "expiration", - type: "uint48" - }, - { - internalType: "uint48", - name: "nonce", - type: "uint48" - } - ], - internalType: "struct IAllowanceTransfer.PermitDetails[]", - name: "details", - type: "tuple[]" - }, - { - internalType: "address", - name: "spender", - type: "address" - }, - { - internalType: "uint256", - name: "sigDeadline", - type: "uint256" - } - ], - internalType: "struct IAllowanceTransfer.PermitBatch", - name: "permitBatch", - type: "tuple" - }, - { - internalType: "bytes", - name: "signature", - type: "bytes" - } - ], - name: "permit", - outputs: [ - ], - stateMutability: "nonpayable", - type: "function" - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address" - }, - { - components: [ - { - components: [ - { - internalType: "address", - name: "token", - type: "address" - }, - { - internalType: "uint160", - name: "amount", - type: "uint160" - }, - { - internalType: "uint48", - name: "expiration", - type: "uint48" - }, - { - internalType: "uint48", - name: "nonce", - type: "uint48" - } - ], - internalType: "struct IAllowanceTransfer.PermitDetails", - name: "details", - type: "tuple" - }, - { - internalType: "address", - name: "spender", - type: "address" - }, - { - internalType: "uint256", - name: "sigDeadline", - type: "uint256" - } - ], - internalType: "struct IAllowanceTransfer.PermitSingle", - name: "permitSingle", - type: "tuple" - }, - { - internalType: "bytes", - name: "signature", - type: "bytes" - } - ], - name: "permit", - outputs: [ - ], - stateMutability: "nonpayable", - type: "function" - }, - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "token", - type: "address" - }, - { - internalType: "uint256", - name: "amount", - type: "uint256" - } - ], - internalType: "struct ISignatureTransfer.TokenPermissions[]", - name: "permitted", - type: "tuple[]" - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256" - }, - { - internalType: "uint256", - name: "deadline", - type: "uint256" - } - ], - internalType: "struct ISignatureTransfer.PermitBatchTransferFrom", - name: "permit", - type: "tuple" - }, - { - internalType: "address", - name: "owner", - type: "address" - }, - { - components: [ - { - internalType: "address", - name: "to", - type: "address" - }, - { - internalType: "uint256", - name: "requestedAmount", - type: "uint256" - } - ], - internalType: "struct ISignatureTransfer.SignatureTransferDetails[]", - name: "transferDetails", - type: "tuple[]" - }, - { - internalType: "bytes", - name: "signature", - type: "bytes" - } - ], - name: "permitTransferFrom", - outputs: [ - ], - stateMutability: "nonpayable", - type: "function" - }, - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "token", - type: "address" - }, - { - internalType: "uint256", - name: "amount", - type: "uint256" - } - ], - internalType: "struct ISignatureTransfer.TokenPermissions", - name: "permitted", - type: "tuple" - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256" - }, - { - internalType: "uint256", - name: "deadline", - type: "uint256" - } - ], - internalType: "struct ISignatureTransfer.PermitTransferFrom", - name: "permit", - type: "tuple" - }, - { - internalType: "address", - name: "owner", - type: "address" - }, - { - internalType: "address", - name: "to", - type: "address" - }, - { - internalType: "uint256", - name: "requestedAmount", - type: "uint256" - }, - { - internalType: "bytes", - name: "signature", - type: "bytes" - } - ], - name: "permitTransferFrom", - outputs: [ - ], - stateMutability: "nonpayable", - type: "function" - }, - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "token", - type: "address" - }, - { - internalType: "uint256", - name: "amount", - type: "uint256" - } - ], - internalType: "struct ISignatureTransfer.TokenPermissions", - name: "permitted", - type: "tuple" - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256" - }, - { - internalType: "uint256", - name: "deadline", - type: "uint256" - } - ], - internalType: "struct ISignatureTransfer.PermitTransferFrom", - name: "permit", - type: "tuple" - }, - { - internalType: "address", - name: "owner", - type: "address" - }, - { - internalType: "address", - name: "to", - type: "address" - }, - { - internalType: "uint256", - name: "requestedAmount", - type: "uint256" - }, - { - internalType: "bytes32", - name: "witness", - type: "bytes32" - }, - { - internalType: "string", - name: "witnessTypeName", - type: "string" - }, - { - internalType: "string", - name: "witnessType", - type: "string" - }, - { - internalType: "bytes", - name: "signature", - type: "bytes" - } - ], - name: "permitWitnessTransferFrom", - outputs: [ - ], - stateMutability: "nonpayable", - type: "function" - }, - { - inputs: [ - { - components: [ - { - components: [ - { - internalType: "address", - name: "token", - type: "address" - }, - { - internalType: "uint256", - name: "amount", - type: "uint256" - } - ], - internalType: "struct ISignatureTransfer.TokenPermissions[]", - name: "permitted", - type: "tuple[]" - }, - { - internalType: "uint256", - name: "nonce", - type: "uint256" - }, - { - internalType: "uint256", - name: "deadline", - type: "uint256" - } - ], - internalType: "struct ISignatureTransfer.PermitBatchTransferFrom", - name: "permit", - type: "tuple" - }, - { - internalType: "address", - name: "owner", - type: "address" - }, - { - components: [ - { - internalType: "address", - name: "to", - type: "address" - }, - { - internalType: "uint256", - name: "requestedAmount", - type: "uint256" - } - ], - internalType: "struct ISignatureTransfer.SignatureTransferDetails[]", - name: "transferDetails", - type: "tuple[]" - }, - { - internalType: "bytes32", - name: "witness", - type: "bytes32" - }, - { - internalType: "string", - name: "witnessTypeName", - type: "string" - }, - { - internalType: "string", - name: "witnessType", - type: "string" - }, - { - internalType: "bytes", - name: "signature", - type: "bytes" - } - ], - name: "permitWitnessTransferFrom", - outputs: [ - ], - stateMutability: "nonpayable", - type: "function" - }, - { - inputs: [ - { - internalType: "address", - name: "token", - type: "address" - }, - { - internalType: "address", - name: "from", - type: "address" - }, - { - internalType: "address", - name: "to", - type: "address" - }, - { - internalType: "uint160", - name: "amount", - type: "uint160" - } - ], - name: "transferFrom", - outputs: [ - ], - stateMutability: "nonpayable", - type: "function" - }, - { - inputs: [ - { - internalType: "address", - name: "from", - type: "address" - }, - { - components: [ - { - internalType: "address", - name: "token", - type: "address" - }, - { - internalType: "uint160", - name: "amount", - type: "uint160" - }, - { - internalType: "address", - name: "to", - type: "address" - } - ], - internalType: "struct IAllowanceTransfer.AllowanceTransferDetails[]", - name: "transferDetails", - type: "tuple[]" - } - ], - name: "transferFrom", - outputs: [ - ], - stateMutability: "nonpayable", - type: "function" - } -]; - -var AllowanceProvider = /*#__PURE__*/function () { - function AllowanceProvider(provider, permit2Address) { - this.provider = provider; - this.permit2Address = permit2Address; - this.permit2 = new contracts.Contract(this.permit2Address, Permit2Abi, this.provider); - } - var _proto = AllowanceProvider.prototype; - _proto.getAllowanceData = /*#__PURE__*/function () { - var _getAllowanceData = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(token, owner, spender) { - return _regeneratorRuntime().wrap(function _callee$(_context) { - while (1) switch (_context.prev = _context.next) { - case 0: - _context.next = 2; - return this.permit2.allowance(owner, token, spender); - case 2: - return _context.abrupt("return", _context.sent); - case 3: - case "end": - return _context.stop(); - } - }, _callee, this); - })); - function getAllowanceData(_x, _x2, _x3) { - return _getAllowanceData.apply(this, arguments); - } - return getAllowanceData; - }(); - _proto.getAllowance = /*#__PURE__*/function () { - var _getAllowance = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(token, owner, spender) { - return _regeneratorRuntime().wrap(function _callee2$(_context2) { - while (1) switch (_context2.prev = _context2.next) { - case 0: - _context2.next = 2; - return this.getAllowanceData(token, owner, spender); - case 2: - return _context2.abrupt("return", _context2.sent.amount); - case 3: - case "end": - return _context2.stop(); - } - }, _callee2, this); - })); - function getAllowance(_x4, _x5, _x6) { - return _getAllowance.apply(this, arguments); - } - return getAllowance; - }(); - _proto.getNonce = /*#__PURE__*/function () { - var _getNonce = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(token, owner, spender) { - return _regeneratorRuntime().wrap(function _callee3$(_context3) { - while (1) switch (_context3.prev = _context3.next) { - case 0: - _context3.next = 2; - return this.getAllowanceData(token, owner, spender); - case 2: - return _context3.abrupt("return", _context3.sent.nonce); - case 3: - case "end": - return _context3.stop(); - } - }, _callee3, this); - })); - function getNonce(_x7, _x8, _x9) { - return _getNonce.apply(this, arguments); - } - return getNonce; - }(); - _proto.getExpiration = /*#__PURE__*/function () { - var _getExpiration = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(token, owner, spender) { - return _regeneratorRuntime().wrap(function _callee4$(_context4) { - while (1) switch (_context4.prev = _context4.next) { - case 0: - _context4.next = 2; - return this.getAllowanceData(token, owner, spender); - case 2: - return _context4.abrupt("return", _context4.sent.expiration); - case 3: - case "end": - return _context4.stop(); - } - }, _callee4, this); - })); - function getExpiration(_x10, _x11, _x12) { - return _getExpiration.apply(this, arguments); - } - return getExpiration; - }(); - return AllowanceProvider; -}(); - -__webpack_unused_export__ = AllowanceProvider; -__webpack_unused_export__ = AllowanceTransfer; -__webpack_unused_export__ = InstantExpiration; -__webpack_unused_export__ = MaxAllowanceExpiration; -__webpack_unused_export__ = MaxAllowanceTransferAmount; -__webpack_unused_export__ = MaxOrderedNonce; -__webpack_unused_export__ = MaxSigDeadline; -__webpack_unused_export__ = MaxSignatureTransferAmount; -__webpack_unused_export__ = MaxUint160; -exports.MaxUint256 = MaxUint256; -__webpack_unused_export__ = MaxUint48; -__webpack_unused_export__ = MaxUnorderedNonce; -exports.PERMIT2_ADDRESS = PERMIT2_ADDRESS; -exports.SignatureTransfer = SignatureTransfer; -__webpack_unused_export__ = permit2Address; -//# sourceMappingURL=permit2-sdk.cjs.development.js.map - - -/***/ }), - -/***/ 42600: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; -var __webpack_unused_export__; -__webpack_unused_export__ = ({value:!0});var e,t=(e=__nccwpck_require__(9889))&&"object"==typeof e&&"default"in e?e.default:e,n=__nccwpck_require__(91839),r=__nccwpck_require__(18202),a=__nccwpck_require__(98322),i=r.BigNumber.from("0xffffffffffff"),s=r.BigNumber.from("0xffffffffffffffffffffffffffffffffffffffff"),o=r.BigNumber.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),p=s,u=i,y=i,d=o,l=o,m=o,c=r.BigNumber.from(0);function f(e,t){return{name:"Permit2",chainId:t,verifyingContract:e}}var h=[{name:"token",type:"address"},{name:"amount",type:"uint160"},{name:"expiration",type:"uint48"},{name:"nonce",type:"uint48"}],T={PermitSingle:[{name:"details",type:"PermitDetails"},{name:"spender",type:"address"},{name:"sigDeadline",type:"uint256"}],PermitDetails:h},v={PermitBatch:[{name:"details",type:"PermitDetails[]"},{name:"spender",type:"address"},{name:"sigDeadline",type:"uint256"}],PermitDetails:h},g=function(){function e(){}return e.getPermitData=function(e,n,r){m.gte(e.sigDeadline)||t(!1);var a=f(n,r);return function(e){return!Array.isArray(e.details)}(e)?(w(e.details),{domain:a,types:T,values:e}):(e.details.forEach(w),{domain:a,types:v,values:e})},e.hash=function(t,r,a){var i=e.getPermitData(t,r,a);return n._TypedDataEncoder.hash(i.domain,i.types,i.values)},e}();function w(e){y.gte(e.nonce)||t(!1),p.gte(e.amount)||t(!1),u.gte(e.expiration)||t(!1)}function x(){x=function(){return t};var e,t={},n=Object.prototype,r=n.hasOwnProperty,a=Object.defineProperty||function(e,t,n){e[t]=n.value},i="function"==typeof Symbol?Symbol:{},s=i.iterator||"@@iterator",o=i.asyncIterator||"@@asyncIterator",p=i.toStringTag||"@@toStringTag";function u(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,n){return e[t]=n}}function y(e,t,n,r){var i=Object.create((t&&t.prototype instanceof h?t:h).prototype),s=new L(r||[]);return a(i,"_invoke",{value:E(e,n,s)}),i}function d(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=y;var l="suspendedStart",m="executing",c="completed",f={};function h(){}function T(){}function v(){}var g={};u(g,s,(function(){return this}));var w=Object.getPrototypeOf,b=w&&w(w(N([])));b&&b!==n&&r.call(b,s)&&(g=b);var P=v.prototype=h.prototype=Object.create(g);function k(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function A(e,t){function n(a,i,s,o){var p=d(e[a],e,i);if("throw"!==p.type){var u=p.arg,y=u.value;return y&&"object"==typeof y&&r.call(y,"__await")?t.resolve(y.__await).then((function(e){n("next",e,s,o)}),(function(e){n("throw",e,s,o)})):t.resolve(y).then((function(e){u.value=e,s(u)}),(function(e){return n("throw",e,s,o)}))}o(p.arg)}var i;a(this,"_invoke",{value:function(e,r){function a(){return new t((function(t,a){n(e,r,t,a)}))}return i=i?i.then(a,a):a()}})}function E(t,n,r){var a=l;return function(i,s){if(a===m)throw new Error("Generator is already running");if(a===c){if("throw"===i)throw s;return{value:e,done:!0}}for(r.method=i,r.arg=s;;){var o=r.delegate;if(o){var p=D(o,r);if(p){if(p===f)continue;return p}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(a===l)throw a=c,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);a=m;var u=d(t,n,r);if("normal"===u.type){if(a=r.done?c:"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(a=c,r.method="throw",r.arg=u.arg)}}}function D(t,n){var r=n.method,a=t.iterator[r];if(a===e)return n.delegate=null,"throw"===r&&t.iterator.return&&(n.method="return",n.arg=e,D(t,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var i=d(a,t.iterator,n.arg);if("throw"===i.type)return n.method="throw",n.arg=i.arg,n.delegate=null,f;var s=i.arg;return s?s.done?(n[t.resultName]=s.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,f):s:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,f)}function S(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function L(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(S,this),this.reset(!0)}function N(t){if(t||""===t){var n=t[s];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var a=-1,i=function n(){for(;++a=0;--i){var s=this.tryEntries[i],o=s.completion;if("root"===s.tryLoc)return a("end");if(s.tryLoc<=this.prev){var p=r.call(s,"catchLoc"),u=r.call(s,"finallyLoc");if(p&&u){if(this.prev=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),I(n),f}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;I(n)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:N(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),f}},t}function b(e,t,n,r,a,i,s){try{var o=e[i](s),p=o.value}catch(e){return void n(e)}o.done?t(p):Promise.resolve(p).then(r,a)}function P(e){return function(){var t=this,n=arguments;return new Promise((function(r,a){var i=e.apply(t,n);function s(e){b(i,r,a,s,o,"next",e)}function o(e){b(i,r,a,s,o,"throw",e)}s(void 0)}))}}function k(){return(k=Object.assign?Object.assign.bind():function(e){for(var t=1;t { - -"use strict"; -/** - * @author Toru Nagashima - * See LICENSE file in root directory for full license. - */ - - -Object.defineProperty(exports, "__esModule", ({ value: true })); - -var eventTargetShim = __nccwpck_require__(16577); - -/** - * The signal class. - * @see https://dom.spec.whatwg.org/#abortsignal - */ -class AbortSignal extends eventTargetShim.EventTarget { - /** - * AbortSignal cannot be constructed directly. - */ - constructor() { - super(); - throw new TypeError("AbortSignal cannot be constructed directly"); - } - /** - * Returns `true` if this `AbortSignal`'s `AbortController` has signaled to abort, and `false` otherwise. - */ - get aborted() { - const aborted = abortedFlags.get(this); - if (typeof aborted !== "boolean") { - throw new TypeError(`Expected 'this' to be an 'AbortSignal' object, but got ${this === null ? "null" : typeof this}`); - } - return aborted; - } -} -eventTargetShim.defineEventAttribute(AbortSignal.prototype, "abort"); -/** - * Create an AbortSignal object. - */ -function createAbortSignal() { - const signal = Object.create(AbortSignal.prototype); - eventTargetShim.EventTarget.call(signal); - abortedFlags.set(signal, false); - return signal; -} -/** - * Abort a given signal. - */ -function abortSignal(signal) { - if (abortedFlags.get(signal) !== false) { - return; - } - abortedFlags.set(signal, true); - signal.dispatchEvent({ type: "abort" }); -} -/** - * Aborted flag for each instances. - */ -const abortedFlags = new WeakMap(); -// Properties should be enumerable. -Object.defineProperties(AbortSignal.prototype, { - aborted: { enumerable: true }, -}); -// `toString()` should return `"[object AbortSignal]"` -if (typeof Symbol === "function" && typeof Symbol.toStringTag === "symbol") { - Object.defineProperty(AbortSignal.prototype, Symbol.toStringTag, { - configurable: true, - value: "AbortSignal", - }); -} - -/** - * The AbortController. - * @see https://dom.spec.whatwg.org/#abortcontroller - */ -class AbortController { - /** - * Initialize this controller. - */ - constructor() { - signals.set(this, createAbortSignal()); - } - /** - * Returns the `AbortSignal` object associated with this object. - */ - get signal() { - return getSignal(this); - } - /** - * Abort and signal to any observers that the associated activity is to be aborted. - */ - abort() { - abortSignal(getSignal(this)); - } -} -/** - * Associated signals. - */ -const signals = new WeakMap(); -/** - * Get the associated signal of a given controller. - */ -function getSignal(controller) { - const signal = signals.get(controller); - if (signal == null) { - throw new TypeError(`Expected 'this' to be an 'AbortController' object, but got ${controller === null ? "null" : typeof controller}`); - } - return signal; -} -// Properties should be enumerable. -Object.defineProperties(AbortController.prototype, { - signal: { enumerable: true }, - abort: { enumerable: true }, -}); -if (typeof Symbol === "function" && typeof Symbol.toStringTag === "symbol") { - Object.defineProperty(AbortController.prototype, Symbol.toStringTag, { - configurable: true, - value: "AbortController", - }); -} - -exports.AbortController = AbortController; -exports.AbortSignal = AbortSignal; -exports["default"] = AbortController; - -module.exports = AbortController -module.exports.AbortController = module.exports["default"] = AbortController -module.exports.AbortSignal = AbortSignal -//# sourceMappingURL=abort-controller.js.map - - -/***/ }), - -/***/ 15183: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.req = exports.json = exports.toBuffer = void 0; -const http = __importStar(__nccwpck_require__(58611)); -const https = __importStar(__nccwpck_require__(65692)); -async function toBuffer(stream) { - let length = 0; - const chunks = []; - for await (const chunk of stream) { - length += chunk.length; - chunks.push(chunk); - } - return Buffer.concat(chunks, length); -} -exports.toBuffer = toBuffer; -// eslint-disable-next-line @typescript-eslint/no-explicit-any -async function json(stream) { - const buf = await toBuffer(stream); - const str = buf.toString('utf8'); - try { - return JSON.parse(str); - } - catch (_err) { - const err = _err; - err.message += ` (input: ${str})`; - throw err; - } -} -exports.json = json; -function req(url, opts = {}) { - const href = typeof url === 'string' ? url : url.href; - const req = (href.startsWith('https:') ? https : http).request(url, opts); - const promise = new Promise((resolve, reject) => { - req - .once('response', resolve) - .once('error', reject) - .end(); - }); - req.then = promise.then.bind(promise); - return req; -} -exports.req = req; -//# sourceMappingURL=helpers.js.map - -/***/ }), - -/***/ 98894: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.Agent = void 0; -const net = __importStar(__nccwpck_require__(69278)); -const http = __importStar(__nccwpck_require__(58611)); -const https_1 = __nccwpck_require__(65692); -__exportStar(__nccwpck_require__(15183), exports); -const INTERNAL = Symbol('AgentBaseInternalState'); -class Agent extends http.Agent { - constructor(opts) { - super(opts); - this[INTERNAL] = {}; - } - /** - * Determine whether this is an `http` or `https` request. - */ - isSecureEndpoint(options) { - if (options) { - // First check the `secureEndpoint` property explicitly, since this - // means that a parent `Agent` is "passing through" to this instance. - // eslint-disable-next-line @typescript-eslint/no-explicit-any - if (typeof options.secureEndpoint === 'boolean') { - return options.secureEndpoint; - } - // If no explicit `secure` endpoint, check if `protocol` property is - // set. This will usually be the case since using a full string URL - // or `URL` instance should be the most common usage. - if (typeof options.protocol === 'string') { - return options.protocol === 'https:'; - } - } - // Finally, if no `protocol` property was set, then fall back to - // checking the stack trace of the current call stack, and try to - // detect the "https" module. - const { stack } = new Error(); - if (typeof stack !== 'string') - return false; - return stack - .split('\n') - .some((l) => l.indexOf('(https.js:') !== -1 || - l.indexOf('node:https:') !== -1); - } - // In order to support async signatures in `connect()` and Node's native - // connection pooling in `http.Agent`, the array of sockets for each origin - // has to be updated synchronously. This is so the length of the array is - // accurate when `addRequest()` is next called. We achieve this by creating a - // fake socket and adding it to `sockets[origin]` and incrementing - // `totalSocketCount`. - incrementSockets(name) { - // If `maxSockets` and `maxTotalSockets` are both Infinity then there is no - // need to create a fake socket because Node.js native connection pooling - // will never be invoked. - if (this.maxSockets === Infinity && this.maxTotalSockets === Infinity) { - return null; - } - // All instances of `sockets` are expected TypeScript errors. The - // alternative is to add it as a private property of this class but that - // will break TypeScript subclassing. - if (!this.sockets[name]) { - // @ts-expect-error `sockets` is readonly in `@types/node` - this.sockets[name] = []; - } - const fakeSocket = new net.Socket({ writable: false }); - this.sockets[name].push(fakeSocket); - // @ts-expect-error `totalSocketCount` isn't defined in `@types/node` - this.totalSocketCount++; - return fakeSocket; - } - decrementSockets(name, socket) { - if (!this.sockets[name] || socket === null) { - return; - } - const sockets = this.sockets[name]; - const index = sockets.indexOf(socket); - if (index !== -1) { - sockets.splice(index, 1); - // @ts-expect-error `totalSocketCount` isn't defined in `@types/node` - this.totalSocketCount--; - if (sockets.length === 0) { - // @ts-expect-error `sockets` is readonly in `@types/node` - delete this.sockets[name]; - } - } - } - // In order to properly update the socket pool, we need to call `getName()` on - // the core `https.Agent` if it is a secureEndpoint. - getName(options) { - const secureEndpoint = typeof options.secureEndpoint === 'boolean' - ? options.secureEndpoint - : this.isSecureEndpoint(options); - if (secureEndpoint) { - // @ts-expect-error `getName()` isn't defined in `@types/node` - return https_1.Agent.prototype.getName.call(this, options); - } - // @ts-expect-error `getName()` isn't defined in `@types/node` - return super.getName(options); - } - createSocket(req, options, cb) { - const connectOpts = { - ...options, - secureEndpoint: this.isSecureEndpoint(options), - }; - const name = this.getName(connectOpts); - const fakeSocket = this.incrementSockets(name); - Promise.resolve() - .then(() => this.connect(req, connectOpts)) - .then((socket) => { - this.decrementSockets(name, fakeSocket); - if (socket instanceof http.Agent) { - // @ts-expect-error `addRequest()` isn't defined in `@types/node` - return socket.addRequest(req, connectOpts); - } - this[INTERNAL].currentSocket = socket; - // @ts-expect-error `createSocket()` isn't defined in `@types/node` - super.createSocket(req, options, cb); - }, (err) => { - this.decrementSockets(name, fakeSocket); - cb(err); - }); - } - createConnection() { - const socket = this[INTERNAL].currentSocket; - this[INTERNAL].currentSocket = undefined; - if (!socket) { - throw new Error('No socket was returned in the `connect()` function'); - } - return socket; - } - get defaultPort() { - return (this[INTERNAL].defaultPort ?? - (this.protocol === 'https:' ? 443 : 80)); - } - set defaultPort(v) { - if (this[INTERNAL]) { - this[INTERNAL].defaultPort = v; - } - } - get protocol() { - return (this[INTERNAL].protocol ?? - (this.isSecureEndpoint() ? 'https:' : 'http:')); - } - set protocol(v) { - if (this[INTERNAL]) { - this[INTERNAL].protocol = v; - } - } -} -exports.Agent = Agent; -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 3873: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -module.exports = __nccwpck_require__(12532); -module.exports.HttpsAgent = __nccwpck_require__(10414); -module.exports.constants = __nccwpck_require__(16160); - - -/***/ }), - -/***/ 12532: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -const OriginalAgent = (__nccwpck_require__(58611).Agent); -const ms = __nccwpck_require__(33724); -const debug = (__nccwpck_require__(39023).debuglog)('agentkeepalive'); -const { - INIT_SOCKET, - CURRENT_ID, - CREATE_ID, - SOCKET_CREATED_TIME, - SOCKET_NAME, - SOCKET_REQUEST_COUNT, - SOCKET_REQUEST_FINISHED_COUNT, -} = __nccwpck_require__(16160); - -// OriginalAgent come from -// - https://github.com/nodejs/node/blob/v8.12.0/lib/_http_agent.js -// - https://github.com/nodejs/node/blob/v10.12.0/lib/_http_agent.js - -// node <= 10 -let defaultTimeoutListenerCount = 1; -const majorVersion = parseInt(process.version.split('.', 1)[0].substring(1)); -if (majorVersion >= 11 && majorVersion <= 12) { - defaultTimeoutListenerCount = 2; -} else if (majorVersion >= 13) { - defaultTimeoutListenerCount = 3; -} - -function deprecate(message) { - console.log('[agentkeepalive:deprecated] %s', message); -} - -class Agent extends OriginalAgent { - constructor(options) { - options = options || {}; - options.keepAlive = options.keepAlive !== false; - // default is keep-alive and 4s free socket timeout - // see https://medium.com/ssense-tech/reduce-networking-errors-in-nodejs-23b4eb9f2d83 - if (options.freeSocketTimeout === undefined) { - options.freeSocketTimeout = 4000; - } - // Legacy API: keepAliveTimeout should be rename to `freeSocketTimeout` - if (options.keepAliveTimeout) { - deprecate('options.keepAliveTimeout is deprecated, please use options.freeSocketTimeout instead'); - options.freeSocketTimeout = options.keepAliveTimeout; - delete options.keepAliveTimeout; - } - // Legacy API: freeSocketKeepAliveTimeout should be rename to `freeSocketTimeout` - if (options.freeSocketKeepAliveTimeout) { - deprecate('options.freeSocketKeepAliveTimeout is deprecated, please use options.freeSocketTimeout instead'); - options.freeSocketTimeout = options.freeSocketKeepAliveTimeout; - delete options.freeSocketKeepAliveTimeout; - } - - // Sets the socket to timeout after timeout milliseconds of inactivity on the socket. - // By default is double free socket timeout. - if (options.timeout === undefined) { - // make sure socket default inactivity timeout >= 8s - options.timeout = Math.max(options.freeSocketTimeout * 2, 8000); - } - - // support humanize format - options.timeout = ms(options.timeout); - options.freeSocketTimeout = ms(options.freeSocketTimeout); - options.socketActiveTTL = options.socketActiveTTL ? ms(options.socketActiveTTL) : 0; - - super(options); - - this[CURRENT_ID] = 0; - - // create socket success counter - this.createSocketCount = 0; - this.createSocketCountLastCheck = 0; - - this.createSocketErrorCount = 0; - this.createSocketErrorCountLastCheck = 0; - - this.closeSocketCount = 0; - this.closeSocketCountLastCheck = 0; - - // socket error event count - this.errorSocketCount = 0; - this.errorSocketCountLastCheck = 0; - - // request finished counter - this.requestCount = 0; - this.requestCountLastCheck = 0; - - // including free socket timeout counter - this.timeoutSocketCount = 0; - this.timeoutSocketCountLastCheck = 0; - - this.on('free', socket => { - // https://github.com/nodejs/node/pull/32000 - // Node.js native agent will check socket timeout eqs agent.options.timeout. - // Use the ttl or freeSocketTimeout to overwrite. - const timeout = this.calcSocketTimeout(socket); - if (timeout > 0 && socket.timeout !== timeout) { - socket.setTimeout(timeout); - } - }); - } - - get freeSocketKeepAliveTimeout() { - deprecate('agent.freeSocketKeepAliveTimeout is deprecated, please use agent.options.freeSocketTimeout instead'); - return this.options.freeSocketTimeout; - } - - get timeout() { - deprecate('agent.timeout is deprecated, please use agent.options.timeout instead'); - return this.options.timeout; - } - - get socketActiveTTL() { - deprecate('agent.socketActiveTTL is deprecated, please use agent.options.socketActiveTTL instead'); - return this.options.socketActiveTTL; - } - - calcSocketTimeout(socket) { - /** - * return <= 0: should free socket - * return > 0: should update socket timeout - * return undefined: not find custom timeout - */ - let freeSocketTimeout = this.options.freeSocketTimeout; - const socketActiveTTL = this.options.socketActiveTTL; - if (socketActiveTTL) { - // check socketActiveTTL - const aliveTime = Date.now() - socket[SOCKET_CREATED_TIME]; - const diff = socketActiveTTL - aliveTime; - if (diff <= 0) { - return diff; - } - if (freeSocketTimeout && diff < freeSocketTimeout) { - freeSocketTimeout = diff; - } - } - // set freeSocketTimeout - if (freeSocketTimeout) { - // set free keepalive timer - // try to use socket custom freeSocketTimeout first, support headers['keep-alive'] - // https://github.com/node-modules/urllib/blob/b76053020923f4d99a1c93cf2e16e0c5ba10bacf/lib/urllib.js#L498 - const customFreeSocketTimeout = socket.freeSocketTimeout || socket.freeSocketKeepAliveTimeout; - return customFreeSocketTimeout || freeSocketTimeout; - } - } - - keepSocketAlive(socket) { - const result = super.keepSocketAlive(socket); - // should not keepAlive, do nothing - if (!result) return result; - - const customTimeout = this.calcSocketTimeout(socket); - if (typeof customTimeout === 'undefined') { - return true; - } - if (customTimeout <= 0) { - debug('%s(requests: %s, finished: %s) free but need to destroy by TTL, request count %s, diff is %s', - socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], customTimeout); - return false; - } - if (socket.timeout !== customTimeout) { - socket.setTimeout(customTimeout); - } - return true; - } - - // only call on addRequest - reuseSocket(...args) { - // reuseSocket(socket, req) - super.reuseSocket(...args); - const socket = args[0]; - const req = args[1]; - req.reusedSocket = true; - const agentTimeout = this.options.timeout; - if (getSocketTimeout(socket) !== agentTimeout) { - // reset timeout before use - socket.setTimeout(agentTimeout); - debug('%s reset timeout to %sms', socket[SOCKET_NAME], agentTimeout); - } - socket[SOCKET_REQUEST_COUNT]++; - debug('%s(requests: %s, finished: %s) reuse on addRequest, timeout %sms', - socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], - getSocketTimeout(socket)); - } - - [CREATE_ID]() { - const id = this[CURRENT_ID]++; - if (this[CURRENT_ID] === Number.MAX_SAFE_INTEGER) this[CURRENT_ID] = 0; - return id; - } - - [INIT_SOCKET](socket, options) { - // bugfix here. - // https on node 8, 10 won't set agent.options.timeout by default - // TODO: need to fix on node itself - if (options.timeout) { - const timeout = getSocketTimeout(socket); - if (!timeout) { - socket.setTimeout(options.timeout); - } - } - - if (this.options.keepAlive) { - // Disable Nagle's algorithm: http://blog.caustik.com/2012/04/08/scaling-node-js-to-100k-concurrent-connections/ - // https://fengmk2.com/benchmark/nagle-algorithm-delayed-ack-mock.html - socket.setNoDelay(true); - } - this.createSocketCount++; - if (this.options.socketActiveTTL) { - socket[SOCKET_CREATED_TIME] = Date.now(); - } - // don't show the hole '-----BEGIN CERTIFICATE----' key string - socket[SOCKET_NAME] = `sock[${this[CREATE_ID]()}#${options._agentKey}]`.split('-----BEGIN', 1)[0]; - socket[SOCKET_REQUEST_COUNT] = 1; - socket[SOCKET_REQUEST_FINISHED_COUNT] = 0; - installListeners(this, socket, options); - } - - createConnection(options, oncreate) { - let called = false; - const onNewCreate = (err, socket) => { - if (called) return; - called = true; - - if (err) { - this.createSocketErrorCount++; - return oncreate(err); - } - this[INIT_SOCKET](socket, options); - oncreate(err, socket); - }; - - const newSocket = super.createConnection(options, onNewCreate); - if (newSocket) onNewCreate(null, newSocket); - return newSocket; - } - - get statusChanged() { - const changed = this.createSocketCount !== this.createSocketCountLastCheck || - this.createSocketErrorCount !== this.createSocketErrorCountLastCheck || - this.closeSocketCount !== this.closeSocketCountLastCheck || - this.errorSocketCount !== this.errorSocketCountLastCheck || - this.timeoutSocketCount !== this.timeoutSocketCountLastCheck || - this.requestCount !== this.requestCountLastCheck; - if (changed) { - this.createSocketCountLastCheck = this.createSocketCount; - this.createSocketErrorCountLastCheck = this.createSocketErrorCount; - this.closeSocketCountLastCheck = this.closeSocketCount; - this.errorSocketCountLastCheck = this.errorSocketCount; - this.timeoutSocketCountLastCheck = this.timeoutSocketCount; - this.requestCountLastCheck = this.requestCount; - } - return changed; - } - - getCurrentStatus() { - return { - createSocketCount: this.createSocketCount, - createSocketErrorCount: this.createSocketErrorCount, - closeSocketCount: this.closeSocketCount, - errorSocketCount: this.errorSocketCount, - timeoutSocketCount: this.timeoutSocketCount, - requestCount: this.requestCount, - freeSockets: inspect(this.freeSockets), - sockets: inspect(this.sockets), - requests: inspect(this.requests), - }; - } -} - -// node 8 don't has timeout attribute on socket -// https://github.com/nodejs/node/pull/21204/files#diff-e6ef024c3775d787c38487a6309e491dR408 -function getSocketTimeout(socket) { - return socket.timeout || socket._idleTimeout; -} - -function installListeners(agent, socket, options) { - debug('%s create, timeout %sms', socket[SOCKET_NAME], getSocketTimeout(socket)); - - // listener socket events: close, timeout, error, free - function onFree() { - // create and socket.emit('free') logic - // https://github.com/nodejs/node/blob/master/lib/_http_agent.js#L311 - // no req on the socket, it should be the new socket - if (!socket._httpMessage && socket[SOCKET_REQUEST_COUNT] === 1) return; - - socket[SOCKET_REQUEST_FINISHED_COUNT]++; - agent.requestCount++; - debug('%s(requests: %s, finished: %s) free', - socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT]); - - // should reuse on pedding requests? - const name = agent.getName(options); - if (socket.writable && agent.requests[name] && agent.requests[name].length) { - // will be reuse on agent free listener - socket[SOCKET_REQUEST_COUNT]++; - debug('%s(requests: %s, finished: %s) will be reuse on agent free event', - socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT]); - } - } - socket.on('free', onFree); - - function onClose(isError) { - debug('%s(requests: %s, finished: %s) close, isError: %s', - socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], isError); - agent.closeSocketCount++; - } - socket.on('close', onClose); - - // start socket timeout handler - function onTimeout() { - // onTimeout and emitRequestTimeout(_http_client.js) - // https://github.com/nodejs/node/blob/v12.x/lib/_http_client.js#L711 - const listenerCount = socket.listeners('timeout').length; - // node <= 10, default listenerCount is 1, onTimeout - // 11 < node <= 12, default listenerCount is 2, onTimeout and emitRequestTimeout - // node >= 13, default listenerCount is 3, onTimeout, - // onTimeout(https://github.com/nodejs/node/pull/32000/files#diff-5f7fb0850412c6be189faeddea6c5359R333) - // and emitRequestTimeout - const timeout = getSocketTimeout(socket); - const req = socket._httpMessage; - const reqTimeoutListenerCount = req && req.listeners('timeout').length || 0; - debug('%s(requests: %s, finished: %s) timeout after %sms, listeners %s, defaultTimeoutListenerCount %s, hasHttpRequest %s, HttpRequest timeoutListenerCount %s', - socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], - timeout, listenerCount, defaultTimeoutListenerCount, !!req, reqTimeoutListenerCount); - if (debug.enabled) { - debug('timeout listeners: %s', socket.listeners('timeout').map(f => f.name).join(', ')); - } - agent.timeoutSocketCount++; - const name = agent.getName(options); - if (agent.freeSockets[name] && agent.freeSockets[name].indexOf(socket) !== -1) { - // free socket timeout, destroy quietly - socket.destroy(); - // Remove it from freeSockets list immediately to prevent new requests - // from being sent through this socket. - agent.removeSocket(socket, options); - debug('%s is free, destroy quietly', socket[SOCKET_NAME]); - } else { - // if there is no any request socket timeout handler, - // agent need to handle socket timeout itself. - // - // custom request socket timeout handle logic must follow these rules: - // 1. Destroy socket first - // 2. Must emit socket 'agentRemove' event tell agent remove socket - // from freeSockets list immediately. - // Otherise you may be get 'socket hang up' error when reuse - // free socket and timeout happen in the same time. - if (reqTimeoutListenerCount === 0) { - const error = new Error('Socket timeout'); - error.code = 'ERR_SOCKET_TIMEOUT'; - error.timeout = timeout; - // must manually call socket.end() or socket.destroy() to end the connection. - // https://nodejs.org/dist/latest-v10.x/docs/api/net.html#net_socket_settimeout_timeout_callback - socket.destroy(error); - agent.removeSocket(socket, options); - debug('%s destroy with timeout error', socket[SOCKET_NAME]); - } - } - } - socket.on('timeout', onTimeout); - - function onError(err) { - const listenerCount = socket.listeners('error').length; - debug('%s(requests: %s, finished: %s) error: %s, listenerCount: %s', - socket[SOCKET_NAME], socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT], - err, listenerCount); - agent.errorSocketCount++; - if (listenerCount === 1) { - // if socket don't contain error event handler, don't catch it, emit it again - debug('%s emit uncaught error event', socket[SOCKET_NAME]); - socket.removeListener('error', onError); - socket.emit('error', err); - } - } - socket.on('error', onError); - - function onRemove() { - debug('%s(requests: %s, finished: %s) agentRemove', - socket[SOCKET_NAME], - socket[SOCKET_REQUEST_COUNT], socket[SOCKET_REQUEST_FINISHED_COUNT]); - // We need this function for cases like HTTP 'upgrade' - // (defined by WebSockets) where we need to remove a socket from the - // pool because it'll be locked up indefinitely - socket.removeListener('close', onClose); - socket.removeListener('error', onError); - socket.removeListener('free', onFree); - socket.removeListener('timeout', onTimeout); - socket.removeListener('agentRemove', onRemove); - } - socket.on('agentRemove', onRemove); -} - -module.exports = Agent; - -function inspect(obj) { - const res = {}; - for (const key in obj) { - res[key] = obj[key].length; - } - return res; -} - - -/***/ }), - -/***/ 16160: -/***/ ((module) => { - -"use strict"; - - -module.exports = { - // agent - CURRENT_ID: Symbol('agentkeepalive#currentId'), - CREATE_ID: Symbol('agentkeepalive#createId'), - INIT_SOCKET: Symbol('agentkeepalive#initSocket'), - CREATE_HTTPS_CONNECTION: Symbol('agentkeepalive#createHttpsConnection'), - // socket - SOCKET_CREATED_TIME: Symbol('agentkeepalive#socketCreatedTime'), - SOCKET_NAME: Symbol('agentkeepalive#socketName'), - SOCKET_REQUEST_COUNT: Symbol('agentkeepalive#socketRequestCount'), - SOCKET_REQUEST_FINISHED_COUNT: Symbol('agentkeepalive#socketRequestFinishedCount'), -}; - - -/***/ }), - -/***/ 10414: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -const OriginalHttpsAgent = (__nccwpck_require__(65692).Agent); -const HttpAgent = __nccwpck_require__(12532); -const { - INIT_SOCKET, - CREATE_HTTPS_CONNECTION, -} = __nccwpck_require__(16160); - -class HttpsAgent extends HttpAgent { - constructor(options) { - super(options); - - this.defaultPort = 443; - this.protocol = 'https:'; - this.maxCachedSessions = this.options.maxCachedSessions; - /* istanbul ignore next */ - if (this.maxCachedSessions === undefined) { - this.maxCachedSessions = 100; - } - - this._sessionCache = { - map: {}, - list: [], - }; - } - - createConnection(options, oncreate) { - const socket = this[CREATE_HTTPS_CONNECTION](options, oncreate); - this[INIT_SOCKET](socket, options); - return socket; - } -} - -// https://github.com/nodejs/node/blob/master/lib/https.js#L89 -HttpsAgent.prototype[CREATE_HTTPS_CONNECTION] = OriginalHttpsAgent.prototype.createConnection; - -[ - 'getName', - '_getSession', - '_cacheSession', - // https://github.com/nodejs/node/pull/4982 - '_evictSession', -].forEach(function(method) { - /* istanbul ignore next */ - if (typeof OriginalHttpsAgent.prototype[method] === 'function') { - HttpsAgent.prototype[method] = OriginalHttpsAgent.prototype[method]; - } -}); - -module.exports = HttpsAgent; - - -/***/ }), - -/***/ 31324: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -module.exports = -{ - parallel : __nccwpck_require__(83857), - serial : __nccwpck_require__(31054), - serialOrdered : __nccwpck_require__(53961) -}; - - -/***/ }), - -/***/ 24818: -/***/ ((module) => { - -// API -module.exports = abort; - -/** - * Aborts leftover active jobs - * - * @param {object} state - current state object - */ -function abort(state) -{ - Object.keys(state.jobs).forEach(clean.bind(state)); - - // reset leftover jobs - state.jobs = {}; -} - -/** - * Cleans up leftover job by invoking abort function for the provided job id - * - * @this state - * @param {string|number} key - job id to abort - */ -function clean(key) -{ - if (typeof this.jobs[key] == 'function') - { - this.jobs[key](); - } -} - - -/***/ }), - -/***/ 78452: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -var defer = __nccwpck_require__(6819); - -// API -module.exports = async; - -/** - * Runs provided callback asynchronously - * even if callback itself is not - * - * @param {function} callback - callback to invoke - * @returns {function} - augmented callback - */ -function async(callback) -{ - var isAsync = false; - - // check if async happened - defer(function() { isAsync = true; }); - - return function async_callback(err, result) - { - if (isAsync) - { - callback(err, result); - } - else - { - defer(function nextTick_callback() - { - callback(err, result); - }); - } - }; -} - - -/***/ }), - -/***/ 6819: -/***/ ((module) => { - -module.exports = defer; - -/** - * Runs provided function on next iteration of the event loop - * - * @param {function} fn - function to run - */ -function defer(fn) -{ - var nextTick = typeof setImmediate == 'function' - ? setImmediate - : ( - typeof process == 'object' && typeof process.nextTick == 'function' - ? process.nextTick - : null - ); - - if (nextTick) - { - nextTick(fn); - } - else - { - setTimeout(fn, 0); - } -} - - -/***/ }), - -/***/ 24902: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -var async = __nccwpck_require__(78452) - , abort = __nccwpck_require__(24818) - ; - -// API -module.exports = iterate; - -/** - * Iterates over each job object - * - * @param {array|object} list - array or object (named list) to iterate over - * @param {function} iterator - iterator to run - * @param {object} state - current job status - * @param {function} callback - invoked when all elements processed - */ -function iterate(list, iterator, state, callback) -{ - // store current index - var key = state['keyedList'] ? state['keyedList'][state.index] : state.index; - - state.jobs[key] = runJob(iterator, key, list[key], function(error, output) - { - // don't repeat yourself - // skip secondary callbacks - if (!(key in state.jobs)) - { - return; - } - - // clean up jobs - delete state.jobs[key]; - - if (error) - { - // don't process rest of the results - // stop still active jobs - // and reset the list - abort(state); - } - else - { - state.results[key] = output; - } - - // return salvaged results - callback(error, state.results); - }); -} - -/** - * Runs iterator over provided job element - * - * @param {function} iterator - iterator to invoke - * @param {string|number} key - key/index of the element in the list of jobs - * @param {mixed} item - job description - * @param {function} callback - invoked after iterator is done with the job - * @returns {function|mixed} - job abort function or something else - */ -function runJob(iterator, key, item, callback) -{ - var aborter; - - // allow shortcut if iterator expects only two arguments - if (iterator.length == 2) - { - aborter = iterator(item, async(callback)); - } - // otherwise go with full three arguments - else - { - aborter = iterator(item, key, async(callback)); - } - - return aborter; -} - - -/***/ }), - -/***/ 81721: -/***/ ((module) => { - -// API -module.exports = state; - -/** - * Creates initial state object - * for iteration over list - * - * @param {array|object} list - list to iterate over - * @param {function|null} sortMethod - function to use for keys sort, - * or `null` to keep them as is - * @returns {object} - initial state object - */ -function state(list, sortMethod) -{ - var isNamedList = !Array.isArray(list) - , initState = - { - index : 0, - keyedList: isNamedList || sortMethod ? Object.keys(list) : null, - jobs : {}, - results : isNamedList ? {} : [], - size : isNamedList ? Object.keys(list).length : list.length - } - ; - - if (sortMethod) - { - // sort array keys based on it's values - // sort object's keys just on own merit - initState.keyedList.sort(isNamedList ? sortMethod : function(a, b) - { - return sortMethod(list[a], list[b]); - }); - } - - return initState; -} - - -/***/ }), - -/***/ 33351: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -var abort = __nccwpck_require__(24818) - , async = __nccwpck_require__(78452) - ; - -// API -module.exports = terminator; - -/** - * Terminates jobs in the attached state context - * - * @this AsyncKitState# - * @param {function} callback - final callback to invoke after termination - */ -function terminator(callback) -{ - if (!Object.keys(this.jobs).length) - { - return; - } - - // fast forward iteration index - this.index = this.size; - - // abort jobs - abort(this); - - // send back results we have so far - async(callback)(null, this.results); -} - - -/***/ }), - -/***/ 83857: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -var iterate = __nccwpck_require__(24902) - , initState = __nccwpck_require__(81721) - , terminator = __nccwpck_require__(33351) - ; - -// Public API -module.exports = parallel; - -/** - * Runs iterator over provided array elements in parallel - * - * @param {array|object} list - array or object (named list) to iterate over - * @param {function} iterator - iterator to run - * @param {function} callback - invoked when all elements processed - * @returns {function} - jobs terminator - */ -function parallel(list, iterator, callback) -{ - var state = initState(list); - - while (state.index < (state['keyedList'] || list).length) - { - iterate(list, iterator, state, function(error, result) - { - if (error) - { - callback(error, result); - return; - } - - // looks like it's the last one - if (Object.keys(state.jobs).length === 0) - { - callback(null, state.results); - return; - } - }); - - state.index++; - } - - return terminator.bind(state, callback); -} - - -/***/ }), - -/***/ 31054: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -var serialOrdered = __nccwpck_require__(53961); - -// Public API -module.exports = serial; - -/** - * Runs iterator over provided array elements in series - * - * @param {array|object} list - array or object (named list) to iterate over - * @param {function} iterator - iterator to run - * @param {function} callback - invoked when all elements processed - * @returns {function} - jobs terminator - */ -function serial(list, iterator, callback) -{ - return serialOrdered(list, iterator, null, callback); -} - - -/***/ }), - -/***/ 53961: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -var iterate = __nccwpck_require__(24902) - , initState = __nccwpck_require__(81721) - , terminator = __nccwpck_require__(33351) - ; - -// Public API -module.exports = serialOrdered; -// sorting helpers -module.exports.ascending = ascending; -module.exports.descending = descending; - -/** - * Runs iterator over provided sorted array elements in series - * - * @param {array|object} list - array or object (named list) to iterate over - * @param {function} iterator - iterator to run - * @param {function} sortMethod - custom sort function - * @param {function} callback - invoked when all elements processed - * @returns {function} - jobs terminator - */ -function serialOrdered(list, iterator, sortMethod, callback) -{ - var state = initState(list, sortMethod); - - iterate(list, iterator, state, function iteratorHandler(error, result) - { - if (error) - { - callback(error, result); - return; - } - - state.index++; - - // are we there yet? - if (state.index < (state['keyedList'] || list).length) - { - iterate(list, iterator, state, iteratorHandler); - return; - } - - // done here - callback(null, state.results); - }); - - return terminator.bind(state, callback); -} - -/* - * -- Sort methods - */ - -/** - * sort helper to sort array elements in ascending order - * - * @param {mixed} a - an item to compare - * @param {mixed} b - an item to compare - * @returns {number} - comparison result - */ -function ascending(a, b) -{ - return a < b ? -1 : a > b ? 1 : 0; -} - -/** - * sort helper to sort array elements in descending order - * - * @param {mixed} a - an item to compare - * @param {mixed} b - an item to compare - * @returns {number} - comparison result - */ -function descending(a, b) -{ - return -1 * ascending(a, b); -} - - -/***/ }), - -/***/ 38793: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -exports.byteLength = byteLength -exports.toByteArray = toByteArray -exports.fromByteArray = fromByteArray - -var lookup = [] -var revLookup = [] -var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array - -var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' -for (var i = 0, len = code.length; i < len; ++i) { - lookup[i] = code[i] - revLookup[code.charCodeAt(i)] = i -} - -// Support decoding URL-safe base64 strings, as Node.js does. -// See: https://en.wikipedia.org/wiki/Base64#URL_applications -revLookup['-'.charCodeAt(0)] = 62 -revLookup['_'.charCodeAt(0)] = 63 - -function getLens (b64) { - var len = b64.length - - if (len % 4 > 0) { - throw new Error('Invalid string. Length must be a multiple of 4') - } - - // Trim off extra bytes after placeholder bytes are found - // See: https://github.com/beatgammit/base64-js/issues/42 - var validLen = b64.indexOf('=') - if (validLen === -1) validLen = len - - var placeHoldersLen = validLen === len - ? 0 - : 4 - (validLen % 4) - - return [validLen, placeHoldersLen] -} - -// base64 is 4/3 + up to two characters of the original data -function byteLength (b64) { - var lens = getLens(b64) - var validLen = lens[0] - var placeHoldersLen = lens[1] - return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen -} - -function _byteLength (b64, validLen, placeHoldersLen) { - return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen -} - -function toByteArray (b64) { - var tmp - var lens = getLens(b64) - var validLen = lens[0] - var placeHoldersLen = lens[1] - - var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen)) - - var curByte = 0 - - // if there are placeholders, only get up to the last complete 4 chars - var len = placeHoldersLen > 0 - ? validLen - 4 - : validLen - - var i - for (i = 0; i < len; i += 4) { - tmp = - (revLookup[b64.charCodeAt(i)] << 18) | - (revLookup[b64.charCodeAt(i + 1)] << 12) | - (revLookup[b64.charCodeAt(i + 2)] << 6) | - revLookup[b64.charCodeAt(i + 3)] - arr[curByte++] = (tmp >> 16) & 0xFF - arr[curByte++] = (tmp >> 8) & 0xFF - arr[curByte++] = tmp & 0xFF - } - - if (placeHoldersLen === 2) { - tmp = - (revLookup[b64.charCodeAt(i)] << 2) | - (revLookup[b64.charCodeAt(i + 1)] >> 4) - arr[curByte++] = tmp & 0xFF - } - - if (placeHoldersLen === 1) { - tmp = - (revLookup[b64.charCodeAt(i)] << 10) | - (revLookup[b64.charCodeAt(i + 1)] << 4) | - (revLookup[b64.charCodeAt(i + 2)] >> 2) - arr[curByte++] = (tmp >> 8) & 0xFF - arr[curByte++] = tmp & 0xFF - } - - return arr -} - -function tripletToBase64 (num) { - return lookup[num >> 18 & 0x3F] + - lookup[num >> 12 & 0x3F] + - lookup[num >> 6 & 0x3F] + - lookup[num & 0x3F] -} - -function encodeChunk (uint8, start, end) { - var tmp - var output = [] - for (var i = start; i < end; i += 3) { - tmp = - ((uint8[i] << 16) & 0xFF0000) + - ((uint8[i + 1] << 8) & 0xFF00) + - (uint8[i + 2] & 0xFF) - output.push(tripletToBase64(tmp)) - } - return output.join('') -} - -function fromByteArray (uint8) { - var tmp - var len = uint8.length - var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes - var parts = [] - var maxChunkLength = 16383 // must be multiple of 3 - - // go through the array every three bytes, we'll deal with trailing stuff later - for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) { - parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength))) - } - - // pad the end with zeros, but make sure to not forget the extra bytes - if (extraBytes === 1) { - tmp = uint8[len - 1] - parts.push( - lookup[tmp >> 2] + - lookup[(tmp << 4) & 0x3F] + - '==' - ) - } else if (extraBytes === 2) { - tmp = (uint8[len - 2] << 8) + uint8[len - 1] - parts.push( - lookup[tmp >> 10] + - lookup[(tmp >> 4) & 0x3F] + - lookup[(tmp << 2) & 0x3F] + - '=' - ) - } - - return parts.join('') -} - - -/***/ }), - -/***/ 15051: -/***/ ((module) => { - -"use strict"; - -var ALPHABET = 'qpzry9x8gf2tvdw0s3jn54khce6mua7l' - -// pre-compute lookup table -var ALPHABET_MAP = {} -for (var z = 0; z < ALPHABET.length; z++) { - var x = ALPHABET.charAt(z) - - if (ALPHABET_MAP[x] !== undefined) throw new TypeError(x + ' is ambiguous') - ALPHABET_MAP[x] = z -} - -function polymodStep (pre) { - var b = pre >> 25 - return ((pre & 0x1FFFFFF) << 5) ^ - (-((b >> 0) & 1) & 0x3b6a57b2) ^ - (-((b >> 1) & 1) & 0x26508e6d) ^ - (-((b >> 2) & 1) & 0x1ea119fa) ^ - (-((b >> 3) & 1) & 0x3d4233dd) ^ - (-((b >> 4) & 1) & 0x2a1462b3) -} - -function prefixChk (prefix) { - var chk = 1 - for (var i = 0; i < prefix.length; ++i) { - var c = prefix.charCodeAt(i) - if (c < 33 || c > 126) return 'Invalid prefix (' + prefix + ')' - - chk = polymodStep(chk) ^ (c >> 5) - } - chk = polymodStep(chk) - - for (i = 0; i < prefix.length; ++i) { - var v = prefix.charCodeAt(i) - chk = polymodStep(chk) ^ (v & 0x1f) - } - return chk -} - -function encode (prefix, words, LIMIT) { - LIMIT = LIMIT || 90 - if ((prefix.length + 7 + words.length) > LIMIT) throw new TypeError('Exceeds length limit') - - prefix = prefix.toLowerCase() - - // determine chk mod - var chk = prefixChk(prefix) - if (typeof chk === 'string') throw new Error(chk) - - var result = prefix + '1' - for (var i = 0; i < words.length; ++i) { - var x = words[i] - if ((x >> 5) !== 0) throw new Error('Non 5-bit word') - - chk = polymodStep(chk) ^ x - result += ALPHABET.charAt(x) - } - - for (i = 0; i < 6; ++i) { - chk = polymodStep(chk) - } - chk ^= 1 - - for (i = 0; i < 6; ++i) { - var v = (chk >> ((5 - i) * 5)) & 0x1f - result += ALPHABET.charAt(v) - } - - return result -} - -function __decode (str, LIMIT) { - LIMIT = LIMIT || 90 - if (str.length < 8) return str + ' too short' - if (str.length > LIMIT) return 'Exceeds length limit' - - // don't allow mixed case - var lowered = str.toLowerCase() - var uppered = str.toUpperCase() - if (str !== lowered && str !== uppered) return 'Mixed-case string ' + str - str = lowered - - var split = str.lastIndexOf('1') - if (split === -1) return 'No separator character for ' + str - if (split === 0) return 'Missing prefix for ' + str - - var prefix = str.slice(0, split) - var wordChars = str.slice(split + 1) - if (wordChars.length < 6) return 'Data too short' - - var chk = prefixChk(prefix) - if (typeof chk === 'string') return chk - - var words = [] - for (var i = 0; i < wordChars.length; ++i) { - var c = wordChars.charAt(i) - var v = ALPHABET_MAP[c] - if (v === undefined) return 'Unknown character ' + c - chk = polymodStep(chk) ^ v - - // not in the checksum? - if (i + 6 >= wordChars.length) continue - words.push(v) - } - - if (chk !== 1) return 'Invalid checksum for ' + str - return { prefix: prefix, words: words } -} - -function decodeUnsafe () { - var res = __decode.apply(null, arguments) - if (typeof res === 'object') return res -} - -function decode (str) { - var res = __decode.apply(null, arguments) - if (typeof res === 'object') return res - - throw new Error(res) -} - -function convert (data, inBits, outBits, pad) { - var value = 0 - var bits = 0 - var maxV = (1 << outBits) - 1 - - var result = [] - for (var i = 0; i < data.length; ++i) { - value = (value << inBits) | data[i] - bits += inBits - - while (bits >= outBits) { - bits -= outBits - result.push((value >> bits) & maxV) - } - } - - if (pad) { - if (bits > 0) { - result.push((value << (outBits - bits)) & maxV) - } - } else { - if (bits >= inBits) return 'Excess padding' - if ((value << (outBits - bits)) & maxV) return 'Non-zero padding' - } - - return result -} - -function toWordsUnsafe (bytes) { - var res = convert(bytes, 8, 5, true) - if (Array.isArray(res)) return res -} - -function toWords (bytes) { - var res = convert(bytes, 8, 5, true) - if (Array.isArray(res)) return res - - throw new Error(res) -} - -function fromWordsUnsafe (words) { - var res = convert(words, 5, 8, false) - if (Array.isArray(res)) return res -} - -function fromWords (words) { - var res = convert(words, 5, 8, false) - if (Array.isArray(res)) return res - - throw new Error(res) -} - -module.exports = { - decodeUnsafe: decodeUnsafe, - decode: decode, - encode: encode, - toWordsUnsafe: toWordsUnsafe, - toWords: toWords, - fromWordsUnsafe: fromWordsUnsafe, - fromWords: fromWords -} - - -/***/ }), - -/***/ 52732: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -var register = __nccwpck_require__(11063); -var addHook = __nccwpck_require__(22027); -var removeHook = __nccwpck_require__(59934); - -// bind with array of arguments: https://stackoverflow.com/a/21792913 -var bind = Function.bind; -var bindable = bind.bind(bind); - -function bindApi(hook, state, name) { - var removeHookRef = bindable(removeHook, null).apply( - null, - name ? [state, name] : [state] - ); - hook.api = { remove: removeHookRef }; - hook.remove = removeHookRef; - ["before", "error", "after", "wrap"].forEach(function (kind) { - var args = name ? [state, kind, name] : [state, kind]; - hook[kind] = hook.api[kind] = bindable(addHook, null).apply(null, args); - }); -} - -function HookSingular() { - var singularHookName = "h"; - var singularHookState = { - registry: {}, - }; - var singularHook = register.bind(null, singularHookState, singularHookName); - bindApi(singularHook, singularHookState, singularHookName); - return singularHook; -} - -function HookCollection() { - var state = { - registry: {}, - }; - - var hook = register.bind(null, state); - bindApi(hook, state); - - return hook; -} - -var collectionHookDeprecationMessageDisplayed = false; -function Hook() { - if (!collectionHookDeprecationMessageDisplayed) { - console.warn( - '[before-after-hook]: "Hook()" repurposing warning, use "Hook.Collection()". Read more: https://git.io/upgrade-before-after-hook-to-1.4' - ); - collectionHookDeprecationMessageDisplayed = true; - } - return HookCollection(); -} - -Hook.Singular = HookSingular.bind(); -Hook.Collection = HookCollection.bind(); - -module.exports = Hook; -// expose constructors as a named property for TypeScript -module.exports.Hook = Hook; -module.exports.Singular = Hook.Singular; -module.exports.Collection = Hook.Collection; - - -/***/ }), - -/***/ 22027: -/***/ ((module) => { - -module.exports = addHook; - -function addHook(state, kind, name, hook) { - var orig = hook; - if (!state.registry[name]) { - state.registry[name] = []; - } - - if (kind === "before") { - hook = function (method, options) { - return Promise.resolve() - .then(orig.bind(null, options)) - .then(method.bind(null, options)); - }; - } - - if (kind === "after") { - hook = function (method, options) { - var result; - return Promise.resolve() - .then(method.bind(null, options)) - .then(function (result_) { - result = result_; - return orig(result, options); - }) - .then(function () { - return result; - }); - }; - } - - if (kind === "error") { - hook = function (method, options) { - return Promise.resolve() - .then(method.bind(null, options)) - .catch(function (error) { - return orig(error, options); - }); - }; - } - - state.registry[name].push({ - hook: hook, - orig: orig, - }); -} - - -/***/ }), - -/***/ 11063: -/***/ ((module) => { - -module.exports = register; - -function register(state, name, method, options) { - if (typeof method !== "function") { - throw new Error("method for before hook must be a function"); - } - - if (!options) { - options = {}; - } - - if (Array.isArray(name)) { - return name.reverse().reduce(function (callback, name) { - return register.bind(null, state, name, callback, options); - }, method)(); - } - - return Promise.resolve().then(function () { - if (!state.registry[name]) { - return method(options); - } - - return state.registry[name].reduce(function (method, registered) { - return registered.hook.bind(null, method, options); - }, method)(); - }); -} - - -/***/ }), - -/***/ 59934: -/***/ ((module) => { - -module.exports = removeHook; - -function removeHook(state, name, method) { - if (!state.registry[name]) { - return; - } - - var index = state.registry[name] - .map(function (registered) { - return registered.orig; - }) - .indexOf(method); - - if (index === -1) { - return; - } - - state.registry[name].splice(index, 1); -} - - -/***/ }), - -/***/ 10633: -/***/ (function(module, __unused_webpack_exports, __nccwpck_require__) { - -/* module decorator */ module = __nccwpck_require__.nmd(module); -(function (module, exports) { - 'use strict'; - - // Utils - function assert (val, msg) { - if (!val) throw new Error(msg || 'Assertion failed'); - } - - // Could use `inherits` module, but don't want to move from single file - // architecture yet. - function inherits (ctor, superCtor) { - ctor.super_ = superCtor; - var TempCtor = function () {}; - TempCtor.prototype = superCtor.prototype; - ctor.prototype = new TempCtor(); - ctor.prototype.constructor = ctor; - } - - // BN - - function BN (number, base, endian) { - if (BN.isBN(number)) { - return number; - } - - this.negative = 0; - this.words = null; - this.length = 0; - - // Reduction context - this.red = null; - - if (number !== null) { - if (base === 'le' || base === 'be') { - endian = base; - base = 10; - } - - this._init(number || 0, base || 10, endian || 'be'); - } - } - if (typeof module === 'object') { - module.exports = BN; - } else { - exports.BN = BN; - } - - BN.BN = BN; - BN.wordSize = 26; - - var Buffer; - try { - if (typeof window !== 'undefined' && typeof window.Buffer !== 'undefined') { - Buffer = window.Buffer; - } else { - Buffer = (__nccwpck_require__(20181).Buffer); - } - } catch (e) { - } - - BN.isBN = function isBN (num) { - if (num instanceof BN) { - return true; - } - - return num !== null && typeof num === 'object' && - num.constructor.wordSize === BN.wordSize && Array.isArray(num.words); - }; - - BN.max = function max (left, right) { - if (left.cmp(right) > 0) return left; - return right; - }; - - BN.min = function min (left, right) { - if (left.cmp(right) < 0) return left; - return right; - }; - - BN.prototype._init = function init (number, base, endian) { - if (typeof number === 'number') { - return this._initNumber(number, base, endian); - } - - if (typeof number === 'object') { - return this._initArray(number, base, endian); - } - - if (base === 'hex') { - base = 16; - } - assert(base === (base | 0) && base >= 2 && base <= 36); - - number = number.toString().replace(/\s+/g, ''); - var start = 0; - if (number[0] === '-') { - start++; - this.negative = 1; - } - - if (start < number.length) { - if (base === 16) { - this._parseHex(number, start, endian); - } else { - this._parseBase(number, base, start); - if (endian === 'le') { - this._initArray(this.toArray(), base, endian); - } - } - } - }; - - BN.prototype._initNumber = function _initNumber (number, base, endian) { - if (number < 0) { - this.negative = 1; - number = -number; - } - if (number < 0x4000000) { - this.words = [number & 0x3ffffff]; - this.length = 1; - } else if (number < 0x10000000000000) { - this.words = [ - number & 0x3ffffff, - (number / 0x4000000) & 0x3ffffff - ]; - this.length = 2; - } else { - assert(number < 0x20000000000000); // 2 ^ 53 (unsafe) - this.words = [ - number & 0x3ffffff, - (number / 0x4000000) & 0x3ffffff, - 1 - ]; - this.length = 3; - } - - if (endian !== 'le') return; - - // Reverse the bytes - this._initArray(this.toArray(), base, endian); - }; - - BN.prototype._initArray = function _initArray (number, base, endian) { - // Perhaps a Uint8Array - assert(typeof number.length === 'number'); - if (number.length <= 0) { - this.words = [0]; - this.length = 1; - return this; - } - - this.length = Math.ceil(number.length / 3); - this.words = new Array(this.length); - for (var i = 0; i < this.length; i++) { - this.words[i] = 0; - } - - var j, w; - var off = 0; - if (endian === 'be') { - for (i = number.length - 1, j = 0; i >= 0; i -= 3) { - w = number[i] | (number[i - 1] << 8) | (number[i - 2] << 16); - this.words[j] |= (w << off) & 0x3ffffff; - this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff; - off += 24; - if (off >= 26) { - off -= 26; - j++; - } - } - } else if (endian === 'le') { - for (i = 0, j = 0; i < number.length; i += 3) { - w = number[i] | (number[i + 1] << 8) | (number[i + 2] << 16); - this.words[j] |= (w << off) & 0x3ffffff; - this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff; - off += 24; - if (off >= 26) { - off -= 26; - j++; - } - } - } - return this._strip(); - }; - - function parseHex4Bits (string, index) { - var c = string.charCodeAt(index); - // '0' - '9' - if (c >= 48 && c <= 57) { - return c - 48; - // 'A' - 'F' - } else if (c >= 65 && c <= 70) { - return c - 55; - // 'a' - 'f' - } else if (c >= 97 && c <= 102) { - return c - 87; - } else { - assert(false, 'Invalid character in ' + string); - } - } - - function parseHexByte (string, lowerBound, index) { - var r = parseHex4Bits(string, index); - if (index - 1 >= lowerBound) { - r |= parseHex4Bits(string, index - 1) << 4; - } - return r; - } - - BN.prototype._parseHex = function _parseHex (number, start, endian) { - // Create possibly bigger array to ensure that it fits the number - this.length = Math.ceil((number.length - start) / 6); - this.words = new Array(this.length); - for (var i = 0; i < this.length; i++) { - this.words[i] = 0; - } - - // 24-bits chunks - var off = 0; - var j = 0; - - var w; - if (endian === 'be') { - for (i = number.length - 1; i >= start; i -= 2) { - w = parseHexByte(number, start, i) << off; - this.words[j] |= w & 0x3ffffff; - if (off >= 18) { - off -= 18; - j += 1; - this.words[j] |= w >>> 26; - } else { - off += 8; - } - } - } else { - var parseLength = number.length - start; - for (i = parseLength % 2 === 0 ? start + 1 : start; i < number.length; i += 2) { - w = parseHexByte(number, start, i) << off; - this.words[j] |= w & 0x3ffffff; - if (off >= 18) { - off -= 18; - j += 1; - this.words[j] |= w >>> 26; - } else { - off += 8; - } - } - } - - this._strip(); - }; - - function parseBase (str, start, end, mul) { - var r = 0; - var b = 0; - var len = Math.min(str.length, end); - for (var i = start; i < len; i++) { - var c = str.charCodeAt(i) - 48; - - r *= mul; - - // 'a' - if (c >= 49) { - b = c - 49 + 0xa; - - // 'A' - } else if (c >= 17) { - b = c - 17 + 0xa; - - // '0' - '9' - } else { - b = c; - } - assert(c >= 0 && b < mul, 'Invalid character'); - r += b; - } - return r; - } - - BN.prototype._parseBase = function _parseBase (number, base, start) { - // Initialize as zero - this.words = [0]; - this.length = 1; - - // Find length of limb in base - for (var limbLen = 0, limbPow = 1; limbPow <= 0x3ffffff; limbPow *= base) { - limbLen++; - } - limbLen--; - limbPow = (limbPow / base) | 0; - - var total = number.length - start; - var mod = total % limbLen; - var end = Math.min(total, total - mod) + start; - - var word = 0; - for (var i = start; i < end; i += limbLen) { - word = parseBase(number, i, i + limbLen, base); - - this.imuln(limbPow); - if (this.words[0] + word < 0x4000000) { - this.words[0] += word; - } else { - this._iaddn(word); - } - } - - if (mod !== 0) { - var pow = 1; - word = parseBase(number, i, number.length, base); - - for (i = 0; i < mod; i++) { - pow *= base; - } - - this.imuln(pow); - if (this.words[0] + word < 0x4000000) { - this.words[0] += word; - } else { - this._iaddn(word); - } - } - - this._strip(); - }; - - BN.prototype.copy = function copy (dest) { - dest.words = new Array(this.length); - for (var i = 0; i < this.length; i++) { - dest.words[i] = this.words[i]; - } - dest.length = this.length; - dest.negative = this.negative; - dest.red = this.red; - }; - - function move (dest, src) { - dest.words = src.words; - dest.length = src.length; - dest.negative = src.negative; - dest.red = src.red; - } - - BN.prototype._move = function _move (dest) { - move(dest, this); - }; - - BN.prototype.clone = function clone () { - var r = new BN(null); - this.copy(r); - return r; - }; - - BN.prototype._expand = function _expand (size) { - while (this.length < size) { - this.words[this.length++] = 0; - } - return this; - }; - - // Remove leading `0` from `this` - BN.prototype._strip = function strip () { - while (this.length > 1 && this.words[this.length - 1] === 0) { - this.length--; - } - return this._normSign(); - }; - - BN.prototype._normSign = function _normSign () { - // -0 = 0 - if (this.length === 1 && this.words[0] === 0) { - this.negative = 0; - } - return this; - }; - - // Check Symbol.for because not everywhere where Symbol defined - // See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol#Browser_compatibility - if (typeof Symbol !== 'undefined' && typeof Symbol.for === 'function') { - try { - BN.prototype[Symbol.for('nodejs.util.inspect.custom')] = inspect; - } catch (e) { - BN.prototype.inspect = inspect; - } - } else { - BN.prototype.inspect = inspect; - } - - function inspect () { - return (this.red ? ''; - } - - /* - - var zeros = []; - var groupSizes = []; - var groupBases = []; - - var s = ''; - var i = -1; - while (++i < BN.wordSize) { - zeros[i] = s; - s += '0'; - } - groupSizes[0] = 0; - groupSizes[1] = 0; - groupBases[0] = 0; - groupBases[1] = 0; - var base = 2 - 1; - while (++base < 36 + 1) { - var groupSize = 0; - var groupBase = 1; - while (groupBase < (1 << BN.wordSize) / base) { - groupBase *= base; - groupSize += 1; - } - groupSizes[base] = groupSize; - groupBases[base] = groupBase; - } - - */ - - var zeros = [ - '', - '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' - ]; - - var groupSizes = [ - 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 - ]; - - var groupBases = [ - 0, 0, - 33554432, 43046721, 16777216, 48828125, 60466176, 40353607, 16777216, - 43046721, 10000000, 19487171, 35831808, 62748517, 7529536, 11390625, - 16777216, 24137569, 34012224, 47045881, 64000000, 4084101, 5153632, - 6436343, 7962624, 9765625, 11881376, 14348907, 17210368, 20511149, - 24300000, 28629151, 33554432, 39135393, 45435424, 52521875, 60466176 - ]; - - BN.prototype.toString = function toString (base, padding) { - base = base || 10; - padding = padding | 0 || 1; - - var out; - if (base === 16 || base === 'hex') { - out = ''; - var off = 0; - var carry = 0; - for (var i = 0; i < this.length; i++) { - var w = this.words[i]; - var word = (((w << off) | carry) & 0xffffff).toString(16); - carry = (w >>> (24 - off)) & 0xffffff; - off += 2; - if (off >= 26) { - off -= 26; - i--; - } - if (carry !== 0 || i !== this.length - 1) { - out = zeros[6 - word.length] + word + out; - } else { - out = word + out; - } - } - if (carry !== 0) { - out = carry.toString(16) + out; - } - while (out.length % padding !== 0) { - out = '0' + out; - } - if (this.negative !== 0) { - out = '-' + out; - } - return out; - } - - if (base === (base | 0) && base >= 2 && base <= 36) { - // var groupSize = Math.floor(BN.wordSize * Math.LN2 / Math.log(base)); - var groupSize = groupSizes[base]; - // var groupBase = Math.pow(base, groupSize); - var groupBase = groupBases[base]; - out = ''; - var c = this.clone(); - c.negative = 0; - while (!c.isZero()) { - var r = c.modrn(groupBase).toString(base); - c = c.idivn(groupBase); - - if (!c.isZero()) { - out = zeros[groupSize - r.length] + r + out; - } else { - out = r + out; - } - } - if (this.isZero()) { - out = '0' + out; - } - while (out.length % padding !== 0) { - out = '0' + out; - } - if (this.negative !== 0) { - out = '-' + out; - } - return out; - } - - assert(false, 'Base should be between 2 and 36'); - }; - - BN.prototype.toNumber = function toNumber () { - var ret = this.words[0]; - if (this.length === 2) { - ret += this.words[1] * 0x4000000; - } else if (this.length === 3 && this.words[2] === 0x01) { - // NOTE: at this stage it is known that the top bit is set - ret += 0x10000000000000 + (this.words[1] * 0x4000000); - } else if (this.length > 2) { - assert(false, 'Number can only safely store up to 53 bits'); - } - return (this.negative !== 0) ? -ret : ret; - }; - - BN.prototype.toJSON = function toJSON () { - return this.toString(16, 2); - }; - - if (Buffer) { - BN.prototype.toBuffer = function toBuffer (endian, length) { - return this.toArrayLike(Buffer, endian, length); - }; - } - - BN.prototype.toArray = function toArray (endian, length) { - return this.toArrayLike(Array, endian, length); - }; - - var allocate = function allocate (ArrayType, size) { - if (ArrayType.allocUnsafe) { - return ArrayType.allocUnsafe(size); - } - return new ArrayType(size); - }; - - BN.prototype.toArrayLike = function toArrayLike (ArrayType, endian, length) { - this._strip(); - - var byteLength = this.byteLength(); - var reqLength = length || Math.max(1, byteLength); - assert(byteLength <= reqLength, 'byte array longer than desired length'); - assert(reqLength > 0, 'Requested array length <= 0'); - - var res = allocate(ArrayType, reqLength); - var postfix = endian === 'le' ? 'LE' : 'BE'; - this['_toArrayLike' + postfix](res, byteLength); - return res; - }; - - BN.prototype._toArrayLikeLE = function _toArrayLikeLE (res, byteLength) { - var position = 0; - var carry = 0; - - for (var i = 0, shift = 0; i < this.length; i++) { - var word = (this.words[i] << shift) | carry; - - res[position++] = word & 0xff; - if (position < res.length) { - res[position++] = (word >> 8) & 0xff; - } - if (position < res.length) { - res[position++] = (word >> 16) & 0xff; - } - - if (shift === 6) { - if (position < res.length) { - res[position++] = (word >> 24) & 0xff; - } - carry = 0; - shift = 0; - } else { - carry = word >>> 24; - shift += 2; - } - } - - if (position < res.length) { - res[position++] = carry; - - while (position < res.length) { - res[position++] = 0; - } - } - }; - - BN.prototype._toArrayLikeBE = function _toArrayLikeBE (res, byteLength) { - var position = res.length - 1; - var carry = 0; - - for (var i = 0, shift = 0; i < this.length; i++) { - var word = (this.words[i] << shift) | carry; - - res[position--] = word & 0xff; - if (position >= 0) { - res[position--] = (word >> 8) & 0xff; - } - if (position >= 0) { - res[position--] = (word >> 16) & 0xff; - } - - if (shift === 6) { - if (position >= 0) { - res[position--] = (word >> 24) & 0xff; - } - carry = 0; - shift = 0; - } else { - carry = word >>> 24; - shift += 2; - } - } - - if (position >= 0) { - res[position--] = carry; - - while (position >= 0) { - res[position--] = 0; - } - } - }; - - if (Math.clz32) { - BN.prototype._countBits = function _countBits (w) { - return 32 - Math.clz32(w); - }; - } else { - BN.prototype._countBits = function _countBits (w) { - var t = w; - var r = 0; - if (t >= 0x1000) { - r += 13; - t >>>= 13; - } - if (t >= 0x40) { - r += 7; - t >>>= 7; - } - if (t >= 0x8) { - r += 4; - t >>>= 4; - } - if (t >= 0x02) { - r += 2; - t >>>= 2; - } - return r + t; - }; - } - - BN.prototype._zeroBits = function _zeroBits (w) { - // Short-cut - if (w === 0) return 26; - - var t = w; - var r = 0; - if ((t & 0x1fff) === 0) { - r += 13; - t >>>= 13; - } - if ((t & 0x7f) === 0) { - r += 7; - t >>>= 7; - } - if ((t & 0xf) === 0) { - r += 4; - t >>>= 4; - } - if ((t & 0x3) === 0) { - r += 2; - t >>>= 2; - } - if ((t & 0x1) === 0) { - r++; - } - return r; - }; - - // Return number of used bits in a BN - BN.prototype.bitLength = function bitLength () { - var w = this.words[this.length - 1]; - var hi = this._countBits(w); - return (this.length - 1) * 26 + hi; - }; - - function toBitArray (num) { - var w = new Array(num.bitLength()); - - for (var bit = 0; bit < w.length; bit++) { - var off = (bit / 26) | 0; - var wbit = bit % 26; - - w[bit] = (num.words[off] >>> wbit) & 0x01; - } - - return w; - } - - // Number of trailing zero bits - BN.prototype.zeroBits = function zeroBits () { - if (this.isZero()) return 0; - - var r = 0; - for (var i = 0; i < this.length; i++) { - var b = this._zeroBits(this.words[i]); - r += b; - if (b !== 26) break; - } - return r; - }; - - BN.prototype.byteLength = function byteLength () { - return Math.ceil(this.bitLength() / 8); - }; - - BN.prototype.toTwos = function toTwos (width) { - if (this.negative !== 0) { - return this.abs().inotn(width).iaddn(1); - } - return this.clone(); - }; - - BN.prototype.fromTwos = function fromTwos (width) { - if (this.testn(width - 1)) { - return this.notn(width).iaddn(1).ineg(); - } - return this.clone(); - }; - - BN.prototype.isNeg = function isNeg () { - return this.negative !== 0; - }; - - // Return negative clone of `this` - BN.prototype.neg = function neg () { - return this.clone().ineg(); - }; - - BN.prototype.ineg = function ineg () { - if (!this.isZero()) { - this.negative ^= 1; - } - - return this; - }; - - // Or `num` with `this` in-place - BN.prototype.iuor = function iuor (num) { - while (this.length < num.length) { - this.words[this.length++] = 0; - } - - for (var i = 0; i < num.length; i++) { - this.words[i] = this.words[i] | num.words[i]; - } - - return this._strip(); - }; - - BN.prototype.ior = function ior (num) { - assert((this.negative | num.negative) === 0); - return this.iuor(num); - }; - - // Or `num` with `this` - BN.prototype.or = function or (num) { - if (this.length > num.length) return this.clone().ior(num); - return num.clone().ior(this); - }; - - BN.prototype.uor = function uor (num) { - if (this.length > num.length) return this.clone().iuor(num); - return num.clone().iuor(this); - }; - - // And `num` with `this` in-place - BN.prototype.iuand = function iuand (num) { - // b = min-length(num, this) - var b; - if (this.length > num.length) { - b = num; - } else { - b = this; - } - - for (var i = 0; i < b.length; i++) { - this.words[i] = this.words[i] & num.words[i]; - } - - this.length = b.length; - - return this._strip(); - }; - - BN.prototype.iand = function iand (num) { - assert((this.negative | num.negative) === 0); - return this.iuand(num); - }; - - // And `num` with `this` - BN.prototype.and = function and (num) { - if (this.length > num.length) return this.clone().iand(num); - return num.clone().iand(this); - }; - - BN.prototype.uand = function uand (num) { - if (this.length > num.length) return this.clone().iuand(num); - return num.clone().iuand(this); - }; - - // Xor `num` with `this` in-place - BN.prototype.iuxor = function iuxor (num) { - // a.length > b.length - var a; - var b; - if (this.length > num.length) { - a = this; - b = num; - } else { - a = num; - b = this; - } - - for (var i = 0; i < b.length; i++) { - this.words[i] = a.words[i] ^ b.words[i]; - } - - if (this !== a) { - for (; i < a.length; i++) { - this.words[i] = a.words[i]; - } - } - - this.length = a.length; - - return this._strip(); - }; - - BN.prototype.ixor = function ixor (num) { - assert((this.negative | num.negative) === 0); - return this.iuxor(num); - }; - - // Xor `num` with `this` - BN.prototype.xor = function xor (num) { - if (this.length > num.length) return this.clone().ixor(num); - return num.clone().ixor(this); - }; - - BN.prototype.uxor = function uxor (num) { - if (this.length > num.length) return this.clone().iuxor(num); - return num.clone().iuxor(this); - }; - - // Not ``this`` with ``width`` bitwidth - BN.prototype.inotn = function inotn (width) { - assert(typeof width === 'number' && width >= 0); - - var bytesNeeded = Math.ceil(width / 26) | 0; - var bitsLeft = width % 26; - - // Extend the buffer with leading zeroes - this._expand(bytesNeeded); - - if (bitsLeft > 0) { - bytesNeeded--; - } - - // Handle complete words - for (var i = 0; i < bytesNeeded; i++) { - this.words[i] = ~this.words[i] & 0x3ffffff; - } - - // Handle the residue - if (bitsLeft > 0) { - this.words[i] = ~this.words[i] & (0x3ffffff >> (26 - bitsLeft)); - } - - // And remove leading zeroes - return this._strip(); - }; - - BN.prototype.notn = function notn (width) { - return this.clone().inotn(width); - }; - - // Set `bit` of `this` - BN.prototype.setn = function setn (bit, val) { - assert(typeof bit === 'number' && bit >= 0); - - var off = (bit / 26) | 0; - var wbit = bit % 26; - - this._expand(off + 1); - - if (val) { - this.words[off] = this.words[off] | (1 << wbit); - } else { - this.words[off] = this.words[off] & ~(1 << wbit); - } - - return this._strip(); - }; - - // Add `num` to `this` in-place - BN.prototype.iadd = function iadd (num) { - var r; - - // negative + positive - if (this.negative !== 0 && num.negative === 0) { - this.negative = 0; - r = this.isub(num); - this.negative ^= 1; - return this._normSign(); - - // positive + negative - } else if (this.negative === 0 && num.negative !== 0) { - num.negative = 0; - r = this.isub(num); - num.negative = 1; - return r._normSign(); - } - - // a.length > b.length - var a, b; - if (this.length > num.length) { - a = this; - b = num; - } else { - a = num; - b = this; - } - - var carry = 0; - for (var i = 0; i < b.length; i++) { - r = (a.words[i] | 0) + (b.words[i] | 0) + carry; - this.words[i] = r & 0x3ffffff; - carry = r >>> 26; - } - for (; carry !== 0 && i < a.length; i++) { - r = (a.words[i] | 0) + carry; - this.words[i] = r & 0x3ffffff; - carry = r >>> 26; - } - - this.length = a.length; - if (carry !== 0) { - this.words[this.length] = carry; - this.length++; - // Copy the rest of the words - } else if (a !== this) { - for (; i < a.length; i++) { - this.words[i] = a.words[i]; - } - } - - return this; - }; - - // Add `num` to `this` - BN.prototype.add = function add (num) { - var res; - if (num.negative !== 0 && this.negative === 0) { - num.negative = 0; - res = this.sub(num); - num.negative ^= 1; - return res; - } else if (num.negative === 0 && this.negative !== 0) { - this.negative = 0; - res = num.sub(this); - this.negative = 1; - return res; - } - - if (this.length > num.length) return this.clone().iadd(num); - - return num.clone().iadd(this); - }; - - // Subtract `num` from `this` in-place - BN.prototype.isub = function isub (num) { - // this - (-num) = this + num - if (num.negative !== 0) { - num.negative = 0; - var r = this.iadd(num); - num.negative = 1; - return r._normSign(); - - // -this - num = -(this + num) - } else if (this.negative !== 0) { - this.negative = 0; - this.iadd(num); - this.negative = 1; - return this._normSign(); - } - - // At this point both numbers are positive - var cmp = this.cmp(num); - - // Optimization - zeroify - if (cmp === 0) { - this.negative = 0; - this.length = 1; - this.words[0] = 0; - return this; - } - - // a > b - var a, b; - if (cmp > 0) { - a = this; - b = num; - } else { - a = num; - b = this; - } - - var carry = 0; - for (var i = 0; i < b.length; i++) { - r = (a.words[i] | 0) - (b.words[i] | 0) + carry; - carry = r >> 26; - this.words[i] = r & 0x3ffffff; - } - for (; carry !== 0 && i < a.length; i++) { - r = (a.words[i] | 0) + carry; - carry = r >> 26; - this.words[i] = r & 0x3ffffff; - } - - // Copy rest of the words - if (carry === 0 && i < a.length && a !== this) { - for (; i < a.length; i++) { - this.words[i] = a.words[i]; - } - } - - this.length = Math.max(this.length, i); - - if (a !== this) { - this.negative = 1; - } - - return this._strip(); - }; - - // Subtract `num` from `this` - BN.prototype.sub = function sub (num) { - return this.clone().isub(num); - }; - - function smallMulTo (self, num, out) { - out.negative = num.negative ^ self.negative; - var len = (self.length + num.length) | 0; - out.length = len; - len = (len - 1) | 0; - - // Peel one iteration (compiler can't do it, because of code complexity) - var a = self.words[0] | 0; - var b = num.words[0] | 0; - var r = a * b; - - var lo = r & 0x3ffffff; - var carry = (r / 0x4000000) | 0; - out.words[0] = lo; - - for (var k = 1; k < len; k++) { - // Sum all words with the same `i + j = k` and accumulate `ncarry`, - // note that ncarry could be >= 0x3ffffff - var ncarry = carry >>> 26; - var rword = carry & 0x3ffffff; - var maxJ = Math.min(k, num.length - 1); - for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) { - var i = (k - j) | 0; - a = self.words[i] | 0; - b = num.words[j] | 0; - r = a * b + rword; - ncarry += (r / 0x4000000) | 0; - rword = r & 0x3ffffff; - } - out.words[k] = rword | 0; - carry = ncarry | 0; - } - if (carry !== 0) { - out.words[k] = carry | 0; - } else { - out.length--; - } - - return out._strip(); - } - - // TODO(indutny): it may be reasonable to omit it for users who don't need - // to work with 256-bit numbers, otherwise it gives 20% improvement for 256-bit - // multiplication (like elliptic secp256k1). - var comb10MulTo = function comb10MulTo (self, num, out) { - var a = self.words; - var b = num.words; - var o = out.words; - var c = 0; - var lo; - var mid; - var hi; - var a0 = a[0] | 0; - var al0 = a0 & 0x1fff; - var ah0 = a0 >>> 13; - var a1 = a[1] | 0; - var al1 = a1 & 0x1fff; - var ah1 = a1 >>> 13; - var a2 = a[2] | 0; - var al2 = a2 & 0x1fff; - var ah2 = a2 >>> 13; - var a3 = a[3] | 0; - var al3 = a3 & 0x1fff; - var ah3 = a3 >>> 13; - var a4 = a[4] | 0; - var al4 = a4 & 0x1fff; - var ah4 = a4 >>> 13; - var a5 = a[5] | 0; - var al5 = a5 & 0x1fff; - var ah5 = a5 >>> 13; - var a6 = a[6] | 0; - var al6 = a6 & 0x1fff; - var ah6 = a6 >>> 13; - var a7 = a[7] | 0; - var al7 = a7 & 0x1fff; - var ah7 = a7 >>> 13; - var a8 = a[8] | 0; - var al8 = a8 & 0x1fff; - var ah8 = a8 >>> 13; - var a9 = a[9] | 0; - var al9 = a9 & 0x1fff; - var ah9 = a9 >>> 13; - var b0 = b[0] | 0; - var bl0 = b0 & 0x1fff; - var bh0 = b0 >>> 13; - var b1 = b[1] | 0; - var bl1 = b1 & 0x1fff; - var bh1 = b1 >>> 13; - var b2 = b[2] | 0; - var bl2 = b2 & 0x1fff; - var bh2 = b2 >>> 13; - var b3 = b[3] | 0; - var bl3 = b3 & 0x1fff; - var bh3 = b3 >>> 13; - var b4 = b[4] | 0; - var bl4 = b4 & 0x1fff; - var bh4 = b4 >>> 13; - var b5 = b[5] | 0; - var bl5 = b5 & 0x1fff; - var bh5 = b5 >>> 13; - var b6 = b[6] | 0; - var bl6 = b6 & 0x1fff; - var bh6 = b6 >>> 13; - var b7 = b[7] | 0; - var bl7 = b7 & 0x1fff; - var bh7 = b7 >>> 13; - var b8 = b[8] | 0; - var bl8 = b8 & 0x1fff; - var bh8 = b8 >>> 13; - var b9 = b[9] | 0; - var bl9 = b9 & 0x1fff; - var bh9 = b9 >>> 13; - - out.negative = self.negative ^ num.negative; - out.length = 19; - /* k = 0 */ - lo = Math.imul(al0, bl0); - mid = Math.imul(al0, bh0); - mid = (mid + Math.imul(ah0, bl0)) | 0; - hi = Math.imul(ah0, bh0); - var w0 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w0 >>> 26)) | 0; - w0 &= 0x3ffffff; - /* k = 1 */ - lo = Math.imul(al1, bl0); - mid = Math.imul(al1, bh0); - mid = (mid + Math.imul(ah1, bl0)) | 0; - hi = Math.imul(ah1, bh0); - lo = (lo + Math.imul(al0, bl1)) | 0; - mid = (mid + Math.imul(al0, bh1)) | 0; - mid = (mid + Math.imul(ah0, bl1)) | 0; - hi = (hi + Math.imul(ah0, bh1)) | 0; - var w1 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w1 >>> 26)) | 0; - w1 &= 0x3ffffff; - /* k = 2 */ - lo = Math.imul(al2, bl0); - mid = Math.imul(al2, bh0); - mid = (mid + Math.imul(ah2, bl0)) | 0; - hi = Math.imul(ah2, bh0); - lo = (lo + Math.imul(al1, bl1)) | 0; - mid = (mid + Math.imul(al1, bh1)) | 0; - mid = (mid + Math.imul(ah1, bl1)) | 0; - hi = (hi + Math.imul(ah1, bh1)) | 0; - lo = (lo + Math.imul(al0, bl2)) | 0; - mid = (mid + Math.imul(al0, bh2)) | 0; - mid = (mid + Math.imul(ah0, bl2)) | 0; - hi = (hi + Math.imul(ah0, bh2)) | 0; - var w2 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w2 >>> 26)) | 0; - w2 &= 0x3ffffff; - /* k = 3 */ - lo = Math.imul(al3, bl0); - mid = Math.imul(al3, bh0); - mid = (mid + Math.imul(ah3, bl0)) | 0; - hi = Math.imul(ah3, bh0); - lo = (lo + Math.imul(al2, bl1)) | 0; - mid = (mid + Math.imul(al2, bh1)) | 0; - mid = (mid + Math.imul(ah2, bl1)) | 0; - hi = (hi + Math.imul(ah2, bh1)) | 0; - lo = (lo + Math.imul(al1, bl2)) | 0; - mid = (mid + Math.imul(al1, bh2)) | 0; - mid = (mid + Math.imul(ah1, bl2)) | 0; - hi = (hi + Math.imul(ah1, bh2)) | 0; - lo = (lo + Math.imul(al0, bl3)) | 0; - mid = (mid + Math.imul(al0, bh3)) | 0; - mid = (mid + Math.imul(ah0, bl3)) | 0; - hi = (hi + Math.imul(ah0, bh3)) | 0; - var w3 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w3 >>> 26)) | 0; - w3 &= 0x3ffffff; - /* k = 4 */ - lo = Math.imul(al4, bl0); - mid = Math.imul(al4, bh0); - mid = (mid + Math.imul(ah4, bl0)) | 0; - hi = Math.imul(ah4, bh0); - lo = (lo + Math.imul(al3, bl1)) | 0; - mid = (mid + Math.imul(al3, bh1)) | 0; - mid = (mid + Math.imul(ah3, bl1)) | 0; - hi = (hi + Math.imul(ah3, bh1)) | 0; - lo = (lo + Math.imul(al2, bl2)) | 0; - mid = (mid + Math.imul(al2, bh2)) | 0; - mid = (mid + Math.imul(ah2, bl2)) | 0; - hi = (hi + Math.imul(ah2, bh2)) | 0; - lo = (lo + Math.imul(al1, bl3)) | 0; - mid = (mid + Math.imul(al1, bh3)) | 0; - mid = (mid + Math.imul(ah1, bl3)) | 0; - hi = (hi + Math.imul(ah1, bh3)) | 0; - lo = (lo + Math.imul(al0, bl4)) | 0; - mid = (mid + Math.imul(al0, bh4)) | 0; - mid = (mid + Math.imul(ah0, bl4)) | 0; - hi = (hi + Math.imul(ah0, bh4)) | 0; - var w4 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w4 >>> 26)) | 0; - w4 &= 0x3ffffff; - /* k = 5 */ - lo = Math.imul(al5, bl0); - mid = Math.imul(al5, bh0); - mid = (mid + Math.imul(ah5, bl0)) | 0; - hi = Math.imul(ah5, bh0); - lo = (lo + Math.imul(al4, bl1)) | 0; - mid = (mid + Math.imul(al4, bh1)) | 0; - mid = (mid + Math.imul(ah4, bl1)) | 0; - hi = (hi + Math.imul(ah4, bh1)) | 0; - lo = (lo + Math.imul(al3, bl2)) | 0; - mid = (mid + Math.imul(al3, bh2)) | 0; - mid = (mid + Math.imul(ah3, bl2)) | 0; - hi = (hi + Math.imul(ah3, bh2)) | 0; - lo = (lo + Math.imul(al2, bl3)) | 0; - mid = (mid + Math.imul(al2, bh3)) | 0; - mid = (mid + Math.imul(ah2, bl3)) | 0; - hi = (hi + Math.imul(ah2, bh3)) | 0; - lo = (lo + Math.imul(al1, bl4)) | 0; - mid = (mid + Math.imul(al1, bh4)) | 0; - mid = (mid + Math.imul(ah1, bl4)) | 0; - hi = (hi + Math.imul(ah1, bh4)) | 0; - lo = (lo + Math.imul(al0, bl5)) | 0; - mid = (mid + Math.imul(al0, bh5)) | 0; - mid = (mid + Math.imul(ah0, bl5)) | 0; - hi = (hi + Math.imul(ah0, bh5)) | 0; - var w5 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w5 >>> 26)) | 0; - w5 &= 0x3ffffff; - /* k = 6 */ - lo = Math.imul(al6, bl0); - mid = Math.imul(al6, bh0); - mid = (mid + Math.imul(ah6, bl0)) | 0; - hi = Math.imul(ah6, bh0); - lo = (lo + Math.imul(al5, bl1)) | 0; - mid = (mid + Math.imul(al5, bh1)) | 0; - mid = (mid + Math.imul(ah5, bl1)) | 0; - hi = (hi + Math.imul(ah5, bh1)) | 0; - lo = (lo + Math.imul(al4, bl2)) | 0; - mid = (mid + Math.imul(al4, bh2)) | 0; - mid = (mid + Math.imul(ah4, bl2)) | 0; - hi = (hi + Math.imul(ah4, bh2)) | 0; - lo = (lo + Math.imul(al3, bl3)) | 0; - mid = (mid + Math.imul(al3, bh3)) | 0; - mid = (mid + Math.imul(ah3, bl3)) | 0; - hi = (hi + Math.imul(ah3, bh3)) | 0; - lo = (lo + Math.imul(al2, bl4)) | 0; - mid = (mid + Math.imul(al2, bh4)) | 0; - mid = (mid + Math.imul(ah2, bl4)) | 0; - hi = (hi + Math.imul(ah2, bh4)) | 0; - lo = (lo + Math.imul(al1, bl5)) | 0; - mid = (mid + Math.imul(al1, bh5)) | 0; - mid = (mid + Math.imul(ah1, bl5)) | 0; - hi = (hi + Math.imul(ah1, bh5)) | 0; - lo = (lo + Math.imul(al0, bl6)) | 0; - mid = (mid + Math.imul(al0, bh6)) | 0; - mid = (mid + Math.imul(ah0, bl6)) | 0; - hi = (hi + Math.imul(ah0, bh6)) | 0; - var w6 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w6 >>> 26)) | 0; - w6 &= 0x3ffffff; - /* k = 7 */ - lo = Math.imul(al7, bl0); - mid = Math.imul(al7, bh0); - mid = (mid + Math.imul(ah7, bl0)) | 0; - hi = Math.imul(ah7, bh0); - lo = (lo + Math.imul(al6, bl1)) | 0; - mid = (mid + Math.imul(al6, bh1)) | 0; - mid = (mid + Math.imul(ah6, bl1)) | 0; - hi = (hi + Math.imul(ah6, bh1)) | 0; - lo = (lo + Math.imul(al5, bl2)) | 0; - mid = (mid + Math.imul(al5, bh2)) | 0; - mid = (mid + Math.imul(ah5, bl2)) | 0; - hi = (hi + Math.imul(ah5, bh2)) | 0; - lo = (lo + Math.imul(al4, bl3)) | 0; - mid = (mid + Math.imul(al4, bh3)) | 0; - mid = (mid + Math.imul(ah4, bl3)) | 0; - hi = (hi + Math.imul(ah4, bh3)) | 0; - lo = (lo + Math.imul(al3, bl4)) | 0; - mid = (mid + Math.imul(al3, bh4)) | 0; - mid = (mid + Math.imul(ah3, bl4)) | 0; - hi = (hi + Math.imul(ah3, bh4)) | 0; - lo = (lo + Math.imul(al2, bl5)) | 0; - mid = (mid + Math.imul(al2, bh5)) | 0; - mid = (mid + Math.imul(ah2, bl5)) | 0; - hi = (hi + Math.imul(ah2, bh5)) | 0; - lo = (lo + Math.imul(al1, bl6)) | 0; - mid = (mid + Math.imul(al1, bh6)) | 0; - mid = (mid + Math.imul(ah1, bl6)) | 0; - hi = (hi + Math.imul(ah1, bh6)) | 0; - lo = (lo + Math.imul(al0, bl7)) | 0; - mid = (mid + Math.imul(al0, bh7)) | 0; - mid = (mid + Math.imul(ah0, bl7)) | 0; - hi = (hi + Math.imul(ah0, bh7)) | 0; - var w7 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w7 >>> 26)) | 0; - w7 &= 0x3ffffff; - /* k = 8 */ - lo = Math.imul(al8, bl0); - mid = Math.imul(al8, bh0); - mid = (mid + Math.imul(ah8, bl0)) | 0; - hi = Math.imul(ah8, bh0); - lo = (lo + Math.imul(al7, bl1)) | 0; - mid = (mid + Math.imul(al7, bh1)) | 0; - mid = (mid + Math.imul(ah7, bl1)) | 0; - hi = (hi + Math.imul(ah7, bh1)) | 0; - lo = (lo + Math.imul(al6, bl2)) | 0; - mid = (mid + Math.imul(al6, bh2)) | 0; - mid = (mid + Math.imul(ah6, bl2)) | 0; - hi = (hi + Math.imul(ah6, bh2)) | 0; - lo = (lo + Math.imul(al5, bl3)) | 0; - mid = (mid + Math.imul(al5, bh3)) | 0; - mid = (mid + Math.imul(ah5, bl3)) | 0; - hi = (hi + Math.imul(ah5, bh3)) | 0; - lo = (lo + Math.imul(al4, bl4)) | 0; - mid = (mid + Math.imul(al4, bh4)) | 0; - mid = (mid + Math.imul(ah4, bl4)) | 0; - hi = (hi + Math.imul(ah4, bh4)) | 0; - lo = (lo + Math.imul(al3, bl5)) | 0; - mid = (mid + Math.imul(al3, bh5)) | 0; - mid = (mid + Math.imul(ah3, bl5)) | 0; - hi = (hi + Math.imul(ah3, bh5)) | 0; - lo = (lo + Math.imul(al2, bl6)) | 0; - mid = (mid + Math.imul(al2, bh6)) | 0; - mid = (mid + Math.imul(ah2, bl6)) | 0; - hi = (hi + Math.imul(ah2, bh6)) | 0; - lo = (lo + Math.imul(al1, bl7)) | 0; - mid = (mid + Math.imul(al1, bh7)) | 0; - mid = (mid + Math.imul(ah1, bl7)) | 0; - hi = (hi + Math.imul(ah1, bh7)) | 0; - lo = (lo + Math.imul(al0, bl8)) | 0; - mid = (mid + Math.imul(al0, bh8)) | 0; - mid = (mid + Math.imul(ah0, bl8)) | 0; - hi = (hi + Math.imul(ah0, bh8)) | 0; - var w8 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w8 >>> 26)) | 0; - w8 &= 0x3ffffff; - /* k = 9 */ - lo = Math.imul(al9, bl0); - mid = Math.imul(al9, bh0); - mid = (mid + Math.imul(ah9, bl0)) | 0; - hi = Math.imul(ah9, bh0); - lo = (lo + Math.imul(al8, bl1)) | 0; - mid = (mid + Math.imul(al8, bh1)) | 0; - mid = (mid + Math.imul(ah8, bl1)) | 0; - hi = (hi + Math.imul(ah8, bh1)) | 0; - lo = (lo + Math.imul(al7, bl2)) | 0; - mid = (mid + Math.imul(al7, bh2)) | 0; - mid = (mid + Math.imul(ah7, bl2)) | 0; - hi = (hi + Math.imul(ah7, bh2)) | 0; - lo = (lo + Math.imul(al6, bl3)) | 0; - mid = (mid + Math.imul(al6, bh3)) | 0; - mid = (mid + Math.imul(ah6, bl3)) | 0; - hi = (hi + Math.imul(ah6, bh3)) | 0; - lo = (lo + Math.imul(al5, bl4)) | 0; - mid = (mid + Math.imul(al5, bh4)) | 0; - mid = (mid + Math.imul(ah5, bl4)) | 0; - hi = (hi + Math.imul(ah5, bh4)) | 0; - lo = (lo + Math.imul(al4, bl5)) | 0; - mid = (mid + Math.imul(al4, bh5)) | 0; - mid = (mid + Math.imul(ah4, bl5)) | 0; - hi = (hi + Math.imul(ah4, bh5)) | 0; - lo = (lo + Math.imul(al3, bl6)) | 0; - mid = (mid + Math.imul(al3, bh6)) | 0; - mid = (mid + Math.imul(ah3, bl6)) | 0; - hi = (hi + Math.imul(ah3, bh6)) | 0; - lo = (lo + Math.imul(al2, bl7)) | 0; - mid = (mid + Math.imul(al2, bh7)) | 0; - mid = (mid + Math.imul(ah2, bl7)) | 0; - hi = (hi + Math.imul(ah2, bh7)) | 0; - lo = (lo + Math.imul(al1, bl8)) | 0; - mid = (mid + Math.imul(al1, bh8)) | 0; - mid = (mid + Math.imul(ah1, bl8)) | 0; - hi = (hi + Math.imul(ah1, bh8)) | 0; - lo = (lo + Math.imul(al0, bl9)) | 0; - mid = (mid + Math.imul(al0, bh9)) | 0; - mid = (mid + Math.imul(ah0, bl9)) | 0; - hi = (hi + Math.imul(ah0, bh9)) | 0; - var w9 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w9 >>> 26)) | 0; - w9 &= 0x3ffffff; - /* k = 10 */ - lo = Math.imul(al9, bl1); - mid = Math.imul(al9, bh1); - mid = (mid + Math.imul(ah9, bl1)) | 0; - hi = Math.imul(ah9, bh1); - lo = (lo + Math.imul(al8, bl2)) | 0; - mid = (mid + Math.imul(al8, bh2)) | 0; - mid = (mid + Math.imul(ah8, bl2)) | 0; - hi = (hi + Math.imul(ah8, bh2)) | 0; - lo = (lo + Math.imul(al7, bl3)) | 0; - mid = (mid + Math.imul(al7, bh3)) | 0; - mid = (mid + Math.imul(ah7, bl3)) | 0; - hi = (hi + Math.imul(ah7, bh3)) | 0; - lo = (lo + Math.imul(al6, bl4)) | 0; - mid = (mid + Math.imul(al6, bh4)) | 0; - mid = (mid + Math.imul(ah6, bl4)) | 0; - hi = (hi + Math.imul(ah6, bh4)) | 0; - lo = (lo + Math.imul(al5, bl5)) | 0; - mid = (mid + Math.imul(al5, bh5)) | 0; - mid = (mid + Math.imul(ah5, bl5)) | 0; - hi = (hi + Math.imul(ah5, bh5)) | 0; - lo = (lo + Math.imul(al4, bl6)) | 0; - mid = (mid + Math.imul(al4, bh6)) | 0; - mid = (mid + Math.imul(ah4, bl6)) | 0; - hi = (hi + Math.imul(ah4, bh6)) | 0; - lo = (lo + Math.imul(al3, bl7)) | 0; - mid = (mid + Math.imul(al3, bh7)) | 0; - mid = (mid + Math.imul(ah3, bl7)) | 0; - hi = (hi + Math.imul(ah3, bh7)) | 0; - lo = (lo + Math.imul(al2, bl8)) | 0; - mid = (mid + Math.imul(al2, bh8)) | 0; - mid = (mid + Math.imul(ah2, bl8)) | 0; - hi = (hi + Math.imul(ah2, bh8)) | 0; - lo = (lo + Math.imul(al1, bl9)) | 0; - mid = (mid + Math.imul(al1, bh9)) | 0; - mid = (mid + Math.imul(ah1, bl9)) | 0; - hi = (hi + Math.imul(ah1, bh9)) | 0; - var w10 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w10 >>> 26)) | 0; - w10 &= 0x3ffffff; - /* k = 11 */ - lo = Math.imul(al9, bl2); - mid = Math.imul(al9, bh2); - mid = (mid + Math.imul(ah9, bl2)) | 0; - hi = Math.imul(ah9, bh2); - lo = (lo + Math.imul(al8, bl3)) | 0; - mid = (mid + Math.imul(al8, bh3)) | 0; - mid = (mid + Math.imul(ah8, bl3)) | 0; - hi = (hi + Math.imul(ah8, bh3)) | 0; - lo = (lo + Math.imul(al7, bl4)) | 0; - mid = (mid + Math.imul(al7, bh4)) | 0; - mid = (mid + Math.imul(ah7, bl4)) | 0; - hi = (hi + Math.imul(ah7, bh4)) | 0; - lo = (lo + Math.imul(al6, bl5)) | 0; - mid = (mid + Math.imul(al6, bh5)) | 0; - mid = (mid + Math.imul(ah6, bl5)) | 0; - hi = (hi + Math.imul(ah6, bh5)) | 0; - lo = (lo + Math.imul(al5, bl6)) | 0; - mid = (mid + Math.imul(al5, bh6)) | 0; - mid = (mid + Math.imul(ah5, bl6)) | 0; - hi = (hi + Math.imul(ah5, bh6)) | 0; - lo = (lo + Math.imul(al4, bl7)) | 0; - mid = (mid + Math.imul(al4, bh7)) | 0; - mid = (mid + Math.imul(ah4, bl7)) | 0; - hi = (hi + Math.imul(ah4, bh7)) | 0; - lo = (lo + Math.imul(al3, bl8)) | 0; - mid = (mid + Math.imul(al3, bh8)) | 0; - mid = (mid + Math.imul(ah3, bl8)) | 0; - hi = (hi + Math.imul(ah3, bh8)) | 0; - lo = (lo + Math.imul(al2, bl9)) | 0; - mid = (mid + Math.imul(al2, bh9)) | 0; - mid = (mid + Math.imul(ah2, bl9)) | 0; - hi = (hi + Math.imul(ah2, bh9)) | 0; - var w11 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w11 >>> 26)) | 0; - w11 &= 0x3ffffff; - /* k = 12 */ - lo = Math.imul(al9, bl3); - mid = Math.imul(al9, bh3); - mid = (mid + Math.imul(ah9, bl3)) | 0; - hi = Math.imul(ah9, bh3); - lo = (lo + Math.imul(al8, bl4)) | 0; - mid = (mid + Math.imul(al8, bh4)) | 0; - mid = (mid + Math.imul(ah8, bl4)) | 0; - hi = (hi + Math.imul(ah8, bh4)) | 0; - lo = (lo + Math.imul(al7, bl5)) | 0; - mid = (mid + Math.imul(al7, bh5)) | 0; - mid = (mid + Math.imul(ah7, bl5)) | 0; - hi = (hi + Math.imul(ah7, bh5)) | 0; - lo = (lo + Math.imul(al6, bl6)) | 0; - mid = (mid + Math.imul(al6, bh6)) | 0; - mid = (mid + Math.imul(ah6, bl6)) | 0; - hi = (hi + Math.imul(ah6, bh6)) | 0; - lo = (lo + Math.imul(al5, bl7)) | 0; - mid = (mid + Math.imul(al5, bh7)) | 0; - mid = (mid + Math.imul(ah5, bl7)) | 0; - hi = (hi + Math.imul(ah5, bh7)) | 0; - lo = (lo + Math.imul(al4, bl8)) | 0; - mid = (mid + Math.imul(al4, bh8)) | 0; - mid = (mid + Math.imul(ah4, bl8)) | 0; - hi = (hi + Math.imul(ah4, bh8)) | 0; - lo = (lo + Math.imul(al3, bl9)) | 0; - mid = (mid + Math.imul(al3, bh9)) | 0; - mid = (mid + Math.imul(ah3, bl9)) | 0; - hi = (hi + Math.imul(ah3, bh9)) | 0; - var w12 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w12 >>> 26)) | 0; - w12 &= 0x3ffffff; - /* k = 13 */ - lo = Math.imul(al9, bl4); - mid = Math.imul(al9, bh4); - mid = (mid + Math.imul(ah9, bl4)) | 0; - hi = Math.imul(ah9, bh4); - lo = (lo + Math.imul(al8, bl5)) | 0; - mid = (mid + Math.imul(al8, bh5)) | 0; - mid = (mid + Math.imul(ah8, bl5)) | 0; - hi = (hi + Math.imul(ah8, bh5)) | 0; - lo = (lo + Math.imul(al7, bl6)) | 0; - mid = (mid + Math.imul(al7, bh6)) | 0; - mid = (mid + Math.imul(ah7, bl6)) | 0; - hi = (hi + Math.imul(ah7, bh6)) | 0; - lo = (lo + Math.imul(al6, bl7)) | 0; - mid = (mid + Math.imul(al6, bh7)) | 0; - mid = (mid + Math.imul(ah6, bl7)) | 0; - hi = (hi + Math.imul(ah6, bh7)) | 0; - lo = (lo + Math.imul(al5, bl8)) | 0; - mid = (mid + Math.imul(al5, bh8)) | 0; - mid = (mid + Math.imul(ah5, bl8)) | 0; - hi = (hi + Math.imul(ah5, bh8)) | 0; - lo = (lo + Math.imul(al4, bl9)) | 0; - mid = (mid + Math.imul(al4, bh9)) | 0; - mid = (mid + Math.imul(ah4, bl9)) | 0; - hi = (hi + Math.imul(ah4, bh9)) | 0; - var w13 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w13 >>> 26)) | 0; - w13 &= 0x3ffffff; - /* k = 14 */ - lo = Math.imul(al9, bl5); - mid = Math.imul(al9, bh5); - mid = (mid + Math.imul(ah9, bl5)) | 0; - hi = Math.imul(ah9, bh5); - lo = (lo + Math.imul(al8, bl6)) | 0; - mid = (mid + Math.imul(al8, bh6)) | 0; - mid = (mid + Math.imul(ah8, bl6)) | 0; - hi = (hi + Math.imul(ah8, bh6)) | 0; - lo = (lo + Math.imul(al7, bl7)) | 0; - mid = (mid + Math.imul(al7, bh7)) | 0; - mid = (mid + Math.imul(ah7, bl7)) | 0; - hi = (hi + Math.imul(ah7, bh7)) | 0; - lo = (lo + Math.imul(al6, bl8)) | 0; - mid = (mid + Math.imul(al6, bh8)) | 0; - mid = (mid + Math.imul(ah6, bl8)) | 0; - hi = (hi + Math.imul(ah6, bh8)) | 0; - lo = (lo + Math.imul(al5, bl9)) | 0; - mid = (mid + Math.imul(al5, bh9)) | 0; - mid = (mid + Math.imul(ah5, bl9)) | 0; - hi = (hi + Math.imul(ah5, bh9)) | 0; - var w14 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w14 >>> 26)) | 0; - w14 &= 0x3ffffff; - /* k = 15 */ - lo = Math.imul(al9, bl6); - mid = Math.imul(al9, bh6); - mid = (mid + Math.imul(ah9, bl6)) | 0; - hi = Math.imul(ah9, bh6); - lo = (lo + Math.imul(al8, bl7)) | 0; - mid = (mid + Math.imul(al8, bh7)) | 0; - mid = (mid + Math.imul(ah8, bl7)) | 0; - hi = (hi + Math.imul(ah8, bh7)) | 0; - lo = (lo + Math.imul(al7, bl8)) | 0; - mid = (mid + Math.imul(al7, bh8)) | 0; - mid = (mid + Math.imul(ah7, bl8)) | 0; - hi = (hi + Math.imul(ah7, bh8)) | 0; - lo = (lo + Math.imul(al6, bl9)) | 0; - mid = (mid + Math.imul(al6, bh9)) | 0; - mid = (mid + Math.imul(ah6, bl9)) | 0; - hi = (hi + Math.imul(ah6, bh9)) | 0; - var w15 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w15 >>> 26)) | 0; - w15 &= 0x3ffffff; - /* k = 16 */ - lo = Math.imul(al9, bl7); - mid = Math.imul(al9, bh7); - mid = (mid + Math.imul(ah9, bl7)) | 0; - hi = Math.imul(ah9, bh7); - lo = (lo + Math.imul(al8, bl8)) | 0; - mid = (mid + Math.imul(al8, bh8)) | 0; - mid = (mid + Math.imul(ah8, bl8)) | 0; - hi = (hi + Math.imul(ah8, bh8)) | 0; - lo = (lo + Math.imul(al7, bl9)) | 0; - mid = (mid + Math.imul(al7, bh9)) | 0; - mid = (mid + Math.imul(ah7, bl9)) | 0; - hi = (hi + Math.imul(ah7, bh9)) | 0; - var w16 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w16 >>> 26)) | 0; - w16 &= 0x3ffffff; - /* k = 17 */ - lo = Math.imul(al9, bl8); - mid = Math.imul(al9, bh8); - mid = (mid + Math.imul(ah9, bl8)) | 0; - hi = Math.imul(ah9, bh8); - lo = (lo + Math.imul(al8, bl9)) | 0; - mid = (mid + Math.imul(al8, bh9)) | 0; - mid = (mid + Math.imul(ah8, bl9)) | 0; - hi = (hi + Math.imul(ah8, bh9)) | 0; - var w17 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w17 >>> 26)) | 0; - w17 &= 0x3ffffff; - /* k = 18 */ - lo = Math.imul(al9, bl9); - mid = Math.imul(al9, bh9); - mid = (mid + Math.imul(ah9, bl9)) | 0; - hi = Math.imul(ah9, bh9); - var w18 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w18 >>> 26)) | 0; - w18 &= 0x3ffffff; - o[0] = w0; - o[1] = w1; - o[2] = w2; - o[3] = w3; - o[4] = w4; - o[5] = w5; - o[6] = w6; - o[7] = w7; - o[8] = w8; - o[9] = w9; - o[10] = w10; - o[11] = w11; - o[12] = w12; - o[13] = w13; - o[14] = w14; - o[15] = w15; - o[16] = w16; - o[17] = w17; - o[18] = w18; - if (c !== 0) { - o[19] = c; - out.length++; - } - return out; - }; - - // Polyfill comb - if (!Math.imul) { - comb10MulTo = smallMulTo; - } - - function bigMulTo (self, num, out) { - out.negative = num.negative ^ self.negative; - out.length = self.length + num.length; - - var carry = 0; - var hncarry = 0; - for (var k = 0; k < out.length - 1; k++) { - // Sum all words with the same `i + j = k` and accumulate `ncarry`, - // note that ncarry could be >= 0x3ffffff - var ncarry = hncarry; - hncarry = 0; - var rword = carry & 0x3ffffff; - var maxJ = Math.min(k, num.length - 1); - for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) { - var i = k - j; - var a = self.words[i] | 0; - var b = num.words[j] | 0; - var r = a * b; - - var lo = r & 0x3ffffff; - ncarry = (ncarry + ((r / 0x4000000) | 0)) | 0; - lo = (lo + rword) | 0; - rword = lo & 0x3ffffff; - ncarry = (ncarry + (lo >>> 26)) | 0; - - hncarry += ncarry >>> 26; - ncarry &= 0x3ffffff; - } - out.words[k] = rword; - carry = ncarry; - ncarry = hncarry; - } - if (carry !== 0) { - out.words[k] = carry; - } else { - out.length--; - } - - return out._strip(); - } - - function jumboMulTo (self, num, out) { - // Temporary disable, see https://github.com/indutny/bn.js/issues/211 - // var fftm = new FFTM(); - // return fftm.mulp(self, num, out); - return bigMulTo(self, num, out); - } - - BN.prototype.mulTo = function mulTo (num, out) { - var res; - var len = this.length + num.length; - if (this.length === 10 && num.length === 10) { - res = comb10MulTo(this, num, out); - } else if (len < 63) { - res = smallMulTo(this, num, out); - } else if (len < 1024) { - res = bigMulTo(this, num, out); - } else { - res = jumboMulTo(this, num, out); - } - - return res; - }; - - // Cooley-Tukey algorithm for FFT - // slightly revisited to rely on looping instead of recursion - - function FFTM (x, y) { - this.x = x; - this.y = y; - } - - FFTM.prototype.makeRBT = function makeRBT (N) { - var t = new Array(N); - var l = BN.prototype._countBits(N) - 1; - for (var i = 0; i < N; i++) { - t[i] = this.revBin(i, l, N); - } - - return t; - }; - - // Returns binary-reversed representation of `x` - FFTM.prototype.revBin = function revBin (x, l, N) { - if (x === 0 || x === N - 1) return x; - - var rb = 0; - for (var i = 0; i < l; i++) { - rb |= (x & 1) << (l - i - 1); - x >>= 1; - } - - return rb; - }; - - // Performs "tweedling" phase, therefore 'emulating' - // behaviour of the recursive algorithm - FFTM.prototype.permute = function permute (rbt, rws, iws, rtws, itws, N) { - for (var i = 0; i < N; i++) { - rtws[i] = rws[rbt[i]]; - itws[i] = iws[rbt[i]]; - } - }; - - FFTM.prototype.transform = function transform (rws, iws, rtws, itws, N, rbt) { - this.permute(rbt, rws, iws, rtws, itws, N); - - for (var s = 1; s < N; s <<= 1) { - var l = s << 1; - - var rtwdf = Math.cos(2 * Math.PI / l); - var itwdf = Math.sin(2 * Math.PI / l); - - for (var p = 0; p < N; p += l) { - var rtwdf_ = rtwdf; - var itwdf_ = itwdf; - - for (var j = 0; j < s; j++) { - var re = rtws[p + j]; - var ie = itws[p + j]; - - var ro = rtws[p + j + s]; - var io = itws[p + j + s]; - - var rx = rtwdf_ * ro - itwdf_ * io; - - io = rtwdf_ * io + itwdf_ * ro; - ro = rx; - - rtws[p + j] = re + ro; - itws[p + j] = ie + io; - - rtws[p + j + s] = re - ro; - itws[p + j + s] = ie - io; - - /* jshint maxdepth : false */ - if (j !== l) { - rx = rtwdf * rtwdf_ - itwdf * itwdf_; - - itwdf_ = rtwdf * itwdf_ + itwdf * rtwdf_; - rtwdf_ = rx; - } - } - } - } - }; - - FFTM.prototype.guessLen13b = function guessLen13b (n, m) { - var N = Math.max(m, n) | 1; - var odd = N & 1; - var i = 0; - for (N = N / 2 | 0; N; N = N >>> 1) { - i++; - } - - return 1 << i + 1 + odd; - }; - - FFTM.prototype.conjugate = function conjugate (rws, iws, N) { - if (N <= 1) return; - - for (var i = 0; i < N / 2; i++) { - var t = rws[i]; - - rws[i] = rws[N - i - 1]; - rws[N - i - 1] = t; - - t = iws[i]; - - iws[i] = -iws[N - i - 1]; - iws[N - i - 1] = -t; - } - }; - - FFTM.prototype.normalize13b = function normalize13b (ws, N) { - var carry = 0; - for (var i = 0; i < N / 2; i++) { - var w = Math.round(ws[2 * i + 1] / N) * 0x2000 + - Math.round(ws[2 * i] / N) + - carry; - - ws[i] = w & 0x3ffffff; - - if (w < 0x4000000) { - carry = 0; - } else { - carry = w / 0x4000000 | 0; - } - } - - return ws; - }; - - FFTM.prototype.convert13b = function convert13b (ws, len, rws, N) { - var carry = 0; - for (var i = 0; i < len; i++) { - carry = carry + (ws[i] | 0); - - rws[2 * i] = carry & 0x1fff; carry = carry >>> 13; - rws[2 * i + 1] = carry & 0x1fff; carry = carry >>> 13; - } - - // Pad with zeroes - for (i = 2 * len; i < N; ++i) { - rws[i] = 0; - } - - assert(carry === 0); - assert((carry & ~0x1fff) === 0); - }; - - FFTM.prototype.stub = function stub (N) { - var ph = new Array(N); - for (var i = 0; i < N; i++) { - ph[i] = 0; - } - - return ph; - }; - - FFTM.prototype.mulp = function mulp (x, y, out) { - var N = 2 * this.guessLen13b(x.length, y.length); - - var rbt = this.makeRBT(N); - - var _ = this.stub(N); - - var rws = new Array(N); - var rwst = new Array(N); - var iwst = new Array(N); - - var nrws = new Array(N); - var nrwst = new Array(N); - var niwst = new Array(N); - - var rmws = out.words; - rmws.length = N; - - this.convert13b(x.words, x.length, rws, N); - this.convert13b(y.words, y.length, nrws, N); - - this.transform(rws, _, rwst, iwst, N, rbt); - this.transform(nrws, _, nrwst, niwst, N, rbt); - - for (var i = 0; i < N; i++) { - var rx = rwst[i] * nrwst[i] - iwst[i] * niwst[i]; - iwst[i] = rwst[i] * niwst[i] + iwst[i] * nrwst[i]; - rwst[i] = rx; - } - - this.conjugate(rwst, iwst, N); - this.transform(rwst, iwst, rmws, _, N, rbt); - this.conjugate(rmws, _, N); - this.normalize13b(rmws, N); - - out.negative = x.negative ^ y.negative; - out.length = x.length + y.length; - return out._strip(); - }; - - // Multiply `this` by `num` - BN.prototype.mul = function mul (num) { - var out = new BN(null); - out.words = new Array(this.length + num.length); - return this.mulTo(num, out); - }; - - // Multiply employing FFT - BN.prototype.mulf = function mulf (num) { - var out = new BN(null); - out.words = new Array(this.length + num.length); - return jumboMulTo(this, num, out); - }; - - // In-place Multiplication - BN.prototype.imul = function imul (num) { - return this.clone().mulTo(num, this); - }; - - BN.prototype.imuln = function imuln (num) { - var isNegNum = num < 0; - if (isNegNum) num = -num; - - assert(typeof num === 'number'); - assert(num < 0x4000000); - - // Carry - var carry = 0; - for (var i = 0; i < this.length; i++) { - var w = (this.words[i] | 0) * num; - var lo = (w & 0x3ffffff) + (carry & 0x3ffffff); - carry >>= 26; - carry += (w / 0x4000000) | 0; - // NOTE: lo is 27bit maximum - carry += lo >>> 26; - this.words[i] = lo & 0x3ffffff; - } - - if (carry !== 0) { - this.words[i] = carry; - this.length++; - } - - return isNegNum ? this.ineg() : this; - }; - - BN.prototype.muln = function muln (num) { - return this.clone().imuln(num); - }; - - // `this` * `this` - BN.prototype.sqr = function sqr () { - return this.mul(this); - }; - - // `this` * `this` in-place - BN.prototype.isqr = function isqr () { - return this.imul(this.clone()); - }; - - // Math.pow(`this`, `num`) - BN.prototype.pow = function pow (num) { - var w = toBitArray(num); - if (w.length === 0) return new BN(1); - - // Skip leading zeroes - var res = this; - for (var i = 0; i < w.length; i++, res = res.sqr()) { - if (w[i] !== 0) break; - } - - if (++i < w.length) { - for (var q = res.sqr(); i < w.length; i++, q = q.sqr()) { - if (w[i] === 0) continue; - - res = res.mul(q); - } - } - - return res; - }; - - // Shift-left in-place - BN.prototype.iushln = function iushln (bits) { - assert(typeof bits === 'number' && bits >= 0); - var r = bits % 26; - var s = (bits - r) / 26; - var carryMask = (0x3ffffff >>> (26 - r)) << (26 - r); - var i; - - if (r !== 0) { - var carry = 0; - - for (i = 0; i < this.length; i++) { - var newCarry = this.words[i] & carryMask; - var c = ((this.words[i] | 0) - newCarry) << r; - this.words[i] = c | carry; - carry = newCarry >>> (26 - r); - } - - if (carry) { - this.words[i] = carry; - this.length++; - } - } - - if (s !== 0) { - for (i = this.length - 1; i >= 0; i--) { - this.words[i + s] = this.words[i]; - } - - for (i = 0; i < s; i++) { - this.words[i] = 0; - } - - this.length += s; - } - - return this._strip(); - }; - - BN.prototype.ishln = function ishln (bits) { - // TODO(indutny): implement me - assert(this.negative === 0); - return this.iushln(bits); - }; - - // Shift-right in-place - // NOTE: `hint` is a lowest bit before trailing zeroes - // NOTE: if `extended` is present - it will be filled with destroyed bits - BN.prototype.iushrn = function iushrn (bits, hint, extended) { - assert(typeof bits === 'number' && bits >= 0); - var h; - if (hint) { - h = (hint - (hint % 26)) / 26; - } else { - h = 0; - } - - var r = bits % 26; - var s = Math.min((bits - r) / 26, this.length); - var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r); - var maskedWords = extended; - - h -= s; - h = Math.max(0, h); - - // Extended mode, copy masked part - if (maskedWords) { - for (var i = 0; i < s; i++) { - maskedWords.words[i] = this.words[i]; - } - maskedWords.length = s; - } - - if (s === 0) { - // No-op, we should not move anything at all - } else if (this.length > s) { - this.length -= s; - for (i = 0; i < this.length; i++) { - this.words[i] = this.words[i + s]; - } - } else { - this.words[0] = 0; - this.length = 1; - } - - var carry = 0; - for (i = this.length - 1; i >= 0 && (carry !== 0 || i >= h); i--) { - var word = this.words[i] | 0; - this.words[i] = (carry << (26 - r)) | (word >>> r); - carry = word & mask; - } - - // Push carried bits as a mask - if (maskedWords && carry !== 0) { - maskedWords.words[maskedWords.length++] = carry; - } - - if (this.length === 0) { - this.words[0] = 0; - this.length = 1; - } - - return this._strip(); - }; - - BN.prototype.ishrn = function ishrn (bits, hint, extended) { - // TODO(indutny): implement me - assert(this.negative === 0); - return this.iushrn(bits, hint, extended); - }; - - // Shift-left - BN.prototype.shln = function shln (bits) { - return this.clone().ishln(bits); - }; - - BN.prototype.ushln = function ushln (bits) { - return this.clone().iushln(bits); - }; - - // Shift-right - BN.prototype.shrn = function shrn (bits) { - return this.clone().ishrn(bits); - }; - - BN.prototype.ushrn = function ushrn (bits) { - return this.clone().iushrn(bits); - }; - - // Test if n bit is set - BN.prototype.testn = function testn (bit) { - assert(typeof bit === 'number' && bit >= 0); - var r = bit % 26; - var s = (bit - r) / 26; - var q = 1 << r; - - // Fast case: bit is much higher than all existing words - if (this.length <= s) return false; - - // Check bit and return - var w = this.words[s]; - - return !!(w & q); - }; - - // Return only lowers bits of number (in-place) - BN.prototype.imaskn = function imaskn (bits) { - assert(typeof bits === 'number' && bits >= 0); - var r = bits % 26; - var s = (bits - r) / 26; - - assert(this.negative === 0, 'imaskn works only with positive numbers'); - - if (this.length <= s) { - return this; - } - - if (r !== 0) { - s++; - } - this.length = Math.min(s, this.length); - - if (r !== 0) { - var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r); - this.words[this.length - 1] &= mask; - } - - return this._strip(); - }; - - // Return only lowers bits of number - BN.prototype.maskn = function maskn (bits) { - return this.clone().imaskn(bits); - }; - - // Add plain number `num` to `this` - BN.prototype.iaddn = function iaddn (num) { - assert(typeof num === 'number'); - assert(num < 0x4000000); - if (num < 0) return this.isubn(-num); - - // Possible sign change - if (this.negative !== 0) { - if (this.length === 1 && (this.words[0] | 0) <= num) { - this.words[0] = num - (this.words[0] | 0); - this.negative = 0; - return this; - } - - this.negative = 0; - this.isubn(num); - this.negative = 1; - return this; - } - - // Add without checks - return this._iaddn(num); - }; - - BN.prototype._iaddn = function _iaddn (num) { - this.words[0] += num; - - // Carry - for (var i = 0; i < this.length && this.words[i] >= 0x4000000; i++) { - this.words[i] -= 0x4000000; - if (i === this.length - 1) { - this.words[i + 1] = 1; - } else { - this.words[i + 1]++; - } - } - this.length = Math.max(this.length, i + 1); - - return this; - }; - - // Subtract plain number `num` from `this` - BN.prototype.isubn = function isubn (num) { - assert(typeof num === 'number'); - assert(num < 0x4000000); - if (num < 0) return this.iaddn(-num); - - if (this.negative !== 0) { - this.negative = 0; - this.iaddn(num); - this.negative = 1; - return this; - } - - this.words[0] -= num; - - if (this.length === 1 && this.words[0] < 0) { - this.words[0] = -this.words[0]; - this.negative = 1; - } else { - // Carry - for (var i = 0; i < this.length && this.words[i] < 0; i++) { - this.words[i] += 0x4000000; - this.words[i + 1] -= 1; - } - } - - return this._strip(); - }; - - BN.prototype.addn = function addn (num) { - return this.clone().iaddn(num); - }; - - BN.prototype.subn = function subn (num) { - return this.clone().isubn(num); - }; - - BN.prototype.iabs = function iabs () { - this.negative = 0; - - return this; - }; - - BN.prototype.abs = function abs () { - return this.clone().iabs(); - }; - - BN.prototype._ishlnsubmul = function _ishlnsubmul (num, mul, shift) { - var len = num.length + shift; - var i; - - this._expand(len); - - var w; - var carry = 0; - for (i = 0; i < num.length; i++) { - w = (this.words[i + shift] | 0) + carry; - var right = (num.words[i] | 0) * mul; - w -= right & 0x3ffffff; - carry = (w >> 26) - ((right / 0x4000000) | 0); - this.words[i + shift] = w & 0x3ffffff; - } - for (; i < this.length - shift; i++) { - w = (this.words[i + shift] | 0) + carry; - carry = w >> 26; - this.words[i + shift] = w & 0x3ffffff; - } - - if (carry === 0) return this._strip(); - - // Subtraction overflow - assert(carry === -1); - carry = 0; - for (i = 0; i < this.length; i++) { - w = -(this.words[i] | 0) + carry; - carry = w >> 26; - this.words[i] = w & 0x3ffffff; - } - this.negative = 1; - - return this._strip(); - }; - - BN.prototype._wordDiv = function _wordDiv (num, mode) { - var shift = this.length - num.length; - - var a = this.clone(); - var b = num; - - // Normalize - var bhi = b.words[b.length - 1] | 0; - var bhiBits = this._countBits(bhi); - shift = 26 - bhiBits; - if (shift !== 0) { - b = b.ushln(shift); - a.iushln(shift); - bhi = b.words[b.length - 1] | 0; - } - - // Initialize quotient - var m = a.length - b.length; - var q; - - if (mode !== 'mod') { - q = new BN(null); - q.length = m + 1; - q.words = new Array(q.length); - for (var i = 0; i < q.length; i++) { - q.words[i] = 0; - } - } - - var diff = a.clone()._ishlnsubmul(b, 1, m); - if (diff.negative === 0) { - a = diff; - if (q) { - q.words[m] = 1; - } - } - - for (var j = m - 1; j >= 0; j--) { - var qj = (a.words[b.length + j] | 0) * 0x4000000 + - (a.words[b.length + j - 1] | 0); - - // NOTE: (qj / bhi) is (0x3ffffff * 0x4000000 + 0x3ffffff) / 0x2000000 max - // (0x7ffffff) - qj = Math.min((qj / bhi) | 0, 0x3ffffff); - - a._ishlnsubmul(b, qj, j); - while (a.negative !== 0) { - qj--; - a.negative = 0; - a._ishlnsubmul(b, 1, j); - if (!a.isZero()) { - a.negative ^= 1; - } - } - if (q) { - q.words[j] = qj; - } - } - if (q) { - q._strip(); - } - a._strip(); - - // Denormalize - if (mode !== 'div' && shift !== 0) { - a.iushrn(shift); - } - - return { - div: q || null, - mod: a - }; - }; - - // NOTE: 1) `mode` can be set to `mod` to request mod only, - // to `div` to request div only, or be absent to - // request both div & mod - // 2) `positive` is true if unsigned mod is requested - BN.prototype.divmod = function divmod (num, mode, positive) { - assert(!num.isZero()); - - if (this.isZero()) { - return { - div: new BN(0), - mod: new BN(0) - }; - } - - var div, mod, res; - if (this.negative !== 0 && num.negative === 0) { - res = this.neg().divmod(num, mode); - - if (mode !== 'mod') { - div = res.div.neg(); - } - - if (mode !== 'div') { - mod = res.mod.neg(); - if (positive && mod.negative !== 0) { - mod.iadd(num); - } - } - - return { - div: div, - mod: mod - }; - } - - if (this.negative === 0 && num.negative !== 0) { - res = this.divmod(num.neg(), mode); - - if (mode !== 'mod') { - div = res.div.neg(); - } - - return { - div: div, - mod: res.mod - }; - } - - if ((this.negative & num.negative) !== 0) { - res = this.neg().divmod(num.neg(), mode); - - if (mode !== 'div') { - mod = res.mod.neg(); - if (positive && mod.negative !== 0) { - mod.isub(num); - } - } - - return { - div: res.div, - mod: mod - }; - } - - // Both numbers are positive at this point - - // Strip both numbers to approximate shift value - if (num.length > this.length || this.cmp(num) < 0) { - return { - div: new BN(0), - mod: this - }; - } - - // Very short reduction - if (num.length === 1) { - if (mode === 'div') { - return { - div: this.divn(num.words[0]), - mod: null - }; - } - - if (mode === 'mod') { - return { - div: null, - mod: new BN(this.modrn(num.words[0])) - }; - } - - return { - div: this.divn(num.words[0]), - mod: new BN(this.modrn(num.words[0])) - }; - } - - return this._wordDiv(num, mode); - }; - - // Find `this` / `num` - BN.prototype.div = function div (num) { - return this.divmod(num, 'div', false).div; - }; - - // Find `this` % `num` - BN.prototype.mod = function mod (num) { - return this.divmod(num, 'mod', false).mod; - }; - - BN.prototype.umod = function umod (num) { - return this.divmod(num, 'mod', true).mod; - }; - - // Find Round(`this` / `num`) - BN.prototype.divRound = function divRound (num) { - var dm = this.divmod(num); - - // Fast case - exact division - if (dm.mod.isZero()) return dm.div; - - var mod = dm.div.negative !== 0 ? dm.mod.isub(num) : dm.mod; - - var half = num.ushrn(1); - var r2 = num.andln(1); - var cmp = mod.cmp(half); - - // Round down - if (cmp < 0 || (r2 === 1 && cmp === 0)) return dm.div; - - // Round up - return dm.div.negative !== 0 ? dm.div.isubn(1) : dm.div.iaddn(1); - }; - - BN.prototype.modrn = function modrn (num) { - var isNegNum = num < 0; - if (isNegNum) num = -num; - - assert(num <= 0x3ffffff); - var p = (1 << 26) % num; - - var acc = 0; - for (var i = this.length - 1; i >= 0; i--) { - acc = (p * acc + (this.words[i] | 0)) % num; - } - - return isNegNum ? -acc : acc; - }; - - // WARNING: DEPRECATED - BN.prototype.modn = function modn (num) { - return this.modrn(num); - }; - - // In-place division by number - BN.prototype.idivn = function idivn (num) { - var isNegNum = num < 0; - if (isNegNum) num = -num; - - assert(num <= 0x3ffffff); - - var carry = 0; - for (var i = this.length - 1; i >= 0; i--) { - var w = (this.words[i] | 0) + carry * 0x4000000; - this.words[i] = (w / num) | 0; - carry = w % num; - } - - this._strip(); - return isNegNum ? this.ineg() : this; - }; - - BN.prototype.divn = function divn (num) { - return this.clone().idivn(num); - }; - - BN.prototype.egcd = function egcd (p) { - assert(p.negative === 0); - assert(!p.isZero()); - - var x = this; - var y = p.clone(); - - if (x.negative !== 0) { - x = x.umod(p); - } else { - x = x.clone(); - } - - // A * x + B * y = x - var A = new BN(1); - var B = new BN(0); - - // C * x + D * y = y - var C = new BN(0); - var D = new BN(1); - - var g = 0; - - while (x.isEven() && y.isEven()) { - x.iushrn(1); - y.iushrn(1); - ++g; - } - - var yp = y.clone(); - var xp = x.clone(); - - while (!x.isZero()) { - for (var i = 0, im = 1; (x.words[0] & im) === 0 && i < 26; ++i, im <<= 1); - if (i > 0) { - x.iushrn(i); - while (i-- > 0) { - if (A.isOdd() || B.isOdd()) { - A.iadd(yp); - B.isub(xp); - } - - A.iushrn(1); - B.iushrn(1); - } - } - - for (var j = 0, jm = 1; (y.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1); - if (j > 0) { - y.iushrn(j); - while (j-- > 0) { - if (C.isOdd() || D.isOdd()) { - C.iadd(yp); - D.isub(xp); - } - - C.iushrn(1); - D.iushrn(1); - } - } - - if (x.cmp(y) >= 0) { - x.isub(y); - A.isub(C); - B.isub(D); - } else { - y.isub(x); - C.isub(A); - D.isub(B); - } - } - - return { - a: C, - b: D, - gcd: y.iushln(g) - }; - }; - - // This is reduced incarnation of the binary EEA - // above, designated to invert members of the - // _prime_ fields F(p) at a maximal speed - BN.prototype._invmp = function _invmp (p) { - assert(p.negative === 0); - assert(!p.isZero()); - - var a = this; - var b = p.clone(); - - if (a.negative !== 0) { - a = a.umod(p); - } else { - a = a.clone(); - } - - var x1 = new BN(1); - var x2 = new BN(0); - - var delta = b.clone(); - - while (a.cmpn(1) > 0 && b.cmpn(1) > 0) { - for (var i = 0, im = 1; (a.words[0] & im) === 0 && i < 26; ++i, im <<= 1); - if (i > 0) { - a.iushrn(i); - while (i-- > 0) { - if (x1.isOdd()) { - x1.iadd(delta); - } - - x1.iushrn(1); - } - } - - for (var j = 0, jm = 1; (b.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1); - if (j > 0) { - b.iushrn(j); - while (j-- > 0) { - if (x2.isOdd()) { - x2.iadd(delta); - } - - x2.iushrn(1); - } - } - - if (a.cmp(b) >= 0) { - a.isub(b); - x1.isub(x2); - } else { - b.isub(a); - x2.isub(x1); - } - } - - var res; - if (a.cmpn(1) === 0) { - res = x1; - } else { - res = x2; - } - - if (res.cmpn(0) < 0) { - res.iadd(p); - } - - return res; - }; - - BN.prototype.gcd = function gcd (num) { - if (this.isZero()) return num.abs(); - if (num.isZero()) return this.abs(); - - var a = this.clone(); - var b = num.clone(); - a.negative = 0; - b.negative = 0; - - // Remove common factor of two - for (var shift = 0; a.isEven() && b.isEven(); shift++) { - a.iushrn(1); - b.iushrn(1); - } - - do { - while (a.isEven()) { - a.iushrn(1); - } - while (b.isEven()) { - b.iushrn(1); - } - - var r = a.cmp(b); - if (r < 0) { - // Swap `a` and `b` to make `a` always bigger than `b` - var t = a; - a = b; - b = t; - } else if (r === 0 || b.cmpn(1) === 0) { - break; - } - - a.isub(b); - } while (true); - - return b.iushln(shift); - }; - - // Invert number in the field F(num) - BN.prototype.invm = function invm (num) { - return this.egcd(num).a.umod(num); - }; - - BN.prototype.isEven = function isEven () { - return (this.words[0] & 1) === 0; - }; - - BN.prototype.isOdd = function isOdd () { - return (this.words[0] & 1) === 1; - }; - - // And first word and num - BN.prototype.andln = function andln (num) { - return this.words[0] & num; - }; - - // Increment at the bit position in-line - BN.prototype.bincn = function bincn (bit) { - assert(typeof bit === 'number'); - var r = bit % 26; - var s = (bit - r) / 26; - var q = 1 << r; - - // Fast case: bit is much higher than all existing words - if (this.length <= s) { - this._expand(s + 1); - this.words[s] |= q; - return this; - } - - // Add bit and propagate, if needed - var carry = q; - for (var i = s; carry !== 0 && i < this.length; i++) { - var w = this.words[i] | 0; - w += carry; - carry = w >>> 26; - w &= 0x3ffffff; - this.words[i] = w; - } - if (carry !== 0) { - this.words[i] = carry; - this.length++; - } - return this; - }; - - BN.prototype.isZero = function isZero () { - return this.length === 1 && this.words[0] === 0; - }; - - BN.prototype.cmpn = function cmpn (num) { - var negative = num < 0; - - if (this.negative !== 0 && !negative) return -1; - if (this.negative === 0 && negative) return 1; - - this._strip(); - - var res; - if (this.length > 1) { - res = 1; - } else { - if (negative) { - num = -num; - } - - assert(num <= 0x3ffffff, 'Number is too big'); - - var w = this.words[0] | 0; - res = w === num ? 0 : w < num ? -1 : 1; - } - if (this.negative !== 0) return -res | 0; - return res; - }; - - // Compare two numbers and return: - // 1 - if `this` > `num` - // 0 - if `this` == `num` - // -1 - if `this` < `num` - BN.prototype.cmp = function cmp (num) { - if (this.negative !== 0 && num.negative === 0) return -1; - if (this.negative === 0 && num.negative !== 0) return 1; - - var res = this.ucmp(num); - if (this.negative !== 0) return -res | 0; - return res; - }; - - // Unsigned comparison - BN.prototype.ucmp = function ucmp (num) { - // At this point both numbers have the same sign - if (this.length > num.length) return 1; - if (this.length < num.length) return -1; - - var res = 0; - for (var i = this.length - 1; i >= 0; i--) { - var a = this.words[i] | 0; - var b = num.words[i] | 0; - - if (a === b) continue; - if (a < b) { - res = -1; - } else if (a > b) { - res = 1; - } - break; - } - return res; - }; - - BN.prototype.gtn = function gtn (num) { - return this.cmpn(num) === 1; - }; - - BN.prototype.gt = function gt (num) { - return this.cmp(num) === 1; - }; - - BN.prototype.gten = function gten (num) { - return this.cmpn(num) >= 0; - }; - - BN.prototype.gte = function gte (num) { - return this.cmp(num) >= 0; - }; - - BN.prototype.ltn = function ltn (num) { - return this.cmpn(num) === -1; - }; - - BN.prototype.lt = function lt (num) { - return this.cmp(num) === -1; - }; - - BN.prototype.lten = function lten (num) { - return this.cmpn(num) <= 0; - }; - - BN.prototype.lte = function lte (num) { - return this.cmp(num) <= 0; - }; - - BN.prototype.eqn = function eqn (num) { - return this.cmpn(num) === 0; - }; - - BN.prototype.eq = function eq (num) { - return this.cmp(num) === 0; - }; - - // - // A reduce context, could be using montgomery or something better, depending - // on the `m` itself. - // - BN.red = function red (num) { - return new Red(num); - }; - - BN.prototype.toRed = function toRed (ctx) { - assert(!this.red, 'Already a number in reduction context'); - assert(this.negative === 0, 'red works only with positives'); - return ctx.convertTo(this)._forceRed(ctx); - }; - - BN.prototype.fromRed = function fromRed () { - assert(this.red, 'fromRed works only with numbers in reduction context'); - return this.red.convertFrom(this); - }; - - BN.prototype._forceRed = function _forceRed (ctx) { - this.red = ctx; - return this; - }; - - BN.prototype.forceRed = function forceRed (ctx) { - assert(!this.red, 'Already a number in reduction context'); - return this._forceRed(ctx); - }; - - BN.prototype.redAdd = function redAdd (num) { - assert(this.red, 'redAdd works only with red numbers'); - return this.red.add(this, num); - }; - - BN.prototype.redIAdd = function redIAdd (num) { - assert(this.red, 'redIAdd works only with red numbers'); - return this.red.iadd(this, num); - }; - - BN.prototype.redSub = function redSub (num) { - assert(this.red, 'redSub works only with red numbers'); - return this.red.sub(this, num); - }; - - BN.prototype.redISub = function redISub (num) { - assert(this.red, 'redISub works only with red numbers'); - return this.red.isub(this, num); - }; - - BN.prototype.redShl = function redShl (num) { - assert(this.red, 'redShl works only with red numbers'); - return this.red.shl(this, num); - }; - - BN.prototype.redMul = function redMul (num) { - assert(this.red, 'redMul works only with red numbers'); - this.red._verify2(this, num); - return this.red.mul(this, num); - }; - - BN.prototype.redIMul = function redIMul (num) { - assert(this.red, 'redMul works only with red numbers'); - this.red._verify2(this, num); - return this.red.imul(this, num); - }; - - BN.prototype.redSqr = function redSqr () { - assert(this.red, 'redSqr works only with red numbers'); - this.red._verify1(this); - return this.red.sqr(this); - }; - - BN.prototype.redISqr = function redISqr () { - assert(this.red, 'redISqr works only with red numbers'); - this.red._verify1(this); - return this.red.isqr(this); - }; - - // Square root over p - BN.prototype.redSqrt = function redSqrt () { - assert(this.red, 'redSqrt works only with red numbers'); - this.red._verify1(this); - return this.red.sqrt(this); - }; - - BN.prototype.redInvm = function redInvm () { - assert(this.red, 'redInvm works only with red numbers'); - this.red._verify1(this); - return this.red.invm(this); - }; - - // Return negative clone of `this` % `red modulo` - BN.prototype.redNeg = function redNeg () { - assert(this.red, 'redNeg works only with red numbers'); - this.red._verify1(this); - return this.red.neg(this); - }; - - BN.prototype.redPow = function redPow (num) { - assert(this.red && !num.red, 'redPow(normalNum)'); - this.red._verify1(this); - return this.red.pow(this, num); - }; - - // Prime numbers with efficient reduction - var primes = { - k256: null, - p224: null, - p192: null, - p25519: null - }; - - // Pseudo-Mersenne prime - function MPrime (name, p) { - // P = 2 ^ N - K - this.name = name; - this.p = new BN(p, 16); - this.n = this.p.bitLength(); - this.k = new BN(1).iushln(this.n).isub(this.p); - - this.tmp = this._tmp(); - } - - MPrime.prototype._tmp = function _tmp () { - var tmp = new BN(null); - tmp.words = new Array(Math.ceil(this.n / 13)); - return tmp; - }; - - MPrime.prototype.ireduce = function ireduce (num) { - // Assumes that `num` is less than `P^2` - // num = HI * (2 ^ N - K) + HI * K + LO = HI * K + LO (mod P) - var r = num; - var rlen; - - do { - this.split(r, this.tmp); - r = this.imulK(r); - r = r.iadd(this.tmp); - rlen = r.bitLength(); - } while (rlen > this.n); - - var cmp = rlen < this.n ? -1 : r.ucmp(this.p); - if (cmp === 0) { - r.words[0] = 0; - r.length = 1; - } else if (cmp > 0) { - r.isub(this.p); - } else { - if (r.strip !== undefined) { - // r is a BN v4 instance - r.strip(); - } else { - // r is a BN v5 instance - r._strip(); - } - } - - return r; - }; - - MPrime.prototype.split = function split (input, out) { - input.iushrn(this.n, 0, out); - }; - - MPrime.prototype.imulK = function imulK (num) { - return num.imul(this.k); - }; - - function K256 () { - MPrime.call( - this, - 'k256', - 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f'); - } - inherits(K256, MPrime); - - K256.prototype.split = function split (input, output) { - // 256 = 9 * 26 + 22 - var mask = 0x3fffff; - - var outLen = Math.min(input.length, 9); - for (var i = 0; i < outLen; i++) { - output.words[i] = input.words[i]; - } - output.length = outLen; - - if (input.length <= 9) { - input.words[0] = 0; - input.length = 1; - return; - } - - // Shift by 9 limbs - var prev = input.words[9]; - output.words[output.length++] = prev & mask; - - for (i = 10; i < input.length; i++) { - var next = input.words[i] | 0; - input.words[i - 10] = ((next & mask) << 4) | (prev >>> 22); - prev = next; - } - prev >>>= 22; - input.words[i - 10] = prev; - if (prev === 0 && input.length > 10) { - input.length -= 10; - } else { - input.length -= 9; - } - }; - - K256.prototype.imulK = function imulK (num) { - // K = 0x1000003d1 = [ 0x40, 0x3d1 ] - num.words[num.length] = 0; - num.words[num.length + 1] = 0; - num.length += 2; - - // bounded at: 0x40 * 0x3ffffff + 0x3d0 = 0x100000390 - var lo = 0; - for (var i = 0; i < num.length; i++) { - var w = num.words[i] | 0; - lo += w * 0x3d1; - num.words[i] = lo & 0x3ffffff; - lo = w * 0x40 + ((lo / 0x4000000) | 0); - } - - // Fast length reduction - if (num.words[num.length - 1] === 0) { - num.length--; - if (num.words[num.length - 1] === 0) { - num.length--; - } - } - return num; - }; - - function P224 () { - MPrime.call( - this, - 'p224', - 'ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001'); - } - inherits(P224, MPrime); - - function P192 () { - MPrime.call( - this, - 'p192', - 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff'); - } - inherits(P192, MPrime); - - function P25519 () { - // 2 ^ 255 - 19 - MPrime.call( - this, - '25519', - '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed'); - } - inherits(P25519, MPrime); - - P25519.prototype.imulK = function imulK (num) { - // K = 0x13 - var carry = 0; - for (var i = 0; i < num.length; i++) { - var hi = (num.words[i] | 0) * 0x13 + carry; - var lo = hi & 0x3ffffff; - hi >>>= 26; - - num.words[i] = lo; - carry = hi; - } - if (carry !== 0) { - num.words[num.length++] = carry; - } - return num; - }; - - // Exported mostly for testing purposes, use plain name instead - BN._prime = function prime (name) { - // Cached version of prime - if (primes[name]) return primes[name]; - - var prime; - if (name === 'k256') { - prime = new K256(); - } else if (name === 'p224') { - prime = new P224(); - } else if (name === 'p192') { - prime = new P192(); - } else if (name === 'p25519') { - prime = new P25519(); - } else { - throw new Error('Unknown prime ' + name); - } - primes[name] = prime; - - return prime; - }; - - // - // Base reduction engine - // - function Red (m) { - if (typeof m === 'string') { - var prime = BN._prime(m); - this.m = prime.p; - this.prime = prime; - } else { - assert(m.gtn(1), 'modulus must be greater than 1'); - this.m = m; - this.prime = null; - } - } - - Red.prototype._verify1 = function _verify1 (a) { - assert(a.negative === 0, 'red works only with positives'); - assert(a.red, 'red works only with red numbers'); - }; - - Red.prototype._verify2 = function _verify2 (a, b) { - assert((a.negative | b.negative) === 0, 'red works only with positives'); - assert(a.red && a.red === b.red, - 'red works only with red numbers'); - }; - - Red.prototype.imod = function imod (a) { - if (this.prime) return this.prime.ireduce(a)._forceRed(this); - - move(a, a.umod(this.m)._forceRed(this)); - return a; - }; - - Red.prototype.neg = function neg (a) { - if (a.isZero()) { - return a.clone(); - } - - return this.m.sub(a)._forceRed(this); - }; - - Red.prototype.add = function add (a, b) { - this._verify2(a, b); - - var res = a.add(b); - if (res.cmp(this.m) >= 0) { - res.isub(this.m); - } - return res._forceRed(this); - }; - - Red.prototype.iadd = function iadd (a, b) { - this._verify2(a, b); - - var res = a.iadd(b); - if (res.cmp(this.m) >= 0) { - res.isub(this.m); - } - return res; - }; - - Red.prototype.sub = function sub (a, b) { - this._verify2(a, b); - - var res = a.sub(b); - if (res.cmpn(0) < 0) { - res.iadd(this.m); - } - return res._forceRed(this); - }; - - Red.prototype.isub = function isub (a, b) { - this._verify2(a, b); - - var res = a.isub(b); - if (res.cmpn(0) < 0) { - res.iadd(this.m); - } - return res; - }; - - Red.prototype.shl = function shl (a, num) { - this._verify1(a); - return this.imod(a.ushln(num)); - }; - - Red.prototype.imul = function imul (a, b) { - this._verify2(a, b); - return this.imod(a.imul(b)); - }; - - Red.prototype.mul = function mul (a, b) { - this._verify2(a, b); - return this.imod(a.mul(b)); - }; - - Red.prototype.isqr = function isqr (a) { - return this.imul(a, a.clone()); - }; - - Red.prototype.sqr = function sqr (a) { - return this.mul(a, a); - }; - - Red.prototype.sqrt = function sqrt (a) { - if (a.isZero()) return a.clone(); - - var mod3 = this.m.andln(3); - assert(mod3 % 2 === 1); - - // Fast case - if (mod3 === 3) { - var pow = this.m.add(new BN(1)).iushrn(2); - return this.pow(a, pow); - } - - // Tonelli-Shanks algorithm (Totally unoptimized and slow) - // - // Find Q and S, that Q * 2 ^ S = (P - 1) - var q = this.m.subn(1); - var s = 0; - while (!q.isZero() && q.andln(1) === 0) { - s++; - q.iushrn(1); - } - assert(!q.isZero()); - - var one = new BN(1).toRed(this); - var nOne = one.redNeg(); - - // Find quadratic non-residue - // NOTE: Max is such because of generalized Riemann hypothesis. - var lpow = this.m.subn(1).iushrn(1); - var z = this.m.bitLength(); - z = new BN(2 * z * z).toRed(this); - - while (this.pow(z, lpow).cmp(nOne) !== 0) { - z.redIAdd(nOne); - } - - var c = this.pow(z, q); - var r = this.pow(a, q.addn(1).iushrn(1)); - var t = this.pow(a, q); - var m = s; - while (t.cmp(one) !== 0) { - var tmp = t; - for (var i = 0; tmp.cmp(one) !== 0; i++) { - tmp = tmp.redSqr(); - } - assert(i < m); - var b = this.pow(c, new BN(1).iushln(m - i - 1)); - - r = r.redMul(b); - c = b.redSqr(); - t = t.redMul(c); - m = i; - } - - return r; - }; - - Red.prototype.invm = function invm (a) { - var inv = a._invmp(this.m); - if (inv.negative !== 0) { - inv.negative = 0; - return this.imod(inv).redNeg(); - } else { - return this.imod(inv); - } - }; - - Red.prototype.pow = function pow (a, num) { - if (num.isZero()) return new BN(1).toRed(this); - if (num.cmpn(1) === 0) return a.clone(); - - var windowSize = 4; - var wnd = new Array(1 << windowSize); - wnd[0] = new BN(1).toRed(this); - wnd[1] = a; - for (var i = 2; i < wnd.length; i++) { - wnd[i] = this.mul(wnd[i - 1], a); - } - - var res = wnd[0]; - var current = 0; - var currentLen = 0; - var start = num.bitLength() % 26; - if (start === 0) { - start = 26; - } - - for (i = num.length - 1; i >= 0; i--) { - var word = num.words[i]; - for (var j = start - 1; j >= 0; j--) { - var bit = (word >> j) & 1; - if (res !== wnd[0]) { - res = this.sqr(res); - } - - if (bit === 0 && current === 0) { - currentLen = 0; - continue; - } - - current <<= 1; - current |= bit; - currentLen++; - if (currentLen !== windowSize && (i !== 0 || j !== 0)) continue; - - res = this.mul(res, wnd[current]); - currentLen = 0; - current = 0; - } - start = 26; - } - - return res; - }; - - Red.prototype.convertTo = function convertTo (num) { - var r = num.umod(this.m); - - return r === num ? r.clone() : r; - }; - - Red.prototype.convertFrom = function convertFrom (num) { - var res = num.clone(); - res.red = null; - return res; - }; - - // - // Montgomery method engine - // - - BN.mont = function mont (num) { - return new Mont(num); - }; - - function Mont (m) { - Red.call(this, m); - - this.shift = this.m.bitLength(); - if (this.shift % 26 !== 0) { - this.shift += 26 - (this.shift % 26); - } - - this.r = new BN(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); - } - inherits(Mont, Red); - - Mont.prototype.convertTo = function convertTo (num) { - return this.imod(num.ushln(this.shift)); - }; - - Mont.prototype.convertFrom = function convertFrom (num) { - var r = this.imod(num.mul(this.rinv)); - r.red = null; - return r; - }; - - Mont.prototype.imul = function imul (a, b) { - if (a.isZero() || b.isZero()) { - a.words[0] = 0; - a.length = 1; - return a; - } - - var t = a.imul(b); - var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m); - var u = t.isub(c).iushrn(this.shift); - var res = u; - - if (u.cmp(this.m) >= 0) { - res = u.isub(this.m); - } else if (u.cmpn(0) < 0) { - res = u.iadd(this.m); - } - - return res._forceRed(this); - }; - - Mont.prototype.mul = function mul (a, b) { - if (a.isZero() || b.isZero()) return new BN(0)._forceRed(this); - - var t = a.mul(b); - var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m); - var u = t.isub(c).iushrn(this.shift); - var res = u; - if (u.cmp(this.m) >= 0) { - res = u.isub(this.m); - } else if (u.cmpn(0) < 0) { - res = u.iadd(this.m); - } - - return res._forceRed(this); - }; - - Mont.prototype.invm = function invm (a) { - // (AR)^-1 * R^2 = (A^-1 * R^-1) * R^2 = A^-1 * R - var res = this.imod(a._invmp(this.m).mul(this.r2)); - return res._forceRed(this); - }; -})( false || module, this); - - -/***/ }), - -/***/ 63251: -/***/ (function(module) { - -/** - * This file contains the Bottleneck library (MIT), compiled to ES2017, and without Clustering support. - * https://github.com/SGrondin/bottleneck - */ -(function (global, factory) { - true ? module.exports = factory() : - 0; -}(this, (function () { 'use strict'; - - var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {}; - - function getCjsExportFromNamespace (n) { - return n && n['default'] || n; - } - - var load = function(received, defaults, onto = {}) { - var k, ref, v; - for (k in defaults) { - v = defaults[k]; - onto[k] = (ref = received[k]) != null ? ref : v; - } - return onto; - }; - - var overwrite = function(received, defaults, onto = {}) { - var k, v; - for (k in received) { - v = received[k]; - if (defaults[k] !== void 0) { - onto[k] = v; - } - } - return onto; - }; - - var parser = { - load: load, - overwrite: overwrite - }; - - var DLList; - - DLList = class DLList { - constructor(incr, decr) { - this.incr = incr; - this.decr = decr; - this._first = null; - this._last = null; - this.length = 0; - } - - push(value) { - var node; - this.length++; - if (typeof this.incr === "function") { - this.incr(); - } - node = { - value, - prev: this._last, - next: null - }; - if (this._last != null) { - this._last.next = node; - this._last = node; - } else { - this._first = this._last = node; - } - return void 0; - } - - shift() { - var value; - if (this._first == null) { - return; - } else { - this.length--; - if (typeof this.decr === "function") { - this.decr(); - } - } - value = this._first.value; - if ((this._first = this._first.next) != null) { - this._first.prev = null; - } else { - this._last = null; - } - return value; - } - - first() { - if (this._first != null) { - return this._first.value; - } - } - - getArray() { - var node, ref, results; - node = this._first; - results = []; - while (node != null) { - results.push((ref = node, node = node.next, ref.value)); - } - return results; - } - - forEachShift(cb) { - var node; - node = this.shift(); - while (node != null) { - (cb(node), node = this.shift()); - } - return void 0; - } - - debug() { - var node, ref, ref1, ref2, results; - node = this._first; - results = []; - while (node != null) { - results.push((ref = node, node = node.next, { - value: ref.value, - prev: (ref1 = ref.prev) != null ? ref1.value : void 0, - next: (ref2 = ref.next) != null ? ref2.value : void 0 - })); - } - return results; - } - - }; - - var DLList_1 = DLList; - - var Events; - - Events = class Events { - constructor(instance) { - this.instance = instance; - this._events = {}; - if ((this.instance.on != null) || (this.instance.once != null) || (this.instance.removeAllListeners != null)) { - throw new Error("An Emitter already exists for this object"); - } - this.instance.on = (name, cb) => { - return this._addListener(name, "many", cb); - }; - this.instance.once = (name, cb) => { - return this._addListener(name, "once", cb); - }; - this.instance.removeAllListeners = (name = null) => { - if (name != null) { - return delete this._events[name]; - } else { - return this._events = {}; - } - }; - } - - _addListener(name, status, cb) { - var base; - if ((base = this._events)[name] == null) { - base[name] = []; - } - this._events[name].push({cb, status}); - return this.instance; - } - - listenerCount(name) { - if (this._events[name] != null) { - return this._events[name].length; - } else { - return 0; - } - } - - async trigger(name, ...args) { - var e, promises; - try { - if (name !== "debug") { - this.trigger("debug", `Event triggered: ${name}`, args); - } - if (this._events[name] == null) { - return; - } - this._events[name] = this._events[name].filter(function(listener) { - return listener.status !== "none"; - }); - promises = this._events[name].map(async(listener) => { - var e, returned; - if (listener.status === "none") { - return; - } - if (listener.status === "once") { - listener.status = "none"; - } - try { - returned = typeof listener.cb === "function" ? listener.cb(...args) : void 0; - if (typeof (returned != null ? returned.then : void 0) === "function") { - return (await returned); - } else { - return returned; - } - } catch (error) { - e = error; - { - this.trigger("error", e); - } - return null; - } - }); - return ((await Promise.all(promises))).find(function(x) { - return x != null; - }); - } catch (error) { - e = error; - { - this.trigger("error", e); - } - return null; - } - } - - }; - - var Events_1 = Events; - - var DLList$1, Events$1, Queues; - - DLList$1 = DLList_1; - - Events$1 = Events_1; - - Queues = class Queues { - constructor(num_priorities) { - var i; - this.Events = new Events$1(this); - this._length = 0; - this._lists = (function() { - var j, ref, results; - results = []; - for (i = j = 1, ref = num_priorities; (1 <= ref ? j <= ref : j >= ref); i = 1 <= ref ? ++j : --j) { - results.push(new DLList$1((() => { - return this.incr(); - }), (() => { - return this.decr(); - }))); - } - return results; - }).call(this); - } - - incr() { - if (this._length++ === 0) { - return this.Events.trigger("leftzero"); - } - } - - decr() { - if (--this._length === 0) { - return this.Events.trigger("zero"); - } - } - - push(job) { - return this._lists[job.options.priority].push(job); - } - - queued(priority) { - if (priority != null) { - return this._lists[priority].length; - } else { - return this._length; - } - } - - shiftAll(fn) { - return this._lists.forEach(function(list) { - return list.forEachShift(fn); - }); - } - - getFirst(arr = this._lists) { - var j, len, list; - for (j = 0, len = arr.length; j < len; j++) { - list = arr[j]; - if (list.length > 0) { - return list; - } - } - return []; - } - - shiftLastFrom(priority) { - return this.getFirst(this._lists.slice(priority).reverse()).shift(); - } - - }; - - var Queues_1 = Queues; - - var BottleneckError; - - BottleneckError = class BottleneckError extends Error {}; - - var BottleneckError_1 = BottleneckError; - - var BottleneckError$1, DEFAULT_PRIORITY, Job, NUM_PRIORITIES, parser$1; - - NUM_PRIORITIES = 10; - - DEFAULT_PRIORITY = 5; - - parser$1 = parser; - - BottleneckError$1 = BottleneckError_1; - - Job = class Job { - constructor(task, args, options, jobDefaults, rejectOnDrop, Events, _states, Promise) { - this.task = task; - this.args = args; - this.rejectOnDrop = rejectOnDrop; - this.Events = Events; - this._states = _states; - this.Promise = Promise; - this.options = parser$1.load(options, jobDefaults); - this.options.priority = this._sanitizePriority(this.options.priority); - if (this.options.id === jobDefaults.id) { - this.options.id = `${this.options.id}-${this._randomIndex()}`; - } - this.promise = new this.Promise((_resolve, _reject) => { - this._resolve = _resolve; - this._reject = _reject; - }); - this.retryCount = 0; - } - - _sanitizePriority(priority) { - var sProperty; - sProperty = ~~priority !== priority ? DEFAULT_PRIORITY : priority; - if (sProperty < 0) { - return 0; - } else if (sProperty > NUM_PRIORITIES - 1) { - return NUM_PRIORITIES - 1; - } else { - return sProperty; - } - } - - _randomIndex() { - return Math.random().toString(36).slice(2); - } - - doDrop({error, message = "This job has been dropped by Bottleneck"} = {}) { - if (this._states.remove(this.options.id)) { - if (this.rejectOnDrop) { - this._reject(error != null ? error : new BottleneckError$1(message)); - } - this.Events.trigger("dropped", {args: this.args, options: this.options, task: this.task, promise: this.promise}); - return true; - } else { - return false; - } - } - - _assertStatus(expected) { - var status; - status = this._states.jobStatus(this.options.id); - if (!(status === expected || (expected === "DONE" && status === null))) { - throw new BottleneckError$1(`Invalid job status ${status}, expected ${expected}. Please open an issue at https://github.com/SGrondin/bottleneck/issues`); - } - } - - doReceive() { - this._states.start(this.options.id); - return this.Events.trigger("received", {args: this.args, options: this.options}); - } - - doQueue(reachedHWM, blocked) { - this._assertStatus("RECEIVED"); - this._states.next(this.options.id); - return this.Events.trigger("queued", {args: this.args, options: this.options, reachedHWM, blocked}); - } - - doRun() { - if (this.retryCount === 0) { - this._assertStatus("QUEUED"); - this._states.next(this.options.id); - } else { - this._assertStatus("EXECUTING"); - } - return this.Events.trigger("scheduled", {args: this.args, options: this.options}); - } - - async doExecute(chained, clearGlobalState, run, free) { - var error, eventInfo, passed; - if (this.retryCount === 0) { - this._assertStatus("RUNNING"); - this._states.next(this.options.id); - } else { - this._assertStatus("EXECUTING"); - } - eventInfo = {args: this.args, options: this.options, retryCount: this.retryCount}; - this.Events.trigger("executing", eventInfo); - try { - passed = (await (chained != null ? chained.schedule(this.options, this.task, ...this.args) : this.task(...this.args))); - if (clearGlobalState()) { - this.doDone(eventInfo); - await free(this.options, eventInfo); - this._assertStatus("DONE"); - return this._resolve(passed); - } - } catch (error1) { - error = error1; - return this._onFailure(error, eventInfo, clearGlobalState, run, free); - } - } - - doExpire(clearGlobalState, run, free) { - var error, eventInfo; - if (this._states.jobStatus(this.options.id === "RUNNING")) { - this._states.next(this.options.id); - } - this._assertStatus("EXECUTING"); - eventInfo = {args: this.args, options: this.options, retryCount: this.retryCount}; - error = new BottleneckError$1(`This job timed out after ${this.options.expiration} ms.`); - return this._onFailure(error, eventInfo, clearGlobalState, run, free); - } - - async _onFailure(error, eventInfo, clearGlobalState, run, free) { - var retry, retryAfter; - if (clearGlobalState()) { - retry = (await this.Events.trigger("failed", error, eventInfo)); - if (retry != null) { - retryAfter = ~~retry; - this.Events.trigger("retry", `Retrying ${this.options.id} after ${retryAfter} ms`, eventInfo); - this.retryCount++; - return run(retryAfter); - } else { - this.doDone(eventInfo); - await free(this.options, eventInfo); - this._assertStatus("DONE"); - return this._reject(error); - } - } - } - - doDone(eventInfo) { - this._assertStatus("EXECUTING"); - this._states.next(this.options.id); - return this.Events.trigger("done", eventInfo); - } - - }; - - var Job_1 = Job; - - var BottleneckError$2, LocalDatastore, parser$2; - - parser$2 = parser; - - BottleneckError$2 = BottleneckError_1; - - LocalDatastore = class LocalDatastore { - constructor(instance, storeOptions, storeInstanceOptions) { - this.instance = instance; - this.storeOptions = storeOptions; - this.clientId = this.instance._randomIndex(); - parser$2.load(storeInstanceOptions, storeInstanceOptions, this); - this._nextRequest = this._lastReservoirRefresh = this._lastReservoirIncrease = Date.now(); - this._running = 0; - this._done = 0; - this._unblockTime = 0; - this.ready = this.Promise.resolve(); - this.clients = {}; - this._startHeartbeat(); - } - - _startHeartbeat() { - var base; - if ((this.heartbeat == null) && (((this.storeOptions.reservoirRefreshInterval != null) && (this.storeOptions.reservoirRefreshAmount != null)) || ((this.storeOptions.reservoirIncreaseInterval != null) && (this.storeOptions.reservoirIncreaseAmount != null)))) { - return typeof (base = (this.heartbeat = setInterval(() => { - var amount, incr, maximum, now, reservoir; - now = Date.now(); - if ((this.storeOptions.reservoirRefreshInterval != null) && now >= this._lastReservoirRefresh + this.storeOptions.reservoirRefreshInterval) { - this._lastReservoirRefresh = now; - this.storeOptions.reservoir = this.storeOptions.reservoirRefreshAmount; - this.instance._drainAll(this.computeCapacity()); - } - if ((this.storeOptions.reservoirIncreaseInterval != null) && now >= this._lastReservoirIncrease + this.storeOptions.reservoirIncreaseInterval) { - ({ - reservoirIncreaseAmount: amount, - reservoirIncreaseMaximum: maximum, - reservoir - } = this.storeOptions); - this._lastReservoirIncrease = now; - incr = maximum != null ? Math.min(amount, maximum - reservoir) : amount; - if (incr > 0) { - this.storeOptions.reservoir += incr; - return this.instance._drainAll(this.computeCapacity()); - } - } - }, this.heartbeatInterval))).unref === "function" ? base.unref() : void 0; - } else { - return clearInterval(this.heartbeat); - } - } - - async __publish__(message) { - await this.yieldLoop(); - return this.instance.Events.trigger("message", message.toString()); - } - - async __disconnect__(flush) { - await this.yieldLoop(); - clearInterval(this.heartbeat); - return this.Promise.resolve(); - } - - yieldLoop(t = 0) { - return new this.Promise(function(resolve, reject) { - return setTimeout(resolve, t); - }); - } - - computePenalty() { - var ref; - return (ref = this.storeOptions.penalty) != null ? ref : (15 * this.storeOptions.minTime) || 5000; - } - - async __updateSettings__(options) { - await this.yieldLoop(); - parser$2.overwrite(options, options, this.storeOptions); - this._startHeartbeat(); - this.instance._drainAll(this.computeCapacity()); - return true; - } - - async __running__() { - await this.yieldLoop(); - return this._running; - } - - async __queued__() { - await this.yieldLoop(); - return this.instance.queued(); - } - - async __done__() { - await this.yieldLoop(); - return this._done; - } - - async __groupCheck__(time) { - await this.yieldLoop(); - return (this._nextRequest + this.timeout) < time; - } - - computeCapacity() { - var maxConcurrent, reservoir; - ({maxConcurrent, reservoir} = this.storeOptions); - if ((maxConcurrent != null) && (reservoir != null)) { - return Math.min(maxConcurrent - this._running, reservoir); - } else if (maxConcurrent != null) { - return maxConcurrent - this._running; - } else if (reservoir != null) { - return reservoir; - } else { - return null; - } - } - - conditionsCheck(weight) { - var capacity; - capacity = this.computeCapacity(); - return (capacity == null) || weight <= capacity; - } - - async __incrementReservoir__(incr) { - var reservoir; - await this.yieldLoop(); - reservoir = this.storeOptions.reservoir += incr; - this.instance._drainAll(this.computeCapacity()); - return reservoir; - } - - async __currentReservoir__() { - await this.yieldLoop(); - return this.storeOptions.reservoir; - } - - isBlocked(now) { - return this._unblockTime >= now; - } - - check(weight, now) { - return this.conditionsCheck(weight) && (this._nextRequest - now) <= 0; - } - - async __check__(weight) { - var now; - await this.yieldLoop(); - now = Date.now(); - return this.check(weight, now); - } - - async __register__(index, weight, expiration) { - var now, wait; - await this.yieldLoop(); - now = Date.now(); - if (this.conditionsCheck(weight)) { - this._running += weight; - if (this.storeOptions.reservoir != null) { - this.storeOptions.reservoir -= weight; - } - wait = Math.max(this._nextRequest - now, 0); - this._nextRequest = now + wait + this.storeOptions.minTime; - return { - success: true, - wait, - reservoir: this.storeOptions.reservoir - }; - } else { - return { - success: false - }; - } - } - - strategyIsBlock() { - return this.storeOptions.strategy === 3; - } - - async __submit__(queueLength, weight) { - var blocked, now, reachedHWM; - await this.yieldLoop(); - if ((this.storeOptions.maxConcurrent != null) && weight > this.storeOptions.maxConcurrent) { - throw new BottleneckError$2(`Impossible to add a job having a weight of ${weight} to a limiter having a maxConcurrent setting of ${this.storeOptions.maxConcurrent}`); - } - now = Date.now(); - reachedHWM = (this.storeOptions.highWater != null) && queueLength === this.storeOptions.highWater && !this.check(weight, now); - blocked = this.strategyIsBlock() && (reachedHWM || this.isBlocked(now)); - if (blocked) { - this._unblockTime = now + this.computePenalty(); - this._nextRequest = this._unblockTime + this.storeOptions.minTime; - this.instance._dropAllQueued(); - } - return { - reachedHWM, - blocked, - strategy: this.storeOptions.strategy - }; - } - - async __free__(index, weight) { - await this.yieldLoop(); - this._running -= weight; - this._done += weight; - this.instance._drainAll(this.computeCapacity()); - return { - running: this._running - }; - } - - }; - - var LocalDatastore_1 = LocalDatastore; - - var BottleneckError$3, States; - - BottleneckError$3 = BottleneckError_1; - - States = class States { - constructor(status1) { - this.status = status1; - this._jobs = {}; - this.counts = this.status.map(function() { - return 0; - }); - } - - next(id) { - var current, next; - current = this._jobs[id]; - next = current + 1; - if ((current != null) && next < this.status.length) { - this.counts[current]--; - this.counts[next]++; - return this._jobs[id]++; - } else if (current != null) { - this.counts[current]--; - return delete this._jobs[id]; - } - } - - start(id) { - var initial; - initial = 0; - this._jobs[id] = initial; - return this.counts[initial]++; - } - - remove(id) { - var current; - current = this._jobs[id]; - if (current != null) { - this.counts[current]--; - delete this._jobs[id]; - } - return current != null; - } - - jobStatus(id) { - var ref; - return (ref = this.status[this._jobs[id]]) != null ? ref : null; - } - - statusJobs(status) { - var k, pos, ref, results, v; - if (status != null) { - pos = this.status.indexOf(status); - if (pos < 0) { - throw new BottleneckError$3(`status must be one of ${this.status.join(', ')}`); - } - ref = this._jobs; - results = []; - for (k in ref) { - v = ref[k]; - if (v === pos) { - results.push(k); - } - } - return results; - } else { - return Object.keys(this._jobs); - } - } - - statusCounts() { - return this.counts.reduce(((acc, v, i) => { - acc[this.status[i]] = v; - return acc; - }), {}); - } - - }; - - var States_1 = States; - - var DLList$2, Sync; - - DLList$2 = DLList_1; - - Sync = class Sync { - constructor(name, Promise) { - this.schedule = this.schedule.bind(this); - this.name = name; - this.Promise = Promise; - this._running = 0; - this._queue = new DLList$2(); - } - - isEmpty() { - return this._queue.length === 0; - } - - async _tryToRun() { - var args, cb, error, reject, resolve, returned, task; - if ((this._running < 1) && this._queue.length > 0) { - this._running++; - ({task, args, resolve, reject} = this._queue.shift()); - cb = (await (async function() { - try { - returned = (await task(...args)); - return function() { - return resolve(returned); - }; - } catch (error1) { - error = error1; - return function() { - return reject(error); - }; - } - })()); - this._running--; - this._tryToRun(); - return cb(); - } - } - - schedule(task, ...args) { - var promise, reject, resolve; - resolve = reject = null; - promise = new this.Promise(function(_resolve, _reject) { - resolve = _resolve; - return reject = _reject; - }); - this._queue.push({task, args, resolve, reject}); - this._tryToRun(); - return promise; - } - - }; - - var Sync_1 = Sync; - - var version = "2.19.5"; - var version$1 = { - version: version - }; - - var version$2 = /*#__PURE__*/Object.freeze({ - version: version, - default: version$1 - }); - - var require$$2 = () => console.log('You must import the full version of Bottleneck in order to use this feature.'); - - var require$$3 = () => console.log('You must import the full version of Bottleneck in order to use this feature.'); - - var require$$4 = () => console.log('You must import the full version of Bottleneck in order to use this feature.'); - - var Events$2, Group, IORedisConnection$1, RedisConnection$1, Scripts$1, parser$3; - - parser$3 = parser; - - Events$2 = Events_1; - - RedisConnection$1 = require$$2; - - IORedisConnection$1 = require$$3; - - Scripts$1 = require$$4; - - Group = (function() { - class Group { - constructor(limiterOptions = {}) { - this.deleteKey = this.deleteKey.bind(this); - this.limiterOptions = limiterOptions; - parser$3.load(this.limiterOptions, this.defaults, this); - this.Events = new Events$2(this); - this.instances = {}; - this.Bottleneck = Bottleneck_1; - this._startAutoCleanup(); - this.sharedConnection = this.connection != null; - if (this.connection == null) { - if (this.limiterOptions.datastore === "redis") { - this.connection = new RedisConnection$1(Object.assign({}, this.limiterOptions, {Events: this.Events})); - } else if (this.limiterOptions.datastore === "ioredis") { - this.connection = new IORedisConnection$1(Object.assign({}, this.limiterOptions, {Events: this.Events})); - } - } - } - - key(key = "") { - var ref; - return (ref = this.instances[key]) != null ? ref : (() => { - var limiter; - limiter = this.instances[key] = new this.Bottleneck(Object.assign(this.limiterOptions, { - id: `${this.id}-${key}`, - timeout: this.timeout, - connection: this.connection - })); - this.Events.trigger("created", limiter, key); - return limiter; - })(); - } - - async deleteKey(key = "") { - var deleted, instance; - instance = this.instances[key]; - if (this.connection) { - deleted = (await this.connection.__runCommand__(['del', ...Scripts$1.allKeys(`${this.id}-${key}`)])); - } - if (instance != null) { - delete this.instances[key]; - await instance.disconnect(); - } - return (instance != null) || deleted > 0; - } - - limiters() { - var k, ref, results, v; - ref = this.instances; - results = []; - for (k in ref) { - v = ref[k]; - results.push({ - key: k, - limiter: v - }); - } - return results; - } - - keys() { - return Object.keys(this.instances); - } - - async clusterKeys() { - var cursor, end, found, i, k, keys, len, next, start; - if (this.connection == null) { - return this.Promise.resolve(this.keys()); - } - keys = []; - cursor = null; - start = `b_${this.id}-`.length; - end = "_settings".length; - while (cursor !== 0) { - [next, found] = (await this.connection.__runCommand__(["scan", cursor != null ? cursor : 0, "match", `b_${this.id}-*_settings`, "count", 10000])); - cursor = ~~next; - for (i = 0, len = found.length; i < len; i++) { - k = found[i]; - keys.push(k.slice(start, -end)); - } - } - return keys; - } - - _startAutoCleanup() { - var base; - clearInterval(this.interval); - return typeof (base = (this.interval = setInterval(async() => { - var e, k, ref, results, time, v; - time = Date.now(); - ref = this.instances; - results = []; - for (k in ref) { - v = ref[k]; - try { - if ((await v._store.__groupCheck__(time))) { - results.push(this.deleteKey(k)); - } else { - results.push(void 0); - } - } catch (error) { - e = error; - results.push(v.Events.trigger("error", e)); - } - } - return results; - }, this.timeout / 2))).unref === "function" ? base.unref() : void 0; - } - - updateSettings(options = {}) { - parser$3.overwrite(options, this.defaults, this); - parser$3.overwrite(options, options, this.limiterOptions); - if (options.timeout != null) { - return this._startAutoCleanup(); - } - } - - disconnect(flush = true) { - var ref; - if (!this.sharedConnection) { - return (ref = this.connection) != null ? ref.disconnect(flush) : void 0; - } - } - - } - Group.prototype.defaults = { - timeout: 1000 * 60 * 5, - connection: null, - Promise: Promise, - id: "group-key" - }; - - return Group; - - }).call(commonjsGlobal); - - var Group_1 = Group; - - var Batcher, Events$3, parser$4; - - parser$4 = parser; - - Events$3 = Events_1; - - Batcher = (function() { - class Batcher { - constructor(options = {}) { - this.options = options; - parser$4.load(this.options, this.defaults, this); - this.Events = new Events$3(this); - this._arr = []; - this._resetPromise(); - this._lastFlush = Date.now(); - } - - _resetPromise() { - return this._promise = new this.Promise((res, rej) => { - return this._resolve = res; - }); - } - - _flush() { - clearTimeout(this._timeout); - this._lastFlush = Date.now(); - this._resolve(); - this.Events.trigger("batch", this._arr); - this._arr = []; - return this._resetPromise(); - } - - add(data) { - var ret; - this._arr.push(data); - ret = this._promise; - if (this._arr.length === this.maxSize) { - this._flush(); - } else if ((this.maxTime != null) && this._arr.length === 1) { - this._timeout = setTimeout(() => { - return this._flush(); - }, this.maxTime); - } - return ret; - } - - } - Batcher.prototype.defaults = { - maxTime: null, - maxSize: null, - Promise: Promise - }; - - return Batcher; - - }).call(commonjsGlobal); - - var Batcher_1 = Batcher; - - var require$$4$1 = () => console.log('You must import the full version of Bottleneck in order to use this feature.'); - - var require$$8 = getCjsExportFromNamespace(version$2); - - var Bottleneck, DEFAULT_PRIORITY$1, Events$4, Job$1, LocalDatastore$1, NUM_PRIORITIES$1, Queues$1, RedisDatastore$1, States$1, Sync$1, parser$5, - splice = [].splice; - - NUM_PRIORITIES$1 = 10; - - DEFAULT_PRIORITY$1 = 5; - - parser$5 = parser; - - Queues$1 = Queues_1; - - Job$1 = Job_1; - - LocalDatastore$1 = LocalDatastore_1; - - RedisDatastore$1 = require$$4$1; - - Events$4 = Events_1; - - States$1 = States_1; - - Sync$1 = Sync_1; - - Bottleneck = (function() { - class Bottleneck { - constructor(options = {}, ...invalid) { - var storeInstanceOptions, storeOptions; - this._addToQueue = this._addToQueue.bind(this); - this._validateOptions(options, invalid); - parser$5.load(options, this.instanceDefaults, this); - this._queues = new Queues$1(NUM_PRIORITIES$1); - this._scheduled = {}; - this._states = new States$1(["RECEIVED", "QUEUED", "RUNNING", "EXECUTING"].concat(this.trackDoneStatus ? ["DONE"] : [])); - this._limiter = null; - this.Events = new Events$4(this); - this._submitLock = new Sync$1("submit", this.Promise); - this._registerLock = new Sync$1("register", this.Promise); - storeOptions = parser$5.load(options, this.storeDefaults, {}); - this._store = (function() { - if (this.datastore === "redis" || this.datastore === "ioredis" || (this.connection != null)) { - storeInstanceOptions = parser$5.load(options, this.redisStoreDefaults, {}); - return new RedisDatastore$1(this, storeOptions, storeInstanceOptions); - } else if (this.datastore === "local") { - storeInstanceOptions = parser$5.load(options, this.localStoreDefaults, {}); - return new LocalDatastore$1(this, storeOptions, storeInstanceOptions); - } else { - throw new Bottleneck.prototype.BottleneckError(`Invalid datastore type: ${this.datastore}`); - } - }).call(this); - this._queues.on("leftzero", () => { - var ref; - return (ref = this._store.heartbeat) != null ? typeof ref.ref === "function" ? ref.ref() : void 0 : void 0; - }); - this._queues.on("zero", () => { - var ref; - return (ref = this._store.heartbeat) != null ? typeof ref.unref === "function" ? ref.unref() : void 0 : void 0; - }); - } - - _validateOptions(options, invalid) { - if (!((options != null) && typeof options === "object" && invalid.length === 0)) { - throw new Bottleneck.prototype.BottleneckError("Bottleneck v2 takes a single object argument. Refer to https://github.com/SGrondin/bottleneck#upgrading-to-v2 if you're upgrading from Bottleneck v1."); - } - } - - ready() { - return this._store.ready; - } - - clients() { - return this._store.clients; - } - - channel() { - return `b_${this.id}`; - } - - channel_client() { - return `b_${this.id}_${this._store.clientId}`; - } - - publish(message) { - return this._store.__publish__(message); - } - - disconnect(flush = true) { - return this._store.__disconnect__(flush); - } - - chain(_limiter) { - this._limiter = _limiter; - return this; - } - - queued(priority) { - return this._queues.queued(priority); - } - - clusterQueued() { - return this._store.__queued__(); - } - - empty() { - return this.queued() === 0 && this._submitLock.isEmpty(); - } - - running() { - return this._store.__running__(); - } - - done() { - return this._store.__done__(); - } - - jobStatus(id) { - return this._states.jobStatus(id); - } - - jobs(status) { - return this._states.statusJobs(status); - } - - counts() { - return this._states.statusCounts(); - } - - _randomIndex() { - return Math.random().toString(36).slice(2); - } - - check(weight = 1) { - return this._store.__check__(weight); - } - - _clearGlobalState(index) { - if (this._scheduled[index] != null) { - clearTimeout(this._scheduled[index].expiration); - delete this._scheduled[index]; - return true; - } else { - return false; - } - } - - async _free(index, job, options, eventInfo) { - var e, running; - try { - ({running} = (await this._store.__free__(index, options.weight))); - this.Events.trigger("debug", `Freed ${options.id}`, eventInfo); - if (running === 0 && this.empty()) { - return this.Events.trigger("idle"); - } - } catch (error1) { - e = error1; - return this.Events.trigger("error", e); - } - } - - _run(index, job, wait) { - var clearGlobalState, free, run; - job.doRun(); - clearGlobalState = this._clearGlobalState.bind(this, index); - run = this._run.bind(this, index, job); - free = this._free.bind(this, index, job); - return this._scheduled[index] = { - timeout: setTimeout(() => { - return job.doExecute(this._limiter, clearGlobalState, run, free); - }, wait), - expiration: job.options.expiration != null ? setTimeout(function() { - return job.doExpire(clearGlobalState, run, free); - }, wait + job.options.expiration) : void 0, - job: job - }; - } - - _drainOne(capacity) { - return this._registerLock.schedule(() => { - var args, index, next, options, queue; - if (this.queued() === 0) { - return this.Promise.resolve(null); - } - queue = this._queues.getFirst(); - ({options, args} = next = queue.first()); - if ((capacity != null) && options.weight > capacity) { - return this.Promise.resolve(null); - } - this.Events.trigger("debug", `Draining ${options.id}`, {args, options}); - index = this._randomIndex(); - return this._store.__register__(index, options.weight, options.expiration).then(({success, wait, reservoir}) => { - var empty; - this.Events.trigger("debug", `Drained ${options.id}`, {success, args, options}); - if (success) { - queue.shift(); - empty = this.empty(); - if (empty) { - this.Events.trigger("empty"); - } - if (reservoir === 0) { - this.Events.trigger("depleted", empty); - } - this._run(index, next, wait); - return this.Promise.resolve(options.weight); - } else { - return this.Promise.resolve(null); - } - }); - }); - } - - _drainAll(capacity, total = 0) { - return this._drainOne(capacity).then((drained) => { - var newCapacity; - if (drained != null) { - newCapacity = capacity != null ? capacity - drained : capacity; - return this._drainAll(newCapacity, total + drained); - } else { - return this.Promise.resolve(total); - } - }).catch((e) => { - return this.Events.trigger("error", e); - }); - } - - _dropAllQueued(message) { - return this._queues.shiftAll(function(job) { - return job.doDrop({message}); - }); - } - - stop(options = {}) { - var done, waitForExecuting; - options = parser$5.load(options, this.stopDefaults); - waitForExecuting = (at) => { - var finished; - finished = () => { - var counts; - counts = this._states.counts; - return (counts[0] + counts[1] + counts[2] + counts[3]) === at; - }; - return new this.Promise((resolve, reject) => { - if (finished()) { - return resolve(); - } else { - return this.on("done", () => { - if (finished()) { - this.removeAllListeners("done"); - return resolve(); - } - }); - } - }); - }; - done = options.dropWaitingJobs ? (this._run = function(index, next) { - return next.doDrop({ - message: options.dropErrorMessage - }); - }, this._drainOne = () => { - return this.Promise.resolve(null); - }, this._registerLock.schedule(() => { - return this._submitLock.schedule(() => { - var k, ref, v; - ref = this._scheduled; - for (k in ref) { - v = ref[k]; - if (this.jobStatus(v.job.options.id) === "RUNNING") { - clearTimeout(v.timeout); - clearTimeout(v.expiration); - v.job.doDrop({ - message: options.dropErrorMessage - }); - } - } - this._dropAllQueued(options.dropErrorMessage); - return waitForExecuting(0); - }); - })) : this.schedule({ - priority: NUM_PRIORITIES$1 - 1, - weight: 0 - }, () => { - return waitForExecuting(1); - }); - this._receive = function(job) { - return job._reject(new Bottleneck.prototype.BottleneckError(options.enqueueErrorMessage)); - }; - this.stop = () => { - return this.Promise.reject(new Bottleneck.prototype.BottleneckError("stop() has already been called")); - }; - return done; - } - - async _addToQueue(job) { - var args, blocked, error, options, reachedHWM, shifted, strategy; - ({args, options} = job); - try { - ({reachedHWM, blocked, strategy} = (await this._store.__submit__(this.queued(), options.weight))); - } catch (error1) { - error = error1; - this.Events.trigger("debug", `Could not queue ${options.id}`, {args, options, error}); - job.doDrop({error}); - return false; - } - if (blocked) { - job.doDrop(); - return true; - } else if (reachedHWM) { - shifted = strategy === Bottleneck.prototype.strategy.LEAK ? this._queues.shiftLastFrom(options.priority) : strategy === Bottleneck.prototype.strategy.OVERFLOW_PRIORITY ? this._queues.shiftLastFrom(options.priority + 1) : strategy === Bottleneck.prototype.strategy.OVERFLOW ? job : void 0; - if (shifted != null) { - shifted.doDrop(); - } - if ((shifted == null) || strategy === Bottleneck.prototype.strategy.OVERFLOW) { - if (shifted == null) { - job.doDrop(); - } - return reachedHWM; - } - } - job.doQueue(reachedHWM, blocked); - this._queues.push(job); - await this._drainAll(); - return reachedHWM; - } - - _receive(job) { - if (this._states.jobStatus(job.options.id) != null) { - job._reject(new Bottleneck.prototype.BottleneckError(`A job with the same id already exists (id=${job.options.id})`)); - return false; - } else { - job.doReceive(); - return this._submitLock.schedule(this._addToQueue, job); - } - } - - submit(...args) { - var cb, fn, job, options, ref, ref1, task; - if (typeof args[0] === "function") { - ref = args, [fn, ...args] = ref, [cb] = splice.call(args, -1); - options = parser$5.load({}, this.jobDefaults); - } else { - ref1 = args, [options, fn, ...args] = ref1, [cb] = splice.call(args, -1); - options = parser$5.load(options, this.jobDefaults); - } - task = (...args) => { - return new this.Promise(function(resolve, reject) { - return fn(...args, function(...args) { - return (args[0] != null ? reject : resolve)(args); - }); - }); - }; - job = new Job$1(task, args, options, this.jobDefaults, this.rejectOnDrop, this.Events, this._states, this.Promise); - job.promise.then(function(args) { - return typeof cb === "function" ? cb(...args) : void 0; - }).catch(function(args) { - if (Array.isArray(args)) { - return typeof cb === "function" ? cb(...args) : void 0; - } else { - return typeof cb === "function" ? cb(args) : void 0; - } - }); - return this._receive(job); - } - - schedule(...args) { - var job, options, task; - if (typeof args[0] === "function") { - [task, ...args] = args; - options = {}; - } else { - [options, task, ...args] = args; - } - job = new Job$1(task, args, options, this.jobDefaults, this.rejectOnDrop, this.Events, this._states, this.Promise); - this._receive(job); - return job.promise; - } - - wrap(fn) { - var schedule, wrapped; - schedule = this.schedule.bind(this); - wrapped = function(...args) { - return schedule(fn.bind(this), ...args); - }; - wrapped.withOptions = function(options, ...args) { - return schedule(options, fn, ...args); - }; - return wrapped; - } - - async updateSettings(options = {}) { - await this._store.__updateSettings__(parser$5.overwrite(options, this.storeDefaults)); - parser$5.overwrite(options, this.instanceDefaults, this); - return this; - } - - currentReservoir() { - return this._store.__currentReservoir__(); - } - - incrementReservoir(incr = 0) { - return this._store.__incrementReservoir__(incr); - } - - } - Bottleneck.default = Bottleneck; - - Bottleneck.Events = Events$4; - - Bottleneck.version = Bottleneck.prototype.version = require$$8.version; - - Bottleneck.strategy = Bottleneck.prototype.strategy = { - LEAK: 1, - OVERFLOW: 2, - OVERFLOW_PRIORITY: 4, - BLOCK: 3 - }; - - Bottleneck.BottleneckError = Bottleneck.prototype.BottleneckError = BottleneckError_1; - - Bottleneck.Group = Bottleneck.prototype.Group = Group_1; - - Bottleneck.RedisConnection = Bottleneck.prototype.RedisConnection = require$$2; - - Bottleneck.IORedisConnection = Bottleneck.prototype.IORedisConnection = require$$3; - - Bottleneck.Batcher = Bottleneck.prototype.Batcher = Batcher_1; - - Bottleneck.prototype.jobDefaults = { - priority: DEFAULT_PRIORITY$1, - weight: 1, - expiration: null, - id: "" - }; - - Bottleneck.prototype.storeDefaults = { - maxConcurrent: null, - minTime: 0, - highWater: null, - strategy: Bottleneck.prototype.strategy.LEAK, - penalty: null, - reservoir: null, - reservoirRefreshInterval: null, - reservoirRefreshAmount: null, - reservoirIncreaseInterval: null, - reservoirIncreaseAmount: null, - reservoirIncreaseMaximum: null - }; - - Bottleneck.prototype.localStoreDefaults = { - Promise: Promise, - timeout: null, - heartbeatInterval: 250 - }; - - Bottleneck.prototype.redisStoreDefaults = { - Promise: Promise, - timeout: null, - heartbeatInterval: 5000, - clientTimeout: 10000, - Redis: null, - clientOptions: {}, - clusterNodes: null, - clearDatastore: false, - connection: null - }; - - Bottleneck.prototype.instanceDefaults = { - datastore: "local", - connection: null, - id: "", - rejectOnDrop: true, - trackDoneStatus: false, - Promise: Promise - }; - - Bottleneck.prototype.stopDefaults = { - enqueueErrorMessage: "This limiter has been stopped and cannot accept new jobs.", - dropWaitingJobs: true, - dropErrorMessage: "This limiter has been stopped." - }; - - return Bottleneck; - - }).call(commonjsGlobal); - - var Bottleneck_1 = Bottleneck; - - var lib = Bottleneck_1; - - return lib; - -}))); - - -/***/ }), - -/***/ 49586: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -var r; - -module.exports = function rand(len) { - if (!r) - r = new Rand(null); - - return r.generate(len); -}; - -function Rand(rand) { - this.rand = rand; -} -module.exports.Rand = Rand; - -Rand.prototype.generate = function generate(len) { - return this._rand(len); -}; - -// Emulate crypto API using randy -Rand.prototype._rand = function _rand(n) { - if (this.rand.getBytes) - return this.rand.getBytes(n); - - var res = new Uint8Array(n); - for (var i = 0; i < res.length; i++) - res[i] = this.rand.getByte(); - return res; -}; - -if (typeof self === 'object') { - if (self.crypto && self.crypto.getRandomValues) { - // Modern browsers - Rand.prototype._rand = function _rand(n) { - var arr = new Uint8Array(n); - self.crypto.getRandomValues(arr); - return arr; - }; - } else if (self.msCrypto && self.msCrypto.getRandomValues) { - // IE - Rand.prototype._rand = function _rand(n) { - var arr = new Uint8Array(n); - self.msCrypto.getRandomValues(arr); - return arr; - }; - - // Safari's WebWorkers do not have `crypto` - } else if (typeof window === 'object') { - // Old junk - Rand.prototype._rand = function() { - throw new Error('Not implemented yet'); - }; - } -} else { - // Node.js or Web worker with no crypto support - try { - var crypto = __nccwpck_require__(76982); - if (typeof crypto.randomBytes !== 'function') - throw new Error('Not supported'); - - Rand.prototype._rand = function _rand(n) { - return crypto.randomBytes(n); - }; - } catch (e) { - } -} - - -/***/ }), - -/***/ 35630: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -var util = __nccwpck_require__(39023); -var Stream = (__nccwpck_require__(2203).Stream); -var DelayedStream = __nccwpck_require__(72710); - -module.exports = CombinedStream; -function CombinedStream() { - this.writable = false; - this.readable = true; - this.dataSize = 0; - this.maxDataSize = 2 * 1024 * 1024; - this.pauseStreams = true; - - this._released = false; - this._streams = []; - this._currentStream = null; - this._insideLoop = false; - this._pendingNext = false; -} -util.inherits(CombinedStream, Stream); - -CombinedStream.create = function(options) { - var combinedStream = new this(); - - options = options || {}; - for (var option in options) { - combinedStream[option] = options[option]; - } - - return combinedStream; -}; - -CombinedStream.isStreamLike = function(stream) { - return (typeof stream !== 'function') - && (typeof stream !== 'string') - && (typeof stream !== 'boolean') - && (typeof stream !== 'number') - && (!Buffer.isBuffer(stream)); -}; - -CombinedStream.prototype.append = function(stream) { - var isStreamLike = CombinedStream.isStreamLike(stream); - - if (isStreamLike) { - if (!(stream instanceof DelayedStream)) { - var newStream = DelayedStream.create(stream, { - maxDataSize: Infinity, - pauseStream: this.pauseStreams, - }); - stream.on('data', this._checkDataSize.bind(this)); - stream = newStream; - } - - this._handleErrors(stream); - - if (this.pauseStreams) { - stream.pause(); - } - } - - this._streams.push(stream); - return this; -}; - -CombinedStream.prototype.pipe = function(dest, options) { - Stream.prototype.pipe.call(this, dest, options); - this.resume(); - return dest; -}; - -CombinedStream.prototype._getNext = function() { - this._currentStream = null; - - if (this._insideLoop) { - this._pendingNext = true; - return; // defer call - } - - this._insideLoop = true; - try { - do { - this._pendingNext = false; - this._realGetNext(); - } while (this._pendingNext); - } finally { - this._insideLoop = false; - } -}; - -CombinedStream.prototype._realGetNext = function() { - var stream = this._streams.shift(); - - - if (typeof stream == 'undefined') { - this.end(); - return; - } - - if (typeof stream !== 'function') { - this._pipeNext(stream); - return; - } - - var getStream = stream; - getStream(function(stream) { - var isStreamLike = CombinedStream.isStreamLike(stream); - if (isStreamLike) { - stream.on('data', this._checkDataSize.bind(this)); - this._handleErrors(stream); - } - - this._pipeNext(stream); - }.bind(this)); -}; - -CombinedStream.prototype._pipeNext = function(stream) { - this._currentStream = stream; - - var isStreamLike = CombinedStream.isStreamLike(stream); - if (isStreamLike) { - stream.on('end', this._getNext.bind(this)); - stream.pipe(this, {end: false}); - return; - } - - var value = stream; - this.write(value); - this._getNext(); -}; - -CombinedStream.prototype._handleErrors = function(stream) { - var self = this; - stream.on('error', function(err) { - self._emitError(err); - }); -}; - -CombinedStream.prototype.write = function(data) { - this.emit('data', data); -}; - -CombinedStream.prototype.pause = function() { - if (!this.pauseStreams) { - return; - } - - if(this.pauseStreams && this._currentStream && typeof(this._currentStream.pause) == 'function') this._currentStream.pause(); - this.emit('pause'); -}; - -CombinedStream.prototype.resume = function() { - if (!this._released) { - this._released = true; - this.writable = true; - this._getNext(); - } - - if(this.pauseStreams && this._currentStream && typeof(this._currentStream.resume) == 'function') this._currentStream.resume(); - this.emit('resume'); -}; - -CombinedStream.prototype.end = function() { - this._reset(); - this.emit('end'); -}; - -CombinedStream.prototype.destroy = function() { - this._reset(); - this.emit('close'); -}; - -CombinedStream.prototype._reset = function() { - this.writable = false; - this._streams = []; - this._currentStream = null; -}; - -CombinedStream.prototype._checkDataSize = function() { - this._updateDataSize(); - if (this.dataSize <= this.maxDataSize) { - return; - } - - var message = - 'DelayedStream#maxDataSize of ' + this.maxDataSize + ' bytes exceeded.'; - this._emitError(new Error(message)); -}; - -CombinedStream.prototype._updateDataSize = function() { - this.dataSize = 0; - - var self = this; - this._streams.forEach(function(stream) { - if (!stream.dataSize) { - return; - } - - self.dataSize += stream.dataSize; - }); - - if (this._currentStream && this._currentStream.dataSize) { - this.dataSize += this._currentStream.dataSize; - } -}; - -CombinedStream.prototype._emitError = function(err) { - this._reset(); - this.emit('error', err); -}; - - -/***/ }), - -/***/ 99712: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; -/********************************************************************* - * This is a fork from the CSS Style Declaration part of - * https://github.com/NV/CSSOM - ********************************************************************/ - -var CSSOM = __nccwpck_require__(97900); -var allProperties = __nccwpck_require__(65170); -var allExtraProperties = __nccwpck_require__(28660); -var implementedProperties = __nccwpck_require__(25985); -var { dashedToCamelCase } = __nccwpck_require__(87800); -var getBasicPropertyDescriptor = __nccwpck_require__(93322); - -/** - * @constructor - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleDeclaration - */ -var CSSStyleDeclaration = function CSSStyleDeclaration(onChangeCallback) { - this._values = {}; - this._importants = {}; - this._length = 0; - this._onChange = onChangeCallback; - this._setInProgress = false; -}; -CSSStyleDeclaration.prototype = { - constructor: CSSStyleDeclaration, - - /** - * - * @param {string} name - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleDeclaration-getPropertyValue - * @return {string} the value of the property if it has been explicitly set for this declaration block. - * Returns the empty string if the property has not been set. - */ - getPropertyValue: function (name) { - if (!this._values.hasOwnProperty(name)) { - return ''; - } - return this._values[name].toString(); - }, - - /** - * - * @param {string} name - * @param {string} value - * @param {string} [priority=null] "important" or null - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleDeclaration-setProperty - */ - setProperty: function (name, value, priority) { - if (value === undefined) { - return; - } - if (value === null || value === '') { - this.removeProperty(name); - return; - } - var isCustomProperty = name.indexOf('--') === 0; - if (isCustomProperty) { - this._setProperty(name, value, priority); - return; - } - var lowercaseName = name.toLowerCase(); - if (!allProperties.has(lowercaseName) && !allExtraProperties.has(lowercaseName)) { - return; - } - - this[lowercaseName] = value; - this._importants[lowercaseName] = priority; - }, - _setProperty: function (name, value, priority) { - if (value === undefined) { - return; - } - if (value === null || value === '') { - this.removeProperty(name); - return; - } - - var originalText; - if (this._onChange) { - originalText = this.cssText; - } - - if (this._values[name]) { - // Property already exist. Overwrite it. - var index = Array.prototype.indexOf.call(this, name); - if (index < 0) { - this[this._length] = name; - this._length++; - } - } else { - // New property. - this[this._length] = name; - this._length++; - } - this._values[name] = value; - this._importants[name] = priority; - if (this._onChange && this.cssText !== originalText && !this._setInProgress) { - this._onChange(this.cssText); - } - }, - - /** - * - * @param {string} name - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleDeclaration-removeProperty - * @return {string} the value of the property if it has been explicitly set for this declaration block. - * Returns the empty string if the property has not been set or the property name does not correspond to a known CSS property. - */ - removeProperty: function (name) { - if (!this._values.hasOwnProperty(name)) { - return ''; - } - - var prevValue = this._values[name]; - delete this._values[name]; - delete this._importants[name]; - - var index = Array.prototype.indexOf.call(this, name); - if (index < 0) { - return prevValue; - } - - // That's what WebKit and Opera do - Array.prototype.splice.call(this, index, 1); - - // That's what Firefox does - //this[index] = "" - - if (this._onChange) { - this._onChange(this.cssText); - } - return prevValue; - }, - - /** - * - * @param {String} name - */ - getPropertyPriority: function (name) { - return this._importants[name] || ''; - }, - - getPropertyCSSValue: function () { - //FIXME - return; - }, - - /** - * element.style.overflow = "auto" - * element.style.getPropertyShorthand("overflow-x") - * -> "overflow" - */ - getPropertyShorthand: function () { - //FIXME - return; - }, - - isPropertyImplicit: function () { - //FIXME - return; - }, - - /** - * http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleDeclaration-item - */ - item: function (index) { - index = parseInt(index, 10); - if (index < 0 || index >= this._length) { - return ''; - } - return this[index]; - }, -}; - -Object.defineProperties(CSSStyleDeclaration.prototype, { - cssText: { - get: function () { - var properties = []; - var i; - var name; - var value; - var priority; - for (i = 0; i < this._length; i++) { - name = this[i]; - value = this.getPropertyValue(name); - priority = this.getPropertyPriority(name); - if (priority !== '') { - priority = ' !' + priority; - } - properties.push([name, ': ', value, priority, ';'].join('')); - } - return properties.join(' '); - }, - set: function (value) { - var i; - this._values = {}; - Array.prototype.splice.call(this, 0, this._length); - this._importants = {}; - var dummyRule; - try { - dummyRule = CSSOM.parse('#bogus{' + value + '}').cssRules[0].style; - } catch (err) { - // malformed css, just return - return; - } - this._setInProgress = true; - var rule_length = dummyRule.length; - var name; - for (i = 0; i < rule_length; ++i) { - name = dummyRule[i]; - this.setProperty( - dummyRule[i], - dummyRule.getPropertyValue(name), - dummyRule.getPropertyPriority(name) - ); - } - this._setInProgress = false; - if (this._onChange) { - this._onChange(this.cssText); - } - }, - enumerable: true, - configurable: true, - }, - parentRule: { - get: function () { - return null; - }, - enumerable: true, - configurable: true, - }, - length: { - get: function () { - return this._length; - }, - /** - * This deletes indices if the new length is less then the current - * length. If the new length is more, it does nothing, the new indices - * will be undefined until set. - **/ - set: function (value) { - var i; - for (i = value; i < this._length; i++) { - delete this[i]; - } - this._length = value; - }, - enumerable: true, - configurable: true, - }, -}); - -__nccwpck_require__(48763)(CSSStyleDeclaration.prototype); - -allProperties.forEach(function (property) { - if (!implementedProperties.has(property)) { - var declaration = getBasicPropertyDescriptor(property); - Object.defineProperty(CSSStyleDeclaration.prototype, property, declaration); - Object.defineProperty(CSSStyleDeclaration.prototype, dashedToCamelCase(property), declaration); - } -}); - -allExtraProperties.forEach(function (property) { - if (!implementedProperties.has(property)) { - var declaration = getBasicPropertyDescriptor(property); - Object.defineProperty(CSSStyleDeclaration.prototype, property, declaration); - Object.defineProperty(CSSStyleDeclaration.prototype, dashedToCamelCase(property), declaration); - } -}); - -exports.CSSStyleDeclaration = CSSStyleDeclaration; - - -/***/ }), - -/***/ 28660: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -/** - * This file contains all implemented properties that are not a part of any - * current specifications or drafts, but are handled by browsers nevertheless. - */ - -var allWebkitProperties = __nccwpck_require__(73040); - -module.exports = new Set( - [ - 'background-position-x', - 'background-position-y', - 'background-repeat-x', - 'background-repeat-y', - 'color-interpolation', - 'color-profile', - 'color-rendering', - 'css-float', - 'enable-background', - 'fill', - 'fill-opacity', - 'fill-rule', - 'glyph-orientation-horizontal', - 'image-rendering', - 'kerning', - 'marker', - 'marker-end', - 'marker-mid', - 'marker-offset', - 'marker-start', - 'marks', - 'pointer-events', - 'shape-rendering', - 'size', - 'src', - 'stop-color', - 'stop-opacity', - 'stroke', - 'stroke-dasharray', - 'stroke-dashoffset', - 'stroke-linecap', - 'stroke-linejoin', - 'stroke-miterlimit', - 'stroke-opacity', - 'stroke-width', - 'text-anchor', - 'text-line-through', - 'text-line-through-color', - 'text-line-through-mode', - 'text-line-through-style', - 'text-line-through-width', - 'text-overline', - 'text-overline-color', - 'text-overline-mode', - 'text-overline-style', - 'text-overline-width', - 'text-rendering', - 'text-underline', - 'text-underline-color', - 'text-underline-mode', - 'text-underline-style', - 'text-underline-width', - 'unicode-range', - 'vector-effect', - ].concat(allWebkitProperties) -); - - -/***/ }), - -/***/ 65170: -/***/ ((module) => { - -"use strict"; - -// autogenerated - 2024-09-07 -// https://www.w3.org/Style/CSS/all-properties.en.html - -module.exports = new Set([ - '-webkit-line-clamp', - 'accent-color', - 'align-content', - 'align-items', - 'align-self', - 'alignment-baseline', - 'all', - 'anchor-name', - 'anchor-scope', - 'animation', - 'animation-composition', - 'animation-delay', - 'animation-direction', - 'animation-duration', - 'animation-fill-mode', - 'animation-iteration-count', - 'animation-name', - 'animation-play-state', - 'animation-range', - 'animation-range-end', - 'animation-range-start', - 'animation-timeline', - 'animation-timing-function', - 'appearance', - 'aspect-ratio', - 'azimuth', - 'backface-visibility', - 'background', - 'background-attachment', - 'background-blend-mode', - 'background-clip', - 'background-color', - 'background-image', - 'background-origin', - 'background-position', - 'background-repeat', - 'background-size', - 'baseline-shift', - 'baseline-source', - 'block-ellipsis', - 'block-size', - 'bookmark-label', - 'bookmark-level', - 'bookmark-state', - 'border', - 'border-block', - 'border-block-color', - 'border-block-end', - 'border-block-end-color', - 'border-block-end-style', - 'border-block-end-width', - 'border-block-start', - 'border-block-start-color', - 'border-block-start-style', - 'border-block-start-width', - 'border-block-style', - 'border-block-width', - 'border-bottom', - 'border-bottom-color', - 'border-bottom-left-radius', - 'border-bottom-right-radius', - 'border-bottom-style', - 'border-bottom-width', - 'border-boundary', - 'border-collapse', - 'border-color', - 'border-end-end-radius', - 'border-end-start-radius', - 'border-image', - 'border-image-outset', - 'border-image-repeat', - 'border-image-slice', - 'border-image-source', - 'border-image-width', - 'border-inline', - 'border-inline-color', - 'border-inline-end', - 'border-inline-end-color', - 'border-inline-end-style', - 'border-inline-end-width', - 'border-inline-start', - 'border-inline-start-color', - 'border-inline-start-style', - 'border-inline-start-width', - 'border-inline-style', - 'border-inline-width', - 'border-left', - 'border-left-color', - 'border-left-style', - 'border-left-width', - 'border-radius', - 'border-right', - 'border-right-color', - 'border-right-style', - 'border-right-width', - 'border-spacing', - 'border-start-end-radius', - 'border-start-start-radius', - 'border-style', - 'border-top', - 'border-top-color', - 'border-top-left-radius', - 'border-top-right-radius', - 'border-top-style', - 'border-top-width', - 'border-width', - 'bottom', - 'box-decoration-break', - 'box-shadow', - 'box-sizing', - 'box-snap', - 'break-after', - 'break-before', - 'break-inside', - 'caption-side', - 'caret', - 'caret-color', - 'caret-shape', - 'clear', - 'clip', - 'clip-path', - 'clip-rule', - 'color', - 'color-adjust', - 'color-interpolation-filters', - 'color-scheme', - 'column-count', - 'column-fill', - 'column-gap', - 'column-rule', - 'column-rule-color', - 'column-rule-style', - 'column-rule-width', - 'column-span', - 'column-width', - 'columns', - 'contain', - 'contain-intrinsic-block-size', - 'contain-intrinsic-height', - 'contain-intrinsic-inline-size', - 'contain-intrinsic-size', - 'contain-intrinsic-width', - 'container', - 'container-name', - 'container-type', - 'content', - 'content-visibility', - 'continue', - 'counter-increment', - 'counter-reset', - 'counter-set', - 'cue', - 'cue-after', - 'cue-before', - 'cursor', - 'direction', - 'display', - 'dominant-baseline', - 'elevation', - 'empty-cells', - 'filter', - 'flex', - 'flex-basis', - 'flex-direction', - 'flex-flow', - 'flex-grow', - 'flex-shrink', - 'flex-wrap', - 'float', - 'flood-color', - 'flood-opacity', - 'flow-from', - 'flow-into', - 'font', - 'font-family', - 'font-feature-settings', - 'font-kerning', - 'font-language-override', - 'font-optical-sizing', - 'font-palette', - 'font-size', - 'font-size-adjust', - 'font-stretch', - 'font-style', - 'font-synthesis', - 'font-synthesis-position', - 'font-synthesis-small-caps', - 'font-synthesis-style', - 'font-synthesis-weight', - 'font-variant', - 'font-variant-alternates', - 'font-variant-caps', - 'font-variant-east-asian', - 'font-variant-emoji', - 'font-variant-ligatures', - 'font-variant-numeric', - 'font-variant-position', - 'font-variation-settings', - 'font-weight', - 'font-width', - 'footnote-display', - 'footnote-policy', - 'forced-color-adjust', - 'gap', - 'glyph-orientation-vertical', - 'grid', - 'grid-area', - 'grid-auto-columns', - 'grid-auto-flow', - 'grid-auto-rows', - 'grid-column', - 'grid-column-end', - 'grid-column-start', - 'grid-row', - 'grid-row-end', - 'grid-row-start', - 'grid-template', - 'grid-template-areas', - 'grid-template-columns', - 'grid-template-rows', - 'hanging-punctuation', - 'height', - 'hyphenate-character', - 'hyphenate-limit-chars', - 'hyphenate-limit-last', - 'hyphenate-limit-lines', - 'hyphenate-limit-zone', - 'hyphens', - 'image-orientation', - 'image-rendering', - 'image-resolution', - 'initial-letter', - 'initial-letter-align', - 'initial-letter-wrap', - 'inline-size', - 'inline-sizing', - 'inset', - 'inset-area', - 'inset-block', - 'inset-block-end', - 'inset-block-start', - 'inset-inline', - 'inset-inline-end', - 'inset-inline-start', - 'isolation', - 'justify-content', - 'justify-items', - 'justify-self', - 'left', - 'letter-spacing', - 'lighting-color', - 'line-break', - 'line-clamp', - 'line-fit-edge', - 'line-grid', - 'line-height', - 'line-padding', - 'line-snap', - 'list-style', - 'list-style-image', - 'list-style-position', - 'list-style-type', - 'margin', - 'margin-block', - 'margin-block-end', - 'margin-block-start', - 'margin-bottom', - 'margin-inline', - 'margin-inline-end', - 'margin-inline-start', - 'margin-left', - 'margin-right', - 'margin-top', - 'margin-trim', - 'marker-side', - 'mask', - 'mask-border', - 'mask-border-mode', - 'mask-border-outset', - 'mask-border-repeat', - 'mask-border-slice', - 'mask-border-source', - 'mask-border-width', - 'mask-clip', - 'mask-composite', - 'mask-image', - 'mask-mode', - 'mask-origin', - 'mask-position', - 'mask-repeat', - 'mask-size', - 'mask-type', - 'max-block-size', - 'max-height', - 'max-inline-size', - 'max-lines', - 'max-width', - 'min-block-size', - 'min-height', - 'min-inline-size', - 'min-intrinsic-sizing', - 'min-width', - 'mix-blend-mode', - 'nav-down', - 'nav-left', - 'nav-right', - 'nav-up', - 'object-fit', - 'object-position', - 'offset', - 'offset-anchor', - 'offset-distance', - 'offset-path', - 'offset-position', - 'offset-rotate', - 'opacity', - 'order', - 'orphans', - 'outline', - 'outline-color', - 'outline-offset', - 'outline-style', - 'outline-width', - 'overflow', - 'overflow-anchor', - 'overflow-block', - 'overflow-clip-margin', - 'overflow-clip-margin-block', - 'overflow-clip-margin-block-end', - 'overflow-clip-margin-block-start', - 'overflow-clip-margin-bottom', - 'overflow-clip-margin-inline', - 'overflow-clip-margin-inline-end', - 'overflow-clip-margin-inline-start', - 'overflow-clip-margin-left', - 'overflow-clip-margin-right', - 'overflow-clip-margin-top', - 'overflow-inline', - 'overflow-wrap', - 'overflow-x', - 'overflow-y', - 'padding', - 'padding-block', - 'padding-block-end', - 'padding-block-start', - 'padding-bottom', - 'padding-inline', - 'padding-inline-end', - 'padding-inline-start', - 'padding-left', - 'padding-right', - 'padding-top', - 'page', - 'page-break-after', - 'page-break-before', - 'page-break-inside', - 'pause', - 'pause-after', - 'pause-before', - 'perspective', - 'perspective-origin', - 'pitch', - 'pitch-range', - 'place-content', - 'place-items', - 'place-self', - 'play-during', - 'position', - 'position-anchor', - 'position-try', - 'position-try-options', - 'position-try-order', - 'print-color-adjust', - 'quotes', - 'region-fragment', - 'resize', - 'rest', - 'rest-after', - 'rest-before', - 'richness', - 'right', - 'rotate', - 'row-gap', - 'ruby-align', - 'ruby-merge', - 'ruby-overhang', - 'ruby-position', - 'running', - 'scale', - 'scroll-behavior', - 'scroll-margin', - 'scroll-margin-block', - 'scroll-margin-block-end', - 'scroll-margin-block-start', - 'scroll-margin-bottom', - 'scroll-margin-inline', - 'scroll-margin-inline-end', - 'scroll-margin-inline-start', - 'scroll-margin-left', - 'scroll-margin-right', - 'scroll-margin-top', - 'scroll-padding', - 'scroll-padding-block', - 'scroll-padding-block-end', - 'scroll-padding-block-start', - 'scroll-padding-bottom', - 'scroll-padding-inline', - 'scroll-padding-inline-end', - 'scroll-padding-inline-start', - 'scroll-padding-left', - 'scroll-padding-right', - 'scroll-padding-top', - 'scroll-snap-align', - 'scroll-snap-stop', - 'scroll-snap-type', - 'scroll-timeline', - 'scroll-timeline-axis', - 'scroll-timeline-name', - 'scrollbar-color', - 'scrollbar-gutter', - 'scrollbar-width', - 'shape-image-threshold', - 'shape-inside', - 'shape-margin', - 'shape-outside', - 'spatial-navigation-action', - 'spatial-navigation-contain', - 'spatial-navigation-function', - 'speak', - 'speak-as', - 'speak-header', - 'speak-numeral', - 'speak-punctuation', - 'speech-rate', - 'stress', - 'string-set', - 'tab-size', - 'table-layout', - 'text-align', - 'text-align-all', - 'text-align-last', - 'text-autospace', - 'text-box', - 'text-box-edge', - 'text-box-trim', - 'text-combine-upright', - 'text-decoration', - 'text-decoration-color', - 'text-decoration-line', - 'text-decoration-skip', - 'text-decoration-skip-box', - 'text-decoration-skip-ink', - 'text-decoration-skip-inset', - 'text-decoration-skip-self', - 'text-decoration-skip-spaces', - 'text-decoration-style', - 'text-decoration-thickness', - 'text-emphasis', - 'text-emphasis-color', - 'text-emphasis-position', - 'text-emphasis-skip', - 'text-emphasis-style', - 'text-group-align', - 'text-indent', - 'text-justify', - 'text-orientation', - 'text-overflow', - 'text-shadow', - 'text-spacing', - 'text-spacing-trim', - 'text-transform', - 'text-underline-offset', - 'text-underline-position', - 'text-wrap', - 'text-wrap-mode', - 'text-wrap-style', - 'timeline-scope', - 'top', - 'transform', - 'transform-box', - 'transform-origin', - 'transform-style', - 'transition', - 'transition-delay', - 'transition-duration', - 'transition-property', - 'transition-timing-function', - 'translate', - 'unicode-bidi', - 'user-select', - 'vertical-align', - 'view-timeline', - 'view-timeline-axis', - 'view-timeline-inset', - 'view-timeline-name', - 'view-transition-name', - 'visibility', - 'voice-balance', - 'voice-duration', - 'voice-family', - 'voice-pitch', - 'voice-range', - 'voice-rate', - 'voice-stress', - 'voice-volume', - 'volume', - 'white-space', - 'white-space-collapse', - 'white-space-trim', - 'widows', - 'width', - 'will-change', - 'word-break', - 'word-space-transform', - 'word-spacing', - 'word-wrap', - 'wrap-after', - 'wrap-before', - 'wrap-flow', - 'wrap-inside', - 'wrap-through', - 'writing-mode', - 'z-index', -]); - - -/***/ }), - -/***/ 73040: -/***/ ((module) => { - -"use strict"; - - -/** - * This file contains all implemented properties that are not a part of any - * current specifications or drafts, but are handled by browsers nevertheless. - */ - -module.exports = [ - 'animation', - 'animation-delay', - 'animation-direction', - 'animation-duration', - 'animation-fill-mode', - 'animation-iteration-count', - 'animation-name', - 'animation-play-state', - 'animation-timing-function', - 'appearance', - 'aspect-ratio', - 'backface-visibility', - 'background-clip', - 'background-composite', - 'background-origin', - 'background-size', - 'border-after', - 'border-after-color', - 'border-after-style', - 'border-after-width', - 'border-before', - 'border-before-color', - 'border-before-style', - 'border-before-width', - 'border-end', - 'border-end-color', - 'border-end-style', - 'border-end-width', - 'border-fit', - 'border-horizontal-spacing', - 'border-image', - 'border-radius', - 'border-start', - 'border-start-color', - 'border-start-style', - 'border-start-width', - 'border-vertical-spacing', - 'box-align', - 'box-direction', - 'box-flex', - 'box-flex-group', - 'box-lines', - 'box-ordinal-group', - 'box-orient', - 'box-pack', - 'box-reflect', - 'box-shadow', - 'color-correction', - 'column-axis', - 'column-break-after', - 'column-break-before', - 'column-break-inside', - 'column-count', - 'column-gap', - 'column-rule', - 'column-rule-color', - 'column-rule-style', - 'column-rule-width', - 'columns', - 'column-span', - 'column-width', - 'filter', - 'flex-align', - 'flex-direction', - 'flex-flow', - 'flex-item-align', - 'flex-line-pack', - 'flex-order', - 'flex-pack', - 'flex-wrap', - 'flow-from', - 'flow-into', - 'font-feature-settings', - 'font-kerning', - 'font-size-delta', - 'font-smoothing', - 'font-variant-ligatures', - 'highlight', - 'hyphenate-character', - 'hyphenate-limit-after', - 'hyphenate-limit-before', - 'hyphenate-limit-lines', - 'hyphens', - 'line-align', - 'line-box-contain', - 'line-break', - 'line-clamp', - 'line-grid', - 'line-snap', - 'locale', - 'logical-height', - 'logical-width', - 'margin-after', - 'margin-after-collapse', - 'margin-before', - 'margin-before-collapse', - 'margin-bottom-collapse', - 'margin-collapse', - 'margin-end', - 'margin-start', - 'margin-top-collapse', - 'marquee', - 'marquee-direction', - 'marquee-increment', - 'marquee-repetition', - 'marquee-speed', - 'marquee-style', - 'mask', - 'mask-attachment', - 'mask-box-image', - 'mask-box-image-outset', - 'mask-box-image-repeat', - 'mask-box-image-slice', - 'mask-box-image-source', - 'mask-box-image-width', - 'mask-clip', - 'mask-composite', - 'mask-image', - 'mask-origin', - 'mask-position', - 'mask-position-x', - 'mask-position-y', - 'mask-repeat', - 'mask-repeat-x', - 'mask-repeat-y', - 'mask-size', - 'match-nearest-mail-blockquote-color', - 'max-logical-height', - 'max-logical-width', - 'min-logical-height', - 'min-logical-width', - 'nbsp-mode', - 'overflow-scrolling', - 'padding-after', - 'padding-before', - 'padding-end', - 'padding-start', - 'perspective', - 'perspective-origin', - 'perspective-origin-x', - 'perspective-origin-y', - 'print-color-adjust', - 'region-break-after', - 'region-break-before', - 'region-break-inside', - 'region-overflow', - 'rtl-ordering', - 'svg-shadow', - 'tap-highlight-color', - 'text-combine', - 'text-decorations-in-effect', - 'text-emphasis', - 'text-emphasis-color', - 'text-emphasis-position', - 'text-emphasis-style', - 'text-fill-color', - 'text-orientation', - 'text-security', - 'text-size-adjust', - 'text-stroke', - 'text-stroke-color', - 'text-stroke-width', - 'transform', - 'transform-origin', - 'transform-origin-x', - 'transform-origin-y', - 'transform-origin-z', - 'transform-style', - 'transition', - 'transition-delay', - 'transition-duration', - 'transition-property', - 'transition-timing-function', - 'user-drag', - 'user-modify', - 'user-select', - 'wrap', - 'wrap-flow', - 'wrap-margin', - 'wrap-padding', - 'wrap-shape-inside', - 'wrap-shape-outside', - 'wrap-through', - 'writing-mode', - 'zoom', -].map((prop) => 'webkit-' + prop); - - -/***/ }), - -/***/ 4525: -/***/ ((module) => { - -"use strict"; - - -module.exports.POSITION_AT_SHORTHAND = { - first: 0, - second: 1, -}; - - -/***/ }), - -/***/ 25985: -/***/ ((module) => { - -"use strict"; - - -// autogenerated - 2024-09-07 -// https://www.w3.org/Style/CSS/all-properties.en.html - -module.exports = new Set([ - "azimuth", - "background", - "background-attachment", - "background-color", - "background-image", - "background-position", - "background-repeat", - "border", - "border-bottom", - "border-bottom-color", - "border-bottom-style", - "border-bottom-width", - "border-collapse", - "border-color", - "border-left", - "border-left-color", - "border-left-style", - "border-left-width", - "border-right", - "border-right-color", - "border-right-style", - "border-right-width", - "border-spacing", - "border-style", - "border-top", - "border-top-color", - "border-top-style", - "border-top-width", - "border-width", - "bottom", - "clear", - "clip", - "color", - "css-float", - "flex", - "flex-basis", - "flex-grow", - "flex-shrink", - "float", - "flood-color", - "font", - "font-family", - "font-size", - "font-style", - "font-variant", - "font-weight", - "height", - "left", - "lighting-color", - "line-height", - "margin", - "margin-bottom", - "margin-left", - "margin-right", - "margin-top", - "opacity", - "outline-color", - "padding", - "padding-bottom", - "padding-left", - "padding-right", - "padding-top", - "right", - "stop-color", - "text-line-through-color", - "text-overline-color", - "text-underline-color", - "top", - "webkit-border-after-color", - "webkit-border-before-color", - "webkit-border-end-color", - "webkit-border-start-color", - "webkit-column-rule-color", - "webkit-match-nearest-mail-blockquote-color", - "webkit-tap-highlight-color", - "webkit-text-emphasis-color", - "webkit-text-fill-color", - "webkit-text-stroke-color", - "width" -]); - - -/***/ }), - -/***/ 87800: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; -/********************************************************************* - * These are commonly used parsers for CSS Values they take a string * - * to parse and return a string after it's been converted, if needed * - ********************************************************************/ - - -const namedColors = __nccwpck_require__(13680); -const { hslToRgb } = __nccwpck_require__(84907); - -exports.TYPES = { - INTEGER: 1, - NUMBER: 2, - LENGTH: 3, - PERCENT: 4, - URL: 5, - COLOR: 6, - STRING: 7, - ANGLE: 8, - KEYWORD: 9, - NULL_OR_EMPTY_STR: 10, - CALC: 11, -}; - -// rough regular expressions -var integerRegEx = /^[-+]?[0-9]+$/; -var numberRegEx = /^[-+]?[0-9]*\.?[0-9]+$/; -var lengthRegEx = /^(0|[-+]?[0-9]*\.?[0-9]+(in|cm|em|mm|pt|pc|px|ex|rem|vh|vw|ch))$/; -var percentRegEx = /^[-+]?[0-9]*\.?[0-9]+%$/; -var urlRegEx = /^url\(\s*([^)]*)\s*\)$/; -var stringRegEx = /^("[^"]*"|'[^']*')$/; -var colorRegEx1 = /^#([0-9a-fA-F]{3,4}){1,2}$/; -var colorRegEx2 = /^rgb\(([^)]*)\)$/; -var colorRegEx3 = /^rgba\(([^)]*)\)$/; -var calcRegEx = /^calc\(([^)]*)\)$/; -var colorRegEx4 = - /^hsla?\(\s*(-?\d+|-?\d*.\d+)\s*,\s*(-?\d+|-?\d*.\d+)%\s*,\s*(-?\d+|-?\d*.\d+)%\s*(,\s*(-?\d+|-?\d*.\d+)\s*)?\)/; -var angleRegEx = /^([-+]?[0-9]*\.?[0-9]+)(deg|grad|rad)$/; - -// This will return one of the above types based on the passed in string -exports.valueType = function valueType(val) { - if (val === '' || val === null) { - return exports.TYPES.NULL_OR_EMPTY_STR; - } - if (typeof val === 'number') { - val = val.toString(); - } - - if (typeof val !== 'string') { - return undefined; - } - - if (integerRegEx.test(val)) { - return exports.TYPES.INTEGER; - } - if (numberRegEx.test(val)) { - return exports.TYPES.NUMBER; - } - if (lengthRegEx.test(val)) { - return exports.TYPES.LENGTH; - } - if (percentRegEx.test(val)) { - return exports.TYPES.PERCENT; - } - if (urlRegEx.test(val)) { - return exports.TYPES.URL; - } - if (calcRegEx.test(val)) { - return exports.TYPES.CALC; - } - if (stringRegEx.test(val)) { - return exports.TYPES.STRING; - } - if (angleRegEx.test(val)) { - return exports.TYPES.ANGLE; - } - if (colorRegEx1.test(val)) { - return exports.TYPES.COLOR; - } - - var res = colorRegEx2.exec(val); - var parts; - if (res !== null) { - parts = res[1].split(/\s*,\s*/); - if (parts.length !== 3) { - return undefined; - } - if ( - parts.every(percentRegEx.test.bind(percentRegEx)) || - parts.every(integerRegEx.test.bind(integerRegEx)) - ) { - return exports.TYPES.COLOR; - } - return undefined; - } - res = colorRegEx3.exec(val); - if (res !== null) { - parts = res[1].split(/\s*,\s*/); - if (parts.length !== 4) { - return undefined; - } - if ( - parts.slice(0, 3).every(percentRegEx.test.bind(percentRegEx)) || - parts.slice(0, 3).every(integerRegEx.test.bind(integerRegEx)) - ) { - if (numberRegEx.test(parts[3])) { - return exports.TYPES.COLOR; - } - } - return undefined; - } - - if (colorRegEx4.test(val)) { - return exports.TYPES.COLOR; - } - - // could still be a color, one of the standard keyword colors - val = val.toLowerCase(); - - if (namedColors.includes(val)) { - return exports.TYPES.COLOR; - } - - switch (val) { - // the following are deprecated in CSS3 - case 'activeborder': - case 'activecaption': - case 'appworkspace': - case 'background': - case 'buttonface': - case 'buttonhighlight': - case 'buttonshadow': - case 'buttontext': - case 'captiontext': - case 'graytext': - case 'highlight': - case 'highlighttext': - case 'inactiveborder': - case 'inactivecaption': - case 'inactivecaptiontext': - case 'infobackground': - case 'infotext': - case 'menu': - case 'menutext': - case 'scrollbar': - case 'threeddarkshadow': - case 'threedface': - case 'threedhighlight': - case 'threedlightshadow': - case 'threedshadow': - case 'window': - case 'windowframe': - case 'windowtext': - return exports.TYPES.COLOR; - default: - return exports.TYPES.KEYWORD; - } -}; - -exports.parseInteger = function parseInteger(val) { - var type = exports.valueType(val); - if (type === exports.TYPES.NULL_OR_EMPTY_STR) { - return val; - } - if (type !== exports.TYPES.INTEGER) { - return undefined; - } - return String(parseInt(val, 10)); -}; - -exports.parseNumber = function parseNumber(val) { - var type = exports.valueType(val); - if (type === exports.TYPES.NULL_OR_EMPTY_STR) { - return val; - } - if (type !== exports.TYPES.NUMBER && type !== exports.TYPES.INTEGER) { - return undefined; - } - return String(parseFloat(val)); -}; - -exports.parseLength = function parseLength(val) { - if (val === 0 || val === '0') { - return '0px'; - } - var type = exports.valueType(val); - if (type === exports.TYPES.NULL_OR_EMPTY_STR) { - return val; - } - if (type !== exports.TYPES.LENGTH) { - return undefined; - } - return val; -}; - -exports.parsePercent = function parsePercent(val) { - if (val === 0 || val === '0') { - return '0%'; - } - var type = exports.valueType(val); - if (type === exports.TYPES.NULL_OR_EMPTY_STR) { - return val; - } - if (type !== exports.TYPES.PERCENT) { - return undefined; - } - return val; -}; - -// either a length or a percent -exports.parseMeasurement = function parseMeasurement(val) { - var type = exports.valueType(val); - if (type === exports.TYPES.CALC) { - return val; - } - - var length = exports.parseLength(val); - if (length !== undefined) { - return length; - } - return exports.parsePercent(val); -}; - -exports.parseUrl = function parseUrl(val) { - var type = exports.valueType(val); - if (type === exports.TYPES.NULL_OR_EMPTY_STR) { - return val; - } - var res = urlRegEx.exec(val); - // does it match the regex? - if (!res) { - return undefined; - } - var str = res[1]; - // if it starts with single or double quotes, does it end with the same? - if ((str[0] === '"' || str[0] === "'") && str[0] !== str[str.length - 1]) { - return undefined; - } - if (str[0] === '"' || str[0] === "'") { - str = str.substr(1, str.length - 2); - } - - var i; - for (i = 0; i < str.length; i++) { - switch (str[i]) { - case '(': - case ')': - case ' ': - case '\t': - case '\n': - case "'": - case '"': - return undefined; - case '\\': - i++; - break; - } - } - - return 'url(' + str + ')'; -}; - -exports.parseString = function parseString(val) { - var type = exports.valueType(val); - if (type === exports.TYPES.NULL_OR_EMPTY_STR) { - return val; - } - if (type !== exports.TYPES.STRING) { - return undefined; - } - var i; - for (i = 1; i < val.length - 1; i++) { - switch (val[i]) { - case val[0]: - return undefined; - case '\\': - i++; - while (i < val.length - 1 && /[0-9A-Fa-f]/.test(val[i])) { - i++; - } - break; - } - } - if (i >= val.length) { - return undefined; - } - return val; -}; - -exports.parseColor = function parseColor(val) { - var type = exports.valueType(val); - if (type === exports.TYPES.NULL_OR_EMPTY_STR) { - return val; - } - var red, - green, - blue, - hue, - saturation, - lightness, - alpha = 1; - var parts; - var res = colorRegEx1.exec(val); - // is it #aaa, #ababab, #aaaa, #abababaa - if (res) { - var defaultHex = val.substr(1); - var hex = val.substr(1); - if (hex.length === 3 || hex.length === 4) { - hex = hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2]; - - if (defaultHex.length === 4) { - hex = hex + defaultHex[3] + defaultHex[3]; - } - } - red = parseInt(hex.substr(0, 2), 16); - green = parseInt(hex.substr(2, 2), 16); - blue = parseInt(hex.substr(4, 2), 16); - if (hex.length === 8) { - var hexAlpha = hex.substr(6, 2); - var hexAlphaToRgbaAlpha = Number((parseInt(hexAlpha, 16) / 255).toFixed(3)); - - return 'rgba(' + red + ', ' + green + ', ' + blue + ', ' + hexAlphaToRgbaAlpha + ')'; - } - return 'rgb(' + red + ', ' + green + ', ' + blue + ')'; - } - - res = colorRegEx2.exec(val); - if (res) { - parts = res[1].split(/\s*,\s*/); - if (parts.length !== 3) { - return undefined; - } - if (parts.every(percentRegEx.test.bind(percentRegEx))) { - red = Math.floor((parseFloat(parts[0].slice(0, -1)) * 255) / 100); - green = Math.floor((parseFloat(parts[1].slice(0, -1)) * 255) / 100); - blue = Math.floor((parseFloat(parts[2].slice(0, -1)) * 255) / 100); - } else if (parts.every(integerRegEx.test.bind(integerRegEx))) { - red = parseInt(parts[0], 10); - green = parseInt(parts[1], 10); - blue = parseInt(parts[2], 10); - } else { - return undefined; - } - red = Math.min(255, Math.max(0, red)); - green = Math.min(255, Math.max(0, green)); - blue = Math.min(255, Math.max(0, blue)); - return 'rgb(' + red + ', ' + green + ', ' + blue + ')'; - } - - res = colorRegEx3.exec(val); - if (res) { - parts = res[1].split(/\s*,\s*/); - if (parts.length !== 4) { - return undefined; - } - if (parts.slice(0, 3).every(percentRegEx.test.bind(percentRegEx))) { - red = Math.floor((parseFloat(parts[0].slice(0, -1)) * 255) / 100); - green = Math.floor((parseFloat(parts[1].slice(0, -1)) * 255) / 100); - blue = Math.floor((parseFloat(parts[2].slice(0, -1)) * 255) / 100); - alpha = parseFloat(parts[3]); - } else if (parts.slice(0, 3).every(integerRegEx.test.bind(integerRegEx))) { - red = parseInt(parts[0], 10); - green = parseInt(parts[1], 10); - blue = parseInt(parts[2], 10); - alpha = parseFloat(parts[3]); - } else { - return undefined; - } - if (isNaN(alpha)) { - alpha = 1; - } - red = Math.min(255, Math.max(0, red)); - green = Math.min(255, Math.max(0, green)); - blue = Math.min(255, Math.max(0, blue)); - alpha = Math.min(1, Math.max(0, alpha)); - if (alpha === 1) { - return 'rgb(' + red + ', ' + green + ', ' + blue + ')'; - } - return 'rgba(' + red + ', ' + green + ', ' + blue + ', ' + alpha + ')'; - } - - res = colorRegEx4.exec(val); - if (res) { - const [, _hue, _saturation, _lightness, _alphaString = ''] = res; - const _alpha = parseFloat(_alphaString.replace(',', '').trim()); - if (!_hue || !_saturation || !_lightness) { - return undefined; - } - hue = parseFloat(_hue); - saturation = parseInt(_saturation, 10); - lightness = parseInt(_lightness, 10); - if (_alpha && numberRegEx.test(_alpha)) { - alpha = parseFloat(_alpha); - } - - const [r, g, b] = hslToRgb(hue, saturation / 100, lightness / 100); - if (!_alphaString || alpha === 1) { - return 'rgb(' + r + ', ' + g + ', ' + b + ')'; - } - return 'rgba(' + r + ', ' + g + ', ' + b + ', ' + alpha + ')'; - } - - if (type === exports.TYPES.COLOR) { - return val; - } - return undefined; -}; - -exports.parseAngle = function parseAngle(val) { - var type = exports.valueType(val); - if (type === exports.TYPES.NULL_OR_EMPTY_STR) { - return val; - } - if (type !== exports.TYPES.ANGLE) { - return undefined; - } - var res = angleRegEx.exec(val); - var flt = parseFloat(res[1]); - if (res[2] === 'rad') { - flt *= 180 / Math.PI; - } else if (res[2] === 'grad') { - flt *= 360 / 400; - } - - while (flt < 0) { - flt += 360; - } - while (flt > 360) { - flt -= 360; - } - return flt + 'deg'; -}; - -exports.parseKeyword = function parseKeyword(val, valid_keywords) { - var type = exports.valueType(val); - if (type === exports.TYPES.NULL_OR_EMPTY_STR) { - return val; - } - if (type !== exports.TYPES.KEYWORD) { - return undefined; - } - val = val.toString().toLowerCase(); - var i; - for (i = 0; i < valid_keywords.length; i++) { - if (valid_keywords[i].toLowerCase() === val) { - return valid_keywords[i]; - } - } - return undefined; -}; - -// utility to translate from border-width to borderWidth -var dashedToCamelCase = function (dashed) { - var i; - var camel = ''; - var nextCap = false; - for (i = 0; i < dashed.length; i++) { - if (dashed[i] !== '-') { - camel += nextCap ? dashed[i].toUpperCase() : dashed[i]; - nextCap = false; - } else { - nextCap = true; - } - } - return camel; -}; -exports.dashedToCamelCase = dashedToCamelCase; - -var is_space = /\s/; -var opening_deliminators = ['"', "'", '(']; -var closing_deliminators = ['"', "'", ')']; -// this splits on whitespace, but keeps quoted and parened parts together -var getParts = function (str) { - var deliminator_stack = []; - var length = str.length; - var i; - var parts = []; - var current_part = ''; - var opening_index; - var closing_index; - for (i = 0; i < length; i++) { - opening_index = opening_deliminators.indexOf(str[i]); - closing_index = closing_deliminators.indexOf(str[i]); - if (is_space.test(str[i])) { - if (deliminator_stack.length === 0) { - if (current_part !== '') { - parts.push(current_part); - } - current_part = ''; - } else { - current_part += str[i]; - } - } else { - if (str[i] === '\\') { - i++; - current_part += str[i]; - } else { - current_part += str[i]; - if ( - closing_index !== -1 && - closing_index === deliminator_stack[deliminator_stack.length - 1] - ) { - deliminator_stack.pop(); - } else if (opening_index !== -1) { - deliminator_stack.push(opening_index); - } - } - } - } - if (current_part !== '') { - parts.push(current_part); - } - return parts; -}; - -/* - * this either returns undefined meaning that it isn't valid - * or returns an object where the keys are dashed short - * hand properties and the values are the values to set - * on them - */ -exports.shorthandParser = function parse(v, shorthand_for) { - var obj = {}; - var type = exports.valueType(v); - if (type === exports.TYPES.NULL_OR_EMPTY_STR) { - Object.keys(shorthand_for).forEach(function (property) { - obj[property] = ''; - }); - return obj; - } - - if (typeof v === 'number') { - v = v.toString(); - } - - if (typeof v !== 'string') { - return undefined; - } - - if (v.toLowerCase() === 'inherit') { - return {}; - } - var parts = getParts(v); - var valid = true; - parts.forEach(function (part, i) { - var part_valid = false; - Object.keys(shorthand_for).forEach(function (property) { - if (shorthand_for[property].isValid(part, i)) { - part_valid = true; - obj[property] = part; - } - }); - valid = valid && part_valid; - }); - if (!valid) { - return undefined; - } - return obj; -}; - -exports.shorthandSetter = function (property, shorthand_for) { - return function (v) { - var obj = exports.shorthandParser(v, shorthand_for); - if (obj === undefined) { - return; - } - //console.log('shorthandSetter for:', property, 'obj:', obj); - Object.keys(obj).forEach(function (subprop) { - // in case subprop is an implicit property, this will clear - // *its* subpropertiesX - var camel = dashedToCamelCase(subprop); - this[camel] = obj[subprop]; - // in case it gets translated into something else (0 -> 0px) - obj[subprop] = this[camel]; - this.removeProperty(subprop); - // don't add in empty properties - if (obj[subprop] !== '') { - this._values[subprop] = obj[subprop]; - } - }, this); - Object.keys(shorthand_for).forEach(function (subprop) { - if (!obj.hasOwnProperty(subprop)) { - this.removeProperty(subprop); - delete this._values[subprop]; - } - }, this); - // in case the value is something like 'none' that removes all values, - // check that the generated one is not empty, first remove the property - // if it already exists, then call the shorthandGetter, if it's an empty - // string, don't set the property - this.removeProperty(property); - var calculated = exports.shorthandGetter(property, shorthand_for).call(this); - if (calculated !== '') { - this._setProperty(property, calculated); - } - }; -}; - -exports.shorthandGetter = function (property, shorthand_for) { - return function () { - if (this._values[property] !== undefined) { - return this.getPropertyValue(property); - } - return Object.keys(shorthand_for) - .map(function (subprop) { - return this.getPropertyValue(subprop); - }, this) - .filter(function (value) { - return value !== ''; - }) - .join(' '); - }; -}; - -// isValid(){1,4} | inherit -// if one, it applies to all -// if two, the first applies to the top and bottom, and the second to left and right -// if three, the first applies to the top, the second to left and right, the third bottom -// if four, top, right, bottom, left -exports.implicitSetter = function (property_before, property_after, isValid, parser) { - property_after = property_after || ''; - if (property_after !== '') { - property_after = '-' + property_after; - } - var part_names = ['top', 'right', 'bottom', 'left']; - - return function (v) { - if (typeof v === 'number') { - v = v.toString(); - } - if (typeof v !== 'string') { - return undefined; - } - var parts; - if (v.toLowerCase() === 'inherit' || v === '') { - parts = [v]; - } else { - parts = getParts(v); - } - if (parts.length < 1 || parts.length > 4) { - return undefined; - } - - if (!parts.every(isValid)) { - return undefined; - } - - parts = parts.map(function (part) { - return parser(part); - }); - this._setProperty(property_before + property_after, parts.join(' ')); - if (parts.length === 1) { - parts[1] = parts[0]; - } - if (parts.length === 2) { - parts[2] = parts[0]; - } - if (parts.length === 3) { - parts[3] = parts[1]; - } - - for (var i = 0; i < 4; i++) { - var property = property_before + '-' + part_names[i] + property_after; - this.removeProperty(property); - if (parts[i] !== '') { - this._values[property] = parts[i]; - } - } - return v; - }; -}; - -// -// Companion to implicitSetter, but for the individual parts. -// This sets the individual value, and checks to see if all four -// sub-parts are set. If so, it sets the shorthand version and removes -// the individual parts from the cssText. -// -exports.subImplicitSetter = function (prefix, part, isValid, parser) { - var property = prefix + '-' + part; - var subparts = [prefix + '-top', prefix + '-right', prefix + '-bottom', prefix + '-left']; - - return function (v) { - if (typeof v === 'number') { - v = v.toString(); - } - if (v === null) { - v = ''; - } - if (typeof v !== 'string') { - return undefined; - } - if (!isValid(v)) { - return undefined; - } - v = parser(v); - this._setProperty(property, v); - - var combinedPriority = this.getPropertyPriority(prefix); - var parts = subparts.map((subpart) => this._values[subpart]); - var priorities = subparts.map((subpart) => this.getPropertyPriority(subpart)); - // Combine into a single property if all values are set and have the same priority - if ( - parts.every((p) => p !== '' && p != null) && - priorities.every((p) => p === priorities[0]) && - priorities[0] === combinedPriority - ) { - for (var i = 0; i < subparts.length; i++) { - this.removeProperty(subparts[i]); - this._values[subparts[i]] = parts[i]; - } - this._setProperty(prefix, parts.join(' '), priorities[0]); - } else { - this.removeProperty(prefix); - for (var j = 0; j < subparts.length; j++) { - // The property we're setting won't be important, the rest will either keep their priority or inherit it from the combined property - var priority = subparts[j] === property ? '' : priorities[j] || combinedPriority; - this._setProperty(subparts[j], parts[j], priority); - } - } - return v; - }; -}; - -var camel_to_dashed = /[A-Z]/g; -var first_segment = /^\([^-]\)-/; -var vendor_prefixes = ['o', 'moz', 'ms', 'webkit']; -exports.camelToDashed = function (camel_case) { - var match; - var dashed = camel_case.replace(camel_to_dashed, '-$&').toLowerCase(); - match = dashed.match(first_segment); - if (match && vendor_prefixes.indexOf(match[1]) !== -1) { - dashed = '-' + dashed; - } - return dashed; -}; - - -/***/ }), - -/***/ 48763: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -// autogenerated - 9/7/2024 - -/* - * - * https://www.w3.org/Style/CSS/all-properties.en.html - */ - -var external_dependency_parsers_0 = __nccwpck_require__(87800); -var external_dependency_constants_1 = __nccwpck_require__(4525); -var azimuth_export_definition; -azimuth_export_definition = { - set: function (v) { - var valueType = external_dependency_parsers_0.valueType(v); - if (valueType === external_dependency_parsers_0.TYPES.ANGLE) { - return this._setProperty('azimuth', external_dependency_parsers_0.parseAngle(v)); - } - if (valueType === external_dependency_parsers_0.TYPES.KEYWORD) { - var keywords = v.toLowerCase().trim().split(/\s+/); - var hasBehind = false; - if (keywords.length > 2) { - return; - } - var behindIndex = keywords.indexOf('behind'); - hasBehind = behindIndex !== -1; - if (keywords.length === 2) { - if (!hasBehind) { - return; - } - keywords.splice(behindIndex, 1); - } - if (keywords[0] === 'leftwards' || keywords[0] === 'rightwards') { - if (hasBehind) { - return; - } - return this._setProperty('azimuth', keywords[0]); - } - if (keywords[0] === 'behind') { - return this._setProperty('azimuth', '180deg'); - } - switch (keywords[0]) { - case 'left-side': - return this._setProperty('azimuth', '270deg'); - case 'far-left': - return this._setProperty('azimuth', (hasBehind ? 240 : 300) + 'deg'); - case 'left': - return this._setProperty('azimuth', (hasBehind ? 220 : 320) + 'deg'); - case 'center-left': - return this._setProperty('azimuth', (hasBehind ? 200 : 340) + 'deg'); - case 'center': - return this._setProperty('azimuth', (hasBehind ? 180 : 0) + 'deg'); - case 'center-right': - return this._setProperty('azimuth', (hasBehind ? 160 : 20) + 'deg'); - case 'right': - return this._setProperty('azimuth', (hasBehind ? 140 : 40) + 'deg'); - case 'far-right': - return this._setProperty('azimuth', (hasBehind ? 120 : 60) + 'deg'); - case 'right-side': - return this._setProperty('azimuth', '90deg'); - default: - return; - } - } - }, - get: function () { - return this.getPropertyValue('azimuth'); - }, - enumerable: true, - configurable: true -}; -var backgroundColor_export_isValid, backgroundColor_export_definition; -var backgroundColor_local_var_parse = function parse(v) { - var parsed = external_dependency_parsers_0.parseColor(v); - if (parsed !== undefined) { - return parsed; - } - if (external_dependency_parsers_0.valueType(v) === external_dependency_parsers_0.TYPES.KEYWORD && (v.toLowerCase() === 'transparent' || v.toLowerCase() === 'inherit')) { - return v; - } - return undefined; -}; -backgroundColor_export_isValid = function isValid(v) { - return backgroundColor_local_var_parse(v) !== undefined; -}; -backgroundColor_export_definition = { - set: function (v) { - var parsed = backgroundColor_local_var_parse(v); - if (parsed === undefined) { - return; - } - this._setProperty('background-color', parsed); - }, - get: function () { - return this.getPropertyValue('background-color'); - }, - enumerable: true, - configurable: true -}; -var backgroundImage_export_isValid, backgroundImage_export_definition; -var backgroundImage_local_var_parse = function parse(v) { - var parsed = external_dependency_parsers_0.parseUrl(v); - if (parsed !== undefined) { - return parsed; - } - if (external_dependency_parsers_0.valueType(v) === external_dependency_parsers_0.TYPES.KEYWORD && (v.toLowerCase() === 'none' || v.toLowerCase() === 'inherit')) { - return v; - } - return undefined; -}; -backgroundImage_export_isValid = function isValid(v) { - return backgroundImage_local_var_parse(v) !== undefined; -}; -backgroundImage_export_definition = { - set: function (v) { - this._setProperty('background-image', backgroundImage_local_var_parse(v)); - }, - get: function () { - return this.getPropertyValue('background-image'); - }, - enumerable: true, - configurable: true -}; -var backgroundRepeat_export_isValid, backgroundRepeat_export_definition; -var backgroundRepeat_local_var_parse = function parse(v) { - if (external_dependency_parsers_0.valueType(v) === external_dependency_parsers_0.TYPES.KEYWORD && (v.toLowerCase() === 'repeat' || v.toLowerCase() === 'repeat-x' || v.toLowerCase() === 'repeat-y' || v.toLowerCase() === 'no-repeat' || v.toLowerCase() === 'inherit')) { - return v; - } - return undefined; -}; -backgroundRepeat_export_isValid = function isValid(v) { - return backgroundRepeat_local_var_parse(v) !== undefined; -}; -backgroundRepeat_export_definition = { - set: function (v) { - this._setProperty('background-repeat', backgroundRepeat_local_var_parse(v)); - }, - get: function () { - return this.getPropertyValue('background-repeat'); - }, - enumerable: true, - configurable: true -}; -var backgroundAttachment_export_isValid, backgroundAttachment_export_definition; -var backgroundAttachment_local_var_isValid = backgroundAttachment_export_isValid = function isValid(v) { - return external_dependency_parsers_0.valueType(v) === external_dependency_parsers_0.TYPES.KEYWORD && (v.toLowerCase() === 'scroll' || v.toLowerCase() === 'fixed' || v.toLowerCase() === 'inherit'); -}; -backgroundAttachment_export_definition = { - set: function (v) { - if (!backgroundAttachment_local_var_isValid(v)) { - return; - } - this._setProperty('background-attachment', v); - }, - get: function () { - return this.getPropertyValue('background-attachment'); - }, - enumerable: true, - configurable: true -}; -var backgroundPosition_export_isValid, backgroundPosition_export_definition; -var backgroundPosition_local_var_valid_keywords = ['top', 'center', 'bottom', 'left', 'right']; -var backgroundPosition_local_var_parse = function parse(v) { - if (v === '' || v === null) { - return undefined; - } - var parts = v.split(/\s+/); - if (parts.length > 2 || parts.length < 1) { - return undefined; - } - var types = []; - parts.forEach(function (part, index) { - types[index] = external_dependency_parsers_0.valueType(part); - }); - if (parts.length === 1) { - if (types[0] === external_dependency_parsers_0.TYPES.LENGTH || types[0] === external_dependency_parsers_0.TYPES.PERCENT) { - return v; - } - if (types[0] === external_dependency_parsers_0.TYPES.KEYWORD) { - if (backgroundPosition_local_var_valid_keywords.indexOf(v.toLowerCase()) !== -1 || v.toLowerCase() === 'inherit') { - return v; - } - } - return undefined; - } - if ((types[0] === external_dependency_parsers_0.TYPES.LENGTH || types[0] === external_dependency_parsers_0.TYPES.PERCENT) && (types[1] === external_dependency_parsers_0.TYPES.LENGTH || types[1] === external_dependency_parsers_0.TYPES.PERCENT)) { - return v; - } - if (types[0] !== external_dependency_parsers_0.TYPES.KEYWORD || types[1] !== external_dependency_parsers_0.TYPES.KEYWORD) { - return undefined; - } - if (backgroundPosition_local_var_valid_keywords.indexOf(parts[0]) !== -1 && backgroundPosition_local_var_valid_keywords.indexOf(parts[1]) !== -1) { - return v; - } - return undefined; -}; -backgroundPosition_export_isValid = function isValid(v) { - return backgroundPosition_local_var_parse(v) !== undefined; -}; -backgroundPosition_export_definition = { - set: function (v) { - this._setProperty('background-position', backgroundPosition_local_var_parse(v)); - }, - get: function () { - return this.getPropertyValue('background-position'); - }, - enumerable: true, - configurable: true -}; -var background_export_definition; -var background_local_var_shorthand_for = { - 'background-color': { - isValid: backgroundColor_export_isValid, - definition: backgroundColor_export_definition - }, - 'background-image': { - isValid: backgroundImage_export_isValid, - definition: backgroundImage_export_definition - }, - 'background-repeat': { - isValid: backgroundRepeat_export_isValid, - definition: backgroundRepeat_export_definition - }, - 'background-attachment': { - isValid: backgroundAttachment_export_isValid, - definition: backgroundAttachment_export_definition - }, - 'background-position': { - isValid: backgroundPosition_export_isValid, - definition: backgroundPosition_export_definition - } -}; -background_export_definition = { - set: external_dependency_parsers_0.shorthandSetter('background', background_local_var_shorthand_for), - get: external_dependency_parsers_0.shorthandGetter('background', background_local_var_shorthand_for), - enumerable: true, - configurable: true -}; -var borderWidth_export_isValid, borderWidth_export_definition; -// the valid border-widths: -var borderWidth_local_var_widths = ['thin', 'medium', 'thick']; -borderWidth_export_isValid = function parse(v) { - var length = external_dependency_parsers_0.parseLength(v); - if (length !== undefined) { - return true; - } - if (typeof v !== 'string') { - return false; - } - if (v === '') { - return true; - } - v = v.toLowerCase(); - if (borderWidth_local_var_widths.indexOf(v) === -1) { - return false; - } - return true; -}; -var borderWidth_local_var_isValid = borderWidth_export_isValid; -var borderWidth_local_var_parser = function (v) { - var length = external_dependency_parsers_0.parseLength(v); - if (length !== undefined) { - return length; - } - if (borderWidth_local_var_isValid(v)) { - return v.toLowerCase(); - } - return undefined; -}; -borderWidth_export_definition = { - set: external_dependency_parsers_0.implicitSetter('border', 'width', borderWidth_local_var_isValid, borderWidth_local_var_parser), - get: function () { - return this.getPropertyValue('border-width'); - }, - enumerable: true, - configurable: true -}; -var borderStyle_export_isValid, borderStyle_export_definition; -// the valid border-styles: -var borderStyle_local_var_styles = ['none', 'hidden', 'dotted', 'dashed', 'solid', 'double', 'groove', 'ridge', 'inset', 'outset']; -borderStyle_export_isValid = function parse(v) { - return typeof v === 'string' && (v === '' || borderStyle_local_var_styles.indexOf(v) !== -1); -}; -var borderStyle_local_var_isValid = borderStyle_export_isValid; -var borderStyle_local_var_parser = function (v) { - if (borderStyle_local_var_isValid(v)) { - return v.toLowerCase(); - } - return undefined; -}; -borderStyle_export_definition = { - set: external_dependency_parsers_0.implicitSetter('border', 'style', borderStyle_local_var_isValid, borderStyle_local_var_parser), - get: function () { - return this.getPropertyValue('border-style'); - }, - enumerable: true, - configurable: true -}; -var borderColor_export_isValid, borderColor_export_definition; -borderColor_export_isValid = function parse(v) { - if (typeof v !== 'string') { - return false; - } - return v === '' || v.toLowerCase() === 'transparent' || external_dependency_parsers_0.valueType(v) === external_dependency_parsers_0.TYPES.COLOR; -}; -var borderColor_local_var_isValid = borderColor_export_isValid; -var borderColor_local_var_parser = function (v) { - if (borderColor_local_var_isValid(v)) { - return v.toLowerCase(); - } - return undefined; -}; -borderColor_export_definition = { - set: external_dependency_parsers_0.implicitSetter('border', 'color', borderColor_local_var_isValid, borderColor_local_var_parser), - get: function () { - return this.getPropertyValue('border-color'); - }, - enumerable: true, - configurable: true -}; -var border_export_definition; -var border_local_var_shorthand_for = { - 'border-width': { - isValid: borderWidth_export_isValid, - definition: borderWidth_export_definition - }, - 'border-style': { - isValid: borderStyle_export_isValid, - definition: borderStyle_export_definition - }, - 'border-color': { - isValid: borderColor_export_isValid, - definition: borderColor_export_definition - } -}; -var border_local_var_myShorthandSetter = external_dependency_parsers_0.shorthandSetter('border', border_local_var_shorthand_for); -var border_local_var_myShorthandGetter = external_dependency_parsers_0.shorthandGetter('border', border_local_var_shorthand_for); -border_export_definition = { - set: function (v) { - if (v.toString().toLowerCase() === 'none') { - v = ''; - } - border_local_var_myShorthandSetter.call(this, v); - this.removeProperty('border-top'); - this.removeProperty('border-left'); - this.removeProperty('border-right'); - this.removeProperty('border-bottom'); - this._values['border-top'] = this._values.border; - this._values['border-left'] = this._values.border; - this._values['border-right'] = this._values.border; - this._values['border-bottom'] = this._values.border; - }, - get: border_local_var_myShorthandGetter, - enumerable: true, - configurable: true -}; -var borderBottomWidth_export_isValid, borderBottomWidth_export_definition; -var borderBottomWidth_local_var_isValid = borderBottomWidth_export_isValid = borderWidth_export_isValid; -borderBottomWidth_export_definition = { - set: function (v) { - if (borderBottomWidth_local_var_isValid(v)) { - this._setProperty('border-bottom-width', v); - } - }, - get: function () { - return this.getPropertyValue('border-bottom-width'); - }, - enumerable: true, - configurable: true -}; -var borderBottomStyle_export_isValid, borderBottomStyle_export_definition; -borderBottomStyle_export_isValid = borderStyle_export_isValid; -borderBottomStyle_export_definition = { - set: function (v) { - if (borderStyle_export_isValid(v)) { - if (v.toLowerCase() === 'none') { - v = ''; - this.removeProperty('border-bottom-width'); - } - this._setProperty('border-bottom-style', v); - } - }, - get: function () { - return this.getPropertyValue('border-bottom-style'); - }, - enumerable: true, - configurable: true -}; -var borderBottomColor_export_isValid, borderBottomColor_export_definition; -var borderBottomColor_local_var_isValid = borderBottomColor_export_isValid = borderColor_export_isValid; -borderBottomColor_export_definition = { - set: function (v) { - if (borderBottomColor_local_var_isValid(v)) { - this._setProperty('border-bottom-color', v); - } - }, - get: function () { - return this.getPropertyValue('border-bottom-color'); - }, - enumerable: true, - configurable: true -}; -var borderBottom_export_definition; -var borderBottom_local_var_shorthand_for = { - 'border-bottom-width': { - isValid: borderBottomWidth_export_isValid, - definition: borderBottomWidth_export_definition - }, - 'border-bottom-style': { - isValid: borderBottomStyle_export_isValid, - definition: borderBottomStyle_export_definition - }, - 'border-bottom-color': { - isValid: borderBottomColor_export_isValid, - definition: borderBottomColor_export_definition - } -}; -borderBottom_export_definition = { - set: external_dependency_parsers_0.shorthandSetter('border-bottom', borderBottom_local_var_shorthand_for), - get: external_dependency_parsers_0.shorthandGetter('border-bottom', borderBottom_local_var_shorthand_for), - enumerable: true, - configurable: true -}; -var borderCollapse_export_definition; -var borderCollapse_local_var_parse = function parse(v) { - if (external_dependency_parsers_0.valueType(v) === external_dependency_parsers_0.TYPES.KEYWORD && (v.toLowerCase() === 'collapse' || v.toLowerCase() === 'separate' || v.toLowerCase() === 'inherit')) { - return v; - } - return undefined; -}; -borderCollapse_export_definition = { - set: function (v) { - this._setProperty('border-collapse', borderCollapse_local_var_parse(v)); - }, - get: function () { - return this.getPropertyValue('border-collapse'); - }, - enumerable: true, - configurable: true -}; -var borderLeftWidth_export_isValid, borderLeftWidth_export_definition; -var borderLeftWidth_local_var_isValid = borderLeftWidth_export_isValid = borderWidth_export_isValid; -borderLeftWidth_export_definition = { - set: function (v) { - if (borderLeftWidth_local_var_isValid(v)) { - this._setProperty('border-left-width', v); - } - }, - get: function () { - return this.getPropertyValue('border-left-width'); - }, - enumerable: true, - configurable: true -}; -var borderLeftStyle_export_isValid, borderLeftStyle_export_definition; -borderLeftStyle_export_isValid = borderStyle_export_isValid; -borderLeftStyle_export_definition = { - set: function (v) { - if (borderStyle_export_isValid(v)) { - if (v.toLowerCase() === 'none') { - v = ''; - this.removeProperty('border-left-width'); - } - this._setProperty('border-left-style', v); - } - }, - get: function () { - return this.getPropertyValue('border-left-style'); - }, - enumerable: true, - configurable: true -}; -var borderLeftColor_export_isValid, borderLeftColor_export_definition; -var borderLeftColor_local_var_isValid = borderLeftColor_export_isValid = borderColor_export_isValid; -borderLeftColor_export_definition = { - set: function (v) { - if (borderLeftColor_local_var_isValid(v)) { - this._setProperty('border-left-color', v); - } - }, - get: function () { - return this.getPropertyValue('border-left-color'); - }, - enumerable: true, - configurable: true -}; -var borderLeft_export_definition; -var borderLeft_local_var_shorthand_for = { - 'border-left-width': { - isValid: borderLeftWidth_export_isValid, - definition: borderLeftWidth_export_definition - }, - 'border-left-style': { - isValid: borderLeftStyle_export_isValid, - definition: borderLeftStyle_export_definition - }, - 'border-left-color': { - isValid: borderLeftColor_export_isValid, - definition: borderLeftColor_export_definition - } -}; -borderLeft_export_definition = { - set: external_dependency_parsers_0.shorthandSetter('border-left', borderLeft_local_var_shorthand_for), - get: external_dependency_parsers_0.shorthandGetter('border-left', borderLeft_local_var_shorthand_for), - enumerable: true, - configurable: true -}; -var borderRightWidth_export_isValid, borderRightWidth_export_definition; -var borderRightWidth_local_var_isValid = borderRightWidth_export_isValid = borderWidth_export_isValid; -borderRightWidth_export_definition = { - set: function (v) { - if (borderRightWidth_local_var_isValid(v)) { - this._setProperty('border-right-width', v); - } - }, - get: function () { - return this.getPropertyValue('border-right-width'); - }, - enumerable: true, - configurable: true -}; -var borderRightStyle_export_isValid, borderRightStyle_export_definition; -borderRightStyle_export_isValid = borderStyle_export_isValid; -borderRightStyle_export_definition = { - set: function (v) { - if (borderStyle_export_isValid(v)) { - if (v.toLowerCase() === 'none') { - v = ''; - this.removeProperty('border-right-width'); - } - this._setProperty('border-right-style', v); - } - }, - get: function () { - return this.getPropertyValue('border-right-style'); - }, - enumerable: true, - configurable: true -}; -var borderRightColor_export_isValid, borderRightColor_export_definition; -var borderRightColor_local_var_isValid = borderRightColor_export_isValid = borderColor_export_isValid; -borderRightColor_export_definition = { - set: function (v) { - if (borderRightColor_local_var_isValid(v)) { - this._setProperty('border-right-color', v); - } - }, - get: function () { - return this.getPropertyValue('border-right-color'); - }, - enumerable: true, - configurable: true -}; -var borderRight_export_definition; -var borderRight_local_var_shorthand_for = { - 'border-right-width': { - isValid: borderRightWidth_export_isValid, - definition: borderRightWidth_export_definition - }, - 'border-right-style': { - isValid: borderRightStyle_export_isValid, - definition: borderRightStyle_export_definition - }, - 'border-right-color': { - isValid: borderRightColor_export_isValid, - definition: borderRightColor_export_definition - } -}; -borderRight_export_definition = { - set: external_dependency_parsers_0.shorthandSetter('border-right', borderRight_local_var_shorthand_for), - get: external_dependency_parsers_0.shorthandGetter('border-right', borderRight_local_var_shorthand_for), - enumerable: true, - configurable: true -}; -var borderSpacing_export_definition; -// ? | inherit -// if one, it applies to both horizontal and verical spacing -// if two, the first applies to the horizontal and the second applies to vertical spacing - -var borderSpacing_local_var_parse = function parse(v) { - if (v === '' || v === null) { - return undefined; - } - if (v === 0) { - return '0px'; - } - if (v.toLowerCase() === 'inherit') { - return v; - } - var parts = v.split(/\s+/); - if (parts.length !== 1 && parts.length !== 2) { - return undefined; - } - parts.forEach(function (part) { - if (external_dependency_parsers_0.valueType(part) !== external_dependency_parsers_0.TYPES.LENGTH) { - return undefined; - } - }); - return v; -}; -borderSpacing_export_definition = { - set: function (v) { - this._setProperty('border-spacing', borderSpacing_local_var_parse(v)); - }, - get: function () { - return this.getPropertyValue('border-spacing'); - }, - enumerable: true, - configurable: true -}; -var borderTopWidth_export_isValid, borderTopWidth_export_definition; -borderTopWidth_export_isValid = borderWidth_export_isValid; -borderTopWidth_export_definition = { - set: function (v) { - if (borderWidth_export_isValid(v)) { - this._setProperty('border-top-width', v); - } - }, - get: function () { - return this.getPropertyValue('border-top-width'); - }, - enumerable: true, - configurable: true -}; -var borderTopStyle_export_isValid, borderTopStyle_export_definition; -borderTopStyle_export_isValid = borderStyle_export_isValid; -borderTopStyle_export_definition = { - set: function (v) { - if (borderStyle_export_isValid(v)) { - if (v.toLowerCase() === 'none') { - v = ''; - this.removeProperty('border-top-width'); - } - this._setProperty('border-top-style', v); - } - }, - get: function () { - return this.getPropertyValue('border-top-style'); - }, - enumerable: true, - configurable: true -}; -var borderTopColor_export_isValid, borderTopColor_export_definition; -var borderTopColor_local_var_isValid = borderTopColor_export_isValid = borderColor_export_isValid; -borderTopColor_export_definition = { - set: function (v) { - if (borderTopColor_local_var_isValid(v)) { - this._setProperty('border-top-color', v); - } - }, - get: function () { - return this.getPropertyValue('border-top-color'); - }, - enumerable: true, - configurable: true -}; -var borderTop_export_definition; -var borderTop_local_var_shorthand_for = { - 'border-top-width': { - isValid: borderTopWidth_export_isValid, - definition: borderTopWidth_export_definition - }, - 'border-top-style': { - isValid: borderTopStyle_export_isValid, - definition: borderTopStyle_export_definition - }, - 'border-top-color': { - isValid: borderTopColor_export_isValid, - definition: borderTopColor_export_definition - } -}; -borderTop_export_definition = { - set: external_dependency_parsers_0.shorthandSetter('border-top', borderTop_local_var_shorthand_for), - get: external_dependency_parsers_0.shorthandGetter('border-top', borderTop_local_var_shorthand_for), - enumerable: true, - configurable: true -}; -var bottom_export_definition; -bottom_export_definition = { - set: function (v) { - this._setProperty('bottom', external_dependency_parsers_0.parseMeasurement(v)); - }, - get: function () { - return this.getPropertyValue('bottom'); - }, - enumerable: true, - configurable: true -}; -var clear_export_definition; -var clear_local_var_clear_keywords = ['none', 'left', 'right', 'both', 'inherit']; -clear_export_definition = { - set: function (v) { - this._setProperty('clear', external_dependency_parsers_0.parseKeyword(v, clear_local_var_clear_keywords)); - }, - get: function () { - return this.getPropertyValue('clear'); - }, - enumerable: true, - configurable: true -}; -var clip_export_definition; -var clip_local_var_shape_regex = /^rect\((.*)\)$/i; -var clip_local_var_parse = function (val) { - if (val === '' || val === null) { - return val; - } - if (typeof val !== 'string') { - return undefined; - } - val = val.toLowerCase(); - if (val === 'auto' || val === 'inherit') { - return val; - } - var matches = val.match(clip_local_var_shape_regex); - if (!matches) { - return undefined; - } - var parts = matches[1].split(/\s*,\s*/); - if (parts.length !== 4) { - return undefined; - } - var valid = parts.every(function (part, index) { - var measurement = external_dependency_parsers_0.parseMeasurement(part); - parts[index] = measurement; - return measurement !== undefined; - }); - if (!valid) { - return undefined; - } - parts = parts.join(', '); - return val.replace(matches[1], parts); -}; -clip_export_definition = { - set: function (v) { - this._setProperty('clip', clip_local_var_parse(v)); - }, - get: function () { - return this.getPropertyValue('clip'); - }, - enumerable: true, - configurable: true -}; -var color_export_definition; -color_export_definition = { - set: function (v) { - this._setProperty('color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('color'); - }, - enumerable: true, - configurable: true -}; -var cssFloat_export_definition; -cssFloat_export_definition = { - set: function (v) { - this._setProperty('float', v); - }, - get: function () { - return this.getPropertyValue('float'); - }, - enumerable: true, - configurable: true -}; -var flexGrow_export_isValid, flexGrow_export_definition; -flexGrow_export_isValid = function isValid(v, positionAtFlexShorthand) { - return external_dependency_parsers_0.parseNumber(v) !== undefined && positionAtFlexShorthand === external_dependency_constants_1.POSITION_AT_SHORTHAND.first; -}; -flexGrow_export_definition = { - set: function (v) { - this._setProperty('flex-grow', external_dependency_parsers_0.parseNumber(v)); - }, - get: function () { - return this.getPropertyValue('flex-grow'); - }, - enumerable: true, - configurable: true -}; -var flexShrink_export_isValid, flexShrink_export_definition; -flexShrink_export_isValid = function isValid(v, positionAtFlexShorthand) { - return external_dependency_parsers_0.parseNumber(v) !== undefined && positionAtFlexShorthand === external_dependency_constants_1.POSITION_AT_SHORTHAND.second; -}; -flexShrink_export_definition = { - set: function (v) { - this._setProperty('flex-shrink', external_dependency_parsers_0.parseNumber(v)); - }, - get: function () { - return this.getPropertyValue('flex-shrink'); - }, - enumerable: true, - configurable: true -}; -var flexBasis_export_isValid, flexBasis_export_definition; -function flexBasis_local_fn_parse(v) { - if (String(v).toLowerCase() === 'auto') { - return 'auto'; - } - if (String(v).toLowerCase() === 'inherit') { - return 'inherit'; - } - return external_dependency_parsers_0.parseMeasurement(v); -} -flexBasis_export_isValid = function isValid(v) { - return flexBasis_local_fn_parse(v) !== undefined; -}; -flexBasis_export_definition = { - set: function (v) { - this._setProperty('flex-basis', flexBasis_local_fn_parse(v)); - }, - get: function () { - return this.getPropertyValue('flex-basis'); - }, - enumerable: true, - configurable: true -}; -var flex_export_isValid, flex_export_definition; -var flex_local_var_shorthand_for = { - 'flex-grow': { - isValid: flexGrow_export_isValid, - definition: flexGrow_export_definition - }, - 'flex-shrink': { - isValid: flexShrink_export_isValid, - definition: flexShrink_export_definition - }, - 'flex-basis': { - isValid: flexBasis_export_isValid, - definition: flexBasis_export_definition - } -}; -var flex_local_var_myShorthandSetter = external_dependency_parsers_0.shorthandSetter('flex', flex_local_var_shorthand_for); -flex_export_isValid = function isValid(v) { - return external_dependency_parsers_0.shorthandParser(v, flex_local_var_shorthand_for) !== undefined; -}; -flex_export_definition = { - set: function (v) { - var normalizedValue = String(v).trim().toLowerCase(); - if (normalizedValue === 'none') { - flex_local_var_myShorthandSetter.call(this, '0 0 auto'); - return; - } - if (normalizedValue === 'initial') { - flex_local_var_myShorthandSetter.call(this, '0 1 auto'); - return; - } - if (normalizedValue === 'auto') { - this.removeProperty('flex-grow'); - this.removeProperty('flex-shrink'); - this.setProperty('flex-basis', normalizedValue); - return; - } - flex_local_var_myShorthandSetter.call(this, v); - }, - get: external_dependency_parsers_0.shorthandGetter('flex', flex_local_var_shorthand_for), - enumerable: true, - configurable: true -}; -var float_export_definition; -float_export_definition = { - set: function (v) { - this._setProperty('float', v); - }, - get: function () { - return this.getPropertyValue('float'); - }, - enumerable: true, - configurable: true -}; -var floodColor_export_definition; -floodColor_export_definition = { - set: function (v) { - this._setProperty('flood-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('flood-color'); - }, - enumerable: true, - configurable: true -}; -var fontFamily_export_isValid, fontFamily_export_definition; -var fontFamily_local_var_partsRegEx = /\s*,\s*/; -fontFamily_export_isValid = function isValid(v) { - if (v === '' || v === null) { - return true; - } - var parts = v.split(fontFamily_local_var_partsRegEx); - var len = parts.length; - var i; - var type; - for (i = 0; i < len; i++) { - type = external_dependency_parsers_0.valueType(parts[i]); - if (type === external_dependency_parsers_0.TYPES.STRING || type === external_dependency_parsers_0.TYPES.KEYWORD) { - return true; - } - } - return false; -}; -fontFamily_export_definition = { - set: function (v) { - this._setProperty('font-family', v); - }, - get: function () { - return this.getPropertyValue('font-family'); - }, - enumerable: true, - configurable: true -}; -var fontSize_export_isValid, fontSize_export_definition; -var fontSize_local_var_absoluteSizes = ['xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large']; -var fontSize_local_var_relativeSizes = ['larger', 'smaller']; -fontSize_export_isValid = function (v) { - var type = external_dependency_parsers_0.valueType(v.toLowerCase()); - return type === external_dependency_parsers_0.TYPES.LENGTH || type === external_dependency_parsers_0.TYPES.PERCENT || type === external_dependency_parsers_0.TYPES.KEYWORD && fontSize_local_var_absoluteSizes.indexOf(v.toLowerCase()) !== -1 || type === external_dependency_parsers_0.TYPES.KEYWORD && fontSize_local_var_relativeSizes.indexOf(v.toLowerCase()) !== -1; -}; -function fontSize_local_fn_parse(v) { - const valueAsString = String(v).toLowerCase(); - const optionalArguments = fontSize_local_var_absoluteSizes.concat(fontSize_local_var_relativeSizes); - const isOptionalArgument = optionalArguments.some(stringValue => stringValue.toLowerCase() === valueAsString); - return isOptionalArgument ? valueAsString : external_dependency_parsers_0.parseMeasurement(v); -} -fontSize_export_definition = { - set: function (v) { - this._setProperty('font-size', fontSize_local_fn_parse(v)); - }, - get: function () { - return this.getPropertyValue('font-size'); - }, - enumerable: true, - configurable: true -}; -var fontStyle_export_isValid, fontStyle_export_definition; -var fontStyle_local_var_valid_styles = ['normal', 'italic', 'oblique', 'inherit']; -fontStyle_export_isValid = function (v) { - return fontStyle_local_var_valid_styles.indexOf(v.toLowerCase()) !== -1; -}; -fontStyle_export_definition = { - set: function (v) { - this._setProperty('font-style', v); - }, - get: function () { - return this.getPropertyValue('font-style'); - }, - enumerable: true, - configurable: true -}; -var fontVariant_export_isValid, fontVariant_export_definition; -var fontVariant_local_var_valid_variants = ['normal', 'small-caps', 'inherit']; -fontVariant_export_isValid = function isValid(v) { - return fontVariant_local_var_valid_variants.indexOf(v.toLowerCase()) !== -1; -}; -fontVariant_export_definition = { - set: function (v) { - this._setProperty('font-variant', v); - }, - get: function () { - return this.getPropertyValue('font-variant'); - }, - enumerable: true, - configurable: true -}; -var fontWeight_export_isValid, fontWeight_export_definition; -var fontWeight_local_var_valid_weights = ['normal', 'bold', 'bolder', 'lighter', '100', '200', '300', '400', '500', '600', '700', '800', '900', 'inherit']; -fontWeight_export_isValid = function isValid(v) { - return fontWeight_local_var_valid_weights.indexOf(v.toLowerCase()) !== -1; -}; -fontWeight_export_definition = { - set: function (v) { - this._setProperty('font-weight', v); - }, - get: function () { - return this.getPropertyValue('font-weight'); - }, - enumerable: true, - configurable: true -}; -var lineHeight_export_isValid, lineHeight_export_definition; -lineHeight_export_isValid = function isValid(v) { - var type = external_dependency_parsers_0.valueType(v); - return type === external_dependency_parsers_0.TYPES.KEYWORD && v.toLowerCase() === 'normal' || v.toLowerCase() === 'inherit' || type === external_dependency_parsers_0.TYPES.NUMBER || type === external_dependency_parsers_0.TYPES.LENGTH || type === external_dependency_parsers_0.TYPES.PERCENT; -}; -lineHeight_export_definition = { - set: function (v) { - this._setProperty('line-height', v); - }, - get: function () { - return this.getPropertyValue('line-height'); - }, - enumerable: true, - configurable: true -}; -var font_export_definition; -var font_local_var_shorthand_for = { - 'font-family': { - isValid: fontFamily_export_isValid, - definition: fontFamily_export_definition - }, - 'font-size': { - isValid: fontSize_export_isValid, - definition: fontSize_export_definition - }, - 'font-style': { - isValid: fontStyle_export_isValid, - definition: fontStyle_export_definition - }, - 'font-variant': { - isValid: fontVariant_export_isValid, - definition: fontVariant_export_definition - }, - 'font-weight': { - isValid: fontWeight_export_isValid, - definition: fontWeight_export_definition - }, - 'line-height': { - isValid: lineHeight_export_isValid, - definition: lineHeight_export_definition - } -}; -var font_local_var_static_fonts = ['caption', 'icon', 'menu', 'message-box', 'small-caption', 'status-bar', 'inherit']; -var font_local_var_setter = external_dependency_parsers_0.shorthandSetter('font', font_local_var_shorthand_for); -font_export_definition = { - set: function (v) { - var short = external_dependency_parsers_0.shorthandParser(v, font_local_var_shorthand_for); - if (short !== undefined) { - return font_local_var_setter.call(this, v); - } - if (external_dependency_parsers_0.valueType(v) === external_dependency_parsers_0.TYPES.KEYWORD && font_local_var_static_fonts.indexOf(v.toLowerCase()) !== -1) { - this._setProperty('font', v); - } - }, - get: external_dependency_parsers_0.shorthandGetter('font', font_local_var_shorthand_for), - enumerable: true, - configurable: true -}; -var height_export_definition; -function height_local_fn_parse(v) { - if (String(v).toLowerCase() === 'auto') { - return 'auto'; - } - if (String(v).toLowerCase() === 'inherit') { - return 'inherit'; - } - return external_dependency_parsers_0.parseMeasurement(v); -} -height_export_definition = { - set: function (v) { - this._setProperty('height', height_local_fn_parse(v)); - }, - get: function () { - return this.getPropertyValue('height'); - }, - enumerable: true, - configurable: true -}; -var left_export_definition; -left_export_definition = { - set: function (v) { - this._setProperty('left', external_dependency_parsers_0.parseMeasurement(v)); - }, - get: function () { - return this.getPropertyValue('left'); - }, - enumerable: true, - configurable: true -}; -var lightingColor_export_definition; -lightingColor_export_definition = { - set: function (v) { - this._setProperty('lighting-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('lighting-color'); - }, - enumerable: true, - configurable: true -}; -var margin_export_definition, margin_export_isValid, margin_export_parser; -var margin_local_var_TYPES = external_dependency_parsers_0.TYPES; -var margin_local_var_isValid = function (v) { - if (v.toLowerCase() === 'auto') { - return true; - } - var type = external_dependency_parsers_0.valueType(v); - return type === margin_local_var_TYPES.NULL_OR_EMPTY_STR || type === margin_local_var_TYPES.LENGTH || type === margin_local_var_TYPES.PERCENT || type === margin_local_var_TYPES.CALC || type === margin_local_var_TYPES.INTEGER && (v === '0' || v === 0); -}; -var margin_local_var_parser = function (v) { - var V = v.toLowerCase(); - if (V === 'auto') { - return V; - } - return external_dependency_parsers_0.parseMeasurement(v); -}; -var margin_local_var_mySetter = external_dependency_parsers_0.implicitSetter('margin', '', margin_local_var_isValid, margin_local_var_parser); -var margin_local_var_myGlobal = external_dependency_parsers_0.implicitSetter('margin', '', function () { - return true; -}, function (v) { - return v; -}); -margin_export_definition = { - set: function (v) { - if (typeof v === 'number') { - v = String(v); - } - if (v === null) { - v = ''; - } - if (typeof v !== 'string') { - return; - } - var V = v.toLowerCase(); - switch (V) { - case 'inherit': - case 'initial': - case 'unset': - case '': - margin_local_var_myGlobal.call(this, V); - break; - default: - margin_local_var_mySetter.call(this, v); - break; - } - }, - get: function () { - return this.getPropertyValue('margin'); - }, - enumerable: true, - configurable: true -}; -margin_export_isValid = margin_local_var_isValid; -margin_export_parser = margin_local_var_parser; -var marginBottom_export_definition; -marginBottom_export_definition = { - set: external_dependency_parsers_0.subImplicitSetter('margin', 'bottom', { - definition: margin_export_definition, - isValid: margin_export_isValid, - parser: margin_export_parser - }.isValid, { - definition: margin_export_definition, - isValid: margin_export_isValid, - parser: margin_export_parser - }.parser), - get: function () { - return this.getPropertyValue('margin-bottom'); - }, - enumerable: true, - configurable: true -}; -var marginLeft_export_definition; -marginLeft_export_definition = { - set: external_dependency_parsers_0.subImplicitSetter('margin', 'left', { - definition: margin_export_definition, - isValid: margin_export_isValid, - parser: margin_export_parser - }.isValid, { - definition: margin_export_definition, - isValid: margin_export_isValid, - parser: margin_export_parser - }.parser), - get: function () { - return this.getPropertyValue('margin-left'); - }, - enumerable: true, - configurable: true -}; -var marginRight_export_definition; -marginRight_export_definition = { - set: external_dependency_parsers_0.subImplicitSetter('margin', 'right', { - definition: margin_export_definition, - isValid: margin_export_isValid, - parser: margin_export_parser - }.isValid, { - definition: margin_export_definition, - isValid: margin_export_isValid, - parser: margin_export_parser - }.parser), - get: function () { - return this.getPropertyValue('margin-right'); - }, - enumerable: true, - configurable: true -}; -var marginTop_export_definition; -marginTop_export_definition = { - set: external_dependency_parsers_0.subImplicitSetter('margin', 'top', { - definition: margin_export_definition, - isValid: margin_export_isValid, - parser: margin_export_parser - }.isValid, { - definition: margin_export_definition, - isValid: margin_export_isValid, - parser: margin_export_parser - }.parser), - get: function () { - return this.getPropertyValue('margin-top'); - }, - enumerable: true, - configurable: true -}; -var opacity_export_definition; -opacity_export_definition = { - set: function (v) { - this._setProperty('opacity', external_dependency_parsers_0.parseNumber(v)); - }, - get: function () { - return this.getPropertyValue('opacity'); - }, - enumerable: true, - configurable: true -}; -var outlineColor_export_definition; -outlineColor_export_definition = { - set: function (v) { - this._setProperty('outline-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('outline-color'); - }, - enumerable: true, - configurable: true -}; -var padding_export_definition, padding_export_isValid, padding_export_parser; -var padding_local_var_TYPES = external_dependency_parsers_0.TYPES; -var padding_local_var_isValid = function (v) { - var type = external_dependency_parsers_0.valueType(v); - return type === padding_local_var_TYPES.NULL_OR_EMPTY_STR || type === padding_local_var_TYPES.LENGTH || type === padding_local_var_TYPES.PERCENT || type === padding_local_var_TYPES.CALC || type === padding_local_var_TYPES.INTEGER && (v === '0' || v === 0); -}; -var padding_local_var_parser = function (v) { - return external_dependency_parsers_0.parseMeasurement(v); -}; -var padding_local_var_mySetter = external_dependency_parsers_0.implicitSetter('padding', '', padding_local_var_isValid, padding_local_var_parser); -var padding_local_var_myGlobal = external_dependency_parsers_0.implicitSetter('padding', '', function () { - return true; -}, function (v) { - return v; -}); -padding_export_definition = { - set: function (v) { - if (typeof v === 'number') { - v = String(v); - } - if (v === null) { - v = ''; - } - if (typeof v !== 'string') { - return; - } - var V = v.toLowerCase(); - switch (V) { - case 'inherit': - case 'initial': - case 'unset': - case '': - padding_local_var_myGlobal.call(this, V); - break; - default: - padding_local_var_mySetter.call(this, v); - break; - } - }, - get: function () { - return this.getPropertyValue('padding'); - }, - enumerable: true, - configurable: true -}; -padding_export_isValid = padding_local_var_isValid; -padding_export_parser = padding_local_var_parser; -var paddingBottom_export_definition; -paddingBottom_export_definition = { - set: external_dependency_parsers_0.subImplicitSetter('padding', 'bottom', { - definition: padding_export_definition, - isValid: padding_export_isValid, - parser: padding_export_parser - }.isValid, { - definition: padding_export_definition, - isValid: padding_export_isValid, - parser: padding_export_parser - }.parser), - get: function () { - return this.getPropertyValue('padding-bottom'); - }, - enumerable: true, - configurable: true -}; -var paddingLeft_export_definition; -paddingLeft_export_definition = { - set: external_dependency_parsers_0.subImplicitSetter('padding', 'left', { - definition: padding_export_definition, - isValid: padding_export_isValid, - parser: padding_export_parser - }.isValid, { - definition: padding_export_definition, - isValid: padding_export_isValid, - parser: padding_export_parser - }.parser), - get: function () { - return this.getPropertyValue('padding-left'); - }, - enumerable: true, - configurable: true -}; -var paddingRight_export_definition; -paddingRight_export_definition = { - set: external_dependency_parsers_0.subImplicitSetter('padding', 'right', { - definition: padding_export_definition, - isValid: padding_export_isValid, - parser: padding_export_parser - }.isValid, { - definition: padding_export_definition, - isValid: padding_export_isValid, - parser: padding_export_parser - }.parser), - get: function () { - return this.getPropertyValue('padding-right'); - }, - enumerable: true, - configurable: true -}; -var paddingTop_export_definition; -paddingTop_export_definition = { - set: external_dependency_parsers_0.subImplicitSetter('padding', 'top', { - definition: padding_export_definition, - isValid: padding_export_isValid, - parser: padding_export_parser - }.isValid, { - definition: padding_export_definition, - isValid: padding_export_isValid, - parser: padding_export_parser - }.parser), - get: function () { - return this.getPropertyValue('padding-top'); - }, - enumerable: true, - configurable: true -}; -var right_export_definition; -right_export_definition = { - set: function (v) { - this._setProperty('right', external_dependency_parsers_0.parseMeasurement(v)); - }, - get: function () { - return this.getPropertyValue('right'); - }, - enumerable: true, - configurable: true -}; -var stopColor_export_definition; -stopColor_export_definition = { - set: function (v) { - this._setProperty('stop-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('stop-color'); - }, - enumerable: true, - configurable: true -}; -var textLineThroughColor_export_definition; -textLineThroughColor_export_definition = { - set: function (v) { - this._setProperty('text-line-through-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('text-line-through-color'); - }, - enumerable: true, - configurable: true -}; -var textOverlineColor_export_definition; -textOverlineColor_export_definition = { - set: function (v) { - this._setProperty('text-overline-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('text-overline-color'); - }, - enumerable: true, - configurable: true -}; -var textUnderlineColor_export_definition; -textUnderlineColor_export_definition = { - set: function (v) { - this._setProperty('text-underline-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('text-underline-color'); - }, - enumerable: true, - configurable: true -}; -var top_export_definition; -top_export_definition = { - set: function (v) { - this._setProperty('top', external_dependency_parsers_0.parseMeasurement(v)); - }, - get: function () { - return this.getPropertyValue('top'); - }, - enumerable: true, - configurable: true -}; -var webkitBorderAfterColor_export_definition; -webkitBorderAfterColor_export_definition = { - set: function (v) { - this._setProperty('-webkit-border-after-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('-webkit-border-after-color'); - }, - enumerable: true, - configurable: true -}; -var webkitBorderBeforeColor_export_definition; -webkitBorderBeforeColor_export_definition = { - set: function (v) { - this._setProperty('-webkit-border-before-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('-webkit-border-before-color'); - }, - enumerable: true, - configurable: true -}; -var webkitBorderEndColor_export_definition; -webkitBorderEndColor_export_definition = { - set: function (v) { - this._setProperty('-webkit-border-end-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('-webkit-border-end-color'); - }, - enumerable: true, - configurable: true -}; -var webkitBorderStartColor_export_definition; -webkitBorderStartColor_export_definition = { - set: function (v) { - this._setProperty('-webkit-border-start-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('-webkit-border-start-color'); - }, - enumerable: true, - configurable: true -}; -var webkitColumnRuleColor_export_definition; -webkitColumnRuleColor_export_definition = { - set: function (v) { - this._setProperty('-webkit-column-rule-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('-webkit-column-rule-color'); - }, - enumerable: true, - configurable: true -}; -var webkitMatchNearestMailBlockquoteColor_export_definition; -webkitMatchNearestMailBlockquoteColor_export_definition = { - set: function (v) { - this._setProperty('-webkit-match-nearest-mail-blockquote-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('-webkit-match-nearest-mail-blockquote-color'); - }, - enumerable: true, - configurable: true -}; -var webkitTapHighlightColor_export_definition; -webkitTapHighlightColor_export_definition = { - set: function (v) { - this._setProperty('-webkit-tap-highlight-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('-webkit-tap-highlight-color'); - }, - enumerable: true, - configurable: true -}; -var webkitTextEmphasisColor_export_definition; -webkitTextEmphasisColor_export_definition = { - set: function (v) { - this._setProperty('-webkit-text-emphasis-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('-webkit-text-emphasis-color'); - }, - enumerable: true, - configurable: true -}; -var webkitTextFillColor_export_definition; -webkitTextFillColor_export_definition = { - set: function (v) { - this._setProperty('-webkit-text-fill-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('-webkit-text-fill-color'); - }, - enumerable: true, - configurable: true -}; -var webkitTextStrokeColor_export_definition; -webkitTextStrokeColor_export_definition = { - set: function (v) { - this._setProperty('-webkit-text-stroke-color', external_dependency_parsers_0.parseColor(v)); - }, - get: function () { - return this.getPropertyValue('-webkit-text-stroke-color'); - }, - enumerable: true, - configurable: true -}; -var width_export_definition; -function width_local_fn_parse(v) { - if (String(v).toLowerCase() === 'auto') { - return 'auto'; - } - if (String(v).toLowerCase() === 'inherit') { - return 'inherit'; - } - return external_dependency_parsers_0.parseMeasurement(v); -} -width_export_definition = { - set: function (v) { - this._setProperty('width', width_local_fn_parse(v)); - }, - get: function () { - return this.getPropertyValue('width'); - }, - enumerable: true, - configurable: true -}; -module.exports = function (prototype) { - Object.defineProperties(prototype, { - azimuth: azimuth_export_definition, - backgroundColor: backgroundColor_export_definition, - "background-color": backgroundColor_export_definition, - backgroundImage: backgroundImage_export_definition, - "background-image": backgroundImage_export_definition, - backgroundRepeat: backgroundRepeat_export_definition, - "background-repeat": backgroundRepeat_export_definition, - backgroundAttachment: backgroundAttachment_export_definition, - "background-attachment": backgroundAttachment_export_definition, - backgroundPosition: backgroundPosition_export_definition, - "background-position": backgroundPosition_export_definition, - background: background_export_definition, - borderWidth: borderWidth_export_definition, - "border-width": borderWidth_export_definition, - borderStyle: borderStyle_export_definition, - "border-style": borderStyle_export_definition, - borderColor: borderColor_export_definition, - "border-color": borderColor_export_definition, - border: border_export_definition, - borderBottomWidth: borderBottomWidth_export_definition, - "border-bottom-width": borderBottomWidth_export_definition, - borderBottomStyle: borderBottomStyle_export_definition, - "border-bottom-style": borderBottomStyle_export_definition, - borderBottomColor: borderBottomColor_export_definition, - "border-bottom-color": borderBottomColor_export_definition, - borderBottom: borderBottom_export_definition, - "border-bottom": borderBottom_export_definition, - borderCollapse: borderCollapse_export_definition, - "border-collapse": borderCollapse_export_definition, - borderLeftWidth: borderLeftWidth_export_definition, - "border-left-width": borderLeftWidth_export_definition, - borderLeftStyle: borderLeftStyle_export_definition, - "border-left-style": borderLeftStyle_export_definition, - borderLeftColor: borderLeftColor_export_definition, - "border-left-color": borderLeftColor_export_definition, - borderLeft: borderLeft_export_definition, - "border-left": borderLeft_export_definition, - borderRightWidth: borderRightWidth_export_definition, - "border-right-width": borderRightWidth_export_definition, - borderRightStyle: borderRightStyle_export_definition, - "border-right-style": borderRightStyle_export_definition, - borderRightColor: borderRightColor_export_definition, - "border-right-color": borderRightColor_export_definition, - borderRight: borderRight_export_definition, - "border-right": borderRight_export_definition, - borderSpacing: borderSpacing_export_definition, - "border-spacing": borderSpacing_export_definition, - borderTopWidth: borderTopWidth_export_definition, - "border-top-width": borderTopWidth_export_definition, - borderTopStyle: borderTopStyle_export_definition, - "border-top-style": borderTopStyle_export_definition, - borderTopColor: borderTopColor_export_definition, - "border-top-color": borderTopColor_export_definition, - borderTop: borderTop_export_definition, - "border-top": borderTop_export_definition, - bottom: bottom_export_definition, - clear: clear_export_definition, - clip: clip_export_definition, - color: color_export_definition, - cssFloat: cssFloat_export_definition, - "css-float": cssFloat_export_definition, - flexGrow: flexGrow_export_definition, - "flex-grow": flexGrow_export_definition, - flexShrink: flexShrink_export_definition, - "flex-shrink": flexShrink_export_definition, - flexBasis: flexBasis_export_definition, - "flex-basis": flexBasis_export_definition, - flex: flex_export_definition, - float: float_export_definition, - floodColor: floodColor_export_definition, - "flood-color": floodColor_export_definition, - fontFamily: fontFamily_export_definition, - "font-family": fontFamily_export_definition, - fontSize: fontSize_export_definition, - "font-size": fontSize_export_definition, - fontStyle: fontStyle_export_definition, - "font-style": fontStyle_export_definition, - fontVariant: fontVariant_export_definition, - "font-variant": fontVariant_export_definition, - fontWeight: fontWeight_export_definition, - "font-weight": fontWeight_export_definition, - lineHeight: lineHeight_export_definition, - "line-height": lineHeight_export_definition, - font: font_export_definition, - height: height_export_definition, - left: left_export_definition, - lightingColor: lightingColor_export_definition, - "lighting-color": lightingColor_export_definition, - margin: margin_export_definition, - marginBottom: marginBottom_export_definition, - "margin-bottom": marginBottom_export_definition, - marginLeft: marginLeft_export_definition, - "margin-left": marginLeft_export_definition, - marginRight: marginRight_export_definition, - "margin-right": marginRight_export_definition, - marginTop: marginTop_export_definition, - "margin-top": marginTop_export_definition, - opacity: opacity_export_definition, - outlineColor: outlineColor_export_definition, - "outline-color": outlineColor_export_definition, - padding: padding_export_definition, - paddingBottom: paddingBottom_export_definition, - "padding-bottom": paddingBottom_export_definition, - paddingLeft: paddingLeft_export_definition, - "padding-left": paddingLeft_export_definition, - paddingRight: paddingRight_export_definition, - "padding-right": paddingRight_export_definition, - paddingTop: paddingTop_export_definition, - "padding-top": paddingTop_export_definition, - right: right_export_definition, - stopColor: stopColor_export_definition, - "stop-color": stopColor_export_definition, - textLineThroughColor: textLineThroughColor_export_definition, - "text-line-through-color": textLineThroughColor_export_definition, - textOverlineColor: textOverlineColor_export_definition, - "text-overline-color": textOverlineColor_export_definition, - textUnderlineColor: textUnderlineColor_export_definition, - "text-underline-color": textUnderlineColor_export_definition, - top: top_export_definition, - webkitBorderAfterColor: webkitBorderAfterColor_export_definition, - "webkit-border-after-color": webkitBorderAfterColor_export_definition, - webkitBorderBeforeColor: webkitBorderBeforeColor_export_definition, - "webkit-border-before-color": webkitBorderBeforeColor_export_definition, - webkitBorderEndColor: webkitBorderEndColor_export_definition, - "webkit-border-end-color": webkitBorderEndColor_export_definition, - webkitBorderStartColor: webkitBorderStartColor_export_definition, - "webkit-border-start-color": webkitBorderStartColor_export_definition, - webkitColumnRuleColor: webkitColumnRuleColor_export_definition, - "webkit-column-rule-color": webkitColumnRuleColor_export_definition, - webkitMatchNearestMailBlockquoteColor: webkitMatchNearestMailBlockquoteColor_export_definition, - "webkit-match-nearest-mail-blockquote-color": webkitMatchNearestMailBlockquoteColor_export_definition, - webkitTapHighlightColor: webkitTapHighlightColor_export_definition, - "webkit-tap-highlight-color": webkitTapHighlightColor_export_definition, - webkitTextEmphasisColor: webkitTextEmphasisColor_export_definition, - "webkit-text-emphasis-color": webkitTextEmphasisColor_export_definition, - webkitTextFillColor: webkitTextFillColor_export_definition, - "webkit-text-fill-color": webkitTextFillColor_export_definition, - webkitTextStrokeColor: webkitTextStrokeColor_export_definition, - "webkit-text-stroke-color": webkitTextStrokeColor_export_definition, - width: width_export_definition - }); -}; - - -/***/ }), - -/***/ 84907: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -const MAX_HUE = 360; -const COLOR_NB = 12; -const MAX_RGB_VALUE = 255; - -// https://www.w3.org/TR/css-color-4/#hsl-to-rgb -exports.hslToRgb = (hue, sat, light) => { - hue = hue % MAX_HUE; - if (hue < 0) { - hue += MAX_HUE; - } - function f(n) { - const k = (n + hue / (MAX_HUE / COLOR_NB)) % COLOR_NB; - const a = sat * Math.min(light, 1 - light); - return light - a * Math.max(-1, Math.min(k - 3, 9 - k, 1)); - } - return [f(0), f(8), f(4)].map((value) => Math.round(value * MAX_RGB_VALUE)); -}; - - -/***/ }), - -/***/ 93322: -/***/ ((module) => { - -"use strict"; - - -module.exports = function getBasicPropertyDescriptor(name) { - return { - set: function (v) { - this._setProperty(name, v); - }, - get: function () { - return this.getPropertyValue(name); - }, - enumerable: true, - configurable: true, - }; -}; - - -/***/ }), - -/***/ 11140: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - CSSRule: (__nccwpck_require__(77813).CSSRule), - CSSGroupingRule: (__nccwpck_require__(4644).CSSGroupingRule) -}; -///CommonJS - - -/** - * @constructor - * @see https://www.w3.org/TR/css-conditional-3/#the-cssconditionrule-interface - */ -CSSOM.CSSConditionRule = function CSSConditionRule() { - CSSOM.CSSGroupingRule.call(this); - this.cssRules = []; -}; - -CSSOM.CSSConditionRule.prototype = new CSSOM.CSSGroupingRule(); -CSSOM.CSSConditionRule.prototype.constructor = CSSOM.CSSConditionRule; -CSSOM.CSSConditionRule.prototype.conditionText = '' -CSSOM.CSSConditionRule.prototype.cssText = '' - -//.CommonJS -exports.CSSConditionRule = CSSOM.CSSConditionRule; -///CommonJS - - -/***/ }), - -/***/ 67294: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - CSSRule: (__nccwpck_require__(77813).CSSRule), - CSSGroupingRule: (__nccwpck_require__(4644).CSSGroupingRule), - CSSConditionRule: (__nccwpck_require__(11140).CSSConditionRule), -}; -///CommonJS - - -/** - * @constructor - * @see https://drafts.csswg.org/css-contain-3/ - * @see https://www.w3.org/TR/css-contain-3/ - */ -CSSOM.CSSContainerRule = function CSSContainerRule() { - CSSOM.CSSConditionRule.call(this); -}; - -CSSOM.CSSContainerRule.prototype = new CSSOM.CSSConditionRule(); -CSSOM.CSSContainerRule.prototype.constructor = CSSOM.CSSContainerRule; -CSSOM.CSSContainerRule.prototype.type = 17; - -Object.defineProperties(CSSOM.CSSContainerRule.prototype, { - "conditionText": { - get: function() { - return this.containerText; - }, - set: function(value) { - this.containerText = value; - }, - configurable: true, - enumerable: true - }, - "cssText": { - get: function() { - var cssTexts = []; - for (var i=0, length=this.cssRules.length; i < length; i++) { - cssTexts.push(this.cssRules[i].cssText); - } - return "@container " + this.containerText + " {" + cssTexts.join("") + "}"; - }, - configurable: true, - enumerable: true - } -}); - - -//.CommonJS -exports.CSSContainerRule = CSSOM.CSSContainerRule; -///CommonJS - - -/***/ }), - -/***/ 72696: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - CSSRule: (__nccwpck_require__(77813).CSSRule), - MatcherList: (__nccwpck_require__(4570).MatcherList) -}; -///CommonJS - - -/** - * @constructor - * @see https://developer.mozilla.org/en/CSS/@-moz-document - */ -CSSOM.CSSDocumentRule = function CSSDocumentRule() { - CSSOM.CSSRule.call(this); - this.matcher = new CSSOM.MatcherList(); - this.cssRules = []; -}; - -CSSOM.CSSDocumentRule.prototype = new CSSOM.CSSRule(); -CSSOM.CSSDocumentRule.prototype.constructor = CSSOM.CSSDocumentRule; -CSSOM.CSSDocumentRule.prototype.type = 10; -//FIXME -//CSSOM.CSSDocumentRule.prototype.insertRule = CSSStyleSheet.prototype.insertRule; -//CSSOM.CSSDocumentRule.prototype.deleteRule = CSSStyleSheet.prototype.deleteRule; - -Object.defineProperty(CSSOM.CSSDocumentRule.prototype, "cssText", { - get: function() { - var cssTexts = []; - for (var i=0, length=this.cssRules.length; i < length; i++) { - cssTexts.push(this.cssRules[i].cssText); - } - return "@-moz-document " + this.matcher.matcherText + " {" + cssTexts.join("") + "}"; - } -}); - - -//.CommonJS -exports.CSSDocumentRule = CSSOM.CSSDocumentRule; -///CommonJS - - -/***/ }), - -/***/ 57865: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - CSSStyleDeclaration: (__nccwpck_require__(80692).CSSStyleDeclaration), - CSSRule: (__nccwpck_require__(77813).CSSRule) -}; -///CommonJS - - -/** - * @constructor - * @see http://dev.w3.org/csswg/cssom/#css-font-face-rule - */ -CSSOM.CSSFontFaceRule = function CSSFontFaceRule() { - CSSOM.CSSRule.call(this); - this.style = new CSSOM.CSSStyleDeclaration(); - this.style.parentRule = this; -}; - -CSSOM.CSSFontFaceRule.prototype = new CSSOM.CSSRule(); -CSSOM.CSSFontFaceRule.prototype.constructor = CSSOM.CSSFontFaceRule; -CSSOM.CSSFontFaceRule.prototype.type = 5; -//FIXME -//CSSOM.CSSFontFaceRule.prototype.insertRule = CSSStyleSheet.prototype.insertRule; -//CSSOM.CSSFontFaceRule.prototype.deleteRule = CSSStyleSheet.prototype.deleteRule; - -// http://www.opensource.apple.com/source/WebCore/WebCore-955.66.1/css/WebKitCSSFontFaceRule.cpp -Object.defineProperty(CSSOM.CSSFontFaceRule.prototype, "cssText", { - get: function() { - return "@font-face {" + this.style.cssText + "}"; - } -}); - - -//.CommonJS -exports.CSSFontFaceRule = CSSOM.CSSFontFaceRule; -///CommonJS - - -/***/ }), - -/***/ 4644: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - CSSRule: (__nccwpck_require__(77813).CSSRule), - parse: (__nccwpck_require__(13759).parse) -}; -///CommonJS - - -/** - * @constructor - * @see https://drafts.csswg.org/cssom/#the-cssgroupingrule-interface - */ -CSSOM.CSSGroupingRule = function CSSGroupingRule() { - CSSOM.CSSRule.call(this); - this.cssRules = []; -}; - -CSSOM.CSSGroupingRule.prototype = new CSSOM.CSSRule(); -CSSOM.CSSGroupingRule.prototype.constructor = CSSOM.CSSGroupingRule; - - -/** - * Used to insert a new CSS rule to a list of CSS rules. - * - * @example - * cssGroupingRule.cssText - * -> "body{margin:0;}" - * cssGroupingRule.insertRule("img{border:none;}", 1) - * -> 1 - * cssGroupingRule.cssText - * -> "body{margin:0;}img{border:none;}" - * - * @param {string} rule - * @param {number} [index] - * @see https://www.w3.org/TR/cssom-1/#dom-cssgroupingrule-insertrule - * @return {number} The index within the grouping rule's collection of the newly inserted rule. - */ - CSSOM.CSSGroupingRule.prototype.insertRule = function insertRule(rule, index) { - if (index < 0 || index > this.cssRules.length) { - throw new RangeError("INDEX_SIZE_ERR"); - } - var cssRule = CSSOM.parse(rule).cssRules[0]; - cssRule.parentRule = this; - this.cssRules.splice(index, 0, cssRule); - return index; -}; - -/** - * Used to delete a rule from the grouping rule. - * - * cssGroupingRule.cssText - * -> "img{border:none;}body{margin:0;}" - * cssGroupingRule.deleteRule(0) - * cssGroupingRule.cssText - * -> "body{margin:0;}" - * - * @param {number} index within the grouping rule's rule list of the rule to remove. - * @see https://www.w3.org/TR/cssom-1/#dom-cssgroupingrule-deleterule - */ - CSSOM.CSSGroupingRule.prototype.deleteRule = function deleteRule(index) { - if (index < 0 || index >= this.cssRules.length) { - throw new RangeError("INDEX_SIZE_ERR"); - } - this.cssRules.splice(index, 1)[0].parentRule = null; -}; - -//.CommonJS -exports.CSSGroupingRule = CSSOM.CSSGroupingRule; -///CommonJS - - -/***/ }), - -/***/ 24455: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - CSSRule: (__nccwpck_require__(77813).CSSRule) -}; -///CommonJS - - -/** - * @constructor - * @see http://www.w3.org/TR/shadow-dom/#host-at-rule - */ -CSSOM.CSSHostRule = function CSSHostRule() { - CSSOM.CSSRule.call(this); - this.cssRules = []; -}; - -CSSOM.CSSHostRule.prototype = new CSSOM.CSSRule(); -CSSOM.CSSHostRule.prototype.constructor = CSSOM.CSSHostRule; -CSSOM.CSSHostRule.prototype.type = 1001; -//FIXME -//CSSOM.CSSHostRule.prototype.insertRule = CSSStyleSheet.prototype.insertRule; -//CSSOM.CSSHostRule.prototype.deleteRule = CSSStyleSheet.prototype.deleteRule; - -Object.defineProperty(CSSOM.CSSHostRule.prototype, "cssText", { - get: function() { - var cssTexts = []; - for (var i=0, length=this.cssRules.length; i < length; i++) { - cssTexts.push(this.cssRules[i].cssText); - } - return "@host {" + cssTexts.join("") + "}"; - } -}); - - -//.CommonJS -exports.CSSHostRule = CSSOM.CSSHostRule; -///CommonJS - - -/***/ }), - -/***/ 99420: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - CSSRule: (__nccwpck_require__(77813).CSSRule), - CSSStyleSheet: (__nccwpck_require__(94883).CSSStyleSheet), - MediaList: (__nccwpck_require__(92044).MediaList) -}; -///CommonJS - - -/** - * @constructor - * @see http://dev.w3.org/csswg/cssom/#cssimportrule - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSImportRule - */ -CSSOM.CSSImportRule = function CSSImportRule() { - CSSOM.CSSRule.call(this); - this.href = ""; - this.media = new CSSOM.MediaList(); - this.styleSheet = new CSSOM.CSSStyleSheet(); -}; - -CSSOM.CSSImportRule.prototype = new CSSOM.CSSRule(); -CSSOM.CSSImportRule.prototype.constructor = CSSOM.CSSImportRule; -CSSOM.CSSImportRule.prototype.type = 3; - -Object.defineProperty(CSSOM.CSSImportRule.prototype, "cssText", { - get: function() { - var mediaText = this.media.mediaText; - return "@import url(" + this.href + ")" + (mediaText ? " " + mediaText : "") + ";"; - }, - set: function(cssText) { - var i = 0; - - /** - * @import url(partial.css) screen, handheld; - * || | - * after-import media - * | - * url - */ - var state = ''; - - var buffer = ''; - var index; - for (var character; (character = cssText.charAt(i)); i++) { - - switch (character) { - case ' ': - case '\t': - case '\r': - case '\n': - case '\f': - if (state === 'after-import') { - state = 'url'; - } else { - buffer += character; - } - break; - - case '@': - if (!state && cssText.indexOf('@import', i) === i) { - state = 'after-import'; - i += 'import'.length; - buffer = ''; - } - break; - - case 'u': - if (state === 'url' && cssText.indexOf('url(', i) === i) { - index = cssText.indexOf(')', i + 1); - if (index === -1) { - throw i + ': ")" not found'; - } - i += 'url('.length; - var url = cssText.slice(i, index); - if (url[0] === url[url.length - 1]) { - if (url[0] === '"' || url[0] === "'") { - url = url.slice(1, -1); - } - } - this.href = url; - i = index; - state = 'media'; - } - break; - - case '"': - if (state === 'url') { - index = cssText.indexOf('"', i + 1); - if (!index) { - throw i + ": '\"' not found"; - } - this.href = cssText.slice(i + 1, index); - i = index; - state = 'media'; - } - break; - - case "'": - if (state === 'url') { - index = cssText.indexOf("'", i + 1); - if (!index) { - throw i + ': "\'" not found'; - } - this.href = cssText.slice(i + 1, index); - i = index; - state = 'media'; - } - break; - - case ';': - if (state === 'media') { - if (buffer) { - this.media.mediaText = buffer.trim(); - } - } - break; - - default: - if (state === 'media') { - buffer += character; - } - break; - } - } - } -}); - - -//.CommonJS -exports.CSSImportRule = CSSOM.CSSImportRule; -///CommonJS - - -/***/ }), - -/***/ 67529: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - CSSRule: (__nccwpck_require__(77813).CSSRule), - CSSStyleDeclaration: (__nccwpck_require__(80692).CSSStyleDeclaration) -}; -///CommonJS - - -/** - * @constructor - * @see http://www.w3.org/TR/css3-animations/#DOM-CSSKeyframeRule - */ -CSSOM.CSSKeyframeRule = function CSSKeyframeRule() { - CSSOM.CSSRule.call(this); - this.keyText = ''; - this.style = new CSSOM.CSSStyleDeclaration(); - this.style.parentRule = this; -}; - -CSSOM.CSSKeyframeRule.prototype = new CSSOM.CSSRule(); -CSSOM.CSSKeyframeRule.prototype.constructor = CSSOM.CSSKeyframeRule; -CSSOM.CSSKeyframeRule.prototype.type = 8; -//FIXME -//CSSOM.CSSKeyframeRule.prototype.insertRule = CSSStyleSheet.prototype.insertRule; -//CSSOM.CSSKeyframeRule.prototype.deleteRule = CSSStyleSheet.prototype.deleteRule; - -// http://www.opensource.apple.com/source/WebCore/WebCore-955.66.1/css/WebKitCSSKeyframeRule.cpp -Object.defineProperty(CSSOM.CSSKeyframeRule.prototype, "cssText", { - get: function() { - return this.keyText + " {" + this.style.cssText + "} "; - } -}); - - -//.CommonJS -exports.CSSKeyframeRule = CSSOM.CSSKeyframeRule; -///CommonJS - - -/***/ }), - -/***/ 46212: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - CSSRule: (__nccwpck_require__(77813).CSSRule) -}; -///CommonJS - - -/** - * @constructor - * @see http://www.w3.org/TR/css3-animations/#DOM-CSSKeyframesRule - */ -CSSOM.CSSKeyframesRule = function CSSKeyframesRule() { - CSSOM.CSSRule.call(this); - this.name = ''; - this.cssRules = []; -}; - -CSSOM.CSSKeyframesRule.prototype = new CSSOM.CSSRule(); -CSSOM.CSSKeyframesRule.prototype.constructor = CSSOM.CSSKeyframesRule; -CSSOM.CSSKeyframesRule.prototype.type = 7; -//FIXME -//CSSOM.CSSKeyframesRule.prototype.insertRule = CSSStyleSheet.prototype.insertRule; -//CSSOM.CSSKeyframesRule.prototype.deleteRule = CSSStyleSheet.prototype.deleteRule; - -// http://www.opensource.apple.com/source/WebCore/WebCore-955.66.1/css/WebKitCSSKeyframesRule.cpp -Object.defineProperty(CSSOM.CSSKeyframesRule.prototype, "cssText", { - get: function() { - var cssTexts = []; - for (var i=0, length=this.cssRules.length; i < length; i++) { - cssTexts.push(" " + this.cssRules[i].cssText); - } - return "@" + (this._vendorPrefix || '') + "keyframes " + this.name + " { \n" + cssTexts.join("\n") + "\n}"; - } -}); - - -//.CommonJS -exports.CSSKeyframesRule = CSSOM.CSSKeyframesRule; -///CommonJS - - -/***/ }), - -/***/ 11049: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - CSSRule: (__nccwpck_require__(77813).CSSRule), - CSSGroupingRule: (__nccwpck_require__(4644).CSSGroupingRule), - CSSConditionRule: (__nccwpck_require__(11140).CSSConditionRule), - MediaList: (__nccwpck_require__(92044).MediaList) -}; -///CommonJS - - -/** - * @constructor - * @see http://dev.w3.org/csswg/cssom/#cssmediarule - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSMediaRule - */ -CSSOM.CSSMediaRule = function CSSMediaRule() { - CSSOM.CSSConditionRule.call(this); - this.media = new CSSOM.MediaList(); -}; - -CSSOM.CSSMediaRule.prototype = new CSSOM.CSSConditionRule(); -CSSOM.CSSMediaRule.prototype.constructor = CSSOM.CSSMediaRule; -CSSOM.CSSMediaRule.prototype.type = 4; - -// https://opensource.apple.com/source/WebCore/WebCore-7611.1.21.161.3/css/CSSMediaRule.cpp -Object.defineProperties(CSSOM.CSSMediaRule.prototype, { - "conditionText": { - get: function() { - return this.media.mediaText; - }, - set: function(value) { - this.media.mediaText = value; - }, - configurable: true, - enumerable: true - }, - "cssText": { - get: function() { - var cssTexts = []; - for (var i=0, length=this.cssRules.length; i < length; i++) { - cssTexts.push(this.cssRules[i].cssText); - } - return "@media " + this.media.mediaText + " {" + cssTexts.join("") + "}"; - }, - configurable: true, - enumerable: true - } -}); - - -//.CommonJS -exports.CSSMediaRule = CSSOM.CSSMediaRule; -///CommonJS - - -/***/ }), - -/***/ 77813: -/***/ ((__unused_webpack_module, exports) => { - -//.CommonJS -var CSSOM = {}; -///CommonJS - - -/** - * @constructor - * @see http://dev.w3.org/csswg/cssom/#the-cssrule-interface - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSRule - */ -CSSOM.CSSRule = function CSSRule() { - this.parentRule = null; - this.parentStyleSheet = null; -}; - -CSSOM.CSSRule.UNKNOWN_RULE = 0; // obsolete -CSSOM.CSSRule.STYLE_RULE = 1; -CSSOM.CSSRule.CHARSET_RULE = 2; // obsolete -CSSOM.CSSRule.IMPORT_RULE = 3; -CSSOM.CSSRule.MEDIA_RULE = 4; -CSSOM.CSSRule.FONT_FACE_RULE = 5; -CSSOM.CSSRule.PAGE_RULE = 6; -CSSOM.CSSRule.KEYFRAMES_RULE = 7; -CSSOM.CSSRule.KEYFRAME_RULE = 8; -CSSOM.CSSRule.MARGIN_RULE = 9; -CSSOM.CSSRule.NAMESPACE_RULE = 10; -CSSOM.CSSRule.COUNTER_STYLE_RULE = 11; -CSSOM.CSSRule.SUPPORTS_RULE = 12; -CSSOM.CSSRule.DOCUMENT_RULE = 13; -CSSOM.CSSRule.FONT_FEATURE_VALUES_RULE = 14; -CSSOM.CSSRule.VIEWPORT_RULE = 15; -CSSOM.CSSRule.REGION_STYLE_RULE = 16; -CSSOM.CSSRule.CONTAINER_RULE = 17; -CSSOM.CSSRule.STARTING_STYLE_RULE = 1002; - - -CSSOM.CSSRule.prototype = { - constructor: CSSOM.CSSRule - //FIXME -}; - - -//.CommonJS -exports.CSSRule = CSSOM.CSSRule; -///CommonJS - - -/***/ }), - -/***/ 30192: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - CSSRule: (__nccwpck_require__(77813).CSSRule) -}; -///CommonJS - - -/** - * @constructor - * @see http://www.w3.org/TR/shadow-dom/#host-at-rule - */ -CSSOM.CSSStartingStyleRule = function CSSStartingStyleRule() { - CSSOM.CSSRule.call(this); - this.cssRules = []; -}; - -CSSOM.CSSStartingStyleRule.prototype = new CSSOM.CSSRule(); -CSSOM.CSSStartingStyleRule.prototype.constructor = CSSOM.CSSStartingStyleRule; -CSSOM.CSSStartingStyleRule.prototype.type = 1002; -//FIXME -//CSSOM.CSSStartingStyleRule.prototype.insertRule = CSSStyleSheet.prototype.insertRule; -//CSSOM.CSSStartingStyleRule.prototype.deleteRule = CSSStyleSheet.prototype.deleteRule; - -Object.defineProperty(CSSOM.CSSStartingStyleRule.prototype, "cssText", { - get: function() { - var cssTexts = []; - for (var i=0, length=this.cssRules.length; i < length; i++) { - cssTexts.push(this.cssRules[i].cssText); - } - return "@starting-style {" + cssTexts.join("") + "}"; - } -}); - - -//.CommonJS -exports.CSSStartingStyleRule = CSSOM.CSSStartingStyleRule; -///CommonJS - - -/***/ }), - -/***/ 80692: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = {}; -///CommonJS - - -/** - * @constructor - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleDeclaration - */ -CSSOM.CSSStyleDeclaration = function CSSStyleDeclaration(){ - this.length = 0; - this.parentRule = null; - - // NON-STANDARD - this._importants = {}; -}; - - -CSSOM.CSSStyleDeclaration.prototype = { - - constructor: CSSOM.CSSStyleDeclaration, - - /** - * - * @param {string} name - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleDeclaration-getPropertyValue - * @return {string} the value of the property if it has been explicitly set for this declaration block. - * Returns the empty string if the property has not been set. - */ - getPropertyValue: function(name) { - return this[name] || ""; - }, - - /** - * - * @param {string} name - * @param {string} value - * @param {string} [priority=null] "important" or null - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleDeclaration-setProperty - */ - setProperty: function(name, value, priority) { - if (this[name]) { - // Property already exist. Overwrite it. - var index = Array.prototype.indexOf.call(this, name); - if (index < 0) { - this[this.length] = name; - this.length++; - } - } else { - // New property. - this[this.length] = name; - this.length++; - } - this[name] = value + ""; - this._importants[name] = priority; - }, - - /** - * - * @param {string} name - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleDeclaration-removeProperty - * @return {string} the value of the property if it has been explicitly set for this declaration block. - * Returns the empty string if the property has not been set or the property name does not correspond to a known CSS property. - */ - removeProperty: function(name) { - if (!(name in this)) { - return ""; - } - var index = Array.prototype.indexOf.call(this, name); - if (index < 0) { - return ""; - } - var prevValue = this[name]; - this[name] = ""; - - // That's what WebKit and Opera do - Array.prototype.splice.call(this, index, 1); - - // That's what Firefox does - //this[index] = "" - - return prevValue; - }, - - getPropertyCSSValue: function() { - //FIXME - }, - - /** - * - * @param {String} name - */ - getPropertyPriority: function(name) { - return this._importants[name] || ""; - }, - - - /** - * element.style.overflow = "auto" - * element.style.getPropertyShorthand("overflow-x") - * -> "overflow" - */ - getPropertyShorthand: function() { - //FIXME - }, - - isPropertyImplicit: function() { - //FIXME - }, - - // Doesn't work in IE < 9 - get cssText(){ - var properties = []; - for (var i=0, length=this.length; i < length; ++i) { - var name = this[i]; - var value = this.getPropertyValue(name); - var priority = this.getPropertyPriority(name); - if (priority) { - priority = " !" + priority; - } - properties[i] = name + ": " + value + priority + ";"; - } - return properties.join(" "); - }, - - set cssText(text){ - var i, name; - for (i = this.length; i--;) { - name = this[i]; - this[name] = ""; - } - Array.prototype.splice.call(this, 0, this.length); - this._importants = {}; - - var dummyRule = CSSOM.parse('#bogus{' + text + '}').cssRules[0].style; - var length = dummyRule.length; - for (i = 0; i < length; ++i) { - name = dummyRule[i]; - this.setProperty(dummyRule[i], dummyRule.getPropertyValue(name), dummyRule.getPropertyPriority(name)); - } - } -}; - - -//.CommonJS -exports.CSSStyleDeclaration = CSSOM.CSSStyleDeclaration; -CSSOM.parse = (__nccwpck_require__(13759).parse); // Cannot be included sooner due to the mutual dependency between parse.js and CSSStyleDeclaration.js -///CommonJS - - -/***/ }), - -/***/ 59060: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - CSSStyleDeclaration: (__nccwpck_require__(80692).CSSStyleDeclaration), - CSSRule: (__nccwpck_require__(77813).CSSRule) -}; -///CommonJS - - -/** - * @constructor - * @see http://dev.w3.org/csswg/cssom/#cssstylerule - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleRule - */ -CSSOM.CSSStyleRule = function CSSStyleRule() { - CSSOM.CSSRule.call(this); - this.selectorText = ""; - this.style = new CSSOM.CSSStyleDeclaration(); - this.style.parentRule = this; -}; - -CSSOM.CSSStyleRule.prototype = new CSSOM.CSSRule(); -CSSOM.CSSStyleRule.prototype.constructor = CSSOM.CSSStyleRule; -CSSOM.CSSStyleRule.prototype.type = 1; - -Object.defineProperty(CSSOM.CSSStyleRule.prototype, "cssText", { - get: function() { - var text; - if (this.selectorText) { - text = this.selectorText + " {" + this.style.cssText + "}"; - } else { - text = ""; - } - return text; - }, - set: function(cssText) { - var rule = CSSOM.CSSStyleRule.parse(cssText); - this.style = rule.style; - this.selectorText = rule.selectorText; - } -}); - - -/** - * NON-STANDARD - * lightweight version of parse.js. - * @param {string} ruleText - * @return CSSStyleRule - */ -CSSOM.CSSStyleRule.parse = function(ruleText) { - var i = 0; - var state = "selector"; - var index; - var j = i; - var buffer = ""; - - var SIGNIFICANT_WHITESPACE = { - "selector": true, - "value": true - }; - - var styleRule = new CSSOM.CSSStyleRule(); - var name, priority=""; - - for (var character; (character = ruleText.charAt(i)); i++) { - - switch (character) { - - case " ": - case "\t": - case "\r": - case "\n": - case "\f": - if (SIGNIFICANT_WHITESPACE[state]) { - // Squash 2 or more white-spaces in the row into 1 - switch (ruleText.charAt(i - 1)) { - case " ": - case "\t": - case "\r": - case "\n": - case "\f": - break; - default: - buffer += " "; - break; - } - } - break; - - // String - case '"': - j = i + 1; - index = ruleText.indexOf('"', j) + 1; - if (!index) { - throw '" is missing'; - } - buffer += ruleText.slice(i, index); - i = index - 1; - break; - - case "'": - j = i + 1; - index = ruleText.indexOf("'", j) + 1; - if (!index) { - throw "' is missing"; - } - buffer += ruleText.slice(i, index); - i = index - 1; - break; - - // Comment - case "/": - if (ruleText.charAt(i + 1) === "*") { - i += 2; - index = ruleText.indexOf("*/", i); - if (index === -1) { - throw new SyntaxError("Missing */"); - } else { - i = index + 1; - } - } else { - buffer += character; - } - break; - - case "{": - if (state === "selector") { - styleRule.selectorText = buffer.trim(); - buffer = ""; - state = "name"; - } - break; - - case ":": - if (state === "name") { - name = buffer.trim(); - buffer = ""; - state = "value"; - } else { - buffer += character; - } - break; - - case "!": - if (state === "value" && ruleText.indexOf("!important", i) === i) { - priority = "important"; - i += "important".length; - } else { - buffer += character; - } - break; - - case ";": - if (state === "value") { - styleRule.style.setProperty(name, buffer.trim(), priority); - priority = ""; - buffer = ""; - state = "name"; - } else { - buffer += character; - } - break; - - case "}": - if (state === "value") { - styleRule.style.setProperty(name, buffer.trim(), priority); - priority = ""; - buffer = ""; - } else if (state === "name") { - break; - } else { - buffer += character; - } - state = "selector"; - break; - - default: - buffer += character; - break; - - } - } - - return styleRule; - -}; - - -//.CommonJS -exports.CSSStyleRule = CSSOM.CSSStyleRule; -///CommonJS - - -/***/ }), - -/***/ 94883: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - StyleSheet: (__nccwpck_require__(84742).StyleSheet), - CSSStyleRule: (__nccwpck_require__(59060).CSSStyleRule) -}; -///CommonJS - - -/** - * @constructor - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleSheet - */ -CSSOM.CSSStyleSheet = function CSSStyleSheet() { - CSSOM.StyleSheet.call(this); - this.cssRules = []; -}; - - -CSSOM.CSSStyleSheet.prototype = new CSSOM.StyleSheet(); -CSSOM.CSSStyleSheet.prototype.constructor = CSSOM.CSSStyleSheet; - - -/** - * Used to insert a new rule into the style sheet. The new rule now becomes part of the cascade. - * - * sheet = new Sheet("body {margin: 0}") - * sheet.toString() - * -> "body{margin:0;}" - * sheet.insertRule("img {border: none}", 0) - * -> 0 - * sheet.toString() - * -> "img{border:none;}body{margin:0;}" - * - * @param {string} rule - * @param {number} index - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleSheet-insertRule - * @return {number} The index within the style sheet's rule collection of the newly inserted rule. - */ -CSSOM.CSSStyleSheet.prototype.insertRule = function(rule, index) { - if (index < 0 || index > this.cssRules.length) { - throw new RangeError("INDEX_SIZE_ERR"); - } - var cssRule = CSSOM.parse(rule).cssRules[0]; - cssRule.parentStyleSheet = this; - this.cssRules.splice(index, 0, cssRule); - return index; -}; - - -/** - * Used to delete a rule from the style sheet. - * - * sheet = new Sheet("img{border:none} body{margin:0}") - * sheet.toString() - * -> "img{border:none;}body{margin:0;}" - * sheet.deleteRule(0) - * sheet.toString() - * -> "body{margin:0;}" - * - * @param {number} index within the style sheet's rule list of the rule to remove. - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleSheet-deleteRule - */ -CSSOM.CSSStyleSheet.prototype.deleteRule = function(index) { - if (index < 0 || index >= this.cssRules.length) { - throw new RangeError("INDEX_SIZE_ERR"); - } - this.cssRules.splice(index, 1); -}; - - -/** - * NON-STANDARD - * @return {string} serialize stylesheet - */ -CSSOM.CSSStyleSheet.prototype.toString = function() { - var result = ""; - var rules = this.cssRules; - for (var i=0; i { - -//.CommonJS -var CSSOM = { - CSSRule: (__nccwpck_require__(77813).CSSRule), - CSSGroupingRule: (__nccwpck_require__(4644).CSSGroupingRule), - CSSConditionRule: (__nccwpck_require__(11140).CSSConditionRule) -}; -///CommonJS - - -/** - * @constructor - * @see https://drafts.csswg.org/css-conditional-3/#the-csssupportsrule-interface - */ -CSSOM.CSSSupportsRule = function CSSSupportsRule() { - CSSOM.CSSConditionRule.call(this); -}; - -CSSOM.CSSSupportsRule.prototype = new CSSOM.CSSConditionRule(); -CSSOM.CSSSupportsRule.prototype.constructor = CSSOM.CSSSupportsRule; -CSSOM.CSSSupportsRule.prototype.type = 12; - -Object.defineProperty(CSSOM.CSSSupportsRule.prototype, "cssText", { - get: function() { - var cssTexts = []; - - for (var i = 0, length = this.cssRules.length; i < length; i++) { - cssTexts.push(this.cssRules[i].cssText); - } - - return "@supports " + this.conditionText + " {" + cssTexts.join("") + "}"; - } -}); - -//.CommonJS -exports.CSSSupportsRule = CSSOM.CSSSupportsRule; -///CommonJS - - -/***/ }), - -/***/ 57366: -/***/ ((__unused_webpack_module, exports) => { - -//.CommonJS -var CSSOM = {}; -///CommonJS - - -/** - * @constructor - * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSValue - * - * TODO: add if needed - */ -CSSOM.CSSValue = function CSSValue() { -}; - -CSSOM.CSSValue.prototype = { - constructor: CSSOM.CSSValue, - - // @see: http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSValue - set cssText(text) { - var name = this._getConstructorName(); - - throw new Error('DOMException: property "cssText" of "' + name + '" is readonly and can not be replaced with "' + text + '"!'); - }, - - get cssText() { - var name = this._getConstructorName(); - - throw new Error('getter "cssText" of "' + name + '" is not implemented!'); - }, - - _getConstructorName: function() { - var s = this.constructor.toString(), - c = s.match(/function\s([^\(]+)/), - name = c[1]; - - return name; - } -}; - - -//.CommonJS -exports.CSSValue = CSSOM.CSSValue; -///CommonJS - - -/***/ }), - -/***/ 73648: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - CSSValue: (__nccwpck_require__(57366).CSSValue) -}; -///CommonJS - - -/** - * @constructor - * @see http://msdn.microsoft.com/en-us/library/ms537634(v=vs.85).aspx - * - */ -CSSOM.CSSValueExpression = function CSSValueExpression(token, idx) { - this._token = token; - this._idx = idx; -}; - -CSSOM.CSSValueExpression.prototype = new CSSOM.CSSValue(); -CSSOM.CSSValueExpression.prototype.constructor = CSSOM.CSSValueExpression; - -/** - * parse css expression() value - * - * @return {Object} - * - error: - * or - * - idx: - * - expression: - * - * Example: - * - * .selector { - * zoom: expression(documentElement.clientWidth > 1000 ? '1000px' : 'auto'); - * } - */ -CSSOM.CSSValueExpression.prototype.parse = function() { - var token = this._token, - idx = this._idx; - - var character = '', - expression = '', - error = '', - info, - paren = []; - - - for (; ; ++idx) { - character = token.charAt(idx); - - // end of token - if (character === '') { - error = 'css expression error: unfinished expression!'; - break; - } - - switch(character) { - case '(': - paren.push(character); - expression += character; - break; - - case ')': - paren.pop(character); - expression += character; - break; - - case '/': - if ((info = this._parseJSComment(token, idx))) { // comment? - if (info.error) { - error = 'css expression error: unfinished comment in expression!'; - } else { - idx = info.idx; - // ignore the comment - } - } else if ((info = this._parseJSRexExp(token, idx))) { // regexp - idx = info.idx; - expression += info.text; - } else { // other - expression += character; - } - break; - - case "'": - case '"': - info = this._parseJSString(token, idx, character); - if (info) { // string - idx = info.idx; - expression += info.text; - } else { - expression += character; - } - break; - - default: - expression += character; - break; - } - - if (error) { - break; - } - - // end of expression - if (paren.length === 0) { - break; - } - } - - var ret; - if (error) { - ret = { - error: error - }; - } else { - ret = { - idx: idx, - expression: expression - }; - } - - return ret; -}; - - -/** - * - * @return {Object|false} - * - idx: - * - text: - * or - * - error: - * or - * false - * - */ -CSSOM.CSSValueExpression.prototype._parseJSComment = function(token, idx) { - var nextChar = token.charAt(idx + 1), - text; - - if (nextChar === '/' || nextChar === '*') { - var startIdx = idx, - endIdx, - commentEndChar; - - if (nextChar === '/') { // line comment - commentEndChar = '\n'; - } else if (nextChar === '*') { // block comment - commentEndChar = '*/'; - } - - endIdx = token.indexOf(commentEndChar, startIdx + 1 + 1); - if (endIdx !== -1) { - endIdx = endIdx + commentEndChar.length - 1; - text = token.substring(idx, endIdx + 1); - return { - idx: endIdx, - text: text - }; - } else { - var error = 'css expression error: unfinished comment in expression!'; - return { - error: error - }; - } - } else { - return false; - } -}; - - -/** - * - * @return {Object|false} - * - idx: - * - text: - * or - * false - * - */ -CSSOM.CSSValueExpression.prototype._parseJSString = function(token, idx, sep) { - var endIdx = this._findMatchedIdx(token, idx, sep), - text; - - if (endIdx === -1) { - return false; - } else { - text = token.substring(idx, endIdx + sep.length); - - return { - idx: endIdx, - text: text - }; - } -}; - - -/** - * parse regexp in css expression - * - * @return {Object|false} - * - idx: - * - regExp: - * or - * false - */ - -/* - -all legal RegExp - -/a/ -(/a/) -[/a/] -[12, /a/] - -!/a/ - -+/a/ --/a/ -* /a/ -/ /a/ -%/a/ - -===/a/ -!==/a/ -==/a/ -!=/a/ ->/a/ ->=/a/ ->/a/ ->>>/a/ - -&&/a/ -||/a/ -?/a/ -=/a/ -,/a/ - - delete /a/ - in /a/ -instanceof /a/ - new /a/ - typeof /a/ - void /a/ - -*/ -CSSOM.CSSValueExpression.prototype._parseJSRexExp = function(token, idx) { - var before = token.substring(0, idx).replace(/\s+$/, ""), - legalRegx = [ - /^$/, - /\($/, - /\[$/, - /\!$/, - /\+$/, - /\-$/, - /\*$/, - /\/\s+/, - /\%$/, - /\=$/, - /\>$/, - /<$/, - /\&$/, - /\|$/, - /\^$/, - /\~$/, - /\?$/, - /\,$/, - /delete$/, - /in$/, - /instanceof$/, - /new$/, - /typeof$/, - /void$/ - ]; - - var isLegal = legalRegx.some(function(reg) { - return reg.test(before); - }); - - if (!isLegal) { - return false; - } else { - var sep = '/'; - - // same logic as string - return this._parseJSString(token, idx, sep); - } -}; - - -/** - * - * find next sep(same line) index in `token` - * - * @return {Number} - * - */ -CSSOM.CSSValueExpression.prototype._findMatchedIdx = function(token, idx, sep) { - var startIdx = idx, - endIdx; - - var NOT_FOUND = -1; - - while(true) { - endIdx = token.indexOf(sep, startIdx + 1); - - if (endIdx === -1) { // not found - endIdx = NOT_FOUND; - break; - } else { - var text = token.substring(idx + 1, endIdx), - matched = text.match(/\\+$/); - if (!matched || matched[0] % 2 === 0) { // not escaped - break; - } else { - startIdx = endIdx; - } - } - } - - // boundary must be in the same line(js sting or regexp) - var nextNewLineIdx = token.indexOf('\n', idx + 1); - if (nextNewLineIdx < endIdx) { - endIdx = NOT_FOUND; - } - - - return endIdx; -}; - - - - -//.CommonJS -exports.CSSValueExpression = CSSOM.CSSValueExpression; -///CommonJS - - -/***/ }), - -/***/ 4570: -/***/ ((__unused_webpack_module, exports) => { - -//.CommonJS -var CSSOM = {}; -///CommonJS - - -/** - * @constructor - * @see https://developer.mozilla.org/en/CSS/@-moz-document - */ -CSSOM.MatcherList = function MatcherList(){ - this.length = 0; -}; - -CSSOM.MatcherList.prototype = { - - constructor: CSSOM.MatcherList, - - /** - * @return {string} - */ - get matcherText() { - return Array.prototype.join.call(this, ", "); - }, - - /** - * @param {string} value - */ - set matcherText(value) { - // just a temporary solution, actually it may be wrong by just split the value with ',', because a url can include ','. - var values = value.split(","); - var length = this.length = values.length; - for (var i=0; i { - -//.CommonJS -var CSSOM = {}; -///CommonJS - - -/** - * @constructor - * @see http://dev.w3.org/csswg/cssom/#the-medialist-interface - */ -CSSOM.MediaList = function MediaList(){ - this.length = 0; -}; - -CSSOM.MediaList.prototype = { - - constructor: CSSOM.MediaList, - - /** - * @return {string} - */ - get mediaText() { - return Array.prototype.join.call(this, ", "); - }, - - /** - * @param {string} value - */ - set mediaText(value) { - var values = value.split(","); - var length = this.length = values.length; - for (var i=0; i { - -//.CommonJS -var CSSOM = {}; -///CommonJS - - -/** - * @constructor - * @see http://dev.w3.org/csswg/cssom/#the-stylesheet-interface - */ -CSSOM.StyleSheet = function StyleSheet() { - this.parentStyleSheet = null; -}; - - -//.CommonJS -exports.StyleSheet = CSSOM.StyleSheet; -///CommonJS - - -/***/ }), - -/***/ 96849: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = { - CSSStyleSheet: (__nccwpck_require__(94883).CSSStyleSheet), - CSSRule: (__nccwpck_require__(77813).CSSRule), - CSSStyleRule: (__nccwpck_require__(59060).CSSStyleRule), - CSSGroupingRule: (__nccwpck_require__(4644).CSSGroupingRule), - CSSConditionRule: (__nccwpck_require__(11140).CSSConditionRule), - CSSMediaRule: (__nccwpck_require__(11049).CSSMediaRule), - CSSContainerRule: (__nccwpck_require__(67294).CSSContainerRule), - CSSSupportsRule: (__nccwpck_require__(90673).CSSSupportsRule), - CSSStyleDeclaration: (__nccwpck_require__(80692).CSSStyleDeclaration), - CSSKeyframeRule: (__nccwpck_require__(67529).CSSKeyframeRule), - CSSKeyframesRule: (__nccwpck_require__(46212).CSSKeyframesRule) -}; -///CommonJS - - -/** - * Produces a deep copy of stylesheet — the instance variables of stylesheet are copied recursively. - * @param {CSSStyleSheet|CSSOM.CSSStyleSheet} stylesheet - * @nosideeffects - * @return {CSSOM.CSSStyleSheet} - */ -CSSOM.clone = function clone(stylesheet) { - - var cloned = new CSSOM.CSSStyleSheet(); - - var rules = stylesheet.cssRules; - if (!rules) { - return cloned; - } - - for (var i = 0, rulesLength = rules.length; i < rulesLength; i++) { - var rule = rules[i]; - var ruleClone = cloned.cssRules[i] = new rule.constructor(); - - var style = rule.style; - if (style) { - var styleClone = ruleClone.style = new CSSOM.CSSStyleDeclaration(); - for (var j = 0, styleLength = style.length; j < styleLength; j++) { - var name = styleClone[j] = style[j]; - styleClone[name] = style[name]; - styleClone._importants[name] = style.getPropertyPriority(name); - } - styleClone.length = style.length; - } - - if (rule.hasOwnProperty('keyText')) { - ruleClone.keyText = rule.keyText; - } - - if (rule.hasOwnProperty('selectorText')) { - ruleClone.selectorText = rule.selectorText; - } - - if (rule.hasOwnProperty('mediaText')) { - ruleClone.mediaText = rule.mediaText; - } - - if (rule.hasOwnProperty('conditionText')) { - ruleClone.conditionText = rule.conditionText; - } - - if (rule.hasOwnProperty('cssRules')) { - ruleClone.cssRules = clone(rule).cssRules; - } - } - - return cloned; - -}; - -//.CommonJS -exports.clone = CSSOM.clone; -///CommonJS - - -/***/ }), - -/***/ 97900: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -exports.CSSStyleDeclaration = __nccwpck_require__(80692).CSSStyleDeclaration; -exports.CSSRule = __nccwpck_require__(77813).CSSRule; -exports.CSSGroupingRule = __nccwpck_require__(4644).CSSGroupingRule; -exports.CSSConditionRule = __nccwpck_require__(11140).CSSConditionRule; -exports.CSSStyleRule = __nccwpck_require__(59060).CSSStyleRule; -exports.MediaList = __nccwpck_require__(92044).MediaList; -exports.CSSMediaRule = __nccwpck_require__(11049).CSSMediaRule; -exports.CSSContainerRule = __nccwpck_require__(67294).CSSContainerRule; -exports.CSSSupportsRule = __nccwpck_require__(90673).CSSSupportsRule; -exports.CSSImportRule = __nccwpck_require__(99420).CSSImportRule; -exports.CSSFontFaceRule = __nccwpck_require__(57865).CSSFontFaceRule; -exports.CSSHostRule = __nccwpck_require__(24455).CSSHostRule; -exports.CSSStartingStyleRule = __nccwpck_require__(30192).CSSStartingStyleRule; -exports.StyleSheet = __nccwpck_require__(84742).StyleSheet; -exports.CSSStyleSheet = __nccwpck_require__(94883).CSSStyleSheet; -exports.CSSKeyframesRule = __nccwpck_require__(46212).CSSKeyframesRule; -exports.CSSKeyframeRule = __nccwpck_require__(67529).CSSKeyframeRule; -exports.MatcherList = __nccwpck_require__(4570).MatcherList; -exports.CSSDocumentRule = __nccwpck_require__(72696).CSSDocumentRule; -exports.CSSValue = __nccwpck_require__(57366).CSSValue; -exports.CSSValueExpression = __nccwpck_require__(73648).CSSValueExpression; -exports.parse = __nccwpck_require__(13759).parse; -exports.clone = __nccwpck_require__(96849).clone; - - -/***/ }), - -/***/ 13759: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -//.CommonJS -var CSSOM = {}; -///CommonJS - - -/** - * @param {string} token - */ -CSSOM.parse = function parse(token) { - - var i = 0; - - /** - "before-selector" or - "selector" or - "atRule" or - "atBlock" or - "conditionBlock" or - "before-name" or - "name" or - "before-value" or - "value" - */ - var state = "before-selector"; - - var index; - var buffer = ""; - var valueParenthesisDepth = 0; - - var SIGNIFICANT_WHITESPACE = { - "selector": true, - "value": true, - "value-parenthesis": true, - "atRule": true, - "importRule-begin": true, - "importRule": true, - "atBlock": true, - "containerBlock": true, - "conditionBlock": true, - 'documentRule-begin': true - }; - - var styleSheet = new CSSOM.CSSStyleSheet(); - - // @type CSSStyleSheet|CSSMediaRule|CSSContainerRule|CSSSupportsRule|CSSFontFaceRule|CSSKeyframesRule|CSSDocumentRule - var currentScope = styleSheet; - - // @type CSSMediaRule|CSSContainerRule|CSSSupportsRule|CSSKeyframesRule|CSSDocumentRule - var parentRule; - - var ancestorRules = []; - var hasAncestors = false; - var prevScope; - - var name, priority="", styleRule, mediaRule, containerRule, supportsRule, importRule, fontFaceRule, keyframesRule, documentRule, hostRule, startingStyleRule; - - var atKeyframesRegExp = /@(-(?:\w+-)+)?keyframes/g; - - var parseError = function(message) { - var lines = token.substring(0, i).split('\n'); - var lineCount = lines.length; - var charCount = lines.pop().length + 1; - var error = new Error(message + ' (line ' + lineCount + ', char ' + charCount + ')'); - error.line = lineCount; - /* jshint sub : true */ - error['char'] = charCount; - error.styleSheet = styleSheet; - throw error; - }; - - for (var character; (character = token.charAt(i)); i++) { - - switch (character) { - - case " ": - case "\t": - case "\r": - case "\n": - case "\f": - if (SIGNIFICANT_WHITESPACE[state]) { - buffer += character; - } - break; - - // String - case '"': - index = i + 1; - do { - index = token.indexOf('"', index) + 1; - if (!index) { - parseError('Unmatched "'); - } - } while (token[index - 2] === '\\'); - buffer += token.slice(i, index); - i = index - 1; - switch (state) { - case 'before-value': - state = 'value'; - break; - case 'importRule-begin': - state = 'importRule'; - break; - } - break; - - case "'": - index = i + 1; - do { - index = token.indexOf("'", index) + 1; - if (!index) { - parseError("Unmatched '"); - } - } while (token[index - 2] === '\\'); - buffer += token.slice(i, index); - i = index - 1; - switch (state) { - case 'before-value': - state = 'value'; - break; - case 'importRule-begin': - state = 'importRule'; - break; - } - break; - - // Comment - case "/": - if (token.charAt(i + 1) === "*") { - i += 2; - index = token.indexOf("*/", i); - if (index === -1) { - parseError("Missing */"); - } else { - i = index + 1; - } - } else { - buffer += character; - } - if (state === "importRule-begin") { - buffer += " "; - state = "importRule"; - } - break; - - // At-rule - case "@": - if (token.indexOf("@-moz-document", i) === i) { - state = "documentRule-begin"; - documentRule = new CSSOM.CSSDocumentRule(); - documentRule.__starts = i; - i += "-moz-document".length; - buffer = ""; - break; - } else if (token.indexOf("@media", i) === i) { - state = "atBlock"; - mediaRule = new CSSOM.CSSMediaRule(); - mediaRule.__starts = i; - i += "media".length; - buffer = ""; - break; - } else if (token.indexOf("@container", i) === i) { - state = "containerBlock"; - containerRule = new CSSOM.CSSContainerRule(); - containerRule.__starts = i; - i += "container".length; - buffer = ""; - break; - } else if (token.indexOf("@supports", i) === i) { - state = "conditionBlock"; - supportsRule = new CSSOM.CSSSupportsRule(); - supportsRule.__starts = i; - i += "supports".length; - buffer = ""; - break; - } else if (token.indexOf("@host", i) === i) { - state = "hostRule-begin"; - i += "host".length; - hostRule = new CSSOM.CSSHostRule(); - hostRule.__starts = i; - buffer = ""; - break; - } else if (token.indexOf("@starting-style", i) === i) { - state = "startingStyleRule-begin"; - i += "starting-style".length; - startingStyleRule = new CSSOM.CSSStartingStyleRule(); - startingStyleRule.__starts = i; - buffer = ""; - break; - } else if (token.indexOf("@import", i) === i) { - state = "importRule-begin"; - i += "import".length; - buffer += "@import"; - break; - } else if (token.indexOf("@font-face", i) === i) { - state = "fontFaceRule-begin"; - i += "font-face".length; - fontFaceRule = new CSSOM.CSSFontFaceRule(); - fontFaceRule.__starts = i; - buffer = ""; - break; - } else { - atKeyframesRegExp.lastIndex = i; - var matchKeyframes = atKeyframesRegExp.exec(token); - if (matchKeyframes && matchKeyframes.index === i) { - state = "keyframesRule-begin"; - keyframesRule = new CSSOM.CSSKeyframesRule(); - keyframesRule.__starts = i; - keyframesRule._vendorPrefix = matchKeyframes[1]; // Will come out as undefined if no prefix was found - i += matchKeyframes[0].length - 1; - buffer = ""; - break; - } else if (state === "selector") { - state = "atRule"; - } - } - buffer += character; - break; - - case "{": - if (state === "selector" || state === "atRule") { - styleRule.selectorText = buffer.trim(); - styleRule.style.__starts = i; - buffer = ""; - state = "before-name"; - } else if (state === "atBlock") { - mediaRule.media.mediaText = buffer.trim(); - - if (parentRule) { - ancestorRules.push(parentRule); - } - - currentScope = parentRule = mediaRule; - mediaRule.parentStyleSheet = styleSheet; - buffer = ""; - state = "before-selector"; - } else if (state === "containerBlock") { - containerRule.containerText = buffer.trim(); - - if (parentRule) { - ancestorRules.push(parentRule); - } - currentScope = parentRule = containerRule; - containerRule.parentStyleSheet = styleSheet; - buffer = ""; - state = "before-selector"; - } else if (state === "conditionBlock") { - supportsRule.conditionText = buffer.trim(); - - if (parentRule) { - ancestorRules.push(parentRule); - } - - currentScope = parentRule = supportsRule; - supportsRule.parentStyleSheet = styleSheet; - buffer = ""; - state = "before-selector"; - } else if (state === "hostRule-begin") { - if (parentRule) { - ancestorRules.push(parentRule); - } - - currentScope = parentRule = hostRule; - hostRule.parentStyleSheet = styleSheet; - buffer = ""; - state = "before-selector"; - } else if (state === "startingStyleRule-begin") { - if (parentRule) { - ancestorRules.push(parentRule); - } - - currentScope = parentRule = startingStyleRule; - startingStyleRule.parentStyleSheet = styleSheet; - buffer = ""; - state = "before-selector"; - - } else if (state === "fontFaceRule-begin") { - if (parentRule) { - fontFaceRule.parentRule = parentRule; - } - fontFaceRule.parentStyleSheet = styleSheet; - styleRule = fontFaceRule; - buffer = ""; - state = "before-name"; - } else if (state === "keyframesRule-begin") { - keyframesRule.name = buffer.trim(); - if (parentRule) { - ancestorRules.push(parentRule); - keyframesRule.parentRule = parentRule; - } - keyframesRule.parentStyleSheet = styleSheet; - currentScope = parentRule = keyframesRule; - buffer = ""; - state = "keyframeRule-begin"; - } else if (state === "keyframeRule-begin") { - styleRule = new CSSOM.CSSKeyframeRule(); - styleRule.keyText = buffer.trim(); - styleRule.__starts = i; - buffer = ""; - state = "before-name"; - } else if (state === "documentRule-begin") { - // FIXME: what if this '{' is in the url text of the match function? - documentRule.matcher.matcherText = buffer.trim(); - if (parentRule) { - ancestorRules.push(parentRule); - documentRule.parentRule = parentRule; - } - currentScope = parentRule = documentRule; - documentRule.parentStyleSheet = styleSheet; - buffer = ""; - state = "before-selector"; - } - break; - - case ":": - if (state === "name") { - name = buffer.trim(); - buffer = ""; - state = "before-value"; - } else { - buffer += character; - } - break; - - case "(": - if (state === 'value') { - // ie css expression mode - if (buffer.trim() === 'expression') { - var info = (new CSSOM.CSSValueExpression(token, i)).parse(); - - if (info.error) { - parseError(info.error); - } else { - buffer += info.expression; - i = info.idx; - } - } else { - state = 'value-parenthesis'; - //always ensure this is reset to 1 on transition - //from value to value-parenthesis - valueParenthesisDepth = 1; - buffer += character; - } - } else if (state === 'value-parenthesis') { - valueParenthesisDepth++; - buffer += character; - } else { - buffer += character; - } - break; - - case ")": - if (state === 'value-parenthesis') { - valueParenthesisDepth--; - if (valueParenthesisDepth === 0) state = 'value'; - } - buffer += character; - break; - - case "!": - if (state === "value" && token.indexOf("!important", i) === i) { - priority = "important"; - i += "important".length; - } else { - buffer += character; - } - break; - - case ";": - switch (state) { - case "value": - styleRule.style.setProperty(name, buffer.trim(), priority); - priority = ""; - buffer = ""; - state = "before-name"; - break; - case "atRule": - buffer = ""; - state = "before-selector"; - break; - case "importRule": - importRule = new CSSOM.CSSImportRule(); - importRule.parentStyleSheet = importRule.styleSheet.parentStyleSheet = styleSheet; - importRule.cssText = buffer + character; - styleSheet.cssRules.push(importRule); - buffer = ""; - state = "before-selector"; - break; - default: - buffer += character; - break; - } - break; - - case "}": - switch (state) { - case "value": - styleRule.style.setProperty(name, buffer.trim(), priority); - priority = ""; - /* falls through */ - case "before-name": - case "name": - styleRule.__ends = i + 1; - if (parentRule) { - styleRule.parentRule = parentRule; - } - styleRule.parentStyleSheet = styleSheet; - currentScope.cssRules.push(styleRule); - buffer = ""; - if (currentScope.constructor === CSSOM.CSSKeyframesRule) { - state = "keyframeRule-begin"; - } else { - state = "before-selector"; - } - break; - case "keyframeRule-begin": - case "before-selector": - case "selector": - // End of media/supports/document rule. - if (!parentRule) { - parseError("Unexpected }"); - } - - // Handle rules nested in @media or @supports - hasAncestors = ancestorRules.length > 0; - - while (ancestorRules.length > 0) { - parentRule = ancestorRules.pop(); - - if ( - parentRule.constructor.name === "CSSMediaRule" - || parentRule.constructor.name === "CSSSupportsRule" - || parentRule.constructor.name === "CSSContainerRule" - || parentRule.constructor.name === "CSSStartingStyleRule" - ) { - prevScope = currentScope; - currentScope = parentRule; - currentScope.cssRules.push(prevScope); - break; - } - - if (ancestorRules.length === 0) { - hasAncestors = false; - } - } - - if (!hasAncestors) { - currentScope.__ends = i + 1; - styleSheet.cssRules.push(currentScope); - currentScope = styleSheet; - parentRule = null; - } - - buffer = ""; - state = "before-selector"; - break; - } - break; - - default: - switch (state) { - case "before-selector": - state = "selector"; - styleRule = new CSSOM.CSSStyleRule(); - styleRule.__starts = i; - break; - case "before-name": - state = "name"; - break; - case "before-value": - state = "value"; - break; - case "importRule-begin": - state = "importRule"; - break; - } - buffer += character; - break; - } - } - - return styleSheet; -}; - - -//.CommonJS -exports.parse = CSSOM.parse; -// The following modules cannot be included sooner due to the mutual dependency with parse.js -CSSOM.CSSStyleSheet = (__nccwpck_require__(94883).CSSStyleSheet); -CSSOM.CSSStyleRule = (__nccwpck_require__(59060).CSSStyleRule); -CSSOM.CSSImportRule = (__nccwpck_require__(99420).CSSImportRule); -CSSOM.CSSGroupingRule = (__nccwpck_require__(4644).CSSGroupingRule); -CSSOM.CSSMediaRule = (__nccwpck_require__(11049).CSSMediaRule); -CSSOM.CSSContainerRule = (__nccwpck_require__(67294).CSSContainerRule); -CSSOM.CSSConditionRule = (__nccwpck_require__(11140).CSSConditionRule); -CSSOM.CSSSupportsRule = (__nccwpck_require__(90673).CSSSupportsRule); -CSSOM.CSSFontFaceRule = (__nccwpck_require__(57865).CSSFontFaceRule); -CSSOM.CSSHostRule = (__nccwpck_require__(24455).CSSHostRule); -CSSOM.CSSStartingStyleRule = (__nccwpck_require__(30192).CSSStartingStyleRule); -CSSOM.CSSStyleDeclaration = (__nccwpck_require__(80692).CSSStyleDeclaration); -CSSOM.CSSKeyframeRule = (__nccwpck_require__(67529).CSSKeyframeRule); -CSSOM.CSSKeyframesRule = (__nccwpck_require__(46212).CSSKeyframesRule); -CSSOM.CSSValueExpression = (__nccwpck_require__(73648).CSSValueExpression); -CSSOM.CSSDocumentRule = (__nccwpck_require__(72696).CSSDocumentRule); -///CommonJS - - -/***/ }), - -/***/ 32946: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - -const MIMEType = __nccwpck_require__(59344); -const { parseURL, serializeURL, percentDecodeString } = __nccwpck_require__(78012); -const { stripLeadingAndTrailingASCIIWhitespace, isomorphicDecode, forgivingBase64Decode } = __nccwpck_require__(92424); - -module.exports = stringInput => { - const urlRecord = parseURL(stringInput); - - if (urlRecord === null) { - return null; - } - - return module.exports.fromURLRecord(urlRecord); -}; - -module.exports.fromURLRecord = urlRecord => { - if (urlRecord.scheme !== "data") { - return null; - } - - const input = serializeURL(urlRecord, true).substring("data:".length); - - let position = 0; - - let mimeType = ""; - while (position < input.length && input[position] !== ",") { - mimeType += input[position]; - ++position; - } - mimeType = stripLeadingAndTrailingASCIIWhitespace(mimeType); - - if (position === input.length) { - return null; - } - - ++position; - - const encodedBody = input.substring(position); - - let body = percentDecodeString(encodedBody); - - // Can't use /i regexp flag because it isn't restricted to ASCII. - const mimeTypeBase64MatchResult = /(.*); *[Bb][Aa][Ss][Ee]64$/u.exec(mimeType); - if (mimeTypeBase64MatchResult) { - const stringBody = isomorphicDecode(body); - body = forgivingBase64Decode(stringBody); - - if (body === null) { - return null; - } - mimeType = mimeTypeBase64MatchResult[1]; - } - - if (mimeType.startsWith(";")) { - mimeType = `text/plain${mimeType}`; - } - - let mimeTypeRecord; - try { - mimeTypeRecord = new MIMEType(mimeType); - } catch (e) { - mimeTypeRecord = new MIMEType("text/plain;charset=US-ASCII"); - } - - return { - mimeType: mimeTypeRecord, - body - }; -}; - - -/***/ }), - -/***/ 92424: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -exports.stripLeadingAndTrailingASCIIWhitespace = string => { - return string.replace(/^[ \t\n\f\r]+/u, "").replace(/[ \t\n\f\r]+$/u, ""); -}; - -exports.isomorphicDecode = input => { - return Array.from(input, byte => String.fromCodePoint(byte)).join(""); -}; - -exports.forgivingBase64Decode = data => { - let asString; - try { - asString = atob(data); - } catch { - return null; - } - - return Uint8Array.from(asString, c => c.codePointAt(0)); -}; - - -/***/ }), - -/***/ 6110: -/***/ ((module, exports, __nccwpck_require__) => { - -/* eslint-env browser */ - -/** - * This is the web browser implementation of `debug()`. - */ - -exports.formatArgs = formatArgs; -exports.save = save; -exports.load = load; -exports.useColors = useColors; -exports.storage = localstorage(); -exports.destroy = (() => { - let warned = false; - - return () => { - if (!warned) { - warned = true; - console.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.'); - } - }; -})(); - -/** - * Colors. - */ - -exports.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' -]; - -/** - * Currently only WebKit-based Web Inspectors, Firefox >= v31, - * and the Firebug extension (any Firefox version) are known - * to support "%c" CSS customizations. - * - * TODO: add a `localStorage` variable to explicitly enable/disable colors - */ - -// eslint-disable-next-line complexity -function useColors() { - // NB: In an Electron preload script, document will be defined but not fully - // initialized. Since we know we're in Chrome, we'll just detect this case - // explicitly - if (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) { - return true; - } - - // Internet Explorer and Edge do not support colors. - if (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) { - return false; - } - - let m; - - // Is webkit? http://stackoverflow.com/a/16459606/376773 - // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632 - return (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) || - // Is firebug? http://stackoverflow.com/a/398120/376773 - (typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) || - // Is firefox >= v31? - // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages - (typeof navigator !== 'undefined' && navigator.userAgent && (m = navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)) && parseInt(m[1], 10) >= 31) || - // Double check webkit in userAgent just in case we are in a worker - (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)); -} - -/** - * Colorize log arguments if enabled. - * - * @api public - */ - -function formatArgs(args) { - args[0] = (this.useColors ? '%c' : '') + - this.namespace + - (this.useColors ? ' %c' : ' ') + - args[0] + - (this.useColors ? '%c ' : ' ') + - '+' + module.exports.humanize(this.diff); - - if (!this.useColors) { - return; - } - - const c = 'color: ' + this.color; - args.splice(1, 0, c, 'color: inherit'); - - // The final "%c" is somewhat tricky, because there could be other - // arguments passed either before or after the %c, so we need to - // figure out the correct index to insert the CSS into - let index = 0; - let lastC = 0; - args[0].replace(/%[a-zA-Z%]/g, match => { - if (match === '%%') { - return; - } - index++; - if (match === '%c') { - // We only are interested in the *last* %c - // (the user may have provided their own) - lastC = index; - } - }); - - args.splice(lastC, 0, c); -} - -/** - * Invokes `console.debug()` when available. - * No-op when `console.debug` is not a "function". - * If `console.debug` is not available, falls back - * to `console.log`. - * - * @api public - */ -exports.log = console.debug || console.log || (() => {}); - -/** - * Save `namespaces`. - * - * @param {String} namespaces - * @api private - */ -function save(namespaces) { - try { - if (namespaces) { - exports.storage.setItem('debug', namespaces); - } else { - exports.storage.removeItem('debug'); - } - } catch (error) { - // Swallow - // XXX (@Qix-) should we be logging these? - } -} - -/** - * Load `namespaces`. - * - * @return {String} returns the previously persisted debug modes - * @api private - */ -function load() { - let r; - try { - r = exports.storage.getItem('debug'); - } catch (error) { - // Swallow - // XXX (@Qix-) should we be logging these? - } - - // If debug isn't set in LS, and we're in Electron, try to load $DEBUG - if (!r && typeof process !== 'undefined' && 'env' in process) { - r = process.env.DEBUG; - } - - return r; -} - -/** - * Localstorage attempts to return the localstorage. - * - * This is necessary because safari throws - * when a user disables cookies/localstorage - * and you attempt to access it. - * - * @return {LocalStorage} - * @api private - */ - -function localstorage() { - try { - // TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context - // The Browser also has localStorage in the global context. - return localStorage; - } catch (error) { - // Swallow - // XXX (@Qix-) should we be logging these? - } -} - -module.exports = __nccwpck_require__(40897)(exports); - -const {formatters} = module.exports; - -/** - * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default. - */ - -formatters.j = function (v) { - try { - return JSON.stringify(v); - } catch (error) { - return '[UnexpectedJSONParseError]: ' + error.message; - } -}; - - -/***/ }), - -/***/ 40897: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - - -/** - * This is the common logic for both the Node.js and web browser - * implementations of `debug()`. - */ - -function setup(env) { - createDebug.debug = createDebug; - createDebug.default = createDebug; - createDebug.coerce = coerce; - createDebug.disable = disable; - createDebug.enable = enable; - createDebug.enabled = enabled; - createDebug.humanize = __nccwpck_require__(70744); - createDebug.destroy = destroy; - - Object.keys(env).forEach(key => { - createDebug[key] = env[key]; - }); - - /** - * The currently active debug mode names, and names to skip. - */ - - createDebug.names = []; - createDebug.skips = []; - - /** - * Map of special "%n" handling functions, for the debug "format" argument. - * - * Valid key names are a single, lower or upper-case letter, i.e. "n" and "N". - */ - createDebug.formatters = {}; - - /** - * Selects a color for a debug namespace - * @param {String} namespace The namespace string for the debug instance to be colored - * @return {Number|String} An ANSI color code for the given namespace - * @api private - */ - function selectColor(namespace) { - let hash = 0; - - for (let i = 0; i < namespace.length; i++) { - hash = ((hash << 5) - hash) + namespace.charCodeAt(i); - hash |= 0; // Convert to 32bit integer - } - - return createDebug.colors[Math.abs(hash) % createDebug.colors.length]; - } - createDebug.selectColor = selectColor; - - /** - * Create a debugger with the given `namespace`. - * - * @param {String} namespace - * @return {Function} - * @api public - */ - function createDebug(namespace) { - let prevTime; - let enableOverride = null; - let namespacesCache; - let enabledCache; - - function debug(...args) { - // Disabled? - if (!debug.enabled) { - return; - } - - const self = debug; - - // Set `diff` timestamp - const curr = Number(new Date()); - const ms = curr - (prevTime || curr); - self.diff = ms; - self.prev = prevTime; - self.curr = curr; - prevTime = curr; - - args[0] = createDebug.coerce(args[0]); - - if (typeof args[0] !== 'string') { - // Anything else let's inspect with %O - args.unshift('%O'); - } - - // Apply any `formatters` transformations - let index = 0; - args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => { - // If we encounter an escaped % then don't increase the array index - if (match === '%%') { - return '%'; - } - index++; - const formatter = createDebug.formatters[format]; - if (typeof formatter === 'function') { - const val = args[index]; - match = formatter.call(self, val); - - // Now we need to remove `args[index]` since it's inlined in the `format` - args.splice(index, 1); - index--; - } - return match; - }); - - // Apply env-specific formatting (colors, etc.) - createDebug.formatArgs.call(self, args); - - const logFn = self.log || createDebug.log; - logFn.apply(self, args); - } - - debug.namespace = namespace; - debug.useColors = createDebug.useColors(); - debug.color = createDebug.selectColor(namespace); - debug.extend = extend; - debug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release. - - Object.defineProperty(debug, 'enabled', { - enumerable: true, - configurable: false, - get: () => { - if (enableOverride !== null) { - return enableOverride; - } - if (namespacesCache !== createDebug.namespaces) { - namespacesCache = createDebug.namespaces; - enabledCache = createDebug.enabled(namespace); - } - - return enabledCache; - }, - set: v => { - enableOverride = v; - } - }); - - // Env-specific initialization logic for debug instances - if (typeof createDebug.init === 'function') { - createDebug.init(debug); - } - - return debug; - } - - function extend(namespace, delimiter) { - const newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace); - newDebug.log = this.log; - return newDebug; - } - - /** - * Enables a debug mode by namespaces. This can include modes - * separated by a colon and wildcards. - * - * @param {String} namespaces - * @api public - */ - function enable(namespaces) { - createDebug.save(namespaces); - createDebug.namespaces = namespaces; - - createDebug.names = []; - createDebug.skips = []; - - let i; - const split = (typeof namespaces === 'string' ? namespaces : '').split(/[\s,]+/); - const len = split.length; - - for (i = 0; i < len; i++) { - if (!split[i]) { - // ignore empty strings - continue; - } - - namespaces = split[i].replace(/\*/g, '.*?'); - - if (namespaces[0] === '-') { - createDebug.skips.push(new RegExp('^' + namespaces.slice(1) + '$')); - } else { - createDebug.names.push(new RegExp('^' + namespaces + '$')); - } - } - } - - /** - * Disable debug output. - * - * @return {String} namespaces - * @api public - */ - function disable() { - const namespaces = [ - ...createDebug.names.map(toNamespace), - ...createDebug.skips.map(toNamespace).map(namespace => '-' + namespace) - ].join(','); - createDebug.enable(''); - return namespaces; - } - - /** - * Returns true if the given mode name is enabled, false otherwise. - * - * @param {String} name - * @return {Boolean} - * @api public - */ - function enabled(name) { - if (name[name.length - 1] === '*') { - return true; - } - - let i; - let len; - - for (i = 0, len = createDebug.skips.length; i < len; i++) { - if (createDebug.skips[i].test(name)) { - return false; - } - } - - for (i = 0, len = createDebug.names.length; i < len; i++) { - if (createDebug.names[i].test(name)) { - return true; - } - } - - return false; - } - - /** - * Convert regexp to namespace - * - * @param {RegExp} regxep - * @return {String} namespace - * @api private - */ - function toNamespace(regexp) { - return regexp.toString() - .substring(2, regexp.toString().length - 2) - .replace(/\.\*\?$/, '*'); - } - - /** - * Coerce `val`. - * - * @param {Mixed} val - * @return {Mixed} - * @api private - */ - function coerce(val) { - if (val instanceof Error) { - return val.stack || val.message; - } - return val; - } - - /** - * XXX DO NOT USE. This is a temporary stub function. - * XXX It WILL be removed in the next major release. - */ - function destroy() { - console.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.'); - } - - createDebug.enable(createDebug.load()); - - return createDebug; -} - -module.exports = setup; - - -/***/ }), - -/***/ 2830: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -/** - * Detect Electron renderer / nwjs process, which is node, but we should - * treat as a browser. - */ - -if (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) { - module.exports = __nccwpck_require__(6110); -} else { - module.exports = __nccwpck_require__(95108); -} - - -/***/ }), - -/***/ 95108: -/***/ ((module, exports, __nccwpck_require__) => { - -/** - * Module dependencies. - */ - -const tty = __nccwpck_require__(52018); -const util = __nccwpck_require__(39023); - -/** - * This is the Node.js implementation of `debug()`. - */ - -exports.init = init; -exports.log = log; -exports.formatArgs = formatArgs; -exports.save = save; -exports.load = load; -exports.useColors = useColors; -exports.destroy = util.deprecate( - () => {}, - 'Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.' -); - -/** - * Colors. - */ - -exports.colors = [6, 2, 3, 4, 5, 1]; - -try { - // Optional dependency (as in, doesn't need to be installed, NOT like optionalDependencies in package.json) - // eslint-disable-next-line import/no-extraneous-dependencies - const supportsColor = __nccwpck_require__(21450); - - if (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) { - exports.colors = [ - 20, - 21, - 26, - 27, - 32, - 33, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 56, - 57, - 62, - 63, - 68, - 69, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 92, - 93, - 98, - 99, - 112, - 113, - 128, - 129, - 134, - 135, - 148, - 149, - 160, - 161, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169, - 170, - 171, - 172, - 173, - 178, - 179, - 184, - 185, - 196, - 197, - 198, - 199, - 200, - 201, - 202, - 203, - 204, - 205, - 206, - 207, - 208, - 209, - 214, - 215, - 220, - 221 - ]; - } -} catch (error) { - // Swallow - we only care if `supports-color` is available; it doesn't have to be. -} - -/** - * Build up the default `inspectOpts` object from the environment variables. - * - * $ DEBUG_COLORS=no DEBUG_DEPTH=10 DEBUG_SHOW_HIDDEN=enabled node script.js - */ - -exports.inspectOpts = Object.keys(process.env).filter(key => { - return /^debug_/i.test(key); -}).reduce((obj, key) => { - // Camel-case - const prop = key - .substring(6) - .toLowerCase() - .replace(/_([a-z])/g, (_, k) => { - return k.toUpperCase(); - }); - - // Coerce string value into JS value - let val = process.env[key]; - if (/^(yes|on|true|enabled)$/i.test(val)) { - val = true; - } else if (/^(no|off|false|disabled)$/i.test(val)) { - val = false; - } else if (val === 'null') { - val = null; - } else { - val = Number(val); - } - - obj[prop] = val; - return obj; -}, {}); - -/** - * Is stdout a TTY? Colored output is enabled when `true`. - */ - -function useColors() { - return 'colors' in exports.inspectOpts ? - Boolean(exports.inspectOpts.colors) : - tty.isatty(process.stderr.fd); -} - -/** - * Adds ANSI color escape codes if enabled. - * - * @api public - */ - -function formatArgs(args) { - const {namespace: name, useColors} = this; - - if (useColors) { - const c = this.color; - const colorCode = '\u001B[3' + (c < 8 ? c : '8;5;' + c); - const prefix = ` ${colorCode};1m${name} \u001B[0m`; - - args[0] = prefix + args[0].split('\n').join('\n' + prefix); - args.push(colorCode + 'm+' + module.exports.humanize(this.diff) + '\u001B[0m'); - } else { - args[0] = getDate() + name + ' ' + args[0]; - } -} - -function getDate() { - if (exports.inspectOpts.hideDate) { - return ''; - } - return new Date().toISOString() + ' '; -} - -/** - * Invokes `util.formatWithOptions()` with the specified arguments and writes to stderr. - */ - -function log(...args) { - return process.stderr.write(util.formatWithOptions(exports.inspectOpts, ...args) + '\n'); -} - -/** - * Save `namespaces`. - * - * @param {String} namespaces - * @api private - */ -function save(namespaces) { - if (namespaces) { - process.env.DEBUG = namespaces; - } else { - // If you set a process.env field to null or undefined, it gets cast to the - // string 'null' or 'undefined'. Just delete instead. - delete process.env.DEBUG; - } -} - -/** - * Load `namespaces`. - * - * @return {String} returns the previously persisted debug modes - * @api private - */ - -function load() { - return process.env.DEBUG; -} - -/** - * Init logic for `debug` instances. - * - * Create a new `inspectOpts` object in case `useColors` is set - * differently for a particular `debug` instance. - */ - -function init(debug) { - debug.inspectOpts = {}; - - const keys = Object.keys(exports.inspectOpts); - for (let i = 0; i < keys.length; i++) { - debug.inspectOpts[keys[i]] = exports.inspectOpts[keys[i]]; - } -} - -module.exports = __nccwpck_require__(40897)(exports); - -const {formatters} = module.exports; - -/** - * Map %o to `util.inspect()`, all on a single line. - */ - -formatters.o = function (v) { - this.inspectOpts.colors = this.useColors; - return util.inspect(v, this.inspectOpts) - .split('\n') - .map(str => str.trim()) - .join(' '); -}; - -/** - * Map %O to `util.inspect()`, allowing multiple lines if needed. - */ - -formatters.O = function (v) { - this.inspectOpts.colors = this.useColors; - return util.inspect(v, this.inspectOpts); -}; - - -/***/ }), - -/***/ 92183: -/***/ (function(module) { - -;(function (globalScope) { - 'use strict'; - - - /*! - * decimal.js v10.4.3 - * An arbitrary-precision Decimal type for JavaScript. - * https://github.com/MikeMcl/decimal.js - * Copyright (c) 2022 Michael Mclaughlin - * MIT Licence - */ - - - // ----------------------------------- EDITABLE DEFAULTS ------------------------------------ // - - - // The maximum exponent magnitude. - // The limit on the value of `toExpNeg`, `toExpPos`, `minE` and `maxE`. - var EXP_LIMIT = 9e15, // 0 to 9e15 - - // The limit on the value of `precision`, and on the value of the first argument to - // `toDecimalPlaces`, `toExponential`, `toFixed`, `toPrecision` and `toSignificantDigits`. - MAX_DIGITS = 1e9, // 0 to 1e9 - - // Base conversion alphabet. - NUMERALS = '0123456789abcdef', - - // The natural logarithm of 10 (1025 digits). - LN10 = '2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058', - - // Pi (1025 digits). - PI = '3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789', - - - // The initial configuration properties of the Decimal constructor. - DEFAULTS = { - - // These values must be integers within the stated ranges (inclusive). - // Most of these values can be changed at run-time using the `Decimal.config` method. - - // The maximum number of significant digits of the result of a calculation or base conversion. - // E.g. `Decimal.config({ precision: 20 });` - precision: 20, // 1 to MAX_DIGITS - - // The rounding mode used when rounding to `precision`. - // - // ROUND_UP 0 Away from zero. - // ROUND_DOWN 1 Towards zero. - // ROUND_CEIL 2 Towards +Infinity. - // ROUND_FLOOR 3 Towards -Infinity. - // ROUND_HALF_UP 4 Towards nearest neighbour. If equidistant, up. - // ROUND_HALF_DOWN 5 Towards nearest neighbour. If equidistant, down. - // ROUND_HALF_EVEN 6 Towards nearest neighbour. If equidistant, towards even neighbour. - // ROUND_HALF_CEIL 7 Towards nearest neighbour. If equidistant, towards +Infinity. - // ROUND_HALF_FLOOR 8 Towards nearest neighbour. If equidistant, towards -Infinity. - // - // E.g. - // `Decimal.rounding = 4;` - // `Decimal.rounding = Decimal.ROUND_HALF_UP;` - rounding: 4, // 0 to 8 - - // The modulo mode used when calculating the modulus: a mod n. - // The quotient (q = a / n) is calculated according to the corresponding rounding mode. - // The remainder (r) is calculated as: r = a - n * q. - // - // UP 0 The remainder is positive if the dividend is negative, else is negative. - // DOWN 1 The remainder has the same sign as the dividend (JavaScript %). - // FLOOR 3 The remainder has the same sign as the divisor (Python %). - // HALF_EVEN 6 The IEEE 754 remainder function. - // EUCLID 9 Euclidian division. q = sign(n) * floor(a / abs(n)). Always positive. - // - // Truncated division (1), floored division (3), the IEEE 754 remainder (6), and Euclidian - // division (9) are commonly used for the modulus operation. The other rounding modes can also - // be used, but they may not give useful results. - modulo: 1, // 0 to 9 - - // The exponent value at and beneath which `toString` returns exponential notation. - // JavaScript numbers: -7 - toExpNeg: -7, // 0 to -EXP_LIMIT - - // The exponent value at and above which `toString` returns exponential notation. - // JavaScript numbers: 21 - toExpPos: 21, // 0 to EXP_LIMIT - - // The minimum exponent value, beneath which underflow to zero occurs. - // JavaScript numbers: -324 (5e-324) - minE: -EXP_LIMIT, // -1 to -EXP_LIMIT - - // The maximum exponent value, above which overflow to Infinity occurs. - // JavaScript numbers: 308 (1.7976931348623157e+308) - maxE: EXP_LIMIT, // 1 to EXP_LIMIT - - // Whether to use cryptographically-secure random number generation, if available. - crypto: false // true/false - }, - - - // ----------------------------------- END OF EDITABLE DEFAULTS ------------------------------- // - - - Decimal, inexact, noConflict, quadrant, - external = true, - - decimalError = '[DecimalError] ', - invalidArgument = decimalError + 'Invalid argument: ', - precisionLimitExceeded = decimalError + 'Precision limit exceeded', - cryptoUnavailable = decimalError + 'crypto unavailable', - tag = '[object Decimal]', - - mathfloor = Math.floor, - mathpow = Math.pow, - - isBinary = /^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i, - isHex = /^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i, - isOctal = /^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i, - isDecimal = /^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i, - - BASE = 1e7, - LOG_BASE = 7, - MAX_SAFE_INTEGER = 9007199254740991, - - LN10_PRECISION = LN10.length - 1, - PI_PRECISION = PI.length - 1, - - // Decimal.prototype object - P = { toStringTag: tag }; - - - // Decimal prototype methods - - - /* - * absoluteValue abs - * ceil - * clampedTo clamp - * comparedTo cmp - * cosine cos - * cubeRoot cbrt - * decimalPlaces dp - * dividedBy div - * dividedToIntegerBy divToInt - * equals eq - * floor - * greaterThan gt - * greaterThanOrEqualTo gte - * hyperbolicCosine cosh - * hyperbolicSine sinh - * hyperbolicTangent tanh - * inverseCosine acos - * inverseHyperbolicCosine acosh - * inverseHyperbolicSine asinh - * inverseHyperbolicTangent atanh - * inverseSine asin - * inverseTangent atan - * isFinite - * isInteger isInt - * isNaN - * isNegative isNeg - * isPositive isPos - * isZero - * lessThan lt - * lessThanOrEqualTo lte - * logarithm log - * [maximum] [max] - * [minimum] [min] - * minus sub - * modulo mod - * naturalExponential exp - * naturalLogarithm ln - * negated neg - * plus add - * precision sd - * round - * sine sin - * squareRoot sqrt - * tangent tan - * times mul - * toBinary - * toDecimalPlaces toDP - * toExponential - * toFixed - * toFraction - * toHexadecimal toHex - * toNearest - * toNumber - * toOctal - * toPower pow - * toPrecision - * toSignificantDigits toSD - * toString - * truncated trunc - * valueOf toJSON - */ - - - /* - * Return a new Decimal whose value is the absolute value of this Decimal. - * - */ - P.absoluteValue = P.abs = function () { - var x = new this.constructor(this); - if (x.s < 0) x.s = 1; - return finalise(x); - }; - - - /* - * Return a new Decimal whose value is the value of this Decimal rounded to a whole number in the - * direction of positive Infinity. - * - */ - P.ceil = function () { - return finalise(new this.constructor(this), this.e + 1, 2); - }; - - - /* - * Return a new Decimal whose value is the value of this Decimal clamped to the range - * delineated by `min` and `max`. - * - * min {number|string|Decimal} - * max {number|string|Decimal} - * - */ - P.clampedTo = P.clamp = function (min, max) { - var k, - x = this, - Ctor = x.constructor; - min = new Ctor(min); - max = new Ctor(max); - if (!min.s || !max.s) return new Ctor(NaN); - if (min.gt(max)) throw Error(invalidArgument + max); - k = x.cmp(min); - return k < 0 ? min : x.cmp(max) > 0 ? max : new Ctor(x); - }; - - - /* - * Return - * 1 if the value of this Decimal is greater than the value of `y`, - * -1 if the value of this Decimal is less than the value of `y`, - * 0 if they have the same value, - * NaN if the value of either Decimal is NaN. - * - */ - P.comparedTo = P.cmp = function (y) { - var i, j, xdL, ydL, - x = this, - xd = x.d, - yd = (y = new x.constructor(y)).d, - xs = x.s, - ys = y.s; - - // Either NaN or ±Infinity? - if (!xd || !yd) { - return !xs || !ys ? NaN : xs !== ys ? xs : xd === yd ? 0 : !xd ^ xs < 0 ? 1 : -1; - } - - // Either zero? - if (!xd[0] || !yd[0]) return xd[0] ? xs : yd[0] ? -ys : 0; - - // Signs differ? - if (xs !== ys) return xs; - - // Compare exponents. - if (x.e !== y.e) return x.e > y.e ^ xs < 0 ? 1 : -1; - - xdL = xd.length; - ydL = yd.length; - - // Compare digit by digit. - for (i = 0, j = xdL < ydL ? xdL : ydL; i < j; ++i) { - if (xd[i] !== yd[i]) return xd[i] > yd[i] ^ xs < 0 ? 1 : -1; - } - - // Compare lengths. - return xdL === ydL ? 0 : xdL > ydL ^ xs < 0 ? 1 : -1; - }; - - - /* - * Return a new Decimal whose value is the cosine of the value in radians of this Decimal. - * - * Domain: [-Infinity, Infinity] - * Range: [-1, 1] - * - * cos(0) = 1 - * cos(-0) = 1 - * cos(Infinity) = NaN - * cos(-Infinity) = NaN - * cos(NaN) = NaN - * - */ - P.cosine = P.cos = function () { - var pr, rm, - x = this, - Ctor = x.constructor; - - if (!x.d) return new Ctor(NaN); - - // cos(0) = cos(-0) = 1 - if (!x.d[0]) return new Ctor(1); - - pr = Ctor.precision; - rm = Ctor.rounding; - Ctor.precision = pr + Math.max(x.e, x.sd()) + LOG_BASE; - Ctor.rounding = 1; - - x = cosine(Ctor, toLessThanHalfPi(Ctor, x)); - - Ctor.precision = pr; - Ctor.rounding = rm; - - return finalise(quadrant == 2 || quadrant == 3 ? x.neg() : x, pr, rm, true); - }; - - - /* - * - * Return a new Decimal whose value is the cube root of the value of this Decimal, rounded to - * `precision` significant digits using rounding mode `rounding`. - * - * cbrt(0) = 0 - * cbrt(-0) = -0 - * cbrt(1) = 1 - * cbrt(-1) = -1 - * cbrt(N) = N - * cbrt(-I) = -I - * cbrt(I) = I - * - * Math.cbrt(x) = (x < 0 ? -Math.pow(-x, 1/3) : Math.pow(x, 1/3)) - * - */ - P.cubeRoot = P.cbrt = function () { - var e, m, n, r, rep, s, sd, t, t3, t3plusx, - x = this, - Ctor = x.constructor; - - if (!x.isFinite() || x.isZero()) return new Ctor(x); - external = false; - - // Initial estimate. - s = x.s * mathpow(x.s * x, 1 / 3); - - // Math.cbrt underflow/overflow? - // Pass x to Math.pow as integer, then adjust the exponent of the result. - if (!s || Math.abs(s) == 1 / 0) { - n = digitsToString(x.d); - e = x.e; - - // Adjust n exponent so it is a multiple of 3 away from x exponent. - if (s = (e - n.length + 1) % 3) n += (s == 1 || s == -2 ? '0' : '00'); - s = mathpow(n, 1 / 3); - - // Rarely, e may be one less than the result exponent value. - e = mathfloor((e + 1) / 3) - (e % 3 == (e < 0 ? -1 : 2)); - - if (s == 1 / 0) { - n = '5e' + e; - } else { - n = s.toExponential(); - n = n.slice(0, n.indexOf('e') + 1) + e; - } - - r = new Ctor(n); - r.s = x.s; - } else { - r = new Ctor(s.toString()); - } - - sd = (e = Ctor.precision) + 3; - - // Halley's method. - // TODO? Compare Newton's method. - for (;;) { - t = r; - t3 = t.times(t).times(t); - t3plusx = t3.plus(x); - r = divide(t3plusx.plus(x).times(t), t3plusx.plus(t3), sd + 2, 1); - - // TODO? Replace with for-loop and checkRoundingDigits. - if (digitsToString(t.d).slice(0, sd) === (n = digitsToString(r.d)).slice(0, sd)) { - n = n.slice(sd - 3, sd + 1); - - // The 4th rounding digit may be in error by -1 so if the 4 rounding digits are 9999 or 4999 - // , i.e. approaching a rounding boundary, continue the iteration. - if (n == '9999' || !rep && n == '4999') { - - // On the first iteration only, check to see if rounding up gives the exact result as the - // nines may infinitely repeat. - if (!rep) { - finalise(t, e + 1, 0); - - if (t.times(t).times(t).eq(x)) { - r = t; - break; - } - } - - sd += 4; - rep = 1; - } else { - - // If the rounding digits are null, 0{0,4} or 50{0,3}, check for an exact result. - // If not, then there are further digits and m will be truthy. - if (!+n || !+n.slice(1) && n.charAt(0) == '5') { - - // Truncate to the first rounding digit. - finalise(r, e + 1, 1); - m = !r.times(r).times(r).eq(x); - } - - break; - } - } - } - - external = true; - - return finalise(r, e, Ctor.rounding, m); - }; - - - /* - * Return the number of decimal places of the value of this Decimal. - * - */ - P.decimalPlaces = P.dp = function () { - var w, - d = this.d, - n = NaN; - - if (d) { - w = d.length - 1; - n = (w - mathfloor(this.e / LOG_BASE)) * LOG_BASE; - - // Subtract the number of trailing zeros of the last word. - w = d[w]; - if (w) for (; w % 10 == 0; w /= 10) n--; - if (n < 0) n = 0; - } - - return n; - }; - - - /* - * n / 0 = I - * n / N = N - * n / I = 0 - * 0 / n = 0 - * 0 / 0 = N - * 0 / N = N - * 0 / I = 0 - * N / n = N - * N / 0 = N - * N / N = N - * N / I = N - * I / n = I - * I / 0 = I - * I / N = N - * I / I = N - * - * Return a new Decimal whose value is the value of this Decimal divided by `y`, rounded to - * `precision` significant digits using rounding mode `rounding`. - * - */ - P.dividedBy = P.div = function (y) { - return divide(this, new this.constructor(y)); - }; - - - /* - * Return a new Decimal whose value is the integer part of dividing the value of this Decimal - * by the value of `y`, rounded to `precision` significant digits using rounding mode `rounding`. - * - */ - P.dividedToIntegerBy = P.divToInt = function (y) { - var x = this, - Ctor = x.constructor; - return finalise(divide(x, new Ctor(y), 0, 1, 1), Ctor.precision, Ctor.rounding); - }; - - - /* - * Return true if the value of this Decimal is equal to the value of `y`, otherwise return false. - * - */ - P.equals = P.eq = function (y) { - return this.cmp(y) === 0; - }; - - - /* - * Return a new Decimal whose value is the value of this Decimal rounded to a whole number in the - * direction of negative Infinity. - * - */ - P.floor = function () { - return finalise(new this.constructor(this), this.e + 1, 3); - }; - - - /* - * Return true if the value of this Decimal is greater than the value of `y`, otherwise return - * false. - * - */ - P.greaterThan = P.gt = function (y) { - return this.cmp(y) > 0; - }; - - - /* - * Return true if the value of this Decimal is greater than or equal to the value of `y`, - * otherwise return false. - * - */ - P.greaterThanOrEqualTo = P.gte = function (y) { - var k = this.cmp(y); - return k == 1 || k === 0; - }; - - - /* - * Return a new Decimal whose value is the hyperbolic cosine of the value in radians of this - * Decimal. - * - * Domain: [-Infinity, Infinity] - * Range: [1, Infinity] - * - * cosh(x) = 1 + x^2/2! + x^4/4! + x^6/6! + ... - * - * cosh(0) = 1 - * cosh(-0) = 1 - * cosh(Infinity) = Infinity - * cosh(-Infinity) = Infinity - * cosh(NaN) = NaN - * - * x time taken (ms) result - * 1000 9 9.8503555700852349694e+433 - * 10000 25 4.4034091128314607936e+4342 - * 100000 171 1.4033316802130615897e+43429 - * 1000000 3817 1.5166076984010437725e+434294 - * 10000000 abandoned after 2 minute wait - * - * TODO? Compare performance of cosh(x) = 0.5 * (exp(x) + exp(-x)) - * - */ - P.hyperbolicCosine = P.cosh = function () { - var k, n, pr, rm, len, - x = this, - Ctor = x.constructor, - one = new Ctor(1); - - if (!x.isFinite()) return new Ctor(x.s ? 1 / 0 : NaN); - if (x.isZero()) return one; - - pr = Ctor.precision; - rm = Ctor.rounding; - Ctor.precision = pr + Math.max(x.e, x.sd()) + 4; - Ctor.rounding = 1; - len = x.d.length; - - // Argument reduction: cos(4x) = 1 - 8cos^2(x) + 8cos^4(x) + 1 - // i.e. cos(x) = 1 - cos^2(x/4)(8 - 8cos^2(x/4)) - - // Estimate the optimum number of times to use the argument reduction. - // TODO? Estimation reused from cosine() and may not be optimal here. - if (len < 32) { - k = Math.ceil(len / 3); - n = (1 / tinyPow(4, k)).toString(); - } else { - k = 16; - n = '2.3283064365386962890625e-10'; - } - - x = taylorSeries(Ctor, 1, x.times(n), new Ctor(1), true); - - // Reverse argument reduction - var cosh2_x, - i = k, - d8 = new Ctor(8); - for (; i--;) { - cosh2_x = x.times(x); - x = one.minus(cosh2_x.times(d8.minus(cosh2_x.times(d8)))); - } - - return finalise(x, Ctor.precision = pr, Ctor.rounding = rm, true); - }; - - - /* - * Return a new Decimal whose value is the hyperbolic sine of the value in radians of this - * Decimal. - * - * Domain: [-Infinity, Infinity] - * Range: [-Infinity, Infinity] - * - * sinh(x) = x + x^3/3! + x^5/5! + x^7/7! + ... - * - * sinh(0) = 0 - * sinh(-0) = -0 - * sinh(Infinity) = Infinity - * sinh(-Infinity) = -Infinity - * sinh(NaN) = NaN - * - * x time taken (ms) - * 10 2 ms - * 100 5 ms - * 1000 14 ms - * 10000 82 ms - * 100000 886 ms 1.4033316802130615897e+43429 - * 200000 2613 ms - * 300000 5407 ms - * 400000 8824 ms - * 500000 13026 ms 8.7080643612718084129e+217146 - * 1000000 48543 ms - * - * TODO? Compare performance of sinh(x) = 0.5 * (exp(x) - exp(-x)) - * - */ - P.hyperbolicSine = P.sinh = function () { - var k, pr, rm, len, - x = this, - Ctor = x.constructor; - - if (!x.isFinite() || x.isZero()) return new Ctor(x); - - pr = Ctor.precision; - rm = Ctor.rounding; - Ctor.precision = pr + Math.max(x.e, x.sd()) + 4; - Ctor.rounding = 1; - len = x.d.length; - - if (len < 3) { - x = taylorSeries(Ctor, 2, x, x, true); - } else { - - // Alternative argument reduction: sinh(3x) = sinh(x)(3 + 4sinh^2(x)) - // i.e. sinh(x) = sinh(x/3)(3 + 4sinh^2(x/3)) - // 3 multiplications and 1 addition - - // Argument reduction: sinh(5x) = sinh(x)(5 + sinh^2(x)(20 + 16sinh^2(x))) - // i.e. sinh(x) = sinh(x/5)(5 + sinh^2(x/5)(20 + 16sinh^2(x/5))) - // 4 multiplications and 2 additions - - // Estimate the optimum number of times to use the argument reduction. - k = 1.4 * Math.sqrt(len); - k = k > 16 ? 16 : k | 0; - - x = x.times(1 / tinyPow(5, k)); - x = taylorSeries(Ctor, 2, x, x, true); - - // Reverse argument reduction - var sinh2_x, - d5 = new Ctor(5), - d16 = new Ctor(16), - d20 = new Ctor(20); - for (; k--;) { - sinh2_x = x.times(x); - x = x.times(d5.plus(sinh2_x.times(d16.times(sinh2_x).plus(d20)))); - } - } - - Ctor.precision = pr; - Ctor.rounding = rm; - - return finalise(x, pr, rm, true); - }; - - - /* - * Return a new Decimal whose value is the hyperbolic tangent of the value in radians of this - * Decimal. - * - * Domain: [-Infinity, Infinity] - * Range: [-1, 1] - * - * tanh(x) = sinh(x) / cosh(x) - * - * tanh(0) = 0 - * tanh(-0) = -0 - * tanh(Infinity) = 1 - * tanh(-Infinity) = -1 - * tanh(NaN) = NaN - * - */ - P.hyperbolicTangent = P.tanh = function () { - var pr, rm, - x = this, - Ctor = x.constructor; - - if (!x.isFinite()) return new Ctor(x.s); - if (x.isZero()) return new Ctor(x); - - pr = Ctor.precision; - rm = Ctor.rounding; - Ctor.precision = pr + 7; - Ctor.rounding = 1; - - return divide(x.sinh(), x.cosh(), Ctor.precision = pr, Ctor.rounding = rm); - }; - - - /* - * Return a new Decimal whose value is the arccosine (inverse cosine) in radians of the value of - * this Decimal. - * - * Domain: [-1, 1] - * Range: [0, pi] - * - * acos(x) = pi/2 - asin(x) - * - * acos(0) = pi/2 - * acos(-0) = pi/2 - * acos(1) = 0 - * acos(-1) = pi - * acos(1/2) = pi/3 - * acos(-1/2) = 2*pi/3 - * acos(|x| > 1) = NaN - * acos(NaN) = NaN - * - */ - P.inverseCosine = P.acos = function () { - var halfPi, - x = this, - Ctor = x.constructor, - k = x.abs().cmp(1), - pr = Ctor.precision, - rm = Ctor.rounding; - - if (k !== -1) { - return k === 0 - // |x| is 1 - ? x.isNeg() ? getPi(Ctor, pr, rm) : new Ctor(0) - // |x| > 1 or x is NaN - : new Ctor(NaN); - } - - if (x.isZero()) return getPi(Ctor, pr + 4, rm).times(0.5); - - // TODO? Special case acos(0.5) = pi/3 and acos(-0.5) = 2*pi/3 - - Ctor.precision = pr + 6; - Ctor.rounding = 1; - - x = x.asin(); - halfPi = getPi(Ctor, pr + 4, rm).times(0.5); - - Ctor.precision = pr; - Ctor.rounding = rm; - - return halfPi.minus(x); - }; - - - /* - * Return a new Decimal whose value is the inverse of the hyperbolic cosine in radians of the - * value of this Decimal. - * - * Domain: [1, Infinity] - * Range: [0, Infinity] - * - * acosh(x) = ln(x + sqrt(x^2 - 1)) - * - * acosh(x < 1) = NaN - * acosh(NaN) = NaN - * acosh(Infinity) = Infinity - * acosh(-Infinity) = NaN - * acosh(0) = NaN - * acosh(-0) = NaN - * acosh(1) = 0 - * acosh(-1) = NaN - * - */ - P.inverseHyperbolicCosine = P.acosh = function () { - var pr, rm, - x = this, - Ctor = x.constructor; - - if (x.lte(1)) return new Ctor(x.eq(1) ? 0 : NaN); - if (!x.isFinite()) return new Ctor(x); - - pr = Ctor.precision; - rm = Ctor.rounding; - Ctor.precision = pr + Math.max(Math.abs(x.e), x.sd()) + 4; - Ctor.rounding = 1; - external = false; - - x = x.times(x).minus(1).sqrt().plus(x); - - external = true; - Ctor.precision = pr; - Ctor.rounding = rm; - - return x.ln(); - }; - - - /* - * Return a new Decimal whose value is the inverse of the hyperbolic sine in radians of the value - * of this Decimal. - * - * Domain: [-Infinity, Infinity] - * Range: [-Infinity, Infinity] - * - * asinh(x) = ln(x + sqrt(x^2 + 1)) - * - * asinh(NaN) = NaN - * asinh(Infinity) = Infinity - * asinh(-Infinity) = -Infinity - * asinh(0) = 0 - * asinh(-0) = -0 - * - */ - P.inverseHyperbolicSine = P.asinh = function () { - var pr, rm, - x = this, - Ctor = x.constructor; - - if (!x.isFinite() || x.isZero()) return new Ctor(x); - - pr = Ctor.precision; - rm = Ctor.rounding; - Ctor.precision = pr + 2 * Math.max(Math.abs(x.e), x.sd()) + 6; - Ctor.rounding = 1; - external = false; - - x = x.times(x).plus(1).sqrt().plus(x); - - external = true; - Ctor.precision = pr; - Ctor.rounding = rm; - - return x.ln(); - }; - - - /* - * Return a new Decimal whose value is the inverse of the hyperbolic tangent in radians of the - * value of this Decimal. - * - * Domain: [-1, 1] - * Range: [-Infinity, Infinity] - * - * atanh(x) = 0.5 * ln((1 + x) / (1 - x)) - * - * atanh(|x| > 1) = NaN - * atanh(NaN) = NaN - * atanh(Infinity) = NaN - * atanh(-Infinity) = NaN - * atanh(0) = 0 - * atanh(-0) = -0 - * atanh(1) = Infinity - * atanh(-1) = -Infinity - * - */ - P.inverseHyperbolicTangent = P.atanh = function () { - var pr, rm, wpr, xsd, - x = this, - Ctor = x.constructor; - - if (!x.isFinite()) return new Ctor(NaN); - if (x.e >= 0) return new Ctor(x.abs().eq(1) ? x.s / 0 : x.isZero() ? x : NaN); - - pr = Ctor.precision; - rm = Ctor.rounding; - xsd = x.sd(); - - if (Math.max(xsd, pr) < 2 * -x.e - 1) return finalise(new Ctor(x), pr, rm, true); - - Ctor.precision = wpr = xsd - x.e; - - x = divide(x.plus(1), new Ctor(1).minus(x), wpr + pr, 1); - - Ctor.precision = pr + 4; - Ctor.rounding = 1; - - x = x.ln(); - - Ctor.precision = pr; - Ctor.rounding = rm; - - return x.times(0.5); - }; - - - /* - * Return a new Decimal whose value is the arcsine (inverse sine) in radians of the value of this - * Decimal. - * - * Domain: [-Infinity, Infinity] - * Range: [-pi/2, pi/2] - * - * asin(x) = 2*atan(x/(1 + sqrt(1 - x^2))) - * - * asin(0) = 0 - * asin(-0) = -0 - * asin(1/2) = pi/6 - * asin(-1/2) = -pi/6 - * asin(1) = pi/2 - * asin(-1) = -pi/2 - * asin(|x| > 1) = NaN - * asin(NaN) = NaN - * - * TODO? Compare performance of Taylor series. - * - */ - P.inverseSine = P.asin = function () { - var halfPi, k, - pr, rm, - x = this, - Ctor = x.constructor; - - if (x.isZero()) return new Ctor(x); - - k = x.abs().cmp(1); - pr = Ctor.precision; - rm = Ctor.rounding; - - if (k !== -1) { - - // |x| is 1 - if (k === 0) { - halfPi = getPi(Ctor, pr + 4, rm).times(0.5); - halfPi.s = x.s; - return halfPi; - } - - // |x| > 1 or x is NaN - return new Ctor(NaN); - } - - // TODO? Special case asin(1/2) = pi/6 and asin(-1/2) = -pi/6 - - Ctor.precision = pr + 6; - Ctor.rounding = 1; - - x = x.div(new Ctor(1).minus(x.times(x)).sqrt().plus(1)).atan(); - - Ctor.precision = pr; - Ctor.rounding = rm; - - return x.times(2); - }; - - - /* - * Return a new Decimal whose value is the arctangent (inverse tangent) in radians of the value - * of this Decimal. - * - * Domain: [-Infinity, Infinity] - * Range: [-pi/2, pi/2] - * - * atan(x) = x - x^3/3 + x^5/5 - x^7/7 + ... - * - * atan(0) = 0 - * atan(-0) = -0 - * atan(1) = pi/4 - * atan(-1) = -pi/4 - * atan(Infinity) = pi/2 - * atan(-Infinity) = -pi/2 - * atan(NaN) = NaN - * - */ - P.inverseTangent = P.atan = function () { - var i, j, k, n, px, t, r, wpr, x2, - x = this, - Ctor = x.constructor, - pr = Ctor.precision, - rm = Ctor.rounding; - - if (!x.isFinite()) { - if (!x.s) return new Ctor(NaN); - if (pr + 4 <= PI_PRECISION) { - r = getPi(Ctor, pr + 4, rm).times(0.5); - r.s = x.s; - return r; - } - } else if (x.isZero()) { - return new Ctor(x); - } else if (x.abs().eq(1) && pr + 4 <= PI_PRECISION) { - r = getPi(Ctor, pr + 4, rm).times(0.25); - r.s = x.s; - return r; - } - - Ctor.precision = wpr = pr + 10; - Ctor.rounding = 1; - - // TODO? if (x >= 1 && pr <= PI_PRECISION) atan(x) = halfPi * x.s - atan(1 / x); - - // Argument reduction - // Ensure |x| < 0.42 - // atan(x) = 2 * atan(x / (1 + sqrt(1 + x^2))) - - k = Math.min(28, wpr / LOG_BASE + 2 | 0); - - for (i = k; i; --i) x = x.div(x.times(x).plus(1).sqrt().plus(1)); - - external = false; - - j = Math.ceil(wpr / LOG_BASE); - n = 1; - x2 = x.times(x); - r = new Ctor(x); - px = x; - - // atan(x) = x - x^3/3 + x^5/5 - x^7/7 + ... - for (; i !== -1;) { - px = px.times(x2); - t = r.minus(px.div(n += 2)); - - px = px.times(x2); - r = t.plus(px.div(n += 2)); - - if (r.d[j] !== void 0) for (i = j; r.d[i] === t.d[i] && i--;); - } - - if (k) r = r.times(2 << (k - 1)); - - external = true; - - return finalise(r, Ctor.precision = pr, Ctor.rounding = rm, true); - }; - - - /* - * Return true if the value of this Decimal is a finite number, otherwise return false. - * - */ - P.isFinite = function () { - return !!this.d; - }; - - - /* - * Return true if the value of this Decimal is an integer, otherwise return false. - * - */ - P.isInteger = P.isInt = function () { - return !!this.d && mathfloor(this.e / LOG_BASE) > this.d.length - 2; - }; - - - /* - * Return true if the value of this Decimal is NaN, otherwise return false. - * - */ - P.isNaN = function () { - return !this.s; - }; - - - /* - * Return true if the value of this Decimal is negative, otherwise return false. - * - */ - P.isNegative = P.isNeg = function () { - return this.s < 0; - }; - - - /* - * Return true if the value of this Decimal is positive, otherwise return false. - * - */ - P.isPositive = P.isPos = function () { - return this.s > 0; - }; - - - /* - * Return true if the value of this Decimal is 0 or -0, otherwise return false. - * - */ - P.isZero = function () { - return !!this.d && this.d[0] === 0; - }; - - - /* - * Return true if the value of this Decimal is less than `y`, otherwise return false. - * - */ - P.lessThan = P.lt = function (y) { - return this.cmp(y) < 0; - }; - - - /* - * Return true if the value of this Decimal is less than or equal to `y`, otherwise return false. - * - */ - P.lessThanOrEqualTo = P.lte = function (y) { - return this.cmp(y) < 1; - }; - - - /* - * Return the logarithm of the value of this Decimal to the specified base, rounded to `precision` - * significant digits using rounding mode `rounding`. - * - * If no base is specified, return log[10](arg). - * - * log[base](arg) = ln(arg) / ln(base) - * - * The result will always be correctly rounded if the base of the log is 10, and 'almost always' - * otherwise: - * - * Depending on the rounding mode, the result may be incorrectly rounded if the first fifteen - * rounding digits are [49]99999999999999 or [50]00000000000000. In that case, the maximum error - * between the result and the correctly rounded result will be one ulp (unit in the last place). - * - * log[-b](a) = NaN - * log[0](a) = NaN - * log[1](a) = NaN - * log[NaN](a) = NaN - * log[Infinity](a) = NaN - * log[b](0) = -Infinity - * log[b](-0) = -Infinity - * log[b](-a) = NaN - * log[b](1) = 0 - * log[b](Infinity) = Infinity - * log[b](NaN) = NaN - * - * [base] {number|string|Decimal} The base of the logarithm. - * - */ - P.logarithm = P.log = function (base) { - var isBase10, d, denominator, k, inf, num, sd, r, - arg = this, - Ctor = arg.constructor, - pr = Ctor.precision, - rm = Ctor.rounding, - guard = 5; - - // Default base is 10. - if (base == null) { - base = new Ctor(10); - isBase10 = true; - } else { - base = new Ctor(base); - d = base.d; - - // Return NaN if base is negative, or non-finite, or is 0 or 1. - if (base.s < 0 || !d || !d[0] || base.eq(1)) return new Ctor(NaN); - - isBase10 = base.eq(10); - } - - d = arg.d; - - // Is arg negative, non-finite, 0 or 1? - if (arg.s < 0 || !d || !d[0] || arg.eq(1)) { - return new Ctor(d && !d[0] ? -1 / 0 : arg.s != 1 ? NaN : d ? 0 : 1 / 0); - } - - // The result will have a non-terminating decimal expansion if base is 10 and arg is not an - // integer power of 10. - if (isBase10) { - if (d.length > 1) { - inf = true; - } else { - for (k = d[0]; k % 10 === 0;) k /= 10; - inf = k !== 1; - } - } - - external = false; - sd = pr + guard; - num = naturalLogarithm(arg, sd); - denominator = isBase10 ? getLn10(Ctor, sd + 10) : naturalLogarithm(base, sd); - - // The result will have 5 rounding digits. - r = divide(num, denominator, sd, 1); - - // If at a rounding boundary, i.e. the result's rounding digits are [49]9999 or [50]0000, - // calculate 10 further digits. - // - // If the result is known to have an infinite decimal expansion, repeat this until it is clear - // that the result is above or below the boundary. Otherwise, if after calculating the 10 - // further digits, the last 14 are nines, round up and assume the result is exact. - // Also assume the result is exact if the last 14 are zero. - // - // Example of a result that will be incorrectly rounded: - // log[1048576](4503599627370502) = 2.60000000000000009610279511444746... - // The above result correctly rounded using ROUND_CEIL to 1 decimal place should be 2.7, but it - // will be given as 2.6 as there are 15 zeros immediately after the requested decimal place, so - // the exact result would be assumed to be 2.6, which rounded using ROUND_CEIL to 1 decimal - // place is still 2.6. - if (checkRoundingDigits(r.d, k = pr, rm)) { - - do { - sd += 10; - num = naturalLogarithm(arg, sd); - denominator = isBase10 ? getLn10(Ctor, sd + 10) : naturalLogarithm(base, sd); - r = divide(num, denominator, sd, 1); - - if (!inf) { - - // Check for 14 nines from the 2nd rounding digit, as the first may be 4. - if (+digitsToString(r.d).slice(k + 1, k + 15) + 1 == 1e14) { - r = finalise(r, pr + 1, 0); - } - - break; - } - } while (checkRoundingDigits(r.d, k += 10, rm)); - } - - external = true; - - return finalise(r, pr, rm); - }; - - - /* - * Return a new Decimal whose value is the maximum of the arguments and the value of this Decimal. - * - * arguments {number|string|Decimal} - * - P.max = function () { - Array.prototype.push.call(arguments, this); - return maxOrMin(this.constructor, arguments, 'lt'); - }; - */ - - - /* - * Return a new Decimal whose value is the minimum of the arguments and the value of this Decimal. - * - * arguments {number|string|Decimal} - * - P.min = function () { - Array.prototype.push.call(arguments, this); - return maxOrMin(this.constructor, arguments, 'gt'); - }; - */ - - - /* - * n - 0 = n - * n - N = N - * n - I = -I - * 0 - n = -n - * 0 - 0 = 0 - * 0 - N = N - * 0 - I = -I - * N - n = N - * N - 0 = N - * N - N = N - * N - I = N - * I - n = I - * I - 0 = I - * I - N = N - * I - I = N - * - * Return a new Decimal whose value is the value of this Decimal minus `y`, rounded to `precision` - * significant digits using rounding mode `rounding`. - * - */ - P.minus = P.sub = function (y) { - var d, e, i, j, k, len, pr, rm, xd, xe, xLTy, yd, - x = this, - Ctor = x.constructor; - - y = new Ctor(y); - - // If either is not finite... - if (!x.d || !y.d) { - - // Return NaN if either is NaN. - if (!x.s || !y.s) y = new Ctor(NaN); - - // Return y negated if x is finite and y is ±Infinity. - else if (x.d) y.s = -y.s; - - // Return x if y is finite and x is ±Infinity. - // Return x if both are ±Infinity with different signs. - // Return NaN if both are ±Infinity with the same sign. - else y = new Ctor(y.d || x.s !== y.s ? x : NaN); - - return y; - } - - // If signs differ... - if (x.s != y.s) { - y.s = -y.s; - return x.plus(y); - } - - xd = x.d; - yd = y.d; - pr = Ctor.precision; - rm = Ctor.rounding; - - // If either is zero... - if (!xd[0] || !yd[0]) { - - // Return y negated if x is zero and y is non-zero. - if (yd[0]) y.s = -y.s; - - // Return x if y is zero and x is non-zero. - else if (xd[0]) y = new Ctor(x); - - // Return zero if both are zero. - // From IEEE 754 (2008) 6.3: 0 - 0 = -0 - -0 = -0 when rounding to -Infinity. - else return new Ctor(rm === 3 ? -0 : 0); - - return external ? finalise(y, pr, rm) : y; - } - - // x and y are finite, non-zero numbers with the same sign. - - // Calculate base 1e7 exponents. - e = mathfloor(y.e / LOG_BASE); - xe = mathfloor(x.e / LOG_BASE); - - xd = xd.slice(); - k = xe - e; - - // If base 1e7 exponents differ... - if (k) { - xLTy = k < 0; - - if (xLTy) { - d = xd; - k = -k; - len = yd.length; - } else { - d = yd; - e = xe; - len = xd.length; - } - - // Numbers with massively different exponents would result in a very high number of - // zeros needing to be prepended, but this can be avoided while still ensuring correct - // rounding by limiting the number of zeros to `Math.ceil(pr / LOG_BASE) + 2`. - i = Math.max(Math.ceil(pr / LOG_BASE), len) + 2; - - if (k > i) { - k = i; - d.length = 1; - } - - // Prepend zeros to equalise exponents. - d.reverse(); - for (i = k; i--;) d.push(0); - d.reverse(); - - // Base 1e7 exponents equal. - } else { - - // Check digits to determine which is the bigger number. - - i = xd.length; - len = yd.length; - xLTy = i < len; - if (xLTy) len = i; - - for (i = 0; i < len; i++) { - if (xd[i] != yd[i]) { - xLTy = xd[i] < yd[i]; - break; - } - } - - k = 0; - } - - if (xLTy) { - d = xd; - xd = yd; - yd = d; - y.s = -y.s; - } - - len = xd.length; - - // Append zeros to `xd` if shorter. - // Don't add zeros to `yd` if shorter as subtraction only needs to start at `yd` length. - for (i = yd.length - len; i > 0; --i) xd[len++] = 0; - - // Subtract yd from xd. - for (i = yd.length; i > k;) { - - if (xd[--i] < yd[i]) { - for (j = i; j && xd[--j] === 0;) xd[j] = BASE - 1; - --xd[j]; - xd[i] += BASE; - } - - xd[i] -= yd[i]; - } - - // Remove trailing zeros. - for (; xd[--len] === 0;) xd.pop(); - - // Remove leading zeros and adjust exponent accordingly. - for (; xd[0] === 0; xd.shift()) --e; - - // Zero? - if (!xd[0]) return new Ctor(rm === 3 ? -0 : 0); - - y.d = xd; - y.e = getBase10Exponent(xd, e); - - return external ? finalise(y, pr, rm) : y; - }; - - - /* - * n % 0 = N - * n % N = N - * n % I = n - * 0 % n = 0 - * -0 % n = -0 - * 0 % 0 = N - * 0 % N = N - * 0 % I = 0 - * N % n = N - * N % 0 = N - * N % N = N - * N % I = N - * I % n = N - * I % 0 = N - * I % N = N - * I % I = N - * - * Return a new Decimal whose value is the value of this Decimal modulo `y`, rounded to - * `precision` significant digits using rounding mode `rounding`. - * - * The result depends on the modulo mode. - * - */ - P.modulo = P.mod = function (y) { - var q, - x = this, - Ctor = x.constructor; - - y = new Ctor(y); - - // Return NaN if x is ±Infinity or NaN, or y is NaN or ±0. - if (!x.d || !y.s || y.d && !y.d[0]) return new Ctor(NaN); - - // Return x if y is ±Infinity or x is ±0. - if (!y.d || x.d && !x.d[0]) { - return finalise(new Ctor(x), Ctor.precision, Ctor.rounding); - } - - // Prevent rounding of intermediate calculations. - external = false; - - if (Ctor.modulo == 9) { - - // Euclidian division: q = sign(y) * floor(x / abs(y)) - // result = x - q * y where 0 <= result < abs(y) - q = divide(x, y.abs(), 0, 3, 1); - q.s *= y.s; - } else { - q = divide(x, y, 0, Ctor.modulo, 1); - } - - q = q.times(y); - - external = true; - - return x.minus(q); - }; - - - /* - * Return a new Decimal whose value is the natural exponential of the value of this Decimal, - * i.e. the base e raised to the power the value of this Decimal, rounded to `precision` - * significant digits using rounding mode `rounding`. - * - */ - P.naturalExponential = P.exp = function () { - return naturalExponential(this); - }; - - - /* - * Return a new Decimal whose value is the natural logarithm of the value of this Decimal, - * rounded to `precision` significant digits using rounding mode `rounding`. - * - */ - P.naturalLogarithm = P.ln = function () { - return naturalLogarithm(this); - }; - - - /* - * Return a new Decimal whose value is the value of this Decimal negated, i.e. as if multiplied by - * -1. - * - */ - P.negated = P.neg = function () { - var x = new this.constructor(this); - x.s = -x.s; - return finalise(x); - }; - - - /* - * n + 0 = n - * n + N = N - * n + I = I - * 0 + n = n - * 0 + 0 = 0 - * 0 + N = N - * 0 + I = I - * N + n = N - * N + 0 = N - * N + N = N - * N + I = N - * I + n = I - * I + 0 = I - * I + N = N - * I + I = I - * - * Return a new Decimal whose value is the value of this Decimal plus `y`, rounded to `precision` - * significant digits using rounding mode `rounding`. - * - */ - P.plus = P.add = function (y) { - var carry, d, e, i, k, len, pr, rm, xd, yd, - x = this, - Ctor = x.constructor; - - y = new Ctor(y); - - // If either is not finite... - if (!x.d || !y.d) { - - // Return NaN if either is NaN. - if (!x.s || !y.s) y = new Ctor(NaN); - - // Return x if y is finite and x is ±Infinity. - // Return x if both are ±Infinity with the same sign. - // Return NaN if both are ±Infinity with different signs. - // Return y if x is finite and y is ±Infinity. - else if (!x.d) y = new Ctor(y.d || x.s === y.s ? x : NaN); - - return y; - } - - // If signs differ... - if (x.s != y.s) { - y.s = -y.s; - return x.minus(y); - } - - xd = x.d; - yd = y.d; - pr = Ctor.precision; - rm = Ctor.rounding; - - // If either is zero... - if (!xd[0] || !yd[0]) { - - // Return x if y is zero. - // Return y if y is non-zero. - if (!yd[0]) y = new Ctor(x); - - return external ? finalise(y, pr, rm) : y; - } - - // x and y are finite, non-zero numbers with the same sign. - - // Calculate base 1e7 exponents. - k = mathfloor(x.e / LOG_BASE); - e = mathfloor(y.e / LOG_BASE); - - xd = xd.slice(); - i = k - e; - - // If base 1e7 exponents differ... - if (i) { - - if (i < 0) { - d = xd; - i = -i; - len = yd.length; - } else { - d = yd; - e = k; - len = xd.length; - } - - // Limit number of zeros prepended to max(ceil(pr / LOG_BASE), len) + 1. - k = Math.ceil(pr / LOG_BASE); - len = k > len ? k + 1 : len + 1; - - if (i > len) { - i = len; - d.length = 1; - } - - // Prepend zeros to equalise exponents. Note: Faster to use reverse then do unshifts. - d.reverse(); - for (; i--;) d.push(0); - d.reverse(); - } - - len = xd.length; - i = yd.length; - - // If yd is longer than xd, swap xd and yd so xd points to the longer array. - if (len - i < 0) { - i = len; - d = yd; - yd = xd; - xd = d; - } - - // Only start adding at yd.length - 1 as the further digits of xd can be left as they are. - for (carry = 0; i;) { - carry = (xd[--i] = xd[i] + yd[i] + carry) / BASE | 0; - xd[i] %= BASE; - } - - if (carry) { - xd.unshift(carry); - ++e; - } - - // Remove trailing zeros. - // No need to check for zero, as +x + +y != 0 && -x + -y != 0 - for (len = xd.length; xd[--len] == 0;) xd.pop(); - - y.d = xd; - y.e = getBase10Exponent(xd, e); - - return external ? finalise(y, pr, rm) : y; - }; - - - /* - * Return the number of significant digits of the value of this Decimal. - * - * [z] {boolean|number} Whether to count integer-part trailing zeros: true, false, 1 or 0. - * - */ - P.precision = P.sd = function (z) { - var k, - x = this; - - if (z !== void 0 && z !== !!z && z !== 1 && z !== 0) throw Error(invalidArgument + z); - - if (x.d) { - k = getPrecision(x.d); - if (z && x.e + 1 > k) k = x.e + 1; - } else { - k = NaN; - } - - return k; - }; - - - /* - * Return a new Decimal whose value is the value of this Decimal rounded to a whole number using - * rounding mode `rounding`. - * - */ - P.round = function () { - var x = this, - Ctor = x.constructor; - - return finalise(new Ctor(x), x.e + 1, Ctor.rounding); - }; - - - /* - * Return a new Decimal whose value is the sine of the value in radians of this Decimal. - * - * Domain: [-Infinity, Infinity] - * Range: [-1, 1] - * - * sin(x) = x - x^3/3! + x^5/5! - ... - * - * sin(0) = 0 - * sin(-0) = -0 - * sin(Infinity) = NaN - * sin(-Infinity) = NaN - * sin(NaN) = NaN - * - */ - P.sine = P.sin = function () { - var pr, rm, - x = this, - Ctor = x.constructor; - - if (!x.isFinite()) return new Ctor(NaN); - if (x.isZero()) return new Ctor(x); - - pr = Ctor.precision; - rm = Ctor.rounding; - Ctor.precision = pr + Math.max(x.e, x.sd()) + LOG_BASE; - Ctor.rounding = 1; - - x = sine(Ctor, toLessThanHalfPi(Ctor, x)); - - Ctor.precision = pr; - Ctor.rounding = rm; - - return finalise(quadrant > 2 ? x.neg() : x, pr, rm, true); - }; - - - /* - * Return a new Decimal whose value is the square root of this Decimal, rounded to `precision` - * significant digits using rounding mode `rounding`. - * - * sqrt(-n) = N - * sqrt(N) = N - * sqrt(-I) = N - * sqrt(I) = I - * sqrt(0) = 0 - * sqrt(-0) = -0 - * - */ - P.squareRoot = P.sqrt = function () { - var m, n, sd, r, rep, t, - x = this, - d = x.d, - e = x.e, - s = x.s, - Ctor = x.constructor; - - // Negative/NaN/Infinity/zero? - if (s !== 1 || !d || !d[0]) { - return new Ctor(!s || s < 0 && (!d || d[0]) ? NaN : d ? x : 1 / 0); - } - - external = false; - - // Initial estimate. - s = Math.sqrt(+x); - - // Math.sqrt underflow/overflow? - // Pass x to Math.sqrt as integer, then adjust the exponent of the result. - if (s == 0 || s == 1 / 0) { - n = digitsToString(d); - - if ((n.length + e) % 2 == 0) n += '0'; - s = Math.sqrt(n); - e = mathfloor((e + 1) / 2) - (e < 0 || e % 2); - - if (s == 1 / 0) { - n = '5e' + e; - } else { - n = s.toExponential(); - n = n.slice(0, n.indexOf('e') + 1) + e; - } - - r = new Ctor(n); - } else { - r = new Ctor(s.toString()); - } - - sd = (e = Ctor.precision) + 3; - - // Newton-Raphson iteration. - for (;;) { - t = r; - r = t.plus(divide(x, t, sd + 2, 1)).times(0.5); - - // TODO? Replace with for-loop and checkRoundingDigits. - if (digitsToString(t.d).slice(0, sd) === (n = digitsToString(r.d)).slice(0, sd)) { - n = n.slice(sd - 3, sd + 1); - - // The 4th rounding digit may be in error by -1 so if the 4 rounding digits are 9999 or - // 4999, i.e. approaching a rounding boundary, continue the iteration. - if (n == '9999' || !rep && n == '4999') { - - // On the first iteration only, check to see if rounding up gives the exact result as the - // nines may infinitely repeat. - if (!rep) { - finalise(t, e + 1, 0); - - if (t.times(t).eq(x)) { - r = t; - break; - } - } - - sd += 4; - rep = 1; - } else { - - // If the rounding digits are null, 0{0,4} or 50{0,3}, check for an exact result. - // If not, then there are further digits and m will be truthy. - if (!+n || !+n.slice(1) && n.charAt(0) == '5') { - - // Truncate to the first rounding digit. - finalise(r, e + 1, 1); - m = !r.times(r).eq(x); - } - - break; - } - } - } - - external = true; - - return finalise(r, e, Ctor.rounding, m); - }; - - - /* - * Return a new Decimal whose value is the tangent of the value in radians of this Decimal. - * - * Domain: [-Infinity, Infinity] - * Range: [-Infinity, Infinity] - * - * tan(0) = 0 - * tan(-0) = -0 - * tan(Infinity) = NaN - * tan(-Infinity) = NaN - * tan(NaN) = NaN - * - */ - P.tangent = P.tan = function () { - var pr, rm, - x = this, - Ctor = x.constructor; - - if (!x.isFinite()) return new Ctor(NaN); - if (x.isZero()) return new Ctor(x); - - pr = Ctor.precision; - rm = Ctor.rounding; - Ctor.precision = pr + 10; - Ctor.rounding = 1; - - x = x.sin(); - x.s = 1; - x = divide(x, new Ctor(1).minus(x.times(x)).sqrt(), pr + 10, 0); - - Ctor.precision = pr; - Ctor.rounding = rm; - - return finalise(quadrant == 2 || quadrant == 4 ? x.neg() : x, pr, rm, true); - }; - - - /* - * n * 0 = 0 - * n * N = N - * n * I = I - * 0 * n = 0 - * 0 * 0 = 0 - * 0 * N = N - * 0 * I = N - * N * n = N - * N * 0 = N - * N * N = N - * N * I = N - * I * n = I - * I * 0 = N - * I * N = N - * I * I = I - * - * Return a new Decimal whose value is this Decimal times `y`, rounded to `precision` significant - * digits using rounding mode `rounding`. - * - */ - P.times = P.mul = function (y) { - var carry, e, i, k, r, rL, t, xdL, ydL, - x = this, - Ctor = x.constructor, - xd = x.d, - yd = (y = new Ctor(y)).d; - - y.s *= x.s; - - // If either is NaN, ±Infinity or ±0... - if (!xd || !xd[0] || !yd || !yd[0]) { - - return new Ctor(!y.s || xd && !xd[0] && !yd || yd && !yd[0] && !xd - - // Return NaN if either is NaN. - // Return NaN if x is ±0 and y is ±Infinity, or y is ±0 and x is ±Infinity. - ? NaN - - // Return ±Infinity if either is ±Infinity. - // Return ±0 if either is ±0. - : !xd || !yd ? y.s / 0 : y.s * 0); - } - - e = mathfloor(x.e / LOG_BASE) + mathfloor(y.e / LOG_BASE); - xdL = xd.length; - ydL = yd.length; - - // Ensure xd points to the longer array. - if (xdL < ydL) { - r = xd; - xd = yd; - yd = r; - rL = xdL; - xdL = ydL; - ydL = rL; - } - - // Initialise the result array with zeros. - r = []; - rL = xdL + ydL; - for (i = rL; i--;) r.push(0); - - // Multiply! - for (i = ydL; --i >= 0;) { - carry = 0; - for (k = xdL + i; k > i;) { - t = r[k] + yd[i] * xd[k - i - 1] + carry; - r[k--] = t % BASE | 0; - carry = t / BASE | 0; - } - - r[k] = (r[k] + carry) % BASE | 0; - } - - // Remove trailing zeros. - for (; !r[--rL];) r.pop(); - - if (carry) ++e; - else r.shift(); - - y.d = r; - y.e = getBase10Exponent(r, e); - - return external ? finalise(y, Ctor.precision, Ctor.rounding) : y; - }; - - - /* - * Return a string representing the value of this Decimal in base 2, round to `sd` significant - * digits using rounding mode `rm`. - * - * If the optional `sd` argument is present then return binary exponential notation. - * - * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive. - * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive. - * - */ - P.toBinary = function (sd, rm) { - return toStringBinary(this, 2, sd, rm); - }; - - - /* - * Return a new Decimal whose value is the value of this Decimal rounded to a maximum of `dp` - * decimal places using rounding mode `rm` or `rounding` if `rm` is omitted. - * - * If `dp` is omitted, return a new Decimal whose value is the value of this Decimal. - * - * [dp] {number} Decimal places. Integer, 0 to MAX_DIGITS inclusive. - * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive. - * - */ - P.toDecimalPlaces = P.toDP = function (dp, rm) { - var x = this, - Ctor = x.constructor; - - x = new Ctor(x); - if (dp === void 0) return x; - - checkInt32(dp, 0, MAX_DIGITS); - - if (rm === void 0) rm = Ctor.rounding; - else checkInt32(rm, 0, 8); - - return finalise(x, dp + x.e + 1, rm); - }; - - - /* - * Return a string representing the value of this Decimal in exponential notation rounded to - * `dp` fixed decimal places using rounding mode `rounding`. - * - * [dp] {number} Decimal places. Integer, 0 to MAX_DIGITS inclusive. - * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive. - * - */ - P.toExponential = function (dp, rm) { - var str, - x = this, - Ctor = x.constructor; - - if (dp === void 0) { - str = finiteToString(x, true); - } else { - checkInt32(dp, 0, MAX_DIGITS); - - if (rm === void 0) rm = Ctor.rounding; - else checkInt32(rm, 0, 8); - - x = finalise(new Ctor(x), dp + 1, rm); - str = finiteToString(x, true, dp + 1); - } - - return x.isNeg() && !x.isZero() ? '-' + str : str; - }; - - - /* - * Return a string representing the value of this Decimal in normal (fixed-point) notation to - * `dp` fixed decimal places and rounded using rounding mode `rm` or `rounding` if `rm` is - * omitted. - * - * As with JavaScript numbers, (-0).toFixed(0) is '0', but e.g. (-0.00001).toFixed(0) is '-0'. - * - * [dp] {number} Decimal places. Integer, 0 to MAX_DIGITS inclusive. - * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive. - * - * (-0).toFixed(0) is '0', but (-0.1).toFixed(0) is '-0'. - * (-0).toFixed(1) is '0.0', but (-0.01).toFixed(1) is '-0.0'. - * (-0).toFixed(3) is '0.000'. - * (-0.5).toFixed(0) is '-0'. - * - */ - P.toFixed = function (dp, rm) { - var str, y, - x = this, - Ctor = x.constructor; - - if (dp === void 0) { - str = finiteToString(x); - } else { - checkInt32(dp, 0, MAX_DIGITS); - - if (rm === void 0) rm = Ctor.rounding; - else checkInt32(rm, 0, 8); - - y = finalise(new Ctor(x), dp + x.e + 1, rm); - str = finiteToString(y, false, dp + y.e + 1); - } - - // To determine whether to add the minus sign look at the value before it was rounded, - // i.e. look at `x` rather than `y`. - return x.isNeg() && !x.isZero() ? '-' + str : str; - }; - - - /* - * Return an array representing the value of this Decimal as a simple fraction with an integer - * numerator and an integer denominator. - * - * The denominator will be a positive non-zero value less than or equal to the specified maximum - * denominator. If a maximum denominator is not specified, the denominator will be the lowest - * value necessary to represent the number exactly. - * - * [maxD] {number|string|Decimal} Maximum denominator. Integer >= 1 and < Infinity. - * - */ - P.toFraction = function (maxD) { - var d, d0, d1, d2, e, k, n, n0, n1, pr, q, r, - x = this, - xd = x.d, - Ctor = x.constructor; - - if (!xd) return new Ctor(x); - - n1 = d0 = new Ctor(1); - d1 = n0 = new Ctor(0); - - d = new Ctor(d1); - e = d.e = getPrecision(xd) - x.e - 1; - k = e % LOG_BASE; - d.d[0] = mathpow(10, k < 0 ? LOG_BASE + k : k); - - if (maxD == null) { - - // d is 10**e, the minimum max-denominator needed. - maxD = e > 0 ? d : n1; - } else { - n = new Ctor(maxD); - if (!n.isInt() || n.lt(n1)) throw Error(invalidArgument + n); - maxD = n.gt(d) ? (e > 0 ? d : n1) : n; - } - - external = false; - n = new Ctor(digitsToString(xd)); - pr = Ctor.precision; - Ctor.precision = e = xd.length * LOG_BASE * 2; - - for (;;) { - q = divide(n, d, 0, 1, 1); - d2 = d0.plus(q.times(d1)); - if (d2.cmp(maxD) == 1) break; - d0 = d1; - d1 = d2; - d2 = n1; - n1 = n0.plus(q.times(d2)); - n0 = d2; - d2 = d; - d = n.minus(q.times(d2)); - n = d2; - } - - d2 = divide(maxD.minus(d0), d1, 0, 1, 1); - n0 = n0.plus(d2.times(n1)); - d0 = d0.plus(d2.times(d1)); - n0.s = n1.s = x.s; - - // Determine which fraction is closer to x, n0/d0 or n1/d1? - r = divide(n1, d1, e, 1).minus(x).abs().cmp(divide(n0, d0, e, 1).minus(x).abs()) < 1 - ? [n1, d1] : [n0, d0]; - - Ctor.precision = pr; - external = true; - - return r; - }; - - - /* - * Return a string representing the value of this Decimal in base 16, round to `sd` significant - * digits using rounding mode `rm`. - * - * If the optional `sd` argument is present then return binary exponential notation. - * - * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive. - * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive. - * - */ - P.toHexadecimal = P.toHex = function (sd, rm) { - return toStringBinary(this, 16, sd, rm); - }; - - - /* - * Returns a new Decimal whose value is the nearest multiple of `y` in the direction of rounding - * mode `rm`, or `Decimal.rounding` if `rm` is omitted, to the value of this Decimal. - * - * The return value will always have the same sign as this Decimal, unless either this Decimal - * or `y` is NaN, in which case the return value will be also be NaN. - * - * The return value is not affected by the value of `precision`. - * - * y {number|string|Decimal} The magnitude to round to a multiple of. - * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive. - * - * 'toNearest() rounding mode not an integer: {rm}' - * 'toNearest() rounding mode out of range: {rm}' - * - */ - P.toNearest = function (y, rm) { - var x = this, - Ctor = x.constructor; - - x = new Ctor(x); - - if (y == null) { - - // If x is not finite, return x. - if (!x.d) return x; - - y = new Ctor(1); - rm = Ctor.rounding; - } else { - y = new Ctor(y); - if (rm === void 0) { - rm = Ctor.rounding; - } else { - checkInt32(rm, 0, 8); - } - - // If x is not finite, return x if y is not NaN, else NaN. - if (!x.d) return y.s ? x : y; - - // If y is not finite, return Infinity with the sign of x if y is Infinity, else NaN. - if (!y.d) { - if (y.s) y.s = x.s; - return y; - } - } - - // If y is not zero, calculate the nearest multiple of y to x. - if (y.d[0]) { - external = false; - x = divide(x, y, 0, rm, 1).times(y); - external = true; - finalise(x); - - // If y is zero, return zero with the sign of x. - } else { - y.s = x.s; - x = y; - } - - return x; - }; - - - /* - * Return the value of this Decimal converted to a number primitive. - * Zero keeps its sign. - * - */ - P.toNumber = function () { - return +this; - }; - - - /* - * Return a string representing the value of this Decimal in base 8, round to `sd` significant - * digits using rounding mode `rm`. - * - * If the optional `sd` argument is present then return binary exponential notation. - * - * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive. - * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive. - * - */ - P.toOctal = function (sd, rm) { - return toStringBinary(this, 8, sd, rm); - }; - - - /* - * Return a new Decimal whose value is the value of this Decimal raised to the power `y`, rounded - * to `precision` significant digits using rounding mode `rounding`. - * - * ECMAScript compliant. - * - * pow(x, NaN) = NaN - * pow(x, ±0) = 1 - - * pow(NaN, non-zero) = NaN - * pow(abs(x) > 1, +Infinity) = +Infinity - * pow(abs(x) > 1, -Infinity) = +0 - * pow(abs(x) == 1, ±Infinity) = NaN - * pow(abs(x) < 1, +Infinity) = +0 - * pow(abs(x) < 1, -Infinity) = +Infinity - * pow(+Infinity, y > 0) = +Infinity - * pow(+Infinity, y < 0) = +0 - * pow(-Infinity, odd integer > 0) = -Infinity - * pow(-Infinity, even integer > 0) = +Infinity - * pow(-Infinity, odd integer < 0) = -0 - * pow(-Infinity, even integer < 0) = +0 - * pow(+0, y > 0) = +0 - * pow(+0, y < 0) = +Infinity - * pow(-0, odd integer > 0) = -0 - * pow(-0, even integer > 0) = +0 - * pow(-0, odd integer < 0) = -Infinity - * pow(-0, even integer < 0) = +Infinity - * pow(finite x < 0, finite non-integer) = NaN - * - * For non-integer or very large exponents pow(x, y) is calculated using - * - * x^y = exp(y*ln(x)) - * - * Assuming the first 15 rounding digits are each equally likely to be any digit 0-9, the - * probability of an incorrectly rounded result - * P([49]9{14} | [50]0{14}) = 2 * 0.2 * 10^-14 = 4e-15 = 1/2.5e+14 - * i.e. 1 in 250,000,000,000,000 - * - * If a result is incorrectly rounded the maximum error will be 1 ulp (unit in last place). - * - * y {number|string|Decimal} The power to which to raise this Decimal. - * - */ - P.toPower = P.pow = function (y) { - var e, k, pr, r, rm, s, - x = this, - Ctor = x.constructor, - yn = +(y = new Ctor(y)); - - // Either ±Infinity, NaN or ±0? - if (!x.d || !y.d || !x.d[0] || !y.d[0]) return new Ctor(mathpow(+x, yn)); - - x = new Ctor(x); - - if (x.eq(1)) return x; - - pr = Ctor.precision; - rm = Ctor.rounding; - - if (y.eq(1)) return finalise(x, pr, rm); - - // y exponent - e = mathfloor(y.e / LOG_BASE); - - // If y is a small integer use the 'exponentiation by squaring' algorithm. - if (e >= y.d.length - 1 && (k = yn < 0 ? -yn : yn) <= MAX_SAFE_INTEGER) { - r = intPow(Ctor, x, k, pr); - return y.s < 0 ? new Ctor(1).div(r) : finalise(r, pr, rm); - } - - s = x.s; - - // if x is negative - if (s < 0) { - - // if y is not an integer - if (e < y.d.length - 1) return new Ctor(NaN); - - // Result is positive if x is negative and the last digit of integer y is even. - if ((y.d[e] & 1) == 0) s = 1; - - // if x.eq(-1) - if (x.e == 0 && x.d[0] == 1 && x.d.length == 1) { - x.s = s; - return x; - } - } - - // Estimate result exponent. - // x^y = 10^e, where e = y * log10(x) - // log10(x) = log10(x_significand) + x_exponent - // log10(x_significand) = ln(x_significand) / ln(10) - k = mathpow(+x, yn); - e = k == 0 || !isFinite(k) - ? mathfloor(yn * (Math.log('0.' + digitsToString(x.d)) / Math.LN10 + x.e + 1)) - : new Ctor(k + '').e; - - // Exponent estimate may be incorrect e.g. x: 0.999999999999999999, y: 2.29, e: 0, r.e: -1. - - // Overflow/underflow? - if (e > Ctor.maxE + 1 || e < Ctor.minE - 1) return new Ctor(e > 0 ? s / 0 : 0); - - external = false; - Ctor.rounding = x.s = 1; - - // Estimate the extra guard digits needed to ensure five correct rounding digits from - // naturalLogarithm(x). Example of failure without these extra digits (precision: 10): - // new Decimal(2.32456).pow('2087987436534566.46411') - // should be 1.162377823e+764914905173815, but is 1.162355823e+764914905173815 - k = Math.min(12, (e + '').length); - - // r = x^y = exp(y*ln(x)) - r = naturalExponential(y.times(naturalLogarithm(x, pr + k)), pr); - - // r may be Infinity, e.g. (0.9999999999999999).pow(-1e+40) - if (r.d) { - - // Truncate to the required precision plus five rounding digits. - r = finalise(r, pr + 5, 1); - - // If the rounding digits are [49]9999 or [50]0000 increase the precision by 10 and recalculate - // the result. - if (checkRoundingDigits(r.d, pr, rm)) { - e = pr + 10; - - // Truncate to the increased precision plus five rounding digits. - r = finalise(naturalExponential(y.times(naturalLogarithm(x, e + k)), e), e + 5, 1); - - // Check for 14 nines from the 2nd rounding digit (the first rounding digit may be 4 or 9). - if (+digitsToString(r.d).slice(pr + 1, pr + 15) + 1 == 1e14) { - r = finalise(r, pr + 1, 0); - } - } - } - - r.s = s; - external = true; - Ctor.rounding = rm; - - return finalise(r, pr, rm); - }; - - - /* - * Return a string representing the value of this Decimal rounded to `sd` significant digits - * using rounding mode `rounding`. - * - * Return exponential notation if `sd` is less than the number of digits necessary to represent - * the integer part of the value in normal notation. - * - * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive. - * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive. - * - */ - P.toPrecision = function (sd, rm) { - var str, - x = this, - Ctor = x.constructor; - - if (sd === void 0) { - str = finiteToString(x, x.e <= Ctor.toExpNeg || x.e >= Ctor.toExpPos); - } else { - checkInt32(sd, 1, MAX_DIGITS); - - if (rm === void 0) rm = Ctor.rounding; - else checkInt32(rm, 0, 8); - - x = finalise(new Ctor(x), sd, rm); - str = finiteToString(x, sd <= x.e || x.e <= Ctor.toExpNeg, sd); - } - - return x.isNeg() && !x.isZero() ? '-' + str : str; - }; - - - /* - * Return a new Decimal whose value is the value of this Decimal rounded to a maximum of `sd` - * significant digits using rounding mode `rm`, or to `precision` and `rounding` respectively if - * omitted. - * - * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive. - * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive. - * - * 'toSD() digits out of range: {sd}' - * 'toSD() digits not an integer: {sd}' - * 'toSD() rounding mode not an integer: {rm}' - * 'toSD() rounding mode out of range: {rm}' - * - */ - P.toSignificantDigits = P.toSD = function (sd, rm) { - var x = this, - Ctor = x.constructor; - - if (sd === void 0) { - sd = Ctor.precision; - rm = Ctor.rounding; - } else { - checkInt32(sd, 1, MAX_DIGITS); - - if (rm === void 0) rm = Ctor.rounding; - else checkInt32(rm, 0, 8); - } - - return finalise(new Ctor(x), sd, rm); - }; - - - /* - * Return a string representing the value of this Decimal. - * - * Return exponential notation if this Decimal has a positive exponent equal to or greater than - * `toExpPos`, or a negative exponent equal to or less than `toExpNeg`. - * - */ - P.toString = function () { - var x = this, - Ctor = x.constructor, - str = finiteToString(x, x.e <= Ctor.toExpNeg || x.e >= Ctor.toExpPos); - - return x.isNeg() && !x.isZero() ? '-' + str : str; - }; - - - /* - * Return a new Decimal whose value is the value of this Decimal truncated to a whole number. - * - */ - P.truncated = P.trunc = function () { - return finalise(new this.constructor(this), this.e + 1, 1); - }; - - - /* - * Return a string representing the value of this Decimal. - * Unlike `toString`, negative zero will include the minus sign. - * - */ - P.valueOf = P.toJSON = function () { - var x = this, - Ctor = x.constructor, - str = finiteToString(x, x.e <= Ctor.toExpNeg || x.e >= Ctor.toExpPos); - - return x.isNeg() ? '-' + str : str; - }; - - - // Helper functions for Decimal.prototype (P) and/or Decimal methods, and their callers. - - - /* - * digitsToString P.cubeRoot, P.logarithm, P.squareRoot, P.toFraction, P.toPower, - * finiteToString, naturalExponential, naturalLogarithm - * checkInt32 P.toDecimalPlaces, P.toExponential, P.toFixed, P.toNearest, - * P.toPrecision, P.toSignificantDigits, toStringBinary, random - * checkRoundingDigits P.logarithm, P.toPower, naturalExponential, naturalLogarithm - * convertBase toStringBinary, parseOther - * cos P.cos - * divide P.atanh, P.cubeRoot, P.dividedBy, P.dividedToIntegerBy, - * P.logarithm, P.modulo, P.squareRoot, P.tan, P.tanh, P.toFraction, - * P.toNearest, toStringBinary, naturalExponential, naturalLogarithm, - * taylorSeries, atan2, parseOther - * finalise P.absoluteValue, P.atan, P.atanh, P.ceil, P.cos, P.cosh, - * P.cubeRoot, P.dividedToIntegerBy, P.floor, P.logarithm, P.minus, - * P.modulo, P.negated, P.plus, P.round, P.sin, P.sinh, P.squareRoot, - * P.tan, P.times, P.toDecimalPlaces, P.toExponential, P.toFixed, - * P.toNearest, P.toPower, P.toPrecision, P.toSignificantDigits, - * P.truncated, divide, getLn10, getPi, naturalExponential, - * naturalLogarithm, ceil, floor, round, trunc - * finiteToString P.toExponential, P.toFixed, P.toPrecision, P.toString, P.valueOf, - * toStringBinary - * getBase10Exponent P.minus, P.plus, P.times, parseOther - * getLn10 P.logarithm, naturalLogarithm - * getPi P.acos, P.asin, P.atan, toLessThanHalfPi, atan2 - * getPrecision P.precision, P.toFraction - * getZeroString digitsToString, finiteToString - * intPow P.toPower, parseOther - * isOdd toLessThanHalfPi - * maxOrMin max, min - * naturalExponential P.naturalExponential, P.toPower - * naturalLogarithm P.acosh, P.asinh, P.atanh, P.logarithm, P.naturalLogarithm, - * P.toPower, naturalExponential - * nonFiniteToString finiteToString, toStringBinary - * parseDecimal Decimal - * parseOther Decimal - * sin P.sin - * taylorSeries P.cosh, P.sinh, cos, sin - * toLessThanHalfPi P.cos, P.sin - * toStringBinary P.toBinary, P.toHexadecimal, P.toOctal - * truncate intPow - * - * Throws: P.logarithm, P.precision, P.toFraction, checkInt32, getLn10, getPi, - * naturalLogarithm, config, parseOther, random, Decimal - */ - - - function digitsToString(d) { - var i, k, ws, - indexOfLastWord = d.length - 1, - str = '', - w = d[0]; - - if (indexOfLastWord > 0) { - str += w; - for (i = 1; i < indexOfLastWord; i++) { - ws = d[i] + ''; - k = LOG_BASE - ws.length; - if (k) str += getZeroString(k); - str += ws; - } - - w = d[i]; - ws = w + ''; - k = LOG_BASE - ws.length; - if (k) str += getZeroString(k); - } else if (w === 0) { - return '0'; - } - - // Remove trailing zeros of last w. - for (; w % 10 === 0;) w /= 10; - - return str + w; - } - - - function checkInt32(i, min, max) { - if (i !== ~~i || i < min || i > max) { - throw Error(invalidArgument + i); - } - } - - - /* - * Check 5 rounding digits if `repeating` is null, 4 otherwise. - * `repeating == null` if caller is `log` or `pow`, - * `repeating != null` if caller is `naturalLogarithm` or `naturalExponential`. - */ - function checkRoundingDigits(d, i, rm, repeating) { - var di, k, r, rd; - - // Get the length of the first word of the array d. - for (k = d[0]; k >= 10; k /= 10) --i; - - // Is the rounding digit in the first word of d? - if (--i < 0) { - i += LOG_BASE; - di = 0; - } else { - di = Math.ceil((i + 1) / LOG_BASE); - i %= LOG_BASE; - } - - // i is the index (0 - 6) of the rounding digit. - // E.g. if within the word 3487563 the first rounding digit is 5, - // then i = 4, k = 1000, rd = 3487563 % 1000 = 563 - k = mathpow(10, LOG_BASE - i); - rd = d[di] % k | 0; - - if (repeating == null) { - if (i < 3) { - if (i == 0) rd = rd / 100 | 0; - else if (i == 1) rd = rd / 10 | 0; - r = rm < 4 && rd == 99999 || rm > 3 && rd == 49999 || rd == 50000 || rd == 0; - } else { - r = (rm < 4 && rd + 1 == k || rm > 3 && rd + 1 == k / 2) && - (d[di + 1] / k / 100 | 0) == mathpow(10, i - 2) - 1 || - (rd == k / 2 || rd == 0) && (d[di + 1] / k / 100 | 0) == 0; - } - } else { - if (i < 4) { - if (i == 0) rd = rd / 1000 | 0; - else if (i == 1) rd = rd / 100 | 0; - else if (i == 2) rd = rd / 10 | 0; - r = (repeating || rm < 4) && rd == 9999 || !repeating && rm > 3 && rd == 4999; - } else { - r = ((repeating || rm < 4) && rd + 1 == k || - (!repeating && rm > 3) && rd + 1 == k / 2) && - (d[di + 1] / k / 1000 | 0) == mathpow(10, i - 3) - 1; - } - } - - return r; - } - - - // Convert string of `baseIn` to an array of numbers of `baseOut`. - // Eg. convertBase('255', 10, 16) returns [15, 15]. - // Eg. convertBase('ff', 16, 10) returns [2, 5, 5]. - function convertBase(str, baseIn, baseOut) { - var j, - arr = [0], - arrL, - i = 0, - strL = str.length; - - for (; i < strL;) { - for (arrL = arr.length; arrL--;) arr[arrL] *= baseIn; - arr[0] += NUMERALS.indexOf(str.charAt(i++)); - for (j = 0; j < arr.length; j++) { - if (arr[j] > baseOut - 1) { - if (arr[j + 1] === void 0) arr[j + 1] = 0; - arr[j + 1] += arr[j] / baseOut | 0; - arr[j] %= baseOut; - } - } - } - - return arr.reverse(); - } - - - /* - * cos(x) = 1 - x^2/2! + x^4/4! - ... - * |x| < pi/2 - * - */ - function cosine(Ctor, x) { - var k, len, y; - - if (x.isZero()) return x; - - // Argument reduction: cos(4x) = 8*(cos^4(x) - cos^2(x)) + 1 - // i.e. cos(x) = 8*(cos^4(x/4) - cos^2(x/4)) + 1 - - // Estimate the optimum number of times to use the argument reduction. - len = x.d.length; - if (len < 32) { - k = Math.ceil(len / 3); - y = (1 / tinyPow(4, k)).toString(); - } else { - k = 16; - y = '2.3283064365386962890625e-10'; - } - - Ctor.precision += k; - - x = taylorSeries(Ctor, 1, x.times(y), new Ctor(1)); - - // Reverse argument reduction - for (var i = k; i--;) { - var cos2x = x.times(x); - x = cos2x.times(cos2x).minus(cos2x).times(8).plus(1); - } - - Ctor.precision -= k; - - return x; - } - - - /* - * Perform division in the specified base. - */ - var divide = (function () { - - // Assumes non-zero x and k, and hence non-zero result. - function multiplyInteger(x, k, base) { - var temp, - carry = 0, - i = x.length; - - for (x = x.slice(); i--;) { - temp = x[i] * k + carry; - x[i] = temp % base | 0; - carry = temp / base | 0; - } - - if (carry) x.unshift(carry); - - return x; - } - - function compare(a, b, aL, bL) { - var i, r; - - if (aL != bL) { - r = aL > bL ? 1 : -1; - } else { - for (i = r = 0; i < aL; i++) { - if (a[i] != b[i]) { - r = a[i] > b[i] ? 1 : -1; - break; - } - } - } - - return r; - } - - function subtract(a, b, aL, base) { - var i = 0; - - // Subtract b from a. - for (; aL--;) { - a[aL] -= i; - i = a[aL] < b[aL] ? 1 : 0; - a[aL] = i * base + a[aL] - b[aL]; - } - - // Remove leading zeros. - for (; !a[0] && a.length > 1;) a.shift(); - } - - return function (x, y, pr, rm, dp, base) { - var cmp, e, i, k, logBase, more, prod, prodL, q, qd, rem, remL, rem0, sd, t, xi, xL, yd0, - yL, yz, - Ctor = x.constructor, - sign = x.s == y.s ? 1 : -1, - xd = x.d, - yd = y.d; - - // Either NaN, Infinity or 0? - if (!xd || !xd[0] || !yd || !yd[0]) { - - return new Ctor(// Return NaN if either NaN, or both Infinity or 0. - !x.s || !y.s || (xd ? yd && xd[0] == yd[0] : !yd) ? NaN : - - // Return ±0 if x is 0 or y is ±Infinity, or return ±Infinity as y is 0. - xd && xd[0] == 0 || !yd ? sign * 0 : sign / 0); - } - - if (base) { - logBase = 1; - e = x.e - y.e; - } else { - base = BASE; - logBase = LOG_BASE; - e = mathfloor(x.e / logBase) - mathfloor(y.e / logBase); - } - - yL = yd.length; - xL = xd.length; - q = new Ctor(sign); - qd = q.d = []; - - // Result exponent may be one less than e. - // The digit array of a Decimal from toStringBinary may have trailing zeros. - for (i = 0; yd[i] == (xd[i] || 0); i++); - - if (yd[i] > (xd[i] || 0)) e--; - - if (pr == null) { - sd = pr = Ctor.precision; - rm = Ctor.rounding; - } else if (dp) { - sd = pr + (x.e - y.e) + 1; - } else { - sd = pr; - } - - if (sd < 0) { - qd.push(1); - more = true; - } else { - - // Convert precision in number of base 10 digits to base 1e7 digits. - sd = sd / logBase + 2 | 0; - i = 0; - - // divisor < 1e7 - if (yL == 1) { - k = 0; - yd = yd[0]; - sd++; - - // k is the carry. - for (; (i < xL || k) && sd--; i++) { - t = k * base + (xd[i] || 0); - qd[i] = t / yd | 0; - k = t % yd | 0; - } - - more = k || i < xL; - - // divisor >= 1e7 - } else { - - // Normalise xd and yd so highest order digit of yd is >= base/2 - k = base / (yd[0] + 1) | 0; - - if (k > 1) { - yd = multiplyInteger(yd, k, base); - xd = multiplyInteger(xd, k, base); - yL = yd.length; - xL = xd.length; - } - - xi = yL; - rem = xd.slice(0, yL); - remL = rem.length; - - // Add zeros to make remainder as long as divisor. - for (; remL < yL;) rem[remL++] = 0; - - yz = yd.slice(); - yz.unshift(0); - yd0 = yd[0]; - - if (yd[1] >= base / 2) ++yd0; - - do { - k = 0; - - // Compare divisor and remainder. - cmp = compare(yd, rem, yL, remL); - - // If divisor < remainder. - if (cmp < 0) { - - // Calculate trial digit, k. - rem0 = rem[0]; - if (yL != remL) rem0 = rem0 * base + (rem[1] || 0); - - // k will be how many times the divisor goes into the current remainder. - k = rem0 / yd0 | 0; - - // Algorithm: - // 1. product = divisor * trial digit (k) - // 2. if product > remainder: product -= divisor, k-- - // 3. remainder -= product - // 4. if product was < remainder at 2: - // 5. compare new remainder and divisor - // 6. If remainder > divisor: remainder -= divisor, k++ - - if (k > 1) { - if (k >= base) k = base - 1; - - // product = divisor * trial digit. - prod = multiplyInteger(yd, k, base); - prodL = prod.length; - remL = rem.length; - - // Compare product and remainder. - cmp = compare(prod, rem, prodL, remL); - - // product > remainder. - if (cmp == 1) { - k--; - - // Subtract divisor from product. - subtract(prod, yL < prodL ? yz : yd, prodL, base); - } - } else { - - // cmp is -1. - // If k is 0, there is no need to compare yd and rem again below, so change cmp to 1 - // to avoid it. If k is 1 there is a need to compare yd and rem again below. - if (k == 0) cmp = k = 1; - prod = yd.slice(); - } - - prodL = prod.length; - if (prodL < remL) prod.unshift(0); - - // Subtract product from remainder. - subtract(rem, prod, remL, base); - - // If product was < previous remainder. - if (cmp == -1) { - remL = rem.length; - - // Compare divisor and new remainder. - cmp = compare(yd, rem, yL, remL); - - // If divisor < new remainder, subtract divisor from remainder. - if (cmp < 1) { - k++; - - // Subtract divisor from remainder. - subtract(rem, yL < remL ? yz : yd, remL, base); - } - } - - remL = rem.length; - } else if (cmp === 0) { - k++; - rem = [0]; - } // if cmp === 1, k will be 0 - - // Add the next digit, k, to the result array. - qd[i++] = k; - - // Update the remainder. - if (cmp && rem[0]) { - rem[remL++] = xd[xi] || 0; - } else { - rem = [xd[xi]]; - remL = 1; - } - - } while ((xi++ < xL || rem[0] !== void 0) && sd--); - - more = rem[0] !== void 0; - } - - // Leading zero? - if (!qd[0]) qd.shift(); - } - - // logBase is 1 when divide is being used for base conversion. - if (logBase == 1) { - q.e = e; - inexact = more; - } else { - - // To calculate q.e, first get the number of digits of qd[0]. - for (i = 1, k = qd[0]; k >= 10; k /= 10) i++; - q.e = i + e * logBase - 1; - - finalise(q, dp ? pr + q.e + 1 : pr, rm, more); - } - - return q; - }; - })(); - - - /* - * Round `x` to `sd` significant digits using rounding mode `rm`. - * Check for over/under-flow. - */ - function finalise(x, sd, rm, isTruncated) { - var digits, i, j, k, rd, roundUp, w, xd, xdi, - Ctor = x.constructor; - - // Don't round if sd is null or undefined. - out: if (sd != null) { - xd = x.d; - - // Infinity/NaN. - if (!xd) return x; - - // rd: the rounding digit, i.e. the digit after the digit that may be rounded up. - // w: the word of xd containing rd, a base 1e7 number. - // xdi: the index of w within xd. - // digits: the number of digits of w. - // i: what would be the index of rd within w if all the numbers were 7 digits long (i.e. if - // they had leading zeros) - // j: if > 0, the actual index of rd within w (if < 0, rd is a leading zero). - - // Get the length of the first word of the digits array xd. - for (digits = 1, k = xd[0]; k >= 10; k /= 10) digits++; - i = sd - digits; - - // Is the rounding digit in the first word of xd? - if (i < 0) { - i += LOG_BASE; - j = sd; - w = xd[xdi = 0]; - - // Get the rounding digit at index j of w. - rd = w / mathpow(10, digits - j - 1) % 10 | 0; - } else { - xdi = Math.ceil((i + 1) / LOG_BASE); - k = xd.length; - if (xdi >= k) { - if (isTruncated) { - - // Needed by `naturalExponential`, `naturalLogarithm` and `squareRoot`. - for (; k++ <= xdi;) xd.push(0); - w = rd = 0; - digits = 1; - i %= LOG_BASE; - j = i - LOG_BASE + 1; - } else { - break out; - } - } else { - w = k = xd[xdi]; - - // Get the number of digits of w. - for (digits = 1; k >= 10; k /= 10) digits++; - - // Get the index of rd within w. - i %= LOG_BASE; - - // Get the index of rd within w, adjusted for leading zeros. - // The number of leading zeros of w is given by LOG_BASE - digits. - j = i - LOG_BASE + digits; - - // Get the rounding digit at index j of w. - rd = j < 0 ? 0 : w / mathpow(10, digits - j - 1) % 10 | 0; - } - } - - // Are there any non-zero digits after the rounding digit? - isTruncated = isTruncated || sd < 0 || - xd[xdi + 1] !== void 0 || (j < 0 ? w : w % mathpow(10, digits - j - 1)); - - // The expression `w % mathpow(10, digits - j - 1)` returns all the digits of w to the right - // of the digit at (left-to-right) index j, e.g. if w is 908714 and j is 2, the expression - // will give 714. - - roundUp = rm < 4 - ? (rd || isTruncated) && (rm == 0 || rm == (x.s < 0 ? 3 : 2)) - : rd > 5 || rd == 5 && (rm == 4 || isTruncated || rm == 6 && - - // Check whether the digit to the left of the rounding digit is odd. - ((i > 0 ? j > 0 ? w / mathpow(10, digits - j) : 0 : xd[xdi - 1]) % 10) & 1 || - rm == (x.s < 0 ? 8 : 7)); - - if (sd < 1 || !xd[0]) { - xd.length = 0; - if (roundUp) { - - // Convert sd to decimal places. - sd -= x.e + 1; - - // 1, 0.1, 0.01, 0.001, 0.0001 etc. - xd[0] = mathpow(10, (LOG_BASE - sd % LOG_BASE) % LOG_BASE); - x.e = -sd || 0; - } else { - - // Zero. - xd[0] = x.e = 0; - } - - return x; - } - - // Remove excess digits. - if (i == 0) { - xd.length = xdi; - k = 1; - xdi--; - } else { - xd.length = xdi + 1; - k = mathpow(10, LOG_BASE - i); - - // E.g. 56700 becomes 56000 if 7 is the rounding digit. - // j > 0 means i > number of leading zeros of w. - xd[xdi] = j > 0 ? (w / mathpow(10, digits - j) % mathpow(10, j) | 0) * k : 0; - } - - if (roundUp) { - for (;;) { - - // Is the digit to be rounded up in the first word of xd? - if (xdi == 0) { - - // i will be the length of xd[0] before k is added. - for (i = 1, j = xd[0]; j >= 10; j /= 10) i++; - j = xd[0] += k; - for (k = 1; j >= 10; j /= 10) k++; - - // if i != k the length has increased. - if (i != k) { - x.e++; - if (xd[0] == BASE) xd[0] = 1; - } - - break; - } else { - xd[xdi] += k; - if (xd[xdi] != BASE) break; - xd[xdi--] = 0; - k = 1; - } - } - } - - // Remove trailing zeros. - for (i = xd.length; xd[--i] === 0;) xd.pop(); - } - - if (external) { - - // Overflow? - if (x.e > Ctor.maxE) { - - // Infinity. - x.d = null; - x.e = NaN; - - // Underflow? - } else if (x.e < Ctor.minE) { - - // Zero. - x.e = 0; - x.d = [0]; - // Ctor.underflow = true; - } // else Ctor.underflow = false; - } - - return x; - } - - - function finiteToString(x, isExp, sd) { - if (!x.isFinite()) return nonFiniteToString(x); - var k, - e = x.e, - str = digitsToString(x.d), - len = str.length; - - if (isExp) { - if (sd && (k = sd - len) > 0) { - str = str.charAt(0) + '.' + str.slice(1) + getZeroString(k); - } else if (len > 1) { - str = str.charAt(0) + '.' + str.slice(1); - } - - str = str + (x.e < 0 ? 'e' : 'e+') + x.e; - } else if (e < 0) { - str = '0.' + getZeroString(-e - 1) + str; - if (sd && (k = sd - len) > 0) str += getZeroString(k); - } else if (e >= len) { - str += getZeroString(e + 1 - len); - if (sd && (k = sd - e - 1) > 0) str = str + '.' + getZeroString(k); - } else { - if ((k = e + 1) < len) str = str.slice(0, k) + '.' + str.slice(k); - if (sd && (k = sd - len) > 0) { - if (e + 1 === len) str += '.'; - str += getZeroString(k); - } - } - - return str; - } - - - // Calculate the base 10 exponent from the base 1e7 exponent. - function getBase10Exponent(digits, e) { - var w = digits[0]; - - // Add the number of digits of the first word of the digits array. - for ( e *= LOG_BASE; w >= 10; w /= 10) e++; - return e; - } - - - function getLn10(Ctor, sd, pr) { - if (sd > LN10_PRECISION) { - - // Reset global state in case the exception is caught. - external = true; - if (pr) Ctor.precision = pr; - throw Error(precisionLimitExceeded); - } - return finalise(new Ctor(LN10), sd, 1, true); - } - - - function getPi(Ctor, sd, rm) { - if (sd > PI_PRECISION) throw Error(precisionLimitExceeded); - return finalise(new Ctor(PI), sd, rm, true); - } - - - function getPrecision(digits) { - var w = digits.length - 1, - len = w * LOG_BASE + 1; - - w = digits[w]; - - // If non-zero... - if (w) { - - // Subtract the number of trailing zeros of the last word. - for (; w % 10 == 0; w /= 10) len--; - - // Add the number of digits of the first word. - for (w = digits[0]; w >= 10; w /= 10) len++; - } - - return len; - } - - - function getZeroString(k) { - var zs = ''; - for (; k--;) zs += '0'; - return zs; - } - - - /* - * Return a new Decimal whose value is the value of Decimal `x` to the power `n`, where `n` is an - * integer of type number. - * - * Implements 'exponentiation by squaring'. Called by `pow` and `parseOther`. - * - */ - function intPow(Ctor, x, n, pr) { - var isTruncated, - r = new Ctor(1), - - // Max n of 9007199254740991 takes 53 loop iterations. - // Maximum digits array length; leaves [28, 34] guard digits. - k = Math.ceil(pr / LOG_BASE + 4); - - external = false; - - for (;;) { - if (n % 2) { - r = r.times(x); - if (truncate(r.d, k)) isTruncated = true; - } - - n = mathfloor(n / 2); - if (n === 0) { - - // To ensure correct rounding when r.d is truncated, increment the last word if it is zero. - n = r.d.length - 1; - if (isTruncated && r.d[n] === 0) ++r.d[n]; - break; - } - - x = x.times(x); - truncate(x.d, k); - } - - external = true; - - return r; - } - - - function isOdd(n) { - return n.d[n.d.length - 1] & 1; - } - - - /* - * Handle `max` and `min`. `ltgt` is 'lt' or 'gt'. - */ - function maxOrMin(Ctor, args, ltgt) { - var y, - x = new Ctor(args[0]), - i = 0; - - for (; ++i < args.length;) { - y = new Ctor(args[i]); - if (!y.s) { - x = y; - break; - } else if (x[ltgt](y)) { - x = y; - } - } - - return x; - } - - - /* - * Return a new Decimal whose value is the natural exponential of `x` rounded to `sd` significant - * digits. - * - * Taylor/Maclaurin series. - * - * exp(x) = x^0/0! + x^1/1! + x^2/2! + x^3/3! + ... - * - * Argument reduction: - * Repeat x = x / 32, k += 5, until |x| < 0.1 - * exp(x) = exp(x / 2^k)^(2^k) - * - * Previously, the argument was initially reduced by - * exp(x) = exp(r) * 10^k where r = x - k * ln10, k = floor(x / ln10) - * to first put r in the range [0, ln10], before dividing by 32 until |x| < 0.1, but this was - * found to be slower than just dividing repeatedly by 32 as above. - * - * Max integer argument: exp('20723265836946413') = 6.3e+9000000000000000 - * Min integer argument: exp('-20723265836946411') = 1.2e-9000000000000000 - * (Math object integer min/max: Math.exp(709) = 8.2e+307, Math.exp(-745) = 5e-324) - * - * exp(Infinity) = Infinity - * exp(-Infinity) = 0 - * exp(NaN) = NaN - * exp(±0) = 1 - * - * exp(x) is non-terminating for any finite, non-zero x. - * - * The result will always be correctly rounded. - * - */ - function naturalExponential(x, sd) { - var denominator, guard, j, pow, sum, t, wpr, - rep = 0, - i = 0, - k = 0, - Ctor = x.constructor, - rm = Ctor.rounding, - pr = Ctor.precision; - - // 0/NaN/Infinity? - if (!x.d || !x.d[0] || x.e > 17) { - - return new Ctor(x.d - ? !x.d[0] ? 1 : x.s < 0 ? 0 : 1 / 0 - : x.s ? x.s < 0 ? 0 : x : 0 / 0); - } - - if (sd == null) { - external = false; - wpr = pr; - } else { - wpr = sd; - } - - t = new Ctor(0.03125); - - // while abs(x) >= 0.1 - while (x.e > -2) { - - // x = x / 2^5 - x = x.times(t); - k += 5; - } - - // Use 2 * log10(2^k) + 5 (empirically derived) to estimate the increase in precision - // necessary to ensure the first 4 rounding digits are correct. - guard = Math.log(mathpow(2, k)) / Math.LN10 * 2 + 5 | 0; - wpr += guard; - denominator = pow = sum = new Ctor(1); - Ctor.precision = wpr; - - for (;;) { - pow = finalise(pow.times(x), wpr, 1); - denominator = denominator.times(++i); - t = sum.plus(divide(pow, denominator, wpr, 1)); - - if (digitsToString(t.d).slice(0, wpr) === digitsToString(sum.d).slice(0, wpr)) { - j = k; - while (j--) sum = finalise(sum.times(sum), wpr, 1); - - // Check to see if the first 4 rounding digits are [49]999. - // If so, repeat the summation with a higher precision, otherwise - // e.g. with precision: 18, rounding: 1 - // exp(18.404272462595034083567793919843761) = 98372560.1229999999 (should be 98372560.123) - // `wpr - guard` is the index of first rounding digit. - if (sd == null) { - - if (rep < 3 && checkRoundingDigits(sum.d, wpr - guard, rm, rep)) { - Ctor.precision = wpr += 10; - denominator = pow = t = new Ctor(1); - i = 0; - rep++; - } else { - return finalise(sum, Ctor.precision = pr, rm, external = true); - } - } else { - Ctor.precision = pr; - return sum; - } - } - - sum = t; - } - } - - - /* - * Return a new Decimal whose value is the natural logarithm of `x` rounded to `sd` significant - * digits. - * - * ln(-n) = NaN - * ln(0) = -Infinity - * ln(-0) = -Infinity - * ln(1) = 0 - * ln(Infinity) = Infinity - * ln(-Infinity) = NaN - * ln(NaN) = NaN - * - * ln(n) (n != 1) is non-terminating. - * - */ - function naturalLogarithm(y, sd) { - var c, c0, denominator, e, numerator, rep, sum, t, wpr, x1, x2, - n = 1, - guard = 10, - x = y, - xd = x.d, - Ctor = x.constructor, - rm = Ctor.rounding, - pr = Ctor.precision; - - // Is x negative or Infinity, NaN, 0 or 1? - if (x.s < 0 || !xd || !xd[0] || !x.e && xd[0] == 1 && xd.length == 1) { - return new Ctor(xd && !xd[0] ? -1 / 0 : x.s != 1 ? NaN : xd ? 0 : x); - } - - if (sd == null) { - external = false; - wpr = pr; - } else { - wpr = sd; - } - - Ctor.precision = wpr += guard; - c = digitsToString(xd); - c0 = c.charAt(0); - - if (Math.abs(e = x.e) < 1.5e15) { - - // Argument reduction. - // The series converges faster the closer the argument is to 1, so using - // ln(a^b) = b * ln(a), ln(a) = ln(a^b) / b - // multiply the argument by itself until the leading digits of the significand are 7, 8, 9, - // 10, 11, 12 or 13, recording the number of multiplications so the sum of the series can - // later be divided by this number, then separate out the power of 10 using - // ln(a*10^b) = ln(a) + b*ln(10). - - // max n is 21 (gives 0.9, 1.0 or 1.1) (9e15 / 21 = 4.2e14). - //while (c0 < 9 && c0 != 1 || c0 == 1 && c.charAt(1) > 1) { - // max n is 6 (gives 0.7 - 1.3) - while (c0 < 7 && c0 != 1 || c0 == 1 && c.charAt(1) > 3) { - x = x.times(y); - c = digitsToString(x.d); - c0 = c.charAt(0); - n++; - } - - e = x.e; - - if (c0 > 1) { - x = new Ctor('0.' + c); - e++; - } else { - x = new Ctor(c0 + '.' + c.slice(1)); - } - } else { - - // The argument reduction method above may result in overflow if the argument y is a massive - // number with exponent >= 1500000000000000 (9e15 / 6 = 1.5e15), so instead recall this - // function using ln(x*10^e) = ln(x) + e*ln(10). - t = getLn10(Ctor, wpr + 2, pr).times(e + ''); - x = naturalLogarithm(new Ctor(c0 + '.' + c.slice(1)), wpr - guard).plus(t); - Ctor.precision = pr; - - return sd == null ? finalise(x, pr, rm, external = true) : x; - } - - // x1 is x reduced to a value near 1. - x1 = x; - - // Taylor series. - // ln(y) = ln((1 + x)/(1 - x)) = 2(x + x^3/3 + x^5/5 + x^7/7 + ...) - // where x = (y - 1)/(y + 1) (|x| < 1) - sum = numerator = x = divide(x.minus(1), x.plus(1), wpr, 1); - x2 = finalise(x.times(x), wpr, 1); - denominator = 3; - - for (;;) { - numerator = finalise(numerator.times(x2), wpr, 1); - t = sum.plus(divide(numerator, new Ctor(denominator), wpr, 1)); - - if (digitsToString(t.d).slice(0, wpr) === digitsToString(sum.d).slice(0, wpr)) { - sum = sum.times(2); - - // Reverse the argument reduction. Check that e is not 0 because, besides preventing an - // unnecessary calculation, -0 + 0 = +0 and to ensure correct rounding -0 needs to stay -0. - if (e !== 0) sum = sum.plus(getLn10(Ctor, wpr + 2, pr).times(e + '')); - sum = divide(sum, new Ctor(n), wpr, 1); - - // Is rm > 3 and the first 4 rounding digits 4999, or rm < 4 (or the summation has - // been repeated previously) and the first 4 rounding digits 9999? - // If so, restart the summation with a higher precision, otherwise - // e.g. with precision: 12, rounding: 1 - // ln(135520028.6126091714265381533) = 18.7246299999 when it should be 18.72463. - // `wpr - guard` is the index of first rounding digit. - if (sd == null) { - if (checkRoundingDigits(sum.d, wpr - guard, rm, rep)) { - Ctor.precision = wpr += guard; - t = numerator = x = divide(x1.minus(1), x1.plus(1), wpr, 1); - x2 = finalise(x.times(x), wpr, 1); - denominator = rep = 1; - } else { - return finalise(sum, Ctor.precision = pr, rm, external = true); - } - } else { - Ctor.precision = pr; - return sum; - } - } - - sum = t; - denominator += 2; - } - } - - - // ±Infinity, NaN. - function nonFiniteToString(x) { - // Unsigned. - return String(x.s * x.s / 0); - } - - - /* - * Parse the value of a new Decimal `x` from string `str`. - */ - function parseDecimal(x, str) { - var e, i, len; - - // Decimal point? - if ((e = str.indexOf('.')) > -1) str = str.replace('.', ''); - - // Exponential form? - if ((i = str.search(/e/i)) > 0) { - - // Determine exponent. - if (e < 0) e = i; - e += +str.slice(i + 1); - str = str.substring(0, i); - } else if (e < 0) { - - // Integer. - e = str.length; - } - - // Determine leading zeros. - for (i = 0; str.charCodeAt(i) === 48; i++); - - // Determine trailing zeros. - for (len = str.length; str.charCodeAt(len - 1) === 48; --len); - str = str.slice(i, len); - - if (str) { - len -= i; - x.e = e = e - i - 1; - x.d = []; - - // Transform base - - // e is the base 10 exponent. - // i is where to slice str to get the first word of the digits array. - i = (e + 1) % LOG_BASE; - if (e < 0) i += LOG_BASE; - - if (i < len) { - if (i) x.d.push(+str.slice(0, i)); - for (len -= LOG_BASE; i < len;) x.d.push(+str.slice(i, i += LOG_BASE)); - str = str.slice(i); - i = LOG_BASE - str.length; - } else { - i -= len; - } - - for (; i--;) str += '0'; - x.d.push(+str); - - if (external) { - - // Overflow? - if (x.e > x.constructor.maxE) { - - // Infinity. - x.d = null; - x.e = NaN; - - // Underflow? - } else if (x.e < x.constructor.minE) { - - // Zero. - x.e = 0; - x.d = [0]; - // x.constructor.underflow = true; - } // else x.constructor.underflow = false; - } - } else { - - // Zero. - x.e = 0; - x.d = [0]; - } - - return x; - } - - - /* - * Parse the value of a new Decimal `x` from a string `str`, which is not a decimal value. - */ - function parseOther(x, str) { - var base, Ctor, divisor, i, isFloat, len, p, xd, xe; - - if (str.indexOf('_') > -1) { - str = str.replace(/(\d)_(?=\d)/g, '$1'); - if (isDecimal.test(str)) return parseDecimal(x, str); - } else if (str === 'Infinity' || str === 'NaN') { - if (!+str) x.s = NaN; - x.e = NaN; - x.d = null; - return x; - } - - if (isHex.test(str)) { - base = 16; - str = str.toLowerCase(); - } else if (isBinary.test(str)) { - base = 2; - } else if (isOctal.test(str)) { - base = 8; - } else { - throw Error(invalidArgument + str); - } - - // Is there a binary exponent part? - i = str.search(/p/i); - - if (i > 0) { - p = +str.slice(i + 1); - str = str.substring(2, i); - } else { - str = str.slice(2); - } - - // Convert `str` as an integer then divide the result by `base` raised to a power such that the - // fraction part will be restored. - i = str.indexOf('.'); - isFloat = i >= 0; - Ctor = x.constructor; - - if (isFloat) { - str = str.replace('.', ''); - len = str.length; - i = len - i; - - // log[10](16) = 1.2041... , log[10](88) = 1.9444.... - divisor = intPow(Ctor, new Ctor(base), i, i * 2); - } - - xd = convertBase(str, base, BASE); - xe = xd.length - 1; - - // Remove trailing zeros. - for (i = xe; xd[i] === 0; --i) xd.pop(); - if (i < 0) return new Ctor(x.s * 0); - x.e = getBase10Exponent(xd, xe); - x.d = xd; - external = false; - - // At what precision to perform the division to ensure exact conversion? - // maxDecimalIntegerPartDigitCount = ceil(log[10](b) * otherBaseIntegerPartDigitCount) - // log[10](2) = 0.30103, log[10](8) = 0.90309, log[10](16) = 1.20412 - // E.g. ceil(1.2 * 3) = 4, so up to 4 decimal digits are needed to represent 3 hex int digits. - // maxDecimalFractionPartDigitCount = {Hex:4|Oct:3|Bin:1} * otherBaseFractionPartDigitCount - // Therefore using 4 * the number of digits of str will always be enough. - if (isFloat) x = divide(x, divisor, len * 4); - - // Multiply by the binary exponent part if present. - if (p) x = x.times(Math.abs(p) < 54 ? mathpow(2, p) : Decimal.pow(2, p)); - external = true; - - return x; - } - - - /* - * sin(x) = x - x^3/3! + x^5/5! - ... - * |x| < pi/2 - * - */ - function sine(Ctor, x) { - var k, - len = x.d.length; - - if (len < 3) { - return x.isZero() ? x : taylorSeries(Ctor, 2, x, x); - } - - // Argument reduction: sin(5x) = 16*sin^5(x) - 20*sin^3(x) + 5*sin(x) - // i.e. sin(x) = 16*sin^5(x/5) - 20*sin^3(x/5) + 5*sin(x/5) - // and sin(x) = sin(x/5)(5 + sin^2(x/5)(16sin^2(x/5) - 20)) - - // Estimate the optimum number of times to use the argument reduction. - k = 1.4 * Math.sqrt(len); - k = k > 16 ? 16 : k | 0; - - x = x.times(1 / tinyPow(5, k)); - x = taylorSeries(Ctor, 2, x, x); - - // Reverse argument reduction - var sin2_x, - d5 = new Ctor(5), - d16 = new Ctor(16), - d20 = new Ctor(20); - for (; k--;) { - sin2_x = x.times(x); - x = x.times(d5.plus(sin2_x.times(d16.times(sin2_x).minus(d20)))); - } - - return x; - } - - - // Calculate Taylor series for `cos`, `cosh`, `sin` and `sinh`. - function taylorSeries(Ctor, n, x, y, isHyperbolic) { - var j, t, u, x2, - i = 1, - pr = Ctor.precision, - k = Math.ceil(pr / LOG_BASE); - - external = false; - x2 = x.times(x); - u = new Ctor(y); - - for (;;) { - t = divide(u.times(x2), new Ctor(n++ * n++), pr, 1); - u = isHyperbolic ? y.plus(t) : y.minus(t); - y = divide(t.times(x2), new Ctor(n++ * n++), pr, 1); - t = u.plus(y); - - if (t.d[k] !== void 0) { - for (j = k; t.d[j] === u.d[j] && j--;); - if (j == -1) break; - } - - j = u; - u = y; - y = t; - t = j; - i++; - } - - external = true; - t.d.length = k + 1; - - return t; - } - - - // Exponent e must be positive and non-zero. - function tinyPow(b, e) { - var n = b; - while (--e) n *= b; - return n; - } - - - // Return the absolute value of `x` reduced to less than or equal to half pi. - function toLessThanHalfPi(Ctor, x) { - var t, - isNeg = x.s < 0, - pi = getPi(Ctor, Ctor.precision, 1), - halfPi = pi.times(0.5); - - x = x.abs(); - - if (x.lte(halfPi)) { - quadrant = isNeg ? 4 : 1; - return x; - } - - t = x.divToInt(pi); - - if (t.isZero()) { - quadrant = isNeg ? 3 : 2; - } else { - x = x.minus(t.times(pi)); - - // 0 <= x < pi - if (x.lte(halfPi)) { - quadrant = isOdd(t) ? (isNeg ? 2 : 3) : (isNeg ? 4 : 1); - return x; - } - - quadrant = isOdd(t) ? (isNeg ? 1 : 4) : (isNeg ? 3 : 2); - } - - return x.minus(pi).abs(); - } - - - /* - * Return the value of Decimal `x` as a string in base `baseOut`. - * - * If the optional `sd` argument is present include a binary exponent suffix. - */ - function toStringBinary(x, baseOut, sd, rm) { - var base, e, i, k, len, roundUp, str, xd, y, - Ctor = x.constructor, - isExp = sd !== void 0; - - if (isExp) { - checkInt32(sd, 1, MAX_DIGITS); - if (rm === void 0) rm = Ctor.rounding; - else checkInt32(rm, 0, 8); - } else { - sd = Ctor.precision; - rm = Ctor.rounding; - } - - if (!x.isFinite()) { - str = nonFiniteToString(x); - } else { - str = finiteToString(x); - i = str.indexOf('.'); - - // Use exponential notation according to `toExpPos` and `toExpNeg`? No, but if required: - // maxBinaryExponent = floor((decimalExponent + 1) * log[2](10)) - // minBinaryExponent = floor(decimalExponent * log[2](10)) - // log[2](10) = 3.321928094887362347870319429489390175864 - - if (isExp) { - base = 2; - if (baseOut == 16) { - sd = sd * 4 - 3; - } else if (baseOut == 8) { - sd = sd * 3 - 2; - } - } else { - base = baseOut; - } - - // Convert the number as an integer then divide the result by its base raised to a power such - // that the fraction part will be restored. - - // Non-integer. - if (i >= 0) { - str = str.replace('.', ''); - y = new Ctor(1); - y.e = str.length - i; - y.d = convertBase(finiteToString(y), 10, base); - y.e = y.d.length; - } - - xd = convertBase(str, 10, base); - e = len = xd.length; - - // Remove trailing zeros. - for (; xd[--len] == 0;) xd.pop(); - - if (!xd[0]) { - str = isExp ? '0p+0' : '0'; - } else { - if (i < 0) { - e--; - } else { - x = new Ctor(x); - x.d = xd; - x.e = e; - x = divide(x, y, sd, rm, 0, base); - xd = x.d; - e = x.e; - roundUp = inexact; - } - - // The rounding digit, i.e. the digit after the digit that may be rounded up. - i = xd[sd]; - k = base / 2; - roundUp = roundUp || xd[sd + 1] !== void 0; - - roundUp = rm < 4 - ? (i !== void 0 || roundUp) && (rm === 0 || rm === (x.s < 0 ? 3 : 2)) - : i > k || i === k && (rm === 4 || roundUp || rm === 6 && xd[sd - 1] & 1 || - rm === (x.s < 0 ? 8 : 7)); - - xd.length = sd; - - if (roundUp) { - - // Rounding up may mean the previous digit has to be rounded up and so on. - for (; ++xd[--sd] > base - 1;) { - xd[sd] = 0; - if (!sd) { - ++e; - xd.unshift(1); - } - } - } - - // Determine trailing zeros. - for (len = xd.length; !xd[len - 1]; --len); - - // E.g. [4, 11, 15] becomes 4bf. - for (i = 0, str = ''; i < len; i++) str += NUMERALS.charAt(xd[i]); - - // Add binary exponent suffix? - if (isExp) { - if (len > 1) { - if (baseOut == 16 || baseOut == 8) { - i = baseOut == 16 ? 4 : 3; - for (--len; len % i; len++) str += '0'; - xd = convertBase(str, base, baseOut); - for (len = xd.length; !xd[len - 1]; --len); - - // xd[0] will always be be 1 - for (i = 1, str = '1.'; i < len; i++) str += NUMERALS.charAt(xd[i]); - } else { - str = str.charAt(0) + '.' + str.slice(1); - } - } - - str = str + (e < 0 ? 'p' : 'p+') + e; - } else if (e < 0) { - for (; ++e;) str = '0' + str; - str = '0.' + str; - } else { - if (++e > len) for (e -= len; e-- ;) str += '0'; - else if (e < len) str = str.slice(0, e) + '.' + str.slice(e); - } - } - - str = (baseOut == 16 ? '0x' : baseOut == 2 ? '0b' : baseOut == 8 ? '0o' : '') + str; - } - - return x.s < 0 ? '-' + str : str; - } - - - // Does not strip trailing zeros. - function truncate(arr, len) { - if (arr.length > len) { - arr.length = len; - return true; - } - } - - - // Decimal methods - - - /* - * abs - * acos - * acosh - * add - * asin - * asinh - * atan - * atanh - * atan2 - * cbrt - * ceil - * clamp - * clone - * config - * cos - * cosh - * div - * exp - * floor - * hypot - * ln - * log - * log2 - * log10 - * max - * min - * mod - * mul - * pow - * random - * round - * set - * sign - * sin - * sinh - * sqrt - * sub - * sum - * tan - * tanh - * trunc - */ - - - /* - * Return a new Decimal whose value is the absolute value of `x`. - * - * x {number|string|Decimal} - * - */ - function abs(x) { - return new this(x).abs(); - } - - - /* - * Return a new Decimal whose value is the arccosine in radians of `x`. - * - * x {number|string|Decimal} - * - */ - function acos(x) { - return new this(x).acos(); - } - - - /* - * Return a new Decimal whose value is the inverse of the hyperbolic cosine of `x`, rounded to - * `precision` significant digits using rounding mode `rounding`. - * - * x {number|string|Decimal} A value in radians. - * - */ - function acosh(x) { - return new this(x).acosh(); - } - - - /* - * Return a new Decimal whose value is the sum of `x` and `y`, rounded to `precision` significant - * digits using rounding mode `rounding`. - * - * x {number|string|Decimal} - * y {number|string|Decimal} - * - */ - function add(x, y) { - return new this(x).plus(y); - } - - - /* - * Return a new Decimal whose value is the arcsine in radians of `x`, rounded to `precision` - * significant digits using rounding mode `rounding`. - * - * x {number|string|Decimal} - * - */ - function asin(x) { - return new this(x).asin(); - } - - - /* - * Return a new Decimal whose value is the inverse of the hyperbolic sine of `x`, rounded to - * `precision` significant digits using rounding mode `rounding`. - * - * x {number|string|Decimal} A value in radians. - * - */ - function asinh(x) { - return new this(x).asinh(); - } - - - /* - * Return a new Decimal whose value is the arctangent in radians of `x`, rounded to `precision` - * significant digits using rounding mode `rounding`. - * - * x {number|string|Decimal} - * - */ - function atan(x) { - return new this(x).atan(); - } - - - /* - * Return a new Decimal whose value is the inverse of the hyperbolic tangent of `x`, rounded to - * `precision` significant digits using rounding mode `rounding`. - * - * x {number|string|Decimal} A value in radians. - * - */ - function atanh(x) { - return new this(x).atanh(); - } - - - /* - * Return a new Decimal whose value is the arctangent in radians of `y/x` in the range -pi to pi - * (inclusive), rounded to `precision` significant digits using rounding mode `rounding`. - * - * Domain: [-Infinity, Infinity] - * Range: [-pi, pi] - * - * y {number|string|Decimal} The y-coordinate. - * x {number|string|Decimal} The x-coordinate. - * - * atan2(±0, -0) = ±pi - * atan2(±0, +0) = ±0 - * atan2(±0, -x) = ±pi for x > 0 - * atan2(±0, x) = ±0 for x > 0 - * atan2(-y, ±0) = -pi/2 for y > 0 - * atan2(y, ±0) = pi/2 for y > 0 - * atan2(±y, -Infinity) = ±pi for finite y > 0 - * atan2(±y, +Infinity) = ±0 for finite y > 0 - * atan2(±Infinity, x) = ±pi/2 for finite x - * atan2(±Infinity, -Infinity) = ±3*pi/4 - * atan2(±Infinity, +Infinity) = ±pi/4 - * atan2(NaN, x) = NaN - * atan2(y, NaN) = NaN - * - */ - function atan2(y, x) { - y = new this(y); - x = new this(x); - var r, - pr = this.precision, - rm = this.rounding, - wpr = pr + 4; - - // Either NaN - if (!y.s || !x.s) { - r = new this(NaN); - - // Both ±Infinity - } else if (!y.d && !x.d) { - r = getPi(this, wpr, 1).times(x.s > 0 ? 0.25 : 0.75); - r.s = y.s; - - // x is ±Infinity or y is ±0 - } else if (!x.d || y.isZero()) { - r = x.s < 0 ? getPi(this, pr, rm) : new this(0); - r.s = y.s; - - // y is ±Infinity or x is ±0 - } else if (!y.d || x.isZero()) { - r = getPi(this, wpr, 1).times(0.5); - r.s = y.s; - - // Both non-zero and finite - } else if (x.s < 0) { - this.precision = wpr; - this.rounding = 1; - r = this.atan(divide(y, x, wpr, 1)); - x = getPi(this, wpr, 1); - this.precision = pr; - this.rounding = rm; - r = y.s < 0 ? r.minus(x) : r.plus(x); - } else { - r = this.atan(divide(y, x, wpr, 1)); - } - - return r; - } - - - /* - * Return a new Decimal whose value is the cube root of `x`, rounded to `precision` significant - * digits using rounding mode `rounding`. - * - * x {number|string|Decimal} - * - */ - function cbrt(x) { - return new this(x).cbrt(); - } - - - /* - * Return a new Decimal whose value is `x` rounded to an integer using `ROUND_CEIL`. - * - * x {number|string|Decimal} - * - */ - function ceil(x) { - return finalise(x = new this(x), x.e + 1, 2); - } - - - /* - * Return a new Decimal whose value is `x` clamped to the range delineated by `min` and `max`. - * - * x {number|string|Decimal} - * min {number|string|Decimal} - * max {number|string|Decimal} - * - */ - function clamp(x, min, max) { - return new this(x).clamp(min, max); - } - - - /* - * Configure global settings for a Decimal constructor. - * - * `obj` is an object with one or more of the following properties, - * - * precision {number} - * rounding {number} - * toExpNeg {number} - * toExpPos {number} - * maxE {number} - * minE {number} - * modulo {number} - * crypto {boolean|number} - * defaults {true} - * - * E.g. Decimal.config({ precision: 20, rounding: 4 }) - * - */ - function config(obj) { - if (!obj || typeof obj !== 'object') throw Error(decimalError + 'Object expected'); - var i, p, v, - useDefaults = obj.defaults === true, - ps = [ - 'precision', 1, MAX_DIGITS, - 'rounding', 0, 8, - 'toExpNeg', -EXP_LIMIT, 0, - 'toExpPos', 0, EXP_LIMIT, - 'maxE', 0, EXP_LIMIT, - 'minE', -EXP_LIMIT, 0, - 'modulo', 0, 9 - ]; - - for (i = 0; i < ps.length; i += 3) { - if (p = ps[i], useDefaults) this[p] = DEFAULTS[p]; - if ((v = obj[p]) !== void 0) { - if (mathfloor(v) === v && v >= ps[i + 1] && v <= ps[i + 2]) this[p] = v; - else throw Error(invalidArgument + p + ': ' + v); - } - } - - if (p = 'crypto', useDefaults) this[p] = DEFAULTS[p]; - if ((v = obj[p]) !== void 0) { - if (v === true || v === false || v === 0 || v === 1) { - if (v) { - if (typeof crypto != 'undefined' && crypto && - (crypto.getRandomValues || crypto.randomBytes)) { - this[p] = true; - } else { - throw Error(cryptoUnavailable); - } - } else { - this[p] = false; - } - } else { - throw Error(invalidArgument + p + ': ' + v); - } - } - - return this; - } - - - /* - * Return a new Decimal whose value is the cosine of `x`, rounded to `precision` significant - * digits using rounding mode `rounding`. - * - * x {number|string|Decimal} A value in radians. - * - */ - function cos(x) { - return new this(x).cos(); - } - - - /* - * Return a new Decimal whose value is the hyperbolic cosine of `x`, rounded to precision - * significant digits using rounding mode `rounding`. - * - * x {number|string|Decimal} A value in radians. - * - */ - function cosh(x) { - return new this(x).cosh(); - } - - - /* - * Create and return a Decimal constructor with the same configuration properties as this Decimal - * constructor. - * - */ - function clone(obj) { - var i, p, ps; - - /* - * The Decimal constructor and exported function. - * Return a new Decimal instance. - * - * v {number|string|Decimal} A numeric value. - * - */ - function Decimal(v) { - var e, i, t, - x = this; - - // Decimal called without new. - if (!(x instanceof Decimal)) return new Decimal(v); - - // Retain a reference to this Decimal constructor, and shadow Decimal.prototype.constructor - // which points to Object. - x.constructor = Decimal; - - // Duplicate. - if (isDecimalInstance(v)) { - x.s = v.s; - - if (external) { - if (!v.d || v.e > Decimal.maxE) { - - // Infinity. - x.e = NaN; - x.d = null; - } else if (v.e < Decimal.minE) { - - // Zero. - x.e = 0; - x.d = [0]; - } else { - x.e = v.e; - x.d = v.d.slice(); - } - } else { - x.e = v.e; - x.d = v.d ? v.d.slice() : v.d; - } - - return; - } - - t = typeof v; - - if (t === 'number') { - if (v === 0) { - x.s = 1 / v < 0 ? -1 : 1; - x.e = 0; - x.d = [0]; - return; - } - - if (v < 0) { - v = -v; - x.s = -1; - } else { - x.s = 1; - } - - // Fast path for small integers. - if (v === ~~v && v < 1e7) { - for (e = 0, i = v; i >= 10; i /= 10) e++; - - if (external) { - if (e > Decimal.maxE) { - x.e = NaN; - x.d = null; - } else if (e < Decimal.minE) { - x.e = 0; - x.d = [0]; - } else { - x.e = e; - x.d = [v]; - } - } else { - x.e = e; - x.d = [v]; - } - - return; - - // Infinity, NaN. - } else if (v * 0 !== 0) { - if (!v) x.s = NaN; - x.e = NaN; - x.d = null; - return; - } - - return parseDecimal(x, v.toString()); - - } else if (t !== 'string') { - throw Error(invalidArgument + v); - } - - // Minus sign? - if ((i = v.charCodeAt(0)) === 45) { - v = v.slice(1); - x.s = -1; - } else { - // Plus sign? - if (i === 43) v = v.slice(1); - x.s = 1; - } - - return isDecimal.test(v) ? parseDecimal(x, v) : parseOther(x, v); - } - - Decimal.prototype = P; - - Decimal.ROUND_UP = 0; - Decimal.ROUND_DOWN = 1; - Decimal.ROUND_CEIL = 2; - Decimal.ROUND_FLOOR = 3; - Decimal.ROUND_HALF_UP = 4; - Decimal.ROUND_HALF_DOWN = 5; - Decimal.ROUND_HALF_EVEN = 6; - Decimal.ROUND_HALF_CEIL = 7; - Decimal.ROUND_HALF_FLOOR = 8; - Decimal.EUCLID = 9; - - Decimal.config = Decimal.set = config; - Decimal.clone = clone; - Decimal.isDecimal = isDecimalInstance; - - Decimal.abs = abs; - Decimal.acos = acos; - Decimal.acosh = acosh; // ES6 - Decimal.add = add; - Decimal.asin = asin; - Decimal.asinh = asinh; // ES6 - Decimal.atan = atan; - Decimal.atanh = atanh; // ES6 - Decimal.atan2 = atan2; - Decimal.cbrt = cbrt; // ES6 - Decimal.ceil = ceil; - Decimal.clamp = clamp; - Decimal.cos = cos; - Decimal.cosh = cosh; // ES6 - Decimal.div = div; - Decimal.exp = exp; - Decimal.floor = floor; - Decimal.hypot = hypot; // ES6 - Decimal.ln = ln; - Decimal.log = log; - Decimal.log10 = log10; // ES6 - Decimal.log2 = log2; // ES6 - Decimal.max = max; - Decimal.min = min; - Decimal.mod = mod; - Decimal.mul = mul; - Decimal.pow = pow; - Decimal.random = random; - Decimal.round = round; - Decimal.sign = sign; // ES6 - Decimal.sin = sin; - Decimal.sinh = sinh; // ES6 - Decimal.sqrt = sqrt; - Decimal.sub = sub; - Decimal.sum = sum; - Decimal.tan = tan; - Decimal.tanh = tanh; // ES6 - Decimal.trunc = trunc; // ES6 - - if (obj === void 0) obj = {}; - if (obj) { - if (obj.defaults !== true) { - ps = ['precision', 'rounding', 'toExpNeg', 'toExpPos', 'maxE', 'minE', 'modulo', 'crypto']; - for (i = 0; i < ps.length;) if (!obj.hasOwnProperty(p = ps[i++])) obj[p] = this[p]; - } - } - - Decimal.config(obj); - - return Decimal; - } - - - /* - * Return a new Decimal whose value is `x` divided by `y`, rounded to `precision` significant - * digits using rounding mode `rounding`. - * - * x {number|string|Decimal} - * y {number|string|Decimal} - * - */ - function div(x, y) { - return new this(x).div(y); - } - - - /* - * Return a new Decimal whose value is the natural exponential of `x`, rounded to `precision` - * significant digits using rounding mode `rounding`. - * - * x {number|string|Decimal} The power to which to raise the base of the natural log. - * - */ - function exp(x) { - return new this(x).exp(); - } - - - /* - * Return a new Decimal whose value is `x` round to an integer using `ROUND_FLOOR`. - * - * x {number|string|Decimal} - * - */ - function floor(x) { - return finalise(x = new this(x), x.e + 1, 3); - } - - - /* - * Return a new Decimal whose value is the square root of the sum of the squares of the arguments, - * rounded to `precision` significant digits using rounding mode `rounding`. - * - * hypot(a, b, ...) = sqrt(a^2 + b^2 + ...) - * - * arguments {number|string|Decimal} - * - */ - function hypot() { - var i, n, - t = new this(0); - - external = false; - - for (i = 0; i < arguments.length;) { - n = new this(arguments[i++]); - if (!n.d) { - if (n.s) { - external = true; - return new this(1 / 0); - } - t = n; - } else if (t.d) { - t = t.plus(n.times(n)); - } - } - - external = true; - - return t.sqrt(); - } - - - /* - * Return true if object is a Decimal instance (where Decimal is any Decimal constructor), - * otherwise return false. - * - */ - function isDecimalInstance(obj) { - return obj instanceof Decimal || obj && obj.toStringTag === tag || false; - } - - - /* - * Return a new Decimal whose value is the natural logarithm of `x`, rounded to `precision` - * significant digits using rounding mode `rounding`. - * - * x {number|string|Decimal} - * - */ - function ln(x) { - return new this(x).ln(); - } - - - /* - * Return a new Decimal whose value is the log of `x` to the base `y`, or to base 10 if no base - * is specified, rounded to `precision` significant digits using rounding mode `rounding`. - * - * log[y](x) - * - * x {number|string|Decimal} The argument of the logarithm. - * y {number|string|Decimal} The base of the logarithm. - * - */ - function log(x, y) { - return new this(x).log(y); - } - - - /* - * Return a new Decimal whose value is the base 2 logarithm of `x`, rounded to `precision` - * significant digits using rounding mode `rounding`. - * - * x {number|string|Decimal} - * - */ - function log2(x) { - return new this(x).log(2); - } - - - /* - * Return a new Decimal whose value is the base 10 logarithm of `x`, rounded to `precision` - * significant digits using rounding mode `rounding`. - * - * x {number|string|Decimal} - * - */ - function log10(x) { - return new this(x).log(10); - } - - - /* - * Return a new Decimal whose value is the maximum of the arguments. - * - * arguments {number|string|Decimal} - * - */ - function max() { - return maxOrMin(this, arguments, 'lt'); - } - - - /* - * Return a new Decimal whose value is the minimum of the arguments. - * - * arguments {number|string|Decimal} - * - */ - function min() { - return maxOrMin(this, arguments, 'gt'); - } - - - /* - * Return a new Decimal whose value is `x` modulo `y`, rounded to `precision` significant digits - * using rounding mode `rounding`. - * - * x {number|string|Decimal} - * y {number|string|Decimal} - * - */ - function mod(x, y) { - return new this(x).mod(y); - } - - - /* - * Return a new Decimal whose value is `x` multiplied by `y`, rounded to `precision` significant - * digits using rounding mode `rounding`. - * - * x {number|string|Decimal} - * y {number|string|Decimal} - * - */ - function mul(x, y) { - return new this(x).mul(y); - } - - - /* - * Return a new Decimal whose value is `x` raised to the power `y`, rounded to precision - * significant digits using rounding mode `rounding`. - * - * x {number|string|Decimal} The base. - * y {number|string|Decimal} The exponent. - * - */ - function pow(x, y) { - return new this(x).pow(y); - } - - - /* - * Returns a new Decimal with a random value equal to or greater than 0 and less than 1, and with - * `sd`, or `Decimal.precision` if `sd` is omitted, significant digits (or less if trailing zeros - * are produced). - * - * [sd] {number} Significant digits. Integer, 0 to MAX_DIGITS inclusive. - * - */ - function random(sd) { - var d, e, k, n, - i = 0, - r = new this(1), - rd = []; - - if (sd === void 0) sd = this.precision; - else checkInt32(sd, 1, MAX_DIGITS); - - k = Math.ceil(sd / LOG_BASE); - - if (!this.crypto) { - for (; i < k;) rd[i++] = Math.random() * 1e7 | 0; - - // Browsers supporting crypto.getRandomValues. - } else if (crypto.getRandomValues) { - d = crypto.getRandomValues(new Uint32Array(k)); - - for (; i < k;) { - n = d[i]; - - // 0 <= n < 4294967296 - // Probability n >= 4.29e9, is 4967296 / 4294967296 = 0.00116 (1 in 865). - if (n >= 4.29e9) { - d[i] = crypto.getRandomValues(new Uint32Array(1))[0]; - } else { - - // 0 <= n <= 4289999999 - // 0 <= (n % 1e7) <= 9999999 - rd[i++] = n % 1e7; - } - } - - // Node.js supporting crypto.randomBytes. - } else if (crypto.randomBytes) { - - // buffer - d = crypto.randomBytes(k *= 4); - - for (; i < k;) { - - // 0 <= n < 2147483648 - n = d[i] + (d[i + 1] << 8) + (d[i + 2] << 16) + ((d[i + 3] & 0x7f) << 24); - - // Probability n >= 2.14e9, is 7483648 / 2147483648 = 0.0035 (1 in 286). - if (n >= 2.14e9) { - crypto.randomBytes(4).copy(d, i); - } else { - - // 0 <= n <= 2139999999 - // 0 <= (n % 1e7) <= 9999999 - rd.push(n % 1e7); - i += 4; - } - } - - i = k / 4; - } else { - throw Error(cryptoUnavailable); - } - - k = rd[--i]; - sd %= LOG_BASE; - - // Convert trailing digits to zeros according to sd. - if (k && sd) { - n = mathpow(10, LOG_BASE - sd); - rd[i] = (k / n | 0) * n; - } - - // Remove trailing words which are zero. - for (; rd[i] === 0; i--) rd.pop(); - - // Zero? - if (i < 0) { - e = 0; - rd = [0]; - } else { - e = -1; - - // Remove leading words which are zero and adjust exponent accordingly. - for (; rd[0] === 0; e -= LOG_BASE) rd.shift(); - - // Count the digits of the first word of rd to determine leading zeros. - for (k = 1, n = rd[0]; n >= 10; n /= 10) k++; - - // Adjust the exponent for leading zeros of the first word of rd. - if (k < LOG_BASE) e -= LOG_BASE - k; - } - - r.e = e; - r.d = rd; - - return r; - } - - - /* - * Return a new Decimal whose value is `x` rounded to an integer using rounding mode `rounding`. - * - * To emulate `Math.round`, set rounding to 7 (ROUND_HALF_CEIL). - * - * x {number|string|Decimal} - * - */ - function round(x) { - return finalise(x = new this(x), x.e + 1, this.rounding); - } - - - /* - * Return - * 1 if x > 0, - * -1 if x < 0, - * 0 if x is 0, - * -0 if x is -0, - * NaN otherwise - * - * x {number|string|Decimal} - * - */ - function sign(x) { - x = new this(x); - return x.d ? (x.d[0] ? x.s : 0 * x.s) : x.s || NaN; - } - - - /* - * Return a new Decimal whose value is the sine of `x`, rounded to `precision` significant digits - * using rounding mode `rounding`. - * - * x {number|string|Decimal} A value in radians. - * - */ - function sin(x) { - return new this(x).sin(); - } - - - /* - * Return a new Decimal whose value is the hyperbolic sine of `x`, rounded to `precision` - * significant digits using rounding mode `rounding`. - * - * x {number|string|Decimal} A value in radians. - * - */ - function sinh(x) { - return new this(x).sinh(); - } - - - /* - * Return a new Decimal whose value is the square root of `x`, rounded to `precision` significant - * digits using rounding mode `rounding`. - * - * x {number|string|Decimal} - * - */ - function sqrt(x) { - return new this(x).sqrt(); - } - - - /* - * Return a new Decimal whose value is `x` minus `y`, rounded to `precision` significant digits - * using rounding mode `rounding`. - * - * x {number|string|Decimal} - * y {number|string|Decimal} - * - */ - function sub(x, y) { - return new this(x).sub(y); - } - - - /* - * Return a new Decimal whose value is the sum of the arguments, rounded to `precision` - * significant digits using rounding mode `rounding`. - * - * Only the result is rounded, not the intermediate calculations. - * - * arguments {number|string|Decimal} - * - */ - function sum() { - var i = 0, - args = arguments, - x = new this(args[i]); - - external = false; - for (; x.s && ++i < args.length;) x = x.plus(args[i]); - external = true; - - return finalise(x, this.precision, this.rounding); - } - - - /* - * Return a new Decimal whose value is the tangent of `x`, rounded to `precision` significant - * digits using rounding mode `rounding`. - * - * x {number|string|Decimal} A value in radians. - * - */ - function tan(x) { - return new this(x).tan(); - } - - - /* - * Return a new Decimal whose value is the hyperbolic tangent of `x`, rounded to `precision` - * significant digits using rounding mode `rounding`. - * - * x {number|string|Decimal} A value in radians. - * - */ - function tanh(x) { - return new this(x).tanh(); - } - - - /* - * Return a new Decimal whose value is `x` truncated to an integer. - * - * x {number|string|Decimal} - * - */ - function trunc(x) { - return finalise(x = new this(x), x.e + 1, 1); - } - - - // Create and configure initial Decimal constructor. - Decimal = clone(DEFAULTS); - Decimal.prototype.constructor = Decimal; - Decimal['default'] = Decimal.Decimal = Decimal; - - // Create the internal constants from their string values. - LN10 = new Decimal(LN10); - PI = new Decimal(PI); - - - // Export. - - - // AMD. - if (typeof define == 'function' && define.amd) { - define(function () { - return Decimal; - }); - - // Node and other environments that support module.exports. - } else if ( true && module.exports) { - if (typeof Symbol == 'function' && typeof Symbol.iterator == 'symbol') { - P[Symbol['for']('nodejs.util.inspect.custom')] = P.toString; - P[Symbol.toStringTag] = 'Decimal'; - } - - module.exports = Decimal; - - // Browser. - } else { - if (!globalScope) { - globalScope = typeof self != 'undefined' && self && self.self == self ? self : window; - } - - noConflict = globalScope.Decimal; - Decimal.noConflict = function () { - globalScope.Decimal = noConflict; - return Decimal; - }; - - globalScope.Decimal = Decimal; - } -})(this); - - -/***/ }), - -/***/ 72710: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -var Stream = (__nccwpck_require__(2203).Stream); -var util = __nccwpck_require__(39023); - -module.exports = DelayedStream; -function DelayedStream() { - this.source = null; - this.dataSize = 0; - this.maxDataSize = 1024 * 1024; - this.pauseStream = true; - - this._maxDataSizeExceeded = false; - this._released = false; - this._bufferedEvents = []; -} -util.inherits(DelayedStream, Stream); - -DelayedStream.create = function(source, options) { - var delayedStream = new this(); - - options = options || {}; - for (var option in options) { - delayedStream[option] = options[option]; - } - - delayedStream.source = source; - - var realEmit = source.emit; - source.emit = function() { - delayedStream._handleEmit(arguments); - return realEmit.apply(source, arguments); - }; - - source.on('error', function() {}); - if (delayedStream.pauseStream) { - source.pause(); - } - - return delayedStream; -}; - -Object.defineProperty(DelayedStream.prototype, 'readable', { - configurable: true, - enumerable: true, - get: function() { - return this.source.readable; - } -}); - -DelayedStream.prototype.setEncoding = function() { - return this.source.setEncoding.apply(this.source, arguments); -}; - -DelayedStream.prototype.resume = function() { - if (!this._released) { - this.release(); - } - - this.source.resume(); -}; - -DelayedStream.prototype.pause = function() { - this.source.pause(); -}; - -DelayedStream.prototype.release = function() { - this._released = true; - - this._bufferedEvents.forEach(function(args) { - this.emit.apply(this, args); - }.bind(this)); - this._bufferedEvents = []; -}; - -DelayedStream.prototype.pipe = function() { - var r = Stream.prototype.pipe.apply(this, arguments); - this.resume(); - return r; -}; - -DelayedStream.prototype._handleEmit = function(args) { - if (this._released) { - this.emit.apply(this, args); - return; - } - - if (args[0] === 'data') { - this.dataSize += args[1].length; - this._checkIfMaxDataSizeExceeded(); - } - - this._bufferedEvents.push(args); -}; - -DelayedStream.prototype._checkIfMaxDataSizeExceeded = function() { - if (this._maxDataSizeExceeded) { - return; - } - - if (this.dataSize <= this.maxDataSize) { - return; - } - - this._maxDataSizeExceeded = true; - var message = - 'DelayedStream#maxDataSize of ' + this.maxDataSize + ' bytes exceeded.' - this.emit('error', new Error(message)); -}; - - -/***/ }), - -/***/ 14150: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", ({ value: true })); - -class Deprecation extends Error { - constructor(message) { - super(message); // Maintains proper stack trace (only available on V8) - - /* istanbul ignore next */ - - if (Error.captureStackTrace) { - Error.captureStackTrace(this, this.constructor); - } - - this.name = 'Deprecation'; - } - -} - -exports.Deprecation = Deprecation; - - -/***/ }), - -/***/ 52874: -/***/ ((__unused_webpack_module, __unused_webpack_exports, __nccwpck_require__) => { - -(function () { - (__nccwpck_require__(18889).config)( - Object.assign( - {}, - __nccwpck_require__(39990), - __nccwpck_require__(4531)(process.argv) - ) - ) -})() - - -/***/ }), - -/***/ 4531: -/***/ ((module) => { - -const re = /^dotenv_config_(encoding|path|debug|override|DOTENV_KEY)=(.+)$/ - -module.exports = function optionMatcher (args) { - return args.reduce(function (acc, cur) { - const matches = cur.match(re) - if (matches) { - acc[matches[1]] = matches[2] - } - return acc - }, {}) -} - - -/***/ }), - -/***/ 39990: -/***/ ((module) => { - -// ../config.js accepts options via environment variables -const options = {} - -if (process.env.DOTENV_CONFIG_ENCODING != null) { - options.encoding = process.env.DOTENV_CONFIG_ENCODING -} - -if (process.env.DOTENV_CONFIG_PATH != null) { - options.path = process.env.DOTENV_CONFIG_PATH -} - -if (process.env.DOTENV_CONFIG_DEBUG != null) { - options.debug = process.env.DOTENV_CONFIG_DEBUG -} - -if (process.env.DOTENV_CONFIG_OVERRIDE != null) { - options.override = process.env.DOTENV_CONFIG_OVERRIDE -} - -if (process.env.DOTENV_CONFIG_DOTENV_KEY != null) { - options.DOTENV_KEY = process.env.DOTENV_CONFIG_DOTENV_KEY -} - -module.exports = options - - -/***/ }), - -/***/ 18889: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -const fs = __nccwpck_require__(79896) -const path = __nccwpck_require__(16928) -const os = __nccwpck_require__(70857) -const crypto = __nccwpck_require__(76982) -const packageJson = __nccwpck_require__(80056) - -const version = packageJson.version - -const LINE = /(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg - -// Parse src into an Object -function parse (src) { - const obj = {} - - // Convert buffer to string - let lines = src.toString() - - // Convert line breaks to same format - lines = lines.replace(/\r\n?/mg, '\n') - - let match - while ((match = LINE.exec(lines)) != null) { - const key = match[1] - - // Default undefined or null to empty string - let value = (match[2] || '') - - // Remove whitespace - value = value.trim() - - // Check if double quoted - const maybeQuote = value[0] - - // Remove surrounding quotes - value = value.replace(/^(['"`])([\s\S]*)\1$/mg, '$2') - - // Expand newlines if double quoted - if (maybeQuote === '"') { - value = value.replace(/\\n/g, '\n') - value = value.replace(/\\r/g, '\r') - } - - // Add to object - obj[key] = value - } - - return obj -} - -function _parseVault (options) { - const vaultPath = _vaultPath(options) - - // Parse .env.vault - const result = DotenvModule.configDotenv({ path: vaultPath }) - if (!result.parsed) { - const err = new Error(`MISSING_DATA: Cannot parse ${vaultPath} for an unknown reason`) - err.code = 'MISSING_DATA' - throw err - } - - // handle scenario for comma separated keys - for use with key rotation - // example: DOTENV_KEY="dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=prod,dotenv://:key_7890@dotenvx.com/vault/.env.vault?environment=prod" - const keys = _dotenvKey(options).split(',') - const length = keys.length - - let decrypted - for (let i = 0; i < length; i++) { - try { - // Get full key - const key = keys[i].trim() - - // Get instructions for decrypt - const attrs = _instructions(result, key) - - // Decrypt - decrypted = DotenvModule.decrypt(attrs.ciphertext, attrs.key) - - break - } catch (error) { - // last key - if (i + 1 >= length) { - throw error - } - // try next key - } - } - - // Parse decrypted .env string - return DotenvModule.parse(decrypted) -} - -function _log (message) { - console.log(`[dotenv@${version}][INFO] ${message}`) -} - -function _warn (message) { - console.log(`[dotenv@${version}][WARN] ${message}`) -} - -function _debug (message) { - console.log(`[dotenv@${version}][DEBUG] ${message}`) -} - -function _dotenvKey (options) { - // prioritize developer directly setting options.DOTENV_KEY - if (options && options.DOTENV_KEY && options.DOTENV_KEY.length > 0) { - return options.DOTENV_KEY - } - - // secondary infra already contains a DOTENV_KEY environment variable - if (process.env.DOTENV_KEY && process.env.DOTENV_KEY.length > 0) { - return process.env.DOTENV_KEY - } - - // fallback to empty string - return '' -} - -function _instructions (result, dotenvKey) { - // Parse DOTENV_KEY. Format is a URI - let uri - try { - uri = new URL(dotenvKey) - } catch (error) { - if (error.code === 'ERR_INVALID_URL') { - const err = new Error('INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development') - err.code = 'INVALID_DOTENV_KEY' - throw err - } - - throw error - } - - // Get decrypt key - const key = uri.password - if (!key) { - const err = new Error('INVALID_DOTENV_KEY: Missing key part') - err.code = 'INVALID_DOTENV_KEY' - throw err - } - - // Get environment - const environment = uri.searchParams.get('environment') - if (!environment) { - const err = new Error('INVALID_DOTENV_KEY: Missing environment part') - err.code = 'INVALID_DOTENV_KEY' - throw err - } - - // Get ciphertext payload - const environmentKey = `DOTENV_VAULT_${environment.toUpperCase()}` - const ciphertext = result.parsed[environmentKey] // DOTENV_VAULT_PRODUCTION - if (!ciphertext) { - const err = new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${environmentKey} in your .env.vault file.`) - err.code = 'NOT_FOUND_DOTENV_ENVIRONMENT' - throw err - } - - return { ciphertext, key } -} - -function _vaultPath (options) { - let possibleVaultPath = null - - if (options && options.path && options.path.length > 0) { - if (Array.isArray(options.path)) { - for (const filepath of options.path) { - if (fs.existsSync(filepath)) { - possibleVaultPath = filepath.endsWith('.vault') ? filepath : `${filepath}.vault` - } - } - } else { - possibleVaultPath = options.path.endsWith('.vault') ? options.path : `${options.path}.vault` - } - } else { - possibleVaultPath = path.resolve(process.cwd(), '.env.vault') - } - - if (fs.existsSync(possibleVaultPath)) { - return possibleVaultPath - } - - return null -} - -function _resolveHome (envPath) { - return envPath[0] === '~' ? path.join(os.homedir(), envPath.slice(1)) : envPath -} - -function _configVault (options) { - _log('Loading env from encrypted .env.vault') - - const parsed = DotenvModule._parseVault(options) - - let processEnv = process.env - if (options && options.processEnv != null) { - processEnv = options.processEnv - } - - DotenvModule.populate(processEnv, parsed, options) - - return { parsed } -} - -function configDotenv (options) { - const dotenvPath = path.resolve(process.cwd(), '.env') - let encoding = 'utf8' - const debug = Boolean(options && options.debug) - - if (options && options.encoding) { - encoding = options.encoding - } else { - if (debug) { - _debug('No encoding is specified. UTF-8 is used by default') - } - } - - let optionPaths = [dotenvPath] // default, look for .env - if (options && options.path) { - if (!Array.isArray(options.path)) { - optionPaths = [_resolveHome(options.path)] - } else { - optionPaths = [] // reset default - for (const filepath of options.path) { - optionPaths.push(_resolveHome(filepath)) - } - } - } - - // Build the parsed data in a temporary object (because we need to return it). Once we have the final - // parsed data, we will combine it with process.env (or options.processEnv if provided). - let lastError - const parsedAll = {} - for (const path of optionPaths) { - try { - // Specifying an encoding returns a string instead of a buffer - const parsed = DotenvModule.parse(fs.readFileSync(path, { encoding })) - - DotenvModule.populate(parsedAll, parsed, options) - } catch (e) { - if (debug) { - _debug(`Failed to load ${path} ${e.message}`) - } - lastError = e - } - } - - let processEnv = process.env - if (options && options.processEnv != null) { - processEnv = options.processEnv - } - - DotenvModule.populate(processEnv, parsedAll, options) - - if (lastError) { - return { parsed: parsedAll, error: lastError } - } else { - return { parsed: parsedAll } - } -} - -// Populates process.env from .env file -function config (options) { - // fallback to original dotenv if DOTENV_KEY is not set - if (_dotenvKey(options).length === 0) { - return DotenvModule.configDotenv(options) - } - - const vaultPath = _vaultPath(options) - - // dotenvKey exists but .env.vault file does not exist - if (!vaultPath) { - _warn(`You set DOTENV_KEY but you are missing a .env.vault file at ${vaultPath}. Did you forget to build it?`) - - return DotenvModule.configDotenv(options) - } - - return DotenvModule._configVault(options) -} - -function decrypt (encrypted, keyStr) { - const key = Buffer.from(keyStr.slice(-64), 'hex') - let ciphertext = Buffer.from(encrypted, 'base64') - - const nonce = ciphertext.subarray(0, 12) - const authTag = ciphertext.subarray(-16) - ciphertext = ciphertext.subarray(12, -16) - - try { - const aesgcm = crypto.createDecipheriv('aes-256-gcm', key, nonce) - aesgcm.setAuthTag(authTag) - return `${aesgcm.update(ciphertext)}${aesgcm.final()}` - } catch (error) { - const isRange = error instanceof RangeError - const invalidKeyLength = error.message === 'Invalid key length' - const decryptionFailed = error.message === 'Unsupported state or unable to authenticate data' - - if (isRange || invalidKeyLength) { - const err = new Error('INVALID_DOTENV_KEY: It must be 64 characters long (or more)') - err.code = 'INVALID_DOTENV_KEY' - throw err - } else if (decryptionFailed) { - const err = new Error('DECRYPTION_FAILED: Please check your DOTENV_KEY') - err.code = 'DECRYPTION_FAILED' - throw err - } else { - throw error - } - } -} - -// Populate process.env with parsed values -function populate (processEnv, parsed, options = {}) { - const debug = Boolean(options && options.debug) - const override = Boolean(options && options.override) - - if (typeof parsed !== 'object') { - const err = new Error('OBJECT_REQUIRED: Please check the processEnv argument being passed to populate') - err.code = 'OBJECT_REQUIRED' - throw err - } - - // Set process.env - for (const key of Object.keys(parsed)) { - if (Object.prototype.hasOwnProperty.call(processEnv, key)) { - if (override === true) { - processEnv[key] = parsed[key] - } - - if (debug) { - if (override === true) { - _debug(`"${key}" is already defined and WAS overwritten`) - } else { - _debug(`"${key}" is already defined and was NOT overwritten`) - } - } - } else { - processEnv[key] = parsed[key] - } - } -} - -const DotenvModule = { - configDotenv, - _configVault, - _parseVault, - config, - decrypt, - parse, - populate -} - -module.exports.configDotenv = DotenvModule.configDotenv -module.exports._configVault = DotenvModule._configVault -module.exports._parseVault = DotenvModule._parseVault -module.exports.config = DotenvModule.config -module.exports.decrypt = DotenvModule.decrypt -module.exports.parse = DotenvModule.parse -module.exports.populate = DotenvModule.populate - -module.exports = DotenvModule - - -/***/ }), - -/***/ 57034: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -var elliptic = exports; - -elliptic.version = (__nccwpck_require__(1636)/* .version */ .rE); -elliptic.utils = __nccwpck_require__(5028); -elliptic.rand = __nccwpck_require__(49586); -elliptic.curve = __nccwpck_require__(57773); -elliptic.curves = __nccwpck_require__(30997); - -// Protocols -elliptic.ec = __nccwpck_require__(75070); -elliptic.eddsa = __nccwpck_require__(93225); - - -/***/ }), - -/***/ 58088: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var BN = __nccwpck_require__(7967); -var utils = __nccwpck_require__(5028); -var getNAF = utils.getNAF; -var getJSF = utils.getJSF; -var assert = utils.assert; - -function BaseCurve(type, conf) { - this.type = type; - this.p = new BN(conf.p, 16); - - // Use Montgomery, when there is no fast reduction for the prime - this.red = conf.prime ? BN.red(conf.prime) : BN.mont(this.p); - - // Useful for many curves - this.zero = new BN(0).toRed(this.red); - this.one = new BN(1).toRed(this.red); - this.two = new BN(2).toRed(this.red); - - // Curve configuration, optional - this.n = conf.n && new BN(conf.n, 16); - this.g = conf.g && this.pointFromJSON(conf.g, conf.gRed); - - // Temporary arrays - 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; - - // Generalized Greg Maxwell's trick - var adjustCount = this.n && this.p.div(this.n); - if (!adjustCount || adjustCount.cmpn(100) > 0) { - this.redN = null; - } else { - this._maxwellTrick = true; - this.redN = this.n.toRed(this.red); - } -} -module.exports = BaseCurve; - -BaseCurve.prototype.point = function point() { - throw new Error('Not implemented'); -}; - -BaseCurve.prototype.validate = function validate() { - throw new Error('Not implemented'); -}; - -BaseCurve.prototype._fixedNafMul = function _fixedNafMul(p, k) { - assert(p.precomputed); - var doubles = p._getDoubles(); - - var naf = getNAF(k, 1, this._bitLength); - var I = (1 << (doubles.step + 1)) - (doubles.step % 2 === 0 ? 2 : 1); - I /= 3; - - // Translate into more windowed form - var repr = []; - var j; - var nafW; - for (j = 0; j < naf.length; j += doubles.step) { - nafW = 0; - for (var l = j + doubles.step - 1; l >= j; l--) - nafW = (nafW << 1) + naf[l]; - repr.push(nafW); - } - - var a = this.jpoint(null, null, null); - var b = this.jpoint(null, null, null); - for (var i = I; i > 0; i--) { - for (j = 0; j < repr.length; j++) { - nafW = repr[j]; - if (nafW === i) - b = b.mixedAdd(doubles.points[j]); - else if (nafW === -i) - b = b.mixedAdd(doubles.points[j].neg()); - } - a = a.add(b); - } - return a.toP(); -}; - -BaseCurve.prototype._wnafMul = function _wnafMul(p, k) { - var w = 4; - - // Precompute window - var nafPoints = p._getNAFPoints(w); - w = nafPoints.wnd; - var wnd = nafPoints.points; - - // Get NAF form - var naf = getNAF(k, w, this._bitLength); - - // Add `this`*(N+1) for every w-NAF index - var acc = this.jpoint(null, null, null); - for (var i = naf.length - 1; i >= 0; i--) { - // Count zeroes - for (var l = 0; i >= 0 && naf[i] === 0; i--) - l++; - if (i >= 0) - l++; - acc = acc.dblp(l); - - if (i < 0) - break; - var z = naf[i]; - assert(z !== 0); - if (p.type === 'affine') { - // J +- P - if (z > 0) - acc = acc.mixedAdd(wnd[(z - 1) >> 1]); - else - acc = acc.mixedAdd(wnd[(-z - 1) >> 1].neg()); - } else { - // J +- J - if (z > 0) - acc = acc.add(wnd[(z - 1) >> 1]); - else - acc = acc.add(wnd[(-z - 1) >> 1].neg()); - } - } - return p.type === 'affine' ? acc.toP() : acc; -}; - -BaseCurve.prototype._wnafMulAdd = function _wnafMulAdd(defW, - points, - coeffs, - len, - jacobianResult) { - var wndWidth = this._wnafT1; - var wnd = this._wnafT2; - var naf = this._wnafT3; - - // Fill all arrays - var max = 0; - var i; - var j; - var p; - for (i = 0; i < len; i++) { - p = points[i]; - var nafPoints = p._getNAFPoints(defW); - wndWidth[i] = nafPoints.wnd; - wnd[i] = nafPoints.points; - } - - // Comb small window NAFs - for (i = len - 1; i >= 1; i -= 2) { - var a = i - 1; - var b = i; - if (wndWidth[a] !== 1 || wndWidth[b] !== 1) { - naf[a] = getNAF(coeffs[a], wndWidth[a], this._bitLength); - naf[b] = getNAF(coeffs[b], wndWidth[b], this._bitLength); - max = Math.max(naf[a].length, max); - max = Math.max(naf[b].length, max); - continue; - } - - var comb = [ - points[a], /* 1 */ - null, /* 3 */ - null, /* 5 */ - points[b], /* 7 */ - ]; - - // Try to avoid Projective points, if possible - if (points[a].y.cmp(points[b].y) === 0) { - comb[1] = points[a].add(points[b]); - comb[2] = points[a].toJ().mixedAdd(points[b].neg()); - } else if (points[a].y.cmp(points[b].y.redNeg()) === 0) { - comb[1] = points[a].toJ().mixedAdd(points[b]); - comb[2] = points[a].add(points[b].neg()); - } else { - comb[1] = points[a].toJ().mixedAdd(points[b]); - comb[2] = points[a].toJ().mixedAdd(points[b].neg()); - } - - var index = [ - -3, /* -1 -1 */ - -1, /* -1 0 */ - -5, /* -1 1 */ - -7, /* 0 -1 */ - 0, /* 0 0 */ - 7, /* 0 1 */ - 5, /* 1 -1 */ - 1, /* 1 0 */ - 3, /* 1 1 */ - ]; - - var jsf = getJSF(coeffs[a], coeffs[b]); - max = Math.max(jsf[0].length, max); - naf[a] = new Array(max); - naf[b] = new Array(max); - for (j = 0; j < max; j++) { - var ja = jsf[0][j] | 0; - var jb = jsf[1][j] | 0; - - naf[a][j] = index[(ja + 1) * 3 + (jb + 1)]; - naf[b][j] = 0; - wnd[a] = comb; - } - } - - var acc = this.jpoint(null, null, null); - var tmp = this._wnafT4; - for (i = max; i >= 0; i--) { - var k = 0; - - while (i >= 0) { - var zero = true; - for (j = 0; j < len; j++) { - tmp[j] = naf[j][i] | 0; - if (tmp[j] !== 0) - zero = false; - } - if (!zero) - break; - k++; - i--; - } - if (i >= 0) - k++; - acc = acc.dblp(k); - if (i < 0) - break; - - for (j = 0; j < len; j++) { - var z = tmp[j]; - p; - if (z === 0) - continue; - else if (z > 0) - p = wnd[j][(z - 1) >> 1]; - else if (z < 0) - p = wnd[j][(-z - 1) >> 1].neg(); - - if (p.type === 'affine') - acc = acc.mixedAdd(p); - else - acc = acc.add(p); - } - } - // Zeroify references - for (i = 0; i < len; i++) - wnd[i] = null; - - if (jacobianResult) - return acc; - else - return acc.toP(); -}; - -function BasePoint(curve, type) { - this.curve = curve; - this.type = type; - this.precomputed = null; -} -BaseCurve.BasePoint = BasePoint; - -BasePoint.prototype.eq = function eq(/*other*/) { - throw new Error('Not implemented'); -}; - -BasePoint.prototype.validate = function validate() { - return this.curve.validate(this); -}; - -BaseCurve.prototype.decodePoint = function decodePoint(bytes, enc) { - bytes = utils.toArray(bytes, enc); - - var len = this.p.byteLength(); - - // uncompressed, hybrid-odd, hybrid-even - if ((bytes[0] === 0x04 || bytes[0] === 0x06 || bytes[0] === 0x07) && - bytes.length - 1 === 2 * len) { - if (bytes[0] === 0x06) - assert(bytes[bytes.length - 1] % 2 === 0); - else if (bytes[0] === 0x07) - assert(bytes[bytes.length - 1] % 2 === 1); - - var res = this.point(bytes.slice(1, 1 + len), - bytes.slice(1 + len, 1 + 2 * len)); - - return res; - } else if ((bytes[0] === 0x02 || bytes[0] === 0x03) && - bytes.length - 1 === len) { - return this.pointFromX(bytes.slice(1, 1 + len), bytes[0] === 0x03); - } - throw new Error('Unknown point format'); -}; - -BasePoint.prototype.encodeCompressed = function encodeCompressed(enc) { - return this.encode(enc, true); -}; - -BasePoint.prototype._encode = function _encode(compact) { - var len = this.curve.p.byteLength(); - var x = this.getX().toArray('be', len); - - if (compact) - return [ this.getY().isEven() ? 0x02 : 0x03 ].concat(x); - - return [ 0x04 ].concat(x, this.getY().toArray('be', len)); -}; - -BasePoint.prototype.encode = function encode(enc, compact) { - return utils.encode(this._encode(compact), enc); -}; - -BasePoint.prototype.precompute = function precompute(power) { - if (this.precomputed) - return this; - - var precomputed = { - doubles: null, - naf: null, - beta: null, - }; - precomputed.naf = this._getNAFPoints(8); - precomputed.doubles = this._getDoubles(4, power); - precomputed.beta = this._getBeta(); - this.precomputed = precomputed; - - return this; -}; - -BasePoint.prototype._hasDoubles = function _hasDoubles(k) { - if (!this.precomputed) - return false; - - var doubles = this.precomputed.doubles; - if (!doubles) - return false; - - return doubles.points.length >= Math.ceil((k.bitLength() + 1) / doubles.step); -}; - -BasePoint.prototype._getDoubles = function _getDoubles(step, power) { - if (this.precomputed && this.precomputed.doubles) - return this.precomputed.doubles; - - var doubles = [ this ]; - var acc = this; - for (var i = 0; i < power; i += step) { - for (var j = 0; j < step; j++) - acc = acc.dbl(); - doubles.push(acc); - } - return { - step: step, - points: doubles, - }; -}; - -BasePoint.prototype._getNAFPoints = function _getNAFPoints(wnd) { - if (this.precomputed && this.precomputed.naf) - return this.precomputed.naf; - - var res = [ this ]; - var max = (1 << wnd) - 1; - var dbl = max === 1 ? null : this.dbl(); - for (var i = 1; i < max; i++) - res[i] = res[i - 1].add(dbl); - return { - wnd: wnd, - points: res, - }; -}; - -BasePoint.prototype._getBeta = function _getBeta() { - return null; -}; - -BasePoint.prototype.dblp = function dblp(k) { - var r = this; - for (var i = 0; i < k; i++) - r = r.dbl(); - return r; -}; - - -/***/ }), - -/***/ 79981: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var utils = __nccwpck_require__(5028); -var BN = __nccwpck_require__(7967); -var inherits = __nccwpck_require__(39598); -var Base = __nccwpck_require__(58088); - -var assert = utils.assert; - -function EdwardsCurve(conf) { - // NOTE: Important as we are creating point in Base.call() - this.twisted = (conf.a | 0) !== 1; - this.mOneA = this.twisted && (conf.a | 0) === -1; - this.extended = this.mOneA; - - Base.call(this, 'edwards', conf); - - this.a = new BN(conf.a, 16).umod(this.red.m); - this.a = this.a.toRed(this.red); - this.c = new BN(conf.c, 16).toRed(this.red); - this.c2 = this.c.redSqr(); - this.d = new BN(conf.d, 16).toRed(this.red); - this.dd = this.d.redAdd(this.d); - - assert(!this.twisted || this.c.fromRed().cmpn(1) === 0); - this.oneC = (conf.c | 0) === 1; -} -inherits(EdwardsCurve, Base); -module.exports = EdwardsCurve; - -EdwardsCurve.prototype._mulA = function _mulA(num) { - if (this.mOneA) - return num.redNeg(); - else - return this.a.redMul(num); -}; - -EdwardsCurve.prototype._mulC = function _mulC(num) { - if (this.oneC) - return num; - else - return this.c.redMul(num); -}; - -// Just for compatibility with Short curve -EdwardsCurve.prototype.jpoint = function jpoint(x, y, z, t) { - return this.point(x, y, z, t); -}; - -EdwardsCurve.prototype.pointFromX = function pointFromX(x, odd) { - x = new BN(x, 16); - if (!x.red) - x = x.toRed(this.red); - - var x2 = x.redSqr(); - var rhs = this.c2.redSub(this.a.redMul(x2)); - var lhs = this.one.redSub(this.c2.redMul(this.d).redMul(x2)); - - var y2 = rhs.redMul(lhs.redInvm()); - var y = y2.redSqrt(); - if (y.redSqr().redSub(y2).cmp(this.zero) !== 0) - throw new Error('invalid point'); - - var isOdd = y.fromRed().isOdd(); - if (odd && !isOdd || !odd && isOdd) - y = y.redNeg(); - - return this.point(x, y); -}; - -EdwardsCurve.prototype.pointFromY = function pointFromY(y, odd) { - y = new BN(y, 16); - if (!y.red) - y = y.toRed(this.red); - - // x^2 = (y^2 - c^2) / (c^2 d y^2 - a) - var y2 = y.redSqr(); - var lhs = y2.redSub(this.c2); - var rhs = y2.redMul(this.d).redMul(this.c2).redSub(this.a); - var x2 = lhs.redMul(rhs.redInvm()); - - if (x2.cmp(this.zero) === 0) { - if (odd) - throw new Error('invalid point'); - else - return this.point(this.zero, y); - } - - var x = x2.redSqrt(); - if (x.redSqr().redSub(x2).cmp(this.zero) !== 0) - throw new Error('invalid point'); - - if (x.fromRed().isOdd() !== odd) - x = x.redNeg(); - - return this.point(x, y); -}; - -EdwardsCurve.prototype.validate = function validate(point) { - if (point.isInfinity()) - return true; - - // Curve: A * X^2 + Y^2 = C^2 * (1 + D * X^2 * Y^2) - point.normalize(); - - var x2 = point.x.redSqr(); - var y2 = point.y.redSqr(); - var lhs = x2.redMul(this.a).redAdd(y2); - var rhs = this.c2.redMul(this.one.redAdd(this.d.redMul(x2).redMul(y2))); - - return lhs.cmp(rhs) === 0; -}; - -function Point(curve, x, y, z, t) { - Base.BasePoint.call(this, curve, 'projective'); - if (x === null && y === null && z === null) { - this.x = this.curve.zero; - this.y = this.curve.one; - this.z = this.curve.one; - this.t = this.curve.zero; - this.zOne = true; - } else { - this.x = new BN(x, 16); - this.y = new BN(y, 16); - this.z = z ? new BN(z, 16) : this.curve.one; - this.t = t && new BN(t, 16); - if (!this.x.red) - this.x = this.x.toRed(this.curve.red); - if (!this.y.red) - this.y = this.y.toRed(this.curve.red); - if (!this.z.red) - this.z = this.z.toRed(this.curve.red); - if (this.t && !this.t.red) - this.t = this.t.toRed(this.curve.red); - this.zOne = this.z === this.curve.one; - - // Use extended coordinates - if (this.curve.extended && !this.t) { - this.t = this.x.redMul(this.y); - if (!this.zOne) - this.t = this.t.redMul(this.z.redInvm()); - } - } -} -inherits(Point, Base.BasePoint); - -EdwardsCurve.prototype.pointFromJSON = function pointFromJSON(obj) { - return Point.fromJSON(this, obj); -}; - -EdwardsCurve.prototype.point = function point(x, y, z, t) { - return new Point(this, x, y, z, t); -}; - -Point.fromJSON = function fromJSON(curve, obj) { - return new Point(curve, obj[0], obj[1], obj[2]); -}; - -Point.prototype.inspect = function inspect() { - if (this.isInfinity()) - return ''; - return ''; -}; - -Point.prototype.isInfinity = function isInfinity() { - // XXX This code assumes that zero is always zero in red - return this.x.cmpn(0) === 0 && - (this.y.cmp(this.z) === 0 || - (this.zOne && this.y.cmp(this.curve.c) === 0)); -}; - -Point.prototype._extDbl = function _extDbl() { - // hyperelliptic.org/EFD/g1p/auto-twisted-extended-1.html - // #doubling-dbl-2008-hwcd - // 4M + 4S - - // A = X1^2 - var a = this.x.redSqr(); - // B = Y1^2 - var b = this.y.redSqr(); - // C = 2 * Z1^2 - var c = this.z.redSqr(); - c = c.redIAdd(c); - // D = a * A - var d = this.curve._mulA(a); - // E = (X1 + Y1)^2 - A - B - var e = this.x.redAdd(this.y).redSqr().redISub(a).redISub(b); - // G = D + B - var g = d.redAdd(b); - // F = G - C - var f = g.redSub(c); - // H = D - B - var h = d.redSub(b); - // X3 = E * F - var nx = e.redMul(f); - // Y3 = G * H - var ny = g.redMul(h); - // T3 = E * H - var nt = e.redMul(h); - // Z3 = F * G - var nz = f.redMul(g); - return this.curve.point(nx, ny, nz, nt); -}; - -Point.prototype._projDbl = function _projDbl() { - // hyperelliptic.org/EFD/g1p/auto-twisted-projective.html - // #doubling-dbl-2008-bbjlp - // #doubling-dbl-2007-bl - // and others - // Generally 3M + 4S or 2M + 4S - - // B = (X1 + Y1)^2 - var b = this.x.redAdd(this.y).redSqr(); - // C = X1^2 - var c = this.x.redSqr(); - // D = Y1^2 - var d = this.y.redSqr(); - - var nx; - var ny; - var nz; - var e; - var h; - var j; - if (this.curve.twisted) { - // E = a * C - e = this.curve._mulA(c); - // F = E + D - var f = e.redAdd(d); - if (this.zOne) { - // X3 = (B - C - D) * (F - 2) - nx = b.redSub(c).redSub(d).redMul(f.redSub(this.curve.two)); - // Y3 = F * (E - D) - ny = f.redMul(e.redSub(d)); - // Z3 = F^2 - 2 * F - nz = f.redSqr().redSub(f).redSub(f); - } else { - // H = Z1^2 - h = this.z.redSqr(); - // J = F - 2 * H - j = f.redSub(h).redISub(h); - // X3 = (B-C-D)*J - nx = b.redSub(c).redISub(d).redMul(j); - // Y3 = F * (E - D) - ny = f.redMul(e.redSub(d)); - // Z3 = F * J - nz = f.redMul(j); - } - } else { - // E = C + D - e = c.redAdd(d); - // H = (c * Z1)^2 - h = this.curve._mulC(this.z).redSqr(); - // J = E - 2 * H - j = e.redSub(h).redSub(h); - // X3 = c * (B - E) * J - nx = this.curve._mulC(b.redISub(e)).redMul(j); - // Y3 = c * E * (C - D) - ny = this.curve._mulC(e).redMul(c.redISub(d)); - // Z3 = E * J - nz = e.redMul(j); - } - return this.curve.point(nx, ny, nz); -}; - -Point.prototype.dbl = function dbl() { - if (this.isInfinity()) - return this; - - // Double in extended coordinates - if (this.curve.extended) - return this._extDbl(); - else - return this._projDbl(); -}; - -Point.prototype._extAdd = function _extAdd(p) { - // hyperelliptic.org/EFD/g1p/auto-twisted-extended-1.html - // #addition-add-2008-hwcd-3 - // 8M - - // A = (Y1 - X1) * (Y2 - X2) - var a = this.y.redSub(this.x).redMul(p.y.redSub(p.x)); - // B = (Y1 + X1) * (Y2 + X2) - var b = this.y.redAdd(this.x).redMul(p.y.redAdd(p.x)); - // C = T1 * k * T2 - var c = this.t.redMul(this.curve.dd).redMul(p.t); - // D = Z1 * 2 * Z2 - var d = this.z.redMul(p.z.redAdd(p.z)); - // E = B - A - var e = b.redSub(a); - // F = D - C - var f = d.redSub(c); - // G = D + C - var g = d.redAdd(c); - // H = B + A - var h = b.redAdd(a); - // X3 = E * F - var nx = e.redMul(f); - // Y3 = G * H - var ny = g.redMul(h); - // T3 = E * H - var nt = e.redMul(h); - // Z3 = F * G - var nz = f.redMul(g); - return this.curve.point(nx, ny, nz, nt); -}; - -Point.prototype._projAdd = function _projAdd(p) { - // hyperelliptic.org/EFD/g1p/auto-twisted-projective.html - // #addition-add-2008-bbjlp - // #addition-add-2007-bl - // 10M + 1S - - // A = Z1 * Z2 - var a = this.z.redMul(p.z); - // B = A^2 - var b = a.redSqr(); - // C = X1 * X2 - var c = this.x.redMul(p.x); - // D = Y1 * Y2 - var d = this.y.redMul(p.y); - // E = d * C * D - var e = this.curve.d.redMul(c).redMul(d); - // F = B - E - var f = b.redSub(e); - // G = B + E - var g = b.redAdd(e); - // X3 = A * F * ((X1 + Y1) * (X2 + Y2) - C - D) - var tmp = this.x.redAdd(this.y).redMul(p.x.redAdd(p.y)).redISub(c).redISub(d); - var nx = a.redMul(f).redMul(tmp); - var ny; - var nz; - if (this.curve.twisted) { - // Y3 = A * G * (D - a * C) - ny = a.redMul(g).redMul(d.redSub(this.curve._mulA(c))); - // Z3 = F * G - nz = f.redMul(g); - } else { - // Y3 = A * G * (D - C) - ny = a.redMul(g).redMul(d.redSub(c)); - // Z3 = c * F * G - nz = this.curve._mulC(f).redMul(g); - } - return this.curve.point(nx, ny, nz); -}; - -Point.prototype.add = function add(p) { - if (this.isInfinity()) - return p; - if (p.isInfinity()) - return this; - - if (this.curve.extended) - return this._extAdd(p); - else - return this._projAdd(p); -}; - -Point.prototype.mul = function mul(k) { - if (this._hasDoubles(k)) - return this.curve._fixedNafMul(this, k); - else - return this.curve._wnafMul(this, k); -}; - -Point.prototype.mulAdd = function mulAdd(k1, p, k2) { - return this.curve._wnafMulAdd(1, [ this, p ], [ k1, k2 ], 2, false); -}; - -Point.prototype.jmulAdd = function jmulAdd(k1, p, k2) { - return this.curve._wnafMulAdd(1, [ this, p ], [ k1, k2 ], 2, true); -}; - -Point.prototype.normalize = function normalize() { - if (this.zOne) - return this; - - // Normalize coordinates - var zi = this.z.redInvm(); - this.x = this.x.redMul(zi); - this.y = this.y.redMul(zi); - if (this.t) - this.t = this.t.redMul(zi); - this.z = this.curve.one; - this.zOne = true; - return this; -}; - -Point.prototype.neg = function neg() { - return this.curve.point(this.x.redNeg(), - this.y, - this.z, - this.t && this.t.redNeg()); -}; - -Point.prototype.getX = function getX() { - this.normalize(); - return this.x.fromRed(); -}; - -Point.prototype.getY = function getY() { - this.normalize(); - return this.y.fromRed(); -}; - -Point.prototype.eq = function eq(other) { - return this === other || - this.getX().cmp(other.getX()) === 0 && - this.getY().cmp(other.getY()) === 0; -}; - -Point.prototype.eqXToP = function eqXToP(x) { - var rx = x.toRed(this.curve.red).redMul(this.z); - if (this.x.cmp(rx) === 0) - return true; - - var xc = x.clone(); - var t = this.curve.redN.redMul(this.z); - for (;;) { - xc.iadd(this.curve.n); - if (xc.cmp(this.curve.p) >= 0) - return false; - - rx.redIAdd(t); - if (this.x.cmp(rx) === 0) - return true; - } -}; - -// Compatibility with BaseCurve -Point.prototype.toP = Point.prototype.normalize; -Point.prototype.mixedAdd = Point.prototype.add; - - -/***/ }), - -/***/ 57773: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -var curve = exports; - -curve.base = __nccwpck_require__(58088); -curve.short = __nccwpck_require__(23639); -curve.mont = __nccwpck_require__(71047); -curve.edwards = __nccwpck_require__(79981); - - -/***/ }), - -/***/ 71047: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var BN = __nccwpck_require__(7967); -var inherits = __nccwpck_require__(39598); -var Base = __nccwpck_require__(58088); - -var utils = __nccwpck_require__(5028); - -function MontCurve(conf) { - Base.call(this, 'mont', conf); - - this.a = new BN(conf.a, 16).toRed(this.red); - this.b = new BN(conf.b, 16).toRed(this.red); - this.i4 = new BN(4).toRed(this.red).redInvm(); - this.two = new BN(2).toRed(this.red); - this.a24 = this.i4.redMul(this.a.redAdd(this.two)); -} -inherits(MontCurve, Base); -module.exports = MontCurve; - -MontCurve.prototype.validate = function validate(point) { - var x = point.normalize().x; - var x2 = x.redSqr(); - var rhs = x2.redMul(x).redAdd(x2.redMul(this.a)).redAdd(x); - var y = rhs.redSqrt(); - - return y.redSqr().cmp(rhs) === 0; -}; - -function Point(curve, x, z) { - Base.BasePoint.call(this, curve, 'projective'); - if (x === null && z === null) { - this.x = this.curve.one; - this.z = this.curve.zero; - } else { - this.x = new BN(x, 16); - this.z = new BN(z, 16); - if (!this.x.red) - this.x = this.x.toRed(this.curve.red); - if (!this.z.red) - this.z = this.z.toRed(this.curve.red); - } -} -inherits(Point, Base.BasePoint); - -MontCurve.prototype.decodePoint = function decodePoint(bytes, enc) { - return this.point(utils.toArray(bytes, enc), 1); -}; - -MontCurve.prototype.point = function point(x, z) { - return new Point(this, x, z); -}; - -MontCurve.prototype.pointFromJSON = function pointFromJSON(obj) { - return Point.fromJSON(this, obj); -}; - -Point.prototype.precompute = function precompute() { - // No-op -}; - -Point.prototype._encode = function _encode() { - return this.getX().toArray('be', this.curve.p.byteLength()); -}; - -Point.fromJSON = function fromJSON(curve, obj) { - return new Point(curve, obj[0], obj[1] || curve.one); -}; - -Point.prototype.inspect = function inspect() { - if (this.isInfinity()) - return ''; - return ''; -}; - -Point.prototype.isInfinity = function isInfinity() { - // XXX This code assumes that zero is always zero in red - return this.z.cmpn(0) === 0; -}; - -Point.prototype.dbl = function dbl() { - // http://hyperelliptic.org/EFD/g1p/auto-montgom-xz.html#doubling-dbl-1987-m-3 - // 2M + 2S + 4A - - // A = X1 + Z1 - var a = this.x.redAdd(this.z); - // AA = A^2 - var aa = a.redSqr(); - // B = X1 - Z1 - var b = this.x.redSub(this.z); - // BB = B^2 - var bb = b.redSqr(); - // C = AA - BB - var c = aa.redSub(bb); - // X3 = AA * BB - var nx = aa.redMul(bb); - // Z3 = C * (BB + A24 * C) - var nz = c.redMul(bb.redAdd(this.curve.a24.redMul(c))); - return this.curve.point(nx, nz); -}; - -Point.prototype.add = function add() { - throw new Error('Not supported on Montgomery curve'); -}; - -Point.prototype.diffAdd = function diffAdd(p, diff) { - // http://hyperelliptic.org/EFD/g1p/auto-montgom-xz.html#diffadd-dadd-1987-m-3 - // 4M + 2S + 6A - - // A = X2 + Z2 - var a = this.x.redAdd(this.z); - // B = X2 - Z2 - var b = this.x.redSub(this.z); - // C = X3 + Z3 - var c = p.x.redAdd(p.z); - // D = X3 - Z3 - var d = p.x.redSub(p.z); - // DA = D * A - var da = d.redMul(a); - // CB = C * B - var cb = c.redMul(b); - // X5 = Z1 * (DA + CB)^2 - var nx = diff.z.redMul(da.redAdd(cb).redSqr()); - // Z5 = X1 * (DA - CB)^2 - var nz = diff.x.redMul(da.redISub(cb).redSqr()); - return this.curve.point(nx, nz); -}; - -Point.prototype.mul = function mul(k) { - var t = k.clone(); - var a = this; // (N / 2) * Q + Q - var b = this.curve.point(null, null); // (N / 2) * Q - var c = this; // Q - - for (var bits = []; t.cmpn(0) !== 0; t.iushrn(1)) - bits.push(t.andln(1)); - - for (var i = bits.length - 1; i >= 0; i--) { - if (bits[i] === 0) { - // N * Q + Q = ((N / 2) * Q + Q)) + (N / 2) * Q - a = a.diffAdd(b, c); - // N * Q = 2 * ((N / 2) * Q + Q)) - b = b.dbl(); - } else { - // N * Q = ((N / 2) * Q + Q) + ((N / 2) * Q) - b = a.diffAdd(b, c); - // N * Q + Q = 2 * ((N / 2) * Q + Q) - a = a.dbl(); - } - } - return b; -}; - -Point.prototype.mulAdd = function mulAdd() { - throw new Error('Not supported on Montgomery curve'); -}; - -Point.prototype.jumlAdd = function jumlAdd() { - throw new Error('Not supported on Montgomery curve'); -}; - -Point.prototype.eq = function eq(other) { - return this.getX().cmp(other.getX()) === 0; -}; - -Point.prototype.normalize = function normalize() { - this.x = this.x.redMul(this.z.redInvm()); - this.z = this.curve.one; - return this; -}; - -Point.prototype.getX = function getX() { - // Normalize coordinates - this.normalize(); - - return this.x.fromRed(); -}; - - -/***/ }), - -/***/ 23639: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var utils = __nccwpck_require__(5028); -var BN = __nccwpck_require__(7967); -var inherits = __nccwpck_require__(39598); -var Base = __nccwpck_require__(58088); - -var assert = utils.assert; - -function ShortCurve(conf) { - Base.call(this, 'short', conf); - - this.a = new BN(conf.a, 16).toRed(this.red); - this.b = new BN(conf.b, 16).toRed(this.red); - this.tinv = this.two.redInvm(); - - this.zeroA = this.a.fromRed().cmpn(0) === 0; - this.threeA = this.a.fromRed().sub(this.p).cmpn(-3) === 0; - - // If the curve is endomorphic, precalculate beta and lambda - this.endo = this._getEndomorphism(conf); - this._endoWnafT1 = new Array(4); - this._endoWnafT2 = new Array(4); -} -inherits(ShortCurve, Base); -module.exports = ShortCurve; - -ShortCurve.prototype._getEndomorphism = function _getEndomorphism(conf) { - // No efficient endomorphism - if (!this.zeroA || !this.g || !this.n || this.p.modn(3) !== 1) - return; - - // Compute beta and lambda, that lambda * P = (beta * Px; Py) - var beta; - var lambda; - if (conf.beta) { - beta = new BN(conf.beta, 16).toRed(this.red); - } else { - var betas = this._getEndoRoots(this.p); - // Choose the smallest beta - beta = betas[0].cmp(betas[1]) < 0 ? betas[0] : betas[1]; - beta = beta.toRed(this.red); - } - if (conf.lambda) { - lambda = new BN(conf.lambda, 16); - } else { - // Choose the lambda that is matching selected beta - var lambdas = this._getEndoRoots(this.n); - if (this.g.mul(lambdas[0]).x.cmp(this.g.x.redMul(beta)) === 0) { - lambda = lambdas[0]; - } else { - lambda = lambdas[1]; - assert(this.g.mul(lambda).x.cmp(this.g.x.redMul(beta)) === 0); - } - } - - // Get basis vectors, used for balanced length-two representation - var basis; - if (conf.basis) { - basis = conf.basis.map(function(vec) { - return { - a: new BN(vec.a, 16), - b: new BN(vec.b, 16), - }; - }); - } else { - basis = this._getEndoBasis(lambda); - } - - return { - beta: beta, - lambda: lambda, - basis: basis, - }; -}; - -ShortCurve.prototype._getEndoRoots = function _getEndoRoots(num) { - // Find roots of for x^2 + x + 1 in F - // Root = (-1 +- Sqrt(-3)) / 2 - // - var red = num === this.p ? this.red : BN.mont(num); - var tinv = new BN(2).toRed(red).redInvm(); - var ntinv = tinv.redNeg(); - - var s = new BN(3).toRed(red).redNeg().redSqrt().redMul(tinv); - - var l1 = ntinv.redAdd(s).fromRed(); - var l2 = ntinv.redSub(s).fromRed(); - return [ l1, l2 ]; -}; - -ShortCurve.prototype._getEndoBasis = function _getEndoBasis(lambda) { - // aprxSqrt >= sqrt(this.n) - var aprxSqrt = this.n.ushrn(Math.floor(this.n.bitLength() / 2)); - - // 3.74 - // Run EGCD, until r(L + 1) < aprxSqrt - var u = lambda; - var v = this.n.clone(); - var x1 = new BN(1); - var y1 = new BN(0); - var x2 = new BN(0); - var y2 = new BN(1); - - // NOTE: all vectors are roots of: a + b * lambda = 0 (mod n) - var a0; - var b0; - // First vector - var a1; - var b1; - // Second vector - var a2; - var b2; - - var prevR; - var i = 0; - var r; - var x; - while (u.cmpn(0) !== 0) { - var q = v.div(u); - r = v.sub(q.mul(u)); - x = x2.sub(q.mul(x1)); - var y = y2.sub(q.mul(y1)); - - if (!a1 && r.cmp(aprxSqrt) < 0) { - a0 = prevR.neg(); - b0 = x1; - a1 = r.neg(); - b1 = x; - } else if (a1 && ++i === 2) { - break; - } - prevR = r; - - v = u; - u = r; - x2 = x1; - x1 = x; - y2 = y1; - y1 = y; - } - a2 = r.neg(); - b2 = x; - - var len1 = a1.sqr().add(b1.sqr()); - var len2 = a2.sqr().add(b2.sqr()); - if (len2.cmp(len1) >= 0) { - a2 = a0; - b2 = b0; - } - - // Normalize signs - if (a1.negative) { - a1 = a1.neg(); - b1 = b1.neg(); - } - if (a2.negative) { - a2 = a2.neg(); - b2 = b2.neg(); - } - - return [ - { a: a1, b: b1 }, - { a: a2, b: b2 }, - ]; -}; - -ShortCurve.prototype._endoSplit = function _endoSplit(k) { - var basis = this.endo.basis; - var v1 = basis[0]; - var v2 = basis[1]; - - var c1 = v2.b.mul(k).divRound(this.n); - var c2 = v1.b.neg().mul(k).divRound(this.n); - - var p1 = c1.mul(v1.a); - var p2 = c2.mul(v2.a); - var q1 = c1.mul(v1.b); - var q2 = c2.mul(v2.b); - - // Calculate answer - var k1 = k.sub(p1).sub(p2); - var k2 = q1.add(q2).neg(); - return { k1: k1, k2: k2 }; -}; - -ShortCurve.prototype.pointFromX = function pointFromX(x, odd) { - x = new BN(x, 16); - if (!x.red) - x = x.toRed(this.red); - - var y2 = x.redSqr().redMul(x).redIAdd(x.redMul(this.a)).redIAdd(this.b); - var y = y2.redSqrt(); - if (y.redSqr().redSub(y2).cmp(this.zero) !== 0) - throw new Error('invalid point'); - - // XXX Is there any way to tell if the number is odd without converting it - // to non-red form? - var isOdd = y.fromRed().isOdd(); - if (odd && !isOdd || !odd && isOdd) - y = y.redNeg(); - - return this.point(x, y); -}; - -ShortCurve.prototype.validate = function validate(point) { - if (point.inf) - return true; - - var x = point.x; - var y = point.y; - - var ax = this.a.redMul(x); - var rhs = x.redSqr().redMul(x).redIAdd(ax).redIAdd(this.b); - return y.redSqr().redISub(rhs).cmpn(0) === 0; -}; - -ShortCurve.prototype._endoWnafMulAdd = - function _endoWnafMulAdd(points, coeffs, jacobianResult) { - var npoints = this._endoWnafT1; - var ncoeffs = this._endoWnafT2; - for (var i = 0; i < points.length; i++) { - var split = this._endoSplit(coeffs[i]); - var p = points[i]; - var beta = p._getBeta(); - - if (split.k1.negative) { - split.k1.ineg(); - p = p.neg(true); - } - if (split.k2.negative) { - split.k2.ineg(); - beta = beta.neg(true); - } - - npoints[i * 2] = p; - npoints[i * 2 + 1] = beta; - ncoeffs[i * 2] = split.k1; - ncoeffs[i * 2 + 1] = split.k2; - } - var res = this._wnafMulAdd(1, npoints, ncoeffs, i * 2, jacobianResult); - - // Clean-up references to points and coefficients - for (var j = 0; j < i * 2; j++) { - npoints[j] = null; - ncoeffs[j] = null; - } - return res; - }; - -function Point(curve, x, y, isRed) { - Base.BasePoint.call(this, curve, 'affine'); - if (x === null && y === null) { - this.x = null; - this.y = null; - this.inf = true; - } else { - this.x = new BN(x, 16); - this.y = new BN(y, 16); - // Force redgomery representation when loading from JSON - if (isRed) { - this.x.forceRed(this.curve.red); - this.y.forceRed(this.curve.red); - } - if (!this.x.red) - this.x = this.x.toRed(this.curve.red); - if (!this.y.red) - this.y = this.y.toRed(this.curve.red); - this.inf = false; - } -} -inherits(Point, Base.BasePoint); - -ShortCurve.prototype.point = function point(x, y, isRed) { - return new Point(this, x, y, isRed); -}; - -ShortCurve.prototype.pointFromJSON = function pointFromJSON(obj, red) { - return Point.fromJSON(this, obj, red); -}; - -Point.prototype._getBeta = function _getBeta() { - if (!this.curve.endo) - return; - - var pre = this.precomputed; - if (pre && pre.beta) - return pre.beta; - - var beta = this.curve.point(this.x.redMul(this.curve.endo.beta), this.y); - if (pre) { - var curve = this.curve; - var endoMul = function(p) { - return curve.point(p.x.redMul(curve.endo.beta), p.y); - }; - pre.beta = beta; - beta.precomputed = { - beta: null, - naf: pre.naf && { - wnd: pre.naf.wnd, - points: pre.naf.points.map(endoMul), - }, - doubles: pre.doubles && { - step: pre.doubles.step, - points: pre.doubles.points.map(endoMul), - }, - }; - } - return beta; -}; - -Point.prototype.toJSON = function toJSON() { - if (!this.precomputed) - return [ this.x, this.y ]; - - return [ this.x, this.y, this.precomputed && { - doubles: this.precomputed.doubles && { - step: this.precomputed.doubles.step, - points: this.precomputed.doubles.points.slice(1), - }, - naf: this.precomputed.naf && { - wnd: this.precomputed.naf.wnd, - points: this.precomputed.naf.points.slice(1), - }, - } ]; -}; - -Point.fromJSON = function fromJSON(curve, obj, red) { - if (typeof obj === 'string') - obj = JSON.parse(obj); - var res = curve.point(obj[0], obj[1], red); - if (!obj[2]) - return res; - - function obj2point(obj) { - return curve.point(obj[0], obj[1], red); - } - - var pre = obj[2]; - res.precomputed = { - beta: null, - doubles: pre.doubles && { - step: pre.doubles.step, - points: [ res ].concat(pre.doubles.points.map(obj2point)), - }, - naf: pre.naf && { - wnd: pre.naf.wnd, - points: [ res ].concat(pre.naf.points.map(obj2point)), - }, - }; - return res; -}; - -Point.prototype.inspect = function inspect() { - if (this.isInfinity()) - return ''; - return ''; -}; - -Point.prototype.isInfinity = function isInfinity() { - return this.inf; -}; - -Point.prototype.add = function add(p) { - // O + P = P - if (this.inf) - return p; - - // P + O = P - if (p.inf) - return this; - - // P + P = 2P - if (this.eq(p)) - return this.dbl(); - - // P + (-P) = O - if (this.neg().eq(p)) - return this.curve.point(null, null); - - // P + Q = O - if (this.x.cmp(p.x) === 0) - return this.curve.point(null, null); - - var c = this.y.redSub(p.y); - if (c.cmpn(0) !== 0) - c = c.redMul(this.x.redSub(p.x).redInvm()); - var nx = c.redSqr().redISub(this.x).redISub(p.x); - var ny = c.redMul(this.x.redSub(nx)).redISub(this.y); - return this.curve.point(nx, ny); -}; - -Point.prototype.dbl = function dbl() { - if (this.inf) - return this; - - // 2P = O - var ys1 = this.y.redAdd(this.y); - if (ys1.cmpn(0) === 0) - return this.curve.point(null, null); - - var a = this.curve.a; - - var x2 = this.x.redSqr(); - var dyinv = ys1.redInvm(); - var c = x2.redAdd(x2).redIAdd(x2).redIAdd(a).redMul(dyinv); - - var nx = c.redSqr().redISub(this.x.redAdd(this.x)); - var ny = c.redMul(this.x.redSub(nx)).redISub(this.y); - return this.curve.point(nx, ny); -}; - -Point.prototype.getX = function getX() { - return this.x.fromRed(); -}; - -Point.prototype.getY = function getY() { - return this.y.fromRed(); -}; - -Point.prototype.mul = function mul(k) { - k = new BN(k, 16); - if (this.isInfinity()) - return this; - else if (this._hasDoubles(k)) - return this.curve._fixedNafMul(this, k); - else if (this.curve.endo) - return this.curve._endoWnafMulAdd([ this ], [ k ]); - else - return this.curve._wnafMul(this, k); -}; - -Point.prototype.mulAdd = function mulAdd(k1, p2, k2) { - var points = [ this, p2 ]; - var coeffs = [ k1, k2 ]; - if (this.curve.endo) - return this.curve._endoWnafMulAdd(points, coeffs); - else - return this.curve._wnafMulAdd(1, points, coeffs, 2); -}; - -Point.prototype.jmulAdd = function jmulAdd(k1, p2, k2) { - var points = [ this, p2 ]; - var coeffs = [ k1, k2 ]; - if (this.curve.endo) - return this.curve._endoWnafMulAdd(points, coeffs, true); - else - return this.curve._wnafMulAdd(1, points, coeffs, 2, true); -}; - -Point.prototype.eq = function eq(p) { - return this === p || - this.inf === p.inf && - (this.inf || this.x.cmp(p.x) === 0 && this.y.cmp(p.y) === 0); -}; - -Point.prototype.neg = function neg(_precompute) { - if (this.inf) - return this; - - var res = this.curve.point(this.x, this.y.redNeg()); - if (_precompute && this.precomputed) { - var pre = this.precomputed; - var negate = function(p) { - return p.neg(); - }; - res.precomputed = { - naf: pre.naf && { - wnd: pre.naf.wnd, - points: pre.naf.points.map(negate), - }, - doubles: pre.doubles && { - step: pre.doubles.step, - points: pre.doubles.points.map(negate), - }, - }; - } - return res; -}; - -Point.prototype.toJ = function toJ() { - if (this.inf) - return this.curve.jpoint(null, null, null); - - var res = this.curve.jpoint(this.x, this.y, this.curve.one); - return res; -}; - -function JPoint(curve, x, y, z) { - Base.BasePoint.call(this, curve, 'jacobian'); - if (x === null && y === null && z === null) { - this.x = this.curve.one; - this.y = this.curve.one; - this.z = new BN(0); - } else { - this.x = new BN(x, 16); - this.y = new BN(y, 16); - this.z = new BN(z, 16); - } - if (!this.x.red) - this.x = this.x.toRed(this.curve.red); - if (!this.y.red) - this.y = this.y.toRed(this.curve.red); - if (!this.z.red) - this.z = this.z.toRed(this.curve.red); - - this.zOne = this.z === this.curve.one; -} -inherits(JPoint, Base.BasePoint); - -ShortCurve.prototype.jpoint = function jpoint(x, y, z) { - return new JPoint(this, x, y, z); -}; - -JPoint.prototype.toP = function toP() { - if (this.isInfinity()) - return this.curve.point(null, null); - - var zinv = this.z.redInvm(); - var zinv2 = zinv.redSqr(); - var ax = this.x.redMul(zinv2); - var ay = this.y.redMul(zinv2).redMul(zinv); - - return this.curve.point(ax, ay); -}; - -JPoint.prototype.neg = function neg() { - return this.curve.jpoint(this.x, this.y.redNeg(), this.z); -}; - -JPoint.prototype.add = function add(p) { - // O + P = P - if (this.isInfinity()) - return p; - - // P + O = P - if (p.isInfinity()) - return this; - - // 12M + 4S + 7A - var pz2 = p.z.redSqr(); - var z2 = this.z.redSqr(); - var u1 = this.x.redMul(pz2); - var u2 = p.x.redMul(z2); - var s1 = this.y.redMul(pz2.redMul(p.z)); - var s2 = p.y.redMul(z2.redMul(this.z)); - - var h = u1.redSub(u2); - var r = s1.redSub(s2); - if (h.cmpn(0) === 0) { - if (r.cmpn(0) !== 0) - return this.curve.jpoint(null, null, null); - else - return this.dbl(); - } - - var h2 = h.redSqr(); - var h3 = h2.redMul(h); - var v = u1.redMul(h2); - - var nx = r.redSqr().redIAdd(h3).redISub(v).redISub(v); - var ny = r.redMul(v.redISub(nx)).redISub(s1.redMul(h3)); - var nz = this.z.redMul(p.z).redMul(h); - - return this.curve.jpoint(nx, ny, nz); -}; - -JPoint.prototype.mixedAdd = function mixedAdd(p) { - // O + P = P - if (this.isInfinity()) - return p.toJ(); - - // P + O = P - if (p.isInfinity()) - return this; - - // 8M + 3S + 7A - var z2 = this.z.redSqr(); - var u1 = this.x; - var u2 = p.x.redMul(z2); - var s1 = this.y; - var s2 = p.y.redMul(z2).redMul(this.z); - - var h = u1.redSub(u2); - var r = s1.redSub(s2); - if (h.cmpn(0) === 0) { - if (r.cmpn(0) !== 0) - return this.curve.jpoint(null, null, null); - else - return this.dbl(); - } - - var h2 = h.redSqr(); - var h3 = h2.redMul(h); - var v = u1.redMul(h2); - - var nx = r.redSqr().redIAdd(h3).redISub(v).redISub(v); - var ny = r.redMul(v.redISub(nx)).redISub(s1.redMul(h3)); - var nz = this.z.redMul(h); - - return this.curve.jpoint(nx, ny, nz); -}; - -JPoint.prototype.dblp = function dblp(pow) { - if (pow === 0) - return this; - if (this.isInfinity()) - return this; - if (!pow) - return this.dbl(); - - var i; - if (this.curve.zeroA || this.curve.threeA) { - var r = this; - for (i = 0; i < pow; i++) - r = r.dbl(); - return r; - } - - // 1M + 2S + 1A + N * (4S + 5M + 8A) - // N = 1 => 6M + 6S + 9A - var a = this.curve.a; - var tinv = this.curve.tinv; - - var jx = this.x; - var jy = this.y; - var jz = this.z; - var jz4 = jz.redSqr().redSqr(); - - // Reuse results - var jyd = jy.redAdd(jy); - for (i = 0; i < pow; i++) { - var jx2 = jx.redSqr(); - var jyd2 = jyd.redSqr(); - var jyd4 = jyd2.redSqr(); - var c = jx2.redAdd(jx2).redIAdd(jx2).redIAdd(a.redMul(jz4)); - - var t1 = jx.redMul(jyd2); - var nx = c.redSqr().redISub(t1.redAdd(t1)); - var t2 = t1.redISub(nx); - var dny = c.redMul(t2); - dny = dny.redIAdd(dny).redISub(jyd4); - var nz = jyd.redMul(jz); - if (i + 1 < pow) - jz4 = jz4.redMul(jyd4); - - jx = nx; - jz = nz; - jyd = dny; - } - - return this.curve.jpoint(jx, jyd.redMul(tinv), jz); -}; - -JPoint.prototype.dbl = function dbl() { - if (this.isInfinity()) - return this; - - if (this.curve.zeroA) - return this._zeroDbl(); - else if (this.curve.threeA) - return this._threeDbl(); - else - return this._dbl(); -}; - -JPoint.prototype._zeroDbl = function _zeroDbl() { - var nx; - var ny; - var nz; - // Z = 1 - if (this.zOne) { - // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-0.html - // #doubling-mdbl-2007-bl - // 1M + 5S + 14A - - // XX = X1^2 - var xx = this.x.redSqr(); - // YY = Y1^2 - var yy = this.y.redSqr(); - // YYYY = YY^2 - var yyyy = yy.redSqr(); - // S = 2 * ((X1 + YY)^2 - XX - YYYY) - var s = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy); - s = s.redIAdd(s); - // M = 3 * XX + a; a = 0 - var m = xx.redAdd(xx).redIAdd(xx); - // T = M ^ 2 - 2*S - var t = m.redSqr().redISub(s).redISub(s); - - // 8 * YYYY - var yyyy8 = yyyy.redIAdd(yyyy); - yyyy8 = yyyy8.redIAdd(yyyy8); - yyyy8 = yyyy8.redIAdd(yyyy8); - - // X3 = T - nx = t; - // Y3 = M * (S - T) - 8 * YYYY - ny = m.redMul(s.redISub(t)).redISub(yyyy8); - // Z3 = 2*Y1 - nz = this.y.redAdd(this.y); - } else { - // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-0.html - // #doubling-dbl-2009-l - // 2M + 5S + 13A - - // A = X1^2 - var a = this.x.redSqr(); - // B = Y1^2 - var b = this.y.redSqr(); - // C = B^2 - var c = b.redSqr(); - // D = 2 * ((X1 + B)^2 - A - C) - var d = this.x.redAdd(b).redSqr().redISub(a).redISub(c); - d = d.redIAdd(d); - // E = 3 * A - var e = a.redAdd(a).redIAdd(a); - // F = E^2 - var f = e.redSqr(); - - // 8 * C - var c8 = c.redIAdd(c); - c8 = c8.redIAdd(c8); - c8 = c8.redIAdd(c8); - - // X3 = F - 2 * D - nx = f.redISub(d).redISub(d); - // Y3 = E * (D - X3) - 8 * C - ny = e.redMul(d.redISub(nx)).redISub(c8); - // Z3 = 2 * Y1 * Z1 - nz = this.y.redMul(this.z); - nz = nz.redIAdd(nz); - } - - return this.curve.jpoint(nx, ny, nz); -}; - -JPoint.prototype._threeDbl = function _threeDbl() { - var nx; - var ny; - var nz; - // Z = 1 - if (this.zOne) { - // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-3.html - // #doubling-mdbl-2007-bl - // 1M + 5S + 15A - - // XX = X1^2 - var xx = this.x.redSqr(); - // YY = Y1^2 - var yy = this.y.redSqr(); - // YYYY = YY^2 - var yyyy = yy.redSqr(); - // S = 2 * ((X1 + YY)^2 - XX - YYYY) - var s = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy); - s = s.redIAdd(s); - // M = 3 * XX + a - var m = xx.redAdd(xx).redIAdd(xx).redIAdd(this.curve.a); - // T = M^2 - 2 * S - var t = m.redSqr().redISub(s).redISub(s); - // X3 = T - nx = t; - // Y3 = M * (S - T) - 8 * YYYY - var yyyy8 = yyyy.redIAdd(yyyy); - yyyy8 = yyyy8.redIAdd(yyyy8); - yyyy8 = yyyy8.redIAdd(yyyy8); - ny = m.redMul(s.redISub(t)).redISub(yyyy8); - // Z3 = 2 * Y1 - nz = this.y.redAdd(this.y); - } else { - // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-3.html#doubling-dbl-2001-b - // 3M + 5S - - // delta = Z1^2 - var delta = this.z.redSqr(); - // gamma = Y1^2 - var gamma = this.y.redSqr(); - // beta = X1 * gamma - var beta = this.x.redMul(gamma); - // alpha = 3 * (X1 - delta) * (X1 + delta) - var alpha = this.x.redSub(delta).redMul(this.x.redAdd(delta)); - alpha = alpha.redAdd(alpha).redIAdd(alpha); - // X3 = alpha^2 - 8 * beta - var beta4 = beta.redIAdd(beta); - beta4 = beta4.redIAdd(beta4); - var beta8 = beta4.redAdd(beta4); - nx = alpha.redSqr().redISub(beta8); - // Z3 = (Y1 + Z1)^2 - gamma - delta - nz = this.y.redAdd(this.z).redSqr().redISub(gamma).redISub(delta); - // Y3 = alpha * (4 * beta - X3) - 8 * gamma^2 - var ggamma8 = gamma.redSqr(); - ggamma8 = ggamma8.redIAdd(ggamma8); - ggamma8 = ggamma8.redIAdd(ggamma8); - ggamma8 = ggamma8.redIAdd(ggamma8); - ny = alpha.redMul(beta4.redISub(nx)).redISub(ggamma8); - } - - return this.curve.jpoint(nx, ny, nz); -}; - -JPoint.prototype._dbl = function _dbl() { - var a = this.curve.a; - - // 4M + 6S + 10A - var jx = this.x; - var jy = this.y; - var jz = this.z; - var jz4 = jz.redSqr().redSqr(); - - var jx2 = jx.redSqr(); - var jy2 = jy.redSqr(); - - var c = jx2.redAdd(jx2).redIAdd(jx2).redIAdd(a.redMul(jz4)); - - var jxd4 = jx.redAdd(jx); - jxd4 = jxd4.redIAdd(jxd4); - var t1 = jxd4.redMul(jy2); - var nx = c.redSqr().redISub(t1.redAdd(t1)); - var t2 = t1.redISub(nx); - - var jyd8 = jy2.redSqr(); - jyd8 = jyd8.redIAdd(jyd8); - jyd8 = jyd8.redIAdd(jyd8); - jyd8 = jyd8.redIAdd(jyd8); - var ny = c.redMul(t2).redISub(jyd8); - var nz = jy.redAdd(jy).redMul(jz); - - return this.curve.jpoint(nx, ny, nz); -}; - -JPoint.prototype.trpl = function trpl() { - if (!this.curve.zeroA) - return this.dbl().add(this); - - // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-0.html#tripling-tpl-2007-bl - // 5M + 10S + ... - - // XX = X1^2 - var xx = this.x.redSqr(); - // YY = Y1^2 - var yy = this.y.redSqr(); - // ZZ = Z1^2 - var zz = this.z.redSqr(); - // YYYY = YY^2 - var yyyy = yy.redSqr(); - // M = 3 * XX + a * ZZ2; a = 0 - var m = xx.redAdd(xx).redIAdd(xx); - // MM = M^2 - var mm = m.redSqr(); - // E = 6 * ((X1 + YY)^2 - XX - YYYY) - MM - var e = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy); - e = e.redIAdd(e); - e = e.redAdd(e).redIAdd(e); - e = e.redISub(mm); - // EE = E^2 - var ee = e.redSqr(); - // T = 16*YYYY - var t = yyyy.redIAdd(yyyy); - t = t.redIAdd(t); - t = t.redIAdd(t); - t = t.redIAdd(t); - // U = (M + E)^2 - MM - EE - T - var u = m.redIAdd(e).redSqr().redISub(mm).redISub(ee).redISub(t); - // X3 = 4 * (X1 * EE - 4 * YY * U) - var yyu4 = yy.redMul(u); - yyu4 = yyu4.redIAdd(yyu4); - yyu4 = yyu4.redIAdd(yyu4); - var nx = this.x.redMul(ee).redISub(yyu4); - nx = nx.redIAdd(nx); - nx = nx.redIAdd(nx); - // Y3 = 8 * Y1 * (U * (T - U) - E * EE) - var ny = this.y.redMul(u.redMul(t.redISub(u)).redISub(e.redMul(ee))); - ny = ny.redIAdd(ny); - ny = ny.redIAdd(ny); - ny = ny.redIAdd(ny); - // Z3 = (Z1 + E)^2 - ZZ - EE - var nz = this.z.redAdd(e).redSqr().redISub(zz).redISub(ee); - - return this.curve.jpoint(nx, ny, nz); -}; - -JPoint.prototype.mul = function mul(k, kbase) { - k = new BN(k, kbase); - - return this.curve._wnafMul(this, k); -}; - -JPoint.prototype.eq = function eq(p) { - if (p.type === 'affine') - return this.eq(p.toJ()); - - if (this === p) - return true; - - // x1 * z2^2 == x2 * z1^2 - var z2 = this.z.redSqr(); - var pz2 = p.z.redSqr(); - if (this.x.redMul(pz2).redISub(p.x.redMul(z2)).cmpn(0) !== 0) - return false; - - // y1 * z2^3 == y2 * z1^3 - var z3 = z2.redMul(this.z); - var pz3 = pz2.redMul(p.z); - return this.y.redMul(pz3).redISub(p.y.redMul(z3)).cmpn(0) === 0; -}; - -JPoint.prototype.eqXToP = function eqXToP(x) { - var zs = this.z.redSqr(); - var rx = x.toRed(this.curve.red).redMul(zs); - if (this.x.cmp(rx) === 0) - return true; - - var xc = x.clone(); - var t = this.curve.redN.redMul(zs); - for (;;) { - xc.iadd(this.curve.n); - if (xc.cmp(this.curve.p) >= 0) - return false; - - rx.redIAdd(t); - if (this.x.cmp(rx) === 0) - return true; - } -}; - -JPoint.prototype.inspect = function inspect() { - if (this.isInfinity()) - return ''; - return ''; -}; - -JPoint.prototype.isInfinity = function isInfinity() { - // XXX This code assumes that zero is always zero in red - return this.z.cmpn(0) === 0; -}; - - -/***/ }), - -/***/ 30997: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -var curves = exports; - -var hash = __nccwpck_require__(27477); -var curve = __nccwpck_require__(57773); -var utils = __nccwpck_require__(5028); - -var assert = utils.assert; - -function PresetCurve(options) { - if (options.type === 'short') - this.curve = new curve.short(options); - else if (options.type === 'edwards') - this.curve = new curve.edwards(options); - else - this.curve = new curve.mont(options); - this.g = this.curve.g; - this.n = this.curve.n; - this.hash = options.hash; - - assert(this.g.validate(), 'Invalid curve'); - assert(this.g.mul(this.n).isInfinity(), 'Invalid curve, G*N != O'); -} -curves.PresetCurve = PresetCurve; - -function defineCurve(name, options) { - Object.defineProperty(curves, name, { - configurable: true, - enumerable: true, - get: function() { - var curve = new PresetCurve(options); - Object.defineProperty(curves, name, { - configurable: true, - enumerable: true, - value: curve, - }); - return curve; - }, - }); -} - -defineCurve('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: hash.sha256, - gRed: false, - g: [ - '188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012', - '07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811', - ], -}); - -defineCurve('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: hash.sha256, - gRed: false, - g: [ - 'b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21', - 'bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34', - ], -}); - -defineCurve('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: hash.sha256, - gRed: false, - g: [ - '6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296', - '4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5', - ], -}); - -defineCurve('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: hash.sha384, - gRed: false, - 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', - ], -}); - -defineCurve('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: hash.sha512, - gRed: false, - 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', - ], -}); - -defineCurve('curve25519', { - type: 'mont', - prime: 'p25519', - p: '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed', - a: '76d06', - b: '1', - n: '1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed', - hash: hash.sha256, - gRed: false, - g: [ - '9', - ], -}); - -defineCurve('ed25519', { - type: 'edwards', - prime: 'p25519', - p: '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed', - a: '-1', - c: '1', - // -121665 * (121666^(-1)) (mod P) - d: '52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3', - n: '1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed', - hash: hash.sha256, - gRed: false, - g: [ - '216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a', - - // 4/5 - '6666666666666666666666666666666666666666666666666666666666666658', - ], -}); - -var pre; -try { - pre = __nccwpck_require__(82252); -} catch (e) { - pre = undefined; -} - -defineCurve('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: hash.sha256, - - // Precomputed endomorphism - beta: '7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee', - lambda: '5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72', - basis: [ - { - a: '3086d221a7d46bcde86c90e49284eb15', - b: '-e4437ed6010e88286f547fa90abfe4c3', - }, - { - a: '114ca50f7a8e2f3f657c1108d9d44cfd8', - b: '3086d221a7d46bcde86c90e49284eb15', - }, - ], - - gRed: false, - g: [ - '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798', - '483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8', - pre, - ], -}); - - -/***/ }), - -/***/ 75070: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var BN = __nccwpck_require__(7967); -var HmacDRBG = __nccwpck_require__(63768); -var utils = __nccwpck_require__(5028); -var curves = __nccwpck_require__(30997); -var rand = __nccwpck_require__(49586); -var assert = utils.assert; - -var KeyPair = __nccwpck_require__(53993); -var Signature = __nccwpck_require__(24816); - -function EC(options) { - if (!(this instanceof EC)) - return new EC(options); - - // Shortcut `elliptic.ec(curve-name)` - if (typeof options === 'string') { - assert(Object.prototype.hasOwnProperty.call(curves, options), - 'Unknown curve ' + options); - - options = curves[options]; - } - - // Shortcut for `elliptic.ec(elliptic.curves.curveName)` - if (options instanceof curves.PresetCurve) - options = { curve: options }; - - this.curve = options.curve.curve; - this.n = this.curve.n; - this.nh = this.n.ushrn(1); - this.g = this.curve.g; - - // Point on curve - this.g = options.curve.g; - this.g.precompute(options.curve.n.bitLength() + 1); - - // Hash for function for DRBG - this.hash = options.hash || options.curve.hash; -} -module.exports = EC; - -EC.prototype.keyPair = function keyPair(options) { - return new KeyPair(this, options); -}; - -EC.prototype.keyFromPrivate = function keyFromPrivate(priv, enc) { - return KeyPair.fromPrivate(this, priv, enc); -}; - -EC.prototype.keyFromPublic = function keyFromPublic(pub, enc) { - return KeyPair.fromPublic(this, pub, enc); -}; - -EC.prototype.genKeyPair = function genKeyPair(options) { - if (!options) - options = {}; - - // Instantiate Hmac_DRBG - var drbg = new HmacDRBG({ - hash: this.hash, - pers: options.pers, - persEnc: options.persEnc || 'utf8', - entropy: options.entropy || rand(this.hash.hmacStrength), - entropyEnc: options.entropy && options.entropyEnc || 'utf8', - nonce: this.n.toArray(), - }); - - var bytes = this.n.byteLength(); - var ns2 = this.n.sub(new BN(2)); - for (;;) { - var priv = new BN(drbg.generate(bytes)); - if (priv.cmp(ns2) > 0) - continue; - - priv.iaddn(1); - return this.keyFromPrivate(priv); - } -}; - -EC.prototype._truncateToN = function _truncateToN(msg, truncOnly) { - var delta = msg.byteLength() * 8 - this.n.bitLength(); - if (delta > 0) - msg = msg.ushrn(delta); - if (!truncOnly && msg.cmp(this.n) >= 0) - return msg.sub(this.n); - else - return msg; -}; - -EC.prototype.sign = function sign(msg, key, enc, options) { - if (typeof enc === 'object') { - options = enc; - enc = null; - } - if (!options) - options = {}; - - key = this.keyFromPrivate(key, enc); - msg = this._truncateToN(new BN(msg, 16)); - - // Zero-extend key to provide enough entropy - var bytes = this.n.byteLength(); - var bkey = key.getPrivate().toArray('be', bytes); - - // Zero-extend nonce to have the same byte size as N - var nonce = msg.toArray('be', bytes); - - // Instantiate Hmac_DRBG - var drbg = new HmacDRBG({ - hash: this.hash, - entropy: bkey, - nonce: nonce, - pers: options.pers, - persEnc: options.persEnc || 'utf8', - }); - - // Number of bytes to generate - var ns1 = this.n.sub(new BN(1)); - - for (var iter = 0; ; iter++) { - var k = options.k ? - options.k(iter) : - new BN(drbg.generate(this.n.byteLength())); - k = this._truncateToN(k, true); - if (k.cmpn(1) <= 0 || k.cmp(ns1) >= 0) - continue; - - var kp = this.g.mul(k); - if (kp.isInfinity()) - continue; - - var kpX = kp.getX(); - var r = kpX.umod(this.n); - if (r.cmpn(0) === 0) - continue; - - var s = k.invm(this.n).mul(r.mul(key.getPrivate()).iadd(msg)); - s = s.umod(this.n); - if (s.cmpn(0) === 0) - continue; - - var recoveryParam = (kp.getY().isOdd() ? 1 : 0) | - (kpX.cmp(r) !== 0 ? 2 : 0); - - // Use complement of `s`, if it is > `n / 2` - if (options.canonical && s.cmp(this.nh) > 0) { - s = this.n.sub(s); - recoveryParam ^= 1; - } - - return new Signature({ r: r, s: s, recoveryParam: recoveryParam }); - } -}; - -EC.prototype.verify = function verify(msg, signature, key, enc) { - msg = this._truncateToN(new BN(msg, 16)); - key = this.keyFromPublic(key, enc); - signature = new Signature(signature, 'hex'); - - // Perform primitive values validation - var r = signature.r; - var s = signature.s; - if (r.cmpn(1) < 0 || r.cmp(this.n) >= 0) - return false; - if (s.cmpn(1) < 0 || s.cmp(this.n) >= 0) - return false; - - // Validate signature - var sinv = s.invm(this.n); - var u1 = sinv.mul(msg).umod(this.n); - var u2 = sinv.mul(r).umod(this.n); - var p; - - if (!this.curve._maxwellTrick) { - p = this.g.mulAdd(u1, key.getPublic(), u2); - if (p.isInfinity()) - return false; - - return p.getX().umod(this.n).cmp(r) === 0; - } - - // NOTE: Greg Maxwell's trick, inspired by: - // https://git.io/vad3K - - p = this.g.jmulAdd(u1, key.getPublic(), u2); - if (p.isInfinity()) - return false; - - // Compare `p.x` of Jacobian point with `r`, - // this will do `p.x == r * p.z^2` instead of multiplying `p.x` by the - // inverse of `p.z^2` - return p.eqXToP(r); -}; - -EC.prototype.recoverPubKey = function(msg, signature, j, enc) { - assert((3 & j) === j, 'The recovery param is more than two bits'); - signature = new Signature(signature, enc); - - var n = this.n; - var e = new BN(msg); - var r = signature.r; - var s = signature.s; - - // A set LSB signifies that the y-coordinate is odd - var isYOdd = j & 1; - var isSecondKey = j >> 1; - if (r.cmp(this.curve.p.umod(this.curve.n)) >= 0 && isSecondKey) - throw new Error('Unable to find sencond key candinate'); - - // 1.1. Let x = r + jn. - if (isSecondKey) - r = this.curve.pointFromX(r.add(this.curve.n), isYOdd); - else - r = this.curve.pointFromX(r, isYOdd); - - var rInv = signature.r.invm(n); - var s1 = n.sub(e).mul(rInv).umod(n); - var s2 = s.mul(rInv).umod(n); - - // 1.6.1 Compute Q = r^-1 (sR - eG) - // Q = r^-1 (sR + -eG) - return this.g.mulAdd(s1, r, s2); -}; - -EC.prototype.getKeyRecoveryParam = function(e, signature, Q, enc) { - signature = new Signature(signature, enc); - if (signature.recoveryParam !== null) - return signature.recoveryParam; - - for (var i = 0; i < 4; i++) { - var Qprime; - try { - Qprime = this.recoverPubKey(e, signature, i); - } catch (e) { - continue; - } - - if (Qprime.eq(Q)) - return i; - } - throw new Error('Unable to find valid recovery factor'); -}; - - -/***/ }), - -/***/ 53993: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var BN = __nccwpck_require__(7967); -var utils = __nccwpck_require__(5028); -var assert = utils.assert; - -function KeyPair(ec, options) { - this.ec = ec; - this.priv = null; - this.pub = null; - - // KeyPair(ec, { priv: ..., pub: ... }) - if (options.priv) - this._importPrivate(options.priv, options.privEnc); - if (options.pub) - this._importPublic(options.pub, options.pubEnc); -} -module.exports = KeyPair; - -KeyPair.fromPublic = function fromPublic(ec, pub, enc) { - if (pub instanceof KeyPair) - return pub; - - return new KeyPair(ec, { - pub: pub, - pubEnc: enc, - }); -}; - -KeyPair.fromPrivate = function fromPrivate(ec, priv, enc) { - if (priv instanceof KeyPair) - return priv; - - return new KeyPair(ec, { - priv: priv, - privEnc: enc, - }); -}; - -KeyPair.prototype.validate = function validate() { - var pub = this.getPublic(); - - if (pub.isInfinity()) - return { result: false, reason: 'Invalid public key' }; - if (!pub.validate()) - return { result: false, reason: 'Public key is not a point' }; - if (!pub.mul(this.ec.curve.n).isInfinity()) - return { result: false, reason: 'Public key * N != O' }; - - return { result: true, reason: null }; -}; - -KeyPair.prototype.getPublic = function getPublic(compact, enc) { - // compact is optional argument - if (typeof compact === 'string') { - enc = compact; - compact = null; - } - - if (!this.pub) - this.pub = this.ec.g.mul(this.priv); - - if (!enc) - return this.pub; - - return this.pub.encode(enc, compact); -}; - -KeyPair.prototype.getPrivate = function getPrivate(enc) { - if (enc === 'hex') - return this.priv.toString(16, 2); - else - return this.priv; -}; - -KeyPair.prototype._importPrivate = function _importPrivate(key, enc) { - this.priv = new BN(key, enc || 16); - - // Ensure that the priv won't be bigger than n, otherwise we may fail - // in fixed multiplication method - this.priv = this.priv.umod(this.ec.curve.n); -}; - -KeyPair.prototype._importPublic = function _importPublic(key, enc) { - if (key.x || key.y) { - // Montgomery points only have an `x` coordinate. - // Weierstrass/Edwards points on the other hand have both `x` and - // `y` coordinates. - if (this.ec.curve.type === 'mont') { - assert(key.x, 'Need x coordinate'); - } else if (this.ec.curve.type === 'short' || - this.ec.curve.type === 'edwards') { - assert(key.x && key.y, 'Need both x and y coordinate'); - } - this.pub = this.ec.curve.point(key.x, key.y); - return; - } - this.pub = this.ec.curve.decodePoint(key, enc); -}; - -// ECDH -KeyPair.prototype.derive = function derive(pub) { - if(!pub.validate()) { - assert(pub.validate(), 'public point not validated'); - } - return pub.mul(this.priv).getX(); -}; - -// ECDSA -KeyPair.prototype.sign = function sign(msg, enc, options) { - return this.ec.sign(msg, this, enc, options); -}; - -KeyPair.prototype.verify = function verify(msg, signature) { - return this.ec.verify(msg, signature, this); -}; - -KeyPair.prototype.inspect = function inspect() { - return ''; -}; - - -/***/ }), - -/***/ 24816: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var BN = __nccwpck_require__(7967); - -var utils = __nccwpck_require__(5028); -var assert = utils.assert; - -function Signature(options, enc) { - if (options instanceof Signature) - return options; - - if (this._importDER(options, enc)) - return; - - assert(options.r && options.s, 'Signature without r or s'); - this.r = new BN(options.r, 16); - this.s = new BN(options.s, 16); - if (options.recoveryParam === undefined) - this.recoveryParam = null; - else - this.recoveryParam = options.recoveryParam; -} -module.exports = Signature; - -function Position() { - this.place = 0; -} - -function getLength(buf, p) { - var initial = buf[p.place++]; - if (!(initial & 0x80)) { - return initial; - } - var octetLen = initial & 0xf; - - // Indefinite length or overflow - if (octetLen === 0 || octetLen > 4) { - return false; - } - - var val = 0; - for (var i = 0, off = p.place; i < octetLen; i++, off++) { - val <<= 8; - val |= buf[off]; - val >>>= 0; - } - - // Leading zeroes - if (val <= 0x7f) { - return false; - } - - p.place = off; - return val; -} - -function rmPadding(buf) { - var i = 0; - var len = buf.length - 1; - while (!buf[i] && !(buf[i + 1] & 0x80) && i < len) { - i++; - } - if (i === 0) { - return buf; - } - return buf.slice(i); -} - -Signature.prototype._importDER = function _importDER(data, enc) { - data = utils.toArray(data, enc); - var p = new Position(); - if (data[p.place++] !== 0x30) { - return false; - } - var len = getLength(data, p); - if (len === false) { - return false; - } - if ((len + p.place) !== data.length) { - return false; - } - if (data[p.place++] !== 0x02) { - return false; - } - var rlen = getLength(data, p); - if (rlen === false) { - return false; - } - var r = data.slice(p.place, rlen + p.place); - p.place += rlen; - if (data[p.place++] !== 0x02) { - return false; - } - var slen = getLength(data, p); - if (slen === false) { - return false; - } - if (data.length !== slen + p.place) { - return false; - } - var s = data.slice(p.place, slen + p.place); - if (r[0] === 0) { - if (r[1] & 0x80) { - r = r.slice(1); - } else { - // Leading zeroes - return false; - } - } - if (s[0] === 0) { - if (s[1] & 0x80) { - s = s.slice(1); - } else { - // Leading zeroes - return false; - } - } - - this.r = new BN(r); - this.s = new BN(s); - this.recoveryParam = null; - - return true; -}; - -function constructLength(arr, len) { - if (len < 0x80) { - arr.push(len); - return; - } - var octets = 1 + (Math.log(len) / Math.LN2 >>> 3); - arr.push(octets | 0x80); - while (--octets) { - arr.push((len >>> (octets << 3)) & 0xff); - } - arr.push(len); -} - -Signature.prototype.toDER = function toDER(enc) { - var r = this.r.toArray(); - var s = this.s.toArray(); - - // Pad values - if (r[0] & 0x80) - r = [ 0 ].concat(r); - // Pad values - if (s[0] & 0x80) - s = [ 0 ].concat(s); - - r = rmPadding(r); - s = rmPadding(s); - - while (!s[0] && !(s[1] & 0x80)) { - s = s.slice(1); - } - var arr = [ 0x02 ]; - constructLength(arr, r.length); - arr = arr.concat(r); - arr.push(0x02); - constructLength(arr, s.length); - var backHalf = arr.concat(s); - var res = [ 0x30 ]; - constructLength(res, backHalf.length); - res = res.concat(backHalf); - return utils.encode(res, enc); -}; - - -/***/ }), - -/***/ 93225: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var hash = __nccwpck_require__(27477); -var curves = __nccwpck_require__(30997); -var utils = __nccwpck_require__(5028); -var assert = utils.assert; -var parseBytes = utils.parseBytes; -var KeyPair = __nccwpck_require__(83898); -var Signature = __nccwpck_require__(52303); - -function EDDSA(curve) { - assert(curve === 'ed25519', 'only tested with ed25519 so far'); - - if (!(this instanceof EDDSA)) - return new EDDSA(curve); - - curve = curves[curve].curve; - this.curve = curve; - this.g = curve.g; - this.g.precompute(curve.n.bitLength() + 1); - - this.pointClass = curve.point().constructor; - this.encodingLength = Math.ceil(curve.n.bitLength() / 8); - this.hash = hash.sha512; -} - -module.exports = EDDSA; - -/** -* @param {Array|String} message - message bytes -* @param {Array|String|KeyPair} secret - secret bytes or a keypair -* @returns {Signature} - signature -*/ -EDDSA.prototype.sign = function sign(message, secret) { - message = parseBytes(message); - var key = this.keyFromSecret(secret); - var r = this.hashInt(key.messagePrefix(), message); - var R = this.g.mul(r); - var Rencoded = this.encodePoint(R); - var s_ = this.hashInt(Rencoded, key.pubBytes(), message) - .mul(key.priv()); - var S = r.add(s_).umod(this.curve.n); - return this.makeSignature({ R: R, S: S, Rencoded: Rencoded }); -}; - -/** -* @param {Array} message - message bytes -* @param {Array|String|Signature} sig - sig bytes -* @param {Array|String|Point|KeyPair} pub - public key -* @returns {Boolean} - true if public key matches sig of message -*/ -EDDSA.prototype.verify = function verify(message, sig, pub) { - message = parseBytes(message); - sig = this.makeSignature(sig); - var key = this.keyFromPublic(pub); - var h = this.hashInt(sig.Rencoded(), key.pubBytes(), message); - var SG = this.g.mul(sig.S()); - var RplusAh = sig.R().add(key.pub().mul(h)); - return RplusAh.eq(SG); -}; - -EDDSA.prototype.hashInt = function hashInt() { - var hash = this.hash(); - for (var i = 0; i < arguments.length; i++) - hash.update(arguments[i]); - return utils.intFromLE(hash.digest()).umod(this.curve.n); -}; - -EDDSA.prototype.keyFromPublic = function keyFromPublic(pub) { - return KeyPair.fromPublic(this, pub); -}; - -EDDSA.prototype.keyFromSecret = function keyFromSecret(secret) { - return KeyPair.fromSecret(this, secret); -}; - -EDDSA.prototype.makeSignature = function makeSignature(sig) { - if (sig instanceof Signature) - return sig; - return new Signature(this, sig); -}; - -/** -* * https://tools.ietf.org/html/draft-josefsson-eddsa-ed25519-03#section-5.2 -* -* EDDSA defines methods for encoding and decoding points and integers. These are -* helper convenience methods, that pass along to utility functions implied -* parameters. -* -*/ -EDDSA.prototype.encodePoint = function encodePoint(point) { - var enc = point.getY().toArray('le', this.encodingLength); - enc[this.encodingLength - 1] |= point.getX().isOdd() ? 0x80 : 0; - return enc; -}; - -EDDSA.prototype.decodePoint = function decodePoint(bytes) { - bytes = utils.parseBytes(bytes); - - var lastIx = bytes.length - 1; - var normed = bytes.slice(0, lastIx).concat(bytes[lastIx] & ~0x80); - var xIsOdd = (bytes[lastIx] & 0x80) !== 0; - - var y = utils.intFromLE(normed); - return this.curve.pointFromY(y, xIsOdd); -}; - -EDDSA.prototype.encodeInt = function encodeInt(num) { - return num.toArray('le', this.encodingLength); -}; - -EDDSA.prototype.decodeInt = function decodeInt(bytes) { - return utils.intFromLE(bytes); -}; - -EDDSA.prototype.isPoint = function isPoint(val) { - return val instanceof this.pointClass; -}; - - -/***/ }), - -/***/ 83898: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var utils = __nccwpck_require__(5028); -var assert = utils.assert; -var parseBytes = utils.parseBytes; -var cachedProperty = utils.cachedProperty; - -/** -* @param {EDDSA} eddsa - instance -* @param {Object} params - public/private key parameters -* -* @param {Array} [params.secret] - secret seed bytes -* @param {Point} [params.pub] - public key point (aka `A` in eddsa terms) -* @param {Array} [params.pub] - public key point encoded as bytes -* -*/ -function KeyPair(eddsa, params) { - this.eddsa = eddsa; - this._secret = parseBytes(params.secret); - if (eddsa.isPoint(params.pub)) - this._pub = params.pub; - else - this._pubBytes = parseBytes(params.pub); -} - -KeyPair.fromPublic = function fromPublic(eddsa, pub) { - if (pub instanceof KeyPair) - return pub; - return new KeyPair(eddsa, { pub: pub }); -}; - -KeyPair.fromSecret = function fromSecret(eddsa, secret) { - if (secret instanceof KeyPair) - return secret; - return new KeyPair(eddsa, { secret: secret }); -}; - -KeyPair.prototype.secret = function secret() { - return this._secret; -}; - -cachedProperty(KeyPair, 'pubBytes', function pubBytes() { - return this.eddsa.encodePoint(this.pub()); -}); - -cachedProperty(KeyPair, 'pub', function pub() { - if (this._pubBytes) - return this.eddsa.decodePoint(this._pubBytes); - return this.eddsa.g.mul(this.priv()); -}); - -cachedProperty(KeyPair, 'privBytes', function privBytes() { - var eddsa = this.eddsa; - var hash = this.hash(); - var lastIx = eddsa.encodingLength - 1; - - var a = hash.slice(0, eddsa.encodingLength); - a[0] &= 248; - a[lastIx] &= 127; - a[lastIx] |= 64; - - return a; -}); - -cachedProperty(KeyPair, 'priv', function priv() { - return this.eddsa.decodeInt(this.privBytes()); -}); - -cachedProperty(KeyPair, 'hash', function hash() { - return this.eddsa.hash().update(this.secret()).digest(); -}); - -cachedProperty(KeyPair, 'messagePrefix', function messagePrefix() { - return this.hash().slice(this.eddsa.encodingLength); -}); - -KeyPair.prototype.sign = function sign(message) { - assert(this._secret, 'KeyPair can only verify'); - return this.eddsa.sign(message, this); -}; - -KeyPair.prototype.verify = function verify(message, sig) { - return this.eddsa.verify(message, sig, this); -}; - -KeyPair.prototype.getSecret = function getSecret(enc) { - assert(this._secret, 'KeyPair is public only'); - return utils.encode(this.secret(), enc); -}; - -KeyPair.prototype.getPublic = function getPublic(enc) { - return utils.encode(this.pubBytes(), enc); -}; - -module.exports = KeyPair; - - -/***/ }), - -/***/ 52303: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var BN = __nccwpck_require__(7967); -var utils = __nccwpck_require__(5028); -var assert = utils.assert; -var cachedProperty = utils.cachedProperty; -var parseBytes = utils.parseBytes; - -/** -* @param {EDDSA} eddsa - eddsa instance -* @param {Array|Object} sig - -* @param {Array|Point} [sig.R] - R point as Point or bytes -* @param {Array|bn} [sig.S] - S scalar as bn or bytes -* @param {Array} [sig.Rencoded] - R point encoded -* @param {Array} [sig.Sencoded] - S scalar encoded -*/ -function Signature(eddsa, sig) { - this.eddsa = eddsa; - - if (typeof sig !== 'object') - sig = parseBytes(sig); - - if (Array.isArray(sig)) { - sig = { - R: sig.slice(0, eddsa.encodingLength), - S: sig.slice(eddsa.encodingLength), - }; - } - - assert(sig.R && sig.S, 'Signature without R or S'); - - if (eddsa.isPoint(sig.R)) - this._R = sig.R; - if (sig.S instanceof BN) - this._S = sig.S; - - this._Rencoded = Array.isArray(sig.R) ? sig.R : sig.Rencoded; - this._Sencoded = Array.isArray(sig.S) ? sig.S : sig.Sencoded; -} - -cachedProperty(Signature, 'S', function S() { - return this.eddsa.decodeInt(this.Sencoded()); -}); - -cachedProperty(Signature, 'R', function R() { - return this.eddsa.decodePoint(this.Rencoded()); -}); - -cachedProperty(Signature, 'Rencoded', function Rencoded() { - return this.eddsa.encodePoint(this.R()); -}); - -cachedProperty(Signature, 'Sencoded', function Sencoded() { - return this.eddsa.encodeInt(this.S()); -}); - -Signature.prototype.toBytes = function toBytes() { - return this.Rencoded().concat(this.Sencoded()); -}; - -Signature.prototype.toHex = function toHex() { - return utils.encode(this.toBytes(), 'hex').toUpperCase(); -}; - -module.exports = Signature; - - -/***/ }), - -/***/ 82252: -/***/ ((module) => { - -module.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', - ], - ], - }, -}; - - -/***/ }), - -/***/ 5028: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -var utils = exports; -var BN = __nccwpck_require__(7967); -var minAssert = __nccwpck_require__(63798); -var minUtils = __nccwpck_require__(88660); - -utils.assert = minAssert; -utils.toArray = minUtils.toArray; -utils.zero2 = minUtils.zero2; -utils.toHex = minUtils.toHex; -utils.encode = minUtils.encode; - -// Represent num in a w-NAF form -function getNAF(num, w, bits) { - var naf = new Array(Math.max(num.bitLength(), bits) + 1); - naf.fill(0); - - var ws = 1 << (w + 1); - var k = num.clone(); - - for (var i = 0; i < naf.length; i++) { - var z; - var mod = k.andln(ws - 1); - if (k.isOdd()) { - if (mod > (ws >> 1) - 1) - z = (ws >> 1) - mod; - else - z = mod; - k.isubn(z); - } else { - z = 0; - } - - naf[i] = z; - k.iushrn(1); - } - - return naf; -} -utils.getNAF = getNAF; - -// Represent k1, k2 in a Joint Sparse Form -function getJSF(k1, k2) { - var jsf = [ - [], - [], - ]; - - k1 = k1.clone(); - k2 = k2.clone(); - var d1 = 0; - var d2 = 0; - var m8; - while (k1.cmpn(-d1) > 0 || k2.cmpn(-d2) > 0) { - // First phase - var m14 = (k1.andln(3) + d1) & 3; - var m24 = (k2.andln(3) + d2) & 3; - if (m14 === 3) - m14 = -1; - if (m24 === 3) - m24 = -1; - var u1; - if ((m14 & 1) === 0) { - u1 = 0; - } else { - m8 = (k1.andln(7) + d1) & 7; - if ((m8 === 3 || m8 === 5) && m24 === 2) - u1 = -m14; - else - u1 = m14; - } - jsf[0].push(u1); - - var u2; - if ((m24 & 1) === 0) { - u2 = 0; - } else { - m8 = (k2.andln(7) + d2) & 7; - if ((m8 === 3 || m8 === 5) && m14 === 2) - u2 = -m24; - else - u2 = m24; - } - jsf[1].push(u2); - - // Second phase - if (2 * d1 === u1 + 1) - d1 = 1 - d1; - if (2 * d2 === u2 + 1) - d2 = 1 - d2; - k1.iushrn(1); - k2.iushrn(1); - } - - return jsf; -} -utils.getJSF = getJSF; - -function cachedProperty(obj, name, computer) { - var key = '_' + name; - obj.prototype[name] = function cachedProperty() { - return this[key] !== undefined ? this[key] : - this[key] = computer.call(this); - }; -} -utils.cachedProperty = cachedProperty; - -function parseBytes(bytes) { - return typeof bytes === 'string' ? utils.toArray(bytes, 'hex') : - bytes; -} -utils.parseBytes = parseBytes; - -function intFromLE(bytes) { - return new BN(bytes, 'hex', 'le'); -} -utils.intFromLE = intFromLE; - - - -/***/ }), - -/***/ 7967: -/***/ (function(module, __unused_webpack_exports, __nccwpck_require__) { - -/* module decorator */ module = __nccwpck_require__.nmd(module); -(function (module, exports) { - 'use strict'; - - // Utils - function assert (val, msg) { - if (!val) throw new Error(msg || 'Assertion failed'); - } - - // Could use `inherits` module, but don't want to move from single file - // architecture yet. - function inherits (ctor, superCtor) { - ctor.super_ = superCtor; - var TempCtor = function () {}; - TempCtor.prototype = superCtor.prototype; - ctor.prototype = new TempCtor(); - ctor.prototype.constructor = ctor; - } - - // BN - - function BN (number, base, endian) { - if (BN.isBN(number)) { - return number; - } - - this.negative = 0; - this.words = null; - this.length = 0; - - // Reduction context - this.red = null; - - if (number !== null) { - if (base === 'le' || base === 'be') { - endian = base; - base = 10; - } - - this._init(number || 0, base || 10, endian || 'be'); - } - } - if (typeof module === 'object') { - module.exports = BN; - } else { - exports.BN = BN; - } - - BN.BN = BN; - BN.wordSize = 26; - - var Buffer; - try { - if (typeof window !== 'undefined' && typeof window.Buffer !== 'undefined') { - Buffer = window.Buffer; - } else { - Buffer = (__nccwpck_require__(20181).Buffer); - } - } catch (e) { - } - - BN.isBN = function isBN (num) { - if (num instanceof BN) { - return true; - } - - return num !== null && typeof num === 'object' && - num.constructor.wordSize === BN.wordSize && Array.isArray(num.words); - }; - - BN.max = function max (left, right) { - if (left.cmp(right) > 0) return left; - return right; - }; - - BN.min = function min (left, right) { - if (left.cmp(right) < 0) return left; - return right; - }; - - BN.prototype._init = function init (number, base, endian) { - if (typeof number === 'number') { - return this._initNumber(number, base, endian); - } - - if (typeof number === 'object') { - return this._initArray(number, base, endian); - } - - if (base === 'hex') { - base = 16; - } - assert(base === (base | 0) && base >= 2 && base <= 36); - - number = number.toString().replace(/\s+/g, ''); - var start = 0; - if (number[0] === '-') { - start++; - this.negative = 1; - } - - if (start < number.length) { - if (base === 16) { - this._parseHex(number, start, endian); - } else { - this._parseBase(number, base, start); - if (endian === 'le') { - this._initArray(this.toArray(), base, endian); - } - } - } - }; - - BN.prototype._initNumber = function _initNumber (number, base, endian) { - if (number < 0) { - this.negative = 1; - number = -number; - } - if (number < 0x4000000) { - this.words = [ number & 0x3ffffff ]; - this.length = 1; - } else if (number < 0x10000000000000) { - this.words = [ - number & 0x3ffffff, - (number / 0x4000000) & 0x3ffffff - ]; - this.length = 2; - } else { - assert(number < 0x20000000000000); // 2 ^ 53 (unsafe) - this.words = [ - number & 0x3ffffff, - (number / 0x4000000) & 0x3ffffff, - 1 - ]; - this.length = 3; - } - - if (endian !== 'le') return; - - // Reverse the bytes - this._initArray(this.toArray(), base, endian); - }; - - BN.prototype._initArray = function _initArray (number, base, endian) { - // Perhaps a Uint8Array - assert(typeof number.length === 'number'); - if (number.length <= 0) { - this.words = [ 0 ]; - this.length = 1; - return this; - } - - this.length = Math.ceil(number.length / 3); - this.words = new Array(this.length); - for (var i = 0; i < this.length; i++) { - this.words[i] = 0; - } - - var j, w; - var off = 0; - if (endian === 'be') { - for (i = number.length - 1, j = 0; i >= 0; i -= 3) { - w = number[i] | (number[i - 1] << 8) | (number[i - 2] << 16); - this.words[j] |= (w << off) & 0x3ffffff; - this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff; - off += 24; - if (off >= 26) { - off -= 26; - j++; - } - } - } else if (endian === 'le') { - for (i = 0, j = 0; i < number.length; i += 3) { - w = number[i] | (number[i + 1] << 8) | (number[i + 2] << 16); - this.words[j] |= (w << off) & 0x3ffffff; - this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff; - off += 24; - if (off >= 26) { - off -= 26; - j++; - } - } - } - return this.strip(); - }; - - function parseHex4Bits (string, index) { - var c = string.charCodeAt(index); - // 'A' - 'F' - if (c >= 65 && c <= 70) { - return c - 55; - // 'a' - 'f' - } else if (c >= 97 && c <= 102) { - return c - 87; - // '0' - '9' - } else { - return (c - 48) & 0xf; - } - } - - function parseHexByte (string, lowerBound, index) { - var r = parseHex4Bits(string, index); - if (index - 1 >= lowerBound) { - r |= parseHex4Bits(string, index - 1) << 4; - } - return r; - } - - BN.prototype._parseHex = function _parseHex (number, start, endian) { - // Create possibly bigger array to ensure that it fits the number - this.length = Math.ceil((number.length - start) / 6); - this.words = new Array(this.length); - for (var i = 0; i < this.length; i++) { - this.words[i] = 0; - } - - // 24-bits chunks - var off = 0; - var j = 0; - - var w; - if (endian === 'be') { - for (i = number.length - 1; i >= start; i -= 2) { - w = parseHexByte(number, start, i) << off; - this.words[j] |= w & 0x3ffffff; - if (off >= 18) { - off -= 18; - j += 1; - this.words[j] |= w >>> 26; - } else { - off += 8; - } - } - } else { - var parseLength = number.length - start; - for (i = parseLength % 2 === 0 ? start + 1 : start; i < number.length; i += 2) { - w = parseHexByte(number, start, i) << off; - this.words[j] |= w & 0x3ffffff; - if (off >= 18) { - off -= 18; - j += 1; - this.words[j] |= w >>> 26; - } else { - off += 8; - } - } - } - - this.strip(); - }; - - function parseBase (str, start, end, mul) { - var r = 0; - var len = Math.min(str.length, end); - for (var i = start; i < len; i++) { - var c = str.charCodeAt(i) - 48; - - r *= mul; - - // 'a' - if (c >= 49) { - r += c - 49 + 0xa; - - // 'A' - } else if (c >= 17) { - r += c - 17 + 0xa; - - // '0' - '9' - } else { - r += c; - } - } - return r; - } - - BN.prototype._parseBase = function _parseBase (number, base, start) { - // Initialize as zero - this.words = [ 0 ]; - this.length = 1; - - // Find length of limb in base - for (var limbLen = 0, limbPow = 1; limbPow <= 0x3ffffff; limbPow *= base) { - limbLen++; - } - limbLen--; - limbPow = (limbPow / base) | 0; - - var total = number.length - start; - var mod = total % limbLen; - var end = Math.min(total, total - mod) + start; - - var word = 0; - for (var i = start; i < end; i += limbLen) { - word = parseBase(number, i, i + limbLen, base); - - this.imuln(limbPow); - if (this.words[0] + word < 0x4000000) { - this.words[0] += word; - } else { - this._iaddn(word); - } - } - - if (mod !== 0) { - var pow = 1; - word = parseBase(number, i, number.length, base); - - for (i = 0; i < mod; i++) { - pow *= base; - } - - this.imuln(pow); - if (this.words[0] + word < 0x4000000) { - this.words[0] += word; - } else { - this._iaddn(word); - } - } - - this.strip(); - }; - - BN.prototype.copy = function copy (dest) { - dest.words = new Array(this.length); - for (var i = 0; i < this.length; i++) { - dest.words[i] = this.words[i]; - } - dest.length = this.length; - dest.negative = this.negative; - dest.red = this.red; - }; - - BN.prototype.clone = function clone () { - var r = new BN(null); - this.copy(r); - return r; - }; - - BN.prototype._expand = function _expand (size) { - while (this.length < size) { - this.words[this.length++] = 0; - } - return this; - }; - - // Remove leading `0` from `this` - BN.prototype.strip = function strip () { - while (this.length > 1 && this.words[this.length - 1] === 0) { - this.length--; - } - return this._normSign(); - }; - - BN.prototype._normSign = function _normSign () { - // -0 = 0 - if (this.length === 1 && this.words[0] === 0) { - this.negative = 0; - } - return this; - }; - - BN.prototype.inspect = function inspect () { - return (this.red ? ''; - }; - - /* - - var zeros = []; - var groupSizes = []; - var groupBases = []; - - var s = ''; - var i = -1; - while (++i < BN.wordSize) { - zeros[i] = s; - s += '0'; - } - groupSizes[0] = 0; - groupSizes[1] = 0; - groupBases[0] = 0; - groupBases[1] = 0; - var base = 2 - 1; - while (++base < 36 + 1) { - var groupSize = 0; - var groupBase = 1; - while (groupBase < (1 << BN.wordSize) / base) { - groupBase *= base; - groupSize += 1; - } - groupSizes[base] = groupSize; - groupBases[base] = groupBase; - } - - */ - - var zeros = [ - '', - '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' - ]; - - var groupSizes = [ - 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 - ]; - - var groupBases = [ - 0, 0, - 33554432, 43046721, 16777216, 48828125, 60466176, 40353607, 16777216, - 43046721, 10000000, 19487171, 35831808, 62748517, 7529536, 11390625, - 16777216, 24137569, 34012224, 47045881, 64000000, 4084101, 5153632, - 6436343, 7962624, 9765625, 11881376, 14348907, 17210368, 20511149, - 24300000, 28629151, 33554432, 39135393, 45435424, 52521875, 60466176 - ]; - - BN.prototype.toString = function toString (base, padding) { - base = base || 10; - padding = padding | 0 || 1; - - var out; - if (base === 16 || base === 'hex') { - out = ''; - var off = 0; - var carry = 0; - for (var i = 0; i < this.length; i++) { - var w = this.words[i]; - var word = (((w << off) | carry) & 0xffffff).toString(16); - carry = (w >>> (24 - off)) & 0xffffff; - if (carry !== 0 || i !== this.length - 1) { - out = zeros[6 - word.length] + word + out; - } else { - out = word + out; - } - off += 2; - if (off >= 26) { - off -= 26; - i--; - } - } - if (carry !== 0) { - out = carry.toString(16) + out; - } - while (out.length % padding !== 0) { - out = '0' + out; - } - if (this.negative !== 0) { - out = '-' + out; - } - return out; - } - - if (base === (base | 0) && base >= 2 && base <= 36) { - // var groupSize = Math.floor(BN.wordSize * Math.LN2 / Math.log(base)); - var groupSize = groupSizes[base]; - // var groupBase = Math.pow(base, groupSize); - var groupBase = groupBases[base]; - out = ''; - var c = this.clone(); - c.negative = 0; - while (!c.isZero()) { - var r = c.modn(groupBase).toString(base); - c = c.idivn(groupBase); - - if (!c.isZero()) { - out = zeros[groupSize - r.length] + r + out; - } else { - out = r + out; - } - } - if (this.isZero()) { - out = '0' + out; - } - while (out.length % padding !== 0) { - out = '0' + out; - } - if (this.negative !== 0) { - out = '-' + out; - } - return out; - } - - assert(false, 'Base should be between 2 and 36'); - }; - - BN.prototype.toNumber = function toNumber () { - var ret = this.words[0]; - if (this.length === 2) { - ret += this.words[1] * 0x4000000; - } else if (this.length === 3 && this.words[2] === 0x01) { - // NOTE: at this stage it is known that the top bit is set - ret += 0x10000000000000 + (this.words[1] * 0x4000000); - } else if (this.length > 2) { - assert(false, 'Number can only safely store up to 53 bits'); - } - return (this.negative !== 0) ? -ret : ret; - }; - - BN.prototype.toJSON = function toJSON () { - return this.toString(16); - }; - - BN.prototype.toBuffer = function toBuffer (endian, length) { - assert(typeof Buffer !== 'undefined'); - return this.toArrayLike(Buffer, endian, length); - }; - - BN.prototype.toArray = function toArray (endian, length) { - return this.toArrayLike(Array, endian, length); - }; - - BN.prototype.toArrayLike = function toArrayLike (ArrayType, endian, length) { - var byteLength = this.byteLength(); - var reqLength = length || Math.max(1, byteLength); - assert(byteLength <= reqLength, 'byte array longer than desired length'); - assert(reqLength > 0, 'Requested array length <= 0'); - - this.strip(); - var littleEndian = endian === 'le'; - var res = new ArrayType(reqLength); - - var b, i; - var q = this.clone(); - if (!littleEndian) { - // Assume big-endian - for (i = 0; i < reqLength - byteLength; i++) { - res[i] = 0; - } - - for (i = 0; !q.isZero(); i++) { - b = q.andln(0xff); - q.iushrn(8); - - res[reqLength - i - 1] = b; - } - } else { - for (i = 0; !q.isZero(); i++) { - b = q.andln(0xff); - q.iushrn(8); - - res[i] = b; - } - - for (; i < reqLength; i++) { - res[i] = 0; - } - } - - return res; - }; - - if (Math.clz32) { - BN.prototype._countBits = function _countBits (w) { - return 32 - Math.clz32(w); - }; - } else { - BN.prototype._countBits = function _countBits (w) { - var t = w; - var r = 0; - if (t >= 0x1000) { - r += 13; - t >>>= 13; - } - if (t >= 0x40) { - r += 7; - t >>>= 7; - } - if (t >= 0x8) { - r += 4; - t >>>= 4; - } - if (t >= 0x02) { - r += 2; - t >>>= 2; - } - return r + t; - }; - } - - BN.prototype._zeroBits = function _zeroBits (w) { - // Short-cut - if (w === 0) return 26; - - var t = w; - var r = 0; - if ((t & 0x1fff) === 0) { - r += 13; - t >>>= 13; - } - if ((t & 0x7f) === 0) { - r += 7; - t >>>= 7; - } - if ((t & 0xf) === 0) { - r += 4; - t >>>= 4; - } - if ((t & 0x3) === 0) { - r += 2; - t >>>= 2; - } - if ((t & 0x1) === 0) { - r++; - } - return r; - }; - - // Return number of used bits in a BN - BN.prototype.bitLength = function bitLength () { - var w = this.words[this.length - 1]; - var hi = this._countBits(w); - return (this.length - 1) * 26 + hi; - }; - - function toBitArray (num) { - var w = new Array(num.bitLength()); - - for (var bit = 0; bit < w.length; bit++) { - var off = (bit / 26) | 0; - var wbit = bit % 26; - - w[bit] = (num.words[off] & (1 << wbit)) >>> wbit; - } - - return w; - } - - // Number of trailing zero bits - BN.prototype.zeroBits = function zeroBits () { - if (this.isZero()) return 0; - - var r = 0; - for (var i = 0; i < this.length; i++) { - var b = this._zeroBits(this.words[i]); - r += b; - if (b !== 26) break; - } - return r; - }; - - BN.prototype.byteLength = function byteLength () { - return Math.ceil(this.bitLength() / 8); - }; - - BN.prototype.toTwos = function toTwos (width) { - if (this.negative !== 0) { - return this.abs().inotn(width).iaddn(1); - } - return this.clone(); - }; - - BN.prototype.fromTwos = function fromTwos (width) { - if (this.testn(width - 1)) { - return this.notn(width).iaddn(1).ineg(); - } - return this.clone(); - }; - - BN.prototype.isNeg = function isNeg () { - return this.negative !== 0; - }; - - // Return negative clone of `this` - BN.prototype.neg = function neg () { - return this.clone().ineg(); - }; - - BN.prototype.ineg = function ineg () { - if (!this.isZero()) { - this.negative ^= 1; - } - - return this; - }; - - // Or `num` with `this` in-place - BN.prototype.iuor = function iuor (num) { - while (this.length < num.length) { - this.words[this.length++] = 0; - } - - for (var i = 0; i < num.length; i++) { - this.words[i] = this.words[i] | num.words[i]; - } - - return this.strip(); - }; - - BN.prototype.ior = function ior (num) { - assert((this.negative | num.negative) === 0); - return this.iuor(num); - }; - - // Or `num` with `this` - BN.prototype.or = function or (num) { - if (this.length > num.length) return this.clone().ior(num); - return num.clone().ior(this); - }; - - BN.prototype.uor = function uor (num) { - if (this.length > num.length) return this.clone().iuor(num); - return num.clone().iuor(this); - }; - - // And `num` with `this` in-place - BN.prototype.iuand = function iuand (num) { - // b = min-length(num, this) - var b; - if (this.length > num.length) { - b = num; - } else { - b = this; - } - - for (var i = 0; i < b.length; i++) { - this.words[i] = this.words[i] & num.words[i]; - } - - this.length = b.length; - - return this.strip(); - }; - - BN.prototype.iand = function iand (num) { - assert((this.negative | num.negative) === 0); - return this.iuand(num); - }; - - // And `num` with `this` - BN.prototype.and = function and (num) { - if (this.length > num.length) return this.clone().iand(num); - return num.clone().iand(this); - }; - - BN.prototype.uand = function uand (num) { - if (this.length > num.length) return this.clone().iuand(num); - return num.clone().iuand(this); - }; - - // Xor `num` with `this` in-place - BN.prototype.iuxor = function iuxor (num) { - // a.length > b.length - var a; - var b; - if (this.length > num.length) { - a = this; - b = num; - } else { - a = num; - b = this; - } - - for (var i = 0; i < b.length; i++) { - this.words[i] = a.words[i] ^ b.words[i]; - } - - if (this !== a) { - for (; i < a.length; i++) { - this.words[i] = a.words[i]; - } - } - - this.length = a.length; - - return this.strip(); - }; - - BN.prototype.ixor = function ixor (num) { - assert((this.negative | num.negative) === 0); - return this.iuxor(num); - }; - - // Xor `num` with `this` - BN.prototype.xor = function xor (num) { - if (this.length > num.length) return this.clone().ixor(num); - return num.clone().ixor(this); - }; - - BN.prototype.uxor = function uxor (num) { - if (this.length > num.length) return this.clone().iuxor(num); - return num.clone().iuxor(this); - }; - - // Not ``this`` with ``width`` bitwidth - BN.prototype.inotn = function inotn (width) { - assert(typeof width === 'number' && width >= 0); - - var bytesNeeded = Math.ceil(width / 26) | 0; - var bitsLeft = width % 26; - - // Extend the buffer with leading zeroes - this._expand(bytesNeeded); - - if (bitsLeft > 0) { - bytesNeeded--; - } - - // Handle complete words - for (var i = 0; i < bytesNeeded; i++) { - this.words[i] = ~this.words[i] & 0x3ffffff; - } - - // Handle the residue - if (bitsLeft > 0) { - this.words[i] = ~this.words[i] & (0x3ffffff >> (26 - bitsLeft)); - } - - // And remove leading zeroes - return this.strip(); - }; - - BN.prototype.notn = function notn (width) { - return this.clone().inotn(width); - }; - - // Set `bit` of `this` - BN.prototype.setn = function setn (bit, val) { - assert(typeof bit === 'number' && bit >= 0); - - var off = (bit / 26) | 0; - var wbit = bit % 26; - - this._expand(off + 1); - - if (val) { - this.words[off] = this.words[off] | (1 << wbit); - } else { - this.words[off] = this.words[off] & ~(1 << wbit); - } - - return this.strip(); - }; - - // Add `num` to `this` in-place - BN.prototype.iadd = function iadd (num) { - var r; - - // negative + positive - if (this.negative !== 0 && num.negative === 0) { - this.negative = 0; - r = this.isub(num); - this.negative ^= 1; - return this._normSign(); - - // positive + negative - } else if (this.negative === 0 && num.negative !== 0) { - num.negative = 0; - r = this.isub(num); - num.negative = 1; - return r._normSign(); - } - - // a.length > b.length - var a, b; - if (this.length > num.length) { - a = this; - b = num; - } else { - a = num; - b = this; - } - - var carry = 0; - for (var i = 0; i < b.length; i++) { - r = (a.words[i] | 0) + (b.words[i] | 0) + carry; - this.words[i] = r & 0x3ffffff; - carry = r >>> 26; - } - for (; carry !== 0 && i < a.length; i++) { - r = (a.words[i] | 0) + carry; - this.words[i] = r & 0x3ffffff; - carry = r >>> 26; - } - - this.length = a.length; - if (carry !== 0) { - this.words[this.length] = carry; - this.length++; - // Copy the rest of the words - } else if (a !== this) { - for (; i < a.length; i++) { - this.words[i] = a.words[i]; - } - } - - return this; - }; - - // Add `num` to `this` - BN.prototype.add = function add (num) { - var res; - if (num.negative !== 0 && this.negative === 0) { - num.negative = 0; - res = this.sub(num); - num.negative ^= 1; - return res; - } else if (num.negative === 0 && this.negative !== 0) { - this.negative = 0; - res = num.sub(this); - this.negative = 1; - return res; - } - - if (this.length > num.length) return this.clone().iadd(num); - - return num.clone().iadd(this); - }; - - // Subtract `num` from `this` in-place - BN.prototype.isub = function isub (num) { - // this - (-num) = this + num - if (num.negative !== 0) { - num.negative = 0; - var r = this.iadd(num); - num.negative = 1; - return r._normSign(); - - // -this - num = -(this + num) - } else if (this.negative !== 0) { - this.negative = 0; - this.iadd(num); - this.negative = 1; - return this._normSign(); - } - - // At this point both numbers are positive - var cmp = this.cmp(num); - - // Optimization - zeroify - if (cmp === 0) { - this.negative = 0; - this.length = 1; - this.words[0] = 0; - return this; - } - - // a > b - var a, b; - if (cmp > 0) { - a = this; - b = num; - } else { - a = num; - b = this; - } - - var carry = 0; - for (var i = 0; i < b.length; i++) { - r = (a.words[i] | 0) - (b.words[i] | 0) + carry; - carry = r >> 26; - this.words[i] = r & 0x3ffffff; - } - for (; carry !== 0 && i < a.length; i++) { - r = (a.words[i] | 0) + carry; - carry = r >> 26; - this.words[i] = r & 0x3ffffff; - } - - // Copy rest of the words - if (carry === 0 && i < a.length && a !== this) { - for (; i < a.length; i++) { - this.words[i] = a.words[i]; - } - } - - this.length = Math.max(this.length, i); - - if (a !== this) { - this.negative = 1; - } - - return this.strip(); - }; - - // Subtract `num` from `this` - BN.prototype.sub = function sub (num) { - return this.clone().isub(num); - }; - - function smallMulTo (self, num, out) { - out.negative = num.negative ^ self.negative; - var len = (self.length + num.length) | 0; - out.length = len; - len = (len - 1) | 0; - - // Peel one iteration (compiler can't do it, because of code complexity) - var a = self.words[0] | 0; - var b = num.words[0] | 0; - var r = a * b; - - var lo = r & 0x3ffffff; - var carry = (r / 0x4000000) | 0; - out.words[0] = lo; - - for (var k = 1; k < len; k++) { - // Sum all words with the same `i + j = k` and accumulate `ncarry`, - // note that ncarry could be >= 0x3ffffff - var ncarry = carry >>> 26; - var rword = carry & 0x3ffffff; - var maxJ = Math.min(k, num.length - 1); - for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) { - var i = (k - j) | 0; - a = self.words[i] | 0; - b = num.words[j] | 0; - r = a * b + rword; - ncarry += (r / 0x4000000) | 0; - rword = r & 0x3ffffff; - } - out.words[k] = rword | 0; - carry = ncarry | 0; - } - if (carry !== 0) { - out.words[k] = carry | 0; - } else { - out.length--; - } - - return out.strip(); - } - - // TODO(indutny): it may be reasonable to omit it for users who don't need - // to work with 256-bit numbers, otherwise it gives 20% improvement for 256-bit - // multiplication (like elliptic secp256k1). - var comb10MulTo = function comb10MulTo (self, num, out) { - var a = self.words; - var b = num.words; - var o = out.words; - var c = 0; - var lo; - var mid; - var hi; - var a0 = a[0] | 0; - var al0 = a0 & 0x1fff; - var ah0 = a0 >>> 13; - var a1 = a[1] | 0; - var al1 = a1 & 0x1fff; - var ah1 = a1 >>> 13; - var a2 = a[2] | 0; - var al2 = a2 & 0x1fff; - var ah2 = a2 >>> 13; - var a3 = a[3] | 0; - var al3 = a3 & 0x1fff; - var ah3 = a3 >>> 13; - var a4 = a[4] | 0; - var al4 = a4 & 0x1fff; - var ah4 = a4 >>> 13; - var a5 = a[5] | 0; - var al5 = a5 & 0x1fff; - var ah5 = a5 >>> 13; - var a6 = a[6] | 0; - var al6 = a6 & 0x1fff; - var ah6 = a6 >>> 13; - var a7 = a[7] | 0; - var al7 = a7 & 0x1fff; - var ah7 = a7 >>> 13; - var a8 = a[8] | 0; - var al8 = a8 & 0x1fff; - var ah8 = a8 >>> 13; - var a9 = a[9] | 0; - var al9 = a9 & 0x1fff; - var ah9 = a9 >>> 13; - var b0 = b[0] | 0; - var bl0 = b0 & 0x1fff; - var bh0 = b0 >>> 13; - var b1 = b[1] | 0; - var bl1 = b1 & 0x1fff; - var bh1 = b1 >>> 13; - var b2 = b[2] | 0; - var bl2 = b2 & 0x1fff; - var bh2 = b2 >>> 13; - var b3 = b[3] | 0; - var bl3 = b3 & 0x1fff; - var bh3 = b3 >>> 13; - var b4 = b[4] | 0; - var bl4 = b4 & 0x1fff; - var bh4 = b4 >>> 13; - var b5 = b[5] | 0; - var bl5 = b5 & 0x1fff; - var bh5 = b5 >>> 13; - var b6 = b[6] | 0; - var bl6 = b6 & 0x1fff; - var bh6 = b6 >>> 13; - var b7 = b[7] | 0; - var bl7 = b7 & 0x1fff; - var bh7 = b7 >>> 13; - var b8 = b[8] | 0; - var bl8 = b8 & 0x1fff; - var bh8 = b8 >>> 13; - var b9 = b[9] | 0; - var bl9 = b9 & 0x1fff; - var bh9 = b9 >>> 13; - - out.negative = self.negative ^ num.negative; - out.length = 19; - /* k = 0 */ - lo = Math.imul(al0, bl0); - mid = Math.imul(al0, bh0); - mid = (mid + Math.imul(ah0, bl0)) | 0; - hi = Math.imul(ah0, bh0); - var w0 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w0 >>> 26)) | 0; - w0 &= 0x3ffffff; - /* k = 1 */ - lo = Math.imul(al1, bl0); - mid = Math.imul(al1, bh0); - mid = (mid + Math.imul(ah1, bl0)) | 0; - hi = Math.imul(ah1, bh0); - lo = (lo + Math.imul(al0, bl1)) | 0; - mid = (mid + Math.imul(al0, bh1)) | 0; - mid = (mid + Math.imul(ah0, bl1)) | 0; - hi = (hi + Math.imul(ah0, bh1)) | 0; - var w1 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w1 >>> 26)) | 0; - w1 &= 0x3ffffff; - /* k = 2 */ - lo = Math.imul(al2, bl0); - mid = Math.imul(al2, bh0); - mid = (mid + Math.imul(ah2, bl0)) | 0; - hi = Math.imul(ah2, bh0); - lo = (lo + Math.imul(al1, bl1)) | 0; - mid = (mid + Math.imul(al1, bh1)) | 0; - mid = (mid + Math.imul(ah1, bl1)) | 0; - hi = (hi + Math.imul(ah1, bh1)) | 0; - lo = (lo + Math.imul(al0, bl2)) | 0; - mid = (mid + Math.imul(al0, bh2)) | 0; - mid = (mid + Math.imul(ah0, bl2)) | 0; - hi = (hi + Math.imul(ah0, bh2)) | 0; - var w2 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w2 >>> 26)) | 0; - w2 &= 0x3ffffff; - /* k = 3 */ - lo = Math.imul(al3, bl0); - mid = Math.imul(al3, bh0); - mid = (mid + Math.imul(ah3, bl0)) | 0; - hi = Math.imul(ah3, bh0); - lo = (lo + Math.imul(al2, bl1)) | 0; - mid = (mid + Math.imul(al2, bh1)) | 0; - mid = (mid + Math.imul(ah2, bl1)) | 0; - hi = (hi + Math.imul(ah2, bh1)) | 0; - lo = (lo + Math.imul(al1, bl2)) | 0; - mid = (mid + Math.imul(al1, bh2)) | 0; - mid = (mid + Math.imul(ah1, bl2)) | 0; - hi = (hi + Math.imul(ah1, bh2)) | 0; - lo = (lo + Math.imul(al0, bl3)) | 0; - mid = (mid + Math.imul(al0, bh3)) | 0; - mid = (mid + Math.imul(ah0, bl3)) | 0; - hi = (hi + Math.imul(ah0, bh3)) | 0; - var w3 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w3 >>> 26)) | 0; - w3 &= 0x3ffffff; - /* k = 4 */ - lo = Math.imul(al4, bl0); - mid = Math.imul(al4, bh0); - mid = (mid + Math.imul(ah4, bl0)) | 0; - hi = Math.imul(ah4, bh0); - lo = (lo + Math.imul(al3, bl1)) | 0; - mid = (mid + Math.imul(al3, bh1)) | 0; - mid = (mid + Math.imul(ah3, bl1)) | 0; - hi = (hi + Math.imul(ah3, bh1)) | 0; - lo = (lo + Math.imul(al2, bl2)) | 0; - mid = (mid + Math.imul(al2, bh2)) | 0; - mid = (mid + Math.imul(ah2, bl2)) | 0; - hi = (hi + Math.imul(ah2, bh2)) | 0; - lo = (lo + Math.imul(al1, bl3)) | 0; - mid = (mid + Math.imul(al1, bh3)) | 0; - mid = (mid + Math.imul(ah1, bl3)) | 0; - hi = (hi + Math.imul(ah1, bh3)) | 0; - lo = (lo + Math.imul(al0, bl4)) | 0; - mid = (mid + Math.imul(al0, bh4)) | 0; - mid = (mid + Math.imul(ah0, bl4)) | 0; - hi = (hi + Math.imul(ah0, bh4)) | 0; - var w4 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w4 >>> 26)) | 0; - w4 &= 0x3ffffff; - /* k = 5 */ - lo = Math.imul(al5, bl0); - mid = Math.imul(al5, bh0); - mid = (mid + Math.imul(ah5, bl0)) | 0; - hi = Math.imul(ah5, bh0); - lo = (lo + Math.imul(al4, bl1)) | 0; - mid = (mid + Math.imul(al4, bh1)) | 0; - mid = (mid + Math.imul(ah4, bl1)) | 0; - hi = (hi + Math.imul(ah4, bh1)) | 0; - lo = (lo + Math.imul(al3, bl2)) | 0; - mid = (mid + Math.imul(al3, bh2)) | 0; - mid = (mid + Math.imul(ah3, bl2)) | 0; - hi = (hi + Math.imul(ah3, bh2)) | 0; - lo = (lo + Math.imul(al2, bl3)) | 0; - mid = (mid + Math.imul(al2, bh3)) | 0; - mid = (mid + Math.imul(ah2, bl3)) | 0; - hi = (hi + Math.imul(ah2, bh3)) | 0; - lo = (lo + Math.imul(al1, bl4)) | 0; - mid = (mid + Math.imul(al1, bh4)) | 0; - mid = (mid + Math.imul(ah1, bl4)) | 0; - hi = (hi + Math.imul(ah1, bh4)) | 0; - lo = (lo + Math.imul(al0, bl5)) | 0; - mid = (mid + Math.imul(al0, bh5)) | 0; - mid = (mid + Math.imul(ah0, bl5)) | 0; - hi = (hi + Math.imul(ah0, bh5)) | 0; - var w5 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w5 >>> 26)) | 0; - w5 &= 0x3ffffff; - /* k = 6 */ - lo = Math.imul(al6, bl0); - mid = Math.imul(al6, bh0); - mid = (mid + Math.imul(ah6, bl0)) | 0; - hi = Math.imul(ah6, bh0); - lo = (lo + Math.imul(al5, bl1)) | 0; - mid = (mid + Math.imul(al5, bh1)) | 0; - mid = (mid + Math.imul(ah5, bl1)) | 0; - hi = (hi + Math.imul(ah5, bh1)) | 0; - lo = (lo + Math.imul(al4, bl2)) | 0; - mid = (mid + Math.imul(al4, bh2)) | 0; - mid = (mid + Math.imul(ah4, bl2)) | 0; - hi = (hi + Math.imul(ah4, bh2)) | 0; - lo = (lo + Math.imul(al3, bl3)) | 0; - mid = (mid + Math.imul(al3, bh3)) | 0; - mid = (mid + Math.imul(ah3, bl3)) | 0; - hi = (hi + Math.imul(ah3, bh3)) | 0; - lo = (lo + Math.imul(al2, bl4)) | 0; - mid = (mid + Math.imul(al2, bh4)) | 0; - mid = (mid + Math.imul(ah2, bl4)) | 0; - hi = (hi + Math.imul(ah2, bh4)) | 0; - lo = (lo + Math.imul(al1, bl5)) | 0; - mid = (mid + Math.imul(al1, bh5)) | 0; - mid = (mid + Math.imul(ah1, bl5)) | 0; - hi = (hi + Math.imul(ah1, bh5)) | 0; - lo = (lo + Math.imul(al0, bl6)) | 0; - mid = (mid + Math.imul(al0, bh6)) | 0; - mid = (mid + Math.imul(ah0, bl6)) | 0; - hi = (hi + Math.imul(ah0, bh6)) | 0; - var w6 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w6 >>> 26)) | 0; - w6 &= 0x3ffffff; - /* k = 7 */ - lo = Math.imul(al7, bl0); - mid = Math.imul(al7, bh0); - mid = (mid + Math.imul(ah7, bl0)) | 0; - hi = Math.imul(ah7, bh0); - lo = (lo + Math.imul(al6, bl1)) | 0; - mid = (mid + Math.imul(al6, bh1)) | 0; - mid = (mid + Math.imul(ah6, bl1)) | 0; - hi = (hi + Math.imul(ah6, bh1)) | 0; - lo = (lo + Math.imul(al5, bl2)) | 0; - mid = (mid + Math.imul(al5, bh2)) | 0; - mid = (mid + Math.imul(ah5, bl2)) | 0; - hi = (hi + Math.imul(ah5, bh2)) | 0; - lo = (lo + Math.imul(al4, bl3)) | 0; - mid = (mid + Math.imul(al4, bh3)) | 0; - mid = (mid + Math.imul(ah4, bl3)) | 0; - hi = (hi + Math.imul(ah4, bh3)) | 0; - lo = (lo + Math.imul(al3, bl4)) | 0; - mid = (mid + Math.imul(al3, bh4)) | 0; - mid = (mid + Math.imul(ah3, bl4)) | 0; - hi = (hi + Math.imul(ah3, bh4)) | 0; - lo = (lo + Math.imul(al2, bl5)) | 0; - mid = (mid + Math.imul(al2, bh5)) | 0; - mid = (mid + Math.imul(ah2, bl5)) | 0; - hi = (hi + Math.imul(ah2, bh5)) | 0; - lo = (lo + Math.imul(al1, bl6)) | 0; - mid = (mid + Math.imul(al1, bh6)) | 0; - mid = (mid + Math.imul(ah1, bl6)) | 0; - hi = (hi + Math.imul(ah1, bh6)) | 0; - lo = (lo + Math.imul(al0, bl7)) | 0; - mid = (mid + Math.imul(al0, bh7)) | 0; - mid = (mid + Math.imul(ah0, bl7)) | 0; - hi = (hi + Math.imul(ah0, bh7)) | 0; - var w7 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w7 >>> 26)) | 0; - w7 &= 0x3ffffff; - /* k = 8 */ - lo = Math.imul(al8, bl0); - mid = Math.imul(al8, bh0); - mid = (mid + Math.imul(ah8, bl0)) | 0; - hi = Math.imul(ah8, bh0); - lo = (lo + Math.imul(al7, bl1)) | 0; - mid = (mid + Math.imul(al7, bh1)) | 0; - mid = (mid + Math.imul(ah7, bl1)) | 0; - hi = (hi + Math.imul(ah7, bh1)) | 0; - lo = (lo + Math.imul(al6, bl2)) | 0; - mid = (mid + Math.imul(al6, bh2)) | 0; - mid = (mid + Math.imul(ah6, bl2)) | 0; - hi = (hi + Math.imul(ah6, bh2)) | 0; - lo = (lo + Math.imul(al5, bl3)) | 0; - mid = (mid + Math.imul(al5, bh3)) | 0; - mid = (mid + Math.imul(ah5, bl3)) | 0; - hi = (hi + Math.imul(ah5, bh3)) | 0; - lo = (lo + Math.imul(al4, bl4)) | 0; - mid = (mid + Math.imul(al4, bh4)) | 0; - mid = (mid + Math.imul(ah4, bl4)) | 0; - hi = (hi + Math.imul(ah4, bh4)) | 0; - lo = (lo + Math.imul(al3, bl5)) | 0; - mid = (mid + Math.imul(al3, bh5)) | 0; - mid = (mid + Math.imul(ah3, bl5)) | 0; - hi = (hi + Math.imul(ah3, bh5)) | 0; - lo = (lo + Math.imul(al2, bl6)) | 0; - mid = (mid + Math.imul(al2, bh6)) | 0; - mid = (mid + Math.imul(ah2, bl6)) | 0; - hi = (hi + Math.imul(ah2, bh6)) | 0; - lo = (lo + Math.imul(al1, bl7)) | 0; - mid = (mid + Math.imul(al1, bh7)) | 0; - mid = (mid + Math.imul(ah1, bl7)) | 0; - hi = (hi + Math.imul(ah1, bh7)) | 0; - lo = (lo + Math.imul(al0, bl8)) | 0; - mid = (mid + Math.imul(al0, bh8)) | 0; - mid = (mid + Math.imul(ah0, bl8)) | 0; - hi = (hi + Math.imul(ah0, bh8)) | 0; - var w8 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w8 >>> 26)) | 0; - w8 &= 0x3ffffff; - /* k = 9 */ - lo = Math.imul(al9, bl0); - mid = Math.imul(al9, bh0); - mid = (mid + Math.imul(ah9, bl0)) | 0; - hi = Math.imul(ah9, bh0); - lo = (lo + Math.imul(al8, bl1)) | 0; - mid = (mid + Math.imul(al8, bh1)) | 0; - mid = (mid + Math.imul(ah8, bl1)) | 0; - hi = (hi + Math.imul(ah8, bh1)) | 0; - lo = (lo + Math.imul(al7, bl2)) | 0; - mid = (mid + Math.imul(al7, bh2)) | 0; - mid = (mid + Math.imul(ah7, bl2)) | 0; - hi = (hi + Math.imul(ah7, bh2)) | 0; - lo = (lo + Math.imul(al6, bl3)) | 0; - mid = (mid + Math.imul(al6, bh3)) | 0; - mid = (mid + Math.imul(ah6, bl3)) | 0; - hi = (hi + Math.imul(ah6, bh3)) | 0; - lo = (lo + Math.imul(al5, bl4)) | 0; - mid = (mid + Math.imul(al5, bh4)) | 0; - mid = (mid + Math.imul(ah5, bl4)) | 0; - hi = (hi + Math.imul(ah5, bh4)) | 0; - lo = (lo + Math.imul(al4, bl5)) | 0; - mid = (mid + Math.imul(al4, bh5)) | 0; - mid = (mid + Math.imul(ah4, bl5)) | 0; - hi = (hi + Math.imul(ah4, bh5)) | 0; - lo = (lo + Math.imul(al3, bl6)) | 0; - mid = (mid + Math.imul(al3, bh6)) | 0; - mid = (mid + Math.imul(ah3, bl6)) | 0; - hi = (hi + Math.imul(ah3, bh6)) | 0; - lo = (lo + Math.imul(al2, bl7)) | 0; - mid = (mid + Math.imul(al2, bh7)) | 0; - mid = (mid + Math.imul(ah2, bl7)) | 0; - hi = (hi + Math.imul(ah2, bh7)) | 0; - lo = (lo + Math.imul(al1, bl8)) | 0; - mid = (mid + Math.imul(al1, bh8)) | 0; - mid = (mid + Math.imul(ah1, bl8)) | 0; - hi = (hi + Math.imul(ah1, bh8)) | 0; - lo = (lo + Math.imul(al0, bl9)) | 0; - mid = (mid + Math.imul(al0, bh9)) | 0; - mid = (mid + Math.imul(ah0, bl9)) | 0; - hi = (hi + Math.imul(ah0, bh9)) | 0; - var w9 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w9 >>> 26)) | 0; - w9 &= 0x3ffffff; - /* k = 10 */ - lo = Math.imul(al9, bl1); - mid = Math.imul(al9, bh1); - mid = (mid + Math.imul(ah9, bl1)) | 0; - hi = Math.imul(ah9, bh1); - lo = (lo + Math.imul(al8, bl2)) | 0; - mid = (mid + Math.imul(al8, bh2)) | 0; - mid = (mid + Math.imul(ah8, bl2)) | 0; - hi = (hi + Math.imul(ah8, bh2)) | 0; - lo = (lo + Math.imul(al7, bl3)) | 0; - mid = (mid + Math.imul(al7, bh3)) | 0; - mid = (mid + Math.imul(ah7, bl3)) | 0; - hi = (hi + Math.imul(ah7, bh3)) | 0; - lo = (lo + Math.imul(al6, bl4)) | 0; - mid = (mid + Math.imul(al6, bh4)) | 0; - mid = (mid + Math.imul(ah6, bl4)) | 0; - hi = (hi + Math.imul(ah6, bh4)) | 0; - lo = (lo + Math.imul(al5, bl5)) | 0; - mid = (mid + Math.imul(al5, bh5)) | 0; - mid = (mid + Math.imul(ah5, bl5)) | 0; - hi = (hi + Math.imul(ah5, bh5)) | 0; - lo = (lo + Math.imul(al4, bl6)) | 0; - mid = (mid + Math.imul(al4, bh6)) | 0; - mid = (mid + Math.imul(ah4, bl6)) | 0; - hi = (hi + Math.imul(ah4, bh6)) | 0; - lo = (lo + Math.imul(al3, bl7)) | 0; - mid = (mid + Math.imul(al3, bh7)) | 0; - mid = (mid + Math.imul(ah3, bl7)) | 0; - hi = (hi + Math.imul(ah3, bh7)) | 0; - lo = (lo + Math.imul(al2, bl8)) | 0; - mid = (mid + Math.imul(al2, bh8)) | 0; - mid = (mid + Math.imul(ah2, bl8)) | 0; - hi = (hi + Math.imul(ah2, bh8)) | 0; - lo = (lo + Math.imul(al1, bl9)) | 0; - mid = (mid + Math.imul(al1, bh9)) | 0; - mid = (mid + Math.imul(ah1, bl9)) | 0; - hi = (hi + Math.imul(ah1, bh9)) | 0; - var w10 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w10 >>> 26)) | 0; - w10 &= 0x3ffffff; - /* k = 11 */ - lo = Math.imul(al9, bl2); - mid = Math.imul(al9, bh2); - mid = (mid + Math.imul(ah9, bl2)) | 0; - hi = Math.imul(ah9, bh2); - lo = (lo + Math.imul(al8, bl3)) | 0; - mid = (mid + Math.imul(al8, bh3)) | 0; - mid = (mid + Math.imul(ah8, bl3)) | 0; - hi = (hi + Math.imul(ah8, bh3)) | 0; - lo = (lo + Math.imul(al7, bl4)) | 0; - mid = (mid + Math.imul(al7, bh4)) | 0; - mid = (mid + Math.imul(ah7, bl4)) | 0; - hi = (hi + Math.imul(ah7, bh4)) | 0; - lo = (lo + Math.imul(al6, bl5)) | 0; - mid = (mid + Math.imul(al6, bh5)) | 0; - mid = (mid + Math.imul(ah6, bl5)) | 0; - hi = (hi + Math.imul(ah6, bh5)) | 0; - lo = (lo + Math.imul(al5, bl6)) | 0; - mid = (mid + Math.imul(al5, bh6)) | 0; - mid = (mid + Math.imul(ah5, bl6)) | 0; - hi = (hi + Math.imul(ah5, bh6)) | 0; - lo = (lo + Math.imul(al4, bl7)) | 0; - mid = (mid + Math.imul(al4, bh7)) | 0; - mid = (mid + Math.imul(ah4, bl7)) | 0; - hi = (hi + Math.imul(ah4, bh7)) | 0; - lo = (lo + Math.imul(al3, bl8)) | 0; - mid = (mid + Math.imul(al3, bh8)) | 0; - mid = (mid + Math.imul(ah3, bl8)) | 0; - hi = (hi + Math.imul(ah3, bh8)) | 0; - lo = (lo + Math.imul(al2, bl9)) | 0; - mid = (mid + Math.imul(al2, bh9)) | 0; - mid = (mid + Math.imul(ah2, bl9)) | 0; - hi = (hi + Math.imul(ah2, bh9)) | 0; - var w11 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w11 >>> 26)) | 0; - w11 &= 0x3ffffff; - /* k = 12 */ - lo = Math.imul(al9, bl3); - mid = Math.imul(al9, bh3); - mid = (mid + Math.imul(ah9, bl3)) | 0; - hi = Math.imul(ah9, bh3); - lo = (lo + Math.imul(al8, bl4)) | 0; - mid = (mid + Math.imul(al8, bh4)) | 0; - mid = (mid + Math.imul(ah8, bl4)) | 0; - hi = (hi + Math.imul(ah8, bh4)) | 0; - lo = (lo + Math.imul(al7, bl5)) | 0; - mid = (mid + Math.imul(al7, bh5)) | 0; - mid = (mid + Math.imul(ah7, bl5)) | 0; - hi = (hi + Math.imul(ah7, bh5)) | 0; - lo = (lo + Math.imul(al6, bl6)) | 0; - mid = (mid + Math.imul(al6, bh6)) | 0; - mid = (mid + Math.imul(ah6, bl6)) | 0; - hi = (hi + Math.imul(ah6, bh6)) | 0; - lo = (lo + Math.imul(al5, bl7)) | 0; - mid = (mid + Math.imul(al5, bh7)) | 0; - mid = (mid + Math.imul(ah5, bl7)) | 0; - hi = (hi + Math.imul(ah5, bh7)) | 0; - lo = (lo + Math.imul(al4, bl8)) | 0; - mid = (mid + Math.imul(al4, bh8)) | 0; - mid = (mid + Math.imul(ah4, bl8)) | 0; - hi = (hi + Math.imul(ah4, bh8)) | 0; - lo = (lo + Math.imul(al3, bl9)) | 0; - mid = (mid + Math.imul(al3, bh9)) | 0; - mid = (mid + Math.imul(ah3, bl9)) | 0; - hi = (hi + Math.imul(ah3, bh9)) | 0; - var w12 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w12 >>> 26)) | 0; - w12 &= 0x3ffffff; - /* k = 13 */ - lo = Math.imul(al9, bl4); - mid = Math.imul(al9, bh4); - mid = (mid + Math.imul(ah9, bl4)) | 0; - hi = Math.imul(ah9, bh4); - lo = (lo + Math.imul(al8, bl5)) | 0; - mid = (mid + Math.imul(al8, bh5)) | 0; - mid = (mid + Math.imul(ah8, bl5)) | 0; - hi = (hi + Math.imul(ah8, bh5)) | 0; - lo = (lo + Math.imul(al7, bl6)) | 0; - mid = (mid + Math.imul(al7, bh6)) | 0; - mid = (mid + Math.imul(ah7, bl6)) | 0; - hi = (hi + Math.imul(ah7, bh6)) | 0; - lo = (lo + Math.imul(al6, bl7)) | 0; - mid = (mid + Math.imul(al6, bh7)) | 0; - mid = (mid + Math.imul(ah6, bl7)) | 0; - hi = (hi + Math.imul(ah6, bh7)) | 0; - lo = (lo + Math.imul(al5, bl8)) | 0; - mid = (mid + Math.imul(al5, bh8)) | 0; - mid = (mid + Math.imul(ah5, bl8)) | 0; - hi = (hi + Math.imul(ah5, bh8)) | 0; - lo = (lo + Math.imul(al4, bl9)) | 0; - mid = (mid + Math.imul(al4, bh9)) | 0; - mid = (mid + Math.imul(ah4, bl9)) | 0; - hi = (hi + Math.imul(ah4, bh9)) | 0; - var w13 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w13 >>> 26)) | 0; - w13 &= 0x3ffffff; - /* k = 14 */ - lo = Math.imul(al9, bl5); - mid = Math.imul(al9, bh5); - mid = (mid + Math.imul(ah9, bl5)) | 0; - hi = Math.imul(ah9, bh5); - lo = (lo + Math.imul(al8, bl6)) | 0; - mid = (mid + Math.imul(al8, bh6)) | 0; - mid = (mid + Math.imul(ah8, bl6)) | 0; - hi = (hi + Math.imul(ah8, bh6)) | 0; - lo = (lo + Math.imul(al7, bl7)) | 0; - mid = (mid + Math.imul(al7, bh7)) | 0; - mid = (mid + Math.imul(ah7, bl7)) | 0; - hi = (hi + Math.imul(ah7, bh7)) | 0; - lo = (lo + Math.imul(al6, bl8)) | 0; - mid = (mid + Math.imul(al6, bh8)) | 0; - mid = (mid + Math.imul(ah6, bl8)) | 0; - hi = (hi + Math.imul(ah6, bh8)) | 0; - lo = (lo + Math.imul(al5, bl9)) | 0; - mid = (mid + Math.imul(al5, bh9)) | 0; - mid = (mid + Math.imul(ah5, bl9)) | 0; - hi = (hi + Math.imul(ah5, bh9)) | 0; - var w14 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w14 >>> 26)) | 0; - w14 &= 0x3ffffff; - /* k = 15 */ - lo = Math.imul(al9, bl6); - mid = Math.imul(al9, bh6); - mid = (mid + Math.imul(ah9, bl6)) | 0; - hi = Math.imul(ah9, bh6); - lo = (lo + Math.imul(al8, bl7)) | 0; - mid = (mid + Math.imul(al8, bh7)) | 0; - mid = (mid + Math.imul(ah8, bl7)) | 0; - hi = (hi + Math.imul(ah8, bh7)) | 0; - lo = (lo + Math.imul(al7, bl8)) | 0; - mid = (mid + Math.imul(al7, bh8)) | 0; - mid = (mid + Math.imul(ah7, bl8)) | 0; - hi = (hi + Math.imul(ah7, bh8)) | 0; - lo = (lo + Math.imul(al6, bl9)) | 0; - mid = (mid + Math.imul(al6, bh9)) | 0; - mid = (mid + Math.imul(ah6, bl9)) | 0; - hi = (hi + Math.imul(ah6, bh9)) | 0; - var w15 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w15 >>> 26)) | 0; - w15 &= 0x3ffffff; - /* k = 16 */ - lo = Math.imul(al9, bl7); - mid = Math.imul(al9, bh7); - mid = (mid + Math.imul(ah9, bl7)) | 0; - hi = Math.imul(ah9, bh7); - lo = (lo + Math.imul(al8, bl8)) | 0; - mid = (mid + Math.imul(al8, bh8)) | 0; - mid = (mid + Math.imul(ah8, bl8)) | 0; - hi = (hi + Math.imul(ah8, bh8)) | 0; - lo = (lo + Math.imul(al7, bl9)) | 0; - mid = (mid + Math.imul(al7, bh9)) | 0; - mid = (mid + Math.imul(ah7, bl9)) | 0; - hi = (hi + Math.imul(ah7, bh9)) | 0; - var w16 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w16 >>> 26)) | 0; - w16 &= 0x3ffffff; - /* k = 17 */ - lo = Math.imul(al9, bl8); - mid = Math.imul(al9, bh8); - mid = (mid + Math.imul(ah9, bl8)) | 0; - hi = Math.imul(ah9, bh8); - lo = (lo + Math.imul(al8, bl9)) | 0; - mid = (mid + Math.imul(al8, bh9)) | 0; - mid = (mid + Math.imul(ah8, bl9)) | 0; - hi = (hi + Math.imul(ah8, bh9)) | 0; - var w17 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w17 >>> 26)) | 0; - w17 &= 0x3ffffff; - /* k = 18 */ - lo = Math.imul(al9, bl9); - mid = Math.imul(al9, bh9); - mid = (mid + Math.imul(ah9, bl9)) | 0; - hi = Math.imul(ah9, bh9); - var w18 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0; - c = (((hi + (mid >>> 13)) | 0) + (w18 >>> 26)) | 0; - w18 &= 0x3ffffff; - o[0] = w0; - o[1] = w1; - o[2] = w2; - o[3] = w3; - o[4] = w4; - o[5] = w5; - o[6] = w6; - o[7] = w7; - o[8] = w8; - o[9] = w9; - o[10] = w10; - o[11] = w11; - o[12] = w12; - o[13] = w13; - o[14] = w14; - o[15] = w15; - o[16] = w16; - o[17] = w17; - o[18] = w18; - if (c !== 0) { - o[19] = c; - out.length++; - } - return out; - }; - - // Polyfill comb - if (!Math.imul) { - comb10MulTo = smallMulTo; - } - - function bigMulTo (self, num, out) { - out.negative = num.negative ^ self.negative; - out.length = self.length + num.length; - - var carry = 0; - var hncarry = 0; - for (var k = 0; k < out.length - 1; k++) { - // Sum all words with the same `i + j = k` and accumulate `ncarry`, - // note that ncarry could be >= 0x3ffffff - var ncarry = hncarry; - hncarry = 0; - var rword = carry & 0x3ffffff; - var maxJ = Math.min(k, num.length - 1); - for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) { - var i = k - j; - var a = self.words[i] | 0; - var b = num.words[j] | 0; - var r = a * b; - - var lo = r & 0x3ffffff; - ncarry = (ncarry + ((r / 0x4000000) | 0)) | 0; - lo = (lo + rword) | 0; - rword = lo & 0x3ffffff; - ncarry = (ncarry + (lo >>> 26)) | 0; - - hncarry += ncarry >>> 26; - ncarry &= 0x3ffffff; - } - out.words[k] = rword; - carry = ncarry; - ncarry = hncarry; - } - if (carry !== 0) { - out.words[k] = carry; - } else { - out.length--; - } - - return out.strip(); - } - - function jumboMulTo (self, num, out) { - var fftm = new FFTM(); - return fftm.mulp(self, num, out); - } - - BN.prototype.mulTo = function mulTo (num, out) { - var res; - var len = this.length + num.length; - if (this.length === 10 && num.length === 10) { - res = comb10MulTo(this, num, out); - } else if (len < 63) { - res = smallMulTo(this, num, out); - } else if (len < 1024) { - res = bigMulTo(this, num, out); - } else { - res = jumboMulTo(this, num, out); - } - - return res; - }; - - // Cooley-Tukey algorithm for FFT - // slightly revisited to rely on looping instead of recursion - - function FFTM (x, y) { - this.x = x; - this.y = y; - } - - FFTM.prototype.makeRBT = function makeRBT (N) { - var t = new Array(N); - var l = BN.prototype._countBits(N) - 1; - for (var i = 0; i < N; i++) { - t[i] = this.revBin(i, l, N); - } - - return t; - }; - - // Returns binary-reversed representation of `x` - FFTM.prototype.revBin = function revBin (x, l, N) { - if (x === 0 || x === N - 1) return x; - - var rb = 0; - for (var i = 0; i < l; i++) { - rb |= (x & 1) << (l - i - 1); - x >>= 1; - } - - return rb; - }; - - // Performs "tweedling" phase, therefore 'emulating' - // behaviour of the recursive algorithm - FFTM.prototype.permute = function permute (rbt, rws, iws, rtws, itws, N) { - for (var i = 0; i < N; i++) { - rtws[i] = rws[rbt[i]]; - itws[i] = iws[rbt[i]]; - } - }; - - FFTM.prototype.transform = function transform (rws, iws, rtws, itws, N, rbt) { - this.permute(rbt, rws, iws, rtws, itws, N); - - for (var s = 1; s < N; s <<= 1) { - var l = s << 1; - - var rtwdf = Math.cos(2 * Math.PI / l); - var itwdf = Math.sin(2 * Math.PI / l); - - for (var p = 0; p < N; p += l) { - var rtwdf_ = rtwdf; - var itwdf_ = itwdf; - - for (var j = 0; j < s; j++) { - var re = rtws[p + j]; - var ie = itws[p + j]; - - var ro = rtws[p + j + s]; - var io = itws[p + j + s]; - - var rx = rtwdf_ * ro - itwdf_ * io; - - io = rtwdf_ * io + itwdf_ * ro; - ro = rx; - - rtws[p + j] = re + ro; - itws[p + j] = ie + io; - - rtws[p + j + s] = re - ro; - itws[p + j + s] = ie - io; - - /* jshint maxdepth : false */ - if (j !== l) { - rx = rtwdf * rtwdf_ - itwdf * itwdf_; - - itwdf_ = rtwdf * itwdf_ + itwdf * rtwdf_; - rtwdf_ = rx; - } - } - } - } - }; - - FFTM.prototype.guessLen13b = function guessLen13b (n, m) { - var N = Math.max(m, n) | 1; - var odd = N & 1; - var i = 0; - for (N = N / 2 | 0; N; N = N >>> 1) { - i++; - } - - return 1 << i + 1 + odd; - }; - - FFTM.prototype.conjugate = function conjugate (rws, iws, N) { - if (N <= 1) return; - - for (var i = 0; i < N / 2; i++) { - var t = rws[i]; - - rws[i] = rws[N - i - 1]; - rws[N - i - 1] = t; - - t = iws[i]; - - iws[i] = -iws[N - i - 1]; - iws[N - i - 1] = -t; - } - }; - - FFTM.prototype.normalize13b = function normalize13b (ws, N) { - var carry = 0; - for (var i = 0; i < N / 2; i++) { - var w = Math.round(ws[2 * i + 1] / N) * 0x2000 + - Math.round(ws[2 * i] / N) + - carry; - - ws[i] = w & 0x3ffffff; - - if (w < 0x4000000) { - carry = 0; - } else { - carry = w / 0x4000000 | 0; - } - } - - return ws; - }; - - FFTM.prototype.convert13b = function convert13b (ws, len, rws, N) { - var carry = 0; - for (var i = 0; i < len; i++) { - carry = carry + (ws[i] | 0); - - rws[2 * i] = carry & 0x1fff; carry = carry >>> 13; - rws[2 * i + 1] = carry & 0x1fff; carry = carry >>> 13; - } - - // Pad with zeroes - for (i = 2 * len; i < N; ++i) { - rws[i] = 0; - } - - assert(carry === 0); - assert((carry & ~0x1fff) === 0); - }; - - FFTM.prototype.stub = function stub (N) { - var ph = new Array(N); - for (var i = 0; i < N; i++) { - ph[i] = 0; - } - - return ph; - }; - - FFTM.prototype.mulp = function mulp (x, y, out) { - var N = 2 * this.guessLen13b(x.length, y.length); - - var rbt = this.makeRBT(N); - - var _ = this.stub(N); - - var rws = new Array(N); - var rwst = new Array(N); - var iwst = new Array(N); - - var nrws = new Array(N); - var nrwst = new Array(N); - var niwst = new Array(N); - - var rmws = out.words; - rmws.length = N; - - this.convert13b(x.words, x.length, rws, N); - this.convert13b(y.words, y.length, nrws, N); - - this.transform(rws, _, rwst, iwst, N, rbt); - this.transform(nrws, _, nrwst, niwst, N, rbt); - - for (var i = 0; i < N; i++) { - var rx = rwst[i] * nrwst[i] - iwst[i] * niwst[i]; - iwst[i] = rwst[i] * niwst[i] + iwst[i] * nrwst[i]; - rwst[i] = rx; - } - - this.conjugate(rwst, iwst, N); - this.transform(rwst, iwst, rmws, _, N, rbt); - this.conjugate(rmws, _, N); - this.normalize13b(rmws, N); - - out.negative = x.negative ^ y.negative; - out.length = x.length + y.length; - return out.strip(); - }; - - // Multiply `this` by `num` - BN.prototype.mul = function mul (num) { - var out = new BN(null); - out.words = new Array(this.length + num.length); - return this.mulTo(num, out); - }; - - // Multiply employing FFT - BN.prototype.mulf = function mulf (num) { - var out = new BN(null); - out.words = new Array(this.length + num.length); - return jumboMulTo(this, num, out); - }; - - // In-place Multiplication - BN.prototype.imul = function imul (num) { - return this.clone().mulTo(num, this); - }; - - BN.prototype.imuln = function imuln (num) { - assert(typeof num === 'number'); - assert(num < 0x4000000); - - // Carry - var carry = 0; - for (var i = 0; i < this.length; i++) { - var w = (this.words[i] | 0) * num; - var lo = (w & 0x3ffffff) + (carry & 0x3ffffff); - carry >>= 26; - carry += (w / 0x4000000) | 0; - // NOTE: lo is 27bit maximum - carry += lo >>> 26; - this.words[i] = lo & 0x3ffffff; - } - - if (carry !== 0) { - this.words[i] = carry; - this.length++; - } - - return this; - }; - - BN.prototype.muln = function muln (num) { - return this.clone().imuln(num); - }; - - // `this` * `this` - BN.prototype.sqr = function sqr () { - return this.mul(this); - }; - - // `this` * `this` in-place - BN.prototype.isqr = function isqr () { - return this.imul(this.clone()); - }; - - // Math.pow(`this`, `num`) - BN.prototype.pow = function pow (num) { - var w = toBitArray(num); - if (w.length === 0) return new BN(1); - - // Skip leading zeroes - var res = this; - for (var i = 0; i < w.length; i++, res = res.sqr()) { - if (w[i] !== 0) break; - } - - if (++i < w.length) { - for (var q = res.sqr(); i < w.length; i++, q = q.sqr()) { - if (w[i] === 0) continue; - - res = res.mul(q); - } - } - - return res; - }; - - // Shift-left in-place - BN.prototype.iushln = function iushln (bits) { - assert(typeof bits === 'number' && bits >= 0); - var r = bits % 26; - var s = (bits - r) / 26; - var carryMask = (0x3ffffff >>> (26 - r)) << (26 - r); - var i; - - if (r !== 0) { - var carry = 0; - - for (i = 0; i < this.length; i++) { - var newCarry = this.words[i] & carryMask; - var c = ((this.words[i] | 0) - newCarry) << r; - this.words[i] = c | carry; - carry = newCarry >>> (26 - r); - } - - if (carry) { - this.words[i] = carry; - this.length++; - } - } - - if (s !== 0) { - for (i = this.length - 1; i >= 0; i--) { - this.words[i + s] = this.words[i]; - } - - for (i = 0; i < s; i++) { - this.words[i] = 0; - } - - this.length += s; - } - - return this.strip(); - }; - - BN.prototype.ishln = function ishln (bits) { - // TODO(indutny): implement me - assert(this.negative === 0); - return this.iushln(bits); - }; - - // Shift-right in-place - // NOTE: `hint` is a lowest bit before trailing zeroes - // NOTE: if `extended` is present - it will be filled with destroyed bits - BN.prototype.iushrn = function iushrn (bits, hint, extended) { - assert(typeof bits === 'number' && bits >= 0); - var h; - if (hint) { - h = (hint - (hint % 26)) / 26; - } else { - h = 0; - } - - var r = bits % 26; - var s = Math.min((bits - r) / 26, this.length); - var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r); - var maskedWords = extended; - - h -= s; - h = Math.max(0, h); - - // Extended mode, copy masked part - if (maskedWords) { - for (var i = 0; i < s; i++) { - maskedWords.words[i] = this.words[i]; - } - maskedWords.length = s; - } - - if (s === 0) { - // No-op, we should not move anything at all - } else if (this.length > s) { - this.length -= s; - for (i = 0; i < this.length; i++) { - this.words[i] = this.words[i + s]; - } - } else { - this.words[0] = 0; - this.length = 1; - } - - var carry = 0; - for (i = this.length - 1; i >= 0 && (carry !== 0 || i >= h); i--) { - var word = this.words[i] | 0; - this.words[i] = (carry << (26 - r)) | (word >>> r); - carry = word & mask; - } - - // Push carried bits as a mask - if (maskedWords && carry !== 0) { - maskedWords.words[maskedWords.length++] = carry; - } - - if (this.length === 0) { - this.words[0] = 0; - this.length = 1; - } - - return this.strip(); - }; - - BN.prototype.ishrn = function ishrn (bits, hint, extended) { - // TODO(indutny): implement me - assert(this.negative === 0); - return this.iushrn(bits, hint, extended); - }; - - // Shift-left - BN.prototype.shln = function shln (bits) { - return this.clone().ishln(bits); - }; - - BN.prototype.ushln = function ushln (bits) { - return this.clone().iushln(bits); - }; - - // Shift-right - BN.prototype.shrn = function shrn (bits) { - return this.clone().ishrn(bits); - }; - - BN.prototype.ushrn = function ushrn (bits) { - return this.clone().iushrn(bits); - }; - - // Test if n bit is set - BN.prototype.testn = function testn (bit) { - assert(typeof bit === 'number' && bit >= 0); - var r = bit % 26; - var s = (bit - r) / 26; - var q = 1 << r; - - // Fast case: bit is much higher than all existing words - if (this.length <= s) return false; - - // Check bit and return - var w = this.words[s]; - - return !!(w & q); - }; - - // Return only lowers bits of number (in-place) - BN.prototype.imaskn = function imaskn (bits) { - assert(typeof bits === 'number' && bits >= 0); - var r = bits % 26; - var s = (bits - r) / 26; - - assert(this.negative === 0, 'imaskn works only with positive numbers'); - - if (this.length <= s) { - return this; - } - - if (r !== 0) { - s++; - } - this.length = Math.min(s, this.length); - - if (r !== 0) { - var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r); - this.words[this.length - 1] &= mask; - } - - return this.strip(); - }; - - // Return only lowers bits of number - BN.prototype.maskn = function maskn (bits) { - return this.clone().imaskn(bits); - }; - - // Add plain number `num` to `this` - BN.prototype.iaddn = function iaddn (num) { - assert(typeof num === 'number'); - assert(num < 0x4000000); - if (num < 0) return this.isubn(-num); - - // Possible sign change - if (this.negative !== 0) { - if (this.length === 1 && (this.words[0] | 0) < num) { - this.words[0] = num - (this.words[0] | 0); - this.negative = 0; - return this; - } - - this.negative = 0; - this.isubn(num); - this.negative = 1; - return this; - } - - // Add without checks - return this._iaddn(num); - }; - - BN.prototype._iaddn = function _iaddn (num) { - this.words[0] += num; - - // Carry - for (var i = 0; i < this.length && this.words[i] >= 0x4000000; i++) { - this.words[i] -= 0x4000000; - if (i === this.length - 1) { - this.words[i + 1] = 1; - } else { - this.words[i + 1]++; - } - } - this.length = Math.max(this.length, i + 1); - - return this; - }; - - // Subtract plain number `num` from `this` - BN.prototype.isubn = function isubn (num) { - assert(typeof num === 'number'); - assert(num < 0x4000000); - if (num < 0) return this.iaddn(-num); - - if (this.negative !== 0) { - this.negative = 0; - this.iaddn(num); - this.negative = 1; - return this; - } - - this.words[0] -= num; - - if (this.length === 1 && this.words[0] < 0) { - this.words[0] = -this.words[0]; - this.negative = 1; - } else { - // Carry - for (var i = 0; i < this.length && this.words[i] < 0; i++) { - this.words[i] += 0x4000000; - this.words[i + 1] -= 1; - } - } - - return this.strip(); - }; - - BN.prototype.addn = function addn (num) { - return this.clone().iaddn(num); - }; - - BN.prototype.subn = function subn (num) { - return this.clone().isubn(num); - }; - - BN.prototype.iabs = function iabs () { - this.negative = 0; - - return this; - }; - - BN.prototype.abs = function abs () { - return this.clone().iabs(); - }; - - BN.prototype._ishlnsubmul = function _ishlnsubmul (num, mul, shift) { - var len = num.length + shift; - var i; - - this._expand(len); - - var w; - var carry = 0; - for (i = 0; i < num.length; i++) { - w = (this.words[i + shift] | 0) + carry; - var right = (num.words[i] | 0) * mul; - w -= right & 0x3ffffff; - carry = (w >> 26) - ((right / 0x4000000) | 0); - this.words[i + shift] = w & 0x3ffffff; - } - for (; i < this.length - shift; i++) { - w = (this.words[i + shift] | 0) + carry; - carry = w >> 26; - this.words[i + shift] = w & 0x3ffffff; - } - - if (carry === 0) return this.strip(); - - // Subtraction overflow - assert(carry === -1); - carry = 0; - for (i = 0; i < this.length; i++) { - w = -(this.words[i] | 0) + carry; - carry = w >> 26; - this.words[i] = w & 0x3ffffff; - } - this.negative = 1; - - return this.strip(); - }; - - BN.prototype._wordDiv = function _wordDiv (num, mode) { - var shift = this.length - num.length; - - var a = this.clone(); - var b = num; - - // Normalize - var bhi = b.words[b.length - 1] | 0; - var bhiBits = this._countBits(bhi); - shift = 26 - bhiBits; - if (shift !== 0) { - b = b.ushln(shift); - a.iushln(shift); - bhi = b.words[b.length - 1] | 0; - } - - // Initialize quotient - var m = a.length - b.length; - var q; - - if (mode !== 'mod') { - q = new BN(null); - q.length = m + 1; - q.words = new Array(q.length); - for (var i = 0; i < q.length; i++) { - q.words[i] = 0; - } - } - - var diff = a.clone()._ishlnsubmul(b, 1, m); - if (diff.negative === 0) { - a = diff; - if (q) { - q.words[m] = 1; - } - } - - for (var j = m - 1; j >= 0; j--) { - var qj = (a.words[b.length + j] | 0) * 0x4000000 + - (a.words[b.length + j - 1] | 0); - - // NOTE: (qj / bhi) is (0x3ffffff * 0x4000000 + 0x3ffffff) / 0x2000000 max - // (0x7ffffff) - qj = Math.min((qj / bhi) | 0, 0x3ffffff); - - a._ishlnsubmul(b, qj, j); - while (a.negative !== 0) { - qj--; - a.negative = 0; - a._ishlnsubmul(b, 1, j); - if (!a.isZero()) { - a.negative ^= 1; - } - } - if (q) { - q.words[j] = qj; - } - } - if (q) { - q.strip(); - } - a.strip(); - - // Denormalize - if (mode !== 'div' && shift !== 0) { - a.iushrn(shift); - } - - return { - div: q || null, - mod: a - }; - }; - - // NOTE: 1) `mode` can be set to `mod` to request mod only, - // to `div` to request div only, or be absent to - // request both div & mod - // 2) `positive` is true if unsigned mod is requested - BN.prototype.divmod = function divmod (num, mode, positive) { - assert(!num.isZero()); - - if (this.isZero()) { - return { - div: new BN(0), - mod: new BN(0) - }; - } - - var div, mod, res; - if (this.negative !== 0 && num.negative === 0) { - res = this.neg().divmod(num, mode); - - if (mode !== 'mod') { - div = res.div.neg(); - } - - if (mode !== 'div') { - mod = res.mod.neg(); - if (positive && mod.negative !== 0) { - mod.iadd(num); - } - } - - return { - div: div, - mod: mod - }; - } - - if (this.negative === 0 && num.negative !== 0) { - res = this.divmod(num.neg(), mode); - - if (mode !== 'mod') { - div = res.div.neg(); - } - - return { - div: div, - mod: res.mod - }; - } - - if ((this.negative & num.negative) !== 0) { - res = this.neg().divmod(num.neg(), mode); - - if (mode !== 'div') { - mod = res.mod.neg(); - if (positive && mod.negative !== 0) { - mod.isub(num); - } - } - - return { - div: res.div, - mod: mod - }; - } - - // Both numbers are positive at this point - - // Strip both numbers to approximate shift value - if (num.length > this.length || this.cmp(num) < 0) { - return { - div: new BN(0), - mod: this - }; - } - - // Very short reduction - if (num.length === 1) { - if (mode === 'div') { - return { - div: this.divn(num.words[0]), - mod: null - }; - } - - if (mode === 'mod') { - return { - div: null, - mod: new BN(this.modn(num.words[0])) - }; - } - - return { - div: this.divn(num.words[0]), - mod: new BN(this.modn(num.words[0])) - }; - } - - return this._wordDiv(num, mode); - }; - - // Find `this` / `num` - BN.prototype.div = function div (num) { - return this.divmod(num, 'div', false).div; - }; - - // Find `this` % `num` - BN.prototype.mod = function mod (num) { - return this.divmod(num, 'mod', false).mod; - }; - - BN.prototype.umod = function umod (num) { - return this.divmod(num, 'mod', true).mod; - }; - - // Find Round(`this` / `num`) - BN.prototype.divRound = function divRound (num) { - var dm = this.divmod(num); - - // Fast case - exact division - if (dm.mod.isZero()) return dm.div; - - var mod = dm.div.negative !== 0 ? dm.mod.isub(num) : dm.mod; - - var half = num.ushrn(1); - var r2 = num.andln(1); - var cmp = mod.cmp(half); - - // Round down - if (cmp < 0 || r2 === 1 && cmp === 0) return dm.div; - - // Round up - return dm.div.negative !== 0 ? dm.div.isubn(1) : dm.div.iaddn(1); - }; - - BN.prototype.modn = function modn (num) { - assert(num <= 0x3ffffff); - var p = (1 << 26) % num; - - var acc = 0; - for (var i = this.length - 1; i >= 0; i--) { - acc = (p * acc + (this.words[i] | 0)) % num; - } - - return acc; - }; - - // In-place division by number - BN.prototype.idivn = function idivn (num) { - assert(num <= 0x3ffffff); - - var carry = 0; - for (var i = this.length - 1; i >= 0; i--) { - var w = (this.words[i] | 0) + carry * 0x4000000; - this.words[i] = (w / num) | 0; - carry = w % num; - } - - return this.strip(); - }; - - BN.prototype.divn = function divn (num) { - return this.clone().idivn(num); - }; - - BN.prototype.egcd = function egcd (p) { - assert(p.negative === 0); - assert(!p.isZero()); - - var x = this; - var y = p.clone(); - - if (x.negative !== 0) { - x = x.umod(p); - } else { - x = x.clone(); - } - - // A * x + B * y = x - var A = new BN(1); - var B = new BN(0); - - // C * x + D * y = y - var C = new BN(0); - var D = new BN(1); - - var g = 0; - - while (x.isEven() && y.isEven()) { - x.iushrn(1); - y.iushrn(1); - ++g; - } - - var yp = y.clone(); - var xp = x.clone(); - - while (!x.isZero()) { - for (var i = 0, im = 1; (x.words[0] & im) === 0 && i < 26; ++i, im <<= 1); - if (i > 0) { - x.iushrn(i); - while (i-- > 0) { - if (A.isOdd() || B.isOdd()) { - A.iadd(yp); - B.isub(xp); - } - - A.iushrn(1); - B.iushrn(1); - } - } - - for (var j = 0, jm = 1; (y.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1); - if (j > 0) { - y.iushrn(j); - while (j-- > 0) { - if (C.isOdd() || D.isOdd()) { - C.iadd(yp); - D.isub(xp); - } - - C.iushrn(1); - D.iushrn(1); - } - } - - if (x.cmp(y) >= 0) { - x.isub(y); - A.isub(C); - B.isub(D); - } else { - y.isub(x); - C.isub(A); - D.isub(B); - } - } - - return { - a: C, - b: D, - gcd: y.iushln(g) - }; - }; - - // This is reduced incarnation of the binary EEA - // above, designated to invert members of the - // _prime_ fields F(p) at a maximal speed - BN.prototype._invmp = function _invmp (p) { - assert(p.negative === 0); - assert(!p.isZero()); - - var a = this; - var b = p.clone(); - - if (a.negative !== 0) { - a = a.umod(p); - } else { - a = a.clone(); - } - - var x1 = new BN(1); - var x2 = new BN(0); - - var delta = b.clone(); - - while (a.cmpn(1) > 0 && b.cmpn(1) > 0) { - for (var i = 0, im = 1; (a.words[0] & im) === 0 && i < 26; ++i, im <<= 1); - if (i > 0) { - a.iushrn(i); - while (i-- > 0) { - if (x1.isOdd()) { - x1.iadd(delta); - } - - x1.iushrn(1); - } - } - - for (var j = 0, jm = 1; (b.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1); - if (j > 0) { - b.iushrn(j); - while (j-- > 0) { - if (x2.isOdd()) { - x2.iadd(delta); - } - - x2.iushrn(1); - } - } - - if (a.cmp(b) >= 0) { - a.isub(b); - x1.isub(x2); - } else { - b.isub(a); - x2.isub(x1); - } - } - - var res; - if (a.cmpn(1) === 0) { - res = x1; - } else { - res = x2; - } - - if (res.cmpn(0) < 0) { - res.iadd(p); - } - - return res; - }; - - BN.prototype.gcd = function gcd (num) { - if (this.isZero()) return num.abs(); - if (num.isZero()) return this.abs(); - - var a = this.clone(); - var b = num.clone(); - a.negative = 0; - b.negative = 0; - - // Remove common factor of two - for (var shift = 0; a.isEven() && b.isEven(); shift++) { - a.iushrn(1); - b.iushrn(1); - } - - do { - while (a.isEven()) { - a.iushrn(1); - } - while (b.isEven()) { - b.iushrn(1); - } - - var r = a.cmp(b); - if (r < 0) { - // Swap `a` and `b` to make `a` always bigger than `b` - var t = a; - a = b; - b = t; - } else if (r === 0 || b.cmpn(1) === 0) { - break; - } - - a.isub(b); - } while (true); - - return b.iushln(shift); - }; - - // Invert number in the field F(num) - BN.prototype.invm = function invm (num) { - return this.egcd(num).a.umod(num); - }; - - BN.prototype.isEven = function isEven () { - return (this.words[0] & 1) === 0; - }; - - BN.prototype.isOdd = function isOdd () { - return (this.words[0] & 1) === 1; - }; - - // And first word and num - BN.prototype.andln = function andln (num) { - return this.words[0] & num; - }; - - // Increment at the bit position in-line - BN.prototype.bincn = function bincn (bit) { - assert(typeof bit === 'number'); - var r = bit % 26; - var s = (bit - r) / 26; - var q = 1 << r; - - // Fast case: bit is much higher than all existing words - if (this.length <= s) { - this._expand(s + 1); - this.words[s] |= q; - return this; - } - - // Add bit and propagate, if needed - var carry = q; - for (var i = s; carry !== 0 && i < this.length; i++) { - var w = this.words[i] | 0; - w += carry; - carry = w >>> 26; - w &= 0x3ffffff; - this.words[i] = w; - } - if (carry !== 0) { - this.words[i] = carry; - this.length++; - } - return this; - }; - - BN.prototype.isZero = function isZero () { - return this.length === 1 && this.words[0] === 0; - }; - - BN.prototype.cmpn = function cmpn (num) { - var negative = num < 0; - - if (this.negative !== 0 && !negative) return -1; - if (this.negative === 0 && negative) return 1; - - this.strip(); - - var res; - if (this.length > 1) { - res = 1; - } else { - if (negative) { - num = -num; - } - - assert(num <= 0x3ffffff, 'Number is too big'); - - var w = this.words[0] | 0; - res = w === num ? 0 : w < num ? -1 : 1; - } - if (this.negative !== 0) return -res | 0; - return res; - }; - - // Compare two numbers and return: - // 1 - if `this` > `num` - // 0 - if `this` == `num` - // -1 - if `this` < `num` - BN.prototype.cmp = function cmp (num) { - if (this.negative !== 0 && num.negative === 0) return -1; - if (this.negative === 0 && num.negative !== 0) return 1; - - var res = this.ucmp(num); - if (this.negative !== 0) return -res | 0; - return res; - }; - - // Unsigned comparison - BN.prototype.ucmp = function ucmp (num) { - // At this point both numbers have the same sign - if (this.length > num.length) return 1; - if (this.length < num.length) return -1; - - var res = 0; - for (var i = this.length - 1; i >= 0; i--) { - var a = this.words[i] | 0; - var b = num.words[i] | 0; - - if (a === b) continue; - if (a < b) { - res = -1; - } else if (a > b) { - res = 1; - } - break; - } - return res; - }; - - BN.prototype.gtn = function gtn (num) { - return this.cmpn(num) === 1; - }; - - BN.prototype.gt = function gt (num) { - return this.cmp(num) === 1; - }; - - BN.prototype.gten = function gten (num) { - return this.cmpn(num) >= 0; - }; - - BN.prototype.gte = function gte (num) { - return this.cmp(num) >= 0; - }; - - BN.prototype.ltn = function ltn (num) { - return this.cmpn(num) === -1; - }; - - BN.prototype.lt = function lt (num) { - return this.cmp(num) === -1; - }; - - BN.prototype.lten = function lten (num) { - return this.cmpn(num) <= 0; - }; - - BN.prototype.lte = function lte (num) { - return this.cmp(num) <= 0; - }; - - BN.prototype.eqn = function eqn (num) { - return this.cmpn(num) === 0; - }; - - BN.prototype.eq = function eq (num) { - return this.cmp(num) === 0; - }; - - // - // A reduce context, could be using montgomery or something better, depending - // on the `m` itself. - // - BN.red = function red (num) { - return new Red(num); - }; - - BN.prototype.toRed = function toRed (ctx) { - assert(!this.red, 'Already a number in reduction context'); - assert(this.negative === 0, 'red works only with positives'); - return ctx.convertTo(this)._forceRed(ctx); - }; - - BN.prototype.fromRed = function fromRed () { - assert(this.red, 'fromRed works only with numbers in reduction context'); - return this.red.convertFrom(this); - }; - - BN.prototype._forceRed = function _forceRed (ctx) { - this.red = ctx; - return this; - }; - - BN.prototype.forceRed = function forceRed (ctx) { - assert(!this.red, 'Already a number in reduction context'); - return this._forceRed(ctx); - }; - - BN.prototype.redAdd = function redAdd (num) { - assert(this.red, 'redAdd works only with red numbers'); - return this.red.add(this, num); - }; - - BN.prototype.redIAdd = function redIAdd (num) { - assert(this.red, 'redIAdd works only with red numbers'); - return this.red.iadd(this, num); - }; - - BN.prototype.redSub = function redSub (num) { - assert(this.red, 'redSub works only with red numbers'); - return this.red.sub(this, num); - }; - - BN.prototype.redISub = function redISub (num) { - assert(this.red, 'redISub works only with red numbers'); - return this.red.isub(this, num); - }; - - BN.prototype.redShl = function redShl (num) { - assert(this.red, 'redShl works only with red numbers'); - return this.red.shl(this, num); - }; - - BN.prototype.redMul = function redMul (num) { - assert(this.red, 'redMul works only with red numbers'); - this.red._verify2(this, num); - return this.red.mul(this, num); - }; - - BN.prototype.redIMul = function redIMul (num) { - assert(this.red, 'redMul works only with red numbers'); - this.red._verify2(this, num); - return this.red.imul(this, num); - }; - - BN.prototype.redSqr = function redSqr () { - assert(this.red, 'redSqr works only with red numbers'); - this.red._verify1(this); - return this.red.sqr(this); - }; - - BN.prototype.redISqr = function redISqr () { - assert(this.red, 'redISqr works only with red numbers'); - this.red._verify1(this); - return this.red.isqr(this); - }; - - // Square root over p - BN.prototype.redSqrt = function redSqrt () { - assert(this.red, 'redSqrt works only with red numbers'); - this.red._verify1(this); - return this.red.sqrt(this); - }; - - BN.prototype.redInvm = function redInvm () { - assert(this.red, 'redInvm works only with red numbers'); - this.red._verify1(this); - return this.red.invm(this); - }; - - // Return negative clone of `this` % `red modulo` - BN.prototype.redNeg = function redNeg () { - assert(this.red, 'redNeg works only with red numbers'); - this.red._verify1(this); - return this.red.neg(this); - }; - - BN.prototype.redPow = function redPow (num) { - assert(this.red && !num.red, 'redPow(normalNum)'); - this.red._verify1(this); - return this.red.pow(this, num); - }; - - // Prime numbers with efficient reduction - var primes = { - k256: null, - p224: null, - p192: null, - p25519: null - }; - - // Pseudo-Mersenne prime - function MPrime (name, p) { - // P = 2 ^ N - K - this.name = name; - this.p = new BN(p, 16); - this.n = this.p.bitLength(); - this.k = new BN(1).iushln(this.n).isub(this.p); - - this.tmp = this._tmp(); - } - - MPrime.prototype._tmp = function _tmp () { - var tmp = new BN(null); - tmp.words = new Array(Math.ceil(this.n / 13)); - return tmp; - }; - - MPrime.prototype.ireduce = function ireduce (num) { - // Assumes that `num` is less than `P^2` - // num = HI * (2 ^ N - K) + HI * K + LO = HI * K + LO (mod P) - var r = num; - var rlen; - - do { - this.split(r, this.tmp); - r = this.imulK(r); - r = r.iadd(this.tmp); - rlen = r.bitLength(); - } while (rlen > this.n); - - var cmp = rlen < this.n ? -1 : r.ucmp(this.p); - if (cmp === 0) { - r.words[0] = 0; - r.length = 1; - } else if (cmp > 0) { - r.isub(this.p); - } else { - if (r.strip !== undefined) { - // r is BN v4 instance - r.strip(); - } else { - // r is BN v5 instance - r._strip(); - } - } - - return r; - }; - - MPrime.prototype.split = function split (input, out) { - input.iushrn(this.n, 0, out); - }; - - MPrime.prototype.imulK = function imulK (num) { - return num.imul(this.k); - }; - - function K256 () { - MPrime.call( - this, - 'k256', - 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f'); - } - inherits(K256, MPrime); - - K256.prototype.split = function split (input, output) { - // 256 = 9 * 26 + 22 - var mask = 0x3fffff; - - var outLen = Math.min(input.length, 9); - for (var i = 0; i < outLen; i++) { - output.words[i] = input.words[i]; - } - output.length = outLen; - - if (input.length <= 9) { - input.words[0] = 0; - input.length = 1; - return; - } - - // Shift by 9 limbs - var prev = input.words[9]; - output.words[output.length++] = prev & mask; - - for (i = 10; i < input.length; i++) { - var next = input.words[i] | 0; - input.words[i - 10] = ((next & mask) << 4) | (prev >>> 22); - prev = next; - } - prev >>>= 22; - input.words[i - 10] = prev; - if (prev === 0 && input.length > 10) { - input.length -= 10; - } else { - input.length -= 9; - } - }; - - K256.prototype.imulK = function imulK (num) { - // K = 0x1000003d1 = [ 0x40, 0x3d1 ] - num.words[num.length] = 0; - num.words[num.length + 1] = 0; - num.length += 2; - - // bounded at: 0x40 * 0x3ffffff + 0x3d0 = 0x100000390 - var lo = 0; - for (var i = 0; i < num.length; i++) { - var w = num.words[i] | 0; - lo += w * 0x3d1; - num.words[i] = lo & 0x3ffffff; - lo = w * 0x40 + ((lo / 0x4000000) | 0); - } - - // Fast length reduction - if (num.words[num.length - 1] === 0) { - num.length--; - if (num.words[num.length - 1] === 0) { - num.length--; - } - } - return num; - }; - - function P224 () { - MPrime.call( - this, - 'p224', - 'ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001'); - } - inherits(P224, MPrime); - - function P192 () { - MPrime.call( - this, - 'p192', - 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff'); - } - inherits(P192, MPrime); - - function P25519 () { - // 2 ^ 255 - 19 - MPrime.call( - this, - '25519', - '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed'); - } - inherits(P25519, MPrime); - - P25519.prototype.imulK = function imulK (num) { - // K = 0x13 - var carry = 0; - for (var i = 0; i < num.length; i++) { - var hi = (num.words[i] | 0) * 0x13 + carry; - var lo = hi & 0x3ffffff; - hi >>>= 26; - - num.words[i] = lo; - carry = hi; - } - if (carry !== 0) { - num.words[num.length++] = carry; - } - return num; - }; - - // Exported mostly for testing purposes, use plain name instead - BN._prime = function prime (name) { - // Cached version of prime - if (primes[name]) return primes[name]; - - var prime; - if (name === 'k256') { - prime = new K256(); - } else if (name === 'p224') { - prime = new P224(); - } else if (name === 'p192') { - prime = new P192(); - } else if (name === 'p25519') { - prime = new P25519(); - } else { - throw new Error('Unknown prime ' + name); - } - primes[name] = prime; - - return prime; - }; - - // - // Base reduction engine - // - function Red (m) { - if (typeof m === 'string') { - var prime = BN._prime(m); - this.m = prime.p; - this.prime = prime; - } else { - assert(m.gtn(1), 'modulus must be greater than 1'); - this.m = m; - this.prime = null; - } - } - - Red.prototype._verify1 = function _verify1 (a) { - assert(a.negative === 0, 'red works only with positives'); - assert(a.red, 'red works only with red numbers'); - }; - - Red.prototype._verify2 = function _verify2 (a, b) { - assert((a.negative | b.negative) === 0, 'red works only with positives'); - assert(a.red && a.red === b.red, - 'red works only with red numbers'); - }; - - Red.prototype.imod = function imod (a) { - if (this.prime) return this.prime.ireduce(a)._forceRed(this); - return a.umod(this.m)._forceRed(this); - }; - - Red.prototype.neg = function neg (a) { - if (a.isZero()) { - return a.clone(); - } - - return this.m.sub(a)._forceRed(this); - }; - - Red.prototype.add = function add (a, b) { - this._verify2(a, b); - - var res = a.add(b); - if (res.cmp(this.m) >= 0) { - res.isub(this.m); - } - return res._forceRed(this); - }; - - Red.prototype.iadd = function iadd (a, b) { - this._verify2(a, b); - - var res = a.iadd(b); - if (res.cmp(this.m) >= 0) { - res.isub(this.m); - } - return res; - }; - - Red.prototype.sub = function sub (a, b) { - this._verify2(a, b); - - var res = a.sub(b); - if (res.cmpn(0) < 0) { - res.iadd(this.m); - } - return res._forceRed(this); - }; - - Red.prototype.isub = function isub (a, b) { - this._verify2(a, b); - - var res = a.isub(b); - if (res.cmpn(0) < 0) { - res.iadd(this.m); - } - return res; - }; - - Red.prototype.shl = function shl (a, num) { - this._verify1(a); - return this.imod(a.ushln(num)); - }; - - Red.prototype.imul = function imul (a, b) { - this._verify2(a, b); - return this.imod(a.imul(b)); - }; - - Red.prototype.mul = function mul (a, b) { - this._verify2(a, b); - return this.imod(a.mul(b)); - }; - - Red.prototype.isqr = function isqr (a) { - return this.imul(a, a.clone()); - }; - - Red.prototype.sqr = function sqr (a) { - return this.mul(a, a); - }; - - Red.prototype.sqrt = function sqrt (a) { - if (a.isZero()) return a.clone(); - - var mod3 = this.m.andln(3); - assert(mod3 % 2 === 1); - - // Fast case - if (mod3 === 3) { - var pow = this.m.add(new BN(1)).iushrn(2); - return this.pow(a, pow); - } - - // Tonelli-Shanks algorithm (Totally unoptimized and slow) - // - // Find Q and S, that Q * 2 ^ S = (P - 1) - var q = this.m.subn(1); - var s = 0; - while (!q.isZero() && q.andln(1) === 0) { - s++; - q.iushrn(1); - } - assert(!q.isZero()); - - var one = new BN(1).toRed(this); - var nOne = one.redNeg(); - - // Find quadratic non-residue - // NOTE: Max is such because of generalized Riemann hypothesis. - var lpow = this.m.subn(1).iushrn(1); - var z = this.m.bitLength(); - z = new BN(2 * z * z).toRed(this); - - while (this.pow(z, lpow).cmp(nOne) !== 0) { - z.redIAdd(nOne); - } - - var c = this.pow(z, q); - var r = this.pow(a, q.addn(1).iushrn(1)); - var t = this.pow(a, q); - var m = s; - while (t.cmp(one) !== 0) { - var tmp = t; - for (var i = 0; tmp.cmp(one) !== 0; i++) { - tmp = tmp.redSqr(); - } - assert(i < m); - var b = this.pow(c, new BN(1).iushln(m - i - 1)); - - r = r.redMul(b); - c = b.redSqr(); - t = t.redMul(c); - m = i; - } - - return r; - }; - - Red.prototype.invm = function invm (a) { - var inv = a._invmp(this.m); - if (inv.negative !== 0) { - inv.negative = 0; - return this.imod(inv).redNeg(); - } else { - return this.imod(inv); - } - }; - - Red.prototype.pow = function pow (a, num) { - if (num.isZero()) return new BN(1).toRed(this); - if (num.cmpn(1) === 0) return a.clone(); - - var windowSize = 4; - var wnd = new Array(1 << windowSize); - wnd[0] = new BN(1).toRed(this); - wnd[1] = a; - for (var i = 2; i < wnd.length; i++) { - wnd[i] = this.mul(wnd[i - 1], a); - } - - var res = wnd[0]; - var current = 0; - var currentLen = 0; - var start = num.bitLength() % 26; - if (start === 0) { - start = 26; - } - - for (i = num.length - 1; i >= 0; i--) { - var word = num.words[i]; - for (var j = start - 1; j >= 0; j--) { - var bit = (word >> j) & 1; - if (res !== wnd[0]) { - res = this.sqr(res); - } - - if (bit === 0 && current === 0) { - currentLen = 0; - continue; - } - - current <<= 1; - current |= bit; - currentLen++; - if (currentLen !== windowSize && (i !== 0 || j !== 0)) continue; - - res = this.mul(res, wnd[current]); - currentLen = 0; - current = 0; - } - start = 26; - } - - return res; - }; - - Red.prototype.convertTo = function convertTo (num) { - var r = num.umod(this.m); - - return r === num ? r.clone() : r; - }; - - Red.prototype.convertFrom = function convertFrom (num) { - var res = num.clone(); - res.red = null; - return res; - }; - - // - // Montgomery method engine - // - - BN.mont = function mont (num) { - return new Mont(num); - }; - - function Mont (m) { - Red.call(this, m); - - this.shift = this.m.bitLength(); - if (this.shift % 26 !== 0) { - this.shift += 26 - (this.shift % 26); - } - - this.r = new BN(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); - } - inherits(Mont, Red); - - Mont.prototype.convertTo = function convertTo (num) { - return this.imod(num.ushln(this.shift)); - }; - - Mont.prototype.convertFrom = function convertFrom (num) { - var r = this.imod(num.mul(this.rinv)); - r.red = null; - return r; - }; - - Mont.prototype.imul = function imul (a, b) { - if (a.isZero() || b.isZero()) { - a.words[0] = 0; - a.length = 1; - return a; - } - - var t = a.imul(b); - var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m); - var u = t.isub(c).iushrn(this.shift); - var res = u; - - if (u.cmp(this.m) >= 0) { - res = u.isub(this.m); - } else if (u.cmpn(0) < 0) { - res = u.iadd(this.m); - } - - return res._forceRed(this); - }; - - Mont.prototype.mul = function mul (a, b) { - if (a.isZero() || b.isZero()) return new BN(0)._forceRed(this); - - var t = a.mul(b); - var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m); - var u = t.isub(c).iushrn(this.shift); - var res = u; - if (u.cmp(this.m) >= 0) { - res = u.isub(this.m); - } else if (u.cmpn(0) < 0) { - res = u.iadd(this.m); - } - - return res._forceRed(this); - }; - - Mont.prototype.invm = function invm (a) { - // (AR)^-1 * R^2 = (A^-1 * R^-1) * R^2 = A^-1 * R - var res = this.imod(a._invmp(this.m).mul(this.r2)); - return res._forceRed(this); - }; -})( false || module, this); - - -/***/ }), - -/***/ 31469: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.decodeXML = exports.decodeHTMLStrict = exports.decodeHTMLAttribute = exports.decodeHTML = exports.determineBranch = exports.EntityDecoder = exports.DecodingMode = exports.BinTrieFlags = exports.fromCodePoint = exports.replaceCodePoint = exports.decodeCodePoint = exports.xmlDecodeTree = exports.htmlDecodeTree = void 0; -var decode_data_html_js_1 = __importDefault(__nccwpck_require__(90828)); -exports.htmlDecodeTree = decode_data_html_js_1.default; -var decode_data_xml_js_1 = __importDefault(__nccwpck_require__(62060)); -exports.xmlDecodeTree = decode_data_xml_js_1.default; -var decode_codepoint_js_1 = __importStar(__nccwpck_require__(74487)); -exports.decodeCodePoint = decode_codepoint_js_1.default; -var decode_codepoint_js_2 = __nccwpck_require__(74487); -Object.defineProperty(exports, "replaceCodePoint", ({ enumerable: true, get: function () { return decode_codepoint_js_2.replaceCodePoint; } })); -Object.defineProperty(exports, "fromCodePoint", ({ enumerable: true, get: function () { return decode_codepoint_js_2.fromCodePoint; } })); -var CharCodes; -(function (CharCodes) { - CharCodes[CharCodes["NUM"] = 35] = "NUM"; - CharCodes[CharCodes["SEMI"] = 59] = "SEMI"; - CharCodes[CharCodes["EQUALS"] = 61] = "EQUALS"; - CharCodes[CharCodes["ZERO"] = 48] = "ZERO"; - CharCodes[CharCodes["NINE"] = 57] = "NINE"; - CharCodes[CharCodes["LOWER_A"] = 97] = "LOWER_A"; - CharCodes[CharCodes["LOWER_F"] = 102] = "LOWER_F"; - CharCodes[CharCodes["LOWER_X"] = 120] = "LOWER_X"; - CharCodes[CharCodes["LOWER_Z"] = 122] = "LOWER_Z"; - CharCodes[CharCodes["UPPER_A"] = 65] = "UPPER_A"; - CharCodes[CharCodes["UPPER_F"] = 70] = "UPPER_F"; - CharCodes[CharCodes["UPPER_Z"] = 90] = "UPPER_Z"; -})(CharCodes || (CharCodes = {})); -/** Bit that needs to be set to convert an upper case ASCII character to lower case */ -var TO_LOWER_BIT = 32; -var BinTrieFlags; -(function (BinTrieFlags) { - BinTrieFlags[BinTrieFlags["VALUE_LENGTH"] = 49152] = "VALUE_LENGTH"; - BinTrieFlags[BinTrieFlags["BRANCH_LENGTH"] = 16256] = "BRANCH_LENGTH"; - BinTrieFlags[BinTrieFlags["JUMP_TABLE"] = 127] = "JUMP_TABLE"; -})(BinTrieFlags = exports.BinTrieFlags || (exports.BinTrieFlags = {})); -function isNumber(code) { - return code >= CharCodes.ZERO && code <= CharCodes.NINE; -} -function isHexadecimalCharacter(code) { - return ((code >= CharCodes.UPPER_A && code <= CharCodes.UPPER_F) || - (code >= CharCodes.LOWER_A && code <= CharCodes.LOWER_F)); -} -function isAsciiAlphaNumeric(code) { - return ((code >= CharCodes.UPPER_A && code <= CharCodes.UPPER_Z) || - (code >= CharCodes.LOWER_A && code <= CharCodes.LOWER_Z) || - isNumber(code)); -} -/** - * Checks if the given character is a valid end character for an entity in an attribute. - * - * Attribute values that aren't terminated properly aren't parsed, and shouldn't lead to a parser error. - * See the example in https://html.spec.whatwg.org/multipage/parsing.html#named-character-reference-state - */ -function isEntityInAttributeInvalidEnd(code) { - return code === CharCodes.EQUALS || isAsciiAlphaNumeric(code); -} -var EntityDecoderState; -(function (EntityDecoderState) { - EntityDecoderState[EntityDecoderState["EntityStart"] = 0] = "EntityStart"; - EntityDecoderState[EntityDecoderState["NumericStart"] = 1] = "NumericStart"; - EntityDecoderState[EntityDecoderState["NumericDecimal"] = 2] = "NumericDecimal"; - EntityDecoderState[EntityDecoderState["NumericHex"] = 3] = "NumericHex"; - EntityDecoderState[EntityDecoderState["NamedEntity"] = 4] = "NamedEntity"; -})(EntityDecoderState || (EntityDecoderState = {})); -var DecodingMode; -(function (DecodingMode) { - /** Entities in text nodes that can end with any character. */ - DecodingMode[DecodingMode["Legacy"] = 0] = "Legacy"; - /** Only allow entities terminated with a semicolon. */ - DecodingMode[DecodingMode["Strict"] = 1] = "Strict"; - /** Entities in attributes have limitations on ending characters. */ - DecodingMode[DecodingMode["Attribute"] = 2] = "Attribute"; -})(DecodingMode = exports.DecodingMode || (exports.DecodingMode = {})); -/** - * Token decoder with support of writing partial entities. - */ -var EntityDecoder = /** @class */ (function () { - function EntityDecoder( - /** The tree used to decode entities. */ - decodeTree, - /** - * The function that is called when a codepoint is decoded. - * - * For multi-byte named entities, this will be called multiple times, - * with the second codepoint, and the same `consumed` value. - * - * @param codepoint The decoded codepoint. - * @param consumed The number of bytes consumed by the decoder. - */ - emitCodePoint, - /** An object that is used to produce errors. */ - errors) { - this.decodeTree = decodeTree; - this.emitCodePoint = emitCodePoint; - this.errors = errors; - /** The current state of the decoder. */ - this.state = EntityDecoderState.EntityStart; - /** Characters that were consumed while parsing an entity. */ - this.consumed = 1; - /** - * The result of the entity. - * - * Either the result index of a numeric entity, or the codepoint of a - * numeric entity. - */ - this.result = 0; - /** The current index in the decode tree. */ - this.treeIndex = 0; - /** The number of characters that were consumed in excess. */ - this.excess = 1; - /** The mode in which the decoder is operating. */ - this.decodeMode = DecodingMode.Strict; - } - /** Resets the instance to make it reusable. */ - EntityDecoder.prototype.startEntity = function (decodeMode) { - this.decodeMode = decodeMode; - this.state = EntityDecoderState.EntityStart; - this.result = 0; - this.treeIndex = 0; - this.excess = 1; - this.consumed = 1; - }; - /** - * Write an entity to the decoder. This can be called multiple times with partial entities. - * If the entity is incomplete, the decoder will return -1. - * - * Mirrors the implementation of `getDecoder`, but with the ability to stop decoding if the - * entity is incomplete, and resume when the next string is written. - * - * @param string The string containing the entity (or a continuation of the entity). - * @param offset The offset at which the entity begins. Should be 0 if this is not the first call. - * @returns The number of characters that were consumed, or -1 if the entity is incomplete. - */ - EntityDecoder.prototype.write = function (str, offset) { - switch (this.state) { - case EntityDecoderState.EntityStart: { - if (str.charCodeAt(offset) === CharCodes.NUM) { - this.state = EntityDecoderState.NumericStart; - this.consumed += 1; - return this.stateNumericStart(str, offset + 1); - } - this.state = EntityDecoderState.NamedEntity; - return this.stateNamedEntity(str, offset); - } - case EntityDecoderState.NumericStart: { - return this.stateNumericStart(str, offset); - } - case EntityDecoderState.NumericDecimal: { - return this.stateNumericDecimal(str, offset); - } - case EntityDecoderState.NumericHex: { - return this.stateNumericHex(str, offset); - } - case EntityDecoderState.NamedEntity: { - return this.stateNamedEntity(str, offset); - } - } - }; - /** - * Switches between the numeric decimal and hexadecimal states. - * - * Equivalent to the `Numeric character reference state` in the HTML spec. - * - * @param str The string containing the entity (or a continuation of the entity). - * @param offset The current offset. - * @returns The number of characters that were consumed, or -1 if the entity is incomplete. - */ - EntityDecoder.prototype.stateNumericStart = function (str, offset) { - if (offset >= str.length) { - return -1; - } - if ((str.charCodeAt(offset) | TO_LOWER_BIT) === CharCodes.LOWER_X) { - this.state = EntityDecoderState.NumericHex; - this.consumed += 1; - return this.stateNumericHex(str, offset + 1); - } - this.state = EntityDecoderState.NumericDecimal; - return this.stateNumericDecimal(str, offset); - }; - EntityDecoder.prototype.addToNumericResult = function (str, start, end, base) { - if (start !== end) { - var digitCount = end - start; - this.result = - this.result * Math.pow(base, digitCount) + - parseInt(str.substr(start, digitCount), base); - this.consumed += digitCount; - } - }; - /** - * Parses a hexadecimal numeric entity. - * - * Equivalent to the `Hexademical character reference state` in the HTML spec. - * - * @param str The string containing the entity (or a continuation of the entity). - * @param offset The current offset. - * @returns The number of characters that were consumed, or -1 if the entity is incomplete. - */ - EntityDecoder.prototype.stateNumericHex = function (str, offset) { - var startIdx = offset; - while (offset < str.length) { - var char = str.charCodeAt(offset); - if (isNumber(char) || isHexadecimalCharacter(char)) { - offset += 1; - } - else { - this.addToNumericResult(str, startIdx, offset, 16); - return this.emitNumericEntity(char, 3); - } - } - this.addToNumericResult(str, startIdx, offset, 16); - return -1; - }; - /** - * Parses a decimal numeric entity. - * - * Equivalent to the `Decimal character reference state` in the HTML spec. - * - * @param str The string containing the entity (or a continuation of the entity). - * @param offset The current offset. - * @returns The number of characters that were consumed, or -1 if the entity is incomplete. - */ - EntityDecoder.prototype.stateNumericDecimal = function (str, offset) { - var startIdx = offset; - while (offset < str.length) { - var char = str.charCodeAt(offset); - if (isNumber(char)) { - offset += 1; - } - else { - this.addToNumericResult(str, startIdx, offset, 10); - return this.emitNumericEntity(char, 2); - } - } - this.addToNumericResult(str, startIdx, offset, 10); - return -1; - }; - /** - * Validate and emit a numeric entity. - * - * Implements the logic from the `Hexademical character reference start - * state` and `Numeric character reference end state` in the HTML spec. - * - * @param lastCp The last code point of the entity. Used to see if the - * entity was terminated with a semicolon. - * @param expectedLength The minimum number of characters that should be - * consumed. Used to validate that at least one digit - * was consumed. - * @returns The number of characters that were consumed. - */ - EntityDecoder.prototype.emitNumericEntity = function (lastCp, expectedLength) { - var _a; - // Ensure we consumed at least one digit. - if (this.consumed <= expectedLength) { - (_a = this.errors) === null || _a === void 0 ? void 0 : _a.absenceOfDigitsInNumericCharacterReference(this.consumed); - return 0; - } - // Figure out if this is a legit end of the entity - if (lastCp === CharCodes.SEMI) { - this.consumed += 1; - } - else if (this.decodeMode === DecodingMode.Strict) { - return 0; - } - this.emitCodePoint((0, decode_codepoint_js_1.replaceCodePoint)(this.result), this.consumed); - if (this.errors) { - if (lastCp !== CharCodes.SEMI) { - this.errors.missingSemicolonAfterCharacterReference(); - } - this.errors.validateNumericCharacterReference(this.result); - } - return this.consumed; - }; - /** - * Parses a named entity. - * - * Equivalent to the `Named character reference state` in the HTML spec. - * - * @param str The string containing the entity (or a continuation of the entity). - * @param offset The current offset. - * @returns The number of characters that were consumed, or -1 if the entity is incomplete. - */ - EntityDecoder.prototype.stateNamedEntity = function (str, offset) { - var decodeTree = this.decodeTree; - var current = decodeTree[this.treeIndex]; - // The mask is the number of bytes of the value, including the current byte. - var valueLength = (current & BinTrieFlags.VALUE_LENGTH) >> 14; - for (; offset < str.length; offset++, this.excess++) { - var char = str.charCodeAt(offset); - this.treeIndex = determineBranch(decodeTree, current, this.treeIndex + Math.max(1, valueLength), char); - if (this.treeIndex < 0) { - return this.result === 0 || - // If we are parsing an attribute - (this.decodeMode === DecodingMode.Attribute && - // We shouldn't have consumed any characters after the entity, - (valueLength === 0 || - // And there should be no invalid characters. - isEntityInAttributeInvalidEnd(char))) - ? 0 - : this.emitNotTerminatedNamedEntity(); - } - current = decodeTree[this.treeIndex]; - valueLength = (current & BinTrieFlags.VALUE_LENGTH) >> 14; - // If the branch is a value, store it and continue - if (valueLength !== 0) { - // If the entity is terminated by a semicolon, we are done. - if (char === CharCodes.SEMI) { - return this.emitNamedEntityData(this.treeIndex, valueLength, this.consumed + this.excess); - } - // If we encounter a non-terminated (legacy) entity while parsing strictly, then ignore it. - if (this.decodeMode !== DecodingMode.Strict) { - this.result = this.treeIndex; - this.consumed += this.excess; - this.excess = 0; - } - } - } - return -1; - }; - /** - * Emit a named entity that was not terminated with a semicolon. - * - * @returns The number of characters consumed. - */ - EntityDecoder.prototype.emitNotTerminatedNamedEntity = function () { - var _a; - var _b = this, result = _b.result, decodeTree = _b.decodeTree; - var valueLength = (decodeTree[result] & BinTrieFlags.VALUE_LENGTH) >> 14; - this.emitNamedEntityData(result, valueLength, this.consumed); - (_a = this.errors) === null || _a === void 0 ? void 0 : _a.missingSemicolonAfterCharacterReference(); - return this.consumed; - }; - /** - * Emit a named entity. - * - * @param result The index of the entity in the decode tree. - * @param valueLength The number of bytes in the entity. - * @param consumed The number of characters consumed. - * - * @returns The number of characters consumed. - */ - EntityDecoder.prototype.emitNamedEntityData = function (result, valueLength, consumed) { - var decodeTree = this.decodeTree; - this.emitCodePoint(valueLength === 1 - ? decodeTree[result] & ~BinTrieFlags.VALUE_LENGTH - : decodeTree[result + 1], consumed); - if (valueLength === 3) { - // For multi-byte values, we need to emit the second byte. - this.emitCodePoint(decodeTree[result + 2], consumed); - } - return consumed; - }; - /** - * Signal to the parser that the end of the input was reached. - * - * Remaining data will be emitted and relevant errors will be produced. - * - * @returns The number of characters consumed. - */ - EntityDecoder.prototype.end = function () { - var _a; - switch (this.state) { - case EntityDecoderState.NamedEntity: { - // Emit a named entity if we have one. - return this.result !== 0 && - (this.decodeMode !== DecodingMode.Attribute || - this.result === this.treeIndex) - ? this.emitNotTerminatedNamedEntity() - : 0; - } - // Otherwise, emit a numeric entity if we have one. - case EntityDecoderState.NumericDecimal: { - return this.emitNumericEntity(0, 2); - } - case EntityDecoderState.NumericHex: { - return this.emitNumericEntity(0, 3); - } - case EntityDecoderState.NumericStart: { - (_a = this.errors) === null || _a === void 0 ? void 0 : _a.absenceOfDigitsInNumericCharacterReference(this.consumed); - return 0; - } - case EntityDecoderState.EntityStart: { - // Return 0 if we have no entity. - return 0; - } - } - }; - return EntityDecoder; -}()); -exports.EntityDecoder = EntityDecoder; -/** - * Creates a function that decodes entities in a string. - * - * @param decodeTree The decode tree. - * @returns A function that decodes entities in a string. - */ -function getDecoder(decodeTree) { - var ret = ""; - var decoder = new EntityDecoder(decodeTree, function (str) { return (ret += (0, decode_codepoint_js_1.fromCodePoint)(str)); }); - return function decodeWithTrie(str, decodeMode) { - var lastIndex = 0; - var offset = 0; - while ((offset = str.indexOf("&", offset)) >= 0) { - ret += str.slice(lastIndex, offset); - decoder.startEntity(decodeMode); - var len = decoder.write(str, - // Skip the "&" - offset + 1); - if (len < 0) { - lastIndex = offset + decoder.end(); - break; - } - lastIndex = offset + len; - // If `len` is 0, skip the current `&` and continue. - offset = len === 0 ? lastIndex + 1 : lastIndex; - } - var result = ret + str.slice(lastIndex); - // Make sure we don't keep a reference to the final string. - ret = ""; - return result; - }; -} -/** - * Determines the branch of the current node that is taken given the current - * character. This function is used to traverse the trie. - * - * @param decodeTree The trie. - * @param current The current node. - * @param nodeIdx The index right after the current node and its value. - * @param char The current character. - * @returns The index of the next node, or -1 if no branch is taken. - */ -function determineBranch(decodeTree, current, nodeIdx, char) { - var branchCount = (current & BinTrieFlags.BRANCH_LENGTH) >> 7; - var jumpOffset = current & BinTrieFlags.JUMP_TABLE; - // Case 1: Single branch encoded in jump offset - if (branchCount === 0) { - return jumpOffset !== 0 && char === jumpOffset ? nodeIdx : -1; - } - // Case 2: Multiple branches encoded in jump table - if (jumpOffset) { - var value = char - jumpOffset; - return value < 0 || value >= branchCount - ? -1 - : decodeTree[nodeIdx + value] - 1; - } - // Case 3: Multiple branches encoded in dictionary - // Binary search for the character. - var lo = nodeIdx; - var hi = lo + branchCount - 1; - while (lo <= hi) { - var mid = (lo + hi) >>> 1; - var midVal = decodeTree[mid]; - if (midVal < char) { - lo = mid + 1; - } - else if (midVal > char) { - hi = mid - 1; - } - else { - return decodeTree[mid + branchCount]; - } - } - return -1; -} -exports.determineBranch = determineBranch; -var htmlDecoder = getDecoder(decode_data_html_js_1.default); -var xmlDecoder = getDecoder(decode_data_xml_js_1.default); -/** - * Decodes an HTML string. - * - * @param str The string to decode. - * @param mode The decoding mode. - * @returns The decoded string. - */ -function decodeHTML(str, mode) { - if (mode === void 0) { mode = DecodingMode.Legacy; } - return htmlDecoder(str, mode); -} -exports.decodeHTML = decodeHTML; -/** - * Decodes an HTML string in an attribute. - * - * @param str The string to decode. - * @returns The decoded string. - */ -function decodeHTMLAttribute(str) { - return htmlDecoder(str, DecodingMode.Attribute); -} -exports.decodeHTMLAttribute = decodeHTMLAttribute; -/** - * Decodes an HTML string, requiring all entities to be terminated by a semicolon. - * - * @param str The string to decode. - * @returns The decoded string. - */ -function decodeHTMLStrict(str) { - return htmlDecoder(str, DecodingMode.Strict); -} -exports.decodeHTMLStrict = decodeHTMLStrict; -/** - * Decodes an XML string, requiring all entities to be terminated by a semicolon. - * - * @param str The string to decode. - * @returns The decoded string. - */ -function decodeXML(str) { - return xmlDecoder(str, DecodingMode.Strict); -} -exports.decodeXML = decodeXML; -//# sourceMappingURL=decode.js.map - -/***/ }), - -/***/ 74487: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -// Adapted from https://github.com/mathiasbynens/he/blob/36afe179392226cf1b6ccdb16ebbb7a5a844d93a/src/he.js#L106-L134 -var _a; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.replaceCodePoint = exports.fromCodePoint = void 0; -var decodeMap = new Map([ - [0, 65533], - // C1 Unicode control character reference replacements - [128, 8364], - [130, 8218], - [131, 402], - [132, 8222], - [133, 8230], - [134, 8224], - [135, 8225], - [136, 710], - [137, 8240], - [138, 352], - [139, 8249], - [140, 338], - [142, 381], - [145, 8216], - [146, 8217], - [147, 8220], - [148, 8221], - [149, 8226], - [150, 8211], - [151, 8212], - [152, 732], - [153, 8482], - [154, 353], - [155, 8250], - [156, 339], - [158, 382], - [159, 376], -]); -/** - * Polyfill for `String.fromCodePoint`. It is used to create a string from a Unicode code point. - */ -exports.fromCodePoint = -// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition, node/no-unsupported-features/es-builtins -(_a = String.fromCodePoint) !== null && _a !== void 0 ? _a : function (codePoint) { - var output = ""; - if (codePoint > 0xffff) { - codePoint -= 0x10000; - output += String.fromCharCode(((codePoint >>> 10) & 0x3ff) | 0xd800); - codePoint = 0xdc00 | (codePoint & 0x3ff); - } - output += String.fromCharCode(codePoint); - return output; -}; -/** - * Replace the given code point with a replacement character if it is a - * surrogate or is outside the valid range. Otherwise return the code - * point unchanged. - */ -function replaceCodePoint(codePoint) { - var _a; - if ((codePoint >= 0xd800 && codePoint <= 0xdfff) || codePoint > 0x10ffff) { - return 0xfffd; - } - return (_a = decodeMap.get(codePoint)) !== null && _a !== void 0 ? _a : codePoint; -} -exports.replaceCodePoint = replaceCodePoint; -/** - * Replace the code point if relevant, then convert it to a string. - * - * @deprecated Use `fromCodePoint(replaceCodePoint(codePoint))` instead. - * @param codePoint The code point to decode. - * @returns The decoded code point. - */ -function decodeCodePoint(codePoint) { - return (0, exports.fromCodePoint)(replaceCodePoint(codePoint)); -} -exports["default"] = decodeCodePoint; -//# sourceMappingURL=decode_codepoint.js.map - -/***/ }), - -/***/ 6104: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.escapeText = exports.escapeAttribute = exports.escapeUTF8 = exports.escape = exports.encodeXML = exports.getCodePoint = exports.xmlReplacer = void 0; -exports.xmlReplacer = /["&'<>$\x80-\uFFFF]/g; -var xmlCodeMap = new Map([ - [34, """], - [38, "&"], - [39, "'"], - [60, "<"], - [62, ">"], -]); -// For compatibility with node < 4, we wrap `codePointAt` -exports.getCodePoint = -// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -String.prototype.codePointAt != null - ? function (str, index) { return str.codePointAt(index); } - : // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae - function (c, index) { - return (c.charCodeAt(index) & 0xfc00) === 0xd800 - ? (c.charCodeAt(index) - 0xd800) * 0x400 + - c.charCodeAt(index + 1) - - 0xdc00 + - 0x10000 - : c.charCodeAt(index); - }; -/** - * Encodes all non-ASCII characters, as well as characters not valid in XML - * documents using XML entities. - * - * If a character has no equivalent entity, a - * numeric hexadecimal reference (eg. `ü`) will be used. - */ -function encodeXML(str) { - var ret = ""; - var lastIdx = 0; - var match; - while ((match = exports.xmlReplacer.exec(str)) !== null) { - var i = match.index; - var char = str.charCodeAt(i); - var next = xmlCodeMap.get(char); - if (next !== undefined) { - ret += str.substring(lastIdx, i) + next; - lastIdx = i + 1; - } - else { - ret += "".concat(str.substring(lastIdx, i), "&#x").concat((0, exports.getCodePoint)(str, i).toString(16), ";"); - // Increase by 1 if we have a surrogate pair - lastIdx = exports.xmlReplacer.lastIndex += Number((char & 0xfc00) === 0xd800); - } - } - return ret + str.substr(lastIdx); -} -exports.encodeXML = encodeXML; -/** - * Encodes all non-ASCII characters, as well as characters not valid in XML - * documents using numeric hexadecimal reference (eg. `ü`). - * - * Have a look at `escapeUTF8` if you want a more concise output at the expense - * of reduced transportability. - * - * @param data String to escape. - */ -exports.escape = encodeXML; -/** - * Creates a function that escapes all characters matched by the given regular - * expression using the given map of characters to escape to their entities. - * - * @param regex Regular expression to match characters to escape. - * @param map Map of characters to escape to their entities. - * - * @returns Function that escapes all characters matched by the given regular - * expression using the given map of characters to escape to their entities. - */ -function getEscaper(regex, map) { - return function escape(data) { - var match; - var lastIdx = 0; - var result = ""; - while ((match = regex.exec(data))) { - if (lastIdx !== match.index) { - result += data.substring(lastIdx, match.index); - } - // We know that this character will be in the map. - result += map.get(match[0].charCodeAt(0)); - // Every match will be of length 1 - lastIdx = match.index + 1; - } - return result + data.substring(lastIdx); - }; -} -/** - * Encodes all characters not valid in XML documents using XML entities. - * - * Note that the output will be character-set dependent. - * - * @param data String to escape. - */ -exports.escapeUTF8 = getEscaper(/[&<>'"]/g, xmlCodeMap); -/** - * Encodes all characters that have to be escaped in HTML attributes, - * following {@link https://html.spec.whatwg.org/multipage/parsing.html#escapingString}. - * - * @param data String to escape. - */ -exports.escapeAttribute = getEscaper(/["&\u00A0]/g, new Map([ - [34, """], - [38, "&"], - [160, " "], -])); -/** - * Encodes all characters that have to be escaped in HTML text, - * following {@link https://html.spec.whatwg.org/multipage/parsing.html#escapingString}. - * - * @param data String to escape. - */ -exports.escapeText = getEscaper(/[&<>\u00A0]/g, new Map([ - [38, "&"], - [60, "<"], - [62, ">"], - [160, " "], -])); -//# sourceMappingURL=escape.js.map - -/***/ }), - -/***/ 90828: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -// Generated using scripts/write-decode-map.ts -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports["default"] = new Uint16Array( -// prettier-ignore -"\u1d41<\xd5\u0131\u028a\u049d\u057b\u05d0\u0675\u06de\u07a2\u07d6\u080f\u0a4a\u0a91\u0da1\u0e6d\u0f09\u0f26\u10ca\u1228\u12e1\u1415\u149d\u14c3\u14df\u1525\0\0\0\0\0\0\u156b\u16cd\u198d\u1c12\u1ddd\u1f7e\u2060\u21b0\u228d\u23c0\u23fb\u2442\u2824\u2912\u2d08\u2e48\u2fce\u3016\u32ba\u3639\u37ac\u38fe\u3a28\u3a71\u3ae0\u3b2e\u0800EMabcfglmnoprstu\\bfms\x7f\x84\x8b\x90\x95\x98\xa6\xb3\xb9\xc8\xcflig\u803b\xc6\u40c6P\u803b&\u4026cute\u803b\xc1\u40c1reve;\u4102\u0100iyx}rc\u803b\xc2\u40c2;\u4410r;\uc000\ud835\udd04rave\u803b\xc0\u40c0pha;\u4391acr;\u4100d;\u6a53\u0100gp\x9d\xa1on;\u4104f;\uc000\ud835\udd38plyFunction;\u6061ing\u803b\xc5\u40c5\u0100cs\xbe\xc3r;\uc000\ud835\udc9cign;\u6254ilde\u803b\xc3\u40c3ml\u803b\xc4\u40c4\u0400aceforsu\xe5\xfb\xfe\u0117\u011c\u0122\u0127\u012a\u0100cr\xea\xf2kslash;\u6216\u0176\xf6\xf8;\u6ae7ed;\u6306y;\u4411\u0180crt\u0105\u010b\u0114ause;\u6235noullis;\u612ca;\u4392r;\uc000\ud835\udd05pf;\uc000\ud835\udd39eve;\u42d8c\xf2\u0113mpeq;\u624e\u0700HOacdefhilorsu\u014d\u0151\u0156\u0180\u019e\u01a2\u01b5\u01b7\u01ba\u01dc\u0215\u0273\u0278\u027ecy;\u4427PY\u803b\xa9\u40a9\u0180cpy\u015d\u0162\u017aute;\u4106\u0100;i\u0167\u0168\u62d2talDifferentialD;\u6145leys;\u612d\u0200aeio\u0189\u018e\u0194\u0198ron;\u410cdil\u803b\xc7\u40c7rc;\u4108nint;\u6230ot;\u410a\u0100dn\u01a7\u01adilla;\u40b8terDot;\u40b7\xf2\u017fi;\u43a7rcle\u0200DMPT\u01c7\u01cb\u01d1\u01d6ot;\u6299inus;\u6296lus;\u6295imes;\u6297o\u0100cs\u01e2\u01f8kwiseContourIntegral;\u6232eCurly\u0100DQ\u0203\u020foubleQuote;\u601duote;\u6019\u0200lnpu\u021e\u0228\u0247\u0255on\u0100;e\u0225\u0226\u6237;\u6a74\u0180git\u022f\u0236\u023aruent;\u6261nt;\u622fourIntegral;\u622e\u0100fr\u024c\u024e;\u6102oduct;\u6210nterClockwiseContourIntegral;\u6233oss;\u6a2fcr;\uc000\ud835\udc9ep\u0100;C\u0284\u0285\u62d3ap;\u624d\u0580DJSZacefios\u02a0\u02ac\u02b0\u02b4\u02b8\u02cb\u02d7\u02e1\u02e6\u0333\u048d\u0100;o\u0179\u02a5trahd;\u6911cy;\u4402cy;\u4405cy;\u440f\u0180grs\u02bf\u02c4\u02c7ger;\u6021r;\u61a1hv;\u6ae4\u0100ay\u02d0\u02d5ron;\u410e;\u4414l\u0100;t\u02dd\u02de\u6207a;\u4394r;\uc000\ud835\udd07\u0100af\u02eb\u0327\u0100cm\u02f0\u0322ritical\u0200ADGT\u0300\u0306\u0316\u031ccute;\u40b4o\u0174\u030b\u030d;\u42d9bleAcute;\u42ddrave;\u4060ilde;\u42dcond;\u62c4ferentialD;\u6146\u0470\u033d\0\0\0\u0342\u0354\0\u0405f;\uc000\ud835\udd3b\u0180;DE\u0348\u0349\u034d\u40a8ot;\u60dcqual;\u6250ble\u0300CDLRUV\u0363\u0372\u0382\u03cf\u03e2\u03f8ontourIntegra\xec\u0239o\u0274\u0379\0\0\u037b\xbb\u0349nArrow;\u61d3\u0100eo\u0387\u03a4ft\u0180ART\u0390\u0396\u03a1rrow;\u61d0ightArrow;\u61d4e\xe5\u02cang\u0100LR\u03ab\u03c4eft\u0100AR\u03b3\u03b9rrow;\u67f8ightArrow;\u67faightArrow;\u67f9ight\u0100AT\u03d8\u03derrow;\u61d2ee;\u62a8p\u0241\u03e9\0\0\u03efrrow;\u61d1ownArrow;\u61d5erticalBar;\u6225n\u0300ABLRTa\u0412\u042a\u0430\u045e\u047f\u037crrow\u0180;BU\u041d\u041e\u0422\u6193ar;\u6913pArrow;\u61f5reve;\u4311eft\u02d2\u043a\0\u0446\0\u0450ightVector;\u6950eeVector;\u695eector\u0100;B\u0459\u045a\u61bdar;\u6956ight\u01d4\u0467\0\u0471eeVector;\u695fector\u0100;B\u047a\u047b\u61c1ar;\u6957ee\u0100;A\u0486\u0487\u62a4rrow;\u61a7\u0100ct\u0492\u0497r;\uc000\ud835\udc9frok;\u4110\u0800NTacdfglmopqstux\u04bd\u04c0\u04c4\u04cb\u04de\u04e2\u04e7\u04ee\u04f5\u0521\u052f\u0536\u0552\u055d\u0560\u0565G;\u414aH\u803b\xd0\u40d0cute\u803b\xc9\u40c9\u0180aiy\u04d2\u04d7\u04dcron;\u411arc\u803b\xca\u40ca;\u442dot;\u4116r;\uc000\ud835\udd08rave\u803b\xc8\u40c8ement;\u6208\u0100ap\u04fa\u04fecr;\u4112ty\u0253\u0506\0\0\u0512mallSquare;\u65fberySmallSquare;\u65ab\u0100gp\u0526\u052aon;\u4118f;\uc000\ud835\udd3csilon;\u4395u\u0100ai\u053c\u0549l\u0100;T\u0542\u0543\u6a75ilde;\u6242librium;\u61cc\u0100ci\u0557\u055ar;\u6130m;\u6a73a;\u4397ml\u803b\xcb\u40cb\u0100ip\u056a\u056fsts;\u6203onentialE;\u6147\u0280cfios\u0585\u0588\u058d\u05b2\u05ccy;\u4424r;\uc000\ud835\udd09lled\u0253\u0597\0\0\u05a3mallSquare;\u65fcerySmallSquare;\u65aa\u0370\u05ba\0\u05bf\0\0\u05c4f;\uc000\ud835\udd3dAll;\u6200riertrf;\u6131c\xf2\u05cb\u0600JTabcdfgorst\u05e8\u05ec\u05ef\u05fa\u0600\u0612\u0616\u061b\u061d\u0623\u066c\u0672cy;\u4403\u803b>\u403emma\u0100;d\u05f7\u05f8\u4393;\u43dcreve;\u411e\u0180eiy\u0607\u060c\u0610dil;\u4122rc;\u411c;\u4413ot;\u4120r;\uc000\ud835\udd0a;\u62d9pf;\uc000\ud835\udd3eeater\u0300EFGLST\u0635\u0644\u064e\u0656\u065b\u0666qual\u0100;L\u063e\u063f\u6265ess;\u62dbullEqual;\u6267reater;\u6aa2ess;\u6277lantEqual;\u6a7eilde;\u6273cr;\uc000\ud835\udca2;\u626b\u0400Aacfiosu\u0685\u068b\u0696\u069b\u069e\u06aa\u06be\u06caRDcy;\u442a\u0100ct\u0690\u0694ek;\u42c7;\u405eirc;\u4124r;\u610clbertSpace;\u610b\u01f0\u06af\0\u06b2f;\u610dizontalLine;\u6500\u0100ct\u06c3\u06c5\xf2\u06a9rok;\u4126mp\u0144\u06d0\u06d8ownHum\xf0\u012fqual;\u624f\u0700EJOacdfgmnostu\u06fa\u06fe\u0703\u0707\u070e\u071a\u071e\u0721\u0728\u0744\u0778\u078b\u078f\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803b\xcd\u40cd\u0100iy\u0713\u0718rc\u803b\xce\u40ce;\u4418ot;\u4130r;\u6111rave\u803b\xcc\u40cc\u0180;ap\u0720\u072f\u073f\u0100cg\u0734\u0737r;\u412ainaryI;\u6148lie\xf3\u03dd\u01f4\u0749\0\u0762\u0100;e\u074d\u074e\u622c\u0100gr\u0753\u0758ral;\u622bsection;\u62c2isible\u0100CT\u076c\u0772omma;\u6063imes;\u6062\u0180gpt\u077f\u0783\u0788on;\u412ef;\uc000\ud835\udd40a;\u4399cr;\u6110ilde;\u4128\u01eb\u079a\0\u079ecy;\u4406l\u803b\xcf\u40cf\u0280cfosu\u07ac\u07b7\u07bc\u07c2\u07d0\u0100iy\u07b1\u07b5rc;\u4134;\u4419r;\uc000\ud835\udd0dpf;\uc000\ud835\udd41\u01e3\u07c7\0\u07ccr;\uc000\ud835\udca5rcy;\u4408kcy;\u4404\u0380HJacfos\u07e4\u07e8\u07ec\u07f1\u07fd\u0802\u0808cy;\u4425cy;\u440cppa;\u439a\u0100ey\u07f6\u07fbdil;\u4136;\u441ar;\uc000\ud835\udd0epf;\uc000\ud835\udd42cr;\uc000\ud835\udca6\u0580JTaceflmost\u0825\u0829\u082c\u0850\u0863\u09b3\u09b8\u09c7\u09cd\u0a37\u0a47cy;\u4409\u803b<\u403c\u0280cmnpr\u0837\u083c\u0841\u0844\u084dute;\u4139bda;\u439bg;\u67ealacetrf;\u6112r;\u619e\u0180aey\u0857\u085c\u0861ron;\u413ddil;\u413b;\u441b\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087e\u08a9\u08b1\u08e0\u08e6\u08fc\u092f\u095b\u0390\u096a\u0100nr\u0883\u088fgleBracket;\u67e8row\u0180;BR\u0899\u089a\u089e\u6190ar;\u61e4ightArrow;\u61c6eiling;\u6308o\u01f5\u08b7\0\u08c3bleBracket;\u67e6n\u01d4\u08c8\0\u08d2eeVector;\u6961ector\u0100;B\u08db\u08dc\u61c3ar;\u6959loor;\u630aight\u0100AV\u08ef\u08f5rrow;\u6194ector;\u694e\u0100er\u0901\u0917e\u0180;AV\u0909\u090a\u0910\u62a3rrow;\u61a4ector;\u695aiangle\u0180;BE\u0924\u0925\u0929\u62b2ar;\u69cfqual;\u62b4p\u0180DTV\u0937\u0942\u094cownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61bfar;\u6958ector\u0100;B\u0965\u0966\u61bcar;\u6952ight\xe1\u039cs\u0300EFGLST\u097e\u098b\u0995\u099d\u09a2\u09adqualGreater;\u62daullEqual;\u6266reater;\u6276ess;\u6aa1lantEqual;\u6a7dilde;\u6272r;\uc000\ud835\udd0f\u0100;e\u09bd\u09be\u62d8ftarrow;\u61daidot;\u413f\u0180npw\u09d4\u0a16\u0a1bg\u0200LRlr\u09de\u09f7\u0a02\u0a10eft\u0100AR\u09e6\u09ecrrow;\u67f5ightArrow;\u67f7ightArrow;\u67f6eft\u0100ar\u03b3\u0a0aight\xe1\u03bfight\xe1\u03caf;\uc000\ud835\udd43er\u0100LR\u0a22\u0a2ceftArrow;\u6199ightArrow;\u6198\u0180cht\u0a3e\u0a40\u0a42\xf2\u084c;\u61b0rok;\u4141;\u626a\u0400acefiosu\u0a5a\u0a5d\u0a60\u0a77\u0a7c\u0a85\u0a8b\u0a8ep;\u6905y;\u441c\u0100dl\u0a65\u0a6fiumSpace;\u605flintrf;\u6133r;\uc000\ud835\udd10nusPlus;\u6213pf;\uc000\ud835\udd44c\xf2\u0a76;\u439c\u0480Jacefostu\u0aa3\u0aa7\u0aad\u0ac0\u0b14\u0b19\u0d91\u0d97\u0d9ecy;\u440acute;\u4143\u0180aey\u0ab4\u0ab9\u0aberon;\u4147dil;\u4145;\u441d\u0180gsw\u0ac7\u0af0\u0b0eative\u0180MTV\u0ad3\u0adf\u0ae8ediumSpace;\u600bhi\u0100cn\u0ae6\u0ad8\xeb\u0ad9eryThi\xee\u0ad9ted\u0100GL\u0af8\u0b06reaterGreate\xf2\u0673essLes\xf3\u0a48Line;\u400ar;\uc000\ud835\udd11\u0200Bnpt\u0b22\u0b28\u0b37\u0b3areak;\u6060BreakingSpace;\u40a0f;\u6115\u0680;CDEGHLNPRSTV\u0b55\u0b56\u0b6a\u0b7c\u0ba1\u0beb\u0c04\u0c5e\u0c84\u0ca6\u0cd8\u0d61\u0d85\u6aec\u0100ou\u0b5b\u0b64ngruent;\u6262pCap;\u626doubleVerticalBar;\u6226\u0180lqx\u0b83\u0b8a\u0b9bement;\u6209ual\u0100;T\u0b92\u0b93\u6260ilde;\uc000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0bb6\u0bb7\u0bbd\u0bc9\u0bd3\u0bd8\u0be5\u626fqual;\u6271ullEqual;\uc000\u2267\u0338reater;\uc000\u226b\u0338ess;\u6279lantEqual;\uc000\u2a7e\u0338ilde;\u6275ump\u0144\u0bf2\u0bfdownHump;\uc000\u224e\u0338qual;\uc000\u224f\u0338e\u0100fs\u0c0a\u0c27tTriangle\u0180;BE\u0c1a\u0c1b\u0c21\u62eaar;\uc000\u29cf\u0338qual;\u62ecs\u0300;EGLST\u0c35\u0c36\u0c3c\u0c44\u0c4b\u0c58\u626equal;\u6270reater;\u6278ess;\uc000\u226a\u0338lantEqual;\uc000\u2a7d\u0338ilde;\u6274ested\u0100GL\u0c68\u0c79reaterGreater;\uc000\u2aa2\u0338essLess;\uc000\u2aa1\u0338recedes\u0180;ES\u0c92\u0c93\u0c9b\u6280qual;\uc000\u2aaf\u0338lantEqual;\u62e0\u0100ei\u0cab\u0cb9verseElement;\u620cghtTriangle\u0180;BE\u0ccb\u0ccc\u0cd2\u62ebar;\uc000\u29d0\u0338qual;\u62ed\u0100qu\u0cdd\u0d0cuareSu\u0100bp\u0ce8\u0cf9set\u0100;E\u0cf0\u0cf3\uc000\u228f\u0338qual;\u62e2erset\u0100;E\u0d03\u0d06\uc000\u2290\u0338qual;\u62e3\u0180bcp\u0d13\u0d24\u0d4eset\u0100;E\u0d1b\u0d1e\uc000\u2282\u20d2qual;\u6288ceeds\u0200;EST\u0d32\u0d33\u0d3b\u0d46\u6281qual;\uc000\u2ab0\u0338lantEqual;\u62e1ilde;\uc000\u227f\u0338erset\u0100;E\u0d58\u0d5b\uc000\u2283\u20d2qual;\u6289ilde\u0200;EFT\u0d6e\u0d6f\u0d75\u0d7f\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uc000\ud835\udca9ilde\u803b\xd1\u40d1;\u439d\u0700Eacdfgmoprstuv\u0dbd\u0dc2\u0dc9\u0dd5\u0ddb\u0de0\u0de7\u0dfc\u0e02\u0e20\u0e22\u0e32\u0e3f\u0e44lig;\u4152cute\u803b\xd3\u40d3\u0100iy\u0dce\u0dd3rc\u803b\xd4\u40d4;\u441eblac;\u4150r;\uc000\ud835\udd12rave\u803b\xd2\u40d2\u0180aei\u0dee\u0df2\u0df6cr;\u414cga;\u43a9cron;\u439fpf;\uc000\ud835\udd46enCurly\u0100DQ\u0e0e\u0e1aoubleQuote;\u601cuote;\u6018;\u6a54\u0100cl\u0e27\u0e2cr;\uc000\ud835\udcaaash\u803b\xd8\u40d8i\u016c\u0e37\u0e3cde\u803b\xd5\u40d5es;\u6a37ml\u803b\xd6\u40d6er\u0100BP\u0e4b\u0e60\u0100ar\u0e50\u0e53r;\u603eac\u0100ek\u0e5a\u0e5c;\u63deet;\u63b4arenthesis;\u63dc\u0480acfhilors\u0e7f\u0e87\u0e8a\u0e8f\u0e92\u0e94\u0e9d\u0eb0\u0efcrtialD;\u6202y;\u441fr;\uc000\ud835\udd13i;\u43a6;\u43a0usMinus;\u40b1\u0100ip\u0ea2\u0eadncareplan\xe5\u069df;\u6119\u0200;eio\u0eb9\u0eba\u0ee0\u0ee4\u6abbcedes\u0200;EST\u0ec8\u0ec9\u0ecf\u0eda\u627aqual;\u6aaflantEqual;\u627cilde;\u627eme;\u6033\u0100dp\u0ee9\u0eeeuct;\u620fortion\u0100;a\u0225\u0ef9l;\u621d\u0100ci\u0f01\u0f06r;\uc000\ud835\udcab;\u43a8\u0200Ufos\u0f11\u0f16\u0f1b\u0f1fOT\u803b\"\u4022r;\uc000\ud835\udd14pf;\u611acr;\uc000\ud835\udcac\u0600BEacefhiorsu\u0f3e\u0f43\u0f47\u0f60\u0f73\u0fa7\u0faa\u0fad\u1096\u10a9\u10b4\u10bearr;\u6910G\u803b\xae\u40ae\u0180cnr\u0f4e\u0f53\u0f56ute;\u4154g;\u67ebr\u0100;t\u0f5c\u0f5d\u61a0l;\u6916\u0180aey\u0f67\u0f6c\u0f71ron;\u4158dil;\u4156;\u4420\u0100;v\u0f78\u0f79\u611cerse\u0100EU\u0f82\u0f99\u0100lq\u0f87\u0f8eement;\u620builibrium;\u61cbpEquilibrium;\u696fr\xbb\u0f79o;\u43a1ght\u0400ACDFTUVa\u0fc1\u0feb\u0ff3\u1022\u1028\u105b\u1087\u03d8\u0100nr\u0fc6\u0fd2gleBracket;\u67e9row\u0180;BL\u0fdc\u0fdd\u0fe1\u6192ar;\u61e5eftArrow;\u61c4eiling;\u6309o\u01f5\u0ff9\0\u1005bleBracket;\u67e7n\u01d4\u100a\0\u1014eeVector;\u695dector\u0100;B\u101d\u101e\u61c2ar;\u6955loor;\u630b\u0100er\u102d\u1043e\u0180;AV\u1035\u1036\u103c\u62a2rrow;\u61a6ector;\u695biangle\u0180;BE\u1050\u1051\u1055\u62b3ar;\u69d0qual;\u62b5p\u0180DTV\u1063\u106e\u1078ownVector;\u694feeVector;\u695cector\u0100;B\u1082\u1083\u61bear;\u6954ector\u0100;B\u1091\u1092\u61c0ar;\u6953\u0100pu\u109b\u109ef;\u611dndImplies;\u6970ightarrow;\u61db\u0100ch\u10b9\u10bcr;\u611b;\u61b1leDelayed;\u69f4\u0680HOacfhimoqstu\u10e4\u10f1\u10f7\u10fd\u1119\u111e\u1151\u1156\u1161\u1167\u11b5\u11bb\u11bf\u0100Cc\u10e9\u10eeHcy;\u4429y;\u4428FTcy;\u442ccute;\u415a\u0280;aeiy\u1108\u1109\u110e\u1113\u1117\u6abcron;\u4160dil;\u415erc;\u415c;\u4421r;\uc000\ud835\udd16ort\u0200DLRU\u112a\u1134\u113e\u1149ownArrow\xbb\u041eeftArrow\xbb\u089aightArrow\xbb\u0fddpArrow;\u6191gma;\u43a3allCircle;\u6218pf;\uc000\ud835\udd4a\u0272\u116d\0\0\u1170t;\u621aare\u0200;ISU\u117b\u117c\u1189\u11af\u65a1ntersection;\u6293u\u0100bp\u118f\u119eset\u0100;E\u1197\u1198\u628fqual;\u6291erset\u0100;E\u11a8\u11a9\u6290qual;\u6292nion;\u6294cr;\uc000\ud835\udcaear;\u62c6\u0200bcmp\u11c8\u11db\u1209\u120b\u0100;s\u11cd\u11ce\u62d0et\u0100;E\u11cd\u11d5qual;\u6286\u0100ch\u11e0\u1205eeds\u0200;EST\u11ed\u11ee\u11f4\u11ff\u627bqual;\u6ab0lantEqual;\u627dilde;\u627fTh\xe1\u0f8c;\u6211\u0180;es\u1212\u1213\u1223\u62d1rset\u0100;E\u121c\u121d\u6283qual;\u6287et\xbb\u1213\u0580HRSacfhiors\u123e\u1244\u1249\u1255\u125e\u1271\u1276\u129f\u12c2\u12c8\u12d1ORN\u803b\xde\u40deADE;\u6122\u0100Hc\u124e\u1252cy;\u440by;\u4426\u0100bu\u125a\u125c;\u4009;\u43a4\u0180aey\u1265\u126a\u126fron;\u4164dil;\u4162;\u4422r;\uc000\ud835\udd17\u0100ei\u127b\u1289\u01f2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128e\u1298kSpace;\uc000\u205f\u200aSpace;\u6009lde\u0200;EFT\u12ab\u12ac\u12b2\u12bc\u623cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uc000\ud835\udd4bipleDot;\u60db\u0100ct\u12d6\u12dbr;\uc000\ud835\udcafrok;\u4166\u0ae1\u12f7\u130e\u131a\u1326\0\u132c\u1331\0\0\0\0\0\u1338\u133d\u1377\u1385\0\u13ff\u1404\u140a\u1410\u0100cr\u12fb\u1301ute\u803b\xda\u40dar\u0100;o\u1307\u1308\u619fcir;\u6949r\u01e3\u1313\0\u1316y;\u440eve;\u416c\u0100iy\u131e\u1323rc\u803b\xdb\u40db;\u4423blac;\u4170r;\uc000\ud835\udd18rave\u803b\xd9\u40d9acr;\u416a\u0100di\u1341\u1369er\u0100BP\u1348\u135d\u0100ar\u134d\u1350r;\u405fac\u0100ek\u1357\u1359;\u63dfet;\u63b5arenthesis;\u63ddon\u0100;P\u1370\u1371\u62c3lus;\u628e\u0100gp\u137b\u137fon;\u4172f;\uc000\ud835\udd4c\u0400ADETadps\u1395\u13ae\u13b8\u13c4\u03e8\u13d2\u13d7\u13f3rrow\u0180;BD\u1150\u13a0\u13a4ar;\u6912ownArrow;\u61c5ownArrow;\u6195quilibrium;\u696eee\u0100;A\u13cb\u13cc\u62a5rrow;\u61a5own\xe1\u03f3er\u0100LR\u13de\u13e8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13f9\u13fa\u43d2on;\u43a5ing;\u416ecr;\uc000\ud835\udcb0ilde;\u4168ml\u803b\xdc\u40dc\u0480Dbcdefosv\u1427\u142c\u1430\u1433\u143e\u1485\u148a\u1490\u1496ash;\u62abar;\u6aeby;\u4412ash\u0100;l\u143b\u143c\u62a9;\u6ae6\u0100er\u1443\u1445;\u62c1\u0180bty\u144c\u1450\u147aar;\u6016\u0100;i\u144f\u1455cal\u0200BLST\u1461\u1465\u146a\u1474ar;\u6223ine;\u407ceparator;\u6758ilde;\u6240ThinSpace;\u600ar;\uc000\ud835\udd19pf;\uc000\ud835\udd4dcr;\uc000\ud835\udcb1dash;\u62aa\u0280cefos\u14a7\u14ac\u14b1\u14b6\u14bcirc;\u4174dge;\u62c0r;\uc000\ud835\udd1apf;\uc000\ud835\udd4ecr;\uc000\ud835\udcb2\u0200fios\u14cb\u14d0\u14d2\u14d8r;\uc000\ud835\udd1b;\u439epf;\uc000\ud835\udd4fcr;\uc000\ud835\udcb3\u0480AIUacfosu\u14f1\u14f5\u14f9\u14fd\u1504\u150f\u1514\u151a\u1520cy;\u442fcy;\u4407cy;\u442ecute\u803b\xdd\u40dd\u0100iy\u1509\u150drc;\u4176;\u442br;\uc000\ud835\udd1cpf;\uc000\ud835\udd50cr;\uc000\ud835\udcb4ml;\u4178\u0400Hacdefos\u1535\u1539\u153f\u154b\u154f\u155d\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417d;\u4417ot;\u417b\u01f2\u1554\0\u155boWidt\xe8\u0ad9a;\u4396r;\u6128pf;\u6124cr;\uc000\ud835\udcb5\u0be1\u1583\u158a\u1590\0\u15b0\u15b6\u15bf\0\0\0\0\u15c6\u15db\u15eb\u165f\u166d\0\u1695\u169b\u16b2\u16b9\0\u16becute\u803b\xe1\u40e1reve;\u4103\u0300;Ediuy\u159c\u159d\u15a1\u15a3\u15a8\u15ad\u623e;\uc000\u223e\u0333;\u623frc\u803b\xe2\u40e2te\u80bb\xb4\u0306;\u4430lig\u803b\xe6\u40e6\u0100;r\xb2\u15ba;\uc000\ud835\udd1erave\u803b\xe0\u40e0\u0100ep\u15ca\u15d6\u0100fp\u15cf\u15d4sym;\u6135\xe8\u15d3ha;\u43b1\u0100ap\u15dfc\u0100cl\u15e4\u15e7r;\u4101g;\u6a3f\u0264\u15f0\0\0\u160a\u0280;adsv\u15fa\u15fb\u15ff\u1601\u1607\u6227nd;\u6a55;\u6a5clope;\u6a58;\u6a5a\u0380;elmrsz\u1618\u1619\u161b\u161e\u163f\u164f\u1659\u6220;\u69a4e\xbb\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163a\u163c\u163e;\u69a8;\u69a9;\u69aa;\u69ab;\u69ac;\u69ad;\u69ae;\u69aft\u0100;v\u1645\u1646\u621fb\u0100;d\u164c\u164d\u62be;\u699d\u0100pt\u1654\u1657h;\u6222\xbb\xb9arr;\u637c\u0100gp\u1663\u1667on;\u4105f;\uc000\ud835\udd52\u0380;Eaeiop\u12c1\u167b\u167d\u1682\u1684\u1687\u168a;\u6a70cir;\u6a6f;\u624ad;\u624bs;\u4027rox\u0100;e\u12c1\u1692\xf1\u1683ing\u803b\xe5\u40e5\u0180cty\u16a1\u16a6\u16a8r;\uc000\ud835\udcb6;\u402amp\u0100;e\u12c1\u16af\xf1\u0288ilde\u803b\xe3\u40e3ml\u803b\xe4\u40e4\u0100ci\u16c2\u16c8onin\xf4\u0272nt;\u6a11\u0800Nabcdefiklnoprsu\u16ed\u16f1\u1730\u173c\u1743\u1748\u1778\u177d\u17e0\u17e6\u1839\u1850\u170d\u193d\u1948\u1970ot;\u6aed\u0100cr\u16f6\u171ek\u0200ceps\u1700\u1705\u170d\u1713ong;\u624cpsilon;\u43f6rime;\u6035im\u0100;e\u171a\u171b\u623dq;\u62cd\u0176\u1722\u1726ee;\u62bded\u0100;g\u172c\u172d\u6305e\xbb\u172drk\u0100;t\u135c\u1737brk;\u63b6\u0100oy\u1701\u1741;\u4431quo;\u601e\u0280cmprt\u1753\u175b\u1761\u1764\u1768aus\u0100;e\u010a\u0109ptyv;\u69b0s\xe9\u170cno\xf5\u0113\u0180ahw\u176f\u1771\u1773;\u43b2;\u6136een;\u626cr;\uc000\ud835\udd1fg\u0380costuvw\u178d\u179d\u17b3\u17c1\u17d5\u17db\u17de\u0180aiu\u1794\u1796\u179a\xf0\u0760rc;\u65efp\xbb\u1371\u0180dpt\u17a4\u17a8\u17adot;\u6a00lus;\u6a01imes;\u6a02\u0271\u17b9\0\0\u17becup;\u6a06ar;\u6605riangle\u0100du\u17cd\u17d2own;\u65bdp;\u65b3plus;\u6a04e\xe5\u1444\xe5\u14adarow;\u690d\u0180ako\u17ed\u1826\u1835\u0100cn\u17f2\u1823k\u0180lst\u17fa\u05ab\u1802ozenge;\u69ebriangle\u0200;dlr\u1812\u1813\u1818\u181d\u65b4own;\u65beeft;\u65c2ight;\u65b8k;\u6423\u01b1\u182b\0\u1833\u01b2\u182f\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183e\u184d\u0100;q\u1843\u1846\uc000=\u20e5uiv;\uc000\u2261\u20e5t;\u6310\u0200ptwx\u1859\u185e\u1867\u186cf;\uc000\ud835\udd53\u0100;t\u13cb\u1863om\xbb\u13cctie;\u62c8\u0600DHUVbdhmptuv\u1885\u1896\u18aa\u18bb\u18d7\u18db\u18ec\u18ff\u1905\u190a\u1910\u1921\u0200LRlr\u188e\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18a1\u18a2\u18a4\u18a6\u18a8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18b3\u18b5\u18b7\u18b9;\u655d;\u655a;\u655c;\u6559\u0380;HLRhlr\u18ca\u18cb\u18cd\u18cf\u18d1\u18d3\u18d5\u6551;\u656c;\u6563;\u6560;\u656b;\u6562;\u655fox;\u69c9\u0200LRlr\u18e4\u18e6\u18e8\u18ea;\u6555;\u6552;\u6510;\u650c\u0280;DUdu\u06bd\u18f7\u18f9\u18fb\u18fd;\u6565;\u6568;\u652c;\u6534inus;\u629flus;\u629eimes;\u62a0\u0200LRlr\u1919\u191b\u191d\u191f;\u655b;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193b\u6502;\u656a;\u6561;\u655e;\u653c;\u6524;\u651c\u0100ev\u0123\u1942bar\u803b\xa6\u40a6\u0200ceio\u1951\u1956\u195a\u1960r;\uc000\ud835\udcb7mi;\u604fm\u0100;e\u171a\u171cl\u0180;bh\u1968\u1969\u196b\u405c;\u69c5sub;\u67c8\u016c\u1974\u197el\u0100;e\u1979\u197a\u6022t\xbb\u197ap\u0180;Ee\u012f\u1985\u1987;\u6aae\u0100;q\u06dc\u06db\u0ce1\u19a7\0\u19e8\u1a11\u1a15\u1a32\0\u1a37\u1a50\0\0\u1ab4\0\0\u1ac1\0\0\u1b21\u1b2e\u1b4d\u1b52\0\u1bfd\0\u1c0c\u0180cpr\u19ad\u19b2\u19ddute;\u4107\u0300;abcds\u19bf\u19c0\u19c4\u19ca\u19d5\u19d9\u6229nd;\u6a44rcup;\u6a49\u0100au\u19cf\u19d2p;\u6a4bp;\u6a47ot;\u6a40;\uc000\u2229\ufe00\u0100eo\u19e2\u19e5t;\u6041\xee\u0693\u0200aeiu\u19f0\u19fb\u1a01\u1a05\u01f0\u19f5\0\u19f8s;\u6a4don;\u410ddil\u803b\xe7\u40e7rc;\u4109ps\u0100;s\u1a0c\u1a0d\u6a4cm;\u6a50ot;\u410b\u0180dmn\u1a1b\u1a20\u1a26il\u80bb\xb8\u01adptyv;\u69b2t\u8100\xa2;e\u1a2d\u1a2e\u40a2r\xe4\u01b2r;\uc000\ud835\udd20\u0180cei\u1a3d\u1a40\u1a4dy;\u4447ck\u0100;m\u1a47\u1a48\u6713ark\xbb\u1a48;\u43c7r\u0380;Ecefms\u1a5f\u1a60\u1a62\u1a6b\u1aa4\u1aaa\u1aae\u65cb;\u69c3\u0180;el\u1a69\u1a6a\u1a6d\u42c6q;\u6257e\u0261\u1a74\0\0\u1a88rrow\u0100lr\u1a7c\u1a81eft;\u61baight;\u61bb\u0280RSacd\u1a92\u1a94\u1a96\u1a9a\u1a9f\xbb\u0f47;\u64c8st;\u629birc;\u629aash;\u629dnint;\u6a10id;\u6aefcir;\u69c2ubs\u0100;u\u1abb\u1abc\u6663it\xbb\u1abc\u02ec\u1ac7\u1ad4\u1afa\0\u1b0aon\u0100;e\u1acd\u1ace\u403a\u0100;q\xc7\xc6\u026d\u1ad9\0\0\u1ae2a\u0100;t\u1ade\u1adf\u402c;\u4040\u0180;fl\u1ae8\u1ae9\u1aeb\u6201\xee\u1160e\u0100mx\u1af1\u1af6ent\xbb\u1ae9e\xf3\u024d\u01e7\u1afe\0\u1b07\u0100;d\u12bb\u1b02ot;\u6a6dn\xf4\u0246\u0180fry\u1b10\u1b14\u1b17;\uc000\ud835\udd54o\xe4\u0254\u8100\xa9;s\u0155\u1b1dr;\u6117\u0100ao\u1b25\u1b29rr;\u61b5ss;\u6717\u0100cu\u1b32\u1b37r;\uc000\ud835\udcb8\u0100bp\u1b3c\u1b44\u0100;e\u1b41\u1b42\u6acf;\u6ad1\u0100;e\u1b49\u1b4a\u6ad0;\u6ad2dot;\u62ef\u0380delprvw\u1b60\u1b6c\u1b77\u1b82\u1bac\u1bd4\u1bf9arr\u0100lr\u1b68\u1b6a;\u6938;\u6935\u0270\u1b72\0\0\u1b75r;\u62dec;\u62dfarr\u0100;p\u1b7f\u1b80\u61b6;\u693d\u0300;bcdos\u1b8f\u1b90\u1b96\u1ba1\u1ba5\u1ba8\u622arcap;\u6a48\u0100au\u1b9b\u1b9ep;\u6a46p;\u6a4aot;\u628dr;\u6a45;\uc000\u222a\ufe00\u0200alrv\u1bb5\u1bbf\u1bde\u1be3rr\u0100;m\u1bbc\u1bbd\u61b7;\u693cy\u0180evw\u1bc7\u1bd4\u1bd8q\u0270\u1bce\0\0\u1bd2re\xe3\u1b73u\xe3\u1b75ee;\u62ceedge;\u62cfen\u803b\xa4\u40a4earrow\u0100lr\u1bee\u1bf3eft\xbb\u1b80ight\xbb\u1bbde\xe4\u1bdd\u0100ci\u1c01\u1c07onin\xf4\u01f7nt;\u6231lcty;\u632d\u0980AHabcdefhijlorstuwz\u1c38\u1c3b\u1c3f\u1c5d\u1c69\u1c75\u1c8a\u1c9e\u1cac\u1cb7\u1cfb\u1cff\u1d0d\u1d7b\u1d91\u1dab\u1dbb\u1dc6\u1dcdr\xf2\u0381ar;\u6965\u0200glrs\u1c48\u1c4d\u1c52\u1c54ger;\u6020eth;\u6138\xf2\u1133h\u0100;v\u1c5a\u1c5b\u6010\xbb\u090a\u016b\u1c61\u1c67arow;\u690fa\xe3\u0315\u0100ay\u1c6e\u1c73ron;\u410f;\u4434\u0180;ao\u0332\u1c7c\u1c84\u0100gr\u02bf\u1c81r;\u61catseq;\u6a77\u0180glm\u1c91\u1c94\u1c98\u803b\xb0\u40b0ta;\u43b4ptyv;\u69b1\u0100ir\u1ca3\u1ca8sht;\u697f;\uc000\ud835\udd21ar\u0100lr\u1cb3\u1cb5\xbb\u08dc\xbb\u101e\u0280aegsv\u1cc2\u0378\u1cd6\u1cdc\u1ce0m\u0180;os\u0326\u1cca\u1cd4nd\u0100;s\u0326\u1cd1uit;\u6666amma;\u43ddin;\u62f2\u0180;io\u1ce7\u1ce8\u1cf8\u40f7de\u8100\xf7;o\u1ce7\u1cf0ntimes;\u62c7n\xf8\u1cf7cy;\u4452c\u026f\u1d06\0\0\u1d0arn;\u631eop;\u630d\u0280lptuw\u1d18\u1d1d\u1d22\u1d49\u1d55lar;\u4024f;\uc000\ud835\udd55\u0280;emps\u030b\u1d2d\u1d37\u1d3d\u1d42q\u0100;d\u0352\u1d33ot;\u6251inus;\u6238lus;\u6214quare;\u62a1blebarwedg\xe5\xfan\u0180adh\u112e\u1d5d\u1d67ownarrow\xf3\u1c83arpoon\u0100lr\u1d72\u1d76ef\xf4\u1cb4igh\xf4\u1cb6\u0162\u1d7f\u1d85karo\xf7\u0f42\u026f\u1d8a\0\0\u1d8ern;\u631fop;\u630c\u0180cot\u1d98\u1da3\u1da6\u0100ry\u1d9d\u1da1;\uc000\ud835\udcb9;\u4455l;\u69f6rok;\u4111\u0100dr\u1db0\u1db4ot;\u62f1i\u0100;f\u1dba\u1816\u65bf\u0100ah\u1dc0\u1dc3r\xf2\u0429a\xf2\u0fa6angle;\u69a6\u0100ci\u1dd2\u1dd5y;\u445fgrarr;\u67ff\u0900Dacdefglmnopqrstux\u1e01\u1e09\u1e19\u1e38\u0578\u1e3c\u1e49\u1e61\u1e7e\u1ea5\u1eaf\u1ebd\u1ee1\u1f2a\u1f37\u1f44\u1f4e\u1f5a\u0100Do\u1e06\u1d34o\xf4\u1c89\u0100cs\u1e0e\u1e14ute\u803b\xe9\u40e9ter;\u6a6e\u0200aioy\u1e22\u1e27\u1e31\u1e36ron;\u411br\u0100;c\u1e2d\u1e2e\u6256\u803b\xea\u40ealon;\u6255;\u444dot;\u4117\u0100Dr\u1e41\u1e45ot;\u6252;\uc000\ud835\udd22\u0180;rs\u1e50\u1e51\u1e57\u6a9aave\u803b\xe8\u40e8\u0100;d\u1e5c\u1e5d\u6a96ot;\u6a98\u0200;ils\u1e6a\u1e6b\u1e72\u1e74\u6a99nters;\u63e7;\u6113\u0100;d\u1e79\u1e7a\u6a95ot;\u6a97\u0180aps\u1e85\u1e89\u1e97cr;\u4113ty\u0180;sv\u1e92\u1e93\u1e95\u6205et\xbb\u1e93p\u01001;\u1e9d\u1ea4\u0133\u1ea1\u1ea3;\u6004;\u6005\u6003\u0100gs\u1eaa\u1eac;\u414bp;\u6002\u0100gp\u1eb4\u1eb8on;\u4119f;\uc000\ud835\udd56\u0180als\u1ec4\u1ece\u1ed2r\u0100;s\u1eca\u1ecb\u62d5l;\u69e3us;\u6a71i\u0180;lv\u1eda\u1edb\u1edf\u43b5on\xbb\u1edb;\u43f5\u0200csuv\u1eea\u1ef3\u1f0b\u1f23\u0100io\u1eef\u1e31rc\xbb\u1e2e\u0269\u1ef9\0\0\u1efb\xed\u0548ant\u0100gl\u1f02\u1f06tr\xbb\u1e5dess\xbb\u1e7a\u0180aei\u1f12\u1f16\u1f1als;\u403dst;\u625fv\u0100;D\u0235\u1f20D;\u6a78parsl;\u69e5\u0100Da\u1f2f\u1f33ot;\u6253rr;\u6971\u0180cdi\u1f3e\u1f41\u1ef8r;\u612fo\xf4\u0352\u0100ah\u1f49\u1f4b;\u43b7\u803b\xf0\u40f0\u0100mr\u1f53\u1f57l\u803b\xeb\u40ebo;\u60ac\u0180cip\u1f61\u1f64\u1f67l;\u4021s\xf4\u056e\u0100eo\u1f6c\u1f74ctatio\xee\u0559nential\xe5\u0579\u09e1\u1f92\0\u1f9e\0\u1fa1\u1fa7\0\0\u1fc6\u1fcc\0\u1fd3\0\u1fe6\u1fea\u2000\0\u2008\u205allingdotse\xf1\u1e44y;\u4444male;\u6640\u0180ilr\u1fad\u1fb3\u1fc1lig;\u8000\ufb03\u0269\u1fb9\0\0\u1fbdg;\u8000\ufb00ig;\u8000\ufb04;\uc000\ud835\udd23lig;\u8000\ufb01lig;\uc000fj\u0180alt\u1fd9\u1fdc\u1fe1t;\u666dig;\u8000\ufb02ns;\u65b1of;\u4192\u01f0\u1fee\0\u1ff3f;\uc000\ud835\udd57\u0100ak\u05bf\u1ff7\u0100;v\u1ffc\u1ffd\u62d4;\u6ad9artint;\u6a0d\u0100ao\u200c\u2055\u0100cs\u2011\u2052\u03b1\u201a\u2030\u2038\u2045\u2048\0\u2050\u03b2\u2022\u2025\u2027\u202a\u202c\0\u202e\u803b\xbd\u40bd;\u6153\u803b\xbc\u40bc;\u6155;\u6159;\u615b\u01b3\u2034\0\u2036;\u6154;\u6156\u02b4\u203e\u2041\0\0\u2043\u803b\xbe\u40be;\u6157;\u615c5;\u6158\u01b6\u204c\0\u204e;\u615a;\u615d8;\u615el;\u6044wn;\u6322cr;\uc000\ud835\udcbb\u0880Eabcdefgijlnorstv\u2082\u2089\u209f\u20a5\u20b0\u20b4\u20f0\u20f5\u20fa\u20ff\u2103\u2112\u2138\u0317\u213e\u2152\u219e\u0100;l\u064d\u2087;\u6a8c\u0180cmp\u2090\u2095\u209dute;\u41f5ma\u0100;d\u209c\u1cda\u43b3;\u6a86reve;\u411f\u0100iy\u20aa\u20aerc;\u411d;\u4433ot;\u4121\u0200;lqs\u063e\u0642\u20bd\u20c9\u0180;qs\u063e\u064c\u20c4lan\xf4\u0665\u0200;cdl\u0665\u20d2\u20d5\u20e5c;\u6aa9ot\u0100;o\u20dc\u20dd\u6a80\u0100;l\u20e2\u20e3\u6a82;\u6a84\u0100;e\u20ea\u20ed\uc000\u22db\ufe00s;\u6a94r;\uc000\ud835\udd24\u0100;g\u0673\u061bmel;\u6137cy;\u4453\u0200;Eaj\u065a\u210c\u210e\u2110;\u6a92;\u6aa5;\u6aa4\u0200Eaes\u211b\u211d\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6a8arox\xbb\u2124\u0100;q\u212e\u212f\u6a88\u0100;q\u212e\u211bim;\u62e7pf;\uc000\ud835\udd58\u0100ci\u2143\u2146r;\u610am\u0180;el\u066b\u214e\u2150;\u6a8e;\u6a90\u8300>;cdlqr\u05ee\u2160\u216a\u216e\u2173\u2179\u0100ci\u2165\u2167;\u6aa7r;\u6a7aot;\u62d7Par;\u6995uest;\u6a7c\u0280adels\u2184\u216a\u2190\u0656\u219b\u01f0\u2189\0\u218epro\xf8\u209er;\u6978q\u0100lq\u063f\u2196les\xf3\u2088i\xed\u066b\u0100en\u21a3\u21adrtneqq;\uc000\u2269\ufe00\xc5\u21aa\u0500Aabcefkosy\u21c4\u21c7\u21f1\u21f5\u21fa\u2218\u221d\u222f\u2268\u227dr\xf2\u03a0\u0200ilmr\u21d0\u21d4\u21d7\u21dbrs\xf0\u1484f\xbb\u2024il\xf4\u06a9\u0100dr\u21e0\u21e4cy;\u444a\u0180;cw\u08f4\u21eb\u21efir;\u6948;\u61adar;\u610firc;\u4125\u0180alr\u2201\u220e\u2213rts\u0100;u\u2209\u220a\u6665it\xbb\u220alip;\u6026con;\u62b9r;\uc000\ud835\udd25s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223a\u223e\u2243\u225e\u2263rr;\u61fftht;\u623bk\u0100lr\u2249\u2253eftarrow;\u61a9ightarrow;\u61aaf;\uc000\ud835\udd59bar;\u6015\u0180clt\u226f\u2274\u2278r;\uc000\ud835\udcbdas\xe8\u21f4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xbb\u1c5b\u0ae1\u22a3\0\u22aa\0\u22b8\u22c5\u22ce\0\u22d5\u22f3\0\0\u22f8\u2322\u2367\u2362\u237f\0\u2386\u23aa\u23b4cute\u803b\xed\u40ed\u0180;iy\u0771\u22b0\u22b5rc\u803b\xee\u40ee;\u4438\u0100cx\u22bc\u22bfy;\u4435cl\u803b\xa1\u40a1\u0100fr\u039f\u22c9;\uc000\ud835\udd26rave\u803b\xec\u40ec\u0200;ino\u073e\u22dd\u22e9\u22ee\u0100in\u22e2\u22e6nt;\u6a0ct;\u622dfin;\u69dcta;\u6129lig;\u4133\u0180aop\u22fe\u231a\u231d\u0180cgt\u2305\u2308\u2317r;\u412b\u0180elp\u071f\u230f\u2313in\xe5\u078ear\xf4\u0720h;\u4131f;\u62b7ed;\u41b5\u0280;cfot\u04f4\u232c\u2331\u233d\u2341are;\u6105in\u0100;t\u2338\u2339\u621eie;\u69dddo\xf4\u2319\u0280;celp\u0757\u234c\u2350\u235b\u2361al;\u62ba\u0100gr\u2355\u2359er\xf3\u1563\xe3\u234darhk;\u6a17rod;\u6a3c\u0200cgpt\u236f\u2372\u2376\u237by;\u4451on;\u412ff;\uc000\ud835\udd5aa;\u43b9uest\u803b\xbf\u40bf\u0100ci\u238a\u238fr;\uc000\ud835\udcben\u0280;Edsv\u04f4\u239b\u239d\u23a1\u04f3;\u62f9ot;\u62f5\u0100;v\u23a6\u23a7\u62f4;\u62f3\u0100;i\u0777\u23aelde;\u4129\u01eb\u23b8\0\u23bccy;\u4456l\u803b\xef\u40ef\u0300cfmosu\u23cc\u23d7\u23dc\u23e1\u23e7\u23f5\u0100iy\u23d1\u23d5rc;\u4135;\u4439r;\uc000\ud835\udd27ath;\u4237pf;\uc000\ud835\udd5b\u01e3\u23ec\0\u23f1r;\uc000\ud835\udcbfrcy;\u4458kcy;\u4454\u0400acfghjos\u240b\u2416\u2422\u2427\u242d\u2431\u2435\u243bppa\u0100;v\u2413\u2414\u43ba;\u43f0\u0100ey\u241b\u2420dil;\u4137;\u443ar;\uc000\ud835\udd28reen;\u4138cy;\u4445cy;\u445cpf;\uc000\ud835\udd5ccr;\uc000\ud835\udcc0\u0b80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248d\u2491\u250e\u253d\u255a\u2580\u264e\u265e\u2665\u2679\u267d\u269a\u26b2\u26d8\u275d\u2768\u278b\u27c0\u2801\u2812\u0180art\u2477\u247a\u247cr\xf2\u09c6\xf2\u0395ail;\u691barr;\u690e\u0100;g\u0994\u248b;\u6a8bar;\u6962\u0963\u24a5\0\u24aa\0\u24b1\0\0\0\0\0\u24b5\u24ba\0\u24c6\u24c8\u24cd\0\u24f9ute;\u413amptyv;\u69b4ra\xee\u084cbda;\u43bbg\u0180;dl\u088e\u24c1\u24c3;\u6991\xe5\u088e;\u6a85uo\u803b\xab\u40abr\u0400;bfhlpst\u0899\u24de\u24e6\u24e9\u24eb\u24ee\u24f1\u24f5\u0100;f\u089d\u24e3s;\u691fs;\u691d\xeb\u2252p;\u61abl;\u6939im;\u6973l;\u61a2\u0180;ae\u24ff\u2500\u2504\u6aabil;\u6919\u0100;s\u2509\u250a\u6aad;\uc000\u2aad\ufe00\u0180abr\u2515\u2519\u251drr;\u690crk;\u6772\u0100ak\u2522\u252cc\u0100ek\u2528\u252a;\u407b;\u405b\u0100es\u2531\u2533;\u698bl\u0100du\u2539\u253b;\u698f;\u698d\u0200aeuy\u2546\u254b\u2556\u2558ron;\u413e\u0100di\u2550\u2554il;\u413c\xec\u08b0\xe2\u2529;\u443b\u0200cqrs\u2563\u2566\u256d\u257da;\u6936uo\u0100;r\u0e19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694bh;\u61b2\u0280;fgqs\u258b\u258c\u0989\u25f3\u25ff\u6264t\u0280ahlrt\u2598\u25a4\u25b7\u25c2\u25e8rrow\u0100;t\u0899\u25a1a\xe9\u24f6arpoon\u0100du\u25af\u25b4own\xbb\u045ap\xbb\u0966eftarrows;\u61c7ight\u0180ahs\u25cd\u25d6\u25derrow\u0100;s\u08f4\u08a7arpoon\xf3\u0f98quigarro\xf7\u21f0hreetimes;\u62cb\u0180;qs\u258b\u0993\u25falan\xf4\u09ac\u0280;cdgs\u09ac\u260a\u260d\u261d\u2628c;\u6aa8ot\u0100;o\u2614\u2615\u6a7f\u0100;r\u261a\u261b\u6a81;\u6a83\u0100;e\u2622\u2625\uc000\u22da\ufe00s;\u6a93\u0280adegs\u2633\u2639\u263d\u2649\u264bppro\xf8\u24c6ot;\u62d6q\u0100gq\u2643\u2645\xf4\u0989gt\xf2\u248c\xf4\u099bi\xed\u09b2\u0180ilr\u2655\u08e1\u265asht;\u697c;\uc000\ud835\udd29\u0100;E\u099c\u2663;\u6a91\u0161\u2669\u2676r\u0100du\u25b2\u266e\u0100;l\u0965\u2673;\u696alk;\u6584cy;\u4459\u0280;acht\u0a48\u2688\u268b\u2691\u2696r\xf2\u25c1orne\xf2\u1d08ard;\u696bri;\u65fa\u0100io\u269f\u26a4dot;\u4140ust\u0100;a\u26ac\u26ad\u63b0che\xbb\u26ad\u0200Eaes\u26bb\u26bd\u26c9\u26d4;\u6268p\u0100;p\u26c3\u26c4\u6a89rox\xbb\u26c4\u0100;q\u26ce\u26cf\u6a87\u0100;q\u26ce\u26bbim;\u62e6\u0400abnoptwz\u26e9\u26f4\u26f7\u271a\u272f\u2741\u2747\u2750\u0100nr\u26ee\u26f1g;\u67ecr;\u61fdr\xeb\u08c1g\u0180lmr\u26ff\u270d\u2714eft\u0100ar\u09e6\u2707ight\xe1\u09f2apsto;\u67fcight\xe1\u09fdparrow\u0100lr\u2725\u2729ef\xf4\u24edight;\u61ac\u0180afl\u2736\u2739\u273dr;\u6985;\uc000\ud835\udd5dus;\u6a2dimes;\u6a34\u0161\u274b\u274fst;\u6217\xe1\u134e\u0180;ef\u2757\u2758\u1800\u65cange\xbb\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277c\u2785\u2787r\xf2\u08a8orne\xf2\u1d8car\u0100;d\u0f98\u2783;\u696d;\u600eri;\u62bf\u0300achiqt\u2798\u279d\u0a40\u27a2\u27ae\u27bbquo;\u6039r;\uc000\ud835\udcc1m\u0180;eg\u09b2\u27aa\u27ac;\u6a8d;\u6a8f\u0100bu\u252a\u27b3o\u0100;r\u0e1f\u27b9;\u601arok;\u4142\u8400<;cdhilqr\u082b\u27d2\u2639\u27dc\u27e0\u27e5\u27ea\u27f0\u0100ci\u27d7\u27d9;\u6aa6r;\u6a79re\xe5\u25f2mes;\u62c9arr;\u6976uest;\u6a7b\u0100Pi\u27f5\u27f9ar;\u6996\u0180;ef\u2800\u092d\u181b\u65c3r\u0100du\u2807\u280dshar;\u694ahar;\u6966\u0100en\u2817\u2821rtneqq;\uc000\u2268\ufe00\xc5\u281e\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288e\u2893\u28a0\u28a5\u28a8\u28da\u28e2\u28e4\u0a83\u28f3\u2902Dot;\u623a\u0200clpr\u284e\u2852\u2863\u287dr\u803b\xaf\u40af\u0100et\u2857\u2859;\u6642\u0100;e\u285e\u285f\u6720se\xbb\u285f\u0100;s\u103b\u2868to\u0200;dlu\u103b\u2873\u2877\u287bow\xee\u048cef\xf4\u090f\xf0\u13d1ker;\u65ae\u0100oy\u2887\u288cmma;\u6a29;\u443cash;\u6014asuredangle\xbb\u1626r;\uc000\ud835\udd2ao;\u6127\u0180cdn\u28af\u28b4\u28c9ro\u803b\xb5\u40b5\u0200;acd\u1464\u28bd\u28c0\u28c4s\xf4\u16a7ir;\u6af0ot\u80bb\xb7\u01b5us\u0180;bd\u28d2\u1903\u28d3\u6212\u0100;u\u1d3c\u28d8;\u6a2a\u0163\u28de\u28e1p;\u6adb\xf2\u2212\xf0\u0a81\u0100dp\u28e9\u28eeels;\u62a7f;\uc000\ud835\udd5e\u0100ct\u28f8\u28fdr;\uc000\ud835\udcc2pos\xbb\u159d\u0180;lm\u2909\u290a\u290d\u43bctimap;\u62b8\u0c00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297e\u2989\u2998\u29da\u29e9\u2a15\u2a1a\u2a58\u2a5d\u2a83\u2a95\u2aa4\u2aa8\u2b04\u2b07\u2b44\u2b7f\u2bae\u2c34\u2c67\u2c7c\u2ce9\u0100gt\u2947\u294b;\uc000\u22d9\u0338\u0100;v\u2950\u0bcf\uc000\u226b\u20d2\u0180elt\u295a\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61cdightarrow;\u61ce;\uc000\u22d8\u0338\u0100;v\u297b\u0c47\uc000\u226a\u20d2ightarrow;\u61cf\u0100Dd\u298e\u2993ash;\u62afash;\u62ae\u0280bcnpt\u29a3\u29a7\u29ac\u29b1\u29ccla\xbb\u02deute;\u4144g;\uc000\u2220\u20d2\u0280;Eiop\u0d84\u29bc\u29c0\u29c5\u29c8;\uc000\u2a70\u0338d;\uc000\u224b\u0338s;\u4149ro\xf8\u0d84ur\u0100;a\u29d3\u29d4\u666el\u0100;s\u29d3\u0b38\u01f3\u29df\0\u29e3p\u80bb\xa0\u0b37mp\u0100;e\u0bf9\u0c00\u0280aeouy\u29f4\u29fe\u2a03\u2a10\u2a13\u01f0\u29f9\0\u29fb;\u6a43on;\u4148dil;\u4146ng\u0100;d\u0d7e\u2a0aot;\uc000\u2a6d\u0338p;\u6a42;\u443dash;\u6013\u0380;Aadqsx\u0b92\u2a29\u2a2d\u2a3b\u2a41\u2a45\u2a50rr;\u61d7r\u0100hr\u2a33\u2a36k;\u6924\u0100;o\u13f2\u13f0ot;\uc000\u2250\u0338ui\xf6\u0b63\u0100ei\u2a4a\u2a4ear;\u6928\xed\u0b98ist\u0100;s\u0ba0\u0b9fr;\uc000\ud835\udd2b\u0200Eest\u0bc5\u2a66\u2a79\u2a7c\u0180;qs\u0bbc\u2a6d\u0be1\u0180;qs\u0bbc\u0bc5\u2a74lan\xf4\u0be2i\xed\u0bea\u0100;r\u0bb6\u2a81\xbb\u0bb7\u0180Aap\u2a8a\u2a8d\u2a91r\xf2\u2971rr;\u61aear;\u6af2\u0180;sv\u0f8d\u2a9c\u0f8c\u0100;d\u2aa1\u2aa2\u62fc;\u62facy;\u445a\u0380AEadest\u2ab7\u2aba\u2abe\u2ac2\u2ac5\u2af6\u2af9r\xf2\u2966;\uc000\u2266\u0338rr;\u619ar;\u6025\u0200;fqs\u0c3b\u2ace\u2ae3\u2aeft\u0100ar\u2ad4\u2ad9rro\xf7\u2ac1ightarro\xf7\u2a90\u0180;qs\u0c3b\u2aba\u2aealan\xf4\u0c55\u0100;s\u0c55\u2af4\xbb\u0c36i\xed\u0c5d\u0100;r\u0c35\u2afei\u0100;e\u0c1a\u0c25i\xe4\u0d90\u0100pt\u2b0c\u2b11f;\uc000\ud835\udd5f\u8180\xac;in\u2b19\u2b1a\u2b36\u40acn\u0200;Edv\u0b89\u2b24\u2b28\u2b2e;\uc000\u22f9\u0338ot;\uc000\u22f5\u0338\u01e1\u0b89\u2b33\u2b35;\u62f7;\u62f6i\u0100;v\u0cb8\u2b3c\u01e1\u0cb8\u2b41\u2b43;\u62fe;\u62fd\u0180aor\u2b4b\u2b63\u2b69r\u0200;ast\u0b7b\u2b55\u2b5a\u2b5flle\xec\u0b7bl;\uc000\u2afd\u20e5;\uc000\u2202\u0338lint;\u6a14\u0180;ce\u0c92\u2b70\u2b73u\xe5\u0ca5\u0100;c\u0c98\u2b78\u0100;e\u0c92\u2b7d\xf1\u0c98\u0200Aait\u2b88\u2b8b\u2b9d\u2ba7r\xf2\u2988rr\u0180;cw\u2b94\u2b95\u2b99\u619b;\uc000\u2933\u0338;\uc000\u219d\u0338ghtarrow\xbb\u2b95ri\u0100;e\u0ccb\u0cd6\u0380chimpqu\u2bbd\u2bcd\u2bd9\u2b04\u0b78\u2be4\u2bef\u0200;cer\u0d32\u2bc6\u0d37\u2bc9u\xe5\u0d45;\uc000\ud835\udcc3ort\u026d\u2b05\0\0\u2bd6ar\xe1\u2b56m\u0100;e\u0d6e\u2bdf\u0100;q\u0d74\u0d73su\u0100bp\u2beb\u2bed\xe5\u0cf8\xe5\u0d0b\u0180bcp\u2bf6\u2c11\u2c19\u0200;Ees\u2bff\u2c00\u0d22\u2c04\u6284;\uc000\u2ac5\u0338et\u0100;e\u0d1b\u2c0bq\u0100;q\u0d23\u2c00c\u0100;e\u0d32\u2c17\xf1\u0d38\u0200;Ees\u2c22\u2c23\u0d5f\u2c27\u6285;\uc000\u2ac6\u0338et\u0100;e\u0d58\u2c2eq\u0100;q\u0d60\u2c23\u0200gilr\u2c3d\u2c3f\u2c45\u2c47\xec\u0bd7lde\u803b\xf1\u40f1\xe7\u0c43iangle\u0100lr\u2c52\u2c5ceft\u0100;e\u0c1a\u2c5a\xf1\u0c26ight\u0100;e\u0ccb\u2c65\xf1\u0cd7\u0100;m\u2c6c\u2c6d\u43bd\u0180;es\u2c74\u2c75\u2c79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2c8f\u2c94\u2c99\u2c9e\u2ca3\u2cb0\u2cb6\u2cd3\u2ce3ash;\u62adarr;\u6904p;\uc000\u224d\u20d2ash;\u62ac\u0100et\u2ca8\u2cac;\uc000\u2265\u20d2;\uc000>\u20d2nfin;\u69de\u0180Aet\u2cbd\u2cc1\u2cc5rr;\u6902;\uc000\u2264\u20d2\u0100;r\u2cca\u2ccd\uc000<\u20d2ie;\uc000\u22b4\u20d2\u0100At\u2cd8\u2cdcrr;\u6903rie;\uc000\u22b5\u20d2im;\uc000\u223c\u20d2\u0180Aan\u2cf0\u2cf4\u2d02rr;\u61d6r\u0100hr\u2cfa\u2cfdk;\u6923\u0100;o\u13e7\u13e5ear;\u6927\u1253\u1a95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2d2d\0\u2d38\u2d48\u2d60\u2d65\u2d72\u2d84\u1b07\0\0\u2d8d\u2dab\0\u2dc8\u2dce\0\u2ddc\u2e19\u2e2b\u2e3e\u2e43\u0100cs\u2d31\u1a97ute\u803b\xf3\u40f3\u0100iy\u2d3c\u2d45r\u0100;c\u1a9e\u2d42\u803b\xf4\u40f4;\u443e\u0280abios\u1aa0\u2d52\u2d57\u01c8\u2d5alac;\u4151v;\u6a38old;\u69bclig;\u4153\u0100cr\u2d69\u2d6dir;\u69bf;\uc000\ud835\udd2c\u036f\u2d79\0\0\u2d7c\0\u2d82n;\u42dbave\u803b\xf2\u40f2;\u69c1\u0100bm\u2d88\u0df4ar;\u69b5\u0200acit\u2d95\u2d98\u2da5\u2da8r\xf2\u1a80\u0100ir\u2d9d\u2da0r;\u69beoss;\u69bbn\xe5\u0e52;\u69c0\u0180aei\u2db1\u2db5\u2db9cr;\u414dga;\u43c9\u0180cdn\u2dc0\u2dc5\u01cdron;\u43bf;\u69b6pf;\uc000\ud835\udd60\u0180ael\u2dd4\u2dd7\u01d2r;\u69b7rp;\u69b9\u0380;adiosv\u2dea\u2deb\u2dee\u2e08\u2e0d\u2e10\u2e16\u6228r\xf2\u1a86\u0200;efm\u2df7\u2df8\u2e02\u2e05\u6a5dr\u0100;o\u2dfe\u2dff\u6134f\xbb\u2dff\u803b\xaa\u40aa\u803b\xba\u40bagof;\u62b6r;\u6a56lope;\u6a57;\u6a5b\u0180clo\u2e1f\u2e21\u2e27\xf2\u2e01ash\u803b\xf8\u40f8l;\u6298i\u016c\u2e2f\u2e34de\u803b\xf5\u40f5es\u0100;a\u01db\u2e3as;\u6a36ml\u803b\xf6\u40f6bar;\u633d\u0ae1\u2e5e\0\u2e7d\0\u2e80\u2e9d\0\u2ea2\u2eb9\0\0\u2ecb\u0e9c\0\u2f13\0\0\u2f2b\u2fbc\0\u2fc8r\u0200;ast\u0403\u2e67\u2e72\u0e85\u8100\xb6;l\u2e6d\u2e6e\u40b6le\xec\u0403\u0269\u2e78\0\0\u2e7bm;\u6af3;\u6afdy;\u443fr\u0280cimpt\u2e8b\u2e8f\u2e93\u1865\u2e97nt;\u4025od;\u402eil;\u6030enk;\u6031r;\uc000\ud835\udd2d\u0180imo\u2ea8\u2eb0\u2eb4\u0100;v\u2ead\u2eae\u43c6;\u43d5ma\xf4\u0a76ne;\u660e\u0180;tv\u2ebf\u2ec0\u2ec8\u43c0chfork\xbb\u1ffd;\u43d6\u0100au\u2ecf\u2edfn\u0100ck\u2ed5\u2eddk\u0100;h\u21f4\u2edb;\u610e\xf6\u21f4s\u0480;abcdemst\u2ef3\u2ef4\u1908\u2ef9\u2efd\u2f04\u2f06\u2f0a\u2f0e\u402bcir;\u6a23ir;\u6a22\u0100ou\u1d40\u2f02;\u6a25;\u6a72n\u80bb\xb1\u0e9dim;\u6a26wo;\u6a27\u0180ipu\u2f19\u2f20\u2f25ntint;\u6a15f;\uc000\ud835\udd61nd\u803b\xa3\u40a3\u0500;Eaceinosu\u0ec8\u2f3f\u2f41\u2f44\u2f47\u2f81\u2f89\u2f92\u2f7e\u2fb6;\u6ab3p;\u6ab7u\xe5\u0ed9\u0100;c\u0ece\u2f4c\u0300;acens\u0ec8\u2f59\u2f5f\u2f66\u2f68\u2f7eppro\xf8\u2f43urlye\xf1\u0ed9\xf1\u0ece\u0180aes\u2f6f\u2f76\u2f7approx;\u6ab9qq;\u6ab5im;\u62e8i\xed\u0edfme\u0100;s\u2f88\u0eae\u6032\u0180Eas\u2f78\u2f90\u2f7a\xf0\u2f75\u0180dfp\u0eec\u2f99\u2faf\u0180als\u2fa0\u2fa5\u2faalar;\u632eine;\u6312urf;\u6313\u0100;t\u0efb\u2fb4\xef\u0efbrel;\u62b0\u0100ci\u2fc0\u2fc5r;\uc000\ud835\udcc5;\u43c8ncsp;\u6008\u0300fiopsu\u2fda\u22e2\u2fdf\u2fe5\u2feb\u2ff1r;\uc000\ud835\udd2epf;\uc000\ud835\udd62rime;\u6057cr;\uc000\ud835\udcc6\u0180aeo\u2ff8\u3009\u3013t\u0100ei\u2ffe\u3005rnion\xf3\u06b0nt;\u6a16st\u0100;e\u3010\u3011\u403f\xf1\u1f19\xf4\u0f14\u0a80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30e0\u310e\u312b\u3147\u3162\u3172\u318e\u3206\u3215\u3224\u3229\u3258\u326e\u3272\u3290\u32b0\u32b7\u0180art\u3047\u304a\u304cr\xf2\u10b3\xf2\u03ddail;\u691car\xf2\u1c65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307f\u308f\u3094\u30cc\u0100eu\u306d\u3071;\uc000\u223d\u0331te;\u4155i\xe3\u116emptyv;\u69b3g\u0200;del\u0fd1\u3089\u308b\u308d;\u6992;\u69a5\xe5\u0fd1uo\u803b\xbb\u40bbr\u0580;abcfhlpstw\u0fdc\u30ac\u30af\u30b7\u30b9\u30bc\u30be\u30c0\u30c3\u30c7\u30cap;\u6975\u0100;f\u0fe0\u30b4s;\u6920;\u6933s;\u691e\xeb\u225d\xf0\u272el;\u6945im;\u6974l;\u61a3;\u619d\u0100ai\u30d1\u30d5il;\u691ao\u0100;n\u30db\u30dc\u6236al\xf3\u0f1e\u0180abr\u30e7\u30ea\u30eer\xf2\u17e5rk;\u6773\u0100ak\u30f3\u30fdc\u0100ek\u30f9\u30fb;\u407d;\u405d\u0100es\u3102\u3104;\u698cl\u0100du\u310a\u310c;\u698e;\u6990\u0200aeuy\u3117\u311c\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xec\u0ff2\xe2\u30fa;\u4440\u0200clqs\u3134\u3137\u313d\u3144a;\u6937dhar;\u6969uo\u0100;r\u020e\u020dh;\u61b3\u0180acg\u314e\u315f\u0f44l\u0200;ips\u0f78\u3158\u315b\u109cn\xe5\u10bbar\xf4\u0fa9t;\u65ad\u0180ilr\u3169\u1023\u316esht;\u697d;\uc000\ud835\udd2f\u0100ao\u3177\u3186r\u0100du\u317d\u317f\xbb\u047b\u0100;l\u1091\u3184;\u696c\u0100;v\u318b\u318c\u43c1;\u43f1\u0180gns\u3195\u31f9\u31fcht\u0300ahlrst\u31a4\u31b0\u31c2\u31d8\u31e4\u31eerrow\u0100;t\u0fdc\u31ada\xe9\u30c8arpoon\u0100du\u31bb\u31bfow\xee\u317ep\xbb\u1092eft\u0100ah\u31ca\u31d0rrow\xf3\u0feaarpoon\xf3\u0551ightarrows;\u61c9quigarro\xf7\u30cbhreetimes;\u62ccg;\u42daingdotse\xf1\u1f32\u0180ahm\u320d\u3210\u3213r\xf2\u0feaa\xf2\u0551;\u600foust\u0100;a\u321e\u321f\u63b1che\xbb\u321fmid;\u6aee\u0200abpt\u3232\u323d\u3240\u3252\u0100nr\u3237\u323ag;\u67edr;\u61fer\xeb\u1003\u0180afl\u3247\u324a\u324er;\u6986;\uc000\ud835\udd63us;\u6a2eimes;\u6a35\u0100ap\u325d\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6a12ar\xf2\u31e3\u0200achq\u327b\u3280\u10bc\u3285quo;\u603ar;\uc000\ud835\udcc7\u0100bu\u30fb\u328ao\u0100;r\u0214\u0213\u0180hir\u3297\u329b\u32a0re\xe5\u31f8mes;\u62cai\u0200;efl\u32aa\u1059\u1821\u32ab\u65b9tri;\u69celuhar;\u6968;\u611e\u0d61\u32d5\u32db\u32df\u332c\u3338\u3371\0\u337a\u33a4\0\0\u33ec\u33f0\0\u3428\u3448\u345a\u34ad\u34b1\u34ca\u34f1\0\u3616\0\0\u3633cute;\u415bqu\xef\u27ba\u0500;Eaceinpsy\u11ed\u32f3\u32f5\u32ff\u3302\u330b\u330f\u331f\u3326\u3329;\u6ab4\u01f0\u32fa\0\u32fc;\u6ab8on;\u4161u\xe5\u11fe\u0100;d\u11f3\u3307il;\u415frc;\u415d\u0180Eas\u3316\u3318\u331b;\u6ab6p;\u6abaim;\u62e9olint;\u6a13i\xed\u1204;\u4441ot\u0180;be\u3334\u1d47\u3335\u62c5;\u6a66\u0380Aacmstx\u3346\u334a\u3357\u335b\u335e\u3363\u336drr;\u61d8r\u0100hr\u3350\u3352\xeb\u2228\u0100;o\u0a36\u0a34t\u803b\xa7\u40a7i;\u403bwar;\u6929m\u0100in\u3369\xf0nu\xf3\xf1t;\u6736r\u0100;o\u3376\u2055\uc000\ud835\udd30\u0200acoy\u3382\u3386\u3391\u33a0rp;\u666f\u0100hy\u338b\u338fcy;\u4449;\u4448rt\u026d\u3399\0\0\u339ci\xe4\u1464ara\xec\u2e6f\u803b\xad\u40ad\u0100gm\u33a8\u33b4ma\u0180;fv\u33b1\u33b2\u33b2\u43c3;\u43c2\u0400;deglnpr\u12ab\u33c5\u33c9\u33ce\u33d6\u33de\u33e1\u33e6ot;\u6a6a\u0100;q\u12b1\u12b0\u0100;E\u33d3\u33d4\u6a9e;\u6aa0\u0100;E\u33db\u33dc\u6a9d;\u6a9fe;\u6246lus;\u6a24arr;\u6972ar\xf2\u113d\u0200aeit\u33f8\u3408\u340f\u3417\u0100ls\u33fd\u3404lsetm\xe9\u336ahp;\u6a33parsl;\u69e4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341c\u341d\u6aaa\u0100;s\u3422\u3423\u6aac;\uc000\u2aac\ufe00\u0180flp\u342e\u3433\u3442tcy;\u444c\u0100;b\u3438\u3439\u402f\u0100;a\u343e\u343f\u69c4r;\u633ff;\uc000\ud835\udd64a\u0100dr\u344d\u0402es\u0100;u\u3454\u3455\u6660it\xbb\u3455\u0180csu\u3460\u3479\u349f\u0100au\u3465\u346fp\u0100;s\u1188\u346b;\uc000\u2293\ufe00p\u0100;s\u11b4\u3475;\uc000\u2294\ufe00u\u0100bp\u347f\u348f\u0180;es\u1197\u119c\u3486et\u0100;e\u1197\u348d\xf1\u119d\u0180;es\u11a8\u11ad\u3496et\u0100;e\u11a8\u349d\xf1\u11ae\u0180;af\u117b\u34a6\u05b0r\u0165\u34ab\u05b1\xbb\u117car\xf2\u1148\u0200cemt\u34b9\u34be\u34c2\u34c5r;\uc000\ud835\udcc8tm\xee\xf1i\xec\u3415ar\xe6\u11be\u0100ar\u34ce\u34d5r\u0100;f\u34d4\u17bf\u6606\u0100an\u34da\u34edight\u0100ep\u34e3\u34eapsilo\xee\u1ee0h\xe9\u2eafs\xbb\u2852\u0280bcmnp\u34fb\u355e\u1209\u358b\u358e\u0480;Edemnprs\u350e\u350f\u3511\u3515\u351e\u3523\u352c\u3531\u3536\u6282;\u6ac5ot;\u6abd\u0100;d\u11da\u351aot;\u6ac3ult;\u6ac1\u0100Ee\u3528\u352a;\u6acb;\u628alus;\u6abfarr;\u6979\u0180eiu\u353d\u3552\u3555t\u0180;en\u350e\u3545\u354bq\u0100;q\u11da\u350feq\u0100;q\u352b\u3528m;\u6ac7\u0100bp\u355a\u355c;\u6ad5;\u6ad3c\u0300;acens\u11ed\u356c\u3572\u3579\u357b\u3326ppro\xf8\u32faurlye\xf1\u11fe\xf1\u11f3\u0180aes\u3582\u3588\u331bppro\xf8\u331aq\xf1\u3317g;\u666a\u0680123;Edehlmnps\u35a9\u35ac\u35af\u121c\u35b2\u35b4\u35c0\u35c9\u35d5\u35da\u35df\u35e8\u35ed\u803b\xb9\u40b9\u803b\xb2\u40b2\u803b\xb3\u40b3;\u6ac6\u0100os\u35b9\u35bct;\u6abeub;\u6ad8\u0100;d\u1222\u35c5ot;\u6ac4s\u0100ou\u35cf\u35d2l;\u67c9b;\u6ad7arr;\u697bult;\u6ac2\u0100Ee\u35e4\u35e6;\u6acc;\u628blus;\u6ac0\u0180eiu\u35f4\u3609\u360ct\u0180;en\u121c\u35fc\u3602q\u0100;q\u1222\u35b2eq\u0100;q\u35e7\u35e4m;\u6ac8\u0100bp\u3611\u3613;\u6ad4;\u6ad6\u0180Aan\u361c\u3620\u362drr;\u61d9r\u0100hr\u3626\u3628\xeb\u222e\u0100;o\u0a2b\u0a29war;\u692alig\u803b\xdf\u40df\u0be1\u3651\u365d\u3660\u12ce\u3673\u3679\0\u367e\u36c2\0\0\0\0\0\u36db\u3703\0\u3709\u376c\0\0\0\u3787\u0272\u3656\0\0\u365bget;\u6316;\u43c4r\xeb\u0e5f\u0180aey\u3666\u366b\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uc000\ud835\udd31\u0200eiko\u3686\u369d\u36b5\u36bc\u01f2\u368b\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369b\u43b8ym;\u43d1\u0100cn\u36a2\u36b2k\u0100as\u36a8\u36aeppro\xf8\u12c1im\xbb\u12acs\xf0\u129e\u0100as\u36ba\u36ae\xf0\u12c1rn\u803b\xfe\u40fe\u01ec\u031f\u36c6\u22e7es\u8180\xd7;bd\u36cf\u36d0\u36d8\u40d7\u0100;a\u190f\u36d5r;\u6a31;\u6a30\u0180eps\u36e1\u36e3\u3700\xe1\u2a4d\u0200;bcf\u0486\u36ec\u36f0\u36f4ot;\u6336ir;\u6af1\u0100;o\u36f9\u36fc\uc000\ud835\udd65rk;\u6ada\xe1\u3362rime;\u6034\u0180aip\u370f\u3712\u3764d\xe5\u1248\u0380adempst\u3721\u374d\u3740\u3751\u3757\u375c\u375fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65b5own\xbb\u1dbbeft\u0100;e\u2800\u373e\xf1\u092e;\u625cight\u0100;e\u32aa\u374b\xf1\u105aot;\u65ecinus;\u6a3alus;\u6a39b;\u69cdime;\u6a3bezium;\u63e2\u0180cht\u3772\u377d\u3781\u0100ry\u3777\u377b;\uc000\ud835\udcc9;\u4446cy;\u445brok;\u4167\u0100io\u378b\u378ex\xf4\u1777head\u0100lr\u3797\u37a0eftarro\xf7\u084fightarrow\xbb\u0f5d\u0900AHabcdfghlmoprstuw\u37d0\u37d3\u37d7\u37e4\u37f0\u37fc\u380e\u381c\u3823\u3834\u3851\u385d\u386b\u38a9\u38cc\u38d2\u38ea\u38f6r\xf2\u03edar;\u6963\u0100cr\u37dc\u37e2ute\u803b\xfa\u40fa\xf2\u1150r\u01e3\u37ea\0\u37edy;\u445eve;\u416d\u0100iy\u37f5\u37farc\u803b\xfb\u40fb;\u4443\u0180abh\u3803\u3806\u380br\xf2\u13adlac;\u4171a\xf2\u13c3\u0100ir\u3813\u3818sht;\u697e;\uc000\ud835\udd32rave\u803b\xf9\u40f9\u0161\u3827\u3831r\u0100lr\u382c\u382e\xbb\u0957\xbb\u1083lk;\u6580\u0100ct\u3839\u384d\u026f\u383f\0\0\u384arn\u0100;e\u3845\u3846\u631cr\xbb\u3846op;\u630fri;\u65f8\u0100al\u3856\u385acr;\u416b\u80bb\xa8\u0349\u0100gp\u3862\u3866on;\u4173f;\uc000\ud835\udd66\u0300adhlsu\u114b\u3878\u387d\u1372\u3891\u38a0own\xe1\u13b3arpoon\u0100lr\u3888\u388cef\xf4\u382digh\xf4\u382fi\u0180;hl\u3899\u389a\u389c\u43c5\xbb\u13faon\xbb\u389aparrows;\u61c8\u0180cit\u38b0\u38c4\u38c8\u026f\u38b6\0\0\u38c1rn\u0100;e\u38bc\u38bd\u631dr\xbb\u38bdop;\u630eng;\u416fri;\u65f9cr;\uc000\ud835\udcca\u0180dir\u38d9\u38dd\u38e2ot;\u62f0lde;\u4169i\u0100;f\u3730\u38e8\xbb\u1813\u0100am\u38ef\u38f2r\xf2\u38a8l\u803b\xfc\u40fcangle;\u69a7\u0780ABDacdeflnoprsz\u391c\u391f\u3929\u392d\u39b5\u39b8\u39bd\u39df\u39e4\u39e8\u39f3\u39f9\u39fd\u3a01\u3a20r\xf2\u03f7ar\u0100;v\u3926\u3927\u6ae8;\u6ae9as\xe8\u03e1\u0100nr\u3932\u3937grt;\u699c\u0380eknprst\u34e3\u3946\u394b\u3952\u395d\u3964\u3996app\xe1\u2415othin\xe7\u1e96\u0180hir\u34eb\u2ec8\u3959op\xf4\u2fb5\u0100;h\u13b7\u3962\xef\u318d\u0100iu\u3969\u396dgm\xe1\u33b3\u0100bp\u3972\u3984setneq\u0100;q\u397d\u3980\uc000\u228a\ufe00;\uc000\u2acb\ufe00setneq\u0100;q\u398f\u3992\uc000\u228b\ufe00;\uc000\u2acc\ufe00\u0100hr\u399b\u399fet\xe1\u369ciangle\u0100lr\u39aa\u39afeft\xbb\u0925ight\xbb\u1051y;\u4432ash\xbb\u1036\u0180elr\u39c4\u39d2\u39d7\u0180;be\u2dea\u39cb\u39cfar;\u62bbq;\u625alip;\u62ee\u0100bt\u39dc\u1468a\xf2\u1469r;\uc000\ud835\udd33tr\xe9\u39aesu\u0100bp\u39ef\u39f1\xbb\u0d1c\xbb\u0d59pf;\uc000\ud835\udd67ro\xf0\u0efbtr\xe9\u39b4\u0100cu\u3a06\u3a0br;\uc000\ud835\udccb\u0100bp\u3a10\u3a18n\u0100Ee\u3980\u3a16\xbb\u397en\u0100Ee\u3992\u3a1e\xbb\u3990igzag;\u699a\u0380cefoprs\u3a36\u3a3b\u3a56\u3a5b\u3a54\u3a61\u3a6airc;\u4175\u0100di\u3a40\u3a51\u0100bg\u3a45\u3a49ar;\u6a5fe\u0100;q\u15fa\u3a4f;\u6259erp;\u6118r;\uc000\ud835\udd34pf;\uc000\ud835\udd68\u0100;e\u1479\u3a66at\xe8\u1479cr;\uc000\ud835\udccc\u0ae3\u178e\u3a87\0\u3a8b\0\u3a90\u3a9b\0\0\u3a9d\u3aa8\u3aab\u3aaf\0\0\u3ac3\u3ace\0\u3ad8\u17dc\u17dftr\xe9\u17d1r;\uc000\ud835\udd35\u0100Aa\u3a94\u3a97r\xf2\u03c3r\xf2\u09f6;\u43be\u0100Aa\u3aa1\u3aa4r\xf2\u03b8r\xf2\u09eba\xf0\u2713is;\u62fb\u0180dpt\u17a4\u3ab5\u3abe\u0100fl\u3aba\u17a9;\uc000\ud835\udd69im\xe5\u17b2\u0100Aa\u3ac7\u3acar\xf2\u03cer\xf2\u0a01\u0100cq\u3ad2\u17b8r;\uc000\ud835\udccd\u0100pt\u17d6\u3adcr\xe9\u17d4\u0400acefiosu\u3af0\u3afd\u3b08\u3b0c\u3b11\u3b15\u3b1b\u3b21c\u0100uy\u3af6\u3afbte\u803b\xfd\u40fd;\u444f\u0100iy\u3b02\u3b06rc;\u4177;\u444bn\u803b\xa5\u40a5r;\uc000\ud835\udd36cy;\u4457pf;\uc000\ud835\udd6acr;\uc000\ud835\udcce\u0100cm\u3b26\u3b29y;\u444el\u803b\xff\u40ff\u0500acdefhiosw\u3b42\u3b48\u3b54\u3b58\u3b64\u3b69\u3b6d\u3b74\u3b7a\u3b80cute;\u417a\u0100ay\u3b4d\u3b52ron;\u417e;\u4437ot;\u417c\u0100et\u3b5d\u3b61tr\xe6\u155fa;\u43b6r;\uc000\ud835\udd37cy;\u4436grarr;\u61ddpf;\uc000\ud835\udd6bcr;\uc000\ud835\udccf\u0100jn\u3b85\u3b87;\u600dj;\u600c" - .split("") - .map(function (c) { return c.charCodeAt(0); })); -//# sourceMappingURL=decode-data-html.js.map - -/***/ }), - -/***/ 62060: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - -// Generated using scripts/write-decode-map.ts -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports["default"] = new Uint16Array( -// prettier-ignore -"\u0200aglq\t\x15\x18\x1b\u026d\x0f\0\0\x12p;\u4026os;\u4027t;\u403et;\u403cuot;\u4022" - .split("") - .map(function (c) { return c.charCodeAt(0); })); -//# sourceMappingURL=decode-data-xml.js.map - -/***/ }), - -/***/ 16577: -/***/ ((module, exports) => { - -"use strict"; -/** - * @author Toru Nagashima - * @copyright 2015 Toru Nagashima. All rights reserved. - * See LICENSE file in root directory for full license. - */ - - -Object.defineProperty(exports, "__esModule", ({ value: true })); - -/** - * @typedef {object} PrivateData - * @property {EventTarget} eventTarget The event target. - * @property {{type:string}} event The original event object. - * @property {number} eventPhase The current event phase. - * @property {EventTarget|null} currentTarget The current event target. - * @property {boolean} canceled The flag to prevent default. - * @property {boolean} stopped The flag to stop propagation. - * @property {boolean} immediateStopped The flag to stop propagation immediately. - * @property {Function|null} passiveListener The listener if the current listener is passive. Otherwise this is null. - * @property {number} timeStamp The unix time. - * @private - */ - -/** - * Private data for event wrappers. - * @type {WeakMap} - * @private - */ -const privateData = new WeakMap(); - -/** - * Cache for wrapper classes. - * @type {WeakMap} - * @private - */ -const wrappers = new WeakMap(); - -/** - * Get private data. - * @param {Event} event The event object to get private data. - * @returns {PrivateData} The private data of the event. - * @private - */ -function pd(event) { - const retv = privateData.get(event); - console.assert( - retv != null, - "'this' is expected an Event object, but got", - event - ); - return retv -} - -/** - * https://dom.spec.whatwg.org/#set-the-canceled-flag - * @param data {PrivateData} private data. - */ -function setCancelFlag(data) { - if (data.passiveListener != null) { - if ( - typeof console !== "undefined" && - typeof console.error === "function" - ) { - console.error( - "Unable to preventDefault inside passive event listener invocation.", - data.passiveListener - ); - } - return - } - if (!data.event.cancelable) { - return - } - - data.canceled = true; - if (typeof data.event.preventDefault === "function") { - data.event.preventDefault(); - } -} - -/** - * @see https://dom.spec.whatwg.org/#interface-event - * @private - */ -/** - * The event wrapper. - * @constructor - * @param {EventTarget} eventTarget The event target of this dispatching. - * @param {Event|{type:string}} event The original event to wrap. - */ -function Event(eventTarget, event) { - privateData.set(this, { - eventTarget, - event, - eventPhase: 2, - currentTarget: eventTarget, - canceled: false, - stopped: false, - immediateStopped: false, - passiveListener: null, - timeStamp: event.timeStamp || Date.now(), - }); - - // https://heycam.github.io/webidl/#Unforgeable - Object.defineProperty(this, "isTrusted", { value: false, enumerable: true }); - - // Define accessors - const keys = Object.keys(event); - for (let i = 0; i < keys.length; ++i) { - const key = keys[i]; - if (!(key in this)) { - Object.defineProperty(this, key, defineRedirectDescriptor(key)); - } - } -} - -// Should be enumerable, but class methods are not enumerable. -Event.prototype = { - /** - * The type of this event. - * @type {string} - */ - get type() { - return pd(this).event.type - }, - - /** - * The target of this event. - * @type {EventTarget} - */ - get target() { - return pd(this).eventTarget - }, - - /** - * The target of this event. - * @type {EventTarget} - */ - get currentTarget() { - return pd(this).currentTarget - }, - - /** - * @returns {EventTarget[]} The composed path of this event. - */ - composedPath() { - const currentTarget = pd(this).currentTarget; - if (currentTarget == null) { - return [] - } - return [currentTarget] - }, - - /** - * Constant of NONE. - * @type {number} - */ - get NONE() { - return 0 - }, - - /** - * Constant of CAPTURING_PHASE. - * @type {number} - */ - get CAPTURING_PHASE() { - return 1 - }, - - /** - * Constant of AT_TARGET. - * @type {number} - */ - get AT_TARGET() { - return 2 - }, - - /** - * Constant of BUBBLING_PHASE. - * @type {number} - */ - get BUBBLING_PHASE() { - return 3 - }, - - /** - * The target of this event. - * @type {number} - */ - get eventPhase() { - return pd(this).eventPhase - }, - - /** - * Stop event bubbling. - * @returns {void} - */ - stopPropagation() { - const data = pd(this); - - data.stopped = true; - if (typeof data.event.stopPropagation === "function") { - data.event.stopPropagation(); - } - }, - - /** - * Stop event bubbling. - * @returns {void} - */ - stopImmediatePropagation() { - const data = pd(this); - - data.stopped = true; - data.immediateStopped = true; - if (typeof data.event.stopImmediatePropagation === "function") { - data.event.stopImmediatePropagation(); - } - }, - - /** - * The flag to be bubbling. - * @type {boolean} - */ - get bubbles() { - return Boolean(pd(this).event.bubbles) - }, - - /** - * The flag to be cancelable. - * @type {boolean} - */ - get cancelable() { - return Boolean(pd(this).event.cancelable) - }, - - /** - * Cancel this event. - * @returns {void} - */ - preventDefault() { - setCancelFlag(pd(this)); - }, - - /** - * The flag to indicate cancellation state. - * @type {boolean} - */ - get defaultPrevented() { - return pd(this).canceled - }, - - /** - * The flag to be composed. - * @type {boolean} - */ - get composed() { - return Boolean(pd(this).event.composed) - }, - - /** - * The unix time of this event. - * @type {number} - */ - get timeStamp() { - return pd(this).timeStamp - }, - - /** - * The target of this event. - * @type {EventTarget} - * @deprecated - */ - get srcElement() { - return pd(this).eventTarget - }, - - /** - * The flag to stop event bubbling. - * @type {boolean} - * @deprecated - */ - get cancelBubble() { - return pd(this).stopped - }, - set cancelBubble(value) { - if (!value) { - return - } - const data = pd(this); - - data.stopped = true; - if (typeof data.event.cancelBubble === "boolean") { - data.event.cancelBubble = true; - } - }, - - /** - * The flag to indicate cancellation state. - * @type {boolean} - * @deprecated - */ - get returnValue() { - return !pd(this).canceled - }, - set returnValue(value) { - if (!value) { - setCancelFlag(pd(this)); - } - }, - - /** - * Initialize this event object. But do nothing under event dispatching. - * @param {string} type The event type. - * @param {boolean} [bubbles=false] The flag to be possible to bubble up. - * @param {boolean} [cancelable=false] The flag to be possible to cancel. - * @deprecated - */ - initEvent() { - // Do nothing. - }, -}; - -// `constructor` is not enumerable. -Object.defineProperty(Event.prototype, "constructor", { - value: Event, - configurable: true, - writable: true, -}); - -// Ensure `event instanceof window.Event` is `true`. -if (typeof window !== "undefined" && typeof window.Event !== "undefined") { - Object.setPrototypeOf(Event.prototype, window.Event.prototype); - - // Make association for wrappers. - wrappers.set(window.Event.prototype, Event); -} - -/** - * Get the property descriptor to redirect a given property. - * @param {string} key Property name to define property descriptor. - * @returns {PropertyDescriptor} The property descriptor to redirect the property. - * @private - */ -function defineRedirectDescriptor(key) { - return { - get() { - return pd(this).event[key] - }, - set(value) { - pd(this).event[key] = value; - }, - configurable: true, - enumerable: true, - } -} - -/** - * Get the property descriptor to call a given method property. - * @param {string} key Property name to define property descriptor. - * @returns {PropertyDescriptor} The property descriptor to call the method property. - * @private - */ -function defineCallDescriptor(key) { - return { - value() { - const event = pd(this).event; - return event[key].apply(event, arguments) - }, - configurable: true, - enumerable: true, - } -} - -/** - * Define new wrapper class. - * @param {Function} BaseEvent The base wrapper class. - * @param {Object} proto The prototype of the original event. - * @returns {Function} The defined wrapper class. - * @private - */ -function defineWrapper(BaseEvent, proto) { - const keys = Object.keys(proto); - if (keys.length === 0) { - return BaseEvent - } - - /** CustomEvent */ - function CustomEvent(eventTarget, event) { - BaseEvent.call(this, eventTarget, event); - } - - CustomEvent.prototype = Object.create(BaseEvent.prototype, { - constructor: { value: CustomEvent, configurable: true, writable: true }, - }); - - // Define accessors. - for (let i = 0; i < keys.length; ++i) { - const key = keys[i]; - if (!(key in BaseEvent.prototype)) { - const descriptor = Object.getOwnPropertyDescriptor(proto, key); - const isFunc = typeof descriptor.value === "function"; - Object.defineProperty( - CustomEvent.prototype, - key, - isFunc - ? defineCallDescriptor(key) - : defineRedirectDescriptor(key) - ); - } - } - - return CustomEvent -} - -/** - * Get the wrapper class of a given prototype. - * @param {Object} proto The prototype of the original event to get its wrapper. - * @returns {Function} The wrapper class. - * @private - */ -function getWrapper(proto) { - if (proto == null || proto === Object.prototype) { - return Event - } - - let wrapper = wrappers.get(proto); - if (wrapper == null) { - wrapper = defineWrapper(getWrapper(Object.getPrototypeOf(proto)), proto); - wrappers.set(proto, wrapper); - } - return wrapper -} - -/** - * Wrap a given event to management a dispatching. - * @param {EventTarget} eventTarget The event target of this dispatching. - * @param {Object} event The event to wrap. - * @returns {Event} The wrapper instance. - * @private - */ -function wrapEvent(eventTarget, event) { - const Wrapper = getWrapper(Object.getPrototypeOf(event)); - return new Wrapper(eventTarget, event) -} - -/** - * Get the immediateStopped flag of a given event. - * @param {Event} event The event to get. - * @returns {boolean} The flag to stop propagation immediately. - * @private - */ -function isStopped(event) { - return pd(event).immediateStopped -} - -/** - * Set the current event phase of a given event. - * @param {Event} event The event to set current target. - * @param {number} eventPhase New event phase. - * @returns {void} - * @private - */ -function setEventPhase(event, eventPhase) { - pd(event).eventPhase = eventPhase; -} - -/** - * Set the current target of a given event. - * @param {Event} event The event to set current target. - * @param {EventTarget|null} currentTarget New current target. - * @returns {void} - * @private - */ -function setCurrentTarget(event, currentTarget) { - pd(event).currentTarget = currentTarget; -} - -/** - * Set a passive listener of a given event. - * @param {Event} event The event to set current target. - * @param {Function|null} passiveListener New passive listener. - * @returns {void} - * @private - */ -function setPassiveListener(event, passiveListener) { - pd(event).passiveListener = passiveListener; -} - -/** - * @typedef {object} ListenerNode - * @property {Function} listener - * @property {1|2|3} listenerType - * @property {boolean} passive - * @property {boolean} once - * @property {ListenerNode|null} next - * @private - */ - -/** - * @type {WeakMap>} - * @private - */ -const listenersMap = new WeakMap(); - -// Listener types -const CAPTURE = 1; -const BUBBLE = 2; -const ATTRIBUTE = 3; - -/** - * Check whether a given value is an object or not. - * @param {any} x The value to check. - * @returns {boolean} `true` if the value is an object. - */ -function isObject(x) { - return x !== null && typeof x === "object" //eslint-disable-line no-restricted-syntax -} - -/** - * Get listeners. - * @param {EventTarget} eventTarget The event target to get. - * @returns {Map} The listeners. - * @private - */ -function getListeners(eventTarget) { - const listeners = listenersMap.get(eventTarget); - if (listeners == null) { - throw new TypeError( - "'this' is expected an EventTarget object, but got another value." - ) - } - return listeners -} - -/** - * Get the property descriptor for the event attribute of a given event. - * @param {string} eventName The event name to get property descriptor. - * @returns {PropertyDescriptor} The property descriptor. - * @private - */ -function defineEventAttributeDescriptor(eventName) { - return { - get() { - const listeners = getListeners(this); - let node = listeners.get(eventName); - while (node != null) { - if (node.listenerType === ATTRIBUTE) { - return node.listener - } - node = node.next; - } - return null - }, - - set(listener) { - if (typeof listener !== "function" && !isObject(listener)) { - listener = null; // eslint-disable-line no-param-reassign - } - const listeners = getListeners(this); - - // Traverse to the tail while removing old value. - let prev = null; - let node = listeners.get(eventName); - while (node != null) { - if (node.listenerType === ATTRIBUTE) { - // Remove old value. - if (prev !== null) { - prev.next = node.next; - } else if (node.next !== null) { - listeners.set(eventName, node.next); - } else { - listeners.delete(eventName); - } - } else { - prev = node; - } - - node = node.next; - } - - // Add new value. - if (listener !== null) { - const newNode = { - listener, - listenerType: ATTRIBUTE, - passive: false, - once: false, - next: null, - }; - if (prev === null) { - listeners.set(eventName, newNode); - } else { - prev.next = newNode; - } - } - }, - configurable: true, - enumerable: true, - } -} - -/** - * Define an event attribute (e.g. `eventTarget.onclick`). - * @param {Object} eventTargetPrototype The event target prototype to define an event attrbite. - * @param {string} eventName The event name to define. - * @returns {void} - */ -function defineEventAttribute(eventTargetPrototype, eventName) { - Object.defineProperty( - eventTargetPrototype, - `on${eventName}`, - defineEventAttributeDescriptor(eventName) - ); -} - -/** - * Define a custom EventTarget with event attributes. - * @param {string[]} eventNames Event names for event attributes. - * @returns {EventTarget} The custom EventTarget. - * @private - */ -function defineCustomEventTarget(eventNames) { - /** CustomEventTarget */ - function CustomEventTarget() { - EventTarget.call(this); - } - - CustomEventTarget.prototype = Object.create(EventTarget.prototype, { - constructor: { - value: CustomEventTarget, - configurable: true, - writable: true, - }, - }); - - for (let i = 0; i < eventNames.length; ++i) { - defineEventAttribute(CustomEventTarget.prototype, eventNames[i]); - } - - return CustomEventTarget -} - -/** - * EventTarget. - * - * - This is constructor if no arguments. - * - This is a function which returns a CustomEventTarget constructor if there are arguments. - * - * For example: - * - * class A extends EventTarget {} - * class B extends EventTarget("message") {} - * class C extends EventTarget("message", "error") {} - * class D extends EventTarget(["message", "error"]) {} - */ -function EventTarget() { - /*eslint-disable consistent-return */ - if (this instanceof EventTarget) { - listenersMap.set(this, new Map()); - return - } - if (arguments.length === 1 && Array.isArray(arguments[0])) { - return defineCustomEventTarget(arguments[0]) - } - if (arguments.length > 0) { - const types = new Array(arguments.length); - for (let i = 0; i < arguments.length; ++i) { - types[i] = arguments[i]; - } - return defineCustomEventTarget(types) - } - throw new TypeError("Cannot call a class as a function") - /*eslint-enable consistent-return */ -} - -// Should be enumerable, but class methods are not enumerable. -EventTarget.prototype = { - /** - * Add a given listener to this event target. - * @param {string} eventName The event name to add. - * @param {Function} listener The listener to add. - * @param {boolean|{capture?:boolean,passive?:boolean,once?:boolean}} [options] The options for this listener. - * @returns {void} - */ - addEventListener(eventName, listener, options) { - if (listener == null) { - return - } - if (typeof listener !== "function" && !isObject(listener)) { - throw new TypeError("'listener' should be a function or an object.") - } - - const listeners = getListeners(this); - const optionsIsObj = isObject(options); - const capture = optionsIsObj - ? Boolean(options.capture) - : Boolean(options); - const listenerType = capture ? CAPTURE : BUBBLE; - const newNode = { - listener, - listenerType, - passive: optionsIsObj && Boolean(options.passive), - once: optionsIsObj && Boolean(options.once), - next: null, - }; - - // Set it as the first node if the first node is null. - let node = listeners.get(eventName); - if (node === undefined) { - listeners.set(eventName, newNode); - return - } - - // Traverse to the tail while checking duplication.. - let prev = null; - while (node != null) { - if ( - node.listener === listener && - node.listenerType === listenerType - ) { - // Should ignore duplication. - return - } - prev = node; - node = node.next; - } - - // Add it. - prev.next = newNode; - }, - - /** - * Remove a given listener from this event target. - * @param {string} eventName The event name to remove. - * @param {Function} listener The listener to remove. - * @param {boolean|{capture?:boolean,passive?:boolean,once?:boolean}} [options] The options for this listener. - * @returns {void} - */ - removeEventListener(eventName, listener, options) { - if (listener == null) { - return - } - - const listeners = getListeners(this); - const capture = isObject(options) - ? Boolean(options.capture) - : Boolean(options); - const listenerType = capture ? CAPTURE : BUBBLE; - - let prev = null; - let node = listeners.get(eventName); - while (node != null) { - if ( - node.listener === listener && - node.listenerType === listenerType - ) { - if (prev !== null) { - prev.next = node.next; - } else if (node.next !== null) { - listeners.set(eventName, node.next); - } else { - listeners.delete(eventName); - } - return - } - - prev = node; - node = node.next; - } - }, - - /** - * Dispatch a given event. - * @param {Event|{type:string}} event The event to dispatch. - * @returns {boolean} `false` if canceled. - */ - dispatchEvent(event) { - if (event == null || typeof event.type !== "string") { - throw new TypeError('"event.type" should be a string.') - } - - // If listeners aren't registered, terminate. - const listeners = getListeners(this); - const eventName = event.type; - let node = listeners.get(eventName); - if (node == null) { - return true - } - - // Since we cannot rewrite several properties, so wrap object. - const wrappedEvent = wrapEvent(this, event); - - // This doesn't process capturing phase and bubbling phase. - // This isn't participating in a tree. - let prev = null; - while (node != null) { - // Remove this listener if it's once - if (node.once) { - if (prev !== null) { - prev.next = node.next; - } else if (node.next !== null) { - listeners.set(eventName, node.next); - } else { - listeners.delete(eventName); - } - } else { - prev = node; - } - - // Call this listener - setPassiveListener( - wrappedEvent, - node.passive ? node.listener : null - ); - if (typeof node.listener === "function") { - try { - node.listener.call(this, wrappedEvent); - } catch (err) { - if ( - typeof console !== "undefined" && - typeof console.error === "function" - ) { - console.error(err); - } - } - } else if ( - node.listenerType !== ATTRIBUTE && - typeof node.listener.handleEvent === "function" - ) { - node.listener.handleEvent(wrappedEvent); - } - - // Break if `event.stopImmediatePropagation` was called. - if (isStopped(wrappedEvent)) { - break - } - - node = node.next; - } - setPassiveListener(wrappedEvent, null); - setEventPhase(wrappedEvent, 0); - setCurrentTarget(wrappedEvent, null); - - return !wrappedEvent.defaultPrevented - }, -}; - -// `constructor` is not enumerable. -Object.defineProperty(EventTarget.prototype, "constructor", { - value: EventTarget, - configurable: true, - writable: true, -}); - -// Ensure `eventTarget instanceof window.EventTarget` is `true`. -if ( - typeof window !== "undefined" && - typeof window.EventTarget !== "undefined" -) { - Object.setPrototypeOf(EventTarget.prototype, window.EventTarget.prototype); -} - -exports.defineEventAttribute = defineEventAttribute; -exports.EventTarget = EventTarget; -exports["default"] = EventTarget; - -module.exports = EventTarget -module.exports.EventTarget = module.exports["default"] = EventTarget -module.exports.defineEventAttribute = defineEventAttribute -//# sourceMappingURL=event-target-shim.js.map - - -/***/ }), - -/***/ 96454: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -var CombinedStream = __nccwpck_require__(35630); -var util = __nccwpck_require__(39023); -var path = __nccwpck_require__(16928); -var http = __nccwpck_require__(58611); -var https = __nccwpck_require__(65692); -var parseUrl = (__nccwpck_require__(87016).parse); -var fs = __nccwpck_require__(79896); -var Stream = (__nccwpck_require__(2203).Stream); -var mime = __nccwpck_require__(14096); -var asynckit = __nccwpck_require__(31324); -var populate = __nccwpck_require__(11835); - -// Public API -module.exports = FormData; - -// make it a Stream -util.inherits(FormData, CombinedStream); - -/** - * Create readable "multipart/form-data" streams. - * Can be used to submit forms - * and file uploads to other web applications. - * - * @constructor - * @param {Object} options - Properties to be added/overriden for FormData and CombinedStream - */ -function FormData(options) { - if (!(this instanceof FormData)) { - return new FormData(options); - } - - this._overheadLength = 0; - this._valueLength = 0; - this._valuesToMeasure = []; - - CombinedStream.call(this); - - options = options || {}; - for (var option in options) { - this[option] = options[option]; - } -} - -FormData.LINE_BREAK = '\r\n'; -FormData.DEFAULT_CONTENT_TYPE = 'application/octet-stream'; - -FormData.prototype.append = function(field, value, options) { - - options = options || {}; - - // allow filename as single option - if (typeof options == 'string') { - options = {filename: options}; - } - - var append = CombinedStream.prototype.append.bind(this); - - // all that streamy business can't handle numbers - if (typeof value == 'number') { - value = '' + value; - } - - // https://github.com/felixge/node-form-data/issues/38 - if (util.isArray(value)) { - // Please convert your array into string - // the way web server expects it - this._error(new Error('Arrays are not supported.')); - return; - } - - var header = this._multiPartHeader(field, value, options); - var footer = this._multiPartFooter(); - - append(header); - append(value); - append(footer); - - // pass along options.knownLength - this._trackLength(header, value, options); -}; - -FormData.prototype._trackLength = function(header, value, options) { - var valueLength = 0; - - // used w/ getLengthSync(), when length is known. - // e.g. for streaming directly from a remote server, - // w/ a known file a size, and not wanting to wait for - // incoming file to finish to get its size. - if (options.knownLength != null) { - valueLength += +options.knownLength; - } else if (Buffer.isBuffer(value)) { - valueLength = value.length; - } else if (typeof value === 'string') { - valueLength = Buffer.byteLength(value); - } - - this._valueLength += valueLength; - - // @check why add CRLF? does this account for custom/multiple CRLFs? - this._overheadLength += - Buffer.byteLength(header) + - FormData.LINE_BREAK.length; - - // empty or either doesn't have path or not an http response or not a stream - if (!value || ( !value.path && !(value.readable && value.hasOwnProperty('httpVersion')) && !(value instanceof Stream))) { - return; - } - - // no need to bother with the length - if (!options.knownLength) { - this._valuesToMeasure.push(value); - } -}; - -FormData.prototype._lengthRetriever = function(value, callback) { - - if (value.hasOwnProperty('fd')) { - - // take read range into a account - // `end` = Infinity –> read file till the end - // - // TODO: Looks like there is bug in Node fs.createReadStream - // it doesn't respect `end` options without `start` options - // Fix it when node fixes it. - // https://github.com/joyent/node/issues/7819 - if (value.end != undefined && value.end != Infinity && value.start != undefined) { - - // when end specified - // no need to calculate range - // inclusive, starts with 0 - callback(null, value.end + 1 - (value.start ? value.start : 0)); - - // not that fast snoopy - } else { - // still need to fetch file size from fs - fs.stat(value.path, function(err, stat) { - - var fileSize; - - if (err) { - callback(err); - return; - } - - // update final size based on the range options - fileSize = stat.size - (value.start ? value.start : 0); - callback(null, fileSize); - }); - } - - // or http response - } else if (value.hasOwnProperty('httpVersion')) { - callback(null, +value.headers['content-length']); - - // or request stream http://github.com/mikeal/request - } else if (value.hasOwnProperty('httpModule')) { - // wait till response come back - value.on('response', function(response) { - value.pause(); - callback(null, +response.headers['content-length']); - }); - value.resume(); - - // something else - } else { - callback('Unknown stream'); - } -}; - -FormData.prototype._multiPartHeader = function(field, value, options) { - // custom header specified (as string)? - // it becomes responsible for boundary - // (e.g. to handle extra CRLFs on .NET servers) - if (typeof options.header == 'string') { - return options.header; - } - - var contentDisposition = this._getContentDisposition(value, options); - var contentType = this._getContentType(value, options); - - var contents = ''; - var headers = { - // add custom disposition as third element or keep it two elements if not - 'Content-Disposition': ['form-data', 'name="' + field + '"'].concat(contentDisposition || []), - // if no content type. allow it to be empty array - 'Content-Type': [].concat(contentType || []) - }; - - // allow custom headers. - if (typeof options.header == 'object') { - populate(headers, options.header); - } - - var header; - for (var prop in headers) { - if (!headers.hasOwnProperty(prop)) continue; - header = headers[prop]; - - // skip nullish headers. - if (header == null) { - continue; - } - - // convert all headers to arrays. - if (!Array.isArray(header)) { - header = [header]; - } - - // add non-empty headers. - if (header.length) { - contents += prop + ': ' + header.join('; ') + FormData.LINE_BREAK; - } - } - - return '--' + this.getBoundary() + FormData.LINE_BREAK + contents + FormData.LINE_BREAK; -}; - -FormData.prototype._getContentDisposition = function(value, options) { - - var filename - , contentDisposition - ; - - if (typeof options.filepath === 'string') { - // custom filepath for relative paths - filename = path.normalize(options.filepath).replace(/\\/g, '/'); - } else if (options.filename || value.name || value.path) { - // custom filename take precedence - // formidable and the browser add a name property - // fs- and request- streams have path property - filename = path.basename(options.filename || value.name || value.path); - } else if (value.readable && value.hasOwnProperty('httpVersion')) { - // or try http response - filename = path.basename(value.client._httpMessage.path || ''); - } - - if (filename) { - contentDisposition = 'filename="' + filename + '"'; - } - - return contentDisposition; -}; - -FormData.prototype._getContentType = function(value, options) { - - // use custom content-type above all - var contentType = options.contentType; - - // or try `name` from formidable, browser - if (!contentType && value.name) { - contentType = mime.lookup(value.name); - } - - // or try `path` from fs-, request- streams - if (!contentType && value.path) { - contentType = mime.lookup(value.path); - } - - // or if it's http-reponse - if (!contentType && value.readable && value.hasOwnProperty('httpVersion')) { - contentType = value.headers['content-type']; - } - - // or guess it from the filepath or filename - if (!contentType && (options.filepath || options.filename)) { - contentType = mime.lookup(options.filepath || options.filename); - } - - // fallback to the default content type if `value` is not simple value - if (!contentType && typeof value == 'object') { - contentType = FormData.DEFAULT_CONTENT_TYPE; - } - - return contentType; -}; - -FormData.prototype._multiPartFooter = function() { - return function(next) { - var footer = FormData.LINE_BREAK; - - var lastPart = (this._streams.length === 0); - if (lastPart) { - footer += this._lastBoundary(); - } - - next(footer); - }.bind(this); -}; - -FormData.prototype._lastBoundary = function() { - return '--' + this.getBoundary() + '--' + FormData.LINE_BREAK; -}; - -FormData.prototype.getHeaders = function(userHeaders) { - var header; - var formHeaders = { - 'content-type': 'multipart/form-data; boundary=' + this.getBoundary() - }; - - for (header in userHeaders) { - if (userHeaders.hasOwnProperty(header)) { - formHeaders[header.toLowerCase()] = userHeaders[header]; - } - } - - return formHeaders; -}; - -FormData.prototype.setBoundary = function(boundary) { - this._boundary = boundary; -}; - -FormData.prototype.getBoundary = function() { - if (!this._boundary) { - this._generateBoundary(); - } - - return this._boundary; -}; - -FormData.prototype.getBuffer = function() { - var dataBuffer = new Buffer.alloc( 0 ); - var boundary = this.getBoundary(); - - // Create the form content. Add Line breaks to the end of data. - for (var i = 0, len = this._streams.length; i < len; i++) { - if (typeof this._streams[i] !== 'function') { - - // Add content to the buffer. - if(Buffer.isBuffer(this._streams[i])) { - dataBuffer = Buffer.concat( [dataBuffer, this._streams[i]]); - }else { - dataBuffer = Buffer.concat( [dataBuffer, Buffer.from(this._streams[i])]); - } - - // Add break after content. - if (typeof this._streams[i] !== 'string' || this._streams[i].substring( 2, boundary.length + 2 ) !== boundary) { - dataBuffer = Buffer.concat( [dataBuffer, Buffer.from(FormData.LINE_BREAK)] ); - } - } - } - - // Add the footer and return the Buffer object. - return Buffer.concat( [dataBuffer, Buffer.from(this._lastBoundary())] ); -}; - -FormData.prototype._generateBoundary = function() { - // This generates a 50 character boundary similar to those used by Firefox. - // They are optimized for boyer-moore parsing. - var boundary = '--------------------------'; - for (var i = 0; i < 24; i++) { - boundary += Math.floor(Math.random() * 10).toString(16); - } - - this._boundary = boundary; -}; - -// Note: getLengthSync DOESN'T calculate streams length -// As workaround one can calculate file size manually -// and add it as knownLength option -FormData.prototype.getLengthSync = function() { - var knownLength = this._overheadLength + this._valueLength; - - // Don't get confused, there are 3 "internal" streams for each keyval pair - // so it basically checks if there is any value added to the form - if (this._streams.length) { - knownLength += this._lastBoundary().length; - } - - // https://github.com/form-data/form-data/issues/40 - if (!this.hasKnownLength()) { - // Some async length retrievers are present - // therefore synchronous length calculation is false. - // Please use getLength(callback) to get proper length - this._error(new Error('Cannot calculate proper length in synchronous way.')); - } - - return knownLength; -}; - -// Public API to check if length of added values is known -// https://github.com/form-data/form-data/issues/196 -// https://github.com/form-data/form-data/issues/262 -FormData.prototype.hasKnownLength = function() { - var hasKnownLength = true; - - if (this._valuesToMeasure.length) { - hasKnownLength = false; - } - - return hasKnownLength; -}; - -FormData.prototype.getLength = function(cb) { - var knownLength = this._overheadLength + this._valueLength; - - if (this._streams.length) { - knownLength += this._lastBoundary().length; - } - - if (!this._valuesToMeasure.length) { - process.nextTick(cb.bind(this, null, knownLength)); - return; - } - - asynckit.parallel(this._valuesToMeasure, this._lengthRetriever, function(err, values) { - if (err) { - cb(err); - return; - } - - values.forEach(function(length) { - knownLength += length; - }); - - cb(null, knownLength); - }); -}; - -FormData.prototype.submit = function(params, cb) { - var request - , options - , defaults = {method: 'post'} - ; - - // parse provided url if it's string - // or treat it as options object - if (typeof params == 'string') { - - params = parseUrl(params); - options = populate({ - port: params.port, - path: params.pathname, - host: params.hostname, - protocol: params.protocol - }, defaults); - - // use custom params - } else { - - options = populate(params, defaults); - // if no port provided use default one - if (!options.port) { - options.port = options.protocol == 'https:' ? 443 : 80; - } - } - - // put that good code in getHeaders to some use - options.headers = this.getHeaders(params.headers); - - // https if specified, fallback to http in any other case - if (options.protocol == 'https:') { - request = https.request(options); - } else { - request = http.request(options); - } - - // get content length and fire away - this.getLength(function(err, length) { - if (err && err !== 'Unknown stream') { - this._error(err); - return; - } - - // add content length - if (length) { - request.setHeader('Content-Length', length); - } - - this.pipe(request); - if (cb) { - var onResponse; - - var callback = function (error, responce) { - request.removeListener('error', callback); - request.removeListener('response', onResponse); - - return cb.call(this, error, responce); - }; - - onResponse = callback.bind(this, null); - - request.on('error', callback); - request.on('response', onResponse); - } - }.bind(this)); - - return request; -}; - -FormData.prototype._error = function(err) { - if (!this.error) { - this.error = err; - this.pause(); - this.emit('error', err); - } -}; - -FormData.prototype.toString = function () { - return '[object FormData]'; -}; - - -/***/ }), - -/***/ 11835: -/***/ ((module) => { - -// populates missing values -module.exports = function(dst, src) { - - Object.keys(src).forEach(function(prop) - { - dst[prop] = dst[prop] || src[prop]; - }); - - return dst; -}; - - -/***/ }), - -/***/ 83813: -/***/ ((module) => { - -"use strict"; - - -module.exports = (flag, argv = process.argv) => { - const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--'); - const position = argv.indexOf(prefix + flag); - const terminatorPosition = argv.indexOf('--'); - return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition); -}; - - -/***/ }), - -/***/ 27477: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -var hash = exports; - -hash.utils = __nccwpck_require__(23215); -hash.common = __nccwpck_require__(77265); -hash.sha = __nccwpck_require__(10316); -hash.ripemd = __nccwpck_require__(38831); -hash.hmac = __nccwpck_require__(96535); - -// Proxy hash functions to the main object -hash.sha1 = hash.sha.sha1; -hash.sha256 = hash.sha.sha256; -hash.sha224 = hash.sha.sha224; -hash.sha384 = hash.sha.sha384; -hash.sha512 = hash.sha.sha512; -hash.ripemd160 = hash.ripemd.ripemd160; - - -/***/ }), - -/***/ 77265: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -var utils = __nccwpck_require__(23215); -var assert = __nccwpck_require__(63798); - -function BlockHash() { - 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; -} -exports.BlockHash = BlockHash; - -BlockHash.prototype.update = function update(msg, enc) { - // Convert message to array, pad it, and join into 32bit blocks - msg = utils.toArray(msg, enc); - if (!this.pending) - this.pending = msg; - else - this.pending = this.pending.concat(msg); - this.pendingTotal += msg.length; - - // Enough data, try updating - if (this.pending.length >= this._delta8) { - msg = this.pending; - - // Process pending data in blocks - var r = msg.length % this._delta8; - this.pending = msg.slice(msg.length - r, msg.length); - if (this.pending.length === 0) - this.pending = null; - - msg = utils.join32(msg, 0, msg.length - r, this.endian); - for (var i = 0; i < msg.length; i += this._delta32) - this._update(msg, i, i + this._delta32); - } - - return this; -}; - -BlockHash.prototype.digest = function digest(enc) { - this.update(this._pad()); - assert(this.pending === null); - - return this._digest(enc); -}; - -BlockHash.prototype._pad = function pad() { - var len = this.pendingTotal; - var bytes = this._delta8; - var k = bytes - ((len + this.padLength) % bytes); - var res = new Array(k + this.padLength); - res[0] = 0x80; - for (var i = 1; i < k; i++) - res[i] = 0; - - // Append length - len <<= 3; - if (this.endian === 'big') { - for (var t = 8; t < this.padLength; t++) - res[i++] = 0; - - res[i++] = 0; - res[i++] = 0; - res[i++] = 0; - res[i++] = 0; - res[i++] = (len >>> 24) & 0xff; - res[i++] = (len >>> 16) & 0xff; - res[i++] = (len >>> 8) & 0xff; - res[i++] = len & 0xff; - } else { - res[i++] = len & 0xff; - res[i++] = (len >>> 8) & 0xff; - res[i++] = (len >>> 16) & 0xff; - res[i++] = (len >>> 24) & 0xff; - res[i++] = 0; - res[i++] = 0; - res[i++] = 0; - res[i++] = 0; - - for (t = 8; t < this.padLength; t++) - res[i++] = 0; - } - - return res; -}; - - -/***/ }), - -/***/ 96535: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var utils = __nccwpck_require__(23215); -var assert = __nccwpck_require__(63798); - -function Hmac(hash, key, enc) { - if (!(this instanceof Hmac)) - return new Hmac(hash, key, enc); - this.Hash = hash; - this.blockSize = hash.blockSize / 8; - this.outSize = hash.outSize / 8; - this.inner = null; - this.outer = null; - - this._init(utils.toArray(key, enc)); -} -module.exports = Hmac; - -Hmac.prototype._init = function init(key) { - // Shorten key, if needed - if (key.length > this.blockSize) - key = new this.Hash().update(key).digest(); - assert(key.length <= this.blockSize); - - // Add padding to key - for (var i = key.length; i < this.blockSize; i++) - key.push(0); - - for (i = 0; i < key.length; i++) - key[i] ^= 0x36; - this.inner = new this.Hash().update(key); - - // 0x36 ^ 0x5c = 0x6a - for (i = 0; i < key.length; i++) - key[i] ^= 0x6a; - this.outer = new this.Hash().update(key); -}; - -Hmac.prototype.update = function update(msg, enc) { - this.inner.update(msg, enc); - return this; -}; - -Hmac.prototype.digest = function digest(enc) { - this.outer.update(this.inner.digest()); - return this.outer.digest(enc); -}; - - -/***/ }), - -/***/ 38831: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -var utils = __nccwpck_require__(23215); -var common = __nccwpck_require__(77265); - -var rotl32 = utils.rotl32; -var sum32 = utils.sum32; -var sum32_3 = utils.sum32_3; -var sum32_4 = utils.sum32_4; -var BlockHash = common.BlockHash; - -function RIPEMD160() { - if (!(this instanceof RIPEMD160)) - return new RIPEMD160(); - - BlockHash.call(this); - - this.h = [ 0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0 ]; - this.endian = 'little'; -} -utils.inherits(RIPEMD160, BlockHash); -exports.ripemd160 = RIPEMD160; - -RIPEMD160.blockSize = 512; -RIPEMD160.outSize = 160; -RIPEMD160.hmacStrength = 192; -RIPEMD160.padLength = 64; - -RIPEMD160.prototype._update = function update(msg, start) { - var A = this.h[0]; - var B = this.h[1]; - var C = this.h[2]; - var D = this.h[3]; - var E = this.h[4]; - var Ah = A; - var Bh = B; - var Ch = C; - var Dh = D; - var Eh = E; - for (var j = 0; j < 80; j++) { - var T = sum32( - rotl32( - sum32_4(A, f(j, B, C, D), msg[r[j] + start], K(j)), - s[j]), - E); - A = E; - E = D; - D = rotl32(C, 10); - C = B; - B = T; - T = sum32( - rotl32( - sum32_4(Ah, f(79 - j, Bh, Ch, Dh), msg[rh[j] + start], Kh(j)), - sh[j]), - Eh); - Ah = Eh; - Eh = Dh; - Dh = rotl32(Ch, 10); - Ch = Bh; - Bh = T; - } - T = sum32_3(this.h[1], C, Dh); - this.h[1] = sum32_3(this.h[2], D, Eh); - this.h[2] = sum32_3(this.h[3], E, Ah); - this.h[3] = sum32_3(this.h[4], A, Bh); - this.h[4] = sum32_3(this.h[0], B, Ch); - this.h[0] = T; -}; - -RIPEMD160.prototype._digest = function digest(enc) { - if (enc === 'hex') - return utils.toHex32(this.h, 'little'); - else - return utils.split32(this.h, 'little'); -}; - -function f(j, x, y, z) { - if (j <= 15) - return x ^ y ^ z; - else if (j <= 31) - return (x & y) | ((~x) & z); - else if (j <= 47) - return (x | (~y)) ^ z; - else if (j <= 63) - return (x & z) | (y & (~z)); - else - return x ^ (y | (~z)); -} - -function K(j) { - if (j <= 15) - return 0x00000000; - else if (j <= 31) - return 0x5a827999; - else if (j <= 47) - return 0x6ed9eba1; - else if (j <= 63) - return 0x8f1bbcdc; - else - return 0xa953fd4e; -} - -function Kh(j) { - if (j <= 15) - return 0x50a28be6; - else if (j <= 31) - return 0x5c4dd124; - else if (j <= 47) - return 0x6d703ef3; - else if (j <= 63) - return 0x7a6d76e9; - else - return 0x00000000; -} - -var r = [ - 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 -]; - -var rh = [ - 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 -]; - -var s = [ - 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 -]; - -var sh = [ - 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 -]; - - -/***/ }), - -/***/ 10316: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -exports.sha1 = __nccwpck_require__(2576); -exports.sha224 = __nccwpck_require__(33239); -exports.sha256 = __nccwpck_require__(27190); -exports.sha384 = __nccwpck_require__(1926); -exports.sha512 = __nccwpck_require__(82423); - - -/***/ }), - -/***/ 2576: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var utils = __nccwpck_require__(23215); -var common = __nccwpck_require__(77265); -var shaCommon = __nccwpck_require__(49562); - -var rotl32 = utils.rotl32; -var sum32 = utils.sum32; -var sum32_5 = utils.sum32_5; -var ft_1 = shaCommon.ft_1; -var BlockHash = common.BlockHash; - -var sha1_K = [ - 0x5A827999, 0x6ED9EBA1, - 0x8F1BBCDC, 0xCA62C1D6 -]; - -function SHA1() { - if (!(this instanceof SHA1)) - return new SHA1(); - - BlockHash.call(this); - this.h = [ - 0x67452301, 0xefcdab89, 0x98badcfe, - 0x10325476, 0xc3d2e1f0 ]; - this.W = new Array(80); -} - -utils.inherits(SHA1, BlockHash); -module.exports = SHA1; - -SHA1.blockSize = 512; -SHA1.outSize = 160; -SHA1.hmacStrength = 80; -SHA1.padLength = 64; - -SHA1.prototype._update = function _update(msg, start) { - var W = this.W; - - for (var i = 0; i < 16; i++) - W[i] = msg[start + i]; - - for(; i < W.length; i++) - W[i] = rotl32(W[i - 3] ^ W[i - 8] ^ W[i - 14] ^ W[i - 16], 1); - - var a = this.h[0]; - var b = this.h[1]; - var c = this.h[2]; - var d = this.h[3]; - var e = this.h[4]; - - for (i = 0; i < W.length; i++) { - var s = ~~(i / 20); - var t = sum32_5(rotl32(a, 5), ft_1(s, b, c, d), e, W[i], sha1_K[s]); - e = d; - d = c; - c = rotl32(b, 30); - b = a; - a = t; - } - - this.h[0] = sum32(this.h[0], a); - this.h[1] = sum32(this.h[1], b); - this.h[2] = sum32(this.h[2], c); - this.h[3] = sum32(this.h[3], d); - this.h[4] = sum32(this.h[4], e); -}; - -SHA1.prototype._digest = function digest(enc) { - if (enc === 'hex') - return utils.toHex32(this.h, 'big'); - else - return utils.split32(this.h, 'big'); -}; - - -/***/ }), - -/***/ 33239: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var utils = __nccwpck_require__(23215); -var SHA256 = __nccwpck_require__(27190); - -function SHA224() { - if (!(this instanceof SHA224)) - return new SHA224(); - - SHA256.call(this); - this.h = [ - 0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939, - 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4 ]; -} -utils.inherits(SHA224, SHA256); -module.exports = SHA224; - -SHA224.blockSize = 512; -SHA224.outSize = 224; -SHA224.hmacStrength = 192; -SHA224.padLength = 64; - -SHA224.prototype._digest = function digest(enc) { - // Just truncate output - if (enc === 'hex') - return utils.toHex32(this.h.slice(0, 7), 'big'); - else - return utils.split32(this.h.slice(0, 7), 'big'); -}; - - - -/***/ }), - -/***/ 27190: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var utils = __nccwpck_require__(23215); -var common = __nccwpck_require__(77265); -var shaCommon = __nccwpck_require__(49562); -var assert = __nccwpck_require__(63798); - -var sum32 = utils.sum32; -var sum32_4 = utils.sum32_4; -var sum32_5 = utils.sum32_5; -var ch32 = shaCommon.ch32; -var maj32 = shaCommon.maj32; -var s0_256 = shaCommon.s0_256; -var s1_256 = shaCommon.s1_256; -var g0_256 = shaCommon.g0_256; -var g1_256 = shaCommon.g1_256; - -var BlockHash = common.BlockHash; - -var sha256_K = [ - 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, - 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5, - 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, - 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174, - 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, - 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, - 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, - 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967, - 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, - 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85, - 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, - 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070, - 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, - 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3, - 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, - 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2 -]; - -function SHA256() { - if (!(this instanceof SHA256)) - return new SHA256(); - - BlockHash.call(this); - this.h = [ - 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, - 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19 - ]; - this.k = sha256_K; - this.W = new Array(64); -} -utils.inherits(SHA256, BlockHash); -module.exports = SHA256; - -SHA256.blockSize = 512; -SHA256.outSize = 256; -SHA256.hmacStrength = 192; -SHA256.padLength = 64; - -SHA256.prototype._update = function _update(msg, start) { - var W = this.W; - - for (var i = 0; i < 16; i++) - W[i] = msg[start + i]; - for (; i < W.length; i++) - W[i] = sum32_4(g1_256(W[i - 2]), W[i - 7], g0_256(W[i - 15]), W[i - 16]); - - var a = this.h[0]; - var b = this.h[1]; - var c = this.h[2]; - var d = this.h[3]; - var e = this.h[4]; - var f = this.h[5]; - var g = this.h[6]; - var h = this.h[7]; - - assert(this.k.length === W.length); - for (i = 0; i < W.length; i++) { - var T1 = sum32_5(h, s1_256(e), ch32(e, f, g), this.k[i], W[i]); - var T2 = sum32(s0_256(a), maj32(a, b, c)); - h = g; - g = f; - f = e; - e = sum32(d, T1); - d = c; - c = b; - b = a; - a = sum32(T1, T2); - } - - this.h[0] = sum32(this.h[0], a); - this.h[1] = sum32(this.h[1], b); - this.h[2] = sum32(this.h[2], c); - this.h[3] = sum32(this.h[3], d); - this.h[4] = sum32(this.h[4], e); - this.h[5] = sum32(this.h[5], f); - this.h[6] = sum32(this.h[6], g); - this.h[7] = sum32(this.h[7], h); -}; - -SHA256.prototype._digest = function digest(enc) { - if (enc === 'hex') - return utils.toHex32(this.h, 'big'); - else - return utils.split32(this.h, 'big'); -}; - - -/***/ }), - -/***/ 1926: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var utils = __nccwpck_require__(23215); - -var SHA512 = __nccwpck_require__(82423); - -function SHA384() { - if (!(this instanceof SHA384)) - return new SHA384(); - - SHA512.call(this); - this.h = [ - 0xcbbb9d5d, 0xc1059ed8, - 0x629a292a, 0x367cd507, - 0x9159015a, 0x3070dd17, - 0x152fecd8, 0xf70e5939, - 0x67332667, 0xffc00b31, - 0x8eb44a87, 0x68581511, - 0xdb0c2e0d, 0x64f98fa7, - 0x47b5481d, 0xbefa4fa4 ]; -} -utils.inherits(SHA384, SHA512); -module.exports = SHA384; - -SHA384.blockSize = 1024; -SHA384.outSize = 384; -SHA384.hmacStrength = 192; -SHA384.padLength = 128; - -SHA384.prototype._digest = function digest(enc) { - if (enc === 'hex') - return utils.toHex32(this.h.slice(0, 12), 'big'); - else - return utils.split32(this.h.slice(0, 12), 'big'); -}; - - -/***/ }), - -/***/ 82423: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var utils = __nccwpck_require__(23215); -var common = __nccwpck_require__(77265); -var assert = __nccwpck_require__(63798); - -var rotr64_hi = utils.rotr64_hi; -var rotr64_lo = utils.rotr64_lo; -var shr64_hi = utils.shr64_hi; -var shr64_lo = utils.shr64_lo; -var sum64 = utils.sum64; -var sum64_hi = utils.sum64_hi; -var sum64_lo = utils.sum64_lo; -var sum64_4_hi = utils.sum64_4_hi; -var sum64_4_lo = utils.sum64_4_lo; -var sum64_5_hi = utils.sum64_5_hi; -var sum64_5_lo = utils.sum64_5_lo; - -var BlockHash = common.BlockHash; - -var sha512_K = [ - 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd, - 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc, - 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019, - 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118, - 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe, - 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2, - 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1, - 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694, - 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3, - 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65, - 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483, - 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5, - 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210, - 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4, - 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725, - 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70, - 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926, - 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df, - 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8, - 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b, - 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001, - 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30, - 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910, - 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8, - 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53, - 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8, - 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb, - 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3, - 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60, - 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec, - 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9, - 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b, - 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207, - 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178, - 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6, - 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b, - 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493, - 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c, - 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a, - 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817 -]; - -function SHA512() { - if (!(this instanceof SHA512)) - return new SHA512(); - - BlockHash.call(this); - this.h = [ - 0x6a09e667, 0xf3bcc908, - 0xbb67ae85, 0x84caa73b, - 0x3c6ef372, 0xfe94f82b, - 0xa54ff53a, 0x5f1d36f1, - 0x510e527f, 0xade682d1, - 0x9b05688c, 0x2b3e6c1f, - 0x1f83d9ab, 0xfb41bd6b, - 0x5be0cd19, 0x137e2179 ]; - this.k = sha512_K; - this.W = new Array(160); -} -utils.inherits(SHA512, BlockHash); -module.exports = SHA512; - -SHA512.blockSize = 1024; -SHA512.outSize = 512; -SHA512.hmacStrength = 192; -SHA512.padLength = 128; - -SHA512.prototype._prepareBlock = function _prepareBlock(msg, start) { - var W = this.W; - - // 32 x 32bit words - for (var i = 0; i < 32; i++) - W[i] = msg[start + i]; - for (; i < W.length; i += 2) { - var c0_hi = g1_512_hi(W[i - 4], W[i - 3]); // i - 2 - var c0_lo = g1_512_lo(W[i - 4], W[i - 3]); - var c1_hi = W[i - 14]; // i - 7 - var c1_lo = W[i - 13]; - var c2_hi = g0_512_hi(W[i - 30], W[i - 29]); // i - 15 - var c2_lo = g0_512_lo(W[i - 30], W[i - 29]); - var c3_hi = W[i - 32]; // i - 16 - var c3_lo = W[i - 31]; - - W[i] = sum64_4_hi( - c0_hi, c0_lo, - c1_hi, c1_lo, - c2_hi, c2_lo, - c3_hi, c3_lo); - W[i + 1] = sum64_4_lo( - c0_hi, c0_lo, - c1_hi, c1_lo, - c2_hi, c2_lo, - c3_hi, c3_lo); - } -}; - -SHA512.prototype._update = function _update(msg, start) { - this._prepareBlock(msg, start); - - var W = this.W; - - var ah = this.h[0]; - var al = this.h[1]; - var bh = this.h[2]; - var bl = this.h[3]; - var ch = this.h[4]; - var cl = this.h[5]; - var dh = this.h[6]; - var dl = this.h[7]; - var eh = this.h[8]; - var el = this.h[9]; - var fh = this.h[10]; - var fl = this.h[11]; - var gh = this.h[12]; - var gl = this.h[13]; - var hh = this.h[14]; - var hl = this.h[15]; - - assert(this.k.length === W.length); - for (var i = 0; i < W.length; i += 2) { - var c0_hi = hh; - var c0_lo = hl; - var c1_hi = s1_512_hi(eh, el); - var c1_lo = s1_512_lo(eh, el); - var c2_hi = ch64_hi(eh, el, fh, fl, gh, gl); - var c2_lo = ch64_lo(eh, el, fh, fl, gh, gl); - var c3_hi = this.k[i]; - var c3_lo = this.k[i + 1]; - var c4_hi = W[i]; - var c4_lo = W[i + 1]; - - var T1_hi = sum64_5_hi( - c0_hi, c0_lo, - c1_hi, c1_lo, - c2_hi, c2_lo, - c3_hi, c3_lo, - c4_hi, c4_lo); - var T1_lo = sum64_5_lo( - c0_hi, c0_lo, - c1_hi, c1_lo, - c2_hi, c2_lo, - c3_hi, c3_lo, - c4_hi, c4_lo); - - c0_hi = s0_512_hi(ah, al); - c0_lo = s0_512_lo(ah, al); - c1_hi = maj64_hi(ah, al, bh, bl, ch, cl); - c1_lo = maj64_lo(ah, al, bh, bl, ch, cl); - - var T2_hi = sum64_hi(c0_hi, c0_lo, c1_hi, c1_lo); - var T2_lo = sum64_lo(c0_hi, c0_lo, c1_hi, c1_lo); - - hh = gh; - hl = gl; - - gh = fh; - gl = fl; - - fh = eh; - fl = el; - - eh = sum64_hi(dh, dl, T1_hi, T1_lo); - el = sum64_lo(dl, dl, T1_hi, T1_lo); - - dh = ch; - dl = cl; - - ch = bh; - cl = bl; - - bh = ah; - bl = al; - - ah = sum64_hi(T1_hi, T1_lo, T2_hi, T2_lo); - al = sum64_lo(T1_hi, T1_lo, T2_hi, T2_lo); - } - - sum64(this.h, 0, ah, al); - sum64(this.h, 2, bh, bl); - sum64(this.h, 4, ch, cl); - sum64(this.h, 6, dh, dl); - sum64(this.h, 8, eh, el); - sum64(this.h, 10, fh, fl); - sum64(this.h, 12, gh, gl); - sum64(this.h, 14, hh, hl); -}; - -SHA512.prototype._digest = function digest(enc) { - if (enc === 'hex') - return utils.toHex32(this.h, 'big'); - else - return utils.split32(this.h, 'big'); -}; - -function ch64_hi(xh, xl, yh, yl, zh) { - var r = (xh & yh) ^ ((~xh) & zh); - if (r < 0) - r += 0x100000000; - return r; -} - -function ch64_lo(xh, xl, yh, yl, zh, zl) { - var r = (xl & yl) ^ ((~xl) & zl); - if (r < 0) - r += 0x100000000; - return r; -} - -function maj64_hi(xh, xl, yh, yl, zh) { - var r = (xh & yh) ^ (xh & zh) ^ (yh & zh); - if (r < 0) - r += 0x100000000; - return r; -} - -function maj64_lo(xh, xl, yh, yl, zh, zl) { - var r = (xl & yl) ^ (xl & zl) ^ (yl & zl); - if (r < 0) - r += 0x100000000; - return r; -} - -function s0_512_hi(xh, xl) { - var c0_hi = rotr64_hi(xh, xl, 28); - var c1_hi = rotr64_hi(xl, xh, 2); // 34 - var c2_hi = rotr64_hi(xl, xh, 7); // 39 - - var r = c0_hi ^ c1_hi ^ c2_hi; - if (r < 0) - r += 0x100000000; - return r; -} - -function s0_512_lo(xh, xl) { - var c0_lo = rotr64_lo(xh, xl, 28); - var c1_lo = rotr64_lo(xl, xh, 2); // 34 - var c2_lo = rotr64_lo(xl, xh, 7); // 39 - - var r = c0_lo ^ c1_lo ^ c2_lo; - if (r < 0) - r += 0x100000000; - return r; -} - -function s1_512_hi(xh, xl) { - var c0_hi = rotr64_hi(xh, xl, 14); - var c1_hi = rotr64_hi(xh, xl, 18); - var c2_hi = rotr64_hi(xl, xh, 9); // 41 - - var r = c0_hi ^ c1_hi ^ c2_hi; - if (r < 0) - r += 0x100000000; - return r; -} - -function s1_512_lo(xh, xl) { - var c0_lo = rotr64_lo(xh, xl, 14); - var c1_lo = rotr64_lo(xh, xl, 18); - var c2_lo = rotr64_lo(xl, xh, 9); // 41 - - var r = c0_lo ^ c1_lo ^ c2_lo; - if (r < 0) - r += 0x100000000; - return r; -} - -function g0_512_hi(xh, xl) { - var c0_hi = rotr64_hi(xh, xl, 1); - var c1_hi = rotr64_hi(xh, xl, 8); - var c2_hi = shr64_hi(xh, xl, 7); - - var r = c0_hi ^ c1_hi ^ c2_hi; - if (r < 0) - r += 0x100000000; - return r; -} - -function g0_512_lo(xh, xl) { - var c0_lo = rotr64_lo(xh, xl, 1); - var c1_lo = rotr64_lo(xh, xl, 8); - var c2_lo = shr64_lo(xh, xl, 7); - - var r = c0_lo ^ c1_lo ^ c2_lo; - if (r < 0) - r += 0x100000000; - return r; -} - -function g1_512_hi(xh, xl) { - var c0_hi = rotr64_hi(xh, xl, 19); - var c1_hi = rotr64_hi(xl, xh, 29); // 61 - var c2_hi = shr64_hi(xh, xl, 6); - - var r = c0_hi ^ c1_hi ^ c2_hi; - if (r < 0) - r += 0x100000000; - return r; -} - -function g1_512_lo(xh, xl) { - var c0_lo = rotr64_lo(xh, xl, 19); - var c1_lo = rotr64_lo(xl, xh, 29); // 61 - var c2_lo = shr64_lo(xh, xl, 6); - - var r = c0_lo ^ c1_lo ^ c2_lo; - if (r < 0) - r += 0x100000000; - return r; -} - - -/***/ }), - -/***/ 49562: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -var utils = __nccwpck_require__(23215); -var rotr32 = utils.rotr32; - -function ft_1(s, x, y, z) { - if (s === 0) - return ch32(x, y, z); - if (s === 1 || s === 3) - return p32(x, y, z); - if (s === 2) - return maj32(x, y, z); -} -exports.ft_1 = ft_1; - -function ch32(x, y, z) { - return (x & y) ^ ((~x) & z); -} -exports.ch32 = ch32; - -function maj32(x, y, z) { - return (x & y) ^ (x & z) ^ (y & z); -} -exports.maj32 = maj32; - -function p32(x, y, z) { - return x ^ y ^ z; -} -exports.p32 = p32; - -function s0_256(x) { - return rotr32(x, 2) ^ rotr32(x, 13) ^ rotr32(x, 22); -} -exports.s0_256 = s0_256; - -function s1_256(x) { - return rotr32(x, 6) ^ rotr32(x, 11) ^ rotr32(x, 25); -} -exports.s1_256 = s1_256; - -function g0_256(x) { - return rotr32(x, 7) ^ rotr32(x, 18) ^ (x >>> 3); -} -exports.g0_256 = g0_256; - -function g1_256(x) { - return rotr32(x, 17) ^ rotr32(x, 19) ^ (x >>> 10); -} -exports.g1_256 = g1_256; - - -/***/ }), - -/***/ 23215: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -var assert = __nccwpck_require__(63798); -var inherits = __nccwpck_require__(39598); - -exports.inherits = inherits; - -function isSurrogatePair(msg, i) { - if ((msg.charCodeAt(i) & 0xFC00) !== 0xD800) { - return false; - } - if (i < 0 || i + 1 >= msg.length) { - return false; - } - return (msg.charCodeAt(i + 1) & 0xFC00) === 0xDC00; -} - -function toArray(msg, enc) { - if (Array.isArray(msg)) - return msg.slice(); - if (!msg) - return []; - var res = []; - if (typeof msg === 'string') { - if (!enc) { - // Inspired by stringToUtf8ByteArray() in closure-library by Google - // https://github.com/google/closure-library/blob/8598d87242af59aac233270742c8984e2b2bdbe0/closure/goog/crypt/crypt.js#L117-L143 - // Apache License 2.0 - // https://github.com/google/closure-library/blob/master/LICENSE - var p = 0; - for (var i = 0; i < msg.length; i++) { - var c = msg.charCodeAt(i); - if (c < 128) { - res[p++] = c; - } else if (c < 2048) { - res[p++] = (c >> 6) | 192; - res[p++] = (c & 63) | 128; - } else if (isSurrogatePair(msg, i)) { - c = 0x10000 + ((c & 0x03FF) << 10) + (msg.charCodeAt(++i) & 0x03FF); - res[p++] = (c >> 18) | 240; - res[p++] = ((c >> 12) & 63) | 128; - res[p++] = ((c >> 6) & 63) | 128; - res[p++] = (c & 63) | 128; - } else { - res[p++] = (c >> 12) | 224; - res[p++] = ((c >> 6) & 63) | 128; - res[p++] = (c & 63) | 128; - } - } - } else if (enc === 'hex') { - msg = msg.replace(/[^a-z0-9]+/ig, ''); - if (msg.length % 2 !== 0) - msg = '0' + msg; - for (i = 0; i < msg.length; i += 2) - res.push(parseInt(msg[i] + msg[i + 1], 16)); - } - } else { - for (i = 0; i < msg.length; i++) - res[i] = msg[i] | 0; - } - return res; -} -exports.toArray = toArray; - -function toHex(msg) { - var res = ''; - for (var i = 0; i < msg.length; i++) - res += zero2(msg[i].toString(16)); - return res; -} -exports.toHex = toHex; - -function htonl(w) { - var res = (w >>> 24) | - ((w >>> 8) & 0xff00) | - ((w << 8) & 0xff0000) | - ((w & 0xff) << 24); - return res >>> 0; -} -exports.htonl = htonl; - -function toHex32(msg, endian) { - var res = ''; - for (var i = 0; i < msg.length; i++) { - var w = msg[i]; - if (endian === 'little') - w = htonl(w); - res += zero8(w.toString(16)); - } - return res; -} -exports.toHex32 = toHex32; - -function zero2(word) { - if (word.length === 1) - return '0' + word; - else - return word; -} -exports.zero2 = zero2; - -function zero8(word) { - if (word.length === 7) - return '0' + word; - else if (word.length === 6) - return '00' + word; - else if (word.length === 5) - return '000' + word; - else if (word.length === 4) - return '0000' + word; - else if (word.length === 3) - return '00000' + word; - else if (word.length === 2) - return '000000' + word; - else if (word.length === 1) - return '0000000' + word; - else - return word; -} -exports.zero8 = zero8; - -function join32(msg, start, end, endian) { - var len = end - start; - assert(len % 4 === 0); - var res = new Array(len / 4); - for (var i = 0, k = start; i < res.length; i++, k += 4) { - var w; - if (endian === 'big') - w = (msg[k] << 24) | (msg[k + 1] << 16) | (msg[k + 2] << 8) | msg[k + 3]; - else - w = (msg[k + 3] << 24) | (msg[k + 2] << 16) | (msg[k + 1] << 8) | msg[k]; - res[i] = w >>> 0; - } - return res; -} -exports.join32 = join32; - -function split32(msg, endian) { - var res = new Array(msg.length * 4); - for (var i = 0, k = 0; i < msg.length; i++, k += 4) { - var m = msg[i]; - if (endian === 'big') { - res[k] = m >>> 24; - res[k + 1] = (m >>> 16) & 0xff; - res[k + 2] = (m >>> 8) & 0xff; - res[k + 3] = m & 0xff; - } else { - res[k + 3] = m >>> 24; - res[k + 2] = (m >>> 16) & 0xff; - res[k + 1] = (m >>> 8) & 0xff; - res[k] = m & 0xff; - } - } - return res; -} -exports.split32 = split32; - -function rotr32(w, b) { - return (w >>> b) | (w << (32 - b)); -} -exports.rotr32 = rotr32; - -function rotl32(w, b) { - return (w << b) | (w >>> (32 - b)); -} -exports.rotl32 = rotl32; - -function sum32(a, b) { - return (a + b) >>> 0; -} -exports.sum32 = sum32; - -function sum32_3(a, b, c) { - return (a + b + c) >>> 0; -} -exports.sum32_3 = sum32_3; - -function sum32_4(a, b, c, d) { - return (a + b + c + d) >>> 0; -} -exports.sum32_4 = sum32_4; - -function sum32_5(a, b, c, d, e) { - return (a + b + c + d + e) >>> 0; -} -exports.sum32_5 = sum32_5; - -function sum64(buf, pos, ah, al) { - var bh = buf[pos]; - var bl = buf[pos + 1]; - - var lo = (al + bl) >>> 0; - var hi = (lo < al ? 1 : 0) + ah + bh; - buf[pos] = hi >>> 0; - buf[pos + 1] = lo; -} -exports.sum64 = sum64; - -function sum64_hi(ah, al, bh, bl) { - var lo = (al + bl) >>> 0; - var hi = (lo < al ? 1 : 0) + ah + bh; - return hi >>> 0; -} -exports.sum64_hi = sum64_hi; - -function sum64_lo(ah, al, bh, bl) { - var lo = al + bl; - return lo >>> 0; -} -exports.sum64_lo = sum64_lo; - -function sum64_4_hi(ah, al, bh, bl, ch, cl, dh, dl) { - var carry = 0; - var lo = al; - lo = (lo + bl) >>> 0; - carry += lo < al ? 1 : 0; - lo = (lo + cl) >>> 0; - carry += lo < cl ? 1 : 0; - lo = (lo + dl) >>> 0; - carry += lo < dl ? 1 : 0; - - var hi = ah + bh + ch + dh + carry; - return hi >>> 0; -} -exports.sum64_4_hi = sum64_4_hi; - -function sum64_4_lo(ah, al, bh, bl, ch, cl, dh, dl) { - var lo = al + bl + cl + dl; - return lo >>> 0; -} -exports.sum64_4_lo = sum64_4_lo; - -function sum64_5_hi(ah, al, bh, bl, ch, cl, dh, dl, eh, el) { - var carry = 0; - var lo = al; - lo = (lo + bl) >>> 0; - carry += lo < al ? 1 : 0; - lo = (lo + cl) >>> 0; - carry += lo < cl ? 1 : 0; - lo = (lo + dl) >>> 0; - carry += lo < dl ? 1 : 0; - lo = (lo + el) >>> 0; - carry += lo < el ? 1 : 0; - - var hi = ah + bh + ch + dh + eh + carry; - return hi >>> 0; -} -exports.sum64_5_hi = sum64_5_hi; - -function sum64_5_lo(ah, al, bh, bl, ch, cl, dh, dl, eh, el) { - var lo = al + bl + cl + dl + el; - - return lo >>> 0; -} -exports.sum64_5_lo = sum64_5_lo; - -function rotr64_hi(ah, al, num) { - var r = (al << (32 - num)) | (ah >>> num); - return r >>> 0; -} -exports.rotr64_hi = rotr64_hi; - -function rotr64_lo(ah, al, num) { - var r = (ah << (32 - num)) | (al >>> num); - return r >>> 0; -} -exports.rotr64_lo = rotr64_lo; - -function shr64_hi(ah, al, num) { - return ah >>> num; -} -exports.shr64_hi = shr64_hi; - -function shr64_lo(ah, al, num) { - var r = (ah << (32 - num)) | (al >>> num); - return r >>> 0; -} -exports.shr64_lo = shr64_lo; - - -/***/ }), - -/***/ 63768: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var hash = __nccwpck_require__(27477); -var utils = __nccwpck_require__(88660); -var assert = __nccwpck_require__(63798); - -function HmacDRBG(options) { - if (!(this instanceof HmacDRBG)) - return new HmacDRBG(options); - this.hash = options.hash; - this.predResist = !!options.predResist; - - this.outLen = this.hash.outSize; - this.minEntropy = options.minEntropy || this.hash.hmacStrength; - - this._reseed = null; - this.reseedInterval = null; - this.K = null; - this.V = null; - - var entropy = utils.toArray(options.entropy, options.entropyEnc || 'hex'); - var nonce = utils.toArray(options.nonce, options.nonceEnc || 'hex'); - var pers = utils.toArray(options.pers, options.persEnc || 'hex'); - assert(entropy.length >= (this.minEntropy / 8), - 'Not enough entropy. Minimum is: ' + this.minEntropy + ' bits'); - this._init(entropy, nonce, pers); -} -module.exports = HmacDRBG; - -HmacDRBG.prototype._init = function init(entropy, nonce, pers) { - var seed = entropy.concat(nonce).concat(pers); - - this.K = new Array(this.outLen / 8); - this.V = new Array(this.outLen / 8); - for (var i = 0; i < this.V.length; i++) { - this.K[i] = 0x00; - this.V[i] = 0x01; - } - - this._update(seed); - this._reseed = 1; - this.reseedInterval = 0x1000000000000; // 2^48 -}; - -HmacDRBG.prototype._hmac = function hmac() { - return new hash.hmac(this.hash, this.K); -}; - -HmacDRBG.prototype._update = function update(seed) { - var kmac = this._hmac() - .update(this.V) - .update([ 0x00 ]); - if (seed) - kmac = kmac.update(seed); - this.K = kmac.digest(); - this.V = this._hmac().update(this.V).digest(); - if (!seed) - return; - - this.K = this._hmac() - .update(this.V) - .update([ 0x01 ]) - .update(seed) - .digest(); - this.V = this._hmac().update(this.V).digest(); -}; - -HmacDRBG.prototype.reseed = function reseed(entropy, entropyEnc, add, addEnc) { - // Optional entropy enc - if (typeof entropyEnc !== 'string') { - addEnc = add; - add = entropyEnc; - entropyEnc = null; - } - - entropy = utils.toArray(entropy, entropyEnc); - add = utils.toArray(add, addEnc); - - assert(entropy.length >= (this.minEntropy / 8), - 'Not enough entropy. Minimum is: ' + this.minEntropy + ' bits'); - - this._update(entropy.concat(add || [])); - this._reseed = 1; -}; - -HmacDRBG.prototype.generate = function generate(len, enc, add, addEnc) { - if (this._reseed > this.reseedInterval) - throw new Error('Reseed is required'); - - // Optional encoding - if (typeof enc !== 'string') { - addEnc = add; - add = enc; - enc = null; - } - - // Optional additional data - if (add) { - add = utils.toArray(add, addEnc || 'hex'); - this._update(add); - } - - var temp = []; - while (temp.length < len) { - this.V = this._hmac().update(this.V).digest(); - temp = temp.concat(this.V); - } - - var res = temp.slice(0, len); - this._update(add); - this._reseed++; - return utils.encode(res, enc); -}; - - -/***/ }), - -/***/ 45528: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - -const whatwgEncoding = __nccwpck_require__(86476); - -// https://html.spec.whatwg.org/#encoding-sniffing-algorithm -module.exports = (uint8Array, { transportLayerEncodingLabel, defaultEncoding = "windows-1252" } = {}) => { - let encoding = whatwgEncoding.getBOMEncoding(uint8Array); - - if (encoding === null && transportLayerEncodingLabel !== undefined) { - encoding = whatwgEncoding.labelToName(transportLayerEncodingLabel); - } - - if (encoding === null) { - encoding = prescanMetaCharset(uint8Array); - } - - if (encoding === null) { - encoding = defaultEncoding; - } - - return encoding; -}; - -// https://html.spec.whatwg.org/multipage/syntax.html#prescan-a-byte-stream-to-determine-its-encoding -function prescanMetaCharset(uint8Array) { - const l = Math.min(uint8Array.byteLength, 1024); - for (let i = 0; i < l; i++) { - let c = uint8Array[i]; - if (c === 0x3C) { - // "<" - const c1 = uint8Array[i + 1]; - const c2 = uint8Array[i + 2]; - const c3 = uint8Array[i + 3]; - const c4 = uint8Array[i + 4]; - const c5 = uint8Array[i + 5]; - // !-- (comment start) - if (c1 === 0x21 && c2 === 0x2D && c3 === 0x2D) { - i += 4; - for (; i < l; i++) { - c = uint8Array[i]; - const cMinus1 = uint8Array[i - 1]; - const cMinus2 = uint8Array[i - 2]; - // --> (comment end) - if (c === 0x3E && cMinus1 === 0x2D && cMinus2 === 0x2D) { - break; - } - } - } else if ((c1 === 0x4D || c1 === 0x6D) && - (c2 === 0x45 || c2 === 0x65) && - (c3 === 0x54 || c3 === 0x74) && - (c4 === 0x41 || c4 === 0x61) && - (isSpaceCharacter(c5) || c5 === 0x2F)) { - // "meta" + space or / - i += 6; - const attributeList = new Set(); - let gotPragma = false; - let needPragma = null; - let charset = null; - - let attrRes; - do { - attrRes = getAttribute(uint8Array, i, l); - if (attrRes.attr && !attributeList.has(attrRes.attr.name)) { - attributeList.add(attrRes.attr.name); - if (attrRes.attr.name === "http-equiv") { - gotPragma = attrRes.attr.value === "content-type"; - } else if (attrRes.attr.name === "content" && !charset) { - charset = extractCharacterEncodingFromMeta(attrRes.attr.value); - if (charset !== null) { - needPragma = true; - } - } else if (attrRes.attr.name === "charset") { - charset = whatwgEncoding.labelToName(attrRes.attr.value); - needPragma = false; - } - } - i = attrRes.i; - } while (attrRes.attr); - - if (needPragma === null) { - continue; - } - if (needPragma === true && gotPragma === false) { - continue; - } - if (charset === null) { - continue; - } - - if (charset === "UTF-16LE" || charset === "UTF-16BE") { - charset = "UTF-8"; - } - if (charset === "x-user-defined") { - charset = "windows-1252"; - } - - return charset; - } else if ((c1 >= 0x41 && c1 <= 0x5A) || (c1 >= 0x61 && c1 <= 0x7A)) { - // a-z or A-Z - for (i += 2; i < l; i++) { - c = uint8Array[i]; - // space or > - if (isSpaceCharacter(c) || c === 0x3E) { - break; - } - } - let attrRes; - do { - attrRes = getAttribute(uint8Array, i, l); - i = attrRes.i; - } while (attrRes.attr); - } else if (c1 === 0x21 || c1 === 0x2F || c1 === 0x3F) { - // ! or / or ? - for (i += 2; i < l; i++) { - c = uint8Array[i]; - // > - if (c === 0x3E) { - break; - } - } - } - } - } - return null; -} - -// https://html.spec.whatwg.org/multipage/syntax.html#concept-get-attributes-when-sniffing -function getAttribute(uint8Array, i, l) { - for (; i < l; i++) { - let c = uint8Array[i]; - // space or / - if (isSpaceCharacter(c) || c === 0x2F) { - continue; - } - // ">" - if (c === 0x3E) { - break; - } - let name = ""; - let value = ""; - nameLoop:for (; i < l; i++) { - c = uint8Array[i]; - // "=" - if (c === 0x3D && name !== "") { - i++; - break; - } - // space - if (isSpaceCharacter(c)) { - for (i++; i < l; i++) { - c = uint8Array[i]; - // space - if (isSpaceCharacter(c)) { - continue; - } - // not "=" - if (c !== 0x3D) { - return { attr: { name, value }, i }; - } - - i++; - break nameLoop; - } - break; - } - // / or > - if (c === 0x2F || c === 0x3E) { - return { attr: { name, value }, i }; - } - // A-Z - if (c >= 0x41 && c <= 0x5A) { - name += String.fromCharCode(c + 0x20); // lowercase - } else { - name += String.fromCharCode(c); - } - } - c = uint8Array[i]; - // space - if (isSpaceCharacter(c)) { - for (i++; i < l; i++) { - c = uint8Array[i]; - // space - if (isSpaceCharacter(c)) { - continue; - } else { - break; - } - } - } - // " or ' - if (c === 0x22 || c === 0x27) { - const quote = c; - for (i++; i < l; i++) { - c = uint8Array[i]; - - if (c === quote) { - i++; - return { attr: { name, value }, i }; - } - - // A-Z - if (c >= 0x41 && c <= 0x5A) { - value += String.fromCharCode(c + 0x20); // lowercase - } else { - value += String.fromCharCode(c); - } - } - } - - // > - if (c === 0x3E) { - return { attr: { name, value }, i }; - } - - // A-Z - if (c >= 0x41 && c <= 0x5A) { - value += String.fromCharCode(c + 0x20); // lowercase - } else { - value += String.fromCharCode(c); - } - - for (i++; i < l; i++) { - c = uint8Array[i]; - - // space or > - if (isSpaceCharacter(c) || c === 0x3E) { - return { attr: { name, value }, i }; - } - - // A-Z - if (c >= 0x41 && c <= 0x5A) { - value += String.fromCharCode(c + 0x20); // lowercase - } else { - value += String.fromCharCode(c); - } - } - } - return { i }; -} - -function extractCharacterEncodingFromMeta(string) { - let position = 0; - - while (true) { - const indexOfCharset = string.substring(position).search(/charset/ui); - - if (indexOfCharset === -1) { - return null; - } - let subPosition = position + indexOfCharset + "charset".length; - - while (isSpaceCharacter(string[subPosition].charCodeAt(0))) { - ++subPosition; - } - - if (string[subPosition] !== "=") { - position = subPosition - 1; - continue; - } - - ++subPosition; - - while (isSpaceCharacter(string[subPosition].charCodeAt(0))) { - ++subPosition; - } - - position = subPosition; - break; - } - - if (string[position] === "\"" || string[position] === "'") { - const nextIndex = string.indexOf(string[position], position + 1); - - if (nextIndex !== -1) { - return whatwgEncoding.labelToName(string.substring(position + 1, nextIndex)); - } - - // It is an unmatched quotation mark - return null; - } - - if (string.length === position + 1) { - return null; - } - - const indexOfASCIIWhitespaceOrSemicolon = string.substring(position + 1).search(/\x09|\x0A|\x0C|\x0D|\x20|;/u); - const end = indexOfASCIIWhitespaceOrSemicolon === -1 ? - string.length : - position + indexOfASCIIWhitespaceOrSemicolon + 1; - - return whatwgEncoding.labelToName(string.substring(position, end)); -} - -function isSpaceCharacter(c) { - return c === 0x09 || c === 0x0A || c === 0x0C || c === 0x0D || c === 0x20; -} - - -/***/ }), - -/***/ 81970: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.HttpProxyAgent = void 0; -const net = __importStar(__nccwpck_require__(69278)); -const tls = __importStar(__nccwpck_require__(64756)); -const debug_1 = __importDefault(__nccwpck_require__(2830)); -const events_1 = __nccwpck_require__(24434); -const agent_base_1 = __nccwpck_require__(98894); -const url_1 = __nccwpck_require__(87016); -const debug = (0, debug_1.default)('http-proxy-agent'); -/** - * The `HttpProxyAgent` implements an HTTP Agent subclass that connects - * to the specified "HTTP proxy server" in order to proxy HTTP requests. - */ -class HttpProxyAgent extends agent_base_1.Agent { - constructor(proxy, opts) { - super(opts); - this.proxy = typeof proxy === 'string' ? new url_1.URL(proxy) : proxy; - this.proxyHeaders = opts?.headers ?? {}; - debug('Creating new HttpProxyAgent instance: %o', this.proxy.href); - // Trim off the brackets from IPv6 addresses - const host = (this.proxy.hostname || this.proxy.host).replace(/^\[|\]$/g, ''); - const port = this.proxy.port - ? parseInt(this.proxy.port, 10) - : this.proxy.protocol === 'https:' - ? 443 - : 80; - this.connectOpts = { - ...(opts ? omit(opts, 'headers') : null), - host, - port, - }; - } - addRequest(req, opts) { - req._header = null; - this.setRequestProps(req, opts); - // @ts-expect-error `addRequest()` isn't defined in `@types/node` - super.addRequest(req, opts); - } - setRequestProps(req, opts) { - const { proxy } = this; - const protocol = opts.secureEndpoint ? 'https:' : 'http:'; - const hostname = req.getHeader('host') || 'localhost'; - const base = `${protocol}//${hostname}`; - const url = new url_1.URL(req.path, base); - if (opts.port !== 80) { - url.port = String(opts.port); - } - // Change the `http.ClientRequest` instance's "path" field - // to the absolute path of the URL that will be requested. - req.path = String(url); - // Inject the `Proxy-Authorization` header if necessary. - const headers = typeof this.proxyHeaders === 'function' - ? this.proxyHeaders() - : { ...this.proxyHeaders }; - if (proxy.username || proxy.password) { - const auth = `${decodeURIComponent(proxy.username)}:${decodeURIComponent(proxy.password)}`; - headers['Proxy-Authorization'] = `Basic ${Buffer.from(auth).toString('base64')}`; - } - if (!headers['Proxy-Connection']) { - headers['Proxy-Connection'] = this.keepAlive - ? 'Keep-Alive' - : 'close'; - } - for (const name of Object.keys(headers)) { - const value = headers[name]; - if (value) { - req.setHeader(name, value); - } - } - } - async connect(req, opts) { - req._header = null; - if (!req.path.includes('://')) { - this.setRequestProps(req, opts); - } - // At this point, the http ClientRequest's internal `_header` field - // might have already been set. If this is the case then we'll need - // to re-generate the string since we just changed the `req.path`. - let first; - let endOfHeaders; - debug('Regenerating stored HTTP header string for request'); - req._implicitHeader(); - if (req.outputData && req.outputData.length > 0) { - debug('Patching connection write() output buffer with updated header'); - first = req.outputData[0].data; - endOfHeaders = first.indexOf('\r\n\r\n') + 4; - req.outputData[0].data = - req._header + first.substring(endOfHeaders); - debug('Output buffer: %o', req.outputData[0].data); - } - // Create a socket connection to the proxy server. - let socket; - if (this.proxy.protocol === 'https:') { - debug('Creating `tls.Socket`: %o', this.connectOpts); - socket = tls.connect(this.connectOpts); - } - else { - debug('Creating `net.Socket`: %o', this.connectOpts); - socket = net.connect(this.connectOpts); - } - // Wait for the socket's `connect` event, so that this `callback()` - // function throws instead of the `http` request machinery. This is - // important for i.e. `PacProxyAgent` which determines a failed proxy - // connection via the `callback()` function throwing. - await (0, events_1.once)(socket, 'connect'); - return socket; - } -} -HttpProxyAgent.protocols = ['http', 'https']; -exports.HttpProxyAgent = HttpProxyAgent; -function omit(obj, ...keys) { - const ret = {}; - let key; - for (key in obj) { - if (!keys.includes(key)) { - ret[key] = obj[key]; - } - } - return ret; -} -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 3669: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.HttpsProxyAgent = void 0; -const net = __importStar(__nccwpck_require__(69278)); -const tls = __importStar(__nccwpck_require__(64756)); -const assert_1 = __importDefault(__nccwpck_require__(42613)); -const debug_1 = __importDefault(__nccwpck_require__(2830)); -const agent_base_1 = __nccwpck_require__(98894); -const url_1 = __nccwpck_require__(87016); -const parse_proxy_response_1 = __nccwpck_require__(37943); -const debug = (0, debug_1.default)('https-proxy-agent'); -/** - * The `HttpsProxyAgent` implements an HTTP Agent subclass that connects to - * the specified "HTTP(s) proxy server" in order to proxy HTTPS requests. - * - * Outgoing HTTP requests are first tunneled through the proxy server using the - * `CONNECT` HTTP request method to establish a connection to the proxy server, - * and then the proxy server connects to the destination target and issues the - * HTTP request from the proxy server. - * - * `https:` requests have their socket connection upgraded to TLS once - * the connection to the proxy server has been established. - */ -class HttpsProxyAgent extends agent_base_1.Agent { - constructor(proxy, opts) { - super(opts); - this.options = { path: undefined }; - this.proxy = typeof proxy === 'string' ? new url_1.URL(proxy) : proxy; - this.proxyHeaders = opts?.headers ?? {}; - debug('Creating new HttpsProxyAgent instance: %o', this.proxy.href); - // Trim off the brackets from IPv6 addresses - const host = (this.proxy.hostname || this.proxy.host).replace(/^\[|\]$/g, ''); - const port = this.proxy.port - ? parseInt(this.proxy.port, 10) - : this.proxy.protocol === 'https:' - ? 443 - : 80; - this.connectOpts = { - // Attempt to negotiate http/1.1 for proxy servers that support http/2 - ALPNProtocols: ['http/1.1'], - ...(opts ? omit(opts, 'headers') : null), - host, - port, - }; - } - /** - * Called when the node-core HTTP client library is creating a - * new HTTP request. - */ - async connect(req, opts) { - const { proxy } = this; - if (!opts.host) { - throw new TypeError('No "host" provided'); - } - // Create a socket connection to the proxy server. - let socket; - if (proxy.protocol === 'https:') { - debug('Creating `tls.Socket`: %o', this.connectOpts); - const servername = this.connectOpts.servername || this.connectOpts.host; - socket = tls.connect({ - ...this.connectOpts, - servername, - }); - } - else { - debug('Creating `net.Socket`: %o', this.connectOpts); - socket = net.connect(this.connectOpts); - } - const headers = typeof this.proxyHeaders === 'function' - ? this.proxyHeaders() - : { ...this.proxyHeaders }; - const host = net.isIPv6(opts.host) ? `[${opts.host}]` : opts.host; - let payload = `CONNECT ${host}:${opts.port} HTTP/1.1\r\n`; - // Inject the `Proxy-Authorization` header if necessary. - if (proxy.username || proxy.password) { - const auth = `${decodeURIComponent(proxy.username)}:${decodeURIComponent(proxy.password)}`; - headers['Proxy-Authorization'] = `Basic ${Buffer.from(auth).toString('base64')}`; - } - headers.Host = `${host}:${opts.port}`; - if (!headers['Proxy-Connection']) { - headers['Proxy-Connection'] = this.keepAlive - ? 'Keep-Alive' - : 'close'; - } - for (const name of Object.keys(headers)) { - payload += `${name}: ${headers[name]}\r\n`; - } - const proxyResponsePromise = (0, parse_proxy_response_1.parseProxyResponse)(socket); - socket.write(`${payload}\r\n`); - const { connect, buffered } = await proxyResponsePromise; - req.emit('proxyConnect', connect); - this.emit('proxyConnect', connect, req); - if (connect.statusCode === 200) { - req.once('socket', resume); - if (opts.secureEndpoint) { - // The proxy is connecting to a TLS server, so upgrade - // this socket connection to a TLS connection. - debug('Upgrading socket connection to TLS'); - const servername = opts.servername || opts.host; - return tls.connect({ - ...omit(opts, 'host', 'path', 'port'), - socket, - servername, - }); - } - return socket; - } - // Some other status code that's not 200... need to re-play the HTTP - // header "data" events onto the socket once the HTTP machinery is - // attached so that the node core `http` can parse and handle the - // error status code. - // Close the original socket, and a new "fake" socket is returned - // instead, so that the proxy doesn't get the HTTP request - // written to it (which may contain `Authorization` headers or other - // sensitive data). - // - // See: https://hackerone.com/reports/541502 - socket.destroy(); - const fakeSocket = new net.Socket({ writable: false }); - fakeSocket.readable = true; - // Need to wait for the "socket" event to re-play the "data" events. - req.once('socket', (s) => { - debug('Replaying proxy buffer for failed request'); - (0, assert_1.default)(s.listenerCount('data') > 0); - // Replay the "buffered" Buffer onto the fake `socket`, since at - // this point the HTTP module machinery has been hooked up for - // the user. - s.push(buffered); - s.push(null); - }); - return fakeSocket; - } -} -HttpsProxyAgent.protocols = ['http', 'https']; -exports.HttpsProxyAgent = HttpsProxyAgent; -function resume(socket) { - socket.resume(); -} -function omit(obj, ...keys) { - const ret = {}; - let key; - for (key in obj) { - if (!keys.includes(key)) { - ret[key] = obj[key]; - } - } - return ret; -} -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ 37943: -/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { - -"use strict"; - -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.parseProxyResponse = void 0; -const debug_1 = __importDefault(__nccwpck_require__(2830)); -const debug = (0, debug_1.default)('https-proxy-agent:parse-proxy-response'); -function parseProxyResponse(socket) { - return new Promise((resolve, reject) => { - // we need to buffer any HTTP traffic that happens with the proxy before we get - // the CONNECT response, so that if the response is anything other than an "200" - // response code, then we can re-play the "data" events on the socket once the - // HTTP parser is hooked up... - let buffersLength = 0; - const buffers = []; - function read() { - const b = socket.read(); - if (b) - ondata(b); - else - socket.once('readable', read); - } - function cleanup() { - socket.removeListener('end', onend); - socket.removeListener('error', onerror); - socket.removeListener('readable', read); - } - function onend() { - cleanup(); - debug('onend'); - reject(new Error('Proxy connection ended before receiving CONNECT response')); - } - function onerror(err) { - cleanup(); - debug('onerror %o', err); - reject(err); - } - function ondata(b) { - buffers.push(b); - buffersLength += b.length; - const buffered = Buffer.concat(buffers, buffersLength); - const endOfHeaders = buffered.indexOf('\r\n\r\n'); - if (endOfHeaders === -1) { - // keep buffering - debug('have not received end of HTTP headers yet...'); - read(); - return; - } - const headerParts = buffered - .slice(0, endOfHeaders) - .toString('ascii') - .split('\r\n'); - const firstLine = headerParts.shift(); - if (!firstLine) { - socket.destroy(); - return reject(new Error('No header received from proxy CONNECT response')); - } - const firstLineParts = firstLine.split(' '); - const statusCode = +firstLineParts[1]; - const statusText = firstLineParts.slice(2).join(' '); - const headers = {}; - for (const header of headerParts) { - if (!header) - continue; - const firstColon = header.indexOf(':'); - if (firstColon === -1) { - socket.destroy(); - return reject(new Error(`Invalid header from proxy CONNECT response: "${header}"`)); - } - const key = header.slice(0, firstColon).toLowerCase(); - const value = header.slice(firstColon + 1).trimStart(); - const current = headers[key]; - if (typeof current === 'string') { - headers[key] = [current, value]; - } - else if (Array.isArray(current)) { - current.push(value); - } - else { - headers[key] = value; - } - } - debug('got proxy server response: %o %o', firstLine, headers); - cleanup(); - resolve({ - connect: { - statusCode, - statusText, - headers, - }, - buffered, - }); - } - socket.on('error', onerror); - socket.on('end', onend); - read(); - }); -} -exports.parseProxyResponse = parseProxyResponse; -//# sourceMappingURL=parse-proxy-response.js.map - -/***/ }), - -/***/ 33724: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; -/*! - * humanize-ms - index.js - * Copyright(c) 2014 dead_horse - * MIT Licensed - */ - - - -/** - * Module dependencies. - */ - -var util = __nccwpck_require__(39023); -var ms = __nccwpck_require__(70744); - -module.exports = function (t) { - if (typeof t === 'number') return t; - var r = ms(t); - if (r === undefined) { - var err = new Error(util.format('humanize-ms(%j) result undefined', t)); - console.warn(err.stack); - } - return r; -}; - - -/***/ }), - -/***/ 7978: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -var Buffer = (__nccwpck_require__(12803).Buffer); - -// Multibyte codec. In this scheme, a character is represented by 1 or more bytes. -// Our codec supports UTF-16 surrogates, extensions for GB18030 and unicode sequences. -// To save memory and loading time, we read table files only when requested. - -exports._dbcs = DBCSCodec; - -var UNASSIGNED = -1, - GB18030_CODE = -2, - SEQ_START = -10, - NODE_START = -1000, - UNASSIGNED_NODE = new Array(0x100), - DEF_CHAR = -1; - -for (var i = 0; i < 0x100; i++) - UNASSIGNED_NODE[i] = UNASSIGNED; - - -// Class DBCSCodec reads and initializes mapping tables. -function DBCSCodec(codecOptions, iconv) { - this.encodingName = codecOptions.encodingName; - if (!codecOptions) - throw new Error("DBCS codec is called without the data.") - if (!codecOptions.table) - throw new Error("Encoding '" + this.encodingName + "' has no data."); - - // Load tables. - var mappingTable = codecOptions.table(); - - - // Decode tables: MBCS -> Unicode. - - // decodeTables is a trie, encoded as an array of arrays of integers. Internal arrays are trie nodes and all have len = 256. - // Trie root is decodeTables[0]. - // Values: >= 0 -> unicode character code. can be > 0xFFFF - // == UNASSIGNED -> unknown/unassigned sequence. - // == GB18030_CODE -> this is the end of a GB18030 4-byte sequence. - // <= NODE_START -> index of the next node in our trie to process next byte. - // <= SEQ_START -> index of the start of a character code sequence, in decodeTableSeq. - this.decodeTables = []; - this.decodeTables[0] = UNASSIGNED_NODE.slice(0); // Create root node. - - // Sometimes a MBCS char corresponds to a sequence of unicode chars. We store them as arrays of integers here. - this.decodeTableSeq = []; - - // Actual mapping tables consist of chunks. Use them to fill up decode tables. - for (var i = 0; i < mappingTable.length; i++) - this._addDecodeChunk(mappingTable[i]); - - // Load & create GB18030 tables when needed. - if (typeof codecOptions.gb18030 === 'function') { - this.gb18030 = codecOptions.gb18030(); // Load GB18030 ranges. - - // Add GB18030 common decode nodes. - var commonThirdByteNodeIdx = this.decodeTables.length; - this.decodeTables.push(UNASSIGNED_NODE.slice(0)); - - var commonFourthByteNodeIdx = this.decodeTables.length; - this.decodeTables.push(UNASSIGNED_NODE.slice(0)); - - // Fill out the tree - var firstByteNode = this.decodeTables[0]; - for (var i = 0x81; i <= 0xFE; i++) { - var secondByteNode = this.decodeTables[NODE_START - firstByteNode[i]]; - for (var j = 0x30; j <= 0x39; j++) { - if (secondByteNode[j] === UNASSIGNED) { - secondByteNode[j] = NODE_START - commonThirdByteNodeIdx; - } else if (secondByteNode[j] > NODE_START) { - throw new Error("gb18030 decode tables conflict at byte 2"); - } - - var thirdByteNode = this.decodeTables[NODE_START - secondByteNode[j]]; - for (var k = 0x81; k <= 0xFE; k++) { - if (thirdByteNode[k] === UNASSIGNED) { - thirdByteNode[k] = NODE_START - commonFourthByteNodeIdx; - } else if (thirdByteNode[k] === NODE_START - commonFourthByteNodeIdx) { - continue; - } else if (thirdByteNode[k] > NODE_START) { - throw new Error("gb18030 decode tables conflict at byte 3"); - } - - var fourthByteNode = this.decodeTables[NODE_START - thirdByteNode[k]]; - for (var l = 0x30; l <= 0x39; l++) { - if (fourthByteNode[l] === UNASSIGNED) - fourthByteNode[l] = GB18030_CODE; - } - } - } - } - } - - this.defaultCharUnicode = iconv.defaultCharUnicode; - - - // Encode tables: Unicode -> DBCS. - - // `encodeTable` is array mapping from unicode char to encoded char. All its values are integers for performance. - // Because it can be sparse, it is represented as array of buckets by 256 chars each. Bucket can be null. - // Values: >= 0 -> it is a normal char. Write the value (if <=256 then 1 byte, if <=65536 then 2 bytes, etc.). - // == UNASSIGNED -> no conversion found. Output a default char. - // <= SEQ_START -> it's an index in encodeTableSeq, see below. The character starts a sequence. - this.encodeTable = []; - - // `encodeTableSeq` is used when a sequence of unicode characters is encoded as a single code. We use a tree of - // objects where keys correspond to characters in sequence and leafs are the encoded dbcs values. A special DEF_CHAR key - // means end of sequence (needed when one sequence is a strict subsequence of another). - // Objects are kept separately from encodeTable to increase performance. - this.encodeTableSeq = []; - - // Some chars can be decoded, but need not be encoded. - var skipEncodeChars = {}; - if (codecOptions.encodeSkipVals) - for (var i = 0; i < codecOptions.encodeSkipVals.length; i++) { - var val = codecOptions.encodeSkipVals[i]; - if (typeof val === 'number') - skipEncodeChars[val] = true; - else - for (var j = val.from; j <= val.to; j++) - skipEncodeChars[j] = true; - } - - // Use decode trie to recursively fill out encode tables. - this._fillEncodeTable(0, 0, skipEncodeChars); - - // Add more encoding pairs when needed. - if (codecOptions.encodeAdd) { - for (var uChar in codecOptions.encodeAdd) - if (Object.prototype.hasOwnProperty.call(codecOptions.encodeAdd, uChar)) - this._setEncodeChar(uChar.charCodeAt(0), codecOptions.encodeAdd[uChar]); - } - - this.defCharSB = this.encodeTable[0][iconv.defaultCharSingleByte.charCodeAt(0)]; - if (this.defCharSB === UNASSIGNED) this.defCharSB = this.encodeTable[0]['?']; - if (this.defCharSB === UNASSIGNED) this.defCharSB = "?".charCodeAt(0); -} - -DBCSCodec.prototype.encoder = DBCSEncoder; -DBCSCodec.prototype.decoder = DBCSDecoder; - -// Decoder helpers -DBCSCodec.prototype._getDecodeTrieNode = function(addr) { - var bytes = []; - for (; addr > 0; addr >>>= 8) - bytes.push(addr & 0xFF); - if (bytes.length == 0) - bytes.push(0); - - var node = this.decodeTables[0]; - for (var i = bytes.length-1; i > 0; i--) { // Traverse nodes deeper into the trie. - var val = node[bytes[i]]; - - if (val == UNASSIGNED) { // Create new node. - node[bytes[i]] = NODE_START - this.decodeTables.length; - this.decodeTables.push(node = UNASSIGNED_NODE.slice(0)); - } - else if (val <= NODE_START) { // Existing node. - node = this.decodeTables[NODE_START - val]; - } - else - throw new Error("Overwrite byte in " + this.encodingName + ", addr: " + addr.toString(16)); - } - return node; -} - - -DBCSCodec.prototype._addDecodeChunk = function(chunk) { - // First element of chunk is the hex mbcs code where we start. - var curAddr = parseInt(chunk[0], 16); - - // Choose the decoding node where we'll write our chars. - var writeTable = this._getDecodeTrieNode(curAddr); - curAddr = curAddr & 0xFF; - - // Write all other elements of the chunk to the table. - for (var k = 1; k < chunk.length; k++) { - var part = chunk[k]; - if (typeof part === "string") { // String, write as-is. - for (var l = 0; l < part.length;) { - var code = part.charCodeAt(l++); - if (0xD800 <= code && code < 0xDC00) { // Decode surrogate - var codeTrail = part.charCodeAt(l++); - if (0xDC00 <= codeTrail && codeTrail < 0xE000) - writeTable[curAddr++] = 0x10000 + (code - 0xD800) * 0x400 + (codeTrail - 0xDC00); - else - throw new Error("Incorrect surrogate pair in " + this.encodingName + " at chunk " + chunk[0]); - } - else if (0x0FF0 < code && code <= 0x0FFF) { // Character sequence (our own encoding used) - var len = 0xFFF - code + 2; - var seq = []; - for (var m = 0; m < len; m++) - seq.push(part.charCodeAt(l++)); // Simple variation: don't support surrogates or subsequences in seq. - - writeTable[curAddr++] = SEQ_START - this.decodeTableSeq.length; - this.decodeTableSeq.push(seq); - } - else - writeTable[curAddr++] = code; // Basic char - } - } - else if (typeof part === "number") { // Integer, meaning increasing sequence starting with prev character. - var charCode = writeTable[curAddr - 1] + 1; - for (var l = 0; l < part; l++) - writeTable[curAddr++] = charCode++; - } - else - throw new Error("Incorrect type '" + typeof part + "' given in " + this.encodingName + " at chunk " + chunk[0]); - } - if (curAddr > 0xFF) - throw new Error("Incorrect chunk in " + this.encodingName + " at addr " + chunk[0] + ": too long" + curAddr); -} - -// Encoder helpers -DBCSCodec.prototype._getEncodeBucket = function(uCode) { - var high = uCode >> 8; // This could be > 0xFF because of astral characters. - if (this.encodeTable[high] === undefined) - this.encodeTable[high] = UNASSIGNED_NODE.slice(0); // Create bucket on demand. - return this.encodeTable[high]; -} - -DBCSCodec.prototype._setEncodeChar = function(uCode, dbcsCode) { - var bucket = this._getEncodeBucket(uCode); - var low = uCode & 0xFF; - if (bucket[low] <= SEQ_START) - this.encodeTableSeq[SEQ_START-bucket[low]][DEF_CHAR] = dbcsCode; // There's already a sequence, set a single-char subsequence of it. - else if (bucket[low] == UNASSIGNED) - bucket[low] = dbcsCode; -} - -DBCSCodec.prototype._setEncodeSequence = function(seq, dbcsCode) { - - // Get the root of character tree according to first character of the sequence. - var uCode = seq[0]; - var bucket = this._getEncodeBucket(uCode); - var low = uCode & 0xFF; - - var node; - if (bucket[low] <= SEQ_START) { - // There's already a sequence with - use it. - node = this.encodeTableSeq[SEQ_START-bucket[low]]; - } - else { - // There was no sequence object - allocate a new one. - node = {}; - if (bucket[low] !== UNASSIGNED) node[DEF_CHAR] = bucket[low]; // If a char was set before - make it a single-char subsequence. - bucket[low] = SEQ_START - this.encodeTableSeq.length; - this.encodeTableSeq.push(node); - } - - // Traverse the character tree, allocating new nodes as needed. - for (var j = 1; j < seq.length-1; j++) { - var oldVal = node[uCode]; - if (typeof oldVal === 'object') - node = oldVal; - else { - node = node[uCode] = {} - if (oldVal !== undefined) - node[DEF_CHAR] = oldVal - } - } - - // Set the leaf to given dbcsCode. - uCode = seq[seq.length-1]; - node[uCode] = dbcsCode; -} - -DBCSCodec.prototype._fillEncodeTable = function(nodeIdx, prefix, skipEncodeChars) { - var node = this.decodeTables[nodeIdx]; - var hasValues = false; - var subNodeEmpty = {}; - for (var i = 0; i < 0x100; i++) { - var uCode = node[i]; - var mbCode = prefix + i; - if (skipEncodeChars[mbCode]) - continue; - - if (uCode >= 0) { - this._setEncodeChar(uCode, mbCode); - hasValues = true; - } else if (uCode <= NODE_START) { - var subNodeIdx = NODE_START - uCode; - if (!subNodeEmpty[subNodeIdx]) { // Skip empty subtrees (they are too large in gb18030). - var newPrefix = (mbCode << 8) >>> 0; // NOTE: '>>> 0' keeps 32-bit num positive. - if (this._fillEncodeTable(subNodeIdx, newPrefix, skipEncodeChars)) - hasValues = true; - else - subNodeEmpty[subNodeIdx] = true; - } - } else if (uCode <= SEQ_START) { - this._setEncodeSequence(this.decodeTableSeq[SEQ_START - uCode], mbCode); - hasValues = true; - } - } - return hasValues; -} - - - -// == Encoder ================================================================== - -function DBCSEncoder(options, codec) { - // Encoder state - this.leadSurrogate = -1; - this.seqObj = undefined; - - // Static data - this.encodeTable = codec.encodeTable; - this.encodeTableSeq = codec.encodeTableSeq; - this.defaultCharSingleByte = codec.defCharSB; - this.gb18030 = codec.gb18030; -} - -DBCSEncoder.prototype.write = function(str) { - var newBuf = Buffer.alloc(str.length * (this.gb18030 ? 4 : 3)), - leadSurrogate = this.leadSurrogate, - seqObj = this.seqObj, nextChar = -1, - i = 0, j = 0; - - while (true) { - // 0. Get next character. - if (nextChar === -1) { - if (i == str.length) break; - var uCode = str.charCodeAt(i++); - } - else { - var uCode = nextChar; - nextChar = -1; - } - - // 1. Handle surrogates. - if (0xD800 <= uCode && uCode < 0xE000) { // Char is one of surrogates. - if (uCode < 0xDC00) { // We've got lead surrogate. - if (leadSurrogate === -1) { - leadSurrogate = uCode; - continue; - } else { - leadSurrogate = uCode; - // Double lead surrogate found. - uCode = UNASSIGNED; - } - } else { // We've got trail surrogate. - if (leadSurrogate !== -1) { - uCode = 0x10000 + (leadSurrogate - 0xD800) * 0x400 + (uCode - 0xDC00); - leadSurrogate = -1; - } else { - // Incomplete surrogate pair - only trail surrogate found. - uCode = UNASSIGNED; - } - - } - } - else if (leadSurrogate !== -1) { - // Incomplete surrogate pair - only lead surrogate found. - nextChar = uCode; uCode = UNASSIGNED; // Write an error, then current char. - leadSurrogate = -1; - } - - // 2. Convert uCode character. - var dbcsCode = UNASSIGNED; - if (seqObj !== undefined && uCode != UNASSIGNED) { // We are in the middle of the sequence - var resCode = seqObj[uCode]; - if (typeof resCode === 'object') { // Sequence continues. - seqObj = resCode; - continue; - - } else if (typeof resCode == 'number') { // Sequence finished. Write it. - dbcsCode = resCode; - - } else if (resCode == undefined) { // Current character is not part of the sequence. - - // Try default character for this sequence - resCode = seqObj[DEF_CHAR]; - if (resCode !== undefined) { - dbcsCode = resCode; // Found. Write it. - nextChar = uCode; // Current character will be written too in the next iteration. - - } else { - // TODO: What if we have no default? (resCode == undefined) - // Then, we should write first char of the sequence as-is and try the rest recursively. - // Didn't do it for now because no encoding has this situation yet. - // Currently, just skip the sequence and write current char. - } - } - seqObj = undefined; - } - else if (uCode >= 0) { // Regular character - var subtable = this.encodeTable[uCode >> 8]; - if (subtable !== undefined) - dbcsCode = subtable[uCode & 0xFF]; - - if (dbcsCode <= SEQ_START) { // Sequence start - seqObj = this.encodeTableSeq[SEQ_START-dbcsCode]; - continue; - } - - if (dbcsCode == UNASSIGNED && this.gb18030) { - // Use GB18030 algorithm to find character(s) to write. - var idx = findIdx(this.gb18030.uChars, uCode); - if (idx != -1) { - var dbcsCode = this.gb18030.gbChars[idx] + (uCode - this.gb18030.uChars[idx]); - newBuf[j++] = 0x81 + Math.floor(dbcsCode / 12600); dbcsCode = dbcsCode % 12600; - newBuf[j++] = 0x30 + Math.floor(dbcsCode / 1260); dbcsCode = dbcsCode % 1260; - newBuf[j++] = 0x81 + Math.floor(dbcsCode / 10); dbcsCode = dbcsCode % 10; - newBuf[j++] = 0x30 + dbcsCode; - continue; - } - } - } - - // 3. Write dbcsCode character. - if (dbcsCode === UNASSIGNED) - dbcsCode = this.defaultCharSingleByte; - - if (dbcsCode < 0x100) { - newBuf[j++] = dbcsCode; - } - else if (dbcsCode < 0x10000) { - newBuf[j++] = dbcsCode >> 8; // high byte - newBuf[j++] = dbcsCode & 0xFF; // low byte - } - else if (dbcsCode < 0x1000000) { - newBuf[j++] = dbcsCode >> 16; - newBuf[j++] = (dbcsCode >> 8) & 0xFF; - newBuf[j++] = dbcsCode & 0xFF; - } else { - newBuf[j++] = dbcsCode >>> 24; - newBuf[j++] = (dbcsCode >>> 16) & 0xFF; - newBuf[j++] = (dbcsCode >>> 8) & 0xFF; - newBuf[j++] = dbcsCode & 0xFF; - } - } - - this.seqObj = seqObj; - this.leadSurrogate = leadSurrogate; - return newBuf.slice(0, j); -} - -DBCSEncoder.prototype.end = function() { - if (this.leadSurrogate === -1 && this.seqObj === undefined) - return; // All clean. Most often case. - - var newBuf = Buffer.alloc(10), j = 0; - - if (this.seqObj) { // We're in the sequence. - var dbcsCode = this.seqObj[DEF_CHAR]; - if (dbcsCode !== undefined) { // Write beginning of the sequence. - if (dbcsCode < 0x100) { - newBuf[j++] = dbcsCode; - } - else { - newBuf[j++] = dbcsCode >> 8; // high byte - newBuf[j++] = dbcsCode & 0xFF; // low byte - } - } else { - // See todo above. - } - this.seqObj = undefined; - } - - if (this.leadSurrogate !== -1) { - // Incomplete surrogate pair - only lead surrogate found. - newBuf[j++] = this.defaultCharSingleByte; - this.leadSurrogate = -1; - } - - return newBuf.slice(0, j); -} - -// Export for testing -DBCSEncoder.prototype.findIdx = findIdx; - - -// == Decoder ================================================================== - -function DBCSDecoder(options, codec) { - // Decoder state - this.nodeIdx = 0; - this.prevBytes = []; - - // Static data - this.decodeTables = codec.decodeTables; - this.decodeTableSeq = codec.decodeTableSeq; - this.defaultCharUnicode = codec.defaultCharUnicode; - this.gb18030 = codec.gb18030; -} - -DBCSDecoder.prototype.write = function(buf) { - var newBuf = Buffer.alloc(buf.length*2), - nodeIdx = this.nodeIdx, - prevBytes = this.prevBytes, prevOffset = this.prevBytes.length, - seqStart = -this.prevBytes.length, // idx of the start of current parsed sequence. - uCode; - - for (var i = 0, j = 0; i < buf.length; i++) { - var curByte = (i >= 0) ? buf[i] : prevBytes[i + prevOffset]; - - // Lookup in current trie node. - var uCode = this.decodeTables[nodeIdx][curByte]; - - if (uCode >= 0) { - // Normal character, just use it. - } - else if (uCode === UNASSIGNED) { // Unknown char. - // TODO: Callback with seq. - uCode = this.defaultCharUnicode.charCodeAt(0); - i = seqStart; // Skip one byte ('i' will be incremented by the for loop) and try to parse again. - } - else if (uCode === GB18030_CODE) { - if (i >= 3) { - var ptr = (buf[i-3]-0x81)*12600 + (buf[i-2]-0x30)*1260 + (buf[i-1]-0x81)*10 + (curByte-0x30); - } else { - var ptr = (prevBytes[i-3+prevOffset]-0x81)*12600 + - (((i-2 >= 0) ? buf[i-2] : prevBytes[i-2+prevOffset])-0x30)*1260 + - (((i-1 >= 0) ? buf[i-1] : prevBytes[i-1+prevOffset])-0x81)*10 + - (curByte-0x30); - } - var idx = findIdx(this.gb18030.gbChars, ptr); - uCode = this.gb18030.uChars[idx] + ptr - this.gb18030.gbChars[idx]; - } - else if (uCode <= NODE_START) { // Go to next trie node. - nodeIdx = NODE_START - uCode; - continue; - } - else if (uCode <= SEQ_START) { // Output a sequence of chars. - var seq = this.decodeTableSeq[SEQ_START - uCode]; - for (var k = 0; k < seq.length - 1; k++) { - uCode = seq[k]; - newBuf[j++] = uCode & 0xFF; - newBuf[j++] = uCode >> 8; - } - uCode = seq[seq.length-1]; - } - else - throw new Error("iconv-lite internal error: invalid decoding table value " + uCode + " at " + nodeIdx + "/" + curByte); - - // Write the character to buffer, handling higher planes using surrogate pair. - if (uCode >= 0x10000) { - uCode -= 0x10000; - var uCodeLead = 0xD800 | (uCode >> 10); - newBuf[j++] = uCodeLead & 0xFF; - newBuf[j++] = uCodeLead >> 8; - - uCode = 0xDC00 | (uCode & 0x3FF); - } - newBuf[j++] = uCode & 0xFF; - newBuf[j++] = uCode >> 8; - - // Reset trie node. - nodeIdx = 0; seqStart = i+1; - } - - this.nodeIdx = nodeIdx; - this.prevBytes = (seqStart >= 0) - ? Array.prototype.slice.call(buf, seqStart) - : prevBytes.slice(seqStart + prevOffset).concat(Array.prototype.slice.call(buf)); - - return newBuf.slice(0, j).toString('ucs2'); -} - -DBCSDecoder.prototype.end = function() { - var ret = ''; - - // Try to parse all remaining chars. - while (this.prevBytes.length > 0) { - // Skip 1 character in the buffer. - ret += this.defaultCharUnicode; - var bytesArr = this.prevBytes.slice(1); - - // Parse remaining as usual. - this.prevBytes = []; - this.nodeIdx = 0; - if (bytesArr.length > 0) - ret += this.write(bytesArr); - } - - this.prevBytes = []; - this.nodeIdx = 0; - return ret; -} - -// Binary search for GB18030. Returns largest i such that table[i] <= val. -function findIdx(table, val) { - if (table[0] > val) - return -1; - - var l = 0, r = table.length; - while (l < r-1) { // always table[l] <= val < table[r] - var mid = l + ((r-l+1) >> 1); - if (table[mid] <= val) - l = mid; - else - r = mid; - } - return l; -} - - - -/***/ }), - -/***/ 11802: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -// Description of supported double byte encodings and aliases. -// Tables are not require()-d until they are needed to speed up library load. -// require()-s are direct to support Browserify. - -module.exports = { - - // == Japanese/ShiftJIS ==================================================== - // All japanese encodings are based on JIS X set of standards: - // JIS X 0201 - Single-byte encoding of ASCII + ¥ + Kana chars at 0xA1-0xDF. - // JIS X 0208 - Main set of 6879 characters, placed in 94x94 plane, to be encoded by 2 bytes. - // Has several variations in 1978, 1983, 1990 and 1997. - // JIS X 0212 - Supplementary plane of 6067 chars in 94x94 plane. 1990. Effectively dead. - // JIS X 0213 - Extension and modern replacement of 0208 and 0212. Total chars: 11233. - // 2 planes, first is superset of 0208, second - revised 0212. - // Introduced in 2000, revised 2004. Some characters are in Unicode Plane 2 (0x2xxxx) - - // Byte encodings are: - // * Shift_JIS: Compatible with 0201, uses not defined chars in top half as lead bytes for double-byte - // encoding of 0208. Lead byte ranges: 0x81-0x9F, 0xE0-0xEF; Trail byte ranges: 0x40-0x7E, 0x80-0x9E, 0x9F-0xFC. - // Windows CP932 is a superset of Shift_JIS. Some companies added more chars, notably KDDI. - // * EUC-JP: Up to 3 bytes per character. Used mostly on *nixes. - // 0x00-0x7F - lower part of 0201 - // 0x8E, 0xA1-0xDF - upper part of 0201 - // (0xA1-0xFE)x2 - 0208 plane (94x94). - // 0x8F, (0xA1-0xFE)x2 - 0212 plane (94x94). - // * JIS X 208: 7-bit, direct encoding of 0208. Byte ranges: 0x21-0x7E (94 values). Uncommon. - // Used as-is in ISO2022 family. - // * ISO2022-JP: Stateful encoding, with escape sequences to switch between ASCII, - // 0201-1976 Roman, 0208-1978, 0208-1983. - // * ISO2022-JP-1: Adds esc seq for 0212-1990. - // * ISO2022-JP-2: Adds esc seq for GB2313-1980, KSX1001-1992, ISO8859-1, ISO8859-7. - // * ISO2022-JP-3: Adds esc seq for 0201-1976 Kana set, 0213-2000 Planes 1, 2. - // * ISO2022-JP-2004: Adds 0213-2004 Plane 1. - // - // After JIS X 0213 appeared, Shift_JIS-2004, EUC-JISX0213 and ISO2022-JP-2004 followed, with just changing the planes. - // - // Overall, it seems that it's a mess :( http://www8.plala.or.jp/tkubota1/unicode-symbols-map2.html - - 'shiftjis': { - type: '_dbcs', - table: function() { return __nccwpck_require__(40679) }, - encodeAdd: {'\u00a5': 0x5C, '\u203E': 0x7E}, - encodeSkipVals: [{from: 0xED40, to: 0xF940}], - }, - 'csshiftjis': 'shiftjis', - 'mskanji': 'shiftjis', - 'sjis': 'shiftjis', - 'windows31j': 'shiftjis', - 'ms31j': 'shiftjis', - 'xsjis': 'shiftjis', - 'windows932': 'shiftjis', - 'ms932': 'shiftjis', - '932': 'shiftjis', - 'cp932': 'shiftjis', - - 'eucjp': { - type: '_dbcs', - table: function() { return __nccwpck_require__(56406) }, - encodeAdd: {'\u00a5': 0x5C, '\u203E': 0x7E}, - }, - - // TODO: KDDI extension to Shift_JIS - // TODO: IBM CCSID 942 = CP932, but F0-F9 custom chars and other char changes. - // TODO: IBM CCSID 943 = Shift_JIS = CP932 with original Shift_JIS lower 128 chars. - - - // == Chinese/GBK ========================================================== - // http://en.wikipedia.org/wiki/GBK - // We mostly implement W3C recommendation: https://www.w3.org/TR/encoding/#gbk-encoder - - // Oldest GB2312 (1981, ~7600 chars) is a subset of CP936 - 'gb2312': 'cp936', - 'gb231280': 'cp936', - 'gb23121980': 'cp936', - 'csgb2312': 'cp936', - 'csiso58gb231280': 'cp936', - 'euccn': 'cp936', - - // Microsoft's CP936 is a subset and approximation of GBK. - 'windows936': 'cp936', - 'ms936': 'cp936', - '936': 'cp936', - 'cp936': { - type: '_dbcs', - table: function() { return __nccwpck_require__(74488) }, - }, - - // GBK (~22000 chars) is an extension of CP936 that added user-mapped chars and some other. - 'gbk': { - type: '_dbcs', - table: function() { return (__nccwpck_require__(74488).concat)(__nccwpck_require__(55914)) }, - }, - 'xgbk': 'gbk', - 'isoir58': 'gbk', - - // GB18030 is an algorithmic extension of GBK. - // Main source: https://www.w3.org/TR/encoding/#gbk-encoder - // http://icu-project.org/docs/papers/gb18030.html - // http://source.icu-project.org/repos/icu/data/trunk/charset/data/xml/gb-18030-2000.xml - // http://www.khngai.com/chinese/charmap/tblgbk.php?page=0 - 'gb18030': { - type: '_dbcs', - table: function() { return (__nccwpck_require__(74488).concat)(__nccwpck_require__(55914)) }, - gb18030: function() { return __nccwpck_require__(99129) }, - encodeSkipVals: [0x80], - encodeAdd: {'€': 0xA2E3}, - }, - - 'chinese': 'gb18030', - - - // == Korean =============================================================== - // EUC-KR, KS_C_5601 and KS X 1001 are exactly the same. - 'windows949': 'cp949', - 'ms949': 'cp949', - '949': 'cp949', - 'cp949': { - type: '_dbcs', - table: function() { return __nccwpck_require__(21166) }, - }, - - 'cseuckr': 'cp949', - 'csksc56011987': 'cp949', - 'euckr': 'cp949', - 'isoir149': 'cp949', - 'korean': 'cp949', - 'ksc56011987': 'cp949', - 'ksc56011989': 'cp949', - 'ksc5601': 'cp949', - - - // == Big5/Taiwan/Hong Kong ================================================ - // There are lots of tables for Big5 and cp950. Please see the following links for history: - // http://moztw.org/docs/big5/ http://www.haible.de/bruno/charsets/conversion-tables/Big5.html - // Variations, in roughly number of defined chars: - // * Windows CP 950: Microsoft variant of Big5. Canonical: http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP950.TXT - // * Windows CP 951: Microsoft variant of Big5-HKSCS-2001. Seems to be never public. http://me.abelcheung.org/articles/research/what-is-cp951/ - // * Big5-2003 (Taiwan standard) almost superset of cp950. - // * Unicode-at-on (UAO) / Mozilla 1.8. Falling out of use on the Web. Not supported by other browsers. - // * Big5-HKSCS (-2001, -2004, -2008). Hong Kong standard. - // many unicode code points moved from PUA to Supplementary plane (U+2XXXX) over the years. - // Plus, it has 4 combining sequences. - // Seems that Mozilla refused to support it for 10 yrs. https://bugzilla.mozilla.org/show_bug.cgi?id=162431 https://bugzilla.mozilla.org/show_bug.cgi?id=310299 - // because big5-hkscs is the only encoding to include astral characters in non-algorithmic way. - // Implementations are not consistent within browsers; sometimes labeled as just big5. - // MS Internet Explorer switches from big5 to big5-hkscs when a patch applied. - // Great discussion & recap of what's going on https://bugzilla.mozilla.org/show_bug.cgi?id=912470#c31 - // In the encoder, it might make sense to support encoding old PUA mappings to Big5 bytes seq-s. - // Official spec: http://www.ogcio.gov.hk/en/business/tech_promotion/ccli/terms/doc/2003cmp_2008.txt - // http://www.ogcio.gov.hk/tc/business/tech_promotion/ccli/terms/doc/hkscs-2008-big5-iso.txt - // - // Current understanding of how to deal with Big5(-HKSCS) is in the Encoding Standard, http://encoding.spec.whatwg.org/#big5-encoder - // Unicode mapping (http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/OTHER/BIG5.TXT) is said to be wrong. - - 'windows950': 'cp950', - 'ms950': 'cp950', - '950': 'cp950', - 'cp950': { - type: '_dbcs', - table: function() { return __nccwpck_require__(72324) }, - }, - - // Big5 has many variations and is an extension of cp950. We use Encoding Standard's as a consensus. - 'big5': 'big5hkscs', - 'big5hkscs': { - type: '_dbcs', - table: function() { return (__nccwpck_require__(72324).concat)(__nccwpck_require__(43267)) }, - encodeSkipVals: [ - // Although Encoding Standard says we should avoid encoding to HKSCS area (See Step 1 of - // https://encoding.spec.whatwg.org/#index-big5-pointer), we still do it to increase compatibility with ICU. - // But if a single unicode point can be encoded both as HKSCS and regular Big5, we prefer the latter. - 0x8e69, 0x8e6f, 0x8e7e, 0x8eab, 0x8eb4, 0x8ecd, 0x8ed0, 0x8f57, 0x8f69, 0x8f6e, 0x8fcb, 0x8ffe, - 0x906d, 0x907a, 0x90c4, 0x90dc, 0x90f1, 0x91bf, 0x92af, 0x92b0, 0x92b1, 0x92b2, 0x92d1, 0x9447, 0x94ca, - 0x95d9, 0x96fc, 0x9975, 0x9b76, 0x9b78, 0x9b7b, 0x9bc6, 0x9bde, 0x9bec, 0x9bf6, 0x9c42, 0x9c53, 0x9c62, - 0x9c68, 0x9c6b, 0x9c77, 0x9cbc, 0x9cbd, 0x9cd0, 0x9d57, 0x9d5a, 0x9dc4, 0x9def, 0x9dfb, 0x9ea9, 0x9eef, - 0x9efd, 0x9f60, 0x9fcb, 0xa077, 0xa0dc, 0xa0df, 0x8fcc, 0x92c8, 0x9644, 0x96ed, - - // Step 2 of https://encoding.spec.whatwg.org/#index-big5-pointer: Use last pointer for U+2550, U+255E, U+2561, U+256A, U+5341, or U+5345 - 0xa2a4, 0xa2a5, 0xa2a7, 0xa2a6, 0xa2cc, 0xa2ce, - ], - }, - - 'cnbig5': 'big5hkscs', - 'csbig5': 'big5hkscs', - 'xxbig5': 'big5hkscs', -}; - - -/***/ }), - -/***/ 27585: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -// Update this array if you add/rename/remove files in this directory. -// We support Browserify by skipping automatic module discovery and requiring modules directly. -var modules = [ - __nccwpck_require__(72356), - __nccwpck_require__(62021), - __nccwpck_require__(8771), - __nccwpck_require__(28231), - __nccwpck_require__(82473), - __nccwpck_require__(97083), - __nccwpck_require__(69487), - __nccwpck_require__(7978), - __nccwpck_require__(11802), -]; - -// Put all encoding/alias/codec definitions to single object and export it. -for (var i = 0; i < modules.length; i++) { - var module = modules[i]; - for (var enc in module) - if (Object.prototype.hasOwnProperty.call(module, enc)) - exports[enc] = module[enc]; -} - - -/***/ }), - -/***/ 72356: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - -var Buffer = (__nccwpck_require__(12803).Buffer); - -// Export Node.js internal encodings. - -module.exports = { - // Encodings - utf8: { type: "_internal", bomAware: true}, - cesu8: { type: "_internal", bomAware: true}, - unicode11utf8: "utf8", - - ucs2: { type: "_internal", bomAware: true}, - utf16le: "ucs2", - - binary: { type: "_internal" }, - base64: { type: "_internal" }, - hex: { type: "_internal" }, - - // Codec. - _internal: InternalCodec, -}; - -//------------------------------------------------------------------------------ - -function InternalCodec(codecOptions, iconv) { - this.enc = codecOptions.encodingName; - this.bomAware = codecOptions.bomAware; - - if (this.enc === "base64") - this.encoder = InternalEncoderBase64; - else if (this.enc === "cesu8") { - this.enc = "utf8"; // Use utf8 for decoding. - this.encoder = InternalEncoderCesu8; - - // Add decoder for versions of Node not supporting CESU-8 - if (Buffer.from('eda0bdedb2a9', 'hex').toString() !== '💩') { - this.decoder = InternalDecoderCesu8; - this.defaultCharUnicode = iconv.defaultCharUnicode; - } - } -} - -InternalCodec.prototype.encoder = InternalEncoder; -InternalCodec.prototype.decoder = InternalDecoder; - -//------------------------------------------------------------------------------ - -// We use node.js internal decoder. Its signature is the same as ours. -var StringDecoder = (__nccwpck_require__(13193).StringDecoder); - -if (!StringDecoder.prototype.end) // Node v0.8 doesn't have this method. - StringDecoder.prototype.end = function() {}; - - -function InternalDecoder(options, codec) { - this.decoder = new StringDecoder(codec.enc); -} - -InternalDecoder.prototype.write = function(buf) { - if (!Buffer.isBuffer(buf)) { - buf = Buffer.from(buf); - } - - return this.decoder.write(buf); -} - -InternalDecoder.prototype.end = function() { - return this.decoder.end(); -} - - -//------------------------------------------------------------------------------ -// Encoder is mostly trivial - -function InternalEncoder(options, codec) { - this.enc = codec.enc; -} - -InternalEncoder.prototype.write = function(str) { - return Buffer.from(str, this.enc); -} - -InternalEncoder.prototype.end = function() { -} - - -//------------------------------------------------------------------------------ -// Except base64 encoder, which must keep its state. - -function InternalEncoderBase64(options, codec) { - this.prevStr = ''; -} - -InternalEncoderBase64.prototype.write = function(str) { - str = this.prevStr + str; - var completeQuads = str.length - (str.length % 4); - this.prevStr = str.slice(completeQuads); - str = str.slice(0, completeQuads); - - return Buffer.from(str, "base64"); -} - -InternalEncoderBase64.prototype.end = function() { - return Buffer.from(this.prevStr, "base64"); -} - - -//------------------------------------------------------------------------------ -// CESU-8 encoder is also special. - -function InternalEncoderCesu8(options, codec) { -} - -InternalEncoderCesu8.prototype.write = function(str) { - var buf = Buffer.alloc(str.length * 3), bufIdx = 0; - for (var i = 0; i < str.length; i++) { - var charCode = str.charCodeAt(i); - // Naive implementation, but it works because CESU-8 is especially easy - // to convert from UTF-16 (which all JS strings are encoded in). - if (charCode < 0x80) - buf[bufIdx++] = charCode; - else if (charCode < 0x800) { - buf[bufIdx++] = 0xC0 + (charCode >>> 6); - buf[bufIdx++] = 0x80 + (charCode & 0x3f); - } - else { // charCode will always be < 0x10000 in javascript. - buf[bufIdx++] = 0xE0 + (charCode >>> 12); - buf[bufIdx++] = 0x80 + ((charCode >>> 6) & 0x3f); - buf[bufIdx++] = 0x80 + (charCode & 0x3f); - } - } - return buf.slice(0, bufIdx); -} - -InternalEncoderCesu8.prototype.end = function() { -} - -//------------------------------------------------------------------------------ -// CESU-8 decoder is not implemented in Node v4.0+ - -function InternalDecoderCesu8(options, codec) { - this.acc = 0; - this.contBytes = 0; - this.accBytes = 0; - this.defaultCharUnicode = codec.defaultCharUnicode; -} - -InternalDecoderCesu8.prototype.write = function(buf) { - var acc = this.acc, contBytes = this.contBytes, accBytes = this.accBytes, - res = ''; - for (var i = 0; i < buf.length; i++) { - var curByte = buf[i]; - if ((curByte & 0xC0) !== 0x80) { // Leading byte - if (contBytes > 0) { // Previous code is invalid - res += this.defaultCharUnicode; - contBytes = 0; - } - - if (curByte < 0x80) { // Single-byte code - res += String.fromCharCode(curByte); - } else if (curByte < 0xE0) { // Two-byte code - acc = curByte & 0x1F; - contBytes = 1; accBytes = 1; - } else if (curByte < 0xF0) { // Three-byte code - acc = curByte & 0x0F; - contBytes = 2; accBytes = 1; - } else { // Four or more are not supported for CESU-8. - res += this.defaultCharUnicode; - } - } else { // Continuation byte - if (contBytes > 0) { // We're waiting for it. - acc = (acc << 6) | (curByte & 0x3f); - contBytes--; accBytes++; - if (contBytes === 0) { - // Check for overlong encoding, but support Modified UTF-8 (encoding NULL as C0 80) - if (accBytes === 2 && acc < 0x80 && acc > 0) - res += this.defaultCharUnicode; - else if (accBytes === 3 && acc < 0x800) - res += this.defaultCharUnicode; - else - // Actually add character. - res += String.fromCharCode(acc); - } - } else { // Unexpected continuation byte - res += this.defaultCharUnicode; - } - } - } - this.acc = acc; this.contBytes = contBytes; this.accBytes = accBytes; - return res; -} - -InternalDecoderCesu8.prototype.end = function() { - var res = 0; - if (this.contBytes > 0) - res += this.defaultCharUnicode; - return res; -} - - -/***/ }), - -/***/ 82473: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -var Buffer = (__nccwpck_require__(12803).Buffer); - -// Single-byte codec. Needs a 'chars' string parameter that contains 256 or 128 chars that -// correspond to encoded bytes (if 128 - then lower half is ASCII). - -exports._sbcs = SBCSCodec; -function SBCSCodec(codecOptions, iconv) { - if (!codecOptions) - throw new Error("SBCS codec is called without the data.") - - // Prepare char buffer for decoding. - if (!codecOptions.chars || (codecOptions.chars.length !== 128 && codecOptions.chars.length !== 256)) - throw new Error("Encoding '"+codecOptions.type+"' has incorrect 'chars' (must be of len 128 or 256)"); - - if (codecOptions.chars.length === 128) { - var asciiString = ""; - for (var i = 0; i < 128; i++) - asciiString += String.fromCharCode(i); - codecOptions.chars = asciiString + codecOptions.chars; - } - - this.decodeBuf = Buffer.from(codecOptions.chars, 'ucs2'); - - // Encoding buffer. - var encodeBuf = Buffer.alloc(65536, iconv.defaultCharSingleByte.charCodeAt(0)); - - for (var i = 0; i < codecOptions.chars.length; i++) - encodeBuf[codecOptions.chars.charCodeAt(i)] = i; - - this.encodeBuf = encodeBuf; -} - -SBCSCodec.prototype.encoder = SBCSEncoder; -SBCSCodec.prototype.decoder = SBCSDecoder; - - -function SBCSEncoder(options, codec) { - this.encodeBuf = codec.encodeBuf; -} - -SBCSEncoder.prototype.write = function(str) { - var buf = Buffer.alloc(str.length); - for (var i = 0; i < str.length; i++) - buf[i] = this.encodeBuf[str.charCodeAt(i)]; - - return buf; -} - -SBCSEncoder.prototype.end = function() { -} - - -function SBCSDecoder(options, codec) { - this.decodeBuf = codec.decodeBuf; -} - -SBCSDecoder.prototype.write = function(buf) { - // Strings are immutable in JS -> we use ucs2 buffer to speed up computations. - var decodeBuf = this.decodeBuf; - var newBuf = Buffer.alloc(buf.length*2); - var idx1 = 0, idx2 = 0; - for (var i = 0; i < buf.length; i++) { - idx1 = buf[i]*2; idx2 = i*2; - newBuf[idx2] = decodeBuf[idx1]; - newBuf[idx2+1] = decodeBuf[idx1+1]; - } - return newBuf.toString('ucs2'); -} - -SBCSDecoder.prototype.end = function() { -} - - -/***/ }), - -/***/ 69487: -/***/ ((module) => { - -"use strict"; - - -// Generated data for sbcs codec. Don't edit manually. Regenerate using generation/gen-sbcs.js script. -module.exports = { - "437": "cp437", - "737": "cp737", - "775": "cp775", - "850": "cp850", - "852": "cp852", - "855": "cp855", - "856": "cp856", - "857": "cp857", - "858": "cp858", - "860": "cp860", - "861": "cp861", - "862": "cp862", - "863": "cp863", - "864": "cp864", - "865": "cp865", - "866": "cp866", - "869": "cp869", - "874": "windows874", - "922": "cp922", - "1046": "cp1046", - "1124": "cp1124", - "1125": "cp1125", - "1129": "cp1129", - "1133": "cp1133", - "1161": "cp1161", - "1162": "cp1162", - "1163": "cp1163", - "1250": "windows1250", - "1251": "windows1251", - "1252": "windows1252", - "1253": "windows1253", - "1254": "windows1254", - "1255": "windows1255", - "1256": "windows1256", - "1257": "windows1257", - "1258": "windows1258", - "28591": "iso88591", - "28592": "iso88592", - "28593": "iso88593", - "28594": "iso88594", - "28595": "iso88595", - "28596": "iso88596", - "28597": "iso88597", - "28598": "iso88598", - "28599": "iso88599", - "28600": "iso885910", - "28601": "iso885911", - "28603": "iso885913", - "28604": "iso885914", - "28605": "iso885915", - "28606": "iso885916", - "windows874": { - "type": "_sbcs", - "chars": "€����…�����������‘’“”•–—�������� กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����" - }, - "win874": "windows874", - "cp874": "windows874", - "windows1250": { - "type": "_sbcs", - "chars": "€�‚�„…†‡�‰Š‹ŚŤŽŹ�‘’“”•–—�™š›śťžź ˇ˘Ł¤Ą¦§¨©Ş«¬­®Ż°±˛ł´µ¶·¸ąş»Ľ˝ľżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙" - }, - "win1250": "windows1250", - "cp1250": "windows1250", - "windows1251": { - "type": "_sbcs", - "chars": "ЂЃ‚ѓ„…†‡€‰Љ‹ЊЌЋЏђ‘’“”•–—�™љ›њќћџ ЎўЈ¤Ґ¦§Ё©Є«¬­®Ї°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя" - }, - "win1251": "windows1251", - "cp1251": "windows1251", - "windows1252": { - "type": "_sbcs", - "chars": "€�‚ƒ„…†‡ˆ‰Š‹Œ�Ž��‘’“”•–—˜™š›œ�žŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ" - }, - "win1252": "windows1252", - "cp1252": "windows1252", - "windows1253": { - "type": "_sbcs", - "chars": "€�‚ƒ„…†‡�‰�‹�����‘’“”•–—�™�›���� ΅Ά£¤¥¦§¨©�«¬­®―°±²³΄µ¶·ΈΉΊ»Ό½ΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ�ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ�" - }, - "win1253": "windows1253", - "cp1253": "windows1253", - "windows1254": { - "type": "_sbcs", - "chars": "€�‚ƒ„…†‡ˆ‰Š‹Œ����‘’“”•–—˜™š›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ" - }, - "win1254": "windows1254", - "cp1254": "windows1254", - "windows1255": { - "type": "_sbcs", - "chars": "€�‚ƒ„…†‡ˆ‰�‹�����‘’“”•–—˜™�›���� ¡¢£₪¥¦§¨©×«¬­®¯°±²³´µ¶·¸¹÷»¼½¾¿ְֱֲֳִֵֶַָֹֺֻּֽ־ֿ׀ׁׂ׃װױײ׳״�������אבגדהוזחטיךכלםמןנסעףפץצקרשת��‎‏�" - }, - "win1255": "windows1255", - "cp1255": "windows1255", - "windows1256": { - "type": "_sbcs", - "chars": "€پ‚ƒ„…†‡ˆ‰ٹ‹Œچژڈگ‘’“”•–—ک™ڑ›œ‌‍ں ،¢£¤¥¦§¨©ھ«¬­®¯°±²³´µ¶·¸¹؛»¼½¾؟ہءآأؤإئابةتثجحخدذرزسشصض×طظعغـفقكàلâمنهوçèéêëىيîïًٌٍَôُِ÷ّùْûü‎‏ے" - }, - "win1256": "windows1256", - "cp1256": "windows1256", - "windows1257": { - "type": "_sbcs", - "chars": "€�‚�„…†‡�‰�‹�¨ˇ¸�‘’“”•–—�™�›�¯˛� �¢£¤�¦§Ø©Ŗ«¬­®Æ°±²³´µ¶·ø¹ŗ»¼½¾æĄĮĀĆÄÅĘĒČÉŹĖĢĶĪĻŠŃŅÓŌÕÖ×ŲŁŚŪÜŻŽßąįāćäåęēčéźėģķīļšńņóōõö÷ųłśūüżž˙" - }, - "win1257": "windows1257", - "cp1257": "windows1257", - "windows1258": { - "type": "_sbcs", - "chars": "€�‚ƒ„…†‡ˆ‰�‹Œ����‘’“”•–—˜™�›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖ×ØÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ" - }, - "win1258": "windows1258", - "cp1258": "windows1258", - "iso88591": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ" - }, - "cp28591": "iso88591", - "iso88592": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ą˘Ł¤ĽŚ§¨ŠŞŤŹ­ŽŻ°ą˛ł´ľśˇ¸šşťź˝žżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙" - }, - "cp28592": "iso88592", - "iso88593": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ħ˘£¤�Ĥ§¨İŞĞĴ­�Ż°ħ²³´µĥ·¸ışğĵ½�żÀÁÂ�ÄĊĈÇÈÉÊËÌÍÎÏ�ÑÒÓÔĠÖ×ĜÙÚÛÜŬŜßàáâ�äċĉçèéêëìíîï�ñòóôġö÷ĝùúûüŭŝ˙" - }, - "cp28593": "iso88593", - "iso88594": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĸŖ¤ĨĻ§¨ŠĒĢŦ­Ž¯°ą˛ŗ´ĩļˇ¸šēģŧŊžŋĀÁÂÃÄÅÆĮČÉĘËĖÍÎĪĐŅŌĶÔÕÖ×ØŲÚÛÜŨŪßāáâãäåæįčéęëėíîīđņōķôõö÷øųúûüũū˙" - }, - "cp28594": "iso88594", - "iso88595": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ЁЂЃЄЅІЇЈЉЊЋЌ­ЎЏАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя№ёђѓєѕіїјљњћќ§ўџ" - }, - "cp28595": "iso88595", - "iso88596": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ���¤�������،­�������������؛���؟�ءآأؤإئابةتثجحخدذرزسشصضطظعغ�����ـفقكلمنهوىيًٌٍَُِّْ�������������" - }, - "cp28596": "iso88596", - "iso88597": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ‘’£€₯¦§¨©ͺ«¬­�―°±²³΄΅Ά·ΈΉΊ»Ό½ΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ�ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ�" - }, - "cp28597": "iso88597", - "iso88598": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ �¢£¤¥¦§¨©×«¬­®¯°±²³´µ¶·¸¹÷»¼½¾��������������������������������‗אבגדהוזחטיךכלםמןנסעףפץצקרשת��‎‏�" - }, - "cp28598": "iso88598", - "iso88599": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ" - }, - "cp28599": "iso88599", - "iso885910": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĒĢĪĨĶ§ĻĐŠŦŽ­ŪŊ°ąēģīĩķ·ļđšŧž―ūŋĀÁÂÃÄÅÆĮČÉĘËĖÍÎÏÐŅŌÓÔÕÖŨØŲÚÛÜÝÞßāáâãäåæįčéęëėíîïðņōóôõöũøųúûüýþĸ" - }, - "cp28600": "iso885910", - "iso885911": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����" - }, - "cp28601": "iso885911", - "iso885913": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ”¢£¤„¦§Ø©Ŗ«¬­®Æ°±²³“µ¶·ø¹ŗ»¼½¾æĄĮĀĆÄÅĘĒČÉŹĖĢĶĪĻŠŃŅÓŌÕÖ×ŲŁŚŪÜŻŽßąįāćäåęēčéźėģķīļšńņóōõö÷ųłśūüżž’" - }, - "cp28603": "iso885913", - "iso885914": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ḃḃ£ĊċḊ§Ẁ©ẂḋỲ­®ŸḞḟĠġṀṁ¶ṖẁṗẃṠỳẄẅṡÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏŴÑÒÓÔÕÖṪØÙÚÛÜÝŶßàáâãäåæçèéêëìíîïŵñòóôõöṫøùúûüýŷÿ" - }, - "cp28604": "iso885914", - "iso885915": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£€¥Š§š©ª«¬­®¯°±²³Žµ¶·ž¹º»ŒœŸ¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ" - }, - "cp28605": "iso885915", - "iso885916": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄąŁ€„Š§š©Ș«Ź­źŻ°±ČłŽ”¶·žčș»ŒœŸżÀÁÂĂÄĆÆÇÈÉÊËÌÍÎÏĐŃÒÓÔŐÖŚŰÙÚÛÜĘȚßàáâăäćæçèéêëìíîïđńòóôőöśűùúûüęțÿ" - }, - "cp28606": "iso885916", - "cp437": { - "type": "_sbcs", - "chars": "ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ " - }, - "ibm437": "cp437", - "csibm437": "cp437", - "cp737": { - "type": "_sbcs", - "chars": "ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπρσςτυφχψ░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀ωάέήϊίόύϋώΆΈΉΊΌΎΏ±≥≤ΪΫ÷≈°∙·√ⁿ²■ " - }, - "ibm737": "cp737", - "csibm737": "cp737", - "cp775": { - "type": "_sbcs", - "chars": "ĆüéāäģåćłēŖŗīŹÄÅÉæÆōöĢ¢ŚśÖÜø£ØפĀĪóŻżź”¦©®¬½¼Ł«»░▒▓│┤ĄČĘĖ╣║╗╝ĮŠ┐└┴┬├─┼ŲŪ╚╔╩╦╠═╬Žąčęėįšųūž┘┌█▄▌▐▀ÓßŌŃõÕµńĶķĻļņĒŅ’­±“¾¶§÷„°∙·¹³²■ " - }, - "ibm775": "cp775", - "csibm775": "cp775", - "cp850": { - "type": "_sbcs", - "chars": "ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø׃áíóúñѪº¿®¬½¼¡«»░▒▓│┤ÁÂÀ©╣║╗╝¢¥┐└┴┬├─┼ãÃ╚╔╩╦╠═╬¤ðÐÊËÈıÍÎÏ┘┌█▄¦Ì▀ÓßÔÒõÕµþÞÚÛÙýݯ´­±‗¾¶§÷¸°¨·¹³²■ " - }, - "ibm850": "cp850", - "csibm850": "cp850", - "cp852": { - "type": "_sbcs", - "chars": "ÇüéâäůćçłëŐőîŹÄĆÉĹĺôöĽľŚśÖÜŤťŁ×čáíóúĄąŽžĘ꬟Ⱥ«»░▒▓│┤ÁÂĚŞ╣║╗╝Żż┐└┴┬├─┼Ăă╚╔╩╦╠═╬¤đĐĎËďŇÍÎě┘┌█▄ŢŮ▀ÓßÔŃńňŠšŔÚŕŰýÝţ´­˝˛ˇ˘§÷¸°¨˙űŘř■ " - }, - "ibm852": "cp852", - "csibm852": "cp852", - "cp855": { - "type": "_sbcs", - "chars": "ђЂѓЃёЁєЄѕЅіІїЇјЈљЉњЊћЋќЌўЎџЏюЮъЪаАбБцЦдДеЕфФгГ«»░▒▓│┤хХиИ╣║╗╝йЙ┐└┴┬├─┼кК╚╔╩╦╠═╬¤лЛмМнНоОп┘┌█▄Пя▀ЯрРсСтТуУжЖвВьЬ№­ыЫзЗшШэЭщЩчЧ§■ " - }, - "ibm855": "cp855", - "csibm855": "cp855", - "cp856": { - "type": "_sbcs", - "chars": "אבגדהוזחטיךכלםמןנסעףפץצקרשת�£�×����������®¬½¼�«»░▒▓│┤���©╣║╗╝¢¥┐└┴┬├─┼��╚╔╩╦╠═╬¤���������┘┌█▄¦�▀������µ�������¯´­±‗¾¶§÷¸°¨·¹³²■ " - }, - "ibm856": "cp856", - "csibm856": "cp856", - "cp857": { - "type": "_sbcs", - "chars": "ÇüéâäàåçêëèïîıÄÅÉæÆôöòûùİÖÜø£ØŞşáíóúñÑĞ𿮬½¼¡«»░▒▓│┤ÁÂÀ©╣║╗╝¢¥┐└┴┬├─┼ãÃ╚╔╩╦╠═╬¤ºªÊËÈ�ÍÎÏ┘┌█▄¦Ì▀ÓßÔÒõÕµ�×ÚÛÙìÿ¯´­±�¾¶§÷¸°¨·¹³²■ " - }, - "ibm857": "cp857", - "csibm857": "cp857", - "cp858": { - "type": "_sbcs", - "chars": "ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø׃áíóúñѪº¿®¬½¼¡«»░▒▓│┤ÁÂÀ©╣║╗╝¢¥┐└┴┬├─┼ãÃ╚╔╩╦╠═╬¤ðÐÊËÈ€ÍÎÏ┘┌█▄¦Ì▀ÓßÔÒõÕµþÞÚÛÙýݯ´­±‗¾¶§÷¸°¨·¹³²■ " - }, - "ibm858": "cp858", - "csibm858": "cp858", - "cp860": { - "type": "_sbcs", - "chars": "ÇüéâãàÁçêÊèÍÔìÃÂÉÀÈôõòÚùÌÕÜ¢£Ù₧ÓáíóúñѪº¿Ò¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ " - }, - "ibm860": "cp860", - "csibm860": "cp860", - "cp861": { - "type": "_sbcs", - "chars": "ÇüéâäàåçêëèÐðÞÄÅÉæÆôöþûÝýÖÜø£Ø₧ƒáíóúÁÍÓÚ¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ " - }, - "ibm861": "cp861", - "csibm861": "cp861", - "cp862": { - "type": "_sbcs", - "chars": "אבגדהוזחטיךכלםמןנסעףפץצקרשת¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ " - }, - "ibm862": "cp862", - "csibm862": "cp862", - "cp863": { - "type": "_sbcs", - "chars": "ÇüéâÂà¶çêëèïî‗À§ÉÈÊôËÏûù¤ÔÜ¢£ÙÛƒ¦´óú¨¸³¯Î⌐¬½¼¾«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ " - }, - "ibm863": "cp863", - "csibm863": "cp863", - "cp864": { - "type": "_sbcs", - "chars": "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$٪&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~°·∙√▒─│┼┤┬├┴┐┌└┘β∞φ±½¼≈«»ﻷﻸ��ﻻﻼ� ­ﺂ£¤ﺄ��ﺎﺏﺕﺙ،ﺝﺡﺥ٠١٢٣٤٥٦٧٨٩ﻑ؛ﺱﺵﺹ؟¢ﺀﺁﺃﺅﻊﺋﺍﺑﺓﺗﺛﺟﺣﺧﺩﺫﺭﺯﺳﺷﺻﺿﻁﻅﻋﻏ¦¬÷×ﻉـﻓﻗﻛﻟﻣﻧﻫﻭﻯﻳﺽﻌﻎﻍﻡﹽّﻥﻩﻬﻰﻲﻐﻕﻵﻶﻝﻙﻱ■�" - }, - "ibm864": "cp864", - "csibm864": "cp864", - "cp865": { - "type": "_sbcs", - "chars": "ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø₧ƒáíóúñѪº¿⌐¬½¼¡«¤░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ " - }, - "ibm865": "cp865", - "csibm865": "cp865", - "cp866": { - "type": "_sbcs", - "chars": "АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀рстуфхцчшщъыьэюяЁёЄєЇїЎў°∙·√№¤■ " - }, - "ibm866": "cp866", - "csibm866": "cp866", - "cp869": { - "type": "_sbcs", - "chars": "������Ά�·¬¦‘’Έ―ΉΊΪΌ��ΎΫ©Ώ²³ά£έήίϊΐόύΑΒΓΔΕΖΗ½ΘΙ«»░▒▓│┤ΚΛΜΝ╣║╗╝ΞΟ┐└┴┬├─┼ΠΡ╚╔╩╦╠═╬ΣΤΥΦΧΨΩαβγ┘┌█▄δε▀ζηθικλμνξοπρσςτ΄­±υφχ§ψ΅°¨ωϋΰώ■ " - }, - "ibm869": "cp869", - "csibm869": "cp869", - "cp922": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®‾°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏŠÑÒÓÔÕÖ×ØÙÚÛÜÝŽßàáâãäåæçèéêëìíîïšñòóôõö÷øùúûüýžÿ" - }, - "ibm922": "cp922", - "csibm922": "cp922", - "cp1046": { - "type": "_sbcs", - "chars": "ﺈ×÷ﹱˆ■│─┐┌└┘ﹹﹻﹽﹿﹷﺊﻰﻳﻲﻎﻏﻐﻶﻸﻺﻼ ¤ﺋﺑﺗﺛﺟﺣ،­ﺧﺳ٠١٢٣٤٥٦٧٨٩ﺷ؛ﺻﺿﻊ؟ﻋءآأؤإئابةتثجحخدذرزسشصضطﻇعغﻌﺂﺄﺎﻓـفقكلمنهوىيًٌٍَُِّْﻗﻛﻟﻵﻷﻹﻻﻣﻧﻬﻩ�" - }, - "ibm1046": "cp1046", - "csibm1046": "cp1046", - "cp1124": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ЁЂҐЄЅІЇЈЉЊЋЌ­ЎЏАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя№ёђґєѕіїјљњћќ§ўџ" - }, - "ibm1124": "cp1124", - "csibm1124": "cp1124", - "cp1125": { - "type": "_sbcs", - "chars": "АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀рстуфхцчшщъыьэюяЁёҐґЄєІіЇї·√№¤■ " - }, - "ibm1125": "cp1125", - "csibm1125": "cp1125", - "cp1129": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§œ©ª«¬­®¯°±²³Ÿµ¶·Œ¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖ×ØÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ" - }, - "ibm1129": "cp1129", - "csibm1129": "cp1129", - "cp1133": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ກຂຄງຈສຊຍດຕຖທນບປຜຝພຟມຢຣລວຫອຮ���ຯະາຳິີຶືຸູຼັົຽ���ເແໂໃໄ່້໊໋໌ໍໆ�ໜໝ₭����������������໐໑໒໓໔໕໖໗໘໙��¢¬¦�" - }, - "ibm1133": "cp1133", - "csibm1133": "cp1133", - "cp1161": { - "type": "_sbcs", - "chars": "��������������������������������่กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู้๊๋€฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛¢¬¦ " - }, - "ibm1161": "cp1161", - "csibm1161": "cp1161", - "cp1162": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����" - }, - "ibm1162": "cp1162", - "csibm1162": "cp1162", - "cp1163": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£€¥¦§œ©ª«¬­®¯°±²³Ÿµ¶·Œ¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖ×ØÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ" - }, - "ibm1163": "cp1163", - "csibm1163": "cp1163", - "maccroatian": { - "type": "_sbcs", - "chars": "ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®Š™´¨≠ŽØ∞±≤≥∆µ∂∑∏š∫ªºΩžø¿¡¬√ƒ≈Ć«Č… ÀÃÕŒœĐ—“”‘’÷◊�©⁄¤‹›Æ»–·‚„‰ÂćÁčÈÍÎÏÌÓÔđÒÚÛÙıˆ˜¯πË˚¸Êæˇ" - }, - "maccyrillic": { - "type": "_sbcs", - "chars": "АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°¢£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµ∂ЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю¤" - }, - "macgreek": { - "type": "_sbcs", - "chars": "Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦­ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ�" - }, - "maciceland": { - "type": "_sbcs", - "chars": "ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüÝ°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ" - }, - "macroman": { - "type": "_sbcs", - "chars": "ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ" - }, - "macromania": { - "type": "_sbcs", - "chars": "ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ĂŞ∞±≤≥¥µ∂∑∏π∫ªºΩăş¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›Ţţ‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ" - }, - "macthai": { - "type": "_sbcs", - "chars": "«»…“”�•‘’� กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู​–—฿เแโใไๅๆ็่้๊๋์ํ™๏๐๑๒๓๔๕๖๗๘๙®©����" - }, - "macturkish": { - "type": "_sbcs", - "chars": "ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙ�ˆ˜¯˘˙˚¸˝˛ˇ" - }, - "macukraine": { - "type": "_sbcs", - "chars": "АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°Ґ£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµґЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю¤" - }, - "koi8r": { - "type": "_sbcs", - "chars": "─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ё╓╔╕╖╗╘╙╚╛╜╝╞╟╠╡Ё╢╣╤╥╦╧╨╩╪╫╬©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ" - }, - "koi8u": { - "type": "_sbcs", - "chars": "─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ёє╔ії╗╘╙╚╛ґ╝╞╟╠╡ЁЄ╣ІЇ╦╧╨╩╪Ґ╬©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ" - }, - "koi8ru": { - "type": "_sbcs", - "chars": "─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ёє╔ії╗╘╙╚╛ґў╞╟╠╡ЁЄ╣ІЇ╦╧╨╩╪ҐЎ©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ" - }, - "koi8t": { - "type": "_sbcs", - "chars": "қғ‚Ғ„…†‡�‰ҳ‹ҲҷҶ�Қ‘’“”•–—�™�›�����ӯӮё¤ӣ¦§���«¬­®�°±²Ё�Ӣ¶·�№�»���©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ" - }, - "armscii8": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ �և։)(»«—.՝,-֊…՜՛՞ԱաԲբԳգԴդԵեԶզԷէԸըԹթԺժԻիԼլԽխԾծԿկՀհՁձՂղՃճՄմՅյՆնՇշՈոՉչՊպՋջՌռՍսՎվՏտՐրՑցՒւՓփՔքՕօՖֆ՚�" - }, - "rk1048": { - "type": "_sbcs", - "chars": "ЂЃ‚ѓ„…†‡€‰Љ‹ЊҚҺЏђ‘’“”•–—�™љ›њқһџ ҰұӘ¤Ө¦§Ё©Ғ«¬­®Ү°±Ііөµ¶·ё№ғ»әҢңүАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя" - }, - "tcvn": { - "type": "_sbcs", - "chars": "\u0000ÚỤ\u0003ỪỬỮ\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010ỨỰỲỶỸÝỴ\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÀẢÃÁẠẶẬÈẺẼÉẸỆÌỈĨÍỊÒỎÕÓỌỘỜỞỠỚỢÙỦŨ ĂÂÊÔƠƯĐăâêôơưđẶ̀̀̉̃́àảãáạẲằẳẵắẴẮẦẨẪẤỀặầẩẫấậèỂẻẽéẹềểễếệìỉỄẾỒĩíịòỔỏõóọồổỗốộờởỡớợùỖủũúụừửữứựỳỷỹýỵỐ" - }, - "georgianacademy": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿აბგდევზთიკლმნოპჟრსტუფქღყშჩცძწჭხჯჰჱჲჳჴჵჶçèéêëìíîïðñòóôõö÷øùúûüýþÿ" - }, - "georgianps": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿აბგდევზჱთიკლმნჲოპჟრსტჳუფქღყშჩცძწჭხჴჯჰჵæçèéêëìíîïðñòóôõö÷øùúûüýþÿ" - }, - "pt154": { - "type": "_sbcs", - "chars": "ҖҒӮғ„…ҶҮҲүҠӢҢҚҺҸҗ‘’“”•–—ҳҷҡӣңқһҹ ЎўЈӨҘҰ§Ё©Ә«¬ӯ®Ҝ°ұІіҙө¶·ё№ә»јҪҫҝАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя" - }, - "viscii": { - "type": "_sbcs", - "chars": "\u0000\u0001Ẳ\u0003\u0004ẴẪ\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013Ỷ\u0015\u0016\u0017\u0018Ỹ\u001a\u001b\u001c\u001dỴ\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ẠẮẰẶẤẦẨẬẼẸẾỀỂỄỆỐỒỔỖỘỢỚỜỞỊỎỌỈỦŨỤỲÕắằặấầẩậẽẹếềểễệốồổỗỠƠộờởịỰỨỪỬơớƯÀÁÂÃẢĂẳẵÈÉÊẺÌÍĨỳĐứÒÓÔạỷừửÙÚỹỵÝỡưàáâãảăữẫèéêẻìíĩỉđựòóôõỏọụùúũủýợỮ" - }, - "iso646cn": { - "type": "_sbcs", - "chars": "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#¥%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}‾��������������������������������������������������������������������������������������������������������������������������������" - }, - "iso646jp": { - "type": "_sbcs", - "chars": "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[¥]^_`abcdefghijklmnopqrstuvwxyz{|}‾��������������������������������������������������������������������������������������������������������������������������������" - }, - "hproman8": { - "type": "_sbcs", - "chars": "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ÀÂÈÊËÎÏ´ˋˆ¨˜ÙÛ₤¯Ýý°ÇçÑñ¡¿¤£¥§ƒ¢âêôûáéóúàèòùäëöüÅîØÆåíøæÄìÖÜÉïßÔÁÃãÐðÍÌÓÒÕõŠšÚŸÿÞþ·µ¶¾—¼½ªº«■»±�" - }, - "macintosh": { - "type": "_sbcs", - "chars": "ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ" - }, - "ascii": { - "type": "_sbcs", - "chars": "��������������������������������������������������������������������������������������������������������������������������������" - }, - "tis620": { - "type": "_sbcs", - "chars": "���������������������������������กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����" - } -} - -/***/ }), - -/***/ 97083: -/***/ ((module) => { - -"use strict"; - - -// Manually added data to be used by sbcs codec in addition to generated one. - -module.exports = { - // Not supported by iconv, not sure why. - "10029": "maccenteuro", - "maccenteuro": { - "type": "_sbcs", - "chars": "ÄĀāÉĄÖÜáąČäčĆć鏟ĎíďĒēĖóėôöõúĚěü†°Ę£§•¶ß®©™ę¨≠ģĮįĪ≤≥īĶ∂∑łĻļĽľĹĺŅņѬ√ńŇ∆«»… ňŐÕőŌ–—“”‘’÷◊ōŔŕŘ‹›řŖŗŠ‚„šŚśÁŤťÍŽžŪÓÔūŮÚůŰűŲųÝýķŻŁżĢˇ" - }, - - "808": "cp808", - "ibm808": "cp808", - "cp808": { - "type": "_sbcs", - "chars": "АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀рстуфхцчшщъыьэюяЁёЄєЇїЎў°∙·√№€■ " - }, - - "mik": { - "type": "_sbcs", - "chars": "АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя└┴┬├─┼╣║╚╔╩╦╠═╬┐░▒▓│┤№§╗╝┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ " - }, - - "cp720": { - "type": "_sbcs", - "chars": "\x80\x81éâ\x84à\x86çêëèïî\x8d\x8e\x8f\x90\u0651\u0652ô¤ـûùءآأؤ£إئابةتثجحخدذرزسشص«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀ضطظعغفµقكلمنهوىي≡\u064b\u064c\u064d\u064e\u064f\u0650≈°∙·√ⁿ²■\u00a0" - }, - - // Aliases of generated encodings. - "ascii8bit": "ascii", - "usascii": "ascii", - "ansix34": "ascii", - "ansix341968": "ascii", - "ansix341986": "ascii", - "csascii": "ascii", - "cp367": "ascii", - "ibm367": "ascii", - "isoir6": "ascii", - "iso646us": "ascii", - "iso646irv": "ascii", - "us": "ascii", - - "latin1": "iso88591", - "latin2": "iso88592", - "latin3": "iso88593", - "latin4": "iso88594", - "latin5": "iso88599", - "latin6": "iso885910", - "latin7": "iso885913", - "latin8": "iso885914", - "latin9": "iso885915", - "latin10": "iso885916", - - "csisolatin1": "iso88591", - "csisolatin2": "iso88592", - "csisolatin3": "iso88593", - "csisolatin4": "iso88594", - "csisolatincyrillic": "iso88595", - "csisolatinarabic": "iso88596", - "csisolatingreek" : "iso88597", - "csisolatinhebrew": "iso88598", - "csisolatin5": "iso88599", - "csisolatin6": "iso885910", - - "l1": "iso88591", - "l2": "iso88592", - "l3": "iso88593", - "l4": "iso88594", - "l5": "iso88599", - "l6": "iso885910", - "l7": "iso885913", - "l8": "iso885914", - "l9": "iso885915", - "l10": "iso885916", - - "isoir14": "iso646jp", - "isoir57": "iso646cn", - "isoir100": "iso88591", - "isoir101": "iso88592", - "isoir109": "iso88593", - "isoir110": "iso88594", - "isoir144": "iso88595", - "isoir127": "iso88596", - "isoir126": "iso88597", - "isoir138": "iso88598", - "isoir148": "iso88599", - "isoir157": "iso885910", - "isoir166": "tis620", - "isoir179": "iso885913", - "isoir199": "iso885914", - "isoir203": "iso885915", - "isoir226": "iso885916", - - "cp819": "iso88591", - "ibm819": "iso88591", - - "cyrillic": "iso88595", - - "arabic": "iso88596", - "arabic8": "iso88596", - "ecma114": "iso88596", - "asmo708": "iso88596", - - "greek" : "iso88597", - "greek8" : "iso88597", - "ecma118" : "iso88597", - "elot928" : "iso88597", - - "hebrew": "iso88598", - "hebrew8": "iso88598", - - "turkish": "iso88599", - "turkish8": "iso88599", - - "thai": "iso885911", - "thai8": "iso885911", - - "celtic": "iso885914", - "celtic8": "iso885914", - "isoceltic": "iso885914", - - "tis6200": "tis620", - "tis62025291": "tis620", - "tis62025330": "tis620", - - "10000": "macroman", - "10006": "macgreek", - "10007": "maccyrillic", - "10079": "maciceland", - "10081": "macturkish", - - "cspc8codepage437": "cp437", - "cspc775baltic": "cp775", - "cspc850multilingual": "cp850", - "cspcp852": "cp852", - "cspc862latinhebrew": "cp862", - "cpgr": "cp869", - - "msee": "cp1250", - "mscyrl": "cp1251", - "msansi": "cp1252", - "msgreek": "cp1253", - "msturk": "cp1254", - "mshebr": "cp1255", - "msarab": "cp1256", - "winbaltrim": "cp1257", - - "cp20866": "koi8r", - "20866": "koi8r", - "ibm878": "koi8r", - "cskoi8r": "koi8r", - - "cp21866": "koi8u", - "21866": "koi8u", - "ibm1168": "koi8u", - - "strk10482002": "rk1048", - - "tcvn5712": "tcvn", - "tcvn57121": "tcvn", - - "gb198880": "iso646cn", - "cn": "iso646cn", - - "csiso14jisc6220ro": "iso646jp", - "jisc62201969ro": "iso646jp", - "jp": "iso646jp", - - "cshproman8": "hproman8", - "r8": "hproman8", - "roman8": "hproman8", - "xroman8": "hproman8", - "ibm1051": "hproman8", - - "mac": "macintosh", - "csmacintosh": "macintosh", -}; - - - -/***/ }), - -/***/ 8771: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -var Buffer = (__nccwpck_require__(12803).Buffer); - -// Note: UTF16-LE (or UCS2) codec is Node.js native. See encodings/internal.js - -// == UTF16-BE codec. ========================================================== - -exports.utf16be = Utf16BECodec; -function Utf16BECodec() { -} - -Utf16BECodec.prototype.encoder = Utf16BEEncoder; -Utf16BECodec.prototype.decoder = Utf16BEDecoder; -Utf16BECodec.prototype.bomAware = true; - - -// -- Encoding - -function Utf16BEEncoder() { -} - -Utf16BEEncoder.prototype.write = function(str) { - var buf = Buffer.from(str, 'ucs2'); - for (var i = 0; i < buf.length; i += 2) { - var tmp = buf[i]; buf[i] = buf[i+1]; buf[i+1] = tmp; - } - return buf; -} - -Utf16BEEncoder.prototype.end = function() { -} - - -// -- Decoding - -function Utf16BEDecoder() { - this.overflowByte = -1; -} - -Utf16BEDecoder.prototype.write = function(buf) { - if (buf.length == 0) - return ''; - - var buf2 = Buffer.alloc(buf.length + 1), - i = 0, j = 0; - - if (this.overflowByte !== -1) { - buf2[0] = buf[0]; - buf2[1] = this.overflowByte; - i = 1; j = 2; - } - - for (; i < buf.length-1; i += 2, j+= 2) { - buf2[j] = buf[i+1]; - buf2[j+1] = buf[i]; - } - - this.overflowByte = (i == buf.length-1) ? buf[buf.length-1] : -1; - - return buf2.slice(0, j).toString('ucs2'); -} - -Utf16BEDecoder.prototype.end = function() { - this.overflowByte = -1; -} - - -// == UTF-16 codec ============================================================= -// Decoder chooses automatically from UTF-16LE and UTF-16BE using BOM and space-based heuristic. -// Defaults to UTF-16LE, as it's prevalent and default in Node. -// http://en.wikipedia.org/wiki/UTF-16 and http://encoding.spec.whatwg.org/#utf-16le -// Decoder default can be changed: iconv.decode(buf, 'utf16', {defaultEncoding: 'utf-16be'}); - -// Encoder uses UTF-16LE and prepends BOM (which can be overridden with addBOM: false). - -exports.utf16 = Utf16Codec; -function Utf16Codec(codecOptions, iconv) { - this.iconv = iconv; -} - -Utf16Codec.prototype.encoder = Utf16Encoder; -Utf16Codec.prototype.decoder = Utf16Decoder; - - -// -- Encoding (pass-through) - -function Utf16Encoder(options, codec) { - options = options || {}; - if (options.addBOM === undefined) - options.addBOM = true; - this.encoder = codec.iconv.getEncoder('utf-16le', options); -} - -Utf16Encoder.prototype.write = function(str) { - return this.encoder.write(str); -} - -Utf16Encoder.prototype.end = function() { - return this.encoder.end(); -} - - -// -- Decoding - -function Utf16Decoder(options, codec) { - this.decoder = null; - this.initialBufs = []; - this.initialBufsLen = 0; - - this.options = options || {}; - this.iconv = codec.iconv; -} - -Utf16Decoder.prototype.write = function(buf) { - if (!this.decoder) { - // Codec is not chosen yet. Accumulate initial bytes. - this.initialBufs.push(buf); - this.initialBufsLen += buf.length; - - if (this.initialBufsLen < 16) // We need more bytes to use space heuristic (see below) - return ''; - - // We have enough bytes -> detect endianness. - var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding); - this.decoder = this.iconv.getDecoder(encoding, this.options); - - var resStr = ''; - for (var i = 0; i < this.initialBufs.length; i++) - resStr += this.decoder.write(this.initialBufs[i]); - - this.initialBufs.length = this.initialBufsLen = 0; - return resStr; - } - - return this.decoder.write(buf); -} - -Utf16Decoder.prototype.end = function() { - if (!this.decoder) { - var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding); - this.decoder = this.iconv.getDecoder(encoding, this.options); - - var resStr = ''; - for (var i = 0; i < this.initialBufs.length; i++) - resStr += this.decoder.write(this.initialBufs[i]); - - var trail = this.decoder.end(); - if (trail) - resStr += trail; - - this.initialBufs.length = this.initialBufsLen = 0; - return resStr; - } - return this.decoder.end(); -} - -function detectEncoding(bufs, defaultEncoding) { - var b = []; - var charsProcessed = 0; - var asciiCharsLE = 0, asciiCharsBE = 0; // Number of ASCII chars when decoded as LE or BE. - - outer_loop: - for (var i = 0; i < bufs.length; i++) { - var buf = bufs[i]; - for (var j = 0; j < buf.length; j++) { - b.push(buf[j]); - if (b.length === 2) { - if (charsProcessed === 0) { - // Check BOM first. - if (b[0] === 0xFF && b[1] === 0xFE) return 'utf-16le'; - if (b[0] === 0xFE && b[1] === 0xFF) return 'utf-16be'; - } - - if (b[0] === 0 && b[1] !== 0) asciiCharsBE++; - if (b[0] !== 0 && b[1] === 0) asciiCharsLE++; - - b.length = 0; - charsProcessed++; - - if (charsProcessed >= 100) { - break outer_loop; - } - } - } - } - - // Make decisions. - // Most of the time, the content has ASCII chars (U+00**), but the opposite (U+**00) is uncommon. - // So, we count ASCII as if it was LE or BE, and decide from that. - if (asciiCharsBE > asciiCharsLE) return 'utf-16be'; - if (asciiCharsBE < asciiCharsLE) return 'utf-16le'; - - // Couldn't decide (likely all zeros or not enough data). - return defaultEncoding || 'utf-16le'; -} - - - - -/***/ }), - -/***/ 62021: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - - -var Buffer = (__nccwpck_require__(12803).Buffer); - -// == UTF32-LE/BE codec. ========================================================== - -exports._utf32 = Utf32Codec; - -function Utf32Codec(codecOptions, iconv) { - this.iconv = iconv; - this.bomAware = true; - this.isLE = codecOptions.isLE; -} - -exports.utf32le = { type: '_utf32', isLE: true }; -exports.utf32be = { type: '_utf32', isLE: false }; - -// Aliases -exports.ucs4le = 'utf32le'; -exports.ucs4be = 'utf32be'; - -Utf32Codec.prototype.encoder = Utf32Encoder; -Utf32Codec.prototype.decoder = Utf32Decoder; - -// -- Encoding - -function Utf32Encoder(options, codec) { - this.isLE = codec.isLE; - this.highSurrogate = 0; -} - -Utf32Encoder.prototype.write = function(str) { - var src = Buffer.from(str, 'ucs2'); - var dst = Buffer.alloc(src.length * 2); - var write32 = this.isLE ? dst.writeUInt32LE : dst.writeUInt32BE; - var offset = 0; - - for (var i = 0; i < src.length; i += 2) { - var code = src.readUInt16LE(i); - var isHighSurrogate = (0xD800 <= code && code < 0xDC00); - var isLowSurrogate = (0xDC00 <= code && code < 0xE000); - - if (this.highSurrogate) { - if (isHighSurrogate || !isLowSurrogate) { - // There shouldn't be two high surrogates in a row, nor a high surrogate which isn't followed by a low - // surrogate. If this happens, keep the pending high surrogate as a stand-alone semi-invalid character - // (technically wrong, but expected by some applications, like Windows file names). - write32.call(dst, this.highSurrogate, offset); - offset += 4; - } - else { - // Create 32-bit value from high and low surrogates; - var codepoint = (((this.highSurrogate - 0xD800) << 10) | (code - 0xDC00)) + 0x10000; - - write32.call(dst, codepoint, offset); - offset += 4; - this.highSurrogate = 0; - - continue; - } - } - - if (isHighSurrogate) - this.highSurrogate = code; - else { - // Even if the current character is a low surrogate, with no previous high surrogate, we'll - // encode it as a semi-invalid stand-alone character for the same reasons expressed above for - // unpaired high surrogates. - write32.call(dst, code, offset); - offset += 4; - this.highSurrogate = 0; - } - } - - if (offset < dst.length) - dst = dst.slice(0, offset); - - return dst; -}; - -Utf32Encoder.prototype.end = function() { - // Treat any leftover high surrogate as a semi-valid independent character. - if (!this.highSurrogate) - return; - - var buf = Buffer.alloc(4); - - if (this.isLE) - buf.writeUInt32LE(this.highSurrogate, 0); - else - buf.writeUInt32BE(this.highSurrogate, 0); - - this.highSurrogate = 0; - - return buf; -}; - -// -- Decoding - -function Utf32Decoder(options, codec) { - this.isLE = codec.isLE; - this.badChar = codec.iconv.defaultCharUnicode.charCodeAt(0); - this.overflow = []; -} - -Utf32Decoder.prototype.write = function(src) { - if (src.length === 0) - return ''; - - var i = 0; - var codepoint = 0; - var dst = Buffer.alloc(src.length + 4); - var offset = 0; - var isLE = this.isLE; - var overflow = this.overflow; - var badChar = this.badChar; - - if (overflow.length > 0) { - for (; i < src.length && overflow.length < 4; i++) - overflow.push(src[i]); - - if (overflow.length === 4) { - // NOTE: codepoint is a signed int32 and can be negative. - // NOTE: We copied this block from below to help V8 optimize it (it works with array, not buffer). - if (isLE) { - codepoint = overflow[i] | (overflow[i+1] << 8) | (overflow[i+2] << 16) | (overflow[i+3] << 24); - } else { - codepoint = overflow[i+3] | (overflow[i+2] << 8) | (overflow[i+1] << 16) | (overflow[i] << 24); - } - overflow.length = 0; - - offset = _writeCodepoint(dst, offset, codepoint, badChar); - } - } - - // Main loop. Should be as optimized as possible. - for (; i < src.length - 3; i += 4) { - // NOTE: codepoint is a signed int32 and can be negative. - if (isLE) { - codepoint = src[i] | (src[i+1] << 8) | (src[i+2] << 16) | (src[i+3] << 24); - } else { - codepoint = src[i+3] | (src[i+2] << 8) | (src[i+1] << 16) | (src[i] << 24); - } - offset = _writeCodepoint(dst, offset, codepoint, badChar); - } - - // Keep overflowing bytes. - for (; i < src.length; i++) { - overflow.push(src[i]); - } - - return dst.slice(0, offset).toString('ucs2'); -}; - -function _writeCodepoint(dst, offset, codepoint, badChar) { - // NOTE: codepoint is signed int32 and can be negative. We keep it that way to help V8 with optimizations. - if (codepoint < 0 || codepoint > 0x10FFFF) { - // Not a valid Unicode codepoint - codepoint = badChar; - } - - // Ephemeral Planes: Write high surrogate. - if (codepoint >= 0x10000) { - codepoint -= 0x10000; - - var high = 0xD800 | (codepoint >> 10); - dst[offset++] = high & 0xff; - dst[offset++] = high >> 8; - - // Low surrogate is written below. - var codepoint = 0xDC00 | (codepoint & 0x3FF); - } - - // Write BMP char or low surrogate. - dst[offset++] = codepoint & 0xff; - dst[offset++] = codepoint >> 8; - - return offset; -}; - -Utf32Decoder.prototype.end = function() { - this.overflow.length = 0; -}; - -// == UTF-32 Auto codec ============================================================= -// Decoder chooses automatically from UTF-32LE and UTF-32BE using BOM and space-based heuristic. -// Defaults to UTF-32LE. http://en.wikipedia.org/wiki/UTF-32 -// Encoder/decoder default can be changed: iconv.decode(buf, 'utf32', {defaultEncoding: 'utf-32be'}); - -// Encoder prepends BOM (which can be overridden with (addBOM: false}). - -exports.utf32 = Utf32AutoCodec; -exports.ucs4 = 'utf32'; - -function Utf32AutoCodec(options, iconv) { - this.iconv = iconv; -} - -Utf32AutoCodec.prototype.encoder = Utf32AutoEncoder; -Utf32AutoCodec.prototype.decoder = Utf32AutoDecoder; - -// -- Encoding - -function Utf32AutoEncoder(options, codec) { - options = options || {}; - - if (options.addBOM === undefined) - options.addBOM = true; - - this.encoder = codec.iconv.getEncoder(options.defaultEncoding || 'utf-32le', options); -} - -Utf32AutoEncoder.prototype.write = function(str) { - return this.encoder.write(str); -}; - -Utf32AutoEncoder.prototype.end = function() { - return this.encoder.end(); -}; - -// -- Decoding - -function Utf32AutoDecoder(options, codec) { - this.decoder = null; - this.initialBufs = []; - this.initialBufsLen = 0; - this.options = options || {}; - this.iconv = codec.iconv; -} - -Utf32AutoDecoder.prototype.write = function(buf) { - if (!this.decoder) { - // Codec is not chosen yet. Accumulate initial bytes. - this.initialBufs.push(buf); - this.initialBufsLen += buf.length; - - if (this.initialBufsLen < 32) // We need more bytes to use space heuristic (see below) - return ''; - - // We have enough bytes -> detect endianness. - var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding); - this.decoder = this.iconv.getDecoder(encoding, this.options); - - var resStr = ''; - for (var i = 0; i < this.initialBufs.length; i++) - resStr += this.decoder.write(this.initialBufs[i]); - - this.initialBufs.length = this.initialBufsLen = 0; - return resStr; - } - - return this.decoder.write(buf); -}; - -Utf32AutoDecoder.prototype.end = function() { - if (!this.decoder) { - var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding); - this.decoder = this.iconv.getDecoder(encoding, this.options); - - var resStr = ''; - for (var i = 0; i < this.initialBufs.length; i++) - resStr += this.decoder.write(this.initialBufs[i]); - - var trail = this.decoder.end(); - if (trail) - resStr += trail; - - this.initialBufs.length = this.initialBufsLen = 0; - return resStr; - } - - return this.decoder.end(); -}; - -function detectEncoding(bufs, defaultEncoding) { - var b = []; - var charsProcessed = 0; - var invalidLE = 0, invalidBE = 0; // Number of invalid chars when decoded as LE or BE. - var bmpCharsLE = 0, bmpCharsBE = 0; // Number of BMP chars when decoded as LE or BE. - - outer_loop: - for (var i = 0; i < bufs.length; i++) { - var buf = bufs[i]; - for (var j = 0; j < buf.length; j++) { - b.push(buf[j]); - if (b.length === 4) { - if (charsProcessed === 0) { - // Check BOM first. - if (b[0] === 0xFF && b[1] === 0xFE && b[2] === 0 && b[3] === 0) { - return 'utf-32le'; - } - if (b[0] === 0 && b[1] === 0 && b[2] === 0xFE && b[3] === 0xFF) { - return 'utf-32be'; - } - } - - if (b[0] !== 0 || b[1] > 0x10) invalidBE++; - if (b[3] !== 0 || b[2] > 0x10) invalidLE++; - - if (b[0] === 0 && b[1] === 0 && (b[2] !== 0 || b[3] !== 0)) bmpCharsBE++; - if ((b[0] !== 0 || b[1] !== 0) && b[2] === 0 && b[3] === 0) bmpCharsLE++; - - b.length = 0; - charsProcessed++; - - if (charsProcessed >= 100) { - break outer_loop; - } - } - } - } - - // Make decisions. - if (bmpCharsBE - invalidBE > bmpCharsLE - invalidLE) return 'utf-32be'; - if (bmpCharsBE - invalidBE < bmpCharsLE - invalidLE) return 'utf-32le'; - - // Couldn't decide (likely all zeros or not enough data). - return defaultEncoding || 'utf-32le'; -} - - -/***/ }), - -/***/ 28231: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -var Buffer = (__nccwpck_require__(12803).Buffer); - -// UTF-7 codec, according to https://tools.ietf.org/html/rfc2152 -// See also below a UTF-7-IMAP codec, according to http://tools.ietf.org/html/rfc3501#section-5.1.3 - -exports.utf7 = Utf7Codec; -exports.unicode11utf7 = 'utf7'; // Alias UNICODE-1-1-UTF-7 -function Utf7Codec(codecOptions, iconv) { - this.iconv = iconv; -}; - -Utf7Codec.prototype.encoder = Utf7Encoder; -Utf7Codec.prototype.decoder = Utf7Decoder; -Utf7Codec.prototype.bomAware = true; - - -// -- Encoding - -var nonDirectChars = /[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g; - -function Utf7Encoder(options, codec) { - this.iconv = codec.iconv; -} - -Utf7Encoder.prototype.write = function(str) { - // Naive implementation. - // Non-direct chars are encoded as "+-"; single "+" char is encoded as "+-". - return Buffer.from(str.replace(nonDirectChars, function(chunk) { - return "+" + (chunk === '+' ? '' : - this.iconv.encode(chunk, 'utf16-be').toString('base64').replace(/=+$/, '')) - + "-"; - }.bind(this))); -} - -Utf7Encoder.prototype.end = function() { -} - - -// -- Decoding - -function Utf7Decoder(options, codec) { - this.iconv = codec.iconv; - this.inBase64 = false; - this.base64Accum = ''; -} - -var base64Regex = /[A-Za-z0-9\/+]/; -var base64Chars = []; -for (var i = 0; i < 256; i++) - base64Chars[i] = base64Regex.test(String.fromCharCode(i)); - -var plusChar = '+'.charCodeAt(0), - minusChar = '-'.charCodeAt(0), - andChar = '&'.charCodeAt(0); - -Utf7Decoder.prototype.write = function(buf) { - var res = "", lastI = 0, - inBase64 = this.inBase64, - base64Accum = this.base64Accum; - - // The decoder is more involved as we must handle chunks in stream. - - for (var i = 0; i < buf.length; i++) { - if (!inBase64) { // We're in direct mode. - // Write direct chars until '+' - if (buf[i] == plusChar) { - res += this.iconv.decode(buf.slice(lastI, i), "ascii"); // Write direct chars. - lastI = i+1; - inBase64 = true; - } - } else { // We decode base64. - if (!base64Chars[buf[i]]) { // Base64 ended. - if (i == lastI && buf[i] == minusChar) {// "+-" -> "+" - res += "+"; - } else { - var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i), "ascii"); - res += this.iconv.decode(Buffer.from(b64str, 'base64'), "utf16-be"); - } - - if (buf[i] != minusChar) // Minus is absorbed after base64. - i--; - - lastI = i+1; - inBase64 = false; - base64Accum = ''; - } - } - } - - if (!inBase64) { - res += this.iconv.decode(buf.slice(lastI), "ascii"); // Write direct chars. - } else { - var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii"); - - var canBeDecoded = b64str.length - (b64str.length % 8); // Minimal chunk: 2 quads -> 2x3 bytes -> 3 chars. - base64Accum = b64str.slice(canBeDecoded); // The rest will be decoded in future. - b64str = b64str.slice(0, canBeDecoded); - - res += this.iconv.decode(Buffer.from(b64str, 'base64'), "utf16-be"); - } - - this.inBase64 = inBase64; - this.base64Accum = base64Accum; - - return res; -} - -Utf7Decoder.prototype.end = function() { - var res = ""; - if (this.inBase64 && this.base64Accum.length > 0) - res = this.iconv.decode(Buffer.from(this.base64Accum, 'base64'), "utf16-be"); - - this.inBase64 = false; - this.base64Accum = ''; - return res; -} - - -// UTF-7-IMAP codec. -// RFC3501 Sec. 5.1.3 Modified UTF-7 (http://tools.ietf.org/html/rfc3501#section-5.1.3) -// Differences: -// * Base64 part is started by "&" instead of "+" -// * Direct characters are 0x20-0x7E, except "&" (0x26) -// * In Base64, "," is used instead of "/" -// * Base64 must not be used to represent direct characters. -// * No implicit shift back from Base64 (should always end with '-') -// * String must end in non-shifted position. -// * "-&" while in base64 is not allowed. - - -exports.utf7imap = Utf7IMAPCodec; -function Utf7IMAPCodec(codecOptions, iconv) { - this.iconv = iconv; -}; - -Utf7IMAPCodec.prototype.encoder = Utf7IMAPEncoder; -Utf7IMAPCodec.prototype.decoder = Utf7IMAPDecoder; -Utf7IMAPCodec.prototype.bomAware = true; - - -// -- Encoding - -function Utf7IMAPEncoder(options, codec) { - this.iconv = codec.iconv; - this.inBase64 = false; - this.base64Accum = Buffer.alloc(6); - this.base64AccumIdx = 0; -} - -Utf7IMAPEncoder.prototype.write = function(str) { - var inBase64 = this.inBase64, - base64Accum = this.base64Accum, - base64AccumIdx = this.base64AccumIdx, - buf = Buffer.alloc(str.length*5 + 10), bufIdx = 0; - - for (var i = 0; i < str.length; i++) { - var uChar = str.charCodeAt(i); - if (0x20 <= uChar && uChar <= 0x7E) { // Direct character or '&'. - if (inBase64) { - if (base64AccumIdx > 0) { - bufIdx += buf.write(base64Accum.slice(0, base64AccumIdx).toString('base64').replace(/\//g, ',').replace(/=+$/, ''), bufIdx); - base64AccumIdx = 0; - } - - buf[bufIdx++] = minusChar; // Write '-', then go to direct mode. - inBase64 = false; - } - - if (!inBase64) { - buf[bufIdx++] = uChar; // Write direct character - - if (uChar === andChar) // Ampersand -> '&-' - buf[bufIdx++] = minusChar; - } - - } else { // Non-direct character - if (!inBase64) { - buf[bufIdx++] = andChar; // Write '&', then go to base64 mode. - inBase64 = true; - } - if (inBase64) { - base64Accum[base64AccumIdx++] = uChar >> 8; - base64Accum[base64AccumIdx++] = uChar & 0xFF; - - if (base64AccumIdx == base64Accum.length) { - bufIdx += buf.write(base64Accum.toString('base64').replace(/\//g, ','), bufIdx); - base64AccumIdx = 0; - } - } - } - } - - this.inBase64 = inBase64; - this.base64AccumIdx = base64AccumIdx; - - return buf.slice(0, bufIdx); -} - -Utf7IMAPEncoder.prototype.end = function() { - var buf = Buffer.alloc(10), bufIdx = 0; - if (this.inBase64) { - if (this.base64AccumIdx > 0) { - bufIdx += buf.write(this.base64Accum.slice(0, this.base64AccumIdx).toString('base64').replace(/\//g, ',').replace(/=+$/, ''), bufIdx); - this.base64AccumIdx = 0; - } - - buf[bufIdx++] = minusChar; // Write '-', then go to direct mode. - this.inBase64 = false; - } - - return buf.slice(0, bufIdx); -} - - -// -- Decoding - -function Utf7IMAPDecoder(options, codec) { - this.iconv = codec.iconv; - this.inBase64 = false; - this.base64Accum = ''; -} - -var base64IMAPChars = base64Chars.slice(); -base64IMAPChars[','.charCodeAt(0)] = true; - -Utf7IMAPDecoder.prototype.write = function(buf) { - var res = "", lastI = 0, - inBase64 = this.inBase64, - base64Accum = this.base64Accum; - - // The decoder is more involved as we must handle chunks in stream. - // It is forgiving, closer to standard UTF-7 (for example, '-' is optional at the end). - - for (var i = 0; i < buf.length; i++) { - if (!inBase64) { // We're in direct mode. - // Write direct chars until '&' - if (buf[i] == andChar) { - res += this.iconv.decode(buf.slice(lastI, i), "ascii"); // Write direct chars. - lastI = i+1; - inBase64 = true; - } - } else { // We decode base64. - if (!base64IMAPChars[buf[i]]) { // Base64 ended. - if (i == lastI && buf[i] == minusChar) { // "&-" -> "&" - res += "&"; - } else { - var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i), "ascii").replace(/,/g, '/'); - res += this.iconv.decode(Buffer.from(b64str, 'base64'), "utf16-be"); - } - - if (buf[i] != minusChar) // Minus may be absorbed after base64. - i--; - - lastI = i+1; - inBase64 = false; - base64Accum = ''; - } - } - } - - if (!inBase64) { - res += this.iconv.decode(buf.slice(lastI), "ascii"); // Write direct chars. - } else { - var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii").replace(/,/g, '/'); - - var canBeDecoded = b64str.length - (b64str.length % 8); // Minimal chunk: 2 quads -> 2x3 bytes -> 3 chars. - base64Accum = b64str.slice(canBeDecoded); // The rest will be decoded in future. - b64str = b64str.slice(0, canBeDecoded); - - res += this.iconv.decode(Buffer.from(b64str, 'base64'), "utf16-be"); - } - - this.inBase64 = inBase64; - this.base64Accum = base64Accum; - - return res; -} - -Utf7IMAPDecoder.prototype.end = function() { - var res = ""; - if (this.inBase64 && this.base64Accum.length > 0) - res = this.iconv.decode(Buffer.from(this.base64Accum, 'base64'), "utf16-be"); - - this.inBase64 = false; - this.base64Accum = ''; - return res; -} - - - - -/***/ }), - -/***/ 74250: -/***/ ((__unused_webpack_module, exports) => { - -"use strict"; - - -var BOMChar = '\uFEFF'; - -exports.PrependBOM = PrependBOMWrapper -function PrependBOMWrapper(encoder, options) { - this.encoder = encoder; - this.addBOM = true; -} - -PrependBOMWrapper.prototype.write = function(str) { - if (this.addBOM) { - str = BOMChar + str; - this.addBOM = false; - } - - return this.encoder.write(str); -} - -PrependBOMWrapper.prototype.end = function() { - return this.encoder.end(); -} - - -//------------------------------------------------------------------------------ - -exports.StripBOM = StripBOMWrapper; -function StripBOMWrapper(decoder, options) { - this.decoder = decoder; - this.pass = false; - this.options = options || {}; -} - -StripBOMWrapper.prototype.write = function(buf) { - var res = this.decoder.write(buf); - if (this.pass || !res) - return res; - - if (res[0] === BOMChar) { - res = res.slice(1); - if (typeof this.options.stripBOM === 'function') - this.options.stripBOM(); - } - - this.pass = true; - return res; -} - -StripBOMWrapper.prototype.end = function() { - return this.decoder.end(); -} - - - -/***/ }), - -/***/ 31748: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var Buffer = (__nccwpck_require__(12803).Buffer); - -var bomHandling = __nccwpck_require__(74250), - iconv = module.exports; - -// All codecs and aliases are kept here, keyed by encoding name/alias. -// They are lazy loaded in `iconv.getCodec` from `encodings/index.js`. -iconv.encodings = null; - -// Characters emitted in case of error. -iconv.defaultCharUnicode = '�'; -iconv.defaultCharSingleByte = '?'; - -// Public API. -iconv.encode = function encode(str, encoding, options) { - str = "" + (str || ""); // Ensure string. - - var encoder = iconv.getEncoder(encoding, options); - - var res = encoder.write(str); - var trail = encoder.end(); - - return (trail && trail.length > 0) ? Buffer.concat([res, trail]) : res; -} - -iconv.decode = function decode(buf, encoding, options) { - if (typeof buf === 'string') { - if (!iconv.skipDecodeWarning) { - console.error('Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding'); - iconv.skipDecodeWarning = true; - } - - buf = Buffer.from("" + (buf || ""), "binary"); // Ensure buffer. - } - - var decoder = iconv.getDecoder(encoding, options); - - var res = decoder.write(buf); - var trail = decoder.end(); - - return trail ? (res + trail) : res; -} - -iconv.encodingExists = function encodingExists(enc) { - try { - iconv.getCodec(enc); - return true; - } catch (e) { - return false; - } -} - -// Legacy aliases to convert functions -iconv.toEncoding = iconv.encode; -iconv.fromEncoding = iconv.decode; - -// Search for a codec in iconv.encodings. Cache codec data in iconv._codecDataCache. -iconv._codecDataCache = {}; -iconv.getCodec = function getCodec(encoding) { - if (!iconv.encodings) - iconv.encodings = __nccwpck_require__(27585); // Lazy load all encoding definitions. - - // Canonicalize encoding name: strip all non-alphanumeric chars and appended year. - var enc = iconv._canonicalizeEncoding(encoding); - - // Traverse iconv.encodings to find actual codec. - var codecOptions = {}; - while (true) { - var codec = iconv._codecDataCache[enc]; - if (codec) - return codec; - - var codecDef = iconv.encodings[enc]; - - switch (typeof codecDef) { - case "string": // Direct alias to other encoding. - enc = codecDef; - break; - - case "object": // Alias with options. Can be layered. - for (var key in codecDef) - codecOptions[key] = codecDef[key]; - - if (!codecOptions.encodingName) - codecOptions.encodingName = enc; - - enc = codecDef.type; - break; - - case "function": // Codec itself. - if (!codecOptions.encodingName) - codecOptions.encodingName = enc; - - // The codec function must load all tables and return object with .encoder and .decoder methods. - // It'll be called only once (for each different options object). - codec = new codecDef(codecOptions, iconv); - - iconv._codecDataCache[codecOptions.encodingName] = codec; // Save it to be reused later. - return codec; - - default: - throw new Error("Encoding not recognized: '" + encoding + "' (searched as: '"+enc+"')"); - } - } -} - -iconv._canonicalizeEncoding = function(encoding) { - // Canonicalize encoding name: strip all non-alphanumeric chars and appended year. - return (''+encoding).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g, ""); -} - -iconv.getEncoder = function getEncoder(encoding, options) { - var codec = iconv.getCodec(encoding), - encoder = new codec.encoder(options, codec); - - if (codec.bomAware && options && options.addBOM) - encoder = new bomHandling.PrependBOM(encoder, options); - - return encoder; -} - -iconv.getDecoder = function getDecoder(encoding, options) { - var codec = iconv.getCodec(encoding), - decoder = new codec.decoder(options, codec); - - if (codec.bomAware && !(options && options.stripBOM === false)) - decoder = new bomHandling.StripBOM(decoder, options); - - return decoder; -} - -// Streaming API -// NOTE: Streaming API naturally depends on 'stream' module from Node.js. Unfortunately in browser environments this module can add -// up to 100Kb to the output bundle. To avoid unnecessary code bloat, we don't enable Streaming API in browser by default. -// If you would like to enable it explicitly, please add the following code to your app: -// > iconv.enableStreamingAPI(require('stream')); -iconv.enableStreamingAPI = function enableStreamingAPI(stream_module) { - if (iconv.supportsStreams) - return; - - // Dependency-inject stream module to create IconvLite stream classes. - var streams = __nccwpck_require__(42281)(stream_module); - - // Not public API yet, but expose the stream classes. - iconv.IconvLiteEncoderStream = streams.IconvLiteEncoderStream; - iconv.IconvLiteDecoderStream = streams.IconvLiteDecoderStream; - - // Streaming API. - iconv.encodeStream = function encodeStream(encoding, options) { - return new iconv.IconvLiteEncoderStream(iconv.getEncoder(encoding, options), options); - } - - iconv.decodeStream = function decodeStream(encoding, options) { - return new iconv.IconvLiteDecoderStream(iconv.getDecoder(encoding, options), options); - } - - iconv.supportsStreams = true; -} - -// Enable Streaming API automatically if 'stream' module is available and non-empty (the majority of environments). -var stream_module; -try { - stream_module = __nccwpck_require__(2203); -} catch (e) {} - -if (stream_module && stream_module.Transform) { - iconv.enableStreamingAPI(stream_module); - -} else { - // In rare cases where 'stream' module is not available by default, throw a helpful exception. - iconv.encodeStream = iconv.decodeStream = function() { - throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it."); - }; -} - -if (false) {} - - -/***/ }), - -/***/ 42281: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -var Buffer = (__nccwpck_require__(12803).Buffer); - -// NOTE: Due to 'stream' module being pretty large (~100Kb, significant in browser environments), -// we opt to dependency-inject it instead of creating a hard dependency. -module.exports = function(stream_module) { - var Transform = stream_module.Transform; - - // == Encoder stream ======================================================= - - function IconvLiteEncoderStream(conv, options) { - this.conv = conv; - options = options || {}; - options.decodeStrings = false; // We accept only strings, so we don't need to decode them. - Transform.call(this, options); - } - - IconvLiteEncoderStream.prototype = Object.create(Transform.prototype, { - constructor: { value: IconvLiteEncoderStream } - }); - - IconvLiteEncoderStream.prototype._transform = function(chunk, encoding, done) { - if (typeof chunk != 'string') - return done(new Error("Iconv encoding stream needs strings as its input.")); - try { - var res = this.conv.write(chunk); - if (res && res.length) this.push(res); - done(); - } - catch (e) { - done(e); - } - } - - IconvLiteEncoderStream.prototype._flush = function(done) { - try { - var res = this.conv.end(); - if (res && res.length) this.push(res); - done(); - } - catch (e) { - done(e); - } - } - - IconvLiteEncoderStream.prototype.collect = function(cb) { - var chunks = []; - this.on('error', cb); - this.on('data', function(chunk) { chunks.push(chunk); }); - this.on('end', function() { - cb(null, Buffer.concat(chunks)); - }); - return this; - } - - - // == Decoder stream ======================================================= - - function IconvLiteDecoderStream(conv, options) { - this.conv = conv; - options = options || {}; - options.encoding = this.encoding = 'utf8'; // We output strings. - Transform.call(this, options); - } - - IconvLiteDecoderStream.prototype = Object.create(Transform.prototype, { - constructor: { value: IconvLiteDecoderStream } - }); - - IconvLiteDecoderStream.prototype._transform = function(chunk, encoding, done) { - if (!Buffer.isBuffer(chunk) && !(chunk instanceof Uint8Array)) - return done(new Error("Iconv decoding stream needs buffers as its input.")); - try { - var res = this.conv.write(chunk); - if (res && res.length) this.push(res, this.encoding); - done(); - } - catch (e) { - done(e); - } - } - - IconvLiteDecoderStream.prototype._flush = function(done) { - try { - var res = this.conv.end(); - if (res && res.length) this.push(res, this.encoding); - done(); - } - catch (e) { - done(e); - } - } - - IconvLiteDecoderStream.prototype.collect = function(cb) { - var res = ''; - this.on('error', cb); - this.on('data', function(chunk) { res += chunk; }); - this.on('end', function() { - cb(null, res); - }); - return this; - } - - return { - IconvLiteEncoderStream: IconvLiteEncoderStream, - IconvLiteDecoderStream: IconvLiteDecoderStream, - }; -}; - - -/***/ }), - -/***/ 39598: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -try { - var util = __nccwpck_require__(39023); - /* istanbul ignore next */ - if (typeof util.inherits !== 'function') throw ''; - module.exports = util.inherits; -} catch (e) { - /* istanbul ignore next */ - module.exports = __nccwpck_require__(26589); -} - - -/***/ }), - -/***/ 26589: -/***/ ((module) => { - -if (typeof Object.create === 'function') { - // implementation from standard node.js 'util' module - module.exports = function inherits(ctor, superCtor) { - if (superCtor) { - ctor.super_ = superCtor - ctor.prototype = Object.create(superCtor.prototype, { - constructor: { - value: ctor, - enumerable: false, - writable: true, - configurable: true - } - }) - } - }; -} else { - // old school shim for old browsers - module.exports = function inherits(ctor, superCtor) { - if (superCtor) { - ctor.super_ = superCtor - var TempCtor = function () {} - TempCtor.prototype = superCtor.prototype - ctor.prototype = new TempCtor() - ctor.prototype.constructor = ctor - } - } -} - - -/***/ }), - -/***/ 93132: -/***/ ((module) => { - -// Generated using `npm run build`. Do not edit. - -var regex = /^[a-z](?:[\.0-9_a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*-(?:[\x2D\.0-9_a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*$/; - -var isPotentialCustomElementName = function(string) { - return regex.test(string); -}; - -module.exports = isPotentialCustomElementName; - - -/***/ }), - -/***/ 22157: -/***/ ((module) => { - -/** - * [js-sha3]{@link https://github.com/emn178/js-sha3} - * - * @version 0.8.0 - * @author Chen, Yi-Cyuan [emn178@gmail.com] - * @copyright Chen, Yi-Cyuan 2015-2018 - * @license MIT - */ -/*jslint bitwise: true */ -(function () { - 'use strict'; - - var INPUT_ERROR = 'input is invalid type'; - var FINALIZE_ERROR = 'finalize already called'; - var WINDOW = typeof window === 'object'; - var root = WINDOW ? window : {}; - if (root.JS_SHA3_NO_WINDOW) { - WINDOW = false; - } - var WEB_WORKER = !WINDOW && typeof self === 'object'; - var NODE_JS = !root.JS_SHA3_NO_NODE_JS && typeof process === 'object' && process.versions && process.versions.node; - if (NODE_JS) { - root = global; - } else if (WEB_WORKER) { - root = self; - } - var COMMON_JS = !root.JS_SHA3_NO_COMMON_JS && "object" === 'object' && module.exports; - var AMD = typeof define === 'function' && define.amd; - var ARRAY_BUFFER = !root.JS_SHA3_NO_ARRAY_BUFFER && typeof ArrayBuffer !== 'undefined'; - var HEX_CHARS = '0123456789abcdef'.split(''); - var SHAKE_PADDING = [31, 7936, 2031616, 520093696]; - var CSHAKE_PADDING = [4, 1024, 262144, 67108864]; - var KECCAK_PADDING = [1, 256, 65536, 16777216]; - var PADDING = [6, 1536, 393216, 100663296]; - var SHIFT = [0, 8, 16, 24]; - var RC = [1, 0, 32898, 0, 32906, 2147483648, 2147516416, 2147483648, 32907, 0, 2147483649, - 0, 2147516545, 2147483648, 32777, 2147483648, 138, 0, 136, 0, 2147516425, 0, - 2147483658, 0, 2147516555, 0, 139, 2147483648, 32905, 2147483648, 32771, - 2147483648, 32770, 2147483648, 128, 2147483648, 32778, 0, 2147483658, 2147483648, - 2147516545, 2147483648, 32896, 2147483648, 2147483649, 0, 2147516424, 2147483648]; - var BITS = [224, 256, 384, 512]; - var SHAKE_BITS = [128, 256]; - var OUTPUT_TYPES = ['hex', 'buffer', 'arrayBuffer', 'array', 'digest']; - var CSHAKE_BYTEPAD = { - '128': 168, - '256': 136 - }; - - if (root.JS_SHA3_NO_NODE_JS || !Array.isArray) { - Array.isArray = function (obj) { - return Object.prototype.toString.call(obj) === '[object Array]'; - }; - } - - if (ARRAY_BUFFER && (root.JS_SHA3_NO_ARRAY_BUFFER_IS_VIEW || !ArrayBuffer.isView)) { - ArrayBuffer.isView = function (obj) { - return typeof obj === 'object' && obj.buffer && obj.buffer.constructor === ArrayBuffer; - }; - } - - var createOutputMethod = function (bits, padding, outputType) { - return function (message) { - return new Keccak(bits, padding, bits).update(message)[outputType](); - }; - }; - - var createShakeOutputMethod = function (bits, padding, outputType) { - return function (message, outputBits) { - return new Keccak(bits, padding, outputBits).update(message)[outputType](); - }; - }; - - var createCshakeOutputMethod = function (bits, padding, outputType) { - return function (message, outputBits, n, s) { - return methods['cshake' + bits].update(message, outputBits, n, s)[outputType](); - }; - }; - - var createKmacOutputMethod = function (bits, padding, outputType) { - return function (key, message, outputBits, s) { - return methods['kmac' + bits].update(key, message, outputBits, s)[outputType](); - }; - }; - - var createOutputMethods = function (method, createMethod, bits, padding) { - for (var i = 0; i < OUTPUT_TYPES.length; ++i) { - var type = OUTPUT_TYPES[i]; - method[type] = createMethod(bits, padding, type); - } - return method; - }; - - var createMethod = function (bits, padding) { - var method = createOutputMethod(bits, padding, 'hex'); - method.create = function () { - return new Keccak(bits, padding, bits); - }; - method.update = function (message) { - return method.create().update(message); - }; - return createOutputMethods(method, createOutputMethod, bits, padding); - }; - - var createShakeMethod = function (bits, padding) { - var method = createShakeOutputMethod(bits, padding, 'hex'); - method.create = function (outputBits) { - return new Keccak(bits, padding, outputBits); - }; - method.update = function (message, outputBits) { - return method.create(outputBits).update(message); - }; - return createOutputMethods(method, createShakeOutputMethod, bits, padding); - }; - - var createCshakeMethod = function (bits, padding) { - var w = CSHAKE_BYTEPAD[bits]; - var method = createCshakeOutputMethod(bits, padding, 'hex'); - method.create = function (outputBits, n, s) { - if (!n && !s) { - return methods['shake' + bits].create(outputBits); - } else { - return new Keccak(bits, padding, outputBits).bytepad([n, s], w); - } - }; - method.update = function (message, outputBits, n, s) { - return method.create(outputBits, n, s).update(message); - }; - return createOutputMethods(method, createCshakeOutputMethod, bits, padding); - }; - - var createKmacMethod = function (bits, padding) { - var w = CSHAKE_BYTEPAD[bits]; - var method = createKmacOutputMethod(bits, padding, 'hex'); - method.create = function (key, outputBits, s) { - return new Kmac(bits, padding, outputBits).bytepad(['KMAC', s], w).bytepad([key], w); - }; - method.update = function (key, message, outputBits, s) { - return method.create(key, outputBits, s).update(message); - }; - return createOutputMethods(method, createKmacOutputMethod, bits, padding); - }; - - var algorithms = [ - { name: 'keccak', padding: KECCAK_PADDING, bits: BITS, createMethod: createMethod }, - { name: 'sha3', padding: PADDING, bits: BITS, createMethod: createMethod }, - { name: 'shake', padding: SHAKE_PADDING, bits: SHAKE_BITS, createMethod: createShakeMethod }, - { name: 'cshake', padding: CSHAKE_PADDING, bits: SHAKE_BITS, createMethod: createCshakeMethod }, - { name: 'kmac', padding: CSHAKE_PADDING, bits: SHAKE_BITS, createMethod: createKmacMethod } - ]; - - var methods = {}, methodNames = []; - - for (var i = 0; i < algorithms.length; ++i) { - var algorithm = algorithms[i]; - var bits = algorithm.bits; - for (var j = 0; j < bits.length; ++j) { - var methodName = algorithm.name + '_' + bits[j]; - methodNames.push(methodName); - methods[methodName] = algorithm.createMethod(bits[j], algorithm.padding); - if (algorithm.name !== 'sha3') { - var newMethodName = algorithm.name + bits[j]; - methodNames.push(newMethodName); - methods[newMethodName] = methods[methodName]; - } - } - } - - function Keccak(bits, padding, outputBits) { - this.blocks = []; - this.s = []; - this.padding = padding; - this.outputBits = outputBits; - this.reset = true; - this.finalized = false; - this.block = 0; - this.start = 0; - this.blockCount = (1600 - (bits << 1)) >> 5; - this.byteCount = this.blockCount << 2; - this.outputBlocks = outputBits >> 5; - this.extraBytes = (outputBits & 31) >> 3; - - for (var i = 0; i < 50; ++i) { - this.s[i] = 0; - } - } - - Keccak.prototype.update = function (message) { - if (this.finalized) { - throw new Error(FINALIZE_ERROR); - } - var notString, type = typeof message; - if (type !== 'string') { - if (type === 'object') { - if (message === null) { - throw new Error(INPUT_ERROR); - } else if (ARRAY_BUFFER && message.constructor === ArrayBuffer) { - message = new Uint8Array(message); - } else if (!Array.isArray(message)) { - if (!ARRAY_BUFFER || !ArrayBuffer.isView(message)) { - throw new Error(INPUT_ERROR); - } - } - } else { - throw new Error(INPUT_ERROR); - } - notString = true; - } - var blocks = this.blocks, byteCount = this.byteCount, length = message.length, - blockCount = this.blockCount, index = 0, s = this.s, i, code; - - while (index < length) { - if (this.reset) { - this.reset = false; - blocks[0] = this.block; - for (i = 1; i < blockCount + 1; ++i) { - blocks[i] = 0; - } - } - if (notString) { - for (i = this.start; index < length && i < byteCount; ++index) { - blocks[i >> 2] |= message[index] << SHIFT[i++ & 3]; - } - } else { - for (i = this.start; index < length && i < byteCount; ++index) { - code = message.charCodeAt(index); - if (code < 0x80) { - blocks[i >> 2] |= code << SHIFT[i++ & 3]; - } else if (code < 0x800) { - blocks[i >> 2] |= (0xc0 | (code >> 6)) << SHIFT[i++ & 3]; - blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3]; - } else if (code < 0xd800 || code >= 0xe000) { - blocks[i >> 2] |= (0xe0 | (code >> 12)) << SHIFT[i++ & 3]; - blocks[i >> 2] |= (0x80 | ((code >> 6) & 0x3f)) << SHIFT[i++ & 3]; - blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3]; - } else { - code = 0x10000 + (((code & 0x3ff) << 10) | (message.charCodeAt(++index) & 0x3ff)); - blocks[i >> 2] |= (0xf0 | (code >> 18)) << SHIFT[i++ & 3]; - blocks[i >> 2] |= (0x80 | ((code >> 12) & 0x3f)) << SHIFT[i++ & 3]; - blocks[i >> 2] |= (0x80 | ((code >> 6) & 0x3f)) << SHIFT[i++ & 3]; - blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3]; - } - } - } - this.lastByteIndex = i; - if (i >= byteCount) { - this.start = i - byteCount; - this.block = blocks[blockCount]; - for (i = 0; i < blockCount; ++i) { - s[i] ^= blocks[i]; - } - f(s); - this.reset = true; - } else { - this.start = i; - } - } - return this; - }; - - Keccak.prototype.encode = function (x, right) { - var o = x & 255, n = 1; - var bytes = [o]; - x = x >> 8; - o = x & 255; - while (o > 0) { - bytes.unshift(o); - x = x >> 8; - o = x & 255; - ++n; - } - if (right) { - bytes.push(n); - } else { - bytes.unshift(n); - } - this.update(bytes); - return bytes.length; - }; - - Keccak.prototype.encodeString = function (str) { - var notString, type = typeof str; - if (type !== 'string') { - if (type === 'object') { - if (str === null) { - throw new Error(INPUT_ERROR); - } else if (ARRAY_BUFFER && str.constructor === ArrayBuffer) { - str = new Uint8Array(str); - } else if (!Array.isArray(str)) { - if (!ARRAY_BUFFER || !ArrayBuffer.isView(str)) { - throw new Error(INPUT_ERROR); - } - } - } else { - throw new Error(INPUT_ERROR); - } - notString = true; - } - var bytes = 0, length = str.length; - if (notString) { - bytes = length; - } else { - for (var i = 0; i < str.length; ++i) { - var code = str.charCodeAt(i); - if (code < 0x80) { - bytes += 1; - } else if (code < 0x800) { - bytes += 2; - } else if (code < 0xd800 || code >= 0xe000) { - bytes += 3; - } else { - code = 0x10000 + (((code & 0x3ff) << 10) | (str.charCodeAt(++i) & 0x3ff)); - bytes += 4; - } - } - } - bytes += this.encode(bytes * 8); - this.update(str); - return bytes; - }; - - Keccak.prototype.bytepad = function (strs, w) { - var bytes = this.encode(w); - for (var i = 0; i < strs.length; ++i) { - bytes += this.encodeString(strs[i]); - } - var paddingBytes = w - bytes % w; - var zeros = []; - zeros.length = paddingBytes; - this.update(zeros); - return this; - }; - - Keccak.prototype.finalize = function () { - if (this.finalized) { - return; - } - this.finalized = true; - var blocks = this.blocks, i = this.lastByteIndex, blockCount = this.blockCount, s = this.s; - blocks[i >> 2] |= this.padding[i & 3]; - if (this.lastByteIndex === this.byteCount) { - blocks[0] = blocks[blockCount]; - for (i = 1; i < blockCount + 1; ++i) { - blocks[i] = 0; - } - } - blocks[blockCount - 1] |= 0x80000000; - for (i = 0; i < blockCount; ++i) { - s[i] ^= blocks[i]; - } - f(s); - }; - - Keccak.prototype.toString = Keccak.prototype.hex = function () { - this.finalize(); - - var blockCount = this.blockCount, s = this.s, outputBlocks = this.outputBlocks, - extraBytes = this.extraBytes, i = 0, j = 0; - var hex = '', block; - while (j < outputBlocks) { - for (i = 0; i < blockCount && j < outputBlocks; ++i, ++j) { - block = s[i]; - hex += HEX_CHARS[(block >> 4) & 0x0F] + HEX_CHARS[block & 0x0F] + - HEX_CHARS[(block >> 12) & 0x0F] + HEX_CHARS[(block >> 8) & 0x0F] + - HEX_CHARS[(block >> 20) & 0x0F] + HEX_CHARS[(block >> 16) & 0x0F] + - HEX_CHARS[(block >> 28) & 0x0F] + HEX_CHARS[(block >> 24) & 0x0F]; - } - if (j % blockCount === 0) { - f(s); - i = 0; - } - } - if (extraBytes) { - block = s[i]; - hex += HEX_CHARS[(block >> 4) & 0x0F] + HEX_CHARS[block & 0x0F]; - if (extraBytes > 1) { - hex += HEX_CHARS[(block >> 12) & 0x0F] + HEX_CHARS[(block >> 8) & 0x0F]; - } - if (extraBytes > 2) { - hex += HEX_CHARS[(block >> 20) & 0x0F] + HEX_CHARS[(block >> 16) & 0x0F]; - } - } - return hex; - }; - - Keccak.prototype.arrayBuffer = function () { - this.finalize(); - - var blockCount = this.blockCount, s = this.s, outputBlocks = this.outputBlocks, - extraBytes = this.extraBytes, i = 0, j = 0; - var bytes = this.outputBits >> 3; - var buffer; - if (extraBytes) { - buffer = new ArrayBuffer((outputBlocks + 1) << 2); - } else { - buffer = new ArrayBuffer(bytes); - } - var array = new Uint32Array(buffer); - while (j < outputBlocks) { - for (i = 0; i < blockCount && j < outputBlocks; ++i, ++j) { - array[j] = s[i]; - } - if (j % blockCount === 0) { - f(s); - } - } - if (extraBytes) { - array[i] = s[i]; - buffer = buffer.slice(0, bytes); - } - return buffer; - }; - - Keccak.prototype.buffer = Keccak.prototype.arrayBuffer; - - Keccak.prototype.digest = Keccak.prototype.array = function () { - this.finalize(); - - var blockCount = this.blockCount, s = this.s, outputBlocks = this.outputBlocks, - extraBytes = this.extraBytes, i = 0, j = 0; - var array = [], offset, block; - while (j < outputBlocks) { - for (i = 0; i < blockCount && j < outputBlocks; ++i, ++j) { - offset = j << 2; - block = s[i]; - array[offset] = block & 0xFF; - array[offset + 1] = (block >> 8) & 0xFF; - array[offset + 2] = (block >> 16) & 0xFF; - array[offset + 3] = (block >> 24) & 0xFF; - } - if (j % blockCount === 0) { - f(s); - } - } - if (extraBytes) { - offset = j << 2; - block = s[i]; - array[offset] = block & 0xFF; - if (extraBytes > 1) { - array[offset + 1] = (block >> 8) & 0xFF; - } - if (extraBytes > 2) { - array[offset + 2] = (block >> 16) & 0xFF; - } - } - return array; - }; - - function Kmac(bits, padding, outputBits) { - Keccak.call(this, bits, padding, outputBits); - } - - Kmac.prototype = new Keccak(); - - Kmac.prototype.finalize = function () { - this.encode(this.outputBits, true); - return Keccak.prototype.finalize.call(this); - }; - - var f = function (s) { - var h, l, n, c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, - b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17, - b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32, b33, - b34, b35, b36, b37, b38, b39, b40, b41, b42, b43, b44, b45, b46, b47, b48, b49; - for (n = 0; n < 48; n += 2) { - c0 = s[0] ^ s[10] ^ s[20] ^ s[30] ^ s[40]; - c1 = s[1] ^ s[11] ^ s[21] ^ s[31] ^ s[41]; - c2 = s[2] ^ s[12] ^ s[22] ^ s[32] ^ s[42]; - c3 = s[3] ^ s[13] ^ s[23] ^ s[33] ^ s[43]; - c4 = s[4] ^ s[14] ^ s[24] ^ s[34] ^ s[44]; - c5 = s[5] ^ s[15] ^ s[25] ^ s[35] ^ s[45]; - c6 = s[6] ^ s[16] ^ s[26] ^ s[36] ^ s[46]; - c7 = s[7] ^ s[17] ^ s[27] ^ s[37] ^ s[47]; - c8 = s[8] ^ s[18] ^ s[28] ^ s[38] ^ s[48]; - c9 = s[9] ^ s[19] ^ s[29] ^ s[39] ^ s[49]; - - h = c8 ^ ((c2 << 1) | (c3 >>> 31)); - l = c9 ^ ((c3 << 1) | (c2 >>> 31)); - s[0] ^= h; - s[1] ^= l; - s[10] ^= h; - s[11] ^= l; - s[20] ^= h; - s[21] ^= l; - s[30] ^= h; - s[31] ^= l; - s[40] ^= h; - s[41] ^= l; - h = c0 ^ ((c4 << 1) | (c5 >>> 31)); - l = c1 ^ ((c5 << 1) | (c4 >>> 31)); - s[2] ^= h; - s[3] ^= l; - s[12] ^= h; - s[13] ^= l; - s[22] ^= h; - s[23] ^= l; - s[32] ^= h; - s[33] ^= l; - s[42] ^= h; - s[43] ^= l; - h = c2 ^ ((c6 << 1) | (c7 >>> 31)); - l = c3 ^ ((c7 << 1) | (c6 >>> 31)); - s[4] ^= h; - s[5] ^= l; - s[14] ^= h; - s[15] ^= l; - s[24] ^= h; - s[25] ^= l; - s[34] ^= h; - s[35] ^= l; - s[44] ^= h; - s[45] ^= l; - h = c4 ^ ((c8 << 1) | (c9 >>> 31)); - l = c5 ^ ((c9 << 1) | (c8 >>> 31)); - s[6] ^= h; - s[7] ^= l; - s[16] ^= h; - s[17] ^= l; - s[26] ^= h; - s[27] ^= l; - s[36] ^= h; - s[37] ^= l; - s[46] ^= h; - s[47] ^= l; - h = c6 ^ ((c0 << 1) | (c1 >>> 31)); - l = c7 ^ ((c1 << 1) | (c0 >>> 31)); - s[8] ^= h; - s[9] ^= l; - s[18] ^= h; - s[19] ^= l; - s[28] ^= h; - s[29] ^= l; - s[38] ^= h; - s[39] ^= l; - s[48] ^= h; - s[49] ^= l; - - b0 = s[0]; - b1 = s[1]; - b32 = (s[11] << 4) | (s[10] >>> 28); - b33 = (s[10] << 4) | (s[11] >>> 28); - b14 = (s[20] << 3) | (s[21] >>> 29); - b15 = (s[21] << 3) | (s[20] >>> 29); - b46 = (s[31] << 9) | (s[30] >>> 23); - b47 = (s[30] << 9) | (s[31] >>> 23); - b28 = (s[40] << 18) | (s[41] >>> 14); - b29 = (s[41] << 18) | (s[40] >>> 14); - b20 = (s[2] << 1) | (s[3] >>> 31); - b21 = (s[3] << 1) | (s[2] >>> 31); - b2 = (s[13] << 12) | (s[12] >>> 20); - b3 = (s[12] << 12) | (s[13] >>> 20); - b34 = (s[22] << 10) | (s[23] >>> 22); - b35 = (s[23] << 10) | (s[22] >>> 22); - b16 = (s[33] << 13) | (s[32] >>> 19); - b17 = (s[32] << 13) | (s[33] >>> 19); - b48 = (s[42] << 2) | (s[43] >>> 30); - b49 = (s[43] << 2) | (s[42] >>> 30); - b40 = (s[5] << 30) | (s[4] >>> 2); - b41 = (s[4] << 30) | (s[5] >>> 2); - b22 = (s[14] << 6) | (s[15] >>> 26); - b23 = (s[15] << 6) | (s[14] >>> 26); - b4 = (s[25] << 11) | (s[24] >>> 21); - b5 = (s[24] << 11) | (s[25] >>> 21); - b36 = (s[34] << 15) | (s[35] >>> 17); - b37 = (s[35] << 15) | (s[34] >>> 17); - b18 = (s[45] << 29) | (s[44] >>> 3); - b19 = (s[44] << 29) | (s[45] >>> 3); - b10 = (s[6] << 28) | (s[7] >>> 4); - b11 = (s[7] << 28) | (s[6] >>> 4); - b42 = (s[17] << 23) | (s[16] >>> 9); - b43 = (s[16] << 23) | (s[17] >>> 9); - b24 = (s[26] << 25) | (s[27] >>> 7); - b25 = (s[27] << 25) | (s[26] >>> 7); - b6 = (s[36] << 21) | (s[37] >>> 11); - b7 = (s[37] << 21) | (s[36] >>> 11); - b38 = (s[47] << 24) | (s[46] >>> 8); - b39 = (s[46] << 24) | (s[47] >>> 8); - b30 = (s[8] << 27) | (s[9] >>> 5); - b31 = (s[9] << 27) | (s[8] >>> 5); - b12 = (s[18] << 20) | (s[19] >>> 12); - b13 = (s[19] << 20) | (s[18] >>> 12); - b44 = (s[29] << 7) | (s[28] >>> 25); - b45 = (s[28] << 7) | (s[29] >>> 25); - b26 = (s[38] << 8) | (s[39] >>> 24); - b27 = (s[39] << 8) | (s[38] >>> 24); - b8 = (s[48] << 14) | (s[49] >>> 18); - b9 = (s[49] << 14) | (s[48] >>> 18); - - s[0] = b0 ^ (~b2 & b4); - s[1] = b1 ^ (~b3 & b5); - s[10] = b10 ^ (~b12 & b14); - s[11] = b11 ^ (~b13 & b15); - s[20] = b20 ^ (~b22 & b24); - s[21] = b21 ^ (~b23 & b25); - s[30] = b30 ^ (~b32 & b34); - s[31] = b31 ^ (~b33 & b35); - s[40] = b40 ^ (~b42 & b44); - s[41] = b41 ^ (~b43 & b45); - s[2] = b2 ^ (~b4 & b6); - s[3] = b3 ^ (~b5 & b7); - s[12] = b12 ^ (~b14 & b16); - s[13] = b13 ^ (~b15 & b17); - s[22] = b22 ^ (~b24 & b26); - s[23] = b23 ^ (~b25 & b27); - s[32] = b32 ^ (~b34 & b36); - s[33] = b33 ^ (~b35 & b37); - s[42] = b42 ^ (~b44 & b46); - s[43] = b43 ^ (~b45 & b47); - s[4] = b4 ^ (~b6 & b8); - s[5] = b5 ^ (~b7 & b9); - s[14] = b14 ^ (~b16 & b18); - s[15] = b15 ^ (~b17 & b19); - s[24] = b24 ^ (~b26 & b28); - s[25] = b25 ^ (~b27 & b29); - s[34] = b34 ^ (~b36 & b38); - s[35] = b35 ^ (~b37 & b39); - s[44] = b44 ^ (~b46 & b48); - s[45] = b45 ^ (~b47 & b49); - s[6] = b6 ^ (~b8 & b0); - s[7] = b7 ^ (~b9 & b1); - s[16] = b16 ^ (~b18 & b10); - s[17] = b17 ^ (~b19 & b11); - s[26] = b26 ^ (~b28 & b20); - s[27] = b27 ^ (~b29 & b21); - s[36] = b36 ^ (~b38 & b30); - s[37] = b37 ^ (~b39 & b31); - s[46] = b46 ^ (~b48 & b40); - s[47] = b47 ^ (~b49 & b41); - s[8] = b8 ^ (~b0 & b2); - s[9] = b9 ^ (~b1 & b3); - s[18] = b18 ^ (~b10 & b12); - s[19] = b19 ^ (~b11 & b13); - s[28] = b28 ^ (~b20 & b22); - s[29] = b29 ^ (~b21 & b23); - s[38] = b38 ^ (~b30 & b32); - s[39] = b39 ^ (~b31 & b33); - s[48] = b48 ^ (~b40 & b42); - s[49] = b49 ^ (~b41 & b43); - - s[0] ^= RC[n]; - s[1] ^= RC[n + 1]; - } - }; - - if (COMMON_JS) { - module.exports = methods; - } else { - for (i = 0; i < methodNames.length; ++i) { - root[methodNames[i]] = methods[methodNames[i]]; - } - if (AMD) { - define(function () { - return methods; - }); - } - } -})(); - - -/***/ }), - -/***/ 81865: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; -var __webpack_unused_export__; - -const path = __nccwpck_require__(16928); -const fs = (__nccwpck_require__(79896).promises); -const vm = __nccwpck_require__(69154); -const toughCookie = __nccwpck_require__(96684); -const sniffHTMLEncoding = __nccwpck_require__(45528); -const whatwgURL = __nccwpck_require__(78012); -const whatwgEncoding = __nccwpck_require__(86476); -const { URL } = __nccwpck_require__(78012); -const MIMEType = __nccwpck_require__(59344); -const idlUtils = __nccwpck_require__(87094); -const VirtualConsole = __nccwpck_require__(68224); -const { createWindow } = __nccwpck_require__(30398); -const { parseIntoDocument } = __nccwpck_require__(13430); -const { fragmentSerialization } = __nccwpck_require__(49446); -const ResourceLoader = __nccwpck_require__(79414); -const NoOpResourceLoader = __nccwpck_require__(13858); - -class CookieJar extends toughCookie.CookieJar { - constructor(store, options) { - // jsdom cookie jars must be loose by default - super(store, { looseMode: true, ...options }); - } -} - -const window = Symbol("window"); -let sharedFragmentDocument = null; - -class JSDOM { - constructor(input = "", options = {}) { - const mimeType = new MIMEType(options.contentType === undefined ? "text/html" : options.contentType); - const { html, encoding } = normalizeHTML(input, mimeType); - - options = transformOptions(options, encoding, mimeType); - - this[window] = createWindow(options.windowOptions); - - const documentImpl = idlUtils.implForWrapper(this[window]._document); - - options.beforeParse(this[window]._globalProxy); - - parseIntoDocument(html, documentImpl); - - documentImpl.close(); - } - - get window() { - // It's important to grab the global proxy, instead of just the result of `createWindow(...)`, since otherwise - // things like `window.eval` don't exist. - return this[window]._globalProxy; - } - - get virtualConsole() { - return this[window]._virtualConsole; - } - - get cookieJar() { - // TODO NEWAPI move _cookieJar to window probably - return idlUtils.implForWrapper(this[window]._document)._cookieJar; - } - - serialize() { - return fragmentSerialization(idlUtils.implForWrapper(this[window]._document), { requireWellFormed: false }); - } - - nodeLocation(node) { - if (!idlUtils.implForWrapper(this[window]._document)._parseOptions.sourceCodeLocationInfo) { - throw new Error("Location information was not saved for this jsdom. Use includeNodeLocations during creation."); - } - - return idlUtils.implForWrapper(node).sourceCodeLocation; - } - - getInternalVMContext() { - if (!vm.isContext(this[window])) { - throw new TypeError("This jsdom was not configured to allow script running. " + - "Use the runScripts option during creation."); - } - - return this[window]; - } - - reconfigure(settings) { - if ("windowTop" in settings) { - this[window]._top = settings.windowTop; - } - - if ("url" in settings) { - const document = idlUtils.implForWrapper(this[window]._document); - - const url = whatwgURL.parseURL(settings.url); - if (url === null) { - throw new TypeError(`Could not parse "${settings.url}" as a URL`); - } - - document._URL = url; - document._origin = whatwgURL.serializeURLOrigin(document._URL); - this[window]._sessionHistory.currentEntry.url = url; - } - } - - static fragment(string = "") { - if (!sharedFragmentDocument) { - sharedFragmentDocument = (new JSDOM()).window.document; - } - - const template = sharedFragmentDocument.createElement("template"); - template.innerHTML = string; - return template.content; - } - - static fromURL(url, options = {}) { - return Promise.resolve().then(() => { - // Remove the hash while sending this through the research loader fetch(). - // It gets added back a few lines down when constructing the JSDOM object. - const parsedURL = new URL(url); - const originalHash = parsedURL.hash; - parsedURL.hash = ""; - url = parsedURL.href; - - options = normalizeFromURLOptions(options); - - const resourceLoader = resourcesToResourceLoader(options.resources); - const resourceLoaderForInitialRequest = resourceLoader.constructor === NoOpResourceLoader ? - new ResourceLoader() : - resourceLoader; - - const req = resourceLoaderForInitialRequest.fetch(url, { - accept: "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", - cookieJar: options.cookieJar, - referrer: options.referrer - }); - - return req.then(body => { - const res = req.response; - - options = Object.assign(options, { - url: req.href + originalHash, - contentType: res.headers["content-type"], - referrer: req.getHeader("referer") ?? undefined - }); - - return new JSDOM(body, options); - }); - }); - } - - static async fromFile(filename, options = {}) { - options = normalizeFromFileOptions(filename, options); - const buffer = await fs.readFile(filename); - - return new JSDOM(buffer, options); - } -} - -function normalizeFromURLOptions(options) { - // Checks on options that are invalid for `fromURL` - if (options.url !== undefined) { - throw new TypeError("Cannot supply a url option when using fromURL"); - } - if (options.contentType !== undefined) { - throw new TypeError("Cannot supply a contentType option when using fromURL"); - } - - // Normalization of options which must be done before the rest of the fromURL code can use them, because they are - // given to request() - const normalized = { ...options }; - - if (options.referrer !== undefined) { - normalized.referrer = (new URL(options.referrer)).href; - } - - if (options.cookieJar === undefined) { - normalized.cookieJar = new CookieJar(); - } - - return normalized; - - // All other options don't need to be processed yet, and can be taken care of in the normal course of things when - // `fromURL` calls `new JSDOM(html, options)`. -} - -function normalizeFromFileOptions(filename, options) { - const normalized = { ...options }; - - if (normalized.contentType === undefined) { - const extname = path.extname(filename); - if (extname === ".xhtml" || extname === ".xht" || extname === ".xml") { - normalized.contentType = "application/xhtml+xml"; - } - } - - if (normalized.url === undefined) { - normalized.url = new URL("file:" + path.resolve(filename)); - } - - return normalized; -} - -function transformOptions(options, encoding, mimeType) { - const transformed = { - windowOptions: { - // Defaults - url: "about:blank", - referrer: "", - contentType: "text/html", - parsingMode: "html", - parseOptions: { - sourceCodeLocationInfo: false, - scriptingEnabled: false - }, - runScripts: undefined, - encoding, - pretendToBeVisual: false, - storageQuota: 5000000, - - // Defaults filled in later - resourceLoader: undefined, - virtualConsole: undefined, - cookieJar: undefined - }, - - // Defaults - beforeParse() { } - }; - - // options.contentType was parsed into mimeType by the caller. - if (!mimeType.isHTML() && !mimeType.isXML()) { - throw new RangeError(`The given content type of "${options.contentType}" was not a HTML or XML content type`); - } - - transformed.windowOptions.contentType = mimeType.essence; - transformed.windowOptions.parsingMode = mimeType.isHTML() ? "html" : "xml"; - - if (options.url !== undefined) { - transformed.windowOptions.url = (new URL(options.url)).href; - } - - if (options.referrer !== undefined) { - transformed.windowOptions.referrer = (new URL(options.referrer)).href; - } - - if (options.includeNodeLocations) { - if (transformed.windowOptions.parsingMode === "xml") { - throw new TypeError("Cannot set includeNodeLocations to true with an XML content type"); - } - - transformed.windowOptions.parseOptions = { sourceCodeLocationInfo: true }; - } - - transformed.windowOptions.cookieJar = options.cookieJar === undefined ? - new CookieJar() : - options.cookieJar; - - transformed.windowOptions.virtualConsole = options.virtualConsole === undefined ? - (new VirtualConsole()).sendTo(console) : - options.virtualConsole; - - if (!(transformed.windowOptions.virtualConsole instanceof VirtualConsole)) { - throw new TypeError("virtualConsole must be an instance of VirtualConsole"); - } - - transformed.windowOptions.resourceLoader = resourcesToResourceLoader(options.resources); - - if (options.runScripts !== undefined) { - transformed.windowOptions.runScripts = String(options.runScripts); - if (transformed.windowOptions.runScripts === "dangerously") { - transformed.windowOptions.parseOptions.scriptingEnabled = true; - } else if (transformed.windowOptions.runScripts !== "outside-only") { - throw new RangeError(`runScripts must be undefined, "dangerously", or "outside-only"`); - } - } - - if (options.beforeParse !== undefined) { - transformed.beforeParse = options.beforeParse; - } - - if (options.pretendToBeVisual !== undefined) { - transformed.windowOptions.pretendToBeVisual = Boolean(options.pretendToBeVisual); - } - - if (options.storageQuota !== undefined) { - transformed.windowOptions.storageQuota = Number(options.storageQuota); - } - - return transformed; -} - -function normalizeHTML(html, mimeType) { - let encoding = "UTF-8"; - - if (ArrayBuffer.isView(html)) { - html = Buffer.from(html.buffer, html.byteOffset, html.byteLength); - } else if (html instanceof ArrayBuffer) { - html = Buffer.from(html); - } - - if (Buffer.isBuffer(html)) { - encoding = sniffHTMLEncoding(html, { - defaultEncoding: mimeType.isXML() ? "UTF-8" : "windows-1252", - transportLayerEncodingLabel: mimeType.parameters.get("charset") - }); - html = whatwgEncoding.decode(html, encoding); - } else { - html = String(html); - } - - return { html, encoding }; -} - -function resourcesToResourceLoader(resources) { - switch (resources) { - case undefined: { - return new NoOpResourceLoader(); - } - case "usable": { - return new ResourceLoader(); - } - default: { - if (!(resources instanceof ResourceLoader)) { - throw new TypeError("resources must be an instance of ResourceLoader"); - } - return resources; - } - } -} - -exports.un = JSDOM; - -__webpack_unused_export__ = VirtualConsole; -__webpack_unused_export__ = CookieJar; -__webpack_unused_export__ = ResourceLoader; - -__webpack_unused_export__ = toughCookie; - - -/***/ }), - -/***/ 30398: -/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => { - -"use strict"; - -const vm = __nccwpck_require__(69154); -const webIDLConversions = __nccwpck_require__(37125); -const { CSSStyleDeclaration } = __nccwpck_require__(99712); -const notImplemented = __nccwpck_require__(8172); -const { installInterfaces } = __nccwpck_require__(96533); -const { define, mixin } = __nccwpck_require__(35702); -const Element = __nccwpck_require__(41423); -const EventTarget = __nccwpck_require__(29122); -const EventHandlerNonNull = __nccwpck_require__(69117); -const IDLFunction = __nccwpck_require__(25295); -const OnBeforeUnloadEventHandlerNonNull = __nccwpck_require__(98574); -const OnErrorEventHandlerNonNull = __nccwpck_require__(54414); -const { fireAPageTransitionEvent } = __nccwpck_require__(24639); -const namedPropertiesWindow = __nccwpck_require__(59397); -const postMessage = __nccwpck_require__(32065); -const DOMException = __nccwpck_require__(16694); -const idlUtils = __nccwpck_require__(87094); -const WebSocketImpl = (__nccwpck_require__(14764).implementation); -const BarProp = __nccwpck_require__(21183); -const documents = __nccwpck_require__(33111); -const External = __nccwpck_require__(18516); -const Navigator = __nccwpck_require__(60618); -const Performance = __nccwpck_require__(7569); -const Screen = __nccwpck_require__(42235); -const Crypto = __nccwpck_require__(19346); -const Storage = __nccwpck_require__(90778); -const Selection = __nccwpck_require__(1417); -const reportException = __nccwpck_require__(12323); -const { getCurrentEventHandlerValue } = __nccwpck_require__(15676); -const { fireAnEvent } = __nccwpck_require__(83350); -const SessionHistory = __nccwpck_require__(1072); -const { getDeclarationForElement, getResolvedValue, propertiesWithResolvedValueImplemented, - SHADOW_DOM_PSEUDO_REGEXP } = __nccwpck_require__(86024); -const CustomElementRegistry = __nccwpck_require__(46193); -const jsGlobals = __nccwpck_require__(75282); - -const GlobalEventHandlersImpl = (__nccwpck_require__(27206).implementation); -const WindowEventHandlersImpl = (__nccwpck_require__(64473).implementation); - -const events = new Set([ - // GlobalEventHandlers - "abort", "autocomplete", - "autocompleteerror", "blur", - "cancel", "canplay", "canplaythrough", - "change", "click", - "close", "contextmenu", - "cuechange", "dblclick", - "drag", "dragend", - "dragenter", - "dragleave", "dragover", - "dragstart", "drop", - "durationchange", "emptied", - "ended", "focus", - "input", "invalid", - "keydown", "keypress", - "keyup", "load", "loadeddata", - "loadedmetadata", "loadstart", - "mousedown", "mouseenter", - "mouseleave", "mousemove", - "mouseout", "mouseover", - "mouseup", "wheel", - "pause", "play", - "playing", "progress", - "ratechange", "reset", - "resize", "scroll", - "securitypolicyviolation", - "seeked", "seeking", - "select", "sort", "stalled", - "submit", "suspend", - "timeupdate", "toggle", - "volumechange", "waiting", - - // WindowEventHandlers - "afterprint", - "beforeprint", - "hashchange", - "languagechange", - "message", - "messageerror", - "offline", - "online", - "pagehide", - "pageshow", - "popstate", - "rejectionhandled", - "storage", - "unhandledrejection", - "unload" - - // "error" and "beforeunload" are added separately -]); - -exports.createWindow = function (options) { - return new Window(options); -}; - -const jsGlobalEntriesToInstall = Object.entries(jsGlobals).filter(([name]) => name in global); - -// https://html.spec.whatwg.org/#the-window-object -function setupWindow(windowInstance, { runScripts }) { - if (runScripts === "outside-only" || runScripts === "dangerously") { - contextifyWindow(windowInstance); - - // Without this, these globals will only appear to scripts running inside the context using vm.runScript; they will - // not appear to scripts running from the outside, including to JSDOM implementation code. - for (const [globalName, globalPropDesc] of jsGlobalEntriesToInstall) { - const propDesc = { ...globalPropDesc, value: vm.runInContext(globalName, windowInstance) }; - Object.defineProperty(windowInstance, globalName, propDesc); - } - } else { - // Without contextifying the window, none of the globals will exist. So, let's at least alias them from the Node.js - // context. See https://github.com/jsdom/jsdom/issues/2727 for more background and discussion. - for (const [globalName, globalPropDesc] of jsGlobalEntriesToInstall) { - const propDesc = { ...globalPropDesc, value: global[globalName] }; - Object.defineProperty(windowInstance, globalName, propDesc); - } - } - - installInterfaces(windowInstance, ["Window"]); - - const EventTargetConstructor = windowInstance.EventTarget; - - // eslint-disable-next-line func-name-matching, func-style, no-shadow - const windowConstructor = function Window() { - throw new TypeError("Illegal constructor"); - }; - Object.setPrototypeOf(windowConstructor, EventTargetConstructor); - - Object.defineProperty(windowInstance, "Window", { - configurable: true, - writable: true, - value: windowConstructor - }); - - const windowPrototype = Object.create(EventTargetConstructor.prototype); - Object.defineProperties(windowPrototype, { - constructor: { - value: windowConstructor, - writable: true, - configurable: true - }, - [Symbol.toStringTag]: { - value: "Window", - configurable: true - } - }); - - windowConstructor.prototype = windowPrototype; - Object.setPrototypeOf(windowInstance, windowPrototype); - - EventTarget.setup(windowInstance, windowInstance); - mixin(windowInstance, WindowEventHandlersImpl.prototype); - mixin(windowInstance, GlobalEventHandlersImpl.prototype); - windowInstance._initGlobalEvents(); - - Object.defineProperty(windowInstance, "onbeforeunload", { - configurable: true, - enumerable: true, - get() { - return idlUtils.tryWrapperForImpl(getCurrentEventHandlerValue(this, "beforeunload")); - }, - set(V) { - if (!idlUtils.isObject(V)) { - V = null; - } else { - V = OnBeforeUnloadEventHandlerNonNull.convert(windowInstance, V, { - context: "Failed to set the 'onbeforeunload' property on 'Window': The provided value" - }); - } - this._setEventHandlerFor("beforeunload", V); - } - }); - - Object.defineProperty(windowInstance, "onerror", { - configurable: true, - enumerable: true, - get() { - return idlUtils.tryWrapperForImpl(getCurrentEventHandlerValue(this, "error")); - }, - set(V) { - if (!idlUtils.isObject(V)) { - V = null; - } else { - V = OnErrorEventHandlerNonNull.convert(windowInstance, V, { - context: "Failed to set the 'onerror' property on 'Window': The provided value" - }); - } - this._setEventHandlerFor("error", V); - } - }); - - for (const event of events) { - Object.defineProperty(windowInstance, `on${event}`, { - configurable: true, - enumerable: true, - get() { - return idlUtils.tryWrapperForImpl(getCurrentEventHandlerValue(this, event)); - }, - set(V) { - if (!idlUtils.isObject(V)) { - V = null; - } else { - V = EventHandlerNonNull.convert(windowInstance, V, { - context: `Failed to set the 'on${event}' property on 'Window': The provided value` - }); - } - this._setEventHandlerFor(event, V); - } - }); - } - - windowInstance._globalObject = windowInstance; -} - -function makeReplaceablePropertyDescriptor(property, window) { - const desc = { - set(value) { - Object.defineProperty(window, property, { - configurable: true, - enumerable: true, - writable: true, - value - }); - } - }; - - Object.defineProperty(desc.set, "name", { value: `set ${property}` }); - return desc; -} - -// NOTE: per https://heycam.github.io/webidl/#Global, all properties on the Window object must be own-properties. -// That is why we assign everything inside of the constructor, instead of using a shared prototype. -// You can verify this in e.g. Firefox or Internet Explorer, which do a good job with Web IDL compliance. -function Window(options) { - setupWindow(this, { runScripts: options.runScripts }); - - const windowInitialized = performance.now(); - - const window = this; - - // ### PRIVATE DATA PROPERTIES - - this._resourceLoader = options.resourceLoader; - - // vm initialization is deferred until script processing is activated - this._globalProxy = this; - Object.defineProperty(idlUtils.implForWrapper(this), idlUtils.wrapperSymbol, { get: () => this._globalProxy }); - - // List options explicitly to be clear which are passed through - this._document = documents.createWrapper(window, { - parsingMode: options.parsingMode, - contentType: options.contentType, - encoding: options.encoding, - cookieJar: options.cookieJar, - url: options.url, - lastModified: options.lastModified, - referrer: options.referrer, - parseOptions: options.parseOptions, - defaultView: this._globalProxy, - global: this, - parentOrigin: options.parentOrigin - }, { alwaysUseDocumentClass: true }); - - if (vm.isContext(window)) { - const documentImpl = idlUtils.implForWrapper(window._document); - documentImpl._defaultView = window._globalProxy = vm.runInContext("this", window); - } - - const documentOrigin = idlUtils.implForWrapper(this._document)._origin; - this._origin = documentOrigin; - - // https://html.spec.whatwg.org/#session-history - this._sessionHistory = new SessionHistory({ - document: idlUtils.implForWrapper(this._document), - url: idlUtils.implForWrapper(this._document)._URL, - stateObject: null - }, this); - - this._virtualConsole = options.virtualConsole; - - this._runScripts = options.runScripts; - - // Set up the window as if it's a top level window. - // If it's not, then references will be corrected by frame/iframe code. - this._parent = this._top = this._globalProxy; - this._frameElement = null; - - // This implements window.frames.length, since window.frames returns a - // self reference to the window object. This value is incremented in the - // HTMLFrameElement implementation. - this._length = 0; - - // https://dom.spec.whatwg.org/#window-current-event - this._currentEvent = undefined; - - this._pretendToBeVisual = options.pretendToBeVisual; - this._storageQuota = options.storageQuota; - - // Some properties (such as localStorage and sessionStorage) share data - // between windows in the same origin. This object is intended - // to contain such data. - if (options.commonForOrigin && options.commonForOrigin[documentOrigin]) { - this._commonForOrigin = options.commonForOrigin; - } else { - this._commonForOrigin = { - [documentOrigin]: { - localStorageArea: new Map(), - sessionStorageArea: new Map(), - windowsInSameOrigin: [this] - } - }; - } - - this._currentOriginData = this._commonForOrigin[documentOrigin]; - - // ### WEB STORAGE - - this._localStorage = Storage.create(window, [], { - associatedWindow: this, - storageArea: this._currentOriginData.localStorageArea, - type: "localStorage", - url: this._document.documentURI, - storageQuota: this._storageQuota - }); - this._sessionStorage = Storage.create(window, [], { - associatedWindow: this, - storageArea: this._currentOriginData.sessionStorageArea, - type: "sessionStorage", - url: this._document.documentURI, - storageQuota: this._storageQuota - }); - - // ### SELECTION - - // https://w3c.github.io/selection-api/#dfn-selection - this._selection = Selection.createImpl(window); - - // https://w3c.github.io/selection-api/#dom-window - this.getSelection = function () { - return window._selection; - }; - - // ### GETTERS - - const locationbar = BarProp.create(window); - const menubar = BarProp.create(window); - const personalbar = BarProp.create(window); - const scrollbars = BarProp.create(window); - const statusbar = BarProp.create(window); - const toolbar = BarProp.create(window); - const external = External.create(window); - const navigator = Navigator.create(window, [], { userAgent: this._resourceLoader._userAgent }); - const performanceImpl = Performance.create(window, [], { - timeOrigin: performance.timeOrigin + windowInitialized, - nowAtTimeOrigin: windowInitialized - }); - const screen = Screen.create(window); - const crypto = Crypto.create(window); - this._customElementRegistry = CustomElementRegistry.create(window); - - define(this, { - get length() { - return window._length; - }, - get window() { - return window._globalProxy; - }, - get frameElement() { - return idlUtils.wrapperForImpl(window._frameElement); - }, - get frames() { - return window._globalProxy; - }, - get self() { - return window._globalProxy; - }, - get parent() { - return window._parent; - }, - get top() { - return window._top; - }, - get document() { - return window._document; - }, - get external() { - return external; - }, - get location() { - return idlUtils.wrapperForImpl(idlUtils.implForWrapper(window._document)._location); - }, - // [PutForwards=href]: - set location(value) { - Reflect.set(window.location, "href", value); - }, - get history() { - return idlUtils.wrapperForImpl(idlUtils.implForWrapper(window._document)._history); - }, - get navigator() { - return navigator; - }, - get locationbar() { - return locationbar; - }, - get menubar() { - return menubar; - }, - get personalbar() { - return personalbar; - }, - get scrollbars() { - return scrollbars; - }, - get statusbar() { - return statusbar; - }, - get toolbar() { - return toolbar; - }, - get performance() { - return performanceImpl; - }, - get screen() { - return screen; - }, - get crypto() { - return crypto; - }, - get origin() { - return window._origin; - }, - get localStorage() { - if (idlUtils.implForWrapper(this._document)._origin === "null") { - throw DOMException.create(window, [ - "localStorage is not available for opaque origins", - "SecurityError" - ]); - } - - return this._localStorage; - }, - get sessionStorage() { - if (idlUtils.implForWrapper(this._document)._origin === "null") { - throw DOMException.create(window, [ - "sessionStorage is not available for opaque origins", - "SecurityError" - ]); - } - - return this._sessionStorage; - }, - get customElements() { - return this._customElementRegistry; - }, - get event() { - return window._currentEvent ? idlUtils.wrapperForImpl(window._currentEvent) : undefined; - } - }); - - Object.defineProperties(this, { - // [Replaceable]: - self: makeReplaceablePropertyDescriptor("self", window), - locationbar: makeReplaceablePropertyDescriptor("locationbar", window), - menubar: makeReplaceablePropertyDescriptor("menubar", window), - personalbar: makeReplaceablePropertyDescriptor("personalbar", window), - scrollbars: makeReplaceablePropertyDescriptor("scrollbars", window), - statusbar: makeReplaceablePropertyDescriptor("statusbar", window), - toolbar: makeReplaceablePropertyDescriptor("toolbar", window), - frames: makeReplaceablePropertyDescriptor("frames", window), - parent: makeReplaceablePropertyDescriptor("parent", window), - external: makeReplaceablePropertyDescriptor("external", window), - length: makeReplaceablePropertyDescriptor("length", window), - screen: makeReplaceablePropertyDescriptor("screen", window), - origin: makeReplaceablePropertyDescriptor("origin", window), - event: makeReplaceablePropertyDescriptor("event", window), - - // [LegacyUnforgeable]: - window: { configurable: false }, - document: { configurable: false }, - location: { configurable: false }, - top: { configurable: false } - }); - - - namedPropertiesWindow.initializeWindow(this, this._globalProxy); - - // ### METHODS - - // https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#timers - - // In the spec the list of active timers is a set of IDs. We make it a map of IDs to Node.js timer objects, so that - // we can call Node.js-side clearTimeout() when clearing, and thus allow process shutdown faster. - const listOfActiveTimers = new Map(); - let latestTimerId = 0; - - this.setTimeout = function (handler, timeout = 0, ...args) { - if (typeof handler !== "function") { - handler = webIDLConversions.DOMString(handler); - } - timeout = webIDLConversions.long(timeout); - - return timerInitializationSteps(handler, timeout, args, { methodContext: window, repeat: false }); - }; - this.setInterval = function (handler, timeout = 0, ...args) { - if (typeof handler !== "function") { - handler = webIDLConversions.DOMString(handler); - } - timeout = webIDLConversions.long(timeout); - - return timerInitializationSteps(handler, timeout, args, { methodContext: window, repeat: true }); - }; - - this.clearTimeout = function (handle = 0) { - handle = webIDLConversions.long(handle); - - const nodejsTimer = listOfActiveTimers.get(handle); - if (nodejsTimer) { - clearTimeout(nodejsTimer); - listOfActiveTimers.delete(handle); - } - }; - this.clearInterval = function (handle = 0) { - handle = webIDLConversions.long(handle); - - const nodejsTimer = listOfActiveTimers.get(handle); - if (nodejsTimer) { - // We use setTimeout() in timerInitializationSteps even for this.setInterval(). - clearTimeout(nodejsTimer); - listOfActiveTimers.delete(handle); - } - }; - - function timerInitializationSteps(handler, timeout, args, { methodContext, repeat, previousHandle }) { - // This appears to be unspecced, but matches browser behavior for close()ed windows. - if (!methodContext._document) { - return 0; - } - - // TODO: implement timer nesting level behavior. - - const methodContextProxy = methodContext._globalProxy; - const handle = previousHandle !== undefined ? previousHandle : ++latestTimerId; - - function task() { - if (!listOfActiveTimers.has(handle)) { - return; - } - - try { - if (typeof handler === "function") { - handler.apply(methodContextProxy, args); - } else if (window._runScripts === "dangerously") { - vm.runInContext(handler, window, { filename: window.location.href, displayErrors: false }); - } - } catch (e) { - reportException(window, e, window.location.href); - } - - if (listOfActiveTimers.has(handle)) { - if (repeat) { - timerInitializationSteps(handler, timeout, args, { methodContext, repeat: true, previousHandle: handle }); - } else { - listOfActiveTimers.delete(handle); - } - } - } - - if (timeout < 0) { - timeout = 0; - } - - const nodejsTimer = setTimeout(task, timeout); - listOfActiveTimers.set(handle, nodejsTimer); - - return handle; - } - - // https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#microtask-queuing - - this.queueMicrotask = function (callback) { - callback = IDLFunction.convert(this, callback); - - queueMicrotask(() => { - try { - callback(); - } catch (e) { - reportException(window, e, window.location.href); - } - }); - }; - - // https://html.spec.whatwg.org/multipage/imagebitmap-and-animations.html#animation-frames - - let animationFrameCallbackId = 0; - const mapOfAnimationFrameCallbacks = new Map(); - let animationFrameNodejsInterval = null; - - // Unlike the spec, where an animation frame happens every 60 Hz regardless, we optimize so that if there are no - // requestAnimationFrame() calls outstanding, we don't fire the timer. This helps us track that. - let numberOfOngoingAnimationFrameCallbacks = 0; - - if (this._pretendToBeVisual) { - this.requestAnimationFrame = function (callback) { - callback = IDLFunction.convert(this, callback); - - const handle = ++animationFrameCallbackId; - mapOfAnimationFrameCallbacks.set(handle, callback); - - ++numberOfOngoingAnimationFrameCallbacks; - if (numberOfOngoingAnimationFrameCallbacks === 1) { - animationFrameNodejsInterval = setInterval(() => { - runAnimationFrameCallbacks(performance.now() - windowInitialized); - }, 1000 / 60); - } - - return handle; - }; - - this.cancelAnimationFrame = function (handle) { - handle = webIDLConversions["unsigned long"](handle); - - removeAnimationFrameCallback(handle); - }; - - function runAnimationFrameCallbacks(now) { - // Converting to an array is important to get a sync snapshot and thus match spec semantics. - const callbackHandles = [...mapOfAnimationFrameCallbacks.keys()]; - for (const handle of callbackHandles) { - // This has() can be false if a callback calls cancelAnimationFrame(). - if (mapOfAnimationFrameCallbacks.has(handle)) { - const callback = mapOfAnimationFrameCallbacks.get(handle); - removeAnimationFrameCallback(handle); - try { - callback(now); - } catch (e) { - reportException(window, e, window.location.href); - } - } - } - } - - function removeAnimationFrameCallback(handle) { - if (mapOfAnimationFrameCallbacks.has(handle)) { - --numberOfOngoingAnimationFrameCallbacks; - if (numberOfOngoingAnimationFrameCallbacks === 0) { - clearInterval(animationFrameNodejsInterval); - } - } - - mapOfAnimationFrameCallbacks.delete(handle); - } - } - - function stopAllTimers() { - for (const nodejsTimer of listOfActiveTimers.values()) { - clearTimeout(nodejsTimer); - } - listOfActiveTimers.clear(); - - clearInterval(animationFrameNodejsInterval); - } - - function Option(text, value, defaultSelected, selected) { - if (text === undefined) { - text = ""; - } - text = webIDLConversions.DOMString(text); - - if (value !== undefined) { - value = webIDLConversions.DOMString(value); - } - - defaultSelected = webIDLConversions.boolean(defaultSelected); - selected = webIDLConversions.boolean(selected); - - const option = window._document.createElement("option"); - const impl = idlUtils.implForWrapper(option); - - if (text !== "") { - impl.text = text; - } - if (value !== undefined) { - impl.setAttributeNS(null, "value", value); - } - if (defaultSelected) { - impl.setAttributeNS(null, "selected", ""); - } - impl._selectedness = selected; - - return option; - } - Object.defineProperty(Option, "prototype", { - value: this.HTMLOptionElement.prototype, - configurable: false, - enumerable: false, - writable: false - }); - Object.defineProperty(window, "Option", { - value: Option, - configurable: true, - enumerable: false, - writable: true - }); - - function Image(...args) { - const img = window._document.createElement("img"); - const impl = idlUtils.implForWrapper(img); - - if (args.length > 0) { - impl.setAttributeNS(null, "width", String(args[0])); - } - if (args.length > 1) { - impl.setAttributeNS(null, "height", String(args[1])); - } - - return img; - } - Object.defineProperty(Image, "prototype", { - value: this.HTMLImageElement.prototype, - configurable: false, - enumerable: false, - writable: false - }); - Object.defineProperty(window, "Image", { - value: Image, - configurable: true, - enumerable: false, - writable: true - }); - - function Audio(src) { - const audio = window._document.createElement("audio"); - const impl = idlUtils.implForWrapper(audio); - impl.setAttributeNS(null, "preload", "auto"); - - if (src !== undefined) { - impl.setAttributeNS(null, "src", String(src)); - } - - return audio; - } - Object.defineProperty(Audio, "prototype", { - value: this.HTMLAudioElement.prototype, - configurable: false, - enumerable: false, - writable: false - }); - Object.defineProperty(window, "Audio", { - value: Audio, - configurable: true, - enumerable: false, - writable: true - }); - - this.postMessage = postMessage(window); - - this.atob = function (str) { - try { - return atob(str); - } catch (e) { - // Convert Node.js DOMException to one from our global. - throw DOMException.create(window, [ - "The string to be decoded contains invalid characters.", - "InvalidCharacterError" - ]); - } - }; - - this.btoa = function (str) { - try { - return btoa(str); - } catch (e) { - // Convert Node.js DOMException to one from our global. - throw DOMException.create(window, [ - "The string to be encoded contains invalid characters.", - "InvalidCharacterError" - ]); - } - }; - - this.stop = function () { - const manager = idlUtils.implForWrapper(this._document)._requestManager; - if (manager) { - manager.close(); - } - }; - - this.close = function () { - // Recursively close child frame windows, then ourselves (depth-first). - for (let i = 0; i < this.length; ++i) { - this[i].close(); - } - - // Clear out all listeners. Any in-flight or upcoming events should not get delivered. - idlUtils.implForWrapper(this)._eventListeners = Object.create(null); - - if (this._document) { - if (this._document.body) { - this._document.body.innerHTML = ""; - } - - if (this._document.close) { - // It's especially important to clear out the listeners here because document.close() causes a "load" event to - // fire. - idlUtils.implForWrapper(this._document)._eventListeners = Object.create(null); - this._document.close(); - } - const doc = idlUtils.implForWrapper(this._document); - if (doc._requestManager) { - doc._requestManager.close(); - } - delete this._document; - } - - stopAllTimers(); - WebSocketImpl.cleanUpWindow(this); - }; - - this.getComputedStyle = function (elt, pseudoElt = undefined) { - elt = Element.convert(this, elt); - if (pseudoElt !== undefined && pseudoElt !== null) { - pseudoElt = webIDLConversions.DOMString(pseudoElt); - } - - if (pseudoElt !== undefined && pseudoElt !== null && pseudoElt !== "") { - // TODO: Parse pseudoElt - - if (SHADOW_DOM_PSEUDO_REGEXP.test(pseudoElt)) { - throw new TypeError("Tried to get the computed style of a Shadow DOM pseudo-element."); - } - - notImplemented("window.computedStyle(elt, pseudoElt)", this); - } - - const declaration = new CSSStyleDeclaration(); - const { forEach } = Array.prototype; - - const elementDeclaration = getDeclarationForElement(elt); - forEach.call(elementDeclaration, property => { - declaration.setProperty( - property, - elementDeclaration.getPropertyValue(property), - elementDeclaration.getPropertyPriority(property) - ); - }); - - // https://drafts.csswg.org/cssom/#dom-window-getcomputedstyle - const declarations = Object.keys(propertiesWithResolvedValueImplemented); - forEach.call(declarations, property => { - declaration.setProperty(property, getResolvedValue(elt, property)); - }); - - return declaration; - }; - - this.getSelection = function () { - return window._document.getSelection(); - }; - - // The captureEvents() and releaseEvents() methods must do nothing - this.captureEvents = function () {}; - - this.releaseEvents = function () {}; - - // ### PUBLIC DATA PROPERTIES (TODO: should be getters) - - function wrapConsoleMethod(method) { - return (...args) => { - window._virtualConsole.emit(method, ...args); - }; - } - - this.console = { - assert: wrapConsoleMethod("assert"), - clear: wrapConsoleMethod("clear"), - count: wrapConsoleMethod("count"), - countReset: wrapConsoleMethod("countReset"), - debug: wrapConsoleMethod("debug"), - dir: wrapConsoleMethod("dir"), - dirxml: wrapConsoleMethod("dirxml"), - error: wrapConsoleMethod("error"), - group: wrapConsoleMethod("group"), - groupCollapsed: wrapConsoleMethod("groupCollapsed"), - groupEnd: wrapConsoleMethod("groupEnd"), - info: wrapConsoleMethod("info"), - log: wrapConsoleMethod("log"), - table: wrapConsoleMethod("table"), - time: wrapConsoleMethod("time"), - timeLog: wrapConsoleMethod("timeLog"), - timeEnd: wrapConsoleMethod("timeEnd"), - trace: wrapConsoleMethod("trace"), - warn: wrapConsoleMethod("warn") - }; - - function notImplementedMethod(name) { - return function () { - notImplemented(name, window); - }; - } - - define(this, { - name: "", - status: "", - devicePixelRatio: 1, - innerWidth: 1024, - innerHeight: 768, - outerWidth: 1024, - outerHeight: 768, - pageXOffset: 0, - pageYOffset: 0, - screenX: 0, - screenLeft: 0, - screenY: 0, - screenTop: 0, - scrollX: 0, - scrollY: 0, - - alert: notImplementedMethod("window.alert"), - blur: notImplementedMethod("window.blur"), - confirm: notImplementedMethod("window.confirm"), - focus: notImplementedMethod("window.focus"), - moveBy: notImplementedMethod("window.moveBy"), - moveTo: notImplementedMethod("window.moveTo"), - open: notImplementedMethod("window.open"), - print: notImplementedMethod("window.print"), - prompt: notImplementedMethod("window.prompt"), - resizeBy: notImplementedMethod("window.resizeBy"), - resizeTo: notImplementedMethod("window.resizeTo"), - scroll: notImplementedMethod("window.scroll"), - scrollBy: notImplementedMethod("window.scrollBy"), - scrollTo: notImplementedMethod("window.scrollTo") - }); - - // ### INITIALIZATION - - process.nextTick(() => { - if (!window.document) { - return; // window might've been closed already - } - - if (window.document.readyState === "complete") { - fireAnEvent("load", window, undefined, {}, true); - } else { - window.document.addEventListener("load", () => { - fireAnEvent("load", window, undefined, {}, true); - if (!window._document) { - return; // window might've been closed already - } - - const documentImpl = idlUtils.implForWrapper(window._document); - if (!documentImpl._pageShowingFlag) { - documentImpl._pageShowingFlag = true; - fireAPageTransitionEvent("pageshow", window, false); - } - }); - } - }); -} - -function contextifyWindow(window) { - if (vm.isContext(window)) { - return; - } - - vm.createContext(window); -} - - -/***/ }), - -/***/ 77078: -/***/ ((module) => { - -// Ideally, we would use -// https://html.spec.whatwg.org/multipage/rendering.html#the-css-user-agent-style-sheet-and-presentational-hints -// but for now, just use the version from blink. This file is copied from -// https://chromium.googlesource.com/chromium/blink/+/96aa3a280ab7d67178c8f122a04949ce5f8579e0/Source/core/css/html.css -// (removed a line which had octal literals inside since octal literals are not allowed in template strings) - -// We use a .js file because otherwise we can't browserify this. (brfs is unusable due to lack of ES2015 support) - -module.exports = ` -/* - * The default style sheet used to render HTML. - * - * Copyright (C) 2000 Lars Knoll (knoll@kde.org) - * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public License - * along with this library; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. - * - */ - -@namespace "http://www.w3.org/1999/xhtml"; - -html { - display: block -} - -:root { - scroll-blocks-on: start-touch wheel-event -} - -/* children of the element all have display:none */ -head { - display: none -} - -meta { - display: none -} - -title { - display: none -} - -link { - display: none -} - -style { - display: none -} - -script { - display: none -} - -/* generic block-level elements */ - -body { - display: block; - margin: 8px -} - -p { - display: block; - -webkit-margin-before: 1__qem; - -webkit-margin-after: 1__qem; - -webkit-margin-start: 0; - -webkit-margin-end: 0; -} - -div { - display: block -} - -layer { - display: block -} - -article, aside, footer, header, hgroup, main, nav, section { - display: block -} - -marquee { - display: inline-block; -} - -address { - display: block -} - -blockquote { - display: block; - -webkit-margin-before: 1__qem; - -webkit-margin-after: 1em; - -webkit-margin-start: 40px; - -webkit-margin-end: 40px; -} - -figcaption { - display: block -} - -figure { - display: block; - -webkit-margin-before: 1em; - -webkit-margin-after: 1em; - -webkit-margin-start: 40px; - -webkit-margin-end: 40px; -} - -q { - display: inline -} - -/* nwmatcher does not support ::before and ::after, so we can't render q -correctly: https://html.spec.whatwg.org/multipage/rendering.html#phrasing-content-3 -TODO: add q::before and q::after selectors -*/ - -center { - display: block; - /* special centering to be able to emulate the html4/netscape behaviour */ - text-align: -webkit-center -} - -hr { - display: block; - -webkit-margin-before: 0.5em; - -webkit-margin-after: 0.5em; - -webkit-margin-start: auto; - -webkit-margin-end: auto; - border-style: inset; - border-width: 1px; - box-sizing: border-box -} - -map { - display: inline -} - -video { - object-fit: contain; -} - -/* heading elements */ - -h1 { - display: block; - font-size: 2em; - -webkit-margin-before: 0.67__qem; - -webkit-margin-after: 0.67em; - -webkit-margin-start: 0; - -webkit-margin-end: 0; - font-weight: bold -} - -article h1, -aside h1, -nav h1, -section h1 { - font-size: 1.5em; - -webkit-margin-before: 0.83__qem; - -webkit-margin-after: 0.83em; -} - -article article h1, -article aside h1, -article nav h1, -article section h1, -aside article h1, -aside aside h1, -aside nav h1, -aside section h1, -nav article h1, -nav aside h1, -nav nav h1, -nav section h1, -section article h1, -section aside h1, -section nav h1, -section section h1 { - font-size: 1.17em; - -webkit-margin-before: 1__qem; - -webkit-margin-after: 1em; -} - -/* Remaining selectors are deleted because nwmatcher does not support -:matches() and expanding the selectors manually would be far too verbose. -Also see https://html.spec.whatwg.org/multipage/rendering.html#sections-and-headings -TODO: rewrite to use :matches() when nwmatcher supports it. -*/ - -h2 { - display: block; - font-size: 1.5em; - -webkit-margin-before: 0.83__qem; - -webkit-margin-after: 0.83em; - -webkit-margin-start: 0; - -webkit-margin-end: 0; - font-weight: bold -} - -h3 { - display: block; - font-size: 1.17em; - -webkit-margin-before: 1__qem; - -webkit-margin-after: 1em; - -webkit-margin-start: 0; - -webkit-margin-end: 0; - font-weight: bold -} - -h4 { - display: block; - -webkit-margin-before: 1.33__qem; - -webkit-margin-after: 1.33em; - -webkit-margin-start: 0; - -webkit-margin-end: 0; - font-weight: bold -} - -h5 { - display: block; - font-size: .83em; - -webkit-margin-before: 1.67__qem; - -webkit-margin-after: 1.67em; - -webkit-margin-start: 0; - -webkit-margin-end: 0; - font-weight: bold -} - -h6 { - display: block; - font-size: .67em; - -webkit-margin-before: 2.33__qem; - -webkit-margin-after: 2.33em; - -webkit-margin-start: 0; - -webkit-margin-end: 0; - font-weight: bold -} - -/* tables */ - -table { - display: table; - border-collapse: separate; - border-spacing: 2px; - border-color: gray -} - -thead { - display: table-header-group; - vertical-align: middle; - border-color: inherit -} - -tbody { - display: table-row-group; - vertical-align: middle; - border-color: inherit -} - -tfoot { - display: table-footer-group; - vertical-align: middle; - border-color: inherit -} - -/* for tables without table section elements (can happen with XHTML or dynamically created tables) */ -table > tr { - vertical-align: middle; -} - -col { - display: table-column -} - -colgroup { - display: table-column-group -} - -tr { - display: table-row; - vertical-align: inherit; - border-color: inherit -} - -td, th { - display: table-cell; - vertical-align: inherit -} - -th { - font-weight: bold -} - -caption { - display: table-caption; - text-align: -webkit-center -} - -/* lists */ - -ul, menu, dir { - display: block; - list-style-type: disc; - -webkit-margin-before: 1__qem; - -webkit-margin-after: 1em; - -webkit-margin-start: 0; - -webkit-margin-end: 0; - -webkit-padding-start: 40px -} - -ol { - display: block; - list-style-type: decimal; - -webkit-margin-before: 1__qem; - -webkit-margin-after: 1em; - -webkit-margin-start: 0; - -webkit-margin-end: 0; - -webkit-padding-start: 40px -} - -li { - display: list-item; - text-align: -webkit-match-parent; -} - -ul ul, ol ul { - list-style-type: circle -} - -ol ol ul, ol ul ul, ul ol ul, ul ul ul { - list-style-type: square -} - -dd { - display: block; - -webkit-margin-start: 40px -} - -dl { - display: block; - -webkit-margin-before: 1__qem; - -webkit-margin-after: 1em; - -webkit-margin-start: 0; - -webkit-margin-end: 0; -} - -dt { - display: block -} - -ol ul, ul ol, ul ul, ol ol { - -webkit-margin-before: 0; - -webkit-margin-after: 0 -} - -/* form elements */ - -form { - display: block; - margin-top: 0__qem; -} - -label { - cursor: default; -} - -legend { - display: block; - -webkit-padding-start: 2px; - -webkit-padding-end: 2px; - border: none -} - -fieldset { - display: block; - -webkit-margin-start: 2px; - -webkit-margin-end: 2px; - -webkit-padding-before: 0.35em; - -webkit-padding-start: 0.75em; - -webkit-padding-end: 0.75em; - -webkit-padding-after: 0.625em; - border: 2px groove ThreeDFace; - min-width: -webkit-min-content; -} - -button { - -webkit-appearance: button; -} - -/* Form controls don't go vertical. */ -input, textarea, select, button, meter, progress { - -webkit-writing-mode: horizontal-tb !important; -} - -input, textarea, select, button { - margin: 0__qem; - font: -webkit-small-control; - text-rendering: auto; /* FIXME: Remove when tabs work with optimizeLegibility. */ - color: initial; - letter-spacing: normal; - word-spacing: normal; - line-height: normal; - text-transform: none; - text-indent: 0; - text-shadow: none; - display: inline-block; - text-align: start; -} - -/* TODO: Add " i" to attribute matchers to support case-insensitive matching */ -input[type="hidden"] { - display: none -} - -input { - -webkit-appearance: textfield; - padding: 1px; - background-color: white; - border: 2px inset; - -webkit-rtl-ordering: logical; - -webkit-user-select: text; - cursor: auto; -} - -input[type="search"] { - -webkit-appearance: searchfield; - box-sizing: border-box; -} - -select { - border-radius: 5px; -} - -textarea { - -webkit-appearance: textarea; - background-color: white; - border: 1px solid; - -webkit-rtl-ordering: logical; - -webkit-user-select: text; - flex-direction: column; - resize: auto; - cursor: auto; - padding: 2px; - white-space: pre-wrap; - word-wrap: break-word; -} - -input[type="password"] { - -webkit-text-security: disc !important; -} - -input[type="hidden"], input[type="image"], input[type="file"] { - -webkit-appearance: initial; - padding: initial; - background-color: initial; - border: initial; -} - -input[type="file"] { - align-items: baseline; - color: inherit; - text-align: start !important; -} - -input[type="radio"], input[type="checkbox"] { - margin: 3px 0.5ex; - padding: initial; - background-color: initial; - border: initial; -} - -input[type="button"], input[type="submit"], input[type="reset"] { - -webkit-appearance: push-button; - -webkit-user-select: none; - white-space: pre -} - -input[type="button"], input[type="submit"], input[type="reset"], button { - align-items: flex-start; - text-align: center; - cursor: default; - color: ButtonText; - padding: 2px 6px 3px 6px; - border: 2px outset ButtonFace; - background-color: ButtonFace; - box-sizing: border-box -} - -input[type="range"] { - -webkit-appearance: slider-horizontal; - padding: initial; - border: initial; - margin: 2px; - color: #909090; -} - -input[type="button"]:disabled, input[type="submit"]:disabled, input[type="reset"]:disabled, -button:disabled, select:disabled, optgroup:disabled, option:disabled, -select[disabled]>option { - color: GrayText -} - -input[type="button"]:active, input[type="submit"]:active, input[type="reset"]:active, button:active { - border-style: inset -} - -input[type="button"]:active:disabled, input[type="submit"]:active:disabled, input[type="reset"]:active:disabled, button:active:disabled { - border-style: outset -} - -datalist { - display: none -} - -area { - display: inline; - cursor: pointer; -} - -param { - display: none -} - -input[type="checkbox"] { - -webkit-appearance: checkbox; - box-sizing: border-box; -} - -input[type="radio"] { - -webkit-appearance: radio; - box-sizing: border-box; -} - -input[type="color"] { - -webkit-appearance: square-button; - width: 44px; - height: 23px; - background-color: ButtonFace; - /* Same as native_theme_base. */ - border: 1px #a9a9a9 solid; - padding: 1px 2px; -} - -input[type="color"][list] { - -webkit-appearance: menulist; - width: 88px; - height: 23px -} - -select { - -webkit-appearance: menulist; - box-sizing: border-box; - align-items: center; - border: 1px solid; - white-space: pre; - -webkit-rtl-ordering: logical; - color: black; - background-color: white; - cursor: default; -} - -optgroup { - font-weight: bolder; - display: block; -} - -option { - font-weight: normal; - display: block; - padding: 0 2px 1px 2px; - white-space: pre; - min-height: 1.2em; -} - -output { - display: inline; -} - -/* meter */ - -meter { - -webkit-appearance: meter; - box-sizing: border-box; - display: inline-block; - height: 1em; - width: 5em; - vertical-align: -0.2em; -} - -/* progress */ - -progress { - -webkit-appearance: progress-bar; - box-sizing: border-box; - display: inline-block; - height: 1em; - width: 10em; - vertical-align: -0.2em; -} - -/* inline elements */ - -u, ins { - text-decoration: underline -} - -strong, b { - font-weight: bold -} - -i, cite, em, var, address, dfn { - font-style: italic -} - -tt, code, kbd, samp { - font-family: monospace -} - -pre, xmp, plaintext, listing { - display: block; - font-family: monospace; - white-space: pre; - margin: 1__qem 0 -} - -mark { - background-color: yellow; - color: black -} - -big { - font-size: larger -} - -small { - font-size: smaller -} - -s, strike, del { - text-decoration: line-through -} - -sub { - vertical-align: sub; - font-size: smaller -} - -sup { - vertical-align: super; - font-size: smaller -} - -nobr { - white-space: nowrap -} - -/* states */ - -:focus { - outline: auto 5px -webkit-focus-ring-color -} - -/* Read-only text fields do not show a focus ring but do still receive focus */ -html:focus, body:focus, input[readonly]:focus { - outline: none -} - -embed:focus, iframe:focus, object:focus { - outline: none -} - -input:focus, textarea:focus, select:focus { - outline-offset: -2px -} - -input[type="button"]:focus, -input[type="checkbox"]:focus, -input[type="file"]:focus, -input[type="hidden"]:focus, -input[type="image"]:focus, -input[type="radio"]:focus, -input[type="reset"]:focus, -input[type="search"]:focus, -input[type="submit"]:focus { - outline-offset: 0 -} - -/* HTML5 ruby elements */ - -ruby, rt { - text-indent: 0; /* blocks used for ruby rendering should not trigger this */ -} - -rt { - line-height: normal; - -webkit-text-emphasis: none; -} - -ruby > rt { - display: block; - font-size: 50%; - text-align: start; -} - -ruby > rp { - display: none; -} - -/* other elements */ - -noframes { - display: none -} - -frameset, frame { - display: block -} - -frameset { - border-color: inherit -} - -iframe { - border: 2px inset -} - -details { - display: block -} - -summary { - display: block -} - -template { - display: none -} - -bdi, output { - unicode-bidi: -webkit-isolate; -} - -bdo { - unicode-bidi: bidi-override; -} - -textarea[dir=auto] { - unicode-bidi: -webkit-plaintext; -} - -dialog:not([open]) { - display: none -} - -dialog { - position: absolute; - left: 0; - right: 0; - width: -webkit-fit-content; - height: -webkit-fit-content; - margin: auto; - border: solid; - padding: 1em; - background: white; - color: black -} - -[hidden] { - display: none -} - -/* noscript is handled internally, as it depends on settings. */ - -`; - - -/***/ }), - -/***/ 8172: -/***/ ((module) => { - -"use strict"; - - -module.exports = function (nameForErrorMessage, window) { - if (!window) { - // Do nothing for window-less documents. - return; - } - - const error = new Error(`Not implemented: ${nameForErrorMessage}`); - error.type = "not implemented"; - - window._virtualConsole.emit("jsdomError", error); -}; - - -/***/ }), - -/***/ 78221: -/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { - -"use strict"; - - -const parse5 = __nccwpck_require__(50069); - -const { createElement } = __nccwpck_require__(94202); -const { HTML_NS } = __nccwpck_require__(98071); - -const DocumentType = __nccwpck_require__(80842); -const DocumentFragment = __nccwpck_require__(98938); -const Text = __nccwpck_require__(40196); -const Comment = __nccwpck_require__(22918); - -const attributes = __nccwpck_require__(69936); -const nodeTypes = __nccwpck_require__(7206); - -const serializationAdapter = __nccwpck_require__(70329); -const { - customElementReactionsStack, invokeCEReactions, lookupCEDefinition -} = __nccwpck_require__(8348); - - -class JSDOMParse5Adapter { - constructor(documentImpl, options = {}) { - this._documentImpl = documentImpl; - this._globalObject = documentImpl._globalObject; - this._fragment = options.fragment || false; - - // Since the createElement hook doesn't provide the parent element, we keep track of this using _currentElement: - // https://github.com/inikulin/parse5/issues/285. - this._currentElement = undefined; - } - - _ownerDocument() { - const { _currentElement } = this; - - // The _currentElement is undefined when parsing elements at the root of the document. - if (_currentElement) { - return _currentElement.localName === "template" && _currentElement.namespaceURI === HTML_NS ? - _currentElement.content._ownerDocument : - _currentElement._ownerDocument; - } - - return this._documentImpl; - } - - createDocument() { - // parse5's model assumes that parse(html) will call into here to create the new Document, then return it. However, - // jsdom's model assumes we can create a Window (and through that create an empty Document), do some other setup - // stuff, and then parse, stuffing nodes into that Document as we go. So to adapt between these two models, we just - // return the already-created Document when asked by parse5 to "create" a Document. - return this._documentImpl; - } - - createDocumentFragment() { - const ownerDocument = this._ownerDocument(); - return DocumentFragment.createImpl(this._globalObject, [], { ownerDocument }); - } - - // https://html.spec.whatwg.org/#create-an-element-for-the-token - createElement(localName, namespace, attrs) { - const ownerDocument = this._ownerDocument(); - - const isAttribute = attrs.find(attr => attr.name === "is"); - const isValue = isAttribute ? isAttribute.value : null; - - const definition = lookupCEDefinition(ownerDocument, namespace, localName); - - let willExecuteScript = false; - if (definition !== null && !this._fragment) { - willExecuteScript = true; - } - - if (willExecuteScript) { - ownerDocument._throwOnDynamicMarkupInsertionCounter++; - customElementReactionsStack.push([]); - } - - const element = createElement(ownerDocument, localName, namespace, null, isValue, willExecuteScript); - this.adoptAttributes(element, attrs); - - if (willExecuteScript) { - const queue = customElementReactionsStack.pop(); - invokeCEReactions(queue); - ownerDocument._throwOnDynamicMarkupInsertionCounter--; - } - - if ("_parserInserted" in element) { - element._parserInserted = true; - } - - return element; - } - - createCommentNode(data) { - const ownerDocument = this._ownerDocument(); - return Comment.createImpl(this._globalObject, [], { data, ownerDocument }); - } - - appendChild(parentNode, newNode) { - parentNode._append(newNode); - } - - insertBefore(parentNode, newNode, referenceNode) { - parentNode._insert(newNode, referenceNode); - } - - setTemplateContent(templateElement, contentFragment) { - // This code makes the glue between jsdom and parse5 HTMLTemplateElement parsing: - // - // * jsdom during the construction of the HTMLTemplateElement (for example when create via - // `document.createElement("template")`), creates a DocumentFragment and set it into _templateContents. - // * parse5 when parsing a